aws-sdk-go-1.4.22/000077500000000000000000000000001300374646400135635ustar00rootroot00000000000000aws-sdk-go-1.4.22/.gitignore000066400000000000000000000003141300374646400155510ustar00rootroot00000000000000dist /doc /doc-staging .yardoc Gemfile.lock awstesting/integration/smoke/**/importmarker__.go awstesting/integration/smoke/_test/ /vendor/bin/ /vendor/pkg/ /vendor/src/ /private/model/cli/gen-api/gen-api aws-sdk-go-1.4.22/.godoc_config000066400000000000000000000007021300374646400162030ustar00rootroot00000000000000{ "PkgHandler": { "Pattern": "/sdk-for-go/api/", "StripPrefix": "/sdk-for-go/api", "Include": ["/src/github.com/aws/aws-sdk-go/aws", "/src/github.com/aws/aws-sdk-go/service"], "Exclude": ["/src/cmd", "/src/github.com/aws/aws-sdk-go/awstesting", "/src/github.com/aws/aws-sdk-go/awsmigrate"], "IgnoredSuffixes": ["iface"] }, "Github": { "Tag": "master", "Repo": "/aws/aws-sdk-go", "UseGithub": true } } aws-sdk-go-1.4.22/.travis.yml000066400000000000000000000005001300374646400156670ustar00rootroot00000000000000language: go sudo: false go: - 1.4 - 1.5 - 1.6 - 1.7 - tip # Use Go 1.5's vendoring experiment for 1.5 tests. 1.4 tests will use the tip of the dependencies repo. env: - GO15VENDOREXPERIMENT=1 install: - make get-deps script: - make unit-with-race-cover matrix: allow_failures: - go: tip aws-sdk-go-1.4.22/.yardopts000066400000000000000000000001641300374646400154320ustar00rootroot00000000000000--plugin go -e doc-src/plugin/plugin.rb -m markdown -o doc/api --title "AWS SDK for Go" aws/**/*.go service/**/*.go aws-sdk-go-1.4.22/CHANGELOG.md000066400000000000000000000125051300374646400153770ustar00rootroot00000000000000Release v1.4.22 (2016-10-25) === Service Client Updates --- * `service/elasticloadbalancingv2`: Updates service documentation. * `service/autoscaling`: Updates service documentation. Release v1.4.21 (2016-10-24) === Service Client Updates --- * `service/sms`: AWS Server Migration Service (SMS) is an agentless service which makes it easier and faster for you to migrate thousands of on-premises workloads to AWS. AWS SMS allows you to automate, schedule, and track incremental replications of live server volumes, making it easier for you to coordinate large-scale server migrations. * `service/ecs`: Updates documentation. SDK Feature Updates --- * `private/models/api`: Improve code generation of documentation. Release v1.4.20 (2016-10-20) === Service Client Updates --- * `service/budgets`: Adds new service, AWS Budgets. * `service/waf`: Updates service documentation. Release v1.4.19 (2016-10-18) === Service Client Updates --- * `service/cloudfront`: Updates service API and documentation. * Ability to use Amazon CloudFront to deliver your content both via IPv6 and IPv4 using HTTP/HTTPS. * `service/configservice`: Update service API and documentation. * `service/iot`: Updates service API and documentation. * `service/kinesisanalytics`: Updates service API and documentation. * Whenever Amazon Kinesis Analytics is not able to detect schema for the given streaming source on DiscoverInputSchema API, we would return the raw records that was sampled to detect the schema. * `service/rds`: Updates service API and documentation. * Amazon Aurora integrates with other AWS services to allow you to extend your Aurora DB cluster to utilize other capabilities in the AWS cloud. Permission to access other AWS services is granted by creating an IAM role with the necessary permissions, and then associating the role with your DB cluster. SDK Feature Updates --- * `service/dynamodb/dynamodbattribute`: Add UnmarshalListOfMaps #897 * Adds support for unmarshalling a list of maps. This is useful for unmarshalling the DynamoDB AttributeValue list of maps returned by APIs like Query and Scan. Release v1.4.18 (2016-10-17) === Service Model Updates --- * `service/route53`: Updates service API and documentation. Release v1.4.17 === Service Model Updates --- * `service/acm`: Update service API, and documentation. * This change allows users to import third-party SSL/TLS certificates into ACM. * `service/elasticbeanstalk`: Update service API, documentation, and pagination. * Elastic Beanstalk DescribeApplicationVersions API is being updated to support pagination. * `service/gamelift`: Update service API, and documentation. * New APIs to protect game developer resource (builds, alias, fleets, instances, game sessions and player sessions) against abuse. SDK Features --- * `service/s3`: Add support for accelerate with dualstack [#887](https://github.com/aws/aws-sdk-go/issues/887) Release v1.4.16 (2016-10-13) === Service Model Updates --- * `service/ecr`: Update Amazon EC2 Container Registry service model * DescribeImages is a new api used to expose image metadata which today includes image size and image creation timestamp. * `service/elasticache`: Update Amazon ElastiCache service model * Elasticache is launching a new major engine release of Redis, 3.2 (providing stability updates and new command sets over 2.8), as well as ElasticSupport for enabling Redis Cluster in 3.2, which provides support for multiple node groups to horizontally scale data, as well as superior engine failover capabilities SDK Bug Fixes --- * `aws/session`: Skip shared config on read errors [#883](https://github.com/aws/aws-sdk-go/issues/883) * `aws/signer/v4`: Add support for URL.EscapedPath to signer [#885](https://github.com/aws/aws-sdk-go/issues/885) SDK Features --- * `private/model/api`: Add docs for errors to API operations [#881](https://github.com/aws/aws-sdk-go/issues/881) * `private/model/api`: Improve field and waiter doc strings [#879](https://github.com/aws/aws-sdk-go/issues/879) * `service/dynamodb/dynamodbattribute`: Allow multiple struct tag elements [#886](https://github.com/aws/aws-sdk-go/issues/886) * Add build tags to internal SDK tools [#880](https://github.com/aws/aws-sdk-go/issues/880) Release v1.4.15 (2016-10-06) === Service Model Updates --- * `service/cognitoidentityprovider`: Update Amazon Cognito Identity Provider service model * `service/devicefarm`: Update AWS Device Farm documentation * `service/opsworks`: Update AWS OpsWorks service model * `service/s3`: Update Amazon Simple Storage Service model * `service/waf`: Update AWS WAF service model SDK Bug Fixes --- * `aws/request`: Fix HTTP Request Body race condition [#874](https://github.com/aws/aws-sdk-go/issues/874) SDK Feature Updates --- * `aws/ec2metadata`: Add support for EC2 User Data [#872](https://github.com/aws/aws-sdk-go/issues/872) * `aws/signer/v4`: Remove logic determining if request needs to be resigned [#876](https://github.com/aws/aws-sdk-go/issues/876) Release v1.4.14 (2016-09-29) === * `service/ec2`: api, documentation, and paginators updates. * `service/s3`: api and documentation updates. Release v1.4.13 (2016-09-27) === * `service/codepipeline`: documentation updates. * `service/cloudformation`: api and documentation updates. * `service/kms`: documentation updates. * `service/elasticfilesystem`: documentation updates. * `service/snowball`: documentation updates. aws-sdk-go-1.4.22/Gemfile000066400000000000000000000003701300374646400150560ustar00rootroot00000000000000source 'https://rubygems.org' gem 'yard', git: 'git://github.com/lsegal/yard', ref: '5025564a491e1b7c6192632cba2802202ca08449' gem 'yard-go', git: 'git://github.com/jasdel/yard-go', ref: 'e78e1ef7cdf5e0f3266845b26bb4fd64f1dd6f85' gem 'rdiscount' aws-sdk-go-1.4.22/LICENSE.txt000066400000000000000000000261361300374646400154160ustar00rootroot00000000000000 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 [yyyy] [name of copyright owner] 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. aws-sdk-go-1.4.22/Makefile000066400000000000000000000140451300374646400152270ustar00rootroot00000000000000LINTIGNOREDOT='awstesting/integration.+should not use dot imports' LINTIGNOREDOC='service/[^/]+/(api|service|waiters)\.go:.+(comment on exported|should have comment or be unexported)' LINTIGNORECONST='service/[^/]+/(api|service|waiters)\.go:.+(type|struct field|const|func) ([^ ]+) should be ([^ ]+)' LINTIGNORESTUTTER='service/[^/]+/(api|service)\.go:.+(and that stutters)' LINTIGNOREINFLECT='service/[^/]+/(api|service)\.go:.+method .+ should be ' LINTIGNOREINFLECTS3UPLOAD='service/s3/s3manager/upload\.go:.+struct field SSEKMSKeyId should be ' LINTIGNOREDEPS='vendor/.+\.go' UNIT_TEST_TAGS="example codegen" SDK_WITH_VENDOR_PKGS=$(shell go list -tags ${UNIT_TEST_TAGS} ./... | grep -v "/vendor/src") SDK_ONLY_PKGS=$(shell go list ./... | grep -v "/vendor/") SDK_UNIT_TEST_ONLY_PKGS=$(shell go list -tags ${UNIT_TEST_TAGS} ./... | grep -v "/vendor/") SDK_GO_1_4=$(shell go version | grep "go1.4") SDK_GO_1_5=$(shell go version | grep "go1.5") SDK_GO_VERSION=$(shell go version | awk '''{print $$3}''' | tr -d '''\n''') all: get-deps generate unit help: @echo "Please use \`make ' where is one of" @echo " api_info to print a list of services and versions" @echo " docs to build SDK documentation" @echo " build to go build the SDK" @echo " unit to run unit tests" @echo " integration to run integration tests" @echo " performance to run performance tests" @echo " verify to verify tests" @echo " lint to lint the SDK" @echo " vet to vet the SDK" @echo " generate to go generate and make services" @echo " gen-test to generate protocol tests" @echo " gen-services to generate services" @echo " get-deps to go get the SDK dependencies" @echo " get-deps-tests to get the SDK's test dependencies" @echo " get-deps-verify to get the SDK's verification dependencies" generate: gen-test gen-endpoints gen-services gen-test: gen-protocol-test gen-services: go generate ./service gen-protocol-test: go generate ./private/protocol/... gen-endpoints: go generate ./private/endpoints build: @echo "go build SDK and vendor packages" @go build ${SDK_ONLY_PKGS} unit: get-deps-tests build verify @echo "go test SDK and vendor packages" @go test -tags ${UNIT_TEST_TAGS} $(SDK_UNIT_TEST_ONLY_PKGS) unit-with-race-cover: get-deps-tests build verify @echo "go test SDK and vendor packages" @go test -tags ${UNIT_TEST_TAGS} -race -cpu=1,2,4 $(SDK_UNIT_TEST_ONLY_PKGS) integration: get-deps-tests integ-custom smoke-tests performance integ-custom: go test -tags "integration" ./awstesting/integration/customizations/... smoke-tests: get-deps-tests gucumber -go-tags "integration" ./awstesting/integration/smoke performance: get-deps-tests AWS_TESTING_LOG_RESULTS=${log-detailed} AWS_TESTING_REGION=$(region) AWS_TESTING_DB_TABLE=$(table) gucumber -go-tags "integration" ./awstesting/performance sandbox-tests: sandbox-test-go14 sandbox-test-go15 sandbox-test-go15-novendorexp sandbox-test-go16 sandbox-test-go17 sandbox-test-gotip sandbox-test-go14: docker build -f ./awstesting/sandbox/Dockerfile.test.go1.4 -t "aws-sdk-go-1.4" . docker run -t aws-sdk-go-1.4 sandbox-test-go15: docker build -f ./awstesting/sandbox/Dockerfile.test.go1.5 -t "aws-sdk-go-1.5" . docker run -t aws-sdk-go-1.5 sandbox-test-go15-novendorexp: docker build -f ./awstesting/sandbox/Dockerfile.test.go1.5-novendorexp -t "aws-sdk-go-1.5-novendorexp" . docker run -t aws-sdk-go-1.5-novendorexp sandbox-test-go16: docker build -f ./awstesting/sandbox/Dockerfile.test.go1.6 -t "aws-sdk-go-1.6" . docker run -t aws-sdk-go-1.6 sandbox-test-go17: docker build -f ./awstesting/sandbox/Dockerfile.test.go1.7 -t "aws-sdk-go-1.7" . docker run -t aws-sdk-go-1.7 sandbox-test-gotip: @echo "Run make update-aws-golang-tip, if this test fails because missing aws-golang:tip container" docker build -f ./awstesting/sandbox/Dockerfile.test.gotip -t "aws-sdk-go-tip" . docker run -t aws-sdk-go-tip update-aws-golang-tip: docker build -f ./awstesting/sandbox/Dockerfile.golang-tip -t "aws-golang:tip" . verify: get-deps-verify lint vet lint: @echo "go lint SDK and vendor packages" @lint=`if [ \( -z "${SDK_GO_1_4}" \) -a \( -z "${SDK_GO_1_5}" \) ]; then golint ./...; else echo "skipping golint"; fi`; \ lint=`echo "$$lint" | grep -E -v -e ${LINTIGNOREDOT} -e ${LINTIGNOREDOC} -e ${LINTIGNORECONST} -e ${LINTIGNORESTUTTER} -e ${LINTIGNOREINFLECT} -e ${LINTIGNOREDEPS} -e ${LINTIGNOREINFLECTS3UPLOAD}`; \ echo "$$lint"; \ if [ "$$lint" != "" ] && [ "$$lint" != "skipping golint" ]; then exit 1; fi SDK_BASE_FOLDERS=$(shell ls -d */ | grep -v vendor | grep -v awsmigrate) ifneq (,$(findstring go1.4, ${SDK_GO_VERSION})) GO_VET_CMD=echo skipping go vet, ${SDK_GO_VERSION} else ifneq (,$(findstring go1.6, ${SDK_GO_VERSION})) GO_VET_CMD=go tool vet --all -shadow -example=false else GO_VET_CMD=go tool vet --all -shadow endif vet: ${GO_VET_CMD} ${SDK_BASE_FOLDERS} get-deps: get-deps-tests get-deps-verify @echo "go get SDK dependencies" @go get -v $(SDK_ONLY_PKGS) get-deps-tests: @echo "go get SDK testing dependencies" go get github.com/gucumber/gucumber/cmd/gucumber go get github.com/stretchr/testify go get github.com/smartystreets/goconvey go get golang.org/x/net/html get-deps-verify: @echo "go get SDK verification utilities" @if [ \( -z "${SDK_GO_1_4}" \) -a \( -z "${SDK_GO_1_5}" \) ]; then go get github.com/golang/lint/golint; else echo "skipped getting golint"; fi bench: @echo "go bench SDK packages" @go test -run NONE -bench . -benchmem -tags 'bench' $(SDK_ONLY_PKGS) bench-protocol: @echo "go bench SDK protocol marshallers" @go test -run NONE -bench . -benchmem -tags 'bench' ./private/protocol/... docs: @echo "generate SDK docs" @# This env variable, DOCS, is for internal use @if [ -z ${AWS_DOC_GEN_TOOL} ]; then\ rm -rf doc && bundle install && bundle exec yard;\ else\ $(AWS_DOC_GEN_TOOL) `pwd`;\ fi api_info: @go run private/model/cli/api-info/api-info.go aws-sdk-go-1.4.22/NOTICE.txt000066400000000000000000000001711300374646400153040ustar00rootroot00000000000000AWS SDK for Go Copyright 2015 Amazon.com, Inc. or its affiliates. All Rights Reserved. Copyright 2014-2015 Stripe, Inc. aws-sdk-go-1.4.22/README.md000066400000000000000000000132421300374646400150440ustar00rootroot00000000000000# AWS SDK for Go [![API Reference](http://img.shields.io/badge/api-reference-blue.svg)](http://docs.aws.amazon.com/sdk-for-go/api) [![Join the chat at https://gitter.im/aws/aws-sdk-go](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/aws/aws-sdk-go?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![Build Status](https://img.shields.io/travis/aws/aws-sdk-go.svg)](https://travis-ci.org/aws/aws-sdk-go) [![Apache V2 License](http://img.shields.io/badge/license-Apache%20V2-blue.svg)](https://github.com/aws/aws-sdk-go/blob/master/LICENSE.txt) aws-sdk-go is the official AWS SDK for the Go programming language. Checkout our [release notes](https://github.com/aws/aws-sdk-go/releases) for information about the latest bug fixes, updates, and features added to the SDK. ## Installing If you are using Go 1.5 with the `GO15VENDOREXPERIMENT=1` vendoring flag, or 1.6 and higher you can use the following command to retrieve the SDK. The SDK's non-testing dependencies will be included and are vendored in the `vendor` folder. go get -u github.com/aws/aws-sdk-go Otherwise if your Go environment does not have vendoring support enabled, or you do not want to include the vendored SDK's dependencies you can use the following command to retrieve the SDK and its non-testing dependencies using `go get`. go get -u github.com/aws/aws-sdk-go/aws/... go get -u github.com/aws/aws-sdk-go/service/... If you're looking to retrieve just the SDK without any dependencies use the following command. go get -d github.com/aws/aws-sdk-go/ These two processes will still include the `vendor` folder and it should be deleted if its not going to be used by your environment. rm -rf $GOPATH/src/github.com/aws/aws-sdk-go/vendor ## Reference Documentation [`Getting Started Guide`](https://aws.amazon.com/sdk-for-go/) - This document is a general introduction how to configure and make requests with the SDK. If this is your first time using the SDK, this documentation and the API documentation will help you get started. This document focuses on the syntax and behavior of the SDK. The [Service Developer Guide](https://aws.amazon.com/documentation/) will help you get started using specific AWS services. [`SDK API Reference Documentation`](https://docs.aws.amazon.com/sdk-for-go/api/) - Use this document to look up all API operation input and output parameters for AWS services supported by the SDK. The API reference also includes documentation of the SDK, and examples how to using the SDK, service client API operations, and API operation require parameters. [`Service Developer Guide`](https://aws.amazon.com/documentation/) - Use this documentation to learn how to interface with an AWS service. These are great guides both, if you're getting started with a service, or looking for more information on a service. You should not need this document for coding, though in some cases, services may supply helpful samples that you might want to look out for. [`SDK Examples`](https://github.com/aws/aws-sdk-go/tree/master/example) - Included in the SDK's repo are a several hand crafted examples using the SDK features and AWS services. ## Configuring Credentials Before using the SDK, ensure that you've configured credentials. The best way to configure credentials on a development machine is to use the `~/.aws/credentials` file, which might look like: ``` [default] aws_access_key_id = AKID1234567890 aws_secret_access_key = MY-SECRET-KEY ``` You can learn more about the credentials file from this [blog post](http://blogs.aws.amazon.com/security/post/Tx3D6U6WSFGOK2H/A-New-and-Standardized-Way-to-Manage-Credentials-in-the-AWS-SDKs). Alternatively, you can set the following environment variables: ``` AWS_ACCESS_KEY_ID=AKID1234567890 AWS_SECRET_ACCESS_KEY=MY-SECRET-KEY ``` ### AWS shared config file (`~/.aws/config`) The AWS SDK for Go added support the shared config file in release [v1.3.0](https://github.com/aws/aws-sdk-go/releases/tag/v1.3.0). You can opt into enabling support for the shared config by setting the environment variable `AWS_SDK_LOAD_CONFIG` to a truthy value. See the [Session](https://github.com/aws/aws-sdk-go/wiki/sessions) wiki for more information about this feature. ## Using the Go SDK To use a service in the SDK, create a service variable by calling the `New()` function. Once you have a service client, you can call API operations which each return response data and a possible error. To list a set of instance IDs from EC2, you could run: ```go package main import ( "fmt" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/ec2" ) func main() { // Create an EC2 service object in the "us-west-2" region // Note that you can also configure your region globally by // exporting the AWS_REGION environment variable svc := ec2.New(session.NewSession(), &aws.Config{Region: aws.String("us-west-2")}) // Call the DescribeInstances Operation resp, err := svc.DescribeInstances(nil) if err != nil { panic(err) } // resp has all of the response data, pull out instance IDs: fmt.Println("> Number of reservation sets: ", len(resp.Reservations)) for idx, res := range resp.Reservations { fmt.Println(" > Number of instances: ", len(res.Instances)) for _, inst := range resp.Reservations[idx].Instances { fmt.Println(" - Instance ID: ", *inst.InstanceId) } } } ``` You can find more information and operations in our [API documentation](http://docs.aws.amazon.com/sdk-for-go/api/). ## License This SDK is distributed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0), see LICENSE.txt and NOTICE.txt for more information. aws-sdk-go-1.4.22/aws/000077500000000000000000000000001300374646400143555ustar00rootroot00000000000000aws-sdk-go-1.4.22/aws/awserr/000077500000000000000000000000001300374646400156605ustar00rootroot00000000000000aws-sdk-go-1.4.22/aws/awserr/error.go000066400000000000000000000112341300374646400173410ustar00rootroot00000000000000// Package awserr represents API error interface accessors for the SDK. package awserr // An Error wraps lower level errors with code, message and an original error. // The underlying concrete error type may also satisfy other interfaces which // can be to used to obtain more specific information about the error. // // Calling Error() or String() will always include the full information about // an error based on its underlying type. // // Example: // // output, err := s3manage.Upload(svc, input, opts) // if err != nil { // if awsErr, ok := err.(awserr.Error); ok { // // Get error details // log.Println("Error:", awsErr.Code(), awsErr.Message()) // // // Prints out full error message, including original error if there was one. // log.Println("Error:", awsErr.Error()) // // // Get original error // if origErr := awsErr.OrigErr(); origErr != nil { // // operate on original error. // } // } else { // fmt.Println(err.Error()) // } // } // type Error interface { // Satisfy the generic error interface. error // Returns the short phrase depicting the classification of the error. Code() string // Returns the error details message. Message() string // Returns the original error if one was set. Nil is returned if not set. OrigErr() error } // BatchError is a batch of errors which also wraps lower level errors with // code, message, and original errors. Calling Error() will include all errors // that occurred in the batch. // // Deprecated: Replaced with BatchedErrors. Only defined for backwards // compatibility. type BatchError interface { // Satisfy the generic error interface. error // Returns the short phrase depicting the classification of the error. Code() string // Returns the error details message. Message() string // Returns the original error if one was set. Nil is returned if not set. OrigErrs() []error } // BatchedErrors is a batch of errors which also wraps lower level errors with // code, message, and original errors. Calling Error() will include all errors // that occurred in the batch. // // Replaces BatchError type BatchedErrors interface { // Satisfy the base Error interface. Error // Returns the original error if one was set. Nil is returned if not set. OrigErrs() []error } // New returns an Error object described by the code, message, and origErr. // // If origErr satisfies the Error interface it will not be wrapped within a new // Error object and will instead be returned. func New(code, message string, origErr error) Error { var errs []error if origErr != nil { errs = append(errs, origErr) } return newBaseError(code, message, errs) } // NewBatchError returns an BatchedErrors with a collection of errors as an // array of errors. func NewBatchError(code, message string, errs []error) BatchedErrors { return newBaseError(code, message, errs) } // A RequestFailure is an interface to extract request failure information from // an Error such as the request ID of the failed request returned by a service. // RequestFailures may not always have a requestID value if the request failed // prior to reaching the service such as a connection error. // // Example: // // output, err := s3manage.Upload(svc, input, opts) // if err != nil { // if reqerr, ok := err.(RequestFailure); ok { // log.Println("Request failed", reqerr.Code(), reqerr.Message(), reqerr.RequestID()) // } else { // log.Println("Error:", err.Error()) // } // } // // Combined with awserr.Error: // // output, err := s3manage.Upload(svc, input, opts) // if err != nil { // if awsErr, ok := err.(awserr.Error); ok { // // Generic AWS Error with Code, Message, and original error (if any) // fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) // // if reqErr, ok := err.(awserr.RequestFailure); ok { // // A service error occurred // fmt.Println(reqErr.StatusCode(), reqErr.RequestID()) // } // } else { // fmt.Println(err.Error()) // } // } // type RequestFailure interface { Error // The status code of the HTTP response. StatusCode() int // The request ID returned by the service for a request failure. This will // be empty if no request ID is available such as the request failed due // to a connection error. RequestID() string } // NewRequestFailure returns a new request error wrapper for the given Error // provided. func NewRequestFailure(err Error, statusCode int, reqID string) RequestFailure { return newRequestError(err, statusCode, reqID) } aws-sdk-go-1.4.22/aws/awserr/types.go000066400000000000000000000124721300374646400173610ustar00rootroot00000000000000package awserr import "fmt" // SprintError returns a string of the formatted error code. // // Both extra and origErr are optional. If they are included their lines // will be added, but if they are not included their lines will be ignored. func SprintError(code, message, extra string, origErr error) string { msg := fmt.Sprintf("%s: %s", code, message) if extra != "" { msg = fmt.Sprintf("%s\n\t%s", msg, extra) } if origErr != nil { msg = fmt.Sprintf("%s\ncaused by: %s", msg, origErr.Error()) } return msg } // A baseError wraps the code and message which defines an error. It also // can be used to wrap an original error object. // // Should be used as the root for errors satisfying the awserr.Error. Also // for any error which does not fit into a specific error wrapper type. type baseError struct { // Classification of error code string // Detailed information about error message string // Optional original error this error is based off of. Allows building // chained errors. errs []error } // newBaseError returns an error object for the code, message, and errors. // // code is a short no whitespace phrase depicting the classification of // the error that is being created. // // message is the free flow string containing detailed information about the // error. // // origErrs is the error objects which will be nested under the new errors to // be returned. func newBaseError(code, message string, origErrs []error) *baseError { b := &baseError{ code: code, message: message, errs: origErrs, } return b } // Error returns the string representation of the error. // // See ErrorWithExtra for formatting. // // Satisfies the error interface. func (b baseError) Error() string { size := len(b.errs) if size > 0 { return SprintError(b.code, b.message, "", errorList(b.errs)) } return SprintError(b.code, b.message, "", nil) } // String returns the string representation of the error. // Alias for Error to satisfy the stringer interface. func (b baseError) String() string { return b.Error() } // Code returns the short phrase depicting the classification of the error. func (b baseError) Code() string { return b.code } // Message returns the error details message. func (b baseError) Message() string { return b.message } // OrigErr returns the original error if one was set. Nil is returned if no // error was set. This only returns the first element in the list. If the full // list is needed, use BatchedErrors. func (b baseError) OrigErr() error { switch len(b.errs) { case 0: return nil case 1: return b.errs[0] default: if err, ok := b.errs[0].(Error); ok { return NewBatchError(err.Code(), err.Message(), b.errs[1:]) } return NewBatchError("BatchedErrors", "multiple errors occurred", b.errs) } } // OrigErrs returns the original errors if one was set. An empty slice is // returned if no error was set. func (b baseError) OrigErrs() []error { return b.errs } // So that the Error interface type can be included as an anonymous field // in the requestError struct and not conflict with the error.Error() method. type awsError Error // A requestError wraps a request or service error. // // Composed of baseError for code, message, and original error. type requestError struct { awsError statusCode int requestID string } // newRequestError returns a wrapped error with additional information for // request status code, and service requestID. // // Should be used to wrap all request which involve service requests. Even if // the request failed without a service response, but had an HTTP status code // that may be meaningful. // // Also wraps original errors via the baseError. func newRequestError(err Error, statusCode int, requestID string) *requestError { return &requestError{ awsError: err, statusCode: statusCode, requestID: requestID, } } // Error returns the string representation of the error. // Satisfies the error interface. func (r requestError) Error() string { extra := fmt.Sprintf("status code: %d, request id: %s", r.statusCode, r.requestID) return SprintError(r.Code(), r.Message(), extra, r.OrigErr()) } // String returns the string representation of the error. // Alias for Error to satisfy the stringer interface. func (r requestError) String() string { return r.Error() } // StatusCode returns the wrapped status code for the error func (r requestError) StatusCode() int { return r.statusCode } // RequestID returns the wrapped requestID func (r requestError) RequestID() string { return r.requestID } // OrigErrs returns the original errors if one was set. An empty slice is // returned if no error was set. func (r requestError) OrigErrs() []error { if b, ok := r.awsError.(BatchedErrors); ok { return b.OrigErrs() } return []error{r.OrigErr()} } // An error list that satisfies the golang interface type errorList []error // Error returns the string representation of the error. // // Satisfies the error interface. func (e errorList) Error() string { msg := "" // How do we want to handle the array size being zero if size := len(e); size > 0 { for i := 0; i < size; i++ { msg += fmt.Sprintf("%s", e[i].Error()) // We check the next index to see if it is within the slice. // If it is, then we append a newline. We do this, because unit tests // could be broken with the additional '\n' if i+1 < size { msg += "\n" } } } return msg } aws-sdk-go-1.4.22/aws/awsutil/000077500000000000000000000000001300374646400160455ustar00rootroot00000000000000aws-sdk-go-1.4.22/aws/awsutil/copy.go000066400000000000000000000053331300374646400173520ustar00rootroot00000000000000package awsutil import ( "io" "reflect" "time" ) // Copy deeply copies a src structure to dst. Useful for copying request and // response structures. // // Can copy between structs of different type, but will only copy fields which // are assignable, and exist in both structs. Fields which are not assignable, // or do not exist in both structs are ignored. func Copy(dst, src interface{}) { dstval := reflect.ValueOf(dst) if !dstval.IsValid() { panic("Copy dst cannot be nil") } rcopy(dstval, reflect.ValueOf(src), true) } // CopyOf returns a copy of src while also allocating the memory for dst. // src must be a pointer type or this operation will fail. func CopyOf(src interface{}) (dst interface{}) { dsti := reflect.New(reflect.TypeOf(src).Elem()) dst = dsti.Interface() rcopy(dsti, reflect.ValueOf(src), true) return } // rcopy performs a recursive copy of values from the source to destination. // // root is used to skip certain aspects of the copy which are not valid // for the root node of a object. func rcopy(dst, src reflect.Value, root bool) { if !src.IsValid() { return } switch src.Kind() { case reflect.Ptr: if _, ok := src.Interface().(io.Reader); ok { if dst.Kind() == reflect.Ptr && dst.Elem().CanSet() { dst.Elem().Set(src) } else if dst.CanSet() { dst.Set(src) } } else { e := src.Type().Elem() if dst.CanSet() && !src.IsNil() { if _, ok := src.Interface().(*time.Time); !ok { dst.Set(reflect.New(e)) } else { tempValue := reflect.New(e) tempValue.Elem().Set(src.Elem()) // Sets time.Time's unexported values dst.Set(tempValue) } } if src.Elem().IsValid() { // Keep the current root state since the depth hasn't changed rcopy(dst.Elem(), src.Elem(), root) } } case reflect.Struct: t := dst.Type() for i := 0; i < t.NumField(); i++ { name := t.Field(i).Name srcVal := src.FieldByName(name) dstVal := dst.FieldByName(name) if srcVal.IsValid() && dstVal.CanSet() { rcopy(dstVal, srcVal, false) } } case reflect.Slice: if src.IsNil() { break } s := reflect.MakeSlice(src.Type(), src.Len(), src.Cap()) dst.Set(s) for i := 0; i < src.Len(); i++ { rcopy(dst.Index(i), src.Index(i), false) } case reflect.Map: if src.IsNil() { break } s := reflect.MakeMap(src.Type()) dst.Set(s) for _, k := range src.MapKeys() { v := src.MapIndex(k) v2 := reflect.New(v.Type()).Elem() rcopy(v2, v, false) dst.SetMapIndex(k, v2) } default: // Assign the value if possible. If its not assignable, the value would // need to be converted and the impact of that may be unexpected, or is // not compatible with the dst type. if src.Type().AssignableTo(dst.Type()) { dst.Set(src) } } } aws-sdk-go-1.4.22/aws/awsutil/copy_test.go000066400000000000000000000111361300374646400204070ustar00rootroot00000000000000package awsutil_test import ( "bytes" "fmt" "io" "io/ioutil" "testing" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/stretchr/testify/assert" ) func ExampleCopy() { type Foo struct { A int B []*string } // Create the initial value str1 := "hello" str2 := "bye bye" f1 := &Foo{A: 1, B: []*string{&str1, &str2}} // Do the copy var f2 Foo awsutil.Copy(&f2, f1) // Print the result fmt.Println(awsutil.Prettify(f2)) // Output: // { // A: 1, // B: ["hello","bye bye"] // } } func TestCopy1(t *testing.T) { type Bar struct { a *int B *int c int D int } type Foo struct { A int B []*string C map[string]*int D *time.Time E *Bar } // Create the initial value str1 := "hello" str2 := "bye bye" int1 := 1 int2 := 2 intPtr1 := 1 intPtr2 := 2 now := time.Now() f1 := &Foo{ A: 1, B: []*string{&str1, &str2}, C: map[string]*int{ "A": &int1, "B": &int2, }, D: &now, E: &Bar{ &intPtr1, &intPtr2, 2, 3, }, } // Do the copy var f2 Foo awsutil.Copy(&f2, f1) // Values are equal assert.Equal(t, f2.A, f1.A) assert.Equal(t, f2.B, f1.B) assert.Equal(t, f2.C, f1.C) assert.Equal(t, f2.D, f1.D) assert.Equal(t, f2.E.B, f1.E.B) assert.Equal(t, f2.E.D, f1.E.D) // But pointers are not! str3 := "nothello" int3 := 57 f2.A = 100 *f2.B[0] = str3 *f2.C["B"] = int3 *f2.D = time.Now() f2.E.a = &int3 *f2.E.B = int3 f2.E.c = 5 f2.E.D = 5 assert.NotEqual(t, f2.A, f1.A) assert.NotEqual(t, f2.B, f1.B) assert.NotEqual(t, f2.C, f1.C) assert.NotEqual(t, f2.D, f1.D) assert.NotEqual(t, f2.E.a, f1.E.a) assert.NotEqual(t, f2.E.B, f1.E.B) assert.NotEqual(t, f2.E.c, f1.E.c) assert.NotEqual(t, f2.E.D, f1.E.D) } func TestCopyNestedWithUnexported(t *testing.T) { type Bar struct { a int B int } type Foo struct { A string B Bar } f1 := &Foo{A: "string", B: Bar{a: 1, B: 2}} var f2 Foo awsutil.Copy(&f2, f1) // Values match assert.Equal(t, f2.A, f1.A) assert.NotEqual(t, f2.B, f1.B) assert.NotEqual(t, f2.B.a, f1.B.a) assert.Equal(t, f2.B.B, f2.B.B) } func TestCopyIgnoreNilMembers(t *testing.T) { type Foo struct { A *string B []string C map[string]string } f := &Foo{} assert.Nil(t, f.A) assert.Nil(t, f.B) assert.Nil(t, f.C) var f2 Foo awsutil.Copy(&f2, f) assert.Nil(t, f2.A) assert.Nil(t, f2.B) assert.Nil(t, f2.C) fcopy := awsutil.CopyOf(f) f3 := fcopy.(*Foo) assert.Nil(t, f3.A) assert.Nil(t, f3.B) assert.Nil(t, f3.C) } func TestCopyPrimitive(t *testing.T) { str := "hello" var s string awsutil.Copy(&s, &str) assert.Equal(t, "hello", s) } func TestCopyNil(t *testing.T) { var s string awsutil.Copy(&s, nil) assert.Equal(t, "", s) } func TestCopyReader(t *testing.T) { var buf io.Reader = bytes.NewReader([]byte("hello world")) var r io.Reader awsutil.Copy(&r, buf) b, err := ioutil.ReadAll(r) assert.NoError(t, err) assert.Equal(t, []byte("hello world"), b) // empty bytes because this is not a deep copy b, err = ioutil.ReadAll(buf) assert.NoError(t, err) assert.Equal(t, []byte(""), b) } func TestCopyDifferentStructs(t *testing.T) { type SrcFoo struct { A int B []*string C map[string]*int SrcUnique string SameNameDiffType int unexportedPtr *int ExportedPtr *int } type DstFoo struct { A int B []*string C map[string]*int DstUnique int SameNameDiffType string unexportedPtr *int ExportedPtr *int } // Create the initial value str1 := "hello" str2 := "bye bye" int1 := 1 int2 := 2 f1 := &SrcFoo{ A: 1, B: []*string{&str1, &str2}, C: map[string]*int{ "A": &int1, "B": &int2, }, SrcUnique: "unique", SameNameDiffType: 1, unexportedPtr: &int1, ExportedPtr: &int2, } // Do the copy var f2 DstFoo awsutil.Copy(&f2, f1) // Values are equal assert.Equal(t, f2.A, f1.A) assert.Equal(t, f2.B, f1.B) assert.Equal(t, f2.C, f1.C) assert.Equal(t, "unique", f1.SrcUnique) assert.Equal(t, 1, f1.SameNameDiffType) assert.Equal(t, 0, f2.DstUnique) assert.Equal(t, "", f2.SameNameDiffType) assert.Equal(t, int1, *f1.unexportedPtr) assert.Nil(t, f2.unexportedPtr) assert.Equal(t, int2, *f1.ExportedPtr) assert.Equal(t, int2, *f2.ExportedPtr) } func ExampleCopyOf() { type Foo struct { A int B []*string } // Create the initial value str1 := "hello" str2 := "bye bye" f1 := &Foo{A: 1, B: []*string{&str1, &str2}} // Do the copy v := awsutil.CopyOf(f1) var f2 *Foo = v.(*Foo) // Print the result fmt.Println(awsutil.Prettify(f2)) // Output: // { // A: 1, // B: ["hello","bye bye"] // } } aws-sdk-go-1.4.22/aws/awsutil/equal.go000066400000000000000000000016341300374646400175070ustar00rootroot00000000000000package awsutil import ( "reflect" ) // DeepEqual returns if the two values are deeply equal like reflect.DeepEqual. // In addition to this, this method will also dereference the input values if // possible so the DeepEqual performed will not fail if one parameter is a // pointer and the other is not. // // DeepEqual will not perform indirection of nested values of the input parameters. func DeepEqual(a, b interface{}) bool { ra := reflect.Indirect(reflect.ValueOf(a)) rb := reflect.Indirect(reflect.ValueOf(b)) if raValid, rbValid := ra.IsValid(), rb.IsValid(); !raValid && !rbValid { // If the elements are both nil, and of the same type the are equal // If they are of different types they are not equal return reflect.TypeOf(a) == reflect.TypeOf(b) } else if raValid != rbValid { // Both values must be valid to be equal return false } return reflect.DeepEqual(ra.Interface(), rb.Interface()) } aws-sdk-go-1.4.22/aws/awsutil/equal_test.go000066400000000000000000000011431300374646400205410ustar00rootroot00000000000000package awsutil_test import ( "testing" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/stretchr/testify/assert" ) func TestDeepEqual(t *testing.T) { cases := []struct { a, b interface{} equal bool }{ {"a", "a", true}, {"a", "b", false}, {"a", aws.String(""), false}, {"a", nil, false}, {"a", aws.String("a"), true}, {(*bool)(nil), (*bool)(nil), true}, {(*bool)(nil), (*string)(nil), false}, {nil, nil, true}, } for i, c := range cases { assert.Equal(t, c.equal, awsutil.DeepEqual(c.a, c.b), "%d, a:%v b:%v, %t", i, c.a, c.b, c.equal) } } aws-sdk-go-1.4.22/aws/awsutil/path_value.go000066400000000000000000000124601300374646400205270ustar00rootroot00000000000000package awsutil import ( "reflect" "regexp" "strconv" "strings" "github.com/jmespath/go-jmespath" ) var indexRe = regexp.MustCompile(`(.+)\[(-?\d+)?\]$`) // rValuesAtPath returns a slice of values found in value v. The values // in v are explored recursively so all nested values are collected. func rValuesAtPath(v interface{}, path string, createPath, caseSensitive, nilTerm bool) []reflect.Value { pathparts := strings.Split(path, "||") if len(pathparts) > 1 { for _, pathpart := range pathparts { vals := rValuesAtPath(v, pathpart, createPath, caseSensitive, nilTerm) if len(vals) > 0 { return vals } } return nil } values := []reflect.Value{reflect.Indirect(reflect.ValueOf(v))} components := strings.Split(path, ".") for len(values) > 0 && len(components) > 0 { var index *int64 var indexStar bool c := strings.TrimSpace(components[0]) if c == "" { // no actual component, illegal syntax return nil } else if caseSensitive && c != "*" && strings.ToLower(c[0:1]) == c[0:1] { // TODO normalize case for user return nil // don't support unexported fields } // parse this component if m := indexRe.FindStringSubmatch(c); m != nil { c = m[1] if m[2] == "" { index = nil indexStar = true } else { i, _ := strconv.ParseInt(m[2], 10, 32) index = &i indexStar = false } } nextvals := []reflect.Value{} for _, value := range values { // pull component name out of struct member if value.Kind() != reflect.Struct { continue } if c == "*" { // pull all members for i := 0; i < value.NumField(); i++ { if f := reflect.Indirect(value.Field(i)); f.IsValid() { nextvals = append(nextvals, f) } } continue } value = value.FieldByNameFunc(func(name string) bool { if c == name { return true } else if !caseSensitive && strings.ToLower(name) == strings.ToLower(c) { return true } return false }) if nilTerm && value.Kind() == reflect.Ptr && len(components[1:]) == 0 { if !value.IsNil() { value.Set(reflect.Zero(value.Type())) } return []reflect.Value{value} } if createPath && value.Kind() == reflect.Ptr && value.IsNil() { // TODO if the value is the terminus it should not be created // if the value to be set to its position is nil. value.Set(reflect.New(value.Type().Elem())) value = value.Elem() } else { value = reflect.Indirect(value) } if value.Kind() == reflect.Slice || value.Kind() == reflect.Map { if !createPath && value.IsNil() { value = reflect.ValueOf(nil) } } if value.IsValid() { nextvals = append(nextvals, value) } } values = nextvals if indexStar || index != nil { nextvals = []reflect.Value{} for _, valItem := range values { value := reflect.Indirect(valItem) if value.Kind() != reflect.Slice { continue } if indexStar { // grab all indices for i := 0; i < value.Len(); i++ { idx := reflect.Indirect(value.Index(i)) if idx.IsValid() { nextvals = append(nextvals, idx) } } continue } // pull out index i := int(*index) if i >= value.Len() { // check out of bounds if createPath { // TODO resize slice } else { continue } } else if i < 0 { // support negative indexing i = value.Len() + i } value = reflect.Indirect(value.Index(i)) if value.Kind() == reflect.Slice || value.Kind() == reflect.Map { if !createPath && value.IsNil() { value = reflect.ValueOf(nil) } } if value.IsValid() { nextvals = append(nextvals, value) } } values = nextvals } components = components[1:] } return values } // ValuesAtPath returns a list of values at the case insensitive lexical // path inside of a structure. func ValuesAtPath(i interface{}, path string) ([]interface{}, error) { result, err := jmespath.Search(path, i) if err != nil { return nil, err } v := reflect.ValueOf(result) if !v.IsValid() || (v.Kind() == reflect.Ptr && v.IsNil()) { return nil, nil } if s, ok := result.([]interface{}); ok { return s, err } if v.Kind() == reflect.Map && v.Len() == 0 { return nil, nil } if v.Kind() == reflect.Slice { out := make([]interface{}, v.Len()) for i := 0; i < v.Len(); i++ { out[i] = v.Index(i).Interface() } return out, nil } return []interface{}{result}, nil } // SetValueAtPath sets a value at the case insensitive lexical path inside // of a structure. func SetValueAtPath(i interface{}, path string, v interface{}) { if rvals := rValuesAtPath(i, path, true, false, v == nil); rvals != nil { for _, rval := range rvals { if rval.Kind() == reflect.Ptr && rval.IsNil() { continue } setValue(rval, v) } } } func setValue(dstVal reflect.Value, src interface{}) { if dstVal.Kind() == reflect.Ptr { dstVal = reflect.Indirect(dstVal) } srcVal := reflect.ValueOf(src) if !srcVal.IsValid() { // src is literal nil if dstVal.CanAddr() { // Convert to pointer so that pointer's value can be nil'ed // dstVal = dstVal.Addr() } dstVal.Set(reflect.Zero(dstVal.Type())) } else if srcVal.Kind() == reflect.Ptr { if srcVal.IsNil() { srcVal = reflect.Zero(dstVal.Type()) } else { srcVal = reflect.ValueOf(src).Elem() } dstVal.Set(srcVal) } else { dstVal.Set(srcVal) } } aws-sdk-go-1.4.22/aws/awsutil/path_value_test.go000066400000000000000000000076261300374646400215760ustar00rootroot00000000000000package awsutil_test import ( "testing" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/stretchr/testify/assert" ) type Struct struct { A []Struct z []Struct B *Struct D *Struct C string E map[string]string } var data = Struct{ A: []Struct{{C: "value1"}, {C: "value2"}, {C: "value3"}}, z: []Struct{{C: "value1"}, {C: "value2"}, {C: "value3"}}, B: &Struct{B: &Struct{C: "terminal"}, D: &Struct{C: "terminal2"}}, C: "initial", } var data2 = Struct{A: []Struct{ {A: []Struct{{C: "1"}, {C: "1"}, {C: "1"}, {C: "1"}, {C: "1"}}}, {A: []Struct{{C: "2"}, {C: "2"}, {C: "2"}, {C: "2"}, {C: "2"}}}, }} func TestValueAtPathSuccess(t *testing.T) { var testCases = []struct { expect []interface{} data interface{} path string }{ {[]interface{}{"initial"}, data, "C"}, {[]interface{}{"value1"}, data, "A[0].C"}, {[]interface{}{"value2"}, data, "A[1].C"}, {[]interface{}{"value3"}, data, "A[2].C"}, {[]interface{}{"value3"}, data, "a[2].c"}, {[]interface{}{"value3"}, data, "A[-1].C"}, {[]interface{}{"value1", "value2", "value3"}, data, "A[].C"}, {[]interface{}{"terminal"}, data, "B . B . C"}, {[]interface{}{"initial"}, data, "A.D.X || C"}, {[]interface{}{"initial"}, data, "A[0].B || C"}, {[]interface{}{ Struct{A: []Struct{{C: "1"}, {C: "1"}, {C: "1"}, {C: "1"}, {C: "1"}}}, Struct{A: []Struct{{C: "2"}, {C: "2"}, {C: "2"}, {C: "2"}, {C: "2"}}}, }, data2, "A"}, } for i, c := range testCases { v, err := awsutil.ValuesAtPath(c.data, c.path) assert.NoError(t, err, "case %d, expected no error, %s", i, c.path) assert.Equal(t, c.expect, v, "case %d, %s", i, c.path) } } func TestValueAtPathFailure(t *testing.T) { var testCases = []struct { expect []interface{} errContains string data interface{} path string }{ {nil, "", data, "C.x"}, {nil, "SyntaxError: Invalid token: tDot", data, ".x"}, {nil, "", data, "X.Y.Z"}, {nil, "", data, "A[100].C"}, {nil, "", data, "A[3].C"}, {nil, "", data, "B.B.C.Z"}, {nil, "", data, "z[-1].C"}, {nil, "", nil, "A.B.C"}, {[]interface{}{}, "", Struct{}, "A"}, {nil, "", data, "A[0].B.C"}, {nil, "", data, "D"}, } for i, c := range testCases { v, err := awsutil.ValuesAtPath(c.data, c.path) if c.errContains != "" { assert.Contains(t, err.Error(), c.errContains, "case %d, expected error, %s", i, c.path) continue } else { assert.NoError(t, err, "case %d, expected no error, %s", i, c.path) } assert.Equal(t, c.expect, v, "case %d, %s", i, c.path) } } func TestSetValueAtPathSuccess(t *testing.T) { var s Struct awsutil.SetValueAtPath(&s, "C", "test1") awsutil.SetValueAtPath(&s, "B.B.C", "test2") awsutil.SetValueAtPath(&s, "B.D.C", "test3") assert.Equal(t, "test1", s.C) assert.Equal(t, "test2", s.B.B.C) assert.Equal(t, "test3", s.B.D.C) awsutil.SetValueAtPath(&s, "B.*.C", "test0") assert.Equal(t, "test0", s.B.B.C) assert.Equal(t, "test0", s.B.D.C) var s2 Struct awsutil.SetValueAtPath(&s2, "b.b.c", "test0") assert.Equal(t, "test0", s2.B.B.C) awsutil.SetValueAtPath(&s2, "A", []Struct{{}}) assert.Equal(t, []Struct{{}}, s2.A) str := "foo" s3 := Struct{} awsutil.SetValueAtPath(&s3, "b.b.c", str) assert.Equal(t, "foo", s3.B.B.C) s3 = Struct{B: &Struct{B: &Struct{C: str}}} awsutil.SetValueAtPath(&s3, "b.b.c", nil) assert.Equal(t, "", s3.B.B.C) s3 = Struct{} awsutil.SetValueAtPath(&s3, "b.b.c", nil) assert.Equal(t, "", s3.B.B.C) s3 = Struct{} awsutil.SetValueAtPath(&s3, "b.b.c", &str) assert.Equal(t, "foo", s3.B.B.C) var s4 struct{ Name *string } awsutil.SetValueAtPath(&s4, "Name", str) assert.Equal(t, str, *s4.Name) s4 = struct{ Name *string }{} awsutil.SetValueAtPath(&s4, "Name", nil) assert.Equal(t, (*string)(nil), s4.Name) s4 = struct{ Name *string }{Name: &str} awsutil.SetValueAtPath(&s4, "Name", nil) assert.Equal(t, (*string)(nil), s4.Name) s4 = struct{ Name *string }{} awsutil.SetValueAtPath(&s4, "Name", &str) assert.Equal(t, str, *s4.Name) } aws-sdk-go-1.4.22/aws/awsutil/prettify.go000066400000000000000000000045261300374646400202510ustar00rootroot00000000000000package awsutil import ( "bytes" "fmt" "io" "reflect" "strings" ) // Prettify returns the string representation of a value. func Prettify(i interface{}) string { var buf bytes.Buffer prettify(reflect.ValueOf(i), 0, &buf) return buf.String() } // prettify will recursively walk value v to build a textual // representation of the value. func prettify(v reflect.Value, indent int, buf *bytes.Buffer) { for v.Kind() == reflect.Ptr { v = v.Elem() } switch v.Kind() { case reflect.Struct: strtype := v.Type().String() if strtype == "time.Time" { fmt.Fprintf(buf, "%s", v.Interface()) break } else if strings.HasPrefix(strtype, "io.") { buf.WriteString("") break } buf.WriteString("{\n") names := []string{} for i := 0; i < v.Type().NumField(); i++ { name := v.Type().Field(i).Name f := v.Field(i) if name[0:1] == strings.ToLower(name[0:1]) { continue // ignore unexported fields } if (f.Kind() == reflect.Ptr || f.Kind() == reflect.Slice || f.Kind() == reflect.Map) && f.IsNil() { continue // ignore unset fields } names = append(names, name) } for i, n := range names { val := v.FieldByName(n) buf.WriteString(strings.Repeat(" ", indent+2)) buf.WriteString(n + ": ") prettify(val, indent+2, buf) if i < len(names)-1 { buf.WriteString(",\n") } } buf.WriteString("\n" + strings.Repeat(" ", indent) + "}") case reflect.Slice: nl, id, id2 := "", "", "" if v.Len() > 3 { nl, id, id2 = "\n", strings.Repeat(" ", indent), strings.Repeat(" ", indent+2) } buf.WriteString("[" + nl) for i := 0; i < v.Len(); i++ { buf.WriteString(id2) prettify(v.Index(i), indent+2, buf) if i < v.Len()-1 { buf.WriteString("," + nl) } } buf.WriteString(nl + id + "]") case reflect.Map: buf.WriteString("{\n") for i, k := range v.MapKeys() { buf.WriteString(strings.Repeat(" ", indent+2)) buf.WriteString(k.String() + ": ") prettify(v.MapIndex(k), indent+2, buf) if i < v.Len()-1 { buf.WriteString(",\n") } } buf.WriteString("\n" + strings.Repeat(" ", indent) + "}") default: if !v.IsValid() { fmt.Fprint(buf, "") return } format := "%v" switch v.Interface().(type) { case string: format = "%q" case io.ReadSeeker, io.Reader: format = "buffer(%p)" } fmt.Fprintf(buf, format, v.Interface()) } } aws-sdk-go-1.4.22/aws/awsutil/string_value.go000066400000000000000000000036371300374646400211070ustar00rootroot00000000000000package awsutil import ( "bytes" "fmt" "reflect" "strings" ) // StringValue returns the string representation of a value. func StringValue(i interface{}) string { var buf bytes.Buffer stringValue(reflect.ValueOf(i), 0, &buf) return buf.String() } func stringValue(v reflect.Value, indent int, buf *bytes.Buffer) { for v.Kind() == reflect.Ptr { v = v.Elem() } switch v.Kind() { case reflect.Struct: buf.WriteString("{\n") names := []string{} for i := 0; i < v.Type().NumField(); i++ { name := v.Type().Field(i).Name f := v.Field(i) if name[0:1] == strings.ToLower(name[0:1]) { continue // ignore unexported fields } if (f.Kind() == reflect.Ptr || f.Kind() == reflect.Slice) && f.IsNil() { continue // ignore unset fields } names = append(names, name) } for i, n := range names { val := v.FieldByName(n) buf.WriteString(strings.Repeat(" ", indent+2)) buf.WriteString(n + ": ") stringValue(val, indent+2, buf) if i < len(names)-1 { buf.WriteString(",\n") } } buf.WriteString("\n" + strings.Repeat(" ", indent) + "}") case reflect.Slice: nl, id, id2 := "", "", "" if v.Len() > 3 { nl, id, id2 = "\n", strings.Repeat(" ", indent), strings.Repeat(" ", indent+2) } buf.WriteString("[" + nl) for i := 0; i < v.Len(); i++ { buf.WriteString(id2) stringValue(v.Index(i), indent+2, buf) if i < v.Len()-1 { buf.WriteString("," + nl) } } buf.WriteString(nl + id + "]") case reflect.Map: buf.WriteString("{\n") for i, k := range v.MapKeys() { buf.WriteString(strings.Repeat(" ", indent+2)) buf.WriteString(k.String() + ": ") stringValue(v.MapIndex(k), indent+2, buf) if i < v.Len()-1 { buf.WriteString(",\n") } } buf.WriteString("\n" + strings.Repeat(" ", indent) + "}") default: format := "%v" switch v.Interface().(type) { case string: format = "%q" } fmt.Fprintf(buf, format, v.Interface()) } } aws-sdk-go-1.4.22/aws/client/000077500000000000000000000000001300374646400156335ustar00rootroot00000000000000aws-sdk-go-1.4.22/aws/client/client.go000066400000000000000000000077441300374646400174540ustar00rootroot00000000000000package client import ( "fmt" "net/http/httputil" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" ) // A Config provides configuration to a service client instance. type Config struct { Config *aws.Config Handlers request.Handlers Endpoint, SigningRegion string } // ConfigProvider provides a generic way for a service client to receive // the ClientConfig without circular dependencies. type ConfigProvider interface { ClientConfig(serviceName string, cfgs ...*aws.Config) Config } // A Client implements the base client request and response handling // used by all service clients. type Client struct { request.Retryer metadata.ClientInfo Config aws.Config Handlers request.Handlers } // New will return a pointer to a new initialized service client. func New(cfg aws.Config, info metadata.ClientInfo, handlers request.Handlers, options ...func(*Client)) *Client { svc := &Client{ Config: cfg, ClientInfo: info, Handlers: handlers, } switch retryer, ok := cfg.Retryer.(request.Retryer); { case ok: svc.Retryer = retryer case cfg.Retryer != nil && cfg.Logger != nil: s := fmt.Sprintf("WARNING: %T does not implement request.Retryer; using DefaultRetryer instead", cfg.Retryer) cfg.Logger.Log(s) fallthrough default: maxRetries := aws.IntValue(cfg.MaxRetries) if cfg.MaxRetries == nil || maxRetries == aws.UseServiceDefaultRetries { maxRetries = 3 } svc.Retryer = DefaultRetryer{NumMaxRetries: maxRetries} } svc.AddDebugHandlers() for _, option := range options { option(svc) } return svc } // NewRequest returns a new Request pointer for the service API // operation and parameters. func (c *Client) NewRequest(operation *request.Operation, params interface{}, data interface{}) *request.Request { return request.New(c.Config, c.ClientInfo, c.Handlers, c.Retryer, operation, params, data) } // AddDebugHandlers injects debug logging handlers into the service to log request // debug information. func (c *Client) AddDebugHandlers() { if !c.Config.LogLevel.AtLeast(aws.LogDebug) { return } c.Handlers.Send.PushFront(logRequest) c.Handlers.Send.PushBack(logResponse) } const logReqMsg = `DEBUG: Request %s/%s Details: ---[ REQUEST POST-SIGN ]----------------------------- %s -----------------------------------------------------` const logReqErrMsg = `DEBUG ERROR: Request %s/%s: ---[ REQUEST DUMP ERROR ]----------------------------- %s -----------------------------------------------------` func logRequest(r *request.Request) { logBody := r.Config.LogLevel.Matches(aws.LogDebugWithHTTPBody) dumpedBody, err := httputil.DumpRequestOut(r.HTTPRequest, logBody) if err != nil { r.Config.Logger.Log(fmt.Sprintf(logReqErrMsg, r.ClientInfo.ServiceName, r.Operation.Name, err)) return } if logBody { // Reset the request body because dumpRequest will re-wrap the r.HTTPRequest's // Body as a NoOpCloser and will not be reset after read by the HTTP // client reader. r.ResetBody() } r.Config.Logger.Log(fmt.Sprintf(logReqMsg, r.ClientInfo.ServiceName, r.Operation.Name, string(dumpedBody))) } const logRespMsg = `DEBUG: Response %s/%s Details: ---[ RESPONSE ]-------------------------------------- %s -----------------------------------------------------` const logRespErrMsg = `DEBUG ERROR: Response %s/%s: ---[ RESPONSE DUMP ERROR ]----------------------------- %s -----------------------------------------------------` func logResponse(r *request.Request) { var msg = "no response data" if r.HTTPResponse != nil { logBody := r.Config.LogLevel.Matches(aws.LogDebugWithHTTPBody) dumpedBody, err := httputil.DumpResponse(r.HTTPResponse, logBody) if err != nil { r.Config.Logger.Log(fmt.Sprintf(logRespErrMsg, r.ClientInfo.ServiceName, r.Operation.Name, err)) return } msg = string(dumpedBody) } else if r.Error != nil { msg = r.Error.Error() } r.Config.Logger.Log(fmt.Sprintf(logRespMsg, r.ClientInfo.ServiceName, r.Operation.Name, msg)) } aws-sdk-go-1.4.22/aws/client/default_retryer.go000066400000000000000000000044241300374646400213660ustar00rootroot00000000000000package client import ( "math/rand" "sync" "time" "github.com/aws/aws-sdk-go/aws/request" ) // DefaultRetryer implements basic retry logic using exponential backoff for // most services. If you want to implement custom retry logic, implement the // request.Retryer interface or create a structure type that composes this // struct and override the specific methods. For example, to override only // the MaxRetries method: // // type retryer struct { // service.DefaultRetryer // } // // // This implementation always has 100 max retries // func (d retryer) MaxRetries() uint { return 100 } type DefaultRetryer struct { NumMaxRetries int } // MaxRetries returns the number of maximum returns the service will use to make // an individual API request. func (d DefaultRetryer) MaxRetries() int { return d.NumMaxRetries } var seededRand = rand.New(&lockedSource{src: rand.NewSource(time.Now().UnixNano())}) // RetryRules returns the delay duration before retrying this request again func (d DefaultRetryer) RetryRules(r *request.Request) time.Duration { // Set the upper limit of delay in retrying at ~five minutes minTime := 30 throttle := d.shouldThrottle(r) if throttle { minTime = 500 } retryCount := r.RetryCount if retryCount > 13 { retryCount = 13 } else if throttle && retryCount > 8 { retryCount = 8 } delay := (1 << uint(retryCount)) * (seededRand.Intn(minTime) + minTime) return time.Duration(delay) * time.Millisecond } // ShouldRetry returns true if the request should be retried. func (d DefaultRetryer) ShouldRetry(r *request.Request) bool { if r.HTTPResponse.StatusCode >= 500 { return true } return r.IsErrorRetryable() || d.shouldThrottle(r) } // ShouldThrottle returns true if the request should be throttled. func (d DefaultRetryer) shouldThrottle(r *request.Request) bool { if r.HTTPResponse.StatusCode == 502 || r.HTTPResponse.StatusCode == 503 || r.HTTPResponse.StatusCode == 504 { return true } return r.IsErrorThrottle() } // lockedSource is a thread-safe implementation of rand.Source type lockedSource struct { lk sync.Mutex src rand.Source } func (r *lockedSource) Int63() (n int64) { r.lk.Lock() n = r.src.Int63() r.lk.Unlock() return } func (r *lockedSource) Seed(seed int64) { r.lk.Lock() r.src.Seed(seed) r.lk.Unlock() } aws-sdk-go-1.4.22/aws/client/metadata/000077500000000000000000000000001300374646400174135ustar00rootroot00000000000000aws-sdk-go-1.4.22/aws/client/metadata/client_info.go000066400000000000000000000004141300374646400222320ustar00rootroot00000000000000package metadata // ClientInfo wraps immutable data from the client.Client structure. type ClientInfo struct { ServiceName string APIVersion string Endpoint string SigningName string SigningRegion string JSONVersion string TargetPrefix string } aws-sdk-go-1.4.22/aws/config.go000066400000000000000000000317641300374646400161640ustar00rootroot00000000000000package aws import ( "net/http" "time" "github.com/aws/aws-sdk-go/aws/credentials" ) // UseServiceDefaultRetries instructs the config to use the service's own // default number of retries. This will be the default action if // Config.MaxRetries is nil also. const UseServiceDefaultRetries = -1 // RequestRetryer is an alias for a type that implements the request.Retryer // interface. type RequestRetryer interface{} // A Config provides service configuration for service clients. By default, // all clients will use the defaults.DefaultConfig tructure. // // // Create Session with MaxRetry configuration to be shared by multiple // // service clients. // sess, err := session.NewSession(&aws.Config{ // MaxRetries: aws.Int(3), // }) // // // Create S3 service client with a specific Region. // svc := s3.New(sess, &aws.Config{ // Region: aws.String("us-west-2"), // }) type Config struct { // Enables verbose error printing of all credential chain errors. // Should be used when wanting to see all errors while attempting to // retrieve credentials. CredentialsChainVerboseErrors *bool // The credentials object to use when signing requests. Defaults to a // chain of credential providers to search for credentials in environment // variables, shared credential file, and EC2 Instance Roles. Credentials *credentials.Credentials // An optional endpoint URL (hostname only or fully qualified URI) // that overrides the default generated endpoint for a client. Set this // to `""` to use the default generated endpoint. // // @note You must still provide a `Region` value when specifying an // endpoint for a client. Endpoint *string // The region to send requests to. This parameter is required and must // be configured globally or on a per-client basis unless otherwise // noted. A full list of regions is found in the "Regions and Endpoints" // document. // // @see http://docs.aws.amazon.com/general/latest/gr/rande.html // AWS Regions and Endpoints Region *string // Set this to `true` to disable SSL when sending requests. Defaults // to `false`. DisableSSL *bool // The HTTP client to use when sending requests. Defaults to // `http.DefaultClient`. HTTPClient *http.Client // An integer value representing the logging level. The default log level // is zero (LogOff), which represents no logging. To enable logging set // to a LogLevel Value. LogLevel *LogLevelType // The logger writer interface to write logging messages to. Defaults to // standard out. Logger Logger // The maximum number of times that a request will be retried for failures. // Defaults to -1, which defers the max retry setting to the service // specific configuration. MaxRetries *int // Retryer guides how HTTP requests should be retried in case of // recoverable failures. // // When nil or the value does not implement the request.Retryer interface, // the request.DefaultRetryer will be used. // // When both Retryer and MaxRetries are non-nil, the former is used and // the latter ignored. // // To set the Retryer field in a type-safe manner and with chaining, use // the request.WithRetryer helper function: // // cfg := request.WithRetryer(aws.NewConfig(), myRetryer) // Retryer RequestRetryer // Disables semantic parameter validation, which validates input for // missing required fields and/or other semantic request input errors. DisableParamValidation *bool // Disables the computation of request and response checksums, e.g., // CRC32 checksums in Amazon DynamoDB. DisableComputeChecksums *bool // Set this to `true` to force the request to use path-style addressing, // i.e., `http://s3.amazonaws.com/BUCKET/KEY`. By default, the S3 client // will use virtual hosted bucket addressing when possible // (`http://BUCKET.s3.amazonaws.com/KEY`). // // @note This configuration option is specific to the Amazon S3 service. // @see http://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html // Amazon S3: Virtual Hosting of Buckets S3ForcePathStyle *bool // Set this to `true` to disable the SDK adding the `Expect: 100-Continue` // header to PUT requests over 2MB of content. 100-Continue instructs the // HTTP client not to send the body until the service responds with a // `continue` status. This is useful to prevent sending the request body // until after the request is authenticated, and validated. // // http://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPUT.html // // 100-Continue is only enabled for Go 1.6 and above. See `http.Transport`'s // `ExpectContinueTimeout` for information on adjusting the continue wait // timeout. https://golang.org/pkg/net/http/#Transport // // You should use this flag to disble 100-Continue if you experience issues // with proxies or third party S3 compatible services. S3Disable100Continue *bool // Set this to `true` to enable S3 Accelerate feature. For all operations // compatible with S3 Accelerate will use the accelerate endpoint for // requests. Requests not compatible will fall back to normal S3 requests. // // The bucket must be enable for accelerate to be used with S3 client with // accelerate enabled. If the bucket is not enabled for accelerate an error // will be returned. The bucket name must be DNS compatible to also work // with accelerate. S3UseAccelerate *bool // Set this to `true` to disable the EC2Metadata client from overriding the // default http.Client's Timeout. This is helpful if you do not want the // EC2Metadata client to create a new http.Client. This options is only // meaningful if you're not already using a custom HTTP client with the // SDK. Enabled by default. // // Must be set and provided to the session.NewSession() in order to disable // the EC2Metadata overriding the timeout for default credentials chain. // // Example: // sess, err := session.NewSession(aws.NewConfig().WithEC2MetadataDiableTimeoutOverride(true)) // // svc := s3.New(sess) // EC2MetadataDisableTimeoutOverride *bool // Instructs the endpiont to be generated for a service client to // be the dual stack endpoint. The dual stack endpoint will support // both IPv4 and IPv6 addressing. // // Setting this for a service which does not support dual stack will fail // to make requets. It is not recommended to set this value on the session // as it will apply to all service clients created with the session. Even // services which don't support dual stack endpoints. // // If the Endpoint config value is also provided the UseDualStack flag // will be ignored. // // Only supported with. // // sess, err := session.NewSession() // // svc := s3.New(sess, &aws.Config{ // UseDualStack: aws.Bool(true), // }) UseDualStack *bool // SleepDelay is an override for the func the SDK will call when sleeping // during the lifecycle of a request. Specifically this will be used for // request delays. This value should only be used for testing. To adjust // the delay of a request see the aws/client.DefaultRetryer and // aws/request.Retryer. SleepDelay func(time.Duration) } // NewConfig returns a new Config pointer that can be chained with builder // methods to set multiple configuration values inline without using pointers. // // // Create Session with MaxRetry configuration to be shared by multiple // // service clients. // sess, err := session.NewSession(aws.NewConfig(). // WithMaxRetries(3), // ) // // // Create S3 service client with a specific Region. // svc := s3.New(sess, aws.NewConfig(). // WithRegion("us-west-2"), // ) func NewConfig() *Config { return &Config{} } // WithCredentialsChainVerboseErrors sets a config verbose errors boolean and returning // a Config pointer. func (c *Config) WithCredentialsChainVerboseErrors(verboseErrs bool) *Config { c.CredentialsChainVerboseErrors = &verboseErrs return c } // WithCredentials sets a config Credentials value returning a Config pointer // for chaining. func (c *Config) WithCredentials(creds *credentials.Credentials) *Config { c.Credentials = creds return c } // WithEndpoint sets a config Endpoint value returning a Config pointer for // chaining. func (c *Config) WithEndpoint(endpoint string) *Config { c.Endpoint = &endpoint return c } // WithRegion sets a config Region value returning a Config pointer for // chaining. func (c *Config) WithRegion(region string) *Config { c.Region = ®ion return c } // WithDisableSSL sets a config DisableSSL value returning a Config pointer // for chaining. func (c *Config) WithDisableSSL(disable bool) *Config { c.DisableSSL = &disable return c } // WithHTTPClient sets a config HTTPClient value returning a Config pointer // for chaining. func (c *Config) WithHTTPClient(client *http.Client) *Config { c.HTTPClient = client return c } // WithMaxRetries sets a config MaxRetries value returning a Config pointer // for chaining. func (c *Config) WithMaxRetries(max int) *Config { c.MaxRetries = &max return c } // WithDisableParamValidation sets a config DisableParamValidation value // returning a Config pointer for chaining. func (c *Config) WithDisableParamValidation(disable bool) *Config { c.DisableParamValidation = &disable return c } // WithDisableComputeChecksums sets a config DisableComputeChecksums value // returning a Config pointer for chaining. func (c *Config) WithDisableComputeChecksums(disable bool) *Config { c.DisableComputeChecksums = &disable return c } // WithLogLevel sets a config LogLevel value returning a Config pointer for // chaining. func (c *Config) WithLogLevel(level LogLevelType) *Config { c.LogLevel = &level return c } // WithLogger sets a config Logger value returning a Config pointer for // chaining. func (c *Config) WithLogger(logger Logger) *Config { c.Logger = logger return c } // WithS3ForcePathStyle sets a config S3ForcePathStyle value returning a Config // pointer for chaining. func (c *Config) WithS3ForcePathStyle(force bool) *Config { c.S3ForcePathStyle = &force return c } // WithS3Disable100Continue sets a config S3Disable100Continue value returning // a Config pointer for chaining. func (c *Config) WithS3Disable100Continue(disable bool) *Config { c.S3Disable100Continue = &disable return c } // WithS3UseAccelerate sets a config S3UseAccelerate value returning a Config // pointer for chaining. func (c *Config) WithS3UseAccelerate(enable bool) *Config { c.S3UseAccelerate = &enable return c } // WithUseDualStack sets a config UseDualStack value returning a Config // pointer for chaining. func (c *Config) WithUseDualStack(enable bool) *Config { c.UseDualStack = &enable return c } // WithEC2MetadataDisableTimeoutOverride sets a config EC2MetadataDisableTimeoutOverride value // returning a Config pointer for chaining. func (c *Config) WithEC2MetadataDisableTimeoutOverride(enable bool) *Config { c.EC2MetadataDisableTimeoutOverride = &enable return c } // WithSleepDelay overrides the function used to sleep while waiting for the // next retry. Defaults to time.Sleep. func (c *Config) WithSleepDelay(fn func(time.Duration)) *Config { c.SleepDelay = fn return c } // MergeIn merges the passed in configs into the existing config object. func (c *Config) MergeIn(cfgs ...*Config) { for _, other := range cfgs { mergeInConfig(c, other) } } func mergeInConfig(dst *Config, other *Config) { if other == nil { return } if other.CredentialsChainVerboseErrors != nil { dst.CredentialsChainVerboseErrors = other.CredentialsChainVerboseErrors } if other.Credentials != nil { dst.Credentials = other.Credentials } if other.Endpoint != nil { dst.Endpoint = other.Endpoint } if other.Region != nil { dst.Region = other.Region } if other.DisableSSL != nil { dst.DisableSSL = other.DisableSSL } if other.HTTPClient != nil { dst.HTTPClient = other.HTTPClient } if other.LogLevel != nil { dst.LogLevel = other.LogLevel } if other.Logger != nil { dst.Logger = other.Logger } if other.MaxRetries != nil { dst.MaxRetries = other.MaxRetries } if other.Retryer != nil { dst.Retryer = other.Retryer } if other.DisableParamValidation != nil { dst.DisableParamValidation = other.DisableParamValidation } if other.DisableComputeChecksums != nil { dst.DisableComputeChecksums = other.DisableComputeChecksums } if other.S3ForcePathStyle != nil { dst.S3ForcePathStyle = other.S3ForcePathStyle } if other.S3Disable100Continue != nil { dst.S3Disable100Continue = other.S3Disable100Continue } if other.S3UseAccelerate != nil { dst.S3UseAccelerate = other.S3UseAccelerate } if other.UseDualStack != nil { dst.UseDualStack = other.UseDualStack } if other.EC2MetadataDisableTimeoutOverride != nil { dst.EC2MetadataDisableTimeoutOverride = other.EC2MetadataDisableTimeoutOverride } if other.SleepDelay != nil { dst.SleepDelay = other.SleepDelay } } // Copy will return a shallow copy of the Config object. If any additional // configurations are provided they will be merged into the new config returned. func (c *Config) Copy(cfgs ...*Config) *Config { dst := &Config{} dst.MergeIn(c) for _, cfg := range cfgs { dst.MergeIn(cfg) } return dst } aws-sdk-go-1.4.22/aws/config_test.go000066400000000000000000000043701300374646400172140ustar00rootroot00000000000000package aws import ( "net/http" "reflect" "testing" "github.com/aws/aws-sdk-go/aws/credentials" ) var testCredentials = credentials.NewStaticCredentials("AKID", "SECRET", "SESSION") var copyTestConfig = Config{ Credentials: testCredentials, Endpoint: String("CopyTestEndpoint"), Region: String("COPY_TEST_AWS_REGION"), DisableSSL: Bool(true), HTTPClient: http.DefaultClient, LogLevel: LogLevel(LogDebug), Logger: NewDefaultLogger(), MaxRetries: Int(3), DisableParamValidation: Bool(true), DisableComputeChecksums: Bool(true), S3ForcePathStyle: Bool(true), } func TestCopy(t *testing.T) { want := copyTestConfig got := copyTestConfig.Copy() if !reflect.DeepEqual(*got, want) { t.Errorf("Copy() = %+v", got) t.Errorf(" want %+v", want) } got.Region = String("other") if got.Region == want.Region { t.Errorf("Expect setting copy values not not reflect in source") } } func TestCopyReturnsNewInstance(t *testing.T) { want := copyTestConfig got := copyTestConfig.Copy() if got == &want { t.Errorf("Copy() = %p; want different instance as source %p", got, &want) } } var mergeTestZeroValueConfig = Config{} var mergeTestConfig = Config{ Credentials: testCredentials, Endpoint: String("MergeTestEndpoint"), Region: String("MERGE_TEST_AWS_REGION"), DisableSSL: Bool(true), HTTPClient: http.DefaultClient, LogLevel: LogLevel(LogDebug), Logger: NewDefaultLogger(), MaxRetries: Int(10), DisableParamValidation: Bool(true), DisableComputeChecksums: Bool(true), S3ForcePathStyle: Bool(true), } var mergeTests = []struct { cfg *Config in *Config want *Config }{ {&Config{}, nil, &Config{}}, {&Config{}, &mergeTestZeroValueConfig, &Config{}}, {&Config{}, &mergeTestConfig, &mergeTestConfig}, } func TestMerge(t *testing.T) { for i, tt := range mergeTests { got := tt.cfg.Copy() got.MergeIn(tt.in) if !reflect.DeepEqual(got, tt.want) { t.Errorf("Config %d %+v", i, tt.cfg) t.Errorf(" Merge(%+v)", tt.in) t.Errorf(" got %+v", got) t.Errorf(" want %+v", tt.want) } } } aws-sdk-go-1.4.22/aws/convert_types.go000066400000000000000000000202461300374646400176140ustar00rootroot00000000000000package aws import "time" // String returns a pointer to the string value passed in. func String(v string) *string { return &v } // StringValue returns the value of the string pointer passed in or // "" if the pointer is nil. func StringValue(v *string) string { if v != nil { return *v } return "" } // StringSlice converts a slice of string values into a slice of // string pointers func StringSlice(src []string) []*string { dst := make([]*string, len(src)) for i := 0; i < len(src); i++ { dst[i] = &(src[i]) } return dst } // StringValueSlice converts a slice of string pointers into a slice of // string values func StringValueSlice(src []*string) []string { dst := make([]string, len(src)) for i := 0; i < len(src); i++ { if src[i] != nil { dst[i] = *(src[i]) } } return dst } // StringMap converts a string map of string values into a string // map of string pointers func StringMap(src map[string]string) map[string]*string { dst := make(map[string]*string) for k, val := range src { v := val dst[k] = &v } return dst } // StringValueMap converts a string map of string pointers into a string // map of string values func StringValueMap(src map[string]*string) map[string]string { dst := make(map[string]string) for k, val := range src { if val != nil { dst[k] = *val } } return dst } // Bool returns a pointer to the bool value passed in. func Bool(v bool) *bool { return &v } // BoolValue returns the value of the bool pointer passed in or // false if the pointer is nil. func BoolValue(v *bool) bool { if v != nil { return *v } return false } // BoolSlice converts a slice of bool values into a slice of // bool pointers func BoolSlice(src []bool) []*bool { dst := make([]*bool, len(src)) for i := 0; i < len(src); i++ { dst[i] = &(src[i]) } return dst } // BoolValueSlice converts a slice of bool pointers into a slice of // bool values func BoolValueSlice(src []*bool) []bool { dst := make([]bool, len(src)) for i := 0; i < len(src); i++ { if src[i] != nil { dst[i] = *(src[i]) } } return dst } // BoolMap converts a string map of bool values into a string // map of bool pointers func BoolMap(src map[string]bool) map[string]*bool { dst := make(map[string]*bool) for k, val := range src { v := val dst[k] = &v } return dst } // BoolValueMap converts a string map of bool pointers into a string // map of bool values func BoolValueMap(src map[string]*bool) map[string]bool { dst := make(map[string]bool) for k, val := range src { if val != nil { dst[k] = *val } } return dst } // Int returns a pointer to the int value passed in. func Int(v int) *int { return &v } // IntValue returns the value of the int pointer passed in or // 0 if the pointer is nil. func IntValue(v *int) int { if v != nil { return *v } return 0 } // IntSlice converts a slice of int values into a slice of // int pointers func IntSlice(src []int) []*int { dst := make([]*int, len(src)) for i := 0; i < len(src); i++ { dst[i] = &(src[i]) } return dst } // IntValueSlice converts a slice of int pointers into a slice of // int values func IntValueSlice(src []*int) []int { dst := make([]int, len(src)) for i := 0; i < len(src); i++ { if src[i] != nil { dst[i] = *(src[i]) } } return dst } // IntMap converts a string map of int values into a string // map of int pointers func IntMap(src map[string]int) map[string]*int { dst := make(map[string]*int) for k, val := range src { v := val dst[k] = &v } return dst } // IntValueMap converts a string map of int pointers into a string // map of int values func IntValueMap(src map[string]*int) map[string]int { dst := make(map[string]int) for k, val := range src { if val != nil { dst[k] = *val } } return dst } // Int64 returns a pointer to the int64 value passed in. func Int64(v int64) *int64 { return &v } // Int64Value returns the value of the int64 pointer passed in or // 0 if the pointer is nil. func Int64Value(v *int64) int64 { if v != nil { return *v } return 0 } // Int64Slice converts a slice of int64 values into a slice of // int64 pointers func Int64Slice(src []int64) []*int64 { dst := make([]*int64, len(src)) for i := 0; i < len(src); i++ { dst[i] = &(src[i]) } return dst } // Int64ValueSlice converts a slice of int64 pointers into a slice of // int64 values func Int64ValueSlice(src []*int64) []int64 { dst := make([]int64, len(src)) for i := 0; i < len(src); i++ { if src[i] != nil { dst[i] = *(src[i]) } } return dst } // Int64Map converts a string map of int64 values into a string // map of int64 pointers func Int64Map(src map[string]int64) map[string]*int64 { dst := make(map[string]*int64) for k, val := range src { v := val dst[k] = &v } return dst } // Int64ValueMap converts a string map of int64 pointers into a string // map of int64 values func Int64ValueMap(src map[string]*int64) map[string]int64 { dst := make(map[string]int64) for k, val := range src { if val != nil { dst[k] = *val } } return dst } // Float64 returns a pointer to the float64 value passed in. func Float64(v float64) *float64 { return &v } // Float64Value returns the value of the float64 pointer passed in or // 0 if the pointer is nil. func Float64Value(v *float64) float64 { if v != nil { return *v } return 0 } // Float64Slice converts a slice of float64 values into a slice of // float64 pointers func Float64Slice(src []float64) []*float64 { dst := make([]*float64, len(src)) for i := 0; i < len(src); i++ { dst[i] = &(src[i]) } return dst } // Float64ValueSlice converts a slice of float64 pointers into a slice of // float64 values func Float64ValueSlice(src []*float64) []float64 { dst := make([]float64, len(src)) for i := 0; i < len(src); i++ { if src[i] != nil { dst[i] = *(src[i]) } } return dst } // Float64Map converts a string map of float64 values into a string // map of float64 pointers func Float64Map(src map[string]float64) map[string]*float64 { dst := make(map[string]*float64) for k, val := range src { v := val dst[k] = &v } return dst } // Float64ValueMap converts a string map of float64 pointers into a string // map of float64 values func Float64ValueMap(src map[string]*float64) map[string]float64 { dst := make(map[string]float64) for k, val := range src { if val != nil { dst[k] = *val } } return dst } // Time returns a pointer to the time.Time value passed in. func Time(v time.Time) *time.Time { return &v } // TimeValue returns the value of the time.Time pointer passed in or // time.Time{} if the pointer is nil. func TimeValue(v *time.Time) time.Time { if v != nil { return *v } return time.Time{} } // TimeUnixMilli returns a Unix timestamp in milliseconds from "January 1, 1970 UTC". // The result is undefined if the Unix time cannot be represented by an int64. // Which includes calling TimeUnixMilli on a zero Time is undefined. // // This utility is useful for service API's such as CloudWatch Logs which require // their unix time values to be in milliseconds. // // See Go stdlib https://golang.org/pkg/time/#Time.UnixNano for more information. func TimeUnixMilli(t time.Time) int64 { return t.UnixNano() / int64(time.Millisecond/time.Nanosecond) } // TimeSlice converts a slice of time.Time values into a slice of // time.Time pointers func TimeSlice(src []time.Time) []*time.Time { dst := make([]*time.Time, len(src)) for i := 0; i < len(src); i++ { dst[i] = &(src[i]) } return dst } // TimeValueSlice converts a slice of time.Time pointers into a slice of // time.Time values func TimeValueSlice(src []*time.Time) []time.Time { dst := make([]time.Time, len(src)) for i := 0; i < len(src); i++ { if src[i] != nil { dst[i] = *(src[i]) } } return dst } // TimeMap converts a string map of time.Time values into a string // map of time.Time pointers func TimeMap(src map[string]time.Time) map[string]*time.Time { dst := make(map[string]*time.Time) for k, val := range src { v := val dst[k] = &v } return dst } // TimeValueMap converts a string map of time.Time pointers into a string // map of time.Time values func TimeValueMap(src map[string]*time.Time) map[string]time.Time { dst := make(map[string]time.Time) for k, val := range src { if val != nil { dst[k] = *val } } return dst } aws-sdk-go-1.4.22/aws/convert_types_test.go000066400000000000000000000255631300374646400206620ustar00rootroot00000000000000package aws import ( "testing" "time" "github.com/stretchr/testify/assert" ) var testCasesStringSlice = [][]string{ {"a", "b", "c", "d", "e"}, {"a", "b", "", "", "e"}, } func TestStringSlice(t *testing.T) { for idx, in := range testCasesStringSlice { if in == nil { continue } out := StringSlice(in) assert.Len(t, out, len(in), "Unexpected len at idx %d", idx) for i := range out { assert.Equal(t, in[i], *(out[i]), "Unexpected value at idx %d", idx) } out2 := StringValueSlice(out) assert.Len(t, out2, len(in), "Unexpected len at idx %d", idx) assert.Equal(t, in, out2, "Unexpected value at idx %d", idx) } } var testCasesStringValueSlice = [][]*string{ {String("a"), String("b"), nil, String("c")}, } func TestStringValueSlice(t *testing.T) { for idx, in := range testCasesStringValueSlice { if in == nil { continue } out := StringValueSlice(in) assert.Len(t, out, len(in), "Unexpected len at idx %d", idx) for i := range out { if in[i] == nil { assert.Empty(t, out[i], "Unexpected value at idx %d", idx) } else { assert.Equal(t, *(in[i]), out[i], "Unexpected value at idx %d", idx) } } out2 := StringSlice(out) assert.Len(t, out2, len(in), "Unexpected len at idx %d", idx) for i := range out2 { if in[i] == nil { assert.Empty(t, *(out2[i]), "Unexpected value at idx %d", idx) } else { assert.Equal(t, in[i], out2[i], "Unexpected value at idx %d", idx) } } } } var testCasesStringMap = []map[string]string{ {"a": "1", "b": "2", "c": "3"}, } func TestStringMap(t *testing.T) { for idx, in := range testCasesStringMap { if in == nil { continue } out := StringMap(in) assert.Len(t, out, len(in), "Unexpected len at idx %d", idx) for i := range out { assert.Equal(t, in[i], *(out[i]), "Unexpected value at idx %d", idx) } out2 := StringValueMap(out) assert.Len(t, out2, len(in), "Unexpected len at idx %d", idx) assert.Equal(t, in, out2, "Unexpected value at idx %d", idx) } } var testCasesBoolSlice = [][]bool{ {true, true, false, false}, } func TestBoolSlice(t *testing.T) { for idx, in := range testCasesBoolSlice { if in == nil { continue } out := BoolSlice(in) assert.Len(t, out, len(in), "Unexpected len at idx %d", idx) for i := range out { assert.Equal(t, in[i], *(out[i]), "Unexpected value at idx %d", idx) } out2 := BoolValueSlice(out) assert.Len(t, out2, len(in), "Unexpected len at idx %d", idx) assert.Equal(t, in, out2, "Unexpected value at idx %d", idx) } } var testCasesBoolValueSlice = [][]*bool{} func TestBoolValueSlice(t *testing.T) { for idx, in := range testCasesBoolValueSlice { if in == nil { continue } out := BoolValueSlice(in) assert.Len(t, out, len(in), "Unexpected len at idx %d", idx) for i := range out { if in[i] == nil { assert.Empty(t, out[i], "Unexpected value at idx %d", idx) } else { assert.Equal(t, *(in[i]), out[i], "Unexpected value at idx %d", idx) } } out2 := BoolSlice(out) assert.Len(t, out2, len(in), "Unexpected len at idx %d", idx) for i := range out2 { if in[i] == nil { assert.Empty(t, *(out2[i]), "Unexpected value at idx %d", idx) } else { assert.Equal(t, in[i], out2[i], "Unexpected value at idx %d", idx) } } } } var testCasesBoolMap = []map[string]bool{ {"a": true, "b": false, "c": true}, } func TestBoolMap(t *testing.T) { for idx, in := range testCasesBoolMap { if in == nil { continue } out := BoolMap(in) assert.Len(t, out, len(in), "Unexpected len at idx %d", idx) for i := range out { assert.Equal(t, in[i], *(out[i]), "Unexpected value at idx %d", idx) } out2 := BoolValueMap(out) assert.Len(t, out2, len(in), "Unexpected len at idx %d", idx) assert.Equal(t, in, out2, "Unexpected value at idx %d", idx) } } var testCasesIntSlice = [][]int{ {1, 2, 3, 4}, } func TestIntSlice(t *testing.T) { for idx, in := range testCasesIntSlice { if in == nil { continue } out := IntSlice(in) assert.Len(t, out, len(in), "Unexpected len at idx %d", idx) for i := range out { assert.Equal(t, in[i], *(out[i]), "Unexpected value at idx %d", idx) } out2 := IntValueSlice(out) assert.Len(t, out2, len(in), "Unexpected len at idx %d", idx) assert.Equal(t, in, out2, "Unexpected value at idx %d", idx) } } var testCasesIntValueSlice = [][]*int{} func TestIntValueSlice(t *testing.T) { for idx, in := range testCasesIntValueSlice { if in == nil { continue } out := IntValueSlice(in) assert.Len(t, out, len(in), "Unexpected len at idx %d", idx) for i := range out { if in[i] == nil { assert.Empty(t, out[i], "Unexpected value at idx %d", idx) } else { assert.Equal(t, *(in[i]), out[i], "Unexpected value at idx %d", idx) } } out2 := IntSlice(out) assert.Len(t, out2, len(in), "Unexpected len at idx %d", idx) for i := range out2 { if in[i] == nil { assert.Empty(t, *(out2[i]), "Unexpected value at idx %d", idx) } else { assert.Equal(t, in[i], out2[i], "Unexpected value at idx %d", idx) } } } } var testCasesIntMap = []map[string]int{ {"a": 3, "b": 2, "c": 1}, } func TestIntMap(t *testing.T) { for idx, in := range testCasesIntMap { if in == nil { continue } out := IntMap(in) assert.Len(t, out, len(in), "Unexpected len at idx %d", idx) for i := range out { assert.Equal(t, in[i], *(out[i]), "Unexpected value at idx %d", idx) } out2 := IntValueMap(out) assert.Len(t, out2, len(in), "Unexpected len at idx %d", idx) assert.Equal(t, in, out2, "Unexpected value at idx %d", idx) } } var testCasesInt64Slice = [][]int64{ {1, 2, 3, 4}, } func TestInt64Slice(t *testing.T) { for idx, in := range testCasesInt64Slice { if in == nil { continue } out := Int64Slice(in) assert.Len(t, out, len(in), "Unexpected len at idx %d", idx) for i := range out { assert.Equal(t, in[i], *(out[i]), "Unexpected value at idx %d", idx) } out2 := Int64ValueSlice(out) assert.Len(t, out2, len(in), "Unexpected len at idx %d", idx) assert.Equal(t, in, out2, "Unexpected value at idx %d", idx) } } var testCasesInt64ValueSlice = [][]*int64{} func TestInt64ValueSlice(t *testing.T) { for idx, in := range testCasesInt64ValueSlice { if in == nil { continue } out := Int64ValueSlice(in) assert.Len(t, out, len(in), "Unexpected len at idx %d", idx) for i := range out { if in[i] == nil { assert.Empty(t, out[i], "Unexpected value at idx %d", idx) } else { assert.Equal(t, *(in[i]), out[i], "Unexpected value at idx %d", idx) } } out2 := Int64Slice(out) assert.Len(t, out2, len(in), "Unexpected len at idx %d", idx) for i := range out2 { if in[i] == nil { assert.Empty(t, *(out2[i]), "Unexpected value at idx %d", idx) } else { assert.Equal(t, in[i], out2[i], "Unexpected value at idx %d", idx) } } } } var testCasesInt64Map = []map[string]int64{ {"a": 3, "b": 2, "c": 1}, } func TestInt64Map(t *testing.T) { for idx, in := range testCasesInt64Map { if in == nil { continue } out := Int64Map(in) assert.Len(t, out, len(in), "Unexpected len at idx %d", idx) for i := range out { assert.Equal(t, in[i], *(out[i]), "Unexpected value at idx %d", idx) } out2 := Int64ValueMap(out) assert.Len(t, out2, len(in), "Unexpected len at idx %d", idx) assert.Equal(t, in, out2, "Unexpected value at idx %d", idx) } } var testCasesFloat64Slice = [][]float64{ {1, 2, 3, 4}, } func TestFloat64Slice(t *testing.T) { for idx, in := range testCasesFloat64Slice { if in == nil { continue } out := Float64Slice(in) assert.Len(t, out, len(in), "Unexpected len at idx %d", idx) for i := range out { assert.Equal(t, in[i], *(out[i]), "Unexpected value at idx %d", idx) } out2 := Float64ValueSlice(out) assert.Len(t, out2, len(in), "Unexpected len at idx %d", idx) assert.Equal(t, in, out2, "Unexpected value at idx %d", idx) } } var testCasesFloat64ValueSlice = [][]*float64{} func TestFloat64ValueSlice(t *testing.T) { for idx, in := range testCasesFloat64ValueSlice { if in == nil { continue } out := Float64ValueSlice(in) assert.Len(t, out, len(in), "Unexpected len at idx %d", idx) for i := range out { if in[i] == nil { assert.Empty(t, out[i], "Unexpected value at idx %d", idx) } else { assert.Equal(t, *(in[i]), out[i], "Unexpected value at idx %d", idx) } } out2 := Float64Slice(out) assert.Len(t, out2, len(in), "Unexpected len at idx %d", idx) for i := range out2 { if in[i] == nil { assert.Empty(t, *(out2[i]), "Unexpected value at idx %d", idx) } else { assert.Equal(t, in[i], out2[i], "Unexpected value at idx %d", idx) } } } } var testCasesFloat64Map = []map[string]float64{ {"a": 3, "b": 2, "c": 1}, } func TestFloat64Map(t *testing.T) { for idx, in := range testCasesFloat64Map { if in == nil { continue } out := Float64Map(in) assert.Len(t, out, len(in), "Unexpected len at idx %d", idx) for i := range out { assert.Equal(t, in[i], *(out[i]), "Unexpected value at idx %d", idx) } out2 := Float64ValueMap(out) assert.Len(t, out2, len(in), "Unexpected len at idx %d", idx) assert.Equal(t, in, out2, "Unexpected value at idx %d", idx) } } var testCasesTimeSlice = [][]time.Time{ {time.Now(), time.Now().AddDate(100, 0, 0)}, } func TestTimeSlice(t *testing.T) { for idx, in := range testCasesTimeSlice { if in == nil { continue } out := TimeSlice(in) assert.Len(t, out, len(in), "Unexpected len at idx %d", idx) for i := range out { assert.Equal(t, in[i], *(out[i]), "Unexpected value at idx %d", idx) } out2 := TimeValueSlice(out) assert.Len(t, out2, len(in), "Unexpected len at idx %d", idx) assert.Equal(t, in, out2, "Unexpected value at idx %d", idx) } } var testCasesTimeValueSlice = [][]*time.Time{} func TestTimeValueSlice(t *testing.T) { for idx, in := range testCasesTimeValueSlice { if in == nil { continue } out := TimeValueSlice(in) assert.Len(t, out, len(in), "Unexpected len at idx %d", idx) for i := range out { if in[i] == nil { assert.Empty(t, out[i], "Unexpected value at idx %d", idx) } else { assert.Equal(t, *(in[i]), out[i], "Unexpected value at idx %d", idx) } } out2 := TimeSlice(out) assert.Len(t, out2, len(in), "Unexpected len at idx %d", idx) for i := range out2 { if in[i] == nil { assert.Empty(t, *(out2[i]), "Unexpected value at idx %d", idx) } else { assert.Equal(t, in[i], out2[i], "Unexpected value at idx %d", idx) } } } } var testCasesTimeMap = []map[string]time.Time{ {"a": time.Now().AddDate(-100, 0, 0), "b": time.Now()}, } func TestTimeMap(t *testing.T) { for idx, in := range testCasesTimeMap { if in == nil { continue } out := TimeMap(in) assert.Len(t, out, len(in), "Unexpected len at idx %d", idx) for i := range out { assert.Equal(t, in[i], *(out[i]), "Unexpected value at idx %d", idx) } out2 := TimeValueMap(out) assert.Len(t, out2, len(in), "Unexpected len at idx %d", idx) assert.Equal(t, in, out2, "Unexpected value at idx %d", idx) } } aws-sdk-go-1.4.22/aws/corehandlers/000077500000000000000000000000001300374646400170265ustar00rootroot00000000000000aws-sdk-go-1.4.22/aws/corehandlers/handlers.go000066400000000000000000000140131300374646400211540ustar00rootroot00000000000000package corehandlers import ( "bytes" "fmt" "io" "io/ioutil" "net/http" "net/url" "regexp" "runtime" "strconv" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/aws/request" ) // Interface for matching types which also have a Len method. type lener interface { Len() int } // BuildContentLengthHandler builds the content length of a request based on the body, // or will use the HTTPRequest.Header's "Content-Length" if defined. If unable // to determine request body length and no "Content-Length" was specified it will panic. // // The Content-Length will only be aded to the request if the length of the body // is greater than 0. If the body is empty or the current `Content-Length` // header is <= 0, the header will also be stripped. var BuildContentLengthHandler = request.NamedHandler{Name: "core.BuildContentLengthHandler", Fn: func(r *request.Request) { var length int64 if slength := r.HTTPRequest.Header.Get("Content-Length"); slength != "" { length, _ = strconv.ParseInt(slength, 10, 64) } else { switch body := r.Body.(type) { case nil: length = 0 case lener: length = int64(body.Len()) case io.Seeker: r.BodyStart, _ = body.Seek(0, 1) end, _ := body.Seek(0, 2) body.Seek(r.BodyStart, 0) // make sure to seek back to original location length = end - r.BodyStart default: panic("Cannot get length of body, must provide `ContentLength`") } } if length > 0 { r.HTTPRequest.ContentLength = length r.HTTPRequest.Header.Set("Content-Length", fmt.Sprintf("%d", length)) } else { r.HTTPRequest.ContentLength = 0 r.HTTPRequest.Header.Del("Content-Length") } }} // SDKVersionUserAgentHandler is a request handler for adding the SDK Version to the user agent. var SDKVersionUserAgentHandler = request.NamedHandler{ Name: "core.SDKVersionUserAgentHandler", Fn: request.MakeAddToUserAgentHandler(aws.SDKName, aws.SDKVersion, runtime.Version(), runtime.GOOS, runtime.GOARCH), } var reStatusCode = regexp.MustCompile(`^(\d{3})`) // ValidateReqSigHandler is a request handler to ensure that the request's // signature doesn't expire before it is sent. This can happen when a request // is built and signed signficantly before it is sent. Or signficant delays // occur whne retrying requests that would cause the signature to expire. var ValidateReqSigHandler = request.NamedHandler{ Name: "core.ValidateReqSigHandler", Fn: func(r *request.Request) { // Unsigned requests are not signed if r.Config.Credentials == credentials.AnonymousCredentials { return } signedTime := r.Time if !r.LastSignedAt.IsZero() { signedTime = r.LastSignedAt } // 10 minutes to allow for some clock skew/delays in transmission. // Would be improved with aws/aws-sdk-go#423 if signedTime.Add(10 * time.Minute).After(time.Now()) { return } fmt.Println("request expired, resigning") r.Sign() }, } // SendHandler is a request handler to send service request using HTTP client. var SendHandler = request.NamedHandler{Name: "core.SendHandler", Fn: func(r *request.Request) { var err error r.HTTPResponse, err = r.Config.HTTPClient.Do(r.HTTPRequest) if err != nil { // Prevent leaking if an HTTPResponse was returned. Clean up // the body. if r.HTTPResponse != nil { r.HTTPResponse.Body.Close() } // Capture the case where url.Error is returned for error processing // response. e.g. 301 without location header comes back as string // error and r.HTTPResponse is nil. Other url redirect errors will // comeback in a similar method. if e, ok := err.(*url.Error); ok && e.Err != nil { if s := reStatusCode.FindStringSubmatch(e.Err.Error()); s != nil { code, _ := strconv.ParseInt(s[1], 10, 64) r.HTTPResponse = &http.Response{ StatusCode: int(code), Status: http.StatusText(int(code)), Body: ioutil.NopCloser(bytes.NewReader([]byte{})), } return } } if r.HTTPResponse == nil { // Add a dummy request response object to ensure the HTTPResponse // value is consistent. r.HTTPResponse = &http.Response{ StatusCode: int(0), Status: http.StatusText(int(0)), Body: ioutil.NopCloser(bytes.NewReader([]byte{})), } } // Catch all other request errors. r.Error = awserr.New("RequestError", "send request failed", err) r.Retryable = aws.Bool(true) // network errors are retryable } }} // ValidateResponseHandler is a request handler to validate service response. var ValidateResponseHandler = request.NamedHandler{Name: "core.ValidateResponseHandler", Fn: func(r *request.Request) { if r.HTTPResponse.StatusCode == 0 || r.HTTPResponse.StatusCode >= 300 { // this may be replaced by an UnmarshalError handler r.Error = awserr.New("UnknownError", "unknown error", nil) } }} // AfterRetryHandler performs final checks to determine if the request should // be retried and how long to delay. var AfterRetryHandler = request.NamedHandler{Name: "core.AfterRetryHandler", Fn: func(r *request.Request) { // If one of the other handlers already set the retry state // we don't want to override it based on the service's state if r.Retryable == nil { r.Retryable = aws.Bool(r.ShouldRetry(r)) } if r.WillRetry() { r.RetryDelay = r.RetryRules(r) r.Config.SleepDelay(r.RetryDelay) // when the expired token exception occurs the credentials // need to be expired locally so that the next request to // get credentials will trigger a credentials refresh. if r.IsErrorExpired() { r.Config.Credentials.Expire() } r.RetryCount++ r.Error = nil } }} // ValidateEndpointHandler is a request handler to validate a request had the // appropriate Region and Endpoint set. Will set r.Error if the endpoint or // region is not valid. var ValidateEndpointHandler = request.NamedHandler{Name: "core.ValidateEndpointHandler", Fn: func(r *request.Request) { if r.ClientInfo.SigningRegion == "" && aws.StringValue(r.Config.Region) == "" { r.Error = aws.ErrMissingRegion } else if r.ClientInfo.Endpoint == "" { r.Error = aws.ErrMissingEndpoint } }} aws-sdk-go-1.4.22/aws/corehandlers/handlers_test.go000066400000000000000000000137221300374646400222210ustar00rootroot00000000000000package corehandlers_test import ( "bytes" "fmt" "io/ioutil" "net/http" "net/http/httptest" "os" "testing" "time" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/corehandlers" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/s3" ) func TestValidateEndpointHandler(t *testing.T) { os.Clearenv() svc := awstesting.NewClient(aws.NewConfig().WithRegion("us-west-2")) svc.Handlers.Clear() svc.Handlers.Validate.PushBackNamed(corehandlers.ValidateEndpointHandler) req := svc.NewRequest(&request.Operation{Name: "Operation"}, nil, nil) err := req.Build() assert.NoError(t, err) } func TestValidateEndpointHandlerErrorRegion(t *testing.T) { os.Clearenv() svc := awstesting.NewClient() svc.Handlers.Clear() svc.Handlers.Validate.PushBackNamed(corehandlers.ValidateEndpointHandler) req := svc.NewRequest(&request.Operation{Name: "Operation"}, nil, nil) err := req.Build() assert.Error(t, err) assert.Equal(t, aws.ErrMissingRegion, err) } type mockCredsProvider struct { expired bool retrieveCalled bool } func (m *mockCredsProvider) Retrieve() (credentials.Value, error) { m.retrieveCalled = true return credentials.Value{ProviderName: "mockCredsProvider"}, nil } func (m *mockCredsProvider) IsExpired() bool { return m.expired } func TestAfterRetryRefreshCreds(t *testing.T) { os.Clearenv() credProvider := &mockCredsProvider{} svc := awstesting.NewClient(&aws.Config{ Credentials: credentials.NewCredentials(credProvider), MaxRetries: aws.Int(1), }) svc.Handlers.Clear() svc.Handlers.ValidateResponse.PushBack(func(r *request.Request) { r.Error = awserr.New("UnknownError", "", nil) r.HTTPResponse = &http.Response{StatusCode: 400, Body: ioutil.NopCloser(bytes.NewBuffer([]byte{}))} }) svc.Handlers.UnmarshalError.PushBack(func(r *request.Request) { r.Error = awserr.New("ExpiredTokenException", "", nil) }) svc.Handlers.AfterRetry.PushBackNamed(corehandlers.AfterRetryHandler) assert.True(t, svc.Config.Credentials.IsExpired(), "Expect to start out expired") assert.False(t, credProvider.retrieveCalled) req := svc.NewRequest(&request.Operation{Name: "Operation"}, nil, nil) req.Send() assert.True(t, svc.Config.Credentials.IsExpired()) assert.False(t, credProvider.retrieveCalled) _, err := svc.Config.Credentials.Get() assert.NoError(t, err) assert.True(t, credProvider.retrieveCalled) } type testSendHandlerTransport struct{} func (t *testSendHandlerTransport) RoundTrip(r *http.Request) (*http.Response, error) { return nil, fmt.Errorf("mock error") } func TestSendHandlerError(t *testing.T) { svc := awstesting.NewClient(&aws.Config{ HTTPClient: &http.Client{ Transport: &testSendHandlerTransport{}, }, }) svc.Handlers.Clear() svc.Handlers.Send.PushBackNamed(corehandlers.SendHandler) r := svc.NewRequest(&request.Operation{Name: "Operation"}, nil, nil) r.Send() assert.Error(t, r.Error) assert.NotNil(t, r.HTTPResponse) } func TestValidateReqSigHandler(t *testing.T) { cases := []struct { Req *request.Request Resign bool }{ { Req: &request.Request{ Config: aws.Config{Credentials: credentials.AnonymousCredentials}, Time: time.Now().Add(-15 * time.Minute), }, Resign: false, }, { Req: &request.Request{ Time: time.Now().Add(-15 * time.Minute), }, Resign: true, }, { Req: &request.Request{ Time: time.Now().Add(-1 * time.Minute), }, Resign: false, }, } for i, c := range cases { resigned := false c.Req.Handlers.Sign.PushBack(func(r *request.Request) { resigned = true }) corehandlers.ValidateReqSigHandler.Fn(c.Req) assert.NoError(t, c.Req.Error, "%d, expect no error", i) assert.Equal(t, c.Resign, resigned, "%d, expected resigning to match", i) } } func setupContentLengthTestServer(t *testing.T, hasContentLength bool, contentLength int64) *httptest.Server { server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { _, ok := r.Header["Content-Length"] assert.Equal(t, hasContentLength, ok, "expect content length to be set, %t", hasContentLength) assert.Equal(t, contentLength, r.ContentLength) b, err := ioutil.ReadAll(r.Body) assert.NoError(t, err) r.Body.Close() authHeader := r.Header.Get("Authorization") if hasContentLength { assert.Contains(t, authHeader, "content-length") } else { assert.NotContains(t, authHeader, "content-length") } assert.Equal(t, contentLength, int64(len(b))) })) return server } func TestBuildContentLength_ZeroBody(t *testing.T) { server := setupContentLengthTestServer(t, false, 0) svc := s3.New(unit.Session, &aws.Config{ Endpoint: aws.String(server.URL), S3ForcePathStyle: aws.Bool(true), DisableSSL: aws.Bool(true), }) _, err := svc.GetObject(&s3.GetObjectInput{ Bucket: aws.String("bucketname"), Key: aws.String("keyname"), }) assert.NoError(t, err) } func TestBuildContentLength_NegativeBody(t *testing.T) { server := setupContentLengthTestServer(t, false, 0) svc := s3.New(unit.Session, &aws.Config{ Endpoint: aws.String(server.URL), S3ForcePathStyle: aws.Bool(true), DisableSSL: aws.Bool(true), }) req, _ := svc.GetObjectRequest(&s3.GetObjectInput{ Bucket: aws.String("bucketname"), Key: aws.String("keyname"), }) req.HTTPRequest.Header.Set("Content-Length", "-1") assert.NoError(t, req.Send()) } func TestBuildContentLength_WithBody(t *testing.T) { server := setupContentLengthTestServer(t, true, 1024) svc := s3.New(unit.Session, &aws.Config{ Endpoint: aws.String(server.URL), S3ForcePathStyle: aws.Bool(true), DisableSSL: aws.Bool(true), }) _, err := svc.PutObject(&s3.PutObjectInput{ Bucket: aws.String("bucketname"), Key: aws.String("keyname"), Body: bytes.NewReader(make([]byte, 1024)), }) assert.NoError(t, err) } aws-sdk-go-1.4.22/aws/corehandlers/param_validator.go000066400000000000000000000010001300374646400225110ustar00rootroot00000000000000package corehandlers import "github.com/aws/aws-sdk-go/aws/request" // ValidateParametersHandler is a request handler to validate the input parameters. // Validating parameters only has meaning if done prior to the request being sent. var ValidateParametersHandler = request.NamedHandler{Name: "core.ValidateParametersHandler", Fn: func(r *request.Request) { if !r.ParamsFilled() { return } if v, ok := r.Params.(request.Validator); ok { if err := v.Validate(); err != nil { r.Error = err } } }} aws-sdk-go-1.4.22/aws/corehandlers/param_validator_test.go000066400000000000000000000173211300374646400235650ustar00rootroot00000000000000package corehandlers_test import ( "fmt" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/corehandlers" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/kinesis" "github.com/stretchr/testify/require" ) var testSvc = func() *client.Client { s := &client.Client{ Config: aws.Config{}, ClientInfo: metadata.ClientInfo{ ServiceName: "mock-service", APIVersion: "2015-01-01", }, } return s }() type StructShape struct { _ struct{} `type:"structure"` RequiredList []*ConditionalStructShape `required:"true"` RequiredMap map[string]*ConditionalStructShape `required:"true"` RequiredBool *bool `required:"true"` OptionalStruct *ConditionalStructShape hiddenParameter *string } func (s *StructShape) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StructShape"} if s.RequiredList == nil { invalidParams.Add(request.NewErrParamRequired("RequiredList")) } if s.RequiredMap == nil { invalidParams.Add(request.NewErrParamRequired("RequiredMap")) } if s.RequiredBool == nil { invalidParams.Add(request.NewErrParamRequired("RequiredBool")) } if s.RequiredList != nil { for i, v := range s.RequiredList { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RequiredList", i), err.(request.ErrInvalidParams)) } } } if s.RequiredMap != nil { for i, v := range s.RequiredMap { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RequiredMap", i), err.(request.ErrInvalidParams)) } } } if s.OptionalStruct != nil { if err := s.OptionalStruct.Validate(); err != nil { invalidParams.AddNested("OptionalStruct", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ConditionalStructShape struct { _ struct{} `type:"structure"` Name *string `required:"true"` } func (s *ConditionalStructShape) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ConditionalStructShape"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } func TestNoErrors(t *testing.T) { input := &StructShape{ RequiredList: []*ConditionalStructShape{}, RequiredMap: map[string]*ConditionalStructShape{ "key1": {Name: aws.String("Name")}, "key2": {Name: aws.String("Name")}, }, RequiredBool: aws.Bool(true), OptionalStruct: &ConditionalStructShape{Name: aws.String("Name")}, } req := testSvc.NewRequest(&request.Operation{}, input, nil) corehandlers.ValidateParametersHandler.Fn(req) require.NoError(t, req.Error) } func TestMissingRequiredParameters(t *testing.T) { input := &StructShape{} req := testSvc.NewRequest(&request.Operation{}, input, nil) corehandlers.ValidateParametersHandler.Fn(req) require.Error(t, req.Error) assert.Equal(t, "InvalidParameter", req.Error.(awserr.Error).Code()) assert.Equal(t, "3 validation error(s) found.", req.Error.(awserr.Error).Message()) errs := req.Error.(awserr.BatchedErrors).OrigErrs() assert.Len(t, errs, 3) assert.Equal(t, "ParamRequiredError: missing required field, StructShape.RequiredList.", errs[0].Error()) assert.Equal(t, "ParamRequiredError: missing required field, StructShape.RequiredMap.", errs[1].Error()) assert.Equal(t, "ParamRequiredError: missing required field, StructShape.RequiredBool.", errs[2].Error()) assert.Equal(t, "InvalidParameter: 3 validation error(s) found.\n- missing required field, StructShape.RequiredList.\n- missing required field, StructShape.RequiredMap.\n- missing required field, StructShape.RequiredBool.\n", req.Error.Error()) } func TestNestedMissingRequiredParameters(t *testing.T) { input := &StructShape{ RequiredList: []*ConditionalStructShape{{}}, RequiredMap: map[string]*ConditionalStructShape{ "key1": {Name: aws.String("Name")}, "key2": {}, }, RequiredBool: aws.Bool(true), OptionalStruct: &ConditionalStructShape{}, } req := testSvc.NewRequest(&request.Operation{}, input, nil) corehandlers.ValidateParametersHandler.Fn(req) require.Error(t, req.Error) assert.Equal(t, "InvalidParameter", req.Error.(awserr.Error).Code()) assert.Equal(t, "3 validation error(s) found.", req.Error.(awserr.Error).Message()) errs := req.Error.(awserr.BatchedErrors).OrigErrs() assert.Len(t, errs, 3) assert.Equal(t, "ParamRequiredError: missing required field, StructShape.RequiredList[0].Name.", errs[0].Error()) assert.Equal(t, "ParamRequiredError: missing required field, StructShape.RequiredMap[key2].Name.", errs[1].Error()) assert.Equal(t, "ParamRequiredError: missing required field, StructShape.OptionalStruct.Name.", errs[2].Error()) } type testInput struct { StringField *string `min:"5"` ListField []string `min:"3"` MapField map[string]string `min:"4"` } func (s testInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "testInput"} if s.StringField != nil && len(*s.StringField) < 5 { invalidParams.Add(request.NewErrParamMinLen("StringField", 5)) } if s.ListField != nil && len(s.ListField) < 3 { invalidParams.Add(request.NewErrParamMinLen("ListField", 3)) } if s.MapField != nil && len(s.MapField) < 4 { invalidParams.Add(request.NewErrParamMinLen("MapField", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } var testsFieldMin = []struct { err awserr.Error in testInput }{ { err: func() awserr.Error { invalidParams := request.ErrInvalidParams{Context: "testInput"} invalidParams.Add(request.NewErrParamMinLen("StringField", 5)) return invalidParams }(), in: testInput{StringField: aws.String("abcd")}, }, { err: func() awserr.Error { invalidParams := request.ErrInvalidParams{Context: "testInput"} invalidParams.Add(request.NewErrParamMinLen("StringField", 5)) invalidParams.Add(request.NewErrParamMinLen("ListField", 3)) return invalidParams }(), in: testInput{StringField: aws.String("abcd"), ListField: []string{"a", "b"}}, }, { err: func() awserr.Error { invalidParams := request.ErrInvalidParams{Context: "testInput"} invalidParams.Add(request.NewErrParamMinLen("StringField", 5)) invalidParams.Add(request.NewErrParamMinLen("ListField", 3)) invalidParams.Add(request.NewErrParamMinLen("MapField", 4)) return invalidParams }(), in: testInput{StringField: aws.String("abcd"), ListField: []string{"a", "b"}, MapField: map[string]string{"a": "a", "b": "b"}}, }, { err: nil, in: testInput{StringField: aws.String("abcde"), ListField: []string{"a", "b", "c"}, MapField: map[string]string{"a": "a", "b": "b", "c": "c", "d": "d"}}, }, } func TestValidateFieldMinParameter(t *testing.T) { for i, c := range testsFieldMin { req := testSvc.NewRequest(&request.Operation{}, &c.in, nil) corehandlers.ValidateParametersHandler.Fn(req) assert.Equal(t, c.err, req.Error, "%d case failed", i) } } func BenchmarkValidateAny(b *testing.B) { input := &kinesis.PutRecordsInput{ StreamName: aws.String("stream"), } for i := 0; i < 100; i++ { record := &kinesis.PutRecordsRequestEntry{ Data: make([]byte, 10000), PartitionKey: aws.String("partition"), } input.Records = append(input.Records, record) } req, _ := kinesis.New(unit.Session).PutRecordsRequest(input) b.ResetTimer() for i := 0; i < b.N; i++ { corehandlers.ValidateParametersHandler.Fn(req) if err := req.Error; err != nil { b.Fatalf("validation failed: %v", err) } } } aws-sdk-go-1.4.22/aws/credentials/000077500000000000000000000000001300374646400166525ustar00rootroot00000000000000aws-sdk-go-1.4.22/aws/credentials/chain_provider.go000066400000000000000000000061531300374646400222020ustar00rootroot00000000000000package credentials import ( "github.com/aws/aws-sdk-go/aws/awserr" ) var ( // ErrNoValidProvidersFoundInChain Is returned when there are no valid // providers in the ChainProvider. // // This has been deprecated. For verbose error messaging set // aws.Config.CredentialsChainVerboseErrors to true // // @readonly ErrNoValidProvidersFoundInChain = awserr.New("NoCredentialProviders", `no valid providers in chain. Deprecated. For verbose messaging see aws.Config.CredentialsChainVerboseErrors`, nil) ) // A ChainProvider will search for a provider which returns credentials // and cache that provider until Retrieve is called again. // // The ChainProvider provides a way of chaining multiple providers together // which will pick the first available using priority order of the Providers // in the list. // // If none of the Providers retrieve valid credentials Value, ChainProvider's // Retrieve() will return the error ErrNoValidProvidersFoundInChain. // // If a Provider is found which returns valid credentials Value ChainProvider // will cache that Provider for all calls to IsExpired(), until Retrieve is // called again. // // Example of ChainProvider to be used with an EnvProvider and EC2RoleProvider. // In this example EnvProvider will first check if any credentials are available // via the environment variables. If there are none ChainProvider will check // the next Provider in the list, EC2RoleProvider in this case. If EC2RoleProvider // does not return any credentials ChainProvider will return the error // ErrNoValidProvidersFoundInChain // // creds := NewChainCredentials( // []Provider{ // &EnvProvider{}, // &EC2RoleProvider{ // Client: ec2metadata.New(sess), // }, // }) // // // Usage of ChainCredentials with aws.Config // svc := ec2.New(&aws.Config{Credentials: creds}) // type ChainProvider struct { Providers []Provider curr Provider VerboseErrors bool } // NewChainCredentials returns a pointer to a new Credentials object // wrapping a chain of providers. func NewChainCredentials(providers []Provider) *Credentials { return NewCredentials(&ChainProvider{ Providers: append([]Provider{}, providers...), }) } // Retrieve returns the credentials value or error if no provider returned // without error. // // If a provider is found it will be cached and any calls to IsExpired() // will return the expired state of the cached provider. func (c *ChainProvider) Retrieve() (Value, error) { var errs []error for _, p := range c.Providers { creds, err := p.Retrieve() if err == nil { c.curr = p return creds, nil } errs = append(errs, err) } c.curr = nil var err error err = ErrNoValidProvidersFoundInChain if c.VerboseErrors { err = awserr.NewBatchError("NoCredentialProviders", "no valid providers in chain", errs) } return Value{}, err } // IsExpired will returned the expired state of the currently cached provider // if there is one. If there is no current provider, true will be returned. func (c *ChainProvider) IsExpired() bool { if c.curr != nil { return c.curr.IsExpired() } return true } aws-sdk-go-1.4.22/aws/credentials/chain_provider_test.go000066400000000000000000000077511300374646400232460ustar00rootroot00000000000000package credentials import ( "testing" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/stretchr/testify/assert" ) type secondStubProvider struct { creds Value expired bool err error } func (s *secondStubProvider) Retrieve() (Value, error) { s.expired = false s.creds.ProviderName = "secondStubProvider" return s.creds, s.err } func (s *secondStubProvider) IsExpired() bool { return s.expired } func TestChainProviderWithNames(t *testing.T) { p := &ChainProvider{ Providers: []Provider{ &stubProvider{err: awserr.New("FirstError", "first provider error", nil)}, &stubProvider{err: awserr.New("SecondError", "second provider error", nil)}, &secondStubProvider{ creds: Value{ AccessKeyID: "AKIF", SecretAccessKey: "NOSECRET", SessionToken: "", }, }, &stubProvider{ creds: Value{ AccessKeyID: "AKID", SecretAccessKey: "SECRET", SessionToken: "", }, }, }, } creds, err := p.Retrieve() assert.Nil(t, err, "Expect no error") assert.Equal(t, "secondStubProvider", creds.ProviderName, "Expect provider name to match") // Also check credentials assert.Equal(t, "AKIF", creds.AccessKeyID, "Expect access key ID to match") assert.Equal(t, "NOSECRET", creds.SecretAccessKey, "Expect secret access key to match") assert.Empty(t, creds.SessionToken, "Expect session token to be empty") } func TestChainProviderGet(t *testing.T) { p := &ChainProvider{ Providers: []Provider{ &stubProvider{err: awserr.New("FirstError", "first provider error", nil)}, &stubProvider{err: awserr.New("SecondError", "second provider error", nil)}, &stubProvider{ creds: Value{ AccessKeyID: "AKID", SecretAccessKey: "SECRET", SessionToken: "", }, }, }, } creds, err := p.Retrieve() assert.Nil(t, err, "Expect no error") assert.Equal(t, "AKID", creds.AccessKeyID, "Expect access key ID to match") assert.Equal(t, "SECRET", creds.SecretAccessKey, "Expect secret access key to match") assert.Empty(t, creds.SessionToken, "Expect session token to be empty") } func TestChainProviderIsExpired(t *testing.T) { stubProvider := &stubProvider{expired: true} p := &ChainProvider{ Providers: []Provider{ stubProvider, }, } assert.True(t, p.IsExpired(), "Expect expired to be true before any Retrieve") _, err := p.Retrieve() assert.Nil(t, err, "Expect no error") assert.False(t, p.IsExpired(), "Expect not expired after retrieve") stubProvider.expired = true assert.True(t, p.IsExpired(), "Expect return of expired provider") _, err = p.Retrieve() assert.False(t, p.IsExpired(), "Expect not expired after retrieve") } func TestChainProviderWithNoProvider(t *testing.T) { p := &ChainProvider{ Providers: []Provider{}, } assert.True(t, p.IsExpired(), "Expect expired with no providers") _, err := p.Retrieve() assert.Equal(t, ErrNoValidProvidersFoundInChain, err, "Expect no providers error returned") } func TestChainProviderWithNoValidProvider(t *testing.T) { errs := []error{ awserr.New("FirstError", "first provider error", nil), awserr.New("SecondError", "second provider error", nil), } p := &ChainProvider{ Providers: []Provider{ &stubProvider{err: errs[0]}, &stubProvider{err: errs[1]}, }, } assert.True(t, p.IsExpired(), "Expect expired with no providers") _, err := p.Retrieve() assert.Equal(t, ErrNoValidProvidersFoundInChain, err, "Expect no providers error returned") } func TestChainProviderWithNoValidProviderWithVerboseEnabled(t *testing.T) { errs := []error{ awserr.New("FirstError", "first provider error", nil), awserr.New("SecondError", "second provider error", nil), } p := &ChainProvider{ VerboseErrors: true, Providers: []Provider{ &stubProvider{err: errs[0]}, &stubProvider{err: errs[1]}, }, } assert.True(t, p.IsExpired(), "Expect expired with no providers") _, err := p.Retrieve() assert.Equal(t, awserr.NewBatchError("NoCredentialProviders", "no valid providers in chain", errs), err, "Expect no providers error returned") } aws-sdk-go-1.4.22/aws/credentials/credentials.go000066400000000000000000000155641300374646400215110ustar00rootroot00000000000000// Package credentials provides credential retrieval and management // // The Credentials is the primary method of getting access to and managing // credentials Values. Using dependency injection retrieval of the credential // values is handled by a object which satisfies the Provider interface. // // By default the Credentials.Get() will cache the successful result of a // Provider's Retrieve() until Provider.IsExpired() returns true. At which // point Credentials will call Provider's Retrieve() to get new credential Value. // // The Provider is responsible for determining when credentials Value have expired. // It is also important to note that Credentials will always call Retrieve the // first time Credentials.Get() is called. // // Example of using the environment variable credentials. // // creds := NewEnvCredentials() // // // Retrieve the credentials value // credValue, err := creds.Get() // if err != nil { // // handle error // } // // Example of forcing credentials to expire and be refreshed on the next Get(). // This may be helpful to proactively expire credentials and refresh them sooner // than they would naturally expire on their own. // // creds := NewCredentials(&EC2RoleProvider{}) // creds.Expire() // credsValue, err := creds.Get() // // New credentials will be retrieved instead of from cache. // // // Custom Provider // // Each Provider built into this package also provides a helper method to generate // a Credentials pointer setup with the provider. To use a custom Provider just // create a type which satisfies the Provider interface and pass it to the // NewCredentials method. // // type MyProvider struct{} // func (m *MyProvider) Retrieve() (Value, error) {...} // func (m *MyProvider) IsExpired() bool {...} // // creds := NewCredentials(&MyProvider{}) // credValue, err := creds.Get() // package credentials import ( "sync" "time" ) // AnonymousCredentials is an empty Credential object that can be used as // dummy placeholder credentials for requests that do not need signed. // // This Credentials can be used to configure a service to not sign requests // when making service API calls. For example, when accessing public // s3 buckets. // // svc := s3.New(&aws.Config{Credentials: AnonymousCredentials}) // // Access public S3 buckets. // // @readonly var AnonymousCredentials = NewStaticCredentials("", "", "") // A Value is the AWS credentials value for individual credential fields. type Value struct { // AWS Access key ID AccessKeyID string // AWS Secret Access Key SecretAccessKey string // AWS Session Token SessionToken string // Provider used to get credentials ProviderName string } // A Provider is the interface for any component which will provide credentials // Value. A provider is required to manage its own Expired state, and what to // be expired means. // // The Provider should not need to implement its own mutexes, because // that will be managed by Credentials. type Provider interface { // Refresh returns nil if it successfully retrieved the value. // Error is returned if the value were not obtainable, or empty. Retrieve() (Value, error) // IsExpired returns if the credentials are no longer valid, and need // to be retrieved. IsExpired() bool } // A Expiry provides shared expiration logic to be used by credentials // providers to implement expiry functionality. // // The best method to use this struct is as an anonymous field within the // provider's struct. // // Example: // type EC2RoleProvider struct { // Expiry // ... // } type Expiry struct { // The date/time when to expire on expiration time.Time // If set will be used by IsExpired to determine the current time. // Defaults to time.Now if CurrentTime is not set. Available for testing // to be able to mock out the current time. CurrentTime func() time.Time } // SetExpiration sets the expiration IsExpired will check when called. // // If window is greater than 0 the expiration time will be reduced by the // window value. // // Using a window is helpful to trigger credentials to expire sooner than // the expiration time given to ensure no requests are made with expired // tokens. func (e *Expiry) SetExpiration(expiration time.Time, window time.Duration) { e.expiration = expiration if window > 0 { e.expiration = e.expiration.Add(-window) } } // IsExpired returns if the credentials are expired. func (e *Expiry) IsExpired() bool { if e.CurrentTime == nil { e.CurrentTime = time.Now } return e.expiration.Before(e.CurrentTime()) } // A Credentials provides synchronous safe retrieval of AWS credentials Value. // Credentials will cache the credentials value until they expire. Once the value // expires the next Get will attempt to retrieve valid credentials. // // Credentials is safe to use across multiple goroutines and will manage the // synchronous state so the Providers do not need to implement their own // synchronization. // // The first Credentials.Get() will always call Provider.Retrieve() to get the // first instance of the credentials Value. All calls to Get() after that // will return the cached credentials Value until IsExpired() returns true. type Credentials struct { creds Value forceRefresh bool m sync.Mutex provider Provider } // NewCredentials returns a pointer to a new Credentials with the provider set. func NewCredentials(provider Provider) *Credentials { return &Credentials{ provider: provider, forceRefresh: true, } } // Get returns the credentials value, or error if the credentials Value failed // to be retrieved. // // Will return the cached credentials Value if it has not expired. If the // credentials Value has expired the Provider's Retrieve() will be called // to refresh the credentials. // // If Credentials.Expire() was called the credentials Value will be force // expired, and the next call to Get() will cause them to be refreshed. func (c *Credentials) Get() (Value, error) { c.m.Lock() defer c.m.Unlock() if c.isExpired() { creds, err := c.provider.Retrieve() if err != nil { return Value{}, err } c.creds = creds c.forceRefresh = false } return c.creds, nil } // Expire expires the credentials and forces them to be retrieved on the // next call to Get(). // // This will override the Provider's expired state, and force Credentials // to call the Provider's Retrieve(). func (c *Credentials) Expire() { c.m.Lock() defer c.m.Unlock() c.forceRefresh = true } // IsExpired returns if the credentials are no longer valid, and need // to be retrieved. // // If the Credentials were forced to be expired with Expire() this will // reflect that override. func (c *Credentials) IsExpired() bool { c.m.Lock() defer c.m.Unlock() return c.isExpired() } // isExpired helper method wrapping the definition of expired credentials. func (c *Credentials) isExpired() bool { return c.forceRefresh || c.provider.IsExpired() } aws-sdk-go-1.4.22/aws/credentials/credentials_test.go000066400000000000000000000034571300374646400225460ustar00rootroot00000000000000package credentials import ( "testing" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/stretchr/testify/assert" ) type stubProvider struct { creds Value expired bool err error } func (s *stubProvider) Retrieve() (Value, error) { s.expired = false s.creds.ProviderName = "stubProvider" return s.creds, s.err } func (s *stubProvider) IsExpired() bool { return s.expired } func TestCredentialsGet(t *testing.T) { c := NewCredentials(&stubProvider{ creds: Value{ AccessKeyID: "AKID", SecretAccessKey: "SECRET", SessionToken: "", }, expired: true, }) creds, err := c.Get() assert.Nil(t, err, "Expected no error") assert.Equal(t, "AKID", creds.AccessKeyID, "Expect access key ID to match") assert.Equal(t, "SECRET", creds.SecretAccessKey, "Expect secret access key to match") assert.Empty(t, creds.SessionToken, "Expect session token to be empty") } func TestCredentialsGetWithError(t *testing.T) { c := NewCredentials(&stubProvider{err: awserr.New("provider error", "", nil), expired: true}) _, err := c.Get() assert.Equal(t, "provider error", err.(awserr.Error).Code(), "Expected provider error") } func TestCredentialsExpire(t *testing.T) { stub := &stubProvider{} c := NewCredentials(stub) stub.expired = false assert.True(t, c.IsExpired(), "Expected to start out expired") c.Expire() assert.True(t, c.IsExpired(), "Expected to be expired") c.forceRefresh = false assert.False(t, c.IsExpired(), "Expected not to be expired") stub.expired = true assert.True(t, c.IsExpired(), "Expected to be expired") } func TestCredentialsGetWithProviderName(t *testing.T) { stub := &stubProvider{} c := NewCredentials(stub) creds, err := c.Get() assert.Nil(t, err, "Expected no error") assert.Equal(t, creds.ProviderName, "stubProvider", "Expected provider name to match") } aws-sdk-go-1.4.22/aws/credentials/ec2rolecreds/000077500000000000000000000000001300374646400212265ustar00rootroot00000000000000aws-sdk-go-1.4.22/aws/credentials/ec2rolecreds/ec2_role_provider.go000066400000000000000000000130121300374646400251560ustar00rootroot00000000000000package ec2rolecreds import ( "bufio" "encoding/json" "fmt" "path" "strings" "time" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/aws/ec2metadata" ) // ProviderName provides a name of EC2Role provider const ProviderName = "EC2RoleProvider" // A EC2RoleProvider retrieves credentials from the EC2 service, and keeps track if // those credentials are expired. // // Example how to configure the EC2RoleProvider with custom http Client, Endpoint // or ExpiryWindow // // p := &ec2rolecreds.EC2RoleProvider{ // // Pass in a custom timeout to be used when requesting // // IAM EC2 Role credentials. // Client: ec2metadata.New(sess, aws.Config{ // HTTPClient: &http.Client{Timeout: 10 * time.Second}, // }), // // // Do not use early expiry of credentials. If a non zero value is // // specified the credentials will be expired early // ExpiryWindow: 0, // } type EC2RoleProvider struct { credentials.Expiry // Required EC2Metadata client to use when connecting to EC2 metadata service. Client *ec2metadata.EC2Metadata // ExpiryWindow will allow the credentials to trigger refreshing prior to // the credentials actually expiring. This is beneficial so race conditions // with expiring credentials do not cause request to fail unexpectedly // due to ExpiredTokenException exceptions. // // So a ExpiryWindow of 10s would cause calls to IsExpired() to return true // 10 seconds before the credentials are actually expired. // // If ExpiryWindow is 0 or less it will be ignored. ExpiryWindow time.Duration } // NewCredentials returns a pointer to a new Credentials object wrapping // the EC2RoleProvider. Takes a ConfigProvider to create a EC2Metadata client. // The ConfigProvider is satisfied by the session.Session type. func NewCredentials(c client.ConfigProvider, options ...func(*EC2RoleProvider)) *credentials.Credentials { p := &EC2RoleProvider{ Client: ec2metadata.New(c), } for _, option := range options { option(p) } return credentials.NewCredentials(p) } // NewCredentialsWithClient returns a pointer to a new Credentials object wrapping // the EC2RoleProvider. Takes a EC2Metadata client to use when connecting to EC2 // metadata service. func NewCredentialsWithClient(client *ec2metadata.EC2Metadata, options ...func(*EC2RoleProvider)) *credentials.Credentials { p := &EC2RoleProvider{ Client: client, } for _, option := range options { option(p) } return credentials.NewCredentials(p) } // Retrieve retrieves credentials from the EC2 service. // Error will be returned if the request fails, or unable to extract // the desired credentials. func (m *EC2RoleProvider) Retrieve() (credentials.Value, error) { credsList, err := requestCredList(m.Client) if err != nil { return credentials.Value{ProviderName: ProviderName}, err } if len(credsList) == 0 { return credentials.Value{ProviderName: ProviderName}, awserr.New("EmptyEC2RoleList", "empty EC2 Role list", nil) } credsName := credsList[0] roleCreds, err := requestCred(m.Client, credsName) if err != nil { return credentials.Value{ProviderName: ProviderName}, err } m.SetExpiration(roleCreds.Expiration, m.ExpiryWindow) return credentials.Value{ AccessKeyID: roleCreds.AccessKeyID, SecretAccessKey: roleCreds.SecretAccessKey, SessionToken: roleCreds.Token, ProviderName: ProviderName, }, nil } // A ec2RoleCredRespBody provides the shape for unmarshalling credential // request responses. type ec2RoleCredRespBody struct { // Success State Expiration time.Time AccessKeyID string SecretAccessKey string Token string // Error state Code string Message string } const iamSecurityCredsPath = "/iam/security-credentials" // requestCredList requests a list of credentials from the EC2 service. // If there are no credentials, or there is an error making or receiving the request func requestCredList(client *ec2metadata.EC2Metadata) ([]string, error) { resp, err := client.GetMetadata(iamSecurityCredsPath) if err != nil { return nil, awserr.New("EC2RoleRequestError", "no EC2 instance role found", err) } credsList := []string{} s := bufio.NewScanner(strings.NewReader(resp)) for s.Scan() { credsList = append(credsList, s.Text()) } if err := s.Err(); err != nil { return nil, awserr.New("SerializationError", "failed to read EC2 instance role from metadata service", err) } return credsList, nil } // requestCred requests the credentials for a specific credentials from the EC2 service. // // If the credentials cannot be found, or there is an error reading the response // and error will be returned. func requestCred(client *ec2metadata.EC2Metadata, credsName string) (ec2RoleCredRespBody, error) { resp, err := client.GetMetadata(path.Join(iamSecurityCredsPath, credsName)) if err != nil { return ec2RoleCredRespBody{}, awserr.New("EC2RoleRequestError", fmt.Sprintf("failed to get %s EC2 instance role credentials", credsName), err) } respCreds := ec2RoleCredRespBody{} if err := json.NewDecoder(strings.NewReader(resp)).Decode(&respCreds); err != nil { return ec2RoleCredRespBody{}, awserr.New("SerializationError", fmt.Sprintf("failed to decode %s EC2 instance role credentials", credsName), err) } if respCreds.Code != "Success" { // If an error code was returned something failed requesting the role. return ec2RoleCredRespBody{}, awserr.New(respCreds.Code, respCreds.Message, nil) } return respCreds, nil } aws-sdk-go-1.4.22/aws/credentials/ec2rolecreds/ec2_role_provider_test.go000066400000000000000000000107251300374646400262250ustar00rootroot00000000000000package ec2rolecreds_test import ( "fmt" "net/http" "net/http/httptest" "testing" "time" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/credentials/ec2rolecreds" "github.com/aws/aws-sdk-go/aws/ec2metadata" "github.com/aws/aws-sdk-go/awstesting/unit" ) const credsRespTmpl = `{ "Code": "Success", "Type": "AWS-HMAC", "AccessKeyId" : "accessKey", "SecretAccessKey" : "secret", "Token" : "token", "Expiration" : "%s", "LastUpdated" : "2009-11-23T0:00:00Z" }` const credsFailRespTmpl = `{ "Code": "ErrorCode", "Message": "ErrorMsg", "LastUpdated": "2009-11-23T0:00:00Z" }` func initTestServer(expireOn string, failAssume bool) *httptest.Server { server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { if r.URL.Path == "/latest/meta-data/iam/security-credentials" { fmt.Fprintln(w, "RoleName") } else if r.URL.Path == "/latest/meta-data/iam/security-credentials/RoleName" { if failAssume { fmt.Fprintf(w, credsFailRespTmpl) } else { fmt.Fprintf(w, credsRespTmpl, expireOn) } } else { http.Error(w, "bad request", http.StatusBadRequest) } })) return server } func TestEC2RoleProvider(t *testing.T) { server := initTestServer("2014-12-16T01:51:37Z", false) defer server.Close() p := &ec2rolecreds.EC2RoleProvider{ Client: ec2metadata.New(unit.Session, &aws.Config{Endpoint: aws.String(server.URL + "/latest")}), } creds, err := p.Retrieve() assert.Nil(t, err, "Expect no error, %v", err) assert.Equal(t, "accessKey", creds.AccessKeyID, "Expect access key ID to match") assert.Equal(t, "secret", creds.SecretAccessKey, "Expect secret access key to match") assert.Equal(t, "token", creds.SessionToken, "Expect session token to match") } func TestEC2RoleProviderFailAssume(t *testing.T) { server := initTestServer("2014-12-16T01:51:37Z", true) defer server.Close() p := &ec2rolecreds.EC2RoleProvider{ Client: ec2metadata.New(unit.Session, &aws.Config{Endpoint: aws.String(server.URL + "/latest")}), } creds, err := p.Retrieve() assert.Error(t, err, "Expect error") e := err.(awserr.Error) assert.Equal(t, "ErrorCode", e.Code()) assert.Equal(t, "ErrorMsg", e.Message()) assert.Nil(t, e.OrigErr()) assert.Equal(t, "", creds.AccessKeyID, "Expect access key ID to match") assert.Equal(t, "", creds.SecretAccessKey, "Expect secret access key to match") assert.Equal(t, "", creds.SessionToken, "Expect session token to match") } func TestEC2RoleProviderIsExpired(t *testing.T) { server := initTestServer("2014-12-16T01:51:37Z", false) defer server.Close() p := &ec2rolecreds.EC2RoleProvider{ Client: ec2metadata.New(unit.Session, &aws.Config{Endpoint: aws.String(server.URL + "/latest")}), } p.CurrentTime = func() time.Time { return time.Date(2014, 12, 15, 21, 26, 0, 0, time.UTC) } assert.True(t, p.IsExpired(), "Expect creds to be expired before retrieve.") _, err := p.Retrieve() assert.Nil(t, err, "Expect no error, %v", err) assert.False(t, p.IsExpired(), "Expect creds to not be expired after retrieve.") p.CurrentTime = func() time.Time { return time.Date(3014, 12, 15, 21, 26, 0, 0, time.UTC) } assert.True(t, p.IsExpired(), "Expect creds to be expired.") } func TestEC2RoleProviderExpiryWindowIsExpired(t *testing.T) { server := initTestServer("2014-12-16T01:51:37Z", false) defer server.Close() p := &ec2rolecreds.EC2RoleProvider{ Client: ec2metadata.New(unit.Session, &aws.Config{Endpoint: aws.String(server.URL + "/latest")}), ExpiryWindow: time.Hour * 1, } p.CurrentTime = func() time.Time { return time.Date(2014, 12, 15, 0, 51, 37, 0, time.UTC) } assert.True(t, p.IsExpired(), "Expect creds to be expired before retrieve.") _, err := p.Retrieve() assert.Nil(t, err, "Expect no error, %v", err) assert.False(t, p.IsExpired(), "Expect creds to not be expired after retrieve.") p.CurrentTime = func() time.Time { return time.Date(2014, 12, 16, 0, 55, 37, 0, time.UTC) } assert.True(t, p.IsExpired(), "Expect creds to be expired.") } func BenchmarkEC3RoleProvider(b *testing.B) { server := initTestServer("2014-12-16T01:51:37Z", false) defer server.Close() p := &ec2rolecreds.EC2RoleProvider{ Client: ec2metadata.New(unit.Session, &aws.Config{Endpoint: aws.String(server.URL + "/latest")}), } _, err := p.Retrieve() if err != nil { b.Fatal(err) } b.ResetTimer() for i := 0; i < b.N; i++ { if _, err := p.Retrieve(); err != nil { b.Fatal(err) } } } aws-sdk-go-1.4.22/aws/credentials/endpointcreds/000077500000000000000000000000001300374646400215135ustar00rootroot00000000000000aws-sdk-go-1.4.22/aws/credentials/endpointcreds/provider.go000066400000000000000000000133001300374646400236710ustar00rootroot00000000000000// Package endpointcreds provides support for retrieving credentials from an // arbitrary HTTP endpoint. // // The credentials endpoint Provider can receive both static and refreshable // credentials that will expire. Credentials are static when an "Expiration" // value is not provided in the endpoint's response. // // Static credentials will never expire once they have been retrieved. The format // of the static credentials response: // { // "AccessKeyId" : "MUA...", // "SecretAccessKey" : "/7PC5om....", // } // // Refreshable credentials will expire within the "ExpiryWindow" of the Expiration // value in the response. The format of the refreshable credentials response: // { // "AccessKeyId" : "MUA...", // "SecretAccessKey" : "/7PC5om....", // "Token" : "AQoDY....=", // "Expiration" : "2016-02-25T06:03:31Z" // } // // Errors should be returned in the following format and only returned with 400 // or 500 HTTP status codes. // { // "code": "ErrorCode", // "message": "Helpful error message." // } package endpointcreds import ( "encoding/json" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/aws/request" ) // ProviderName is the name of the credentials provider. const ProviderName = `CredentialsEndpointProvider` // Provider satisfies the credentials.Provider interface, and is a client to // retrieve credentials from an arbitrary endpoint. type Provider struct { staticCreds bool credentials.Expiry // Requires a AWS Client to make HTTP requests to the endpoint with. // the Endpoint the request will be made to is provided by the aws.Config's // Endpoint value. Client *client.Client // ExpiryWindow will allow the credentials to trigger refreshing prior to // the credentials actually expiring. This is beneficial so race conditions // with expiring credentials do not cause request to fail unexpectedly // due to ExpiredTokenException exceptions. // // So a ExpiryWindow of 10s would cause calls to IsExpired() to return true // 10 seconds before the credentials are actually expired. // // If ExpiryWindow is 0 or less it will be ignored. ExpiryWindow time.Duration } // NewProviderClient returns a credentials Provider for retrieving AWS credentials // from arbitrary endpoint. func NewProviderClient(cfg aws.Config, handlers request.Handlers, endpoint string, options ...func(*Provider)) credentials.Provider { p := &Provider{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "CredentialsEndpoint", Endpoint: endpoint, }, handlers, ), } p.Client.Handlers.Unmarshal.PushBack(unmarshalHandler) p.Client.Handlers.UnmarshalError.PushBack(unmarshalError) p.Client.Handlers.Validate.Clear() p.Client.Handlers.Validate.PushBack(validateEndpointHandler) for _, option := range options { option(p) } return p } // NewCredentialsClient returns a Credentials wrapper for retrieving credentials // from an arbitrary endpoint concurrently. The client will request the func NewCredentialsClient(cfg aws.Config, handlers request.Handlers, endpoint string, options ...func(*Provider)) *credentials.Credentials { return credentials.NewCredentials(NewProviderClient(cfg, handlers, endpoint, options...)) } // IsExpired returns true if the credentials retrieved are expired, or not yet // retrieved. func (p *Provider) IsExpired() bool { if p.staticCreds { return false } return p.Expiry.IsExpired() } // Retrieve will attempt to request the credentials from the endpoint the Provider // was configured for. And error will be returned if the retrieval fails. func (p *Provider) Retrieve() (credentials.Value, error) { resp, err := p.getCredentials() if err != nil { return credentials.Value{ProviderName: ProviderName}, awserr.New("CredentialsEndpointError", "failed to load credentials", err) } if resp.Expiration != nil { p.SetExpiration(*resp.Expiration, p.ExpiryWindow) } else { p.staticCreds = true } return credentials.Value{ AccessKeyID: resp.AccessKeyID, SecretAccessKey: resp.SecretAccessKey, SessionToken: resp.Token, ProviderName: ProviderName, }, nil } type getCredentialsOutput struct { Expiration *time.Time AccessKeyID string SecretAccessKey string Token string } type errorOutput struct { Code string `json:"code"` Message string `json:"message"` } func (p *Provider) getCredentials() (*getCredentialsOutput, error) { op := &request.Operation{ Name: "GetCredentials", HTTPMethod: "GET", } out := &getCredentialsOutput{} req := p.Client.NewRequest(op, nil, out) req.HTTPRequest.Header.Set("Accept", "application/json") return out, req.Send() } func validateEndpointHandler(r *request.Request) { if len(r.ClientInfo.Endpoint) == 0 { r.Error = aws.ErrMissingEndpoint } } func unmarshalHandler(r *request.Request) { defer r.HTTPResponse.Body.Close() out := r.Data.(*getCredentialsOutput) if err := json.NewDecoder(r.HTTPResponse.Body).Decode(&out); err != nil { r.Error = awserr.New("SerializationError", "failed to decode endpoint credentials", err, ) } } func unmarshalError(r *request.Request) { defer r.HTTPResponse.Body.Close() var errOut errorOutput if err := json.NewDecoder(r.HTTPResponse.Body).Decode(&errOut); err != nil { r.Error = awserr.New("SerializationError", "failed to decode endpoint credentials", err, ) } // Response body format is not consistent between metadata endpoints. // Grab the error message as a string and include that as the source error r.Error = awserr.New(errOut.Code, errOut.Message, nil) } aws-sdk-go-1.4.22/aws/credentials/endpointcreds/provider_test.go000066400000000000000000000060471300374646400247420ustar00rootroot00000000000000package endpointcreds_test import ( "encoding/json" "fmt" "net/http" "net/http/httptest" "testing" "time" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/credentials/endpointcreds" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/stretchr/testify/assert" ) func TestRetrieveRefreshableCredentials(t *testing.T) { server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { assert.Equal(t, "/path/to/endpoint", r.URL.Path) assert.Equal(t, "application/json", r.Header.Get("Accept")) assert.Equal(t, "else", r.URL.Query().Get("something")) encoder := json.NewEncoder(w) err := encoder.Encode(map[string]interface{}{ "AccessKeyID": "AKID", "SecretAccessKey": "SECRET", "Token": "TOKEN", "Expiration": time.Now().Add(1 * time.Hour), }) if err != nil { fmt.Println("failed to write out creds", err) } })) client := endpointcreds.NewProviderClient(*unit.Session.Config, unit.Session.Handlers, server.URL+"/path/to/endpoint?something=else", ) creds, err := client.Retrieve() assert.NoError(t, err) assert.Equal(t, "AKID", creds.AccessKeyID) assert.Equal(t, "SECRET", creds.SecretAccessKey) assert.Equal(t, "TOKEN", creds.SessionToken) assert.False(t, client.IsExpired()) client.(*endpointcreds.Provider).CurrentTime = func() time.Time { return time.Now().Add(2 * time.Hour) } assert.True(t, client.IsExpired()) } func TestRetrieveStaticCredentials(t *testing.T) { server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { encoder := json.NewEncoder(w) err := encoder.Encode(map[string]interface{}{ "AccessKeyID": "AKID", "SecretAccessKey": "SECRET", }) if err != nil { fmt.Println("failed to write out creds", err) } })) client := endpointcreds.NewProviderClient(*unit.Session.Config, unit.Session.Handlers, server.URL) creds, err := client.Retrieve() assert.NoError(t, err) assert.Equal(t, "AKID", creds.AccessKeyID) assert.Equal(t, "SECRET", creds.SecretAccessKey) assert.Empty(t, creds.SessionToken) assert.False(t, client.IsExpired()) } func TestFailedRetrieveCredentials(t *testing.T) { server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { w.WriteHeader(400) encoder := json.NewEncoder(w) err := encoder.Encode(map[string]interface{}{ "Code": "Error", "Message": "Message", }) if err != nil { fmt.Println("failed to write error", err) } })) client := endpointcreds.NewProviderClient(*unit.Session.Config, unit.Session.Handlers, server.URL) creds, err := client.Retrieve() assert.Error(t, err) aerr := err.(awserr.Error) assert.Equal(t, "CredentialsEndpointError", aerr.Code()) assert.Equal(t, "failed to load credentials", aerr.Message()) aerr = aerr.OrigErr().(awserr.Error) assert.Equal(t, "Error", aerr.Code()) assert.Equal(t, "Message", aerr.Message()) assert.Empty(t, creds.AccessKeyID) assert.Empty(t, creds.SecretAccessKey) assert.Empty(t, creds.SessionToken) assert.True(t, client.IsExpired()) } aws-sdk-go-1.4.22/aws/credentials/env_provider.go000066400000000000000000000040331300374646400217030ustar00rootroot00000000000000package credentials import ( "os" "github.com/aws/aws-sdk-go/aws/awserr" ) // EnvProviderName provides a name of Env provider const EnvProviderName = "EnvProvider" var ( // ErrAccessKeyIDNotFound is returned when the AWS Access Key ID can't be // found in the process's environment. // // @readonly ErrAccessKeyIDNotFound = awserr.New("EnvAccessKeyNotFound", "AWS_ACCESS_KEY_ID or AWS_ACCESS_KEY not found in environment", nil) // ErrSecretAccessKeyNotFound is returned when the AWS Secret Access Key // can't be found in the process's environment. // // @readonly ErrSecretAccessKeyNotFound = awserr.New("EnvSecretNotFound", "AWS_SECRET_ACCESS_KEY or AWS_SECRET_KEY not found in environment", nil) ) // A EnvProvider retrieves credentials from the environment variables of the // running process. Environment credentials never expire. // // Environment variables used: // // * Access Key ID: AWS_ACCESS_KEY_ID or AWS_ACCESS_KEY // * Secret Access Key: AWS_SECRET_ACCESS_KEY or AWS_SECRET_KEY type EnvProvider struct { retrieved bool } // NewEnvCredentials returns a pointer to a new Credentials object // wrapping the environment variable provider. func NewEnvCredentials() *Credentials { return NewCredentials(&EnvProvider{}) } // Retrieve retrieves the keys from the environment. func (e *EnvProvider) Retrieve() (Value, error) { e.retrieved = false id := os.Getenv("AWS_ACCESS_KEY_ID") if id == "" { id = os.Getenv("AWS_ACCESS_KEY") } secret := os.Getenv("AWS_SECRET_ACCESS_KEY") if secret == "" { secret = os.Getenv("AWS_SECRET_KEY") } if id == "" { return Value{ProviderName: EnvProviderName}, ErrAccessKeyIDNotFound } if secret == "" { return Value{ProviderName: EnvProviderName}, ErrSecretAccessKeyNotFound } e.retrieved = true return Value{ AccessKeyID: id, SecretAccessKey: secret, SessionToken: os.Getenv("AWS_SESSION_TOKEN"), ProviderName: EnvProviderName, }, nil } // IsExpired returns if the credentials have been retrieved. func (e *EnvProvider) IsExpired() bool { return !e.retrieved } aws-sdk-go-1.4.22/aws/credentials/env_provider_test.go000066400000000000000000000040231300374646400227410ustar00rootroot00000000000000package credentials import ( "github.com/stretchr/testify/assert" "os" "testing" ) func TestEnvProviderRetrieve(t *testing.T) { os.Clearenv() os.Setenv("AWS_ACCESS_KEY_ID", "access") os.Setenv("AWS_SECRET_ACCESS_KEY", "secret") os.Setenv("AWS_SESSION_TOKEN", "token") e := EnvProvider{} creds, err := e.Retrieve() assert.Nil(t, err, "Expect no error") assert.Equal(t, "access", creds.AccessKeyID, "Expect access key ID to match") assert.Equal(t, "secret", creds.SecretAccessKey, "Expect secret access key to match") assert.Equal(t, "token", creds.SessionToken, "Expect session token to match") } func TestEnvProviderIsExpired(t *testing.T) { os.Clearenv() os.Setenv("AWS_ACCESS_KEY_ID", "access") os.Setenv("AWS_SECRET_ACCESS_KEY", "secret") os.Setenv("AWS_SESSION_TOKEN", "token") e := EnvProvider{} assert.True(t, e.IsExpired(), "Expect creds to be expired before retrieve.") _, err := e.Retrieve() assert.Nil(t, err, "Expect no error") assert.False(t, e.IsExpired(), "Expect creds to not be expired after retrieve.") } func TestEnvProviderNoAccessKeyID(t *testing.T) { os.Clearenv() os.Setenv("AWS_SECRET_ACCESS_KEY", "secret") e := EnvProvider{} creds, err := e.Retrieve() assert.Equal(t, ErrAccessKeyIDNotFound, err, "ErrAccessKeyIDNotFound expected, but was %#v error: %#v", creds, err) } func TestEnvProviderNoSecretAccessKey(t *testing.T) { os.Clearenv() os.Setenv("AWS_ACCESS_KEY_ID", "access") e := EnvProvider{} creds, err := e.Retrieve() assert.Equal(t, ErrSecretAccessKeyNotFound, err, "ErrSecretAccessKeyNotFound expected, but was %#v error: %#v", creds, err) } func TestEnvProviderAlternateNames(t *testing.T) { os.Clearenv() os.Setenv("AWS_ACCESS_KEY", "access") os.Setenv("AWS_SECRET_KEY", "secret") e := EnvProvider{} creds, err := e.Retrieve() assert.Nil(t, err, "Expect no error") assert.Equal(t, "access", creds.AccessKeyID, "Expected access key ID") assert.Equal(t, "secret", creds.SecretAccessKey, "Expected secret access key") assert.Empty(t, creds.SessionToken, "Expected no token") } aws-sdk-go-1.4.22/aws/credentials/example.ini000066400000000000000000000003631300374646400210100ustar00rootroot00000000000000[default] aws_access_key_id = accessKey aws_secret_access_key = secret aws_session_token = token [no_token] aws_access_key_id = accessKey aws_secret_access_key = secret [with_colon] aws_access_key_id: accessKey aws_secret_access_key: secret aws-sdk-go-1.4.22/aws/credentials/shared_credentials_provider.go000066400000000000000000000111201300374646400247310ustar00rootroot00000000000000package credentials import ( "fmt" "os" "path/filepath" "github.com/go-ini/ini" "github.com/aws/aws-sdk-go/aws/awserr" ) // SharedCredsProviderName provides a name of SharedCreds provider const SharedCredsProviderName = "SharedCredentialsProvider" var ( // ErrSharedCredentialsHomeNotFound is emitted when the user directory cannot be found. // // @readonly ErrSharedCredentialsHomeNotFound = awserr.New("UserHomeNotFound", "user home directory not found.", nil) ) // A SharedCredentialsProvider retrieves credentials from the current user's home // directory, and keeps track if those credentials are expired. // // Profile ini file example: $HOME/.aws/credentials type SharedCredentialsProvider struct { // Path to the shared credentials file. // // If empty will look for "AWS_SHARED_CREDENTIALS_FILE" env variable. If the // env value is empty will default to current user's home directory. // Linux/OSX: "$HOME/.aws/credentials" // Windows: "%USERPROFILE%\.aws\credentials" Filename string // AWS Profile to extract credentials from the shared credentials file. If empty // will default to environment variable "AWS_PROFILE" or "default" if // environment variable is also not set. Profile string // retrieved states if the credentials have been successfully retrieved. retrieved bool } // NewSharedCredentials returns a pointer to a new Credentials object // wrapping the Profile file provider. func NewSharedCredentials(filename, profile string) *Credentials { return NewCredentials(&SharedCredentialsProvider{ Filename: filename, Profile: profile, }) } // Retrieve reads and extracts the shared credentials from the current // users home directory. func (p *SharedCredentialsProvider) Retrieve() (Value, error) { p.retrieved = false filename, err := p.filename() if err != nil { return Value{ProviderName: SharedCredsProviderName}, err } creds, err := loadProfile(filename, p.profile()) if err != nil { return Value{ProviderName: SharedCredsProviderName}, err } p.retrieved = true return creds, nil } // IsExpired returns if the shared credentials have expired. func (p *SharedCredentialsProvider) IsExpired() bool { return !p.retrieved } // loadProfiles loads from the file pointed to by shared credentials filename for profile. // The credentials retrieved from the profile will be returned or error. Error will be // returned if it fails to read from the file, or the data is invalid. func loadProfile(filename, profile string) (Value, error) { config, err := ini.Load(filename) if err != nil { return Value{ProviderName: SharedCredsProviderName}, awserr.New("SharedCredsLoad", "failed to load shared credentials file", err) } iniProfile, err := config.GetSection(profile) if err != nil { return Value{ProviderName: SharedCredsProviderName}, awserr.New("SharedCredsLoad", "failed to get profile", err) } id, err := iniProfile.GetKey("aws_access_key_id") if err != nil { return Value{ProviderName: SharedCredsProviderName}, awserr.New("SharedCredsAccessKey", fmt.Sprintf("shared credentials %s in %s did not contain aws_access_key_id", profile, filename), err) } secret, err := iniProfile.GetKey("aws_secret_access_key") if err != nil { return Value{ProviderName: SharedCredsProviderName}, awserr.New("SharedCredsSecret", fmt.Sprintf("shared credentials %s in %s did not contain aws_secret_access_key", profile, filename), nil) } // Default to empty string if not found token := iniProfile.Key("aws_session_token") return Value{ AccessKeyID: id.String(), SecretAccessKey: secret.String(), SessionToken: token.String(), ProviderName: SharedCredsProviderName, }, nil } // filename returns the filename to use to read AWS shared credentials. // // Will return an error if the user's home directory path cannot be found. func (p *SharedCredentialsProvider) filename() (string, error) { if p.Filename == "" { if p.Filename = os.Getenv("AWS_SHARED_CREDENTIALS_FILE"); p.Filename != "" { return p.Filename, nil } homeDir := os.Getenv("HOME") // *nix if homeDir == "" { // Windows homeDir = os.Getenv("USERPROFILE") } if homeDir == "" { return "", ErrSharedCredentialsHomeNotFound } p.Filename = filepath.Join(homeDir, ".aws", "credentials") } return p.Filename, nil } // profile returns the AWS shared credentials profile. If empty will read // environment variable "AWS_PROFILE". If that is not set profile will // return "default". func (p *SharedCredentialsProvider) profile() string { if p.Profile == "" { p.Profile = os.Getenv("AWS_PROFILE") } if p.Profile == "" { p.Profile = "default" } return p.Profile } aws-sdk-go-1.4.22/aws/credentials/shared_credentials_provider_test.go000066400000000000000000000072411300374646400260010ustar00rootroot00000000000000package credentials import ( "os" "path/filepath" "testing" "github.com/stretchr/testify/assert" ) func TestSharedCredentialsProvider(t *testing.T) { os.Clearenv() p := SharedCredentialsProvider{Filename: "example.ini", Profile: ""} creds, err := p.Retrieve() assert.Nil(t, err, "Expect no error") assert.Equal(t, "accessKey", creds.AccessKeyID, "Expect access key ID to match") assert.Equal(t, "secret", creds.SecretAccessKey, "Expect secret access key to match") assert.Equal(t, "token", creds.SessionToken, "Expect session token to match") } func TestSharedCredentialsProviderIsExpired(t *testing.T) { os.Clearenv() p := SharedCredentialsProvider{Filename: "example.ini", Profile: ""} assert.True(t, p.IsExpired(), "Expect creds to be expired before retrieve") _, err := p.Retrieve() assert.Nil(t, err, "Expect no error") assert.False(t, p.IsExpired(), "Expect creds to not be expired after retrieve") } func TestSharedCredentialsProviderWithAWS_SHARED_CREDENTIALS_FILE(t *testing.T) { os.Clearenv() os.Setenv("AWS_SHARED_CREDENTIALS_FILE", "example.ini") p := SharedCredentialsProvider{} creds, err := p.Retrieve() assert.Nil(t, err, "Expect no error") assert.Equal(t, "accessKey", creds.AccessKeyID, "Expect access key ID to match") assert.Equal(t, "secret", creds.SecretAccessKey, "Expect secret access key to match") assert.Equal(t, "token", creds.SessionToken, "Expect session token to match") } func TestSharedCredentialsProviderWithAWS_SHARED_CREDENTIALS_FILEAbsPath(t *testing.T) { os.Clearenv() wd, err := os.Getwd() assert.NoError(t, err) os.Setenv("AWS_SHARED_CREDENTIALS_FILE", filepath.Join(wd, "example.ini")) p := SharedCredentialsProvider{} creds, err := p.Retrieve() assert.Nil(t, err, "Expect no error") assert.Equal(t, "accessKey", creds.AccessKeyID, "Expect access key ID to match") assert.Equal(t, "secret", creds.SecretAccessKey, "Expect secret access key to match") assert.Equal(t, "token", creds.SessionToken, "Expect session token to match") } func TestSharedCredentialsProviderWithAWS_PROFILE(t *testing.T) { os.Clearenv() os.Setenv("AWS_PROFILE", "no_token") p := SharedCredentialsProvider{Filename: "example.ini", Profile: ""} creds, err := p.Retrieve() assert.Nil(t, err, "Expect no error") assert.Equal(t, "accessKey", creds.AccessKeyID, "Expect access key ID to match") assert.Equal(t, "secret", creds.SecretAccessKey, "Expect secret access key to match") assert.Empty(t, creds.SessionToken, "Expect no token") } func TestSharedCredentialsProviderWithoutTokenFromProfile(t *testing.T) { os.Clearenv() p := SharedCredentialsProvider{Filename: "example.ini", Profile: "no_token"} creds, err := p.Retrieve() assert.Nil(t, err, "Expect no error") assert.Equal(t, "accessKey", creds.AccessKeyID, "Expect access key ID to match") assert.Equal(t, "secret", creds.SecretAccessKey, "Expect secret access key to match") assert.Empty(t, creds.SessionToken, "Expect no token") } func TestSharedCredentialsProviderColonInCredFile(t *testing.T) { os.Clearenv() p := SharedCredentialsProvider{Filename: "example.ini", Profile: "with_colon"} creds, err := p.Retrieve() assert.Nil(t, err, "Expect no error") assert.Equal(t, "accessKey", creds.AccessKeyID, "Expect access key ID to match") assert.Equal(t, "secret", creds.SecretAccessKey, "Expect secret access key to match") assert.Empty(t, creds.SessionToken, "Expect no token") } func BenchmarkSharedCredentialsProvider(b *testing.B) { os.Clearenv() p := SharedCredentialsProvider{Filename: "example.ini", Profile: ""} _, err := p.Retrieve() if err != nil { b.Fatal(err) } b.ResetTimer() for i := 0; i < b.N; i++ { _, err := p.Retrieve() if err != nil { b.Fatal(err) } } } aws-sdk-go-1.4.22/aws/credentials/static_provider.go000066400000000000000000000032641300374646400224070ustar00rootroot00000000000000package credentials import ( "github.com/aws/aws-sdk-go/aws/awserr" ) // StaticProviderName provides a name of Static provider const StaticProviderName = "StaticProvider" var ( // ErrStaticCredentialsEmpty is emitted when static credentials are empty. // // @readonly ErrStaticCredentialsEmpty = awserr.New("EmptyStaticCreds", "static credentials are empty", nil) ) // A StaticProvider is a set of credentials which are set programmatically, // and will never expire. type StaticProvider struct { Value } // NewStaticCredentials returns a pointer to a new Credentials object // wrapping a static credentials value provider. func NewStaticCredentials(id, secret, token string) *Credentials { return NewCredentials(&StaticProvider{Value: Value{ AccessKeyID: id, SecretAccessKey: secret, SessionToken: token, }}) } // NewStaticCredentialsFromCreds returns a pointer to a new Credentials object // wrapping the static credentials value provide. Same as NewStaticCredentials // but takes the creds Value instead of individual fields func NewStaticCredentialsFromCreds(creds Value) *Credentials { return NewCredentials(&StaticProvider{Value: creds}) } // Retrieve returns the credentials or error if the credentials are invalid. func (s *StaticProvider) Retrieve() (Value, error) { if s.AccessKeyID == "" || s.SecretAccessKey == "" { return Value{ProviderName: StaticProviderName}, ErrStaticCredentialsEmpty } if len(s.Value.ProviderName) == 0 { s.Value.ProviderName = StaticProviderName } return s.Value, nil } // IsExpired returns if the credentials are expired. // // For StaticProvider, the credentials never expired. func (s *StaticProvider) IsExpired() bool { return false } aws-sdk-go-1.4.22/aws/credentials/static_provider_test.go000066400000000000000000000014511300374646400234420ustar00rootroot00000000000000package credentials import ( "github.com/stretchr/testify/assert" "testing" ) func TestStaticProviderGet(t *testing.T) { s := StaticProvider{ Value: Value{ AccessKeyID: "AKID", SecretAccessKey: "SECRET", SessionToken: "", }, } creds, err := s.Retrieve() assert.Nil(t, err, "Expect no error") assert.Equal(t, "AKID", creds.AccessKeyID, "Expect access key ID to match") assert.Equal(t, "SECRET", creds.SecretAccessKey, "Expect secret access key to match") assert.Empty(t, creds.SessionToken, "Expect no session token") } func TestStaticProviderIsExpired(t *testing.T) { s := StaticProvider{ Value: Value{ AccessKeyID: "AKID", SecretAccessKey: "SECRET", SessionToken: "", }, } assert.False(t, s.IsExpired(), "Expect static credentials to never expire") } aws-sdk-go-1.4.22/aws/credentials/stscreds/000077500000000000000000000000001300374646400205045ustar00rootroot00000000000000aws-sdk-go-1.4.22/aws/credentials/stscreds/assume_role_provider.go000066400000000000000000000132551300374646400252710ustar00rootroot00000000000000// Package stscreds are credential Providers to retrieve STS AWS credentials. // // STS provides multiple ways to retrieve credentials which can be used when making // future AWS service API operation calls. package stscreds import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/service/sts" ) // ProviderName provides a name of AssumeRole provider const ProviderName = "AssumeRoleProvider" // AssumeRoler represents the minimal subset of the STS client API used by this provider. type AssumeRoler interface { AssumeRole(input *sts.AssumeRoleInput) (*sts.AssumeRoleOutput, error) } // DefaultDuration is the default amount of time in minutes that the credentials // will be valid for. var DefaultDuration = time.Duration(15) * time.Minute // AssumeRoleProvider retrieves temporary credentials from the STS service, and // keeps track of their expiration time. This provider must be used explicitly, // as it is not included in the credentials chain. type AssumeRoleProvider struct { credentials.Expiry // STS client to make assume role request with. Client AssumeRoler // Role to be assumed. RoleARN string // Session name, if you wish to reuse the credentials elsewhere. RoleSessionName string // Expiry duration of the STS credentials. Defaults to 15 minutes if not set. Duration time.Duration // Optional ExternalID to pass along, defaults to nil if not set. ExternalID *string // The policy plain text must be 2048 bytes or shorter. However, an internal // conversion compresses it into a packed binary format with a separate limit. // The PackedPolicySize response element indicates by percentage how close to // the upper size limit the policy is, with 100% equaling the maximum allowed // size. Policy *string // The identification number of the MFA device that is associated with the user // who is making the AssumeRole call. Specify this value if the trust policy // of the role being assumed includes a condition that requires MFA authentication. // The value is either the serial number for a hardware device (such as GAHT12345678) // or an Amazon Resource Name (ARN) for a virtual device (such as arn:aws:iam::123456789012:mfa/user). SerialNumber *string // The value provided by the MFA device, if the trust policy of the role being // assumed requires MFA (that is, if the policy includes a condition that tests // for MFA). If the role being assumed requires MFA and if the TokenCode value // is missing or expired, the AssumeRole call returns an "access denied" error. TokenCode *string // ExpiryWindow will allow the credentials to trigger refreshing prior to // the credentials actually expiring. This is beneficial so race conditions // with expiring credentials do not cause request to fail unexpectedly // due to ExpiredTokenException exceptions. // // So a ExpiryWindow of 10s would cause calls to IsExpired() to return true // 10 seconds before the credentials are actually expired. // // If ExpiryWindow is 0 or less it will be ignored. ExpiryWindow time.Duration } // NewCredentials returns a pointer to a new Credentials object wrapping the // AssumeRoleProvider. The credentials will expire every 15 minutes and the // role will be named after a nanosecond timestamp of this operation. // // Takes a Config provider to create the STS client. The ConfigProvider is // satisfied by the session.Session type. func NewCredentials(c client.ConfigProvider, roleARN string, options ...func(*AssumeRoleProvider)) *credentials.Credentials { p := &AssumeRoleProvider{ Client: sts.New(c), RoleARN: roleARN, Duration: DefaultDuration, } for _, option := range options { option(p) } return credentials.NewCredentials(p) } // NewCredentialsWithClient returns a pointer to a new Credentials object wrapping the // AssumeRoleProvider. The credentials will expire every 15 minutes and the // role will be named after a nanosecond timestamp of this operation. // // Takes an AssumeRoler which can be satisfiede by the STS client. func NewCredentialsWithClient(svc AssumeRoler, roleARN string, options ...func(*AssumeRoleProvider)) *credentials.Credentials { p := &AssumeRoleProvider{ Client: svc, RoleARN: roleARN, Duration: DefaultDuration, } for _, option := range options { option(p) } return credentials.NewCredentials(p) } // Retrieve generates a new set of temporary credentials using STS. func (p *AssumeRoleProvider) Retrieve() (credentials.Value, error) { // Apply defaults where parameters are not set. if p.RoleSessionName == "" { // Try to work out a role name that will hopefully end up unique. p.RoleSessionName = fmt.Sprintf("%d", time.Now().UTC().UnixNano()) } if p.Duration == 0 { // Expire as often as AWS permits. p.Duration = DefaultDuration } input := &sts.AssumeRoleInput{ DurationSeconds: aws.Int64(int64(p.Duration / time.Second)), RoleArn: aws.String(p.RoleARN), RoleSessionName: aws.String(p.RoleSessionName), ExternalId: p.ExternalID, } if p.Policy != nil { input.Policy = p.Policy } if p.SerialNumber != nil && p.TokenCode != nil { input.SerialNumber = p.SerialNumber input.TokenCode = p.TokenCode } roleOutput, err := p.Client.AssumeRole(input) if err != nil { return credentials.Value{ProviderName: ProviderName}, err } // We will proactively generate new credentials before they expire. p.SetExpiration(*roleOutput.Credentials.Expiration, p.ExpiryWindow) return credentials.Value{ AccessKeyID: *roleOutput.Credentials.AccessKeyId, SecretAccessKey: *roleOutput.Credentials.SecretAccessKey, SessionToken: *roleOutput.Credentials.SessionToken, ProviderName: ProviderName, }, nil } aws-sdk-go-1.4.22/aws/credentials/stscreds/assume_role_provider_test.go000066400000000000000000000025361300374646400263300ustar00rootroot00000000000000package stscreds import ( "testing" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/service/sts" "github.com/stretchr/testify/assert" ) type stubSTS struct { } func (s *stubSTS) AssumeRole(input *sts.AssumeRoleInput) (*sts.AssumeRoleOutput, error) { expiry := time.Now().Add(60 * time.Minute) return &sts.AssumeRoleOutput{ Credentials: &sts.Credentials{ // Just reflect the role arn to the provider. AccessKeyId: input.RoleArn, SecretAccessKey: aws.String("assumedSecretAccessKey"), SessionToken: aws.String("assumedSessionToken"), Expiration: &expiry, }, }, nil } func TestAssumeRoleProvider(t *testing.T) { stub := &stubSTS{} p := &AssumeRoleProvider{ Client: stub, RoleARN: "roleARN", } creds, err := p.Retrieve() assert.Nil(t, err, "Expect no error") assert.Equal(t, "roleARN", creds.AccessKeyID, "Expect access key ID to be reflected role ARN") assert.Equal(t, "assumedSecretAccessKey", creds.SecretAccessKey, "Expect secret access key to match") assert.Equal(t, "assumedSessionToken", creds.SessionToken, "Expect session token to match") } func BenchmarkAssumeRoleProvider(b *testing.B) { stub := &stubSTS{} p := &AssumeRoleProvider{ Client: stub, RoleARN: "roleARN", } b.ResetTimer() for i := 0; i < b.N; i++ { if _, err := p.Retrieve(); err != nil { b.Fatal(err) } } } aws-sdk-go-1.4.22/aws/defaults/000077500000000000000000000000001300374646400161645ustar00rootroot00000000000000aws-sdk-go-1.4.22/aws/defaults/defaults.go000066400000000000000000000105561300374646400203310ustar00rootroot00000000000000// Package defaults is a collection of helpers to retrieve the SDK's default // configuration and handlers. // // Generally this package shouldn't be used directly, but session.Session // instead. This package is useful when you need to reset the defaults // of a session or service client to the SDK defaults before setting // additional parameters. package defaults import ( "fmt" "net/http" "os" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/corehandlers" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/aws/credentials/ec2rolecreds" "github.com/aws/aws-sdk-go/aws/credentials/endpointcreds" "github.com/aws/aws-sdk-go/aws/ec2metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/endpoints" ) // A Defaults provides a collection of default values for SDK clients. type Defaults struct { Config *aws.Config Handlers request.Handlers } // Get returns the SDK's default values with Config and handlers pre-configured. func Get() Defaults { cfg := Config() handlers := Handlers() cfg.Credentials = CredChain(cfg, handlers) return Defaults{ Config: cfg, Handlers: handlers, } } // Config returns the default configuration without credentials. // To retrieve a config with credentials also included use // `defaults.Get().Config` instead. // // Generally you shouldn't need to use this method directly, but // is available if you need to reset the configuration of an // existing service client or session. func Config() *aws.Config { return aws.NewConfig(). WithCredentials(credentials.AnonymousCredentials). WithRegion(os.Getenv("AWS_REGION")). WithHTTPClient(http.DefaultClient). WithMaxRetries(aws.UseServiceDefaultRetries). WithLogger(aws.NewDefaultLogger()). WithLogLevel(aws.LogOff). WithSleepDelay(time.Sleep) } // Handlers returns the default request handlers. // // Generally you shouldn't need to use this method directly, but // is available if you need to reset the request handlers of an // existing service client or session. func Handlers() request.Handlers { var handlers request.Handlers handlers.Validate.PushBackNamed(corehandlers.ValidateEndpointHandler) handlers.Validate.AfterEachFn = request.HandlerListStopOnError handlers.Build.PushBackNamed(corehandlers.SDKVersionUserAgentHandler) handlers.Build.AfterEachFn = request.HandlerListStopOnError handlers.Sign.PushBackNamed(corehandlers.BuildContentLengthHandler) handlers.Send.PushBackNamed(corehandlers.ValidateReqSigHandler) handlers.Send.PushBackNamed(corehandlers.SendHandler) handlers.AfterRetry.PushBackNamed(corehandlers.AfterRetryHandler) handlers.ValidateResponse.PushBackNamed(corehandlers.ValidateResponseHandler) return handlers } // CredChain returns the default credential chain. // // Generally you shouldn't need to use this method directly, but // is available if you need to reset the credentials of an // existing service client or session's Config. func CredChain(cfg *aws.Config, handlers request.Handlers) *credentials.Credentials { return credentials.NewCredentials(&credentials.ChainProvider{ VerboseErrors: aws.BoolValue(cfg.CredentialsChainVerboseErrors), Providers: []credentials.Provider{ &credentials.EnvProvider{}, &credentials.SharedCredentialsProvider{Filename: "", Profile: ""}, RemoteCredProvider(*cfg, handlers), }, }) } // RemoteCredProvider returns a credenitials provider for the default remote // endpoints such as EC2 or ECS Roles. func RemoteCredProvider(cfg aws.Config, handlers request.Handlers) credentials.Provider { ecsCredURI := os.Getenv("AWS_CONTAINER_CREDENTIALS_RELATIVE_URI") if len(ecsCredURI) > 0 { return ecsCredProvider(cfg, handlers, ecsCredURI) } return ec2RoleProvider(cfg, handlers) } func ecsCredProvider(cfg aws.Config, handlers request.Handlers, uri string) credentials.Provider { const host = `169.254.170.2` return endpointcreds.NewProviderClient(cfg, handlers, fmt.Sprintf("http://%s%s", host, uri), func(p *endpointcreds.Provider) { p.ExpiryWindow = 5 * time.Minute }, ) } func ec2RoleProvider(cfg aws.Config, handlers request.Handlers) credentials.Provider { endpoint, signingRegion := endpoints.EndpointForRegion(ec2metadata.ServiceName, aws.StringValue(cfg.Region), true, false) return &ec2rolecreds.EC2RoleProvider{ Client: ec2metadata.NewClient(cfg, handlers, endpoint, signingRegion), ExpiryWindow: 5 * time.Minute, } } aws-sdk-go-1.4.22/aws/defaults/defaults_test.go000066400000000000000000000017111300374646400213610ustar00rootroot00000000000000package defaults import ( "fmt" "os" "testing" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/credentials/ec2rolecreds" "github.com/aws/aws-sdk-go/aws/credentials/endpointcreds" "github.com/aws/aws-sdk-go/aws/request" "github.com/stretchr/testify/assert" ) func TestECSCredProvider(t *testing.T) { defer os.Clearenv() os.Setenv("AWS_CONTAINER_CREDENTIALS_RELATIVE_URI", "/abc/123") provider := RemoteCredProvider(aws.Config{}, request.Handlers{}) assert.NotNil(t, provider) ecsProvider, ok := provider.(*endpointcreds.Provider) assert.NotNil(t, ecsProvider) assert.True(t, ok) assert.Equal(t, fmt.Sprintf("http://169.254.170.2/abc/123"), ecsProvider.Client.Endpoint) } func TestDefaultEC2RoleProvider(t *testing.T) { provider := RemoteCredProvider(aws.Config{}, request.Handlers{}) assert.NotNil(t, provider) ec2Provider, ok := provider.(*ec2rolecreds.EC2RoleProvider) assert.NotNil(t, ec2Provider) assert.True(t, ok) } aws-sdk-go-1.4.22/aws/ec2metadata/000077500000000000000000000000001300374646400165275ustar00rootroot00000000000000aws-sdk-go-1.4.22/aws/ec2metadata/api.go000066400000000000000000000115541300374646400176350ustar00rootroot00000000000000package ec2metadata import ( "encoding/json" "fmt" "net/http" "path" "strings" "time" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" ) // GetMetadata uses the path provided to request information from the EC2 // instance metdata service. The content will be returned as a string, or // error if the request failed. func (c *EC2Metadata) GetMetadata(p string) (string, error) { op := &request.Operation{ Name: "GetMetadata", HTTPMethod: "GET", HTTPPath: path.Join("/", "meta-data", p), } output := &metadataOutput{} req := c.NewRequest(op, nil, output) return output.Content, req.Send() } // GetUserData returns the userdata that was configured for the service. If // there is no user-data setup for the EC2 instance a "NotFoundError" error // code will be returned. func (c *EC2Metadata) GetUserData() (string, error) { op := &request.Operation{ Name: "GetUserData", HTTPMethod: "GET", HTTPPath: path.Join("/", "user-data"), } output := &metadataOutput{} req := c.NewRequest(op, nil, output) req.Handlers.UnmarshalError.PushBack(func(r *request.Request) { if r.HTTPResponse.StatusCode == http.StatusNotFound { r.Error = awserr.New("NotFoundError", "user-data not found", r.Error) } }) return output.Content, req.Send() } // GetDynamicData uses the path provided to request information from the EC2 // instance metadata service for dynamic data. The content will be returned // as a string, or error if the request failed. func (c *EC2Metadata) GetDynamicData(p string) (string, error) { op := &request.Operation{ Name: "GetDynamicData", HTTPMethod: "GET", HTTPPath: path.Join("/", "dynamic", p), } output := &metadataOutput{} req := c.NewRequest(op, nil, output) return output.Content, req.Send() } // GetInstanceIdentityDocument retrieves an identity document describing an // instance. Error is returned if the request fails or is unable to parse // the response. func (c *EC2Metadata) GetInstanceIdentityDocument() (EC2InstanceIdentityDocument, error) { resp, err := c.GetDynamicData("instance-identity/document") if err != nil { return EC2InstanceIdentityDocument{}, awserr.New("EC2MetadataRequestError", "failed to get EC2 instance identity document", err) } doc := EC2InstanceIdentityDocument{} if err := json.NewDecoder(strings.NewReader(resp)).Decode(&doc); err != nil { return EC2InstanceIdentityDocument{}, awserr.New("SerializationError", "failed to decode EC2 instance identity document", err) } return doc, nil } // IAMInfo retrieves IAM info from the metadata API func (c *EC2Metadata) IAMInfo() (EC2IAMInfo, error) { resp, err := c.GetMetadata("iam/info") if err != nil { return EC2IAMInfo{}, awserr.New("EC2MetadataRequestError", "failed to get EC2 IAM info", err) } info := EC2IAMInfo{} if err := json.NewDecoder(strings.NewReader(resp)).Decode(&info); err != nil { return EC2IAMInfo{}, awserr.New("SerializationError", "failed to decode EC2 IAM info", err) } if info.Code != "Success" { errMsg := fmt.Sprintf("failed to get EC2 IAM Info (%s)", info.Code) return EC2IAMInfo{}, awserr.New("EC2MetadataError", errMsg, nil) } return info, nil } // Region returns the region the instance is running in. func (c *EC2Metadata) Region() (string, error) { resp, err := c.GetMetadata("placement/availability-zone") if err != nil { return "", err } // returns region without the suffix. Eg: us-west-2a becomes us-west-2 return resp[:len(resp)-1], nil } // Available returns if the application has access to the EC2 Metadata service. // Can be used to determine if application is running within an EC2 Instance and // the metadata service is available. func (c *EC2Metadata) Available() bool { if _, err := c.GetMetadata("instance-id"); err != nil { return false } return true } // An EC2IAMInfo provides the shape for unmarshalling // an IAM info from the metadata API type EC2IAMInfo struct { Code string LastUpdated time.Time InstanceProfileArn string InstanceProfileID string } // An EC2InstanceIdentityDocument provides the shape for unmarshalling // an instance identity document type EC2InstanceIdentityDocument struct { DevpayProductCodes []string `json:"devpayProductCodes"` AvailabilityZone string `json:"availabilityZone"` PrivateIP string `json:"privateIp"` Version string `json:"version"` Region string `json:"region"` InstanceID string `json:"instanceId"` BillingProducts []string `json:"billingProducts"` InstanceType string `json:"instanceType"` AccountID string `json:"accountId"` PendingTime time.Time `json:"pendingTime"` ImageID string `json:"imageId"` KernelID string `json:"kernelId"` RamdiskID string `json:"ramdiskId"` Architecture string `json:"architecture"` } aws-sdk-go-1.4.22/aws/ec2metadata/api_test.go000066400000000000000000000154621300374646400206760ustar00rootroot00000000000000package ec2metadata_test import ( "bytes" "fmt" "io" "io/ioutil" "net/http" "net/http/httptest" "path" "strings" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/ec2metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting/unit" ) const instanceIdentityDocument = `{ "devpayProductCodes" : null, "availabilityZone" : "us-east-1d", "privateIp" : "10.158.112.84", "version" : "2010-08-31", "region" : "us-east-1", "instanceId" : "i-1234567890abcdef0", "billingProducts" : null, "instanceType" : "t1.micro", "accountId" : "123456789012", "pendingTime" : "2015-11-19T16:32:11Z", "imageId" : "ami-5fb8c835", "kernelId" : "aki-919dcaf8", "ramdiskId" : null, "architecture" : "x86_64" }` const validIamInfo = `{ "Code" : "Success", "LastUpdated" : "2016-03-17T12:27:32Z", "InstanceProfileArn" : "arn:aws:iam::123456789012:instance-profile/my-instance-profile", "InstanceProfileId" : "AIPAABCDEFGHIJKLMN123" }` const unsuccessfulIamInfo = `{ "Code" : "Failed", "LastUpdated" : "2016-03-17T12:27:32Z", "InstanceProfileArn" : "arn:aws:iam::123456789012:instance-profile/my-instance-profile", "InstanceProfileId" : "AIPAABCDEFGHIJKLMN123" }` func initTestServer(path string, resp string) *httptest.Server { return httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { if r.RequestURI != path { http.Error(w, "not found", http.StatusNotFound) return } w.Write([]byte(resp)) })) } func TestEndpoint(t *testing.T) { c := ec2metadata.New(unit.Session) op := &request.Operation{ Name: "GetMetadata", HTTPMethod: "GET", HTTPPath: path.Join("/", "meta-data", "testpath"), } req := c.NewRequest(op, nil, nil) assert.Equal(t, "http://169.254.169.254/latest", req.ClientInfo.Endpoint) assert.Equal(t, "http://169.254.169.254/latest/meta-data/testpath", req.HTTPRequest.URL.String()) } func TestGetMetadata(t *testing.T) { server := initTestServer( "/latest/meta-data/some/path", "success", // real response includes suffix ) defer server.Close() c := ec2metadata.New(unit.Session, &aws.Config{Endpoint: aws.String(server.URL + "/latest")}) resp, err := c.GetMetadata("some/path") assert.NoError(t, err) assert.Equal(t, "success", resp) } func TestGetUserData(t *testing.T) { server := initTestServer( "/latest/user-data", "success", // real response includes suffix ) defer server.Close() c := ec2metadata.New(unit.Session, &aws.Config{Endpoint: aws.String(server.URL + "/latest")}) resp, err := c.GetUserData() assert.NoError(t, err) assert.Equal(t, "success", resp) } func TestGetUserData_Error(t *testing.T) { server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { reader := strings.NewReader(` 404 - Not Found

404 - Not Found

`) w.Header().Set("Content-Type", "text/html") w.Header().Set("Content-Length", fmt.Sprintf("%d", reader.Len())) w.WriteHeader(http.StatusNotFound) io.Copy(w, reader) })) defer server.Close() c := ec2metadata.New(unit.Session, &aws.Config{Endpoint: aws.String(server.URL + "/latest")}) resp, err := c.GetUserData() assert.Error(t, err) assert.Empty(t, resp) aerr, ok := err.(awserr.Error) assert.True(t, ok) assert.Equal(t, "NotFoundError", aerr.Code()) } func TestGetRegion(t *testing.T) { server := initTestServer( "/latest/meta-data/placement/availability-zone", "us-west-2a", // real response includes suffix ) defer server.Close() c := ec2metadata.New(unit.Session, &aws.Config{Endpoint: aws.String(server.URL + "/latest")}) region, err := c.Region() assert.NoError(t, err) assert.Equal(t, "us-west-2", region) } func TestMetadataAvailable(t *testing.T) { server := initTestServer( "/latest/meta-data/instance-id", "instance-id", ) defer server.Close() c := ec2metadata.New(unit.Session, &aws.Config{Endpoint: aws.String(server.URL + "/latest")}) available := c.Available() assert.True(t, available) } func TestMetadataIAMInfo_success(t *testing.T) { server := initTestServer( "/latest/meta-data/iam/info", validIamInfo, ) defer server.Close() c := ec2metadata.New(unit.Session, &aws.Config{Endpoint: aws.String(server.URL + "/latest")}) iamInfo, err := c.IAMInfo() assert.NoError(t, err) assert.Equal(t, "Success", iamInfo.Code) assert.Equal(t, "arn:aws:iam::123456789012:instance-profile/my-instance-profile", iamInfo.InstanceProfileArn) assert.Equal(t, "AIPAABCDEFGHIJKLMN123", iamInfo.InstanceProfileID) } func TestMetadataIAMInfo_failure(t *testing.T) { server := initTestServer( "/latest/meta-data/iam/info", unsuccessfulIamInfo, ) defer server.Close() c := ec2metadata.New(unit.Session, &aws.Config{Endpoint: aws.String(server.URL + "/latest")}) iamInfo, err := c.IAMInfo() assert.NotNil(t, err) assert.Equal(t, "", iamInfo.Code) assert.Equal(t, "", iamInfo.InstanceProfileArn) assert.Equal(t, "", iamInfo.InstanceProfileID) } func TestMetadataNotAvailable(t *testing.T) { c := ec2metadata.New(unit.Session) c.Handlers.Send.Clear() c.Handlers.Send.PushBack(func(r *request.Request) { r.HTTPResponse = &http.Response{ StatusCode: int(0), Status: http.StatusText(int(0)), Body: ioutil.NopCloser(bytes.NewReader([]byte{})), } r.Error = awserr.New("RequestError", "send request failed", nil) r.Retryable = aws.Bool(true) // network errors are retryable }) available := c.Available() assert.False(t, available) } func TestMetadataErrorResponse(t *testing.T) { c := ec2metadata.New(unit.Session) c.Handlers.Send.Clear() c.Handlers.Send.PushBack(func(r *request.Request) { r.HTTPResponse = &http.Response{ StatusCode: http.StatusBadRequest, Status: http.StatusText(http.StatusBadRequest), Body: ioutil.NopCloser(strings.NewReader("error message text")), } r.Retryable = aws.Bool(false) // network errors are retryable }) data, err := c.GetMetadata("uri/path") assert.Empty(t, data) assert.Contains(t, err.Error(), "error message text") } func TestEC2RoleProviderInstanceIdentity(t *testing.T) { server := initTestServer( "/latest/dynamic/instance-identity/document", instanceIdentityDocument, ) defer server.Close() c := ec2metadata.New(unit.Session, &aws.Config{Endpoint: aws.String(server.URL + "/latest")}) doc, err := c.GetInstanceIdentityDocument() assert.Nil(t, err, "Expect no error, %v", err) assert.Equal(t, doc.AccountID, "123456789012") assert.Equal(t, doc.AvailabilityZone, "us-east-1d") assert.Equal(t, doc.Region, "us-east-1") } aws-sdk-go-1.4.22/aws/ec2metadata/service.go000066400000000000000000000074201300374646400205210ustar00rootroot00000000000000// Package ec2metadata provides the client for making API calls to the // EC2 Metadata service. package ec2metadata import ( "bytes" "errors" "io" "net/http" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" ) // ServiceName is the name of the service. const ServiceName = "ec2metadata" // A EC2Metadata is an EC2 Metadata service Client. type EC2Metadata struct { *client.Client } // New creates a new instance of the EC2Metadata client with a session. // This client is safe to use across multiple goroutines. // // // Example: // // Create a EC2Metadata client from just a session. // svc := ec2metadata.New(mySession) // // // Create a EC2Metadata client with additional configuration // svc := ec2metadata.New(mySession, aws.NewConfig().WithLogLevel(aws.LogDebugHTTPBody)) func New(p client.ConfigProvider, cfgs ...*aws.Config) *EC2Metadata { c := p.ClientConfig(ServiceName, cfgs...) return NewClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // NewClient returns a new EC2Metadata client. Should be used to create // a client when not using a session. Generally using just New with a session // is preferred. // // If an unmodified HTTP client is provided from the stdlib default, or no client // the EC2RoleProvider's EC2Metadata HTTP client's timeout will be shortened. // To disable this set Config.EC2MetadataDisableTimeoutOverride to false. Enabled by default. func NewClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string, opts ...func(*client.Client)) *EC2Metadata { if !aws.BoolValue(cfg.EC2MetadataDisableTimeoutOverride) && httpClientZero(cfg.HTTPClient) { // If the http client is unmodified and this feature is not disabled // set custom timeouts for EC2Metadata requests. cfg.HTTPClient = &http.Client{ // use a shorter timeout than default because the metadata // service is local if it is running, and to fail faster // if not running on an ec2 instance. Timeout: 5 * time.Second, } } svc := &EC2Metadata{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, Endpoint: endpoint, APIVersion: "latest", }, handlers, ), } svc.Handlers.Unmarshal.PushBack(unmarshalHandler) svc.Handlers.UnmarshalError.PushBack(unmarshalError) svc.Handlers.Validate.Clear() svc.Handlers.Validate.PushBack(validateEndpointHandler) // Add additional options to the service config for _, option := range opts { option(svc.Client) } return svc } func httpClientZero(c *http.Client) bool { return c == nil || (c.Transport == nil && c.CheckRedirect == nil && c.Jar == nil && c.Timeout == 0) } type metadataOutput struct { Content string } func unmarshalHandler(r *request.Request) { defer r.HTTPResponse.Body.Close() b := &bytes.Buffer{} if _, err := io.Copy(b, r.HTTPResponse.Body); err != nil { r.Error = awserr.New("SerializationError", "unable to unmarshal EC2 metadata respose", err) return } if data, ok := r.Data.(*metadataOutput); ok { data.Content = b.String() } } func unmarshalError(r *request.Request) { defer r.HTTPResponse.Body.Close() b := &bytes.Buffer{} if _, err := io.Copy(b, r.HTTPResponse.Body); err != nil { r.Error = awserr.New("SerializationError", "unable to unmarshal EC2 metadata error respose", err) return } // Response body format is not consistent between metadata endpoints. // Grab the error message as a string and include that as the source error r.Error = awserr.New("EC2MetadataError", "failed to make EC2Metadata request", errors.New(b.String())) } func validateEndpointHandler(r *request.Request) { if r.ClientInfo.Endpoint == "" { r.Error = aws.ErrMissingEndpoint } } aws-sdk-go-1.4.22/aws/ec2metadata/service_test.go000066400000000000000000000040371300374646400215610ustar00rootroot00000000000000package ec2metadata_test import ( "net/http" "net/http/httptest" "sync" "testing" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/ec2metadata" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/stretchr/testify/assert" ) func TestClientOverrideDefaultHTTPClientTimeout(t *testing.T) { svc := ec2metadata.New(unit.Session) assert.NotEqual(t, http.DefaultClient, svc.Config.HTTPClient) assert.Equal(t, 5*time.Second, svc.Config.HTTPClient.Timeout) } func TestClientNotOverrideDefaultHTTPClientTimeout(t *testing.T) { http.DefaultClient.Transport = &http.Transport{} defer func() { http.DefaultClient.Transport = nil }() svc := ec2metadata.New(unit.Session) assert.Equal(t, http.DefaultClient, svc.Config.HTTPClient) tr, ok := svc.Config.HTTPClient.Transport.(*http.Transport) assert.True(t, ok) assert.NotNil(t, tr) assert.Nil(t, tr.Dial) } func TestClientDisableOverrideDefaultHTTPClientTimeout(t *testing.T) { svc := ec2metadata.New(unit.Session, aws.NewConfig().WithEC2MetadataDisableTimeoutOverride(true)) assert.Equal(t, http.DefaultClient, svc.Config.HTTPClient) } func TestClientOverrideDefaultHTTPClientTimeoutRace(t *testing.T) { server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { w.Write([]byte("us-east-1a")) })) cfg := aws.NewConfig().WithEndpoint(server.URL) runEC2MetadataClients(t, cfg, 100) } func TestClientOverrideDefaultHTTPClientTimeoutRaceWithTransport(t *testing.T) { server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { w.Write([]byte("us-east-1a")) })) cfg := aws.NewConfig().WithEndpoint(server.URL).WithHTTPClient(&http.Client{ Transport: http.DefaultTransport, }) runEC2MetadataClients(t, cfg, 100) } func runEC2MetadataClients(t *testing.T, cfg *aws.Config, atOnce int) { var wg sync.WaitGroup wg.Add(atOnce) for i := 0; i < atOnce; i++ { go func() { svc := ec2metadata.New(unit.Session, cfg) _, err := svc.Region() assert.NoError(t, err) wg.Done() }() } wg.Wait() } aws-sdk-go-1.4.22/aws/errors.go000066400000000000000000000007741300374646400162300ustar00rootroot00000000000000package aws import "github.com/aws/aws-sdk-go/aws/awserr" var ( // ErrMissingRegion is an error that is returned if region configuration is // not found. // // @readonly ErrMissingRegion = awserr.New("MissingRegion", "could not find region configuration", nil) // ErrMissingEndpoint is an error that is returned if an endpoint cannot be // resolved for a service. // // @readonly ErrMissingEndpoint = awserr.New("MissingEndpoint", "'Endpoint' configuration is required for this service", nil) ) aws-sdk-go-1.4.22/aws/logger.go000066400000000000000000000072051300374646400161670ustar00rootroot00000000000000package aws import ( "log" "os" ) // A LogLevelType defines the level logging should be performed at. Used to instruct // the SDK which statements should be logged. type LogLevelType uint // LogLevel returns the pointer to a LogLevel. Should be used to workaround // not being able to take the address of a non-composite literal. func LogLevel(l LogLevelType) *LogLevelType { return &l } // Value returns the LogLevel value or the default value LogOff if the LogLevel // is nil. Safe to use on nil value LogLevelTypes. func (l *LogLevelType) Value() LogLevelType { if l != nil { return *l } return LogOff } // Matches returns true if the v LogLevel is enabled by this LogLevel. Should be // used with logging sub levels. Is safe to use on nil value LogLevelTypes. If // LogLevel is nill, will default to LogOff comparison. func (l *LogLevelType) Matches(v LogLevelType) bool { c := l.Value() return c&v == v } // AtLeast returns true if this LogLevel is at least high enough to satisfies v. // Is safe to use on nil value LogLevelTypes. If LogLevel is nill, will default // to LogOff comparison. func (l *LogLevelType) AtLeast(v LogLevelType) bool { c := l.Value() return c >= v } const ( // LogOff states that no logging should be performed by the SDK. This is the // default state of the SDK, and should be use to disable all logging. LogOff LogLevelType = iota * 0x1000 // LogDebug state that debug output should be logged by the SDK. This should // be used to inspect request made and responses received. LogDebug ) // Debug Logging Sub Levels const ( // LogDebugWithSigning states that the SDK should log request signing and // presigning events. This should be used to log the signing details of // requests for debugging. Will also enable LogDebug. LogDebugWithSigning LogLevelType = LogDebug | (1 << iota) // LogDebugWithHTTPBody states the SDK should log HTTP request and response // HTTP bodys in addition to the headers and path. This should be used to // see the body content of requests and responses made while using the SDK // Will also enable LogDebug. LogDebugWithHTTPBody // LogDebugWithRequestRetries states the SDK should log when service requests will // be retried. This should be used to log when you want to log when service // requests are being retried. Will also enable LogDebug. LogDebugWithRequestRetries // LogDebugWithRequestErrors states the SDK should log when service requests fail // to build, send, validate, or unmarshal. LogDebugWithRequestErrors ) // A Logger is a minimalistic interface for the SDK to log messages to. Should // be used to provide custom logging writers for the SDK to use. type Logger interface { Log(...interface{}) } // A LoggerFunc is a convenience type to convert a function taking a variadic // list of arguments and wrap it so the Logger interface can be used. // // Example: // s3.New(sess, &aws.Config{Logger: aws.LoggerFunc(func(args ...interface{}) { // fmt.Fprintln(os.Stdout, args...) // })}) type LoggerFunc func(...interface{}) // Log calls the wrapped function with the arguments provided func (f LoggerFunc) Log(args ...interface{}) { f(args...) } // NewDefaultLogger returns a Logger which will write log messages to stdout, and // use same formatting runes as the stdlib log.Logger func NewDefaultLogger() Logger { return &defaultLogger{ logger: log.New(os.Stdout, "", log.LstdFlags), } } // A defaultLogger provides a minimalistic logger satisfying the Logger interface. type defaultLogger struct { logger *log.Logger } // Log logs the parameters to the stdlib logger. See log.Println. func (l defaultLogger) Log(args ...interface{}) { l.logger.Println(args...) } aws-sdk-go-1.4.22/aws/request/000077500000000000000000000000001300374646400160455ustar00rootroot00000000000000aws-sdk-go-1.4.22/aws/request/handlers.go000066400000000000000000000124701300374646400202000ustar00rootroot00000000000000package request import ( "fmt" "strings" ) // A Handlers provides a collection of request handlers for various // stages of handling requests. type Handlers struct { Validate HandlerList Build HandlerList Sign HandlerList Send HandlerList ValidateResponse HandlerList Unmarshal HandlerList UnmarshalMeta HandlerList UnmarshalError HandlerList Retry HandlerList AfterRetry HandlerList } // Copy returns of this handler's lists. func (h *Handlers) Copy() Handlers { return Handlers{ Validate: h.Validate.copy(), Build: h.Build.copy(), Sign: h.Sign.copy(), Send: h.Send.copy(), ValidateResponse: h.ValidateResponse.copy(), Unmarshal: h.Unmarshal.copy(), UnmarshalError: h.UnmarshalError.copy(), UnmarshalMeta: h.UnmarshalMeta.copy(), Retry: h.Retry.copy(), AfterRetry: h.AfterRetry.copy(), } } // Clear removes callback functions for all handlers func (h *Handlers) Clear() { h.Validate.Clear() h.Build.Clear() h.Send.Clear() h.Sign.Clear() h.Unmarshal.Clear() h.UnmarshalMeta.Clear() h.UnmarshalError.Clear() h.ValidateResponse.Clear() h.Retry.Clear() h.AfterRetry.Clear() } // A HandlerListRunItem represents an entry in the HandlerList which // is being run. type HandlerListRunItem struct { Index int Handler NamedHandler Request *Request } // A HandlerList manages zero or more handlers in a list. type HandlerList struct { list []NamedHandler // Called after each request handler in the list is called. If set // and the func returns true the HandlerList will continue to iterate // over the request handlers. If false is returned the HandlerList // will stop iterating. // // Should be used if extra logic to be performed between each handler // in the list. This can be used to terminate a list's iteration // based on a condition such as error like, HandlerListStopOnError. // Or for logging like HandlerListLogItem. AfterEachFn func(item HandlerListRunItem) bool } // A NamedHandler is a struct that contains a name and function callback. type NamedHandler struct { Name string Fn func(*Request) } // copy creates a copy of the handler list. func (l *HandlerList) copy() HandlerList { n := HandlerList{ AfterEachFn: l.AfterEachFn, } n.list = append([]NamedHandler{}, l.list...) return n } // Clear clears the handler list. func (l *HandlerList) Clear() { l.list = []NamedHandler{} } // Len returns the number of handlers in the list. func (l *HandlerList) Len() int { return len(l.list) } // PushBack pushes handler f to the back of the handler list. func (l *HandlerList) PushBack(f func(*Request)) { l.list = append(l.list, NamedHandler{"__anonymous", f}) } // PushFront pushes handler f to the front of the handler list. func (l *HandlerList) PushFront(f func(*Request)) { l.list = append([]NamedHandler{{"__anonymous", f}}, l.list...) } // PushBackNamed pushes named handler f to the back of the handler list. func (l *HandlerList) PushBackNamed(n NamedHandler) { l.list = append(l.list, n) } // PushFrontNamed pushes named handler f to the front of the handler list. func (l *HandlerList) PushFrontNamed(n NamedHandler) { l.list = append([]NamedHandler{n}, l.list...) } // Remove removes a NamedHandler n func (l *HandlerList) Remove(n NamedHandler) { newlist := []NamedHandler{} for _, m := range l.list { if m.Name != n.Name { newlist = append(newlist, m) } } l.list = newlist } // Run executes all handlers in the list with a given request object. func (l *HandlerList) Run(r *Request) { for i, h := range l.list { h.Fn(r) item := HandlerListRunItem{ Index: i, Handler: h, Request: r, } if l.AfterEachFn != nil && !l.AfterEachFn(item) { return } } } // HandlerListLogItem logs the request handler and the state of the // request's Error value. Always returns true to continue iterating // request handlers in a HandlerList. func HandlerListLogItem(item HandlerListRunItem) bool { if item.Request.Config.Logger == nil { return true } item.Request.Config.Logger.Log("DEBUG: RequestHandler", item.Index, item.Handler.Name, item.Request.Error) return true } // HandlerListStopOnError returns false to stop the HandlerList iterating // over request handlers if Request.Error is not nil. True otherwise // to continue iterating. func HandlerListStopOnError(item HandlerListRunItem) bool { return item.Request.Error == nil } // MakeAddToUserAgentHandler will add the name/version pair to the User-Agent request // header. If the extra parameters are provided they will be added as metadata to the // name/version pair resulting in the following format. // "name/version (extra0; extra1; ...)" // The user agent part will be concatenated with this current request's user agent string. func MakeAddToUserAgentHandler(name, version string, extra ...string) func(*Request) { ua := fmt.Sprintf("%s/%s", name, version) if len(extra) > 0 { ua += fmt.Sprintf(" (%s)", strings.Join(extra, "; ")) } return func(r *Request) { AddToUserAgent(r, ua) } } // MakeAddToUserAgentFreeFormHandler adds the input to the User-Agent request header. // The input string will be concatenated with the current request's user agent string. func MakeAddToUserAgentFreeFormHandler(s string) func(*Request) { return func(r *Request) { AddToUserAgent(r, s) } } aws-sdk-go-1.4.22/aws/request/handlers_test.go000066400000000000000000000044761300374646400212460ustar00rootroot00000000000000package request_test import ( "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/request" ) func TestHandlerList(t *testing.T) { s := "" r := &request.Request{} l := request.HandlerList{} l.PushBack(func(r *request.Request) { s += "a" r.Data = s }) l.Run(r) assert.Equal(t, "a", s) assert.Equal(t, "a", r.Data) } func TestMultipleHandlers(t *testing.T) { r := &request.Request{} l := request.HandlerList{} l.PushBack(func(r *request.Request) { r.Data = nil }) l.PushFront(func(r *request.Request) { r.Data = aws.Bool(true) }) l.Run(r) if r.Data != nil { t.Error("Expected handler to execute") } } func TestNamedHandlers(t *testing.T) { l := request.HandlerList{} named := request.NamedHandler{Name: "Name", Fn: func(r *request.Request) {}} named2 := request.NamedHandler{Name: "NotName", Fn: func(r *request.Request) {}} l.PushBackNamed(named) l.PushBackNamed(named) l.PushBackNamed(named2) l.PushBack(func(r *request.Request) {}) assert.Equal(t, 4, l.Len()) l.Remove(named) assert.Equal(t, 2, l.Len()) } func TestLoggedHandlers(t *testing.T) { expectedHandlers := []string{"name1", "name2"} l := request.HandlerList{} loggedHandlers := []string{} l.AfterEachFn = request.HandlerListLogItem cfg := aws.Config{Logger: aws.LoggerFunc(func(args ...interface{}) { loggedHandlers = append(loggedHandlers, args[2].(string)) })} named1 := request.NamedHandler{Name: "name1", Fn: func(r *request.Request) {}} named2 := request.NamedHandler{Name: "name2", Fn: func(r *request.Request) {}} l.PushBackNamed(named1) l.PushBackNamed(named2) l.Run(&request.Request{Config: cfg}) assert.Equal(t, expectedHandlers, loggedHandlers) } func TestStopHandlers(t *testing.T) { l := request.HandlerList{} stopAt := 1 l.AfterEachFn = func(item request.HandlerListRunItem) bool { return item.Index != stopAt } called := 0 l.PushBackNamed(request.NamedHandler{Name: "name1", Fn: func(r *request.Request) { called++ }}) l.PushBackNamed(request.NamedHandler{Name: "name2", Fn: func(r *request.Request) { called++ }}) l.PushBackNamed(request.NamedHandler{Name: "name3", Fn: func(r *request.Request) { assert.Fail(t, "third handler should not be called") }}) l.Run(&request.Request{}) assert.Equal(t, 2, called, "Expect only two handlers to be called") } aws-sdk-go-1.4.22/aws/request/http_request.go000066400000000000000000000005461300374646400211300ustar00rootroot00000000000000package request import ( "io" "net/http" "net/url" ) func copyHTTPRequest(r *http.Request, body io.ReadCloser) *http.Request { req := new(http.Request) *req = *r req.URL = &url.URL{} *req.URL = *r.URL req.Body = body req.Header = http.Header{} for k, v := range r.Header { for _, vv := range v { req.Header.Add(k, vv) } } return req } aws-sdk-go-1.4.22/aws/request/http_request_copy_test.go000066400000000000000000000012631300374646400232160ustar00rootroot00000000000000package request import ( "bytes" "io/ioutil" "net/http" "net/url" "sync" "testing" ) func TestRequestCopyRace(t *testing.T) { origReq := &http.Request{URL: &url.URL{}, Header: http.Header{}} origReq.Header.Set("Header", "OrigValue") var wg sync.WaitGroup for i := 0; i < 100; i++ { wg.Add(1) go func() { req := copyHTTPRequest(origReq, ioutil.NopCloser(&bytes.Buffer{})) req.Header.Set("Header", "Value") go func() { req2 := copyHTTPRequest(req, ioutil.NopCloser(&bytes.Buffer{})) req2.Header.Add("Header", "Value2") }() _ = req.Header.Get("Header") wg.Done() }() _ = origReq.Header.Get("Header") } origReq.Header.Get("Header") wg.Wait() } aws-sdk-go-1.4.22/aws/request/http_request_retry_test.go000066400000000000000000000015331300374646400234110ustar00rootroot00000000000000// +build go1.5 package request_test import ( "errors" "strings" "testing" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting/mock" "github.com/stretchr/testify/assert" ) func TestRequestCancelRetry(t *testing.T) { c := make(chan struct{}) reqNum := 0 s := mock.NewMockClient(aws.NewConfig().WithMaxRetries(10)) s.Handlers.Validate.Clear() s.Handlers.Unmarshal.Clear() s.Handlers.UnmarshalMeta.Clear() s.Handlers.UnmarshalError.Clear() s.Handlers.Send.PushFront(func(r *request.Request) { reqNum++ r.Error = errors.New("net/http: canceled") }) out := &testData{} r := s.NewRequest(&request.Operation{Name: "Operation"}, nil, out) r.HTTPRequest.Cancel = c close(c) err := r.Send() assert.True(t, strings.Contains(err.Error(), "canceled")) assert.Equal(t, 1, reqNum) } aws-sdk-go-1.4.22/aws/request/offset_reader.go000066400000000000000000000022761300374646400212130ustar00rootroot00000000000000package request import ( "io" "sync" ) // offsetReader is a thread-safe io.ReadCloser to prevent racing // with retrying requests type offsetReader struct { buf io.ReadSeeker lock sync.Mutex closed bool } func newOffsetReader(buf io.ReadSeeker, offset int64) *offsetReader { reader := &offsetReader{} buf.Seek(offset, 0) reader.buf = buf return reader } // Close will close the instance of the offset reader's access to // the underlying io.ReadSeeker. func (o *offsetReader) Close() error { o.lock.Lock() defer o.lock.Unlock() o.closed = true return nil } // Read is a thread-safe read of the underlying io.ReadSeeker func (o *offsetReader) Read(p []byte) (int, error) { o.lock.Lock() defer o.lock.Unlock() if o.closed { return 0, io.EOF } return o.buf.Read(p) } // Seek is a thread-safe seeking operation. func (o *offsetReader) Seek(offset int64, whence int) (int64, error) { o.lock.Lock() defer o.lock.Unlock() return o.buf.Seek(offset, whence) } // CloseAndCopy will return a new offsetReader with a copy of the old buffer // and close the old buffer. func (o *offsetReader) CloseAndCopy(offset int64) *offsetReader { o.Close() return newOffsetReader(o.buf, offset) } aws-sdk-go-1.4.22/aws/request/offset_reader_test.go000066400000000000000000000055361300374646400222540ustar00rootroot00000000000000package request import ( "bytes" "io" "math/rand" "sync" "testing" "time" "github.com/stretchr/testify/assert" ) func TestOffsetReaderRead(t *testing.T) { buf := []byte("testData") reader := &offsetReader{buf: bytes.NewReader(buf)} tempBuf := make([]byte, len(buf)) n, err := reader.Read(tempBuf) assert.Equal(t, n, len(buf)) assert.Nil(t, err) assert.Equal(t, buf, tempBuf) } func TestOffsetReaderSeek(t *testing.T) { buf := []byte("testData") reader := newOffsetReader(bytes.NewReader(buf), 0) orig, err := reader.Seek(0, 1) assert.NoError(t, err) assert.Equal(t, int64(0), orig) n, err := reader.Seek(0, 2) assert.NoError(t, err) assert.Equal(t, int64(len(buf)), n) n, err = reader.Seek(orig, 0) assert.NoError(t, err) assert.Equal(t, int64(0), n) } func TestOffsetReaderClose(t *testing.T) { buf := []byte("testData") reader := &offsetReader{buf: bytes.NewReader(buf)} err := reader.Close() assert.Nil(t, err) tempBuf := make([]byte, len(buf)) n, err := reader.Read(tempBuf) assert.Equal(t, n, 0) assert.Equal(t, err, io.EOF) } func TestOffsetReaderCloseAndCopy(t *testing.T) { buf := []byte("testData") tempBuf := make([]byte, len(buf)) reader := &offsetReader{buf: bytes.NewReader(buf)} newReader := reader.CloseAndCopy(0) n, err := reader.Read(tempBuf) assert.Equal(t, n, 0) assert.Equal(t, err, io.EOF) n, err = newReader.Read(tempBuf) assert.Equal(t, n, len(buf)) assert.Nil(t, err) assert.Equal(t, buf, tempBuf) } func TestOffsetReaderCloseAndCopyOffset(t *testing.T) { buf := []byte("testData") tempBuf := make([]byte, len(buf)) reader := &offsetReader{buf: bytes.NewReader(buf)} newReader := reader.CloseAndCopy(4) n, err := newReader.Read(tempBuf) assert.Equal(t, n, len(buf)-4) assert.Nil(t, err) expected := []byte{'D', 'a', 't', 'a', 0, 0, 0, 0} assert.Equal(t, expected, tempBuf) } func TestOffsetReaderRace(t *testing.T) { wg := sync.WaitGroup{} f := func(reader *offsetReader) { defer wg.Done() var err error buf := make([]byte, 1) _, err = reader.Read(buf) for err != io.EOF { _, err = reader.Read(buf) } } closeFn := func(reader *offsetReader) { defer wg.Done() time.Sleep(time.Duration(rand.Intn(20)+1) * time.Millisecond) reader.Close() } for i := 0; i < 50; i++ { reader := &offsetReader{buf: bytes.NewReader(make([]byte, 1024*1024))} wg.Add(1) go f(reader) wg.Add(1) go closeFn(reader) } wg.Wait() } func BenchmarkOffsetReader(b *testing.B) { bufSize := 1024 * 1024 * 100 buf := make([]byte, bufSize) reader := &offsetReader{buf: bytes.NewReader(buf)} tempBuf := make([]byte, 1024) for i := 0; i < b.N; i++ { reader.Read(tempBuf) } } func BenchmarkBytesReader(b *testing.B) { bufSize := 1024 * 1024 * 100 buf := make([]byte, bufSize) reader := bytes.NewReader(buf) tempBuf := make([]byte, 1024) for i := 0; i < b.N; i++ { reader.Read(tempBuf) } } aws-sdk-go-1.4.22/aws/request/request.go000066400000000000000000000224661300374646400200760ustar00rootroot00000000000000package request import ( "bytes" "fmt" "io" "net/http" "net/url" "reflect" "strings" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/client/metadata" ) // A Request is the service request to be made. type Request struct { Config aws.Config ClientInfo metadata.ClientInfo Handlers Handlers Retryer Time time.Time ExpireTime time.Duration Operation *Operation HTTPRequest *http.Request HTTPResponse *http.Response Body io.ReadSeeker BodyStart int64 // offset from beginning of Body that the request body starts Params interface{} Error error Data interface{} RequestID string RetryCount int Retryable *bool RetryDelay time.Duration NotHoist bool SignedHeaderVals http.Header LastSignedAt time.Time built bool // Need to persist an intermideant body betweend the input Body and HTTP // request body because the HTTP Client's transport can maintain a reference // to the HTTP request's body after the client has returned. This value is // safe to use concurrently and rewraps the input Body for each HTTP request. safeBody *offsetReader } // An Operation is the service API operation to be made. type Operation struct { Name string HTTPMethod string HTTPPath string *Paginator } // Paginator keeps track of pagination configuration for an API operation. type Paginator struct { InputTokens []string OutputTokens []string LimitToken string TruncationToken string } // New returns a new Request pointer for the service API // operation and parameters. // // Params is any value of input parameters to be the request payload. // Data is pointer value to an object which the request's response // payload will be deserialized to. func New(cfg aws.Config, clientInfo metadata.ClientInfo, handlers Handlers, retryer Retryer, operation *Operation, params interface{}, data interface{}) *Request { method := operation.HTTPMethod if method == "" { method = "POST" } httpReq, _ := http.NewRequest(method, "", nil) var err error httpReq.URL, err = url.Parse(clientInfo.Endpoint + operation.HTTPPath) if err != nil { httpReq.URL = &url.URL{} err = awserr.New("InvalidEndpointURL", "invalid endpoint uri", err) } r := &Request{ Config: cfg, ClientInfo: clientInfo, Handlers: handlers.Copy(), Retryer: retryer, Time: time.Now(), ExpireTime: 0, Operation: operation, HTTPRequest: httpReq, Body: nil, Params: params, Error: err, Data: data, } r.SetBufferBody([]byte{}) return r } // WillRetry returns if the request's can be retried. func (r *Request) WillRetry() bool { return r.Error != nil && aws.BoolValue(r.Retryable) && r.RetryCount < r.MaxRetries() } // ParamsFilled returns if the request's parameters have been populated // and the parameters are valid. False is returned if no parameters are // provided or invalid. func (r *Request) ParamsFilled() bool { return r.Params != nil && reflect.ValueOf(r.Params).Elem().IsValid() } // DataFilled returns true if the request's data for response deserialization // target has been set and is a valid. False is returned if data is not // set, or is invalid. func (r *Request) DataFilled() bool { return r.Data != nil && reflect.ValueOf(r.Data).Elem().IsValid() } // SetBufferBody will set the request's body bytes that will be sent to // the service API. func (r *Request) SetBufferBody(buf []byte) { r.SetReaderBody(bytes.NewReader(buf)) } // SetStringBody sets the body of the request to be backed by a string. func (r *Request) SetStringBody(s string) { r.SetReaderBody(strings.NewReader(s)) } // SetReaderBody will set the request's body reader. func (r *Request) SetReaderBody(reader io.ReadSeeker) { r.Body = reader r.ResetBody() } // Presign returns the request's signed URL. Error will be returned // if the signing fails. func (r *Request) Presign(expireTime time.Duration) (string, error) { r.ExpireTime = expireTime r.NotHoist = false r.Sign() if r.Error != nil { return "", r.Error } return r.HTTPRequest.URL.String(), nil } // PresignRequest behaves just like presign, but hoists all headers and signs them. // Also returns the signed hash back to the user func (r *Request) PresignRequest(expireTime time.Duration) (string, http.Header, error) { r.ExpireTime = expireTime r.NotHoist = true r.Sign() if r.Error != nil { return "", nil, r.Error } return r.HTTPRequest.URL.String(), r.SignedHeaderVals, nil } func debugLogReqError(r *Request, stage string, retrying bool, err error) { if !r.Config.LogLevel.Matches(aws.LogDebugWithRequestErrors) { return } retryStr := "not retrying" if retrying { retryStr = "will retry" } r.Config.Logger.Log(fmt.Sprintf("DEBUG: %s %s/%s failed, %s, error %v", stage, r.ClientInfo.ServiceName, r.Operation.Name, retryStr, err)) } // Build will build the request's object so it can be signed and sent // to the service. Build will also validate all the request's parameters. // Anny additional build Handlers set on this request will be run // in the order they were set. // // The request will only be built once. Multiple calls to build will have // no effect. // // If any Validate or Build errors occur the build will stop and the error // which occurred will be returned. func (r *Request) Build() error { if !r.built { r.Handlers.Validate.Run(r) if r.Error != nil { debugLogReqError(r, "Validate Request", false, r.Error) return r.Error } r.Handlers.Build.Run(r) if r.Error != nil { debugLogReqError(r, "Build Request", false, r.Error) return r.Error } r.built = true } return r.Error } // Sign will sign the request returning error if errors are encountered. // // Send will build the request prior to signing. All Sign Handlers will // be executed in the order they were set. func (r *Request) Sign() error { r.Build() if r.Error != nil { debugLogReqError(r, "Build Request", false, r.Error) return r.Error } r.Handlers.Sign.Run(r) return r.Error } // ResetBody rewinds the request body backto its starting position, and // set's the HTTP Request body reference. When the body is read prior // to being sent in the HTTP request it will need to be rewound. func (r *Request) ResetBody() { if r.safeBody != nil { r.safeBody.Close() } r.safeBody = newOffsetReader(r.Body, r.BodyStart) r.HTTPRequest.Body = r.safeBody } // GetBody will return an io.ReadSeeker of the Request's underlying // input body with a concurrency safe wrapper. func (r *Request) GetBody() io.ReadSeeker { return r.safeBody } // Send will send the request returning error if errors are encountered. // // Send will sign the request prior to sending. All Send Handlers will // be executed in the order they were set. // // Canceling a request is non-deterministic. If a request has been canceled, // then the transport will choose, randomly, one of the state channels during // reads or getting the connection. // // readLoop() and getConn(req *Request, cm connectMethod) // https://github.com/golang/go/blob/master/src/net/http/transport.go // // Send will not close the request.Request's body. func (r *Request) Send() error { for { if aws.BoolValue(r.Retryable) { if r.Config.LogLevel.Matches(aws.LogDebugWithRequestRetries) { r.Config.Logger.Log(fmt.Sprintf("DEBUG: Retrying Request %s/%s, attempt %d", r.ClientInfo.ServiceName, r.Operation.Name, r.RetryCount)) } // The previous http.Request will have a reference to the r.Body // and the HTTP Client's Transport may still be reading from // the request's body even though the Client's Do returned. r.HTTPRequest = copyHTTPRequest(r.HTTPRequest, nil) r.ResetBody() // Closing response body to ensure that no response body is leaked // between retry attempts. if r.HTTPResponse != nil && r.HTTPResponse.Body != nil { r.HTTPResponse.Body.Close() } } r.Sign() if r.Error != nil { return r.Error } r.Retryable = nil r.Handlers.Send.Run(r) if r.Error != nil { if strings.Contains(r.Error.Error(), "net/http: request canceled") { return r.Error } err := r.Error r.Handlers.Retry.Run(r) r.Handlers.AfterRetry.Run(r) if r.Error != nil { debugLogReqError(r, "Send Request", false, r.Error) return r.Error } debugLogReqError(r, "Send Request", true, err) continue } r.Handlers.UnmarshalMeta.Run(r) r.Handlers.ValidateResponse.Run(r) if r.Error != nil { err := r.Error r.Handlers.UnmarshalError.Run(r) r.Handlers.Retry.Run(r) r.Handlers.AfterRetry.Run(r) if r.Error != nil { debugLogReqError(r, "Validate Response", false, r.Error) return r.Error } debugLogReqError(r, "Validate Response", true, err) continue } r.Handlers.Unmarshal.Run(r) if r.Error != nil { err := r.Error r.Handlers.Retry.Run(r) r.Handlers.AfterRetry.Run(r) if r.Error != nil { debugLogReqError(r, "Unmarshal Response", false, r.Error) return r.Error } debugLogReqError(r, "Unmarshal Response", true, err) continue } break } return nil } // AddToUserAgent adds the string to the end of the request's current user agent. func AddToUserAgent(r *Request, s string) { curUA := r.HTTPRequest.Header.Get("User-Agent") if len(curUA) > 0 { s = curUA + " " + s } r.HTTPRequest.Header.Set("User-Agent", s) } aws-sdk-go-1.4.22/aws/request/request_1_6_test.go000066400000000000000000000014561300374646400215760ustar00rootroot00000000000000// +build go1.6 package request_test import ( "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/defaults" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/endpoints" ) // go version 1.4 and 1.5 do not return an error. Version 1.5 will url encode // the uri while 1.4 will not func TestRequestInvalidEndpoint(t *testing.T) { endpoint, _ := endpoints.NormalizeEndpoint("localhost:80 ", "test-service", "test-region", false, false) r := request.New( aws.Config{}, metadata.ClientInfo{Endpoint: endpoint}, defaults.Handlers(), client.DefaultRetryer{}, &request.Operation{}, nil, nil, ) assert.Error(t, r.Error) } aws-sdk-go-1.4.22/aws/request/request_pagination.go000066400000000000000000000053311300374646400222770ustar00rootroot00000000000000package request import ( "reflect" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awsutil" ) //type Paginater interface { // HasNextPage() bool // NextPage() *Request // EachPage(fn func(data interface{}, isLastPage bool) (shouldContinue bool)) error //} // HasNextPage returns true if this request has more pages of data available. func (r *Request) HasNextPage() bool { return len(r.nextPageTokens()) > 0 } // nextPageTokens returns the tokens to use when asking for the next page of // data. func (r *Request) nextPageTokens() []interface{} { if r.Operation.Paginator == nil { return nil } if r.Operation.TruncationToken != "" { tr, _ := awsutil.ValuesAtPath(r.Data, r.Operation.TruncationToken) if len(tr) == 0 { return nil } switch v := tr[0].(type) { case *bool: if !aws.BoolValue(v) { return nil } case bool: if v == false { return nil } } } tokens := []interface{}{} tokenAdded := false for _, outToken := range r.Operation.OutputTokens { v, _ := awsutil.ValuesAtPath(r.Data, outToken) if len(v) > 0 { tokens = append(tokens, v[0]) tokenAdded = true } else { tokens = append(tokens, nil) } } if !tokenAdded { return nil } return tokens } // NextPage returns a new Request that can be executed to return the next // page of result data. Call .Send() on this request to execute it. func (r *Request) NextPage() *Request { tokens := r.nextPageTokens() if len(tokens) == 0 { return nil } data := reflect.New(reflect.TypeOf(r.Data).Elem()).Interface() nr := New(r.Config, r.ClientInfo, r.Handlers, r.Retryer, r.Operation, awsutil.CopyOf(r.Params), data) for i, intok := range nr.Operation.InputTokens { awsutil.SetValueAtPath(nr.Params, intok, tokens[i]) } return nr } // EachPage iterates over each page of a paginated request object. The fn // parameter should be a function with the following sample signature: // // func(page *T, lastPage bool) bool { // return true // return false to stop iterating // } // // Where "T" is the structure type matching the output structure of the given // operation. For example, a request object generated by // DynamoDB.ListTablesRequest() would expect to see dynamodb.ListTablesOutput // as the structure "T". The lastPage value represents whether the page is // the last page of data or not. The return value of this function should // return true to keep iterating or false to stop. func (r *Request) EachPage(fn func(data interface{}, isLastPage bool) (shouldContinue bool)) error { for page := r; page != nil; page = page.NextPage() { if err := page.Send(); err != nil { return err } if getNextPage := fn(page.Data, !page.HasNextPage()); !getNextPage { return page.Error } } return nil } aws-sdk-go-1.4.22/aws/request/request_pagination_test.go000066400000000000000000000331771300374646400233470ustar00rootroot00000000000000package request_test import ( "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/dynamodb" "github.com/aws/aws-sdk-go/service/route53" "github.com/aws/aws-sdk-go/service/s3" ) // Use DynamoDB methods for simplicity func TestPaginationQueryPage(t *testing.T) { db := dynamodb.New(unit.Session) tokens, pages, numPages, gotToEnd := []map[string]*dynamodb.AttributeValue{}, []map[string]*dynamodb.AttributeValue{}, 0, false reqNum := 0 resps := []*dynamodb.QueryOutput{ { LastEvaluatedKey: map[string]*dynamodb.AttributeValue{"key": {S: aws.String("key1")}}, Count: aws.Int64(1), Items: []map[string]*dynamodb.AttributeValue{ { "key": {S: aws.String("key1")}, }, }, }, { LastEvaluatedKey: map[string]*dynamodb.AttributeValue{"key": {S: aws.String("key2")}}, Count: aws.Int64(1), Items: []map[string]*dynamodb.AttributeValue{ { "key": {S: aws.String("key2")}, }, }, }, { LastEvaluatedKey: map[string]*dynamodb.AttributeValue{}, Count: aws.Int64(1), Items: []map[string]*dynamodb.AttributeValue{ { "key": {S: aws.String("key3")}, }, }, }, } db.Handlers.Send.Clear() // mock sending db.Handlers.Unmarshal.Clear() db.Handlers.UnmarshalMeta.Clear() db.Handlers.ValidateResponse.Clear() db.Handlers.Build.PushBack(func(r *request.Request) { in := r.Params.(*dynamodb.QueryInput) if in == nil { tokens = append(tokens, nil) } else if len(in.ExclusiveStartKey) != 0 { tokens = append(tokens, in.ExclusiveStartKey) } }) db.Handlers.Unmarshal.PushBack(func(r *request.Request) { r.Data = resps[reqNum] reqNum++ }) params := &dynamodb.QueryInput{ Limit: aws.Int64(2), TableName: aws.String("tablename"), } err := db.QueryPages(params, func(p *dynamodb.QueryOutput, last bool) bool { numPages++ for _, item := range p.Items { pages = append(pages, item) } if last { if gotToEnd { assert.Fail(t, "last=true happened twice") } gotToEnd = true } return true }) assert.Nil(t, err) assert.Equal(t, []map[string]*dynamodb.AttributeValue{ {"key": {S: aws.String("key1")}}, {"key": {S: aws.String("key2")}}, }, tokens) assert.Equal(t, []map[string]*dynamodb.AttributeValue{ {"key": {S: aws.String("key1")}}, {"key": {S: aws.String("key2")}}, {"key": {S: aws.String("key3")}}, }, pages) assert.Equal(t, 3, numPages) assert.True(t, gotToEnd) assert.Nil(t, params.ExclusiveStartKey) } // Use DynamoDB methods for simplicity func TestPagination(t *testing.T) { db := dynamodb.New(unit.Session) tokens, pages, numPages, gotToEnd := []string{}, []string{}, 0, false reqNum := 0 resps := []*dynamodb.ListTablesOutput{ {TableNames: []*string{aws.String("Table1"), aws.String("Table2")}, LastEvaluatedTableName: aws.String("Table2")}, {TableNames: []*string{aws.String("Table3"), aws.String("Table4")}, LastEvaluatedTableName: aws.String("Table4")}, {TableNames: []*string{aws.String("Table5")}}, } db.Handlers.Send.Clear() // mock sending db.Handlers.Unmarshal.Clear() db.Handlers.UnmarshalMeta.Clear() db.Handlers.ValidateResponse.Clear() db.Handlers.Build.PushBack(func(r *request.Request) { in := r.Params.(*dynamodb.ListTablesInput) if in == nil { tokens = append(tokens, "") } else if in.ExclusiveStartTableName != nil { tokens = append(tokens, *in.ExclusiveStartTableName) } }) db.Handlers.Unmarshal.PushBack(func(r *request.Request) { r.Data = resps[reqNum] reqNum++ }) params := &dynamodb.ListTablesInput{Limit: aws.Int64(2)} err := db.ListTablesPages(params, func(p *dynamodb.ListTablesOutput, last bool) bool { numPages++ for _, t := range p.TableNames { pages = append(pages, *t) } if last { if gotToEnd { assert.Fail(t, "last=true happened twice") } gotToEnd = true } return true }) assert.Equal(t, []string{"Table2", "Table4"}, tokens) assert.Equal(t, []string{"Table1", "Table2", "Table3", "Table4", "Table5"}, pages) assert.Equal(t, 3, numPages) assert.True(t, gotToEnd) assert.Nil(t, err) assert.Nil(t, params.ExclusiveStartTableName) } // Use DynamoDB methods for simplicity func TestPaginationEachPage(t *testing.T) { db := dynamodb.New(unit.Session) tokens, pages, numPages, gotToEnd := []string{}, []string{}, 0, false reqNum := 0 resps := []*dynamodb.ListTablesOutput{ {TableNames: []*string{aws.String("Table1"), aws.String("Table2")}, LastEvaluatedTableName: aws.String("Table2")}, {TableNames: []*string{aws.String("Table3"), aws.String("Table4")}, LastEvaluatedTableName: aws.String("Table4")}, {TableNames: []*string{aws.String("Table5")}}, } db.Handlers.Send.Clear() // mock sending db.Handlers.Unmarshal.Clear() db.Handlers.UnmarshalMeta.Clear() db.Handlers.ValidateResponse.Clear() db.Handlers.Build.PushBack(func(r *request.Request) { in := r.Params.(*dynamodb.ListTablesInput) if in == nil { tokens = append(tokens, "") } else if in.ExclusiveStartTableName != nil { tokens = append(tokens, *in.ExclusiveStartTableName) } }) db.Handlers.Unmarshal.PushBack(func(r *request.Request) { r.Data = resps[reqNum] reqNum++ }) params := &dynamodb.ListTablesInput{Limit: aws.Int64(2)} req, _ := db.ListTablesRequest(params) err := req.EachPage(func(p interface{}, last bool) bool { numPages++ for _, t := range p.(*dynamodb.ListTablesOutput).TableNames { pages = append(pages, *t) } if last { if gotToEnd { assert.Fail(t, "last=true happened twice") } gotToEnd = true } return true }) assert.Equal(t, []string{"Table2", "Table4"}, tokens) assert.Equal(t, []string{"Table1", "Table2", "Table3", "Table4", "Table5"}, pages) assert.Equal(t, 3, numPages) assert.True(t, gotToEnd) assert.Nil(t, err) } // Use DynamoDB methods for simplicity func TestPaginationEarlyExit(t *testing.T) { db := dynamodb.New(unit.Session) numPages, gotToEnd := 0, false reqNum := 0 resps := []*dynamodb.ListTablesOutput{ {TableNames: []*string{aws.String("Table1"), aws.String("Table2")}, LastEvaluatedTableName: aws.String("Table2")}, {TableNames: []*string{aws.String("Table3"), aws.String("Table4")}, LastEvaluatedTableName: aws.String("Table4")}, {TableNames: []*string{aws.String("Table5")}}, } db.Handlers.Send.Clear() // mock sending db.Handlers.Unmarshal.Clear() db.Handlers.UnmarshalMeta.Clear() db.Handlers.ValidateResponse.Clear() db.Handlers.Unmarshal.PushBack(func(r *request.Request) { r.Data = resps[reqNum] reqNum++ }) params := &dynamodb.ListTablesInput{Limit: aws.Int64(2)} err := db.ListTablesPages(params, func(p *dynamodb.ListTablesOutput, last bool) bool { numPages++ if numPages == 2 { return false } if last { if gotToEnd { assert.Fail(t, "last=true happened twice") } gotToEnd = true } return true }) assert.Equal(t, 2, numPages) assert.False(t, gotToEnd) assert.Nil(t, err) } func TestSkipPagination(t *testing.T) { client := s3.New(unit.Session) client.Handlers.Send.Clear() // mock sending client.Handlers.Unmarshal.Clear() client.Handlers.UnmarshalMeta.Clear() client.Handlers.ValidateResponse.Clear() client.Handlers.Unmarshal.PushBack(func(r *request.Request) { r.Data = &s3.HeadBucketOutput{} }) req, _ := client.HeadBucketRequest(&s3.HeadBucketInput{Bucket: aws.String("bucket")}) numPages, gotToEnd := 0, false req.EachPage(func(p interface{}, last bool) bool { numPages++ if last { gotToEnd = true } return true }) assert.Equal(t, 1, numPages) assert.True(t, gotToEnd) } // Use S3 for simplicity func TestPaginationTruncation(t *testing.T) { client := s3.New(unit.Session) reqNum := 0 resps := []*s3.ListObjectsOutput{ {IsTruncated: aws.Bool(true), Contents: []*s3.Object{{Key: aws.String("Key1")}}}, {IsTruncated: aws.Bool(true), Contents: []*s3.Object{{Key: aws.String("Key2")}}}, {IsTruncated: aws.Bool(false), Contents: []*s3.Object{{Key: aws.String("Key3")}}}, {IsTruncated: aws.Bool(true), Contents: []*s3.Object{{Key: aws.String("Key4")}}}, } client.Handlers.Send.Clear() // mock sending client.Handlers.Unmarshal.Clear() client.Handlers.UnmarshalMeta.Clear() client.Handlers.ValidateResponse.Clear() client.Handlers.Unmarshal.PushBack(func(r *request.Request) { r.Data = resps[reqNum] reqNum++ }) params := &s3.ListObjectsInput{Bucket: aws.String("bucket")} results := []string{} err := client.ListObjectsPages(params, func(p *s3.ListObjectsOutput, last bool) bool { results = append(results, *p.Contents[0].Key) return true }) assert.Equal(t, []string{"Key1", "Key2", "Key3"}, results) assert.Nil(t, err) // Try again without truncation token at all reqNum = 0 resps[1].IsTruncated = nil resps[2].IsTruncated = aws.Bool(true) results = []string{} err = client.ListObjectsPages(params, func(p *s3.ListObjectsOutput, last bool) bool { results = append(results, *p.Contents[0].Key) return true }) assert.Equal(t, []string{"Key1", "Key2"}, results) assert.Nil(t, err) } func TestPaginationNilToken(t *testing.T) { client := route53.New(unit.Session) reqNum := 0 resps := []*route53.ListResourceRecordSetsOutput{ { ResourceRecordSets: []*route53.ResourceRecordSet{ {Name: aws.String("first.example.com.")}, }, IsTruncated: aws.Bool(true), NextRecordName: aws.String("second.example.com."), NextRecordType: aws.String("MX"), NextRecordIdentifier: aws.String("second"), MaxItems: aws.String("1"), }, { ResourceRecordSets: []*route53.ResourceRecordSet{ {Name: aws.String("second.example.com.")}, }, IsTruncated: aws.Bool(true), NextRecordName: aws.String("third.example.com."), NextRecordType: aws.String("MX"), MaxItems: aws.String("1"), }, { ResourceRecordSets: []*route53.ResourceRecordSet{ {Name: aws.String("third.example.com.")}, }, IsTruncated: aws.Bool(false), MaxItems: aws.String("1"), }, } client.Handlers.Send.Clear() // mock sending client.Handlers.Unmarshal.Clear() client.Handlers.UnmarshalMeta.Clear() client.Handlers.ValidateResponse.Clear() idents := []string{} client.Handlers.Build.PushBack(func(r *request.Request) { p := r.Params.(*route53.ListResourceRecordSetsInput) idents = append(idents, aws.StringValue(p.StartRecordIdentifier)) }) client.Handlers.Unmarshal.PushBack(func(r *request.Request) { r.Data = resps[reqNum] reqNum++ }) params := &route53.ListResourceRecordSetsInput{ HostedZoneId: aws.String("id-zone"), } results := []string{} err := client.ListResourceRecordSetsPages(params, func(p *route53.ListResourceRecordSetsOutput, last bool) bool { results = append(results, *p.ResourceRecordSets[0].Name) return true }) assert.NoError(t, err) assert.Equal(t, []string{"", "second", ""}, idents) assert.Equal(t, []string{"first.example.com.", "second.example.com.", "third.example.com."}, results) } // Benchmarks var benchResps = []*dynamodb.ListTablesOutput{ {TableNames: []*string{aws.String("TABLE"), aws.String("NXT")}, LastEvaluatedTableName: aws.String("NXT")}, {TableNames: []*string{aws.String("TABLE"), aws.String("NXT")}, LastEvaluatedTableName: aws.String("NXT")}, {TableNames: []*string{aws.String("TABLE"), aws.String("NXT")}, LastEvaluatedTableName: aws.String("NXT")}, {TableNames: []*string{aws.String("TABLE"), aws.String("NXT")}, LastEvaluatedTableName: aws.String("NXT")}, {TableNames: []*string{aws.String("TABLE"), aws.String("NXT")}, LastEvaluatedTableName: aws.String("NXT")}, {TableNames: []*string{aws.String("TABLE"), aws.String("NXT")}, LastEvaluatedTableName: aws.String("NXT")}, {TableNames: []*string{aws.String("TABLE"), aws.String("NXT")}, LastEvaluatedTableName: aws.String("NXT")}, {TableNames: []*string{aws.String("TABLE"), aws.String("NXT")}, LastEvaluatedTableName: aws.String("NXT")}, {TableNames: []*string{aws.String("TABLE"), aws.String("NXT")}, LastEvaluatedTableName: aws.String("NXT")}, {TableNames: []*string{aws.String("TABLE"), aws.String("NXT")}, LastEvaluatedTableName: aws.String("NXT")}, {TableNames: []*string{aws.String("TABLE"), aws.String("NXT")}, LastEvaluatedTableName: aws.String("NXT")}, {TableNames: []*string{aws.String("TABLE"), aws.String("NXT")}, LastEvaluatedTableName: aws.String("NXT")}, {TableNames: []*string{aws.String("TABLE"), aws.String("NXT")}, LastEvaluatedTableName: aws.String("NXT")}, {TableNames: []*string{aws.String("TABLE")}}, } var benchDb = func() *dynamodb.DynamoDB { db := dynamodb.New(unit.Session) db.Handlers.Send.Clear() // mock sending db.Handlers.Unmarshal.Clear() db.Handlers.UnmarshalMeta.Clear() db.Handlers.ValidateResponse.Clear() return db } func BenchmarkCodegenIterator(b *testing.B) { reqNum := 0 db := benchDb() db.Handlers.Unmarshal.PushBack(func(r *request.Request) { r.Data = benchResps[reqNum] reqNum++ }) input := &dynamodb.ListTablesInput{Limit: aws.Int64(2)} iter := func(fn func(*dynamodb.ListTablesOutput, bool) bool) error { page, _ := db.ListTablesRequest(input) for ; page != nil; page = page.NextPage() { page.Send() out := page.Data.(*dynamodb.ListTablesOutput) if result := fn(out, !page.HasNextPage()); page.Error != nil || !result { return page.Error } } return nil } for i := 0; i < b.N; i++ { reqNum = 0 iter(func(p *dynamodb.ListTablesOutput, last bool) bool { return true }) } } func BenchmarkEachPageIterator(b *testing.B) { reqNum := 0 db := benchDb() db.Handlers.Unmarshal.PushBack(func(r *request.Request) { r.Data = benchResps[reqNum] reqNum++ }) input := &dynamodb.ListTablesInput{Limit: aws.Int64(2)} for i := 0; i < b.N; i++ { reqNum = 0 req, _ := db.ListTablesRequest(input) req.EachPage(func(p interface{}, last bool) bool { return true }) } } aws-sdk-go-1.4.22/aws/request/request_test.go000066400000000000000000000305651300374646400211340ustar00rootroot00000000000000package request_test import ( "bytes" "encoding/json" "errors" "fmt" "io" "io/ioutil" "net/http" "runtime" "testing" "time" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting" ) type testData struct { Data string } func body(str string) io.ReadCloser { return ioutil.NopCloser(bytes.NewReader([]byte(str))) } func unmarshal(req *request.Request) { defer req.HTTPResponse.Body.Close() if req.Data != nil { json.NewDecoder(req.HTTPResponse.Body).Decode(req.Data) } return } func unmarshalError(req *request.Request) { bodyBytes, err := ioutil.ReadAll(req.HTTPResponse.Body) if err != nil { req.Error = awserr.New("UnmarshaleError", req.HTTPResponse.Status, err) return } if len(bodyBytes) == 0 { req.Error = awserr.NewRequestFailure( awserr.New("UnmarshaleError", req.HTTPResponse.Status, fmt.Errorf("empty body")), req.HTTPResponse.StatusCode, "", ) return } var jsonErr jsonErrorResponse if err := json.Unmarshal(bodyBytes, &jsonErr); err != nil { req.Error = awserr.New("UnmarshaleError", "JSON unmarshal", err) return } req.Error = awserr.NewRequestFailure( awserr.New(jsonErr.Code, jsonErr.Message, nil), req.HTTPResponse.StatusCode, "", ) } type jsonErrorResponse struct { Code string `json:"__type"` Message string `json:"message"` } // test that retries occur for 5xx status codes func TestRequestRecoverRetry5xx(t *testing.T) { reqNum := 0 reqs := []http.Response{ {StatusCode: 500, Body: body(`{"__type":"UnknownError","message":"An error occurred."}`)}, {StatusCode: 501, Body: body(`{"__type":"UnknownError","message":"An error occurred."}`)}, {StatusCode: 200, Body: body(`{"data":"valid"}`)}, } s := awstesting.NewClient(aws.NewConfig().WithMaxRetries(10)) s.Handlers.Validate.Clear() s.Handlers.Unmarshal.PushBack(unmarshal) s.Handlers.UnmarshalError.PushBack(unmarshalError) s.Handlers.Send.Clear() // mock sending s.Handlers.Send.PushBack(func(r *request.Request) { r.HTTPResponse = &reqs[reqNum] reqNum++ }) out := &testData{} r := s.NewRequest(&request.Operation{Name: "Operation"}, nil, out) err := r.Send() assert.Nil(t, err) assert.Equal(t, 2, int(r.RetryCount)) assert.Equal(t, "valid", out.Data) } // test that retries occur for 4xx status codes with a response type that can be retried - see `shouldRetry` func TestRequestRecoverRetry4xxRetryable(t *testing.T) { reqNum := 0 reqs := []http.Response{ {StatusCode: 400, Body: body(`{"__type":"Throttling","message":"Rate exceeded."}`)}, {StatusCode: 429, Body: body(`{"__type":"ProvisionedThroughputExceededException","message":"Rate exceeded."}`)}, {StatusCode: 200, Body: body(`{"data":"valid"}`)}, } s := awstesting.NewClient(aws.NewConfig().WithMaxRetries(10)) s.Handlers.Validate.Clear() s.Handlers.Unmarshal.PushBack(unmarshal) s.Handlers.UnmarshalError.PushBack(unmarshalError) s.Handlers.Send.Clear() // mock sending s.Handlers.Send.PushBack(func(r *request.Request) { r.HTTPResponse = &reqs[reqNum] reqNum++ }) out := &testData{} r := s.NewRequest(&request.Operation{Name: "Operation"}, nil, out) err := r.Send() assert.Nil(t, err) assert.Equal(t, 2, int(r.RetryCount)) assert.Equal(t, "valid", out.Data) } // test that retries don't occur for 4xx status codes with a response type that can't be retried func TestRequest4xxUnretryable(t *testing.T) { s := awstesting.NewClient(aws.NewConfig().WithMaxRetries(10)) s.Handlers.Validate.Clear() s.Handlers.Unmarshal.PushBack(unmarshal) s.Handlers.UnmarshalError.PushBack(unmarshalError) s.Handlers.Send.Clear() // mock sending s.Handlers.Send.PushBack(func(r *request.Request) { r.HTTPResponse = &http.Response{StatusCode: 401, Body: body(`{"__type":"SignatureDoesNotMatch","message":"Signature does not match."}`)} }) out := &testData{} r := s.NewRequest(&request.Operation{Name: "Operation"}, nil, out) err := r.Send() assert.NotNil(t, err) if e, ok := err.(awserr.RequestFailure); ok { assert.Equal(t, 401, e.StatusCode()) } else { assert.Fail(t, "Expected error to be a service failure") } assert.Equal(t, "SignatureDoesNotMatch", err.(awserr.Error).Code()) assert.Equal(t, "Signature does not match.", err.(awserr.Error).Message()) assert.Equal(t, 0, int(r.RetryCount)) } func TestRequestExhaustRetries(t *testing.T) { delays := []time.Duration{} sleepDelay := func(delay time.Duration) { delays = append(delays, delay) } reqNum := 0 reqs := []http.Response{ {StatusCode: 500, Body: body(`{"__type":"UnknownError","message":"An error occurred."}`)}, {StatusCode: 500, Body: body(`{"__type":"UnknownError","message":"An error occurred."}`)}, {StatusCode: 500, Body: body(`{"__type":"UnknownError","message":"An error occurred."}`)}, {StatusCode: 500, Body: body(`{"__type":"UnknownError","message":"An error occurred."}`)}, } s := awstesting.NewClient(aws.NewConfig().WithSleepDelay(sleepDelay)) s.Handlers.Validate.Clear() s.Handlers.Unmarshal.PushBack(unmarshal) s.Handlers.UnmarshalError.PushBack(unmarshalError) s.Handlers.Send.Clear() // mock sending s.Handlers.Send.PushBack(func(r *request.Request) { r.HTTPResponse = &reqs[reqNum] reqNum++ }) r := s.NewRequest(&request.Operation{Name: "Operation"}, nil, nil) err := r.Send() assert.NotNil(t, err) if e, ok := err.(awserr.RequestFailure); ok { assert.Equal(t, 500, e.StatusCode()) } else { assert.Fail(t, "Expected error to be a service failure") } assert.Equal(t, "UnknownError", err.(awserr.Error).Code()) assert.Equal(t, "An error occurred.", err.(awserr.Error).Message()) assert.Equal(t, 3, int(r.RetryCount)) expectDelays := []struct{ min, max time.Duration }{{30, 59}, {60, 118}, {120, 236}} for i, v := range delays { min := expectDelays[i].min * time.Millisecond max := expectDelays[i].max * time.Millisecond assert.True(t, min <= v && v <= max, "Expect delay to be within range, i:%d, v:%s, min:%s, max:%s", i, v, min, max) } } // test that the request is retried after the credentials are expired. func TestRequestRecoverExpiredCreds(t *testing.T) { reqNum := 0 reqs := []http.Response{ {StatusCode: 400, Body: body(`{"__type":"ExpiredTokenException","message":"expired token"}`)}, {StatusCode: 200, Body: body(`{"data":"valid"}`)}, } s := awstesting.NewClient(&aws.Config{MaxRetries: aws.Int(10), Credentials: credentials.NewStaticCredentials("AKID", "SECRET", "")}) s.Handlers.Validate.Clear() s.Handlers.Unmarshal.PushBack(unmarshal) s.Handlers.UnmarshalError.PushBack(unmarshalError) credExpiredBeforeRetry := false credExpiredAfterRetry := false s.Handlers.AfterRetry.PushBack(func(r *request.Request) { credExpiredAfterRetry = r.Config.Credentials.IsExpired() }) s.Handlers.Sign.Clear() s.Handlers.Sign.PushBack(func(r *request.Request) { r.Config.Credentials.Get() }) s.Handlers.Send.Clear() // mock sending s.Handlers.Send.PushBack(func(r *request.Request) { r.HTTPResponse = &reqs[reqNum] reqNum++ }) out := &testData{} r := s.NewRequest(&request.Operation{Name: "Operation"}, nil, out) err := r.Send() assert.Nil(t, err) assert.False(t, credExpiredBeforeRetry, "Expect valid creds before retry check") assert.True(t, credExpiredAfterRetry, "Expect expired creds after retry check") assert.False(t, s.Config.Credentials.IsExpired(), "Expect valid creds after cred expired recovery") assert.Equal(t, 1, int(r.RetryCount)) assert.Equal(t, "valid", out.Data) } func TestMakeAddtoUserAgentHandler(t *testing.T) { fn := request.MakeAddToUserAgentHandler("name", "version", "extra1", "extra2") r := &request.Request{HTTPRequest: &http.Request{Header: http.Header{}}} r.HTTPRequest.Header.Set("User-Agent", "foo/bar") fn(r) assert.Equal(t, "foo/bar name/version (extra1; extra2)", r.HTTPRequest.Header.Get("User-Agent")) } func TestMakeAddtoUserAgentFreeFormHandler(t *testing.T) { fn := request.MakeAddToUserAgentFreeFormHandler("name/version (extra1; extra2)") r := &request.Request{HTTPRequest: &http.Request{Header: http.Header{}}} r.HTTPRequest.Header.Set("User-Agent", "foo/bar") fn(r) assert.Equal(t, "foo/bar name/version (extra1; extra2)", r.HTTPRequest.Header.Get("User-Agent")) } func TestRequestUserAgent(t *testing.T) { s := awstesting.NewClient(&aws.Config{Region: aws.String("us-east-1")}) // s.Handlers.Validate.Clear() req := s.NewRequest(&request.Operation{Name: "Operation"}, nil, &testData{}) req.HTTPRequest.Header.Set("User-Agent", "foo/bar") assert.NoError(t, req.Build()) expectUA := fmt.Sprintf("foo/bar %s/%s (%s; %s; %s)", aws.SDKName, aws.SDKVersion, runtime.Version(), runtime.GOOS, runtime.GOARCH) assert.Equal(t, expectUA, req.HTTPRequest.Header.Get("User-Agent")) } func TestRequestThrottleRetries(t *testing.T) { delays := []time.Duration{} sleepDelay := func(delay time.Duration) { delays = append(delays, delay) } reqNum := 0 reqs := []http.Response{ {StatusCode: 500, Body: body(`{"__type":"Throttling","message":"An error occurred."}`)}, {StatusCode: 500, Body: body(`{"__type":"Throttling","message":"An error occurred."}`)}, {StatusCode: 500, Body: body(`{"__type":"Throttling","message":"An error occurred."}`)}, {StatusCode: 500, Body: body(`{"__type":"Throttling","message":"An error occurred."}`)}, } s := awstesting.NewClient(aws.NewConfig().WithSleepDelay(sleepDelay)) s.Handlers.Validate.Clear() s.Handlers.Unmarshal.PushBack(unmarshal) s.Handlers.UnmarshalError.PushBack(unmarshalError) s.Handlers.Send.Clear() // mock sending s.Handlers.Send.PushBack(func(r *request.Request) { r.HTTPResponse = &reqs[reqNum] reqNum++ }) r := s.NewRequest(&request.Operation{Name: "Operation"}, nil, nil) err := r.Send() assert.NotNil(t, err) if e, ok := err.(awserr.RequestFailure); ok { assert.Equal(t, 500, e.StatusCode()) } else { assert.Fail(t, "Expected error to be a service failure") } assert.Equal(t, "Throttling", err.(awserr.Error).Code()) assert.Equal(t, "An error occurred.", err.(awserr.Error).Message()) assert.Equal(t, 3, int(r.RetryCount)) expectDelays := []struct{ min, max time.Duration }{{500, 999}, {1000, 1998}, {2000, 3996}} for i, v := range delays { min := expectDelays[i].min * time.Millisecond max := expectDelays[i].max * time.Millisecond assert.True(t, min <= v && v <= max, "Expect delay to be within range, i:%d, v:%s, min:%s, max:%s", i, v, min, max) } } // test that retries occur for request timeouts when response.Body can be nil func TestRequestRecoverTimeoutWithNilBody(t *testing.T) { reqNum := 0 reqs := []*http.Response{ {StatusCode: 0, Body: nil}, // body can be nil when requests time out {StatusCode: 200, Body: body(`{"data":"valid"}`)}, } errors := []error{ errors.New("timeout"), nil, } s := awstesting.NewClient(aws.NewConfig().WithMaxRetries(10)) s.Handlers.Validate.Clear() s.Handlers.Unmarshal.PushBack(unmarshal) s.Handlers.UnmarshalError.PushBack(unmarshalError) s.Handlers.AfterRetry.Clear() // force retry on all errors s.Handlers.AfterRetry.PushBack(func(r *request.Request) { if r.Error != nil { r.Error = nil r.Retryable = aws.Bool(true) r.RetryCount++ } }) s.Handlers.Send.Clear() // mock sending s.Handlers.Send.PushBack(func(r *request.Request) { r.HTTPResponse = reqs[reqNum] r.Error = errors[reqNum] reqNum++ }) out := &testData{} r := s.NewRequest(&request.Operation{Name: "Operation"}, nil, out) err := r.Send() assert.Nil(t, err) assert.Equal(t, 1, int(r.RetryCount)) assert.Equal(t, "valid", out.Data) } func TestRequestRecoverTimeoutWithNilResponse(t *testing.T) { reqNum := 0 reqs := []*http.Response{ nil, {StatusCode: 200, Body: body(`{"data":"valid"}`)}, } errors := []error{ errors.New("timeout"), nil, } s := awstesting.NewClient(aws.NewConfig().WithMaxRetries(10)) s.Handlers.Validate.Clear() s.Handlers.Unmarshal.PushBack(unmarshal) s.Handlers.UnmarshalError.PushBack(unmarshalError) s.Handlers.AfterRetry.Clear() // force retry on all errors s.Handlers.AfterRetry.PushBack(func(r *request.Request) { if r.Error != nil { r.Error = nil r.Retryable = aws.Bool(true) r.RetryCount++ } }) s.Handlers.Send.Clear() // mock sending s.Handlers.Send.PushBack(func(r *request.Request) { r.HTTPResponse = reqs[reqNum] r.Error = errors[reqNum] reqNum++ }) out := &testData{} r := s.NewRequest(&request.Operation{Name: "Operation"}, nil, out) err := r.Send() assert.Nil(t, err) assert.Equal(t, 1, int(r.RetryCount)) assert.Equal(t, "valid", out.Data) } aws-sdk-go-1.4.22/aws/request/retryer.go000066400000000000000000000054461300374646400201010ustar00rootroot00000000000000package request import ( "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" ) // Retryer is an interface to control retry logic for a given service. // The default implementation used by most services is the service.DefaultRetryer // structure, which contains basic retry logic using exponential backoff. type Retryer interface { RetryRules(*Request) time.Duration ShouldRetry(*Request) bool MaxRetries() int } // WithRetryer sets a config Retryer value to the given Config returning it // for chaining. func WithRetryer(cfg *aws.Config, retryer Retryer) *aws.Config { cfg.Retryer = retryer return cfg } // retryableCodes is a collection of service response codes which are retry-able // without any further action. var retryableCodes = map[string]struct{}{ "RequestError": {}, "RequestTimeout": {}, } var throttleCodes = map[string]struct{}{ "ProvisionedThroughputExceededException": {}, "Throttling": {}, "ThrottlingException": {}, "RequestLimitExceeded": {}, "RequestThrottled": {}, "LimitExceededException": {}, // Deleting 10+ DynamoDb tables at once "TooManyRequestsException": {}, // Lambda functions } // credsExpiredCodes is a collection of error codes which signify the credentials // need to be refreshed. Expired tokens require refreshing of credentials, and // resigning before the request can be retried. var credsExpiredCodes = map[string]struct{}{ "ExpiredToken": {}, "ExpiredTokenException": {}, "RequestExpired": {}, // EC2 Only } func isCodeThrottle(code string) bool { _, ok := throttleCodes[code] return ok } func isCodeRetryable(code string) bool { if _, ok := retryableCodes[code]; ok { return true } return isCodeExpiredCreds(code) } func isCodeExpiredCreds(code string) bool { _, ok := credsExpiredCodes[code] return ok } // IsErrorRetryable returns whether the error is retryable, based on its Code. // Returns false if the request has no Error set. func (r *Request) IsErrorRetryable() bool { if r.Error != nil { if err, ok := r.Error.(awserr.Error); ok { return isCodeRetryable(err.Code()) } } return false } // IsErrorThrottle returns whether the error is to be throttled based on its code. // Returns false if the request has no Error set func (r *Request) IsErrorThrottle() bool { if r.Error != nil { if err, ok := r.Error.(awserr.Error); ok { return isCodeThrottle(err.Code()) } } return false } // IsErrorExpired returns whether the error code is a credential expiry error. // Returns false if the request has no Error set. func (r *Request) IsErrorExpired() bool { if r.Error != nil { if err, ok := r.Error.(awserr.Error); ok { return isCodeExpiredCreds(err.Code()) } } return false } aws-sdk-go-1.4.22/aws/request/retryer_test.go000066400000000000000000000004161300374646400211300ustar00rootroot00000000000000package request import ( "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws/awserr" ) func TestRequestThrottling(t *testing.T) { req := Request{} req.Error = awserr.New("Throttling", "", nil) assert.True(t, req.IsErrorThrottle()) } aws-sdk-go-1.4.22/aws/request/validation.go000066400000000000000000000141231300374646400205270ustar00rootroot00000000000000package request import ( "bytes" "fmt" "github.com/aws/aws-sdk-go/aws/awserr" ) const ( // InvalidParameterErrCode is the error code for invalid parameters errors InvalidParameterErrCode = "InvalidParameter" // ParamRequiredErrCode is the error code for required parameter errors ParamRequiredErrCode = "ParamRequiredError" // ParamMinValueErrCode is the error code for fields with too low of a // number value. ParamMinValueErrCode = "ParamMinValueError" // ParamMinLenErrCode is the error code for fields without enough elements. ParamMinLenErrCode = "ParamMinLenError" ) // Validator provides a way for types to perform validation logic on their // input values that external code can use to determine if a type's values // are valid. type Validator interface { Validate() error } // An ErrInvalidParams provides wrapping of invalid parameter errors found when // validating API operation input parameters. type ErrInvalidParams struct { // Context is the base context of the invalid parameter group. Context string errs []ErrInvalidParam } // Add adds a new invalid parameter error to the collection of invalid // parameters. The context of the invalid parameter will be updated to reflect // this collection. func (e *ErrInvalidParams) Add(err ErrInvalidParam) { err.SetContext(e.Context) e.errs = append(e.errs, err) } // AddNested adds the invalid parameter errors from another ErrInvalidParams // value into this collection. The nested errors will have their nested context // updated and base context to reflect the merging. // // Use for nested validations errors. func (e *ErrInvalidParams) AddNested(nestedCtx string, nested ErrInvalidParams) { for _, err := range nested.errs { err.SetContext(e.Context) err.AddNestedContext(nestedCtx) e.errs = append(e.errs, err) } } // Len returns the number of invalid parameter errors func (e ErrInvalidParams) Len() int { return len(e.errs) } // Code returns the code of the error func (e ErrInvalidParams) Code() string { return InvalidParameterErrCode } // Message returns the message of the error func (e ErrInvalidParams) Message() string { return fmt.Sprintf("%d validation error(s) found.", len(e.errs)) } // Error returns the string formatted form of the invalid parameters. func (e ErrInvalidParams) Error() string { w := &bytes.Buffer{} fmt.Fprintf(w, "%s: %s\n", e.Code(), e.Message()) for _, err := range e.errs { fmt.Fprintf(w, "- %s\n", err.Message()) } return w.String() } // OrigErr returns the invalid parameters as a awserr.BatchedErrors value func (e ErrInvalidParams) OrigErr() error { return awserr.NewBatchError( InvalidParameterErrCode, e.Message(), e.OrigErrs()) } // OrigErrs returns a slice of the invalid parameters func (e ErrInvalidParams) OrigErrs() []error { errs := make([]error, len(e.errs)) for i := 0; i < len(errs); i++ { errs[i] = e.errs[i] } return errs } // An ErrInvalidParam represents an invalid parameter error type. type ErrInvalidParam interface { awserr.Error // Field name the error occurred on. Field() string // SetContext updates the context of the error. SetContext(string) // AddNestedContext updates the error's context to include a nested level. AddNestedContext(string) } type errInvalidParam struct { context string nestedContext string field string code string msg string } // Code returns the error code for the type of invalid parameter. func (e *errInvalidParam) Code() string { return e.code } // Message returns the reason the parameter was invalid, and its context. func (e *errInvalidParam) Message() string { return fmt.Sprintf("%s, %s.", e.msg, e.Field()) } // Error returns the string version of the invalid parameter error. func (e *errInvalidParam) Error() string { return fmt.Sprintf("%s: %s", e.code, e.Message()) } // OrigErr returns nil, Implemented for awserr.Error interface. func (e *errInvalidParam) OrigErr() error { return nil } // Field Returns the field and context the error occurred. func (e *errInvalidParam) Field() string { field := e.context if len(field) > 0 { field += "." } if len(e.nestedContext) > 0 { field += fmt.Sprintf("%s.", e.nestedContext) } field += e.field return field } // SetContext updates the base context of the error. func (e *errInvalidParam) SetContext(ctx string) { e.context = ctx } // AddNestedContext prepends a context to the field's path. func (e *errInvalidParam) AddNestedContext(ctx string) { if len(e.nestedContext) == 0 { e.nestedContext = ctx } else { e.nestedContext = fmt.Sprintf("%s.%s", ctx, e.nestedContext) } } // An ErrParamRequired represents an required parameter error. type ErrParamRequired struct { errInvalidParam } // NewErrParamRequired creates a new required parameter error. func NewErrParamRequired(field string) *ErrParamRequired { return &ErrParamRequired{ errInvalidParam{ code: ParamRequiredErrCode, field: field, msg: fmt.Sprintf("missing required field"), }, } } // An ErrParamMinValue represents a minimum value parameter error. type ErrParamMinValue struct { errInvalidParam min float64 } // NewErrParamMinValue creates a new minimum value parameter error. func NewErrParamMinValue(field string, min float64) *ErrParamMinValue { return &ErrParamMinValue{ errInvalidParam: errInvalidParam{ code: ParamMinValueErrCode, field: field, msg: fmt.Sprintf("minimum field value of %v", min), }, min: min, } } // MinValue returns the field's require minimum value. // // float64 is returned for both int and float min values. func (e *ErrParamMinValue) MinValue() float64 { return e.min } // An ErrParamMinLen represents a minimum length parameter error. type ErrParamMinLen struct { errInvalidParam min int } // NewErrParamMinLen creates a new minimum length parameter error. func NewErrParamMinLen(field string, min int) *ErrParamMinLen { return &ErrParamMinLen{ errInvalidParam: errInvalidParam{ code: ParamMinValueErrCode, field: field, msg: fmt.Sprintf("minimum field size of %v", min), }, min: min, } } // MinLen returns the field's required minimum length. func (e *ErrParamMinLen) MinLen() int { return e.min } aws-sdk-go-1.4.22/aws/session/000077500000000000000000000000001300374646400160405ustar00rootroot00000000000000aws-sdk-go-1.4.22/aws/session/doc.go000066400000000000000000000214741300374646400171440ustar00rootroot00000000000000/* Package session provides configuration for the SDK's service clients. Sessions can be shared across all service clients that share the same base configuration. The Session is built from the SDK's default configuration and request handlers. Sessions should be cached when possible, because creating a new Session will load all configuration values from the environment, and config files each time the Session is created. Sharing the Session value across all of your service clients will ensure the configuration is loaded the fewest number of times possible. Concurrency Sessions are safe to use concurrently as long as the Session is not being modified. The SDK will not modify the Session once the Session has been created. Creating service clients concurrently from a shared Session is safe. Sessions from Shared Config Sessions can be created using the method above that will only load the additional config if the AWS_SDK_LOAD_CONFIG environment variable is set. Alternatively you can explicitly create a Session with shared config enabled. To do this you can use NewSessionWithOptions to configure how the Session will be created. Using the NewSessionWithOptions with SharedConfigState set to SharedConfigEnabled will create the session as if the AWS_SDK_LOAD_CONFIG environment variable was set. Creating Sessions When creating Sessions optional aws.Config values can be passed in that will override the default, or loaded config values the Session is being created with. This allows you to provide additional, or case based, configuration as needed. By default NewSession will only load credentials from the shared credentials file (~/.aws/credentials). If the AWS_SDK_LOAD_CONFIG environment variable is set to a truthy value the Session will be created from the configuration values from the shared config (~/.aws/config) and shared credentials (~/.aws/credentials) files. See the section Sessions from Shared Config for more information. Create a Session with the default config and request handlers. With credentials region, and profile loaded from the environment and shared config automatically. Requires the AWS_PROFILE to be set, or "default" is used. // Create Session sess, err := session.NewSession() // Create a Session with a custom region sess, err := session.NewSession(&aws.Config{Region: aws.String("us-east-1")}) // Create a S3 client instance from a session sess, err := session.NewSession() if err != nil { // Handle Session creation error } svc := s3.New(sess) Create Session With Option Overrides In addition to NewSession, Sessions can be created using NewSessionWithOptions. This func allows you to control and override how the Session will be created through code instead of being driven by environment variables only. Use NewSessionWithOptions when you want to provide the config profile, or override the shared config state (AWS_SDK_LOAD_CONFIG). // Equivalent to session.NewSession() sess, err := session.NewSessionWithOptions(session.Options{}) // Specify profile to load for the session's config sess, err := session.NewSessionWithOptions(session.Options{ Profile: "profile_name", }) // Specify profile for config and region for requests sess, err := session.NewSessionWithOptions(session.Options{ Config: aws.Config{Region: aws.String("us-east-1")}, Profile: "profile_name", }) // Force enable Shared Config support sess, err := session.NewSessionWithOptions(session.Options{ SharedConfigState: SharedConfigEnable, }) Adding Handlers You can add handlers to a session for processing HTTP requests. All service clients that use the session inherit the handlers. For example, the following handler logs every request and its payload made by a service client: // Create a session, and add additional handlers for all service // clients created with the Session to inherit. Adds logging handler. sess, err := session.NewSession() sess.Handlers.Send.PushFront(func(r *request.Request) { // Log every request made and its payload logger.Println("Request: %s/%s, Payload: %s", r.ClientInfo.ServiceName, r.Operation, r.Params) }) Deprecated "New" function The New session function has been deprecated because it does not provide good way to return errors that occur when loading the configuration files and values. Because of this, NewSession was created so errors can be retrieved when creating a session fails. Shared Config Fields By default the SDK will only load the shared credentials file's (~/.aws/credentials) credentials values, and all other config is provided by the environment variables, SDK defaults, and user provided aws.Config values. If the AWS_SDK_LOAD_CONFIG environment variable is set, or SharedConfigEnable option is used to create the Session the full shared config values will be loaded. This includes credentials, region, and support for assume role. In addition the Session will load its configuration from both the shared config file (~/.aws/config) and shared credentials file (~/.aws/credentials). Both files have the same format. If both config files are present the configuration from both files will be read. The Session will be created from configuration values from the shared credentials file (~/.aws/credentials) over those in the shared credentials file (~/.aws/config). Credentials are the values the SDK should use for authenticating requests with AWS Services. They arfrom a configuration file will need to include both aws_access_key_id and aws_secret_access_key must be provided together in the same file to be considered valid. The values will be ignored if not a complete group. aws_session_token is an optional field that can be provided if both of the other two fields are also provided. aws_access_key_id = AKID aws_secret_access_key = SECRET aws_session_token = TOKEN Assume Role values allow you to configure the SDK to assume an IAM role using a set of credentials provided in a config file via the source_profile field. Both "role_arn" and "source_profile" are required. The SDK does not support assuming a role with MFA token Via the Session's constructor. You can use the stscreds.AssumeRoleProvider credentials provider to specify custom configuration and support for MFA. role_arn = arn:aws:iam:::role/ source_profile = profile_with_creds external_id = 1234 mfa_serial = not supported! role_session_name = session_name Region is the region the SDK should use for looking up AWS service endpoints and signing requests. region = us-east-1 Environment Variables When a Session is created several environment variables can be set to adjust how the SDK functions, and what configuration data it loads when creating Sessions. All environment values are optional, but some values like credentials require multiple of the values to set or the partial values will be ignored. All environment variable values are strings unless otherwise noted. Environment configuration values. If set both Access Key ID and Secret Access Key must be provided. Session Token and optionally also be provided, but is not required. # Access Key ID AWS_ACCESS_KEY_ID=AKID AWS_ACCESS_KEY=AKID # only read if AWS_ACCESS_KEY_ID is not set. # Secret Access Key AWS_SECRET_ACCESS_KEY=SECRET AWS_SECRET_KEY=SECRET=SECRET # only read if AWS_SECRET_ACCESS_KEY is not set. # Session Token AWS_SESSION_TOKEN=TOKEN Region value will instruct the SDK where to make service API requests to. If is not provided in the environment the region must be provided before a service client request is made. AWS_REGION=us-east-1 # AWS_DEFAULT_REGION is only read if AWS_SDK_LOAD_CONFIG is also set, # and AWS_REGION is not also set. AWS_DEFAULT_REGION=us-east-1 Profile name the SDK should load use when loading shared config from the configuration files. If not provided "default" will be used as the profile name. AWS_PROFILE=my_profile # AWS_DEFAULT_PROFILE is only read if AWS_SDK_LOAD_CONFIG is also set, # and AWS_PROFILE is not also set. AWS_DEFAULT_PROFILE=my_profile SDK load config instructs the SDK to load the shared config in addition to shared credentials. This also expands the configuration loaded so the shared credentials will have parity with the shared config file. This also enables Region and Profile support for the AWS_DEFAULT_REGION and AWS_DEFAULT_PROFILE env values as well. AWS_SDK_LOAD_CONFIG=1 Shared credentials file path can be set to instruct the SDK to use an alternative file for the shared credentials. If not set the file will be loaded from $HOME/.aws/credentials on Linux/Unix based systems, and %USERPROFILE%\.aws\credentials on Windows. AWS_SHARED_CREDENTIALS_FILE=$HOME/my_shared_credentials Shared config file path can be set to instruct the SDK to use an alternative file for the shared config. If not set the file will be loaded from $HOME/.aws/config on Linux/Unix based systems, and %USERPROFILE%\.aws\config on Windows. AWS_CONFIG_FILE=$HOME/my_shared_config */ package session aws-sdk-go-1.4.22/aws/session/env_config.go000066400000000000000000000130171300374646400205060ustar00rootroot00000000000000package session import ( "os" "path/filepath" "strconv" "github.com/aws/aws-sdk-go/aws/credentials" ) // envConfig is a collection of environment values the SDK will read // setup config from. All environment values are optional. But some values // such as credentials require multiple values to be complete or the values // will be ignored. type envConfig struct { // Environment configuration values. If set both Access Key ID and Secret Access // Key must be provided. Session Token and optionally also be provided, but is // not required. // // # Access Key ID // AWS_ACCESS_KEY_ID=AKID // AWS_ACCESS_KEY=AKID # only read if AWS_ACCESS_KEY_ID is not set. // // # Secret Access Key // AWS_SECRET_ACCESS_KEY=SECRET // AWS_SECRET_KEY=SECRET=SECRET # only read if AWS_SECRET_ACCESS_KEY is not set. // // # Session Token // AWS_SESSION_TOKEN=TOKEN Creds credentials.Value // Region value will instruct the SDK where to make service API requests to. If is // not provided in the environment the region must be provided before a service // client request is made. // // AWS_REGION=us-east-1 // // # AWS_DEFAULT_REGION is only read if AWS_SDK_LOAD_CONFIG is also set, // # and AWS_REGION is not also set. // AWS_DEFAULT_REGION=us-east-1 Region string // Profile name the SDK should load use when loading shared configuration from the // shared configuration files. If not provided "default" will be used as the // profile name. // // AWS_PROFILE=my_profile // // # AWS_DEFAULT_PROFILE is only read if AWS_SDK_LOAD_CONFIG is also set, // # and AWS_PROFILE is not also set. // AWS_DEFAULT_PROFILE=my_profile Profile string // SDK load config instructs the SDK to load the shared config in addition to // shared credentials. This also expands the configuration loaded from the shared // credentials to have parity with the shared config file. This also enables // Region and Profile support for the AWS_DEFAULT_REGION and AWS_DEFAULT_PROFILE // env values as well. // // AWS_SDK_LOAD_CONFIG=1 EnableSharedConfig bool // Shared credentials file path can be set to instruct the SDK to use an alternate // file for the shared credentials. If not set the file will be loaded from // $HOME/.aws/credentials on Linux/Unix based systems, and // %USERPROFILE%\.aws\credentials on Windows. // // AWS_SHARED_CREDENTIALS_FILE=$HOME/my_shared_credentials SharedCredentialsFile string // Shared config file path can be set to instruct the SDK to use an alternate // file for the shared config. If not set the file will be loaded from // $HOME/.aws/config on Linux/Unix based systems, and // %USERPROFILE%\.aws\config on Windows. // // AWS_CONFIG_FILE=$HOME/my_shared_config SharedConfigFile string } var ( credAccessEnvKey = []string{ "AWS_ACCESS_KEY_ID", "AWS_ACCESS_KEY", } credSecretEnvKey = []string{ "AWS_SECRET_ACCESS_KEY", "AWS_SECRET_KEY", } credSessionEnvKey = []string{ "AWS_SESSION_TOKEN", } regionEnvKeys = []string{ "AWS_REGION", "AWS_DEFAULT_REGION", // Only read if AWS_SDK_LOAD_CONFIG is also set } profileEnvKeys = []string{ "AWS_PROFILE", "AWS_DEFAULT_PROFILE", // Only read if AWS_SDK_LOAD_CONFIG is also set } ) // loadEnvConfig retrieves the SDK's environment configuration. // See `envConfig` for the values that will be retrieved. // // If the environment variable `AWS_SDK_LOAD_CONFIG` is set to a truthy value // the shared SDK config will be loaded in addition to the SDK's specific // configuration values. func loadEnvConfig() envConfig { enableSharedConfig, _ := strconv.ParseBool(os.Getenv("AWS_SDK_LOAD_CONFIG")) return envConfigLoad(enableSharedConfig) } // loadEnvSharedConfig retrieves the SDK's environment configuration, and the // SDK shared config. See `envConfig` for the values that will be retrieved. // // Loads the shared configuration in addition to the SDK's specific configuration. // This will load the same values as `loadEnvConfig` if the `AWS_SDK_LOAD_CONFIG` // environment variable is set. func loadSharedEnvConfig() envConfig { return envConfigLoad(true) } func envConfigLoad(enableSharedConfig bool) envConfig { cfg := envConfig{} cfg.EnableSharedConfig = enableSharedConfig setFromEnvVal(&cfg.Creds.AccessKeyID, credAccessEnvKey) setFromEnvVal(&cfg.Creds.SecretAccessKey, credSecretEnvKey) setFromEnvVal(&cfg.Creds.SessionToken, credSessionEnvKey) // Require logical grouping of credentials if len(cfg.Creds.AccessKeyID) == 0 || len(cfg.Creds.SecretAccessKey) == 0 { cfg.Creds = credentials.Value{} } else { cfg.Creds.ProviderName = "EnvConfigCredentials" } regionKeys := regionEnvKeys profileKeys := profileEnvKeys if !cfg.EnableSharedConfig { regionKeys = regionKeys[:1] profileKeys = profileKeys[:1] } setFromEnvVal(&cfg.Region, regionKeys) setFromEnvVal(&cfg.Profile, profileKeys) cfg.SharedCredentialsFile = sharedCredentialsFilename() cfg.SharedConfigFile = sharedConfigFilename() return cfg } func setFromEnvVal(dst *string, keys []string) { for _, k := range keys { if v := os.Getenv(k); len(v) > 0 { *dst = v break } } } func sharedCredentialsFilename() string { if name := os.Getenv("AWS_SHARED_CREDENTIALS_FILE"); len(name) > 0 { return name } return filepath.Join(userHomeDir(), ".aws", "credentials") } func sharedConfigFilename() string { if name := os.Getenv("AWS_CONFIG_FILE"); len(name) > 0 { return name } return filepath.Join(userHomeDir(), ".aws", "config") } func userHomeDir() string { homeDir := os.Getenv("HOME") // *nix if len(homeDir) == 0 { // windows homeDir = os.Getenv("USERPROFILE") } return homeDir } aws-sdk-go-1.4.22/aws/session/env_config_test.go000066400000000000000000000137031300374646400215470ustar00rootroot00000000000000package session import ( "os" "path/filepath" "strings" "testing" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/stretchr/testify/assert" ) func TestLoadEnvConfig_Creds(t *testing.T) { env := stashEnv() defer popEnv(env) cases := []struct { Env map[string]string Val credentials.Value }{ { Env: map[string]string{ "AWS_ACCESS_KEY": "AKID", }, Val: credentials.Value{}, }, { Env: map[string]string{ "AWS_ACCESS_KEY_ID": "AKID", }, Val: credentials.Value{}, }, { Env: map[string]string{ "AWS_SECRET_KEY": "SECRET", }, Val: credentials.Value{}, }, { Env: map[string]string{ "AWS_SECRET_ACCESS_KEY": "SECRET", }, Val: credentials.Value{}, }, { Env: map[string]string{ "AWS_ACCESS_KEY_ID": "AKID", "AWS_SECRET_ACCESS_KEY": "SECRET", }, Val: credentials.Value{ AccessKeyID: "AKID", SecretAccessKey: "SECRET", ProviderName: "EnvConfigCredentials", }, }, { Env: map[string]string{ "AWS_ACCESS_KEY": "AKID", "AWS_SECRET_KEY": "SECRET", }, Val: credentials.Value{ AccessKeyID: "AKID", SecretAccessKey: "SECRET", ProviderName: "EnvConfigCredentials", }, }, { Env: map[string]string{ "AWS_ACCESS_KEY": "AKID", "AWS_SECRET_KEY": "SECRET", "AWS_SESSION_TOKEN": "TOKEN", }, Val: credentials.Value{ AccessKeyID: "AKID", SecretAccessKey: "SECRET", SessionToken: "TOKEN", ProviderName: "EnvConfigCredentials", }, }, } for _, c := range cases { os.Clearenv() for k, v := range c.Env { os.Setenv(k, v) } cfg := loadEnvConfig() assert.Equal(t, c.Val, cfg.Creds) } } func TestLoadEnvConfig(t *testing.T) { env := stashEnv() defer popEnv(env) cases := []struct { Env map[string]string Region, Profile string UseSharedConfigCall bool }{ { Env: map[string]string{ "AWS_REGION": "region", "AWS_PROFILE": "profile", }, Region: "region", Profile: "profile", }, { Env: map[string]string{ "AWS_REGION": "region", "AWS_DEFAULT_REGION": "default_region", "AWS_PROFILE": "profile", "AWS_DEFAULT_PROFILE": "default_profile", }, Region: "region", Profile: "profile", }, { Env: map[string]string{ "AWS_REGION": "region", "AWS_DEFAULT_REGION": "default_region", "AWS_PROFILE": "profile", "AWS_DEFAULT_PROFILE": "default_profile", "AWS_SDK_LOAD_CONFIG": "1", }, Region: "region", Profile: "profile", }, { Env: map[string]string{ "AWS_DEFAULT_REGION": "default_region", "AWS_DEFAULT_PROFILE": "default_profile", }, }, { Env: map[string]string{ "AWS_DEFAULT_REGION": "default_region", "AWS_DEFAULT_PROFILE": "default_profile", "AWS_SDK_LOAD_CONFIG": "1", }, Region: "default_region", Profile: "default_profile", }, { Env: map[string]string{ "AWS_REGION": "region", "AWS_PROFILE": "profile", }, Region: "region", Profile: "profile", UseSharedConfigCall: true, }, { Env: map[string]string{ "AWS_REGION": "region", "AWS_DEFAULT_REGION": "default_region", "AWS_PROFILE": "profile", "AWS_DEFAULT_PROFILE": "default_profile", }, Region: "region", Profile: "profile", UseSharedConfigCall: true, }, { Env: map[string]string{ "AWS_REGION": "region", "AWS_DEFAULT_REGION": "default_region", "AWS_PROFILE": "profile", "AWS_DEFAULT_PROFILE": "default_profile", "AWS_SDK_LOAD_CONFIG": "1", }, Region: "region", Profile: "profile", UseSharedConfigCall: true, }, { Env: map[string]string{ "AWS_DEFAULT_REGION": "default_region", "AWS_DEFAULT_PROFILE": "default_profile", }, Region: "default_region", Profile: "default_profile", UseSharedConfigCall: true, }, { Env: map[string]string{ "AWS_DEFAULT_REGION": "default_region", "AWS_DEFAULT_PROFILE": "default_profile", "AWS_SDK_LOAD_CONFIG": "1", }, Region: "default_region", Profile: "default_profile", UseSharedConfigCall: true, }, } for _, c := range cases { os.Clearenv() for k, v := range c.Env { os.Setenv(k, v) } var cfg envConfig if c.UseSharedConfigCall { cfg = loadSharedEnvConfig() } else { cfg = loadEnvConfig() } assert.Equal(t, c.Region, cfg.Region) assert.Equal(t, c.Profile, cfg.Profile) } } func TestSharedCredsFilename(t *testing.T) { env := stashEnv() defer popEnv(env) os.Setenv("USERPROFILE", "profile_dir") expect := filepath.Join("profile_dir", ".aws", "credentials") name := sharedCredentialsFilename() assert.Equal(t, expect, name) os.Setenv("HOME", "home_dir") expect = filepath.Join("home_dir", ".aws", "credentials") name = sharedCredentialsFilename() assert.Equal(t, expect, name) expect = filepath.Join("path/to/credentials/file") os.Setenv("AWS_SHARED_CREDENTIALS_FILE", expect) name = sharedCredentialsFilename() assert.Equal(t, expect, name) } func TestSharedConfigFilename(t *testing.T) { env := stashEnv() defer popEnv(env) os.Setenv("USERPROFILE", "profile_dir") expect := filepath.Join("profile_dir", ".aws", "config") name := sharedConfigFilename() assert.Equal(t, expect, name) os.Setenv("HOME", "home_dir") expect = filepath.Join("home_dir", ".aws", "config") name = sharedConfigFilename() assert.Equal(t, expect, name) expect = filepath.Join("path/to/config/file") os.Setenv("AWS_CONFIG_FILE", expect) name = sharedConfigFilename() assert.Equal(t, expect, name) } func TestSetEnvValue(t *testing.T) { env := stashEnv() defer popEnv(env) os.Setenv("empty_key", "") os.Setenv("second_key", "2") os.Setenv("third_key", "3") var dst string setFromEnvVal(&dst, []string{ "empty_key", "first_key", "second_key", "third_key", }) assert.Equal(t, "2", dst) } func stashEnv() []string { env := os.Environ() os.Clearenv() return env } func popEnv(env []string) { os.Clearenv() for _, e := range env { p := strings.SplitN(e, "=", 2) os.Setenv(p[0], p[1]) } } aws-sdk-go-1.4.22/aws/session/session.go000066400000000000000000000331251300374646400200560ustar00rootroot00000000000000package session import ( "fmt" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/corehandlers" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/aws/credentials/stscreds" "github.com/aws/aws-sdk-go/aws/defaults" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/endpoints" ) // A Session provides a central location to create service clients from and // store configurations and request handlers for those services. // // Sessions are safe to create service clients concurrently, but it is not safe // to mutate the Session concurrently. // // The Session satisfies the service client's client.ClientConfigProvider. type Session struct { Config *aws.Config Handlers request.Handlers } // New creates a new instance of the handlers merging in the provided configs // on top of the SDK's default configurations. Once the Session is created it // can be mutated to modify the Config or Handlers. The Session is safe to be // read concurrently, but it should not be written to concurrently. // // If the AWS_SDK_LOAD_CONFIG environment is set to a truthy value, the New // method could now encounter an error when loading the configuration. When // The environment variable is set, and an error occurs, New will return a // session that will fail all requests reporting the error that occured while // loading the session. Use NewSession to get the error when creating the // session. // // If the AWS_SDK_LOAD_CONFIG environment variable is set to a truthy value // the shared config file (~/.aws/config) will also be loaded, in addition to // the shared credentials file (~/.aws/config). Values set in both the // shared config, and shared credentials will be taken from the shared // credentials file. // // Deprecated: Use NewSession functiions to create sessions instead. NewSession // has the same functionality as New except an error can be returned when the // func is called instead of waiting to receive an error until a request is made. func New(cfgs ...*aws.Config) *Session { // load initial config from environment envCfg := loadEnvConfig() if envCfg.EnableSharedConfig { s, err := newSession(envCfg, cfgs...) if err != nil { // Old session.New expected all errors to be discovered when // a request is made, and would report the errors then. This // needs to be replicated if an error occurs while creating // the session. msg := "failed to create session with AWS_SDK_LOAD_CONFIG enabled. " + "Use session.NewSession to handle errors occuring during session creation." // Session creation failed, need to report the error and prevent // any requests from succeeding. s = &Session{Config: defaults.Config()} s.Config.MergeIn(cfgs...) s.Config.Logger.Log("ERROR:", msg, "Error:", err) s.Handlers.Validate.PushBack(func(r *request.Request) { r.Error = err }) } return s } return oldNewSession(cfgs...) } // NewSession returns a new Session created from SDK defaults, config files, // environment, and user provided config files. Once the Session is created // it can be mutated to modify the Config or Handlers. The Session is safe to // be read concurrently, but it should not be written to concurrently. // // If the AWS_SDK_LOAD_CONFIG environment variable is set to a truthy value // the shared config file (~/.aws/config) will also be loaded in addition to // the shared credentials file (~/.aws/config). Values set in both the // shared config, and shared credentials will be taken from the shared // credentials file. Enabling the Shared Config will also allow the Session // to be built with retrieving credentials with AssumeRole set in the config. // // See the NewSessionWithOptions func for information on how to override or // control through code how the Session will be created. Such as specifing the // config profile, and controlling if shared config is enabled or not. func NewSession(cfgs ...*aws.Config) (*Session, error) { envCfg := loadEnvConfig() return newSession(envCfg, cfgs...) } // SharedConfigState provides the ability to optionally override the state // of the session's creation based on the shared config being enabled or // disabled. type SharedConfigState int const ( // SharedConfigStateFromEnv does not override any state of the // AWS_SDK_LOAD_CONFIG env var. It is the default value of the // SharedConfigState type. SharedConfigStateFromEnv SharedConfigState = iota // SharedConfigDisable overrides the AWS_SDK_LOAD_CONFIG env var value // and disables the shared config functionality. SharedConfigDisable // SharedConfigEnable overrides the AWS_SDK_LOAD_CONFIG env var value // and enables the shared config functionality. SharedConfigEnable ) // Options provides the means to control how a Session is created and what // configuration values will be loaded. // type Options struct { // Provides config values for the SDK to use when creating service clients // and making API requests to services. Any value set in with this field // will override the associated value provided by the SDK defaults, // environment or config files where relevent. // // If not set, configuration values from from SDK defaults, environment, // config will be used. Config aws.Config // Overrides the config profile the Session should be created from. If not // set the value of the environment variable will be loaded (AWS_PROFILE, // or AWS_DEFAULT_PROFILE if the Shared Config is enabled). // // If not set and environment variables are not set the "default" // (DefaultSharedConfigProfile) will be used as the profile to load the // session config from. Profile string // Instructs how the Session will be created based on the AWS_SDK_LOAD_CONFIG // environment variable. By default a Session will be created using the // value provided by the AWS_SDK_LOAD_CONFIG environment variable. // // Setting this value to SharedConfigEnable or SharedConfigDisable // will allow you to override the AWS_SDK_LOAD_CONFIG environment variable // and enable or disable the shared config functionality. SharedConfigState SharedConfigState } // NewSessionWithOptions returns a new Session created from SDK defaults, config files, // environment, and user provided config files. This func uses the Options // values to configure how the Session is created. // // If the AWS_SDK_LOAD_CONFIG environment variable is set to a truthy value // the shared config file (~/.aws/config) will also be loaded in addition to // the shared credentials file (~/.aws/config). Values set in both the // shared config, and shared credentials will be taken from the shared // credentials file. Enabling the Shared Config will also allow the Session // to be built with retrieving credentials with AssumeRole set in the config. // // // Equivalent to session.New // sess, err := session.NewSessionWithOptions(session.Options{}) // // // Specify profile to load for the session's config // sess, err := session.NewSessionWithOptions(session.Options{ // Profile: "profile_name", // }) // // // Specify profile for config and region for requests // sess, err := session.NewSessionWithOptions(session.Options{ // Config: aws.Config{Region: aws.String("us-east-1")}, // Profile: "profile_name", // }) // // // Force enable Shared Config support // sess, err := session.NewSessionWithOptions(session.Options{ // SharedConfigState: SharedConfigEnable, // }) func NewSessionWithOptions(opts Options) (*Session, error) { var envCfg envConfig if opts.SharedConfigState == SharedConfigEnable { envCfg = loadSharedEnvConfig() } else { envCfg = loadEnvConfig() } if len(opts.Profile) > 0 { envCfg.Profile = opts.Profile } switch opts.SharedConfigState { case SharedConfigDisable: envCfg.EnableSharedConfig = false case SharedConfigEnable: envCfg.EnableSharedConfig = true } return newSession(envCfg, &opts.Config) } // Must is a helper function to ensure the Session is valid and there was no // error when calling a NewSession function. // // This helper is intended to be used in variable initialization to load the // Session and configuration at startup. Such as: // // var sess = session.Must(session.NewSession()) func Must(sess *Session, err error) *Session { if err != nil { panic(err) } return sess } func oldNewSession(cfgs ...*aws.Config) *Session { cfg := defaults.Config() handlers := defaults.Handlers() // Apply the passed in configs so the configuration can be applied to the // default credential chain cfg.MergeIn(cfgs...) cfg.Credentials = defaults.CredChain(cfg, handlers) // Reapply any passed in configs to override credentials if set cfg.MergeIn(cfgs...) s := &Session{ Config: cfg, Handlers: handlers, } initHandlers(s) return s } func newSession(envCfg envConfig, cfgs ...*aws.Config) (*Session, error) { cfg := defaults.Config() handlers := defaults.Handlers() // Get a merged version of the user provided config to determine if // credentials were. userCfg := &aws.Config{} userCfg.MergeIn(cfgs...) // Order config files will be loaded in with later files overwriting // previous config file values. cfgFiles := []string{envCfg.SharedConfigFile, envCfg.SharedCredentialsFile} if !envCfg.EnableSharedConfig { // The shared config file (~/.aws/config) is only loaded if instructed // to load via the envConfig.EnableSharedConfig (AWS_SDK_LOAD_CONFIG). cfgFiles = cfgFiles[1:] } // Load additional config from file(s) sharedCfg, err := loadSharedConfig(envCfg.Profile, cfgFiles) if err != nil { return nil, err } mergeConfigSrcs(cfg, userCfg, envCfg, sharedCfg, handlers) s := &Session{ Config: cfg, Handlers: handlers, } initHandlers(s) return s, nil } func mergeConfigSrcs(cfg, userCfg *aws.Config, envCfg envConfig, sharedCfg sharedConfig, handlers request.Handlers) { // Merge in user provided configuration cfg.MergeIn(userCfg) // Region if not already set by user if len(aws.StringValue(cfg.Region)) == 0 { if len(envCfg.Region) > 0 { cfg.WithRegion(envCfg.Region) } else if envCfg.EnableSharedConfig && len(sharedCfg.Region) > 0 { cfg.WithRegion(sharedCfg.Region) } } // Configure credentials if not already set if cfg.Credentials == credentials.AnonymousCredentials && userCfg.Credentials == nil { if len(envCfg.Creds.AccessKeyID) > 0 { cfg.Credentials = credentials.NewStaticCredentialsFromCreds( envCfg.Creds, ) } else if envCfg.EnableSharedConfig && len(sharedCfg.AssumeRole.RoleARN) > 0 && sharedCfg.AssumeRoleSource != nil { cfgCp := *cfg cfgCp.Credentials = credentials.NewStaticCredentialsFromCreds( sharedCfg.AssumeRoleSource.Creds, ) cfg.Credentials = stscreds.NewCredentials( &Session{ Config: &cfgCp, Handlers: handlers.Copy(), }, sharedCfg.AssumeRole.RoleARN, func(opt *stscreds.AssumeRoleProvider) { opt.RoleSessionName = sharedCfg.AssumeRole.RoleSessionName if len(sharedCfg.AssumeRole.ExternalID) > 0 { opt.ExternalID = aws.String(sharedCfg.AssumeRole.ExternalID) } // MFA not supported }, ) } else if len(sharedCfg.Creds.AccessKeyID) > 0 { cfg.Credentials = credentials.NewStaticCredentialsFromCreds( sharedCfg.Creds, ) } else { // Fallback to default credentials provider, include mock errors // for the credential chain so user can identify why credentials // failed to be retrieved. cfg.Credentials = credentials.NewCredentials(&credentials.ChainProvider{ VerboseErrors: aws.BoolValue(cfg.CredentialsChainVerboseErrors), Providers: []credentials.Provider{ &credProviderError{Err: awserr.New("EnvAccessKeyNotFound", "failed to find credentials in the environment.", nil)}, &credProviderError{Err: awserr.New("SharedCredsLoad", fmt.Sprintf("failed to load profile, %s.", envCfg.Profile), nil)}, defaults.RemoteCredProvider(*cfg, handlers), }, }) } } } type credProviderError struct { Err error } var emptyCreds = credentials.Value{} func (c credProviderError) Retrieve() (credentials.Value, error) { return credentials.Value{}, c.Err } func (c credProviderError) IsExpired() bool { return true } func initHandlers(s *Session) { // Add the Validate parameter handler if it is not disabled. s.Handlers.Validate.Remove(corehandlers.ValidateParametersHandler) if !aws.BoolValue(s.Config.DisableParamValidation) { s.Handlers.Validate.PushBackNamed(corehandlers.ValidateParametersHandler) } } // Copy creates and returns a copy of the current Session, coping the config // and handlers. If any additional configs are provided they will be merged // on top of the Session's copied config. // // // Create a copy of the current Session, configured for the us-west-2 region. // sess.Copy(&aws.Config{Region: aws.String("us-west-2")}) func (s *Session) Copy(cfgs ...*aws.Config) *Session { newSession := &Session{ Config: s.Config.Copy(cfgs...), Handlers: s.Handlers.Copy(), } initHandlers(newSession) return newSession } // ClientConfig satisfies the client.ConfigProvider interface and is used to // configure the service client instances. Passing the Session to the service // client's constructor (New) will use this method to configure the client. func (s *Session) ClientConfig(serviceName string, cfgs ...*aws.Config) client.Config { s = s.Copy(cfgs...) endpoint, signingRegion := endpoints.NormalizeEndpoint( aws.StringValue(s.Config.Endpoint), serviceName, aws.StringValue(s.Config.Region), aws.BoolValue(s.Config.DisableSSL), aws.BoolValue(s.Config.UseDualStack), ) return client.Config{ Config: s.Config, Handlers: s.Handlers, Endpoint: endpoint, SigningRegion: signingRegion, } } aws-sdk-go-1.4.22/aws/session/session_test.go000066400000000000000000000237411300374646400211200ustar00rootroot00000000000000package session import ( "bytes" "fmt" "net/http" "net/http/httptest" "os" "testing" "time" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/aws/defaults" "github.com/aws/aws-sdk-go/service/s3" ) func TestNewDefaultSession(t *testing.T) { oldEnv := initSessionTestEnv() defer popEnv(oldEnv) s := New(&aws.Config{Region: aws.String("region")}) assert.Equal(t, "region", *s.Config.Region) assert.Equal(t, http.DefaultClient, s.Config.HTTPClient) assert.NotNil(t, s.Config.Logger) assert.Equal(t, aws.LogOff, *s.Config.LogLevel) } func TestNew_WithCustomCreds(t *testing.T) { oldEnv := initSessionTestEnv() defer popEnv(oldEnv) customCreds := credentials.NewStaticCredentials("AKID", "SECRET", "TOKEN") s := New(&aws.Config{Credentials: customCreds}) assert.Equal(t, customCreds, s.Config.Credentials) } type mockLogger struct { *bytes.Buffer } func (w mockLogger) Log(args ...interface{}) { fmt.Fprintln(w, args...) } func TestNew_WithSessionLoadError(t *testing.T) { oldEnv := initSessionTestEnv() defer popEnv(oldEnv) os.Setenv("AWS_SDK_LOAD_CONFIG", "1") os.Setenv("AWS_CONFIG_FILE", testConfigFilename) os.Setenv("AWS_PROFILE", "assume_role_invalid_source_profile") logger := bytes.Buffer{} s := New(&aws.Config{Logger: &mockLogger{&logger}}) assert.NotNil(t, s) svc := s3.New(s) _, err := svc.ListBuckets(&s3.ListBucketsInput{}) assert.Error(t, err) assert.Contains(t, logger.String(), "ERROR: failed to create session with AWS_SDK_LOAD_CONFIG enabled") assert.Contains(t, err.Error(), SharedConfigAssumeRoleError{ RoleARN: "assume_role_invalid_source_profile_role_arn", }.Error()) } func TestSessionCopy(t *testing.T) { oldEnv := initSessionTestEnv() defer popEnv(oldEnv) os.Setenv("AWS_REGION", "orig_region") s := Session{ Config: defaults.Config(), Handlers: defaults.Handlers(), } newSess := s.Copy(&aws.Config{Region: aws.String("new_region")}) assert.Equal(t, "orig_region", *s.Config.Region) assert.Equal(t, "new_region", *newSess.Config.Region) } func TestSessionClientConfig(t *testing.T) { s, err := NewSession(&aws.Config{Region: aws.String("orig_region")}) assert.NoError(t, err) cfg := s.ClientConfig("s3", &aws.Config{Region: aws.String("us-west-2")}) assert.Equal(t, "https://s3-us-west-2.amazonaws.com", cfg.Endpoint) assert.Empty(t, cfg.SigningRegion) assert.Equal(t, "us-west-2", *cfg.Config.Region) } func TestNewSession_NoCredentials(t *testing.T) { oldEnv := initSessionTestEnv() defer popEnv(oldEnv) s, err := NewSession() assert.NoError(t, err) assert.NotNil(t, s.Config.Credentials) assert.NotEqual(t, credentials.AnonymousCredentials, s.Config.Credentials) } func TestNewSessionWithOptions_OverrideProfile(t *testing.T) { oldEnv := initSessionTestEnv() defer popEnv(oldEnv) os.Setenv("AWS_SDK_LOAD_CONFIG", "1") os.Setenv("AWS_SHARED_CREDENTIALS_FILE", testConfigFilename) os.Setenv("AWS_PROFILE", "other_profile") s, err := NewSessionWithOptions(Options{ Profile: "full_profile", }) assert.NoError(t, err) assert.Equal(t, "full_profile_region", *s.Config.Region) creds, err := s.Config.Credentials.Get() assert.NoError(t, err) assert.Equal(t, "full_profile_akid", creds.AccessKeyID) assert.Equal(t, "full_profile_secret", creds.SecretAccessKey) assert.Empty(t, creds.SessionToken) assert.Contains(t, creds.ProviderName, "SharedConfigCredentials") } func TestNewSessionWithOptions_OverrideSharedConfigEnable(t *testing.T) { oldEnv := initSessionTestEnv() defer popEnv(oldEnv) os.Setenv("AWS_SDK_LOAD_CONFIG", "0") os.Setenv("AWS_SHARED_CREDENTIALS_FILE", testConfigFilename) os.Setenv("AWS_PROFILE", "full_profile") s, err := NewSessionWithOptions(Options{ SharedConfigState: SharedConfigEnable, }) assert.NoError(t, err) assert.Equal(t, "full_profile_region", *s.Config.Region) creds, err := s.Config.Credentials.Get() assert.NoError(t, err) assert.Equal(t, "full_profile_akid", creds.AccessKeyID) assert.Equal(t, "full_profile_secret", creds.SecretAccessKey) assert.Empty(t, creds.SessionToken) assert.Contains(t, creds.ProviderName, "SharedConfigCredentials") } func TestNewSessionWithOptions_OverrideSharedConfigDisable(t *testing.T) { oldEnv := initSessionTestEnv() defer popEnv(oldEnv) os.Setenv("AWS_SDK_LOAD_CONFIG", "1") os.Setenv("AWS_SHARED_CREDENTIALS_FILE", testConfigFilename) os.Setenv("AWS_PROFILE", "full_profile") s, err := NewSessionWithOptions(Options{ SharedConfigState: SharedConfigDisable, }) assert.NoError(t, err) assert.Empty(t, *s.Config.Region) creds, err := s.Config.Credentials.Get() assert.NoError(t, err) assert.Equal(t, "full_profile_akid", creds.AccessKeyID) assert.Equal(t, "full_profile_secret", creds.SecretAccessKey) assert.Empty(t, creds.SessionToken) assert.Contains(t, creds.ProviderName, "SharedConfigCredentials") } func TestNewSessionWithOptions_Overrides(t *testing.T) { cases := []struct { InEnvs map[string]string InProfile string OutRegion string OutCreds credentials.Value }{ { InEnvs: map[string]string{ "AWS_SDK_LOAD_CONFIG": "0", "AWS_SHARED_CREDENTIALS_FILE": testConfigFilename, "AWS_PROFILE": "other_profile", }, InProfile: "full_profile", OutRegion: "full_profile_region", OutCreds: credentials.Value{ AccessKeyID: "full_profile_akid", SecretAccessKey: "full_profile_secret", ProviderName: "SharedConfigCredentials", }, }, { InEnvs: map[string]string{ "AWS_SDK_LOAD_CONFIG": "0", "AWS_SHARED_CREDENTIALS_FILE": testConfigFilename, "AWS_REGION": "env_region", "AWS_ACCESS_KEY": "env_akid", "AWS_SECRET_ACCESS_KEY": "env_secret", "AWS_PROFILE": "other_profile", }, InProfile: "full_profile", OutRegion: "env_region", OutCreds: credentials.Value{ AccessKeyID: "env_akid", SecretAccessKey: "env_secret", ProviderName: "EnvConfigCredentials", }, }, { InEnvs: map[string]string{ "AWS_SDK_LOAD_CONFIG": "0", "AWS_SHARED_CREDENTIALS_FILE": testConfigFilename, "AWS_CONFIG_FILE": testConfigOtherFilename, "AWS_PROFILE": "shared_profile", }, InProfile: "config_file_load_order", OutRegion: "shared_config_region", OutCreds: credentials.Value{ AccessKeyID: "shared_config_akid", SecretAccessKey: "shared_config_secret", ProviderName: "SharedConfigCredentials", }, }, } for _, c := range cases { oldEnv := initSessionTestEnv() defer popEnv(oldEnv) for k, v := range c.InEnvs { os.Setenv(k, v) } s, err := NewSessionWithOptions(Options{ Profile: c.InProfile, SharedConfigState: SharedConfigEnable, }) assert.NoError(t, err) creds, err := s.Config.Credentials.Get() assert.NoError(t, err) assert.Equal(t, c.OutRegion, *s.Config.Region) assert.Equal(t, c.OutCreds.AccessKeyID, creds.AccessKeyID) assert.Equal(t, c.OutCreds.SecretAccessKey, creds.SecretAccessKey) assert.Equal(t, c.OutCreds.SessionToken, creds.SessionToken) assert.Contains(t, creds.ProviderName, c.OutCreds.ProviderName) } } func TestSesisonAssumeRole(t *testing.T) { oldEnv := initSessionTestEnv() defer popEnv(oldEnv) os.Setenv("AWS_REGION", "us-east-1") os.Setenv("AWS_SDK_LOAD_CONFIG", "1") os.Setenv("AWS_SHARED_CREDENTIALS_FILE", testConfigFilename) os.Setenv("AWS_PROFILE", "assume_role_w_creds") server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { const respMsg = ` arn:aws:sts::account_id:assumed-role/role/session_name AKID:session_name AKID SECRET SESSION_TOKEN %s request-id ` w.Write([]byte(fmt.Sprintf(respMsg, time.Now().Add(15*time.Minute).Format("2006-01-02T15:04:05Z")))) })) s, err := NewSession(&aws.Config{Endpoint: aws.String(server.URL), DisableSSL: aws.Bool(true)}) creds, err := s.Config.Credentials.Get() assert.NoError(t, err) assert.Equal(t, "AKID", creds.AccessKeyID) assert.Equal(t, "SECRET", creds.SecretAccessKey) assert.Equal(t, "SESSION_TOKEN", creds.SessionToken) assert.Contains(t, creds.ProviderName, "AssumeRoleProvider") } func TestSessionAssumeRole_DisableSharedConfig(t *testing.T) { // Backwards compatibility with Shared config disabled // assume role should not be built into the config. oldEnv := initSessionTestEnv() defer popEnv(oldEnv) os.Setenv("AWS_SDK_LOAD_CONFIG", "0") os.Setenv("AWS_SHARED_CREDENTIALS_FILE", testConfigFilename) os.Setenv("AWS_PROFILE", "assume_role_w_creds") s, err := NewSession() assert.NoError(t, err) creds, err := s.Config.Credentials.Get() assert.NoError(t, err) assert.Equal(t, "assume_role_w_creds_akid", creds.AccessKeyID) assert.Equal(t, "assume_role_w_creds_secret", creds.SecretAccessKey) assert.Contains(t, creds.ProviderName, "SharedConfigCredentials") } func TestSessionAssumeRole_InvalidSourceProfile(t *testing.T) { // Backwards compatibility with Shared config disabled // assume role should not be built into the config. oldEnv := initSessionTestEnv() defer popEnv(oldEnv) os.Setenv("AWS_SDK_LOAD_CONFIG", "1") os.Setenv("AWS_SHARED_CREDENTIALS_FILE", testConfigFilename) os.Setenv("AWS_PROFILE", "assume_role_invalid_source_profile") s, err := NewSession() assert.Error(t, err) assert.Contains(t, err.Error(), "SharedConfigAssumeRoleError: failed to load assume role") assert.Nil(t, s) } func initSessionTestEnv() (oldEnv []string) { oldEnv = stashEnv() os.Setenv("AWS_CONFIG_FILE", "file_not_exists") os.Setenv("AWS_SHARED_CREDENTIALS_FILE", "file_not_exists") return oldEnv } aws-sdk-go-1.4.22/aws/session/shared_config.go000066400000000000000000000207111300374646400211630ustar00rootroot00000000000000package session import ( "fmt" "io/ioutil" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/go-ini/ini" ) const ( // Static Credentials group accessKeyIDKey = `aws_access_key_id` // group required secretAccessKey = `aws_secret_access_key` // group required sessionTokenKey = `aws_session_token` // optional // Assume Role Credentials group roleArnKey = `role_arn` // group required sourceProfileKey = `source_profile` // group required externalIDKey = `external_id` // optional mfaSerialKey = `mfa_serial` // optional roleSessionNameKey = `role_session_name` // optional // Additional Config fields regionKey = `region` // DefaultSharedConfigProfile is the default profile to be used when // loading configuration from the config files if another profile name // is not provided. DefaultSharedConfigProfile = `default` ) type assumeRoleConfig struct { RoleARN string SourceProfile string ExternalID string MFASerial string RoleSessionName string } // sharedConfig represents the configuration fields of the SDK config files. type sharedConfig struct { // Credentials values from the config file. Both aws_access_key_id // and aws_secret_access_key must be provided together in the same file // to be considered valid. The values will be ignored if not a complete group. // aws_session_token is an optional field that can be provided if both of the // other two fields are also provided. // // aws_access_key_id // aws_secret_access_key // aws_session_token Creds credentials.Value AssumeRole assumeRoleConfig AssumeRoleSource *sharedConfig // Region is the region the SDK should use for looking up AWS service endpoints // and signing requests. // // region Region string } type sharedConfigFile struct { Filename string IniData *ini.File } // loadSharedConfig retrieves the configuration from the list of files // using the profile provided. The order the files are listed will determine // precedence. Values in subsequent files will overwrite values defined in // earlier files. // // For example, given two files A and B. Both define credentials. If the order // of the files are A then B, B's credential values will be used instead of A's. // // See sharedConfig.setFromFile for information how the config files // will be loaded. func loadSharedConfig(profile string, filenames []string) (sharedConfig, error) { if len(profile) == 0 { profile = DefaultSharedConfigProfile } files, err := loadSharedConfigIniFiles(filenames) if err != nil { return sharedConfig{}, err } cfg := sharedConfig{} if err = cfg.setFromIniFiles(profile, files); err != nil { return sharedConfig{}, err } if len(cfg.AssumeRole.SourceProfile) > 0 { if err := cfg.setAssumeRoleSource(profile, files); err != nil { return sharedConfig{}, err } } return cfg, nil } func loadSharedConfigIniFiles(filenames []string) ([]sharedConfigFile, error) { files := make([]sharedConfigFile, 0, len(filenames)) for _, filename := range filenames { b, err := ioutil.ReadFile(filename) if err != nil { // Skip files which can't be opened and read for whatever reason continue } f, err := ini.Load(b) if err != nil { return nil, SharedConfigLoadError{Filename: filename} } files = append(files, sharedConfigFile{ Filename: filename, IniData: f, }) } return files, nil } func (cfg *sharedConfig) setAssumeRoleSource(origProfile string, files []sharedConfigFile) error { var assumeRoleSrc sharedConfig // Multiple level assume role chains are not support if cfg.AssumeRole.SourceProfile == origProfile { assumeRoleSrc = *cfg assumeRoleSrc.AssumeRole = assumeRoleConfig{} } else { err := assumeRoleSrc.setFromIniFiles(cfg.AssumeRole.SourceProfile, files) if err != nil { return err } } if len(assumeRoleSrc.Creds.AccessKeyID) == 0 { return SharedConfigAssumeRoleError{RoleARN: cfg.AssumeRole.RoleARN} } cfg.AssumeRoleSource = &assumeRoleSrc return nil } func (cfg *sharedConfig) setFromIniFiles(profile string, files []sharedConfigFile) error { // Trim files from the list that don't exist. for _, f := range files { if err := cfg.setFromIniFile(profile, f); err != nil { if _, ok := err.(SharedConfigProfileNotExistsError); ok { // Ignore proviles missings continue } return err } } return nil } // setFromFile loads the configuration from the file using // the profile provided. A sharedConfig pointer type value is used so that // multiple config file loadings can be chained. // // Only loads complete logically grouped values, and will not set fields in cfg // for incomplete grouped values in the config. Such as credentials. For example // if a config file only includes aws_access_key_id but no aws_secret_access_key // the aws_access_key_id will be ignored. func (cfg *sharedConfig) setFromIniFile(profile string, file sharedConfigFile) error { section, err := file.IniData.GetSection(profile) if err != nil { // Fallback to to alternate profile name: profile section, err = file.IniData.GetSection(fmt.Sprintf("profile %s", profile)) if err != nil { return SharedConfigProfileNotExistsError{Profile: profile, Err: err} } } // Shared Credentials akid := section.Key(accessKeyIDKey).String() secret := section.Key(secretAccessKey).String() if len(akid) > 0 && len(secret) > 0 { cfg.Creds = credentials.Value{ AccessKeyID: akid, SecretAccessKey: secret, SessionToken: section.Key(sessionTokenKey).String(), ProviderName: fmt.Sprintf("SharedConfigCredentials: %s", file.Filename), } } // Assume Role roleArn := section.Key(roleArnKey).String() srcProfile := section.Key(sourceProfileKey).String() if len(roleArn) > 0 && len(srcProfile) > 0 { cfg.AssumeRole = assumeRoleConfig{ RoleARN: roleArn, SourceProfile: srcProfile, ExternalID: section.Key(externalIDKey).String(), MFASerial: section.Key(mfaSerialKey).String(), RoleSessionName: section.Key(roleSessionNameKey).String(), } } // Region if v := section.Key(regionKey).String(); len(v) > 0 { cfg.Region = v } return nil } // SharedConfigLoadError is an error for the shared config file failed to load. type SharedConfigLoadError struct { Filename string Err error } // Code is the short id of the error. func (e SharedConfigLoadError) Code() string { return "SharedConfigLoadError" } // Message is the description of the error func (e SharedConfigLoadError) Message() string { return fmt.Sprintf("failed to load config file, %s", e.Filename) } // OrigErr is the underlying error that caused the failure. func (e SharedConfigLoadError) OrigErr() error { return e.Err } // Error satisfies the error interface. func (e SharedConfigLoadError) Error() string { return awserr.SprintError(e.Code(), e.Message(), "", e.Err) } // SharedConfigProfileNotExistsError is an error for the shared config when // the profile was not find in the config file. type SharedConfigProfileNotExistsError struct { Profile string Err error } // Code is the short id of the error. func (e SharedConfigProfileNotExistsError) Code() string { return "SharedConfigProfileNotExistsError" } // Message is the description of the error func (e SharedConfigProfileNotExistsError) Message() string { return fmt.Sprintf("failed to get profile, %s", e.Profile) } // OrigErr is the underlying error that caused the failure. func (e SharedConfigProfileNotExistsError) OrigErr() error { return e.Err } // Error satisfies the error interface. func (e SharedConfigProfileNotExistsError) Error() string { return awserr.SprintError(e.Code(), e.Message(), "", e.Err) } // SharedConfigAssumeRoleError is an error for the shared config when the // profile contains assume role information, but that information is invalid // or not complete. type SharedConfigAssumeRoleError struct { RoleARN string } // Code is the short id of the error. func (e SharedConfigAssumeRoleError) Code() string { return "SharedConfigAssumeRoleError" } // Message is the description of the error func (e SharedConfigAssumeRoleError) Message() string { return fmt.Sprintf("failed to load assume role for %s, source profile has no shared credentials", e.RoleARN) } // OrigErr is the underlying error that caused the failure. func (e SharedConfigAssumeRoleError) OrigErr() error { return nil } // Error satisfies the error interface. func (e SharedConfigAssumeRoleError) Error() string { return awserr.SprintError(e.Code(), e.Message(), "", nil) } aws-sdk-go-1.4.22/aws/session/shared_config_test.go000066400000000000000000000163561300374646400222340ustar00rootroot00000000000000package session import ( "fmt" "path/filepath" "testing" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/go-ini/ini" "github.com/stretchr/testify/assert" ) var ( testConfigFilename = filepath.Join("testdata", "shared_config") testConfigOtherFilename = filepath.Join("testdata", "shared_config_other") ) func TestLoadSharedConfig(t *testing.T) { cases := []struct { Filenames []string Profile string Expected sharedConfig Err error }{ { Filenames: []string{"file_not_exists"}, Profile: "default", }, { Filenames: []string{testConfigFilename}, Expected: sharedConfig{ Region: "default_region", }, }, { Filenames: []string{testConfigOtherFilename, testConfigFilename}, Profile: "config_file_load_order", Expected: sharedConfig{ Region: "shared_config_region", Creds: credentials.Value{ AccessKeyID: "shared_config_akid", SecretAccessKey: "shared_config_secret", ProviderName: fmt.Sprintf("SharedConfigCredentials: %s", testConfigFilename), }, }, }, { Filenames: []string{testConfigFilename, testConfigOtherFilename}, Profile: "config_file_load_order", Expected: sharedConfig{ Region: "shared_config_other_region", Creds: credentials.Value{ AccessKeyID: "shared_config_other_akid", SecretAccessKey: "shared_config_other_secret", ProviderName: fmt.Sprintf("SharedConfigCredentials: %s", testConfigOtherFilename), }, }, }, { Filenames: []string{testConfigOtherFilename, testConfigFilename}, Profile: "assume_role", Expected: sharedConfig{ AssumeRole: assumeRoleConfig{ RoleARN: "assume_role_role_arn", SourceProfile: "complete_creds", }, AssumeRoleSource: &sharedConfig{ Creds: credentials.Value{ AccessKeyID: "complete_creds_akid", SecretAccessKey: "complete_creds_secret", ProviderName: fmt.Sprintf("SharedConfigCredentials: %s", testConfigFilename), }, }, }, }, { Filenames: []string{testConfigOtherFilename, testConfigFilename}, Profile: "assume_role_invalid_source_profile", Expected: sharedConfig{ AssumeRole: assumeRoleConfig{ RoleARN: "assume_role_invalid_source_profile_role_arn", SourceProfile: "profile_not_exists", }, }, Err: SharedConfigAssumeRoleError{RoleARN: "assume_role_invalid_source_profile_role_arn"}, }, { Filenames: []string{testConfigOtherFilename, testConfigFilename}, Profile: "assume_role_w_creds", Expected: sharedConfig{ Creds: credentials.Value{ AccessKeyID: "assume_role_w_creds_akid", SecretAccessKey: "assume_role_w_creds_secret", ProviderName: fmt.Sprintf("SharedConfigCredentials: %s", testConfigFilename), }, AssumeRole: assumeRoleConfig{ RoleARN: "assume_role_w_creds_role_arn", SourceProfile: "assume_role_w_creds", ExternalID: "1234", RoleSessionName: "assume_role_w_creds_session_name", }, AssumeRoleSource: &sharedConfig{ Creds: credentials.Value{ AccessKeyID: "assume_role_w_creds_akid", SecretAccessKey: "assume_role_w_creds_secret", ProviderName: fmt.Sprintf("SharedConfigCredentials: %s", testConfigFilename), }, }, }, }, { Filenames: []string{testConfigOtherFilename, testConfigFilename}, Profile: "assume_role_wo_creds", Expected: sharedConfig{ AssumeRole: assumeRoleConfig{ RoleARN: "assume_role_wo_creds_role_arn", SourceProfile: "assume_role_wo_creds", }, }, Err: SharedConfigAssumeRoleError{RoleARN: "assume_role_wo_creds_role_arn"}, }, { Filenames: []string{filepath.Join("testdata", "shared_config_invalid_ini")}, Profile: "profile_name", Err: SharedConfigLoadError{Filename: filepath.Join("testdata", "shared_config_invalid_ini")}, }, } for i, c := range cases { cfg, err := loadSharedConfig(c.Profile, c.Filenames) if c.Err != nil { assert.Contains(t, err.Error(), c.Err.Error(), "expected error, %d", i) continue } assert.NoError(t, err, "unexpected error, %d", i) assert.Equal(t, c.Expected, cfg, "not equal, %d", i) } } func TestLoadSharedConfigFromFile(t *testing.T) { filename := testConfigFilename f, err := ini.Load(filename) if err != nil { t.Fatalf("failed to load test config file, %s, %v", filename, err) } iniFile := sharedConfigFile{IniData: f, Filename: filename} cases := []struct { Profile string Expected sharedConfig Err error }{ { Profile: "default", Expected: sharedConfig{Region: "default_region"}, }, { Profile: "alt_profile_name", Expected: sharedConfig{Region: "alt_profile_name_region"}, }, { Profile: "short_profile_name_first", Expected: sharedConfig{Region: "short_profile_name_first_short"}, }, { Profile: "partial_creds", Expected: sharedConfig{}, }, { Profile: "complete_creds", Expected: sharedConfig{ Creds: credentials.Value{ AccessKeyID: "complete_creds_akid", SecretAccessKey: "complete_creds_secret", ProviderName: fmt.Sprintf("SharedConfigCredentials: %s", testConfigFilename), }, }, }, { Profile: "complete_creds_with_token", Expected: sharedConfig{ Creds: credentials.Value{ AccessKeyID: "complete_creds_with_token_akid", SecretAccessKey: "complete_creds_with_token_secret", SessionToken: "complete_creds_with_token_token", ProviderName: fmt.Sprintf("SharedConfigCredentials: %s", testConfigFilename), }, }, }, { Profile: "full_profile", Expected: sharedConfig{ Creds: credentials.Value{ AccessKeyID: "full_profile_akid", SecretAccessKey: "full_profile_secret", ProviderName: fmt.Sprintf("SharedConfigCredentials: %s", testConfigFilename), }, Region: "full_profile_region", }, }, { Profile: "partial_assume_role", Expected: sharedConfig{}, }, { Profile: "assume_role", Expected: sharedConfig{ AssumeRole: assumeRoleConfig{ RoleARN: "assume_role_role_arn", SourceProfile: "complete_creds", }, }, }, { Profile: "does_not_exists", Err: SharedConfigProfileNotExistsError{Profile: "does_not_exists"}, }, } for i, c := range cases { cfg := sharedConfig{} err := cfg.setFromIniFile(c.Profile, iniFile) if c.Err != nil { assert.Contains(t, err.Error(), c.Err.Error(), "expected error, %d", i) continue } assert.NoError(t, err, "unexpected error, %d", i) assert.Equal(t, c.Expected, cfg, "not equal, %d", i) } } func TestLoadSharedConfigIniFiles(t *testing.T) { cases := []struct { Filenames []string Expected []sharedConfigFile }{ { Filenames: []string{"not_exists", testConfigFilename}, Expected: []sharedConfigFile{ {Filename: testConfigFilename}, }, }, { Filenames: []string{testConfigFilename, testConfigOtherFilename}, Expected: []sharedConfigFile{ {Filename: testConfigFilename}, {Filename: testConfigOtherFilename}, }, }, } for i, c := range cases { files, err := loadSharedConfigIniFiles(c.Filenames) assert.NoError(t, err, "unexpected error, %d", i) assert.Equal(t, len(c.Expected), len(files), "expected num files, %d", i) for i, expectedFile := range c.Expected { assert.Equal(t, expectedFile.Filename, files[i].Filename) } } } aws-sdk-go-1.4.22/aws/session/testdata/000077500000000000000000000000001300374646400176515ustar00rootroot00000000000000aws-sdk-go-1.4.22/aws/session/testdata/shared_config000066400000000000000000000030141300374646400223650ustar00rootroot00000000000000[default] s3 = unsupported_key=123 other_unsupported=abc region = default_region [profile alt_profile_name] region = alt_profile_name_region [short_profile_name_first] region = short_profile_name_first_short [profile short_profile_name_first] region = short_profile_name_first_alt [partial_creds] aws_access_key_id = partial_creds_akid [complete_creds] aws_access_key_id = complete_creds_akid aws_secret_access_key = complete_creds_secret [complete_creds_with_token] aws_access_key_id = complete_creds_with_token_akid aws_secret_access_key = complete_creds_with_token_secret aws_session_token = complete_creds_with_token_token [full_profile] aws_access_key_id = full_profile_akid aws_secret_access_key = full_profile_secret region = full_profile_region [config_file_load_order] region = shared_config_region aws_access_key_id = shared_config_akid aws_secret_access_key = shared_config_secret [partial_assume_role] role_arn = partial_assume_role_role_arn [assume_role] role_arn = assume_role_role_arn source_profile = complete_creds [assume_role_invalid_source_profile] role_arn = assume_role_invalid_source_profile_role_arn source_profile = profile_not_exists [assume_role_w_creds] role_arn = assume_role_w_creds_role_arn source_profile = assume_role_w_creds external_id = 1234 role_session_name = assume_role_w_creds_session_name aws_access_key_id = assume_role_w_creds_akid aws_secret_access_key = assume_role_w_creds_secret [assume_role_wo_creds] role_arn = assume_role_wo_creds_role_arn source_profile = assume_role_wo_creds aws-sdk-go-1.4.22/aws/session/testdata/shared_config_invalid_ini000066400000000000000000000000151300374646400247300ustar00rootroot00000000000000[profile_nam aws-sdk-go-1.4.22/aws/session/testdata/shared_config_other000066400000000000000000000006351300374646400235740ustar00rootroot00000000000000[default] region = default_region [partial_creds] aws_access_key_id = AKID [profile alt_profile_name] region = alt_profile_name_region [creds_from_credentials] aws_access_key_id = creds_from_config_akid aws_secret_access_key = creds_from_config_secret [config_file_load_order] region = shared_config_other_region aws_access_key_id = shared_config_other_akid aws_secret_access_key = shared_config_other_secret aws-sdk-go-1.4.22/aws/signer/000077500000000000000000000000001300374646400156445ustar00rootroot00000000000000aws-sdk-go-1.4.22/aws/signer/v4/000077500000000000000000000000001300374646400161755ustar00rootroot00000000000000aws-sdk-go-1.4.22/aws/signer/v4/functional_1_4_test.go000066400000000000000000000017201300374646400223700ustar00rootroot00000000000000// +build !go1.5 package v4_test import ( "fmt" "net/http" "testing" "time" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/stretchr/testify/assert" ) func TestStandaloneSign(t *testing.T) { creds := unit.Session.Config.Credentials signer := v4.NewSigner(creds) for _, c := range standaloneSignCases { host := fmt.Sprintf("%s.%s.%s.amazonaws.com", c.SubDomain, c.Region, c.Service) req, err := http.NewRequest("GET", fmt.Sprintf("https://%s", host), nil) assert.NoError(t, err) req.URL.Path = c.OrigURI req.URL.RawQuery = c.OrigQuery req.URL.Opaque = fmt.Sprintf("//%s%s", host, c.EscapedURI) opaqueURI := req.URL.Opaque _, err = signer.Sign(req, nil, c.Service, c.Region, time.Unix(0, 0)) assert.NoError(t, err) actual := req.Header.Get("Authorization") assert.Equal(t, c.ExpSig, actual) assert.Equal(t, c.OrigURI, req.URL.Path) assert.Equal(t, opaqueURI, req.URL.Opaque) } } aws-sdk-go-1.4.22/aws/signer/v4/functional_1_5_test.go000066400000000000000000000017251300374646400223760ustar00rootroot00000000000000// +build go1.5 package v4_test import ( "fmt" "net/http" "testing" "time" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/stretchr/testify/assert" ) func TestStandaloneSign(t *testing.T) { creds := unit.Session.Config.Credentials signer := v4.NewSigner(creds) for _, c := range standaloneSignCases { host := fmt.Sprintf("https://%s.%s.%s.amazonaws.com", c.SubDomain, c.Region, c.Service) req, err := http.NewRequest("GET", host, nil) assert.NoError(t, err) // URL.EscapedPath() will be used by the signer to get the // escaped form of the request's URI path. req.URL.Path = c.OrigURI req.URL.RawQuery = c.OrigQuery _, err = signer.Sign(req, nil, c.Service, c.Region, time.Unix(0, 0)) assert.NoError(t, err) actual := req.Header.Get("Authorization") assert.Equal(t, c.ExpSig, actual) assert.Equal(t, c.OrigURI, req.URL.Path) assert.Equal(t, c.EscapedURI, req.URL.EscapedPath()) } } aws-sdk-go-1.4.22/aws/signer/v4/functional_test.go000066400000000000000000000077211300374646400217340ustar00rootroot00000000000000package v4_test import ( "net/http" "net/url" "testing" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/s3" "github.com/stretchr/testify/assert" ) var standaloneSignCases = []struct { OrigURI string OrigQuery string Region, Service, SubDomain string ExpSig string EscapedURI string }{ { OrigURI: `/logs-*/_search`, OrigQuery: `pretty=true`, Region: "us-west-2", Service: "es", SubDomain: "hostname-clusterkey", EscapedURI: `/logs-%2A/_search`, ExpSig: `AWS4-HMAC-SHA256 Credential=AKID/19700101/us-west-2/es/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=79d0760751907af16f64a537c1242416dacf51204a7dd5284492d15577973b91`, }, } func TestPresignHandler(t *testing.T) { svc := s3.New(unit.Session) req, _ := svc.PutObjectRequest(&s3.PutObjectInput{ Bucket: aws.String("bucket"), Key: aws.String("key"), ContentDisposition: aws.String("a+b c$d"), ACL: aws.String("public-read"), }) req.Time = time.Unix(0, 0) urlstr, err := req.Presign(5 * time.Minute) assert.NoError(t, err) expectedDate := "19700101T000000Z" expectedHeaders := "content-disposition;host;x-amz-acl" expectedSig := "b2754ba8ffeb74a40b94767017e24c4672107d6d5a894648d5d332ca61f5ffe4" expectedCred := "AKID/19700101/mock-region/s3/aws4_request" u, _ := url.Parse(urlstr) urlQ := u.Query() assert.Equal(t, expectedSig, urlQ.Get("X-Amz-Signature")) assert.Equal(t, expectedCred, urlQ.Get("X-Amz-Credential")) assert.Equal(t, expectedHeaders, urlQ.Get("X-Amz-SignedHeaders")) assert.Equal(t, expectedDate, urlQ.Get("X-Amz-Date")) assert.Equal(t, "300", urlQ.Get("X-Amz-Expires")) assert.NotContains(t, urlstr, "+") // + encoded as %20 } func TestPresignRequest(t *testing.T) { svc := s3.New(unit.Session) req, _ := svc.PutObjectRequest(&s3.PutObjectInput{ Bucket: aws.String("bucket"), Key: aws.String("key"), ContentDisposition: aws.String("a+b c$d"), ACL: aws.String("public-read"), }) req.Time = time.Unix(0, 0) urlstr, headers, err := req.PresignRequest(5 * time.Minute) assert.NoError(t, err) expectedDate := "19700101T000000Z" expectedHeaders := "content-disposition;host;x-amz-acl;x-amz-content-sha256" expectedSig := "0d200ba61501d752acd06f39ef4dbe7d83ffd5ea15978dc3476dfc00b8eb574e" expectedCred := "AKID/19700101/mock-region/s3/aws4_request" expectedHeaderMap := http.Header{ "x-amz-acl": []string{"public-read"}, "content-disposition": []string{"a+b c$d"}, "x-amz-content-sha256": []string{"UNSIGNED-PAYLOAD"}, } u, _ := url.Parse(urlstr) urlQ := u.Query() assert.Equal(t, expectedSig, urlQ.Get("X-Amz-Signature")) assert.Equal(t, expectedCred, urlQ.Get("X-Amz-Credential")) assert.Equal(t, expectedHeaders, urlQ.Get("X-Amz-SignedHeaders")) assert.Equal(t, expectedDate, urlQ.Get("X-Amz-Date")) assert.Equal(t, expectedHeaderMap, headers) assert.Equal(t, "300", urlQ.Get("X-Amz-Expires")) assert.NotContains(t, urlstr, "+") // + encoded as %20 } func TestStandaloneSign_CustomURIEscape(t *testing.T) { var expectSig = `AWS4-HMAC-SHA256 Credential=AKID/19700101/us-east-1/es/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=6601e883cc6d23871fd6c2a394c5677ea2b8c82b04a6446786d64cd74f520967` creds := unit.Session.Config.Credentials signer := v4.NewSigner(creds, func(s *v4.Signer) { s.DisableURIPathEscaping = true }) host := "https://subdomain.us-east-1.es.amazonaws.com" req, err := http.NewRequest("GET", host, nil) assert.NoError(t, err) req.URL.Path = `/log-*/_search` req.URL.Opaque = "//subdomain.us-east-1.es.amazonaws.com/log-%2A/_search" _, err = signer.Sign(req, nil, "es", "us-east-1", time.Unix(0, 0)) assert.NoError(t, err) actual := req.Header.Get("Authorization") assert.Equal(t, expectSig, actual) } aws-sdk-go-1.4.22/aws/signer/v4/header_rules.go000066400000000000000000000034301300374646400211660ustar00rootroot00000000000000package v4 import ( "net/http" "strings" ) // validator houses a set of rule needed for validation of a // string value type rules []rule // rule interface allows for more flexible rules and just simply // checks whether or not a value adheres to that rule type rule interface { IsValid(value string) bool } // IsValid will iterate through all rules and see if any rules // apply to the value and supports nested rules func (r rules) IsValid(value string) bool { for _, rule := range r { if rule.IsValid(value) { return true } } return false } // mapRule generic rule for maps type mapRule map[string]struct{} // IsValid for the map rule satisfies whether it exists in the map func (m mapRule) IsValid(value string) bool { _, ok := m[value] return ok } // whitelist is a generic rule for whitelisting type whitelist struct { rule } // IsValid for whitelist checks if the value is within the whitelist func (w whitelist) IsValid(value string) bool { return w.rule.IsValid(value) } // blacklist is a generic rule for blacklisting type blacklist struct { rule } // IsValid for whitelist checks if the value is within the whitelist func (b blacklist) IsValid(value string) bool { return !b.rule.IsValid(value) } type patterns []string // IsValid for patterns checks each pattern and returns if a match has // been found func (p patterns) IsValid(value string) bool { for _, pattern := range p { if strings.HasPrefix(http.CanonicalHeaderKey(value), pattern) { return true } } return false } // inclusiveRules rules allow for rules to depend on one another type inclusiveRules []rule // IsValid will return true if all rules are true func (r inclusiveRules) IsValid(value string) bool { for _, rule := range r { if !rule.IsValid(value) { return false } } return true } aws-sdk-go-1.4.22/aws/signer/v4/header_rules_test.go000066400000000000000000000020661300374646400222310ustar00rootroot00000000000000package v4 import ( "testing" "github.com/stretchr/testify/assert" ) func TestRuleCheckWhitelist(t *testing.T) { w := whitelist{ mapRule{ "Cache-Control": struct{}{}, }, } assert.True(t, w.IsValid("Cache-Control")) assert.False(t, w.IsValid("Cache-")) } func TestRuleCheckBlacklist(t *testing.T) { b := blacklist{ mapRule{ "Cache-Control": struct{}{}, }, } assert.False(t, b.IsValid("Cache-Control")) assert.True(t, b.IsValid("Cache-")) } func TestRuleCheckPattern(t *testing.T) { p := patterns{"X-Amz-Meta-"} assert.True(t, p.IsValid("X-Amz-Meta-")) assert.True(t, p.IsValid("X-Amz-Meta-Star")) assert.False(t, p.IsValid("Cache-")) } func TestRuleComplexWhitelist(t *testing.T) { w := rules{ whitelist{ mapRule{ "Cache-Control": struct{}{}, }, }, patterns{"X-Amz-Meta-"}, } r := rules{ inclusiveRules{patterns{"X-Amz-"}, blacklist{w}}, } assert.True(t, r.IsValid("X-Amz-Blah")) assert.False(t, r.IsValid("X-Amz-Meta-")) assert.False(t, r.IsValid("X-Amz-Meta-Star")) assert.False(t, r.IsValid("Cache-Control")) } aws-sdk-go-1.4.22/aws/signer/v4/uri_path.go000066400000000000000000000004471300374646400203440ustar00rootroot00000000000000// +build go1.5 package v4 import ( "net/url" "strings" ) func getURIPath(u *url.URL) string { var uri string if len(u.Opaque) > 0 { uri = "/" + strings.Join(strings.Split(u.Opaque, "/")[3:], "/") } else { uri = u.EscapedPath() } if len(uri) == 0 { uri = "/" } return uri } aws-sdk-go-1.4.22/aws/signer/v4/uri_path_1_4.go000066400000000000000000000004371300374646400210060ustar00rootroot00000000000000// +build !go1.5 package v4 import ( "net/url" "strings" ) func getURIPath(u *url.URL) string { var uri string if len(u.Opaque) > 0 { uri = "/" + strings.Join(strings.Split(u.Opaque, "/")[3:], "/") } else { uri = u.Path } if len(uri) == 0 { uri = "/" } return uri } aws-sdk-go-1.4.22/aws/signer/v4/v4.go000066400000000000000000000566561300374646400170770ustar00rootroot00000000000000// Package v4 implements signing for AWS V4 signer // // Provides request signing for request that need to be signed with // AWS V4 Signatures. // // Standalone Signer // // Generally using the signer outside of the SDK should not require any additional // logic when using Go v1.5 or higher. The signer does this by taking advantage // of the URL.EscapedPath method. If your request URI requires additional escaping // you many need to use the URL.Opaque to define what the raw URI should be sent // to the service as. // // The signer will first check the URL.Opaque field, and use its value if set. // The signer does require the URL.Opaque field to be set in the form of: // // "///" // // // e.g. // "//example.com/some/path" // // The leading "//" and hostname are required or the URL.Opaque escaping will // not work correctly. // // If URL.Opaque is not set the signer will fallback to the URL.EscapedPath() // method and using the returned value. If you're using Go v1.4 you must set // URL.Opaque if the URI path needs escaping. If URL.Opaque is not set with // Go v1.5 the signer will fallback to URL.Path. // // AWS v4 signature validation requires that the canonical string's URI path // element must be the URI escaped form of the HTTP request's path. // http://docs.aws.amazon.com/general/latest/gr/sigv4-create-canonical-request.html // // The Go HTTP client will perform escaping automatically on the request. Some // of these escaping may cause signature validation errors because the HTTP // request differs from the URI path or query that the signature was generated. // https://golang.org/pkg/net/url/#URL.EscapedPath // // Because of this, it is recommended that when using the signer outside of the // SDK that explicitly escaping the request prior to being signed is preferable, // and will help prevent signature validation errors. This can be done by setting // the URL.Opaque or URL.RawPath. The SDK will use URL.Opaque first and then // call URL.EscapedPath() if Opaque is not set. // // Test `TestStandaloneSign` provides a complete example of using the signer // outside of the SDK and pre-escaping the URI path. package v4 import ( "bytes" "crypto/hmac" "crypto/sha256" "encoding/hex" "fmt" "io" "io/ioutil" "net/http" "net/url" "sort" "strconv" "strings" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol/rest" ) const ( authHeaderPrefix = "AWS4-HMAC-SHA256" timeFormat = "20060102T150405Z" shortTimeFormat = "20060102" // emptyStringSHA256 is a SHA256 of an empty string emptyStringSHA256 = `e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855` ) var ignoredHeaders = rules{ blacklist{ mapRule{ "Authorization": struct{}{}, "User-Agent": struct{}{}, }, }, } // requiredSignedHeaders is a whitelist for build canonical headers. var requiredSignedHeaders = rules{ whitelist{ mapRule{ "Cache-Control": struct{}{}, "Content-Disposition": struct{}{}, "Content-Encoding": struct{}{}, "Content-Language": struct{}{}, "Content-Md5": struct{}{}, "Content-Type": struct{}{}, "Expires": struct{}{}, "If-Match": struct{}{}, "If-Modified-Since": struct{}{}, "If-None-Match": struct{}{}, "If-Unmodified-Since": struct{}{}, "Range": struct{}{}, "X-Amz-Acl": struct{}{}, "X-Amz-Copy-Source": struct{}{}, "X-Amz-Copy-Source-If-Match": struct{}{}, "X-Amz-Copy-Source-If-Modified-Since": struct{}{}, "X-Amz-Copy-Source-If-None-Match": struct{}{}, "X-Amz-Copy-Source-If-Unmodified-Since": struct{}{}, "X-Amz-Copy-Source-Range": struct{}{}, "X-Amz-Copy-Source-Server-Side-Encryption-Customer-Algorithm": struct{}{}, "X-Amz-Copy-Source-Server-Side-Encryption-Customer-Key": struct{}{}, "X-Amz-Copy-Source-Server-Side-Encryption-Customer-Key-Md5": struct{}{}, "X-Amz-Grant-Full-control": struct{}{}, "X-Amz-Grant-Read": struct{}{}, "X-Amz-Grant-Read-Acp": struct{}{}, "X-Amz-Grant-Write": struct{}{}, "X-Amz-Grant-Write-Acp": struct{}{}, "X-Amz-Metadata-Directive": struct{}{}, "X-Amz-Mfa": struct{}{}, "X-Amz-Request-Payer": struct{}{}, "X-Amz-Server-Side-Encryption": struct{}{}, "X-Amz-Server-Side-Encryption-Aws-Kms-Key-Id": struct{}{}, "X-Amz-Server-Side-Encryption-Customer-Algorithm": struct{}{}, "X-Amz-Server-Side-Encryption-Customer-Key": struct{}{}, "X-Amz-Server-Side-Encryption-Customer-Key-Md5": struct{}{}, "X-Amz-Storage-Class": struct{}{}, "X-Amz-Website-Redirect-Location": struct{}{}, }, }, patterns{"X-Amz-Meta-"}, } // allowedHoisting is a whitelist for build query headers. The boolean value // represents whether or not it is a pattern. var allowedQueryHoisting = inclusiveRules{ blacklist{requiredSignedHeaders}, patterns{"X-Amz-"}, } // Signer applies AWS v4 signing to given request. Use this to sign requests // that need to be signed with AWS V4 Signatures. type Signer struct { // The authentication credentials the request will be signed against. // This value must be set to sign requests. Credentials *credentials.Credentials // Sets the log level the signer should use when reporting information to // the logger. If the logger is nil nothing will be logged. See // aws.LogLevelType for more information on available logging levels // // By default nothing will be logged. Debug aws.LogLevelType // The logger loging information will be written to. If there the logger // is nil, nothing will be logged. Logger aws.Logger // Disables the Signer's moving HTTP header key/value pairs from the HTTP // request header to the request's query string. This is most commonly used // with pre-signed requests preventing headers from being added to the // request's query string. DisableHeaderHoisting bool // Disables the automatic escaping of the URI path of the request for the // siganture's canonical string's path. For services that do not need additional // escaping then use this to disable the signer escaping the path. // // S3 is an example of a service that does not need additional escaping. // // http://docs.aws.amazon.com/general/latest/gr/sigv4-create-canonical-request.html DisableURIPathEscaping bool // currentTimeFn returns the time value which represents the current time. // This value should only be used for testing. If it is nil the default // time.Now will be used. currentTimeFn func() time.Time } // NewSigner returns a Signer pointer configured with the credentials and optional // option values provided. If not options are provided the Signer will use its // default configuration. func NewSigner(credentials *credentials.Credentials, options ...func(*Signer)) *Signer { v4 := &Signer{ Credentials: credentials, } for _, option := range options { option(v4) } return v4 } type signingCtx struct { ServiceName string Region string Request *http.Request Body io.ReadSeeker Query url.Values Time time.Time ExpireTime time.Duration SignedHeaderVals http.Header DisableURIPathEscaping bool credValues credentials.Value isPresign bool formattedTime string formattedShortTime string bodyDigest string signedHeaders string canonicalHeaders string canonicalString string credentialString string stringToSign string signature string authorization string } // Sign signs AWS v4 requests with the provided body, service name, region the // request is made to, and time the request is signed at. The signTime allows // you to specify that a request is signed for the future, and cannot be // used until then. // // Returns a list of HTTP headers that were included in the signature or an // error if signing the request failed. Generally for signed requests this value // is not needed as the full request context will be captured by the http.Request // value. It is included for reference though. // // Sign will set the request's Body to be the `body` parameter passed in. If // the body is not already an io.ReadCloser, it will be wrapped within one. If // a `nil` body parameter passed to Sign, the request's Body field will be // also set to nil. Its important to note that this functionality will not // change the request's ContentLength of the request. // // Sign differs from Presign in that it will sign the request using HTTP // header values. This type of signing is intended for http.Request values that // will not be shared, or are shared in a way the header values on the request // will not be lost. // // The requests body is an io.ReadSeeker so the SHA256 of the body can be // generated. To bypass the signer computing the hash you can set the // "X-Amz-Content-Sha256" header with a precomputed value. The signer will // only compute the hash if the request header value is empty. func (v4 Signer) Sign(r *http.Request, body io.ReadSeeker, service, region string, signTime time.Time) (http.Header, error) { return v4.signWithBody(r, body, service, region, 0, signTime) } // Presign signs AWS v4 requests with the provided body, service name, region // the request is made to, and time the request is signed at. The signTime // allows you to specify that a request is signed for the future, and cannot // be used until then. // // Returns a list of HTTP headers that were included in the signature or an // error if signing the request failed. For presigned requests these headers // and their values must be included on the HTTP request when it is made. This // is helpful to know what header values need to be shared with the party the // presigned request will be distributed to. // // Presign differs from Sign in that it will sign the request using query string // instead of header values. This allows you to share the Presigned Request's // URL with third parties, or distribute it throughout your system with minimal // dependencies. // // Presign also takes an exp value which is the duration the // signed request will be valid after the signing time. This is allows you to // set when the request will expire. // // The requests body is an io.ReadSeeker so the SHA256 of the body can be // generated. To bypass the signer computing the hash you can set the // "X-Amz-Content-Sha256" header with a precomputed value. The signer will // only compute the hash if the request header value is empty. // // Presigning a S3 request will not compute the body's SHA256 hash by default. // This is done due to the general use case for S3 presigned URLs is to share // PUT/GET capabilities. If you would like to include the body's SHA256 in the // presigned request's signature you can set the "X-Amz-Content-Sha256" // HTTP header and that will be included in the request's signature. func (v4 Signer) Presign(r *http.Request, body io.ReadSeeker, service, region string, exp time.Duration, signTime time.Time) (http.Header, error) { return v4.signWithBody(r, body, service, region, exp, signTime) } func (v4 Signer) signWithBody(r *http.Request, body io.ReadSeeker, service, region string, exp time.Duration, signTime time.Time) (http.Header, error) { currentTimeFn := v4.currentTimeFn if currentTimeFn == nil { currentTimeFn = time.Now } ctx := &signingCtx{ Request: r, Body: body, Query: r.URL.Query(), Time: signTime, ExpireTime: exp, isPresign: exp != 0, ServiceName: service, Region: region, DisableURIPathEscaping: v4.DisableURIPathEscaping, } if ctx.isRequestSigned() { ctx.Time = currentTimeFn() ctx.handlePresignRemoval() } var err error ctx.credValues, err = v4.Credentials.Get() if err != nil { return http.Header{}, err } ctx.assignAmzQueryValues() ctx.build(v4.DisableHeaderHoisting) // If the request is not presigned the body should be attached to it. This // prevents the confusion of wanting to send a signed request without // the body the request was signed for attached. if !ctx.isPresign { var reader io.ReadCloser if body != nil { var ok bool if reader, ok = body.(io.ReadCloser); !ok { reader = ioutil.NopCloser(body) } } r.Body = reader } if v4.Debug.Matches(aws.LogDebugWithSigning) { v4.logSigningInfo(ctx) } return ctx.SignedHeaderVals, nil } func (ctx *signingCtx) handlePresignRemoval() { if !ctx.isPresign { return } // The credentials have expired for this request. The current signing // is invalid, and needs to be request because the request will fail. ctx.removePresign() // Update the request's query string to ensure the values stays in // sync in the case retrieving the new credentials fails. ctx.Request.URL.RawQuery = ctx.Query.Encode() } func (ctx *signingCtx) assignAmzQueryValues() { if ctx.isPresign { ctx.Query.Set("X-Amz-Algorithm", authHeaderPrefix) if ctx.credValues.SessionToken != "" { ctx.Query.Set("X-Amz-Security-Token", ctx.credValues.SessionToken) } else { ctx.Query.Del("X-Amz-Security-Token") } return } if ctx.credValues.SessionToken != "" { ctx.Request.Header.Set("X-Amz-Security-Token", ctx.credValues.SessionToken) } } // SignRequestHandler is a named request handler the SDK will use to sign // service client request with using the V4 signature. var SignRequestHandler = request.NamedHandler{ Name: "v4.SignRequestHandler", Fn: SignSDKRequest, } // SignSDKRequest signs an AWS request with the V4 signature. This // request handler is bested used only with the SDK's built in service client's // API operation requests. // // This function should not be used on its on its own, but in conjunction with // an AWS service client's API operation call. To sign a standalone request // not created by a service client's API operation method use the "Sign" or // "Presign" functions of the "Signer" type. // // If the credentials of the request's config are set to // credentials.AnonymousCredentials the request will not be signed. func SignSDKRequest(req *request.Request) { signSDKRequestWithCurrTime(req, time.Now) } func signSDKRequestWithCurrTime(req *request.Request, curTimeFn func() time.Time) { // If the request does not need to be signed ignore the signing of the // request if the AnonymousCredentials object is used. if req.Config.Credentials == credentials.AnonymousCredentials { return } region := req.ClientInfo.SigningRegion if region == "" { region = aws.StringValue(req.Config.Region) } name := req.ClientInfo.SigningName if name == "" { name = req.ClientInfo.ServiceName } v4 := NewSigner(req.Config.Credentials, func(v4 *Signer) { v4.Debug = req.Config.LogLevel.Value() v4.Logger = req.Config.Logger v4.DisableHeaderHoisting = req.NotHoist v4.currentTimeFn = curTimeFn if name == "s3" { // S3 service should not have any escaping applied v4.DisableURIPathEscaping = true } }) signingTime := req.Time if !req.LastSignedAt.IsZero() { signingTime = req.LastSignedAt } signedHeaders, err := v4.signWithBody(req.HTTPRequest, req.GetBody(), name, region, req.ExpireTime, signingTime, ) if err != nil { req.Error = err req.SignedHeaderVals = nil return } req.SignedHeaderVals = signedHeaders req.LastSignedAt = curTimeFn() } const logSignInfoMsg = `DEBUG: Request Signature: ---[ CANONICAL STRING ]----------------------------- %s ---[ STRING TO SIGN ]-------------------------------- %s%s -----------------------------------------------------` const logSignedURLMsg = ` ---[ SIGNED URL ]------------------------------------ %s` func (v4 *Signer) logSigningInfo(ctx *signingCtx) { signedURLMsg := "" if ctx.isPresign { signedURLMsg = fmt.Sprintf(logSignedURLMsg, ctx.Request.URL.String()) } msg := fmt.Sprintf(logSignInfoMsg, ctx.canonicalString, ctx.stringToSign, signedURLMsg) v4.Logger.Log(msg) } func (ctx *signingCtx) build(disableHeaderHoisting bool) { ctx.buildTime() // no depends ctx.buildCredentialString() // no depends unsignedHeaders := ctx.Request.Header if ctx.isPresign { if !disableHeaderHoisting { urlValues := url.Values{} urlValues, unsignedHeaders = buildQuery(allowedQueryHoisting, unsignedHeaders) // no depends for k := range urlValues { ctx.Query[k] = urlValues[k] } } } ctx.buildBodyDigest() ctx.buildCanonicalHeaders(ignoredHeaders, unsignedHeaders) ctx.buildCanonicalString() // depends on canon headers / signed headers ctx.buildStringToSign() // depends on canon string ctx.buildSignature() // depends on string to sign if ctx.isPresign { ctx.Request.URL.RawQuery += "&X-Amz-Signature=" + ctx.signature } else { parts := []string{ authHeaderPrefix + " Credential=" + ctx.credValues.AccessKeyID + "/" + ctx.credentialString, "SignedHeaders=" + ctx.signedHeaders, "Signature=" + ctx.signature, } ctx.Request.Header.Set("Authorization", strings.Join(parts, ", ")) } } func (ctx *signingCtx) buildTime() { ctx.formattedTime = ctx.Time.UTC().Format(timeFormat) ctx.formattedShortTime = ctx.Time.UTC().Format(shortTimeFormat) if ctx.isPresign { duration := int64(ctx.ExpireTime / time.Second) ctx.Query.Set("X-Amz-Date", ctx.formattedTime) ctx.Query.Set("X-Amz-Expires", strconv.FormatInt(duration, 10)) } else { ctx.Request.Header.Set("X-Amz-Date", ctx.formattedTime) } } func (ctx *signingCtx) buildCredentialString() { ctx.credentialString = strings.Join([]string{ ctx.formattedShortTime, ctx.Region, ctx.ServiceName, "aws4_request", }, "/") if ctx.isPresign { ctx.Query.Set("X-Amz-Credential", ctx.credValues.AccessKeyID+"/"+ctx.credentialString) } } func buildQuery(r rule, header http.Header) (url.Values, http.Header) { query := url.Values{} unsignedHeaders := http.Header{} for k, h := range header { if r.IsValid(k) { query[k] = h } else { unsignedHeaders[k] = h } } return query, unsignedHeaders } func (ctx *signingCtx) buildCanonicalHeaders(r rule, header http.Header) { var headers []string headers = append(headers, "host") for k, v := range header { canonicalKey := http.CanonicalHeaderKey(k) if !r.IsValid(canonicalKey) { continue // ignored header } if ctx.SignedHeaderVals == nil { ctx.SignedHeaderVals = make(http.Header) } lowerCaseKey := strings.ToLower(k) if _, ok := ctx.SignedHeaderVals[lowerCaseKey]; ok { // include additional values ctx.SignedHeaderVals[lowerCaseKey] = append(ctx.SignedHeaderVals[lowerCaseKey], v...) continue } headers = append(headers, lowerCaseKey) ctx.SignedHeaderVals[lowerCaseKey] = v } sort.Strings(headers) ctx.signedHeaders = strings.Join(headers, ";") if ctx.isPresign { ctx.Query.Set("X-Amz-SignedHeaders", ctx.signedHeaders) } headerValues := make([]string, len(headers)) for i, k := range headers { if k == "host" { headerValues[i] = "host:" + ctx.Request.URL.Host } else { headerValues[i] = k + ":" + strings.Join(ctx.SignedHeaderVals[k], ",") } } ctx.canonicalHeaders = strings.Join(stripExcessSpaces(headerValues), "\n") } func (ctx *signingCtx) buildCanonicalString() { ctx.Request.URL.RawQuery = strings.Replace(ctx.Query.Encode(), "+", "%20", -1) uri := getURIPath(ctx.Request.URL) if !ctx.DisableURIPathEscaping { uri = rest.EscapePath(uri, false) } ctx.canonicalString = strings.Join([]string{ ctx.Request.Method, uri, ctx.Request.URL.RawQuery, ctx.canonicalHeaders + "\n", ctx.signedHeaders, ctx.bodyDigest, }, "\n") } func (ctx *signingCtx) buildStringToSign() { ctx.stringToSign = strings.Join([]string{ authHeaderPrefix, ctx.formattedTime, ctx.credentialString, hex.EncodeToString(makeSha256([]byte(ctx.canonicalString))), }, "\n") } func (ctx *signingCtx) buildSignature() { secret := ctx.credValues.SecretAccessKey date := makeHmac([]byte("AWS4"+secret), []byte(ctx.formattedShortTime)) region := makeHmac(date, []byte(ctx.Region)) service := makeHmac(region, []byte(ctx.ServiceName)) credentials := makeHmac(service, []byte("aws4_request")) signature := makeHmac(credentials, []byte(ctx.stringToSign)) ctx.signature = hex.EncodeToString(signature) } func (ctx *signingCtx) buildBodyDigest() { hash := ctx.Request.Header.Get("X-Amz-Content-Sha256") if hash == "" { if ctx.isPresign && ctx.ServiceName == "s3" { hash = "UNSIGNED-PAYLOAD" } else if ctx.Body == nil { hash = emptyStringSHA256 } else { hash = hex.EncodeToString(makeSha256Reader(ctx.Body)) } if ctx.ServiceName == "s3" || ctx.ServiceName == "glacier" { ctx.Request.Header.Set("X-Amz-Content-Sha256", hash) } } ctx.bodyDigest = hash } // isRequestSigned returns if the request is currently signed or presigned func (ctx *signingCtx) isRequestSigned() bool { if ctx.isPresign && ctx.Query.Get("X-Amz-Signature") != "" { return true } if ctx.Request.Header.Get("Authorization") != "" { return true } return false } // unsign removes signing flags for both signed and presigned requests. func (ctx *signingCtx) removePresign() { ctx.Query.Del("X-Amz-Algorithm") ctx.Query.Del("X-Amz-Signature") ctx.Query.Del("X-Amz-Security-Token") ctx.Query.Del("X-Amz-Date") ctx.Query.Del("X-Amz-Expires") ctx.Query.Del("X-Amz-Credential") ctx.Query.Del("X-Amz-SignedHeaders") } func makeHmac(key []byte, data []byte) []byte { hash := hmac.New(sha256.New, key) hash.Write(data) return hash.Sum(nil) } func makeSha256(data []byte) []byte { hash := sha256.New() hash.Write(data) return hash.Sum(nil) } func makeSha256Reader(reader io.ReadSeeker) []byte { hash := sha256.New() start, _ := reader.Seek(0, 1) defer reader.Seek(start, 0) io.Copy(hash, reader) return hash.Sum(nil) } const doubleSpaces = " " var doubleSpaceBytes = []byte(doubleSpaces) func stripExcessSpaces(headerVals []string) []string { vals := make([]string, len(headerVals)) for i, str := range headerVals { // Trim leading and trailing spaces trimmed := strings.TrimSpace(str) idx := strings.Index(trimmed, doubleSpaces) var buf []byte for idx > -1 { // Multiple adjacent spaces found if buf == nil { // first time create the buffer buf = []byte(trimmed) } stripToIdx := -1 for j := idx + 1; j < len(buf); j++ { if buf[j] != ' ' { buf = append(buf[:idx+1], buf[j:]...) stripToIdx = j break } } if stripToIdx >= 0 { idx = bytes.Index(buf[stripToIdx:], doubleSpaceBytes) if idx >= 0 { idx += stripToIdx } } else { idx = -1 } } if buf != nil { vals[i] = string(buf) } else { vals[i] = trimmed } } return vals } aws-sdk-go-1.4.22/aws/signer/v4/v4_test.go000066400000000000000000000302761300374646400201240ustar00rootroot00000000000000package v4 import ( "bytes" "io" "io/ioutil" "net/http" "net/http/httptest" "strings" "testing" "time" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting" ) func TestStripExcessHeaders(t *testing.T) { vals := []string{ "123", "1 2 3", " 1 2 3", "1 2 3", "1 23", "1 2 3", "1 2 ", " 1 2 ", } expected := []string{ "123", "1 2 3", "1 2 3", "1 2 3", "1 23", "1 2 3", "1 2", "1 2", } newVals := stripExcessSpaces(vals) for i := 0; i < len(newVals); i++ { assert.Equal(t, expected[i], newVals[i], "test: %d", i) } } func buildRequest(serviceName, region, body string) (*http.Request, io.ReadSeeker) { endpoint := "https://" + serviceName + "." + region + ".amazonaws.com" reader := strings.NewReader(body) req, _ := http.NewRequest("POST", endpoint, reader) req.URL.Opaque = "//example.org/bucket/key-._~,!@#$%^&*()" req.Header.Add("X-Amz-Target", "prefix.Operation") req.Header.Add("Content-Type", "application/x-amz-json-1.0") req.Header.Add("Content-Length", string(len(body))) req.Header.Add("X-Amz-Meta-Other-Header", "some-value=!@#$%^&* (+)") req.Header.Add("X-Amz-Meta-Other-Header_With_Underscore", "some-value=!@#$%^&* (+)") req.Header.Add("X-amz-Meta-Other-Header_With_Underscore", "some-value=!@#$%^&* (+)") return req, reader } func buildSigner() Signer { return Signer{ Credentials: credentials.NewStaticCredentials("AKID", "SECRET", "SESSION"), } } func removeWS(text string) string { text = strings.Replace(text, " ", "", -1) text = strings.Replace(text, "\n", "", -1) text = strings.Replace(text, "\t", "", -1) return text } func assertEqual(t *testing.T, expected, given string) { if removeWS(expected) != removeWS(given) { t.Errorf("\nExpected: %s\nGiven: %s", expected, given) } } func TestPresignRequest(t *testing.T) { req, body := buildRequest("dynamodb", "us-east-1", "{}") signer := buildSigner() signer.Presign(req, body, "dynamodb", "us-east-1", 300*time.Second, time.Unix(0, 0)) expectedDate := "19700101T000000Z" expectedHeaders := "content-length;content-type;host;x-amz-meta-other-header;x-amz-meta-other-header_with_underscore" expectedSig := "ea7856749041f727690c580569738282e99c79355fe0d8f125d3b5535d2ece83" expectedCred := "AKID/19700101/us-east-1/dynamodb/aws4_request" expectedTarget := "prefix.Operation" q := req.URL.Query() assert.Equal(t, expectedSig, q.Get("X-Amz-Signature")) assert.Equal(t, expectedCred, q.Get("X-Amz-Credential")) assert.Equal(t, expectedHeaders, q.Get("X-Amz-SignedHeaders")) assert.Equal(t, expectedDate, q.Get("X-Amz-Date")) assert.Empty(t, q.Get("X-Amz-Meta-Other-Header")) assert.Equal(t, expectedTarget, q.Get("X-Amz-Target")) } func TestSignRequest(t *testing.T) { req, body := buildRequest("dynamodb", "us-east-1", "{}") signer := buildSigner() signer.Sign(req, body, "dynamodb", "us-east-1", time.Unix(0, 0)) expectedDate := "19700101T000000Z" expectedSig := "AWS4-HMAC-SHA256 Credential=AKID/19700101/us-east-1/dynamodb/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-date;x-amz-meta-other-header;x-amz-meta-other-header_with_underscore;x-amz-security-token;x-amz-target, Signature=ea766cabd2ec977d955a3c2bae1ae54f4515d70752f2207618396f20aa85bd21" q := req.Header assert.Equal(t, expectedSig, q.Get("Authorization")) assert.Equal(t, expectedDate, q.Get("X-Amz-Date")) } func TestSignBodyS3(t *testing.T) { req, body := buildRequest("s3", "us-east-1", "hello") signer := buildSigner() signer.Sign(req, body, "s3", "us-east-1", time.Now()) hash := req.Header.Get("X-Amz-Content-Sha256") assert.Equal(t, "2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824", hash) } func TestSignBodyGlacier(t *testing.T) { req, body := buildRequest("glacier", "us-east-1", "hello") signer := buildSigner() signer.Sign(req, body, "glacier", "us-east-1", time.Now()) hash := req.Header.Get("X-Amz-Content-Sha256") assert.Equal(t, "2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824", hash) } func TestPresignEmptyBodyS3(t *testing.T) { req, body := buildRequest("s3", "us-east-1", "hello") signer := buildSigner() signer.Presign(req, body, "s3", "us-east-1", 5*time.Minute, time.Now()) hash := req.Header.Get("X-Amz-Content-Sha256") assert.Equal(t, "UNSIGNED-PAYLOAD", hash) } func TestSignPrecomputedBodyChecksum(t *testing.T) { req, body := buildRequest("dynamodb", "us-east-1", "hello") req.Header.Set("X-Amz-Content-Sha256", "PRECOMPUTED") signer := buildSigner() signer.Sign(req, body, "dynamodb", "us-east-1", time.Now()) hash := req.Header.Get("X-Amz-Content-Sha256") assert.Equal(t, "PRECOMPUTED", hash) } func TestAnonymousCredentials(t *testing.T) { svc := awstesting.NewClient(&aws.Config{Credentials: credentials.AnonymousCredentials}) r := svc.NewRequest( &request.Operation{ Name: "BatchGetItem", HTTPMethod: "POST", HTTPPath: "/", }, nil, nil, ) SignSDKRequest(r) urlQ := r.HTTPRequest.URL.Query() assert.Empty(t, urlQ.Get("X-Amz-Signature")) assert.Empty(t, urlQ.Get("X-Amz-Credential")) assert.Empty(t, urlQ.Get("X-Amz-SignedHeaders")) assert.Empty(t, urlQ.Get("X-Amz-Date")) hQ := r.HTTPRequest.Header assert.Empty(t, hQ.Get("Authorization")) assert.Empty(t, hQ.Get("X-Amz-Date")) } func TestIgnoreResignRequestWithValidCreds(t *testing.T) { svc := awstesting.NewClient(&aws.Config{ Credentials: credentials.NewStaticCredentials("AKID", "SECRET", "SESSION"), Region: aws.String("us-west-2"), }) r := svc.NewRequest( &request.Operation{ Name: "BatchGetItem", HTTPMethod: "POST", HTTPPath: "/", }, nil, nil, ) SignSDKRequest(r) sig := r.HTTPRequest.Header.Get("Authorization") signSDKRequestWithCurrTime(r, func() time.Time { // Simulate one second has passed so that signature's date changes // when it is resigned. return time.Now().Add(1 * time.Second) }) assert.NotEqual(t, sig, r.HTTPRequest.Header.Get("Authorization")) } func TestIgnorePreResignRequestWithValidCreds(t *testing.T) { svc := awstesting.NewClient(&aws.Config{ Credentials: credentials.NewStaticCredentials("AKID", "SECRET", "SESSION"), Region: aws.String("us-west-2"), }) r := svc.NewRequest( &request.Operation{ Name: "BatchGetItem", HTTPMethod: "POST", HTTPPath: "/", }, nil, nil, ) r.ExpireTime = time.Minute * 10 SignSDKRequest(r) sig := r.HTTPRequest.URL.Query().Get("X-Amz-Signature") signSDKRequestWithCurrTime(r, func() time.Time { // Simulate one second has passed so that signature's date changes // when it is resigned. return time.Now().Add(1 * time.Second) }) assert.NotEqual(t, sig, r.HTTPRequest.URL.Query().Get("X-Amz-Signature")) } func TestResignRequestExpiredCreds(t *testing.T) { creds := credentials.NewStaticCredentials("AKID", "SECRET", "SESSION") svc := awstesting.NewClient(&aws.Config{Credentials: creds}) r := svc.NewRequest( &request.Operation{ Name: "BatchGetItem", HTTPMethod: "POST", HTTPPath: "/", }, nil, nil, ) SignSDKRequest(r) querySig := r.HTTPRequest.Header.Get("Authorization") var origSignedHeaders string for _, p := range strings.Split(querySig, ", ") { if strings.HasPrefix(p, "SignedHeaders=") { origSignedHeaders = p[len("SignedHeaders="):] break } } assert.NotEmpty(t, origSignedHeaders) assert.NotContains(t, origSignedHeaders, "authorization") origSignedAt := r.LastSignedAt creds.Expire() signSDKRequestWithCurrTime(r, func() time.Time { // Simulate one second has passed so that signature's date changes // when it is resigned. return time.Now().Add(1 * time.Second) }) updatedQuerySig := r.HTTPRequest.Header.Get("Authorization") assert.NotEqual(t, querySig, updatedQuerySig) var updatedSignedHeaders string for _, p := range strings.Split(updatedQuerySig, ", ") { if strings.HasPrefix(p, "SignedHeaders=") { updatedSignedHeaders = p[len("SignedHeaders="):] break } } assert.NotEmpty(t, updatedSignedHeaders) assert.NotContains(t, updatedQuerySig, "authorization") assert.NotEqual(t, origSignedAt, r.LastSignedAt) } func TestPreResignRequestExpiredCreds(t *testing.T) { provider := &credentials.StaticProvider{Value: credentials.Value{ AccessKeyID: "AKID", SecretAccessKey: "SECRET", SessionToken: "SESSION", }} creds := credentials.NewCredentials(provider) svc := awstesting.NewClient(&aws.Config{Credentials: creds}) r := svc.NewRequest( &request.Operation{ Name: "BatchGetItem", HTTPMethod: "POST", HTTPPath: "/", }, nil, nil, ) r.ExpireTime = time.Minute * 10 SignSDKRequest(r) querySig := r.HTTPRequest.URL.Query().Get("X-Amz-Signature") signedHeaders := r.HTTPRequest.URL.Query().Get("X-Amz-SignedHeaders") assert.NotEmpty(t, signedHeaders) origSignedAt := r.LastSignedAt creds.Expire() signSDKRequestWithCurrTime(r, func() time.Time { // Simulate the request occurred 15 minutes in the past return time.Now().Add(-48 * time.Hour) }) assert.NotEqual(t, querySig, r.HTTPRequest.URL.Query().Get("X-Amz-Signature")) resignedHeaders := r.HTTPRequest.URL.Query().Get("X-Amz-SignedHeaders") assert.Equal(t, signedHeaders, resignedHeaders) assert.NotContains(t, signedHeaders, "x-amz-signedHeaders") assert.NotEqual(t, origSignedAt, r.LastSignedAt) } func TestResignRequestExpiredRequest(t *testing.T) { creds := credentials.NewStaticCredentials("AKID", "SECRET", "SESSION") svc := awstesting.NewClient(&aws.Config{Credentials: creds}) r := svc.NewRequest( &request.Operation{ Name: "BatchGetItem", HTTPMethod: "POST", HTTPPath: "/", }, nil, nil, ) SignSDKRequest(r) querySig := r.HTTPRequest.Header.Get("Authorization") origSignedAt := r.LastSignedAt signSDKRequestWithCurrTime(r, func() time.Time { // Simulate the request occurred 15 minutes in the past return time.Now().Add(15 * time.Minute) }) assert.NotEqual(t, querySig, r.HTTPRequest.Header.Get("Authorization")) assert.NotEqual(t, origSignedAt, r.LastSignedAt) } func TestSignWithRequestBody(t *testing.T) { creds := credentials.NewStaticCredentials("AKID", "SECRET", "SESSION") signer := NewSigner(creds) expectBody := []byte("abc123") server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { b, err := ioutil.ReadAll(r.Body) r.Body.Close() assert.NoError(t, err) assert.Equal(t, expectBody, b) w.WriteHeader(http.StatusOK) })) req, err := http.NewRequest("POST", server.URL, nil) _, err = signer.Sign(req, bytes.NewReader(expectBody), "service", "region", time.Now()) assert.NoError(t, err) resp, err := http.DefaultClient.Do(req) assert.NoError(t, err) assert.Equal(t, http.StatusOK, resp.StatusCode) } func TestSignWithRequestBody_Overwrite(t *testing.T) { creds := credentials.NewStaticCredentials("AKID", "SECRET", "SESSION") signer := NewSigner(creds) var expectBody []byte server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { b, err := ioutil.ReadAll(r.Body) r.Body.Close() assert.NoError(t, err) assert.Equal(t, len(expectBody), len(b)) w.WriteHeader(http.StatusOK) })) req, err := http.NewRequest("GET", server.URL, strings.NewReader("invalid body")) _, err = signer.Sign(req, nil, "service", "region", time.Now()) req.ContentLength = 0 assert.NoError(t, err) resp, err := http.DefaultClient.Do(req) assert.NoError(t, err) assert.Equal(t, http.StatusOK, resp.StatusCode) } func BenchmarkPresignRequest(b *testing.B) { signer := buildSigner() req, body := buildRequest("dynamodb", "us-east-1", "{}") for i := 0; i < b.N; i++ { signer.Presign(req, body, "dynamodb", "us-east-1", 300*time.Second, time.Now()) } } func BenchmarkSignRequest(b *testing.B) { signer := buildSigner() req, body := buildRequest("dynamodb", "us-east-1", "{}") for i := 0; i < b.N; i++ { signer.Sign(req, body, "dynamodb", "us-east-1", time.Now()) } } func BenchmarkStripExcessSpaces(b *testing.B) { vals := []string{ `AWS4-HMAC-SHA256 Credential=AKIDFAKEIDFAKEID/20160628/us-west-2/s3/aws4_request, SignedHeaders=host;x-amz-date, Signature=1234567890abcdef1234567890abcdef1234567890abcdef`, `123 321 123 321`, ` 123 321 123 321 `, } b.ResetTimer() for i := 0; i < b.N; i++ { stripExcessSpaces(vals) } } aws-sdk-go-1.4.22/aws/types.go000066400000000000000000000057611300374646400160610ustar00rootroot00000000000000package aws import ( "io" "sync" ) // ReadSeekCloser wraps a io.Reader returning a ReaderSeekerCloser func ReadSeekCloser(r io.Reader) ReaderSeekerCloser { return ReaderSeekerCloser{r} } // ReaderSeekerCloser represents a reader that can also delegate io.Seeker and // io.Closer interfaces to the underlying object if they are available. type ReaderSeekerCloser struct { r io.Reader } // Read reads from the reader up to size of p. The number of bytes read, and // error if it occurred will be returned. // // If the reader is not an io.Reader zero bytes read, and nil error will be returned. // // Performs the same functionality as io.Reader Read func (r ReaderSeekerCloser) Read(p []byte) (int, error) { switch t := r.r.(type) { case io.Reader: return t.Read(p) } return 0, nil } // Seek sets the offset for the next Read to offset, interpreted according to // whence: 0 means relative to the origin of the file, 1 means relative to the // current offset, and 2 means relative to the end. Seek returns the new offset // and an error, if any. // // If the ReaderSeekerCloser is not an io.Seeker nothing will be done. func (r ReaderSeekerCloser) Seek(offset int64, whence int) (int64, error) { switch t := r.r.(type) { case io.Seeker: return t.Seek(offset, whence) } return int64(0), nil } // Close closes the ReaderSeekerCloser. // // If the ReaderSeekerCloser is not an io.Closer nothing will be done. func (r ReaderSeekerCloser) Close() error { switch t := r.r.(type) { case io.Closer: return t.Close() } return nil } // A WriteAtBuffer provides a in memory buffer supporting the io.WriterAt interface // Can be used with the s3manager.Downloader to download content to a buffer // in memory. Safe to use concurrently. type WriteAtBuffer struct { buf []byte m sync.Mutex // GrowthCoeff defines the growth rate of the internal buffer. By // default, the growth rate is 1, where expanding the internal // buffer will allocate only enough capacity to fit the new expected // length. GrowthCoeff float64 } // NewWriteAtBuffer creates a WriteAtBuffer with an internal buffer // provided by buf. func NewWriteAtBuffer(buf []byte) *WriteAtBuffer { return &WriteAtBuffer{buf: buf} } // WriteAt writes a slice of bytes to a buffer starting at the position provided // The number of bytes written will be returned, or error. Can overwrite previous // written slices if the write ats overlap. func (b *WriteAtBuffer) WriteAt(p []byte, pos int64) (n int, err error) { pLen := len(p) expLen := pos + int64(pLen) b.m.Lock() defer b.m.Unlock() if int64(len(b.buf)) < expLen { if int64(cap(b.buf)) < expLen { if b.GrowthCoeff < 1 { b.GrowthCoeff = 1 } newBuf := make([]byte, expLen, int64(b.GrowthCoeff*float64(expLen))) copy(newBuf, b.buf) b.buf = newBuf } b.buf = b.buf[:expLen] } copy(b.buf[pos:], p) return pLen, nil } // Bytes returns a slice of bytes written to the buffer. func (b *WriteAtBuffer) Bytes() []byte { b.m.Lock() defer b.m.Unlock() return b.buf[:len(b.buf):len(b.buf)] } aws-sdk-go-1.4.22/aws/types_test.go000066400000000000000000000032151300374646400171100ustar00rootroot00000000000000package aws import ( "math/rand" "testing" "github.com/stretchr/testify/assert" ) func TestWriteAtBuffer(t *testing.T) { b := &WriteAtBuffer{} n, err := b.WriteAt([]byte{1}, 0) assert.NoError(t, err) assert.Equal(t, 1, n) n, err = b.WriteAt([]byte{1, 1, 1}, 5) assert.NoError(t, err) assert.Equal(t, 3, n) n, err = b.WriteAt([]byte{2}, 1) assert.NoError(t, err) assert.Equal(t, 1, n) n, err = b.WriteAt([]byte{3}, 2) assert.NoError(t, err) assert.Equal(t, 1, n) assert.Equal(t, []byte{1, 2, 3, 0, 0, 1, 1, 1}, b.Bytes()) } func BenchmarkWriteAtBuffer(b *testing.B) { buf := &WriteAtBuffer{} r := rand.New(rand.NewSource(1)) b.ResetTimer() for i := 0; i < b.N; i++ { to := r.Intn(10) * 4096 bs := make([]byte, to) buf.WriteAt(bs, r.Int63n(10)*4096) } } func BenchmarkWriteAtBufferOrderedWrites(b *testing.B) { // test the performance of a WriteAtBuffer when written in an // ordered fashion. This is similar to the behavior of the // s3.Downloader, since downloads the first chunk of the file, then // the second, and so on. // // This test simulates a 150MB file being written in 30 ordered 5MB chunks. chunk := int64(5e6) max := chunk * 30 // we'll write the same 5MB chunk every time tmp := make([]byte, chunk) for i := 0; i < b.N; i++ { buf := &WriteAtBuffer{} for i := int64(0); i < max; i += chunk { buf.WriteAt(tmp, i) } } } func BenchmarkWriteAtBufferParallel(b *testing.B) { buf := &WriteAtBuffer{} r := rand.New(rand.NewSource(1)) b.ResetTimer() b.RunParallel(func(pb *testing.PB) { for pb.Next() { to := r.Intn(10) * 4096 bs := make([]byte, to) buf.WriteAt(bs, r.Int63n(10)*4096) } }) } aws-sdk-go-1.4.22/aws/version.go000066400000000000000000000003471300374646400163750ustar00rootroot00000000000000// Package aws provides core functionality for making requests to AWS services. package aws // SDKName is the name of this AWS SDK const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK const SDKVersion = "1.4.22" aws-sdk-go-1.4.22/awsmigrate/000077500000000000000000000000001300374646400157265ustar00rootroot00000000000000aws-sdk-go-1.4.22/awsmigrate/awsmigrate-renamer/000077500000000000000000000000001300374646400215205ustar00rootroot00000000000000aws-sdk-go-1.4.22/awsmigrate/awsmigrate-renamer/Godeps/000077500000000000000000000000001300374646400227415ustar00rootroot00000000000000aws-sdk-go-1.4.22/awsmigrate/awsmigrate-renamer/Godeps/Godeps.json000066400000000000000000000007371300374646400250640ustar00rootroot00000000000000{ "ImportPath": "github.com/aws/aws-sdk-go/awsmigrate/awsmigrate-renamer", "GoVersion": "go1.6", "GodepVersion": "v60", "Deps": [ { "ImportPath": "golang.org/x/tools/go/ast/astutil", "Rev": "b75b3f5cd5d50fbb1fb88ce784d2e7cca17bba8a" }, { "ImportPath": "golang.org/x/tools/go/buildutil", "Rev": "b75b3f5cd5d50fbb1fb88ce784d2e7cca17bba8a" }, { "ImportPath": "golang.org/x/tools/go/loader", "Rev": "b75b3f5cd5d50fbb1fb88ce784d2e7cca17bba8a" } ] } aws-sdk-go-1.4.22/awsmigrate/awsmigrate-renamer/Godeps/Readme000066400000000000000000000002101300374646400240520ustar00rootroot00000000000000This directory tree is generated automatically by godep. Please do not edit. See https://github.com/tools/godep for more information. aws-sdk-go-1.4.22/awsmigrate/awsmigrate-renamer/gen/000077500000000000000000000000001300374646400222715ustar00rootroot00000000000000aws-sdk-go-1.4.22/awsmigrate/awsmigrate-renamer/gen/gen.go000066400000000000000000000107561300374646400234020ustar00rootroot00000000000000// +build go1.5,deprecated package main import ( "bytes" "go/format" "io" "os" "path/filepath" "sort" "strings" "text/template" "github.com/aws/aws-sdk-go/private/model/api" ) type pkg struct { oldAPI *api.API newAPI *api.API shapes map[string]*shapentry operations map[string]*opentry } type shapentry struct { oldShape *api.Shape newShape *api.Shape } type opentry struct { oldName string newName string } type packageRenames struct { Shapes map[string]string Operations map[string]string Fields map[string]string } var exportMap = map[string]*packageRenames{} func generateRenames(w io.Writer) error { tmpl, err := template.New("renames").Parse(t) if err != nil { return err } out := bytes.NewBuffer(nil) if err = tmpl.Execute(out, exportMap); err != nil { return err } b, err := format.Source(bytes.TrimSpace(out.Bytes())) if err != nil { return err } _, err = io.Copy(w, bytes.NewReader(b)) return err } const t = ` package rename // THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. var renamedPackages = map[string]*packageRenames{ {{ range $key, $entry := . }}"{{ $key }}": &packageRenames{ operations: map[string]string{ {{ range $old, $new := $entry.Operations }}"{{ $old }}": "{{ $new }}", {{ end }} }, shapes: map[string]string{ {{ range $old, $new := $entry.Shapes }}"{{ $old }}": "{{ $new }}", {{ end }} }, fields: map[string]string{ {{ range $old, $new := $entry.Fields }}"{{ $old }}": "{{ $new }}", {{ end }} }, }, {{ end }} } ` func (p *pkg) buildRenames() { pkgName := "github.com/aws/aws-sdk-go/service/" + p.oldAPI.PackageName() if exportMap[pkgName] == nil { exportMap[pkgName] = &packageRenames{map[string]string{}, map[string]string{}, map[string]string{}} } ifacename := "github.com/aws/aws-sdk-go/service/" + p.oldAPI.PackageName() + "/" + p.oldAPI.InterfacePackageName() if exportMap[ifacename] == nil { exportMap[ifacename] = &packageRenames{map[string]string{}, map[string]string{}, map[string]string{}} } for _, entry := range p.operations { if entry.oldName != entry.newName { pkgNames := []string{pkgName, ifacename} for _, p := range pkgNames { exportMap[p].Operations[entry.oldName] = entry.newName exportMap[p].Operations[entry.oldName+"Request"] = entry.newName + "Request" exportMap[p].Operations[entry.oldName+"Pages"] = entry.newName + "Pages" } } } for _, entry := range p.shapes { if entry.oldShape.Type == "structure" { if entry.oldShape.ShapeName != entry.newShape.ShapeName { exportMap[pkgName].Shapes[entry.oldShape.ShapeName] = entry.newShape.ShapeName } for _, n := range entry.oldShape.MemberNames() { for _, m := range entry.newShape.MemberNames() { if n != m && strings.ToLower(n) == strings.ToLower(m) { exportMap[pkgName].Fields[n] = m } } } } } } func load(file string) *pkg { p := &pkg{&api.API{}, &api.API{}, map[string]*shapentry{}, map[string]*opentry{}} p.oldAPI.Attach(file) p.oldAPI.Setup() p.newAPI.Attach(file) p.newAPI.Setup() for _, name := range p.oldAPI.OperationNames() { p.operations[strings.ToLower(name)] = &opentry{oldName: name} } for _, name := range p.newAPI.OperationNames() { p.operations[strings.ToLower(name)].newName = name } for _, shape := range p.oldAPI.ShapeList() { p.shapes[strings.ToLower(shape.ShapeName)] = &shapentry{oldShape: shape} } for _, shape := range p.newAPI.ShapeList() { if _, ok := p.shapes[strings.ToLower(shape.ShapeName)]; !ok { panic("missing shape " + shape.ShapeName) } p.shapes[strings.ToLower(shape.ShapeName)].newShape = shape } return p } var excludeServices = map[string]struct{}{ "simpledb": {}, "importexport": {}, } func main() { files, _ := filepath.Glob("../../apis/*/*/api-2.json") sort.Strings(files) // Remove old API versions from list m := map[string]bool{} for i := range files { idx := len(files) - 1 - i parts := strings.Split(files[idx], string(filepath.Separator)) svc := parts[len(parts)-3] // service name is 2nd-to-last component if m[svc] { files[idx] = "" // wipe this one out if we already saw the service } m[svc] = true } for i := range files { file := files[i] if file == "" { // empty file continue } if g := load(file); g != nil { if _, ok := excludeServices[g.oldAPI.PackageName()]; !ok { g.buildRenames() } } } outfile, err := os.Create("rename/renames.go") if err != nil { panic(err) } if err := generateRenames(outfile); err != nil { panic(err) } } aws-sdk-go-1.4.22/awsmigrate/awsmigrate-renamer/rename/000077500000000000000000000000001300374646400227675ustar00rootroot00000000000000aws-sdk-go-1.4.22/awsmigrate/awsmigrate-renamer/rename/rename.go000066400000000000000000000047621300374646400245760ustar00rootroot00000000000000// +build go1.5,deprecated package rename import ( "bytes" "flag" "fmt" "go/format" "go/parser" "go/token" "go/types" "io/ioutil" "golang.org/x/tools/go/loader" ) var dryRun = flag.Bool("dryrun", false, "Dry run") var verbose = flag.Bool("verbose", false, "Verbose") type packageRenames struct { operations map[string]string shapes map[string]string fields map[string]string } type renamer struct { *loader.Program files map[*token.File]bool } // ParsePathsFromArgs parses arguments from command line and looks at import // paths to rename objects. func ParsePathsFromArgs() { flag.Parse() for _, dir := range flag.Args() { var conf loader.Config conf.ParserMode = parser.ParseComments conf.ImportWithTests(dir) prog, err := conf.Load() if err != nil { panic(err) } r := renamer{prog, map[*token.File]bool{}} r.parse() if !*dryRun { r.write() } } } func (r *renamer) dryInfo() string { if *dryRun { return "[DRY-RUN]" } return "[!]" } func (r *renamer) printf(msg string, args ...interface{}) { if *verbose { fmt.Printf(msg, args...) } } func (r *renamer) parse() { for _, pkg := range r.InitialPackages() { r.parseUses(pkg) } } func (r *renamer) write() { for _, pkg := range r.InitialPackages() { for _, f := range pkg.Files { tokenFile := r.Fset.File(f.Pos()) if r.files[tokenFile] { var buf bytes.Buffer format.Node(&buf, r.Fset, f) if err := ioutil.WriteFile(tokenFile.Name(), buf.Bytes(), 0644); err != nil { panic(err) } } } } } func (r *renamer) parseUses(pkg *loader.PackageInfo) { for k, v := range pkg.Uses { if v.Pkg() != nil { pkgPath := v.Pkg().Path() if renames, ok := renamedPackages[pkgPath]; ok { name := k.Name switch t := v.(type) { case *types.Func: if newName, ok := renames.operations[t.Name()]; ok && newName != name { r.printf("%s Rename [OPERATION]: %q -> %q\n", r.dryInfo(), name, newName) r.files[r.Fset.File(k.Pos())] = true k.Name = newName } case *types.TypeName: if newName, ok := renames.shapes[name]; ok && newName != name { r.printf("%s Rename [SHAPE]: %q -> %q\n", r.dryInfo(), t.Name(), newName) r.files[r.Fset.File(k.Pos())] = true k.Name = newName } case *types.Var: if newName, ok := renames.fields[name]; ok && newName != name { r.printf("%s Rename [FIELD]: %q -> %q\n", r.dryInfo(), t.Name(), newName) r.files[r.Fset.File(k.Pos())] = true k.Name = newName } } } } } } aws-sdk-go-1.4.22/awsmigrate/awsmigrate-renamer/rename/renames.go000066400000000000000000003107301300374646400247540ustar00rootroot00000000000000// +build go1.5,deprecated package rename // THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. var renamedPackages = map[string]*packageRenames{ "github.com/aws/aws-sdk-go/service/autoscaling": { operations: map[string]string{}, shapes: map[string]string{ "EBS": "Ebs", }, fields: map[string]string{ "ActivityID": "ActivityId", "ActivityIDs": "ActivityIds", "AssociatePublicIPAddress": "AssociatePublicIpAddress", "ClassicLinkVPCID": "ClassicLinkVPCId", "EBS": "Ebs", "EBSOptimized": "EbsOptimized", "IAMInstanceProfile": "IamInstanceProfile", "IOPS": "Iops", "ImageID": "ImageId", "InstanceID": "InstanceId", "InstanceIDs": "InstanceIds", "KernelID": "KernelId", "RAMDiskID": "RamdiskId", "ResourceID": "ResourceId", "SnapshotID": "SnapshotId", }, }, "github.com/aws/aws-sdk-go/service/autoscaling/autoscalingiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/cloudformation": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "EventID": "EventId", "LogicalResourceID": "LogicalResourceId", "PhysicalResourceID": "PhysicalResourceId", "StackID": "StackId", "URL": "Url", "UniqueID": "UniqueId", }, }, "github.com/aws/aws-sdk-go/service/cloudformation/cloudformationiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/cloudfront": { operations: map[string]string{}, shapes: map[string]string{ "KeyPairIDs": "KeyPairIds", }, fields: map[string]string{ "AWSAccountNumber": "AwsAccountNumber", "DistributionID": "DistributionId", "IAMCertificateID": "IAMCertificateId", "ID": "Id", "KeyPairIDs": "KeyPairIds", "S3CanonicalUserID": "S3CanonicalUserId", "TargetOriginID": "TargetOriginId", }, }, "github.com/aws/aws-sdk-go/service/cloudfront/cloudfrontiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/cloudhsm": { operations: map[string]string{ "CreateHAPG": "CreateHapg", "CreateHAPGPages": "CreateHapgPages", "CreateHAPGRequest": "CreateHapgRequest", "CreateHSM": "CreateHsm", "CreateHSMPages": "CreateHsmPages", "CreateHSMRequest": "CreateHsmRequest", "DeleteHAPG": "DeleteHapg", "DeleteHAPGPages": "DeleteHapgPages", "DeleteHAPGRequest": "DeleteHapgRequest", "DeleteHSM": "DeleteHsm", "DeleteHSMPages": "DeleteHsmPages", "DeleteHSMRequest": "DeleteHsmRequest", "DescribeHAPG": "DescribeHapg", "DescribeHAPGPages": "DescribeHapgPages", "DescribeHAPGRequest": "DescribeHapgRequest", "DescribeHSM": "DescribeHsm", "DescribeHSMPages": "DescribeHsmPages", "DescribeHSMRequest": "DescribeHsmRequest", "ListHSMs": "ListHsms", "ListHSMsPages": "ListHsmsPages", "ListHSMsRequest": "ListHsmsRequest", "ModifyHAPG": "ModifyHapg", "ModifyHAPGPages": "ModifyHapgPages", "ModifyHAPGRequest": "ModifyHapgRequest", "ModifyHSM": "ModifyHsm", "ModifyHSMPages": "ModifyHsmPages", "ModifyHSMRequest": "ModifyHsmRequest", }, shapes: map[string]string{ "CreateHAPGInput": "CreateHapgInput", "CreateHAPGOutput": "CreateHapgOutput", "CreateHSMInput": "CreateHsmInput", "CreateHSMOutput": "CreateHsmOutput", "DeleteHAPGInput": "DeleteHapgInput", "DeleteHAPGOutput": "DeleteHapgOutput", "DeleteHSMInput": "DeleteHsmInput", "DeleteHSMOutput": "DeleteHsmOutput", "DescribeHAPGInput": "DescribeHapgInput", "DescribeHAPGOutput": "DescribeHapgOutput", "DescribeHSMInput": "DescribeHsmInput", "DescribeHSMOutput": "DescribeHsmOutput", "ListHSMsInput": "ListHsmsInput", "ListHSMsOutput": "ListHsmsOutput", "ModifyHAPGInput": "ModifyHapgInput", "ModifyHAPGOutput": "ModifyHapgOutput", "ModifyHSMInput": "ModifyHsmInput", "ModifyHSMOutput": "ModifyHsmOutput", }, fields: map[string]string{ "ClientARN": "ClientArn", "ENIID": "EniId", "ENIIP": "EniIp", "ExternalID": "ExternalId", "HAPGARN": "HapgArn", "HAPGList": "HapgList", "HAPGSerial": "HapgSerial", "HSMARN": "HsmArn", "HSMList": "HsmList", "HSMSerialNumber": "HsmSerialNumber", "HSMType": "HsmType", "HSMsLastActionFailed": "HsmsLastActionFailed", "HSMsPendingDeletion": "HsmsPendingDeletion", "HSMsPendingRegistration": "HsmsPendingRegistration", "IAMRoleARN": "IamRoleArn", "SSHKey": "SshKey", "SSHKeyLastUpdated": "SshKeyLastUpdated", "SSHPublicKey": "SshPublicKey", "ServerCertURI": "ServerCertUri", "SubnetID": "SubnetId", "SyslogIP": "SyslogIp", "VPCID": "VpcId", }, }, "github.com/aws/aws-sdk-go/service/cloudhsm/cloudhsmiface": { operations: map[string]string{ "CreateHAPG": "CreateHapg", "CreateHAPGPages": "CreateHapgPages", "CreateHAPGRequest": "CreateHapgRequest", "CreateHSM": "CreateHsm", "CreateHSMPages": "CreateHsmPages", "CreateHSMRequest": "CreateHsmRequest", "DeleteHAPG": "DeleteHapg", "DeleteHAPGPages": "DeleteHapgPages", "DeleteHAPGRequest": "DeleteHapgRequest", "DeleteHSM": "DeleteHsm", "DeleteHSMPages": "DeleteHsmPages", "DeleteHSMRequest": "DeleteHsmRequest", "DescribeHAPG": "DescribeHapg", "DescribeHAPGPages": "DescribeHapgPages", "DescribeHAPGRequest": "DescribeHapgRequest", "DescribeHSM": "DescribeHsm", "DescribeHSMPages": "DescribeHsmPages", "DescribeHSMRequest": "DescribeHsmRequest", "ListHSMs": "ListHsms", "ListHSMsPages": "ListHsmsPages", "ListHSMsRequest": "ListHsmsRequest", "ModifyHAPG": "ModifyHapg", "ModifyHAPGPages": "ModifyHapgPages", "ModifyHAPGRequest": "ModifyHapgRequest", "ModifyHSM": "ModifyHsm", "ModifyHSMPages": "ModifyHsmPages", "ModifyHSMRequest": "ModifyHsmRequest", }, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/cloudsearch": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "DomainID": "DomainId", }, }, "github.com/aws/aws-sdk-go/service/cloudsearch/cloudsearchiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/cloudsearchdomain": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "ID": "Id", "RID": "Rid", "TimeMS": "Timems", }, }, "github.com/aws/aws-sdk-go/service/cloudsearchdomain/cloudsearchdomainiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/cloudtrail": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "CloudWatchLogsLogGroupARN": "CloudWatchLogsLogGroupArn", "CloudWatchLogsRoleARN": "CloudWatchLogsRoleArn", "EventID": "EventId", "SNSTopicName": "SnsTopicName", }, }, "github.com/aws/aws-sdk-go/service/cloudtrail/cloudtrailiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/cloudwatch": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "AlarmARN": "AlarmArn", }, }, "github.com/aws/aws-sdk-go/service/cloudwatch/cloudwatchiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/cloudwatchlogs": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "ARN": "Arn", "DestinationARN": "DestinationArn", "EventID": "EventId", "RoleARN": "RoleArn", "TargetARN": "TargetArn", }, }, "github.com/aws/aws-sdk-go/service/cloudwatchlogs/cloudwatchlogsiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/codecommit": { operations: map[string]string{}, shapes: map[string]string{ "RepositoryNameIDPair": "RepositoryNameIdPair", }, fields: map[string]string{ "ARN": "Arn", "AccountID": "AccountId", "CloneURLHTTP": "CloneUrlHttp", "CloneURLSSH": "CloneUrlSsh", "CommitID": "CommitId", "RepositoryID": "RepositoryId", }, }, "github.com/aws/aws-sdk-go/service/codecommit/codecommitiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/codedeploy": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "ApplicationID": "ApplicationId", "CommitID": "CommitId", "DeploymentConfigID": "DeploymentConfigId", "DeploymentGroupID": "DeploymentGroupId", "DeploymentID": "DeploymentId", "DeploymentIDs": "DeploymentIds", "EC2TagFilters": "Ec2TagFilters", "IAMUserARN": "IamUserArn", "InstanceARN": "InstanceArn", "InstanceID": "InstanceId", "ServiceRoleARN": "ServiceRoleArn", }, }, "github.com/aws/aws-sdk-go/service/codedeploy/codedeployiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/codepipeline": { operations: map[string]string{}, shapes: map[string]string{ "ActionTypeID": "ActionTypeId", }, fields: map[string]string{ "AccessKeyID": "AccessKeyId", "AccountID": "AccountId", "ActionTypeID": "ActionTypeId", "ClientID": "ClientId", "EntityURL": "EntityUrl", "EntityURLTemplate": "EntityUrlTemplate", "ExecutionURLTemplate": "ExecutionUrlTemplate", "ExternalExecutionID": "ExternalExecutionId", "ExternalExecutionURL": "ExternalExecutionUrl", "ID": "Id", "JobID": "JobId", "PipelineExecutionID": "PipelineExecutionId", "RevisionChangeID": "RevisionChangeId", "RevisionID": "RevisionId", "RevisionURL": "RevisionUrl", "RevisionURLTemplate": "RevisionUrlTemplate", "RoleARN": "RoleArn", "ThirdPartyConfigurationURL": "ThirdPartyConfigurationUrl", }, }, "github.com/aws/aws-sdk-go/service/codepipeline/codepipelineiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/cognitoidentity": { operations: map[string]string{ "GetID": "GetId", "GetIDPages": "GetIdPages", "GetIDRequest": "GetIdRequest", "GetOpenIDToken": "GetOpenIdToken", "GetOpenIDTokenForDeveloperIdentity": "GetOpenIdTokenForDeveloperIdentity", "GetOpenIDTokenForDeveloperIdentityPages": "GetOpenIdTokenForDeveloperIdentityPages", "GetOpenIDTokenForDeveloperIdentityRequest": "GetOpenIdTokenForDeveloperIdentityRequest", "GetOpenIDTokenPages": "GetOpenIdTokenPages", "GetOpenIDTokenRequest": "GetOpenIdTokenRequest", }, shapes: map[string]string{ "GetIDInput": "GetIdInput", "GetIDOutput": "GetIdOutput", "GetOpenIDTokenForDeveloperIdentityInput": "GetOpenIdTokenForDeveloperIdentityInput", "GetOpenIDTokenForDeveloperIdentityOutput": "GetOpenIdTokenForDeveloperIdentityOutput", "GetOpenIDTokenInput": "GetOpenIdTokenInput", "GetOpenIDTokenOutput": "GetOpenIdTokenOutput", "UnprocessedIdentityID": "UnprocessedIdentityId", }, fields: map[string]string{ "AccessKeyID": "AccessKeyId", "AccountID": "AccountId", "IdentityID": "IdentityId", "IdentityIDsToDelete": "IdentityIdsToDelete", "IdentityPoolID": "IdentityPoolId", "OpenIDConnectProviderARNs": "OpenIdConnectProviderARNs", "UnprocessedIdentityIDs": "UnprocessedIdentityIds", }, }, "github.com/aws/aws-sdk-go/service/cognitoidentity/cognitoidentityiface": { operations: map[string]string{ "GetID": "GetId", "GetIDPages": "GetIdPages", "GetIDRequest": "GetIdRequest", "GetOpenIDToken": "GetOpenIdToken", "GetOpenIDTokenForDeveloperIdentity": "GetOpenIdTokenForDeveloperIdentity", "GetOpenIDTokenForDeveloperIdentityPages": "GetOpenIdTokenForDeveloperIdentityPages", "GetOpenIDTokenForDeveloperIdentityRequest": "GetOpenIdTokenForDeveloperIdentityRequest", "GetOpenIDTokenPages": "GetOpenIdTokenPages", "GetOpenIDTokenRequest": "GetOpenIdTokenRequest", }, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/cognitosync": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "ApplicationARNs": "ApplicationArns", "DeviceID": "DeviceId", "IdentityID": "IdentityId", "IdentityPoolID": "IdentityPoolId", "RoleARN": "RoleArn", }, }, "github.com/aws/aws-sdk-go/service/cognitosync/cognitosynciface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/configservice": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "ARN": "Arn", "AccountID": "AccountId", "ConfigSnapshotID": "ConfigSnapshotId", "ConfigurationStateID": "ConfigurationStateId", "ResourceID": "ResourceId", "SNSTopicARN": "SnsTopicARN", }, }, "github.com/aws/aws-sdk-go/service/configservice/configserviceiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/datapipeline": { operations: map[string]string{}, shapes: map[string]string{ "PipelineIDName": "PipelineIdName", }, fields: map[string]string{ "AttemptID": "AttemptId", "ErrorID": "ErrorId", "ID": "Id", "IDs": "Ids", "ObjectID": "ObjectId", "ObjectIDs": "ObjectIds", "PipelineID": "PipelineId", "PipelineIDList": "PipelineIdList", "PipelineIDs": "PipelineIds", "TaskID": "TaskId", "TaskRunnerID": "TaskrunnerId", "UniqueID": "UniqueId", }, }, "github.com/aws/aws-sdk-go/service/datapipeline/datapipelineiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/devicefarm": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "ARN": "Arn", "AWSAccountNumber": "AwsAccountNumber", "AppARN": "AppArn", "CPU": "Cpu", "DevicePoolARN": "DevicePoolArn", "ExtraDataPackageARN": "ExtraDataPackageArn", "NetworkProfileARN": "NetworkProfileArn", "ProjectARN": "ProjectArn", "TestPackageARN": "TestPackageArn", "URL": "Url", }, }, "github.com/aws/aws-sdk-go/service/devicefarm/devicefarmiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/directconnect": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "ASN": "Asn", "CIDR": "Cidr", "ConnectionID": "ConnectionId", "InterconnectID": "InterconnectId", "VLAN": "Vlan", "VirtualGatewayID": "VirtualGatewayId", "VirtualInterfaceID": "VirtualInterfaceId", }, }, "github.com/aws/aws-sdk-go/service/directconnect/directconnectiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/directoryservice": { operations: map[string]string{ "DisableSSO": "DisableSso", "DisableSSOPages": "DisableSsoPages", "DisableSSORequest": "DisableSsoRequest", "EnableSSO": "EnableSso", "EnableSSOPages": "EnableSsoPages", "EnableSSORequest": "EnableSsoRequest", }, shapes: map[string]string{ "DirectoryVPCSettings": "DirectoryVpcSettings", "DirectoryVPCSettingsDescription": "DirectoryVpcSettingsDescription", "DisableSSOInput": "DisableSsoInput", "DisableSSOOutput": "DisableSsoOutput", "EnableSSOInput": "EnableSsoInput", "EnableSSOOutput": "EnableSsoOutput", }, fields: map[string]string{ "AccessURL": "AccessUrl", "ComputerID": "ComputerId", "ConnectIPs": "ConnectIps", "CustomerDNSIPs": "CustomerDnsIps", "DNSIPAddrs": "DnsIpAddrs", "DirectoryID": "DirectoryId", "DirectoryIDs": "DirectoryIds", "SSOEnabled": "SsoEnabled", "SecurityGroupID": "SecurityGroupId", "SnapshotID": "SnapshotId", "SnapshotIDs": "SnapshotIds", "SubnetIDs": "SubnetIds", "VPCID": "VpcId", "VPCSettings": "VpcSettings", }, }, "github.com/aws/aws-sdk-go/service/directoryservice/directoryserviceiface": { operations: map[string]string{ "DisableSSO": "DisableSso", "DisableSSOPages": "DisableSsoPages", "DisableSSORequest": "DisableSsoRequest", "EnableSSO": "EnableSso", "EnableSSOPages": "EnableSsoPages", "EnableSSORequest": "EnableSsoRequest", }, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/dynamodb": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "IndexARN": "IndexArn", "LatestStreamARN": "LatestStreamArn", "TableARN": "TableArn", }, }, "github.com/aws/aws-sdk-go/service/dynamodb/dynamodbiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/dynamodbstreams": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "AWSRegion": "AwsRegion", "DynamoDB": "Dynamodb", "ExclusiveStartShardID": "ExclusiveStartShardId", "ExclusiveStartStreamARN": "ExclusiveStartStreamArn", "LastEvaluatedShardID": "LastEvaluatedShardId", "LastEvaluatedStreamARN": "LastEvaluatedStreamArn", "ParentShardID": "ParentShardId", "ShardID": "ShardId", "StreamARN": "StreamArn", }, }, "github.com/aws/aws-sdk-go/service/dynamodbstreams/dynamodbstreamsiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/ec2": { operations: map[string]string{ "AcceptVPCPeeringConnection": "AcceptVpcPeeringConnection", "AcceptVPCPeeringConnectionPages": "AcceptVpcPeeringConnectionPages", "AcceptVPCPeeringConnectionRequest": "AcceptVpcPeeringConnectionRequest", "AssignPrivateIPAddresses": "AssignPrivateIpAddresses", "AssignPrivateIPAddressesPages": "AssignPrivateIpAddressesPages", "AssignPrivateIPAddressesRequest": "AssignPrivateIpAddressesRequest", "AssociateDHCPOptions": "AssociateDhcpOptions", "AssociateDHCPOptionsPages": "AssociateDhcpOptionsPages", "AssociateDHCPOptionsRequest": "AssociateDhcpOptionsRequest", "AttachClassicLinkVPC": "AttachClassicLinkVpc", "AttachClassicLinkVPCPages": "AttachClassicLinkVpcPages", "AttachClassicLinkVPCRequest": "AttachClassicLinkVpcRequest", "AttachVPNGateway": "AttachVpnGateway", "AttachVPNGatewayPages": "AttachVpnGatewayPages", "AttachVPNGatewayRequest": "AttachVpnGatewayRequest", "CreateDHCPOptions": "CreateDhcpOptions", "CreateDHCPOptionsPages": "CreateDhcpOptionsPages", "CreateDHCPOptionsRequest": "CreateDhcpOptionsRequest", "CreateNetworkACL": "CreateNetworkAcl", "CreateNetworkACLEntry": "CreateNetworkAclEntry", "CreateNetworkACLEntryPages": "CreateNetworkAclEntryPages", "CreateNetworkACLEntryRequest": "CreateNetworkAclEntryRequest", "CreateNetworkACLPages": "CreateNetworkAclPages", "CreateNetworkACLRequest": "CreateNetworkAclRequest", "CreateVPC": "CreateVpc", "CreateVPCEndpoint": "CreateVpcEndpoint", "CreateVPCEndpointPages": "CreateVpcEndpointPages", "CreateVPCEndpointRequest": "CreateVpcEndpointRequest", "CreateVPCPages": "CreateVpcPages", "CreateVPCPeeringConnection": "CreateVpcPeeringConnection", "CreateVPCPeeringConnectionPages": "CreateVpcPeeringConnectionPages", "CreateVPCPeeringConnectionRequest": "CreateVpcPeeringConnectionRequest", "CreateVPCRequest": "CreateVpcRequest", "CreateVPNConnection": "CreateVpnConnection", "CreateVPNConnectionPages": "CreateVpnConnectionPages", "CreateVPNConnectionRequest": "CreateVpnConnectionRequest", "CreateVPNConnectionRoute": "CreateVpnConnectionRoute", "CreateVPNConnectionRoutePages": "CreateVpnConnectionRoutePages", "CreateVPNConnectionRouteRequest": "CreateVpnConnectionRouteRequest", "CreateVPNGateway": "CreateVpnGateway", "CreateVPNGatewayPages": "CreateVpnGatewayPages", "CreateVPNGatewayRequest": "CreateVpnGatewayRequest", "DeleteDHCPOptions": "DeleteDhcpOptions", "DeleteDHCPOptionsPages": "DeleteDhcpOptionsPages", "DeleteDHCPOptionsRequest": "DeleteDhcpOptionsRequest", "DeleteNetworkACL": "DeleteNetworkAcl", "DeleteNetworkACLEntry": "DeleteNetworkAclEntry", "DeleteNetworkACLEntryPages": "DeleteNetworkAclEntryPages", "DeleteNetworkACLEntryRequest": "DeleteNetworkAclEntryRequest", "DeleteNetworkACLPages": "DeleteNetworkAclPages", "DeleteNetworkACLRequest": "DeleteNetworkAclRequest", "DeleteVPC": "DeleteVpc", "DeleteVPCEndpoints": "DeleteVpcEndpoints", "DeleteVPCEndpointsPages": "DeleteVpcEndpointsPages", "DeleteVPCEndpointsRequest": "DeleteVpcEndpointsRequest", "DeleteVPCPages": "DeleteVpcPages", "DeleteVPCPeeringConnection": "DeleteVpcPeeringConnection", "DeleteVPCPeeringConnectionPages": "DeleteVpcPeeringConnectionPages", "DeleteVPCPeeringConnectionRequest": "DeleteVpcPeeringConnectionRequest", "DeleteVPCRequest": "DeleteVpcRequest", "DeleteVPNConnection": "DeleteVpnConnection", "DeleteVPNConnectionPages": "DeleteVpnConnectionPages", "DeleteVPNConnectionRequest": "DeleteVpnConnectionRequest", "DeleteVPNConnectionRoute": "DeleteVpnConnectionRoute", "DeleteVPNConnectionRoutePages": "DeleteVpnConnectionRoutePages", "DeleteVPNConnectionRouteRequest": "DeleteVpnConnectionRouteRequest", "DeleteVPNGateway": "DeleteVpnGateway", "DeleteVPNGatewayPages": "DeleteVpnGatewayPages", "DeleteVPNGatewayRequest": "DeleteVpnGatewayRequest", "DescribeDHCPOptions": "DescribeDhcpOptions", "DescribeDHCPOptionsPages": "DescribeDhcpOptionsPages", "DescribeDHCPOptionsRequest": "DescribeDhcpOptionsRequest", "DescribeNetworkACLs": "DescribeNetworkAcls", "DescribeNetworkACLsPages": "DescribeNetworkAclsPages", "DescribeNetworkACLsRequest": "DescribeNetworkAclsRequest", "DescribeVPCAttribute": "DescribeVpcAttribute", "DescribeVPCAttributePages": "DescribeVpcAttributePages", "DescribeVPCAttributeRequest": "DescribeVpcAttributeRequest", "DescribeVPCClassicLink": "DescribeVpcClassicLink", "DescribeVPCClassicLinkPages": "DescribeVpcClassicLinkPages", "DescribeVPCClassicLinkRequest": "DescribeVpcClassicLinkRequest", "DescribeVPCEndpointServices": "DescribeVpcEndpointServices", "DescribeVPCEndpointServicesPages": "DescribeVpcEndpointServicesPages", "DescribeVPCEndpointServicesRequest": "DescribeVpcEndpointServicesRequest", "DescribeVPCEndpoints": "DescribeVpcEndpoints", "DescribeVPCEndpointsPages": "DescribeVpcEndpointsPages", "DescribeVPCEndpointsRequest": "DescribeVpcEndpointsRequest", "DescribeVPCPeeringConnections": "DescribeVpcPeeringConnections", "DescribeVPCPeeringConnectionsPages": "DescribeVpcPeeringConnectionsPages", "DescribeVPCPeeringConnectionsRequest": "DescribeVpcPeeringConnectionsRequest", "DescribeVPCs": "DescribeVpcs", "DescribeVPCsPages": "DescribeVpcsPages", "DescribeVPCsRequest": "DescribeVpcsRequest", "DescribeVPNConnections": "DescribeVpnConnections", "DescribeVPNConnectionsPages": "DescribeVpnConnectionsPages", "DescribeVPNConnectionsRequest": "DescribeVpnConnectionsRequest", "DescribeVPNGateways": "DescribeVpnGateways", "DescribeVPNGatewaysPages": "DescribeVpnGatewaysPages", "DescribeVPNGatewaysRequest": "DescribeVpnGatewaysRequest", "DetachClassicLinkVPC": "DetachClassicLinkVpc", "DetachClassicLinkVPCPages": "DetachClassicLinkVpcPages", "DetachClassicLinkVPCRequest": "DetachClassicLinkVpcRequest", "DetachVPNGateway": "DetachVpnGateway", "DetachVPNGatewayPages": "DetachVpnGatewayPages", "DetachVPNGatewayRequest": "DetachVpnGatewayRequest", "DisableVGWRoutePropagation": "DisableVgwRoutePropagation", "DisableVGWRoutePropagationPages": "DisableVgwRoutePropagationPages", "DisableVGWRoutePropagationRequest": "DisableVgwRoutePropagationRequest", "DisableVPCClassicLink": "DisableVpcClassicLink", "DisableVPCClassicLinkPages": "DisableVpcClassicLinkPages", "DisableVPCClassicLinkRequest": "DisableVpcClassicLinkRequest", "EnableVGWRoutePropagation": "EnableVgwRoutePropagation", "EnableVGWRoutePropagationPages": "EnableVgwRoutePropagationPages", "EnableVGWRoutePropagationRequest": "EnableVgwRoutePropagationRequest", "EnableVPCClassicLink": "EnableVpcClassicLink", "EnableVPCClassicLinkPages": "EnableVpcClassicLinkPages", "EnableVPCClassicLinkRequest": "EnableVpcClassicLinkRequest", "ModifyVPCAttribute": "ModifyVpcAttribute", "ModifyVPCAttributePages": "ModifyVpcAttributePages", "ModifyVPCAttributeRequest": "ModifyVpcAttributeRequest", "ModifyVPCEndpoint": "ModifyVpcEndpoint", "ModifyVPCEndpointPages": "ModifyVpcEndpointPages", "ModifyVPCEndpointRequest": "ModifyVpcEndpointRequest", "MoveAddressToVPC": "MoveAddressToVpc", "MoveAddressToVPCPages": "MoveAddressToVpcPages", "MoveAddressToVPCRequest": "MoveAddressToVpcRequest", "RejectVPCPeeringConnection": "RejectVpcPeeringConnection", "RejectVPCPeeringConnectionPages": "RejectVpcPeeringConnectionPages", "RejectVPCPeeringConnectionRequest": "RejectVpcPeeringConnectionRequest", "ReplaceNetworkACLAssociation": "ReplaceNetworkAclAssociation", "ReplaceNetworkACLAssociationPages": "ReplaceNetworkAclAssociationPages", "ReplaceNetworkACLAssociationRequest": "ReplaceNetworkAclAssociationRequest", "ReplaceNetworkACLEntry": "ReplaceNetworkAclEntry", "ReplaceNetworkACLEntryPages": "ReplaceNetworkAclEntryPages", "ReplaceNetworkACLEntryRequest": "ReplaceNetworkAclEntryRequest", "UnassignPrivateIPAddresses": "UnassignPrivateIpAddresses", "UnassignPrivateIPAddressesPages": "UnassignPrivateIpAddressesPages", "UnassignPrivateIPAddressesRequest": "UnassignPrivateIpAddressesRequest", }, shapes: map[string]string{ "AcceptVPCPeeringConnectionInput": "AcceptVpcPeeringConnectionInput", "AcceptVPCPeeringConnectionOutput": "AcceptVpcPeeringConnectionOutput", "AssignPrivateIPAddressesInput": "AssignPrivateIpAddressesInput", "AssignPrivateIPAddressesOutput": "AssignPrivateIpAddressesOutput", "AssociateDHCPOptionsInput": "AssociateDhcpOptionsInput", "AssociateDHCPOptionsOutput": "AssociateDhcpOptionsOutput", "AttachClassicLinkVPCInput": "AttachClassicLinkVpcInput", "AttachClassicLinkVPCOutput": "AttachClassicLinkVpcOutput", "AttachVPNGatewayInput": "AttachVpnGatewayInput", "AttachVPNGatewayOutput": "AttachVpnGatewayOutput", "CreateDHCPOptionsInput": "CreateDhcpOptionsInput", "CreateDHCPOptionsOutput": "CreateDhcpOptionsOutput", "CreateNetworkACLEntryInput": "CreateNetworkAclEntryInput", "CreateNetworkACLEntryOutput": "CreateNetworkAclEntryOutput", "CreateNetworkACLInput": "CreateNetworkAclInput", "CreateNetworkACLOutput": "CreateNetworkAclOutput", "CreateVPCEndpointInput": "CreateVpcEndpointInput", "CreateVPCEndpointOutput": "CreateVpcEndpointOutput", "CreateVPCInput": "CreateVpcInput", "CreateVPCOutput": "CreateVpcOutput", "CreateVPCPeeringConnectionInput": "CreateVpcPeeringConnectionInput", "CreateVPCPeeringConnectionOutput": "CreateVpcPeeringConnectionOutput", "CreateVPNConnectionInput": "CreateVpnConnectionInput", "CreateVPNConnectionOutput": "CreateVpnConnectionOutput", "CreateVPNConnectionRouteInput": "CreateVpnConnectionRouteInput", "CreateVPNConnectionRouteOutput": "CreateVpnConnectionRouteOutput", "CreateVPNGatewayInput": "CreateVpnGatewayInput", "CreateVPNGatewayOutput": "CreateVpnGatewayOutput", "DHCPConfiguration": "DhcpConfiguration", "DHCPOptions": "DhcpOptions", "DeleteDHCPOptionsInput": "DeleteDhcpOptionsInput", "DeleteDHCPOptionsOutput": "DeleteDhcpOptionsOutput", "DeleteNetworkACLEntryInput": "DeleteNetworkAclEntryInput", "DeleteNetworkACLEntryOutput": "DeleteNetworkAclEntryOutput", "DeleteNetworkACLInput": "DeleteNetworkAclInput", "DeleteNetworkACLOutput": "DeleteNetworkAclOutput", "DeleteVPCEndpointsInput": "DeleteVpcEndpointsInput", "DeleteVPCEndpointsOutput": "DeleteVpcEndpointsOutput", "DeleteVPCInput": "DeleteVpcInput", "DeleteVPCOutput": "DeleteVpcOutput", "DeleteVPCPeeringConnectionInput": "DeleteVpcPeeringConnectionInput", "DeleteVPCPeeringConnectionOutput": "DeleteVpcPeeringConnectionOutput", "DeleteVPNConnectionInput": "DeleteVpnConnectionInput", "DeleteVPNConnectionOutput": "DeleteVpnConnectionOutput", "DeleteVPNConnectionRouteInput": "DeleteVpnConnectionRouteInput", "DeleteVPNConnectionRouteOutput": "DeleteVpnConnectionRouteOutput", "DeleteVPNGatewayInput": "DeleteVpnGatewayInput", "DeleteVPNGatewayOutput": "DeleteVpnGatewayOutput", "DescribeDHCPOptionsInput": "DescribeDhcpOptionsInput", "DescribeDHCPOptionsOutput": "DescribeDhcpOptionsOutput", "DescribeNetworkACLsInput": "DescribeNetworkAclsInput", "DescribeNetworkACLsOutput": "DescribeNetworkAclsOutput", "DescribeVPCAttributeInput": "DescribeVpcAttributeInput", "DescribeVPCAttributeOutput": "DescribeVpcAttributeOutput", "DescribeVPCClassicLinkInput": "DescribeVpcClassicLinkInput", "DescribeVPCClassicLinkOutput": "DescribeVpcClassicLinkOutput", "DescribeVPCEndpointServicesInput": "DescribeVpcEndpointServicesInput", "DescribeVPCEndpointServicesOutput": "DescribeVpcEndpointServicesOutput", "DescribeVPCEndpointsInput": "DescribeVpcEndpointsInput", "DescribeVPCEndpointsOutput": "DescribeVpcEndpointsOutput", "DescribeVPCPeeringConnectionsInput": "DescribeVpcPeeringConnectionsInput", "DescribeVPCPeeringConnectionsOutput": "DescribeVpcPeeringConnectionsOutput", "DescribeVPCsInput": "DescribeVpcsInput", "DescribeVPCsOutput": "DescribeVpcsOutput", "DescribeVPNConnectionsInput": "DescribeVpnConnectionsInput", "DescribeVPNConnectionsOutput": "DescribeVpnConnectionsOutput", "DescribeVPNGatewaysInput": "DescribeVpnGatewaysInput", "DescribeVPNGatewaysOutput": "DescribeVpnGatewaysOutput", "DetachClassicLinkVPCInput": "DetachClassicLinkVpcInput", "DetachClassicLinkVPCOutput": "DetachClassicLinkVpcOutput", "DetachVPNGatewayInput": "DetachVpnGatewayInput", "DetachVPNGatewayOutput": "DetachVpnGatewayOutput", "DisableVGWRoutePropagationInput": "DisableVgwRoutePropagationInput", "DisableVGWRoutePropagationOutput": "DisableVgwRoutePropagationOutput", "DisableVPCClassicLinkInput": "DisableVpcClassicLinkInput", "DisableVPCClassicLinkOutput": "DisableVpcClassicLinkOutput", "EBSBlockDevice": "EbsBlockDevice", "EBSInstanceBlockDevice": "EbsInstanceBlockDevice", "EBSInstanceBlockDeviceSpecification": "EbsInstanceBlockDeviceSpecification", "EnableVGWRoutePropagationInput": "EnableVgwRoutePropagationInput", "EnableVGWRoutePropagationOutput": "EnableVgwRoutePropagationOutput", "EnableVPCClassicLinkInput": "EnableVpcClassicLinkInput", "EnableVPCClassicLinkOutput": "EnableVpcClassicLinkOutput", "IAMInstanceProfile": "IamInstanceProfile", "IAMInstanceProfileSpecification": "IamInstanceProfileSpecification", "ICMPTypeCode": "IcmpTypeCode", "IPPermission": "IpPermission", "IPRange": "IpRange", "InstancePrivateIPAddress": "InstancePrivateIpAddress", "ModifyVPCAttributeInput": "ModifyVpcAttributeInput", "ModifyVPCAttributeOutput": "ModifyVpcAttributeOutput", "ModifyVPCEndpointInput": "ModifyVpcEndpointInput", "ModifyVPCEndpointOutput": "ModifyVpcEndpointOutput", "MoveAddressToVPCInput": "MoveAddressToVpcInput", "MoveAddressToVPCOutput": "MoveAddressToVpcOutput", "NetworkACL": "NetworkAcl", "NetworkACLAssociation": "NetworkAclAssociation", "NetworkACLEntry": "NetworkAclEntry", "NetworkInterfacePrivateIPAddress": "NetworkInterfacePrivateIpAddress", "NewDHCPConfiguration": "NewDhcpConfiguration", "PrefixListID": "PrefixListId", "PrivateIPAddressSpecification": "PrivateIpAddressSpecification", "PropagatingVGW": "PropagatingVgw", "RejectVPCPeeringConnectionInput": "RejectVpcPeeringConnectionInput", "RejectVPCPeeringConnectionOutput": "RejectVpcPeeringConnectionOutput", "ReplaceNetworkACLAssociationInput": "ReplaceNetworkAclAssociationInput", "ReplaceNetworkACLAssociationOutput": "ReplaceNetworkAclAssociationOutput", "ReplaceNetworkACLEntryInput": "ReplaceNetworkAclEntryInput", "ReplaceNetworkACLEntryOutput": "ReplaceNetworkAclEntryOutput", "ReservedInstancesID": "ReservedInstancesId", "UnassignPrivateIPAddressesInput": "UnassignPrivateIpAddressesInput", "UnassignPrivateIPAddressesOutput": "UnassignPrivateIpAddressesOutput", "UserIDGroupPair": "UserIdGroupPair", "VGWTelemetry": "VgwTelemetry", "VPC": "Vpc", "VPCAttachment": "VpcAttachment", "VPCClassicLink": "VpcClassicLink", "VPCEndpoint": "VpcEndpoint", "VPCPeeringConnection": "VpcPeeringConnection", "VPCPeeringConnectionStateReason": "VpcPeeringConnectionStateReason", "VPCPeeringConnectionVPCInfo": "VpcPeeringConnectionVpcInfo", "VPNConnection": "VpnConnection", "VPNConnectionOptions": "VpnConnectionOptions", "VPNConnectionOptionsSpecification": "VpnConnectionOptionsSpecification", "VPNGateway": "VpnGateway", "VPNStaticRoute": "VpnStaticRoute", }, fields: map[string]string{ "AMILaunchIndex": "AmiLaunchIndex", "ARN": "Arn", "AWSAccessKeyID": "AWSAccessKeyId", "AccepterVPCInfo": "AccepterVpcInfo", "AddRouteTableIDs": "AddRouteTableIds", "AllocationID": "AllocationId", "AllocationIDs": "AllocationIds", "AssociatePublicIPAddress": "AssociatePublicIpAddress", "AssociationID": "AssociationId", "AttachmentID": "AttachmentId", "AvailableIPAddressCount": "AvailableIpAddressCount", "BGPASN": "BgpAsn", "BundleID": "BundleId", "BundleIDs": "BundleIds", "CIDRBlock": "CidrBlock", "CIDRIP": "CidrIp", "CIDRs": "Cidrs", "ConversionTaskID": "ConversionTaskId", "ConversionTaskIDs": "ConversionTaskIds", "CustomerGatewayID": "CustomerGatewayId", "CustomerGatewayIDs": "CustomerGatewayIds", "DHCPConfigurations": "DhcpConfigurations", "DHCPOptions": "DhcpOptions", "DHCPOptionsID": "DhcpOptionsId", "DHCPOptionsIDs": "DhcpOptionsIds", "DefaultForAZ": "DefaultForAz", "DeliverLogsPermissionARN": "DeliverLogsPermissionArn", "DestinationCIDRBlock": "DestinationCidrBlock", "DestinationPrefixListID": "DestinationPrefixListId", "DisableAPITermination": "DisableApiTermination", "EBS": "Ebs", "EBSOptimized": "EbsOptimized", "EnableDNSHostnames": "EnableDnsHostnames", "EnableDNSSupport": "EnableDnsSupport", "EventID": "EventId", "ExportTaskID": "ExportTaskId", "ExportTaskIDs": "ExportTaskIds", "FlowLogID": "FlowLogId", "FlowLogIDs": "FlowLogIds", "GatewayID": "GatewayId", "GroupID": "GroupId", "GroupIDs": "GroupIds", "IAMFleetRole": "IamFleetRole", "IAMInstanceProfile": "IamInstanceProfile", "ICMPTypeCode": "IcmpTypeCode", "ID": "Id", "IOPS": "Iops", "IPAddress": "IpAddress", "IPOwnerID": "IpOwnerId", "IPPermissions": "IpPermissions", "IPPermissionsEgress": "IpPermissionsEgress", "IPProtocol": "IpProtocol", "IPRanges": "IpRanges", "ImageID": "ImageId", "ImageIDs": "ImageIds", "ImportManifestURL": "ImportManifestUrl", "ImportTaskID": "ImportTaskId", "ImportTaskIDs": "ImportTaskIds", "InstanceID": "InstanceId", "InstanceIDs": "InstanceIds", "InstanceOwnerID": "InstanceOwnerId", "InternetGatewayID": "InternetGatewayId", "InternetGatewayIDs": "InternetGatewayIds", "KMSKeyID": "KmsKeyId", "KernelID": "KernelId", "MACAddress": "MacAddress", "MapPublicIPOnLaunch": "MapPublicIpOnLaunch", "NetworkACL": "NetworkAcl", "NetworkACLAssociationID": "NetworkAclAssociationId", "NetworkACLID": "NetworkAclId", "NetworkACLIDs": "NetworkAclIds", "NetworkACLs": "NetworkAcls", "NetworkInterfaceID": "NetworkInterfaceId", "NetworkInterfaceIDs": "NetworkInterfaceIds", "NetworkInterfaceOwnerID": "NetworkInterfaceOwnerId", "NewAssociationID": "NewAssociationId", "OutsideIPAddress": "OutsideIpAddress", "OwnerID": "OwnerId", "OwnerIDs": "OwnerIds", "PeerOwnerID": "PeerOwnerId", "PeerVPCID": "PeerVpcId", "PrefixListID": "PrefixListId", "PrefixListIDs": "PrefixListIds", "PresignedURL": "PresignedUrl", "PrivateDNSName": "PrivateDnsName", "PrivateIPAddress": "PrivateIpAddress", "PrivateIPAddresses": "PrivateIpAddresses", "ProductCodeID": "ProductCodeId", "PropagatingVGWs": "PropagatingVgws", "PublicDNSName": "PublicDnsName", "PublicIP": "PublicIp", "PublicIPAddress": "PublicIpAddress", "PublicIPs": "PublicIps", "RAMDisk": "Ramdisk", "RAMDiskID": "RamdiskId", "RemoveRouteTableIDs": "RemoveRouteTableIds", "RequesterID": "RequesterId", "RequesterVPCInfo": "RequesterVpcInfo", "ReservationID": "ReservationId", "ReservedInstancesID": "ReservedInstancesId", "ReservedInstancesIDs": "ReservedInstancesIds", "ReservedInstancesListingID": "ReservedInstancesListingId", "ReservedInstancesModificationID": "ReservedInstancesModificationId", "ReservedInstancesModificationIDs": "ReservedInstancesModificationIds", "ReservedInstancesOfferingID": "ReservedInstancesOfferingId", "ReservedInstancesOfferingIDs": "ReservedInstancesOfferingIds", "ResourceID": "ResourceId", "ResourceIDs": "ResourceIds", "RestorableByUserIDs": "RestorableByUserIds", "RouteTableAssociationID": "RouteTableAssociationId", "RouteTableID": "RouteTableId", "RouteTableIDs": "RouteTableIds", "SRIOVNetSupport": "SriovNetSupport", "SecondaryPrivateIPAddressCount": "SecondaryPrivateIpAddressCount", "SecurityGroupIDs": "SecurityGroupIds", "SnapshotID": "SnapshotId", "SnapshotIDs": "SnapshotIds", "SourceImageID": "SourceImageId", "SourceSecurityGroupOwnerID": "SourceSecurityGroupOwnerId", "SourceSnapshotID": "SourceSnapshotId", "SpotFleetRequestID": "SpotFleetRequestId", "SpotFleetRequestIDs": "SpotFleetRequestIds", "SpotInstanceRequestID": "SpotInstanceRequestId", "SpotInstanceRequestIDs": "SpotInstanceRequestIds", "SubnetID": "SubnetId", "SubnetIDs": "SubnetIds", "URL": "Url", "UserID": "UserId", "UserIDGroupPairs": "UserIdGroupPairs", "UserIDs": "UserIds", "VGWTelemetry": "VgwTelemetry", "VPC": "Vpc", "VPCAttachment": "VpcAttachment", "VPCAttachments": "VpcAttachments", "VPCEndpoint": "VpcEndpoint", "VPCEndpointID": "VpcEndpointId", "VPCEndpointIDs": "VpcEndpointIds", "VPCEndpoints": "VpcEndpoints", "VPCID": "VpcId", "VPCIDs": "VpcIds", "VPCPeeringConnection": "VpcPeeringConnection", "VPCPeeringConnectionID": "VpcPeeringConnectionId", "VPCPeeringConnectionIDs": "VpcPeeringConnectionIds", "VPCPeeringConnections": "VpcPeeringConnections", "VPCs": "Vpcs", "VPNConnection": "VpnConnection", "VPNConnectionID": "VpnConnectionId", "VPNConnectionIDs": "VpnConnectionIds", "VPNConnections": "VpnConnections", "VPNGateway": "VpnGateway", "VPNGatewayID": "VpnGatewayId", "VPNGatewayIDs": "VpnGatewayIds", "VPNGateways": "VpnGateways", "VolumeID": "VolumeId", "VolumeIDs": "VolumeIds", }, }, "github.com/aws/aws-sdk-go/service/ec2/ec2iface": { operations: map[string]string{ "AcceptVPCPeeringConnection": "AcceptVpcPeeringConnection", "AcceptVPCPeeringConnectionPages": "AcceptVpcPeeringConnectionPages", "AcceptVPCPeeringConnectionRequest": "AcceptVpcPeeringConnectionRequest", "AssignPrivateIPAddresses": "AssignPrivateIpAddresses", "AssignPrivateIPAddressesPages": "AssignPrivateIpAddressesPages", "AssignPrivateIPAddressesRequest": "AssignPrivateIpAddressesRequest", "AssociateDHCPOptions": "AssociateDhcpOptions", "AssociateDHCPOptionsPages": "AssociateDhcpOptionsPages", "AssociateDHCPOptionsRequest": "AssociateDhcpOptionsRequest", "AttachClassicLinkVPC": "AttachClassicLinkVpc", "AttachClassicLinkVPCPages": "AttachClassicLinkVpcPages", "AttachClassicLinkVPCRequest": "AttachClassicLinkVpcRequest", "AttachVPNGateway": "AttachVpnGateway", "AttachVPNGatewayPages": "AttachVpnGatewayPages", "AttachVPNGatewayRequest": "AttachVpnGatewayRequest", "CreateDHCPOptions": "CreateDhcpOptions", "CreateDHCPOptionsPages": "CreateDhcpOptionsPages", "CreateDHCPOptionsRequest": "CreateDhcpOptionsRequest", "CreateNetworkACL": "CreateNetworkAcl", "CreateNetworkACLEntry": "CreateNetworkAclEntry", "CreateNetworkACLEntryPages": "CreateNetworkAclEntryPages", "CreateNetworkACLEntryRequest": "CreateNetworkAclEntryRequest", "CreateNetworkACLPages": "CreateNetworkAclPages", "CreateNetworkACLRequest": "CreateNetworkAclRequest", "CreateVPC": "CreateVpc", "CreateVPCEndpoint": "CreateVpcEndpoint", "CreateVPCEndpointPages": "CreateVpcEndpointPages", "CreateVPCEndpointRequest": "CreateVpcEndpointRequest", "CreateVPCPages": "CreateVpcPages", "CreateVPCPeeringConnection": "CreateVpcPeeringConnection", "CreateVPCPeeringConnectionPages": "CreateVpcPeeringConnectionPages", "CreateVPCPeeringConnectionRequest": "CreateVpcPeeringConnectionRequest", "CreateVPCRequest": "CreateVpcRequest", "CreateVPNConnection": "CreateVpnConnection", "CreateVPNConnectionPages": "CreateVpnConnectionPages", "CreateVPNConnectionRequest": "CreateVpnConnectionRequest", "CreateVPNConnectionRoute": "CreateVpnConnectionRoute", "CreateVPNConnectionRoutePages": "CreateVpnConnectionRoutePages", "CreateVPNConnectionRouteRequest": "CreateVpnConnectionRouteRequest", "CreateVPNGateway": "CreateVpnGateway", "CreateVPNGatewayPages": "CreateVpnGatewayPages", "CreateVPNGatewayRequest": "CreateVpnGatewayRequest", "DeleteDHCPOptions": "DeleteDhcpOptions", "DeleteDHCPOptionsPages": "DeleteDhcpOptionsPages", "DeleteDHCPOptionsRequest": "DeleteDhcpOptionsRequest", "DeleteNetworkACL": "DeleteNetworkAcl", "DeleteNetworkACLEntry": "DeleteNetworkAclEntry", "DeleteNetworkACLEntryPages": "DeleteNetworkAclEntryPages", "DeleteNetworkACLEntryRequest": "DeleteNetworkAclEntryRequest", "DeleteNetworkACLPages": "DeleteNetworkAclPages", "DeleteNetworkACLRequest": "DeleteNetworkAclRequest", "DeleteVPC": "DeleteVpc", "DeleteVPCEndpoints": "DeleteVpcEndpoints", "DeleteVPCEndpointsPages": "DeleteVpcEndpointsPages", "DeleteVPCEndpointsRequest": "DeleteVpcEndpointsRequest", "DeleteVPCPages": "DeleteVpcPages", "DeleteVPCPeeringConnection": "DeleteVpcPeeringConnection", "DeleteVPCPeeringConnectionPages": "DeleteVpcPeeringConnectionPages", "DeleteVPCPeeringConnectionRequest": "DeleteVpcPeeringConnectionRequest", "DeleteVPCRequest": "DeleteVpcRequest", "DeleteVPNConnection": "DeleteVpnConnection", "DeleteVPNConnectionPages": "DeleteVpnConnectionPages", "DeleteVPNConnectionRequest": "DeleteVpnConnectionRequest", "DeleteVPNConnectionRoute": "DeleteVpnConnectionRoute", "DeleteVPNConnectionRoutePages": "DeleteVpnConnectionRoutePages", "DeleteVPNConnectionRouteRequest": "DeleteVpnConnectionRouteRequest", "DeleteVPNGateway": "DeleteVpnGateway", "DeleteVPNGatewayPages": "DeleteVpnGatewayPages", "DeleteVPNGatewayRequest": "DeleteVpnGatewayRequest", "DescribeDHCPOptions": "DescribeDhcpOptions", "DescribeDHCPOptionsPages": "DescribeDhcpOptionsPages", "DescribeDHCPOptionsRequest": "DescribeDhcpOptionsRequest", "DescribeNetworkACLs": "DescribeNetworkAcls", "DescribeNetworkACLsPages": "DescribeNetworkAclsPages", "DescribeNetworkACLsRequest": "DescribeNetworkAclsRequest", "DescribeVPCAttribute": "DescribeVpcAttribute", "DescribeVPCAttributePages": "DescribeVpcAttributePages", "DescribeVPCAttributeRequest": "DescribeVpcAttributeRequest", "DescribeVPCClassicLink": "DescribeVpcClassicLink", "DescribeVPCClassicLinkPages": "DescribeVpcClassicLinkPages", "DescribeVPCClassicLinkRequest": "DescribeVpcClassicLinkRequest", "DescribeVPCEndpointServices": "DescribeVpcEndpointServices", "DescribeVPCEndpointServicesPages": "DescribeVpcEndpointServicesPages", "DescribeVPCEndpointServicesRequest": "DescribeVpcEndpointServicesRequest", "DescribeVPCEndpoints": "DescribeVpcEndpoints", "DescribeVPCEndpointsPages": "DescribeVpcEndpointsPages", "DescribeVPCEndpointsRequest": "DescribeVpcEndpointsRequest", "DescribeVPCPeeringConnections": "DescribeVpcPeeringConnections", "DescribeVPCPeeringConnectionsPages": "DescribeVpcPeeringConnectionsPages", "DescribeVPCPeeringConnectionsRequest": "DescribeVpcPeeringConnectionsRequest", "DescribeVPCs": "DescribeVpcs", "DescribeVPCsPages": "DescribeVpcsPages", "DescribeVPCsRequest": "DescribeVpcsRequest", "DescribeVPNConnections": "DescribeVpnConnections", "DescribeVPNConnectionsPages": "DescribeVpnConnectionsPages", "DescribeVPNConnectionsRequest": "DescribeVpnConnectionsRequest", "DescribeVPNGateways": "DescribeVpnGateways", "DescribeVPNGatewaysPages": "DescribeVpnGatewaysPages", "DescribeVPNGatewaysRequest": "DescribeVpnGatewaysRequest", "DetachClassicLinkVPC": "DetachClassicLinkVpc", "DetachClassicLinkVPCPages": "DetachClassicLinkVpcPages", "DetachClassicLinkVPCRequest": "DetachClassicLinkVpcRequest", "DetachVPNGateway": "DetachVpnGateway", "DetachVPNGatewayPages": "DetachVpnGatewayPages", "DetachVPNGatewayRequest": "DetachVpnGatewayRequest", "DisableVGWRoutePropagation": "DisableVgwRoutePropagation", "DisableVGWRoutePropagationPages": "DisableVgwRoutePropagationPages", "DisableVGWRoutePropagationRequest": "DisableVgwRoutePropagationRequest", "DisableVPCClassicLink": "DisableVpcClassicLink", "DisableVPCClassicLinkPages": "DisableVpcClassicLinkPages", "DisableVPCClassicLinkRequest": "DisableVpcClassicLinkRequest", "EnableVGWRoutePropagation": "EnableVgwRoutePropagation", "EnableVGWRoutePropagationPages": "EnableVgwRoutePropagationPages", "EnableVGWRoutePropagationRequest": "EnableVgwRoutePropagationRequest", "EnableVPCClassicLink": "EnableVpcClassicLink", "EnableVPCClassicLinkPages": "EnableVpcClassicLinkPages", "EnableVPCClassicLinkRequest": "EnableVpcClassicLinkRequest", "ModifyVPCAttribute": "ModifyVpcAttribute", "ModifyVPCAttributePages": "ModifyVpcAttributePages", "ModifyVPCAttributeRequest": "ModifyVpcAttributeRequest", "ModifyVPCEndpoint": "ModifyVpcEndpoint", "ModifyVPCEndpointPages": "ModifyVpcEndpointPages", "ModifyVPCEndpointRequest": "ModifyVpcEndpointRequest", "MoveAddressToVPC": "MoveAddressToVpc", "MoveAddressToVPCPages": "MoveAddressToVpcPages", "MoveAddressToVPCRequest": "MoveAddressToVpcRequest", "RejectVPCPeeringConnection": "RejectVpcPeeringConnection", "RejectVPCPeeringConnectionPages": "RejectVpcPeeringConnectionPages", "RejectVPCPeeringConnectionRequest": "RejectVpcPeeringConnectionRequest", "ReplaceNetworkACLAssociation": "ReplaceNetworkAclAssociation", "ReplaceNetworkACLAssociationPages": "ReplaceNetworkAclAssociationPages", "ReplaceNetworkACLAssociationRequest": "ReplaceNetworkAclAssociationRequest", "ReplaceNetworkACLEntry": "ReplaceNetworkAclEntry", "ReplaceNetworkACLEntryPages": "ReplaceNetworkAclEntryPages", "ReplaceNetworkACLEntryRequest": "ReplaceNetworkAclEntryRequest", "UnassignPrivateIPAddresses": "UnassignPrivateIpAddresses", "UnassignPrivateIPAddressesPages": "UnassignPrivateIpAddressesPages", "UnassignPrivateIPAddressesRequest": "UnassignPrivateIpAddressesRequest", }, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/ecs": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "ARN": "Arn", "CPU": "Cpu", "ClusterARN": "ClusterArn", "ClusterARNs": "ClusterArns", "ContainerARN": "ContainerArn", "ContainerInstanceARN": "ContainerInstanceArn", "ContainerInstanceARNs": "ContainerInstanceArns", "EC2InstanceID": "Ec2InstanceId", "ID": "Id", "RoleARN": "RoleArn", "ServiceARN": "ServiceArn", "ServiceARNs": "ServiceArns", "TaskARN": "TaskArn", "TaskARNs": "TaskArns", "TaskDefinitionARN": "TaskDefinitionArn", "TaskDefinitionARNs": "TaskDefinitionArns", }, }, "github.com/aws/aws-sdk-go/service/ecs/ecsiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/efs": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "FileSystemID": "FileSystemId", "IPAddress": "IpAddress", "MountTargetID": "MountTargetId", "NetworkInterfaceID": "NetworkInterfaceId", "OwnerID": "OwnerId", "SubnetID": "SubnetId", }, }, "github.com/aws/aws-sdk-go/service/efs/efsiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/elasticache": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "CacheClusterID": "CacheClusterId", "CacheNodeID": "CacheNodeId", "CacheNodeIDsToReboot": "CacheNodeIdsToReboot", "CacheNodeIDsToRemove": "CacheNodeIdsToRemove", "EC2SecurityGroupOwnerID": "EC2SecurityGroupOwnerId", "NodeGroupID": "NodeGroupId", "NotificationTopicARN": "NotificationTopicArn", "OwnerID": "OwnerId", "PrimaryClusterID": "PrimaryClusterId", "ReplicationGroupID": "ReplicationGroupId", "ReservedCacheNodeID": "ReservedCacheNodeId", "ReservedCacheNodesOfferingID": "ReservedCacheNodesOfferingId", "SecurityGroupID": "SecurityGroupId", "SecurityGroupIDs": "SecurityGroupIds", "SnapshotARNs": "SnapshotArns", "SnapshottingClusterID": "SnapshottingClusterId", "SourceCacheNodeID": "SourceCacheNodeId", "SubnetIDs": "SubnetIds", "TopicARN": "TopicArn", "VPCID": "VpcId", }, }, "github.com/aws/aws-sdk-go/service/elasticache/elasticacheiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/elasticbeanstalk": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "DestinationEnvironmentID": "DestinationEnvironmentId", "EC2InstanceID": "Ec2InstanceId", "EnvironmentID": "EnvironmentId", "EnvironmentIDs": "EnvironmentIds", "ID": "Id", "OK": "Ok", "RequestID": "RequestId", "SourceEnvironmentID": "SourceEnvironmentId", }, }, "github.com/aws/aws-sdk-go/service/elasticbeanstalk/elasticbeanstalkiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/elastictranscoder": { operations: map[string]string{}, shapes: map[string]string{ "HLSContentProtection": "HlsContentProtection", "PlayReadyDRM": "PlayReadyDrm", }, fields: map[string]string{ "ARN": "Arn", "AWSKMSKeyARN": "AwsKmsKeyArn", "HLSContentProtection": "HlsContentProtection", "ID": "Id", "KeyID": "KeyId", "KeyMD5": "KeyMd5", "LicenseAcquisitionURL": "LicenseAcquisitionUrl", "PipelineID": "PipelineId", "PlayReadyDRM": "PlayReadyDrm", "PresetID": "PresetId", "PresetWatermarkID": "PresetWatermarkId", }, }, "github.com/aws/aws-sdk-go/service/elastictranscoder/elastictranscoderiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/elb": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "InstanceID": "InstanceId", "SSLCertificateID": "SSLCertificateId", "VPCID": "VPCId", }, }, "github.com/aws/aws-sdk-go/service/elb/elbiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/emr": { operations: map[string]string{}, shapes: map[string]string{ "EC2InstanceAttributes": "Ec2InstanceAttributes", "HadoopJARStepConfig": "HadoopJarStepConfig", }, fields: map[string]string{ "AMIVersion": "AmiVersion", "ClusterID": "ClusterId", "EC2AvailabilityZone": "Ec2AvailabilityZone", "EC2InstanceAttributes": "Ec2InstanceAttributes", "EC2InstanceID": "Ec2InstanceId", "EC2InstanceIDsToTerminate": "EC2InstanceIdsToTerminate", "EC2KeyName": "Ec2KeyName", "EC2SubnetID": "Ec2SubnetId", "EMRManagedMasterSecurityGroup": "EmrManagedMasterSecurityGroup", "EMRManagedSlaveSecurityGroup": "EmrManagedSlaveSecurityGroup", "HadoopJARStep": "HadoopJarStep", "IAMInstanceProfile": "IamInstanceProfile", "ID": "Id", "InstanceGroupID": "InstanceGroupId", "InstanceGroupIDs": "InstanceGroupIds", "JAR": "Jar", "JobFlowID": "JobFlowId", "JobFlowIDs": "JobFlowIds", "LogURI": "LogUri", "MasterInstanceID": "MasterInstanceId", "MasterPublicDNSName": "MasterPublicDnsName", "PrivateDNSName": "PrivateDnsName", "PrivateIPAddress": "PrivateIpAddress", "PublicDNSName": "PublicDnsName", "PublicIPAddress": "PublicIpAddress", "RequestedAMIVersion": "RequestedAmiVersion", "ResourceID": "ResourceId", "RunningAMIVersion": "RunningAmiVersion", "StepID": "StepId", "StepIDs": "StepIds", }, }, "github.com/aws/aws-sdk-go/service/emr/emriface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/glacier": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "AccountID": "AccountId", "ArchiveID": "ArchiveId", "JobID": "JobId", "LockID": "LockId", "MultipartUploadID": "MultipartUploadId", "UploadID": "UploadId", }, }, "github.com/aws/aws-sdk-go/service/glacier/glacieriface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/iam": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "ARN": "Arn", "AccessKeyID": "AccessKeyId", "CertificateID": "CertificateId", "DefaultVersionID": "DefaultVersionId", "GroupID": "GroupId", "InstanceProfileID": "InstanceProfileId", "OpenIDConnectProviderARN": "OpenIDConnectProviderArn", "PolicyARN": "PolicyArn", "PolicyID": "PolicyId", "RoleID": "RoleId", "SAMLProviderARN": "SAMLProviderArn", "SSHPublicKeyID": "SSHPublicKeyId", "ServerCertificateID": "ServerCertificateId", "URL": "Url", "UserID": "UserId", "VersionID": "VersionId", }, }, "github.com/aws/aws-sdk-go/service/iam/iamiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/kinesis": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "AdjacentParentShardID": "AdjacentParentShardId", "ExclusiveStartShardID": "ExclusiveStartShardId", "ParentShardID": "ParentShardId", "ShardID": "ShardId", }, }, "github.com/aws/aws-sdk-go/service/kinesis/kinesisiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/kms": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "ARN": "Arn", "AWSAccountID": "AWSAccountId", "AliasARN": "AliasArn", "DestinationKeyID": "DestinationKeyId", "GrantID": "GrantId", "KeyARN": "KeyArn", "KeyID": "KeyId", "SourceKeyID": "SourceKeyId", "TargetKeyID": "TargetKeyId", }, }, "github.com/aws/aws-sdk-go/service/kms/kmsiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/lambda": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "EventSourceARN": "EventSourceArn", "FunctionARN": "FunctionArn", "SourceARN": "SourceArn", "StatementID": "StatementId", }, }, "github.com/aws/aws-sdk-go/service/lambda/lambdaiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/machinelearning": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "BatchPredictionDataSourceID": "BatchPredictionDataSourceId", "BatchPredictionID": "BatchPredictionId", "CreatedByIAMUser": "CreatedByIamUser", "DataPipelineID": "DataPipelineId", "DataSchemaURI": "DataSchemaUri", "DataSourceID": "DataSourceId", "EndpointURL": "EndpointUrl", "EvaluationDataSourceID": "EvaluationDataSourceId", "EvaluationID": "EvaluationId", "LogURI": "LogUri", "MLModelID": "MLModelId", "OutputURI": "OutputUri", "RecipeURI": "RecipeUri", "SecurityGroupIDs": "SecurityGroupIds", "SelectSQLQuery": "SelectSqlQuery", "SubnetID": "SubnetId", "TrainingDataSourceID": "TrainingDataSourceId", }, }, "github.com/aws/aws-sdk-go/service/machinelearning/machinelearningiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/mobileanalytics": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "ID": "Id", }, }, "github.com/aws/aws-sdk-go/service/mobileanalytics/mobileanalyticsiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/opsworks": { operations: map[string]string{ "AssociateElasticIP": "AssociateElasticIp", "AssociateElasticIPPages": "AssociateElasticIpPages", "AssociateElasticIPRequest": "AssociateElasticIpRequest", "DeregisterElasticIP": "DeregisterElasticIp", "DeregisterElasticIPPages": "DeregisterElasticIpPages", "DeregisterElasticIPRequest": "DeregisterElasticIpRequest", "DeregisterRDSDBInstance": "DeregisterRdsDbInstance", "DeregisterRDSDBInstancePages": "DeregisterRdsDbInstancePages", "DeregisterRDSDBInstanceRequest": "DeregisterRdsDbInstanceRequest", "DescribeElasticIPs": "DescribeElasticIps", "DescribeElasticIPsPages": "DescribeElasticIpsPages", "DescribeElasticIPsRequest": "DescribeElasticIpsRequest", "DescribeRAIDArrays": "DescribeRaidArrays", "DescribeRAIDArraysPages": "DescribeRaidArraysPages", "DescribeRAIDArraysRequest": "DescribeRaidArraysRequest", "DescribeRDSDBInstances": "DescribeRdsDbInstances", "DescribeRDSDBInstancesPages": "DescribeRdsDbInstancesPages", "DescribeRDSDBInstancesRequest": "DescribeRdsDbInstancesRequest", "DisassociateElasticIP": "DisassociateElasticIp", "DisassociateElasticIPPages": "DisassociateElasticIpPages", "DisassociateElasticIPRequest": "DisassociateElasticIpRequest", "RegisterElasticIP": "RegisterElasticIp", "RegisterElasticIPPages": "RegisterElasticIpPages", "RegisterElasticIPRequest": "RegisterElasticIpRequest", "RegisterRDSDBInstance": "RegisterRdsDbInstance", "RegisterRDSDBInstancePages": "RegisterRdsDbInstancePages", "RegisterRDSDBInstanceRequest": "RegisterRdsDbInstanceRequest", "UpdateElasticIP": "UpdateElasticIp", "UpdateElasticIPPages": "UpdateElasticIpPages", "UpdateElasticIPRequest": "UpdateElasticIpRequest", "UpdateRDSDBInstance": "UpdateRdsDbInstance", "UpdateRDSDBInstancePages": "UpdateRdsDbInstancePages", "UpdateRDSDBInstanceRequest": "UpdateRdsDbInstanceRequest", }, shapes: map[string]string{ "AssociateElasticIPInput": "AssociateElasticIpInput", "AssociateElasticIPOutput": "AssociateElasticIpOutput", "DeregisterElasticIPInput": "DeregisterElasticIpInput", "DeregisterElasticIPOutput": "DeregisterElasticIpOutput", "DeregisterRDSDBInstanceInput": "DeregisterRdsDbInstanceInput", "DeregisterRDSDBInstanceOutput": "DeregisterRdsDbInstanceOutput", "DescribeElasticIPsInput": "DescribeElasticIpsInput", "DescribeElasticIPsOutput": "DescribeElasticIpsOutput", "DescribeRAIDArraysInput": "DescribeRaidArraysInput", "DescribeRAIDArraysOutput": "DescribeRaidArraysOutput", "DescribeRDSDBInstancesInput": "DescribeRdsDbInstancesInput", "DescribeRDSDBInstancesOutput": "DescribeRdsDbInstancesOutput", "DisassociateElasticIPInput": "DisassociateElasticIpInput", "DisassociateElasticIPOutput": "DisassociateElasticIpOutput", "EBSBlockDevice": "EbsBlockDevice", "ElasticIP": "ElasticIp", "RAIDArray": "RaidArray", "RDSDBInstance": "RdsDbInstance", "RegisterElasticIPInput": "RegisterElasticIpInput", "RegisterElasticIPOutput": "RegisterElasticIpOutput", "RegisterRDSDBInstanceInput": "RegisterRdsDbInstanceInput", "RegisterRDSDBInstanceOutput": "RegisterRdsDbInstanceOutput", "SSLConfiguration": "SslConfiguration", "UpdateElasticIPInput": "UpdateElasticIpInput", "UpdateElasticIPOutput": "UpdateElasticIpOutput", "UpdateRDSDBInstanceInput": "UpdateRdsDbInstanceInput", "UpdateRDSDBInstanceOutput": "UpdateRdsDbInstanceOutput", }, fields: map[string]string{ "AMIID": "AmiId", "ARN": "Arn", "AgentInstallerURL": "AgentInstallerUrl", "AllowSSH": "AllowSsh", "AppID": "AppId", "AppIDs": "AppIds", "AutoAssignElasticIPs": "AutoAssignElasticIps", "AutoAssignPublicIPs": "AutoAssignPublicIps", "CPUThreshold": "CpuThreshold", "CloneAppIDs": "CloneAppIds", "CommandID": "CommandId", "CommandIDs": "CommandIds", "CustomInstanceProfileARN": "CustomInstanceProfileArn", "CustomJSON": "CustomJson", "CustomSecurityGroupIDs": "CustomSecurityGroupIds", "DBInstanceIdentifier": "DbInstanceIdentifier", "DBPassword": "DbPassword", "DBUser": "DbUser", "DNSName": "DnsName", "DefaultInstanceProfileARN": "DefaultInstanceProfileArn", "DefaultSSHKeyName": "DefaultSshKeyName", "DefaultSubnetID": "DefaultSubnetId", "DelayUntilELBConnectionsDrained": "DelayUntilElbConnectionsDrained", "DeleteElasticIP": "DeleteElasticIp", "DeploymentID": "DeploymentId", "DeploymentIDs": "DeploymentIds", "EBS": "Ebs", "EBSOptimized": "EbsOptimized", "EC2InstanceID": "Ec2InstanceId", "EC2InstanceIDs": "Ec2InstanceIds", "EC2VolumeID": "Ec2VolumeId", "EcsClusterARN": "EcsClusterArn", "EcsClusterARNs": "EcsClusterArns", "EcsContainerInstanceARN": "EcsContainerInstanceArn", "ElasticIP": "ElasticIp", "ElasticIPs": "ElasticIps", "EnableSSL": "EnableSsl", "IAMUserARN": "IamUserArn", "IAMUserARNs": "IamUserArns", "IOPS": "Iops", "IP": "Ip", "IPs": "Ips", "InstanceID": "InstanceId", "InstanceIDs": "InstanceIds", "InstanceProfileARN": "InstanceProfileArn", "LastServiceErrorID": "LastServiceErrorId", "LayerID": "LayerId", "LayerIDs": "LayerIds", "LogURL": "LogUrl", "MissingOnRDS": "MissingOnRds", "PrivateDNS": "PrivateDns", "PrivateIP": "PrivateIp", "PublicDNS": "PublicDns", "PublicIP": "PublicIp", "RAIDArrayID": "RaidArrayId", "RAIDArrayIDs": "RaidArrayIds", "RAIDArrays": "RaidArrays", "RAIDLevel": "RaidLevel", "RDSDBInstanceARN": "RdsDbInstanceArn", "RDSDBInstanceARNs": "RdsDbInstanceArns", "RDSDBInstances": "RdsDbInstances", "RSAPublicKey": "RsaPublicKey", "RSAPublicKeyFingerprint": "RsaPublicKeyFingerprint", "RootDeviceVolumeID": "RootDeviceVolumeId", "SSHHostDSAKeyFingerprint": "SshHostDsaKeyFingerprint", "SSHHostRSAKeyFingerprint": "SshHostRsaKeyFingerprint", "SSHKey": "SshKey", "SSHKeyName": "SshKeyName", "SSHPublicKey": "SshPublicKey", "SSHUsername": "SshUsername", "SSLConfiguration": "SslConfiguration", "SecurityGroupIDs": "SecurityGroupIds", "ServiceErrorID": "ServiceErrorId", "ServiceErrorIDs": "ServiceErrorIds", "ServiceRoleARN": "ServiceRoleArn", "SnapshotID": "SnapshotId", "SourceStackID": "SourceStackId", "StackID": "StackId", "StackIDs": "StackIds", "SubnetID": "SubnetId", "SubnetIDs": "SubnetIds", "URL": "Url", "UseEBSOptimizedInstances": "UseEbsOptimizedInstances", "UseOpsWorksSecurityGroups": "UseOpsworksSecurityGroups", "VPCID": "VpcId", "VolumeID": "VolumeId", "VolumeIDs": "VolumeIds", }, }, "github.com/aws/aws-sdk-go/service/opsworks/opsworksiface": { operations: map[string]string{ "AssociateElasticIP": "AssociateElasticIp", "AssociateElasticIPPages": "AssociateElasticIpPages", "AssociateElasticIPRequest": "AssociateElasticIpRequest", "DeregisterElasticIP": "DeregisterElasticIp", "DeregisterElasticIPPages": "DeregisterElasticIpPages", "DeregisterElasticIPRequest": "DeregisterElasticIpRequest", "DeregisterRDSDBInstance": "DeregisterRdsDbInstance", "DeregisterRDSDBInstancePages": "DeregisterRdsDbInstancePages", "DeregisterRDSDBInstanceRequest": "DeregisterRdsDbInstanceRequest", "DescribeElasticIPs": "DescribeElasticIps", "DescribeElasticIPsPages": "DescribeElasticIpsPages", "DescribeElasticIPsRequest": "DescribeElasticIpsRequest", "DescribeRAIDArrays": "DescribeRaidArrays", "DescribeRAIDArraysPages": "DescribeRaidArraysPages", "DescribeRAIDArraysRequest": "DescribeRaidArraysRequest", "DescribeRDSDBInstances": "DescribeRdsDbInstances", "DescribeRDSDBInstancesPages": "DescribeRdsDbInstancesPages", "DescribeRDSDBInstancesRequest": "DescribeRdsDbInstancesRequest", "DisassociateElasticIP": "DisassociateElasticIp", "DisassociateElasticIPPages": "DisassociateElasticIpPages", "DisassociateElasticIPRequest": "DisassociateElasticIpRequest", "RegisterElasticIP": "RegisterElasticIp", "RegisterElasticIPPages": "RegisterElasticIpPages", "RegisterElasticIPRequest": "RegisterElasticIpRequest", "RegisterRDSDBInstance": "RegisterRdsDbInstance", "RegisterRDSDBInstancePages": "RegisterRdsDbInstancePages", "RegisterRDSDBInstanceRequest": "RegisterRdsDbInstanceRequest", "UpdateElasticIP": "UpdateElasticIp", "UpdateElasticIPPages": "UpdateElasticIpPages", "UpdateElasticIPRequest": "UpdateElasticIpRequest", "UpdateRDSDBInstance": "UpdateRdsDbInstance", "UpdateRDSDBInstancePages": "UpdateRdsDbInstancePages", "UpdateRDSDBInstanceRequest": "UpdateRdsDbInstanceRequest", }, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/rds": { operations: map[string]string{}, shapes: map[string]string{ "VPCSecurityGroupMembership": "VpcSecurityGroupMembership", }, fields: map[string]string{ "AllowsVPCAndNonVPCInstanceMemberships": "AllowsVpcAndNonVpcInstanceMemberships", "CustSubscriptionID": "CustSubscriptionId", "CustomerAWSID": "CustomerAwsId", "DBIResourceID": "DbiResourceId", "DBInstancePort": "DbInstancePort", "EC2SecurityGroupID": "EC2SecurityGroupId", "EC2SecurityGroupOwnerID": "EC2SecurityGroupOwnerId", "IOPS": "Iops", "KMSKeyID": "KmsKeyId", "OwnerID": "OwnerId", "ReservedDBInstanceID": "ReservedDBInstanceId", "ReservedDBInstancesOfferingID": "ReservedDBInstancesOfferingId", "SNSTopicARN": "SnsTopicArn", "SourceIDs": "SourceIds", "SourceIDsList": "SourceIdsList", "SubnetIDs": "SubnetIds", "SupportsIOPS": "SupportsIops", "TDECredentialARN": "TdeCredentialArn", "TDECredentialPassword": "TdeCredentialPassword", "VPC": "Vpc", "VPCID": "VpcId", "VPCSecurityGroupID": "VpcSecurityGroupId", "VPCSecurityGroupIDs": "VpcSecurityGroupIds", "VPCSecurityGroupMemberships": "VpcSecurityGroupMemberships", "VPCSecurityGroups": "VpcSecurityGroups", }, }, "github.com/aws/aws-sdk-go/service/rds/rdsiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/redshift": { operations: map[string]string{ "CreateHSMClientCertificate": "CreateHsmClientCertificate", "CreateHSMClientCertificatePages": "CreateHsmClientCertificatePages", "CreateHSMClientCertificateRequest": "CreateHsmClientCertificateRequest", "CreateHSMConfiguration": "CreateHsmConfiguration", "CreateHSMConfigurationPages": "CreateHsmConfigurationPages", "CreateHSMConfigurationRequest": "CreateHsmConfigurationRequest", "DeleteHSMClientCertificate": "DeleteHsmClientCertificate", "DeleteHSMClientCertificatePages": "DeleteHsmClientCertificatePages", "DeleteHSMClientCertificateRequest": "DeleteHsmClientCertificateRequest", "DeleteHSMConfiguration": "DeleteHsmConfiguration", "DeleteHSMConfigurationPages": "DeleteHsmConfigurationPages", "DeleteHSMConfigurationRequest": "DeleteHsmConfigurationRequest", "DescribeHSMClientCertificates": "DescribeHsmClientCertificates", "DescribeHSMClientCertificatesPages": "DescribeHsmClientCertificatesPages", "DescribeHSMClientCertificatesRequest": "DescribeHsmClientCertificatesRequest", "DescribeHSMConfigurations": "DescribeHsmConfigurations", "DescribeHSMConfigurationsPages": "DescribeHsmConfigurationsPages", "DescribeHSMConfigurationsRequest": "DescribeHsmConfigurationsRequest", }, shapes: map[string]string{ "CreateHSMClientCertificateInput": "CreateHsmClientCertificateInput", "CreateHSMClientCertificateOutput": "CreateHsmClientCertificateOutput", "CreateHSMConfigurationInput": "CreateHsmConfigurationInput", "CreateHSMConfigurationOutput": "CreateHsmConfigurationOutput", "DeleteHSMClientCertificateInput": "DeleteHsmClientCertificateInput", "DeleteHSMClientCertificateOutput": "DeleteHsmClientCertificateOutput", "DeleteHSMConfigurationInput": "DeleteHsmConfigurationInput", "DeleteHSMConfigurationOutput": "DeleteHsmConfigurationOutput", "DescribeHSMClientCertificatesInput": "DescribeHsmClientCertificatesInput", "DescribeHSMClientCertificatesOutput": "DescribeHsmClientCertificatesOutput", "DescribeHSMConfigurationsInput": "DescribeHsmConfigurationsInput", "DescribeHSMConfigurationsOutput": "DescribeHsmConfigurationsOutput", "ElasticIPStatus": "ElasticIpStatus", "HSMClientCertificate": "HsmClientCertificate", "HSMConfiguration": "HsmConfiguration", "HSMStatus": "HsmStatus", "VPCSecurityGroupMembership": "VpcSecurityGroupMembership", }, fields: map[string]string{ "AccountID": "AccountId", "CustSubscriptionID": "CustSubscriptionId", "CustomerAWSID": "CustomerAwsId", "EC2SecurityGroupOwnerID": "EC2SecurityGroupOwnerId", "ElasticIP": "ElasticIp", "ElasticIPStatus": "ElasticIpStatus", "EventID": "EventId", "HSMClientCertificate": "HsmClientCertificate", "HSMClientCertificateIdentifier": "HsmClientCertificateIdentifier", "HSMClientCertificatePublicKey": "HsmClientCertificatePublicKey", "HSMClientCertificates": "HsmClientCertificates", "HSMConfiguration": "HsmConfiguration", "HSMConfigurationIdentifier": "HsmConfigurationIdentifier", "HSMConfigurations": "HsmConfigurations", "HSMIPAddress": "HsmIpAddress", "HSMPartitionName": "HsmPartitionName", "HSMPartitionPassword": "HsmPartitionPassword", "HSMServerPublicCertificate": "HsmServerPublicCertificate", "HSMStatus": "HsmStatus", "KMSKeyID": "KmsKeyId", "ReservedNodeID": "ReservedNodeId", "ReservedNodeOfferingID": "ReservedNodeOfferingId", "SNSTopicARN": "SnsTopicArn", "SourceIDs": "SourceIds", "SourceIDsList": "SourceIdsList", "SubnetIDs": "SubnetIds", "VPCID": "VpcId", "VPCSecurityGroupID": "VpcSecurityGroupId", "VPCSecurityGroupIDs": "VpcSecurityGroupIds", "VPCSecurityGroups": "VpcSecurityGroups", }, }, "github.com/aws/aws-sdk-go/service/redshift/redshiftiface": { operations: map[string]string{ "CreateHSMClientCertificate": "CreateHsmClientCertificate", "CreateHSMClientCertificatePages": "CreateHsmClientCertificatePages", "CreateHSMClientCertificateRequest": "CreateHsmClientCertificateRequest", "CreateHSMConfiguration": "CreateHsmConfiguration", "CreateHSMConfigurationPages": "CreateHsmConfigurationPages", "CreateHSMConfigurationRequest": "CreateHsmConfigurationRequest", "DeleteHSMClientCertificate": "DeleteHsmClientCertificate", "DeleteHSMClientCertificatePages": "DeleteHsmClientCertificatePages", "DeleteHSMClientCertificateRequest": "DeleteHsmClientCertificateRequest", "DeleteHSMConfiguration": "DeleteHsmConfiguration", "DeleteHSMConfigurationPages": "DeleteHsmConfigurationPages", "DeleteHSMConfigurationRequest": "DeleteHsmConfigurationRequest", "DescribeHSMClientCertificates": "DescribeHsmClientCertificates", "DescribeHSMClientCertificatesPages": "DescribeHsmClientCertificatesPages", "DescribeHSMClientCertificatesRequest": "DescribeHsmClientCertificatesRequest", "DescribeHSMConfigurations": "DescribeHsmConfigurations", "DescribeHSMConfigurationsPages": "DescribeHsmConfigurationsPages", "DescribeHSMConfigurationsRequest": "DescribeHsmConfigurationsRequest", }, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/route53": { operations: map[string]string{ "GetCheckerIPRanges": "GetCheckerIpRanges", "GetCheckerIPRangesPages": "GetCheckerIpRangesPages", "GetCheckerIPRangesRequest": "GetCheckerIpRangesRequest", }, shapes: map[string]string{ "GetCheckerIPRangesInput": "GetCheckerIpRangesInput", "GetCheckerIPRangesOutput": "GetCheckerIpRangesOutput", }, fields: map[string]string{ "CheckerIPRanges": "CheckerIpRanges", "DelegationSetID": "DelegationSetId", "HealthCheckID": "HealthCheckId", "HostedZoneID": "HostedZoneId", "ID": "Id", "NextHostedZoneID": "NextHostedZoneId", "ResourceID": "ResourceId", "ResourceIDs": "ResourceIds", "VPCID": "VPCId", }, }, "github.com/aws/aws-sdk-go/service/route53/route53iface": { operations: map[string]string{ "GetCheckerIPRanges": "GetCheckerIpRanges", "GetCheckerIPRangesPages": "GetCheckerIpRangesPages", "GetCheckerIPRangesRequest": "GetCheckerIpRangesRequest", }, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/route53domains": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "DNSSec": "DnsSec", "GlueIPs": "GlueIps", "IDNLangCode": "IdnLangCode", "OperationID": "OperationId", "RegistrarURL": "RegistrarUrl", "RegistryDomainID": "RegistryDomainId", }, }, "github.com/aws/aws-sdk-go/service/route53domains/route53domainsiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/s3": { operations: map[string]string{ "DeleteBucketCORS": "DeleteBucketCors", "DeleteBucketCORSPages": "DeleteBucketCorsPages", "DeleteBucketCORSRequest": "DeleteBucketCorsRequest", "GetBucketACL": "GetBucketAcl", "GetBucketACLPages": "GetBucketAclPages", "GetBucketACLRequest": "GetBucketAclRequest", "GetBucketCORS": "GetBucketCors", "GetBucketCORSPages": "GetBucketCorsPages", "GetBucketCORSRequest": "GetBucketCorsRequest", "GetObjectACL": "GetObjectAcl", "GetObjectACLPages": "GetObjectAclPages", "GetObjectACLRequest": "GetObjectAclRequest", "PutBucketACL": "PutBucketAcl", "PutBucketACLPages": "PutBucketAclPages", "PutBucketACLRequest": "PutBucketAclRequest", "PutBucketCORS": "PutBucketCors", "PutBucketCORSPages": "PutBucketCorsPages", "PutBucketCORSRequest": "PutBucketCorsRequest", "PutObjectACL": "PutObjectAcl", "PutObjectACLPages": "PutObjectAclPages", "PutObjectACLRequest": "PutObjectAclRequest", }, shapes: map[string]string{ "DeleteBucketCORSInput": "DeleteBucketCorsInput", "DeleteBucketCORSOutput": "DeleteBucketCorsOutput", "GetBucketACLInput": "GetBucketAclInput", "GetBucketACLOutput": "GetBucketAclOutput", "GetBucketCORSInput": "GetBucketCorsInput", "GetBucketCORSOutput": "GetBucketCorsOutput", "GetObjectACLInput": "GetObjectAclInput", "GetObjectACLOutput": "GetObjectAclOutput", "PutBucketACLInput": "PutBucketAclInput", "PutBucketACLOutput": "PutBucketAclOutput", "PutBucketCORSInput": "PutBucketCorsInput", "PutBucketCORSOutput": "PutBucketCorsOutput", "PutObjectACLInput": "PutObjectAclInput", "PutObjectACLOutput": "PutObjectAclOutput", }, fields: map[string]string{ "CopySourceVersionID": "CopySourceVersionId", "DeleteMarkerVersionID": "DeleteMarkerVersionId", "HTTPErrorCodeReturnedEquals": "HttpErrorCodeReturnedEquals", "HTTPRedirectCode": "HttpRedirectCode", "ID": "Id", "LambdaFunctionARN": "LambdaFunctionArn", "NextUploadIDMarker": "NextUploadIdMarker", "NextVersionIDMarker": "NextVersionIdMarker", "QueueARN": "QueueArn", "SSEKMSKeyID": "SSEKMSKeyId", "TopicARN": "TopicArn", "UploadID": "UploadId", "UploadIDMarker": "UploadIdMarker", "VersionID": "VersionId", "VersionIDMarker": "VersionIdMarker", }, }, "github.com/aws/aws-sdk-go/service/s3/s3manager": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "UploadID": "UploadId", }, }, "github.com/aws/aws-sdk-go/service/s3/s3iface": { operations: map[string]string{ "DeleteBucketCORS": "DeleteBucketCors", "DeleteBucketCORSPages": "DeleteBucketCorsPages", "DeleteBucketCORSRequest": "DeleteBucketCorsRequest", "GetBucketACL": "GetBucketAcl", "GetBucketACLPages": "GetBucketAclPages", "GetBucketACLRequest": "GetBucketAclRequest", "GetBucketCORS": "GetBucketCors", "GetBucketCORSPages": "GetBucketCorsPages", "GetBucketCORSRequest": "GetBucketCorsRequest", "GetObjectACL": "GetObjectAcl", "GetObjectACLPages": "GetObjectAclPages", "GetObjectACLRequest": "GetObjectAclRequest", "PutBucketACL": "PutBucketAcl", "PutBucketACLPages": "PutBucketAclPages", "PutBucketACLRequest": "PutBucketAclRequest", "PutBucketCORS": "PutBucketCors", "PutBucketCORSPages": "PutBucketCorsPages", "PutBucketCORSRequest": "PutBucketCorsRequest", "PutObjectACL": "PutObjectAcl", "PutObjectACLPages": "PutObjectAclPages", "PutObjectACLRequest": "PutObjectAclRequest", }, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/ses": { operations: map[string]string{ "GetIdentityDKIMAttributes": "GetIdentityDkimAttributes", "GetIdentityDKIMAttributesPages": "GetIdentityDkimAttributesPages", "GetIdentityDKIMAttributesRequest": "GetIdentityDkimAttributesRequest", "SetIdentityDKIMEnabled": "SetIdentityDkimEnabled", "SetIdentityDKIMEnabledPages": "SetIdentityDkimEnabledPages", "SetIdentityDKIMEnabledRequest": "SetIdentityDkimEnabledRequest", "VerifyDomainDKIM": "VerifyDomainDkim", "VerifyDomainDKIMPages": "VerifyDomainDkimPages", "VerifyDomainDKIMRequest": "VerifyDomainDkimRequest", }, shapes: map[string]string{ "GetIdentityDKIMAttributesInput": "GetIdentityDkimAttributesInput", "GetIdentityDKIMAttributesOutput": "GetIdentityDkimAttributesOutput", "IdentityDKIMAttributes": "IdentityDkimAttributes", "SetIdentityDKIMEnabledInput": "SetIdentityDkimEnabledInput", "SetIdentityDKIMEnabledOutput": "SetIdentityDkimEnabledOutput", "VerifyDomainDKIMInput": "VerifyDomainDkimInput", "VerifyDomainDKIMOutput": "VerifyDomainDkimOutput", }, fields: map[string]string{ "BCCAddresses": "BccAddresses", "CCAddresses": "CcAddresses", "DKIMAttributes": "DkimAttributes", "DKIMEnabled": "DkimEnabled", "DKIMTokens": "DkimTokens", "DKIMVerificationStatus": "DkimVerificationStatus", "FromARN": "FromArn", "HTML": "Html", "MessageID": "MessageId", "ReturnPathARN": "ReturnPathArn", "SNSTopic": "SnsTopic", "SourceARN": "SourceArn", }, }, "github.com/aws/aws-sdk-go/service/ses/sesiface": { operations: map[string]string{ "GetIdentityDKIMAttributes": "GetIdentityDkimAttributes", "GetIdentityDKIMAttributesPages": "GetIdentityDkimAttributesPages", "GetIdentityDKIMAttributesRequest": "GetIdentityDkimAttributesRequest", "SetIdentityDKIMEnabled": "SetIdentityDkimEnabled", "SetIdentityDKIMEnabledPages": "SetIdentityDkimEnabledPages", "SetIdentityDKIMEnabledRequest": "SetIdentityDkimEnabledRequest", "VerifyDomainDKIM": "VerifyDomainDkim", "VerifyDomainDKIMPages": "VerifyDomainDkimPages", "VerifyDomainDKIMRequest": "VerifyDomainDkimRequest", }, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/sns": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "AWSAccountID": "AWSAccountId", "EndpointARN": "EndpointArn", "MessageID": "MessageId", "PlatformApplicationARN": "PlatformApplicationArn", "SubscriptionARN": "SubscriptionArn", "TargetARN": "TargetArn", "TopicARN": "TopicArn", }, }, "github.com/aws/aws-sdk-go/service/sns/snsiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/sqs": { operations: map[string]string{ "GetQueueURL": "GetQueueUrl", "GetQueueURLPages": "GetQueueUrlPages", "GetQueueURLRequest": "GetQueueUrlRequest", }, shapes: map[string]string{ "GetQueueURLInput": "GetQueueUrlInput", "GetQueueURLOutput": "GetQueueUrlOutput", }, fields: map[string]string{ "AWSAccountIDs": "AWSAccountIds", "ID": "Id", "MessageID": "MessageId", "QueueOwnerAWSAccountID": "QueueOwnerAWSAccountId", "QueueURL": "QueueUrl", "QueueURLs": "QueueUrls", }, }, "github.com/aws/aws-sdk-go/service/sqs/sqsiface": { operations: map[string]string{ "GetQueueURL": "GetQueueUrl", "GetQueueURLPages": "GetQueueUrlPages", "GetQueueURLRequest": "GetQueueUrlRequest", }, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/ssm": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "InstanceID": "InstanceId", "SHA1": "Sha1", }, }, "github.com/aws/aws-sdk-go/service/ssm/ssmiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/storagegateway": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "DiskID": "DiskId", "DiskIDs": "DiskIds", "GatewayID": "GatewayId", "IPV4Address": "Ipv4Address", "IPV6Address": "Ipv6Address", "MACAddress": "MacAddress", "NetworkInterfaceID": "NetworkInterfaceId", "SnapshotID": "SnapshotId", "SourceSnapshotID": "SourceSnapshotId", "VolumeDiskID": "VolumeDiskId", "VolumeID": "VolumeId", }, }, "github.com/aws/aws-sdk-go/service/storagegateway/storagegatewayiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/sts": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "ARN": "Arn", "AccessKeyID": "AccessKeyId", "AssumedRoleID": "AssumedRoleId", "ExternalID": "ExternalId", "FederatedUserID": "FederatedUserId", "PrincipalARN": "PrincipalArn", "ProviderID": "ProviderId", "RoleARN": "RoleArn", }, }, "github.com/aws/aws-sdk-go/service/sts/stsiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/support": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "AttachmentID": "AttachmentId", "AttachmentSetID": "AttachmentSetId", "CCEmailAddresses": "CcEmailAddresses", "CaseID": "CaseId", "CaseIDList": "CaseIdList", "CheckID": "CheckId", "CheckIDs": "CheckIds", "DisplayID": "DisplayId", "ID": "Id", "ResourceID": "ResourceId", }, }, "github.com/aws/aws-sdk-go/service/support/supportiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/swf": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "ActivityID": "ActivityId", "ContinuedExecutionRunID": "ContinuedExecutionRunId", "DecisionTaskCompletedEventID": "DecisionTaskCompletedEventId", "EventID": "EventId", "ExternalInitiatedEventID": "ExternalInitiatedEventId", "ID": "Id", "InitiatedEventID": "InitiatedEventId", "LatestCancelRequestedEventID": "LatestCancelRequestedEventId", "NewExecutionRunID": "NewExecutionRunId", "ParentInitiatedEventID": "ParentInitiatedEventId", "PreviousStartedEventID": "PreviousStartedEventId", "RunID": "RunId", "ScheduledEventID": "ScheduledEventId", "StartedEventID": "StartedEventId", "TimerID": "TimerId", "WorkflowID": "WorkflowId", }, }, "github.com/aws/aws-sdk-go/service/swf/swfiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, "github.com/aws/aws-sdk-go/service/workspaces": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{ "BundleID": "BundleId", "BundleIDs": "BundleIds", "CustomSecurityGroupID": "CustomSecurityGroupId", "DNSIPAddresses": "DnsIpAddresses", "DefaultOU": "DefaultOu", "DirectoryID": "DirectoryId", "DirectoryIDs": "DirectoryIds", "IAMRoleID": "IamRoleId", "IPAddress": "IpAddress", "SubnetID": "SubnetId", "SubnetIDs": "SubnetIds", "WorkspaceID": "WorkspaceId", "WorkspaceIDs": "WorkspaceIds", "WorkspaceSecurityGroupID": "WorkspaceSecurityGroupId", }, }, "github.com/aws/aws-sdk-go/service/workspaces/workspacesiface": { operations: map[string]string{}, shapes: map[string]string{}, fields: map[string]string{}, }, } aws-sdk-go-1.4.22/awsmigrate/awsmigrate-renamer/renamer.go000066400000000000000000000017251300374646400235050ustar00rootroot00000000000000// +build go1.5,deprecated package main //go:generate go run -tags deprecated gen/gen.go import ( "os" "os/exec" "path/filepath" "strings" "github.com/aws/aws-sdk-go/awsmigrate/awsmigrate-renamer/rename" ) var safeTag = "4e554f77f00d527b452c68a46f2e68595284121b" func main() { gopath := os.Getenv("GOPATH") if gopath == "" { panic("GOPATH not set!") } gopath = strings.Split(gopath, ":")[0] // change directory to SDK err := os.Chdir(filepath.Join(gopath, "src", "github.com", "aws", "aws-sdk-go")) if err != nil { panic("Cannot find SDK repository") } // store orig HEAD head, err := exec.Command("git", "rev-parse", "--abbrev-ref", "HEAD").Output() if err != nil { panic("Cannot find SDK repository") } origHEAD := strings.Trim(string(head), " \r\n") // checkout to safe tag and run conversion exec.Command("git", "checkout", safeTag).Run() defer func() { exec.Command("git", "checkout", origHEAD).Run() }() rename.ParsePathsFromArgs() } aws-sdk-go-1.4.22/awsmigrate/awsmigrate-renamer/vendor/000077500000000000000000000000001300374646400230155ustar00rootroot00000000000000aws-sdk-go-1.4.22/awsmigrate/awsmigrate-renamer/vendor/golang.org/000077500000000000000000000000001300374646400250525ustar00rootroot00000000000000aws-sdk-go-1.4.22/awsmigrate/awsmigrate-renamer/vendor/golang.org/x/000077500000000000000000000000001300374646400253215ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/000077500000000000000000000000001300374646400157535ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/assert.go000066400000000000000000000114321300374646400176040ustar00rootroot00000000000000package awstesting import ( "encoding/json" "encoding/xml" "fmt" "net/url" "reflect" "regexp" "sort" "testing" ) // Match is a testing helper to test for testing error by comparing expected // with a regular expression. func Match(t *testing.T, regex, expected string) { if !regexp.MustCompile(regex).Match([]byte(expected)) { t.Errorf("%q\n\tdoes not match /%s/", expected, regex) } } // AssertURL verifies the expected URL is matches the actual. func AssertURL(t *testing.T, expect, actual string, msgAndArgs ...interface{}) bool { expectURL, err := url.Parse(expect) if err != nil { t.Errorf(errMsg("unable to parse expected URL", err, msgAndArgs)) return false } actualURL, err := url.Parse(actual) if err != nil { t.Errorf(errMsg("unable to parse actual URL", err, msgAndArgs)) return false } equal(t, expectURL.Host, actualURL.Host, msgAndArgs...) equal(t, expectURL.Scheme, actualURL.Scheme, msgAndArgs...) equal(t, expectURL.Path, actualURL.Path, msgAndArgs...) return AssertQuery(t, expectURL.Query().Encode(), actualURL.Query().Encode(), msgAndArgs...) } // AssertQuery verifies the expect HTTP query string matches the actual. func AssertQuery(t *testing.T, expect, actual string, msgAndArgs ...interface{}) bool { expectQ, err := url.ParseQuery(expect) if err != nil { t.Errorf(errMsg("unable to parse expected Query", err, msgAndArgs)) return false } actualQ, err := url.ParseQuery(expect) if err != nil { t.Errorf(errMsg("unable to parse actual Query", err, msgAndArgs)) return false } // Make sure the keys are the same if !equal(t, queryValueKeys(expectQ), queryValueKeys(actualQ), msgAndArgs...) { return false } for k, expectQVals := range expectQ { sort.Strings(expectQVals) actualQVals := actualQ[k] sort.Strings(actualQVals) equal(t, expectQVals, actualQVals, msgAndArgs...) } return true } // AssertJSON verifies that the expect json string matches the actual. func AssertJSON(t *testing.T, expect, actual string, msgAndArgs ...interface{}) bool { expectVal := map[string]interface{}{} if err := json.Unmarshal([]byte(expect), &expectVal); err != nil { t.Errorf(errMsg("unable to parse expected JSON", err, msgAndArgs...)) return false } actualVal := map[string]interface{}{} if err := json.Unmarshal([]byte(actual), &actualVal); err != nil { t.Errorf(errMsg("unable to parse actual JSON", err, msgAndArgs...)) return false } return equal(t, expectVal, actualVal, msgAndArgs...) } // AssertXML verifies that the expect xml string matches the actual. func AssertXML(t *testing.T, expect, actual string, container interface{}, msgAndArgs ...interface{}) bool { expectVal := container if err := xml.Unmarshal([]byte(expect), &expectVal); err != nil { t.Errorf(errMsg("unable to parse expected XML", err, msgAndArgs...)) } actualVal := container if err := xml.Unmarshal([]byte(actual), &actualVal); err != nil { t.Errorf(errMsg("unable to parse actual XML", err, msgAndArgs...)) } return equal(t, expectVal, actualVal, msgAndArgs...) } // objectsAreEqual determines if two objects are considered equal. // // This function does no assertion of any kind. // // Based on github.com/stretchr/testify/assert.ObjectsAreEqual // Copied locally to prevent non-test build dependencies on testify func objectsAreEqual(expected, actual interface{}) bool { if expected == nil || actual == nil { return expected == actual } return reflect.DeepEqual(expected, actual) } // Equal asserts that two objects are equal. // // assert.Equal(t, 123, 123, "123 and 123 should be equal") // // Returns whether the assertion was successful (true) or not (false). // // Based on github.com/stretchr/testify/assert.Equal // Copied locally to prevent non-test build dependencies on testify func equal(t *testing.T, expected, actual interface{}, msgAndArgs ...interface{}) bool { if !objectsAreEqual(expected, actual) { t.Errorf("Not Equal:\n\t%#v (expected)\n\t%#v (actual), %s", expected, actual, messageFromMsgAndArgs(msgAndArgs)) return false } return true } func errMsg(baseMsg string, err error, msgAndArgs ...interface{}) string { message := messageFromMsgAndArgs(msgAndArgs) if message != "" { message += ", " } return fmt.Sprintf("%s%s, %v", message, baseMsg, err) } // Based on github.com/stretchr/testify/assert.messageFromMsgAndArgs // Copied locally to prevent non-test build dependencies on testify func messageFromMsgAndArgs(msgAndArgs []interface{}) string { if len(msgAndArgs) == 0 || msgAndArgs == nil { return "" } if len(msgAndArgs) == 1 { return msgAndArgs[0].(string) } if len(msgAndArgs) > 1 { return fmt.Sprintf(msgAndArgs[0].(string), msgAndArgs[1:]...) } return "" } func queryValueKeys(v url.Values) []string { keys := make([]string, 0, len(v)) for k := range v { keys = append(keys, k) } sort.Strings(keys) return keys } aws-sdk-go-1.4.22/awstesting/assert_test.go000066400000000000000000000043641300374646400206510ustar00rootroot00000000000000package awstesting_test import ( "encoding/xml" "testing" "github.com/aws/aws-sdk-go/awstesting" ) func TestAssertJSON(t *testing.T) { cases := []struct { e, a string asserts bool }{ { e: `{"RecursiveStruct":{"RecursiveMap":{"foo":{"NoRecurse":"foo"},"bar":{"NoRecurse":"bar"}}}}`, a: `{"RecursiveStruct":{"RecursiveMap":{"bar":{"NoRecurse":"bar"},"foo":{"NoRecurse":"foo"}}}}`, asserts: true, }, } for i, c := range cases { mockT := &testing.T{} if awstesting.AssertJSON(mockT, c.e, c.a) != c.asserts { t.Error("Assert JSON result was not expected.", i) } } } func TestAssertXML(t *testing.T) { cases := []struct { e, a string asserts bool container struct { XMLName xml.Name `xml:"OperationRequest"` NS string `xml:"xmlns,attr"` RecursiveStruct struct { RecursiveMap struct { Entries []struct { XMLName xml.Name `xml:"entries"` Key string `xml:"key"` Value struct { XMLName xml.Name `xml:"value"` NoRecurse string } } } } } }{ { e: `foofoobarbar`, a: `barbarfoofoo`, asserts: true, }, } for i, c := range cases { // mockT := &testing.T{} if awstesting.AssertXML(t, c.e, c.a, c.container) != c.asserts { t.Error("Assert XML result was not expected.", i) } } } aws-sdk-go-1.4.22/awstesting/client.go000066400000000000000000000010051300374646400175540ustar00rootroot00000000000000package awstesting import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/defaults" ) // NewClient creates and initializes a generic service client for testing. func NewClient(cfgs ...*aws.Config) *client.Client { info := metadata.ClientInfo{ Endpoint: "http://endpoint", SigningName: "", } def := defaults.Get() def.Config.MergeIn(cfgs...) return client.New(*def.Config, info, def.Handlers) } aws-sdk-go-1.4.22/awstesting/integration/000077500000000000000000000000001300374646400202765ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/customizations/000077500000000000000000000000001300374646400233715ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/customizations/s3/000077500000000000000000000000001300374646400237165ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/customizations/s3/integration_test.go000066400000000000000000000053761300374646400276420ustar00rootroot00000000000000// +build integration // Package s3_test runs integration tests for S3 package s3_test import ( "bytes" "fmt" "io/ioutil" "net/http" "os" "testing" "time" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/awstesting/integration" "github.com/aws/aws-sdk-go/service/s3" ) var bucketName *string var svc *s3.S3 func TestMain(m *testing.M) { setup() defer teardown() // only called if we panic result := m.Run() teardown() os.Exit(result) } // Create a bucket for testing func setup() { svc = s3.New(integration.Session) bucketName = aws.String( fmt.Sprintf("aws-sdk-go-integration-%d-%s", time.Now().Unix(), integration.UniqueID())) for i := 0; i < 10; i++ { _, err := svc.CreateBucket(&s3.CreateBucketInput{Bucket: bucketName}) if err == nil { break } } for { _, err := svc.HeadBucket(&s3.HeadBucketInput{Bucket: bucketName}) if err == nil { break } time.Sleep(1 * time.Second) } } // Delete the bucket func teardown() { resp, _ := svc.ListObjects(&s3.ListObjectsInput{Bucket: bucketName}) for _, o := range resp.Contents { svc.DeleteObject(&s3.DeleteObjectInput{Bucket: bucketName, Key: o.Key}) } svc.DeleteBucket(&s3.DeleteBucketInput{Bucket: bucketName}) } func TestWriteToObject(t *testing.T) { _, err := svc.PutObject(&s3.PutObjectInput{ Bucket: bucketName, Key: aws.String("key name"), Body: bytes.NewReader([]byte("hello world")), }) assert.NoError(t, err) resp, err := svc.GetObject(&s3.GetObjectInput{ Bucket: bucketName, Key: aws.String("key name"), }) assert.NoError(t, err) b, _ := ioutil.ReadAll(resp.Body) assert.Equal(t, []byte("hello world"), b) } func TestPresignedGetPut(t *testing.T) { putreq, _ := svc.PutObjectRequest(&s3.PutObjectInput{ Bucket: bucketName, Key: aws.String("presigned-key"), }) var err error // Presign a PUT request var puturl string puturl, err = putreq.Presign(300 * time.Second) assert.NoError(t, err) // PUT to the presigned URL with a body var puthttpreq *http.Request buf := bytes.NewReader([]byte("hello world")) puthttpreq, err = http.NewRequest("PUT", puturl, buf) assert.NoError(t, err) var putresp *http.Response putresp, err = http.DefaultClient.Do(puthttpreq) assert.NoError(t, err) assert.Equal(t, 200, putresp.StatusCode) // Presign a GET on the same URL getreq, _ := svc.GetObjectRequest(&s3.GetObjectInput{ Bucket: bucketName, Key: aws.String("presigned-key"), }) var geturl string geturl, err = getreq.Presign(300 * time.Second) assert.NoError(t, err) // Get the body var getresp *http.Response getresp, err = http.Get(geturl) assert.NoError(t, err) var b []byte defer getresp.Body.Close() b, err = ioutil.ReadAll(getresp.Body) assert.Equal(t, "hello world", string(b)) } aws-sdk-go-1.4.22/awstesting/integration/customizations/s3/s3crypto/000077500000000000000000000000001300374646400255045ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/customizations/s3/s3crypto/client.go000066400000000000000000000015141300374646400273120ustar00rootroot00000000000000// +build integration //Package s3crypto provides gucumber integration tests support. package s3crypto import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/s3" "github.com/aws/aws-sdk-go/service/s3/s3crypto" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@s3crypto", func() { sess := session.New((&aws.Config{ Region: aws.String("us-west-2"), }).WithLogLevel(aws.LogDebugWithRequestRetries | aws.LogDebugWithRequestErrors)) encryptionClient := s3crypto.NewEncryptionClient(sess, nil, func(c *s3crypto.EncryptionClient) { }) gucumber.World["encryptionClient"] = encryptionClient decryptionClient := s3crypto.NewDecryptionClient(sess) gucumber.World["decryptionClient"] = decryptionClient gucumber.World["client"] = s3.New(sess) }) } aws-sdk-go-1.4.22/awstesting/integration/customizations/s3/s3crypto/s3_crypto.feature000066400000000000000000000015071300374646400310110ustar00rootroot00000000000000# language: en @s3crypto @client Feature: S3 Integration Crypto Tests Scenario: Get all plaintext fixtures for symmetric masterkey aes cbc When I get all fixtures for "aes_gcm" from "aws-s3-shared-tests" Then I decrypt each fixture against "Java" "version_2" And I compare the decrypted ciphertext to the plaintext Scenario: Uploading Go's SDK fixtures When I get all fixtures for "aes_gcm" from "aws-s3-shared-tests" Then I encrypt each fixture with "kms" "AWS_SDK_TEST_ALIAS" "us-west-2" and "aes_gcm" And upload "Go" data with folder "version_2" Scenario: Get all plaintext fixtures for symmetric masterkey aes gcm When I get all fixtures for "aes_gcm" from "aws-s3-shared-tests" Then I decrypt each fixture against "Go" "version_2" And I compare the decrypted ciphertext to the plaintext aws-sdk-go-1.4.22/awstesting/integration/customizations/s3/s3crypto/stepdef.go000066400000000000000000000132141300374646400274660ustar00rootroot00000000000000// +build integration // Package s3crypto contains shared step definitions that are used across integration tests package s3crypto import ( "bytes" "encoding/base64" "errors" "io/ioutil" "strings" "github.com/gucumber/gucumber" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/kms" "github.com/aws/aws-sdk-go/service/s3" "github.com/aws/aws-sdk-go/service/s3/s3crypto" ) func init() { gucumber.When(`^I get all fixtures for "(.+?)" from "(.+?)"$`, func(cekAlg, bucket string) { prefix := "plaintext_test_case_" baseFolder := "crypto_tests/" + cekAlg s3Client := gucumber.World["client"].(*s3.S3) out, err := s3Client.ListObjects(&s3.ListObjectsInput{ Bucket: aws.String(bucket), Prefix: aws.String(baseFolder + "/" + prefix), }) assert.NoError(gucumber.T, err) plaintexts := make(map[string][]byte) for _, obj := range out.Contents { plaintextKey := obj.Key ptObj, err := s3Client.GetObject(&s3.GetObjectInput{ Bucket: aws.String(bucket), Key: plaintextKey, }) assert.NoError(gucumber.T, err) caseKey := strings.TrimPrefix(*plaintextKey, baseFolder+"/"+prefix) plaintext, err := ioutil.ReadAll(ptObj.Body) assert.NoError(gucumber.T, err) plaintexts[caseKey] = plaintext } gucumber.World["baseFolder"] = baseFolder gucumber.World["bucket"] = bucket gucumber.World["plaintexts"] = plaintexts }) gucumber.Then(`^I decrypt each fixture against "(.+?)" "(.+?)"$`, func(lang, version string) { plaintexts := gucumber.World["plaintexts"].(map[string][]byte) baseFolder := gucumber.World["baseFolder"].(string) bucket := gucumber.World["bucket"].(string) prefix := "ciphertext_test_case_" s3Client := gucumber.World["client"].(*s3.S3) s3CryptoClient := gucumber.World["decryptionClient"].(*s3crypto.DecryptionClient) language := "language_" + lang ciphertexts := make(map[string][]byte) for caseKey := range plaintexts { cipherKey := baseFolder + "/" + version + "/" + language + "/" + prefix + caseKey // To get metadata for encryption key ctObj, err := s3Client.GetObject(&s3.GetObjectInput{ Bucket: aws.String(bucket), Key: &cipherKey, }) if err != nil { continue } // We don't support wrap, so skip it if *ctObj.Metadata["X-Amz-Wrap-Alg"] != "kms" { continue } //masterkeyB64 := ctObj.Metadata["Masterkey"] //masterkey, err := base64.StdEncoding.DecodeString(*masterkeyB64) //assert.NoError(T, err) //s3CryptoClient.Config.MasterKey = masterkey ctObj, err = s3CryptoClient.GetObject(&s3.GetObjectInput{ Bucket: aws.String(bucket), Key: &cipherKey, }, ) assert.NoError(gucumber.T, err) ciphertext, err := ioutil.ReadAll(ctObj.Body) assert.NoError(gucumber.T, err) ciphertexts[caseKey] = ciphertext } gucumber.World["ciphertexts"] = ciphertexts }) gucumber.And(`^I compare the decrypted ciphertext to the plaintext$`, func() { plaintexts := gucumber.World["plaintexts"].(map[string][]byte) ciphertexts := gucumber.World["ciphertexts"].(map[string][]byte) for caseKey, ciphertext := range ciphertexts { assert.Equal(gucumber.T, len(plaintexts[caseKey]), len(ciphertext)) assert.True(gucumber.T, bytes.Equal(plaintexts[caseKey], ciphertext)) } }) gucumber.Then(`^I encrypt each fixture with "(.+?)" "(.+?)" "(.+?)" and "(.+?)"$`, func(kek, v1, v2, cek string) { var handler s3crypto.CipherDataGenerator var builder s3crypto.ContentCipherBuilder switch kek { case "kms": arn, err := getAliasInformation(v1, v2) assert.Nil(gucumber.T, err) b64Arn := base64.StdEncoding.EncodeToString([]byte(arn)) assert.Nil(gucumber.T, err) gucumber.World["Masterkey"] = b64Arn handler = s3crypto.NewKMSKeyGenerator(kms.New(session.New(&aws.Config{ Region: &v2, })), arn) assert.Nil(gucumber.T, err) default: gucumber.T.Skip() } switch cek { case "aes_gcm": builder = s3crypto.AESGCMContentCipherBuilder(handler) default: gucumber.T.Skip() } sess := session.New(&aws.Config{ Region: aws.String("us-west-2"), }) c := s3crypto.NewEncryptionClient(sess, builder, func(c *s3crypto.EncryptionClient) { }) gucumber.World["encryptionClient"] = c gucumber.World["cek"] = cek }) gucumber.And(`^upload "(.+?)" data with folder "(.+?)"$`, func(language, folder string) { c := gucumber.World["encryptionClient"].(*s3crypto.EncryptionClient) cek := gucumber.World["cek"].(string) bucket := gucumber.World["bucket"].(string) plaintexts := gucumber.World["plaintexts"].(map[string][]byte) key := gucumber.World["Masterkey"].(string) for caseKey, plaintext := range plaintexts { input := &s3.PutObjectInput{ Bucket: &bucket, Key: aws.String("crypto_tests/" + cek + "/" + folder + "/language_" + language + "/ciphertext_test_case_" + caseKey), Body: bytes.NewReader(plaintext), Metadata: map[string]*string{ "Masterkey": &key, }, } _, err := c.PutObject(input) assert.Nil(gucumber.T, err) } }) } func getAliasInformation(alias, region string) (string, error) { arn := "" svc := kms.New(session.New(&aws.Config{ Region: ®ion, })) truncated := true var marker *string for truncated { out, err := svc.ListAliases(&kms.ListAliasesInput{ Marker: marker, }) if err != nil { return arn, err } for _, aliasEntry := range out.Aliases { if *aliasEntry.AliasName == "alias/"+alias { return *aliasEntry.AliasArn, nil } } truncated = *out.Truncated marker = out.NextMarker } return "", errors.New("The alias " + alias + " does not exist in your account. Please add the proper alias to a key") } aws-sdk-go-1.4.22/awstesting/integration/customizations/s3/s3manager/000077500000000000000000000000001300374646400255765ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/customizations/s3/s3manager/integration_test.go000066400000000000000000000072771300374646400315240ustar00rootroot00000000000000// +build integration // Package s3manager provides package s3manager import ( "bytes" "crypto/md5" "fmt" "io" "os" "testing" "time" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting/integration" "github.com/aws/aws-sdk-go/service/s3" "github.com/aws/aws-sdk-go/service/s3/s3manager" ) var integBuf12MB = make([]byte, 1024*1024*12) var integMD512MB = fmt.Sprintf("%x", md5.Sum(integBuf12MB)) var bucketName *string func TestMain(m *testing.M) { setup() defer teardown() // only called if we panic result := m.Run() teardown() os.Exit(result) } func setup() { // Create a bucket for testing svc := s3.New(integration.Session) bucketName = aws.String( fmt.Sprintf("aws-sdk-go-integration-%d-%s", time.Now().Unix(), integration.UniqueID())) for i := 0; i < 10; i++ { _, err := svc.CreateBucket(&s3.CreateBucketInput{Bucket: bucketName}) if err == nil { break } } for { _, err := svc.HeadBucket(&s3.HeadBucketInput{Bucket: bucketName}) if err == nil { break } time.Sleep(1 * time.Second) } } // Delete the bucket func teardown() { svc := s3.New(integration.Session) objs, _ := svc.ListObjects(&s3.ListObjectsInput{Bucket: bucketName}) for _, o := range objs.Contents { svc.DeleteObject(&s3.DeleteObjectInput{Bucket: bucketName, Key: o.Key}) } uploads, _ := svc.ListMultipartUploads(&s3.ListMultipartUploadsInput{Bucket: bucketName}) for _, u := range uploads.Uploads { svc.AbortMultipartUpload(&s3.AbortMultipartUploadInput{ Bucket: bucketName, Key: u.Key, UploadId: u.UploadId, }) } svc.DeleteBucket(&s3.DeleteBucketInput{Bucket: bucketName}) } type dlwriter struct { buf []byte } func newDLWriter(size int) *dlwriter { return &dlwriter{buf: make([]byte, size)} } func (d dlwriter) WriteAt(p []byte, pos int64) (n int, err error) { if pos > int64(len(d.buf)) { return 0, io.EOF } written := 0 for i, b := range p { if i >= len(d.buf) { break } d.buf[pos+int64(i)] = b written++ } return written, nil } func validate(t *testing.T, key string, md5value string) { mgr := s3manager.NewDownloader(integration.Session) params := &s3.GetObjectInput{Bucket: bucketName, Key: &key} w := newDLWriter(1024 * 1024 * 20) n, err := mgr.Download(w, params) assert.NoError(t, err) assert.Equal(t, md5value, fmt.Sprintf("%x", md5.Sum(w.buf[0:n]))) } func TestUploadConcurrently(t *testing.T) { key := "12mb-1" mgr := s3manager.NewUploader(integration.Session) out, err := mgr.Upload(&s3manager.UploadInput{ Bucket: bucketName, Key: &key, Body: bytes.NewReader(integBuf12MB), }) assert.NoError(t, err) assert.NotEqual(t, "", out.UploadID) assert.Regexp(t, `^https?://.+/`+key+`$`, out.Location) validate(t, key, integMD512MB) } func TestUploadFailCleanup(t *testing.T) { svc := s3.New(integration.Session) // Break checksum on 2nd part so it fails part := 0 svc.Handlers.Build.PushBack(func(r *request.Request) { if r.Operation.Name == "UploadPart" { if part == 1 { r.HTTPRequest.Header.Set("X-Amz-Content-Sha256", "000") } part++ } }) key := "12mb-leave" mgr := s3manager.NewUploaderWithClient(svc, func(u *s3manager.Uploader) { u.LeavePartsOnError = false }) _, err := mgr.Upload(&s3manager.UploadInput{ Bucket: bucketName, Key: &key, Body: bytes.NewReader(integBuf12MB), }) assert.Error(t, err) assert.NotContains(t, err.Error(), "MissingRegion") uploadID := "" if merr, ok := err.(s3manager.MultiUploadFailure); ok { uploadID = merr.UploadID() } assert.NotEmpty(t, uploadID) _, err = svc.ListParts(&s3.ListPartsInput{ Bucket: bucketName, Key: &key, UploadId: &uploadID}) assert.Error(t, err) } aws-sdk-go-1.4.22/awstesting/integration/customizations/s3/s3manager/stub.go000066400000000000000000000000221300374646400270740ustar00rootroot00000000000000package s3manager aws-sdk-go-1.4.22/awstesting/integration/customizations/s3/stub.go000066400000000000000000000000131300374646400252140ustar00rootroot00000000000000package s3 aws-sdk-go-1.4.22/awstesting/integration/integration.go000066400000000000000000000021001300374646400231410ustar00rootroot00000000000000// +build integration // Package integration performs initialization and validation for integration // tests. package integration import ( "crypto/rand" "fmt" "io" "os" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" ) // Session is a shared session for all integration tests to use. var Session = session.Must(session.NewSession()) func init() { logLevel := Session.Config.LogLevel if os.Getenv("DEBUG") != "" { logLevel = aws.LogLevel(aws.LogDebug) } if os.Getenv("DEBUG_SIGNING") != "" { logLevel = aws.LogLevel(aws.LogDebugWithSigning) } if os.Getenv("DEBUG_BODY") != "" { logLevel = aws.LogLevel(aws.LogDebugWithSigning | aws.LogDebugWithHTTPBody) } Session.Config.LogLevel = logLevel if aws.StringValue(Session.Config.Region) == "" { panic("AWS_REGION must be configured to run integration tests") } } // UniqueID returns a unique UUID-like identifier for use in generating // resources for integration tests. func UniqueID() string { uuid := make([]byte, 16) io.ReadFull(rand.Reader, uuid) return fmt.Sprintf("%x", uuid) } aws-sdk-go-1.4.22/awstesting/integration/smoke/000077500000000000000000000000001300374646400214145ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/acm/000077500000000000000000000000001300374646400221545ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/acm/acm.feature000066400000000000000000000007511300374646400242740ustar00rootroot00000000000000#language en @acm @client Feature: AWS Certificate Manager Scenario: Making a request When I call the "ListCertificates" API Then the request should be successful Scenario: Handling errors When I attempt to call the "GetCertificate" API with: | CertificateArn | arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012 | Then I expect the response error code to be "ResourceNotFoundException" And I expect the response error message not be empty aws-sdk-go-1.4.22/awstesting/integration/smoke/acm/client.go000066400000000000000000000005301300374646400237570ustar00rootroot00000000000000// +build integration //Package acm provides gucumber integration tests support. package acm import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/acm" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@acm", func() { gucumber.World["client"] = acm.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/apigateway/000077500000000000000000000000001300374646400235475ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/apigateway/apigateway.feature000066400000000000000000000007261300374646400272640ustar00rootroot00000000000000# language: en @apigateway @client Feature: Amazon API Gateway Scenario: Making a request When I call the "GetAccountRequest" API Then the request should be successful Scenario: Handing errors When I attempt to call the "GetRestApi" API with: | RestApiId | api123 | Then I expect the response error code to be "NotFoundException" And I expect the response error message to include: """ Invalid REST API identifier specified """ aws-sdk-go-1.4.22/awstesting/integration/smoke/apigateway/client.go000066400000000000000000000005731300374646400253610ustar00rootroot00000000000000// +build integration //Package apigateway provides gucumber integration tests support. package apigateway import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/apigateway" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@apigateway", func() { gucumber.World["client"] = apigateway.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/applicationdiscoveryservice/000077500000000000000000000000001300374646400272305ustar00rootroot00000000000000applicationdiscoveryservice.feature000066400000000000000000000003121300374646400363360ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/applicationdiscoveryservice#language en @applicationdiscoveryservice @client Feature: AWS Application Discovery Service Scenario: Making a request When I call the "DescribeAgents" API Then the request should be successful aws-sdk-go-1.4.22/awstesting/integration/smoke/applicationdiscoveryservice/client.go000066400000000000000000000010471300374646400310370ustar00rootroot00000000000000// +build integration //Package applicationdiscoveryservice provides gucumber integration tests support. package applicationdiscoveryservice import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/applicationdiscoveryservice" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@applicationdiscoveryservice", func() { gucumber.World["client"] = applicationdiscoveryservice.New( smoke.Session, &aws.Config{Region: aws.String("us-west-2")}, ) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/autoscaling/000077500000000000000000000000001300374646400237255ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/autoscaling/autoscaling.feature000066400000000000000000000011261300374646400276130ustar00rootroot00000000000000# language: en @autoscaling @client Feature: Auto Scaling Scenario: Making a request When I call the "DescribeScalingProcessTypes" API Then the value at "Processes" should be a list Scenario: Handing errors When I attempt to call the "CreateLaunchConfiguration" API with: | LaunchConfigurationName | | | ImageId | ami-12345678 | | InstanceType | m1.small | Then I expect the response error code to be "InvalidParameter" And I expect the response error message to include: """ LaunchConfigurationName """ aws-sdk-go-1.4.22/awstesting/integration/smoke/autoscaling/client.go000066400000000000000000000006001300374646400255260ustar00rootroot00000000000000// +build integration //Package autoscaling provides gucumber integration tests support. package autoscaling import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/autoscaling" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@autoscaling", func() { gucumber.World["client"] = autoscaling.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudformation/000077500000000000000000000000001300374646400244415ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudformation/client.go000066400000000000000000000006171300374646400262520ustar00rootroot00000000000000// +build integration //Package cloudformation provides gucumber integration tests support. package cloudformation import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/cloudformation" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@cloudformation", func() { gucumber.World["client"] = cloudformation.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudformation/cloudformation.feature000066400000000000000000000011231300374646400310400ustar00rootroot00000000000000# language: en @cloudformation @client Feature: AWS CloudFormation Scenario: Making a request When I call the "ListStacks" API Then the value at "StackSummaries" should be a list Scenario: Handling errors When I attempt to call the "CreateStack" API with: | StackName | fakestack | | TemplateURL | http://s3.amazonaws.com/foo/bar | Then I expect the response error code to be "ValidationError" And I expect the response error message to include: """ TemplateURL must reference a valid S3 object to which you have access. """ aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudfront/000077500000000000000000000000001300374646400235735ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudfront/client.go000066400000000000000000000005731300374646400254050ustar00rootroot00000000000000// +build integration //Package cloudfront provides gucumber integration tests support. package cloudfront import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/cloudfront" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@cloudfront", func() { gucumber.World["client"] = cloudfront.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudfront/cloudfront.feature000066400000000000000000000010211300374646400273210ustar00rootroot00000000000000# language: en @cloudfront @client Feature: Amazon CloudFront Scenario: Making a basic request When I call the "ListDistributions" API with: | MaxItems | 1 | Then the value at "DistributionList.Items" should be a list Scenario: Error handling When I attempt to call the "GetDistribution" API with: | Id | fake-id | Then I expect the response error code to be "NoSuchDistribution" And I expect the response error message to include: """ The specified distribution does not exist. """ aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudhsm/000077500000000000000000000000001300374646400232325ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudhsm/client.go000066400000000000000000000005611300374646400250410ustar00rootroot00000000000000// +build integration //Package cloudhsm provides gucumber integration tests support. package cloudhsm import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/cloudhsm" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@cloudhsm", func() { gucumber.World["client"] = cloudhsm.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudhsm/cloudhsm.feature000066400000000000000000000007551300374646400264340ustar00rootroot00000000000000# language: en @cloudhsm @client Feature: Amazon CloudHSM Scenario: Making a request When I call the "ListHapgs" API Then the value at "HapgList" should be a list Scenario: Handling errors When I attempt to call the "DescribeHapg" API with: | HapgArn | bogus-arn | Then I expect the response error code to be "ValidationException" And I expect the response error message to include: """ Value 'bogus-arn' at 'hapgArn' failed to satisfy constraint """ aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudsearch/000077500000000000000000000000001300374646400237105ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudsearch/client.go000066400000000000000000000006001300374646400255110ustar00rootroot00000000000000// +build integration //Package cloudsearch provides gucumber integration tests support. package cloudsearch import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/cloudsearch" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@cloudsearch", func() { gucumber.World["client"] = cloudsearch.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudsearch/cloudsearch.feature000066400000000000000000000007521300374646400275650ustar00rootroot00000000000000# language: en @cloudsearch @client Feature: Amazon CloudSearch Scenario: Making a request When I call the "DescribeDomains" API Then the response should contain a "DomainStatusList" Scenario: Handling errors When I attempt to call the "DescribeIndexFields" API with: | DomainName | fakedomain | Then I expect the response error code to be "ResourceNotFound" And I expect the response error message to include: """ Domain not found: fakedomain """ aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudtrail/000077500000000000000000000000001300374646400235565ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudtrail/client.go000066400000000000000000000005731300374646400253700ustar00rootroot00000000000000// +build integration //Package cloudtrail provides gucumber integration tests support. package cloudtrail import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/cloudtrail" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@cloudtrail", func() { gucumber.World["client"] = cloudtrail.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudtrail/cloudtrail.feature000066400000000000000000000005421300374646400272760ustar00rootroot00000000000000# language: en @cloudtrail @client Feature: AWS CloudTrail Scenario: Making a request When I call the "DescribeTrails" API Then the request should be successful Scenario: Handling errors When I attempt to call the "DeleteTrail" API with: | Name | faketrail | Then I expect the response error code to be "TrailNotFoundException" aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudwatch/000077500000000000000000000000001300374646400235515ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudwatch/client.go000066400000000000000000000005731300374646400253630ustar00rootroot00000000000000// +build integration //Package cloudwatch provides gucumber integration tests support. package cloudwatch import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/cloudwatch" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@cloudwatch", func() { gucumber.World["client"] = cloudwatch.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudwatch/cloudwatch.feature000066400000000000000000000010601300374646400272600ustar00rootroot00000000000000# language: en @cloudwatch @monitoring @client Feature: Amazon CloudWatch Scenario: Making a request When I call the "ListMetrics" API with: | Namespace | AWS/EC2 | Then the value at "Metrics" should be a list Scenario: Handling errors When I attempt to call the "SetAlarmState" API with: | AlarmName | abc | | StateValue | mno | | StateReason | xyz | Then I expect the response error code to be "ValidationError" And I expect the response error message to include: """ failed to satisfy constraint """ aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudwatchlogs/000077500000000000000000000000001300374646400244365ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudwatchlogs/client.go000066400000000000000000000006171300374646400262470ustar00rootroot00000000000000// +build integration //Package cloudwatchlogs provides gucumber integration tests support. package cloudwatchlogs import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/cloudwatchlogs" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@cloudwatchlogs", func() { gucumber.World["client"] = cloudwatchlogs.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/cloudwatchlogs/cloudwatchlogs.feature000066400000000000000000000010351300374646400310340ustar00rootroot00000000000000# language: en @cloudwatchlogs @logs Feature: Amazon CloudWatch Logs Scenario: Making a request When I call the "DescribeLogGroups" API Then the value at "logGroups" should be a list Scenario: Handling errors When I attempt to call the "GetLogEvents" API with: | logGroupName | fakegroup | | logStreamName | fakestream | Then I expect the response error code to be "ResourceNotFoundException" And I expect the response error message to include: """ The specified log group does not exist. """ aws-sdk-go-1.4.22/awstesting/integration/smoke/codecommit/000077500000000000000000000000001300374646400235375ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/codecommit/client.go000066400000000000000000000005731300374646400253510ustar00rootroot00000000000000// +build integration //Package codecommit provides gucumber integration tests support. package codecommit import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/codecommit" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@codecommit", func() { gucumber.World["client"] = codecommit.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/codecommit/codecommit.feature000066400000000000000000000007541300374646400272450ustar00rootroot00000000000000# language: en @codecommit @client Feature: Amazon CodeCommit Scenario: Making a request When I call the "ListRepositories" API Then the value at "repositories" should be a list Scenario: Handling errors When I attempt to call the "ListBranches" API with: | repositoryName | fake-repo | Then I expect the response error code to be "RepositoryDoesNotExistException" And I expect the response error message to include: """ fake-repo does not exist """ aws-sdk-go-1.4.22/awstesting/integration/smoke/codedeploy/000077500000000000000000000000001300374646400235435ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/codedeploy/client.go000066400000000000000000000005731300374646400253550ustar00rootroot00000000000000// +build integration //Package codedeploy provides gucumber integration tests support. package codedeploy import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/codedeploy" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@codedeploy", func() { gucumber.World["client"] = codedeploy.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/codedeploy/codedeploy.feature000066400000000000000000000010041300374646400272420ustar00rootroot00000000000000# language: en @codedeploy @client Feature: Amazon CodeDeploy Scenario: Making a request When I call the "ListApplications" API Then the value at "applications" should be a list Scenario: Handling errors When I attempt to call the "GetDeployment" API with: | deploymentId | d-USUAELQEX | Then I expect the response error code to be "DeploymentDoesNotExistException" And I expect the response error message to include: """ The deployment d-USUAELQEX could not be found """ aws-sdk-go-1.4.22/awstesting/integration/smoke/codepipeline/000077500000000000000000000000001300374646400240545ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/codepipeline/client.go000066400000000000000000000006051300374646400256620ustar00rootroot00000000000000// +build integration //Package codepipeline provides gucumber integration tests support. package codepipeline import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/codepipeline" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@codepipeline", func() { gucumber.World["client"] = codepipeline.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/codepipeline/codepipeline.feature000066400000000000000000000007671300374646400301030ustar00rootroot00000000000000# language: en @codepipeline @client Feature: Amazon CodePipeline Scenario: Making a request When I call the "ListPipelines" API Then the value at "pipelines" should be a list Scenario: Handling errors When I attempt to call the "GetPipeline" API with: | name | fake-pipeline | Then I expect the response error code to be "PipelineNotFoundException" And I expect the response error message to include: """ does not have a pipeline with name 'fake-pipeline' """ aws-sdk-go-1.4.22/awstesting/integration/smoke/cognitoidentity/000077500000000000000000000000001300374646400246305ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/cognitoidentity/client.go000066400000000000000000000006241300374646400264370ustar00rootroot00000000000000// +build integration //Package cognitoidentity provides gucumber integration tests support. package cognitoidentity import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/cognitoidentity" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@cognitoidentity", func() { gucumber.World["client"] = cognitoidentity.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/cognitoidentity/cognitoidentity.feature000066400000000000000000000012001300374646400314120ustar00rootroot00000000000000# language: en @cognitoidentity @client Feature: Amazon Cognito Idenity Scenario: Making a request When I call the "ListIdentityPools" API with JSON: """ {"MaxResults": 10} """ Then the value at "IdentityPools" should be a list Scenario: Handling errors When I attempt to call the "DescribeIdentityPool" API with: | IdentityPoolId | us-east-1:aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee | Then I expect the response error code to be "ResourceNotFoundException" And I expect the response error message to include: """ IdentityPool 'us-east-1:aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee' not found """ aws-sdk-go-1.4.22/awstesting/integration/smoke/cognitosync/000077500000000000000000000000001300374646400237535ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/cognitosync/client.go000066400000000000000000000006001300374646400255540ustar00rootroot00000000000000// +build integration //Package cognitosync provides gucumber integration tests support. package cognitosync import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/cognitosync" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@cognitosync", func() { gucumber.World["client"] = cognitosync.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/cognitosync/cognitosync.feature000066400000000000000000000011251300374646400276660ustar00rootroot00000000000000# language: en @cognitosync @client Feature: Amazon Cognito Sync Scenario: Making a request When I call the "ListIdentityPoolUsage" API Then the value at "IdentityPoolUsages" should be a list Scenario: Handling errors When I attempt to call the "DescribeIdentityPoolUsage" API with: | IdentityPoolId | us-east-1:aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee | Then I expect the response error code to be "ResourceNotFoundException" And I expect the response error message to include: """ IdentityPool 'us-east-1:aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee' not found """ aws-sdk-go-1.4.22/awstesting/integration/smoke/configservice/000077500000000000000000000000001300374646400242425ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/configservice/client.go000066400000000000000000000006121300374646400260460ustar00rootroot00000000000000// +build integration //Package configservice provides gucumber integration tests support. package configservice import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/configservice" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@configservice", func() { gucumber.World["client"] = configservice.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/configservice/configservice.feature000066400000000000000000000010531300374646400304440ustar00rootroot00000000000000# language: en @configservice @config @client Feature: AWS Config Scenario: Making a request When I call the "DescribeConfigurationRecorders" API Then the value at "ConfigurationRecorders" should be a list Scenario: Handling errors When I attempt to call the "GetResourceConfigHistory" API with: | resourceType | fake-type | | resourceId | fake-id | Then I expect the response error code to be "ValidationException" And I expect the response error message to include: """ failed to satisfy constraint """ aws-sdk-go-1.4.22/awstesting/integration/smoke/datapipeline/000077500000000000000000000000001300374646400240535ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/datapipeline/client.go000066400000000000000000000006051300374646400256610ustar00rootroot00000000000000// +build integration //Package datapipeline provides gucumber integration tests support. package datapipeline import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/datapipeline" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@datapipeline", func() { gucumber.World["client"] = datapipeline.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/datapipeline/datapipeline.feature000066400000000000000000000007401300374646400300700ustar00rootroot00000000000000# language: en @datapipeline @client Feature: AWS Data Pipeline Scenario: Making a request When I call the "ListPipelines" API Then the response should contain a "pipelineIdList" Scenario: Handling errors When I attempt to call the "GetPipelineDefinition" API with: | pipelineId | fake-id | Then I expect the response error code to be "PipelineNotFoundException" And I expect the response error message to include: """ does not exist """ aws-sdk-go-1.4.22/awstesting/integration/smoke/devicefarm/000077500000000000000000000000001300374646400235215ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/devicefarm/client.go000066400000000000000000000007501300374646400253300ustar00rootroot00000000000000// +build integration //Package devicefarm provides gucumber integration tests support. package devicefarm import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/devicefarm" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@devicefarm", func() { // FIXME remove custom region gucumber.World["client"] = devicefarm.New(smoke.Session, aws.NewConfig().WithRegion("us-west-2")) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/devicefarm/devicefarm.feature000066400000000000000000000010031300374646400271750ustar00rootroot00000000000000# language: en @devicefarm @client Feature: AWS Device Farm Scenario: Making a request When I call the "ListDevices" API Then the value at "devices" should be a list Scenario: Handling errors When I attempt to call the "GetDevice" API with: | arn | arn:aws:devicefarm:us-west-2::device:000000000000000000000000fake-arn | Then I expect the response error code to be "NotFoundException" And I expect the response error message to include: """ No device was found for arn """ aws-sdk-go-1.4.22/awstesting/integration/smoke/directconnect/000077500000000000000000000000001300374646400242405ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/directconnect/client.go000066400000000000000000000006121300374646400260440ustar00rootroot00000000000000// +build integration //Package directconnect provides gucumber integration tests support. package directconnect import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/directconnect" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@directconnect", func() { gucumber.World["client"] = directconnect.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/directconnect/directconnect.feature000066400000000000000000000010251300374646400304370ustar00rootroot00000000000000# language: en @directconnect @client Feature: AWS Direct Connect Scenario: Making a request When I call the "DescribeConnections" API Then the value at "connections" should be a list Scenario: Handling errors When I attempt to call the "DescribeConnections" API with: | connectionId | fake-connection | Then I expect the response error code to be "DirectConnectClientException" And I expect the response error message to include: """ Connection ID fake-connection has an invalid format """ aws-sdk-go-1.4.22/awstesting/integration/smoke/directoryservice/000077500000000000000000000000001300374646400250015ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/directoryservice/client.go000066400000000000000000000006311300374646400266060ustar00rootroot00000000000000// +build integration //Package directoryservice provides gucumber integration tests support. package directoryservice import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/directoryservice" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@directoryservice", func() { gucumber.World["client"] = directoryservice.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/directoryservice/directoryservice.feature000066400000000000000000000007371300374646400317520ustar00rootroot00000000000000# language: en @directoryservice @ds @client Feature: AWS Directory Service I want to use AWS Directory Service Scenario: Making a request When I call the "DescribeDirectories" API Then the value at "DirectoryDescriptions" should be a list Scenario: Handling errors When I attempt to call the "CreateDirectory" API with: | Name | | | Password | | | Size | | Then I expect the response error code to be "ValidationException" aws-sdk-go-1.4.22/awstesting/integration/smoke/dynamodb/000077500000000000000000000000001300374646400232115ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/dynamodb/client.go000066400000000000000000000005611300374646400250200ustar00rootroot00000000000000// +build integration //Package dynamodb provides gucumber integration tests support. package dynamodb import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/dynamodb" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@dynamodb", func() { gucumber.World["client"] = dynamodb.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/dynamodb/dynamodb.feature000066400000000000000000000010441300374646400263620ustar00rootroot00000000000000# language: en @dynamodb @client Feature: Amazon DynamoDB Scenario: Making a request When I call the "ListTables" API with JSON: """ {"Limit": 1} """ Then the value at "TableNames" should be a list Scenario: Handling errors When I attempt to call the "DescribeTable" API with: | TableName | fake-table | Then I expect the response error code to be "ResourceNotFoundException" And I expect the response error message to include: """ Requested resource not found: Table: fake-table not found """ aws-sdk-go-1.4.22/awstesting/integration/smoke/dynamodbstreams/000077500000000000000000000000001300374646400246105ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/dynamodbstreams/client.go000066400000000000000000000006241300374646400264170ustar00rootroot00000000000000// +build integration //Package dynamodbstreams provides gucumber integration tests support. package dynamodbstreams import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/dynamodbstreams" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@dynamodbstreams", func() { gucumber.World["client"] = dynamodbstreams.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/dynamodbstreams/dynamodbstreams.feature000066400000000000000000000007161300374646400313650ustar00rootroot00000000000000# language: en @dynamodbstreams @client Feature: Amazon DynamoDB Streams Scenario: Making a request When I call the "ListStreams" API Then the value at "Streams" should be a list Scenario: Handling errors When I attempt to call the "DescribeStream" API with: | StreamArn | fake-stream | Then I expect the response error code to be "InvalidParameter" And I expect the response error message to include: """ StreamArn """ aws-sdk-go-1.4.22/awstesting/integration/smoke/ec2/000077500000000000000000000000001300374646400220655ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/ec2/client.go000066400000000000000000000005301300374646400236700ustar00rootroot00000000000000// +build integration //Package ec2 provides gucumber integration tests support. package ec2 import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/ec2" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@ec2", func() { gucumber.World["client"] = ec2.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/ec2/ec2.feature000066400000000000000000000010231300374646400241070ustar00rootroot00000000000000# language: en @ec2 @client Feature: Amazon Elastic Compute Cloud Scenario: Making a request When I call the "DescribeRegions" API Then the value at "Regions" should be a list Scenario: Handling errors When I attempt to call the "DescribeInstances" API with JSON: """ {"InstanceIds": ["i-12345678"]} """ Then I expect the response error code to be "InvalidInstanceID.NotFound" And I expect the response error message to include: """ The instance ID 'i-12345678' does not exist """ aws-sdk-go-1.4.22/awstesting/integration/smoke/ecs/000077500000000000000000000000001300374646400221665ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/ecs/client.go000066400000000000000000000007051300374646400237750ustar00rootroot00000000000000// +build integration //Package ecs provides gucumber integration tests support. package ecs import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/ecs" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@ecs", func() { // FIXME remove custom region gucumber.World["client"] = ecs.New(smoke.Session, aws.NewConfig().WithRegion("us-west-2")) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/ecs/ecs.feature000066400000000000000000000006121300374646400243140ustar00rootroot00000000000000# language: en @ecs @client Feature: Amazon ECS I want to use Amazon ECS Scenario: Making a request When I call the "ListClusters" API Then the value at "clusterArns" should be a list Scenario: Handling errors When I attempt to call the "StopTask" API with: | task | xxxxxxxxxxx-xxxxxxxxxxxx-xxxxxxxxxxx | Then the error code should be "ClusterNotFoundException" aws-sdk-go-1.4.22/awstesting/integration/smoke/efs/000077500000000000000000000000001300374646400221715ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/efs/client.go000066400000000000000000000007051300374646400240000ustar00rootroot00000000000000// +build integration //Package efs provides gucumber integration tests support. package efs import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/efs" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@efs", func() { // FIXME remove custom region gucumber.World["client"] = efs.New(smoke.Session, aws.NewConfig().WithRegion("us-west-2")) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/efs/efs.feature000066400000000000000000000006471300374646400243320ustar00rootroot00000000000000# language: en @efs @elasticfilesystem @client Feature: Amazon Elastic File System I want to use Amazon Elastic File System Scenario: Making a request When I call the "DescribeFileSystems" API Then the value at "FileSystems" should be a list Scenario: Handling errors When I attempt to call the "DeleteFileSystem" API with: | FileSystemId | fake-id | Then the error code should be "BadRequest" aws-sdk-go-1.4.22/awstesting/integration/smoke/elasticache/000077500000000000000000000000001300374646400236615ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/elasticache/client.go000066400000000000000000000006001300374646400254620ustar00rootroot00000000000000// +build integration //Package elasticache provides gucumber integration tests support. package elasticache import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/elasticache" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@elasticache", func() { gucumber.World["client"] = elasticache.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/elasticache/elasticache.feature000066400000000000000000000010101300374646400274730ustar00rootroot00000000000000# language: en @elasticache @client Feature: ElastiCache Scenario: Making a request When I call the "DescribeEvents" API Then the value at "Events" should be a list Scenario: Handling errors When I attempt to call the "DescribeCacheClusters" API with: | CacheClusterId | fake_cluster | Then I expect the response error code to be "InvalidParameterValue" And I expect the response error message to include: """ The parameter CacheClusterIdentifier is not a valid identifier. """ aws-sdk-go-1.4.22/awstesting/integration/smoke/elasticbeanstalk/000077500000000000000000000000001300374646400247255ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/elasticbeanstalk/client.go000066400000000000000000000006311300374646400265320ustar00rootroot00000000000000// +build integration //Package elasticbeanstalk provides gucumber integration tests support. package elasticbeanstalk import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/elasticbeanstalk" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@elasticbeanstalk", func() { gucumber.World["client"] = elasticbeanstalk.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/elasticbeanstalk/elasticbeanstalk.feature000066400000000000000000000010631300374646400316130ustar00rootroot00000000000000# language: en @elasticbeanstalk @client Feature: AWS Elastic Beanstalk Scenario: Making a request When I call the "ListAvailableSolutionStacks" API Then the value at "SolutionStacks" should be a list Scenario: Handling errors When I attempt to call the "DescribeEnvironmentResources" API with: | EnvironmentId | fake_environment | Then I expect the response error code to be "InvalidParameterValue" And I expect the response error message to include: """ No Environment found for EnvironmentId = 'fake_environment'. """ aws-sdk-go-1.4.22/awstesting/integration/smoke/elasticloadbalancing/000077500000000000000000000000001300374646400255375ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/elasticloadbalancing/client.go000066400000000000000000000006131300374646400273440ustar00rootroot00000000000000// +build integration //Package elasticloadbalancing provides gucumber integration tests support. package elasticloadbalancing import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/elb" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@elasticloadbalancing", func() { gucumber.World["client"] = elb.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/elasticloadbalancing/elasticloadbalancing.feature000066400000000000000000000011511300374646400332350ustar00rootroot00000000000000# language: en @elasticloadbalancing @client Feature: Elastic Load Balancing Scenario: Making a request When I call the "DescribeLoadBalancers" API Then the value at "LoadBalancerDescriptions" should be a list Scenario: Handling errors When I attempt to call the "DescribeLoadBalancers" API with JSON: """ {"LoadBalancerNames": ["fake_load_balancer"]} """ Then I expect the response error code to be "ValidationError" And I expect the response error message to include: """ LoadBalancer name cannot contain characters that are not letters, or digits or the dash. """ aws-sdk-go-1.4.22/awstesting/integration/smoke/elastictranscoder/000077500000000000000000000000001300374646400251255ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/elastictranscoder/client.go000066400000000000000000000006361300374646400267370ustar00rootroot00000000000000// +build integration //Package elastictranscoder provides gucumber integration tests support. package elastictranscoder import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/elastictranscoder" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@elastictranscoder", func() { gucumber.World["client"] = elastictranscoder.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/elastictranscoder/elastictranscoder.feature000066400000000000000000000007601300374646400322160ustar00rootroot00000000000000# language: en @elastictranscoder @client Feature: Amazon Elastic Transcoder Scenario: Making a request When I call the "ListPresets" API Then the value at "Presets" should be a list Scenario: Handling errors When I attempt to call the "ReadJob" API with: | Id | fake_job | Then I expect the response error code to be "ValidationException" And I expect the response error message to include: """ Value 'fake_job' at 'id' failed to satisfy constraint """ aws-sdk-go-1.4.22/awstesting/integration/smoke/emr/000077500000000000000000000000001300374646400221775ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/emr/client.go000066400000000000000000000005301300374646400240020ustar00rootroot00000000000000// +build integration //Package emr provides gucumber integration tests support. package emr import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/emr" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@emr", func() { gucumber.World["client"] = emr.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/emr/emr.feature000066400000000000000000000007601300374646400243420ustar00rootroot00000000000000# language: en @emr @client @elasticmapreduce Feature: Amazon EMR Scenario: Making a request When I call the "ListClusters" API Then the value at "Clusters" should be a list Scenario: Handling errors When I attempt to call the "DescribeCluster" API with: | ClusterId | fake_cluster | Then I expect the response error code to be "InvalidRequestException" And I expect the response error message to include: """ Cluster id 'fake_cluster' is not valid. """ aws-sdk-go-1.4.22/awstesting/integration/smoke/es/000077500000000000000000000000001300374646400220235ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/es/client.go000066400000000000000000000005671300374646400236400ustar00rootroot00000000000000// +build integration //Package es provides gucumber integration tests support. package es import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/elasticsearchservice" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@es", func() { gucumber.World["client"] = elasticsearchservice.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/es/es.feature000066400000000000000000000010061300374646400240040ustar00rootroot00000000000000# language: en @es @elasticsearchservice Feature: Amazon ElasticsearchService Scenario: Making a request When I call the "ListDomainNames" API Then the value at "DomainNames" should be a list Scenario: Handling errors When I attempt to call the "DescribeElasticsearchDomain" API with: | DomainName | not-a-domain | Then the error code should be "ResourceNotFoundException" And I expect the response error message to include: """ Domain not found: not-a-domain """aws-sdk-go-1.4.22/awstesting/integration/smoke/glacier/000077500000000000000000000000001300374646400230225ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/glacier/client.go000066400000000000000000000005541300374646400246330ustar00rootroot00000000000000// +build integration //Package glacier provides gucumber integration tests support. package glacier import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/glacier" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@glacier", func() { gucumber.World["client"] = glacier.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/glacier/glacier.feature000066400000000000000000000007431300374646400260110ustar00rootroot00000000000000# language: en @glacier @client Feature: Amazon Glacier Scenario: Making a request When I call the "ListVaults" API Then the response should contain a "VaultList" Scenario: Handling errors When I attempt to call the "ListVaults" API with: | accountId | abcmnoxyz | Then I expect the response error code to be "UnrecognizedClientException" And I expect the response error message to include: """ No account found for the given parameters """ aws-sdk-go-1.4.22/awstesting/integration/smoke/iam/000077500000000000000000000000001300374646400221625ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/iam/client.go000066400000000000000000000005301300374646400237650ustar00rootroot00000000000000// +build integration //Package iam provides gucumber integration tests support. package iam import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/iam" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@iam", func() { gucumber.World["client"] = iam.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/iam/iam.feature000066400000000000000000000007371300374646400243140ustar00rootroot00000000000000# language: en @iam @client Feature: AWS Identity and Access Management Scenario: Making a request When I call the "ListUsers" API Then the value at "Users" should be a list Scenario: Handling errors When I attempt to call the "GetUser" API with: | UserName | fake_user | Then I expect the response error code to be "NoSuchEntity" And I expect the response error message to include: """ The user with name fake_user cannot be found. """ aws-sdk-go-1.4.22/awstesting/integration/smoke/iotdataplane/000077500000000000000000000000001300374646400240615ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/iotdataplane/client.go000066400000000000000000000012601300374646400256650ustar00rootroot00000000000000// +build integration //Package iotdataplane provides gucumber integration tests support. package iotdataplane import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/iot" "github.com/aws/aws-sdk-go/service/iotdataplane" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@iotdataplane", func() { svc := iot.New(smoke.Session) result, err := svc.DescribeEndpoint(&iot.DescribeEndpointInput{}) if err != nil { gucumber.World["error"] = err return } gucumber.World["client"] = iotdataplane.New(smoke.Session, aws.NewConfig(). WithEndpoint(*result.EndpointAddress)) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/iotdataplane/iotdataplane.feature000066400000000000000000000004041300374646400301010ustar00rootroot00000000000000# language: en @iotdataplane @client Feature: AWS IoT Data Plane Scenario: Handling errors When I attempt to call the "GetThingShadow" API with: | thingName | fake-thing | Then I expect the response error code to be "ResourceNotFoundException" aws-sdk-go-1.4.22/awstesting/integration/smoke/kinesis/000077500000000000000000000000001300374646400230615ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/kinesis/client.go000066400000000000000000000005541300374646400246720ustar00rootroot00000000000000// +build integration //Package kinesis provides gucumber integration tests support. package kinesis import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/kinesis" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@kinesis", func() { gucumber.World["client"] = kinesis.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/kinesis/kinesis.feature000066400000000000000000000007531300374646400261100ustar00rootroot00000000000000# language: en @kinesis @client Feature: AWS Kinesis Scenario: Making a request When I call the "ListStreams" API Then the value at "StreamNames" should be a list Scenario: Handling errors When I attempt to call the "DescribeStream" API with: | StreamName | bogus-stream-name | Then I expect the response error code to be "ResourceNotFoundException" And I expect the response error message to include: """ Stream bogus-stream-name under account """ aws-sdk-go-1.4.22/awstesting/integration/smoke/kms/000077500000000000000000000000001300374646400222065ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/kms/client.go000066400000000000000000000005301300374646400240110ustar00rootroot00000000000000// +build integration //Package kms provides gucumber integration tests support. package kms import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/kms" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@kms", func() { gucumber.World["client"] = kms.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/kms/kms.feature000066400000000000000000000006221300374646400243550ustar00rootroot00000000000000# language: en @kms @client Feature: Amazon Key Management Service Scenario: Making a request When I call the "ListAliases" API Then the value at "Aliases" should be a list Scenario: Handling errors When I attempt to call the "GetKeyPolicy" API with: | KeyId | fake-key | | PolicyName | fakepolicy | Then I expect the response error code to be "NotFoundException" aws-sdk-go-1.4.22/awstesting/integration/smoke/lambda/000077500000000000000000000000001300374646400226345ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/lambda/client.go000066400000000000000000000005471300374646400244470ustar00rootroot00000000000000// +build integration //Package lambda provides gucumber integration tests support. package lambda import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/lambda" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@lambda", func() { gucumber.World["client"] = lambda.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/lambda/lambda.feature000066400000000000000000000007171300374646400254360ustar00rootroot00000000000000# language: en @lambda @client Feature: Amazon Lambda Scenario: Making a request When I call the "ListFunctions" API Then the value at "Functions" should be a list Scenario: Handling errors When I attempt to call the "Invoke" API with: | FunctionName | bogus-function | Then I expect the response error code to be "ResourceNotFoundException" And I expect the response error message to include: """ Function not found """ aws-sdk-go-1.4.22/awstesting/integration/smoke/machinelearning/000077500000000000000000000000001300374646400245405ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/machinelearning/client.go000066400000000000000000000006241300374646400263470ustar00rootroot00000000000000// +build integration //Package machinelearning provides gucumber integration tests support. package machinelearning import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/machinelearning" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@machinelearning", func() { gucumber.World["client"] = machinelearning.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/machinelearning/machinelearning.feature000066400000000000000000000010201300374646400312320ustar00rootroot00000000000000# language: en @machinelearning @client Feature: Amazon Machine Learning I want to use Amazon Machine Learning Scenario: Making a request When I call the "DescribeMLModels" API Then the value at "Results" should be a list Scenario: Error handling When I attempt to call the "GetBatchPrediction" API with: | BatchPredictionId | fake-id | Then the error code should be "ResourceNotFoundException" And the error message should contain: """ No BatchPrediction with id fake-id exists """ aws-sdk-go-1.4.22/awstesting/integration/smoke/opsworks/000077500000000000000000000000001300374646400233035ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/opsworks/client.go000066400000000000000000000005611300374646400251120ustar00rootroot00000000000000// +build integration //Package opsworks provides gucumber integration tests support. package opsworks import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/opsworks" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@opsworks", func() { gucumber.World["client"] = opsworks.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/opsworks/opsworks.feature000066400000000000000000000007421300374646400265520ustar00rootroot00000000000000# language: en @opsworks @client Feature: AWS OpsWorks Scenario: Making a request When I call the "DescribeStacks" API Then the value at "Stacks" should be a list Scenario: Handling errors When I attempt to call the "DescribeLayers" API with: | StackId | fake_stack | Then I expect the response error code to be "ResourceNotFoundException" And I expect the response error message to include: """ Unable to find stack with ID fake_stack """ aws-sdk-go-1.4.22/awstesting/integration/smoke/rds/000077500000000000000000000000001300374646400222045ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/rds/client.go000066400000000000000000000005301300374646400240070ustar00rootroot00000000000000// +build integration //Package rds provides gucumber integration tests support. package rds import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/rds" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@rds", func() { gucumber.World["client"] = rds.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/rds/rds.feature000066400000000000000000000007551300374646400243600ustar00rootroot00000000000000# language: en @rds @client Feature: Amazon RDS Scenario: Making a request When I call the "DescribeDBEngineVersions" API Then the value at "DBEngineVersions" should be a list Scenario: Handling errors When I attempt to call the "DescribeDBInstances" API with: | DBInstanceIdentifier | fake-id | Then I expect the response error code to be "DBInstanceNotFound" And I expect the response error message to include: """ DBInstance fake-id not found. """ aws-sdk-go-1.4.22/awstesting/integration/smoke/redshift/000077500000000000000000000000001300374646400232245ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/redshift/client.go000066400000000000000000000005611300374646400250330ustar00rootroot00000000000000// +build integration //Package redshift provides gucumber integration tests support. package redshift import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/redshift" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@redshift", func() { gucumber.World["client"] = redshift.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/redshift/redshift.feature000066400000000000000000000007631300374646400264170ustar00rootroot00000000000000# language: en @redshift @client Feature: Amazon Redshift Scenario: Making a request When I call the "DescribeClusterVersions" API Then the value at "ClusterVersions" should be a list Scenario: Handling errors When I attempt to call the "DescribeClusters" API with: | ClusterIdentifier | fake-cluster | Then I expect the response error code to be "ClusterNotFound" And I expect the response error message to include: """ Cluster fake-cluster not found. """ aws-sdk-go-1.4.22/awstesting/integration/smoke/route53/000077500000000000000000000000001300374646400227225ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/route53/client.go000066400000000000000000000005541300374646400245330ustar00rootroot00000000000000// +build integration //Package route53 provides gucumber integration tests support. package route53 import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/route53" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@route53", func() { gucumber.World["client"] = route53.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/route53/route53.feature000066400000000000000000000007321300374646400256070ustar00rootroot00000000000000# language: en @route53 @client Feature: Amazon Route 53 Scenario: Making a request When I call the "ListHostedZones" API Then the value at "HostedZones" should be a list Scenario: Handling errors When I attempt to call the "GetHostedZone" API with: | Id | fake-zone | Then I expect the response error code to be "NoSuchHostedZone" And I expect the response error message to include: """ No hosted zone found with ID: fake-zone """ aws-sdk-go-1.4.22/awstesting/integration/smoke/route53domains/000077500000000000000000000000001300374646400242755ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/route53domains/client.go000066400000000000000000000006171300374646400261060ustar00rootroot00000000000000// +build integration //Package route53domains provides gucumber integration tests support. package route53domains import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/route53domains" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@route53domains", func() { gucumber.World["client"] = route53domains.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/route53domains/route53domains.feature000066400000000000000000000007601300374646400305360ustar00rootroot00000000000000# language: en @route53domains @client Feature: Amazon Route53 Domains Scenario: Making a request When I call the "ListDomains" API Then the value at "Domains" should be a list Scenario: Handling errors When I attempt to call the "GetDomainDetail" API with: | DomainName | fake-domain-name | Then I expect the response error code to be "InvalidInput" And I expect the response error message to include: """ domain name must contain more than 1 label """ aws-sdk-go-1.4.22/awstesting/integration/smoke/ses/000077500000000000000000000000001300374646400222065ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/ses/client.go000066400000000000000000000005301300374646400240110ustar00rootroot00000000000000// +build integration //Package ses provides gucumber integration tests support. package ses import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/ses" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@ses", func() { gucumber.World["client"] = ses.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/ses/ses.feature000066400000000000000000000007701300374646400243610ustar00rootroot00000000000000# language: en @ses @email @client Feature: Amazon Simple Email Service Scenario: Making a request When I call the "ListIdentities" API Then the value at "Identities" should be a list Scenario: Handling errors When I attempt to call the "VerifyEmailIdentity" API with: | EmailAddress | fake_email | Then I expect the response error code to be "InvalidParameterValue" And I expect the response error message to include: """ Invalid email address. """ aws-sdk-go-1.4.22/awstesting/integration/smoke/shared.go000066400000000000000000000147341300374646400232220ustar00rootroot00000000000000// +build integration // Package smoke contains shared step definitions that are used across integration tests package smoke import ( "encoding/json" "fmt" "os" "reflect" "regexp" "strconv" "strings" "github.com/gucumber/gucumber" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/session" ) // Session is a shared session for all integration smoke tests to use. var Session = session.Must(session.NewSession()) func init() { logLevel := Session.Config.LogLevel if os.Getenv("DEBUG") != "" { logLevel = aws.LogLevel(aws.LogDebug) } if os.Getenv("DEBUG_SIGNING") != "" { logLevel = aws.LogLevel(aws.LogDebugWithSigning) } if os.Getenv("DEBUG_BODY") != "" { logLevel = aws.LogLevel(aws.LogDebugWithHTTPBody) } Session.Config.LogLevel = logLevel gucumber.When(`^I call the "(.+?)" API$`, func(op string) { call(op, nil, false) }) gucumber.When(`^I call the "(.+?)" API with:$`, func(op string, args [][]string) { call(op, args, false) }) gucumber.Then(`^the value at "(.+?)" should be a list$`, func(member string) { vals, _ := awsutil.ValuesAtPath(gucumber.World["response"], member) assert.NotNil(gucumber.T, vals) }) gucumber.Then(`^the response should contain a "(.+?)"$`, func(member string) { vals, _ := awsutil.ValuesAtPath(gucumber.World["response"], member) assert.NotEmpty(gucumber.T, vals) }) gucumber.When(`^I attempt to call the "(.+?)" API with:$`, func(op string, args [][]string) { call(op, args, true) }) gucumber.Then(`^I expect the response error code to be "(.+?)"$`, func(code string) { err, ok := gucumber.World["error"].(awserr.Error) assert.True(gucumber.T, ok, "no error returned") if ok { assert.Equal(gucumber.T, code, err.Code(), "Error: %v", err) } }) gucumber.And(`^I expect the response error message to include:$`, func(data string) { err, ok := gucumber.World["error"].(awserr.Error) assert.True(gucumber.T, ok, "no error returned") if ok { assert.Contains(gucumber.T, err.Error(), data) } }) gucumber.And(`^I expect the response error message to include one of:$`, func(table [][]string) { err, ok := gucumber.World["error"].(awserr.Error) assert.True(gucumber.T, ok, "no error returned") if ok { found := false for _, row := range table { if strings.Contains(err.Error(), row[0]) { found = true break } } assert.True(gucumber.T, found, fmt.Sprintf("no error messages matched: \"%s\"", err.Error())) } }) gucumber.And(`^I expect the response error message not be empty$`, func() { err, ok := gucumber.World["error"].(awserr.Error) assert.True(gucumber.T, ok, "no error returned") assert.NotEmpty(gucumber.T, err.Message()) }) gucumber.When(`^I call the "(.+?)" API with JSON:$`, func(s1 string, data string) { callWithJSON(s1, data, false) }) gucumber.When(`^I attempt to call the "(.+?)" API with JSON:$`, func(s1 string, data string) { callWithJSON(s1, data, true) }) gucumber.Then(`^the error code should be "(.+?)"$`, func(s1 string) { err, ok := gucumber.World["error"].(awserr.Error) assert.True(gucumber.T, ok, "no error returned") assert.Equal(gucumber.T, s1, err.Code()) }) gucumber.And(`^the error message should contain:$`, func(data string) { err, ok := gucumber.World["error"].(awserr.Error) assert.True(gucumber.T, ok, "no error returned") assert.Contains(gucumber.T, err.Error(), data) }) gucumber.Then(`^the request should fail$`, func() { err, ok := gucumber.World["error"].(awserr.Error) assert.True(gucumber.T, ok, "no error returned") assert.Error(gucumber.T, err) }) gucumber.Then(`^the request should be successful$`, func() { err, ok := gucumber.World["error"].(awserr.Error) assert.False(gucumber.T, ok, "error returned") assert.NoError(gucumber.T, err) }) } // findMethod finds the op operation on the v structure using a case-insensitive // lookup. Returns nil if no method is found. func findMethod(v reflect.Value, op string) *reflect.Value { t := v.Type() op = strings.ToLower(op) for i := 0; i < t.NumMethod(); i++ { name := t.Method(i).Name if strings.ToLower(name) == op { m := v.MethodByName(name) return &m } } return nil } // call calls an operation on gucumber.World["client"] by the name op using the args // table of arguments to set. func call(op string, args [][]string, allowError bool) { v := reflect.ValueOf(gucumber.World["client"]) if m := findMethod(v, op); m != nil { t := m.Type() in := reflect.New(t.In(0).Elem()) fillArgs(in, args) resps := m.Call([]reflect.Value{in}) gucumber.World["response"] = resps[0].Interface() gucumber.World["error"] = resps[1].Interface() if !allowError { err, _ := gucumber.World["error"].(error) assert.NoError(gucumber.T, err) } } else { assert.Fail(gucumber.T, "failed to find operation "+op) } } // reIsNum is a regular expression matching a numeric input (integer) var reIsNum = regexp.MustCompile(`^\d+$`) // reIsArray is a regular expression matching a list var reIsArray = regexp.MustCompile(`^\['.*?'\]$`) var reArrayElem = regexp.MustCompile(`'(.+?)'`) // fillArgs fills arguments on the input structure using the args table of // arguments. func fillArgs(in reflect.Value, args [][]string) { if args == nil { return } for _, row := range args { path := row[0] var val interface{} = row[1] if reIsArray.MatchString(row[1]) { quotedStrs := reArrayElem.FindAllString(row[1], -1) strs := make([]*string, len(quotedStrs)) for i, e := range quotedStrs { str := e[1 : len(e)-1] strs[i] = &str } val = strs } else if reIsNum.MatchString(row[1]) { // handle integer values num, err := strconv.ParseInt(row[1], 10, 64) if err == nil { val = num } } awsutil.SetValueAtPath(in.Interface(), path, val) } } func callWithJSON(op, j string, allowError bool) { v := reflect.ValueOf(gucumber.World["client"]) if m := findMethod(v, op); m != nil { t := m.Type() in := reflect.New(t.In(0).Elem()) fillJSON(in, j) resps := m.Call([]reflect.Value{in}) gucumber.World["response"] = resps[0].Interface() gucumber.World["error"] = resps[1].Interface() if !allowError { err, _ := gucumber.World["error"].(error) assert.NoError(gucumber.T, err) } } else { assert.Fail(gucumber.T, "failed to find operation "+op) } } func fillJSON(in reflect.Value, j string) { d := json.NewDecoder(strings.NewReader(j)) if err := d.Decode(in.Interface()); err != nil { panic(err) } } aws-sdk-go-1.4.22/awstesting/integration/smoke/simpledb/000077500000000000000000000000001300374646400232135ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/simpledb/client.go000066400000000000000000000005611300374646400250220ustar00rootroot00000000000000// +build integration //Package simpledb provides gucumber integration tests support. package simpledb import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/simpledb" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@simpledb", func() { gucumber.World["client"] = simpledb.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/simpledb/simpledb.feature000066400000000000000000000013361300374646400263720ustar00rootroot00000000000000# language: en @simpledb @sdb Feature: Amazon SimpleDB I want to use Amazon SimpleDB Scenario: Making a request When I call the "CreateDomain" API with: | DomainName | sample-domain | Then the request should be successful And I call the "ListDomains" API Then the value at "DomainNames" should be a list And I call the "DeleteDomain" API with: | DomainName | sample-domain | Then the request should be successful Scenario: Handling errors When I attempt to call the "CreateDomain" API with: | DomainName | | Then I expect the response error code to be "InvalidParameterValue" And I expect the response error message to include: """ DomainName is invalid """ aws-sdk-go-1.4.22/awstesting/integration/smoke/sns/000077500000000000000000000000001300374646400222175ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/sns/client.go000066400000000000000000000005301300374646400240220ustar00rootroot00000000000000// +build integration //Package sns provides gucumber integration tests support. package sns import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/sns" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@sns", func() { gucumber.World["client"] = sns.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/sns/sns.feature000066400000000000000000000007031300374646400243770ustar00rootroot00000000000000# language: en @sns @client Feature: Amazon Simple Notification Service Scenario: Making a request When I call the "ListTopics" API Then the value at "Topics" should be a list Scenario: Handling errors When I attempt to call the "Publish" API with: | Message | hello | | TopicArn | fake_topic | Then I expect the response error code to be "InvalidParameter" And I expect the response error message not be empty aws-sdk-go-1.4.22/awstesting/integration/smoke/sqs/000077500000000000000000000000001300374646400222225ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/sqs/client.go000066400000000000000000000005301300374646400240250ustar00rootroot00000000000000// +build integration //Package sqs provides gucumber integration tests support. package sqs import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/sqs" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@sqs", func() { gucumber.World["client"] = sqs.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/sqs/sqs.feature000066400000000000000000000010121300374646400243770ustar00rootroot00000000000000# language: en @sqs @client Feature: Amazon Simple Queue Service Scenario: Making a request When I call the "ListQueues" API Then the value at "QueueUrls" should be a list Scenario: Handling errors When I attempt to call the "GetQueueUrl" API with: | QueueName | fake_queue | Then I expect the response error code to be "AWS.SimpleQueueService.NonExistentQueue" And I expect the response error message to include: """ The specified queue does not exist for this wsdl version. """ aws-sdk-go-1.4.22/awstesting/integration/smoke/ssm/000077500000000000000000000000001300374646400222165ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/ssm/client.go000066400000000000000000000005301300374646400240210ustar00rootroot00000000000000// +build integration //Package ssm provides gucumber integration tests support. package ssm import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/ssm" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@ssm", func() { gucumber.World["client"] = ssm.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/ssm/ssm.feature000066400000000000000000000007161300374646400244010ustar00rootroot00000000000000# language: en @ssm @client Feature: Amazon SSM Scenario: Making a request When I call the "ListDocuments" API Then the value at "DocumentIdentifiers" should be a list Scenario: Handling errors When I attempt to call the "GetDocument" API with: | Name | 'fake-name' | Then I expect the response error code to be "ValidationException" And I expect the response error message to include: """ validation error detected """ aws-sdk-go-1.4.22/awstesting/integration/smoke/storagegateway/000077500000000000000000000000001300374646400244425ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/storagegateway/client.go000066400000000000000000000006171300374646400262530ustar00rootroot00000000000000// +build integration //Package storagegateway provides gucumber integration tests support. package storagegateway import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/storagegateway" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@storagegateway", func() { gucumber.World["client"] = storagegateway.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/storagegateway/storagegateway.feature000066400000000000000000000007131300374646400310460ustar00rootroot00000000000000# language: en @storagegateway @client Feature: AWS Storage Gateway Scenario: Making a request When I call the "ListGateways" API Then the value at "Gateways" should be a list Scenario: Handling errors When I attempt to call the "ListVolumes" API with: | GatewayARN | fake_gateway | Then I expect the response error code to be "InvalidParameter" And I expect the response error message to include: """ GatewayARN """ aws-sdk-go-1.4.22/awstesting/integration/smoke/sts/000077500000000000000000000000001300374646400222255ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/sts/client.go000066400000000000000000000005301300374646400240300ustar00rootroot00000000000000// +build integration //Package sts provides gucumber integration tests support. package sts import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/sts" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@sts", func() { gucumber.World["client"] = sts.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/sts/sts.feature000066400000000000000000000007071300374646400244170ustar00rootroot00000000000000# language: en @sts @client Feature: AWS STS Scenario: Making a request When I call the "GetSessionToken" API Then the response should contain a "Credentials" Scenario: Handling errors When I attempt to call the "GetFederationToken" API with: | Name | temp | | Policy | | Then I expect the response error code to be "InvalidParameter" And I expect the response error message to include: """ Policy """ aws-sdk-go-1.4.22/awstesting/integration/smoke/support/000077500000000000000000000000001300374646400231305ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/support/client.go000066400000000000000000000005541300374646400247410ustar00rootroot00000000000000// +build integration //Package support provides gucumber integration tests support. package support import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/support" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@support", func() { gucumber.World["client"] = support.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/support/support.feature000066400000000000000000000012411300374646400262170ustar00rootroot00000000000000# language: en @support @client Feature: AWS Support I want to use AWS Support Scenario: Making a request When I call the "DescribeServices" API Then the value at "services" should be a list Scenario: Handling errors When I attempt to call the "CreateCase" API with: | subject | subject | | communicationBody | communication | | categoryCode | category | | serviceCode | amazon-dynamodb | | severityCode | low | Then I expect the response error code to be "InvalidParameterValueException" And the error message should contain: """ Invalid category code """ aws-sdk-go-1.4.22/awstesting/integration/smoke/swf/000077500000000000000000000000001300374646400222135ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/swf/client.go000066400000000000000000000005301300374646400240160ustar00rootroot00000000000000// +build integration //Package swf provides gucumber integration tests support. package swf import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/swf" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@swf", func() { gucumber.World["client"] = swf.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/swf/swf.feature000066400000000000000000000010141300374646400243630ustar00rootroot00000000000000# language: en @swf @client Feature: Amazon Simple Workflow Service Scenario: Making a request When I call the "ListDomains" API with: | registrationStatus | REGISTERED | Then the value at "domainInfos" should be a list Scenario: Handling errors When I attempt to call the "DescribeDomain" API with: | name | fake_domain | Then I expect the response error code to be "UnknownResourceFault" And I expect the response error message to include: """ Unknown domain: fake_domain """ aws-sdk-go-1.4.22/awstesting/integration/smoke/waf/000077500000000000000000000000001300374646400221715ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/waf/client.go000066400000000000000000000005301300374646400237740ustar00rootroot00000000000000// +build integration //Package waf provides gucumber integration tests support. package waf import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/waf" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@waf", func() { gucumber.World["client"] = waf.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/waf/waf.feature000066400000000000000000000010421300374646400243200ustar00rootroot00000000000000# language: en @waf Feature: AWS WAF Scenario: Making a request When I call the "ListRules" API with JSON: """ {"Limit":20} """ Then the value at "Rules" should be a list Scenario: Handling errors When I attempt to call the "CreateSqlInjectionMatchSet" API with: | Name | fake_name | | ChangeToken | fake_token | Then I expect the response error code to be "WAFStaleDataException" And I expect the response error message to include: """ The input token is no longer current """ aws-sdk-go-1.4.22/awstesting/integration/smoke/workspaces/000077500000000000000000000000001300374646400235755ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/integration/smoke/workspaces/client.go000066400000000000000000000005731300374646400254070ustar00rootroot00000000000000// +build integration //Package workspaces provides gucumber integration tests support. package workspaces import ( "github.com/aws/aws-sdk-go/awstesting/integration/smoke" "github.com/aws/aws-sdk-go/service/workspaces" "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@workspaces", func() { gucumber.World["client"] = workspaces.New(smoke.Session) }) } aws-sdk-go-1.4.22/awstesting/integration/smoke/workspaces/workspaces.feature000066400000000000000000000010371300374646400273340ustar00rootroot00000000000000# language: en @workspaces @client Feature: Amazon WorkSpaces I want to use Amazon WorkSpaces Scenario: Making a request When I call the "DescribeWorkspaces" API Then the value at "Workspaces" should be a list Scenario: Handling errors When I attempt to call the "DescribeWorkspaces" API with: | DirectoryId | fake-id | Then I expect the response error code to be "ValidationException" And I expect the response error message to include: """ The Directory ID fake-id in the request is invalid. """ aws-sdk-go-1.4.22/awstesting/mock/000077500000000000000000000000001300374646400167045ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/mock/mock.go000066400000000000000000000021131300374646400201610ustar00rootroot00000000000000package mock import ( "net/http" "net/http/httptest" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/session" ) // Session is a mock session which is used to hit the mock server var Session = session.Must(session.NewSession(&aws.Config{ DisableSSL: aws.Bool(true), Endpoint: aws.String(server.URL[7:]), })) // server is the mock server that simply writes a 200 status back to the client var server = httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { w.WriteHeader(http.StatusOK) })) // NewMockClient creates and initializes a client that will connect to the // mock server func NewMockClient(cfgs ...*aws.Config) *client.Client { c := Session.ClientConfig("Mock", cfgs...) svc := client.New( *c.Config, metadata.ClientInfo{ ServiceName: "Mock", SigningRegion: c.SigningRegion, Endpoint: c.Endpoint, APIVersion: "2015-12-08", JSONVersion: "1.1", TargetPrefix: "MockServer", }, c.Handlers, ) return svc } aws-sdk-go-1.4.22/awstesting/performance/000077500000000000000000000000001300374646400202545ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/performance/benchmarks.go000066400000000000000000000055011300374646400227210ustar00rootroot00000000000000// +build integration package performance import ( "errors" "fmt" "os" "reflect" "runtime" "strings" "testing" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting/mock" "github.com/gucumber/gucumber" ) // mapCreateClients allows for the creation of clients func mapCreateClients() { clientFns := []func(){} for _, c := range clients { clientFns = append(clientFns, func() { c.Call([]reflect.Value{reflect.ValueOf(mock.Session)}) }) } gucumber.World["services"] = clientFns } func buildAnArrayOfClients() { methods := []reflect.Value{} params := [][]reflect.Value{} for _, c := range clients { method, param, err := findAndGetMethod(c.Call([]reflect.Value{reflect.ValueOf(mock.Session)})) if err == nil { methods = append(methods, method) params = append(params, param) } } fns := []func(){} for i := 0; i < len(methods); i++ { m := methods[i] p := params[i] f := func() { reqs := m.Call(p) resp := reqs[0].Interface().(*request.Request).Send() fmt.Println(resp) } fns = append(fns, f) } gucumber.World["clientFns"] = fns } // findAndGetMethod will grab the method, params to be passed to the method, and an error. // The method that is found, is a method that doesn't have any required input func findAndGetMethod(client interface{}) (reflect.Value, []reflect.Value, error) { v := reflect.ValueOf(client).Type() n := v.NumMethod() outer: for i := 0; i < n; i++ { method := v.Method(i) if method.Type.NumIn() != 2 || strings.HasSuffix(method.Name, "Request") { continue } param := reflect.New(method.Type.In(1).Elem()) for j := 0; j < param.Elem().NumField(); j++ { field := param.Elem().Type().Field(j) req := field.Tag.Get("required") if req == "true" { continue outer } } params := []reflect.Value{reflect.ValueOf(client), param} return method.Func, params, nil } return reflect.Value{}, nil, errors.New("No method found") } // benchmarkTask takes a unique key to write to the logger with the benchmark // result's data func benchmarkTask(key string, fns []func(), i1 int) error { gucumber.World["error"] = nil memStatStart := &runtime.MemStats{} runtime.ReadMemStats(memStatStart) results := testing.Benchmark(func(b *testing.B) { for _, f := range fns { for i := 0; i < i1; i++ { f() } } }) results.N = i1 memStatEnd := &runtime.MemStats{} runtime.ReadMemStats(memStatEnd) l, err := newBenchmarkLogger("stdout") if err != nil { return err } l.log(key, results) toDynamodb := os.Getenv("AWS_TESTING_LOG_RESULTS") == "true" if toDynamodb { l, err := newBenchmarkLogger("dynamodb") if err != nil { return err } l.log(key+"_start_benchmarks", memStatStart) l.log(key+"_end_benchmarks", memStatEnd) } if memStatStart.Alloc < memStatEnd.Alloc { return errors.New("Leaked memory") } return nil } aws-sdk-go-1.4.22/awstesting/performance/client.go000066400000000000000000000003311300374646400220560ustar00rootroot00000000000000// +build integration //Package performance provides gucumber integration tests support. package performance import ( "github.com/gucumber/gucumber" ) func init() { gucumber.Before("@performance", func() { }) } aws-sdk-go-1.4.22/awstesting/performance/clients.feature000066400000000000000000000011471300374646400232750ustar00rootroot00000000000000# language: en @performance @clients Feature: Client Performance Background: Given I have loaded my SDK and its dependencies And I have a list of services And I take a snapshot of my resources Scenario: Creating and then cleaning up clients doesn't leak resources When I create and discard 100 clients for each service Then I should not have leaked any resources Scenario: Sending requests doesn't leak resources When I create a client for each service And I execute 100 command(s) on each client And I destroy all the clients Then I should not have leaked any resources aws-sdk-go-1.4.22/awstesting/performance/clients.go000066400000000000000000000120551300374646400222470ustar00rootroot00000000000000// +build integration package performance import ( "reflect" "github.com/aws/aws-sdk-go/service/acm" "github.com/aws/aws-sdk-go/service/apigateway" "github.com/aws/aws-sdk-go/service/autoscaling" "github.com/aws/aws-sdk-go/service/cloudformation" "github.com/aws/aws-sdk-go/service/cloudfront" "github.com/aws/aws-sdk-go/service/cloudhsm" "github.com/aws/aws-sdk-go/service/cloudsearch" "github.com/aws/aws-sdk-go/service/cloudsearchdomain" "github.com/aws/aws-sdk-go/service/cloudtrail" "github.com/aws/aws-sdk-go/service/cloudwatch" "github.com/aws/aws-sdk-go/service/cloudwatchevents" "github.com/aws/aws-sdk-go/service/cloudwatchlogs" "github.com/aws/aws-sdk-go/service/codecommit" "github.com/aws/aws-sdk-go/service/codedeploy" "github.com/aws/aws-sdk-go/service/codepipeline" "github.com/aws/aws-sdk-go/service/cognitoidentity" "github.com/aws/aws-sdk-go/service/cognitosync" "github.com/aws/aws-sdk-go/service/configservice" "github.com/aws/aws-sdk-go/service/datapipeline" "github.com/aws/aws-sdk-go/service/devicefarm" "github.com/aws/aws-sdk-go/service/directconnect" "github.com/aws/aws-sdk-go/service/directoryservice" "github.com/aws/aws-sdk-go/service/dynamodb" "github.com/aws/aws-sdk-go/service/dynamodbstreams" "github.com/aws/aws-sdk-go/service/ec2" "github.com/aws/aws-sdk-go/service/ecr" "github.com/aws/aws-sdk-go/service/ecs" "github.com/aws/aws-sdk-go/service/efs" "github.com/aws/aws-sdk-go/service/elasticache" "github.com/aws/aws-sdk-go/service/elasticbeanstalk" "github.com/aws/aws-sdk-go/service/elasticsearchservice" "github.com/aws/aws-sdk-go/service/elastictranscoder" "github.com/aws/aws-sdk-go/service/elb" "github.com/aws/aws-sdk-go/service/emr" "github.com/aws/aws-sdk-go/service/firehose" "github.com/aws/aws-sdk-go/service/glacier" "github.com/aws/aws-sdk-go/service/iam" "github.com/aws/aws-sdk-go/service/inspector" "github.com/aws/aws-sdk-go/service/iot" "github.com/aws/aws-sdk-go/service/iotdataplane" "github.com/aws/aws-sdk-go/service/kinesis" "github.com/aws/aws-sdk-go/service/kms" "github.com/aws/aws-sdk-go/service/lambda" "github.com/aws/aws-sdk-go/service/machinelearning" "github.com/aws/aws-sdk-go/service/marketplacecommerceanalytics" "github.com/aws/aws-sdk-go/service/mobileanalytics" "github.com/aws/aws-sdk-go/service/opsworks" "github.com/aws/aws-sdk-go/service/rds" "github.com/aws/aws-sdk-go/service/redshift" "github.com/aws/aws-sdk-go/service/route53" "github.com/aws/aws-sdk-go/service/route53domains" "github.com/aws/aws-sdk-go/service/s3" "github.com/aws/aws-sdk-go/service/ses" "github.com/aws/aws-sdk-go/service/simpledb" "github.com/aws/aws-sdk-go/service/sns" "github.com/aws/aws-sdk-go/service/sqs" "github.com/aws/aws-sdk-go/service/ssm" "github.com/aws/aws-sdk-go/service/storagegateway" "github.com/aws/aws-sdk-go/service/sts" "github.com/aws/aws-sdk-go/service/support" "github.com/aws/aws-sdk-go/service/swf" "github.com/aws/aws-sdk-go/service/waf" "github.com/aws/aws-sdk-go/service/workspaces" ) var clients = []reflect.Value{ reflect.ValueOf(acm.New), reflect.ValueOf(apigateway.New), reflect.ValueOf(autoscaling.New), reflect.ValueOf(cloudformation.New), reflect.ValueOf(cloudfront.New), reflect.ValueOf(cloudhsm.New), reflect.ValueOf(cloudsearch.New), reflect.ValueOf(cloudsearchdomain.New), reflect.ValueOf(cloudtrail.New), reflect.ValueOf(cloudwatch.New), reflect.ValueOf(cloudwatchevents.New), reflect.ValueOf(cloudwatchlogs.New), reflect.ValueOf(codecommit.New), reflect.ValueOf(codedeploy.New), reflect.ValueOf(codepipeline.New), reflect.ValueOf(cognitoidentity.New), reflect.ValueOf(cognitosync.New), reflect.ValueOf(configservice.New), reflect.ValueOf(datapipeline.New), reflect.ValueOf(devicefarm.New), reflect.ValueOf(directconnect.New), reflect.ValueOf(directoryservice.New), reflect.ValueOf(dynamodb.New), reflect.ValueOf(dynamodbstreams.New), reflect.ValueOf(ec2.New), reflect.ValueOf(ecr.New), reflect.ValueOf(ecs.New), reflect.ValueOf(efs.New), reflect.ValueOf(elasticache.New), reflect.ValueOf(elasticbeanstalk.New), reflect.ValueOf(elasticsearchservice.New), reflect.ValueOf(elastictranscoder.New), reflect.ValueOf(elb.New), reflect.ValueOf(emr.New), reflect.ValueOf(firehose.New), reflect.ValueOf(glacier.New), reflect.ValueOf(iam.New), reflect.ValueOf(inspector.New), reflect.ValueOf(iot.New), reflect.ValueOf(iotdataplane.New), reflect.ValueOf(kinesis.New), reflect.ValueOf(kms.New), reflect.ValueOf(lambda.New), reflect.ValueOf(machinelearning.New), reflect.ValueOf(marketplacecommerceanalytics.New), reflect.ValueOf(mobileanalytics.New), reflect.ValueOf(opsworks.New), reflect.ValueOf(rds.New), reflect.ValueOf(redshift.New), reflect.ValueOf(route53.New), reflect.ValueOf(route53domains.New), reflect.ValueOf(s3.New), reflect.ValueOf(ses.New), reflect.ValueOf(simpledb.New), reflect.ValueOf(sns.New), reflect.ValueOf(sqs.New), reflect.ValueOf(ssm.New), reflect.ValueOf(storagegateway.New), reflect.ValueOf(sts.New), reflect.ValueOf(support.New), reflect.ValueOf(swf.New), reflect.ValueOf(waf.New), reflect.ValueOf(workspaces.New), } aws-sdk-go-1.4.22/awstesting/performance/init.go000066400000000000000000000051271300374646400215530ustar00rootroot00000000000000// +build integration package performance import ( "bytes" "errors" "fmt" "runtime" "github.com/gucumber/gucumber" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/awstesting/mock" "github.com/aws/aws-sdk-go/service/s3" ) func init() { // Go loads all of its dependecies on compile gucumber.Given(`^I have loaded my SDK and its dependencies$`, func() { }) // Performance gucumber.When(`^I create and discard (\d+) clients for each service$`, func(i1 int) { services := gucumber.World["services"].([]func()) err := benchmarkTask(fmt.Sprintf("%d_create_and_discard_clients", i1), services, i1) gucumber.World["error"] = err }) gucumber.Then(`^I should not have leaked any resources$`, func() { runtime.GC() err, ok := gucumber.World["error"].(awserr.Error) assert.False(gucumber.T, ok, "error returned") assert.NoError(gucumber.T, err) }) gucumber.And(`^I have a list of services$`, func() { mapCreateClients() }) gucumber.And(`^I take a snapshot of my resources$`, func() { // Can't take a memory snapshot here, because gucumber does some // allocation between each instruction leading to unreliable numbers }) gucumber.When(`^I create a client for each service$`, func() { buildAnArrayOfClients() }) gucumber.And("^I execute (\\d+) command\\(s\\) on each client$", func(i1 int) { clientFns := gucumber.World["clientFns"].([]func()) err := benchmarkTask(fmt.Sprintf("%d_commands_on_clients", i1), clientFns, i1) gucumber.World["error"] = err }) gucumber.And(`^I destroy all the clients$`, func() { delete(gucumber.World, "clientFns") runtime.GC() }) gucumber.Given(`^I have a (\d+) byte file$`, func(i1 int) { gucumber.World["file"] = make([]byte, i1) }) gucumber.When(`^I upload the file$`, func() { svc := s3.New(mock.Session) memStatStart := &runtime.MemStats{} runtime.ReadMemStats(memStatStart) gucumber.World["start"] = memStatStart svc.PutObjectRequest(&s3.PutObjectInput{ Bucket: aws.String("bucketmesilly"), Key: aws.String("testKey"), Body: bytes.NewReader(gucumber.World["file"].([]byte)), }) }) gucumber.And(`then download the file$`, func() { svc := s3.New(mock.Session) svc.GetObjectRequest(&s3.GetObjectInput{ Bucket: aws.String("bucketmesilly"), Key: aws.String("testKey"), }) memStatEnd := &runtime.MemStats{} runtime.ReadMemStats(memStatEnd) memStatStart := gucumber.World["start"].(*runtime.MemStats) if memStatStart.Alloc < memStatEnd.Alloc { gucumber.World["error"] = errors.New("Leaked memory") } }) } aws-sdk-go-1.4.22/awstesting/performance/logging.go000066400000000000000000000053441300374646400222370ustar00rootroot00000000000000// +build integration // Package performance contains shared step definitions that are used for performance testing package performance import ( "errors" "fmt" "os" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/dynamodb" "github.com/aws/aws-sdk-go/service/dynamodb/dynamodbattribute" ) // benchmarkLogger handles all benchmark logging type benchmarkLogger struct { outputer } // logger interface that handles any logging to an output type logger interface { log(key string, data map[string]interface{}) error } // init initializes the logger and uses dependency injection for the // outputer func newBenchmarkLogger(output string) (*benchmarkLogger, error) { b := &benchmarkLogger{} switch output { case "dynamodb": region := os.Getenv("AWS_TESTING_REGION") if region == "" { return b, errors.New("No region specified. Please export AWS_TESTING_REGION") } table := os.Getenv("AWS_TESTING_DB_TABLE") if table == "" { return b, errors.New("No table specified. Please export AWS_TESTING_DB_TABLE") } b.outputer = newDynamodbOut(table, region) case "stdout": b.outputer = stdout{} default: return b, errors.New("Unsupported outputer") } return b, nil } type record struct { Key string Data interface{} } // log calls the output command and building a data structure // to pass into its output formatter func (b benchmarkLogger) log(key, data interface{}) error { formatData := record{ Key: fmt.Sprintf("%d-%v", time.Now().Unix(), key.(string)), Data: data, } return b.output(formatData) } // outputer is a simple interface that'll handle output // to whatever system like dynamodb or stdout type outputer interface { output(record) error } // dyanmodbOut handles simple writes to dynamodb type dynamodbOut struct { table string // table to write to in dynamodb region string db *dynamodb.DynamoDB // the dynamodb } // init initializes dynamodbOut func newDynamodbOut(table, region string) *dynamodbOut { out := dynamodbOut{ table: table, region: region, } out.db = dynamodb.New( unit.Session, &aws.Config{Region: &out.region}, ) return &out } // output just writes to dynamodb func (out dynamodbOut) output(data record) error { input := &dynamodb.PutItemInput{ TableName: aws.String(out.table), } item, err := dynamodbattribute.ConvertToMap(data) if err != nil { return err } input.Item = item _, err = out.db.PutItem(input) return err } // stdout handles writes to stdout type stdout struct{} // output expects key value data to print to stdout func (out stdout) output(data record) error { item, err := dynamodbattribute.ConvertToMap(data.Data) if err != nil { return err } fmt.Println(item) return nil } aws-sdk-go-1.4.22/awstesting/performance/streaming.feature000066400000000000000000000013111300374646400236160ustar00rootroot00000000000000# language: en @performance @streaming Feature: Streaming transfers consume a fixed amount of memory Scenario Outline: Streaming uploads are O(1) in memory usage Given I have a byte file And I take a snapshot of my resources When I upload the file Then I should not have leaked any resources Examples: | bytes | | 2097152 | | 209715200 | Scenario Outline: Streaming download are O(1) in memory usage Given I have a byte file And I take a snapshot of my resources When I upload the file And then download the file Then I should not have leaked any resources Examples: | bytes | | 2097152 | | 209715200 | aws-sdk-go-1.4.22/awstesting/sandbox/000077500000000000000000000000001300374646400174115ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/sandbox/Dockerfile.golang-tip000066400000000000000000000026201300374646400234430ustar00rootroot00000000000000# Based on docker-library's golang 1.6 alpine and wheezy docker files. # https://github.com/docker-library/golang/blob/master/1.6/alpine/Dockerfile # https://github.com/docker-library/golang/blob/master/1.6/wheezy/Dockerfile FROM buildpack-deps:wheezy-scm ENV GOLANG_VERSION tip ENV GOLANG_SRC_REPO_URL https://go.googlesource.com/go ENV GOLANG_BOOTSTRAP_URL https://storage.googleapis.com/golang/go1.4.3.linux-amd64.tar.gz ENV GOLANG_BOOTSTRAP_SHA256 ce3140662f45356eb78bc16a88fc7cfb29fb00e18d7c632608245b789b2086d2 ENV GOLANG_BOOTSTRAP_PATH /usr/local/bootstrap # gcc for cgo RUN apt-get update && apt-get install -y --no-install-recommends \ g++ \ gcc \ libc6-dev \ make \ git \ && rm -rf /var/lib/apt/lists/* # Setup the Bootstrap RUN mkdir -p "$GOLANG_BOOTSTRAP_PATH" \ && curl -fsSL "$GOLANG_BOOTSTRAP_URL" -o golang.tar.gz \ && echo "$GOLANG_BOOTSTRAP_SHA256 golang.tar.gz" | sha256sum -c - \ && tar -C "$GOLANG_BOOTSTRAP_PATH" -xzf golang.tar.gz \ && rm golang.tar.gz # Get and build Go tip RUN export GOROOT_BOOTSTRAP=$GOLANG_BOOTSTRAP_PATH/go \ && git clone "$GOLANG_SRC_REPO_URL" /usr/local/go \ && cd /usr/local/go/src \ && ./make.bash \ && rm -rf "$GOLANG_BOOTSTRAP_PATH" /usr/local/go/pkg/bootstrap # Build Go workspace and environment ENV GOPATH /go ENV PATH $GOPATH/bin:/usr/local/go/bin:$PATH RUN mkdir -p "$GOPATH/src" "$GOPATH/bin" \ && chmod -R 777 "$GOPATH" WORKDIR $GOPATH aws-sdk-go-1.4.22/awstesting/sandbox/Dockerfile.test.go1.4000066400000000000000000000002271300374646400232110ustar00rootroot00000000000000FROM ubuntu:12.04 FROM golang:1.4 ADD . /go/src/github.com/aws/aws-sdk-go WORKDIR /go/src/github.com/aws/aws-sdk-go CMD ["make", "get-deps", "unit"] aws-sdk-go-1.4.22/awstesting/sandbox/Dockerfile.test.go1.5000066400000000000000000000002511300374646400232070ustar00rootroot00000000000000FROM ubuntu:12.04 FROM golang:1.5 ADD . /go/src/github.com/aws/aws-sdk-go ENV GO15VENDOREXPERIMENT="1" WORKDIR /go/src/github.com/aws/aws-sdk-go CMD ["make", "unit"] aws-sdk-go-1.4.22/awstesting/sandbox/Dockerfile.test.go1.5-novendorexp000066400000000000000000000002271300374646400255570ustar00rootroot00000000000000FROM ubuntu:12.04 FROM golang:1.5 ADD . /go/src/github.com/aws/aws-sdk-go WORKDIR /go/src/github.com/aws/aws-sdk-go CMD ["make", "get-deps", "unit"] aws-sdk-go-1.4.22/awstesting/sandbox/Dockerfile.test.go1.6000066400000000000000000000002131300374646400232060ustar00rootroot00000000000000FROM ubuntu:12.04 FROM golang:1.6 ADD . /go/src/github.com/aws/aws-sdk-go WORKDIR /go/src/github.com/aws/aws-sdk-go CMD ["make", "unit"] aws-sdk-go-1.4.22/awstesting/sandbox/Dockerfile.test.go1.7000066400000000000000000000002131300374646400232070ustar00rootroot00000000000000FROM ubuntu:12.04 FROM golang:1.7 ADD . /go/src/github.com/aws/aws-sdk-go WORKDIR /go/src/github.com/aws/aws-sdk-go CMD ["make", "unit"] aws-sdk-go-1.4.22/awstesting/sandbox/Dockerfile.test.gotip000066400000000000000000000002171300374646400235020ustar00rootroot00000000000000FROM ubuntu:12.04 FROM aws-golang:tip ADD . /go/src/github.com/aws/aws-sdk-go WORKDIR /go/src/github.com/aws/aws-sdk-go CMD ["make", "unit"] aws-sdk-go-1.4.22/awstesting/unit/000077500000000000000000000000001300374646400167325ustar00rootroot00000000000000aws-sdk-go-1.4.22/awstesting/unit/unit.go000066400000000000000000000006721300374646400202450ustar00rootroot00000000000000// Package unit performs initialization and validation for unit tests package unit import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/aws/session" ) // Session is a shared session for unit tests to use. var Session = session.Must(session.NewSession(aws.NewConfig(). WithCredentials(credentials.NewStaticCredentials("AKID", "SECRET", "SESSION")). WithRegion("mock-region"))) aws-sdk-go-1.4.22/awstesting/util.go000066400000000000000000000025271300374646400172650ustar00rootroot00000000000000package awstesting import ( "io" "github.com/aws/aws-sdk-go/private/util" ) // ZeroReader is a io.Reader which will always write zeros to the byte slice provided. type ZeroReader struct{} // Read fills the provided byte slice with zeros returning the number of bytes written. func (r *ZeroReader) Read(b []byte) (int, error) { for i := 0; i < len(b); i++ { b[i] = 0 } return len(b), nil } // ReadCloser is a io.ReadCloser for unit testing. // Designed to test for leaks and whether a handle has // been closed type ReadCloser struct { Size int Closed bool set bool FillData func(bool, []byte, int, int) } // Read will call FillData and fill it with whatever data needed. // Decrements the size until zero, then return io.EOF. func (r *ReadCloser) Read(b []byte) (int, error) { if r.Closed { return 0, io.EOF } delta := len(b) if delta > r.Size { delta = r.Size } r.Size -= delta for i := 0; i < delta; i++ { b[i] = 'a' } if r.FillData != nil { r.FillData(r.set, b, r.Size, delta) } r.set = true if r.Size > 0 { return delta, nil } return delta, io.EOF } // Close sets Closed to true and returns no error func (r *ReadCloser) Close() error { r.Closed = true return nil } // SortedKeys returns a sorted slice of keys of a map. func SortedKeys(m map[string]interface{}) []string { return util.SortedKeys(m) } aws-sdk-go-1.4.22/awstesting/util_test.go000066400000000000000000000015731300374646400203240ustar00rootroot00000000000000package awstesting_test import ( "io" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/awstesting" ) func TestReadCloserClose(t *testing.T) { rc := awstesting.ReadCloser{Size: 1} err := rc.Close() assert.Nil(t, err) assert.True(t, rc.Closed) assert.Equal(t, rc.Size, 1) } func TestReadCloserRead(t *testing.T) { rc := awstesting.ReadCloser{Size: 5} b := make([]byte, 2) n, err := rc.Read(b) assert.Nil(t, err) assert.Equal(t, n, 2) assert.False(t, rc.Closed) assert.Equal(t, rc.Size, 3) err = rc.Close() assert.Nil(t, err) n, err = rc.Read(b) assert.Equal(t, err, io.EOF) assert.Equal(t, n, 0) } func TestReadCloserReadAll(t *testing.T) { rc := awstesting.ReadCloser{Size: 5} b := make([]byte, 5) n, err := rc.Read(b) assert.Equal(t, err, io.EOF) assert.Equal(t, n, 5) assert.False(t, rc.Closed) assert.Equal(t, rc.Size, 0) } aws-sdk-go-1.4.22/doc-src/000077500000000000000000000000001300374646400151155ustar00rootroot00000000000000aws-sdk-go-1.4.22/doc-src/aws-godoc/000077500000000000000000000000001300374646400170005ustar00rootroot00000000000000aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/000077500000000000000000000000001300374646400207765ustar00rootroot00000000000000aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/callgraph.html000066400000000000000000000011371300374646400236230ustar00rootroot00000000000000 aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/codewalk.html000066400000000000000000000040151300374646400234550ustar00rootroot00000000000000
code on leftright code width 70% filepaths shownhidden
{{range .Step}}
{{html .Title}}
{{with .Err}} ERROR LOADING FILE: {{html .}}

{{end}} {{.XML}}
{{html .}}
{{end}}
aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/codewalkdir.html000066400000000000000000000005541300374646400241600ustar00rootroot00000000000000 {{range .}} {{$name_html := html .Name}} {{end}}
{{$name_html}}   {{html .Title}}
aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/dirlist.html000066400000000000000000000012141300374646400233340ustar00rootroot00000000000000

{{range .}} {{$name_html := fileInfoName . | html}} {{end}}
File   Bytes   Modified
..
{{$name_html}} {{html .Size}} {{fileInfoTime . | html}}

aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/error.html000066400000000000000000000003511300374646400230140ustar00rootroot00000000000000

{{html .}}

aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/example.html000066400000000000000000000017311300374646400233210ustar00rootroot00000000000000

Example{{example_suffix .Name}}

{{with .Doc}}

{{html .}}

{{end}} {{$output := .Output}} {{with .Play}}
{{html $output}}
Run Format {{if $.Share}} {{end}}
{{else}}

Code:

{{.Code}}
{{with .Output}}

Output:

{{html .}}
{{end}} {{end}}
aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/godoc.html000066400000000000000000000107731300374646400227670ustar00rootroot00000000000000 {{with .Tabtitle}} {{html .}} - Amazon Web Services - Go SDK {{else}} Amazon Web Services - Go SDK {{end}}
...
{{/* The Table of Contents is automatically inserted in this
. Do not delete this
. */}} {{ if not .NoTOC }} {{ end }}
{{/* Body is HTML-escaped elsewhere */}} {{printf "%s" .Body}}
aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/godocs.js000066400000000000000000000375321300374646400226240ustar00rootroot00000000000000// Copyright 2012 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. /* A little code to ease navigation of these documents. * * On window load we: * + Bind search box hint placeholder show/hide events (bindSearchEvents) * + Generate a table of contents (generateTOC) * + Bind foldable sections (bindToggles) * + Bind links to foldable sections (bindToggleLinks) */ (function() { 'use strict'; // Mobile-friendly topbar menu $(function() { var menu = $('#menu'); var menuButton = $('#menu-button'); var menuButtonArrow = $('#menu-button-arrow'); menuButton.click(function(event) { menu.toggleClass('menu-visible'); menuButtonArrow.toggleClass('vertical-flip'); event.preventDefault(); return false; }); }); function bindSearchEvents() { var search = $('#search'); if (search.length === 0) { return; // no search box } function clearInactive() { if (search.is('.inactive')) { search.val(''); search.removeClass('inactive'); } } function restoreInactive() { if (search.val() !== '') { return; } search.val(search.attr('placeholder')); search.addClass('inactive'); } search.on('focus', clearInactive); search.on('blur', restoreInactive); restoreInactive(); } /* Generates a table of contents: looks for h2 and h3 elements and generates * links. "Decorates" the element with id=="nav" with this table of contents. */ function generateTOC() { if ($('#manual-nav').length > 0) { return; } var nav = $('#nav'); if (nav.length === 0) { return; } var toc_items = []; $(nav).nextAll('h2, h3').each(function() { var node = this; if (node.id == '') node.id = 'tmp_' + toc_items.length; var link = $('').attr('href', '#' + node.id).text($(node).text()); var item; if ($(node).is('h2')) { item = $('
'); } else { // h3 item = $('
'); } item.append(link); toc_items.push(item); }); if (toc_items.length <= 1) { return; } var dl1 = $('
'); var dl2 = $('
'); var split_index = (toc_items.length / 2) + 1; if (split_index < 8) { split_index = toc_items.length; } for (var i = 0; i < split_index; i++) { dl1.append(toc_items[i]); } for (/* keep using i */; i < toc_items.length; i++) { dl2.append(toc_items[i]); } var tocTable = $('').appendTo(nav); var tocBody = $('').appendTo(tocTable); var tocRow = $('').appendTo(tocBody); // 1st column $('
').appendTo(tocRow).append(dl1); // 2nd column $('').appendTo(tocRow).append(dl2); } function bindToggle(el) { $('.toggleButton', el).click(function() { if ($(el).is('.toggle')) { $(el).addClass('toggleVisible').removeClass('toggle'); } else { $(el).addClass('toggle').removeClass('toggleVisible'); } }); } function bindToggles(selector) { $(selector).each(function(i, el) { bindToggle(el); }); } function bindToggleLink(el, prefix) { $(el).click(function() { var href = $(el).attr('href'); var i = href.indexOf('#'+prefix); if (i < 0) { return; } var id = '#' + prefix + href.slice(i+1+prefix.length); if ($(id).is('.toggle')) { $(id).find('.toggleButton').first().click(); } }); } function bindToggleLinks(selector, prefix) { $(selector).each(function(i, el) { bindToggleLink(el, prefix); }); } function setupDropdownPlayground() { if (!$('#page').is('.wide')) { return; // don't show on front page } var button = $('#playgroundButton'); var div = $('#playground'); var setup = false; button.toggle(function() { button.addClass('active'); div.show(); if (setup) { return; } setup = true; playground({ 'codeEl': $('.code', div), 'outputEl': $('.output', div), 'runEl': $('.run', div), 'fmtEl': $('.fmt', div), 'shareEl': $('.share', div), 'shareRedirect': '//play.golang.org/p/' }); }, function() { button.removeClass('active'); div.hide(); }); button.show(); $('#menu').css('min-width', '+=60'); } function setupInlinePlayground() { 'use strict'; // Set up playground when each element is toggled. $('div.play').each(function (i, el) { // Set up playground for this example. var setup = function() { var code = $('.code', el); playground({ 'codeEl': code, 'outputEl': $('.output', el), 'runEl': $('.run', el), 'fmtEl': $('.fmt', el), 'shareEl': $('.share', el), 'shareRedirect': '//play.golang.org/p/' }); // Make the code textarea resize to fit content. var resize = function() { code.height(0); var h = code[0].scrollHeight; code.height(h+20); // minimize bouncing. code.closest('.input').height(h); }; code.on('keydown', resize); code.on('keyup', resize); code.keyup(); // resize now. }; // If example already visible, set up playground now. if ($(el).is(':visible')) { setup(); return; } // Otherwise, set up playground when example is expanded. var built = false; $(el).closest('.toggle').click(function() { // Only set up once. if (!built) { setup(); built = true; } }); }); } // fixFocus tries to put focus to div#page so that keyboard navigation works. function fixFocus() { var page = $('div#page'); var topbar = $('div#topbar'); page.css('outline', 0); // disable outline when focused page.attr('tabindex', -1); // and set tabindex so that it is focusable $(window).resize(function (evt) { // only focus page when the topbar is at fixed position (that is, it's in // front of page, and keyboard event will go to the former by default.) // by focusing page, keyboard event will go to page so that up/down arrow, // space, etc. will work as expected. if (topbar.css('position') == "fixed") page.focus(); }).resize(); } function toggleHash() { var hash = $(window.location.hash); if (hash.is('.toggle')) { hash.find('.toggleButton').first().click(); } } function personalizeInstallInstructions() { var prefix = '?download='; var s = window.location.search; if (s.indexOf(prefix) != 0) { // No 'download' query string; bail. return; } var filename = s.substr(prefix.length); var filenameRE = /^go1\.\d+(\.\d+)?([a-z0-9]+)?\.([a-z0-9]+)(-[a-z0-9]+)?(-osx10\.[68])?\.([a-z.]+)$/; $('.downloadFilename').text(filename); $('.hideFromDownload').hide(); var m = filenameRE.exec(filename); if (!m) { // Can't interpret file name; bail. return; } var os = m[3]; var ext = m[6]; if (ext != 'tar.gz') { $('#tarballInstructions').hide(); } if (os != 'darwin' || ext != 'pkg') { $('#darwinPackageInstructions').hide(); } if (os != 'windows') { $('#windowsInstructions').hide(); $('.testUnix').show(); $('.testWindows').hide(); } else { if (ext != 'msi') { $('#windowsInstallerInstructions').hide(); } if (ext != 'zip') { $('#windowsZipInstructions').hide(); } $('.testUnix').hide(); $('.testWindows').show(); } var download = "https://storage.googleapis.com/golang/" + filename; var message = $('

'+ 'Your download should begin shortly. '+ 'If it does not, click this link.

'); message.find('a').attr('href', download); message.insertAfter('#nav'); window.location = download; } $(document).ready(function() { bindSearchEvents(); generateTOC(); bindToggles(".toggle"); bindToggles(".toggleVisible"); bindToggleLinks(".exampleLink", "example_"); bindToggleLinks(".overviewLink", ""); bindToggleLinks(".examplesLink", ""); bindToggleLinks(".indexLink", ""); setupDropdownPlayground(); setupInlinePlayground(); fixFocus(); setupTypeInfo(); setupCallgraphs(); toggleHash(); personalizeInstallInstructions(); // godoc.html defines window.initFuncs in the tag, and root.html and // codewalk.js push their on-page-ready functions to the list. // We execute those functions here, to avoid loading jQuery until the page // content is loaded. for (var i = 0; i < window.initFuncs.length; i++) window.initFuncs[i](); }); // -- analysis --------------------------------------------------------- // escapeHTML returns HTML for s, with metacharacters quoted. // It is safe for use in both elements and attributes // (unlike the "set innerText, read innerHTML" trick). function escapeHTML(s) { return s.replace(/&/g, '&'). replace(/\"/g, '"'). replace(/\'/g, '''). replace(//g, '>'); } // makeAnchor returns HTML for an element, given an anchorJSON object. function makeAnchor(json) { var html = escapeHTML(json.Text); if (json.Href != "") { html = "" + html + ""; } return html; } function showLowFrame(html) { var lowframe = document.getElementById('lowframe'); lowframe.style.height = "200px"; lowframe.innerHTML = "

" + html + "

\n" + "
" }; document.hideLowFrame = function() { var lowframe = document.getElementById('lowframe'); lowframe.style.height = "0px"; } // onClickCallers is the onclick action for the 'func' tokens of a // function declaration. document.onClickCallers = function(index) { var data = document.ANALYSIS_DATA[index] if (data.Callers.length == 1 && data.Callers[0].Sites.length == 1) { document.location = data.Callers[0].Sites[0].Href; // jump to sole caller return; } var html = "Callers of " + escapeHTML(data.Callee) + ":
\n"; for (var i = 0; i < data.Callers.length; i++) { var caller = data.Callers[i]; html += "" + escapeHTML(caller.Func) + ""; var sites = caller.Sites; if (sites != null && sites.length > 0) { html += " at line "; for (var j = 0; j < sites.length; j++) { if (j > 0) { html += ", "; } html += "" + makeAnchor(sites[j]) + ""; } } html += "
\n"; } showLowFrame(html); }; // onClickCallees is the onclick action for the '(' token of a function call. document.onClickCallees = function(index) { var data = document.ANALYSIS_DATA[index] if (data.Callees.length == 1) { document.location = data.Callees[0].Href; // jump to sole callee return; } var html = "Callees of this " + escapeHTML(data.Descr) + ":
\n"; for (var i = 0; i < data.Callees.length; i++) { html += "" + makeAnchor(data.Callees[i]) + "
\n"; } showLowFrame(html); }; // onClickTypeInfo is the onclick action for identifiers declaring a named type. document.onClickTypeInfo = function(index) { var data = document.ANALYSIS_DATA[index]; var html = "Type " + data.Name + ": " + "      (size=" + data.Size + ", align=" + data.Align + ")
\n"; html += implementsHTML(data); html += methodsetHTML(data); showLowFrame(html); }; // implementsHTML returns HTML for the implements relation of the // specified TypeInfoJSON value. function implementsHTML(info) { var html = ""; if (info.ImplGroups != null) { for (var i = 0; i < info.ImplGroups.length; i++) { var group = info.ImplGroups[i]; var x = "" + escapeHTML(group.Descr) + " "; for (var j = 0; j < group.Facts.length; j++) { var fact = group.Facts[j]; var y = "" + makeAnchor(fact.Other) + ""; if (fact.ByKind != null) { html += escapeHTML(fact.ByKind) + " type " + y + " implements " + x; } else { html += x + " implements " + y; } html += "
\n"; } } } return html; } // methodsetHTML returns HTML for the methodset of the specified // TypeInfoJSON value. function methodsetHTML(info) { var html = ""; if (info.Methods != null) { for (var i = 0; i < info.Methods.length; i++) { html += "" + makeAnchor(info.Methods[i]) + "
\n"; } } return html; } // onClickComm is the onclick action for channel "make" and "<-" // send/receive tokens. document.onClickComm = function(index) { var ops = document.ANALYSIS_DATA[index].Ops if (ops.length == 1) { document.location = ops[0].Op.Href; // jump to sole element return; } var html = "Operations on this channel:
\n"; for (var i = 0; i < ops.length; i++) { html += makeAnchor(ops[i].Op) + " by " + escapeHTML(ops[i].Fn) + "
\n"; } if (ops.length == 0) { html += "(none)
\n"; } showLowFrame(html); }; $(window).load(function() { // Scroll window so that first selection is visible. // (This means we don't need to emit id='L%d' spans for each line.) // TODO(adonovan): ideally, scroll it so that it's under the pointer, // but I don't know how to get the pointer y coordinate. var elts = document.getElementsByClassName("selection"); if (elts.length > 0) { elts[0].scrollIntoView() } }); // setupTypeInfo populates the "Implements" and "Method set" toggle for // each type in the package doc. function setupTypeInfo() { for (var i in document.ANALYSIS_DATA) { var data = document.ANALYSIS_DATA[i]; var el = document.getElementById("implements-" + i); if (el != null) { // el != null => data is TypeInfoJSON. if (data.ImplGroups != null) { el.innerHTML = implementsHTML(data); el.parentNode.parentNode.style.display = "block"; } } var el = document.getElementById("methodset-" + i); if (el != null) { // el != null => data is TypeInfoJSON. if (data.Methods != null) { el.innerHTML = methodsetHTML(data); el.parentNode.parentNode.style.display = "block"; } } } } function setupCallgraphs() { if (document.CALLGRAPH == null) { return } document.getElementById("pkg-callgraph").style.display = "block"; var treeviews = document.getElementsByClassName("treeview"); for (var i = 0; i < treeviews.length; i++) { var tree = treeviews[i]; if (tree.id == null || tree.id.indexOf("callgraph-") != 0) { continue; } var id = tree.id.substring("callgraph-".length); $(tree).treeview({collapsed: true, animated: "fast"}); document.cgAddChildren(tree, tree, [id]); tree.parentNode.parentNode.style.display = "block"; } } document.cgAddChildren = function(tree, ul, indices) { if (indices != null) { for (var i = 0; i < indices.length; i++) { var li = cgAddChild(tree, ul, document.CALLGRAPH[indices[i]]); if (i == indices.length - 1) { $(li).addClass("last"); } } } $(tree).treeview({animated: "fast", add: ul}); } // cgAddChild adds an
  • element for document.CALLGRAPH node cgn to // the parent
      element ul. tree is the tree's root
        element. function cgAddChild(tree, ul, cgn) { var li = document.createElement("li"); ul.appendChild(li); li.className = "closed"; var code = document.createElement("code"); if (cgn.Callees != null) { $(li).addClass("expandable"); // Event handlers and innerHTML updates don't play nicely together, // hence all this explicit DOM manipulation. var hitarea = document.createElement("div"); hitarea.className = "hitarea expandable-hitarea"; li.appendChild(hitarea); li.appendChild(code); var childUL = document.createElement("ul"); li.appendChild(childUL); childUL.setAttribute('style', "display: none;"); var onClick = function() { document.cgAddChildren(tree, childUL, cgn.Callees); hitarea.removeEventListener('click', onClick) }; hitarea.addEventListener('click', onClick); } else { li.appendChild(code); } code.innerHTML += " " + makeAnchor(cgn.Func); return li } })(); aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/implements.html000066400000000000000000000005441300374646400240440ustar00rootroot00000000000000 aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/jquery.treeview.css000066400000000000000000000023631300374646400246640ustar00rootroot00000000000000/* https://github.com/jzaefferer/jquery-treeview/blob/master/jquery.treeview.css */ /* License: MIT. */ .treeview, .treeview ul { padding: 0; margin: 0; list-style: none; } .treeview ul { background-color: white; margin-top: 4px; } .treeview .hitarea { height: 16px; width: 16px; margin-left: -16px; float: left; cursor: pointer; } /* fix for IE6 */ * html .hitarea { display: inline; float:none; } .treeview li { margin: 0; padding: 3px 0pt 3px 16px; } .treeview a.selected { background-color: #eee; } #treecontrol { margin: 1em 0; display: none; } .treeview .hover { color: red; cursor: pointer; } .treeview li.collapsable, .treeview li.expandable { background-position: 0 -176px; } .treeview .expandable-hitarea { background-position: -80px -3px; } .treeview li.last { background-position: 0 -1766px } .treeview li.lastCollapsable { background-position: 0 -111px } .treeview li.lastExpandable { background-position: -32px -67px } .treeview div.lastCollapsable-hitarea, .treeview div.lastExpandable-hitarea { background-position: 0; } .treeview .placeholder { height: 16px; width: 16px; display: block; } .filetree li { padding: 3px 0 2px 16px; } .filetree span.folder, .filetree span.file { padding: 1px 0 1px 16px; display: block; } aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/jquery.treeview.edit.js000066400000000000000000000032141300374646400254300ustar00rootroot00000000000000/* https://github.com/jzaefferer/jquery-treeview/blob/master/jquery.treeview.edit.js */ /* License: MIT. */ (function($) { var CLASSES = $.treeview.classes; var proxied = $.fn.treeview; $.fn.treeview = function(settings) { settings = $.extend({}, settings); if (settings.add) { return this.trigger("add", [settings.add]); } if (settings.remove) { return this.trigger("remove", [settings.remove]); } return proxied.apply(this, arguments).bind("add", function(event, branches) { $(branches).prev() .removeClass(CLASSES.last) .removeClass(CLASSES.lastCollapsable) .removeClass(CLASSES.lastExpandable) .find(">.hitarea") .removeClass(CLASSES.lastCollapsableHitarea) .removeClass(CLASSES.lastExpandableHitarea); $(branches).find("li").andSelf().prepareBranches(settings).applyClasses(settings, $(this).data("toggler")); }).bind("remove", function(event, branches) { var prev = $(branches).prev(); var parent = $(branches).parent(); $(branches).remove(); prev.filter(":last-child").addClass(CLASSES.last) .filter("." + CLASSES.expandable).replaceClass(CLASSES.last, CLASSES.lastExpandable).end() .find(">.hitarea").replaceClass(CLASSES.expandableHitarea, CLASSES.lastExpandableHitarea).end() .filter("." + CLASSES.collapsable).replaceClass(CLASSES.last, CLASSES.lastCollapsable).end() .find(">.hitarea").replaceClass(CLASSES.collapsableHitarea, CLASSES.lastCollapsableHitarea); if (parent.is(":not(:has(>))") && parent[0] != this) { parent.parent().removeClass(CLASSES.collapsable).removeClass(CLASSES.expandable) parent.siblings(".hitarea").andSelf().remove(); } }); }; })(jQuery); aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/jquery.treeview.js000066400000000000000000000201101300374646400244760ustar00rootroot00000000000000/* * Treeview 1.4.1 - jQuery plugin to hide and show branches of a tree * * http://bassistance.de/jquery-plugins/jquery-plugin-treeview/ * http://docs.jquery.com/Plugins/Treeview * * Copyright (c) 2007 Jörn Zaefferer * * Dual licensed under the MIT and GPL licenses: * http://www.opensource.org/licenses/mit-license.php * http://www.gnu.org/licenses/gpl.html * * Revision: $Id: jquery.treeview.js 5759 2008-07-01 07:50:28Z joern.zaefferer $ * */ ;(function($) { // TODO rewrite as a widget, removing all the extra plugins $.extend($.fn, { swapClass: function(c1, c2) { var c1Elements = this.filter('.' + c1); this.filter('.' + c2).removeClass(c2).addClass(c1); c1Elements.removeClass(c1).addClass(c2); return this; }, replaceClass: function(c1, c2) { return this.filter('.' + c1).removeClass(c1).addClass(c2).end(); }, hoverClass: function(className) { className = className || "hover"; return this.hover(function() { $(this).addClass(className); }, function() { $(this).removeClass(className); }); }, heightToggle: function(animated, callback) { animated ? this.animate({ height: "toggle" }, animated, callback) : this.each(function(){ jQuery(this)[ jQuery(this).is(":hidden") ? "show" : "hide" ](); if(callback) callback.apply(this, arguments); }); }, heightHide: function(animated, callback) { if (animated) { this.animate({ height: "hide" }, animated, callback); } else { this.hide(); if (callback) this.each(callback); } }, prepareBranches: function(settings) { if (!settings.prerendered) { // mark last tree items this.filter(":last-child:not(ul)").addClass(CLASSES.last); // collapse whole tree, or only those marked as closed, anyway except those marked as open this.filter((settings.collapsed ? "" : "." + CLASSES.closed) + ":not(." + CLASSES.open + ")").find(">ul").hide(); } // return all items with sublists return this.filter(":has(>ul)"); }, applyClasses: function(settings, toggler) { // TODO use event delegation this.filter(":has(>ul):not(:has(>a))").find(">span").unbind("click.treeview").bind("click.treeview", function(event) { // don't handle click events on children, eg. checkboxes if ( this == event.target ) toggler.apply($(this).next()); }).add( $("a", this) ).hoverClass(); if (!settings.prerendered) { // handle closed ones first this.filter(":has(>ul:hidden)") .addClass(CLASSES.expandable) .replaceClass(CLASSES.last, CLASSES.lastExpandable); // handle open ones this.not(":has(>ul:hidden)") .addClass(CLASSES.collapsable) .replaceClass(CLASSES.last, CLASSES.lastCollapsable); // create hitarea if not present var hitarea = this.find("div." + CLASSES.hitarea); if (!hitarea.length) hitarea = this.prepend("
        ").find("div." + CLASSES.hitarea); hitarea.removeClass().addClass(CLASSES.hitarea).each(function() { var classes = ""; $.each($(this).parent().attr("class").split(" "), function() { classes += this + "-hitarea "; }); $(this).addClass( classes ); }) } // apply event to hitarea this.find("div." + CLASSES.hitarea).click( toggler ); }, treeview: function(settings) { settings = $.extend({ cookieId: "treeview" }, settings); if ( settings.toggle ) { var callback = settings.toggle; settings.toggle = function() { return callback.apply($(this).parent()[0], arguments); }; } // factory for treecontroller function treeController(tree, control) { // factory for click handlers function handler(filter) { return function() { // reuse toggle event handler, applying the elements to toggle // start searching for all hitareas toggler.apply( $("div." + CLASSES.hitarea, tree).filter(function() { // for plain toggle, no filter is provided, otherwise we need to check the parent element return filter ? $(this).parent("." + filter).length : true; }) ); return false; }; } // click on first element to collapse tree $("a:eq(0)", control).click( handler(CLASSES.collapsable) ); // click on second to expand tree $("a:eq(1)", control).click( handler(CLASSES.expandable) ); // click on third to toggle tree $("a:eq(2)", control).click( handler() ); } // handle toggle event function toggler() { $(this) .parent() // swap classes for hitarea .find(">.hitarea") .swapClass( CLASSES.collapsableHitarea, CLASSES.expandableHitarea ) .swapClass( CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea ) .end() // swap classes for parent li .swapClass( CLASSES.collapsable, CLASSES.expandable ) .swapClass( CLASSES.lastCollapsable, CLASSES.lastExpandable ) // find child lists .find( ">ul" ) // toggle them .heightToggle( settings.animated, settings.toggle ); if ( settings.unique ) { $(this).parent() .siblings() // swap classes for hitarea .find(">.hitarea") .replaceClass( CLASSES.collapsableHitarea, CLASSES.expandableHitarea ) .replaceClass( CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea ) .end() .replaceClass( CLASSES.collapsable, CLASSES.expandable ) .replaceClass( CLASSES.lastCollapsable, CLASSES.lastExpandable ) .find( ">ul" ) .heightHide( settings.animated, settings.toggle ); } } this.data("toggler", toggler); function serialize() { function binary(arg) { return arg ? 1 : 0; } var data = []; branches.each(function(i, e) { data[i] = $(e).is(":has(>ul:visible)") ? 1 : 0; }); $.cookie(settings.cookieId, data.join(""), settings.cookieOptions ); } function deserialize() { var stored = $.cookie(settings.cookieId); if ( stored ) { var data = stored.split(""); branches.each(function(i, e) { $(e).find(">ul")[ parseInt(data[i]) ? "show" : "hide" ](); }); } } // add treeview class to activate styles this.addClass("treeview"); // prepare branches and find all tree items with child lists var branches = this.find("li").prepareBranches(settings); switch(settings.persist) { case "cookie": var toggleCallback = settings.toggle; settings.toggle = function() { serialize(); if (toggleCallback) { toggleCallback.apply(this, arguments); } }; deserialize(); break; case "location": var current = this.find("a").filter(function() { return this.href.toLowerCase() == location.href.toLowerCase(); }); if ( current.length ) { // TODO update the open/closed classes var items = current.addClass("selected").parents("ul, li").add( current.next() ).show(); if (settings.prerendered) { // if prerendered is on, replicate the basic class swapping items.filter("li") .swapClass( CLASSES.collapsable, CLASSES.expandable ) .swapClass( CLASSES.lastCollapsable, CLASSES.lastExpandable ) .find(">.hitarea") .swapClass( CLASSES.collapsableHitarea, CLASSES.expandableHitarea ) .swapClass( CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea ); } } break; } branches.applyClasses(settings, toggler); // if control option is set, create the treecontroller and show it if ( settings.control ) { treeController(this, settings.control); $(settings.control).show(); } return this; } }); // classes used by the plugin // need to be styled via external stylesheet, see first example $.treeview = {}; var CLASSES = ($.treeview.classes = { open: "open", closed: "closed", expandable: "expandable", expandableHitarea: "expandable-hitarea", lastExpandableHitarea: "lastExpandable-hitarea", collapsable: "collapsable", collapsableHitarea: "collapsable-hitarea", lastCollapsableHitarea: "lastCollapsable-hitarea", lastCollapsable: "lastCollapsable", lastExpandable: "lastExpandable", last: "last", hitarea: "hitarea" }); })(jQuery); aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/methodset.html000066400000000000000000000005431300374646400236620ustar00rootroot00000000000000 aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/opensearch.xml000066400000000000000000000007471300374646400236570ustar00rootroot00000000000000 godoc The Go Programming Language go golang /favicon.ico UTF-8 UTF-8 aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/package.txt000066400000000000000000000057131300374646400231400ustar00rootroot00000000000000{{$info := .}}{{$filtered := .IsFiltered}}{{/* --------------------------------------- */}}{{if $filtered}}{{range .PAst}}{{range .Decls}}{{node $info .}} {{end}}{{end}}{{else}}{{with .PAst}}{{range $filename, $ast := .}}{{$filename}}: {{node $ $ast}}{{end}}{{end}}{{end}}{{/* --------------------------------------- */}}{{if and $filtered (not (or .PDoc .PAst))}}No match found. {{end}}{{with .PDoc}}{{if $.IsMain}}COMMAND DOCUMENTATION {{comment_text .Doc " " "\t"}} {{else}}{{if not $filtered}}PACKAGE DOCUMENTATION package {{.Name}} import "{{.ImportPath}}" {{comment_text .Doc " " "\t"}} {{example_text $ "" " "}}{{end}}{{/* --------------------------------------- */}}{{with .Consts}}{{if not $filtered}}CONSTANTS {{end}}{{range .}}{{node $ .Decl}} {{comment_text .Doc " " "\t"}} {{end}}{{end}}{{/* --------------------------------------- */}}{{with .Vars}}{{if not $filtered}}VARIABLES {{end}}{{range .}}{{node $ .Decl}} {{comment_text .Doc " " "\t"}} {{end}}{{end}}{{/* --------------------------------------- */}}{{with .Funcs}}{{if not $filtered}}FUNCTIONS {{end}}{{range .}}{{node $ .Decl}} {{comment_text .Doc " " "\t"}} {{example_text $ .Name " "}}{{end}}{{end}}{{/* --------------------------------------- */}}{{with .Types}}{{if not $filtered}}TYPES {{end}}{{range .}}{{$tname := .Name}}{{node $ .Decl}} {{comment_text .Doc " " "\t"}} {{/* --------------------------------------- */}}{{if .Consts}}{{range .Consts}}{{node $ .Decl}} {{comment_text .Doc " " "\t"}} {{end}}{{end}}{{/* --------------------------------------- */}}{{if .Vars}}{{range .Vars}}{{node $ .Decl}} {{comment_text .Doc " " "\t"}} {{range $name := .Names}}{{example_text $ $name " "}}{{end}}{{end}}{{end}}{{/* --------------------------------------- */}}{{if .Funcs}}{{range .Funcs}}{{node $ .Decl}} {{comment_text .Doc " " "\t"}} {{example_text $ .Name " "}}{{end}}{{end}}{{/* --------------------------------------- */}}{{if .Methods}}{{range .Methods}}{{node $ .Decl}} {{comment_text .Doc " " "\t"}} {{$name := printf "%s_%s" $tname .Name}}{{example_text $ $name " "}}{{end}}{{end}}{{/* --------------------------------------- */}}{{end}}{{end}}{{/* --------------------------------------- */}}{{if and $filtered (not (or .Consts (or .Vars (or .Funcs .Types))))}}No match found. {{end}}{{/* --------------------------------------- */}}{{end}}{{/* --------------------------------------- */}}{{with $.Notes}} {{range $marker, $content := .}} {{$marker}}S {{range $content}}{{comment_text .Body " " "\t"}} {{end}}{{end}}{{end}}{{end}}{{/* --------------------------------------- */}}{{if not $filtered}}{{with .Dirs}}SUBDIRECTORIES {{if $.DirFlat}}{{range .List}}{{if .HasPkg}} {{.Path}}{{end}}{{end}} {{else}}{{range .List}} {{repeat `. ` .Depth}}{{.Name}}{{end}} {{end}}{{end}}{{/* --------------------------------------- */}}{{end}}{{/* Make sure there is no newline at the end of this file. perl -i -pe 'chomp if eof' package.txt */}} aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/package_default.html000066400000000000000000000162021300374646400247640ustar00rootroot00000000000000 {{with .PDoc}} {{if $.IsMain}} {{/* command documentation */}} {{comment_html .Doc}} {{else}} {{/* package documentation */}}
        import "github.com/aws/aws-sdk-go/{{html .ImportPath}}"
        Overview
        Index
        {{if $.Examples}}
        Examples
        {{end}}

        Overview ▾

        {{comment_html .Doc}}
        {{example_html $ ""}}

        Index ▾

        {{if .Consts}}
        Constants
        {{end}} {{if .Vars}}
        Variables
        {{end}} {{range .Funcs}} {{$name_html := html .Name}}
        {{node_html $ .Decl false | sanitize}}
        {{end}} {{range .Types}} {{$tname_html := html .Name}}
        type {{$tname_html}}
        {{range .Funcs}} {{$name_html := html .Name}}
            {{node_html $ .Decl false | sanitize}}
        {{end}} {{range .Methods}} {{$name_html := html .Name}}
            {{node_html $ .Decl false | sanitize}}
        {{end}} {{end}} {{if $.Notes}} {{range $marker, $item := $.Notes}}
        {{noteTitle $marker | html}}s
        {{end}} {{end}}
        {{if $.Examples}}

        Examples

        {{range $.Examples}}
        {{example_name .Name}}
        {{end}}
        {{end}} {{with .Filenames}}

        Package files

        {{range .}} {{.|filename|html}} {{end}}

        {{end}}
        {{with .Consts}}

        Constants

        {{range .}}
        {{node_html $ .Decl true}}
        {{comment_html .Doc}} {{end}} {{end}} {{with .Vars}}

        Variables

        {{range .}}
        {{node_html $ .Decl true}}
        {{comment_html .Doc}} {{end}} {{end}} {{range .Funcs}} {{/* Name is a string - no need for FSet */}} {{$name_html := html .Name}}

        func {{$name_html}}

        {{node_html $ .Decl true}}
        {{comment_html .Doc}} {{example_html $ .Name}} {{callgraph_html $ "" .Name}} {{end}} {{range .Types}} {{$tname := .Name}} {{$tname_html := html .Name}}

        type {{$tname_html}}

        {{node_html $ .Decl true}}
        {{comment_html .Doc}} {{range .Consts}}
        {{node_html $ .Decl true}}
        {{comment_html .Doc}} {{end}} {{range .Vars}}
        {{node_html $ .Decl true}}
        {{comment_html .Doc}} {{end}} {{example_html $ $tname}} {{implements_html $ $tname}} {{methodset_html $ $tname}} {{range .Funcs}} {{$name_html := html .Name}}

        func {{$name_html}}

        {{node_html $ .Decl true}}
        {{comment_html .Doc}} {{example_html $ .Name}} {{callgraph_html $ "" .Name}} {{end}} {{range .Methods}} {{$name_html := html .Name}}

        func ({{html .Recv}}) {{$name_html}}

        {{node_html $ .Decl true}}
        {{comment_html .Doc}} {{$name := printf "%s_%s" $tname .Name}} {{example_html $ $name}} {{callgraph_html $ .Recv .Name}} {{end}} {{end}} {{end}} {{with $.Notes}} {{range $marker, $content := .}}

        {{noteTitle $marker | html}}s

          {{range .}}
        • {{html .Body}}
        • {{end}}
        {{end}} {{end}} {{end}} {{with .PAst}} {{range $filename, $ast := .}} {{$filename|filename|html}}:
        {{node_html $ $ast false}}
        {{end}} {{end}} {{with .Dirs}} {{if eq $.Dirname "/src"}}

        Standard library

        {{end}} {{end}} aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/package_service.html000066400000000000000000000177031300374646400250070ustar00rootroot00000000000000 {{with .PDoc}} {{if $.IsMain}} {{/* command documentation */}} {{comment_html .Doc}} {{else}} {{/* package documentation */}}
        import "github.com/aws/aws-sdk-go/{{html .ImportPath}}"
        Overview
        {{if .Consts}}
        Constants
        {{end}} {{if $.Examples}}
        Examples
        {{end}}

        Overview ▾

        {{comment_html .Doc}}

        {{if ne $.IfaceLink ""}} The stub package, {{$.PDoc.Name}}iface, can be used to provide alternative implementations of service clients, such as mocking the client for testing. {{end}}

        {{example_html $ ""}}

        Operations ▾

        {{range .Funcs}} {{$name_html := html .Name}}
        {{node_html $ .Decl false | sanitize}}
        {{end}} {{range .Types}} {{$tname_html := html .Name}} {{range .Funcs}} {{$name_html := html .Name}}
        {{node_html $ .Decl false | sanitize}}
        {{end}} {{range .Methods}} {{if (and (ne .Name "String") (ne .Name "GoString")) }} {{if (ne .Name "Validate") }} {{$name_html := html .Name}}
        {{node_html $ .Decl false | sanitize}}
        {{end}} {{end}} {{end}} {{end}} {{if $.Notes}} {{range $marker, $item := $.Notes}}
        {{noteTitle $marker | html}}s
        {{end}} {{end}}

        Types ▾

        {{if .Vars}}
        Variables
        {{end}} {{range .Types}} {{$tname_html := html .Name}}
        type {{$tname_html}}
        {{end}}
        {{if $.Examples}}

        Examples ▾

        {{range $.Examples}}
        {{example_name .Name}}
        {{end}}
        {{end}} {{with .Consts}}

        Constants

        {{range .}}
        {{node_html $ .Decl true}}
        {{comment_html .Doc}} {{end}} {{end}} {{with .Vars}}

        Variables

        {{range .}}
        {{node_html $ .Decl true}}
        {{comment_html .Doc}} {{end}} {{end}} {{range .Funcs}} {{/* Name is a string - no need for FSet */}} {{$name_html := html .Name}}

        func {{$name_html}}

        {{node_html $ .Decl true}}
        {{comment_html .Doc}} {{example_html $ .Name}} {{callgraph_html $ "" .Name}} {{end}} {{range .Types}} {{$tname := .Name}} {{$tname_html := html .Name}}

        type {{$tname_html}}

        {{node_html $ .Decl true}}
        {{comment_html .Doc}} {{range .Consts}}
        {{node_html $ .Decl true}}
        {{comment_html .Doc}} {{end}} {{range .Vars}}
        {{node_html $ .Decl true}}
        {{comment_html .Doc}} {{end}} {{example_html $ $tname}} {{implements_html $ $tname}} {{methodset_html $ $tname}} {{range .Funcs}} {{$name_html := html .Name}}

        func {{$name_html}}

        {{node_html $ .Decl true}}
        {{comment_html .Doc}} {{example_html $ .Name}} {{callgraph_html $ "" .Name}} {{end}} {{range .Methods}} {{$name_html := html .Name}}

        func ({{html .Recv}}) {{$name_html}}

        {{node_html $ .Decl true}}
        {{comment_html .Doc}} {{$name := printf "%s_%s" $tname .Name}} {{example_html $ $name}} {{callgraph_html $ .Recv .Name}} {{end}} {{end}} {{end}} {{with $.Notes}} {{range $marker, $content := .}}

        {{noteTitle $marker | html}}s

          {{range .}}
        • {{html .Body}}
        • {{end}}
        {{end}} {{end}} {{end}} {{with .PAst}} {{range $filename, $ast := .}} {{$filename|filename|html}}:
        {{node_html $ $ast false}}
        {{end}} {{end}} aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/pkglist.html000066400000000000000000000016451300374646400233470ustar00rootroot00000000000000
        {{range .List}} {{end}}
        aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/search.html000066400000000000000000000007121300374646400231310ustar00rootroot00000000000000 {{with .Alert}}

        {{html .}}

        {{end}} {{with .Alt}}

        Did you mean: {{range .Alts}} {{html .}} {{end}}

        {{end}} aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/search.txt000066400000000000000000000026131300374646400230060ustar00rootroot00000000000000QUERY {{.Query}} {{with .Alert}}{{.}} {{end}}{{/* .Alert */}}{{/* --------------------------------------- */}}{{with .Alt}}DID YOU MEAN {{range .Alts}} {{.}} {{end}} {{end}}{{/* .Alt */}}{{/* --------------------------------------- */}}{{with .Pak}}PACKAGE {{$.Query}} {{range .}} {{pkgLink .Pak.Path}} {{end}} {{end}}{{/* .Pak */}}{{/* --------------------------------------- */}}{{range $key, $val := .Idents}}{{if $val}}{{$key.Name}} {{range $val}} {{.Path}}.{{.Name}} {{end}} {{end}}{{end}}{{/* .Idents */}}{{/* --------------------------------------- */}}{{with .Hit}}{{with .Decls}}PACKAGE-LEVEL DECLARATIONS {{range .}}package {{.Pak.Name}} {{range $file := .Files}}{{range .Groups}}{{range .}} {{srcLink $file.File.Path}}:{{infoLine .}}{{end}} {{end}}{{end}}{{/* .Files */}} {{end}}{{end}}{{/* .Decls */}}{{/* --------------------------------------- */}}{{with .Others}}LOCAL DECLARATIONS AND USES {{range .}}package {{.Pak.Name}} {{range $file := .Files}}{{range .Groups}}{{range .}} {{srcLink $file.File.Path}}:{{infoLine .}} {{end}}{{end}}{{end}}{{/* .Files */}} {{end}}{{end}}{{/* .Others */}}{{end}}{{/* .Hit */}}{{/* --------------------------------------- */}}{{if .Textual}}{{if .Complete}}{{.Found}} TEXTUAL OCCURRENCES{{else}}MORE THAN {{.Found}} TEXTUAL OCCURRENCES{{end}} {{range .Textual}}{{len .Lines}} {{srcLink .Filename}} {{end}}{{if not .Complete}}... ... {{end}}{{end}} aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/searchcode.html000066400000000000000000000033341300374646400237670ustar00rootroot00000000000000 {{$query_url := urlquery .Query}} {{if not .Idents}} {{with .Pak}}

        Package {{html $.Query}}

        {{range .}} {{$pkg_html := pkgLink .Pak.Path | html}} {{end}}
        {{$pkg_html}}

        {{end}} {{end}} {{with .Hit}} {{with .Decls}}

        Package-level declarations

        {{range .}} {{$pkg_html := pkgLink .Pak.Path | html}}

        package {{html .Pak.Name}}

        {{range .Files}} {{$file := .File.Path}} {{range .Groups}} {{range .}} {{$line := infoLine .}} {{$file}}:{{$line}} {{infoSnippet_html .}} {{end}} {{end}} {{end}} {{end}} {{end}} {{with .Others}}

        Local declarations and uses

        {{range .}} {{$pkg_html := pkgLink .Pak.Path | html}}

        package {{html .Pak.Name}}

        {{range .Files}} {{$file := .File.Path}} {{$file}} {{range .Groups}} {{end}}
        {{index . 0 | infoKind_html}} {{range .}} {{$line := infoLine .}} {{$line}} {{end}}
        {{end}} {{end}} {{end}} {{end}} aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/searchdoc.html000066400000000000000000000012671300374646400236250ustar00rootroot00000000000000 {{range $key, $val := .Idents}} {{if $val}}

        {{$key.Name}}

        {{range $val}} {{$pkg_html := pkgLink .Path | html}} {{if eq "Packages" $key.Name}} {{html .Path}} {{else}} {{$doc_html := docLink .Path .Name| html}} {{html .Package}}.{{.Name}} {{end}} {{if .Doc}}

        {{comment_html .Doc}}

        {{else}}

        No documentation available

        {{end}} {{end}} {{end}} {{end}} aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/searchtxt.html000066400000000000000000000020671300374646400236760ustar00rootroot00000000000000 {{$query_url := urlquery .Query}} {{with .Textual}} {{if $.Complete}}

        {{html $.Found}} textual occurrences

        {{else}}

        More than {{html $.Found}} textual occurrences

        Not all files or lines containing "{{html $.Query}}" are shown.

        {{end}}

        {{range .}} {{$file := .Filename}} {{end}} {{if not $.Complete}} {{end}}
        {{$file}}: {{len .Lines}} {{range .Lines}} {{html .}} {{end}} {{if not $.Complete}} ... {{end}}
        ...

        {{end}} aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/style.css000066400000000000000000000360751300374646400226630ustar00rootroot00000000000000.container-body { width: 100%; overflow:hidden; } a > img { max-height:70%; float:left; padding-left:22px; padding-top:8px; } body { margin: 0; font-family: HelveticaNeueBold,Helvetica,Helvetica,Arial,sans-serif; font-size: 16px; background-color: #fff; line-height: 1.3em; } pre, code { font-family: Menlo, monospace; font-size: 14px; } pre { line-height: 1.4em; overflow-x: auto; } pre .comment { color: #006600; } pre .highlight, pre .highlight-comment, pre .selection-highlight, pre .selection-highlight-comment { background: #FFFF00; } pre .selection, pre .selection-comment { background: #FF9632; } pre .ln { color: #999; } body { color: #222; } a, .exampleHeading .text { color: #375EAB; text-decoration: none; } a:hover, .exampleHeading .text:hover { text-decoration: underline; } p, li { max-width: 800px; word-wrap: break-word; } p, pre, ul, ol { display: inherit; margin: 20px; } .packages { margin: 0px; text-align: left; width: 100%; } pre { background: #EFEFEF; padding: 10px; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; } .title { font-family: HelveticaNeueBold,Helvetica,Helvetica,Arial,sans-serif; text-shadow: rgba(0,0,0,0.8) 0 -1px 0; color: #fff; -webkit-font-smoothing: antialiased; margin:20px; display:inherit; } h1, h2, h3, h4, .rootHeading { margin: 20px 0 20px; padding: 0; color: #375EAB; font-weight: bold; } h1 { font-size: 28px; line-height: 1; } h2 { font-size: 20px; background: #E0EBF5; padding: 8px; line-height: 1.25; font-weight: normal; } h2 a { font-weight: bold; } h3 { font-size: 20px; } h3, h4 { margin: 20px 5px; } h4 { font-size: 16px; } .rootHeading { font-size: 20px; margin: 0; } dl { margin: 20px; } dd { margin: 0 0 0 20px; } dl, dd { font-size: 14px; } div#nav table td { vertical-align: top; } div#mobile_container { display:inline-block; font-size: 15px; margin-left:auto; margin-right:auto; line-height:100%; } div#mobile-nav { display:none; } div#logo_container { height:100%; display:table-cell; float:left; vertical-align:middle; } div#mobile_only { display:none; } div#fixed { position: fixed; width: 100%; height: 100%; } div .top_link { float:right; overflow:auto; display:inline; padding-top:2px; } .pkg-dir { width: 20%; max-width:400px; min-width:325px; height: calc(100% - 64px); position: relative; background: #F6F6F6; overflow:hidden; float: left; display: inline-block; box-sizing: border-box; border-top-style:hidden; border-left-style:hidden; border-bottom-style:hidden; } .pkg-dir table { border-collapse: collapse; border-spacing: 0; } .pkg-name { padding-right: 20px; } .alert { color: #AA0000; } .top-heading { float: left; padding: 21px 0; font-size: 20px; font-weight: normal; } .top-heading a { color: #222; text-decoration: none; } div#topbar { background: #444; height: 64px; overflow: hidden; position: relative; } div#page { box-sizing: border-box; height:calc(100% - 64px); overflow:auto; } div#page > .container, div#topbar > .container { text-align: left; padding: 0 20px; } div#topbar > .container, div#page > .container { } div#page.wide > .container, div#topbar.wide > .container { } div#plusone { float: right; clear: right; margin-top: 5px; } div#footer { text-align: center; color: #666; font-size: 14px; margin: 40px 0; } div#menu > a, div#menu > input, div#learn .buttons a, div.play .buttons a, div#blog .read a, #menu-button { padding: 10px; text-decoration: none; font-size: 16px; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; } div#playground .buttons a, div#menu > a, div#menu > input, #menu-button { border: 1px solid #375EAB; } div#playground .buttons a, div#menu > a, #menu-button { color: white; background: #375EAB; } #playgroundButton.active { background: white; color: #375EAB; } a#start, div#learn .buttons a, div.play .buttons a, div#blog .read a { color: #222; border: 1px solid #375EAB; background: #E0EBF5; } .download { width: 150px; } div#menu { display: inline; float: right; padding: 10px; white-space: nowrap; } div#menu.menu-visible { max-height: 500px; } div#menu > a, #menu-button { margin: 10px 2px; padding: 10px; } div#menu > input { position: relative; top: 1px; width: 140px; background: white; color: #222; box-sizing: border-box; } div#menu > input.inactive { color: #999; } #menu-button { display: none; position: absolute; right: 5px; top: 0; margin-right: 5px; } #menu-button-arrow { display: inline-block; } .vertical-flip { transform: rotate(-180deg); } div.left { float: left; clear: left; margin-right: 2.5%; } div.right { float: right; clear: right; margin-left: 2.5%; } div.left, div.right { width: 45%; } div#learn, div#about { padding-top: 20px; } div#learn h2, div#about { margin: 0; } div#about { font-size: 20px; margin: 0 auto 30px; } div#gopher { background-position: center top; height: 155px; } a#start { display: block; padding: 10px; text-align: center; text-decoration: none; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; } a#start .big { display: block; font-weight: bold; font-size: 20px; } a#start .desc { display: block; font-size: 14px; font-weight: normal; margin-top: 5px; } div#learn .popout { float: right; display: block; cursor: pointer; font-size: 12px; background-position: right top; padding: 5px 27px; } div#learn pre, div#learn textarea { padding: 0; margin: 0; font-family: Menlo, monospace; font-size: 14px; } div#learn .input { padding: 10px; margin-top: 10px; height: 150px; -webkit-border-top-left-radius: 5px; -webkit-border-top-right-radius: 5px; -moz-border-radius-topleft: 5px; -moz-border-radius-topright: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; } div#learn .input textarea { width: 100%; height: 100%; border: none; outline: none; resize: none; } div#learn .output { border-top: none !important; padding: 10px; height: 59px; overflow: auto; -webkit-border-bottom-right-radius: 5px; -webkit-border-bottom-left-radius: 5px; -moz-border-radius-bottomright: 5px; -moz-border-radius-bottomleft: 5px; border-bottom-right-radius: 5px; border-bottom-left-radius: 5px; } div#learn .output pre { padding: 0; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; } div#learn .input, div#learn .input textarea, div#learn .output, div#learn .output pre { background: #FFFFD8; } div#learn .input, div#learn .output { border: 1px solid #375EAB; } div#learn .buttons { float: right; padding: 20px 0 10px 0; text-align: right; } div#learn .buttons a { height: 16px; margin-left: 5px; padding: 10px; } div#learn .toys { margin-top: 8px; } div#learn .toys select { border: 1px solid #375EAB; margin: 0; } div#learn .output .exit { display: none; } div#video { max-width: 100%; } div#blog, div#video { margin-top: 40px; } div#blog > a, div#blog > div, div#blog > h2, div#video > a, div#video > div, div#video > h2 { margin-bottom: 10px; } div#blog .title, div#video .title { display: block; font-size: 20px; } div#blog .when { color: #666; font-size: 14px; } div#blog .read { text-align: right; } .toggleButton { cursor: pointer; } .toggle .collapsed { display: block; } .toggle .expanded { display: none; } .toggleVisible .collapsed { display: none; } .toggleVisible .expanded { display: block; } table.codetable { margin-left: auto; margin-right: auto; border-style: none; } table.codetable td { padding-right: 10px; } hr { border-style: none; border-top: 1px solid black; } img.gopher { float: right; margin-left: 10px; margin-bottom: 10px; z-index: -1; } h2 { clear: right; } /* example and drop-down playground */ div.play { padding: 0 20px 40px 20px; } div.play pre, div.play textarea, div.play .lines { padding: 0; margin: 0; font-family: Menlo, monospace; font-size: 14px; } div.play .input { padding: 10px; margin-top: 10px; -webkit-border-top-left-radius: 5px; -webkit-border-top-right-radius: 5px; -moz-border-radius-topleft: 5px; -moz-border-radius-topright: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; overflow: hidden; } div.play .input textarea { width: 100%; height: 100%; border: none; outline: none; resize: none; overflow: hidden; } div#playground .input textarea { overflow: auto; resize: auto; } div.play .output { border-top: none !important; padding: 10px; max-height: 200px; overflow: auto; -webkit-border-bottom-right-radius: 5px; -webkit-border-bottom-left-radius: 5px; -moz-border-radius-bottomright: 5px; -moz-border-radius-bottomleft: 5px; border-bottom-right-radius: 5px; border-bottom-left-radius: 5px; } div.play .output pre { padding: 0; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; } div.play .input, div.play .input textarea, div.play .output, div.play .output pre { background: #FFFFD8; } div.play .input, div.play .output { border: 1px solid #375EAB; } div.play .buttons { float: right; padding: 20px 0 10px 0; text-align: right; } div.play .buttons a { height: 16px; margin-left: 5px; padding: 10px; cursor: pointer; } .output .stderr { color: #933; } .output .system { color: #999; } /* drop-down playground */ #playgroundButton, div#playground { /* start hidden; revealed by javascript */ display: none; } div#playground { position: absolute; top: 63px; right: 20px; padding: 0 10px 10px 10px; z-index: 1; text-align: left; background: #E0EBF5; border: 1px solid #B0BBC5; border-top: none; -webkit-border-bottom-left-radius: 5px; -webkit-border-bottom-right-radius: 5px; -moz-border-radius-bottomleft: 5px; -moz-border-radius-bottomright: 5px; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; } div#playground .code { width: 520px; height: 200px; } div#playground .output { height: 100px; } /* Inline runnable snippets (play.js/initPlayground) */ #content .code pre, #content .playground pre, #content .output pre { margin: 0; padding: 0; background: none; border: none; outline: 0px solid transparent; overflow: auto; } #content .playground .number, #content .code .number { color: #999; } #content .code, #content .playground, #content .output { width: auto; margin: 20px; padding: 10px; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; } #content .code, #content .playground { background: #e9e9e9; } #content .output { background: #202020; } #content .output .stdout, #content .output pre { color: #e6e6e6; } #content .output .stderr, #content .output .error { color: rgb(244, 74, 63); } #content .output .system, #content .output .exit { color: rgb(255, 209, 77) } #content .buttons { position: relative; float: right; top: -50px; right: 30px; } #content .output .buttons { top: -60px; right: 0; height: 0; } #content .buttons .kill { display: none; visibility: hidden; } a.error { font-weight: bold; color: white; background-color: darkred; border-bottom-left-radius: 4px; border-bottom-right-radius: 4px; border-top-left-radius: 4px; border-top-right-radius: 4px; padding: 2px 4px 2px 4px; /* TRBL */ } #heading-narrow { display: none; } .downloading { background: #F9F9BE; padding: 10px; text-align: center; border-radius: 5px; } @media (max-width: 930px) { #heading-wide { display: none; } #heading-narrow { display: block; } .pkg-dir { display: none; } .title { margin:5px; } div#page { box-sizing: border-box; width:100%; height:calc(100% - 64px); float:right; display:inline-block; overflow:auto } div#menu { display: none; } div#topbar { height: 30px; padding: 10px; } a > img { max-height:100%; float:left; padding-left:10px; padding-top:2px; } div#mobile-nav { display:inline-block; float:right; border-bottom: 13px double white; border-top: 4px solid white; content:""; height: 5px; width:30px; } div#mobile_container { display:inline-block; width: 100%; padding-left:20px; padding-top:10px; } } @media (max-width: 760px) { .container .left, .container .right { width: auto; float: none; } div#about { max-width: 500px; text-align: center; } .title { margin:5px; } .pkg-dir { display: none; } div#page { box-sizing: border-box; width:100%; height:calc(100% - 64px); float:right; display:inline-block; overflow:auto } div#menu { display: none; } div#topbar { height: 30px; padding: 10px; } div#mobile-nav { display:inline-block; float:right; border-bottom: 13px double white; border-top: 4px solid white; content:""; height: 5px; width:30px; } } @media (min-width: 700px) and (max-width: 1000px) { div#menu > a { margin: 5px 0; font-size: 14px; } div#menu > input { font-size: 14px; } .title { margin:5px; } .pkg-dir { display: none; } div#page { box-sizing: border-box; width:100%; height:calc(100% - 64px); float:right; display:inline-block; overflow:auto } div#menu { display: none; } div#topbar { height: 30px; padding: 10px; } div#mobile-nav { display:inline-block; float:right; border-bottom: 13px double white; border-top: 4px solid white; content:""; height: 5px; width:30px; } } @media (max-width: 700px) { body { font-size: 15px; } pre, code { font-size: 13px; } div#page > .container { padding: 0 10px; } div#topbar { padding: 10px; } div#topbar > .container { padding: 0; } #heading-wide { display: block; } #heading-narrow { display: none; } .top-heading { float: none; display: inline-block; padding: 12px; } div#menu { padding: 0; min-width: 0; text-align: left; float: left; } div#menu > a, div#menu > input { display: block; margin-left: 0; margin-right: 0; } div#menu > input { width: 100%; } #menu-button { display: inline-block; } p, pre, ul, ol { margin: 10px; } .pkg-synopsis { display: none; } img.gopher { display: none; } .pkg-dir { display: none; } .title { margin:5px; } div#page { box-sizing: border-box; width:100%; height:calc(100% - 64px); float:right; display:inline-block; overflow:auto } div#menu { display: none; } div#topbar { height: 30px; padding: 10px; } div#mobile-nav { display:inline-block; float:right; border-bottom: 13px double white; border-top: 4px solid white; content:""; height: 5px; width:30px; } } @media (max-width: 480px) { #heading-wide { display: none; } #heading-narrow { display: block; } .pkg-dir { display: none; } .title { margin:5px; } div#page { box-sizing: border-box; width:100%; height:calc(100% - 64px); float:right; display:inline-block; overflow:auto } div#menu { display: none; } div#topbar { height: 30px; padding: 10px; } div#mobile-nav { display:inline-block; float:right; border-bottom: 13px double white; border-top: 4px solid white; content:""; height: 5px; width:30px; } } @media print { pre { background: #FFF; border: 1px solid #BBB; white-space: pre-wrap; } } aws-sdk-go-1.4.22/doc-src/aws-godoc/templates/user_guide_example.html000066400000000000000000000056541300374646400255440ustar00rootroot00000000000000

        AWS SDK for Go

        aws-sdk-go is the official AWS SDK for the Go programming language. Checkout our release notes for information about the latest bug fixes, updates, and features added to the SDK.

        Installing

        If you are using Go 1.5 with the GO15VENDOREXPERIMENT=1 vendoring flag you can use the following to get the SDK as the SDK's runtime dependencies are vendored in the vendor folder.

         $ go get -u github.com/aws/aws-sdk-go 

        Otherwise you'll need to tell Go to get the SDK and all of its dependencies.

         $ go get -u github.com/aws/aws-sdk-go/...  

        Configuring Credentials

        Before using the SDK, ensure that you've configured credentials. The best way to configure credentials on a development machine is to use the ~/.aws/credentials file, which might look like:

        				[default]
        				aws_access_key_id = AKID1234567890
        				aws_secret_access_key = MY-SECRET-KEY
        			

        You can learn more about the credentials file from this blog post. Alternatively, you can set the following environment variables:

        				AWS_ACCESS_KEY_ID=AKID1234567890
        				AWS_SECRET_ACCESS_KEY=MY-SECRET-KEY
        			

        AWS CLI config file (~/aws/config)

        The AWS SDK for Go does not support the AWS CLI's config file. The SDK will not use any contents from this file. The SDK only supports the shared credentials file (~/aws/credentials). #384 tracks this feature request discussion.

        Using the Go SDK

        To use a service in the SDK, create a service variable by calling the New() function. Once you have a service client, you can call API operations which each return response data and a possible error. To list a set of instance IDs from EC2, you could run:

        				package main
        
        				import (
        						"fmt"
        
        						"github.com/aws/aws-sdk-go/aws"
        						"github.com/aws/aws-sdk-go/aws/session"
        						"github.com/aws/aws-sdk-go/service/ec2"
        				)
        
        				func main() {
        						// Create an EC2 service object in the "us-west-2" region
        						// Note that you can also configure your region globally by
        						// exporting the AWS_REGION environment variable
        						svc := ec2.New(session.New(), &aws.Config{Region: aws.String("us-west-2")})
        
        						// Call the DescribeInstances Operation
        						resp, err := svc.DescribeInstances(nil)
        						if err != nil {
        								panic(err)
        						}
        
        						// resp has all of the response data, pull out instance IDs:
        						fmt.Println("> Number of reservation sets: ", len(resp.Reservations))
        						for idx, res := range resp.Reservations {
        								fmt.Println("  > Number of instances: ", len(res.Instances))
        								for _, inst := range resp.Reservations[idx].Instances {
        										fmt.Println("    - Instance ID: ", *inst.InstanceId)
        								}
        						}
        				}
        			
        aws-sdk-go-1.4.22/doc-src/plugin/000077500000000000000000000000001300374646400164135ustar00rootroot00000000000000aws-sdk-go-1.4.22/doc-src/plugin/plugin.rb000066400000000000000000000143701300374646400202430ustar00rootroot00000000000000require 'yard' require 'yard-go' module GoLinksHelper def signature(obj, link = true, show_extras = true, full_attr_name = true) case obj when YARDGo::CodeObjects::FuncObject if link && obj.has_tag?(:service_operation) ret = signature_types(obj, !link) args = obj.parameters.map {|m| m[0].split(/\s+/).last }.join(", ") line = "#{obj.name}(#{args}) #{ret}" return link ? linkify(obj, line) : line end end super(obj, link, show_extras, full_attr_name) end def html_syntax_highlight(source, type = nil) src = super(source, type || :go) object.has_tag?(:service_operation) ? link_types(src) : src end end YARD::Templates::Helpers::HtmlHelper.send(:prepend, GoLinksHelper) YARD::Templates::Engine.register_template_path(File.dirname(__FILE__) + '/templates') YARD::Parser::SourceParser.after_parse_list do YARD::Registry.all(:struct).each do |obj| if obj.file =~ /\/?service\/(.+?)\/(service|api)\.go$/ obj.add_tag YARD::Tags::Tag.new(:service, $1) obj.groups = ["Constructor Functions", "Service Operations", "Request Methods", "Pagination Methods"] end end YARD::Registry.all(:method).each do |obj| if obj.file =~ /service\/.+?\/api\.go$/ && obj.scope == :instance if obj.name.to_s =~ /Pages$/ obj.group = "Pagination Methods" opname = obj.name.to_s.sub(/Pages$/, '') obj.docstring = <<-eof #{obj.name} iterates over the pages of a {#{opname} #{opname}()} operation, calling the `fn` function callback with the response data in each page. To stop iterating, return `false` from the function callback. @note This operation can generate multiple requests to a service. @example Iterating over at most 3 pages of a #{opname} operation pageNum := 0 err := client.#{obj.name}(params, func(page *#{obj.parent.parent.name}.#{obj.parameters[1][0].split("*").last}, lastPage bool) bool { pageNum++ fmt.Println(page) return pageNum <= 3 }) @see #{opname} eof obj.add_tag YARD::Tags::Tag.new(:paginator, '') elsif obj.name.to_s =~ /Request$/ obj.group = "Request Methods" obj.signature = obj.name.to_s obj.parameters = [] opname = obj.name.to_s.sub(/Request$/, '') obj.docstring = <<-eof #{obj.name} generates a {aws/request.Request} object representing the client request for the {#{opname} #{opname}()} operation. The `output` return value can be used to capture response data after {aws/request.Request.Send Request.Send()} is called. Creating a request object using this method should be used when you want to inject custom logic into the request lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the {#{opname} service operation method} directly instead. @note You must call the {aws/request.Request.Send Send()} method on the returned request object in order to execute the request. @example Sending a request using the #{obj.name}() method req, resp := client.#{obj.name}(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) } eof obj.add_tag YARD::Tags::Tag.new(:request_method, '') else obj.group = "Service Operations" obj.add_tag YARD::Tags::Tag.new(:service_operation, '') if ex = obj.tag(:example) ex.name = "Calling the #{obj.name} operation" end end end end apply_docs end def apply_docs svc_pkg = YARD::Registry.at('service') return if svc_pkg.nil? pkgs = svc_pkg.children.select {|t| t.type == :package } pkgs.each do |pkg| svc = pkg.children.find {|t| t.has_tag?(:service) } ctor = P(svc, ".New") svc_name = ctor.source[/ServiceName:\s*"(.+?)",/, 1] api_ver = ctor.source[/APIVersion:\s*"(.+?)",/, 1] log.progress "Parsing service documentation for #{svc_name} (#{api_ver})" file = Dir.glob("models/apis/#{svc_name}/#{api_ver}/docs-2.json").sort.last next if file.nil? next if svc.nil? exmeth = svc.children.find {|s| s.has_tag?(:service_operation) } pkg.docstring += <<-eof @example Sending a request using the {#{svc.name}} client client := #{pkg.name}.New(nil) params := &#{pkg.name}.#{exmeth.parameters.first[0].split("*").last}{...} resp, err := client.#{exmeth.name}(params) @see #{svc.name} @version #{api_ver} eof ctor.docstring += <<-eof @example Constructing a client using default configuration client := #{pkg.name}.New(nil) @example Constructing a client with custom configuration config := aws.NewConfig().WithRegion("us-west-2") client := #{pkg.name}.New(config) eof json = JSON.parse(File.read(file)) if svc apply_doc(svc, json["service"]) end json["operations"].each do |op, doc| if doc && obj = svc.children.find {|t| t.name.to_s.downcase == op.downcase } apply_doc(obj, doc) end end json["shapes"].each do |shape, data| shape = shape_name(shape) if obj = pkg.children.find {|t| t.name.to_s.downcase == shape.downcase } apply_doc(obj, data["base"]) end data["refs"].each do |refname, doc| refshape, member = *refname.split("$") refshape = shape_name(refshape) if refobj = pkg.children.find {|t| t.name.to_s.downcase == refshape.downcase } if m = refobj.children.find {|t| t.name.to_s.downcase == member.downcase } apply_doc(m, doc || data["base"]) end end end if data["refs"] end end end def apply_doc(obj, doc) tags = obj.docstring.tags || [] obj.docstring = clean_docstring(doc) tags.each {|t| obj.docstring.add_tag(t) } end def shape_name(shape) shape.sub(/Request$/, "Input").sub(/Response$/, "Output") end def clean_docstring(docs) return nil unless docs docs = docs.gsub(//m, '') docs = docs.gsub(/.+?<\/fullname?>/m, '') docs = docs.gsub(/.+?<\/examples?>/m, '') docs = docs.gsub(/\s*<\/note>/m, '') docs = docs.gsub(/(.+?)<\/a>/, '\1') docs = docs.gsub(/(.+?)<\/note>/m) do text = $1.gsub(/<\/?p>/, '') "
        Note: #{text}
        " end docs = docs.gsub(/\{(.+?)\}/, '`{\1}`') docs = docs.gsub(/\s+/, ' ').strip docs == '' ? nil : docs end aws-sdk-go-1.4.22/doc-src/plugin/templates/000077500000000000000000000000001300374646400204115ustar00rootroot00000000000000aws-sdk-go-1.4.22/doc-src/plugin/templates/default/000077500000000000000000000000001300374646400220355ustar00rootroot00000000000000aws-sdk-go-1.4.22/doc-src/plugin/templates/default/layout/000077500000000000000000000000001300374646400233525ustar00rootroot00000000000000aws-sdk-go-1.4.22/doc-src/plugin/templates/default/layout/html/000077500000000000000000000000001300374646400243165ustar00rootroot00000000000000aws-sdk-go-1.4.22/doc-src/plugin/templates/default/module/000077500000000000000000000000001300374646400233225ustar00rootroot00000000000000aws-sdk-go-1.4.22/doc-src/plugin/templates/default/module/html/000077500000000000000000000000001300374646400242665ustar00rootroot00000000000000aws-sdk-go-1.4.22/doc-src/plugin/templates/default/module/html/client.erb000066400000000000000000000002271300374646400262370ustar00rootroot00000000000000

        Client Structure collapse

          <%= yieldall :item => @client %>
        aws-sdk-go-1.4.22/doc-src/plugin/templates/default/module/html/item_summary.erb000066400000000000000000000035571300374646400275050ustar00rootroot00000000000000<% if !@item.has_tag?(:paginator) %>
      • <%= signature(@item) %> <% if object != @item.namespace %> <%= @item.namespace.type == :class ? 'inherited' : (@item.scope == :class ? 'extended' : 'included') %> from <%= linkify @item, object.relative_path(@item.namespace) %> <% end %> <% if @item.type == :enum %>enum<% end %> <% if @item.type == :bare_struct || @item.type == :struct %>struct<% end %> <% if @item.has_tag?(:service) %>client<% end %> <% if @item.has_tag?(:service_operation) %>operation<% end %> <% if @item.type == :interface %>interface<% end %> <% if @item.has_tag?(:readonly) %>readonly<% end %> <% if @item.has_tag?(:writeonly) %>writeonly<% end %> <% if @item.visibility != :public %><%= @item.visibility %><% end %> <% if @item.has_tag?(:abstract) %>interface<% end %> <% if @item.has_tag?(:deprecated) %>deprecated<% end %> <% if @item.has_tag?(:api) && @item.tag(:api).text == 'private' %>private<% end %> <% if @item.has_tag?(:deprecated) %> Deprecated. <%= htmlify_line @item.tag(:deprecated).text %> <% else %> <%= htmlify_line docstring_summary(@item) %> <% end %>
      • <% end %> aws-sdk-go-1.4.22/doc-src/plugin/templates/default/module/html/setup.rb000066400000000000000000000003011300374646400257450ustar00rootroot00000000000000def init super sections.place(:client, [:item_summary]).before(:constant_summary) end def client @client = object.children.find {|c| c.has_tag?(:service) } erb(:client) if @client end aws-sdk-go-1.4.22/doc-src/plugin/templates/default/package/000077500000000000000000000000001300374646400234305ustar00rootroot00000000000000aws-sdk-go-1.4.22/doc-src/plugin/templates/default/package/html/000077500000000000000000000000001300374646400243745ustar00rootroot00000000000000aws-sdk-go-1.4.22/doc-src/plugin/templates/default/package/html/setup.rb000066400000000000000000000003571300374646400260660ustar00rootroot00000000000000def type_summary @items = object.children. select {|c| c.type == :bare_struct || c.type == :struct || c.type == :enum }. reject {|c| c.has_tag?(:service) }. sort_by {|c| c.name.to_s } @name = "Type" erb :list_summary end aws-sdk-go-1.4.22/doc-src/plugin/templates/default/struct/000077500000000000000000000000001300374646400233615ustar00rootroot00000000000000aws-sdk-go-1.4.22/doc-src/plugin/templates/default/struct/html/000077500000000000000000000000001300374646400243255ustar00rootroot00000000000000aws-sdk-go-1.4.22/doc-src/plugin/templates/default/struct/html/paginators.erb000066400000000000000000000002731300374646400271700ustar00rootroot00000000000000

        Pagination Methods

        <%= @items.map {|pkg| link_object(pkg, pkg.name) }.join(" ") %>

        aws-sdk-go-1.4.22/doc-src/plugin/templates/default/struct/html/request_methods.erb000066400000000000000000000003021300374646400302250ustar00rootroot00000000000000

        Request Methods

        <%= @items.map {|pkg| link_object(pkg, pkg.name) }.join(" ") %>

        aws-sdk-go-1.4.22/doc-src/plugin/templates/default/struct/html/setup.rb000066400000000000000000000007621300374646400260170ustar00rootroot00000000000000def init super sections.place(:request_methods, :paginators).after(:method_summary) end def groups(list, type = "Method") super(list.reject {|o| o.has_tag?(:paginator) || o.has_tag?(:request_method) }, type) end def paginators @items = object.children.select {|o| o.has_tag?(:paginator) } return if @items.size == 0 erb(:paginators) end def request_methods @items = object.children.select {|o| o.has_tag?(:request_method) } return if @items.size == 0 erb(:request_methods) end aws-sdk-go-1.4.22/example/000077500000000000000000000000001300374646400152165ustar00rootroot00000000000000aws-sdk-go-1.4.22/example/aws/000077500000000000000000000000001300374646400160105ustar00rootroot00000000000000aws-sdk-go-1.4.22/example/aws/request/000077500000000000000000000000001300374646400175005ustar00rootroot00000000000000aws-sdk-go-1.4.22/example/aws/request/handleServiceErrorCodes/000077500000000000000000000000001300374646400242445ustar00rootroot00000000000000aws-sdk-go-1.4.22/example/aws/request/handleServiceErrorCodes/README.md000066400000000000000000000015521300374646400255260ustar00rootroot00000000000000# Handling Specific Service Error Codes This examples highlights how you can use the `awserr.Error` type to perform logic based on specific error codes returned by service API operations. In this example the `S3` `GetObject` API operation is used to request the contents of a object in S3. The example handles the `NoSuchBucket` and `NoSuchKey` error codes printing custom messages to stderr. If Any other error is received a generic message is printed. ## Usage Will make a request to S3 for the contents of an object. If the request was successful, and the object was found the object's path and size will be printed to stdout. If the object's bucket or key does not exist a specific error message will be printed to stderr for the error. Any other error will be printed as an unknown error. ```sh go run -tags example handleServiceErrorCodes.go mybucket mykey ``` aws-sdk-go-1.4.22/example/aws/request/handleServiceErrorCodes/handleServiceErrorCodes.go000066400000000000000000000037271300374646400313500ustar00rootroot00000000000000// +build example package main import ( "fmt" "os" "path/filepath" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/s3" ) func exitErrorf(msg string, args ...interface{}) { fmt.Fprintf(os.Stderr, msg+"\n", args...) os.Exit(1) } // Will make a request to S3 for the contents of an object. If the request // was successful, and the object was found the object's path and size will be // printed to stdout. // // If the object's bucket or key does not exist a specific error message will // be printed to stderr for the error. // // Any other error will be printed as an unknown error. // // Usage: handleServiceErrorCodes func main() { if len(os.Args) < 3 { exitErrorf("Usage: %s ", filepath.Base(os.Args[0])) } sess, err := session.NewSession() if err != nil { exitErrorf("failed to create session,", err) } svc := s3.New(sess) resp, err := svc.GetObject(&s3.GetObjectInput{ Bucket: aws.String(os.Args[1]), Key: aws.String(os.Args[2]), }) if err != nil { // Casting to the awserr.Error type will allow you to inspect the error // code returned by the service in code. The error code can be used // to switch on context specific functionality. In this case a context // specific error message is printed to the user based on the bucket // and key existing. // // For information on other S3 API error codes see: // http://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case "NoSuchBucket": exitErrorf("bucket %s does not exist", os.Args[1]) case "NoSuchKey": exitErrorf("object with key %s does not exist in bucket %s", os.Args[2], os.Args[1]) } } exitErrorf("unknown error occured, %v", err) } defer resp.Body.Close() fmt.Printf("s3://%s/%s exists. size: %d\n", os.Args[1], os.Args[2], aws.Int64Value(resp.ContentLength)) } aws-sdk-go-1.4.22/example/service/000077500000000000000000000000001300374646400166565ustar00rootroot00000000000000aws-sdk-go-1.4.22/example/service/cloudfront/000077500000000000000000000000001300374646400210355ustar00rootroot00000000000000aws-sdk-go-1.4.22/example/service/cloudfront/signCookies/000077500000000000000000000000001300374646400233125ustar00rootroot00000000000000aws-sdk-go-1.4.22/example/service/cloudfront/signCookies/README.md000066400000000000000000000006451300374646400245760ustar00rootroot00000000000000# Example This example shows how the CloudFront CookieSigner can be used to generate signed cookies to provided short term access to restricted resourced fronted by CloudFront. # Usage Makes a request for object using CloudFront cookie signing, and outputs the contents of the object to stdout. ```sh go run -tags example signCookies.go -file -id -r -g ``` aws-sdk-go-1.4.22/example/service/cloudfront/signCookies/signCookies.go000066400000000000000000000043231300374646400261200ustar00rootroot00000000000000// +build example package main import ( "flag" "fmt" "io/ioutil" "net/http" "time" "github.com/aws/aws-sdk-go/service/cloudfront/sign" ) // Makes a request for object using CloudFront cookie signing, and outputs // the contents of the object to stdout. // // Usage example: // signCookies -file -id -r -g func main() { var keyFile string // Private key PEM file var keyID string // Key pair ID of CloudFront key pair var resource string // CloudFront resource pattern var object string // S3 object frontented by CloudFront flag.StringVar(&keyFile, "file", "", "private key file") flag.StringVar(&keyID, "id", "", "key pair id") flag.StringVar(&resource, "r", "", "resource to request") flag.StringVar(&object, "g", "", "object to get") flag.Parse() // Load the PEM file into memory so it can be used by the signer privKey, err := sign.LoadPEMPrivKeyFile(keyFile) if err != nil { fmt.Println("failed to load key,", err) return } // Create the new CookieSigner to get signed cookies for CloudFront // resource requests signer := sign.NewCookieSigner(keyID, privKey) // Get the cookies for the resource. These will be used // to make the requests with cookies, err := signer.Sign(resource, time.Now().Add(1*time.Hour)) if err != nil { fmt.Println("failed to sign cookies", err) return } // Use the cookies in a http.Client to show how they allow the client // to request resources from CloudFront. req, err := http.NewRequest("GET", object, nil) fmt.Println("Cookies:") for _, c := range cookies { fmt.Printf("%s=%s;\n", c.Name, c.Value) req.AddCookie(c) } // Send and handle the response. For a successful response the object's // content will be written to stdout. The same process could be applied // to a http service written cookies to the response but using // http.SetCookie(w, c,) on the ResponseWriter. resp, err := http.DefaultClient.Do(req) if err != nil { fmt.Println("failed to send request", err) return } defer resp.Body.Close() b, err := ioutil.ReadAll(resp.Body) if err != nil { fmt.Println("failed to read requested body", err) return } fmt.Println("Response:", resp.Status) fmt.Println(string(b)) } aws-sdk-go-1.4.22/example/service/dynamodb/000077500000000000000000000000001300374646400204535ustar00rootroot00000000000000aws-sdk-go-1.4.22/example/service/dynamodb/scanItems/000077500000000000000000000000001300374646400224015ustar00rootroot00000000000000aws-sdk-go-1.4.22/example/service/dynamodb/scanItems/README.md000066400000000000000000000020241300374646400236560ustar00rootroot00000000000000# Example `scanItems` is an example how to use Amazon DynamoDB's Scan API operation with the SDK's `dynamodbattributes.UnmarshalListOfMaps` to unmarshal the Scan response's `Items` `[]map[string]*dynamodb.AttributeValue` field. This unmarshaler can be used with all `[]map[string]*dynamodb.AttributeValue` type fields. ## Go Type The `Item` time will be used by the example to unmarshal the DynamoDB table's items to. ```go type Item struct { Key int Desc string Data map[string]interface{} } ``` In DynamoDB the structure of the item to be returned will be: ```json { "Data": { "Value 1": "abc", "Value 2": 1234567890 }, "Desc": "First ddb item", "Key": 1 } ``` ## Usage `scanItems.go -table "" -region ""` ## Output ``` 0: Key: 123, Desc: An item in the DynamoDB table Num Data Values: 0 1: Key: 2, Desc: Second ddb item Num Data Values: 2 - "A Field": 123 - "Another Field": abc 2: Key: 1, Desc: First ddb item Num Data Values: 2 - "Value 1": abc - "Value 2": 1234567890 ``` aws-sdk-go-1.4.22/example/service/dynamodb/scanItems/scanItems.go000066400000000000000000000045761300374646400246720ustar00rootroot00000000000000// +build example package main import ( "flag" "fmt" "os" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/dynamodb" "github.com/aws/aws-sdk-go/service/dynamodb/dynamodbattribute" ) func exitWithError(err error) { fmt.Fprintln(os.Stderr, err) os.Exit(1) } func main() { cfg := Config{} if err := cfg.Load(); err != nil { exitWithError(fmt.Errorf("failed to load config, %v", err)) } // Create the config specifiing the Region for the DynamoDB table. // If Config.Region is not set the region must come from the shared // config or AWS_REGION environment variable. awscfg := &aws.Config{} if len(cfg.Region) > 0 { awscfg.WithRegion(cfg.Region) } // Create the session that the DynamoDB service will use. sess, err := session.NewSession(awscfg) if err != nil { exitWithError(fmt.Errorf("failed to create session, %v", err)) } // Create the DynamoDB service client to make the query request with. svc := dynamodb.New(sess) // Build the query input parameters params := &dynamodb.ScanInput{ TableName: aws.String(cfg.Table), } if cfg.Limit > 0 { params.Limit = aws.Int64(cfg.Limit) } // Make the DynamoDB Query API call result, err := svc.Scan(params) if err != nil { exitWithError(fmt.Errorf("failed to make Query API call, %v", err)) } items := []Item{} // Unmarshal the Items field in the result value to the Item Go type. err = dynamodbattribute.UnmarshalListOfMaps(result.Items, &items) if err != nil { exitWithError(fmt.Errorf("failed to unmarshal Query result items, %v", err)) } // Print out the items returned for i, item := range items { fmt.Printf("%d: Key: %d, Desc: %s\n", i, item.Key, item.Desc) fmt.Printf("\tNum Data Values: %d\n", len(item.Data)) for k, v := range item.Data { fmt.Printf("\t- %q: %v\n", k, v) } } } type Item struct { Key int Desc string Data map[string]interface{} } type Config struct { Table string // required Region string // optional Limit int64 // optional } func (c *Config) Load() error { flag.Int64Var(&c.Limit, "limit", 0, "Limit is the max items to be returned, 0 is no limit") flag.StringVar(&c.Table, "table", "", "Table to Query on") flag.StringVar(&c.Region, "region", "", "AWS Region the table is in") flag.Parse() if len(c.Table) == 0 { flag.PrintDefaults() return fmt.Errorf("table name is required.") } return nil } aws-sdk-go-1.4.22/example/service/ec2/000077500000000000000000000000001300374646400173275ustar00rootroot00000000000000aws-sdk-go-1.4.22/example/service/ec2/filterInstances/000077500000000000000000000000001300374646400224645ustar00rootroot00000000000000aws-sdk-go-1.4.22/example/service/ec2/filterInstances/README.md000066400000000000000000000012751300374646400237500ustar00rootroot00000000000000# Example filter_ec2_by_tag is an example using the AWS SDK for Go to list ec2 instaces that match provided tag name filter. # Usage The example uses the the bucket name provided, and lists all object keys in a bucket. ```sh go run -tags example filter_ec2_by_tag.go ``` Output: ``` listing instances with tag vpn in: us-east-1 [{ Instances: [{ AmiLaunchIndex: 0, Architecture: "x86_64", BlockDeviceMappings: [{ DeviceName: "/dev/xvda", Ebs: { AttachTime: 2016-07-06 18:04:53 +0000 UTC, DeleteOnTermination: true, Status: "attached", VolumeId: "vol-xxxx" } }], ... ``` aws-sdk-go-1.4.22/example/service/ec2/filterInstances/filter_ec2_by_tag.go000066400000000000000000000017761300374646400263710ustar00rootroot00000000000000// +build example package main import ( "fmt" "log" "os" "strings" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/ec2" ) // This example will list instances with a filter // // Usage: // filter_ec2_by_tag func main() { sess, err := session.NewSession() if err != nil { log.Fatalf("failed to create session %v\n", err) } nameFilter := os.Args[1] awsRegion := "us-east-1" svc := ec2.New(sess, &aws.Config{Region: aws.String(awsRegion)}) fmt.Printf("listing instances with tag %v in: %v\n", nameFilter, awsRegion) params := &ec2.DescribeInstancesInput{ Filters: []*ec2.Filter{ { Name: aws.String("tag:Name"), Values: []*string{ aws.String(strings.Join([]string{"*", nameFilter, "*"}, "")), }, }, }, } resp, err := svc.DescribeInstances(params) if err != nil { fmt.Println("there was an error listing instances in", awsRegion, err.Error()) log.Fatal(err.Error()) } fmt.Printf("%+v\n", *resp) } aws-sdk-go-1.4.22/example/service/s3/000077500000000000000000000000001300374646400172035ustar00rootroot00000000000000aws-sdk-go-1.4.22/example/service/s3/concatObjects/000077500000000000000000000000001300374646400217645ustar00rootroot00000000000000aws-sdk-go-1.4.22/example/service/s3/concatObjects/README.md000066400000000000000000000010031300374646400232350ustar00rootroot00000000000000# Example concatObjects is an example using the AWS SDK for Go to concatenate two objects together. We use `UploadPartCopy` which uses an object for a part. Here in this example we have two parts, or in other words two objects that we want to concatenate together. # Usage The example uses the the bucket name provided, two keys for each object, and lastly the output key. ```sh AWS_REGION= go run -tags example concatenateObjects.go ``` aws-sdk-go-1.4.22/example/service/s3/concatObjects/concatObjects.go000066400000000000000000000047071300374646400251040ustar00rootroot00000000000000// +build example package main import ( "log" "net/url" "os" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/s3" ) type client struct { s3Client *s3.S3 bucket *string } // concatenate will contenate key1's object to key2's object under the key testKey func (c *client) concatenate(key1, key2, key3 string, uploadID *string) (*string, *string, error) { // The first part to be uploaded which is represented as part number 1 foo, err := c.s3Client.UploadPartCopy(&s3.UploadPartCopyInput{ Bucket: c.bucket, CopySource: aws.String(url.QueryEscape(*c.bucket + "/" + key1)), PartNumber: aws.Int64(1), Key: &key3, UploadId: uploadID, }) if err != nil { return nil, nil, err } // The second part that is going to be appended to the newly created testKey // object. bar, err := c.s3Client.UploadPartCopy(&s3.UploadPartCopyInput{ Bucket: c.bucket, CopySource: aws.String(url.QueryEscape(*c.bucket + "/" + key2)), PartNumber: aws.Int64(2), Key: &key3, UploadId: uploadID, }) if err != nil { return nil, nil, err } // The ETags are needed to complete the process return foo.CopyPartResult.ETag, bar.CopyPartResult.ETag, nil } func main() { if len(os.Args) < 4 { log.Println("USAGE ERROR: AWS_REGION=us-east-1 go run concatenateObjects.go ") return } bucket := os.Args[1] key1 := os.Args[2] key2 := os.Args[3] key3 := os.Args[4] sess := session.New(&aws.Config{}) svc := s3.New(sess) c := client{svc, &bucket} // We let the service know that we want to do a multipart upload output, err := c.s3Client.CreateMultipartUpload(&s3.CreateMultipartUploadInput{ Bucket: &bucket, Key: &key3, }) if err != nil { log.Println("ERROR:", err) return } foo, bar, err := c.concatenate(key1, key2, key3, output.UploadId) if err != nil { log.Println("ERROR:", err) return } // We finally complete the multipart upload. _, err = c.s3Client.CompleteMultipartUpload(&s3.CompleteMultipartUploadInput{ Bucket: &bucket, Key: &key3, UploadId: output.UploadId, MultipartUpload: &s3.CompletedMultipartUpload{ Parts: []*s3.CompletedPart{ &s3.CompletedPart{ ETag: foo, PartNumber: aws.Int64(1), }, &s3.CompletedPart{ ETag: bar, PartNumber: aws.Int64(2), }, }, }, }) if err != nil { log.Println("ERROR:", err) return } } aws-sdk-go-1.4.22/example/service/s3/listObjects/000077500000000000000000000000001300374646400214705ustar00rootroot00000000000000aws-sdk-go-1.4.22/example/service/s3/listObjects/README.md000066400000000000000000000010551300374646400227500ustar00rootroot00000000000000# Example listObjects is an example using the AWS SDK for Go to list objects' key in a S3 bucket. # Usage The example uses the the bucket name provided, and lists all object keys in a bucket. ```sh go run -tags example listObjects.go ``` Output: ``` Page, 0 Object: myKey Object: mykey.txt Object: resources/0001/item-01 Object: resources/0001/item-02 Object: resources/0001/item-03 Object: resources/0002/item-01 Object: resources/0002/item-02 Object: resources/0002/item-03 Object: resources/0002/item-04 Object: resources/0002/item-05 ``` aws-sdk-go-1.4.22/example/service/s3/listObjects/listObjects.go000066400000000000000000000014471300374646400243120ustar00rootroot00000000000000// +build example package main import ( "fmt" "os" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/s3" ) // Lists all objects in a bucket using pagination // // Usage: // listObjects func main() { if len(os.Args) < 2 { fmt.Println("you must specify a bucket") return } sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) i := 0 err = svc.ListObjectsPages(&s3.ListObjectsInput{ Bucket: &os.Args[1], }, func(p *s3.ListObjectsOutput, last bool) (shouldContinue bool) { fmt.Println("Page,", i) i++ for _, obj := range p.Contents { fmt.Println("Object:", *obj.Key) } return true }) if err != nil { fmt.Println("failed to list objects", err) return } } aws-sdk-go-1.4.22/example/service/s3/listObjectsConcurrently/000077500000000000000000000000001300374646400241005ustar00rootroot00000000000000aws-sdk-go-1.4.22/example/service/s3/listObjectsConcurrently/README.md000066400000000000000000000006701300374646400253620ustar00rootroot00000000000000## Example listObjectsConcurrentlv is an example using the AWS SDK for Go concurrently to list the encrypted objects in the S3 buckets owned by an account. ## Usage The example's `accounts` string slice contains a list of the SharedCredentials profiles which will be used to look up the buckets owned by each profile. Each bucket's objects will be queried. ``` AWS_REGION=us-east-1 go run -tags example listObjectsConcurrentlv.go ``` aws-sdk-go-1.4.22/example/service/s3/listObjectsConcurrently/listObjectsConcurrently.go000066400000000000000000000125001300374646400313220ustar00rootroot00000000000000// +build example package main import ( "fmt" "os" "sort" "sync" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/s3" ) func exit(msg ...interface{}) { fmt.Fprintln(os.Stderr, msg...) os.Exit(1) } // Lists all encrypted objects owned by an account. The `accounts` string // contains a list of profiles to use. // // Usage: // listObjectsConcurrentlv func main() { accounts := []string{"default", "default2", "otherprofile"} // Spin off a worker for each account to retrieve that account's bucketCh := make(chan *Bucket, 5) var wg sync.WaitGroup for _, acc := range accounts { wg.Add(1) go func(acc string) { defer wg.Done() sess, err := session.NewSessionWithOptions(session.Options{ Profile: acc, }) if err != nil { fmt.Fprintf(os.Stderr, "failed to create session for account, %s, %v\n", acc, err) return } if err = getAccountBuckets(sess, bucketCh, acc); err != nil { fmt.Fprintf(os.Stderr, "failed to get account %s's bucket info, %v\n", acc, err) } }(acc) } // Spin off a goroutine which will wait until all account buckets have been collected and // added to the bucketCh. Close the bucketCh so the for range below will exit once all // bucket info is printed. go func() { wg.Wait() close(bucketCh) }() // Receive from the bucket channel printing the information for each bucket to the console // when the bucketCh channel is drained. buckets := []*Bucket{} for b := range bucketCh { buckets = append(buckets, b) } sortBuckets(buckets) for _, b := range buckets { if b.Error != nil { fmt.Printf("Bucket %s, owned by: %s, failed: %v\n", b.Name, b.Owner, b.Error) continue } encObjs := b.encryptedObjects() fmt.Printf("Bucket: %s, owned by: %s, total objects: %d, failed objects: %d, encrypted objects: %d\n", b.Name, b.Owner, len(b.Objects), len(b.ErrObjects), len(encObjs)) if len(encObjs) > 0 { for _, encObj := range encObjs { fmt.Printf("\t%s %s:%s/%s\n", encObj.EncryptionType, b.Region, b.Name, encObj.Key) } } } } func sortBuckets(buckets []*Bucket) { s := sortalbeBuckets(buckets) sort.Sort(s) } type sortalbeBuckets []*Bucket func (s sortalbeBuckets) Len() int { return len(s) } func (s sortalbeBuckets) Swap(a, b int) { s[a], s[b] = s[b], s[a] } func (s sortalbeBuckets) Less(a, b int) bool { if s[a].Owner == s[b].Owner && s[a].Name < s[b].Name { return true } if s[a].Owner < s[b].Owner { return true } return false } func getAccountBuckets(sess *session.Session, bucketCh chan<- *Bucket, owner string) error { svc := s3.New(sess) buckets, err := listBuckets(svc) if err != nil { return fmt.Errorf("failed to list buckets, %v", err) } for _, bucket := range buckets { bucket.Owner = owner if bucket.Error != nil { continue } bckSvc := s3.New(sess, &aws.Config{ Region: aws.String(bucket.Region), Credentials: svc.Config.Credentials, }) bucketDetails(bckSvc, bucket) bucketCh <- bucket } return nil } func bucketDetails(svc *s3.S3, bucket *Bucket) { objs, errObjs, err := listBucketObjects(svc, bucket.Name) if err != nil { bucket.Error = err } else { bucket.Objects = objs bucket.ErrObjects = errObjs } } // A Object provides details of an S3 object type Object struct { Bucket string Key string Encrypted bool EncryptionType string } // An ErrObject provides details of the error occurred retrieving // an object's status. type ErrObject struct { Bucket string Key string Error error } // A Bucket provides details about a bucket and its objects type Bucket struct { Owner string Name string CreationDate time.Time Region string Objects []Object Error error ErrObjects []ErrObject } func (b *Bucket) encryptedObjects() []Object { encObjs := []Object{} for _, obj := range b.Objects { if obj.Encrypted { encObjs = append(encObjs, obj) } } return encObjs } func listBuckets(svc *s3.S3) ([]*Bucket, error) { res, err := svc.ListBuckets(&s3.ListBucketsInput{}) if err != nil { return nil, err } buckets := make([]*Bucket, len(res.Buckets)) for i, b := range res.Buckets { buckets[i] = &Bucket{ Name: *b.Name, CreationDate: *b.CreationDate, } locRes, err := svc.GetBucketLocation(&s3.GetBucketLocationInput{ Bucket: b.Name, }) if err != nil { buckets[i].Error = err continue } if locRes.LocationConstraint == nil { buckets[i].Region = "us-east-1" } else { buckets[i].Region = *locRes.LocationConstraint } } return buckets, nil } func listBucketObjects(svc *s3.S3, bucket string) ([]Object, []ErrObject, error) { listRes, err := svc.ListObjects(&s3.ListObjectsInput{ Bucket: &bucket, }) if err != nil { return nil, nil, err } objs := make([]Object, 0, len(listRes.Contents)) errObjs := []ErrObject{} for _, listObj := range listRes.Contents { objData, err := svc.HeadObject(&s3.HeadObjectInput{ Bucket: &bucket, Key: listObj.Key, }) if err != nil { errObjs = append(errObjs, ErrObject{Bucket: bucket, Key: *listObj.Key, Error: err}) continue } obj := Object{Bucket: bucket, Key: *listObj.Key} if objData.ServerSideEncryption != nil { obj.Encrypted = true obj.EncryptionType = *objData.ServerSideEncryption } objs = append(objs, obj) } return objs, errObjs, nil } aws-sdk-go-1.4.22/models/000077500000000000000000000000001300374646400150465ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/000077500000000000000000000000001300374646400160025ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/acm/000077500000000000000000000000001300374646400165425ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/acm/2015-12-08/000077500000000000000000000000001300374646400175765ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/acm/2015-12-08/api-2.json000066400000000000000000000345061300374646400214110ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-12-08", "endpointPrefix":"acm", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"ACM", "serviceFullName":"AWS Certificate Manager", "signatureVersion":"v4", "targetPrefix":"CertificateManager" }, "operations":{ "AddTagsToCertificate":{ "name":"AddTagsToCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsToCertificateRequest"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArnException"}, {"shape":"InvalidTagException"}, {"shape":"TooManyTagsException"} ] }, "DeleteCertificate":{ "name":"DeleteCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteCertificateRequest"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"}, {"shape":"InvalidArnException"} ] }, "DescribeCertificate":{ "name":"DescribeCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeCertificateRequest"}, "output":{"shape":"DescribeCertificateResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArnException"} ] }, "GetCertificate":{ "name":"GetCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetCertificateRequest"}, "output":{"shape":"GetCertificateResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"RequestInProgressException"}, {"shape":"InvalidArnException"} ] }, "ImportCertificate":{ "name":"ImportCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportCertificateRequest"}, "output":{"shape":"ImportCertificateResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"} ] }, "ListCertificates":{ "name":"ListCertificates", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListCertificatesRequest"}, "output":{"shape":"ListCertificatesResponse"} }, "ListTagsForCertificate":{ "name":"ListTagsForCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTagsForCertificateRequest"}, "output":{"shape":"ListTagsForCertificateResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArnException"} ] }, "RemoveTagsFromCertificate":{ "name":"RemoveTagsFromCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsFromCertificateRequest"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArnException"}, {"shape":"InvalidTagException"} ] }, "RequestCertificate":{ "name":"RequestCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RequestCertificateRequest"}, "output":{"shape":"RequestCertificateResponse"}, "errors":[ {"shape":"LimitExceededException"}, {"shape":"InvalidDomainValidationOptionsException"} ] }, "ResendValidationEmail":{ "name":"ResendValidationEmail", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResendValidationEmailRequest"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidStateException"}, {"shape":"InvalidArnException"}, {"shape":"InvalidDomainValidationOptionsException"} ] } }, "shapes":{ "AddTagsToCertificateRequest":{ "type":"structure", "required":[ "CertificateArn", "Tags" ], "members":{ "CertificateArn":{"shape":"Arn"}, "Tags":{"shape":"TagList"} } }, "Arn":{ "type":"string", "max":2048, "min":20, "pattern":"arn:[\\w+=/,.@-]+:[\\w+=/,.@-]+:[\\w+=/,.@-]*:[0-9]+:[\\w+=,.@-]+(/[\\w+=/,.@-]+)*" }, "CertificateBody":{ "type":"string", "max":32768, "min":1, "pattern":"-{5}BEGIN CERTIFICATE-{5}\\u000D?\\u000A([A-Za-z0-9/+]{64}\\u000D?\\u000A)*[A-Za-z0-9/+]{1,64}={0,2}\\u000D?\\u000A-{5}END CERTIFICATE-{5}(\\u000D?\\u000A)?" }, "CertificateBodyBlob":{ "type":"blob", "max":32768, "min":1 }, "CertificateChain":{ "type":"string", "max":2097152, "min":1, "pattern":"(-{5}BEGIN CERTIFICATE-{5}\\u000D?\\u000A([A-Za-z0-9/+]{64}\\u000D?\\u000A)*[A-Za-z0-9/+]{1,64}={0,2}\\u000D?\\u000A-{5}END CERTIFICATE-{5}\\u000D?\\u000A)*-{5}BEGIN CERTIFICATE-{5}\\u000D?\\u000A([A-Za-z0-9/+]{64}\\u000D?\\u000A)*[A-Za-z0-9/+]{1,64}={0,2}\\u000D?\\u000A-{5}END CERTIFICATE-{5}(\\u000D?\\u000A)?" }, "CertificateChainBlob":{ "type":"blob", "max":2097152, "min":1 }, "CertificateDetail":{ "type":"structure", "members":{ "CertificateArn":{"shape":"Arn"}, "DomainName":{"shape":"DomainNameString"}, "SubjectAlternativeNames":{"shape":"DomainList"}, "DomainValidationOptions":{"shape":"DomainValidationList"}, "Serial":{"shape":"String"}, "Subject":{"shape":"String"}, "Issuer":{"shape":"String"}, "CreatedAt":{"shape":"TStamp"}, "IssuedAt":{"shape":"TStamp"}, "ImportedAt":{"shape":"TStamp"}, "Status":{"shape":"CertificateStatus"}, "RevokedAt":{"shape":"TStamp"}, "RevocationReason":{"shape":"RevocationReason"}, "NotBefore":{"shape":"TStamp"}, "NotAfter":{"shape":"TStamp"}, "KeyAlgorithm":{"shape":"KeyAlgorithm"}, "SignatureAlgorithm":{"shape":"String"}, "InUseBy":{"shape":"InUseList"}, "FailureReason":{"shape":"FailureReason"}, "Type":{"shape":"CertificateType"} } }, "CertificateStatus":{ "type":"string", "enum":[ "PENDING_VALIDATION", "ISSUED", "INACTIVE", "EXPIRED", "VALIDATION_TIMED_OUT", "REVOKED", "FAILED" ] }, "CertificateStatuses":{ "type":"list", "member":{"shape":"CertificateStatus"} }, "CertificateSummary":{ "type":"structure", "members":{ "CertificateArn":{"shape":"Arn"}, "DomainName":{"shape":"DomainNameString"} } }, "CertificateSummaryList":{ "type":"list", "member":{"shape":"CertificateSummary"} }, "CertificateType":{ "type":"string", "enum":[ "IMPORTED", "AMAZON_ISSUED" ] }, "DeleteCertificateRequest":{ "type":"structure", "required":["CertificateArn"], "members":{ "CertificateArn":{"shape":"Arn"} } }, "DescribeCertificateRequest":{ "type":"structure", "required":["CertificateArn"], "members":{ "CertificateArn":{"shape":"Arn"} } }, "DescribeCertificateResponse":{ "type":"structure", "members":{ "Certificate":{"shape":"CertificateDetail"} } }, "DomainList":{ "type":"list", "member":{"shape":"DomainNameString"}, "max":100, "min":1 }, "DomainNameString":{ "type":"string", "max":253, "min":1, "pattern":"^(\\*\\.)?(((?!-)[A-Za-z0-9-]{0,62}[A-Za-z0-9])\\.)+((?!-)[A-Za-z0-9-]{1,62}[A-Za-z0-9])$" }, "DomainValidation":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainNameString"}, "ValidationEmails":{"shape":"ValidationEmailList"}, "ValidationDomain":{"shape":"DomainNameString"} } }, "DomainValidationList":{ "type":"list", "member":{"shape":"DomainValidation"}, "max":1000, "min":1 }, "DomainValidationOption":{ "type":"structure", "required":[ "DomainName", "ValidationDomain" ], "members":{ "DomainName":{"shape":"DomainNameString"}, "ValidationDomain":{"shape":"DomainNameString"} } }, "DomainValidationOptionList":{ "type":"list", "member":{"shape":"DomainValidationOption"}, "max":100, "min":1 }, "FailureReason":{ "type":"string", "enum":[ "NO_AVAILABLE_CONTACTS", "ADDITIONAL_VERIFICATION_REQUIRED", "DOMAIN_NOT_ALLOWED", "INVALID_PUBLIC_DOMAIN", "OTHER" ] }, "GetCertificateRequest":{ "type":"structure", "required":["CertificateArn"], "members":{ "CertificateArn":{"shape":"Arn"} } }, "GetCertificateResponse":{ "type":"structure", "members":{ "Certificate":{"shape":"CertificateBody"}, "CertificateChain":{"shape":"CertificateChain"} } }, "IdempotencyToken":{ "type":"string", "max":32, "min":1, "pattern":"\\w+" }, "ImportCertificateRequest":{ "type":"structure", "required":[ "Certificate", "PrivateKey" ], "members":{ "CertificateArn":{"shape":"Arn"}, "Certificate":{"shape":"CertificateBodyBlob"}, "PrivateKey":{"shape":"PrivateKeyBlob"}, "CertificateChain":{"shape":"CertificateChainBlob"} } }, "ImportCertificateResponse":{ "type":"structure", "members":{ "CertificateArn":{"shape":"Arn"} } }, "InUseList":{ "type":"list", "member":{"shape":"String"} }, "InvalidArnException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "InvalidDomainValidationOptionsException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "InvalidStateException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "InvalidTagException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "KeyAlgorithm":{ "type":"string", "enum":[ "RSA_2048", "RSA_1024", "EC_prime256v1" ] }, "LimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "ListCertificatesRequest":{ "type":"structure", "members":{ "CertificateStatuses":{"shape":"CertificateStatuses"}, "NextToken":{"shape":"NextToken"}, "MaxItems":{"shape":"MaxItems"} } }, "ListCertificatesResponse":{ "type":"structure", "members":{ "NextToken":{"shape":"NextToken"}, "CertificateSummaryList":{"shape":"CertificateSummaryList"} } }, "ListTagsForCertificateRequest":{ "type":"structure", "required":["CertificateArn"], "members":{ "CertificateArn":{"shape":"Arn"} } }, "ListTagsForCertificateResponse":{ "type":"structure", "members":{ "Tags":{"shape":"TagList"} } }, "MaxItems":{ "type":"integer", "max":1000, "min":1 }, "NextToken":{ "type":"string", "max":320, "min":1, "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u00FF]*" }, "PrivateKeyBlob":{ "type":"blob", "max":524288, "min":1, "sensitive":true }, "RemoveTagsFromCertificateRequest":{ "type":"structure", "required":[ "CertificateArn", "Tags" ], "members":{ "CertificateArn":{"shape":"Arn"}, "Tags":{"shape":"TagList"} } }, "RequestCertificateRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainNameString"}, "SubjectAlternativeNames":{"shape":"DomainList"}, "IdempotencyToken":{"shape":"IdempotencyToken"}, "DomainValidationOptions":{"shape":"DomainValidationOptionList"} } }, "RequestCertificateResponse":{ "type":"structure", "members":{ "CertificateArn":{"shape":"Arn"} } }, "RequestInProgressException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "ResendValidationEmailRequest":{ "type":"structure", "required":[ "CertificateArn", "Domain", "ValidationDomain" ], "members":{ "CertificateArn":{"shape":"Arn"}, "Domain":{"shape":"DomainNameString"}, "ValidationDomain":{"shape":"DomainNameString"} } }, "ResourceInUseException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "ResourceNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "RevocationReason":{ "type":"string", "enum":[ "UNSPECIFIED", "KEY_COMPROMISE", "CA_COMPROMISE", "AFFILIATION_CHANGED", "SUPERCEDED", "CESSATION_OF_OPERATION", "CERTIFICATE_HOLD", "REMOVE_FROM_CRL", "PRIVILEGE_WITHDRAWN", "A_A_COMPROMISE" ] }, "String":{"type":"string"}, "TStamp":{"type":"timestamp"}, "Tag":{ "type":"structure", "required":["Key"], "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{ "type":"string", "max":128, "min":1, "pattern":"[\\p{L}\\p{Z}\\p{N}_.:\\/=+\\-@]*" }, "TagList":{ "type":"list", "member":{"shape":"Tag"}, "max":50, "min":1 }, "TagValue":{ "type":"string", "max":256, "min":0, "pattern":"[\\p{L}\\p{Z}\\p{N}_.:\\/=+\\-@]*" }, "TooManyTagsException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "ValidationEmailList":{ "type":"list", "member":{"shape":"String"} } } } aws-sdk-go-1.4.22/models/apis/acm/2015-12-08/docs-2.json000066400000000000000000000734551300374646400215760ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS Certificate Manager

        Welcome to the AWS Certificate Manager (ACM) API documentation.

        You can use ACM to manage SSL/TLS certificates for your AWS-based websites and applications. For general information about using ACM, see the AWS Certificate Manager User Guide .

        ", "operations": { "AddTagsToCertificate": "

        Adds one or more tags to an ACM Certificate. Tags are labels that you can use to identify and organize your AWS resources. Each tag consists of a key and an optional value. You specify the certificate on input by its Amazon Resource Name (ARN). You specify the tag by using a key-value pair.

        You can apply a tag to just one certificate if you want to identify a specific characteristic of that certificate, or you can apply the same tag to multiple certificates if you want to filter for a common relationship among those certificates. Similarly, you can apply the same tag to multiple resources if you want to specify a relationship among those resources. For example, you can add the same tag to an ACM Certificate and an Elastic Load Balancing load balancer to indicate that they are both used by the same website. For more information, see Tagging ACM Certificates.

        To remove one or more tags, use the RemoveTagsFromCertificate action. To view all of the tags that have been applied to the certificate, use the ListTagsForCertificate action.

        ", "DeleteCertificate": "

        Deletes an ACM Certificate and its associated private key. If this action succeeds, the certificate no longer appears in the list of ACM Certificates that can be displayed by calling the ListCertificates action or be retrieved by calling the GetCertificate action. The certificate will not be available for use by other AWS services.

        You cannot delete an ACM Certificate that is being used by another AWS service. To delete a certificate that is in use, the certificate association must first be removed.

        ", "DescribeCertificate": "

        Returns a list of the fields contained in the specified ACM Certificate. For example, this action returns the certificate status, a flag that indicates whether the certificate is associated with any other AWS service, and the date at which the certificate request was created. You specify the ACM Certificate on input by its Amazon Resource Name (ARN).

        ", "GetCertificate": "

        Retrieves an ACM Certificate and certificate chain for the certificate specified by an ARN. The chain is an ordered list of certificates that contains the root certificate, intermediate certificates of subordinate CAs, and the ACM Certificate. The certificate and certificate chain are base64 encoded. If you want to decode the certificate chain to see the individual certificate fields, you can use OpenSSL.

        Currently, ACM Certificates can be used only with Elastic Load Balancing and Amazon CloudFront.

        ", "ImportCertificate": "

        Imports an SSL/TLS certificate into AWS Certificate Manager (ACM) to use with ACM's integrated AWS services.

        ACM does not provide managed renewal for certificates that you import.

        For more information about importing certificates into ACM, including the differences between certificates that you import and those that ACM provides, see Importing Certificates in the AWS Certificate Manager User Guide.

        To import a certificate, you must provide the certificate and the matching private key. When the certificate is not self-signed, you must also provide a certificate chain. You can omit the certificate chain when importing a self-signed certificate.

        The certificate, private key, and certificate chain must be PEM-encoded. For more information about converting these items to PEM format, see Importing Certificates Troubleshooting in the AWS Certificate Manager User Guide.

        To import a new certificate, omit the CertificateArn field. Include this field only when you want to replace a previously imported certificate.

        This operation returns the Amazon Resource Name (ARN) of the imported certificate.

        ", "ListCertificates": "

        Retrieves a list of ACM Certificates and the domain name for each. You can optionally filter the list to return only the certificates that match the specified status.

        ", "ListTagsForCertificate": "

        Lists the tags that have been applied to the ACM Certificate. Use the certificate ARN to specify the certificate. To add a tag to an ACM Certificate, use the AddTagsToCertificate action. To delete a tag, use the RemoveTagsFromCertificate action.

        ", "RemoveTagsFromCertificate": "

        Remove one or more tags from an ACM Certificate. A tag consists of a key-value pair. If you do not specify the value portion of the tag when calling this function, the tag will be removed regardless of value. If you specify a value, the tag is removed only if it is associated with the specified value.

        To add tags to a certificate, use the AddTagsToCertificate action. To view all of the tags that have been applied to a specific ACM Certificate, use the ListTagsForCertificate action.

        ", "RequestCertificate": "

        Requests an ACM Certificate for use with other AWS services. To request an ACM Certificate, you must specify the fully qualified domain name (FQDN) for your site. You can also specify additional FQDNs if users can reach your site by using other names. For each domain name you specify, email is sent to the domain owner to request approval to issue the certificate. After receiving approval from the domain owner, the ACM Certificate is issued. For more information, see the AWS Certificate Manager User Guide.

        ", "ResendValidationEmail": "

        Resends the email that requests domain ownership validation. The domain owner or an authorized representative must approve the ACM Certificate before it can be issued. The certificate can be approved by clicking a link in the mail to navigate to the Amazon certificate approval website and then clicking I Approve. However, the validation email can be blocked by spam filters. Therefore, if you do not receive the original mail, you can request that the mail be resent within 72 hours of requesting the ACM Certificate. If more than 72 hours have elapsed since your original request or since your last attempt to resend validation mail, you must request a new certificate.

        " }, "shapes": { "AddTagsToCertificateRequest": { "base": null, "refs": { } }, "Arn": { "base": null, "refs": { "AddTagsToCertificateRequest$CertificateArn": "

        String that contains the ARN of the ACM Certificate to which the tag is to be applied. This must be of the form:

        arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces.

        ", "CertificateDetail$CertificateArn": "

        The Amazon Resource Name (ARN) of the certificate. For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "CertificateSummary$CertificateArn": "

        Amazon Resource Name (ARN) of the certificate. This is of the form:

        arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces.

        ", "DeleteCertificateRequest$CertificateArn": "

        String that contains the ARN of the ACM Certificate to be deleted. This must be of the form:

        arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces.

        ", "DescribeCertificateRequest$CertificateArn": "

        String that contains an ACM Certificate ARN. The ARN must be of the form:

        arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces.

        ", "GetCertificateRequest$CertificateArn": "

        String that contains a certificate ARN in the following format:

        arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces.

        ", "ImportCertificateRequest$CertificateArn": "

        The Amazon Resource Name (ARN) of an imported certificate to replace. To import a new certificate, omit this field.

        ", "ImportCertificateResponse$CertificateArn": "

        The Amazon Resource Name (ARN) of the imported certificate.

        ", "ListTagsForCertificateRequest$CertificateArn": "

        String that contains the ARN of the ACM Certificate for which you want to list the tags. This must be of the form:

        arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces.

        ", "RemoveTagsFromCertificateRequest$CertificateArn": "

        String that contains the ARN of the ACM Certificate with one or more tags that you want to remove. This must be of the form:

        arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces.

        ", "RequestCertificateResponse$CertificateArn": "

        String that contains the ARN of the issued certificate. This must be of the form:

        arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012

        ", "ResendValidationEmailRequest$CertificateArn": "

        String that contains the ARN of the requested certificate. The certificate ARN is generated and returned by the RequestCertificate action as soon as the request is made. By default, using this parameter causes email to be sent to all top-level domains you specified in the certificate request.

        The ARN must be of the form:

        arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012

        " } }, "CertificateBody": { "base": null, "refs": { "GetCertificateResponse$Certificate": "

        String that contains the ACM Certificate represented by the ARN specified at input.

        " } }, "CertificateBodyBlob": { "base": null, "refs": { "ImportCertificateRequest$Certificate": "

        The certificate to import. It must meet the following requirements:

        • Must be PEM-encoded.

        • Must contain a 1024-bit or 2048-bit RSA public key.

        • Must be valid at the time of import. You cannot import a certificate before its validity period begins (the certificate's NotBefore date) or after it expires (the certificate's NotAfter date).

        " } }, "CertificateChain": { "base": null, "refs": { "GetCertificateResponse$CertificateChain": "

        The certificate chain that contains the root certificate issued by the certificate authority (CA).

        " } }, "CertificateChainBlob": { "base": null, "refs": { "ImportCertificateRequest$CertificateChain": "

        The certificate chain. It must be PEM-encoded.

        " } }, "CertificateDetail": { "base": "

        Contains detailed metadata about an ACM Certificate. This structure is returned in the response to a DescribeCertificate request.

        ", "refs": { "DescribeCertificateResponse$Certificate": "

        Contains a CertificateDetail structure that lists the fields of an ACM Certificate.

        " } }, "CertificateStatus": { "base": null, "refs": { "CertificateDetail$Status": "

        The status of the certificate.

        ", "CertificateStatuses$member": null } }, "CertificateStatuses": { "base": null, "refs": { "ListCertificatesRequest$CertificateStatuses": "

        The status or statuses on which to filter the list of ACM Certificates.

        " } }, "CertificateSummary": { "base": "

        This structure is returned in the response object of ListCertificates action.

        ", "refs": { "CertificateSummaryList$member": null } }, "CertificateSummaryList": { "base": null, "refs": { "ListCertificatesResponse$CertificateSummaryList": "

        A list of ACM Certificates.

        " } }, "CertificateType": { "base": null, "refs": { "CertificateDetail$Type": "

        The source of the certificate. For certificates provided by ACM, this value is AMAZON_ISSUED. For certificates that you imported with ImportCertificate, this value is IMPORTED. ACM does not provide managed renewal for imported certificates. For more information about the differences between certificates that you import and those that ACM provides, see Importing Certificates in the AWS Certificate Manager User Guide.

        " } }, "DeleteCertificateRequest": { "base": null, "refs": { } }, "DescribeCertificateRequest": { "base": null, "refs": { } }, "DescribeCertificateResponse": { "base": null, "refs": { } }, "DomainList": { "base": null, "refs": { "CertificateDetail$SubjectAlternativeNames": "

        One or more domain names (subject alternative names) included in the certificate. This list contains the domain names that are bound to the public key that is contained in the certificate. The subject alternative names include the canonical domain name (CN) of the certificate and additional domain names that can be used to connect to the website.

        ", "RequestCertificateRequest$SubjectAlternativeNames": "

        Additional FQDNs to be included in the Subject Alternative Name extension of the ACM Certificate. For example, add the name www.example.net to a certificate for which the DomainName field is www.example.com if users can reach your site by using either name.

        " } }, "DomainNameString": { "base": null, "refs": { "CertificateDetail$DomainName": "

        The fully qualified domain name for the certificate, such as www.example.com or example.com.

        ", "CertificateSummary$DomainName": "

        Fully qualified domain name (FQDN), such as www.example.com or example.com, for the certificate.

        ", "DomainList$member": null, "DomainValidation$DomainName": "

        Fully Qualified Domain Name (FQDN) of the form www.example.com or example.com.

        ", "DomainValidation$ValidationDomain": "

        The base validation domain that acts as the suffix of the email addresses that are used to send the emails.

        ", "DomainValidationOption$DomainName": "

        Fully Qualified Domain Name (FQDN) of the certificate being requested.

        ", "DomainValidationOption$ValidationDomain": "

        The domain to which validation email is sent. This is the base validation domain that will act as the suffix of the email addresses. This must be the same as the DomainName value or a superdomain of the DomainName value. For example, if you requested a certificate for site.subdomain.example.com and specify a ValidationDomain of subdomain.example.com, ACM sends email to the domain registrant, technical contact, and administrative contact in WHOIS for the base domain and the following five addresses:

        • admin@subdomain.example.com

        • administrator@subdomain.example.com

        • hostmaster@subdomain.example.com

        • postmaster@subdomain.example.com

        • webmaster@subdomain.example.com

        ", "RequestCertificateRequest$DomainName": "

        Fully qualified domain name (FQDN), such as www.example.com, of the site you want to secure with an ACM Certificate. Use an asterisk (*) to create a wildcard certificate that protects several sites in the same domain. For example, *.example.com protects www.example.com, site.example.com, and images.example.com.

        ", "ResendValidationEmailRequest$Domain": "

        The Fully Qualified Domain Name (FQDN) of the certificate that needs to be validated.

        ", "ResendValidationEmailRequest$ValidationDomain": "

        The base validation domain that will act as the suffix of the email addresses that are used to send the emails. This must be the same as the Domain value or a superdomain of the Domain value. For example, if you requested a certificate for site.subdomain.example.com and specify a ValidationDomain of subdomain.example.com, ACM sends email to the domain registrant, technical contact, and administrative contact in WHOIS and the following five addresses:

        • admin@subdomain.example.com

        • administrator@subdomain.example.com

        • hostmaster@subdomain.example.com

        • postmaster@subdomain.example.com

        • webmaster@subdomain.example.com

        " } }, "DomainValidation": { "base": "

        Structure that contains the domain name, the base validation domain to which validation email is sent, and the email addresses used to validate the domain identity.

        ", "refs": { "DomainValidationList$member": null } }, "DomainValidationList": { "base": null, "refs": { "CertificateDetail$DomainValidationOptions": "

        Contains information about the email address or addresses used for domain validation. This field exists only when the certificate type is AMAZON_ISSUED.

        " } }, "DomainValidationOption": { "base": "

        This structure is used in the request object of the RequestCertificate action.

        ", "refs": { "DomainValidationOptionList$member": null } }, "DomainValidationOptionList": { "base": null, "refs": { "RequestCertificateRequest$DomainValidationOptions": "

        The base validation domain that will act as the suffix of the email addresses that are used to send the emails. This must be the same as the Domain value or a superdomain of the Domain value. For example, if you requested a certificate for test.example.com and specify DomainValidationOptions of example.com, ACM sends email to the domain registrant, technical contact, and administrative contact in WHOIS and the following five addresses:

        • admin@example.com

        • administrator@example.com

        • hostmaster@example.com

        • postmaster@example.com

        • webmaster@example.com

        " } }, "FailureReason": { "base": null, "refs": { "CertificateDetail$FailureReason": "

        The reason the certificate request failed. This value exists only when the certificate status is FAILED. For more information, see Certificate Request Failed in the AWS Certificate Manager User Guide.

        " } }, "GetCertificateRequest": { "base": null, "refs": { } }, "GetCertificateResponse": { "base": null, "refs": { } }, "IdempotencyToken": { "base": null, "refs": { "RequestCertificateRequest$IdempotencyToken": "

        Customer chosen string that can be used to distinguish between calls to RequestCertificate. Idempotency tokens time out after one hour. Therefore, if you call RequestCertificate multiple times with the same idempotency token within one hour, ACM recognizes that you are requesting only one certificate and will issue only one. If you change the idempotency token for each call, ACM recognizes that you are requesting multiple certificates.

        " } }, "ImportCertificateRequest": { "base": null, "refs": { } }, "ImportCertificateResponse": { "base": null, "refs": { } }, "InUseList": { "base": null, "refs": { "CertificateDetail$InUseBy": "

        A list of ARNs for the AWS resources that are using the certificate. A certificate can be used by multiple AWS resources.

        " } }, "InvalidArnException": { "base": "

        The requested Amazon Resource Name (ARN) does not refer to an existing resource.

        ", "refs": { } }, "InvalidDomainValidationOptionsException": { "base": "

        One or more values in the DomainValidationOption structure is incorrect.

        ", "refs": { } }, "InvalidStateException": { "base": "

        Processing has reached an invalid state. For example, this exception can occur if the specified domain is not using email validation, or the current certificate status does not permit the requested operation. See the exception message returned by ACM to determine which state is not valid.

        ", "refs": { } }, "InvalidTagException": { "base": "

        One or both of the values that make up the key-value pair is not valid. For example, you cannot specify a tag value that begins with aws:.

        ", "refs": { } }, "KeyAlgorithm": { "base": null, "refs": { "CertificateDetail$KeyAlgorithm": "

        The algorithm that was used to generate the key pair (the public and private key).

        " } }, "LimitExceededException": { "base": "

        An ACM limit has been exceeded. For example, you may have input more domains than are allowed or you've requested too many certificates for your account. See the exception message returned by ACM to determine which limit you have violated. For more information about ACM limits, see the Limits topic.

        ", "refs": { } }, "ListCertificatesRequest": { "base": null, "refs": { } }, "ListCertificatesResponse": { "base": null, "refs": { } }, "ListTagsForCertificateRequest": { "base": null, "refs": { } }, "ListTagsForCertificateResponse": { "base": null, "refs": { } }, "MaxItems": { "base": null, "refs": { "ListCertificatesRequest$MaxItems": "

        Use this parameter when paginating results to specify the maximum number of items to return in the response. If additional items exist beyond the number you specify, the NextToken element is sent in the response. Use this NextToken value in a subsequent request to retrieve additional items.

        " } }, "NextToken": { "base": null, "refs": { "ListCertificatesRequest$NextToken": "

        Use this parameter only when paginating results and only in a subsequent request after you receive a response with truncated results. Set it to the value of NextToken from the response you just received.

        ", "ListCertificatesResponse$NextToken": "

        When the list is truncated, this value is present and contains the value to use for the NextToken parameter in a subsequent pagination request.

        " } }, "PrivateKeyBlob": { "base": null, "refs": { "ImportCertificateRequest$PrivateKey": "

        The private key that matches the public key in the certificate. It must meet the following requirements:

        • Must be PEM-encoded.

        • Must be unencrypted. You cannot import a private key that is protected by a password or passphrase.

        " } }, "RemoveTagsFromCertificateRequest": { "base": null, "refs": { } }, "RequestCertificateRequest": { "base": null, "refs": { } }, "RequestCertificateResponse": { "base": null, "refs": { } }, "RequestInProgressException": { "base": "

        The certificate request is in process and the certificate in your account has not yet been issued.

        ", "refs": { } }, "ResendValidationEmailRequest": { "base": null, "refs": { } }, "ResourceInUseException": { "base": "

        The certificate is in use by another AWS service in the caller's account. Remove the association and try again.

        ", "refs": { } }, "ResourceNotFoundException": { "base": "

        The specified certificate cannot be found in the caller's account, or the caller's account cannot be found.

        ", "refs": { } }, "RevocationReason": { "base": null, "refs": { "CertificateDetail$RevocationReason": "

        The reason the certificate was revoked. This value exists only when the certificate status is REVOKED.

        " } }, "String": { "base": null, "refs": { "CertificateDetail$Serial": "

        The serial number of the certificate.

        ", "CertificateDetail$Subject": "

        The name of the entity that is associated with the public key contained in the certificate.

        ", "CertificateDetail$Issuer": "

        The name of the certificate authority that issued and signed the certificate.

        ", "CertificateDetail$SignatureAlgorithm": "

        The algorithm that was used to sign the certificate.

        ", "InUseList$member": null, "InvalidArnException$message": null, "InvalidDomainValidationOptionsException$message": null, "InvalidStateException$message": null, "InvalidTagException$message": null, "LimitExceededException$message": null, "RequestInProgressException$message": null, "ResourceInUseException$message": null, "ResourceNotFoundException$message": null, "TooManyTagsException$message": null, "ValidationEmailList$member": null } }, "TStamp": { "base": null, "refs": { "CertificateDetail$CreatedAt": "

        The time at which the certificate was requested. This value exists only when the certificate type is AMAZON_ISSUED.

        ", "CertificateDetail$IssuedAt": "

        The time at which the certificate was issued. This value exists only when the certificate type is AMAZON_ISSUED.

        ", "CertificateDetail$ImportedAt": "

        The date and time at which the certificate was imported. This value exists only when the certificate type is IMPORTED.

        ", "CertificateDetail$RevokedAt": "

        The time at which the certificate was revoked. This value exists only when the certificate status is REVOKED.

        ", "CertificateDetail$NotBefore": "

        The time before which the certificate is not valid.

        ", "CertificateDetail$NotAfter": "

        The time after which the certificate is not valid.

        " } }, "Tag": { "base": "

        A key-value pair that identifies or specifies metadata about an ACM resource.

        ", "refs": { "TagList$member": null } }, "TagKey": { "base": null, "refs": { "Tag$Key": "

        The key of the tag.

        " } }, "TagList": { "base": null, "refs": { "AddTagsToCertificateRequest$Tags": "

        The key-value pair that defines the tag. The tag value is optional.

        ", "ListTagsForCertificateResponse$Tags": "

        The key-value pairs that define the applied tags.

        ", "RemoveTagsFromCertificateRequest$Tags": "

        The key-value pair that defines the tag to remove.

        " } }, "TagValue": { "base": null, "refs": { "Tag$Value": "

        The value of the tag.

        " } }, "TooManyTagsException": { "base": "

        The request contains too many tags. Try the request again with fewer tags.

        ", "refs": { } }, "ValidationEmailList": { "base": null, "refs": { "DomainValidation$ValidationEmails": "

        A list of contact address for the domain registrant.

        " } } } } aws-sdk-go-1.4.22/models/apis/acm/2015-12-08/examples-1.json000066400000000000000000000000541300374646400224440ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/acm/2015-12-08/paginators-1.json000066400000000000000000000003131300374646400227730ustar00rootroot00000000000000{ "pagination": { "ListCertificates": { "limit_key": "MaxItems", "input_token": "NextToken", "output_token": "NextToken", "result_key": "CertificateSummaryList" } } } aws-sdk-go-1.4.22/models/apis/apigateway/000077500000000000000000000000001300374646400201355ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/apigateway/2015-07-09/000077500000000000000000000000001300374646400211765ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/apigateway/2015-07-09/api-2.json000066400000000000000000003142311300374646400230050ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-07-09", "endpointPrefix":"apigateway", "protocol":"rest-json", "serviceFullName":"Amazon API Gateway", "signatureVersion":"v4" }, "operations":{ "CreateApiKey":{ "name":"CreateApiKey", "http":{ "method":"POST", "requestUri":"/apikeys", "responseCode":201 }, "input":{"shape":"CreateApiKeyRequest"}, "output":{"shape":"ApiKey"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"}, {"shape":"LimitExceededException"}, {"shape":"BadRequestException"}, {"shape":"ConflictException"} ] }, "CreateAuthorizer":{ "name":"CreateAuthorizer", "http":{ "method":"POST", "requestUri":"/restapis/{restapi_id}/authorizers", "responseCode":201 }, "input":{"shape":"CreateAuthorizerRequest"}, "output":{"shape":"Authorizer"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"TooManyRequestsException"} ] }, "CreateBasePathMapping":{ "name":"CreateBasePathMapping", "http":{ "method":"POST", "requestUri":"/domainnames/{domain_name}/basepathmappings", "responseCode":201 }, "input":{"shape":"CreateBasePathMappingRequest"}, "output":{"shape":"BasePathMapping"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"ConflictException"}, {"shape":"BadRequestException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "CreateDeployment":{ "name":"CreateDeployment", "http":{ "method":"POST", "requestUri":"/restapis/{restapi_id}/deployments", "responseCode":201 }, "input":{"shape":"CreateDeploymentRequest"}, "output":{"shape":"Deployment"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"BadRequestException"}, {"shape":"NotFoundException"}, {"shape":"ConflictException"}, {"shape":"LimitExceededException"}, {"shape":"TooManyRequestsException"}, {"shape":"ServiceUnavailableException"} ] }, "CreateDomainName":{ "name":"CreateDomainName", "http":{ "method":"POST", "requestUri":"/domainnames", "responseCode":201 }, "input":{"shape":"CreateDomainNameRequest"}, "output":{"shape":"DomainName"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"BadRequestException"}, {"shape":"ConflictException"}, {"shape":"TooManyRequestsException"} ] }, "CreateModel":{ "name":"CreateModel", "http":{ "method":"POST", "requestUri":"/restapis/{restapi_id}/models", "responseCode":201 }, "input":{"shape":"CreateModelRequest"}, "output":{"shape":"Model"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"ConflictException"}, {"shape":"LimitExceededException"}, {"shape":"TooManyRequestsException"} ] }, "CreateResource":{ "name":"CreateResource", "http":{ "method":"POST", "requestUri":"/restapis/{restapi_id}/resources/{parent_id}", "responseCode":201 }, "input":{"shape":"CreateResourceRequest"}, "output":{"shape":"Resource"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"ConflictException"}, {"shape":"LimitExceededException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"} ] }, "CreateRestApi":{ "name":"CreateRestApi", "http":{ "method":"POST", "requestUri":"/restapis", "responseCode":201 }, "input":{"shape":"CreateRestApiRequest"}, "output":{"shape":"RestApi"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"LimitExceededException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"} ] }, "CreateStage":{ "name":"CreateStage", "http":{ "method":"POST", "requestUri":"/restapis/{restapi_id}/stages", "responseCode":201 }, "input":{"shape":"CreateStageRequest"}, "output":{"shape":"Stage"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"BadRequestException"}, {"shape":"NotFoundException"}, {"shape":"ConflictException"}, {"shape":"LimitExceededException"}, {"shape":"TooManyRequestsException"} ] }, "CreateUsagePlan":{ "name":"CreateUsagePlan", "http":{ "method":"POST", "requestUri":"/usageplans", "responseCode":201 }, "input":{"shape":"CreateUsagePlanRequest"}, "output":{"shape":"UsagePlan"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"LimitExceededException"}, {"shape":"ConflictException"} ] }, "CreateUsagePlanKey":{ "name":"CreateUsagePlanKey", "http":{ "method":"POST", "requestUri":"/usageplans/{usageplanId}/keys", "responseCode":201 }, "input":{"shape":"CreateUsagePlanKeyRequest"}, "output":{"shape":"UsagePlanKey"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"ConflictException"}, {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "DeleteApiKey":{ "name":"DeleteApiKey", "http":{ "method":"DELETE", "requestUri":"/apikeys/{api_Key}", "responseCode":202 }, "input":{"shape":"DeleteApiKeyRequest"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "DeleteAuthorizer":{ "name":"DeleteAuthorizer", "http":{ "method":"DELETE", "requestUri":"/restapis/{restapi_id}/authorizers/{authorizer_id}", "responseCode":202 }, "input":{"shape":"DeleteAuthorizerRequest"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"}, {"shape":"BadRequestException"}, {"shape":"ConflictException"} ] }, "DeleteBasePathMapping":{ "name":"DeleteBasePathMapping", "http":{ "method":"DELETE", "requestUri":"/domainnames/{domain_name}/basepathmappings/{base_path}", "responseCode":202 }, "input":{"shape":"DeleteBasePathMappingRequest"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "DeleteClientCertificate":{ "name":"DeleteClientCertificate", "http":{ "method":"DELETE", "requestUri":"/clientcertificates/{clientcertificate_id}", "responseCode":202 }, "input":{"shape":"DeleteClientCertificateRequest"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"BadRequestException"}, {"shape":"NotFoundException"} ] }, "DeleteDeployment":{ "name":"DeleteDeployment", "http":{ "method":"DELETE", "requestUri":"/restapis/{restapi_id}/deployments/{deployment_id}", "responseCode":202 }, "input":{"shape":"DeleteDeploymentRequest"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"} ] }, "DeleteDomainName":{ "name":"DeleteDomainName", "http":{ "method":"DELETE", "requestUri":"/domainnames/{domain_name}", "responseCode":202 }, "input":{"shape":"DeleteDomainNameRequest"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "DeleteIntegration":{ "name":"DeleteIntegration", "http":{ "method":"DELETE", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration", "responseCode":204 }, "input":{"shape":"DeleteIntegrationRequest"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"}, {"shape":"ConflictException"} ] }, "DeleteIntegrationResponse":{ "name":"DeleteIntegrationResponse", "http":{ "method":"DELETE", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration/responses/{status_code}", "responseCode":204 }, "input":{"shape":"DeleteIntegrationResponseRequest"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"}, {"shape":"BadRequestException"}, {"shape":"ConflictException"} ] }, "DeleteMethod":{ "name":"DeleteMethod", "http":{ "method":"DELETE", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}", "responseCode":204 }, "input":{"shape":"DeleteMethodRequest"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"}, {"shape":"ConflictException"} ] }, "DeleteMethodResponse":{ "name":"DeleteMethodResponse", "http":{ "method":"DELETE", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/responses/{status_code}", "responseCode":204 }, "input":{"shape":"DeleteMethodResponseRequest"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"}, {"shape":"BadRequestException"}, {"shape":"ConflictException"} ] }, "DeleteModel":{ "name":"DeleteModel", "http":{ "method":"DELETE", "requestUri":"/restapis/{restapi_id}/models/{model_name}", "responseCode":202 }, "input":{"shape":"DeleteModelRequest"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"}, {"shape":"BadRequestException"}, {"shape":"ConflictException"} ] }, "DeleteResource":{ "name":"DeleteResource", "http":{ "method":"DELETE", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}", "responseCode":202 }, "input":{"shape":"DeleteResourceRequest"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"BadRequestException"}, {"shape":"ConflictException"}, {"shape":"TooManyRequestsException"} ] }, "DeleteRestApi":{ "name":"DeleteRestApi", "http":{ "method":"DELETE", "requestUri":"/restapis/{restapi_id}", "responseCode":202 }, "input":{"shape":"DeleteRestApiRequest"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"}, {"shape":"BadRequestException"} ] }, "DeleteStage":{ "name":"DeleteStage", "http":{ "method":"DELETE", "requestUri":"/restapis/{restapi_id}/stages/{stage_name}", "responseCode":202 }, "input":{"shape":"DeleteStageRequest"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"}, {"shape":"BadRequestException"} ] }, "DeleteUsagePlan":{ "name":"DeleteUsagePlan", "http":{ "method":"DELETE", "requestUri":"/usageplans/{usageplanId}", "responseCode":202 }, "input":{"shape":"DeleteUsagePlanRequest"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"BadRequestException"}, {"shape":"NotFoundException"} ] }, "DeleteUsagePlanKey":{ "name":"DeleteUsagePlanKey", "http":{ "method":"DELETE", "requestUri":"/usageplans/{usageplanId}/keys/{keyId}", "responseCode":202 }, "input":{"shape":"DeleteUsagePlanKeyRequest"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"ConflictException"}, {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "FlushStageAuthorizersCache":{ "name":"FlushStageAuthorizersCache", "http":{ "method":"DELETE", "requestUri":"/restapis/{restapi_id}/stages/{stage_name}/cache/authorizers", "responseCode":202 }, "input":{"shape":"FlushStageAuthorizersCacheRequest"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"} ] }, "FlushStageCache":{ "name":"FlushStageCache", "http":{ "method":"DELETE", "requestUri":"/restapis/{restapi_id}/stages/{stage_name}/cache/data", "responseCode":202 }, "input":{"shape":"FlushStageCacheRequest"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"} ] }, "GenerateClientCertificate":{ "name":"GenerateClientCertificate", "http":{ "method":"POST", "requestUri":"/clientcertificates", "responseCode":201 }, "input":{"shape":"GenerateClientCertificateRequest"}, "output":{"shape":"ClientCertificate"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"LimitExceededException"} ] }, "GetAccount":{ "name":"GetAccount", "http":{ "method":"GET", "requestUri":"/account" }, "input":{"shape":"GetAccountRequest"}, "output":{"shape":"Account"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetApiKey":{ "name":"GetApiKey", "http":{ "method":"GET", "requestUri":"/apikeys/{api_Key}" }, "input":{"shape":"GetApiKeyRequest"}, "output":{"shape":"ApiKey"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetApiKeys":{ "name":"GetApiKeys", "http":{ "method":"GET", "requestUri":"/apikeys" }, "input":{"shape":"GetApiKeysRequest"}, "output":{"shape":"ApiKeys"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"TooManyRequestsException"} ] }, "GetAuthorizer":{ "name":"GetAuthorizer", "http":{ "method":"GET", "requestUri":"/restapis/{restapi_id}/authorizers/{authorizer_id}" }, "input":{"shape":"GetAuthorizerRequest"}, "output":{"shape":"Authorizer"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetAuthorizers":{ "name":"GetAuthorizers", "http":{ "method":"GET", "requestUri":"/restapis/{restapi_id}/authorizers" }, "input":{"shape":"GetAuthorizersRequest"}, "output":{"shape":"Authorizers"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetBasePathMapping":{ "name":"GetBasePathMapping", "http":{ "method":"GET", "requestUri":"/domainnames/{domain_name}/basepathmappings/{base_path}" }, "input":{"shape":"GetBasePathMappingRequest"}, "output":{"shape":"BasePathMapping"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetBasePathMappings":{ "name":"GetBasePathMappings", "http":{ "method":"GET", "requestUri":"/domainnames/{domain_name}/basepathmappings" }, "input":{"shape":"GetBasePathMappingsRequest"}, "output":{"shape":"BasePathMappings"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetClientCertificate":{ "name":"GetClientCertificate", "http":{ "method":"GET", "requestUri":"/clientcertificates/{clientcertificate_id}" }, "input":{"shape":"GetClientCertificateRequest"}, "output":{"shape":"ClientCertificate"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetClientCertificates":{ "name":"GetClientCertificates", "http":{ "method":"GET", "requestUri":"/clientcertificates" }, "input":{"shape":"GetClientCertificatesRequest"}, "output":{"shape":"ClientCertificates"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"TooManyRequestsException"} ] }, "GetDeployment":{ "name":"GetDeployment", "http":{ "method":"GET", "requestUri":"/restapis/{restapi_id}/deployments/{deployment_id}" }, "input":{"shape":"GetDeploymentRequest"}, "output":{"shape":"Deployment"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"}, {"shape":"ServiceUnavailableException"} ] }, "GetDeployments":{ "name":"GetDeployments", "http":{ "method":"GET", "requestUri":"/restapis/{restapi_id}/deployments" }, "input":{"shape":"GetDeploymentsRequest"}, "output":{"shape":"Deployments"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"ServiceUnavailableException"} ] }, "GetDomainName":{ "name":"GetDomainName", "http":{ "method":"GET", "requestUri":"/domainnames/{domain_name}" }, "input":{"shape":"GetDomainNameRequest"}, "output":{"shape":"DomainName"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"ServiceUnavailableException"}, {"shape":"TooManyRequestsException"} ] }, "GetDomainNames":{ "name":"GetDomainNames", "http":{ "method":"GET", "requestUri":"/domainnames" }, "input":{"shape":"GetDomainNamesRequest"}, "output":{"shape":"DomainNames"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"TooManyRequestsException"} ] }, "GetExport":{ "name":"GetExport", "http":{ "method":"GET", "requestUri":"/restapis/{restapi_id}/stages/{stage_name}/exports/{export_type}", "responseCode":200 }, "input":{"shape":"GetExportRequest"}, "output":{"shape":"ExportResponse"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"} ] }, "GetIntegration":{ "name":"GetIntegration", "http":{ "method":"GET", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration" }, "input":{"shape":"GetIntegrationRequest"}, "output":{"shape":"Integration"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetIntegrationResponse":{ "name":"GetIntegrationResponse", "http":{ "method":"GET", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration/responses/{status_code}" }, "input":{"shape":"GetIntegrationResponseRequest"}, "output":{"shape":"IntegrationResponse"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetMethod":{ "name":"GetMethod", "http":{ "method":"GET", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}" }, "input":{"shape":"GetMethodRequest"}, "output":{"shape":"Method"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetMethodResponse":{ "name":"GetMethodResponse", "http":{ "method":"GET", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/responses/{status_code}" }, "input":{"shape":"GetMethodResponseRequest"}, "output":{"shape":"MethodResponse"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetModel":{ "name":"GetModel", "http":{ "method":"GET", "requestUri":"/restapis/{restapi_id}/models/{model_name}" }, "input":{"shape":"GetModelRequest"}, "output":{"shape":"Model"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetModelTemplate":{ "name":"GetModelTemplate", "http":{ "method":"GET", "requestUri":"/restapis/{restapi_id}/models/{model_name}/default_template" }, "input":{"shape":"GetModelTemplateRequest"}, "output":{"shape":"Template"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"} ] }, "GetModels":{ "name":"GetModels", "http":{ "method":"GET", "requestUri":"/restapis/{restapi_id}/models" }, "input":{"shape":"GetModelsRequest"}, "output":{"shape":"Models"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetResource":{ "name":"GetResource", "http":{ "method":"GET", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}" }, "input":{"shape":"GetResourceRequest"}, "output":{"shape":"Resource"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetResources":{ "name":"GetResources", "http":{ "method":"GET", "requestUri":"/restapis/{restapi_id}/resources" }, "input":{"shape":"GetResourcesRequest"}, "output":{"shape":"Resources"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetRestApi":{ "name":"GetRestApi", "http":{ "method":"GET", "requestUri":"/restapis/{restapi_id}" }, "input":{"shape":"GetRestApiRequest"}, "output":{"shape":"RestApi"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetRestApis":{ "name":"GetRestApis", "http":{ "method":"GET", "requestUri":"/restapis" }, "input":{"shape":"GetRestApisRequest"}, "output":{"shape":"RestApis"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"TooManyRequestsException"} ] }, "GetSdk":{ "name":"GetSdk", "http":{ "method":"GET", "requestUri":"/restapis/{restapi_id}/stages/{stage_name}/sdks/{sdk_type}", "responseCode":200 }, "input":{"shape":"GetSdkRequest"}, "output":{"shape":"SdkResponse"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"} ] }, "GetStage":{ "name":"GetStage", "http":{ "method":"GET", "requestUri":"/restapis/{restapi_id}/stages/{stage_name}" }, "input":{"shape":"GetStageRequest"}, "output":{"shape":"Stage"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetStages":{ "name":"GetStages", "http":{ "method":"GET", "requestUri":"/restapis/{restapi_id}/stages" }, "input":{"shape":"GetStagesRequest"}, "output":{"shape":"Stages"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetUsage":{ "name":"GetUsage", "http":{ "method":"GET", "requestUri":"/usageplans/{usageplanId}/usage" }, "input":{"shape":"GetUsageRequest"}, "output":{"shape":"Usage"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetUsagePlan":{ "name":"GetUsagePlan", "http":{ "method":"GET", "requestUri":"/usageplans/{usageplanId}" }, "input":{"shape":"GetUsagePlanRequest"}, "output":{"shape":"UsagePlan"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetUsagePlanKey":{ "name":"GetUsagePlanKey", "http":{ "method":"GET", "requestUri":"/usageplans/{usageplanId}/keys/{keyId}", "responseCode":200 }, "input":{"shape":"GetUsagePlanKeyRequest"}, "output":{"shape":"UsagePlanKey"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetUsagePlanKeys":{ "name":"GetUsagePlanKeys", "http":{ "method":"GET", "requestUri":"/usageplans/{usageplanId}/keys" }, "input":{"shape":"GetUsagePlanKeysRequest"}, "output":{"shape":"UsagePlanKeys"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "GetUsagePlans":{ "name":"GetUsagePlans", "http":{ "method":"GET", "requestUri":"/usageplans" }, "input":{"shape":"GetUsagePlansRequest"}, "output":{"shape":"UsagePlans"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"ConflictException"} ] }, "ImportApiKeys":{ "name":"ImportApiKeys", "http":{ "method":"POST", "requestUri":"/apikeys?mode=import", "responseCode":201 }, "input":{"shape":"ImportApiKeysRequest"}, "output":{"shape":"ApiKeyIds"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"}, {"shape":"LimitExceededException"}, {"shape":"BadRequestException"}, {"shape":"ConflictException"} ] }, "ImportRestApi":{ "name":"ImportRestApi", "http":{ "method":"POST", "requestUri":"/restapis?mode=import", "responseCode":201 }, "input":{"shape":"ImportRestApiRequest"}, "output":{"shape":"RestApi"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"LimitExceededException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"}, {"shape":"ConflictException"} ] }, "PutIntegration":{ "name":"PutIntegration", "http":{ "method":"PUT", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration", "responseCode":201 }, "input":{"shape":"PutIntegrationRequest"}, "output":{"shape":"Integration"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"BadRequestException"}, {"shape":"ConflictException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "PutIntegrationResponse":{ "name":"PutIntegrationResponse", "http":{ "method":"PUT", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration/responses/{status_code}", "responseCode":201 }, "input":{"shape":"PutIntegrationResponseRequest"}, "output":{"shape":"IntegrationResponse"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"}, {"shape":"ConflictException"} ] }, "PutMethod":{ "name":"PutMethod", "http":{ "method":"PUT", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}", "responseCode":201 }, "input":{"shape":"PutMethodRequest"}, "output":{"shape":"Method"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"ConflictException"}, {"shape":"LimitExceededException"}, {"shape":"TooManyRequestsException"} ] }, "PutMethodResponse":{ "name":"PutMethodResponse", "http":{ "method":"PUT", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/responses/{status_code}", "responseCode":201 }, "input":{"shape":"PutMethodResponseRequest"}, "output":{"shape":"MethodResponse"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"ConflictException"}, {"shape":"LimitExceededException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"} ] }, "PutRestApi":{ "name":"PutRestApi", "http":{ "method":"PUT", "requestUri":"/restapis/{restapi_id}" }, "input":{"shape":"PutRestApiRequest"}, "output":{"shape":"RestApi"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"LimitExceededException"}, {"shape":"NotFoundException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"}, {"shape":"ConflictException"} ] }, "TestInvokeAuthorizer":{ "name":"TestInvokeAuthorizer", "http":{ "method":"POST", "requestUri":"/restapis/{restapi_id}/authorizers/{authorizer_id}" }, "input":{"shape":"TestInvokeAuthorizerRequest"}, "output":{"shape":"TestInvokeAuthorizerResponse"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "TestInvokeMethod":{ "name":"TestInvokeMethod", "http":{ "method":"POST", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}" }, "input":{"shape":"TestInvokeMethodRequest"}, "output":{"shape":"TestInvokeMethodResponse"}, "errors":[ {"shape":"BadRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "UpdateAccount":{ "name":"UpdateAccount", "http":{ "method":"PATCH", "requestUri":"/account" }, "input":{"shape":"UpdateAccountRequest"}, "output":{"shape":"Account"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"BadRequestException"}, {"shape":"NotFoundException"}, {"shape":"TooManyRequestsException"} ] }, "UpdateApiKey":{ "name":"UpdateApiKey", "http":{ "method":"PATCH", "requestUri":"/apikeys/{api_Key}" }, "input":{"shape":"UpdateApiKeyRequest"}, "output":{"shape":"ApiKey"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"}, {"shape":"ConflictException"} ] }, "UpdateAuthorizer":{ "name":"UpdateAuthorizer", "http":{ "method":"PATCH", "requestUri":"/restapis/{restapi_id}/authorizers/{authorizer_id}" }, "input":{"shape":"UpdateAuthorizerRequest"}, "output":{"shape":"Authorizer"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"} ] }, "UpdateBasePathMapping":{ "name":"UpdateBasePathMapping", "http":{ "method":"PATCH", "requestUri":"/domainnames/{domain_name}/basepathmappings/{base_path}" }, "input":{"shape":"UpdateBasePathMappingRequest"}, "output":{"shape":"BasePathMapping"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"ConflictException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"} ] }, "UpdateClientCertificate":{ "name":"UpdateClientCertificate", "http":{ "method":"PATCH", "requestUri":"/clientcertificates/{clientcertificate_id}" }, "input":{"shape":"UpdateClientCertificateRequest"}, "output":{"shape":"ClientCertificate"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"BadRequestException"}, {"shape":"NotFoundException"} ] }, "UpdateDeployment":{ "name":"UpdateDeployment", "http":{ "method":"PATCH", "requestUri":"/restapis/{restapi_id}/deployments/{deployment_id}" }, "input":{"shape":"UpdateDeploymentRequest"}, "output":{"shape":"Deployment"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"}, {"shape":"ServiceUnavailableException"} ] }, "UpdateDomainName":{ "name":"UpdateDomainName", "http":{ "method":"PATCH", "requestUri":"/domainnames/{domain_name}" }, "input":{"shape":"UpdateDomainNameRequest"}, "output":{"shape":"DomainName"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"BadRequestException"}, {"shape":"ConflictException"}, {"shape":"TooManyRequestsException"} ] }, "UpdateIntegration":{ "name":"UpdateIntegration", "http":{ "method":"PATCH", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration" }, "input":{"shape":"UpdateIntegrationRequest"}, "output":{"shape":"Integration"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"}, {"shape":"ConflictException"} ] }, "UpdateIntegrationResponse":{ "name":"UpdateIntegrationResponse", "http":{ "method":"PATCH", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration/responses/{status_code}" }, "input":{"shape":"UpdateIntegrationResponseRequest"}, "output":{"shape":"IntegrationResponse"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"ConflictException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"} ] }, "UpdateMethod":{ "name":"UpdateMethod", "http":{ "method":"PATCH", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}" }, "input":{"shape":"UpdateMethodRequest"}, "output":{"shape":"Method"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"BadRequestException"}, {"shape":"ConflictException"}, {"shape":"TooManyRequestsException"} ] }, "UpdateMethodResponse":{ "name":"UpdateMethodResponse", "http":{ "method":"PATCH", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/responses/{status_code}", "responseCode":201 }, "input":{"shape":"UpdateMethodResponseRequest"}, "output":{"shape":"MethodResponse"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"ConflictException"}, {"shape":"LimitExceededException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"} ] }, "UpdateModel":{ "name":"UpdateModel", "http":{ "method":"PATCH", "requestUri":"/restapis/{restapi_id}/models/{model_name}" }, "input":{"shape":"UpdateModelRequest"}, "output":{"shape":"Model"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"BadRequestException"}, {"shape":"ConflictException"}, {"shape":"TooManyRequestsException"} ] }, "UpdateResource":{ "name":"UpdateResource", "http":{ "method":"PATCH", "requestUri":"/restapis/{restapi_id}/resources/{resource_id}" }, "input":{"shape":"UpdateResourceRequest"}, "output":{"shape":"Resource"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"ConflictException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"} ] }, "UpdateRestApi":{ "name":"UpdateRestApi", "http":{ "method":"PATCH", "requestUri":"/restapis/{restapi_id}" }, "input":{"shape":"UpdateRestApiRequest"}, "output":{"shape":"RestApi"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"ConflictException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"} ] }, "UpdateStage":{ "name":"UpdateStage", "http":{ "method":"PATCH", "requestUri":"/restapis/{restapi_id}/stages/{stage_name}" }, "input":{"shape":"UpdateStageRequest"}, "output":{"shape":"Stage"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"ConflictException"}, {"shape":"BadRequestException"}, {"shape":"TooManyRequestsException"} ] }, "UpdateUsage":{ "name":"UpdateUsage", "http":{ "method":"PATCH", "requestUri":"/usageplans/{usageplanId}/keys/{keyId}/usage" }, "input":{"shape":"UpdateUsageRequest"}, "output":{"shape":"Usage"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"BadRequestException"}, {"shape":"NotFoundException"} ] }, "UpdateUsagePlan":{ "name":"UpdateUsagePlan", "http":{ "method":"PATCH", "requestUri":"/usageplans/{usageplanId}" }, "input":{"shape":"UpdateUsagePlanRequest"}, "output":{"shape":"UsagePlan"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"BadRequestException"}, {"shape":"NotFoundException"}, {"shape":"ConflictException"} ] } }, "shapes":{ "Account":{ "type":"structure", "members":{ "cloudwatchRoleArn":{"shape":"String"}, "throttleSettings":{"shape":"ThrottleSettings"}, "features":{"shape":"ListOfString"}, "apiKeyVersion":{"shape":"String"} } }, "ApiKey":{ "type":"structure", "members":{ "id":{"shape":"String"}, "value":{"shape":"String"}, "name":{"shape":"String"}, "description":{"shape":"String"}, "enabled":{"shape":"Boolean"}, "createdDate":{"shape":"Timestamp"}, "lastUpdatedDate":{"shape":"Timestamp"}, "stageKeys":{"shape":"ListOfString"} } }, "ApiKeyIds":{ "type":"structure", "members":{ "ids":{"shape":"ListOfString"}, "warnings":{"shape":"ListOfString"} } }, "ApiKeys":{ "type":"structure", "members":{ "warnings":{"shape":"ListOfString"}, "position":{"shape":"String"}, "items":{ "shape":"ListOfApiKey", "locationName":"item" } } }, "ApiKeysFormat":{ "type":"string", "enum":["csv"] }, "ApiStage":{ "type":"structure", "members":{ "apiId":{"shape":"String"}, "stage":{"shape":"String"} } }, "Authorizer":{ "type":"structure", "members":{ "id":{"shape":"String"}, "name":{"shape":"String"}, "type":{"shape":"AuthorizerType"}, "providerARNs":{"shape":"ListOfARNs"}, "authType":{"shape":"String"}, "authorizerUri":{"shape":"String"}, "authorizerCredentials":{"shape":"String"}, "identitySource":{"shape":"String"}, "identityValidationExpression":{"shape":"String"}, "authorizerResultTtlInSeconds":{"shape":"NullableInteger"} } }, "AuthorizerType":{ "type":"string", "enum":[ "TOKEN", "COGNITO_USER_POOLS" ] }, "Authorizers":{ "type":"structure", "members":{ "position":{"shape":"String"}, "items":{ "shape":"ListOfAuthorizer", "locationName":"item" } } }, "BadRequestException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "error":{"httpStatusCode":400}, "exception":true }, "BasePathMapping":{ "type":"structure", "members":{ "basePath":{"shape":"String"}, "restApiId":{"shape":"String"}, "stage":{"shape":"String"} } }, "BasePathMappings":{ "type":"structure", "members":{ "position":{"shape":"String"}, "items":{ "shape":"ListOfBasePathMapping", "locationName":"item" } } }, "Blob":{"type":"blob"}, "Boolean":{"type":"boolean"}, "CacheClusterSize":{ "type":"string", "enum":[ "0.5", "1.6", "6.1", "13.5", "28.4", "58.2", "118", "237" ] }, "CacheClusterStatus":{ "type":"string", "enum":[ "CREATE_IN_PROGRESS", "AVAILABLE", "DELETE_IN_PROGRESS", "NOT_AVAILABLE", "FLUSH_IN_PROGRESS" ] }, "ClientCertificate":{ "type":"structure", "members":{ "clientCertificateId":{"shape":"String"}, "description":{"shape":"String"}, "pemEncodedCertificate":{"shape":"String"}, "createdDate":{"shape":"Timestamp"}, "expirationDate":{"shape":"Timestamp"} } }, "ClientCertificates":{ "type":"structure", "members":{ "position":{"shape":"String"}, "items":{ "shape":"ListOfClientCertificate", "locationName":"item" } } }, "ConflictException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "error":{"httpStatusCode":409}, "exception":true }, "CreateApiKeyRequest":{ "type":"structure", "members":{ "name":{"shape":"String"}, "description":{"shape":"String"}, "enabled":{"shape":"Boolean"}, "generateDistinctId":{"shape":"Boolean"}, "value":{"shape":"String"}, "stageKeys":{"shape":"ListOfStageKeys"} } }, "CreateAuthorizerRequest":{ "type":"structure", "required":[ "restApiId", "name", "type", "identitySource" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "name":{"shape":"String"}, "type":{"shape":"AuthorizerType"}, "providerARNs":{"shape":"ListOfARNs"}, "authType":{"shape":"String"}, "authorizerUri":{"shape":"String"}, "authorizerCredentials":{"shape":"String"}, "identitySource":{"shape":"String"}, "identityValidationExpression":{"shape":"String"}, "authorizerResultTtlInSeconds":{"shape":"NullableInteger"} } }, "CreateBasePathMappingRequest":{ "type":"structure", "required":[ "domainName", "restApiId" ], "members":{ "domainName":{ "shape":"String", "location":"uri", "locationName":"domain_name" }, "basePath":{"shape":"String"}, "restApiId":{"shape":"String"}, "stage":{"shape":"String"} } }, "CreateDeploymentRequest":{ "type":"structure", "required":[ "restApiId", "stageName" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "stageName":{"shape":"String"}, "stageDescription":{"shape":"String"}, "description":{"shape":"String"}, "cacheClusterEnabled":{"shape":"NullableBoolean"}, "cacheClusterSize":{"shape":"CacheClusterSize"}, "variables":{"shape":"MapOfStringToString"} } }, "CreateDomainNameRequest":{ "type":"structure", "required":[ "domainName", "certificateName", "certificateBody", "certificatePrivateKey", "certificateChain" ], "members":{ "domainName":{"shape":"String"}, "certificateName":{"shape":"String"}, "certificateBody":{"shape":"String"}, "certificatePrivateKey":{"shape":"String"}, "certificateChain":{"shape":"String"} } }, "CreateModelRequest":{ "type":"structure", "required":[ "restApiId", "name", "contentType" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "name":{"shape":"String"}, "description":{"shape":"String"}, "schema":{"shape":"String"}, "contentType":{"shape":"String"} } }, "CreateResourceRequest":{ "type":"structure", "required":[ "restApiId", "parentId", "pathPart" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "parentId":{ "shape":"String", "location":"uri", "locationName":"parent_id" }, "pathPart":{"shape":"String"} } }, "CreateRestApiRequest":{ "type":"structure", "required":["name"], "members":{ "name":{"shape":"String"}, "description":{"shape":"String"}, "cloneFrom":{"shape":"String"} } }, "CreateStageRequest":{ "type":"structure", "required":[ "restApiId", "stageName", "deploymentId" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "stageName":{"shape":"String"}, "deploymentId":{"shape":"String"}, "description":{"shape":"String"}, "cacheClusterEnabled":{"shape":"Boolean"}, "cacheClusterSize":{"shape":"CacheClusterSize"}, "variables":{"shape":"MapOfStringToString"} } }, "CreateUsagePlanKeyRequest":{ "type":"structure", "required":[ "usagePlanId", "keyId", "keyType" ], "members":{ "usagePlanId":{ "shape":"String", "location":"uri", "locationName":"usageplanId" }, "keyId":{"shape":"String"}, "keyType":{"shape":"String"} } }, "CreateUsagePlanRequest":{ "type":"structure", "required":["name"], "members":{ "name":{"shape":"String"}, "description":{"shape":"String"}, "apiStages":{"shape":"ListOfApiStage"}, "throttle":{"shape":"ThrottleSettings"}, "quota":{"shape":"QuotaSettings"} } }, "DeleteApiKeyRequest":{ "type":"structure", "required":["apiKey"], "members":{ "apiKey":{ "shape":"String", "location":"uri", "locationName":"api_Key" } } }, "DeleteAuthorizerRequest":{ "type":"structure", "required":[ "restApiId", "authorizerId" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "authorizerId":{ "shape":"String", "location":"uri", "locationName":"authorizer_id" } } }, "DeleteBasePathMappingRequest":{ "type":"structure", "required":[ "domainName", "basePath" ], "members":{ "domainName":{ "shape":"String", "location":"uri", "locationName":"domain_name" }, "basePath":{ "shape":"String", "location":"uri", "locationName":"base_path" } } }, "DeleteClientCertificateRequest":{ "type":"structure", "required":["clientCertificateId"], "members":{ "clientCertificateId":{ "shape":"String", "location":"uri", "locationName":"clientcertificate_id" } } }, "DeleteDeploymentRequest":{ "type":"structure", "required":[ "restApiId", "deploymentId" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "deploymentId":{ "shape":"String", "location":"uri", "locationName":"deployment_id" } } }, "DeleteDomainNameRequest":{ "type":"structure", "required":["domainName"], "members":{ "domainName":{ "shape":"String", "location":"uri", "locationName":"domain_name" } } }, "DeleteIntegrationRequest":{ "type":"structure", "required":[ "restApiId", "resourceId", "httpMethod" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" }, "httpMethod":{ "shape":"String", "location":"uri", "locationName":"http_method" } } }, "DeleteIntegrationResponseRequest":{ "type":"structure", "required":[ "restApiId", "resourceId", "httpMethod", "statusCode" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" }, "httpMethod":{ "shape":"String", "location":"uri", "locationName":"http_method" }, "statusCode":{ "shape":"StatusCode", "location":"uri", "locationName":"status_code" } } }, "DeleteMethodRequest":{ "type":"structure", "required":[ "restApiId", "resourceId", "httpMethod" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" }, "httpMethod":{ "shape":"String", "location":"uri", "locationName":"http_method" } } }, "DeleteMethodResponseRequest":{ "type":"structure", "required":[ "restApiId", "resourceId", "httpMethod", "statusCode" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" }, "httpMethod":{ "shape":"String", "location":"uri", "locationName":"http_method" }, "statusCode":{ "shape":"StatusCode", "location":"uri", "locationName":"status_code" } } }, "DeleteModelRequest":{ "type":"structure", "required":[ "restApiId", "modelName" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "modelName":{ "shape":"String", "location":"uri", "locationName":"model_name" } } }, "DeleteResourceRequest":{ "type":"structure", "required":[ "restApiId", "resourceId" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" } } }, "DeleteRestApiRequest":{ "type":"structure", "required":["restApiId"], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" } } }, "DeleteStageRequest":{ "type":"structure", "required":[ "restApiId", "stageName" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "stageName":{ "shape":"String", "location":"uri", "locationName":"stage_name" } } }, "DeleteUsagePlanKeyRequest":{ "type":"structure", "required":[ "usagePlanId", "keyId" ], "members":{ "usagePlanId":{ "shape":"String", "location":"uri", "locationName":"usageplanId" }, "keyId":{ "shape":"String", "location":"uri", "locationName":"keyId" } } }, "DeleteUsagePlanRequest":{ "type":"structure", "required":["usagePlanId"], "members":{ "usagePlanId":{ "shape":"String", "location":"uri", "locationName":"usageplanId" } } }, "Deployment":{ "type":"structure", "members":{ "id":{"shape":"String"}, "description":{"shape":"String"}, "createdDate":{"shape":"Timestamp"}, "apiSummary":{"shape":"PathToMapOfMethodSnapshot"} } }, "Deployments":{ "type":"structure", "members":{ "position":{"shape":"String"}, "items":{ "shape":"ListOfDeployment", "locationName":"item" } } }, "DomainName":{ "type":"structure", "members":{ "domainName":{"shape":"String"}, "certificateName":{"shape":"String"}, "certificateUploadDate":{"shape":"Timestamp"}, "distributionDomainName":{"shape":"String"} } }, "DomainNames":{ "type":"structure", "members":{ "position":{"shape":"String"}, "items":{ "shape":"ListOfDomainName", "locationName":"item" } } }, "Double":{"type":"double"}, "ExportResponse":{ "type":"structure", "members":{ "contentType":{ "shape":"String", "location":"header", "locationName":"Content-Type" }, "contentDisposition":{ "shape":"String", "location":"header", "locationName":"Content-Disposition" }, "body":{"shape":"Blob"} }, "payload":"body" }, "FlushStageAuthorizersCacheRequest":{ "type":"structure", "required":[ "restApiId", "stageName" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "stageName":{ "shape":"String", "location":"uri", "locationName":"stage_name" } } }, "FlushStageCacheRequest":{ "type":"structure", "required":[ "restApiId", "stageName" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "stageName":{ "shape":"String", "location":"uri", "locationName":"stage_name" } } }, "GenerateClientCertificateRequest":{ "type":"structure", "members":{ "description":{"shape":"String"} } }, "GetAccountRequest":{ "type":"structure", "members":{ } }, "GetApiKeyRequest":{ "type":"structure", "required":["apiKey"], "members":{ "apiKey":{ "shape":"String", "location":"uri", "locationName":"api_Key" }, "includeValue":{ "shape":"Boolean", "location":"querystring", "locationName":"includeValue" } } }, "GetApiKeysRequest":{ "type":"structure", "members":{ "position":{ "shape":"String", "location":"querystring", "locationName":"position" }, "limit":{ "shape":"NullableInteger", "location":"querystring", "locationName":"limit" }, "nameQuery":{ "shape":"String", "location":"querystring", "locationName":"name" }, "includeValues":{ "shape":"Boolean", "location":"querystring", "locationName":"includeValues" } } }, "GetAuthorizerRequest":{ "type":"structure", "required":[ "restApiId", "authorizerId" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "authorizerId":{ "shape":"String", "location":"uri", "locationName":"authorizer_id" } } }, "GetAuthorizersRequest":{ "type":"structure", "required":["restApiId"], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "position":{ "shape":"String", "location":"querystring", "locationName":"position" }, "limit":{ "shape":"NullableInteger", "location":"querystring", "locationName":"limit" } } }, "GetBasePathMappingRequest":{ "type":"structure", "required":[ "domainName", "basePath" ], "members":{ "domainName":{ "shape":"String", "location":"uri", "locationName":"domain_name" }, "basePath":{ "shape":"String", "location":"uri", "locationName":"base_path" } } }, "GetBasePathMappingsRequest":{ "type":"structure", "required":["domainName"], "members":{ "domainName":{ "shape":"String", "location":"uri", "locationName":"domain_name" }, "position":{ "shape":"String", "location":"querystring", "locationName":"position" }, "limit":{ "shape":"NullableInteger", "location":"querystring", "locationName":"limit" } } }, "GetClientCertificateRequest":{ "type":"structure", "required":["clientCertificateId"], "members":{ "clientCertificateId":{ "shape":"String", "location":"uri", "locationName":"clientcertificate_id" } } }, "GetClientCertificatesRequest":{ "type":"structure", "members":{ "position":{ "shape":"String", "location":"querystring", "locationName":"position" }, "limit":{ "shape":"NullableInteger", "location":"querystring", "locationName":"limit" } } }, "GetDeploymentRequest":{ "type":"structure", "required":[ "restApiId", "deploymentId" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "deploymentId":{ "shape":"String", "location":"uri", "locationName":"deployment_id" } } }, "GetDeploymentsRequest":{ "type":"structure", "required":["restApiId"], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "position":{ "shape":"String", "location":"querystring", "locationName":"position" }, "limit":{ "shape":"NullableInteger", "location":"querystring", "locationName":"limit" } } }, "GetDomainNameRequest":{ "type":"structure", "required":["domainName"], "members":{ "domainName":{ "shape":"String", "location":"uri", "locationName":"domain_name" } } }, "GetDomainNamesRequest":{ "type":"structure", "members":{ "position":{ "shape":"String", "location":"querystring", "locationName":"position" }, "limit":{ "shape":"NullableInteger", "location":"querystring", "locationName":"limit" } } }, "GetExportRequest":{ "type":"structure", "required":[ "restApiId", "stageName", "exportType" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "stageName":{ "shape":"String", "location":"uri", "locationName":"stage_name" }, "exportType":{ "shape":"String", "location":"uri", "locationName":"export_type" }, "parameters":{ "shape":"MapOfStringToString", "location":"querystring" }, "accepts":{ "shape":"String", "location":"header", "locationName":"Accept" } } }, "GetIntegrationRequest":{ "type":"structure", "required":[ "restApiId", "resourceId", "httpMethod" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" }, "httpMethod":{ "shape":"String", "location":"uri", "locationName":"http_method" } } }, "GetIntegrationResponseRequest":{ "type":"structure", "required":[ "restApiId", "resourceId", "httpMethod", "statusCode" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" }, "httpMethod":{ "shape":"String", "location":"uri", "locationName":"http_method" }, "statusCode":{ "shape":"StatusCode", "location":"uri", "locationName":"status_code" } } }, "GetMethodRequest":{ "type":"structure", "required":[ "restApiId", "resourceId", "httpMethod" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" }, "httpMethod":{ "shape":"String", "location":"uri", "locationName":"http_method" } } }, "GetMethodResponseRequest":{ "type":"structure", "required":[ "restApiId", "resourceId", "httpMethod", "statusCode" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" }, "httpMethod":{ "shape":"String", "location":"uri", "locationName":"http_method" }, "statusCode":{ "shape":"StatusCode", "location":"uri", "locationName":"status_code" } } }, "GetModelRequest":{ "type":"structure", "required":[ "restApiId", "modelName" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "modelName":{ "shape":"String", "location":"uri", "locationName":"model_name" }, "flatten":{ "shape":"Boolean", "location":"querystring", "locationName":"flatten" } } }, "GetModelTemplateRequest":{ "type":"structure", "required":[ "restApiId", "modelName" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "modelName":{ "shape":"String", "location":"uri", "locationName":"model_name" } } }, "GetModelsRequest":{ "type":"structure", "required":["restApiId"], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "position":{ "shape":"String", "location":"querystring", "locationName":"position" }, "limit":{ "shape":"NullableInteger", "location":"querystring", "locationName":"limit" } } }, "GetResourceRequest":{ "type":"structure", "required":[ "restApiId", "resourceId" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" } } }, "GetResourcesRequest":{ "type":"structure", "required":["restApiId"], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "position":{ "shape":"String", "location":"querystring", "locationName":"position" }, "limit":{ "shape":"NullableInteger", "location":"querystring", "locationName":"limit" } } }, "GetRestApiRequest":{ "type":"structure", "required":["restApiId"], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" } } }, "GetRestApisRequest":{ "type":"structure", "members":{ "position":{ "shape":"String", "location":"querystring", "locationName":"position" }, "limit":{ "shape":"NullableInteger", "location":"querystring", "locationName":"limit" } } }, "GetSdkRequest":{ "type":"structure", "required":[ "restApiId", "stageName", "sdkType" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "stageName":{ "shape":"String", "location":"uri", "locationName":"stage_name" }, "sdkType":{ "shape":"String", "location":"uri", "locationName":"sdk_type" }, "parameters":{ "shape":"MapOfStringToString", "location":"querystring" } } }, "GetStageRequest":{ "type":"structure", "required":[ "restApiId", "stageName" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "stageName":{ "shape":"String", "location":"uri", "locationName":"stage_name" } } }, "GetStagesRequest":{ "type":"structure", "required":["restApiId"], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "deploymentId":{ "shape":"String", "location":"querystring", "locationName":"deploymentId" } } }, "GetUsagePlanKeyRequest":{ "type":"structure", "required":[ "usagePlanId", "keyId" ], "members":{ "usagePlanId":{ "shape":"String", "location":"uri", "locationName":"usageplanId" }, "keyId":{ "shape":"String", "location":"uri", "locationName":"keyId" } } }, "GetUsagePlanKeysRequest":{ "type":"structure", "required":["usagePlanId"], "members":{ "usagePlanId":{ "shape":"String", "location":"uri", "locationName":"usageplanId" }, "position":{ "shape":"String", "location":"querystring", "locationName":"position" }, "limit":{ "shape":"NullableInteger", "location":"querystring", "locationName":"limit" }, "nameQuery":{ "shape":"String", "location":"querystring", "locationName":"name" } } }, "GetUsagePlanRequest":{ "type":"structure", "required":["usagePlanId"], "members":{ "usagePlanId":{ "shape":"String", "location":"uri", "locationName":"usageplanId" } } }, "GetUsagePlansRequest":{ "type":"structure", "members":{ "position":{ "shape":"String", "location":"querystring", "locationName":"position" }, "keyId":{ "shape":"String", "location":"querystring", "locationName":"keyId" }, "limit":{ "shape":"NullableInteger", "location":"querystring", "locationName":"limit" } } }, "GetUsageRequest":{ "type":"structure", "required":[ "usagePlanId", "startDate", "endDate" ], "members":{ "usagePlanId":{ "shape":"String", "location":"uri", "locationName":"usageplanId" }, "keyId":{ "shape":"String", "location":"querystring", "locationName":"keyId" }, "startDate":{ "shape":"String", "location":"querystring", "locationName":"startDate" }, "endDate":{ "shape":"String", "location":"querystring", "locationName":"endDate" }, "position":{ "shape":"String", "location":"querystring", "locationName":"position" }, "limit":{ "shape":"NullableInteger", "location":"querystring", "locationName":"limit" } } }, "ImportApiKeysRequest":{ "type":"structure", "required":[ "body", "format" ], "members":{ "body":{"shape":"Blob"}, "format":{ "shape":"ApiKeysFormat", "location":"querystring", "locationName":"format" }, "failOnWarnings":{ "shape":"Boolean", "location":"querystring", "locationName":"failonwarnings" } }, "payload":"body" }, "ImportRestApiRequest":{ "type":"structure", "required":["body"], "members":{ "failOnWarnings":{ "shape":"Boolean", "location":"querystring", "locationName":"failonwarnings" }, "parameters":{ "shape":"MapOfStringToString", "location":"querystring" }, "body":{"shape":"Blob"} }, "payload":"body" }, "Integer":{"type":"integer"}, "Integration":{ "type":"structure", "members":{ "type":{"shape":"IntegrationType"}, "httpMethod":{"shape":"String"}, "uri":{"shape":"String"}, "credentials":{"shape":"String"}, "requestParameters":{"shape":"MapOfStringToString"}, "requestTemplates":{"shape":"MapOfStringToString"}, "passthroughBehavior":{"shape":"String"}, "cacheNamespace":{"shape":"String"}, "cacheKeyParameters":{"shape":"ListOfString"}, "integrationResponses":{"shape":"MapOfIntegrationResponse"} } }, "IntegrationResponse":{ "type":"structure", "members":{ "statusCode":{"shape":"StatusCode"}, "selectionPattern":{"shape":"String"}, "responseParameters":{"shape":"MapOfStringToString"}, "responseTemplates":{"shape":"MapOfStringToString"} } }, "IntegrationType":{ "type":"string", "enum":[ "HTTP", "AWS", "MOCK", "HTTP_PROXY", "AWS_PROXY" ] }, "LimitExceededException":{ "type":"structure", "members":{ "retryAfterSeconds":{ "shape":"String", "location":"header", "locationName":"Retry-After" }, "message":{"shape":"String"} }, "error":{"httpStatusCode":429}, "exception":true }, "ListOfARNs":{ "type":"list", "member":{"shape":"ProviderARN"} }, "ListOfApiKey":{ "type":"list", "member":{"shape":"ApiKey"} }, "ListOfApiStage":{ "type":"list", "member":{"shape":"ApiStage"} }, "ListOfAuthorizer":{ "type":"list", "member":{"shape":"Authorizer"} }, "ListOfBasePathMapping":{ "type":"list", "member":{"shape":"BasePathMapping"} }, "ListOfClientCertificate":{ "type":"list", "member":{"shape":"ClientCertificate"} }, "ListOfDeployment":{ "type":"list", "member":{"shape":"Deployment"} }, "ListOfDomainName":{ "type":"list", "member":{"shape":"DomainName"} }, "ListOfLong":{ "type":"list", "member":{"shape":"Long"} }, "ListOfModel":{ "type":"list", "member":{"shape":"Model"} }, "ListOfPatchOperation":{ "type":"list", "member":{"shape":"PatchOperation"} }, "ListOfResource":{ "type":"list", "member":{"shape":"Resource"} }, "ListOfRestApi":{ "type":"list", "member":{"shape":"RestApi"} }, "ListOfStage":{ "type":"list", "member":{"shape":"Stage"} }, "ListOfStageKeys":{ "type":"list", "member":{"shape":"StageKey"} }, "ListOfString":{ "type":"list", "member":{"shape":"String"} }, "ListOfUsage":{ "type":"list", "member":{"shape":"ListOfLong"} }, "ListOfUsagePlan":{ "type":"list", "member":{"shape":"UsagePlan"} }, "ListOfUsagePlanKey":{ "type":"list", "member":{"shape":"UsagePlanKey"} }, "Long":{"type":"long"}, "MapOfHeaderValues":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"String"} }, "MapOfIntegrationResponse":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"IntegrationResponse"} }, "MapOfKeyUsages":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"ListOfUsage"} }, "MapOfMethod":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"Method"} }, "MapOfMethodResponse":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"MethodResponse"} }, "MapOfMethodSettings":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"MethodSetting"} }, "MapOfMethodSnapshot":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"MethodSnapshot"} }, "MapOfStringToBoolean":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"NullableBoolean"} }, "MapOfStringToList":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"ListOfString"} }, "MapOfStringToString":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"String"} }, "Method":{ "type":"structure", "members":{ "httpMethod":{"shape":"String"}, "authorizationType":{"shape":"String"}, "authorizerId":{"shape":"String"}, "apiKeyRequired":{"shape":"NullableBoolean"}, "requestParameters":{"shape":"MapOfStringToBoolean"}, "requestModels":{"shape":"MapOfStringToString"}, "methodResponses":{"shape":"MapOfMethodResponse"}, "methodIntegration":{"shape":"Integration"} } }, "MethodResponse":{ "type":"structure", "members":{ "statusCode":{"shape":"StatusCode"}, "responseParameters":{"shape":"MapOfStringToBoolean"}, "responseModels":{"shape":"MapOfStringToString"} } }, "MethodSetting":{ "type":"structure", "members":{ "metricsEnabled":{"shape":"Boolean"}, "loggingLevel":{"shape":"String"}, "dataTraceEnabled":{"shape":"Boolean"}, "throttlingBurstLimit":{"shape":"Integer"}, "throttlingRateLimit":{"shape":"Double"}, "cachingEnabled":{"shape":"Boolean"}, "cacheTtlInSeconds":{"shape":"Integer"}, "cacheDataEncrypted":{"shape":"Boolean"}, "requireAuthorizationForCacheControl":{"shape":"Boolean"}, "unauthorizedCacheControlHeaderStrategy":{"shape":"UnauthorizedCacheControlHeaderStrategy"} } }, "MethodSnapshot":{ "type":"structure", "members":{ "authorizationType":{"shape":"String"}, "apiKeyRequired":{"shape":"Boolean"} } }, "Model":{ "type":"structure", "members":{ "id":{"shape":"String"}, "name":{"shape":"String"}, "description":{"shape":"String"}, "schema":{"shape":"String"}, "contentType":{"shape":"String"} } }, "Models":{ "type":"structure", "members":{ "position":{"shape":"String"}, "items":{ "shape":"ListOfModel", "locationName":"item" } } }, "NotFoundException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "error":{"httpStatusCode":404}, "exception":true }, "NullableBoolean":{"type":"boolean"}, "NullableInteger":{"type":"integer"}, "Op":{ "type":"string", "enum":[ "add", "remove", "replace", "move", "copy", "test" ] }, "PatchOperation":{ "type":"structure", "members":{ "op":{"shape":"Op"}, "path":{"shape":"String"}, "value":{"shape":"String"}, "from":{"shape":"String"} } }, "PathToMapOfMethodSnapshot":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"MapOfMethodSnapshot"} }, "ProviderARN":{"type":"string"}, "PutIntegrationRequest":{ "type":"structure", "required":[ "restApiId", "resourceId", "httpMethod", "type" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" }, "httpMethod":{ "shape":"String", "location":"uri", "locationName":"http_method" }, "type":{"shape":"IntegrationType"}, "integrationHttpMethod":{ "shape":"String", "locationName":"httpMethod" }, "uri":{"shape":"String"}, "credentials":{"shape":"String"}, "requestParameters":{"shape":"MapOfStringToString"}, "requestTemplates":{"shape":"MapOfStringToString"}, "passthroughBehavior":{"shape":"String"}, "cacheNamespace":{"shape":"String"}, "cacheKeyParameters":{"shape":"ListOfString"} } }, "PutIntegrationResponseRequest":{ "type":"structure", "required":[ "restApiId", "resourceId", "httpMethod", "statusCode" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" }, "httpMethod":{ "shape":"String", "location":"uri", "locationName":"http_method" }, "statusCode":{ "shape":"StatusCode", "location":"uri", "locationName":"status_code" }, "selectionPattern":{"shape":"String"}, "responseParameters":{"shape":"MapOfStringToString"}, "responseTemplates":{"shape":"MapOfStringToString"} } }, "PutMethodRequest":{ "type":"structure", "required":[ "restApiId", "resourceId", "httpMethod", "authorizationType" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" }, "httpMethod":{ "shape":"String", "location":"uri", "locationName":"http_method" }, "authorizationType":{"shape":"String"}, "authorizerId":{"shape":"String"}, "apiKeyRequired":{"shape":"Boolean"}, "requestParameters":{"shape":"MapOfStringToBoolean"}, "requestModels":{"shape":"MapOfStringToString"} } }, "PutMethodResponseRequest":{ "type":"structure", "required":[ "restApiId", "resourceId", "httpMethod", "statusCode" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" }, "httpMethod":{ "shape":"String", "location":"uri", "locationName":"http_method" }, "statusCode":{ "shape":"StatusCode", "location":"uri", "locationName":"status_code" }, "responseParameters":{"shape":"MapOfStringToBoolean"}, "responseModels":{"shape":"MapOfStringToString"} } }, "PutMode":{ "type":"string", "enum":[ "merge", "overwrite" ] }, "PutRestApiRequest":{ "type":"structure", "required":[ "restApiId", "body" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "mode":{ "shape":"PutMode", "location":"querystring", "locationName":"mode" }, "failOnWarnings":{ "shape":"Boolean", "location":"querystring", "locationName":"failonwarnings" }, "parameters":{ "shape":"MapOfStringToString", "location":"querystring" }, "body":{"shape":"Blob"} }, "payload":"body" }, "QuotaPeriodType":{ "type":"string", "enum":[ "DAY", "WEEK", "MONTH" ] }, "QuotaSettings":{ "type":"structure", "members":{ "limit":{"shape":"Integer"}, "offset":{"shape":"Integer"}, "period":{"shape":"QuotaPeriodType"} } }, "Resource":{ "type":"structure", "members":{ "id":{"shape":"String"}, "parentId":{"shape":"String"}, "pathPart":{"shape":"String"}, "path":{"shape":"String"}, "resourceMethods":{"shape":"MapOfMethod"} } }, "Resources":{ "type":"structure", "members":{ "position":{"shape":"String"}, "items":{ "shape":"ListOfResource", "locationName":"item" } } }, "RestApi":{ "type":"structure", "members":{ "id":{"shape":"String"}, "name":{"shape":"String"}, "description":{"shape":"String"}, "createdDate":{"shape":"Timestamp"}, "warnings":{"shape":"ListOfString"} } }, "RestApis":{ "type":"structure", "members":{ "position":{"shape":"String"}, "items":{ "shape":"ListOfRestApi", "locationName":"item" } } }, "SdkResponse":{ "type":"structure", "members":{ "contentType":{ "shape":"String", "location":"header", "locationName":"Content-Type" }, "contentDisposition":{ "shape":"String", "location":"header", "locationName":"Content-Disposition" }, "body":{"shape":"Blob"} }, "payload":"body" }, "ServiceUnavailableException":{ "type":"structure", "members":{ "retryAfterSeconds":{ "shape":"String", "location":"header", "locationName":"Retry-After" }, "message":{"shape":"String"} }, "error":{"httpStatusCode":503}, "exception":true, "fault":true }, "Stage":{ "type":"structure", "members":{ "deploymentId":{"shape":"String"}, "clientCertificateId":{"shape":"String"}, "stageName":{"shape":"String"}, "description":{"shape":"String"}, "cacheClusterEnabled":{"shape":"Boolean"}, "cacheClusterSize":{"shape":"CacheClusterSize"}, "cacheClusterStatus":{"shape":"CacheClusterStatus"}, "methodSettings":{"shape":"MapOfMethodSettings"}, "variables":{"shape":"MapOfStringToString"}, "createdDate":{"shape":"Timestamp"}, "lastUpdatedDate":{"shape":"Timestamp"} } }, "StageKey":{ "type":"structure", "members":{ "restApiId":{"shape":"String"}, "stageName":{"shape":"String"} } }, "Stages":{ "type":"structure", "members":{ "item":{"shape":"ListOfStage"} } }, "StatusCode":{ "type":"string", "pattern":"[1-5]\\d\\d" }, "String":{"type":"string"}, "Template":{ "type":"structure", "members":{ "value":{"shape":"String"} } }, "TestInvokeAuthorizerRequest":{ "type":"structure", "required":[ "restApiId", "authorizerId" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "authorizerId":{ "shape":"String", "location":"uri", "locationName":"authorizer_id" }, "headers":{"shape":"MapOfHeaderValues"}, "pathWithQueryString":{"shape":"String"}, "body":{"shape":"String"}, "stageVariables":{"shape":"MapOfStringToString"}, "additionalContext":{"shape":"MapOfStringToString"} } }, "TestInvokeAuthorizerResponse":{ "type":"structure", "members":{ "clientStatus":{"shape":"Integer"}, "log":{"shape":"String"}, "latency":{"shape":"Long"}, "principalId":{"shape":"String"}, "policy":{"shape":"String"}, "authorization":{"shape":"MapOfStringToList"}, "claims":{"shape":"MapOfStringToString"} } }, "TestInvokeMethodRequest":{ "type":"structure", "required":[ "restApiId", "resourceId", "httpMethod" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" }, "httpMethod":{ "shape":"String", "location":"uri", "locationName":"http_method" }, "pathWithQueryString":{"shape":"String"}, "body":{"shape":"String"}, "headers":{"shape":"MapOfHeaderValues"}, "clientCertificateId":{"shape":"String"}, "stageVariables":{"shape":"MapOfStringToString"} } }, "TestInvokeMethodResponse":{ "type":"structure", "members":{ "status":{"shape":"Integer"}, "body":{"shape":"String"}, "headers":{"shape":"MapOfHeaderValues"}, "log":{"shape":"String"}, "latency":{"shape":"Long"} } }, "ThrottleSettings":{ "type":"structure", "members":{ "burstLimit":{"shape":"Integer"}, "rateLimit":{"shape":"Double"} } }, "Timestamp":{"type":"timestamp"}, "TooManyRequestsException":{ "type":"structure", "members":{ "retryAfterSeconds":{ "shape":"String", "location":"header", "locationName":"Retry-After" }, "message":{"shape":"String"} }, "error":{"httpStatusCode":429}, "exception":true }, "UnauthorizedCacheControlHeaderStrategy":{ "type":"string", "enum":[ "FAIL_WITH_403", "SUCCEED_WITH_RESPONSE_HEADER", "SUCCEED_WITHOUT_RESPONSE_HEADER" ] }, "UnauthorizedException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "error":{"httpStatusCode":401}, "exception":true }, "UpdateAccountRequest":{ "type":"structure", "members":{ "patchOperations":{"shape":"ListOfPatchOperation"} } }, "UpdateApiKeyRequest":{ "type":"structure", "required":["apiKey"], "members":{ "apiKey":{ "shape":"String", "location":"uri", "locationName":"api_Key" }, "patchOperations":{"shape":"ListOfPatchOperation"} } }, "UpdateAuthorizerRequest":{ "type":"structure", "required":[ "restApiId", "authorizerId" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "authorizerId":{ "shape":"String", "location":"uri", "locationName":"authorizer_id" }, "patchOperations":{"shape":"ListOfPatchOperation"} } }, "UpdateBasePathMappingRequest":{ "type":"structure", "required":[ "domainName", "basePath" ], "members":{ "domainName":{ "shape":"String", "location":"uri", "locationName":"domain_name" }, "basePath":{ "shape":"String", "location":"uri", "locationName":"base_path" }, "patchOperations":{"shape":"ListOfPatchOperation"} } }, "UpdateClientCertificateRequest":{ "type":"structure", "required":["clientCertificateId"], "members":{ "clientCertificateId":{ "shape":"String", "location":"uri", "locationName":"clientcertificate_id" }, "patchOperations":{"shape":"ListOfPatchOperation"} } }, "UpdateDeploymentRequest":{ "type":"structure", "required":[ "restApiId", "deploymentId" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "deploymentId":{ "shape":"String", "location":"uri", "locationName":"deployment_id" }, "patchOperations":{"shape":"ListOfPatchOperation"} } }, "UpdateDomainNameRequest":{ "type":"structure", "required":["domainName"], "members":{ "domainName":{ "shape":"String", "location":"uri", "locationName":"domain_name" }, "patchOperations":{"shape":"ListOfPatchOperation"} } }, "UpdateIntegrationRequest":{ "type":"structure", "required":[ "restApiId", "resourceId", "httpMethod" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" }, "httpMethod":{ "shape":"String", "location":"uri", "locationName":"http_method" }, "patchOperations":{"shape":"ListOfPatchOperation"} } }, "UpdateIntegrationResponseRequest":{ "type":"structure", "required":[ "restApiId", "resourceId", "httpMethod", "statusCode" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" }, "httpMethod":{ "shape":"String", "location":"uri", "locationName":"http_method" }, "statusCode":{ "shape":"StatusCode", "location":"uri", "locationName":"status_code" }, "patchOperations":{"shape":"ListOfPatchOperation"} } }, "UpdateMethodRequest":{ "type":"structure", "required":[ "restApiId", "resourceId", "httpMethod" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" }, "httpMethod":{ "shape":"String", "location":"uri", "locationName":"http_method" }, "patchOperations":{"shape":"ListOfPatchOperation"} } }, "UpdateMethodResponseRequest":{ "type":"structure", "required":[ "restApiId", "resourceId", "httpMethod", "statusCode" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" }, "httpMethod":{ "shape":"String", "location":"uri", "locationName":"http_method" }, "statusCode":{ "shape":"StatusCode", "location":"uri", "locationName":"status_code" }, "patchOperations":{"shape":"ListOfPatchOperation"} } }, "UpdateModelRequest":{ "type":"structure", "required":[ "restApiId", "modelName" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "modelName":{ "shape":"String", "location":"uri", "locationName":"model_name" }, "patchOperations":{"shape":"ListOfPatchOperation"} } }, "UpdateResourceRequest":{ "type":"structure", "required":[ "restApiId", "resourceId" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "resourceId":{ "shape":"String", "location":"uri", "locationName":"resource_id" }, "patchOperations":{"shape":"ListOfPatchOperation"} } }, "UpdateRestApiRequest":{ "type":"structure", "required":["restApiId"], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "patchOperations":{"shape":"ListOfPatchOperation"} } }, "UpdateStageRequest":{ "type":"structure", "required":[ "restApiId", "stageName" ], "members":{ "restApiId":{ "shape":"String", "location":"uri", "locationName":"restapi_id" }, "stageName":{ "shape":"String", "location":"uri", "locationName":"stage_name" }, "patchOperations":{"shape":"ListOfPatchOperation"} } }, "UpdateUsagePlanRequest":{ "type":"structure", "required":["usagePlanId"], "members":{ "usagePlanId":{ "shape":"String", "location":"uri", "locationName":"usageplanId" }, "patchOperations":{"shape":"ListOfPatchOperation"} } }, "UpdateUsageRequest":{ "type":"structure", "required":[ "usagePlanId", "keyId" ], "members":{ "usagePlanId":{ "shape":"String", "location":"uri", "locationName":"usageplanId" }, "keyId":{ "shape":"String", "location":"uri", "locationName":"keyId" }, "patchOperations":{"shape":"ListOfPatchOperation"} } }, "Usage":{ "type":"structure", "members":{ "usagePlanId":{"shape":"String"}, "startDate":{"shape":"String"}, "endDate":{"shape":"String"}, "position":{"shape":"String"}, "items":{ "shape":"MapOfKeyUsages", "locationName":"values" } } }, "UsagePlan":{ "type":"structure", "members":{ "id":{"shape":"String"}, "name":{"shape":"String"}, "description":{"shape":"String"}, "apiStages":{"shape":"ListOfApiStage"}, "throttle":{"shape":"ThrottleSettings"}, "quota":{"shape":"QuotaSettings"} } }, "UsagePlanKey":{ "type":"structure", "members":{ "id":{"shape":"String"}, "type":{"shape":"String"}, "value":{"shape":"String"}, "name":{"shape":"String"} } }, "UsagePlanKeys":{ "type":"structure", "members":{ "position":{"shape":"String"}, "items":{ "shape":"ListOfUsagePlanKey", "locationName":"item" } } }, "UsagePlans":{ "type":"structure", "members":{ "position":{"shape":"String"}, "items":{ "shape":"ListOfUsagePlan", "locationName":"item" } } } } } aws-sdk-go-1.4.22/models/apis/apigateway/2015-07-09/docs-2.json000066400000000000000000004250311300374646400231650ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon API Gateway

        Amazon API Gateway helps developers deliver robust, secure, and scalable mobile and web application back ends. Amazon API Gateway allows developers to securely connect mobile and web applications to APIs that run on AWS Lambda, Amazon EC2, or other publicly addressable web services that are hosted outside of AWS.

        ", "operations": { "CreateApiKey": "

        Create an ApiKey resource.

        ", "CreateAuthorizer": "

        Adds a new Authorizer resource to an existing RestApi resource.

        ", "CreateBasePathMapping": "

        Creates a new BasePathMapping resource.

        ", "CreateDeployment": "

        Creates a Deployment resource, which makes a specified RestApi callable over the internet.

        ", "CreateDomainName": "

        Creates a new domain name.

        ", "CreateModel": "

        Adds a new Model resource to an existing RestApi resource.

        ", "CreateResource": "

        Creates a Resource resource.

        ", "CreateRestApi": "

        Creates a new RestApi resource.

        ", "CreateStage": "

        Creates a new Stage resource that references a pre-existing Deployment for the API.

        ", "CreateUsagePlan": "

        Creates a usage plan with the throttle and quota limits, as well as the associated API stages, specified in the payload.

        ", "CreateUsagePlanKey": "

        Creates a usage plan key for adding an existing API key to a usage plan.

        ", "DeleteApiKey": "

        Deletes the ApiKey resource.

        ", "DeleteAuthorizer": "

        Deletes an existing Authorizer resource.

        ", "DeleteBasePathMapping": "

        Deletes the BasePathMapping resource.

        ", "DeleteClientCertificate": "

        Deletes the ClientCertificate resource.

        ", "DeleteDeployment": "

        Deletes a Deployment resource. Deleting a deployment will only succeed if there are no Stage resources associated with it.

        ", "DeleteDomainName": "

        Deletes the DomainName resource.

        ", "DeleteIntegration": "

        Represents a delete integration.

        ", "DeleteIntegrationResponse": "

        Represents a delete integration response.

        ", "DeleteMethod": "

        Deletes an existing Method resource.

        ", "DeleteMethodResponse": "

        Deletes an existing MethodResponse resource.

        ", "DeleteModel": "

        Deletes a model.

        ", "DeleteResource": "

        Deletes a Resource resource.

        ", "DeleteRestApi": "

        Deletes the specified API.

        ", "DeleteStage": "

        Deletes a Stage resource.

        ", "DeleteUsagePlan": "

        Deletes a usage plan of a given plan Id.

        ", "DeleteUsagePlanKey": "

        Deletes a usage plan key and remove the underlying API key from the associated usage plan.

        ", "FlushStageAuthorizersCache": "

        Flushes all authorizer cache entries on a stage.

        ", "FlushStageCache": "

        Flushes a stage's cache.

        ", "GenerateClientCertificate": "

        Generates a ClientCertificate resource.

        ", "GetAccount": "

        Gets information about the current Account resource.

        ", "GetApiKey": "

        Gets information about the current ApiKey resource.

        ", "GetApiKeys": "

        Gets information about the current ApiKeys resource.

        ", "GetAuthorizer": "

        Describe an existing Authorizer resource.

        ", "GetAuthorizers": "

        Describe an existing Authorizers resource.

        ", "GetBasePathMapping": "

        Describe a BasePathMapping resource.

        ", "GetBasePathMappings": "

        Represents a collection of BasePathMapping resources.

        ", "GetClientCertificate": "

        Gets information about the current ClientCertificate resource.

        ", "GetClientCertificates": "

        Gets a collection of ClientCertificate resources.

        ", "GetDeployment": "

        Gets information about a Deployment resource.

        ", "GetDeployments": "

        Gets information about a Deployments collection.

        ", "GetDomainName": "

        Represents a domain name that is contained in a simpler, more intuitive URL that can be called.

        ", "GetDomainNames": "

        Represents a collection of DomainName resources.

        ", "GetExport": "

        Exports a deployed version of a RestApi in a specified format.

        ", "GetIntegration": "

        Represents a get integration.

        ", "GetIntegrationResponse": "

        Represents a get integration response.

        ", "GetMethod": "

        Describe an existing Method resource.

        ", "GetMethodResponse": "

        Describes a MethodResponse resource.

        ", "GetModel": "

        Describes an existing model defined for a RestApi resource.

        ", "GetModelTemplate": "

        Generates a sample mapping template that can be used to transform a payload into the structure of a model.

        ", "GetModels": "

        Describes existing Models defined for a RestApi resource.

        ", "GetResource": "

        Lists information about a resource.

        ", "GetResources": "

        Lists information about a collection of Resource resources.

        ", "GetRestApi": "

        Lists the RestApi resource in the collection.

        ", "GetRestApis": "

        Lists the RestApis resources for your collection.

        ", "GetSdk": "

        Generates a client SDK for a RestApi and Stage.

        ", "GetStage": "

        Gets information about a Stage resource.

        ", "GetStages": "

        Gets information about one or more Stage resources.

        ", "GetUsage": "

        Gets the usage data of a usage plan in a specified time interval.

        ", "GetUsagePlan": "

        Gets a usage plan of a given plan identifier.

        ", "GetUsagePlanKey": "

        Gets a usage plan key of a given key identifier.

        ", "GetUsagePlanKeys": "

        Gets all the usage plan keys representing the API keys added to a specified usage plan.

        ", "GetUsagePlans": "

        Gets all the usage plans of the caller's account.

        ", "ImportApiKeys": "

        Import API keys from an external source, such as a CSV-formatted file.

        ", "ImportRestApi": "

        A feature of the Amazon API Gateway control service for creating a new API from an external API definition file.

        ", "PutIntegration": "

        Represents a put integration.

        ", "PutIntegrationResponse": "

        Represents a put integration.

        ", "PutMethod": "

        Add a method to an existing Resource resource.

        ", "PutMethodResponse": "

        Adds a MethodResponse to an existing Method resource.

        ", "PutRestApi": "

        A feature of the Amazon API Gateway control service for updating an existing API with an input of external API definitions. The update can take the form of merging the supplied definition into the existing API or overwriting the existing API.

        ", "TestInvokeAuthorizer": "

        Simulate the execution of an Authorizer in your RestApi with headers, parameters, and an incoming request body.

        ", "TestInvokeMethod": "

        Simulate the execution of a Method in your RestApi with headers, parameters, and an incoming request body.

        ", "UpdateAccount": "

        Changes information about the current Account resource.

        ", "UpdateApiKey": "

        Changes information about an ApiKey resource.

        ", "UpdateAuthorizer": "

        Updates an existing Authorizer resource.

        ", "UpdateBasePathMapping": "

        Changes information about the BasePathMapping resource.

        ", "UpdateClientCertificate": "

        Changes information about an ClientCertificate resource.

        ", "UpdateDeployment": "

        Changes information about a Deployment resource.

        ", "UpdateDomainName": "

        Changes information about the DomainName resource.

        ", "UpdateIntegration": "

        Represents an update integration.

        ", "UpdateIntegrationResponse": "

        Represents an update integration response.

        ", "UpdateMethod": "

        Updates an existing Method resource.

        ", "UpdateMethodResponse": "

        Updates an existing MethodResponse resource.

        ", "UpdateModel": "

        Changes information about a model.

        ", "UpdateResource": "

        Changes information about a Resource resource.

        ", "UpdateRestApi": "

        Changes information about the specified API.

        ", "UpdateStage": "

        Changes information about a Stage resource.

        ", "UpdateUsage": "

        Grants a temporary extension to the reamining quota of a usage plan associated with a specified API key.

        ", "UpdateUsagePlan": "

        Updates a usage plan of a given plan Id.

        " }, "shapes": { "Account": { "base": "

        Represents an AWS account that is associated with Amazon API Gateway.

        To view the account info, call GET on this resource.

        Error Codes

        The following exception may be thrown when the request fails.

        • UnauthorizedException
        • NotFoundException
        • TooManyRequestsException

        For detailed error code information, including the corresponding HTTP Status Codes, see API Gateway Error Codes

        Example: Get the information about an account.

        Request
        GET /account HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date: 20160531T184618Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash} 
        Response

        The successful response returns a 200 OK status code and a payload similar to the following:

        { \"_links\": { \"curies\": { \"href\": \"http://docs.aws.amazon.com/apigateway/latest/developerguide/account-apigateway-{rel}.html\", \"name\": \"account\", \"templated\": true }, \"self\": { \"href\": \"/account\" }, \"account:update\": { \"href\": \"/account\" } }, \"cloudwatchRoleArn\": \"arn:aws:iam::123456789012:role/apigAwsProxyRole\", \"throttleSettings\": { \"rateLimit\": 500, \"burstLimit\": 1000 } } 

        In addition to making the REST API call directly, you can use the AWS CLI and an AWS SDK to access this resource.

        ", "refs": { } }, "ApiKey": { "base": "

        A resource that can be distributed to callers for executing Method resources that require an API key. API keys can be mapped to any Stage on any RestApi, which indicates that the callers with the API key can make requests to that stage.

        ", "refs": { "ListOfApiKey$member": null } }, "ApiKeyIds": { "base": "

        The identifier of an API key used to reference an API key in a usage plan.

        ", "refs": { } }, "ApiKeys": { "base": "

        Represents a collection of API keys as represented by an ApiKeys resource.

        ", "refs": { } }, "ApiKeysFormat": { "base": null, "refs": { "ImportApiKeysRequest$format": "

        A query parameter to specify the input format to imported API keys. Currently, only the csv format is supported.

        " } }, "ApiStage": { "base": "

        API stage name of the associated API stage in a usage plan.

        ", "refs": { "ListOfApiStage$member": null } }, "Authorizer": { "base": "

        Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method.

        ", "refs": { "ListOfAuthorizer$member": null } }, "AuthorizerType": { "base": "

        The authorizer type. the only current value is TOKEN.

        ", "refs": { "Authorizer$type": "

        [Required] The type of the authorizer. Currently, the only valid type is TOKEN.

        ", "CreateAuthorizerRequest$type": "

        [Required] The type of the authorizer.

        " } }, "Authorizers": { "base": "

        Represents a collection of Authorizer resources.

        ", "refs": { } }, "BadRequestException": { "base": null, "refs": { } }, "BasePathMapping": { "base": "

        Represents the base path that callers of the API must provide as part of the URL after the domain name.

        A custom domain name plus a BasePathMapping specification identifies a deployed RestApi in a given stage of the owner Account.
        ", "refs": { "ListOfBasePathMapping$member": null } }, "BasePathMappings": { "base": "

        Represents a collection of BasePathMapping resources.

        ", "refs": { } }, "Blob": { "base": null, "refs": { "ExportResponse$body": "

        The binary blob response to GetExport, which contains the export.

        ", "ImportApiKeysRequest$body": "

        The payload of the POST request to import API keys. For the payload format, see API Key File Format.

        ", "ImportRestApiRequest$body": "

        The POST request body containing external API definitions. Currently, only Swagger definition JSON files are supported.

        ", "PutRestApiRequest$body": "

        The PUT request body containing external API definitions. Currently, only Swagger definition JSON files are supported.

        ", "SdkResponse$body": "

        The binary blob response to GetSdk, which contains the generated SDK.

        " } }, "Boolean": { "base": null, "refs": { "ApiKey$enabled": "

        Specifies whether the API Key can be used by callers.

        ", "CreateApiKeyRequest$enabled": "

        Specifies whether the ApiKey can be used by callers.

        ", "CreateApiKeyRequest$generateDistinctId": "

        Specifies whether (true) or not (false) the key identifier is distinct from the created API key value.

        ", "CreateStageRequest$cacheClusterEnabled": "

        Whether cache clustering is enabled for the stage.

        ", "GetApiKeyRequest$includeValue": "

        A boolean flag to specify whether (true) or not (false) the result contains the key value.

        ", "GetApiKeysRequest$includeValues": "

        A boolean flag to specify whether (true) or not (false) the result contains key values.

        ", "GetModelRequest$flatten": "

        A query parameter of a Boolean value to resolve (true) all external model references and returns a flattened model schema or not (false) The default is false.

        ", "ImportApiKeysRequest$failOnWarnings": "

        A query parameter to indicate whether to rollback ApiKey importation (true) or not (false) when error is encountered.

        ", "ImportRestApiRequest$failOnWarnings": "

        A query parameter to indicate whether to rollback the API creation (true) or not (false) when a warning is encountered. The default value is false.

        ", "MethodSetting$metricsEnabled": "

        Specifies whether Amazon CloudWatch metrics are enabled for this method. The PATCH path for this setting is /{method_setting_key}/metrics/enabled, and the value is a Boolean.

        ", "MethodSetting$dataTraceEnabled": "

        Specifies whether data trace logging is enabled for this method, which effects the log entries pushed to Amazon CloudWatch Logs. The PATCH path for this setting is /{method_setting_key}/logging/dataTrace, and the value is a Boolean.

        ", "MethodSetting$cachingEnabled": "

        Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached. The PATCH path for this setting is /{method_setting_key}/caching/enabled, and the value is a Boolean.

        ", "MethodSetting$cacheDataEncrypted": "

        Specifies whether the cached responses are encrypted. The PATCH path for this setting is /{method_setting_key}/caching/dataEncrypted, and the value is a Boolean.

        ", "MethodSetting$requireAuthorizationForCacheControl": "

        Specifies whether authorization is required for a cache invalidation request. The PATCH path for this setting is /{method_setting_key}/caching/requireAuthorizationForCacheControl, and the value is a Boolean.

        ", "MethodSnapshot$apiKeyRequired": "

        Specifies whether the method requires a valid ApiKey.

        ", "PutMethodRequest$apiKeyRequired": "

        Specifies whether the method required a valid ApiKey.

        ", "PutRestApiRequest$failOnWarnings": "

        A query parameter to indicate whether to rollback the API update (true) or not (false) when a warning is encountered. The default value is false.

        ", "Stage$cacheClusterEnabled": "

        Specifies whether a cache cluster is enabled for the stage.

        " } }, "CacheClusterSize": { "base": "

        Returns the size of the CacheCluster.

        ", "refs": { "CreateDeploymentRequest$cacheClusterSize": "

        Specifies the cache cluster size for the Stage resource specified in the input, if a cache cluster is enabled.

        ", "CreateStageRequest$cacheClusterSize": "

        The stage's cache cluster size.

        ", "Stage$cacheClusterSize": "

        The size of the cache cluster for the stage, if enabled.

        " } }, "CacheClusterStatus": { "base": "

        Returns the status of the CacheCluster.

        ", "refs": { "Stage$cacheClusterStatus": "

        The status of the cache cluster for the stage, if enabled.

        " } }, "ClientCertificate": { "base": "

        Represents a client certificate used to configure client-side SSL authentication while sending requests to the integration endpoint.

        Client certificates are used authenticate an API by the back-end server. To authenticate an API client (or user), use a custom Authorizer.
        ", "refs": { "ListOfClientCertificate$member": null } }, "ClientCertificates": { "base": "

        Represents a collection of ClientCertificate resources.

        ", "refs": { } }, "ConflictException": { "base": null, "refs": { } }, "CreateApiKeyRequest": { "base": "

        Request to create an ApiKey resource.

        ", "refs": { } }, "CreateAuthorizerRequest": { "base": "

        Request to add a new Authorizer to an existing RestApi resource.

        ", "refs": { } }, "CreateBasePathMappingRequest": { "base": "

        Requests Amazon API Gateway to create a new BasePathMapping resource.

        ", "refs": { } }, "CreateDeploymentRequest": { "base": "

        Requests Amazon API Gateway to create a Deployment resource.

        ", "refs": { } }, "CreateDomainNameRequest": { "base": "

        A request to create a new domain name.

        ", "refs": { } }, "CreateModelRequest": { "base": "

        Request to add a new Model to an existing RestApi resource.

        ", "refs": { } }, "CreateResourceRequest": { "base": "

        Requests Amazon API Gateway to create a Resource resource.

        ", "refs": { } }, "CreateRestApiRequest": { "base": "

        The POST Request to add a new RestApi resource to your collection.

        ", "refs": { } }, "CreateStageRequest": { "base": "

        Requests Amazon API Gateway to create a Stage resource.

        ", "refs": { } }, "CreateUsagePlanKeyRequest": { "base": "

        The POST request to create a usage plan key for adding an existing API key to a usage plan.

        ", "refs": { } }, "CreateUsagePlanRequest": { "base": "

        The POST request to create a usage plan with the name, description, throttle limits and quota limits, as well as the associated API stages, specified in the payload.

        ", "refs": { } }, "DeleteApiKeyRequest": { "base": "

        A request to delete the ApiKey resource.

        ", "refs": { } }, "DeleteAuthorizerRequest": { "base": "

        Request to delete an existing Authorizer resource.

        ", "refs": { } }, "DeleteBasePathMappingRequest": { "base": "

        A request to delete the BasePathMapping resource.

        ", "refs": { } }, "DeleteClientCertificateRequest": { "base": "

        A request to delete the ClientCertificate resource.

        ", "refs": { } }, "DeleteDeploymentRequest": { "base": "

        Requests Amazon API Gateway to delete a Deployment resource.

        ", "refs": { } }, "DeleteDomainNameRequest": { "base": "

        A request to delete the DomainName resource.

        ", "refs": { } }, "DeleteIntegrationRequest": { "base": "

        Represents a delete integration request.

        ", "refs": { } }, "DeleteIntegrationResponseRequest": { "base": "

        Represents a delete integration response request.

        ", "refs": { } }, "DeleteMethodRequest": { "base": "

        Request to delete an existing Method resource.

        ", "refs": { } }, "DeleteMethodResponseRequest": { "base": "

        A request to delete an existing MethodResponse resource.

        ", "refs": { } }, "DeleteModelRequest": { "base": "

        Request to delete an existing model in an existing RestApi resource.

        ", "refs": { } }, "DeleteResourceRequest": { "base": "

        Request to delete a Resource.

        ", "refs": { } }, "DeleteRestApiRequest": { "base": "

        Request to delete the specified API from your collection.

        ", "refs": { } }, "DeleteStageRequest": { "base": "

        Requests Amazon API Gateway to delete a Stage resource.

        ", "refs": { } }, "DeleteUsagePlanKeyRequest": { "base": "

        The DELETE request to delete a usage plan key and remove the underlying API key from the associated usage plan.

        ", "refs": { } }, "DeleteUsagePlanRequest": { "base": "

        The DELETE request to delete a uasge plan of a given plan Id.

        ", "refs": { } }, "Deployment": { "base": "

        An immutable representation of a RestApi resource that can be called by users using Stages. A deployment must be associated with a Stage for it to be callable over the Internet.

        To create a deployment, call POST on the Deployments resource of a RestApi. To view, update, or delete a deployment, call GET, PATCH, or DELETE on the specified deployment resource (/restapis/{restapi_id}/deployments/{deployment_id}).
        ", "refs": { "ListOfDeployment$member": null } }, "Deployments": { "base": "

        Represents a collection resource that contains zero or more references to your existing deployments, and links that guide you on how to interact with your collection. The collection offers a paginated view of the contained deployments.

        To create a new deployment of a RestApi, make a POST request against this resource. To view, update, or delete an existing deployment, make a GET, PATCH, or DELETE request, respectively, on a specified Deployment resource.
        ", "refs": { } }, "DomainName": { "base": "

        Represents a domain name that is contained in a simpler, more intuitive URL that can be called.

        ", "refs": { "ListOfDomainName$member": null } }, "DomainNames": { "base": "

        Represents a collection of DomainName resources.

        ", "refs": { } }, "Double": { "base": null, "refs": { "MethodSetting$throttlingRateLimit": "

        Specifies the throttling rate limit. The PATCH path for this setting is /{method_setting_key}/throttling/rateLimit, and the value is a double.

        ", "ThrottleSettings$rateLimit": "

        The API request steady-state rate limit.

        " } }, "ExportResponse": { "base": "

        The binary blob response to GetExport, which contains the generated SDK.

        ", "refs": { } }, "FlushStageAuthorizersCacheRequest": { "base": "

        Request to flush authorizer cache entries on a specified stage.

        ", "refs": { } }, "FlushStageCacheRequest": { "base": "

        Requests Amazon API Gateway to flush a stage's cache.

        ", "refs": { } }, "GenerateClientCertificateRequest": { "base": "

        A request to generate a ClientCertificate resource.

        ", "refs": { } }, "GetAccountRequest": { "base": "

        Requests Amazon API Gateway to get information about the current Account resource.

        ", "refs": { } }, "GetApiKeyRequest": { "base": "

        A request to get information about the current ApiKey resource.

        ", "refs": { } }, "GetApiKeysRequest": { "base": "

        A request to get information about the current ApiKeys resource.

        ", "refs": { } }, "GetAuthorizerRequest": { "base": "

        Request to describe an existing Authorizer resource.

        ", "refs": { } }, "GetAuthorizersRequest": { "base": "

        Request to describe an existing Authorizers resource.

        ", "refs": { } }, "GetBasePathMappingRequest": { "base": "

        Request to describe a BasePathMapping resource.

        ", "refs": { } }, "GetBasePathMappingsRequest": { "base": "

        A request to get information about a collection of BasePathMapping resources.

        ", "refs": { } }, "GetClientCertificateRequest": { "base": "

        A request to get information about the current ClientCertificate resource.

        ", "refs": { } }, "GetClientCertificatesRequest": { "base": "

        A request to get information about a collection of ClientCertificate resources.

        ", "refs": { } }, "GetDeploymentRequest": { "base": "

        Requests Amazon API Gateway to get information about a Deployment resource.

        ", "refs": { } }, "GetDeploymentsRequest": { "base": "

        Requests Amazon API Gateway to get information about a Deployments collection.

        ", "refs": { } }, "GetDomainNameRequest": { "base": "

        Request to get the name of a DomainName resource.

        ", "refs": { } }, "GetDomainNamesRequest": { "base": "

        Request to describe a collection of DomainName resources.

        ", "refs": { } }, "GetExportRequest": { "base": "

        Request a new export of a RestApi for a particular Stage.

        ", "refs": { } }, "GetIntegrationRequest": { "base": "

        Represents a get integration request.

        ", "refs": { } }, "GetIntegrationResponseRequest": { "base": "

        Represents a get integration response request.

        ", "refs": { } }, "GetMethodRequest": { "base": "

        Request to describe an existing Method resource.

        ", "refs": { } }, "GetMethodResponseRequest": { "base": "

        Request to describe a MethodResponse resource.

        ", "refs": { } }, "GetModelRequest": { "base": "

        Request to list information about a model in an existing RestApi resource.

        ", "refs": { } }, "GetModelTemplateRequest": { "base": "

        Request to generate a sample mapping template used to transform the payload.

        ", "refs": { } }, "GetModelsRequest": { "base": "

        Request to list existing Models defined for a RestApi resource.

        ", "refs": { } }, "GetResourceRequest": { "base": "

        Request to list information about a resource.

        ", "refs": { } }, "GetResourcesRequest": { "base": "

        Request to list information about a collection of resources.

        ", "refs": { } }, "GetRestApiRequest": { "base": "

        The GET request to list an existing RestApi defined for your collection.

        ", "refs": { } }, "GetRestApisRequest": { "base": "

        The GET request to list existing RestApis defined for your collection.

        ", "refs": { } }, "GetSdkRequest": { "base": "

        Request a new generated client SDK for a RestApi and Stage.

        ", "refs": { } }, "GetStageRequest": { "base": "

        Requests Amazon API Gateway to get information about a Stage resource.

        ", "refs": { } }, "GetStagesRequest": { "base": "

        Requests Amazon API Gateway to get information about one or more Stage resources.

        ", "refs": { } }, "GetUsagePlanKeyRequest": { "base": "

        The GET request to get a usage plan key of a given key identifier.

        ", "refs": { } }, "GetUsagePlanKeysRequest": { "base": "

        The GET request to get all the usage plan keys representing the API keys added to a specified usage plan.

        ", "refs": { } }, "GetUsagePlanRequest": { "base": "

        The GET request to get a usage plan of a given plan identifier.

        ", "refs": { } }, "GetUsagePlansRequest": { "base": "

        The GET request to get all the usage plans of the caller's account.

        ", "refs": { } }, "GetUsageRequest": { "base": "

        The GET request to get the usage data of a usage plan in a specified time interval.

        ", "refs": { } }, "ImportApiKeysRequest": { "base": "

        The POST request to import API keys from an external source, such as a CSV-formatted file.

        ", "refs": { } }, "ImportRestApiRequest": { "base": "

        A POST request to import an API to Amazon API Gateway using an input of an API definition file.

        ", "refs": { } }, "Integer": { "base": null, "refs": { "MethodSetting$throttlingBurstLimit": "

        Specifies the throttling burst limit. The PATCH path for this setting is /{method_setting_key}/throttling/burstLimit, and the value is an integer.

        ", "MethodSetting$cacheTtlInSeconds": "

        Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached. The PATCH path for this setting is /{method_setting_key}/caching/ttlInSeconds, and the value is an integer.

        ", "QuotaSettings$limit": "

        The maximum number of requests that can be made in a given time period.

        ", "QuotaSettings$offset": "

        The number of requests subtracted from the given limit in the initial time period.

        ", "TestInvokeAuthorizerResponse$clientStatus": "

        The HTTP status code that the client would have received. Value is 0 if the authorizer succeeded.

        ", "TestInvokeMethodResponse$status": "

        The HTTP status code.

        ", "ThrottleSettings$burstLimit": "

        The API request burst limit, the maximum rate limit over a time ranging from one to a few seconds, depending upon whether the underlying token bucket is at its full capacity.

        " } }, "Integration": { "base": "

        Represents an HTTP, AWS, or Mock integration.

        In the API Gateway console, the built-in Lambda integration is an AWS integration.
        ", "refs": { "Method$methodIntegration": "

        Gets the method's integration responsible for passing the client-submitted request to the back end and performing necessary transformations to make the request compliant with the back end.

        Example:

        Request

        GET /restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com Content-Length: 117 X-Amz-Date: 20160613T213210Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160613/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}
        Response

        The successful response returns a 200 OK status code and a payload similar to the following:

        { \"_links\": { \"curies\": [ { \"href\": \"http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-{rel}.html\", \"name\": \"integration\", \"templated\": true }, { \"href\": \"http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html\", \"name\": \"integrationresponse\", \"templated\": true } ], \"self\": { \"href\": \"/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration\" }, \"integration:delete\": { \"href\": \"/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration\" }, \"integration:responses\": { \"href\": \"/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200\", \"name\": \"200\", \"title\": \"200\" }, \"integration:update\": { \"href\": \"/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration\" }, \"integrationresponse:put\": { \"href\": \"/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/{status_code}\", \"templated\": true } }, \"cacheKeyParameters\": [], \"cacheNamespace\": \"0cjtch\", \"credentials\": \"arn:aws:iam::123456789012:role/apigAwsProxyRole\", \"httpMethod\": \"POST\", \"passthroughBehavior\": \"WHEN_NO_MATCH\", \"requestTemplates\": { \"application/json\": \"{\\n \\\"a\\\": \\\"$input.params('operand1')\\\",\\n \\\"b\\\": \\\"$input.params('operand2')\\\", \\n \\\"op\\\": \\\"$input.params('operator')\\\" \\n}\" }, \"type\": \"AWS\", \"uri\": \"arn:aws:apigateway:us-west-2:lambda:path//2015-03-31/functions/arn:aws:lambda:us-west-2:123456789012:function:Calc/invocations\", \"_embedded\": { \"integration:responses\": { \"_links\": { \"self\": { \"href\": \"/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200\", \"name\": \"200\", \"title\": \"200\" }, \"integrationresponse:delete\": { \"href\": \"/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200\" }, \"integrationresponse:update\": { \"href\": \"/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200\" } }, \"responseParameters\": { \"method.response.header.operator\": \"integration.response.body.op\", \"method.response.header.operand_2\": \"integration.response.body.b\", \"method.response.header.operand_1\": \"integration.response.body.a\" }, \"responseTemplates\": { \"application/json\": \"#set($res = $input.path('$'))\\n{\\n \\\"result\\\": \\\"$res.a, $res.b, $res.op => $res.c\\\",\\n \\\"a\\\" : \\\"$res.a\\\",\\n \\\"b\\\" : \\\"$res.b\\\",\\n \\\"op\\\" : \\\"$res.op\\\",\\n \\\"c\\\" : \\\"$res.c\\\"\\n}\" }, \"selectionPattern\": \"\", \"statusCode\": \"200\" } } }

        " } }, "IntegrationResponse": { "base": "

        Represents an integration response. The status code must map to an existing MethodResponse, and parameters and templates can be used to transform the back-end response.

        ", "refs": { "MapOfIntegrationResponse$value": null } }, "IntegrationType": { "base": "

        The integration type. The valid value is HTTP for integrating with an HTTP back end, AWS for any AWS service endpoints, MOCK for testing without actually invoking the back end, HTTP_PROXY for integrating with the HTTP proxy integration, or AWS_PROXY for integrating with the Lambda proxy integration type.

        ", "refs": { "Integration$type": "

        Specifies the integration's type. The valid value is HTTP for integrating with an HTTP back end, AWS for any AWS service endpoints, MOCK for testing without actually invoking the back end, HTTP_PROXY for integrating with the HTTP proxy integration, or AWS_PROXY for integrating with the Lambda proxy integration type.

        ", "PutIntegrationRequest$type": "

        Specifies a put integration input's type.

        " } }, "LimitExceededException": { "base": null, "refs": { } }, "ListOfARNs": { "base": null, "refs": { "Authorizer$providerARNs": "

        A list of the provider ARNs of the authorizer.

        ", "CreateAuthorizerRequest$providerARNs": "

        A list of the Cognito Your User Pool authorizer's provider ARNs.

        " } }, "ListOfApiKey": { "base": null, "refs": { "ApiKeys$items": "

        The current page of any ApiKey resources in the collection of ApiKey resources.

        " } }, "ListOfApiStage": { "base": null, "refs": { "CreateUsagePlanRequest$apiStages": "

        The associated API stages of the usage plan.

        ", "UsagePlan$apiStages": "

        The associated API stages of a usage plan.

        " } }, "ListOfAuthorizer": { "base": null, "refs": { "Authorizers$items": "

        Gets the current list of Authorizer resources in the collection.

        " } }, "ListOfBasePathMapping": { "base": null, "refs": { "BasePathMappings$items": "

        The current page of any BasePathMapping resources in the collection of base path mapping resources.

        " } }, "ListOfClientCertificate": { "base": null, "refs": { "ClientCertificates$items": "

        The current page of any ClientCertificate resources in the collection of ClientCertificate resources.

        " } }, "ListOfDeployment": { "base": null, "refs": { "Deployments$items": "

        The current page of any Deployment resources in the collection of deployment resources.

        " } }, "ListOfDomainName": { "base": null, "refs": { "DomainNames$items": "

        The current page of any DomainName resources in the collection of DomainName resources.

        " } }, "ListOfLong": { "base": null, "refs": { "ListOfUsage$member": null } }, "ListOfModel": { "base": null, "refs": { "Models$items": "

        Gets the current Model resource in the collection.

        " } }, "ListOfPatchOperation": { "base": "A list of operations describing the updates to apply to the specified resource. The patches are applied in the order specified in the list.", "refs": { "UpdateAccountRequest$patchOperations": "

        A list of update operations to be applied to the specified resource and in the order specified in this list.

        ", "UpdateApiKeyRequest$patchOperations": "

        A list of update operations to be applied to the specified resource and in the order specified in this list.

        ", "UpdateAuthorizerRequest$patchOperations": "

        A list of update operations to be applied to the specified resource and in the order specified in this list.

        ", "UpdateBasePathMappingRequest$patchOperations": "

        A list of update operations to be applied to the specified resource and in the order specified in this list.

        ", "UpdateClientCertificateRequest$patchOperations": "

        A list of update operations to be applied to the specified resource and in the order specified in this list.

        ", "UpdateDeploymentRequest$patchOperations": "

        A list of update operations to be applied to the specified resource and in the order specified in this list.

        ", "UpdateDomainNameRequest$patchOperations": "

        A list of update operations to be applied to the specified resource and in the order specified in this list.

        ", "UpdateIntegrationRequest$patchOperations": "

        A list of update operations to be applied to the specified resource and in the order specified in this list.

        ", "UpdateIntegrationResponseRequest$patchOperations": "

        A list of update operations to be applied to the specified resource and in the order specified in this list.

        ", "UpdateMethodRequest$patchOperations": "

        A list of update operations to be applied to the specified resource and in the order specified in this list.

        ", "UpdateMethodResponseRequest$patchOperations": "

        A list of update operations to be applied to the specified resource and in the order specified in this list.

        ", "UpdateModelRequest$patchOperations": "

        A list of update operations to be applied to the specified resource and in the order specified in this list.

        ", "UpdateResourceRequest$patchOperations": "

        A list of update operations to be applied to the specified resource and in the order specified in this list.

        ", "UpdateRestApiRequest$patchOperations": "

        A list of update operations to be applied to the specified resource and in the order specified in this list.

        ", "UpdateStageRequest$patchOperations": "

        A list of update operations to be applied to the specified resource and in the order specified in this list.

        ", "UpdateUsagePlanRequest$patchOperations": "

        A list of update operations to be applied to the specified resource and in the order specified in this list.

        ", "UpdateUsageRequest$patchOperations": "

        A list of update operations to be applied to the specified resource and in the order specified in this list.

        " } }, "ListOfResource": { "base": null, "refs": { "Resources$items": "

        Gets the current Resource resource in the collection.

        " } }, "ListOfRestApi": { "base": null, "refs": { "RestApis$items": "

        An array of links to the current page of RestApi resources.

        " } }, "ListOfStage": { "base": null, "refs": { "Stages$item": "

        An individual Stage resource.

        " } }, "ListOfStageKeys": { "base": null, "refs": { "CreateApiKeyRequest$stageKeys": "

        DEPRECATED FOR USAGE PLANS - Specifies stages associated with the API key.

        " } }, "ListOfString": { "base": null, "refs": { "Account$features": "

        A list of features supported for the account. When usage plans are enabled, the features list will include an entry of \"UsagePlans\".

        ", "ApiKey$stageKeys": "

        A list of Stage resources that are associated with the ApiKey resource.

        ", "ApiKeyIds$ids": "

        A list of all the ApiKey identifiers.

        ", "ApiKeyIds$warnings": "

        A list of warning messages.

        ", "ApiKeys$warnings": "

        A list of warning messages logged during the import of API keys when the failOnWarnings option is set to true.

        ", "Integration$cacheKeyParameters": "

        Specifies the integration's cache key parameters.

        ", "MapOfStringToList$value": null, "PutIntegrationRequest$cacheKeyParameters": "

        Specifies a put integration input's cache key parameters.

        ", "RestApi$warnings": "

        The warning messages reported when failonwarnings is turned on during API import.

        " } }, "ListOfUsage": { "base": null, "refs": { "MapOfKeyUsages$value": null } }, "ListOfUsagePlan": { "base": null, "refs": { "UsagePlans$items": "

        Gets the current item when enumerating the collection of UsagePlan.

        " } }, "ListOfUsagePlanKey": { "base": null, "refs": { "UsagePlanKeys$items": "

        Gets the current item of the usage plan keys collection.

        " } }, "Long": { "base": null, "refs": { "ListOfLong$member": null, "TestInvokeAuthorizerResponse$latency": "

        The execution latency of the test authorizer request.

        ", "TestInvokeMethodResponse$latency": "

        The execution latency of the test invoke request.

        " } }, "MapOfHeaderValues": { "base": null, "refs": { "TestInvokeAuthorizerRequest$headers": "

        [Required] A key-value map of headers to simulate an incoming invocation request. This is where the incoming authorization token, or identity source, should be specified.

        ", "TestInvokeMethodRequest$headers": "

        A key-value map of headers to simulate an incoming invocation request.

        ", "TestInvokeMethodResponse$headers": "

        The headers of the HTTP response.

        " } }, "MapOfIntegrationResponse": { "base": null, "refs": { "Integration$integrationResponses": "

        Specifies the integration's responses.

        Example: Get integration responses of a method

        Request

        GET /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200 HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date: 20160607T191449Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160607/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash} 
        Response

        The successful response returns 200 OK status and a payload as follows:

        { \"_links\": { \"curies\": { \"href\": \"http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html\", \"name\": \"integrationresponse\", \"templated\": true }, \"self\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200\", \"title\": \"200\" }, \"integrationresponse:delete\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200\" }, \"integrationresponse:update\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200\" } }, \"responseParameters\": { \"method.response.header.Content-Type\": \"'application/xml'\" }, \"responseTemplates\": { \"application/json\": \"$util.urlDecode(\\\"%3CkinesisStreams%3E#foreach($stream in $input.path('$.StreamNames'))%3Cstream%3E%3Cname%3E$stream%3C/name%3E%3C/stream%3E#end%3C/kinesisStreams%3E\\\")\\n\" }, \"statusCode\": \"200\" }

        " } }, "MapOfKeyUsages": { "base": null, "refs": { "Usage$items": "

        The usage data, as daily logs of used and remaining quotas, over the specified time interval indexed over the API keys in a usage plan. For example, {..., \"values\" : { \"{api_key}\" : [ [0, 100], [10, 90], [100, 10]]}, where {api_key} stands for an API key value and the daily log entry is of the format [used quota, remaining quota].

        " } }, "MapOfMethod": { "base": null, "refs": { "Resource$resourceMethods": "

        Gets an API resource's method of a given HTTP verb.

        The resource methods are a map of methods indexed by methods' HTTP verbs enabled on the resource. This method map is included in the 200 OK response of the GET /restapis/{restapi_id}/resources/{resource_id} or GET /restapis/{restapi_id}/resources/{resource_id}?embed=methods request.

        Example: Get the GET method of an API resource

        Request
        GET /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date: 20160608T031827Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160608/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}
        Response
        { \"_links\": { \"curies\": [ { \"href\": \"http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-{rel}.html\", \"name\": \"integration\", \"templated\": true }, { \"href\": \"http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html\", \"name\": \"integrationresponse\", \"templated\": true }, { \"href\": \"http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-{rel}.html\", \"name\": \"method\", \"templated\": true }, { \"href\": \"http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html\", \"name\": \"methodresponse\", \"templated\": true } ], \"self\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET\", \"name\": \"GET\", \"title\": \"GET\" }, \"integration:put\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration\" }, \"method:delete\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET\" }, \"method:integration\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration\" }, \"method:responses\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200\", \"name\": \"200\", \"title\": \"200\" }, \"method:update\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET\" }, \"methodresponse:put\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/{status_code}\", \"templated\": true } }, \"apiKeyRequired\": false, \"authorizationType\": \"NONE\", \"httpMethod\": \"GET\", \"_embedded\": { \"method:integration\": { \"_links\": { \"self\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration\" }, \"integration:delete\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration\" }, \"integration:responses\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200\", \"name\": \"200\", \"title\": \"200\" }, \"integration:update\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration\" }, \"integrationresponse:put\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/{status_code}\", \"templated\": true } }, \"cacheKeyParameters\": [], \"cacheNamespace\": \"3kzxbg5sa2\", \"credentials\": \"arn:aws:iam::123456789012:role/apigAwsProxyRole\", \"httpMethod\": \"POST\", \"passthroughBehavior\": \"WHEN_NO_MATCH\", \"requestParameters\": { \"integration.request.header.Content-Type\": \"'application/x-amz-json-1.1'\" }, \"requestTemplates\": { \"application/json\": \"{\\n}\" }, \"type\": \"AWS\", \"uri\": \"arn:aws:apigateway:us-east-1:kinesis:action/ListStreams\", \"_embedded\": { \"integration:responses\": { \"_links\": { \"self\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200\", \"name\": \"200\", \"title\": \"200\" }, \"integrationresponse:delete\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200\" }, \"integrationresponse:update\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200\" } }, \"responseParameters\": { \"method.response.header.Content-Type\": \"'application/xml'\" }, \"responseTemplates\": { \"application/json\": \"$util.urlDecode(\\\"%3CkinesisStreams%3E#foreach($stream in $input.path('$.StreamNames'))%3Cstream%3E%3Cname%3E$stream%3C/name%3E%3C/stream%3E#end%3C/kinesisStreams%3E\\\")\\n\" }, \"statusCode\": \"200\" } } }, \"method:responses\": { \"_links\": { \"self\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200\", \"name\": \"200\", \"title\": \"200\" }, \"methodresponse:delete\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200\" }, \"methodresponse:update\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200\" } }, \"responseModels\": { \"application/json\": \"Empty\" }, \"responseParameters\": { \"method.response.header.Content-Type\": false }, \"statusCode\": \"200\" } } }

        If the OPTIONS is enabled on the resource, you can follow the example here to get that method. Just replace the GET of the last path segment in the request URL with OPTIONS.

        " } }, "MapOfMethodResponse": { "base": null, "refs": { "Method$methodResponses": "

        Gets a method response associated with a given HTTP status code.

        The collection of method responses are encapsulated in a key-value map, where the key is a response's HTTP status code and the value is a MethodResponse resource that specifies the response returned to the caller from the back end through the integration response.

        Example: Get a 200 OK response of a GET method

        Request

        GET /restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200 HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com Content-Length: 117 X-Amz-Date: 20160613T215008Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160613/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}
        Response

        The successful response returns a 200 OK status code and a payload similar to the following:

        { \"_links\": { \"curies\": { \"href\": \"http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html\", \"name\": \"methodresponse\", \"templated\": true }, \"self\": { \"href\": \"/restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200\", \"title\": \"200\" }, \"methodresponse:delete\": { \"href\": \"/restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200\" }, \"methodresponse:update\": { \"href\": \"/restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200\" } }, \"responseModels\": { \"application/json\": \"Empty\" }, \"responseParameters\": { \"method.response.header.operator\": false, \"method.response.header.operand_2\": false, \"method.response.header.operand_1\": false }, \"statusCode\": \"200\" }

        " } }, "MapOfMethodSettings": { "base": null, "refs": { "Stage$methodSettings": "

        A map that defines the method settings for a Stage resource. Keys (designated as /{method_setting_key below) are method paths defined as {resource_path}/{http_method} for an individual method override, or /\\*/\\* for overriding all methods in the stage.

        " } }, "MapOfMethodSnapshot": { "base": null, "refs": { "PathToMapOfMethodSnapshot$value": null } }, "MapOfStringToBoolean": { "base": null, "refs": { "Method$requestParameters": "

        A key-value map defining required or optional method request parameters that can be accepted by Amazon API Gateway. A key is a method request parameter name matching the pattern of method.request.{location}.{name}, where location is querystring, path, or header and name is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (true) or optional (false). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates.

        ", "MethodResponse$responseParameters": "

        A key-value map specifying required or optional response parameters that Amazon API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern method.response.header.{name}, where name is a valid and unique header name. Amazon API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in integration.response.header.{name}, a static value enclosed within a pair of single quotes (e.g., 'application/json'), or a JSON expression from the back-end response payload in the form of integration.response.body.{JSON-expression}, where JSON-expression is a valid JSON expression without the $ prefix.)

        ", "PutMethodRequest$requestParameters": "

        A key-value map defining required or optional method request parameters that can be accepted by Amazon API Gateway. A key defines a method request parameter name matching the pattern of method.request.{location}.{name}, where location is querystring, path, or header and name is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (true) or optional (false). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or body-mapping templates.

        ", "PutMethodResponseRequest$responseParameters": "

        A key-value map specifying required or optional response parameters that Amazon API Gateway can send back to the caller. A key defines a method response header name and the associated value is a Boolean flag indicating whether the method response parameter is required or not. The method response header names must match the pattern of method.response.header.{name}, where name is a valid and unique header name. The response parameter names defined here are available in the integration response to be mapped from an integration response header expressed in integration.response.header.{name}, a static value enclosed within a pair of single quotes (e.g., 'application/json'), or a JSON expression from the back-end response payload in the form of integration.response.body.{JSON-expression}, where JSON-expression is a valid JSON expression without the $ prefix.)

        " } }, "MapOfStringToList": { "base": null, "refs": { "TestInvokeAuthorizerResponse$authorization": null } }, "MapOfStringToString": { "base": null, "refs": { "CreateDeploymentRequest$variables": "

        A map that defines the stage variables for the Stage resource that is associated with the new deployment. Variable names can have alphanumeric and underscore characters, and the values must match [A-Za-z0-9-._~:/?#&=,]+.

        ", "CreateStageRequest$variables": "

        A map that defines the stage variables for the new Stage resource. Variable names can have alphanumeric and underscore characters, and the values must match [A-Za-z0-9-._~:/?#&=,]+.

        ", "GetExportRequest$parameters": "

        A key-value map of query string parameters that specify properties of the export, depending on the requested exportType. For exportType swagger, any combination of the following parameters are supported: integrations will export the API with x-amazon-apigateway-integration extensions. authorizers will export the API with x-amazon-apigateway-authorizer extensions. postman will export the API with Postman extensions, allowing for import to the Postman tool

        ", "GetSdkRequest$parameters": "

        A key-value map of query string parameters that specify properties of the SDK, depending on the requested sdkType. For sdkType of objectivec, a parameter named classPrefix is required. For sdkType of android, parameters named groupId, artifactId, artifactVersion, and invokerPackage are required.

        ", "ImportRestApiRequest$parameters": "

        Custom header parameters as part of the request.

        ", "Integration$requestParameters": "

        A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of method.request.{location}.{name}, where location is querystring, path, or header and name must be a valid and unique method request parameter name.

        ", "Integration$requestTemplates": "

        Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value.

        ", "IntegrationResponse$responseParameters": "

        A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of method.response.header.{name}, where name is a valid and unique header name. The mapped non-static value must match the pattern of integration.response.header.{name} or integration.response.body.{JSON-expression}, where name is a valid and unique response header name and JSON-expression is a valid JSON expression without the $ prefix.

        ", "IntegrationResponse$responseTemplates": "

        Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value.

        ", "Method$requestModels": "

        A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key).

        ", "MethodResponse$responseModels": "

        Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value.

        ", "PutIntegrationRequest$requestParameters": "

        A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of method.request.{location}.{name}, where location is querystring, path, or header and name must be a valid and unique method request parameter name.

        ", "PutIntegrationRequest$requestTemplates": "

        Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value.

        ", "PutIntegrationResponseRequest$responseParameters": "

        A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of method.response.header.{name}, where name is a valid and unique header name. The mapped non-static value must match the pattern of integration.response.header.{name} or integration.response.body.{JSON-expression}, where name must be a valid and unique response header name and JSON-expression a valid JSON expression without the $ prefix.

        ", "PutIntegrationResponseRequest$responseTemplates": "

        Specifies a put integration response's templates.

        ", "PutMethodRequest$requestModels": "

        Specifies the Model resources used for the request's content type. Request models are represented as a key/value map, with a content type as the key and a Model name as the value.

        ", "PutMethodResponseRequest$responseModels": "

        Specifies the Model resources used for the response's content type. Response models are represented as a key/value map, with a content type as the key and a Model name as the value.

        ", "PutRestApiRequest$parameters": "

        Custom headers supplied as part of the request.

        ", "Stage$variables": "

        A map that defines the stage variables for a Stage resource. Variable names can have alphanumeric and underscore characters, and the values must match [A-Za-z0-9-._~:/?#&=,]+.

        ", "TestInvokeAuthorizerRequest$stageVariables": "

        A key-value map of stage variables to simulate an invocation on a deployed Stage.

        ", "TestInvokeAuthorizerRequest$additionalContext": "

        [Optional] A key-value map of additional context variables.

        ", "TestInvokeAuthorizerResponse$claims": "

        The open identity claims, with any supported custom attributes, returned from the Cognito Your User Pool configured for the API.

        ", "TestInvokeMethodRequest$stageVariables": "

        A key-value map of stage variables to simulate an invocation on a deployed Stage.

        " } }, "Method": { "base": "

        Represents a client-facing interface by which the client calls the API to access back-end resources. A Method resource is integrated with an Integration resource. Both consist of a request and one or more responses. The method request takes the client input that is passed to the back end through the integration request. A method response returns the output from the back end to the client through an integration response. A method request is embodied in a Method resource, whereas an integration request is embodied in an Integration resource. On the other hand, a method response is represented by a MethodResponse resource, whereas an integration response is represented by an IntegrationResponse resource.

        Example: Retrive the GET method on a specified resource

        Request

        The following example request retrieves the information about the GET method on an API resource (3kzxbg5sa2) of an API (fugvjdxtri).

        GET /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date: 20160603T210259Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160603/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}
        Response

        The successful response returns a 200 OK status code and a payload similar to the following:

        { \"_links\": { \"curies\": [ { \"href\": \"http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-{rel}.html\", \"name\": \"integration\", \"templated\": true }, { \"href\": \"http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html\", \"name\": \"integrationresponse\", \"templated\": true }, { \"href\": \"http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-{rel}.html\", \"name\": \"method\", \"templated\": true }, { \"href\": \"http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html\", \"name\": \"methodresponse\", \"templated\": true } ], \"self\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET\", \"name\": \"GET\", \"title\": \"GET\" }, \"integration:put\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration\" }, \"method:delete\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET\" }, \"method:integration\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration\" }, \"method:responses\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200\", \"name\": \"200\", \"title\": \"200\" }, \"method:update\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET\" }, \"methodresponse:put\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/{status_code}\", \"templated\": true } }, \"apiKeyRequired\": true, \"authorizationType\": \"NONE\", \"httpMethod\": \"GET\", \"_embedded\": { \"method:integration\": { \"_links\": { \"self\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration\" }, \"integration:delete\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration\" }, \"integration:responses\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200\", \"name\": \"200\", \"title\": \"200\" }, \"integration:update\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration\" }, \"integrationresponse:put\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/{status_code}\", \"templated\": true } }, \"cacheKeyParameters\": [], \"cacheNamespace\": \"3kzxbg5sa2\", \"credentials\": \"arn:aws:iam::123456789012:role/apigAwsProxyRole\", \"httpMethod\": \"POST\", \"passthroughBehavior\": \"WHEN_NO_MATCH\", \"requestParameters\": { \"integration.request.header.Content-Type\": \"'application/x-amz-json-1.1'\" }, \"requestTemplates\": { \"application/json\": \"{\\n}\" }, \"type\": \"AWS\", \"uri\": \"arn:aws:apigateway:us-east-1:kinesis:action/ListStreams\", \"_embedded\": { \"integration:responses\": { \"_links\": { \"self\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200\", \"name\": \"200\", \"title\": \"200\" }, \"integrationresponse:delete\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200\" }, \"integrationresponse:update\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200\" } }, \"responseParameters\": { \"method.response.header.Content-Type\": \"'application/xml'\" }, \"responseTemplates\": { \"application/json\": \"$util.urlDecode(\\\"%3CkinesisStreams%3E%23foreach(%24stream%20in%20%24input.path(%27%24.StreamNames%27))%3Cstream%3E%3Cname%3E%24stream%3C%2Fname%3E%3C%2Fstream%3E%23end%3C%2FkinesisStreams%3E\\\")\" }, \"statusCode\": \"200\" } } }, \"method:responses\": { \"_links\": { \"self\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200\", \"name\": \"200\", \"title\": \"200\" }, \"methodresponse:delete\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200\" }, \"methodresponse:update\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200\" } }, \"responseModels\": { \"application/json\": \"Empty\" }, \"responseParameters\": { \"method.response.header.Content-Type\": false }, \"statusCode\": \"200\" } } }

        In the example above, the response template for the 200 OK response maps the JSON output from the ListStreams action in the back end to an XML output. The mapping template is URL-encoded as %3CkinesisStreams%3E%23foreach(%24stream%20in%20%24input.path(%27%24.StreamNames%27))%3Cstream%3E%3Cname%3E%24stream%3C%2Fname%3E%3C%2Fstream%3E%23end%3C%2FkinesisStreams%3E and the output is decoded using the $util.urlDecode() helper function.

        ", "refs": { "MapOfMethod$value": null } }, "MethodResponse": { "base": "

        Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template.

        Example: A MethodResponse instance of an API

        Request

        The example request retrieves a MethodResponse of the 200 status code.

        GET /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200 HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date: 20160603T222952Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160603/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}
        Response

        The successful response returns 200 OK status and a payload as follows:

        { \"_links\": { \"curies\": { \"href\": \"http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html\", \"name\": \"methodresponse\", \"templated\": true }, \"self\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200\", \"title\": \"200\" }, \"methodresponse:delete\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200\" }, \"methodresponse:update\": { \"href\": \"/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200\" } }, \"responseModels\": { \"application/json\": \"Empty\" }, \"responseParameters\": { \"method.response.header.Content-Type\": false }, \"statusCode\": \"200\" }

        ", "refs": { "MapOfMethodResponse$value": null } }, "MethodSetting": { "base": "

        Specifies the method setting properties.

        ", "refs": { "MapOfMethodSettings$value": null } }, "MethodSnapshot": { "base": "

        Represents a summary of a Method resource, given a particular date and time.

        ", "refs": { "MapOfMethodSnapshot$value": null } }, "Model": { "base": "

        Represents the data structure of a method's request or response payload.

        A request model defines the data structure of the client-supplied request payload. A response model defines the data structure of the response payload returned by the back end. Although not required, models are useful for mapping payloads between the front end and back end.

        A model is used for generating an API's SDK, validating the input request body, and creating a skeletal mapping template.

        ", "refs": { "ListOfModel$member": null } }, "Models": { "base": "

        Represents a collection of Model resources.

        ", "refs": { } }, "NotFoundException": { "base": null, "refs": { } }, "NullableBoolean": { "base": null, "refs": { "CreateDeploymentRequest$cacheClusterEnabled": "

        Enables a cache cluster for the Stage resource specified in the input.

        ", "MapOfStringToBoolean$value": null, "Method$apiKeyRequired": "

        A boolean flag specifying whether a valid ApiKey is required to invoke this method.

        " } }, "NullableInteger": { "base": null, "refs": { "Authorizer$authorizerResultTtlInSeconds": "

        The TTL in seconds of cached authorizer results. If greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour.

        ", "CreateAuthorizerRequest$authorizerResultTtlInSeconds": "

        The TTL of cached authorizer results.

        ", "GetApiKeysRequest$limit": "

        The maximum number of ApiKeys to get information about.

        ", "GetAuthorizersRequest$limit": "

        Limit the number of Authorizer resources in the response.

        ", "GetBasePathMappingsRequest$limit": "

        The maximum number of BasePathMapping resources in the collection to get information about. The default limit is 25. It should be an integer between 1 - 500.

        ", "GetClientCertificatesRequest$limit": "

        The maximum number of ClientCertificate resources in the collection to get information about. The default limit is 25. It should be an integer between 1 - 500.

        ", "GetDeploymentsRequest$limit": "

        The maximum number of Deployment resources in the collection to get information about. The default limit is 25. It should be an integer between 1 - 500.

        ", "GetDomainNamesRequest$limit": "

        The maximum number of DomainName resources in the collection to get information about. The default limit is 25. It should be an integer between 1 - 500.

        ", "GetModelsRequest$limit": "

        The maximum number of models in the collection to get information about. The default limit is 25. It should be an integer between 1 - 500.

        ", "GetResourcesRequest$limit": "

        The maximum number of Resource resources in the collection to get information about. The default limit is 25. It should be an integer between 1 - 500.

        ", "GetRestApisRequest$limit": "

        The maximum number of RestApi resources in the collection to get information about. The default limit is 25. It should be an integer between 1 - 500.

        ", "GetUsagePlanKeysRequest$limit": "

        A query parameter specifying the maximum number usage plan keys returned by the GET request.

        ", "GetUsagePlansRequest$limit": "

        The number of UsagePlan resources to be returned as the result.

        ", "GetUsageRequest$limit": "

        The maximum number of results to be returned.

        " } }, "Op": { "base": null, "refs": { "PatchOperation$op": "

        An update operation to be performed with this PATCH request. The valid value can be \"add\", \"remove\", or \"replace\". Not all valid operations are supported for a given resource. Support of the operations depends on specific operational contexts. Attempts to apply an unsupported operation on a resource will return an error message.

        " } }, "PatchOperation": { "base": "A single patch operation to apply to the specified resource. Please refer to http://tools.ietf.org/html/rfc6902#section-4 for an explanation of how each operation is used.", "refs": { "ListOfPatchOperation$member": null } }, "PathToMapOfMethodSnapshot": { "base": null, "refs": { "Deployment$apiSummary": "

        A summary of the RestApi at the date and time that the deployment resource was created.

        " } }, "ProviderARN": { "base": null, "refs": { "ListOfARNs$member": null } }, "PutIntegrationRequest": { "base": "

        Represents a put integration request.

        ", "refs": { } }, "PutIntegrationResponseRequest": { "base": "

        Represents a put integration response request.

        ", "refs": { } }, "PutMethodRequest": { "base": "

        Request to add a method to an existing Resource resource.

        ", "refs": { } }, "PutMethodResponseRequest": { "base": "

        Request to add a MethodResponse to an existing Method resource.

        ", "refs": { } }, "PutMode": { "base": null, "refs": { "PutRestApiRequest$mode": "

        The mode query parameter to specify the update mode. Valid values are \"merge\" and \"overwrite\". By default, the update mode is \"merge\".

        " } }, "PutRestApiRequest": { "base": "

        A PUT request to update an existing API, with external API definitions specified as the request body.

        ", "refs": { } }, "QuotaPeriodType": { "base": null, "refs": { "QuotaSettings$period": "

        The time period in which the limit applies. Valid values are \"DAY\", \"WEEK\" or \"MONTH\".

        " } }, "QuotaSettings": { "base": "

        Quotas configured for a usage plan.

        ", "refs": { "CreateUsagePlanRequest$quota": "

        The quota of the usage plan.

        ", "UsagePlan$quota": "

        The maximum number of permitted requests per a given unit time interval.

        " } }, "Resource": { "base": "

        Represents an API resource.

        ", "refs": { "ListOfResource$member": null } }, "Resources": { "base": "

        Represents a collection of Resource resources.

        ", "refs": { } }, "RestApi": { "base": "

        Represents a REST API.

        ", "refs": { "ListOfRestApi$member": null } }, "RestApis": { "base": "

        Contains references to your APIs and links that guide you in how to interact with your collection. A collection offers a paginated view of your APIs.

        ", "refs": { } }, "SdkResponse": { "base": "

        The binary blob response to GetSdk, which contains the generated SDK.

        ", "refs": { } }, "ServiceUnavailableException": { "base": null, "refs": { } }, "Stage": { "base": "

        Represents a unique identifier for a version of a deployed RestApi that is callable by users.

        ", "refs": { "ListOfStage$member": null } }, "StageKey": { "base": "

        A reference to a unique stage identified in the format {restApiId}/{stage}.

        ", "refs": { "ListOfStageKeys$member": null } }, "Stages": { "base": "

        A list of Stage resources that are associated with the ApiKey resource.

        ", "refs": { } }, "StatusCode": { "base": "

        The status code.

        ", "refs": { "DeleteIntegrationResponseRequest$statusCode": "

        Specifies a delete integration response request's status code.

        ", "DeleteMethodResponseRequest$statusCode": "

        The status code identifier for the MethodResponse resource.

        ", "GetIntegrationResponseRequest$statusCode": "

        Specifies a get integration response request's status code.

        ", "GetMethodResponseRequest$statusCode": "

        The status code for the MethodResponse resource.

        ", "IntegrationResponse$statusCode": "

        Specifies the status code that is used to map the integration response to an existing MethodResponse.

        ", "MethodResponse$statusCode": "

        The method response's status code.

        ", "PutIntegrationResponseRequest$statusCode": "

        Specifies the status code that is used to map the integration response to an existing MethodResponse.

        ", "PutMethodResponseRequest$statusCode": "

        The method response's status code.

        ", "UpdateIntegrationResponseRequest$statusCode": "

        Specifies an update integration response request's status code.

        ", "UpdateMethodResponseRequest$statusCode": "

        The status code for the MethodResponse resource.

        " } }, "String": { "base": null, "refs": { "Account$cloudwatchRoleArn": "

        The ARN of an Amazon CloudWatch role for the current Account.

        ", "Account$apiKeyVersion": "

        The version of the API keys used for the account.

        ", "ApiKey$id": "

        The identifier of the API Key.

        ", "ApiKey$value": "

        The value of the API Key.

        ", "ApiKey$name": "

        The name of the API Key.

        ", "ApiKey$description": "

        The description of the API Key.

        ", "ApiKeys$position": null, "ApiStage$apiId": "

        API Id of the associated API stage in a usage plan.

        ", "ApiStage$stage": "

        API stage name of the associated API stage in a usage plan.

        ", "Authorizer$id": "

        The identifier for the authorizer resource.

        ", "Authorizer$name": "

        [Required] The name of the authorizer.

        ", "Authorizer$authType": "

        Optional customer-defined field, used in Swagger imports/exports. Has no functional impact.

        ", "Authorizer$authorizerUri": "

        [Required] Specifies the authorizer's Uniform Resource Identifier (URI). For TOKEN authorizers, this must be a well-formed Lambda function URI. The URI should be of the form arn:aws:apigateway:{region}:lambda:path/{service_api}. Region is used to determine the right endpoint. In this case, path is used to indicate that the remaining substring in the URI should be treated as the path to the resource, including the initial /. For Lambda functions, this is usually of the form /2015-03-31/functions/[FunctionARN]/invocations

        ", "Authorizer$authorizerCredentials": "

        Specifies the credentials required for the authorizer, if any. Two options are available. To specify an IAM role for Amazon API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null.

        ", "Authorizer$identitySource": "

        [Required] The source of the identity in an incoming request. For TOKEN authorizers, this value is a mapping expression with the same syntax as integration parameter mappings. The only valid source for tokens is 'header', so the expression should match 'method.request.header.[headerName]'. The value of the header '[headerName]' will be interpreted as the incoming token.

        ", "Authorizer$identityValidationExpression": "

        A validation expression for the incoming identity. For TOKEN authorizers, this value should be a regular expression. The incoming token from the client is matched against this expression, and will proceed if the token matches. If the token doesn't match, the client receives a 401 Unauthorized response.

        ", "Authorizers$position": null, "BadRequestException$message": null, "BasePathMapping$basePath": "

        The base path name that callers of the API must provide as part of the URL after the domain name.

        ", "BasePathMapping$restApiId": "

        The name of the API.

        ", "BasePathMapping$stage": "

        The name of the API's stage.

        ", "BasePathMappings$position": null, "ClientCertificate$clientCertificateId": "

        The identifier of the client certificate.

        ", "ClientCertificate$description": "

        The description of the client certificate.

        ", "ClientCertificate$pemEncodedCertificate": "

        The PEM-encoded public key of the client certificate, which can be used to configure certificate authentication in the integration endpoint .

        ", "ClientCertificates$position": null, "ConflictException$message": null, "CreateApiKeyRequest$name": "

        The name of the ApiKey.

        ", "CreateApiKeyRequest$description": "

        The description of the ApiKey.

        ", "CreateApiKeyRequest$value": "

        Specifies a value of the API key.

        ", "CreateAuthorizerRequest$restApiId": "

        The RestApi identifier under which the Authorizer will be created.

        ", "CreateAuthorizerRequest$name": "

        [Required] The name of the authorizer.

        ", "CreateAuthorizerRequest$authType": "

        Optional customer-defined field, used in Swagger imports/exports. Has no functional impact.

        ", "CreateAuthorizerRequest$authorizerUri": "

        [Required] Specifies the authorizer's Uniform Resource Identifier (URI).

        ", "CreateAuthorizerRequest$authorizerCredentials": "

        Specifies the credentials required for the authorizer, if any.

        ", "CreateAuthorizerRequest$identitySource": "

        [Required] The source of the identity in an incoming request.

        ", "CreateAuthorizerRequest$identityValidationExpression": "

        A validation expression for the incoming identity.

        ", "CreateBasePathMappingRequest$domainName": "

        The domain name of the BasePathMapping resource to create.

        ", "CreateBasePathMappingRequest$basePath": "

        The base path name that callers of the API must provide as part of the URL after the domain name. This value must be unique for all of the mappings across a single API. Leave this blank if you do not want callers to specify a base path name after the domain name.

        ", "CreateBasePathMappingRequest$restApiId": "

        The name of the API that you want to apply this mapping to.

        ", "CreateBasePathMappingRequest$stage": "

        The name of the API's stage that you want to use for this mapping. Leave this blank if you do not want callers to explicitly specify the stage name after any base path name.

        ", "CreateDeploymentRequest$restApiId": "

        The RestApi resource identifier for the Deployment resource to create.

        ", "CreateDeploymentRequest$stageName": "

        The name of the Stage resource for the Deployment resource to create.

        ", "CreateDeploymentRequest$stageDescription": "

        The description of the Stage resource for the Deployment resource to create.

        ", "CreateDeploymentRequest$description": "

        The description for the Deployment resource to create.

        ", "CreateDomainNameRequest$domainName": "

        The name of the DomainName resource.

        ", "CreateDomainNameRequest$certificateName": "

        The name of the certificate.

        ", "CreateDomainNameRequest$certificateBody": "

        The body of the server certificate provided by your certificate authority.

        ", "CreateDomainNameRequest$certificatePrivateKey": "

        Your certificate's private key.

        ", "CreateDomainNameRequest$certificateChain": "

        The intermediate certificates and optionally the root certificate, one after the other without any blank lines. If you include the root certificate, your certificate chain must start with intermediate certificates and end with the root certificate. Use the intermediate certificates that were provided by your certificate authority. Do not include any intermediaries that are not in the chain of trust path.

        ", "CreateModelRequest$restApiId": "

        The RestApi identifier under which the Model will be created.

        ", "CreateModelRequest$name": "

        The name of the model.

        ", "CreateModelRequest$description": "

        The description of the model.

        ", "CreateModelRequest$schema": "

        The schema for the model. For application/json models, this should be JSON-schema draft v4 model.

        ", "CreateModelRequest$contentType": "

        The content-type for the model.

        ", "CreateResourceRequest$restApiId": "

        The identifier of the RestApi for the resource.

        ", "CreateResourceRequest$parentId": "

        The parent resource's identifier.

        ", "CreateResourceRequest$pathPart": "

        The last path segment for this resource.

        ", "CreateRestApiRequest$name": "

        The name of the RestApi.

        ", "CreateRestApiRequest$description": "

        The description of the RestApi.

        ", "CreateRestApiRequest$cloneFrom": "

        The ID of the RestApi that you want to clone from.

        ", "CreateStageRequest$restApiId": "

        The identifier of the RestApi resource for the Stage resource to create.

        ", "CreateStageRequest$stageName": "

        The name for the Stage resource.

        ", "CreateStageRequest$deploymentId": "

        The identifier of the Deployment resource for the Stage resource.

        ", "CreateStageRequest$description": "

        The description of the Stage resource.

        ", "CreateUsagePlanKeyRequest$usagePlanId": "

        The Id of the UsagePlan resource representing the usage plan containing the to-be-created UsagePlanKey resource representing a plan customer.

        ", "CreateUsagePlanKeyRequest$keyId": "

        The identifier of a UsagePlanKey resource for a plan customer.

        ", "CreateUsagePlanKeyRequest$keyType": "

        The type of a UsagePlanKey resource for a plan customer.

        ", "CreateUsagePlanRequest$name": "

        The name of the usage plan.

        ", "CreateUsagePlanRequest$description": "

        The description of the usage plan.

        ", "DeleteApiKeyRequest$apiKey": "

        The identifier of the ApiKey resource to be deleted.

        ", "DeleteAuthorizerRequest$restApiId": "

        The RestApi identifier for the Authorizer resource.

        ", "DeleteAuthorizerRequest$authorizerId": "

        The identifier of the Authorizer resource.

        ", "DeleteBasePathMappingRequest$domainName": "

        The domain name of the BasePathMapping resource to delete.

        ", "DeleteBasePathMappingRequest$basePath": "

        The base path name of the BasePathMapping resource to delete.

        ", "DeleteClientCertificateRequest$clientCertificateId": "

        The identifier of the ClientCertificate resource to be deleted.

        ", "DeleteDeploymentRequest$restApiId": "

        The identifier of the RestApi resource for the Deployment resource to delete.

        ", "DeleteDeploymentRequest$deploymentId": "

        The identifier of the Deployment resource to delete.

        ", "DeleteDomainNameRequest$domainName": "

        The name of the DomainName resource to be deleted.

        ", "DeleteIntegrationRequest$restApiId": "

        Specifies a delete integration request's API identifier.

        ", "DeleteIntegrationRequest$resourceId": "

        Specifies a delete integration request's resource identifier.

        ", "DeleteIntegrationRequest$httpMethod": "

        Specifies a delete integration request's HTTP method.

        ", "DeleteIntegrationResponseRequest$restApiId": "

        Specifies a delete integration response request's API identifier.

        ", "DeleteIntegrationResponseRequest$resourceId": "

        Specifies a delete integration response request's resource identifier.

        ", "DeleteIntegrationResponseRequest$httpMethod": "

        Specifies a delete integration response request's HTTP method.

        ", "DeleteMethodRequest$restApiId": "

        The RestApi identifier for the Method resource.

        ", "DeleteMethodRequest$resourceId": "

        The Resource identifier for the Method resource.

        ", "DeleteMethodRequest$httpMethod": "

        The HTTP verb of the Method resource.

        ", "DeleteMethodResponseRequest$restApiId": "

        The RestApi identifier for the MethodResponse resource.

        ", "DeleteMethodResponseRequest$resourceId": "

        The Resource identifier for the MethodResponse resource.

        ", "DeleteMethodResponseRequest$httpMethod": "

        The HTTP verb of the Method resource.

        ", "DeleteModelRequest$restApiId": "

        The RestApi under which the model will be deleted.

        ", "DeleteModelRequest$modelName": "

        The name of the model to delete.

        ", "DeleteResourceRequest$restApiId": "

        The RestApi identifier for the Resource resource.

        ", "DeleteResourceRequest$resourceId": "

        The identifier of the Resource resource.

        ", "DeleteRestApiRequest$restApiId": "

        The ID of the RestApi you want to delete.

        ", "DeleteStageRequest$restApiId": "

        The identifier of the RestApi resource for the Stage resource to delete.

        ", "DeleteStageRequest$stageName": "

        The name of the Stage resource to delete.

        ", "DeleteUsagePlanKeyRequest$usagePlanId": "

        The Id of the UsagePlan resource representing the usage plan containing the to-be-deleted UsagePlanKey resource representing a plan customer.

        ", "DeleteUsagePlanKeyRequest$keyId": "

        The Id of the UsagePlanKey resource to be deleted.

        ", "DeleteUsagePlanRequest$usagePlanId": "

        The Id of the to-be-deleted usage plan.

        ", "Deployment$id": "

        The identifier for the deployment resource.

        ", "Deployment$description": "

        The description for the deployment resource.

        ", "Deployments$position": null, "DomainName$domainName": "

        The name of the DomainName resource.

        ", "DomainName$certificateName": "

        The name of the certificate.

        ", "DomainName$distributionDomainName": "

        The domain name of the Amazon CloudFront distribution. For more information, see the Amazon CloudFront documentation.

        ", "DomainNames$position": null, "ExportResponse$contentType": "

        The content-type header value in the HTTP response. This will correspond to a valid 'accept' type in the request.

        ", "ExportResponse$contentDisposition": "

        The content-disposition header value in the HTTP response.

        ", "FlushStageAuthorizersCacheRequest$restApiId": "

        The API identifier of the stage to flush.

        ", "FlushStageAuthorizersCacheRequest$stageName": "

        The name of the stage to flush.

        ", "FlushStageCacheRequest$restApiId": "

        The API identifier of the stage to flush its cache.

        ", "FlushStageCacheRequest$stageName": "

        The name of the stage to flush its cache.

        ", "GenerateClientCertificateRequest$description": "

        The description of the ClientCertificate.

        ", "GetApiKeyRequest$apiKey": "

        The identifier of the ApiKey resource.

        ", "GetApiKeysRequest$position": "

        The position of the current ApiKeys resource to get information about.

        ", "GetApiKeysRequest$nameQuery": "

        The name of queried API keys.

        ", "GetAuthorizerRequest$restApiId": "

        The RestApi identifier for the Authorizer resource.

        ", "GetAuthorizerRequest$authorizerId": "

        The identifier of the Authorizer resource.

        ", "GetAuthorizersRequest$restApiId": "

        The RestApi identifier for the Authorizers resource.

        ", "GetAuthorizersRequest$position": "

        If not all Authorizer resources in the response were present, the position will specify where to start the next page of results.

        ", "GetBasePathMappingRequest$domainName": "

        The domain name of the BasePathMapping resource to be described.

        ", "GetBasePathMappingRequest$basePath": "

        The base path name that callers of the API must provide as part of the URL after the domain name. This value must be unique for all of the mappings across a single API. Leave this blank if you do not want callers to specify any base path name after the domain name.

        ", "GetBasePathMappingsRequest$domainName": "

        The domain name of a BasePathMapping resource.

        ", "GetBasePathMappingsRequest$position": "

        The position of the current BasePathMapping resource in the collection to get information about.

        ", "GetClientCertificateRequest$clientCertificateId": "

        The identifier of the ClientCertificate resource to be described.

        ", "GetClientCertificatesRequest$position": "

        The position of the current ClientCertificate resource in the collection to get information about.

        ", "GetDeploymentRequest$restApiId": "

        The identifier of the RestApi resource for the Deployment resource to get information about.

        ", "GetDeploymentRequest$deploymentId": "

        The identifier of the Deployment resource to get information about.

        ", "GetDeploymentsRequest$restApiId": "

        The identifier of the RestApi resource for the collection of Deployment resources to get information about.

        ", "GetDeploymentsRequest$position": "

        The position of the current Deployment resource in the collection to get information about.

        ", "GetDomainNameRequest$domainName": "

        The name of the DomainName resource.

        ", "GetDomainNamesRequest$position": "

        The position of the current domain names to get information about.

        ", "GetExportRequest$restApiId": "

        The identifier of the RestApi to be exported.

        ", "GetExportRequest$stageName": "

        The name of the Stage that will be exported.

        ", "GetExportRequest$exportType": "

        The type of export. Currently only 'swagger' is supported.

        ", "GetExportRequest$accepts": "

        The content-type of the export, for example application/json. Currently application/json and application/yaml are supported for exportType of swagger. This should be specified in the Accept header for direct API requests.

        ", "GetIntegrationRequest$restApiId": "

        Specifies a get integration request's API identifier.

        ", "GetIntegrationRequest$resourceId": "

        Specifies a get integration request's resource identifier

        ", "GetIntegrationRequest$httpMethod": "

        Specifies a get integration request's HTTP method.

        ", "GetIntegrationResponseRequest$restApiId": "

        Specifies a get integration response request's API identifier.

        ", "GetIntegrationResponseRequest$resourceId": "

        Specifies a get integration response request's resource identifier.

        ", "GetIntegrationResponseRequest$httpMethod": "

        Specifies a get integration response request's HTTP method.

        ", "GetMethodRequest$restApiId": "

        The RestApi identifier for the Method resource.

        ", "GetMethodRequest$resourceId": "

        The Resource identifier for the Method resource.

        ", "GetMethodRequest$httpMethod": "

        Specifies the method request's HTTP method type.

        ", "GetMethodResponseRequest$restApiId": "

        The RestApi identifier for the MethodResponse resource.

        ", "GetMethodResponseRequest$resourceId": "

        The Resource identifier for the MethodResponse resource.

        ", "GetMethodResponseRequest$httpMethod": "

        The HTTP verb of the Method resource.

        ", "GetModelRequest$restApiId": "

        The RestApi identifier under which the Model exists.

        ", "GetModelRequest$modelName": "

        The name of the model as an identifier.

        ", "GetModelTemplateRequest$restApiId": "

        The ID of the RestApi under which the model exists.

        ", "GetModelTemplateRequest$modelName": "

        The name of the model for which to generate a template.

        ", "GetModelsRequest$restApiId": "

        The RestApi identifier.

        ", "GetModelsRequest$position": "

        The position of the next set of results in the Models resource to get information about.

        ", "GetResourceRequest$restApiId": "

        The RestApi identifier for the resource.

        ", "GetResourceRequest$resourceId": "

        The identifier for the Resource resource.

        ", "GetResourcesRequest$restApiId": "

        The RestApi identifier for the Resource.

        ", "GetResourcesRequest$position": "

        The position of the next set of results in the current Resources resource to get information about.

        ", "GetRestApiRequest$restApiId": "

        The identifier of the RestApi resource.

        ", "GetRestApisRequest$position": "

        The position of the current RestApis resource in the collection to get information about.

        ", "GetSdkRequest$restApiId": "

        The identifier of the RestApi that the SDK will use.

        ", "GetSdkRequest$stageName": "

        The name of the Stage that the SDK will use.

        ", "GetSdkRequest$sdkType": "

        The language for the generated SDK. Currently javascript, android, and objectivec (for iOS) are supported.

        ", "GetStageRequest$restApiId": "

        The identifier of the RestApi resource for the Stage resource to get information about.

        ", "GetStageRequest$stageName": "

        The name of the Stage resource to get information about.

        ", "GetStagesRequest$restApiId": "

        The stages' API identifiers.

        ", "GetStagesRequest$deploymentId": "

        The stages' deployment identifiers.

        ", "GetUsagePlanKeyRequest$usagePlanId": "

        The Id of the UsagePlan resource representing the usage plan containing the to-be-retrieved UsagePlanKey resource representing a plan customer.

        ", "GetUsagePlanKeyRequest$keyId": "

        The key Id of the to-be-retrieved UsagePlanKey resource representing a plan customer.

        ", "GetUsagePlanKeysRequest$usagePlanId": "

        The Id of the UsagePlan resource representing the usage plan containing the to-be-retrieved UsagePlanKey resource representing a plan customer.

        ", "GetUsagePlanKeysRequest$position": "

        A query parameter specifying the zero-based index specifying the position of a usage plan key.

        ", "GetUsagePlanKeysRequest$nameQuery": "

        A query parameter specifying the name of the to-be-returned usage plan keys.

        ", "GetUsagePlanRequest$usagePlanId": "

        The identifier of the UsagePlan resource to be retrieved.

        ", "GetUsagePlansRequest$position": "

        The zero-based array index specifying the position of the to-be-retrieved UsagePlan resource.

        ", "GetUsagePlansRequest$keyId": "

        The identifier of the API key associated with the usage plans.

        ", "GetUsageRequest$usagePlanId": "

        The Id of the usage plan associated with the usage data.

        ", "GetUsageRequest$keyId": "

        The Id of the API key associated with the resultant usage data.

        ", "GetUsageRequest$startDate": "

        The starting date (e.g., 2016-01-01) of the usage data.

        ", "GetUsageRequest$endDate": "

        The ending date (e.g., 2016-12-31) of the usage data.

        ", "GetUsageRequest$position": "

        Position

        ", "Integration$httpMethod": "

        Specifies the integration's HTTP method type.

        ", "Integration$uri": "

        Specifies the integration's Uniform Resource Identifier (URI). For HTTP integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification. For AWS integrations, the URI should be of the form arn:aws:apigateway:{region}:{subdomain.service|service}:{path|action}/{service_api}. Region, subdomain and service are used to determine the right endpoint. For AWS services that use the Action= query string parameter, service_api should be a valid action for the desired service. For RESTful AWS service APIs, path is used to indicate that the remaining substring in the URI should be treated as the path to the resource, including the initial /.

        ", "Integration$credentials": "

        Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for Amazon API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string arn:aws:iam::\\*:user/\\*. To use resource-based permissions on supported AWS services, specify null.

        ", "Integration$passthroughBehavior": "

        Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in requestTemplates. There are three valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and NEVER.

        • WHEN_NO_MATCH passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request.
        • WHEN_NO_TEMPLATES passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response.
        • NEVER rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request.
        ", "Integration$cacheNamespace": "

        Specifies the integration's cache namespace.

        ", "IntegrationResponse$selectionPattern": "

        Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the .+ regex to match error response. However, make sure that the error response does not contain any newline (\\n) character in such cases. If the back end is an AWS Lambda function, the AWS Lambda function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched.

        ", "LimitExceededException$retryAfterSeconds": null, "LimitExceededException$message": null, "ListOfString$member": null, "MapOfHeaderValues$key": null, "MapOfHeaderValues$value": null, "MapOfIntegrationResponse$key": null, "MapOfKeyUsages$key": null, "MapOfMethod$key": null, "MapOfMethodResponse$key": null, "MapOfMethodSettings$key": null, "MapOfMethodSnapshot$key": null, "MapOfStringToBoolean$key": null, "MapOfStringToList$key": null, "MapOfStringToString$key": null, "MapOfStringToString$value": null, "Method$httpMethod": "

        The method's HTTP verb.

        ", "Method$authorizationType": "

        The method's authorization type.

        ", "Method$authorizerId": "

        The identifier of an Authorizer to use on this method. The authorizationType must be CUSTOM.

        ", "MethodSetting$loggingLevel": "

        Specifies the logging level for this method, which effects the log entries pushed to Amazon CloudWatch Logs. The PATCH path for this setting is /{method_setting_key}/logging/loglevel, and the available levels are OFF, ERROR, and INFO.

        ", "MethodSnapshot$authorizationType": "

        Specifies the type of authorization used for the method.

        ", "Model$id": "

        The identifier for the model resource.

        ", "Model$name": "

        The name of the model.

        ", "Model$description": "

        The description of the model.

        ", "Model$schema": "

        The schema for the model. For application/json models, this should be JSON-schema draft v4 model. Do not include \"\\*/\" characters in the description of any properties because such \"\\*/\" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail.

        ", "Model$contentType": "

        The content-type for the model.

        ", "Models$position": null, "NotFoundException$message": null, "PatchOperation$path": "

        The op operation's target, as identified by a JSON Pointer value that references a location within the targeted resource. For example, if the target resource has an updateable property of {\"name\":\"value\"}, the path for this property is /name. If the name property value is a JSON object (e.g., {\"name\": {\"child/name\": \"child-value\"}}), the path for the child/name property will be /name/child~1name. Any slash (\"/\") character appearing in path names must be escaped with \"~1\", as shown in the example above. Each op operation can have only one path associated with it.

        ", "PatchOperation$value": "

        The new target value of the update operation.

        ", "PatchOperation$from": "

        Not supported.

        ", "PathToMapOfMethodSnapshot$key": null, "PutIntegrationRequest$restApiId": "

        Specifies a put integration request's API identifier.

        ", "PutIntegrationRequest$resourceId": "

        Specifies a put integration request's resource ID.

        ", "PutIntegrationRequest$httpMethod": "

        Specifies a put integration request's HTTP method.

        ", "PutIntegrationRequest$integrationHttpMethod": "

        Specifies a put integration HTTP method. When the integration type is HTTP or AWS, this field is required.

        ", "PutIntegrationRequest$uri": "

        Specifies a put integration input's Uniform Resource Identifier (URI). When the integration type is HTTP or AWS, this field is required. For integration with Lambda as an AWS service proxy, this value is of the 'arn:aws:apigateway:<region>:lambda:path/2015-03-31/functions/<functionArn>/invocations' format.

        ", "PutIntegrationRequest$credentials": "

        Specifies whether credentials are required for a put integration.

        ", "PutIntegrationRequest$passthroughBehavior": "

        Specifies the pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the requestTemplates property on the Integration resource. There are three valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and NEVER.

        • WHEN_NO_MATCH passes the request body for unmapped content types through to the integration back end without transformation.

        • NEVER rejects unmapped content types with an HTTP 415 'Unsupported Media Type' response.

        • WHEN_NO_TEMPLATES allows pass-through when the integration has NO content types mapped to templates. However if there is at least one content type defined, unmapped content types will be rejected with the same 415 response.

        ", "PutIntegrationRequest$cacheNamespace": "

        Specifies a put integration input's cache namespace.

        ", "PutIntegrationResponseRequest$restApiId": "

        Specifies a put integration response request's API identifier.

        ", "PutIntegrationResponseRequest$resourceId": "

        Specifies a put integration response request's resource identifier.

        ", "PutIntegrationResponseRequest$httpMethod": "

        Specifies a put integration response request's HTTP method.

        ", "PutIntegrationResponseRequest$selectionPattern": "

        Specifies the selection pattern of a put integration response.

        ", "PutMethodRequest$restApiId": "

        The RestApi identifier for the new Method resource.

        ", "PutMethodRequest$resourceId": "

        The Resource identifier for the new Method resource.

        ", "PutMethodRequest$httpMethod": "

        Specifies the method request's HTTP method type.

        ", "PutMethodRequest$authorizationType": "

        Specifies the type of authorization used for the method.

        ", "PutMethodRequest$authorizerId": "

        Specifies the identifier of an Authorizer to use on this Method, if the type is CUSTOM.

        ", "PutMethodResponseRequest$restApiId": "

        The RestApi identifier for the Method resource.

        ", "PutMethodResponseRequest$resourceId": "

        The Resource identifier for the Method resource.

        ", "PutMethodResponseRequest$httpMethod": "

        The HTTP verb of the Method resource.

        ", "PutRestApiRequest$restApiId": "

        The identifier of the RestApi to be updated.

        ", "Resource$id": "

        The resource's identifier.

        ", "Resource$parentId": "

        The parent resource's identifier.

        ", "Resource$pathPart": "

        The last path segment for this resource.

        ", "Resource$path": "

        The full path for this resource.

        ", "Resources$position": null, "RestApi$id": "

        The API's identifier. This identifier is unique across all of your APIs in Amazon API Gateway.

        ", "RestApi$name": "

        The API's name.

        ", "RestApi$description": "

        The API's description.

        ", "RestApis$position": null, "SdkResponse$contentType": "

        The content-type header value in the HTTP response.

        ", "SdkResponse$contentDisposition": "

        The content-disposition header value in the HTTP response.

        ", "ServiceUnavailableException$retryAfterSeconds": null, "ServiceUnavailableException$message": null, "Stage$deploymentId": "

        The identifier of the Deployment that the stage points to.

        ", "Stage$clientCertificateId": "

        The identifier of a client certificate for an API stage.

        ", "Stage$stageName": "

        The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to Amazon API Gateway.

        ", "Stage$description": "

        The stage's description.

        ", "StageKey$restApiId": "

        A list of Stage resources that are associated with the ApiKey resource.

        ", "StageKey$stageName": "

        The stage name in the RestApi that the stage key references.

        ", "Template$value": "

        The Apache Velocity Template Language (VTL) template content used for the template resource.

        ", "TestInvokeAuthorizerRequest$restApiId": "

        Specifies a test invoke authorizer request's RestApi identifier.

        ", "TestInvokeAuthorizerRequest$authorizerId": "

        Specifies a test invoke authorizer request's Authorizer ID.

        ", "TestInvokeAuthorizerRequest$pathWithQueryString": "

        [Optional] The URI path, including query string, of the simulated invocation request. Use this to specify path parameters and query string parameters.

        ", "TestInvokeAuthorizerRequest$body": "

        [Optional] The simulated request body of an incoming invocation request.

        ", "TestInvokeAuthorizerResponse$log": "

        The Amazon API Gateway execution log for the test authorizer request.

        ", "TestInvokeAuthorizerResponse$principalId": "

        The principal identity returned by the Authorizer

        ", "TestInvokeAuthorizerResponse$policy": "

        The JSON policy document returned by the Authorizer

        ", "TestInvokeMethodRequest$restApiId": "

        Specifies a test invoke method request's API identifier.

        ", "TestInvokeMethodRequest$resourceId": "

        Specifies a test invoke method request's resource ID.

        ", "TestInvokeMethodRequest$httpMethod": "

        Specifies a test invoke method request's HTTP method.

        ", "TestInvokeMethodRequest$pathWithQueryString": "

        The URI path, including query string, of the simulated invocation request. Use this to specify path parameters and query string parameters.

        ", "TestInvokeMethodRequest$body": "

        The simulated request body of an incoming invocation request.

        ", "TestInvokeMethodRequest$clientCertificateId": "

        A ClientCertificate identifier to use in the test invocation. API Gateway will use the certificate when making the HTTPS request to the defined back-end endpoint.

        ", "TestInvokeMethodResponse$body": "

        The body of the HTTP response.

        ", "TestInvokeMethodResponse$log": "

        The Amazon API Gateway execution log for the test invoke request.

        ", "TooManyRequestsException$retryAfterSeconds": null, "TooManyRequestsException$message": null, "UnauthorizedException$message": null, "UpdateApiKeyRequest$apiKey": "

        The identifier of the ApiKey resource to be updated.

        ", "UpdateAuthorizerRequest$restApiId": "

        The RestApi identifier for the Authorizer resource.

        ", "UpdateAuthorizerRequest$authorizerId": "

        The identifier of the Authorizer resource.

        ", "UpdateBasePathMappingRequest$domainName": "

        The domain name of the BasePathMapping resource to change.

        ", "UpdateBasePathMappingRequest$basePath": "

        The base path of the BasePathMapping resource to change.

        ", "UpdateClientCertificateRequest$clientCertificateId": "

        The identifier of the ClientCertificate resource to be updated.

        ", "UpdateDeploymentRequest$restApiId": "

        The replacement identifier of the RestApi resource for the Deployment resource to change information about.

        ", "UpdateDeploymentRequest$deploymentId": "

        The replacement identifier for the Deployment resource to change information about.

        ", "UpdateDomainNameRequest$domainName": "

        The name of the DomainName resource to be changed.

        ", "UpdateIntegrationRequest$restApiId": "

        Represents an update integration request's API identifier.

        ", "UpdateIntegrationRequest$resourceId": "

        Represents an update integration request's resource identifier.

        ", "UpdateIntegrationRequest$httpMethod": "

        Represents an update integration request's HTTP method.

        ", "UpdateIntegrationResponseRequest$restApiId": "

        Specifies an update integration response request's API identifier.

        ", "UpdateIntegrationResponseRequest$resourceId": "

        Specifies an update integration response request's resource identifier.

        ", "UpdateIntegrationResponseRequest$httpMethod": "

        Specifies an update integration response request's HTTP method.

        ", "UpdateMethodRequest$restApiId": "

        The RestApi identifier for the Method resource.

        ", "UpdateMethodRequest$resourceId": "

        The Resource identifier for the Method resource.

        ", "UpdateMethodRequest$httpMethod": "

        The HTTP verb of the Method resource.

        ", "UpdateMethodResponseRequest$restApiId": "

        The RestApi identifier for the MethodResponse resource.

        ", "UpdateMethodResponseRequest$resourceId": "

        The Resource identifier for the MethodResponse resource.

        ", "UpdateMethodResponseRequest$httpMethod": "

        The HTTP verb of the Method resource.

        ", "UpdateModelRequest$restApiId": "

        The RestApi identifier under which the model exists.

        ", "UpdateModelRequest$modelName": "

        The name of the model to update.

        ", "UpdateResourceRequest$restApiId": "

        The RestApi identifier for the Resource resource.

        ", "UpdateResourceRequest$resourceId": "

        The identifier of the Resource resource.

        ", "UpdateRestApiRequest$restApiId": "

        The ID of the RestApi you want to update.

        ", "UpdateStageRequest$restApiId": "

        The identifier of the RestApi resource for the Stage resource to change information about.

        ", "UpdateStageRequest$stageName": "

        The name of the Stage resource to change information about.

        ", "UpdateUsagePlanRequest$usagePlanId": "

        The Id of the to-be-updated usage plan.

        ", "UpdateUsageRequest$usagePlanId": "

        The Id of the usage plan associated with the usage data.

        ", "UpdateUsageRequest$keyId": "

        The identifier of the API key associated with the usage plan in which a temporary extension is granted to the remaining quota.

        ", "Usage$usagePlanId": "

        The plan Id associated with this usage data.

        ", "Usage$startDate": "

        The starting date of the usage data.

        ", "Usage$endDate": "

        The ending date of the usage data.

        ", "Usage$position": null, "UsagePlan$id": "

        The identifier of a UsagePlan resource.

        ", "UsagePlan$name": "

        The name of a usage plan.

        ", "UsagePlan$description": "

        The description of a usage plan.

        ", "UsagePlanKey$id": "

        The Id of a usage plan key.

        ", "UsagePlanKey$type": "

        The type of a usage plan key. Currently, the valid key type is API_KEY.

        ", "UsagePlanKey$value": "

        The value of a usage plan key.

        ", "UsagePlanKey$name": "

        The name of a usage plan key.

        ", "UsagePlanKeys$position": null, "UsagePlans$position": null } }, "Template": { "base": "

        Represents a mapping template used to transform a payload.

        ", "refs": { } }, "TestInvokeAuthorizerRequest": { "base": "

        Make a request to simulate the execution of an Authorizer.

        ", "refs": { } }, "TestInvokeAuthorizerResponse": { "base": "

        Represents the response of the test invoke request for a custom Authorizer

        ", "refs": { } }, "TestInvokeMethodRequest": { "base": "

        Make a request to simulate the execution of a Method.

        ", "refs": { } }, "TestInvokeMethodResponse": { "base": "

        Represents the response of the test invoke request in the HTTP method.

        ", "refs": { } }, "ThrottleSettings": { "base": "

        The API request rate limits.

        ", "refs": { "Account$throttleSettings": "

        Specifies the API request limits configured for the current Account.

        ", "CreateUsagePlanRequest$throttle": "

        The throttling limits of the usage plan.

        ", "UsagePlan$throttle": "

        The request throttle limits of a usage plan.

        " } }, "Timestamp": { "base": null, "refs": { "ApiKey$createdDate": "

        The date when the API Key was created, in ISO 8601 format.

        ", "ApiKey$lastUpdatedDate": "

        When the API Key was last updated, in ISO 8601 format.

        ", "ClientCertificate$createdDate": "

        The date when the client certificate was created, in ISO 8601 format.

        ", "ClientCertificate$expirationDate": "

        The date when the client certificate will expire, in ISO 8601 format.

        ", "Deployment$createdDate": "

        The date and time that the deployment resource was created.

        ", "DomainName$certificateUploadDate": "

        The date when the certificate was uploaded, in ISO 8601 format.

        ", "RestApi$createdDate": "

        The date when the API was created, in ISO 8601 format.

        ", "Stage$createdDate": "

        The date and time that the stage was created, in ISO 8601 format.

        ", "Stage$lastUpdatedDate": "

        The date and time that information about the stage was last updated, in ISO 8601 format.

        " } }, "TooManyRequestsException": { "base": null, "refs": { } }, "UnauthorizedCacheControlHeaderStrategy": { "base": null, "refs": { "MethodSetting$unauthorizedCacheControlHeaderStrategy": "

        Specifies how to handle unauthorized requests for cache invalidation. The PATCH path for this setting is /{method_setting_key}/caching/unauthorizedCacheControlHeaderStrategy, and the available values are FAIL_WITH_403, SUCCEED_WITH_RESPONSE_HEADER, SUCCEED_WITHOUT_RESPONSE_HEADER.

        " } }, "UnauthorizedException": { "base": null, "refs": { } }, "UpdateAccountRequest": { "base": "

        Requests Amazon API Gateway to change information about the current Account resource.

        ", "refs": { } }, "UpdateApiKeyRequest": { "base": "

        A request to change information about an ApiKey resource.

        ", "refs": { } }, "UpdateAuthorizerRequest": { "base": "

        Request to update an existing Authorizer resource.

        ", "refs": { } }, "UpdateBasePathMappingRequest": { "base": "

        A request to change information about the BasePathMapping resource.

        ", "refs": { } }, "UpdateClientCertificateRequest": { "base": "

        A request to change information about an ClientCertificate resource.

        ", "refs": { } }, "UpdateDeploymentRequest": { "base": "

        Requests Amazon API Gateway to change information about a Deployment resource.

        ", "refs": { } }, "UpdateDomainNameRequest": { "base": "

        A request to change information about the DomainName resource.

        ", "refs": { } }, "UpdateIntegrationRequest": { "base": "

        Represents an update integration request.

        ", "refs": { } }, "UpdateIntegrationResponseRequest": { "base": "

        Represents an update integration response request.

        ", "refs": { } }, "UpdateMethodRequest": { "base": "

        Request to update an existing Method resource.

        ", "refs": { } }, "UpdateMethodResponseRequest": { "base": "

        A request to update an existing MethodResponse resource.

        ", "refs": { } }, "UpdateModelRequest": { "base": "

        Request to update an existing model in an existing RestApi resource.

        ", "refs": { } }, "UpdateResourceRequest": { "base": "

        Request to change information about a Resource resource.

        ", "refs": { } }, "UpdateRestApiRequest": { "base": "

        Request to update an existing RestApi resource in your collection.

        ", "refs": { } }, "UpdateStageRequest": { "base": "

        Requests Amazon API Gateway to change information about a Stage resource.

        ", "refs": { } }, "UpdateUsagePlanRequest": { "base": "

        The PATCH request to update a usage plan of a given plan Id.

        ", "refs": { } }, "UpdateUsageRequest": { "base": "

        The PATCH request to grant a temporary extension to the reamining quota of a usage plan associated with a specified API key.

        ", "refs": { } }, "Usage": { "base": "

        Represents the usage data of a usage plan.

        ", "refs": { } }, "UsagePlan": { "base": "

        Represents a usage plan than can specify who can assess associated API stages with specified request limits and quotas.

        In a usage plan, you associate an API by specifying the API's Id and a stage name of the specified API. You add plan customers by adding API keys to the plan.

        ", "refs": { "ListOfUsagePlan$member": null } }, "UsagePlanKey": { "base": "

        Represents a usage plan key to identify a plan customer.

        To associate an API stage with a selected API key in a usage plan, you must create a UsagePlanKey resource to represent the selected ApiKey.

        \" ", "refs": { "ListOfUsagePlanKey$member": null } }, "UsagePlanKeys": { "base": "

        Represents the collection of usage plan keys added to usage plans for the associated API keys and, possibly, other types of keys.

        ", "refs": { } }, "UsagePlans": { "base": "

        Represents a collection of usage plans for an AWS account.

        ", "refs": { } } } } aws-sdk-go-1.4.22/models/apis/apigateway/2015-07-09/examples-1.json000066400000000000000000000000541300374646400240440ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/apigateway/2015-07-09/paginators-1.json000066400000000000000000000032601300374646400243770ustar00rootroot00000000000000{ "pagination": { "GetApiKeys": { "input_token": "position", "output_token": "position", "limit_key": "limit", "result_key": "items" }, "GetBasePathMappings": { "input_token": "position", "output_token": "position", "limit_key": "limit", "result_key": "items" }, "GetClientCertificates": { "input_token": "position", "output_token": "position", "limit_key": "limit", "result_key": "items" }, "GetDeployments": { "input_token": "position", "output_token": "position", "limit_key": "limit", "result_key": "items" }, "GetDomainNames": { "input_token": "position", "output_token": "position", "limit_key": "limit", "result_key": "items" }, "GetModels": { "input_token": "position", "output_token": "position", "limit_key": "limit", "result_key": "items" }, "GetResources": { "input_token": "position", "output_token": "position", "limit_key": "limit", "result_key": "items" }, "GetRestApis": { "input_token": "position", "output_token": "position", "limit_key": "limit", "result_key": "items" }, "GetUsage": { "input_token": "position", "output_token": "position", "limit_key": "limit", "result_key": "items" }, "GetUsagePlans": { "input_token": "position", "output_token": "position", "limit_key": "limit", "result_key": "items" }, "GetUsagePlanKeys": { "input_token": "position", "output_token": "position", "limit_key": "limit", "result_key": "items" } } } aws-sdk-go-1.4.22/models/apis/application-autoscaling/000077500000000000000000000000001300374646400226145ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/application-autoscaling/2016-02-06/000077500000000000000000000000001300374646400236465ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/application-autoscaling/2016-02-06/api-2.json000066400000000000000000000343351300374646400254610ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2016-02-06", "endpointPrefix":"autoscaling", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"Application Auto Scaling", "signatureVersion":"v4", "signingName":"application-autoscaling", "targetPrefix":"AnyScaleFrontendService" }, "operations":{ "DeleteScalingPolicy":{ "name":"DeleteScalingPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteScalingPolicyRequest"}, "output":{"shape":"DeleteScalingPolicyResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ObjectNotFoundException"}, {"shape":"ConcurrentUpdateException"}, {"shape":"InternalServiceException"} ] }, "DeregisterScalableTarget":{ "name":"DeregisterScalableTarget", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeregisterScalableTargetRequest"}, "output":{"shape":"DeregisterScalableTargetResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ObjectNotFoundException"}, {"shape":"ConcurrentUpdateException"}, {"shape":"InternalServiceException"} ] }, "DescribeScalableTargets":{ "name":"DescribeScalableTargets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeScalableTargetsRequest"}, "output":{"shape":"DescribeScalableTargetsResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"InvalidNextTokenException"}, {"shape":"ConcurrentUpdateException"}, {"shape":"InternalServiceException"} ] }, "DescribeScalingActivities":{ "name":"DescribeScalingActivities", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeScalingActivitiesRequest"}, "output":{"shape":"DescribeScalingActivitiesResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"InvalidNextTokenException"}, {"shape":"ConcurrentUpdateException"}, {"shape":"InternalServiceException"} ] }, "DescribeScalingPolicies":{ "name":"DescribeScalingPolicies", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeScalingPoliciesRequest"}, "output":{"shape":"DescribeScalingPoliciesResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"FailedResourceAccessException"}, {"shape":"InvalidNextTokenException"}, {"shape":"ConcurrentUpdateException"}, {"shape":"InternalServiceException"} ] }, "PutScalingPolicy":{ "name":"PutScalingPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutScalingPolicyRequest"}, "output":{"shape":"PutScalingPolicyResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"LimitExceededException"}, {"shape":"ObjectNotFoundException"}, {"shape":"ConcurrentUpdateException"}, {"shape":"InternalServiceException"} ] }, "RegisterScalableTarget":{ "name":"RegisterScalableTarget", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterScalableTargetRequest"}, "output":{"shape":"RegisterScalableTargetResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"LimitExceededException"}, {"shape":"ConcurrentUpdateException"}, {"shape":"InternalServiceException"} ] } }, "shapes":{ "AdjustmentType":{ "type":"string", "enum":[ "ChangeInCapacity", "PercentChangeInCapacity", "ExactCapacity" ] }, "Alarm":{ "type":"structure", "required":[ "AlarmName", "AlarmARN" ], "members":{ "AlarmName":{"shape":"ResourceId"}, "AlarmARN":{"shape":"ResourceId"} } }, "Alarms":{ "type":"list", "member":{"shape":"Alarm"} }, "ConcurrentUpdateException":{ "type":"structure", "members":{ "Message":{"shape":"ErrorMessage"} }, "exception":true }, "Cooldown":{"type":"integer"}, "DeleteScalingPolicyRequest":{ "type":"structure", "required":[ "PolicyName", "ServiceNamespace", "ResourceId", "ScalableDimension" ], "members":{ "PolicyName":{"shape":"ResourceIdMaxLen1600"}, "ServiceNamespace":{"shape":"ServiceNamespace"}, "ResourceId":{"shape":"ResourceIdMaxLen1600"}, "ScalableDimension":{"shape":"ScalableDimension"} } }, "DeleteScalingPolicyResponse":{ "type":"structure", "members":{ } }, "DeregisterScalableTargetRequest":{ "type":"structure", "required":[ "ServiceNamespace", "ResourceId", "ScalableDimension" ], "members":{ "ServiceNamespace":{"shape":"ServiceNamespace"}, "ResourceId":{"shape":"ResourceIdMaxLen1600"}, "ScalableDimension":{"shape":"ScalableDimension"} } }, "DeregisterScalableTargetResponse":{ "type":"structure", "members":{ } }, "DescribeScalableTargetsRequest":{ "type":"structure", "required":["ServiceNamespace"], "members":{ "ServiceNamespace":{"shape":"ServiceNamespace"}, "ResourceIds":{"shape":"ResourceIdsMaxLen1600"}, "ScalableDimension":{"shape":"ScalableDimension"}, "MaxResults":{"shape":"MaxResults"}, "NextToken":{"shape":"XmlString"} } }, "DescribeScalableTargetsResponse":{ "type":"structure", "members":{ "ScalableTargets":{"shape":"ScalableTargets"}, "NextToken":{"shape":"XmlString"} } }, "DescribeScalingActivitiesRequest":{ "type":"structure", "required":["ServiceNamespace"], "members":{ "ServiceNamespace":{"shape":"ServiceNamespace"}, "ResourceId":{"shape":"ResourceIdMaxLen1600"}, "ScalableDimension":{"shape":"ScalableDimension"}, "MaxResults":{"shape":"MaxResults"}, "NextToken":{"shape":"XmlString"} } }, "DescribeScalingActivitiesResponse":{ "type":"structure", "members":{ "ScalingActivities":{"shape":"ScalingActivities"}, "NextToken":{"shape":"XmlString"} } }, "DescribeScalingPoliciesRequest":{ "type":"structure", "required":["ServiceNamespace"], "members":{ "PolicyNames":{"shape":"ResourceIdsMaxLen1600"}, "ServiceNamespace":{"shape":"ServiceNamespace"}, "ResourceId":{"shape":"ResourceIdMaxLen1600"}, "ScalableDimension":{"shape":"ScalableDimension"}, "MaxResults":{"shape":"MaxResults"}, "NextToken":{"shape":"XmlString"} } }, "DescribeScalingPoliciesResponse":{ "type":"structure", "members":{ "ScalingPolicies":{"shape":"ScalingPolicies"}, "NextToken":{"shape":"XmlString"} } }, "ErrorMessage":{"type":"string"}, "FailedResourceAccessException":{ "type":"structure", "members":{ "Message":{"shape":"ErrorMessage"} }, "exception":true }, "InternalServiceException":{ "type":"structure", "members":{ "Message":{"shape":"ErrorMessage"} }, "exception":true }, "InvalidNextTokenException":{ "type":"structure", "members":{ "Message":{"shape":"ErrorMessage"} }, "exception":true }, "LimitExceededException":{ "type":"structure", "members":{ "Message":{"shape":"ErrorMessage"} }, "exception":true }, "MaxResults":{"type":"integer"}, "MetricAggregationType":{ "type":"string", "enum":[ "Average", "Minimum", "Maximum" ] }, "MetricScale":{"type":"double"}, "MinAdjustmentMagnitude":{"type":"integer"}, "ObjectNotFoundException":{ "type":"structure", "members":{ "Message":{"shape":"ErrorMessage"} }, "exception":true }, "PolicyName":{ "type":"string", "max":256, "min":1, "pattern":"\\p{Print}+" }, "PolicyType":{ "type":"string", "enum":["StepScaling"] }, "PutScalingPolicyRequest":{ "type":"structure", "required":[ "PolicyName", "ServiceNamespace", "ResourceId", "ScalableDimension" ], "members":{ "PolicyName":{"shape":"PolicyName"}, "ServiceNamespace":{"shape":"ServiceNamespace"}, "ResourceId":{"shape":"ResourceIdMaxLen1600"}, "ScalableDimension":{"shape":"ScalableDimension"}, "PolicyType":{"shape":"PolicyType"}, "StepScalingPolicyConfiguration":{"shape":"StepScalingPolicyConfiguration"} } }, "PutScalingPolicyResponse":{ "type":"structure", "required":["PolicyARN"], "members":{ "PolicyARN":{"shape":"ResourceIdMaxLen1600"} } }, "RegisterScalableTargetRequest":{ "type":"structure", "required":[ "ServiceNamespace", "ResourceId", "ScalableDimension" ], "members":{ "ServiceNamespace":{"shape":"ServiceNamespace"}, "ResourceId":{"shape":"ResourceIdMaxLen1600"}, "ScalableDimension":{"shape":"ScalableDimension"}, "MinCapacity":{"shape":"ResourceCapacity"}, "MaxCapacity":{"shape":"ResourceCapacity"}, "RoleARN":{"shape":"ResourceIdMaxLen1600"} } }, "RegisterScalableTargetResponse":{ "type":"structure", "members":{ } }, "ResourceCapacity":{"type":"integer"}, "ResourceId":{ "type":"string", "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "ResourceIdMaxLen1600":{ "type":"string", "max":1600, "min":1, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "ResourceIdsMaxLen1600":{ "type":"list", "member":{"shape":"ResourceIdMaxLen1600"} }, "ScalableDimension":{ "type":"string", "enum":[ "ecs:service:DesiredCount", "ec2:spot-fleet-request:TargetCapacity" ] }, "ScalableTarget":{ "type":"structure", "required":[ "ServiceNamespace", "ResourceId", "ScalableDimension", "MinCapacity", "MaxCapacity", "RoleARN", "CreationTime" ], "members":{ "ServiceNamespace":{"shape":"ServiceNamespace"}, "ResourceId":{"shape":"ResourceIdMaxLen1600"}, "ScalableDimension":{"shape":"ScalableDimension"}, "MinCapacity":{"shape":"ResourceCapacity"}, "MaxCapacity":{"shape":"ResourceCapacity"}, "RoleARN":{"shape":"ResourceIdMaxLen1600"}, "CreationTime":{"shape":"TimestampType"} } }, "ScalableTargets":{ "type":"list", "member":{"shape":"ScalableTarget"} }, "ScalingActivities":{ "type":"list", "member":{"shape":"ScalingActivity"} }, "ScalingActivity":{ "type":"structure", "required":[ "ActivityId", "ServiceNamespace", "ResourceId", "ScalableDimension", "Description", "Cause", "StartTime", "StatusCode" ], "members":{ "ActivityId":{"shape":"ResourceId"}, "ServiceNamespace":{"shape":"ServiceNamespace"}, "ResourceId":{"shape":"ResourceIdMaxLen1600"}, "ScalableDimension":{"shape":"ScalableDimension"}, "Description":{"shape":"XmlString"}, "Cause":{"shape":"XmlString"}, "StartTime":{"shape":"TimestampType"}, "EndTime":{"shape":"TimestampType"}, "StatusCode":{"shape":"ScalingActivityStatusCode"}, "StatusMessage":{"shape":"XmlString"}, "Details":{"shape":"XmlString"} } }, "ScalingActivityStatusCode":{ "type":"string", "enum":[ "Pending", "InProgress", "Successful", "Overridden", "Unfulfilled", "Failed" ] }, "ScalingAdjustment":{"type":"integer"}, "ScalingPolicies":{ "type":"list", "member":{"shape":"ScalingPolicy"} }, "ScalingPolicy":{ "type":"structure", "required":[ "PolicyARN", "PolicyName", "ServiceNamespace", "ResourceId", "ScalableDimension", "PolicyType", "CreationTime" ], "members":{ "PolicyARN":{"shape":"ResourceIdMaxLen1600"}, "PolicyName":{"shape":"PolicyName"}, "ServiceNamespace":{"shape":"ServiceNamespace"}, "ResourceId":{"shape":"ResourceIdMaxLen1600"}, "ScalableDimension":{"shape":"ScalableDimension"}, "PolicyType":{"shape":"PolicyType"}, "StepScalingPolicyConfiguration":{"shape":"StepScalingPolicyConfiguration"}, "Alarms":{"shape":"Alarms"}, "CreationTime":{"shape":"TimestampType"} } }, "ServiceNamespace":{ "type":"string", "enum":[ "ecs", "ec2" ] }, "StepAdjustment":{ "type":"structure", "required":["ScalingAdjustment"], "members":{ "MetricIntervalLowerBound":{"shape":"MetricScale"}, "MetricIntervalUpperBound":{"shape":"MetricScale"}, "ScalingAdjustment":{"shape":"ScalingAdjustment"} } }, "StepAdjustments":{ "type":"list", "member":{"shape":"StepAdjustment"} }, "StepScalingPolicyConfiguration":{ "type":"structure", "members":{ "AdjustmentType":{"shape":"AdjustmentType"}, "StepAdjustments":{"shape":"StepAdjustments"}, "MinAdjustmentMagnitude":{"shape":"MinAdjustmentMagnitude"}, "Cooldown":{"shape":"Cooldown"}, "MetricAggregationType":{"shape":"MetricAggregationType"} } }, "TimestampType":{"type":"timestamp"}, "ValidationException":{ "type":"structure", "members":{ "Message":{"shape":"ErrorMessage"} }, "exception":true }, "XmlString":{ "type":"string", "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" } } } aws-sdk-go-1.4.22/models/apis/application-autoscaling/2016-02-06/docs-2.json000066400000000000000000001152201300374646400256310ustar00rootroot00000000000000{ "version": "2.0", "service": "

        Application Auto Scaling is a general purpose Auto Scaling service for supported elastic AWS resources. With Application Auto Scaling, you can automatically scale your AWS resources, with an experience similar to that of Auto Scaling.

        Application Auto Scaling supports scaling the following AWS resources:

        • Amazon ECS services

        • Amazon EC2 Spot fleet instances

        You can use Application Auto Scaling to accomplish the following tasks:

        • Define scaling policies for automatically adjusting your AWS resources

        • Scale your resources in response to CloudWatch alarms

        • View history of your scaling events

        Application Auto Scaling is available in the following regions:

        • us-east-1

        • us-west-1

        • us-west-2

        • ap-southeast-1

        • ap-southeast-2

        • ap-northeast-1

        • eu-central-1

        • eu-west-1

        ", "operations": { "DeleteScalingPolicy": "

        Deletes an Application Auto Scaling scaling policy that was previously created. If you are no longer using a scaling policy, you can delete it with this operation.

        Deleting a policy deletes the underlying alarm action, but does not delete the CloudWatch alarm associated with the scaling policy, even if it no longer has an associated action.

        To create a new scaling policy or update an existing one, see PutScalingPolicy.

        ", "DeregisterScalableTarget": "

        Deregisters a scalable target that was previously registered. If you are no longer using a scalable target, you can delete it with this operation. When you deregister a scalable target, all of the scaling policies that are associated with that scalable target are deleted.

        To create a new scalable target or update an existing one, see RegisterScalableTarget.

        ", "DescribeScalableTargets": "

        Provides descriptive information for scalable targets with a specified service namespace.

        You can filter the results in a service namespace with the ResourceIds and ScalableDimension parameters.

        To create a new scalable target or update an existing one, see RegisterScalableTarget. If you are no longer using a scalable target, you can deregister it with DeregisterScalableTarget.

        ", "DescribeScalingActivities": "

        Provides descriptive information for scaling activities with a specified service namespace for the previous six weeks.

        You can filter the results in a service namespace with the ResourceId and ScalableDimension parameters.

        Scaling activities are triggered by CloudWatch alarms that are associated with scaling policies. To view the existing scaling policies for a service namespace, see DescribeScalingPolicies. To create a new scaling policy or update an existing one, see PutScalingPolicy.

        ", "DescribeScalingPolicies": "

        Provides descriptive information for scaling policies with a specified service namespace.

        You can filter the results in a service namespace with the ResourceId, ScalableDimension, and PolicyNames parameters.

        To create a new scaling policy or update an existing one, see PutScalingPolicy. If you are no longer using a scaling policy, you can delete it with DeleteScalingPolicy.

        ", "PutScalingPolicy": "

        Creates or updates a policy for an existing Application Auto Scaling scalable target. Each scalable target is identified by service namespace, a resource ID, and a scalable dimension, and a scaling policy applies to a scalable target that is identified by those three attributes. You cannot create a scaling policy without first registering a scalable target with RegisterScalableTarget.

        To update an existing policy, use the existing policy name and set the parameters you want to change. Any existing parameter not changed in an update to an existing policy is not changed in this update request.

        You can view the existing scaling policies for a service namespace with DescribeScalingPolicies. If you are no longer using a scaling policy, you can delete it with DeleteScalingPolicy.

        ", "RegisterScalableTarget": "

        Registers or updates a scalable target. A scalable target is a resource that can be scaled out or in with Application Auto Scaling. After you have registered a scalable target, you can use this operation to update the minimum and maximum values for your scalable dimension.

        After you register a scalable target with Application Auto Scaling, you can create and apply scaling policies to it with PutScalingPolicy. You can view the existing scaling policies for a service namespace with DescribeScalableTargets. If you are no longer using a scalable target, you can deregister it with DeregisterScalableTarget.

        " }, "shapes": { "AdjustmentType": { "base": null, "refs": { "StepScalingPolicyConfiguration$AdjustmentType": "

        The adjustment type, which specifies how the ScalingAdjustment parameter in a StepAdjustment is interpreted.

        " } }, "Alarm": { "base": "

        An object representing a CloudWatch alarm associated with a scaling policy.

        ", "refs": { "Alarms$member": null } }, "Alarms": { "base": null, "refs": { "ScalingPolicy$Alarms": "

        The CloudWatch alarms that are associated with the scaling policy.

        " } }, "ConcurrentUpdateException": { "base": "

        Concurrent updates caused an exception, for example, if you request an update to an Application Auto Scaling resource that already has a pending update.

        ", "refs": { } }, "Cooldown": { "base": null, "refs": { "StepScalingPolicyConfiguration$Cooldown": "

        The amount of time, in seconds, after a scaling activity completes where previous trigger-related scaling activities can influence future scaling events.

        For scale out policies, while Cooldown is in effect, the capacity that has been added by the previous scale out event that initiated the Cooldown is calculated as part of the desired capacity for the next scale out. The intention is to continuously (but not excessively) scale out. For example, an alarm triggers a step scaling policy to scale out an Amazon ECS service by 2 tasks, the scaling activity completes successfully, and a Cooldown period of 5 minutes starts. During the Cooldown period, if the alarm triggers the same policy again but at a more aggressive step adjustment to scale out the service by 3 tasks, the 2 tasks that were added in the previous scale out event are considered part of that capacity and only 1 additional task is added to the desired count.

        For scale in policies, the Cooldown period is used to block subsequent scale in requests until it has expired. The intention is to scale in conservatively to protect your application's availability. However, if another alarm triggers a scale out policy during the Cooldown period after a scale-in, Application Auto Scaling scales out your scalable target immediately.

        " } }, "DeleteScalingPolicyRequest": { "base": null, "refs": { } }, "DeleteScalingPolicyResponse": { "base": null, "refs": { } }, "DeregisterScalableTargetRequest": { "base": null, "refs": { } }, "DeregisterScalableTargetResponse": { "base": null, "refs": { } }, "DescribeScalableTargetsRequest": { "base": null, "refs": { } }, "DescribeScalableTargetsResponse": { "base": null, "refs": { } }, "DescribeScalingActivitiesRequest": { "base": null, "refs": { } }, "DescribeScalingActivitiesResponse": { "base": null, "refs": { } }, "DescribeScalingPoliciesRequest": { "base": null, "refs": { } }, "DescribeScalingPoliciesResponse": { "base": null, "refs": { } }, "ErrorMessage": { "base": null, "refs": { "ConcurrentUpdateException$Message": null, "FailedResourceAccessException$Message": null, "InternalServiceException$Message": null, "InvalidNextTokenException$Message": null, "LimitExceededException$Message": null, "ObjectNotFoundException$Message": null, "ValidationException$Message": null } }, "FailedResourceAccessException": { "base": "

        Failed access to resources caused an exception. This exception currently only applies to DescribeScalingPolicies. It is thrown when Application Auto Scaling is unable to retrieve the alarms associated with a scaling policy due to a client error, for example, if the role ARN specified for a scalable target does not have the proper permissions to call the CloudWatch DescribeAlarms API operation on behalf of your account.

        ", "refs": { } }, "InternalServiceException": { "base": "

        The service encountered an internal error.

        ", "refs": { } }, "InvalidNextTokenException": { "base": "

        The next token supplied was invalid.

        ", "refs": { } }, "LimitExceededException": { "base": "

        Your account exceeded a limit. This exception is thrown when a per-account resource limit is exceeded. For more information, see Application Auto Scaling Limits.

        ", "refs": { } }, "MaxResults": { "base": null, "refs": { "DescribeScalableTargetsRequest$MaxResults": "

        The maximum number of scalable target results returned by DescribeScalableTargets in paginated output. When this parameter is used, DescribeScalableTargets returns up to MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another DescribeScalableTargets request with the returned NextToken value. This value can be between 1 and 50. If this parameter is not used, then DescribeScalableTargets returns up to 50 results and a NextToken value, if applicable.

        ", "DescribeScalingActivitiesRequest$MaxResults": "

        The maximum number of scaling activity results returned by DescribeScalingActivities in paginated output. When this parameter is used, DescribeScalingActivities returns up to MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another DescribeScalingActivities request with the returned NextToken value. This value can be between 1 and 50. If this parameter is not used, then DescribeScalingActivities returns up to 50 results and a NextToken value, if applicable.

        ", "DescribeScalingPoliciesRequest$MaxResults": "

        The maximum number of scaling policy results returned by DescribeScalingPolicies in paginated output. When this parameter is used, DescribeScalingPolicies returns up to MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another DescribeScalingPolicies request with the returned NextToken value. This value can be between 1 and 50. If this parameter is not used, then DescribeScalingPolicies returns up to 50 results and a NextToken value, if applicable.

        " } }, "MetricAggregationType": { "base": null, "refs": { "StepScalingPolicyConfiguration$MetricAggregationType": "

        The aggregation type for the CloudWatch metrics. Valid values are Minimum, Maximum, and Average.

        " } }, "MetricScale": { "base": null, "refs": { "StepAdjustment$MetricIntervalLowerBound": "

        The lower bound for the difference between the alarm threshold and the CloudWatch metric. If the metric value is above the breach threshold, the lower bound is inclusive (the metric must be greater than or equal to the threshold plus the lower bound). Otherwise, it is exclusive (the metric must be greater than the threshold plus the lower bound). A null value indicates negative infinity.

        ", "StepAdjustment$MetricIntervalUpperBound": "

        The upper bound for the difference between the alarm threshold and the CloudWatch metric. If the metric value is above the breach threshold, the upper bound is exclusive (the metric must be less than the threshold plus the upper bound). Otherwise, it is inclusive (the metric must be less than or equal to the threshold plus the upper bound). A null value indicates positive infinity.

        The upper bound must be greater than the lower bound.

        " } }, "MinAdjustmentMagnitude": { "base": null, "refs": { "StepScalingPolicyConfiguration$MinAdjustmentMagnitude": "

        The minimum number to adjust your scalable dimension as a result of a scaling activity. If the adjustment type is PercentChangeInCapacity, the scaling policy changes the scalable dimension of the scalable target by this amount.

        " } }, "ObjectNotFoundException": { "base": "

        The specified object could not be found. For any Put or Register API operation, which depends on the existence of a scalable target, this exception is thrown if the scalable target with the specified service namespace, resource ID, and scalable dimension does not exist. For any Delete or Deregister API operation, this exception is thrown if the resource that is to be deleted or deregistered cannot be found.

        ", "refs": { } }, "PolicyName": { "base": null, "refs": { "PutScalingPolicyRequest$PolicyName": "

        The name of the scaling policy.

        ", "ScalingPolicy$PolicyName": "

        The name of the scaling policy.

        " } }, "PolicyType": { "base": null, "refs": { "PutScalingPolicyRequest$PolicyType": "

        The policy type. If you are creating a new policy, this parameter is required. If you are updating an existing policy, this parameter is not required.

        ", "ScalingPolicy$PolicyType": "

        The scaling policy type.

        " } }, "PutScalingPolicyRequest": { "base": null, "refs": { } }, "PutScalingPolicyResponse": { "base": null, "refs": { } }, "RegisterScalableTargetRequest": { "base": null, "refs": { } }, "RegisterScalableTargetResponse": { "base": null, "refs": { } }, "ResourceCapacity": { "base": null, "refs": { "RegisterScalableTargetRequest$MinCapacity": "

        The minimum value for this scalable target to scale in to in response to scaling activities. This parameter is required if you are registering a new scalable target, and it is optional if you are updating an existing one.

        ", "RegisterScalableTargetRequest$MaxCapacity": "

        The maximum value for this scalable target to scale out to in response to scaling activities. This parameter is required if you are registering a new scalable target, and it is optional if you are updating an existing one.

        ", "ScalableTarget$MinCapacity": "

        The minimum value for this scalable target to scale in to in response to scaling activities.

        ", "ScalableTarget$MaxCapacity": "

        The maximum value for this scalable target to scale out to in response to scaling activities.

        " } }, "ResourceId": { "base": null, "refs": { "Alarm$AlarmName": "

        The name of the alarm.

        ", "Alarm$AlarmARN": "

        The Amazon Resource Name (ARN) of the alarm.

        ", "ScalingActivity$ActivityId": "

        The unique identifier string for the scaling activity.

        " } }, "ResourceIdMaxLen1600": { "base": null, "refs": { "DeleteScalingPolicyRequest$PolicyName": "

        The name of the scaling policy to delete.

        ", "DeleteScalingPolicyRequest$ResourceId": "

        The resource type and unique identifier string for the resource associated with the scaling policy. For Amazon ECS services, the resource type is services, and the identifier is the cluster name and service name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet requests, the resource type is spot-fleet-request, and the identifier is the Spot fleet request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

        ", "DeregisterScalableTargetRequest$ResourceId": "

        The resource type and unique identifier string for the resource associated with the scalable target. For Amazon ECS services, the resource type is services, and the identifier is the cluster name and service name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet requests, the resource type is spot-fleet-request, and the identifier is the Spot fleet request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

        ", "DescribeScalingActivitiesRequest$ResourceId": "

        The resource type and unique identifier string for the resource associated with the scaling activity. For Amazon ECS services, the resource type is services, and the identifier is the cluster name and service name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet requests, the resource type is spot-fleet-request, and the identifier is the Spot fleet request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. If you specify a scalable dimension, you must also specify a resource ID.

        ", "DescribeScalingPoliciesRequest$ResourceId": "

        The unique resource identifier string of the scalable target that the scaling policy is associated with. For Amazon ECS services, the resource type is services, and the identifier is the cluster name and service name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet requests, the resource type is spot-fleet-request, and the identifier is the Spot fleet request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. If you specify a scalable dimension, you must also specify a resource ID.

        ", "PutScalingPolicyRequest$ResourceId": "

        The unique resource identifier string for the scalable target that this scaling policy applies to. For Amazon ECS services, the resource type is services, and the identifier is the cluster name and service name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet requests, the resource type is spot-fleet-request, and the identifier is the Spot fleet request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

        ", "PutScalingPolicyResponse$PolicyARN": "

        The Amazon Resource Name (ARN) of the resulting scaling policy.

        ", "RegisterScalableTargetRequest$ResourceId": "

        The resource type and unique identifier string for the resource to associate with the scalable target. For Amazon ECS services, the resource type is services, and the identifier is the cluster name and service name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet requests, the resource type is spot-fleet-request, and the identifier is the Spot fleet request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

        ", "RegisterScalableTargetRequest$RoleARN": "

        The ARN of the IAM role that allows Application Auto Scaling to modify your scalable target on your behalf. This parameter is required if you are registering a new scalable target, and it is optional if you are updating an existing one.

        ", "ResourceIdsMaxLen1600$member": null, "ScalableTarget$ResourceId": "

        The resource type and unique identifier string for the resource associated with the scalable target. For Amazon ECS services, the resource type is services, and the identifier is the cluster name and service name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet requests, the resource type is spot-fleet-request, and the identifier is the Spot fleet request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

        ", "ScalableTarget$RoleARN": "

        The ARN of the IAM role that allows Application Auto Scaling to modify your scalable target on your behalf.

        ", "ScalingActivity$ResourceId": "

        The resource type and unique identifier string for the resource associated with the scaling activity. For Amazon ECS services, the resource type is services, and the identifier is the cluster name and service name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet requests, the resource type is spot-fleet-request, and the identifier is the Spot fleet request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

        ", "ScalingPolicy$PolicyARN": "

        The Amazon Resource Name (ARN) of the scaling policy.

        ", "ScalingPolicy$ResourceId": "

        The resource type and unique identifier string for the resource associated with the scaling policy. For Amazon ECS services, the resource type is services, and the identifier is the cluster name and service name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet requests, the resource type is spot-fleet-request, and the identifier is the Spot fleet request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

        " } }, "ResourceIdsMaxLen1600": { "base": null, "refs": { "DescribeScalableTargetsRequest$ResourceIds": "

        The resource type and unique identifier string for the resource associated with the scalable target. For Amazon ECS services, the resource type is services, and the identifier is the cluster name and service name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet requests, the resource type is spot-fleet-request, and the identifier is the Spot fleet request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. If you specify a scalable dimension, you must also specify a resource ID.

        ", "DescribeScalingPoliciesRequest$PolicyNames": "

        The names of the scaling policies to describe.

        " } }, "ScalableDimension": { "base": null, "refs": { "DeleteScalingPolicyRequest$ScalableDimension": "

        The scalable dimension associated with the scaling policy. The scalable dimension contains the service namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the desired task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the target capacity of an Amazon EC2 Spot fleet request.

        ", "DeregisterScalableTargetRequest$ScalableDimension": "

        The scalable dimension associated with the scalable target. The scalable dimension contains the service namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the desired task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the target capacity of an Amazon EC2 Spot fleet request.

        ", "DescribeScalableTargetsRequest$ScalableDimension": "

        The scalable dimension associated with the scalable target. The scalable dimension contains the service namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the desired task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the target capacity of an Amazon EC2 Spot fleet request. If you specify a scalable dimension, you must also specify a resource ID.

        ", "DescribeScalingActivitiesRequest$ScalableDimension": "

        The scalable dimension associated with the scaling activity. The scalable dimension contains the service namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the desired task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the target capacity of an Amazon EC2 Spot fleet request. If you specify a scalable dimension, you must also specify a resource ID.

        ", "DescribeScalingPoliciesRequest$ScalableDimension": "

        The scalable dimension of the scalable target that the scaling policy is associated with. The scalable dimension contains the service namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the desired task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the target capacity of an Amazon EC2 Spot fleet request. If you specify a scalable dimension, you must also specify a resource ID.

        ", "PutScalingPolicyRequest$ScalableDimension": "

        The scalable dimension of the scalable target that this scaling policy applies to. The scalable dimension contains the service namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the desired task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the target capacity of an Amazon EC2 Spot fleet request.

        ", "RegisterScalableTargetRequest$ScalableDimension": "

        The scalable dimension associated with the scalable target. The scalable dimension contains the service namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the desired task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the target capacity of an Amazon EC2 Spot fleet request.

        ", "ScalableTarget$ScalableDimension": "

        The scalable dimension associated with the scalable target. The scalable dimension contains the service namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the desired task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the target capacity of an Amazon EC2 Spot fleet request.

        ", "ScalingActivity$ScalableDimension": "

        The scalable dimension associated with the scaling activity. The scalable dimension contains the service namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the desired task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the target capacity of an Amazon EC2 Spot fleet request.

        ", "ScalingPolicy$ScalableDimension": "

        The scalable dimension associated with the scaling policy. The scalable dimension contains the service namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the desired task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the target capacity of an Amazon EC2 Spot fleet request.

        " } }, "ScalableTarget": { "base": "

        An object representing a scalable target.

        ", "refs": { "ScalableTargets$member": null } }, "ScalableTargets": { "base": null, "refs": { "DescribeScalableTargetsResponse$ScalableTargets": "

        The list of scalable targets that matches the request parameters.

        " } }, "ScalingActivities": { "base": null, "refs": { "DescribeScalingActivitiesResponse$ScalingActivities": "

        A list of scaling activity objects.

        " } }, "ScalingActivity": { "base": "

        An object representing a scaling activity.

        ", "refs": { "ScalingActivities$member": null } }, "ScalingActivityStatusCode": { "base": null, "refs": { "ScalingActivity$StatusCode": "

        Indicates the status of the scaling activity.

        " } }, "ScalingAdjustment": { "base": null, "refs": { "StepAdjustment$ScalingAdjustment": "

        The amount by which to scale, based on the specified adjustment type. A positive value adds to the current scalable dimension while a negative number removes from the current scalable dimension.

        " } }, "ScalingPolicies": { "base": null, "refs": { "DescribeScalingPoliciesResponse$ScalingPolicies": "

        A list of scaling policy objects.

        " } }, "ScalingPolicy": { "base": "

        An object representing a scaling policy.

        ", "refs": { "ScalingPolicies$member": null } }, "ServiceNamespace": { "base": null, "refs": { "DeleteScalingPolicyRequest$ServiceNamespace": "

        The namespace for the AWS service that the scaling policy is associated with. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference.

        ", "DeregisterScalableTargetRequest$ServiceNamespace": "

        The namespace for the AWS service that the scalable target is associated with. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference.

        ", "DescribeScalableTargetsRequest$ServiceNamespace": "

        The namespace for the AWS service that the scalable target is associated with. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference.

        ", "DescribeScalingActivitiesRequest$ServiceNamespace": "

        The namespace for the AWS service that the scaling activity is associated with. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference.

        ", "DescribeScalingPoliciesRequest$ServiceNamespace": "

        The AWS service namespace of the scalable target that the scaling policy is associated with. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference.

        ", "PutScalingPolicyRequest$ServiceNamespace": "

        The AWS service namespace of the scalable target that this scaling policy applies to. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference.

        ", "RegisterScalableTargetRequest$ServiceNamespace": "

        The namespace for the AWS service that the scalable target is associated with. For Amazon ECS services, the namespace value is ecs. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference.

        ", "ScalableTarget$ServiceNamespace": "

        The namespace for the AWS service that the scalable target is associated with. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference.

        ", "ScalingActivity$ServiceNamespace": "

        The namespace for the AWS service that the scaling activity is associated with. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference.

        ", "ScalingPolicy$ServiceNamespace": "

        The namespace for the AWS service that the scaling policy is associated with. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference.

        " } }, "StepAdjustment": { "base": "

        An object representing a step adjustment for a StepScalingPolicyConfiguration. Describes an adjustment based on the difference between the value of the aggregated CloudWatch metric and the breach threshold that you've defined for the alarm.

        For the following examples, suppose that you have an alarm with a breach threshold of 50:

        • If you want the adjustment to be triggered when the metric is greater than or equal to 50 and less than 60, specify a lower bound of 0 and an upper bound of 10.

        • If you want the adjustment to be triggered when the metric is greater than 40 and less than or equal to 50, specify a lower bound of -10 and an upper bound of 0.

        There are a few rules for the step adjustments for your step policy:

        • The ranges of your step adjustments can't overlap or have a gap.

        • At most one step adjustment can have a null lower bound. If one step adjustment has a negative lower bound, then there must be a step adjustment with a null lower bound.

        • At most one step adjustment can have a null upper bound. If one step adjustment has a positive upper bound, then there must be a step adjustment with a null upper bound.

        • The upper and lower bound can't be null in the same step adjustment.

        ", "refs": { "StepAdjustments$member": null } }, "StepAdjustments": { "base": null, "refs": { "StepScalingPolicyConfiguration$StepAdjustments": "

        A set of adjustments that enable you to scale based on the size of the alarm breach.

        " } }, "StepScalingPolicyConfiguration": { "base": "

        An object representing a step scaling policy configuration.

        ", "refs": { "PutScalingPolicyRequest$StepScalingPolicyConfiguration": "

        The configuration for the step scaling policy. If you are creating a new policy, this parameter is required. If you are updating an existing policy, this parameter is not required. For more information, see StepScalingPolicyConfiguration and StepAdjustment.

        ", "ScalingPolicy$StepScalingPolicyConfiguration": "

        The configuration for the step scaling policy.

        " } }, "TimestampType": { "base": null, "refs": { "ScalableTarget$CreationTime": "

        The Unix timestamp for when the scalable target was created.

        ", "ScalingActivity$StartTime": "

        The Unix timestamp for when the scaling activity began.

        ", "ScalingActivity$EndTime": "

        The Unix timestamp for when the scaling activity ended.

        ", "ScalingPolicy$CreationTime": "

        The Unix timestamp for when the scaling policy was created.

        " } }, "ValidationException": { "base": "

        An exception was thrown for a validation issue. Review the available parameters for the API request.

        ", "refs": { } }, "XmlString": { "base": null, "refs": { "DescribeScalableTargetsRequest$NextToken": "

        The NextToken value returned from a previous paginated DescribeScalableTargets request. Pagination continues from the end of the previous results that returned the NextToken value. This value is null when there are no more results to return.

        ", "DescribeScalableTargetsResponse$NextToken": "

        The NextToken value to include in a future DescribeScalableTargets request. When the results of a DescribeScalableTargets request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeScalingActivitiesRequest$NextToken": "

        The NextToken value returned from a previous paginated DescribeScalingActivities request. Pagination continues from the end of the previous results that returned the NextToken value. This value is null when there are no more results to return.

        ", "DescribeScalingActivitiesResponse$NextToken": "

        The NextToken value to include in a future DescribeScalingActivities request. When the results of a DescribeScalingActivities request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeScalingPoliciesRequest$NextToken": "

        The NextToken value returned from a previous paginated DescribeScalingPolicies request. Pagination continues from the end of the previous results that returned the NextToken value. This value is null when there are no more results to return.

        ", "DescribeScalingPoliciesResponse$NextToken": "

        The NextToken value to include in a future DescribeScalingPolicies request. When the results of a DescribeScalingPolicies request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "ScalingActivity$Description": "

        A simple description of what action the scaling activity intends to accomplish.

        ", "ScalingActivity$Cause": "

        A simple description of what caused the scaling activity to happen.

        ", "ScalingActivity$StatusMessage": "

        A simple message about the current status of the scaling activity.

        ", "ScalingActivity$Details": "

        The details about the scaling activity.

        " } } } } aws-sdk-go-1.4.22/models/apis/application-autoscaling/2016-02-06/examples-1.json000066400000000000000000000225001300374646400265140ustar00rootroot00000000000000{ "version": "1.0", "examples": { "DeleteScalingPolicy": [ { "input": { "PolicyName": "web-app-cpu-lt-25", "ResourceId": "service/default/web-app", "ScalableDimension": "ecs:service:DesiredCount", "ServiceNamespace": "ecs" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example deletes a scaling policy for the Amazon ECS service called web-app, which is running in the default cluster.", "id": "to-delete-a-scaling-policy-1470863892689", "title": "To delete a scaling policy" } ], "DeregisterScalableTarget": [ { "input": { "ResourceId": "service/default/web-app", "ScalableDimension": "ecs:service:DesiredCount", "ServiceNamespace": "ecs" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example deregisters a scalable target for an Amazon ECS service called web-app that is running in the default cluster.", "id": "to-deregister-a-scalable-target-1470864164895", "title": "To deregister a scalable target" } ], "DescribeScalableTargets": [ { "input": { "ServiceNamespace": "ecs" }, "output": { "ScalableTargets": [ { "CreationTime": "2016-05-06T11:21:46.199Z", "MaxCapacity": 10, "MinCapacity": 1, "ResourceId": "service/default/web-app", "RoleARN": "arn:aws:iam::012345678910:role/ApplicationAutoscalingECSRole", "ScalableDimension": "ecs:service:DesiredCount", "ServiceNamespace": "ecs" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the scalable targets for the ecs service namespace.", "id": "to-describe-scalable-targets-1470864286961", "title": "To describe scalable targets" } ], "DescribeScalingActivities": [ { "input": { "ResourceId": "service/default/web-app", "ScalableDimension": "ecs:service:DesiredCount", "ServiceNamespace": "ecs" }, "output": { "ScalingActivities": [ { "ActivityId": "e6c5f7d1-dbbb-4a3f-89b2-51f33e766399", "Cause": "monitor alarm web-app-cpu-lt-25 in state ALARM triggered policy web-app-cpu-lt-25", "Description": "Setting desired count to 1.", "EndTime": "2016-05-06T16:04:32.111Z", "ResourceId": "service/default/web-app", "ScalableDimension": "ecs:service:DesiredCount", "ServiceNamespace": "ecs", "StartTime": "2016-05-06T16:03:58.171Z", "StatusCode": "Successful", "StatusMessage": "Successfully set desired count to 1. Change successfully fulfilled by ecs." } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the scaling activities for an Amazon ECS service called web-app that is running in the default cluster.", "id": "to-describe-scaling-activities-for-a-scalable-target-1470864398629", "title": "To describe scaling activities for a scalable target" } ], "DescribeScalingPolicies": [ { "input": { "ServiceNamespace": "ecs" }, "output": { "NextToken": "", "ScalingPolicies": [ { "Alarms": [ { "AlarmARN": "arn:aws:cloudwatch:us-west-2:012345678910:alarm:web-app-cpu-gt-75", "AlarmName": "web-app-cpu-gt-75" } ], "CreationTime": "2016-05-06T12:11:39.230Z", "PolicyARN": "arn:aws:autoscaling:us-west-2:012345678910:scalingPolicy:6d8972f3-efc8-437c-92d1-6270f29a66e7:resource/ecs/service/default/web-app:policyName/web-app-cpu-gt-75", "PolicyName": "web-app-cpu-gt-75", "PolicyType": "StepScaling", "ResourceId": "service/default/web-app", "ScalableDimension": "ecs:service:DesiredCount", "ServiceNamespace": "ecs", "StepScalingPolicyConfiguration": { "AdjustmentType": "PercentChangeInCapacity", "Cooldown": 60, "StepAdjustments": [ { "MetricIntervalLowerBound": 0, "ScalingAdjustment": 200 } ] } } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the scaling policies for the ecs service namespace.", "id": "to-describe-scaling-policies-1470864609734", "title": "To describe scaling policies" } ], "PutScalingPolicy": [ { "input": { "PolicyName": "web-app-cpu-gt-75", "PolicyType": "StepScaling", "ResourceId": "service/default/web-app", "ScalableDimension": "ecs:service:DesiredCount", "ServiceNamespace": "ecs", "StepScalingPolicyConfiguration": { "AdjustmentType": "PercentChangeInCapacity", "Cooldown": 60, "StepAdjustments": [ { "MetricIntervalLowerBound": 0, "ScalingAdjustment": 200 } ] } }, "output": { "PolicyARN": "arn:aws:autoscaling:us-west-2:012345678910:scalingPolicy:6d8972f3-efc8-437c-92d1-6270f29a66e7:resource/ecs/service/default/web-app:policyName/web-app-cpu-gt-75" }, "comments": { "input": { }, "output": { } }, "description": "This example applies a scaling policy to an Amazon ECS service called web-app in the default cluster. The policy increases the desired count of the service by 200%, with a cool down period of 60 seconds.", "id": "to-apply-a-scaling-policy-to-an-amazon-ecs-service-1470864779862", "title": "To apply a scaling policy to an Amazon ECS service" }, { "input": { "PolicyName": "fleet-cpu-gt-75", "PolicyType": "StepScaling", "ResourceId": "spot-fleet-request/sfr-45e69d8a-be48-4539-bbf3-3464e99c50c3", "ScalableDimension": "ec2:spot-fleet-request:TargetCapacity", "ServiceNamespace": "ec2", "StepScalingPolicyConfiguration": { "AdjustmentType": "PercentChangeInCapacity", "Cooldown": 180, "StepAdjustments": [ { "MetricIntervalLowerBound": 0, "ScalingAdjustment": 200 } ] } }, "output": { "PolicyARN": "arn:aws:autoscaling:us-east-1:012345678910:scalingPolicy:89406401-0cb7-4130-b770-d97cca0e446b:resource/ec2/spot-fleet-request/sfr-45e69d8a-be48-4539-bbf3-3464e99c50c3:policyName/fleet-cpu-gt-75" }, "comments": { "input": { }, "output": { } }, "description": "This example applies a scaling policy to an Amazon EC2 Spot fleet. The policy increases the target capacity of the spot fleet by 200%, with a cool down period of 180 seconds.\",\n ", "id": "to-apply-a-scaling-policy-to-an-amazon-ec2-spot-fleet-1472073278469", "title": "To apply a scaling policy to an Amazon EC2 Spot fleet" } ], "RegisterScalableTarget": [ { "input": { "MaxCapacity": 10, "MinCapacity": 1, "ResourceId": "service/default/web-app", "RoleARN": "arn:aws:iam::012345678910:role/ApplicationAutoscalingECSRole", "ScalableDimension": "ecs:service:DesiredCount", "ServiceNamespace": "ecs" }, "comments": { "input": { }, "output": { } }, "description": "This example registers a scalable target from an Amazon ECS service called web-app that is running on the default cluster, with a minimum desired count of 1 task and a maximum desired count of 10 tasks.", "id": "to-register-a-new-scalable-target-1470864910380", "title": "To register an ECS service as a scalable target" }, { "input": { "MaxCapacity": 10, "MinCapacity": 1, "ResourceId": "spot-fleet-request/sfr-45e69d8a-be48-4539-bbf3-3464e99c50c3", "RoleARN": "arn:aws:iam::012345678910:role/ApplicationAutoscalingSpotRole", "ScalableDimension": "ec2:spot-fleet-request:TargetCapacity", "ServiceNamespace": "ec2" }, "output": { }, "comments": { }, "description": "This example registers a scalable target from an Amazon EC2 Spot fleet with a minimum target capacity of 1 and a maximum of 10.", "id": "to-register-an-ec2-spot-fleet-as-a-scalable-target-1472072899649", "title": "To register an EC2 Spot fleet as a scalable target" } ] } } aws-sdk-go-1.4.22/models/apis/application-autoscaling/2016-02-06/paginators-1.json000066400000000000000000000010711300374646400270450ustar00rootroot00000000000000{ "pagination": { "DescribeScalableTargets": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "ScalableTargets" }, "DescribeScalingPolicies": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "ScalingPolicies" }, "DescribeScalingActivities": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "ScalingActivities" } } } aws-sdk-go-1.4.22/models/apis/autoscaling/000077500000000000000000000000001300374646400203135ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/autoscaling/2011-01-01/000077500000000000000000000000001300374646400213325ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/autoscaling/2011-01-01/api-2.json000066400000000000000000001732351300374646400231500ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2011-01-01", "endpointPrefix":"autoscaling", "protocol":"query", "serviceFullName":"Auto Scaling", "signatureVersion":"v4", "xmlNamespace":"http://autoscaling.amazonaws.com/doc/2011-01-01/" }, "operations":{ "AttachInstances":{ "name":"AttachInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachInstancesQuery"}, "errors":[ {"shape":"ResourceContentionFault"} ] }, "AttachLoadBalancerTargetGroups":{ "name":"AttachLoadBalancerTargetGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachLoadBalancerTargetGroupsType"}, "output":{ "shape":"AttachLoadBalancerTargetGroupsResultType", "resultWrapper":"AttachLoadBalancerTargetGroupsResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "AttachLoadBalancers":{ "name":"AttachLoadBalancers", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachLoadBalancersType"}, "output":{ "shape":"AttachLoadBalancersResultType", "resultWrapper":"AttachLoadBalancersResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "CompleteLifecycleAction":{ "name":"CompleteLifecycleAction", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CompleteLifecycleActionType"}, "output":{ "shape":"CompleteLifecycleActionAnswer", "resultWrapper":"CompleteLifecycleActionResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "CreateAutoScalingGroup":{ "name":"CreateAutoScalingGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateAutoScalingGroupType"}, "errors":[ {"shape":"AlreadyExistsFault"}, {"shape":"LimitExceededFault"}, {"shape":"ResourceContentionFault"} ] }, "CreateLaunchConfiguration":{ "name":"CreateLaunchConfiguration", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateLaunchConfigurationType"}, "errors":[ {"shape":"AlreadyExistsFault"}, {"shape":"LimitExceededFault"}, {"shape":"ResourceContentionFault"} ] }, "CreateOrUpdateTags":{ "name":"CreateOrUpdateTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateOrUpdateTagsType"}, "errors":[ {"shape":"LimitExceededFault"}, {"shape":"AlreadyExistsFault"}, {"shape":"ResourceContentionFault"} ] }, "DeleteAutoScalingGroup":{ "name":"DeleteAutoScalingGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteAutoScalingGroupType"}, "errors":[ {"shape":"ScalingActivityInProgressFault"}, {"shape":"ResourceInUseFault"}, {"shape":"ResourceContentionFault"} ] }, "DeleteLaunchConfiguration":{ "name":"DeleteLaunchConfiguration", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"LaunchConfigurationNameType"}, "errors":[ {"shape":"ResourceInUseFault"}, {"shape":"ResourceContentionFault"} ] }, "DeleteLifecycleHook":{ "name":"DeleteLifecycleHook", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteLifecycleHookType"}, "output":{ "shape":"DeleteLifecycleHookAnswer", "resultWrapper":"DeleteLifecycleHookResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "DeleteNotificationConfiguration":{ "name":"DeleteNotificationConfiguration", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteNotificationConfigurationType"}, "errors":[ {"shape":"ResourceContentionFault"} ] }, "DeletePolicy":{ "name":"DeletePolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeletePolicyType"}, "errors":[ {"shape":"ResourceContentionFault"} ] }, "DeleteScheduledAction":{ "name":"DeleteScheduledAction", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteScheduledActionType"}, "errors":[ {"shape":"ResourceContentionFault"} ] }, "DeleteTags":{ "name":"DeleteTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteTagsType"}, "errors":[ {"shape":"ResourceContentionFault"} ] }, "DescribeAccountLimits":{ "name":"DescribeAccountLimits", "http":{ "method":"POST", "requestUri":"/" }, "output":{ "shape":"DescribeAccountLimitsAnswer", "resultWrapper":"DescribeAccountLimitsResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "DescribeAdjustmentTypes":{ "name":"DescribeAdjustmentTypes", "http":{ "method":"POST", "requestUri":"/" }, "output":{ "shape":"DescribeAdjustmentTypesAnswer", "resultWrapper":"DescribeAdjustmentTypesResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "DescribeAutoScalingGroups":{ "name":"DescribeAutoScalingGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AutoScalingGroupNamesType"}, "output":{ "shape":"AutoScalingGroupsType", "resultWrapper":"DescribeAutoScalingGroupsResult" }, "errors":[ {"shape":"InvalidNextToken"}, {"shape":"ResourceContentionFault"} ] }, "DescribeAutoScalingInstances":{ "name":"DescribeAutoScalingInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAutoScalingInstancesType"}, "output":{ "shape":"AutoScalingInstancesType", "resultWrapper":"DescribeAutoScalingInstancesResult" }, "errors":[ {"shape":"InvalidNextToken"}, {"shape":"ResourceContentionFault"} ] }, "DescribeAutoScalingNotificationTypes":{ "name":"DescribeAutoScalingNotificationTypes", "http":{ "method":"POST", "requestUri":"/" }, "output":{ "shape":"DescribeAutoScalingNotificationTypesAnswer", "resultWrapper":"DescribeAutoScalingNotificationTypesResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "DescribeLaunchConfigurations":{ "name":"DescribeLaunchConfigurations", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"LaunchConfigurationNamesType"}, "output":{ "shape":"LaunchConfigurationsType", "resultWrapper":"DescribeLaunchConfigurationsResult" }, "errors":[ {"shape":"InvalidNextToken"}, {"shape":"ResourceContentionFault"} ] }, "DescribeLifecycleHookTypes":{ "name":"DescribeLifecycleHookTypes", "http":{ "method":"POST", "requestUri":"/" }, "output":{ "shape":"DescribeLifecycleHookTypesAnswer", "resultWrapper":"DescribeLifecycleHookTypesResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "DescribeLifecycleHooks":{ "name":"DescribeLifecycleHooks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeLifecycleHooksType"}, "output":{ "shape":"DescribeLifecycleHooksAnswer", "resultWrapper":"DescribeLifecycleHooksResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "DescribeLoadBalancerTargetGroups":{ "name":"DescribeLoadBalancerTargetGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeLoadBalancerTargetGroupsRequest"}, "output":{ "shape":"DescribeLoadBalancerTargetGroupsResponse", "resultWrapper":"DescribeLoadBalancerTargetGroupsResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "DescribeLoadBalancers":{ "name":"DescribeLoadBalancers", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeLoadBalancersRequest"}, "output":{ "shape":"DescribeLoadBalancersResponse", "resultWrapper":"DescribeLoadBalancersResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "DescribeMetricCollectionTypes":{ "name":"DescribeMetricCollectionTypes", "http":{ "method":"POST", "requestUri":"/" }, "output":{ "shape":"DescribeMetricCollectionTypesAnswer", "resultWrapper":"DescribeMetricCollectionTypesResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "DescribeNotificationConfigurations":{ "name":"DescribeNotificationConfigurations", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeNotificationConfigurationsType"}, "output":{ "shape":"DescribeNotificationConfigurationsAnswer", "resultWrapper":"DescribeNotificationConfigurationsResult" }, "errors":[ {"shape":"InvalidNextToken"}, {"shape":"ResourceContentionFault"} ] }, "DescribePolicies":{ "name":"DescribePolicies", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribePoliciesType"}, "output":{ "shape":"PoliciesType", "resultWrapper":"DescribePoliciesResult" }, "errors":[ {"shape":"InvalidNextToken"}, {"shape":"ResourceContentionFault"} ] }, "DescribeScalingActivities":{ "name":"DescribeScalingActivities", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeScalingActivitiesType"}, "output":{ "shape":"ActivitiesType", "resultWrapper":"DescribeScalingActivitiesResult" }, "errors":[ {"shape":"InvalidNextToken"}, {"shape":"ResourceContentionFault"} ] }, "DescribeScalingProcessTypes":{ "name":"DescribeScalingProcessTypes", "http":{ "method":"POST", "requestUri":"/" }, "output":{ "shape":"ProcessesType", "resultWrapper":"DescribeScalingProcessTypesResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "DescribeScheduledActions":{ "name":"DescribeScheduledActions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeScheduledActionsType"}, "output":{ "shape":"ScheduledActionsType", "resultWrapper":"DescribeScheduledActionsResult" }, "errors":[ {"shape":"InvalidNextToken"}, {"shape":"ResourceContentionFault"} ] }, "DescribeTags":{ "name":"DescribeTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTagsType"}, "output":{ "shape":"TagsType", "resultWrapper":"DescribeTagsResult" }, "errors":[ {"shape":"InvalidNextToken"}, {"shape":"ResourceContentionFault"} ] }, "DescribeTerminationPolicyTypes":{ "name":"DescribeTerminationPolicyTypes", "http":{ "method":"POST", "requestUri":"/" }, "output":{ "shape":"DescribeTerminationPolicyTypesAnswer", "resultWrapper":"DescribeTerminationPolicyTypesResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "DetachInstances":{ "name":"DetachInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachInstancesQuery"}, "output":{ "shape":"DetachInstancesAnswer", "resultWrapper":"DetachInstancesResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "DetachLoadBalancerTargetGroups":{ "name":"DetachLoadBalancerTargetGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachLoadBalancerTargetGroupsType"}, "output":{ "shape":"DetachLoadBalancerTargetGroupsResultType", "resultWrapper":"DetachLoadBalancerTargetGroupsResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "DetachLoadBalancers":{ "name":"DetachLoadBalancers", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachLoadBalancersType"}, "output":{ "shape":"DetachLoadBalancersResultType", "resultWrapper":"DetachLoadBalancersResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "DisableMetricsCollection":{ "name":"DisableMetricsCollection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableMetricsCollectionQuery"}, "errors":[ {"shape":"ResourceContentionFault"} ] }, "EnableMetricsCollection":{ "name":"EnableMetricsCollection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableMetricsCollectionQuery"}, "errors":[ {"shape":"ResourceContentionFault"} ] }, "EnterStandby":{ "name":"EnterStandby", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnterStandbyQuery"}, "output":{ "shape":"EnterStandbyAnswer", "resultWrapper":"EnterStandbyResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "ExecutePolicy":{ "name":"ExecutePolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ExecutePolicyType"}, "errors":[ {"shape":"ScalingActivityInProgressFault"}, {"shape":"ResourceContentionFault"} ] }, "ExitStandby":{ "name":"ExitStandby", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ExitStandbyQuery"}, "output":{ "shape":"ExitStandbyAnswer", "resultWrapper":"ExitStandbyResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "PutLifecycleHook":{ "name":"PutLifecycleHook", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutLifecycleHookType"}, "output":{ "shape":"PutLifecycleHookAnswer", "resultWrapper":"PutLifecycleHookResult" }, "errors":[ {"shape":"LimitExceededFault"}, {"shape":"ResourceContentionFault"} ] }, "PutNotificationConfiguration":{ "name":"PutNotificationConfiguration", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutNotificationConfigurationType"}, "errors":[ {"shape":"LimitExceededFault"}, {"shape":"ResourceContentionFault"} ] }, "PutScalingPolicy":{ "name":"PutScalingPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutScalingPolicyType"}, "output":{ "shape":"PolicyARNType", "resultWrapper":"PutScalingPolicyResult" }, "errors":[ {"shape":"LimitExceededFault"}, {"shape":"ResourceContentionFault"} ] }, "PutScheduledUpdateGroupAction":{ "name":"PutScheduledUpdateGroupAction", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutScheduledUpdateGroupActionType"}, "errors":[ {"shape":"AlreadyExistsFault"}, {"shape":"LimitExceededFault"}, {"shape":"ResourceContentionFault"} ] }, "RecordLifecycleActionHeartbeat":{ "name":"RecordLifecycleActionHeartbeat", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RecordLifecycleActionHeartbeatType"}, "output":{ "shape":"RecordLifecycleActionHeartbeatAnswer", "resultWrapper":"RecordLifecycleActionHeartbeatResult" }, "errors":[ {"shape":"ResourceContentionFault"} ] }, "ResumeProcesses":{ "name":"ResumeProcesses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ScalingProcessQuery"}, "errors":[ {"shape":"ResourceInUseFault"}, {"shape":"ResourceContentionFault"} ] }, "SetDesiredCapacity":{ "name":"SetDesiredCapacity", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetDesiredCapacityType"}, "errors":[ {"shape":"ScalingActivityInProgressFault"}, {"shape":"ResourceContentionFault"} ] }, "SetInstanceHealth":{ "name":"SetInstanceHealth", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetInstanceHealthQuery"}, "errors":[ {"shape":"ResourceContentionFault"} ] }, "SetInstanceProtection":{ "name":"SetInstanceProtection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetInstanceProtectionQuery"}, "output":{ "shape":"SetInstanceProtectionAnswer", "resultWrapper":"SetInstanceProtectionResult" }, "errors":[ {"shape":"LimitExceededFault"}, {"shape":"ResourceContentionFault"} ] }, "SuspendProcesses":{ "name":"SuspendProcesses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ScalingProcessQuery"}, "errors":[ {"shape":"ResourceInUseFault"}, {"shape":"ResourceContentionFault"} ] }, "TerminateInstanceInAutoScalingGroup":{ "name":"TerminateInstanceInAutoScalingGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"TerminateInstanceInAutoScalingGroupType"}, "output":{ "shape":"ActivityType", "resultWrapper":"TerminateInstanceInAutoScalingGroupResult" }, "errors":[ {"shape":"ScalingActivityInProgressFault"}, {"shape":"ResourceContentionFault"} ] }, "UpdateAutoScalingGroup":{ "name":"UpdateAutoScalingGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateAutoScalingGroupType"}, "errors":[ {"shape":"ScalingActivityInProgressFault"}, {"shape":"ResourceContentionFault"} ] } }, "shapes":{ "Activities":{ "type":"list", "member":{"shape":"Activity"} }, "ActivitiesType":{ "type":"structure", "required":["Activities"], "members":{ "Activities":{"shape":"Activities"}, "NextToken":{"shape":"XmlString"} } }, "Activity":{ "type":"structure", "required":[ "ActivityId", "AutoScalingGroupName", "Cause", "StartTime", "StatusCode" ], "members":{ "ActivityId":{"shape":"XmlString"}, "AutoScalingGroupName":{"shape":"XmlStringMaxLen255"}, "Description":{"shape":"XmlString"}, "Cause":{"shape":"XmlStringMaxLen1023"}, "StartTime":{"shape":"TimestampType"}, "EndTime":{"shape":"TimestampType"}, "StatusCode":{"shape":"ScalingActivityStatusCode"}, "StatusMessage":{"shape":"XmlStringMaxLen255"}, "Progress":{"shape":"Progress"}, "Details":{"shape":"XmlString"} } }, "ActivityIds":{ "type":"list", "member":{"shape":"XmlString"} }, "ActivityType":{ "type":"structure", "members":{ "Activity":{"shape":"Activity"} } }, "AdjustmentType":{ "type":"structure", "members":{ "AdjustmentType":{"shape":"XmlStringMaxLen255"} } }, "AdjustmentTypes":{ "type":"list", "member":{"shape":"AdjustmentType"} }, "Alarm":{ "type":"structure", "members":{ "AlarmName":{"shape":"XmlStringMaxLen255"}, "AlarmARN":{"shape":"ResourceName"} } }, "Alarms":{ "type":"list", "member":{"shape":"Alarm"} }, "AlreadyExistsFault":{ "type":"structure", "members":{ "message":{"shape":"XmlStringMaxLen255"} }, "error":{ "code":"AlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "AsciiStringMaxLen255":{ "type":"string", "max":255, "min":1, "pattern":"[A-Za-z0-9\\-_\\/]+" }, "AssociatePublicIpAddress":{"type":"boolean"}, "AttachInstancesQuery":{ "type":"structure", "required":["AutoScalingGroupName"], "members":{ "InstanceIds":{"shape":"InstanceIds"}, "AutoScalingGroupName":{"shape":"ResourceName"} } }, "AttachLoadBalancerTargetGroupsResultType":{ "type":"structure", "members":{ } }, "AttachLoadBalancerTargetGroupsType":{ "type":"structure", "required":[ "AutoScalingGroupName", "TargetGroupARNs" ], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "TargetGroupARNs":{"shape":"TargetGroupARNs"} } }, "AttachLoadBalancersResultType":{ "type":"structure", "members":{ } }, "AttachLoadBalancersType":{ "type":"structure", "required":[ "AutoScalingGroupName", "LoadBalancerNames" ], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "LoadBalancerNames":{"shape":"LoadBalancerNames"} } }, "AutoScalingGroup":{ "type":"structure", "required":[ "AutoScalingGroupName", "MinSize", "MaxSize", "DesiredCapacity", "DefaultCooldown", "AvailabilityZones", "HealthCheckType", "CreatedTime" ], "members":{ "AutoScalingGroupName":{"shape":"XmlStringMaxLen255"}, "AutoScalingGroupARN":{"shape":"ResourceName"}, "LaunchConfigurationName":{"shape":"XmlStringMaxLen255"}, "MinSize":{"shape":"AutoScalingGroupMinSize"}, "MaxSize":{"shape":"AutoScalingGroupMaxSize"}, "DesiredCapacity":{"shape":"AutoScalingGroupDesiredCapacity"}, "DefaultCooldown":{"shape":"Cooldown"}, "AvailabilityZones":{"shape":"AvailabilityZones"}, "LoadBalancerNames":{"shape":"LoadBalancerNames"}, "TargetGroupARNs":{"shape":"TargetGroupARNs"}, "HealthCheckType":{"shape":"XmlStringMaxLen32"}, "HealthCheckGracePeriod":{"shape":"HealthCheckGracePeriod"}, "Instances":{"shape":"Instances"}, "CreatedTime":{"shape":"TimestampType"}, "SuspendedProcesses":{"shape":"SuspendedProcesses"}, "PlacementGroup":{"shape":"XmlStringMaxLen255"}, "VPCZoneIdentifier":{"shape":"XmlStringMaxLen2047"}, "EnabledMetrics":{"shape":"EnabledMetrics"}, "Status":{"shape":"XmlStringMaxLen255"}, "Tags":{"shape":"TagDescriptionList"}, "TerminationPolicies":{"shape":"TerminationPolicies"}, "NewInstancesProtectedFromScaleIn":{"shape":"InstanceProtected"} } }, "AutoScalingGroupDesiredCapacity":{"type":"integer"}, "AutoScalingGroupMaxSize":{"type":"integer"}, "AutoScalingGroupMinSize":{"type":"integer"}, "AutoScalingGroupNames":{ "type":"list", "member":{"shape":"ResourceName"} }, "AutoScalingGroupNamesType":{ "type":"structure", "members":{ "AutoScalingGroupNames":{"shape":"AutoScalingGroupNames"}, "NextToken":{"shape":"XmlString"}, "MaxRecords":{"shape":"MaxRecords"} } }, "AutoScalingGroups":{ "type":"list", "member":{"shape":"AutoScalingGroup"} }, "AutoScalingGroupsType":{ "type":"structure", "required":["AutoScalingGroups"], "members":{ "AutoScalingGroups":{"shape":"AutoScalingGroups"}, "NextToken":{"shape":"XmlString"} } }, "AutoScalingInstanceDetails":{ "type":"structure", "required":[ "InstanceId", "AutoScalingGroupName", "AvailabilityZone", "LifecycleState", "HealthStatus", "LaunchConfigurationName", "ProtectedFromScaleIn" ], "members":{ "InstanceId":{"shape":"XmlStringMaxLen19"}, "AutoScalingGroupName":{"shape":"XmlStringMaxLen255"}, "AvailabilityZone":{"shape":"XmlStringMaxLen255"}, "LifecycleState":{"shape":"XmlStringMaxLen32"}, "HealthStatus":{"shape":"XmlStringMaxLen32"}, "LaunchConfigurationName":{"shape":"XmlStringMaxLen255"}, "ProtectedFromScaleIn":{"shape":"InstanceProtected"} } }, "AutoScalingInstances":{ "type":"list", "member":{"shape":"AutoScalingInstanceDetails"} }, "AutoScalingInstancesType":{ "type":"structure", "members":{ "AutoScalingInstances":{"shape":"AutoScalingInstances"}, "NextToken":{"shape":"XmlString"} } }, "AutoScalingNotificationTypes":{ "type":"list", "member":{"shape":"XmlStringMaxLen255"} }, "AvailabilityZones":{ "type":"list", "member":{"shape":"XmlStringMaxLen255"}, "min":1 }, "BlockDeviceEbsDeleteOnTermination":{"type":"boolean"}, "BlockDeviceEbsEncrypted":{"type":"boolean"}, "BlockDeviceEbsIops":{ "type":"integer", "max":20000, "min":100 }, "BlockDeviceEbsVolumeSize":{ "type":"integer", "max":16384, "min":1 }, "BlockDeviceEbsVolumeType":{ "type":"string", "max":255, "min":1 }, "BlockDeviceMapping":{ "type":"structure", "required":["DeviceName"], "members":{ "VirtualName":{"shape":"XmlStringMaxLen255"}, "DeviceName":{"shape":"XmlStringMaxLen255"}, "Ebs":{"shape":"Ebs"}, "NoDevice":{"shape":"NoDevice"} } }, "BlockDeviceMappings":{ "type":"list", "member":{"shape":"BlockDeviceMapping"} }, "ClassicLinkVPCSecurityGroups":{ "type":"list", "member":{"shape":"XmlStringMaxLen255"} }, "CompleteLifecycleActionAnswer":{ "type":"structure", "members":{ } }, "CompleteLifecycleActionType":{ "type":"structure", "required":[ "LifecycleHookName", "AutoScalingGroupName", "LifecycleActionResult" ], "members":{ "LifecycleHookName":{"shape":"AsciiStringMaxLen255"}, "AutoScalingGroupName":{"shape":"ResourceName"}, "LifecycleActionToken":{"shape":"LifecycleActionToken"}, "LifecycleActionResult":{"shape":"LifecycleActionResult"}, "InstanceId":{"shape":"XmlStringMaxLen19"} } }, "Cooldown":{"type":"integer"}, "CreateAutoScalingGroupType":{ "type":"structure", "required":[ "AutoScalingGroupName", "MinSize", "MaxSize" ], "members":{ "AutoScalingGroupName":{"shape":"XmlStringMaxLen255"}, "LaunchConfigurationName":{"shape":"ResourceName"}, "InstanceId":{"shape":"XmlStringMaxLen19"}, "MinSize":{"shape":"AutoScalingGroupMinSize"}, "MaxSize":{"shape":"AutoScalingGroupMaxSize"}, "DesiredCapacity":{"shape":"AutoScalingGroupDesiredCapacity"}, "DefaultCooldown":{"shape":"Cooldown"}, "AvailabilityZones":{"shape":"AvailabilityZones"}, "LoadBalancerNames":{"shape":"LoadBalancerNames"}, "TargetGroupARNs":{"shape":"TargetGroupARNs"}, "HealthCheckType":{"shape":"XmlStringMaxLen32"}, "HealthCheckGracePeriod":{"shape":"HealthCheckGracePeriod"}, "PlacementGroup":{"shape":"XmlStringMaxLen255"}, "VPCZoneIdentifier":{"shape":"XmlStringMaxLen2047"}, "TerminationPolicies":{"shape":"TerminationPolicies"}, "NewInstancesProtectedFromScaleIn":{"shape":"InstanceProtected"}, "Tags":{"shape":"Tags"} } }, "CreateLaunchConfigurationType":{ "type":"structure", "required":["LaunchConfigurationName"], "members":{ "LaunchConfigurationName":{"shape":"XmlStringMaxLen255"}, "ImageId":{"shape":"XmlStringMaxLen255"}, "KeyName":{"shape":"XmlStringMaxLen255"}, "SecurityGroups":{"shape":"SecurityGroups"}, "ClassicLinkVPCId":{"shape":"XmlStringMaxLen255"}, "ClassicLinkVPCSecurityGroups":{"shape":"ClassicLinkVPCSecurityGroups"}, "UserData":{"shape":"XmlStringUserData"}, "InstanceId":{"shape":"XmlStringMaxLen19"}, "InstanceType":{"shape":"XmlStringMaxLen255"}, "KernelId":{"shape":"XmlStringMaxLen255"}, "RamdiskId":{"shape":"XmlStringMaxLen255"}, "BlockDeviceMappings":{"shape":"BlockDeviceMappings"}, "InstanceMonitoring":{"shape":"InstanceMonitoring"}, "SpotPrice":{"shape":"SpotPrice"}, "IamInstanceProfile":{"shape":"XmlStringMaxLen1600"}, "EbsOptimized":{"shape":"EbsOptimized"}, "AssociatePublicIpAddress":{"shape":"AssociatePublicIpAddress"}, "PlacementTenancy":{"shape":"XmlStringMaxLen64"} } }, "CreateOrUpdateTagsType":{ "type":"structure", "required":["Tags"], "members":{ "Tags":{"shape":"Tags"} } }, "DeleteAutoScalingGroupType":{ "type":"structure", "required":["AutoScalingGroupName"], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "ForceDelete":{"shape":"ForceDelete"} } }, "DeleteLifecycleHookAnswer":{ "type":"structure", "members":{ } }, "DeleteLifecycleHookType":{ "type":"structure", "required":[ "LifecycleHookName", "AutoScalingGroupName" ], "members":{ "LifecycleHookName":{"shape":"AsciiStringMaxLen255"}, "AutoScalingGroupName":{"shape":"ResourceName"} } }, "DeleteNotificationConfigurationType":{ "type":"structure", "required":[ "AutoScalingGroupName", "TopicARN" ], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "TopicARN":{"shape":"ResourceName"} } }, "DeletePolicyType":{ "type":"structure", "required":["PolicyName"], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "PolicyName":{"shape":"ResourceName"} } }, "DeleteScheduledActionType":{ "type":"structure", "required":[ "AutoScalingGroupName", "ScheduledActionName" ], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "ScheduledActionName":{"shape":"ResourceName"} } }, "DeleteTagsType":{ "type":"structure", "required":["Tags"], "members":{ "Tags":{"shape":"Tags"} } }, "DescribeAccountLimitsAnswer":{ "type":"structure", "members":{ "MaxNumberOfAutoScalingGroups":{"shape":"MaxNumberOfAutoScalingGroups"}, "MaxNumberOfLaunchConfigurations":{"shape":"MaxNumberOfLaunchConfigurations"}, "NumberOfAutoScalingGroups":{"shape":"NumberOfAutoScalingGroups"}, "NumberOfLaunchConfigurations":{"shape":"NumberOfLaunchConfigurations"} } }, "DescribeAdjustmentTypesAnswer":{ "type":"structure", "members":{ "AdjustmentTypes":{"shape":"AdjustmentTypes"} } }, "DescribeAutoScalingInstancesType":{ "type":"structure", "members":{ "InstanceIds":{"shape":"InstanceIds"}, "MaxRecords":{"shape":"MaxRecords"}, "NextToken":{"shape":"XmlString"} } }, "DescribeAutoScalingNotificationTypesAnswer":{ "type":"structure", "members":{ "AutoScalingNotificationTypes":{"shape":"AutoScalingNotificationTypes"} } }, "DescribeLifecycleHookTypesAnswer":{ "type":"structure", "members":{ "LifecycleHookTypes":{"shape":"AutoScalingNotificationTypes"} } }, "DescribeLifecycleHooksAnswer":{ "type":"structure", "members":{ "LifecycleHooks":{"shape":"LifecycleHooks"} } }, "DescribeLifecycleHooksType":{ "type":"structure", "required":["AutoScalingGroupName"], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "LifecycleHookNames":{"shape":"LifecycleHookNames"} } }, "DescribeLoadBalancerTargetGroupsRequest":{ "type":"structure", "required":["AutoScalingGroupName"], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "NextToken":{"shape":"XmlString"}, "MaxRecords":{"shape":"MaxRecords"} } }, "DescribeLoadBalancerTargetGroupsResponse":{ "type":"structure", "members":{ "LoadBalancerTargetGroups":{"shape":"LoadBalancerTargetGroupStates"}, "NextToken":{"shape":"XmlString"} } }, "DescribeLoadBalancersRequest":{ "type":"structure", "required":["AutoScalingGroupName"], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "NextToken":{"shape":"XmlString"}, "MaxRecords":{"shape":"MaxRecords"} } }, "DescribeLoadBalancersResponse":{ "type":"structure", "members":{ "LoadBalancers":{"shape":"LoadBalancerStates"}, "NextToken":{"shape":"XmlString"} } }, "DescribeMetricCollectionTypesAnswer":{ "type":"structure", "members":{ "Metrics":{"shape":"MetricCollectionTypes"}, "Granularities":{"shape":"MetricGranularityTypes"} } }, "DescribeNotificationConfigurationsAnswer":{ "type":"structure", "required":["NotificationConfigurations"], "members":{ "NotificationConfigurations":{"shape":"NotificationConfigurations"}, "NextToken":{"shape":"XmlString"} } }, "DescribeNotificationConfigurationsType":{ "type":"structure", "members":{ "AutoScalingGroupNames":{"shape":"AutoScalingGroupNames"}, "NextToken":{"shape":"XmlString"}, "MaxRecords":{"shape":"MaxRecords"} } }, "DescribePoliciesType":{ "type":"structure", "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "PolicyNames":{"shape":"PolicyNames"}, "PolicyTypes":{"shape":"PolicyTypes"}, "NextToken":{"shape":"XmlString"}, "MaxRecords":{"shape":"MaxRecords"} } }, "DescribeScalingActivitiesType":{ "type":"structure", "members":{ "ActivityIds":{"shape":"ActivityIds"}, "AutoScalingGroupName":{"shape":"ResourceName"}, "MaxRecords":{"shape":"MaxRecords"}, "NextToken":{"shape":"XmlString"} } }, "DescribeScheduledActionsType":{ "type":"structure", "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "ScheduledActionNames":{"shape":"ScheduledActionNames"}, "StartTime":{"shape":"TimestampType"}, "EndTime":{"shape":"TimestampType"}, "NextToken":{"shape":"XmlString"}, "MaxRecords":{"shape":"MaxRecords"} } }, "DescribeTagsType":{ "type":"structure", "members":{ "Filters":{"shape":"Filters"}, "NextToken":{"shape":"XmlString"}, "MaxRecords":{"shape":"MaxRecords"} } }, "DescribeTerminationPolicyTypesAnswer":{ "type":"structure", "members":{ "TerminationPolicyTypes":{"shape":"TerminationPolicies"} } }, "DetachInstancesAnswer":{ "type":"structure", "members":{ "Activities":{"shape":"Activities"} } }, "DetachInstancesQuery":{ "type":"structure", "required":[ "AutoScalingGroupName", "ShouldDecrementDesiredCapacity" ], "members":{ "InstanceIds":{"shape":"InstanceIds"}, "AutoScalingGroupName":{"shape":"ResourceName"}, "ShouldDecrementDesiredCapacity":{"shape":"ShouldDecrementDesiredCapacity"} } }, "DetachLoadBalancerTargetGroupsResultType":{ "type":"structure", "members":{ } }, "DetachLoadBalancerTargetGroupsType":{ "type":"structure", "required":[ "AutoScalingGroupName", "TargetGroupARNs" ], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "TargetGroupARNs":{"shape":"TargetGroupARNs"} } }, "DetachLoadBalancersResultType":{ "type":"structure", "members":{ } }, "DetachLoadBalancersType":{ "type":"structure", "required":[ "AutoScalingGroupName", "LoadBalancerNames" ], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "LoadBalancerNames":{"shape":"LoadBalancerNames"} } }, "DisableMetricsCollectionQuery":{ "type":"structure", "required":["AutoScalingGroupName"], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "Metrics":{"shape":"Metrics"} } }, "Ebs":{ "type":"structure", "members":{ "SnapshotId":{"shape":"XmlStringMaxLen255"}, "VolumeSize":{"shape":"BlockDeviceEbsVolumeSize"}, "VolumeType":{"shape":"BlockDeviceEbsVolumeType"}, "DeleteOnTermination":{"shape":"BlockDeviceEbsDeleteOnTermination"}, "Iops":{"shape":"BlockDeviceEbsIops"}, "Encrypted":{"shape":"BlockDeviceEbsEncrypted"} } }, "EbsOptimized":{"type":"boolean"}, "EnableMetricsCollectionQuery":{ "type":"structure", "required":[ "AutoScalingGroupName", "Granularity" ], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "Metrics":{"shape":"Metrics"}, "Granularity":{"shape":"XmlStringMaxLen255"} } }, "EnabledMetric":{ "type":"structure", "members":{ "Metric":{"shape":"XmlStringMaxLen255"}, "Granularity":{"shape":"XmlStringMaxLen255"} } }, "EnabledMetrics":{ "type":"list", "member":{"shape":"EnabledMetric"} }, "EnterStandbyAnswer":{ "type":"structure", "members":{ "Activities":{"shape":"Activities"} } }, "EnterStandbyQuery":{ "type":"structure", "required":[ "AutoScalingGroupName", "ShouldDecrementDesiredCapacity" ], "members":{ "InstanceIds":{"shape":"InstanceIds"}, "AutoScalingGroupName":{"shape":"ResourceName"}, "ShouldDecrementDesiredCapacity":{"shape":"ShouldDecrementDesiredCapacity"} } }, "EstimatedInstanceWarmup":{"type":"integer"}, "ExecutePolicyType":{ "type":"structure", "required":["PolicyName"], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "PolicyName":{"shape":"ResourceName"}, "HonorCooldown":{"shape":"HonorCooldown"}, "MetricValue":{"shape":"MetricScale"}, "BreachThreshold":{"shape":"MetricScale"} } }, "ExitStandbyAnswer":{ "type":"structure", "members":{ "Activities":{"shape":"Activities"} } }, "ExitStandbyQuery":{ "type":"structure", "required":["AutoScalingGroupName"], "members":{ "InstanceIds":{"shape":"InstanceIds"}, "AutoScalingGroupName":{"shape":"ResourceName"} } }, "Filter":{ "type":"structure", "members":{ "Name":{"shape":"XmlString"}, "Values":{"shape":"Values"} } }, "Filters":{ "type":"list", "member":{"shape":"Filter"} }, "ForceDelete":{"type":"boolean"}, "GlobalTimeout":{"type":"integer"}, "HealthCheckGracePeriod":{"type":"integer"}, "HeartbeatTimeout":{"type":"integer"}, "HonorCooldown":{"type":"boolean"}, "Instance":{ "type":"structure", "required":[ "InstanceId", "AvailabilityZone", "LifecycleState", "HealthStatus", "LaunchConfigurationName", "ProtectedFromScaleIn" ], "members":{ "InstanceId":{"shape":"XmlStringMaxLen19"}, "AvailabilityZone":{"shape":"XmlStringMaxLen255"}, "LifecycleState":{"shape":"LifecycleState"}, "HealthStatus":{"shape":"XmlStringMaxLen32"}, "LaunchConfigurationName":{"shape":"XmlStringMaxLen255"}, "ProtectedFromScaleIn":{"shape":"InstanceProtected"} } }, "InstanceIds":{ "type":"list", "member":{"shape":"XmlStringMaxLen19"} }, "InstanceMonitoring":{ "type":"structure", "members":{ "Enabled":{"shape":"MonitoringEnabled"} } }, "InstanceProtected":{"type":"boolean"}, "Instances":{ "type":"list", "member":{"shape":"Instance"} }, "InvalidNextToken":{ "type":"structure", "members":{ "message":{"shape":"XmlStringMaxLen255"} }, "error":{ "code":"InvalidNextToken", "httpStatusCode":400, "senderFault":true }, "exception":true }, "LaunchConfiguration":{ "type":"structure", "required":[ "LaunchConfigurationName", "ImageId", "InstanceType", "CreatedTime" ], "members":{ "LaunchConfigurationName":{"shape":"XmlStringMaxLen255"}, "LaunchConfigurationARN":{"shape":"ResourceName"}, "ImageId":{"shape":"XmlStringMaxLen255"}, "KeyName":{"shape":"XmlStringMaxLen255"}, "SecurityGroups":{"shape":"SecurityGroups"}, "ClassicLinkVPCId":{"shape":"XmlStringMaxLen255"}, "ClassicLinkVPCSecurityGroups":{"shape":"ClassicLinkVPCSecurityGroups"}, "UserData":{"shape":"XmlStringUserData"}, "InstanceType":{"shape":"XmlStringMaxLen255"}, "KernelId":{"shape":"XmlStringMaxLen255"}, "RamdiskId":{"shape":"XmlStringMaxLen255"}, "BlockDeviceMappings":{"shape":"BlockDeviceMappings"}, "InstanceMonitoring":{"shape":"InstanceMonitoring"}, "SpotPrice":{"shape":"SpotPrice"}, "IamInstanceProfile":{"shape":"XmlStringMaxLen1600"}, "CreatedTime":{"shape":"TimestampType"}, "EbsOptimized":{"shape":"EbsOptimized"}, "AssociatePublicIpAddress":{"shape":"AssociatePublicIpAddress"}, "PlacementTenancy":{"shape":"XmlStringMaxLen64"} } }, "LaunchConfigurationNameType":{ "type":"structure", "required":["LaunchConfigurationName"], "members":{ "LaunchConfigurationName":{"shape":"ResourceName"} } }, "LaunchConfigurationNames":{ "type":"list", "member":{"shape":"ResourceName"} }, "LaunchConfigurationNamesType":{ "type":"structure", "members":{ "LaunchConfigurationNames":{"shape":"LaunchConfigurationNames"}, "NextToken":{"shape":"XmlString"}, "MaxRecords":{"shape":"MaxRecords"} } }, "LaunchConfigurations":{ "type":"list", "member":{"shape":"LaunchConfiguration"} }, "LaunchConfigurationsType":{ "type":"structure", "required":["LaunchConfigurations"], "members":{ "LaunchConfigurations":{"shape":"LaunchConfigurations"}, "NextToken":{"shape":"XmlString"} } }, "LifecycleActionResult":{"type":"string"}, "LifecycleActionToken":{ "type":"string", "max":36, "min":36 }, "LifecycleHook":{ "type":"structure", "members":{ "LifecycleHookName":{"shape":"AsciiStringMaxLen255"}, "AutoScalingGroupName":{"shape":"ResourceName"}, "LifecycleTransition":{"shape":"LifecycleTransition"}, "NotificationTargetARN":{"shape":"ResourceName"}, "RoleARN":{"shape":"ResourceName"}, "NotificationMetadata":{"shape":"XmlStringMaxLen1023"}, "HeartbeatTimeout":{"shape":"HeartbeatTimeout"}, "GlobalTimeout":{"shape":"GlobalTimeout"}, "DefaultResult":{"shape":"LifecycleActionResult"} } }, "LifecycleHookNames":{ "type":"list", "member":{"shape":"AsciiStringMaxLen255"} }, "LifecycleHooks":{ "type":"list", "member":{"shape":"LifecycleHook"} }, "LifecycleState":{ "type":"string", "enum":[ "Pending", "Pending:Wait", "Pending:Proceed", "Quarantined", "InService", "Terminating", "Terminating:Wait", "Terminating:Proceed", "Terminated", "Detaching", "Detached", "EnteringStandby", "Standby" ] }, "LifecycleTransition":{"type":"string"}, "LimitExceededFault":{ "type":"structure", "members":{ "message":{"shape":"XmlStringMaxLen255"} }, "error":{ "code":"LimitExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "LoadBalancerNames":{ "type":"list", "member":{"shape":"XmlStringMaxLen255"} }, "LoadBalancerState":{ "type":"structure", "members":{ "LoadBalancerName":{"shape":"XmlStringMaxLen255"}, "State":{"shape":"XmlStringMaxLen255"} } }, "LoadBalancerStates":{ "type":"list", "member":{"shape":"LoadBalancerState"} }, "LoadBalancerTargetGroupState":{ "type":"structure", "members":{ "LoadBalancerTargetGroupARN":{"shape":"XmlStringMaxLen511"}, "State":{"shape":"XmlStringMaxLen255"} } }, "LoadBalancerTargetGroupStates":{ "type":"list", "member":{"shape":"LoadBalancerTargetGroupState"} }, "MaxNumberOfAutoScalingGroups":{"type":"integer"}, "MaxNumberOfLaunchConfigurations":{"type":"integer"}, "MaxRecords":{"type":"integer"}, "MetricCollectionType":{ "type":"structure", "members":{ "Metric":{"shape":"XmlStringMaxLen255"} } }, "MetricCollectionTypes":{ "type":"list", "member":{"shape":"MetricCollectionType"} }, "MetricGranularityType":{ "type":"structure", "members":{ "Granularity":{"shape":"XmlStringMaxLen255"} } }, "MetricGranularityTypes":{ "type":"list", "member":{"shape":"MetricGranularityType"} }, "MetricScale":{"type":"double"}, "Metrics":{ "type":"list", "member":{"shape":"XmlStringMaxLen255"} }, "MinAdjustmentMagnitude":{"type":"integer"}, "MinAdjustmentStep":{ "type":"integer", "deprecated":true }, "MonitoringEnabled":{"type":"boolean"}, "NoDevice":{"type":"boolean"}, "NotificationConfiguration":{ "type":"structure", "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "TopicARN":{"shape":"ResourceName"}, "NotificationType":{"shape":"XmlStringMaxLen255"} } }, "NotificationConfigurations":{ "type":"list", "member":{"shape":"NotificationConfiguration"} }, "NotificationTargetResourceName":{ "type":"string", "max":1600, "min":0, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "NumberOfAutoScalingGroups":{"type":"integer"}, "NumberOfLaunchConfigurations":{"type":"integer"}, "PoliciesType":{ "type":"structure", "members":{ "ScalingPolicies":{"shape":"ScalingPolicies"}, "NextToken":{"shape":"XmlString"} } }, "PolicyARNType":{ "type":"structure", "members":{ "PolicyARN":{"shape":"ResourceName"} } }, "PolicyIncrement":{"type":"integer"}, "PolicyNames":{ "type":"list", "member":{"shape":"ResourceName"} }, "PolicyTypes":{ "type":"list", "member":{"shape":"XmlStringMaxLen64"} }, "ProcessNames":{ "type":"list", "member":{"shape":"XmlStringMaxLen255"} }, "ProcessType":{ "type":"structure", "required":["ProcessName"], "members":{ "ProcessName":{"shape":"XmlStringMaxLen255"} } }, "Processes":{ "type":"list", "member":{"shape":"ProcessType"} }, "ProcessesType":{ "type":"structure", "members":{ "Processes":{"shape":"Processes"} } }, "Progress":{"type":"integer"}, "PropagateAtLaunch":{"type":"boolean"}, "ProtectedFromScaleIn":{"type":"boolean"}, "PutLifecycleHookAnswer":{ "type":"structure", "members":{ } }, "PutLifecycleHookType":{ "type":"structure", "required":[ "LifecycleHookName", "AutoScalingGroupName" ], "members":{ "LifecycleHookName":{"shape":"AsciiStringMaxLen255"}, "AutoScalingGroupName":{"shape":"ResourceName"}, "LifecycleTransition":{"shape":"LifecycleTransition"}, "RoleARN":{"shape":"ResourceName"}, "NotificationTargetARN":{"shape":"NotificationTargetResourceName"}, "NotificationMetadata":{"shape":"XmlStringMaxLen1023"}, "HeartbeatTimeout":{"shape":"HeartbeatTimeout"}, "DefaultResult":{"shape":"LifecycleActionResult"} } }, "PutNotificationConfigurationType":{ "type":"structure", "required":[ "AutoScalingGroupName", "TopicARN", "NotificationTypes" ], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "TopicARN":{"shape":"ResourceName"}, "NotificationTypes":{"shape":"AutoScalingNotificationTypes"} } }, "PutScalingPolicyType":{ "type":"structure", "required":[ "AutoScalingGroupName", "PolicyName", "AdjustmentType" ], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "PolicyName":{"shape":"XmlStringMaxLen255"}, "PolicyType":{"shape":"XmlStringMaxLen64"}, "AdjustmentType":{"shape":"XmlStringMaxLen255"}, "MinAdjustmentStep":{"shape":"MinAdjustmentStep"}, "MinAdjustmentMagnitude":{"shape":"MinAdjustmentMagnitude"}, "ScalingAdjustment":{"shape":"PolicyIncrement"}, "Cooldown":{"shape":"Cooldown"}, "MetricAggregationType":{"shape":"XmlStringMaxLen32"}, "StepAdjustments":{"shape":"StepAdjustments"}, "EstimatedInstanceWarmup":{"shape":"EstimatedInstanceWarmup"} } }, "PutScheduledUpdateGroupActionType":{ "type":"structure", "required":[ "AutoScalingGroupName", "ScheduledActionName" ], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "ScheduledActionName":{"shape":"XmlStringMaxLen255"}, "Time":{"shape":"TimestampType"}, "StartTime":{"shape":"TimestampType"}, "EndTime":{"shape":"TimestampType"}, "Recurrence":{"shape":"XmlStringMaxLen255"}, "MinSize":{"shape":"AutoScalingGroupMinSize"}, "MaxSize":{"shape":"AutoScalingGroupMaxSize"}, "DesiredCapacity":{"shape":"AutoScalingGroupDesiredCapacity"} } }, "RecordLifecycleActionHeartbeatAnswer":{ "type":"structure", "members":{ } }, "RecordLifecycleActionHeartbeatType":{ "type":"structure", "required":[ "LifecycleHookName", "AutoScalingGroupName" ], "members":{ "LifecycleHookName":{"shape":"AsciiStringMaxLen255"}, "AutoScalingGroupName":{"shape":"ResourceName"}, "LifecycleActionToken":{"shape":"LifecycleActionToken"}, "InstanceId":{"shape":"XmlStringMaxLen19"} } }, "ResourceContentionFault":{ "type":"structure", "members":{ "message":{"shape":"XmlStringMaxLen255"} }, "error":{ "code":"ResourceContention", "httpStatusCode":500, "senderFault":true }, "exception":true }, "ResourceInUseFault":{ "type":"structure", "members":{ "message":{"shape":"XmlStringMaxLen255"} }, "error":{ "code":"ResourceInUse", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ResourceName":{ "type":"string", "max":1600, "min":1, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "ScalingActivityInProgressFault":{ "type":"structure", "members":{ "message":{"shape":"XmlStringMaxLen255"} }, "error":{ "code":"ScalingActivityInProgress", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ScalingActivityStatusCode":{ "type":"string", "enum":[ "PendingSpotBidPlacement", "WaitingForSpotInstanceRequestId", "WaitingForSpotInstanceId", "WaitingForInstanceId", "PreInService", "InProgress", "WaitingForELBConnectionDraining", "MidLifecycleAction", "WaitingForInstanceWarmup", "Successful", "Failed", "Cancelled" ] }, "ScalingPolicies":{ "type":"list", "member":{"shape":"ScalingPolicy"} }, "ScalingPolicy":{ "type":"structure", "members":{ "AutoScalingGroupName":{"shape":"XmlStringMaxLen255"}, "PolicyName":{"shape":"XmlStringMaxLen255"}, "PolicyARN":{"shape":"ResourceName"}, "PolicyType":{"shape":"XmlStringMaxLen64"}, "AdjustmentType":{"shape":"XmlStringMaxLen255"}, "MinAdjustmentStep":{"shape":"MinAdjustmentStep"}, "MinAdjustmentMagnitude":{"shape":"MinAdjustmentMagnitude"}, "ScalingAdjustment":{"shape":"PolicyIncrement"}, "Cooldown":{"shape":"Cooldown"}, "StepAdjustments":{"shape":"StepAdjustments"}, "MetricAggregationType":{"shape":"XmlStringMaxLen32"}, "EstimatedInstanceWarmup":{"shape":"EstimatedInstanceWarmup"}, "Alarms":{"shape":"Alarms"} } }, "ScalingProcessQuery":{ "type":"structure", "required":["AutoScalingGroupName"], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "ScalingProcesses":{"shape":"ProcessNames"} } }, "ScheduledActionNames":{ "type":"list", "member":{"shape":"ResourceName"} }, "ScheduledActionsType":{ "type":"structure", "members":{ "ScheduledUpdateGroupActions":{"shape":"ScheduledUpdateGroupActions"}, "NextToken":{"shape":"XmlString"} } }, "ScheduledUpdateGroupAction":{ "type":"structure", "members":{ "AutoScalingGroupName":{"shape":"XmlStringMaxLen255"}, "ScheduledActionName":{"shape":"XmlStringMaxLen255"}, "ScheduledActionARN":{"shape":"ResourceName"}, "Time":{"shape":"TimestampType"}, "StartTime":{"shape":"TimestampType"}, "EndTime":{"shape":"TimestampType"}, "Recurrence":{"shape":"XmlStringMaxLen255"}, "MinSize":{"shape":"AutoScalingGroupMinSize"}, "MaxSize":{"shape":"AutoScalingGroupMaxSize"}, "DesiredCapacity":{"shape":"AutoScalingGroupDesiredCapacity"} } }, "ScheduledUpdateGroupActions":{ "type":"list", "member":{"shape":"ScheduledUpdateGroupAction"} }, "SecurityGroups":{ "type":"list", "member":{"shape":"XmlString"} }, "SetDesiredCapacityType":{ "type":"structure", "required":[ "AutoScalingGroupName", "DesiredCapacity" ], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "DesiredCapacity":{"shape":"AutoScalingGroupDesiredCapacity"}, "HonorCooldown":{"shape":"HonorCooldown"} } }, "SetInstanceHealthQuery":{ "type":"structure", "required":[ "InstanceId", "HealthStatus" ], "members":{ "InstanceId":{"shape":"XmlStringMaxLen19"}, "HealthStatus":{"shape":"XmlStringMaxLen32"}, "ShouldRespectGracePeriod":{"shape":"ShouldRespectGracePeriod"} } }, "SetInstanceProtectionAnswer":{ "type":"structure", "members":{ } }, "SetInstanceProtectionQuery":{ "type":"structure", "required":[ "InstanceIds", "AutoScalingGroupName", "ProtectedFromScaleIn" ], "members":{ "InstanceIds":{"shape":"InstanceIds"}, "AutoScalingGroupName":{"shape":"ResourceName"}, "ProtectedFromScaleIn":{"shape":"ProtectedFromScaleIn"} } }, "ShouldDecrementDesiredCapacity":{"type":"boolean"}, "ShouldRespectGracePeriod":{"type":"boolean"}, "SpotPrice":{ "type":"string", "max":255, "min":1 }, "StepAdjustment":{ "type":"structure", "required":["ScalingAdjustment"], "members":{ "MetricIntervalLowerBound":{"shape":"MetricScale"}, "MetricIntervalUpperBound":{"shape":"MetricScale"}, "ScalingAdjustment":{"shape":"PolicyIncrement"} } }, "StepAdjustments":{ "type":"list", "member":{"shape":"StepAdjustment"} }, "SuspendedProcess":{ "type":"structure", "members":{ "ProcessName":{"shape":"XmlStringMaxLen255"}, "SuspensionReason":{"shape":"XmlStringMaxLen255"} } }, "SuspendedProcesses":{ "type":"list", "member":{"shape":"SuspendedProcess"} }, "Tag":{ "type":"structure", "required":["Key"], "members":{ "ResourceId":{"shape":"XmlString"}, "ResourceType":{"shape":"XmlString"}, "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"}, "PropagateAtLaunch":{"shape":"PropagateAtLaunch"} } }, "TagDescription":{ "type":"structure", "members":{ "ResourceId":{"shape":"XmlString"}, "ResourceType":{"shape":"XmlString"}, "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"}, "PropagateAtLaunch":{"shape":"PropagateAtLaunch"} } }, "TagDescriptionList":{ "type":"list", "member":{"shape":"TagDescription"} }, "TagKey":{ "type":"string", "max":128, "min":1, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "TagValue":{ "type":"string", "max":256, "min":0, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "Tags":{ "type":"list", "member":{"shape":"Tag"} }, "TagsType":{ "type":"structure", "members":{ "Tags":{"shape":"TagDescriptionList"}, "NextToken":{"shape":"XmlString"} } }, "TargetGroupARNs":{ "type":"list", "member":{"shape":"XmlStringMaxLen511"} }, "TerminateInstanceInAutoScalingGroupType":{ "type":"structure", "required":[ "InstanceId", "ShouldDecrementDesiredCapacity" ], "members":{ "InstanceId":{"shape":"XmlStringMaxLen19"}, "ShouldDecrementDesiredCapacity":{"shape":"ShouldDecrementDesiredCapacity"} } }, "TerminationPolicies":{ "type":"list", "member":{"shape":"XmlStringMaxLen1600"} }, "TimestampType":{"type":"timestamp"}, "UpdateAutoScalingGroupType":{ "type":"structure", "required":["AutoScalingGroupName"], "members":{ "AutoScalingGroupName":{"shape":"ResourceName"}, "LaunchConfigurationName":{"shape":"ResourceName"}, "MinSize":{"shape":"AutoScalingGroupMinSize"}, "MaxSize":{"shape":"AutoScalingGroupMaxSize"}, "DesiredCapacity":{"shape":"AutoScalingGroupDesiredCapacity"}, "DefaultCooldown":{"shape":"Cooldown"}, "AvailabilityZones":{"shape":"AvailabilityZones"}, "HealthCheckType":{"shape":"XmlStringMaxLen32"}, "HealthCheckGracePeriod":{"shape":"HealthCheckGracePeriod"}, "PlacementGroup":{"shape":"XmlStringMaxLen255"}, "VPCZoneIdentifier":{"shape":"XmlStringMaxLen2047"}, "TerminationPolicies":{"shape":"TerminationPolicies"}, "NewInstancesProtectedFromScaleIn":{"shape":"InstanceProtected"} } }, "Values":{ "type":"list", "member":{"shape":"XmlString"} }, "XmlString":{ "type":"string", "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "XmlStringMaxLen1023":{ "type":"string", "max":1023, "min":1, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "XmlStringMaxLen1600":{ "type":"string", "max":1600, "min":1, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "XmlStringMaxLen19":{ "type":"string", "max":19, "min":1, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "XmlStringMaxLen2047":{ "type":"string", "max":2047, "min":1, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "XmlStringMaxLen255":{ "type":"string", "max":255, "min":1, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "XmlStringMaxLen32":{ "type":"string", "max":32, "min":1, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "XmlStringMaxLen511":{ "type":"string", "max":511, "min":1, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "XmlStringMaxLen64":{ "type":"string", "max":64, "min":1, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "XmlStringUserData":{ "type":"string", "max":21847, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" } } } aws-sdk-go-1.4.22/models/apis/autoscaling/2011-01-01/docs-2.json000066400000000000000000003463651300374646400233350ustar00rootroot00000000000000{ "version": "2.0", "service": "Auto Scaling

        Auto Scaling is designed to automatically launch or terminate EC2 instances based on user-defined policies, schedules, and health checks. Use this service in conjunction with the Amazon CloudWatch and Elastic Load Balancing services.

        ", "operations": { "AttachInstances": "

        Attaches one or more EC2 instances to the specified Auto Scaling group.

        When you attach instances, Auto Scaling increases the desired capacity of the group by the number of instances being attached. If the number of instances being attached plus the desired capacity of the group exceeds the maximum size of the group, the operation fails.

        If there is a Classic load balancer attached to your Auto Scaling group, the instances are also registered with the load balancer. If there are target groups attached to your Auto Scaling group, the instances are also registered with the target groups.

        For more information, see Attach EC2 Instances to Your Auto Scaling Group in the Auto Scaling User Guide.

        ", "AttachLoadBalancerTargetGroups": "

        Attaches one or more target groups to the specified Auto Scaling group.

        To describe the target groups for an Auto Scaling group, use DescribeLoadBalancerTargetGroups. To detach the target group from the Auto Scaling group, use DetachLoadBalancerTargetGroups.

        For more information, see Attach a Load Balancer to Your Auto Scaling Group in the Auto Scaling User Guide.

        ", "AttachLoadBalancers": "

        Attaches one or more Classic load balancers to the specified Auto Scaling group.

        To attach an Application load balancer instead, see AttachLoadBalancerTargetGroups.

        To describe the load balancers for an Auto Scaling group, use DescribeLoadBalancers. To detach the load balancer from the Auto Scaling group, use DetachLoadBalancers.

        For more information, see Attach a Load Balancer to Your Auto Scaling Group in the Auto Scaling User Guide.

        ", "CompleteLifecycleAction": "

        Completes the lifecycle action for the specified token or instance with the specified result.

        This step is a part of the procedure for adding a lifecycle hook to an Auto Scaling group:

        1. (Optional) Create a Lambda function and a rule that allows CloudWatch Events to invoke your Lambda function when Auto Scaling launches or terminates instances.

        2. (Optional) Create a notification target and an IAM role. The target can be either an Amazon SQS queue or an Amazon SNS topic. The role allows Auto Scaling to publish lifecycle notifications to the target.

        3. Create the lifecycle hook. Specify whether the hook is used when the instances launch or terminate.

        4. If you need more time, record the lifecycle action heartbeat to keep the instance in a pending state.

        5. If you finish before the timeout period ends, complete the lifecycle action.

        For more information, see Auto Scaling Lifecycle in the Auto Scaling User Guide.

        ", "CreateAutoScalingGroup": "

        Creates an Auto Scaling group with the specified name and attributes.

        If you exceed your maximum limit of Auto Scaling groups, which by default is 20 per region, the call fails. For information about viewing and updating this limit, see DescribeAccountLimits.

        For more information, see Auto Scaling Groups in the Auto Scaling User Guide.

        ", "CreateLaunchConfiguration": "

        Creates a launch configuration.

        If you exceed your maximum limit of launch configurations, which by default is 100 per region, the call fails. For information about viewing and updating this limit, see DescribeAccountLimits.

        For more information, see Launch Configurations in the Auto Scaling User Guide.

        ", "CreateOrUpdateTags": "

        Creates or updates tags for the specified Auto Scaling group.

        When you specify a tag with a key that already exists, the operation overwrites the previous tag definition, and you do not get an error message.

        For more information, see Tagging Auto Scaling Groups and Instances in the Auto Scaling User Guide.

        ", "DeleteAutoScalingGroup": "

        Deletes the specified Auto Scaling group.

        If the group has instances or scaling activities in progress, you must specify the option to force the deletion in order for it to succeed.

        If the group has policies, deleting the group deletes the policies, the underlying alarm actions, and any alarm that no longer has an associated action.

        To remove instances from the Auto Scaling group before deleting it, call DetachInstances with the list of instances and the option to decrement the desired capacity so that Auto Scaling does not launch replacement instances.

        To terminate all instances before deleting the Auto Scaling group, call UpdateAutoScalingGroup and set the minimum size and desired capacity of the Auto Scaling group to zero.

        ", "DeleteLaunchConfiguration": "

        Deletes the specified launch configuration.

        The launch configuration must not be attached to an Auto Scaling group. When this call completes, the launch configuration is no longer available for use.

        ", "DeleteLifecycleHook": "

        Deletes the specified lifecycle hook.

        If there are any outstanding lifecycle actions, they are completed first (ABANDON for launching instances, CONTINUE for terminating instances).

        ", "DeleteNotificationConfiguration": "

        Deletes the specified notification.

        ", "DeletePolicy": "

        Deletes the specified Auto Scaling policy.

        Deleting a policy deletes the underlying alarm action, but does not delete the alarm, even if it no longer has an associated action.

        ", "DeleteScheduledAction": "

        Deletes the specified scheduled action.

        ", "DeleteTags": "

        Deletes the specified tags.

        ", "DescribeAccountLimits": "

        Describes the current Auto Scaling resource limits for your AWS account.

        For information about requesting an increase in these limits, see AWS Service Limits in the Amazon Web Services General Reference.

        ", "DescribeAdjustmentTypes": "

        Describes the policy adjustment types for use with PutScalingPolicy.

        ", "DescribeAutoScalingGroups": "

        Describes one or more Auto Scaling groups.

        ", "DescribeAutoScalingInstances": "

        Describes one or more Auto Scaling instances.

        ", "DescribeAutoScalingNotificationTypes": "

        Describes the notification types that are supported by Auto Scaling.

        ", "DescribeLaunchConfigurations": "

        Describes one or more launch configurations.

        ", "DescribeLifecycleHookTypes": "

        Describes the available types of lifecycle hooks.

        ", "DescribeLifecycleHooks": "

        Describes the lifecycle hooks for the specified Auto Scaling group.

        ", "DescribeLoadBalancerTargetGroups": "

        Describes the target groups for the specified Auto Scaling group.

        ", "DescribeLoadBalancers": "

        Describes the load balancers for the specified Auto Scaling group.

        Note that this operation describes only Classic load balancers. If you have Application load balancers, use DescribeLoadBalancerTargetGroups instead.

        ", "DescribeMetricCollectionTypes": "

        Describes the available CloudWatch metrics for Auto Scaling.

        Note that the GroupStandbyInstances metric is not returned by default. You must explicitly request this metric when calling EnableMetricsCollection.

        ", "DescribeNotificationConfigurations": "

        Describes the notification actions associated with the specified Auto Scaling group.

        ", "DescribePolicies": "

        Describes the policies for the specified Auto Scaling group.

        ", "DescribeScalingActivities": "

        Describes one or more scaling activities for the specified Auto Scaling group.

        ", "DescribeScalingProcessTypes": "

        Describes the scaling process types for use with ResumeProcesses and SuspendProcesses.

        ", "DescribeScheduledActions": "

        Describes the actions scheduled for your Auto Scaling group that haven't run. To describe the actions that have already run, use DescribeScalingActivities.

        ", "DescribeTags": "

        Describes the specified tags.

        You can use filters to limit the results. For example, you can query for the tags for a specific Auto Scaling group. You can specify multiple values for a filter. A tag must match at least one of the specified values for it to be included in the results.

        You can also specify multiple filters. The result includes information for a particular tag only if it matches all the filters. If there's no match, no special message is returned.

        ", "DescribeTerminationPolicyTypes": "

        Describes the termination policies supported by Auto Scaling.

        ", "DetachInstances": "

        Removes one or more instances from the specified Auto Scaling group.

        After the instances are detached, you can manage them independently from the rest of the Auto Scaling group.

        If you do not specify the option to decrement the desired capacity, Auto Scaling launches instances to replace the ones that are detached.

        If there is a Classic load balancer attached to the Auto Scaling group, the instances are deregistered from the load balancer. If there are target groups attached to the Auto Scaling group, the instances are deregistered from the target groups.

        For more information, see Detach EC2 Instances from Your Auto Scaling Group in the Auto Scaling User Guide.

        ", "DetachLoadBalancerTargetGroups": "

        Detaches one or more target groups from the specified Auto Scaling group.

        ", "DetachLoadBalancers": "

        Detaches one or more Classic load balancers from the specified Auto Scaling group.

        Note that this operation detaches only Classic load balancers. If you have Application load balancers, use DetachLoadBalancerTargetGroups instead.

        When you detach a load balancer, it enters the Removing state while deregistering the instances in the group. When all instances are deregistered, then you can no longer describe the load balancer using DescribeLoadBalancers. Note that the instances remain running.

        ", "DisableMetricsCollection": "

        Disables group metrics for the specified Auto Scaling group.

        ", "EnableMetricsCollection": "

        Enables group metrics for the specified Auto Scaling group. For more information, see Monitoring Your Auto Scaling Groups and Instances in the Auto Scaling User Guide.

        ", "EnterStandby": "

        Moves the specified instances into Standby mode.

        For more information, see Auto Scaling Lifecycle in the Auto Scaling User Guide.

        ", "ExecutePolicy": "

        Executes the specified policy.

        ", "ExitStandby": "

        Moves the specified instances out of Standby mode.

        For more information, see Auto Scaling Lifecycle in the Auto Scaling User Guide.

        ", "PutLifecycleHook": "

        Creates or updates a lifecycle hook for the specified Auto Scaling Group.

        A lifecycle hook tells Auto Scaling that you want to perform an action on an instance that is not actively in service; for example, either when the instance launches or before the instance terminates.

        This step is a part of the procedure for adding a lifecycle hook to an Auto Scaling group:

        1. (Optional) Create a Lambda function and a rule that allows CloudWatch Events to invoke your Lambda function when Auto Scaling launches or terminates instances.

        2. (Optional) Create a notification target and an IAM role. The target can be either an Amazon SQS queue or an Amazon SNS topic. The role allows Auto Scaling to publish lifecycle notifications to the target.

        3. Create the lifecycle hook. Specify whether the hook is used when the instances launch or terminate.

        4. If you need more time, record the lifecycle action heartbeat to keep the instance in a pending state.

        5. If you finish before the timeout period ends, complete the lifecycle action.

        For more information, see Auto Scaling Lifecycle Hooks in the Auto Scaling User Guide.

        If you exceed your maximum limit of lifecycle hooks, which by default is 50 per Auto Scaling group, the call fails. For information about updating this limit, see AWS Service Limits in the Amazon Web Services General Reference.

        ", "PutNotificationConfiguration": "

        Configures an Auto Scaling group to send notifications when specified events take place. Subscribers to the specified topic can have messages delivered to an endpoint such as a web server or an email address.

        This configuration overwrites any existing configuration.

        For more information see Getting SNS Notifications When Your Auto Scaling Group Scales in the Auto Scaling User Guide.

        ", "PutScalingPolicy": "

        Creates or updates a policy for an Auto Scaling group. To update an existing policy, use the existing policy name and set the parameters you want to change. Any existing parameter not changed in an update to an existing policy is not changed in this update request.

        If you exceed your maximum limit of step adjustments, which by default is 20 per region, the call fails. For information about updating this limit, see AWS Service Limits in the Amazon Web Services General Reference.

        ", "PutScheduledUpdateGroupAction": "

        Creates or updates a scheduled scaling action for an Auto Scaling group. When updating a scheduled scaling action, if you leave a parameter unspecified, the corresponding value remains unchanged.

        For more information, see Scheduled Scaling in the Auto Scaling User Guide.

        ", "RecordLifecycleActionHeartbeat": "

        Records a heartbeat for the lifecycle action associated with the specified token or instance. This extends the timeout by the length of time defined using PutLifecycleHook.

        This step is a part of the procedure for adding a lifecycle hook to an Auto Scaling group:

        1. (Optional) Create a Lambda function and a rule that allows CloudWatch Events to invoke your Lambda function when Auto Scaling launches or terminates instances.

        2. (Optional) Create a notification target and an IAM role. The target can be either an Amazon SQS queue or an Amazon SNS topic. The role allows Auto Scaling to publish lifecycle notifications to the target.

        3. Create the lifecycle hook. Specify whether the hook is used when the instances launch or terminate.

        4. If you need more time, record the lifecycle action heartbeat to keep the instance in a pending state.

        5. If you finish before the timeout period ends, complete the lifecycle action.

        For more information, see Auto Scaling Lifecycle in the Auto Scaling User Guide.

        ", "ResumeProcesses": "

        Resumes the specified suspended Auto Scaling processes, or all suspended process, for the specified Auto Scaling group.

        For more information, see Suspending and Resuming Auto Scaling Processes in the Auto Scaling User Guide.

        ", "SetDesiredCapacity": "

        Sets the size of the specified Auto Scaling group.

        For more information about desired capacity, see What Is Auto Scaling? in the Auto Scaling User Guide.

        ", "SetInstanceHealth": "

        Sets the health status of the specified instance.

        For more information, see Health Checks in the Auto Scaling User Guide.

        ", "SetInstanceProtection": "

        Updates the instance protection settings of the specified instances.

        For more information, see Instance Protection in the Auto Scaling User Guide.

        ", "SuspendProcesses": "

        Suspends the specified Auto Scaling processes, or all processes, for the specified Auto Scaling group.

        Note that if you suspend either the Launch or Terminate process types, it can prevent other process types from functioning properly.

        To resume processes that have been suspended, use ResumeProcesses.

        For more information, see Suspending and Resuming Auto Scaling Processes in the Auto Scaling User Guide.

        ", "TerminateInstanceInAutoScalingGroup": "

        Terminates the specified instance and optionally adjusts the desired group size.

        This call simply makes a termination request. The instance is not terminated immediately.

        ", "UpdateAutoScalingGroup": "

        Updates the configuration for the specified Auto Scaling group.

        To update an Auto Scaling group with a launch configuration with InstanceMonitoring set to False, you must first disable the collection of group metrics. Otherwise, you will get an error. If you have previously enabled the collection of group metrics, you can disable it using DisableMetricsCollection.

        The new settings are registered upon the completion of this call. Any launch configuration settings take effect on any triggers after this call returns. Scaling activities that are currently in progress aren't affected.

        Note the following:

        • If you specify a new value for MinSize without specifying a value for DesiredCapacity, and the new MinSize is larger than the current size of the group, we implicitly call SetDesiredCapacity to set the size of the group to the new value of MinSize.

        • If you specify a new value for MaxSize without specifying a value for DesiredCapacity, and the new MaxSize is smaller than the current size of the group, we implicitly call SetDesiredCapacity to set the size of the group to the new value of MaxSize.

        • All other optional parameters are left unchanged if not specified.

        " }, "shapes": { "Activities": { "base": null, "refs": { "ActivitiesType$Activities": "

        The scaling activities. Activities are sorted by start time. Activities still in progress are described first.

        ", "DetachInstancesAnswer$Activities": "

        The activities related to detaching the instances from the Auto Scaling group.

        ", "EnterStandbyAnswer$Activities": "

        The activities related to moving instances into Standby mode.

        ", "ExitStandbyAnswer$Activities": "

        The activities related to moving instances out of Standby mode.

        " } }, "ActivitiesType": { "base": "

        Contains the output of DescribeScalingActivities.

        ", "refs": { } }, "Activity": { "base": "

        Describes scaling activity, which is a long-running process that represents a change to your Auto Scaling group, such as changing its size or replacing an instance.

        ", "refs": { "Activities$member": null, "ActivityType$Activity": "

        A scaling activity.

        " } }, "ActivityIds": { "base": null, "refs": { "DescribeScalingActivitiesType$ActivityIds": "

        The activity IDs of the desired scaling activities. If you omit this parameter, all activities for the past six weeks are described. If you specify an Auto Scaling group, the results are limited to that group. The list of requested activities cannot contain more than 50 items. If unknown activities are requested, they are ignored with no error.

        " } }, "ActivityType": { "base": "

        Contains the output of TerminateInstancesInAutoScalingGroup.

        ", "refs": { } }, "AdjustmentType": { "base": "

        Describes a policy adjustment type.

        For more information, see Dynamic Scaling in the Auto Scaling User Guide.

        ", "refs": { "AdjustmentTypes$member": null } }, "AdjustmentTypes": { "base": null, "refs": { "DescribeAdjustmentTypesAnswer$AdjustmentTypes": "

        The policy adjustment types.

        " } }, "Alarm": { "base": "

        Describes an alarm.

        ", "refs": { "Alarms$member": null } }, "Alarms": { "base": null, "refs": { "ScalingPolicy$Alarms": "

        The CloudWatch alarms related to the policy.

        " } }, "AlreadyExistsFault": { "base": "

        You already have an Auto Scaling group or launch configuration with this name.

        ", "refs": { } }, "AsciiStringMaxLen255": { "base": null, "refs": { "CompleteLifecycleActionType$LifecycleHookName": "

        The name of the lifecycle hook.

        ", "DeleteLifecycleHookType$LifecycleHookName": "

        The name of the lifecycle hook.

        ", "LifecycleHook$LifecycleHookName": "

        The name of the lifecycle hook.

        ", "LifecycleHookNames$member": null, "PutLifecycleHookType$LifecycleHookName": "

        The name of the lifecycle hook.

        ", "RecordLifecycleActionHeartbeatType$LifecycleHookName": "

        The name of the lifecycle hook.

        " } }, "AssociatePublicIpAddress": { "base": null, "refs": { "CreateLaunchConfigurationType$AssociatePublicIpAddress": "

        Used for groups that launch instances into a virtual private cloud (VPC). Specifies whether to assign a public IP address to each instance. For more information, see Launching Auto Scaling Instances in a VPC in the Auto Scaling User Guide.

        If you specify this parameter, be sure to specify at least one subnet when you create your group.

        Default: If the instance is launched into a default subnet, the default is true. If the instance is launched into a nondefault subnet, the default is false. For more information, see Supported Platforms in the Amazon Elastic Compute Cloud User Guide.

        ", "LaunchConfiguration$AssociatePublicIpAddress": "

        [EC2-VPC] Indicates whether to assign a public IP address to each instance.

        " } }, "AttachInstancesQuery": { "base": "

        Contains the parameters for AttachInstances.

        ", "refs": { } }, "AttachLoadBalancerTargetGroupsResultType": { "base": null, "refs": { } }, "AttachLoadBalancerTargetGroupsType": { "base": "

        Contains the parameters for AttachLoadBalancerTargetGroups.

        ", "refs": { } }, "AttachLoadBalancersResultType": { "base": "

        Contains the output of AttachLoadBalancers.

        ", "refs": { } }, "AttachLoadBalancersType": { "base": "

        Contains the parameters for AttachLoadBalancers.

        ", "refs": { } }, "AutoScalingGroup": { "base": "

        Describes an Auto Scaling group.

        ", "refs": { "AutoScalingGroups$member": null } }, "AutoScalingGroupDesiredCapacity": { "base": null, "refs": { "AutoScalingGroup$DesiredCapacity": "

        The desired size of the group.

        ", "CreateAutoScalingGroupType$DesiredCapacity": "

        The number of EC2 instances that should be running in the group. This number must be greater than or equal to the minimum size of the group and less than or equal to the maximum size of the group.

        ", "PutScheduledUpdateGroupActionType$DesiredCapacity": "

        The number of EC2 instances that should be running in the group.

        ", "ScheduledUpdateGroupAction$DesiredCapacity": "

        The number of instances you prefer to maintain in the group.

        ", "SetDesiredCapacityType$DesiredCapacity": "

        The number of EC2 instances that should be running in the Auto Scaling group.

        ", "UpdateAutoScalingGroupType$DesiredCapacity": "

        The number of EC2 instances that should be running in the Auto Scaling group. This number must be greater than or equal to the minimum size of the group and less than or equal to the maximum size of the group.

        " } }, "AutoScalingGroupMaxSize": { "base": null, "refs": { "AutoScalingGroup$MaxSize": "

        The maximum size of the group.

        ", "CreateAutoScalingGroupType$MaxSize": "

        The maximum size of the group.

        ", "PutScheduledUpdateGroupActionType$MaxSize": "

        The maximum size for the Auto Scaling group.

        ", "ScheduledUpdateGroupAction$MaxSize": "

        The maximum size of the group.

        ", "UpdateAutoScalingGroupType$MaxSize": "

        The maximum size of the Auto Scaling group.

        " } }, "AutoScalingGroupMinSize": { "base": null, "refs": { "AutoScalingGroup$MinSize": "

        The minimum size of the group.

        ", "CreateAutoScalingGroupType$MinSize": "

        The minimum size of the group.

        ", "PutScheduledUpdateGroupActionType$MinSize": "

        The minimum size for the Auto Scaling group.

        ", "ScheduledUpdateGroupAction$MinSize": "

        The minimum size of the group.

        ", "UpdateAutoScalingGroupType$MinSize": "

        The minimum size of the Auto Scaling group.

        " } }, "AutoScalingGroupNames": { "base": null, "refs": { "AutoScalingGroupNamesType$AutoScalingGroupNames": "

        The group names. If you omit this parameter, all Auto Scaling groups are described.

        ", "DescribeNotificationConfigurationsType$AutoScalingGroupNames": "

        The name of the group.

        " } }, "AutoScalingGroupNamesType": { "base": "

        Contains the parameters for DescribeAutoScalingGroups.

        ", "refs": { } }, "AutoScalingGroups": { "base": null, "refs": { "AutoScalingGroupsType$AutoScalingGroups": "

        The groups.

        " } }, "AutoScalingGroupsType": { "base": "

        Contains the output for DescribeAutoScalingGroups.

        ", "refs": { } }, "AutoScalingInstanceDetails": { "base": "

        Describes an EC2 instance associated with an Auto Scaling group.

        ", "refs": { "AutoScalingInstances$member": null } }, "AutoScalingInstances": { "base": null, "refs": { "AutoScalingInstancesType$AutoScalingInstances": "

        The instances.

        " } }, "AutoScalingInstancesType": { "base": "

        Contains the output of DescribeAutoScalingInstances.

        ", "refs": { } }, "AutoScalingNotificationTypes": { "base": null, "refs": { "DescribeAutoScalingNotificationTypesAnswer$AutoScalingNotificationTypes": "

        The notification types.

        ", "DescribeLifecycleHookTypesAnswer$LifecycleHookTypes": "

        The lifecycle hook types.

        ", "PutNotificationConfigurationType$NotificationTypes": "

        The type of event that will cause the notification to be sent. For details about notification types supported by Auto Scaling, see DescribeAutoScalingNotificationTypes.

        " } }, "AvailabilityZones": { "base": null, "refs": { "AutoScalingGroup$AvailabilityZones": "

        One or more Availability Zones for the group.

        ", "CreateAutoScalingGroupType$AvailabilityZones": "

        One or more Availability Zones for the group. This parameter is optional if you specify one or more subnets.

        ", "UpdateAutoScalingGroupType$AvailabilityZones": "

        One or more Availability Zones for the group.

        " } }, "BlockDeviceEbsDeleteOnTermination": { "base": null, "refs": { "Ebs$DeleteOnTermination": "

        Indicates whether the volume is deleted on instance termination.

        Default: true

        " } }, "BlockDeviceEbsEncrypted": { "base": null, "refs": { "Ebs$Encrypted": "

        Indicates whether the volume should be encrypted. Encrypted EBS volumes must be attached to instances that support Amazon EBS encryption. Volumes that are created from encrypted snapshots are automatically encrypted. There is no way to create an encrypted volume from an unencrypted snapshot or an unencrypted volume from an encrypted snapshot. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        " } }, "BlockDeviceEbsIops": { "base": null, "refs": { "Ebs$Iops": "

        The number of I/O operations per second (IOPS) to provision for the volume.

        Constraint: Required when the volume type is io1.

        " } }, "BlockDeviceEbsVolumeSize": { "base": null, "refs": { "Ebs$VolumeSize": "

        The volume size, in GiB. For standard volumes, specify a value from 1 to 1,024. For io1 volumes, specify a value from 4 to 16,384. For gp2 volumes, specify a value from 1 to 16,384. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size.

        Default: If you create a volume from a snapshot and you don't specify a volume size, the default is the snapshot size.

        " } }, "BlockDeviceEbsVolumeType": { "base": null, "refs": { "Ebs$VolumeType": "

        The volume type. For more information, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

        Valid values: standard | io1 | gp2

        Default: standard

        " } }, "BlockDeviceMapping": { "base": "

        Describes a block device mapping.

        ", "refs": { "BlockDeviceMappings$member": null } }, "BlockDeviceMappings": { "base": null, "refs": { "CreateLaunchConfigurationType$BlockDeviceMappings": "

        One or more mappings that specify how block devices are exposed to the instance. For more information, see Block Device Mapping in the Amazon Elastic Compute Cloud User Guide.

        ", "LaunchConfiguration$BlockDeviceMappings": "

        A block device mapping, which specifies the block devices for the instance.

        " } }, "ClassicLinkVPCSecurityGroups": { "base": null, "refs": { "CreateLaunchConfigurationType$ClassicLinkVPCSecurityGroups": "

        The IDs of one or more security groups for the specified ClassicLink-enabled VPC. This parameter is required if you specify a ClassicLink-enabled VPC, and is not supported otherwise. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

        ", "LaunchConfiguration$ClassicLinkVPCSecurityGroups": "

        The IDs of one or more security groups for the VPC specified in ClassicLinkVPCId. This parameter is required if you specify a ClassicLink-enabled VPC, and cannot be used otherwise. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

        " } }, "CompleteLifecycleActionAnswer": { "base": "

        Contains the output of CompleteLifecycleAction.

        ", "refs": { } }, "CompleteLifecycleActionType": { "base": "

        Contains the parameters for CompleteLifecycleAction.

        ", "refs": { } }, "Cooldown": { "base": null, "refs": { "AutoScalingGroup$DefaultCooldown": "

        The amount of time, in seconds, after a scaling activity completes before another scaling activity can start.

        ", "CreateAutoScalingGroupType$DefaultCooldown": "

        The amount of time, in seconds, after a scaling activity completes before another scaling activity can start. The default is 300.

        For more information, see Auto Scaling Cooldowns in the Auto Scaling User Guide.

        ", "PutScalingPolicyType$Cooldown": "

        The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.

        This parameter is not supported unless the policy type is SimpleScaling.

        For more information, see Auto Scaling Cooldowns in the Auto Scaling User Guide.

        ", "ScalingPolicy$Cooldown": "

        The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.

        ", "UpdateAutoScalingGroupType$DefaultCooldown": "

        The amount of time, in seconds, after a scaling activity completes before another scaling activity can start. The default is 300.

        For more information, see Auto Scaling Cooldowns in the Auto Scaling User Guide.

        " } }, "CreateAutoScalingGroupType": { "base": "

        Contains the parameters for CreateAutoScalingGroup.

        ", "refs": { } }, "CreateLaunchConfigurationType": { "base": "

        Contains the parameters for CreateLaunchConfiguration.

        ", "refs": { } }, "CreateOrUpdateTagsType": { "base": "

        Contains the parameters for CreateOrUpdateTags.

        ", "refs": { } }, "DeleteAutoScalingGroupType": { "base": "

        Contains the parameters for DeleteAutoScalingGroup.

        ", "refs": { } }, "DeleteLifecycleHookAnswer": { "base": "

        Contains the output of DeleteLifecycleHook.

        ", "refs": { } }, "DeleteLifecycleHookType": { "base": "

        Contains the parameters for DeleteLifecycleHook.

        ", "refs": { } }, "DeleteNotificationConfigurationType": { "base": "

        Contains the parameters for DeleteNotificationConfiguration.

        ", "refs": { } }, "DeletePolicyType": { "base": "

        Contains the parameters for DeletePolicy.

        ", "refs": { } }, "DeleteScheduledActionType": { "base": "

        Contains the parameters for DeleteScheduledAction.

        ", "refs": { } }, "DeleteTagsType": { "base": "

        Contains the parameters for DeleteTags.

        ", "refs": { } }, "DescribeAccountLimitsAnswer": { "base": "

        Contains the parameters for DescribeAccountLimits.

        ", "refs": { } }, "DescribeAdjustmentTypesAnswer": { "base": "

        Contains the parameters for DescribeAdjustmentTypes.

        ", "refs": { } }, "DescribeAutoScalingInstancesType": { "base": "

        Contains the parameters for DescribeAutoScalingInstances.

        ", "refs": { } }, "DescribeAutoScalingNotificationTypesAnswer": { "base": "

        Contains the output of DescribeAutoScalingNotificationTypes.

        ", "refs": { } }, "DescribeLifecycleHookTypesAnswer": { "base": "

        Contains the output of DescribeLifecycleHookTypes.

        ", "refs": { } }, "DescribeLifecycleHooksAnswer": { "base": "

        Contains the output of DescribeLifecycleHooks.

        ", "refs": { } }, "DescribeLifecycleHooksType": { "base": "

        Contains the parameters for DescribeLifecycleHooks.

        ", "refs": { } }, "DescribeLoadBalancerTargetGroupsRequest": { "base": "

        Contains the parameters for DescribeLoadBalancerTargetGroups.

        ", "refs": { } }, "DescribeLoadBalancerTargetGroupsResponse": { "base": "

        Contains the output of DescribeLoadBalancerTargetGroups.

        ", "refs": { } }, "DescribeLoadBalancersRequest": { "base": "

        Contains the parameters for DescribeLoadBalancers.

        ", "refs": { } }, "DescribeLoadBalancersResponse": { "base": "

        Contains the output of DescribeLoadBalancers.

        ", "refs": { } }, "DescribeMetricCollectionTypesAnswer": { "base": "

        Contains the output of DescribeMetricsCollectionTypes.

        ", "refs": { } }, "DescribeNotificationConfigurationsAnswer": { "base": "

        Contains the output from DescribeNotificationConfigurations.

        ", "refs": { } }, "DescribeNotificationConfigurationsType": { "base": "

        Contains the parameters for DescribeNotificationConfigurations.

        ", "refs": { } }, "DescribePoliciesType": { "base": "

        Contains the parameters for DescribePolicies.

        ", "refs": { } }, "DescribeScalingActivitiesType": { "base": "

        Contains the parameters for DescribeScalingActivities.

        ", "refs": { } }, "DescribeScheduledActionsType": { "base": "

        Contains the parameters for DescribeScheduledActions.

        ", "refs": { } }, "DescribeTagsType": { "base": "

        Contains the parameters for DescribeTags.

        ", "refs": { } }, "DescribeTerminationPolicyTypesAnswer": { "base": "

        Contains the output of DescribeTerminationPolicyTypes.

        ", "refs": { } }, "DetachInstancesAnswer": { "base": "

        Contains the output of DetachInstances.

        ", "refs": { } }, "DetachInstancesQuery": { "base": "

        Contains the parameters for DetachInstances.

        ", "refs": { } }, "DetachLoadBalancerTargetGroupsResultType": { "base": null, "refs": { } }, "DetachLoadBalancerTargetGroupsType": { "base": null, "refs": { } }, "DetachLoadBalancersResultType": { "base": "

        Contains the output for DetachLoadBalancers.

        ", "refs": { } }, "DetachLoadBalancersType": { "base": "

        Contains the parameters for DetachLoadBalancers.

        ", "refs": { } }, "DisableMetricsCollectionQuery": { "base": "

        Contains the parameters for DisableMetricsCollection.

        ", "refs": { } }, "Ebs": { "base": "

        Describes an Amazon EBS volume.

        ", "refs": { "BlockDeviceMapping$Ebs": "

        The information about the Amazon EBS volume.

        " } }, "EbsOptimized": { "base": null, "refs": { "CreateLaunchConfigurationType$EbsOptimized": "

        Indicates whether the instance is optimized for Amazon EBS I/O. By default, the instance is not optimized for EBS I/O. The optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal I/O performance. This optimization is not available with all instance types. Additional usage charges apply. For more information, see Amazon EBS-Optimized Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "LaunchConfiguration$EbsOptimized": "

        Controls whether the instance is optimized for EBS I/O (true) or not (false).

        " } }, "EnableMetricsCollectionQuery": { "base": "

        Contains the parameters for EnableMetricsCollection.

        ", "refs": { } }, "EnabledMetric": { "base": "

        Describes an enabled metric.

        ", "refs": { "EnabledMetrics$member": null } }, "EnabledMetrics": { "base": null, "refs": { "AutoScalingGroup$EnabledMetrics": "

        The metrics enabled for the group.

        " } }, "EnterStandbyAnswer": { "base": "

        Contains the output of EnterStandby.

        ", "refs": { } }, "EnterStandbyQuery": { "base": "

        Contains the parameters for EnteStandby.

        ", "refs": { } }, "EstimatedInstanceWarmup": { "base": null, "refs": { "PutScalingPolicyType$EstimatedInstanceWarmup": "

        The estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics. The default is to use the value specified for the default cooldown period for the group.

        This parameter is not supported if the policy type is SimpleScaling.

        ", "ScalingPolicy$EstimatedInstanceWarmup": "

        The estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics.

        " } }, "ExecutePolicyType": { "base": "

        Contains the parameters for ExecutePolicy.

        ", "refs": { } }, "ExitStandbyAnswer": { "base": "

        Contains the parameters for ExitStandby.

        ", "refs": { } }, "ExitStandbyQuery": { "base": "

        Contains the parameters for ExitStandby.

        ", "refs": { } }, "Filter": { "base": "

        Describes a filter.

        ", "refs": { "Filters$member": null } }, "Filters": { "base": null, "refs": { "DescribeTagsType$Filters": "

        A filter used to scope the tags to return.

        " } }, "ForceDelete": { "base": null, "refs": { "DeleteAutoScalingGroupType$ForceDelete": "

        Specifies that the group will be deleted along with all instances associated with the group, without waiting for all instances to be terminated. This parameter also deletes any lifecycle actions associated with the group.

        " } }, "GlobalTimeout": { "base": null, "refs": { "LifecycleHook$GlobalTimeout": "

        The maximum time, in seconds, that an instance can remain in a Pending:Wait or Terminating:Wait state. The maximum is 172800 seconds (48 hours) or 100 times HeartbeatTimeout, whichever is smaller.

        " } }, "HealthCheckGracePeriod": { "base": null, "refs": { "AutoScalingGroup$HealthCheckGracePeriod": "

        The amount of time, in seconds, that Auto Scaling waits before checking the health status of an EC2 instance that has come into service.

        ", "CreateAutoScalingGroupType$HealthCheckGracePeriod": "

        The amount of time, in seconds, that Auto Scaling waits before checking the health status of an EC2 instance that has come into service. During this time, any health check failures for the instance are ignored. The default is 0.

        This parameter is required if you are adding an ELB health check.

        For more information, see Health Checks in the Auto Scaling User Guide.

        ", "UpdateAutoScalingGroupType$HealthCheckGracePeriod": "

        The amount of time, in seconds, that Auto Scaling waits before checking the health status of an EC2 instance that has come into service. The default is 0.

        For more information, see Health Checks in the Auto Scaling User Guide.

        " } }, "HeartbeatTimeout": { "base": null, "refs": { "LifecycleHook$HeartbeatTimeout": "

        The maximum time, in seconds, that can elapse before the lifecycle hook times out. The default is 3600 seconds (1 hour). When the lifecycle hook times out, Auto Scaling performs the default action. You can prevent the lifecycle hook from timing out by calling RecordLifecycleActionHeartbeat.

        ", "PutLifecycleHookType$HeartbeatTimeout": "

        The amount of time, in seconds, that can elapse before the lifecycle hook times out. When the lifecycle hook times out, Auto Scaling performs the default action. You can prevent the lifecycle hook from timing out by calling RecordLifecycleActionHeartbeat. The default is 3600 seconds (1 hour).

        " } }, "HonorCooldown": { "base": null, "refs": { "ExecutePolicyType$HonorCooldown": "

        If this parameter is true, Auto Scaling waits for the cooldown period to complete before executing the policy. Otherwise, Auto Scaling executes the policy without waiting for the cooldown period to complete.

        This parameter is not supported if the policy type is StepScaling.

        For more information, see Auto Scaling Cooldowns in the Auto Scaling User Guide.

        ", "SetDesiredCapacityType$HonorCooldown": "

        By default, SetDesiredCapacity overrides any cooldown period associated with the Auto Scaling group. Specify True to make Auto Scaling to wait for the cool-down period associated with the Auto Scaling group to complete before initiating a scaling activity to set your Auto Scaling group to its new capacity.

        " } }, "Instance": { "base": "

        Describes an EC2 instance.

        ", "refs": { "Instances$member": null } }, "InstanceIds": { "base": null, "refs": { "AttachInstancesQuery$InstanceIds": "

        One or more instance IDs.

        ", "DescribeAutoScalingInstancesType$InstanceIds": "

        The instances to describe; up to 50 instance IDs. If you omit this parameter, all Auto Scaling instances are described. If you specify an ID that does not exist, it is ignored with no error.

        ", "DetachInstancesQuery$InstanceIds": "

        One or more instance IDs.

        ", "EnterStandbyQuery$InstanceIds": "

        One or more instances to move into Standby mode. You must specify at least one instance ID.

        ", "ExitStandbyQuery$InstanceIds": "

        One or more instance IDs. You must specify at least one instance ID.

        ", "SetInstanceProtectionQuery$InstanceIds": "

        One or more instance IDs.

        " } }, "InstanceMonitoring": { "base": "

        Describes whether instance monitoring is enabled.

        ", "refs": { "CreateLaunchConfigurationType$InstanceMonitoring": "

        Enables detailed monitoring (true) or basic monitoring (false) for the Auto Scaling instances.

        ", "LaunchConfiguration$InstanceMonitoring": "

        Controls whether instances in this group are launched with detailed (true) or basic (false) monitoring.

        " } }, "InstanceProtected": { "base": null, "refs": { "AutoScalingGroup$NewInstancesProtectedFromScaleIn": "

        Indicates whether newly launched instances are protected from termination by Auto Scaling when scaling in.

        ", "AutoScalingInstanceDetails$ProtectedFromScaleIn": "

        Indicates whether the instance is protected from termination by Auto Scaling when scaling in.

        ", "CreateAutoScalingGroupType$NewInstancesProtectedFromScaleIn": "

        Indicates whether newly launched instances are protected from termination by Auto Scaling when scaling in.

        ", "Instance$ProtectedFromScaleIn": "

        Indicates whether the instance is protected from termination by Auto Scaling when scaling in.

        ", "UpdateAutoScalingGroupType$NewInstancesProtectedFromScaleIn": "

        Indicates whether newly launched instances are protected from termination by Auto Scaling when scaling in.

        " } }, "Instances": { "base": null, "refs": { "AutoScalingGroup$Instances": "

        The EC2 instances associated with the group.

        " } }, "InvalidNextToken": { "base": "

        The NextToken value is not valid.

        ", "refs": { } }, "LaunchConfiguration": { "base": "

        Describes a launch configuration.

        ", "refs": { "LaunchConfigurations$member": null } }, "LaunchConfigurationNameType": { "base": "

        Contains the parameters for DeleteLaunchConfiguration.

        ", "refs": { } }, "LaunchConfigurationNames": { "base": null, "refs": { "LaunchConfigurationNamesType$LaunchConfigurationNames": "

        The launch configuration names. If you omit this parameter, all launch configurations are described.

        " } }, "LaunchConfigurationNamesType": { "base": "

        Contains the parameters for DescribeLaunchConfigurations.

        ", "refs": { } }, "LaunchConfigurations": { "base": null, "refs": { "LaunchConfigurationsType$LaunchConfigurations": "

        The launch configurations.

        " } }, "LaunchConfigurationsType": { "base": "

        Contains the output of DescribeLaunchConfigurations.

        ", "refs": { } }, "LifecycleActionResult": { "base": null, "refs": { "CompleteLifecycleActionType$LifecycleActionResult": "

        The action for the group to take. This parameter can be either CONTINUE or ABANDON.

        ", "LifecycleHook$DefaultResult": "

        Defines the action the Auto Scaling group should take when the lifecycle hook timeout elapses or if an unexpected failure occurs. The valid values are CONTINUE and ABANDON. The default value is CONTINUE.

        ", "PutLifecycleHookType$DefaultResult": "

        Defines the action the Auto Scaling group should take when the lifecycle hook timeout elapses or if an unexpected failure occurs. This parameter can be either CONTINUE or ABANDON. The default value is ABANDON.

        " } }, "LifecycleActionToken": { "base": null, "refs": { "CompleteLifecycleActionType$LifecycleActionToken": "

        A universally unique identifier (UUID) that identifies a specific lifecycle action associated with an instance. Auto Scaling sends this token to the notification target you specified when you created the lifecycle hook.

        ", "RecordLifecycleActionHeartbeatType$LifecycleActionToken": "

        A token that uniquely identifies a specific lifecycle action associated with an instance. Auto Scaling sends this token to the notification target you specified when you created the lifecycle hook.

        " } }, "LifecycleHook": { "base": "

        Describes a lifecycle hook, which tells Auto Scaling that you want to perform an action when an instance launches or terminates. When you have a lifecycle hook in place, the Auto Scaling group will either:

        • Pause the instance after it launches, but before it is put into service

        • Pause the instance as it terminates, but before it is fully terminated

        For more information, see Auto Scaling Lifecycle in the Auto Scaling User Guide.

        ", "refs": { "LifecycleHooks$member": null } }, "LifecycleHookNames": { "base": null, "refs": { "DescribeLifecycleHooksType$LifecycleHookNames": "

        The names of one or more lifecycle hooks. If you omit this parameter, all lifecycle hooks are described.

        " } }, "LifecycleHooks": { "base": null, "refs": { "DescribeLifecycleHooksAnswer$LifecycleHooks": "

        The lifecycle hooks for the specified group.

        " } }, "LifecycleState": { "base": null, "refs": { "Instance$LifecycleState": "

        A description of the current lifecycle state. Note that the Quarantined state is not used.

        " } }, "LifecycleTransition": { "base": null, "refs": { "LifecycleHook$LifecycleTransition": "

        The state of the EC2 instance to which you want to attach the lifecycle hook. For a list of lifecycle hook types, see DescribeLifecycleHookTypes.

        ", "PutLifecycleHookType$LifecycleTransition": "

        The instance state to which you want to attach the lifecycle hook. For a list of lifecycle hook types, see DescribeLifecycleHookTypes.

        This parameter is required for new lifecycle hooks, but optional when updating existing hooks.

        " } }, "LimitExceededFault": { "base": "

        You have already reached a limit for your Auto Scaling resources (for example, groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits.

        ", "refs": { } }, "LoadBalancerNames": { "base": null, "refs": { "AttachLoadBalancersType$LoadBalancerNames": "

        One or more load balancer names.

        ", "AutoScalingGroup$LoadBalancerNames": "

        One or more load balancers associated with the group.

        ", "CreateAutoScalingGroupType$LoadBalancerNames": "

        One or more Classic load balancers. To specify an Application load balancer, use TargetGroupARNs instead.

        For more information, see Using a Load Balancer With an Auto Scaling Group in the Auto Scaling User Guide.

        ", "DetachLoadBalancersType$LoadBalancerNames": "

        One or more load balancer names.

        " } }, "LoadBalancerState": { "base": "

        Describes the state of a Classic load balancer.

        If you specify a load balancer when creating the Auto Scaling group, the state of the load balancer is InService.

        If you attach a load balancer to an existing Auto Scaling group, the initial state is Adding. The state transitions to Added after all instances in the group are registered with the load balancer. If ELB health checks are enabled for the load balancer, the state transitions to InService after at least one instance in the group passes the health check. If EC2 health checks are enabled instead, the load balancer remains in the Added state.

        ", "refs": { "LoadBalancerStates$member": null } }, "LoadBalancerStates": { "base": null, "refs": { "DescribeLoadBalancersResponse$LoadBalancers": "

        The load balancers.

        " } }, "LoadBalancerTargetGroupState": { "base": "

        Describes the state of a target group.

        If you attach a target group to an existing Auto Scaling group, the initial state is Adding. The state transitions to Added after all Auto Scaling instances are registered with the target group. If ELB health checks are enabled, the state transitions to InService after at least one Auto Scaling instance passes the health check. If EC2 health checks are enabled instead, the target group remains in the Added state.

        ", "refs": { "LoadBalancerTargetGroupStates$member": null } }, "LoadBalancerTargetGroupStates": { "base": null, "refs": { "DescribeLoadBalancerTargetGroupsResponse$LoadBalancerTargetGroups": "

        Information about the target groups.

        " } }, "MaxNumberOfAutoScalingGroups": { "base": null, "refs": { "DescribeAccountLimitsAnswer$MaxNumberOfAutoScalingGroups": "

        The maximum number of groups allowed for your AWS account. The default limit is 20 per region.

        " } }, "MaxNumberOfLaunchConfigurations": { "base": null, "refs": { "DescribeAccountLimitsAnswer$MaxNumberOfLaunchConfigurations": "

        The maximum number of launch configurations allowed for your AWS account. The default limit is 100 per region.

        " } }, "MaxRecords": { "base": null, "refs": { "AutoScalingGroupNamesType$MaxRecords": "

        The maximum number of items to return with this call.

        ", "DescribeAutoScalingInstancesType$MaxRecords": "

        The maximum number of items to return with this call.

        ", "DescribeLoadBalancerTargetGroupsRequest$MaxRecords": "

        The maximum number of items to return with this call.

        ", "DescribeLoadBalancersRequest$MaxRecords": "

        The maximum number of items to return with this call.

        ", "DescribeNotificationConfigurationsType$MaxRecords": "

        The maximum number of items to return with this call.

        ", "DescribePoliciesType$MaxRecords": "

        The maximum number of items to be returned with each call.

        ", "DescribeScalingActivitiesType$MaxRecords": "

        The maximum number of items to return with this call.

        ", "DescribeScheduledActionsType$MaxRecords": "

        The maximum number of items to return with this call.

        ", "DescribeTagsType$MaxRecords": "

        The maximum number of items to return with this call.

        ", "LaunchConfigurationNamesType$MaxRecords": "

        The maximum number of items to return with this call. The default is 100.

        " } }, "MetricCollectionType": { "base": "

        Describes a metric.

        ", "refs": { "MetricCollectionTypes$member": null } }, "MetricCollectionTypes": { "base": null, "refs": { "DescribeMetricCollectionTypesAnswer$Metrics": "

        One or more metrics.

        " } }, "MetricGranularityType": { "base": "

        Describes a granularity of a metric.

        ", "refs": { "MetricGranularityTypes$member": null } }, "MetricGranularityTypes": { "base": null, "refs": { "DescribeMetricCollectionTypesAnswer$Granularities": "

        The granularities for the metrics.

        " } }, "MetricScale": { "base": null, "refs": { "ExecutePolicyType$MetricValue": "

        The metric value to compare to BreachThreshold. This enables you to execute a policy of type StepScaling and determine which step adjustment to use. For example, if the breach threshold is 50 and you want to use a step adjustment with a lower bound of 0 and an upper bound of 10, you can set the metric value to 59.

        If you specify a metric value that doesn't correspond to a step adjustment for the policy, the call returns an error.

        This parameter is required if the policy type is StepScaling and not supported otherwise.

        ", "ExecutePolicyType$BreachThreshold": "

        The breach threshold for the alarm.

        This parameter is required if the policy type is StepScaling and not supported otherwise.

        ", "StepAdjustment$MetricIntervalLowerBound": "

        The lower bound for the difference between the alarm threshold and the CloudWatch metric. If the metric value is above the breach threshold, the lower bound is inclusive (the metric must be greater than or equal to the threshold plus the lower bound). Otherwise, it is exclusive (the metric must be greater than the threshold plus the lower bound). A null value indicates negative infinity.

        ", "StepAdjustment$MetricIntervalUpperBound": "

        The upper bound for the difference between the alarm threshold and the CloudWatch metric. If the metric value is above the breach threshold, the upper bound is exclusive (the metric must be less than the threshold plus the upper bound). Otherwise, it is inclusive (the metric must be less than or equal to the threshold plus the upper bound). A null value indicates positive infinity.

        The upper bound must be greater than the lower bound.

        " } }, "Metrics": { "base": null, "refs": { "DisableMetricsCollectionQuery$Metrics": "

        One or more of the following metrics. If you omit this parameter, all metrics are disabled.

        • GroupMinSize

        • GroupMaxSize

        • GroupDesiredCapacity

        • GroupInServiceInstances

        • GroupPendingInstances

        • GroupStandbyInstances

        • GroupTerminatingInstances

        • GroupTotalInstances

        ", "EnableMetricsCollectionQuery$Metrics": "

        One or more of the following metrics. If you omit this parameter, all metrics are enabled.

        • GroupMinSize

        • GroupMaxSize

        • GroupDesiredCapacity

        • GroupInServiceInstances

        • GroupPendingInstances

        • GroupStandbyInstances

        • GroupTerminatingInstances

        • GroupTotalInstances

        " } }, "MinAdjustmentMagnitude": { "base": null, "refs": { "PutScalingPolicyType$MinAdjustmentMagnitude": "

        The minimum number of instances to scale. If the value of AdjustmentType is PercentChangeInCapacity, the scaling policy changes the DesiredCapacity of the Auto Scaling group by at least this many instances. Otherwise, the error is ValidationError.

        ", "ScalingPolicy$MinAdjustmentMagnitude": "

        The minimum number of instances to scale. If the value of AdjustmentType is PercentChangeInCapacity, the scaling policy changes the DesiredCapacity of the Auto Scaling group by at least this many instances. Otherwise, the error is ValidationError.

        " } }, "MinAdjustmentStep": { "base": null, "refs": { "PutScalingPolicyType$MinAdjustmentStep": "

        Available for backward compatibility. Use MinAdjustmentMagnitude instead.

        ", "ScalingPolicy$MinAdjustmentStep": "

        Available for backward compatibility. Use MinAdjustmentMagnitude instead.

        " } }, "MonitoringEnabled": { "base": null, "refs": { "InstanceMonitoring$Enabled": "

        If True, instance monitoring is enabled.

        " } }, "NoDevice": { "base": null, "refs": { "BlockDeviceMapping$NoDevice": "

        Suppresses a device mapping.

        If this parameter is true for the root device, the instance might fail the EC2 health check. Auto Scaling launches a replacement instance if the instance fails the health check.

        " } }, "NotificationConfiguration": { "base": "

        Describes a notification.

        ", "refs": { "NotificationConfigurations$member": null } }, "NotificationConfigurations": { "base": null, "refs": { "DescribeNotificationConfigurationsAnswer$NotificationConfigurations": "

        The notification configurations.

        " } }, "NotificationTargetResourceName": { "base": null, "refs": { "PutLifecycleHookType$NotificationTargetARN": "

        The ARN of the notification target that Auto Scaling will use to notify you when an instance is in the transition state for the lifecycle hook. This target can be either an SQS queue or an SNS topic. If you specify an empty string, this overrides the current ARN.

        This operation uses the JSON format when sending notifications to an Amazon SQS queue, and an email key/value pair format when sending notifications to an Amazon SNS topic.

        When you specify a notification target, Auto Scaling sends it a test message. Test messages contains the following additional key/value pair: \"Event\": \"autoscaling:TEST_NOTIFICATION\".

        " } }, "NumberOfAutoScalingGroups": { "base": null, "refs": { "DescribeAccountLimitsAnswer$NumberOfAutoScalingGroups": "

        The current number of groups for your AWS account.

        " } }, "NumberOfLaunchConfigurations": { "base": null, "refs": { "DescribeAccountLimitsAnswer$NumberOfLaunchConfigurations": "

        The current number of launch configurations for your AWS account.

        " } }, "PoliciesType": { "base": "

        Contains the output of DescribePolicies.

        ", "refs": { } }, "PolicyARNType": { "base": "

        Contains the output of PutScalingPolicy.

        ", "refs": { } }, "PolicyIncrement": { "base": null, "refs": { "PutScalingPolicyType$ScalingAdjustment": "

        The amount by which to scale, based on the specified adjustment type. A positive value adds to the current capacity while a negative number removes from the current capacity.

        This parameter is required if the policy type is SimpleScaling and not supported otherwise.

        ", "ScalingPolicy$ScalingAdjustment": "

        The amount by which to scale, based on the specified adjustment type. A positive value adds to the current capacity while a negative number removes from the current capacity.

        ", "StepAdjustment$ScalingAdjustment": "

        The amount by which to scale, based on the specified adjustment type. A positive value adds to the current capacity while a negative number removes from the current capacity.

        " } }, "PolicyNames": { "base": null, "refs": { "DescribePoliciesType$PolicyNames": "

        One or more policy names or policy ARNs to be described. If you omit this parameter, all policy names are described. If an group name is provided, the results are limited to that group. This list is limited to 50 items. If you specify an unknown policy name, it is ignored with no error.

        " } }, "PolicyTypes": { "base": null, "refs": { "DescribePoliciesType$PolicyTypes": "

        One or more policy types. Valid values are SimpleScaling and StepScaling.

        " } }, "ProcessNames": { "base": null, "refs": { "ScalingProcessQuery$ScalingProcesses": "

        One or more of the following processes. If you omit this parameter, all processes are specified.

        • Launch

        • Terminate

        • HealthCheck

        • ReplaceUnhealthy

        • AZRebalance

        • AlarmNotification

        • ScheduledActions

        • AddToLoadBalancer

        " } }, "ProcessType": { "base": "

        Describes a process type.

        For more information, see Auto Scaling Processes in the Auto Scaling User Guide.

        ", "refs": { "Processes$member": null } }, "Processes": { "base": null, "refs": { "ProcessesType$Processes": "

        The names of the process types.

        " } }, "ProcessesType": { "base": "

        Contains the output of DescribeScalingProcessTypes.

        ", "refs": { } }, "Progress": { "base": null, "refs": { "Activity$Progress": "

        A value between 0 and 100 that indicates the progress of the activity.

        " } }, "PropagateAtLaunch": { "base": null, "refs": { "Tag$PropagateAtLaunch": "

        Determines whether the tag is added to new instances as they are launched in the group.

        ", "TagDescription$PropagateAtLaunch": "

        Determines whether the tag is added to new instances as they are launched in the group.

        " } }, "ProtectedFromScaleIn": { "base": null, "refs": { "SetInstanceProtectionQuery$ProtectedFromScaleIn": "

        Indicates whether the instance is protected from termination by Auto Scaling when scaling in.

        " } }, "PutLifecycleHookAnswer": { "base": "

        Contains the output of PutLifecycleHook.

        ", "refs": { } }, "PutLifecycleHookType": { "base": "

        Contains the parameters for PutLifecycleHook.

        ", "refs": { } }, "PutNotificationConfigurationType": { "base": "

        Contains the parameters for PutNotificationConfiguration.

        ", "refs": { } }, "PutScalingPolicyType": { "base": "

        Contains the parameters for PutScalingPolicy.

        ", "refs": { } }, "PutScheduledUpdateGroupActionType": { "base": "

        Contains the parameters for PutScheduledUpdateGroupAction.

        ", "refs": { } }, "RecordLifecycleActionHeartbeatAnswer": { "base": "

        Contains the output of RecordLifecycleActionHeartBeat.

        ", "refs": { } }, "RecordLifecycleActionHeartbeatType": { "base": "

        Contains the parameters for RecordLifecycleActionHeartbeat.

        ", "refs": { } }, "ResourceContentionFault": { "base": "

        You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

        ", "refs": { } }, "ResourceInUseFault": { "base": "

        The operation can't be performed because the resource is in use.

        ", "refs": { } }, "ResourceName": { "base": null, "refs": { "Alarm$AlarmARN": "

        The Amazon Resource Name (ARN) of the alarm.

        ", "AttachInstancesQuery$AutoScalingGroupName": "

        The name of the group.

        ", "AttachLoadBalancerTargetGroupsType$AutoScalingGroupName": "

        The name of the Auto Scaling group.

        ", "AttachLoadBalancersType$AutoScalingGroupName": "

        The name of the group.

        ", "AutoScalingGroup$AutoScalingGroupARN": "

        The Amazon Resource Name (ARN) of the group.

        ", "AutoScalingGroupNames$member": null, "CompleteLifecycleActionType$AutoScalingGroupName": "

        The name of the group for the lifecycle hook.

        ", "CreateAutoScalingGroupType$LaunchConfigurationName": "

        The name of the launch configuration. Alternatively, specify an EC2 instance instead of a launch configuration.

        ", "DeleteAutoScalingGroupType$AutoScalingGroupName": "

        The name of the group to delete.

        ", "DeleteLifecycleHookType$AutoScalingGroupName": "

        The name of the Auto Scaling group for the lifecycle hook.

        ", "DeleteNotificationConfigurationType$AutoScalingGroupName": "

        The name of the Auto Scaling group.

        ", "DeleteNotificationConfigurationType$TopicARN": "

        The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (SNS) topic.

        ", "DeletePolicyType$AutoScalingGroupName": "

        The name of the Auto Scaling group.

        ", "DeletePolicyType$PolicyName": "

        The name or Amazon Resource Name (ARN) of the policy.

        ", "DeleteScheduledActionType$AutoScalingGroupName": "

        The name of the Auto Scaling group.

        ", "DeleteScheduledActionType$ScheduledActionName": "

        The name of the action to delete.

        ", "DescribeLifecycleHooksType$AutoScalingGroupName": "

        The name of the group.

        ", "DescribeLoadBalancerTargetGroupsRequest$AutoScalingGroupName": "

        The name of the Auto Scaling group.

        ", "DescribeLoadBalancersRequest$AutoScalingGroupName": "

        The name of the group.

        ", "DescribePoliciesType$AutoScalingGroupName": "

        The name of the group.

        ", "DescribeScalingActivitiesType$AutoScalingGroupName": "

        The name of the group.

        ", "DescribeScheduledActionsType$AutoScalingGroupName": "

        The name of the group.

        ", "DetachInstancesQuery$AutoScalingGroupName": "

        The name of the group.

        ", "DetachLoadBalancerTargetGroupsType$AutoScalingGroupName": "

        The name of the Auto Scaling group.

        ", "DetachLoadBalancersType$AutoScalingGroupName": "

        The name of the Auto Scaling group.

        ", "DisableMetricsCollectionQuery$AutoScalingGroupName": "

        The name or Amazon Resource Name (ARN) of the group.

        ", "EnableMetricsCollectionQuery$AutoScalingGroupName": "

        The name or ARN of the Auto Scaling group.

        ", "EnterStandbyQuery$AutoScalingGroupName": "

        The name of the Auto Scaling group.

        ", "ExecutePolicyType$AutoScalingGroupName": "

        The name or Amazon Resource Name (ARN) of the Auto Scaling group.

        ", "ExecutePolicyType$PolicyName": "

        The name or ARN of the policy.

        ", "ExitStandbyQuery$AutoScalingGroupName": "

        The name of the Auto Scaling group.

        ", "LaunchConfiguration$LaunchConfigurationARN": "

        The Amazon Resource Name (ARN) of the launch configuration.

        ", "LaunchConfigurationNameType$LaunchConfigurationName": "

        The name of the launch configuration.

        ", "LaunchConfigurationNames$member": null, "LifecycleHook$AutoScalingGroupName": "

        The name of the Auto Scaling group for the lifecycle hook.

        ", "LifecycleHook$NotificationTargetARN": "

        The ARN of the notification target that Auto Scaling uses to notify you when an instance is in the transition state for the lifecycle hook. This ARN target can be either an SQS queue or an SNS topic. The notification message sent to the target includes the following:

        • Lifecycle action token

        • User account ID

        • Name of the Auto Scaling group

        • Lifecycle hook name

        • EC2 instance ID

        • Lifecycle transition

        • Notification metadata

        ", "LifecycleHook$RoleARN": "

        The ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target.

        ", "NotificationConfiguration$AutoScalingGroupName": "

        The name of the group.

        ", "NotificationConfiguration$TopicARN": "

        The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (SNS) topic.

        ", "PolicyARNType$PolicyARN": "

        The Amazon Resource Name (ARN) of the policy.

        ", "PolicyNames$member": null, "PutLifecycleHookType$AutoScalingGroupName": "

        The name of the Auto Scaling group to which you want to assign the lifecycle hook.

        ", "PutLifecycleHookType$RoleARN": "

        The ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target.

        This parameter is required for new lifecycle hooks, but optional when updating existing hooks.

        ", "PutNotificationConfigurationType$AutoScalingGroupName": "

        The name of the Auto Scaling group.

        ", "PutNotificationConfigurationType$TopicARN": "

        The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (SNS) topic.

        ", "PutScalingPolicyType$AutoScalingGroupName": "

        The name or ARN of the group.

        ", "PutScheduledUpdateGroupActionType$AutoScalingGroupName": "

        The name or Amazon Resource Name (ARN) of the Auto Scaling group.

        ", "RecordLifecycleActionHeartbeatType$AutoScalingGroupName": "

        The name of the Auto Scaling group for the hook.

        ", "ScalingPolicy$PolicyARN": "

        The Amazon Resource Name (ARN) of the policy.

        ", "ScalingProcessQuery$AutoScalingGroupName": "

        The name or Amazon Resource Name (ARN) of the Auto Scaling group.

        ", "ScheduledActionNames$member": null, "ScheduledUpdateGroupAction$ScheduledActionARN": "

        The Amazon Resource Name (ARN) of the scheduled action.

        ", "SetDesiredCapacityType$AutoScalingGroupName": "

        The name of the Auto Scaling group.

        ", "SetInstanceProtectionQuery$AutoScalingGroupName": "

        The name of the group.

        ", "UpdateAutoScalingGroupType$AutoScalingGroupName": "

        The name of the Auto Scaling group.

        ", "UpdateAutoScalingGroupType$LaunchConfigurationName": "

        The name of the launch configuration.

        " } }, "ScalingActivityInProgressFault": { "base": "

        The operation can't be performed because there are scaling activities in progress.

        ", "refs": { } }, "ScalingActivityStatusCode": { "base": null, "refs": { "Activity$StatusCode": "

        The current status of the activity.

        " } }, "ScalingPolicies": { "base": null, "refs": { "PoliciesType$ScalingPolicies": "

        The scaling policies.

        " } }, "ScalingPolicy": { "base": "

        Describes a scaling policy.

        ", "refs": { "ScalingPolicies$member": null } }, "ScalingProcessQuery": { "base": "

        Contains the parameters for SuspendProcesses and ResumeProcesses.

        ", "refs": { } }, "ScheduledActionNames": { "base": null, "refs": { "DescribeScheduledActionsType$ScheduledActionNames": "

        Describes one or more scheduled actions. If you omit this parameter, all scheduled actions are described. If you specify an unknown scheduled action, it is ignored with no error.

        You can describe up to a maximum of 50 instances with a single call. If there are more items to return, the call returns a token. To get the next set of items, repeat the call with the returned token.

        " } }, "ScheduledActionsType": { "base": "

        Contains the output of DescribeScheduledActions.

        ", "refs": { } }, "ScheduledUpdateGroupAction": { "base": "

        Describes a scheduled update to an Auto Scaling group.

        ", "refs": { "ScheduledUpdateGroupActions$member": null } }, "ScheduledUpdateGroupActions": { "base": null, "refs": { "ScheduledActionsType$ScheduledUpdateGroupActions": "

        The scheduled actions.

        " } }, "SecurityGroups": { "base": null, "refs": { "CreateLaunchConfigurationType$SecurityGroups": "

        One or more security groups with which to associate the instances.

        If your instances are launched in EC2-Classic, you can either specify security group names or the security group IDs. For more information about security groups for EC2-Classic, see Amazon EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide.

        If your instances are launched into a VPC, specify security group IDs. For more information, see Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "LaunchConfiguration$SecurityGroups": "

        The security groups to associate with the instances.

        " } }, "SetDesiredCapacityType": { "base": "

        Contains the parameters for SetDesiredCapacity.

        ", "refs": { } }, "SetInstanceHealthQuery": { "base": "

        Contains the parameters for SetInstanceHealth.

        ", "refs": { } }, "SetInstanceProtectionAnswer": { "base": "

        Contains the output of SetInstanceProtection.

        ", "refs": { } }, "SetInstanceProtectionQuery": { "base": "

        Contains the parameters for SetInstanceProtection.

        ", "refs": { } }, "ShouldDecrementDesiredCapacity": { "base": null, "refs": { "DetachInstancesQuery$ShouldDecrementDesiredCapacity": "

        If True, the Auto Scaling group decrements the desired capacity value by the number of instances detached.

        ", "EnterStandbyQuery$ShouldDecrementDesiredCapacity": "

        Specifies whether the instances moved to Standby mode count as part of the Auto Scaling group's desired capacity. If set, the desired capacity for the Auto Scaling group decrements by the number of instances moved to Standby mode.

        ", "TerminateInstanceInAutoScalingGroupType$ShouldDecrementDesiredCapacity": "

        If true, terminating the instance also decrements the size of the Auto Scaling group.

        " } }, "ShouldRespectGracePeriod": { "base": null, "refs": { "SetInstanceHealthQuery$ShouldRespectGracePeriod": "

        If the Auto Scaling group of the specified instance has a HealthCheckGracePeriod specified for the group, by default, this call will respect the grace period. Set this to False, if you do not want the call to respect the grace period associated with the group.

        For more information, see the description of the health check grace period for CreateAutoScalingGroup.

        " } }, "SpotPrice": { "base": null, "refs": { "CreateLaunchConfigurationType$SpotPrice": "

        The maximum hourly price to be paid for any Spot Instance launched to fulfill the request. Spot Instances are launched when the price you specify exceeds the current Spot market price. For more information, see Launching Spot Instances in Your Auto Scaling Group in the Auto Scaling User Guide.

        ", "LaunchConfiguration$SpotPrice": "

        The price to bid when launching Spot Instances.

        " } }, "StepAdjustment": { "base": "

        Describes an adjustment based on the difference between the value of the aggregated CloudWatch metric and the breach threshold that you've defined for the alarm.

        For the following examples, suppose that you have an alarm with a breach threshold of 50:

        • If you want the adjustment to be triggered when the metric is greater than or equal to 50 and less than 60, specify a lower bound of 0 and an upper bound of 10.

        • If you want the adjustment to be triggered when the metric is greater than 40 and less than or equal to 50, specify a lower bound of -10 and an upper bound of 0.

        There are a few rules for the step adjustments for your step policy:

        • The ranges of your step adjustments can't overlap or have a gap.

        • At most one step adjustment can have a null lower bound. If one step adjustment has a negative lower bound, then there must be a step adjustment with a null lower bound.

        • At most one step adjustment can have a null upper bound. If one step adjustment has a positive upper bound, then there must be a step adjustment with a null upper bound.

        • The upper and lower bound can't be null in the same step adjustment.

        ", "refs": { "StepAdjustments$member": null } }, "StepAdjustments": { "base": null, "refs": { "PutScalingPolicyType$StepAdjustments": "

        A set of adjustments that enable you to scale based on the size of the alarm breach.

        This parameter is required if the policy type is StepScaling and not supported otherwise.

        ", "ScalingPolicy$StepAdjustments": "

        A set of adjustments that enable you to scale based on the size of the alarm breach.

        " } }, "SuspendedProcess": { "base": "

        Describes an Auto Scaling process that has been suspended. For more information, see ProcessType.

        ", "refs": { "SuspendedProcesses$member": null } }, "SuspendedProcesses": { "base": null, "refs": { "AutoScalingGroup$SuspendedProcesses": "

        The suspended processes associated with the group.

        " } }, "Tag": { "base": "

        Describes a tag for an Auto Scaling group.

        ", "refs": { "Tags$member": null } }, "TagDescription": { "base": "

        Describes a tag for an Auto Scaling group.

        ", "refs": { "TagDescriptionList$member": null } }, "TagDescriptionList": { "base": null, "refs": { "AutoScalingGroup$Tags": "

        The tags for the group.

        ", "TagsType$Tags": "

        One or more tags.

        " } }, "TagKey": { "base": null, "refs": { "Tag$Key": "

        The tag key.

        ", "TagDescription$Key": "

        The tag key.

        " } }, "TagValue": { "base": null, "refs": { "Tag$Value": "

        The tag value.

        ", "TagDescription$Value": "

        The tag value.

        " } }, "Tags": { "base": null, "refs": { "CreateAutoScalingGroupType$Tags": "

        One or more tags.

        For more information, see Tagging Auto Scaling Groups and Instances in the Auto Scaling User Guide.

        ", "CreateOrUpdateTagsType$Tags": "

        One or more tags.

        ", "DeleteTagsType$Tags": "

        One or more tags.

        " } }, "TagsType": { "base": "

        Contains the output of DescribeTags.

        ", "refs": { } }, "TargetGroupARNs": { "base": null, "refs": { "AttachLoadBalancerTargetGroupsType$TargetGroupARNs": "

        The Amazon Resource Names (ARN) of the target groups.

        ", "AutoScalingGroup$TargetGroupARNs": "

        The Amazon Resource Names (ARN) of the target groups for your load balancer.

        ", "CreateAutoScalingGroupType$TargetGroupARNs": "

        The Amazon Resource Names (ARN) of the target groups.

        ", "DetachLoadBalancerTargetGroupsType$TargetGroupARNs": "

        The Amazon Resource Names (ARN) of the target groups.

        " } }, "TerminateInstanceInAutoScalingGroupType": { "base": "

        Contains the parameters for TerminateInstanceInAutoScalingGroup.

        ", "refs": { } }, "TerminationPolicies": { "base": null, "refs": { "AutoScalingGroup$TerminationPolicies": "

        The termination policies for the group.

        ", "CreateAutoScalingGroupType$TerminationPolicies": "

        One or more termination policies used to select the instance to terminate. These policies are executed in the order that they are listed.

        For more information, see Controlling Which Instances Auto Scaling Terminates During Scale In in the Auto Scaling User Guide.

        ", "DescribeTerminationPolicyTypesAnswer$TerminationPolicyTypes": "

        The termination policies supported by Auto Scaling (OldestInstance, OldestLaunchConfiguration, NewestInstance, ClosestToNextInstanceHour, and Default).

        ", "UpdateAutoScalingGroupType$TerminationPolicies": "

        A standalone termination policy or a list of termination policies used to select the instance to terminate. The policies are executed in the order that they are listed.

        For more information, see Controlling Which Instances Auto Scaling Terminates During Scale In in the Auto Scaling User Guide.

        " } }, "TimestampType": { "base": null, "refs": { "Activity$StartTime": "

        The start time of the activity.

        ", "Activity$EndTime": "

        The end time of the activity.

        ", "AutoScalingGroup$CreatedTime": "

        The date and time the group was created.

        ", "DescribeScheduledActionsType$StartTime": "

        The earliest scheduled start time to return. If scheduled action names are provided, this parameter is ignored.

        ", "DescribeScheduledActionsType$EndTime": "

        The latest scheduled start time to return. If scheduled action names are provided, this parameter is ignored.

        ", "LaunchConfiguration$CreatedTime": "

        The creation date and time for the launch configuration.

        ", "PutScheduledUpdateGroupActionType$Time": "

        This parameter is deprecated.

        ", "PutScheduledUpdateGroupActionType$StartTime": "

        The time for this action to start, in \"YYYY-MM-DDThh:mm:ssZ\" format in UTC/GMT only (for example, 2014-06-01T00:00:00Z).

        If you specify Recurrence and StartTime, Auto Scaling performs the action at this time, and then performs the action based on the specified recurrence.

        If you try to schedule your action in the past, Auto Scaling returns an error message.

        ", "PutScheduledUpdateGroupActionType$EndTime": "

        The time for the recurring schedule to end. Auto Scaling does not perform the action after this time.

        ", "ScheduledUpdateGroupAction$Time": "

        This parameter is deprecated.

        ", "ScheduledUpdateGroupAction$StartTime": "

        The date and time that the action is scheduled to begin. This date and time can be up to one month in the future.

        When StartTime and EndTime are specified with Recurrence, they form the boundaries of when the recurring action will start and stop.

        ", "ScheduledUpdateGroupAction$EndTime": "

        The date and time that the action is scheduled to end. This date and time can be up to one month in the future.

        " } }, "UpdateAutoScalingGroupType": { "base": "

        Contains the parameters for UpdateAutoScalingGroup.

        ", "refs": { } }, "Values": { "base": null, "refs": { "Filter$Values": "

        The value of the filter.

        " } }, "XmlString": { "base": null, "refs": { "ActivitiesType$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "Activity$ActivityId": "

        The ID of the activity.

        ", "Activity$Description": "

        A friendly, more verbose description of the activity.

        ", "Activity$Details": "

        The details about the activity.

        ", "ActivityIds$member": null, "AutoScalingGroupNamesType$NextToken": "

        The token for the next set of items to return. (You received this token from a previous call.)

        ", "AutoScalingGroupsType$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "AutoScalingInstancesType$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DescribeAutoScalingInstancesType$NextToken": "

        The token for the next set of items to return. (You received this token from a previous call.)

        ", "DescribeLoadBalancerTargetGroupsRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a previous call.)

        ", "DescribeLoadBalancerTargetGroupsResponse$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DescribeLoadBalancersRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a previous call.)

        ", "DescribeLoadBalancersResponse$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DescribeNotificationConfigurationsAnswer$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DescribeNotificationConfigurationsType$NextToken": "

        The token for the next set of items to return. (You received this token from a previous call.)

        ", "DescribePoliciesType$NextToken": "

        The token for the next set of items to return. (You received this token from a previous call.)

        ", "DescribeScalingActivitiesType$NextToken": "

        The token for the next set of items to return. (You received this token from a previous call.)

        ", "DescribeScheduledActionsType$NextToken": "

        The token for the next set of items to return. (You received this token from a previous call.)

        ", "DescribeTagsType$NextToken": "

        The token for the next set of items to return. (You received this token from a previous call.)

        ", "Filter$Name": "

        The name of the filter. The valid values are: \"auto-scaling-group\", \"key\", \"value\", and \"propagate-at-launch\".

        ", "LaunchConfigurationNamesType$NextToken": "

        The token for the next set of items to return. (You received this token from a previous call.)

        ", "LaunchConfigurationsType$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "PoliciesType$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "ScheduledActionsType$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "SecurityGroups$member": null, "Tag$ResourceId": "

        The name of the group.

        ", "Tag$ResourceType": "

        The type of resource. The only supported value is auto-scaling-group.

        ", "TagDescription$ResourceId": "

        The name of the group.

        ", "TagDescription$ResourceType": "

        The type of resource. The only supported value is auto-scaling-group.

        ", "TagsType$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "Values$member": null } }, "XmlStringMaxLen1023": { "base": null, "refs": { "Activity$Cause": "

        The reason the activity began.

        ", "LifecycleHook$NotificationMetadata": "

        Additional information that you want to include any time Auto Scaling sends a message to the notification target.

        ", "PutLifecycleHookType$NotificationMetadata": "

        Contains additional information that you want to include any time Auto Scaling sends a message to the notification target.

        " } }, "XmlStringMaxLen1600": { "base": null, "refs": { "CreateLaunchConfigurationType$IamInstanceProfile": "

        The name or the Amazon Resource Name (ARN) of the instance profile associated with the IAM role for the instance.

        EC2 instances launched with an IAM role will automatically have AWS security credentials available. You can use IAM roles with Auto Scaling to automatically enable applications running on your EC2 instances to securely access other AWS resources. For more information, see Launch Auto Scaling Instances with an IAM Role in the Auto Scaling User Guide.

        ", "LaunchConfiguration$IamInstanceProfile": "

        The name or Amazon Resource Name (ARN) of the instance profile associated with the IAM role for the instance.

        ", "TerminationPolicies$member": null } }, "XmlStringMaxLen19": { "base": null, "refs": { "AutoScalingInstanceDetails$InstanceId": "

        The ID of the instance.

        ", "CompleteLifecycleActionType$InstanceId": "

        The ID of the instance.

        ", "CreateAutoScalingGroupType$InstanceId": "

        The ID of the instance used to create a launch configuration for the group. Alternatively, specify a launch configuration instead of an EC2 instance.

        When you specify an ID of an instance, Auto Scaling creates a new launch configuration and associates it with the group. This launch configuration derives its attributes from the specified instance, with the exception of the block device mapping.

        For more information, see Create an Auto Scaling Group Using an EC2 Instance in the Auto Scaling User Guide.

        ", "CreateLaunchConfigurationType$InstanceId": "

        The ID of the instance to use to create the launch configuration.

        The new launch configuration derives attributes from the instance, with the exception of the block device mapping.

        To create a launch configuration with a block device mapping or override any other instance attributes, specify them as part of the same request.

        For more information, see Create a Launch Configuration Using an EC2 Instance in the Auto Scaling User Guide.

        ", "Instance$InstanceId": "

        The ID of the instance.

        ", "InstanceIds$member": null, "RecordLifecycleActionHeartbeatType$InstanceId": "

        The ID of the instance.

        ", "SetInstanceHealthQuery$InstanceId": "

        The ID of the instance.

        ", "TerminateInstanceInAutoScalingGroupType$InstanceId": "

        The ID of the instance.

        " } }, "XmlStringMaxLen2047": { "base": null, "refs": { "AutoScalingGroup$VPCZoneIdentifier": "

        One or more subnet IDs, if applicable, separated by commas.

        If you specify VPCZoneIdentifier and AvailabilityZones, ensure that the Availability Zones of the subnets match the values for AvailabilityZones.

        ", "CreateAutoScalingGroupType$VPCZoneIdentifier": "

        A comma-separated list of subnet identifiers for your virtual private cloud (VPC).

        If you specify subnets and Availability Zones with this call, ensure that the subnets' Availability Zones match the Availability Zones specified.

        For more information, see Launching Auto Scaling Instances in a VPC in the Auto Scaling User Guide.

        ", "UpdateAutoScalingGroupType$VPCZoneIdentifier": "

        The ID of the subnet, if you are launching into a VPC. You can specify several subnets in a comma-separated list.

        When you specify VPCZoneIdentifier with AvailabilityZones, ensure that the subnets' Availability Zones match the values you specify for AvailabilityZones.

        For more information, see Launching Auto Scaling Instances in a VPC in the Auto Scaling User Guide.

        " } }, "XmlStringMaxLen255": { "base": null, "refs": { "Activity$AutoScalingGroupName": "

        The name of the Auto Scaling group.

        ", "Activity$StatusMessage": "

        A friendly, more verbose description of the activity status.

        ", "AdjustmentType$AdjustmentType": "

        The policy adjustment type. The valid values are ChangeInCapacity, ExactCapacity, and PercentChangeInCapacity.

        ", "Alarm$AlarmName": "

        The name of the alarm.

        ", "AlreadyExistsFault$message": "

        ", "AutoScalingGroup$AutoScalingGroupName": "

        The name of the group.

        ", "AutoScalingGroup$LaunchConfigurationName": "

        The name of the associated launch configuration.

        ", "AutoScalingGroup$PlacementGroup": "

        The name of the placement group into which you'll launch your instances, if any. For more information, see Placement Groups in the Amazon Elastic Compute Cloud User Guide.

        ", "AutoScalingGroup$Status": "

        The current state of the group when DeleteAutoScalingGroup is in progress.

        ", "AutoScalingInstanceDetails$AutoScalingGroupName": "

        The name of the Auto Scaling group associated with the instance.

        ", "AutoScalingInstanceDetails$AvailabilityZone": "

        The Availability Zone for the instance.

        ", "AutoScalingInstanceDetails$LaunchConfigurationName": "

        The launch configuration associated with the instance.

        ", "AutoScalingNotificationTypes$member": null, "AvailabilityZones$member": null, "BlockDeviceMapping$VirtualName": "

        The name of the virtual device (for example, ephemeral0).

        ", "BlockDeviceMapping$DeviceName": "

        The device name exposed to the EC2 instance (for example, /dev/sdh or xvdh).

        ", "ClassicLinkVPCSecurityGroups$member": null, "CreateAutoScalingGroupType$AutoScalingGroupName": "

        The name of the group. This name must be unique within the scope of your AWS account.

        ", "CreateAutoScalingGroupType$PlacementGroup": "

        The name of the placement group into which you'll launch your instances, if any. For more information, see Placement Groups in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateLaunchConfigurationType$LaunchConfigurationName": "

        The name of the launch configuration. This name must be unique within the scope of your AWS account.

        ", "CreateLaunchConfigurationType$ImageId": "

        The ID of the Amazon Machine Image (AMI) to use to launch your EC2 instances. For more information, see Finding an AMI in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateLaunchConfigurationType$KeyName": "

        The name of the key pair. For more information, see Amazon EC2 Key Pairs in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateLaunchConfigurationType$ClassicLinkVPCId": "

        The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to. This parameter is supported only if you are launching EC2-Classic instances. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateLaunchConfigurationType$InstanceType": "

        The instance type of the EC2 instance. For information about available instance types, see Available Instance Types in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateLaunchConfigurationType$KernelId": "

        The ID of the kernel associated with the AMI.

        ", "CreateLaunchConfigurationType$RamdiskId": "

        The ID of the RAM disk associated with the AMI.

        ", "Ebs$SnapshotId": "

        The ID of the snapshot.

        ", "EnableMetricsCollectionQuery$Granularity": "

        The granularity to associate with the metrics to collect. The only valid value is 1Minute.

        ", "EnabledMetric$Metric": "

        One of the following metrics:

        • GroupMinSize

        • GroupMaxSize

        • GroupDesiredCapacity

        • GroupInServiceInstances

        • GroupPendingInstances

        • GroupStandbyInstances

        • GroupTerminatingInstances

        • GroupTotalInstances

        ", "EnabledMetric$Granularity": "

        The granularity of the metric. The only valid value is 1Minute.

        ", "Instance$AvailabilityZone": "

        The Availability Zone in which the instance is running.

        ", "Instance$LaunchConfigurationName": "

        The launch configuration associated with the instance.

        ", "InvalidNextToken$message": "

        ", "LaunchConfiguration$LaunchConfigurationName": "

        The name of the launch configuration.

        ", "LaunchConfiguration$ImageId": "

        The ID of the Amazon Machine Image (AMI).

        ", "LaunchConfiguration$KeyName": "

        The name of the key pair.

        ", "LaunchConfiguration$ClassicLinkVPCId": "

        The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to. This parameter can only be used if you are launching EC2-Classic instances. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

        ", "LaunchConfiguration$InstanceType": "

        The instance type for the instances.

        ", "LaunchConfiguration$KernelId": "

        The ID of the kernel associated with the AMI.

        ", "LaunchConfiguration$RamdiskId": "

        The ID of the RAM disk associated with the AMI.

        ", "LimitExceededFault$message": "

        ", "LoadBalancerNames$member": null, "LoadBalancerState$LoadBalancerName": "

        The name of the load balancer.

        ", "LoadBalancerState$State": "

        One of the following load balancer states:

        • Adding - The instances in the group are being registered with the load balancer.

        • Added - All instances in the group are registered with the load balancer.

        • InService - At least one instance in the group passed an ELB health check.

        • Removing - The instances in the group are being deregistered from the load balancer. If connection draining is enabled, Elastic Load Balancing waits for in-flight requests to complete before deregistering the instances.

        • Removed - All instances in the group are deregistered from the load balancer.

        ", "LoadBalancerTargetGroupState$State": "

        The state of the target group.

        • Adding - The Auto Scaling instances are being registered with the target group.

        • Added - All Auto Scaling instances are registered with the target group.

        • InService - At least one Auto Scaling instance passed an ELB health check.

        • Removing - The Auto Scaling instances are being deregistered from the target group. If connection draining is enabled, Elastic Load Balancing waits for in-flight requests to complete before deregistering the instances.

        • Removed - All Auto Scaling instances are deregistered from the target group.

        ", "MetricCollectionType$Metric": "

        One of the following metrics:

        • GroupMinSize

        • GroupMaxSize

        • GroupDesiredCapacity

        • GroupInServiceInstances

        • GroupPendingInstances

        • GroupStandbyInstances

        • GroupTerminatingInstances

        • GroupTotalInstances

        ", "MetricGranularityType$Granularity": "

        The granularity. The only valid value is 1Minute.

        ", "Metrics$member": null, "NotificationConfiguration$NotificationType": "

        One of the following event notification types:

        • autoscaling:EC2_INSTANCE_LAUNCH

        • autoscaling:EC2_INSTANCE_LAUNCH_ERROR

        • autoscaling:EC2_INSTANCE_TERMINATE

        • autoscaling:EC2_INSTANCE_TERMINATE_ERROR

        • autoscaling:TEST_NOTIFICATION

        ", "ProcessNames$member": null, "ProcessType$ProcessName": "

        One of the following processes:

        • Launch

        • Terminate

        • AddToLoadBalancer

        • AlarmNotification

        • AZRebalance

        • HealthCheck

        • ReplaceUnhealthy

        • ScheduledActions

        ", "PutScalingPolicyType$PolicyName": "

        The name of the policy.

        ", "PutScalingPolicyType$AdjustmentType": "

        The adjustment type. Valid values are ChangeInCapacity, ExactCapacity, and PercentChangeInCapacity.

        For more information, see Dynamic Scaling in the Auto Scaling User Guide.

        ", "PutScheduledUpdateGroupActionType$ScheduledActionName": "

        The name of this scaling action.

        ", "PutScheduledUpdateGroupActionType$Recurrence": "

        The recurring schedule for this action, in Unix cron syntax format. For more information, see Cron in Wikipedia.

        ", "ResourceContentionFault$message": "

        ", "ResourceInUseFault$message": "

        ", "ScalingActivityInProgressFault$message": "

        ", "ScalingPolicy$AutoScalingGroupName": "

        The name of the Auto Scaling group associated with this scaling policy.

        ", "ScalingPolicy$PolicyName": "

        The name of the scaling policy.

        ", "ScalingPolicy$AdjustmentType": "

        The adjustment type, which specifies how ScalingAdjustment is interpreted. Valid values are ChangeInCapacity, ExactCapacity, and PercentChangeInCapacity.

        ", "ScheduledUpdateGroupAction$AutoScalingGroupName": "

        The name of the group.

        ", "ScheduledUpdateGroupAction$ScheduledActionName": "

        The name of the scheduled action.

        ", "ScheduledUpdateGroupAction$Recurrence": "

        The recurring schedule for the action.

        ", "SuspendedProcess$ProcessName": "

        The name of the suspended process.

        ", "SuspendedProcess$SuspensionReason": "

        The reason that the process was suspended.

        ", "UpdateAutoScalingGroupType$PlacementGroup": "

        The name of the placement group into which you'll launch your instances, if any. For more information, see Placement Groups in the Amazon Elastic Compute Cloud User Guide.

        " } }, "XmlStringMaxLen32": { "base": null, "refs": { "AutoScalingGroup$HealthCheckType": "

        The service to use for the health checks. The valid values are EC2 and ELB.

        ", "AutoScalingInstanceDetails$LifecycleState": "

        The lifecycle state for the instance. For more information, see Auto Scaling Lifecycle in the Auto Scaling User Guide.

        ", "AutoScalingInstanceDetails$HealthStatus": "

        The last reported health status of this instance. \"Healthy\" means that the instance is healthy and should remain in service. \"Unhealthy\" means that the instance is unhealthy and Auto Scaling should terminate and replace it.

        ", "CreateAutoScalingGroupType$HealthCheckType": "

        The service to use for the health checks. The valid values are EC2 and ELB.

        By default, health checks use Amazon EC2 instance status checks to determine the health of an instance. For more information, see Health Checks in the Auto Scaling User Guide.

        ", "Instance$HealthStatus": "

        The last reported health status of the instance. \"Healthy\" means that the instance is healthy and should remain in service. \"Unhealthy\" means that the instance is unhealthy and Auto Scaling should terminate and replace it.

        ", "PutScalingPolicyType$MetricAggregationType": "

        The aggregation type for the CloudWatch metrics. Valid values are Minimum, Maximum, and Average. If the aggregation type is null, the value is treated as Average.

        This parameter is not supported if the policy type is SimpleScaling.

        ", "ScalingPolicy$MetricAggregationType": "

        The aggregation type for the CloudWatch metrics. Valid values are Minimum, Maximum, and Average.

        ", "SetInstanceHealthQuery$HealthStatus": "

        The health status of the instance. Set to Healthy if you want the instance to remain in service. Set to Unhealthy if you want the instance to be out of service. Auto Scaling will terminate and replace the unhealthy instance.

        ", "UpdateAutoScalingGroupType$HealthCheckType": "

        The service to use for the health checks. The valid values are EC2 and ELB.

        " } }, "XmlStringMaxLen511": { "base": null, "refs": { "LoadBalancerTargetGroupState$LoadBalancerTargetGroupARN": "

        The Amazon Resource Name (ARN) of the target group.

        ", "TargetGroupARNs$member": null } }, "XmlStringMaxLen64": { "base": null, "refs": { "CreateLaunchConfigurationType$PlacementTenancy": "

        The tenancy of the instance. An instance with a tenancy of dedicated runs on single-tenant hardware and can only be launched into a VPC.

        You must set the value of this parameter to dedicated if want to launch Dedicated Instances into a shared tenancy VPC (VPC with instance placement tenancy attribute set to default).

        If you specify this parameter, be sure to specify at least one subnet when you create your group.

        For more information, see Launching Auto Scaling Instances in a VPC in the Auto Scaling User Guide.

        Valid values: default | dedicated

        ", "LaunchConfiguration$PlacementTenancy": "

        The tenancy of the instance, either default or dedicated. An instance with dedicated tenancy runs in an isolated, single-tenant hardware and can only be launched into a VPC.

        ", "PolicyTypes$member": null, "PutScalingPolicyType$PolicyType": "

        The policy type. Valid values are SimpleScaling and StepScaling. If the policy type is null, the value is treated as SimpleScaling.

        ", "ScalingPolicy$PolicyType": "

        The policy type. Valid values are SimpleScaling and StepScaling.

        " } }, "XmlStringUserData": { "base": null, "refs": { "CreateLaunchConfigurationType$UserData": "

        The user data to make available to the launched EC2 instances. For more information, see Instance Metadata and User Data in the Amazon Elastic Compute Cloud User Guide.

        ", "LaunchConfiguration$UserData": "

        The user data available to the instances.

        " } } } } aws-sdk-go-1.4.22/models/apis/autoscaling/2011-01-01/examples-1.json000066400000000000000000001246621300374646400242140ustar00rootroot00000000000000{ "version": "1.0", "examples": { "AttachInstances": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "InstanceIds": [ "i-93633f9b" ] }, "comments": { "input": { }, "output": { } }, "description": "This example attaches the specified instance to the specified Auto Scaling group.", "id": "autoscaling-attach-instances-1", "title": "To attach an instance to an Auto Scaling group" } ], "AttachLoadBalancerTargetGroups": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "TargetGroupARNs": [ "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067" ] }, "comments": { "input": { }, "output": { } }, "description": "This example attaches the specified target group to the specified Auto Scaling group.", "id": "autoscaling-attach-load-balancer-target-groups-1", "title": "To attach a target group to an Auto Scaling group" } ], "AttachLoadBalancers": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "LoadBalancerNames": [ "my-load-balancer" ] }, "comments": { "input": { }, "output": { } }, "description": "This example attaches the specified load balancer to the specified Auto Scaling group.", "id": "autoscaling-attach-load-balancers-1", "title": "To attach a load balancer to an Auto Scaling group" } ], "CompleteLifecycleAction": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "LifecycleActionResult": "CONTINUE", "LifecycleActionToken": "bcd2f1b8-9a78-44d3-8a7a-4dd07d7cf635", "LifecycleHookName": "my-lifecycle-hook" }, "comments": { "input": { }, "output": { } }, "description": "This example notifies Auto Scaling that the specified lifecycle action is complete so that it can finish launching or terminating the instance.", "id": "autoscaling-complete-lifecycle-action-1", "title": "To complete the lifecycle action" } ], "CreateAutoScalingGroup": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "LaunchConfigurationName": "my-launch-config", "MaxSize": 3, "MinSize": 1, "VPCZoneIdentifier": "subnet-4176792c" }, "comments": { "input": { }, "output": { } }, "description": "This example creates an Auto Scaling group.", "id": "autoscaling-create-auto-scaling-group-1", "title": "To create an Auto Scaling group" }, { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "AvailabilityZones": [ "us-west-2c" ], "HealthCheckGracePeriod": 120, "HealthCheckType": "ELB", "LaunchConfigurationName": "my-launch-config", "LoadBalancerNames": [ "my-load-balancer" ], "MaxSize": 3, "MinSize": 1 }, "comments": { "input": { }, "output": { } }, "description": "This example creates an Auto Scaling group and attaches the specified Classic Load Balancer.", "id": "autoscaling-create-auto-scaling-group-2", "title": "To create an Auto Scaling group with an attached load balancer" }, { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "HealthCheckGracePeriod": 120, "HealthCheckType": "ELB", "LaunchConfigurationName": "my-launch-config", "MaxSize": 3, "MinSize": 1, "TargetGroupARNs": [ "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067" ], "VPCZoneIdentifier": "subnet-4176792c, subnet-65ea5f08" }, "comments": { "input": { }, "output": { } }, "description": "This example creates an Auto Scaling group and attaches the specified target group.", "id": "autoscaling-create-auto-scaling-group-3", "title": "To create an Auto Scaling group with an attached target group" } ], "CreateLaunchConfiguration": [ { "input": { "IamInstanceProfile": "my-iam-role", "ImageId": "ami-12345678", "InstanceType": "m3.medium", "LaunchConfigurationName": "my-launch-config", "SecurityGroups": [ "sg-eb2af88e" ] }, "comments": { "input": { }, "output": { } }, "description": "This example creates a launch configuration.", "id": "autoscaling-create-launch-configuration-1", "title": "To create a launch configuration" } ], "CreateOrUpdateTags": [ { "input": { "Tags": [ { "Key": "Role", "PropagateAtLaunch": true, "ResourceId": "my-auto-scaling-group", "ResourceType": "auto-scaling-group", "Value": "WebServer" }, { "Key": "Dept", "PropagateAtLaunch": true, "ResourceId": "my-auto-scaling-group", "ResourceType": "auto-scaling-group", "Value": "Research" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example adds two tags to the specified Auto Scaling group.", "id": "autoscaling-create-or-update-tags-1", "title": "To create or update tags for an Auto Scaling group" } ], "DeleteAutoScalingGroup": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified Auto Scaling group.", "id": "autoscaling-delete-auto-scaling-group-1", "title": "To delete an Auto Scaling group" }, { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "ForceDelete": true }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified Auto Scaling group and all its instances.", "id": "autoscaling-delete-auto-scaling-group-2", "title": "To delete an Auto Scaling group and all its instances" } ], "DeleteLaunchConfiguration": [ { "input": { "LaunchConfigurationName": "my-launch-config" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified launch configuration.", "id": "autoscaling-delete-launch-configuration-1", "title": "To delete a launch configuration" } ], "DeleteLifecycleHook": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "LifecycleHookName": "my-lifecycle-hook" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified lifecycle hook.", "id": "autoscaling-delete-lifecycle-hook-1", "title": "To delete a lifecycle hook" } ], "DeleteNotificationConfiguration": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "TopicARN": "arn:aws:sns:us-west-2:123456789012:my-sns-topic" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified notification from the specified Auto Scaling group.", "id": "autoscaling-delete-notification-configuration-1", "title": "To delete an Auto Scaling notification" } ], "DeletePolicy": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "PolicyName": "ScaleIn" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified Auto Scaling policy.", "id": "autoscaling-delete-policy-1", "title": "To delete an Auto Scaling policy" } ], "DeleteScheduledAction": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "ScheduledActionName": "my-scheduled-action" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified scheduled action from the specified Auto Scaling group.", "id": "autoscaling-delete-scheduled-action-1", "title": "To delete a scheduled action from an Auto Scaling group" } ], "DeleteTags": [ { "input": { "Tags": [ { "Key": "Dept", "ResourceId": "my-auto-scaling-group", "ResourceType": "auto-scaling-group", "Value": "Research" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified tag from the specified Auto Scaling group.", "id": "autoscaling-delete-tags-1", "title": "To delete a tag from an Auto Scaling group" } ], "DescribeAccountLimits": [ { "output": { "MaxNumberOfAutoScalingGroups": 20, "MaxNumberOfLaunchConfigurations": 100, "NumberOfAutoScalingGroups": 3, "NumberOfLaunchConfigurations": 5 }, "comments": { "input": { }, "output": { } }, "description": "This example describes the Auto Scaling limits for your AWS account.", "id": "autoscaling-describe-account-limits-1", "title": "To describe your Auto Scaling account limits" } ], "DescribeAdjustmentTypes": [ { "output": { "AdjustmentTypes": [ { "AdjustmentType": "ChangeInCapacity" }, { "AdjustmentType": "ExactCapcity" }, { "AdjustmentType": "PercentChangeInCapacity" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the available adjustment types.", "id": "autoscaling-describe-adjustment-types-1", "title": "To describe the Auto Scaling adjustment types" } ], "DescribeAutoScalingGroups": [ { "input": { "AutoScalingGroupNames": [ "my-auto-scaling-group" ] }, "output": { "AutoScalingGroups": [ { "AutoScalingGroupARN": "arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:930d940e-891e-4781-a11a-7b0acd480f03:autoScalingGroupName/my-auto-scaling-group", "AutoScalingGroupName": "my-auto-scaling-group", "AvailabilityZones": [ "us-west-2c" ], "CreatedTime": "2013-08-19T20:53:25.584Z", "DefaultCooldown": 300, "DesiredCapacity": 1, "EnabledMetrics": [ ], "HealthCheckGracePeriod": 300, "HealthCheckType": "EC2", "Instances": [ { "AvailabilityZone": "us-west-2c", "HealthStatus": "Healthy", "InstanceId": "i-4ba0837f", "LaunchConfigurationName": "my-launch-config", "LifecycleState": "InService" } ], "LaunchConfigurationName": "my-launch-config", "LoadBalancerNames": [ ], "MaxSize": 1, "MinSize": 0, "NewInstancesProtectedFromScaleIn": false, "SuspendedProcesses": [ ], "Tags": [ ], "TerminationPolicies": [ "Default" ], "VPCZoneIdentifier": "subnet-12345678" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified Auto Scaling group.", "id": "autoscaling-describe-auto-scaling-groups-1", "title": "To describe an Auto Scaling group" } ], "DescribeAutoScalingInstances": [ { "input": { "InstanceIds": [ "i-4ba0837f" ] }, "output": { "AutoScalingInstances": [ { "AutoScalingGroupName": "my-auto-scaling-group", "AvailabilityZone": "us-west-2c", "HealthStatus": "HEALTHY", "InstanceId": "i-4ba0837f", "LaunchConfigurationName": "my-launch-config", "LifecycleState": "InService", "ProtectedFromScaleIn": false } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified Auto Scaling instance.", "id": "autoscaling-describe-auto-scaling-instances-1", "title": "To describe one or more Auto Scaling instances" } ], "DescribeAutoScalingNotificationTypes": [ { "output": { "AutoScalingNotificationTypes": [ "autoscaling:EC2_INSTANCE_LAUNCH", "autoscaling:EC2_INSTANCE_LAUNCH_ERROR", "autoscaling:EC2_INSTANCE_TERMINATE", "autoscaling:EC2_INSTANCE_TERMINATE_ERROR", "autoscaling:TEST_NOTIFICATION" ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the available notification types.", "id": "autoscaling-describe-auto-scaling-notification-types-1", "title": "To describe the Auto Scaling notification types" } ], "DescribeLaunchConfigurations": [ { "input": { "LaunchConfigurationNames": [ "my-launch-config" ] }, "output": { "LaunchConfigurations": [ { "AssociatePublicIpAddress": true, "BlockDeviceMappings": [ ], "CreatedTime": "2014-05-07T17:39:28.599Z", "EbsOptimized": false, "ImageId": "ami-043a5034", "InstanceMonitoring": { "Enabled": true }, "InstanceType": "t1.micro", "LaunchConfigurationARN": "arn:aws:autoscaling:us-west-2:123456789012:launchConfiguration:98d3b196-4cf9-4e88-8ca1-8547c24ced8b:launchConfigurationName/my-launch-config", "LaunchConfigurationName": "my-launch-config", "SecurityGroups": [ "sg-67ef0308" ] } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified launch configuration.", "id": "autoscaling-describe-launch-configurations-1", "title": "To describe Auto Scaling launch configurations" } ], "DescribeLifecycleHookTypes": [ { "output": { "LifecycleHookTypes": [ "autoscaling:EC2_INSTANCE_LAUNCHING", "autoscaling:EC2_INSTANCE_TERMINATING" ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the available lifecycle hook types.", "id": "autoscaling-describe-lifecycle-hook-types-1", "title": "To describe the available types of lifecycle hooks" } ], "DescribeLifecycleHooks": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group" }, "output": { "LifecycleHooks": [ { "AutoScalingGroupName": "my-auto-scaling-group", "DefaultResult": "ABANDON", "GlobalTimeout": 172800, "HeartbeatTimeout": 3600, "LifecycleHookName": "my-lifecycle-hook", "LifecycleTransition": "autoscaling:EC2_INSTANCE_LAUNCHING", "NotificationTargetARN": "arn:aws:sns:us-west-2:123456789012:my-sns-topic", "RoleARN": "arn:aws:iam::123456789012:role/my-auto-scaling-role" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the lifecycle hooks for the specified Auto Scaling group.", "id": "autoscaling-describe-lifecycle-hooks-1", "title": "To describe your lifecycle hooks" } ], "DescribeLoadBalancerTargetGroups": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group" }, "output": { "LoadBalancerTargetGroups": [ { "LoadBalancerTargetGroupARN": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "State": "Added" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the target groups attached to the specified Auto Scaling group.", "id": "autoscaling-describe-load-balancer-target-groups-1", "title": "To describe the target groups for an Auto Scaling group" } ], "DescribeLoadBalancers": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group" }, "output": { "LoadBalancers": [ { "LoadBalancerName": "my-load-balancer", "State": "Added" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the load balancers attached to the specified Auto Scaling group.", "id": "autoscaling-describe-load-balancers-1", "title": "To describe the load balancers for an Auto Scaling group" } ], "DescribeMetricCollectionTypes": [ { "output": { "Granularities": [ { "Granularity": "1Minute" } ], "Metrics": [ { "Metric": "GroupMinSize" }, { "Metric": "GroupMaxSize" }, { "Metric": "GroupDesiredCapacity" }, { "Metric": "GroupInServiceInstances" }, { "Metric": "GroupPendingInstances" }, { "Metric": "GroupTerminatingInstances" }, { "Metric": "GroupStandbyInstances" }, { "Metric": "GroupTotalInstances" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the available metric collection types.", "id": "autoscaling-describe-metric-collection-types-1", "title": "To describe the Auto Scaling metric collection types" } ], "DescribeNotificationConfigurations": [ { "input": { "AutoScalingGroupNames": [ "my-auto-scaling-group" ] }, "output": { "NotificationConfigurations": [ { "AutoScalingGroupName": "my-auto-scaling-group", "NotificationType": "autoscaling:TEST_NOTIFICATION", "TopicARN": "arn:aws:sns:us-west-2:123456789012:my-sns-topic-2" }, { "AutoScalingGroupName": "my-auto-scaling-group", "NotificationType": "autoscaling:TEST_NOTIFICATION", "TopicARN": "arn:aws:sns:us-west-2:123456789012:my-sns-topic" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the notification configurations for the specified Auto Scaling group.", "id": "autoscaling-describe-notification-configurations-1", "title": "To describe Auto Scaling notification configurations" } ], "DescribePolicies": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group" }, "output": { "ScalingPolicies": [ { "AdjustmentType": "ChangeInCapacity", "Alarms": [ ], "AutoScalingGroupName": "my-auto-scaling-group", "PolicyARN": "arn:aws:autoscaling:us-west-2:123456789012:scalingPolicy:2233f3d7-6290-403b-b632-93c553560106:autoScalingGroupName/my-auto-scaling-group:policyName/ScaleIn", "PolicyName": "ScaleIn", "ScalingAdjustment": -1 }, { "AdjustmentType": "PercentChangeInCapacity", "Alarms": [ ], "AutoScalingGroupName": "my-auto-scaling-group", "Cooldown": 60, "MinAdjustmentStep": 2, "PolicyARN": "arn:aws:autoscaling:us-west-2:123456789012:scalingPolicy:2b435159-cf77-4e89-8c0e-d63b497baad7:autoScalingGroupName/my-auto-scaling-group:policyName/ScalePercentChange", "PolicyName": "ScalePercentChange", "ScalingAdjustment": 25 } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the policies for the specified Auto Scaling group.", "id": "autoscaling-describe-policies-1", "title": "To describe Auto Scaling policies" } ], "DescribeScalingActivities": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group" }, "output": { "Activities": [ { "ActivityId": "f9f2d65b-f1f2-43e7-b46d-d86756459699", "AutoScalingGroupName": "my-auto-scaling-group", "Cause": "At 2013-08-19T20:53:25Z a user request created an AutoScalingGroup changing the desired capacity from 0 to 1. At 2013-08-19T20:53:29Z an instance was started in response to a difference between desired and actual capacity, increasing the capacity from 0 to 1.", "Description": "Launching a new EC2 instance: i-4ba0837f", "Details": "details", "EndTime": "2013-08-19T20:54:02Z", "Progress": 100, "StartTime": "2013-08-19T20:53:29.930Z", "StatusCode": "Successful" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the scaling activities for the specified Auto Scaling group.", "id": "autoscaling-describe-scaling-activities-1", "title": "To describe the scaling activities for an Auto Scaling group" } ], "DescribeScalingProcessTypes": [ { "output": { "Processes": [ { "ProcessName": "AZRebalance" }, { "ProcessName": "AddToLoadBalancer" }, { "ProcessName": "AlarmNotification" }, { "ProcessName": "HealthCheck" }, { "ProcessName": "Launch" }, { "ProcessName": "ReplaceUnhealthy" }, { "ProcessName": "ScheduledActions" }, { "ProcessName": "Terminate" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the Auto Scaling process types.", "id": "autoscaling-describe-scaling-process-types-1", "title": "To describe the Auto Scaling process types" } ], "DescribeScheduledActions": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group" }, "output": { "ScheduledUpdateGroupActions": [ { "AutoScalingGroupName": "my-auto-scaling-group", "DesiredCapacity": 4, "MaxSize": 6, "MinSize": 2, "Recurrence": "30 0 1 12 0", "ScheduledActionARN": "arn:aws:autoscaling:us-west-2:123456789012:scheduledUpdateGroupAction:8e86b655-b2e6-4410-8f29-b4f094d6871c:autoScalingGroupName/my-auto-scaling-group:scheduledActionName/my-scheduled-action", "ScheduledActionName": "my-scheduled-action", "StartTime": "2016-12-01T00:30:00Z", "Time": "2016-12-01T00:30:00Z" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the scheduled actions for the specified Auto Scaling group.", "id": "autoscaling-describe-scheduled-actions-1", "title": "To describe scheduled actions" } ], "DescribeTags": [ { "input": { "Filters": [ { "Name": "auto-scaling-group", "Values": [ "my-auto-scaling-group" ] } ] }, "output": { "Tags": [ { "Key": "Dept", "PropagateAtLaunch": true, "ResourceId": "my-auto-scaling-group", "ResourceType": "auto-scaling-group", "Value": "Research" }, { "Key": "Role", "PropagateAtLaunch": true, "ResourceId": "my-auto-scaling-group", "ResourceType": "auto-scaling-group", "Value": "WebServer" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the tags for the specified Auto Scaling group.", "id": "autoscaling-describe-tags-1", "title": "To describe tags" } ], "DescribeTerminationPolicyTypes": [ { "output": { "TerminationPolicyTypes": [ "ClosestToNextInstanceHour", "Default", "NewestInstance", "OldestInstance", "OldestLaunchConfiguration" ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the available termination policy types.", "id": "autoscaling-describe-termination-policy-types-1", "title": "To describe termination policy types" } ], "DetachInstances": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "InstanceIds": [ "i-93633f9b" ], "ShouldDecrementDesiredCapacity": true }, "output": { "Activities": [ { "ActivityId": "5091cb52-547a-47ce-a236-c9ccbc2cb2c9", "AutoScalingGroupName": "my-auto-scaling-group", "Cause": "At 2015-04-12T15:02:16Z instance i-93633f9b was detached in response to a user request, shrinking the capacity from 2 to 1.", "Description": "Detaching EC2 instance: i-93633f9b", "Details": "details", "Progress": 50, "StartTime": "2015-04-12T15:02:16.179Z", "StatusCode": "InProgress" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example detaches the specified instance from the specified Auto Scaling group.", "id": "autoscaling-detach-instances-1", "title": "To detach an instance from an Auto Scaling group" } ], "DetachLoadBalancerTargetGroups": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "TargetGroupARNs": [ "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067" ] }, "comments": { "input": { }, "output": { } }, "description": "This example detaches the specified target group from the specified Auto Scaling group", "id": "autoscaling-detach-load-balancer-target-groups-1", "title": "To detach a target group from an Auto Scaling group" } ], "DetachLoadBalancers": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "LoadBalancerNames": [ "my-load-balancer" ] }, "comments": { "input": { }, "output": { } }, "description": "This example detaches the specified load balancer from the specified Auto Scaling group.", "id": "autoscaling-detach-load-balancers-1", "title": "To detach a load balancer from an Auto Scaling group" } ], "DisableMetricsCollection": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "Metrics": [ "GroupDesiredCapacity" ] }, "comments": { "input": { }, "output": { } }, "description": "This example disables collecting data for the GroupDesiredCapacity metric for the specified Auto Scaling group.", "id": "autoscaling-disable-metrics-collection-1", "title": "To disable metrics collection for an Auto Scaling group" } ], "EnableMetricsCollection": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "Granularity": "1Minute" }, "comments": { "input": { }, "output": { } }, "description": "This example enables data collection for the specified Auto Scaling group.", "id": "autoscaling-enable-metrics-collection-1", "title": "To enable metrics collection for an Auto Scaling group" } ], "EnterStandby": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "InstanceIds": [ "i-93633f9b" ], "ShouldDecrementDesiredCapacity": true }, "output": { "Activities": [ { "ActivityId": "ffa056b4-6ed3-41ba-ae7c-249dfae6eba1", "AutoScalingGroupName": "my-auto-scaling-group", "Cause": "At 2015-04-12T15:10:23Z instance i-93633f9b was moved to standby in response to a user request, shrinking the capacity from 2 to 1.", "Description": "Moving EC2 instance to Standby: i-93633f9b", "Details": "details", "Progress": 50, "StartTime": "2015-04-12T15:10:23.640Z", "StatusCode": "InProgress" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example puts the specified instance into standby mode.", "id": "autoscaling-enter-standby-1", "title": "To move instances into standby mode" } ], "ExecutePolicy": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "HonorCooldown": true, "PolicyName": "ScaleIn" }, "comments": { "input": { }, "output": { } }, "description": "This example executes the specified Auto Scaling policy for the specified Auto Scaling group.", "id": "autoscaling-execute-policy-1", "title": "To execute an Auto Scaling policy" } ], "ExitStandby": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "InstanceIds": [ "i-93633f9b" ] }, "output": { "Activities": [ { "ActivityId": "142928e1-a2dc-453a-9b24-b85ad6735928", "AutoScalingGroupName": "my-auto-scaling-group", "Cause": "At 2015-04-12T15:14:29Z instance i-93633f9b was moved out of standby in response to a user request, increasing the capacity from 1 to 2.", "Description": "Moving EC2 instance out of Standby: i-93633f9b", "Details": "details", "Progress": 30, "StartTime": "2015-04-12T15:14:29.886Z", "StatusCode": "PreInService" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example moves the specified instance out of standby mode.", "id": "autoscaling-exit-standby-1", "title": "To move instances out of standby mode" } ], "PutLifecycleHook": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "LifecycleHookName": "my-lifecycle-hook", "LifecycleTransition": "autoscaling:EC2_INSTANCE_LAUNCHING", "NotificationTargetARN": "arn:aws:sns:us-west-2:123456789012:my-sns-topic --role-arn", "RoleARN": "arn:aws:iam::123456789012:role/my-auto-scaling-role" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a lifecycle hook.", "id": "autoscaling-put-lifecycle-hook-1", "title": "To create a lifecycle hook" } ], "PutNotificationConfiguration": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "NotificationTypes": [ "autoscaling:TEST_NOTIFICATION" ], "TopicARN": "arn:aws:sns:us-west-2:123456789012:my-sns-topic" }, "comments": { "input": { }, "output": { } }, "description": "This example adds the specified notification to the specified Auto Scaling group.", "id": "autoscaling-put-notification-configuration-1", "title": "To add an Auto Scaling notification" } ], "PutScalingPolicy": [ { "input": { "AdjustmentType": "ChangeInCapacity", "AutoScalingGroupName": "my-auto-scaling-group", "PolicyName": "ScaleIn", "ScalingAdjustment": -1 }, "output": { "PolicyARN": "arn:aws:autoscaling:us-west-2:123456789012:scalingPolicy:2233f3d7-6290-403b-b632-93c553560106:autoScalingGroupName/my-auto-scaling-group:policyName/ScaleIn" }, "comments": { "input": { }, "output": { } }, "description": "This example adds the specified policy to the specified Auto Scaling group.", "id": "autoscaling-put-scaling-policy-1", "title": "To add a scaling policy to an Auto Scaling group" } ], "PutScheduledUpdateGroupAction": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "DesiredCapacity": 4, "EndTime": "2014-05-12T08:00:00Z", "MaxSize": 6, "MinSize": 2, "ScheduledActionName": "my-scheduled-action", "StartTime": "2014-05-12T08:00:00Z" }, "comments": { "input": { }, "output": { } }, "description": "This example adds the specified scheduled action to the specified Auto Scaling group.", "id": "autoscaling-put-scheduled-update-group-action-1", "title": "To add a scheduled action to an Auto Scaling group" } ], "RecordLifecycleActionHeartbeat": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "LifecycleActionToken": "bcd2f1b8-9a78-44d3-8a7a-4dd07d7cf635", "LifecycleHookName": "my-lifecycle-hook" }, "comments": { "input": { }, "output": { } }, "description": "This example records a lifecycle action heartbeat to keep the instance in a pending state.", "id": "autoscaling-record-lifecycle-action-heartbeat-1", "title": "To record a lifecycle action heartbeat" } ], "ResumeProcesses": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "ScalingProcesses": [ "AlarmNotification" ] }, "comments": { "input": { }, "output": { } }, "description": "This example resumes the specified suspended scaling process for the specified Auto Scaling group.", "id": "autoscaling-resume-processes-1", "title": "To resume Auto Scaling processes" } ], "SetDesiredCapacity": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "DesiredCapacity": 2, "HonorCooldown": true }, "comments": { "input": { }, "output": { } }, "description": "This example sets the desired capacity for the specified Auto Scaling group.", "id": "autoscaling-set-desired-capacity-1", "title": "To set the desired capacity for an Auto Scaling group" } ], "SetInstanceHealth": [ { "input": { "HealthStatus": "Unhealthy", "InstanceId": "i-93633f9b" }, "comments": { "input": { }, "output": { } }, "description": "This example sets the health status of the specified instance to Unhealthy.", "id": "autoscaling-set-instance-health-1", "title": "To set the health status of an instance" } ], "SetInstanceProtection": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "InstanceIds": [ "i-93633f9b" ], "ProtectedFromScaleIn": true }, "comments": { "input": { }, "output": { } }, "description": "This example enables instance protection for the specified instance.", "id": "autoscaling-set-instance-protection-1", "title": "To enable instance protection for an instance" }, { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "InstanceIds": [ "i-93633f9b" ], "ProtectedFromScaleIn": false }, "comments": { "input": { }, "output": { } }, "description": "This example disables instance protection for the specified instance.", "id": "autoscaling-set-instance-protection-2", "title": "To disable instance protection for an instance" } ], "SuspendProcesses": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "ScalingProcesses": [ "AlarmNotification" ] }, "comments": { "input": { }, "output": { } }, "description": "This example suspends the specified scaling process for the specified Auto Scaling group.", "id": "autoscaling-suspend-processes-1", "title": "To suspend Auto Scaling processes" } ], "TerminateInstanceInAutoScalingGroup": [ { "input": { "InstanceId": "i-93633f9b", "ShouldDecrementDesiredCapacity": false }, "comments": { "input": { }, "output": { } }, "description": "This example terminates the specified instance from the specified Auto Scaling group without updating the size of the group. Auto Scaling launches a replacement instance after the specified instance terminates.", "id": "autoscaling-terminate-instance-in-auto-scaling-group-1", "title": "To terminate an instance in an Auto Scaling group" } ], "UpdateAutoScalingGroup": [ { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "LaunchConfigurationName": "new-launch-config" }, "comments": { "input": { }, "output": { } }, "description": "This example updates the launch configuration of the specified Auto Scaling group.", "id": "autoscaling-update-auto-scaling-group-1", "title": "To update the launch configuration" }, { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "MaxSize": 3, "MinSize": 1 }, "comments": { "input": { }, "output": { } }, "description": "This example updates the minimum size and maximum size of the specified Auto Scaling group.", "id": "autoscaling-update-auto-scaling-group-2", "title": "To update the minimum and maximum size" }, { "input": { "AutoScalingGroupName": "my-auto-scaling-group", "NewInstancesProtectedFromScaleIn": true }, "comments": { "input": { }, "output": { } }, "description": "This example enables instance protection for the specified Auto Scaling group.", "id": "autoscaling-update-auto-scaling-group-3", "title": "To enable instance protection" } ] } } aws-sdk-go-1.4.22/models/apis/autoscaling/2011-01-01/paginators-1.json000066400000000000000000000027241300374646400245370ustar00rootroot00000000000000{ "pagination": { "DescribeAutoScalingGroups": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxRecords", "result_key": "AutoScalingGroups" }, "DescribeAutoScalingInstances": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxRecords", "result_key": "AutoScalingInstances" }, "DescribeLaunchConfigurations": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxRecords", "result_key": "LaunchConfigurations" }, "DescribeNotificationConfigurations": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxRecords", "result_key": "NotificationConfigurations" }, "DescribePolicies": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxRecords", "result_key": "ScalingPolicies" }, "DescribeScalingActivities": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxRecords", "result_key": "Activities" }, "DescribeScheduledActions": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxRecords", "result_key": "ScheduledUpdateGroupActions" }, "DescribeTags": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxRecords", "result_key": "Tags" } } } aws-sdk-go-1.4.22/models/apis/autoscaling/2011-01-01/waiters-2.json000066400000000000000000000040201300374646400240360ustar00rootroot00000000000000{ "version": 2, "waiters": { "GroupExists": { "acceptors": [ { "argument": "length(AutoScalingGroups) > `0`", "expected": true, "matcher": "path", "state": "success" }, { "argument": "length(AutoScalingGroups) > `0`", "expected": false, "matcher": "path", "state": "retry" } ], "delay": 5, "maxAttempts": 10, "operation": "DescribeAutoScalingGroups" }, "GroupInService": { "acceptors": [ { "argument": "contains(AutoScalingGroups[].[length(Instances[?LifecycleState=='InService']) >= MinSize][], `false`)", "expected": false, "matcher": "path", "state": "success" }, { "argument": "contains(AutoScalingGroups[].[length(Instances[?LifecycleState=='InService']) >= MinSize][], `false`)", "expected": true, "matcher": "path", "state": "retry" } ], "delay": 15, "maxAttempts": 40, "operation": "DescribeAutoScalingGroups" }, "GroupNotExists": { "acceptors": [ { "argument": "length(AutoScalingGroups) > `0`", "expected": false, "matcher": "path", "state": "success" }, { "argument": "length(AutoScalingGroups) > `0`", "expected": true, "matcher": "path", "state": "retry" } ], "delay": 15, "maxAttempts": 40, "operation": "DescribeAutoScalingGroups" } } } aws-sdk-go-1.4.22/models/apis/budgets/000077500000000000000000000000001300374646400174375ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/budgets/2016-10-20/000077500000000000000000000000001300374646400204645ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/budgets/2016-10-20/api-2.json000077500000000000000000000421261300374646400222770ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2016-10-20", "endpointPrefix":"budgets", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"AWSBudgets", "serviceFullName":"AWS Budgets", "signatureVersion":"v4", "targetPrefix":"AWSBudgetServiceGateway" }, "operations":{ "CreateBudget":{ "name":"CreateBudget", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateBudgetRequest"}, "output":{"shape":"CreateBudgetResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"CreationLimitExceededException"}, {"shape":"DuplicateRecordException"} ] }, "CreateNotification":{ "name":"CreateNotification", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateNotificationRequest"}, "output":{"shape":"CreateNotificationResponse"}, "errors":[ {"shape":"InternalErrorException"}, {"shape":"InvalidParameterException"}, {"shape":"NotFoundException"}, {"shape":"CreationLimitExceededException"}, {"shape":"DuplicateRecordException"} ] }, "CreateSubscriber":{ "name":"CreateSubscriber", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSubscriberRequest"}, "output":{"shape":"CreateSubscriberResponse"}, "errors":[ {"shape":"InternalErrorException"}, {"shape":"InvalidParameterException"}, {"shape":"CreationLimitExceededException"}, {"shape":"DuplicateRecordException"} ] }, "DeleteBudget":{ "name":"DeleteBudget", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteBudgetRequest"}, "output":{"shape":"DeleteBudgetResponse"}, "errors":[ {"shape":"InternalErrorException"}, {"shape":"InvalidParameterException"}, {"shape":"NotFoundException"} ] }, "DeleteNotification":{ "name":"DeleteNotification", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteNotificationRequest"}, "output":{"shape":"DeleteNotificationResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"NotFoundException"} ] }, "DeleteSubscriber":{ "name":"DeleteSubscriber", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSubscriberRequest"}, "output":{"shape":"DeleteSubscriberResponse"}, "errors":[ {"shape":"InternalErrorException"}, {"shape":"InvalidParameterException"}, {"shape":"NotFoundException"} ] }, "DescribeBudget":{ "name":"DescribeBudget", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeBudgetRequest"}, "output":{"shape":"DescribeBudgetResponse"}, "errors":[ {"shape":"InternalErrorException"}, {"shape":"InvalidParameterException"}, {"shape":"NotFoundException"} ] }, "DescribeBudgets":{ "name":"DescribeBudgets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeBudgetsRequest"}, "output":{"shape":"DescribeBudgetsResponse"}, "errors":[ {"shape":"InternalErrorException"}, {"shape":"InvalidParameterException"}, {"shape":"NotFoundException"}, {"shape":"InvalidNextTokenException"}, {"shape":"ExpiredNextTokenException"} ] }, "DescribeNotificationsForBudget":{ "name":"DescribeNotificationsForBudget", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeNotificationsForBudgetRequest"}, "output":{"shape":"DescribeNotificationsForBudgetResponse"}, "errors":[ {"shape":"InternalErrorException"}, {"shape":"InvalidParameterException"}, {"shape":"NotFoundException"}, {"shape":"InvalidNextTokenException"}, {"shape":"ExpiredNextTokenException"} ] }, "DescribeSubscribersForNotification":{ "name":"DescribeSubscribersForNotification", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSubscribersForNotificationRequest"}, "output":{"shape":"DescribeSubscribersForNotificationResponse"}, "errors":[ {"shape":"InternalErrorException"}, {"shape":"NotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidNextTokenException"}, {"shape":"ExpiredNextTokenException"} ] }, "UpdateBudget":{ "name":"UpdateBudget", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateBudgetRequest"}, "output":{"shape":"UpdateBudgetResponse"}, "errors":[ {"shape":"InternalErrorException"}, {"shape":"InvalidParameterException"}, {"shape":"NotFoundException"} ] }, "UpdateNotification":{ "name":"UpdateNotification", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateNotificationRequest"}, "output":{"shape":"UpdateNotificationResponse"}, "errors":[ {"shape":"InternalErrorException"}, {"shape":"InvalidParameterException"}, {"shape":"NotFoundException"} ] }, "UpdateSubscriber":{ "name":"UpdateSubscriber", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateSubscriberRequest"}, "output":{"shape":"UpdateSubscriberResponse"}, "errors":[ {"shape":"InternalErrorException"}, {"shape":"InvalidParameterException"}, {"shape":"NotFoundException"} ] } }, "shapes":{ "AccountId":{ "type":"string", "max":12, "min":12 }, "Budget":{ "type":"structure", "required":[ "BudgetName", "BudgetLimit", "CostTypes", "TimeUnit", "TimePeriod", "BudgetType" ], "members":{ "BudgetName":{"shape":"BudgetName"}, "BudgetLimit":{"shape":"Spend"}, "CostFilters":{"shape":"CostFilters"}, "CostTypes":{"shape":"CostTypes"}, "TimeUnit":{"shape":"TimeUnit"}, "TimePeriod":{"shape":"TimePeriod"}, "CalculatedSpend":{"shape":"CalculatedSpend"}, "BudgetType":{"shape":"BudgetType"} } }, "BudgetName":{ "type":"string", "max":100, "pattern":"[^:]+" }, "BudgetType":{ "type":"string", "enum":[ "USAGE", "COST" ] }, "Budgets":{ "type":"list", "member":{"shape":"Budget"} }, "CalculatedSpend":{ "type":"structure", "required":["ActualSpend"], "members":{ "ActualSpend":{"shape":"Spend"}, "ForecastedSpend":{"shape":"Spend"} } }, "ComparisonOperator":{ "type":"string", "enum":[ "GREATER_THAN", "LESS_THAN", "EQUAL_TO" ] }, "CostFilters":{ "type":"map", "key":{"shape":"GenericString"}, "value":{"shape":"DimensionValues"} }, "CostTypes":{ "type":"structure", "required":[ "IncludeTax", "IncludeSubscription", "UseBlended" ], "members":{ "IncludeTax":{"shape":"GenericBoolean"}, "IncludeSubscription":{"shape":"GenericBoolean"}, "UseBlended":{"shape":"GenericBoolean"} } }, "CreateBudgetRequest":{ "type":"structure", "required":[ "AccountId", "Budget" ], "members":{ "AccountId":{"shape":"AccountId"}, "Budget":{"shape":"Budget"}, "NotificationsWithSubscribers":{"shape":"NotificationWithSubscribersList"} } }, "CreateBudgetResponse":{ "type":"structure", "members":{ } }, "CreateNotificationRequest":{ "type":"structure", "required":[ "AccountId", "BudgetName", "Notification", "Subscribers" ], "members":{ "AccountId":{"shape":"AccountId"}, "BudgetName":{"shape":"BudgetName"}, "Notification":{"shape":"Notification"}, "Subscribers":{"shape":"Subscribers"} } }, "CreateNotificationResponse":{ "type":"structure", "members":{ } }, "CreateSubscriberRequest":{ "type":"structure", "required":[ "AccountId", "BudgetName", "Notification", "Subscriber" ], "members":{ "AccountId":{"shape":"AccountId"}, "BudgetName":{"shape":"BudgetName"}, "Notification":{"shape":"Notification"}, "Subscriber":{"shape":"Subscriber"} } }, "CreateSubscriberResponse":{ "type":"structure", "members":{ } }, "CreationLimitExceededException":{ "type":"structure", "members":{ "Message":{"shape":"errorMessage"} }, "exception":true }, "DeleteBudgetRequest":{ "type":"structure", "required":[ "AccountId", "BudgetName" ], "members":{ "AccountId":{"shape":"AccountId"}, "BudgetName":{"shape":"BudgetName"} } }, "DeleteBudgetResponse":{ "type":"structure", "members":{ } }, "DeleteNotificationRequest":{ "type":"structure", "required":[ "AccountId", "BudgetName", "Notification" ], "members":{ "AccountId":{"shape":"AccountId"}, "BudgetName":{"shape":"BudgetName"}, "Notification":{"shape":"Notification"} } }, "DeleteNotificationResponse":{ "type":"structure", "members":{ } }, "DeleteSubscriberRequest":{ "type":"structure", "required":[ "AccountId", "BudgetName", "Notification", "Subscriber" ], "members":{ "AccountId":{"shape":"AccountId"}, "BudgetName":{"shape":"BudgetName"}, "Notification":{"shape":"Notification"}, "Subscriber":{"shape":"Subscriber"} } }, "DeleteSubscriberResponse":{ "type":"structure", "members":{ } }, "DescribeBudgetRequest":{ "type":"structure", "required":[ "AccountId", "BudgetName" ], "members":{ "AccountId":{"shape":"AccountId"}, "BudgetName":{"shape":"BudgetName"} } }, "DescribeBudgetResponse":{ "type":"structure", "members":{ "Budget":{"shape":"Budget"} } }, "DescribeBudgetsRequest":{ "type":"structure", "required":["AccountId"], "members":{ "AccountId":{"shape":"AccountId"}, "MaxResults":{"shape":"MaxResults"}, "NextToken":{"shape":"GenericString"} } }, "DescribeBudgetsResponse":{ "type":"structure", "members":{ "Budgets":{"shape":"Budgets"}, "NextToken":{"shape":"GenericString"} } }, "DescribeNotificationsForBudgetRequest":{ "type":"structure", "required":[ "AccountId", "BudgetName" ], "members":{ "AccountId":{"shape":"AccountId"}, "BudgetName":{"shape":"BudgetName"}, "MaxResults":{"shape":"MaxResults"}, "NextToken":{"shape":"GenericString"} } }, "DescribeNotificationsForBudgetResponse":{ "type":"structure", "members":{ "Notifications":{"shape":"Notifications"}, "NextToken":{"shape":"GenericString"} } }, "DescribeSubscribersForNotificationRequest":{ "type":"structure", "required":[ "AccountId", "BudgetName", "Notification" ], "members":{ "AccountId":{"shape":"AccountId"}, "BudgetName":{"shape":"BudgetName"}, "Notification":{"shape":"Notification"}, "MaxResults":{"shape":"MaxResults"}, "NextToken":{"shape":"GenericString"} } }, "DescribeSubscribersForNotificationResponse":{ "type":"structure", "members":{ "Subscribers":{"shape":"Subscribers"}, "NextToken":{"shape":"GenericString"} } }, "DimensionValues":{ "type":"list", "member":{"shape":"GenericString"} }, "DuplicateRecordException":{ "type":"structure", "members":{ "Message":{"shape":"errorMessage"} }, "exception":true }, "ExpiredNextTokenException":{ "type":"structure", "members":{ "Message":{"shape":"errorMessage"} }, "exception":true }, "GenericBoolean":{"type":"boolean"}, "GenericString":{"type":"string"}, "GenericTimestamp":{"type":"timestamp"}, "InternalErrorException":{ "type":"structure", "members":{ "Message":{"shape":"errorMessage"} }, "exception":true }, "InvalidNextTokenException":{ "type":"structure", "members":{ "Message":{"shape":"errorMessage"} }, "exception":true }, "InvalidParameterException":{ "type":"structure", "members":{ "Message":{"shape":"errorMessage"} }, "exception":true }, "MaxResults":{ "type":"integer", "box":true, "max":100, "min":1 }, "NotFoundException":{ "type":"structure", "members":{ "Message":{"shape":"errorMessage"} }, "exception":true }, "Notification":{ "type":"structure", "required":[ "NotificationType", "ComparisonOperator", "Threshold" ], "members":{ "NotificationType":{"shape":"NotificationType"}, "ComparisonOperator":{"shape":"ComparisonOperator"}, "Threshold":{"shape":"NotificationThreshold"} } }, "NotificationThreshold":{ "type":"double", "max":100, "min":0.1 }, "NotificationType":{ "type":"string", "enum":[ "ACTUAL", "FORECASTED" ] }, "NotificationWithSubscribers":{ "type":"structure", "required":[ "Notification", "Subscribers" ], "members":{ "Notification":{"shape":"Notification"}, "Subscribers":{"shape":"Subscribers"} } }, "NotificationWithSubscribersList":{ "type":"list", "member":{"shape":"NotificationWithSubscribers"}, "max":5 }, "Notifications":{ "type":"list", "member":{"shape":"Notification"} }, "NumericValue":{ "type":"string", "pattern":"[0-9]+(\\.)?[0-9]*" }, "Spend":{ "type":"structure", "required":[ "Amount", "Unit" ], "members":{ "Amount":{"shape":"NumericValue"}, "Unit":{"shape":"GenericString"} } }, "Subscriber":{ "type":"structure", "required":[ "SubscriptionType", "Address" ], "members":{ "SubscriptionType":{"shape":"SubscriptionType"}, "Address":{"shape":"GenericString"} } }, "Subscribers":{ "type":"list", "member":{"shape":"Subscriber"}, "max":11, "min":1 }, "SubscriptionType":{ "type":"string", "enum":[ "SNS", "EMAIL" ] }, "TimePeriod":{ "type":"structure", "required":[ "Start", "End" ], "members":{ "Start":{"shape":"GenericTimestamp"}, "End":{"shape":"GenericTimestamp"} } }, "TimeUnit":{ "type":"string", "enum":[ "MONTHLY", "QUARTERLY", "ANNUALLY" ] }, "UpdateBudgetRequest":{ "type":"structure", "required":[ "AccountId", "NewBudget" ], "members":{ "AccountId":{"shape":"AccountId"}, "NewBudget":{"shape":"Budget"} } }, "UpdateBudgetResponse":{ "type":"structure", "members":{ } }, "UpdateNotificationRequest":{ "type":"structure", "required":[ "AccountId", "BudgetName", "OldNotification", "NewNotification" ], "members":{ "AccountId":{"shape":"AccountId"}, "BudgetName":{"shape":"BudgetName"}, "OldNotification":{"shape":"Notification"}, "NewNotification":{"shape":"Notification"} } }, "UpdateNotificationResponse":{ "type":"structure", "members":{ } }, "UpdateSubscriberRequest":{ "type":"structure", "required":[ "AccountId", "BudgetName", "Notification", "OldSubscriber", "NewSubscriber" ], "members":{ "AccountId":{"shape":"AccountId"}, "BudgetName":{"shape":"BudgetName"}, "Notification":{"shape":"Notification"}, "OldSubscriber":{"shape":"Subscriber"}, "NewSubscriber":{"shape":"Subscriber"} } }, "UpdateSubscriberResponse":{ "type":"structure", "members":{ } }, "errorMessage":{"type":"string"} } } aws-sdk-go-1.4.22/models/apis/budgets/2016-10-20/docs-2.json000077500000000000000000000317021300374646400224540ustar00rootroot00000000000000{ "version": "2.0", "service": "All public APIs for AWS Budgets", "operations": { "CreateBudget": "Create a new budget", "CreateNotification": "Create a new Notification with subscribers for a budget", "CreateSubscriber": "Create a new Subscriber for a notification", "DeleteBudget": "Delete a budget and related notifications", "DeleteNotification": "Delete a notification and related subscribers", "DeleteSubscriber": "Delete a Subscriber for a notification", "DescribeBudget": "Get a single budget", "DescribeBudgets": "Get all budgets for an account", "DescribeNotificationsForBudget": "Get notifications of a budget", "DescribeSubscribersForNotification": "Get subscribers of a notification", "UpdateBudget": "Update the information of a budget already created", "UpdateNotification": "Update the information about a notification already created", "UpdateSubscriber": "Update a subscriber" }, "shapes": { "AccountId": { "base": "Account Id of the customer. It should be a 12 digit number.", "refs": { "CreateBudgetRequest$AccountId": null, "CreateNotificationRequest$AccountId": null, "CreateSubscriberRequest$AccountId": null, "DeleteBudgetRequest$AccountId": null, "DeleteNotificationRequest$AccountId": null, "DeleteSubscriberRequest$AccountId": null, "DescribeBudgetRequest$AccountId": null, "DescribeBudgetsRequest$AccountId": null, "DescribeNotificationsForBudgetRequest$AccountId": null, "DescribeSubscribersForNotificationRequest$AccountId": null, "UpdateBudgetRequest$AccountId": null, "UpdateNotificationRequest$AccountId": null, "UpdateSubscriberRequest$AccountId": null } }, "Budget": { "base": "AWS Budget model", "refs": { "Budgets$member": null, "CreateBudgetRequest$Budget": null, "DescribeBudgetResponse$Budget": null, "UpdateBudgetRequest$NewBudget": null } }, "BudgetName": { "base": "A string represents the budget name. No \":\" character is allowed.", "refs": { "Budget$BudgetName": null, "CreateNotificationRequest$BudgetName": null, "CreateSubscriberRequest$BudgetName": null, "DeleteBudgetRequest$BudgetName": null, "DeleteNotificationRequest$BudgetName": null, "DeleteSubscriberRequest$BudgetName": null, "DescribeBudgetRequest$BudgetName": null, "DescribeNotificationsForBudgetRequest$BudgetName": null, "DescribeSubscribersForNotificationRequest$BudgetName": null, "UpdateNotificationRequest$BudgetName": null, "UpdateSubscriberRequest$BudgetName": null } }, "BudgetType": { "base": "The type of a budget. Can be COST or USAGE.", "refs": { "Budget$BudgetType": null } }, "Budgets": { "base": "A list of budgets", "refs": { "DescribeBudgetsResponse$Budgets": null } }, "CalculatedSpend": { "base": "A structure holds the actual and forecasted spend for a budget.", "refs": { "Budget$CalculatedSpend": null } }, "ComparisonOperator": { "base": "The comparison operator of a notification. Currently we support less than, equal to and greater than.", "refs": { "Notification$ComparisonOperator": null } }, "CostFilters": { "base": "A map represents the cost filters applied to the budget.", "refs": { "Budget$CostFilters": null } }, "CostTypes": { "base": "This includes the options for getting the cost of a budget.", "refs": { "Budget$CostTypes": null } }, "CreateBudgetRequest": { "base": "Request of CreateBudget", "refs": { } }, "CreateBudgetResponse": { "base": "Response of CreateBudget", "refs": { } }, "CreateNotificationRequest": { "base": "Request of CreateNotification", "refs": { } }, "CreateNotificationResponse": { "base": "Response of CreateNotification", "refs": { } }, "CreateSubscriberRequest": { "base": "Request of CreateSubscriber", "refs": { } }, "CreateSubscriberResponse": { "base": "Response of CreateSubscriber", "refs": { } }, "CreationLimitExceededException": { "base": "The exception is thrown when customer tries to create a record (e.g. budget), but the number this record already exceeds the limitation.", "refs": { } }, "DeleteBudgetRequest": { "base": "Request of DeleteBudget", "refs": { } }, "DeleteBudgetResponse": { "base": "Response of DeleteBudget", "refs": { } }, "DeleteNotificationRequest": { "base": "Request of DeleteNotification", "refs": { } }, "DeleteNotificationResponse": { "base": "Response of DeleteNotification", "refs": { } }, "DeleteSubscriberRequest": { "base": "Request of DeleteSubscriber", "refs": { } }, "DeleteSubscriberResponse": { "base": "Response of DeleteSubscriber", "refs": { } }, "DescribeBudgetRequest": { "base": "Request of DescribeBudget", "refs": { } }, "DescribeBudgetResponse": { "base": "Response of DescribeBudget", "refs": { } }, "DescribeBudgetsRequest": { "base": "Request of DescribeBudgets", "refs": { } }, "DescribeBudgetsResponse": { "base": "Response of DescribeBudgets", "refs": { } }, "DescribeNotificationsForBudgetRequest": { "base": "Request of DescribeNotificationsForBudget", "refs": { } }, "DescribeNotificationsForBudgetResponse": { "base": "Response of GetNotificationsForBudget", "refs": { } }, "DescribeSubscribersForNotificationRequest": { "base": "Request of DescribeSubscribersForNotification", "refs": { } }, "DescribeSubscribersForNotificationResponse": { "base": "Response of DescribeSubscribersForNotification", "refs": { } }, "DimensionValues": { "base": null, "refs": { "CostFilters$value": null } }, "DuplicateRecordException": { "base": "The exception is thrown when customer tries to create a record (e.g. budget) that already exists.", "refs": { } }, "ExpiredNextTokenException": { "base": "This exception is thrown if the paging token is expired - past its TTL", "refs": { } }, "GenericBoolean": { "base": "A generic boolean value.", "refs": { "CostTypes$IncludeTax": null, "CostTypes$IncludeSubscription": null, "CostTypes$UseBlended": null } }, "GenericString": { "base": "A generic String.", "refs": { "CostFilters$key": null, "DescribeBudgetsRequest$NextToken": null, "DescribeBudgetsResponse$NextToken": null, "DescribeNotificationsForBudgetRequest$NextToken": null, "DescribeNotificationsForBudgetResponse$NextToken": null, "DescribeSubscribersForNotificationRequest$NextToken": null, "DescribeSubscribersForNotificationResponse$NextToken": null, "DimensionValues$member": null, "Spend$Unit": null, "Subscriber$Address": null } }, "GenericTimestamp": { "base": "A generic timestamp. In Java it is transformed to a Date object.", "refs": { "TimePeriod$Start": null, "TimePeriod$End": null } }, "InternalErrorException": { "base": "This exception is thrown on an unknown internal failure.", "refs": { } }, "InvalidNextTokenException": { "base": "This exception is thrown if paging token signature didn't match the token, or the paging token isn't for this request", "refs": { } }, "InvalidParameterException": { "base": "This exception is thrown if any request is given an invalid parameter. E.g., if a required Date field is null.", "refs": { } }, "MaxResults": { "base": "An integer to represent how many entries should a pagianted response contains. Maxium is set to 100.", "refs": { "DescribeBudgetsRequest$MaxResults": null, "DescribeNotificationsForBudgetRequest$MaxResults": null, "DescribeSubscribersForNotificationRequest$MaxResults": null } }, "NotFoundException": { "base": "This exception is thrown if a requested entity is not found. E.g., if a budget id doesn't exist for an account ID.", "refs": { } }, "Notification": { "base": "Notification model. Each budget may contain multiple notifications with different settings.", "refs": { "CreateNotificationRequest$Notification": null, "CreateSubscriberRequest$Notification": null, "DeleteNotificationRequest$Notification": null, "DeleteSubscriberRequest$Notification": null, "DescribeSubscribersForNotificationRequest$Notification": null, "NotificationWithSubscribers$Notification": null, "Notifications$member": null, "UpdateNotificationRequest$OldNotification": null, "UpdateNotificationRequest$NewNotification": null, "UpdateSubscriberRequest$Notification": null } }, "NotificationThreshold": { "base": "The threshold of the a notification. It should be a number between 0 and 100.", "refs": { "Notification$Threshold": null } }, "NotificationType": { "base": "The type of a notification. It should be ACTUAL or FORECASTED.", "refs": { "Notification$NotificationType": null } }, "NotificationWithSubscribers": { "base": "A structure to relate notification and a list of subscribers who belong to the notification.", "refs": { "NotificationWithSubscribersList$member": null } }, "NotificationWithSubscribersList": { "base": "A list of Notifications, each with a list of subscribers.", "refs": { "CreateBudgetRequest$NotificationsWithSubscribers": null } }, "Notifications": { "base": "A list of notifications.", "refs": { "DescribeNotificationsForBudgetResponse$Notifications": null } }, "NumericValue": { "base": "A string to represent NumericValue.", "refs": { "Spend$Amount": null } }, "Spend": { "base": "A structure represent either a cost spend or usage spend. Contains an amount and a unit.", "refs": { "Budget$BudgetLimit": null, "CalculatedSpend$ActualSpend": null, "CalculatedSpend$ForecastedSpend": null } }, "Subscriber": { "base": "Subscriber model. Each notification may contain multiple subscribers with different addresses.", "refs": { "CreateSubscriberRequest$Subscriber": null, "DeleteSubscriberRequest$Subscriber": null, "Subscribers$member": null, "UpdateSubscriberRequest$OldSubscriber": null, "UpdateSubscriberRequest$NewSubscriber": null } }, "Subscribers": { "base": "A list of subscribers.", "refs": { "CreateNotificationRequest$Subscribers": null, "DescribeSubscribersForNotificationResponse$Subscribers": null, "NotificationWithSubscribers$Subscribers": null } }, "SubscriptionType": { "base": "The subscription type of the subscriber. It can be SMS or EMAIL.", "refs": { "Subscriber$SubscriptionType": null } }, "TimePeriod": { "base": "A time period indicated the start date and end date of a budget.", "refs": { "Budget$TimePeriod": null } }, "TimeUnit": { "base": "The time unit of the budget. e.g. weekly, monthly, etc.", "refs": { "Budget$TimeUnit": null } }, "UpdateBudgetRequest": { "base": "Request of UpdateBudget", "refs": { } }, "UpdateBudgetResponse": { "base": "Response of UpdateBudget", "refs": { } }, "UpdateNotificationRequest": { "base": "Request of UpdateNotification", "refs": { } }, "UpdateNotificationResponse": { "base": "Response of UpdateNotification", "refs": { } }, "UpdateSubscriberRequest": { "base": "Request of UpdateSubscriber", "refs": { } }, "UpdateSubscriberResponse": { "base": "Response of UpdateSubscriber", "refs": { } }, "errorMessage": { "base": "The error message the exception carries.", "refs": { "CreationLimitExceededException$Message": null, "DuplicateRecordException$Message": null, "ExpiredNextTokenException$Message": null, "InternalErrorException$Message": null, "InvalidNextTokenException$Message": null, "InvalidParameterException$Message": null, "NotFoundException$Message": null } } } } aws-sdk-go-1.4.22/models/apis/budgets/2016-10-20/examples-1.json000077500000000000000000000000541300374646400233350ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/cloudformation/000077500000000000000000000000001300374646400210275ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudformation/2010-05-15/000077500000000000000000000000001300374646400220565ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudformation/2010-05-15/api-2.json000066400000000000000000001043341300374646400236660ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2010-05-15", "endpointPrefix":"cloudformation", "protocol":"query", "serviceFullName":"AWS CloudFormation", "signatureVersion":"v4", "xmlNamespace":"http://cloudformation.amazonaws.com/doc/2010-05-15/" }, "operations":{ "CancelUpdateStack":{ "name":"CancelUpdateStack", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelUpdateStackInput"} }, "ContinueUpdateRollback":{ "name":"ContinueUpdateRollback", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ContinueUpdateRollbackInput"}, "output":{ "shape":"ContinueUpdateRollbackOutput", "resultWrapper":"ContinueUpdateRollbackResult" } }, "CreateChangeSet":{ "name":"CreateChangeSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateChangeSetInput"}, "output":{ "shape":"CreateChangeSetOutput", "resultWrapper":"CreateChangeSetResult" }, "errors":[ {"shape":"AlreadyExistsException"}, {"shape":"InsufficientCapabilitiesException"}, {"shape":"LimitExceededException"} ] }, "CreateStack":{ "name":"CreateStack", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateStackInput"}, "output":{ "shape":"CreateStackOutput", "resultWrapper":"CreateStackResult" }, "errors":[ {"shape":"LimitExceededException"}, {"shape":"AlreadyExistsException"}, {"shape":"InsufficientCapabilitiesException"} ] }, "DeleteChangeSet":{ "name":"DeleteChangeSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteChangeSetInput"}, "output":{ "shape":"DeleteChangeSetOutput", "resultWrapper":"DeleteChangeSetResult" }, "errors":[ {"shape":"InvalidChangeSetStatusException"} ] }, "DeleteStack":{ "name":"DeleteStack", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteStackInput"} }, "DescribeAccountLimits":{ "name":"DescribeAccountLimits", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAccountLimitsInput"}, "output":{ "shape":"DescribeAccountLimitsOutput", "resultWrapper":"DescribeAccountLimitsResult" } }, "DescribeChangeSet":{ "name":"DescribeChangeSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeChangeSetInput"}, "output":{ "shape":"DescribeChangeSetOutput", "resultWrapper":"DescribeChangeSetResult" }, "errors":[ {"shape":"ChangeSetNotFoundException"} ] }, "DescribeStackEvents":{ "name":"DescribeStackEvents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeStackEventsInput"}, "output":{ "shape":"DescribeStackEventsOutput", "resultWrapper":"DescribeStackEventsResult" } }, "DescribeStackResource":{ "name":"DescribeStackResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeStackResourceInput"}, "output":{ "shape":"DescribeStackResourceOutput", "resultWrapper":"DescribeStackResourceResult" } }, "DescribeStackResources":{ "name":"DescribeStackResources", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeStackResourcesInput"}, "output":{ "shape":"DescribeStackResourcesOutput", "resultWrapper":"DescribeStackResourcesResult" } }, "DescribeStacks":{ "name":"DescribeStacks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeStacksInput"}, "output":{ "shape":"DescribeStacksOutput", "resultWrapper":"DescribeStacksResult" } }, "EstimateTemplateCost":{ "name":"EstimateTemplateCost", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EstimateTemplateCostInput"}, "output":{ "shape":"EstimateTemplateCostOutput", "resultWrapper":"EstimateTemplateCostResult" } }, "ExecuteChangeSet":{ "name":"ExecuteChangeSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ExecuteChangeSetInput"}, "output":{ "shape":"ExecuteChangeSetOutput", "resultWrapper":"ExecuteChangeSetResult" }, "errors":[ {"shape":"InvalidChangeSetStatusException"}, {"shape":"ChangeSetNotFoundException"} ] }, "GetStackPolicy":{ "name":"GetStackPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetStackPolicyInput"}, "output":{ "shape":"GetStackPolicyOutput", "resultWrapper":"GetStackPolicyResult" } }, "GetTemplate":{ "name":"GetTemplate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetTemplateInput"}, "output":{ "shape":"GetTemplateOutput", "resultWrapper":"GetTemplateResult" } }, "GetTemplateSummary":{ "name":"GetTemplateSummary", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetTemplateSummaryInput"}, "output":{ "shape":"GetTemplateSummaryOutput", "resultWrapper":"GetTemplateSummaryResult" } }, "ListChangeSets":{ "name":"ListChangeSets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListChangeSetsInput"}, "output":{ "shape":"ListChangeSetsOutput", "resultWrapper":"ListChangeSetsResult" } }, "ListStackResources":{ "name":"ListStackResources", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListStackResourcesInput"}, "output":{ "shape":"ListStackResourcesOutput", "resultWrapper":"ListStackResourcesResult" } }, "ListStacks":{ "name":"ListStacks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListStacksInput"}, "output":{ "shape":"ListStacksOutput", "resultWrapper":"ListStacksResult" } }, "SetStackPolicy":{ "name":"SetStackPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetStackPolicyInput"} }, "SignalResource":{ "name":"SignalResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SignalResourceInput"} }, "UpdateStack":{ "name":"UpdateStack", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateStackInput"}, "output":{ "shape":"UpdateStackOutput", "resultWrapper":"UpdateStackResult" }, "errors":[ {"shape":"InsufficientCapabilitiesException"} ] }, "ValidateTemplate":{ "name":"ValidateTemplate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ValidateTemplateInput"}, "output":{ "shape":"ValidateTemplateOutput", "resultWrapper":"ValidateTemplateResult" } } }, "shapes":{ "AccountLimit":{ "type":"structure", "members":{ "Name":{"shape":"LimitName"}, "Value":{"shape":"LimitValue"} } }, "AccountLimitList":{ "type":"list", "member":{"shape":"AccountLimit"} }, "AllowedValue":{"type":"string"}, "AllowedValues":{ "type":"list", "member":{"shape":"AllowedValue"} }, "AlreadyExistsException":{ "type":"structure", "members":{ }, "error":{ "code":"AlreadyExistsException", "httpStatusCode":400, "senderFault":true }, "exception":true }, "CancelUpdateStackInput":{ "type":"structure", "required":["StackName"], "members":{ "StackName":{"shape":"StackName"} } }, "Capabilities":{ "type":"list", "member":{"shape":"Capability"} }, "CapabilitiesReason":{"type":"string"}, "Capability":{ "type":"string", "enum":[ "CAPABILITY_IAM", "CAPABILITY_NAMED_IAM" ] }, "CausingEntity":{"type":"string"}, "Change":{ "type":"structure", "members":{ "Type":{"shape":"ChangeType"}, "ResourceChange":{"shape":"ResourceChange"} } }, "ChangeAction":{ "type":"string", "enum":[ "Add", "Modify", "Remove" ] }, "ChangeSetId":{ "type":"string", "min":1, "pattern":"arn:[-a-zA-Z0-9:/]*" }, "ChangeSetName":{ "type":"string", "max":128, "min":1, "pattern":"[a-zA-Z][-a-zA-Z0-9]*" }, "ChangeSetNameOrId":{ "type":"string", "max":1600, "min":1, "pattern":"[a-zA-Z][-a-zA-Z0-9]*|arn:[-a-zA-Z0-9:/]*" }, "ChangeSetNotFoundException":{ "type":"structure", "members":{ }, "error":{ "code":"ChangeSetNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ChangeSetStatus":{ "type":"string", "enum":[ "CREATE_PENDING", "CREATE_IN_PROGRESS", "CREATE_COMPLETE", "DELETE_COMPLETE", "FAILED" ] }, "ChangeSetStatusReason":{"type":"string"}, "ChangeSetSummaries":{ "type":"list", "member":{"shape":"ChangeSetSummary"} }, "ChangeSetSummary":{ "type":"structure", "members":{ "StackId":{"shape":"StackId"}, "StackName":{"shape":"StackName"}, "ChangeSetId":{"shape":"ChangeSetId"}, "ChangeSetName":{"shape":"ChangeSetName"}, "ExecutionStatus":{"shape":"ExecutionStatus"}, "Status":{"shape":"ChangeSetStatus"}, "StatusReason":{"shape":"ChangeSetStatusReason"}, "CreationTime":{"shape":"CreationTime"}, "Description":{"shape":"Description"} } }, "ChangeSource":{ "type":"string", "enum":[ "ResourceReference", "ParameterReference", "ResourceAttribute", "DirectModification", "Automatic" ] }, "ChangeType":{ "type":"string", "enum":["Resource"] }, "Changes":{ "type":"list", "member":{"shape":"Change"} }, "ClientToken":{ "type":"string", "max":128, "min":1 }, "ContinueUpdateRollbackInput":{ "type":"structure", "required":["StackName"], "members":{ "StackName":{"shape":"StackNameOrId"}, "RoleARN":{"shape":"RoleARN"} } }, "ContinueUpdateRollbackOutput":{ "type":"structure", "members":{ } }, "CreateChangeSetInput":{ "type":"structure", "required":[ "StackName", "ChangeSetName" ], "members":{ "StackName":{"shape":"StackNameOrId"}, "TemplateBody":{"shape":"TemplateBody"}, "TemplateURL":{"shape":"TemplateURL"}, "UsePreviousTemplate":{"shape":"UsePreviousTemplate"}, "Parameters":{"shape":"Parameters"}, "Capabilities":{"shape":"Capabilities"}, "ResourceTypes":{"shape":"ResourceTypes"}, "RoleARN":{"shape":"RoleARN"}, "NotificationARNs":{"shape":"NotificationARNs"}, "Tags":{"shape":"Tags"}, "ChangeSetName":{"shape":"ChangeSetName"}, "ClientToken":{"shape":"ClientToken"}, "Description":{"shape":"Description"} } }, "CreateChangeSetOutput":{ "type":"structure", "members":{ "Id":{"shape":"ChangeSetId"} } }, "CreateStackInput":{ "type":"structure", "required":["StackName"], "members":{ "StackName":{"shape":"StackName"}, "TemplateBody":{"shape":"TemplateBody"}, "TemplateURL":{"shape":"TemplateURL"}, "Parameters":{"shape":"Parameters"}, "DisableRollback":{"shape":"DisableRollback"}, "TimeoutInMinutes":{"shape":"TimeoutMinutes"}, "NotificationARNs":{"shape":"NotificationARNs"}, "Capabilities":{"shape":"Capabilities"}, "ResourceTypes":{"shape":"ResourceTypes"}, "RoleARN":{"shape":"RoleARN"}, "OnFailure":{"shape":"OnFailure"}, "StackPolicyBody":{"shape":"StackPolicyBody"}, "StackPolicyURL":{"shape":"StackPolicyURL"}, "Tags":{"shape":"Tags"} } }, "CreateStackOutput":{ "type":"structure", "members":{ "StackId":{"shape":"StackId"} } }, "CreationTime":{"type":"timestamp"}, "DeleteChangeSetInput":{ "type":"structure", "required":["ChangeSetName"], "members":{ "ChangeSetName":{"shape":"ChangeSetNameOrId"}, "StackName":{"shape":"StackNameOrId"} } }, "DeleteChangeSetOutput":{ "type":"structure", "members":{ } }, "DeleteStackInput":{ "type":"structure", "required":["StackName"], "members":{ "StackName":{"shape":"StackName"}, "RetainResources":{"shape":"RetainResources"}, "RoleARN":{"shape":"RoleARN"} } }, "DeletionTime":{"type":"timestamp"}, "DescribeAccountLimitsInput":{ "type":"structure", "members":{ "NextToken":{"shape":"NextToken"} } }, "DescribeAccountLimitsOutput":{ "type":"structure", "members":{ "AccountLimits":{"shape":"AccountLimitList"}, "NextToken":{"shape":"NextToken"} } }, "DescribeChangeSetInput":{ "type":"structure", "required":["ChangeSetName"], "members":{ "ChangeSetName":{"shape":"ChangeSetNameOrId"}, "StackName":{"shape":"StackNameOrId"}, "NextToken":{"shape":"NextToken"} } }, "DescribeChangeSetOutput":{ "type":"structure", "members":{ "ChangeSetName":{"shape":"ChangeSetName"}, "ChangeSetId":{"shape":"ChangeSetId"}, "StackId":{"shape":"StackId"}, "StackName":{"shape":"StackName"}, "Description":{"shape":"Description"}, "Parameters":{"shape":"Parameters"}, "CreationTime":{"shape":"CreationTime"}, "ExecutionStatus":{"shape":"ExecutionStatus"}, "Status":{"shape":"ChangeSetStatus"}, "StatusReason":{"shape":"ChangeSetStatusReason"}, "NotificationARNs":{"shape":"NotificationARNs"}, "Capabilities":{"shape":"Capabilities"}, "Tags":{"shape":"Tags"}, "Changes":{"shape":"Changes"}, "NextToken":{"shape":"NextToken"} } }, "DescribeStackEventsInput":{ "type":"structure", "members":{ "StackName":{"shape":"StackName"}, "NextToken":{"shape":"NextToken"} } }, "DescribeStackEventsOutput":{ "type":"structure", "members":{ "StackEvents":{"shape":"StackEvents"}, "NextToken":{"shape":"NextToken"} } }, "DescribeStackResourceInput":{ "type":"structure", "required":[ "StackName", "LogicalResourceId" ], "members":{ "StackName":{"shape":"StackName"}, "LogicalResourceId":{"shape":"LogicalResourceId"} } }, "DescribeStackResourceOutput":{ "type":"structure", "members":{ "StackResourceDetail":{"shape":"StackResourceDetail"} } }, "DescribeStackResourcesInput":{ "type":"structure", "members":{ "StackName":{"shape":"StackName"}, "LogicalResourceId":{"shape":"LogicalResourceId"}, "PhysicalResourceId":{"shape":"PhysicalResourceId"} } }, "DescribeStackResourcesOutput":{ "type":"structure", "members":{ "StackResources":{"shape":"StackResources"} } }, "DescribeStacksInput":{ "type":"structure", "members":{ "StackName":{"shape":"StackName"}, "NextToken":{"shape":"NextToken"} } }, "DescribeStacksOutput":{ "type":"structure", "members":{ "Stacks":{"shape":"Stacks"}, "NextToken":{"shape":"NextToken"} } }, "Description":{ "type":"string", "max":1024, "min":1 }, "DisableRollback":{"type":"boolean"}, "EstimateTemplateCostInput":{ "type":"structure", "members":{ "TemplateBody":{"shape":"TemplateBody"}, "TemplateURL":{"shape":"TemplateURL"}, "Parameters":{"shape":"Parameters"} } }, "EstimateTemplateCostOutput":{ "type":"structure", "members":{ "Url":{"shape":"Url"} } }, "EvaluationType":{ "type":"string", "enum":[ "Static", "Dynamic" ] }, "EventId":{"type":"string"}, "ExecuteChangeSetInput":{ "type":"structure", "required":["ChangeSetName"], "members":{ "ChangeSetName":{"shape":"ChangeSetNameOrId"}, "StackName":{"shape":"StackNameOrId"} } }, "ExecuteChangeSetOutput":{ "type":"structure", "members":{ } }, "ExecutionStatus":{ "type":"string", "enum":[ "UNAVAILABLE", "AVAILABLE", "EXECUTE_IN_PROGRESS", "EXECUTE_COMPLETE", "EXECUTE_FAILED", "OBSOLETE" ] }, "GetStackPolicyInput":{ "type":"structure", "required":["StackName"], "members":{ "StackName":{"shape":"StackName"} } }, "GetStackPolicyOutput":{ "type":"structure", "members":{ "StackPolicyBody":{"shape":"StackPolicyBody"} } }, "GetTemplateInput":{ "type":"structure", "required":["StackName"], "members":{ "StackName":{"shape":"StackName"} } }, "GetTemplateOutput":{ "type":"structure", "members":{ "TemplateBody":{"shape":"TemplateBody"} } }, "GetTemplateSummaryInput":{ "type":"structure", "members":{ "TemplateBody":{"shape":"TemplateBody"}, "TemplateURL":{"shape":"TemplateURL"}, "StackName":{"shape":"StackNameOrId"} } }, "GetTemplateSummaryOutput":{ "type":"structure", "members":{ "Parameters":{"shape":"ParameterDeclarations"}, "Description":{"shape":"Description"}, "Capabilities":{"shape":"Capabilities"}, "CapabilitiesReason":{"shape":"CapabilitiesReason"}, "ResourceTypes":{"shape":"ResourceTypes"}, "Version":{"shape":"Version"}, "Metadata":{"shape":"Metadata"} } }, "InsufficientCapabilitiesException":{ "type":"structure", "members":{ }, "error":{ "code":"InsufficientCapabilitiesException", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidChangeSetStatusException":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidChangeSetStatus", "httpStatusCode":400, "senderFault":true }, "exception":true }, "LastUpdatedTime":{"type":"timestamp"}, "LimitExceededException":{ "type":"structure", "members":{ }, "error":{ "code":"LimitExceededException", "httpStatusCode":400, "senderFault":true }, "exception":true }, "LimitName":{"type":"string"}, "LimitValue":{"type":"integer"}, "ListChangeSetsInput":{ "type":"structure", "required":["StackName"], "members":{ "StackName":{"shape":"StackNameOrId"}, "NextToken":{"shape":"NextToken"} } }, "ListChangeSetsOutput":{ "type":"structure", "members":{ "Summaries":{"shape":"ChangeSetSummaries"}, "NextToken":{"shape":"NextToken"} } }, "ListStackResourcesInput":{ "type":"structure", "required":["StackName"], "members":{ "StackName":{"shape":"StackName"}, "NextToken":{"shape":"NextToken"} } }, "ListStackResourcesOutput":{ "type":"structure", "members":{ "StackResourceSummaries":{"shape":"StackResourceSummaries"}, "NextToken":{"shape":"NextToken"} } }, "ListStacksInput":{ "type":"structure", "members":{ "NextToken":{"shape":"NextToken"}, "StackStatusFilter":{"shape":"StackStatusFilter"} } }, "ListStacksOutput":{ "type":"structure", "members":{ "StackSummaries":{"shape":"StackSummaries"}, "NextToken":{"shape":"NextToken"} } }, "LogicalResourceId":{"type":"string"}, "Metadata":{"type":"string"}, "NextToken":{ "type":"string", "max":1024, "min":1 }, "NoEcho":{"type":"boolean"}, "NotificationARN":{"type":"string"}, "NotificationARNs":{ "type":"list", "member":{"shape":"NotificationARN"}, "max":5 }, "OnFailure":{ "type":"string", "enum":[ "DO_NOTHING", "ROLLBACK", "DELETE" ] }, "Output":{ "type":"structure", "members":{ "OutputKey":{"shape":"OutputKey"}, "OutputValue":{"shape":"OutputValue"}, "Description":{"shape":"Description"} } }, "OutputKey":{"type":"string"}, "OutputValue":{"type":"string"}, "Outputs":{ "type":"list", "member":{"shape":"Output"} }, "Parameter":{ "type":"structure", "members":{ "ParameterKey":{"shape":"ParameterKey"}, "ParameterValue":{"shape":"ParameterValue"}, "UsePreviousValue":{"shape":"UsePreviousValue"} } }, "ParameterConstraints":{ "type":"structure", "members":{ "AllowedValues":{"shape":"AllowedValues"} } }, "ParameterDeclaration":{ "type":"structure", "members":{ "ParameterKey":{"shape":"ParameterKey"}, "DefaultValue":{"shape":"ParameterValue"}, "ParameterType":{"shape":"ParameterType"}, "NoEcho":{"shape":"NoEcho"}, "Description":{"shape":"Description"}, "ParameterConstraints":{"shape":"ParameterConstraints"} } }, "ParameterDeclarations":{ "type":"list", "member":{"shape":"ParameterDeclaration"} }, "ParameterKey":{"type":"string"}, "ParameterType":{"type":"string"}, "ParameterValue":{"type":"string"}, "Parameters":{ "type":"list", "member":{"shape":"Parameter"} }, "PhysicalResourceId":{"type":"string"}, "PropertyName":{"type":"string"}, "Replacement":{ "type":"string", "enum":[ "True", "False", "Conditional" ] }, "RequiresRecreation":{ "type":"string", "enum":[ "Never", "Conditionally", "Always" ] }, "ResourceAttribute":{ "type":"string", "enum":[ "Properties", "Metadata", "CreationPolicy", "UpdatePolicy", "DeletionPolicy", "Tags" ] }, "ResourceChange":{ "type":"structure", "members":{ "Action":{"shape":"ChangeAction"}, "LogicalResourceId":{"shape":"LogicalResourceId"}, "PhysicalResourceId":{"shape":"PhysicalResourceId"}, "ResourceType":{"shape":"ResourceType"}, "Replacement":{"shape":"Replacement"}, "Scope":{"shape":"Scope"}, "Details":{"shape":"ResourceChangeDetails"} } }, "ResourceChangeDetail":{ "type":"structure", "members":{ "Target":{"shape":"ResourceTargetDefinition"}, "Evaluation":{"shape":"EvaluationType"}, "ChangeSource":{"shape":"ChangeSource"}, "CausingEntity":{"shape":"CausingEntity"} } }, "ResourceChangeDetails":{ "type":"list", "member":{"shape":"ResourceChangeDetail"} }, "ResourceProperties":{"type":"string"}, "ResourceSignalStatus":{ "type":"string", "enum":[ "SUCCESS", "FAILURE" ] }, "ResourceSignalUniqueId":{ "type":"string", "max":64, "min":1 }, "ResourceStatus":{ "type":"string", "enum":[ "CREATE_IN_PROGRESS", "CREATE_FAILED", "CREATE_COMPLETE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "DELETE_SKIPPED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED", "UPDATE_COMPLETE" ] }, "ResourceStatusReason":{"type":"string"}, "ResourceTargetDefinition":{ "type":"structure", "members":{ "Attribute":{"shape":"ResourceAttribute"}, "Name":{"shape":"PropertyName"}, "RequiresRecreation":{"shape":"RequiresRecreation"} } }, "ResourceType":{ "type":"string", "max":256, "min":1 }, "ResourceTypes":{ "type":"list", "member":{"shape":"ResourceType"} }, "RetainResources":{ "type":"list", "member":{"shape":"LogicalResourceId"} }, "RoleARN":{ "type":"string", "max":2048, "min":20 }, "Scope":{ "type":"list", "member":{"shape":"ResourceAttribute"} }, "SetStackPolicyInput":{ "type":"structure", "required":["StackName"], "members":{ "StackName":{"shape":"StackName"}, "StackPolicyBody":{"shape":"StackPolicyBody"}, "StackPolicyURL":{"shape":"StackPolicyURL"} } }, "SignalResourceInput":{ "type":"structure", "required":[ "StackName", "LogicalResourceId", "UniqueId", "Status" ], "members":{ "StackName":{"shape":"StackNameOrId"}, "LogicalResourceId":{"shape":"LogicalResourceId"}, "UniqueId":{"shape":"ResourceSignalUniqueId"}, "Status":{"shape":"ResourceSignalStatus"} } }, "Stack":{ "type":"structure", "required":[ "StackName", "CreationTime", "StackStatus" ], "members":{ "StackId":{"shape":"StackId"}, "StackName":{"shape":"StackName"}, "Description":{"shape":"Description"}, "Parameters":{"shape":"Parameters"}, "CreationTime":{"shape":"CreationTime"}, "LastUpdatedTime":{"shape":"LastUpdatedTime"}, "StackStatus":{"shape":"StackStatus"}, "StackStatusReason":{"shape":"StackStatusReason"}, "DisableRollback":{"shape":"DisableRollback"}, "NotificationARNs":{"shape":"NotificationARNs"}, "TimeoutInMinutes":{"shape":"TimeoutMinutes"}, "Capabilities":{"shape":"Capabilities"}, "Outputs":{"shape":"Outputs"}, "RoleARN":{"shape":"RoleARN"}, "Tags":{"shape":"Tags"} } }, "StackEvent":{ "type":"structure", "required":[ "StackId", "EventId", "StackName", "Timestamp" ], "members":{ "StackId":{"shape":"StackId"}, "EventId":{"shape":"EventId"}, "StackName":{"shape":"StackName"}, "LogicalResourceId":{"shape":"LogicalResourceId"}, "PhysicalResourceId":{"shape":"PhysicalResourceId"}, "ResourceType":{"shape":"ResourceType"}, "Timestamp":{"shape":"Timestamp"}, "ResourceStatus":{"shape":"ResourceStatus"}, "ResourceStatusReason":{"shape":"ResourceStatusReason"}, "ResourceProperties":{"shape":"ResourceProperties"} } }, "StackEvents":{ "type":"list", "member":{"shape":"StackEvent"} }, "StackId":{"type":"string"}, "StackName":{"type":"string"}, "StackNameOrId":{ "type":"string", "min":1, "pattern":"([a-zA-Z][-a-zA-Z0-9]*)|(arn:\\b(aws|aws-us-gov|aws-cn)\\b:[-a-zA-Z0-9:/._+]*)" }, "StackPolicyBody":{ "type":"string", "max":16384, "min":1 }, "StackPolicyDuringUpdateBody":{ "type":"string", "max":16384, "min":1 }, "StackPolicyDuringUpdateURL":{ "type":"string", "max":1350, "min":1 }, "StackPolicyURL":{ "type":"string", "max":1350, "min":1 }, "StackResource":{ "type":"structure", "required":[ "LogicalResourceId", "ResourceType", "Timestamp", "ResourceStatus" ], "members":{ "StackName":{"shape":"StackName"}, "StackId":{"shape":"StackId"}, "LogicalResourceId":{"shape":"LogicalResourceId"}, "PhysicalResourceId":{"shape":"PhysicalResourceId"}, "ResourceType":{"shape":"ResourceType"}, "Timestamp":{"shape":"Timestamp"}, "ResourceStatus":{"shape":"ResourceStatus"}, "ResourceStatusReason":{"shape":"ResourceStatusReason"}, "Description":{"shape":"Description"} } }, "StackResourceDetail":{ "type":"structure", "required":[ "LogicalResourceId", "ResourceType", "LastUpdatedTimestamp", "ResourceStatus" ], "members":{ "StackName":{"shape":"StackName"}, "StackId":{"shape":"StackId"}, "LogicalResourceId":{"shape":"LogicalResourceId"}, "PhysicalResourceId":{"shape":"PhysicalResourceId"}, "ResourceType":{"shape":"ResourceType"}, "LastUpdatedTimestamp":{"shape":"Timestamp"}, "ResourceStatus":{"shape":"ResourceStatus"}, "ResourceStatusReason":{"shape":"ResourceStatusReason"}, "Description":{"shape":"Description"}, "Metadata":{"shape":"Metadata"} } }, "StackResourceSummaries":{ "type":"list", "member":{"shape":"StackResourceSummary"} }, "StackResourceSummary":{ "type":"structure", "required":[ "LogicalResourceId", "ResourceType", "LastUpdatedTimestamp", "ResourceStatus" ], "members":{ "LogicalResourceId":{"shape":"LogicalResourceId"}, "PhysicalResourceId":{"shape":"PhysicalResourceId"}, "ResourceType":{"shape":"ResourceType"}, "LastUpdatedTimestamp":{"shape":"Timestamp"}, "ResourceStatus":{"shape":"ResourceStatus"}, "ResourceStatusReason":{"shape":"ResourceStatusReason"} } }, "StackResources":{ "type":"list", "member":{"shape":"StackResource"} }, "StackStatus":{ "type":"string", "enum":[ "CREATE_IN_PROGRESS", "CREATE_FAILED", "CREATE_COMPLETE", "ROLLBACK_IN_PROGRESS", "ROLLBACK_FAILED", "ROLLBACK_COMPLETE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "UPDATE_IN_PROGRESS", "UPDATE_COMPLETE_CLEANUP_IN_PROGRESS", "UPDATE_COMPLETE", "UPDATE_ROLLBACK_IN_PROGRESS", "UPDATE_ROLLBACK_FAILED", "UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS", "UPDATE_ROLLBACK_COMPLETE" ] }, "StackStatusFilter":{ "type":"list", "member":{"shape":"StackStatus"} }, "StackStatusReason":{"type":"string"}, "StackSummaries":{ "type":"list", "member":{"shape":"StackSummary"} }, "StackSummary":{ "type":"structure", "required":[ "StackName", "CreationTime", "StackStatus" ], "members":{ "StackId":{"shape":"StackId"}, "StackName":{"shape":"StackName"}, "TemplateDescription":{"shape":"TemplateDescription"}, "CreationTime":{"shape":"CreationTime"}, "LastUpdatedTime":{"shape":"LastUpdatedTime"}, "DeletionTime":{"shape":"DeletionTime"}, "StackStatus":{"shape":"StackStatus"}, "StackStatusReason":{"shape":"StackStatusReason"} } }, "Stacks":{ "type":"list", "member":{"shape":"Stack"} }, "Tag":{ "type":"structure", "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{"type":"string"}, "TagValue":{"type":"string"}, "Tags":{ "type":"list", "member":{"shape":"Tag"} }, "TemplateBody":{ "type":"string", "min":1 }, "TemplateDescription":{"type":"string"}, "TemplateParameter":{ "type":"structure", "members":{ "ParameterKey":{"shape":"ParameterKey"}, "DefaultValue":{"shape":"ParameterValue"}, "NoEcho":{"shape":"NoEcho"}, "Description":{"shape":"Description"} } }, "TemplateParameters":{ "type":"list", "member":{"shape":"TemplateParameter"} }, "TemplateURL":{ "type":"string", "max":1024, "min":1 }, "TimeoutMinutes":{ "type":"integer", "min":1 }, "Timestamp":{"type":"timestamp"}, "UpdateStackInput":{ "type":"structure", "required":["StackName"], "members":{ "StackName":{"shape":"StackName"}, "TemplateBody":{"shape":"TemplateBody"}, "TemplateURL":{"shape":"TemplateURL"}, "UsePreviousTemplate":{"shape":"UsePreviousTemplate"}, "StackPolicyDuringUpdateBody":{"shape":"StackPolicyDuringUpdateBody"}, "StackPolicyDuringUpdateURL":{"shape":"StackPolicyDuringUpdateURL"}, "Parameters":{"shape":"Parameters"}, "Capabilities":{"shape":"Capabilities"}, "ResourceTypes":{"shape":"ResourceTypes"}, "RoleARN":{"shape":"RoleARN"}, "StackPolicyBody":{"shape":"StackPolicyBody"}, "StackPolicyURL":{"shape":"StackPolicyURL"}, "NotificationARNs":{"shape":"NotificationARNs"}, "Tags":{"shape":"Tags"} } }, "UpdateStackOutput":{ "type":"structure", "members":{ "StackId":{"shape":"StackId"} } }, "Url":{"type":"string"}, "UsePreviousTemplate":{"type":"boolean"}, "UsePreviousValue":{"type":"boolean"}, "ValidateTemplateInput":{ "type":"structure", "members":{ "TemplateBody":{"shape":"TemplateBody"}, "TemplateURL":{"shape":"TemplateURL"} } }, "ValidateTemplateOutput":{ "type":"structure", "members":{ "Parameters":{"shape":"TemplateParameters"}, "Description":{"shape":"Description"}, "Capabilities":{"shape":"Capabilities"}, "CapabilitiesReason":{"shape":"CapabilitiesReason"} } }, "Version":{"type":"string"} } } aws-sdk-go-1.4.22/models/apis/cloudformation/2010-05-15/docs-2.json000066400000000000000000002577101300374646400240540ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS CloudFormation

        AWS CloudFormation enables you to create and manage AWS infrastructure deployments predictably and repeatedly. AWS CloudFormation helps you leverage AWS products such as Amazon EC2, EBS, Amazon SNS, ELB, and Auto Scaling to build highly-reliable, highly scalable, cost effective applications without worrying about creating and configuring the underlying AWS infrastructure.

        With AWS CloudFormation, you declare all of your resources and dependencies in a template file. The template defines a collection of resources as a single unit called a stack. AWS CloudFormation creates and deletes all member resources of the stack together and manages all dependencies between the resources for you.

        For more information about this product, go to the CloudFormation Product Page.

        Amazon CloudFormation makes use of other AWS products. If you need additional technical information about a specific AWS product, you can find the product's technical documentation at http://docs.aws.amazon.com/.

        ", "operations": { "CancelUpdateStack": "

        Cancels an update on the specified stack. If the call completes successfully, the stack rolls back the update and reverts to the previous stack configuration.

        You can cancel only stacks that are in the UPDATE_IN_PROGRESS state.

        ", "ContinueUpdateRollback": "

        For a specified stack that is in the UPDATE_ROLLBACK_FAILED state, continues rolling it back to the UPDATE_ROLLBACK_COMPLETE state. Depending on the cause of the failure, you can manually fix the error and continue the rollback. By continuing the rollback, you can return your stack to a working state (the UPDATE_ROLLBACK_COMPLETE state), and then try to update the stack again.

        A stack goes into the UPDATE_ROLLBACK_FAILED state when AWS CloudFormation cannot roll back all changes after a failed stack update. For example, you might have a stack that is rolling back to an old database instance that was deleted outside of AWS CloudFormation. Because AWS CloudFormation doesn't know the database was deleted, it assumes that the database instance still exists and attempts to roll back to it, causing the update rollback to fail.

        ", "CreateChangeSet": "

        Creates a list of changes for a stack. AWS CloudFormation generates the change set by comparing the stack's information with the information that you submit. A change set can help you understand which resources AWS CloudFormation will change and how it will change them before you update your stack. Change sets allow you to check before you make a change so that you don't delete or replace critical resources.

        AWS CloudFormation doesn't make any changes to the stack when you create a change set. To make the specified changes, you must execute the change set by using the ExecuteChangeSet action.

        After the call successfully completes, AWS CloudFormation starts creating the change set. To check the status of the change set, use the DescribeChangeSet action.

        ", "CreateStack": "

        Creates a stack as specified in the template. After the call completes successfully, the stack creation starts. You can check the status of the stack via the DescribeStacks API.

        ", "DeleteChangeSet": "

        Deletes the specified change set. Deleting change sets ensures that no one executes the wrong change set.

        If the call successfully completes, AWS CloudFormation successfully deleted the change set.

        ", "DeleteStack": "

        Deletes a specified stack. Once the call completes successfully, stack deletion starts. Deleted stacks do not show up in the DescribeStacks API if the deletion has been completed successfully.

        ", "DescribeAccountLimits": "

        Retrieves your account's AWS CloudFormation limits, such as the maximum number of stacks that you can create in your account.

        ", "DescribeChangeSet": "

        Returns the inputs for the change set and a list of changes that AWS CloudFormation will make if you execute the change set. For more information, see Updating Stacks Using Change Sets in the AWS CloudFormation User Guide.

        ", "DescribeStackEvents": "

        Returns all stack related events for a specified stack in reverse chronological order. For more information about a stack's event history, go to Stacks in the AWS CloudFormation User Guide.

        You can list events for stacks that have failed to create or have been deleted by specifying the unique stack identifier (stack ID).

        ", "DescribeStackResource": "

        Returns a description of the specified resource in the specified stack.

        For deleted stacks, DescribeStackResource returns resource information for up to 90 days after the stack has been deleted.

        ", "DescribeStackResources": "

        Returns AWS resource descriptions for running and deleted stacks. If StackName is specified, all the associated resources that are part of the stack are returned. If PhysicalResourceId is specified, the associated resources of the stack that the resource belongs to are returned.

        Only the first 100 resources will be returned. If your stack has more resources than this, you should use ListStackResources instead.

        For deleted stacks, DescribeStackResources returns resource information for up to 90 days after the stack has been deleted.

        You must specify either StackName or PhysicalResourceId, but not both. In addition, you can specify LogicalResourceId to filter the returned result. For more information about resources, the LogicalResourceId and PhysicalResourceId, go to the AWS CloudFormation User Guide.

        A ValidationError is returned if you specify both StackName and PhysicalResourceId in the same request.

        ", "DescribeStacks": "

        Returns the description for the specified stack; if no stack name was specified, then it returns the description for all the stacks created.

        If the stack does not exist, an AmazonCloudFormationException is returned.

        ", "EstimateTemplateCost": "

        Returns the estimated monthly cost of a template. The return value is an AWS Simple Monthly Calculator URL with a query string that describes the resources required to run the template.

        ", "ExecuteChangeSet": "

        Updates a stack using the input information that was provided when the specified change set was created. After the call successfully completes, AWS CloudFormation starts updating the stack. Use the DescribeStacks action to view the status of the update.

        When you execute a change set, AWS CloudFormation deletes all other change sets associated with the stack because they aren't valid for the updated stack.

        If a stack policy is associated with the stack, AWS CloudFormation enforces the policy during the update. You can't specify a temporary stack policy that overrides the current policy.

        ", "GetStackPolicy": "

        Returns the stack policy for a specified stack. If a stack doesn't have a policy, a null value is returned.

        ", "GetTemplate": "

        Returns the template body for a specified stack. You can get the template for running or deleted stacks.

        For deleted stacks, GetTemplate returns the template for up to 90 days after the stack has been deleted.

        If the template does not exist, a ValidationError is returned.

        ", "GetTemplateSummary": "

        Returns information about a new or existing template. The GetTemplateSummary action is useful for viewing parameter information, such as default parameter values and parameter types, before you create or update a stack.

        You can use the GetTemplateSummary action when you submit a template, or you can get template information for a running or deleted stack.

        For deleted stacks, GetTemplateSummary returns the template information for up to 90 days after the stack has been deleted. If the template does not exist, a ValidationError is returned.

        ", "ListChangeSets": "

        Returns the ID and status of each active change set for a stack. For example, AWS CloudFormation lists change sets that are in the CREATE_IN_PROGRESS or CREATE_PENDING state.

        ", "ListStackResources": "

        Returns descriptions of all resources of the specified stack.

        For deleted stacks, ListStackResources returns resource information for up to 90 days after the stack has been deleted.

        ", "ListStacks": "

        Returns the summary information for stacks whose status matches the specified StackStatusFilter. Summary information for stacks that have been deleted is kept for 90 days after the stack is deleted. If no StackStatusFilter is specified, summary information for all stacks is returned (including existing stacks and stacks that have been deleted).

        ", "SetStackPolicy": "

        Sets a stack policy for a specified stack.

        ", "SignalResource": "

        Sends a signal to the specified resource with a success or failure status. You can use the SignalResource API in conjunction with a creation policy or update policy. AWS CloudFormation doesn't proceed with a stack creation or update until resources receive the required number of signals or the timeout period is exceeded. The SignalResource API is useful in cases where you want to send signals from anywhere other than an Amazon EC2 instance.

        ", "UpdateStack": "

        Updates a stack as specified in the template. After the call completes successfully, the stack update starts. You can check the status of the stack via the DescribeStacks action.

        To get a copy of the template for an existing stack, you can use the GetTemplate action.

        For more information about creating an update template, updating a stack, and monitoring the progress of the update, see Updating a Stack.

        ", "ValidateTemplate": "

        Validates a specified template. AWS CloudFormation first checks if the template is valid JSON. If it isn't, AWS CloudFormation checks if the template is valid YAML. If both these checks fail, AWS CloudFormation returns a template validation error.

        " }, "shapes": { "AccountLimit": { "base": "

        The AccountLimit data type.

        ", "refs": { "AccountLimitList$member": null } }, "AccountLimitList": { "base": null, "refs": { "DescribeAccountLimitsOutput$AccountLimits": "

        An account limit structure that contain a list of AWS CloudFormation account limits and their values.

        " } }, "AllowedValue": { "base": null, "refs": { "AllowedValues$member": null } }, "AllowedValues": { "base": null, "refs": { "ParameterConstraints$AllowedValues": "

        A list of values that are permitted for a parameter.

        " } }, "AlreadyExistsException": { "base": "

        Resource with the name requested already exists.

        ", "refs": { } }, "CancelUpdateStackInput": { "base": "

        The input for the CancelUpdateStack action.

        ", "refs": { } }, "Capabilities": { "base": null, "refs": { "CreateChangeSetInput$Capabilities": "

        A list of values that you must specify before AWS CloudFormation can update certain stacks. Some stack templates might include resources that can affect permissions in your AWS account, for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge their capabilities by specifying this parameter.

        The only valid values are CAPABILITY_IAM and CAPABILITY_NAMED_IAM. The following resources require you to specify this parameter: AWS::IAM::AccessKey, AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, and AWS::IAM::UserToGroupAddition. If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.

        If you have IAM resources, you can specify either capability. If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM. If you don't specify this parameter, this action returns an InsufficientCapabilities error.

        For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates.

        ", "CreateStackInput$Capabilities": "

        A list of values that you must specify before AWS CloudFormation can create certain stacks. Some stack templates might include resources that can affect permissions in your AWS account, for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge their capabilities by specifying this parameter.

        The only valid values are CAPABILITY_IAM and CAPABILITY_NAMED_IAM. The following resources require you to specify this parameter: AWS::IAM::AccessKey, AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, and AWS::IAM::UserToGroupAddition. If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.

        If you have IAM resources, you can specify either capability. If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM. If you don't specify this parameter, this action returns an InsufficientCapabilities error.

        For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates.

        ", "DescribeChangeSetOutput$Capabilities": "

        If you execute the change set, the list of capabilities that were explicitly acknowledged when the change set was created.

        ", "GetTemplateSummaryOutput$Capabilities": "

        The capabilities found within the template. If your template contains IAM resources, you must specify the CAPABILITY_IAM or CAPABILITY_NAMED_IAM value for this parameter when you use the CreateStack or UpdateStack actions with your template; otherwise, those actions return an InsufficientCapabilities error.

        For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates.

        ", "Stack$Capabilities": "

        The capabilities allowed in the stack.

        ", "UpdateStackInput$Capabilities": "

        A list of values that you must specify before AWS CloudFormation can update certain stacks. Some stack templates might include resources that can affect permissions in your AWS account, for example, by creating new AWS Identity and Access Management (IAM) users. For those stacks, you must explicitly acknowledge their capabilities by specifying this parameter.

        The only valid values are CAPABILITY_IAM and CAPABILITY_NAMED_IAM. The following resources require you to specify this parameter: AWS::IAM::AccessKey, AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, and AWS::IAM::UserToGroupAddition. If your stack template contains these resources, we recommend that you review all permissions associated with them and edit their permissions if necessary.

        If you have IAM resources, you can specify either capability. If you have IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM. If you don't specify this parameter, this action returns an InsufficientCapabilities error.

        For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates.

        ", "ValidateTemplateOutput$Capabilities": "

        The capabilities found within the template. If your template contains IAM resources, you must specify the CAPABILITY_IAM or CAPABILITY_NAMED_IAM value for this parameter when you use the CreateStack or UpdateStack actions with your template; otherwise, those actions return an InsufficientCapabilities error.

        For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates.

        " } }, "CapabilitiesReason": { "base": null, "refs": { "GetTemplateSummaryOutput$CapabilitiesReason": "

        The list of resources that generated the values in the Capabilities response element.

        ", "ValidateTemplateOutput$CapabilitiesReason": "

        The list of resources that generated the values in the Capabilities response element.

        " } }, "Capability": { "base": null, "refs": { "Capabilities$member": null } }, "CausingEntity": { "base": null, "refs": { "ResourceChangeDetail$CausingEntity": "

        The identity of the entity that triggered this change. This entity is a member of the group that is specified by the ChangeSource field. For example, if you modified the value of the KeyPairName parameter, the CausingEntity is the name of the parameter (KeyPairName).

        If the ChangeSource value is DirectModification, no value is given for CausingEntity.

        " } }, "Change": { "base": "

        The Change structure describes the changes AWS CloudFormation will perform if you execute the change set.

        ", "refs": { "Changes$member": null } }, "ChangeAction": { "base": null, "refs": { "ResourceChange$Action": "

        The action that AWS CloudFormation takes on the resource, such as Add (adds a new resource), Modify (changes a resource), or Remove (deletes a resource).

        " } }, "ChangeSetId": { "base": null, "refs": { "ChangeSetSummary$ChangeSetId": "

        The ID of the change set.

        ", "CreateChangeSetOutput$Id": "

        The Amazon Resource Name (ARN) of the change set.

        ", "DescribeChangeSetOutput$ChangeSetId": "

        The ARN of the change set.

        " } }, "ChangeSetName": { "base": null, "refs": { "ChangeSetSummary$ChangeSetName": "

        The name of the change set.

        ", "CreateChangeSetInput$ChangeSetName": "

        The name of the change set. The name must be unique among all change sets that are associated with the specified stack.

        A change set name can contain only alphanumeric, case sensitive characters and hyphens. It must start with an alphabetic character and cannot exceed 128 characters.

        ", "DescribeChangeSetOutput$ChangeSetName": "

        The name of the change set.

        " } }, "ChangeSetNameOrId": { "base": null, "refs": { "DeleteChangeSetInput$ChangeSetName": "

        The name or Amazon Resource Name (ARN) of the change set that you want to delete.

        ", "DescribeChangeSetInput$ChangeSetName": "

        The name or Amazon Resource Name (ARN) of the change set that you want to describe.

        ", "ExecuteChangeSetInput$ChangeSetName": "

        The name or ARN of the change set that you want use to update the specified stack.

        " } }, "ChangeSetNotFoundException": { "base": "

        The specified change set name or ID doesn't exit. To view valid change sets for a stack, use the ListChangeSets action.

        ", "refs": { } }, "ChangeSetStatus": { "base": null, "refs": { "ChangeSetSummary$Status": "

        The state of the change set, such as CREATE_IN_PROGRESS, CREATE_COMPLETE, or FAILED.

        ", "DescribeChangeSetOutput$Status": "

        The current status of the change set, such as CREATE_IN_PROGRESS, CREATE_COMPLETE, or FAILED.

        " } }, "ChangeSetStatusReason": { "base": null, "refs": { "ChangeSetSummary$StatusReason": "

        A description of the change set's status. For example, if your change set is in the FAILED state, AWS CloudFormation shows the error message.

        ", "DescribeChangeSetOutput$StatusReason": "

        A description of the change set's status. For example, if your attempt to create a change set failed, AWS CloudFormation shows the error message.

        " } }, "ChangeSetSummaries": { "base": null, "refs": { "ListChangeSetsOutput$Summaries": "

        A list of ChangeSetSummary structures that provides the ID and status of each change set for the specified stack.

        " } }, "ChangeSetSummary": { "base": "

        The ChangeSetSummary structure describes a change set, its status, and the stack with which it's associated.

        ", "refs": { "ChangeSetSummaries$member": null } }, "ChangeSource": { "base": null, "refs": { "ResourceChangeDetail$ChangeSource": "

        The group to which the CausingEntity value belongs. There are five entity groups:

        • ResourceReference entities are Ref intrinsic functions that refer to resources in the template, such as { \"Ref\" : \"MyEC2InstanceResource\" }.

        • ParameterReference entities are Ref intrinsic functions that get template parameter values, such as { \"Ref\" : \"MyPasswordParameter\" }.

        • ResourceAttribute entities are Fn::GetAtt intrinsic functions that get resource attribute values, such as { \"Fn::GetAtt\" : [ \"MyEC2InstanceResource\", \"PublicDnsName\" ] }.

        • DirectModification entities are changes that are made directly to the template.

        • Automatic entities are AWS::CloudFormation::Stack resource types, which are also known as nested stacks. If you made no changes to the AWS::CloudFormation::Stack resource, AWS CloudFormation sets the ChangeSource to Automatic because the nested stack's template might have changed. Changes to a nested stack's template aren't visible to AWS CloudFormation until you run an update on the parent stack.

        " } }, "ChangeType": { "base": null, "refs": { "Change$Type": "

        The type of entity that AWS CloudFormation changes. Currently, the only entity type is Resource.

        " } }, "Changes": { "base": null, "refs": { "DescribeChangeSetOutput$Changes": "

        A list of Change structures that describes the resources AWS CloudFormation changes if you execute the change set.

        " } }, "ClientToken": { "base": null, "refs": { "CreateChangeSetInput$ClientToken": "

        A unique identifier for this CreateChangeSet request. Specify this token if you plan to retry requests so that AWS CloudFormation knows that you're not attempting to create another change set with the same name. You might retry CreateChangeSet requests to ensure that AWS CloudFormation successfully received them.

        " } }, "ContinueUpdateRollbackInput": { "base": "

        The input for the ContinueUpdateRollback action.

        ", "refs": { } }, "ContinueUpdateRollbackOutput": { "base": "

        The output for a ContinueUpdateRollback action.

        ", "refs": { } }, "CreateChangeSetInput": { "base": "

        The input for the CreateChangeSet action.

        ", "refs": { } }, "CreateChangeSetOutput": { "base": "

        The output for the CreateChangeSet action.

        ", "refs": { } }, "CreateStackInput": { "base": "

        The input for CreateStack action.

        ", "refs": { } }, "CreateStackOutput": { "base": "

        The output for a CreateStack action.

        ", "refs": { } }, "CreationTime": { "base": null, "refs": { "ChangeSetSummary$CreationTime": "

        The start time when the change set was created, in UTC.

        ", "DescribeChangeSetOutput$CreationTime": "

        The start time when the change set was created, in UTC.

        ", "Stack$CreationTime": "

        The time at which the stack was created.

        ", "StackSummary$CreationTime": "

        The time the stack was created.

        " } }, "DeleteChangeSetInput": { "base": "

        The input for the DeleteChangeSet action.

        ", "refs": { } }, "DeleteChangeSetOutput": { "base": "

        The output for the DeleteChangeSet action.

        ", "refs": { } }, "DeleteStackInput": { "base": "

        The input for DeleteStack action.

        ", "refs": { } }, "DeletionTime": { "base": null, "refs": { "StackSummary$DeletionTime": "

        The time the stack was deleted.

        " } }, "DescribeAccountLimitsInput": { "base": "

        The input for the DescribeAccountLimits action.

        ", "refs": { } }, "DescribeAccountLimitsOutput": { "base": "

        The output for the DescribeAccountLimits action.

        ", "refs": { } }, "DescribeChangeSetInput": { "base": "

        The input for the DescribeChangeSet action.

        ", "refs": { } }, "DescribeChangeSetOutput": { "base": "

        The output for the DescribeChangeSet action.

        ", "refs": { } }, "DescribeStackEventsInput": { "base": "

        The input for DescribeStackEvents action.

        ", "refs": { } }, "DescribeStackEventsOutput": { "base": "

        The output for a DescribeStackEvents action.

        ", "refs": { } }, "DescribeStackResourceInput": { "base": "

        The input for DescribeStackResource action.

        ", "refs": { } }, "DescribeStackResourceOutput": { "base": "

        The output for a DescribeStackResource action.

        ", "refs": { } }, "DescribeStackResourcesInput": { "base": "

        The input for DescribeStackResources action.

        ", "refs": { } }, "DescribeStackResourcesOutput": { "base": "

        The output for a DescribeStackResources action.

        ", "refs": { } }, "DescribeStacksInput": { "base": "

        The input for DescribeStacks action.

        ", "refs": { } }, "DescribeStacksOutput": { "base": "

        The output for a DescribeStacks action.

        ", "refs": { } }, "Description": { "base": null, "refs": { "ChangeSetSummary$Description": "

        Descriptive information about the change set.

        ", "CreateChangeSetInput$Description": "

        A description to help you identify this change set.

        ", "DescribeChangeSetOutput$Description": "

        Information about the change set.

        ", "GetTemplateSummaryOutput$Description": "

        The value that is defined in the Description property of the template.

        ", "Output$Description": "

        User defined description associated with the output.

        ", "ParameterDeclaration$Description": "

        The description that is associate with the parameter.

        ", "Stack$Description": "

        A user-defined description associated with the stack.

        ", "StackResource$Description": "

        User defined description associated with the resource.

        ", "StackResourceDetail$Description": "

        User defined description associated with the resource.

        ", "TemplateParameter$Description": "

        User defined description associated with the parameter.

        ", "ValidateTemplateOutput$Description": "

        The description found within the template.

        " } }, "DisableRollback": { "base": null, "refs": { "CreateStackInput$DisableRollback": "

        Set to true to disable rollback of the stack if stack creation failed. You can specify either DisableRollback or OnFailure, but not both.

        Default: false

        ", "Stack$DisableRollback": "

        Boolean to enable or disable rollback on stack creation failures:

        • true: disable rollback

        • false: enable rollback

        " } }, "EstimateTemplateCostInput": { "base": "

        The input for an EstimateTemplateCost action.

        ", "refs": { } }, "EstimateTemplateCostOutput": { "base": "

        The output for a EstimateTemplateCost action.

        ", "refs": { } }, "EvaluationType": { "base": null, "refs": { "ResourceChangeDetail$Evaluation": "

        Indicates whether AWS CloudFormation can determine the target value, and whether the target value will change before you execute a change set.

        For Static evaluations, AWS CloudFormation can determine that the target value will change, and its value. For example, if you directly modify the InstanceType property of an EC2 instance, AWS CloudFormation knows that this property value will change, and its value, so this is a Static evaluation.

        For Dynamic evaluations, cannot determine the target value because it depends on the result of an intrinsic function, such as a Ref or Fn::GetAtt intrinsic function, when the stack is updated. For example, if your template includes a reference to a resource that is conditionally recreated, the value of the reference (the physical ID of the resource) might change, depending on if the resource is recreated. If the resource is recreated, it will have a new physical ID, so all references to that resource will also be updated.

        " } }, "EventId": { "base": null, "refs": { "StackEvent$EventId": "

        The unique ID of this event.

        " } }, "ExecuteChangeSetInput": { "base": "

        The input for the ExecuteChangeSet action.

        ", "refs": { } }, "ExecuteChangeSetOutput": { "base": "

        The output for the ExecuteChangeSet action.

        ", "refs": { } }, "ExecutionStatus": { "base": null, "refs": { "ChangeSetSummary$ExecutionStatus": "

        If the change set execution status is AVAILABLE, you can execute the change set. If you can’t execute the change set, the status indicates why. For example, a change set might be in an UNAVAILABLE state because AWS CloudFormation is still creating it or in an OBSOLETE state because the stack was already updated.

        ", "DescribeChangeSetOutput$ExecutionStatus": "

        If the change set execution status is AVAILABLE, you can execute the change set. If you can’t execute the change set, the status indicates why. For example, a change set might be in an UNAVAILABLE state because AWS CloudFormation is still creating it or in an OBSOLETE state because the stack was already updated.

        " } }, "GetStackPolicyInput": { "base": "

        The input for the GetStackPolicy action.

        ", "refs": { } }, "GetStackPolicyOutput": { "base": "

        The output for the GetStackPolicy action.

        ", "refs": { } }, "GetTemplateInput": { "base": "

        The input for a GetTemplate action.

        ", "refs": { } }, "GetTemplateOutput": { "base": "

        The output for GetTemplate action.

        ", "refs": { } }, "GetTemplateSummaryInput": { "base": "

        The input for the GetTemplateSummary action.

        ", "refs": { } }, "GetTemplateSummaryOutput": { "base": "

        The output for the GetTemplateSummary action.

        ", "refs": { } }, "InsufficientCapabilitiesException": { "base": "

        The template contains resources with capabilities that were not specified in the Capabilities parameter.

        ", "refs": { } }, "InvalidChangeSetStatusException": { "base": "

        The specified change set cannot be used to update the stack. For example, the change set status might be CREATE_IN_PROGRESS or the stack status might be UPDATE_IN_PROGRESS.

        ", "refs": { } }, "LastUpdatedTime": { "base": null, "refs": { "Stack$LastUpdatedTime": "

        The time the stack was last updated. This field will only be returned if the stack has been updated at least once.

        ", "StackSummary$LastUpdatedTime": "

        The time the stack was last updated. This field will only be returned if the stack has been updated at least once.

        " } }, "LimitExceededException": { "base": "

        Quota for the resource has already been reached.

        ", "refs": { } }, "LimitName": { "base": null, "refs": { "AccountLimit$Name": "

        The name of the account limit. Currently, the only account limit is StackLimit.

        " } }, "LimitValue": { "base": null, "refs": { "AccountLimit$Value": "

        The value that is associated with the account limit name.

        " } }, "ListChangeSetsInput": { "base": "

        The input for the ListChangeSets action.

        ", "refs": { } }, "ListChangeSetsOutput": { "base": "

        The output for the ListChangeSets action.

        ", "refs": { } }, "ListStackResourcesInput": { "base": "

        The input for the ListStackResource action.

        ", "refs": { } }, "ListStackResourcesOutput": { "base": "

        The output for a ListStackResources action.

        ", "refs": { } }, "ListStacksInput": { "base": "

        The input for ListStacks action.

        ", "refs": { } }, "ListStacksOutput": { "base": "

        The output for ListStacks action.

        ", "refs": { } }, "LogicalResourceId": { "base": null, "refs": { "DescribeStackResourceInput$LogicalResourceId": "

        The logical name of the resource as specified in the template.

        Default: There is no default value.

        ", "DescribeStackResourcesInput$LogicalResourceId": "

        The logical name of the resource as specified in the template.

        Default: There is no default value.

        ", "ResourceChange$LogicalResourceId": "

        The resource's logical ID, which is defined in the stack's template.

        ", "RetainResources$member": null, "SignalResourceInput$LogicalResourceId": "

        The logical ID of the resource that you want to signal. The logical ID is the name of the resource that given in the template.

        ", "StackEvent$LogicalResourceId": "

        The logical name of the resource specified in the template.

        ", "StackResource$LogicalResourceId": "

        The logical name of the resource specified in the template.

        ", "StackResourceDetail$LogicalResourceId": "

        The logical name of the resource specified in the template.

        ", "StackResourceSummary$LogicalResourceId": "

        The logical name of the resource specified in the template.

        " } }, "Metadata": { "base": null, "refs": { "GetTemplateSummaryOutput$Metadata": "

        The value that is defined for the Metadata property of the template.

        ", "StackResourceDetail$Metadata": "

        The content of the Metadata attribute declared for the resource. For more information, see Metadata Attribute in the AWS CloudFormation User Guide.

        " } }, "NextToken": { "base": null, "refs": { "DescribeAccountLimitsInput$NextToken": "

        A string that identifies the next page of limits that you want to retrieve.

        ", "DescribeAccountLimitsOutput$NextToken": "

        If the output exceeds 1 MB in size, a string that identifies the next page of limits. If no additional page exists, this value is null.

        ", "DescribeChangeSetInput$NextToken": "

        A string (provided by the DescribeChangeSet response output) that identifies the next page of information that you want to retrieve.

        ", "DescribeChangeSetOutput$NextToken": "

        If the output exceeds 1 MB, a string that identifies the next page of changes. If there is no additional page, this value is null.

        ", "DescribeStackEventsInput$NextToken": "

        A string that identifies the next page of events that you want to retrieve.

        ", "DescribeStackEventsOutput$NextToken": "

        If the output exceeds 1 MB in size, a string that identifies the next page of events. If no additional page exists, this value is null.

        ", "DescribeStacksInput$NextToken": "

        A string that identifies the next page of stacks that you want to retrieve.

        ", "DescribeStacksOutput$NextToken": "

        If the output exceeds 1 MB in size, a string that identifies the next page of stacks. If no additional page exists, this value is null.

        ", "ListChangeSetsInput$NextToken": "

        A string (provided by the ListChangeSets response output) that identifies the next page of change sets that you want to retrieve.

        ", "ListChangeSetsOutput$NextToken": "

        If the output exceeds 1 MB, a string that identifies the next page of change sets. If there is no additional page, this value is null.

        ", "ListStackResourcesInput$NextToken": "

        A string that identifies the next page of stack resources that you want to retrieve.

        ", "ListStackResourcesOutput$NextToken": "

        If the output exceeds 1 MB, a string that identifies the next page of stack resources. If no additional page exists, this value is null.

        ", "ListStacksInput$NextToken": "

        A string that identifies the next page of stacks that you want to retrieve.

        ", "ListStacksOutput$NextToken": "

        If the output exceeds 1 MB in size, a string that identifies the next page of stacks. If no additional page exists, this value is null.

        " } }, "NoEcho": { "base": null, "refs": { "ParameterDeclaration$NoEcho": "

        Flag that indicates whether the parameter value is shown as plain text in logs and in the AWS Management Console.

        ", "TemplateParameter$NoEcho": "

        Flag indicating whether the parameter should be displayed as plain text in logs and UIs.

        " } }, "NotificationARN": { "base": null, "refs": { "NotificationARNs$member": null } }, "NotificationARNs": { "base": null, "refs": { "CreateChangeSetInput$NotificationARNs": "

        The Amazon Resource Names (ARNs) of Amazon Simple Notification Service (Amazon SNS) topics that AWS CloudFormation associates with the stack. To remove all associated notification topics, specify an empty list.

        ", "CreateStackInput$NotificationARNs": "

        The Simple Notification Service (SNS) topic ARNs to publish stack related events. You can find your SNS topic ARNs using the SNS console or your Command Line Interface (CLI).

        ", "DescribeChangeSetOutput$NotificationARNs": "

        The ARNs of the Amazon Simple Notification Service (Amazon SNS) topics that will be associated with the stack if you execute the change set.

        ", "Stack$NotificationARNs": "

        SNS topic ARNs to which stack related events are published.

        ", "UpdateStackInput$NotificationARNs": "

        Amazon Simple Notification Service topic Amazon Resource Names (ARNs) that AWS CloudFormation associates with the stack. Specify an empty list to remove all notification topics.

        " } }, "OnFailure": { "base": null, "refs": { "CreateStackInput$OnFailure": "

        Determines what action will be taken if stack creation fails. This must be one of: DO_NOTHING, ROLLBACK, or DELETE. You can specify either OnFailure or DisableRollback, but not both.

        Default: ROLLBACK

        " } }, "Output": { "base": "

        The Output data type.

        ", "refs": { "Outputs$member": null } }, "OutputKey": { "base": null, "refs": { "Output$OutputKey": "

        The key associated with the output.

        " } }, "OutputValue": { "base": null, "refs": { "Output$OutputValue": "

        The value associated with the output.

        " } }, "Outputs": { "base": null, "refs": { "Stack$Outputs": "

        A list of output structures.

        " } }, "Parameter": { "base": "

        The Parameter data type.

        ", "refs": { "Parameters$member": null } }, "ParameterConstraints": { "base": "

        A set of criteria that AWS CloudFormation uses to validate parameter values. Although other constraints might be defined in the stack template, AWS CloudFormation returns only the AllowedValues property.

        ", "refs": { "ParameterDeclaration$ParameterConstraints": "

        The criteria that AWS CloudFormation uses to validate parameter values.

        " } }, "ParameterDeclaration": { "base": "

        The ParameterDeclaration data type.

        ", "refs": { "ParameterDeclarations$member": null } }, "ParameterDeclarations": { "base": null, "refs": { "GetTemplateSummaryOutput$Parameters": "

        A list of parameter declarations that describe various properties for each parameter.

        " } }, "ParameterKey": { "base": null, "refs": { "Parameter$ParameterKey": "

        The key associated with the parameter. If you don't specify a key and value for a particular parameter, AWS CloudFormation uses the default value that is specified in your template.

        ", "ParameterDeclaration$ParameterKey": "

        The name that is associated with the parameter.

        ", "TemplateParameter$ParameterKey": "

        The name associated with the parameter.

        " } }, "ParameterType": { "base": null, "refs": { "ParameterDeclaration$ParameterType": "

        The type of parameter.

        " } }, "ParameterValue": { "base": null, "refs": { "Parameter$ParameterValue": "

        The value associated with the parameter.

        ", "ParameterDeclaration$DefaultValue": "

        The default value of the parameter.

        ", "TemplateParameter$DefaultValue": "

        The default value associated with the parameter.

        " } }, "Parameters": { "base": null, "refs": { "CreateChangeSetInput$Parameters": "

        A list of Parameter structures that specify input parameters for the change set. For more information, see the Parameter data type.

        ", "CreateStackInput$Parameters": "

        A list of Parameter structures that specify input parameters for the stack. For more information, see the Parameter data type.

        ", "DescribeChangeSetOutput$Parameters": "

        A list of Parameter structures that describes the input parameters and their values used to create the change set. For more information, see the Parameter data type.

        ", "EstimateTemplateCostInput$Parameters": "

        A list of Parameter structures that specify input parameters.

        ", "Stack$Parameters": "

        A list of Parameter structures.

        ", "UpdateStackInput$Parameters": "

        A list of Parameter structures that specify input parameters for the stack. For more information, see the Parameter data type.

        " } }, "PhysicalResourceId": { "base": null, "refs": { "DescribeStackResourcesInput$PhysicalResourceId": "

        The name or unique identifier that corresponds to a physical instance ID of a resource supported by AWS CloudFormation.

        For example, for an Amazon Elastic Compute Cloud (EC2) instance, PhysicalResourceId corresponds to the InstanceId. You can pass the EC2 InstanceId to DescribeStackResources to find which stack the instance belongs to and what other resources are part of the stack.

        Required: Conditional. If you do not specify PhysicalResourceId, you must specify StackName.

        Default: There is no default value.

        ", "ResourceChange$PhysicalResourceId": "

        The resource's physical ID (resource name). Resources that you are adding don't have physical IDs because they haven't been created.

        ", "StackEvent$PhysicalResourceId": "

        The name or unique identifier associated with the physical instance of the resource.

        ", "StackResource$PhysicalResourceId": "

        The name or unique identifier that corresponds to a physical instance ID of a resource supported by AWS CloudFormation.

        ", "StackResourceDetail$PhysicalResourceId": "

        The name or unique identifier that corresponds to a physical instance ID of a resource supported by AWS CloudFormation.

        ", "StackResourceSummary$PhysicalResourceId": "

        The name or unique identifier that corresponds to a physical instance ID of the resource.

        " } }, "PropertyName": { "base": null, "refs": { "ResourceTargetDefinition$Name": "

        If the Attribute value is Properties, the name of the property. For all other attributes, the value is null.

        " } }, "Replacement": { "base": null, "refs": { "ResourceChange$Replacement": "

        For the Modify action, indicates whether AWS CloudFormation will replace the resource by creating a new one and deleting the old one. This value depends on the value of the RequiresRecreation property in the ResourceTargetDefinition structure. For example, if the RequiresRecreation field is Always and the Evaluation field is Static, Replacement is True. If the RequiresRecreation field is Always and the Evaluation field is Dynamic, Replacement is Conditionally.

        If you have multiple changes with different RequiresRecreation values, the Replacement value depends on the change with the most impact. A RequiresRecreation value of Always has the most impact, followed by Conditionally, and then Never.

        " } }, "RequiresRecreation": { "base": null, "refs": { "ResourceTargetDefinition$RequiresRecreation": "

        If the Attribute value is Properties, indicates whether a change to this property causes the resource to be recreated. The value can be Never, Always, or Conditionally. To determine the conditions for a Conditionally recreation, see the update behavior for that property in the AWS CloudFormation User Guide.

        " } }, "ResourceAttribute": { "base": null, "refs": { "ResourceTargetDefinition$Attribute": "

        Indicates which resource attribute is triggering this update, such as a change in the resource attribute's Metadata, Properties, or Tags.

        ", "Scope$member": null } }, "ResourceChange": { "base": "

        The ResourceChange structure describes the resource and the action that AWS CloudFormation will perform on it if you execute this change set.

        ", "refs": { "Change$ResourceChange": "

        A ResourceChange structure that describes the resource and action that AWS CloudFormation will perform.

        " } }, "ResourceChangeDetail": { "base": "

        For a resource with Modify as the action, the ResourceChange structure describes the changes AWS CloudFormation will make to that resource.

        ", "refs": { "ResourceChangeDetails$member": null } }, "ResourceChangeDetails": { "base": null, "refs": { "ResourceChange$Details": "

        For the Modify action, a list of ResourceChangeDetail structures that describes the changes that AWS CloudFormation will make to the resource.

        " } }, "ResourceProperties": { "base": null, "refs": { "StackEvent$ResourceProperties": "

        BLOB of the properties used to create the resource.

        " } }, "ResourceSignalStatus": { "base": null, "refs": { "SignalResourceInput$Status": "

        The status of the signal, which is either success or failure. A failure signal causes AWS CloudFormation to immediately fail the stack creation or update.

        " } }, "ResourceSignalUniqueId": { "base": null, "refs": { "SignalResourceInput$UniqueId": "

        A unique ID of the signal. When you signal Amazon EC2 instances or Auto Scaling groups, specify the instance ID that you are signaling as the unique ID. If you send multiple signals to a single resource (such as signaling a wait condition), each signal requires a different unique ID.

        " } }, "ResourceStatus": { "base": null, "refs": { "StackEvent$ResourceStatus": "

        Current status of the resource.

        ", "StackResource$ResourceStatus": "

        Current status of the resource.

        ", "StackResourceDetail$ResourceStatus": "

        Current status of the resource.

        ", "StackResourceSummary$ResourceStatus": "

        Current status of the resource.

        " } }, "ResourceStatusReason": { "base": null, "refs": { "StackEvent$ResourceStatusReason": "

        Success/failure message associated with the resource.

        ", "StackResource$ResourceStatusReason": "

        Success/failure message associated with the resource.

        ", "StackResourceDetail$ResourceStatusReason": "

        Success/failure message associated with the resource.

        ", "StackResourceSummary$ResourceStatusReason": "

        Success/failure message associated with the resource.

        " } }, "ResourceTargetDefinition": { "base": "

        The field that AWS CloudFormation will change, such as the name of a resource's property, and whether the resource will be recreated.

        ", "refs": { "ResourceChangeDetail$Target": "

        A ResourceTargetDefinition structure that describes the field that AWS CloudFormation will change and whether the resource will be recreated.

        " } }, "ResourceType": { "base": null, "refs": { "ResourceChange$ResourceType": "

        The type of AWS CloudFormation resource, such as AWS::S3::Bucket.

        ", "ResourceTypes$member": null, "StackEvent$ResourceType": "

        Type of resource. (For more information, go to AWS Resource Types Reference in the AWS CloudFormation User Guide.)

        ", "StackResource$ResourceType": "

        Type of resource. (For more information, go to AWS Resource Types Reference in the AWS CloudFormation User Guide.)

        ", "StackResourceDetail$ResourceType": "

        Type of resource. ((For more information, go to AWS Resource Types Reference in the AWS CloudFormation User Guide.)

        ", "StackResourceSummary$ResourceType": "

        Type of resource. (For more information, go to AWS Resource Types Reference in the AWS CloudFormation User Guide.)

        " } }, "ResourceTypes": { "base": null, "refs": { "CreateChangeSetInput$ResourceTypes": "

        The template resource types that you have permissions to work with if you execute this change set, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance.

        If the list of resource types doesn't include a resource type that you're updating, the stack update fails. By default, AWS CloudFormation grants permissions to all resource types. AWS Identity and Access Management (IAM) uses this parameter for condition keys in IAM policies for AWS CloudFormation. For more information, see Controlling Access with AWS Identity and Access Management in the AWS CloudFormation User Guide.

        ", "CreateStackInput$ResourceTypes": "

        The template resource types that you have permissions to work with for this create stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance. Use the following syntax to describe template resource types: AWS::* (for all AWS resource), Custom::* (for all custom resources), Custom::logical_ID (for a specific custom resource), AWS::service_name::* (for all resources of a particular AWS service), and AWS::service_name::resource_logical_ID (for a specific AWS resource).

        If the list of resource types doesn't include a resource that you're creating, the stack creation fails. By default, AWS CloudFormation grants permissions to all resource types. AWS Identity and Access Management (IAM) uses this parameter for AWS CloudFormation-specific condition keys in IAM policies. For more information, see Controlling Access with AWS Identity and Access Management.

        ", "GetTemplateSummaryOutput$ResourceTypes": "

        A list of all the template resource types that are defined in the template, such as AWS::EC2::Instance, AWS::Dynamo::Table, and Custom::MyCustomInstance.

        ", "UpdateStackInput$ResourceTypes": "

        The template resource types that you have permissions to work with for this update stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance.

        If the list of resource types doesn't include a resource that you're updating, the stack update fails. By default, AWS CloudFormation grants permissions to all resource types. AWS Identity and Access Management (IAM) uses this parameter for AWS CloudFormation-specific condition keys in IAM policies. For more information, see Controlling Access with AWS Identity and Access Management.

        " } }, "RetainResources": { "base": null, "refs": { "DeleteStackInput$RetainResources": "

        For stacks in the DELETE_FAILED state, a list of resource logical IDs that are associated with the resources you want to retain. During deletion, AWS CloudFormation deletes the stack but does not delete the retained resources.

        Retaining resources is useful when you cannot delete a resource, such as a non-empty S3 bucket, but you want to delete the stack.

        " } }, "RoleARN": { "base": null, "refs": { "ContinueUpdateRollbackInput$RoleARN": "

        The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to roll back the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. As long as users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.

        If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that is generated from your user credentials.

        ", "CreateChangeSetInput$RoleARN": "

        The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes when executing the change set. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. As long as users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.

        If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that is generated from your user credentials.

        ", "CreateStackInput$RoleARN": "

        The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to create the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. As long as users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.

        If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that is generated from your user credentials.

        ", "DeleteStackInput$RoleARN": "

        The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to delete the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf.

        If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that is generated from your user credentials.

        ", "Stack$RoleARN": "

        The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that is associated with the stack. During a stack operation, AWS CloudFormation uses this role's credentials to make calls on your behalf.

        ", "UpdateStackInput$RoleARN": "

        The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that AWS CloudFormation assumes to update the stack. AWS CloudFormation uses the role's credentials to make calls on your behalf. AWS CloudFormation always uses this role for all future operations on the stack. As long as users have permission to operate on the stack, AWS CloudFormation uses this role even if the users don't have permission to pass it. Ensure that the role grants least privilege.

        If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that is generated from your user credentials.

        " } }, "Scope": { "base": null, "refs": { "ResourceChange$Scope": "

        For the Modify action, indicates which resource attribute is triggering this update, such as a change in the resource attribute's Metadata, Properties, or Tags.

        " } }, "SetStackPolicyInput": { "base": "

        The input for the SetStackPolicy action.

        ", "refs": { } }, "SignalResourceInput": { "base": "

        The input for the SignalResource action.

        ", "refs": { } }, "Stack": { "base": "

        The Stack data type.

        ", "refs": { "Stacks$member": null } }, "StackEvent": { "base": "

        The StackEvent data type.

        ", "refs": { "StackEvents$member": null } }, "StackEvents": { "base": null, "refs": { "DescribeStackEventsOutput$StackEvents": "

        A list of StackEvents structures.

        " } }, "StackId": { "base": null, "refs": { "ChangeSetSummary$StackId": "

        The ID of the stack with which the change set is associated.

        ", "CreateStackOutput$StackId": "

        Unique identifier of the stack.

        ", "DescribeChangeSetOutput$StackId": "

        The ARN of the stack that is associated with the change set.

        ", "Stack$StackId": "

        Unique identifier of the stack.

        ", "StackEvent$StackId": "

        The unique ID name of the instance of the stack.

        ", "StackResource$StackId": "

        Unique identifier of the stack.

        ", "StackResourceDetail$StackId": "

        Unique identifier of the stack.

        ", "StackSummary$StackId": "

        Unique stack identifier.

        ", "UpdateStackOutput$StackId": "

        Unique identifier of the stack.

        " } }, "StackName": { "base": null, "refs": { "CancelUpdateStackInput$StackName": "

        The name or the unique stack ID that is associated with the stack.

        ", "ChangeSetSummary$StackName": "

        The name of the stack with which the change set is associated.

        ", "CreateStackInput$StackName": "

        The name that is associated with the stack. The name must be unique in the region in which you are creating the stack.

        A stack name can contain only alphanumeric characters (case sensitive) and hyphens. It must start with an alphabetic character and cannot be longer than 128 characters.

        ", "DeleteStackInput$StackName": "

        The name or the unique stack ID that is associated with the stack.

        ", "DescribeChangeSetOutput$StackName": "

        The name of the stack that is associated with the change set.

        ", "DescribeStackEventsInput$StackName": "

        The name or the unique stack ID that is associated with the stack, which are not always interchangeable:

        • Running stacks: You can specify either the stack's name or its unique stack ID.

        • Deleted stacks: You must specify the unique stack ID.

        Default: There is no default value.

        ", "DescribeStackResourceInput$StackName": "

        The name or the unique stack ID that is associated with the stack, which are not always interchangeable:

        • Running stacks: You can specify either the stack's name or its unique stack ID.

        • Deleted stacks: You must specify the unique stack ID.

        Default: There is no default value.

        ", "DescribeStackResourcesInput$StackName": "

        The name or the unique stack ID that is associated with the stack, which are not always interchangeable:

        • Running stacks: You can specify either the stack's name or its unique stack ID.

        • Deleted stacks: You must specify the unique stack ID.

        Default: There is no default value.

        Required: Conditional. If you do not specify StackName, you must specify PhysicalResourceId.

        ", "DescribeStacksInput$StackName": "

        The name or the unique stack ID that is associated with the stack, which are not always interchangeable:

        • Running stacks: You can specify either the stack's name or its unique stack ID.

        • Deleted stacks: You must specify the unique stack ID.

        Default: There is no default value.

        ", "GetStackPolicyInput$StackName": "

        The name or unique stack ID that is associated with the stack whose policy you want to get.

        ", "GetTemplateInput$StackName": "

        The name or the unique stack ID that is associated with the stack, which are not always interchangeable:

        • Running stacks: You can specify either the stack's name or its unique stack ID.

        • Deleted stacks: You must specify the unique stack ID.

        Default: There is no default value.

        ", "ListStackResourcesInput$StackName": "

        The name or the unique stack ID that is associated with the stack, which are not always interchangeable:

        • Running stacks: You can specify either the stack's name or its unique stack ID.

        • Deleted stacks: You must specify the unique stack ID.

        Default: There is no default value.

        ", "SetStackPolicyInput$StackName": "

        The name or unique stack ID that you want to associate a policy with.

        ", "Stack$StackName": "

        The name associated with the stack.

        ", "StackEvent$StackName": "

        The name associated with a stack.

        ", "StackResource$StackName": "

        The name associated with the stack.

        ", "StackResourceDetail$StackName": "

        The name associated with the stack.

        ", "StackSummary$StackName": "

        The name associated with the stack.

        ", "UpdateStackInput$StackName": "

        The name or unique stack ID of the stack to update.

        " } }, "StackNameOrId": { "base": null, "refs": { "ContinueUpdateRollbackInput$StackName": "

        The name or the unique ID of the stack that you want to continue rolling back.

        ", "CreateChangeSetInput$StackName": "

        The name or the unique ID of the stack for which you are creating a change set. AWS CloudFormation generates the change set by comparing this stack's information with the information that you submit, such as a modified template or different parameter input values.

        ", "DeleteChangeSetInput$StackName": "

        If you specified the name of a change set to delete, specify the stack name or ID (ARN) that is associated with it.

        ", "DescribeChangeSetInput$StackName": "

        If you specified the name of a change set, specify the stack name or ID (ARN) of the change set you want to describe.

        ", "ExecuteChangeSetInput$StackName": "

        If you specified the name of a change set, specify the stack name or ID (ARN) that is associated with the change set you want to execute.

        ", "GetTemplateSummaryInput$StackName": "

        The name or the stack ID that is associated with the stack, which are not always interchangeable. For running stacks, you can specify either the stack's name or its unique stack ID. For deleted stack, you must specify the unique stack ID.

        Conditional: You must specify only one of the following parameters: StackName, TemplateBody, or TemplateURL.

        ", "ListChangeSetsInput$StackName": "

        The name or the Amazon Resource Name (ARN) of the stack for which you want to list change sets.

        ", "SignalResourceInput$StackName": "

        The stack name or unique stack ID that includes the resource that you want to signal.

        " } }, "StackPolicyBody": { "base": null, "refs": { "CreateStackInput$StackPolicyBody": "

        Structure containing the stack policy body. For more information, go to Prevent Updates to Stack Resources in the AWS CloudFormation User Guide. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

        ", "GetStackPolicyOutput$StackPolicyBody": "

        Structure containing the stack policy body. (For more information, go to Prevent Updates to Stack Resources in the AWS CloudFormation User Guide.)

        ", "SetStackPolicyInput$StackPolicyBody": "

        Structure containing the stack policy body. For more information, go to Prevent Updates to Stack Resources in the AWS CloudFormation User Guide. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

        ", "UpdateStackInput$StackPolicyBody": "

        Structure containing a new stack policy body. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

        You might update the stack policy, for example, in order to protect a new resource that you created during a stack update. If you do not specify a stack policy, the current policy that is associated with the stack is unchanged.

        " } }, "StackPolicyDuringUpdateBody": { "base": null, "refs": { "UpdateStackInput$StackPolicyDuringUpdateBody": "

        Structure containing the temporary overriding stack policy body. You can specify either the StackPolicyDuringUpdateBody or the StackPolicyDuringUpdateURL parameter, but not both.

        If you want to update protected resources, specify a temporary overriding stack policy during this update. If you do not specify a stack policy, the current policy that is associated with the stack will be used.

        " } }, "StackPolicyDuringUpdateURL": { "base": null, "refs": { "UpdateStackInput$StackPolicyDuringUpdateURL": "

        Location of a file containing the temporary overriding stack policy. The URL must point to a policy (max size: 16KB) located in an S3 bucket in the same region as the stack. You can specify either the StackPolicyDuringUpdateBody or the StackPolicyDuringUpdateURL parameter, but not both.

        If you want to update protected resources, specify a temporary overriding stack policy during this update. If you do not specify a stack policy, the current policy that is associated with the stack will be used.

        " } }, "StackPolicyURL": { "base": null, "refs": { "CreateStackInput$StackPolicyURL": "

        Location of a file containing the stack policy. The URL must point to a policy (maximum size: 16 KB) located in an S3 bucket in the same region as the stack. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

        ", "SetStackPolicyInput$StackPolicyURL": "

        Location of a file containing the stack policy. The URL must point to a policy (maximum size: 16 KB) located in an S3 bucket in the same region as the stack. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

        ", "UpdateStackInput$StackPolicyURL": "

        Location of a file containing the updated stack policy. The URL must point to a policy (max size: 16KB) located in an S3 bucket in the same region as the stack. You can specify either the StackPolicyBody or the StackPolicyURL parameter, but not both.

        You might update the stack policy, for example, in order to protect a new resource that you created during a stack update. If you do not specify a stack policy, the current policy that is associated with the stack is unchanged.

        " } }, "StackResource": { "base": "

        The StackResource data type.

        ", "refs": { "StackResources$member": null } }, "StackResourceDetail": { "base": "

        Contains detailed information about the specified stack resource.

        ", "refs": { "DescribeStackResourceOutput$StackResourceDetail": "

        A StackResourceDetail structure containing the description of the specified resource in the specified stack.

        " } }, "StackResourceSummaries": { "base": null, "refs": { "ListStackResourcesOutput$StackResourceSummaries": "

        A list of StackResourceSummary structures.

        " } }, "StackResourceSummary": { "base": "

        Contains high-level information about the specified stack resource.

        ", "refs": { "StackResourceSummaries$member": null } }, "StackResources": { "base": null, "refs": { "DescribeStackResourcesOutput$StackResources": "

        A list of StackResource structures.

        " } }, "StackStatus": { "base": null, "refs": { "Stack$StackStatus": "

        Current status of the stack.

        ", "StackStatusFilter$member": null, "StackSummary$StackStatus": "

        The current status of the stack.

        " } }, "StackStatusFilter": { "base": null, "refs": { "ListStacksInput$StackStatusFilter": "

        Stack status to use as a filter. Specify one or more stack status codes to list only stacks with the specified status codes. For a complete list of stack status codes, see the StackStatus parameter of the Stack data type.

        " } }, "StackStatusReason": { "base": null, "refs": { "Stack$StackStatusReason": "

        Success/failure message associated with the stack status.

        ", "StackSummary$StackStatusReason": "

        Success/Failure message associated with the stack status.

        " } }, "StackSummaries": { "base": null, "refs": { "ListStacksOutput$StackSummaries": "

        A list of StackSummary structures containing information about the specified stacks.

        " } }, "StackSummary": { "base": "

        The StackSummary Data Type

        ", "refs": { "StackSummaries$member": null } }, "Stacks": { "base": null, "refs": { "DescribeStacksOutput$Stacks": "

        A list of stack structures.

        " } }, "Tag": { "base": "

        The Tag type enables you to specify a key-value pair that can be used to store information about an AWS CloudFormation stack.

        ", "refs": { "Tags$member": null } }, "TagKey": { "base": null, "refs": { "Tag$Key": "

        Required. A string used to identify this tag. You can specify a maximum of 128 characters for a tag key. Tags owned by Amazon Web Services (AWS) have the reserved prefix: aws:.

        " } }, "TagValue": { "base": null, "refs": { "Tag$Value": "

        Required. A string containing the value for this tag. You can specify a maximum of 256 characters for a tag value.

        " } }, "Tags": { "base": null, "refs": { "CreateChangeSetInput$Tags": "

        Key-value pairs to associate with this stack. AWS CloudFormation also propagates these tags to resources in the stack. You can specify a maximum of 10 tags.

        ", "CreateStackInput$Tags": "

        Key-value pairs to associate with this stack. AWS CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 10 tags can be specified.

        ", "DescribeChangeSetOutput$Tags": "

        If you execute the change set, the tags that will be associated with the stack.

        ", "Stack$Tags": "

        A list of Tags that specify information about the stack.

        ", "UpdateStackInput$Tags": "

        Key-value pairs to associate with this stack. AWS CloudFormation also propagates these tags to supported resources in the stack. You can specify a maximum number of 10 tags.

        If you don't specify this parameter, AWS CloudFormation doesn't modify the stack's tags. If you specify an empty value, AWS CloudFormation removes all associated tags.

        " } }, "TemplateBody": { "base": null, "refs": { "CreateChangeSetInput$TemplateBody": "

        A structure that contains the body of the revised template, with a minimum length of 1 byte and a maximum length of 51,200 bytes. AWS CloudFormation generates the change set by comparing this template with the template of the stack that you specified.

        Conditional: You must specify only TemplateBody or TemplateURL.

        ", "CreateStackInput$TemplateBody": "

        Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to Template Anatomy in the AWS CloudFormation User Guide.

        Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

        ", "EstimateTemplateCostInput$TemplateBody": "

        Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. (For more information, go to Template Anatomy in the AWS CloudFormation User Guide.)

        Conditional: You must pass TemplateBody or TemplateURL. If both are passed, only TemplateBody is used.

        ", "GetTemplateOutput$TemplateBody": "

        Structure containing the template body. (For more information, go to Template Anatomy in the AWS CloudFormation User Guide.)

        AWS CloudFormation returns the same template that was used when the stack was created.

        ", "GetTemplateSummaryInput$TemplateBody": "

        Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information about templates, see Template Anatomy in the AWS CloudFormation User Guide.

        Conditional: You must specify only one of the following parameters: StackName, TemplateBody, or TemplateURL.

        ", "UpdateStackInput$TemplateBody": "

        Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. (For more information, go to Template Anatomy in the AWS CloudFormation User Guide.)

        Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

        ", "ValidateTemplateInput$TemplateBody": "

        Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to Template Anatomy in the AWS CloudFormation User Guide.

        Conditional: You must pass TemplateURL or TemplateBody. If both are passed, only TemplateBody is used.

        " } }, "TemplateDescription": { "base": null, "refs": { "StackSummary$TemplateDescription": "

        The template description of the template used to create the stack.

        " } }, "TemplateParameter": { "base": "

        The TemplateParameter data type.

        ", "refs": { "TemplateParameters$member": null } }, "TemplateParameters": { "base": null, "refs": { "ValidateTemplateOutput$Parameters": "

        A list of TemplateParameter structures.

        " } }, "TemplateURL": { "base": null, "refs": { "CreateChangeSetInput$TemplateURL": "

        The location of the file that contains the revised template. The URL must point to a template (max size: 460,800 bytes) that is located in an S3 bucket. AWS CloudFormation generates the change set by comparing this template with the stack that you specified.

        Conditional: You must specify only TemplateBody or TemplateURL.

        ", "CreateStackInput$TemplateURL": "

        Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that is located in an Amazon S3 bucket. For more information, go to the Template Anatomy in the AWS CloudFormation User Guide.

        Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

        ", "EstimateTemplateCostInput$TemplateURL": "

        Location of file containing the template body. The URL must point to a template that is located in an Amazon S3 bucket. For more information, go to Template Anatomy in the AWS CloudFormation User Guide.

        Conditional: You must pass TemplateURL or TemplateBody. If both are passed, only TemplateBody is used.

        ", "GetTemplateSummaryInput$TemplateURL": "

        Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that is located in an Amazon S3 bucket. For more information about templates, see Template Anatomy in the AWS CloudFormation User Guide.

        Conditional: You must specify only one of the following parameters: StackName, TemplateBody, or TemplateURL.

        ", "UpdateStackInput$TemplateURL": "

        Location of file containing the template body. The URL must point to a template that is located in an Amazon S3 bucket. For more information, go to Template Anatomy in the AWS CloudFormation User Guide.

        Conditional: You must specify either the TemplateBody or the TemplateURL parameter, but not both.

        ", "ValidateTemplateInput$TemplateURL": "

        Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that is located in an Amazon S3 bucket. For more information, go to Template Anatomy in the AWS CloudFormation User Guide.

        Conditional: You must pass TemplateURL or TemplateBody. If both are passed, only TemplateBody is used.

        " } }, "TimeoutMinutes": { "base": null, "refs": { "CreateStackInput$TimeoutInMinutes": "

        The amount of time that can pass before the stack status becomes CREATE_FAILED; if DisableRollback is not set or is set to false, the stack will be rolled back.

        ", "Stack$TimeoutInMinutes": "

        The amount of time within which stack creation should complete.

        " } }, "Timestamp": { "base": null, "refs": { "StackEvent$Timestamp": "

        Time the status was updated.

        ", "StackResource$Timestamp": "

        Time the status was updated.

        ", "StackResourceDetail$LastUpdatedTimestamp": "

        Time the status was updated.

        ", "StackResourceSummary$LastUpdatedTimestamp": "

        Time the status was updated.

        " } }, "UpdateStackInput": { "base": "

        The input for an UpdateStack action.

        ", "refs": { } }, "UpdateStackOutput": { "base": "

        The output for an UpdateStack action.

        ", "refs": { } }, "Url": { "base": null, "refs": { "EstimateTemplateCostOutput$Url": "

        An AWS Simple Monthly Calculator URL with a query string that describes the resources required to run the template.

        " } }, "UsePreviousTemplate": { "base": null, "refs": { "CreateChangeSetInput$UsePreviousTemplate": "

        Whether to reuse the template that is associated with the stack to create the change set.

        ", "UpdateStackInput$UsePreviousTemplate": "

        Reuse the existing template that is associated with the stack that you are updating.

        " } }, "UsePreviousValue": { "base": null, "refs": { "Parameter$UsePreviousValue": "

        During a stack update, use the existing parameter value that the stack is using for a given parameter key. If you specify true, do not specify a parameter value.

        " } }, "ValidateTemplateInput": { "base": "

        The input for ValidateTemplate action.

        ", "refs": { } }, "ValidateTemplateOutput": { "base": "

        The output for ValidateTemplate action.

        ", "refs": { } }, "Version": { "base": null, "refs": { "GetTemplateSummaryOutput$Version": "

        The AWS template format version, which identifies the capabilities of the template.

        " } } } } aws-sdk-go-1.4.22/models/apis/cloudformation/2010-05-15/examples-1.json000066400000000000000000000000541300374646400247240ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/cloudformation/2010-05-15/paginators-1.json000066400000000000000000000012131300374646400252530ustar00rootroot00000000000000{ "pagination": { "DescribeStackEvents": { "input_token": "NextToken", "output_token": "NextToken", "result_key": "StackEvents" }, "DescribeStackResources": { "result_key": "StackResources" }, "DescribeStacks": { "input_token": "NextToken", "output_token": "NextToken", "result_key": "Stacks" }, "ListStackResources": { "input_token": "NextToken", "output_token": "NextToken", "result_key": "StackResourceSummaries" }, "ListStacks": { "input_token": "NextToken", "output_token": "NextToken", "result_key": "StackSummaries" } } } aws-sdk-go-1.4.22/models/apis/cloudformation/2010-05-15/waiters-2.json000066400000000000000000000144661300374646400246010ustar00rootroot00000000000000{ "version": 2, "waiters": { "StackExists": { "delay": 5, "operation": "DescribeStacks", "maxAttempts": 20, "acceptors": [ { "matcher": "status", "expected": 200, "state": "success" }, { "matcher": "error", "expected": "ValidationError", "state": "retry" } ] }, "StackCreateComplete": { "delay": 30, "operation": "DescribeStacks", "maxAttempts": 120, "description": "Wait until stack status is CREATE_COMPLETE.", "acceptors": [ { "expected": "CREATE_COMPLETE", "matcher": "pathAll", "state": "success", "argument": "Stacks[].StackStatus" }, { "expected": "CREATE_FAILED", "matcher": "pathAny", "state": "failure", "argument": "Stacks[].StackStatus" }, { "expected": "DELETE_COMPLETE", "matcher": "pathAny", "argument": "Stacks[].StackStatus", "state": "failure" }, { "expected": "DELETE_IN_PROGRESS", "matcher": "pathAny", "argument": "Stacks[].StackStatus", "state": "failure" }, { "expected": "DELETE_FAILED", "matcher": "pathAny", "argument": "Stacks[].StackStatus", "state": "failure" }, { "expected": "ROLLBACK_COMPLETE", "matcher": "pathAny", "state": "failure", "argument": "Stacks[].StackStatus" }, { "expected": "ROLLBACK_FAILED", "matcher": "pathAny", "state": "failure", "argument": "Stacks[].StackStatus" }, { "expected": "ROLLBACK_IN_PROGRESS", "matcher": "pathAny", "argument": "Stacks[].StackStatus", "state": "failure" }, { "expected": "ValidationError", "matcher": "error", "state": "failure" } ] }, "StackDeleteComplete": { "delay": 30, "operation": "DescribeStacks", "maxAttempts": 120, "description": "Wait until stack status is DELETE_COMPLETE.", "acceptors": [ { "expected": "DELETE_COMPLETE", "matcher": "pathAll", "state": "success", "argument": "Stacks[].StackStatus" }, { "expected": "ValidationError", "matcher": "error", "state": "success" }, { "expected": "DELETE_FAILED", "matcher": "pathAny", "state": "failure", "argument": "Stacks[].StackStatus" }, { "argument": "Stacks[].StackStatus", "expected": "CREATE_COMPLETE", "matcher": "pathAny", "state": "failure" }, { "argument": "Stacks[].StackStatus", "expected": "CREATE_FAILED", "matcher": "pathAny", "state": "failure" }, { "argument": "Stacks[].StackStatus", "expected": "CREATE_IN_PROGRESS", "matcher": "pathAny", "state": "failure" }, { "argument": "Stacks[].StackStatus", "expected": "ROLLBACK_COMPLETE", "matcher": "pathAny", "state": "failure" }, { "argument": "Stacks[].StackStatus", "expected": "ROLLBACK_FAILED", "matcher": "pathAny", "state": "failure" }, { "argument": "Stacks[].StackStatus", "expected": "ROLLBACK_IN_PROGRESS", "matcher": "pathAny", "state": "failure" }, { "argument": "Stacks[].StackStatus", "expected": "UPDATE_COMPLETE", "matcher": "pathAny", "state": "failure" }, { "argument": "Stacks[].StackStatus", "expected": "UPDATE_COMPLETE_CLEANUP_IN_PROGRESS", "matcher": "pathAny", "state": "failure" }, { "argument": "Stacks[].StackStatus", "expected": "UPDATE_IN_PROGRESS", "matcher": "pathAny", "state": "failure" }, { "argument": "Stacks[].StackStatus", "expected": "UPDATE_ROLLBACK_COMPLETE", "matcher": "pathAny", "state": "failure" }, { "argument": "Stacks[].StackStatus", "expected": "UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS", "matcher": "pathAny", "state": "failure" }, { "argument": "Stacks[].StackStatus", "expected": "UPDATE_ROLLBACK_FAILED", "matcher": "pathAny", "state": "failure" }, { "argument": "Stacks[].StackStatus", "expected": "UPDATE_ROLLBACK_IN_PROGRESS", "matcher": "pathAny", "state": "failure" } ] }, "StackUpdateComplete": { "delay": 30, "maxAttempts": 120, "operation": "DescribeStacks", "description": "Wait until stack status is UPDATE_COMPLETE.", "acceptors": [ { "expected": "UPDATE_COMPLETE", "matcher": "pathAll", "state": "success", "argument": "Stacks[].StackStatus" }, { "expected": "UPDATE_FAILED", "matcher": "pathAny", "state": "failure", "argument": "Stacks[].StackStatus" }, { "expected": "UPDATE_ROLLBACK_COMPLETE", "matcher": "pathAny", "state": "failure", "argument": "Stacks[].StackStatus" }, { "expected": "UPDATE_ROLLBACK_FAILED", "matcher": "pathAny", "state": "failure", "argument": "Stacks[].StackStatus" }, { "argument": "Stacks[].StackStatus", "expected": "UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS", "matcher": "pathAny", "state": "failure" }, { "argument": "Stacks[].StackStatus", "expected": "UPDATE_ROLLBACK_IN_PROGRESS", "matcher": "pathAny", "state": "failure" }, { "expected": "ValidationError", "matcher": "error", "state": "failure" } ] } } } aws-sdk-go-1.4.22/models/apis/cloudfront/000077500000000000000000000000001300374646400201615ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudfront/2015-04-17/000077500000000000000000000000001300374646400212165ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudfront/2015-04-17/api-2.json000066400000000000000000002071561300374646400230340ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-04-17", "endpointPrefix":"cloudfront", "globalEndpoint":"cloudfront.amazonaws.com", "serviceAbbreviation":"CloudFront", "serviceFullName":"Amazon CloudFront", "signatureVersion":"v4", "protocol":"rest-xml" }, "operations":{ "CreateCloudFrontOriginAccessIdentity":{ "name":"CreateCloudFrontOriginAccessIdentity2015_04_17", "http":{ "method":"POST", "requestUri":"/2015-04-17/origin-access-identity/cloudfront", "responseCode":201 }, "input":{"shape":"CreateCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"CreateCloudFrontOriginAccessIdentityResult"}, "errors":[ { "shape":"CloudFrontOriginAccessIdentityAlreadyExists", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"MissingBody", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyCloudFrontOriginAccessIdentities", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InconsistentQuantities", "error":{"httpStatusCode":400}, "exception":true } ] }, "CreateDistribution":{ "name":"CreateDistribution2015_04_17", "http":{ "method":"POST", "requestUri":"/2015-04-17/distribution", "responseCode":201 }, "input":{"shape":"CreateDistributionRequest"}, "output":{"shape":"CreateDistributionResult"}, "errors":[ { "shape":"CNAMEAlreadyExists", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"DistributionAlreadyExists", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"InvalidOrigin", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidOriginAccessIdentity", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true }, { "shape":"TooManyTrustedSigners", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TrustedSignerDoesNotExist", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidViewerCertificate", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidMinimumProtocolVersion", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingBody", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyDistributionCNAMEs", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyDistributions", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidDefaultRootObject", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidRelativePath", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidErrorCode", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidResponseCode", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidRequiredProtocol", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchOrigin", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"TooManyOrigins", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyCacheBehaviors", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyCookieNamesInWhiteList", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidForwardCookies", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyHeadersInForwardedValues", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidHeadersForS3Origin", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InconsistentQuantities", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyCertificates", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidLocationCode", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidGeoRestrictionParameter", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidProtocolSettings", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidTTLOrder", "error":{"httpStatusCode":400}, "exception":true } ] }, "CreateInvalidation":{ "name":"CreateInvalidation2015_04_17", "http":{ "method":"POST", "requestUri":"/2015-04-17/distribution/{DistributionId}/invalidation", "responseCode":201 }, "input":{"shape":"CreateInvalidationRequest"}, "output":{"shape":"CreateInvalidationResult"}, "errors":[ { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true }, { "shape":"MissingBody", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"BatchTooLarge", "error":{"httpStatusCode":413}, "exception":true }, { "shape":"TooManyInvalidationsInProgress", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InconsistentQuantities", "error":{"httpStatusCode":400}, "exception":true } ] }, "CreateStreamingDistribution":{ "name":"CreateStreamingDistribution2015_04_17", "http":{ "method":"POST", "requestUri":"/2015-04-17/streaming-distribution", "responseCode":201 }, "input":{"shape":"CreateStreamingDistributionRequest"}, "output":{"shape":"CreateStreamingDistributionResult"}, "errors":[ { "shape":"CNAMEAlreadyExists", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"StreamingDistributionAlreadyExists", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"InvalidOrigin", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidOriginAccessIdentity", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true }, { "shape":"TooManyTrustedSigners", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TrustedSignerDoesNotExist", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingBody", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyStreamingDistributionCNAMEs", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyStreamingDistributions", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InconsistentQuantities", "error":{"httpStatusCode":400}, "exception":true } ] }, "DeleteCloudFrontOriginAccessIdentity":{ "name":"DeleteCloudFrontOriginAccessIdentity2015_04_17", "http":{ "method":"DELETE", "requestUri":"/2015-04-17/origin-access-identity/cloudfront/{Id}", "responseCode":204 }, "input":{"shape":"DeleteCloudFrontOriginAccessIdentityRequest"}, "errors":[ { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true }, { "shape":"InvalidIfMatchVersion", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchCloudFrontOriginAccessIdentity", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"PreconditionFailed", "error":{"httpStatusCode":412}, "exception":true }, { "shape":"CloudFrontOriginAccessIdentityInUse", "error":{"httpStatusCode":409}, "exception":true } ] }, "DeleteDistribution":{ "name":"DeleteDistribution2015_04_17", "http":{ "method":"DELETE", "requestUri":"/2015-04-17/distribution/{Id}", "responseCode":204 }, "input":{"shape":"DeleteDistributionRequest"}, "errors":[ { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true }, { "shape":"DistributionNotDisabled", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"InvalidIfMatchVersion", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"PreconditionFailed", "error":{"httpStatusCode":412}, "exception":true } ] }, "DeleteStreamingDistribution":{ "name":"DeleteStreamingDistribution2015_04_17", "http":{ "method":"DELETE", "requestUri":"/2015-04-17/streaming-distribution/{Id}", "responseCode":204 }, "input":{"shape":"DeleteStreamingDistributionRequest"}, "errors":[ { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true }, { "shape":"StreamingDistributionNotDisabled", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"InvalidIfMatchVersion", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchStreamingDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"PreconditionFailed", "error":{"httpStatusCode":412}, "exception":true } ] }, "GetCloudFrontOriginAccessIdentity":{ "name":"GetCloudFrontOriginAccessIdentity2015_04_17", "http":{ "method":"GET", "requestUri":"/2015-04-17/origin-access-identity/cloudfront/{Id}" }, "input":{"shape":"GetCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"GetCloudFrontOriginAccessIdentityResult"}, "errors":[ { "shape":"NoSuchCloudFrontOriginAccessIdentity", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true } ] }, "GetCloudFrontOriginAccessIdentityConfig":{ "name":"GetCloudFrontOriginAccessIdentityConfig2015_04_17", "http":{ "method":"GET", "requestUri":"/2015-04-17/origin-access-identity/cloudfront/{Id}/config" }, "input":{"shape":"GetCloudFrontOriginAccessIdentityConfigRequest"}, "output":{"shape":"GetCloudFrontOriginAccessIdentityConfigResult"}, "errors":[ { "shape":"NoSuchCloudFrontOriginAccessIdentity", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true } ] }, "GetDistribution":{ "name":"GetDistribution2015_04_17", "http":{ "method":"GET", "requestUri":"/2015-04-17/distribution/{Id}" }, "input":{"shape":"GetDistributionRequest"}, "output":{"shape":"GetDistributionResult"}, "errors":[ { "shape":"NoSuchDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true } ] }, "GetDistributionConfig":{ "name":"GetDistributionConfig2015_04_17", "http":{ "method":"GET", "requestUri":"/2015-04-17/distribution/{Id}/config" }, "input":{"shape":"GetDistributionConfigRequest"}, "output":{"shape":"GetDistributionConfigResult"}, "errors":[ { "shape":"NoSuchDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true } ] }, "GetInvalidation":{ "name":"GetInvalidation2015_04_17", "http":{ "method":"GET", "requestUri":"/2015-04-17/distribution/{DistributionId}/invalidation/{Id}" }, "input":{"shape":"GetInvalidationRequest"}, "output":{"shape":"GetInvalidationResult"}, "errors":[ { "shape":"NoSuchInvalidation", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"NoSuchDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true } ] }, "GetStreamingDistribution":{ "name":"GetStreamingDistribution2015_04_17", "http":{ "method":"GET", "requestUri":"/2015-04-17/streaming-distribution/{Id}" }, "input":{"shape":"GetStreamingDistributionRequest"}, "output":{"shape":"GetStreamingDistributionResult"}, "errors":[ { "shape":"NoSuchStreamingDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true } ] }, "GetStreamingDistributionConfig":{ "name":"GetStreamingDistributionConfig2015_04_17", "http":{ "method":"GET", "requestUri":"/2015-04-17/streaming-distribution/{Id}/config" }, "input":{"shape":"GetStreamingDistributionConfigRequest"}, "output":{"shape":"GetStreamingDistributionConfigResult"}, "errors":[ { "shape":"NoSuchStreamingDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true } ] }, "ListCloudFrontOriginAccessIdentities":{ "name":"ListCloudFrontOriginAccessIdentities2015_04_17", "http":{ "method":"GET", "requestUri":"/2015-04-17/origin-access-identity/cloudfront" }, "input":{"shape":"ListCloudFrontOriginAccessIdentitiesRequest"}, "output":{"shape":"ListCloudFrontOriginAccessIdentitiesResult"}, "errors":[ { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true } ] }, "ListDistributions":{ "name":"ListDistributions2015_04_17", "http":{ "method":"GET", "requestUri":"/2015-04-17/distribution" }, "input":{"shape":"ListDistributionsRequest"}, "output":{"shape":"ListDistributionsResult"}, "errors":[ { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true } ] }, "ListInvalidations":{ "name":"ListInvalidations2015_04_17", "http":{ "method":"GET", "requestUri":"/2015-04-17/distribution/{DistributionId}/invalidation" }, "input":{"shape":"ListInvalidationsRequest"}, "output":{"shape":"ListInvalidationsResult"}, "errors":[ { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true } ] }, "ListStreamingDistributions":{ "name":"ListStreamingDistributions2015_04_17", "http":{ "method":"GET", "requestUri":"/2015-04-17/streaming-distribution" }, "input":{"shape":"ListStreamingDistributionsRequest"}, "output":{"shape":"ListStreamingDistributionsResult"}, "errors":[ { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true } ] }, "UpdateCloudFrontOriginAccessIdentity":{ "name":"UpdateCloudFrontOriginAccessIdentity2015_04_17", "http":{ "method":"PUT", "requestUri":"/2015-04-17/origin-access-identity/cloudfront/{Id}/config" }, "input":{"shape":"UpdateCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"UpdateCloudFrontOriginAccessIdentityResult"}, "errors":[ { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true }, { "shape":"IllegalUpdate", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidIfMatchVersion", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingBody", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchCloudFrontOriginAccessIdentity", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"PreconditionFailed", "error":{"httpStatusCode":412}, "exception":true }, { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InconsistentQuantities", "error":{"httpStatusCode":400}, "exception":true } ] }, "UpdateDistribution":{ "name":"UpdateDistribution2015_04_17", "http":{ "method":"PUT", "requestUri":"/2015-04-17/distribution/{Id}/config" }, "input":{"shape":"UpdateDistributionRequest"}, "output":{"shape":"UpdateDistributionResult"}, "errors":[ { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true }, { "shape":"CNAMEAlreadyExists", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"IllegalUpdate", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidIfMatchVersion", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingBody", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"PreconditionFailed", "error":{"httpStatusCode":412}, "exception":true }, { "shape":"TooManyDistributionCNAMEs", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidDefaultRootObject", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidRelativePath", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidErrorCode", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidResponseCode", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidOriginAccessIdentity", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyTrustedSigners", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TrustedSignerDoesNotExist", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidViewerCertificate", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidMinimumProtocolVersion", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidRequiredProtocol", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchOrigin", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"TooManyOrigins", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyCacheBehaviors", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyCookieNamesInWhiteList", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidForwardCookies", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyHeadersInForwardedValues", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidHeadersForS3Origin", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InconsistentQuantities", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyCertificates", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidLocationCode", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidGeoRestrictionParameter", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidTTLOrder", "error":{"httpStatusCode":400}, "exception":true } ] }, "UpdateStreamingDistribution":{ "name":"UpdateStreamingDistribution2015_04_17", "http":{ "method":"PUT", "requestUri":"/2015-04-17/streaming-distribution/{Id}/config" }, "input":{"shape":"UpdateStreamingDistributionRequest"}, "output":{"shape":"UpdateStreamingDistributionResult"}, "errors":[ { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true }, { "shape":"CNAMEAlreadyExists", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"IllegalUpdate", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidIfMatchVersion", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingBody", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchStreamingDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"PreconditionFailed", "error":{"httpStatusCode":412}, "exception":true }, { "shape":"TooManyStreamingDistributionCNAMEs", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidOriginAccessIdentity", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyTrustedSigners", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TrustedSignerDoesNotExist", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InconsistentQuantities", "error":{"httpStatusCode":400}, "exception":true } ] } }, "shapes":{ "AccessDenied":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":403}, "exception":true }, "ActiveTrustedSigners":{ "type":"structure", "required":[ "Enabled", "Quantity" ], "members":{ "Enabled":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"SignerList"} } }, "AliasList":{ "type":"list", "member":{ "shape":"string", "locationName":"CNAME" } }, "Aliases":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"AliasList"} } }, "AllowedMethods":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"MethodsList"}, "CachedMethods":{"shape":"CachedMethods"} } }, "AwsAccountNumberList":{ "type":"list", "member":{ "shape":"string", "locationName":"AwsAccountNumber" } }, "BatchTooLarge":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":413}, "exception":true }, "CNAMEAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CacheBehavior":{ "type":"structure", "required":[ "PathPattern", "TargetOriginId", "ForwardedValues", "TrustedSigners", "ViewerProtocolPolicy", "MinTTL" ], "members":{ "PathPattern":{"shape":"string"}, "TargetOriginId":{"shape":"string"}, "ForwardedValues":{"shape":"ForwardedValues"}, "TrustedSigners":{"shape":"TrustedSigners"}, "ViewerProtocolPolicy":{"shape":"ViewerProtocolPolicy"}, "MinTTL":{"shape":"long"}, "AllowedMethods":{"shape":"AllowedMethods"}, "SmoothStreaming":{"shape":"boolean"}, "DefaultTTL":{"shape":"long"}, "MaxTTL":{"shape":"long"} } }, "CacheBehaviorList":{ "type":"list", "member":{ "shape":"CacheBehavior", "locationName":"CacheBehavior" } }, "CacheBehaviors":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CacheBehaviorList"} } }, "CachedMethods":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"MethodsList"} } }, "CloudFrontOriginAccessIdentity":{ "type":"structure", "required":[ "Id", "S3CanonicalUserId" ], "members":{ "Id":{"shape":"string"}, "S3CanonicalUserId":{"shape":"string"}, "CloudFrontOriginAccessIdentityConfig":{"shape":"CloudFrontOriginAccessIdentityConfig"} } }, "CloudFrontOriginAccessIdentityAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CloudFrontOriginAccessIdentityConfig":{ "type":"structure", "required":[ "CallerReference", "Comment" ], "members":{ "CallerReference":{"shape":"string"}, "Comment":{"shape":"string"} } }, "CloudFrontOriginAccessIdentityInUse":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CloudFrontOriginAccessIdentityList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"CloudFrontOriginAccessIdentitySummaryList"} } }, "CloudFrontOriginAccessIdentitySummary":{ "type":"structure", "required":[ "Id", "S3CanonicalUserId", "Comment" ], "members":{ "Id":{"shape":"string"}, "S3CanonicalUserId":{"shape":"string"}, "Comment":{"shape":"string"} } }, "CloudFrontOriginAccessIdentitySummaryList":{ "type":"list", "member":{ "shape":"CloudFrontOriginAccessIdentitySummary", "locationName":"CloudFrontOriginAccessIdentitySummary" } }, "CookieNameList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "CookieNames":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CookieNameList"} } }, "CookiePreference":{ "type":"structure", "required":["Forward"], "members":{ "Forward":{"shape":"ItemSelection"}, "WhitelistedNames":{"shape":"CookieNames"} } }, "CreateCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["CloudFrontOriginAccessIdentityConfig"], "members":{ "CloudFrontOriginAccessIdentityConfig":{ "shape":"CloudFrontOriginAccessIdentityConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-04-17/"}, "locationName":"CloudFrontOriginAccessIdentityConfig" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "CreateCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "CreateDistributionRequest":{ "type":"structure", "required":["DistributionConfig"], "members":{ "DistributionConfig":{ "shape":"DistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-04-17/"}, "locationName":"DistributionConfig" } }, "payload":"DistributionConfig" }, "CreateDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "CreateInvalidationRequest":{ "type":"structure", "required":[ "DistributionId", "InvalidationBatch" ], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "InvalidationBatch":{ "shape":"InvalidationBatch", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-04-17/"}, "locationName":"InvalidationBatch" } }, "payload":"InvalidationBatch" }, "CreateInvalidationResult":{ "type":"structure", "members":{ "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "Invalidation":{"shape":"Invalidation"} }, "payload":"Invalidation" }, "CreateStreamingDistributionRequest":{ "type":"structure", "required":["StreamingDistributionConfig"], "members":{ "StreamingDistributionConfig":{ "shape":"StreamingDistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-04-17/"}, "locationName":"StreamingDistributionConfig" } }, "payload":"StreamingDistributionConfig" }, "CreateStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "CustomErrorResponse":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"integer"}, "ResponsePagePath":{"shape":"string"}, "ResponseCode":{"shape":"string"}, "ErrorCachingMinTTL":{"shape":"long"} } }, "CustomErrorResponseList":{ "type":"list", "member":{ "shape":"CustomErrorResponse", "locationName":"CustomErrorResponse" } }, "CustomErrorResponses":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CustomErrorResponseList"} } }, "CustomOriginConfig":{ "type":"structure", "required":[ "HTTPPort", "HTTPSPort", "OriginProtocolPolicy" ], "members":{ "HTTPPort":{"shape":"integer"}, "HTTPSPort":{"shape":"integer"}, "OriginProtocolPolicy":{"shape":"OriginProtocolPolicy"} } }, "DefaultCacheBehavior":{ "type":"structure", "required":[ "TargetOriginId", "ForwardedValues", "TrustedSigners", "ViewerProtocolPolicy", "MinTTL" ], "members":{ "TargetOriginId":{"shape":"string"}, "ForwardedValues":{"shape":"ForwardedValues"}, "TrustedSigners":{"shape":"TrustedSigners"}, "ViewerProtocolPolicy":{"shape":"ViewerProtocolPolicy"}, "MinTTL":{"shape":"long"}, "AllowedMethods":{"shape":"AllowedMethods"}, "SmoothStreaming":{"shape":"boolean"}, "DefaultTTL":{"shape":"long"}, "MaxTTL":{"shape":"long"} } }, "DeleteCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "required":["Id"] }, "DeleteDistributionRequest":{ "type":"structure", "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "required":["Id"] }, "DeleteStreamingDistributionRequest":{ "type":"structure", "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "required":["Id"] }, "Distribution":{ "type":"structure", "required":[ "Id", "Status", "LastModifiedTime", "InProgressInvalidationBatches", "DomainName", "ActiveTrustedSigners", "DistributionConfig" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "InProgressInvalidationBatches":{"shape":"integer"}, "DomainName":{"shape":"string"}, "ActiveTrustedSigners":{"shape":"ActiveTrustedSigners"}, "DistributionConfig":{"shape":"DistributionConfig"} } }, "DistributionAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "DistributionConfig":{ "type":"structure", "required":[ "CallerReference", "Origins", "DefaultCacheBehavior", "Comment", "Enabled" ], "members":{ "CallerReference":{"shape":"string"}, "Aliases":{"shape":"Aliases"}, "DefaultRootObject":{"shape":"string"}, "Origins":{"shape":"Origins"}, "DefaultCacheBehavior":{"shape":"DefaultCacheBehavior"}, "CacheBehaviors":{"shape":"CacheBehaviors"}, "CustomErrorResponses":{"shape":"CustomErrorResponses"}, "Comment":{"shape":"string"}, "Logging":{"shape":"LoggingConfig"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"}, "ViewerCertificate":{"shape":"ViewerCertificate"}, "Restrictions":{"shape":"Restrictions"} } }, "DistributionList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"DistributionSummaryList"} } }, "DistributionNotDisabled":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "DistributionSummary":{ "type":"structure", "required":[ "Id", "Status", "LastModifiedTime", "DomainName", "Aliases", "Origins", "DefaultCacheBehavior", "CacheBehaviors", "CustomErrorResponses", "Comment", "PriceClass", "Enabled", "ViewerCertificate", "Restrictions" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "Aliases":{"shape":"Aliases"}, "Origins":{"shape":"Origins"}, "DefaultCacheBehavior":{"shape":"DefaultCacheBehavior"}, "CacheBehaviors":{"shape":"CacheBehaviors"}, "CustomErrorResponses":{"shape":"CustomErrorResponses"}, "Comment":{"shape":"string"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"}, "ViewerCertificate":{"shape":"ViewerCertificate"}, "Restrictions":{"shape":"Restrictions"} } }, "DistributionSummaryList":{ "type":"list", "member":{ "shape":"DistributionSummary", "locationName":"DistributionSummary" } }, "ForwardedValues":{ "type":"structure", "required":[ "QueryString", "Cookies" ], "members":{ "QueryString":{"shape":"boolean"}, "Cookies":{"shape":"CookiePreference"}, "Headers":{"shape":"Headers"} } }, "GeoRestriction":{ "type":"structure", "required":[ "RestrictionType", "Quantity" ], "members":{ "RestrictionType":{"shape":"GeoRestrictionType"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"LocationList"} } }, "GeoRestrictionType":{ "type":"string", "enum":[ "blacklist", "whitelist", "none" ] }, "GetCloudFrontOriginAccessIdentityConfigRequest":{ "type":"structure", "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } }, "required":["Id"] }, "GetCloudFrontOriginAccessIdentityConfigResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentityConfig":{"shape":"CloudFrontOriginAccessIdentityConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "GetCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } }, "required":["Id"] }, "GetCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "GetDistributionConfigRequest":{ "type":"structure", "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } }, "required":["Id"] }, "GetDistributionConfigResult":{ "type":"structure", "members":{ "DistributionConfig":{"shape":"DistributionConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"DistributionConfig" }, "GetDistributionRequest":{ "type":"structure", "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } }, "required":["Id"] }, "GetDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "GetInvalidationRequest":{ "type":"structure", "required":[ "DistributionId", "Id" ], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetInvalidationResult":{ "type":"structure", "members":{ "Invalidation":{"shape":"Invalidation"} }, "payload":"Invalidation" }, "GetStreamingDistributionConfigRequest":{ "type":"structure", "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } }, "required":["Id"] }, "GetStreamingDistributionConfigResult":{ "type":"structure", "members":{ "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistributionConfig" }, "GetStreamingDistributionRequest":{ "type":"structure", "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } }, "required":["Id"] }, "GetStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "HeaderList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "Headers":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"HeaderList"} } }, "IllegalUpdate":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InconsistentQuantities":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidArgument":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidDefaultRootObject":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidErrorCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidForwardCookies":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidGeoRestrictionParameter":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidHeadersForS3Origin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidIfMatchVersion":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidLocationCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidMinimumProtocolVersion":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidOrigin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidOriginAccessIdentity":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidProtocolSettings":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRelativePath":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRequiredProtocol":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidResponseCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidTTLOrder":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidViewerCertificate":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "Invalidation":{ "type":"structure", "required":[ "Id", "Status", "CreateTime", "InvalidationBatch" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "CreateTime":{"shape":"timestamp"}, "InvalidationBatch":{"shape":"InvalidationBatch"} } }, "InvalidationBatch":{ "type":"structure", "required":[ "Paths", "CallerReference" ], "members":{ "Paths":{"shape":"Paths"}, "CallerReference":{"shape":"string"} } }, "InvalidationList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"InvalidationSummaryList"} } }, "InvalidationSummary":{ "type":"structure", "required":[ "Id", "CreateTime", "Status" ], "members":{ "Id":{"shape":"string"}, "CreateTime":{"shape":"timestamp"}, "Status":{"shape":"string"} } }, "InvalidationSummaryList":{ "type":"list", "member":{ "shape":"InvalidationSummary", "locationName":"InvalidationSummary" } }, "ItemSelection":{ "type":"string", "enum":[ "none", "whitelist", "all" ] }, "KeyPairIdList":{ "type":"list", "member":{ "shape":"string", "locationName":"KeyPairId" } }, "KeyPairIds":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"KeyPairIdList"} } }, "ListCloudFrontOriginAccessIdentitiesRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListCloudFrontOriginAccessIdentitiesResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentityList":{"shape":"CloudFrontOriginAccessIdentityList"} }, "payload":"CloudFrontOriginAccessIdentityList" }, "ListDistributionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListDistributionsResult":{ "type":"structure", "members":{ "DistributionList":{"shape":"DistributionList"} }, "payload":"DistributionList" }, "ListInvalidationsRequest":{ "type":"structure", "required":["DistributionId"], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListInvalidationsResult":{ "type":"structure", "members":{ "InvalidationList":{"shape":"InvalidationList"} }, "payload":"InvalidationList" }, "ListStreamingDistributionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListStreamingDistributionsResult":{ "type":"structure", "members":{ "StreamingDistributionList":{"shape":"StreamingDistributionList"} }, "payload":"StreamingDistributionList" }, "LocationList":{ "type":"list", "member":{ "shape":"string", "locationName":"Location" } }, "LoggingConfig":{ "type":"structure", "required":[ "Enabled", "IncludeCookies", "Bucket", "Prefix" ], "members":{ "Enabled":{"shape":"boolean"}, "IncludeCookies":{"shape":"boolean"}, "Bucket":{"shape":"string"}, "Prefix":{"shape":"string"} } }, "Method":{ "type":"string", "enum":[ "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" ] }, "MethodsList":{ "type":"list", "member":{ "shape":"Method", "locationName":"Method" } }, "MinimumProtocolVersion":{ "type":"string", "enum":[ "SSLv3", "TLSv1" ] }, "MissingBody":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "NoSuchCloudFrontOriginAccessIdentity":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchDistribution":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchInvalidation":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchOrigin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchStreamingDistribution":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "Origin":{ "type":"structure", "required":[ "Id", "DomainName" ], "members":{ "Id":{"shape":"string"}, "DomainName":{"shape":"string"}, "OriginPath":{"shape":"string"}, "S3OriginConfig":{"shape":"S3OriginConfig"}, "CustomOriginConfig":{"shape":"CustomOriginConfig"} } }, "OriginList":{ "type":"list", "member":{ "shape":"Origin", "locationName":"Origin" }, "min":1 }, "OriginProtocolPolicy":{ "type":"string", "enum":[ "http-only", "match-viewer" ] }, "Origins":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"OriginList"} } }, "PathList":{ "type":"list", "member":{ "shape":"string", "locationName":"Path" } }, "Paths":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"PathList"} } }, "PreconditionFailed":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":412}, "exception":true }, "PriceClass":{ "type":"string", "enum":[ "PriceClass_100", "PriceClass_200", "PriceClass_All" ] }, "Restrictions":{ "type":"structure", "required":["GeoRestriction"], "members":{ "GeoRestriction":{"shape":"GeoRestriction"} } }, "S3Origin":{ "type":"structure", "required":[ "DomainName", "OriginAccessIdentity" ], "members":{ "DomainName":{"shape":"string"}, "OriginAccessIdentity":{"shape":"string"} } }, "S3OriginConfig":{ "type":"structure", "required":["OriginAccessIdentity"], "members":{ "OriginAccessIdentity":{"shape":"string"} } }, "SSLSupportMethod":{ "type":"string", "enum":[ "sni-only", "vip" ] }, "Signer":{ "type":"structure", "members":{ "AwsAccountNumber":{"shape":"string"}, "KeyPairIds":{"shape":"KeyPairIds"} } }, "SignerList":{ "type":"list", "member":{ "shape":"Signer", "locationName":"Signer" } }, "StreamingDistribution":{ "type":"structure", "required":[ "Id", "Status", "DomainName", "ActiveTrustedSigners", "StreamingDistributionConfig" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "ActiveTrustedSigners":{"shape":"ActiveTrustedSigners"}, "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"} } }, "StreamingDistributionAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "StreamingDistributionConfig":{ "type":"structure", "required":[ "CallerReference", "S3Origin", "Comment", "TrustedSigners", "Enabled" ], "members":{ "CallerReference":{"shape":"string"}, "S3Origin":{"shape":"S3Origin"}, "Aliases":{"shape":"Aliases"}, "Comment":{"shape":"string"}, "Logging":{"shape":"StreamingLoggingConfig"}, "TrustedSigners":{"shape":"TrustedSigners"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"} } }, "StreamingDistributionList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"StreamingDistributionSummaryList"} } }, "StreamingDistributionNotDisabled":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "StreamingDistributionSummary":{ "type":"structure", "required":[ "Id", "Status", "LastModifiedTime", "DomainName", "S3Origin", "Aliases", "TrustedSigners", "Comment", "PriceClass", "Enabled" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "S3Origin":{"shape":"S3Origin"}, "Aliases":{"shape":"Aliases"}, "TrustedSigners":{"shape":"TrustedSigners"}, "Comment":{"shape":"string"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"} } }, "StreamingDistributionSummaryList":{ "type":"list", "member":{ "shape":"StreamingDistributionSummary", "locationName":"StreamingDistributionSummary" } }, "StreamingLoggingConfig":{ "type":"structure", "required":[ "Enabled", "Bucket", "Prefix" ], "members":{ "Enabled":{"shape":"boolean"}, "Bucket":{"shape":"string"}, "Prefix":{"shape":"string"} } }, "TooManyCacheBehaviors":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCertificates":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCloudFrontOriginAccessIdentities":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCookieNamesInWhiteList":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyDistributionCNAMEs":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyDistributions":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyHeadersInForwardedValues":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyInvalidationsInProgress":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyOrigins":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyStreamingDistributionCNAMEs":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyStreamingDistributions":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyTrustedSigners":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrustedSignerDoesNotExist":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrustedSigners":{ "type":"structure", "required":[ "Enabled", "Quantity" ], "members":{ "Enabled":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"AwsAccountNumberList"} } }, "UpdateCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":[ "CloudFrontOriginAccessIdentityConfig", "Id" ], "members":{ "CloudFrontOriginAccessIdentityConfig":{ "shape":"CloudFrontOriginAccessIdentityConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-04-17/"}, "locationName":"CloudFrontOriginAccessIdentityConfig" }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "UpdateCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "UpdateDistributionRequest":{ "type":"structure", "required":[ "DistributionConfig", "Id" ], "members":{ "DistributionConfig":{ "shape":"DistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-04-17/"}, "locationName":"DistributionConfig" }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"DistributionConfig" }, "UpdateDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "UpdateStreamingDistributionRequest":{ "type":"structure", "required":[ "StreamingDistributionConfig", "Id" ], "members":{ "StreamingDistributionConfig":{ "shape":"StreamingDistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-04-17/"}, "locationName":"StreamingDistributionConfig" }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"StreamingDistributionConfig" }, "UpdateStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "ViewerCertificate":{ "type":"structure", "members":{ "IAMCertificateId":{"shape":"string"}, "CloudFrontDefaultCertificate":{"shape":"boolean"}, "SSLSupportMethod":{"shape":"SSLSupportMethod"}, "MinimumProtocolVersion":{"shape":"MinimumProtocolVersion"} } }, "ViewerProtocolPolicy":{ "type":"string", "enum":[ "allow-all", "https-only", "redirect-to-https" ] }, "boolean":{"type":"boolean"}, "integer":{"type":"integer"}, "long":{"type":"long"}, "string":{"type":"string"}, "timestamp":{"type":"timestamp"} } } aws-sdk-go-1.4.22/models/apis/cloudfront/2015-04-17/docs-2.json000066400000000000000000002406121300374646400232050ustar00rootroot00000000000000{ "version": "2.0", "operations": { "CreateCloudFrontOriginAccessIdentity": "Create a new origin access identity.", "CreateDistribution": "Create a new distribution.", "CreateInvalidation": "Create a new invalidation.", "CreateStreamingDistribution": "Create a new streaming distribution.", "DeleteCloudFrontOriginAccessIdentity": "Delete an origin access identity.", "DeleteDistribution": "Delete a distribution.", "DeleteStreamingDistribution": "Delete a streaming distribution.", "GetCloudFrontOriginAccessIdentity": "Get the information about an origin access identity.", "GetCloudFrontOriginAccessIdentityConfig": "Get the configuration information about an origin access identity.", "GetDistribution": "Get the information about a distribution.", "GetDistributionConfig": "Get the configuration information about a distribution.", "GetInvalidation": "Get the information about an invalidation.", "GetStreamingDistribution": "Get the information about a streaming distribution.", "GetStreamingDistributionConfig": "Get the configuration information about a streaming distribution.", "ListCloudFrontOriginAccessIdentities": "List origin access identities.", "ListDistributions": "List distributions.", "ListInvalidations": "List invalidation batches.", "ListStreamingDistributions": "List streaming distributions.", "UpdateCloudFrontOriginAccessIdentity": "Update an origin access identity.", "UpdateDistribution": "Update a distribution.", "UpdateStreamingDistribution": "Update a streaming distribution." }, "service": null, "shapes": { "AccessDenied": { "base": "Access denied.", "refs": { } }, "ActiveTrustedSigners": { "base": "A complex type that lists the AWS accounts, if any, that you included in the TrustedSigners complex type for the default cache behavior or for any of the other cache behaviors for this distribution. These are accounts that you want to allow to create signed URLs for private content.", "refs": { "Distribution$ActiveTrustedSigners": "CloudFront automatically adds this element to the response only if you've set up the distribution to serve private content with signed URLs. The element lists the key pair IDs that CloudFront is aware of for each trusted signer. The Signer child element lists the AWS account number of the trusted signer (or an empty Self element if the signer is you). The Signer element also includes the IDs of any active key pairs associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create working signed URLs.", "StreamingDistribution$ActiveTrustedSigners": "CloudFront automatically adds this element to the response only if you've set up the distribution to serve private content with signed URLs. The element lists the key pair IDs that CloudFront is aware of for each trusted signer. The Signer child element lists the AWS account number of the trusted signer (or an empty Self element if the signer is you). The Signer element also includes the IDs of any active key pairs associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create working signed URLs." } }, "AliasList": { "base": null, "refs": { "Aliases$Items": "Optional: A complex type that contains CNAME elements, if any, for this distribution. If Quantity is 0, you can omit Items." } }, "Aliases": { "base": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "refs": { "DistributionConfig$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "DistributionSummary$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "StreamingDistributionConfig$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution.", "StreamingDistributionSummary$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution." } }, "AllowedMethods": { "base": "A complex type that controls which HTTP methods CloudFront processes and forwards to your Amazon S3 bucket or your custom origin. There are three choices: - CloudFront forwards only GET and HEAD requests. - CloudFront forwards only GET, HEAD and OPTIONS requests. - CloudFront forwards GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests. If you pick the third choice, you may need to restrict access to your Amazon S3 bucket or to your custom origin so users can't perform operations that you don't want them to. For example, you may not want users to have permission to delete objects from your origin.", "refs": { "CacheBehavior$AllowedMethods": null, "DefaultCacheBehavior$AllowedMethods": null } }, "AwsAccountNumberList": { "base": null, "refs": { "TrustedSigners$Items": "Optional: A complex type that contains trusted signers for this cache behavior. If Quantity is 0, you can omit Items." } }, "BatchTooLarge": { "base": null, "refs": { } }, "CNAMEAlreadyExists": { "base": null, "refs": { } }, "CacheBehavior": { "base": "A complex type that describes how CloudFront processes requests. You can create up to 10 cache behaviors.You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to distribute objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin will never be used. If you don't want to specify any cache behaviors, include only an empty CacheBehaviors element. Don't include an empty CacheBehavior element, or CloudFront returns a MalformedXML error. To delete all cache behaviors in an existing distribution, update the distribution configuration and include only an empty CacheBehaviors element. To add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution.", "refs": { "CacheBehaviorList$member": null } }, "CacheBehaviorList": { "base": null, "refs": { "CacheBehaviors$Items": "Optional: A complex type that contains cache behaviors for this distribution. If Quantity is 0, you can omit Items." } }, "CacheBehaviors": { "base": "A complex type that contains zero or more CacheBehavior elements.", "refs": { "DistributionConfig$CacheBehaviors": "A complex type that contains zero or more CacheBehavior elements.", "DistributionSummary$CacheBehaviors": "A complex type that contains zero or more CacheBehavior elements." } }, "CachedMethods": { "base": "A complex type that controls whether CloudFront caches the response to requests using the specified HTTP methods. There are two choices: - CloudFront caches responses to GET and HEAD requests. - CloudFront caches responses to GET, HEAD, and OPTIONS requests. If you pick the second choice for your S3 Origin, you may need to forward Access-Control-Request-Method, Access-Control-Request-Headers and Origin headers for the responses to be cached correctly.", "refs": { "AllowedMethods$CachedMethods": null } }, "CloudFrontOriginAccessIdentity": { "base": "CloudFront origin access identity.", "refs": { "CreateCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information.", "GetCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information.", "UpdateCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information." } }, "CloudFrontOriginAccessIdentityAlreadyExists": { "base": "If the CallerReference is a value you already sent in a previous request to create an identity but the content of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists error.", "refs": { } }, "CloudFrontOriginAccessIdentityConfig": { "base": "Origin access identity configuration.", "refs": { "CloudFrontOriginAccessIdentity$CloudFrontOriginAccessIdentityConfig": "The current configuration information for the identity.", "CreateCloudFrontOriginAccessIdentityRequest$CloudFrontOriginAccessIdentityConfig": "The origin access identity's configuration information.", "GetCloudFrontOriginAccessIdentityConfigResult$CloudFrontOriginAccessIdentityConfig": "The origin access identity's configuration information.", "UpdateCloudFrontOriginAccessIdentityRequest$CloudFrontOriginAccessIdentityConfig": "The identity's configuration information." } }, "CloudFrontOriginAccessIdentityInUse": { "base": null, "refs": { } }, "CloudFrontOriginAccessIdentityList": { "base": "The CloudFrontOriginAccessIdentityList type.", "refs": { "ListCloudFrontOriginAccessIdentitiesResult$CloudFrontOriginAccessIdentityList": "The CloudFrontOriginAccessIdentityList type." } }, "CloudFrontOriginAccessIdentitySummary": { "base": "Summary of the information about a CloudFront origin access identity.", "refs": { "CloudFrontOriginAccessIdentitySummaryList$member": null } }, "CloudFrontOriginAccessIdentitySummaryList": { "base": null, "refs": { "CloudFrontOriginAccessIdentityList$Items": "A complex type that contains one CloudFrontOriginAccessIdentitySummary element for each origin access identity that was created by the current AWS account." } }, "CookieNameList": { "base": null, "refs": { "CookieNames$Items": "Optional: A complex type that contains whitelisted cookies for this cache behavior. If Quantity is 0, you can omit Items." } }, "CookieNames": { "base": "A complex type that specifies the whitelisted cookies, if any, that you want CloudFront to forward to your origin that is associated with this cache behavior.", "refs": { "CookiePreference$WhitelistedNames": "A complex type that specifies the whitelisted cookies, if any, that you want CloudFront to forward to your origin that is associated with this cache behavior." } }, "CookiePreference": { "base": "A complex type that specifies the cookie preferences associated with this cache behavior.", "refs": { "ForwardedValues$Cookies": "A complex type that specifies how CloudFront handles cookies." } }, "CreateCloudFrontOriginAccessIdentityRequest": { "base": "The request to create a new origin access identity.", "refs": { } }, "CreateCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateDistributionRequest": { "base": "The request to create a new distribution.", "refs": { } }, "CreateDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateInvalidationRequest": { "base": "The request to create an invalidation.", "refs": { } }, "CreateInvalidationResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateStreamingDistributionRequest": { "base": "The request to create a new streaming distribution.", "refs": { } }, "CreateStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CustomErrorResponse": { "base": "A complex type that describes how you'd prefer CloudFront to respond to requests that result in either a 4xx or 5xx response. You can control whether a custom error page should be displayed, what the desired response code should be for this error page and how long should the error response be cached by CloudFront. If you don't want to specify any custom error responses, include only an empty CustomErrorResponses element. To delete all custom error responses in an existing distribution, update the distribution configuration and include only an empty CustomErrorResponses element. To add, change, or remove one or more custom error responses, update the distribution configuration and specify all of the custom error responses that you want to include in the updated distribution.", "refs": { "CustomErrorResponseList$member": null } }, "CustomErrorResponseList": { "base": null, "refs": { "CustomErrorResponses$Items": "Optional: A complex type that contains custom error responses for this distribution. If Quantity is 0, you can omit Items." } }, "CustomErrorResponses": { "base": "A complex type that contains zero or more CustomErrorResponse elements.", "refs": { "DistributionConfig$CustomErrorResponses": "A complex type that contains zero or more CustomErrorResponse elements.", "DistributionSummary$CustomErrorResponses": "A complex type that contains zero or more CustomErrorResponses elements." } }, "CustomOriginConfig": { "base": "A customer origin.", "refs": { "Origin$CustomOriginConfig": "A complex type that contains information about a custom origin. If the origin is an Amazon S3 bucket, use the S3OriginConfig element instead." } }, "DefaultCacheBehavior": { "base": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior.", "refs": { "DistributionConfig$DefaultCacheBehavior": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior.", "DistributionSummary$DefaultCacheBehavior": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior." } }, "DeleteCloudFrontOriginAccessIdentityRequest": { "base": "The request to delete a origin access identity.", "refs": { } }, "DeleteDistributionRequest": { "base": "The request to delete a distribution.", "refs": { } }, "DeleteStreamingDistributionRequest": { "base": "The request to delete a streaming distribution.", "refs": { } }, "Distribution": { "base": "A distribution.", "refs": { "CreateDistributionResult$Distribution": "The distribution's information.", "GetDistributionResult$Distribution": "The distribution's information.", "UpdateDistributionResult$Distribution": "The distribution's information." } }, "DistributionAlreadyExists": { "base": "The caller reference you attempted to create the distribution with is associated with another distribution.", "refs": { } }, "DistributionConfig": { "base": "A distribution Configuration.", "refs": { "CreateDistributionRequest$DistributionConfig": "The distribution's configuration information.", "Distribution$DistributionConfig": "The current configuration information for the distribution.", "GetDistributionConfigResult$DistributionConfig": "The distribution's configuration information.", "UpdateDistributionRequest$DistributionConfig": "The distribution's configuration information." } }, "DistributionList": { "base": "A distribution list.", "refs": { "ListDistributionsResult$DistributionList": "The DistributionList type." } }, "DistributionNotDisabled": { "base": null, "refs": { } }, "DistributionSummary": { "base": "A summary of the information for an Amazon CloudFront distribution.", "refs": { "DistributionSummaryList$member": null } }, "DistributionSummaryList": { "base": null, "refs": { "DistributionList$Items": "A complex type that contains one DistributionSummary element for each distribution that was created by the current AWS account." } }, "ForwardedValues": { "base": "A complex type that specifies how CloudFront handles query strings, cookies and headers.", "refs": { "CacheBehavior$ForwardedValues": "A complex type that specifies how CloudFront handles query strings, cookies and headers.", "DefaultCacheBehavior$ForwardedValues": "A complex type that specifies how CloudFront handles query strings, cookies and headers." } }, "GeoRestriction": { "base": "A complex type that controls the countries in which your content is distributed. For more information about geo restriction, go to Customizing Error Responses in the Amazon CloudFront Developer Guide. CloudFront determines the location of your users using MaxMind GeoIP databases. For information about the accuracy of these databases, see How accurate are your GeoIP databases? on the MaxMind website.", "refs": { "Restrictions$GeoRestriction": null } }, "GeoRestrictionType": { "base": null, "refs": { "GeoRestriction$RestrictionType": "The method that you want to use to restrict distribution of your content by country: - none: No geo restriction is enabled, meaning access to content is not restricted by client geo location. - blacklist: The Location elements specify the countries in which you do not want CloudFront to distribute your content. - whitelist: The Location elements specify the countries in which you want CloudFront to distribute your content." } }, "GetCloudFrontOriginAccessIdentityConfigRequest": { "base": "The request to get an origin access identity's configuration.", "refs": { } }, "GetCloudFrontOriginAccessIdentityConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetCloudFrontOriginAccessIdentityRequest": { "base": "The request to get an origin access identity's information.", "refs": { } }, "GetCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetDistributionConfigRequest": { "base": "The request to get a distribution configuration.", "refs": { } }, "GetDistributionConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetDistributionRequest": { "base": "The request to get a distribution's information.", "refs": { } }, "GetDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetInvalidationRequest": { "base": "The request to get an invalidation's information.", "refs": { } }, "GetInvalidationResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetStreamingDistributionConfigRequest": { "base": "To request to get a streaming distribution configuration.", "refs": { } }, "GetStreamingDistributionConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetStreamingDistributionRequest": { "base": "The request to get a streaming distribution's information.", "refs": { } }, "GetStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "HeaderList": { "base": null, "refs": { "Headers$Items": "Optional: A complex type that contains a Name element for each header that you want CloudFront to forward to the origin and to vary on for this cache behavior. If Quantity is 0, omit Items." } }, "Headers": { "base": "A complex type that specifies the headers that you want CloudFront to forward to the origin for this cache behavior. For the headers that you specify, CloudFront also caches separate versions of a given object based on the header values in viewer requests; this is known as varying on headers. For example, suppose viewer requests for logo.jpg contain a custom Product header that has a value of either Acme or Apex, and you configure CloudFront to vary on the Product header. CloudFront forwards the Product header to the origin and caches the response from the origin once for each header value.", "refs": { "ForwardedValues$Headers": "A complex type that specifies the Headers, if any, that you want CloudFront to vary upon for this cache behavior." } }, "IllegalUpdate": { "base": "Origin and CallerReference cannot be updated.", "refs": { } }, "InconsistentQuantities": { "base": "The value of Quantity and the size of Items do not match.", "refs": { } }, "InvalidArgument": { "base": "The argument is invalid.", "refs": { } }, "InvalidDefaultRootObject": { "base": "The default root object file name is too big or contains an invalid character.", "refs": { } }, "InvalidErrorCode": { "base": null, "refs": { } }, "InvalidForwardCookies": { "base": "Your request contains forward cookies option which doesn't match with the expectation for the whitelisted list of cookie names. Either list of cookie names has been specified when not allowed or list of cookie names is missing when expected.", "refs": { } }, "InvalidGeoRestrictionParameter": { "base": null, "refs": { } }, "InvalidHeadersForS3Origin": { "base": null, "refs": { } }, "InvalidIfMatchVersion": { "base": "The If-Match version is missing or not valid for the distribution.", "refs": { } }, "InvalidLocationCode": { "base": null, "refs": { } }, "InvalidMinimumProtocolVersion": { "base": null, "refs": { } }, "InvalidOrigin": { "base": "The Amazon S3 origin server specified does not refer to a valid Amazon S3 bucket.", "refs": { } }, "InvalidOriginAccessIdentity": { "base": "The origin access identity is not valid or doesn't exist.", "refs": { } }, "InvalidProtocolSettings": { "base": "You cannot specify SSLv3 as the minimum protocol version if you only want to support only clients that Support Server Name Indication (SNI).", "refs": { } }, "InvalidRelativePath": { "base": "The relative path is too big, is not URL-encoded, or does not begin with a slash (/).", "refs": { } }, "InvalidRequiredProtocol": { "base": "This operation requires the HTTPS protocol. Ensure that you specify the HTTPS protocol in your request, or omit the RequiredProtocols element from your distribution configuration.", "refs": { } }, "InvalidResponseCode": { "base": null, "refs": { } }, "InvalidTTLOrder": { "base": null, "refs": { } }, "InvalidViewerCertificate": { "base": null, "refs": { } }, "Invalidation": { "base": "An invalidation.", "refs": { "CreateInvalidationResult$Invalidation": "The invalidation's information.", "GetInvalidationResult$Invalidation": "The invalidation's information." } }, "InvalidationBatch": { "base": "An invalidation batch.", "refs": { "CreateInvalidationRequest$InvalidationBatch": "The batch information for the invalidation.", "Invalidation$InvalidationBatch": "The current invalidation information for the batch request." } }, "InvalidationList": { "base": "An invalidation list.", "refs": { "ListInvalidationsResult$InvalidationList": "Information about invalidation batches." } }, "InvalidationSummary": { "base": "Summary of an invalidation request.", "refs": { "InvalidationSummaryList$member": null } }, "InvalidationSummaryList": { "base": null, "refs": { "InvalidationList$Items": "A complex type that contains one InvalidationSummary element for each invalidation batch that was created by the current AWS account." } }, "ItemSelection": { "base": null, "refs": { "CookiePreference$Forward": "Use this element to specify whether you want CloudFront to forward cookies to the origin that is associated with this cache behavior. You can specify all, none or whitelist. If you choose All, CloudFront forwards all cookies regardless of how many your application uses." } }, "KeyPairIdList": { "base": null, "refs": { "KeyPairIds$Items": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber." } }, "KeyPairIds": { "base": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber.", "refs": { "Signer$KeyPairIds": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber." } }, "ListCloudFrontOriginAccessIdentitiesRequest": { "base": "The request to list origin access identities.", "refs": { } }, "ListCloudFrontOriginAccessIdentitiesResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListDistributionsRequest": { "base": "The request to list your distributions.", "refs": { } }, "ListDistributionsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListInvalidationsRequest": { "base": "The request to list invalidations.", "refs": { } }, "ListInvalidationsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListStreamingDistributionsRequest": { "base": "The request to list your streaming distributions.", "refs": { } }, "ListStreamingDistributionsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "LocationList": { "base": null, "refs": { "GeoRestriction$Items": "A complex type that contains a Location element for each country in which you want CloudFront either to distribute your content (whitelist) or not distribute your content (blacklist). The Location element is a two-letter, uppercase country code for a country that you want to include in your blacklist or whitelist. Include one Location element for each country. CloudFront and MaxMind both use ISO 3166 country codes. For the current list of countries and the corresponding codes, see ISO 3166-1-alpha-2 code on the International Organization for Standardization website. You can also refer to the country list in the CloudFront console, which includes both country names and codes." } }, "LoggingConfig": { "base": "A complex type that controls whether access logs are written for the distribution.", "refs": { "DistributionConfig$Logging": "A complex type that controls whether access logs are written for the distribution." } }, "Method": { "base": null, "refs": { "MethodsList$member": null } }, "MethodsList": { "base": null, "refs": { "AllowedMethods$Items": "A complex type that contains the HTTP methods that you want CloudFront to process and forward to your origin.", "CachedMethods$Items": "A complex type that contains the HTTP methods that you want CloudFront to cache responses to." } }, "MinimumProtocolVersion": { "base": null, "refs": { "ViewerCertificate$MinimumProtocolVersion": "Specify the minimum version of the SSL protocol that you want CloudFront to use, SSLv3 or TLSv1, for HTTPS connections. CloudFront will serve your objects only to browsers or devices that support at least the SSL version that you specify. The TLSv1 protocol is more secure, so we recommend that you specify SSLv3 only if your users are using browsers or devices that don't support TLSv1. If you're using a custom certificate (if you specify a value for IAMCertificateId) and if you're using dedicated IP (if you specify vip for SSLSupportMethod), you can choose SSLv3 or TLSv1 as the MinimumProtocolVersion. If you're using a custom certificate (if you specify a value for IAMCertificateId) and if you're using SNI (if you specify sni-only for SSLSupportMethod), you must specify TLSv1 for MinimumProtocolVersion." } }, "MissingBody": { "base": "This operation requires a body. Ensure that the body is present and the Content-Type header is set.", "refs": { } }, "NoSuchCloudFrontOriginAccessIdentity": { "base": "The specified origin access identity does not exist.", "refs": { } }, "NoSuchDistribution": { "base": "The specified distribution does not exist.", "refs": { } }, "NoSuchInvalidation": { "base": "The specified invalidation does not exist.", "refs": { } }, "NoSuchOrigin": { "base": "No origin exists with the specified Origin Id.", "refs": { } }, "NoSuchStreamingDistribution": { "base": "The specified streaming distribution does not exist.", "refs": { } }, "Origin": { "base": "A complex type that describes the Amazon S3 bucket or the HTTP server (for example, a web server) from which CloudFront gets your files.You must create at least one origin.", "refs": { "OriginList$member": null } }, "OriginList": { "base": null, "refs": { "Origins$Items": "A complex type that contains origins for this distribution." } }, "OriginProtocolPolicy": { "base": null, "refs": { "CustomOriginConfig$OriginProtocolPolicy": "The origin protocol policy to apply to your origin." } }, "Origins": { "base": "A complex type that contains information about origins for this distribution.", "refs": { "DistributionConfig$Origins": "A complex type that contains information about origins for this distribution.", "DistributionSummary$Origins": "A complex type that contains information about origins for this distribution." } }, "PathList": { "base": null, "refs": { "Paths$Items": "A complex type that contains a list of the objects that you want to invalidate." } }, "Paths": { "base": "A complex type that contains information about the objects that you want to invalidate.", "refs": { "InvalidationBatch$Paths": "The path of the object to invalidate. The path is relative to the distribution and must begin with a slash (/). You must enclose each invalidation object with the Path element tags. If the path includes non-ASCII characters or unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters. Do not URL encode any other characters in the path, or CloudFront will not invalidate the old version of the updated object." } }, "PreconditionFailed": { "base": "The precondition given in one or more of the request-header fields evaluated to false.", "refs": { } }, "PriceClass": { "base": null, "refs": { "DistributionConfig$PriceClass": "A complex type that contains information about price class for this distribution.", "DistributionSummary$PriceClass": null, "StreamingDistributionConfig$PriceClass": "A complex type that contains information about price class for this streaming distribution.", "StreamingDistributionSummary$PriceClass": null } }, "Restrictions": { "base": "A complex type that identifies ways in which you want to restrict distribution of your content.", "refs": { "DistributionConfig$Restrictions": null, "DistributionSummary$Restrictions": null } }, "S3Origin": { "base": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.", "refs": { "StreamingDistributionConfig$S3Origin": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.", "StreamingDistributionSummary$S3Origin": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution." } }, "S3OriginConfig": { "base": "A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead.", "refs": { "Origin$S3OriginConfig": "A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead." } }, "SSLSupportMethod": { "base": null, "refs": { "ViewerCertificate$SSLSupportMethod": "If you specify a value for IAMCertificateId, you must also specify how you want CloudFront to serve HTTPS requests. Valid values are vip and sni-only. If you specify vip, CloudFront uses dedicated IP addresses for your content and can respond to HTTPS requests from any viewer. However, you must request permission to use this feature, and you incur additional monthly charges. If you specify sni-only, CloudFront can only respond to HTTPS requests from viewers that support Server Name Indication (SNI). All modern browsers support SNI, but some browsers still in use don't support SNI. Do not specify a value for SSLSupportMethod if you specified true for CloudFrontDefaultCertificate." } }, "Signer": { "base": "A complex type that lists the AWS accounts that were included in the TrustedSigners complex type, as well as their active CloudFront key pair IDs, if any.", "refs": { "SignerList$member": null } }, "SignerList": { "base": null, "refs": { "ActiveTrustedSigners$Items": "A complex type that contains one Signer complex type for each unique trusted signer that is specified in the TrustedSigners complex type, including trusted signers in the default cache behavior and in all of the other cache behaviors." } }, "StreamingDistribution": { "base": "A streaming distribution.", "refs": { "CreateStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information.", "GetStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information.", "UpdateStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information." } }, "StreamingDistributionAlreadyExists": { "base": null, "refs": { } }, "StreamingDistributionConfig": { "base": "The configuration for the streaming distribution.", "refs": { "CreateStreamingDistributionRequest$StreamingDistributionConfig": "The streaming distribution's configuration information.", "GetStreamingDistributionConfigResult$StreamingDistributionConfig": "The streaming distribution's configuration information.", "StreamingDistribution$StreamingDistributionConfig": "The current configuration information for the streaming distribution.", "UpdateStreamingDistributionRequest$StreamingDistributionConfig": "The streaming distribution's configuration information." } }, "StreamingDistributionList": { "base": "A streaming distribution list.", "refs": { "ListStreamingDistributionsResult$StreamingDistributionList": "The StreamingDistributionList type." } }, "StreamingDistributionNotDisabled": { "base": null, "refs": { } }, "StreamingDistributionSummary": { "base": "A summary of the information for an Amazon CloudFront streaming distribution.", "refs": { "StreamingDistributionSummaryList$member": null } }, "StreamingDistributionSummaryList": { "base": null, "refs": { "StreamingDistributionList$Items": "A complex type that contains one StreamingDistributionSummary element for each distribution that was created by the current AWS account." } }, "StreamingLoggingConfig": { "base": "A complex type that controls whether access logs are written for this streaming distribution.", "refs": { "StreamingDistributionConfig$Logging": "A complex type that controls whether access logs are written for the streaming distribution." } }, "TooManyCacheBehaviors": { "base": "You cannot create anymore cache behaviors for the distribution.", "refs": { } }, "TooManyCertificates": { "base": "You cannot create anymore custom ssl certificates.", "refs": { } }, "TooManyCloudFrontOriginAccessIdentities": { "base": "Processing your request would cause you to exceed the maximum number of origin access identities allowed.", "refs": { } }, "TooManyCookieNamesInWhiteList": { "base": "Your request contains more cookie names in the whitelist than are allowed per cache behavior.", "refs": { } }, "TooManyDistributionCNAMEs": { "base": "Your request contains more CNAMEs than are allowed per distribution.", "refs": { } }, "TooManyDistributions": { "base": "Processing your request would cause you to exceed the maximum number of distributions allowed.", "refs": { } }, "TooManyHeadersInForwardedValues": { "base": null, "refs": { } }, "TooManyInvalidationsInProgress": { "base": "You have exceeded the maximum number of allowable InProgress invalidation batch requests, or invalidation objects.", "refs": { } }, "TooManyOrigins": { "base": "You cannot create anymore origins for the distribution.", "refs": { } }, "TooManyStreamingDistributionCNAMEs": { "base": null, "refs": { } }, "TooManyStreamingDistributions": { "base": "Processing your request would cause you to exceed the maximum number of streaming distributions allowed.", "refs": { } }, "TooManyTrustedSigners": { "base": "Your request contains more trusted signers than are allowed per distribution.", "refs": { } }, "TrustedSignerDoesNotExist": { "base": "One or more of your trusted signers do not exist.", "refs": { } }, "TrustedSigners": { "base": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "refs": { "CacheBehavior$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "DefaultCacheBehavior$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "StreamingDistributionConfig$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "StreamingDistributionSummary$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution." } }, "UpdateCloudFrontOriginAccessIdentityRequest": { "base": "The request to update an origin access identity.", "refs": { } }, "UpdateCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "UpdateDistributionRequest": { "base": "The request to update a distribution.", "refs": { } }, "UpdateDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "UpdateStreamingDistributionRequest": { "base": "The request to update a streaming distribution.", "refs": { } }, "UpdateStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ViewerCertificate": { "base": "A complex type that contains information about viewer certificates for this distribution.", "refs": { "DistributionConfig$ViewerCertificate": null, "DistributionSummary$ViewerCertificate": null } }, "ViewerProtocolPolicy": { "base": null, "refs": { "CacheBehavior$ViewerProtocolPolicy": "Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. If you want CloudFront to allow end users to use any available protocol, specify allow-all. If you want CloudFront to require HTTPS, specify https. If you want CloudFront to respond to an HTTP request with an HTTP status code of 301 (Moved Permanently) and the HTTPS URL, specify redirect-to-https. The viewer then resubmits the request using the HTTPS URL.", "DefaultCacheBehavior$ViewerProtocolPolicy": "Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. If you want CloudFront to allow end users to use any available protocol, specify allow-all. If you want CloudFront to require HTTPS, specify https. If you want CloudFront to respond to an HTTP request with an HTTP status code of 301 (Moved Permanently) and the HTTPS URL, specify redirect-to-https. The viewer then resubmits the request using the HTTPS URL." } }, "boolean": { "base": null, "refs": { "ActiveTrustedSigners$Enabled": "Each active trusted signer.", "CacheBehavior$SmoothStreaming": "Indicates whether you want to distribute media files in Microsoft Smooth Streaming format using the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "CloudFrontOriginAccessIdentityList$IsTruncated": "A flag that indicates whether more origin access identities remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more items in the list.", "DefaultCacheBehavior$SmoothStreaming": "Indicates whether you want to distribute media files in Microsoft Smooth Streaming format using the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "DistributionConfig$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "DistributionList$IsTruncated": "A flag that indicates whether more distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.", "DistributionSummary$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "ForwardedValues$QueryString": "Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "InvalidationList$IsTruncated": "A flag that indicates whether more invalidation batch requests remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more invalidation batches in the list.", "LoggingConfig$Enabled": "Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you do not want to enable logging when you create a distribution or if you want to disable logging for an existing distribution, specify false for Enabled, and specify empty Bucket and Prefix elements. If you specify false for Enabled but you specify values for Bucket, prefix and IncludeCookies, the values are automatically deleted.", "LoggingConfig$IncludeCookies": "Specifies whether you want CloudFront to include cookies in access logs, specify true for IncludeCookies. If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you do not want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify false for IncludeCookies.", "StreamingDistributionConfig$Enabled": "Whether the streaming distribution is enabled to accept end user requests for content.", "StreamingDistributionList$IsTruncated": "A flag that indicates whether more streaming distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.", "StreamingDistributionSummary$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "StreamingLoggingConfig$Enabled": "Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you do not want to enable logging when you create a streaming distribution or if you want to disable logging for an existing streaming distribution, specify false for Enabled, and specify empty Bucket and Prefix elements. If you specify false for Enabled but you specify values for Bucket and Prefix, the values are automatically deleted.", "TrustedSigners$Enabled": "Specifies whether you want to require end users to use signed URLs to access the files specified by PathPattern and TargetOriginId.", "ViewerCertificate$CloudFrontDefaultCertificate": "If you want viewers to use HTTPS to request your objects and you're using the CloudFront domain name of your distribution in your object URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), set to true. Omit this value if you are setting an IAMCertificateId." } }, "integer": { "base": null, "refs": { "ActiveTrustedSigners$Quantity": "The number of unique trusted signers included in all cache behaviors. For example, if three cache behaviors all list the same three AWS accounts, the value of Quantity for ActiveTrustedSigners will be 3.", "Aliases$Quantity": "The number of CNAMEs, if any, for this distribution.", "AllowedMethods$Quantity": "The number of HTTP methods that you want CloudFront to forward to your origin. Valid values are 2 (for GET and HEAD requests), 3 (for GET, HEAD and OPTIONS requests) and 7 (for GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests).", "CacheBehaviors$Quantity": "The number of cache behaviors for this distribution.", "CachedMethods$Quantity": "The number of HTTP methods for which you want CloudFront to cache responses. Valid values are 2 (for caching responses to GET and HEAD requests) and 3 (for caching responses to GET, HEAD, and OPTIONS requests).", "CloudFrontOriginAccessIdentityList$MaxItems": "The value you provided for the MaxItems request parameter.", "CloudFrontOriginAccessIdentityList$Quantity": "The number of CloudFront origin access identities that were created by the current AWS account.", "CookieNames$Quantity": "The number of whitelisted cookies for this cache behavior.", "CustomErrorResponse$ErrorCode": "The 4xx or 5xx HTTP status code that you want to customize. For a list of HTTP status codes that you can customize, see CloudFront documentation.", "CustomErrorResponses$Quantity": "The number of custom error responses for this distribution.", "CustomOriginConfig$HTTPPort": "The HTTP port the custom origin listens on.", "CustomOriginConfig$HTTPSPort": "The HTTPS port the custom origin listens on.", "Distribution$InProgressInvalidationBatches": "The number of invalidation batches currently in progress.", "DistributionList$MaxItems": "The value you provided for the MaxItems request parameter.", "DistributionList$Quantity": "The number of distributions that were created by the current AWS account.", "GeoRestriction$Quantity": "When geo restriction is enabled, this is the number of countries in your whitelist or blacklist. Otherwise, when it is not enabled, Quantity is 0, and you can omit Items.", "Headers$Quantity": "The number of different headers that you want CloudFront to forward to the origin and to vary on for this cache behavior. The maximum number of headers that you can specify by name is 10. If you want CloudFront to forward all headers to the origin and vary on all of them, specify 1 for Quantity and * for Name. If you don't want CloudFront to forward any additional headers to the origin or to vary on any headers, specify 0 for Quantity and omit Items.", "InvalidationList$MaxItems": "The value you provided for the MaxItems request parameter.", "InvalidationList$Quantity": "The number of invalidation batches that were created by the current AWS account.", "KeyPairIds$Quantity": "The number of active CloudFront key pairs for AwsAccountNumber.", "Origins$Quantity": "The number of origins for this distribution.", "Paths$Quantity": "The number of objects that you want to invalidate.", "StreamingDistributionList$MaxItems": "The value you provided for the MaxItems request parameter.", "StreamingDistributionList$Quantity": "The number of streaming distributions that were created by the current AWS account.", "TrustedSigners$Quantity": "The number of trusted signers for this cache behavior." } }, "long": { "base": null, "refs": { "CacheBehavior$MinTTL": "The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CacheBehavior$DefaultTTL": "If you don't configure your origin to add a Cache-Control max-age directive or an Expires header, DefaultTTL is the default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CacheBehavior$MaxTTL": "The maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CustomErrorResponse$ErrorCachingMinTTL": "The minimum amount of time you want HTTP error codes to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. You can specify a value from 0 to 31,536,000.", "DefaultCacheBehavior$MinTTL": "The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "DefaultCacheBehavior$DefaultTTL": "If you don't configure your origin to add a Cache-Control max-age directive or an Expires header, DefaultTTL is the default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "DefaultCacheBehavior$MaxTTL": "The maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years)." } }, "string": { "base": null, "refs": { "AccessDenied$Message": null, "AliasList$member": null, "AwsAccountNumberList$member": null, "BatchTooLarge$Message": null, "CNAMEAlreadyExists$Message": null, "CacheBehavior$PathPattern": "The pattern (for example, images/*.jpg) that specifies which requests you want this cache behavior to apply to. When CloudFront receives an end-user request, the requested path is compared with path patterns in the order in which cache behaviors are listed in the distribution. The path pattern for the default cache behavior is * and cannot be changed. If the request for an object does not match the path pattern for any cache behaviors, CloudFront applies the behavior in the default cache behavior.", "CacheBehavior$TargetOriginId": "The value of ID for the origin that you want CloudFront to route requests to when a request matches the path pattern either for a cache behavior or for the default cache behavior.", "CloudFrontOriginAccessIdentity$Id": "The ID for the origin access identity. For example: E74FTE3AJFJ256A.", "CloudFrontOriginAccessIdentity$S3CanonicalUserId": "The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin access identity read permission to an object in Amazon S3.", "CloudFrontOriginAccessIdentityAlreadyExists$Message": null, "CloudFrontOriginAccessIdentityConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the CloudFrontOriginAccessIdentityConfig object), a new origin access identity is created. If the CallerReference is a value you already sent in a previous request to create an identity, and the content of the CloudFrontOriginAccessIdentityConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create an identity but the content of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists error.", "CloudFrontOriginAccessIdentityConfig$Comment": "Any comments you want to include about the origin access identity.", "CloudFrontOriginAccessIdentityInUse$Message": null, "CloudFrontOriginAccessIdentityList$Marker": "The value you provided for the Marker request parameter.", "CloudFrontOriginAccessIdentityList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your origin access identities where they left off.", "CloudFrontOriginAccessIdentitySummary$Id": "The ID for the origin access identity. For example: E74FTE3AJFJ256A.", "CloudFrontOriginAccessIdentitySummary$S3CanonicalUserId": "The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin access identity read permission to an object in Amazon S3.", "CloudFrontOriginAccessIdentitySummary$Comment": "The comment for this origin access identity, as originally specified when created.", "CookieNameList$member": null, "CreateCloudFrontOriginAccessIdentityResult$Location": "The fully qualified URI of the new origin access identity just created. For example: https://cloudfront.amazonaws.com/2010-11-01/origin-access-identity/cloudfront/E74FTE3AJFJ256A.", "CreateCloudFrontOriginAccessIdentityResult$ETag": "The current version of the origin access identity created.", "CreateDistributionResult$Location": "The fully qualified URI of the new distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5.", "CreateDistributionResult$ETag": "The current version of the distribution created.", "CreateInvalidationRequest$DistributionId": "The distribution's id.", "CreateInvalidationResult$Location": "The fully qualified URI of the distribution and invalidation batch request, including the Invalidation ID.", "CreateStreamingDistributionResult$Location": "The fully qualified URI of the new streaming distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8.", "CreateStreamingDistributionResult$ETag": "The current version of the streaming distribution created.", "CustomErrorResponse$ResponsePagePath": "The path of the custom error page (for example, /custom_404.html). The path is relative to the distribution and must begin with a slash (/). If the path includes any non-ASCII characters or unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters. Do not URL encode any other characters in the path, or CloudFront will not return the custom error page to the viewer.", "CustomErrorResponse$ResponseCode": "The HTTP status code that you want CloudFront to return with the custom error page to the viewer. For a list of HTTP status codes that you can replace, see CloudFront Documentation.", "DefaultCacheBehavior$TargetOriginId": "The value of ID for the origin that you want CloudFront to route requests to when a request matches the path pattern either for a cache behavior or for the default cache behavior.", "DeleteCloudFrontOriginAccessIdentityRequest$Id": "The origin access identity's id.", "DeleteCloudFrontOriginAccessIdentityRequest$IfMatch": "The value of the ETag header you received from a previous GET or PUT request. For example: E2QWRUHAPOMQZL.", "DeleteDistributionRequest$Id": "The distribution id.", "DeleteDistributionRequest$IfMatch": "The value of the ETag header you received when you disabled the distribution. For example: E2QWRUHAPOMQZL.", "DeleteStreamingDistributionRequest$Id": "The distribution id.", "DeleteStreamingDistributionRequest$IfMatch": "The value of the ETag header you received when you disabled the streaming distribution. For example: E2QWRUHAPOMQZL.", "Distribution$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "Distribution$Status": "This response element indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "Distribution$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "DistributionAlreadyExists$Message": null, "DistributionConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the DistributionConfig object), a new distribution is created. If the CallerReference is a value you already sent in a previous request to create a distribution, and the content of the DistributionConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a distribution but the content of the DistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.", "DistributionConfig$DefaultRootObject": "The object that you want CloudFront to return (for example, index.html) when an end user requests the root URL for your distribution (http://www.example.com) instead of an object in your distribution (http://www.example.com/index.html). Specifying a default root object avoids exposing the contents of your distribution. If you don't want to specify a default root object when you create a distribution, include an empty DefaultRootObject element. To delete the default root object from an existing distribution, update the distribution configuration and include an empty DefaultRootObject element. To replace the default root object, update the distribution configuration and specify the new object.", "DistributionConfig$Comment": "Any comments you want to include about the distribution.", "DistributionList$Marker": "The value you provided for the Marker request parameter.", "DistributionList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your distributions where they left off.", "DistributionNotDisabled$Message": null, "DistributionSummary$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "DistributionSummary$Status": "This response element indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "DistributionSummary$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "DistributionSummary$Comment": "The comment originally specified when this distribution was created.", "GetCloudFrontOriginAccessIdentityConfigRequest$Id": "The identity's id.", "GetCloudFrontOriginAccessIdentityConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetCloudFrontOriginAccessIdentityRequest$Id": "The identity's id.", "GetCloudFrontOriginAccessIdentityResult$ETag": "The current version of the origin access identity's information. For example: E2QWRUHAPOMQZL.", "GetDistributionConfigRequest$Id": "The distribution's id.", "GetDistributionConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetDistributionRequest$Id": "The distribution's id.", "GetDistributionResult$ETag": "The current version of the distribution's information. For example: E2QWRUHAPOMQZL.", "GetInvalidationRequest$DistributionId": "The distribution's id.", "GetInvalidationRequest$Id": "The invalidation's id.", "GetStreamingDistributionConfigRequest$Id": "The streaming distribution's id.", "GetStreamingDistributionConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetStreamingDistributionRequest$Id": "The streaming distribution's id.", "GetStreamingDistributionResult$ETag": "The current version of the streaming distribution's information. For example: E2QWRUHAPOMQZL.", "HeaderList$member": null, "IllegalUpdate$Message": null, "InconsistentQuantities$Message": null, "InvalidArgument$Message": null, "InvalidDefaultRootObject$Message": null, "InvalidErrorCode$Message": null, "InvalidForwardCookies$Message": null, "InvalidGeoRestrictionParameter$Message": null, "InvalidHeadersForS3Origin$Message": null, "InvalidIfMatchVersion$Message": null, "InvalidLocationCode$Message": null, "InvalidMinimumProtocolVersion$Message": null, "InvalidOrigin$Message": null, "InvalidOriginAccessIdentity$Message": null, "InvalidProtocolSettings$Message": null, "InvalidRelativePath$Message": null, "InvalidRequiredProtocol$Message": null, "InvalidResponseCode$Message": null, "InvalidTTLOrder$Message": null, "InvalidViewerCertificate$Message": null, "Invalidation$Id": "The identifier for the invalidation request. For example: IDFDVBD632BHDS5.", "Invalidation$Status": "The status of the invalidation request. When the invalidation batch is finished, the status is Completed.", "InvalidationBatch$CallerReference": "A unique name that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the Path object), a new distribution is created. If the CallerReference is a value you already sent in a previous request to create an invalidation batch, and the content of each Path element is identical to the original request, the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a distribution but the content of any Path is different from the original request, CloudFront returns an InvalidationBatchAlreadyExists error.", "InvalidationList$Marker": "The value you provided for the Marker request parameter.", "InvalidationList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your invalidation batches where they left off.", "InvalidationSummary$Id": "The unique ID for an invalidation request.", "InvalidationSummary$Status": "The status of an invalidation request.", "KeyPairIdList$member": null, "ListCloudFrontOriginAccessIdentitiesRequest$Marker": "Use this when paginating results to indicate where to begin in your list of origin access identities. The results include identities in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last identity on that page).", "ListCloudFrontOriginAccessIdentitiesRequest$MaxItems": "The maximum number of origin access identities you want in the response body.", "ListDistributionsRequest$Marker": "Use this when paginating results to indicate where to begin in your list of distributions. The results include distributions in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last distribution on that page).", "ListDistributionsRequest$MaxItems": "The maximum number of distributions you want in the response body.", "ListInvalidationsRequest$DistributionId": "The distribution's id.", "ListInvalidationsRequest$Marker": "Use this parameter when paginating results to indicate where to begin in your list of invalidation batches. Because the results are returned in decreasing order from most recent to oldest, the most recent results are on the first page, the second page will contain earlier results, and so on. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response. This value is the same as the ID of the last invalidation batch on that page.", "ListInvalidationsRequest$MaxItems": "The maximum number of invalidation batches you want in the response body.", "ListStreamingDistributionsRequest$Marker": "Use this when paginating results to indicate where to begin in your list of streaming distributions. The results include distributions in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last distribution on that page).", "ListStreamingDistributionsRequest$MaxItems": "The maximum number of streaming distributions you want in the response body.", "LocationList$member": null, "LoggingConfig$Bucket": "The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.", "LoggingConfig$Prefix": "An optional string that you want CloudFront to prefix to the access log filenames for this distribution, for example, myprefix/. If you want to enable logging, but you do not want to specify a prefix, you still must include an empty Prefix element in the Logging element.", "MissingBody$Message": null, "NoSuchCloudFrontOriginAccessIdentity$Message": null, "NoSuchDistribution$Message": null, "NoSuchInvalidation$Message": null, "NoSuchOrigin$Message": null, "NoSuchStreamingDistribution$Message": null, "Origin$Id": "A unique identifier for the origin. The value of Id must be unique within the distribution. You use the value of Id when you create a cache behavior. The Id identifies the origin that CloudFront routes a request to when the request matches the path pattern for that cache behavior.", "Origin$DomainName": "Amazon S3 origins: The DNS name of the Amazon S3 bucket from which you want CloudFront to get objects for this origin, for example, myawsbucket.s3.amazonaws.com. Custom origins: The DNS domain name for the HTTP server from which you want CloudFront to get objects for this origin, for example, www.example.com.", "Origin$OriginPath": "An optional element that causes CloudFront to request your content from a directory in your Amazon S3 bucket or your custom origin. When you include the OriginPath element, specify the directory name, beginning with a /. CloudFront appends the directory name to the value of DomainName.", "PathList$member": null, "PreconditionFailed$Message": null, "S3Origin$DomainName": "The DNS name of the S3 origin.", "S3Origin$OriginAccessIdentity": "Your S3 origin's origin access identity.", "S3OriginConfig$OriginAccessIdentity": "The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that end users can only access objects in an Amazon S3 bucket through CloudFront. If you want end users to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty OriginAccessIdentity element. To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty OriginAccessIdentity element. To replace the origin access identity, update the distribution configuration and specify the new origin access identity. Use the format origin-access-identity/cloudfront/Id where Id is the value that CloudFront returned in the Id element when you created the origin access identity.", "Signer$AwsAccountNumber": "Specifies an AWS account that can create signed URLs. Values: self, which indicates that the AWS account that was used to create the distribution can created signed URLs, or an AWS account number. Omit the dashes in the account number.", "StreamingDistribution$Id": "The identifier for the streaming distribution. For example: EGTXBD79H29TRA8.", "StreamingDistribution$Status": "The current status of the streaming distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "StreamingDistribution$DomainName": "The domain name corresponding to the streaming distribution. For example: s5c39gqb8ow64r.cloudfront.net.", "StreamingDistributionAlreadyExists$Message": null, "StreamingDistributionConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the StreamingDistributionConfig object), a new streaming distribution is created. If the CallerReference is a value you already sent in a previous request to create a streaming distribution, and the content of the StreamingDistributionConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a streaming distribution but the content of the StreamingDistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.", "StreamingDistributionConfig$Comment": "Any comments you want to include about the streaming distribution.", "StreamingDistributionList$Marker": "The value you provided for the Marker request parameter.", "StreamingDistributionList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your streaming distributions where they left off.", "StreamingDistributionNotDisabled$Message": null, "StreamingDistributionSummary$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "StreamingDistributionSummary$Status": "Indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "StreamingDistributionSummary$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "StreamingDistributionSummary$Comment": "The comment originally specified when this distribution was created.", "StreamingLoggingConfig$Bucket": "The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.", "StreamingLoggingConfig$Prefix": "An optional string that you want CloudFront to prefix to the access log filenames for this streaming distribution, for example, myprefix/. If you want to enable logging, but you do not want to specify a prefix, you still must include an empty Prefix element in the Logging element.", "TooManyCacheBehaviors$Message": null, "TooManyCertificates$Message": null, "TooManyCloudFrontOriginAccessIdentities$Message": null, "TooManyCookieNamesInWhiteList$Message": null, "TooManyDistributionCNAMEs$Message": null, "TooManyDistributions$Message": null, "TooManyHeadersInForwardedValues$Message": null, "TooManyInvalidationsInProgress$Message": null, "TooManyOrigins$Message": null, "TooManyStreamingDistributionCNAMEs$Message": null, "TooManyStreamingDistributions$Message": null, "TooManyTrustedSigners$Message": null, "TrustedSignerDoesNotExist$Message": null, "UpdateCloudFrontOriginAccessIdentityRequest$Id": "The identity's id.", "UpdateCloudFrontOriginAccessIdentityRequest$IfMatch": "The value of the ETag header you received when retrieving the identity's configuration. For example: E2QWRUHAPOMQZL.", "UpdateCloudFrontOriginAccessIdentityResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "UpdateDistributionRequest$Id": "The distribution's id.", "UpdateDistributionRequest$IfMatch": "The value of the ETag header you received when retrieving the distribution's configuration. For example: E2QWRUHAPOMQZL.", "UpdateDistributionResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "UpdateStreamingDistributionRequest$Id": "The streaming distribution's id.", "UpdateStreamingDistributionRequest$IfMatch": "The value of the ETag header you received when retrieving the streaming distribution's configuration. For example: E2QWRUHAPOMQZL.", "UpdateStreamingDistributionResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "ViewerCertificate$IAMCertificateId": "If you want viewers to use HTTPS to request your objects and you're using an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), specify the IAM certificate identifier of the custom viewer certificate for this distribution. Specify either this value or CloudFrontDefaultCertificate." } }, "timestamp": { "base": null, "refs": { "Distribution$LastModifiedTime": "The date and time the distribution was last modified.", "DistributionSummary$LastModifiedTime": "The date and time the distribution was last modified.", "Invalidation$CreateTime": "The date and time the invalidation request was first made.", "InvalidationSummary$CreateTime": null, "StreamingDistribution$LastModifiedTime": "The date and time the distribution was last modified.", "StreamingDistributionSummary$LastModifiedTime": "The date and time the distribution was last modified." } } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2015-04-17/paginators-1.json000066400000000000000000000021461300374646400244210ustar00rootroot00000000000000{ "pagination": { "ListCloudFrontOriginAccessIdentities": { "input_token": "Marker", "output_token": "CloudFrontOriginAccessIdentityList.NextMarker", "limit_key": "MaxItems", "more_results": "CloudFrontOriginAccessIdentityList.IsTruncated", "result_key": "CloudFrontOriginAccessIdentityList.Items" }, "ListDistributions": { "input_token": "Marker", "output_token": "DistributionList.NextMarker", "limit_key": "MaxItems", "more_results": "DistributionList.IsTruncated", "result_key": "DistributionList.Items" }, "ListInvalidations": { "input_token": "Marker", "output_token": "InvalidationList.NextMarker", "limit_key": "MaxItems", "more_results": "InvalidationList.IsTruncated", "result_key": "InvalidationList.Items" }, "ListStreamingDistributions": { "input_token": "Marker", "output_token": "StreamingDistributionList.NextMarker", "limit_key": "MaxItems", "more_results": "StreamingDistributionList.IsTruncated", "result_key": "StreamingDistributionList.Items" } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2015-04-17/waiters-2.json000066400000000000000000000022401300374646400237240ustar00rootroot00000000000000{ "version": 2, "waiters": { "DistributionDeployed": { "delay": 60, "operation": "GetDistribution", "maxAttempts": 25, "description": "Wait until a distribution is deployed.", "acceptors": [ { "expected": "Deployed", "matcher": "path", "state": "success", "argument": "Distribution.Status" } ] }, "InvalidationCompleted": { "delay": 20, "operation": "GetInvalidation", "maxAttempts": 30, "description": "Wait until an invalidation has completed.", "acceptors": [ { "expected": "Completed", "matcher": "path", "state": "success", "argument": "Invalidation.Status" } ] }, "StreamingDistributionDeployed": { "delay": 60, "operation": "GetStreamingDistribution", "maxAttempts": 25, "description": "Wait until a streaming distribution is deployed.", "acceptors": [ { "expected": "Deployed", "matcher": "path", "state": "success", "argument": "StreamingDistribution.Status" } ] } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2015-07-27/000077500000000000000000000000001300374646400212225ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudfront/2015-07-27/api-2.json000066400000000000000000002126621300374646400230360ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-07-27", "endpointPrefix":"cloudfront", "globalEndpoint":"cloudfront.amazonaws.com", "serviceAbbreviation":"CloudFront", "serviceFullName":"Amazon CloudFront", "signatureVersion":"v4", "protocol":"rest-xml" }, "operations":{ "CreateCloudFrontOriginAccessIdentity":{ "name":"CreateCloudFrontOriginAccessIdentity2015_07_27", "http":{ "method":"POST", "requestUri":"/2015-07-27/origin-access-identity/cloudfront", "responseCode":201 }, "input":{"shape":"CreateCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"CreateCloudFrontOriginAccessIdentityResult"}, "errors":[ { "shape":"CloudFrontOriginAccessIdentityAlreadyExists", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"MissingBody", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyCloudFrontOriginAccessIdentities", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InconsistentQuantities", "error":{"httpStatusCode":400}, "exception":true } ] }, "CreateDistribution":{ "name":"CreateDistribution2015_07_27", "http":{ "method":"POST", "requestUri":"/2015-07-27/distribution", "responseCode":201 }, "input":{"shape":"CreateDistributionRequest"}, "output":{"shape":"CreateDistributionResult"}, "errors":[ { "shape":"CNAMEAlreadyExists", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"DistributionAlreadyExists", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"InvalidOrigin", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidOriginAccessIdentity", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true }, { "shape":"TooManyTrustedSigners", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TrustedSignerDoesNotExist", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidViewerCertificate", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidMinimumProtocolVersion", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingBody", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyDistributionCNAMEs", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyDistributions", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidDefaultRootObject", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidRelativePath", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidErrorCode", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidResponseCode", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidRequiredProtocol", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchOrigin", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"TooManyOrigins", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyCacheBehaviors", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyCookieNamesInWhiteList", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidForwardCookies", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyHeadersInForwardedValues", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidHeadersForS3Origin", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InconsistentQuantities", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyCertificates", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidLocationCode", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidGeoRestrictionParameter", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidProtocolSettings", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidTTLOrder", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidWebACLId", "error":{"httpStatusCode":400}, "exception":true } ] }, "CreateInvalidation":{ "name":"CreateInvalidation2015_07_27", "http":{ "method":"POST", "requestUri":"/2015-07-27/distribution/{DistributionId}/invalidation", "responseCode":201 }, "input":{"shape":"CreateInvalidationRequest"}, "output":{"shape":"CreateInvalidationResult"}, "errors":[ { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true }, { "shape":"MissingBody", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"BatchTooLarge", "error":{"httpStatusCode":413}, "exception":true }, { "shape":"TooManyInvalidationsInProgress", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InconsistentQuantities", "error":{"httpStatusCode":400}, "exception":true } ] }, "CreateStreamingDistribution":{ "name":"CreateStreamingDistribution2015_07_27", "http":{ "method":"POST", "requestUri":"/2015-07-27/streaming-distribution", "responseCode":201 }, "input":{"shape":"CreateStreamingDistributionRequest"}, "output":{"shape":"CreateStreamingDistributionResult"}, "errors":[ { "shape":"CNAMEAlreadyExists", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"StreamingDistributionAlreadyExists", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"InvalidOrigin", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidOriginAccessIdentity", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true }, { "shape":"TooManyTrustedSigners", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TrustedSignerDoesNotExist", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingBody", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyStreamingDistributionCNAMEs", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyStreamingDistributions", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InconsistentQuantities", "error":{"httpStatusCode":400}, "exception":true } ] }, "DeleteCloudFrontOriginAccessIdentity":{ "name":"DeleteCloudFrontOriginAccessIdentity2015_07_27", "http":{ "method":"DELETE", "requestUri":"/2015-07-27/origin-access-identity/cloudfront/{Id}", "responseCode":204 }, "input":{"shape":"DeleteCloudFrontOriginAccessIdentityRequest"}, "errors":[ { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true }, { "shape":"InvalidIfMatchVersion", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchCloudFrontOriginAccessIdentity", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"PreconditionFailed", "error":{"httpStatusCode":412}, "exception":true }, { "shape":"CloudFrontOriginAccessIdentityInUse", "error":{"httpStatusCode":409}, "exception":true } ] }, "DeleteDistribution":{ "name":"DeleteDistribution2015_07_27", "http":{ "method":"DELETE", "requestUri":"/2015-07-27/distribution/{Id}", "responseCode":204 }, "input":{"shape":"DeleteDistributionRequest"}, "errors":[ { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true }, { "shape":"DistributionNotDisabled", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"InvalidIfMatchVersion", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"PreconditionFailed", "error":{"httpStatusCode":412}, "exception":true } ] }, "DeleteStreamingDistribution":{ "name":"DeleteStreamingDistribution2015_07_27", "http":{ "method":"DELETE", "requestUri":"/2015-07-27/streaming-distribution/{Id}", "responseCode":204 }, "input":{"shape":"DeleteStreamingDistributionRequest"}, "errors":[ { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true }, { "shape":"StreamingDistributionNotDisabled", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"InvalidIfMatchVersion", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchStreamingDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"PreconditionFailed", "error":{"httpStatusCode":412}, "exception":true } ] }, "GetCloudFrontOriginAccessIdentity":{ "name":"GetCloudFrontOriginAccessIdentity2015_07_27", "http":{ "method":"GET", "requestUri":"/2015-07-27/origin-access-identity/cloudfront/{Id}" }, "input":{"shape":"GetCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"GetCloudFrontOriginAccessIdentityResult"}, "errors":[ { "shape":"NoSuchCloudFrontOriginAccessIdentity", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true } ] }, "GetCloudFrontOriginAccessIdentityConfig":{ "name":"GetCloudFrontOriginAccessIdentityConfig2015_07_27", "http":{ "method":"GET", "requestUri":"/2015-07-27/origin-access-identity/cloudfront/{Id}/config" }, "input":{"shape":"GetCloudFrontOriginAccessIdentityConfigRequest"}, "output":{"shape":"GetCloudFrontOriginAccessIdentityConfigResult"}, "errors":[ { "shape":"NoSuchCloudFrontOriginAccessIdentity", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true } ] }, "GetDistribution":{ "name":"GetDistribution2015_07_27", "http":{ "method":"GET", "requestUri":"/2015-07-27/distribution/{Id}" }, "input":{"shape":"GetDistributionRequest"}, "output":{"shape":"GetDistributionResult"}, "errors":[ { "shape":"NoSuchDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true } ] }, "GetDistributionConfig":{ "name":"GetDistributionConfig2015_07_27", "http":{ "method":"GET", "requestUri":"/2015-07-27/distribution/{Id}/config" }, "input":{"shape":"GetDistributionConfigRequest"}, "output":{"shape":"GetDistributionConfigResult"}, "errors":[ { "shape":"NoSuchDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true } ] }, "GetInvalidation":{ "name":"GetInvalidation2015_07_27", "http":{ "method":"GET", "requestUri":"/2015-07-27/distribution/{DistributionId}/invalidation/{Id}" }, "input":{"shape":"GetInvalidationRequest"}, "output":{"shape":"GetInvalidationResult"}, "errors":[ { "shape":"NoSuchInvalidation", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"NoSuchDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true } ] }, "GetStreamingDistribution":{ "name":"GetStreamingDistribution2015_07_27", "http":{ "method":"GET", "requestUri":"/2015-07-27/streaming-distribution/{Id}" }, "input":{"shape":"GetStreamingDistributionRequest"}, "output":{"shape":"GetStreamingDistributionResult"}, "errors":[ { "shape":"NoSuchStreamingDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true } ] }, "GetStreamingDistributionConfig":{ "name":"GetStreamingDistributionConfig2015_07_27", "http":{ "method":"GET", "requestUri":"/2015-07-27/streaming-distribution/{Id}/config" }, "input":{"shape":"GetStreamingDistributionConfigRequest"}, "output":{"shape":"GetStreamingDistributionConfigResult"}, "errors":[ { "shape":"NoSuchStreamingDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true } ] }, "ListCloudFrontOriginAccessIdentities":{ "name":"ListCloudFrontOriginAccessIdentities2015_07_27", "http":{ "method":"GET", "requestUri":"/2015-07-27/origin-access-identity/cloudfront" }, "input":{"shape":"ListCloudFrontOriginAccessIdentitiesRequest"}, "output":{"shape":"ListCloudFrontOriginAccessIdentitiesResult"}, "errors":[ { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true } ] }, "ListDistributions":{ "name":"ListDistributions2015_07_27", "http":{ "method":"GET", "requestUri":"/2015-07-27/distribution" }, "input":{"shape":"ListDistributionsRequest"}, "output":{"shape":"ListDistributionsResult"}, "errors":[ { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true } ] }, "ListDistributionsByWebACLId":{ "name":"ListDistributionsByWebACLId2015_07_27", "http":{ "method":"GET", "requestUri":"/2015-07-27/distributionsByWebACLId/{WebACLId}" }, "input":{"shape":"ListDistributionsByWebACLIdRequest"}, "output":{"shape":"ListDistributionsByWebACLIdResult"}, "errors":[ { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidWebACLId", "error":{"httpStatusCode":400}, "exception":true } ] }, "ListInvalidations":{ "name":"ListInvalidations2015_07_27", "http":{ "method":"GET", "requestUri":"/2015-07-27/distribution/{DistributionId}/invalidation" }, "input":{"shape":"ListInvalidationsRequest"}, "output":{"shape":"ListInvalidationsResult"}, "errors":[ { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true } ] }, "ListStreamingDistributions":{ "name":"ListStreamingDistributions2015_07_27", "http":{ "method":"GET", "requestUri":"/2015-07-27/streaming-distribution" }, "input":{"shape":"ListStreamingDistributionsRequest"}, "output":{"shape":"ListStreamingDistributionsResult"}, "errors":[ { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true } ] }, "UpdateCloudFrontOriginAccessIdentity":{ "name":"UpdateCloudFrontOriginAccessIdentity2015_07_27", "http":{ "method":"PUT", "requestUri":"/2015-07-27/origin-access-identity/cloudfront/{Id}/config" }, "input":{"shape":"UpdateCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"UpdateCloudFrontOriginAccessIdentityResult"}, "errors":[ { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true }, { "shape":"IllegalUpdate", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidIfMatchVersion", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingBody", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchCloudFrontOriginAccessIdentity", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"PreconditionFailed", "error":{"httpStatusCode":412}, "exception":true }, { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InconsistentQuantities", "error":{"httpStatusCode":400}, "exception":true } ] }, "UpdateDistribution":{ "name":"UpdateDistribution2015_07_27", "http":{ "method":"PUT", "requestUri":"/2015-07-27/distribution/{Id}/config" }, "input":{"shape":"UpdateDistributionRequest"}, "output":{"shape":"UpdateDistributionResult"}, "errors":[ { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true }, { "shape":"CNAMEAlreadyExists", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"IllegalUpdate", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidIfMatchVersion", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingBody", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"PreconditionFailed", "error":{"httpStatusCode":412}, "exception":true }, { "shape":"TooManyDistributionCNAMEs", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidDefaultRootObject", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidRelativePath", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidErrorCode", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidResponseCode", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidOriginAccessIdentity", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyTrustedSigners", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TrustedSignerDoesNotExist", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidViewerCertificate", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidMinimumProtocolVersion", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidRequiredProtocol", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchOrigin", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"TooManyOrigins", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyCacheBehaviors", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyCookieNamesInWhiteList", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidForwardCookies", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyHeadersInForwardedValues", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidHeadersForS3Origin", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InconsistentQuantities", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyCertificates", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidLocationCode", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidGeoRestrictionParameter", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidTTLOrder", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidWebACLId", "error":{"httpStatusCode":400}, "exception":true } ] }, "UpdateStreamingDistribution":{ "name":"UpdateStreamingDistribution2015_07_27", "http":{ "method":"PUT", "requestUri":"/2015-07-27/streaming-distribution/{Id}/config" }, "input":{"shape":"UpdateStreamingDistributionRequest"}, "output":{"shape":"UpdateStreamingDistributionResult"}, "errors":[ { "shape":"AccessDenied", "error":{"httpStatusCode":403}, "exception":true }, { "shape":"CNAMEAlreadyExists", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"IllegalUpdate", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidIfMatchVersion", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingBody", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"NoSuchStreamingDistribution", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"PreconditionFailed", "error":{"httpStatusCode":412}, "exception":true }, { "shape":"TooManyStreamingDistributionCNAMEs", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidArgument", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidOriginAccessIdentity", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TooManyTrustedSigners", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"TrustedSignerDoesNotExist", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InconsistentQuantities", "error":{"httpStatusCode":400}, "exception":true } ] } }, "shapes":{ "AccessDenied":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":403}, "exception":true }, "ActiveTrustedSigners":{ "type":"structure", "required":[ "Enabled", "Quantity" ], "members":{ "Enabled":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"SignerList"} } }, "AliasList":{ "type":"list", "member":{ "shape":"string", "locationName":"CNAME" } }, "Aliases":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"AliasList"} } }, "AllowedMethods":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"MethodsList"}, "CachedMethods":{"shape":"CachedMethods"} } }, "AwsAccountNumberList":{ "type":"list", "member":{ "shape":"string", "locationName":"AwsAccountNumber" } }, "BatchTooLarge":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":413}, "exception":true }, "CNAMEAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CacheBehavior":{ "type":"structure", "required":[ "PathPattern", "TargetOriginId", "ForwardedValues", "TrustedSigners", "ViewerProtocolPolicy", "MinTTL" ], "members":{ "PathPattern":{"shape":"string"}, "TargetOriginId":{"shape":"string"}, "ForwardedValues":{"shape":"ForwardedValues"}, "TrustedSigners":{"shape":"TrustedSigners"}, "ViewerProtocolPolicy":{"shape":"ViewerProtocolPolicy"}, "MinTTL":{"shape":"long"}, "AllowedMethods":{"shape":"AllowedMethods"}, "SmoothStreaming":{"shape":"boolean"}, "DefaultTTL":{"shape":"long"}, "MaxTTL":{"shape":"long"} } }, "CacheBehaviorList":{ "type":"list", "member":{ "shape":"CacheBehavior", "locationName":"CacheBehavior" } }, "CacheBehaviors":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CacheBehaviorList"} } }, "CachedMethods":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"MethodsList"} } }, "CloudFrontOriginAccessIdentity":{ "type":"structure", "required":[ "Id", "S3CanonicalUserId" ], "members":{ "Id":{"shape":"string"}, "S3CanonicalUserId":{"shape":"string"}, "CloudFrontOriginAccessIdentityConfig":{"shape":"CloudFrontOriginAccessIdentityConfig"} } }, "CloudFrontOriginAccessIdentityAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CloudFrontOriginAccessIdentityConfig":{ "type":"structure", "required":[ "CallerReference", "Comment" ], "members":{ "CallerReference":{"shape":"string"}, "Comment":{"shape":"string"} } }, "CloudFrontOriginAccessIdentityInUse":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CloudFrontOriginAccessIdentityList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"CloudFrontOriginAccessIdentitySummaryList"} } }, "CloudFrontOriginAccessIdentitySummary":{ "type":"structure", "required":[ "Id", "S3CanonicalUserId", "Comment" ], "members":{ "Id":{"shape":"string"}, "S3CanonicalUserId":{"shape":"string"}, "Comment":{"shape":"string"} } }, "CloudFrontOriginAccessIdentitySummaryList":{ "type":"list", "member":{ "shape":"CloudFrontOriginAccessIdentitySummary", "locationName":"CloudFrontOriginAccessIdentitySummary" } }, "CookieNameList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "CookieNames":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CookieNameList"} } }, "CookiePreference":{ "type":"structure", "required":["Forward"], "members":{ "Forward":{"shape":"ItemSelection"}, "WhitelistedNames":{"shape":"CookieNames"} } }, "CreateCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["CloudFrontOriginAccessIdentityConfig"], "members":{ "CloudFrontOriginAccessIdentityConfig":{ "shape":"CloudFrontOriginAccessIdentityConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-07-27/"}, "locationName":"CloudFrontOriginAccessIdentityConfig" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "CreateCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "CreateDistributionRequest":{ "type":"structure", "required":["DistributionConfig"], "members":{ "DistributionConfig":{ "shape":"DistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-07-27/"}, "locationName":"DistributionConfig" } }, "payload":"DistributionConfig" }, "CreateDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "CreateInvalidationRequest":{ "type":"structure", "required":[ "DistributionId", "InvalidationBatch" ], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "InvalidationBatch":{ "shape":"InvalidationBatch", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-07-27/"}, "locationName":"InvalidationBatch" } }, "payload":"InvalidationBatch" }, "CreateInvalidationResult":{ "type":"structure", "members":{ "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "Invalidation":{"shape":"Invalidation"} }, "payload":"Invalidation" }, "CreateStreamingDistributionRequest":{ "type":"structure", "required":["StreamingDistributionConfig"], "members":{ "StreamingDistributionConfig":{ "shape":"StreamingDistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-07-27/"}, "locationName":"StreamingDistributionConfig" } }, "payload":"StreamingDistributionConfig" }, "CreateStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "CustomErrorResponse":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"integer"}, "ResponsePagePath":{"shape":"string"}, "ResponseCode":{"shape":"string"}, "ErrorCachingMinTTL":{"shape":"long"} } }, "CustomErrorResponseList":{ "type":"list", "member":{ "shape":"CustomErrorResponse", "locationName":"CustomErrorResponse" } }, "CustomErrorResponses":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CustomErrorResponseList"} } }, "CustomOriginConfig":{ "type":"structure", "required":[ "HTTPPort", "HTTPSPort", "OriginProtocolPolicy" ], "members":{ "HTTPPort":{"shape":"integer"}, "HTTPSPort":{"shape":"integer"}, "OriginProtocolPolicy":{"shape":"OriginProtocolPolicy"} } }, "DefaultCacheBehavior":{ "type":"structure", "required":[ "TargetOriginId", "ForwardedValues", "TrustedSigners", "ViewerProtocolPolicy", "MinTTL" ], "members":{ "TargetOriginId":{"shape":"string"}, "ForwardedValues":{"shape":"ForwardedValues"}, "TrustedSigners":{"shape":"TrustedSigners"}, "ViewerProtocolPolicy":{"shape":"ViewerProtocolPolicy"}, "MinTTL":{"shape":"long"}, "AllowedMethods":{"shape":"AllowedMethods"}, "SmoothStreaming":{"shape":"boolean"}, "DefaultTTL":{"shape":"long"}, "MaxTTL":{"shape":"long"} } }, "DeleteCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "required":["Id"] }, "DeleteDistributionRequest":{ "type":"structure", "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "required":["Id"] }, "DeleteStreamingDistributionRequest":{ "type":"structure", "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "required":["Id"] }, "Distribution":{ "type":"structure", "required":[ "Id", "Status", "LastModifiedTime", "InProgressInvalidationBatches", "DomainName", "ActiveTrustedSigners", "DistributionConfig" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "InProgressInvalidationBatches":{"shape":"integer"}, "DomainName":{"shape":"string"}, "ActiveTrustedSigners":{"shape":"ActiveTrustedSigners"}, "DistributionConfig":{"shape":"DistributionConfig"} } }, "DistributionAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "DistributionConfig":{ "type":"structure", "required":[ "CallerReference", "Origins", "DefaultCacheBehavior", "Comment", "Enabled" ], "members":{ "CallerReference":{"shape":"string"}, "Aliases":{"shape":"Aliases"}, "DefaultRootObject":{"shape":"string"}, "Origins":{"shape":"Origins"}, "DefaultCacheBehavior":{"shape":"DefaultCacheBehavior"}, "CacheBehaviors":{"shape":"CacheBehaviors"}, "CustomErrorResponses":{"shape":"CustomErrorResponses"}, "Comment":{"shape":"string"}, "Logging":{"shape":"LoggingConfig"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"}, "ViewerCertificate":{"shape":"ViewerCertificate"}, "Restrictions":{"shape":"Restrictions"}, "WebACLId":{"shape":"string"} } }, "DistributionList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"DistributionSummaryList"} } }, "DistributionNotDisabled":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "DistributionSummary":{ "type":"structure", "required":[ "Id", "Status", "LastModifiedTime", "DomainName", "Aliases", "Origins", "DefaultCacheBehavior", "CacheBehaviors", "CustomErrorResponses", "Comment", "PriceClass", "Enabled", "ViewerCertificate", "Restrictions", "WebACLId" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "Aliases":{"shape":"Aliases"}, "Origins":{"shape":"Origins"}, "DefaultCacheBehavior":{"shape":"DefaultCacheBehavior"}, "CacheBehaviors":{"shape":"CacheBehaviors"}, "CustomErrorResponses":{"shape":"CustomErrorResponses"}, "Comment":{"shape":"string"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"}, "ViewerCertificate":{"shape":"ViewerCertificate"}, "Restrictions":{"shape":"Restrictions"}, "WebACLId":{"shape":"string"} } }, "DistributionSummaryList":{ "type":"list", "member":{ "shape":"DistributionSummary", "locationName":"DistributionSummary" } }, "ForwardedValues":{ "type":"structure", "required":[ "QueryString", "Cookies" ], "members":{ "QueryString":{"shape":"boolean"}, "Cookies":{"shape":"CookiePreference"}, "Headers":{"shape":"Headers"} } }, "GeoRestriction":{ "type":"structure", "required":[ "RestrictionType", "Quantity" ], "members":{ "RestrictionType":{"shape":"GeoRestrictionType"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"LocationList"} } }, "GeoRestrictionType":{ "type":"string", "enum":[ "blacklist", "whitelist", "none" ] }, "GetCloudFrontOriginAccessIdentityConfigRequest":{ "type":"structure", "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } }, "required":["Id"] }, "GetCloudFrontOriginAccessIdentityConfigResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentityConfig":{"shape":"CloudFrontOriginAccessIdentityConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "GetCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } }, "required":["Id"] }, "GetCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "GetDistributionConfigRequest":{ "type":"structure", "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } }, "required":["Id"] }, "GetDistributionConfigResult":{ "type":"structure", "members":{ "DistributionConfig":{"shape":"DistributionConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"DistributionConfig" }, "GetDistributionRequest":{ "type":"structure", "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } }, "required":["Id"] }, "GetDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "GetInvalidationRequest":{ "type":"structure", "required":[ "DistributionId", "Id" ], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetInvalidationResult":{ "type":"structure", "members":{ "Invalidation":{"shape":"Invalidation"} }, "payload":"Invalidation" }, "GetStreamingDistributionConfigRequest":{ "type":"structure", "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } }, "required":["Id"] }, "GetStreamingDistributionConfigResult":{ "type":"structure", "members":{ "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistributionConfig" }, "GetStreamingDistributionRequest":{ "type":"structure", "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } }, "required":["Id"] }, "GetStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "HeaderList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "Headers":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"HeaderList"} } }, "IllegalUpdate":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InconsistentQuantities":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidArgument":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidDefaultRootObject":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidErrorCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidForwardCookies":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidGeoRestrictionParameter":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidHeadersForS3Origin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidIfMatchVersion":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidLocationCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidMinimumProtocolVersion":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidOrigin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidOriginAccessIdentity":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidProtocolSettings":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRelativePath":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRequiredProtocol":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidResponseCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidTTLOrder":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidViewerCertificate":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidWebACLId":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "Invalidation":{ "type":"structure", "required":[ "Id", "Status", "CreateTime", "InvalidationBatch" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "CreateTime":{"shape":"timestamp"}, "InvalidationBatch":{"shape":"InvalidationBatch"} } }, "InvalidationBatch":{ "type":"structure", "required":[ "Paths", "CallerReference" ], "members":{ "Paths":{"shape":"Paths"}, "CallerReference":{"shape":"string"} } }, "InvalidationList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"InvalidationSummaryList"} } }, "InvalidationSummary":{ "type":"structure", "required":[ "Id", "CreateTime", "Status" ], "members":{ "Id":{"shape":"string"}, "CreateTime":{"shape":"timestamp"}, "Status":{"shape":"string"} } }, "InvalidationSummaryList":{ "type":"list", "member":{ "shape":"InvalidationSummary", "locationName":"InvalidationSummary" } }, "ItemSelection":{ "type":"string", "enum":[ "none", "whitelist", "all" ] }, "KeyPairIdList":{ "type":"list", "member":{ "shape":"string", "locationName":"KeyPairId" } }, "KeyPairIds":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"KeyPairIdList"} } }, "ListCloudFrontOriginAccessIdentitiesRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListCloudFrontOriginAccessIdentitiesResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentityList":{"shape":"CloudFrontOriginAccessIdentityList"} }, "payload":"CloudFrontOriginAccessIdentityList" }, "ListDistributionsByWebACLIdRequest":{ "type":"structure", "required":["WebACLId"], "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" }, "WebACLId":{ "shape":"string", "location":"uri", "locationName":"WebACLId" } } }, "ListDistributionsByWebACLIdResult":{ "type":"structure", "members":{ "DistributionList":{"shape":"DistributionList"} }, "payload":"DistributionList" }, "ListDistributionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListDistributionsResult":{ "type":"structure", "members":{ "DistributionList":{"shape":"DistributionList"} }, "payload":"DistributionList" }, "ListInvalidationsRequest":{ "type":"structure", "required":["DistributionId"], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListInvalidationsResult":{ "type":"structure", "members":{ "InvalidationList":{"shape":"InvalidationList"} }, "payload":"InvalidationList" }, "ListStreamingDistributionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListStreamingDistributionsResult":{ "type":"structure", "members":{ "StreamingDistributionList":{"shape":"StreamingDistributionList"} }, "payload":"StreamingDistributionList" }, "LocationList":{ "type":"list", "member":{ "shape":"string", "locationName":"Location" } }, "LoggingConfig":{ "type":"structure", "required":[ "Enabled", "IncludeCookies", "Bucket", "Prefix" ], "members":{ "Enabled":{"shape":"boolean"}, "IncludeCookies":{"shape":"boolean"}, "Bucket":{"shape":"string"}, "Prefix":{"shape":"string"} } }, "Method":{ "type":"string", "enum":[ "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" ] }, "MethodsList":{ "type":"list", "member":{ "shape":"Method", "locationName":"Method" } }, "MinimumProtocolVersion":{ "type":"string", "enum":[ "SSLv3", "TLSv1" ] }, "MissingBody":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "NoSuchCloudFrontOriginAccessIdentity":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchDistribution":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchInvalidation":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchOrigin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchStreamingDistribution":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "Origin":{ "type":"structure", "required":[ "Id", "DomainName" ], "members":{ "Id":{"shape":"string"}, "DomainName":{"shape":"string"}, "OriginPath":{"shape":"string"}, "S3OriginConfig":{"shape":"S3OriginConfig"}, "CustomOriginConfig":{"shape":"CustomOriginConfig"} } }, "OriginList":{ "type":"list", "member":{ "shape":"Origin", "locationName":"Origin" }, "min":1 }, "OriginProtocolPolicy":{ "type":"string", "enum":[ "http-only", "match-viewer" ] }, "Origins":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"OriginList"} } }, "PathList":{ "type":"list", "member":{ "shape":"string", "locationName":"Path" } }, "Paths":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"PathList"} } }, "PreconditionFailed":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":412}, "exception":true }, "PriceClass":{ "type":"string", "enum":[ "PriceClass_100", "PriceClass_200", "PriceClass_All" ] }, "Restrictions":{ "type":"structure", "required":["GeoRestriction"], "members":{ "GeoRestriction":{"shape":"GeoRestriction"} } }, "S3Origin":{ "type":"structure", "required":[ "DomainName", "OriginAccessIdentity" ], "members":{ "DomainName":{"shape":"string"}, "OriginAccessIdentity":{"shape":"string"} } }, "S3OriginConfig":{ "type":"structure", "required":["OriginAccessIdentity"], "members":{ "OriginAccessIdentity":{"shape":"string"} } }, "SSLSupportMethod":{ "type":"string", "enum":[ "sni-only", "vip" ] }, "Signer":{ "type":"structure", "members":{ "AwsAccountNumber":{"shape":"string"}, "KeyPairIds":{"shape":"KeyPairIds"} } }, "SignerList":{ "type":"list", "member":{ "shape":"Signer", "locationName":"Signer" } }, "StreamingDistribution":{ "type":"structure", "required":[ "Id", "Status", "DomainName", "ActiveTrustedSigners", "StreamingDistributionConfig" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "ActiveTrustedSigners":{"shape":"ActiveTrustedSigners"}, "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"} } }, "StreamingDistributionAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "StreamingDistributionConfig":{ "type":"structure", "required":[ "CallerReference", "S3Origin", "Comment", "TrustedSigners", "Enabled" ], "members":{ "CallerReference":{"shape":"string"}, "S3Origin":{"shape":"S3Origin"}, "Aliases":{"shape":"Aliases"}, "Comment":{"shape":"string"}, "Logging":{"shape":"StreamingLoggingConfig"}, "TrustedSigners":{"shape":"TrustedSigners"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"} } }, "StreamingDistributionList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"StreamingDistributionSummaryList"} } }, "StreamingDistributionNotDisabled":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "StreamingDistributionSummary":{ "type":"structure", "required":[ "Id", "Status", "LastModifiedTime", "DomainName", "S3Origin", "Aliases", "TrustedSigners", "Comment", "PriceClass", "Enabled" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "S3Origin":{"shape":"S3Origin"}, "Aliases":{"shape":"Aliases"}, "TrustedSigners":{"shape":"TrustedSigners"}, "Comment":{"shape":"string"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"} } }, "StreamingDistributionSummaryList":{ "type":"list", "member":{ "shape":"StreamingDistributionSummary", "locationName":"StreamingDistributionSummary" } }, "StreamingLoggingConfig":{ "type":"structure", "required":[ "Enabled", "Bucket", "Prefix" ], "members":{ "Enabled":{"shape":"boolean"}, "Bucket":{"shape":"string"}, "Prefix":{"shape":"string"} } }, "TooManyCacheBehaviors":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCertificates":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCloudFrontOriginAccessIdentities":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCookieNamesInWhiteList":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyDistributionCNAMEs":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyDistributions":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyHeadersInForwardedValues":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyInvalidationsInProgress":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyOrigins":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyStreamingDistributionCNAMEs":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyStreamingDistributions":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyTrustedSigners":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrustedSignerDoesNotExist":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrustedSigners":{ "type":"structure", "required":[ "Enabled", "Quantity" ], "members":{ "Enabled":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"AwsAccountNumberList"} } }, "UpdateCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":[ "CloudFrontOriginAccessIdentityConfig", "Id" ], "members":{ "CloudFrontOriginAccessIdentityConfig":{ "shape":"CloudFrontOriginAccessIdentityConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-07-27/"}, "locationName":"CloudFrontOriginAccessIdentityConfig" }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "UpdateCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "UpdateDistributionRequest":{ "type":"structure", "required":[ "DistributionConfig", "Id" ], "members":{ "DistributionConfig":{ "shape":"DistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-07-27/"}, "locationName":"DistributionConfig" }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"DistributionConfig" }, "UpdateDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "UpdateStreamingDistributionRequest":{ "type":"structure", "required":[ "StreamingDistributionConfig", "Id" ], "members":{ "StreamingDistributionConfig":{ "shape":"StreamingDistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-07-27/"}, "locationName":"StreamingDistributionConfig" }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"StreamingDistributionConfig" }, "UpdateStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "ViewerCertificate":{ "type":"structure", "members":{ "IAMCertificateId":{"shape":"string"}, "CloudFrontDefaultCertificate":{"shape":"boolean"}, "SSLSupportMethod":{"shape":"SSLSupportMethod"}, "MinimumProtocolVersion":{"shape":"MinimumProtocolVersion"} } }, "ViewerProtocolPolicy":{ "type":"string", "enum":[ "allow-all", "https-only", "redirect-to-https" ] }, "boolean":{"type":"boolean"}, "integer":{"type":"integer"}, "long":{"type":"long"}, "string":{"type":"string"}, "timestamp":{"type":"timestamp"} } } aws-sdk-go-1.4.22/models/apis/cloudfront/2015-07-27/docs-2.json000066400000000000000000002444251300374646400232170ustar00rootroot00000000000000{ "version": "2.0", "operations": { "CreateCloudFrontOriginAccessIdentity": "Create a new origin access identity.", "CreateDistribution": "Create a new distribution.", "CreateInvalidation": "Create a new invalidation.", "CreateStreamingDistribution": "Create a new streaming distribution.", "DeleteCloudFrontOriginAccessIdentity": "Delete an origin access identity.", "DeleteDistribution": "Delete a distribution.", "DeleteStreamingDistribution": "Delete a streaming distribution.", "GetCloudFrontOriginAccessIdentity": "Get the information about an origin access identity.", "GetCloudFrontOriginAccessIdentityConfig": "Get the configuration information about an origin access identity.", "GetDistribution": "Get the information about a distribution.", "GetDistributionConfig": "Get the configuration information about a distribution.", "GetInvalidation": "Get the information about an invalidation.", "GetStreamingDistribution": "Get the information about a streaming distribution.", "GetStreamingDistributionConfig": "Get the configuration information about a streaming distribution.", "ListCloudFrontOriginAccessIdentities": "List origin access identities.", "ListDistributions": "List distributions.", "ListDistributionsByWebACLId": "List the distributions that are associated with a specified AWS WAF web ACL.", "ListInvalidations": "List invalidation batches.", "ListStreamingDistributions": "List streaming distributions.", "UpdateCloudFrontOriginAccessIdentity": "Update an origin access identity.", "UpdateDistribution": "Update a distribution.", "UpdateStreamingDistribution": "Update a streaming distribution." }, "service": null, "shapes": { "AccessDenied": { "base": "Access denied.", "refs": { } }, "ActiveTrustedSigners": { "base": "A complex type that lists the AWS accounts, if any, that you included in the TrustedSigners complex type for the default cache behavior or for any of the other cache behaviors for this distribution. These are accounts that you want to allow to create signed URLs for private content.", "refs": { "Distribution$ActiveTrustedSigners": "CloudFront automatically adds this element to the response only if you've set up the distribution to serve private content with signed URLs. The element lists the key pair IDs that CloudFront is aware of for each trusted signer. The Signer child element lists the AWS account number of the trusted signer (or an empty Self element if the signer is you). The Signer element also includes the IDs of any active key pairs associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create working signed URLs.", "StreamingDistribution$ActiveTrustedSigners": "CloudFront automatically adds this element to the response only if you've set up the distribution to serve private content with signed URLs. The element lists the key pair IDs that CloudFront is aware of for each trusted signer. The Signer child element lists the AWS account number of the trusted signer (or an empty Self element if the signer is you). The Signer element also includes the IDs of any active key pairs associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create working signed URLs." } }, "AliasList": { "base": null, "refs": { "Aliases$Items": "Optional: A complex type that contains CNAME elements, if any, for this distribution. If Quantity is 0, you can omit Items." } }, "Aliases": { "base": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "refs": { "DistributionConfig$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "DistributionSummary$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "StreamingDistributionConfig$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution.", "StreamingDistributionSummary$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution." } }, "AllowedMethods": { "base": "A complex type that controls which HTTP methods CloudFront processes and forwards to your Amazon S3 bucket or your custom origin. There are three choices: - CloudFront forwards only GET and HEAD requests. - CloudFront forwards only GET, HEAD and OPTIONS requests. - CloudFront forwards GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests. If you pick the third choice, you may need to restrict access to your Amazon S3 bucket or to your custom origin so users can't perform operations that you don't want them to. For example, you may not want users to have permission to delete objects from your origin.", "refs": { "CacheBehavior$AllowedMethods": null, "DefaultCacheBehavior$AllowedMethods": null } }, "AwsAccountNumberList": { "base": null, "refs": { "TrustedSigners$Items": "Optional: A complex type that contains trusted signers for this cache behavior. If Quantity is 0, you can omit Items." } }, "BatchTooLarge": { "base": null, "refs": { } }, "CNAMEAlreadyExists": { "base": null, "refs": { } }, "CacheBehavior": { "base": "A complex type that describes how CloudFront processes requests. You can create up to 10 cache behaviors.You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to distribute objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin will never be used. If you don't want to specify any cache behaviors, include only an empty CacheBehaviors element. Don't include an empty CacheBehavior element, or CloudFront returns a MalformedXML error. To delete all cache behaviors in an existing distribution, update the distribution configuration and include only an empty CacheBehaviors element. To add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution.", "refs": { "CacheBehaviorList$member": null } }, "CacheBehaviorList": { "base": null, "refs": { "CacheBehaviors$Items": "Optional: A complex type that contains cache behaviors for this distribution. If Quantity is 0, you can omit Items." } }, "CacheBehaviors": { "base": "A complex type that contains zero or more CacheBehavior elements.", "refs": { "DistributionConfig$CacheBehaviors": "A complex type that contains zero or more CacheBehavior elements.", "DistributionSummary$CacheBehaviors": "A complex type that contains zero or more CacheBehavior elements." } }, "CachedMethods": { "base": "A complex type that controls whether CloudFront caches the response to requests using the specified HTTP methods. There are two choices: - CloudFront caches responses to GET and HEAD requests. - CloudFront caches responses to GET, HEAD, and OPTIONS requests. If you pick the second choice for your S3 Origin, you may need to forward Access-Control-Request-Method, Access-Control-Request-Headers and Origin headers for the responses to be cached correctly.", "refs": { "AllowedMethods$CachedMethods": null } }, "CloudFrontOriginAccessIdentity": { "base": "CloudFront origin access identity.", "refs": { "CreateCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information.", "GetCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information.", "UpdateCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information." } }, "CloudFrontOriginAccessIdentityAlreadyExists": { "base": "If the CallerReference is a value you already sent in a previous request to create an identity but the content of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists error.", "refs": { } }, "CloudFrontOriginAccessIdentityConfig": { "base": "Origin access identity configuration.", "refs": { "CloudFrontOriginAccessIdentity$CloudFrontOriginAccessIdentityConfig": "The current configuration information for the identity.", "CreateCloudFrontOriginAccessIdentityRequest$CloudFrontOriginAccessIdentityConfig": "The origin access identity's configuration information.", "GetCloudFrontOriginAccessIdentityConfigResult$CloudFrontOriginAccessIdentityConfig": "The origin access identity's configuration information.", "UpdateCloudFrontOriginAccessIdentityRequest$CloudFrontOriginAccessIdentityConfig": "The identity's configuration information." } }, "CloudFrontOriginAccessIdentityInUse": { "base": null, "refs": { } }, "CloudFrontOriginAccessIdentityList": { "base": "The CloudFrontOriginAccessIdentityList type.", "refs": { "ListCloudFrontOriginAccessIdentitiesResult$CloudFrontOriginAccessIdentityList": "The CloudFrontOriginAccessIdentityList type." } }, "CloudFrontOriginAccessIdentitySummary": { "base": "Summary of the information about a CloudFront origin access identity.", "refs": { "CloudFrontOriginAccessIdentitySummaryList$member": null } }, "CloudFrontOriginAccessIdentitySummaryList": { "base": null, "refs": { "CloudFrontOriginAccessIdentityList$Items": "A complex type that contains one CloudFrontOriginAccessIdentitySummary element for each origin access identity that was created by the current AWS account." } }, "CookieNameList": { "base": null, "refs": { "CookieNames$Items": "Optional: A complex type that contains whitelisted cookies for this cache behavior. If Quantity is 0, you can omit Items." } }, "CookieNames": { "base": "A complex type that specifies the whitelisted cookies, if any, that you want CloudFront to forward to your origin that is associated with this cache behavior.", "refs": { "CookiePreference$WhitelistedNames": "A complex type that specifies the whitelisted cookies, if any, that you want CloudFront to forward to your origin that is associated with this cache behavior." } }, "CookiePreference": { "base": "A complex type that specifies the cookie preferences associated with this cache behavior.", "refs": { "ForwardedValues$Cookies": "A complex type that specifies how CloudFront handles cookies." } }, "CreateCloudFrontOriginAccessIdentityRequest": { "base": "The request to create a new origin access identity.", "refs": { } }, "CreateCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateDistributionRequest": { "base": "The request to create a new distribution.", "refs": { } }, "CreateDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateInvalidationRequest": { "base": "The request to create an invalidation.", "refs": { } }, "CreateInvalidationResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateStreamingDistributionRequest": { "base": "The request to create a new streaming distribution.", "refs": { } }, "CreateStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CustomErrorResponse": { "base": "A complex type that describes how you'd prefer CloudFront to respond to requests that result in either a 4xx or 5xx response. You can control whether a custom error page should be displayed, what the desired response code should be for this error page and how long should the error response be cached by CloudFront. If you don't want to specify any custom error responses, include only an empty CustomErrorResponses element. To delete all custom error responses in an existing distribution, update the distribution configuration and include only an empty CustomErrorResponses element. To add, change, or remove one or more custom error responses, update the distribution configuration and specify all of the custom error responses that you want to include in the updated distribution.", "refs": { "CustomErrorResponseList$member": null } }, "CustomErrorResponseList": { "base": null, "refs": { "CustomErrorResponses$Items": "Optional: A complex type that contains custom error responses for this distribution. If Quantity is 0, you can omit Items." } }, "CustomErrorResponses": { "base": "A complex type that contains zero or more CustomErrorResponse elements.", "refs": { "DistributionConfig$CustomErrorResponses": "A complex type that contains zero or more CustomErrorResponse elements.", "DistributionSummary$CustomErrorResponses": "A complex type that contains zero or more CustomErrorResponses elements." } }, "CustomOriginConfig": { "base": "A customer origin.", "refs": { "Origin$CustomOriginConfig": "A complex type that contains information about a custom origin. If the origin is an Amazon S3 bucket, use the S3OriginConfig element instead." } }, "DefaultCacheBehavior": { "base": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior.", "refs": { "DistributionConfig$DefaultCacheBehavior": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior.", "DistributionSummary$DefaultCacheBehavior": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior." } }, "DeleteCloudFrontOriginAccessIdentityRequest": { "base": "The request to delete a origin access identity.", "refs": { } }, "DeleteDistributionRequest": { "base": "The request to delete a distribution.", "refs": { } }, "DeleteStreamingDistributionRequest": { "base": "The request to delete a streaming distribution.", "refs": { } }, "Distribution": { "base": "A distribution.", "refs": { "CreateDistributionResult$Distribution": "The distribution's information.", "GetDistributionResult$Distribution": "The distribution's information.", "UpdateDistributionResult$Distribution": "The distribution's information." } }, "DistributionAlreadyExists": { "base": "The caller reference you attempted to create the distribution with is associated with another distribution.", "refs": { } }, "DistributionConfig": { "base": "A distribution Configuration.", "refs": { "CreateDistributionRequest$DistributionConfig": "The distribution's configuration information.", "Distribution$DistributionConfig": "The current configuration information for the distribution.", "GetDistributionConfigResult$DistributionConfig": "The distribution's configuration information.", "UpdateDistributionRequest$DistributionConfig": "The distribution's configuration information." } }, "DistributionList": { "base": "A distribution list.", "refs": { "ListDistributionsByWebACLIdResult$DistributionList": "The DistributionList type.", "ListDistributionsResult$DistributionList": "The DistributionList type." } }, "DistributionNotDisabled": { "base": null, "refs": { } }, "DistributionSummary": { "base": "A summary of the information for an Amazon CloudFront distribution.", "refs": { "DistributionSummaryList$member": null } }, "DistributionSummaryList": { "base": null, "refs": { "DistributionList$Items": "A complex type that contains one DistributionSummary element for each distribution that was created by the current AWS account." } }, "ForwardedValues": { "base": "A complex type that specifies how CloudFront handles query strings, cookies and headers.", "refs": { "CacheBehavior$ForwardedValues": "A complex type that specifies how CloudFront handles query strings, cookies and headers.", "DefaultCacheBehavior$ForwardedValues": "A complex type that specifies how CloudFront handles query strings, cookies and headers." } }, "GeoRestriction": { "base": "A complex type that controls the countries in which your content is distributed. For more information about geo restriction, go to Customizing Error Responses in the Amazon CloudFront Developer Guide. CloudFront determines the location of your users using MaxMind GeoIP databases. For information about the accuracy of these databases, see How accurate are your GeoIP databases? on the MaxMind website.", "refs": { "Restrictions$GeoRestriction": null } }, "GeoRestrictionType": { "base": null, "refs": { "GeoRestriction$RestrictionType": "The method that you want to use to restrict distribution of your content by country: - none: No geo restriction is enabled, meaning access to content is not restricted by client geo location. - blacklist: The Location elements specify the countries in which you do not want CloudFront to distribute your content. - whitelist: The Location elements specify the countries in which you want CloudFront to distribute your content." } }, "GetCloudFrontOriginAccessIdentityConfigRequest": { "base": "The request to get an origin access identity's configuration.", "refs": { } }, "GetCloudFrontOriginAccessIdentityConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetCloudFrontOriginAccessIdentityRequest": { "base": "The request to get an origin access identity's information.", "refs": { } }, "GetCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetDistributionConfigRequest": { "base": "The request to get a distribution configuration.", "refs": { } }, "GetDistributionConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetDistributionRequest": { "base": "The request to get a distribution's information.", "refs": { } }, "GetDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetInvalidationRequest": { "base": "The request to get an invalidation's information.", "refs": { } }, "GetInvalidationResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetStreamingDistributionConfigRequest": { "base": "To request to get a streaming distribution configuration.", "refs": { } }, "GetStreamingDistributionConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetStreamingDistributionRequest": { "base": "The request to get a streaming distribution's information.", "refs": { } }, "GetStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "HeaderList": { "base": null, "refs": { "Headers$Items": "Optional: A complex type that contains a Name element for each header that you want CloudFront to forward to the origin and to vary on for this cache behavior. If Quantity is 0, omit Items." } }, "Headers": { "base": "A complex type that specifies the headers that you want CloudFront to forward to the origin for this cache behavior. For the headers that you specify, CloudFront also caches separate versions of a given object based on the header values in viewer requests; this is known as varying on headers. For example, suppose viewer requests for logo.jpg contain a custom Product header that has a value of either Acme or Apex, and you configure CloudFront to vary on the Product header. CloudFront forwards the Product header to the origin and caches the response from the origin once for each header value.", "refs": { "ForwardedValues$Headers": "A complex type that specifies the Headers, if any, that you want CloudFront to vary upon for this cache behavior." } }, "IllegalUpdate": { "base": "Origin and CallerReference cannot be updated.", "refs": { } }, "InconsistentQuantities": { "base": "The value of Quantity and the size of Items do not match.", "refs": { } }, "InvalidArgument": { "base": "The argument is invalid.", "refs": { } }, "InvalidDefaultRootObject": { "base": "The default root object file name is too big or contains an invalid character.", "refs": { } }, "InvalidErrorCode": { "base": null, "refs": { } }, "InvalidForwardCookies": { "base": "Your request contains forward cookies option which doesn't match with the expectation for the whitelisted list of cookie names. Either list of cookie names has been specified when not allowed or list of cookie names is missing when expected.", "refs": { } }, "InvalidGeoRestrictionParameter": { "base": null, "refs": { } }, "InvalidHeadersForS3Origin": { "base": null, "refs": { } }, "InvalidIfMatchVersion": { "base": "The If-Match version is missing or not valid for the distribution.", "refs": { } }, "InvalidLocationCode": { "base": null, "refs": { } }, "InvalidMinimumProtocolVersion": { "base": null, "refs": { } }, "InvalidOrigin": { "base": "The Amazon S3 origin server specified does not refer to a valid Amazon S3 bucket.", "refs": { } }, "InvalidOriginAccessIdentity": { "base": "The origin access identity is not valid or doesn't exist.", "refs": { } }, "InvalidProtocolSettings": { "base": "You cannot specify SSLv3 as the minimum protocol version if you only want to support only clients that Support Server Name Indication (SNI).", "refs": { } }, "InvalidRelativePath": { "base": "The relative path is too big, is not URL-encoded, or does not begin with a slash (/).", "refs": { } }, "InvalidRequiredProtocol": { "base": "This operation requires the HTTPS protocol. Ensure that you specify the HTTPS protocol in your request, or omit the RequiredProtocols element from your distribution configuration.", "refs": { } }, "InvalidResponseCode": { "base": null, "refs": { } }, "InvalidTTLOrder": { "base": null, "refs": { } }, "InvalidViewerCertificate": { "base": null, "refs": { } }, "InvalidWebACLId": { "base": null, "refs": { } }, "Invalidation": { "base": "An invalidation.", "refs": { "CreateInvalidationResult$Invalidation": "The invalidation's information.", "GetInvalidationResult$Invalidation": "The invalidation's information." } }, "InvalidationBatch": { "base": "An invalidation batch.", "refs": { "CreateInvalidationRequest$InvalidationBatch": "The batch information for the invalidation.", "Invalidation$InvalidationBatch": "The current invalidation information for the batch request." } }, "InvalidationList": { "base": "An invalidation list.", "refs": { "ListInvalidationsResult$InvalidationList": "Information about invalidation batches." } }, "InvalidationSummary": { "base": "Summary of an invalidation request.", "refs": { "InvalidationSummaryList$member": null } }, "InvalidationSummaryList": { "base": null, "refs": { "InvalidationList$Items": "A complex type that contains one InvalidationSummary element for each invalidation batch that was created by the current AWS account." } }, "ItemSelection": { "base": null, "refs": { "CookiePreference$Forward": "Use this element to specify whether you want CloudFront to forward cookies to the origin that is associated with this cache behavior. You can specify all, none or whitelist. If you choose All, CloudFront forwards all cookies regardless of how many your application uses." } }, "KeyPairIdList": { "base": null, "refs": { "KeyPairIds$Items": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber." } }, "KeyPairIds": { "base": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber.", "refs": { "Signer$KeyPairIds": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber." } }, "ListCloudFrontOriginAccessIdentitiesRequest": { "base": "The request to list origin access identities.", "refs": { } }, "ListCloudFrontOriginAccessIdentitiesResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListDistributionsByWebACLIdRequest": { "base": "The request to list distributions that are associated with a specified AWS WAF web ACL.", "refs": { } }, "ListDistributionsByWebACLIdResult": { "base": "The response to a request to list the distributions that are associated with a specified AWS WAF web ACL.", "refs": { } }, "ListDistributionsRequest": { "base": "The request to list your distributions.", "refs": { } }, "ListDistributionsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListInvalidationsRequest": { "base": "The request to list invalidations.", "refs": { } }, "ListInvalidationsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListStreamingDistributionsRequest": { "base": "The request to list your streaming distributions.", "refs": { } }, "ListStreamingDistributionsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "LocationList": { "base": null, "refs": { "GeoRestriction$Items": "A complex type that contains a Location element for each country in which you want CloudFront either to distribute your content (whitelist) or not distribute your content (blacklist). The Location element is a two-letter, uppercase country code for a country that you want to include in your blacklist or whitelist. Include one Location element for each country. CloudFront and MaxMind both use ISO 3166 country codes. For the current list of countries and the corresponding codes, see ISO 3166-1-alpha-2 code on the International Organization for Standardization website. You can also refer to the country list in the CloudFront console, which includes both country names and codes." } }, "LoggingConfig": { "base": "A complex type that controls whether access logs are written for the distribution.", "refs": { "DistributionConfig$Logging": "A complex type that controls whether access logs are written for the distribution." } }, "Method": { "base": null, "refs": { "MethodsList$member": null } }, "MethodsList": { "base": null, "refs": { "AllowedMethods$Items": "A complex type that contains the HTTP methods that you want CloudFront to process and forward to your origin.", "CachedMethods$Items": "A complex type that contains the HTTP methods that you want CloudFront to cache responses to." } }, "MinimumProtocolVersion": { "base": null, "refs": { "ViewerCertificate$MinimumProtocolVersion": "Specify the minimum version of the SSL protocol that you want CloudFront to use, SSLv3 or TLSv1, for HTTPS connections. CloudFront will serve your objects only to browsers or devices that support at least the SSL version that you specify. The TLSv1 protocol is more secure, so we recommend that you specify SSLv3 only if your users are using browsers or devices that don't support TLSv1. If you're using a custom certificate (if you specify a value for IAMCertificateId) and if you're using dedicated IP (if you specify vip for SSLSupportMethod), you can choose SSLv3 or TLSv1 as the MinimumProtocolVersion. If you're using a custom certificate (if you specify a value for IAMCertificateId) and if you're using SNI (if you specify sni-only for SSLSupportMethod), you must specify TLSv1 for MinimumProtocolVersion." } }, "MissingBody": { "base": "This operation requires a body. Ensure that the body is present and the Content-Type header is set.", "refs": { } }, "NoSuchCloudFrontOriginAccessIdentity": { "base": "The specified origin access identity does not exist.", "refs": { } }, "NoSuchDistribution": { "base": "The specified distribution does not exist.", "refs": { } }, "NoSuchInvalidation": { "base": "The specified invalidation does not exist.", "refs": { } }, "NoSuchOrigin": { "base": "No origin exists with the specified Origin Id.", "refs": { } }, "NoSuchStreamingDistribution": { "base": "The specified streaming distribution does not exist.", "refs": { } }, "Origin": { "base": "A complex type that describes the Amazon S3 bucket or the HTTP server (for example, a web server) from which CloudFront gets your files.You must create at least one origin.", "refs": { "OriginList$member": null } }, "OriginList": { "base": null, "refs": { "Origins$Items": "A complex type that contains origins for this distribution." } }, "OriginProtocolPolicy": { "base": null, "refs": { "CustomOriginConfig$OriginProtocolPolicy": "The origin protocol policy to apply to your origin." } }, "Origins": { "base": "A complex type that contains information about origins for this distribution.", "refs": { "DistributionConfig$Origins": "A complex type that contains information about origins for this distribution.", "DistributionSummary$Origins": "A complex type that contains information about origins for this distribution." } }, "PathList": { "base": null, "refs": { "Paths$Items": "A complex type that contains a list of the objects that you want to invalidate." } }, "Paths": { "base": "A complex type that contains information about the objects that you want to invalidate.", "refs": { "InvalidationBatch$Paths": "The path of the object to invalidate. The path is relative to the distribution and must begin with a slash (/). You must enclose each invalidation object with the Path element tags. If the path includes non-ASCII characters or unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters. Do not URL encode any other characters in the path, or CloudFront will not invalidate the old version of the updated object." } }, "PreconditionFailed": { "base": "The precondition given in one or more of the request-header fields evaluated to false.", "refs": { } }, "PriceClass": { "base": null, "refs": { "DistributionConfig$PriceClass": "A complex type that contains information about price class for this distribution.", "DistributionSummary$PriceClass": null, "StreamingDistributionConfig$PriceClass": "A complex type that contains information about price class for this streaming distribution.", "StreamingDistributionSummary$PriceClass": null } }, "Restrictions": { "base": "A complex type that identifies ways in which you want to restrict distribution of your content.", "refs": { "DistributionConfig$Restrictions": null, "DistributionSummary$Restrictions": null } }, "S3Origin": { "base": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.", "refs": { "StreamingDistributionConfig$S3Origin": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.", "StreamingDistributionSummary$S3Origin": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution." } }, "S3OriginConfig": { "base": "A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead.", "refs": { "Origin$S3OriginConfig": "A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead." } }, "SSLSupportMethod": { "base": null, "refs": { "ViewerCertificate$SSLSupportMethod": "If you specify a value for IAMCertificateId, you must also specify how you want CloudFront to serve HTTPS requests. Valid values are vip and sni-only. If you specify vip, CloudFront uses dedicated IP addresses for your content and can respond to HTTPS requests from any viewer. However, you must request permission to use this feature, and you incur additional monthly charges. If you specify sni-only, CloudFront can only respond to HTTPS requests from viewers that support Server Name Indication (SNI). All modern browsers support SNI, but some browsers still in use don't support SNI. Do not specify a value for SSLSupportMethod if you specified true for CloudFrontDefaultCertificate." } }, "Signer": { "base": "A complex type that lists the AWS accounts that were included in the TrustedSigners complex type, as well as their active CloudFront key pair IDs, if any.", "refs": { "SignerList$member": null } }, "SignerList": { "base": null, "refs": { "ActiveTrustedSigners$Items": "A complex type that contains one Signer complex type for each unique trusted signer that is specified in the TrustedSigners complex type, including trusted signers in the default cache behavior and in all of the other cache behaviors." } }, "StreamingDistribution": { "base": "A streaming distribution.", "refs": { "CreateStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information.", "GetStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information.", "UpdateStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information." } }, "StreamingDistributionAlreadyExists": { "base": null, "refs": { } }, "StreamingDistributionConfig": { "base": "The configuration for the streaming distribution.", "refs": { "CreateStreamingDistributionRequest$StreamingDistributionConfig": "The streaming distribution's configuration information.", "GetStreamingDistributionConfigResult$StreamingDistributionConfig": "The streaming distribution's configuration information.", "StreamingDistribution$StreamingDistributionConfig": "The current configuration information for the streaming distribution.", "UpdateStreamingDistributionRequest$StreamingDistributionConfig": "The streaming distribution's configuration information." } }, "StreamingDistributionList": { "base": "A streaming distribution list.", "refs": { "ListStreamingDistributionsResult$StreamingDistributionList": "The StreamingDistributionList type." } }, "StreamingDistributionNotDisabled": { "base": null, "refs": { } }, "StreamingDistributionSummary": { "base": "A summary of the information for an Amazon CloudFront streaming distribution.", "refs": { "StreamingDistributionSummaryList$member": null } }, "StreamingDistributionSummaryList": { "base": null, "refs": { "StreamingDistributionList$Items": "A complex type that contains one StreamingDistributionSummary element for each distribution that was created by the current AWS account." } }, "StreamingLoggingConfig": { "base": "A complex type that controls whether access logs are written for this streaming distribution.", "refs": { "StreamingDistributionConfig$Logging": "A complex type that controls whether access logs are written for the streaming distribution." } }, "TooManyCacheBehaviors": { "base": "You cannot create anymore cache behaviors for the distribution.", "refs": { } }, "TooManyCertificates": { "base": "You cannot create anymore custom ssl certificates.", "refs": { } }, "TooManyCloudFrontOriginAccessIdentities": { "base": "Processing your request would cause you to exceed the maximum number of origin access identities allowed.", "refs": { } }, "TooManyCookieNamesInWhiteList": { "base": "Your request contains more cookie names in the whitelist than are allowed per cache behavior.", "refs": { } }, "TooManyDistributionCNAMEs": { "base": "Your request contains more CNAMEs than are allowed per distribution.", "refs": { } }, "TooManyDistributions": { "base": "Processing your request would cause you to exceed the maximum number of distributions allowed.", "refs": { } }, "TooManyHeadersInForwardedValues": { "base": null, "refs": { } }, "TooManyInvalidationsInProgress": { "base": "You have exceeded the maximum number of allowable InProgress invalidation batch requests, or invalidation objects.", "refs": { } }, "TooManyOrigins": { "base": "You cannot create anymore origins for the distribution.", "refs": { } }, "TooManyStreamingDistributionCNAMEs": { "base": null, "refs": { } }, "TooManyStreamingDistributions": { "base": "Processing your request would cause you to exceed the maximum number of streaming distributions allowed.", "refs": { } }, "TooManyTrustedSigners": { "base": "Your request contains more trusted signers than are allowed per distribution.", "refs": { } }, "TrustedSignerDoesNotExist": { "base": "One or more of your trusted signers do not exist.", "refs": { } }, "TrustedSigners": { "base": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "refs": { "CacheBehavior$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "DefaultCacheBehavior$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "StreamingDistributionConfig$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "StreamingDistributionSummary$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution." } }, "UpdateCloudFrontOriginAccessIdentityRequest": { "base": "The request to update an origin access identity.", "refs": { } }, "UpdateCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "UpdateDistributionRequest": { "base": "The request to update a distribution.", "refs": { } }, "UpdateDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "UpdateStreamingDistributionRequest": { "base": "The request to update a streaming distribution.", "refs": { } }, "UpdateStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ViewerCertificate": { "base": "A complex type that contains information about viewer certificates for this distribution.", "refs": { "DistributionConfig$ViewerCertificate": null, "DistributionSummary$ViewerCertificate": null } }, "ViewerProtocolPolicy": { "base": null, "refs": { "CacheBehavior$ViewerProtocolPolicy": "Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. If you want CloudFront to allow end users to use any available protocol, specify allow-all. If you want CloudFront to require HTTPS, specify https. If you want CloudFront to respond to an HTTP request with an HTTP status code of 301 (Moved Permanently) and the HTTPS URL, specify redirect-to-https. The viewer then resubmits the request using the HTTPS URL.", "DefaultCacheBehavior$ViewerProtocolPolicy": "Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. If you want CloudFront to allow end users to use any available protocol, specify allow-all. If you want CloudFront to require HTTPS, specify https. If you want CloudFront to respond to an HTTP request with an HTTP status code of 301 (Moved Permanently) and the HTTPS URL, specify redirect-to-https. The viewer then resubmits the request using the HTTPS URL." } }, "boolean": { "base": null, "refs": { "ActiveTrustedSigners$Enabled": "Each active trusted signer.", "CacheBehavior$SmoothStreaming": "Indicates whether you want to distribute media files in Microsoft Smooth Streaming format using the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "CloudFrontOriginAccessIdentityList$IsTruncated": "A flag that indicates whether more origin access identities remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more items in the list.", "DefaultCacheBehavior$SmoothStreaming": "Indicates whether you want to distribute media files in Microsoft Smooth Streaming format using the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "DistributionConfig$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "DistributionList$IsTruncated": "A flag that indicates whether more distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.", "DistributionSummary$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "ForwardedValues$QueryString": "Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "InvalidationList$IsTruncated": "A flag that indicates whether more invalidation batch requests remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more invalidation batches in the list.", "LoggingConfig$Enabled": "Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you do not want to enable logging when you create a distribution or if you want to disable logging for an existing distribution, specify false for Enabled, and specify empty Bucket and Prefix elements. If you specify false for Enabled but you specify values for Bucket, prefix and IncludeCookies, the values are automatically deleted.", "LoggingConfig$IncludeCookies": "Specifies whether you want CloudFront to include cookies in access logs, specify true for IncludeCookies. If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you do not want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify false for IncludeCookies.", "StreamingDistributionConfig$Enabled": "Whether the streaming distribution is enabled to accept end user requests for content.", "StreamingDistributionList$IsTruncated": "A flag that indicates whether more streaming distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.", "StreamingDistributionSummary$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "StreamingLoggingConfig$Enabled": "Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you do not want to enable logging when you create a streaming distribution or if you want to disable logging for an existing streaming distribution, specify false for Enabled, and specify empty Bucket and Prefix elements. If you specify false for Enabled but you specify values for Bucket and Prefix, the values are automatically deleted.", "TrustedSigners$Enabled": "Specifies whether you want to require end users to use signed URLs to access the files specified by PathPattern and TargetOriginId.", "ViewerCertificate$CloudFrontDefaultCertificate": "If you want viewers to use HTTPS to request your objects and you're using the CloudFront domain name of your distribution in your object URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), set to true. Omit this value if you are setting an IAMCertificateId." } }, "integer": { "base": null, "refs": { "ActiveTrustedSigners$Quantity": "The number of unique trusted signers included in all cache behaviors. For example, if three cache behaviors all list the same three AWS accounts, the value of Quantity for ActiveTrustedSigners will be 3.", "Aliases$Quantity": "The number of CNAMEs, if any, for this distribution.", "AllowedMethods$Quantity": "The number of HTTP methods that you want CloudFront to forward to your origin. Valid values are 2 (for GET and HEAD requests), 3 (for GET, HEAD and OPTIONS requests) and 7 (for GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests).", "CacheBehaviors$Quantity": "The number of cache behaviors for this distribution.", "CachedMethods$Quantity": "The number of HTTP methods for which you want CloudFront to cache responses. Valid values are 2 (for caching responses to GET and HEAD requests) and 3 (for caching responses to GET, HEAD, and OPTIONS requests).", "CloudFrontOriginAccessIdentityList$MaxItems": "The value you provided for the MaxItems request parameter.", "CloudFrontOriginAccessIdentityList$Quantity": "The number of CloudFront origin access identities that were created by the current AWS account.", "CookieNames$Quantity": "The number of whitelisted cookies for this cache behavior.", "CustomErrorResponse$ErrorCode": "The 4xx or 5xx HTTP status code that you want to customize. For a list of HTTP status codes that you can customize, see CloudFront documentation.", "CustomErrorResponses$Quantity": "The number of custom error responses for this distribution.", "CustomOriginConfig$HTTPPort": "The HTTP port the custom origin listens on.", "CustomOriginConfig$HTTPSPort": "The HTTPS port the custom origin listens on.", "Distribution$InProgressInvalidationBatches": "The number of invalidation batches currently in progress.", "DistributionList$MaxItems": "The value you provided for the MaxItems request parameter.", "DistributionList$Quantity": "The number of distributions that were created by the current AWS account.", "GeoRestriction$Quantity": "When geo restriction is enabled, this is the number of countries in your whitelist or blacklist. Otherwise, when it is not enabled, Quantity is 0, and you can omit Items.", "Headers$Quantity": "The number of different headers that you want CloudFront to forward to the origin and to vary on for this cache behavior. The maximum number of headers that you can specify by name is 10. If you want CloudFront to forward all headers to the origin and vary on all of them, specify 1 for Quantity and * for Name. If you don't want CloudFront to forward any additional headers to the origin or to vary on any headers, specify 0 for Quantity and omit Items.", "InvalidationList$MaxItems": "The value you provided for the MaxItems request parameter.", "InvalidationList$Quantity": "The number of invalidation batches that were created by the current AWS account.", "KeyPairIds$Quantity": "The number of active CloudFront key pairs for AwsAccountNumber.", "Origins$Quantity": "The number of origins for this distribution.", "Paths$Quantity": "The number of objects that you want to invalidate.", "StreamingDistributionList$MaxItems": "The value you provided for the MaxItems request parameter.", "StreamingDistributionList$Quantity": "The number of streaming distributions that were created by the current AWS account.", "TrustedSigners$Quantity": "The number of trusted signers for this cache behavior." } }, "long": { "base": null, "refs": { "CacheBehavior$MinTTL": "The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CacheBehavior$DefaultTTL": "If you don't configure your origin to add a Cache-Control max-age directive or an Expires header, DefaultTTL is the default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CacheBehavior$MaxTTL": "The maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CustomErrorResponse$ErrorCachingMinTTL": "The minimum amount of time you want HTTP error codes to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. You can specify a value from 0 to 31,536,000.", "DefaultCacheBehavior$MinTTL": "The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "DefaultCacheBehavior$DefaultTTL": "If you don't configure your origin to add a Cache-Control max-age directive or an Expires header, DefaultTTL is the default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "DefaultCacheBehavior$MaxTTL": "The maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years)." } }, "string": { "base": null, "refs": { "AccessDenied$Message": null, "AliasList$member": null, "AwsAccountNumberList$member": null, "BatchTooLarge$Message": null, "CNAMEAlreadyExists$Message": null, "CacheBehavior$PathPattern": "The pattern (for example, images/*.jpg) that specifies which requests you want this cache behavior to apply to. When CloudFront receives an end-user request, the requested path is compared with path patterns in the order in which cache behaviors are listed in the distribution. The path pattern for the default cache behavior is * and cannot be changed. If the request for an object does not match the path pattern for any cache behaviors, CloudFront applies the behavior in the default cache behavior.", "CacheBehavior$TargetOriginId": "The value of ID for the origin that you want CloudFront to route requests to when a request matches the path pattern either for a cache behavior or for the default cache behavior.", "CloudFrontOriginAccessIdentity$Id": "The ID for the origin access identity. For example: E74FTE3AJFJ256A.", "CloudFrontOriginAccessIdentity$S3CanonicalUserId": "The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin access identity read permission to an object in Amazon S3.", "CloudFrontOriginAccessIdentityAlreadyExists$Message": null, "CloudFrontOriginAccessIdentityConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the CloudFrontOriginAccessIdentityConfig object), a new origin access identity is created. If the CallerReference is a value you already sent in a previous request to create an identity, and the content of the CloudFrontOriginAccessIdentityConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create an identity but the content of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists error.", "CloudFrontOriginAccessIdentityConfig$Comment": "Any comments you want to include about the origin access identity.", "CloudFrontOriginAccessIdentityInUse$Message": null, "CloudFrontOriginAccessIdentityList$Marker": "The value you provided for the Marker request parameter.", "CloudFrontOriginAccessIdentityList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your origin access identities where they left off.", "CloudFrontOriginAccessIdentitySummary$Id": "The ID for the origin access identity. For example: E74FTE3AJFJ256A.", "CloudFrontOriginAccessIdentitySummary$S3CanonicalUserId": "The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin access identity read permission to an object in Amazon S3.", "CloudFrontOriginAccessIdentitySummary$Comment": "The comment for this origin access identity, as originally specified when created.", "CookieNameList$member": null, "CreateCloudFrontOriginAccessIdentityResult$Location": "The fully qualified URI of the new origin access identity just created. For example: https://cloudfront.amazonaws.com/2010-11-01/origin-access-identity/cloudfront/E74FTE3AJFJ256A.", "CreateCloudFrontOriginAccessIdentityResult$ETag": "The current version of the origin access identity created.", "CreateDistributionResult$Location": "The fully qualified URI of the new distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5.", "CreateDistributionResult$ETag": "The current version of the distribution created.", "CreateInvalidationRequest$DistributionId": "The distribution's id.", "CreateInvalidationResult$Location": "The fully qualified URI of the distribution and invalidation batch request, including the Invalidation ID.", "CreateStreamingDistributionResult$Location": "The fully qualified URI of the new streaming distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8.", "CreateStreamingDistributionResult$ETag": "The current version of the streaming distribution created.", "CustomErrorResponse$ResponsePagePath": "The path of the custom error page (for example, /custom_404.html). The path is relative to the distribution and must begin with a slash (/). If the path includes any non-ASCII characters or unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters. Do not URL encode any other characters in the path, or CloudFront will not return the custom error page to the viewer.", "CustomErrorResponse$ResponseCode": "The HTTP status code that you want CloudFront to return with the custom error page to the viewer. For a list of HTTP status codes that you can replace, see CloudFront Documentation.", "DefaultCacheBehavior$TargetOriginId": "The value of ID for the origin that you want CloudFront to route requests to when a request matches the path pattern either for a cache behavior or for the default cache behavior.", "DeleteCloudFrontOriginAccessIdentityRequest$Id": "The origin access identity's id.", "DeleteCloudFrontOriginAccessIdentityRequest$IfMatch": "The value of the ETag header you received from a previous GET or PUT request. For example: E2QWRUHAPOMQZL.", "DeleteDistributionRequest$Id": "The distribution id.", "DeleteDistributionRequest$IfMatch": "The value of the ETag header you received when you disabled the distribution. For example: E2QWRUHAPOMQZL.", "DeleteStreamingDistributionRequest$Id": "The distribution id.", "DeleteStreamingDistributionRequest$IfMatch": "The value of the ETag header you received when you disabled the streaming distribution. For example: E2QWRUHAPOMQZL.", "Distribution$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "Distribution$Status": "This response element indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "Distribution$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "DistributionAlreadyExists$Message": null, "DistributionConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the DistributionConfig object), a new distribution is created. If the CallerReference is a value you already sent in a previous request to create a distribution, and the content of the DistributionConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a distribution but the content of the DistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.", "DistributionConfig$DefaultRootObject": "The object that you want CloudFront to return (for example, index.html) when an end user requests the root URL for your distribution (http://www.example.com) instead of an object in your distribution (http://www.example.com/index.html). Specifying a default root object avoids exposing the contents of your distribution. If you don't want to specify a default root object when you create a distribution, include an empty DefaultRootObject element. To delete the default root object from an existing distribution, update the distribution configuration and include an empty DefaultRootObject element. To replace the default root object, update the distribution configuration and specify the new object.", "DistributionConfig$Comment": "Any comments you want to include about the distribution.", "DistributionConfig$WebACLId": "(Optional) If you're using AWS WAF to filter CloudFront requests, the Id of the AWS WAF web ACL that is associated with the distribution.", "DistributionList$Marker": "The value you provided for the Marker request parameter.", "DistributionList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your distributions where they left off.", "DistributionNotDisabled$Message": null, "DistributionSummary$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "DistributionSummary$Status": "This response element indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "DistributionSummary$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "DistributionSummary$Comment": "The comment originally specified when this distribution was created.", "DistributionSummary$WebACLId": "The Web ACL Id (if any) associated with the distribution.", "GetCloudFrontOriginAccessIdentityConfigRequest$Id": "The identity's id.", "GetCloudFrontOriginAccessIdentityConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetCloudFrontOriginAccessIdentityRequest$Id": "The identity's id.", "GetCloudFrontOriginAccessIdentityResult$ETag": "The current version of the origin access identity's information. For example: E2QWRUHAPOMQZL.", "GetDistributionConfigRequest$Id": "The distribution's id.", "GetDistributionConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetDistributionRequest$Id": "The distribution's id.", "GetDistributionResult$ETag": "The current version of the distribution's information. For example: E2QWRUHAPOMQZL.", "GetInvalidationRequest$DistributionId": "The distribution's id.", "GetInvalidationRequest$Id": "The invalidation's id.", "GetStreamingDistributionConfigRequest$Id": "The streaming distribution's id.", "GetStreamingDistributionConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetStreamingDistributionRequest$Id": "The streaming distribution's id.", "GetStreamingDistributionResult$ETag": "The current version of the streaming distribution's information. For example: E2QWRUHAPOMQZL.", "HeaderList$member": null, "IllegalUpdate$Message": null, "InconsistentQuantities$Message": null, "InvalidArgument$Message": null, "InvalidDefaultRootObject$Message": null, "InvalidErrorCode$Message": null, "InvalidForwardCookies$Message": null, "InvalidGeoRestrictionParameter$Message": null, "InvalidHeadersForS3Origin$Message": null, "InvalidIfMatchVersion$Message": null, "InvalidLocationCode$Message": null, "InvalidMinimumProtocolVersion$Message": null, "InvalidOrigin$Message": null, "InvalidOriginAccessIdentity$Message": null, "InvalidProtocolSettings$Message": null, "InvalidRelativePath$Message": null, "InvalidRequiredProtocol$Message": null, "InvalidResponseCode$Message": null, "InvalidTTLOrder$Message": null, "InvalidViewerCertificate$Message": null, "InvalidWebACLId$Message": null, "Invalidation$Id": "The identifier for the invalidation request. For example: IDFDVBD632BHDS5.", "Invalidation$Status": "The status of the invalidation request. When the invalidation batch is finished, the status is Completed.", "InvalidationBatch$CallerReference": "A unique name that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the Path object), a new distribution is created. If the CallerReference is a value you already sent in a previous request to create an invalidation batch, and the content of each Path element is identical to the original request, the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a distribution but the content of any Path is different from the original request, CloudFront returns an InvalidationBatchAlreadyExists error.", "InvalidationList$Marker": "The value you provided for the Marker request parameter.", "InvalidationList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your invalidation batches where they left off.", "InvalidationSummary$Id": "The unique ID for an invalidation request.", "InvalidationSummary$Status": "The status of an invalidation request.", "KeyPairIdList$member": null, "ListCloudFrontOriginAccessIdentitiesRequest$Marker": "Use this when paginating results to indicate where to begin in your list of origin access identities. The results include identities in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last identity on that page).", "ListCloudFrontOriginAccessIdentitiesRequest$MaxItems": "The maximum number of origin access identities you want in the response body.", "ListDistributionsByWebACLIdRequest$Marker": "Use Marker and MaxItems to control pagination of results. If you have more than MaxItems distributions that satisfy the request, the response includes a NextMarker element. To get the next page of results, submit another request. For the value of Marker, specify the value of NextMarker from the last response. (For the first request, omit Marker.)", "ListDistributionsByWebACLIdRequest$MaxItems": "The maximum number of distributions that you want CloudFront to return in the response body. The maximum and default values are both 100.", "ListDistributionsByWebACLIdRequest$WebACLId": "The Id of the AWS WAF web ACL for which you want to list the associated distributions. If you specify \"null\" for the Id, the request returns a list of the distributions that aren't associated with a web ACL.", "ListDistributionsRequest$Marker": "Use Marker and MaxItems to control pagination of results. If you have more than MaxItems distributions that satisfy the request, the response includes a NextMarker element. To get the next page of results, submit another request. For the value of Marker, specify the value of NextMarker from the last response. (For the first request, omit Marker.)", "ListDistributionsRequest$MaxItems": "The maximum number of distributions that you want CloudFront to return in the response body. The maximum and default values are both 100.", "ListInvalidationsRequest$DistributionId": "The distribution's id.", "ListInvalidationsRequest$Marker": "Use this parameter when paginating results to indicate where to begin in your list of invalidation batches. Because the results are returned in decreasing order from most recent to oldest, the most recent results are on the first page, the second page will contain earlier results, and so on. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response. This value is the same as the ID of the last invalidation batch on that page.", "ListInvalidationsRequest$MaxItems": "The maximum number of invalidation batches you want in the response body.", "ListStreamingDistributionsRequest$Marker": "Use this when paginating results to indicate where to begin in your list of streaming distributions. The results include distributions in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last distribution on that page).", "ListStreamingDistributionsRequest$MaxItems": "The maximum number of streaming distributions you want in the response body.", "LocationList$member": null, "LoggingConfig$Bucket": "The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.", "LoggingConfig$Prefix": "An optional string that you want CloudFront to prefix to the access log filenames for this distribution, for example, myprefix/. If you want to enable logging, but you do not want to specify a prefix, you still must include an empty Prefix element in the Logging element.", "MissingBody$Message": null, "NoSuchCloudFrontOriginAccessIdentity$Message": null, "NoSuchDistribution$Message": null, "NoSuchInvalidation$Message": null, "NoSuchOrigin$Message": null, "NoSuchStreamingDistribution$Message": null, "Origin$Id": "A unique identifier for the origin. The value of Id must be unique within the distribution. You use the value of Id when you create a cache behavior. The Id identifies the origin that CloudFront routes a request to when the request matches the path pattern for that cache behavior.", "Origin$DomainName": "Amazon S3 origins: The DNS name of the Amazon S3 bucket from which you want CloudFront to get objects for this origin, for example, myawsbucket.s3.amazonaws.com. Custom origins: The DNS domain name for the HTTP server from which you want CloudFront to get objects for this origin, for example, www.example.com.", "Origin$OriginPath": "An optional element that causes CloudFront to request your content from a directory in your Amazon S3 bucket or your custom origin. When you include the OriginPath element, specify the directory name, beginning with a /. CloudFront appends the directory name to the value of DomainName.", "PathList$member": null, "PreconditionFailed$Message": null, "S3Origin$DomainName": "The DNS name of the S3 origin.", "S3Origin$OriginAccessIdentity": "Your S3 origin's origin access identity.", "S3OriginConfig$OriginAccessIdentity": "The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that end users can only access objects in an Amazon S3 bucket through CloudFront. If you want end users to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty OriginAccessIdentity element. To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty OriginAccessIdentity element. To replace the origin access identity, update the distribution configuration and specify the new origin access identity. Use the format origin-access-identity/cloudfront/Id where Id is the value that CloudFront returned in the Id element when you created the origin access identity.", "Signer$AwsAccountNumber": "Specifies an AWS account that can create signed URLs. Values: self, which indicates that the AWS account that was used to create the distribution can created signed URLs, or an AWS account number. Omit the dashes in the account number.", "StreamingDistribution$Id": "The identifier for the streaming distribution. For example: EGTXBD79H29TRA8.", "StreamingDistribution$Status": "The current status of the streaming distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "StreamingDistribution$DomainName": "The domain name corresponding to the streaming distribution. For example: s5c39gqb8ow64r.cloudfront.net.", "StreamingDistributionAlreadyExists$Message": null, "StreamingDistributionConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the StreamingDistributionConfig object), a new streaming distribution is created. If the CallerReference is a value you already sent in a previous request to create a streaming distribution, and the content of the StreamingDistributionConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a streaming distribution but the content of the StreamingDistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.", "StreamingDistributionConfig$Comment": "Any comments you want to include about the streaming distribution.", "StreamingDistributionList$Marker": "The value you provided for the Marker request parameter.", "StreamingDistributionList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your streaming distributions where they left off.", "StreamingDistributionNotDisabled$Message": null, "StreamingDistributionSummary$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "StreamingDistributionSummary$Status": "Indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "StreamingDistributionSummary$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "StreamingDistributionSummary$Comment": "The comment originally specified when this distribution was created.", "StreamingLoggingConfig$Bucket": "The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.", "StreamingLoggingConfig$Prefix": "An optional string that you want CloudFront to prefix to the access log filenames for this streaming distribution, for example, myprefix/. If you want to enable logging, but you do not want to specify a prefix, you still must include an empty Prefix element in the Logging element.", "TooManyCacheBehaviors$Message": null, "TooManyCertificates$Message": null, "TooManyCloudFrontOriginAccessIdentities$Message": null, "TooManyCookieNamesInWhiteList$Message": null, "TooManyDistributionCNAMEs$Message": null, "TooManyDistributions$Message": null, "TooManyHeadersInForwardedValues$Message": null, "TooManyInvalidationsInProgress$Message": null, "TooManyOrigins$Message": null, "TooManyStreamingDistributionCNAMEs$Message": null, "TooManyStreamingDistributions$Message": null, "TooManyTrustedSigners$Message": null, "TrustedSignerDoesNotExist$Message": null, "UpdateCloudFrontOriginAccessIdentityRequest$Id": "The identity's id.", "UpdateCloudFrontOriginAccessIdentityRequest$IfMatch": "The value of the ETag header you received when retrieving the identity's configuration. For example: E2QWRUHAPOMQZL.", "UpdateCloudFrontOriginAccessIdentityResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "UpdateDistributionRequest$Id": "The distribution's id.", "UpdateDistributionRequest$IfMatch": "The value of the ETag header you received when retrieving the distribution's configuration. For example: E2QWRUHAPOMQZL.", "UpdateDistributionResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "UpdateStreamingDistributionRequest$Id": "The streaming distribution's id.", "UpdateStreamingDistributionRequest$IfMatch": "The value of the ETag header you received when retrieving the streaming distribution's configuration. For example: E2QWRUHAPOMQZL.", "UpdateStreamingDistributionResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "ViewerCertificate$IAMCertificateId": "If you want viewers to use HTTPS to request your objects and you're using an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), specify the IAM certificate identifier of the custom viewer certificate for this distribution. Specify either this value or CloudFrontDefaultCertificate." } }, "timestamp": { "base": null, "refs": { "Distribution$LastModifiedTime": "The date and time the distribution was last modified.", "DistributionSummary$LastModifiedTime": "The date and time the distribution was last modified.", "Invalidation$CreateTime": "The date and time the invalidation request was first made.", "InvalidationSummary$CreateTime": null, "StreamingDistribution$LastModifiedTime": "The date and time the distribution was last modified.", "StreamingDistributionSummary$LastModifiedTime": "The date and time the distribution was last modified." } } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2015-07-27/paginators-1.json000066400000000000000000000021461300374646400244250ustar00rootroot00000000000000{ "pagination": { "ListCloudFrontOriginAccessIdentities": { "input_token": "Marker", "output_token": "CloudFrontOriginAccessIdentityList.NextMarker", "limit_key": "MaxItems", "more_results": "CloudFrontOriginAccessIdentityList.IsTruncated", "result_key": "CloudFrontOriginAccessIdentityList.Items" }, "ListDistributions": { "input_token": "Marker", "output_token": "DistributionList.NextMarker", "limit_key": "MaxItems", "more_results": "DistributionList.IsTruncated", "result_key": "DistributionList.Items" }, "ListInvalidations": { "input_token": "Marker", "output_token": "InvalidationList.NextMarker", "limit_key": "MaxItems", "more_results": "InvalidationList.IsTruncated", "result_key": "InvalidationList.Items" }, "ListStreamingDistributions": { "input_token": "Marker", "output_token": "StreamingDistributionList.NextMarker", "limit_key": "MaxItems", "more_results": "StreamingDistributionList.IsTruncated", "result_key": "StreamingDistributionList.Items" } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2015-07-27/waiters-2.json000066400000000000000000000021601300374646400237310ustar00rootroot00000000000000{ "version": 2, "waiters": { "DistributionDeployed": { "delay": 60, "operation": "GetDistribution", "maxAttempts": 25, "description": "Wait until a distribution is deployed.", "acceptors": [ { "expected": "Deployed", "matcher": "path", "state": "success", "argument": "Status" } ] }, "InvalidationCompleted": { "delay": 20, "operation": "GetInvalidation", "maxAttempts": 30, "description": "Wait until an invalidation has completed.", "acceptors": [ { "expected": "Completed", "matcher": "path", "state": "success", "argument": "Status" } ] }, "StreamingDistributionDeployed": { "delay": 60, "operation": "GetStreamingDistribution", "maxAttempts": 25, "description": "Wait until a streaming distribution is deployed.", "acceptors": [ { "expected": "Deployed", "matcher": "path", "state": "success", "argument": "Status" } ] } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2015-09-17/000077500000000000000000000000001300374646400212235ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudfront/2015-09-17/api-2.json000066400000000000000000001616161300374646400230410ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-09-17", "endpointPrefix":"cloudfront", "globalEndpoint":"cloudfront.amazonaws.com", "protocol":"rest-xml", "serviceAbbreviation":"CloudFront", "serviceFullName":"Amazon CloudFront", "signatureVersion":"v4" }, "operations":{ "CreateCloudFrontOriginAccessIdentity":{ "name":"CreateCloudFrontOriginAccessIdentity2015_09_17", "http":{ "method":"POST", "requestUri":"/2015-09-17/origin-access-identity/cloudfront", "responseCode":201 }, "input":{"shape":"CreateCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"CreateCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"CloudFrontOriginAccessIdentityAlreadyExists"}, {"shape":"MissingBody"}, {"shape":"TooManyCloudFrontOriginAccessIdentities"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "CreateDistribution":{ "name":"CreateDistribution2015_09_17", "http":{ "method":"POST", "requestUri":"/2015-09-17/distribution", "responseCode":201 }, "input":{"shape":"CreateDistributionRequest"}, "output":{"shape":"CreateDistributionResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"DistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InvalidViewerCertificate"}, {"shape":"InvalidMinimumProtocolVersion"}, {"shape":"MissingBody"}, {"shape":"TooManyDistributionCNAMEs"}, {"shape":"TooManyDistributions"}, {"shape":"InvalidDefaultRootObject"}, {"shape":"InvalidRelativePath"}, {"shape":"InvalidErrorCode"}, {"shape":"InvalidResponseCode"}, {"shape":"InvalidArgument"}, {"shape":"InvalidRequiredProtocol"}, {"shape":"NoSuchOrigin"}, {"shape":"TooManyOrigins"}, {"shape":"TooManyCacheBehaviors"}, {"shape":"TooManyCookieNamesInWhiteList"}, {"shape":"InvalidForwardCookies"}, {"shape":"TooManyHeadersInForwardedValues"}, {"shape":"InvalidHeadersForS3Origin"}, {"shape":"InconsistentQuantities"}, {"shape":"TooManyCertificates"}, {"shape":"InvalidLocationCode"}, {"shape":"InvalidGeoRestrictionParameter"}, {"shape":"InvalidProtocolSettings"}, {"shape":"InvalidTTLOrder"}, {"shape":"InvalidWebACLId"} ] }, "CreateInvalidation":{ "name":"CreateInvalidation2015_09_17", "http":{ "method":"POST", "requestUri":"/2015-09-17/distribution/{DistributionId}/invalidation", "responseCode":201 }, "input":{"shape":"CreateInvalidationRequest"}, "output":{"shape":"CreateInvalidationResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"MissingBody"}, {"shape":"InvalidArgument"}, {"shape":"NoSuchDistribution"}, {"shape":"BatchTooLarge"}, {"shape":"TooManyInvalidationsInProgress"}, {"shape":"InconsistentQuantities"} ] }, "CreateStreamingDistribution":{ "name":"CreateStreamingDistribution2015_09_17", "http":{ "method":"POST", "requestUri":"/2015-09-17/streaming-distribution", "responseCode":201 }, "input":{"shape":"CreateStreamingDistributionRequest"}, "output":{"shape":"CreateStreamingDistributionResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"StreamingDistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"MissingBody"}, {"shape":"TooManyStreamingDistributionCNAMEs"}, {"shape":"TooManyStreamingDistributions"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "DeleteCloudFrontOriginAccessIdentity":{ "name":"DeleteCloudFrontOriginAccessIdentity2015_09_17", "http":{ "method":"DELETE", "requestUri":"/2015-09-17/origin-access-identity/cloudfront/{Id}", "responseCode":204 }, "input":{"shape":"DeleteCloudFrontOriginAccessIdentityRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"PreconditionFailed"}, {"shape":"CloudFrontOriginAccessIdentityInUse"} ] }, "DeleteDistribution":{ "name":"DeleteDistribution2015_09_17", "http":{ "method":"DELETE", "requestUri":"/2015-09-17/distribution/{Id}", "responseCode":204 }, "input":{"shape":"DeleteDistributionRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"DistributionNotDisabled"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchDistribution"}, {"shape":"PreconditionFailed"} ] }, "DeleteStreamingDistribution":{ "name":"DeleteStreamingDistribution2015_09_17", "http":{ "method":"DELETE", "requestUri":"/2015-09-17/streaming-distribution/{Id}", "responseCode":204 }, "input":{"shape":"DeleteStreamingDistributionRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"StreamingDistributionNotDisabled"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchStreamingDistribution"}, {"shape":"PreconditionFailed"} ] }, "GetCloudFrontOriginAccessIdentity":{ "name":"GetCloudFrontOriginAccessIdentity2015_09_17", "http":{ "method":"GET", "requestUri":"/2015-09-17/origin-access-identity/cloudfront/{Id}" }, "input":{"shape":"GetCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"GetCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"AccessDenied"} ] }, "GetCloudFrontOriginAccessIdentityConfig":{ "name":"GetCloudFrontOriginAccessIdentityConfig2015_09_17", "http":{ "method":"GET", "requestUri":"/2015-09-17/origin-access-identity/cloudfront/{Id}/config" }, "input":{"shape":"GetCloudFrontOriginAccessIdentityConfigRequest"}, "output":{"shape":"GetCloudFrontOriginAccessIdentityConfigResult"}, "errors":[ {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"AccessDenied"} ] }, "GetDistribution":{ "name":"GetDistribution2015_09_17", "http":{ "method":"GET", "requestUri":"/2015-09-17/distribution/{Id}" }, "input":{"shape":"GetDistributionRequest"}, "output":{"shape":"GetDistributionResult"}, "errors":[ {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetDistributionConfig":{ "name":"GetDistributionConfig2015_09_17", "http":{ "method":"GET", "requestUri":"/2015-09-17/distribution/{Id}/config" }, "input":{"shape":"GetDistributionConfigRequest"}, "output":{"shape":"GetDistributionConfigResult"}, "errors":[ {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetInvalidation":{ "name":"GetInvalidation2015_09_17", "http":{ "method":"GET", "requestUri":"/2015-09-17/distribution/{DistributionId}/invalidation/{Id}" }, "input":{"shape":"GetInvalidationRequest"}, "output":{"shape":"GetInvalidationResult"}, "errors":[ {"shape":"NoSuchInvalidation"}, {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetStreamingDistribution":{ "name":"GetStreamingDistribution2015_09_17", "http":{ "method":"GET", "requestUri":"/2015-09-17/streaming-distribution/{Id}" }, "input":{"shape":"GetStreamingDistributionRequest"}, "output":{"shape":"GetStreamingDistributionResult"}, "errors":[ {"shape":"NoSuchStreamingDistribution"}, {"shape":"AccessDenied"} ] }, "GetStreamingDistributionConfig":{ "name":"GetStreamingDistributionConfig2015_09_17", "http":{ "method":"GET", "requestUri":"/2015-09-17/streaming-distribution/{Id}/config" }, "input":{"shape":"GetStreamingDistributionConfigRequest"}, "output":{"shape":"GetStreamingDistributionConfigResult"}, "errors":[ {"shape":"NoSuchStreamingDistribution"}, {"shape":"AccessDenied"} ] }, "ListCloudFrontOriginAccessIdentities":{ "name":"ListCloudFrontOriginAccessIdentities2015_09_17", "http":{ "method":"GET", "requestUri":"/2015-09-17/origin-access-identity/cloudfront" }, "input":{"shape":"ListCloudFrontOriginAccessIdentitiesRequest"}, "output":{"shape":"ListCloudFrontOriginAccessIdentitiesResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "ListDistributions":{ "name":"ListDistributions2015_09_17", "http":{ "method":"GET", "requestUri":"/2015-09-17/distribution" }, "input":{"shape":"ListDistributionsRequest"}, "output":{"shape":"ListDistributionsResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "ListDistributionsByWebACLId":{ "name":"ListDistributionsByWebACLId2015_09_17", "http":{ "method":"GET", "requestUri":"/2015-09-17/distributionsByWebACLId/{WebACLId}" }, "input":{"shape":"ListDistributionsByWebACLIdRequest"}, "output":{"shape":"ListDistributionsByWebACLIdResult"}, "errors":[ {"shape":"InvalidArgument"}, {"shape":"InvalidWebACLId"} ] }, "ListInvalidations":{ "name":"ListInvalidations2015_09_17", "http":{ "method":"GET", "requestUri":"/2015-09-17/distribution/{DistributionId}/invalidation" }, "input":{"shape":"ListInvalidationsRequest"}, "output":{"shape":"ListInvalidationsResult"}, "errors":[ {"shape":"InvalidArgument"}, {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "ListStreamingDistributions":{ "name":"ListStreamingDistributions2015_09_17", "http":{ "method":"GET", "requestUri":"/2015-09-17/streaming-distribution" }, "input":{"shape":"ListStreamingDistributionsRequest"}, "output":{"shape":"ListStreamingDistributionsResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "UpdateCloudFrontOriginAccessIdentity":{ "name":"UpdateCloudFrontOriginAccessIdentity2015_09_17", "http":{ "method":"PUT", "requestUri":"/2015-09-17/origin-access-identity/cloudfront/{Id}/config" }, "input":{"shape":"UpdateCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"UpdateCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"PreconditionFailed"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "UpdateDistribution":{ "name":"UpdateDistribution2015_09_17", "http":{ "method":"PUT", "requestUri":"/2015-09-17/distribution/{Id}/config" }, "input":{"shape":"UpdateDistributionRequest"}, "output":{"shape":"UpdateDistributionResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"CNAMEAlreadyExists"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchDistribution"}, {"shape":"PreconditionFailed"}, {"shape":"TooManyDistributionCNAMEs"}, {"shape":"InvalidDefaultRootObject"}, {"shape":"InvalidRelativePath"}, {"shape":"InvalidErrorCode"}, {"shape":"InvalidResponseCode"}, {"shape":"InvalidArgument"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InvalidViewerCertificate"}, {"shape":"InvalidMinimumProtocolVersion"}, {"shape":"InvalidRequiredProtocol"}, {"shape":"NoSuchOrigin"}, {"shape":"TooManyOrigins"}, {"shape":"TooManyCacheBehaviors"}, {"shape":"TooManyCookieNamesInWhiteList"}, {"shape":"InvalidForwardCookies"}, {"shape":"TooManyHeadersInForwardedValues"}, {"shape":"InvalidHeadersForS3Origin"}, {"shape":"InconsistentQuantities"}, {"shape":"TooManyCertificates"}, {"shape":"InvalidLocationCode"}, {"shape":"InvalidGeoRestrictionParameter"}, {"shape":"InvalidTTLOrder"}, {"shape":"InvalidWebACLId"} ] }, "UpdateStreamingDistribution":{ "name":"UpdateStreamingDistribution2015_09_17", "http":{ "method":"PUT", "requestUri":"/2015-09-17/streaming-distribution/{Id}/config" }, "input":{"shape":"UpdateStreamingDistributionRequest"}, "output":{"shape":"UpdateStreamingDistributionResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"CNAMEAlreadyExists"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchStreamingDistribution"}, {"shape":"PreconditionFailed"}, {"shape":"TooManyStreamingDistributionCNAMEs"}, {"shape":"InvalidArgument"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InconsistentQuantities"} ] } }, "shapes":{ "AccessDenied":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":403}, "exception":true }, "ActiveTrustedSigners":{ "type":"structure", "required":[ "Enabled", "Quantity" ], "members":{ "Enabled":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"SignerList"} } }, "AliasList":{ "type":"list", "member":{ "shape":"string", "locationName":"CNAME" } }, "Aliases":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"AliasList"} } }, "AllowedMethods":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"MethodsList"}, "CachedMethods":{"shape":"CachedMethods"} } }, "AwsAccountNumberList":{ "type":"list", "member":{ "shape":"string", "locationName":"AwsAccountNumber" } }, "BatchTooLarge":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":413}, "exception":true }, "CNAMEAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CacheBehavior":{ "type":"structure", "required":[ "PathPattern", "TargetOriginId", "ForwardedValues", "TrustedSigners", "ViewerProtocolPolicy", "MinTTL" ], "members":{ "PathPattern":{"shape":"string"}, "TargetOriginId":{"shape":"string"}, "ForwardedValues":{"shape":"ForwardedValues"}, "TrustedSigners":{"shape":"TrustedSigners"}, "ViewerProtocolPolicy":{"shape":"ViewerProtocolPolicy"}, "MinTTL":{"shape":"long"}, "AllowedMethods":{"shape":"AllowedMethods"}, "SmoothStreaming":{"shape":"boolean"}, "DefaultTTL":{"shape":"long"}, "MaxTTL":{"shape":"long"}, "Compress":{"shape":"boolean"} } }, "CacheBehaviorList":{ "type":"list", "member":{ "shape":"CacheBehavior", "locationName":"CacheBehavior" } }, "CacheBehaviors":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CacheBehaviorList"} } }, "CachedMethods":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"MethodsList"} } }, "CertificateSource":{ "type":"string", "enum":[ "cloudfront", "iam" ] }, "CloudFrontOriginAccessIdentity":{ "type":"structure", "required":[ "Id", "S3CanonicalUserId" ], "members":{ "Id":{"shape":"string"}, "S3CanonicalUserId":{"shape":"string"}, "CloudFrontOriginAccessIdentityConfig":{"shape":"CloudFrontOriginAccessIdentityConfig"} } }, "CloudFrontOriginAccessIdentityAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CloudFrontOriginAccessIdentityConfig":{ "type":"structure", "required":[ "CallerReference", "Comment" ], "members":{ "CallerReference":{"shape":"string"}, "Comment":{"shape":"string"} } }, "CloudFrontOriginAccessIdentityInUse":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CloudFrontOriginAccessIdentityList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"CloudFrontOriginAccessIdentitySummaryList"} } }, "CloudFrontOriginAccessIdentitySummary":{ "type":"structure", "required":[ "Id", "S3CanonicalUserId", "Comment" ], "members":{ "Id":{"shape":"string"}, "S3CanonicalUserId":{"shape":"string"}, "Comment":{"shape":"string"} } }, "CloudFrontOriginAccessIdentitySummaryList":{ "type":"list", "member":{ "shape":"CloudFrontOriginAccessIdentitySummary", "locationName":"CloudFrontOriginAccessIdentitySummary" } }, "CookieNameList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "CookieNames":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CookieNameList"} } }, "CookiePreference":{ "type":"structure", "required":["Forward"], "members":{ "Forward":{"shape":"ItemSelection"}, "WhitelistedNames":{"shape":"CookieNames"} } }, "CreateCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["CloudFrontOriginAccessIdentityConfig"], "members":{ "CloudFrontOriginAccessIdentityConfig":{ "shape":"CloudFrontOriginAccessIdentityConfig", "locationName":"CloudFrontOriginAccessIdentityConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-09-17/"} } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "CreateCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "CreateDistributionRequest":{ "type":"structure", "required":["DistributionConfig"], "members":{ "DistributionConfig":{ "shape":"DistributionConfig", "locationName":"DistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-09-17/"} } }, "payload":"DistributionConfig" }, "CreateDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "CreateInvalidationRequest":{ "type":"structure", "required":[ "DistributionId", "InvalidationBatch" ], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "InvalidationBatch":{ "shape":"InvalidationBatch", "locationName":"InvalidationBatch", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-09-17/"} } }, "payload":"InvalidationBatch" }, "CreateInvalidationResult":{ "type":"structure", "members":{ "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "Invalidation":{"shape":"Invalidation"} }, "payload":"Invalidation" }, "CreateStreamingDistributionRequest":{ "type":"structure", "required":["StreamingDistributionConfig"], "members":{ "StreamingDistributionConfig":{ "shape":"StreamingDistributionConfig", "locationName":"StreamingDistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-09-17/"} } }, "payload":"StreamingDistributionConfig" }, "CreateStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "CustomErrorResponse":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"integer"}, "ResponsePagePath":{"shape":"string"}, "ResponseCode":{"shape":"string"}, "ErrorCachingMinTTL":{"shape":"long"} } }, "CustomErrorResponseList":{ "type":"list", "member":{ "shape":"CustomErrorResponse", "locationName":"CustomErrorResponse" } }, "CustomErrorResponses":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CustomErrorResponseList"} } }, "CustomOriginConfig":{ "type":"structure", "required":[ "HTTPPort", "HTTPSPort", "OriginProtocolPolicy" ], "members":{ "HTTPPort":{"shape":"integer"}, "HTTPSPort":{"shape":"integer"}, "OriginProtocolPolicy":{"shape":"OriginProtocolPolicy"} } }, "DefaultCacheBehavior":{ "type":"structure", "required":[ "TargetOriginId", "ForwardedValues", "TrustedSigners", "ViewerProtocolPolicy", "MinTTL" ], "members":{ "TargetOriginId":{"shape":"string"}, "ForwardedValues":{"shape":"ForwardedValues"}, "TrustedSigners":{"shape":"TrustedSigners"}, "ViewerProtocolPolicy":{"shape":"ViewerProtocolPolicy"}, "MinTTL":{"shape":"long"}, "AllowedMethods":{"shape":"AllowedMethods"}, "SmoothStreaming":{"shape":"boolean"}, "DefaultTTL":{"shape":"long"}, "MaxTTL":{"shape":"long"}, "Compress":{"shape":"boolean"} } }, "DeleteCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "DeleteDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "DeleteStreamingDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "Distribution":{ "type":"structure", "required":[ "Id", "Status", "LastModifiedTime", "InProgressInvalidationBatches", "DomainName", "ActiveTrustedSigners", "DistributionConfig" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "InProgressInvalidationBatches":{"shape":"integer"}, "DomainName":{"shape":"string"}, "ActiveTrustedSigners":{"shape":"ActiveTrustedSigners"}, "DistributionConfig":{"shape":"DistributionConfig"} } }, "DistributionAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "DistributionConfig":{ "type":"structure", "required":[ "CallerReference", "Origins", "DefaultCacheBehavior", "Comment", "Enabled" ], "members":{ "CallerReference":{"shape":"string"}, "Aliases":{"shape":"Aliases"}, "DefaultRootObject":{"shape":"string"}, "Origins":{"shape":"Origins"}, "DefaultCacheBehavior":{"shape":"DefaultCacheBehavior"}, "CacheBehaviors":{"shape":"CacheBehaviors"}, "CustomErrorResponses":{"shape":"CustomErrorResponses"}, "Comment":{"shape":"string"}, "Logging":{"shape":"LoggingConfig"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"}, "ViewerCertificate":{"shape":"ViewerCertificate"}, "Restrictions":{"shape":"Restrictions"}, "WebACLId":{"shape":"string"} } }, "DistributionList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"DistributionSummaryList"} } }, "DistributionNotDisabled":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "DistributionSummary":{ "type":"structure", "required":[ "Id", "Status", "LastModifiedTime", "DomainName", "Aliases", "Origins", "DefaultCacheBehavior", "CacheBehaviors", "CustomErrorResponses", "Comment", "PriceClass", "Enabled", "ViewerCertificate", "Restrictions", "WebACLId" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "Aliases":{"shape":"Aliases"}, "Origins":{"shape":"Origins"}, "DefaultCacheBehavior":{"shape":"DefaultCacheBehavior"}, "CacheBehaviors":{"shape":"CacheBehaviors"}, "CustomErrorResponses":{"shape":"CustomErrorResponses"}, "Comment":{"shape":"string"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"}, "ViewerCertificate":{"shape":"ViewerCertificate"}, "Restrictions":{"shape":"Restrictions"}, "WebACLId":{"shape":"string"} } }, "DistributionSummaryList":{ "type":"list", "member":{ "shape":"DistributionSummary", "locationName":"DistributionSummary" } }, "ForwardedValues":{ "type":"structure", "required":[ "QueryString", "Cookies" ], "members":{ "QueryString":{"shape":"boolean"}, "Cookies":{"shape":"CookiePreference"}, "Headers":{"shape":"Headers"} } }, "GeoRestriction":{ "type":"structure", "required":[ "RestrictionType", "Quantity" ], "members":{ "RestrictionType":{"shape":"GeoRestrictionType"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"LocationList"} } }, "GeoRestrictionType":{ "type":"string", "enum":[ "blacklist", "whitelist", "none" ] }, "GetCloudFrontOriginAccessIdentityConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetCloudFrontOriginAccessIdentityConfigResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentityConfig":{"shape":"CloudFrontOriginAccessIdentityConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "GetCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "GetDistributionConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetDistributionConfigResult":{ "type":"structure", "members":{ "DistributionConfig":{"shape":"DistributionConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"DistributionConfig" }, "GetDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "GetInvalidationRequest":{ "type":"structure", "required":[ "DistributionId", "Id" ], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetInvalidationResult":{ "type":"structure", "members":{ "Invalidation":{"shape":"Invalidation"} }, "payload":"Invalidation" }, "GetStreamingDistributionConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetStreamingDistributionConfigResult":{ "type":"structure", "members":{ "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistributionConfig" }, "GetStreamingDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "HeaderList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "Headers":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"HeaderList"} } }, "IllegalUpdate":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InconsistentQuantities":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidArgument":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidDefaultRootObject":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidErrorCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidForwardCookies":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidGeoRestrictionParameter":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidHeadersForS3Origin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidIfMatchVersion":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidLocationCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidMinimumProtocolVersion":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidOrigin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidOriginAccessIdentity":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidProtocolSettings":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRelativePath":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRequiredProtocol":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidResponseCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidTTLOrder":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidViewerCertificate":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidWebACLId":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "Invalidation":{ "type":"structure", "required":[ "Id", "Status", "CreateTime", "InvalidationBatch" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "CreateTime":{"shape":"timestamp"}, "InvalidationBatch":{"shape":"InvalidationBatch"} } }, "InvalidationBatch":{ "type":"structure", "required":[ "Paths", "CallerReference" ], "members":{ "Paths":{"shape":"Paths"}, "CallerReference":{"shape":"string"} } }, "InvalidationList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"InvalidationSummaryList"} } }, "InvalidationSummary":{ "type":"structure", "required":[ "Id", "CreateTime", "Status" ], "members":{ "Id":{"shape":"string"}, "CreateTime":{"shape":"timestamp"}, "Status":{"shape":"string"} } }, "InvalidationSummaryList":{ "type":"list", "member":{ "shape":"InvalidationSummary", "locationName":"InvalidationSummary" } }, "ItemSelection":{ "type":"string", "enum":[ "none", "whitelist", "all" ] }, "KeyPairIdList":{ "type":"list", "member":{ "shape":"string", "locationName":"KeyPairId" } }, "KeyPairIds":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"KeyPairIdList"} } }, "ListCloudFrontOriginAccessIdentitiesRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListCloudFrontOriginAccessIdentitiesResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentityList":{"shape":"CloudFrontOriginAccessIdentityList"} }, "payload":"CloudFrontOriginAccessIdentityList" }, "ListDistributionsByWebACLIdRequest":{ "type":"structure", "required":["WebACLId"], "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" }, "WebACLId":{ "shape":"string", "location":"uri", "locationName":"WebACLId" } } }, "ListDistributionsByWebACLIdResult":{ "type":"structure", "members":{ "DistributionList":{"shape":"DistributionList"} }, "payload":"DistributionList" }, "ListDistributionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListDistributionsResult":{ "type":"structure", "members":{ "DistributionList":{"shape":"DistributionList"} }, "payload":"DistributionList" }, "ListInvalidationsRequest":{ "type":"structure", "required":["DistributionId"], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListInvalidationsResult":{ "type":"structure", "members":{ "InvalidationList":{"shape":"InvalidationList"} }, "payload":"InvalidationList" }, "ListStreamingDistributionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListStreamingDistributionsResult":{ "type":"structure", "members":{ "StreamingDistributionList":{"shape":"StreamingDistributionList"} }, "payload":"StreamingDistributionList" }, "LocationList":{ "type":"list", "member":{ "shape":"string", "locationName":"Location" } }, "LoggingConfig":{ "type":"structure", "required":[ "Enabled", "IncludeCookies", "Bucket", "Prefix" ], "members":{ "Enabled":{"shape":"boolean"}, "IncludeCookies":{"shape":"boolean"}, "Bucket":{"shape":"string"}, "Prefix":{"shape":"string"} } }, "Method":{ "type":"string", "enum":[ "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" ] }, "MethodsList":{ "type":"list", "member":{ "shape":"Method", "locationName":"Method" } }, "MinimumProtocolVersion":{ "type":"string", "enum":[ "SSLv3", "TLSv1" ] }, "MissingBody":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "NoSuchCloudFrontOriginAccessIdentity":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchDistribution":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchInvalidation":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchOrigin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchStreamingDistribution":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "Origin":{ "type":"structure", "required":[ "Id", "DomainName" ], "members":{ "Id":{"shape":"string"}, "DomainName":{"shape":"string"}, "OriginPath":{"shape":"string"}, "S3OriginConfig":{"shape":"S3OriginConfig"}, "CustomOriginConfig":{"shape":"CustomOriginConfig"} } }, "OriginList":{ "type":"list", "member":{ "shape":"Origin", "locationName":"Origin" }, "min":1 }, "OriginProtocolPolicy":{ "type":"string", "enum":[ "http-only", "match-viewer" ] }, "Origins":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"OriginList"} } }, "PathList":{ "type":"list", "member":{ "shape":"string", "locationName":"Path" } }, "Paths":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"PathList"} } }, "PreconditionFailed":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":412}, "exception":true }, "PriceClass":{ "type":"string", "enum":[ "PriceClass_100", "PriceClass_200", "PriceClass_All" ] }, "Restrictions":{ "type":"structure", "required":["GeoRestriction"], "members":{ "GeoRestriction":{"shape":"GeoRestriction"} } }, "S3Origin":{ "type":"structure", "required":[ "DomainName", "OriginAccessIdentity" ], "members":{ "DomainName":{"shape":"string"}, "OriginAccessIdentity":{"shape":"string"} } }, "S3OriginConfig":{ "type":"structure", "required":["OriginAccessIdentity"], "members":{ "OriginAccessIdentity":{"shape":"string"} } }, "SSLSupportMethod":{ "type":"string", "enum":[ "sni-only", "vip" ] }, "Signer":{ "type":"structure", "members":{ "AwsAccountNumber":{"shape":"string"}, "KeyPairIds":{"shape":"KeyPairIds"} } }, "SignerList":{ "type":"list", "member":{ "shape":"Signer", "locationName":"Signer" } }, "StreamingDistribution":{ "type":"structure", "required":[ "Id", "Status", "DomainName", "ActiveTrustedSigners", "StreamingDistributionConfig" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "ActiveTrustedSigners":{"shape":"ActiveTrustedSigners"}, "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"} } }, "StreamingDistributionAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "StreamingDistributionConfig":{ "type":"structure", "required":[ "CallerReference", "S3Origin", "Comment", "TrustedSigners", "Enabled" ], "members":{ "CallerReference":{"shape":"string"}, "S3Origin":{"shape":"S3Origin"}, "Aliases":{"shape":"Aliases"}, "Comment":{"shape":"string"}, "Logging":{"shape":"StreamingLoggingConfig"}, "TrustedSigners":{"shape":"TrustedSigners"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"} } }, "StreamingDistributionList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"StreamingDistributionSummaryList"} } }, "StreamingDistributionNotDisabled":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "StreamingDistributionSummary":{ "type":"structure", "required":[ "Id", "Status", "LastModifiedTime", "DomainName", "S3Origin", "Aliases", "TrustedSigners", "Comment", "PriceClass", "Enabled" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "S3Origin":{"shape":"S3Origin"}, "Aliases":{"shape":"Aliases"}, "TrustedSigners":{"shape":"TrustedSigners"}, "Comment":{"shape":"string"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"} } }, "StreamingDistributionSummaryList":{ "type":"list", "member":{ "shape":"StreamingDistributionSummary", "locationName":"StreamingDistributionSummary" } }, "StreamingLoggingConfig":{ "type":"structure", "required":[ "Enabled", "Bucket", "Prefix" ], "members":{ "Enabled":{"shape":"boolean"}, "Bucket":{"shape":"string"}, "Prefix":{"shape":"string"} } }, "TooManyCacheBehaviors":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCertificates":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCloudFrontOriginAccessIdentities":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCookieNamesInWhiteList":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyDistributionCNAMEs":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyDistributions":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyHeadersInForwardedValues":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyInvalidationsInProgress":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyOrigins":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyStreamingDistributionCNAMEs":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyStreamingDistributions":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyTrustedSigners":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrustedSignerDoesNotExist":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrustedSigners":{ "type":"structure", "required":[ "Enabled", "Quantity" ], "members":{ "Enabled":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"AwsAccountNumberList"} } }, "UpdateCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":[ "CloudFrontOriginAccessIdentityConfig", "Id" ], "members":{ "CloudFrontOriginAccessIdentityConfig":{ "shape":"CloudFrontOriginAccessIdentityConfig", "locationName":"CloudFrontOriginAccessIdentityConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-09-17/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "UpdateCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "UpdateDistributionRequest":{ "type":"structure", "required":[ "DistributionConfig", "Id" ], "members":{ "DistributionConfig":{ "shape":"DistributionConfig", "locationName":"DistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-09-17/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"DistributionConfig" }, "UpdateDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "UpdateStreamingDistributionRequest":{ "type":"structure", "required":[ "StreamingDistributionConfig", "Id" ], "members":{ "StreamingDistributionConfig":{ "shape":"StreamingDistributionConfig", "locationName":"StreamingDistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2015-09-17/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"StreamingDistributionConfig" }, "UpdateStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "ViewerCertificate":{ "type":"structure", "members":{ "Certificate":{"shape":"string"}, "CertificateSource":{"shape":"CertificateSource"}, "SSLSupportMethod":{"shape":"SSLSupportMethod"}, "MinimumProtocolVersion":{"shape":"MinimumProtocolVersion"}, "IAMCertificateId":{ "shape":"string", "deprecated":true }, "CloudFrontDefaultCertificate":{ "shape":"boolean", "deprecated":true } } }, "ViewerProtocolPolicy":{ "type":"string", "enum":[ "allow-all", "https-only", "redirect-to-https" ] }, "boolean":{"type":"boolean"}, "integer":{"type":"integer"}, "long":{"type":"long"}, "string":{"type":"string"}, "timestamp":{"type":"timestamp"} } } aws-sdk-go-1.4.22/models/apis/cloudfront/2015-09-17/docs-2.json000066400000000000000000002534151300374646400232170ustar00rootroot00000000000000{ "version": "2.0", "service": null, "operations": { "CreateCloudFrontOriginAccessIdentity": "Create a new origin access identity.", "CreateDistribution": "Create a new distribution.", "CreateInvalidation": "Create a new invalidation.", "CreateStreamingDistribution": "Create a new streaming distribution.", "DeleteCloudFrontOriginAccessIdentity": "Delete an origin access identity.", "DeleteDistribution": "Delete a distribution.", "DeleteStreamingDistribution": "Delete a streaming distribution.", "GetCloudFrontOriginAccessIdentity": "Get the information about an origin access identity.", "GetCloudFrontOriginAccessIdentityConfig": "Get the configuration information about an origin access identity.", "GetDistribution": "Get the information about a distribution.", "GetDistributionConfig": "Get the configuration information about a distribution.", "GetInvalidation": "Get the information about an invalidation.", "GetStreamingDistribution": "Get the information about a streaming distribution.", "GetStreamingDistributionConfig": "Get the configuration information about a streaming distribution.", "ListCloudFrontOriginAccessIdentities": "List origin access identities.", "ListDistributions": "List distributions.", "ListDistributionsByWebACLId": "List the distributions that are associated with a specified AWS WAF web ACL.", "ListInvalidations": "List invalidation batches.", "ListStreamingDistributions": "List streaming distributions.", "UpdateCloudFrontOriginAccessIdentity": "Update an origin access identity.", "UpdateDistribution": "Update a distribution.", "UpdateStreamingDistribution": "Update a streaming distribution." }, "shapes": { "AccessDenied": { "base": "Access denied.", "refs": { } }, "ActiveTrustedSigners": { "base": "A complex type that lists the AWS accounts, if any, that you included in the TrustedSigners complex type for the default cache behavior or for any of the other cache behaviors for this distribution. These are accounts that you want to allow to create signed URLs for private content.", "refs": { "Distribution$ActiveTrustedSigners": "CloudFront automatically adds this element to the response only if you've set up the distribution to serve private content with signed URLs. The element lists the key pair IDs that CloudFront is aware of for each trusted signer. The Signer child element lists the AWS account number of the trusted signer (or an empty Self element if the signer is you). The Signer element also includes the IDs of any active key pairs associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create working signed URLs.", "StreamingDistribution$ActiveTrustedSigners": "CloudFront automatically adds this element to the response only if you've set up the distribution to serve private content with signed URLs. The element lists the key pair IDs that CloudFront is aware of for each trusted signer. The Signer child element lists the AWS account number of the trusted signer (or an empty Self element if the signer is you). The Signer element also includes the IDs of any active key pairs associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create working signed URLs." } }, "AliasList": { "base": null, "refs": { "Aliases$Items": "Optional: A complex type that contains CNAME elements, if any, for this distribution. If Quantity is 0, you can omit Items." } }, "Aliases": { "base": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "refs": { "DistributionConfig$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "DistributionSummary$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "StreamingDistributionConfig$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution.", "StreamingDistributionSummary$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution." } }, "AllowedMethods": { "base": "A complex type that controls which HTTP methods CloudFront processes and forwards to your Amazon S3 bucket or your custom origin. There are three choices: - CloudFront forwards only GET and HEAD requests. - CloudFront forwards only GET, HEAD and OPTIONS requests. - CloudFront forwards GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests. If you pick the third choice, you may need to restrict access to your Amazon S3 bucket or to your custom origin so users can't perform operations that you don't want them to. For example, you may not want users to have permission to delete objects from your origin.", "refs": { "CacheBehavior$AllowedMethods": null, "DefaultCacheBehavior$AllowedMethods": null } }, "AwsAccountNumberList": { "base": null, "refs": { "TrustedSigners$Items": "Optional: A complex type that contains trusted signers for this cache behavior. If Quantity is 0, you can omit Items." } }, "BatchTooLarge": { "base": null, "refs": { } }, "CNAMEAlreadyExists": { "base": null, "refs": { } }, "CacheBehavior": { "base": "A complex type that describes how CloudFront processes requests. You can create up to 10 cache behaviors.You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to distribute objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin will never be used. If you don't want to specify any cache behaviors, include only an empty CacheBehaviors element. Don't include an empty CacheBehavior element, or CloudFront returns a MalformedXML error. To delete all cache behaviors in an existing distribution, update the distribution configuration and include only an empty CacheBehaviors element. To add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution.", "refs": { "CacheBehaviorList$member": null } }, "CacheBehaviorList": { "base": null, "refs": { "CacheBehaviors$Items": "Optional: A complex type that contains cache behaviors for this distribution. If Quantity is 0, you can omit Items." } }, "CacheBehaviors": { "base": "A complex type that contains zero or more CacheBehavior elements.", "refs": { "DistributionConfig$CacheBehaviors": "A complex type that contains zero or more CacheBehavior elements.", "DistributionSummary$CacheBehaviors": "A complex type that contains zero or more CacheBehavior elements." } }, "CachedMethods": { "base": "A complex type that controls whether CloudFront caches the response to requests using the specified HTTP methods. There are two choices: - CloudFront caches responses to GET and HEAD requests. - CloudFront caches responses to GET, HEAD, and OPTIONS requests. If you pick the second choice for your S3 Origin, you may need to forward Access-Control-Request-Method, Access-Control-Request-Headers and Origin headers for the responses to be cached correctly.", "refs": { "AllowedMethods$CachedMethods": null } }, "CertificateSource": { "base": null, "refs": { "ViewerCertificate$CertificateSource": "If you want viewers to use HTTPS to request your objects and you're using the CloudFront domain name of your distribution in your object URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), set to \"cloudfront\". If you want viewers to use HTTPS to request your objects and you're using an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), set to \"iam\", and update the Certificate field with the IAM certificate identifier of the custom viewer certificate for this distribution." } }, "CloudFrontOriginAccessIdentity": { "base": "CloudFront origin access identity.", "refs": { "CreateCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information.", "GetCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information.", "UpdateCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information." } }, "CloudFrontOriginAccessIdentityAlreadyExists": { "base": "If the CallerReference is a value you already sent in a previous request to create an identity but the content of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists error.", "refs": { } }, "CloudFrontOriginAccessIdentityConfig": { "base": "Origin access identity configuration.", "refs": { "CloudFrontOriginAccessIdentity$CloudFrontOriginAccessIdentityConfig": "The current configuration information for the identity.", "CreateCloudFrontOriginAccessIdentityRequest$CloudFrontOriginAccessIdentityConfig": "The origin access identity's configuration information.", "GetCloudFrontOriginAccessIdentityConfigResult$CloudFrontOriginAccessIdentityConfig": "The origin access identity's configuration information.", "UpdateCloudFrontOriginAccessIdentityRequest$CloudFrontOriginAccessIdentityConfig": "The identity's configuration information." } }, "CloudFrontOriginAccessIdentityInUse": { "base": null, "refs": { } }, "CloudFrontOriginAccessIdentityList": { "base": "The CloudFrontOriginAccessIdentityList type.", "refs": { "ListCloudFrontOriginAccessIdentitiesResult$CloudFrontOriginAccessIdentityList": "The CloudFrontOriginAccessIdentityList type." } }, "CloudFrontOriginAccessIdentitySummary": { "base": "Summary of the information about a CloudFront origin access identity.", "refs": { "CloudFrontOriginAccessIdentitySummaryList$member": null } }, "CloudFrontOriginAccessIdentitySummaryList": { "base": null, "refs": { "CloudFrontOriginAccessIdentityList$Items": "A complex type that contains one CloudFrontOriginAccessIdentitySummary element for each origin access identity that was created by the current AWS account." } }, "CookieNameList": { "base": null, "refs": { "CookieNames$Items": "Optional: A complex type that contains whitelisted cookies for this cache behavior. If Quantity is 0, you can omit Items." } }, "CookieNames": { "base": "A complex type that specifies the whitelisted cookies, if any, that you want CloudFront to forward to your origin that is associated with this cache behavior.", "refs": { "CookiePreference$WhitelistedNames": "A complex type that specifies the whitelisted cookies, if any, that you want CloudFront to forward to your origin that is associated with this cache behavior." } }, "CookiePreference": { "base": "A complex type that specifies the cookie preferences associated with this cache behavior.", "refs": { "ForwardedValues$Cookies": "A complex type that specifies how CloudFront handles cookies." } }, "CreateCloudFrontOriginAccessIdentityRequest": { "base": "The request to create a new origin access identity.", "refs": { } }, "CreateCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateDistributionRequest": { "base": "The request to create a new distribution.", "refs": { } }, "CreateDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateInvalidationRequest": { "base": "The request to create an invalidation.", "refs": { } }, "CreateInvalidationResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateStreamingDistributionRequest": { "base": "The request to create a new streaming distribution.", "refs": { } }, "CreateStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CustomErrorResponse": { "base": "A complex type that describes how you'd prefer CloudFront to respond to requests that result in either a 4xx or 5xx response. You can control whether a custom error page should be displayed, what the desired response code should be for this error page and how long should the error response be cached by CloudFront. If you don't want to specify any custom error responses, include only an empty CustomErrorResponses element. To delete all custom error responses in an existing distribution, update the distribution configuration and include only an empty CustomErrorResponses element. To add, change, or remove one or more custom error responses, update the distribution configuration and specify all of the custom error responses that you want to include in the updated distribution.", "refs": { "CustomErrorResponseList$member": null } }, "CustomErrorResponseList": { "base": null, "refs": { "CustomErrorResponses$Items": "Optional: A complex type that contains custom error responses for this distribution. If Quantity is 0, you can omit Items." } }, "CustomErrorResponses": { "base": "A complex type that contains zero or more CustomErrorResponse elements.", "refs": { "DistributionConfig$CustomErrorResponses": "A complex type that contains zero or more CustomErrorResponse elements.", "DistributionSummary$CustomErrorResponses": "A complex type that contains zero or more CustomErrorResponses elements." } }, "CustomOriginConfig": { "base": "A customer origin.", "refs": { "Origin$CustomOriginConfig": "A complex type that contains information about a custom origin. If the origin is an Amazon S3 bucket, use the S3OriginConfig element instead." } }, "DefaultCacheBehavior": { "base": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior.", "refs": { "DistributionConfig$DefaultCacheBehavior": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior.", "DistributionSummary$DefaultCacheBehavior": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior." } }, "DeleteCloudFrontOriginAccessIdentityRequest": { "base": "The request to delete a origin access identity.", "refs": { } }, "DeleteDistributionRequest": { "base": "The request to delete a distribution.", "refs": { } }, "DeleteStreamingDistributionRequest": { "base": "The request to delete a streaming distribution.", "refs": { } }, "Distribution": { "base": "A distribution.", "refs": { "CreateDistributionResult$Distribution": "The distribution's information.", "GetDistributionResult$Distribution": "The distribution's information.", "UpdateDistributionResult$Distribution": "The distribution's information." } }, "DistributionAlreadyExists": { "base": "The caller reference you attempted to create the distribution with is associated with another distribution.", "refs": { } }, "DistributionConfig": { "base": "A distribution Configuration.", "refs": { "CreateDistributionRequest$DistributionConfig": "The distribution's configuration information.", "Distribution$DistributionConfig": "The current configuration information for the distribution.", "GetDistributionConfigResult$DistributionConfig": "The distribution's configuration information.", "UpdateDistributionRequest$DistributionConfig": "The distribution's configuration information." } }, "DistributionList": { "base": "A distribution list.", "refs": { "ListDistributionsByWebACLIdResult$DistributionList": "The DistributionList type.", "ListDistributionsResult$DistributionList": "The DistributionList type." } }, "DistributionNotDisabled": { "base": null, "refs": { } }, "DistributionSummary": { "base": "A summary of the information for an Amazon CloudFront distribution.", "refs": { "DistributionSummaryList$member": null } }, "DistributionSummaryList": { "base": null, "refs": { "DistributionList$Items": "A complex type that contains one DistributionSummary element for each distribution that was created by the current AWS account." } }, "ForwardedValues": { "base": "A complex type that specifies how CloudFront handles query strings, cookies and headers.", "refs": { "CacheBehavior$ForwardedValues": "A complex type that specifies how CloudFront handles query strings, cookies and headers.", "DefaultCacheBehavior$ForwardedValues": "A complex type that specifies how CloudFront handles query strings, cookies and headers." } }, "GeoRestriction": { "base": "A complex type that controls the countries in which your content is distributed. For more information about geo restriction, go to Customizing Error Responses in the Amazon CloudFront Developer Guide. CloudFront determines the location of your users using MaxMind GeoIP databases. For information about the accuracy of these databases, see How accurate are your GeoIP databases? on the MaxMind website.", "refs": { "Restrictions$GeoRestriction": null } }, "GeoRestrictionType": { "base": null, "refs": { "GeoRestriction$RestrictionType": "The method that you want to use to restrict distribution of your content by country: - none: No geo restriction is enabled, meaning access to content is not restricted by client geo location. - blacklist: The Location elements specify the countries in which you do not want CloudFront to distribute your content. - whitelist: The Location elements specify the countries in which you want CloudFront to distribute your content." } }, "GetCloudFrontOriginAccessIdentityConfigRequest": { "base": "The request to get an origin access identity's configuration.", "refs": { } }, "GetCloudFrontOriginAccessIdentityConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetCloudFrontOriginAccessIdentityRequest": { "base": "The request to get an origin access identity's information.", "refs": { } }, "GetCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetDistributionConfigRequest": { "base": "The request to get a distribution configuration.", "refs": { } }, "GetDistributionConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetDistributionRequest": { "base": "The request to get a distribution's information.", "refs": { } }, "GetDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetInvalidationRequest": { "base": "The request to get an invalidation's information.", "refs": { } }, "GetInvalidationResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetStreamingDistributionConfigRequest": { "base": "To request to get a streaming distribution configuration.", "refs": { } }, "GetStreamingDistributionConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetStreamingDistributionRequest": { "base": "The request to get a streaming distribution's information.", "refs": { } }, "GetStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "HeaderList": { "base": null, "refs": { "Headers$Items": "Optional: A complex type that contains a Name element for each header that you want CloudFront to forward to the origin and to vary on for this cache behavior. If Quantity is 0, omit Items." } }, "Headers": { "base": "A complex type that specifies the headers that you want CloudFront to forward to the origin for this cache behavior. For the headers that you specify, CloudFront also caches separate versions of a given object based on the header values in viewer requests; this is known as varying on headers. For example, suppose viewer requests for logo.jpg contain a custom Product header that has a value of either Acme or Apex, and you configure CloudFront to vary on the Product header. CloudFront forwards the Product header to the origin and caches the response from the origin once for each header value.", "refs": { "ForwardedValues$Headers": "A complex type that specifies the Headers, if any, that you want CloudFront to vary upon for this cache behavior." } }, "IllegalUpdate": { "base": "Origin and CallerReference cannot be updated.", "refs": { } }, "InconsistentQuantities": { "base": "The value of Quantity and the size of Items do not match.", "refs": { } }, "InvalidArgument": { "base": "The argument is invalid.", "refs": { } }, "InvalidDefaultRootObject": { "base": "The default root object file name is too big or contains an invalid character.", "refs": { } }, "InvalidErrorCode": { "base": null, "refs": { } }, "InvalidForwardCookies": { "base": "Your request contains forward cookies option which doesn't match with the expectation for the whitelisted list of cookie names. Either list of cookie names has been specified when not allowed or list of cookie names is missing when expected.", "refs": { } }, "InvalidGeoRestrictionParameter": { "base": null, "refs": { } }, "InvalidHeadersForS3Origin": { "base": null, "refs": { } }, "InvalidIfMatchVersion": { "base": "The If-Match version is missing or not valid for the distribution.", "refs": { } }, "InvalidLocationCode": { "base": null, "refs": { } }, "InvalidMinimumProtocolVersion": { "base": null, "refs": { } }, "InvalidOrigin": { "base": "The Amazon S3 origin server specified does not refer to a valid Amazon S3 bucket.", "refs": { } }, "InvalidOriginAccessIdentity": { "base": "The origin access identity is not valid or doesn't exist.", "refs": { } }, "InvalidProtocolSettings": { "base": "You cannot specify SSLv3 as the minimum protocol version if you only want to support only clients that Support Server Name Indication (SNI).", "refs": { } }, "InvalidRelativePath": { "base": "The relative path is too big, is not URL-encoded, or does not begin with a slash (/).", "refs": { } }, "InvalidRequiredProtocol": { "base": "This operation requires the HTTPS protocol. Ensure that you specify the HTTPS protocol in your request, or omit the RequiredProtocols element from your distribution configuration.", "refs": { } }, "InvalidResponseCode": { "base": null, "refs": { } }, "InvalidTTLOrder": { "base": null, "refs": { } }, "InvalidViewerCertificate": { "base": null, "refs": { } }, "InvalidWebACLId": { "base": null, "refs": { } }, "Invalidation": { "base": "An invalidation.", "refs": { "CreateInvalidationResult$Invalidation": "The invalidation's information.", "GetInvalidationResult$Invalidation": "The invalidation's information." } }, "InvalidationBatch": { "base": "An invalidation batch.", "refs": { "CreateInvalidationRequest$InvalidationBatch": "The batch information for the invalidation.", "Invalidation$InvalidationBatch": "The current invalidation information for the batch request." } }, "InvalidationList": { "base": "An invalidation list.", "refs": { "ListInvalidationsResult$InvalidationList": "Information about invalidation batches." } }, "InvalidationSummary": { "base": "Summary of an invalidation request.", "refs": { "InvalidationSummaryList$member": null } }, "InvalidationSummaryList": { "base": null, "refs": { "InvalidationList$Items": "A complex type that contains one InvalidationSummary element for each invalidation batch that was created by the current AWS account." } }, "ItemSelection": { "base": null, "refs": { "CookiePreference$Forward": "Use this element to specify whether you want CloudFront to forward cookies to the origin that is associated with this cache behavior. You can specify all, none or whitelist. If you choose All, CloudFront forwards all cookies regardless of how many your application uses." } }, "KeyPairIdList": { "base": null, "refs": { "KeyPairIds$Items": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber." } }, "KeyPairIds": { "base": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber.", "refs": { "Signer$KeyPairIds": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber." } }, "ListCloudFrontOriginAccessIdentitiesRequest": { "base": "The request to list origin access identities.", "refs": { } }, "ListCloudFrontOriginAccessIdentitiesResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListDistributionsByWebACLIdRequest": { "base": "The request to list distributions that are associated with a specified AWS WAF web ACL.", "refs": { } }, "ListDistributionsByWebACLIdResult": { "base": "The response to a request to list the distributions that are associated with a specified AWS WAF web ACL.", "refs": { } }, "ListDistributionsRequest": { "base": "The request to list your distributions.", "refs": { } }, "ListDistributionsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListInvalidationsRequest": { "base": "The request to list invalidations.", "refs": { } }, "ListInvalidationsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListStreamingDistributionsRequest": { "base": "The request to list your streaming distributions.", "refs": { } }, "ListStreamingDistributionsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "LocationList": { "base": null, "refs": { "GeoRestriction$Items": "A complex type that contains a Location element for each country in which you want CloudFront either to distribute your content (whitelist) or not distribute your content (blacklist). The Location element is a two-letter, uppercase country code for a country that you want to include in your blacklist or whitelist. Include one Location element for each country. CloudFront and MaxMind both use ISO 3166 country codes. For the current list of countries and the corresponding codes, see ISO 3166-1-alpha-2 code on the International Organization for Standardization website. You can also refer to the country list in the CloudFront console, which includes both country names and codes." } }, "LoggingConfig": { "base": "A complex type that controls whether access logs are written for the distribution.", "refs": { "DistributionConfig$Logging": "A complex type that controls whether access logs are written for the distribution." } }, "Method": { "base": null, "refs": { "MethodsList$member": null } }, "MethodsList": { "base": null, "refs": { "AllowedMethods$Items": "A complex type that contains the HTTP methods that you want CloudFront to process and forward to your origin.", "CachedMethods$Items": "A complex type that contains the HTTP methods that you want CloudFront to cache responses to." } }, "MinimumProtocolVersion": { "base": null, "refs": { "ViewerCertificate$MinimumProtocolVersion": "Specify the minimum version of the SSL protocol that you want CloudFront to use, SSLv3 or TLSv1, for HTTPS connections. CloudFront will serve your objects only to browsers or devices that support at least the SSL version that you specify. The TLSv1 protocol is more secure, so we recommend that you specify SSLv3 only if your users are using browsers or devices that don't support TLSv1. If you're using a custom certificate (if you specify a value for IAMCertificateId) and if you're using dedicated IP (if you specify vip for SSLSupportMethod), you can choose SSLv3 or TLSv1 as the MinimumProtocolVersion. If you're using a custom certificate (if you specify a value for IAMCertificateId) and if you're using SNI (if you specify sni-only for SSLSupportMethod), you must specify TLSv1 for MinimumProtocolVersion." } }, "MissingBody": { "base": "This operation requires a body. Ensure that the body is present and the Content-Type header is set.", "refs": { } }, "NoSuchCloudFrontOriginAccessIdentity": { "base": "The specified origin access identity does not exist.", "refs": { } }, "NoSuchDistribution": { "base": "The specified distribution does not exist.", "refs": { } }, "NoSuchInvalidation": { "base": "The specified invalidation does not exist.", "refs": { } }, "NoSuchOrigin": { "base": "No origin exists with the specified Origin Id.", "refs": { } }, "NoSuchStreamingDistribution": { "base": "The specified streaming distribution does not exist.", "refs": { } }, "Origin": { "base": "A complex type that describes the Amazon S3 bucket or the HTTP server (for example, a web server) from which CloudFront gets your files.You must create at least one origin.", "refs": { "OriginList$member": null } }, "OriginList": { "base": null, "refs": { "Origins$Items": "A complex type that contains origins for this distribution." } }, "OriginProtocolPolicy": { "base": null, "refs": { "CustomOriginConfig$OriginProtocolPolicy": "The origin protocol policy to apply to your origin." } }, "Origins": { "base": "A complex type that contains information about origins for this distribution.", "refs": { "DistributionConfig$Origins": "A complex type that contains information about origins for this distribution.", "DistributionSummary$Origins": "A complex type that contains information about origins for this distribution." } }, "PathList": { "base": null, "refs": { "Paths$Items": "A complex type that contains a list of the objects that you want to invalidate." } }, "Paths": { "base": "A complex type that contains information about the objects that you want to invalidate.", "refs": { "InvalidationBatch$Paths": "The path of the object to invalidate. The path is relative to the distribution and must begin with a slash (/). You must enclose each invalidation object with the Path element tags. If the path includes non-ASCII characters or unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters. Do not URL encode any other characters in the path, or CloudFront will not invalidate the old version of the updated object." } }, "PreconditionFailed": { "base": "The precondition given in one or more of the request-header fields evaluated to false.", "refs": { } }, "PriceClass": { "base": null, "refs": { "DistributionConfig$PriceClass": "A complex type that contains information about price class for this distribution.", "DistributionSummary$PriceClass": null, "StreamingDistributionConfig$PriceClass": "A complex type that contains information about price class for this streaming distribution.", "StreamingDistributionSummary$PriceClass": null } }, "Restrictions": { "base": "A complex type that identifies ways in which you want to restrict distribution of your content.", "refs": { "DistributionConfig$Restrictions": null, "DistributionSummary$Restrictions": null } }, "S3Origin": { "base": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.", "refs": { "StreamingDistributionConfig$S3Origin": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.", "StreamingDistributionSummary$S3Origin": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution." } }, "S3OriginConfig": { "base": "A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead.", "refs": { "Origin$S3OriginConfig": "A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead." } }, "SSLSupportMethod": { "base": null, "refs": { "ViewerCertificate$SSLSupportMethod": "If you specify a value for IAMCertificateId, you must also specify how you want CloudFront to serve HTTPS requests. Valid values are vip and sni-only. If you specify vip, CloudFront uses dedicated IP addresses for your content and can respond to HTTPS requests from any viewer. However, you must request permission to use this feature, and you incur additional monthly charges. If you specify sni-only, CloudFront can only respond to HTTPS requests from viewers that support Server Name Indication (SNI). All modern browsers support SNI, but some browsers still in use don't support SNI. Do not specify a value for SSLSupportMethod if you specified true for CloudFrontDefaultCertificate." } }, "Signer": { "base": "A complex type that lists the AWS accounts that were included in the TrustedSigners complex type, as well as their active CloudFront key pair IDs, if any.", "refs": { "SignerList$member": null } }, "SignerList": { "base": null, "refs": { "ActiveTrustedSigners$Items": "A complex type that contains one Signer complex type for each unique trusted signer that is specified in the TrustedSigners complex type, including trusted signers in the default cache behavior and in all of the other cache behaviors." } }, "StreamingDistribution": { "base": "A streaming distribution.", "refs": { "CreateStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information.", "GetStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information.", "UpdateStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information." } }, "StreamingDistributionAlreadyExists": { "base": null, "refs": { } }, "StreamingDistributionConfig": { "base": "The configuration for the streaming distribution.", "refs": { "CreateStreamingDistributionRequest$StreamingDistributionConfig": "The streaming distribution's configuration information.", "GetStreamingDistributionConfigResult$StreamingDistributionConfig": "The streaming distribution's configuration information.", "StreamingDistribution$StreamingDistributionConfig": "The current configuration information for the streaming distribution.", "UpdateStreamingDistributionRequest$StreamingDistributionConfig": "The streaming distribution's configuration information." } }, "StreamingDistributionList": { "base": "A streaming distribution list.", "refs": { "ListStreamingDistributionsResult$StreamingDistributionList": "The StreamingDistributionList type." } }, "StreamingDistributionNotDisabled": { "base": null, "refs": { } }, "StreamingDistributionSummary": { "base": "A summary of the information for an Amazon CloudFront streaming distribution.", "refs": { "StreamingDistributionSummaryList$member": null } }, "StreamingDistributionSummaryList": { "base": null, "refs": { "StreamingDistributionList$Items": "A complex type that contains one StreamingDistributionSummary element for each distribution that was created by the current AWS account." } }, "StreamingLoggingConfig": { "base": "A complex type that controls whether access logs are written for this streaming distribution.", "refs": { "StreamingDistributionConfig$Logging": "A complex type that controls whether access logs are written for the streaming distribution." } }, "TooManyCacheBehaviors": { "base": "You cannot create anymore cache behaviors for the distribution.", "refs": { } }, "TooManyCertificates": { "base": "You cannot create anymore custom ssl certificates.", "refs": { } }, "TooManyCloudFrontOriginAccessIdentities": { "base": "Processing your request would cause you to exceed the maximum number of origin access identities allowed.", "refs": { } }, "TooManyCookieNamesInWhiteList": { "base": "Your request contains more cookie names in the whitelist than are allowed per cache behavior.", "refs": { } }, "TooManyDistributionCNAMEs": { "base": "Your request contains more CNAMEs than are allowed per distribution.", "refs": { } }, "TooManyDistributions": { "base": "Processing your request would cause you to exceed the maximum number of distributions allowed.", "refs": { } }, "TooManyHeadersInForwardedValues": { "base": null, "refs": { } }, "TooManyInvalidationsInProgress": { "base": "You have exceeded the maximum number of allowable InProgress invalidation batch requests, or invalidation objects.", "refs": { } }, "TooManyOrigins": { "base": "You cannot create anymore origins for the distribution.", "refs": { } }, "TooManyStreamingDistributionCNAMEs": { "base": null, "refs": { } }, "TooManyStreamingDistributions": { "base": "Processing your request would cause you to exceed the maximum number of streaming distributions allowed.", "refs": { } }, "TooManyTrustedSigners": { "base": "Your request contains more trusted signers than are allowed per distribution.", "refs": { } }, "TrustedSignerDoesNotExist": { "base": "One or more of your trusted signers do not exist.", "refs": { } }, "TrustedSigners": { "base": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "refs": { "CacheBehavior$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "DefaultCacheBehavior$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "StreamingDistributionConfig$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "StreamingDistributionSummary$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution." } }, "UpdateCloudFrontOriginAccessIdentityRequest": { "base": "The request to update an origin access identity.", "refs": { } }, "UpdateCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "UpdateDistributionRequest": { "base": "The request to update a distribution.", "refs": { } }, "UpdateDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "UpdateStreamingDistributionRequest": { "base": "The request to update a streaming distribution.", "refs": { } }, "UpdateStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ViewerCertificate": { "base": "A complex type that contains information about viewer certificates for this distribution.", "refs": { "DistributionConfig$ViewerCertificate": null, "DistributionSummary$ViewerCertificate": null } }, "ViewerProtocolPolicy": { "base": null, "refs": { "CacheBehavior$ViewerProtocolPolicy": "Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. If you want CloudFront to allow end users to use any available protocol, specify allow-all. If you want CloudFront to require HTTPS, specify https. If you want CloudFront to respond to an HTTP request with an HTTP status code of 301 (Moved Permanently) and the HTTPS URL, specify redirect-to-https. The viewer then resubmits the request using the HTTPS URL.", "DefaultCacheBehavior$ViewerProtocolPolicy": "Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. If you want CloudFront to allow end users to use any available protocol, specify allow-all. If you want CloudFront to require HTTPS, specify https. If you want CloudFront to respond to an HTTP request with an HTTP status code of 301 (Moved Permanently) and the HTTPS URL, specify redirect-to-https. The viewer then resubmits the request using the HTTPS URL." } }, "boolean": { "base": null, "refs": { "ActiveTrustedSigners$Enabled": "Each active trusted signer.", "CacheBehavior$SmoothStreaming": "Indicates whether you want to distribute media files in Microsoft Smooth Streaming format using the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "CacheBehavior$Compress": "Whether you want CloudFront to automatically compress content for web requests that include Accept-Encoding: gzip in the request header. If so, specify true; if not, specify false. CloudFront compresses files larger than 1000 bytes and less than 1 megabyte for both Amazon S3 and custom origins. When a CloudFront edge location is unusually busy, some files might not be compressed. The value of the Content-Type header must be on the list of file types that CloudFront will compress. For the current list, see Serving Compressed Content in the Amazon CloudFront Developer Guide. If you configure CloudFront to compress content, CloudFront removes the ETag response header from the objects that it compresses. The ETag header indicates that the version in a CloudFront edge cache is identical to the version on the origin server, but after compression the two versions are no longer identical. As a result, for compressed objects, CloudFront can't use the ETag header to determine whether an expired object in the CloudFront edge cache is still the latest version.", "CloudFrontOriginAccessIdentityList$IsTruncated": "A flag that indicates whether more origin access identities remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more items in the list.", "DefaultCacheBehavior$SmoothStreaming": "Indicates whether you want to distribute media files in Microsoft Smooth Streaming format using the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "DefaultCacheBehavior$Compress": "Whether you want CloudFront to automatically compress content for web requests that include Accept-Encoding: gzip in the request header. If so, specify true; if not, specify false. CloudFront compresses files larger than 1000 bytes and less than 1 megabyte for both Amazon S3 and custom origins. When a CloudFront edge location is unusually busy, some files might not be compressed. The value of the Content-Type header must be on the list of file types that CloudFront will compress. For the current list, see Serving Compressed Content in the Amazon CloudFront Developer Guide. If you configure CloudFront to compress content, CloudFront removes the ETag response header from the objects that it compresses. The ETag header indicates that the version in a CloudFront edge cache is identical to the version on the origin server, but after compression the two versions are no longer identical. As a result, for compressed objects, CloudFront can't use the ETag header to determine whether an expired object in the CloudFront edge cache is still the latest version.", "DistributionConfig$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "DistributionList$IsTruncated": "A flag that indicates whether more distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.", "DistributionSummary$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "ForwardedValues$QueryString": "Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "InvalidationList$IsTruncated": "A flag that indicates whether more invalidation batch requests remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more invalidation batches in the list.", "LoggingConfig$Enabled": "Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you do not want to enable logging when you create a distribution or if you want to disable logging for an existing distribution, specify false for Enabled, and specify empty Bucket and Prefix elements. If you specify false for Enabled but you specify values for Bucket, prefix and IncludeCookies, the values are automatically deleted.", "LoggingConfig$IncludeCookies": "Specifies whether you want CloudFront to include cookies in access logs, specify true for IncludeCookies. If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you do not want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify false for IncludeCookies.", "StreamingDistributionConfig$Enabled": "Whether the streaming distribution is enabled to accept end user requests for content.", "StreamingDistributionList$IsTruncated": "A flag that indicates whether more streaming distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.", "StreamingDistributionSummary$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "StreamingLoggingConfig$Enabled": "Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you do not want to enable logging when you create a streaming distribution or if you want to disable logging for an existing streaming distribution, specify false for Enabled, and specify empty Bucket and Prefix elements. If you specify false for Enabled but you specify values for Bucket and Prefix, the values are automatically deleted.", "TrustedSigners$Enabled": "Specifies whether you want to require end users to use signed URLs to access the files specified by PathPattern and TargetOriginId.", "ViewerCertificate$CloudFrontDefaultCertificate": "Note: this field is deprecated. Please use \"cloudfront\" as CertificateSource and omit specifying a Certificate. If you want viewers to use HTTPS to request your objects and you're using the CloudFront domain name of your distribution in your object URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), set to true. Omit this value if you are setting an IAMCertificateId." } }, "integer": { "base": null, "refs": { "ActiveTrustedSigners$Quantity": "The number of unique trusted signers included in all cache behaviors. For example, if three cache behaviors all list the same three AWS accounts, the value of Quantity for ActiveTrustedSigners will be 3.", "Aliases$Quantity": "The number of CNAMEs, if any, for this distribution.", "AllowedMethods$Quantity": "The number of HTTP methods that you want CloudFront to forward to your origin. Valid values are 2 (for GET and HEAD requests), 3 (for GET, HEAD and OPTIONS requests) and 7 (for GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests).", "CacheBehaviors$Quantity": "The number of cache behaviors for this distribution.", "CachedMethods$Quantity": "The number of HTTP methods for which you want CloudFront to cache responses. Valid values are 2 (for caching responses to GET and HEAD requests) and 3 (for caching responses to GET, HEAD, and OPTIONS requests).", "CloudFrontOriginAccessIdentityList$MaxItems": "The value you provided for the MaxItems request parameter.", "CloudFrontOriginAccessIdentityList$Quantity": "The number of CloudFront origin access identities that were created by the current AWS account.", "CookieNames$Quantity": "The number of whitelisted cookies for this cache behavior.", "CustomErrorResponse$ErrorCode": "The 4xx or 5xx HTTP status code that you want to customize. For a list of HTTP status codes that you can customize, see CloudFront documentation.", "CustomErrorResponses$Quantity": "The number of custom error responses for this distribution.", "CustomOriginConfig$HTTPPort": "The HTTP port the custom origin listens on.", "CustomOriginConfig$HTTPSPort": "The HTTPS port the custom origin listens on.", "Distribution$InProgressInvalidationBatches": "The number of invalidation batches currently in progress.", "DistributionList$MaxItems": "The value you provided for the MaxItems request parameter.", "DistributionList$Quantity": "The number of distributions that were created by the current AWS account.", "GeoRestriction$Quantity": "When geo restriction is enabled, this is the number of countries in your whitelist or blacklist. Otherwise, when it is not enabled, Quantity is 0, and you can omit Items.", "Headers$Quantity": "The number of different headers that you want CloudFront to forward to the origin and to vary on for this cache behavior. The maximum number of headers that you can specify by name is 10. If you want CloudFront to forward all headers to the origin and vary on all of them, specify 1 for Quantity and * for Name. If you don't want CloudFront to forward any additional headers to the origin or to vary on any headers, specify 0 for Quantity and omit Items.", "InvalidationList$MaxItems": "The value you provided for the MaxItems request parameter.", "InvalidationList$Quantity": "The number of invalidation batches that were created by the current AWS account.", "KeyPairIds$Quantity": "The number of active CloudFront key pairs for AwsAccountNumber.", "Origins$Quantity": "The number of origins for this distribution.", "Paths$Quantity": "The number of objects that you want to invalidate.", "StreamingDistributionList$MaxItems": "The value you provided for the MaxItems request parameter.", "StreamingDistributionList$Quantity": "The number of streaming distributions that were created by the current AWS account.", "TrustedSigners$Quantity": "The number of trusted signers for this cache behavior." } }, "long": { "base": null, "refs": { "CacheBehavior$MinTTL": "The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CacheBehavior$DefaultTTL": "If you don't configure your origin to add a Cache-Control max-age directive or an Expires header, DefaultTTL is the default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CacheBehavior$MaxTTL": "The maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CustomErrorResponse$ErrorCachingMinTTL": "The minimum amount of time you want HTTP error codes to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. You can specify a value from 0 to 31,536,000.", "DefaultCacheBehavior$MinTTL": "The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "DefaultCacheBehavior$DefaultTTL": "If you don't configure your origin to add a Cache-Control max-age directive or an Expires header, DefaultTTL is the default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "DefaultCacheBehavior$MaxTTL": "The maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years)." } }, "string": { "base": null, "refs": { "AccessDenied$Message": null, "AliasList$member": null, "AwsAccountNumberList$member": null, "BatchTooLarge$Message": null, "CNAMEAlreadyExists$Message": null, "CacheBehavior$PathPattern": "The pattern (for example, images/*.jpg) that specifies which requests you want this cache behavior to apply to. When CloudFront receives an end-user request, the requested path is compared with path patterns in the order in which cache behaviors are listed in the distribution. The path pattern for the default cache behavior is * and cannot be changed. If the request for an object does not match the path pattern for any cache behaviors, CloudFront applies the behavior in the default cache behavior.", "CacheBehavior$TargetOriginId": "The value of ID for the origin that you want CloudFront to route requests to when a request matches the path pattern either for a cache behavior or for the default cache behavior.", "CloudFrontOriginAccessIdentity$Id": "The ID for the origin access identity. For example: E74FTE3AJFJ256A.", "CloudFrontOriginAccessIdentity$S3CanonicalUserId": "The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin access identity read permission to an object in Amazon S3.", "CloudFrontOriginAccessIdentityAlreadyExists$Message": null, "CloudFrontOriginAccessIdentityConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the CloudFrontOriginAccessIdentityConfig object), a new origin access identity is created. If the CallerReference is a value you already sent in a previous request to create an identity, and the content of the CloudFrontOriginAccessIdentityConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create an identity but the content of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists error.", "CloudFrontOriginAccessIdentityConfig$Comment": "Any comments you want to include about the origin access identity.", "CloudFrontOriginAccessIdentityInUse$Message": null, "CloudFrontOriginAccessIdentityList$Marker": "The value you provided for the Marker request parameter.", "CloudFrontOriginAccessIdentityList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your origin access identities where they left off.", "CloudFrontOriginAccessIdentitySummary$Id": "The ID for the origin access identity. For example: E74FTE3AJFJ256A.", "CloudFrontOriginAccessIdentitySummary$S3CanonicalUserId": "The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin access identity read permission to an object in Amazon S3.", "CloudFrontOriginAccessIdentitySummary$Comment": "The comment for this origin access identity, as originally specified when created.", "CookieNameList$member": null, "CreateCloudFrontOriginAccessIdentityResult$Location": "The fully qualified URI of the new origin access identity just created. For example: https://cloudfront.amazonaws.com/2010-11-01/origin-access-identity/cloudfront/E74FTE3AJFJ256A.", "CreateCloudFrontOriginAccessIdentityResult$ETag": "The current version of the origin access identity created.", "CreateDistributionResult$Location": "The fully qualified URI of the new distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5.", "CreateDistributionResult$ETag": "The current version of the distribution created.", "CreateInvalidationRequest$DistributionId": "The distribution's id.", "CreateInvalidationResult$Location": "The fully qualified URI of the distribution and invalidation batch request, including the Invalidation ID.", "CreateStreamingDistributionResult$Location": "The fully qualified URI of the new streaming distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8.", "CreateStreamingDistributionResult$ETag": "The current version of the streaming distribution created.", "CustomErrorResponse$ResponsePagePath": "The path of the custom error page (for example, /custom_404.html). The path is relative to the distribution and must begin with a slash (/). If the path includes any non-ASCII characters or unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters. Do not URL encode any other characters in the path, or CloudFront will not return the custom error page to the viewer.", "CustomErrorResponse$ResponseCode": "The HTTP status code that you want CloudFront to return with the custom error page to the viewer. For a list of HTTP status codes that you can replace, see CloudFront Documentation.", "DefaultCacheBehavior$TargetOriginId": "The value of ID for the origin that you want CloudFront to route requests to when a request matches the path pattern either for a cache behavior or for the default cache behavior.", "DeleteCloudFrontOriginAccessIdentityRequest$Id": "The origin access identity's id.", "DeleteCloudFrontOriginAccessIdentityRequest$IfMatch": "The value of the ETag header you received from a previous GET or PUT request. For example: E2QWRUHAPOMQZL.", "DeleteDistributionRequest$Id": "The distribution id.", "DeleteDistributionRequest$IfMatch": "The value of the ETag header you received when you disabled the distribution. For example: E2QWRUHAPOMQZL.", "DeleteStreamingDistributionRequest$Id": "The distribution id.", "DeleteStreamingDistributionRequest$IfMatch": "The value of the ETag header you received when you disabled the streaming distribution. For example: E2QWRUHAPOMQZL.", "Distribution$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "Distribution$Status": "This response element indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "Distribution$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "DistributionAlreadyExists$Message": null, "DistributionConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the DistributionConfig object), a new distribution is created. If the CallerReference is a value you already sent in a previous request to create a distribution, and the content of the DistributionConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a distribution but the content of the DistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.", "DistributionConfig$DefaultRootObject": "The object that you want CloudFront to return (for example, index.html) when an end user requests the root URL for your distribution (http://www.example.com) instead of an object in your distribution (http://www.example.com/index.html). Specifying a default root object avoids exposing the contents of your distribution. If you don't want to specify a default root object when you create a distribution, include an empty DefaultRootObject element. To delete the default root object from an existing distribution, update the distribution configuration and include an empty DefaultRootObject element. To replace the default root object, update the distribution configuration and specify the new object.", "DistributionConfig$Comment": "Any comments you want to include about the distribution.", "DistributionConfig$WebACLId": "(Optional) If you're using AWS WAF to filter CloudFront requests, the Id of the AWS WAF web ACL that is associated with the distribution.", "DistributionList$Marker": "The value you provided for the Marker request parameter.", "DistributionList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your distributions where they left off.", "DistributionNotDisabled$Message": null, "DistributionSummary$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "DistributionSummary$Status": "This response element indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "DistributionSummary$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "DistributionSummary$Comment": "The comment originally specified when this distribution was created.", "DistributionSummary$WebACLId": "The Web ACL Id (if any) associated with the distribution.", "GetCloudFrontOriginAccessIdentityConfigRequest$Id": "The identity's id.", "GetCloudFrontOriginAccessIdentityConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetCloudFrontOriginAccessIdentityRequest$Id": "The identity's id.", "GetCloudFrontOriginAccessIdentityResult$ETag": "The current version of the origin access identity's information. For example: E2QWRUHAPOMQZL.", "GetDistributionConfigRequest$Id": "The distribution's id.", "GetDistributionConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetDistributionRequest$Id": "The distribution's id.", "GetDistributionResult$ETag": "The current version of the distribution's information. For example: E2QWRUHAPOMQZL.", "GetInvalidationRequest$DistributionId": "The distribution's id.", "GetInvalidationRequest$Id": "The invalidation's id.", "GetStreamingDistributionConfigRequest$Id": "The streaming distribution's id.", "GetStreamingDistributionConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetStreamingDistributionRequest$Id": "The streaming distribution's id.", "GetStreamingDistributionResult$ETag": "The current version of the streaming distribution's information. For example: E2QWRUHAPOMQZL.", "HeaderList$member": null, "IllegalUpdate$Message": null, "InconsistentQuantities$Message": null, "InvalidArgument$Message": null, "InvalidDefaultRootObject$Message": null, "InvalidErrorCode$Message": null, "InvalidForwardCookies$Message": null, "InvalidGeoRestrictionParameter$Message": null, "InvalidHeadersForS3Origin$Message": null, "InvalidIfMatchVersion$Message": null, "InvalidLocationCode$Message": null, "InvalidMinimumProtocolVersion$Message": null, "InvalidOrigin$Message": null, "InvalidOriginAccessIdentity$Message": null, "InvalidProtocolSettings$Message": null, "InvalidRelativePath$Message": null, "InvalidRequiredProtocol$Message": null, "InvalidResponseCode$Message": null, "InvalidTTLOrder$Message": null, "InvalidViewerCertificate$Message": null, "InvalidWebACLId$Message": null, "Invalidation$Id": "The identifier for the invalidation request. For example: IDFDVBD632BHDS5.", "Invalidation$Status": "The status of the invalidation request. When the invalidation batch is finished, the status is Completed.", "InvalidationBatch$CallerReference": "A unique name that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the Path object), a new distribution is created. If the CallerReference is a value you already sent in a previous request to create an invalidation batch, and the content of each Path element is identical to the original request, the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a distribution but the content of any Path is different from the original request, CloudFront returns an InvalidationBatchAlreadyExists error.", "InvalidationList$Marker": "The value you provided for the Marker request parameter.", "InvalidationList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your invalidation batches where they left off.", "InvalidationSummary$Id": "The unique ID for an invalidation request.", "InvalidationSummary$Status": "The status of an invalidation request.", "KeyPairIdList$member": null, "ListCloudFrontOriginAccessIdentitiesRequest$Marker": "Use this when paginating results to indicate where to begin in your list of origin access identities. The results include identities in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last identity on that page).", "ListCloudFrontOriginAccessIdentitiesRequest$MaxItems": "The maximum number of origin access identities you want in the response body.", "ListDistributionsByWebACLIdRequest$Marker": "Use Marker and MaxItems to control pagination of results. If you have more than MaxItems distributions that satisfy the request, the response includes a NextMarker element. To get the next page of results, submit another request. For the value of Marker, specify the value of NextMarker from the last response. (For the first request, omit Marker.)", "ListDistributionsByWebACLIdRequest$MaxItems": "The maximum number of distributions that you want CloudFront to return in the response body. The maximum and default values are both 100.", "ListDistributionsByWebACLIdRequest$WebACLId": "The Id of the AWS WAF web ACL for which you want to list the associated distributions. If you specify \"null\" for the Id, the request returns a list of the distributions that aren't associated with a web ACL.", "ListDistributionsRequest$Marker": "Use Marker and MaxItems to control pagination of results. If you have more than MaxItems distributions that satisfy the request, the response includes a NextMarker element. To get the next page of results, submit another request. For the value of Marker, specify the value of NextMarker from the last response. (For the first request, omit Marker.)", "ListDistributionsRequest$MaxItems": "The maximum number of distributions that you want CloudFront to return in the response body. The maximum and default values are both 100.", "ListInvalidationsRequest$DistributionId": "The distribution's id.", "ListInvalidationsRequest$Marker": "Use this parameter when paginating results to indicate where to begin in your list of invalidation batches. Because the results are returned in decreasing order from most recent to oldest, the most recent results are on the first page, the second page will contain earlier results, and so on. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response. This value is the same as the ID of the last invalidation batch on that page.", "ListInvalidationsRequest$MaxItems": "The maximum number of invalidation batches you want in the response body.", "ListStreamingDistributionsRequest$Marker": "Use this when paginating results to indicate where to begin in your list of streaming distributions. The results include distributions in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last distribution on that page).", "ListStreamingDistributionsRequest$MaxItems": "The maximum number of streaming distributions you want in the response body.", "LocationList$member": null, "LoggingConfig$Bucket": "The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.", "LoggingConfig$Prefix": "An optional string that you want CloudFront to prefix to the access log filenames for this distribution, for example, myprefix/. If you want to enable logging, but you do not want to specify a prefix, you still must include an empty Prefix element in the Logging element.", "MissingBody$Message": null, "NoSuchCloudFrontOriginAccessIdentity$Message": null, "NoSuchDistribution$Message": null, "NoSuchInvalidation$Message": null, "NoSuchOrigin$Message": null, "NoSuchStreamingDistribution$Message": null, "Origin$Id": "A unique identifier for the origin. The value of Id must be unique within the distribution. You use the value of Id when you create a cache behavior. The Id identifies the origin that CloudFront routes a request to when the request matches the path pattern for that cache behavior.", "Origin$DomainName": "Amazon S3 origins: The DNS name of the Amazon S3 bucket from which you want CloudFront to get objects for this origin, for example, myawsbucket.s3.amazonaws.com. Custom origins: The DNS domain name for the HTTP server from which you want CloudFront to get objects for this origin, for example, www.example.com.", "Origin$OriginPath": "An optional element that causes CloudFront to request your content from a directory in your Amazon S3 bucket or your custom origin. When you include the OriginPath element, specify the directory name, beginning with a /. CloudFront appends the directory name to the value of DomainName.", "PathList$member": null, "PreconditionFailed$Message": null, "S3Origin$DomainName": "The DNS name of the S3 origin.", "S3Origin$OriginAccessIdentity": "Your S3 origin's origin access identity.", "S3OriginConfig$OriginAccessIdentity": "The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that end users can only access objects in an Amazon S3 bucket through CloudFront. If you want end users to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty OriginAccessIdentity element. To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty OriginAccessIdentity element. To replace the origin access identity, update the distribution configuration and specify the new origin access identity. Use the format origin-access-identity/cloudfront/Id where Id is the value that CloudFront returned in the Id element when you created the origin access identity.", "Signer$AwsAccountNumber": "Specifies an AWS account that can create signed URLs. Values: self, which indicates that the AWS account that was used to create the distribution can created signed URLs, or an AWS account number. Omit the dashes in the account number.", "StreamingDistribution$Id": "The identifier for the streaming distribution. For example: EGTXBD79H29TRA8.", "StreamingDistribution$Status": "The current status of the streaming distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "StreamingDistribution$DomainName": "The domain name corresponding to the streaming distribution. For example: s5c39gqb8ow64r.cloudfront.net.", "StreamingDistributionAlreadyExists$Message": null, "StreamingDistributionConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the StreamingDistributionConfig object), a new streaming distribution is created. If the CallerReference is a value you already sent in a previous request to create a streaming distribution, and the content of the StreamingDistributionConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a streaming distribution but the content of the StreamingDistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.", "StreamingDistributionConfig$Comment": "Any comments you want to include about the streaming distribution.", "StreamingDistributionList$Marker": "The value you provided for the Marker request parameter.", "StreamingDistributionList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your streaming distributions where they left off.", "StreamingDistributionNotDisabled$Message": null, "StreamingDistributionSummary$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "StreamingDistributionSummary$Status": "Indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "StreamingDistributionSummary$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "StreamingDistributionSummary$Comment": "The comment originally specified when this distribution was created.", "StreamingLoggingConfig$Bucket": "The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.", "StreamingLoggingConfig$Prefix": "An optional string that you want CloudFront to prefix to the access log filenames for this streaming distribution, for example, myprefix/. If you want to enable logging, but you do not want to specify a prefix, you still must include an empty Prefix element in the Logging element.", "TooManyCacheBehaviors$Message": null, "TooManyCertificates$Message": null, "TooManyCloudFrontOriginAccessIdentities$Message": null, "TooManyCookieNamesInWhiteList$Message": null, "TooManyDistributionCNAMEs$Message": null, "TooManyDistributions$Message": null, "TooManyHeadersInForwardedValues$Message": null, "TooManyInvalidationsInProgress$Message": null, "TooManyOrigins$Message": null, "TooManyStreamingDistributionCNAMEs$Message": null, "TooManyStreamingDistributions$Message": null, "TooManyTrustedSigners$Message": null, "TrustedSignerDoesNotExist$Message": null, "UpdateCloudFrontOriginAccessIdentityRequest$Id": "The identity's id.", "UpdateCloudFrontOriginAccessIdentityRequest$IfMatch": "The value of the ETag header you received when retrieving the identity's configuration. For example: E2QWRUHAPOMQZL.", "UpdateCloudFrontOriginAccessIdentityResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "UpdateDistributionRequest$Id": "The distribution's id.", "UpdateDistributionRequest$IfMatch": "The value of the ETag header you received when retrieving the distribution's configuration. For example: E2QWRUHAPOMQZL.", "UpdateDistributionResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "UpdateStreamingDistributionRequest$Id": "The streaming distribution's id.", "UpdateStreamingDistributionRequest$IfMatch": "The value of the ETag header you received when retrieving the streaming distribution's configuration. For example: E2QWRUHAPOMQZL.", "UpdateStreamingDistributionResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "ViewerCertificate$Certificate": "If you want viewers to use HTTPS to request your objects and you're using an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), set to the IAM certificate identifier of the custom viewer certificate for this distribution.", "ViewerCertificate$IAMCertificateId": "Note: this field is deprecated. Please use \"iam\" as CertificateSource and specify the IAM certificate Id as the Certificate. If you want viewers to use HTTPS to request your objects and you're using an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), specify the IAM certificate identifier of the custom viewer certificate for this distribution. Specify either this value or CloudFrontDefaultCertificate." } }, "timestamp": { "base": null, "refs": { "Distribution$LastModifiedTime": "The date and time the distribution was last modified.", "DistributionSummary$LastModifiedTime": "The date and time the distribution was last modified.", "Invalidation$CreateTime": "The date and time the invalidation request was first made.", "InvalidationSummary$CreateTime": null, "StreamingDistribution$LastModifiedTime": "The date and time the distribution was last modified.", "StreamingDistributionSummary$LastModifiedTime": "The date and time the distribution was last modified." } } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2015-09-17/examples-1.json000066400000000000000000000000541300374646400240710ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/cloudfront/2015-09-17/paginators-1.json000066400000000000000000000021461300374646400244260ustar00rootroot00000000000000{ "pagination": { "ListCloudFrontOriginAccessIdentities": { "input_token": "Marker", "output_token": "CloudFrontOriginAccessIdentityList.NextMarker", "limit_key": "MaxItems", "more_results": "CloudFrontOriginAccessIdentityList.IsTruncated", "result_key": "CloudFrontOriginAccessIdentityList.Items" }, "ListDistributions": { "input_token": "Marker", "output_token": "DistributionList.NextMarker", "limit_key": "MaxItems", "more_results": "DistributionList.IsTruncated", "result_key": "DistributionList.Items" }, "ListInvalidations": { "input_token": "Marker", "output_token": "InvalidationList.NextMarker", "limit_key": "MaxItems", "more_results": "InvalidationList.IsTruncated", "result_key": "InvalidationList.Items" }, "ListStreamingDistributions": { "input_token": "Marker", "output_token": "StreamingDistributionList.NextMarker", "limit_key": "MaxItems", "more_results": "StreamingDistributionList.IsTruncated", "result_key": "StreamingDistributionList.Items" } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2015-09-17/waiters-2.json000066400000000000000000000021601300374646400237320ustar00rootroot00000000000000{ "version": 2, "waiters": { "DistributionDeployed": { "delay": 60, "operation": "GetDistribution", "maxAttempts": 25, "description": "Wait until a distribution is deployed.", "acceptors": [ { "expected": "Deployed", "matcher": "path", "state": "success", "argument": "Status" } ] }, "InvalidationCompleted": { "delay": 20, "operation": "GetInvalidation", "maxAttempts": 30, "description": "Wait until an invalidation has completed.", "acceptors": [ { "expected": "Completed", "matcher": "path", "state": "success", "argument": "Status" } ] }, "StreamingDistributionDeployed": { "delay": 60, "operation": "GetStreamingDistribution", "maxAttempts": 25, "description": "Wait until a streaming distribution is deployed.", "acceptors": [ { "expected": "Deployed", "matcher": "path", "state": "success", "argument": "Status" } ] } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-01-13/000077500000000000000000000000001300374646400212105ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudfront/2016-01-13/api-2.json000066400000000000000000001646451300374646400230330ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2016-01-13", "endpointPrefix":"cloudfront", "globalEndpoint":"cloudfront.amazonaws.com", "protocol":"rest-xml", "serviceAbbreviation":"CloudFront", "serviceFullName":"Amazon CloudFront", "signatureVersion":"v4" }, "operations":{ "CreateCloudFrontOriginAccessIdentity":{ "name":"CreateCloudFrontOriginAccessIdentity2016_01_13", "http":{ "method":"POST", "requestUri":"/2016-01-13/origin-access-identity/cloudfront", "responseCode":201 }, "input":{"shape":"CreateCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"CreateCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"CloudFrontOriginAccessIdentityAlreadyExists"}, {"shape":"MissingBody"}, {"shape":"TooManyCloudFrontOriginAccessIdentities"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "CreateDistribution":{ "name":"CreateDistribution2016_01_13", "http":{ "method":"POST", "requestUri":"/2016-01-13/distribution", "responseCode":201 }, "input":{"shape":"CreateDistributionRequest"}, "output":{"shape":"CreateDistributionResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"DistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InvalidViewerCertificate"}, {"shape":"InvalidMinimumProtocolVersion"}, {"shape":"MissingBody"}, {"shape":"TooManyDistributionCNAMEs"}, {"shape":"TooManyDistributions"}, {"shape":"InvalidDefaultRootObject"}, {"shape":"InvalidRelativePath"}, {"shape":"InvalidErrorCode"}, {"shape":"InvalidResponseCode"}, {"shape":"InvalidArgument"}, {"shape":"InvalidRequiredProtocol"}, {"shape":"NoSuchOrigin"}, {"shape":"TooManyOrigins"}, {"shape":"TooManyCacheBehaviors"}, {"shape":"TooManyCookieNamesInWhiteList"}, {"shape":"InvalidForwardCookies"}, {"shape":"TooManyHeadersInForwardedValues"}, {"shape":"InvalidHeadersForS3Origin"}, {"shape":"InconsistentQuantities"}, {"shape":"TooManyCertificates"}, {"shape":"InvalidLocationCode"}, {"shape":"InvalidGeoRestrictionParameter"}, {"shape":"InvalidProtocolSettings"}, {"shape":"InvalidTTLOrder"}, {"shape":"InvalidWebACLId"}, {"shape":"TooManyOriginCustomHeaders"} ] }, "CreateInvalidation":{ "name":"CreateInvalidation2016_01_13", "http":{ "method":"POST", "requestUri":"/2016-01-13/distribution/{DistributionId}/invalidation", "responseCode":201 }, "input":{"shape":"CreateInvalidationRequest"}, "output":{"shape":"CreateInvalidationResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"MissingBody"}, {"shape":"InvalidArgument"}, {"shape":"NoSuchDistribution"}, {"shape":"BatchTooLarge"}, {"shape":"TooManyInvalidationsInProgress"}, {"shape":"InconsistentQuantities"} ] }, "CreateStreamingDistribution":{ "name":"CreateStreamingDistribution2016_01_13", "http":{ "method":"POST", "requestUri":"/2016-01-13/streaming-distribution", "responseCode":201 }, "input":{"shape":"CreateStreamingDistributionRequest"}, "output":{"shape":"CreateStreamingDistributionResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"StreamingDistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"MissingBody"}, {"shape":"TooManyStreamingDistributionCNAMEs"}, {"shape":"TooManyStreamingDistributions"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "DeleteCloudFrontOriginAccessIdentity":{ "name":"DeleteCloudFrontOriginAccessIdentity2016_01_13", "http":{ "method":"DELETE", "requestUri":"/2016-01-13/origin-access-identity/cloudfront/{Id}", "responseCode":204 }, "input":{"shape":"DeleteCloudFrontOriginAccessIdentityRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"PreconditionFailed"}, {"shape":"CloudFrontOriginAccessIdentityInUse"} ] }, "DeleteDistribution":{ "name":"DeleteDistribution2016_01_13", "http":{ "method":"DELETE", "requestUri":"/2016-01-13/distribution/{Id}", "responseCode":204 }, "input":{"shape":"DeleteDistributionRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"DistributionNotDisabled"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchDistribution"}, {"shape":"PreconditionFailed"} ] }, "DeleteStreamingDistribution":{ "name":"DeleteStreamingDistribution2016_01_13", "http":{ "method":"DELETE", "requestUri":"/2016-01-13/streaming-distribution/{Id}", "responseCode":204 }, "input":{"shape":"DeleteStreamingDistributionRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"StreamingDistributionNotDisabled"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchStreamingDistribution"}, {"shape":"PreconditionFailed"} ] }, "GetCloudFrontOriginAccessIdentity":{ "name":"GetCloudFrontOriginAccessIdentity2016_01_13", "http":{ "method":"GET", "requestUri":"/2016-01-13/origin-access-identity/cloudfront/{Id}" }, "input":{"shape":"GetCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"GetCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"AccessDenied"} ] }, "GetCloudFrontOriginAccessIdentityConfig":{ "name":"GetCloudFrontOriginAccessIdentityConfig2016_01_13", "http":{ "method":"GET", "requestUri":"/2016-01-13/origin-access-identity/cloudfront/{Id}/config" }, "input":{"shape":"GetCloudFrontOriginAccessIdentityConfigRequest"}, "output":{"shape":"GetCloudFrontOriginAccessIdentityConfigResult"}, "errors":[ {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"AccessDenied"} ] }, "GetDistribution":{ "name":"GetDistribution2016_01_13", "http":{ "method":"GET", "requestUri":"/2016-01-13/distribution/{Id}" }, "input":{"shape":"GetDistributionRequest"}, "output":{"shape":"GetDistributionResult"}, "errors":[ {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetDistributionConfig":{ "name":"GetDistributionConfig2016_01_13", "http":{ "method":"GET", "requestUri":"/2016-01-13/distribution/{Id}/config" }, "input":{"shape":"GetDistributionConfigRequest"}, "output":{"shape":"GetDistributionConfigResult"}, "errors":[ {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetInvalidation":{ "name":"GetInvalidation2016_01_13", "http":{ "method":"GET", "requestUri":"/2016-01-13/distribution/{DistributionId}/invalidation/{Id}" }, "input":{"shape":"GetInvalidationRequest"}, "output":{"shape":"GetInvalidationResult"}, "errors":[ {"shape":"NoSuchInvalidation"}, {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetStreamingDistribution":{ "name":"GetStreamingDistribution2016_01_13", "http":{ "method":"GET", "requestUri":"/2016-01-13/streaming-distribution/{Id}" }, "input":{"shape":"GetStreamingDistributionRequest"}, "output":{"shape":"GetStreamingDistributionResult"}, "errors":[ {"shape":"NoSuchStreamingDistribution"}, {"shape":"AccessDenied"} ] }, "GetStreamingDistributionConfig":{ "name":"GetStreamingDistributionConfig2016_01_13", "http":{ "method":"GET", "requestUri":"/2016-01-13/streaming-distribution/{Id}/config" }, "input":{"shape":"GetStreamingDistributionConfigRequest"}, "output":{"shape":"GetStreamingDistributionConfigResult"}, "errors":[ {"shape":"NoSuchStreamingDistribution"}, {"shape":"AccessDenied"} ] }, "ListCloudFrontOriginAccessIdentities":{ "name":"ListCloudFrontOriginAccessIdentities2016_01_13", "http":{ "method":"GET", "requestUri":"/2016-01-13/origin-access-identity/cloudfront" }, "input":{"shape":"ListCloudFrontOriginAccessIdentitiesRequest"}, "output":{"shape":"ListCloudFrontOriginAccessIdentitiesResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "ListDistributions":{ "name":"ListDistributions2016_01_13", "http":{ "method":"GET", "requestUri":"/2016-01-13/distribution" }, "input":{"shape":"ListDistributionsRequest"}, "output":{"shape":"ListDistributionsResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "ListDistributionsByWebACLId":{ "name":"ListDistributionsByWebACLId2016_01_13", "http":{ "method":"GET", "requestUri":"/2016-01-13/distributionsByWebACLId/{WebACLId}" }, "input":{"shape":"ListDistributionsByWebACLIdRequest"}, "output":{"shape":"ListDistributionsByWebACLIdResult"}, "errors":[ {"shape":"InvalidArgument"}, {"shape":"InvalidWebACLId"} ] }, "ListInvalidations":{ "name":"ListInvalidations2016_01_13", "http":{ "method":"GET", "requestUri":"/2016-01-13/distribution/{DistributionId}/invalidation" }, "input":{"shape":"ListInvalidationsRequest"}, "output":{"shape":"ListInvalidationsResult"}, "errors":[ {"shape":"InvalidArgument"}, {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "ListStreamingDistributions":{ "name":"ListStreamingDistributions2016_01_13", "http":{ "method":"GET", "requestUri":"/2016-01-13/streaming-distribution" }, "input":{"shape":"ListStreamingDistributionsRequest"}, "output":{"shape":"ListStreamingDistributionsResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "UpdateCloudFrontOriginAccessIdentity":{ "name":"UpdateCloudFrontOriginAccessIdentity2016_01_13", "http":{ "method":"PUT", "requestUri":"/2016-01-13/origin-access-identity/cloudfront/{Id}/config" }, "input":{"shape":"UpdateCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"UpdateCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"PreconditionFailed"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "UpdateDistribution":{ "name":"UpdateDistribution2016_01_13", "http":{ "method":"PUT", "requestUri":"/2016-01-13/distribution/{Id}/config" }, "input":{"shape":"UpdateDistributionRequest"}, "output":{"shape":"UpdateDistributionResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"CNAMEAlreadyExists"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchDistribution"}, {"shape":"PreconditionFailed"}, {"shape":"TooManyDistributionCNAMEs"}, {"shape":"InvalidDefaultRootObject"}, {"shape":"InvalidRelativePath"}, {"shape":"InvalidErrorCode"}, {"shape":"InvalidResponseCode"}, {"shape":"InvalidArgument"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InvalidViewerCertificate"}, {"shape":"InvalidMinimumProtocolVersion"}, {"shape":"InvalidRequiredProtocol"}, {"shape":"NoSuchOrigin"}, {"shape":"TooManyOrigins"}, {"shape":"TooManyCacheBehaviors"}, {"shape":"TooManyCookieNamesInWhiteList"}, {"shape":"InvalidForwardCookies"}, {"shape":"TooManyHeadersInForwardedValues"}, {"shape":"InvalidHeadersForS3Origin"}, {"shape":"InconsistentQuantities"}, {"shape":"TooManyCertificates"}, {"shape":"InvalidLocationCode"}, {"shape":"InvalidGeoRestrictionParameter"}, {"shape":"InvalidTTLOrder"}, {"shape":"InvalidWebACLId"}, {"shape":"TooManyOriginCustomHeaders"} ] }, "UpdateStreamingDistribution":{ "name":"UpdateStreamingDistribution2016_01_13", "http":{ "method":"PUT", "requestUri":"/2016-01-13/streaming-distribution/{Id}/config" }, "input":{"shape":"UpdateStreamingDistributionRequest"}, "output":{"shape":"UpdateStreamingDistributionResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"CNAMEAlreadyExists"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchStreamingDistribution"}, {"shape":"PreconditionFailed"}, {"shape":"TooManyStreamingDistributionCNAMEs"}, {"shape":"InvalidArgument"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InconsistentQuantities"} ] } }, "shapes":{ "AccessDenied":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":403}, "exception":true }, "ActiveTrustedSigners":{ "type":"structure", "required":[ "Enabled", "Quantity" ], "members":{ "Enabled":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"SignerList"} } }, "AliasList":{ "type":"list", "member":{ "shape":"string", "locationName":"CNAME" } }, "Aliases":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"AliasList"} } }, "AllowedMethods":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"MethodsList"}, "CachedMethods":{"shape":"CachedMethods"} } }, "AwsAccountNumberList":{ "type":"list", "member":{ "shape":"string", "locationName":"AwsAccountNumber" } }, "BatchTooLarge":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":413}, "exception":true }, "CNAMEAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CacheBehavior":{ "type":"structure", "required":[ "PathPattern", "TargetOriginId", "ForwardedValues", "TrustedSigners", "ViewerProtocolPolicy", "MinTTL" ], "members":{ "PathPattern":{"shape":"string"}, "TargetOriginId":{"shape":"string"}, "ForwardedValues":{"shape":"ForwardedValues"}, "TrustedSigners":{"shape":"TrustedSigners"}, "ViewerProtocolPolicy":{"shape":"ViewerProtocolPolicy"}, "MinTTL":{"shape":"long"}, "AllowedMethods":{"shape":"AllowedMethods"}, "SmoothStreaming":{"shape":"boolean"}, "DefaultTTL":{"shape":"long"}, "MaxTTL":{"shape":"long"}, "Compress":{"shape":"boolean"} } }, "CacheBehaviorList":{ "type":"list", "member":{ "shape":"CacheBehavior", "locationName":"CacheBehavior" } }, "CacheBehaviors":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CacheBehaviorList"} } }, "CachedMethods":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"MethodsList"} } }, "CertificateSource":{ "type":"string", "enum":[ "cloudfront", "iam" ] }, "CloudFrontOriginAccessIdentity":{ "type":"structure", "required":[ "Id", "S3CanonicalUserId" ], "members":{ "Id":{"shape":"string"}, "S3CanonicalUserId":{"shape":"string"}, "CloudFrontOriginAccessIdentityConfig":{"shape":"CloudFrontOriginAccessIdentityConfig"} } }, "CloudFrontOriginAccessIdentityAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CloudFrontOriginAccessIdentityConfig":{ "type":"structure", "required":[ "CallerReference", "Comment" ], "members":{ "CallerReference":{"shape":"string"}, "Comment":{"shape":"string"} } }, "CloudFrontOriginAccessIdentityInUse":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CloudFrontOriginAccessIdentityList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"CloudFrontOriginAccessIdentitySummaryList"} } }, "CloudFrontOriginAccessIdentitySummary":{ "type":"structure", "required":[ "Id", "S3CanonicalUserId", "Comment" ], "members":{ "Id":{"shape":"string"}, "S3CanonicalUserId":{"shape":"string"}, "Comment":{"shape":"string"} } }, "CloudFrontOriginAccessIdentitySummaryList":{ "type":"list", "member":{ "shape":"CloudFrontOriginAccessIdentitySummary", "locationName":"CloudFrontOriginAccessIdentitySummary" } }, "CookieNameList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "CookieNames":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CookieNameList"} } }, "CookiePreference":{ "type":"structure", "required":["Forward"], "members":{ "Forward":{"shape":"ItemSelection"}, "WhitelistedNames":{"shape":"CookieNames"} } }, "CreateCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["CloudFrontOriginAccessIdentityConfig"], "members":{ "CloudFrontOriginAccessIdentityConfig":{ "shape":"CloudFrontOriginAccessIdentityConfig", "locationName":"CloudFrontOriginAccessIdentityConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-01-13/"} } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "CreateCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "CreateDistributionRequest":{ "type":"structure", "required":["DistributionConfig"], "members":{ "DistributionConfig":{ "shape":"DistributionConfig", "locationName":"DistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-01-13/"} } }, "payload":"DistributionConfig" }, "CreateDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "CreateInvalidationRequest":{ "type":"structure", "required":[ "DistributionId", "InvalidationBatch" ], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "InvalidationBatch":{ "shape":"InvalidationBatch", "locationName":"InvalidationBatch", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-01-13/"} } }, "payload":"InvalidationBatch" }, "CreateInvalidationResult":{ "type":"structure", "members":{ "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "Invalidation":{"shape":"Invalidation"} }, "payload":"Invalidation" }, "CreateStreamingDistributionRequest":{ "type":"structure", "required":["StreamingDistributionConfig"], "members":{ "StreamingDistributionConfig":{ "shape":"StreamingDistributionConfig", "locationName":"StreamingDistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-01-13/"} } }, "payload":"StreamingDistributionConfig" }, "CreateStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "CustomErrorResponse":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"integer"}, "ResponsePagePath":{"shape":"string"}, "ResponseCode":{"shape":"string"}, "ErrorCachingMinTTL":{"shape":"long"} } }, "CustomErrorResponseList":{ "type":"list", "member":{ "shape":"CustomErrorResponse", "locationName":"CustomErrorResponse" } }, "CustomErrorResponses":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CustomErrorResponseList"} } }, "CustomHeaders":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"OriginCustomHeadersList"} } }, "CustomOriginConfig":{ "type":"structure", "required":[ "HTTPPort", "HTTPSPort", "OriginProtocolPolicy" ], "members":{ "HTTPPort":{"shape":"integer"}, "HTTPSPort":{"shape":"integer"}, "OriginProtocolPolicy":{"shape":"OriginProtocolPolicy"}, "OriginSslProtocols":{"shape":"OriginSslProtocols"} } }, "DefaultCacheBehavior":{ "type":"structure", "required":[ "TargetOriginId", "ForwardedValues", "TrustedSigners", "ViewerProtocolPolicy", "MinTTL" ], "members":{ "TargetOriginId":{"shape":"string"}, "ForwardedValues":{"shape":"ForwardedValues"}, "TrustedSigners":{"shape":"TrustedSigners"}, "ViewerProtocolPolicy":{"shape":"ViewerProtocolPolicy"}, "MinTTL":{"shape":"long"}, "AllowedMethods":{"shape":"AllowedMethods"}, "SmoothStreaming":{"shape":"boolean"}, "DefaultTTL":{"shape":"long"}, "MaxTTL":{"shape":"long"}, "Compress":{"shape":"boolean"} } }, "DeleteCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "DeleteDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "DeleteStreamingDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "Distribution":{ "type":"structure", "required":[ "Id", "Status", "LastModifiedTime", "InProgressInvalidationBatches", "DomainName", "ActiveTrustedSigners", "DistributionConfig" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "InProgressInvalidationBatches":{"shape":"integer"}, "DomainName":{"shape":"string"}, "ActiveTrustedSigners":{"shape":"ActiveTrustedSigners"}, "DistributionConfig":{"shape":"DistributionConfig"} } }, "DistributionAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "DistributionConfig":{ "type":"structure", "required":[ "CallerReference", "Origins", "DefaultCacheBehavior", "Comment", "Enabled" ], "members":{ "CallerReference":{"shape":"string"}, "Aliases":{"shape":"Aliases"}, "DefaultRootObject":{"shape":"string"}, "Origins":{"shape":"Origins"}, "DefaultCacheBehavior":{"shape":"DefaultCacheBehavior"}, "CacheBehaviors":{"shape":"CacheBehaviors"}, "CustomErrorResponses":{"shape":"CustomErrorResponses"}, "Comment":{"shape":"string"}, "Logging":{"shape":"LoggingConfig"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"}, "ViewerCertificate":{"shape":"ViewerCertificate"}, "Restrictions":{"shape":"Restrictions"}, "WebACLId":{"shape":"string"} } }, "DistributionList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"DistributionSummaryList"} } }, "DistributionNotDisabled":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "DistributionSummary":{ "type":"structure", "required":[ "Id", "Status", "LastModifiedTime", "DomainName", "Aliases", "Origins", "DefaultCacheBehavior", "CacheBehaviors", "CustomErrorResponses", "Comment", "PriceClass", "Enabled", "ViewerCertificate", "Restrictions", "WebACLId" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "Aliases":{"shape":"Aliases"}, "Origins":{"shape":"Origins"}, "DefaultCacheBehavior":{"shape":"DefaultCacheBehavior"}, "CacheBehaviors":{"shape":"CacheBehaviors"}, "CustomErrorResponses":{"shape":"CustomErrorResponses"}, "Comment":{"shape":"string"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"}, "ViewerCertificate":{"shape":"ViewerCertificate"}, "Restrictions":{"shape":"Restrictions"}, "WebACLId":{"shape":"string"} } }, "DistributionSummaryList":{ "type":"list", "member":{ "shape":"DistributionSummary", "locationName":"DistributionSummary" } }, "ForwardedValues":{ "type":"structure", "required":[ "QueryString", "Cookies" ], "members":{ "QueryString":{"shape":"boolean"}, "Cookies":{"shape":"CookiePreference"}, "Headers":{"shape":"Headers"} } }, "GeoRestriction":{ "type":"structure", "required":[ "RestrictionType", "Quantity" ], "members":{ "RestrictionType":{"shape":"GeoRestrictionType"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"LocationList"} } }, "GeoRestrictionType":{ "type":"string", "enum":[ "blacklist", "whitelist", "none" ] }, "GetCloudFrontOriginAccessIdentityConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetCloudFrontOriginAccessIdentityConfigResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentityConfig":{"shape":"CloudFrontOriginAccessIdentityConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "GetCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "GetDistributionConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetDistributionConfigResult":{ "type":"structure", "members":{ "DistributionConfig":{"shape":"DistributionConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"DistributionConfig" }, "GetDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "GetInvalidationRequest":{ "type":"structure", "required":[ "DistributionId", "Id" ], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetInvalidationResult":{ "type":"structure", "members":{ "Invalidation":{"shape":"Invalidation"} }, "payload":"Invalidation" }, "GetStreamingDistributionConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetStreamingDistributionConfigResult":{ "type":"structure", "members":{ "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistributionConfig" }, "GetStreamingDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "HeaderList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "Headers":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"HeaderList"} } }, "IllegalUpdate":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InconsistentQuantities":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidArgument":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidDefaultRootObject":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidErrorCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidForwardCookies":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidGeoRestrictionParameter":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidHeadersForS3Origin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidIfMatchVersion":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidLocationCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidMinimumProtocolVersion":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidOrigin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidOriginAccessIdentity":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidProtocolSettings":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRelativePath":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRequiredProtocol":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidResponseCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidTTLOrder":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidViewerCertificate":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidWebACLId":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "Invalidation":{ "type":"structure", "required":[ "Id", "Status", "CreateTime", "InvalidationBatch" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "CreateTime":{"shape":"timestamp"}, "InvalidationBatch":{"shape":"InvalidationBatch"} } }, "InvalidationBatch":{ "type":"structure", "required":[ "Paths", "CallerReference" ], "members":{ "Paths":{"shape":"Paths"}, "CallerReference":{"shape":"string"} } }, "InvalidationList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"InvalidationSummaryList"} } }, "InvalidationSummary":{ "type":"structure", "required":[ "Id", "CreateTime", "Status" ], "members":{ "Id":{"shape":"string"}, "CreateTime":{"shape":"timestamp"}, "Status":{"shape":"string"} } }, "InvalidationSummaryList":{ "type":"list", "member":{ "shape":"InvalidationSummary", "locationName":"InvalidationSummary" } }, "ItemSelection":{ "type":"string", "enum":[ "none", "whitelist", "all" ] }, "KeyPairIdList":{ "type":"list", "member":{ "shape":"string", "locationName":"KeyPairId" } }, "KeyPairIds":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"KeyPairIdList"} } }, "ListCloudFrontOriginAccessIdentitiesRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListCloudFrontOriginAccessIdentitiesResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentityList":{"shape":"CloudFrontOriginAccessIdentityList"} }, "payload":"CloudFrontOriginAccessIdentityList" }, "ListDistributionsByWebACLIdRequest":{ "type":"structure", "required":["WebACLId"], "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" }, "WebACLId":{ "shape":"string", "location":"uri", "locationName":"WebACLId" } } }, "ListDistributionsByWebACLIdResult":{ "type":"structure", "members":{ "DistributionList":{"shape":"DistributionList"} }, "payload":"DistributionList" }, "ListDistributionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListDistributionsResult":{ "type":"structure", "members":{ "DistributionList":{"shape":"DistributionList"} }, "payload":"DistributionList" }, "ListInvalidationsRequest":{ "type":"structure", "required":["DistributionId"], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListInvalidationsResult":{ "type":"structure", "members":{ "InvalidationList":{"shape":"InvalidationList"} }, "payload":"InvalidationList" }, "ListStreamingDistributionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListStreamingDistributionsResult":{ "type":"structure", "members":{ "StreamingDistributionList":{"shape":"StreamingDistributionList"} }, "payload":"StreamingDistributionList" }, "LocationList":{ "type":"list", "member":{ "shape":"string", "locationName":"Location" } }, "LoggingConfig":{ "type":"structure", "required":[ "Enabled", "IncludeCookies", "Bucket", "Prefix" ], "members":{ "Enabled":{"shape":"boolean"}, "IncludeCookies":{"shape":"boolean"}, "Bucket":{"shape":"string"}, "Prefix":{"shape":"string"} } }, "Method":{ "type":"string", "enum":[ "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" ] }, "MethodsList":{ "type":"list", "member":{ "shape":"Method", "locationName":"Method" } }, "MinimumProtocolVersion":{ "type":"string", "enum":[ "SSLv3", "TLSv1" ] }, "MissingBody":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "NoSuchCloudFrontOriginAccessIdentity":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchDistribution":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchInvalidation":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchOrigin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchStreamingDistribution":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "Origin":{ "type":"structure", "required":[ "Id", "DomainName" ], "members":{ "Id":{"shape":"string"}, "DomainName":{"shape":"string"}, "OriginPath":{"shape":"string"}, "CustomHeaders":{"shape":"CustomHeaders"}, "S3OriginConfig":{"shape":"S3OriginConfig"}, "CustomOriginConfig":{"shape":"CustomOriginConfig"} } }, "OriginCustomHeader":{ "type":"structure", "required":[ "HeaderName", "HeaderValue" ], "members":{ "HeaderName":{"shape":"string"}, "HeaderValue":{"shape":"string"} } }, "OriginCustomHeadersList":{ "type":"list", "member":{ "shape":"OriginCustomHeader", "locationName":"OriginCustomHeader" } }, "OriginList":{ "type":"list", "member":{ "shape":"Origin", "locationName":"Origin" }, "min":1 }, "OriginProtocolPolicy":{ "type":"string", "enum":[ "http-only", "match-viewer", "https-only" ] }, "OriginSslProtocols":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"SslProtocolsList"} } }, "Origins":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"OriginList"} } }, "PathList":{ "type":"list", "member":{ "shape":"string", "locationName":"Path" } }, "Paths":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"PathList"} } }, "PreconditionFailed":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":412}, "exception":true }, "PriceClass":{ "type":"string", "enum":[ "PriceClass_100", "PriceClass_200", "PriceClass_All" ] }, "Restrictions":{ "type":"structure", "required":["GeoRestriction"], "members":{ "GeoRestriction":{"shape":"GeoRestriction"} } }, "S3Origin":{ "type":"structure", "required":[ "DomainName", "OriginAccessIdentity" ], "members":{ "DomainName":{"shape":"string"}, "OriginAccessIdentity":{"shape":"string"} } }, "S3OriginConfig":{ "type":"structure", "required":["OriginAccessIdentity"], "members":{ "OriginAccessIdentity":{"shape":"string"} } }, "SSLSupportMethod":{ "type":"string", "enum":[ "sni-only", "vip" ] }, "Signer":{ "type":"structure", "members":{ "AwsAccountNumber":{"shape":"string"}, "KeyPairIds":{"shape":"KeyPairIds"} } }, "SignerList":{ "type":"list", "member":{ "shape":"Signer", "locationName":"Signer" } }, "SslProtocol":{ "type":"string", "enum":[ "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2" ] }, "SslProtocolsList":{ "type":"list", "member":{ "shape":"SslProtocol", "locationName":"SslProtocol" } }, "StreamingDistribution":{ "type":"structure", "required":[ "Id", "Status", "DomainName", "ActiveTrustedSigners", "StreamingDistributionConfig" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "ActiveTrustedSigners":{"shape":"ActiveTrustedSigners"}, "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"} } }, "StreamingDistributionAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "StreamingDistributionConfig":{ "type":"structure", "required":[ "CallerReference", "S3Origin", "Comment", "TrustedSigners", "Enabled" ], "members":{ "CallerReference":{"shape":"string"}, "S3Origin":{"shape":"S3Origin"}, "Aliases":{"shape":"Aliases"}, "Comment":{"shape":"string"}, "Logging":{"shape":"StreamingLoggingConfig"}, "TrustedSigners":{"shape":"TrustedSigners"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"} } }, "StreamingDistributionList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"StreamingDistributionSummaryList"} } }, "StreamingDistributionNotDisabled":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "StreamingDistributionSummary":{ "type":"structure", "required":[ "Id", "Status", "LastModifiedTime", "DomainName", "S3Origin", "Aliases", "TrustedSigners", "Comment", "PriceClass", "Enabled" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "S3Origin":{"shape":"S3Origin"}, "Aliases":{"shape":"Aliases"}, "TrustedSigners":{"shape":"TrustedSigners"}, "Comment":{"shape":"string"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"} } }, "StreamingDistributionSummaryList":{ "type":"list", "member":{ "shape":"StreamingDistributionSummary", "locationName":"StreamingDistributionSummary" } }, "StreamingLoggingConfig":{ "type":"structure", "required":[ "Enabled", "Bucket", "Prefix" ], "members":{ "Enabled":{"shape":"boolean"}, "Bucket":{"shape":"string"}, "Prefix":{"shape":"string"} } }, "TooManyCacheBehaviors":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCertificates":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCloudFrontOriginAccessIdentities":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCookieNamesInWhiteList":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyDistributionCNAMEs":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyDistributions":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyHeadersInForwardedValues":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyInvalidationsInProgress":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyOriginCustomHeaders":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyOrigins":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyStreamingDistributionCNAMEs":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyStreamingDistributions":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyTrustedSigners":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrustedSignerDoesNotExist":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrustedSigners":{ "type":"structure", "required":[ "Enabled", "Quantity" ], "members":{ "Enabled":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"AwsAccountNumberList"} } }, "UpdateCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":[ "CloudFrontOriginAccessIdentityConfig", "Id" ], "members":{ "CloudFrontOriginAccessIdentityConfig":{ "shape":"CloudFrontOriginAccessIdentityConfig", "locationName":"CloudFrontOriginAccessIdentityConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-01-13/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "UpdateCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "UpdateDistributionRequest":{ "type":"structure", "required":[ "DistributionConfig", "Id" ], "members":{ "DistributionConfig":{ "shape":"DistributionConfig", "locationName":"DistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-01-13/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"DistributionConfig" }, "UpdateDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "UpdateStreamingDistributionRequest":{ "type":"structure", "required":[ "StreamingDistributionConfig", "Id" ], "members":{ "StreamingDistributionConfig":{ "shape":"StreamingDistributionConfig", "locationName":"StreamingDistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-01-13/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"StreamingDistributionConfig" }, "UpdateStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "ViewerCertificate":{ "type":"structure", "members":{ "Certificate":{"shape":"string"}, "CertificateSource":{"shape":"CertificateSource"}, "SSLSupportMethod":{"shape":"SSLSupportMethod"}, "MinimumProtocolVersion":{"shape":"MinimumProtocolVersion"}, "IAMCertificateId":{ "shape":"string", "deprecated":true }, "CloudFrontDefaultCertificate":{ "shape":"boolean", "deprecated":true } } }, "ViewerProtocolPolicy":{ "type":"string", "enum":[ "allow-all", "https-only", "redirect-to-https" ] }, "boolean":{"type":"boolean"}, "integer":{"type":"integer"}, "long":{"type":"long"}, "string":{"type":"string"}, "timestamp":{"type":"timestamp"} } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-01-13/docs-2.json000066400000000000000000002574511300374646400232100ustar00rootroot00000000000000{ "version": "2.0", "service": null, "operations": { "CreateCloudFrontOriginAccessIdentity": "Create a new origin access identity.", "CreateDistribution": "Create a new distribution.", "CreateInvalidation": "Create a new invalidation.", "CreateStreamingDistribution": "Create a new streaming distribution.", "DeleteCloudFrontOriginAccessIdentity": "Delete an origin access identity.", "DeleteDistribution": "Delete a distribution.", "DeleteStreamingDistribution": "Delete a streaming distribution.", "GetCloudFrontOriginAccessIdentity": "Get the information about an origin access identity.", "GetCloudFrontOriginAccessIdentityConfig": "Get the configuration information about an origin access identity.", "GetDistribution": "Get the information about a distribution.", "GetDistributionConfig": "Get the configuration information about a distribution.", "GetInvalidation": "Get the information about an invalidation.", "GetStreamingDistribution": "Get the information about a streaming distribution.", "GetStreamingDistributionConfig": "Get the configuration information about a streaming distribution.", "ListCloudFrontOriginAccessIdentities": "List origin access identities.", "ListDistributions": "List distributions.", "ListDistributionsByWebACLId": "List the distributions that are associated with a specified AWS WAF web ACL.", "ListInvalidations": "List invalidation batches.", "ListStreamingDistributions": "List streaming distributions.", "UpdateCloudFrontOriginAccessIdentity": "Update an origin access identity.", "UpdateDistribution": "Update a distribution.", "UpdateStreamingDistribution": "Update a streaming distribution." }, "shapes": { "AccessDenied": { "base": "Access denied.", "refs": { } }, "ActiveTrustedSigners": { "base": "A complex type that lists the AWS accounts, if any, that you included in the TrustedSigners complex type for the default cache behavior or for any of the other cache behaviors for this distribution. These are accounts that you want to allow to create signed URLs for private content.", "refs": { "Distribution$ActiveTrustedSigners": "CloudFront automatically adds this element to the response only if you've set up the distribution to serve private content with signed URLs. The element lists the key pair IDs that CloudFront is aware of for each trusted signer. The Signer child element lists the AWS account number of the trusted signer (or an empty Self element if the signer is you). The Signer element also includes the IDs of any active key pairs associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create working signed URLs.", "StreamingDistribution$ActiveTrustedSigners": "CloudFront automatically adds this element to the response only if you've set up the distribution to serve private content with signed URLs. The element lists the key pair IDs that CloudFront is aware of for each trusted signer. The Signer child element lists the AWS account number of the trusted signer (or an empty Self element if the signer is you). The Signer element also includes the IDs of any active key pairs associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create working signed URLs." } }, "AliasList": { "base": null, "refs": { "Aliases$Items": "Optional: A complex type that contains CNAME elements, if any, for this distribution. If Quantity is 0, you can omit Items." } }, "Aliases": { "base": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "refs": { "DistributionConfig$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "DistributionSummary$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "StreamingDistributionConfig$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution.", "StreamingDistributionSummary$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution." } }, "AllowedMethods": { "base": "A complex type that controls which HTTP methods CloudFront processes and forwards to your Amazon S3 bucket or your custom origin. There are three choices: - CloudFront forwards only GET and HEAD requests. - CloudFront forwards only GET, HEAD and OPTIONS requests. - CloudFront forwards GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests. If you pick the third choice, you may need to restrict access to your Amazon S3 bucket or to your custom origin so users can't perform operations that you don't want them to. For example, you may not want users to have permission to delete objects from your origin.", "refs": { "CacheBehavior$AllowedMethods": null, "DefaultCacheBehavior$AllowedMethods": null } }, "AwsAccountNumberList": { "base": null, "refs": { "TrustedSigners$Items": "Optional: A complex type that contains trusted signers for this cache behavior. If Quantity is 0, you can omit Items." } }, "BatchTooLarge": { "base": null, "refs": { } }, "CNAMEAlreadyExists": { "base": null, "refs": { } }, "CacheBehavior": { "base": "A complex type that describes how CloudFront processes requests. You can create up to 10 cache behaviors.You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to distribute objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin will never be used. If you don't want to specify any cache behaviors, include only an empty CacheBehaviors element. Don't include an empty CacheBehavior element, or CloudFront returns a MalformedXML error. To delete all cache behaviors in an existing distribution, update the distribution configuration and include only an empty CacheBehaviors element. To add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution.", "refs": { "CacheBehaviorList$member": null } }, "CacheBehaviorList": { "base": null, "refs": { "CacheBehaviors$Items": "Optional: A complex type that contains cache behaviors for this distribution. If Quantity is 0, you can omit Items." } }, "CacheBehaviors": { "base": "A complex type that contains zero or more CacheBehavior elements.", "refs": { "DistributionConfig$CacheBehaviors": "A complex type that contains zero or more CacheBehavior elements.", "DistributionSummary$CacheBehaviors": "A complex type that contains zero or more CacheBehavior elements." } }, "CachedMethods": { "base": "A complex type that controls whether CloudFront caches the response to requests using the specified HTTP methods. There are two choices: - CloudFront caches responses to GET and HEAD requests. - CloudFront caches responses to GET, HEAD, and OPTIONS requests. If you pick the second choice for your S3 Origin, you may need to forward Access-Control-Request-Method, Access-Control-Request-Headers and Origin headers for the responses to be cached correctly.", "refs": { "AllowedMethods$CachedMethods": null } }, "CertificateSource": { "base": null, "refs": { "ViewerCertificate$CertificateSource": "If you want viewers to use HTTPS to request your objects and you're using the CloudFront domain name of your distribution in your object URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), set to \"cloudfront\". If you want viewers to use HTTPS to request your objects and you're using an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), you can use your own IAM or ACM certificate. To use an ACM certificate, set to \"acm\" and update the Certificate to the ACM certificate ARN. To use an IAM certificate, set to \"iam\" and update the Certificate to the IAM certificate identifier." } }, "CloudFrontOriginAccessIdentity": { "base": "CloudFront origin access identity.", "refs": { "CreateCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information.", "GetCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information.", "UpdateCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information." } }, "CloudFrontOriginAccessIdentityAlreadyExists": { "base": "If the CallerReference is a value you already sent in a previous request to create an identity but the content of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists error.", "refs": { } }, "CloudFrontOriginAccessIdentityConfig": { "base": "Origin access identity configuration.", "refs": { "CloudFrontOriginAccessIdentity$CloudFrontOriginAccessIdentityConfig": "The current configuration information for the identity.", "CreateCloudFrontOriginAccessIdentityRequest$CloudFrontOriginAccessIdentityConfig": "The origin access identity's configuration information.", "GetCloudFrontOriginAccessIdentityConfigResult$CloudFrontOriginAccessIdentityConfig": "The origin access identity's configuration information.", "UpdateCloudFrontOriginAccessIdentityRequest$CloudFrontOriginAccessIdentityConfig": "The identity's configuration information." } }, "CloudFrontOriginAccessIdentityInUse": { "base": null, "refs": { } }, "CloudFrontOriginAccessIdentityList": { "base": "The CloudFrontOriginAccessIdentityList type.", "refs": { "ListCloudFrontOriginAccessIdentitiesResult$CloudFrontOriginAccessIdentityList": "The CloudFrontOriginAccessIdentityList type." } }, "CloudFrontOriginAccessIdentitySummary": { "base": "Summary of the information about a CloudFront origin access identity.", "refs": { "CloudFrontOriginAccessIdentitySummaryList$member": null } }, "CloudFrontOriginAccessIdentitySummaryList": { "base": null, "refs": { "CloudFrontOriginAccessIdentityList$Items": "A complex type that contains one CloudFrontOriginAccessIdentitySummary element for each origin access identity that was created by the current AWS account." } }, "CookieNameList": { "base": null, "refs": { "CookieNames$Items": "Optional: A complex type that contains whitelisted cookies for this cache behavior. If Quantity is 0, you can omit Items." } }, "CookieNames": { "base": "A complex type that specifies the whitelisted cookies, if any, that you want CloudFront to forward to your origin that is associated with this cache behavior.", "refs": { "CookiePreference$WhitelistedNames": "A complex type that specifies the whitelisted cookies, if any, that you want CloudFront to forward to your origin that is associated with this cache behavior." } }, "CookiePreference": { "base": "A complex type that specifies the cookie preferences associated with this cache behavior.", "refs": { "ForwardedValues$Cookies": "A complex type that specifies how CloudFront handles cookies." } }, "CreateCloudFrontOriginAccessIdentityRequest": { "base": "The request to create a new origin access identity.", "refs": { } }, "CreateCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateDistributionRequest": { "base": "The request to create a new distribution.", "refs": { } }, "CreateDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateInvalidationRequest": { "base": "The request to create an invalidation.", "refs": { } }, "CreateInvalidationResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateStreamingDistributionRequest": { "base": "The request to create a new streaming distribution.", "refs": { } }, "CreateStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CustomErrorResponse": { "base": "A complex type that describes how you'd prefer CloudFront to respond to requests that result in either a 4xx or 5xx response. You can control whether a custom error page should be displayed, what the desired response code should be for this error page and how long should the error response be cached by CloudFront. If you don't want to specify any custom error responses, include only an empty CustomErrorResponses element. To delete all custom error responses in an existing distribution, update the distribution configuration and include only an empty CustomErrorResponses element. To add, change, or remove one or more custom error responses, update the distribution configuration and specify all of the custom error responses that you want to include in the updated distribution.", "refs": { "CustomErrorResponseList$member": null } }, "CustomErrorResponseList": { "base": null, "refs": { "CustomErrorResponses$Items": "Optional: A complex type that contains custom error responses for this distribution. If Quantity is 0, you can omit Items." } }, "CustomErrorResponses": { "base": "A complex type that contains zero or more CustomErrorResponse elements.", "refs": { "DistributionConfig$CustomErrorResponses": "A complex type that contains zero or more CustomErrorResponse elements.", "DistributionSummary$CustomErrorResponses": "A complex type that contains zero or more CustomErrorResponses elements." } }, "CustomHeaders": { "base": "A complex type that contains the list of Custom Headers for each origin.", "refs": { "Origin$CustomHeaders": "A complex type that contains information about the custom headers associated with this Origin." } }, "CustomOriginConfig": { "base": "A customer origin.", "refs": { "Origin$CustomOriginConfig": "A complex type that contains information about a custom origin. If the origin is an Amazon S3 bucket, use the S3OriginConfig element instead." } }, "DefaultCacheBehavior": { "base": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior.", "refs": { "DistributionConfig$DefaultCacheBehavior": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior.", "DistributionSummary$DefaultCacheBehavior": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior." } }, "DeleteCloudFrontOriginAccessIdentityRequest": { "base": "The request to delete a origin access identity.", "refs": { } }, "DeleteDistributionRequest": { "base": "The request to delete a distribution.", "refs": { } }, "DeleteStreamingDistributionRequest": { "base": "The request to delete a streaming distribution.", "refs": { } }, "Distribution": { "base": "A distribution.", "refs": { "CreateDistributionResult$Distribution": "The distribution's information.", "GetDistributionResult$Distribution": "The distribution's information.", "UpdateDistributionResult$Distribution": "The distribution's information." } }, "DistributionAlreadyExists": { "base": "The caller reference you attempted to create the distribution with is associated with another distribution.", "refs": { } }, "DistributionConfig": { "base": "A distribution Configuration.", "refs": { "CreateDistributionRequest$DistributionConfig": "The distribution's configuration information.", "Distribution$DistributionConfig": "The current configuration information for the distribution.", "GetDistributionConfigResult$DistributionConfig": "The distribution's configuration information.", "UpdateDistributionRequest$DistributionConfig": "The distribution's configuration information." } }, "DistributionList": { "base": "A distribution list.", "refs": { "ListDistributionsByWebACLIdResult$DistributionList": "The DistributionList type.", "ListDistributionsResult$DistributionList": "The DistributionList type." } }, "DistributionNotDisabled": { "base": null, "refs": { } }, "DistributionSummary": { "base": "A summary of the information for an Amazon CloudFront distribution.", "refs": { "DistributionSummaryList$member": null } }, "DistributionSummaryList": { "base": null, "refs": { "DistributionList$Items": "A complex type that contains one DistributionSummary element for each distribution that was created by the current AWS account." } }, "ForwardedValues": { "base": "A complex type that specifies how CloudFront handles query strings, cookies and headers.", "refs": { "CacheBehavior$ForwardedValues": "A complex type that specifies how CloudFront handles query strings, cookies and headers.", "DefaultCacheBehavior$ForwardedValues": "A complex type that specifies how CloudFront handles query strings, cookies and headers." } }, "GeoRestriction": { "base": "A complex type that controls the countries in which your content is distributed. For more information about geo restriction, go to Customizing Error Responses in the Amazon CloudFront Developer Guide. CloudFront determines the location of your users using MaxMind GeoIP databases. For information about the accuracy of these databases, see How accurate are your GeoIP databases? on the MaxMind website.", "refs": { "Restrictions$GeoRestriction": null } }, "GeoRestrictionType": { "base": null, "refs": { "GeoRestriction$RestrictionType": "The method that you want to use to restrict distribution of your content by country: - none: No geo restriction is enabled, meaning access to content is not restricted by client geo location. - blacklist: The Location elements specify the countries in which you do not want CloudFront to distribute your content. - whitelist: The Location elements specify the countries in which you want CloudFront to distribute your content." } }, "GetCloudFrontOriginAccessIdentityConfigRequest": { "base": "The request to get an origin access identity's configuration.", "refs": { } }, "GetCloudFrontOriginAccessIdentityConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetCloudFrontOriginAccessIdentityRequest": { "base": "The request to get an origin access identity's information.", "refs": { } }, "GetCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetDistributionConfigRequest": { "base": "The request to get a distribution configuration.", "refs": { } }, "GetDistributionConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetDistributionRequest": { "base": "The request to get a distribution's information.", "refs": { } }, "GetDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetInvalidationRequest": { "base": "The request to get an invalidation's information.", "refs": { } }, "GetInvalidationResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetStreamingDistributionConfigRequest": { "base": "To request to get a streaming distribution configuration.", "refs": { } }, "GetStreamingDistributionConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetStreamingDistributionRequest": { "base": "The request to get a streaming distribution's information.", "refs": { } }, "GetStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "HeaderList": { "base": null, "refs": { "Headers$Items": "Optional: A complex type that contains a Name element for each header that you want CloudFront to forward to the origin and to vary on for this cache behavior. If Quantity is 0, omit Items." } }, "Headers": { "base": "A complex type that specifies the headers that you want CloudFront to forward to the origin for this cache behavior. For the headers that you specify, CloudFront also caches separate versions of a given object based on the header values in viewer requests; this is known as varying on headers. For example, suppose viewer requests for logo.jpg contain a custom Product header that has a value of either Acme or Apex, and you configure CloudFront to vary on the Product header. CloudFront forwards the Product header to the origin and caches the response from the origin once for each header value.", "refs": { "ForwardedValues$Headers": "A complex type that specifies the Headers, if any, that you want CloudFront to vary upon for this cache behavior." } }, "IllegalUpdate": { "base": "Origin and CallerReference cannot be updated.", "refs": { } }, "InconsistentQuantities": { "base": "The value of Quantity and the size of Items do not match.", "refs": { } }, "InvalidArgument": { "base": "The argument is invalid.", "refs": { } }, "InvalidDefaultRootObject": { "base": "The default root object file name is too big or contains an invalid character.", "refs": { } }, "InvalidErrorCode": { "base": null, "refs": { } }, "InvalidForwardCookies": { "base": "Your request contains forward cookies option which doesn't match with the expectation for the whitelisted list of cookie names. Either list of cookie names has been specified when not allowed or list of cookie names is missing when expected.", "refs": { } }, "InvalidGeoRestrictionParameter": { "base": null, "refs": { } }, "InvalidHeadersForS3Origin": { "base": null, "refs": { } }, "InvalidIfMatchVersion": { "base": "The If-Match version is missing or not valid for the distribution.", "refs": { } }, "InvalidLocationCode": { "base": null, "refs": { } }, "InvalidMinimumProtocolVersion": { "base": null, "refs": { } }, "InvalidOrigin": { "base": "The Amazon S3 origin server specified does not refer to a valid Amazon S3 bucket.", "refs": { } }, "InvalidOriginAccessIdentity": { "base": "The origin access identity is not valid or doesn't exist.", "refs": { } }, "InvalidProtocolSettings": { "base": "You cannot specify SSLv3 as the minimum protocol version if you only want to support only clients that Support Server Name Indication (SNI).", "refs": { } }, "InvalidRelativePath": { "base": "The relative path is too big, is not URL-encoded, or does not begin with a slash (/).", "refs": { } }, "InvalidRequiredProtocol": { "base": "This operation requires the HTTPS protocol. Ensure that you specify the HTTPS protocol in your request, or omit the RequiredProtocols element from your distribution configuration.", "refs": { } }, "InvalidResponseCode": { "base": null, "refs": { } }, "InvalidTTLOrder": { "base": null, "refs": { } }, "InvalidViewerCertificate": { "base": null, "refs": { } }, "InvalidWebACLId": { "base": null, "refs": { } }, "Invalidation": { "base": "An invalidation.", "refs": { "CreateInvalidationResult$Invalidation": "The invalidation's information.", "GetInvalidationResult$Invalidation": "The invalidation's information." } }, "InvalidationBatch": { "base": "An invalidation batch.", "refs": { "CreateInvalidationRequest$InvalidationBatch": "The batch information for the invalidation.", "Invalidation$InvalidationBatch": "The current invalidation information for the batch request." } }, "InvalidationList": { "base": "An invalidation list.", "refs": { "ListInvalidationsResult$InvalidationList": "Information about invalidation batches." } }, "InvalidationSummary": { "base": "Summary of an invalidation request.", "refs": { "InvalidationSummaryList$member": null } }, "InvalidationSummaryList": { "base": null, "refs": { "InvalidationList$Items": "A complex type that contains one InvalidationSummary element for each invalidation batch that was created by the current AWS account." } }, "ItemSelection": { "base": null, "refs": { "CookiePreference$Forward": "Use this element to specify whether you want CloudFront to forward cookies to the origin that is associated with this cache behavior. You can specify all, none or whitelist. If you choose All, CloudFront forwards all cookies regardless of how many your application uses." } }, "KeyPairIdList": { "base": null, "refs": { "KeyPairIds$Items": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber." } }, "KeyPairIds": { "base": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber.", "refs": { "Signer$KeyPairIds": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber." } }, "ListCloudFrontOriginAccessIdentitiesRequest": { "base": "The request to list origin access identities.", "refs": { } }, "ListCloudFrontOriginAccessIdentitiesResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListDistributionsByWebACLIdRequest": { "base": "The request to list distributions that are associated with a specified AWS WAF web ACL.", "refs": { } }, "ListDistributionsByWebACLIdResult": { "base": "The response to a request to list the distributions that are associated with a specified AWS WAF web ACL.", "refs": { } }, "ListDistributionsRequest": { "base": "The request to list your distributions.", "refs": { } }, "ListDistributionsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListInvalidationsRequest": { "base": "The request to list invalidations.", "refs": { } }, "ListInvalidationsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListStreamingDistributionsRequest": { "base": "The request to list your streaming distributions.", "refs": { } }, "ListStreamingDistributionsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "LocationList": { "base": null, "refs": { "GeoRestriction$Items": "A complex type that contains a Location element for each country in which you want CloudFront either to distribute your content (whitelist) or not distribute your content (blacklist). The Location element is a two-letter, uppercase country code for a country that you want to include in your blacklist or whitelist. Include one Location element for each country. CloudFront and MaxMind both use ISO 3166 country codes. For the current list of countries and the corresponding codes, see ISO 3166-1-alpha-2 code on the International Organization for Standardization website. You can also refer to the country list in the CloudFront console, which includes both country names and codes." } }, "LoggingConfig": { "base": "A complex type that controls whether access logs are written for the distribution.", "refs": { "DistributionConfig$Logging": "A complex type that controls whether access logs are written for the distribution." } }, "Method": { "base": null, "refs": { "MethodsList$member": null } }, "MethodsList": { "base": null, "refs": { "AllowedMethods$Items": "A complex type that contains the HTTP methods that you want CloudFront to process and forward to your origin.", "CachedMethods$Items": "A complex type that contains the HTTP methods that you want CloudFront to cache responses to." } }, "MinimumProtocolVersion": { "base": null, "refs": { "ViewerCertificate$MinimumProtocolVersion": "Specify the minimum version of the SSL protocol that you want CloudFront to use, SSLv3 or TLSv1, for HTTPS connections. CloudFront will serve your objects only to browsers or devices that support at least the SSL version that you specify. The TLSv1 protocol is more secure, so we recommend that you specify SSLv3 only if your users are using browsers or devices that don't support TLSv1. If you're using a custom certificate (if you specify a value for IAMCertificateId) and if you're using dedicated IP (if you specify vip for SSLSupportMethod), you can choose SSLv3 or TLSv1 as the MinimumProtocolVersion. If you're using a custom certificate (if you specify a value for IAMCertificateId) and if you're using SNI (if you specify sni-only for SSLSupportMethod), you must specify TLSv1 for MinimumProtocolVersion." } }, "MissingBody": { "base": "This operation requires a body. Ensure that the body is present and the Content-Type header is set.", "refs": { } }, "NoSuchCloudFrontOriginAccessIdentity": { "base": "The specified origin access identity does not exist.", "refs": { } }, "NoSuchDistribution": { "base": "The specified distribution does not exist.", "refs": { } }, "NoSuchInvalidation": { "base": "The specified invalidation does not exist.", "refs": { } }, "NoSuchOrigin": { "base": "No origin exists with the specified Origin Id.", "refs": { } }, "NoSuchStreamingDistribution": { "base": "The specified streaming distribution does not exist.", "refs": { } }, "Origin": { "base": "A complex type that describes the Amazon S3 bucket or the HTTP server (for example, a web server) from which CloudFront gets your files.You must create at least one origin.", "refs": { "OriginList$member": null } }, "OriginCustomHeader": { "base": "A complex type that contains information related to a Header", "refs": { "OriginCustomHeadersList$member": null } }, "OriginCustomHeadersList": { "base": null, "refs": { "CustomHeaders$Items": "A complex type that contains the custom headers for this Origin." } }, "OriginList": { "base": null, "refs": { "Origins$Items": "A complex type that contains origins for this distribution." } }, "OriginProtocolPolicy": { "base": null, "refs": { "CustomOriginConfig$OriginProtocolPolicy": "The origin protocol policy to apply to your origin." } }, "OriginSslProtocols": { "base": "A complex type that contains the list of SSL/TLS protocols that you want CloudFront to use when communicating with your origin over HTTPS.", "refs": { "CustomOriginConfig$OriginSslProtocols": "The SSL/TLS protocols that you want CloudFront to use when communicating with your origin over HTTPS." } }, "Origins": { "base": "A complex type that contains information about origins for this distribution.", "refs": { "DistributionConfig$Origins": "A complex type that contains information about origins for this distribution.", "DistributionSummary$Origins": "A complex type that contains information about origins for this distribution." } }, "PathList": { "base": null, "refs": { "Paths$Items": "A complex type that contains a list of the objects that you want to invalidate." } }, "Paths": { "base": "A complex type that contains information about the objects that you want to invalidate.", "refs": { "InvalidationBatch$Paths": "The path of the object to invalidate. The path is relative to the distribution and must begin with a slash (/). You must enclose each invalidation object with the Path element tags. If the path includes non-ASCII characters or unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters. Do not URL encode any other characters in the path, or CloudFront will not invalidate the old version of the updated object." } }, "PreconditionFailed": { "base": "The precondition given in one or more of the request-header fields evaluated to false.", "refs": { } }, "PriceClass": { "base": null, "refs": { "DistributionConfig$PriceClass": "A complex type that contains information about price class for this distribution.", "DistributionSummary$PriceClass": null, "StreamingDistributionConfig$PriceClass": "A complex type that contains information about price class for this streaming distribution.", "StreamingDistributionSummary$PriceClass": null } }, "Restrictions": { "base": "A complex type that identifies ways in which you want to restrict distribution of your content.", "refs": { "DistributionConfig$Restrictions": null, "DistributionSummary$Restrictions": null } }, "S3Origin": { "base": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.", "refs": { "StreamingDistributionConfig$S3Origin": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.", "StreamingDistributionSummary$S3Origin": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution." } }, "S3OriginConfig": { "base": "A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead.", "refs": { "Origin$S3OriginConfig": "A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead." } }, "SSLSupportMethod": { "base": null, "refs": { "ViewerCertificate$SSLSupportMethod": "If you specify a value for IAMCertificateId, you must also specify how you want CloudFront to serve HTTPS requests. Valid values are vip and sni-only. If you specify vip, CloudFront uses dedicated IP addresses for your content and can respond to HTTPS requests from any viewer. However, you must request permission to use this feature, and you incur additional monthly charges. If you specify sni-only, CloudFront can only respond to HTTPS requests from viewers that support Server Name Indication (SNI). All modern browsers support SNI, but some browsers still in use don't support SNI. Do not specify a value for SSLSupportMethod if you specified true for CloudFrontDefaultCertificate." } }, "Signer": { "base": "A complex type that lists the AWS accounts that were included in the TrustedSigners complex type, as well as their active CloudFront key pair IDs, if any.", "refs": { "SignerList$member": null } }, "SignerList": { "base": null, "refs": { "ActiveTrustedSigners$Items": "A complex type that contains one Signer complex type for each unique trusted signer that is specified in the TrustedSigners complex type, including trusted signers in the default cache behavior and in all of the other cache behaviors." } }, "SslProtocol": { "base": null, "refs": { "SslProtocolsList$member": null } }, "SslProtocolsList": { "base": null, "refs": { "OriginSslProtocols$Items": "A complex type that contains one SslProtocol element for each SSL/TLS protocol that you want to allow CloudFront to use when establishing an HTTPS connection with this origin." } }, "StreamingDistribution": { "base": "A streaming distribution.", "refs": { "CreateStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information.", "GetStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information.", "UpdateStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information." } }, "StreamingDistributionAlreadyExists": { "base": null, "refs": { } }, "StreamingDistributionConfig": { "base": "The configuration for the streaming distribution.", "refs": { "CreateStreamingDistributionRequest$StreamingDistributionConfig": "The streaming distribution's configuration information.", "GetStreamingDistributionConfigResult$StreamingDistributionConfig": "The streaming distribution's configuration information.", "StreamingDistribution$StreamingDistributionConfig": "The current configuration information for the streaming distribution.", "UpdateStreamingDistributionRequest$StreamingDistributionConfig": "The streaming distribution's configuration information." } }, "StreamingDistributionList": { "base": "A streaming distribution list.", "refs": { "ListStreamingDistributionsResult$StreamingDistributionList": "The StreamingDistributionList type." } }, "StreamingDistributionNotDisabled": { "base": null, "refs": { } }, "StreamingDistributionSummary": { "base": "A summary of the information for an Amazon CloudFront streaming distribution.", "refs": { "StreamingDistributionSummaryList$member": null } }, "StreamingDistributionSummaryList": { "base": null, "refs": { "StreamingDistributionList$Items": "A complex type that contains one StreamingDistributionSummary element for each distribution that was created by the current AWS account." } }, "StreamingLoggingConfig": { "base": "A complex type that controls whether access logs are written for this streaming distribution.", "refs": { "StreamingDistributionConfig$Logging": "A complex type that controls whether access logs are written for the streaming distribution." } }, "TooManyCacheBehaviors": { "base": "You cannot create anymore cache behaviors for the distribution.", "refs": { } }, "TooManyCertificates": { "base": "You cannot create anymore custom ssl certificates.", "refs": { } }, "TooManyCloudFrontOriginAccessIdentities": { "base": "Processing your request would cause you to exceed the maximum number of origin access identities allowed.", "refs": { } }, "TooManyCookieNamesInWhiteList": { "base": "Your request contains more cookie names in the whitelist than are allowed per cache behavior.", "refs": { } }, "TooManyDistributionCNAMEs": { "base": "Your request contains more CNAMEs than are allowed per distribution.", "refs": { } }, "TooManyDistributions": { "base": "Processing your request would cause you to exceed the maximum number of distributions allowed.", "refs": { } }, "TooManyHeadersInForwardedValues": { "base": null, "refs": { } }, "TooManyInvalidationsInProgress": { "base": "You have exceeded the maximum number of allowable InProgress invalidation batch requests, or invalidation objects.", "refs": { } }, "TooManyOriginCustomHeaders": { "base": null, "refs": { } }, "TooManyOrigins": { "base": "You cannot create anymore origins for the distribution.", "refs": { } }, "TooManyStreamingDistributionCNAMEs": { "base": null, "refs": { } }, "TooManyStreamingDistributions": { "base": "Processing your request would cause you to exceed the maximum number of streaming distributions allowed.", "refs": { } }, "TooManyTrustedSigners": { "base": "Your request contains more trusted signers than are allowed per distribution.", "refs": { } }, "TrustedSignerDoesNotExist": { "base": "One or more of your trusted signers do not exist.", "refs": { } }, "TrustedSigners": { "base": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "refs": { "CacheBehavior$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "DefaultCacheBehavior$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "StreamingDistributionConfig$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "StreamingDistributionSummary$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution." } }, "UpdateCloudFrontOriginAccessIdentityRequest": { "base": "The request to update an origin access identity.", "refs": { } }, "UpdateCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "UpdateDistributionRequest": { "base": "The request to update a distribution.", "refs": { } }, "UpdateDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "UpdateStreamingDistributionRequest": { "base": "The request to update a streaming distribution.", "refs": { } }, "UpdateStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ViewerCertificate": { "base": "A complex type that contains information about viewer certificates for this distribution.", "refs": { "DistributionConfig$ViewerCertificate": null, "DistributionSummary$ViewerCertificate": null } }, "ViewerProtocolPolicy": { "base": null, "refs": { "CacheBehavior$ViewerProtocolPolicy": "Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. If you want CloudFront to allow end users to use any available protocol, specify allow-all. If you want CloudFront to require HTTPS, specify https. If you want CloudFront to respond to an HTTP request with an HTTP status code of 301 (Moved Permanently) and the HTTPS URL, specify redirect-to-https. The viewer then resubmits the request using the HTTPS URL.", "DefaultCacheBehavior$ViewerProtocolPolicy": "Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. If you want CloudFront to allow end users to use any available protocol, specify allow-all. If you want CloudFront to require HTTPS, specify https. If you want CloudFront to respond to an HTTP request with an HTTP status code of 301 (Moved Permanently) and the HTTPS URL, specify redirect-to-https. The viewer then resubmits the request using the HTTPS URL." } }, "boolean": { "base": null, "refs": { "ActiveTrustedSigners$Enabled": "Each active trusted signer.", "CacheBehavior$SmoothStreaming": "Indicates whether you want to distribute media files in Microsoft Smooth Streaming format using the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "CacheBehavior$Compress": "Whether you want CloudFront to automatically compress content for web requests that include Accept-Encoding: gzip in the request header. If so, specify true; if not, specify false. CloudFront compresses files larger than 1000 bytes and less than 1 megabyte for both Amazon S3 and custom origins. When a CloudFront edge location is unusually busy, some files might not be compressed. The value of the Content-Type header must be on the list of file types that CloudFront will compress. For the current list, see Serving Compressed Content in the Amazon CloudFront Developer Guide. If you configure CloudFront to compress content, CloudFront removes the ETag response header from the objects that it compresses. The ETag header indicates that the version in a CloudFront edge cache is identical to the version on the origin server, but after compression the two versions are no longer identical. As a result, for compressed objects, CloudFront can't use the ETag header to determine whether an expired object in the CloudFront edge cache is still the latest version.", "CloudFrontOriginAccessIdentityList$IsTruncated": "A flag that indicates whether more origin access identities remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more items in the list.", "DefaultCacheBehavior$SmoothStreaming": "Indicates whether you want to distribute media files in Microsoft Smooth Streaming format using the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "DefaultCacheBehavior$Compress": "Whether you want CloudFront to automatically compress content for web requests that include Accept-Encoding: gzip in the request header. If so, specify true; if not, specify false. CloudFront compresses files larger than 1000 bytes and less than 1 megabyte for both Amazon S3 and custom origins. When a CloudFront edge location is unusually busy, some files might not be compressed. The value of the Content-Type header must be on the list of file types that CloudFront will compress. For the current list, see Serving Compressed Content in the Amazon CloudFront Developer Guide. If you configure CloudFront to compress content, CloudFront removes the ETag response header from the objects that it compresses. The ETag header indicates that the version in a CloudFront edge cache is identical to the version on the origin server, but after compression the two versions are no longer identical. As a result, for compressed objects, CloudFront can't use the ETag header to determine whether an expired object in the CloudFront edge cache is still the latest version.", "DistributionConfig$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "DistributionList$IsTruncated": "A flag that indicates whether more distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.", "DistributionSummary$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "ForwardedValues$QueryString": "Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "InvalidationList$IsTruncated": "A flag that indicates whether more invalidation batch requests remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more invalidation batches in the list.", "LoggingConfig$Enabled": "Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you do not want to enable logging when you create a distribution or if you want to disable logging for an existing distribution, specify false for Enabled, and specify empty Bucket and Prefix elements. If you specify false for Enabled but you specify values for Bucket, prefix and IncludeCookies, the values are automatically deleted.", "LoggingConfig$IncludeCookies": "Specifies whether you want CloudFront to include cookies in access logs, specify true for IncludeCookies. If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you do not want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify false for IncludeCookies.", "StreamingDistributionConfig$Enabled": "Whether the streaming distribution is enabled to accept end user requests for content.", "StreamingDistributionList$IsTruncated": "A flag that indicates whether more streaming distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.", "StreamingDistributionSummary$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "StreamingLoggingConfig$Enabled": "Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you do not want to enable logging when you create a streaming distribution or if you want to disable logging for an existing streaming distribution, specify false for Enabled, and specify empty Bucket and Prefix elements. If you specify false for Enabled but you specify values for Bucket and Prefix, the values are automatically deleted.", "TrustedSigners$Enabled": "Specifies whether you want to require end users to use signed URLs to access the files specified by PathPattern and TargetOriginId.", "ViewerCertificate$CloudFrontDefaultCertificate": "Note: this field is deprecated. Please use \"cloudfront\" as CertificateSource and omit specifying a Certificate. If you want viewers to use HTTPS to request your objects and you're using the CloudFront domain name of your distribution in your object URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), set to true. Omit this value if you are setting an IAMCertificateId." } }, "integer": { "base": null, "refs": { "ActiveTrustedSigners$Quantity": "The number of unique trusted signers included in all cache behaviors. For example, if three cache behaviors all list the same three AWS accounts, the value of Quantity for ActiveTrustedSigners will be 3.", "Aliases$Quantity": "The number of CNAMEs, if any, for this distribution.", "AllowedMethods$Quantity": "The number of HTTP methods that you want CloudFront to forward to your origin. Valid values are 2 (for GET and HEAD requests), 3 (for GET, HEAD and OPTIONS requests) and 7 (for GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests).", "CacheBehaviors$Quantity": "The number of cache behaviors for this distribution.", "CachedMethods$Quantity": "The number of HTTP methods for which you want CloudFront to cache responses. Valid values are 2 (for caching responses to GET and HEAD requests) and 3 (for caching responses to GET, HEAD, and OPTIONS requests).", "CloudFrontOriginAccessIdentityList$MaxItems": "The value you provided for the MaxItems request parameter.", "CloudFrontOriginAccessIdentityList$Quantity": "The number of CloudFront origin access identities that were created by the current AWS account.", "CookieNames$Quantity": "The number of whitelisted cookies for this cache behavior.", "CustomErrorResponse$ErrorCode": "The 4xx or 5xx HTTP status code that you want to customize. For a list of HTTP status codes that you can customize, see CloudFront documentation.", "CustomErrorResponses$Quantity": "The number of custom error responses for this distribution.", "CustomHeaders$Quantity": "The number of custom headers for this origin.", "CustomOriginConfig$HTTPPort": "The HTTP port the custom origin listens on.", "CustomOriginConfig$HTTPSPort": "The HTTPS port the custom origin listens on.", "Distribution$InProgressInvalidationBatches": "The number of invalidation batches currently in progress.", "DistributionList$MaxItems": "The value you provided for the MaxItems request parameter.", "DistributionList$Quantity": "The number of distributions that were created by the current AWS account.", "GeoRestriction$Quantity": "When geo restriction is enabled, this is the number of countries in your whitelist or blacklist. Otherwise, when it is not enabled, Quantity is 0, and you can omit Items.", "Headers$Quantity": "The number of different headers that you want CloudFront to forward to the origin and to vary on for this cache behavior. The maximum number of headers that you can specify by name is 10. If you want CloudFront to forward all headers to the origin and vary on all of them, specify 1 for Quantity and * for Name. If you don't want CloudFront to forward any additional headers to the origin or to vary on any headers, specify 0 for Quantity and omit Items.", "InvalidationList$MaxItems": "The value you provided for the MaxItems request parameter.", "InvalidationList$Quantity": "The number of invalidation batches that were created by the current AWS account.", "KeyPairIds$Quantity": "The number of active CloudFront key pairs for AwsAccountNumber.", "OriginSslProtocols$Quantity": "The number of SSL/TLS protocols that you want to allow CloudFront to use when establishing an HTTPS connection with this origin.", "Origins$Quantity": "The number of origins for this distribution.", "Paths$Quantity": "The number of objects that you want to invalidate.", "StreamingDistributionList$MaxItems": "The value you provided for the MaxItems request parameter.", "StreamingDistributionList$Quantity": "The number of streaming distributions that were created by the current AWS account.", "TrustedSigners$Quantity": "The number of trusted signers for this cache behavior." } }, "long": { "base": null, "refs": { "CacheBehavior$MinTTL": "The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CacheBehavior$DefaultTTL": "If you don't configure your origin to add a Cache-Control max-age directive or an Expires header, DefaultTTL is the default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CacheBehavior$MaxTTL": "The maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CustomErrorResponse$ErrorCachingMinTTL": "The minimum amount of time you want HTTP error codes to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. You can specify a value from 0 to 31,536,000.", "DefaultCacheBehavior$MinTTL": "The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "DefaultCacheBehavior$DefaultTTL": "If you don't configure your origin to add a Cache-Control max-age directive or an Expires header, DefaultTTL is the default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "DefaultCacheBehavior$MaxTTL": "The maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years)." } }, "string": { "base": null, "refs": { "AccessDenied$Message": null, "AliasList$member": null, "AwsAccountNumberList$member": null, "BatchTooLarge$Message": null, "CNAMEAlreadyExists$Message": null, "CacheBehavior$PathPattern": "The pattern (for example, images/*.jpg) that specifies which requests you want this cache behavior to apply to. When CloudFront receives an end-user request, the requested path is compared with path patterns in the order in which cache behaviors are listed in the distribution. The path pattern for the default cache behavior is * and cannot be changed. If the request for an object does not match the path pattern for any cache behaviors, CloudFront applies the behavior in the default cache behavior.", "CacheBehavior$TargetOriginId": "The value of ID for the origin that you want CloudFront to route requests to when a request matches the path pattern either for a cache behavior or for the default cache behavior.", "CloudFrontOriginAccessIdentity$Id": "The ID for the origin access identity. For example: E74FTE3AJFJ256A.", "CloudFrontOriginAccessIdentity$S3CanonicalUserId": "The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin access identity read permission to an object in Amazon S3.", "CloudFrontOriginAccessIdentityAlreadyExists$Message": null, "CloudFrontOriginAccessIdentityConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the CloudFrontOriginAccessIdentityConfig object), a new origin access identity is created. If the CallerReference is a value you already sent in a previous request to create an identity, and the content of the CloudFrontOriginAccessIdentityConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create an identity but the content of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists error.", "CloudFrontOriginAccessIdentityConfig$Comment": "Any comments you want to include about the origin access identity.", "CloudFrontOriginAccessIdentityInUse$Message": null, "CloudFrontOriginAccessIdentityList$Marker": "The value you provided for the Marker request parameter.", "CloudFrontOriginAccessIdentityList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your origin access identities where they left off.", "CloudFrontOriginAccessIdentitySummary$Id": "The ID for the origin access identity. For example: E74FTE3AJFJ256A.", "CloudFrontOriginAccessIdentitySummary$S3CanonicalUserId": "The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin access identity read permission to an object in Amazon S3.", "CloudFrontOriginAccessIdentitySummary$Comment": "The comment for this origin access identity, as originally specified when created.", "CookieNameList$member": null, "CreateCloudFrontOriginAccessIdentityResult$Location": "The fully qualified URI of the new origin access identity just created. For example: https://cloudfront.amazonaws.com/2010-11-01/origin-access-identity/cloudfront/E74FTE3AJFJ256A.", "CreateCloudFrontOriginAccessIdentityResult$ETag": "The current version of the origin access identity created.", "CreateDistributionResult$Location": "The fully qualified URI of the new distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5.", "CreateDistributionResult$ETag": "The current version of the distribution created.", "CreateInvalidationRequest$DistributionId": "The distribution's id.", "CreateInvalidationResult$Location": "The fully qualified URI of the distribution and invalidation batch request, including the Invalidation ID.", "CreateStreamingDistributionResult$Location": "The fully qualified URI of the new streaming distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8.", "CreateStreamingDistributionResult$ETag": "The current version of the streaming distribution created.", "CustomErrorResponse$ResponsePagePath": "The path of the custom error page (for example, /custom_404.html). The path is relative to the distribution and must begin with a slash (/). If the path includes any non-ASCII characters or unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters. Do not URL encode any other characters in the path, or CloudFront will not return the custom error page to the viewer.", "CustomErrorResponse$ResponseCode": "The HTTP status code that you want CloudFront to return with the custom error page to the viewer. For a list of HTTP status codes that you can replace, see CloudFront Documentation.", "DefaultCacheBehavior$TargetOriginId": "The value of ID for the origin that you want CloudFront to route requests to when a request matches the path pattern either for a cache behavior or for the default cache behavior.", "DeleteCloudFrontOriginAccessIdentityRequest$Id": "The origin access identity's id.", "DeleteCloudFrontOriginAccessIdentityRequest$IfMatch": "The value of the ETag header you received from a previous GET or PUT request. For example: E2QWRUHAPOMQZL.", "DeleteDistributionRequest$Id": "The distribution id.", "DeleteDistributionRequest$IfMatch": "The value of the ETag header you received when you disabled the distribution. For example: E2QWRUHAPOMQZL.", "DeleteStreamingDistributionRequest$Id": "The distribution id.", "DeleteStreamingDistributionRequest$IfMatch": "The value of the ETag header you received when you disabled the streaming distribution. For example: E2QWRUHAPOMQZL.", "Distribution$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "Distribution$Status": "This response element indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "Distribution$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "DistributionAlreadyExists$Message": null, "DistributionConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the DistributionConfig object), a new distribution is created. If the CallerReference is a value you already sent in a previous request to create a distribution, and the content of the DistributionConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a distribution but the content of the DistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.", "DistributionConfig$DefaultRootObject": "The object that you want CloudFront to return (for example, index.html) when an end user requests the root URL for your distribution (http://www.example.com) instead of an object in your distribution (http://www.example.com/index.html). Specifying a default root object avoids exposing the contents of your distribution. If you don't want to specify a default root object when you create a distribution, include an empty DefaultRootObject element. To delete the default root object from an existing distribution, update the distribution configuration and include an empty DefaultRootObject element. To replace the default root object, update the distribution configuration and specify the new object.", "DistributionConfig$Comment": "Any comments you want to include about the distribution.", "DistributionConfig$WebACLId": "(Optional) If you're using AWS WAF to filter CloudFront requests, the Id of the AWS WAF web ACL that is associated with the distribution.", "DistributionList$Marker": "The value you provided for the Marker request parameter.", "DistributionList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your distributions where they left off.", "DistributionNotDisabled$Message": null, "DistributionSummary$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "DistributionSummary$Status": "This response element indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "DistributionSummary$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "DistributionSummary$Comment": "The comment originally specified when this distribution was created.", "DistributionSummary$WebACLId": "The Web ACL Id (if any) associated with the distribution.", "GetCloudFrontOriginAccessIdentityConfigRequest$Id": "The identity's id.", "GetCloudFrontOriginAccessIdentityConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetCloudFrontOriginAccessIdentityRequest$Id": "The identity's id.", "GetCloudFrontOriginAccessIdentityResult$ETag": "The current version of the origin access identity's information. For example: E2QWRUHAPOMQZL.", "GetDistributionConfigRequest$Id": "The distribution's id.", "GetDistributionConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetDistributionRequest$Id": "The distribution's id.", "GetDistributionResult$ETag": "The current version of the distribution's information. For example: E2QWRUHAPOMQZL.", "GetInvalidationRequest$DistributionId": "The distribution's id.", "GetInvalidationRequest$Id": "The invalidation's id.", "GetStreamingDistributionConfigRequest$Id": "The streaming distribution's id.", "GetStreamingDistributionConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetStreamingDistributionRequest$Id": "The streaming distribution's id.", "GetStreamingDistributionResult$ETag": "The current version of the streaming distribution's information. For example: E2QWRUHAPOMQZL.", "HeaderList$member": null, "IllegalUpdate$Message": null, "InconsistentQuantities$Message": null, "InvalidArgument$Message": null, "InvalidDefaultRootObject$Message": null, "InvalidErrorCode$Message": null, "InvalidForwardCookies$Message": null, "InvalidGeoRestrictionParameter$Message": null, "InvalidHeadersForS3Origin$Message": null, "InvalidIfMatchVersion$Message": null, "InvalidLocationCode$Message": null, "InvalidMinimumProtocolVersion$Message": null, "InvalidOrigin$Message": null, "InvalidOriginAccessIdentity$Message": null, "InvalidProtocolSettings$Message": null, "InvalidRelativePath$Message": null, "InvalidRequiredProtocol$Message": null, "InvalidResponseCode$Message": null, "InvalidTTLOrder$Message": null, "InvalidViewerCertificate$Message": null, "InvalidWebACLId$Message": null, "Invalidation$Id": "The identifier for the invalidation request. For example: IDFDVBD632BHDS5.", "Invalidation$Status": "The status of the invalidation request. When the invalidation batch is finished, the status is Completed.", "InvalidationBatch$CallerReference": "A unique name that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the Path object), a new distribution is created. If the CallerReference is a value you already sent in a previous request to create an invalidation batch, and the content of each Path element is identical to the original request, the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a distribution but the content of any Path is different from the original request, CloudFront returns an InvalidationBatchAlreadyExists error.", "InvalidationList$Marker": "The value you provided for the Marker request parameter.", "InvalidationList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your invalidation batches where they left off.", "InvalidationSummary$Id": "The unique ID for an invalidation request.", "InvalidationSummary$Status": "The status of an invalidation request.", "KeyPairIdList$member": null, "ListCloudFrontOriginAccessIdentitiesRequest$Marker": "Use this when paginating results to indicate where to begin in your list of origin access identities. The results include identities in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last identity on that page).", "ListCloudFrontOriginAccessIdentitiesRequest$MaxItems": "The maximum number of origin access identities you want in the response body.", "ListDistributionsByWebACLIdRequest$Marker": "Use Marker and MaxItems to control pagination of results. If you have more than MaxItems distributions that satisfy the request, the response includes a NextMarker element. To get the next page of results, submit another request. For the value of Marker, specify the value of NextMarker from the last response. (For the first request, omit Marker.)", "ListDistributionsByWebACLIdRequest$MaxItems": "The maximum number of distributions that you want CloudFront to return in the response body. The maximum and default values are both 100.", "ListDistributionsByWebACLIdRequest$WebACLId": "The Id of the AWS WAF web ACL for which you want to list the associated distributions. If you specify \"null\" for the Id, the request returns a list of the distributions that aren't associated with a web ACL.", "ListDistributionsRequest$Marker": "Use Marker and MaxItems to control pagination of results. If you have more than MaxItems distributions that satisfy the request, the response includes a NextMarker element. To get the next page of results, submit another request. For the value of Marker, specify the value of NextMarker from the last response. (For the first request, omit Marker.)", "ListDistributionsRequest$MaxItems": "The maximum number of distributions that you want CloudFront to return in the response body. The maximum and default values are both 100.", "ListInvalidationsRequest$DistributionId": "The distribution's id.", "ListInvalidationsRequest$Marker": "Use this parameter when paginating results to indicate where to begin in your list of invalidation batches. Because the results are returned in decreasing order from most recent to oldest, the most recent results are on the first page, the second page will contain earlier results, and so on. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response. This value is the same as the ID of the last invalidation batch on that page.", "ListInvalidationsRequest$MaxItems": "The maximum number of invalidation batches you want in the response body.", "ListStreamingDistributionsRequest$Marker": "Use this when paginating results to indicate where to begin in your list of streaming distributions. The results include distributions in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last distribution on that page).", "ListStreamingDistributionsRequest$MaxItems": "The maximum number of streaming distributions you want in the response body.", "LocationList$member": null, "LoggingConfig$Bucket": "The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.", "LoggingConfig$Prefix": "An optional string that you want CloudFront to prefix to the access log filenames for this distribution, for example, myprefix/. If you want to enable logging, but you do not want to specify a prefix, you still must include an empty Prefix element in the Logging element.", "MissingBody$Message": null, "NoSuchCloudFrontOriginAccessIdentity$Message": null, "NoSuchDistribution$Message": null, "NoSuchInvalidation$Message": null, "NoSuchOrigin$Message": null, "NoSuchStreamingDistribution$Message": null, "Origin$Id": "A unique identifier for the origin. The value of Id must be unique within the distribution. You use the value of Id when you create a cache behavior. The Id identifies the origin that CloudFront routes a request to when the request matches the path pattern for that cache behavior.", "Origin$DomainName": "Amazon S3 origins: The DNS name of the Amazon S3 bucket from which you want CloudFront to get objects for this origin, for example, myawsbucket.s3.amazonaws.com. Custom origins: The DNS domain name for the HTTP server from which you want CloudFront to get objects for this origin, for example, www.example.com.", "Origin$OriginPath": "An optional element that causes CloudFront to request your content from a directory in your Amazon S3 bucket or your custom origin. When you include the OriginPath element, specify the directory name, beginning with a /. CloudFront appends the directory name to the value of DomainName.", "OriginCustomHeader$HeaderName": "The header's name.", "OriginCustomHeader$HeaderValue": "The header's value.", "PathList$member": null, "PreconditionFailed$Message": null, "S3Origin$DomainName": "The DNS name of the S3 origin.", "S3Origin$OriginAccessIdentity": "Your S3 origin's origin access identity.", "S3OriginConfig$OriginAccessIdentity": "The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that end users can only access objects in an Amazon S3 bucket through CloudFront. If you want end users to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty OriginAccessIdentity element. To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty OriginAccessIdentity element. To replace the origin access identity, update the distribution configuration and specify the new origin access identity. Use the format origin-access-identity/cloudfront/Id where Id is the value that CloudFront returned in the Id element when you created the origin access identity.", "Signer$AwsAccountNumber": "Specifies an AWS account that can create signed URLs. Values: self, which indicates that the AWS account that was used to create the distribution can created signed URLs, or an AWS account number. Omit the dashes in the account number.", "StreamingDistribution$Id": "The identifier for the streaming distribution. For example: EGTXBD79H29TRA8.", "StreamingDistribution$Status": "The current status of the streaming distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "StreamingDistribution$DomainName": "The domain name corresponding to the streaming distribution. For example: s5c39gqb8ow64r.cloudfront.net.", "StreamingDistributionAlreadyExists$Message": null, "StreamingDistributionConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the StreamingDistributionConfig object), a new streaming distribution is created. If the CallerReference is a value you already sent in a previous request to create a streaming distribution, and the content of the StreamingDistributionConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a streaming distribution but the content of the StreamingDistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.", "StreamingDistributionConfig$Comment": "Any comments you want to include about the streaming distribution.", "StreamingDistributionList$Marker": "The value you provided for the Marker request parameter.", "StreamingDistributionList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your streaming distributions where they left off.", "StreamingDistributionNotDisabled$Message": null, "StreamingDistributionSummary$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "StreamingDistributionSummary$Status": "Indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "StreamingDistributionSummary$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "StreamingDistributionSummary$Comment": "The comment originally specified when this distribution was created.", "StreamingLoggingConfig$Bucket": "The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.", "StreamingLoggingConfig$Prefix": "An optional string that you want CloudFront to prefix to the access log filenames for this streaming distribution, for example, myprefix/. If you want to enable logging, but you do not want to specify a prefix, you still must include an empty Prefix element in the Logging element.", "TooManyCacheBehaviors$Message": null, "TooManyCertificates$Message": null, "TooManyCloudFrontOriginAccessIdentities$Message": null, "TooManyCookieNamesInWhiteList$Message": null, "TooManyDistributionCNAMEs$Message": null, "TooManyDistributions$Message": null, "TooManyHeadersInForwardedValues$Message": null, "TooManyInvalidationsInProgress$Message": null, "TooManyOriginCustomHeaders$Message": null, "TooManyOrigins$Message": null, "TooManyStreamingDistributionCNAMEs$Message": null, "TooManyStreamingDistributions$Message": null, "TooManyTrustedSigners$Message": null, "TrustedSignerDoesNotExist$Message": null, "UpdateCloudFrontOriginAccessIdentityRequest$Id": "The identity's id.", "UpdateCloudFrontOriginAccessIdentityRequest$IfMatch": "The value of the ETag header you received when retrieving the identity's configuration. For example: E2QWRUHAPOMQZL.", "UpdateCloudFrontOriginAccessIdentityResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "UpdateDistributionRequest$Id": "The distribution's id.", "UpdateDistributionRequest$IfMatch": "The value of the ETag header you received when retrieving the distribution's configuration. For example: E2QWRUHAPOMQZL.", "UpdateDistributionResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "UpdateStreamingDistributionRequest$Id": "The streaming distribution's id.", "UpdateStreamingDistributionRequest$IfMatch": "The value of the ETag header you received when retrieving the streaming distribution's configuration. For example: E2QWRUHAPOMQZL.", "UpdateStreamingDistributionResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "ViewerCertificate$Certificate": "If you want viewers to use HTTPS to request your objects and you're using an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), you can use your own IAM or ACM certificate. For ACM, set to the ACM certificate ARN. For IAM, set to the IAM certificate identifier.", "ViewerCertificate$IAMCertificateId": "Note: this field is deprecated. Please use \"iam\" as CertificateSource and specify the IAM certificate Id as the Certificate. If you want viewers to use HTTPS to request your objects and you're using an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), specify the IAM certificate identifier of the custom viewer certificate for this distribution. Specify either this value or CloudFrontDefaultCertificate." } }, "timestamp": { "base": null, "refs": { "Distribution$LastModifiedTime": "The date and time the distribution was last modified.", "DistributionSummary$LastModifiedTime": "The date and time the distribution was last modified.", "Invalidation$CreateTime": "The date and time the invalidation request was first made.", "InvalidationSummary$CreateTime": null, "StreamingDistribution$LastModifiedTime": "The date and time the distribution was last modified.", "StreamingDistributionSummary$LastModifiedTime": "The date and time the distribution was last modified." } } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-01-13/examples-1.json000066400000000000000000000000541300374646400240560ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-01-13/paginators-1.json000066400000000000000000000021461300374646400244130ustar00rootroot00000000000000{ "pagination": { "ListCloudFrontOriginAccessIdentities": { "input_token": "Marker", "output_token": "CloudFrontOriginAccessIdentityList.NextMarker", "limit_key": "MaxItems", "more_results": "CloudFrontOriginAccessIdentityList.IsTruncated", "result_key": "CloudFrontOriginAccessIdentityList.Items" }, "ListDistributions": { "input_token": "Marker", "output_token": "DistributionList.NextMarker", "limit_key": "MaxItems", "more_results": "DistributionList.IsTruncated", "result_key": "DistributionList.Items" }, "ListInvalidations": { "input_token": "Marker", "output_token": "InvalidationList.NextMarker", "limit_key": "MaxItems", "more_results": "InvalidationList.IsTruncated", "result_key": "InvalidationList.Items" }, "ListStreamingDistributions": { "input_token": "Marker", "output_token": "StreamingDistributionList.NextMarker", "limit_key": "MaxItems", "more_results": "StreamingDistributionList.IsTruncated", "result_key": "StreamingDistributionList.Items" } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-01-13/waiters-2.json000066400000000000000000000021601300374646400237170ustar00rootroot00000000000000{ "version": 2, "waiters": { "DistributionDeployed": { "delay": 60, "operation": "GetDistribution", "maxAttempts": 25, "description": "Wait until a distribution is deployed.", "acceptors": [ { "expected": "Deployed", "matcher": "path", "state": "success", "argument": "Status" } ] }, "InvalidationCompleted": { "delay": 20, "operation": "GetInvalidation", "maxAttempts": 30, "description": "Wait until an invalidation has completed.", "acceptors": [ { "expected": "Completed", "matcher": "path", "state": "success", "argument": "Status" } ] }, "StreamingDistributionDeployed": { "delay": 60, "operation": "GetStreamingDistribution", "maxAttempts": 25, "description": "Wait until a streaming distribution is deployed.", "acceptors": [ { "expected": "Deployed", "matcher": "path", "state": "success", "argument": "Status" } ] } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-01-28/000077500000000000000000000000001300374646400212165ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudfront/2016-01-28/api-2.json000066400000000000000000001647441300374646400230410ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2016-01-28", "endpointPrefix":"cloudfront", "globalEndpoint":"cloudfront.amazonaws.com", "protocol":"rest-xml", "serviceAbbreviation":"CloudFront", "serviceFullName":"Amazon CloudFront", "signatureVersion":"v4" }, "operations":{ "CreateCloudFrontOriginAccessIdentity":{ "name":"CreateCloudFrontOriginAccessIdentity2016_01_28", "http":{ "method":"POST", "requestUri":"/2016-01-28/origin-access-identity/cloudfront", "responseCode":201 }, "input":{"shape":"CreateCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"CreateCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"CloudFrontOriginAccessIdentityAlreadyExists"}, {"shape":"MissingBody"}, {"shape":"TooManyCloudFrontOriginAccessIdentities"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "CreateDistribution":{ "name":"CreateDistribution2016_01_28", "http":{ "method":"POST", "requestUri":"/2016-01-28/distribution", "responseCode":201 }, "input":{"shape":"CreateDistributionRequest"}, "output":{"shape":"CreateDistributionResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"DistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InvalidViewerCertificate"}, {"shape":"InvalidMinimumProtocolVersion"}, {"shape":"MissingBody"}, {"shape":"TooManyDistributionCNAMEs"}, {"shape":"TooManyDistributions"}, {"shape":"InvalidDefaultRootObject"}, {"shape":"InvalidRelativePath"}, {"shape":"InvalidErrorCode"}, {"shape":"InvalidResponseCode"}, {"shape":"InvalidArgument"}, {"shape":"InvalidRequiredProtocol"}, {"shape":"NoSuchOrigin"}, {"shape":"TooManyOrigins"}, {"shape":"TooManyCacheBehaviors"}, {"shape":"TooManyCookieNamesInWhiteList"}, {"shape":"InvalidForwardCookies"}, {"shape":"TooManyHeadersInForwardedValues"}, {"shape":"InvalidHeadersForS3Origin"}, {"shape":"InconsistentQuantities"}, {"shape":"TooManyCertificates"}, {"shape":"InvalidLocationCode"}, {"shape":"InvalidGeoRestrictionParameter"}, {"shape":"InvalidProtocolSettings"}, {"shape":"InvalidTTLOrder"}, {"shape":"InvalidWebACLId"}, {"shape":"TooManyOriginCustomHeaders"} ] }, "CreateInvalidation":{ "name":"CreateInvalidation2016_01_28", "http":{ "method":"POST", "requestUri":"/2016-01-28/distribution/{DistributionId}/invalidation", "responseCode":201 }, "input":{"shape":"CreateInvalidationRequest"}, "output":{"shape":"CreateInvalidationResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"MissingBody"}, {"shape":"InvalidArgument"}, {"shape":"NoSuchDistribution"}, {"shape":"BatchTooLarge"}, {"shape":"TooManyInvalidationsInProgress"}, {"shape":"InconsistentQuantities"} ] }, "CreateStreamingDistribution":{ "name":"CreateStreamingDistribution2016_01_28", "http":{ "method":"POST", "requestUri":"/2016-01-28/streaming-distribution", "responseCode":201 }, "input":{"shape":"CreateStreamingDistributionRequest"}, "output":{"shape":"CreateStreamingDistributionResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"StreamingDistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"MissingBody"}, {"shape":"TooManyStreamingDistributionCNAMEs"}, {"shape":"TooManyStreamingDistributions"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "DeleteCloudFrontOriginAccessIdentity":{ "name":"DeleteCloudFrontOriginAccessIdentity2016_01_28", "http":{ "method":"DELETE", "requestUri":"/2016-01-28/origin-access-identity/cloudfront/{Id}", "responseCode":204 }, "input":{"shape":"DeleteCloudFrontOriginAccessIdentityRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"PreconditionFailed"}, {"shape":"CloudFrontOriginAccessIdentityInUse"} ] }, "DeleteDistribution":{ "name":"DeleteDistribution2016_01_28", "http":{ "method":"DELETE", "requestUri":"/2016-01-28/distribution/{Id}", "responseCode":204 }, "input":{"shape":"DeleteDistributionRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"DistributionNotDisabled"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchDistribution"}, {"shape":"PreconditionFailed"} ] }, "DeleteStreamingDistribution":{ "name":"DeleteStreamingDistribution2016_01_28", "http":{ "method":"DELETE", "requestUri":"/2016-01-28/streaming-distribution/{Id}", "responseCode":204 }, "input":{"shape":"DeleteStreamingDistributionRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"StreamingDistributionNotDisabled"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchStreamingDistribution"}, {"shape":"PreconditionFailed"} ] }, "GetCloudFrontOriginAccessIdentity":{ "name":"GetCloudFrontOriginAccessIdentity2016_01_28", "http":{ "method":"GET", "requestUri":"/2016-01-28/origin-access-identity/cloudfront/{Id}" }, "input":{"shape":"GetCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"GetCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"AccessDenied"} ] }, "GetCloudFrontOriginAccessIdentityConfig":{ "name":"GetCloudFrontOriginAccessIdentityConfig2016_01_28", "http":{ "method":"GET", "requestUri":"/2016-01-28/origin-access-identity/cloudfront/{Id}/config" }, "input":{"shape":"GetCloudFrontOriginAccessIdentityConfigRequest"}, "output":{"shape":"GetCloudFrontOriginAccessIdentityConfigResult"}, "errors":[ {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"AccessDenied"} ] }, "GetDistribution":{ "name":"GetDistribution2016_01_28", "http":{ "method":"GET", "requestUri":"/2016-01-28/distribution/{Id}" }, "input":{"shape":"GetDistributionRequest"}, "output":{"shape":"GetDistributionResult"}, "errors":[ {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetDistributionConfig":{ "name":"GetDistributionConfig2016_01_28", "http":{ "method":"GET", "requestUri":"/2016-01-28/distribution/{Id}/config" }, "input":{"shape":"GetDistributionConfigRequest"}, "output":{"shape":"GetDistributionConfigResult"}, "errors":[ {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetInvalidation":{ "name":"GetInvalidation2016_01_28", "http":{ "method":"GET", "requestUri":"/2016-01-28/distribution/{DistributionId}/invalidation/{Id}" }, "input":{"shape":"GetInvalidationRequest"}, "output":{"shape":"GetInvalidationResult"}, "errors":[ {"shape":"NoSuchInvalidation"}, {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetStreamingDistribution":{ "name":"GetStreamingDistribution2016_01_28", "http":{ "method":"GET", "requestUri":"/2016-01-28/streaming-distribution/{Id}" }, "input":{"shape":"GetStreamingDistributionRequest"}, "output":{"shape":"GetStreamingDistributionResult"}, "errors":[ {"shape":"NoSuchStreamingDistribution"}, {"shape":"AccessDenied"} ] }, "GetStreamingDistributionConfig":{ "name":"GetStreamingDistributionConfig2016_01_28", "http":{ "method":"GET", "requestUri":"/2016-01-28/streaming-distribution/{Id}/config" }, "input":{"shape":"GetStreamingDistributionConfigRequest"}, "output":{"shape":"GetStreamingDistributionConfigResult"}, "errors":[ {"shape":"NoSuchStreamingDistribution"}, {"shape":"AccessDenied"} ] }, "ListCloudFrontOriginAccessIdentities":{ "name":"ListCloudFrontOriginAccessIdentities2016_01_28", "http":{ "method":"GET", "requestUri":"/2016-01-28/origin-access-identity/cloudfront" }, "input":{"shape":"ListCloudFrontOriginAccessIdentitiesRequest"}, "output":{"shape":"ListCloudFrontOriginAccessIdentitiesResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "ListDistributions":{ "name":"ListDistributions2016_01_28", "http":{ "method":"GET", "requestUri":"/2016-01-28/distribution" }, "input":{"shape":"ListDistributionsRequest"}, "output":{"shape":"ListDistributionsResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "ListDistributionsByWebACLId":{ "name":"ListDistributionsByWebACLId2016_01_28", "http":{ "method":"GET", "requestUri":"/2016-01-28/distributionsByWebACLId/{WebACLId}" }, "input":{"shape":"ListDistributionsByWebACLIdRequest"}, "output":{"shape":"ListDistributionsByWebACLIdResult"}, "errors":[ {"shape":"InvalidArgument"}, {"shape":"InvalidWebACLId"} ] }, "ListInvalidations":{ "name":"ListInvalidations2016_01_28", "http":{ "method":"GET", "requestUri":"/2016-01-28/distribution/{DistributionId}/invalidation" }, "input":{"shape":"ListInvalidationsRequest"}, "output":{"shape":"ListInvalidationsResult"}, "errors":[ {"shape":"InvalidArgument"}, {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "ListStreamingDistributions":{ "name":"ListStreamingDistributions2016_01_28", "http":{ "method":"GET", "requestUri":"/2016-01-28/streaming-distribution" }, "input":{"shape":"ListStreamingDistributionsRequest"}, "output":{"shape":"ListStreamingDistributionsResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "UpdateCloudFrontOriginAccessIdentity":{ "name":"UpdateCloudFrontOriginAccessIdentity2016_01_28", "http":{ "method":"PUT", "requestUri":"/2016-01-28/origin-access-identity/cloudfront/{Id}/config" }, "input":{"shape":"UpdateCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"UpdateCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"PreconditionFailed"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "UpdateDistribution":{ "name":"UpdateDistribution2016_01_28", "http":{ "method":"PUT", "requestUri":"/2016-01-28/distribution/{Id}/config" }, "input":{"shape":"UpdateDistributionRequest"}, "output":{"shape":"UpdateDistributionResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"CNAMEAlreadyExists"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchDistribution"}, {"shape":"PreconditionFailed"}, {"shape":"TooManyDistributionCNAMEs"}, {"shape":"InvalidDefaultRootObject"}, {"shape":"InvalidRelativePath"}, {"shape":"InvalidErrorCode"}, {"shape":"InvalidResponseCode"}, {"shape":"InvalidArgument"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InvalidViewerCertificate"}, {"shape":"InvalidMinimumProtocolVersion"}, {"shape":"InvalidRequiredProtocol"}, {"shape":"NoSuchOrigin"}, {"shape":"TooManyOrigins"}, {"shape":"TooManyCacheBehaviors"}, {"shape":"TooManyCookieNamesInWhiteList"}, {"shape":"InvalidForwardCookies"}, {"shape":"TooManyHeadersInForwardedValues"}, {"shape":"InvalidHeadersForS3Origin"}, {"shape":"InconsistentQuantities"}, {"shape":"TooManyCertificates"}, {"shape":"InvalidLocationCode"}, {"shape":"InvalidGeoRestrictionParameter"}, {"shape":"InvalidTTLOrder"}, {"shape":"InvalidWebACLId"}, {"shape":"TooManyOriginCustomHeaders"} ] }, "UpdateStreamingDistribution":{ "name":"UpdateStreamingDistribution2016_01_28", "http":{ "method":"PUT", "requestUri":"/2016-01-28/streaming-distribution/{Id}/config" }, "input":{"shape":"UpdateStreamingDistributionRequest"}, "output":{"shape":"UpdateStreamingDistributionResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"CNAMEAlreadyExists"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchStreamingDistribution"}, {"shape":"PreconditionFailed"}, {"shape":"TooManyStreamingDistributionCNAMEs"}, {"shape":"InvalidArgument"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InconsistentQuantities"} ] } }, "shapes":{ "AccessDenied":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":403}, "exception":true }, "ActiveTrustedSigners":{ "type":"structure", "required":[ "Enabled", "Quantity" ], "members":{ "Enabled":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"SignerList"} } }, "AliasList":{ "type":"list", "member":{ "shape":"string", "locationName":"CNAME" } }, "Aliases":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"AliasList"} } }, "AllowedMethods":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"MethodsList"}, "CachedMethods":{"shape":"CachedMethods"} } }, "AwsAccountNumberList":{ "type":"list", "member":{ "shape":"string", "locationName":"AwsAccountNumber" } }, "BatchTooLarge":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":413}, "exception":true }, "CNAMEAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CacheBehavior":{ "type":"structure", "required":[ "PathPattern", "TargetOriginId", "ForwardedValues", "TrustedSigners", "ViewerProtocolPolicy", "MinTTL" ], "members":{ "PathPattern":{"shape":"string"}, "TargetOriginId":{"shape":"string"}, "ForwardedValues":{"shape":"ForwardedValues"}, "TrustedSigners":{"shape":"TrustedSigners"}, "ViewerProtocolPolicy":{"shape":"ViewerProtocolPolicy"}, "MinTTL":{"shape":"long"}, "AllowedMethods":{"shape":"AllowedMethods"}, "SmoothStreaming":{"shape":"boolean"}, "DefaultTTL":{"shape":"long"}, "MaxTTL":{"shape":"long"}, "Compress":{"shape":"boolean"} } }, "CacheBehaviorList":{ "type":"list", "member":{ "shape":"CacheBehavior", "locationName":"CacheBehavior" } }, "CacheBehaviors":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CacheBehaviorList"} } }, "CachedMethods":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"MethodsList"} } }, "CertificateSource":{ "type":"string", "enum":[ "cloudfront", "iam", "acm" ] }, "CloudFrontOriginAccessIdentity":{ "type":"structure", "required":[ "Id", "S3CanonicalUserId" ], "members":{ "Id":{"shape":"string"}, "S3CanonicalUserId":{"shape":"string"}, "CloudFrontOriginAccessIdentityConfig":{"shape":"CloudFrontOriginAccessIdentityConfig"} } }, "CloudFrontOriginAccessIdentityAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CloudFrontOriginAccessIdentityConfig":{ "type":"structure", "required":[ "CallerReference", "Comment" ], "members":{ "CallerReference":{"shape":"string"}, "Comment":{"shape":"string"} } }, "CloudFrontOriginAccessIdentityInUse":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CloudFrontOriginAccessIdentityList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"CloudFrontOriginAccessIdentitySummaryList"} } }, "CloudFrontOriginAccessIdentitySummary":{ "type":"structure", "required":[ "Id", "S3CanonicalUserId", "Comment" ], "members":{ "Id":{"shape":"string"}, "S3CanonicalUserId":{"shape":"string"}, "Comment":{"shape":"string"} } }, "CloudFrontOriginAccessIdentitySummaryList":{ "type":"list", "member":{ "shape":"CloudFrontOriginAccessIdentitySummary", "locationName":"CloudFrontOriginAccessIdentitySummary" } }, "CookieNameList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "CookieNames":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CookieNameList"} } }, "CookiePreference":{ "type":"structure", "required":["Forward"], "members":{ "Forward":{"shape":"ItemSelection"}, "WhitelistedNames":{"shape":"CookieNames"} } }, "CreateCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["CloudFrontOriginAccessIdentityConfig"], "members":{ "CloudFrontOriginAccessIdentityConfig":{ "shape":"CloudFrontOriginAccessIdentityConfig", "locationName":"CloudFrontOriginAccessIdentityConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-01-28/"} } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "CreateCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "CreateDistributionRequest":{ "type":"structure", "required":["DistributionConfig"], "members":{ "DistributionConfig":{ "shape":"DistributionConfig", "locationName":"DistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-01-28/"} } }, "payload":"DistributionConfig" }, "CreateDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "CreateInvalidationRequest":{ "type":"structure", "required":[ "DistributionId", "InvalidationBatch" ], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "InvalidationBatch":{ "shape":"InvalidationBatch", "locationName":"InvalidationBatch", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-01-28/"} } }, "payload":"InvalidationBatch" }, "CreateInvalidationResult":{ "type":"structure", "members":{ "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "Invalidation":{"shape":"Invalidation"} }, "payload":"Invalidation" }, "CreateStreamingDistributionRequest":{ "type":"structure", "required":["StreamingDistributionConfig"], "members":{ "StreamingDistributionConfig":{ "shape":"StreamingDistributionConfig", "locationName":"StreamingDistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-01-28/"} } }, "payload":"StreamingDistributionConfig" }, "CreateStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "CustomErrorResponse":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"integer"}, "ResponsePagePath":{"shape":"string"}, "ResponseCode":{"shape":"string"}, "ErrorCachingMinTTL":{"shape":"long"} } }, "CustomErrorResponseList":{ "type":"list", "member":{ "shape":"CustomErrorResponse", "locationName":"CustomErrorResponse" } }, "CustomErrorResponses":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CustomErrorResponseList"} } }, "CustomHeaders":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"OriginCustomHeadersList"} } }, "CustomOriginConfig":{ "type":"structure", "required":[ "HTTPPort", "HTTPSPort", "OriginProtocolPolicy" ], "members":{ "HTTPPort":{"shape":"integer"}, "HTTPSPort":{"shape":"integer"}, "OriginProtocolPolicy":{"shape":"OriginProtocolPolicy"}, "OriginSslProtocols":{"shape":"OriginSslProtocols"} } }, "DefaultCacheBehavior":{ "type":"structure", "required":[ "TargetOriginId", "ForwardedValues", "TrustedSigners", "ViewerProtocolPolicy", "MinTTL" ], "members":{ "TargetOriginId":{"shape":"string"}, "ForwardedValues":{"shape":"ForwardedValues"}, "TrustedSigners":{"shape":"TrustedSigners"}, "ViewerProtocolPolicy":{"shape":"ViewerProtocolPolicy"}, "MinTTL":{"shape":"long"}, "AllowedMethods":{"shape":"AllowedMethods"}, "SmoothStreaming":{"shape":"boolean"}, "DefaultTTL":{"shape":"long"}, "MaxTTL":{"shape":"long"}, "Compress":{"shape":"boolean"} } }, "DeleteCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "DeleteDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "DeleteStreamingDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "Distribution":{ "type":"structure", "required":[ "Id", "Status", "LastModifiedTime", "InProgressInvalidationBatches", "DomainName", "ActiveTrustedSigners", "DistributionConfig" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "InProgressInvalidationBatches":{"shape":"integer"}, "DomainName":{"shape":"string"}, "ActiveTrustedSigners":{"shape":"ActiveTrustedSigners"}, "DistributionConfig":{"shape":"DistributionConfig"} } }, "DistributionAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "DistributionConfig":{ "type":"structure", "required":[ "CallerReference", "Origins", "DefaultCacheBehavior", "Comment", "Enabled" ], "members":{ "CallerReference":{"shape":"string"}, "Aliases":{"shape":"Aliases"}, "DefaultRootObject":{"shape":"string"}, "Origins":{"shape":"Origins"}, "DefaultCacheBehavior":{"shape":"DefaultCacheBehavior"}, "CacheBehaviors":{"shape":"CacheBehaviors"}, "CustomErrorResponses":{"shape":"CustomErrorResponses"}, "Comment":{"shape":"string"}, "Logging":{"shape":"LoggingConfig"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"}, "ViewerCertificate":{"shape":"ViewerCertificate"}, "Restrictions":{"shape":"Restrictions"}, "WebACLId":{"shape":"string"} } }, "DistributionList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"DistributionSummaryList"} } }, "DistributionNotDisabled":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "DistributionSummary":{ "type":"structure", "required":[ "Id", "Status", "LastModifiedTime", "DomainName", "Aliases", "Origins", "DefaultCacheBehavior", "CacheBehaviors", "CustomErrorResponses", "Comment", "PriceClass", "Enabled", "ViewerCertificate", "Restrictions", "WebACLId" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "Aliases":{"shape":"Aliases"}, "Origins":{"shape":"Origins"}, "DefaultCacheBehavior":{"shape":"DefaultCacheBehavior"}, "CacheBehaviors":{"shape":"CacheBehaviors"}, "CustomErrorResponses":{"shape":"CustomErrorResponses"}, "Comment":{"shape":"string"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"}, "ViewerCertificate":{"shape":"ViewerCertificate"}, "Restrictions":{"shape":"Restrictions"}, "WebACLId":{"shape":"string"} } }, "DistributionSummaryList":{ "type":"list", "member":{ "shape":"DistributionSummary", "locationName":"DistributionSummary" } }, "ForwardedValues":{ "type":"structure", "required":[ "QueryString", "Cookies" ], "members":{ "QueryString":{"shape":"boolean"}, "Cookies":{"shape":"CookiePreference"}, "Headers":{"shape":"Headers"} } }, "GeoRestriction":{ "type":"structure", "required":[ "RestrictionType", "Quantity" ], "members":{ "RestrictionType":{"shape":"GeoRestrictionType"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"LocationList"} } }, "GeoRestrictionType":{ "type":"string", "enum":[ "blacklist", "whitelist", "none" ] }, "GetCloudFrontOriginAccessIdentityConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetCloudFrontOriginAccessIdentityConfigResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentityConfig":{"shape":"CloudFrontOriginAccessIdentityConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "GetCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "GetDistributionConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetDistributionConfigResult":{ "type":"structure", "members":{ "DistributionConfig":{"shape":"DistributionConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"DistributionConfig" }, "GetDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "GetInvalidationRequest":{ "type":"structure", "required":[ "DistributionId", "Id" ], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetInvalidationResult":{ "type":"structure", "members":{ "Invalidation":{"shape":"Invalidation"} }, "payload":"Invalidation" }, "GetStreamingDistributionConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetStreamingDistributionConfigResult":{ "type":"structure", "members":{ "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistributionConfig" }, "GetStreamingDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "HeaderList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "Headers":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"HeaderList"} } }, "IllegalUpdate":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InconsistentQuantities":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidArgument":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidDefaultRootObject":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidErrorCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidForwardCookies":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidGeoRestrictionParameter":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidHeadersForS3Origin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidIfMatchVersion":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidLocationCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidMinimumProtocolVersion":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidOrigin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidOriginAccessIdentity":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidProtocolSettings":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRelativePath":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRequiredProtocol":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidResponseCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidTTLOrder":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidViewerCertificate":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidWebACLId":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "Invalidation":{ "type":"structure", "required":[ "Id", "Status", "CreateTime", "InvalidationBatch" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "CreateTime":{"shape":"timestamp"}, "InvalidationBatch":{"shape":"InvalidationBatch"} } }, "InvalidationBatch":{ "type":"structure", "required":[ "Paths", "CallerReference" ], "members":{ "Paths":{"shape":"Paths"}, "CallerReference":{"shape":"string"} } }, "InvalidationList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"InvalidationSummaryList"} } }, "InvalidationSummary":{ "type":"structure", "required":[ "Id", "CreateTime", "Status" ], "members":{ "Id":{"shape":"string"}, "CreateTime":{"shape":"timestamp"}, "Status":{"shape":"string"} } }, "InvalidationSummaryList":{ "type":"list", "member":{ "shape":"InvalidationSummary", "locationName":"InvalidationSummary" } }, "ItemSelection":{ "type":"string", "enum":[ "none", "whitelist", "all" ] }, "KeyPairIdList":{ "type":"list", "member":{ "shape":"string", "locationName":"KeyPairId" } }, "KeyPairIds":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"KeyPairIdList"} } }, "ListCloudFrontOriginAccessIdentitiesRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListCloudFrontOriginAccessIdentitiesResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentityList":{"shape":"CloudFrontOriginAccessIdentityList"} }, "payload":"CloudFrontOriginAccessIdentityList" }, "ListDistributionsByWebACLIdRequest":{ "type":"structure", "required":["WebACLId"], "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" }, "WebACLId":{ "shape":"string", "location":"uri", "locationName":"WebACLId" } } }, "ListDistributionsByWebACLIdResult":{ "type":"structure", "members":{ "DistributionList":{"shape":"DistributionList"} }, "payload":"DistributionList" }, "ListDistributionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListDistributionsResult":{ "type":"structure", "members":{ "DistributionList":{"shape":"DistributionList"} }, "payload":"DistributionList" }, "ListInvalidationsRequest":{ "type":"structure", "required":["DistributionId"], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListInvalidationsResult":{ "type":"structure", "members":{ "InvalidationList":{"shape":"InvalidationList"} }, "payload":"InvalidationList" }, "ListStreamingDistributionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListStreamingDistributionsResult":{ "type":"structure", "members":{ "StreamingDistributionList":{"shape":"StreamingDistributionList"} }, "payload":"StreamingDistributionList" }, "LocationList":{ "type":"list", "member":{ "shape":"string", "locationName":"Location" } }, "LoggingConfig":{ "type":"structure", "required":[ "Enabled", "IncludeCookies", "Bucket", "Prefix" ], "members":{ "Enabled":{"shape":"boolean"}, "IncludeCookies":{"shape":"boolean"}, "Bucket":{"shape":"string"}, "Prefix":{"shape":"string"} } }, "Method":{ "type":"string", "enum":[ "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" ] }, "MethodsList":{ "type":"list", "member":{ "shape":"Method", "locationName":"Method" } }, "MinimumProtocolVersion":{ "type":"string", "enum":[ "SSLv3", "TLSv1" ] }, "MissingBody":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "NoSuchCloudFrontOriginAccessIdentity":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchDistribution":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchInvalidation":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchOrigin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchStreamingDistribution":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "Origin":{ "type":"structure", "required":[ "Id", "DomainName" ], "members":{ "Id":{"shape":"string"}, "DomainName":{"shape":"string"}, "OriginPath":{"shape":"string"}, "CustomHeaders":{"shape":"CustomHeaders"}, "S3OriginConfig":{"shape":"S3OriginConfig"}, "CustomOriginConfig":{"shape":"CustomOriginConfig"} } }, "OriginCustomHeader":{ "type":"structure", "required":[ "HeaderName", "HeaderValue" ], "members":{ "HeaderName":{"shape":"string"}, "HeaderValue":{"shape":"string"} } }, "OriginCustomHeadersList":{ "type":"list", "member":{ "shape":"OriginCustomHeader", "locationName":"OriginCustomHeader" } }, "OriginList":{ "type":"list", "member":{ "shape":"Origin", "locationName":"Origin" }, "min":1 }, "OriginProtocolPolicy":{ "type":"string", "enum":[ "http-only", "match-viewer", "https-only" ] }, "OriginSslProtocols":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"SslProtocolsList"} } }, "Origins":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"OriginList"} } }, "PathList":{ "type":"list", "member":{ "shape":"string", "locationName":"Path" } }, "Paths":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"PathList"} } }, "PreconditionFailed":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":412}, "exception":true }, "PriceClass":{ "type":"string", "enum":[ "PriceClass_100", "PriceClass_200", "PriceClass_All" ] }, "Restrictions":{ "type":"structure", "required":["GeoRestriction"], "members":{ "GeoRestriction":{"shape":"GeoRestriction"} } }, "S3Origin":{ "type":"structure", "required":[ "DomainName", "OriginAccessIdentity" ], "members":{ "DomainName":{"shape":"string"}, "OriginAccessIdentity":{"shape":"string"} } }, "S3OriginConfig":{ "type":"structure", "required":["OriginAccessIdentity"], "members":{ "OriginAccessIdentity":{"shape":"string"} } }, "SSLSupportMethod":{ "type":"string", "enum":[ "sni-only", "vip" ] }, "Signer":{ "type":"structure", "members":{ "AwsAccountNumber":{"shape":"string"}, "KeyPairIds":{"shape":"KeyPairIds"} } }, "SignerList":{ "type":"list", "member":{ "shape":"Signer", "locationName":"Signer" } }, "SslProtocol":{ "type":"string", "enum":[ "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2" ] }, "SslProtocolsList":{ "type":"list", "member":{ "shape":"SslProtocol", "locationName":"SslProtocol" } }, "StreamingDistribution":{ "type":"structure", "required":[ "Id", "Status", "DomainName", "ActiveTrustedSigners", "StreamingDistributionConfig" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "ActiveTrustedSigners":{"shape":"ActiveTrustedSigners"}, "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"} } }, "StreamingDistributionAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "StreamingDistributionConfig":{ "type":"structure", "required":[ "CallerReference", "S3Origin", "Comment", "TrustedSigners", "Enabled" ], "members":{ "CallerReference":{"shape":"string"}, "S3Origin":{"shape":"S3Origin"}, "Aliases":{"shape":"Aliases"}, "Comment":{"shape":"string"}, "Logging":{"shape":"StreamingLoggingConfig"}, "TrustedSigners":{"shape":"TrustedSigners"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"} } }, "StreamingDistributionList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"StreamingDistributionSummaryList"} } }, "StreamingDistributionNotDisabled":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "StreamingDistributionSummary":{ "type":"structure", "required":[ "Id", "Status", "LastModifiedTime", "DomainName", "S3Origin", "Aliases", "TrustedSigners", "Comment", "PriceClass", "Enabled" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "S3Origin":{"shape":"S3Origin"}, "Aliases":{"shape":"Aliases"}, "TrustedSigners":{"shape":"TrustedSigners"}, "Comment":{"shape":"string"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"} } }, "StreamingDistributionSummaryList":{ "type":"list", "member":{ "shape":"StreamingDistributionSummary", "locationName":"StreamingDistributionSummary" } }, "StreamingLoggingConfig":{ "type":"structure", "required":[ "Enabled", "Bucket", "Prefix" ], "members":{ "Enabled":{"shape":"boolean"}, "Bucket":{"shape":"string"}, "Prefix":{"shape":"string"} } }, "TooManyCacheBehaviors":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCertificates":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCloudFrontOriginAccessIdentities":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCookieNamesInWhiteList":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyDistributionCNAMEs":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyDistributions":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyHeadersInForwardedValues":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyInvalidationsInProgress":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyOriginCustomHeaders":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyOrigins":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyStreamingDistributionCNAMEs":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyStreamingDistributions":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyTrustedSigners":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrustedSignerDoesNotExist":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrustedSigners":{ "type":"structure", "required":[ "Enabled", "Quantity" ], "members":{ "Enabled":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"AwsAccountNumberList"} } }, "UpdateCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":[ "CloudFrontOriginAccessIdentityConfig", "Id" ], "members":{ "CloudFrontOriginAccessIdentityConfig":{ "shape":"CloudFrontOriginAccessIdentityConfig", "locationName":"CloudFrontOriginAccessIdentityConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-01-28/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "UpdateCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "UpdateDistributionRequest":{ "type":"structure", "required":[ "DistributionConfig", "Id" ], "members":{ "DistributionConfig":{ "shape":"DistributionConfig", "locationName":"DistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-01-28/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"DistributionConfig" }, "UpdateDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "UpdateStreamingDistributionRequest":{ "type":"structure", "required":[ "StreamingDistributionConfig", "Id" ], "members":{ "StreamingDistributionConfig":{ "shape":"StreamingDistributionConfig", "locationName":"StreamingDistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-01-28/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"StreamingDistributionConfig" }, "UpdateStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "ViewerCertificate":{ "type":"structure", "members":{ "CloudFrontDefaultCertificate":{"shape":"boolean"}, "IAMCertificateId":{"shape":"string"}, "ACMCertificateArn":{"shape":"string"}, "SSLSupportMethod":{"shape":"SSLSupportMethod"}, "MinimumProtocolVersion":{"shape":"MinimumProtocolVersion"}, "Certificate":{ "shape":"string", "deprecated":true }, "CertificateSource":{ "shape":"CertificateSource", "deprecated":true } } }, "ViewerProtocolPolicy":{ "type":"string", "enum":[ "allow-all", "https-only", "redirect-to-https" ] }, "boolean":{"type":"boolean"}, "integer":{"type":"integer"}, "long":{"type":"long"}, "string":{"type":"string"}, "timestamp":{"type":"timestamp"} } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-01-28/docs-2.json000066400000000000000000002564431300374646400232160ustar00rootroot00000000000000{ "version": "2.0", "service": null, "operations": { "CreateCloudFrontOriginAccessIdentity": "Create a new origin access identity.", "CreateDistribution": "Create a new distribution.", "CreateInvalidation": "Create a new invalidation.", "CreateStreamingDistribution": "Create a new streaming distribution.", "DeleteCloudFrontOriginAccessIdentity": "Delete an origin access identity.", "DeleteDistribution": "Delete a distribution.", "DeleteStreamingDistribution": "Delete a streaming distribution.", "GetCloudFrontOriginAccessIdentity": "Get the information about an origin access identity.", "GetCloudFrontOriginAccessIdentityConfig": "Get the configuration information about an origin access identity.", "GetDistribution": "Get the information about a distribution.", "GetDistributionConfig": "Get the configuration information about a distribution.", "GetInvalidation": "Get the information about an invalidation.", "GetStreamingDistribution": "Get the information about a streaming distribution.", "GetStreamingDistributionConfig": "Get the configuration information about a streaming distribution.", "ListCloudFrontOriginAccessIdentities": "List origin access identities.", "ListDistributions": "List distributions.", "ListDistributionsByWebACLId": "List the distributions that are associated with a specified AWS WAF web ACL.", "ListInvalidations": "List invalidation batches.", "ListStreamingDistributions": "List streaming distributions.", "UpdateCloudFrontOriginAccessIdentity": "Update an origin access identity.", "UpdateDistribution": "Update a distribution.", "UpdateStreamingDistribution": "Update a streaming distribution." }, "shapes": { "AccessDenied": { "base": "Access denied.", "refs": { } }, "ActiveTrustedSigners": { "base": "A complex type that lists the AWS accounts, if any, that you included in the TrustedSigners complex type for the default cache behavior or for any of the other cache behaviors for this distribution. These are accounts that you want to allow to create signed URLs for private content.", "refs": { "Distribution$ActiveTrustedSigners": "CloudFront automatically adds this element to the response only if you've set up the distribution to serve private content with signed URLs. The element lists the key pair IDs that CloudFront is aware of for each trusted signer. The Signer child element lists the AWS account number of the trusted signer (or an empty Self element if the signer is you). The Signer element also includes the IDs of any active key pairs associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create working signed URLs.", "StreamingDistribution$ActiveTrustedSigners": "CloudFront automatically adds this element to the response only if you've set up the distribution to serve private content with signed URLs. The element lists the key pair IDs that CloudFront is aware of for each trusted signer. The Signer child element lists the AWS account number of the trusted signer (or an empty Self element if the signer is you). The Signer element also includes the IDs of any active key pairs associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create working signed URLs." } }, "AliasList": { "base": null, "refs": { "Aliases$Items": "Optional: A complex type that contains CNAME elements, if any, for this distribution. If Quantity is 0, you can omit Items." } }, "Aliases": { "base": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "refs": { "DistributionConfig$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "DistributionSummary$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "StreamingDistributionConfig$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution.", "StreamingDistributionSummary$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution." } }, "AllowedMethods": { "base": "A complex type that controls which HTTP methods CloudFront processes and forwards to your Amazon S3 bucket or your custom origin. There are three choices: - CloudFront forwards only GET and HEAD requests. - CloudFront forwards only GET, HEAD and OPTIONS requests. - CloudFront forwards GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests. If you pick the third choice, you may need to restrict access to your Amazon S3 bucket or to your custom origin so users can't perform operations that you don't want them to. For example, you may not want users to have permission to delete objects from your origin.", "refs": { "CacheBehavior$AllowedMethods": null, "DefaultCacheBehavior$AllowedMethods": null } }, "AwsAccountNumberList": { "base": null, "refs": { "TrustedSigners$Items": "Optional: A complex type that contains trusted signers for this cache behavior. If Quantity is 0, you can omit Items." } }, "BatchTooLarge": { "base": null, "refs": { } }, "CNAMEAlreadyExists": { "base": null, "refs": { } }, "CacheBehavior": { "base": "A complex type that describes how CloudFront processes requests. You can create up to 10 cache behaviors.You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to distribute objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin will never be used. If you don't want to specify any cache behaviors, include only an empty CacheBehaviors element. Don't include an empty CacheBehavior element, or CloudFront returns a MalformedXML error. To delete all cache behaviors in an existing distribution, update the distribution configuration and include only an empty CacheBehaviors element. To add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution.", "refs": { "CacheBehaviorList$member": null } }, "CacheBehaviorList": { "base": null, "refs": { "CacheBehaviors$Items": "Optional: A complex type that contains cache behaviors for this distribution. If Quantity is 0, you can omit Items." } }, "CacheBehaviors": { "base": "A complex type that contains zero or more CacheBehavior elements.", "refs": { "DistributionConfig$CacheBehaviors": "A complex type that contains zero or more CacheBehavior elements.", "DistributionSummary$CacheBehaviors": "A complex type that contains zero or more CacheBehavior elements." } }, "CachedMethods": { "base": "A complex type that controls whether CloudFront caches the response to requests using the specified HTTP methods. There are two choices: - CloudFront caches responses to GET and HEAD requests. - CloudFront caches responses to GET, HEAD, and OPTIONS requests. If you pick the second choice for your S3 Origin, you may need to forward Access-Control-Request-Method, Access-Control-Request-Headers and Origin headers for the responses to be cached correctly.", "refs": { "AllowedMethods$CachedMethods": null } }, "CertificateSource": { "base": null, "refs": { "ViewerCertificate$CertificateSource": "Note: this field is deprecated. Please use one of [ACMCertificateArn, IAMCertificateId, CloudFrontDefaultCertificate]." } }, "CloudFrontOriginAccessIdentity": { "base": "CloudFront origin access identity.", "refs": { "CreateCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information.", "GetCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information.", "UpdateCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information." } }, "CloudFrontOriginAccessIdentityAlreadyExists": { "base": "If the CallerReference is a value you already sent in a previous request to create an identity but the content of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists error.", "refs": { } }, "CloudFrontOriginAccessIdentityConfig": { "base": "Origin access identity configuration.", "refs": { "CloudFrontOriginAccessIdentity$CloudFrontOriginAccessIdentityConfig": "The current configuration information for the identity.", "CreateCloudFrontOriginAccessIdentityRequest$CloudFrontOriginAccessIdentityConfig": "The origin access identity's configuration information.", "GetCloudFrontOriginAccessIdentityConfigResult$CloudFrontOriginAccessIdentityConfig": "The origin access identity's configuration information.", "UpdateCloudFrontOriginAccessIdentityRequest$CloudFrontOriginAccessIdentityConfig": "The identity's configuration information." } }, "CloudFrontOriginAccessIdentityInUse": { "base": null, "refs": { } }, "CloudFrontOriginAccessIdentityList": { "base": "The CloudFrontOriginAccessIdentityList type.", "refs": { "ListCloudFrontOriginAccessIdentitiesResult$CloudFrontOriginAccessIdentityList": "The CloudFrontOriginAccessIdentityList type." } }, "CloudFrontOriginAccessIdentitySummary": { "base": "Summary of the information about a CloudFront origin access identity.", "refs": { "CloudFrontOriginAccessIdentitySummaryList$member": null } }, "CloudFrontOriginAccessIdentitySummaryList": { "base": null, "refs": { "CloudFrontOriginAccessIdentityList$Items": "A complex type that contains one CloudFrontOriginAccessIdentitySummary element for each origin access identity that was created by the current AWS account." } }, "CookieNameList": { "base": null, "refs": { "CookieNames$Items": "Optional: A complex type that contains whitelisted cookies for this cache behavior. If Quantity is 0, you can omit Items." } }, "CookieNames": { "base": "A complex type that specifies the whitelisted cookies, if any, that you want CloudFront to forward to your origin that is associated with this cache behavior.", "refs": { "CookiePreference$WhitelistedNames": "A complex type that specifies the whitelisted cookies, if any, that you want CloudFront to forward to your origin that is associated with this cache behavior." } }, "CookiePreference": { "base": "A complex type that specifies the cookie preferences associated with this cache behavior.", "refs": { "ForwardedValues$Cookies": "A complex type that specifies how CloudFront handles cookies." } }, "CreateCloudFrontOriginAccessIdentityRequest": { "base": "The request to create a new origin access identity.", "refs": { } }, "CreateCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateDistributionRequest": { "base": "The request to create a new distribution.", "refs": { } }, "CreateDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateInvalidationRequest": { "base": "The request to create an invalidation.", "refs": { } }, "CreateInvalidationResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateStreamingDistributionRequest": { "base": "The request to create a new streaming distribution.", "refs": { } }, "CreateStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CustomErrorResponse": { "base": "A complex type that describes how you'd prefer CloudFront to respond to requests that result in either a 4xx or 5xx response. You can control whether a custom error page should be displayed, what the desired response code should be for this error page and how long should the error response be cached by CloudFront. If you don't want to specify any custom error responses, include only an empty CustomErrorResponses element. To delete all custom error responses in an existing distribution, update the distribution configuration and include only an empty CustomErrorResponses element. To add, change, or remove one or more custom error responses, update the distribution configuration and specify all of the custom error responses that you want to include in the updated distribution.", "refs": { "CustomErrorResponseList$member": null } }, "CustomErrorResponseList": { "base": null, "refs": { "CustomErrorResponses$Items": "Optional: A complex type that contains custom error responses for this distribution. If Quantity is 0, you can omit Items." } }, "CustomErrorResponses": { "base": "A complex type that contains zero or more CustomErrorResponse elements.", "refs": { "DistributionConfig$CustomErrorResponses": "A complex type that contains zero or more CustomErrorResponse elements.", "DistributionSummary$CustomErrorResponses": "A complex type that contains zero or more CustomErrorResponses elements." } }, "CustomHeaders": { "base": "A complex type that contains the list of Custom Headers for each origin.", "refs": { "Origin$CustomHeaders": "A complex type that contains information about the custom headers associated with this Origin." } }, "CustomOriginConfig": { "base": "A customer origin.", "refs": { "Origin$CustomOriginConfig": "A complex type that contains information about a custom origin. If the origin is an Amazon S3 bucket, use the S3OriginConfig element instead." } }, "DefaultCacheBehavior": { "base": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior.", "refs": { "DistributionConfig$DefaultCacheBehavior": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior.", "DistributionSummary$DefaultCacheBehavior": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior." } }, "DeleteCloudFrontOriginAccessIdentityRequest": { "base": "The request to delete a origin access identity.", "refs": { } }, "DeleteDistributionRequest": { "base": "The request to delete a distribution.", "refs": { } }, "DeleteStreamingDistributionRequest": { "base": "The request to delete a streaming distribution.", "refs": { } }, "Distribution": { "base": "A distribution.", "refs": { "CreateDistributionResult$Distribution": "The distribution's information.", "GetDistributionResult$Distribution": "The distribution's information.", "UpdateDistributionResult$Distribution": "The distribution's information." } }, "DistributionAlreadyExists": { "base": "The caller reference you attempted to create the distribution with is associated with another distribution.", "refs": { } }, "DistributionConfig": { "base": "A distribution Configuration.", "refs": { "CreateDistributionRequest$DistributionConfig": "The distribution's configuration information.", "Distribution$DistributionConfig": "The current configuration information for the distribution.", "GetDistributionConfigResult$DistributionConfig": "The distribution's configuration information.", "UpdateDistributionRequest$DistributionConfig": "The distribution's configuration information." } }, "DistributionList": { "base": "A distribution list.", "refs": { "ListDistributionsByWebACLIdResult$DistributionList": "The DistributionList type.", "ListDistributionsResult$DistributionList": "The DistributionList type." } }, "DistributionNotDisabled": { "base": null, "refs": { } }, "DistributionSummary": { "base": "A summary of the information for an Amazon CloudFront distribution.", "refs": { "DistributionSummaryList$member": null } }, "DistributionSummaryList": { "base": null, "refs": { "DistributionList$Items": "A complex type that contains one DistributionSummary element for each distribution that was created by the current AWS account." } }, "ForwardedValues": { "base": "A complex type that specifies how CloudFront handles query strings, cookies and headers.", "refs": { "CacheBehavior$ForwardedValues": "A complex type that specifies how CloudFront handles query strings, cookies and headers.", "DefaultCacheBehavior$ForwardedValues": "A complex type that specifies how CloudFront handles query strings, cookies and headers." } }, "GeoRestriction": { "base": "A complex type that controls the countries in which your content is distributed. For more information about geo restriction, go to Customizing Error Responses in the Amazon CloudFront Developer Guide. CloudFront determines the location of your users using MaxMind GeoIP databases. For information about the accuracy of these databases, see How accurate are your GeoIP databases? on the MaxMind website.", "refs": { "Restrictions$GeoRestriction": null } }, "GeoRestrictionType": { "base": null, "refs": { "GeoRestriction$RestrictionType": "The method that you want to use to restrict distribution of your content by country: - none: No geo restriction is enabled, meaning access to content is not restricted by client geo location. - blacklist: The Location elements specify the countries in which you do not want CloudFront to distribute your content. - whitelist: The Location elements specify the countries in which you want CloudFront to distribute your content." } }, "GetCloudFrontOriginAccessIdentityConfigRequest": { "base": "The request to get an origin access identity's configuration.", "refs": { } }, "GetCloudFrontOriginAccessIdentityConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetCloudFrontOriginAccessIdentityRequest": { "base": "The request to get an origin access identity's information.", "refs": { } }, "GetCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetDistributionConfigRequest": { "base": "The request to get a distribution configuration.", "refs": { } }, "GetDistributionConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetDistributionRequest": { "base": "The request to get a distribution's information.", "refs": { } }, "GetDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetInvalidationRequest": { "base": "The request to get an invalidation's information.", "refs": { } }, "GetInvalidationResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetStreamingDistributionConfigRequest": { "base": "To request to get a streaming distribution configuration.", "refs": { } }, "GetStreamingDistributionConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetStreamingDistributionRequest": { "base": "The request to get a streaming distribution's information.", "refs": { } }, "GetStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "HeaderList": { "base": null, "refs": { "Headers$Items": "Optional: A complex type that contains a Name element for each header that you want CloudFront to forward to the origin and to vary on for this cache behavior. If Quantity is 0, omit Items." } }, "Headers": { "base": "A complex type that specifies the headers that you want CloudFront to forward to the origin for this cache behavior. For the headers that you specify, CloudFront also caches separate versions of a given object based on the header values in viewer requests; this is known as varying on headers. For example, suppose viewer requests for logo.jpg contain a custom Product header that has a value of either Acme or Apex, and you configure CloudFront to vary on the Product header. CloudFront forwards the Product header to the origin and caches the response from the origin once for each header value.", "refs": { "ForwardedValues$Headers": "A complex type that specifies the Headers, if any, that you want CloudFront to vary upon for this cache behavior." } }, "IllegalUpdate": { "base": "Origin and CallerReference cannot be updated.", "refs": { } }, "InconsistentQuantities": { "base": "The value of Quantity and the size of Items do not match.", "refs": { } }, "InvalidArgument": { "base": "The argument is invalid.", "refs": { } }, "InvalidDefaultRootObject": { "base": "The default root object file name is too big or contains an invalid character.", "refs": { } }, "InvalidErrorCode": { "base": null, "refs": { } }, "InvalidForwardCookies": { "base": "Your request contains forward cookies option which doesn't match with the expectation for the whitelisted list of cookie names. Either list of cookie names has been specified when not allowed or list of cookie names is missing when expected.", "refs": { } }, "InvalidGeoRestrictionParameter": { "base": null, "refs": { } }, "InvalidHeadersForS3Origin": { "base": null, "refs": { } }, "InvalidIfMatchVersion": { "base": "The If-Match version is missing or not valid for the distribution.", "refs": { } }, "InvalidLocationCode": { "base": null, "refs": { } }, "InvalidMinimumProtocolVersion": { "base": null, "refs": { } }, "InvalidOrigin": { "base": "The Amazon S3 origin server specified does not refer to a valid Amazon S3 bucket.", "refs": { } }, "InvalidOriginAccessIdentity": { "base": "The origin access identity is not valid or doesn't exist.", "refs": { } }, "InvalidProtocolSettings": { "base": "You cannot specify SSLv3 as the minimum protocol version if you only want to support only clients that Support Server Name Indication (SNI).", "refs": { } }, "InvalidRelativePath": { "base": "The relative path is too big, is not URL-encoded, or does not begin with a slash (/).", "refs": { } }, "InvalidRequiredProtocol": { "base": "This operation requires the HTTPS protocol. Ensure that you specify the HTTPS protocol in your request, or omit the RequiredProtocols element from your distribution configuration.", "refs": { } }, "InvalidResponseCode": { "base": null, "refs": { } }, "InvalidTTLOrder": { "base": null, "refs": { } }, "InvalidViewerCertificate": { "base": null, "refs": { } }, "InvalidWebACLId": { "base": null, "refs": { } }, "Invalidation": { "base": "An invalidation.", "refs": { "CreateInvalidationResult$Invalidation": "The invalidation's information.", "GetInvalidationResult$Invalidation": "The invalidation's information." } }, "InvalidationBatch": { "base": "An invalidation batch.", "refs": { "CreateInvalidationRequest$InvalidationBatch": "The batch information for the invalidation.", "Invalidation$InvalidationBatch": "The current invalidation information for the batch request." } }, "InvalidationList": { "base": "An invalidation list.", "refs": { "ListInvalidationsResult$InvalidationList": "Information about invalidation batches." } }, "InvalidationSummary": { "base": "Summary of an invalidation request.", "refs": { "InvalidationSummaryList$member": null } }, "InvalidationSummaryList": { "base": null, "refs": { "InvalidationList$Items": "A complex type that contains one InvalidationSummary element for each invalidation batch that was created by the current AWS account." } }, "ItemSelection": { "base": null, "refs": { "CookiePreference$Forward": "Use this element to specify whether you want CloudFront to forward cookies to the origin that is associated with this cache behavior. You can specify all, none or whitelist. If you choose All, CloudFront forwards all cookies regardless of how many your application uses." } }, "KeyPairIdList": { "base": null, "refs": { "KeyPairIds$Items": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber." } }, "KeyPairIds": { "base": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber.", "refs": { "Signer$KeyPairIds": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber." } }, "ListCloudFrontOriginAccessIdentitiesRequest": { "base": "The request to list origin access identities.", "refs": { } }, "ListCloudFrontOriginAccessIdentitiesResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListDistributionsByWebACLIdRequest": { "base": "The request to list distributions that are associated with a specified AWS WAF web ACL.", "refs": { } }, "ListDistributionsByWebACLIdResult": { "base": "The response to a request to list the distributions that are associated with a specified AWS WAF web ACL.", "refs": { } }, "ListDistributionsRequest": { "base": "The request to list your distributions.", "refs": { } }, "ListDistributionsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListInvalidationsRequest": { "base": "The request to list invalidations.", "refs": { } }, "ListInvalidationsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListStreamingDistributionsRequest": { "base": "The request to list your streaming distributions.", "refs": { } }, "ListStreamingDistributionsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "LocationList": { "base": null, "refs": { "GeoRestriction$Items": "A complex type that contains a Location element for each country in which you want CloudFront either to distribute your content (whitelist) or not distribute your content (blacklist). The Location element is a two-letter, uppercase country code for a country that you want to include in your blacklist or whitelist. Include one Location element for each country. CloudFront and MaxMind both use ISO 3166 country codes. For the current list of countries and the corresponding codes, see ISO 3166-1-alpha-2 code on the International Organization for Standardization website. You can also refer to the country list in the CloudFront console, which includes both country names and codes." } }, "LoggingConfig": { "base": "A complex type that controls whether access logs are written for the distribution.", "refs": { "DistributionConfig$Logging": "A complex type that controls whether access logs are written for the distribution." } }, "Method": { "base": null, "refs": { "MethodsList$member": null } }, "MethodsList": { "base": null, "refs": { "AllowedMethods$Items": "A complex type that contains the HTTP methods that you want CloudFront to process and forward to your origin.", "CachedMethods$Items": "A complex type that contains the HTTP methods that you want CloudFront to cache responses to." } }, "MinimumProtocolVersion": { "base": null, "refs": { "ViewerCertificate$MinimumProtocolVersion": "Specify the minimum version of the SSL protocol that you want CloudFront to use, SSLv3 or TLSv1, for HTTPS connections. CloudFront will serve your objects only to browsers or devices that support at least the SSL version that you specify. The TLSv1 protocol is more secure, so we recommend that you specify SSLv3 only if your users are using browsers or devices that don't support TLSv1. If you're using a custom certificate (if you specify a value for IAMCertificateId) and if you're using dedicated IP (if you specify vip for SSLSupportMethod), you can choose SSLv3 or TLSv1 as the MinimumProtocolVersion. If you're using a custom certificate (if you specify a value for IAMCertificateId) and if you're using SNI (if you specify sni-only for SSLSupportMethod), you must specify TLSv1 for MinimumProtocolVersion." } }, "MissingBody": { "base": "This operation requires a body. Ensure that the body is present and the Content-Type header is set.", "refs": { } }, "NoSuchCloudFrontOriginAccessIdentity": { "base": "The specified origin access identity does not exist.", "refs": { } }, "NoSuchDistribution": { "base": "The specified distribution does not exist.", "refs": { } }, "NoSuchInvalidation": { "base": "The specified invalidation does not exist.", "refs": { } }, "NoSuchOrigin": { "base": "No origin exists with the specified Origin Id.", "refs": { } }, "NoSuchStreamingDistribution": { "base": "The specified streaming distribution does not exist.", "refs": { } }, "Origin": { "base": "A complex type that describes the Amazon S3 bucket or the HTTP server (for example, a web server) from which CloudFront gets your files.You must create at least one origin.", "refs": { "OriginList$member": null } }, "OriginCustomHeader": { "base": "A complex type that contains information related to a Header", "refs": { "OriginCustomHeadersList$member": null } }, "OriginCustomHeadersList": { "base": null, "refs": { "CustomHeaders$Items": "A complex type that contains the custom headers for this Origin." } }, "OriginList": { "base": null, "refs": { "Origins$Items": "A complex type that contains origins for this distribution." } }, "OriginProtocolPolicy": { "base": null, "refs": { "CustomOriginConfig$OriginProtocolPolicy": "The origin protocol policy to apply to your origin." } }, "OriginSslProtocols": { "base": "A complex type that contains the list of SSL/TLS protocols that you want CloudFront to use when communicating with your origin over HTTPS.", "refs": { "CustomOriginConfig$OriginSslProtocols": "The SSL/TLS protocols that you want CloudFront to use when communicating with your origin over HTTPS." } }, "Origins": { "base": "A complex type that contains information about origins for this distribution.", "refs": { "DistributionConfig$Origins": "A complex type that contains information about origins for this distribution.", "DistributionSummary$Origins": "A complex type that contains information about origins for this distribution." } }, "PathList": { "base": null, "refs": { "Paths$Items": "A complex type that contains a list of the objects that you want to invalidate." } }, "Paths": { "base": "A complex type that contains information about the objects that you want to invalidate.", "refs": { "InvalidationBatch$Paths": "The path of the object to invalidate. The path is relative to the distribution and must begin with a slash (/). You must enclose each invalidation object with the Path element tags. If the path includes non-ASCII characters or unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters. Do not URL encode any other characters in the path, or CloudFront will not invalidate the old version of the updated object." } }, "PreconditionFailed": { "base": "The precondition given in one or more of the request-header fields evaluated to false.", "refs": { } }, "PriceClass": { "base": null, "refs": { "DistributionConfig$PriceClass": "A complex type that contains information about price class for this distribution.", "DistributionSummary$PriceClass": null, "StreamingDistributionConfig$PriceClass": "A complex type that contains information about price class for this streaming distribution.", "StreamingDistributionSummary$PriceClass": null } }, "Restrictions": { "base": "A complex type that identifies ways in which you want to restrict distribution of your content.", "refs": { "DistributionConfig$Restrictions": null, "DistributionSummary$Restrictions": null } }, "S3Origin": { "base": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.", "refs": { "StreamingDistributionConfig$S3Origin": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.", "StreamingDistributionSummary$S3Origin": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution." } }, "S3OriginConfig": { "base": "A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead.", "refs": { "Origin$S3OriginConfig": "A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead." } }, "SSLSupportMethod": { "base": null, "refs": { "ViewerCertificate$SSLSupportMethod": "If you specify a value for IAMCertificateId, you must also specify how you want CloudFront to serve HTTPS requests. Valid values are vip and sni-only. If you specify vip, CloudFront uses dedicated IP addresses for your content and can respond to HTTPS requests from any viewer. However, you must request permission to use this feature, and you incur additional monthly charges. If you specify sni-only, CloudFront can only respond to HTTPS requests from viewers that support Server Name Indication (SNI). All modern browsers support SNI, but some browsers still in use don't support SNI. Do not specify a value for SSLSupportMethod if you specified true for CloudFrontDefaultCertificate." } }, "Signer": { "base": "A complex type that lists the AWS accounts that were included in the TrustedSigners complex type, as well as their active CloudFront key pair IDs, if any.", "refs": { "SignerList$member": null } }, "SignerList": { "base": null, "refs": { "ActiveTrustedSigners$Items": "A complex type that contains one Signer complex type for each unique trusted signer that is specified in the TrustedSigners complex type, including trusted signers in the default cache behavior and in all of the other cache behaviors." } }, "SslProtocol": { "base": null, "refs": { "SslProtocolsList$member": null } }, "SslProtocolsList": { "base": null, "refs": { "OriginSslProtocols$Items": "A complex type that contains one SslProtocol element for each SSL/TLS protocol that you want to allow CloudFront to use when establishing an HTTPS connection with this origin." } }, "StreamingDistribution": { "base": "A streaming distribution.", "refs": { "CreateStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information.", "GetStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information.", "UpdateStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information." } }, "StreamingDistributionAlreadyExists": { "base": null, "refs": { } }, "StreamingDistributionConfig": { "base": "The configuration for the streaming distribution.", "refs": { "CreateStreamingDistributionRequest$StreamingDistributionConfig": "The streaming distribution's configuration information.", "GetStreamingDistributionConfigResult$StreamingDistributionConfig": "The streaming distribution's configuration information.", "StreamingDistribution$StreamingDistributionConfig": "The current configuration information for the streaming distribution.", "UpdateStreamingDistributionRequest$StreamingDistributionConfig": "The streaming distribution's configuration information." } }, "StreamingDistributionList": { "base": "A streaming distribution list.", "refs": { "ListStreamingDistributionsResult$StreamingDistributionList": "The StreamingDistributionList type." } }, "StreamingDistributionNotDisabled": { "base": null, "refs": { } }, "StreamingDistributionSummary": { "base": "A summary of the information for an Amazon CloudFront streaming distribution.", "refs": { "StreamingDistributionSummaryList$member": null } }, "StreamingDistributionSummaryList": { "base": null, "refs": { "StreamingDistributionList$Items": "A complex type that contains one StreamingDistributionSummary element for each distribution that was created by the current AWS account." } }, "StreamingLoggingConfig": { "base": "A complex type that controls whether access logs are written for this streaming distribution.", "refs": { "StreamingDistributionConfig$Logging": "A complex type that controls whether access logs are written for the streaming distribution." } }, "TooManyCacheBehaviors": { "base": "You cannot create anymore cache behaviors for the distribution.", "refs": { } }, "TooManyCertificates": { "base": "You cannot create anymore custom ssl certificates.", "refs": { } }, "TooManyCloudFrontOriginAccessIdentities": { "base": "Processing your request would cause you to exceed the maximum number of origin access identities allowed.", "refs": { } }, "TooManyCookieNamesInWhiteList": { "base": "Your request contains more cookie names in the whitelist than are allowed per cache behavior.", "refs": { } }, "TooManyDistributionCNAMEs": { "base": "Your request contains more CNAMEs than are allowed per distribution.", "refs": { } }, "TooManyDistributions": { "base": "Processing your request would cause you to exceed the maximum number of distributions allowed.", "refs": { } }, "TooManyHeadersInForwardedValues": { "base": null, "refs": { } }, "TooManyInvalidationsInProgress": { "base": "You have exceeded the maximum number of allowable InProgress invalidation batch requests, or invalidation objects.", "refs": { } }, "TooManyOriginCustomHeaders": { "base": null, "refs": { } }, "TooManyOrigins": { "base": "You cannot create anymore origins for the distribution.", "refs": { } }, "TooManyStreamingDistributionCNAMEs": { "base": null, "refs": { } }, "TooManyStreamingDistributions": { "base": "Processing your request would cause you to exceed the maximum number of streaming distributions allowed.", "refs": { } }, "TooManyTrustedSigners": { "base": "Your request contains more trusted signers than are allowed per distribution.", "refs": { } }, "TrustedSignerDoesNotExist": { "base": "One or more of your trusted signers do not exist.", "refs": { } }, "TrustedSigners": { "base": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "refs": { "CacheBehavior$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "DefaultCacheBehavior$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "StreamingDistributionConfig$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "StreamingDistributionSummary$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution." } }, "UpdateCloudFrontOriginAccessIdentityRequest": { "base": "The request to update an origin access identity.", "refs": { } }, "UpdateCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "UpdateDistributionRequest": { "base": "The request to update a distribution.", "refs": { } }, "UpdateDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "UpdateStreamingDistributionRequest": { "base": "The request to update a streaming distribution.", "refs": { } }, "UpdateStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ViewerCertificate": { "base": "A complex type that contains information about viewer certificates for this distribution.", "refs": { "DistributionConfig$ViewerCertificate": null, "DistributionSummary$ViewerCertificate": null } }, "ViewerProtocolPolicy": { "base": null, "refs": { "CacheBehavior$ViewerProtocolPolicy": "Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. If you want CloudFront to allow end users to use any available protocol, specify allow-all. If you want CloudFront to require HTTPS, specify https. If you want CloudFront to respond to an HTTP request with an HTTP status code of 301 (Moved Permanently) and the HTTPS URL, specify redirect-to-https. The viewer then resubmits the request using the HTTPS URL.", "DefaultCacheBehavior$ViewerProtocolPolicy": "Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. If you want CloudFront to allow end users to use any available protocol, specify allow-all. If you want CloudFront to require HTTPS, specify https. If you want CloudFront to respond to an HTTP request with an HTTP status code of 301 (Moved Permanently) and the HTTPS URL, specify redirect-to-https. The viewer then resubmits the request using the HTTPS URL." } }, "boolean": { "base": null, "refs": { "ActiveTrustedSigners$Enabled": "Each active trusted signer.", "CacheBehavior$SmoothStreaming": "Indicates whether you want to distribute media files in Microsoft Smooth Streaming format using the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "CacheBehavior$Compress": "Whether you want CloudFront to automatically compress content for web requests that include Accept-Encoding: gzip in the request header. If so, specify true; if not, specify false. CloudFront compresses files larger than 1000 bytes and less than 1 megabyte for both Amazon S3 and custom origins. When a CloudFront edge location is unusually busy, some files might not be compressed. The value of the Content-Type header must be on the list of file types that CloudFront will compress. For the current list, see Serving Compressed Content in the Amazon CloudFront Developer Guide. If you configure CloudFront to compress content, CloudFront removes the ETag response header from the objects that it compresses. The ETag header indicates that the version in a CloudFront edge cache is identical to the version on the origin server, but after compression the two versions are no longer identical. As a result, for compressed objects, CloudFront can't use the ETag header to determine whether an expired object in the CloudFront edge cache is still the latest version.", "CloudFrontOriginAccessIdentityList$IsTruncated": "A flag that indicates whether more origin access identities remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more items in the list.", "DefaultCacheBehavior$SmoothStreaming": "Indicates whether you want to distribute media files in Microsoft Smooth Streaming format using the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "DefaultCacheBehavior$Compress": "Whether you want CloudFront to automatically compress content for web requests that include Accept-Encoding: gzip in the request header. If so, specify true; if not, specify false. CloudFront compresses files larger than 1000 bytes and less than 1 megabyte for both Amazon S3 and custom origins. When a CloudFront edge location is unusually busy, some files might not be compressed. The value of the Content-Type header must be on the list of file types that CloudFront will compress. For the current list, see Serving Compressed Content in the Amazon CloudFront Developer Guide. If you configure CloudFront to compress content, CloudFront removes the ETag response header from the objects that it compresses. The ETag header indicates that the version in a CloudFront edge cache is identical to the version on the origin server, but after compression the two versions are no longer identical. As a result, for compressed objects, CloudFront can't use the ETag header to determine whether an expired object in the CloudFront edge cache is still the latest version.", "DistributionConfig$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "DistributionList$IsTruncated": "A flag that indicates whether more distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.", "DistributionSummary$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "ForwardedValues$QueryString": "Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "InvalidationList$IsTruncated": "A flag that indicates whether more invalidation batch requests remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more invalidation batches in the list.", "LoggingConfig$Enabled": "Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you do not want to enable logging when you create a distribution or if you want to disable logging for an existing distribution, specify false for Enabled, and specify empty Bucket and Prefix elements. If you specify false for Enabled but you specify values for Bucket, prefix and IncludeCookies, the values are automatically deleted.", "LoggingConfig$IncludeCookies": "Specifies whether you want CloudFront to include cookies in access logs, specify true for IncludeCookies. If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you do not want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify false for IncludeCookies.", "StreamingDistributionConfig$Enabled": "Whether the streaming distribution is enabled to accept end user requests for content.", "StreamingDistributionList$IsTruncated": "A flag that indicates whether more streaming distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.", "StreamingDistributionSummary$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "StreamingLoggingConfig$Enabled": "Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you do not want to enable logging when you create a streaming distribution or if you want to disable logging for an existing streaming distribution, specify false for Enabled, and specify empty Bucket and Prefix elements. If you specify false for Enabled but you specify values for Bucket and Prefix, the values are automatically deleted.", "TrustedSigners$Enabled": "Specifies whether you want to require end users to use signed URLs to access the files specified by PathPattern and TargetOriginId.", "ViewerCertificate$CloudFrontDefaultCertificate": "If you want viewers to use HTTPS to request your objects and you're using the CloudFront domain name of your distribution in your object URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), set to true. Omit this value if you are setting an ACMCertificateArn or IAMCertificateId." } }, "integer": { "base": null, "refs": { "ActiveTrustedSigners$Quantity": "The number of unique trusted signers included in all cache behaviors. For example, if three cache behaviors all list the same three AWS accounts, the value of Quantity for ActiveTrustedSigners will be 3.", "Aliases$Quantity": "The number of CNAMEs, if any, for this distribution.", "AllowedMethods$Quantity": "The number of HTTP methods that you want CloudFront to forward to your origin. Valid values are 2 (for GET and HEAD requests), 3 (for GET, HEAD and OPTIONS requests) and 7 (for GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests).", "CacheBehaviors$Quantity": "The number of cache behaviors for this distribution.", "CachedMethods$Quantity": "The number of HTTP methods for which you want CloudFront to cache responses. Valid values are 2 (for caching responses to GET and HEAD requests) and 3 (for caching responses to GET, HEAD, and OPTIONS requests).", "CloudFrontOriginAccessIdentityList$MaxItems": "The value you provided for the MaxItems request parameter.", "CloudFrontOriginAccessIdentityList$Quantity": "The number of CloudFront origin access identities that were created by the current AWS account.", "CookieNames$Quantity": "The number of whitelisted cookies for this cache behavior.", "CustomErrorResponse$ErrorCode": "The 4xx or 5xx HTTP status code that you want to customize. For a list of HTTP status codes that you can customize, see CloudFront documentation.", "CustomErrorResponses$Quantity": "The number of custom error responses for this distribution.", "CustomHeaders$Quantity": "The number of custom headers for this origin.", "CustomOriginConfig$HTTPPort": "The HTTP port the custom origin listens on.", "CustomOriginConfig$HTTPSPort": "The HTTPS port the custom origin listens on.", "Distribution$InProgressInvalidationBatches": "The number of invalidation batches currently in progress.", "DistributionList$MaxItems": "The value you provided for the MaxItems request parameter.", "DistributionList$Quantity": "The number of distributions that were created by the current AWS account.", "GeoRestriction$Quantity": "When geo restriction is enabled, this is the number of countries in your whitelist or blacklist. Otherwise, when it is not enabled, Quantity is 0, and you can omit Items.", "Headers$Quantity": "The number of different headers that you want CloudFront to forward to the origin and to vary on for this cache behavior. The maximum number of headers that you can specify by name is 10. If you want CloudFront to forward all headers to the origin and vary on all of them, specify 1 for Quantity and * for Name. If you don't want CloudFront to forward any additional headers to the origin or to vary on any headers, specify 0 for Quantity and omit Items.", "InvalidationList$MaxItems": "The value you provided for the MaxItems request parameter.", "InvalidationList$Quantity": "The number of invalidation batches that were created by the current AWS account.", "KeyPairIds$Quantity": "The number of active CloudFront key pairs for AwsAccountNumber.", "OriginSslProtocols$Quantity": "The number of SSL/TLS protocols that you want to allow CloudFront to use when establishing an HTTPS connection with this origin.", "Origins$Quantity": "The number of origins for this distribution.", "Paths$Quantity": "The number of objects that you want to invalidate.", "StreamingDistributionList$MaxItems": "The value you provided for the MaxItems request parameter.", "StreamingDistributionList$Quantity": "The number of streaming distributions that were created by the current AWS account.", "TrustedSigners$Quantity": "The number of trusted signers for this cache behavior." } }, "long": { "base": null, "refs": { "CacheBehavior$MinTTL": "The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CacheBehavior$DefaultTTL": "If you don't configure your origin to add a Cache-Control max-age directive or an Expires header, DefaultTTL is the default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CacheBehavior$MaxTTL": "The maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CustomErrorResponse$ErrorCachingMinTTL": "The minimum amount of time you want HTTP error codes to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. You can specify a value from 0 to 31,536,000.", "DefaultCacheBehavior$MinTTL": "The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "DefaultCacheBehavior$DefaultTTL": "If you don't configure your origin to add a Cache-Control max-age directive or an Expires header, DefaultTTL is the default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "DefaultCacheBehavior$MaxTTL": "The maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years)." } }, "string": { "base": null, "refs": { "AccessDenied$Message": null, "AliasList$member": null, "AwsAccountNumberList$member": null, "BatchTooLarge$Message": null, "CNAMEAlreadyExists$Message": null, "CacheBehavior$PathPattern": "The pattern (for example, images/*.jpg) that specifies which requests you want this cache behavior to apply to. When CloudFront receives an end-user request, the requested path is compared with path patterns in the order in which cache behaviors are listed in the distribution. The path pattern for the default cache behavior is * and cannot be changed. If the request for an object does not match the path pattern for any cache behaviors, CloudFront applies the behavior in the default cache behavior.", "CacheBehavior$TargetOriginId": "The value of ID for the origin that you want CloudFront to route requests to when a request matches the path pattern either for a cache behavior or for the default cache behavior.", "CloudFrontOriginAccessIdentity$Id": "The ID for the origin access identity. For example: E74FTE3AJFJ256A.", "CloudFrontOriginAccessIdentity$S3CanonicalUserId": "The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin access identity read permission to an object in Amazon S3.", "CloudFrontOriginAccessIdentityAlreadyExists$Message": null, "CloudFrontOriginAccessIdentityConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the CloudFrontOriginAccessIdentityConfig object), a new origin access identity is created. If the CallerReference is a value you already sent in a previous request to create an identity, and the content of the CloudFrontOriginAccessIdentityConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create an identity but the content of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists error.", "CloudFrontOriginAccessIdentityConfig$Comment": "Any comments you want to include about the origin access identity.", "CloudFrontOriginAccessIdentityInUse$Message": null, "CloudFrontOriginAccessIdentityList$Marker": "The value you provided for the Marker request parameter.", "CloudFrontOriginAccessIdentityList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your origin access identities where they left off.", "CloudFrontOriginAccessIdentitySummary$Id": "The ID for the origin access identity. For example: E74FTE3AJFJ256A.", "CloudFrontOriginAccessIdentitySummary$S3CanonicalUserId": "The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin access identity read permission to an object in Amazon S3.", "CloudFrontOriginAccessIdentitySummary$Comment": "The comment for this origin access identity, as originally specified when created.", "CookieNameList$member": null, "CreateCloudFrontOriginAccessIdentityResult$Location": "The fully qualified URI of the new origin access identity just created. For example: https://cloudfront.amazonaws.com/2010-11-01/origin-access-identity/cloudfront/E74FTE3AJFJ256A.", "CreateCloudFrontOriginAccessIdentityResult$ETag": "The current version of the origin access identity created.", "CreateDistributionResult$Location": "The fully qualified URI of the new distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5.", "CreateDistributionResult$ETag": "The current version of the distribution created.", "CreateInvalidationRequest$DistributionId": "The distribution's id.", "CreateInvalidationResult$Location": "The fully qualified URI of the distribution and invalidation batch request, including the Invalidation ID.", "CreateStreamingDistributionResult$Location": "The fully qualified URI of the new streaming distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8.", "CreateStreamingDistributionResult$ETag": "The current version of the streaming distribution created.", "CustomErrorResponse$ResponsePagePath": "The path of the custom error page (for example, /custom_404.html). The path is relative to the distribution and must begin with a slash (/). If the path includes any non-ASCII characters or unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters. Do not URL encode any other characters in the path, or CloudFront will not return the custom error page to the viewer.", "CustomErrorResponse$ResponseCode": "The HTTP status code that you want CloudFront to return with the custom error page to the viewer. For a list of HTTP status codes that you can replace, see CloudFront Documentation.", "DefaultCacheBehavior$TargetOriginId": "The value of ID for the origin that you want CloudFront to route requests to when a request matches the path pattern either for a cache behavior or for the default cache behavior.", "DeleteCloudFrontOriginAccessIdentityRequest$Id": "The origin access identity's id.", "DeleteCloudFrontOriginAccessIdentityRequest$IfMatch": "The value of the ETag header you received from a previous GET or PUT request. For example: E2QWRUHAPOMQZL.", "DeleteDistributionRequest$Id": "The distribution id.", "DeleteDistributionRequest$IfMatch": "The value of the ETag header you received when you disabled the distribution. For example: E2QWRUHAPOMQZL.", "DeleteStreamingDistributionRequest$Id": "The distribution id.", "DeleteStreamingDistributionRequest$IfMatch": "The value of the ETag header you received when you disabled the streaming distribution. For example: E2QWRUHAPOMQZL.", "Distribution$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "Distribution$Status": "This response element indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "Distribution$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "DistributionAlreadyExists$Message": null, "DistributionConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the DistributionConfig object), a new distribution is created. If the CallerReference is a value you already sent in a previous request to create a distribution, and the content of the DistributionConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a distribution but the content of the DistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.", "DistributionConfig$DefaultRootObject": "The object that you want CloudFront to return (for example, index.html) when an end user requests the root URL for your distribution (http://www.example.com) instead of an object in your distribution (http://www.example.com/index.html). Specifying a default root object avoids exposing the contents of your distribution. If you don't want to specify a default root object when you create a distribution, include an empty DefaultRootObject element. To delete the default root object from an existing distribution, update the distribution configuration and include an empty DefaultRootObject element. To replace the default root object, update the distribution configuration and specify the new object.", "DistributionConfig$Comment": "Any comments you want to include about the distribution.", "DistributionConfig$WebACLId": "(Optional) If you're using AWS WAF to filter CloudFront requests, the Id of the AWS WAF web ACL that is associated with the distribution.", "DistributionList$Marker": "The value you provided for the Marker request parameter.", "DistributionList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your distributions where they left off.", "DistributionNotDisabled$Message": null, "DistributionSummary$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "DistributionSummary$Status": "This response element indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "DistributionSummary$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "DistributionSummary$Comment": "The comment originally specified when this distribution was created.", "DistributionSummary$WebACLId": "The Web ACL Id (if any) associated with the distribution.", "GetCloudFrontOriginAccessIdentityConfigRequest$Id": "The identity's id.", "GetCloudFrontOriginAccessIdentityConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetCloudFrontOriginAccessIdentityRequest$Id": "The identity's id.", "GetCloudFrontOriginAccessIdentityResult$ETag": "The current version of the origin access identity's information. For example: E2QWRUHAPOMQZL.", "GetDistributionConfigRequest$Id": "The distribution's id.", "GetDistributionConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetDistributionRequest$Id": "The distribution's id.", "GetDistributionResult$ETag": "The current version of the distribution's information. For example: E2QWRUHAPOMQZL.", "GetInvalidationRequest$DistributionId": "The distribution's id.", "GetInvalidationRequest$Id": "The invalidation's id.", "GetStreamingDistributionConfigRequest$Id": "The streaming distribution's id.", "GetStreamingDistributionConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetStreamingDistributionRequest$Id": "The streaming distribution's id.", "GetStreamingDistributionResult$ETag": "The current version of the streaming distribution's information. For example: E2QWRUHAPOMQZL.", "HeaderList$member": null, "IllegalUpdate$Message": null, "InconsistentQuantities$Message": null, "InvalidArgument$Message": null, "InvalidDefaultRootObject$Message": null, "InvalidErrorCode$Message": null, "InvalidForwardCookies$Message": null, "InvalidGeoRestrictionParameter$Message": null, "InvalidHeadersForS3Origin$Message": null, "InvalidIfMatchVersion$Message": null, "InvalidLocationCode$Message": null, "InvalidMinimumProtocolVersion$Message": null, "InvalidOrigin$Message": null, "InvalidOriginAccessIdentity$Message": null, "InvalidProtocolSettings$Message": null, "InvalidRelativePath$Message": null, "InvalidRequiredProtocol$Message": null, "InvalidResponseCode$Message": null, "InvalidTTLOrder$Message": null, "InvalidViewerCertificate$Message": null, "InvalidWebACLId$Message": null, "Invalidation$Id": "The identifier for the invalidation request. For example: IDFDVBD632BHDS5.", "Invalidation$Status": "The status of the invalidation request. When the invalidation batch is finished, the status is Completed.", "InvalidationBatch$CallerReference": "A unique name that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the Path object), a new distribution is created. If the CallerReference is a value you already sent in a previous request to create an invalidation batch, and the content of each Path element is identical to the original request, the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a distribution but the content of any Path is different from the original request, CloudFront returns an InvalidationBatchAlreadyExists error.", "InvalidationList$Marker": "The value you provided for the Marker request parameter.", "InvalidationList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your invalidation batches where they left off.", "InvalidationSummary$Id": "The unique ID for an invalidation request.", "InvalidationSummary$Status": "The status of an invalidation request.", "KeyPairIdList$member": null, "ListCloudFrontOriginAccessIdentitiesRequest$Marker": "Use this when paginating results to indicate where to begin in your list of origin access identities. The results include identities in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last identity on that page).", "ListCloudFrontOriginAccessIdentitiesRequest$MaxItems": "The maximum number of origin access identities you want in the response body.", "ListDistributionsByWebACLIdRequest$Marker": "Use Marker and MaxItems to control pagination of results. If you have more than MaxItems distributions that satisfy the request, the response includes a NextMarker element. To get the next page of results, submit another request. For the value of Marker, specify the value of NextMarker from the last response. (For the first request, omit Marker.)", "ListDistributionsByWebACLIdRequest$MaxItems": "The maximum number of distributions that you want CloudFront to return in the response body. The maximum and default values are both 100.", "ListDistributionsByWebACLIdRequest$WebACLId": "The Id of the AWS WAF web ACL for which you want to list the associated distributions. If you specify \"null\" for the Id, the request returns a list of the distributions that aren't associated with a web ACL.", "ListDistributionsRequest$Marker": "Use Marker and MaxItems to control pagination of results. If you have more than MaxItems distributions that satisfy the request, the response includes a NextMarker element. To get the next page of results, submit another request. For the value of Marker, specify the value of NextMarker from the last response. (For the first request, omit Marker.)", "ListDistributionsRequest$MaxItems": "The maximum number of distributions that you want CloudFront to return in the response body. The maximum and default values are both 100.", "ListInvalidationsRequest$DistributionId": "The distribution's id.", "ListInvalidationsRequest$Marker": "Use this parameter when paginating results to indicate where to begin in your list of invalidation batches. Because the results are returned in decreasing order from most recent to oldest, the most recent results are on the first page, the second page will contain earlier results, and so on. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response. This value is the same as the ID of the last invalidation batch on that page.", "ListInvalidationsRequest$MaxItems": "The maximum number of invalidation batches you want in the response body.", "ListStreamingDistributionsRequest$Marker": "Use this when paginating results to indicate where to begin in your list of streaming distributions. The results include distributions in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last distribution on that page).", "ListStreamingDistributionsRequest$MaxItems": "The maximum number of streaming distributions you want in the response body.", "LocationList$member": null, "LoggingConfig$Bucket": "The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.", "LoggingConfig$Prefix": "An optional string that you want CloudFront to prefix to the access log filenames for this distribution, for example, myprefix/. If you want to enable logging, but you do not want to specify a prefix, you still must include an empty Prefix element in the Logging element.", "MissingBody$Message": null, "NoSuchCloudFrontOriginAccessIdentity$Message": null, "NoSuchDistribution$Message": null, "NoSuchInvalidation$Message": null, "NoSuchOrigin$Message": null, "NoSuchStreamingDistribution$Message": null, "Origin$Id": "A unique identifier for the origin. The value of Id must be unique within the distribution. You use the value of Id when you create a cache behavior. The Id identifies the origin that CloudFront routes a request to when the request matches the path pattern for that cache behavior.", "Origin$DomainName": "Amazon S3 origins: The DNS name of the Amazon S3 bucket from which you want CloudFront to get objects for this origin, for example, myawsbucket.s3.amazonaws.com. Custom origins: The DNS domain name for the HTTP server from which you want CloudFront to get objects for this origin, for example, www.example.com.", "Origin$OriginPath": "An optional element that causes CloudFront to request your content from a directory in your Amazon S3 bucket or your custom origin. When you include the OriginPath element, specify the directory name, beginning with a /. CloudFront appends the directory name to the value of DomainName.", "OriginCustomHeader$HeaderName": "The header's name.", "OriginCustomHeader$HeaderValue": "The header's value.", "PathList$member": null, "PreconditionFailed$Message": null, "S3Origin$DomainName": "The DNS name of the S3 origin.", "S3Origin$OriginAccessIdentity": "Your S3 origin's origin access identity.", "S3OriginConfig$OriginAccessIdentity": "The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that end users can only access objects in an Amazon S3 bucket through CloudFront. If you want end users to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty OriginAccessIdentity element. To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty OriginAccessIdentity element. To replace the origin access identity, update the distribution configuration and specify the new origin access identity. Use the format origin-access-identity/cloudfront/Id where Id is the value that CloudFront returned in the Id element when you created the origin access identity.", "Signer$AwsAccountNumber": "Specifies an AWS account that can create signed URLs. Values: self, which indicates that the AWS account that was used to create the distribution can created signed URLs, or an AWS account number. Omit the dashes in the account number.", "StreamingDistribution$Id": "The identifier for the streaming distribution. For example: EGTXBD79H29TRA8.", "StreamingDistribution$Status": "The current status of the streaming distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "StreamingDistribution$DomainName": "The domain name corresponding to the streaming distribution. For example: s5c39gqb8ow64r.cloudfront.net.", "StreamingDistributionAlreadyExists$Message": null, "StreamingDistributionConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the StreamingDistributionConfig object), a new streaming distribution is created. If the CallerReference is a value you already sent in a previous request to create a streaming distribution, and the content of the StreamingDistributionConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a streaming distribution but the content of the StreamingDistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.", "StreamingDistributionConfig$Comment": "Any comments you want to include about the streaming distribution.", "StreamingDistributionList$Marker": "The value you provided for the Marker request parameter.", "StreamingDistributionList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your streaming distributions where they left off.", "StreamingDistributionNotDisabled$Message": null, "StreamingDistributionSummary$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "StreamingDistributionSummary$Status": "Indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "StreamingDistributionSummary$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "StreamingDistributionSummary$Comment": "The comment originally specified when this distribution was created.", "StreamingLoggingConfig$Bucket": "The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.", "StreamingLoggingConfig$Prefix": "An optional string that you want CloudFront to prefix to the access log filenames for this streaming distribution, for example, myprefix/. If you want to enable logging, but you do not want to specify a prefix, you still must include an empty Prefix element in the Logging element.", "TooManyCacheBehaviors$Message": null, "TooManyCertificates$Message": null, "TooManyCloudFrontOriginAccessIdentities$Message": null, "TooManyCookieNamesInWhiteList$Message": null, "TooManyDistributionCNAMEs$Message": null, "TooManyDistributions$Message": null, "TooManyHeadersInForwardedValues$Message": null, "TooManyInvalidationsInProgress$Message": null, "TooManyOriginCustomHeaders$Message": null, "TooManyOrigins$Message": null, "TooManyStreamingDistributionCNAMEs$Message": null, "TooManyStreamingDistributions$Message": null, "TooManyTrustedSigners$Message": null, "TrustedSignerDoesNotExist$Message": null, "UpdateCloudFrontOriginAccessIdentityRequest$Id": "The identity's id.", "UpdateCloudFrontOriginAccessIdentityRequest$IfMatch": "The value of the ETag header you received when retrieving the identity's configuration. For example: E2QWRUHAPOMQZL.", "UpdateCloudFrontOriginAccessIdentityResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "UpdateDistributionRequest$Id": "The distribution's id.", "UpdateDistributionRequest$IfMatch": "The value of the ETag header you received when retrieving the distribution's configuration. For example: E2QWRUHAPOMQZL.", "UpdateDistributionResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "UpdateStreamingDistributionRequest$Id": "The streaming distribution's id.", "UpdateStreamingDistributionRequest$IfMatch": "The value of the ETag header you received when retrieving the streaming distribution's configuration. For example: E2QWRUHAPOMQZL.", "UpdateStreamingDistributionResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "ViewerCertificate$IAMCertificateId": "If you want viewers to use HTTPS to request your objects and you're using an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), specify the IAM certificate identifier of the custom viewer certificate for this distribution. Specify either this value, ACMCertificateArn, or CloudFrontDefaultCertificate.", "ViewerCertificate$ACMCertificateArn": "If you want viewers to use HTTPS to request your objects and you're using an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), specify the ACM certificate ARN of the custom viewer certificate for this distribution. Specify either this value, IAMCertificateId, or CloudFrontDefaultCertificate.", "ViewerCertificate$Certificate": "Note: this field is deprecated. Please use one of [ACMCertificateArn, IAMCertificateId, CloudFrontDefaultCertificate]." } }, "timestamp": { "base": null, "refs": { "Distribution$LastModifiedTime": "The date and time the distribution was last modified.", "DistributionSummary$LastModifiedTime": "The date and time the distribution was last modified.", "Invalidation$CreateTime": "The date and time the invalidation request was first made.", "InvalidationSummary$CreateTime": null, "StreamingDistribution$LastModifiedTime": "The date and time the distribution was last modified.", "StreamingDistributionSummary$LastModifiedTime": "The date and time the distribution was last modified." } } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-01-28/examples-1.json000066400000000000000000000000541300374646400240640ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-01-28/paginators-1.json000066400000000000000000000021461300374646400244210ustar00rootroot00000000000000{ "pagination": { "ListCloudFrontOriginAccessIdentities": { "input_token": "Marker", "output_token": "CloudFrontOriginAccessIdentityList.NextMarker", "limit_key": "MaxItems", "more_results": "CloudFrontOriginAccessIdentityList.IsTruncated", "result_key": "CloudFrontOriginAccessIdentityList.Items" }, "ListDistributions": { "input_token": "Marker", "output_token": "DistributionList.NextMarker", "limit_key": "MaxItems", "more_results": "DistributionList.IsTruncated", "result_key": "DistributionList.Items" }, "ListInvalidations": { "input_token": "Marker", "output_token": "InvalidationList.NextMarker", "limit_key": "MaxItems", "more_results": "InvalidationList.IsTruncated", "result_key": "InvalidationList.Items" }, "ListStreamingDistributions": { "input_token": "Marker", "output_token": "StreamingDistributionList.NextMarker", "limit_key": "MaxItems", "more_results": "StreamingDistributionList.IsTruncated", "result_key": "StreamingDistributionList.Items" } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-01-28/waiters-2.json000066400000000000000000000022401300374646400237240ustar00rootroot00000000000000{ "version": 2, "waiters": { "DistributionDeployed": { "delay": 60, "operation": "GetDistribution", "maxAttempts": 25, "description": "Wait until a distribution is deployed.", "acceptors": [ { "expected": "Deployed", "matcher": "path", "state": "success", "argument": "Distribution.Status" } ] }, "InvalidationCompleted": { "delay": 20, "operation": "GetInvalidation", "maxAttempts": 30, "description": "Wait until an invalidation has completed.", "acceptors": [ { "expected": "Completed", "matcher": "path", "state": "success", "argument": "Invalidation.Status" } ] }, "StreamingDistributionDeployed": { "delay": 60, "operation": "GetStreamingDistribution", "maxAttempts": 25, "description": "Wait until a streaming distribution is deployed.", "acceptors": [ { "expected": "Deployed", "matcher": "path", "state": "success", "argument": "StreamingDistribution.Status" } ] } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-08-01/000077500000000000000000000000001300374646400212145ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudfront/2016-08-01/api-2.json000066400000000000000000002072541300374646400230310ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2016-08-01", "endpointPrefix":"cloudfront", "globalEndpoint":"cloudfront.amazonaws.com", "protocol":"rest-xml", "serviceAbbreviation":"CloudFront", "serviceFullName":"Amazon CloudFront", "signatureVersion":"v4" }, "operations":{ "CreateCloudFrontOriginAccessIdentity":{ "name":"CreateCloudFrontOriginAccessIdentity2016_08_01", "http":{ "method":"POST", "requestUri":"/2016-08-01/origin-access-identity/cloudfront", "responseCode":201 }, "input":{"shape":"CreateCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"CreateCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"CloudFrontOriginAccessIdentityAlreadyExists"}, {"shape":"MissingBody"}, {"shape":"TooManyCloudFrontOriginAccessIdentities"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "CreateDistribution":{ "name":"CreateDistribution2016_08_01", "http":{ "method":"POST", "requestUri":"/2016-08-01/distribution", "responseCode":201 }, "input":{"shape":"CreateDistributionRequest"}, "output":{"shape":"CreateDistributionResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"DistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InvalidViewerCertificate"}, {"shape":"InvalidMinimumProtocolVersion"}, {"shape":"MissingBody"}, {"shape":"TooManyDistributionCNAMEs"}, {"shape":"TooManyDistributions"}, {"shape":"InvalidDefaultRootObject"}, {"shape":"InvalidRelativePath"}, {"shape":"InvalidErrorCode"}, {"shape":"InvalidResponseCode"}, {"shape":"InvalidArgument"}, {"shape":"InvalidRequiredProtocol"}, {"shape":"NoSuchOrigin"}, {"shape":"TooManyOrigins"}, {"shape":"TooManyCacheBehaviors"}, {"shape":"TooManyCookieNamesInWhiteList"}, {"shape":"InvalidForwardCookies"}, {"shape":"TooManyHeadersInForwardedValues"}, {"shape":"InvalidHeadersForS3Origin"}, {"shape":"InconsistentQuantities"}, {"shape":"TooManyCertificates"}, {"shape":"InvalidLocationCode"}, {"shape":"InvalidGeoRestrictionParameter"}, {"shape":"InvalidProtocolSettings"}, {"shape":"InvalidTTLOrder"}, {"shape":"InvalidWebACLId"}, {"shape":"TooManyOriginCustomHeaders"} ] }, "CreateDistributionWithTags":{ "name":"CreateDistributionWithTags2016_08_01", "http":{ "method":"POST", "requestUri":"/2016-08-01/distribution?WithTags", "responseCode":201 }, "input":{"shape":"CreateDistributionWithTagsRequest"}, "output":{"shape":"CreateDistributionWithTagsResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"DistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InvalidViewerCertificate"}, {"shape":"InvalidMinimumProtocolVersion"}, {"shape":"MissingBody"}, {"shape":"TooManyDistributionCNAMEs"}, {"shape":"TooManyDistributions"}, {"shape":"InvalidDefaultRootObject"}, {"shape":"InvalidRelativePath"}, {"shape":"InvalidErrorCode"}, {"shape":"InvalidResponseCode"}, {"shape":"InvalidArgument"}, {"shape":"InvalidRequiredProtocol"}, {"shape":"NoSuchOrigin"}, {"shape":"TooManyOrigins"}, {"shape":"TooManyCacheBehaviors"}, {"shape":"TooManyCookieNamesInWhiteList"}, {"shape":"InvalidForwardCookies"}, {"shape":"TooManyHeadersInForwardedValues"}, {"shape":"InvalidHeadersForS3Origin"}, {"shape":"InconsistentQuantities"}, {"shape":"TooManyCertificates"}, {"shape":"InvalidLocationCode"}, {"shape":"InvalidGeoRestrictionParameter"}, {"shape":"InvalidProtocolSettings"}, {"shape":"InvalidTTLOrder"}, {"shape":"InvalidWebACLId"}, {"shape":"TooManyOriginCustomHeaders"}, {"shape":"InvalidTagging"} ] }, "CreateInvalidation":{ "name":"CreateInvalidation2016_08_01", "http":{ "method":"POST", "requestUri":"/2016-08-01/distribution/{DistributionId}/invalidation", "responseCode":201 }, "input":{"shape":"CreateInvalidationRequest"}, "output":{"shape":"CreateInvalidationResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"MissingBody"}, {"shape":"InvalidArgument"}, {"shape":"NoSuchDistribution"}, {"shape":"BatchTooLarge"}, {"shape":"TooManyInvalidationsInProgress"}, {"shape":"InconsistentQuantities"} ] }, "CreateStreamingDistribution":{ "name":"CreateStreamingDistribution2016_08_01", "http":{ "method":"POST", "requestUri":"/2016-08-01/streaming-distribution", "responseCode":201 }, "input":{"shape":"CreateStreamingDistributionRequest"}, "output":{"shape":"CreateStreamingDistributionResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"StreamingDistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"MissingBody"}, {"shape":"TooManyStreamingDistributionCNAMEs"}, {"shape":"TooManyStreamingDistributions"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "CreateStreamingDistributionWithTags":{ "name":"CreateStreamingDistributionWithTags2016_08_01", "http":{ "method":"POST", "requestUri":"/2016-08-01/streaming-distribution?WithTags", "responseCode":201 }, "input":{"shape":"CreateStreamingDistributionWithTagsRequest"}, "output":{"shape":"CreateStreamingDistributionWithTagsResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"StreamingDistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"MissingBody"}, {"shape":"TooManyStreamingDistributionCNAMEs"}, {"shape":"TooManyStreamingDistributions"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"}, {"shape":"InvalidTagging"} ] }, "DeleteCloudFrontOriginAccessIdentity":{ "name":"DeleteCloudFrontOriginAccessIdentity2016_08_01", "http":{ "method":"DELETE", "requestUri":"/2016-08-01/origin-access-identity/cloudfront/{Id}", "responseCode":204 }, "input":{"shape":"DeleteCloudFrontOriginAccessIdentityRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"PreconditionFailed"}, {"shape":"CloudFrontOriginAccessIdentityInUse"} ] }, "DeleteDistribution":{ "name":"DeleteDistribution2016_08_01", "http":{ "method":"DELETE", "requestUri":"/2016-08-01/distribution/{Id}", "responseCode":204 }, "input":{"shape":"DeleteDistributionRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"DistributionNotDisabled"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchDistribution"}, {"shape":"PreconditionFailed"} ] }, "DeleteStreamingDistribution":{ "name":"DeleteStreamingDistribution2016_08_01", "http":{ "method":"DELETE", "requestUri":"/2016-08-01/streaming-distribution/{Id}", "responseCode":204 }, "input":{"shape":"DeleteStreamingDistributionRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"StreamingDistributionNotDisabled"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchStreamingDistribution"}, {"shape":"PreconditionFailed"} ] }, "GetCloudFrontOriginAccessIdentity":{ "name":"GetCloudFrontOriginAccessIdentity2016_08_01", "http":{ "method":"GET", "requestUri":"/2016-08-01/origin-access-identity/cloudfront/{Id}" }, "input":{"shape":"GetCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"GetCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"AccessDenied"} ] }, "GetCloudFrontOriginAccessIdentityConfig":{ "name":"GetCloudFrontOriginAccessIdentityConfig2016_08_01", "http":{ "method":"GET", "requestUri":"/2016-08-01/origin-access-identity/cloudfront/{Id}/config" }, "input":{"shape":"GetCloudFrontOriginAccessIdentityConfigRequest"}, "output":{"shape":"GetCloudFrontOriginAccessIdentityConfigResult"}, "errors":[ {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"AccessDenied"} ] }, "GetDistribution":{ "name":"GetDistribution2016_08_01", "http":{ "method":"GET", "requestUri":"/2016-08-01/distribution/{Id}" }, "input":{"shape":"GetDistributionRequest"}, "output":{"shape":"GetDistributionResult"}, "errors":[ {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetDistributionConfig":{ "name":"GetDistributionConfig2016_08_01", "http":{ "method":"GET", "requestUri":"/2016-08-01/distribution/{Id}/config" }, "input":{"shape":"GetDistributionConfigRequest"}, "output":{"shape":"GetDistributionConfigResult"}, "errors":[ {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetInvalidation":{ "name":"GetInvalidation2016_08_01", "http":{ "method":"GET", "requestUri":"/2016-08-01/distribution/{DistributionId}/invalidation/{Id}" }, "input":{"shape":"GetInvalidationRequest"}, "output":{"shape":"GetInvalidationResult"}, "errors":[ {"shape":"NoSuchInvalidation"}, {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetStreamingDistribution":{ "name":"GetStreamingDistribution2016_08_01", "http":{ "method":"GET", "requestUri":"/2016-08-01/streaming-distribution/{Id}" }, "input":{"shape":"GetStreamingDistributionRequest"}, "output":{"shape":"GetStreamingDistributionResult"}, "errors":[ {"shape":"NoSuchStreamingDistribution"}, {"shape":"AccessDenied"} ] }, "GetStreamingDistributionConfig":{ "name":"GetStreamingDistributionConfig2016_08_01", "http":{ "method":"GET", "requestUri":"/2016-08-01/streaming-distribution/{Id}/config" }, "input":{"shape":"GetStreamingDistributionConfigRequest"}, "output":{"shape":"GetStreamingDistributionConfigResult"}, "errors":[ {"shape":"NoSuchStreamingDistribution"}, {"shape":"AccessDenied"} ] }, "ListCloudFrontOriginAccessIdentities":{ "name":"ListCloudFrontOriginAccessIdentities2016_08_01", "http":{ "method":"GET", "requestUri":"/2016-08-01/origin-access-identity/cloudfront" }, "input":{"shape":"ListCloudFrontOriginAccessIdentitiesRequest"}, "output":{"shape":"ListCloudFrontOriginAccessIdentitiesResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "ListDistributions":{ "name":"ListDistributions2016_08_01", "http":{ "method":"GET", "requestUri":"/2016-08-01/distribution" }, "input":{"shape":"ListDistributionsRequest"}, "output":{"shape":"ListDistributionsResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "ListDistributionsByWebACLId":{ "name":"ListDistributionsByWebACLId2016_08_01", "http":{ "method":"GET", "requestUri":"/2016-08-01/distributionsByWebACLId/{WebACLId}" }, "input":{"shape":"ListDistributionsByWebACLIdRequest"}, "output":{"shape":"ListDistributionsByWebACLIdResult"}, "errors":[ {"shape":"InvalidArgument"}, {"shape":"InvalidWebACLId"} ] }, "ListInvalidations":{ "name":"ListInvalidations2016_08_01", "http":{ "method":"GET", "requestUri":"/2016-08-01/distribution/{DistributionId}/invalidation" }, "input":{"shape":"ListInvalidationsRequest"}, "output":{"shape":"ListInvalidationsResult"}, "errors":[ {"shape":"InvalidArgument"}, {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "ListStreamingDistributions":{ "name":"ListStreamingDistributions2016_08_01", "http":{ "method":"GET", "requestUri":"/2016-08-01/streaming-distribution" }, "input":{"shape":"ListStreamingDistributionsRequest"}, "output":{"shape":"ListStreamingDistributionsResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "ListTagsForResource":{ "name":"ListTagsForResource2016_08_01", "http":{ "method":"GET", "requestUri":"/2016-08-01/tagging" }, "input":{"shape":"ListTagsForResourceRequest"}, "output":{"shape":"ListTagsForResourceResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidArgument"}, {"shape":"InvalidTagging"}, {"shape":"NoSuchResource"} ] }, "TagResource":{ "name":"TagResource2016_08_01", "http":{ "method":"POST", "requestUri":"/2016-08-01/tagging?Operation=Tag", "responseCode":204 }, "input":{"shape":"TagResourceRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidArgument"}, {"shape":"InvalidTagging"}, {"shape":"NoSuchResource"} ] }, "UntagResource":{ "name":"UntagResource2016_08_01", "http":{ "method":"POST", "requestUri":"/2016-08-01/tagging?Operation=Untag", "responseCode":204 }, "input":{"shape":"UntagResourceRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidArgument"}, {"shape":"InvalidTagging"}, {"shape":"NoSuchResource"} ] }, "UpdateCloudFrontOriginAccessIdentity":{ "name":"UpdateCloudFrontOriginAccessIdentity2016_08_01", "http":{ "method":"PUT", "requestUri":"/2016-08-01/origin-access-identity/cloudfront/{Id}/config" }, "input":{"shape":"UpdateCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"UpdateCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"PreconditionFailed"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "UpdateDistribution":{ "name":"UpdateDistribution2016_08_01", "http":{ "method":"PUT", "requestUri":"/2016-08-01/distribution/{Id}/config" }, "input":{"shape":"UpdateDistributionRequest"}, "output":{"shape":"UpdateDistributionResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"CNAMEAlreadyExists"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchDistribution"}, {"shape":"PreconditionFailed"}, {"shape":"TooManyDistributionCNAMEs"}, {"shape":"InvalidDefaultRootObject"}, {"shape":"InvalidRelativePath"}, {"shape":"InvalidErrorCode"}, {"shape":"InvalidResponseCode"}, {"shape":"InvalidArgument"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InvalidViewerCertificate"}, {"shape":"InvalidMinimumProtocolVersion"}, {"shape":"InvalidRequiredProtocol"}, {"shape":"NoSuchOrigin"}, {"shape":"TooManyOrigins"}, {"shape":"TooManyCacheBehaviors"}, {"shape":"TooManyCookieNamesInWhiteList"}, {"shape":"InvalidForwardCookies"}, {"shape":"TooManyHeadersInForwardedValues"}, {"shape":"InvalidHeadersForS3Origin"}, {"shape":"InconsistentQuantities"}, {"shape":"TooManyCertificates"}, {"shape":"InvalidLocationCode"}, {"shape":"InvalidGeoRestrictionParameter"}, {"shape":"InvalidTTLOrder"}, {"shape":"InvalidWebACLId"}, {"shape":"TooManyOriginCustomHeaders"} ] }, "UpdateStreamingDistribution":{ "name":"UpdateStreamingDistribution2016_08_01", "http":{ "method":"PUT", "requestUri":"/2016-08-01/streaming-distribution/{Id}/config" }, "input":{"shape":"UpdateStreamingDistributionRequest"}, "output":{"shape":"UpdateStreamingDistributionResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"CNAMEAlreadyExists"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchStreamingDistribution"}, {"shape":"PreconditionFailed"}, {"shape":"TooManyStreamingDistributionCNAMEs"}, {"shape":"InvalidArgument"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InconsistentQuantities"} ] } }, "shapes":{ "AccessDenied":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":403}, "exception":true }, "ActiveTrustedSigners":{ "type":"structure", "required":[ "Enabled", "Quantity" ], "members":{ "Enabled":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"SignerList"} } }, "AliasList":{ "type":"list", "member":{ "shape":"string", "locationName":"CNAME" } }, "Aliases":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"AliasList"} } }, "AllowedMethods":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"MethodsList"}, "CachedMethods":{"shape":"CachedMethods"} } }, "AwsAccountNumberList":{ "type":"list", "member":{ "shape":"string", "locationName":"AwsAccountNumber" } }, "BatchTooLarge":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":413}, "exception":true }, "CNAMEAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CacheBehavior":{ "type":"structure", "required":[ "PathPattern", "TargetOriginId", "ForwardedValues", "TrustedSigners", "ViewerProtocolPolicy", "MinTTL" ], "members":{ "PathPattern":{"shape":"string"}, "TargetOriginId":{"shape":"string"}, "ForwardedValues":{"shape":"ForwardedValues"}, "TrustedSigners":{"shape":"TrustedSigners"}, "ViewerProtocolPolicy":{"shape":"ViewerProtocolPolicy"}, "MinTTL":{"shape":"long"}, "AllowedMethods":{"shape":"AllowedMethods"}, "SmoothStreaming":{"shape":"boolean"}, "DefaultTTL":{"shape":"long"}, "MaxTTL":{"shape":"long"}, "Compress":{"shape":"boolean"} } }, "CacheBehaviorList":{ "type":"list", "member":{ "shape":"CacheBehavior", "locationName":"CacheBehavior" } }, "CacheBehaviors":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CacheBehaviorList"} } }, "CachedMethods":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"MethodsList"} } }, "CertificateSource":{ "type":"string", "enum":[ "cloudfront", "iam", "acm" ] }, "CloudFrontOriginAccessIdentity":{ "type":"structure", "required":[ "Id", "S3CanonicalUserId" ], "members":{ "Id":{"shape":"string"}, "S3CanonicalUserId":{"shape":"string"}, "CloudFrontOriginAccessIdentityConfig":{"shape":"CloudFrontOriginAccessIdentityConfig"} } }, "CloudFrontOriginAccessIdentityAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CloudFrontOriginAccessIdentityConfig":{ "type":"structure", "required":[ "CallerReference", "Comment" ], "members":{ "CallerReference":{"shape":"string"}, "Comment":{"shape":"string"} } }, "CloudFrontOriginAccessIdentityInUse":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CloudFrontOriginAccessIdentityList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"CloudFrontOriginAccessIdentitySummaryList"} } }, "CloudFrontOriginAccessIdentitySummary":{ "type":"structure", "required":[ "Id", "S3CanonicalUserId", "Comment" ], "members":{ "Id":{"shape":"string"}, "S3CanonicalUserId":{"shape":"string"}, "Comment":{"shape":"string"} } }, "CloudFrontOriginAccessIdentitySummaryList":{ "type":"list", "member":{ "shape":"CloudFrontOriginAccessIdentitySummary", "locationName":"CloudFrontOriginAccessIdentitySummary" } }, "CookieNameList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "CookieNames":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CookieNameList"} } }, "CookiePreference":{ "type":"structure", "required":["Forward"], "members":{ "Forward":{"shape":"ItemSelection"}, "WhitelistedNames":{"shape":"CookieNames"} } }, "CreateCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["CloudFrontOriginAccessIdentityConfig"], "members":{ "CloudFrontOriginAccessIdentityConfig":{ "shape":"CloudFrontOriginAccessIdentityConfig", "locationName":"CloudFrontOriginAccessIdentityConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-01/"} } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "CreateCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "CreateDistributionRequest":{ "type":"structure", "required":["DistributionConfig"], "members":{ "DistributionConfig":{ "shape":"DistributionConfig", "locationName":"DistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-01/"} } }, "payload":"DistributionConfig" }, "CreateDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "CreateDistributionWithTagsRequest":{ "type":"structure", "required":["DistributionConfigWithTags"], "members":{ "DistributionConfigWithTags":{ "shape":"DistributionConfigWithTags", "locationName":"DistributionConfigWithTags", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-01/"} } }, "payload":"DistributionConfigWithTags" }, "CreateDistributionWithTagsResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "CreateInvalidationRequest":{ "type":"structure", "required":[ "DistributionId", "InvalidationBatch" ], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "InvalidationBatch":{ "shape":"InvalidationBatch", "locationName":"InvalidationBatch", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-01/"} } }, "payload":"InvalidationBatch" }, "CreateInvalidationResult":{ "type":"structure", "members":{ "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "Invalidation":{"shape":"Invalidation"} }, "payload":"Invalidation" }, "CreateStreamingDistributionRequest":{ "type":"structure", "required":["StreamingDistributionConfig"], "members":{ "StreamingDistributionConfig":{ "shape":"StreamingDistributionConfig", "locationName":"StreamingDistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-01/"} } }, "payload":"StreamingDistributionConfig" }, "CreateStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "CreateStreamingDistributionWithTagsRequest":{ "type":"structure", "required":["StreamingDistributionConfigWithTags"], "members":{ "StreamingDistributionConfigWithTags":{ "shape":"StreamingDistributionConfigWithTags", "locationName":"StreamingDistributionConfigWithTags", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-01/"} } }, "payload":"StreamingDistributionConfigWithTags" }, "CreateStreamingDistributionWithTagsResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "CustomErrorResponse":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"integer"}, "ResponsePagePath":{"shape":"string"}, "ResponseCode":{"shape":"string"}, "ErrorCachingMinTTL":{"shape":"long"} } }, "CustomErrorResponseList":{ "type":"list", "member":{ "shape":"CustomErrorResponse", "locationName":"CustomErrorResponse" } }, "CustomErrorResponses":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CustomErrorResponseList"} } }, "CustomHeaders":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"OriginCustomHeadersList"} } }, "CustomOriginConfig":{ "type":"structure", "required":[ "HTTPPort", "HTTPSPort", "OriginProtocolPolicy" ], "members":{ "HTTPPort":{"shape":"integer"}, "HTTPSPort":{"shape":"integer"}, "OriginProtocolPolicy":{"shape":"OriginProtocolPolicy"}, "OriginSslProtocols":{"shape":"OriginSslProtocols"} } }, "DefaultCacheBehavior":{ "type":"structure", "required":[ "TargetOriginId", "ForwardedValues", "TrustedSigners", "ViewerProtocolPolicy", "MinTTL" ], "members":{ "TargetOriginId":{"shape":"string"}, "ForwardedValues":{"shape":"ForwardedValues"}, "TrustedSigners":{"shape":"TrustedSigners"}, "ViewerProtocolPolicy":{"shape":"ViewerProtocolPolicy"}, "MinTTL":{"shape":"long"}, "AllowedMethods":{"shape":"AllowedMethods"}, "SmoothStreaming":{"shape":"boolean"}, "DefaultTTL":{"shape":"long"}, "MaxTTL":{"shape":"long"}, "Compress":{"shape":"boolean"} } }, "DeleteCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "DeleteDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "DeleteStreamingDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "Distribution":{ "type":"structure", "required":[ "Id", "ARN", "Status", "LastModifiedTime", "InProgressInvalidationBatches", "DomainName", "ActiveTrustedSigners", "DistributionConfig" ], "members":{ "Id":{"shape":"string"}, "ARN":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "InProgressInvalidationBatches":{"shape":"integer"}, "DomainName":{"shape":"string"}, "ActiveTrustedSigners":{"shape":"ActiveTrustedSigners"}, "DistributionConfig":{"shape":"DistributionConfig"} } }, "DistributionAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "DistributionConfig":{ "type":"structure", "required":[ "CallerReference", "Origins", "DefaultCacheBehavior", "Comment", "Enabled" ], "members":{ "CallerReference":{"shape":"string"}, "Aliases":{"shape":"Aliases"}, "DefaultRootObject":{"shape":"string"}, "Origins":{"shape":"Origins"}, "DefaultCacheBehavior":{"shape":"DefaultCacheBehavior"}, "CacheBehaviors":{"shape":"CacheBehaviors"}, "CustomErrorResponses":{"shape":"CustomErrorResponses"}, "Comment":{"shape":"string"}, "Logging":{"shape":"LoggingConfig"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"}, "ViewerCertificate":{"shape":"ViewerCertificate"}, "Restrictions":{"shape":"Restrictions"}, "WebACLId":{"shape":"string"} } }, "DistributionConfigWithTags":{ "type":"structure", "required":[ "DistributionConfig", "Tags" ], "members":{ "DistributionConfig":{"shape":"DistributionConfig"}, "Tags":{"shape":"Tags"} } }, "DistributionList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"DistributionSummaryList"} } }, "DistributionNotDisabled":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "DistributionSummary":{ "type":"structure", "required":[ "Id", "ARN", "Status", "LastModifiedTime", "DomainName", "Aliases", "Origins", "DefaultCacheBehavior", "CacheBehaviors", "CustomErrorResponses", "Comment", "PriceClass", "Enabled", "ViewerCertificate", "Restrictions", "WebACLId" ], "members":{ "Id":{"shape":"string"}, "ARN":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "Aliases":{"shape":"Aliases"}, "Origins":{"shape":"Origins"}, "DefaultCacheBehavior":{"shape":"DefaultCacheBehavior"}, "CacheBehaviors":{"shape":"CacheBehaviors"}, "CustomErrorResponses":{"shape":"CustomErrorResponses"}, "Comment":{"shape":"string"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"}, "ViewerCertificate":{"shape":"ViewerCertificate"}, "Restrictions":{"shape":"Restrictions"}, "WebACLId":{"shape":"string"} } }, "DistributionSummaryList":{ "type":"list", "member":{ "shape":"DistributionSummary", "locationName":"DistributionSummary" } }, "ForwardedValues":{ "type":"structure", "required":[ "QueryString", "Cookies" ], "members":{ "QueryString":{"shape":"boolean"}, "Cookies":{"shape":"CookiePreference"}, "Headers":{"shape":"Headers"} } }, "GeoRestriction":{ "type":"structure", "required":[ "RestrictionType", "Quantity" ], "members":{ "RestrictionType":{"shape":"GeoRestrictionType"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"LocationList"} } }, "GeoRestrictionType":{ "type":"string", "enum":[ "blacklist", "whitelist", "none" ] }, "GetCloudFrontOriginAccessIdentityConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetCloudFrontOriginAccessIdentityConfigResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentityConfig":{"shape":"CloudFrontOriginAccessIdentityConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "GetCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "GetDistributionConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetDistributionConfigResult":{ "type":"structure", "members":{ "DistributionConfig":{"shape":"DistributionConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"DistributionConfig" }, "GetDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "GetInvalidationRequest":{ "type":"structure", "required":[ "DistributionId", "Id" ], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetInvalidationResult":{ "type":"structure", "members":{ "Invalidation":{"shape":"Invalidation"} }, "payload":"Invalidation" }, "GetStreamingDistributionConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetStreamingDistributionConfigResult":{ "type":"structure", "members":{ "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistributionConfig" }, "GetStreamingDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "HeaderList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "Headers":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"HeaderList"} } }, "IllegalUpdate":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InconsistentQuantities":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidArgument":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidDefaultRootObject":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidErrorCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidForwardCookies":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidGeoRestrictionParameter":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidHeadersForS3Origin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidIfMatchVersion":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidLocationCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidMinimumProtocolVersion":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidOrigin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidOriginAccessIdentity":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidProtocolSettings":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRelativePath":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRequiredProtocol":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidResponseCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidTTLOrder":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidTagging":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidViewerCertificate":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidWebACLId":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "Invalidation":{ "type":"structure", "required":[ "Id", "Status", "CreateTime", "InvalidationBatch" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "CreateTime":{"shape":"timestamp"}, "InvalidationBatch":{"shape":"InvalidationBatch"} } }, "InvalidationBatch":{ "type":"structure", "required":[ "Paths", "CallerReference" ], "members":{ "Paths":{"shape":"Paths"}, "CallerReference":{"shape":"string"} } }, "InvalidationList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"InvalidationSummaryList"} } }, "InvalidationSummary":{ "type":"structure", "required":[ "Id", "CreateTime", "Status" ], "members":{ "Id":{"shape":"string"}, "CreateTime":{"shape":"timestamp"}, "Status":{"shape":"string"} } }, "InvalidationSummaryList":{ "type":"list", "member":{ "shape":"InvalidationSummary", "locationName":"InvalidationSummary" } }, "ItemSelection":{ "type":"string", "enum":[ "none", "whitelist", "all" ] }, "KeyPairIdList":{ "type":"list", "member":{ "shape":"string", "locationName":"KeyPairId" } }, "KeyPairIds":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"KeyPairIdList"} } }, "ListCloudFrontOriginAccessIdentitiesRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListCloudFrontOriginAccessIdentitiesResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentityList":{"shape":"CloudFrontOriginAccessIdentityList"} }, "payload":"CloudFrontOriginAccessIdentityList" }, "ListDistributionsByWebACLIdRequest":{ "type":"structure", "required":["WebACLId"], "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" }, "WebACLId":{ "shape":"string", "location":"uri", "locationName":"WebACLId" } } }, "ListDistributionsByWebACLIdResult":{ "type":"structure", "members":{ "DistributionList":{"shape":"DistributionList"} }, "payload":"DistributionList" }, "ListDistributionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListDistributionsResult":{ "type":"structure", "members":{ "DistributionList":{"shape":"DistributionList"} }, "payload":"DistributionList" }, "ListInvalidationsRequest":{ "type":"structure", "required":["DistributionId"], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListInvalidationsResult":{ "type":"structure", "members":{ "InvalidationList":{"shape":"InvalidationList"} }, "payload":"InvalidationList" }, "ListStreamingDistributionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListStreamingDistributionsResult":{ "type":"structure", "members":{ "StreamingDistributionList":{"shape":"StreamingDistributionList"} }, "payload":"StreamingDistributionList" }, "ListTagsForResourceRequest":{ "type":"structure", "required":["Resource"], "members":{ "Resource":{ "shape":"ResourceARN", "location":"querystring", "locationName":"Resource" } } }, "ListTagsForResourceResult":{ "type":"structure", "required":["Tags"], "members":{ "Tags":{"shape":"Tags"} }, "payload":"Tags" }, "LocationList":{ "type":"list", "member":{ "shape":"string", "locationName":"Location" } }, "LoggingConfig":{ "type":"structure", "required":[ "Enabled", "IncludeCookies", "Bucket", "Prefix" ], "members":{ "Enabled":{"shape":"boolean"}, "IncludeCookies":{"shape":"boolean"}, "Bucket":{"shape":"string"}, "Prefix":{"shape":"string"} } }, "Method":{ "type":"string", "enum":[ "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" ] }, "MethodsList":{ "type":"list", "member":{ "shape":"Method", "locationName":"Method" } }, "MinimumProtocolVersion":{ "type":"string", "enum":[ "SSLv3", "TLSv1" ] }, "MissingBody":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "NoSuchCloudFrontOriginAccessIdentity":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchDistribution":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchInvalidation":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchOrigin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchResource":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchStreamingDistribution":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "Origin":{ "type":"structure", "required":[ "Id", "DomainName" ], "members":{ "Id":{"shape":"string"}, "DomainName":{"shape":"string"}, "OriginPath":{"shape":"string"}, "CustomHeaders":{"shape":"CustomHeaders"}, "S3OriginConfig":{"shape":"S3OriginConfig"}, "CustomOriginConfig":{"shape":"CustomOriginConfig"} } }, "OriginCustomHeader":{ "type":"structure", "required":[ "HeaderName", "HeaderValue" ], "members":{ "HeaderName":{"shape":"string"}, "HeaderValue":{"shape":"string"} } }, "OriginCustomHeadersList":{ "type":"list", "member":{ "shape":"OriginCustomHeader", "locationName":"OriginCustomHeader" } }, "OriginList":{ "type":"list", "member":{ "shape":"Origin", "locationName":"Origin" }, "min":1 }, "OriginProtocolPolicy":{ "type":"string", "enum":[ "http-only", "match-viewer", "https-only" ] }, "OriginSslProtocols":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"SslProtocolsList"} } }, "Origins":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"OriginList"} } }, "PathList":{ "type":"list", "member":{ "shape":"string", "locationName":"Path" } }, "Paths":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"PathList"} } }, "PreconditionFailed":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":412}, "exception":true }, "PriceClass":{ "type":"string", "enum":[ "PriceClass_100", "PriceClass_200", "PriceClass_All" ] }, "ResourceARN":{ "type":"string", "pattern":"arn:aws:cloudfront::[0-9]+:.*" }, "Restrictions":{ "type":"structure", "required":["GeoRestriction"], "members":{ "GeoRestriction":{"shape":"GeoRestriction"} } }, "S3Origin":{ "type":"structure", "required":[ "DomainName", "OriginAccessIdentity" ], "members":{ "DomainName":{"shape":"string"}, "OriginAccessIdentity":{"shape":"string"} } }, "S3OriginConfig":{ "type":"structure", "required":["OriginAccessIdentity"], "members":{ "OriginAccessIdentity":{"shape":"string"} } }, "SSLSupportMethod":{ "type":"string", "enum":[ "sni-only", "vip" ] }, "Signer":{ "type":"structure", "members":{ "AwsAccountNumber":{"shape":"string"}, "KeyPairIds":{"shape":"KeyPairIds"} } }, "SignerList":{ "type":"list", "member":{ "shape":"Signer", "locationName":"Signer" } }, "SslProtocol":{ "type":"string", "enum":[ "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2" ] }, "SslProtocolsList":{ "type":"list", "member":{ "shape":"SslProtocol", "locationName":"SslProtocol" } }, "StreamingDistribution":{ "type":"structure", "required":[ "Id", "ARN", "Status", "DomainName", "ActiveTrustedSigners", "StreamingDistributionConfig" ], "members":{ "Id":{"shape":"string"}, "ARN":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "ActiveTrustedSigners":{"shape":"ActiveTrustedSigners"}, "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"} } }, "StreamingDistributionAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "StreamingDistributionConfig":{ "type":"structure", "required":[ "CallerReference", "S3Origin", "Comment", "TrustedSigners", "Enabled" ], "members":{ "CallerReference":{"shape":"string"}, "S3Origin":{"shape":"S3Origin"}, "Aliases":{"shape":"Aliases"}, "Comment":{"shape":"string"}, "Logging":{"shape":"StreamingLoggingConfig"}, "TrustedSigners":{"shape":"TrustedSigners"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"} } }, "StreamingDistributionConfigWithTags":{ "type":"structure", "required":[ "StreamingDistributionConfig", "Tags" ], "members":{ "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"}, "Tags":{"shape":"Tags"} } }, "StreamingDistributionList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"StreamingDistributionSummaryList"} } }, "StreamingDistributionNotDisabled":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "StreamingDistributionSummary":{ "type":"structure", "required":[ "Id", "ARN", "Status", "LastModifiedTime", "DomainName", "S3Origin", "Aliases", "TrustedSigners", "Comment", "PriceClass", "Enabled" ], "members":{ "Id":{"shape":"string"}, "ARN":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "S3Origin":{"shape":"S3Origin"}, "Aliases":{"shape":"Aliases"}, "TrustedSigners":{"shape":"TrustedSigners"}, "Comment":{"shape":"string"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"} } }, "StreamingDistributionSummaryList":{ "type":"list", "member":{ "shape":"StreamingDistributionSummary", "locationName":"StreamingDistributionSummary" } }, "StreamingLoggingConfig":{ "type":"structure", "required":[ "Enabled", "Bucket", "Prefix" ], "members":{ "Enabled":{"shape":"boolean"}, "Bucket":{"shape":"string"}, "Prefix":{"shape":"string"} } }, "Tag":{ "type":"structure", "required":["Key"], "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{ "type":"string", "max":128, "min":1, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "TagKeyList":{ "type":"list", "member":{ "shape":"TagKey", "locationName":"Key" } }, "TagKeys":{ "type":"structure", "members":{ "Items":{"shape":"TagKeyList"} } }, "TagList":{ "type":"list", "member":{ "shape":"Tag", "locationName":"Tag" } }, "TagResourceRequest":{ "type":"structure", "required":[ "Resource", "Tags" ], "members":{ "Resource":{ "shape":"ResourceARN", "location":"querystring", "locationName":"Resource" }, "Tags":{ "shape":"Tags", "locationName":"Tags", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-01/"} } }, "payload":"Tags" }, "TagValue":{ "type":"string", "max":256, "min":0, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "Tags":{ "type":"structure", "members":{ "Items":{"shape":"TagList"} } }, "TooManyCacheBehaviors":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCertificates":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCloudFrontOriginAccessIdentities":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCookieNamesInWhiteList":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyDistributionCNAMEs":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyDistributions":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyHeadersInForwardedValues":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyInvalidationsInProgress":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyOriginCustomHeaders":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyOrigins":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyStreamingDistributionCNAMEs":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyStreamingDistributions":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyTrustedSigners":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrustedSignerDoesNotExist":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrustedSigners":{ "type":"structure", "required":[ "Enabled", "Quantity" ], "members":{ "Enabled":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"AwsAccountNumberList"} } }, "UntagResourceRequest":{ "type":"structure", "required":[ "Resource", "TagKeys" ], "members":{ "Resource":{ "shape":"ResourceARN", "location":"querystring", "locationName":"Resource" }, "TagKeys":{ "shape":"TagKeys", "locationName":"TagKeys", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-01/"} } }, "payload":"TagKeys" }, "UpdateCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":[ "CloudFrontOriginAccessIdentityConfig", "Id" ], "members":{ "CloudFrontOriginAccessIdentityConfig":{ "shape":"CloudFrontOriginAccessIdentityConfig", "locationName":"CloudFrontOriginAccessIdentityConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-01/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "UpdateCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "UpdateDistributionRequest":{ "type":"structure", "required":[ "DistributionConfig", "Id" ], "members":{ "DistributionConfig":{ "shape":"DistributionConfig", "locationName":"DistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-01/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"DistributionConfig" }, "UpdateDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "UpdateStreamingDistributionRequest":{ "type":"structure", "required":[ "StreamingDistributionConfig", "Id" ], "members":{ "StreamingDistributionConfig":{ "shape":"StreamingDistributionConfig", "locationName":"StreamingDistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-01/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"StreamingDistributionConfig" }, "UpdateStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "ViewerCertificate":{ "type":"structure", "members":{ "CloudFrontDefaultCertificate":{"shape":"boolean"}, "IAMCertificateId":{"shape":"string"}, "ACMCertificateArn":{"shape":"string"}, "SSLSupportMethod":{"shape":"SSLSupportMethod"}, "MinimumProtocolVersion":{"shape":"MinimumProtocolVersion"}, "Certificate":{ "shape":"string", "deprecated":true }, "CertificateSource":{ "shape":"CertificateSource", "deprecated":true } } }, "ViewerProtocolPolicy":{ "type":"string", "enum":[ "allow-all", "https-only", "redirect-to-https" ] }, "boolean":{"type":"boolean"}, "integer":{"type":"integer"}, "long":{"type":"long"}, "string":{"type":"string"}, "timestamp":{"type":"timestamp"} } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-08-01/docs-2.json000066400000000000000000002743221300374646400232100ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon CloudFront

        Amazon CloudFront is a global content delivery network (CDN) service that accelerates delivery of your websites, APIs, video content or other web assets. It integrates with other Amazon Web Services products to give developers and businesses an easy way to accelerate content to end users with no minimum usage commitments.

        ", "operations": { "CreateCloudFrontOriginAccessIdentity": "Create a new origin access identity.", "CreateDistribution": "Create a new distribution.", "CreateDistributionWithTags": "Create a new distribution with tags.", "CreateInvalidation": "Create a new invalidation.", "CreateStreamingDistribution": "Create a new streaming distribution.", "CreateStreamingDistributionWithTags": "Create a new streaming distribution with tags.", "DeleteCloudFrontOriginAccessIdentity": "Delete an origin access identity.", "DeleteDistribution": "Delete a distribution.", "DeleteStreamingDistribution": "Delete a streaming distribution.", "GetCloudFrontOriginAccessIdentity": "Get the information about an origin access identity.", "GetCloudFrontOriginAccessIdentityConfig": "Get the configuration information about an origin access identity.", "GetDistribution": "Get the information about a distribution.", "GetDistributionConfig": "Get the configuration information about a distribution.", "GetInvalidation": "Get the information about an invalidation.", "GetStreamingDistribution": "Get the information about a streaming distribution.", "GetStreamingDistributionConfig": "Get the configuration information about a streaming distribution.", "ListCloudFrontOriginAccessIdentities": "List origin access identities.", "ListDistributions": "List distributions.", "ListDistributionsByWebACLId": "List the distributions that are associated with a specified AWS WAF web ACL.", "ListInvalidations": "List invalidation batches.", "ListStreamingDistributions": "List streaming distributions.", "ListTagsForResource": "List tags for a CloudFront resource.", "TagResource": "Add tags to a CloudFront resource.", "UntagResource": "Remove tags from a CloudFront resource.", "UpdateCloudFrontOriginAccessIdentity": "Update an origin access identity.", "UpdateDistribution": "Update a distribution.", "UpdateStreamingDistribution": "Update a streaming distribution." }, "shapes": { "AccessDenied": { "base": "Access denied.", "refs": { } }, "ActiveTrustedSigners": { "base": "A complex type that lists the AWS accounts, if any, that you included in the TrustedSigners complex type for the default cache behavior or for any of the other cache behaviors for this distribution. These are accounts that you want to allow to create signed URLs for private content.", "refs": { "Distribution$ActiveTrustedSigners": "CloudFront automatically adds this element to the response only if you've set up the distribution to serve private content with signed URLs. The element lists the key pair IDs that CloudFront is aware of for each trusted signer. The Signer child element lists the AWS account number of the trusted signer (or an empty Self element if the signer is you). The Signer element also includes the IDs of any active key pairs associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create working signed URLs.", "StreamingDistribution$ActiveTrustedSigners": "CloudFront automatically adds this element to the response only if you've set up the distribution to serve private content with signed URLs. The element lists the key pair IDs that CloudFront is aware of for each trusted signer. The Signer child element lists the AWS account number of the trusted signer (or an empty Self element if the signer is you). The Signer element also includes the IDs of any active key pairs associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create working signed URLs." } }, "AliasList": { "base": null, "refs": { "Aliases$Items": "Optional: A complex type that contains CNAME elements, if any, for this distribution. If Quantity is 0, you can omit Items." } }, "Aliases": { "base": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "refs": { "DistributionConfig$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "DistributionSummary$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "StreamingDistributionConfig$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution.", "StreamingDistributionSummary$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution." } }, "AllowedMethods": { "base": "A complex type that controls which HTTP methods CloudFront processes and forwards to your Amazon S3 bucket or your custom origin. There are three choices: - CloudFront forwards only GET and HEAD requests. - CloudFront forwards only GET, HEAD and OPTIONS requests. - CloudFront forwards GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests. If you pick the third choice, you may need to restrict access to your Amazon S3 bucket or to your custom origin so users can't perform operations that you don't want them to. For example, you may not want users to have permission to delete objects from your origin.", "refs": { "CacheBehavior$AllowedMethods": null, "DefaultCacheBehavior$AllowedMethods": null } }, "AwsAccountNumberList": { "base": null, "refs": { "TrustedSigners$Items": "Optional: A complex type that contains trusted signers for this cache behavior. If Quantity is 0, you can omit Items." } }, "BatchTooLarge": { "base": null, "refs": { } }, "CNAMEAlreadyExists": { "base": null, "refs": { } }, "CacheBehavior": { "base": "A complex type that describes how CloudFront processes requests. You can create up to 10 cache behaviors.You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to distribute objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin will never be used. If you don't want to specify any cache behaviors, include only an empty CacheBehaviors element. Don't include an empty CacheBehavior element, or CloudFront returns a MalformedXML error. To delete all cache behaviors in an existing distribution, update the distribution configuration and include only an empty CacheBehaviors element. To add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution.", "refs": { "CacheBehaviorList$member": null } }, "CacheBehaviorList": { "base": null, "refs": { "CacheBehaviors$Items": "Optional: A complex type that contains cache behaviors for this distribution. If Quantity is 0, you can omit Items." } }, "CacheBehaviors": { "base": "A complex type that contains zero or more CacheBehavior elements.", "refs": { "DistributionConfig$CacheBehaviors": "A complex type that contains zero or more CacheBehavior elements.", "DistributionSummary$CacheBehaviors": "A complex type that contains zero or more CacheBehavior elements." } }, "CachedMethods": { "base": "A complex type that controls whether CloudFront caches the response to requests using the specified HTTP methods. There are two choices: - CloudFront caches responses to GET and HEAD requests. - CloudFront caches responses to GET, HEAD, and OPTIONS requests. If you pick the second choice for your S3 Origin, you may need to forward Access-Control-Request-Method, Access-Control-Request-Headers and Origin headers for the responses to be cached correctly.", "refs": { "AllowedMethods$CachedMethods": null } }, "CertificateSource": { "base": null, "refs": { "ViewerCertificate$CertificateSource": "Note: this field is deprecated. Please use one of [ACMCertificateArn, IAMCertificateId, CloudFrontDefaultCertificate]." } }, "CloudFrontOriginAccessIdentity": { "base": "CloudFront origin access identity.", "refs": { "CreateCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information.", "GetCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information.", "UpdateCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information." } }, "CloudFrontOriginAccessIdentityAlreadyExists": { "base": "If the CallerReference is a value you already sent in a previous request to create an identity but the content of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists error.", "refs": { } }, "CloudFrontOriginAccessIdentityConfig": { "base": "Origin access identity configuration.", "refs": { "CloudFrontOriginAccessIdentity$CloudFrontOriginAccessIdentityConfig": "The current configuration information for the identity.", "CreateCloudFrontOriginAccessIdentityRequest$CloudFrontOriginAccessIdentityConfig": "The origin access identity's configuration information.", "GetCloudFrontOriginAccessIdentityConfigResult$CloudFrontOriginAccessIdentityConfig": "The origin access identity's configuration information.", "UpdateCloudFrontOriginAccessIdentityRequest$CloudFrontOriginAccessIdentityConfig": "The identity's configuration information." } }, "CloudFrontOriginAccessIdentityInUse": { "base": null, "refs": { } }, "CloudFrontOriginAccessIdentityList": { "base": "The CloudFrontOriginAccessIdentityList type.", "refs": { "ListCloudFrontOriginAccessIdentitiesResult$CloudFrontOriginAccessIdentityList": "The CloudFrontOriginAccessIdentityList type." } }, "CloudFrontOriginAccessIdentitySummary": { "base": "Summary of the information about a CloudFront origin access identity.", "refs": { "CloudFrontOriginAccessIdentitySummaryList$member": null } }, "CloudFrontOriginAccessIdentitySummaryList": { "base": null, "refs": { "CloudFrontOriginAccessIdentityList$Items": "A complex type that contains one CloudFrontOriginAccessIdentitySummary element for each origin access identity that was created by the current AWS account." } }, "CookieNameList": { "base": null, "refs": { "CookieNames$Items": "Optional: A complex type that contains whitelisted cookies for this cache behavior. If Quantity is 0, you can omit Items." } }, "CookieNames": { "base": "A complex type that specifies the whitelisted cookies, if any, that you want CloudFront to forward to your origin that is associated with this cache behavior.", "refs": { "CookiePreference$WhitelistedNames": "A complex type that specifies the whitelisted cookies, if any, that you want CloudFront to forward to your origin that is associated with this cache behavior." } }, "CookiePreference": { "base": "A complex type that specifies the cookie preferences associated with this cache behavior.", "refs": { "ForwardedValues$Cookies": "A complex type that specifies how CloudFront handles cookies." } }, "CreateCloudFrontOriginAccessIdentityRequest": { "base": "The request to create a new origin access identity.", "refs": { } }, "CreateCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateDistributionRequest": { "base": "The request to create a new distribution.", "refs": { } }, "CreateDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateDistributionWithTagsRequest": { "base": "The request to create a new distribution with tags", "refs": { } }, "CreateDistributionWithTagsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateInvalidationRequest": { "base": "The request to create an invalidation.", "refs": { } }, "CreateInvalidationResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateStreamingDistributionRequest": { "base": "The request to create a new streaming distribution.", "refs": { } }, "CreateStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateStreamingDistributionWithTagsRequest": { "base": "The request to create a new streaming distribution with tags.", "refs": { } }, "CreateStreamingDistributionWithTagsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CustomErrorResponse": { "base": "A complex type that describes how you'd prefer CloudFront to respond to requests that result in either a 4xx or 5xx response. You can control whether a custom error page should be displayed, what the desired response code should be for this error page and how long should the error response be cached by CloudFront. If you don't want to specify any custom error responses, include only an empty CustomErrorResponses element. To delete all custom error responses in an existing distribution, update the distribution configuration and include only an empty CustomErrorResponses element. To add, change, or remove one or more custom error responses, update the distribution configuration and specify all of the custom error responses that you want to include in the updated distribution.", "refs": { "CustomErrorResponseList$member": null } }, "CustomErrorResponseList": { "base": null, "refs": { "CustomErrorResponses$Items": "Optional: A complex type that contains custom error responses for this distribution. If Quantity is 0, you can omit Items." } }, "CustomErrorResponses": { "base": "A complex type that contains zero or more CustomErrorResponse elements.", "refs": { "DistributionConfig$CustomErrorResponses": "A complex type that contains zero or more CustomErrorResponse elements.", "DistributionSummary$CustomErrorResponses": "A complex type that contains zero or more CustomErrorResponses elements." } }, "CustomHeaders": { "base": "A complex type that contains the list of Custom Headers for each origin.", "refs": { "Origin$CustomHeaders": "A complex type that contains information about the custom headers associated with this Origin." } }, "CustomOriginConfig": { "base": "A customer origin.", "refs": { "Origin$CustomOriginConfig": "A complex type that contains information about a custom origin. If the origin is an Amazon S3 bucket, use the S3OriginConfig element instead." } }, "DefaultCacheBehavior": { "base": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior.", "refs": { "DistributionConfig$DefaultCacheBehavior": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior.", "DistributionSummary$DefaultCacheBehavior": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior." } }, "DeleteCloudFrontOriginAccessIdentityRequest": { "base": "The request to delete a origin access identity.", "refs": { } }, "DeleteDistributionRequest": { "base": "The request to delete a distribution.", "refs": { } }, "DeleteStreamingDistributionRequest": { "base": "The request to delete a streaming distribution.", "refs": { } }, "Distribution": { "base": "A distribution.", "refs": { "CreateDistributionResult$Distribution": "The distribution's information.", "CreateDistributionWithTagsResult$Distribution": "The distribution's information.", "GetDistributionResult$Distribution": "The distribution's information.", "UpdateDistributionResult$Distribution": "The distribution's information." } }, "DistributionAlreadyExists": { "base": "The caller reference you attempted to create the distribution with is associated with another distribution.", "refs": { } }, "DistributionConfig": { "base": "A distribution Configuration.", "refs": { "CreateDistributionRequest$DistributionConfig": "The distribution's configuration information.", "Distribution$DistributionConfig": "The current configuration information for the distribution.", "DistributionConfigWithTags$DistributionConfig": "A distribution Configuration.", "GetDistributionConfigResult$DistributionConfig": "The distribution's configuration information.", "UpdateDistributionRequest$DistributionConfig": "The distribution's configuration information." } }, "DistributionConfigWithTags": { "base": "A distribution Configuration and a list of tags to be associated with the distribution.", "refs": { "CreateDistributionWithTagsRequest$DistributionConfigWithTags": "The distribution's configuration information." } }, "DistributionList": { "base": "A distribution list.", "refs": { "ListDistributionsByWebACLIdResult$DistributionList": "The DistributionList type.", "ListDistributionsResult$DistributionList": "The DistributionList type." } }, "DistributionNotDisabled": { "base": null, "refs": { } }, "DistributionSummary": { "base": "A summary of the information for an Amazon CloudFront distribution.", "refs": { "DistributionSummaryList$member": null } }, "DistributionSummaryList": { "base": null, "refs": { "DistributionList$Items": "A complex type that contains one DistributionSummary element for each distribution that was created by the current AWS account." } }, "ForwardedValues": { "base": "A complex type that specifies how CloudFront handles query strings, cookies and headers.", "refs": { "CacheBehavior$ForwardedValues": "A complex type that specifies how CloudFront handles query strings, cookies and headers.", "DefaultCacheBehavior$ForwardedValues": "A complex type that specifies how CloudFront handles query strings, cookies and headers." } }, "GeoRestriction": { "base": "A complex type that controls the countries in which your content is distributed. For more information about geo restriction, go to Customizing Error Responses in the Amazon CloudFront Developer Guide. CloudFront determines the location of your users using MaxMind GeoIP databases. For information about the accuracy of these databases, see How accurate are your GeoIP databases? on the MaxMind website.", "refs": { "Restrictions$GeoRestriction": null } }, "GeoRestrictionType": { "base": null, "refs": { "GeoRestriction$RestrictionType": "The method that you want to use to restrict distribution of your content by country: - none: No geo restriction is enabled, meaning access to content is not restricted by client geo location. - blacklist: The Location elements specify the countries in which you do not want CloudFront to distribute your content. - whitelist: The Location elements specify the countries in which you want CloudFront to distribute your content." } }, "GetCloudFrontOriginAccessIdentityConfigRequest": { "base": "The request to get an origin access identity's configuration.", "refs": { } }, "GetCloudFrontOriginAccessIdentityConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetCloudFrontOriginAccessIdentityRequest": { "base": "The request to get an origin access identity's information.", "refs": { } }, "GetCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetDistributionConfigRequest": { "base": "The request to get a distribution configuration.", "refs": { } }, "GetDistributionConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetDistributionRequest": { "base": "The request to get a distribution's information.", "refs": { } }, "GetDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetInvalidationRequest": { "base": "The request to get an invalidation's information.", "refs": { } }, "GetInvalidationResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetStreamingDistributionConfigRequest": { "base": "To request to get a streaming distribution configuration.", "refs": { } }, "GetStreamingDistributionConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetStreamingDistributionRequest": { "base": "The request to get a streaming distribution's information.", "refs": { } }, "GetStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "HeaderList": { "base": null, "refs": { "Headers$Items": "Optional: A complex type that contains a Name element for each header that you want CloudFront to forward to the origin and to vary on for this cache behavior. If Quantity is 0, omit Items." } }, "Headers": { "base": "A complex type that specifies the headers that you want CloudFront to forward to the origin for this cache behavior. For the headers that you specify, CloudFront also caches separate versions of a given object based on the header values in viewer requests; this is known as varying on headers. For example, suppose viewer requests for logo.jpg contain a custom Product header that has a value of either Acme or Apex, and you configure CloudFront to vary on the Product header. CloudFront forwards the Product header to the origin and caches the response from the origin once for each header value.", "refs": { "ForwardedValues$Headers": "A complex type that specifies the Headers, if any, that you want CloudFront to vary upon for this cache behavior." } }, "IllegalUpdate": { "base": "Origin and CallerReference cannot be updated.", "refs": { } }, "InconsistentQuantities": { "base": "The value of Quantity and the size of Items do not match.", "refs": { } }, "InvalidArgument": { "base": "The argument is invalid.", "refs": { } }, "InvalidDefaultRootObject": { "base": "The default root object file name is too big or contains an invalid character.", "refs": { } }, "InvalidErrorCode": { "base": null, "refs": { } }, "InvalidForwardCookies": { "base": "Your request contains forward cookies option which doesn't match with the expectation for the whitelisted list of cookie names. Either list of cookie names has been specified when not allowed or list of cookie names is missing when expected.", "refs": { } }, "InvalidGeoRestrictionParameter": { "base": null, "refs": { } }, "InvalidHeadersForS3Origin": { "base": null, "refs": { } }, "InvalidIfMatchVersion": { "base": "The If-Match version is missing or not valid for the distribution.", "refs": { } }, "InvalidLocationCode": { "base": null, "refs": { } }, "InvalidMinimumProtocolVersion": { "base": null, "refs": { } }, "InvalidOrigin": { "base": "The Amazon S3 origin server specified does not refer to a valid Amazon S3 bucket.", "refs": { } }, "InvalidOriginAccessIdentity": { "base": "The origin access identity is not valid or doesn't exist.", "refs": { } }, "InvalidProtocolSettings": { "base": "You cannot specify SSLv3 as the minimum protocol version if you only want to support only clients that Support Server Name Indication (SNI).", "refs": { } }, "InvalidRelativePath": { "base": "The relative path is too big, is not URL-encoded, or does not begin with a slash (/).", "refs": { } }, "InvalidRequiredProtocol": { "base": "This operation requires the HTTPS protocol. Ensure that you specify the HTTPS protocol in your request, or omit the RequiredProtocols element from your distribution configuration.", "refs": { } }, "InvalidResponseCode": { "base": null, "refs": { } }, "InvalidTTLOrder": { "base": null, "refs": { } }, "InvalidTagging": { "base": "The specified tagging for a CloudFront resource is invalid. For more information, see the error text.", "refs": { } }, "InvalidViewerCertificate": { "base": null, "refs": { } }, "InvalidWebACLId": { "base": null, "refs": { } }, "Invalidation": { "base": "An invalidation.", "refs": { "CreateInvalidationResult$Invalidation": "The invalidation's information.", "GetInvalidationResult$Invalidation": "The invalidation's information." } }, "InvalidationBatch": { "base": "An invalidation batch.", "refs": { "CreateInvalidationRequest$InvalidationBatch": "The batch information for the invalidation.", "Invalidation$InvalidationBatch": "The current invalidation information for the batch request." } }, "InvalidationList": { "base": "An invalidation list.", "refs": { "ListInvalidationsResult$InvalidationList": "Information about invalidation batches." } }, "InvalidationSummary": { "base": "Summary of an invalidation request.", "refs": { "InvalidationSummaryList$member": null } }, "InvalidationSummaryList": { "base": null, "refs": { "InvalidationList$Items": "A complex type that contains one InvalidationSummary element for each invalidation batch that was created by the current AWS account." } }, "ItemSelection": { "base": null, "refs": { "CookiePreference$Forward": "Use this element to specify whether you want CloudFront to forward cookies to the origin that is associated with this cache behavior. You can specify all, none or whitelist. If you choose All, CloudFront forwards all cookies regardless of how many your application uses." } }, "KeyPairIdList": { "base": null, "refs": { "KeyPairIds$Items": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber." } }, "KeyPairIds": { "base": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber.", "refs": { "Signer$KeyPairIds": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber." } }, "ListCloudFrontOriginAccessIdentitiesRequest": { "base": "The request to list origin access identities.", "refs": { } }, "ListCloudFrontOriginAccessIdentitiesResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListDistributionsByWebACLIdRequest": { "base": "The request to list distributions that are associated with a specified AWS WAF web ACL.", "refs": { } }, "ListDistributionsByWebACLIdResult": { "base": "The response to a request to list the distributions that are associated with a specified AWS WAF web ACL.", "refs": { } }, "ListDistributionsRequest": { "base": "The request to list your distributions.", "refs": { } }, "ListDistributionsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListInvalidationsRequest": { "base": "The request to list invalidations.", "refs": { } }, "ListInvalidationsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListStreamingDistributionsRequest": { "base": "The request to list your streaming distributions.", "refs": { } }, "ListStreamingDistributionsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListTagsForResourceRequest": { "base": "The request to list tags for a CloudFront resource.", "refs": { } }, "ListTagsForResourceResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "LocationList": { "base": null, "refs": { "GeoRestriction$Items": "A complex type that contains a Location element for each country in which you want CloudFront either to distribute your content (whitelist) or not distribute your content (blacklist). The Location element is a two-letter, uppercase country code for a country that you want to include in your blacklist or whitelist. Include one Location element for each country. CloudFront and MaxMind both use ISO 3166 country codes. For the current list of countries and the corresponding codes, see ISO 3166-1-alpha-2 code on the International Organization for Standardization website. You can also refer to the country list in the CloudFront console, which includes both country names and codes." } }, "LoggingConfig": { "base": "A complex type that controls whether access logs are written for the distribution.", "refs": { "DistributionConfig$Logging": "A complex type that controls whether access logs are written for the distribution." } }, "Method": { "base": null, "refs": { "MethodsList$member": null } }, "MethodsList": { "base": null, "refs": { "AllowedMethods$Items": "A complex type that contains the HTTP methods that you want CloudFront to process and forward to your origin.", "CachedMethods$Items": "A complex type that contains the HTTP methods that you want CloudFront to cache responses to." } }, "MinimumProtocolVersion": { "base": null, "refs": { "ViewerCertificate$MinimumProtocolVersion": "Specify the minimum version of the SSL protocol that you want CloudFront to use, SSLv3 or TLSv1, for HTTPS connections. CloudFront will serve your objects only to browsers or devices that support at least the SSL version that you specify. The TLSv1 protocol is more secure, so we recommend that you specify SSLv3 only if your users are using browsers or devices that don't support TLSv1. If you're using a custom certificate (if you specify a value for IAMCertificateId) and if you're using dedicated IP (if you specify vip for SSLSupportMethod), you can choose SSLv3 or TLSv1 as the MinimumProtocolVersion. If you're using a custom certificate (if you specify a value for IAMCertificateId) and if you're using SNI (if you specify sni-only for SSLSupportMethod), you must specify TLSv1 for MinimumProtocolVersion." } }, "MissingBody": { "base": "This operation requires a body. Ensure that the body is present and the Content-Type header is set.", "refs": { } }, "NoSuchCloudFrontOriginAccessIdentity": { "base": "The specified origin access identity does not exist.", "refs": { } }, "NoSuchDistribution": { "base": "The specified distribution does not exist.", "refs": { } }, "NoSuchInvalidation": { "base": "The specified invalidation does not exist.", "refs": { } }, "NoSuchOrigin": { "base": "No origin exists with the specified Origin Id.", "refs": { } }, "NoSuchResource": { "base": "The specified CloudFront resource does not exist.", "refs": { } }, "NoSuchStreamingDistribution": { "base": "The specified streaming distribution does not exist.", "refs": { } }, "Origin": { "base": "A complex type that describes the Amazon S3 bucket or the HTTP server (for example, a web server) from which CloudFront gets your files.You must create at least one origin.", "refs": { "OriginList$member": null } }, "OriginCustomHeader": { "base": "A complex type that contains information related to a Header", "refs": { "OriginCustomHeadersList$member": null } }, "OriginCustomHeadersList": { "base": null, "refs": { "CustomHeaders$Items": "A complex type that contains the custom headers for this Origin." } }, "OriginList": { "base": null, "refs": { "Origins$Items": "A complex type that contains origins for this distribution." } }, "OriginProtocolPolicy": { "base": null, "refs": { "CustomOriginConfig$OriginProtocolPolicy": "The origin protocol policy to apply to your origin." } }, "OriginSslProtocols": { "base": "A complex type that contains the list of SSL/TLS protocols that you want CloudFront to use when communicating with your origin over HTTPS.", "refs": { "CustomOriginConfig$OriginSslProtocols": "The SSL/TLS protocols that you want CloudFront to use when communicating with your origin over HTTPS." } }, "Origins": { "base": "A complex type that contains information about origins for this distribution.", "refs": { "DistributionConfig$Origins": "A complex type that contains information about origins for this distribution.", "DistributionSummary$Origins": "A complex type that contains information about origins for this distribution." } }, "PathList": { "base": null, "refs": { "Paths$Items": "A complex type that contains a list of the objects that you want to invalidate." } }, "Paths": { "base": "A complex type that contains information about the objects that you want to invalidate.", "refs": { "InvalidationBatch$Paths": "The path of the object to invalidate. The path is relative to the distribution and must begin with a slash (/). You must enclose each invalidation object with the Path element tags. If the path includes non-ASCII characters or unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters. Do not URL encode any other characters in the path, or CloudFront will not invalidate the old version of the updated object." } }, "PreconditionFailed": { "base": "The precondition given in one or more of the request-header fields evaluated to false.", "refs": { } }, "PriceClass": { "base": null, "refs": { "DistributionConfig$PriceClass": "A complex type that contains information about price class for this distribution.", "DistributionSummary$PriceClass": null, "StreamingDistributionConfig$PriceClass": "A complex type that contains information about price class for this streaming distribution.", "StreamingDistributionSummary$PriceClass": null } }, "ResourceARN": { "base": null, "refs": { "ListTagsForResourceRequest$Resource": "An ARN of a CloudFront resource.", "TagResourceRequest$Resource": "An ARN of a CloudFront resource.", "UntagResourceRequest$Resource": "An ARN of a CloudFront resource." } }, "Restrictions": { "base": "A complex type that identifies ways in which you want to restrict distribution of your content.", "refs": { "DistributionConfig$Restrictions": null, "DistributionSummary$Restrictions": null } }, "S3Origin": { "base": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.", "refs": { "StreamingDistributionConfig$S3Origin": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.", "StreamingDistributionSummary$S3Origin": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution." } }, "S3OriginConfig": { "base": "A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead.", "refs": { "Origin$S3OriginConfig": "A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead." } }, "SSLSupportMethod": { "base": null, "refs": { "ViewerCertificate$SSLSupportMethod": "If you specify a value for IAMCertificateId, you must also specify how you want CloudFront to serve HTTPS requests. Valid values are vip and sni-only. If you specify vip, CloudFront uses dedicated IP addresses for your content and can respond to HTTPS requests from any viewer. However, you must request permission to use this feature, and you incur additional monthly charges. If you specify sni-only, CloudFront can only respond to HTTPS requests from viewers that support Server Name Indication (SNI). All modern browsers support SNI, but some browsers still in use don't support SNI. Do not specify a value for SSLSupportMethod if you specified true for CloudFrontDefaultCertificate." } }, "Signer": { "base": "A complex type that lists the AWS accounts that were included in the TrustedSigners complex type, as well as their active CloudFront key pair IDs, if any.", "refs": { "SignerList$member": null } }, "SignerList": { "base": null, "refs": { "ActiveTrustedSigners$Items": "A complex type that contains one Signer complex type for each unique trusted signer that is specified in the TrustedSigners complex type, including trusted signers in the default cache behavior and in all of the other cache behaviors." } }, "SslProtocol": { "base": null, "refs": { "SslProtocolsList$member": null } }, "SslProtocolsList": { "base": null, "refs": { "OriginSslProtocols$Items": "A complex type that contains one SslProtocol element for each SSL/TLS protocol that you want to allow CloudFront to use when establishing an HTTPS connection with this origin." } }, "StreamingDistribution": { "base": "A streaming distribution.", "refs": { "CreateStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information.", "CreateStreamingDistributionWithTagsResult$StreamingDistribution": "The streaming distribution's information.", "GetStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information.", "UpdateStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information." } }, "StreamingDistributionAlreadyExists": { "base": null, "refs": { } }, "StreamingDistributionConfig": { "base": "The configuration for the streaming distribution.", "refs": { "CreateStreamingDistributionRequest$StreamingDistributionConfig": "The streaming distribution's configuration information.", "GetStreamingDistributionConfigResult$StreamingDistributionConfig": "The streaming distribution's configuration information.", "StreamingDistribution$StreamingDistributionConfig": "The current configuration information for the streaming distribution.", "StreamingDistributionConfigWithTags$StreamingDistributionConfig": "A streaming distribution Configuration.", "UpdateStreamingDistributionRequest$StreamingDistributionConfig": "The streaming distribution's configuration information." } }, "StreamingDistributionConfigWithTags": { "base": "A streaming distribution Configuration and a list of tags to be associated with the streaming distribution.", "refs": { "CreateStreamingDistributionWithTagsRequest$StreamingDistributionConfigWithTags": "The streaming distribution's configuration information." } }, "StreamingDistributionList": { "base": "A streaming distribution list.", "refs": { "ListStreamingDistributionsResult$StreamingDistributionList": "The StreamingDistributionList type." } }, "StreamingDistributionNotDisabled": { "base": null, "refs": { } }, "StreamingDistributionSummary": { "base": "A summary of the information for an Amazon CloudFront streaming distribution.", "refs": { "StreamingDistributionSummaryList$member": null } }, "StreamingDistributionSummaryList": { "base": null, "refs": { "StreamingDistributionList$Items": "A complex type that contains one StreamingDistributionSummary element for each distribution that was created by the current AWS account." } }, "StreamingLoggingConfig": { "base": "A complex type that controls whether access logs are written for this streaming distribution.", "refs": { "StreamingDistributionConfig$Logging": "A complex type that controls whether access logs are written for the streaming distribution." } }, "Tag": { "base": "A complex type that contains Tag key and Tag value.", "refs": { "TagList$member": null } }, "TagKey": { "base": "A string that contains Tag key. The string length should be between 1 and 128 characters. Valid characters include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.", "refs": { "Tag$Key": "A string that contains Tag key. The string length should be between 1 and 128 characters. Valid characters include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.", "TagKeyList$member": null } }, "TagKeyList": { "base": null, "refs": { "TagKeys$Items": "A complex type that contains Tag key elements" } }, "TagKeys": { "base": "A complex type that contains zero or more Tag elements.", "refs": { "UntagResourceRequest$TagKeys": "A complex type that contains zero or more Tag key elements." } }, "TagList": { "base": null, "refs": { "Tags$Items": "A complex type that contains Tag elements" } }, "TagResourceRequest": { "base": "The request to add tags to a CloudFront resource.", "refs": { } }, "TagValue": { "base": null, "refs": { "Tag$Value": "A string that contains an optional Tag value. The string length should be between 0 and 256 characters. Valid characters include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @." } }, "Tags": { "base": "A complex type that contains zero or more Tag elements.", "refs": { "DistributionConfigWithTags$Tags": "A complex type that contains zero or more Tag elements.", "ListTagsForResourceResult$Tags": "A complex type that contains zero or more Tag elements.", "StreamingDistributionConfigWithTags$Tags": "A complex type that contains zero or more Tag elements.", "TagResourceRequest$Tags": "A complex type that contains zero or more Tag elements." } }, "TooManyCacheBehaviors": { "base": "You cannot create anymore cache behaviors for the distribution.", "refs": { } }, "TooManyCertificates": { "base": "You cannot create anymore custom ssl certificates.", "refs": { } }, "TooManyCloudFrontOriginAccessIdentities": { "base": "Processing your request would cause you to exceed the maximum number of origin access identities allowed.", "refs": { } }, "TooManyCookieNamesInWhiteList": { "base": "Your request contains more cookie names in the whitelist than are allowed per cache behavior.", "refs": { } }, "TooManyDistributionCNAMEs": { "base": "Your request contains more CNAMEs than are allowed per distribution.", "refs": { } }, "TooManyDistributions": { "base": "Processing your request would cause you to exceed the maximum number of distributions allowed.", "refs": { } }, "TooManyHeadersInForwardedValues": { "base": null, "refs": { } }, "TooManyInvalidationsInProgress": { "base": "You have exceeded the maximum number of allowable InProgress invalidation batch requests, or invalidation objects.", "refs": { } }, "TooManyOriginCustomHeaders": { "base": null, "refs": { } }, "TooManyOrigins": { "base": "You cannot create anymore origins for the distribution.", "refs": { } }, "TooManyStreamingDistributionCNAMEs": { "base": null, "refs": { } }, "TooManyStreamingDistributions": { "base": "Processing your request would cause you to exceed the maximum number of streaming distributions allowed.", "refs": { } }, "TooManyTrustedSigners": { "base": "Your request contains more trusted signers than are allowed per distribution.", "refs": { } }, "TrustedSignerDoesNotExist": { "base": "One or more of your trusted signers do not exist.", "refs": { } }, "TrustedSigners": { "base": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "refs": { "CacheBehavior$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "DefaultCacheBehavior$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "StreamingDistributionConfig$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "StreamingDistributionSummary$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution." } }, "UntagResourceRequest": { "base": "The request to remove tags from a CloudFront resource.", "refs": { } }, "UpdateCloudFrontOriginAccessIdentityRequest": { "base": "The request to update an origin access identity.", "refs": { } }, "UpdateCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "UpdateDistributionRequest": { "base": "The request to update a distribution.", "refs": { } }, "UpdateDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "UpdateStreamingDistributionRequest": { "base": "The request to update a streaming distribution.", "refs": { } }, "UpdateStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ViewerCertificate": { "base": "A complex type that contains information about viewer certificates for this distribution.", "refs": { "DistributionConfig$ViewerCertificate": null, "DistributionSummary$ViewerCertificate": null } }, "ViewerProtocolPolicy": { "base": null, "refs": { "CacheBehavior$ViewerProtocolPolicy": "Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. If you want CloudFront to allow end users to use any available protocol, specify allow-all. If you want CloudFront to require HTTPS, specify https. If you want CloudFront to respond to an HTTP request with an HTTP status code of 301 (Moved Permanently) and the HTTPS URL, specify redirect-to-https. The viewer then resubmits the request using the HTTPS URL.", "DefaultCacheBehavior$ViewerProtocolPolicy": "Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. If you want CloudFront to allow end users to use any available protocol, specify allow-all. If you want CloudFront to require HTTPS, specify https. If you want CloudFront to respond to an HTTP request with an HTTP status code of 301 (Moved Permanently) and the HTTPS URL, specify redirect-to-https. The viewer then resubmits the request using the HTTPS URL." } }, "boolean": { "base": null, "refs": { "ActiveTrustedSigners$Enabled": "Each active trusted signer.", "CacheBehavior$SmoothStreaming": "Indicates whether you want to distribute media files in Microsoft Smooth Streaming format using the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "CacheBehavior$Compress": "Whether you want CloudFront to automatically compress content for web requests that include Accept-Encoding: gzip in the request header. If so, specify true; if not, specify false. CloudFront compresses files larger than 1000 bytes and less than 1 megabyte for both Amazon S3 and custom origins. When a CloudFront edge location is unusually busy, some files might not be compressed. The value of the Content-Type header must be on the list of file types that CloudFront will compress. For the current list, see Serving Compressed Content in the Amazon CloudFront Developer Guide. If you configure CloudFront to compress content, CloudFront removes the ETag response header from the objects that it compresses. The ETag header indicates that the version in a CloudFront edge cache is identical to the version on the origin server, but after compression the two versions are no longer identical. As a result, for compressed objects, CloudFront can't use the ETag header to determine whether an expired object in the CloudFront edge cache is still the latest version.", "CloudFrontOriginAccessIdentityList$IsTruncated": "A flag that indicates whether more origin access identities remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more items in the list.", "DefaultCacheBehavior$SmoothStreaming": "Indicates whether you want to distribute media files in Microsoft Smooth Streaming format using the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "DefaultCacheBehavior$Compress": "Whether you want CloudFront to automatically compress content for web requests that include Accept-Encoding: gzip in the request header. If so, specify true; if not, specify false. CloudFront compresses files larger than 1000 bytes and less than 1 megabyte for both Amazon S3 and custom origins. When a CloudFront edge location is unusually busy, some files might not be compressed. The value of the Content-Type header must be on the list of file types that CloudFront will compress. For the current list, see Serving Compressed Content in the Amazon CloudFront Developer Guide. If you configure CloudFront to compress content, CloudFront removes the ETag response header from the objects that it compresses. The ETag header indicates that the version in a CloudFront edge cache is identical to the version on the origin server, but after compression the two versions are no longer identical. As a result, for compressed objects, CloudFront can't use the ETag header to determine whether an expired object in the CloudFront edge cache is still the latest version.", "DistributionConfig$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "DistributionList$IsTruncated": "A flag that indicates whether more distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.", "DistributionSummary$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "ForwardedValues$QueryString": "Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "InvalidationList$IsTruncated": "A flag that indicates whether more invalidation batch requests remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more invalidation batches in the list.", "LoggingConfig$Enabled": "Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you do not want to enable logging when you create a distribution or if you want to disable logging for an existing distribution, specify false for Enabled, and specify empty Bucket and Prefix elements. If you specify false for Enabled but you specify values for Bucket, prefix and IncludeCookies, the values are automatically deleted.", "LoggingConfig$IncludeCookies": "Specifies whether you want CloudFront to include cookies in access logs, specify true for IncludeCookies. If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you do not want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify false for IncludeCookies.", "StreamingDistributionConfig$Enabled": "Whether the streaming distribution is enabled to accept end user requests for content.", "StreamingDistributionList$IsTruncated": "A flag that indicates whether more streaming distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.", "StreamingDistributionSummary$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "StreamingLoggingConfig$Enabled": "Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you do not want to enable logging when you create a streaming distribution or if you want to disable logging for an existing streaming distribution, specify false for Enabled, and specify empty Bucket and Prefix elements. If you specify false for Enabled but you specify values for Bucket and Prefix, the values are automatically deleted.", "TrustedSigners$Enabled": "Specifies whether you want to require end users to use signed URLs to access the files specified by PathPattern and TargetOriginId.", "ViewerCertificate$CloudFrontDefaultCertificate": "If you want viewers to use HTTPS to request your objects and you're using the CloudFront domain name of your distribution in your object URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), set to true. Omit this value if you are setting an ACMCertificateArn or IAMCertificateId." } }, "integer": { "base": null, "refs": { "ActiveTrustedSigners$Quantity": "The number of unique trusted signers included in all cache behaviors. For example, if three cache behaviors all list the same three AWS accounts, the value of Quantity for ActiveTrustedSigners will be 3.", "Aliases$Quantity": "The number of CNAMEs, if any, for this distribution.", "AllowedMethods$Quantity": "The number of HTTP methods that you want CloudFront to forward to your origin. Valid values are 2 (for GET and HEAD requests), 3 (for GET, HEAD and OPTIONS requests) and 7 (for GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests).", "CacheBehaviors$Quantity": "The number of cache behaviors for this distribution.", "CachedMethods$Quantity": "The number of HTTP methods for which you want CloudFront to cache responses. Valid values are 2 (for caching responses to GET and HEAD requests) and 3 (for caching responses to GET, HEAD, and OPTIONS requests).", "CloudFrontOriginAccessIdentityList$MaxItems": "The value you provided for the MaxItems request parameter.", "CloudFrontOriginAccessIdentityList$Quantity": "The number of CloudFront origin access identities that were created by the current AWS account.", "CookieNames$Quantity": "The number of whitelisted cookies for this cache behavior.", "CustomErrorResponse$ErrorCode": "The 4xx or 5xx HTTP status code that you want to customize. For a list of HTTP status codes that you can customize, see CloudFront documentation.", "CustomErrorResponses$Quantity": "The number of custom error responses for this distribution.", "CustomHeaders$Quantity": "The number of custom headers for this origin.", "CustomOriginConfig$HTTPPort": "The HTTP port the custom origin listens on.", "CustomOriginConfig$HTTPSPort": "The HTTPS port the custom origin listens on.", "Distribution$InProgressInvalidationBatches": "The number of invalidation batches currently in progress.", "DistributionList$MaxItems": "The value you provided for the MaxItems request parameter.", "DistributionList$Quantity": "The number of distributions that were created by the current AWS account.", "GeoRestriction$Quantity": "When geo restriction is enabled, this is the number of countries in your whitelist or blacklist. Otherwise, when it is not enabled, Quantity is 0, and you can omit Items.", "Headers$Quantity": "The number of different headers that you want CloudFront to forward to the origin and to vary on for this cache behavior. The maximum number of headers that you can specify by name is 10. If you want CloudFront to forward all headers to the origin and vary on all of them, specify 1 for Quantity and * for Name. If you don't want CloudFront to forward any additional headers to the origin or to vary on any headers, specify 0 for Quantity and omit Items.", "InvalidationList$MaxItems": "The value you provided for the MaxItems request parameter.", "InvalidationList$Quantity": "The number of invalidation batches that were created by the current AWS account.", "KeyPairIds$Quantity": "The number of active CloudFront key pairs for AwsAccountNumber.", "OriginSslProtocols$Quantity": "The number of SSL/TLS protocols that you want to allow CloudFront to use when establishing an HTTPS connection with this origin.", "Origins$Quantity": "The number of origins for this distribution.", "Paths$Quantity": "The number of objects that you want to invalidate.", "StreamingDistributionList$MaxItems": "The value you provided for the MaxItems request parameter.", "StreamingDistributionList$Quantity": "The number of streaming distributions that were created by the current AWS account.", "TrustedSigners$Quantity": "The number of trusted signers for this cache behavior." } }, "long": { "base": null, "refs": { "CacheBehavior$MinTTL": "The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CacheBehavior$DefaultTTL": "If you don't configure your origin to add a Cache-Control max-age directive or an Expires header, DefaultTTL is the default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CacheBehavior$MaxTTL": "The maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CustomErrorResponse$ErrorCachingMinTTL": "The minimum amount of time you want HTTP error codes to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. You can specify a value from 0 to 31,536,000.", "DefaultCacheBehavior$MinTTL": "The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "DefaultCacheBehavior$DefaultTTL": "If you don't configure your origin to add a Cache-Control max-age directive or an Expires header, DefaultTTL is the default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "DefaultCacheBehavior$MaxTTL": "The maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years)." } }, "string": { "base": null, "refs": { "AccessDenied$Message": null, "AliasList$member": null, "AwsAccountNumberList$member": null, "BatchTooLarge$Message": null, "CNAMEAlreadyExists$Message": null, "CacheBehavior$PathPattern": "The pattern (for example, images/*.jpg) that specifies which requests you want this cache behavior to apply to. When CloudFront receives an end-user request, the requested path is compared with path patterns in the order in which cache behaviors are listed in the distribution. The path pattern for the default cache behavior is * and cannot be changed. If the request for an object does not match the path pattern for any cache behaviors, CloudFront applies the behavior in the default cache behavior.", "CacheBehavior$TargetOriginId": "The value of ID for the origin that you want CloudFront to route requests to when a request matches the path pattern either for a cache behavior or for the default cache behavior.", "CloudFrontOriginAccessIdentity$Id": "The ID for the origin access identity. For example: E74FTE3AJFJ256A.", "CloudFrontOriginAccessIdentity$S3CanonicalUserId": "The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin access identity read permission to an object in Amazon S3.", "CloudFrontOriginAccessIdentityAlreadyExists$Message": null, "CloudFrontOriginAccessIdentityConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the CloudFrontOriginAccessIdentityConfig object), a new origin access identity is created. If the CallerReference is a value you already sent in a previous request to create an identity, and the content of the CloudFrontOriginAccessIdentityConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create an identity but the content of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists error.", "CloudFrontOriginAccessIdentityConfig$Comment": "Any comments you want to include about the origin access identity.", "CloudFrontOriginAccessIdentityInUse$Message": null, "CloudFrontOriginAccessIdentityList$Marker": "The value you provided for the Marker request parameter.", "CloudFrontOriginAccessIdentityList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your origin access identities where they left off.", "CloudFrontOriginAccessIdentitySummary$Id": "The ID for the origin access identity. For example: E74FTE3AJFJ256A.", "CloudFrontOriginAccessIdentitySummary$S3CanonicalUserId": "The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin access identity read permission to an object in Amazon S3.", "CloudFrontOriginAccessIdentitySummary$Comment": "The comment for this origin access identity, as originally specified when created.", "CookieNameList$member": null, "CreateCloudFrontOriginAccessIdentityResult$Location": "The fully qualified URI of the new origin access identity just created. For example: https://cloudfront.amazonaws.com/2010-11-01/origin-access-identity/cloudfront/E74FTE3AJFJ256A.", "CreateCloudFrontOriginAccessIdentityResult$ETag": "The current version of the origin access identity created.", "CreateDistributionResult$Location": "The fully qualified URI of the new distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5.", "CreateDistributionResult$ETag": "The current version of the distribution created.", "CreateDistributionWithTagsResult$Location": "The fully qualified URI of the new distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5.", "CreateDistributionWithTagsResult$ETag": "The current version of the distribution created.", "CreateInvalidationRequest$DistributionId": "The distribution's id.", "CreateInvalidationResult$Location": "The fully qualified URI of the distribution and invalidation batch request, including the Invalidation ID.", "CreateStreamingDistributionResult$Location": "The fully qualified URI of the new streaming distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8.", "CreateStreamingDistributionResult$ETag": "The current version of the streaming distribution created.", "CreateStreamingDistributionWithTagsResult$Location": "The fully qualified URI of the new streaming distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8.", "CreateStreamingDistributionWithTagsResult$ETag": "The current version of the streaming distribution created.", "CustomErrorResponse$ResponsePagePath": "The path of the custom error page (for example, /custom_404.html). The path is relative to the distribution and must begin with a slash (/). If the path includes any non-ASCII characters or unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters. Do not URL encode any other characters in the path, or CloudFront will not return the custom error page to the viewer.", "CustomErrorResponse$ResponseCode": "The HTTP status code that you want CloudFront to return with the custom error page to the viewer. For a list of HTTP status codes that you can replace, see CloudFront Documentation.", "DefaultCacheBehavior$TargetOriginId": "The value of ID for the origin that you want CloudFront to route requests to when a request matches the path pattern either for a cache behavior or for the default cache behavior.", "DeleteCloudFrontOriginAccessIdentityRequest$Id": "The origin access identity's id.", "DeleteCloudFrontOriginAccessIdentityRequest$IfMatch": "The value of the ETag header you received from a previous GET or PUT request. For example: E2QWRUHAPOMQZL.", "DeleteDistributionRequest$Id": "The distribution id.", "DeleteDistributionRequest$IfMatch": "The value of the ETag header you received when you disabled the distribution. For example: E2QWRUHAPOMQZL.", "DeleteStreamingDistributionRequest$Id": "The distribution id.", "DeleteStreamingDistributionRequest$IfMatch": "The value of the ETag header you received when you disabled the streaming distribution. For example: E2QWRUHAPOMQZL.", "Distribution$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "Distribution$ARN": "The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5, where 123456789012 is your AWS account Id.", "Distribution$Status": "This response element indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "Distribution$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "DistributionAlreadyExists$Message": null, "DistributionConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the DistributionConfig object), a new distribution is created. If the CallerReference is a value you already sent in a previous request to create a distribution, and the content of the DistributionConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a distribution but the content of the DistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.", "DistributionConfig$DefaultRootObject": "The object that you want CloudFront to return (for example, index.html) when an end user requests the root URL for your distribution (http://www.example.com) instead of an object in your distribution (http://www.example.com/index.html). Specifying a default root object avoids exposing the contents of your distribution. If you don't want to specify a default root object when you create a distribution, include an empty DefaultRootObject element. To delete the default root object from an existing distribution, update the distribution configuration and include an empty DefaultRootObject element. To replace the default root object, update the distribution configuration and specify the new object.", "DistributionConfig$Comment": "Any comments you want to include about the distribution.", "DistributionConfig$WebACLId": "(Optional) If you're using AWS WAF to filter CloudFront requests, the Id of the AWS WAF web ACL that is associated with the distribution.", "DistributionList$Marker": "The value you provided for the Marker request parameter.", "DistributionList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your distributions where they left off.", "DistributionNotDisabled$Message": null, "DistributionSummary$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "DistributionSummary$ARN": "The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5, where 123456789012 is your AWS account Id.", "DistributionSummary$Status": "This response element indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "DistributionSummary$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "DistributionSummary$Comment": "The comment originally specified when this distribution was created.", "DistributionSummary$WebACLId": "The Web ACL Id (if any) associated with the distribution.", "GetCloudFrontOriginAccessIdentityConfigRequest$Id": "The identity's id.", "GetCloudFrontOriginAccessIdentityConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetCloudFrontOriginAccessIdentityRequest$Id": "The identity's id.", "GetCloudFrontOriginAccessIdentityResult$ETag": "The current version of the origin access identity's information. For example: E2QWRUHAPOMQZL.", "GetDistributionConfigRequest$Id": "The distribution's id.", "GetDistributionConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetDistributionRequest$Id": "The distribution's id.", "GetDistributionResult$ETag": "The current version of the distribution's information. For example: E2QWRUHAPOMQZL.", "GetInvalidationRequest$DistributionId": "The distribution's id.", "GetInvalidationRequest$Id": "The invalidation's id.", "GetStreamingDistributionConfigRequest$Id": "The streaming distribution's id.", "GetStreamingDistributionConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetStreamingDistributionRequest$Id": "The streaming distribution's id.", "GetStreamingDistributionResult$ETag": "The current version of the streaming distribution's information. For example: E2QWRUHAPOMQZL.", "HeaderList$member": null, "IllegalUpdate$Message": null, "InconsistentQuantities$Message": null, "InvalidArgument$Message": null, "InvalidDefaultRootObject$Message": null, "InvalidErrorCode$Message": null, "InvalidForwardCookies$Message": null, "InvalidGeoRestrictionParameter$Message": null, "InvalidHeadersForS3Origin$Message": null, "InvalidIfMatchVersion$Message": null, "InvalidLocationCode$Message": null, "InvalidMinimumProtocolVersion$Message": null, "InvalidOrigin$Message": null, "InvalidOriginAccessIdentity$Message": null, "InvalidProtocolSettings$Message": null, "InvalidRelativePath$Message": null, "InvalidRequiredProtocol$Message": null, "InvalidResponseCode$Message": null, "InvalidTTLOrder$Message": null, "InvalidTagging$Message": null, "InvalidViewerCertificate$Message": null, "InvalidWebACLId$Message": null, "Invalidation$Id": "The identifier for the invalidation request. For example: IDFDVBD632BHDS5.", "Invalidation$Status": "The status of the invalidation request. When the invalidation batch is finished, the status is Completed.", "InvalidationBatch$CallerReference": "A unique name that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the Path object), a new distribution is created. If the CallerReference is a value you already sent in a previous request to create an invalidation batch, and the content of each Path element is identical to the original request, the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a distribution but the content of any Path is different from the original request, CloudFront returns an InvalidationBatchAlreadyExists error.", "InvalidationList$Marker": "The value you provided for the Marker request parameter.", "InvalidationList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your invalidation batches where they left off.", "InvalidationSummary$Id": "The unique ID for an invalidation request.", "InvalidationSummary$Status": "The status of an invalidation request.", "KeyPairIdList$member": null, "ListCloudFrontOriginAccessIdentitiesRequest$Marker": "Use this when paginating results to indicate where to begin in your list of origin access identities. The results include identities in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last identity on that page).", "ListCloudFrontOriginAccessIdentitiesRequest$MaxItems": "The maximum number of origin access identities you want in the response body.", "ListDistributionsByWebACLIdRequest$Marker": "Use Marker and MaxItems to control pagination of results. If you have more than MaxItems distributions that satisfy the request, the response includes a NextMarker element. To get the next page of results, submit another request. For the value of Marker, specify the value of NextMarker from the last response. (For the first request, omit Marker.)", "ListDistributionsByWebACLIdRequest$MaxItems": "The maximum number of distributions that you want CloudFront to return in the response body. The maximum and default values are both 100.", "ListDistributionsByWebACLIdRequest$WebACLId": "The Id of the AWS WAF web ACL for which you want to list the associated distributions. If you specify \"null\" for the Id, the request returns a list of the distributions that aren't associated with a web ACL.", "ListDistributionsRequest$Marker": "Use Marker and MaxItems to control pagination of results. If you have more than MaxItems distributions that satisfy the request, the response includes a NextMarker element. To get the next page of results, submit another request. For the value of Marker, specify the value of NextMarker from the last response. (For the first request, omit Marker.)", "ListDistributionsRequest$MaxItems": "The maximum number of distributions that you want CloudFront to return in the response body. The maximum and default values are both 100.", "ListInvalidationsRequest$DistributionId": "The distribution's id.", "ListInvalidationsRequest$Marker": "Use this parameter when paginating results to indicate where to begin in your list of invalidation batches. Because the results are returned in decreasing order from most recent to oldest, the most recent results are on the first page, the second page will contain earlier results, and so on. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response. This value is the same as the ID of the last invalidation batch on that page.", "ListInvalidationsRequest$MaxItems": "The maximum number of invalidation batches you want in the response body.", "ListStreamingDistributionsRequest$Marker": "Use this when paginating results to indicate where to begin in your list of streaming distributions. The results include distributions in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last distribution on that page).", "ListStreamingDistributionsRequest$MaxItems": "The maximum number of streaming distributions you want in the response body.", "LocationList$member": null, "LoggingConfig$Bucket": "The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.", "LoggingConfig$Prefix": "An optional string that you want CloudFront to prefix to the access log filenames for this distribution, for example, myprefix/. If you want to enable logging, but you do not want to specify a prefix, you still must include an empty Prefix element in the Logging element.", "MissingBody$Message": null, "NoSuchCloudFrontOriginAccessIdentity$Message": null, "NoSuchDistribution$Message": null, "NoSuchInvalidation$Message": null, "NoSuchOrigin$Message": null, "NoSuchResource$Message": null, "NoSuchStreamingDistribution$Message": null, "Origin$Id": "A unique identifier for the origin. The value of Id must be unique within the distribution. You use the value of Id when you create a cache behavior. The Id identifies the origin that CloudFront routes a request to when the request matches the path pattern for that cache behavior.", "Origin$DomainName": "Amazon S3 origins: The DNS name of the Amazon S3 bucket from which you want CloudFront to get objects for this origin, for example, myawsbucket.s3.amazonaws.com. Custom origins: The DNS domain name for the HTTP server from which you want CloudFront to get objects for this origin, for example, www.example.com.", "Origin$OriginPath": "An optional element that causes CloudFront to request your content from a directory in your Amazon S3 bucket or your custom origin. When you include the OriginPath element, specify the directory name, beginning with a /. CloudFront appends the directory name to the value of DomainName.", "OriginCustomHeader$HeaderName": "The header's name.", "OriginCustomHeader$HeaderValue": "The header's value.", "PathList$member": null, "PreconditionFailed$Message": null, "S3Origin$DomainName": "The DNS name of the S3 origin.", "S3Origin$OriginAccessIdentity": "Your S3 origin's origin access identity.", "S3OriginConfig$OriginAccessIdentity": "The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that end users can only access objects in an Amazon S3 bucket through CloudFront. If you want end users to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty OriginAccessIdentity element. To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty OriginAccessIdentity element. To replace the origin access identity, update the distribution configuration and specify the new origin access identity. Use the format origin-access-identity/cloudfront/Id where Id is the value that CloudFront returned in the Id element when you created the origin access identity.", "Signer$AwsAccountNumber": "Specifies an AWS account that can create signed URLs. Values: self, which indicates that the AWS account that was used to create the distribution can created signed URLs, or an AWS account number. Omit the dashes in the account number.", "StreamingDistribution$Id": "The identifier for the streaming distribution. For example: EGTXBD79H29TRA8.", "StreamingDistribution$ARN": "The ARN (Amazon Resource Name) for the streaming distribution. For example: arn:aws:cloudfront::123456789012:streaming-distribution/EDFDVBD632BHDS5, where 123456789012 is your AWS account Id.", "StreamingDistribution$Status": "The current status of the streaming distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "StreamingDistribution$DomainName": "The domain name corresponding to the streaming distribution. For example: s5c39gqb8ow64r.cloudfront.net.", "StreamingDistributionAlreadyExists$Message": null, "StreamingDistributionConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the StreamingDistributionConfig object), a new streaming distribution is created. If the CallerReference is a value you already sent in a previous request to create a streaming distribution, and the content of the StreamingDistributionConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a streaming distribution but the content of the StreamingDistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.", "StreamingDistributionConfig$Comment": "Any comments you want to include about the streaming distribution.", "StreamingDistributionList$Marker": "The value you provided for the Marker request parameter.", "StreamingDistributionList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your streaming distributions where they left off.", "StreamingDistributionNotDisabled$Message": null, "StreamingDistributionSummary$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "StreamingDistributionSummary$ARN": "The ARN (Amazon Resource Name) for the streaming distribution. For example: arn:aws:cloudfront::123456789012:streaming-distribution/EDFDVBD632BHDS5, where 123456789012 is your AWS account Id.", "StreamingDistributionSummary$Status": "Indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "StreamingDistributionSummary$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "StreamingDistributionSummary$Comment": "The comment originally specified when this distribution was created.", "StreamingLoggingConfig$Bucket": "The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.", "StreamingLoggingConfig$Prefix": "An optional string that you want CloudFront to prefix to the access log filenames for this streaming distribution, for example, myprefix/. If you want to enable logging, but you do not want to specify a prefix, you still must include an empty Prefix element in the Logging element.", "TooManyCacheBehaviors$Message": null, "TooManyCertificates$Message": null, "TooManyCloudFrontOriginAccessIdentities$Message": null, "TooManyCookieNamesInWhiteList$Message": null, "TooManyDistributionCNAMEs$Message": null, "TooManyDistributions$Message": null, "TooManyHeadersInForwardedValues$Message": null, "TooManyInvalidationsInProgress$Message": null, "TooManyOriginCustomHeaders$Message": null, "TooManyOrigins$Message": null, "TooManyStreamingDistributionCNAMEs$Message": null, "TooManyStreamingDistributions$Message": null, "TooManyTrustedSigners$Message": null, "TrustedSignerDoesNotExist$Message": null, "UpdateCloudFrontOriginAccessIdentityRequest$Id": "The identity's id.", "UpdateCloudFrontOriginAccessIdentityRequest$IfMatch": "The value of the ETag header you received when retrieving the identity's configuration. For example: E2QWRUHAPOMQZL.", "UpdateCloudFrontOriginAccessIdentityResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "UpdateDistributionRequest$Id": "The distribution's id.", "UpdateDistributionRequest$IfMatch": "The value of the ETag header you received when retrieving the distribution's configuration. For example: E2QWRUHAPOMQZL.", "UpdateDistributionResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "UpdateStreamingDistributionRequest$Id": "The streaming distribution's id.", "UpdateStreamingDistributionRequest$IfMatch": "The value of the ETag header you received when retrieving the streaming distribution's configuration. For example: E2QWRUHAPOMQZL.", "UpdateStreamingDistributionResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "ViewerCertificate$IAMCertificateId": "If you want viewers to use HTTPS to request your objects and you're using an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), specify the IAM certificate identifier of the custom viewer certificate for this distribution. Specify either this value, ACMCertificateArn, or CloudFrontDefaultCertificate.", "ViewerCertificate$ACMCertificateArn": "If you want viewers to use HTTPS to request your objects and you're using an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), specify the ACM certificate ARN of the custom viewer certificate for this distribution. Specify either this value, IAMCertificateId, or CloudFrontDefaultCertificate.", "ViewerCertificate$Certificate": "Note: this field is deprecated. Please use one of [ACMCertificateArn, IAMCertificateId, CloudFrontDefaultCertificate]." } }, "timestamp": { "base": null, "refs": { "Distribution$LastModifiedTime": "The date and time the distribution was last modified.", "DistributionSummary$LastModifiedTime": "The date and time the distribution was last modified.", "Invalidation$CreateTime": "The date and time the invalidation request was first made.", "InvalidationSummary$CreateTime": null, "StreamingDistribution$LastModifiedTime": "The date and time the distribution was last modified.", "StreamingDistributionSummary$LastModifiedTime": "The date and time the distribution was last modified." } } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-08-01/examples-1.json000066400000000000000000000000541300374646400240620ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-08-01/paginators-1.json000066400000000000000000000021461300374646400244170ustar00rootroot00000000000000{ "pagination": { "ListCloudFrontOriginAccessIdentities": { "input_token": "Marker", "output_token": "CloudFrontOriginAccessIdentityList.NextMarker", "limit_key": "MaxItems", "more_results": "CloudFrontOriginAccessIdentityList.IsTruncated", "result_key": "CloudFrontOriginAccessIdentityList.Items" }, "ListDistributions": { "input_token": "Marker", "output_token": "DistributionList.NextMarker", "limit_key": "MaxItems", "more_results": "DistributionList.IsTruncated", "result_key": "DistributionList.Items" }, "ListInvalidations": { "input_token": "Marker", "output_token": "InvalidationList.NextMarker", "limit_key": "MaxItems", "more_results": "InvalidationList.IsTruncated", "result_key": "InvalidationList.Items" }, "ListStreamingDistributions": { "input_token": "Marker", "output_token": "StreamingDistributionList.NextMarker", "limit_key": "MaxItems", "more_results": "StreamingDistributionList.IsTruncated", "result_key": "StreamingDistributionList.Items" } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-08-01/waiters-2.json000066400000000000000000000022401300374646400237220ustar00rootroot00000000000000{ "version": 2, "waiters": { "DistributionDeployed": { "delay": 60, "operation": "GetDistribution", "maxAttempts": 25, "description": "Wait until a distribution is deployed.", "acceptors": [ { "expected": "Deployed", "matcher": "path", "state": "success", "argument": "Distribution.Status" } ] }, "InvalidationCompleted": { "delay": 20, "operation": "GetInvalidation", "maxAttempts": 30, "description": "Wait until an invalidation has completed.", "acceptors": [ { "expected": "Completed", "matcher": "path", "state": "success", "argument": "Invalidation.Status" } ] }, "StreamingDistributionDeployed": { "delay": 60, "operation": "GetStreamingDistribution", "maxAttempts": 25, "description": "Wait until a streaming distribution is deployed.", "acceptors": [ { "expected": "Deployed", "matcher": "path", "state": "success", "argument": "StreamingDistribution.Status" } ] } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-08-20/000077500000000000000000000000001300374646400212155ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudfront/2016-08-20/api-2.json000077500000000000000000002114011300374646400230220ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2016-08-20", "endpointPrefix":"cloudfront", "globalEndpoint":"cloudfront.amazonaws.com", "protocol":"rest-xml", "serviceAbbreviation":"CloudFront", "serviceFullName":"Amazon CloudFront", "signatureVersion":"v4" }, "operations":{ "CreateCloudFrontOriginAccessIdentity":{ "name":"CreateCloudFrontOriginAccessIdentity2016_08_20", "http":{ "method":"POST", "requestUri":"/2016-08-20/origin-access-identity/cloudfront", "responseCode":201 }, "input":{"shape":"CreateCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"CreateCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"CloudFrontOriginAccessIdentityAlreadyExists"}, {"shape":"MissingBody"}, {"shape":"TooManyCloudFrontOriginAccessIdentities"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "CreateDistribution":{ "name":"CreateDistribution2016_08_20", "http":{ "method":"POST", "requestUri":"/2016-08-20/distribution", "responseCode":201 }, "input":{"shape":"CreateDistributionRequest"}, "output":{"shape":"CreateDistributionResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"DistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InvalidViewerCertificate"}, {"shape":"InvalidMinimumProtocolVersion"}, {"shape":"MissingBody"}, {"shape":"TooManyDistributionCNAMEs"}, {"shape":"TooManyDistributions"}, {"shape":"InvalidDefaultRootObject"}, {"shape":"InvalidRelativePath"}, {"shape":"InvalidErrorCode"}, {"shape":"InvalidResponseCode"}, {"shape":"InvalidArgument"}, {"shape":"InvalidRequiredProtocol"}, {"shape":"NoSuchOrigin"}, {"shape":"TooManyOrigins"}, {"shape":"TooManyCacheBehaviors"}, {"shape":"TooManyCookieNamesInWhiteList"}, {"shape":"InvalidForwardCookies"}, {"shape":"TooManyHeadersInForwardedValues"}, {"shape":"InvalidHeadersForS3Origin"}, {"shape":"InconsistentQuantities"}, {"shape":"TooManyCertificates"}, {"shape":"InvalidLocationCode"}, {"shape":"InvalidGeoRestrictionParameter"}, {"shape":"InvalidProtocolSettings"}, {"shape":"InvalidTTLOrder"}, {"shape":"InvalidWebACLId"}, {"shape":"TooManyOriginCustomHeaders"}, {"shape":"TooManyQueryStringParameters"}, {"shape":"InvalidQueryStringParameters"} ] }, "CreateDistributionWithTags":{ "name":"CreateDistributionWithTags2016_08_20", "http":{ "method":"POST", "requestUri":"/2016-08-20/distribution?WithTags", "responseCode":201 }, "input":{"shape":"CreateDistributionWithTagsRequest"}, "output":{"shape":"CreateDistributionWithTagsResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"DistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InvalidViewerCertificate"}, {"shape":"InvalidMinimumProtocolVersion"}, {"shape":"MissingBody"}, {"shape":"TooManyDistributionCNAMEs"}, {"shape":"TooManyDistributions"}, {"shape":"InvalidDefaultRootObject"}, {"shape":"InvalidRelativePath"}, {"shape":"InvalidErrorCode"}, {"shape":"InvalidResponseCode"}, {"shape":"InvalidArgument"}, {"shape":"InvalidRequiredProtocol"}, {"shape":"NoSuchOrigin"}, {"shape":"TooManyOrigins"}, {"shape":"TooManyCacheBehaviors"}, {"shape":"TooManyCookieNamesInWhiteList"}, {"shape":"InvalidForwardCookies"}, {"shape":"TooManyHeadersInForwardedValues"}, {"shape":"InvalidHeadersForS3Origin"}, {"shape":"InconsistentQuantities"}, {"shape":"TooManyCertificates"}, {"shape":"InvalidLocationCode"}, {"shape":"InvalidGeoRestrictionParameter"}, {"shape":"InvalidProtocolSettings"}, {"shape":"InvalidTTLOrder"}, {"shape":"InvalidWebACLId"}, {"shape":"TooManyOriginCustomHeaders"}, {"shape":"InvalidTagging"}, {"shape":"TooManyQueryStringParameters"}, {"shape":"InvalidQueryStringParameters"} ] }, "CreateInvalidation":{ "name":"CreateInvalidation2016_08_20", "http":{ "method":"POST", "requestUri":"/2016-08-20/distribution/{DistributionId}/invalidation", "responseCode":201 }, "input":{"shape":"CreateInvalidationRequest"}, "output":{"shape":"CreateInvalidationResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"MissingBody"}, {"shape":"InvalidArgument"}, {"shape":"NoSuchDistribution"}, {"shape":"BatchTooLarge"}, {"shape":"TooManyInvalidationsInProgress"}, {"shape":"InconsistentQuantities"} ] }, "CreateStreamingDistribution":{ "name":"CreateStreamingDistribution2016_08_20", "http":{ "method":"POST", "requestUri":"/2016-08-20/streaming-distribution", "responseCode":201 }, "input":{"shape":"CreateStreamingDistributionRequest"}, "output":{"shape":"CreateStreamingDistributionResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"StreamingDistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"MissingBody"}, {"shape":"TooManyStreamingDistributionCNAMEs"}, {"shape":"TooManyStreamingDistributions"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "CreateStreamingDistributionWithTags":{ "name":"CreateStreamingDistributionWithTags2016_08_20", "http":{ "method":"POST", "requestUri":"/2016-08-20/streaming-distribution?WithTags", "responseCode":201 }, "input":{"shape":"CreateStreamingDistributionWithTagsRequest"}, "output":{"shape":"CreateStreamingDistributionWithTagsResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"StreamingDistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"MissingBody"}, {"shape":"TooManyStreamingDistributionCNAMEs"}, {"shape":"TooManyStreamingDistributions"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"}, {"shape":"InvalidTagging"} ] }, "DeleteCloudFrontOriginAccessIdentity":{ "name":"DeleteCloudFrontOriginAccessIdentity2016_08_20", "http":{ "method":"DELETE", "requestUri":"/2016-08-20/origin-access-identity/cloudfront/{Id}", "responseCode":204 }, "input":{"shape":"DeleteCloudFrontOriginAccessIdentityRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"PreconditionFailed"}, {"shape":"CloudFrontOriginAccessIdentityInUse"} ] }, "DeleteDistribution":{ "name":"DeleteDistribution2016_08_20", "http":{ "method":"DELETE", "requestUri":"/2016-08-20/distribution/{Id}", "responseCode":204 }, "input":{"shape":"DeleteDistributionRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"DistributionNotDisabled"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchDistribution"}, {"shape":"PreconditionFailed"} ] }, "DeleteStreamingDistribution":{ "name":"DeleteStreamingDistribution2016_08_20", "http":{ "method":"DELETE", "requestUri":"/2016-08-20/streaming-distribution/{Id}", "responseCode":204 }, "input":{"shape":"DeleteStreamingDistributionRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"StreamingDistributionNotDisabled"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchStreamingDistribution"}, {"shape":"PreconditionFailed"} ] }, "GetCloudFrontOriginAccessIdentity":{ "name":"GetCloudFrontOriginAccessIdentity2016_08_20", "http":{ "method":"GET", "requestUri":"/2016-08-20/origin-access-identity/cloudfront/{Id}" }, "input":{"shape":"GetCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"GetCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"AccessDenied"} ] }, "GetCloudFrontOriginAccessIdentityConfig":{ "name":"GetCloudFrontOriginAccessIdentityConfig2016_08_20", "http":{ "method":"GET", "requestUri":"/2016-08-20/origin-access-identity/cloudfront/{Id}/config" }, "input":{"shape":"GetCloudFrontOriginAccessIdentityConfigRequest"}, "output":{"shape":"GetCloudFrontOriginAccessIdentityConfigResult"}, "errors":[ {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"AccessDenied"} ] }, "GetDistribution":{ "name":"GetDistribution2016_08_20", "http":{ "method":"GET", "requestUri":"/2016-08-20/distribution/{Id}" }, "input":{"shape":"GetDistributionRequest"}, "output":{"shape":"GetDistributionResult"}, "errors":[ {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetDistributionConfig":{ "name":"GetDistributionConfig2016_08_20", "http":{ "method":"GET", "requestUri":"/2016-08-20/distribution/{Id}/config" }, "input":{"shape":"GetDistributionConfigRequest"}, "output":{"shape":"GetDistributionConfigResult"}, "errors":[ {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetInvalidation":{ "name":"GetInvalidation2016_08_20", "http":{ "method":"GET", "requestUri":"/2016-08-20/distribution/{DistributionId}/invalidation/{Id}" }, "input":{"shape":"GetInvalidationRequest"}, "output":{"shape":"GetInvalidationResult"}, "errors":[ {"shape":"NoSuchInvalidation"}, {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetStreamingDistribution":{ "name":"GetStreamingDistribution2016_08_20", "http":{ "method":"GET", "requestUri":"/2016-08-20/streaming-distribution/{Id}" }, "input":{"shape":"GetStreamingDistributionRequest"}, "output":{"shape":"GetStreamingDistributionResult"}, "errors":[ {"shape":"NoSuchStreamingDistribution"}, {"shape":"AccessDenied"} ] }, "GetStreamingDistributionConfig":{ "name":"GetStreamingDistributionConfig2016_08_20", "http":{ "method":"GET", "requestUri":"/2016-08-20/streaming-distribution/{Id}/config" }, "input":{"shape":"GetStreamingDistributionConfigRequest"}, "output":{"shape":"GetStreamingDistributionConfigResult"}, "errors":[ {"shape":"NoSuchStreamingDistribution"}, {"shape":"AccessDenied"} ] }, "ListCloudFrontOriginAccessIdentities":{ "name":"ListCloudFrontOriginAccessIdentities2016_08_20", "http":{ "method":"GET", "requestUri":"/2016-08-20/origin-access-identity/cloudfront" }, "input":{"shape":"ListCloudFrontOriginAccessIdentitiesRequest"}, "output":{"shape":"ListCloudFrontOriginAccessIdentitiesResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "ListDistributions":{ "name":"ListDistributions2016_08_20", "http":{ "method":"GET", "requestUri":"/2016-08-20/distribution" }, "input":{"shape":"ListDistributionsRequest"}, "output":{"shape":"ListDistributionsResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "ListDistributionsByWebACLId":{ "name":"ListDistributionsByWebACLId2016_08_20", "http":{ "method":"GET", "requestUri":"/2016-08-20/distributionsByWebACLId/{WebACLId}" }, "input":{"shape":"ListDistributionsByWebACLIdRequest"}, "output":{"shape":"ListDistributionsByWebACLIdResult"}, "errors":[ {"shape":"InvalidArgument"}, {"shape":"InvalidWebACLId"} ] }, "ListInvalidations":{ "name":"ListInvalidations2016_08_20", "http":{ "method":"GET", "requestUri":"/2016-08-20/distribution/{DistributionId}/invalidation" }, "input":{"shape":"ListInvalidationsRequest"}, "output":{"shape":"ListInvalidationsResult"}, "errors":[ {"shape":"InvalidArgument"}, {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "ListStreamingDistributions":{ "name":"ListStreamingDistributions2016_08_20", "http":{ "method":"GET", "requestUri":"/2016-08-20/streaming-distribution" }, "input":{"shape":"ListStreamingDistributionsRequest"}, "output":{"shape":"ListStreamingDistributionsResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "ListTagsForResource":{ "name":"ListTagsForResource2016_08_20", "http":{ "method":"GET", "requestUri":"/2016-08-20/tagging" }, "input":{"shape":"ListTagsForResourceRequest"}, "output":{"shape":"ListTagsForResourceResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidArgument"}, {"shape":"InvalidTagging"}, {"shape":"NoSuchResource"} ] }, "TagResource":{ "name":"TagResource2016_08_20", "http":{ "method":"POST", "requestUri":"/2016-08-20/tagging?Operation=Tag", "responseCode":204 }, "input":{"shape":"TagResourceRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidArgument"}, {"shape":"InvalidTagging"}, {"shape":"NoSuchResource"} ] }, "UntagResource":{ "name":"UntagResource2016_08_20", "http":{ "method":"POST", "requestUri":"/2016-08-20/tagging?Operation=Untag", "responseCode":204 }, "input":{"shape":"UntagResourceRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidArgument"}, {"shape":"InvalidTagging"}, {"shape":"NoSuchResource"} ] }, "UpdateCloudFrontOriginAccessIdentity":{ "name":"UpdateCloudFrontOriginAccessIdentity2016_08_20", "http":{ "method":"PUT", "requestUri":"/2016-08-20/origin-access-identity/cloudfront/{Id}/config" }, "input":{"shape":"UpdateCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"UpdateCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"PreconditionFailed"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "UpdateDistribution":{ "name":"UpdateDistribution2016_08_20", "http":{ "method":"PUT", "requestUri":"/2016-08-20/distribution/{Id}/config" }, "input":{"shape":"UpdateDistributionRequest"}, "output":{"shape":"UpdateDistributionResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"CNAMEAlreadyExists"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchDistribution"}, {"shape":"PreconditionFailed"}, {"shape":"TooManyDistributionCNAMEs"}, {"shape":"InvalidDefaultRootObject"}, {"shape":"InvalidRelativePath"}, {"shape":"InvalidErrorCode"}, {"shape":"InvalidResponseCode"}, {"shape":"InvalidArgument"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InvalidViewerCertificate"}, {"shape":"InvalidMinimumProtocolVersion"}, {"shape":"InvalidRequiredProtocol"}, {"shape":"NoSuchOrigin"}, {"shape":"TooManyOrigins"}, {"shape":"TooManyCacheBehaviors"}, {"shape":"TooManyCookieNamesInWhiteList"}, {"shape":"InvalidForwardCookies"}, {"shape":"TooManyHeadersInForwardedValues"}, {"shape":"InvalidHeadersForS3Origin"}, {"shape":"InconsistentQuantities"}, {"shape":"TooManyCertificates"}, {"shape":"InvalidLocationCode"}, {"shape":"InvalidGeoRestrictionParameter"}, {"shape":"InvalidTTLOrder"}, {"shape":"InvalidWebACLId"}, {"shape":"TooManyOriginCustomHeaders"}, {"shape":"TooManyQueryStringParameters"}, {"shape":"InvalidQueryStringParameters"} ] }, "UpdateStreamingDistribution":{ "name":"UpdateStreamingDistribution2016_08_20", "http":{ "method":"PUT", "requestUri":"/2016-08-20/streaming-distribution/{Id}/config" }, "input":{"shape":"UpdateStreamingDistributionRequest"}, "output":{"shape":"UpdateStreamingDistributionResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"CNAMEAlreadyExists"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchStreamingDistribution"}, {"shape":"PreconditionFailed"}, {"shape":"TooManyStreamingDistributionCNAMEs"}, {"shape":"InvalidArgument"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InconsistentQuantities"} ] } }, "shapes":{ "AccessDenied":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":403}, "exception":true }, "ActiveTrustedSigners":{ "type":"structure", "required":[ "Enabled", "Quantity" ], "members":{ "Enabled":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"SignerList"} } }, "AliasList":{ "type":"list", "member":{ "shape":"string", "locationName":"CNAME" } }, "Aliases":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"AliasList"} } }, "AllowedMethods":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"MethodsList"}, "CachedMethods":{"shape":"CachedMethods"} } }, "AwsAccountNumberList":{ "type":"list", "member":{ "shape":"string", "locationName":"AwsAccountNumber" } }, "BatchTooLarge":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":413}, "exception":true }, "CNAMEAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CacheBehavior":{ "type":"structure", "required":[ "PathPattern", "TargetOriginId", "ForwardedValues", "TrustedSigners", "ViewerProtocolPolicy", "MinTTL" ], "members":{ "PathPattern":{"shape":"string"}, "TargetOriginId":{"shape":"string"}, "ForwardedValues":{"shape":"ForwardedValues"}, "TrustedSigners":{"shape":"TrustedSigners"}, "ViewerProtocolPolicy":{"shape":"ViewerProtocolPolicy"}, "MinTTL":{"shape":"long"}, "AllowedMethods":{"shape":"AllowedMethods"}, "SmoothStreaming":{"shape":"boolean"}, "DefaultTTL":{"shape":"long"}, "MaxTTL":{"shape":"long"}, "Compress":{"shape":"boolean"} } }, "CacheBehaviorList":{ "type":"list", "member":{ "shape":"CacheBehavior", "locationName":"CacheBehavior" } }, "CacheBehaviors":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CacheBehaviorList"} } }, "CachedMethods":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"MethodsList"} } }, "CertificateSource":{ "type":"string", "enum":[ "cloudfront", "iam", "acm" ] }, "CloudFrontOriginAccessIdentity":{ "type":"structure", "required":[ "Id", "S3CanonicalUserId" ], "members":{ "Id":{"shape":"string"}, "S3CanonicalUserId":{"shape":"string"}, "CloudFrontOriginAccessIdentityConfig":{"shape":"CloudFrontOriginAccessIdentityConfig"} } }, "CloudFrontOriginAccessIdentityAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CloudFrontOriginAccessIdentityConfig":{ "type":"structure", "required":[ "CallerReference", "Comment" ], "members":{ "CallerReference":{"shape":"string"}, "Comment":{"shape":"string"} } }, "CloudFrontOriginAccessIdentityInUse":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CloudFrontOriginAccessIdentityList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"CloudFrontOriginAccessIdentitySummaryList"} } }, "CloudFrontOriginAccessIdentitySummary":{ "type":"structure", "required":[ "Id", "S3CanonicalUserId", "Comment" ], "members":{ "Id":{"shape":"string"}, "S3CanonicalUserId":{"shape":"string"}, "Comment":{"shape":"string"} } }, "CloudFrontOriginAccessIdentitySummaryList":{ "type":"list", "member":{ "shape":"CloudFrontOriginAccessIdentitySummary", "locationName":"CloudFrontOriginAccessIdentitySummary" } }, "CookieNameList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "CookieNames":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CookieNameList"} } }, "CookiePreference":{ "type":"structure", "required":["Forward"], "members":{ "Forward":{"shape":"ItemSelection"}, "WhitelistedNames":{"shape":"CookieNames"} } }, "CreateCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["CloudFrontOriginAccessIdentityConfig"], "members":{ "CloudFrontOriginAccessIdentityConfig":{ "shape":"CloudFrontOriginAccessIdentityConfig", "locationName":"CloudFrontOriginAccessIdentityConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-20/"} } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "CreateCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "CreateDistributionRequest":{ "type":"structure", "required":["DistributionConfig"], "members":{ "DistributionConfig":{ "shape":"DistributionConfig", "locationName":"DistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-20/"} } }, "payload":"DistributionConfig" }, "CreateDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "CreateDistributionWithTagsRequest":{ "type":"structure", "required":["DistributionConfigWithTags"], "members":{ "DistributionConfigWithTags":{ "shape":"DistributionConfigWithTags", "locationName":"DistributionConfigWithTags", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-20/"} } }, "payload":"DistributionConfigWithTags" }, "CreateDistributionWithTagsResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "CreateInvalidationRequest":{ "type":"structure", "required":[ "DistributionId", "InvalidationBatch" ], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "InvalidationBatch":{ "shape":"InvalidationBatch", "locationName":"InvalidationBatch", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-20/"} } }, "payload":"InvalidationBatch" }, "CreateInvalidationResult":{ "type":"structure", "members":{ "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "Invalidation":{"shape":"Invalidation"} }, "payload":"Invalidation" }, "CreateStreamingDistributionRequest":{ "type":"structure", "required":["StreamingDistributionConfig"], "members":{ "StreamingDistributionConfig":{ "shape":"StreamingDistributionConfig", "locationName":"StreamingDistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-20/"} } }, "payload":"StreamingDistributionConfig" }, "CreateStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "CreateStreamingDistributionWithTagsRequest":{ "type":"structure", "required":["StreamingDistributionConfigWithTags"], "members":{ "StreamingDistributionConfigWithTags":{ "shape":"StreamingDistributionConfigWithTags", "locationName":"StreamingDistributionConfigWithTags", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-20/"} } }, "payload":"StreamingDistributionConfigWithTags" }, "CreateStreamingDistributionWithTagsResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "CustomErrorResponse":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"integer"}, "ResponsePagePath":{"shape":"string"}, "ResponseCode":{"shape":"string"}, "ErrorCachingMinTTL":{"shape":"long"} } }, "CustomErrorResponseList":{ "type":"list", "member":{ "shape":"CustomErrorResponse", "locationName":"CustomErrorResponse" } }, "CustomErrorResponses":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CustomErrorResponseList"} } }, "CustomHeaders":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"OriginCustomHeadersList"} } }, "CustomOriginConfig":{ "type":"structure", "required":[ "HTTPPort", "HTTPSPort", "OriginProtocolPolicy" ], "members":{ "HTTPPort":{"shape":"integer"}, "HTTPSPort":{"shape":"integer"}, "OriginProtocolPolicy":{"shape":"OriginProtocolPolicy"}, "OriginSslProtocols":{"shape":"OriginSslProtocols"} } }, "DefaultCacheBehavior":{ "type":"structure", "required":[ "TargetOriginId", "ForwardedValues", "TrustedSigners", "ViewerProtocolPolicy", "MinTTL" ], "members":{ "TargetOriginId":{"shape":"string"}, "ForwardedValues":{"shape":"ForwardedValues"}, "TrustedSigners":{"shape":"TrustedSigners"}, "ViewerProtocolPolicy":{"shape":"ViewerProtocolPolicy"}, "MinTTL":{"shape":"long"}, "AllowedMethods":{"shape":"AllowedMethods"}, "SmoothStreaming":{"shape":"boolean"}, "DefaultTTL":{"shape":"long"}, "MaxTTL":{"shape":"long"}, "Compress":{"shape":"boolean"} } }, "DeleteCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "DeleteDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "DeleteStreamingDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "Distribution":{ "type":"structure", "required":[ "Id", "ARN", "Status", "LastModifiedTime", "InProgressInvalidationBatches", "DomainName", "ActiveTrustedSigners", "DistributionConfig" ], "members":{ "Id":{"shape":"string"}, "ARN":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "InProgressInvalidationBatches":{"shape":"integer"}, "DomainName":{"shape":"string"}, "ActiveTrustedSigners":{"shape":"ActiveTrustedSigners"}, "DistributionConfig":{"shape":"DistributionConfig"} } }, "DistributionAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "DistributionConfig":{ "type":"structure", "required":[ "CallerReference", "Origins", "DefaultCacheBehavior", "Comment", "Enabled" ], "members":{ "CallerReference":{"shape":"string"}, "Aliases":{"shape":"Aliases"}, "DefaultRootObject":{"shape":"string"}, "Origins":{"shape":"Origins"}, "DefaultCacheBehavior":{"shape":"DefaultCacheBehavior"}, "CacheBehaviors":{"shape":"CacheBehaviors"}, "CustomErrorResponses":{"shape":"CustomErrorResponses"}, "Comment":{"shape":"string"}, "Logging":{"shape":"LoggingConfig"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"}, "ViewerCertificate":{"shape":"ViewerCertificate"}, "Restrictions":{"shape":"Restrictions"}, "WebACLId":{"shape":"string"} } }, "DistributionConfigWithTags":{ "type":"structure", "required":[ "DistributionConfig", "Tags" ], "members":{ "DistributionConfig":{"shape":"DistributionConfig"}, "Tags":{"shape":"Tags"} } }, "DistributionList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"DistributionSummaryList"} } }, "DistributionNotDisabled":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "DistributionSummary":{ "type":"structure", "required":[ "Id", "ARN", "Status", "LastModifiedTime", "DomainName", "Aliases", "Origins", "DefaultCacheBehavior", "CacheBehaviors", "CustomErrorResponses", "Comment", "PriceClass", "Enabled", "ViewerCertificate", "Restrictions", "WebACLId" ], "members":{ "Id":{"shape":"string"}, "ARN":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "Aliases":{"shape":"Aliases"}, "Origins":{"shape":"Origins"}, "DefaultCacheBehavior":{"shape":"DefaultCacheBehavior"}, "CacheBehaviors":{"shape":"CacheBehaviors"}, "CustomErrorResponses":{"shape":"CustomErrorResponses"}, "Comment":{"shape":"string"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"}, "ViewerCertificate":{"shape":"ViewerCertificate"}, "Restrictions":{"shape":"Restrictions"}, "WebACLId":{"shape":"string"} } }, "DistributionSummaryList":{ "type":"list", "member":{ "shape":"DistributionSummary", "locationName":"DistributionSummary" } }, "ForwardedValues":{ "type":"structure", "required":[ "QueryString", "Cookies" ], "members":{ "QueryString":{"shape":"boolean"}, "Cookies":{"shape":"CookiePreference"}, "Headers":{"shape":"Headers"}, "QueryStringCacheKeys":{"shape":"QueryStringCacheKeys"} } }, "GeoRestriction":{ "type":"structure", "required":[ "RestrictionType", "Quantity" ], "members":{ "RestrictionType":{"shape":"GeoRestrictionType"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"LocationList"} } }, "GeoRestrictionType":{ "type":"string", "enum":[ "blacklist", "whitelist", "none" ] }, "GetCloudFrontOriginAccessIdentityConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetCloudFrontOriginAccessIdentityConfigResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentityConfig":{"shape":"CloudFrontOriginAccessIdentityConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "GetCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "GetDistributionConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetDistributionConfigResult":{ "type":"structure", "members":{ "DistributionConfig":{"shape":"DistributionConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"DistributionConfig" }, "GetDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "GetInvalidationRequest":{ "type":"structure", "required":[ "DistributionId", "Id" ], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetInvalidationResult":{ "type":"structure", "members":{ "Invalidation":{"shape":"Invalidation"} }, "payload":"Invalidation" }, "GetStreamingDistributionConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetStreamingDistributionConfigResult":{ "type":"structure", "members":{ "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistributionConfig" }, "GetStreamingDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "HeaderList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "Headers":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"HeaderList"} } }, "IllegalUpdate":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InconsistentQuantities":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidArgument":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidDefaultRootObject":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidErrorCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidForwardCookies":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidGeoRestrictionParameter":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidHeadersForS3Origin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidIfMatchVersion":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidLocationCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidMinimumProtocolVersion":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidOrigin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidOriginAccessIdentity":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidProtocolSettings":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidQueryStringParameters":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRelativePath":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRequiredProtocol":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidResponseCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidTTLOrder":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidTagging":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidViewerCertificate":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidWebACLId":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "Invalidation":{ "type":"structure", "required":[ "Id", "Status", "CreateTime", "InvalidationBatch" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "CreateTime":{"shape":"timestamp"}, "InvalidationBatch":{"shape":"InvalidationBatch"} } }, "InvalidationBatch":{ "type":"structure", "required":[ "Paths", "CallerReference" ], "members":{ "Paths":{"shape":"Paths"}, "CallerReference":{"shape":"string"} } }, "InvalidationList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"InvalidationSummaryList"} } }, "InvalidationSummary":{ "type":"structure", "required":[ "Id", "CreateTime", "Status" ], "members":{ "Id":{"shape":"string"}, "CreateTime":{"shape":"timestamp"}, "Status":{"shape":"string"} } }, "InvalidationSummaryList":{ "type":"list", "member":{ "shape":"InvalidationSummary", "locationName":"InvalidationSummary" } }, "ItemSelection":{ "type":"string", "enum":[ "none", "whitelist", "all" ] }, "KeyPairIdList":{ "type":"list", "member":{ "shape":"string", "locationName":"KeyPairId" } }, "KeyPairIds":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"KeyPairIdList"} } }, "ListCloudFrontOriginAccessIdentitiesRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListCloudFrontOriginAccessIdentitiesResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentityList":{"shape":"CloudFrontOriginAccessIdentityList"} }, "payload":"CloudFrontOriginAccessIdentityList" }, "ListDistributionsByWebACLIdRequest":{ "type":"structure", "required":["WebACLId"], "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" }, "WebACLId":{ "shape":"string", "location":"uri", "locationName":"WebACLId" } } }, "ListDistributionsByWebACLIdResult":{ "type":"structure", "members":{ "DistributionList":{"shape":"DistributionList"} }, "payload":"DistributionList" }, "ListDistributionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListDistributionsResult":{ "type":"structure", "members":{ "DistributionList":{"shape":"DistributionList"} }, "payload":"DistributionList" }, "ListInvalidationsRequest":{ "type":"structure", "required":["DistributionId"], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListInvalidationsResult":{ "type":"structure", "members":{ "InvalidationList":{"shape":"InvalidationList"} }, "payload":"InvalidationList" }, "ListStreamingDistributionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListStreamingDistributionsResult":{ "type":"structure", "members":{ "StreamingDistributionList":{"shape":"StreamingDistributionList"} }, "payload":"StreamingDistributionList" }, "ListTagsForResourceRequest":{ "type":"structure", "required":["Resource"], "members":{ "Resource":{ "shape":"ResourceARN", "location":"querystring", "locationName":"Resource" } } }, "ListTagsForResourceResult":{ "type":"structure", "required":["Tags"], "members":{ "Tags":{"shape":"Tags"} }, "payload":"Tags" }, "LocationList":{ "type":"list", "member":{ "shape":"string", "locationName":"Location" } }, "LoggingConfig":{ "type":"structure", "required":[ "Enabled", "IncludeCookies", "Bucket", "Prefix" ], "members":{ "Enabled":{"shape":"boolean"}, "IncludeCookies":{"shape":"boolean"}, "Bucket":{"shape":"string"}, "Prefix":{"shape":"string"} } }, "Method":{ "type":"string", "enum":[ "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" ] }, "MethodsList":{ "type":"list", "member":{ "shape":"Method", "locationName":"Method" } }, "MinimumProtocolVersion":{ "type":"string", "enum":[ "SSLv3", "TLSv1" ] }, "MissingBody":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "NoSuchCloudFrontOriginAccessIdentity":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchDistribution":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchInvalidation":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchOrigin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchResource":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchStreamingDistribution":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "Origin":{ "type":"structure", "required":[ "Id", "DomainName" ], "members":{ "Id":{"shape":"string"}, "DomainName":{"shape":"string"}, "OriginPath":{"shape":"string"}, "CustomHeaders":{"shape":"CustomHeaders"}, "S3OriginConfig":{"shape":"S3OriginConfig"}, "CustomOriginConfig":{"shape":"CustomOriginConfig"} } }, "OriginCustomHeader":{ "type":"structure", "required":[ "HeaderName", "HeaderValue" ], "members":{ "HeaderName":{"shape":"string"}, "HeaderValue":{"shape":"string"} } }, "OriginCustomHeadersList":{ "type":"list", "member":{ "shape":"OriginCustomHeader", "locationName":"OriginCustomHeader" } }, "OriginList":{ "type":"list", "member":{ "shape":"Origin", "locationName":"Origin" }, "min":1 }, "OriginProtocolPolicy":{ "type":"string", "enum":[ "http-only", "match-viewer", "https-only" ] }, "OriginSslProtocols":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"SslProtocolsList"} } }, "Origins":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"OriginList"} } }, "PathList":{ "type":"list", "member":{ "shape":"string", "locationName":"Path" } }, "Paths":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"PathList"} } }, "PreconditionFailed":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":412}, "exception":true }, "PriceClass":{ "type":"string", "enum":[ "PriceClass_100", "PriceClass_200", "PriceClass_All" ] }, "QueryStringCacheKeys":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"QueryStringCacheKeysList"} } }, "QueryStringCacheKeysList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "ResourceARN":{ "type":"string", "pattern":"arn:aws:cloudfront::[0-9]+:.*" }, "Restrictions":{ "type":"structure", "required":["GeoRestriction"], "members":{ "GeoRestriction":{"shape":"GeoRestriction"} } }, "S3Origin":{ "type":"structure", "required":[ "DomainName", "OriginAccessIdentity" ], "members":{ "DomainName":{"shape":"string"}, "OriginAccessIdentity":{"shape":"string"} } }, "S3OriginConfig":{ "type":"structure", "required":["OriginAccessIdentity"], "members":{ "OriginAccessIdentity":{"shape":"string"} } }, "SSLSupportMethod":{ "type":"string", "enum":[ "sni-only", "vip" ] }, "Signer":{ "type":"structure", "members":{ "AwsAccountNumber":{"shape":"string"}, "KeyPairIds":{"shape":"KeyPairIds"} } }, "SignerList":{ "type":"list", "member":{ "shape":"Signer", "locationName":"Signer" } }, "SslProtocol":{ "type":"string", "enum":[ "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2" ] }, "SslProtocolsList":{ "type":"list", "member":{ "shape":"SslProtocol", "locationName":"SslProtocol" } }, "StreamingDistribution":{ "type":"structure", "required":[ "Id", "ARN", "Status", "DomainName", "ActiveTrustedSigners", "StreamingDistributionConfig" ], "members":{ "Id":{"shape":"string"}, "ARN":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "ActiveTrustedSigners":{"shape":"ActiveTrustedSigners"}, "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"} } }, "StreamingDistributionAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "StreamingDistributionConfig":{ "type":"structure", "required":[ "CallerReference", "S3Origin", "Comment", "TrustedSigners", "Enabled" ], "members":{ "CallerReference":{"shape":"string"}, "S3Origin":{"shape":"S3Origin"}, "Aliases":{"shape":"Aliases"}, "Comment":{"shape":"string"}, "Logging":{"shape":"StreamingLoggingConfig"}, "TrustedSigners":{"shape":"TrustedSigners"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"} } }, "StreamingDistributionConfigWithTags":{ "type":"structure", "required":[ "StreamingDistributionConfig", "Tags" ], "members":{ "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"}, "Tags":{"shape":"Tags"} } }, "StreamingDistributionList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"StreamingDistributionSummaryList"} } }, "StreamingDistributionNotDisabled":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "StreamingDistributionSummary":{ "type":"structure", "required":[ "Id", "ARN", "Status", "LastModifiedTime", "DomainName", "S3Origin", "Aliases", "TrustedSigners", "Comment", "PriceClass", "Enabled" ], "members":{ "Id":{"shape":"string"}, "ARN":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "S3Origin":{"shape":"S3Origin"}, "Aliases":{"shape":"Aliases"}, "TrustedSigners":{"shape":"TrustedSigners"}, "Comment":{"shape":"string"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"} } }, "StreamingDistributionSummaryList":{ "type":"list", "member":{ "shape":"StreamingDistributionSummary", "locationName":"StreamingDistributionSummary" } }, "StreamingLoggingConfig":{ "type":"structure", "required":[ "Enabled", "Bucket", "Prefix" ], "members":{ "Enabled":{"shape":"boolean"}, "Bucket":{"shape":"string"}, "Prefix":{"shape":"string"} } }, "Tag":{ "type":"structure", "required":["Key"], "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{ "type":"string", "max":128, "min":1, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "TagKeyList":{ "type":"list", "member":{ "shape":"TagKey", "locationName":"Key" } }, "TagKeys":{ "type":"structure", "members":{ "Items":{"shape":"TagKeyList"} } }, "TagList":{ "type":"list", "member":{ "shape":"Tag", "locationName":"Tag" } }, "TagResourceRequest":{ "type":"structure", "required":[ "Resource", "Tags" ], "members":{ "Resource":{ "shape":"ResourceARN", "location":"querystring", "locationName":"Resource" }, "Tags":{ "shape":"Tags", "locationName":"Tags", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-20/"} } }, "payload":"Tags" }, "TagValue":{ "type":"string", "max":256, "min":0, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "Tags":{ "type":"structure", "members":{ "Items":{"shape":"TagList"} } }, "TooManyCacheBehaviors":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCertificates":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCloudFrontOriginAccessIdentities":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCookieNamesInWhiteList":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyDistributionCNAMEs":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyDistributions":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyHeadersInForwardedValues":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyInvalidationsInProgress":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyOriginCustomHeaders":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyOrigins":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyQueryStringParameters":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyStreamingDistributionCNAMEs":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyStreamingDistributions":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyTrustedSigners":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrustedSignerDoesNotExist":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrustedSigners":{ "type":"structure", "required":[ "Enabled", "Quantity" ], "members":{ "Enabled":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"AwsAccountNumberList"} } }, "UntagResourceRequest":{ "type":"structure", "required":[ "Resource", "TagKeys" ], "members":{ "Resource":{ "shape":"ResourceARN", "location":"querystring", "locationName":"Resource" }, "TagKeys":{ "shape":"TagKeys", "locationName":"TagKeys", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-20/"} } }, "payload":"TagKeys" }, "UpdateCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":[ "CloudFrontOriginAccessIdentityConfig", "Id" ], "members":{ "CloudFrontOriginAccessIdentityConfig":{ "shape":"CloudFrontOriginAccessIdentityConfig", "locationName":"CloudFrontOriginAccessIdentityConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-20/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "UpdateCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "UpdateDistributionRequest":{ "type":"structure", "required":[ "DistributionConfig", "Id" ], "members":{ "DistributionConfig":{ "shape":"DistributionConfig", "locationName":"DistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-20/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"DistributionConfig" }, "UpdateDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "UpdateStreamingDistributionRequest":{ "type":"structure", "required":[ "StreamingDistributionConfig", "Id" ], "members":{ "StreamingDistributionConfig":{ "shape":"StreamingDistributionConfig", "locationName":"StreamingDistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-08-20/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"StreamingDistributionConfig" }, "UpdateStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "ViewerCertificate":{ "type":"structure", "members":{ "CloudFrontDefaultCertificate":{"shape":"boolean"}, "IAMCertificateId":{"shape":"string"}, "ACMCertificateArn":{"shape":"string"}, "SSLSupportMethod":{"shape":"SSLSupportMethod"}, "MinimumProtocolVersion":{"shape":"MinimumProtocolVersion"}, "Certificate":{ "shape":"string", "deprecated":true }, "CertificateSource":{ "shape":"CertificateSource", "deprecated":true } } }, "ViewerProtocolPolicy":{ "type":"string", "enum":[ "allow-all", "https-only", "redirect-to-https" ] }, "boolean":{"type":"boolean"}, "integer":{"type":"integer"}, "long":{"type":"long"}, "string":{"type":"string"}, "timestamp":{"type":"timestamp"} } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-08-20/docs-2.json000077500000000000000000003002131300374646400232010ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon CloudFront

        Amazon CloudFront is a global content delivery network (CDN) service that accelerates delivery of your websites, APIs, video content or other web assets. It integrates with other Amazon Web Services products to give developers and businesses an easy way to accelerate content to end users with no minimum usage commitments.

        ", "operations": { "CreateCloudFrontOriginAccessIdentity": "Create a new origin access identity.", "CreateDistribution": "Create a new distribution.", "CreateDistributionWithTags": "Create a new distribution with tags.", "CreateInvalidation": "Create a new invalidation.", "CreateStreamingDistribution": "Create a new streaming distribution.", "CreateStreamingDistributionWithTags": "Create a new streaming distribution with tags.", "DeleteCloudFrontOriginAccessIdentity": "Delete an origin access identity.", "DeleteDistribution": "Delete a distribution.", "DeleteStreamingDistribution": "Delete a streaming distribution.", "GetCloudFrontOriginAccessIdentity": "Get the information about an origin access identity.", "GetCloudFrontOriginAccessIdentityConfig": "Get the configuration information about an origin access identity.", "GetDistribution": "Get the information about a distribution.", "GetDistributionConfig": "Get the configuration information about a distribution.", "GetInvalidation": "Get the information about an invalidation.", "GetStreamingDistribution": "Get the information about a streaming distribution.", "GetStreamingDistributionConfig": "Get the configuration information about a streaming distribution.", "ListCloudFrontOriginAccessIdentities": "List origin access identities.", "ListDistributions": "List distributions.", "ListDistributionsByWebACLId": "List the distributions that are associated with a specified AWS WAF web ACL.", "ListInvalidations": "List invalidation batches.", "ListStreamingDistributions": "List streaming distributions.", "ListTagsForResource": "List tags for a CloudFront resource.", "TagResource": "Add tags to a CloudFront resource.", "UntagResource": "Remove tags from a CloudFront resource.", "UpdateCloudFrontOriginAccessIdentity": "Update an origin access identity.", "UpdateDistribution": "Update a distribution.", "UpdateStreamingDistribution": "Update a streaming distribution." }, "shapes": { "AccessDenied": { "base": "Access denied.", "refs": { } }, "ActiveTrustedSigners": { "base": "A complex type that lists the AWS accounts, if any, that you included in the TrustedSigners complex type for the default cache behavior or for any of the other cache behaviors for this distribution. These are accounts that you want to allow to create signed URLs for private content.", "refs": { "Distribution$ActiveTrustedSigners": "CloudFront automatically adds this element to the response only if you've set up the distribution to serve private content with signed URLs. The element lists the key pair IDs that CloudFront is aware of for each trusted signer. The Signer child element lists the AWS account number of the trusted signer (or an empty Self element if the signer is you). The Signer element also includes the IDs of any active key pairs associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create working signed URLs.", "StreamingDistribution$ActiveTrustedSigners": "CloudFront automatically adds this element to the response only if you've set up the distribution to serve private content with signed URLs. The element lists the key pair IDs that CloudFront is aware of for each trusted signer. The Signer child element lists the AWS account number of the trusted signer (or an empty Self element if the signer is you). The Signer element also includes the IDs of any active key pairs associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create working signed URLs." } }, "AliasList": { "base": null, "refs": { "Aliases$Items": "Optional: A complex type that contains CNAME elements, if any, for this distribution. If Quantity is 0, you can omit Items." } }, "Aliases": { "base": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "refs": { "DistributionConfig$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "DistributionSummary$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "StreamingDistributionConfig$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution.", "StreamingDistributionSummary$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution." } }, "AllowedMethods": { "base": "A complex type that controls which HTTP methods CloudFront processes and forwards to your Amazon S3 bucket or your custom origin. There are three choices: - CloudFront forwards only GET and HEAD requests. - CloudFront forwards only GET, HEAD and OPTIONS requests. - CloudFront forwards GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests. If you pick the third choice, you may need to restrict access to your Amazon S3 bucket or to your custom origin so users can't perform operations that you don't want them to. For example, you may not want users to have permission to delete objects from your origin.", "refs": { "CacheBehavior$AllowedMethods": null, "DefaultCacheBehavior$AllowedMethods": null } }, "AwsAccountNumberList": { "base": null, "refs": { "TrustedSigners$Items": "Optional: A complex type that contains trusted signers for this cache behavior. If Quantity is 0, you can omit Items." } }, "BatchTooLarge": { "base": null, "refs": { } }, "CNAMEAlreadyExists": { "base": null, "refs": { } }, "CacheBehavior": { "base": "A complex type that describes how CloudFront processes requests. You can create up to 10 cache behaviors.You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to distribute objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin will never be used. If you don't want to specify any cache behaviors, include only an empty CacheBehaviors element. Don't include an empty CacheBehavior element, or CloudFront returns a MalformedXML error. To delete all cache behaviors in an existing distribution, update the distribution configuration and include only an empty CacheBehaviors element. To add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution.", "refs": { "CacheBehaviorList$member": null } }, "CacheBehaviorList": { "base": null, "refs": { "CacheBehaviors$Items": "Optional: A complex type that contains cache behaviors for this distribution. If Quantity is 0, you can omit Items." } }, "CacheBehaviors": { "base": "A complex type that contains zero or more CacheBehavior elements.", "refs": { "DistributionConfig$CacheBehaviors": "A complex type that contains zero or more CacheBehavior elements.", "DistributionSummary$CacheBehaviors": "A complex type that contains zero or more CacheBehavior elements." } }, "CachedMethods": { "base": "A complex type that controls whether CloudFront caches the response to requests using the specified HTTP methods. There are two choices: - CloudFront caches responses to GET and HEAD requests. - CloudFront caches responses to GET, HEAD, and OPTIONS requests. If you pick the second choice for your S3 Origin, you may need to forward Access-Control-Request-Method, Access-Control-Request-Headers and Origin headers for the responses to be cached correctly.", "refs": { "AllowedMethods$CachedMethods": null } }, "CertificateSource": { "base": null, "refs": { "ViewerCertificate$CertificateSource": "Note: this field is deprecated. Please use one of [ACMCertificateArn, IAMCertificateId, CloudFrontDefaultCertificate]." } }, "CloudFrontOriginAccessIdentity": { "base": "CloudFront origin access identity.", "refs": { "CreateCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information.", "GetCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information.", "UpdateCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information." } }, "CloudFrontOriginAccessIdentityAlreadyExists": { "base": "If the CallerReference is a value you already sent in a previous request to create an identity but the content of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists error.", "refs": { } }, "CloudFrontOriginAccessIdentityConfig": { "base": "Origin access identity configuration.", "refs": { "CloudFrontOriginAccessIdentity$CloudFrontOriginAccessIdentityConfig": "The current configuration information for the identity.", "CreateCloudFrontOriginAccessIdentityRequest$CloudFrontOriginAccessIdentityConfig": "The origin access identity's configuration information.", "GetCloudFrontOriginAccessIdentityConfigResult$CloudFrontOriginAccessIdentityConfig": "The origin access identity's configuration information.", "UpdateCloudFrontOriginAccessIdentityRequest$CloudFrontOriginAccessIdentityConfig": "The identity's configuration information." } }, "CloudFrontOriginAccessIdentityInUse": { "base": null, "refs": { } }, "CloudFrontOriginAccessIdentityList": { "base": "The CloudFrontOriginAccessIdentityList type.", "refs": { "ListCloudFrontOriginAccessIdentitiesResult$CloudFrontOriginAccessIdentityList": "The CloudFrontOriginAccessIdentityList type." } }, "CloudFrontOriginAccessIdentitySummary": { "base": "Summary of the information about a CloudFront origin access identity.", "refs": { "CloudFrontOriginAccessIdentitySummaryList$member": null } }, "CloudFrontOriginAccessIdentitySummaryList": { "base": null, "refs": { "CloudFrontOriginAccessIdentityList$Items": "A complex type that contains one CloudFrontOriginAccessIdentitySummary element for each origin access identity that was created by the current AWS account." } }, "CookieNameList": { "base": null, "refs": { "CookieNames$Items": "Optional: A complex type that contains whitelisted cookies for this cache behavior. If Quantity is 0, you can omit Items." } }, "CookieNames": { "base": "A complex type that specifies the whitelisted cookies, if any, that you want CloudFront to forward to your origin that is associated with this cache behavior.", "refs": { "CookiePreference$WhitelistedNames": "A complex type that specifies the whitelisted cookies, if any, that you want CloudFront to forward to your origin that is associated with this cache behavior." } }, "CookiePreference": { "base": "A complex type that specifies the cookie preferences associated with this cache behavior.", "refs": { "ForwardedValues$Cookies": "A complex type that specifies how CloudFront handles cookies." } }, "CreateCloudFrontOriginAccessIdentityRequest": { "base": "The request to create a new origin access identity.", "refs": { } }, "CreateCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateDistributionRequest": { "base": "The request to create a new distribution.", "refs": { } }, "CreateDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateDistributionWithTagsRequest": { "base": "The request to create a new distribution with tags", "refs": { } }, "CreateDistributionWithTagsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateInvalidationRequest": { "base": "The request to create an invalidation.", "refs": { } }, "CreateInvalidationResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateStreamingDistributionRequest": { "base": "The request to create a new streaming distribution.", "refs": { } }, "CreateStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateStreamingDistributionWithTagsRequest": { "base": "The request to create a new streaming distribution with tags.", "refs": { } }, "CreateStreamingDistributionWithTagsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CustomErrorResponse": { "base": "A complex type that describes how you'd prefer CloudFront to respond to requests that result in either a 4xx or 5xx response. You can control whether a custom error page should be displayed, what the desired response code should be for this error page and how long should the error response be cached by CloudFront. If you don't want to specify any custom error responses, include only an empty CustomErrorResponses element. To delete all custom error responses in an existing distribution, update the distribution configuration and include only an empty CustomErrorResponses element. To add, change, or remove one or more custom error responses, update the distribution configuration and specify all of the custom error responses that you want to include in the updated distribution.", "refs": { "CustomErrorResponseList$member": null } }, "CustomErrorResponseList": { "base": null, "refs": { "CustomErrorResponses$Items": "Optional: A complex type that contains custom error responses for this distribution. If Quantity is 0, you can omit Items." } }, "CustomErrorResponses": { "base": "A complex type that contains zero or more CustomErrorResponse elements.", "refs": { "DistributionConfig$CustomErrorResponses": "A complex type that contains zero or more CustomErrorResponse elements.", "DistributionSummary$CustomErrorResponses": "A complex type that contains zero or more CustomErrorResponses elements." } }, "CustomHeaders": { "base": "A complex type that contains the list of Custom Headers for each origin.", "refs": { "Origin$CustomHeaders": "A complex type that contains information about the custom headers associated with this Origin." } }, "CustomOriginConfig": { "base": "A customer origin.", "refs": { "Origin$CustomOriginConfig": "A complex type that contains information about a custom origin. If the origin is an Amazon S3 bucket, use the S3OriginConfig element instead." } }, "DefaultCacheBehavior": { "base": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior.", "refs": { "DistributionConfig$DefaultCacheBehavior": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior.", "DistributionSummary$DefaultCacheBehavior": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior." } }, "DeleteCloudFrontOriginAccessIdentityRequest": { "base": "The request to delete a origin access identity.", "refs": { } }, "DeleteDistributionRequest": { "base": "The request to delete a distribution.", "refs": { } }, "DeleteStreamingDistributionRequest": { "base": "The request to delete a streaming distribution.", "refs": { } }, "Distribution": { "base": "A distribution.", "refs": { "CreateDistributionResult$Distribution": "The distribution's information.", "CreateDistributionWithTagsResult$Distribution": "The distribution's information.", "GetDistributionResult$Distribution": "The distribution's information.", "UpdateDistributionResult$Distribution": "The distribution's information." } }, "DistributionAlreadyExists": { "base": "The caller reference you attempted to create the distribution with is associated with another distribution.", "refs": { } }, "DistributionConfig": { "base": "A distribution Configuration.", "refs": { "CreateDistributionRequest$DistributionConfig": "The distribution's configuration information.", "Distribution$DistributionConfig": "The current configuration information for the distribution.", "DistributionConfigWithTags$DistributionConfig": "A distribution Configuration.", "GetDistributionConfigResult$DistributionConfig": "The distribution's configuration information.", "UpdateDistributionRequest$DistributionConfig": "The distribution's configuration information." } }, "DistributionConfigWithTags": { "base": "A distribution Configuration and a list of tags to be associated with the distribution.", "refs": { "CreateDistributionWithTagsRequest$DistributionConfigWithTags": "The distribution's configuration information." } }, "DistributionList": { "base": "A distribution list.", "refs": { "ListDistributionsByWebACLIdResult$DistributionList": "The DistributionList type.", "ListDistributionsResult$DistributionList": "The DistributionList type." } }, "DistributionNotDisabled": { "base": null, "refs": { } }, "DistributionSummary": { "base": "A summary of the information for an Amazon CloudFront distribution.", "refs": { "DistributionSummaryList$member": null } }, "DistributionSummaryList": { "base": null, "refs": { "DistributionList$Items": "A complex type that contains one DistributionSummary element for each distribution that was created by the current AWS account." } }, "ForwardedValues": { "base": "A complex type that specifies how CloudFront handles query strings, cookies and headers.", "refs": { "CacheBehavior$ForwardedValues": "A complex type that specifies how CloudFront handles query strings, cookies and headers.", "DefaultCacheBehavior$ForwardedValues": "A complex type that specifies how CloudFront handles query strings, cookies and headers." } }, "GeoRestriction": { "base": "A complex type that controls the countries in which your content is distributed. For more information about geo restriction, go to Customizing Error Responses in the Amazon CloudFront Developer Guide. CloudFront determines the location of your users using MaxMind GeoIP databases. For information about the accuracy of these databases, see How accurate are your GeoIP databases? on the MaxMind website.", "refs": { "Restrictions$GeoRestriction": null } }, "GeoRestrictionType": { "base": null, "refs": { "GeoRestriction$RestrictionType": "The method that you want to use to restrict distribution of your content by country: - none: No geo restriction is enabled, meaning access to content is not restricted by client geo location. - blacklist: The Location elements specify the countries in which you do not want CloudFront to distribute your content. - whitelist: The Location elements specify the countries in which you want CloudFront to distribute your content." } }, "GetCloudFrontOriginAccessIdentityConfigRequest": { "base": "The request to get an origin access identity's configuration.", "refs": { } }, "GetCloudFrontOriginAccessIdentityConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetCloudFrontOriginAccessIdentityRequest": { "base": "The request to get an origin access identity's information.", "refs": { } }, "GetCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetDistributionConfigRequest": { "base": "The request to get a distribution configuration.", "refs": { } }, "GetDistributionConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetDistributionRequest": { "base": "The request to get a distribution's information.", "refs": { } }, "GetDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetInvalidationRequest": { "base": "The request to get an invalidation's information.", "refs": { } }, "GetInvalidationResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetStreamingDistributionConfigRequest": { "base": "To request to get a streaming distribution configuration.", "refs": { } }, "GetStreamingDistributionConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetStreamingDistributionRequest": { "base": "The request to get a streaming distribution's information.", "refs": { } }, "GetStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "HeaderList": { "base": null, "refs": { "Headers$Items": "Optional: A complex type that contains a Name element for each header that you want CloudFront to forward to the origin and to vary on for this cache behavior. If Quantity is 0, omit Items." } }, "Headers": { "base": "A complex type that specifies the headers that you want CloudFront to forward to the origin for this cache behavior. For the headers that you specify, CloudFront also caches separate versions of a given object based on the header values in viewer requests; this is known as varying on headers. For example, suppose viewer requests for logo.jpg contain a custom Product header that has a value of either Acme or Apex, and you configure CloudFront to vary on the Product header. CloudFront forwards the Product header to the origin and caches the response from the origin once for each header value.", "refs": { "ForwardedValues$Headers": "A complex type that specifies the Headers, if any, that you want CloudFront to vary upon for this cache behavior." } }, "IllegalUpdate": { "base": "Origin and CallerReference cannot be updated.", "refs": { } }, "InconsistentQuantities": { "base": "The value of Quantity and the size of Items do not match.", "refs": { } }, "InvalidArgument": { "base": "The argument is invalid.", "refs": { } }, "InvalidDefaultRootObject": { "base": "The default root object file name is too big or contains an invalid character.", "refs": { } }, "InvalidErrorCode": { "base": null, "refs": { } }, "InvalidForwardCookies": { "base": "Your request contains forward cookies option which doesn't match with the expectation for the whitelisted list of cookie names. Either list of cookie names has been specified when not allowed or list of cookie names is missing when expected.", "refs": { } }, "InvalidGeoRestrictionParameter": { "base": null, "refs": { } }, "InvalidHeadersForS3Origin": { "base": null, "refs": { } }, "InvalidIfMatchVersion": { "base": "The If-Match version is missing or not valid for the distribution.", "refs": { } }, "InvalidLocationCode": { "base": null, "refs": { } }, "InvalidMinimumProtocolVersion": { "base": null, "refs": { } }, "InvalidOrigin": { "base": "The Amazon S3 origin server specified does not refer to a valid Amazon S3 bucket.", "refs": { } }, "InvalidOriginAccessIdentity": { "base": "The origin access identity is not valid or doesn't exist.", "refs": { } }, "InvalidProtocolSettings": { "base": "You cannot specify SSLv3 as the minimum protocol version if you only want to support only clients that Support Server Name Indication (SNI).", "refs": { } }, "InvalidQueryStringParameters": { "base": null, "refs": { } }, "InvalidRelativePath": { "base": "The relative path is too big, is not URL-encoded, or does not begin with a slash (/).", "refs": { } }, "InvalidRequiredProtocol": { "base": "This operation requires the HTTPS protocol. Ensure that you specify the HTTPS protocol in your request, or omit the RequiredProtocols element from your distribution configuration.", "refs": { } }, "InvalidResponseCode": { "base": null, "refs": { } }, "InvalidTTLOrder": { "base": null, "refs": { } }, "InvalidTagging": { "base": "The specified tagging for a CloudFront resource is invalid. For more information, see the error text.", "refs": { } }, "InvalidViewerCertificate": { "base": null, "refs": { } }, "InvalidWebACLId": { "base": null, "refs": { } }, "Invalidation": { "base": "An invalidation.", "refs": { "CreateInvalidationResult$Invalidation": "The invalidation's information.", "GetInvalidationResult$Invalidation": "The invalidation's information." } }, "InvalidationBatch": { "base": "An invalidation batch.", "refs": { "CreateInvalidationRequest$InvalidationBatch": "The batch information for the invalidation.", "Invalidation$InvalidationBatch": "The current invalidation information for the batch request." } }, "InvalidationList": { "base": "An invalidation list.", "refs": { "ListInvalidationsResult$InvalidationList": "Information about invalidation batches." } }, "InvalidationSummary": { "base": "Summary of an invalidation request.", "refs": { "InvalidationSummaryList$member": null } }, "InvalidationSummaryList": { "base": null, "refs": { "InvalidationList$Items": "A complex type that contains one InvalidationSummary element for each invalidation batch that was created by the current AWS account." } }, "ItemSelection": { "base": null, "refs": { "CookiePreference$Forward": "Use this element to specify whether you want CloudFront to forward cookies to the origin that is associated with this cache behavior. You can specify all, none or whitelist. If you choose All, CloudFront forwards all cookies regardless of how many your application uses." } }, "KeyPairIdList": { "base": null, "refs": { "KeyPairIds$Items": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber." } }, "KeyPairIds": { "base": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber.", "refs": { "Signer$KeyPairIds": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber." } }, "ListCloudFrontOriginAccessIdentitiesRequest": { "base": "The request to list origin access identities.", "refs": { } }, "ListCloudFrontOriginAccessIdentitiesResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListDistributionsByWebACLIdRequest": { "base": "The request to list distributions that are associated with a specified AWS WAF web ACL.", "refs": { } }, "ListDistributionsByWebACLIdResult": { "base": "The response to a request to list the distributions that are associated with a specified AWS WAF web ACL.", "refs": { } }, "ListDistributionsRequest": { "base": "The request to list your distributions.", "refs": { } }, "ListDistributionsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListInvalidationsRequest": { "base": "The request to list invalidations.", "refs": { } }, "ListInvalidationsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListStreamingDistributionsRequest": { "base": "The request to list your streaming distributions.", "refs": { } }, "ListStreamingDistributionsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListTagsForResourceRequest": { "base": "The request to list tags for a CloudFront resource.", "refs": { } }, "ListTagsForResourceResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "LocationList": { "base": null, "refs": { "GeoRestriction$Items": "A complex type that contains a Location element for each country in which you want CloudFront either to distribute your content (whitelist) or not distribute your content (blacklist). The Location element is a two-letter, uppercase country code for a country that you want to include in your blacklist or whitelist. Include one Location element for each country. CloudFront and MaxMind both use ISO 3166 country codes. For the current list of countries and the corresponding codes, see ISO 3166-1-alpha-2 code on the International Organization for Standardization website. You can also refer to the country list in the CloudFront console, which includes both country names and codes." } }, "LoggingConfig": { "base": "A complex type that controls whether access logs are written for the distribution.", "refs": { "DistributionConfig$Logging": "A complex type that controls whether access logs are written for the distribution." } }, "Method": { "base": null, "refs": { "MethodsList$member": null } }, "MethodsList": { "base": null, "refs": { "AllowedMethods$Items": "A complex type that contains the HTTP methods that you want CloudFront to process and forward to your origin.", "CachedMethods$Items": "A complex type that contains the HTTP methods that you want CloudFront to cache responses to." } }, "MinimumProtocolVersion": { "base": null, "refs": { "ViewerCertificate$MinimumProtocolVersion": "Specify the minimum version of the SSL protocol that you want CloudFront to use, SSLv3 or TLSv1, for HTTPS connections. CloudFront will serve your objects only to browsers or devices that support at least the SSL version that you specify. The TLSv1 protocol is more secure, so we recommend that you specify SSLv3 only if your users are using browsers or devices that don't support TLSv1. If you're using a custom certificate (if you specify a value for IAMCertificateId) and if you're using dedicated IP (if you specify vip for SSLSupportMethod), you can choose SSLv3 or TLSv1 as the MinimumProtocolVersion. If you're using a custom certificate (if you specify a value for IAMCertificateId) and if you're using SNI (if you specify sni-only for SSLSupportMethod), you must specify TLSv1 for MinimumProtocolVersion." } }, "MissingBody": { "base": "This operation requires a body. Ensure that the body is present and the Content-Type header is set.", "refs": { } }, "NoSuchCloudFrontOriginAccessIdentity": { "base": "The specified origin access identity does not exist.", "refs": { } }, "NoSuchDistribution": { "base": "The specified distribution does not exist.", "refs": { } }, "NoSuchInvalidation": { "base": "The specified invalidation does not exist.", "refs": { } }, "NoSuchOrigin": { "base": "No origin exists with the specified Origin Id.", "refs": { } }, "NoSuchResource": { "base": "The specified CloudFront resource does not exist.", "refs": { } }, "NoSuchStreamingDistribution": { "base": "The specified streaming distribution does not exist.", "refs": { } }, "Origin": { "base": "A complex type that describes the Amazon S3 bucket or the HTTP server (for example, a web server) from which CloudFront gets your files.You must create at least one origin.", "refs": { "OriginList$member": null } }, "OriginCustomHeader": { "base": "A complex type that contains information related to a Header", "refs": { "OriginCustomHeadersList$member": null } }, "OriginCustomHeadersList": { "base": null, "refs": { "CustomHeaders$Items": "A complex type that contains the custom headers for this Origin." } }, "OriginList": { "base": null, "refs": { "Origins$Items": "A complex type that contains origins for this distribution." } }, "OriginProtocolPolicy": { "base": null, "refs": { "CustomOriginConfig$OriginProtocolPolicy": "The origin protocol policy to apply to your origin." } }, "OriginSslProtocols": { "base": "A complex type that contains the list of SSL/TLS protocols that you want CloudFront to use when communicating with your origin over HTTPS.", "refs": { "CustomOriginConfig$OriginSslProtocols": "The SSL/TLS protocols that you want CloudFront to use when communicating with your origin over HTTPS." } }, "Origins": { "base": "A complex type that contains information about origins for this distribution.", "refs": { "DistributionConfig$Origins": "A complex type that contains information about origins for this distribution.", "DistributionSummary$Origins": "A complex type that contains information about origins for this distribution." } }, "PathList": { "base": null, "refs": { "Paths$Items": "A complex type that contains a list of the objects that you want to invalidate." } }, "Paths": { "base": "A complex type that contains information about the objects that you want to invalidate.", "refs": { "InvalidationBatch$Paths": "The path of the object to invalidate. The path is relative to the distribution and must begin with a slash (/). You must enclose each invalidation object with the Path element tags. If the path includes non-ASCII characters or unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters. Do not URL encode any other characters in the path, or CloudFront will not invalidate the old version of the updated object." } }, "PreconditionFailed": { "base": "The precondition given in one or more of the request-header fields evaluated to false.", "refs": { } }, "PriceClass": { "base": null, "refs": { "DistributionConfig$PriceClass": "A complex type that contains information about price class for this distribution.", "DistributionSummary$PriceClass": null, "StreamingDistributionConfig$PriceClass": "A complex type that contains information about price class for this streaming distribution.", "StreamingDistributionSummary$PriceClass": null } }, "QueryStringCacheKeys": { "base": null, "refs": { "ForwardedValues$QueryStringCacheKeys": "

        A complex type that contains information about the query string parameters that you want CloudFront to use for caching for this cache behavior.

        " } }, "QueryStringCacheKeysList": { "base": null, "refs": { "QueryStringCacheKeys$Items": "Optional: A list that contains the query string parameters that you want CloudFront to use as a basis for caching for this cache behavior. If Quantity is 0, you can omit Items." } }, "ResourceARN": { "base": null, "refs": { "ListTagsForResourceRequest$Resource": "An ARN of a CloudFront resource.", "TagResourceRequest$Resource": "An ARN of a CloudFront resource.", "UntagResourceRequest$Resource": "An ARN of a CloudFront resource." } }, "Restrictions": { "base": "A complex type that identifies ways in which you want to restrict distribution of your content.", "refs": { "DistributionConfig$Restrictions": null, "DistributionSummary$Restrictions": null } }, "S3Origin": { "base": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.", "refs": { "StreamingDistributionConfig$S3Origin": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.", "StreamingDistributionSummary$S3Origin": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution." } }, "S3OriginConfig": { "base": "A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead.", "refs": { "Origin$S3OriginConfig": "A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead." } }, "SSLSupportMethod": { "base": null, "refs": { "ViewerCertificate$SSLSupportMethod": "If you specify a value for IAMCertificateId, you must also specify how you want CloudFront to serve HTTPS requests. Valid values are vip and sni-only. If you specify vip, CloudFront uses dedicated IP addresses for your content and can respond to HTTPS requests from any viewer. However, you must request permission to use this feature, and you incur additional monthly charges. If you specify sni-only, CloudFront can only respond to HTTPS requests from viewers that support Server Name Indication (SNI). All modern browsers support SNI, but some browsers still in use don't support SNI. Do not specify a value for SSLSupportMethod if you specified true for CloudFrontDefaultCertificate." } }, "Signer": { "base": "A complex type that lists the AWS accounts that were included in the TrustedSigners complex type, as well as their active CloudFront key pair IDs, if any.", "refs": { "SignerList$member": null } }, "SignerList": { "base": null, "refs": { "ActiveTrustedSigners$Items": "A complex type that contains one Signer complex type for each unique trusted signer that is specified in the TrustedSigners complex type, including trusted signers in the default cache behavior and in all of the other cache behaviors." } }, "SslProtocol": { "base": null, "refs": { "SslProtocolsList$member": null } }, "SslProtocolsList": { "base": null, "refs": { "OriginSslProtocols$Items": "A complex type that contains one SslProtocol element for each SSL/TLS protocol that you want to allow CloudFront to use when establishing an HTTPS connection with this origin." } }, "StreamingDistribution": { "base": "A streaming distribution.", "refs": { "CreateStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information.", "CreateStreamingDistributionWithTagsResult$StreamingDistribution": "The streaming distribution's information.", "GetStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information.", "UpdateStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information." } }, "StreamingDistributionAlreadyExists": { "base": null, "refs": { } }, "StreamingDistributionConfig": { "base": "The configuration for the streaming distribution.", "refs": { "CreateStreamingDistributionRequest$StreamingDistributionConfig": "The streaming distribution's configuration information.", "GetStreamingDistributionConfigResult$StreamingDistributionConfig": "The streaming distribution's configuration information.", "StreamingDistribution$StreamingDistributionConfig": "The current configuration information for the streaming distribution.", "StreamingDistributionConfigWithTags$StreamingDistributionConfig": "A streaming distribution Configuration.", "UpdateStreamingDistributionRequest$StreamingDistributionConfig": "The streaming distribution's configuration information." } }, "StreamingDistributionConfigWithTags": { "base": "A streaming distribution Configuration and a list of tags to be associated with the streaming distribution.", "refs": { "CreateStreamingDistributionWithTagsRequest$StreamingDistributionConfigWithTags": "The streaming distribution's configuration information." } }, "StreamingDistributionList": { "base": "A streaming distribution list.", "refs": { "ListStreamingDistributionsResult$StreamingDistributionList": "The StreamingDistributionList type." } }, "StreamingDistributionNotDisabled": { "base": null, "refs": { } }, "StreamingDistributionSummary": { "base": "A summary of the information for an Amazon CloudFront streaming distribution.", "refs": { "StreamingDistributionSummaryList$member": null } }, "StreamingDistributionSummaryList": { "base": null, "refs": { "StreamingDistributionList$Items": "A complex type that contains one StreamingDistributionSummary element for each distribution that was created by the current AWS account." } }, "StreamingLoggingConfig": { "base": "A complex type that controls whether access logs are written for this streaming distribution.", "refs": { "StreamingDistributionConfig$Logging": "A complex type that controls whether access logs are written for the streaming distribution." } }, "Tag": { "base": "A complex type that contains Tag key and Tag value.", "refs": { "TagList$member": null } }, "TagKey": { "base": "A string that contains Tag key. The string length should be between 1 and 128 characters. Valid characters include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.", "refs": { "Tag$Key": "A string that contains Tag key. The string length should be between 1 and 128 characters. Valid characters include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.", "TagKeyList$member": null } }, "TagKeyList": { "base": null, "refs": { "TagKeys$Items": "A complex type that contains Tag key elements" } }, "TagKeys": { "base": "A complex type that contains zero or more Tag elements.", "refs": { "UntagResourceRequest$TagKeys": "A complex type that contains zero or more Tag key elements." } }, "TagList": { "base": null, "refs": { "Tags$Items": "A complex type that contains Tag elements" } }, "TagResourceRequest": { "base": "The request to add tags to a CloudFront resource.", "refs": { } }, "TagValue": { "base": null, "refs": { "Tag$Value": "A string that contains an optional Tag value. The string length should be between 0 and 256 characters. Valid characters include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @." } }, "Tags": { "base": "A complex type that contains zero or more Tag elements.", "refs": { "DistributionConfigWithTags$Tags": "A complex type that contains zero or more Tag elements.", "ListTagsForResourceResult$Tags": "A complex type that contains zero or more Tag elements.", "StreamingDistributionConfigWithTags$Tags": "A complex type that contains zero or more Tag elements.", "TagResourceRequest$Tags": "A complex type that contains zero or more Tag elements." } }, "TooManyCacheBehaviors": { "base": "You cannot create anymore cache behaviors for the distribution.", "refs": { } }, "TooManyCertificates": { "base": "You cannot create anymore custom ssl certificates.", "refs": { } }, "TooManyCloudFrontOriginAccessIdentities": { "base": "Processing your request would cause you to exceed the maximum number of origin access identities allowed.", "refs": { } }, "TooManyCookieNamesInWhiteList": { "base": "Your request contains more cookie names in the whitelist than are allowed per cache behavior.", "refs": { } }, "TooManyDistributionCNAMEs": { "base": "Your request contains more CNAMEs than are allowed per distribution.", "refs": { } }, "TooManyDistributions": { "base": "Processing your request would cause you to exceed the maximum number of distributions allowed.", "refs": { } }, "TooManyHeadersInForwardedValues": { "base": null, "refs": { } }, "TooManyInvalidationsInProgress": { "base": "You have exceeded the maximum number of allowable InProgress invalidation batch requests, or invalidation objects.", "refs": { } }, "TooManyOriginCustomHeaders": { "base": null, "refs": { } }, "TooManyOrigins": { "base": "You cannot create anymore origins for the distribution.", "refs": { } }, "TooManyQueryStringParameters": { "base": null, "refs": { } }, "TooManyStreamingDistributionCNAMEs": { "base": null, "refs": { } }, "TooManyStreamingDistributions": { "base": "Processing your request would cause you to exceed the maximum number of streaming distributions allowed.", "refs": { } }, "TooManyTrustedSigners": { "base": "Your request contains more trusted signers than are allowed per distribution.", "refs": { } }, "TrustedSignerDoesNotExist": { "base": "One or more of your trusted signers do not exist.", "refs": { } }, "TrustedSigners": { "base": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "refs": { "CacheBehavior$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "DefaultCacheBehavior$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "StreamingDistributionConfig$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "StreamingDistributionSummary$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution." } }, "UntagResourceRequest": { "base": "The request to remove tags from a CloudFront resource.", "refs": { } }, "UpdateCloudFrontOriginAccessIdentityRequest": { "base": "The request to update an origin access identity.", "refs": { } }, "UpdateCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "UpdateDistributionRequest": { "base": "The request to update a distribution.", "refs": { } }, "UpdateDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "UpdateStreamingDistributionRequest": { "base": "The request to update a streaming distribution.", "refs": { } }, "UpdateStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ViewerCertificate": { "base": "A complex type that contains information about viewer certificates for this distribution.", "refs": { "DistributionConfig$ViewerCertificate": null, "DistributionSummary$ViewerCertificate": null } }, "ViewerProtocolPolicy": { "base": null, "refs": { "CacheBehavior$ViewerProtocolPolicy": "Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. If you want CloudFront to allow end users to use any available protocol, specify allow-all. If you want CloudFront to require HTTPS, specify https. If you want CloudFront to respond to an HTTP request with an HTTP status code of 301 (Moved Permanently) and the HTTPS URL, specify redirect-to-https. The viewer then resubmits the request using the HTTPS URL.", "DefaultCacheBehavior$ViewerProtocolPolicy": "Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. If you want CloudFront to allow end users to use any available protocol, specify allow-all. If you want CloudFront to require HTTPS, specify https. If you want CloudFront to respond to an HTTP request with an HTTP status code of 301 (Moved Permanently) and the HTTPS URL, specify redirect-to-https. The viewer then resubmits the request using the HTTPS URL." } }, "boolean": { "base": null, "refs": { "ActiveTrustedSigners$Enabled": "Each active trusted signer.", "CacheBehavior$SmoothStreaming": "Indicates whether you want to distribute media files in Microsoft Smooth Streaming format using the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "CacheBehavior$Compress": "Whether you want CloudFront to automatically compress content for web requests that include Accept-Encoding: gzip in the request header. If so, specify true; if not, specify false. CloudFront compresses files larger than 1000 bytes and less than 1 megabyte for both Amazon S3 and custom origins. When a CloudFront edge location is unusually busy, some files might not be compressed. The value of the Content-Type header must be on the list of file types that CloudFront will compress. For the current list, see Serving Compressed Content in the Amazon CloudFront Developer Guide. If you configure CloudFront to compress content, CloudFront removes the ETag response header from the objects that it compresses. The ETag header indicates that the version in a CloudFront edge cache is identical to the version on the origin server, but after compression the two versions are no longer identical. As a result, for compressed objects, CloudFront can't use the ETag header to determine whether an expired object in the CloudFront edge cache is still the latest version.", "CloudFrontOriginAccessIdentityList$IsTruncated": "A flag that indicates whether more origin access identities remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more items in the list.", "DefaultCacheBehavior$SmoothStreaming": "Indicates whether you want to distribute media files in Microsoft Smooth Streaming format using the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "DefaultCacheBehavior$Compress": "Whether you want CloudFront to automatically compress content for web requests that include Accept-Encoding: gzip in the request header. If so, specify true; if not, specify false. CloudFront compresses files larger than 1000 bytes and less than 1 megabyte for both Amazon S3 and custom origins. When a CloudFront edge location is unusually busy, some files might not be compressed. The value of the Content-Type header must be on the list of file types that CloudFront will compress. For the current list, see Serving Compressed Content in the Amazon CloudFront Developer Guide. If you configure CloudFront to compress content, CloudFront removes the ETag response header from the objects that it compresses. The ETag header indicates that the version in a CloudFront edge cache is identical to the version on the origin server, but after compression the two versions are no longer identical. As a result, for compressed objects, CloudFront can't use the ETag header to determine whether an expired object in the CloudFront edge cache is still the latest version.", "DistributionConfig$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "DistributionList$IsTruncated": "A flag that indicates whether more distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.", "DistributionSummary$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "ForwardedValues$QueryString": "

        Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior and cache based on the query string parameters. CloudFront behavior depends on the value of QueryString and on the values that you specify for QueryStringCacheKeys, if any:

        • If you specify true for QueryString and you don't specify any values for QueryStringCacheKeys, CloudFront forwards all query string parameters to the origin and caches based on all query string parameters. Depending on how many query string parameters and values you have, this can adversely affect performance because CloudFront must forward more requests to the origin.
        • If you specify true for QueryString and you specify one or more values for QueryStringCacheKeys, CloudFront forwards all query string parameters to the origin, but it only caches based on the query string parameters that you specify.
        • If you specify false for QueryString, CloudFront doesn't forward any query string parameters to the origin, and doesn't cache based on query string parameters.
        ", "InvalidationList$IsTruncated": "A flag that indicates whether more invalidation batch requests remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more invalidation batches in the list.", "LoggingConfig$Enabled": "Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you do not want to enable logging when you create a distribution or if you want to disable logging for an existing distribution, specify false for Enabled, and specify empty Bucket and Prefix elements. If you specify false for Enabled but you specify values for Bucket, prefix and IncludeCookies, the values are automatically deleted.", "LoggingConfig$IncludeCookies": "Specifies whether you want CloudFront to include cookies in access logs, specify true for IncludeCookies. If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you do not want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify false for IncludeCookies.", "StreamingDistributionConfig$Enabled": "Whether the streaming distribution is enabled to accept end user requests for content.", "StreamingDistributionList$IsTruncated": "A flag that indicates whether more streaming distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.", "StreamingDistributionSummary$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "StreamingLoggingConfig$Enabled": "Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you do not want to enable logging when you create a streaming distribution or if you want to disable logging for an existing streaming distribution, specify false for Enabled, and specify empty Bucket and Prefix elements. If you specify false for Enabled but you specify values for Bucket and Prefix, the values are automatically deleted.", "TrustedSigners$Enabled": "Specifies whether you want to require end users to use signed URLs to access the files specified by PathPattern and TargetOriginId.", "ViewerCertificate$CloudFrontDefaultCertificate": "If you want viewers to use HTTPS to request your objects and you're using the CloudFront domain name of your distribution in your object URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), set to true. Omit this value if you are setting an ACMCertificateArn or IAMCertificateId." } }, "integer": { "base": null, "refs": { "ActiveTrustedSigners$Quantity": "The number of unique trusted signers included in all cache behaviors. For example, if three cache behaviors all list the same three AWS accounts, the value of Quantity for ActiveTrustedSigners will be 3.", "Aliases$Quantity": "The number of CNAMEs, if any, for this distribution.", "AllowedMethods$Quantity": "The number of HTTP methods that you want CloudFront to forward to your origin. Valid values are 2 (for GET and HEAD requests), 3 (for GET, HEAD and OPTIONS requests) and 7 (for GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests).", "CacheBehaviors$Quantity": "The number of cache behaviors for this distribution.", "CachedMethods$Quantity": "The number of HTTP methods for which you want CloudFront to cache responses. Valid values are 2 (for caching responses to GET and HEAD requests) and 3 (for caching responses to GET, HEAD, and OPTIONS requests).", "CloudFrontOriginAccessIdentityList$MaxItems": "The value you provided for the MaxItems request parameter.", "CloudFrontOriginAccessIdentityList$Quantity": "The number of CloudFront origin access identities that were created by the current AWS account.", "CookieNames$Quantity": "The number of whitelisted cookies for this cache behavior.", "CustomErrorResponse$ErrorCode": "The 4xx or 5xx HTTP status code that you want to customize. For a list of HTTP status codes that you can customize, see CloudFront documentation.", "CustomErrorResponses$Quantity": "The number of custom error responses for this distribution.", "CustomHeaders$Quantity": "The number of custom headers for this origin.", "CustomOriginConfig$HTTPPort": "The HTTP port the custom origin listens on.", "CustomOriginConfig$HTTPSPort": "The HTTPS port the custom origin listens on.", "Distribution$InProgressInvalidationBatches": "The number of invalidation batches currently in progress.", "DistributionList$MaxItems": "The value you provided for the MaxItems request parameter.", "DistributionList$Quantity": "The number of distributions that were created by the current AWS account.", "GeoRestriction$Quantity": "When geo restriction is enabled, this is the number of countries in your whitelist or blacklist. Otherwise, when it is not enabled, Quantity is 0, and you can omit Items.", "Headers$Quantity": "The number of different headers that you want CloudFront to forward to the origin and to vary on for this cache behavior. The maximum number of headers that you can specify by name is 10. If you want CloudFront to forward all headers to the origin and vary on all of them, specify 1 for Quantity and * for Name. If you don't want CloudFront to forward any additional headers to the origin or to vary on any headers, specify 0 for Quantity and omit Items.", "InvalidationList$MaxItems": "The value you provided for the MaxItems request parameter.", "InvalidationList$Quantity": "The number of invalidation batches that were created by the current AWS account.", "KeyPairIds$Quantity": "The number of active CloudFront key pairs for AwsAccountNumber.", "OriginSslProtocols$Quantity": "The number of SSL/TLS protocols that you want to allow CloudFront to use when establishing an HTTPS connection with this origin.", "Origins$Quantity": "The number of origins for this distribution.", "Paths$Quantity": "The number of objects that you want to invalidate.", "QueryStringCacheKeys$Quantity": "The number of whitelisted query string parameters for this cache behavior.", "StreamingDistributionList$MaxItems": "The value you provided for the MaxItems request parameter.", "StreamingDistributionList$Quantity": "The number of streaming distributions that were created by the current AWS account.", "TrustedSigners$Quantity": "The number of trusted signers for this cache behavior." } }, "long": { "base": null, "refs": { "CacheBehavior$MinTTL": "The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CacheBehavior$DefaultTTL": "If you don't configure your origin to add a Cache-Control max-age directive or an Expires header, DefaultTTL is the default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CacheBehavior$MaxTTL": "The maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CustomErrorResponse$ErrorCachingMinTTL": "The minimum amount of time you want HTTP error codes to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. You can specify a value from 0 to 31,536,000.", "DefaultCacheBehavior$MinTTL": "The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "DefaultCacheBehavior$DefaultTTL": "If you don't configure your origin to add a Cache-Control max-age directive or an Expires header, DefaultTTL is the default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "DefaultCacheBehavior$MaxTTL": "The maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years)." } }, "string": { "base": null, "refs": { "AccessDenied$Message": null, "AliasList$member": null, "AwsAccountNumberList$member": null, "BatchTooLarge$Message": null, "CNAMEAlreadyExists$Message": null, "CacheBehavior$PathPattern": "The pattern (for example, images/*.jpg) that specifies which requests you want this cache behavior to apply to. When CloudFront receives an end-user request, the requested path is compared with path patterns in the order in which cache behaviors are listed in the distribution. The path pattern for the default cache behavior is * and cannot be changed. If the request for an object does not match the path pattern for any cache behaviors, CloudFront applies the behavior in the default cache behavior.", "CacheBehavior$TargetOriginId": "The value of ID for the origin that you want CloudFront to route requests to when a request matches the path pattern either for a cache behavior or for the default cache behavior.", "CloudFrontOriginAccessIdentity$Id": "The ID for the origin access identity. For example: E74FTE3AJFJ256A.", "CloudFrontOriginAccessIdentity$S3CanonicalUserId": "The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin access identity read permission to an object in Amazon S3.", "CloudFrontOriginAccessIdentityAlreadyExists$Message": null, "CloudFrontOriginAccessIdentityConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the CloudFrontOriginAccessIdentityConfig object), a new origin access identity is created. If the CallerReference is a value you already sent in a previous request to create an identity, and the content of the CloudFrontOriginAccessIdentityConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create an identity but the content of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists error.", "CloudFrontOriginAccessIdentityConfig$Comment": "Any comments you want to include about the origin access identity.", "CloudFrontOriginAccessIdentityInUse$Message": null, "CloudFrontOriginAccessIdentityList$Marker": "The value you provided for the Marker request parameter.", "CloudFrontOriginAccessIdentityList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your origin access identities where they left off.", "CloudFrontOriginAccessIdentitySummary$Id": "The ID for the origin access identity. For example: E74FTE3AJFJ256A.", "CloudFrontOriginAccessIdentitySummary$S3CanonicalUserId": "The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin access identity read permission to an object in Amazon S3.", "CloudFrontOriginAccessIdentitySummary$Comment": "The comment for this origin access identity, as originally specified when created.", "CookieNameList$member": null, "CreateCloudFrontOriginAccessIdentityResult$Location": "The fully qualified URI of the new origin access identity just created. For example: https://cloudfront.amazonaws.com/2010-11-01/origin-access-identity/cloudfront/E74FTE3AJFJ256A.", "CreateCloudFrontOriginAccessIdentityResult$ETag": "The current version of the origin access identity created.", "CreateDistributionResult$Location": "The fully qualified URI of the new distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5.", "CreateDistributionResult$ETag": "The current version of the distribution created.", "CreateDistributionWithTagsResult$Location": "The fully qualified URI of the new distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5.", "CreateDistributionWithTagsResult$ETag": "The current version of the distribution created.", "CreateInvalidationRequest$DistributionId": "The distribution's id.", "CreateInvalidationResult$Location": "The fully qualified URI of the distribution and invalidation batch request, including the Invalidation ID.", "CreateStreamingDistributionResult$Location": "The fully qualified URI of the new streaming distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8.", "CreateStreamingDistributionResult$ETag": "The current version of the streaming distribution created.", "CreateStreamingDistributionWithTagsResult$Location": "The fully qualified URI of the new streaming distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8.", "CreateStreamingDistributionWithTagsResult$ETag": "The current version of the streaming distribution created.", "CustomErrorResponse$ResponsePagePath": "The path of the custom error page (for example, /custom_404.html). The path is relative to the distribution and must begin with a slash (/). If the path includes any non-ASCII characters or unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters. Do not URL encode any other characters in the path, or CloudFront will not return the custom error page to the viewer.", "CustomErrorResponse$ResponseCode": "The HTTP status code that you want CloudFront to return with the custom error page to the viewer. For a list of HTTP status codes that you can replace, see CloudFront Documentation.", "DefaultCacheBehavior$TargetOriginId": "The value of ID for the origin that you want CloudFront to route requests to when a request matches the path pattern either for a cache behavior or for the default cache behavior.", "DeleteCloudFrontOriginAccessIdentityRequest$Id": "The origin access identity's id.", "DeleteCloudFrontOriginAccessIdentityRequest$IfMatch": "The value of the ETag header you received from a previous GET or PUT request. For example: E2QWRUHAPOMQZL.", "DeleteDistributionRequest$Id": "The distribution id.", "DeleteDistributionRequest$IfMatch": "The value of the ETag header you received when you disabled the distribution. For example: E2QWRUHAPOMQZL.", "DeleteStreamingDistributionRequest$Id": "The distribution id.", "DeleteStreamingDistributionRequest$IfMatch": "The value of the ETag header you received when you disabled the streaming distribution. For example: E2QWRUHAPOMQZL.", "Distribution$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "Distribution$ARN": "The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5, where 123456789012 is your AWS account Id.", "Distribution$Status": "This response element indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "Distribution$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "DistributionAlreadyExists$Message": null, "DistributionConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the DistributionConfig object), a new distribution is created. If the CallerReference is a value you already sent in a previous request to create a distribution, and the content of the DistributionConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a distribution but the content of the DistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.", "DistributionConfig$DefaultRootObject": "The object that you want CloudFront to return (for example, index.html) when an end user requests the root URL for your distribution (http://www.example.com) instead of an object in your distribution (http://www.example.com/index.html). Specifying a default root object avoids exposing the contents of your distribution. If you don't want to specify a default root object when you create a distribution, include an empty DefaultRootObject element. To delete the default root object from an existing distribution, update the distribution configuration and include an empty DefaultRootObject element. To replace the default root object, update the distribution configuration and specify the new object.", "DistributionConfig$Comment": "Any comments you want to include about the distribution.", "DistributionConfig$WebACLId": "(Optional) If you're using AWS WAF to filter CloudFront requests, the Id of the AWS WAF web ACL that is associated with the distribution.", "DistributionList$Marker": "The value you provided for the Marker request parameter.", "DistributionList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your distributions where they left off.", "DistributionNotDisabled$Message": null, "DistributionSummary$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "DistributionSummary$ARN": "The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5, where 123456789012 is your AWS account Id.", "DistributionSummary$Status": "This response element indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "DistributionSummary$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "DistributionSummary$Comment": "The comment originally specified when this distribution was created.", "DistributionSummary$WebACLId": "The Web ACL Id (if any) associated with the distribution.", "GetCloudFrontOriginAccessIdentityConfigRequest$Id": "The identity's id.", "GetCloudFrontOriginAccessIdentityConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetCloudFrontOriginAccessIdentityRequest$Id": "The identity's id.", "GetCloudFrontOriginAccessIdentityResult$ETag": "The current version of the origin access identity's information. For example: E2QWRUHAPOMQZL.", "GetDistributionConfigRequest$Id": "The distribution's id.", "GetDistributionConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetDistributionRequest$Id": "The distribution's id.", "GetDistributionResult$ETag": "The current version of the distribution's information. For example: E2QWRUHAPOMQZL.", "GetInvalidationRequest$DistributionId": "The distribution's id.", "GetInvalidationRequest$Id": "The invalidation's id.", "GetStreamingDistributionConfigRequest$Id": "The streaming distribution's id.", "GetStreamingDistributionConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetStreamingDistributionRequest$Id": "The streaming distribution's id.", "GetStreamingDistributionResult$ETag": "The current version of the streaming distribution's information. For example: E2QWRUHAPOMQZL.", "HeaderList$member": null, "IllegalUpdate$Message": null, "InconsistentQuantities$Message": null, "InvalidArgument$Message": null, "InvalidDefaultRootObject$Message": null, "InvalidErrorCode$Message": null, "InvalidForwardCookies$Message": null, "InvalidGeoRestrictionParameter$Message": null, "InvalidHeadersForS3Origin$Message": null, "InvalidIfMatchVersion$Message": null, "InvalidLocationCode$Message": null, "InvalidMinimumProtocolVersion$Message": null, "InvalidOrigin$Message": null, "InvalidOriginAccessIdentity$Message": null, "InvalidProtocolSettings$Message": null, "InvalidQueryStringParameters$Message": null, "InvalidRelativePath$Message": null, "InvalidRequiredProtocol$Message": null, "InvalidResponseCode$Message": null, "InvalidTTLOrder$Message": null, "InvalidTagging$Message": null, "InvalidViewerCertificate$Message": null, "InvalidWebACLId$Message": null, "Invalidation$Id": "The identifier for the invalidation request. For example: IDFDVBD632BHDS5.", "Invalidation$Status": "The status of the invalidation request. When the invalidation batch is finished, the status is Completed.", "InvalidationBatch$CallerReference": "A unique name that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the Path object), a new distribution is created. If the CallerReference is a value you already sent in a previous request to create an invalidation batch, and the content of each Path element is identical to the original request, the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a distribution but the content of any Path is different from the original request, CloudFront returns an InvalidationBatchAlreadyExists error.", "InvalidationList$Marker": "The value you provided for the Marker request parameter.", "InvalidationList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your invalidation batches where they left off.", "InvalidationSummary$Id": "The unique ID for an invalidation request.", "InvalidationSummary$Status": "The status of an invalidation request.", "KeyPairIdList$member": null, "ListCloudFrontOriginAccessIdentitiesRequest$Marker": "Use this when paginating results to indicate where to begin in your list of origin access identities. The results include identities in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last identity on that page).", "ListCloudFrontOriginAccessIdentitiesRequest$MaxItems": "The maximum number of origin access identities you want in the response body.", "ListDistributionsByWebACLIdRequest$Marker": "Use Marker and MaxItems to control pagination of results. If you have more than MaxItems distributions that satisfy the request, the response includes a NextMarker element. To get the next page of results, submit another request. For the value of Marker, specify the value of NextMarker from the last response. (For the first request, omit Marker.)", "ListDistributionsByWebACLIdRequest$MaxItems": "The maximum number of distributions that you want CloudFront to return in the response body. The maximum and default values are both 100.", "ListDistributionsByWebACLIdRequest$WebACLId": "The Id of the AWS WAF web ACL for which you want to list the associated distributions. If you specify \"null\" for the Id, the request returns a list of the distributions that aren't associated with a web ACL.", "ListDistributionsRequest$Marker": "Use Marker and MaxItems to control pagination of results. If you have more than MaxItems distributions that satisfy the request, the response includes a NextMarker element. To get the next page of results, submit another request. For the value of Marker, specify the value of NextMarker from the last response. (For the first request, omit Marker.)", "ListDistributionsRequest$MaxItems": "The maximum number of distributions that you want CloudFront to return in the response body. The maximum and default values are both 100.", "ListInvalidationsRequest$DistributionId": "The distribution's id.", "ListInvalidationsRequest$Marker": "Use this parameter when paginating results to indicate where to begin in your list of invalidation batches. Because the results are returned in decreasing order from most recent to oldest, the most recent results are on the first page, the second page will contain earlier results, and so on. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response. This value is the same as the ID of the last invalidation batch on that page.", "ListInvalidationsRequest$MaxItems": "The maximum number of invalidation batches you want in the response body.", "ListStreamingDistributionsRequest$Marker": "Use this when paginating results to indicate where to begin in your list of streaming distributions. The results include distributions in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last distribution on that page).", "ListStreamingDistributionsRequest$MaxItems": "The maximum number of streaming distributions you want in the response body.", "LocationList$member": null, "LoggingConfig$Bucket": "The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.", "LoggingConfig$Prefix": "An optional string that you want CloudFront to prefix to the access log filenames for this distribution, for example, myprefix/. If you want to enable logging, but you do not want to specify a prefix, you still must include an empty Prefix element in the Logging element.", "MissingBody$Message": null, "NoSuchCloudFrontOriginAccessIdentity$Message": null, "NoSuchDistribution$Message": null, "NoSuchInvalidation$Message": null, "NoSuchOrigin$Message": null, "NoSuchResource$Message": null, "NoSuchStreamingDistribution$Message": null, "Origin$Id": "A unique identifier for the origin. The value of Id must be unique within the distribution. You use the value of Id when you create a cache behavior. The Id identifies the origin that CloudFront routes a request to when the request matches the path pattern for that cache behavior.", "Origin$DomainName": "Amazon S3 origins: The DNS name of the Amazon S3 bucket from which you want CloudFront to get objects for this origin, for example, myawsbucket.s3.amazonaws.com. Custom origins: The DNS domain name for the HTTP server from which you want CloudFront to get objects for this origin, for example, www.example.com.", "Origin$OriginPath": "An optional element that causes CloudFront to request your content from a directory in your Amazon S3 bucket or your custom origin. When you include the OriginPath element, specify the directory name, beginning with a /. CloudFront appends the directory name to the value of DomainName.", "OriginCustomHeader$HeaderName": "The header's name.", "OriginCustomHeader$HeaderValue": "The header's value.", "PathList$member": null, "PreconditionFailed$Message": null, "QueryStringCacheKeysList$member": null, "S3Origin$DomainName": "The DNS name of the S3 origin.", "S3Origin$OriginAccessIdentity": "Your S3 origin's origin access identity.", "S3OriginConfig$OriginAccessIdentity": "The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that end users can only access objects in an Amazon S3 bucket through CloudFront. If you want end users to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty OriginAccessIdentity element. To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty OriginAccessIdentity element. To replace the origin access identity, update the distribution configuration and specify the new origin access identity. Use the format origin-access-identity/cloudfront/Id where Id is the value that CloudFront returned in the Id element when you created the origin access identity.", "Signer$AwsAccountNumber": "Specifies an AWS account that can create signed URLs. Values: self, which indicates that the AWS account that was used to create the distribution can created signed URLs, or an AWS account number. Omit the dashes in the account number.", "StreamingDistribution$Id": "The identifier for the streaming distribution. For example: EGTXBD79H29TRA8.", "StreamingDistribution$ARN": "The ARN (Amazon Resource Name) for the streaming distribution. For example: arn:aws:cloudfront::123456789012:streaming-distribution/EDFDVBD632BHDS5, where 123456789012 is your AWS account Id.", "StreamingDistribution$Status": "The current status of the streaming distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "StreamingDistribution$DomainName": "The domain name corresponding to the streaming distribution. For example: s5c39gqb8ow64r.cloudfront.net.", "StreamingDistributionAlreadyExists$Message": null, "StreamingDistributionConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the StreamingDistributionConfig object), a new streaming distribution is created. If the CallerReference is a value you already sent in a previous request to create a streaming distribution, and the content of the StreamingDistributionConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a streaming distribution but the content of the StreamingDistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.", "StreamingDistributionConfig$Comment": "Any comments you want to include about the streaming distribution.", "StreamingDistributionList$Marker": "The value you provided for the Marker request parameter.", "StreamingDistributionList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your streaming distributions where they left off.", "StreamingDistributionNotDisabled$Message": null, "StreamingDistributionSummary$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "StreamingDistributionSummary$ARN": "The ARN (Amazon Resource Name) for the streaming distribution. For example: arn:aws:cloudfront::123456789012:streaming-distribution/EDFDVBD632BHDS5, where 123456789012 is your AWS account Id.", "StreamingDistributionSummary$Status": "Indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "StreamingDistributionSummary$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "StreamingDistributionSummary$Comment": "The comment originally specified when this distribution was created.", "StreamingLoggingConfig$Bucket": "The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.", "StreamingLoggingConfig$Prefix": "An optional string that you want CloudFront to prefix to the access log filenames for this streaming distribution, for example, myprefix/. If you want to enable logging, but you do not want to specify a prefix, you still must include an empty Prefix element in the Logging element.", "TooManyCacheBehaviors$Message": null, "TooManyCertificates$Message": null, "TooManyCloudFrontOriginAccessIdentities$Message": null, "TooManyCookieNamesInWhiteList$Message": null, "TooManyDistributionCNAMEs$Message": null, "TooManyDistributions$Message": null, "TooManyHeadersInForwardedValues$Message": null, "TooManyInvalidationsInProgress$Message": null, "TooManyOriginCustomHeaders$Message": null, "TooManyOrigins$Message": null, "TooManyQueryStringParameters$Message": null, "TooManyStreamingDistributionCNAMEs$Message": null, "TooManyStreamingDistributions$Message": null, "TooManyTrustedSigners$Message": null, "TrustedSignerDoesNotExist$Message": null, "UpdateCloudFrontOriginAccessIdentityRequest$Id": "The identity's id.", "UpdateCloudFrontOriginAccessIdentityRequest$IfMatch": "The value of the ETag header you received when retrieving the identity's configuration. For example: E2QWRUHAPOMQZL.", "UpdateCloudFrontOriginAccessIdentityResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "UpdateDistributionRequest$Id": "The distribution's id.", "UpdateDistributionRequest$IfMatch": "The value of the ETag header you received when retrieving the distribution's configuration. For example: E2QWRUHAPOMQZL.", "UpdateDistributionResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "UpdateStreamingDistributionRequest$Id": "The streaming distribution's id.", "UpdateStreamingDistributionRequest$IfMatch": "The value of the ETag header you received when retrieving the streaming distribution's configuration. For example: E2QWRUHAPOMQZL.", "UpdateStreamingDistributionResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "ViewerCertificate$IAMCertificateId": "If you want viewers to use HTTPS to request your objects and you're using an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), specify the IAM certificate identifier of the custom viewer certificate for this distribution. Specify either this value, ACMCertificateArn, or CloudFrontDefaultCertificate.", "ViewerCertificate$ACMCertificateArn": "If you want viewers to use HTTPS to request your objects and you're using an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), specify the ACM certificate ARN of the custom viewer certificate for this distribution. Specify either this value, IAMCertificateId, or CloudFrontDefaultCertificate.", "ViewerCertificate$Certificate": "Note: this field is deprecated. Please use one of [ACMCertificateArn, IAMCertificateId, CloudFrontDefaultCertificate]." } }, "timestamp": { "base": null, "refs": { "Distribution$LastModifiedTime": "The date and time the distribution was last modified.", "DistributionSummary$LastModifiedTime": "The date and time the distribution was last modified.", "Invalidation$CreateTime": "The date and time the invalidation request was first made.", "InvalidationSummary$CreateTime": null, "StreamingDistribution$LastModifiedTime": "The date and time the distribution was last modified.", "StreamingDistributionSummary$LastModifiedTime": "The date and time the distribution was last modified." } } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-08-20/paginators-1.json000077500000000000000000000021461300374646400244230ustar00rootroot00000000000000{ "pagination": { "ListCloudFrontOriginAccessIdentities": { "input_token": "Marker", "output_token": "CloudFrontOriginAccessIdentityList.NextMarker", "limit_key": "MaxItems", "more_results": "CloudFrontOriginAccessIdentityList.IsTruncated", "result_key": "CloudFrontOriginAccessIdentityList.Items" }, "ListDistributions": { "input_token": "Marker", "output_token": "DistributionList.NextMarker", "limit_key": "MaxItems", "more_results": "DistributionList.IsTruncated", "result_key": "DistributionList.Items" }, "ListInvalidations": { "input_token": "Marker", "output_token": "InvalidationList.NextMarker", "limit_key": "MaxItems", "more_results": "InvalidationList.IsTruncated", "result_key": "InvalidationList.Items" }, "ListStreamingDistributions": { "input_token": "Marker", "output_token": "StreamingDistributionList.NextMarker", "limit_key": "MaxItems", "more_results": "StreamingDistributionList.IsTruncated", "result_key": "StreamingDistributionList.Items" } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-08-20/waiters-2.json000077500000000000000000000022401300374646400237260ustar00rootroot00000000000000{ "version": 2, "waiters": { "DistributionDeployed": { "delay": 60, "operation": "GetDistribution", "maxAttempts": 25, "description": "Wait until a distribution is deployed.", "acceptors": [ { "expected": "Deployed", "matcher": "path", "state": "success", "argument": "Distribution.Status" } ] }, "InvalidationCompleted": { "delay": 20, "operation": "GetInvalidation", "maxAttempts": 30, "description": "Wait until an invalidation has completed.", "acceptors": [ { "expected": "Completed", "matcher": "path", "state": "success", "argument": "Invalidation.Status" } ] }, "StreamingDistributionDeployed": { "delay": 60, "operation": "GetStreamingDistribution", "maxAttempts": 25, "description": "Wait until a streaming distribution is deployed.", "acceptors": [ { "expected": "Deployed", "matcher": "path", "state": "success", "argument": "StreamingDistribution.Status" } ] } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-09-07/000077500000000000000000000000001300374646400212235ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudfront/2016-09-07/api-2.json000077500000000000000000002117421300374646400230400ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2016-09-07", "endpointPrefix":"cloudfront", "globalEndpoint":"cloudfront.amazonaws.com", "protocol":"rest-xml", "serviceAbbreviation":"CloudFront", "serviceFullName":"Amazon CloudFront", "signatureVersion":"v4" }, "operations":{ "CreateCloudFrontOriginAccessIdentity":{ "name":"CreateCloudFrontOriginAccessIdentity2016_09_07", "http":{ "method":"POST", "requestUri":"/2016-09-07/origin-access-identity/cloudfront", "responseCode":201 }, "input":{"shape":"CreateCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"CreateCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"CloudFrontOriginAccessIdentityAlreadyExists"}, {"shape":"MissingBody"}, {"shape":"TooManyCloudFrontOriginAccessIdentities"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "CreateDistribution":{ "name":"CreateDistribution2016_09_07", "http":{ "method":"POST", "requestUri":"/2016-09-07/distribution", "responseCode":201 }, "input":{"shape":"CreateDistributionRequest"}, "output":{"shape":"CreateDistributionResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"DistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InvalidViewerCertificate"}, {"shape":"InvalidMinimumProtocolVersion"}, {"shape":"MissingBody"}, {"shape":"TooManyDistributionCNAMEs"}, {"shape":"TooManyDistributions"}, {"shape":"InvalidDefaultRootObject"}, {"shape":"InvalidRelativePath"}, {"shape":"InvalidErrorCode"}, {"shape":"InvalidResponseCode"}, {"shape":"InvalidArgument"}, {"shape":"InvalidRequiredProtocol"}, {"shape":"NoSuchOrigin"}, {"shape":"TooManyOrigins"}, {"shape":"TooManyCacheBehaviors"}, {"shape":"TooManyCookieNamesInWhiteList"}, {"shape":"InvalidForwardCookies"}, {"shape":"TooManyHeadersInForwardedValues"}, {"shape":"InvalidHeadersForS3Origin"}, {"shape":"InconsistentQuantities"}, {"shape":"TooManyCertificates"}, {"shape":"InvalidLocationCode"}, {"shape":"InvalidGeoRestrictionParameter"}, {"shape":"InvalidProtocolSettings"}, {"shape":"InvalidTTLOrder"}, {"shape":"InvalidWebACLId"}, {"shape":"TooManyOriginCustomHeaders"}, {"shape":"TooManyQueryStringParameters"}, {"shape":"InvalidQueryStringParameters"} ] }, "CreateDistributionWithTags":{ "name":"CreateDistributionWithTags2016_09_07", "http":{ "method":"POST", "requestUri":"/2016-09-07/distribution?WithTags", "responseCode":201 }, "input":{"shape":"CreateDistributionWithTagsRequest"}, "output":{"shape":"CreateDistributionWithTagsResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"DistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InvalidViewerCertificate"}, {"shape":"InvalidMinimumProtocolVersion"}, {"shape":"MissingBody"}, {"shape":"TooManyDistributionCNAMEs"}, {"shape":"TooManyDistributions"}, {"shape":"InvalidDefaultRootObject"}, {"shape":"InvalidRelativePath"}, {"shape":"InvalidErrorCode"}, {"shape":"InvalidResponseCode"}, {"shape":"InvalidArgument"}, {"shape":"InvalidRequiredProtocol"}, {"shape":"NoSuchOrigin"}, {"shape":"TooManyOrigins"}, {"shape":"TooManyCacheBehaviors"}, {"shape":"TooManyCookieNamesInWhiteList"}, {"shape":"InvalidForwardCookies"}, {"shape":"TooManyHeadersInForwardedValues"}, {"shape":"InvalidHeadersForS3Origin"}, {"shape":"InconsistentQuantities"}, {"shape":"TooManyCertificates"}, {"shape":"InvalidLocationCode"}, {"shape":"InvalidGeoRestrictionParameter"}, {"shape":"InvalidProtocolSettings"}, {"shape":"InvalidTTLOrder"}, {"shape":"InvalidWebACLId"}, {"shape":"TooManyOriginCustomHeaders"}, {"shape":"InvalidTagging"}, {"shape":"TooManyQueryStringParameters"}, {"shape":"InvalidQueryStringParameters"} ] }, "CreateInvalidation":{ "name":"CreateInvalidation2016_09_07", "http":{ "method":"POST", "requestUri":"/2016-09-07/distribution/{DistributionId}/invalidation", "responseCode":201 }, "input":{"shape":"CreateInvalidationRequest"}, "output":{"shape":"CreateInvalidationResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"MissingBody"}, {"shape":"InvalidArgument"}, {"shape":"NoSuchDistribution"}, {"shape":"BatchTooLarge"}, {"shape":"TooManyInvalidationsInProgress"}, {"shape":"InconsistentQuantities"} ] }, "CreateStreamingDistribution":{ "name":"CreateStreamingDistribution2016_09_07", "http":{ "method":"POST", "requestUri":"/2016-09-07/streaming-distribution", "responseCode":201 }, "input":{"shape":"CreateStreamingDistributionRequest"}, "output":{"shape":"CreateStreamingDistributionResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"StreamingDistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"MissingBody"}, {"shape":"TooManyStreamingDistributionCNAMEs"}, {"shape":"TooManyStreamingDistributions"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "CreateStreamingDistributionWithTags":{ "name":"CreateStreamingDistributionWithTags2016_09_07", "http":{ "method":"POST", "requestUri":"/2016-09-07/streaming-distribution?WithTags", "responseCode":201 }, "input":{"shape":"CreateStreamingDistributionWithTagsRequest"}, "output":{"shape":"CreateStreamingDistributionWithTagsResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"StreamingDistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"MissingBody"}, {"shape":"TooManyStreamingDistributionCNAMEs"}, {"shape":"TooManyStreamingDistributions"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"}, {"shape":"InvalidTagging"} ] }, "DeleteCloudFrontOriginAccessIdentity":{ "name":"DeleteCloudFrontOriginAccessIdentity2016_09_07", "http":{ "method":"DELETE", "requestUri":"/2016-09-07/origin-access-identity/cloudfront/{Id}", "responseCode":204 }, "input":{"shape":"DeleteCloudFrontOriginAccessIdentityRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"PreconditionFailed"}, {"shape":"CloudFrontOriginAccessIdentityInUse"} ] }, "DeleteDistribution":{ "name":"DeleteDistribution2016_09_07", "http":{ "method":"DELETE", "requestUri":"/2016-09-07/distribution/{Id}", "responseCode":204 }, "input":{"shape":"DeleteDistributionRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"DistributionNotDisabled"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchDistribution"}, {"shape":"PreconditionFailed"} ] }, "DeleteStreamingDistribution":{ "name":"DeleteStreamingDistribution2016_09_07", "http":{ "method":"DELETE", "requestUri":"/2016-09-07/streaming-distribution/{Id}", "responseCode":204 }, "input":{"shape":"DeleteStreamingDistributionRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"StreamingDistributionNotDisabled"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchStreamingDistribution"}, {"shape":"PreconditionFailed"} ] }, "GetCloudFrontOriginAccessIdentity":{ "name":"GetCloudFrontOriginAccessIdentity2016_09_07", "http":{ "method":"GET", "requestUri":"/2016-09-07/origin-access-identity/cloudfront/{Id}" }, "input":{"shape":"GetCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"GetCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"AccessDenied"} ] }, "GetCloudFrontOriginAccessIdentityConfig":{ "name":"GetCloudFrontOriginAccessIdentityConfig2016_09_07", "http":{ "method":"GET", "requestUri":"/2016-09-07/origin-access-identity/cloudfront/{Id}/config" }, "input":{"shape":"GetCloudFrontOriginAccessIdentityConfigRequest"}, "output":{"shape":"GetCloudFrontOriginAccessIdentityConfigResult"}, "errors":[ {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"AccessDenied"} ] }, "GetDistribution":{ "name":"GetDistribution2016_09_07", "http":{ "method":"GET", "requestUri":"/2016-09-07/distribution/{Id}" }, "input":{"shape":"GetDistributionRequest"}, "output":{"shape":"GetDistributionResult"}, "errors":[ {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetDistributionConfig":{ "name":"GetDistributionConfig2016_09_07", "http":{ "method":"GET", "requestUri":"/2016-09-07/distribution/{Id}/config" }, "input":{"shape":"GetDistributionConfigRequest"}, "output":{"shape":"GetDistributionConfigResult"}, "errors":[ {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetInvalidation":{ "name":"GetInvalidation2016_09_07", "http":{ "method":"GET", "requestUri":"/2016-09-07/distribution/{DistributionId}/invalidation/{Id}" }, "input":{"shape":"GetInvalidationRequest"}, "output":{"shape":"GetInvalidationResult"}, "errors":[ {"shape":"NoSuchInvalidation"}, {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetStreamingDistribution":{ "name":"GetStreamingDistribution2016_09_07", "http":{ "method":"GET", "requestUri":"/2016-09-07/streaming-distribution/{Id}" }, "input":{"shape":"GetStreamingDistributionRequest"}, "output":{"shape":"GetStreamingDistributionResult"}, "errors":[ {"shape":"NoSuchStreamingDistribution"}, {"shape":"AccessDenied"} ] }, "GetStreamingDistributionConfig":{ "name":"GetStreamingDistributionConfig2016_09_07", "http":{ "method":"GET", "requestUri":"/2016-09-07/streaming-distribution/{Id}/config" }, "input":{"shape":"GetStreamingDistributionConfigRequest"}, "output":{"shape":"GetStreamingDistributionConfigResult"}, "errors":[ {"shape":"NoSuchStreamingDistribution"}, {"shape":"AccessDenied"} ] }, "ListCloudFrontOriginAccessIdentities":{ "name":"ListCloudFrontOriginAccessIdentities2016_09_07", "http":{ "method":"GET", "requestUri":"/2016-09-07/origin-access-identity/cloudfront" }, "input":{"shape":"ListCloudFrontOriginAccessIdentitiesRequest"}, "output":{"shape":"ListCloudFrontOriginAccessIdentitiesResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "ListDistributions":{ "name":"ListDistributions2016_09_07", "http":{ "method":"GET", "requestUri":"/2016-09-07/distribution" }, "input":{"shape":"ListDistributionsRequest"}, "output":{"shape":"ListDistributionsResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "ListDistributionsByWebACLId":{ "name":"ListDistributionsByWebACLId2016_09_07", "http":{ "method":"GET", "requestUri":"/2016-09-07/distributionsByWebACLId/{WebACLId}" }, "input":{"shape":"ListDistributionsByWebACLIdRequest"}, "output":{"shape":"ListDistributionsByWebACLIdResult"}, "errors":[ {"shape":"InvalidArgument"}, {"shape":"InvalidWebACLId"} ] }, "ListInvalidations":{ "name":"ListInvalidations2016_09_07", "http":{ "method":"GET", "requestUri":"/2016-09-07/distribution/{DistributionId}/invalidation" }, "input":{"shape":"ListInvalidationsRequest"}, "output":{"shape":"ListInvalidationsResult"}, "errors":[ {"shape":"InvalidArgument"}, {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "ListStreamingDistributions":{ "name":"ListStreamingDistributions2016_09_07", "http":{ "method":"GET", "requestUri":"/2016-09-07/streaming-distribution" }, "input":{"shape":"ListStreamingDistributionsRequest"}, "output":{"shape":"ListStreamingDistributionsResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "ListTagsForResource":{ "name":"ListTagsForResource2016_09_07", "http":{ "method":"GET", "requestUri":"/2016-09-07/tagging" }, "input":{"shape":"ListTagsForResourceRequest"}, "output":{"shape":"ListTagsForResourceResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidArgument"}, {"shape":"InvalidTagging"}, {"shape":"NoSuchResource"} ] }, "TagResource":{ "name":"TagResource2016_09_07", "http":{ "method":"POST", "requestUri":"/2016-09-07/tagging?Operation=Tag", "responseCode":204 }, "input":{"shape":"TagResourceRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidArgument"}, {"shape":"InvalidTagging"}, {"shape":"NoSuchResource"} ] }, "UntagResource":{ "name":"UntagResource2016_09_07", "http":{ "method":"POST", "requestUri":"/2016-09-07/tagging?Operation=Untag", "responseCode":204 }, "input":{"shape":"UntagResourceRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidArgument"}, {"shape":"InvalidTagging"}, {"shape":"NoSuchResource"} ] }, "UpdateCloudFrontOriginAccessIdentity":{ "name":"UpdateCloudFrontOriginAccessIdentity2016_09_07", "http":{ "method":"PUT", "requestUri":"/2016-09-07/origin-access-identity/cloudfront/{Id}/config" }, "input":{"shape":"UpdateCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"UpdateCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"PreconditionFailed"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "UpdateDistribution":{ "name":"UpdateDistribution2016_09_07", "http":{ "method":"PUT", "requestUri":"/2016-09-07/distribution/{Id}/config" }, "input":{"shape":"UpdateDistributionRequest"}, "output":{"shape":"UpdateDistributionResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"CNAMEAlreadyExists"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchDistribution"}, {"shape":"PreconditionFailed"}, {"shape":"TooManyDistributionCNAMEs"}, {"shape":"InvalidDefaultRootObject"}, {"shape":"InvalidRelativePath"}, {"shape":"InvalidErrorCode"}, {"shape":"InvalidResponseCode"}, {"shape":"InvalidArgument"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InvalidViewerCertificate"}, {"shape":"InvalidMinimumProtocolVersion"}, {"shape":"InvalidRequiredProtocol"}, {"shape":"NoSuchOrigin"}, {"shape":"TooManyOrigins"}, {"shape":"TooManyCacheBehaviors"}, {"shape":"TooManyCookieNamesInWhiteList"}, {"shape":"InvalidForwardCookies"}, {"shape":"TooManyHeadersInForwardedValues"}, {"shape":"InvalidHeadersForS3Origin"}, {"shape":"InconsistentQuantities"}, {"shape":"TooManyCertificates"}, {"shape":"InvalidLocationCode"}, {"shape":"InvalidGeoRestrictionParameter"}, {"shape":"InvalidTTLOrder"}, {"shape":"InvalidWebACLId"}, {"shape":"TooManyOriginCustomHeaders"}, {"shape":"TooManyQueryStringParameters"}, {"shape":"InvalidQueryStringParameters"} ] }, "UpdateStreamingDistribution":{ "name":"UpdateStreamingDistribution2016_09_07", "http":{ "method":"PUT", "requestUri":"/2016-09-07/streaming-distribution/{Id}/config" }, "input":{"shape":"UpdateStreamingDistributionRequest"}, "output":{"shape":"UpdateStreamingDistributionResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"CNAMEAlreadyExists"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchStreamingDistribution"}, {"shape":"PreconditionFailed"}, {"shape":"TooManyStreamingDistributionCNAMEs"}, {"shape":"InvalidArgument"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InconsistentQuantities"} ] } }, "shapes":{ "AccessDenied":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":403}, "exception":true }, "ActiveTrustedSigners":{ "type":"structure", "required":[ "Enabled", "Quantity" ], "members":{ "Enabled":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"SignerList"} } }, "AliasList":{ "type":"list", "member":{ "shape":"string", "locationName":"CNAME" } }, "Aliases":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"AliasList"} } }, "AllowedMethods":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"MethodsList"}, "CachedMethods":{"shape":"CachedMethods"} } }, "AwsAccountNumberList":{ "type":"list", "member":{ "shape":"string", "locationName":"AwsAccountNumber" } }, "BatchTooLarge":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":413}, "exception":true }, "CNAMEAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CacheBehavior":{ "type":"structure", "required":[ "PathPattern", "TargetOriginId", "ForwardedValues", "TrustedSigners", "ViewerProtocolPolicy", "MinTTL" ], "members":{ "PathPattern":{"shape":"string"}, "TargetOriginId":{"shape":"string"}, "ForwardedValues":{"shape":"ForwardedValues"}, "TrustedSigners":{"shape":"TrustedSigners"}, "ViewerProtocolPolicy":{"shape":"ViewerProtocolPolicy"}, "MinTTL":{"shape":"long"}, "AllowedMethods":{"shape":"AllowedMethods"}, "SmoothStreaming":{"shape":"boolean"}, "DefaultTTL":{"shape":"long"}, "MaxTTL":{"shape":"long"}, "Compress":{"shape":"boolean"} } }, "CacheBehaviorList":{ "type":"list", "member":{ "shape":"CacheBehavior", "locationName":"CacheBehavior" } }, "CacheBehaviors":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CacheBehaviorList"} } }, "CachedMethods":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"MethodsList"} } }, "CertificateSource":{ "type":"string", "enum":[ "cloudfront", "iam", "acm" ] }, "CloudFrontOriginAccessIdentity":{ "type":"structure", "required":[ "Id", "S3CanonicalUserId" ], "members":{ "Id":{"shape":"string"}, "S3CanonicalUserId":{"shape":"string"}, "CloudFrontOriginAccessIdentityConfig":{"shape":"CloudFrontOriginAccessIdentityConfig"} } }, "CloudFrontOriginAccessIdentityAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CloudFrontOriginAccessIdentityConfig":{ "type":"structure", "required":[ "CallerReference", "Comment" ], "members":{ "CallerReference":{"shape":"string"}, "Comment":{"shape":"string"} } }, "CloudFrontOriginAccessIdentityInUse":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CloudFrontOriginAccessIdentityList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"CloudFrontOriginAccessIdentitySummaryList"} } }, "CloudFrontOriginAccessIdentitySummary":{ "type":"structure", "required":[ "Id", "S3CanonicalUserId", "Comment" ], "members":{ "Id":{"shape":"string"}, "S3CanonicalUserId":{"shape":"string"}, "Comment":{"shape":"string"} } }, "CloudFrontOriginAccessIdentitySummaryList":{ "type":"list", "member":{ "shape":"CloudFrontOriginAccessIdentitySummary", "locationName":"CloudFrontOriginAccessIdentitySummary" } }, "CookieNameList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "CookieNames":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CookieNameList"} } }, "CookiePreference":{ "type":"structure", "required":["Forward"], "members":{ "Forward":{"shape":"ItemSelection"}, "WhitelistedNames":{"shape":"CookieNames"} } }, "CreateCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["CloudFrontOriginAccessIdentityConfig"], "members":{ "CloudFrontOriginAccessIdentityConfig":{ "shape":"CloudFrontOriginAccessIdentityConfig", "locationName":"CloudFrontOriginAccessIdentityConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-07/"} } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "CreateCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "CreateDistributionRequest":{ "type":"structure", "required":["DistributionConfig"], "members":{ "DistributionConfig":{ "shape":"DistributionConfig", "locationName":"DistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-07/"} } }, "payload":"DistributionConfig" }, "CreateDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "CreateDistributionWithTagsRequest":{ "type":"structure", "required":["DistributionConfigWithTags"], "members":{ "DistributionConfigWithTags":{ "shape":"DistributionConfigWithTags", "locationName":"DistributionConfigWithTags", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-07/"} } }, "payload":"DistributionConfigWithTags" }, "CreateDistributionWithTagsResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "CreateInvalidationRequest":{ "type":"structure", "required":[ "DistributionId", "InvalidationBatch" ], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "InvalidationBatch":{ "shape":"InvalidationBatch", "locationName":"InvalidationBatch", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-07/"} } }, "payload":"InvalidationBatch" }, "CreateInvalidationResult":{ "type":"structure", "members":{ "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "Invalidation":{"shape":"Invalidation"} }, "payload":"Invalidation" }, "CreateStreamingDistributionRequest":{ "type":"structure", "required":["StreamingDistributionConfig"], "members":{ "StreamingDistributionConfig":{ "shape":"StreamingDistributionConfig", "locationName":"StreamingDistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-07/"} } }, "payload":"StreamingDistributionConfig" }, "CreateStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "CreateStreamingDistributionWithTagsRequest":{ "type":"structure", "required":["StreamingDistributionConfigWithTags"], "members":{ "StreamingDistributionConfigWithTags":{ "shape":"StreamingDistributionConfigWithTags", "locationName":"StreamingDistributionConfigWithTags", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-07/"} } }, "payload":"StreamingDistributionConfigWithTags" }, "CreateStreamingDistributionWithTagsResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "CustomErrorResponse":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"integer"}, "ResponsePagePath":{"shape":"string"}, "ResponseCode":{"shape":"string"}, "ErrorCachingMinTTL":{"shape":"long"} } }, "CustomErrorResponseList":{ "type":"list", "member":{ "shape":"CustomErrorResponse", "locationName":"CustomErrorResponse" } }, "CustomErrorResponses":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CustomErrorResponseList"} } }, "CustomHeaders":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"OriginCustomHeadersList"} } }, "CustomOriginConfig":{ "type":"structure", "required":[ "HTTPPort", "HTTPSPort", "OriginProtocolPolicy" ], "members":{ "HTTPPort":{"shape":"integer"}, "HTTPSPort":{"shape":"integer"}, "OriginProtocolPolicy":{"shape":"OriginProtocolPolicy"}, "OriginSslProtocols":{"shape":"OriginSslProtocols"} } }, "DefaultCacheBehavior":{ "type":"structure", "required":[ "TargetOriginId", "ForwardedValues", "TrustedSigners", "ViewerProtocolPolicy", "MinTTL" ], "members":{ "TargetOriginId":{"shape":"string"}, "ForwardedValues":{"shape":"ForwardedValues"}, "TrustedSigners":{"shape":"TrustedSigners"}, "ViewerProtocolPolicy":{"shape":"ViewerProtocolPolicy"}, "MinTTL":{"shape":"long"}, "AllowedMethods":{"shape":"AllowedMethods"}, "SmoothStreaming":{"shape":"boolean"}, "DefaultTTL":{"shape":"long"}, "MaxTTL":{"shape":"long"}, "Compress":{"shape":"boolean"} } }, "DeleteCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "DeleteDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "DeleteStreamingDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "Distribution":{ "type":"structure", "required":[ "Id", "ARN", "Status", "LastModifiedTime", "InProgressInvalidationBatches", "DomainName", "ActiveTrustedSigners", "DistributionConfig" ], "members":{ "Id":{"shape":"string"}, "ARN":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "InProgressInvalidationBatches":{"shape":"integer"}, "DomainName":{"shape":"string"}, "ActiveTrustedSigners":{"shape":"ActiveTrustedSigners"}, "DistributionConfig":{"shape":"DistributionConfig"} } }, "DistributionAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "DistributionConfig":{ "type":"structure", "required":[ "CallerReference", "Origins", "DefaultCacheBehavior", "Comment", "Enabled" ], "members":{ "CallerReference":{"shape":"string"}, "Aliases":{"shape":"Aliases"}, "DefaultRootObject":{"shape":"string"}, "Origins":{"shape":"Origins"}, "DefaultCacheBehavior":{"shape":"DefaultCacheBehavior"}, "CacheBehaviors":{"shape":"CacheBehaviors"}, "CustomErrorResponses":{"shape":"CustomErrorResponses"}, "Comment":{"shape":"string"}, "Logging":{"shape":"LoggingConfig"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"}, "ViewerCertificate":{"shape":"ViewerCertificate"}, "Restrictions":{"shape":"Restrictions"}, "WebACLId":{"shape":"string"}, "HttpVersion":{"shape":"HttpVersion"} } }, "DistributionConfigWithTags":{ "type":"structure", "required":[ "DistributionConfig", "Tags" ], "members":{ "DistributionConfig":{"shape":"DistributionConfig"}, "Tags":{"shape":"Tags"} } }, "DistributionList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"DistributionSummaryList"} } }, "DistributionNotDisabled":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "DistributionSummary":{ "type":"structure", "required":[ "Id", "ARN", "Status", "LastModifiedTime", "DomainName", "Aliases", "Origins", "DefaultCacheBehavior", "CacheBehaviors", "CustomErrorResponses", "Comment", "PriceClass", "Enabled", "ViewerCertificate", "Restrictions", "WebACLId", "HttpVersion" ], "members":{ "Id":{"shape":"string"}, "ARN":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "Aliases":{"shape":"Aliases"}, "Origins":{"shape":"Origins"}, "DefaultCacheBehavior":{"shape":"DefaultCacheBehavior"}, "CacheBehaviors":{"shape":"CacheBehaviors"}, "CustomErrorResponses":{"shape":"CustomErrorResponses"}, "Comment":{"shape":"string"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"}, "ViewerCertificate":{"shape":"ViewerCertificate"}, "Restrictions":{"shape":"Restrictions"}, "WebACLId":{"shape":"string"}, "HttpVersion":{"shape":"HttpVersion"} } }, "DistributionSummaryList":{ "type":"list", "member":{ "shape":"DistributionSummary", "locationName":"DistributionSummary" } }, "ForwardedValues":{ "type":"structure", "required":[ "QueryString", "Cookies" ], "members":{ "QueryString":{"shape":"boolean"}, "Cookies":{"shape":"CookiePreference"}, "Headers":{"shape":"Headers"}, "QueryStringCacheKeys":{"shape":"QueryStringCacheKeys"} } }, "GeoRestriction":{ "type":"structure", "required":[ "RestrictionType", "Quantity" ], "members":{ "RestrictionType":{"shape":"GeoRestrictionType"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"LocationList"} } }, "GeoRestrictionType":{ "type":"string", "enum":[ "blacklist", "whitelist", "none" ] }, "GetCloudFrontOriginAccessIdentityConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetCloudFrontOriginAccessIdentityConfigResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentityConfig":{"shape":"CloudFrontOriginAccessIdentityConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "GetCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "GetDistributionConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetDistributionConfigResult":{ "type":"structure", "members":{ "DistributionConfig":{"shape":"DistributionConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"DistributionConfig" }, "GetDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "GetInvalidationRequest":{ "type":"structure", "required":[ "DistributionId", "Id" ], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetInvalidationResult":{ "type":"structure", "members":{ "Invalidation":{"shape":"Invalidation"} }, "payload":"Invalidation" }, "GetStreamingDistributionConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetStreamingDistributionConfigResult":{ "type":"structure", "members":{ "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistributionConfig" }, "GetStreamingDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "HeaderList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "Headers":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"HeaderList"} } }, "HttpVersion":{ "type":"string", "enum":[ "http1.1", "http2" ] }, "IllegalUpdate":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InconsistentQuantities":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidArgument":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidDefaultRootObject":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidErrorCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidForwardCookies":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidGeoRestrictionParameter":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidHeadersForS3Origin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidIfMatchVersion":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidLocationCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidMinimumProtocolVersion":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidOrigin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidOriginAccessIdentity":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidProtocolSettings":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidQueryStringParameters":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRelativePath":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRequiredProtocol":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidResponseCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidTTLOrder":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidTagging":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidViewerCertificate":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidWebACLId":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "Invalidation":{ "type":"structure", "required":[ "Id", "Status", "CreateTime", "InvalidationBatch" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "CreateTime":{"shape":"timestamp"}, "InvalidationBatch":{"shape":"InvalidationBatch"} } }, "InvalidationBatch":{ "type":"structure", "required":[ "Paths", "CallerReference" ], "members":{ "Paths":{"shape":"Paths"}, "CallerReference":{"shape":"string"} } }, "InvalidationList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"InvalidationSummaryList"} } }, "InvalidationSummary":{ "type":"structure", "required":[ "Id", "CreateTime", "Status" ], "members":{ "Id":{"shape":"string"}, "CreateTime":{"shape":"timestamp"}, "Status":{"shape":"string"} } }, "InvalidationSummaryList":{ "type":"list", "member":{ "shape":"InvalidationSummary", "locationName":"InvalidationSummary" } }, "ItemSelection":{ "type":"string", "enum":[ "none", "whitelist", "all" ] }, "KeyPairIdList":{ "type":"list", "member":{ "shape":"string", "locationName":"KeyPairId" } }, "KeyPairIds":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"KeyPairIdList"} } }, "ListCloudFrontOriginAccessIdentitiesRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListCloudFrontOriginAccessIdentitiesResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentityList":{"shape":"CloudFrontOriginAccessIdentityList"} }, "payload":"CloudFrontOriginAccessIdentityList" }, "ListDistributionsByWebACLIdRequest":{ "type":"structure", "required":["WebACLId"], "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" }, "WebACLId":{ "shape":"string", "location":"uri", "locationName":"WebACLId" } } }, "ListDistributionsByWebACLIdResult":{ "type":"structure", "members":{ "DistributionList":{"shape":"DistributionList"} }, "payload":"DistributionList" }, "ListDistributionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListDistributionsResult":{ "type":"structure", "members":{ "DistributionList":{"shape":"DistributionList"} }, "payload":"DistributionList" }, "ListInvalidationsRequest":{ "type":"structure", "required":["DistributionId"], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListInvalidationsResult":{ "type":"structure", "members":{ "InvalidationList":{"shape":"InvalidationList"} }, "payload":"InvalidationList" }, "ListStreamingDistributionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListStreamingDistributionsResult":{ "type":"structure", "members":{ "StreamingDistributionList":{"shape":"StreamingDistributionList"} }, "payload":"StreamingDistributionList" }, "ListTagsForResourceRequest":{ "type":"structure", "required":["Resource"], "members":{ "Resource":{ "shape":"ResourceARN", "location":"querystring", "locationName":"Resource" } } }, "ListTagsForResourceResult":{ "type":"structure", "required":["Tags"], "members":{ "Tags":{"shape":"Tags"} }, "payload":"Tags" }, "LocationList":{ "type":"list", "member":{ "shape":"string", "locationName":"Location" } }, "LoggingConfig":{ "type":"structure", "required":[ "Enabled", "IncludeCookies", "Bucket", "Prefix" ], "members":{ "Enabled":{"shape":"boolean"}, "IncludeCookies":{"shape":"boolean"}, "Bucket":{"shape":"string"}, "Prefix":{"shape":"string"} } }, "Method":{ "type":"string", "enum":[ "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" ] }, "MethodsList":{ "type":"list", "member":{ "shape":"Method", "locationName":"Method" } }, "MinimumProtocolVersion":{ "type":"string", "enum":[ "SSLv3", "TLSv1" ] }, "MissingBody":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "NoSuchCloudFrontOriginAccessIdentity":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchDistribution":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchInvalidation":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchOrigin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchResource":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchStreamingDistribution":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "Origin":{ "type":"structure", "required":[ "Id", "DomainName" ], "members":{ "Id":{"shape":"string"}, "DomainName":{"shape":"string"}, "OriginPath":{"shape":"string"}, "CustomHeaders":{"shape":"CustomHeaders"}, "S3OriginConfig":{"shape":"S3OriginConfig"}, "CustomOriginConfig":{"shape":"CustomOriginConfig"} } }, "OriginCustomHeader":{ "type":"structure", "required":[ "HeaderName", "HeaderValue" ], "members":{ "HeaderName":{"shape":"string"}, "HeaderValue":{"shape":"string"} } }, "OriginCustomHeadersList":{ "type":"list", "member":{ "shape":"OriginCustomHeader", "locationName":"OriginCustomHeader" } }, "OriginList":{ "type":"list", "member":{ "shape":"Origin", "locationName":"Origin" }, "min":1 }, "OriginProtocolPolicy":{ "type":"string", "enum":[ "http-only", "match-viewer", "https-only" ] }, "OriginSslProtocols":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"SslProtocolsList"} } }, "Origins":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"OriginList"} } }, "PathList":{ "type":"list", "member":{ "shape":"string", "locationName":"Path" } }, "Paths":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"PathList"} } }, "PreconditionFailed":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":412}, "exception":true }, "PriceClass":{ "type":"string", "enum":[ "PriceClass_100", "PriceClass_200", "PriceClass_All" ] }, "QueryStringCacheKeys":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"QueryStringCacheKeysList"} } }, "QueryStringCacheKeysList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "ResourceARN":{ "type":"string", "pattern":"arn:aws:cloudfront::[0-9]+:.*" }, "Restrictions":{ "type":"structure", "required":["GeoRestriction"], "members":{ "GeoRestriction":{"shape":"GeoRestriction"} } }, "S3Origin":{ "type":"structure", "required":[ "DomainName", "OriginAccessIdentity" ], "members":{ "DomainName":{"shape":"string"}, "OriginAccessIdentity":{"shape":"string"} } }, "S3OriginConfig":{ "type":"structure", "required":["OriginAccessIdentity"], "members":{ "OriginAccessIdentity":{"shape":"string"} } }, "SSLSupportMethod":{ "type":"string", "enum":[ "sni-only", "vip" ] }, "Signer":{ "type":"structure", "members":{ "AwsAccountNumber":{"shape":"string"}, "KeyPairIds":{"shape":"KeyPairIds"} } }, "SignerList":{ "type":"list", "member":{ "shape":"Signer", "locationName":"Signer" } }, "SslProtocol":{ "type":"string", "enum":[ "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2" ] }, "SslProtocolsList":{ "type":"list", "member":{ "shape":"SslProtocol", "locationName":"SslProtocol" } }, "StreamingDistribution":{ "type":"structure", "required":[ "Id", "ARN", "Status", "DomainName", "ActiveTrustedSigners", "StreamingDistributionConfig" ], "members":{ "Id":{"shape":"string"}, "ARN":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "ActiveTrustedSigners":{"shape":"ActiveTrustedSigners"}, "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"} } }, "StreamingDistributionAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "StreamingDistributionConfig":{ "type":"structure", "required":[ "CallerReference", "S3Origin", "Comment", "TrustedSigners", "Enabled" ], "members":{ "CallerReference":{"shape":"string"}, "S3Origin":{"shape":"S3Origin"}, "Aliases":{"shape":"Aliases"}, "Comment":{"shape":"string"}, "Logging":{"shape":"StreamingLoggingConfig"}, "TrustedSigners":{"shape":"TrustedSigners"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"} } }, "StreamingDistributionConfigWithTags":{ "type":"structure", "required":[ "StreamingDistributionConfig", "Tags" ], "members":{ "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"}, "Tags":{"shape":"Tags"} } }, "StreamingDistributionList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"StreamingDistributionSummaryList"} } }, "StreamingDistributionNotDisabled":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "StreamingDistributionSummary":{ "type":"structure", "required":[ "Id", "ARN", "Status", "LastModifiedTime", "DomainName", "S3Origin", "Aliases", "TrustedSigners", "Comment", "PriceClass", "Enabled" ], "members":{ "Id":{"shape":"string"}, "ARN":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "S3Origin":{"shape":"S3Origin"}, "Aliases":{"shape":"Aliases"}, "TrustedSigners":{"shape":"TrustedSigners"}, "Comment":{"shape":"string"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"} } }, "StreamingDistributionSummaryList":{ "type":"list", "member":{ "shape":"StreamingDistributionSummary", "locationName":"StreamingDistributionSummary" } }, "StreamingLoggingConfig":{ "type":"structure", "required":[ "Enabled", "Bucket", "Prefix" ], "members":{ "Enabled":{"shape":"boolean"}, "Bucket":{"shape":"string"}, "Prefix":{"shape":"string"} } }, "Tag":{ "type":"structure", "required":["Key"], "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{ "type":"string", "max":128, "min":1, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "TagKeyList":{ "type":"list", "member":{ "shape":"TagKey", "locationName":"Key" } }, "TagKeys":{ "type":"structure", "members":{ "Items":{"shape":"TagKeyList"} } }, "TagList":{ "type":"list", "member":{ "shape":"Tag", "locationName":"Tag" } }, "TagResourceRequest":{ "type":"structure", "required":[ "Resource", "Tags" ], "members":{ "Resource":{ "shape":"ResourceARN", "location":"querystring", "locationName":"Resource" }, "Tags":{ "shape":"Tags", "locationName":"Tags", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-07/"} } }, "payload":"Tags" }, "TagValue":{ "type":"string", "max":256, "min":0, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "Tags":{ "type":"structure", "members":{ "Items":{"shape":"TagList"} } }, "TooManyCacheBehaviors":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCertificates":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCloudFrontOriginAccessIdentities":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCookieNamesInWhiteList":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyDistributionCNAMEs":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyDistributions":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyHeadersInForwardedValues":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyInvalidationsInProgress":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyOriginCustomHeaders":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyOrigins":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyQueryStringParameters":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyStreamingDistributionCNAMEs":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyStreamingDistributions":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyTrustedSigners":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrustedSignerDoesNotExist":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrustedSigners":{ "type":"structure", "required":[ "Enabled", "Quantity" ], "members":{ "Enabled":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"AwsAccountNumberList"} } }, "UntagResourceRequest":{ "type":"structure", "required":[ "Resource", "TagKeys" ], "members":{ "Resource":{ "shape":"ResourceARN", "location":"querystring", "locationName":"Resource" }, "TagKeys":{ "shape":"TagKeys", "locationName":"TagKeys", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-07/"} } }, "payload":"TagKeys" }, "UpdateCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":[ "CloudFrontOriginAccessIdentityConfig", "Id" ], "members":{ "CloudFrontOriginAccessIdentityConfig":{ "shape":"CloudFrontOriginAccessIdentityConfig", "locationName":"CloudFrontOriginAccessIdentityConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-07/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "UpdateCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "UpdateDistributionRequest":{ "type":"structure", "required":[ "DistributionConfig", "Id" ], "members":{ "DistributionConfig":{ "shape":"DistributionConfig", "locationName":"DistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-07/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"DistributionConfig" }, "UpdateDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "UpdateStreamingDistributionRequest":{ "type":"structure", "required":[ "StreamingDistributionConfig", "Id" ], "members":{ "StreamingDistributionConfig":{ "shape":"StreamingDistributionConfig", "locationName":"StreamingDistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-07/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"StreamingDistributionConfig" }, "UpdateStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "ViewerCertificate":{ "type":"structure", "members":{ "CloudFrontDefaultCertificate":{"shape":"boolean"}, "IAMCertificateId":{"shape":"string"}, "ACMCertificateArn":{"shape":"string"}, "SSLSupportMethod":{"shape":"SSLSupportMethod"}, "MinimumProtocolVersion":{"shape":"MinimumProtocolVersion"}, "Certificate":{ "shape":"string", "deprecated":true }, "CertificateSource":{ "shape":"CertificateSource", "deprecated":true } } }, "ViewerProtocolPolicy":{ "type":"string", "enum":[ "allow-all", "https-only", "redirect-to-https" ] }, "boolean":{"type":"boolean"}, "integer":{"type":"integer"}, "long":{"type":"long"}, "string":{"type":"string"}, "timestamp":{"type":"timestamp"} } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-09-07/docs-2.json000077500000000000000000003013721300374646400232160ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon CloudFront

        Amazon CloudFront is a global content delivery network (CDN) service that accelerates delivery of your websites, APIs, video content or other web assets. It integrates with other Amazon Web Services products to give developers and businesses an easy way to accelerate content to end users with no minimum usage commitments.

        ", "operations": { "CreateCloudFrontOriginAccessIdentity": "Create a new origin access identity.", "CreateDistribution": "Create a new distribution.", "CreateDistributionWithTags": "Create a new distribution with tags.", "CreateInvalidation": "Create a new invalidation.", "CreateStreamingDistribution": "Create a new streaming distribution.", "CreateStreamingDistributionWithTags": "Create a new streaming distribution with tags.", "DeleteCloudFrontOriginAccessIdentity": "Delete an origin access identity.", "DeleteDistribution": "Delete a distribution.", "DeleteStreamingDistribution": "Delete a streaming distribution.", "GetCloudFrontOriginAccessIdentity": "Get the information about an origin access identity.", "GetCloudFrontOriginAccessIdentityConfig": "Get the configuration information about an origin access identity.", "GetDistribution": "Get the information about a distribution.", "GetDistributionConfig": "Get the configuration information about a distribution.", "GetInvalidation": "Get the information about an invalidation.", "GetStreamingDistribution": "Get the information about a streaming distribution.", "GetStreamingDistributionConfig": "Get the configuration information about a streaming distribution.", "ListCloudFrontOriginAccessIdentities": "List origin access identities.", "ListDistributions": "List distributions.", "ListDistributionsByWebACLId": "List the distributions that are associated with a specified AWS WAF web ACL.", "ListInvalidations": "List invalidation batches.", "ListStreamingDistributions": "List streaming distributions.", "ListTagsForResource": "List tags for a CloudFront resource.", "TagResource": "Add tags to a CloudFront resource.", "UntagResource": "Remove tags from a CloudFront resource.", "UpdateCloudFrontOriginAccessIdentity": "Update an origin access identity.", "UpdateDistribution": "Update a distribution.", "UpdateStreamingDistribution": "Update a streaming distribution." }, "shapes": { "AccessDenied": { "base": "Access denied.", "refs": { } }, "ActiveTrustedSigners": { "base": "A complex type that lists the AWS accounts, if any, that you included in the TrustedSigners complex type for the default cache behavior or for any of the other cache behaviors for this distribution. These are accounts that you want to allow to create signed URLs for private content.", "refs": { "Distribution$ActiveTrustedSigners": "CloudFront automatically adds this element to the response only if you've set up the distribution to serve private content with signed URLs. The element lists the key pair IDs that CloudFront is aware of for each trusted signer. The Signer child element lists the AWS account number of the trusted signer (or an empty Self element if the signer is you). The Signer element also includes the IDs of any active key pairs associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create working signed URLs.", "StreamingDistribution$ActiveTrustedSigners": "CloudFront automatically adds this element to the response only if you've set up the distribution to serve private content with signed URLs. The element lists the key pair IDs that CloudFront is aware of for each trusted signer. The Signer child element lists the AWS account number of the trusted signer (or an empty Self element if the signer is you). The Signer element also includes the IDs of any active key pairs associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create working signed URLs." } }, "AliasList": { "base": null, "refs": { "Aliases$Items": "Optional: A complex type that contains CNAME elements, if any, for this distribution. If Quantity is 0, you can omit Items." } }, "Aliases": { "base": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "refs": { "DistributionConfig$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "DistributionSummary$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.", "StreamingDistributionConfig$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution.", "StreamingDistributionSummary$Aliases": "A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution." } }, "AllowedMethods": { "base": "A complex type that controls which HTTP methods CloudFront processes and forwards to your Amazon S3 bucket or your custom origin. There are three choices: - CloudFront forwards only GET and HEAD requests. - CloudFront forwards only GET, HEAD and OPTIONS requests. - CloudFront forwards GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests. If you pick the third choice, you may need to restrict access to your Amazon S3 bucket or to your custom origin so users can't perform operations that you don't want them to. For example, you may not want users to have permission to delete objects from your origin.", "refs": { "CacheBehavior$AllowedMethods": null, "DefaultCacheBehavior$AllowedMethods": null } }, "AwsAccountNumberList": { "base": null, "refs": { "TrustedSigners$Items": "Optional: A complex type that contains trusted signers for this cache behavior. If Quantity is 0, you can omit Items." } }, "BatchTooLarge": { "base": null, "refs": { } }, "CNAMEAlreadyExists": { "base": null, "refs": { } }, "CacheBehavior": { "base": "A complex type that describes how CloudFront processes requests. You can create up to 10 cache behaviors.You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to distribute objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin will never be used. If you don't want to specify any cache behaviors, include only an empty CacheBehaviors element. Don't include an empty CacheBehavior element, or CloudFront returns a MalformedXML error. To delete all cache behaviors in an existing distribution, update the distribution configuration and include only an empty CacheBehaviors element. To add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution.", "refs": { "CacheBehaviorList$member": null } }, "CacheBehaviorList": { "base": null, "refs": { "CacheBehaviors$Items": "Optional: A complex type that contains cache behaviors for this distribution. If Quantity is 0, you can omit Items." } }, "CacheBehaviors": { "base": "A complex type that contains zero or more CacheBehavior elements.", "refs": { "DistributionConfig$CacheBehaviors": "A complex type that contains zero or more CacheBehavior elements.", "DistributionSummary$CacheBehaviors": "A complex type that contains zero or more CacheBehavior elements." } }, "CachedMethods": { "base": "A complex type that controls whether CloudFront caches the response to requests using the specified HTTP methods. There are two choices: - CloudFront caches responses to GET and HEAD requests. - CloudFront caches responses to GET, HEAD, and OPTIONS requests. If you pick the second choice for your S3 Origin, you may need to forward Access-Control-Request-Method, Access-Control-Request-Headers and Origin headers for the responses to be cached correctly.", "refs": { "AllowedMethods$CachedMethods": null } }, "CertificateSource": { "base": null, "refs": { "ViewerCertificate$CertificateSource": "Note: this field is deprecated. Please use one of [ACMCertificateArn, IAMCertificateId, CloudFrontDefaultCertificate]." } }, "CloudFrontOriginAccessIdentity": { "base": "CloudFront origin access identity.", "refs": { "CreateCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information.", "GetCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information.", "UpdateCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "The origin access identity's information." } }, "CloudFrontOriginAccessIdentityAlreadyExists": { "base": "If the CallerReference is a value you already sent in a previous request to create an identity but the content of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists error.", "refs": { } }, "CloudFrontOriginAccessIdentityConfig": { "base": "Origin access identity configuration.", "refs": { "CloudFrontOriginAccessIdentity$CloudFrontOriginAccessIdentityConfig": "The current configuration information for the identity.", "CreateCloudFrontOriginAccessIdentityRequest$CloudFrontOriginAccessIdentityConfig": "The origin access identity's configuration information.", "GetCloudFrontOriginAccessIdentityConfigResult$CloudFrontOriginAccessIdentityConfig": "The origin access identity's configuration information.", "UpdateCloudFrontOriginAccessIdentityRequest$CloudFrontOriginAccessIdentityConfig": "The identity's configuration information." } }, "CloudFrontOriginAccessIdentityInUse": { "base": null, "refs": { } }, "CloudFrontOriginAccessIdentityList": { "base": "The CloudFrontOriginAccessIdentityList type.", "refs": { "ListCloudFrontOriginAccessIdentitiesResult$CloudFrontOriginAccessIdentityList": "The CloudFrontOriginAccessIdentityList type." } }, "CloudFrontOriginAccessIdentitySummary": { "base": "Summary of the information about a CloudFront origin access identity.", "refs": { "CloudFrontOriginAccessIdentitySummaryList$member": null } }, "CloudFrontOriginAccessIdentitySummaryList": { "base": null, "refs": { "CloudFrontOriginAccessIdentityList$Items": "A complex type that contains one CloudFrontOriginAccessIdentitySummary element for each origin access identity that was created by the current AWS account." } }, "CookieNameList": { "base": null, "refs": { "CookieNames$Items": "Optional: A complex type that contains whitelisted cookies for this cache behavior. If Quantity is 0, you can omit Items." } }, "CookieNames": { "base": "A complex type that specifies the whitelisted cookies, if any, that you want CloudFront to forward to your origin that is associated with this cache behavior.", "refs": { "CookiePreference$WhitelistedNames": "A complex type that specifies the whitelisted cookies, if any, that you want CloudFront to forward to your origin that is associated with this cache behavior." } }, "CookiePreference": { "base": "A complex type that specifies the cookie preferences associated with this cache behavior.", "refs": { "ForwardedValues$Cookies": "A complex type that specifies how CloudFront handles cookies." } }, "CreateCloudFrontOriginAccessIdentityRequest": { "base": "The request to create a new origin access identity.", "refs": { } }, "CreateCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateDistributionRequest": { "base": "The request to create a new distribution.", "refs": { } }, "CreateDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateDistributionWithTagsRequest": { "base": "The request to create a new distribution with tags", "refs": { } }, "CreateDistributionWithTagsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateInvalidationRequest": { "base": "The request to create an invalidation.", "refs": { } }, "CreateInvalidationResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateStreamingDistributionRequest": { "base": "The request to create a new streaming distribution.", "refs": { } }, "CreateStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CreateStreamingDistributionWithTagsRequest": { "base": "The request to create a new streaming distribution with tags.", "refs": { } }, "CreateStreamingDistributionWithTagsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "CustomErrorResponse": { "base": "A complex type that describes how you'd prefer CloudFront to respond to requests that result in either a 4xx or 5xx response. You can control whether a custom error page should be displayed, what the desired response code should be for this error page and how long should the error response be cached by CloudFront. If you don't want to specify any custom error responses, include only an empty CustomErrorResponses element. To delete all custom error responses in an existing distribution, update the distribution configuration and include only an empty CustomErrorResponses element. To add, change, or remove one or more custom error responses, update the distribution configuration and specify all of the custom error responses that you want to include in the updated distribution.", "refs": { "CustomErrorResponseList$member": null } }, "CustomErrorResponseList": { "base": null, "refs": { "CustomErrorResponses$Items": "Optional: A complex type that contains custom error responses for this distribution. If Quantity is 0, you can omit Items." } }, "CustomErrorResponses": { "base": "A complex type that contains zero or more CustomErrorResponse elements.", "refs": { "DistributionConfig$CustomErrorResponses": "A complex type that contains zero or more CustomErrorResponse elements.", "DistributionSummary$CustomErrorResponses": "A complex type that contains zero or more CustomErrorResponses elements." } }, "CustomHeaders": { "base": "A complex type that contains the list of Custom Headers for each origin.", "refs": { "Origin$CustomHeaders": "A complex type that contains information about the custom headers associated with this Origin." } }, "CustomOriginConfig": { "base": "A customer origin.", "refs": { "Origin$CustomOriginConfig": "A complex type that contains information about a custom origin. If the origin is an Amazon S3 bucket, use the S3OriginConfig element instead." } }, "DefaultCacheBehavior": { "base": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior.", "refs": { "DistributionConfig$DefaultCacheBehavior": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior.", "DistributionSummary$DefaultCacheBehavior": "A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior." } }, "DeleteCloudFrontOriginAccessIdentityRequest": { "base": "The request to delete a origin access identity.", "refs": { } }, "DeleteDistributionRequest": { "base": "The request to delete a distribution.", "refs": { } }, "DeleteStreamingDistributionRequest": { "base": "The request to delete a streaming distribution.", "refs": { } }, "Distribution": { "base": "A distribution.", "refs": { "CreateDistributionResult$Distribution": "The distribution's information.", "CreateDistributionWithTagsResult$Distribution": "The distribution's information.", "GetDistributionResult$Distribution": "The distribution's information.", "UpdateDistributionResult$Distribution": "The distribution's information." } }, "DistributionAlreadyExists": { "base": "The caller reference you attempted to create the distribution with is associated with another distribution.", "refs": { } }, "DistributionConfig": { "base": "A distribution Configuration.", "refs": { "CreateDistributionRequest$DistributionConfig": "The distribution's configuration information.", "Distribution$DistributionConfig": "The current configuration information for the distribution.", "DistributionConfigWithTags$DistributionConfig": "A distribution Configuration.", "GetDistributionConfigResult$DistributionConfig": "The distribution's configuration information.", "UpdateDistributionRequest$DistributionConfig": "The distribution's configuration information." } }, "DistributionConfigWithTags": { "base": "A distribution Configuration and a list of tags to be associated with the distribution.", "refs": { "CreateDistributionWithTagsRequest$DistributionConfigWithTags": "The distribution's configuration information." } }, "DistributionList": { "base": "A distribution list.", "refs": { "ListDistributionsByWebACLIdResult$DistributionList": "The DistributionList type.", "ListDistributionsResult$DistributionList": "The DistributionList type." } }, "DistributionNotDisabled": { "base": null, "refs": { } }, "DistributionSummary": { "base": "A summary of the information for an Amazon CloudFront distribution.", "refs": { "DistributionSummaryList$member": null } }, "DistributionSummaryList": { "base": null, "refs": { "DistributionList$Items": "A complex type that contains one DistributionSummary element for each distribution that was created by the current AWS account." } }, "ForwardedValues": { "base": "A complex type that specifies how CloudFront handles query strings, cookies and headers.", "refs": { "CacheBehavior$ForwardedValues": "A complex type that specifies how CloudFront handles query strings, cookies and headers.", "DefaultCacheBehavior$ForwardedValues": "A complex type that specifies how CloudFront handles query strings, cookies and headers." } }, "GeoRestriction": { "base": "A complex type that controls the countries in which your content is distributed. For more information about geo restriction, go to Customizing Error Responses in the Amazon CloudFront Developer Guide. CloudFront determines the location of your users using MaxMind GeoIP databases. For information about the accuracy of these databases, see How accurate are your GeoIP databases? on the MaxMind website.", "refs": { "Restrictions$GeoRestriction": null } }, "GeoRestrictionType": { "base": null, "refs": { "GeoRestriction$RestrictionType": "The method that you want to use to restrict distribution of your content by country: - none: No geo restriction is enabled, meaning access to content is not restricted by client geo location. - blacklist: The Location elements specify the countries in which you do not want CloudFront to distribute your content. - whitelist: The Location elements specify the countries in which you want CloudFront to distribute your content." } }, "GetCloudFrontOriginAccessIdentityConfigRequest": { "base": "The request to get an origin access identity's configuration.", "refs": { } }, "GetCloudFrontOriginAccessIdentityConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetCloudFrontOriginAccessIdentityRequest": { "base": "The request to get an origin access identity's information.", "refs": { } }, "GetCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetDistributionConfigRequest": { "base": "The request to get a distribution configuration.", "refs": { } }, "GetDistributionConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetDistributionRequest": { "base": "The request to get a distribution's information.", "refs": { } }, "GetDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetInvalidationRequest": { "base": "The request to get an invalidation's information.", "refs": { } }, "GetInvalidationResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetStreamingDistributionConfigRequest": { "base": "To request to get a streaming distribution configuration.", "refs": { } }, "GetStreamingDistributionConfigResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "GetStreamingDistributionRequest": { "base": "The request to get a streaming distribution's information.", "refs": { } }, "GetStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "HeaderList": { "base": null, "refs": { "Headers$Items": "Optional: A complex type that contains a Name element for each header that you want CloudFront to forward to the origin and to vary on for this cache behavior. If Quantity is 0, omit Items." } }, "Headers": { "base": "A complex type that specifies the headers that you want CloudFront to forward to the origin for this cache behavior. For the headers that you specify, CloudFront also caches separate versions of a given object based on the header values in viewer requests; this is known as varying on headers. For example, suppose viewer requests for logo.jpg contain a custom Product header that has a value of either Acme or Apex, and you configure CloudFront to vary on the Product header. CloudFront forwards the Product header to the origin and caches the response from the origin once for each header value.", "refs": { "ForwardedValues$Headers": "A complex type that specifies the Headers, if any, that you want CloudFront to vary upon for this cache behavior." } }, "HttpVersion": { "base": null, "refs": { "DistributionConfig$HttpVersion": "(Optional) Specify the maximum HTTP version that you want viewers to use to communicate with CloudFront. The default value for new web distributions is http2. Viewers that don't support HTTP/2 will automatically use an earlier version.", "DistributionSummary$HttpVersion": "Specify the maximum HTTP version that you want viewers to use to communicate with CloudFront. The default value for new web distributions is http2. Viewers that don't support HTTP/2 will automatically use an earlier version." } }, "IllegalUpdate": { "base": "Origin and CallerReference cannot be updated.", "refs": { } }, "InconsistentQuantities": { "base": "The value of Quantity and the size of Items do not match.", "refs": { } }, "InvalidArgument": { "base": "The argument is invalid.", "refs": { } }, "InvalidDefaultRootObject": { "base": "The default root object file name is too big or contains an invalid character.", "refs": { } }, "InvalidErrorCode": { "base": null, "refs": { } }, "InvalidForwardCookies": { "base": "Your request contains forward cookies option which doesn't match with the expectation for the whitelisted list of cookie names. Either list of cookie names has been specified when not allowed or list of cookie names is missing when expected.", "refs": { } }, "InvalidGeoRestrictionParameter": { "base": null, "refs": { } }, "InvalidHeadersForS3Origin": { "base": null, "refs": { } }, "InvalidIfMatchVersion": { "base": "The If-Match version is missing or not valid for the distribution.", "refs": { } }, "InvalidLocationCode": { "base": null, "refs": { } }, "InvalidMinimumProtocolVersion": { "base": null, "refs": { } }, "InvalidOrigin": { "base": "The Amazon S3 origin server specified does not refer to a valid Amazon S3 bucket.", "refs": { } }, "InvalidOriginAccessIdentity": { "base": "The origin access identity is not valid or doesn't exist.", "refs": { } }, "InvalidProtocolSettings": { "base": "You cannot specify SSLv3 as the minimum protocol version if you only want to support only clients that Support Server Name Indication (SNI).", "refs": { } }, "InvalidQueryStringParameters": { "base": null, "refs": { } }, "InvalidRelativePath": { "base": "The relative path is too big, is not URL-encoded, or does not begin with a slash (/).", "refs": { } }, "InvalidRequiredProtocol": { "base": "This operation requires the HTTPS protocol. Ensure that you specify the HTTPS protocol in your request, or omit the RequiredProtocols element from your distribution configuration.", "refs": { } }, "InvalidResponseCode": { "base": null, "refs": { } }, "InvalidTTLOrder": { "base": null, "refs": { } }, "InvalidTagging": { "base": "The specified tagging for a CloudFront resource is invalid. For more information, see the error text.", "refs": { } }, "InvalidViewerCertificate": { "base": null, "refs": { } }, "InvalidWebACLId": { "base": null, "refs": { } }, "Invalidation": { "base": "An invalidation.", "refs": { "CreateInvalidationResult$Invalidation": "The invalidation's information.", "GetInvalidationResult$Invalidation": "The invalidation's information." } }, "InvalidationBatch": { "base": "An invalidation batch.", "refs": { "CreateInvalidationRequest$InvalidationBatch": "The batch information for the invalidation.", "Invalidation$InvalidationBatch": "The current invalidation information for the batch request." } }, "InvalidationList": { "base": "An invalidation list.", "refs": { "ListInvalidationsResult$InvalidationList": "Information about invalidation batches." } }, "InvalidationSummary": { "base": "Summary of an invalidation request.", "refs": { "InvalidationSummaryList$member": null } }, "InvalidationSummaryList": { "base": null, "refs": { "InvalidationList$Items": "A complex type that contains one InvalidationSummary element for each invalidation batch that was created by the current AWS account." } }, "ItemSelection": { "base": null, "refs": { "CookiePreference$Forward": "Use this element to specify whether you want CloudFront to forward cookies to the origin that is associated with this cache behavior. You can specify all, none or whitelist. If you choose All, CloudFront forwards all cookies regardless of how many your application uses." } }, "KeyPairIdList": { "base": null, "refs": { "KeyPairIds$Items": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber." } }, "KeyPairIds": { "base": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber.", "refs": { "Signer$KeyPairIds": "A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber." } }, "ListCloudFrontOriginAccessIdentitiesRequest": { "base": "The request to list origin access identities.", "refs": { } }, "ListCloudFrontOriginAccessIdentitiesResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListDistributionsByWebACLIdRequest": { "base": "The request to list distributions that are associated with a specified AWS WAF web ACL.", "refs": { } }, "ListDistributionsByWebACLIdResult": { "base": "The response to a request to list the distributions that are associated with a specified AWS WAF web ACL.", "refs": { } }, "ListDistributionsRequest": { "base": "The request to list your distributions.", "refs": { } }, "ListDistributionsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListInvalidationsRequest": { "base": "The request to list invalidations.", "refs": { } }, "ListInvalidationsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListStreamingDistributionsRequest": { "base": "The request to list your streaming distributions.", "refs": { } }, "ListStreamingDistributionsResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ListTagsForResourceRequest": { "base": "The request to list tags for a CloudFront resource.", "refs": { } }, "ListTagsForResourceResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "LocationList": { "base": null, "refs": { "GeoRestriction$Items": "A complex type that contains a Location element for each country in which you want CloudFront either to distribute your content (whitelist) or not distribute your content (blacklist). The Location element is a two-letter, uppercase country code for a country that you want to include in your blacklist or whitelist. Include one Location element for each country. CloudFront and MaxMind both use ISO 3166 country codes. For the current list of countries and the corresponding codes, see ISO 3166-1-alpha-2 code on the International Organization for Standardization website. You can also refer to the country list in the CloudFront console, which includes both country names and codes." } }, "LoggingConfig": { "base": "A complex type that controls whether access logs are written for the distribution.", "refs": { "DistributionConfig$Logging": "A complex type that controls whether access logs are written for the distribution." } }, "Method": { "base": null, "refs": { "MethodsList$member": null } }, "MethodsList": { "base": null, "refs": { "AllowedMethods$Items": "A complex type that contains the HTTP methods that you want CloudFront to process and forward to your origin.", "CachedMethods$Items": "A complex type that contains the HTTP methods that you want CloudFront to cache responses to." } }, "MinimumProtocolVersion": { "base": null, "refs": { "ViewerCertificate$MinimumProtocolVersion": "Specify the minimum version of the SSL protocol that you want CloudFront to use, SSLv3 or TLSv1, for HTTPS connections. CloudFront will serve your objects only to browsers or devices that support at least the SSL version that you specify. The TLSv1 protocol is more secure, so we recommend that you specify SSLv3 only if your users are using browsers or devices that don't support TLSv1. If you're using a custom certificate (if you specify a value for IAMCertificateId) and if you're using dedicated IP (if you specify vip for SSLSupportMethod), you can choose SSLv3 or TLSv1 as the MinimumProtocolVersion. If you're using a custom certificate (if you specify a value for IAMCertificateId) and if you're using SNI (if you specify sni-only for SSLSupportMethod), you must specify TLSv1 for MinimumProtocolVersion." } }, "MissingBody": { "base": "This operation requires a body. Ensure that the body is present and the Content-Type header is set.", "refs": { } }, "NoSuchCloudFrontOriginAccessIdentity": { "base": "The specified origin access identity does not exist.", "refs": { } }, "NoSuchDistribution": { "base": "The specified distribution does not exist.", "refs": { } }, "NoSuchInvalidation": { "base": "The specified invalidation does not exist.", "refs": { } }, "NoSuchOrigin": { "base": "No origin exists with the specified Origin Id.", "refs": { } }, "NoSuchResource": { "base": "The specified CloudFront resource does not exist.", "refs": { } }, "NoSuchStreamingDistribution": { "base": "The specified streaming distribution does not exist.", "refs": { } }, "Origin": { "base": "A complex type that describes the Amazon S3 bucket or the HTTP server (for example, a web server) from which CloudFront gets your files.You must create at least one origin.", "refs": { "OriginList$member": null } }, "OriginCustomHeader": { "base": "A complex type that contains information related to a Header", "refs": { "OriginCustomHeadersList$member": null } }, "OriginCustomHeadersList": { "base": null, "refs": { "CustomHeaders$Items": "A complex type that contains the custom headers for this Origin." } }, "OriginList": { "base": null, "refs": { "Origins$Items": "A complex type that contains origins for this distribution." } }, "OriginProtocolPolicy": { "base": null, "refs": { "CustomOriginConfig$OriginProtocolPolicy": "The origin protocol policy to apply to your origin." } }, "OriginSslProtocols": { "base": "A complex type that contains the list of SSL/TLS protocols that you want CloudFront to use when communicating with your origin over HTTPS.", "refs": { "CustomOriginConfig$OriginSslProtocols": "The SSL/TLS protocols that you want CloudFront to use when communicating with your origin over HTTPS." } }, "Origins": { "base": "A complex type that contains information about origins for this distribution.", "refs": { "DistributionConfig$Origins": "A complex type that contains information about origins for this distribution.", "DistributionSummary$Origins": "A complex type that contains information about origins for this distribution." } }, "PathList": { "base": null, "refs": { "Paths$Items": "A complex type that contains a list of the objects that you want to invalidate." } }, "Paths": { "base": "A complex type that contains information about the objects that you want to invalidate.", "refs": { "InvalidationBatch$Paths": "The path of the object to invalidate. The path is relative to the distribution and must begin with a slash (/). You must enclose each invalidation object with the Path element tags. If the path includes non-ASCII characters or unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters. Do not URL encode any other characters in the path, or CloudFront will not invalidate the old version of the updated object." } }, "PreconditionFailed": { "base": "The precondition given in one or more of the request-header fields evaluated to false.", "refs": { } }, "PriceClass": { "base": null, "refs": { "DistributionConfig$PriceClass": "A complex type that contains information about price class for this distribution.", "DistributionSummary$PriceClass": null, "StreamingDistributionConfig$PriceClass": "A complex type that contains information about price class for this streaming distribution.", "StreamingDistributionSummary$PriceClass": null } }, "QueryStringCacheKeys": { "base": null, "refs": { "ForwardedValues$QueryStringCacheKeys": "

        A complex type that contains information about the query string parameters that you want CloudFront to use for caching for this cache behavior.

        " } }, "QueryStringCacheKeysList": { "base": null, "refs": { "QueryStringCacheKeys$Items": "Optional: A list that contains the query string parameters that you want CloudFront to use as a basis for caching for this cache behavior. If Quantity is 0, you can omit Items." } }, "ResourceARN": { "base": null, "refs": { "ListTagsForResourceRequest$Resource": "An ARN of a CloudFront resource.", "TagResourceRequest$Resource": "An ARN of a CloudFront resource.", "UntagResourceRequest$Resource": "An ARN of a CloudFront resource." } }, "Restrictions": { "base": "A complex type that identifies ways in which you want to restrict distribution of your content.", "refs": { "DistributionConfig$Restrictions": null, "DistributionSummary$Restrictions": null } }, "S3Origin": { "base": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.", "refs": { "StreamingDistributionConfig$S3Origin": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.", "StreamingDistributionSummary$S3Origin": "A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution." } }, "S3OriginConfig": { "base": "A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead.", "refs": { "Origin$S3OriginConfig": "A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead." } }, "SSLSupportMethod": { "base": null, "refs": { "ViewerCertificate$SSLSupportMethod": "If you specify a value for IAMCertificateId, you must also specify how you want CloudFront to serve HTTPS requests. Valid values are vip and sni-only. If you specify vip, CloudFront uses dedicated IP addresses for your content and can respond to HTTPS requests from any viewer. However, you must request permission to use this feature, and you incur additional monthly charges. If you specify sni-only, CloudFront can only respond to HTTPS requests from viewers that support Server Name Indication (SNI). All modern browsers support SNI, but some browsers still in use don't support SNI. Do not specify a value for SSLSupportMethod if you specified true for CloudFrontDefaultCertificate." } }, "Signer": { "base": "A complex type that lists the AWS accounts that were included in the TrustedSigners complex type, as well as their active CloudFront key pair IDs, if any.", "refs": { "SignerList$member": null } }, "SignerList": { "base": null, "refs": { "ActiveTrustedSigners$Items": "A complex type that contains one Signer complex type for each unique trusted signer that is specified in the TrustedSigners complex type, including trusted signers in the default cache behavior and in all of the other cache behaviors." } }, "SslProtocol": { "base": null, "refs": { "SslProtocolsList$member": null } }, "SslProtocolsList": { "base": null, "refs": { "OriginSslProtocols$Items": "A complex type that contains one SslProtocol element for each SSL/TLS protocol that you want to allow CloudFront to use when establishing an HTTPS connection with this origin." } }, "StreamingDistribution": { "base": "A streaming distribution.", "refs": { "CreateStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information.", "CreateStreamingDistributionWithTagsResult$StreamingDistribution": "The streaming distribution's information.", "GetStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information.", "UpdateStreamingDistributionResult$StreamingDistribution": "The streaming distribution's information." } }, "StreamingDistributionAlreadyExists": { "base": null, "refs": { } }, "StreamingDistributionConfig": { "base": "The configuration for the streaming distribution.", "refs": { "CreateStreamingDistributionRequest$StreamingDistributionConfig": "The streaming distribution's configuration information.", "GetStreamingDistributionConfigResult$StreamingDistributionConfig": "The streaming distribution's configuration information.", "StreamingDistribution$StreamingDistributionConfig": "The current configuration information for the streaming distribution.", "StreamingDistributionConfigWithTags$StreamingDistributionConfig": "A streaming distribution Configuration.", "UpdateStreamingDistributionRequest$StreamingDistributionConfig": "The streaming distribution's configuration information." } }, "StreamingDistributionConfigWithTags": { "base": "A streaming distribution Configuration and a list of tags to be associated with the streaming distribution.", "refs": { "CreateStreamingDistributionWithTagsRequest$StreamingDistributionConfigWithTags": "The streaming distribution's configuration information." } }, "StreamingDistributionList": { "base": "A streaming distribution list.", "refs": { "ListStreamingDistributionsResult$StreamingDistributionList": "The StreamingDistributionList type." } }, "StreamingDistributionNotDisabled": { "base": null, "refs": { } }, "StreamingDistributionSummary": { "base": "A summary of the information for an Amazon CloudFront streaming distribution.", "refs": { "StreamingDistributionSummaryList$member": null } }, "StreamingDistributionSummaryList": { "base": null, "refs": { "StreamingDistributionList$Items": "A complex type that contains one StreamingDistributionSummary element for each distribution that was created by the current AWS account." } }, "StreamingLoggingConfig": { "base": "A complex type that controls whether access logs are written for this streaming distribution.", "refs": { "StreamingDistributionConfig$Logging": "A complex type that controls whether access logs are written for the streaming distribution." } }, "Tag": { "base": "A complex type that contains Tag key and Tag value.", "refs": { "TagList$member": null } }, "TagKey": { "base": "A string that contains Tag key. The string length should be between 1 and 128 characters. Valid characters include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.", "refs": { "Tag$Key": "A string that contains Tag key. The string length should be between 1 and 128 characters. Valid characters include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.", "TagKeyList$member": null } }, "TagKeyList": { "base": null, "refs": { "TagKeys$Items": "A complex type that contains Tag key elements" } }, "TagKeys": { "base": "A complex type that contains zero or more Tag elements.", "refs": { "UntagResourceRequest$TagKeys": "A complex type that contains zero or more Tag key elements." } }, "TagList": { "base": null, "refs": { "Tags$Items": "A complex type that contains Tag elements" } }, "TagResourceRequest": { "base": "The request to add tags to a CloudFront resource.", "refs": { } }, "TagValue": { "base": null, "refs": { "Tag$Value": "A string that contains an optional Tag value. The string length should be between 0 and 256 characters. Valid characters include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @." } }, "Tags": { "base": "A complex type that contains zero or more Tag elements.", "refs": { "DistributionConfigWithTags$Tags": "A complex type that contains zero or more Tag elements.", "ListTagsForResourceResult$Tags": "A complex type that contains zero or more Tag elements.", "StreamingDistributionConfigWithTags$Tags": "A complex type that contains zero or more Tag elements.", "TagResourceRequest$Tags": "A complex type that contains zero or more Tag elements." } }, "TooManyCacheBehaviors": { "base": "You cannot create anymore cache behaviors for the distribution.", "refs": { } }, "TooManyCertificates": { "base": "You cannot create anymore custom ssl certificates.", "refs": { } }, "TooManyCloudFrontOriginAccessIdentities": { "base": "Processing your request would cause you to exceed the maximum number of origin access identities allowed.", "refs": { } }, "TooManyCookieNamesInWhiteList": { "base": "Your request contains more cookie names in the whitelist than are allowed per cache behavior.", "refs": { } }, "TooManyDistributionCNAMEs": { "base": "Your request contains more CNAMEs than are allowed per distribution.", "refs": { } }, "TooManyDistributions": { "base": "Processing your request would cause you to exceed the maximum number of distributions allowed.", "refs": { } }, "TooManyHeadersInForwardedValues": { "base": null, "refs": { } }, "TooManyInvalidationsInProgress": { "base": "You have exceeded the maximum number of allowable InProgress invalidation batch requests, or invalidation objects.", "refs": { } }, "TooManyOriginCustomHeaders": { "base": null, "refs": { } }, "TooManyOrigins": { "base": "You cannot create anymore origins for the distribution.", "refs": { } }, "TooManyQueryStringParameters": { "base": null, "refs": { } }, "TooManyStreamingDistributionCNAMEs": { "base": null, "refs": { } }, "TooManyStreamingDistributions": { "base": "Processing your request would cause you to exceed the maximum number of streaming distributions allowed.", "refs": { } }, "TooManyTrustedSigners": { "base": "Your request contains more trusted signers than are allowed per distribution.", "refs": { } }, "TrustedSignerDoesNotExist": { "base": "One or more of your trusted signers do not exist.", "refs": { } }, "TrustedSigners": { "base": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "refs": { "CacheBehavior$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "DefaultCacheBehavior$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "StreamingDistributionConfig$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.", "StreamingDistributionSummary$TrustedSigners": "A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, go to Using a Signed URL to Serve Private Content in the Amazon CloudFront Developer Guide. If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution." } }, "UntagResourceRequest": { "base": "The request to remove tags from a CloudFront resource.", "refs": { } }, "UpdateCloudFrontOriginAccessIdentityRequest": { "base": "The request to update an origin access identity.", "refs": { } }, "UpdateCloudFrontOriginAccessIdentityResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "UpdateDistributionRequest": { "base": "The request to update a distribution.", "refs": { } }, "UpdateDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "UpdateStreamingDistributionRequest": { "base": "The request to update a streaming distribution.", "refs": { } }, "UpdateStreamingDistributionResult": { "base": "The returned result of the corresponding request.", "refs": { } }, "ViewerCertificate": { "base": "A complex type that contains information about viewer certificates for this distribution.", "refs": { "DistributionConfig$ViewerCertificate": null, "DistributionSummary$ViewerCertificate": null } }, "ViewerProtocolPolicy": { "base": null, "refs": { "CacheBehavior$ViewerProtocolPolicy": "Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. If you want CloudFront to allow end users to use any available protocol, specify allow-all. If you want CloudFront to require HTTPS, specify https. If you want CloudFront to respond to an HTTP request with an HTTP status code of 301 (Moved Permanently) and the HTTPS URL, specify redirect-to-https. The viewer then resubmits the request using the HTTPS URL.", "DefaultCacheBehavior$ViewerProtocolPolicy": "Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. If you want CloudFront to allow end users to use any available protocol, specify allow-all. If you want CloudFront to require HTTPS, specify https. If you want CloudFront to respond to an HTTP request with an HTTP status code of 301 (Moved Permanently) and the HTTPS URL, specify redirect-to-https. The viewer then resubmits the request using the HTTPS URL." } }, "boolean": { "base": null, "refs": { "ActiveTrustedSigners$Enabled": "Each active trusted signer.", "CacheBehavior$SmoothStreaming": "Indicates whether you want to distribute media files in Microsoft Smooth Streaming format using the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "CacheBehavior$Compress": "Whether you want CloudFront to automatically compress content for web requests that include Accept-Encoding: gzip in the request header. If so, specify true; if not, specify false. CloudFront compresses files larger than 1000 bytes and less than 1 megabyte for both Amazon S3 and custom origins. When a CloudFront edge location is unusually busy, some files might not be compressed. The value of the Content-Type header must be on the list of file types that CloudFront will compress. For the current list, see Serving Compressed Content in the Amazon CloudFront Developer Guide. If you configure CloudFront to compress content, CloudFront removes the ETag response header from the objects that it compresses. The ETag header indicates that the version in a CloudFront edge cache is identical to the version on the origin server, but after compression the two versions are no longer identical. As a result, for compressed objects, CloudFront can't use the ETag header to determine whether an expired object in the CloudFront edge cache is still the latest version.", "CloudFrontOriginAccessIdentityList$IsTruncated": "A flag that indicates whether more origin access identities remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more items in the list.", "DefaultCacheBehavior$SmoothStreaming": "Indicates whether you want to distribute media files in Microsoft Smooth Streaming format using the origin that is associated with this cache behavior. If so, specify true; if not, specify false.", "DefaultCacheBehavior$Compress": "Whether you want CloudFront to automatically compress content for web requests that include Accept-Encoding: gzip in the request header. If so, specify true; if not, specify false. CloudFront compresses files larger than 1000 bytes and less than 1 megabyte for both Amazon S3 and custom origins. When a CloudFront edge location is unusually busy, some files might not be compressed. The value of the Content-Type header must be on the list of file types that CloudFront will compress. For the current list, see Serving Compressed Content in the Amazon CloudFront Developer Guide. If you configure CloudFront to compress content, CloudFront removes the ETag response header from the objects that it compresses. The ETag header indicates that the version in a CloudFront edge cache is identical to the version on the origin server, but after compression the two versions are no longer identical. As a result, for compressed objects, CloudFront can't use the ETag header to determine whether an expired object in the CloudFront edge cache is still the latest version.", "DistributionConfig$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "DistributionList$IsTruncated": "A flag that indicates whether more distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.", "DistributionSummary$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "ForwardedValues$QueryString": "

        Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior and cache based on the query string parameters. CloudFront behavior depends on the value of QueryString and on the values that you specify for QueryStringCacheKeys, if any:

        • If you specify true for QueryString and you don't specify any values for QueryStringCacheKeys, CloudFront forwards all query string parameters to the origin and caches based on all query string parameters. Depending on how many query string parameters and values you have, this can adversely affect performance because CloudFront must forward more requests to the origin.
        • If you specify true for QueryString and you specify one or more values for QueryStringCacheKeys, CloudFront forwards all query string parameters to the origin, but it only caches based on the query string parameters that you specify.
        • If you specify false for QueryString, CloudFront doesn't forward any query string parameters to the origin, and doesn't cache based on query string parameters.
        ", "InvalidationList$IsTruncated": "A flag that indicates whether more invalidation batch requests remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more invalidation batches in the list.", "LoggingConfig$Enabled": "Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you do not want to enable logging when you create a distribution or if you want to disable logging for an existing distribution, specify false for Enabled, and specify empty Bucket and Prefix elements. If you specify false for Enabled but you specify values for Bucket, prefix and IncludeCookies, the values are automatically deleted.", "LoggingConfig$IncludeCookies": "Specifies whether you want CloudFront to include cookies in access logs, specify true for IncludeCookies. If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you do not want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify false for IncludeCookies.", "StreamingDistributionConfig$Enabled": "Whether the streaming distribution is enabled to accept end user requests for content.", "StreamingDistributionList$IsTruncated": "A flag that indicates whether more streaming distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.", "StreamingDistributionSummary$Enabled": "Whether the distribution is enabled to accept end user requests for content.", "StreamingLoggingConfig$Enabled": "Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you do not want to enable logging when you create a streaming distribution or if you want to disable logging for an existing streaming distribution, specify false for Enabled, and specify empty Bucket and Prefix elements. If you specify false for Enabled but you specify values for Bucket and Prefix, the values are automatically deleted.", "TrustedSigners$Enabled": "Specifies whether you want to require end users to use signed URLs to access the files specified by PathPattern and TargetOriginId.", "ViewerCertificate$CloudFrontDefaultCertificate": "If you want viewers to use HTTPS to request your objects and you're using the CloudFront domain name of your distribution in your object URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), set to true. Omit this value if you are setting an ACMCertificateArn or IAMCertificateId." } }, "integer": { "base": null, "refs": { "ActiveTrustedSigners$Quantity": "The number of unique trusted signers included in all cache behaviors. For example, if three cache behaviors all list the same three AWS accounts, the value of Quantity for ActiveTrustedSigners will be 3.", "Aliases$Quantity": "The number of CNAMEs, if any, for this distribution.", "AllowedMethods$Quantity": "The number of HTTP methods that you want CloudFront to forward to your origin. Valid values are 2 (for GET and HEAD requests), 3 (for GET, HEAD and OPTIONS requests) and 7 (for GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests).", "CacheBehaviors$Quantity": "The number of cache behaviors for this distribution.", "CachedMethods$Quantity": "The number of HTTP methods for which you want CloudFront to cache responses. Valid values are 2 (for caching responses to GET and HEAD requests) and 3 (for caching responses to GET, HEAD, and OPTIONS requests).", "CloudFrontOriginAccessIdentityList$MaxItems": "The value you provided for the MaxItems request parameter.", "CloudFrontOriginAccessIdentityList$Quantity": "The number of CloudFront origin access identities that were created by the current AWS account.", "CookieNames$Quantity": "The number of whitelisted cookies for this cache behavior.", "CustomErrorResponse$ErrorCode": "The 4xx or 5xx HTTP status code that you want to customize. For a list of HTTP status codes that you can customize, see CloudFront documentation.", "CustomErrorResponses$Quantity": "The number of custom error responses for this distribution.", "CustomHeaders$Quantity": "The number of custom headers for this origin.", "CustomOriginConfig$HTTPPort": "The HTTP port the custom origin listens on.", "CustomOriginConfig$HTTPSPort": "The HTTPS port the custom origin listens on.", "Distribution$InProgressInvalidationBatches": "The number of invalidation batches currently in progress.", "DistributionList$MaxItems": "The value you provided for the MaxItems request parameter.", "DistributionList$Quantity": "The number of distributions that were created by the current AWS account.", "GeoRestriction$Quantity": "When geo restriction is enabled, this is the number of countries in your whitelist or blacklist. Otherwise, when it is not enabled, Quantity is 0, and you can omit Items.", "Headers$Quantity": "The number of different headers that you want CloudFront to forward to the origin and to vary on for this cache behavior. The maximum number of headers that you can specify by name is 10. If you want CloudFront to forward all headers to the origin and vary on all of them, specify 1 for Quantity and * for Name. If you don't want CloudFront to forward any additional headers to the origin or to vary on any headers, specify 0 for Quantity and omit Items.", "InvalidationList$MaxItems": "The value you provided for the MaxItems request parameter.", "InvalidationList$Quantity": "The number of invalidation batches that were created by the current AWS account.", "KeyPairIds$Quantity": "The number of active CloudFront key pairs for AwsAccountNumber.", "OriginSslProtocols$Quantity": "The number of SSL/TLS protocols that you want to allow CloudFront to use when establishing an HTTPS connection with this origin.", "Origins$Quantity": "The number of origins for this distribution.", "Paths$Quantity": "The number of objects that you want to invalidate.", "QueryStringCacheKeys$Quantity": "The number of whitelisted query string parameters for this cache behavior.", "StreamingDistributionList$MaxItems": "The value you provided for the MaxItems request parameter.", "StreamingDistributionList$Quantity": "The number of streaming distributions that were created by the current AWS account.", "TrustedSigners$Quantity": "The number of trusted signers for this cache behavior." } }, "long": { "base": null, "refs": { "CacheBehavior$MinTTL": "The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CacheBehavior$DefaultTTL": "If you don't configure your origin to add a Cache-Control max-age directive or an Expires header, DefaultTTL is the default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CacheBehavior$MaxTTL": "The maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "CustomErrorResponse$ErrorCachingMinTTL": "The minimum amount of time you want HTTP error codes to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. You can specify a value from 0 to 31,536,000.", "DefaultCacheBehavior$MinTTL": "The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "DefaultCacheBehavior$DefaultTTL": "If you don't configure your origin to add a Cache-Control max-age directive or an Expires header, DefaultTTL is the default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years).", "DefaultCacheBehavior$MaxTTL": "The maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000 seconds (100 years)." } }, "string": { "base": null, "refs": { "AccessDenied$Message": null, "AliasList$member": null, "AwsAccountNumberList$member": null, "BatchTooLarge$Message": null, "CNAMEAlreadyExists$Message": null, "CacheBehavior$PathPattern": "The pattern (for example, images/*.jpg) that specifies which requests you want this cache behavior to apply to. When CloudFront receives an end-user request, the requested path is compared with path patterns in the order in which cache behaviors are listed in the distribution. The path pattern for the default cache behavior is * and cannot be changed. If the request for an object does not match the path pattern for any cache behaviors, CloudFront applies the behavior in the default cache behavior.", "CacheBehavior$TargetOriginId": "The value of ID for the origin that you want CloudFront to route requests to when a request matches the path pattern either for a cache behavior or for the default cache behavior.", "CloudFrontOriginAccessIdentity$Id": "The ID for the origin access identity. For example: E74FTE3AJFJ256A.", "CloudFrontOriginAccessIdentity$S3CanonicalUserId": "The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin access identity read permission to an object in Amazon S3.", "CloudFrontOriginAccessIdentityAlreadyExists$Message": null, "CloudFrontOriginAccessIdentityConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the CloudFrontOriginAccessIdentityConfig object), a new origin access identity is created. If the CallerReference is a value you already sent in a previous request to create an identity, and the content of the CloudFrontOriginAccessIdentityConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create an identity but the content of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists error.", "CloudFrontOriginAccessIdentityConfig$Comment": "Any comments you want to include about the origin access identity.", "CloudFrontOriginAccessIdentityInUse$Message": null, "CloudFrontOriginAccessIdentityList$Marker": "The value you provided for the Marker request parameter.", "CloudFrontOriginAccessIdentityList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your origin access identities where they left off.", "CloudFrontOriginAccessIdentitySummary$Id": "The ID for the origin access identity. For example: E74FTE3AJFJ256A.", "CloudFrontOriginAccessIdentitySummary$S3CanonicalUserId": "The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin access identity read permission to an object in Amazon S3.", "CloudFrontOriginAccessIdentitySummary$Comment": "The comment for this origin access identity, as originally specified when created.", "CookieNameList$member": null, "CreateCloudFrontOriginAccessIdentityResult$Location": "The fully qualified URI of the new origin access identity just created. For example: https://cloudfront.amazonaws.com/2010-11-01/origin-access-identity/cloudfront/E74FTE3AJFJ256A.", "CreateCloudFrontOriginAccessIdentityResult$ETag": "The current version of the origin access identity created.", "CreateDistributionResult$Location": "The fully qualified URI of the new distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5.", "CreateDistributionResult$ETag": "The current version of the distribution created.", "CreateDistributionWithTagsResult$Location": "The fully qualified URI of the new distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5.", "CreateDistributionWithTagsResult$ETag": "The current version of the distribution created.", "CreateInvalidationRequest$DistributionId": "The distribution's id.", "CreateInvalidationResult$Location": "The fully qualified URI of the distribution and invalidation batch request, including the Invalidation ID.", "CreateStreamingDistributionResult$Location": "The fully qualified URI of the new streaming distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8.", "CreateStreamingDistributionResult$ETag": "The current version of the streaming distribution created.", "CreateStreamingDistributionWithTagsResult$Location": "The fully qualified URI of the new streaming distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8.", "CreateStreamingDistributionWithTagsResult$ETag": "The current version of the streaming distribution created.", "CustomErrorResponse$ResponsePagePath": "The path of the custom error page (for example, /custom_404.html). The path is relative to the distribution and must begin with a slash (/). If the path includes any non-ASCII characters or unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters. Do not URL encode any other characters in the path, or CloudFront will not return the custom error page to the viewer.", "CustomErrorResponse$ResponseCode": "The HTTP status code that you want CloudFront to return with the custom error page to the viewer. For a list of HTTP status codes that you can replace, see CloudFront Documentation.", "DefaultCacheBehavior$TargetOriginId": "The value of ID for the origin that you want CloudFront to route requests to when a request matches the path pattern either for a cache behavior or for the default cache behavior.", "DeleteCloudFrontOriginAccessIdentityRequest$Id": "The origin access identity's id.", "DeleteCloudFrontOriginAccessIdentityRequest$IfMatch": "The value of the ETag header you received from a previous GET or PUT request. For example: E2QWRUHAPOMQZL.", "DeleteDistributionRequest$Id": "The distribution id.", "DeleteDistributionRequest$IfMatch": "The value of the ETag header you received when you disabled the distribution. For example: E2QWRUHAPOMQZL.", "DeleteStreamingDistributionRequest$Id": "The distribution id.", "DeleteStreamingDistributionRequest$IfMatch": "The value of the ETag header you received when you disabled the streaming distribution. For example: E2QWRUHAPOMQZL.", "Distribution$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "Distribution$ARN": "The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5, where 123456789012 is your AWS account Id.", "Distribution$Status": "This response element indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "Distribution$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "DistributionAlreadyExists$Message": null, "DistributionConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the DistributionConfig object), a new distribution is created. If the CallerReference is a value you already sent in a previous request to create a distribution, and the content of the DistributionConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a distribution but the content of the DistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.", "DistributionConfig$DefaultRootObject": "The object that you want CloudFront to return (for example, index.html) when an end user requests the root URL for your distribution (http://www.example.com) instead of an object in your distribution (http://www.example.com/index.html). Specifying a default root object avoids exposing the contents of your distribution. If you don't want to specify a default root object when you create a distribution, include an empty DefaultRootObject element. To delete the default root object from an existing distribution, update the distribution configuration and include an empty DefaultRootObject element. To replace the default root object, update the distribution configuration and specify the new object.", "DistributionConfig$Comment": "Any comments you want to include about the distribution.", "DistributionConfig$WebACLId": "(Optional) If you're using AWS WAF to filter CloudFront requests, the Id of the AWS WAF web ACL that is associated with the distribution.", "DistributionList$Marker": "The value you provided for the Marker request parameter.", "DistributionList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your distributions where they left off.", "DistributionNotDisabled$Message": null, "DistributionSummary$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "DistributionSummary$ARN": "The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5, where 123456789012 is your AWS account Id.", "DistributionSummary$Status": "This response element indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "DistributionSummary$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "DistributionSummary$Comment": "The comment originally specified when this distribution was created.", "DistributionSummary$WebACLId": "The Web ACL Id (if any) associated with the distribution.", "GetCloudFrontOriginAccessIdentityConfigRequest$Id": "The identity's id.", "GetCloudFrontOriginAccessIdentityConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetCloudFrontOriginAccessIdentityRequest$Id": "The identity's id.", "GetCloudFrontOriginAccessIdentityResult$ETag": "The current version of the origin access identity's information. For example: E2QWRUHAPOMQZL.", "GetDistributionConfigRequest$Id": "The distribution's id.", "GetDistributionConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetDistributionRequest$Id": "The distribution's id.", "GetDistributionResult$ETag": "The current version of the distribution's information. For example: E2QWRUHAPOMQZL.", "GetInvalidationRequest$DistributionId": "The distribution's id.", "GetInvalidationRequest$Id": "The invalidation's id.", "GetStreamingDistributionConfigRequest$Id": "The streaming distribution's id.", "GetStreamingDistributionConfigResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "GetStreamingDistributionRequest$Id": "The streaming distribution's id.", "GetStreamingDistributionResult$ETag": "The current version of the streaming distribution's information. For example: E2QWRUHAPOMQZL.", "HeaderList$member": null, "IllegalUpdate$Message": null, "InconsistentQuantities$Message": null, "InvalidArgument$Message": null, "InvalidDefaultRootObject$Message": null, "InvalidErrorCode$Message": null, "InvalidForwardCookies$Message": null, "InvalidGeoRestrictionParameter$Message": null, "InvalidHeadersForS3Origin$Message": null, "InvalidIfMatchVersion$Message": null, "InvalidLocationCode$Message": null, "InvalidMinimumProtocolVersion$Message": null, "InvalidOrigin$Message": null, "InvalidOriginAccessIdentity$Message": null, "InvalidProtocolSettings$Message": null, "InvalidQueryStringParameters$Message": null, "InvalidRelativePath$Message": null, "InvalidRequiredProtocol$Message": null, "InvalidResponseCode$Message": null, "InvalidTTLOrder$Message": null, "InvalidTagging$Message": null, "InvalidViewerCertificate$Message": null, "InvalidWebACLId$Message": null, "Invalidation$Id": "The identifier for the invalidation request. For example: IDFDVBD632BHDS5.", "Invalidation$Status": "The status of the invalidation request. When the invalidation batch is finished, the status is Completed.", "InvalidationBatch$CallerReference": "A unique name that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the Path object), a new distribution is created. If the CallerReference is a value you already sent in a previous request to create an invalidation batch, and the content of each Path element is identical to the original request, the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a distribution but the content of any Path is different from the original request, CloudFront returns an InvalidationBatchAlreadyExists error.", "InvalidationList$Marker": "The value you provided for the Marker request parameter.", "InvalidationList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your invalidation batches where they left off.", "InvalidationSummary$Id": "The unique ID for an invalidation request.", "InvalidationSummary$Status": "The status of an invalidation request.", "KeyPairIdList$member": null, "ListCloudFrontOriginAccessIdentitiesRequest$Marker": "Use this when paginating results to indicate where to begin in your list of origin access identities. The results include identities in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last identity on that page).", "ListCloudFrontOriginAccessIdentitiesRequest$MaxItems": "The maximum number of origin access identities you want in the response body.", "ListDistributionsByWebACLIdRequest$Marker": "Use Marker and MaxItems to control pagination of results. If you have more than MaxItems distributions that satisfy the request, the response includes a NextMarker element. To get the next page of results, submit another request. For the value of Marker, specify the value of NextMarker from the last response. (For the first request, omit Marker.)", "ListDistributionsByWebACLIdRequest$MaxItems": "The maximum number of distributions that you want CloudFront to return in the response body. The maximum and default values are both 100.", "ListDistributionsByWebACLIdRequest$WebACLId": "The Id of the AWS WAF web ACL for which you want to list the associated distributions. If you specify \"null\" for the Id, the request returns a list of the distributions that aren't associated with a web ACL.", "ListDistributionsRequest$Marker": "Use Marker and MaxItems to control pagination of results. If you have more than MaxItems distributions that satisfy the request, the response includes a NextMarker element. To get the next page of results, submit another request. For the value of Marker, specify the value of NextMarker from the last response. (For the first request, omit Marker.)", "ListDistributionsRequest$MaxItems": "The maximum number of distributions that you want CloudFront to return in the response body. The maximum and default values are both 100.", "ListInvalidationsRequest$DistributionId": "The distribution's id.", "ListInvalidationsRequest$Marker": "Use this parameter when paginating results to indicate where to begin in your list of invalidation batches. Because the results are returned in decreasing order from most recent to oldest, the most recent results are on the first page, the second page will contain earlier results, and so on. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response. This value is the same as the ID of the last invalidation batch on that page.", "ListInvalidationsRequest$MaxItems": "The maximum number of invalidation batches you want in the response body.", "ListStreamingDistributionsRequest$Marker": "Use this when paginating results to indicate where to begin in your list of streaming distributions. The results include distributions in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last distribution on that page).", "ListStreamingDistributionsRequest$MaxItems": "The maximum number of streaming distributions you want in the response body.", "LocationList$member": null, "LoggingConfig$Bucket": "The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.", "LoggingConfig$Prefix": "An optional string that you want CloudFront to prefix to the access log filenames for this distribution, for example, myprefix/. If you want to enable logging, but you do not want to specify a prefix, you still must include an empty Prefix element in the Logging element.", "MissingBody$Message": null, "NoSuchCloudFrontOriginAccessIdentity$Message": null, "NoSuchDistribution$Message": null, "NoSuchInvalidation$Message": null, "NoSuchOrigin$Message": null, "NoSuchResource$Message": null, "NoSuchStreamingDistribution$Message": null, "Origin$Id": "A unique identifier for the origin. The value of Id must be unique within the distribution. You use the value of Id when you create a cache behavior. The Id identifies the origin that CloudFront routes a request to when the request matches the path pattern for that cache behavior.", "Origin$DomainName": "Amazon S3 origins: The DNS name of the Amazon S3 bucket from which you want CloudFront to get objects for this origin, for example, myawsbucket.s3.amazonaws.com. Custom origins: The DNS domain name for the HTTP server from which you want CloudFront to get objects for this origin, for example, www.example.com.", "Origin$OriginPath": "An optional element that causes CloudFront to request your content from a directory in your Amazon S3 bucket or your custom origin. When you include the OriginPath element, specify the directory name, beginning with a /. CloudFront appends the directory name to the value of DomainName.", "OriginCustomHeader$HeaderName": "The header's name.", "OriginCustomHeader$HeaderValue": "The header's value.", "PathList$member": null, "PreconditionFailed$Message": null, "QueryStringCacheKeysList$member": null, "S3Origin$DomainName": "The DNS name of the S3 origin.", "S3Origin$OriginAccessIdentity": "Your S3 origin's origin access identity.", "S3OriginConfig$OriginAccessIdentity": "The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that end users can only access objects in an Amazon S3 bucket through CloudFront. If you want end users to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty OriginAccessIdentity element. To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty OriginAccessIdentity element. To replace the origin access identity, update the distribution configuration and specify the new origin access identity. Use the format origin-access-identity/cloudfront/Id where Id is the value that CloudFront returned in the Id element when you created the origin access identity.", "Signer$AwsAccountNumber": "Specifies an AWS account that can create signed URLs. Values: self, which indicates that the AWS account that was used to create the distribution can created signed URLs, or an AWS account number. Omit the dashes in the account number.", "StreamingDistribution$Id": "The identifier for the streaming distribution. For example: EGTXBD79H29TRA8.", "StreamingDistribution$ARN": "The ARN (Amazon Resource Name) for the streaming distribution. For example: arn:aws:cloudfront::123456789012:streaming-distribution/EDFDVBD632BHDS5, where 123456789012 is your AWS account Id.", "StreamingDistribution$Status": "The current status of the streaming distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "StreamingDistribution$DomainName": "The domain name corresponding to the streaming distribution. For example: s5c39gqb8ow64r.cloudfront.net.", "StreamingDistributionAlreadyExists$Message": null, "StreamingDistributionConfig$CallerReference": "A unique number that ensures the request can't be replayed. If the CallerReference is new (no matter the content of the StreamingDistributionConfig object), a new streaming distribution is created. If the CallerReference is a value you already sent in a previous request to create a streaming distribution, and the content of the StreamingDistributionConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a streaming distribution but the content of the StreamingDistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.", "StreamingDistributionConfig$Comment": "Any comments you want to include about the streaming distribution.", "StreamingDistributionList$Marker": "The value you provided for the Marker request parameter.", "StreamingDistributionList$NextMarker": "If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your streaming distributions where they left off.", "StreamingDistributionNotDisabled$Message": null, "StreamingDistributionSummary$Id": "The identifier for the distribution. For example: EDFDVBD632BHDS5.", "StreamingDistributionSummary$ARN": "The ARN (Amazon Resource Name) for the streaming distribution. For example: arn:aws:cloudfront::123456789012:streaming-distribution/EDFDVBD632BHDS5, where 123456789012 is your AWS account Id.", "StreamingDistributionSummary$Status": "Indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.", "StreamingDistributionSummary$DomainName": "The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.", "StreamingDistributionSummary$Comment": "The comment originally specified when this distribution was created.", "StreamingLoggingConfig$Bucket": "The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.", "StreamingLoggingConfig$Prefix": "An optional string that you want CloudFront to prefix to the access log filenames for this streaming distribution, for example, myprefix/. If you want to enable logging, but you do not want to specify a prefix, you still must include an empty Prefix element in the Logging element.", "TooManyCacheBehaviors$Message": null, "TooManyCertificates$Message": null, "TooManyCloudFrontOriginAccessIdentities$Message": null, "TooManyCookieNamesInWhiteList$Message": null, "TooManyDistributionCNAMEs$Message": null, "TooManyDistributions$Message": null, "TooManyHeadersInForwardedValues$Message": null, "TooManyInvalidationsInProgress$Message": null, "TooManyOriginCustomHeaders$Message": null, "TooManyOrigins$Message": null, "TooManyQueryStringParameters$Message": null, "TooManyStreamingDistributionCNAMEs$Message": null, "TooManyStreamingDistributions$Message": null, "TooManyTrustedSigners$Message": null, "TrustedSignerDoesNotExist$Message": null, "UpdateCloudFrontOriginAccessIdentityRequest$Id": "The identity's id.", "UpdateCloudFrontOriginAccessIdentityRequest$IfMatch": "The value of the ETag header you received when retrieving the identity's configuration. For example: E2QWRUHAPOMQZL.", "UpdateCloudFrontOriginAccessIdentityResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "UpdateDistributionRequest$Id": "The distribution's id.", "UpdateDistributionRequest$IfMatch": "The value of the ETag header you received when retrieving the distribution's configuration. For example: E2QWRUHAPOMQZL.", "UpdateDistributionResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "UpdateStreamingDistributionRequest$Id": "The streaming distribution's id.", "UpdateStreamingDistributionRequest$IfMatch": "The value of the ETag header you received when retrieving the streaming distribution's configuration. For example: E2QWRUHAPOMQZL.", "UpdateStreamingDistributionResult$ETag": "The current version of the configuration. For example: E2QWRUHAPOMQZL.", "ViewerCertificate$IAMCertificateId": "If you want viewers to use HTTPS to request your objects and you're using an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), specify the IAM certificate identifier of the custom viewer certificate for this distribution. Specify either this value, ACMCertificateArn, or CloudFrontDefaultCertificate.", "ViewerCertificate$ACMCertificateArn": "If you want viewers to use HTTPS to request your objects and you're using an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), specify the ACM certificate ARN of the custom viewer certificate for this distribution. Specify either this value, IAMCertificateId, or CloudFrontDefaultCertificate.", "ViewerCertificate$Certificate": "Note: this field is deprecated. Please use one of [ACMCertificateArn, IAMCertificateId, CloudFrontDefaultCertificate]." } }, "timestamp": { "base": null, "refs": { "Distribution$LastModifiedTime": "The date and time the distribution was last modified.", "DistributionSummary$LastModifiedTime": "The date and time the distribution was last modified.", "Invalidation$CreateTime": "The date and time the invalidation request was first made.", "InvalidationSummary$CreateTime": null, "StreamingDistribution$LastModifiedTime": "The date and time the distribution was last modified.", "StreamingDistributionSummary$LastModifiedTime": "The date and time the distribution was last modified." } } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-09-07/examples-1.json000077500000000000000000000000541300374646400240740ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-09-07/paginators-1.json000077500000000000000000000021461300374646400244310ustar00rootroot00000000000000{ "pagination": { "ListCloudFrontOriginAccessIdentities": { "input_token": "Marker", "output_token": "CloudFrontOriginAccessIdentityList.NextMarker", "limit_key": "MaxItems", "more_results": "CloudFrontOriginAccessIdentityList.IsTruncated", "result_key": "CloudFrontOriginAccessIdentityList.Items" }, "ListDistributions": { "input_token": "Marker", "output_token": "DistributionList.NextMarker", "limit_key": "MaxItems", "more_results": "DistributionList.IsTruncated", "result_key": "DistributionList.Items" }, "ListInvalidations": { "input_token": "Marker", "output_token": "InvalidationList.NextMarker", "limit_key": "MaxItems", "more_results": "InvalidationList.IsTruncated", "result_key": "InvalidationList.Items" }, "ListStreamingDistributions": { "input_token": "Marker", "output_token": "StreamingDistributionList.NextMarker", "limit_key": "MaxItems", "more_results": "StreamingDistributionList.IsTruncated", "result_key": "StreamingDistributionList.Items" } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-09-07/waiters-2.json000077500000000000000000000022401300374646400237340ustar00rootroot00000000000000{ "version": 2, "waiters": { "DistributionDeployed": { "delay": 60, "operation": "GetDistribution", "maxAttempts": 25, "description": "Wait until a distribution is deployed.", "acceptors": [ { "expected": "Deployed", "matcher": "path", "state": "success", "argument": "Distribution.Status" } ] }, "InvalidationCompleted": { "delay": 20, "operation": "GetInvalidation", "maxAttempts": 30, "description": "Wait until an invalidation has completed.", "acceptors": [ { "expected": "Completed", "matcher": "path", "state": "success", "argument": "Invalidation.Status" } ] }, "StreamingDistributionDeployed": { "delay": 60, "operation": "GetStreamingDistribution", "maxAttempts": 25, "description": "Wait until a streaming distribution is deployed.", "acceptors": [ { "expected": "Deployed", "matcher": "path", "state": "success", "argument": "StreamingDistribution.Status" } ] } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-09-29/000077500000000000000000000000001300374646400212275ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudfront/2016-09-29/api-2.json000066400000000000000000002121251300374646400230350ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2016-09-29", "endpointPrefix":"cloudfront", "globalEndpoint":"cloudfront.amazonaws.com", "protocol":"rest-xml", "serviceAbbreviation":"CloudFront", "serviceFullName":"Amazon CloudFront", "signatureVersion":"v4" }, "operations":{ "CreateCloudFrontOriginAccessIdentity":{ "name":"CreateCloudFrontOriginAccessIdentity2016_09_29", "http":{ "method":"POST", "requestUri":"/2016-09-29/origin-access-identity/cloudfront", "responseCode":201 }, "input":{"shape":"CreateCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"CreateCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"CloudFrontOriginAccessIdentityAlreadyExists"}, {"shape":"MissingBody"}, {"shape":"TooManyCloudFrontOriginAccessIdentities"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "CreateDistribution":{ "name":"CreateDistribution2016_09_29", "http":{ "method":"POST", "requestUri":"/2016-09-29/distribution", "responseCode":201 }, "input":{"shape":"CreateDistributionRequest"}, "output":{"shape":"CreateDistributionResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"DistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InvalidViewerCertificate"}, {"shape":"InvalidMinimumProtocolVersion"}, {"shape":"MissingBody"}, {"shape":"TooManyDistributionCNAMEs"}, {"shape":"TooManyDistributions"}, {"shape":"InvalidDefaultRootObject"}, {"shape":"InvalidRelativePath"}, {"shape":"InvalidErrorCode"}, {"shape":"InvalidResponseCode"}, {"shape":"InvalidArgument"}, {"shape":"InvalidRequiredProtocol"}, {"shape":"NoSuchOrigin"}, {"shape":"TooManyOrigins"}, {"shape":"TooManyCacheBehaviors"}, {"shape":"TooManyCookieNamesInWhiteList"}, {"shape":"InvalidForwardCookies"}, {"shape":"TooManyHeadersInForwardedValues"}, {"shape":"InvalidHeadersForS3Origin"}, {"shape":"InconsistentQuantities"}, {"shape":"TooManyCertificates"}, {"shape":"InvalidLocationCode"}, {"shape":"InvalidGeoRestrictionParameter"}, {"shape":"InvalidProtocolSettings"}, {"shape":"InvalidTTLOrder"}, {"shape":"InvalidWebACLId"}, {"shape":"TooManyOriginCustomHeaders"}, {"shape":"TooManyQueryStringParameters"}, {"shape":"InvalidQueryStringParameters"} ] }, "CreateDistributionWithTags":{ "name":"CreateDistributionWithTags2016_09_29", "http":{ "method":"POST", "requestUri":"/2016-09-29/distribution?WithTags", "responseCode":201 }, "input":{"shape":"CreateDistributionWithTagsRequest"}, "output":{"shape":"CreateDistributionWithTagsResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"DistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InvalidViewerCertificate"}, {"shape":"InvalidMinimumProtocolVersion"}, {"shape":"MissingBody"}, {"shape":"TooManyDistributionCNAMEs"}, {"shape":"TooManyDistributions"}, {"shape":"InvalidDefaultRootObject"}, {"shape":"InvalidRelativePath"}, {"shape":"InvalidErrorCode"}, {"shape":"InvalidResponseCode"}, {"shape":"InvalidArgument"}, {"shape":"InvalidRequiredProtocol"}, {"shape":"NoSuchOrigin"}, {"shape":"TooManyOrigins"}, {"shape":"TooManyCacheBehaviors"}, {"shape":"TooManyCookieNamesInWhiteList"}, {"shape":"InvalidForwardCookies"}, {"shape":"TooManyHeadersInForwardedValues"}, {"shape":"InvalidHeadersForS3Origin"}, {"shape":"InconsistentQuantities"}, {"shape":"TooManyCertificates"}, {"shape":"InvalidLocationCode"}, {"shape":"InvalidGeoRestrictionParameter"}, {"shape":"InvalidProtocolSettings"}, {"shape":"InvalidTTLOrder"}, {"shape":"InvalidWebACLId"}, {"shape":"TooManyOriginCustomHeaders"}, {"shape":"InvalidTagging"}, {"shape":"TooManyQueryStringParameters"}, {"shape":"InvalidQueryStringParameters"} ] }, "CreateInvalidation":{ "name":"CreateInvalidation2016_09_29", "http":{ "method":"POST", "requestUri":"/2016-09-29/distribution/{DistributionId}/invalidation", "responseCode":201 }, "input":{"shape":"CreateInvalidationRequest"}, "output":{"shape":"CreateInvalidationResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"MissingBody"}, {"shape":"InvalidArgument"}, {"shape":"NoSuchDistribution"}, {"shape":"BatchTooLarge"}, {"shape":"TooManyInvalidationsInProgress"}, {"shape":"InconsistentQuantities"} ] }, "CreateStreamingDistribution":{ "name":"CreateStreamingDistribution2016_09_29", "http":{ "method":"POST", "requestUri":"/2016-09-29/streaming-distribution", "responseCode":201 }, "input":{"shape":"CreateStreamingDistributionRequest"}, "output":{"shape":"CreateStreamingDistributionResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"StreamingDistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"MissingBody"}, {"shape":"TooManyStreamingDistributionCNAMEs"}, {"shape":"TooManyStreamingDistributions"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "CreateStreamingDistributionWithTags":{ "name":"CreateStreamingDistributionWithTags2016_09_29", "http":{ "method":"POST", "requestUri":"/2016-09-29/streaming-distribution?WithTags", "responseCode":201 }, "input":{"shape":"CreateStreamingDistributionWithTagsRequest"}, "output":{"shape":"CreateStreamingDistributionWithTagsResult"}, "errors":[ {"shape":"CNAMEAlreadyExists"}, {"shape":"StreamingDistributionAlreadyExists"}, {"shape":"InvalidOrigin"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"AccessDenied"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"MissingBody"}, {"shape":"TooManyStreamingDistributionCNAMEs"}, {"shape":"TooManyStreamingDistributions"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"}, {"shape":"InvalidTagging"} ] }, "DeleteCloudFrontOriginAccessIdentity":{ "name":"DeleteCloudFrontOriginAccessIdentity2016_09_29", "http":{ "method":"DELETE", "requestUri":"/2016-09-29/origin-access-identity/cloudfront/{Id}", "responseCode":204 }, "input":{"shape":"DeleteCloudFrontOriginAccessIdentityRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"PreconditionFailed"}, {"shape":"CloudFrontOriginAccessIdentityInUse"} ] }, "DeleteDistribution":{ "name":"DeleteDistribution2016_09_29", "http":{ "method":"DELETE", "requestUri":"/2016-09-29/distribution/{Id}", "responseCode":204 }, "input":{"shape":"DeleteDistributionRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"DistributionNotDisabled"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchDistribution"}, {"shape":"PreconditionFailed"} ] }, "DeleteStreamingDistribution":{ "name":"DeleteStreamingDistribution2016_09_29", "http":{ "method":"DELETE", "requestUri":"/2016-09-29/streaming-distribution/{Id}", "responseCode":204 }, "input":{"shape":"DeleteStreamingDistributionRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"StreamingDistributionNotDisabled"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"NoSuchStreamingDistribution"}, {"shape":"PreconditionFailed"} ] }, "GetCloudFrontOriginAccessIdentity":{ "name":"GetCloudFrontOriginAccessIdentity2016_09_29", "http":{ "method":"GET", "requestUri":"/2016-09-29/origin-access-identity/cloudfront/{Id}" }, "input":{"shape":"GetCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"GetCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"AccessDenied"} ] }, "GetCloudFrontOriginAccessIdentityConfig":{ "name":"GetCloudFrontOriginAccessIdentityConfig2016_09_29", "http":{ "method":"GET", "requestUri":"/2016-09-29/origin-access-identity/cloudfront/{Id}/config" }, "input":{"shape":"GetCloudFrontOriginAccessIdentityConfigRequest"}, "output":{"shape":"GetCloudFrontOriginAccessIdentityConfigResult"}, "errors":[ {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"AccessDenied"} ] }, "GetDistribution":{ "name":"GetDistribution2016_09_29", "http":{ "method":"GET", "requestUri":"/2016-09-29/distribution/{Id}" }, "input":{"shape":"GetDistributionRequest"}, "output":{"shape":"GetDistributionResult"}, "errors":[ {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetDistributionConfig":{ "name":"GetDistributionConfig2016_09_29", "http":{ "method":"GET", "requestUri":"/2016-09-29/distribution/{Id}/config" }, "input":{"shape":"GetDistributionConfigRequest"}, "output":{"shape":"GetDistributionConfigResult"}, "errors":[ {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetInvalidation":{ "name":"GetInvalidation2016_09_29", "http":{ "method":"GET", "requestUri":"/2016-09-29/distribution/{DistributionId}/invalidation/{Id}" }, "input":{"shape":"GetInvalidationRequest"}, "output":{"shape":"GetInvalidationResult"}, "errors":[ {"shape":"NoSuchInvalidation"}, {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "GetStreamingDistribution":{ "name":"GetStreamingDistribution2016_09_29", "http":{ "method":"GET", "requestUri":"/2016-09-29/streaming-distribution/{Id}" }, "input":{"shape":"GetStreamingDistributionRequest"}, "output":{"shape":"GetStreamingDistributionResult"}, "errors":[ {"shape":"NoSuchStreamingDistribution"}, {"shape":"AccessDenied"} ] }, "GetStreamingDistributionConfig":{ "name":"GetStreamingDistributionConfig2016_09_29", "http":{ "method":"GET", "requestUri":"/2016-09-29/streaming-distribution/{Id}/config" }, "input":{"shape":"GetStreamingDistributionConfigRequest"}, "output":{"shape":"GetStreamingDistributionConfigResult"}, "errors":[ {"shape":"NoSuchStreamingDistribution"}, {"shape":"AccessDenied"} ] }, "ListCloudFrontOriginAccessIdentities":{ "name":"ListCloudFrontOriginAccessIdentities2016_09_29", "http":{ "method":"GET", "requestUri":"/2016-09-29/origin-access-identity/cloudfront" }, "input":{"shape":"ListCloudFrontOriginAccessIdentitiesRequest"}, "output":{"shape":"ListCloudFrontOriginAccessIdentitiesResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "ListDistributions":{ "name":"ListDistributions2016_09_29", "http":{ "method":"GET", "requestUri":"/2016-09-29/distribution" }, "input":{"shape":"ListDistributionsRequest"}, "output":{"shape":"ListDistributionsResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "ListDistributionsByWebACLId":{ "name":"ListDistributionsByWebACLId2016_09_29", "http":{ "method":"GET", "requestUri":"/2016-09-29/distributionsByWebACLId/{WebACLId}" }, "input":{"shape":"ListDistributionsByWebACLIdRequest"}, "output":{"shape":"ListDistributionsByWebACLIdResult"}, "errors":[ {"shape":"InvalidArgument"}, {"shape":"InvalidWebACLId"} ] }, "ListInvalidations":{ "name":"ListInvalidations2016_09_29", "http":{ "method":"GET", "requestUri":"/2016-09-29/distribution/{DistributionId}/invalidation" }, "input":{"shape":"ListInvalidationsRequest"}, "output":{"shape":"ListInvalidationsResult"}, "errors":[ {"shape":"InvalidArgument"}, {"shape":"NoSuchDistribution"}, {"shape":"AccessDenied"} ] }, "ListStreamingDistributions":{ "name":"ListStreamingDistributions2016_09_29", "http":{ "method":"GET", "requestUri":"/2016-09-29/streaming-distribution" }, "input":{"shape":"ListStreamingDistributionsRequest"}, "output":{"shape":"ListStreamingDistributionsResult"}, "errors":[ {"shape":"InvalidArgument"} ] }, "ListTagsForResource":{ "name":"ListTagsForResource2016_09_29", "http":{ "method":"GET", "requestUri":"/2016-09-29/tagging" }, "input":{"shape":"ListTagsForResourceRequest"}, "output":{"shape":"ListTagsForResourceResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidArgument"}, {"shape":"InvalidTagging"}, {"shape":"NoSuchResource"} ] }, "TagResource":{ "name":"TagResource2016_09_29", "http":{ "method":"POST", "requestUri":"/2016-09-29/tagging?Operation=Tag", "responseCode":204 }, "input":{"shape":"TagResourceRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidArgument"}, {"shape":"InvalidTagging"}, {"shape":"NoSuchResource"} ] }, "UntagResource":{ "name":"UntagResource2016_09_29", "http":{ "method":"POST", "requestUri":"/2016-09-29/tagging?Operation=Untag", "responseCode":204 }, "input":{"shape":"UntagResourceRequest"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"InvalidArgument"}, {"shape":"InvalidTagging"}, {"shape":"NoSuchResource"} ] }, "UpdateCloudFrontOriginAccessIdentity":{ "name":"UpdateCloudFrontOriginAccessIdentity2016_09_29", "http":{ "method":"PUT", "requestUri":"/2016-09-29/origin-access-identity/cloudfront/{Id}/config" }, "input":{"shape":"UpdateCloudFrontOriginAccessIdentityRequest"}, "output":{"shape":"UpdateCloudFrontOriginAccessIdentityResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchCloudFrontOriginAccessIdentity"}, {"shape":"PreconditionFailed"}, {"shape":"InvalidArgument"}, {"shape":"InconsistentQuantities"} ] }, "UpdateDistribution":{ "name":"UpdateDistribution2016_09_29", "http":{ "method":"PUT", "requestUri":"/2016-09-29/distribution/{Id}/config" }, "input":{"shape":"UpdateDistributionRequest"}, "output":{"shape":"UpdateDistributionResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"CNAMEAlreadyExists"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchDistribution"}, {"shape":"PreconditionFailed"}, {"shape":"TooManyDistributionCNAMEs"}, {"shape":"InvalidDefaultRootObject"}, {"shape":"InvalidRelativePath"}, {"shape":"InvalidErrorCode"}, {"shape":"InvalidResponseCode"}, {"shape":"InvalidArgument"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InvalidViewerCertificate"}, {"shape":"InvalidMinimumProtocolVersion"}, {"shape":"InvalidRequiredProtocol"}, {"shape":"NoSuchOrigin"}, {"shape":"TooManyOrigins"}, {"shape":"TooManyCacheBehaviors"}, {"shape":"TooManyCookieNamesInWhiteList"}, {"shape":"InvalidForwardCookies"}, {"shape":"TooManyHeadersInForwardedValues"}, {"shape":"InvalidHeadersForS3Origin"}, {"shape":"InconsistentQuantities"}, {"shape":"TooManyCertificates"}, {"shape":"InvalidLocationCode"}, {"shape":"InvalidGeoRestrictionParameter"}, {"shape":"InvalidTTLOrder"}, {"shape":"InvalidWebACLId"}, {"shape":"TooManyOriginCustomHeaders"}, {"shape":"TooManyQueryStringParameters"}, {"shape":"InvalidQueryStringParameters"} ] }, "UpdateStreamingDistribution":{ "name":"UpdateStreamingDistribution2016_09_29", "http":{ "method":"PUT", "requestUri":"/2016-09-29/streaming-distribution/{Id}/config" }, "input":{"shape":"UpdateStreamingDistributionRequest"}, "output":{"shape":"UpdateStreamingDistributionResult"}, "errors":[ {"shape":"AccessDenied"}, {"shape":"CNAMEAlreadyExists"}, {"shape":"IllegalUpdate"}, {"shape":"InvalidIfMatchVersion"}, {"shape":"MissingBody"}, {"shape":"NoSuchStreamingDistribution"}, {"shape":"PreconditionFailed"}, {"shape":"TooManyStreamingDistributionCNAMEs"}, {"shape":"InvalidArgument"}, {"shape":"InvalidOriginAccessIdentity"}, {"shape":"TooManyTrustedSigners"}, {"shape":"TrustedSignerDoesNotExist"}, {"shape":"InconsistentQuantities"} ] } }, "shapes":{ "AccessDenied":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":403}, "exception":true }, "ActiveTrustedSigners":{ "type":"structure", "required":[ "Enabled", "Quantity" ], "members":{ "Enabled":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"SignerList"} } }, "AliasList":{ "type":"list", "member":{ "shape":"string", "locationName":"CNAME" } }, "Aliases":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"AliasList"} } }, "AllowedMethods":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"MethodsList"}, "CachedMethods":{"shape":"CachedMethods"} } }, "AwsAccountNumberList":{ "type":"list", "member":{ "shape":"string", "locationName":"AwsAccountNumber" } }, "BatchTooLarge":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":413}, "exception":true }, "CNAMEAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CacheBehavior":{ "type":"structure", "required":[ "PathPattern", "TargetOriginId", "ForwardedValues", "TrustedSigners", "ViewerProtocolPolicy", "MinTTL" ], "members":{ "PathPattern":{"shape":"string"}, "TargetOriginId":{"shape":"string"}, "ForwardedValues":{"shape":"ForwardedValues"}, "TrustedSigners":{"shape":"TrustedSigners"}, "ViewerProtocolPolicy":{"shape":"ViewerProtocolPolicy"}, "MinTTL":{"shape":"long"}, "AllowedMethods":{"shape":"AllowedMethods"}, "SmoothStreaming":{"shape":"boolean"}, "DefaultTTL":{"shape":"long"}, "MaxTTL":{"shape":"long"}, "Compress":{"shape":"boolean"} } }, "CacheBehaviorList":{ "type":"list", "member":{ "shape":"CacheBehavior", "locationName":"CacheBehavior" } }, "CacheBehaviors":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CacheBehaviorList"} } }, "CachedMethods":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"MethodsList"} } }, "CertificateSource":{ "type":"string", "enum":[ "cloudfront", "iam", "acm" ] }, "CloudFrontOriginAccessIdentity":{ "type":"structure", "required":[ "Id", "S3CanonicalUserId" ], "members":{ "Id":{"shape":"string"}, "S3CanonicalUserId":{"shape":"string"}, "CloudFrontOriginAccessIdentityConfig":{"shape":"CloudFrontOriginAccessIdentityConfig"} } }, "CloudFrontOriginAccessIdentityAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CloudFrontOriginAccessIdentityConfig":{ "type":"structure", "required":[ "CallerReference", "Comment" ], "members":{ "CallerReference":{"shape":"string"}, "Comment":{"shape":"string"} } }, "CloudFrontOriginAccessIdentityInUse":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "CloudFrontOriginAccessIdentityList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"CloudFrontOriginAccessIdentitySummaryList"} } }, "CloudFrontOriginAccessIdentitySummary":{ "type":"structure", "required":[ "Id", "S3CanonicalUserId", "Comment" ], "members":{ "Id":{"shape":"string"}, "S3CanonicalUserId":{"shape":"string"}, "Comment":{"shape":"string"} } }, "CloudFrontOriginAccessIdentitySummaryList":{ "type":"list", "member":{ "shape":"CloudFrontOriginAccessIdentitySummary", "locationName":"CloudFrontOriginAccessIdentitySummary" } }, "CookieNameList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "CookieNames":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CookieNameList"} } }, "CookiePreference":{ "type":"structure", "required":["Forward"], "members":{ "Forward":{"shape":"ItemSelection"}, "WhitelistedNames":{"shape":"CookieNames"} } }, "CreateCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["CloudFrontOriginAccessIdentityConfig"], "members":{ "CloudFrontOriginAccessIdentityConfig":{ "shape":"CloudFrontOriginAccessIdentityConfig", "locationName":"CloudFrontOriginAccessIdentityConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-29/"} } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "CreateCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "CreateDistributionRequest":{ "type":"structure", "required":["DistributionConfig"], "members":{ "DistributionConfig":{ "shape":"DistributionConfig", "locationName":"DistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-29/"} } }, "payload":"DistributionConfig" }, "CreateDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "CreateDistributionWithTagsRequest":{ "type":"structure", "required":["DistributionConfigWithTags"], "members":{ "DistributionConfigWithTags":{ "shape":"DistributionConfigWithTags", "locationName":"DistributionConfigWithTags", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-29/"} } }, "payload":"DistributionConfigWithTags" }, "CreateDistributionWithTagsResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "CreateInvalidationRequest":{ "type":"structure", "required":[ "DistributionId", "InvalidationBatch" ], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "InvalidationBatch":{ "shape":"InvalidationBatch", "locationName":"InvalidationBatch", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-29/"} } }, "payload":"InvalidationBatch" }, "CreateInvalidationResult":{ "type":"structure", "members":{ "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "Invalidation":{"shape":"Invalidation"} }, "payload":"Invalidation" }, "CreateStreamingDistributionRequest":{ "type":"structure", "required":["StreamingDistributionConfig"], "members":{ "StreamingDistributionConfig":{ "shape":"StreamingDistributionConfig", "locationName":"StreamingDistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-29/"} } }, "payload":"StreamingDistributionConfig" }, "CreateStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "CreateStreamingDistributionWithTagsRequest":{ "type":"structure", "required":["StreamingDistributionConfigWithTags"], "members":{ "StreamingDistributionConfigWithTags":{ "shape":"StreamingDistributionConfigWithTags", "locationName":"StreamingDistributionConfigWithTags", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-29/"} } }, "payload":"StreamingDistributionConfigWithTags" }, "CreateStreamingDistributionWithTagsResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "Location":{ "shape":"string", "location":"header", "locationName":"Location" }, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "CustomErrorResponse":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"integer"}, "ResponsePagePath":{"shape":"string"}, "ResponseCode":{"shape":"string"}, "ErrorCachingMinTTL":{"shape":"long"} } }, "CustomErrorResponseList":{ "type":"list", "member":{ "shape":"CustomErrorResponse", "locationName":"CustomErrorResponse" } }, "CustomErrorResponses":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"CustomErrorResponseList"} } }, "CustomHeaders":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"OriginCustomHeadersList"} } }, "CustomOriginConfig":{ "type":"structure", "required":[ "HTTPPort", "HTTPSPort", "OriginProtocolPolicy" ], "members":{ "HTTPPort":{"shape":"integer"}, "HTTPSPort":{"shape":"integer"}, "OriginProtocolPolicy":{"shape":"OriginProtocolPolicy"}, "OriginSslProtocols":{"shape":"OriginSslProtocols"} } }, "DefaultCacheBehavior":{ "type":"structure", "required":[ "TargetOriginId", "ForwardedValues", "TrustedSigners", "ViewerProtocolPolicy", "MinTTL" ], "members":{ "TargetOriginId":{"shape":"string"}, "ForwardedValues":{"shape":"ForwardedValues"}, "TrustedSigners":{"shape":"TrustedSigners"}, "ViewerProtocolPolicy":{"shape":"ViewerProtocolPolicy"}, "MinTTL":{"shape":"long"}, "AllowedMethods":{"shape":"AllowedMethods"}, "SmoothStreaming":{"shape":"boolean"}, "DefaultTTL":{"shape":"long"}, "MaxTTL":{"shape":"long"}, "Compress":{"shape":"boolean"} } }, "DeleteCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "DeleteDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "DeleteStreamingDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } } }, "Distribution":{ "type":"structure", "required":[ "Id", "ARN", "Status", "LastModifiedTime", "InProgressInvalidationBatches", "DomainName", "ActiveTrustedSigners", "DistributionConfig" ], "members":{ "Id":{"shape":"string"}, "ARN":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "InProgressInvalidationBatches":{"shape":"integer"}, "DomainName":{"shape":"string"}, "ActiveTrustedSigners":{"shape":"ActiveTrustedSigners"}, "DistributionConfig":{"shape":"DistributionConfig"} } }, "DistributionAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "DistributionConfig":{ "type":"structure", "required":[ "CallerReference", "Origins", "DefaultCacheBehavior", "Comment", "Enabled" ], "members":{ "CallerReference":{"shape":"string"}, "Aliases":{"shape":"Aliases"}, "DefaultRootObject":{"shape":"string"}, "Origins":{"shape":"Origins"}, "DefaultCacheBehavior":{"shape":"DefaultCacheBehavior"}, "CacheBehaviors":{"shape":"CacheBehaviors"}, "CustomErrorResponses":{"shape":"CustomErrorResponses"}, "Comment":{"shape":"string"}, "Logging":{"shape":"LoggingConfig"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"}, "ViewerCertificate":{"shape":"ViewerCertificate"}, "Restrictions":{"shape":"Restrictions"}, "WebACLId":{"shape":"string"}, "HttpVersion":{"shape":"HttpVersion"}, "IsIPV6Enabled":{"shape":"boolean"} } }, "DistributionConfigWithTags":{ "type":"structure", "required":[ "DistributionConfig", "Tags" ], "members":{ "DistributionConfig":{"shape":"DistributionConfig"}, "Tags":{"shape":"Tags"} } }, "DistributionList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"DistributionSummaryList"} } }, "DistributionNotDisabled":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "DistributionSummary":{ "type":"structure", "required":[ "Id", "ARN", "Status", "LastModifiedTime", "DomainName", "Aliases", "Origins", "DefaultCacheBehavior", "CacheBehaviors", "CustomErrorResponses", "Comment", "PriceClass", "Enabled", "ViewerCertificate", "Restrictions", "WebACLId", "HttpVersion", "IsIPV6Enabled" ], "members":{ "Id":{"shape":"string"}, "ARN":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "Aliases":{"shape":"Aliases"}, "Origins":{"shape":"Origins"}, "DefaultCacheBehavior":{"shape":"DefaultCacheBehavior"}, "CacheBehaviors":{"shape":"CacheBehaviors"}, "CustomErrorResponses":{"shape":"CustomErrorResponses"}, "Comment":{"shape":"string"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"}, "ViewerCertificate":{"shape":"ViewerCertificate"}, "Restrictions":{"shape":"Restrictions"}, "WebACLId":{"shape":"string"}, "HttpVersion":{"shape":"HttpVersion"}, "IsIPV6Enabled":{"shape":"boolean"} } }, "DistributionSummaryList":{ "type":"list", "member":{ "shape":"DistributionSummary", "locationName":"DistributionSummary" } }, "ForwardedValues":{ "type":"structure", "required":[ "QueryString", "Cookies" ], "members":{ "QueryString":{"shape":"boolean"}, "Cookies":{"shape":"CookiePreference"}, "Headers":{"shape":"Headers"}, "QueryStringCacheKeys":{"shape":"QueryStringCacheKeys"} } }, "GeoRestriction":{ "type":"structure", "required":[ "RestrictionType", "Quantity" ], "members":{ "RestrictionType":{"shape":"GeoRestrictionType"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"LocationList"} } }, "GeoRestrictionType":{ "type":"string", "enum":[ "blacklist", "whitelist", "none" ] }, "GetCloudFrontOriginAccessIdentityConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetCloudFrontOriginAccessIdentityConfigResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentityConfig":{"shape":"CloudFrontOriginAccessIdentityConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "GetCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "GetDistributionConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetDistributionConfigResult":{ "type":"structure", "members":{ "DistributionConfig":{"shape":"DistributionConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"DistributionConfig" }, "GetDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "GetInvalidationRequest":{ "type":"structure", "required":[ "DistributionId", "Id" ], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetInvalidationResult":{ "type":"structure", "members":{ "Invalidation":{"shape":"Invalidation"} }, "payload":"Invalidation" }, "GetStreamingDistributionConfigRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetStreamingDistributionConfigResult":{ "type":"structure", "members":{ "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistributionConfig" }, "GetStreamingDistributionRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"string", "location":"uri", "locationName":"Id" } } }, "GetStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "HeaderList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "Headers":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"HeaderList"} } }, "HttpVersion":{ "type":"string", "enum":[ "http1.1", "http2" ] }, "IllegalUpdate":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InconsistentQuantities":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidArgument":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidDefaultRootObject":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidErrorCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidForwardCookies":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidGeoRestrictionParameter":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidHeadersForS3Origin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidIfMatchVersion":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidLocationCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidMinimumProtocolVersion":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidOrigin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidOriginAccessIdentity":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidProtocolSettings":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidQueryStringParameters":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRelativePath":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRequiredProtocol":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidResponseCode":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidTTLOrder":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidTagging":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidViewerCertificate":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidWebACLId":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "Invalidation":{ "type":"structure", "required":[ "Id", "Status", "CreateTime", "InvalidationBatch" ], "members":{ "Id":{"shape":"string"}, "Status":{"shape":"string"}, "CreateTime":{"shape":"timestamp"}, "InvalidationBatch":{"shape":"InvalidationBatch"} } }, "InvalidationBatch":{ "type":"structure", "required":[ "Paths", "CallerReference" ], "members":{ "Paths":{"shape":"Paths"}, "CallerReference":{"shape":"string"} } }, "InvalidationList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"InvalidationSummaryList"} } }, "InvalidationSummary":{ "type":"structure", "required":[ "Id", "CreateTime", "Status" ], "members":{ "Id":{"shape":"string"}, "CreateTime":{"shape":"timestamp"}, "Status":{"shape":"string"} } }, "InvalidationSummaryList":{ "type":"list", "member":{ "shape":"InvalidationSummary", "locationName":"InvalidationSummary" } }, "ItemSelection":{ "type":"string", "enum":[ "none", "whitelist", "all" ] }, "KeyPairIdList":{ "type":"list", "member":{ "shape":"string", "locationName":"KeyPairId" } }, "KeyPairIds":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"KeyPairIdList"} } }, "ListCloudFrontOriginAccessIdentitiesRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListCloudFrontOriginAccessIdentitiesResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentityList":{"shape":"CloudFrontOriginAccessIdentityList"} }, "payload":"CloudFrontOriginAccessIdentityList" }, "ListDistributionsByWebACLIdRequest":{ "type":"structure", "required":["WebACLId"], "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" }, "WebACLId":{ "shape":"string", "location":"uri", "locationName":"WebACLId" } } }, "ListDistributionsByWebACLIdResult":{ "type":"structure", "members":{ "DistributionList":{"shape":"DistributionList"} }, "payload":"DistributionList" }, "ListDistributionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListDistributionsResult":{ "type":"structure", "members":{ "DistributionList":{"shape":"DistributionList"} }, "payload":"DistributionList" }, "ListInvalidationsRequest":{ "type":"structure", "required":["DistributionId"], "members":{ "DistributionId":{ "shape":"string", "location":"uri", "locationName":"DistributionId" }, "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListInvalidationsResult":{ "type":"structure", "members":{ "InvalidationList":{"shape":"InvalidationList"} }, "payload":"InvalidationList" }, "ListStreamingDistributionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"string", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"string", "location":"querystring", "locationName":"MaxItems" } } }, "ListStreamingDistributionsResult":{ "type":"structure", "members":{ "StreamingDistributionList":{"shape":"StreamingDistributionList"} }, "payload":"StreamingDistributionList" }, "ListTagsForResourceRequest":{ "type":"structure", "required":["Resource"], "members":{ "Resource":{ "shape":"ResourceARN", "location":"querystring", "locationName":"Resource" } } }, "ListTagsForResourceResult":{ "type":"structure", "required":["Tags"], "members":{ "Tags":{"shape":"Tags"} }, "payload":"Tags" }, "LocationList":{ "type":"list", "member":{ "shape":"string", "locationName":"Location" } }, "LoggingConfig":{ "type":"structure", "required":[ "Enabled", "IncludeCookies", "Bucket", "Prefix" ], "members":{ "Enabled":{"shape":"boolean"}, "IncludeCookies":{"shape":"boolean"}, "Bucket":{"shape":"string"}, "Prefix":{"shape":"string"} } }, "Method":{ "type":"string", "enum":[ "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" ] }, "MethodsList":{ "type":"list", "member":{ "shape":"Method", "locationName":"Method" } }, "MinimumProtocolVersion":{ "type":"string", "enum":[ "SSLv3", "TLSv1" ] }, "MissingBody":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "NoSuchCloudFrontOriginAccessIdentity":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchDistribution":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchInvalidation":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchOrigin":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchResource":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchStreamingDistribution":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "Origin":{ "type":"structure", "required":[ "Id", "DomainName" ], "members":{ "Id":{"shape":"string"}, "DomainName":{"shape":"string"}, "OriginPath":{"shape":"string"}, "CustomHeaders":{"shape":"CustomHeaders"}, "S3OriginConfig":{"shape":"S3OriginConfig"}, "CustomOriginConfig":{"shape":"CustomOriginConfig"} } }, "OriginCustomHeader":{ "type":"structure", "required":[ "HeaderName", "HeaderValue" ], "members":{ "HeaderName":{"shape":"string"}, "HeaderValue":{"shape":"string"} } }, "OriginCustomHeadersList":{ "type":"list", "member":{ "shape":"OriginCustomHeader", "locationName":"OriginCustomHeader" } }, "OriginList":{ "type":"list", "member":{ "shape":"Origin", "locationName":"Origin" }, "min":1 }, "OriginProtocolPolicy":{ "type":"string", "enum":[ "http-only", "match-viewer", "https-only" ] }, "OriginSslProtocols":{ "type":"structure", "required":[ "Quantity", "Items" ], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"SslProtocolsList"} } }, "Origins":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"OriginList"} } }, "PathList":{ "type":"list", "member":{ "shape":"string", "locationName":"Path" } }, "Paths":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"PathList"} } }, "PreconditionFailed":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":412}, "exception":true }, "PriceClass":{ "type":"string", "enum":[ "PriceClass_100", "PriceClass_200", "PriceClass_All" ] }, "QueryStringCacheKeys":{ "type":"structure", "required":["Quantity"], "members":{ "Quantity":{"shape":"integer"}, "Items":{"shape":"QueryStringCacheKeysList"} } }, "QueryStringCacheKeysList":{ "type":"list", "member":{ "shape":"string", "locationName":"Name" } }, "ResourceARN":{ "type":"string", "pattern":"arn:aws:cloudfront::[0-9]+:.*" }, "Restrictions":{ "type":"structure", "required":["GeoRestriction"], "members":{ "GeoRestriction":{"shape":"GeoRestriction"} } }, "S3Origin":{ "type":"structure", "required":[ "DomainName", "OriginAccessIdentity" ], "members":{ "DomainName":{"shape":"string"}, "OriginAccessIdentity":{"shape":"string"} } }, "S3OriginConfig":{ "type":"structure", "required":["OriginAccessIdentity"], "members":{ "OriginAccessIdentity":{"shape":"string"} } }, "SSLSupportMethod":{ "type":"string", "enum":[ "sni-only", "vip" ] }, "Signer":{ "type":"structure", "members":{ "AwsAccountNumber":{"shape":"string"}, "KeyPairIds":{"shape":"KeyPairIds"} } }, "SignerList":{ "type":"list", "member":{ "shape":"Signer", "locationName":"Signer" } }, "SslProtocol":{ "type":"string", "enum":[ "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2" ] }, "SslProtocolsList":{ "type":"list", "member":{ "shape":"SslProtocol", "locationName":"SslProtocol" } }, "StreamingDistribution":{ "type":"structure", "required":[ "Id", "ARN", "Status", "DomainName", "ActiveTrustedSigners", "StreamingDistributionConfig" ], "members":{ "Id":{"shape":"string"}, "ARN":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "ActiveTrustedSigners":{"shape":"ActiveTrustedSigners"}, "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"} } }, "StreamingDistributionAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "StreamingDistributionConfig":{ "type":"structure", "required":[ "CallerReference", "S3Origin", "Comment", "TrustedSigners", "Enabled" ], "members":{ "CallerReference":{"shape":"string"}, "S3Origin":{"shape":"S3Origin"}, "Aliases":{"shape":"Aliases"}, "Comment":{"shape":"string"}, "Logging":{"shape":"StreamingLoggingConfig"}, "TrustedSigners":{"shape":"TrustedSigners"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"} } }, "StreamingDistributionConfigWithTags":{ "type":"structure", "required":[ "StreamingDistributionConfig", "Tags" ], "members":{ "StreamingDistributionConfig":{"shape":"StreamingDistributionConfig"}, "Tags":{"shape":"Tags"} } }, "StreamingDistributionList":{ "type":"structure", "required":[ "Marker", "MaxItems", "IsTruncated", "Quantity" ], "members":{ "Marker":{"shape":"string"}, "NextMarker":{"shape":"string"}, "MaxItems":{"shape":"integer"}, "IsTruncated":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"StreamingDistributionSummaryList"} } }, "StreamingDistributionNotDisabled":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":409}, "exception":true }, "StreamingDistributionSummary":{ "type":"structure", "required":[ "Id", "ARN", "Status", "LastModifiedTime", "DomainName", "S3Origin", "Aliases", "TrustedSigners", "Comment", "PriceClass", "Enabled" ], "members":{ "Id":{"shape":"string"}, "ARN":{"shape":"string"}, "Status":{"shape":"string"}, "LastModifiedTime":{"shape":"timestamp"}, "DomainName":{"shape":"string"}, "S3Origin":{"shape":"S3Origin"}, "Aliases":{"shape":"Aliases"}, "TrustedSigners":{"shape":"TrustedSigners"}, "Comment":{"shape":"string"}, "PriceClass":{"shape":"PriceClass"}, "Enabled":{"shape":"boolean"} } }, "StreamingDistributionSummaryList":{ "type":"list", "member":{ "shape":"StreamingDistributionSummary", "locationName":"StreamingDistributionSummary" } }, "StreamingLoggingConfig":{ "type":"structure", "required":[ "Enabled", "Bucket", "Prefix" ], "members":{ "Enabled":{"shape":"boolean"}, "Bucket":{"shape":"string"}, "Prefix":{"shape":"string"} } }, "Tag":{ "type":"structure", "required":["Key"], "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{ "type":"string", "max":128, "min":1, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "TagKeyList":{ "type":"list", "member":{ "shape":"TagKey", "locationName":"Key" } }, "TagKeys":{ "type":"structure", "members":{ "Items":{"shape":"TagKeyList"} } }, "TagList":{ "type":"list", "member":{ "shape":"Tag", "locationName":"Tag" } }, "TagResourceRequest":{ "type":"structure", "required":[ "Resource", "Tags" ], "members":{ "Resource":{ "shape":"ResourceARN", "location":"querystring", "locationName":"Resource" }, "Tags":{ "shape":"Tags", "locationName":"Tags", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-29/"} } }, "payload":"Tags" }, "TagValue":{ "type":"string", "max":256, "min":0, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "Tags":{ "type":"structure", "members":{ "Items":{"shape":"TagList"} } }, "TooManyCacheBehaviors":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCertificates":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCloudFrontOriginAccessIdentities":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyCookieNamesInWhiteList":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyDistributionCNAMEs":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyDistributions":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyHeadersInForwardedValues":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyInvalidationsInProgress":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyOriginCustomHeaders":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyOrigins":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyQueryStringParameters":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyStreamingDistributionCNAMEs":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyStreamingDistributions":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyTrustedSigners":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrustedSignerDoesNotExist":{ "type":"structure", "members":{ "Message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrustedSigners":{ "type":"structure", "required":[ "Enabled", "Quantity" ], "members":{ "Enabled":{"shape":"boolean"}, "Quantity":{"shape":"integer"}, "Items":{"shape":"AwsAccountNumberList"} } }, "UntagResourceRequest":{ "type":"structure", "required":[ "Resource", "TagKeys" ], "members":{ "Resource":{ "shape":"ResourceARN", "location":"querystring", "locationName":"Resource" }, "TagKeys":{ "shape":"TagKeys", "locationName":"TagKeys", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-29/"} } }, "payload":"TagKeys" }, "UpdateCloudFrontOriginAccessIdentityRequest":{ "type":"structure", "required":[ "CloudFrontOriginAccessIdentityConfig", "Id" ], "members":{ "CloudFrontOriginAccessIdentityConfig":{ "shape":"CloudFrontOriginAccessIdentityConfig", "locationName":"CloudFrontOriginAccessIdentityConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-29/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"CloudFrontOriginAccessIdentityConfig" }, "UpdateCloudFrontOriginAccessIdentityResult":{ "type":"structure", "members":{ "CloudFrontOriginAccessIdentity":{"shape":"CloudFrontOriginAccessIdentity"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"CloudFrontOriginAccessIdentity" }, "UpdateDistributionRequest":{ "type":"structure", "required":[ "DistributionConfig", "Id" ], "members":{ "DistributionConfig":{ "shape":"DistributionConfig", "locationName":"DistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-29/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"DistributionConfig" }, "UpdateDistributionResult":{ "type":"structure", "members":{ "Distribution":{"shape":"Distribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"Distribution" }, "UpdateStreamingDistributionRequest":{ "type":"structure", "required":[ "StreamingDistributionConfig", "Id" ], "members":{ "StreamingDistributionConfig":{ "shape":"StreamingDistributionConfig", "locationName":"StreamingDistributionConfig", "xmlNamespace":{"uri":"http://cloudfront.amazonaws.com/doc/2016-09-29/"} }, "Id":{ "shape":"string", "location":"uri", "locationName":"Id" }, "IfMatch":{ "shape":"string", "location":"header", "locationName":"If-Match" } }, "payload":"StreamingDistributionConfig" }, "UpdateStreamingDistributionResult":{ "type":"structure", "members":{ "StreamingDistribution":{"shape":"StreamingDistribution"}, "ETag":{ "shape":"string", "location":"header", "locationName":"ETag" } }, "payload":"StreamingDistribution" }, "ViewerCertificate":{ "type":"structure", "members":{ "CloudFrontDefaultCertificate":{"shape":"boolean"}, "IAMCertificateId":{"shape":"string"}, "ACMCertificateArn":{"shape":"string"}, "SSLSupportMethod":{"shape":"SSLSupportMethod"}, "MinimumProtocolVersion":{"shape":"MinimumProtocolVersion"}, "Certificate":{ "shape":"string", "deprecated":true }, "CertificateSource":{ "shape":"CertificateSource", "deprecated":true } } }, "ViewerProtocolPolicy":{ "type":"string", "enum":[ "allow-all", "https-only", "redirect-to-https" ] }, "boolean":{"type":"boolean"}, "integer":{"type":"integer"}, "long":{"type":"long"}, "string":{"type":"string"}, "timestamp":{"type":"timestamp"} } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-09-29/docs-2.json000066400000000000000000004255441300374646400232270ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon CloudFront

        This is the Amazon CloudFront API Reference. This guide is for developers who need detailed information about the CloudFront API actions, data types, and errors. For detailed information about CloudFront features and their associated API calls, see the Amazon CloudFront Developer Guide.

        ", "operations": { "CreateCloudFrontOriginAccessIdentity": "

        Creates a new origin access identity. If you're using Amazon S3 for your origin, you can use an origin access identity to require users to access your content using a CloudFront URL instead of the Amazon S3 URL. For more information about how to use origin access identities, see Serving Private Content through CloudFront in the Amazon CloudFront Developer Guide.

        ", "CreateDistribution": "

        Creates a new web distribution. Send a GET request to the /CloudFront API version/distribution/distribution ID resource.

        ", "CreateDistributionWithTags": "

        Create a new distribution with tags.

        ", "CreateInvalidation": "

        Create a new invalidation.

        ", "CreateStreamingDistribution": "

        Creates a new RMTP distribution. An RTMP distribution is similar to a web distribution, but an RTMP distribution streams media files using the Adobe Real-Time Messaging Protocol (RTMP) instead of serving files using HTTP.

        To create a new web distribution, submit a POST request to the CloudFront API version/distribution resource. The request body must include a document with a StreamingDistributionConfig element. The response echoes the StreamingDistributionConfig element and returns other information about the RTMP distribution.

        To get the status of your request, use the GET StreamingDistribution API action. When the value of Enabled is true and the value of Status is Deployed, your distribution is ready. A distribution usually deploys in less than 15 minutes.

        For more information about web distributions, see Working with RTMP Distributions in the Amazon CloudFront Developer Guide.

        Beginning with the 2012-05-05 version of the CloudFront API, we made substantial changes to the format of the XML document that you include in the request body when you create or update a web distribution or an RTMP distribution, and when you invalidate objects. With previous versions of the API, we discovered that it was too easy to accidentally delete one or more values for an element that accepts multiple values, for example, CNAMEs and trusted signers. Our changes for the 2012-05-05 release are intended to prevent these accidental deletions and to notify you when there's a mismatch between the number of values you say you're specifying in the Quantity element and the number of values specified.

        ", "CreateStreamingDistributionWithTags": "

        Create a new streaming distribution with tags.

        ", "DeleteCloudFrontOriginAccessIdentity": "

        Delete an origin access identity.

        ", "DeleteDistribution": "

        Delete a distribution.

        ", "DeleteStreamingDistribution": "

        Delete a streaming distribution. To delete an RTMP distribution using the CloudFront API, perform the following steps.

        To delete an RTMP distribution using the CloudFront API:

        1. Disable the RTMP distribution.

        2. Submit a GET Streaming Distribution Config request to get the current configuration and the Etag header for the distribution.

        3. Update the XML document that was returned in the response to your GET Streaming Distribution Config request to change the value of Enabled to false.

        4. Submit a PUT Streaming Distribution Config request to update the configuration for your distribution. In the request body, include the XML document that you updated in Step 3. Then set the value of the HTTP If-Match header to the value of the ETag header that CloudFront returned when you submitted the GET Streaming Distribution Config request in Step 2.

        5. Review the response to the PUT Streaming Distribution Config request to confirm that the distribution was successfully disabled.

        6. Submit a GET Streaming Distribution Config request to confirm that your changes have propagated. When propagation is complete, the value of Status is Deployed.

        7. Submit a DELETE Streaming Distribution request. Set the value of the HTTP If-Match header to the value of the ETag header that CloudFront returned when you submitted the GET Streaming Distribution Config request in Step 2.

        8. Review the response to your DELETE Streaming Distribution request to confirm that the distribution was successfully deleted.

        For information about deleting a distribution using the CloudFront console, see Deleting a Distribution in the Amazon CloudFront Developer Guide.

        ", "GetCloudFrontOriginAccessIdentity": "

        Get the information about an origin access identity.

        ", "GetCloudFrontOriginAccessIdentityConfig": "

        Get the configuration information about an origin access identity.

        ", "GetDistribution": "

        Get the information about a distribution.

        ", "GetDistributionConfig": "

        Get the configuration information about a distribution.

        ", "GetInvalidation": "

        Get the information about an invalidation.

        ", "GetStreamingDistribution": "

        Gets information about a specified RTMP distribution, including the distribution configuration.

        ", "GetStreamingDistributionConfig": "

        Get the configuration information about a streaming distribution.

        ", "ListCloudFrontOriginAccessIdentities": "

        Lists origin access identities.

        ", "ListDistributions": "

        List distributions.

        ", "ListDistributionsByWebACLId": "

        List the distributions that are associated with a specified AWS WAF web ACL.

        ", "ListInvalidations": "

        Lists invalidation batches.

        ", "ListStreamingDistributions": "

        List streaming distributions.

        ", "ListTagsForResource": "

        List tags for a CloudFront resource.

        ", "TagResource": "

        Add tags to a CloudFront resource.

        ", "UntagResource": "

        Remove tags from a CloudFront resource.

        ", "UpdateCloudFrontOriginAccessIdentity": "

        Update an origin access identity.

        ", "UpdateDistribution": "

        Update a distribution.

        ", "UpdateStreamingDistribution": "

        Update a streaming distribution.

        " }, "shapes": { "AccessDenied": { "base": "

        Access denied.

        ", "refs": { } }, "ActiveTrustedSigners": { "base": "

        A complex type that lists the AWS accounts, if any, that you included in the TrustedSigners complex type for this distribution. These are the accounts that you want to allow to create signed URLs for private content.

        The Signer complex type lists the AWS account number of the trusted signer or self if the signer is the AWS account that created the distribution. The Signer element also includes the IDs of any active CloudFront key pairs that are associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create signed URLs.

        For more information, see Serving Private Content through CloudFront in the Amazon CloudFront Developer Guide.

        ", "refs": { "Distribution$ActiveTrustedSigners": "

        CloudFront automatically adds this element to the response only if you've set up the distribution to serve private content with signed URLs. The element lists the key pair IDs that CloudFront is aware of for each trusted signer. The Signer child element lists the AWS account number of the trusted signer (or an empty Self element if the signer is you). The Signer element also includes the IDs of any active key pairs associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create working signed URLs.

        ", "StreamingDistribution$ActiveTrustedSigners": "

        A complex type that lists the AWS accounts, if any, that you included in the TrustedSigners complex type for this distribution. These are the accounts that you want to allow to create signed URLs for private content.

        The Signer complex type lists the AWS account number of the trusted signer or self if the signer is the AWS account that created the distribution. The Signer element also includes the IDs of any active CloudFront key pairs that are associated with the trusted signer's AWS account. If no KeyPairId element appears for a Signer, that signer can't create signed URLs.

        For more information, see Serving Private Content through CloudFront in the Amazon CloudFront Developer Guide.

        " } }, "AliasList": { "base": null, "refs": { "Aliases$Items": "

        A complex type that contains the CNAME aliases, if any, that you want to associate with this distribution.

        " } }, "Aliases": { "base": "

        A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.

        ", "refs": { "DistributionConfig$Aliases": "

        A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.

        ", "DistributionSummary$Aliases": "

        A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.

        ", "StreamingDistributionConfig$Aliases": "

        A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution.

        ", "StreamingDistributionSummary$Aliases": "

        A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution.

        " } }, "AllowedMethods": { "base": "

        A complex type that controls which HTTP methods CloudFront processes and forwards to your Amazon S3 bucket or your custom origin. There are three choices:

        • CloudFront forwards only GET and HEAD requests.

        • CloudFront forwards only GET, HEAD, and OPTIONS requests.

        • CloudFront forwards GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests.

        If you pick the third choice, you may need to restrict access to your Amazon S3 bucket or to your custom origin so users can't perform operations that you don't want them to. For example, you might not want users to have permissions to delete objects from your origin.

        ", "refs": { "CacheBehavior$AllowedMethods": null, "DefaultCacheBehavior$AllowedMethods": null } }, "AwsAccountNumberList": { "base": null, "refs": { "TrustedSigners$Items": "

        Optional: A complex type that contains trusted signers for this cache behavior. If Quantity is 0, you can omit Items.

        " } }, "BatchTooLarge": { "base": null, "refs": { } }, "CNAMEAlreadyExists": { "base": null, "refs": { } }, "CacheBehavior": { "base": "

        A complex type that describes how CloudFront processes requests.

        You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to distribute objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin is never used.

        For the current limit on the number of cache behaviors that you can add to a distribution, see Amazon CloudFront Limits in the AWS General Reference.

        If you don't want to specify any cache behaviors, include only an empty CacheBehaviors element. Don't include an empty CacheBehavior element, or CloudFront returns a MalformedXML error.

        To delete all cache behaviors in an existing distribution, update the distribution configuration and include only an empty CacheBehaviors element.

        To add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution.

        For more information about cache behaviors, see Cache Behaviors in the Amazon CloudFront Developer Guide.

        ", "refs": { "CacheBehaviorList$member": null } }, "CacheBehaviorList": { "base": null, "refs": { "CacheBehaviors$Items": "

        Optional: A complex type that contains cache behaviors for this distribution. If Quantity is 0, you can omit Items.

        " } }, "CacheBehaviors": { "base": "

        A complex type that contains zero or more CacheBehavior elements.

        ", "refs": { "DistributionConfig$CacheBehaviors": "

        A complex type that contains zero or more CacheBehavior elements.

        ", "DistributionSummary$CacheBehaviors": "

        A complex type that contains zero or more CacheBehavior elements.

        " } }, "CachedMethods": { "base": "

        A complex type that controls whether CloudFront caches the response to requests using the specified HTTP methods. There are two choices:

        • CloudFront caches responses to GET and HEAD requests.

        • CloudFront caches responses to GET, HEAD, and OPTIONS requests.

        If you pick the second choice for your Amazon S3 Origin, you may need to forward Access-Control-Request-Method, Access-Control-Request-Headers, and Origin headers for the responses to be cached correctly.

        ", "refs": { "AllowedMethods$CachedMethods": null } }, "CertificateSource": { "base": null, "refs": { "ViewerCertificate$CertificateSource": "

        This field is deprecated. You can use one of the following: [ACMCertificateArn, IAMCertificateId, or CloudFrontDefaultCertificate].

        " } }, "CloudFrontOriginAccessIdentity": { "base": "

        CloudFront origin access identity.

        ", "refs": { "CreateCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "

        The origin access identity's information.

        ", "GetCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "

        The origin access identity's information.

        ", "UpdateCloudFrontOriginAccessIdentityResult$CloudFrontOriginAccessIdentity": "

        The origin access identity's information.

        " } }, "CloudFrontOriginAccessIdentityAlreadyExists": { "base": "

        If the CallerReference is a value you already sent in a previous request to create an identity but the content of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists error.

        ", "refs": { } }, "CloudFrontOriginAccessIdentityConfig": { "base": "

        Origin access identity configuration. Send a GET request to the /CloudFront API version/CloudFront/identity ID/config resource.

        ", "refs": { "CloudFrontOriginAccessIdentity$CloudFrontOriginAccessIdentityConfig": "

        The current configuration information for the identity.

        ", "CreateCloudFrontOriginAccessIdentityRequest$CloudFrontOriginAccessIdentityConfig": "

        The current configuration information for the identity.

        ", "GetCloudFrontOriginAccessIdentityConfigResult$CloudFrontOriginAccessIdentityConfig": "

        The origin access identity's configuration information.

        ", "UpdateCloudFrontOriginAccessIdentityRequest$CloudFrontOriginAccessIdentityConfig": "

        The identity's configuration information.

        " } }, "CloudFrontOriginAccessIdentityInUse": { "base": null, "refs": { } }, "CloudFrontOriginAccessIdentityList": { "base": "

        Lists the origin access identities for CloudFront.Send a GET request to the /CloudFront API version/origin-access-identity/cloudfront resource. The response includes a CloudFrontOriginAccessIdentityList element with zero or more CloudFrontOriginAccessIdentitySummary child elements. By default, your entire list of origin access identities is returned in one single page. If the list is long, you can paginate it using the MaxItems and Marker parameters.

        ", "refs": { "ListCloudFrontOriginAccessIdentitiesResult$CloudFrontOriginAccessIdentityList": "

        The CloudFrontOriginAccessIdentityList type.

        " } }, "CloudFrontOriginAccessIdentitySummary": { "base": "

        Summary of the information about a CloudFront origin access identity.

        ", "refs": { "CloudFrontOriginAccessIdentitySummaryList$member": null } }, "CloudFrontOriginAccessIdentitySummaryList": { "base": null, "refs": { "CloudFrontOriginAccessIdentityList$Items": "

        A complex type that contains one CloudFrontOriginAccessIdentitySummary element for each origin access identity that was created by the current AWS account.

        " } }, "CookieNameList": { "base": null, "refs": { "CookieNames$Items": "

        A complex type that contains one Name element for each cookie that you want CloudFront to forward to the origin for this cache behavior.

        " } }, "CookieNames": { "base": "

        A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see How CloudFront Forwards, Caches, and Logs Cookies in the Amazon CloudFront Developer Guide.

        ", "refs": { "CookiePreference$WhitelistedNames": "

        Required if you specify whitelist for the value of Forward:. A complex type that specifies how many different cookies you want CloudFront to forward to the origin for this cache behavior and, if you want to forward selected cookies, the names of those cookies.

        If you specify all or none for the value of Forward, omit WhitelistedNames. If you change the value of Forward from whitelist to all or none and you don't delete the WhitelistedNames element and its child elements, CloudFront deletes them automatically.

        For the current limit on the number of cookie names that you can whitelist for each cache behavior, see Amazon CloudFront Limits in the AWS General Reference.

        " } }, "CookiePreference": { "base": "

        A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see How CloudFront Forwards, Caches, and Logs Cookies in the Amazon CloudFront Developer Guide.

        ", "refs": { "ForwardedValues$Cookies": "

        A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see How CloudFront Forwards, Caches, and Logs Cookies in the Amazon CloudFront Developer Guide.

        " } }, "CreateCloudFrontOriginAccessIdentityRequest": { "base": "

        The request to create a new origin access identity.

        ", "refs": { } }, "CreateCloudFrontOriginAccessIdentityResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "CreateDistributionRequest": { "base": "

        The request to create a new distribution.

        ", "refs": { } }, "CreateDistributionResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "CreateDistributionWithTagsRequest": { "base": "

        The request to create a new distribution with tags.

        ", "refs": { } }, "CreateDistributionWithTagsResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "CreateInvalidationRequest": { "base": "

        The request to create an invalidation.

        ", "refs": { } }, "CreateInvalidationResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "CreateStreamingDistributionRequest": { "base": "

        The request to create a new streaming distribution.

        ", "refs": { } }, "CreateStreamingDistributionResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "CreateStreamingDistributionWithTagsRequest": { "base": "

        The request to create a new streaming distribution with tags.

        ", "refs": { } }, "CreateStreamingDistributionWithTagsResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "CustomErrorResponse": { "base": "

        A complex type that controls:

        • Whether CloudFront replaces HTTP status codes in the 4xx and 5xx range with custom error messages before returning the response to the viewer.

        • How long CloudFront caches HTTP status codes in the 4xx and 5xx range.

        For more information about custom error pages, see Customizing Error Responses in the Amazon CloudFront Developer Guide.

        ", "refs": { "CustomErrorResponseList$member": null } }, "CustomErrorResponseList": { "base": null, "refs": { "CustomErrorResponses$Items": "

        A complex type that contains a CustomErrorResponse element for each HTTP status code for which you want to specify a custom error page and/or a caching duration.

        " } }, "CustomErrorResponses": { "base": "

        A complex type that controls:

        • Whether CloudFront replaces HTTP status codes in the 4xx and 5xx range with custom error messages before returning the response to the viewer.

        • How long CloudFront caches HTTP status codes in the 4xx and 5xx range.

        For more information about custom error pages, see Customizing Error Responses in the Amazon CloudFront Developer Guide.

        ", "refs": { "DistributionConfig$CustomErrorResponses": "

        A complex type that controls the following:

        • Whether CloudFront replaces HTTP status codes in the 4xx and 5xx range with custom error messages before returning the response to the viewer.

        • How long CloudFront caches HTTP status codes in the 4xx and 5xx range.

        For more information about custom error pages, see Customizing Error Responses in the Amazon CloudFront Developer Guide.

        ", "DistributionSummary$CustomErrorResponses": "

        A complex type that contains zero or more CustomErrorResponses elements.

        " } }, "CustomHeaders": { "base": "

        A complex type that contains the list of Custom Headers for each origin.

        ", "refs": { "Origin$CustomHeaders": "

        A complex type that contains names and values for the custom headers that you want.

        " } }, "CustomOriginConfig": { "base": "

        A customer origin.

        ", "refs": { "Origin$CustomOriginConfig": "

        A complex type that contains information about a custom origin. If the origin is an Amazon S3 bucket, use the S3OriginConfig element instead.

        " } }, "DefaultCacheBehavior": { "base": "

        A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements. You must create exactly one default cache behavior.

        ", "refs": { "DistributionConfig$DefaultCacheBehavior": "

        A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements. You must create exactly one default cache behavior.

        ", "DistributionSummary$DefaultCacheBehavior": "

        A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don't match any of the values of PathPattern in CacheBehavior elements. You must create exactly one default cache behavior.

        " } }, "DeleteCloudFrontOriginAccessIdentityRequest": { "base": "

        Deletes a origin access identity.

        ", "refs": { } }, "DeleteDistributionRequest": { "base": "

        This action deletes a web distribution. To delete a web distribution using the CloudFront API, perform the following steps.

        To delete a web distribution using the CloudFront API:

        1. Disable the web distribution

        2. Submit a GET Distribution Config request to get the current configuration and the Etag header for the distribution.

        3. Update the XML document that was returned in the response to your GET Distribution Config request to change the value of Enabled to false.

        4. Submit a PUT Distribution Config request to update the configuration for your distribution. In the request body, include the XML document that you updated in Step 3. Set the value of the HTTP If-Match header to the value of the ETag header that CloudFront returned when you submitted the GET Distribution Config request in Step 2.

        5. Review the response to the PUT Distribution Config request to confirm that the distribution was successfully disabled.

        6. Submit a GET Distribution request to confirm that your changes have propagated. When propagation is complete, the value of Status is Deployed.

        7. Submit a DELETE Distribution request. Set the value of the HTTP If-Match header to the value of the ETag header that CloudFront returned when you submitted the GET Distribution Config request in Step 6.

        8. Review the response to your DELETE Distribution request to confirm that the distribution was successfully deleted.

        For information about deleting a distribution using the CloudFront console, see Deleting a Distribution in the Amazon CloudFront Developer Guide.

        ", "refs": { } }, "DeleteStreamingDistributionRequest": { "base": "

        The request to delete a streaming distribution.

        ", "refs": { } }, "Distribution": { "base": "

        The distribution's information.

        ", "refs": { "CreateDistributionResult$Distribution": "

        The distribution's information.

        ", "CreateDistributionWithTagsResult$Distribution": "

        The distribution's information.

        ", "GetDistributionResult$Distribution": "

        The distribution's information.

        ", "UpdateDistributionResult$Distribution": "

        The distribution's information.

        " } }, "DistributionAlreadyExists": { "base": "

        The caller reference you attempted to create the distribution with is associated with another distribution.

        ", "refs": { } }, "DistributionConfig": { "base": "

        A distribution configuration.

        ", "refs": { "CreateDistributionRequest$DistributionConfig": "

        The distribution's configuration information.

        ", "Distribution$DistributionConfig": "

        The current configuration information for the distribution. Send a GET request to the /CloudFront API version/distribution ID/config resource.

        ", "DistributionConfigWithTags$DistributionConfig": "

        A distribution configuration.

        ", "GetDistributionConfigResult$DistributionConfig": "

        The distribution's configuration information.

        ", "UpdateDistributionRequest$DistributionConfig": "

        The distribution's configuration information.

        " } }, "DistributionConfigWithTags": { "base": "

        A distribution Configuration and a list of tags to be associated with the distribution.

        ", "refs": { "CreateDistributionWithTagsRequest$DistributionConfigWithTags": "

        The distribution's configuration information.

        " } }, "DistributionList": { "base": "

        A distribution list.

        ", "refs": { "ListDistributionsByWebACLIdResult$DistributionList": "

        The DistributionList type.

        ", "ListDistributionsResult$DistributionList": "

        The DistributionList type.

        " } }, "DistributionNotDisabled": { "base": null, "refs": { } }, "DistributionSummary": { "base": "

        A summary of the information about a CloudFront distribution.

        ", "refs": { "DistributionSummaryList$member": null } }, "DistributionSummaryList": { "base": null, "refs": { "DistributionList$Items": "

        A complex type that contains one DistributionSummary element for each distribution that was created by the current AWS account.

        " } }, "ForwardedValues": { "base": "

        A complex type that specifies how CloudFront handles query strings and cookies.

        ", "refs": { "CacheBehavior$ForwardedValues": "

        A complex type that specifies how CloudFront handles query strings and cookies.

        ", "DefaultCacheBehavior$ForwardedValues": "

        A complex type that specifies how CloudFront handles query strings and cookies.

        " } }, "GeoRestriction": { "base": "

        A complex type that controls the countries in which your content is distributed. CloudFront determines the location of your users using MaxMind GeoIP databases.

        ", "refs": { "Restrictions$GeoRestriction": null } }, "GeoRestrictionType": { "base": null, "refs": { "GeoRestriction$RestrictionType": "

        The method that you want to use to restrict distribution of your content by country:

        • none: No geo restriction is enabled, meaning access to content is not restricted by client geo location.

        • blacklist: The Location elements specify the countries in which you do not want CloudFront to distribute your content.

        • whitelist: The Location elements specify the countries in which you want CloudFront to distribute your content.

        " } }, "GetCloudFrontOriginAccessIdentityConfigRequest": { "base": "

        The origin access identity's configuration information. For more information, see CloudFrontOriginAccessIdentityConfigComplexType.

        ", "refs": { } }, "GetCloudFrontOriginAccessIdentityConfigResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "GetCloudFrontOriginAccessIdentityRequest": { "base": "

        The request to get an origin access identity's information.

        ", "refs": { } }, "GetCloudFrontOriginAccessIdentityResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "GetDistributionConfigRequest": { "base": "

        The request to get a distribution configuration.

        ", "refs": { } }, "GetDistributionConfigResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "GetDistributionRequest": { "base": "

        The request to get a distribution's information.

        ", "refs": { } }, "GetDistributionResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "GetInvalidationRequest": { "base": "

        The request to get an invalidation's information.

        ", "refs": { } }, "GetInvalidationResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "GetStreamingDistributionConfigRequest": { "base": "

        To request to get a streaming distribution configuration.

        ", "refs": { } }, "GetStreamingDistributionConfigResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "GetStreamingDistributionRequest": { "base": "

        The request to get a streaming distribution's information.

        ", "refs": { } }, "GetStreamingDistributionResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "HeaderList": { "base": null, "refs": { "Headers$Items": "

        A complex type that contains one Name element for each header that you want CloudFront to forward to the origin and to vary on for this cache behavior. If Quantity is 0, omit Items.

        " } }, "Headers": { "base": "

        A complex type that specifies the headers that you want CloudFront to forward to the origin for this cache behavior.

        For the headers that you specify, CloudFront also caches separate versions of a specified object based on the header values in viewer requests. For example, suppose viewer requests for logo.jpg contain a custom Product header that has a value of either Acme or Apex, and you configure CloudFront to cache your content based on values in the Product header. CloudFront forwards the Product header to the origin and caches the response from the origin once for each header value. For more information about caching based on header values, see How CloudFront Forwards and Caches Headers in the Amazon CloudFront Developer Guide.

        ", "refs": { "ForwardedValues$Headers": "

        A complex type that specifies the Headers, if any, that you want CloudFront to vary upon for this cache behavior.

        " } }, "HttpVersion": { "base": null, "refs": { "DistributionConfig$HttpVersion": "

        (Optional) Specify the maximum HTTP version that you want viewers to use to communicate with CloudFront. The default value for new web distributions is http2. Viewers that don't support HTTP/2 automatically use an earlier HTTP version.

        For viewers and CloudFront to use HTTP/2, viewers must support TLS 1.2 or later, and must support Server Name Identification (SNI).

        In general, configuring CloudFront to communicate with viewers using HTTP/2 reduces latency. You can improve performance by optimizing for HTTP/2. For more information, do an Internet search for \"http/2 optimization.\"

        ", "DistributionSummary$HttpVersion": "

        Specify the maximum HTTP version that you want viewers to use to communicate with CloudFront. The default value for new web distributions is http2. Viewers that don't support HTTP/2 will automatically use an earlier version.

        " } }, "IllegalUpdate": { "base": "

        Origin and CallerReference cannot be updated.

        ", "refs": { } }, "InconsistentQuantities": { "base": "

        The value of Quantity and the size of Items do not match.

        ", "refs": { } }, "InvalidArgument": { "base": "

        The argument is invalid.

        ", "refs": { } }, "InvalidDefaultRootObject": { "base": "

        The default root object file name is too big or contains an invalid character.

        ", "refs": { } }, "InvalidErrorCode": { "base": null, "refs": { } }, "InvalidForwardCookies": { "base": "

        Your request contains forward cookies option which doesn't match with the expectation for the whitelisted list of cookie names. Either list of cookie names has been specified when not allowed or list of cookie names is missing when expected.

        ", "refs": { } }, "InvalidGeoRestrictionParameter": { "base": null, "refs": { } }, "InvalidHeadersForS3Origin": { "base": null, "refs": { } }, "InvalidIfMatchVersion": { "base": "

        The If-Match version is missing or not valid for the distribution.

        ", "refs": { } }, "InvalidLocationCode": { "base": null, "refs": { } }, "InvalidMinimumProtocolVersion": { "base": null, "refs": { } }, "InvalidOrigin": { "base": "

        The Amazon S3 origin server specified does not refer to a valid Amazon S3 bucket.

        ", "refs": { } }, "InvalidOriginAccessIdentity": { "base": "

        The origin access identity is not valid or doesn't exist.

        ", "refs": { } }, "InvalidProtocolSettings": { "base": "

        You cannot specify SSLv3 as the minimum protocol version if you only want to support only clients that support Server Name Indication (SNI).

        ", "refs": { } }, "InvalidQueryStringParameters": { "base": null, "refs": { } }, "InvalidRelativePath": { "base": "

        The relative path is too big, is not URL-encoded, or does not begin with a slash (/).

        ", "refs": { } }, "InvalidRequiredProtocol": { "base": "

        This operation requires the HTTPS protocol. Ensure that you specify the HTTPS protocol in your request, or omit the RequiredProtocols element from your distribution configuration.

        ", "refs": { } }, "InvalidResponseCode": { "base": null, "refs": { } }, "InvalidTTLOrder": { "base": null, "refs": { } }, "InvalidTagging": { "base": null, "refs": { } }, "InvalidViewerCertificate": { "base": null, "refs": { } }, "InvalidWebACLId": { "base": null, "refs": { } }, "Invalidation": { "base": "

        An invalidation.

        ", "refs": { "CreateInvalidationResult$Invalidation": "

        The invalidation's information.

        ", "GetInvalidationResult$Invalidation": "

        The invalidation's information. For more information, see Invalidation Complex Type.

        " } }, "InvalidationBatch": { "base": "

        An invalidation batch.

        ", "refs": { "CreateInvalidationRequest$InvalidationBatch": "

        The batch information for the invalidation.

        ", "Invalidation$InvalidationBatch": "

        The current invalidation information for the batch request.

        " } }, "InvalidationList": { "base": "

        The InvalidationList complex type describes the list of invalidation objects. For more information about invalidation, see Invalidating Objects (Web Distributions Only) in the Amazon CloudFront Developer Guide.

        ", "refs": { "ListInvalidationsResult$InvalidationList": "

        Information about invalidation batches.

        " } }, "InvalidationSummary": { "base": "

        A summary of an invalidation request.

        ", "refs": { "InvalidationSummaryList$member": null } }, "InvalidationSummaryList": { "base": null, "refs": { "InvalidationList$Items": "

        A complex type that contains one InvalidationSummary element for each invalidation batch created by the current AWS account.

        " } }, "ItemSelection": { "base": null, "refs": { "CookiePreference$Forward": "

        Specifies which cookies to forward to the origin for this cache behavior: all, none, or the list of cookies specified in the WhitelistedNames complex type.

        Amazon S3 doesn't process cookies. When the cache behavior is forwarding requests to an Amazon S3 origin, specify none for the Forward element.

        " } }, "KeyPairIdList": { "base": null, "refs": { "KeyPairIds$Items": "

        A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber.

        For more information, see ActiveTrustedSigners.

        " } }, "KeyPairIds": { "base": "

        A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber.

        For more information, see ActiveTrustedSigners.

        ", "refs": { "Signer$KeyPairIds": "

        A complex type that lists the active CloudFront key pairs, if any, that are associated with AwsAccountNumber.

        " } }, "ListCloudFrontOriginAccessIdentitiesRequest": { "base": "

        The request to list origin access identities.

        ", "refs": { } }, "ListCloudFrontOriginAccessIdentitiesResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "ListDistributionsByWebACLIdRequest": { "base": "

        The request to list distributions that are associated with a specified AWS WAF web ACL.

        ", "refs": { } }, "ListDistributionsByWebACLIdResult": { "base": "

        The response to a request to list the distributions that are associated with a specified AWS WAF web ACL.

        ", "refs": { } }, "ListDistributionsRequest": { "base": "

        The request to list your distributions.

        ", "refs": { } }, "ListDistributionsResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "ListInvalidationsRequest": { "base": "

        The request to list invalidations.

        ", "refs": { } }, "ListInvalidationsResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "ListStreamingDistributionsRequest": { "base": "

        The request to list your streaming distributions.

        ", "refs": { } }, "ListStreamingDistributionsResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "ListTagsForResourceRequest": { "base": "

        The request to list tags for a CloudFront resource.

        ", "refs": { } }, "ListTagsForResourceResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "LocationList": { "base": null, "refs": { "GeoRestriction$Items": "

        A complex type that contains a Location element for each country in which you want CloudFront either to distribute your content (whitelist) or not distribute your content (blacklist).

        The Location element is a two-letter, uppercase country code for a country that you want to include in your blacklist or whitelist. Include one Location element for each country.

        CloudFront and MaxMind both use ISO 3166 country codes. For the current list of countries and the corresponding codes, see ISO 3166-1-alpha-2 code on the International Organization for Standardization website. You can also refer to the country list in the CloudFront console, which includes both country names and codes.

        " } }, "LoggingConfig": { "base": "

        A complex type that controls whether access logs are written for the distribution.

        ", "refs": { "DistributionConfig$Logging": "

        A complex type that controls whether access logs are written for the distribution.

        For more information about logging, see Access Logs in the Amazon CloudFront Developer Guide.

        " } }, "Method": { "base": null, "refs": { "MethodsList$member": null } }, "MethodsList": { "base": null, "refs": { "AllowedMethods$Items": "

        A complex type that contains the HTTP methods that you want CloudFront to process and forward to your origin.

        ", "CachedMethods$Items": "

        A complex type that contains the HTTP methods that you want CloudFront to cache responses to.

        " } }, "MinimumProtocolVersion": { "base": null, "refs": { "ViewerCertificate$MinimumProtocolVersion": "

        Specify the minimum version of the SSL/TLS protocol that you want CloudFront to use for HTTPS connections between viewers and CloudFront: SSLv3 or TLSv1. CloudFront serves your objects only to viewers that support SSL/TLS version that you specify and later versions. The TLSv1 protocol is more secure, so we recommend that you specify SSLv3 only if your users are using browsers or devices that don't support TLSv1. Note the following:

        • If you specify <CloudFrontDefaultCertificate>true<CloudFrontDefaultCertificate>, the minimum SSL protocol version is TLSv1 and can't be changed.

        • If you're using a custom certificate (if you specify a value for ACMCertificateArn or for IAMCertificateId) and if you're using SNI (if you specify sni-only for SSLSupportMethod), you must specify TLSv1 for MinimumProtocolVersion.

        " } }, "MissingBody": { "base": "

        This operation requires a body. Ensure that the body is present and the Content-Type header is set.

        ", "refs": { } }, "NoSuchCloudFrontOriginAccessIdentity": { "base": "

        The specified origin access identity does not exist.

        ", "refs": { } }, "NoSuchDistribution": { "base": "

        The specified distribution does not exist.

        ", "refs": { } }, "NoSuchInvalidation": { "base": "

        The specified invalidation does not exist.

        ", "refs": { } }, "NoSuchOrigin": { "base": "

        No origin exists with the specified Origin Id.

        ", "refs": { } }, "NoSuchResource": { "base": null, "refs": { } }, "NoSuchStreamingDistribution": { "base": "

        The specified streaming distribution does not exist.

        ", "refs": { } }, "Origin": { "base": "

        A complex type that describes the Amazon S3 bucket or the HTTP server (for example, a web server) from which CloudFront gets your files. You must create at least one origin.

        For the current limit on the number of origins that you can create for a distribution, see Amazon CloudFront Limits in the AWS General Reference.

        ", "refs": { "OriginList$member": null } }, "OriginCustomHeader": { "base": "

        A complex type that contains HeaderName and HeaderValue elements, if any, for this distribution.

        ", "refs": { "OriginCustomHeadersList$member": null } }, "OriginCustomHeadersList": { "base": null, "refs": { "CustomHeaders$Items": "

        Optional: A list that contains one OriginCustomHeader element for each custom header that you want CloudFront to forward to the origin. If Quantity is 0, omit Items.

        " } }, "OriginList": { "base": null, "refs": { "Origins$Items": "

        A complex type that contains origins for this distribution.

        " } }, "OriginProtocolPolicy": { "base": null, "refs": { "CustomOriginConfig$OriginProtocolPolicy": "

        The origin protocol policy to apply to your origin.

        " } }, "OriginSslProtocols": { "base": "

        A complex type that contains information about the SSL/TLS protocols that CloudFront can use when establishing an HTTPS connection with your origin.

        ", "refs": { "CustomOriginConfig$OriginSslProtocols": "

        The SSL/TLS protocols that you want CloudFront to use when communicating with your origin over HTTPS.

        " } }, "Origins": { "base": "

        A complex type that contains information about origins for this distribution.

        ", "refs": { "DistributionConfig$Origins": "

        A complex type that contains information about origins for this distribution.

        ", "DistributionSummary$Origins": "

        A complex type that contains information about origins for this distribution.

        " } }, "PathList": { "base": null, "refs": { "Paths$Items": "

        A complex type that contains a list of the paths that you want to invalidate.

        " } }, "Paths": { "base": "

        A complex type that contains information about the objects that you want to invalidate. For more information, see Specifying the Objects to Invalidate in the Amazon CloudFront Developer Guide.

        ", "refs": { "InvalidationBatch$Paths": "

        A complex type that contains information about the objects that you want to invalidate. For more information, see Specifying the Objects to Invalidate in the Amazon CloudFront Developer Guide.

        " } }, "PreconditionFailed": { "base": "

        The precondition given in one or more of the request-header fields evaluated to false.

        ", "refs": { } }, "PriceClass": { "base": null, "refs": { "DistributionConfig$PriceClass": "

        The price class that corresponds with the maximum price that you want to pay for CloudFront service. If you specify PriceClass_All, CloudFront responds to requests for your objects from all CloudFront edge locations.

        If you specify a price class other than PriceClass_All, CloudFront serves your objects from the CloudFront edge location that has the lowest latency among the edge locations in your price class. Viewers who are in or near regions that are excluded from your specified price class may encounter slower performance.

        For more information about price classes, see Choosing the Price Class for a CloudFront Distribution in the Amazon CloudFront Developer Guide. For information about CloudFront pricing, including how price classes map to CloudFront regions, see Amazon CloudFront Pricing.

        ", "DistributionSummary$PriceClass": null, "StreamingDistributionConfig$PriceClass": "

        A complex type that contains information about price class for this streaming distribution.

        ", "StreamingDistributionSummary$PriceClass": null } }, "QueryStringCacheKeys": { "base": null, "refs": { "ForwardedValues$QueryStringCacheKeys": "

        A complex type that contains information about the query string parameters that you want CloudFront to use for caching for this cache behavior.

        " } }, "QueryStringCacheKeysList": { "base": null, "refs": { "QueryStringCacheKeys$Items": "

        (Optional) A list that contains the query string parameters that you want CloudFront to use as a basis for caching for this cache behavior. If Quantity is 0, you can omit Items.

        " } }, "ResourceARN": { "base": null, "refs": { "ListTagsForResourceRequest$Resource": "

        An ARN of a CloudFront resource.

        ", "TagResourceRequest$Resource": "

        An ARN of a CloudFront resource.

        ", "UntagResourceRequest$Resource": "

        An ARN of a CloudFront resource.

        " } }, "Restrictions": { "base": "

        A complex type that identifies ways in which you want to restrict distribution of your content.

        ", "refs": { "DistributionConfig$Restrictions": null, "DistributionSummary$Restrictions": null } }, "S3Origin": { "base": "

        A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.

        ", "refs": { "StreamingDistributionConfig$S3Origin": "

        A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.

        ", "StreamingDistributionSummary$S3Origin": "

        A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.

        " } }, "S3OriginConfig": { "base": "

        A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead.

        ", "refs": { "Origin$S3OriginConfig": "

        A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin, use the CustomOriginConfig element instead.

        " } }, "SSLSupportMethod": { "base": null, "refs": { "ViewerCertificate$SSLSupportMethod": "

        If you specify a value for ACMCertificateArn or for IAMCertificateId, you must also specify how you want CloudFront to serve HTTPS requests: using a method that works for all clients or one that works for most clients:

        • vip: CloudFront uses dedicated IP addresses for your content and can respond to HTTPS requests from any viewer. However, you must request permission to use this feature, and you incur additional monthly charges.

        • sni-only: CloudFront can respond to HTTPS requests from viewers that support Server Name Indication (SNI). All modern browsers support SNI, but some browsers still in use don't support SNI. If some of your users' browsers don't support SNI, we recommend that you do one of the following:

          • Use the vip option (dedicated IP addresses) instead of sni-only.

          • Use the CloudFront SSL/TLS certificate instead of a custom certificate. This requires that you use the CloudFront domain name of your distribution in the URLs for your objects, for example, https://d111111abcdef8.cloudfront.net/logo.png.

          • If you can control which browser your users use, upgrade the browser to one that supports SNI.

          • Use HTTP instead of HTTPS.

        Do not specify a value for SSLSupportMethod if you specified <CloudFrontDefaultCertificate>true<CloudFrontDefaultCertificate>.

        For more information, see Using Alternate Domain Names and HTTPS in the Amazon CloudFront Developer Guide.

        " } }, "Signer": { "base": "

        A complex type that lists the AWS accounts that were included in the TrustedSigners complex type, as well as their active CloudFront key pair IDs, if any.

        ", "refs": { "SignerList$member": null } }, "SignerList": { "base": null, "refs": { "ActiveTrustedSigners$Items": "

        A complex type that contains one Signer complex type for each trusted signer that is specified in the TrustedSigners complex type.

        For more information, see ActiveTrustedSigners.

        " } }, "SslProtocol": { "base": null, "refs": { "SslProtocolsList$member": null } }, "SslProtocolsList": { "base": null, "refs": { "OriginSslProtocols$Items": "

        A list that contains allowed SSL/TLS protocols for this distribution.

        " } }, "StreamingDistribution": { "base": "

        A streaming distribution.

        ", "refs": { "CreateStreamingDistributionResult$StreamingDistribution": "

        The streaming distribution's information.

        ", "CreateStreamingDistributionWithTagsResult$StreamingDistribution": "

        The streaming distribution's information.

        ", "GetStreamingDistributionResult$StreamingDistribution": "

        The streaming distribution's information.

        ", "UpdateStreamingDistributionResult$StreamingDistribution": "

        The streaming distribution's information.

        " } }, "StreamingDistributionAlreadyExists": { "base": null, "refs": { } }, "StreamingDistributionConfig": { "base": "

        The RTMP distribution's configuration information.

        ", "refs": { "CreateStreamingDistributionRequest$StreamingDistributionConfig": "

        The streaming distribution's configuration information.

        ", "GetStreamingDistributionConfigResult$StreamingDistributionConfig": "

        The streaming distribution's configuration information.

        ", "StreamingDistribution$StreamingDistributionConfig": "

        The current configuration information for the RTMP distribution.

        ", "StreamingDistributionConfigWithTags$StreamingDistributionConfig": "

        A streaming distribution Configuration.

        ", "UpdateStreamingDistributionRequest$StreamingDistributionConfig": "

        The streaming distribution's configuration information.

        " } }, "StreamingDistributionConfigWithTags": { "base": "

        A streaming distribution Configuration and a list of tags to be associated with the streaming distribution.

        ", "refs": { "CreateStreamingDistributionWithTagsRequest$StreamingDistributionConfigWithTags": "

        The streaming distribution's configuration information.

        " } }, "StreamingDistributionList": { "base": "

        A streaming distribution list.

        ", "refs": { "ListStreamingDistributionsResult$StreamingDistributionList": "

        The StreamingDistributionList type.

        " } }, "StreamingDistributionNotDisabled": { "base": null, "refs": { } }, "StreamingDistributionSummary": { "base": "

        A summary of the information for an Amazon CloudFront streaming distribution.

        ", "refs": { "StreamingDistributionSummaryList$member": null } }, "StreamingDistributionSummaryList": { "base": null, "refs": { "StreamingDistributionList$Items": "

        A complex type that contains one StreamingDistributionSummary element for each distribution that was created by the current AWS account.

        " } }, "StreamingLoggingConfig": { "base": "

        A complex type that controls whether access logs are written for this streaming distribution.

        ", "refs": { "StreamingDistributionConfig$Logging": "

        A complex type that controls whether access logs are written for the streaming distribution.

        " } }, "Tag": { "base": "

        A complex type that contains Tag key and Tag value.

        ", "refs": { "TagList$member": null } }, "TagKey": { "base": "

        A string that contains Tag key.

        The string length should be between 1 and 128 characters. Valid characters include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.

        ", "refs": { "Tag$Key": "

        A string that contains Tag key.

        The string length should be between 1 and 128 characters. Valid characters include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.

        ", "TagKeyList$member": null } }, "TagKeyList": { "base": null, "refs": { "TagKeys$Items": "

        A complex type that contains Tag key elements.

        " } }, "TagKeys": { "base": "

        A complex type that contains zero or more Tag elements.

        ", "refs": { "UntagResourceRequest$TagKeys": "

        A complex type that contains zero or more Tag key elements.

        " } }, "TagList": { "base": null, "refs": { "Tags$Items": "

        A complex type that contains Tag elements.

        " } }, "TagResourceRequest": { "base": "

        The request to add tags to a CloudFront resource.

        ", "refs": { } }, "TagValue": { "base": null, "refs": { "Tag$Value": "

        A string that contains an optional Tag value.

        The string length should be between 0 and 256 characters. Valid characters include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.

        " } }, "Tags": { "base": "

        A complex type that contains zero or more Tag elements.

        ", "refs": { "DistributionConfigWithTags$Tags": "

        A complex type that contains zero or more Tag elements.

        ", "ListTagsForResourceResult$Tags": "

        A complex type that contains zero or more Tag elements.

        ", "StreamingDistributionConfigWithTags$Tags": "

        A complex type that contains zero or more Tag elements.

        ", "TagResourceRequest$Tags": "

        A complex type that contains zero or more Tag elements.

        " } }, "TooManyCacheBehaviors": { "base": "

        You cannot create more cache behaviors for the distribution.

        ", "refs": { } }, "TooManyCertificates": { "base": "

        You cannot create anymore custom SSL/TLS certificates.

        ", "refs": { } }, "TooManyCloudFrontOriginAccessIdentities": { "base": "

        Processing your request would cause you to exceed the maximum number of origin access identities allowed.

        ", "refs": { } }, "TooManyCookieNamesInWhiteList": { "base": "

        Your request contains more cookie names in the whitelist than are allowed per cache behavior.

        ", "refs": { } }, "TooManyDistributionCNAMEs": { "base": "

        Your request contains more CNAMEs than are allowed per distribution.

        ", "refs": { } }, "TooManyDistributions": { "base": "

        Processing your request would cause you to exceed the maximum number of distributions allowed.

        ", "refs": { } }, "TooManyHeadersInForwardedValues": { "base": null, "refs": { } }, "TooManyInvalidationsInProgress": { "base": "

        You have exceeded the maximum number of allowable InProgress invalidation batch requests, or invalidation objects.

        ", "refs": { } }, "TooManyOriginCustomHeaders": { "base": null, "refs": { } }, "TooManyOrigins": { "base": "

        You cannot create more origins for the distribution.

        ", "refs": { } }, "TooManyQueryStringParameters": { "base": null, "refs": { } }, "TooManyStreamingDistributionCNAMEs": { "base": null, "refs": { } }, "TooManyStreamingDistributions": { "base": "

        Processing your request would cause you to exceed the maximum number of streaming distributions allowed.

        ", "refs": { } }, "TooManyTrustedSigners": { "base": "

        Your request contains more trusted signers than are allowed per distribution.

        ", "refs": { } }, "TrustedSignerDoesNotExist": { "base": "

        One or more of your trusted signers do not exist.

        ", "refs": { } }, "TrustedSigners": { "base": "

        A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content.

        If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, see Serving Private Content through CloudFront in the Amazon Amazon CloudFront Developer Guide.

        If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items.

        To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.

        For more information about updating the distribution configuration, see DistributionConfig .

        ", "refs": { "CacheBehavior$TrustedSigners": "

        A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content.

        If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, see Serving Private Content through CloudFront in the Amazon Amazon CloudFront Developer Guide.

        If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items.

        To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.

        ", "DefaultCacheBehavior$TrustedSigners": "

        A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content.

        If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items. For more information, see Serving Private Content through CloudFront in the Amazon Amazon CloudFront Developer Guide.

        If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items.

        To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.

        ", "StreamingDistributionConfig$TrustedSigners": "

        A complex type that specifies any AWS accounts that you want to permit to create signed URLs for private content. If you want the distribution to use signed URLs, include this element; if you want the distribution to use public URLs, remove this element. For more information, see Serving Private Content through CloudFront in the Amazon CloudFront Developer Guide.

        ", "StreamingDistributionSummary$TrustedSigners": "

        A complex type that specifies the AWS accounts, if any, that you want to allow to create signed URLs for private content. If you want to require signed URLs in requests for objects in the target origin that match the PathPattern for this cache behavior, specify true for Enabled, and specify the applicable values for Quantity and Items.If you don't want to require signed URLs in requests for objects that match PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To add, change, or remove one or more trusted signers, change Enabled to true (if it's currently false), change Quantity as applicable, and specify all of the trusted signers that you want to include in the updated distribution.

        " } }, "UntagResourceRequest": { "base": "

        The request to remove tags from a CloudFront resource.

        ", "refs": { } }, "UpdateCloudFrontOriginAccessIdentityRequest": { "base": "

        The request to update an origin access identity.

        ", "refs": { } }, "UpdateCloudFrontOriginAccessIdentityResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "UpdateDistributionRequest": { "base": "

        The request to update a distribution.

        ", "refs": { } }, "UpdateDistributionResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "UpdateStreamingDistributionRequest": { "base": "

        The request to update a streaming distribution.

        ", "refs": { } }, "UpdateStreamingDistributionResult": { "base": "

        The returned result of the corresponding request.

        ", "refs": { } }, "ViewerCertificate": { "base": "

        A complex type that specifies the following:

        • Which SSL/TLS certificate to use when viewers request objects using HTTPS

        • Whether you want CloudFront to use dedicated IP addresses or SNI when you're using alternate domain names in your object names

        • The minimum protocol version that you want CloudFront to use when communicating with viewers

        For more information, see Using an HTTPS Connection to Access Your Objects in the Amazon Amazon CloudFront Developer Guide.

        ", "refs": { "DistributionConfig$ViewerCertificate": null, "DistributionSummary$ViewerCertificate": null } }, "ViewerProtocolPolicy": { "base": null, "refs": { "CacheBehavior$ViewerProtocolPolicy": "

        The protocol that viewers can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. You can specify the following options:

        • allow-all: Viewers can use HTTP or HTTPS.

        • redirect-to-https: If a viewer submits an HTTP request, CloudFront returns an HTTP status code of 301 (Moved Permanently) to the viewer along with the HTTPS URL. The viewer then resubmits the request using the new URL.

        • https-only: If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).

        For more information about requiring the HTTPS protocol, see Using an HTTPS Connection to Access Your Objects in the Amazon CloudFront Developer Guide.

        The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol to fetch the object. If you have recently changed from HTTP to HTTPS, we recommend that you clear your objects' cache because cached objects are protocol agnostic. That means that an edge location will return an object from the cache regardless of whether the current request protocol matches the protocol used previously. For more information, see Specifying How Long Objects and Errors Stay in a CloudFront Edge Cache (Expiration) in the Amazon CloudFront Developer Guide.

        ", "DefaultCacheBehavior$ViewerProtocolPolicy": "

        The protocol that viewers can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. You can specify the following options:

        • allow-all: Viewers can use HTTP or HTTPS.

        • redirect-to-https: If a viewer submits an HTTP request, CloudFront returns an HTTP status code of 301 (Moved Permanently) to the viewer along with the HTTPS URL. The viewer then resubmits the request using the new URL.

        • https-only: If a viewer sends an HTTP request, CloudFront returns an HTTP status code of 403 (Forbidden).

        For more information about requiring the HTTPS protocol, see Using an HTTPS Connection to Access Your Objects in the Amazon CloudFront Developer Guide.

        The only way to guarantee that viewers retrieve an object that was fetched from the origin using HTTPS is never to use any other protocol to fetch the object. If you have recently changed from HTTP to HTTPS, we recommend that you clear your objects' cache because cached objects are protocol agnostic. That means that an edge location will return an object from the cache regardless of whether the current request protocol matches the protocol used previously. For more information, see Specifying How Long Objects and Errors Stay in a CloudFront Edge Cache (Expiration) in the Amazon CloudFront Developer Guide.

        " } }, "boolean": { "base": null, "refs": { "ActiveTrustedSigners$Enabled": "

        Enabled is true if any of the AWS accounts listed in the TrustedSigners complex type for this RTMP distribution have active CloudFront key pairs. If not, Enabled is false.

        For more information, see ActiveTrustedSigners.

        ", "CacheBehavior$SmoothStreaming": "

        Indicates whether you want to distribute media files in the Microsoft Smooth Streaming format using the origin that is associated with this cache behavior. If so, specify true; if not, specify false. If you specify true for SmoothStreaming, you can still distribute other content using this cache behavior if the content matches the value of PathPattern.

        ", "CacheBehavior$Compress": "

        Whether you want CloudFront to automatically compress certain files for this cache behavior. If so, specify true; if not, specify false. For more information, see Serving Compressed Files in the Amazon CloudFront Developer Guide.

        ", "CloudFrontOriginAccessIdentityList$IsTruncated": "

        A flag that indicates whether more origin access identities remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more items in the list.

        ", "DefaultCacheBehavior$SmoothStreaming": "

        Indicates whether you want to distribute media files in the Microsoft Smooth Streaming format using the origin that is associated with this cache behavior. If so, specify true; if not, specify false. If you specify true for SmoothStreaming, you can still distribute other content using this cache behavior if the content matches the value of PathPattern.

        ", "DefaultCacheBehavior$Compress": "

        Whether you want CloudFront to automatically compress certain files for this cache behavior. If so, specify true; if not, specify false. For more information, see Serving Compressed Files in the Amazon CloudFront Developer Guide.

        ", "DistributionConfig$Enabled": "

        Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket.

        If you do not want to enable logging when you create a distribution, or if you want to disable logging for an existing distribution, specify false for Enabled, and specify empty Bucket and Prefix elements.

        If you specify false for Enabled but you specify values for Bucket and Prefix, the values are automatically deleted.

        ", "DistributionConfig$IsIPV6Enabled": "

        If you want CloudFront to respond to IPv6 DNS requests with an IPv6 address for your distribution, specify true. If you specify false, CloudFront responds to IPv6 DNS requests with the DNS response code NOERROR and with no IP addresses. This allows viewers to submit a second request, for an IPv4 address for your distribution.

        In general, you should enable IPv6 if you have users on IPv6 networks who want to access your content. However, if you're using signed URLs or signed cookies to restrict access to your content, and if you're using a custom policy that includes the IpAddress parameter to restrict the IP addresses that can access your content, do not enable IPv6. If you want to restrict access to some content by IP address and not restrict access to other content (or restrict access but not by IP address), you can create two distributions. For more information, see Creating a Signed URL Using a Custom Policy in the Amazon CloudFront Developer Guide.

        If you're using an Amazon Route 53 alias resource record set to route traffic to your CloudFront distribution, you need to create a second alias resource record set when both of the following are true:

        • You enable IPv6 for the distribution

        • You're using alternate domain names in the URLs for your objects

        For more information, see Routing Traffic to an Amazon CloudFront Web Distribution by Using Your Domain Name in the Amazon Route 53 Developer Guide.

        If you created a CNAME resource record set, either with Amazon Route 53 or with another DNS service, you don't need to make any changes. A CNAME record will route traffic to your distribution regardless of the IP address format of the viewer request.

        ", "DistributionList$IsTruncated": "

        A flag that indicates whether more distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.

        ", "DistributionSummary$Enabled": "

        Whether the distribution is enabled to accept user requests for content.

        ", "DistributionSummary$IsIPV6Enabled": "

        Whether CloudFront responds to IPv6 DNS requests with an IPv6 address for your distribution.

        ", "ForwardedValues$QueryString": "

        Indicates whether you want CloudFront to forward query strings to the origin that is associated with this cache behavior and cache based on the query string parameters. CloudFront behavior depends on the value of QueryString and on the values that you specify for QueryStringCacheKeys, if any:

        If you specify true for QueryString and you don't specify any values for QueryStringCacheKeys, CloudFront forwards all query string parameters to the origin and caches based on all query string parameters. Depending on how many query string parameters and values you have, this can adversely affect performance because CloudFront must forward more requests to the origin.

        If you specify true for QueryString and you specify one or more values for QueryStringCacheKeys, CloudFront forwards all query string parameters to the origin, but it only caches based on the query string parameters that you specify.

        If you specify false for QueryString, CloudFront doesn't forward any query string parameters to the origin, and doesn't cache based on query string parameters.

        For more information, see Configuring CloudFront to Cache Based on Query String Parameters in the Amazon CloudFront Developer Guide.

        ", "InvalidationList$IsTruncated": "

        A flag that indicates whether more invalidation batch requests remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more invalidation batches in the list.

        ", "LoggingConfig$Enabled": "

        Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you do not want to enable logging when you create a distribution or if you want to disable logging for an existing distribution, specify false for Enabled, and specify empty Bucket and Prefix elements. If you specify false for Enabled but you specify values for Bucket, prefix, and IncludeCookies, the values are automatically deleted.

        ", "LoggingConfig$IncludeCookies": "

        Specifies whether you want CloudFront to include cookies in access logs, specify true for IncludeCookies. If you choose to include cookies in logs, CloudFront logs all cookies regardless of how you configure the cache behaviors for this distribution. If you do not want to include cookies when you create a distribution or if you want to disable include cookies for an existing distribution, specify false for IncludeCookies.

        ", "StreamingDistributionConfig$Enabled": "

        Whether the streaming distribution is enabled to accept user requests for content.

        ", "StreamingDistributionList$IsTruncated": "

        A flag that indicates whether more streaming distributions remain to be listed. If your results were truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more distributions in the list.

        ", "StreamingDistributionSummary$Enabled": "

        Whether the distribution is enabled to accept end user requests for content.

        ", "StreamingLoggingConfig$Enabled": "

        Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you do not want to enable logging when you create a streaming distribution or if you want to disable logging for an existing streaming distribution, specify false for Enabled, and specify empty Bucket and Prefix elements. If you specify false for Enabled but you specify values for Bucket and Prefix, the values are automatically deleted.

        ", "TrustedSigners$Enabled": "

        Specifies whether you want to require viewers to use signed URLs to access the files specified by PathPattern and TargetOriginId.

        ", "ViewerCertificate$CloudFrontDefaultCertificate": "

        If you want viewers to use HTTPS to request your objects and you're using the CloudFront domain name of your distribution in your object URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), set to true. Omit this value if you are setting an ACMCertificateArn or IAMCertificateId.

        " } }, "integer": { "base": null, "refs": { "ActiveTrustedSigners$Quantity": "

        A complex type that contains one Signer complex type for each trusted signer specified in the TrustedSigners complex type.

        For more information, see ActiveTrustedSigners.

        ", "Aliases$Quantity": "

        The number of CNAME aliases, if any, that you want to associate with this distribution.

        ", "AllowedMethods$Quantity": "

        The number of HTTP methods that you want CloudFront to forward to your origin. Valid values are 2 (for GET and HEAD requests), 3 (for GET, HEAD, and OPTIONS requests) and 7 (for GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests).

        ", "CacheBehaviors$Quantity": "

        The number of cache behaviors for this distribution.

        ", "CachedMethods$Quantity": "

        The number of HTTP methods for which you want CloudFront to cache responses. Valid values are 2 (for caching responses to GET and HEAD requests) and 3 (for caching responses to GET, HEAD, and OPTIONS requests).

        ", "CloudFrontOriginAccessIdentityList$MaxItems": "

        The maximum number of origin access identities you want in the response body.

        ", "CloudFrontOriginAccessIdentityList$Quantity": "

        The number of CloudFront origin access identities that were created by the current AWS account.

        ", "CookieNames$Quantity": "

        The number of different cookies that you want CloudFront to forward to the origin for this cache behavior.

        ", "CustomErrorResponse$ErrorCode": "

        The HTTP status code for which you want to specify a custom error page and/or a caching duration.

        ", "CustomErrorResponses$Quantity": "

        The number of HTTP status codes for which you want to specify a custom error page and/or a caching duration. If Quantity is 0, you can omit Items.

        ", "CustomHeaders$Quantity": "

        The number of custom headers, if any, for this distribution.

        ", "CustomOriginConfig$HTTPPort": "

        The HTTP port the custom origin listens on.

        ", "CustomOriginConfig$HTTPSPort": "

        The HTTPS port the custom origin listens on.

        ", "Distribution$InProgressInvalidationBatches": "

        The number of invalidation batches currently in progress.

        ", "DistributionList$MaxItems": "

        The value you provided for the MaxItems request parameter.

        ", "DistributionList$Quantity": "

        The number of distributions that were created by the current AWS account.

        ", "GeoRestriction$Quantity": "

        When geo restriction is enabled, this is the number of countries in your whitelist or blacklist. Otherwise, when it is not enabled, Quantity is 0, and you can omit Items.

        ", "Headers$Quantity": "

        The number of different headers that you want CloudFront to forward to the origin for this cache behavior. You can configure each cache behavior in a web distribution to do one of the following:

        • Forward all headers to your origin: Specify 1 for Quantity and * for Name.

          If you configure CloudFront to forward all headers to your origin, CloudFront doesn't cache the objects associated with this cache behavior. Instead, it sends every request to the origin.

        • Forward a whitelist of headers you specify: Specify the number of headers that you want to forward, and specify the header names in Name elements. CloudFront caches your objects based on the values in all of the specified headers. CloudFront also forwards the headers that it forwards by default, but it caches your objects based only on the headers that you specify.

        • Forward only the default headers: Specify 0 for Quantity and omit Items. In this configuration, CloudFront doesn't cache based on the values in the request headers.

        ", "InvalidationList$MaxItems": "

        The value that you provided for the MaxItems request parameter.

        ", "InvalidationList$Quantity": "

        The number of invalidation batches that were created by the current AWS account.

        ", "KeyPairIds$Quantity": "

        The number of active CloudFront key pairs for AwsAccountNumber.

        For more information, see ActiveTrustedSigners.

        ", "OriginSslProtocols$Quantity": "

        The number of SSL/TLS protocols that you want to allow CloudFront to use when establishing an HTTPS connection with this origin.

        ", "Origins$Quantity": "

        The number of origins for this distribution.

        ", "Paths$Quantity": "

        The number of objects that you want to invalidate.

        ", "QueryStringCacheKeys$Quantity": "

        The number of whitelisted query string parameters for this cache behavior.

        ", "StreamingDistributionList$MaxItems": "

        The value you provided for the MaxItems request parameter.

        ", "StreamingDistributionList$Quantity": "

        The number of streaming distributions that were created by the current AWS account.

        ", "TrustedSigners$Quantity": "

        The number of trusted signers for this cache behavior.

        " } }, "long": { "base": null, "refs": { "CacheBehavior$MinTTL": "

        The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see Specifying How Long Objects and Errors Stay in a CloudFront Edge Cache (Expiration) in the Amazon Amazon CloudFront Developer Guide.

        You must specify 0 for MinTTL if you configure CloudFront to forward all headers to your origin (under Headers, if you specify 1 for Quantity and * for Name).

        ", "CacheBehavior$DefaultTTL": "

        The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. For more information, see Specifying How Long Objects and Errors Stay in a CloudFront Edge Cache (Expiration) in the Amazon CloudFront Developer Guide.

        ", "CacheBehavior$MaxTTL": "

        The maximum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. For more information, see Specifying How Long Objects and Errors Stay in a CloudFront Edge Cache (Expiration) in the Amazon CloudFront Developer Guide.

        ", "CustomErrorResponse$ErrorCachingMinTTL": "

        The minimum amount of time, in seconds, that you want CloudFront to cache the HTTP status code specified in ErrorCode. When this time period has elapsed, CloudFront queries your origin to see whether the problem that caused the error has been resolved and the requested object is now available.

        If you don't want to specify a value, include an empty element, <ErrorCachingMinTTL>, in the XML document.

        For more information, see Customizing Error Responses in the Amazon CloudFront Developer Guide.

        ", "DefaultCacheBehavior$MinTTL": "

        The minimum amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. For more information, see Specifying How Long Objects and Errors Stay in a CloudFront Edge Cache (Expiration) in the Amazon Amazon CloudFront Developer Guide.

        You must specify 0 for MinTTL if you configure CloudFront to forward all headers to your origin (under Headers, if you specify 1 for Quantity and * for Name).

        ", "DefaultCacheBehavior$DefaultTTL": "

        The default amount of time that you want objects to stay in CloudFront caches before CloudFront forwards another request to your origin to determine whether the object has been updated. The value that you specify applies only when your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires to objects. For more information, see Specifying How Long Objects and Errors Stay in a CloudFront Edge Cache (Expiration) in the Amazon CloudFront Developer Guide.

        ", "DefaultCacheBehavior$MaxTTL": null } }, "string": { "base": null, "refs": { "AccessDenied$Message": null, "AliasList$member": null, "AwsAccountNumberList$member": null, "BatchTooLarge$Message": null, "CNAMEAlreadyExists$Message": null, "CacheBehavior$PathPattern": "

        The pattern (for example, images/*.jpg) that specifies which requests to apply the behavior to. When CloudFront receives a viewer request, the requested path is compared with path patterns in the order in which cache behaviors are listed in the distribution.

        You can optionally include a slash (/) at the beginning of the path pattern. For example, /images/*.jpg. CloudFront behavior is the same with or without the leading /.

        The path pattern for the default cache behavior is * and cannot be changed. If the request for an object does not match the path pattern for any cache behaviors, CloudFront applies the behavior in the default cache behavior.

        For more information, see Path Pattern in the Amazon CloudFront Developer Guide.

        ", "CacheBehavior$TargetOriginId": "

        The value of ID for the origin that you want CloudFront to route requests to when a request matches the path pattern either for a cache behavior or for the default cache behavior.

        ", "CloudFrontOriginAccessIdentity$Id": "

        The ID for the origin access identity. For example: E74FTE3AJFJ256A.

        ", "CloudFrontOriginAccessIdentity$S3CanonicalUserId": "

        The Amazon S3 canonical user ID for the origin access identity, used when giving the origin access identity read permission to an object in Amazon S3.

        ", "CloudFrontOriginAccessIdentityAlreadyExists$Message": null, "CloudFrontOriginAccessIdentityConfig$CallerReference": "

        A unique number that ensures the request can't be replayed.

        If the CallerReference is new (no matter the content of the CloudFrontOriginAccessIdentityConfig object), a new origin access identity is created.

        If the CallerReference is a value already sent in a previous identity request, and the content of the CloudFrontOriginAccessIdentityConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request.

        If the CallerReference is a value you already sent in a previous request to create an identity, but the content of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists error.

        ", "CloudFrontOriginAccessIdentityConfig$Comment": "

        Any comments you want to include about the origin access identity.

        ", "CloudFrontOriginAccessIdentityInUse$Message": null, "CloudFrontOriginAccessIdentityList$Marker": "

        Use this when paginating results to indicate where to begin in your list of origin access identities. The results include identities in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last identity on that page).

        ", "CloudFrontOriginAccessIdentityList$NextMarker": "

        If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your origin access identities where they left off.

        ", "CloudFrontOriginAccessIdentitySummary$Id": "

        The ID for the origin access identity. For example: E74FTE3AJFJ256A.

        ", "CloudFrontOriginAccessIdentitySummary$S3CanonicalUserId": "

        The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin access identity read permission to an object in Amazon S3.

        ", "CloudFrontOriginAccessIdentitySummary$Comment": "

        The comment for this origin access identity, as originally specified when created.

        ", "CookieNameList$member": null, "CreateCloudFrontOriginAccessIdentityResult$Location": "

        The fully qualified URI of the new origin access identity just created. For example: https://cloudfront.amazonaws.com/2010-11-01/origin-access-identity/cloudfront/E74FTE3AJFJ256A.

        ", "CreateCloudFrontOriginAccessIdentityResult$ETag": "

        The current version of the origin access identity created.

        ", "CreateDistributionResult$Location": "

        The fully qualified URI of the new distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5.

        ", "CreateDistributionResult$ETag": "

        The current version of the distribution created.

        ", "CreateDistributionWithTagsResult$Location": "

        The fully qualified URI of the new distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5.

        ", "CreateDistributionWithTagsResult$ETag": "

        The current version of the distribution created.

        ", "CreateInvalidationRequest$DistributionId": "

        The distribution's id.

        ", "CreateInvalidationResult$Location": "

        The fully qualified URI of the distribution and invalidation batch request, including the Invalidation ID.

        ", "CreateStreamingDistributionResult$Location": "

        The fully qualified URI of the new streaming distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8.

        ", "CreateStreamingDistributionResult$ETag": "

        The current version of the streaming distribution created.

        ", "CreateStreamingDistributionWithTagsResult$Location": "

        The fully qualified URI of the new streaming distribution resource just created. For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8.

        ", "CreateStreamingDistributionWithTagsResult$ETag": null, "CustomErrorResponse$ResponsePagePath": "

        The path to the custom error page that you want CloudFront to return to a viewer when your origin returns the HTTP status code specified by ErrorCode, for example, /4xx-errors/403-forbidden.html. If you want to store your objects and your custom error pages in different locations, your distribution must include a cache behavior for which the following is true:

        • The value of PathPattern matches the path to your custom error messages. For example, suppose you saved custom error pages for 4xx errors in an Amazon S3 bucket in a directory named /4xx-errors. Your distribution must include a cache behavior for which the path pattern routes requests for your custom error pages to that location, for example, /4xx-errors/*.

        • The value of TargetOriginId specifies the value of the ID element for the origin that contains your custom error pages.

        If you specify a value for ResponsePagePath, you must also specify a value for ResponseCode. If you don't want to specify a value, include an empty element, <ResponsePagePath>, in the XML document.

        We recommend that you store custom error pages in an Amazon S3 bucket. If you store custom error pages on an HTTP server and the server starts to return 5xx errors, CloudFront can't get the files that you want to return to viewers because the origin server is unavailable.

        ", "CustomErrorResponse$ResponseCode": "

        The HTTP status code that you want CloudFront to return to the viewer along with the custom error page. There are a variety of reasons that you might want CloudFront to return a status code different from the status code that your origin returned to CloudFront, for example:

        • Some Internet devices (some firewalls and corporate proxies, for example) intercept HTTP 4xx and 5xx and prevent the response from being returned to the viewer. If you substitute 200, the response typically won't be intercepted.

        • If you don't care about distinguishing among different client errors or server errors, you can specify 400 or 500 as the ResponseCode for all 4xx or 5xx errors.

        • You might want to return a 200 status code (OK) and static website so your customers don't know that your website is down.

        If you specify a value for ResponseCode, you must also specify a value for ResponsePagePath. If you don't want to specify a value, include an empty element, <ResponseCode>, in the XML document.

        ", "DefaultCacheBehavior$TargetOriginId": "

        The value of ID for the origin that you want CloudFront to route requests to when a request matches the path pattern either for a cache behavior or for the default cache behavior.

        ", "DeleteCloudFrontOriginAccessIdentityRequest$Id": "

        The origin access identity's ID.

        ", "DeleteCloudFrontOriginAccessIdentityRequest$IfMatch": "

        The value of the ETag header you received from a previous GET or PUT request. For example: E2QWRUHAPOMQZL.

        ", "DeleteDistributionRequest$Id": "

        The distribution ID.

        ", "DeleteDistributionRequest$IfMatch": "

        The value of the ETag header that you received when you disabled the distribution. For example: E2QWRUHAPOMQZL.

        ", "DeleteStreamingDistributionRequest$Id": "

        The distribution ID.

        ", "DeleteStreamingDistributionRequest$IfMatch": "

        The value of the ETag header that you received when you disabled the streaming distribution. For example: E2QWRUHAPOMQZL.

        ", "Distribution$Id": "

        The identifier for the distribution. For example: EDFDVBD632BHDS5.

        ", "Distribution$ARN": "

        The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5, where 123456789012 is your AWS account ID.

        ", "Distribution$Status": "

        This response element indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated to all CloudFront edge locations.

        ", "Distribution$DomainName": "

        The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.

        ", "DistributionAlreadyExists$Message": null, "DistributionConfig$CallerReference": "

        A unique value (for example, a date-time stamp) that ensures that the request can't be replayed.

        If the value of CallerReference is new (regardless of the content of the DistributionConfig object), CloudFront creates a new distribution.

        If CallerReference is a value you already sent in a previous request to create a distribution, and if the content of the DistributionConfig is identical to the original request (ignoring white space), CloudFront returns the same the response that it returned to the original request.

        If CallerReference is a value you already sent in a previous request to create a distribution but the content of the DistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.

        ", "DistributionConfig$DefaultRootObject": "

        The object that you want CloudFront to request from your origin (for example, index.html) when a viewer requests the root URL for your distribution (http://www.example.com) instead of an object in your distribution (http://www.example.com/product-description.html). Specifying a default root object avoids exposing the contents of your distribution.

        Specify only the object name, for example, index.html. Do not add a / before the object name.

        If you don't want to specify a default root object when you create a distribution, include an empty DefaultRootObject element.

        To delete the default root object from an existing distribution, update the distribution configuration and include an empty DefaultRootObject element.

        To replace the default root object, update the distribution configuration and specify the new object.

        For more information about the default root object, see Creating a Default Root Object in the Amazon CloudFront Developer Guide.

        ", "DistributionConfig$Comment": "

        Any comments you want to include about the distribution.

        If you don't want to specify a comment, include an empty Comment element.

        To delete an existing comment, update the distribution configuration and include an empty Comment element.

        To add or change a comment, update the distribution configuration and specify the new comment.

        ", "DistributionConfig$WebACLId": "

        A unique identifier that specifies the AWS WAF web ACL, if any, to associate with this distribution.

        AWS WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to CloudFront, and lets you control access to your content. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, CloudFront responds to requests either with the requested content or with an HTTP 403 status code (Forbidden). You can also configure CloudFront to return a custom error page when a request is blocked. For more information about AWS WAF, see the AWS WAF Developer Guide.

        ", "DistributionList$Marker": "

        The value you provided for the Marker request parameter.

        ", "DistributionList$NextMarker": "

        If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your distributions where they left off.

        ", "DistributionNotDisabled$Message": null, "DistributionSummary$Id": "

        The identifier for the distribution. For example: EDFDVBD632BHDS5.

        ", "DistributionSummary$ARN": "

        The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5, where 123456789012 is your AWS account ID.

        ", "DistributionSummary$Status": "

        The current status of the distribution. When the status is Deployed, the distribution's information is propagated to all CloudFront edge locations.

        ", "DistributionSummary$DomainName": "

        The domain name that corresponds to the distribution. For example: d604721fxaaqy9.cloudfront.net.

        ", "DistributionSummary$Comment": "

        The comment originally specified when this distribution was created.

        ", "DistributionSummary$WebACLId": "

        The Web ACL Id (if any) associated with the distribution.

        ", "GetCloudFrontOriginAccessIdentityConfigRequest$Id": "

        The identity's ID.

        ", "GetCloudFrontOriginAccessIdentityConfigResult$ETag": "

        The current version of the configuration. For example: E2QWRUHAPOMQZL.

        ", "GetCloudFrontOriginAccessIdentityRequest$Id": "

        The identity's ID.

        ", "GetCloudFrontOriginAccessIdentityResult$ETag": "

        The current version of the origin access identity's information. For example: E2QWRUHAPOMQZL.

        ", "GetDistributionConfigRequest$Id": "

        The distribution's ID.

        ", "GetDistributionConfigResult$ETag": "

        The current version of the configuration. For example: E2QWRUHAPOMQZL.

        ", "GetDistributionRequest$Id": "

        The distribution's ID.

        ", "GetDistributionResult$ETag": "

        The current version of the distribution's information. For example: E2QWRUHAPOMQZL.

        ", "GetInvalidationRequest$DistributionId": "

        The distribution's ID.

        ", "GetInvalidationRequest$Id": "

        The identifier for the invalidation request, for example, IDFDVBD632BHDS5.

        ", "GetStreamingDistributionConfigRequest$Id": "

        The streaming distribution's ID.

        ", "GetStreamingDistributionConfigResult$ETag": "

        The current version of the configuration. For example: E2QWRUHAPOMQZL.

        ", "GetStreamingDistributionRequest$Id": "

        The streaming distribution's ID.

        ", "GetStreamingDistributionResult$ETag": "

        The current version of the streaming distribution's information. For example: E2QWRUHAPOMQZL.

        ", "HeaderList$member": null, "IllegalUpdate$Message": null, "InconsistentQuantities$Message": null, "InvalidArgument$Message": null, "InvalidDefaultRootObject$Message": null, "InvalidErrorCode$Message": null, "InvalidForwardCookies$Message": null, "InvalidGeoRestrictionParameter$Message": null, "InvalidHeadersForS3Origin$Message": null, "InvalidIfMatchVersion$Message": null, "InvalidLocationCode$Message": null, "InvalidMinimumProtocolVersion$Message": null, "InvalidOrigin$Message": null, "InvalidOriginAccessIdentity$Message": null, "InvalidProtocolSettings$Message": null, "InvalidQueryStringParameters$Message": null, "InvalidRelativePath$Message": null, "InvalidRequiredProtocol$Message": null, "InvalidResponseCode$Message": null, "InvalidTTLOrder$Message": null, "InvalidTagging$Message": null, "InvalidViewerCertificate$Message": null, "InvalidWebACLId$Message": null, "Invalidation$Id": "

        The identifier for the invalidation request. For example: IDFDVBD632BHDS5.

        ", "Invalidation$Status": "

        The status of the invalidation request. When the invalidation batch is finished, the status is Completed.

        ", "InvalidationBatch$CallerReference": "

        A value that you specify to uniquely identify an invalidation request. CloudFront uses the value to prevent you from accidentally resubmitting an identical request. Whenever you create a new invalidation request, you must specify a new value for CallerReference and change other values in the request as applicable. One way to ensure that the value of CallerReference is unique is to use a timestamp, for example, 20120301090000.

        If you make a second invalidation request with the same value for CallerReference, and if the rest of the request is the same, CloudFront doesn't create a new invalidation request. Instead, CloudFront returns information about the invalidation request that you previously created with the same CallerReference.

        If CallerReference is a value you already sent in a previous invalidation batch request but the content of any Path is different from the original request, CloudFront returns an InvalidationBatchAlreadyExists error.

        ", "InvalidationList$Marker": "

        The value that you provided for the Marker request parameter.

        ", "InvalidationList$NextMarker": "

        If IsTruncated is true, this element is present and contains the value that you can use for the Marker request parameter to continue listing your invalidation batches where they left off.

        ", "InvalidationSummary$Id": "

        The unique ID for an invalidation request.

        ", "InvalidationSummary$Status": "

        The status of an invalidation request.

        ", "KeyPairIdList$member": null, "ListCloudFrontOriginAccessIdentitiesRequest$Marker": "

        Use this when paginating results to indicate where to begin in your list of origin access identities. The results include identities in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last identity on that page).

        ", "ListCloudFrontOriginAccessIdentitiesRequest$MaxItems": "

        The maximum number of origin access identities you want in the response body.

        ", "ListDistributionsByWebACLIdRequest$Marker": "

        Use Marker and MaxItems to control pagination of results. If you have more than MaxItems distributions that satisfy the request, the response includes a NextMarker element. To get the next page of results, submit another request. For the value of Marker, specify the value of NextMarker from the last response. (For the first request, omit Marker.)

        ", "ListDistributionsByWebACLIdRequest$MaxItems": "

        The maximum number of distributions that you want CloudFront to return in the response body. The maximum and default values are both 100.

        ", "ListDistributionsByWebACLIdRequest$WebACLId": "

        The ID of the AWS WAF web ACL that you want to list the associated distributions. If you specify \"null\" for the ID, the request returns a list of the distributions that aren't associated with a web ACL.

        ", "ListDistributionsRequest$Marker": "

        Use this when paginating results to indicate where to begin in your list of distributions. The results include distributions in the list that occur after the marker. To get the next page of results, set the Marker to the value of the NextMarker from the current page's response (which is also the ID of the last distribution on that page).

        ", "ListDistributionsRequest$MaxItems": "

        The maximum number of distributions you want in the response body.

        ", "ListInvalidationsRequest$DistributionId": "

        The distribution's ID.

        ", "ListInvalidationsRequest$Marker": "

        Use this parameter when paginating results to indicate where to begin in your list of invalidation batches. Because the results are returned in decreasing order from most recent to oldest, the most recent results are on the first page, the second page will contain earlier results, and so on. To get the next page of results, set Marker to the value of the NextMarker from the current page's response. This value is the same as the ID of the last invalidation batch on that page.

        ", "ListInvalidationsRequest$MaxItems": "

        The maximum number of invalidation batches that you want in the response body.

        ", "ListStreamingDistributionsRequest$Marker": "

        The value that you provided for the Marker request parameter.

        ", "ListStreamingDistributionsRequest$MaxItems": "

        The value that you provided for the MaxItems request parameter.

        ", "LocationList$member": null, "LoggingConfig$Bucket": "

        The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.

        ", "LoggingConfig$Prefix": "

        An optional string that you want CloudFront to prefix to the access log filenames for this distribution, for example, myprefix/. If you want to enable logging, but you do not want to specify a prefix, you still must include an empty Prefix element in the Logging element.

        ", "MissingBody$Message": null, "NoSuchCloudFrontOriginAccessIdentity$Message": null, "NoSuchDistribution$Message": null, "NoSuchInvalidation$Message": null, "NoSuchOrigin$Message": null, "NoSuchResource$Message": null, "NoSuchStreamingDistribution$Message": null, "Origin$Id": "

        A unique identifier for the origin. The value of Id must be unique within the distribution.

        When you specify the value of TargetOriginId for the default cache behavior or for another cache behavior, you indicate the origin to which you want the cache behavior to route requests by specifying the value of the Id element for that origin. When a request matches the path pattern for that cache behavior, CloudFront routes the request to the specified origin. For more information, see Cache Behavior Settings in the Amazon CloudFront Developer Guide.

        ", "Origin$DomainName": "

        Amazon S3 origins: The DNS name of the Amazon S3 bucket from which you want CloudFront to get objects for this origin, for example, myawsbucket.s3.amazonaws.com.

        Constraints for Amazon S3 origins:

        • If you configured Amazon S3 Transfer Acceleration for your bucket, do not specify the s3-accelerate endpoint for DomainName.

        • The bucket name must be between 3 and 63 characters long (inclusive).

        • The bucket name must contain only lowercase characters, numbers, periods, underscores, and dashes.

        • The bucket name must not contain adjacent periods.

        Custom Origins: The DNS domain name for the HTTP server from which you want CloudFront to get objects for this origin, for example, www.example.com.

        Constraints for custom origins:

        • DomainName must be a valid DNS name that contains only a-z, A-Z, 0-9, dot (.), hyphen (-), or underscore (_) characters.

        • The name cannot exceed 128 characters.

        ", "Origin$OriginPath": "

        An optional element that causes CloudFront to request your content from a directory in your Amazon S3 bucket or your custom origin. When you include the OriginPath element, specify the directory name, beginning with a /. CloudFront appends the directory name to the value of DomainName, for example, example.com/production. Do not include a / at the end of the directory name.

        For example, suppose you've specified the following values for your distribution:

        • DomainName: An Amazon S3 bucket named myawsbucket.

        • OriginPath: /production

        • CNAME: example.com

        When a user enters example.com/index.html in a browser, CloudFront sends a request to Amazon S3 for myawsbucket/production/index.html.

        When a user enters example.com/acme/index.html in a browser, CloudFront sends a request to Amazon S3 for myawsbucket/production/acme/index.html.

        ", "OriginCustomHeader$HeaderName": "

        The name of a header that you want CloudFront to forward to your origin. For more information, see Forwarding Custom Headers to Your Origin (Web Distributions Only) in the Amazon Amazon CloudFront Developer Guide.

        ", "OriginCustomHeader$HeaderValue": "

        The value for the header that you specified in the HeaderName field.

        ", "PathList$member": null, "PreconditionFailed$Message": null, "QueryStringCacheKeysList$member": null, "S3Origin$DomainName": "

        The DNS name of the Amazon S3 origin.

        ", "S3Origin$OriginAccessIdentity": "

        The CloudFront origin access identity to associate with the RTMP distribution. Use an origin access identity to configure the distribution so that end users can only access objects in an Amazon S3 bucket through CloudFront.

        If you want end users to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty OriginAccessIdentity element.

        To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty OriginAccessIdentity element.

        To replace the origin access identity, update the distribution configuration and specify the new origin access identity.

        For more information, see Using an Origin Access Identity to Restrict Access to Your Amazon S3 Content in the Amazon Amazon CloudFront Developer Guide.

        ", "S3OriginConfig$OriginAccessIdentity": "

        The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that viewers can only access objects in an Amazon S3 bucket through CloudFront. The format of the value is:

        origin-access-identity/CloudFront/ID-of-origin-access-identity

        where ID-of-origin-access-identity is the value that CloudFront returned in the ID element when you created the origin access identity.

        If you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty OriginAccessIdentity element.

        To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty OriginAccessIdentity element.

        To replace the origin access identity, update the distribution configuration and specify the new origin access identity.

        For more information about the origin access identity, see Serving Private Content through CloudFront in the Amazon CloudFront Developer Guide.

        ", "Signer$AwsAccountNumber": "

        An AWS account that is included in the TrustedSigners complex type for this RTMP distribution. Valid values include:

        • self, which is the AWS account used to create the distribution.

        • An AWS account number.

        ", "StreamingDistribution$Id": "

        The identifier for the RTMP distribution. For example: EGTXBD79EXAMPLE.

        ", "StreamingDistribution$ARN": null, "StreamingDistribution$Status": "

        The current status of the RTMP distribution. When the status is Deployed, the distribution's information is propagated to all CloudFront edge locations.

        ", "StreamingDistribution$DomainName": "

        The domain name that corresponds to the streaming distribution. For example: s5c39gqb8ow64r.cloudfront.net.

        ", "StreamingDistributionAlreadyExists$Message": null, "StreamingDistributionConfig$CallerReference": "

        A unique number that ensures that the request can't be replayed. If the CallerReference is new (no matter the content of the StreamingDistributionConfig object), a new streaming distribution is created. If the CallerReference is a value that you already sent in a previous request to create a streaming distribution, and the content of the StreamingDistributionConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value that you already sent in a previous request to create a streaming distribution but the content of the StreamingDistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.

        ", "StreamingDistributionConfig$Comment": "

        Any comments you want to include about the streaming distribution.

        ", "StreamingDistributionList$Marker": "

        The value you provided for the Marker request parameter.

        ", "StreamingDistributionList$NextMarker": "

        If IsTruncated is true, this element is present and contains the value you can use for the Marker request parameter to continue listing your RTMP distributions where they left off.

        ", "StreamingDistributionNotDisabled$Message": null, "StreamingDistributionSummary$Id": "

        The identifier for the distribution. For example: EDFDVBD632BHDS5.

        ", "StreamingDistributionSummary$ARN": "

        The ARN (Amazon Resource Name) for the streaming distribution. For example: arn:aws:cloudfront::123456789012:streaming-distribution/EDFDVBD632BHDS5, where 123456789012 is your AWS account ID.

        ", "StreamingDistributionSummary$Status": "

        Indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated throughout the Amazon CloudFront system.

        ", "StreamingDistributionSummary$DomainName": "

        The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.

        ", "StreamingDistributionSummary$Comment": "

        The comment originally specified when this distribution was created.

        ", "StreamingLoggingConfig$Bucket": "

        The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.

        ", "StreamingLoggingConfig$Prefix": "

        An optional string that you want CloudFront to prefix to the access log filenames for this streaming distribution, for example, myprefix/. If you want to enable logging, but you do not want to specify a prefix, you still must include an empty Prefix element in the Logging element.

        ", "TooManyCacheBehaviors$Message": null, "TooManyCertificates$Message": null, "TooManyCloudFrontOriginAccessIdentities$Message": null, "TooManyCookieNamesInWhiteList$Message": null, "TooManyDistributionCNAMEs$Message": null, "TooManyDistributions$Message": null, "TooManyHeadersInForwardedValues$Message": null, "TooManyInvalidationsInProgress$Message": null, "TooManyOriginCustomHeaders$Message": null, "TooManyOrigins$Message": null, "TooManyQueryStringParameters$Message": null, "TooManyStreamingDistributionCNAMEs$Message": null, "TooManyStreamingDistributions$Message": null, "TooManyTrustedSigners$Message": null, "TrustedSignerDoesNotExist$Message": null, "UpdateCloudFrontOriginAccessIdentityRequest$Id": "

        The identity's id.

        ", "UpdateCloudFrontOriginAccessIdentityRequest$IfMatch": "

        The value of the ETag header that you received when retrieving the identity's configuration. For example: E2QWRUHAPOMQZL.

        ", "UpdateCloudFrontOriginAccessIdentityResult$ETag": "

        The current version of the configuration. For example: E2QWRUHAPOMQZL.

        ", "UpdateDistributionRequest$Id": "

        The distribution's id.

        ", "UpdateDistributionRequest$IfMatch": "

        The value of the ETag header that you received when retrieving the distribution's configuration. For example: E2QWRUHAPOMQZL.

        ", "UpdateDistributionResult$ETag": "

        The current version of the configuration. For example: E2QWRUHAPOMQZL.

        ", "UpdateStreamingDistributionRequest$Id": "

        The streaming distribution's id.

        ", "UpdateStreamingDistributionRequest$IfMatch": "

        The value of the ETag header that you received when retrieving the streaming distribution's configuration. For example: E2QWRUHAPOMQZL.

        ", "UpdateStreamingDistributionResult$ETag": "

        The current version of the configuration. For example: E2QWRUHAPOMQZL.

        ", "ViewerCertificate$IAMCertificateId": "

        If you want viewers to use HTTPS to request your objects and you're using an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), specify the IAM certificate identifier of the custom viewer certificate for this distribution. Specify either this value, ACMCertificateArn, or CloudFrontDefaultCertificate.

        ", "ViewerCertificate$ACMCertificateArn": "

        If you want viewers to use HTTPS to request your objects and you're using an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), specify the ACM certificate ARN of the custom viewer certificate for this distribution. Specify either this value, IAMCertificateId, or CloudFrontDefaultCertificate.

        ", "ViewerCertificate$Certificate": "

        Include one of these values to specify the following:

        • Whether you want viewers to use HTTP or HTTPS to request your objects.

        • If you want viewers to use HTTPS, whether you're using an alternate domain name such as example.com or the CloudFront domain name for your distribution, such as d111111abcdef8.cloudfront.net.

        • If you're using an alternate domain name, whether AWS Certificate Manager (ACM) provided the certificate, or you purchased a certificate from a third-party certificate authority and imported it into ACM or uploaded it to the IAM certificate store.

        You must specify one (and only one) of the three values. Do not specify false for CloudFrontDefaultCertificate.

        If you want viewers to use HTTP to request your objects: Specify the following value:

        <CloudFrontDefaultCertificate>true<CloudFrontDefaultCertificate>

        In addition, specify allow-all for ViewerProtocolPolicy for all of your cache behaviors.

        If you want viewers to use HTTPS to request your objects: Choose the type of certificate that you want to use based on whether you're using an alternate domain name for your objects or the CloudFront domain name:

        • If you're using an alternate domain name, such as example.com: Specify one of the following values, depending on whether ACM provided your certificate or you purchased your certificate from third-party certificate authority:

          • <ACMCertificateArn>ARN for ACM SSL/TLS certificate<ACMCertificateArn> where ARN for ACM SSL/TLS certificate is the ARN for the ACM SSL/TLS certificate that you want to use for this distribution.

          • <IAMCertificateId>IAM certificate ID<IAMCertificateId> where IAM certificate ID is the ID that IAM returned when you added the certificate to the IAM certificate store.

          If you specify ACMCertificateArn or IAMCertificateId, you must also specify a value for SSLSupportMethod.

          If you choose to use an ACM certificate or a certificate in the IAM certificate store, we recommend that you use only an alternate domain name in your object URLs (https://example.com/logo.jpg). If you use the domain name that is associated with your CloudFront distribution (https://d111111abcdef8.cloudfront.net/logo.jpg) and the viewer supports SNI, then CloudFront behaves normally. However, if the browser does not support SNI, the user's experience depends on the value that you choose for SSLSupportMethod:

          • vip: The viewer displays a warning because there is a mismatch between the CloudFront domain name and the domain name in your SSL/TLS certificate.

          • sni-only: CloudFront drops the connection with the browser without returning the object.

        • If you're using the CloudFront domain name for your distribution, such as d111111abcdef8.cloudfront.net : Specify the following value:

          <CloudFrontDefaultCertificate>true<CloudFrontDefaultCertificate>

          If you want viewers to use HTTPS, you must also specify one of the following values in your cache behaviors:

          • <ViewerProtocolPolicy>https-only<ViewerProtocolPolicy>

          • <ViewerProtocolPolicy>redirect-to-https<ViewerProtocolPolicy>

          You can also optionally require that CloudFront use HTTPS to communicate with your origin by specifying one of the following values for the applicable origins:

          • <OriginProtocolPolicy>https-only<OriginProtocolPolicy>

          • <OriginProtocolPolicy>match-viewer<OriginProtocolPolicy>

          For more information, see Using Alternate Domain Names and HTTPS in the Amazon CloudFront Developer Guide.

        " } }, "timestamp": { "base": null, "refs": { "Distribution$LastModifiedTime": "

        The date and time the distribution was last modified.

        ", "DistributionSummary$LastModifiedTime": "

        The date and time the distribution was last modified.

        ", "Invalidation$CreateTime": "

        The date and time the invalidation request was first made.

        ", "InvalidationSummary$CreateTime": null, "StreamingDistribution$LastModifiedTime": "

        The date and time that the distribution was last modified.

        ", "StreamingDistributionSummary$LastModifiedTime": "

        The date and time the distribution was last modified.

        " } } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-09-29/examples-1.json000066400000000000000000000000541300374646400240750ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-09-29/paginators-1.json000066400000000000000000000021461300374646400244320ustar00rootroot00000000000000{ "pagination": { "ListCloudFrontOriginAccessIdentities": { "input_token": "Marker", "output_token": "CloudFrontOriginAccessIdentityList.NextMarker", "limit_key": "MaxItems", "more_results": "CloudFrontOriginAccessIdentityList.IsTruncated", "result_key": "CloudFrontOriginAccessIdentityList.Items" }, "ListDistributions": { "input_token": "Marker", "output_token": "DistributionList.NextMarker", "limit_key": "MaxItems", "more_results": "DistributionList.IsTruncated", "result_key": "DistributionList.Items" }, "ListInvalidations": { "input_token": "Marker", "output_token": "InvalidationList.NextMarker", "limit_key": "MaxItems", "more_results": "InvalidationList.IsTruncated", "result_key": "InvalidationList.Items" }, "ListStreamingDistributions": { "input_token": "Marker", "output_token": "StreamingDistributionList.NextMarker", "limit_key": "MaxItems", "more_results": "StreamingDistributionList.IsTruncated", "result_key": "StreamingDistributionList.Items" } } } aws-sdk-go-1.4.22/models/apis/cloudfront/2016-09-29/waiters-2.json000066400000000000000000000022401300374646400237350ustar00rootroot00000000000000{ "version": 2, "waiters": { "DistributionDeployed": { "delay": 60, "operation": "GetDistribution", "maxAttempts": 25, "description": "Wait until a distribution is deployed.", "acceptors": [ { "expected": "Deployed", "matcher": "path", "state": "success", "argument": "Distribution.Status" } ] }, "InvalidationCompleted": { "delay": 20, "operation": "GetInvalidation", "maxAttempts": 30, "description": "Wait until an invalidation has completed.", "acceptors": [ { "expected": "Completed", "matcher": "path", "state": "success", "argument": "Invalidation.Status" } ] }, "StreamingDistributionDeployed": { "delay": 60, "operation": "GetStreamingDistribution", "maxAttempts": 25, "description": "Wait until a streaming distribution is deployed.", "acceptors": [ { "expected": "Deployed", "matcher": "path", "state": "success", "argument": "StreamingDistribution.Status" } ] } } } aws-sdk-go-1.4.22/models/apis/cloudhsm/000077500000000000000000000000001300374646400176205ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudhsm/2014-05-30/000077500000000000000000000000001300374646400206505ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudhsm/2014-05-30/api-2.json000066400000000000000000000531321300374646400224570ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2014-05-30", "endpointPrefix":"cloudhsm", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"CloudHSM", "serviceFullName":"Amazon CloudHSM", "signatureVersion":"v4", "targetPrefix":"CloudHsmFrontendService" }, "operations":{ "AddTagsToResource":{ "name":"AddTagsToResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsToResourceRequest"}, "output":{"shape":"AddTagsToResourceResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] }, "CreateHapg":{ "name":"CreateHapg", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateHapgRequest"}, "output":{"shape":"CreateHapgResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] }, "CreateHsm":{ "name":"CreateHsm", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateHsmRequest"}, "output":{"shape":"CreateHsmResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] }, "CreateLunaClient":{ "name":"CreateLunaClient", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateLunaClientRequest"}, "output":{"shape":"CreateLunaClientResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] }, "DeleteHapg":{ "name":"DeleteHapg", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteHapgRequest"}, "output":{"shape":"DeleteHapgResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] }, "DeleteHsm":{ "name":"DeleteHsm", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteHsmRequest"}, "output":{"shape":"DeleteHsmResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] }, "DeleteLunaClient":{ "name":"DeleteLunaClient", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteLunaClientRequest"}, "output":{"shape":"DeleteLunaClientResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] }, "DescribeHapg":{ "name":"DescribeHapg", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeHapgRequest"}, "output":{"shape":"DescribeHapgResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] }, "DescribeHsm":{ "name":"DescribeHsm", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeHsmRequest"}, "output":{"shape":"DescribeHsmResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] }, "DescribeLunaClient":{ "name":"DescribeLunaClient", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeLunaClientRequest"}, "output":{"shape":"DescribeLunaClientResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] }, "GetConfig":{ "name":"GetConfig", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetConfigRequest"}, "output":{"shape":"GetConfigResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] }, "ListAvailableZones":{ "name":"ListAvailableZones", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListAvailableZonesRequest"}, "output":{"shape":"ListAvailableZonesResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] }, "ListHapgs":{ "name":"ListHapgs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListHapgsRequest"}, "output":{"shape":"ListHapgsResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] }, "ListHsms":{ "name":"ListHsms", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListHsmsRequest"}, "output":{"shape":"ListHsmsResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] }, "ListLunaClients":{ "name":"ListLunaClients", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListLunaClientsRequest"}, "output":{"shape":"ListLunaClientsResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTagsForResourceRequest"}, "output":{"shape":"ListTagsForResourceResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] }, "ModifyHapg":{ "name":"ModifyHapg", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyHapgRequest"}, "output":{"shape":"ModifyHapgResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] }, "ModifyHsm":{ "name":"ModifyHsm", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyHsmRequest"}, "output":{"shape":"ModifyHsmResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] }, "ModifyLunaClient":{ "name":"ModifyLunaClient", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyLunaClientRequest"}, "output":{"shape":"ModifyLunaClientResponse"}, "errors":[ {"shape":"CloudHsmServiceException"} ] }, "RemoveTagsFromResource":{ "name":"RemoveTagsFromResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsFromResourceRequest"}, "output":{"shape":"RemoveTagsFromResourceResponse"}, "errors":[ {"shape":"CloudHsmServiceException"}, {"shape":"CloudHsmInternalException"}, {"shape":"InvalidRequestException"} ] } }, "shapes":{ "AZ":{ "type":"string", "pattern":"[a-zA-Z0-9\\-]*" }, "AZList":{ "type":"list", "member":{"shape":"AZ"} }, "AddTagsToResourceRequest":{ "type":"structure", "required":[ "ResourceArn", "TagList" ], "members":{ "ResourceArn":{"shape":"String"}, "TagList":{"shape":"TagList"} } }, "AddTagsToResourceResponse":{ "type":"structure", "required":["Status"], "members":{ "Status":{"shape":"String"} } }, "Boolean":{"type":"boolean"}, "Certificate":{ "type":"string", "max":2400, "min":600, "pattern":"[\\w :+=./\\n-]*" }, "CertificateFingerprint":{ "type":"string", "pattern":"([0-9a-fA-F][0-9a-fA-F]:){15}[0-9a-fA-F][0-9a-fA-F]" }, "ClientArn":{ "type":"string", "pattern":"arn:aws(-iso)?:cloudhsm:[a-zA-Z0-9\\-]*:[0-9]{12}:client-[0-9a-f]{8}" }, "ClientLabel":{ "type":"string", "pattern":"[a-zA-Z0-9_.-]{2,64}" }, "ClientList":{ "type":"list", "member":{"shape":"ClientArn"} }, "ClientToken":{ "type":"string", "pattern":"[a-zA-Z0-9]{1,64}" }, "ClientVersion":{ "type":"string", "enum":[ "5.1", "5.3" ] }, "CloudHsmInternalException":{ "type":"structure", "members":{ }, "exception":true, "fault":true }, "CloudHsmObjectState":{ "type":"string", "enum":[ "READY", "UPDATING", "DEGRADED" ] }, "CloudHsmServiceException":{ "type":"structure", "members":{ "message":{"shape":"String"}, "retryable":{"shape":"Boolean"} }, "exception":true }, "CreateHapgRequest":{ "type":"structure", "required":["Label"], "members":{ "Label":{"shape":"Label"} } }, "CreateHapgResponse":{ "type":"structure", "members":{ "HapgArn":{"shape":"HapgArn"} } }, "CreateHsmRequest":{ "type":"structure", "required":[ "SubnetId", "SshKey", "IamRoleArn", "SubscriptionType" ], "members":{ "SubnetId":{ "shape":"SubnetId", "locationName":"SubnetId" }, "SshKey":{ "shape":"SshKey", "locationName":"SshKey" }, "EniIp":{ "shape":"IpAddress", "locationName":"EniIp" }, "IamRoleArn":{ "shape":"IamRoleArn", "locationName":"IamRoleArn" }, "ExternalId":{ "shape":"ExternalId", "locationName":"ExternalId" }, "SubscriptionType":{ "shape":"SubscriptionType", "locationName":"SubscriptionType" }, "ClientToken":{ "shape":"ClientToken", "locationName":"ClientToken" }, "SyslogIp":{ "shape":"IpAddress", "locationName":"SyslogIp" } }, "locationName":"CreateHsmRequest" }, "CreateHsmResponse":{ "type":"structure", "members":{ "HsmArn":{"shape":"HsmArn"} } }, "CreateLunaClientRequest":{ "type":"structure", "required":["Certificate"], "members":{ "Label":{"shape":"ClientLabel"}, "Certificate":{"shape":"Certificate"} } }, "CreateLunaClientResponse":{ "type":"structure", "members":{ "ClientArn":{"shape":"ClientArn"} } }, "DeleteHapgRequest":{ "type":"structure", "required":["HapgArn"], "members":{ "HapgArn":{"shape":"HapgArn"} } }, "DeleteHapgResponse":{ "type":"structure", "required":["Status"], "members":{ "Status":{"shape":"String"} } }, "DeleteHsmRequest":{ "type":"structure", "required":["HsmArn"], "members":{ "HsmArn":{ "shape":"HsmArn", "locationName":"HsmArn" } }, "locationName":"DeleteHsmRequest" }, "DeleteHsmResponse":{ "type":"structure", "required":["Status"], "members":{ "Status":{"shape":"String"} } }, "DeleteLunaClientRequest":{ "type":"structure", "required":["ClientArn"], "members":{ "ClientArn":{"shape":"ClientArn"} } }, "DeleteLunaClientResponse":{ "type":"structure", "required":["Status"], "members":{ "Status":{"shape":"String"} } }, "DescribeHapgRequest":{ "type":"structure", "required":["HapgArn"], "members":{ "HapgArn":{"shape":"HapgArn"} } }, "DescribeHapgResponse":{ "type":"structure", "members":{ "HapgArn":{"shape":"HapgArn"}, "HapgSerial":{"shape":"String"}, "HsmsLastActionFailed":{"shape":"HsmList"}, "HsmsPendingDeletion":{"shape":"HsmList"}, "HsmsPendingRegistration":{"shape":"HsmList"}, "Label":{"shape":"Label"}, "LastModifiedTimestamp":{"shape":"Timestamp"}, "PartitionSerialList":{"shape":"PartitionSerialList"}, "State":{"shape":"CloudHsmObjectState"} } }, "DescribeHsmRequest":{ "type":"structure", "members":{ "HsmArn":{"shape":"HsmArn"}, "HsmSerialNumber":{"shape":"HsmSerialNumber"} } }, "DescribeHsmResponse":{ "type":"structure", "members":{ "HsmArn":{"shape":"HsmArn"}, "Status":{"shape":"HsmStatus"}, "StatusDetails":{"shape":"String"}, "AvailabilityZone":{"shape":"AZ"}, "EniId":{"shape":"EniId"}, "EniIp":{"shape":"IpAddress"}, "SubscriptionType":{"shape":"SubscriptionType"}, "SubscriptionStartDate":{"shape":"Timestamp"}, "SubscriptionEndDate":{"shape":"Timestamp"}, "VpcId":{"shape":"VpcId"}, "SubnetId":{"shape":"SubnetId"}, "IamRoleArn":{"shape":"IamRoleArn"}, "SerialNumber":{"shape":"HsmSerialNumber"}, "VendorName":{"shape":"String"}, "HsmType":{"shape":"String"}, "SoftwareVersion":{"shape":"String"}, "SshPublicKey":{"shape":"SshKey"}, "SshKeyLastUpdated":{"shape":"Timestamp"}, "ServerCertUri":{"shape":"String"}, "ServerCertLastUpdated":{"shape":"Timestamp"}, "Partitions":{"shape":"PartitionList"} } }, "DescribeLunaClientRequest":{ "type":"structure", "members":{ "ClientArn":{"shape":"ClientArn"}, "CertificateFingerprint":{"shape":"CertificateFingerprint"} } }, "DescribeLunaClientResponse":{ "type":"structure", "members":{ "ClientArn":{"shape":"ClientArn"}, "Certificate":{"shape":"Certificate"}, "CertificateFingerprint":{"shape":"CertificateFingerprint"}, "LastModifiedTimestamp":{"shape":"Timestamp"}, "Label":{"shape":"Label"} } }, "EniId":{ "type":"string", "pattern":"eni-[0-9a-f]{8}" }, "ExternalId":{ "type":"string", "pattern":"[\\w :+=./-]*" }, "GetConfigRequest":{ "type":"structure", "required":[ "ClientArn", "ClientVersion", "HapgList" ], "members":{ "ClientArn":{"shape":"ClientArn"}, "ClientVersion":{"shape":"ClientVersion"}, "HapgList":{"shape":"HapgList"} } }, "GetConfigResponse":{ "type":"structure", "members":{ "ConfigType":{"shape":"String"}, "ConfigFile":{"shape":"String"}, "ConfigCred":{"shape":"String"} } }, "HapgArn":{ "type":"string", "pattern":"arn:aws(-iso)?:cloudhsm:[a-zA-Z0-9\\-]*:[0-9]{12}:hapg-[0-9a-f]{8}" }, "HapgList":{ "type":"list", "member":{"shape":"HapgArn"} }, "HsmArn":{ "type":"string", "pattern":"arn:aws(-iso)?:cloudhsm:[a-zA-Z0-9\\-]*:[0-9]{12}:hsm-[0-9a-f]{8}" }, "HsmList":{ "type":"list", "member":{"shape":"HsmArn"} }, "HsmSerialNumber":{ "type":"string", "pattern":"\\d{1,16}" }, "HsmStatus":{ "type":"string", "enum":[ "PENDING", "RUNNING", "UPDATING", "SUSPENDED", "TERMINATING", "TERMINATED", "DEGRADED" ] }, "IamRoleArn":{ "type":"string", "pattern":"arn:aws(-iso)?:iam::[0-9]{12}:role/[a-zA-Z0-9_\\+=,\\.\\-@]{1,64}" }, "InvalidRequestException":{ "type":"structure", "members":{ }, "exception":true }, "IpAddress":{ "type":"string", "pattern":"\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}" }, "Label":{ "type":"string", "pattern":"[a-zA-Z0-9_.-]{1,64}" }, "ListAvailableZonesRequest":{ "type":"structure", "members":{ } }, "ListAvailableZonesResponse":{ "type":"structure", "members":{ "AZList":{"shape":"AZList"} } }, "ListHapgsRequest":{ "type":"structure", "members":{ "NextToken":{"shape":"PaginationToken"} } }, "ListHapgsResponse":{ "type":"structure", "required":["HapgList"], "members":{ "HapgList":{"shape":"HapgList"}, "NextToken":{"shape":"PaginationToken"} } }, "ListHsmsRequest":{ "type":"structure", "members":{ "NextToken":{"shape":"PaginationToken"} } }, "ListHsmsResponse":{ "type":"structure", "members":{ "HsmList":{"shape":"HsmList"}, "NextToken":{"shape":"PaginationToken"} } }, "ListLunaClientsRequest":{ "type":"structure", "members":{ "NextToken":{"shape":"PaginationToken"} } }, "ListLunaClientsResponse":{ "type":"structure", "required":["ClientList"], "members":{ "ClientList":{"shape":"ClientList"}, "NextToken":{"shape":"PaginationToken"} } }, "ListTagsForResourceRequest":{ "type":"structure", "required":["ResourceArn"], "members":{ "ResourceArn":{"shape":"String"} } }, "ListTagsForResourceResponse":{ "type":"structure", "required":["TagList"], "members":{ "TagList":{"shape":"TagList"} } }, "ModifyHapgRequest":{ "type":"structure", "required":["HapgArn"], "members":{ "HapgArn":{"shape":"HapgArn"}, "Label":{"shape":"Label"}, "PartitionSerialList":{"shape":"PartitionSerialList"} } }, "ModifyHapgResponse":{ "type":"structure", "members":{ "HapgArn":{"shape":"HapgArn"} } }, "ModifyHsmRequest":{ "type":"structure", "required":["HsmArn"], "members":{ "HsmArn":{ "shape":"HsmArn", "locationName":"HsmArn" }, "SubnetId":{ "shape":"SubnetId", "locationName":"SubnetId" }, "EniIp":{ "shape":"IpAddress", "locationName":"EniIp" }, "IamRoleArn":{ "shape":"IamRoleArn", "locationName":"IamRoleArn" }, "ExternalId":{ "shape":"ExternalId", "locationName":"ExternalId" }, "SyslogIp":{ "shape":"IpAddress", "locationName":"SyslogIp" } }, "locationName":"ModifyHsmRequest" }, "ModifyHsmResponse":{ "type":"structure", "members":{ "HsmArn":{"shape":"HsmArn"} } }, "ModifyLunaClientRequest":{ "type":"structure", "required":[ "ClientArn", "Certificate" ], "members":{ "ClientArn":{"shape":"ClientArn"}, "Certificate":{"shape":"Certificate"} } }, "ModifyLunaClientResponse":{ "type":"structure", "members":{ "ClientArn":{"shape":"ClientArn"} } }, "PaginationToken":{ "type":"string", "pattern":"[a-zA-Z0-9+/]*" }, "PartitionArn":{ "type":"string", "pattern":"arn:aws(-iso)?:cloudhsm:[a-zA-Z0-9\\-]*:[0-9]{12}:hsm-[0-9a-f]{8}/partition-[0-9]{6,12}" }, "PartitionList":{ "type":"list", "member":{"shape":"PartitionArn"} }, "PartitionSerial":{ "type":"string", "pattern":"\\d{6,12}" }, "PartitionSerialList":{ "type":"list", "member":{"shape":"PartitionSerial"} }, "RemoveTagsFromResourceRequest":{ "type":"structure", "required":[ "ResourceArn", "TagKeyList" ], "members":{ "ResourceArn":{"shape":"String"}, "TagKeyList":{"shape":"TagKeyList"} } }, "RemoveTagsFromResourceResponse":{ "type":"structure", "required":["Status"], "members":{ "Status":{"shape":"String"} } }, "SshKey":{ "type":"string", "pattern":"[a-zA-Z0-9+/= ._:\\\\@-]*" }, "String":{ "type":"string", "pattern":"[\\w :+=./\\\\-]*" }, "SubnetId":{ "type":"string", "pattern":"subnet-[0-9a-f]{8}" }, "SubscriptionType":{ "type":"string", "enum":["PRODUCTION"] }, "Tag":{ "type":"structure", "required":[ "Key", "Value" ], "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{ "type":"string", "max":128, "min":1 }, "TagKeyList":{ "type":"list", "member":{"shape":"TagKey"} }, "TagList":{ "type":"list", "member":{"shape":"Tag"} }, "TagValue":{ "type":"string", "max":256, "min":0 }, "Timestamp":{ "type":"string", "pattern":"\\d*" }, "VpcId":{ "type":"string", "pattern":"vpc-[0-9a-f]{8}" } } } aws-sdk-go-1.4.22/models/apis/cloudhsm/2014-05-30/docs-2.json000066400000000000000000000547661300374646400226540ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS CloudHSM Service", "operations": { "AddTagsToResource": "

        Adds or overwrites one or more tags for the specified AWS CloudHSM resource.

        Each tag consists of a key and a value. Tag keys must be unique to each resource.

        ", "CreateHapg": "

        Creates a high-availability partition group. A high-availability partition group is a group of partitions that spans multiple physical HSMs.

        ", "CreateHsm": "

        Creates an uninitialized HSM instance.

        There is an upfront fee charged for each HSM instance that you create with the CreateHsm operation. If you accidentally provision an HSM and want to request a refund, delete the instance using the DeleteHsm operation, go to the AWS Support Center, create a new case, and select Account and Billing Support.

        It can take up to 20 minutes to create and provision an HSM. You can monitor the status of the HSM with the DescribeHsm operation. The HSM is ready to be initialized when the status changes to RUNNING.

        ", "CreateLunaClient": "

        Creates an HSM client.

        ", "DeleteHapg": "

        Deletes a high-availability partition group.

        ", "DeleteHsm": "

        Deletes an HSM. After completion, this operation cannot be undone and your key material cannot be recovered.

        ", "DeleteLunaClient": "

        Deletes a client.

        ", "DescribeHapg": "

        Retrieves information about a high-availability partition group.

        ", "DescribeHsm": "

        Retrieves information about an HSM. You can identify the HSM by its ARN or its serial number.

        ", "DescribeLunaClient": "

        Retrieves information about an HSM client.

        ", "GetConfig": "

        Gets the configuration files necessary to connect to all high availability partition groups the client is associated with.

        ", "ListAvailableZones": "

        Lists the Availability Zones that have available AWS CloudHSM capacity.

        ", "ListHapgs": "

        Lists the high-availability partition groups for the account.

        This operation supports pagination with the use of the NextToken member. If more results are available, the NextToken member of the response contains a token that you pass in the next call to ListHapgs to retrieve the next set of items.

        ", "ListHsms": "

        Retrieves the identifiers of all of the HSMs provisioned for the current customer.

        This operation supports pagination with the use of the NextToken member. If more results are available, the NextToken member of the response contains a token that you pass in the next call to ListHsms to retrieve the next set of items.

        ", "ListLunaClients": "

        Lists all of the clients.

        This operation supports pagination with the use of the NextToken member. If more results are available, the NextToken member of the response contains a token that you pass in the next call to ListLunaClients to retrieve the next set of items.

        ", "ListTagsForResource": "

        Returns a list of all tags for the specified AWS CloudHSM resource.

        ", "ModifyHapg": "

        Modifies an existing high-availability partition group.

        ", "ModifyHsm": "

        Modifies an HSM.

        This operation can result in the HSM being offline for up to 15 minutes while the AWS CloudHSM service is reconfigured. If you are modifying a production HSM, you should ensure that your AWS CloudHSM service is configured for high availability, and consider executing this operation during a maintenance window.

        ", "ModifyLunaClient": "

        Modifies the certificate used by the client.

        This action can potentially start a workflow to install the new certificate on the client's HSMs.

        ", "RemoveTagsFromResource": "

        Removes one or more tags from the specified AWS CloudHSM resource.

        To remove a tag, specify only the tag key to remove (not the value). To overwrite the value for an existing tag, use AddTagsToResource.

        " }, "shapes": { "AZ": { "base": null, "refs": { "AZList$member": null, "DescribeHsmResponse$AvailabilityZone": "

        The Availability Zone that the HSM is in.

        " } }, "AZList": { "base": null, "refs": { "ListAvailableZonesResponse$AZList": "

        The list of Availability Zones that have available AWS CloudHSM capacity.

        " } }, "AddTagsToResourceRequest": { "base": null, "refs": { } }, "AddTagsToResourceResponse": { "base": null, "refs": { } }, "Boolean": { "base": null, "refs": { "CloudHsmServiceException$retryable": "

        Indicates if the action can be retried.

        " } }, "Certificate": { "base": null, "refs": { "CreateLunaClientRequest$Certificate": "

        The contents of a Base64-Encoded X.509 v3 certificate to be installed on the HSMs used by this client.

        ", "DescribeLunaClientResponse$Certificate": "

        The certificate installed on the HSMs used by this client.

        ", "ModifyLunaClientRequest$Certificate": "

        The new certificate for the client.

        " } }, "CertificateFingerprint": { "base": null, "refs": { "DescribeLunaClientRequest$CertificateFingerprint": "

        The certificate fingerprint.

        ", "DescribeLunaClientResponse$CertificateFingerprint": "

        The certificate fingerprint.

        " } }, "ClientArn": { "base": null, "refs": { "ClientList$member": null, "CreateLunaClientResponse$ClientArn": "

        The ARN of the client.

        ", "DeleteLunaClientRequest$ClientArn": "

        The ARN of the client to delete.

        ", "DescribeLunaClientRequest$ClientArn": "

        The ARN of the client.

        ", "DescribeLunaClientResponse$ClientArn": "

        The ARN of the client.

        ", "GetConfigRequest$ClientArn": "

        The ARN of the client.

        ", "ModifyLunaClientRequest$ClientArn": "

        The ARN of the client.

        ", "ModifyLunaClientResponse$ClientArn": "

        The ARN of the client.

        " } }, "ClientLabel": { "base": null, "refs": { "CreateLunaClientRequest$Label": "

        The label for the client.

        " } }, "ClientList": { "base": null, "refs": { "ListLunaClientsResponse$ClientList": "

        The list of clients.

        " } }, "ClientToken": { "base": null, "refs": { "CreateHsmRequest$ClientToken": "

        A user-defined token to ensure idempotence. Subsequent calls to this operation with the same token will be ignored.

        " } }, "ClientVersion": { "base": null, "refs": { "GetConfigRequest$ClientVersion": "

        The client version.

        " } }, "CloudHsmInternalException": { "base": "

        Indicates that an internal error occurred.

        ", "refs": { } }, "CloudHsmObjectState": { "base": null, "refs": { "DescribeHapgResponse$State": "

        The state of the high-availability partition group.

        " } }, "CloudHsmServiceException": { "base": "

        Indicates that an exception occurred in the AWS CloudHSM service.

        ", "refs": { } }, "CreateHapgRequest": { "base": "

        Contains the inputs for the CreateHapgRequest action.

        ", "refs": { } }, "CreateHapgResponse": { "base": "

        Contains the output of the CreateHAPartitionGroup action.

        ", "refs": { } }, "CreateHsmRequest": { "base": "

        Contains the inputs for the CreateHsm operation.

        ", "refs": { } }, "CreateHsmResponse": { "base": "

        Contains the output of the CreateHsm operation.

        ", "refs": { } }, "CreateLunaClientRequest": { "base": "

        Contains the inputs for the CreateLunaClient action.

        ", "refs": { } }, "CreateLunaClientResponse": { "base": "

        Contains the output of the CreateLunaClient action.

        ", "refs": { } }, "DeleteHapgRequest": { "base": "

        Contains the inputs for the DeleteHapg action.

        ", "refs": { } }, "DeleteHapgResponse": { "base": "

        Contains the output of the DeleteHapg action.

        ", "refs": { } }, "DeleteHsmRequest": { "base": "

        Contains the inputs for the DeleteHsm operation.

        ", "refs": { } }, "DeleteHsmResponse": { "base": "

        Contains the output of the DeleteHsm operation.

        ", "refs": { } }, "DeleteLunaClientRequest": { "base": null, "refs": { } }, "DeleteLunaClientResponse": { "base": null, "refs": { } }, "DescribeHapgRequest": { "base": "

        Contains the inputs for the DescribeHapg action.

        ", "refs": { } }, "DescribeHapgResponse": { "base": "

        Contains the output of the DescribeHapg action.

        ", "refs": { } }, "DescribeHsmRequest": { "base": "

        Contains the inputs for the DescribeHsm operation.

        ", "refs": { } }, "DescribeHsmResponse": { "base": "

        Contains the output of the DescribeHsm operation.

        ", "refs": { } }, "DescribeLunaClientRequest": { "base": null, "refs": { } }, "DescribeLunaClientResponse": { "base": null, "refs": { } }, "EniId": { "base": null, "refs": { "DescribeHsmResponse$EniId": "

        The identifier of the elastic network interface (ENI) attached to the HSM.

        " } }, "ExternalId": { "base": null, "refs": { "CreateHsmRequest$ExternalId": "

        The external ID from IamRoleArn, if present.

        ", "ModifyHsmRequest$ExternalId": "

        The new external ID.

        " } }, "GetConfigRequest": { "base": null, "refs": { } }, "GetConfigResponse": { "base": null, "refs": { } }, "HapgArn": { "base": null, "refs": { "CreateHapgResponse$HapgArn": "

        The ARN of the high-availability partition group.

        ", "DeleteHapgRequest$HapgArn": "

        The ARN of the high-availability partition group to delete.

        ", "DescribeHapgRequest$HapgArn": "

        The ARN of the high-availability partition group to describe.

        ", "DescribeHapgResponse$HapgArn": "

        The ARN of the high-availability partition group.

        ", "HapgList$member": null, "ModifyHapgRequest$HapgArn": "

        The ARN of the high-availability partition group to modify.

        ", "ModifyHapgResponse$HapgArn": "

        The ARN of the high-availability partition group.

        " } }, "HapgList": { "base": null, "refs": { "GetConfigRequest$HapgList": "

        A list of ARNs that identify the high-availability partition groups that are associated with the client.

        ", "ListHapgsResponse$HapgList": "

        The list of high-availability partition groups.

        " } }, "HsmArn": { "base": "

        An ARN that identifies an HSM.

        ", "refs": { "CreateHsmResponse$HsmArn": "

        The ARN of the HSM.

        ", "DeleteHsmRequest$HsmArn": "

        The ARN of the HSM to delete.

        ", "DescribeHsmRequest$HsmArn": "

        The ARN of the HSM. Either the HsmArn or the SerialNumber parameter must be specified.

        ", "DescribeHsmResponse$HsmArn": "

        The ARN of the HSM.

        ", "HsmList$member": null, "ModifyHsmRequest$HsmArn": "

        The ARN of the HSM to modify.

        ", "ModifyHsmResponse$HsmArn": "

        The ARN of the HSM.

        " } }, "HsmList": { "base": "

        Contains a list of ARNs that identify the HSMs.

        ", "refs": { "DescribeHapgResponse$HsmsLastActionFailed": null, "DescribeHapgResponse$HsmsPendingDeletion": null, "DescribeHapgResponse$HsmsPendingRegistration": null, "ListHsmsResponse$HsmList": "

        The list of ARNs that identify the HSMs.

        " } }, "HsmSerialNumber": { "base": null, "refs": { "DescribeHsmRequest$HsmSerialNumber": "

        The serial number of the HSM. Either the HsmArn or the HsmSerialNumber parameter must be specified.

        ", "DescribeHsmResponse$SerialNumber": "

        The serial number of the HSM.

        " } }, "HsmStatus": { "base": null, "refs": { "DescribeHsmResponse$Status": "

        The status of the HSM.

        " } }, "IamRoleArn": { "base": null, "refs": { "CreateHsmRequest$IamRoleArn": "

        The ARN of an IAM role to enable the AWS CloudHSM service to allocate an ENI on your behalf.

        ", "DescribeHsmResponse$IamRoleArn": "

        The ARN of the IAM role assigned to the HSM.

        ", "ModifyHsmRequest$IamRoleArn": "

        The new IAM role ARN.

        " } }, "InvalidRequestException": { "base": "

        Indicates that one or more of the request parameters are not valid.

        ", "refs": { } }, "IpAddress": { "base": null, "refs": { "CreateHsmRequest$EniIp": "

        The IP address to assign to the HSM's ENI.

        If an IP address is not specified, an IP address will be randomly chosen from the CIDR range of the subnet.

        ", "CreateHsmRequest$SyslogIp": "

        The IP address for the syslog monitoring server. The AWS CloudHSM service only supports one syslog monitoring server.

        ", "DescribeHsmResponse$EniIp": "

        The IP address assigned to the HSM's ENI.

        ", "ModifyHsmRequest$EniIp": "

        The new IP address for the elastic network interface (ENI) attached to the HSM.

        If the HSM is moved to a different subnet, and an IP address is not specified, an IP address will be randomly chosen from the CIDR range of the new subnet.

        ", "ModifyHsmRequest$SyslogIp": "

        The new IP address for the syslog monitoring server. The AWS CloudHSM service only supports one syslog monitoring server.

        " } }, "Label": { "base": null, "refs": { "CreateHapgRequest$Label": "

        The label of the new high-availability partition group.

        ", "DescribeHapgResponse$Label": "

        The label for the high-availability partition group.

        ", "DescribeLunaClientResponse$Label": "

        The label of the client.

        ", "ModifyHapgRequest$Label": "

        The new label for the high-availability partition group.

        " } }, "ListAvailableZonesRequest": { "base": "

        Contains the inputs for the ListAvailableZones action.

        ", "refs": { } }, "ListAvailableZonesResponse": { "base": null, "refs": { } }, "ListHapgsRequest": { "base": null, "refs": { } }, "ListHapgsResponse": { "base": null, "refs": { } }, "ListHsmsRequest": { "base": null, "refs": { } }, "ListHsmsResponse": { "base": "

        Contains the output of the ListHsms operation.

        ", "refs": { } }, "ListLunaClientsRequest": { "base": null, "refs": { } }, "ListLunaClientsResponse": { "base": null, "refs": { } }, "ListTagsForResourceRequest": { "base": null, "refs": { } }, "ListTagsForResourceResponse": { "base": null, "refs": { } }, "ModifyHapgRequest": { "base": null, "refs": { } }, "ModifyHapgResponse": { "base": null, "refs": { } }, "ModifyHsmRequest": { "base": "

        Contains the inputs for the ModifyHsm operation.

        ", "refs": { } }, "ModifyHsmResponse": { "base": "

        Contains the output of the ModifyHsm operation.

        ", "refs": { } }, "ModifyLunaClientRequest": { "base": null, "refs": { } }, "ModifyLunaClientResponse": { "base": null, "refs": { } }, "PaginationToken": { "base": null, "refs": { "ListHapgsRequest$NextToken": "

        The NextToken value from a previous call to ListHapgs. Pass null if this is the first call.

        ", "ListHapgsResponse$NextToken": "

        If not null, more results are available. Pass this value to ListHapgs to retrieve the next set of items.

        ", "ListHsmsRequest$NextToken": "

        The NextToken value from a previous call to ListHsms. Pass null if this is the first call.

        ", "ListHsmsResponse$NextToken": "

        If not null, more results are available. Pass this value to ListHsms to retrieve the next set of items.

        ", "ListLunaClientsRequest$NextToken": "

        The NextToken value from a previous call to ListLunaClients. Pass null if this is the first call.

        ", "ListLunaClientsResponse$NextToken": "

        If not null, more results are available. Pass this to ListLunaClients to retrieve the next set of items.

        " } }, "PartitionArn": { "base": null, "refs": { "PartitionList$member": null } }, "PartitionList": { "base": null, "refs": { "DescribeHsmResponse$Partitions": "

        The list of partitions on the HSM.

        " } }, "PartitionSerial": { "base": null, "refs": { "PartitionSerialList$member": null } }, "PartitionSerialList": { "base": null, "refs": { "DescribeHapgResponse$PartitionSerialList": "

        The list of partition serial numbers that belong to the high-availability partition group.

        ", "ModifyHapgRequest$PartitionSerialList": "

        The list of partition serial numbers to make members of the high-availability partition group.

        " } }, "RemoveTagsFromResourceRequest": { "base": null, "refs": { } }, "RemoveTagsFromResourceResponse": { "base": null, "refs": { } }, "SshKey": { "base": null, "refs": { "CreateHsmRequest$SshKey": "

        The SSH public key to install on the HSM.

        ", "DescribeHsmResponse$SshPublicKey": "

        The public SSH key.

        " } }, "String": { "base": null, "refs": { "AddTagsToResourceRequest$ResourceArn": "

        The Amazon Resource Name (ARN) of the AWS CloudHSM resource to tag.

        ", "AddTagsToResourceResponse$Status": "

        The status of the operation.

        ", "CloudHsmServiceException$message": "

        Additional information about the error.

        ", "DeleteHapgResponse$Status": "

        The status of the action.

        ", "DeleteHsmResponse$Status": "

        The status of the operation.

        ", "DeleteLunaClientResponse$Status": "

        The status of the action.

        ", "DescribeHapgResponse$HapgSerial": "

        The serial number of the high-availability partition group.

        ", "DescribeHsmResponse$StatusDetails": "

        Contains additional information about the status of the HSM.

        ", "DescribeHsmResponse$VendorName": "

        The name of the HSM vendor.

        ", "DescribeHsmResponse$HsmType": "

        The HSM model type.

        ", "DescribeHsmResponse$SoftwareVersion": "

        The HSM software version.

        ", "DescribeHsmResponse$ServerCertUri": "

        The URI of the certificate server.

        ", "GetConfigResponse$ConfigType": "

        The type of credentials.

        ", "GetConfigResponse$ConfigFile": "

        The chrystoki.conf configuration file.

        ", "GetConfigResponse$ConfigCred": "

        The certificate file containing the server.pem files of the HSMs.

        ", "ListTagsForResourceRequest$ResourceArn": "

        The Amazon Resource Name (ARN) of the AWS CloudHSM resource.

        ", "RemoveTagsFromResourceRequest$ResourceArn": "

        The Amazon Resource Name (ARN) of the AWS CloudHSM resource.

        ", "RemoveTagsFromResourceResponse$Status": "

        The status of the operation.

        " } }, "SubnetId": { "base": null, "refs": { "CreateHsmRequest$SubnetId": "

        The identifier of the subnet in your VPC in which to place the HSM.

        ", "DescribeHsmResponse$SubnetId": "

        The identifier of the subnet that the HSM is in.

        ", "ModifyHsmRequest$SubnetId": "

        The new identifier of the subnet that the HSM is in. The new subnet must be in the same Availability Zone as the current subnet.

        " } }, "SubscriptionType": { "base": "

        Specifies the type of subscription for the HSM.

        • PRODUCTION - The HSM is being used in a production environment.
        • TRIAL - The HSM is being used in a product trial.
        ", "refs": { "CreateHsmRequest$SubscriptionType": null, "DescribeHsmResponse$SubscriptionType": null } }, "Tag": { "base": "

        A key-value pair that identifies or specifies metadata about an AWS CloudHSM resource.

        ", "refs": { "TagList$member": null } }, "TagKey": { "base": null, "refs": { "Tag$Key": "

        The key of the tag.

        ", "TagKeyList$member": null } }, "TagKeyList": { "base": null, "refs": { "RemoveTagsFromResourceRequest$TagKeyList": "

        The tag key or keys to remove.

        Specify only the tag key to remove (not the value). To overwrite the value for an existing tag, use AddTagsToResource.

        " } }, "TagList": { "base": null, "refs": { "AddTagsToResourceRequest$TagList": "

        One or more tags.

        ", "ListTagsForResourceResponse$TagList": "

        One or more tags.

        " } }, "TagValue": { "base": null, "refs": { "Tag$Value": "

        The value of the tag.

        " } }, "Timestamp": { "base": null, "refs": { "DescribeHapgResponse$LastModifiedTimestamp": "

        The date and time the high-availability partition group was last modified.

        ", "DescribeHsmResponse$SubscriptionStartDate": "

        The subscription start date.

        ", "DescribeHsmResponse$SubscriptionEndDate": "

        The subscription end date.

        ", "DescribeHsmResponse$SshKeyLastUpdated": "

        The date and time that the SSH key was last updated.

        ", "DescribeHsmResponse$ServerCertLastUpdated": "

        The date and time that the server certificate was last updated.

        ", "DescribeLunaClientResponse$LastModifiedTimestamp": "

        The date and time the client was last modified.

        " } }, "VpcId": { "base": null, "refs": { "DescribeHsmResponse$VpcId": "

        The identifier of the VPC that the HSM is in.

        " } } } } aws-sdk-go-1.4.22/models/apis/cloudhsm/2014-05-30/examples-1.json000066400000000000000000000000541300374646400235160ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/cloudsearch/000077500000000000000000000000001300374646400202765ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudsearch/2013-01-01/000077500000000000000000000000001300374646400213175ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudsearch/2013-01-01/api-2.json000066400000000000000000001407471300374646400231370ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2013-01-01", "endpointPrefix":"cloudsearch", "serviceFullName":"Amazon CloudSearch", "signatureVersion":"v4", "xmlNamespace":"http://cloudsearch.amazonaws.com/doc/2013-01-01/", "protocol":"query" }, "operations":{ "BuildSuggesters":{ "name":"BuildSuggesters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BuildSuggestersRequest"}, "output":{ "shape":"BuildSuggestersResponse", "resultWrapper":"BuildSuggestersResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "CreateDomain":{ "name":"CreateDomain", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDomainRequest"}, "output":{ "shape":"CreateDomainResponse", "resultWrapper":"CreateDomainResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"LimitExceededException", "error":{ "code":"LimitExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "DefineAnalysisScheme":{ "name":"DefineAnalysisScheme", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DefineAnalysisSchemeRequest"}, "output":{ "shape":"DefineAnalysisSchemeResponse", "resultWrapper":"DefineAnalysisSchemeResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"LimitExceededException", "error":{ "code":"LimitExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"InvalidTypeException", "error":{ "code":"InvalidType", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "DefineExpression":{ "name":"DefineExpression", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DefineExpressionRequest"}, "output":{ "shape":"DefineExpressionResponse", "resultWrapper":"DefineExpressionResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"LimitExceededException", "error":{ "code":"LimitExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"InvalidTypeException", "error":{ "code":"InvalidType", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "DefineIndexField":{ "name":"DefineIndexField", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DefineIndexFieldRequest"}, "output":{ "shape":"DefineIndexFieldResponse", "resultWrapper":"DefineIndexFieldResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"LimitExceededException", "error":{ "code":"LimitExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"InvalidTypeException", "error":{ "code":"InvalidType", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "DefineSuggester":{ "name":"DefineSuggester", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DefineSuggesterRequest"}, "output":{ "shape":"DefineSuggesterResponse", "resultWrapper":"DefineSuggesterResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"LimitExceededException", "error":{ "code":"LimitExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"InvalidTypeException", "error":{ "code":"InvalidType", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "DeleteAnalysisScheme":{ "name":"DeleteAnalysisScheme", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteAnalysisSchemeRequest"}, "output":{ "shape":"DeleteAnalysisSchemeResponse", "resultWrapper":"DeleteAnalysisSchemeResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"InvalidTypeException", "error":{ "code":"InvalidType", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "DeleteDomain":{ "name":"DeleteDomain", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDomainRequest"}, "output":{ "shape":"DeleteDomainResponse", "resultWrapper":"DeleteDomainResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true } ] }, "DeleteExpression":{ "name":"DeleteExpression", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteExpressionRequest"}, "output":{ "shape":"DeleteExpressionResponse", "resultWrapper":"DeleteExpressionResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"InvalidTypeException", "error":{ "code":"InvalidType", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "DeleteIndexField":{ "name":"DeleteIndexField", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteIndexFieldRequest"}, "output":{ "shape":"DeleteIndexFieldResponse", "resultWrapper":"DeleteIndexFieldResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"InvalidTypeException", "error":{ "code":"InvalidType", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "DeleteSuggester":{ "name":"DeleteSuggester", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSuggesterRequest"}, "output":{ "shape":"DeleteSuggesterResponse", "resultWrapper":"DeleteSuggesterResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"InvalidTypeException", "error":{ "code":"InvalidType", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "DescribeAnalysisSchemes":{ "name":"DescribeAnalysisSchemes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAnalysisSchemesRequest"}, "output":{ "shape":"DescribeAnalysisSchemesResponse", "resultWrapper":"DescribeAnalysisSchemesResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "DescribeAvailabilityOptions":{ "name":"DescribeAvailabilityOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAvailabilityOptionsRequest"}, "output":{ "shape":"DescribeAvailabilityOptionsResponse", "resultWrapper":"DescribeAvailabilityOptionsResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"InvalidTypeException", "error":{ "code":"InvalidType", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"LimitExceededException", "error":{ "code":"LimitExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"DisabledOperationException", "error":{ "code":"DisabledAction", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "DescribeDomains":{ "name":"DescribeDomains", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDomainsRequest"}, "output":{ "shape":"DescribeDomainsResponse", "resultWrapper":"DescribeDomainsResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true } ] }, "DescribeExpressions":{ "name":"DescribeExpressions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeExpressionsRequest"}, "output":{ "shape":"DescribeExpressionsResponse", "resultWrapper":"DescribeExpressionsResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "DescribeIndexFields":{ "name":"DescribeIndexFields", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeIndexFieldsRequest"}, "output":{ "shape":"DescribeIndexFieldsResponse", "resultWrapper":"DescribeIndexFieldsResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "DescribeScalingParameters":{ "name":"DescribeScalingParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeScalingParametersRequest"}, "output":{ "shape":"DescribeScalingParametersResponse", "resultWrapper":"DescribeScalingParametersResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "DescribeServiceAccessPolicies":{ "name":"DescribeServiceAccessPolicies", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeServiceAccessPoliciesRequest"}, "output":{ "shape":"DescribeServiceAccessPoliciesResponse", "resultWrapper":"DescribeServiceAccessPoliciesResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "DescribeSuggesters":{ "name":"DescribeSuggesters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSuggestersRequest"}, "output":{ "shape":"DescribeSuggestersResponse", "resultWrapper":"DescribeSuggestersResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "IndexDocuments":{ "name":"IndexDocuments", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"IndexDocumentsRequest"}, "output":{ "shape":"IndexDocumentsResponse", "resultWrapper":"IndexDocumentsResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "ListDomainNames":{ "name":"ListDomainNames", "http":{ "method":"POST", "requestUri":"/" }, "output":{ "shape":"ListDomainNamesResponse", "resultWrapper":"ListDomainNamesResult" }, "errors":[ { "shape":"BaseException", "exception":true } ] }, "UpdateAvailabilityOptions":{ "name":"UpdateAvailabilityOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateAvailabilityOptionsRequest"}, "output":{ "shape":"UpdateAvailabilityOptionsResponse", "resultWrapper":"UpdateAvailabilityOptionsResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"InvalidTypeException", "error":{ "code":"InvalidType", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"LimitExceededException", "error":{ "code":"LimitExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"DisabledOperationException", "error":{ "code":"DisabledAction", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "UpdateScalingParameters":{ "name":"UpdateScalingParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateScalingParametersRequest"}, "output":{ "shape":"UpdateScalingParametersResponse", "resultWrapper":"UpdateScalingParametersResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"LimitExceededException", "error":{ "code":"LimitExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"InvalidTypeException", "error":{ "code":"InvalidType", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "UpdateServiceAccessPolicies":{ "name":"UpdateServiceAccessPolicies", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateServiceAccessPoliciesRequest"}, "output":{ "shape":"UpdateServiceAccessPoliciesResponse", "resultWrapper":"UpdateServiceAccessPoliciesResult" }, "errors":[ { "shape":"BaseException", "exception":true }, { "shape":"InternalException", "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, { "shape":"LimitExceededException", "error":{ "code":"LimitExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"InvalidTypeException", "error":{ "code":"InvalidType", "httpStatusCode":409, "senderFault":true }, "exception":true } ] } }, "shapes":{ "APIVersion":{"type":"string"}, "ARN":{"type":"string"}, "AccessPoliciesStatus":{ "type":"structure", "required":[ "Options", "Status" ], "members":{ "Options":{"shape":"PolicyDocument"}, "Status":{"shape":"OptionStatus"} } }, "AlgorithmicStemming":{ "type":"string", "enum":[ "none", "minimal", "light", "full" ] }, "AnalysisOptions":{ "type":"structure", "members":{ "Synonyms":{"shape":"String"}, "Stopwords":{"shape":"String"}, "StemmingDictionary":{"shape":"String"}, "JapaneseTokenizationDictionary":{"shape":"String"}, "AlgorithmicStemming":{"shape":"AlgorithmicStemming"} } }, "AnalysisScheme":{ "type":"structure", "required":[ "AnalysisSchemeName", "AnalysisSchemeLanguage" ], "members":{ "AnalysisSchemeName":{"shape":"StandardName"}, "AnalysisSchemeLanguage":{"shape":"AnalysisSchemeLanguage"}, "AnalysisOptions":{"shape":"AnalysisOptions"} } }, "AnalysisSchemeLanguage":{ "type":"string", "enum":[ "ar", "bg", "ca", "cs", "da", "de", "el", "en", "es", "eu", "fa", "fi", "fr", "ga", "gl", "he", "hi", "hu", "hy", "id", "it", "ja", "ko", "lv", "mul", "nl", "no", "pt", "ro", "ru", "sv", "th", "tr", "zh-Hans", "zh-Hant" ] }, "AnalysisSchemeStatus":{ "type":"structure", "required":[ "Options", "Status" ], "members":{ "Options":{"shape":"AnalysisScheme"}, "Status":{"shape":"OptionStatus"} } }, "AnalysisSchemeStatusList":{ "type":"list", "member":{"shape":"AnalysisSchemeStatus"} }, "AvailabilityOptionsStatus":{ "type":"structure", "required":[ "Options", "Status" ], "members":{ "Options":{"shape":"MultiAZ"}, "Status":{"shape":"OptionStatus"} } }, "BaseException":{ "type":"structure", "members":{ "Code":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "exception":true }, "Boolean":{"type":"boolean"}, "BuildSuggestersRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"} } }, "BuildSuggestersResponse":{ "type":"structure", "members":{ "FieldNames":{"shape":"FieldNameList"} } }, "CreateDomainRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"} } }, "CreateDomainResponse":{ "type":"structure", "members":{ "DomainStatus":{"shape":"DomainStatus"} } }, "DateArrayOptions":{ "type":"structure", "members":{ "DefaultValue":{"shape":"FieldValue"}, "SourceFields":{"shape":"FieldNameCommaList"}, "FacetEnabled":{"shape":"Boolean"}, "SearchEnabled":{"shape":"Boolean"}, "ReturnEnabled":{"shape":"Boolean"} } }, "DateOptions":{ "type":"structure", "members":{ "DefaultValue":{"shape":"FieldValue"}, "SourceField":{"shape":"FieldName"}, "FacetEnabled":{"shape":"Boolean"}, "SearchEnabled":{"shape":"Boolean"}, "ReturnEnabled":{"shape":"Boolean"}, "SortEnabled":{"shape":"Boolean"} } }, "DefineAnalysisSchemeRequest":{ "type":"structure", "required":[ "DomainName", "AnalysisScheme" ], "members":{ "DomainName":{"shape":"DomainName"}, "AnalysisScheme":{"shape":"AnalysisScheme"} } }, "DefineAnalysisSchemeResponse":{ "type":"structure", "required":["AnalysisScheme"], "members":{ "AnalysisScheme":{"shape":"AnalysisSchemeStatus"} } }, "DefineExpressionRequest":{ "type":"structure", "required":[ "DomainName", "Expression" ], "members":{ "DomainName":{"shape":"DomainName"}, "Expression":{"shape":"Expression"} } }, "DefineExpressionResponse":{ "type":"structure", "required":["Expression"], "members":{ "Expression":{"shape":"ExpressionStatus"} } }, "DefineIndexFieldRequest":{ "type":"structure", "required":[ "DomainName", "IndexField" ], "members":{ "DomainName":{"shape":"DomainName"}, "IndexField":{"shape":"IndexField"} } }, "DefineIndexFieldResponse":{ "type":"structure", "required":["IndexField"], "members":{ "IndexField":{"shape":"IndexFieldStatus"} } }, "DefineSuggesterRequest":{ "type":"structure", "required":[ "DomainName", "Suggester" ], "members":{ "DomainName":{"shape":"DomainName"}, "Suggester":{"shape":"Suggester"} } }, "DefineSuggesterResponse":{ "type":"structure", "required":["Suggester"], "members":{ "Suggester":{"shape":"SuggesterStatus"} } }, "DeleteAnalysisSchemeRequest":{ "type":"structure", "required":[ "DomainName", "AnalysisSchemeName" ], "members":{ "DomainName":{"shape":"DomainName"}, "AnalysisSchemeName":{"shape":"StandardName"} } }, "DeleteAnalysisSchemeResponse":{ "type":"structure", "required":["AnalysisScheme"], "members":{ "AnalysisScheme":{"shape":"AnalysisSchemeStatus"} } }, "DeleteDomainRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"} } }, "DeleteDomainResponse":{ "type":"structure", "members":{ "DomainStatus":{"shape":"DomainStatus"} } }, "DeleteExpressionRequest":{ "type":"structure", "required":[ "DomainName", "ExpressionName" ], "members":{ "DomainName":{"shape":"DomainName"}, "ExpressionName":{"shape":"StandardName"} } }, "DeleteExpressionResponse":{ "type":"structure", "required":["Expression"], "members":{ "Expression":{"shape":"ExpressionStatus"} } }, "DeleteIndexFieldRequest":{ "type":"structure", "required":[ "DomainName", "IndexFieldName" ], "members":{ "DomainName":{"shape":"DomainName"}, "IndexFieldName":{"shape":"DynamicFieldName"} } }, "DeleteIndexFieldResponse":{ "type":"structure", "required":["IndexField"], "members":{ "IndexField":{"shape":"IndexFieldStatus"} } }, "DeleteSuggesterRequest":{ "type":"structure", "required":[ "DomainName", "SuggesterName" ], "members":{ "DomainName":{"shape":"DomainName"}, "SuggesterName":{"shape":"StandardName"} } }, "DeleteSuggesterResponse":{ "type":"structure", "required":["Suggester"], "members":{ "Suggester":{"shape":"SuggesterStatus"} } }, "DescribeAnalysisSchemesRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"}, "AnalysisSchemeNames":{"shape":"StandardNameList"}, "Deployed":{"shape":"Boolean"} } }, "DescribeAnalysisSchemesResponse":{ "type":"structure", "required":["AnalysisSchemes"], "members":{ "AnalysisSchemes":{"shape":"AnalysisSchemeStatusList"} } }, "DescribeAvailabilityOptionsRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"}, "Deployed":{"shape":"Boolean"} } }, "DescribeAvailabilityOptionsResponse":{ "type":"structure", "members":{ "AvailabilityOptions":{"shape":"AvailabilityOptionsStatus"} } }, "DescribeDomainsRequest":{ "type":"structure", "members":{ "DomainNames":{"shape":"DomainNameList"} } }, "DescribeDomainsResponse":{ "type":"structure", "required":["DomainStatusList"], "members":{ "DomainStatusList":{"shape":"DomainStatusList"} } }, "DescribeExpressionsRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"}, "ExpressionNames":{"shape":"StandardNameList"}, "Deployed":{"shape":"Boolean"} } }, "DescribeExpressionsResponse":{ "type":"structure", "required":["Expressions"], "members":{ "Expressions":{"shape":"ExpressionStatusList"} } }, "DescribeIndexFieldsRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"}, "FieldNames":{"shape":"DynamicFieldNameList"}, "Deployed":{"shape":"Boolean"} } }, "DescribeIndexFieldsResponse":{ "type":"structure", "required":["IndexFields"], "members":{ "IndexFields":{"shape":"IndexFieldStatusList"} } }, "DescribeScalingParametersRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"} } }, "DescribeScalingParametersResponse":{ "type":"structure", "required":["ScalingParameters"], "members":{ "ScalingParameters":{"shape":"ScalingParametersStatus"} } }, "DescribeServiceAccessPoliciesRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"}, "Deployed":{"shape":"Boolean"} } }, "DescribeServiceAccessPoliciesResponse":{ "type":"structure", "required":["AccessPolicies"], "members":{ "AccessPolicies":{"shape":"AccessPoliciesStatus"} } }, "DescribeSuggestersRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"}, "SuggesterNames":{"shape":"StandardNameList"}, "Deployed":{"shape":"Boolean"} } }, "DescribeSuggestersResponse":{ "type":"structure", "required":["Suggesters"], "members":{ "Suggesters":{"shape":"SuggesterStatusList"} } }, "DisabledOperationException":{ "type":"structure", "members":{ }, "error":{ "code":"DisabledAction", "httpStatusCode":409, "senderFault":true }, "exception":true }, "DocumentSuggesterOptions":{ "type":"structure", "required":["SourceField"], "members":{ "SourceField":{"shape":"FieldName"}, "FuzzyMatching":{"shape":"SuggesterFuzzyMatching"}, "SortExpression":{"shape":"String"} } }, "DomainId":{ "type":"string", "min":1, "max":64 }, "DomainName":{ "type":"string", "min":3, "max":28, "pattern":"[a-z][a-z0-9\\-]+" }, "DomainNameList":{ "type":"list", "member":{"shape":"DomainName"} }, "DomainNameMap":{ "type":"map", "key":{"shape":"DomainName"}, "value":{"shape":"APIVersion"} }, "DomainStatus":{ "type":"structure", "required":[ "DomainId", "DomainName", "RequiresIndexDocuments" ], "members":{ "DomainId":{"shape":"DomainId"}, "DomainName":{"shape":"DomainName"}, "ARN":{"shape":"ARN"}, "Created":{"shape":"Boolean"}, "Deleted":{"shape":"Boolean"}, "DocService":{"shape":"ServiceEndpoint"}, "SearchService":{"shape":"ServiceEndpoint"}, "RequiresIndexDocuments":{"shape":"Boolean"}, "Processing":{"shape":"Boolean"}, "SearchInstanceType":{"shape":"SearchInstanceType"}, "SearchPartitionCount":{"shape":"PartitionCount"}, "SearchInstanceCount":{"shape":"InstanceCount"}, "Limits":{"shape":"Limits"} } }, "DomainStatusList":{ "type":"list", "member":{"shape":"DomainStatus"} }, "Double":{"type":"double"}, "DoubleArrayOptions":{ "type":"structure", "members":{ "DefaultValue":{"shape":"Double"}, "SourceFields":{"shape":"FieldNameCommaList"}, "FacetEnabled":{"shape":"Boolean"}, "SearchEnabled":{"shape":"Boolean"}, "ReturnEnabled":{"shape":"Boolean"} } }, "DoubleOptions":{ "type":"structure", "members":{ "DefaultValue":{"shape":"Double"}, "SourceField":{"shape":"FieldName"}, "FacetEnabled":{"shape":"Boolean"}, "SearchEnabled":{"shape":"Boolean"}, "ReturnEnabled":{"shape":"Boolean"}, "SortEnabled":{"shape":"Boolean"} } }, "DynamicFieldName":{ "type":"string", "min":1, "max":64, "pattern":"([a-z][a-z0-9_]*\\*?|\\*[a-z0-9_]*)" }, "DynamicFieldNameList":{ "type":"list", "member":{"shape":"DynamicFieldName"} }, "ErrorCode":{"type":"string"}, "ErrorMessage":{"type":"string"}, "Expression":{ "type":"structure", "required":[ "ExpressionName", "ExpressionValue" ], "members":{ "ExpressionName":{"shape":"StandardName"}, "ExpressionValue":{"shape":"ExpressionValue"} } }, "ExpressionStatus":{ "type":"structure", "required":[ "Options", "Status" ], "members":{ "Options":{"shape":"Expression"}, "Status":{"shape":"OptionStatus"} } }, "ExpressionStatusList":{ "type":"list", "member":{"shape":"ExpressionStatus"} }, "ExpressionValue":{ "type":"string", "min":1, "max":10240 }, "FieldName":{ "type":"string", "min":1, "max":64, "pattern":"[a-z][a-z0-9_]*" }, "FieldNameCommaList":{ "type":"string", "pattern":"\\s*[a-z*][a-z0-9_]*\\*?\\s*(,\\s*[a-z*][a-z0-9_]*\\*?\\s*)*" }, "FieldNameList":{ "type":"list", "member":{"shape":"FieldName"} }, "FieldValue":{ "type":"string", "min":0, "max":1024 }, "IndexDocumentsRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"} } }, "IndexDocumentsResponse":{ "type":"structure", "members":{ "FieldNames":{"shape":"FieldNameList"} } }, "IndexField":{ "type":"structure", "required":[ "IndexFieldName", "IndexFieldType" ], "members":{ "IndexFieldName":{"shape":"DynamicFieldName"}, "IndexFieldType":{"shape":"IndexFieldType"}, "IntOptions":{"shape":"IntOptions"}, "DoubleOptions":{"shape":"DoubleOptions"}, "LiteralOptions":{"shape":"LiteralOptions"}, "TextOptions":{"shape":"TextOptions"}, "DateOptions":{"shape":"DateOptions"}, "LatLonOptions":{"shape":"LatLonOptions"}, "IntArrayOptions":{"shape":"IntArrayOptions"}, "DoubleArrayOptions":{"shape":"DoubleArrayOptions"}, "LiteralArrayOptions":{"shape":"LiteralArrayOptions"}, "TextArrayOptions":{"shape":"TextArrayOptions"}, "DateArrayOptions":{"shape":"DateArrayOptions"} } }, "IndexFieldStatus":{ "type":"structure", "required":[ "Options", "Status" ], "members":{ "Options":{"shape":"IndexField"}, "Status":{"shape":"OptionStatus"} } }, "IndexFieldStatusList":{ "type":"list", "member":{"shape":"IndexFieldStatus"} }, "IndexFieldType":{ "type":"string", "enum":[ "int", "double", "literal", "text", "date", "latlon", "int-array", "double-array", "literal-array", "text-array", "date-array" ] }, "InstanceCount":{ "type":"integer", "min":1 }, "IntArrayOptions":{ "type":"structure", "members":{ "DefaultValue":{"shape":"Long"}, "SourceFields":{"shape":"FieldNameCommaList"}, "FacetEnabled":{"shape":"Boolean"}, "SearchEnabled":{"shape":"Boolean"}, "ReturnEnabled":{"shape":"Boolean"} } }, "IntOptions":{ "type":"structure", "members":{ "DefaultValue":{"shape":"Long"}, "SourceField":{"shape":"FieldName"}, "FacetEnabled":{"shape":"Boolean"}, "SearchEnabled":{"shape":"Boolean"}, "ReturnEnabled":{"shape":"Boolean"}, "SortEnabled":{"shape":"Boolean"} } }, "InternalException":{ "type":"structure", "members":{ }, "error":{ "code":"InternalException", "httpStatusCode":500 }, "exception":true }, "InvalidTypeException":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidType", "httpStatusCode":409, "senderFault":true }, "exception":true }, "LatLonOptions":{ "type":"structure", "members":{ "DefaultValue":{"shape":"FieldValue"}, "SourceField":{"shape":"FieldName"}, "FacetEnabled":{"shape":"Boolean"}, "SearchEnabled":{"shape":"Boolean"}, "ReturnEnabled":{"shape":"Boolean"}, "SortEnabled":{"shape":"Boolean"} } }, "LimitExceededException":{ "type":"structure", "members":{ }, "error":{ "code":"LimitExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, "Limits":{ "type":"structure", "required":[ "MaximumReplicationCount", "MaximumPartitionCount" ], "members":{ "MaximumReplicationCount":{"shape":"MaximumReplicationCount"}, "MaximumPartitionCount":{"shape":"MaximumPartitionCount"} } }, "ListDomainNamesResponse":{ "type":"structure", "members":{ "DomainNames":{"shape":"DomainNameMap"} } }, "LiteralArrayOptions":{ "type":"structure", "members":{ "DefaultValue":{"shape":"FieldValue"}, "SourceFields":{"shape":"FieldNameCommaList"}, "FacetEnabled":{"shape":"Boolean"}, "SearchEnabled":{"shape":"Boolean"}, "ReturnEnabled":{"shape":"Boolean"} } }, "LiteralOptions":{ "type":"structure", "members":{ "DefaultValue":{"shape":"FieldValue"}, "SourceField":{"shape":"FieldName"}, "FacetEnabled":{"shape":"Boolean"}, "SearchEnabled":{"shape":"Boolean"}, "ReturnEnabled":{"shape":"Boolean"}, "SortEnabled":{"shape":"Boolean"} } }, "Long":{"type":"long"}, "MaximumPartitionCount":{ "type":"integer", "min":1 }, "MaximumReplicationCount":{ "type":"integer", "min":1 }, "MultiAZ":{"type":"boolean"}, "OptionState":{ "type":"string", "enum":[ "RequiresIndexDocuments", "Processing", "Active", "FailedToValidate" ] }, "OptionStatus":{ "type":"structure", "required":[ "CreationDate", "UpdateDate", "State" ], "members":{ "CreationDate":{"shape":"UpdateTimestamp"}, "UpdateDate":{"shape":"UpdateTimestamp"}, "UpdateVersion":{"shape":"UIntValue"}, "State":{"shape":"OptionState"}, "PendingDeletion":{"shape":"Boolean"} } }, "PartitionCount":{ "type":"integer", "min":1 }, "PartitionInstanceType":{ "type":"string", "enum":[ "search.m1.small", "search.m1.large", "search.m2.xlarge", "search.m2.2xlarge", "search.m3.medium", "search.m3.large", "search.m3.xlarge", "search.m3.2xlarge" ] }, "PolicyDocument":{"type":"string"}, "ResourceNotFoundException":{ "type":"structure", "members":{ }, "error":{ "code":"ResourceNotFound", "httpStatusCode":409, "senderFault":true }, "exception":true }, "ScalingParameters":{ "type":"structure", "members":{ "DesiredInstanceType":{"shape":"PartitionInstanceType"}, "DesiredReplicationCount":{"shape":"UIntValue"}, "DesiredPartitionCount":{"shape":"UIntValue"} } }, "ScalingParametersStatus":{ "type":"structure", "required":[ "Options", "Status" ], "members":{ "Options":{"shape":"ScalingParameters"}, "Status":{"shape":"OptionStatus"} } }, "SearchInstanceType":{"type":"string"}, "ServiceEndpoint":{ "type":"structure", "members":{ "Endpoint":{"shape":"ServiceUrl"} } }, "ServiceUrl":{"type":"string"}, "StandardName":{ "type":"string", "min":1, "max":64, "pattern":"[a-z][a-z0-9_]*" }, "StandardNameList":{ "type":"list", "member":{"shape":"StandardName"} }, "String":{"type":"string"}, "Suggester":{ "type":"structure", "required":[ "SuggesterName", "DocumentSuggesterOptions" ], "members":{ "SuggesterName":{"shape":"StandardName"}, "DocumentSuggesterOptions":{"shape":"DocumentSuggesterOptions"} } }, "SuggesterFuzzyMatching":{ "type":"string", "enum":[ "none", "low", "high" ] }, "SuggesterStatus":{ "type":"structure", "required":[ "Options", "Status" ], "members":{ "Options":{"shape":"Suggester"}, "Status":{"shape":"OptionStatus"} } }, "SuggesterStatusList":{ "type":"list", "member":{"shape":"SuggesterStatus"} }, "TextArrayOptions":{ "type":"structure", "members":{ "DefaultValue":{"shape":"FieldValue"}, "SourceFields":{"shape":"FieldNameCommaList"}, "ReturnEnabled":{"shape":"Boolean"}, "HighlightEnabled":{"shape":"Boolean"}, "AnalysisScheme":{"shape":"Word"} } }, "TextOptions":{ "type":"structure", "members":{ "DefaultValue":{"shape":"FieldValue"}, "SourceField":{"shape":"FieldName"}, "ReturnEnabled":{"shape":"Boolean"}, "SortEnabled":{"shape":"Boolean"}, "HighlightEnabled":{"shape":"Boolean"}, "AnalysisScheme":{"shape":"Word"} } }, "UIntValue":{ "type":"integer", "min":0 }, "UpdateAvailabilityOptionsRequest":{ "type":"structure", "required":[ "DomainName", "MultiAZ" ], "members":{ "DomainName":{"shape":"DomainName"}, "MultiAZ":{"shape":"Boolean"} } }, "UpdateAvailabilityOptionsResponse":{ "type":"structure", "members":{ "AvailabilityOptions":{"shape":"AvailabilityOptionsStatus"} } }, "UpdateScalingParametersRequest":{ "type":"structure", "required":[ "DomainName", "ScalingParameters" ], "members":{ "DomainName":{"shape":"DomainName"}, "ScalingParameters":{"shape":"ScalingParameters"} } }, "UpdateScalingParametersResponse":{ "type":"structure", "required":["ScalingParameters"], "members":{ "ScalingParameters":{"shape":"ScalingParametersStatus"} } }, "UpdateServiceAccessPoliciesRequest":{ "type":"structure", "required":[ "DomainName", "AccessPolicies" ], "members":{ "DomainName":{"shape":"DomainName"}, "AccessPolicies":{"shape":"PolicyDocument"} } }, "UpdateServiceAccessPoliciesResponse":{ "type":"structure", "required":["AccessPolicies"], "members":{ "AccessPolicies":{"shape":"AccessPoliciesStatus"} } }, "UpdateTimestamp":{"type":"timestamp"}, "Word":{ "type":"string", "pattern":"[\\S]+" } } } aws-sdk-go-1.4.22/models/apis/cloudsearch/2013-01-01/docs-2.json000066400000000000000000001727071300374646400233170ustar00rootroot00000000000000{ "version": "2.0", "operations": { "BuildSuggesters": "

        Indexes the search suggestions. For more information, see Configuring Suggesters in the Amazon CloudSearch Developer Guide.

        ", "CreateDomain": "

        Creates a new search domain. For more information, see Creating a Search Domain in the Amazon CloudSearch Developer Guide.

        ", "DefineAnalysisScheme": "

        Configures an analysis scheme that can be applied to a text or text-array field to define language-specific text processing options. For more information, see Configuring Analysis Schemes in the Amazon CloudSearch Developer Guide.

        ", "DefineExpression": "

        Configures an Expression for the search domain. Used to create new expressions and modify existing ones. If the expression exists, the new configuration replaces the old one. For more information, see Configuring Expressions in the Amazon CloudSearch Developer Guide.

        ", "DefineIndexField": "

        Configures an IndexField for the search domain. Used to create new fields and modify existing ones. You must specify the name of the domain you are configuring and an index field configuration. The index field configuration specifies a unique name, the index field type, and the options you want to configure for the field. The options you can specify depend on the IndexFieldType. If the field exists, the new configuration replaces the old one. For more information, see Configuring Index Fields in the Amazon CloudSearch Developer Guide.

        ", "DefineSuggester": "

        Configures a suggester for a domain. A suggester enables you to display possible matches before users finish typing their queries. When you configure a suggester, you must specify the name of the text field you want to search for possible matches and a unique name for the suggester. For more information, see Getting Search Suggestions in the Amazon CloudSearch Developer Guide.

        ", "DeleteAnalysisScheme": "

        Deletes an analysis scheme. For more information, see Configuring Analysis Schemes in the Amazon CloudSearch Developer Guide.

        ", "DeleteDomain": "

        Permanently deletes a search domain and all of its data. Once a domain has been deleted, it cannot be recovered. For more information, see Deleting a Search Domain in the Amazon CloudSearch Developer Guide.

        ", "DeleteExpression": "

        Removes an Expression from the search domain. For more information, see Configuring Expressions in the Amazon CloudSearch Developer Guide.

        ", "DeleteIndexField": "

        Removes an IndexField from the search domain. For more information, see Configuring Index Fields in the Amazon CloudSearch Developer Guide.

        ", "DeleteSuggester": "

        Deletes a suggester. For more information, see Getting Search Suggestions in the Amazon CloudSearch Developer Guide.

        ", "DescribeAnalysisSchemes": "

        Gets the analysis schemes configured for a domain. An analysis scheme defines language-specific text processing options for a text field. Can be limited to specific analysis schemes by name. By default, shows all analysis schemes and includes any pending changes to the configuration. Set the Deployed option to true to show the active configuration and exclude pending changes. For more information, see Configuring Analysis Schemes in the Amazon CloudSearch Developer Guide.

        ", "DescribeAvailabilityOptions": "

        Gets the availability options configured for a domain. By default, shows the configuration with any pending changes. Set the Deployed option to true to show the active configuration and exclude pending changes. For more information, see Configuring Availability Options in the Amazon CloudSearch Developer Guide.

        ", "DescribeDomains": "

        Gets information about the search domains owned by this account. Can be limited to specific domains. Shows all domains by default. To get the number of searchable documents in a domain, use the console or submit a matchall request to your domain's search endpoint: q=matchall&amp;q.parser=structured&amp;size=0. For more information, see Getting Information about a Search Domain in the Amazon CloudSearch Developer Guide.

        ", "DescribeExpressions": "

        Gets the expressions configured for the search domain. Can be limited to specific expressions by name. By default, shows all expressions and includes any pending changes to the configuration. Set the Deployed option to true to show the active configuration and exclude pending changes. For more information, see Configuring Expressions in the Amazon CloudSearch Developer Guide.

        ", "DescribeIndexFields": "

        Gets information about the index fields configured for the search domain. Can be limited to specific fields by name. By default, shows all fields and includes any pending changes to the configuration. Set the Deployed option to true to show the active configuration and exclude pending changes. For more information, see Getting Domain Information in the Amazon CloudSearch Developer Guide.

        ", "DescribeScalingParameters": "

        Gets the scaling parameters configured for a domain. A domain's scaling parameters specify the desired search instance type and replication count. For more information, see Configuring Scaling Options in the Amazon CloudSearch Developer Guide.

        ", "DescribeServiceAccessPolicies": "

        Gets information about the access policies that control access to the domain's document and search endpoints. By default, shows the configuration with any pending changes. Set the Deployed option to true to show the active configuration and exclude pending changes. For more information, see Configuring Access for a Search Domain in the Amazon CloudSearch Developer Guide.

        ", "DescribeSuggesters": "

        Gets the suggesters configured for a domain. A suggester enables you to display possible matches before users finish typing their queries. Can be limited to specific suggesters by name. By default, shows all suggesters and includes any pending changes to the configuration. Set the Deployed option to true to show the active configuration and exclude pending changes. For more information, see Getting Search Suggestions in the Amazon CloudSearch Developer Guide.

        ", "IndexDocuments": "

        Tells the search domain to start indexing its documents using the latest indexing options. This operation must be invoked to activate options whose OptionStatus is RequiresIndexDocuments.

        ", "ListDomainNames": "

        Lists all search domains owned by an account.

        ", "UpdateAvailabilityOptions": "

        Configures the availability options for a domain. Enabling the Multi-AZ option expands an Amazon CloudSearch domain to an additional Availability Zone in the same Region to increase fault tolerance in the event of a service disruption. Changes to the Multi-AZ option can take about half an hour to become active. For more information, see Configuring Availability Options in the Amazon CloudSearch Developer Guide.

        ", "UpdateScalingParameters": "

        Configures scaling parameters for a domain. A domain's scaling parameters specify the desired search instance type and replication count. Amazon CloudSearch will still automatically scale your domain based on the volume of data and traffic, but not below the desired instance type and replication count. If the Multi-AZ option is enabled, these values control the resources used per Availability Zone. For more information, see Configuring Scaling Options in the Amazon CloudSearch Developer Guide.

        ", "UpdateServiceAccessPolicies": "

        Configures the access rules that control access to the domain's document and search endpoints. For more information, see Configuring Access for an Amazon CloudSearch Domain.

        " }, "service": "Amazon CloudSearch Configuration Service

        You use the Amazon CloudSearch configuration service to create, configure, and manage search domains. Configuration service requests are submitted using the AWS Query protocol. AWS Query requests are HTTP or HTTPS requests submitted via HTTP GET or POST with a query parameter named Action.

        The endpoint for configuration service requests is region-specific: cloudsearch.region.amazonaws.com. For example, cloudsearch.us-east-1.amazonaws.com. For a current list of supported regions and endpoints, see Regions and Endpoints.

        ", "shapes": { "APIVersion": { "base": "

        The Amazon CloudSearch API version for a domain: 2011-02-01 or 2013-01-01.

        ", "refs": { "DomainNameMap$value": null } }, "ARN": { "base": "

        The Amazon Resource Name (ARN) of the search domain. See Identifiers for IAM Entities in Using AWS Identity and Access Management for more information.

        ", "refs": { "DomainStatus$ARN": null } }, "AccessPoliciesStatus": { "base": "

        The configured access rules for the domain's document and search endpoints, and the current status of those rules.

        ", "refs": { "DescribeServiceAccessPoliciesResponse$AccessPolicies": "

        The access rules configured for the domain specified in the request.

        ", "UpdateServiceAccessPoliciesResponse$AccessPolicies": "

        The access rules configured for the domain.

        " } }, "AlgorithmicStemming": { "base": null, "refs": { "AnalysisOptions$AlgorithmicStemming": "

        The level of algorithmic stemming to perform: none, minimal, light, or full. The available levels vary depending on the language. For more information, see Language Specific Text Processing Settings in the Amazon CloudSearch Developer Guide

        " } }, "AnalysisOptions": { "base": "

        Synonyms, stopwords, and stemming options for an analysis scheme. Includes tokenization dictionary for Japanese.

        ", "refs": { "AnalysisScheme$AnalysisOptions": null } }, "AnalysisScheme": { "base": "

        Configuration information for an analysis scheme. Each analysis scheme has a unique name and specifies the language of the text to be processed. The following options can be configured for an analysis scheme: Synonyms, Stopwords, StemmingDictionary, JapaneseTokenizationDictionary and AlgorithmicStemming.

        ", "refs": { "AnalysisSchemeStatus$Options": null, "DefineAnalysisSchemeRequest$AnalysisScheme": null } }, "AnalysisSchemeLanguage": { "base": "

        An IETF RFC 4646 language code or mul for multiple languages.

        ", "refs": { "AnalysisScheme$AnalysisSchemeLanguage": null } }, "AnalysisSchemeStatus": { "base": "

        The status and configuration of an AnalysisScheme.

        ", "refs": { "AnalysisSchemeStatusList$member": null, "DefineAnalysisSchemeResponse$AnalysisScheme": null, "DeleteAnalysisSchemeResponse$AnalysisScheme": "

        The status of the analysis scheme being deleted.

        " } }, "AnalysisSchemeStatusList": { "base": "

        A list of the analysis schemes configured for a domain.

        ", "refs": { "DescribeAnalysisSchemesResponse$AnalysisSchemes": "

        The analysis scheme descriptions.

        " } }, "AvailabilityOptionsStatus": { "base": "

        The status and configuration of the domain's availability options.

        ", "refs": { "DescribeAvailabilityOptionsResponse$AvailabilityOptions": "

        The availability options configured for the domain. Indicates whether Multi-AZ is enabled for the domain.

        ", "UpdateAvailabilityOptionsResponse$AvailabilityOptions": "

        The newly-configured availability options. Indicates whether Multi-AZ is enabled for the domain.

        " } }, "BaseException": { "base": "

        An error occurred while processing the request.

        ", "refs": { } }, "Boolean": { "base": null, "refs": { "DateArrayOptions$FacetEnabled": "

        Whether facet information can be returned for the field.

        ", "DateArrayOptions$SearchEnabled": "

        Whether the contents of the field are searchable.

        ", "DateArrayOptions$ReturnEnabled": "

        Whether the contents of the field can be returned in the search results.

        ", "DateOptions$FacetEnabled": "

        Whether facet information can be returned for the field.

        ", "DateOptions$SearchEnabled": "

        Whether the contents of the field are searchable.

        ", "DateOptions$ReturnEnabled": "

        Whether the contents of the field can be returned in the search results.

        ", "DateOptions$SortEnabled": "

        Whether the field can be used to sort the search results.

        ", "DescribeAnalysisSchemesRequest$Deployed": "

        Whether to display the deployed configuration (true) or include any pending changes (false). Defaults to false.

        ", "DescribeAvailabilityOptionsRequest$Deployed": "

        Whether to display the deployed configuration (true) or include any pending changes (false). Defaults to false.

        ", "DescribeExpressionsRequest$Deployed": "

        Whether to display the deployed configuration (true) or include any pending changes (false). Defaults to false.

        ", "DescribeIndexFieldsRequest$Deployed": "

        Whether to display the deployed configuration (true) or include any pending changes (false). Defaults to false.

        ", "DescribeServiceAccessPoliciesRequest$Deployed": "

        Whether to display the deployed configuration (true) or include any pending changes (false). Defaults to false.

        ", "DescribeSuggestersRequest$Deployed": "

        Whether to display the deployed configuration (true) or include any pending changes (false). Defaults to false.

        ", "DomainStatus$Created": "

        True if the search domain is created. It can take several minutes to initialize a domain when CreateDomain is called. Newly created search domains are returned from DescribeDomains with a false value for Created until domain creation is complete.

        ", "DomainStatus$Deleted": "

        True if the search domain has been deleted. The system must clean up resources dedicated to the search domain when DeleteDomain is called. Newly deleted search domains are returned from DescribeDomains with a true value for IsDeleted for several minutes until resource cleanup is complete.

        ", "DomainStatus$RequiresIndexDocuments": "

        True if IndexDocuments needs to be called to activate the current domain configuration.

        ", "DomainStatus$Processing": "

        True if processing is being done to activate the current domain configuration.

        ", "DoubleArrayOptions$FacetEnabled": "

        Whether facet information can be returned for the field.

        ", "DoubleArrayOptions$SearchEnabled": "

        Whether the contents of the field are searchable.

        ", "DoubleArrayOptions$ReturnEnabled": "

        Whether the contents of the field can be returned in the search results.

        ", "DoubleOptions$FacetEnabled": "

        Whether facet information can be returned for the field.

        ", "DoubleOptions$SearchEnabled": "

        Whether the contents of the field are searchable.

        ", "DoubleOptions$ReturnEnabled": "

        Whether the contents of the field can be returned in the search results.

        ", "DoubleOptions$SortEnabled": "

        Whether the field can be used to sort the search results.

        ", "IntArrayOptions$FacetEnabled": "

        Whether facet information can be returned for the field.

        ", "IntArrayOptions$SearchEnabled": "

        Whether the contents of the field are searchable.

        ", "IntArrayOptions$ReturnEnabled": "

        Whether the contents of the field can be returned in the search results.

        ", "IntOptions$FacetEnabled": "

        Whether facet information can be returned for the field.

        ", "IntOptions$SearchEnabled": "

        Whether the contents of the field are searchable.

        ", "IntOptions$ReturnEnabled": "

        Whether the contents of the field can be returned in the search results.

        ", "IntOptions$SortEnabled": "

        Whether the field can be used to sort the search results.

        ", "LatLonOptions$FacetEnabled": "

        Whether facet information can be returned for the field.

        ", "LatLonOptions$SearchEnabled": "

        Whether the contents of the field are searchable.

        ", "LatLonOptions$ReturnEnabled": "

        Whether the contents of the field can be returned in the search results.

        ", "LatLonOptions$SortEnabled": "

        Whether the field can be used to sort the search results.

        ", "LiteralArrayOptions$FacetEnabled": "

        Whether facet information can be returned for the field.

        ", "LiteralArrayOptions$SearchEnabled": "

        Whether the contents of the field are searchable.

        ", "LiteralArrayOptions$ReturnEnabled": "

        Whether the contents of the field can be returned in the search results.

        ", "LiteralOptions$FacetEnabled": "

        Whether facet information can be returned for the field.

        ", "LiteralOptions$SearchEnabled": "

        Whether the contents of the field are searchable.

        ", "LiteralOptions$ReturnEnabled": "

        Whether the contents of the field can be returned in the search results.

        ", "LiteralOptions$SortEnabled": "

        Whether the field can be used to sort the search results.

        ", "OptionStatus$PendingDeletion": "

        Indicates that the option will be deleted once processing is complete.

        ", "TextArrayOptions$ReturnEnabled": "

        Whether the contents of the field can be returned in the search results.

        ", "TextArrayOptions$HighlightEnabled": "

        Whether highlights can be returned for the field.

        ", "TextOptions$ReturnEnabled": "

        Whether the contents of the field can be returned in the search results.

        ", "TextOptions$SortEnabled": "

        Whether the field can be used to sort the search results.

        ", "TextOptions$HighlightEnabled": "

        Whether highlights can be returned for the field.

        ", "UpdateAvailabilityOptionsRequest$MultiAZ": "

        You expand an existing search domain to a second Availability Zone by setting the Multi-AZ option to true. Similarly, you can turn off the Multi-AZ option to downgrade the domain to a single Availability Zone by setting the Multi-AZ option to false.

        " } }, "BuildSuggestersRequest": { "base": "

        Container for the parameters to the BuildSuggester operation. Specifies the name of the domain you want to update.

        ", "refs": { } }, "BuildSuggestersResponse": { "base": "

        The result of a BuildSuggester request. Contains a list of the fields used for suggestions.

        ", "refs": { } }, "CreateDomainRequest": { "base": "

        Container for the parameters to the CreateDomain operation. Specifies a name for the new search domain.

        ", "refs": { } }, "CreateDomainResponse": { "base": "

        The result of a CreateDomainRequest. Contains the status of a newly created domain.

        ", "refs": { } }, "DateArrayOptions": { "base": "

        Options for a field that contains an array of dates. Present if IndexFieldType specifies the field is of type date-array. All options are enabled by default.

        ", "refs": { "IndexField$DateArrayOptions": null } }, "DateOptions": { "base": "

        Options for a date field. Dates and times are specified in UTC (Coordinated Universal Time) according to IETF RFC3339: yyyy-mm-ddT00:00:00Z. Present if IndexFieldType specifies the field is of type date. All options are enabled by default.

        ", "refs": { "IndexField$DateOptions": null } }, "DefineAnalysisSchemeRequest": { "base": "

        Container for the parameters to the DefineAnalysisScheme operation. Specifies the name of the domain you want to update and the analysis scheme configuration.

        ", "refs": { } }, "DefineAnalysisSchemeResponse": { "base": "

        The result of a DefineAnalysisScheme request. Contains the status of the newly-configured analysis scheme.

        ", "refs": { } }, "DefineExpressionRequest": { "base": "

        Container for the parameters to the DefineExpression operation. Specifies the name of the domain you want to update and the expression you want to configure.

        ", "refs": { } }, "DefineExpressionResponse": { "base": "

        The result of a DefineExpression request. Contains the status of the newly-configured expression.

        ", "refs": { } }, "DefineIndexFieldRequest": { "base": "

        Container for the parameters to the DefineIndexField operation. Specifies the name of the domain you want to update and the index field configuration.

        ", "refs": { } }, "DefineIndexFieldResponse": { "base": "

        The result of a DefineIndexField request. Contains the status of the newly-configured index field.

        ", "refs": { } }, "DefineSuggesterRequest": { "base": "

        Container for the parameters to the DefineSuggester operation. Specifies the name of the domain you want to update and the suggester configuration.

        ", "refs": { } }, "DefineSuggesterResponse": { "base": "

        The result of a DefineSuggester request. Contains the status of the newly-configured suggester.

        ", "refs": { } }, "DeleteAnalysisSchemeRequest": { "base": "

        Container for the parameters to the DeleteAnalysisScheme operation. Specifies the name of the domain you want to update and the analysis scheme you want to delete.

        ", "refs": { } }, "DeleteAnalysisSchemeResponse": { "base": "

        The result of a DeleteAnalysisScheme request. Contains the status of the deleted analysis scheme.

        ", "refs": { } }, "DeleteDomainRequest": { "base": "

        Container for the parameters to the DeleteDomain operation. Specifies the name of the domain you want to delete.

        ", "refs": { } }, "DeleteDomainResponse": { "base": "

        The result of a DeleteDomain request. Contains the status of a newly deleted domain, or no status if the domain has already been completely deleted.

        ", "refs": { } }, "DeleteExpressionRequest": { "base": "

        Container for the parameters to the DeleteExpression operation. Specifies the name of the domain you want to update and the name of the expression you want to delete.

        ", "refs": { } }, "DeleteExpressionResponse": { "base": "

        The result of a DeleteExpression request. Specifies the expression being deleted.

        ", "refs": { } }, "DeleteIndexFieldRequest": { "base": "

        Container for the parameters to the DeleteIndexField operation. Specifies the name of the domain you want to update and the name of the index field you want to delete.

        ", "refs": { } }, "DeleteIndexFieldResponse": { "base": "

        The result of a DeleteIndexField request.

        ", "refs": { } }, "DeleteSuggesterRequest": { "base": "

        Container for the parameters to the DeleteSuggester operation. Specifies the name of the domain you want to update and name of the suggester you want to delete.

        ", "refs": { } }, "DeleteSuggesterResponse": { "base": "

        The result of a DeleteSuggester request. Contains the status of the deleted suggester.

        ", "refs": { } }, "DescribeAnalysisSchemesRequest": { "base": "

        Container for the parameters to the DescribeAnalysisSchemes operation. Specifies the name of the domain you want to describe. To limit the response to particular analysis schemes, specify the names of the analysis schemes you want to describe. To show the active configuration and exclude any pending changes, set the Deployed option to true.

        ", "refs": { } }, "DescribeAnalysisSchemesResponse": { "base": "

        The result of a DescribeAnalysisSchemes request. Contains the analysis schemes configured for the domain specified in the request.

        ", "refs": { } }, "DescribeAvailabilityOptionsRequest": { "base": "

        Container for the parameters to the DescribeAvailabilityOptions operation. Specifies the name of the domain you want to describe. To show the active configuration and exclude any pending changes, set the Deployed option to true.

        ", "refs": { } }, "DescribeAvailabilityOptionsResponse": { "base": "

        The result of a DescribeAvailabilityOptions request. Indicates whether or not the Multi-AZ option is enabled for the domain specified in the request.

        ", "refs": { } }, "DescribeDomainsRequest": { "base": "

        Container for the parameters to the DescribeDomains operation. By default shows the status of all domains. To restrict the response to particular domains, specify the names of the domains you want to describe.

        ", "refs": { } }, "DescribeDomainsResponse": { "base": "

        The result of a DescribeDomains request. Contains the status of the domains specified in the request or all domains owned by the account.

        ", "refs": { } }, "DescribeExpressionsRequest": { "base": "

        Container for the parameters to the DescribeDomains operation. Specifies the name of the domain you want to describe. To restrict the response to particular expressions, specify the names of the expressions you want to describe. To show the active configuration and exclude any pending changes, set the Deployed option to true.

        ", "refs": { } }, "DescribeExpressionsResponse": { "base": "

        The result of a DescribeExpressions request. Contains the expressions configured for the domain specified in the request.

        ", "refs": { } }, "DescribeIndexFieldsRequest": { "base": "

        Container for the parameters to the DescribeIndexFields operation. Specifies the name of the domain you want to describe. To restrict the response to particular index fields, specify the names of the index fields you want to describe. To show the active configuration and exclude any pending changes, set the Deployed option to true.

        ", "refs": { } }, "DescribeIndexFieldsResponse": { "base": "

        The result of a DescribeIndexFields request. Contains the index fields configured for the domain specified in the request.

        ", "refs": { } }, "DescribeScalingParametersRequest": { "base": "

        Container for the parameters to the DescribeScalingParameters operation. Specifies the name of the domain you want to describe.

        ", "refs": { } }, "DescribeScalingParametersResponse": { "base": "

        The result of a DescribeScalingParameters request. Contains the scaling parameters configured for the domain specified in the request.

        ", "refs": { } }, "DescribeServiceAccessPoliciesRequest": { "base": "

        Container for the parameters to the DescribeServiceAccessPolicies operation. Specifies the name of the domain you want to describe. To show the active configuration and exclude any pending changes, set the Deployed option to true.

        ", "refs": { } }, "DescribeServiceAccessPoliciesResponse": { "base": "

        The result of a DescribeServiceAccessPolicies request.

        ", "refs": { } }, "DescribeSuggestersRequest": { "base": "

        Container for the parameters to the DescribeSuggester operation. Specifies the name of the domain you want to describe. To restrict the response to particular suggesters, specify the names of the suggesters you want to describe. To show the active configuration and exclude any pending changes, set the Deployed option to true.

        ", "refs": { } }, "DescribeSuggestersResponse": { "base": "

        The result of a DescribeSuggesters request.

        ", "refs": { } }, "DisabledOperationException": { "base": "

        The request was rejected because it attempted an operation which is not enabled.

        ", "refs": { } }, "DocumentSuggesterOptions": { "base": "

        Options for a search suggester.

        ", "refs": { "Suggester$DocumentSuggesterOptions": null } }, "DomainId": { "base": "

        An internally generated unique identifier for a domain.

        ", "refs": { "DomainStatus$DomainId": null } }, "DomainName": { "base": "

        A string that represents the name of a domain. Domain names are unique across the domains owned by an account within an AWS region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, and - (hyphen).

        ", "refs": { "BuildSuggestersRequest$DomainName": null, "CreateDomainRequest$DomainName": "

        A name for the domain you are creating. Allowed characters are a-z (lower-case letters), 0-9, and hyphen (-). Domain names must start with a letter or number and be at least 3 and no more than 28 characters long.

        ", "DefineAnalysisSchemeRequest$DomainName": null, "DefineExpressionRequest$DomainName": null, "DefineIndexFieldRequest$DomainName": null, "DefineSuggesterRequest$DomainName": null, "DeleteAnalysisSchemeRequest$DomainName": null, "DeleteDomainRequest$DomainName": "

        The name of the domain you want to permanently delete.

        ", "DeleteExpressionRequest$DomainName": null, "DeleteIndexFieldRequest$DomainName": null, "DeleteSuggesterRequest$DomainName": null, "DescribeAnalysisSchemesRequest$DomainName": "

        The name of the domain you want to describe.

        ", "DescribeAvailabilityOptionsRequest$DomainName": "

        The name of the domain you want to describe.

        ", "DescribeExpressionsRequest$DomainName": "

        The name of the domain you want to describe.

        ", "DescribeIndexFieldsRequest$DomainName": "

        The name of the domain you want to describe.

        ", "DescribeScalingParametersRequest$DomainName": null, "DescribeServiceAccessPoliciesRequest$DomainName": "

        The name of the domain you want to describe.

        ", "DescribeSuggestersRequest$DomainName": "

        The name of the domain you want to describe.

        ", "DomainNameList$member": null, "DomainNameMap$key": null, "DomainStatus$DomainName": null, "IndexDocumentsRequest$DomainName": null, "UpdateAvailabilityOptionsRequest$DomainName": null, "UpdateScalingParametersRequest$DomainName": null, "UpdateServiceAccessPoliciesRequest$DomainName": null } }, "DomainNameList": { "base": "

        A list of domain names.

        ", "refs": { "DescribeDomainsRequest$DomainNames": "

        The names of the domains you want to include in the response.

        " } }, "DomainNameMap": { "base": "

        A collection of domain names.

        ", "refs": { "ListDomainNamesResponse$DomainNames": "

        The names of the search domains owned by an account.

        " } }, "DomainStatus": { "base": "

        The current status of the search domain.

        ", "refs": { "CreateDomainResponse$DomainStatus": null, "DeleteDomainResponse$DomainStatus": null, "DomainStatusList$member": null } }, "DomainStatusList": { "base": "

        A list that contains the status of each requested domain.

        ", "refs": { "DescribeDomainsResponse$DomainStatusList": null } }, "Double": { "base": null, "refs": { "DoubleArrayOptions$DefaultValue": "A value to use for the field if the field isn't specified for a document.", "DoubleOptions$DefaultValue": "

        A value to use for the field if the field isn't specified for a document. This can be important if you are using the field in an expression and that field is not present in every document.

        " } }, "DoubleArrayOptions": { "base": "

        Options for a field that contains an array of double-precision 64-bit floating point values. Present if IndexFieldType specifies the field is of type double-array. All options are enabled by default.

        ", "refs": { "IndexField$DoubleArrayOptions": null } }, "DoubleOptions": { "base": "

        Options for a double-precision 64-bit floating point field. Present if IndexFieldType specifies the field is of type double. All options are enabled by default.

        ", "refs": { "IndexField$DoubleOptions": null } }, "DynamicFieldName": { "base": null, "refs": { "DeleteIndexFieldRequest$IndexFieldName": "

        The name of the index field your want to remove from the domain's indexing options.

        ", "DynamicFieldNameList$member": null, "IndexField$IndexFieldName": "

        A string that represents the name of an index field. CloudSearch supports regular index fields as well as dynamic fields. A dynamic field's name defines a pattern that begins or ends with a wildcard. Any document fields that don't map to a regular index field but do match a dynamic field's pattern are configured with the dynamic field's indexing options.

        Regular field names begin with a letter and can contain the following characters: a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must begin or end with a wildcard (*). The wildcard can also be the only character in a dynamic field name. Multiple wildcards, and wildcards embedded within a string are not supported.

        The name score is reserved and cannot be used as a field name. To reference a document's ID, you can use the name _id.

        " } }, "DynamicFieldNameList": { "base": null, "refs": { "DescribeIndexFieldsRequest$FieldNames": "

        A list of the index fields you want to describe. If not specified, information is returned for all configured index fields.

        " } }, "ErrorCode": { "base": "

        A machine-parsable string error or warning code.

        ", "refs": { "BaseException$Code": null } }, "ErrorMessage": { "base": "

        A human-readable string error or warning message.

        ", "refs": { "BaseException$Message": null } }, "Expression": { "base": "

        A named expression that can be evaluated at search time. Can be used to sort the search results, define other expressions, or return computed information in the search results.

        ", "refs": { "DefineExpressionRequest$Expression": null, "ExpressionStatus$Options": "

        The expression that is evaluated for sorting while processing a search request.

        " } }, "ExpressionStatus": { "base": "

        The value of an Expression and its current status.

        ", "refs": { "DefineExpressionResponse$Expression": null, "DeleteExpressionResponse$Expression": "

        The status of the expression being deleted.

        ", "ExpressionStatusList$member": null } }, "ExpressionStatusList": { "base": "

        Contains the status of multiple expressions.

        ", "refs": { "DescribeExpressionsResponse$Expressions": "

        The expressions configured for the domain.

        " } }, "ExpressionValue": { "base": "

        The expression to evaluate for sorting while processing a search request. The Expression syntax is based on JavaScript expressions. For more information, see Configuring Expressions in the Amazon CloudSearch Developer Guide.

        ", "refs": { "Expression$ExpressionValue": null } }, "FieldName": { "base": "

        A string that represents the name of an index field. CloudSearch supports regular index fields as well as dynamic fields. A dynamic field's name defines a pattern that begins or ends with a wildcard. Any document fields that don't map to a regular index field but do match a dynamic field's pattern are configured with the dynamic field's indexing options.

        Regular field names begin with a letter and can contain the following characters: a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must begin or end with a wildcard (*). The wildcard can also be the only character in a dynamic field name. Multiple wildcards, and wildcards embedded within a string are not supported.

        The name score is reserved and cannot be used as a field name. To reference a document's ID, you can use the name _id.

        ", "refs": { "DateOptions$SourceField": null, "DocumentSuggesterOptions$SourceField": "

        The name of the index field you want to use for suggestions.

        ", "DoubleOptions$SourceField": "

        The name of the source field to map to the field.

        ", "FieldNameList$member": null, "IntOptions$SourceField": "

        The name of the source field to map to the field.

        ", "LatLonOptions$SourceField": null, "LiteralOptions$SourceField": null, "TextOptions$SourceField": null } }, "FieldNameCommaList": { "base": null, "refs": { "DateArrayOptions$SourceFields": "

        A list of source fields to map to the field.

        ", "DoubleArrayOptions$SourceFields": "

        A list of source fields to map to the field.

        ", "IntArrayOptions$SourceFields": "

        A list of source fields to map to the field.

        ", "LiteralArrayOptions$SourceFields": "

        A list of source fields to map to the field.

        ", "TextArrayOptions$SourceFields": "

        A list of source fields to map to the field.

        " } }, "FieldNameList": { "base": "

        A list of field names.

        ", "refs": { "BuildSuggestersResponse$FieldNames": null, "IndexDocumentsResponse$FieldNames": "

        The names of the fields that are currently being indexed.

        " } }, "FieldValue": { "base": "

        The value of a field attribute.

        ", "refs": { "DateArrayOptions$DefaultValue": "A value to use for the field if the field isn't specified for a document.", "DateOptions$DefaultValue": "A value to use for the field if the field isn't specified for a document.", "LatLonOptions$DefaultValue": "A value to use for the field if the field isn't specified for a document.", "LiteralArrayOptions$DefaultValue": "A value to use for the field if the field isn't specified for a document.", "LiteralOptions$DefaultValue": "A value to use for the field if the field isn't specified for a document.", "TextArrayOptions$DefaultValue": "A value to use for the field if the field isn't specified for a document.", "TextOptions$DefaultValue": "A value to use for the field if the field isn't specified for a document." } }, "IndexDocumentsRequest": { "base": "

        Container for the parameters to the IndexDocuments operation. Specifies the name of the domain you want to re-index.

        ", "refs": { } }, "IndexDocumentsResponse": { "base": "

        The result of an IndexDocuments request. Contains the status of the indexing operation, including the fields being indexed.

        ", "refs": { } }, "IndexField": { "base": "

        Configuration information for a field in the index, including its name, type, and options. The supported options depend on the IndexFieldType.

        ", "refs": { "DefineIndexFieldRequest$IndexField": "

        The index field and field options you want to configure.

        ", "IndexFieldStatus$Options": null } }, "IndexFieldStatus": { "base": "

        The value of an IndexField and its current status.

        ", "refs": { "DefineIndexFieldResponse$IndexField": null, "DeleteIndexFieldResponse$IndexField": "

        The status of the index field being deleted.

        ", "IndexFieldStatusList$member": null } }, "IndexFieldStatusList": { "base": "

        Contains the status of multiple index fields.

        ", "refs": { "DescribeIndexFieldsResponse$IndexFields": "

        The index fields configured for the domain.

        " } }, "IndexFieldType": { "base": "

        The type of field. The valid options for a field depend on the field type. For more information about the supported field types, see Configuring Index Fields in the Amazon CloudSearch Developer Guide.

        ", "refs": { "IndexField$IndexFieldType": null } }, "InstanceCount": { "base": null, "refs": { "DomainStatus$SearchInstanceCount": "

        The number of search instances that are available to process search requests.

        " } }, "IntArrayOptions": { "base": "

        Options for a field that contains an array of 64-bit signed integers. Present if IndexFieldType specifies the field is of type int-array. All options are enabled by default.

        ", "refs": { "IndexField$IntArrayOptions": null } }, "IntOptions": { "base": "

        Options for a 64-bit signed integer field. Present if IndexFieldType specifies the field is of type int. All options are enabled by default.

        ", "refs": { "IndexField$IntOptions": null } }, "InternalException": { "base": "

        An internal error occurred while processing the request. If this problem persists, report an issue from the Service Health Dashboard.

        ", "refs": { } }, "InvalidTypeException": { "base": "

        The request was rejected because it specified an invalid type definition.

        ", "refs": { } }, "LatLonOptions": { "base": "

        Options for a latlon field. A latlon field contains a location stored as a latitude and longitude value pair. Present if IndexFieldType specifies the field is of type latlon. All options are enabled by default.

        ", "refs": { "IndexField$LatLonOptions": null } }, "LimitExceededException": { "base": "

        The request was rejected because a resource limit has already been met.

        ", "refs": { } }, "Limits": { "base": null, "refs": { "DomainStatus$Limits": null } }, "ListDomainNamesResponse": { "base": "

        The result of a ListDomainNames request. Contains a list of the domains owned by an account.

        ", "refs": { } }, "LiteralArrayOptions": { "base": "

        Options for a field that contains an array of literal strings. Present if IndexFieldType specifies the field is of type literal-array. All options are enabled by default.

        ", "refs": { "IndexField$LiteralArrayOptions": null } }, "LiteralOptions": { "base": "

        Options for literal field. Present if IndexFieldType specifies the field is of type literal. All options are enabled by default.

        ", "refs": { "IndexField$LiteralOptions": null } }, "Long": { "base": null, "refs": { "IntArrayOptions$DefaultValue": "A value to use for the field if the field isn't specified for a document.", "IntOptions$DefaultValue": "A value to use for the field if the field isn't specified for a document. This can be important if you are using the field in an expression and that field is not present in every document." } }, "MaximumPartitionCount": { "base": null, "refs": { "Limits$MaximumPartitionCount": null } }, "MaximumReplicationCount": { "base": null, "refs": { "Limits$MaximumReplicationCount": null } }, "MultiAZ": { "base": null, "refs": { "AvailabilityOptionsStatus$Options": "

        The availability options configured for the domain.

        " } }, "OptionState": { "base": "

        The state of processing a change to an option. One of:

        • RequiresIndexDocuments: The option's latest value will not be deployed until IndexDocuments has been called and indexing is complete.
        • Processing: The option's latest value is in the process of being activated.
        • Active: The option's latest value is fully deployed.
        • FailedToValidate: The option value is not compatible with the domain's data and cannot be used to index the data. You must either modify the option value or update or remove the incompatible documents.
        ", "refs": { "OptionStatus$State": "

        The state of processing a change to an option. Possible values:

        • RequiresIndexDocuments: the option's latest value will not be deployed until IndexDocuments has been called and indexing is complete.
        • Processing: the option's latest value is in the process of being activated.
        • Active: the option's latest value is completely deployed.
        • FailedToValidate: the option value is not compatible with the domain's data and cannot be used to index the data. You must either modify the option value or update or remove the incompatible documents.
        " } }, "OptionStatus": { "base": "

        The status of domain configuration option.

        ", "refs": { "AccessPoliciesStatus$Status": null, "AnalysisSchemeStatus$Status": null, "AvailabilityOptionsStatus$Status": null, "ExpressionStatus$Status": null, "IndexFieldStatus$Status": null, "ScalingParametersStatus$Status": null, "SuggesterStatus$Status": null } }, "PartitionCount": { "base": "

        The number of partitions used to hold the domain's index.

        ", "refs": { "DomainStatus$SearchPartitionCount": "

        The number of partitions across which the search index is spread.

        " } }, "PartitionInstanceType": { "base": "

        The instance type (such as search.m1.small) on which an index partition is hosted.

        ", "refs": { "ScalingParameters$DesiredInstanceType": "

        The instance type that you want to preconfigure for your domain. For example, search.m1.small.

        " } }, "PolicyDocument": { "base": "

        Access rules for a domain's document or search service endpoints. For more information, see Configuring Access for a Search Domain in the Amazon CloudSearch Developer Guide. The maximum size of a policy document is 100 KB.

        ", "refs": { "AccessPoliciesStatus$Options": null, "UpdateServiceAccessPoliciesRequest$AccessPolicies": "

        The access rules you want to configure. These rules replace any existing rules.

        " } }, "ResourceNotFoundException": { "base": "

        The request was rejected because it attempted to reference a resource that does not exist.

        ", "refs": { } }, "ScalingParameters": { "base": "

        The desired instance type and desired number of replicas of each index partition.

        ", "refs": { "ScalingParametersStatus$Options": null, "UpdateScalingParametersRequest$ScalingParameters": null } }, "ScalingParametersStatus": { "base": "

        The status and configuration of a search domain's scaling parameters.

        ", "refs": { "DescribeScalingParametersResponse$ScalingParameters": null, "UpdateScalingParametersResponse$ScalingParameters": null } }, "SearchInstanceType": { "base": "

        The instance type (such as search.m1.small) that is being used to process search requests.

        ", "refs": { "DomainStatus$SearchInstanceType": "

        The instance type that is being used to process search requests.

        " } }, "ServiceEndpoint": { "base": "

        The endpoint to which service requests can be submitted.

        ", "refs": { "DomainStatus$DocService": "

        The service endpoint for updating documents in a search domain.

        ", "DomainStatus$SearchService": "

        The service endpoint for requesting search results from a search domain.

        " } }, "ServiceUrl": { "base": "

        The endpoint to which service requests can be submitted. For example, search-imdb-movies-oopcnjfn6ugofer3zx5iadxxca.eu-west-1.cloudsearch.amazonaws.com or doc-imdb-movies-oopcnjfn6ugofer3zx5iadxxca.eu-west-1.cloudsearch.amazonaws.com.

        ", "refs": { "ServiceEndpoint$Endpoint": null } }, "StandardName": { "base": "

        Names must begin with a letter and can contain the following characters: a-z (lowercase), 0-9, and _ (underscore).

        ", "refs": { "AnalysisScheme$AnalysisSchemeName": null, "DeleteAnalysisSchemeRequest$AnalysisSchemeName": "

        The name of the analysis scheme you want to delete.

        ", "DeleteExpressionRequest$ExpressionName": "

        The name of the Expression to delete.

        ", "DeleteSuggesterRequest$SuggesterName": "

        Specifies the name of the suggester you want to delete.

        ", "Expression$ExpressionName": null, "StandardNameList$member": null, "Suggester$SuggesterName": null } }, "StandardNameList": { "base": null, "refs": { "DescribeAnalysisSchemesRequest$AnalysisSchemeNames": "

        The analysis schemes you want to describe.

        ", "DescribeExpressionsRequest$ExpressionNames": "

        Limits the DescribeExpressions response to the specified expressions. If not specified, all expressions are shown.

        ", "DescribeSuggestersRequest$SuggesterNames": "

        The suggesters you want to describe.

        " } }, "String": { "base": null, "refs": { "AnalysisOptions$Synonyms": "

        A JSON object that defines synonym groups and aliases. A synonym group is an array of arrays, where each sub-array is a group of terms where each term in the group is considered a synonym of every other term in the group. The aliases value is an object that contains a collection of string:value pairs where the string specifies a term and the array of values specifies each of the aliases for that term. An alias is considered a synonym of the specified term, but the term is not considered a synonym of the alias. For more information about specifying synonyms, see Synonyms in the Amazon CloudSearch Developer Guide.

        ", "AnalysisOptions$Stopwords": "

        A JSON array of terms to ignore during indexing and searching. For example, [\"a\", \"an\", \"the\", \"of\"]. The stopwords dictionary must explicitly list each word you want to ignore. Wildcards and regular expressions are not supported.

        ", "AnalysisOptions$StemmingDictionary": "

        A JSON object that contains a collection of string:value pairs that each map a term to its stem. For example, {\"term1\": \"stem1\", \"term2\": \"stem2\", \"term3\": \"stem3\"}. The stemming dictionary is applied in addition to any algorithmic stemming. This enables you to override the results of the algorithmic stemming to correct specific cases of overstemming or understemming. The maximum size of a stemming dictionary is 500 KB.

        ", "AnalysisOptions$JapaneseTokenizationDictionary": "

        A JSON array that contains a collection of terms, tokens, readings and part of speech for Japanese Tokenizaiton. The Japanese tokenization dictionary enables you to override the default tokenization for selected terms. This is only valid for Japanese language fields.

        ", "DocumentSuggesterOptions$SortExpression": "

        An expression that computes a score for each suggestion to control how they are sorted. The scores are rounded to the nearest integer, with a floor of 0 and a ceiling of 2^31-1. A document's relevance score is not computed for suggestions, so sort expressions cannot reference the _score value. To sort suggestions using a numeric field or existing expression, simply specify the name of the field or expression. If no expression is configured for the suggester, the suggestions are sorted with the closest matches listed first.

        " } }, "Suggester": { "base": "

        Configuration information for a search suggester. Each suggester has a unique name and specifies the text field you want to use for suggestions. The following options can be configured for a suggester: FuzzyMatching, SortExpression.

        ", "refs": { "DefineSuggesterRequest$Suggester": null, "SuggesterStatus$Options": null } }, "SuggesterFuzzyMatching": { "base": null, "refs": { "DocumentSuggesterOptions$FuzzyMatching": "

        The level of fuzziness allowed when suggesting matches for a string: none, low, or high. With none, the specified string is treated as an exact prefix. With low, suggestions must differ from the specified string by no more than one character. With high, suggestions can differ by up to two characters. The default is none.

        " } }, "SuggesterStatus": { "base": "

        The value of a Suggester and its current status.

        ", "refs": { "DefineSuggesterResponse$Suggester": null, "DeleteSuggesterResponse$Suggester": "

        The status of the suggester being deleted.

        ", "SuggesterStatusList$member": null } }, "SuggesterStatusList": { "base": "

        Contains the status of multiple suggesters.

        ", "refs": { "DescribeSuggestersResponse$Suggesters": "

        The suggesters configured for the domain specified in the request.

        " } }, "TextArrayOptions": { "base": "

        Options for a field that contains an array of text strings. Present if IndexFieldType specifies the field is of type text-array. A text-array field is always searchable. All options are enabled by default.

        ", "refs": { "IndexField$TextArrayOptions": null } }, "TextOptions": { "base": "

        Options for text field. Present if IndexFieldType specifies the field is of type text. A text field is always searchable. All options are enabled by default.

        ", "refs": { "IndexField$TextOptions": null } }, "UIntValue": { "base": null, "refs": { "OptionStatus$UpdateVersion": "

        A unique integer that indicates when this option was last updated.

        ", "ScalingParameters$DesiredReplicationCount": "

        The number of replicas you want to preconfigure for each index partition.

        ", "ScalingParameters$DesiredPartitionCount": "

        The number of partitions you want to preconfigure for your domain. Only valid when you select m2.2xlarge as the desired instance type.

        " } }, "UpdateAvailabilityOptionsRequest": { "base": "

        Container for the parameters to the UpdateAvailabilityOptions operation. Specifies the name of the domain you want to update and the Multi-AZ availability option.

        ", "refs": { } }, "UpdateAvailabilityOptionsResponse": { "base": "

        The result of a UpdateAvailabilityOptions request. Contains the status of the domain's availability options.

        ", "refs": { } }, "UpdateScalingParametersRequest": { "base": "

        Container for the parameters to the UpdateScalingParameters operation. Specifies the name of the domain you want to update and the scaling parameters you want to configure.

        ", "refs": { } }, "UpdateScalingParametersResponse": { "base": "

        The result of a UpdateScalingParameters request. Contains the status of the newly-configured scaling parameters.

        ", "refs": { } }, "UpdateServiceAccessPoliciesRequest": { "base": "

        Container for the parameters to the UpdateServiceAccessPolicies operation. Specifies the name of the domain you want to update and the access rules you want to configure.

        ", "refs": { } }, "UpdateServiceAccessPoliciesResponse": { "base": "

        The result of an UpdateServiceAccessPolicies request. Contains the new access policies.

        ", "refs": { } }, "UpdateTimestamp": { "base": null, "refs": { "OptionStatus$CreationDate": "

        A timestamp for when this option was created.

        ", "OptionStatus$UpdateDate": "

        A timestamp for when this option was last updated.

        " } }, "Word": { "base": null, "refs": { "TextArrayOptions$AnalysisScheme": "

        The name of an analysis scheme for a text-array field.

        ", "TextOptions$AnalysisScheme": "

        The name of an analysis scheme for a text field.

        " } } } } aws-sdk-go-1.4.22/models/apis/cloudsearch/2013-01-01/paginators-1.json000066400000000000000000000005771300374646400245300ustar00rootroot00000000000000{ "pagination": { "DescribeAnalysisSchemes": { "result_key": "AnalysisSchemes" }, "DescribeDomains": { "result_key": "DomainStatusList" }, "DescribeExpressions": { "result_key": "Expressions" }, "DescribeIndexFields": { "result_key": "IndexFields" }, "DescribeSuggesters": { "result_key": "Suggesters" } } } aws-sdk-go-1.4.22/models/apis/cloudsearchdomain/000077500000000000000000000000001300374646400214665ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudsearchdomain/2013-01-01/000077500000000000000000000000001300374646400225075ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudsearchdomain/2013-01-01/api-2.json000066400000000000000000000213171300374646400243160ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2013-01-01", "endpointPrefix":"cloudsearchdomain", "jsonVersion":"1.1", "protocol":"rest-json", "serviceFullName":"Amazon CloudSearch Domain", "signatureVersion":"v4", "signingName":"cloudsearch" }, "operations":{ "Search":{ "name":"Search", "http":{ "method":"GET", "requestUri":"/2013-01-01/search?format=sdk&pretty=true" }, "input":{"shape":"SearchRequest"}, "output":{"shape":"SearchResponse"}, "errors":[ {"shape":"SearchException"} ] }, "Suggest":{ "name":"Suggest", "http":{ "method":"GET", "requestUri":"/2013-01-01/suggest?format=sdk&pretty=true" }, "input":{"shape":"SuggestRequest"}, "output":{"shape":"SuggestResponse"}, "errors":[ {"shape":"SearchException"} ] }, "UploadDocuments":{ "name":"UploadDocuments", "http":{ "method":"POST", "requestUri":"/2013-01-01/documents/batch?format=sdk" }, "input":{"shape":"UploadDocumentsRequest"}, "output":{"shape":"UploadDocumentsResponse"}, "errors":[ {"shape":"DocumentServiceException"} ] } }, "shapes":{ "Adds":{"type":"long"}, "Blob":{ "type":"blob", "streaming":true }, "Bucket":{ "type":"structure", "members":{ "value":{"shape":"String"}, "count":{"shape":"Long"} } }, "BucketInfo":{ "type":"structure", "members":{ "buckets":{"shape":"BucketList"} } }, "BucketList":{ "type":"list", "member":{"shape":"Bucket"} }, "ContentType":{ "type":"string", "enum":[ "application/json", "application/xml" ] }, "Cursor":{"type":"string"}, "Deletes":{"type":"long"}, "DocumentServiceException":{ "type":"structure", "members":{ "status":{"shape":"String"}, "message":{"shape":"String"} }, "exception":true }, "DocumentServiceWarning":{ "type":"structure", "members":{ "message":{"shape":"String"} } }, "DocumentServiceWarnings":{ "type":"list", "member":{"shape":"DocumentServiceWarning"} }, "Double":{"type":"double"}, "Expr":{"type":"string"}, "Exprs":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"String"} }, "Facet":{"type":"string"}, "Facets":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"BucketInfo"} }, "FieldStats":{ "type":"structure", "members":{ "min":{"shape":"String"}, "max":{"shape":"String"}, "count":{"shape":"Long"}, "missing":{"shape":"Long"}, "sum":{"shape":"Double"}, "sumOfSquares":{"shape":"Double"}, "mean":{"shape":"String"}, "stddev":{"shape":"Double"} } }, "FieldValue":{ "type":"list", "member":{"shape":"String"} }, "Fields":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"FieldValue"} }, "FilterQuery":{"type":"string"}, "Highlight":{"type":"string"}, "Highlights":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"String"} }, "Hit":{ "type":"structure", "members":{ "id":{"shape":"String"}, "fields":{"shape":"Fields"}, "exprs":{"shape":"Exprs"}, "highlights":{"shape":"Highlights"} } }, "HitList":{ "type":"list", "member":{"shape":"Hit"} }, "Hits":{ "type":"structure", "members":{ "found":{"shape":"Long"}, "start":{"shape":"Long"}, "cursor":{"shape":"String"}, "hit":{"shape":"HitList"} } }, "Long":{"type":"long"}, "Partial":{"type":"boolean"}, "Query":{"type":"string"}, "QueryOptions":{"type":"string"}, "QueryParser":{ "type":"string", "enum":[ "simple", "structured", "lucene", "dismax" ] }, "Return":{"type":"string"}, "SearchException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "SearchRequest":{ "type":"structure", "required":["query"], "members":{ "cursor":{ "shape":"Cursor", "location":"querystring", "locationName":"cursor" }, "expr":{ "shape":"Expr", "location":"querystring", "locationName":"expr" }, "facet":{ "shape":"Facet", "location":"querystring", "locationName":"facet" }, "filterQuery":{ "shape":"FilterQuery", "location":"querystring", "locationName":"fq" }, "highlight":{ "shape":"Highlight", "location":"querystring", "locationName":"highlight" }, "partial":{ "shape":"Partial", "location":"querystring", "locationName":"partial" }, "query":{ "shape":"Query", "location":"querystring", "locationName":"q" }, "queryOptions":{ "shape":"QueryOptions", "location":"querystring", "locationName":"q.options" }, "queryParser":{ "shape":"QueryParser", "location":"querystring", "locationName":"q.parser" }, "return":{ "shape":"Return", "location":"querystring", "locationName":"return" }, "size":{ "shape":"Size", "location":"querystring", "locationName":"size" }, "sort":{ "shape":"Sort", "location":"querystring", "locationName":"sort" }, "start":{ "shape":"Start", "location":"querystring", "locationName":"start" }, "stats":{ "shape":"Stat", "location":"querystring", "locationName":"stats" } } }, "SearchResponse":{ "type":"structure", "members":{ "status":{"shape":"SearchStatus"}, "hits":{"shape":"Hits"}, "facets":{"shape":"Facets"}, "stats":{"shape":"Stats"} } }, "SearchStatus":{ "type":"structure", "members":{ "timems":{"shape":"Long"}, "rid":{"shape":"String"} } }, "Size":{"type":"long"}, "Sort":{"type":"string"}, "Start":{"type":"long"}, "Stat":{"type":"string"}, "Stats":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"FieldStats"} }, "String":{"type":"string"}, "SuggestModel":{ "type":"structure", "members":{ "query":{"shape":"String"}, "found":{"shape":"Long"}, "suggestions":{"shape":"Suggestions"} } }, "SuggestRequest":{ "type":"structure", "required":[ "query", "suggester" ], "members":{ "query":{ "shape":"Query", "location":"querystring", "locationName":"q" }, "suggester":{ "shape":"Suggester", "location":"querystring", "locationName":"suggester" }, "size":{ "shape":"SuggestionsSize", "location":"querystring", "locationName":"size" } } }, "SuggestResponse":{ "type":"structure", "members":{ "status":{"shape":"SuggestStatus"}, "suggest":{"shape":"SuggestModel"} } }, "SuggestStatus":{ "type":"structure", "members":{ "timems":{"shape":"Long"}, "rid":{"shape":"String"} } }, "Suggester":{"type":"string"}, "SuggestionMatch":{ "type":"structure", "members":{ "suggestion":{"shape":"String"}, "score":{"shape":"Long"}, "id":{"shape":"String"} } }, "Suggestions":{ "type":"list", "member":{"shape":"SuggestionMatch"} }, "SuggestionsSize":{"type":"long"}, "UploadDocumentsRequest":{ "type":"structure", "required":[ "documents", "contentType" ], "members":{ "documents":{"shape":"Blob"}, "contentType":{ "shape":"ContentType", "location":"header", "locationName":"Content-Type" } }, "payload":"documents" }, "UploadDocumentsResponse":{ "type":"structure", "members":{ "status":{"shape":"String"}, "adds":{"shape":"Adds"}, "deletes":{"shape":"Deletes"}, "warnings":{"shape":"DocumentServiceWarnings"} } } } } aws-sdk-go-1.4.22/models/apis/cloudsearchdomain/2013-01-01/docs-2.json000066400000000000000000001114751300374646400245020ustar00rootroot00000000000000{ "version": "2.0", "service": "

        You use the AmazonCloudSearch2013 API to upload documents to a search domain and search those documents.

        The endpoints for submitting UploadDocuments, Search, and Suggest requests are domain-specific. To get the endpoints for your domain, use the Amazon CloudSearch configuration service DescribeDomains action. The domain endpoints are also displayed on the domain dashboard in the Amazon CloudSearch console. You submit suggest requests to the search endpoint.

        For more information, see the Amazon CloudSearch Developer Guide.

        ", "operations": { "Search": "

        Retrieves a list of documents that match the specified search criteria. How you specify the search criteria depends on which query parser you use. Amazon CloudSearch supports four query parsers:

        • simple: search all text and text-array fields for the specified string. Search for phrases, individual terms, and prefixes.
        • structured: search specific fields, construct compound queries using Boolean operators, and use advanced features such as term boosting and proximity searching.
        • lucene: specify search criteria using the Apache Lucene query parser syntax.
        • dismax: specify search criteria using the simplified subset of the Apache Lucene query parser syntax defined by the DisMax query parser.

        For more information, see Searching Your Data in the Amazon CloudSearch Developer Guide.

        The endpoint for submitting Search requests is domain-specific. You submit search requests to a domain's search endpoint. To get the search endpoint for your domain, use the Amazon CloudSearch configuration service DescribeDomains action. A domain's endpoints are also displayed on the domain dashboard in the Amazon CloudSearch console.

        ", "Suggest": "

        Retrieves autocomplete suggestions for a partial query string. You can use suggestions enable you to display likely matches before users finish typing. In Amazon CloudSearch, suggestions are based on the contents of a particular text field. When you request suggestions, Amazon CloudSearch finds all of the documents whose values in the suggester field start with the specified query string. The beginning of the field must match the query string to be considered a match.

        For more information about configuring suggesters and retrieving suggestions, see Getting Suggestions in the Amazon CloudSearch Developer Guide.

        The endpoint for submitting Suggest requests is domain-specific. You submit suggest requests to a domain's search endpoint. To get the search endpoint for your domain, use the Amazon CloudSearch configuration service DescribeDomains action. A domain's endpoints are also displayed on the domain dashboard in the Amazon CloudSearch console.

        ", "UploadDocuments": "

        Posts a batch of documents to a search domain for indexing. A document batch is a collection of add and delete operations that represent the documents you want to add, update, or delete from your domain. Batches can be described in either JSON or XML. Each item that you want Amazon CloudSearch to return as a search result (such as a product) is represented as a document. Every document has a unique ID and one or more fields that contain the data that you want to search and return in results. Individual documents cannot contain more than 1 MB of data. The entire batch cannot exceed 5 MB. To get the best possible upload performance, group add and delete operations in batches that are close the 5 MB limit. Submitting a large volume of single-document batches can overload a domain's document service.

        The endpoint for submitting UploadDocuments requests is domain-specific. To get the document endpoint for your domain, use the Amazon CloudSearch configuration service DescribeDomains action. A domain's endpoints are also displayed on the domain dashboard in the Amazon CloudSearch console.

        For more information about formatting your data for Amazon CloudSearch, see Preparing Your Data in the Amazon CloudSearch Developer Guide. For more information about uploading data for indexing, see Uploading Data in the Amazon CloudSearch Developer Guide.

        " }, "shapes": { "Adds": { "base": null, "refs": { "UploadDocumentsResponse$adds": "

        The number of documents that were added to the search domain.

        " } }, "Blob": { "base": null, "refs": { "UploadDocumentsRequest$documents": "

        A batch of documents formatted in JSON or HTML.

        " } }, "Bucket": { "base": "

        A container for facet information.

        ", "refs": { "BucketList$member": null } }, "BucketInfo": { "base": "

        A container for the calculated facet values and counts.

        ", "refs": { "Facets$value": null } }, "BucketList": { "base": null, "refs": { "BucketInfo$buckets": "

        A list of the calculated facet values and counts.

        " } }, "ContentType": { "base": null, "refs": { "UploadDocumentsRequest$contentType": "

        The format of the batch you are uploading. Amazon CloudSearch supports two document batch formats:

        • application/json
        • application/xml
        " } }, "Cursor": { "base": null, "refs": { "SearchRequest$cursor": "

        Retrieves a cursor value you can use to page through large result sets. Use the size parameter to control the number of hits to include in each response. You can specify either the cursor or start parameter in a request; they are mutually exclusive. To get the first cursor, set the cursor value to initial. In subsequent requests, specify the cursor value returned in the hits section of the response.

        For more information, see Paginating Results in the Amazon CloudSearch Developer Guide.

        " } }, "Deletes": { "base": null, "refs": { "UploadDocumentsResponse$deletes": "

        The number of documents that were deleted from the search domain.

        " } }, "DocumentServiceException": { "base": "

        Information about any problems encountered while processing an upload request.

        ", "refs": { } }, "DocumentServiceWarning": { "base": "

        A warning returned by the document service when an issue is discovered while processing an upload request.

        ", "refs": { "DocumentServiceWarnings$member": null } }, "DocumentServiceWarnings": { "base": null, "refs": { "UploadDocumentsResponse$warnings": "

        Any warnings returned by the document service about the documents being uploaded.

        " } }, "Double": { "base": null, "refs": { "FieldStats$sum": "

        The sum of the field values across the documents in the result set. null for date fields.

        ", "FieldStats$sumOfSquares": "

        The sum of all field values in the result set squared.

        ", "FieldStats$stddev": "

        The standard deviation of the values in the specified field in the result set.

        " } }, "Expr": { "base": null, "refs": { "SearchRequest$expr": "

        Defines one or more numeric expressions that can be used to sort results or specify search or filter criteria. You can also specify expressions as return fields.

        You specify the expressions in JSON using the form {\"EXPRESSIONNAME\":\"EXPRESSION\"}. You can define and use multiple expressions in a search request. For example:

        {\"expression1\":\"_score*rating\", \"expression2\":\"(1/rank)*year\"}

        For information about the variables, operators, and functions you can use in expressions, see Writing Expressions in the Amazon CloudSearch Developer Guide.

        " } }, "Exprs": { "base": null, "refs": { "Hit$exprs": "

        The expressions returned from a document that matches the search request.

        " } }, "Facet": { "base": null, "refs": { "SearchRequest$facet": "

        Specifies one or more fields for which to get facet information, and options that control how the facet information is returned. Each specified field must be facet-enabled in the domain configuration. The fields and options are specified in JSON using the form {\"FIELD\":{\"OPTION\":VALUE,\"OPTION:\"STRING\"},\"FIELD\":{\"OPTION\":VALUE,\"OPTION\":\"STRING\"}}.

        You can specify the following faceting options:

        • buckets specifies an array of the facet values or ranges to count. Ranges are specified using the same syntax that you use to search for a range of values. For more information, see Searching for a Range of Values in the Amazon CloudSearch Developer Guide. Buckets are returned in the order they are specified in the request. The sort and size options are not valid if you specify buckets.

        • size specifies the maximum number of facets to include in the results. By default, Amazon CloudSearch returns counts for the top 10. The size parameter is only valid when you specify the sort option; it cannot be used in conjunction with buckets.

        • sort specifies how you want to sort the facets in the results: bucket or count. Specify bucket to sort alphabetically or numerically by facet value (in ascending order). Specify count to sort by the facet counts computed for each facet value (in descending order). To retrieve facet counts for particular values or ranges of values, use the buckets option instead of sort.

        If no facet options are specified, facet counts are computed for all field values, the facets are sorted by facet count, and the top 10 facets are returned in the results.

        To count particular buckets of values, use the buckets option. For example, the following request uses the buckets option to calculate and return facet counts by decade.

        {\"year\":{\"buckets\":[\"[1970,1979]\",\"[1980,1989]\",\"[1990,1999]\",\"[2000,2009]\",\"[2010,}\"]}}

        To sort facets by facet count, use the count option. For example, the following request sets the sort option to count to sort the facet values by facet count, with the facet values that have the most matching documents listed first. Setting the size option to 3 returns only the top three facet values.

        {\"year\":{\"sort\":\"count\",\"size\":3}}

        To sort the facets by value, use the bucket option. For example, the following request sets the sort option to bucket to sort the facet values numerically by year, with earliest year listed first.

        {\"year\":{\"sort\":\"bucket\"}}

        For more information, see Getting and Using Facet Information in the Amazon CloudSearch Developer Guide.

        " } }, "Facets": { "base": null, "refs": { "SearchResponse$facets": "

        The requested facet information.

        " } }, "FieldStats": { "base": "

        The statistics for a field calculated in the request.

        ", "refs": { "Stats$value": null } }, "FieldValue": { "base": null, "refs": { "Fields$value": null } }, "Fields": { "base": null, "refs": { "Hit$fields": "

        The fields returned from a document that matches the search request.

        " } }, "FilterQuery": { "base": null, "refs": { "SearchRequest$filterQuery": "

        Specifies a structured query that filters the results of a search without affecting how the results are scored and sorted. You use filterQuery in conjunction with the query parameter to filter the documents that match the constraints specified in the query parameter. Specifying a filter controls only which matching documents are included in the results, it has no effect on how they are scored and sorted. The filterQuery parameter supports the full structured query syntax.

        For more information about using filters, see Filtering Matching Documents in the Amazon CloudSearch Developer Guide.

        " } }, "Highlight": { "base": null, "refs": { "SearchRequest$highlight": "

        Retrieves highlights for matches in the specified text or text-array fields. Each specified field must be highlight enabled in the domain configuration. The fields and options are specified in JSON using the form {\"FIELD\":{\"OPTION\":VALUE,\"OPTION:\"STRING\"},\"FIELD\":{\"OPTION\":VALUE,\"OPTION\":\"STRING\"}}.

        You can specify the following highlight options:

        • format: specifies the format of the data in the text field: text or html. When data is returned as HTML, all non-alphanumeric characters are encoded. The default is html.
        • max_phrases: specifies the maximum number of occurrences of the search term(s) you want to highlight. By default, the first occurrence is highlighted.
        • pre_tag: specifies the string to prepend to an occurrence of a search term. The default for HTML highlights is &lt;em&gt;. The default for text highlights is *.
        • post_tag: specifies the string to append to an occurrence of a search term. The default for HTML highlights is &lt;/em&gt;. The default for text highlights is *.

        If no highlight options are specified for a field, the returned field text is treated as HTML and the first match is highlighted with emphasis tags: &lt;em>search-term&lt;/em&gt;.

        For example, the following request retrieves highlights for the actors and title fields.

        { \"actors\": {}, \"title\": {\"format\": \"text\",\"max_phrases\": 2,\"pre_tag\": \"\",\"post_tag\": \"\"} }

        " } }, "Highlights": { "base": null, "refs": { "Hit$highlights": "

        The highlights returned from a document that matches the search request.

        " } }, "Hit": { "base": "

        Information about a document that matches the search request.

        ", "refs": { "HitList$member": null } }, "HitList": { "base": null, "refs": { "Hits$hit": "

        A document that matches the search request.

        " } }, "Hits": { "base": "

        The collection of documents that match the search request.

        ", "refs": { "SearchResponse$hits": "

        The documents that match the search criteria.

        " } }, "Long": { "base": null, "refs": { "Bucket$count": "

        The number of hits that contain the facet value in the specified facet field.

        ", "FieldStats$count": "

        The number of documents that contain a value in the specified field in the result set.

        ", "FieldStats$missing": "

        The number of documents that do not contain a value in the specified field in the result set.

        ", "Hits$found": "

        The total number of documents that match the search request.

        ", "Hits$start": "

        The index of the first matching document.

        ", "SearchStatus$timems": "

        How long it took to process the request, in milliseconds.

        ", "SuggestModel$found": "

        The number of documents that were found to match the query string.

        ", "SuggestStatus$timems": "

        How long it took to process the request, in milliseconds.

        ", "SuggestionMatch$score": "

        The relevance score of a suggested match.

        " } }, "Partial": { "base": null, "refs": { "SearchRequest$partial": "

        Enables partial results to be returned if one or more index partitions are unavailable. When your search index is partitioned across multiple search instances, by default Amazon CloudSearch only returns results if every partition can be queried. This means that the failure of a single search instance can result in 5xx (internal server) errors. When you enable partial results, Amazon CloudSearch returns whatever results are available and includes the percentage of documents searched in the search results (percent-searched). This enables you to more gracefully degrade your users' search experience. For example, rather than displaying no results, you could display the partial results and a message indicating that the results might be incomplete due to a temporary system outage.

        " } }, "Query": { "base": null, "refs": { "SearchRequest$query": "

        Specifies the search criteria for the request. How you specify the search criteria depends on the query parser used for the request and the parser options specified in the queryOptions parameter. By default, the simple query parser is used to process requests. To use the structured, lucene, or dismax query parser, you must also specify the queryParser parameter.

        For more information about specifying search criteria, see Searching Your Data in the Amazon CloudSearch Developer Guide.

        ", "SuggestRequest$query": "

        Specifies the string for which you want to get suggestions.

        " } }, "QueryOptions": { "base": null, "refs": { "SearchRequest$queryOptions": "

        Configures options for the query parser specified in the queryParser parameter. You specify the options in JSON using the following form {\"OPTION1\":\"VALUE1\",\"OPTION2\":VALUE2\"...\"OPTIONN\":\"VALUEN\"}.

        The options you can configure vary according to which parser you use:

        • defaultOperator: The default operator used to combine individual terms in the search string. For example: defaultOperator: 'or'. For the dismax parser, you specify a percentage that represents the percentage of terms in the search string (rounded down) that must match, rather than a default operator. A value of 0% is the equivalent to OR, and a value of 100% is equivalent to AND. The percentage must be specified as a value in the range 0-100 followed by the percent (%) symbol. For example, defaultOperator: 50%. Valid values: and, or, a percentage in the range 0%-100% (dismax). Default: and (simple, structured, lucene) or 100 (dismax). Valid for: simple, structured, lucene, and dismax.
        • fields: An array of the fields to search when no fields are specified in a search. If no fields are specified in a search and this option is not specified, all text and text-array fields are searched. You can specify a weight for each field to control the relative importance of each field when Amazon CloudSearch calculates relevance scores. To specify a field weight, append a caret (^) symbol and the weight to the field name. For example, to boost the importance of the title field over the description field you could specify: \"fields\":[\"title^5\",\"description\"]. Valid values: The name of any configured field and an optional numeric value greater than zero. Default: All text and text-array fields. Valid for: simple, structured, lucene, and dismax.
        • operators: An array of the operators or special characters you want to disable for the simple query parser. If you disable the and, or, or not operators, the corresponding operators (+, |, -) have no special meaning and are dropped from the search string. Similarly, disabling prefix disables the wildcard operator (*) and disabling phrase disables the ability to search for phrases by enclosing phrases in double quotes. Disabling precedence disables the ability to control order of precedence using parentheses. Disabling near disables the ability to use the ~ operator to perform a sloppy phrase search. Disabling the fuzzy operator disables the ability to use the ~ operator to perform a fuzzy search. escape disables the ability to use a backslash (\\) to escape special characters within the search string. Disabling whitespace is an advanced option that prevents the parser from tokenizing on whitespace, which can be useful for Vietnamese. (It prevents Vietnamese words from being split incorrectly.) For example, you could disable all operators other than the phrase operator to support just simple term and phrase queries: \"operators\":[\"and\",\"not\",\"or\", \"prefix\"]. Valid values: and, escape, fuzzy, near, not, or, phrase, precedence, prefix, whitespace. Default: All operators and special characters are enabled. Valid for: simple.
        • phraseFields: An array of the text or text-array fields you want to use for phrase searches. When the terms in the search string appear in close proximity within a field, the field scores higher. You can specify a weight for each field to boost that score. The phraseSlop option controls how much the matches can deviate from the search string and still be boosted. To specify a field weight, append a caret (^) symbol and the weight to the field name. For example, to boost phrase matches in the title field over the abstract field, you could specify: \"phraseFields\":[\"title^3\", \"plot\"] Valid values: The name of any text or text-array field and an optional numeric value greater than zero. Default: No fields. If you don't specify any fields with phraseFields, proximity scoring is disabled even if phraseSlop is specified. Valid for: dismax.
        • phraseSlop: An integer value that specifies how much matches can deviate from the search phrase and still be boosted according to the weights specified in the phraseFields option; for example, phraseSlop: 2. You must also specify phraseFields to enable proximity scoring. Valid values: positive integers. Default: 0. Valid for: dismax.
        • explicitPhraseSlop: An integer value that specifies how much a match can deviate from the search phrase when the phrase is enclosed in double quotes in the search string. (Phrases that exceed this proximity distance are not considered a match.) For example, to specify a slop of three for dismax phrase queries, you would specify \"explicitPhraseSlop\":3. Valid values: positive integers. Default: 0. Valid for: dismax.
        • tieBreaker: When a term in the search string is found in a document's field, a score is calculated for that field based on how common the word is in that field compared to other documents. If the term occurs in multiple fields within a document, by default only the highest scoring field contributes to the document's overall score. You can specify a tieBreaker value to enable the matches in lower-scoring fields to contribute to the document's score. That way, if two documents have the same max field score for a particular term, the score for the document that has matches in more fields will be higher. The formula for calculating the score with a tieBreaker is (max field score) + (tieBreaker) * (sum of the scores for the rest of the matching fields). Set tieBreaker to 0 to disregard all but the highest scoring field (pure max): \"tieBreaker\":0. Set to 1 to sum the scores from all fields (pure sum): \"tieBreaker\":1. Valid values: 0.0 to 1.0. Default: 0.0. Valid for: dismax.
        " } }, "QueryParser": { "base": null, "refs": { "SearchRequest$queryParser": "

        Specifies which query parser to use to process the request. If queryParser is not specified, Amazon CloudSearch uses the simple query parser.

        Amazon CloudSearch supports four query parsers:

        • simple: perform simple searches of text and text-array fields. By default, the simple query parser searches all text and text-array fields. You can specify which fields to search by with the queryOptions parameter. If you prefix a search term with a plus sign (+) documents must contain the term to be considered a match. (This is the default, unless you configure the default operator with the queryOptions parameter.) You can use the - (NOT), | (OR), and * (wildcard) operators to exclude particular terms, find results that match any of the specified terms, or search for a prefix. To search for a phrase rather than individual terms, enclose the phrase in double quotes. For more information, see Searching for Text in the Amazon CloudSearch Developer Guide.
        • structured: perform advanced searches by combining multiple expressions to define the search criteria. You can also search within particular fields, search for values and ranges of values, and use advanced options such as term boosting, matchall, and near. For more information, see Constructing Compound Queries in the Amazon CloudSearch Developer Guide.
        • lucene: search using the Apache Lucene query parser syntax. For more information, see Apache Lucene Query Parser Syntax.
        • dismax: search using the simplified subset of the Apache Lucene query parser syntax defined by the DisMax query parser. For more information, see DisMax Query Parser Syntax.
        " } }, "Return": { "base": null, "refs": { "SearchRequest$return": "

        Specifies the field and expression values to include in the response. Multiple fields or expressions are specified as a comma-separated list. By default, a search response includes all return enabled fields (_all_fields). To return only the document IDs for the matching documents, specify _no_fields. To retrieve the relevance score calculated for each document, specify _score.

        " } }, "SearchException": { "base": "

        Information about any problems encountered while processing a search request.

        ", "refs": { } }, "SearchRequest": { "base": "

        Container for the parameters to the Search request.

        ", "refs": { } }, "SearchResponse": { "base": "

        The result of a Search request. Contains the documents that match the specified search criteria and any requested fields, highlights, and facet information.

        ", "refs": { } }, "SearchStatus": { "base": "

        Contains the resource id (rid) and the time it took to process the request (timems).

        ", "refs": { "SearchResponse$status": "

        The status information returned for the search request.

        " } }, "Size": { "base": null, "refs": { "SearchRequest$size": "

        Specifies the maximum number of search hits to include in the response.

        " } }, "Sort": { "base": null, "refs": { "SearchRequest$sort": "

        Specifies the fields or custom expressions to use to sort the search results. Multiple fields or expressions are specified as a comma-separated list. You must specify the sort direction (asc or desc) for each field; for example, year desc,title asc. To use a field to sort results, the field must be sort-enabled in the domain configuration. Array type fields cannot be used for sorting. If no sort parameter is specified, results are sorted by their default relevance scores in descending order: _score desc. You can also sort by document ID (_id asc) and version (_version desc).

        For more information, see Sorting Results in the Amazon CloudSearch Developer Guide.

        " } }, "Start": { "base": null, "refs": { "SearchRequest$start": "

        Specifies the offset of the first search hit you want to return. Note that the result set is zero-based; the first result is at index 0. You can specify either the start or cursor parameter in a request, they are mutually exclusive.

        For more information, see Paginating Results in the Amazon CloudSearch Developer Guide.

        " } }, "Stat": { "base": null, "refs": { "SearchRequest$stats": "

        Specifies one or more fields for which to get statistics information. Each specified field must be facet-enabled in the domain configuration. The fields are specified in JSON using the form:

        {\"FIELD-A\":{},\"FIELD-B\":{}}

        There are currently no options supported for statistics.

        " } }, "Stats": { "base": "

        The statistics calculated in the request.

        ", "refs": { "SearchResponse$stats": "

        The requested field statistics information.

        " } }, "String": { "base": null, "refs": { "Bucket$value": "

        The facet value being counted.

        ", "DocumentServiceException$status": "

        The return status of a document upload request, error or success.

        ", "DocumentServiceException$message": "

        The description of the errors returned by the document service.

        ", "DocumentServiceWarning$message": "

        The description for a warning returned by the document service.

        ", "Exprs$key": null, "Exprs$value": null, "Facets$key": null, "FieldStats$min": "

        The minimum value found in the specified field in the result set.

        If the field is numeric (int, int-array, double, or double-array), min is the string representation of a double-precision 64-bit floating point value. If the field is date or date-array, min is the string representation of a date with the format specified in IETF RFC3339: yyyy-mm-ddTHH:mm:ss.SSSZ.

        ", "FieldStats$max": "

        The maximum value found in the specified field in the result set.

        If the field is numeric (int, int-array, double, or double-array), max is the string representation of a double-precision 64-bit floating point value. If the field is date or date-array, max is the string representation of a date with the format specified in IETF RFC3339: yyyy-mm-ddTHH:mm:ss.SSSZ.

        ", "FieldStats$mean": "

        The average of the values found in the specified field in the result set.

        If the field is numeric (int, int-array, double, or double-array), mean is the string representation of a double-precision 64-bit floating point value. If the field is date or date-array, mean is the string representation of a date with the format specified in IETF RFC3339: yyyy-mm-ddTHH:mm:ss.SSSZ.

        ", "FieldValue$member": null, "Fields$key": null, "Highlights$key": null, "Highlights$value": null, "Hit$id": "

        The document ID of a document that matches the search request.

        ", "Hits$cursor": "

        A cursor that can be used to retrieve the next set of matching documents when you want to page through a large result set.

        ", "SearchException$message": "

        A description of the error returned by the search service.

        ", "SearchStatus$rid": "

        The encrypted resource ID for the request.

        ", "Stats$key": null, "SuggestModel$query": "

        The query string specified in the suggest request.

        ", "SuggestStatus$rid": "

        The encrypted resource ID for the request.

        ", "SuggestionMatch$suggestion": "

        The string that matches the query string specified in the SuggestRequest.

        ", "SuggestionMatch$id": "

        The document ID of the suggested document.

        ", "UploadDocumentsResponse$status": "

        The status of an UploadDocumentsRequest.

        " } }, "SuggestModel": { "base": "

        Container for the suggestion information returned in a SuggestResponse.

        ", "refs": { "SuggestResponse$suggest": "

        Container for the matching search suggestion information.

        " } }, "SuggestRequest": { "base": "

        Container for the parameters to the Suggest request.

        ", "refs": { } }, "SuggestResponse": { "base": "

        Contains the response to a Suggest request.

        ", "refs": { } }, "SuggestStatus": { "base": "

        Contains the resource id (rid) and the time it took to process the request (timems).

        ", "refs": { "SuggestResponse$status": "

        The status of a SuggestRequest. Contains the resource ID (rid) and how long it took to process the request (timems).

        " } }, "Suggester": { "base": null, "refs": { "SuggestRequest$suggester": "

        Specifies the name of the suggester to use to find suggested matches.

        " } }, "SuggestionMatch": { "base": "

        An autocomplete suggestion that matches the query string specified in a SuggestRequest.

        ", "refs": { "Suggestions$member": null } }, "Suggestions": { "base": null, "refs": { "SuggestModel$suggestions": "

        The documents that match the query string.

        " } }, "SuggestionsSize": { "base": null, "refs": { "SuggestRequest$size": "

        Specifies the maximum number of suggestions to return.

        " } }, "UploadDocumentsRequest": { "base": "

        Container for the parameters to the UploadDocuments request.

        ", "refs": { } }, "UploadDocumentsResponse": { "base": "

        Contains the response to an UploadDocuments request.

        ", "refs": { } } } } aws-sdk-go-1.4.22/models/apis/cloudsearchdomain/2013-01-01/examples-1.json000066400000000000000000000000541300374646400253550ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/cloudtrail/000077500000000000000000000000001300374646400201445ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudtrail/2013-11-01/000077500000000000000000000000001300374646400211665ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cloudtrail/2013-11-01/api-2.json000066400000000000000000000523461300374646400230030ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2013-11-01", "endpointPrefix":"cloudtrail", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"CloudTrail", "serviceFullName":"AWS CloudTrail", "signatureVersion":"v4", "targetPrefix":"com.amazonaws.cloudtrail.v20131101.CloudTrail_20131101" }, "operations":{ "AddTags":{ "name":"AddTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsRequest"}, "output":{"shape":"AddTagsResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"CloudTrailARNInvalidException"}, {"shape":"ResourceTypeNotSupportedException"}, {"shape":"TagsLimitExceededException"}, {"shape":"InvalidTrailNameException"}, {"shape":"InvalidTagParameterException"}, {"shape":"UnsupportedOperationException"}, {"shape":"OperationNotPermittedException"} ], "idempotent":true }, "CreateTrail":{ "name":"CreateTrail", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateTrailRequest"}, "output":{"shape":"CreateTrailResponse"}, "errors":[ {"shape":"MaximumNumberOfTrailsExceededException"}, {"shape":"TrailAlreadyExistsException"}, {"shape":"S3BucketDoesNotExistException"}, {"shape":"InsufficientS3BucketPolicyException"}, {"shape":"InsufficientSnsTopicPolicyException"}, {"shape":"InsufficientEncryptionPolicyException"}, {"shape":"InvalidS3BucketNameException"}, {"shape":"InvalidS3PrefixException"}, {"shape":"InvalidSnsTopicNameException"}, {"shape":"InvalidKmsKeyIdException"}, {"shape":"InvalidTrailNameException"}, {"shape":"TrailNotProvidedException"}, {"shape":"InvalidParameterCombinationException"}, {"shape":"KmsKeyNotFoundException"}, {"shape":"KmsKeyDisabledException"}, {"shape":"KmsException"}, {"shape":"InvalidCloudWatchLogsLogGroupArnException"}, {"shape":"InvalidCloudWatchLogsRoleArnException"}, {"shape":"CloudWatchLogsDeliveryUnavailableException"}, {"shape":"UnsupportedOperationException"}, {"shape":"OperationNotPermittedException"} ], "idempotent":true }, "DeleteTrail":{ "name":"DeleteTrail", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteTrailRequest"}, "output":{"shape":"DeleteTrailResponse"}, "errors":[ {"shape":"TrailNotFoundException"}, {"shape":"InvalidTrailNameException"}, {"shape":"InvalidHomeRegionException"} ], "idempotent":true }, "DescribeTrails":{ "name":"DescribeTrails", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTrailsRequest"}, "output":{"shape":"DescribeTrailsResponse"}, "errors":[ {"shape":"UnsupportedOperationException"}, {"shape":"OperationNotPermittedException"} ], "idempotent":true }, "GetTrailStatus":{ "name":"GetTrailStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetTrailStatusRequest"}, "output":{"shape":"GetTrailStatusResponse"}, "errors":[ {"shape":"TrailNotFoundException"}, {"shape":"InvalidTrailNameException"} ], "idempotent":true }, "ListPublicKeys":{ "name":"ListPublicKeys", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListPublicKeysRequest"}, "output":{"shape":"ListPublicKeysResponse"}, "errors":[ {"shape":"InvalidTimeRangeException"}, {"shape":"UnsupportedOperationException"}, {"shape":"OperationNotPermittedException"}, {"shape":"InvalidTokenException"} ], "idempotent":true }, "ListTags":{ "name":"ListTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTagsRequest"}, "output":{"shape":"ListTagsResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"CloudTrailARNInvalidException"}, {"shape":"ResourceTypeNotSupportedException"}, {"shape":"InvalidTrailNameException"}, {"shape":"UnsupportedOperationException"}, {"shape":"OperationNotPermittedException"}, {"shape":"InvalidTokenException"} ], "idempotent":true }, "LookupEvents":{ "name":"LookupEvents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"LookupEventsRequest"}, "output":{"shape":"LookupEventsResponse"}, "errors":[ {"shape":"InvalidLookupAttributesException"}, {"shape":"InvalidTimeRangeException"}, {"shape":"InvalidMaxResultsException"}, {"shape":"InvalidNextTokenException"} ], "idempotent":true }, "RemoveTags":{ "name":"RemoveTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsRequest"}, "output":{"shape":"RemoveTagsResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"CloudTrailARNInvalidException"}, {"shape":"ResourceTypeNotSupportedException"}, {"shape":"InvalidTrailNameException"}, {"shape":"InvalidTagParameterException"}, {"shape":"UnsupportedOperationException"}, {"shape":"OperationNotPermittedException"} ], "idempotent":true }, "StartLogging":{ "name":"StartLogging", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartLoggingRequest"}, "output":{"shape":"StartLoggingResponse"}, "errors":[ {"shape":"TrailNotFoundException"}, {"shape":"InvalidTrailNameException"}, {"shape":"InvalidHomeRegionException"} ], "idempotent":true }, "StopLogging":{ "name":"StopLogging", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopLoggingRequest"}, "output":{"shape":"StopLoggingResponse"}, "errors":[ {"shape":"TrailNotFoundException"}, {"shape":"InvalidTrailNameException"}, {"shape":"InvalidHomeRegionException"} ], "idempotent":true }, "UpdateTrail":{ "name":"UpdateTrail", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateTrailRequest"}, "output":{"shape":"UpdateTrailResponse"}, "errors":[ {"shape":"S3BucketDoesNotExistException"}, {"shape":"InsufficientS3BucketPolicyException"}, {"shape":"InsufficientSnsTopicPolicyException"}, {"shape":"InsufficientEncryptionPolicyException"}, {"shape":"TrailNotFoundException"}, {"shape":"InvalidS3BucketNameException"}, {"shape":"InvalidS3PrefixException"}, {"shape":"InvalidSnsTopicNameException"}, {"shape":"InvalidKmsKeyIdException"}, {"shape":"InvalidTrailNameException"}, {"shape":"TrailNotProvidedException"}, {"shape":"InvalidParameterCombinationException"}, {"shape":"InvalidHomeRegionException"}, {"shape":"KmsKeyNotFoundException"}, {"shape":"KmsKeyDisabledException"}, {"shape":"KmsException"}, {"shape":"InvalidCloudWatchLogsLogGroupArnException"}, {"shape":"InvalidCloudWatchLogsRoleArnException"}, {"shape":"CloudWatchLogsDeliveryUnavailableException"}, {"shape":"UnsupportedOperationException"}, {"shape":"OperationNotPermittedException"} ], "idempotent":true } }, "shapes":{ "AddTagsRequest":{ "type":"structure", "required":["ResourceId"], "members":{ "ResourceId":{"shape":"String"}, "TagsList":{"shape":"TagsList"} } }, "AddTagsResponse":{ "type":"structure", "members":{ } }, "Boolean":{"type":"boolean"}, "ByteBuffer":{"type":"blob"}, "CloudTrailARNInvalidException":{ "type":"structure", "members":{ }, "exception":true }, "CloudWatchLogsDeliveryUnavailableException":{ "type":"structure", "members":{ }, "exception":true }, "CreateTrailRequest":{ "type":"structure", "required":[ "Name", "S3BucketName" ], "members":{ "Name":{"shape":"String"}, "S3BucketName":{"shape":"String"}, "S3KeyPrefix":{"shape":"String"}, "SnsTopicName":{"shape":"String"}, "IncludeGlobalServiceEvents":{"shape":"Boolean"}, "IsMultiRegionTrail":{"shape":"Boolean"}, "EnableLogFileValidation":{"shape":"Boolean"}, "CloudWatchLogsLogGroupArn":{"shape":"String"}, "CloudWatchLogsRoleArn":{"shape":"String"}, "KmsKeyId":{"shape":"String"} } }, "CreateTrailResponse":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "S3BucketName":{"shape":"String"}, "S3KeyPrefix":{"shape":"String"}, "SnsTopicName":{ "shape":"String", "deprecated":true }, "SnsTopicARN":{"shape":"String"}, "IncludeGlobalServiceEvents":{"shape":"Boolean"}, "IsMultiRegionTrail":{"shape":"Boolean"}, "TrailARN":{"shape":"String"}, "LogFileValidationEnabled":{"shape":"Boolean"}, "CloudWatchLogsLogGroupArn":{"shape":"String"}, "CloudWatchLogsRoleArn":{"shape":"String"}, "KmsKeyId":{"shape":"String"} } }, "Date":{"type":"timestamp"}, "DeleteTrailRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"String"} } }, "DeleteTrailResponse":{ "type":"structure", "members":{ } }, "DescribeTrailsRequest":{ "type":"structure", "members":{ "trailNameList":{"shape":"TrailNameList"}, "includeShadowTrails":{"shape":"Boolean"} } }, "DescribeTrailsResponse":{ "type":"structure", "members":{ "trailList":{"shape":"TrailList"} } }, "Event":{ "type":"structure", "members":{ "EventId":{"shape":"String"}, "EventName":{"shape":"String"}, "EventTime":{"shape":"Date"}, "Username":{"shape":"String"}, "Resources":{"shape":"ResourceList"}, "CloudTrailEvent":{"shape":"String"} } }, "EventsList":{ "type":"list", "member":{"shape":"Event"} }, "GetTrailStatusRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"String"} } }, "GetTrailStatusResponse":{ "type":"structure", "members":{ "IsLogging":{"shape":"Boolean"}, "LatestDeliveryError":{"shape":"String"}, "LatestNotificationError":{"shape":"String"}, "LatestDeliveryTime":{"shape":"Date"}, "LatestNotificationTime":{"shape":"Date"}, "StartLoggingTime":{"shape":"Date"}, "StopLoggingTime":{"shape":"Date"}, "LatestCloudWatchLogsDeliveryError":{"shape":"String"}, "LatestCloudWatchLogsDeliveryTime":{"shape":"Date"}, "LatestDigestDeliveryTime":{"shape":"Date"}, "LatestDigestDeliveryError":{"shape":"String"}, "LatestDeliveryAttemptTime":{"shape":"String"}, "LatestNotificationAttemptTime":{"shape":"String"}, "LatestNotificationAttemptSucceeded":{"shape":"String"}, "LatestDeliveryAttemptSucceeded":{"shape":"String"}, "TimeLoggingStarted":{"shape":"String"}, "TimeLoggingStopped":{"shape":"String"} } }, "InsufficientEncryptionPolicyException":{ "type":"structure", "members":{ }, "exception":true }, "InsufficientS3BucketPolicyException":{ "type":"structure", "members":{ }, "exception":true }, "InsufficientSnsTopicPolicyException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidCloudWatchLogsLogGroupArnException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidCloudWatchLogsRoleArnException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidHomeRegionException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidKmsKeyIdException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidLookupAttributesException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidMaxResultsException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidNextTokenException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidParameterCombinationException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidS3BucketNameException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidS3PrefixException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidSnsTopicNameException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidTagParameterException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidTimeRangeException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidTokenException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidTrailNameException":{ "type":"structure", "members":{ }, "exception":true }, "KmsException":{ "type":"structure", "members":{ }, "exception":true }, "KmsKeyDisabledException":{ "type":"structure", "members":{ }, "deprecated":true, "exception":true }, "KmsKeyNotFoundException":{ "type":"structure", "members":{ }, "exception":true }, "ListPublicKeysRequest":{ "type":"structure", "members":{ "StartTime":{"shape":"Date"}, "EndTime":{"shape":"Date"}, "NextToken":{"shape":"String"} } }, "ListPublicKeysResponse":{ "type":"structure", "members":{ "PublicKeyList":{"shape":"PublicKeyList"}, "NextToken":{"shape":"String"} } }, "ListTagsRequest":{ "type":"structure", "required":["ResourceIdList"], "members":{ "ResourceIdList":{"shape":"ResourceIdList"}, "NextToken":{"shape":"String"} } }, "ListTagsResponse":{ "type":"structure", "members":{ "ResourceTagList":{"shape":"ResourceTagList"}, "NextToken":{"shape":"String"} } }, "LookupAttribute":{ "type":"structure", "required":[ "AttributeKey", "AttributeValue" ], "members":{ "AttributeKey":{"shape":"LookupAttributeKey"}, "AttributeValue":{"shape":"String"} } }, "LookupAttributeKey":{ "type":"string", "enum":[ "EventId", "EventName", "Username", "ResourceType", "ResourceName" ] }, "LookupAttributesList":{ "type":"list", "member":{"shape":"LookupAttribute"} }, "LookupEventsRequest":{ "type":"structure", "members":{ "LookupAttributes":{"shape":"LookupAttributesList"}, "StartTime":{"shape":"Date"}, "EndTime":{"shape":"Date"}, "MaxResults":{"shape":"MaxResults"}, "NextToken":{"shape":"NextToken"} } }, "LookupEventsResponse":{ "type":"structure", "members":{ "Events":{"shape":"EventsList"}, "NextToken":{"shape":"NextToken"} } }, "MaxResults":{ "type":"integer", "max":50, "min":1 }, "MaximumNumberOfTrailsExceededException":{ "type":"structure", "members":{ }, "exception":true }, "NextToken":{"type":"string"}, "OperationNotPermittedException":{ "type":"structure", "members":{ }, "exception":true }, "PublicKey":{ "type":"structure", "members":{ "Value":{"shape":"ByteBuffer"}, "ValidityStartTime":{"shape":"Date"}, "ValidityEndTime":{"shape":"Date"}, "Fingerprint":{"shape":"String"} } }, "PublicKeyList":{ "type":"list", "member":{"shape":"PublicKey"} }, "RemoveTagsRequest":{ "type":"structure", "required":["ResourceId"], "members":{ "ResourceId":{"shape":"String"}, "TagsList":{"shape":"TagsList"} } }, "RemoveTagsResponse":{ "type":"structure", "members":{ } }, "Resource":{ "type":"structure", "members":{ "ResourceType":{"shape":"String"}, "ResourceName":{"shape":"String"} } }, "ResourceIdList":{ "type":"list", "member":{"shape":"String"} }, "ResourceList":{ "type":"list", "member":{"shape":"Resource"} }, "ResourceNotFoundException":{ "type":"structure", "members":{ }, "exception":true }, "ResourceTag":{ "type":"structure", "members":{ "ResourceId":{"shape":"String"}, "TagsList":{"shape":"TagsList"} } }, "ResourceTagList":{ "type":"list", "member":{"shape":"ResourceTag"} }, "ResourceTypeNotSupportedException":{ "type":"structure", "members":{ }, "exception":true }, "S3BucketDoesNotExistException":{ "type":"structure", "members":{ }, "exception":true }, "StartLoggingRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"String"} } }, "StartLoggingResponse":{ "type":"structure", "members":{ } }, "StopLoggingRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"String"} } }, "StopLoggingResponse":{ "type":"structure", "members":{ } }, "String":{"type":"string"}, "Tag":{ "type":"structure", "required":["Key"], "members":{ "Key":{"shape":"String"}, "Value":{"shape":"String"} } }, "TagsLimitExceededException":{ "type":"structure", "members":{ }, "exception":true }, "TagsList":{ "type":"list", "member":{"shape":"Tag"} }, "Trail":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "S3BucketName":{"shape":"String"}, "S3KeyPrefix":{"shape":"String"}, "SnsTopicName":{ "shape":"String", "deprecated":true }, "SnsTopicARN":{"shape":"String"}, "IncludeGlobalServiceEvents":{"shape":"Boolean"}, "IsMultiRegionTrail":{"shape":"Boolean"}, "HomeRegion":{"shape":"String"}, "TrailARN":{"shape":"String"}, "LogFileValidationEnabled":{"shape":"Boolean"}, "CloudWatchLogsLogGroupArn":{"shape":"String"}, "CloudWatchLogsRoleArn":{"shape":"String"}, "KmsKeyId":{"shape":"String"} } }, "TrailAlreadyExistsException":{ "type":"structure", "members":{ }, "exception":true }, "TrailList":{ "type":"list", "member":{"shape":"Trail"} }, "TrailNameList":{ "type":"list", "member":{"shape":"String"} }, "TrailNotFoundException":{ "type":"structure", "members":{ }, "exception":true }, "TrailNotProvidedException":{ "type":"structure", "members":{ }, "exception":true }, "UnsupportedOperationException":{ "type":"structure", "members":{ }, "exception":true }, "UpdateTrailRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"String"}, "S3BucketName":{"shape":"String"}, "S3KeyPrefix":{"shape":"String"}, "SnsTopicName":{"shape":"String"}, "IncludeGlobalServiceEvents":{"shape":"Boolean"}, "IsMultiRegionTrail":{"shape":"Boolean"}, "EnableLogFileValidation":{"shape":"Boolean"}, "CloudWatchLogsLogGroupArn":{"shape":"String"}, "CloudWatchLogsRoleArn":{"shape":"String"}, "KmsKeyId":{"shape":"String"} } }, "UpdateTrailResponse":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "S3BucketName":{"shape":"String"}, "S3KeyPrefix":{"shape":"String"}, "SnsTopicName":{ "shape":"String", "deprecated":true }, "SnsTopicARN":{"shape":"String"}, "IncludeGlobalServiceEvents":{"shape":"Boolean"}, "IsMultiRegionTrail":{"shape":"Boolean"}, "TrailARN":{"shape":"String"}, "LogFileValidationEnabled":{"shape":"Boolean"}, "CloudWatchLogsLogGroupArn":{"shape":"String"}, "CloudWatchLogsRoleArn":{"shape":"String"}, "KmsKeyId":{"shape":"String"} } } } } aws-sdk-go-1.4.22/models/apis/cloudtrail/2013-11-01/docs-2.json000066400000000000000000001270431300374646400231570ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS CloudTrail

        This is the CloudTrail API Reference. It provides descriptions of actions, data types, common parameters, and common errors for CloudTrail.

        CloudTrail is a web service that records AWS API calls for your AWS account and delivers log files to an Amazon S3 bucket. The recorded information includes the identity of the user, the start time of the AWS API call, the source IP address, the request parameters, and the response elements returned by the service.

        As an alternative to the API, you can use one of the AWS SDKs, which consist of libraries and sample code for various programming languages and platforms (Java, Ruby, .NET, iOS, Android, etc.). The SDKs provide a convenient way to create programmatic access to AWSCloudTrail. For example, the SDKs take care of cryptographically signing requests, managing errors, and retrying requests automatically. For information about the AWS SDKs, including how to download and install them, see the Tools for Amazon Web Services page.

        See the CloudTrail User Guide for information about the data that is included with each AWS API call listed in the log files.

        ", "operations": { "AddTags": "

        Adds one or more tags to a trail, up to a limit of 10. Tags must be unique per trail. Overwrites an existing tag's value when a new value is specified for an existing tag key. If you specify a key without a value, the tag will be created with the specified key and a value of null. You can tag a trail that applies to all regions only from the region in which the trail was created (that is, from its home region).

        ", "CreateTrail": "

        Creates a trail that specifies the settings for delivery of log data to an Amazon S3 bucket. A maximum of five trails can exist in a region, irrespective of the region in which they were created.

        ", "DeleteTrail": "

        Deletes a trail. This operation must be called from the region in which the trail was created. DeleteTrail cannot be called on the shadow trails (replicated trails in other regions) of a trail that is enabled in all regions.

        ", "DescribeTrails": "

        Retrieves settings for the trail associated with the current region for your account.

        ", "GetTrailStatus": "

        Returns a JSON-formatted list of information about the specified trail. Fields include information on delivery errors, Amazon SNS and Amazon S3 errors, and start and stop logging times for each trail. This operation returns trail status from a single region. To return trail status from all regions, you must call the operation on each region.

        ", "ListPublicKeys": "

        Returns all public keys whose private keys were used to sign the digest files within the specified time range. The public key is needed to validate digest files that were signed with its corresponding private key.

        CloudTrail uses different private/public key pairs per region. Each digest file is signed with a private key unique to its region. Therefore, when you validate a digest file from a particular region, you must look in the same region for its corresponding public key.

        ", "ListTags": "

        Lists the tags for the trail in the current region.

        ", "LookupEvents": "

        Looks up API activity events captured by CloudTrail that create, update, or delete resources in your account. Events for a region can be looked up for the times in which you had CloudTrail turned on in that region during the last seven days. Lookup supports five different attributes: time range (defined by a start time and end time), user name, event name, resource type, and resource name. All attributes are optional. The maximum number of attributes that can be specified in any one lookup request are time range and one other attribute. The default number of results returned is 10, with a maximum of 50 possible. The response includes a token that you can use to get the next page of results.

        The rate of lookup requests is limited to one per second per account. If this limit is exceeded, a throttling error occurs.

        Events that occurred during the selected time range will not be available for lookup if CloudTrail logging was not enabled when the events occurred.

        ", "RemoveTags": "

        Removes the specified tags from a trail.

        ", "StartLogging": "

        Starts the recording of AWS API calls and log file delivery for a trail. For a trail that is enabled in all regions, this operation must be called from the region in which the trail was created. This operation cannot be called on the shadow trails (replicated trails in other regions) of a trail that is enabled in all regions.

        ", "StopLogging": "

        Suspends the recording of AWS API calls and log file delivery for the specified trail. Under most circumstances, there is no need to use this action. You can update a trail without stopping it first. This action is the only way to stop recording. For a trail enabled in all regions, this operation must be called from the region in which the trail was created, or an InvalidHomeRegionException will occur. This operation cannot be called on the shadow trails (replicated trails in other regions) of a trail enabled in all regions.

        ", "UpdateTrail": "

        Updates the settings that specify delivery of log files. Changes to a trail do not require stopping the CloudTrail service. Use this action to designate an existing bucket for log delivery. If the existing bucket has previously been a target for CloudTrail log files, an IAM policy exists for the bucket. UpdateTrail must be called from the region in which the trail was created; otherwise, an InvalidHomeRegionException is thrown.

        " }, "shapes": { "AddTagsRequest": { "base": "

        Specifies the tags to add to a trail.

        ", "refs": { } }, "AddTagsResponse": { "base": "

        Returns the objects or data listed below if successful. Otherwise, returns an error.

        ", "refs": { } }, "Boolean": { "base": null, "refs": { "CreateTrailRequest$IncludeGlobalServiceEvents": "

        Specifies whether the trail is publishing events from global services such as IAM to the log files.

        ", "CreateTrailRequest$IsMultiRegionTrail": "

        Specifies whether the trail is created in the current region or in all regions. The default is false.

        ", "CreateTrailRequest$EnableLogFileValidation": "

        Specifies whether log file integrity validation is enabled. The default is false.

        When you disable log file integrity validation, the chain of digest files is broken after one hour. CloudTrail will not create digest files for log files that were delivered during a period in which log file integrity validation was disabled. For example, if you enable log file integrity validation at noon on January 1, disable it at noon on January 2, and re-enable it at noon on January 10, digest files will not be created for the log files delivered from noon on January 2 to noon on January 10. The same applies whenever you stop CloudTrail logging or delete a trail.

        ", "CreateTrailResponse$IncludeGlobalServiceEvents": "

        Specifies whether the trail is publishing events from global services such as IAM to the log files.

        ", "CreateTrailResponse$IsMultiRegionTrail": "

        Specifies whether the trail exists in one region or in all regions.

        ", "CreateTrailResponse$LogFileValidationEnabled": "

        Specifies whether log file integrity validation is enabled.

        ", "DescribeTrailsRequest$includeShadowTrails": "

        Specifies whether to include shadow trails in the response. A shadow trail is the replication in a region of a trail that was created in a different region. The default is true.

        ", "GetTrailStatusResponse$IsLogging": "

        Whether the CloudTrail is currently logging AWS API calls.

        ", "Trail$IncludeGlobalServiceEvents": "

        Set to True to include AWS API calls from AWS global services such as IAM. Otherwise, False.

        ", "Trail$IsMultiRegionTrail": "

        Specifies whether the trail belongs only to one region or exists in all regions.

        ", "Trail$LogFileValidationEnabled": "

        Specifies whether log file validation is enabled.

        ", "UpdateTrailRequest$IncludeGlobalServiceEvents": "

        Specifies whether the trail is publishing events from global services such as IAM to the log files.

        ", "UpdateTrailRequest$IsMultiRegionTrail": "

        Specifies whether the trail applies only to the current region or to all regions. The default is false. If the trail exists only in the current region and this value is set to true, shadow trails (replications of the trail) will be created in the other regions. If the trail exists in all regions and this value is set to false, the trail will remain in the region where it was created, and its shadow trails in other regions will be deleted.

        ", "UpdateTrailRequest$EnableLogFileValidation": "

        Specifies whether log file validation is enabled. The default is false.

        When you disable log file integrity validation, the chain of digest files is broken after one hour. CloudTrail will not create digest files for log files that were delivered during a period in which log file integrity validation was disabled. For example, if you enable log file integrity validation at noon on January 1, disable it at noon on January 2, and re-enable it at noon on January 10, digest files will not be created for the log files delivered from noon on January 2 to noon on January 10. The same applies whenever you stop CloudTrail logging or delete a trail.

        ", "UpdateTrailResponse$IncludeGlobalServiceEvents": "

        Specifies whether the trail is publishing events from global services such as IAM to the log files.

        ", "UpdateTrailResponse$IsMultiRegionTrail": "

        Specifies whether the trail exists in one region or in all regions.

        ", "UpdateTrailResponse$LogFileValidationEnabled": "

        Specifies whether log file integrity validation is enabled.

        " } }, "ByteBuffer": { "base": null, "refs": { "PublicKey$Value": "

        The DER encoded public key value in PKCS#1 format.

        " } }, "CloudTrailARNInvalidException": { "base": "

        This exception is thrown when an operation is called with an invalid trail ARN. The format of a trail ARN is:

        arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail

        ", "refs": { } }, "CloudWatchLogsDeliveryUnavailableException": { "base": "

        Cannot set a CloudWatch Logs delivery for this region.

        ", "refs": { } }, "CreateTrailRequest": { "base": "

        Specifies the settings for each trail.

        ", "refs": { } }, "CreateTrailResponse": { "base": "

        Returns the objects or data listed below if successful. Otherwise, returns an error.

        ", "refs": { } }, "Date": { "base": null, "refs": { "Event$EventTime": "

        The date and time of the event returned.

        ", "GetTrailStatusResponse$LatestDeliveryTime": "

        Specifies the date and time that CloudTrail last delivered log files to an account's Amazon S3 bucket.

        ", "GetTrailStatusResponse$LatestNotificationTime": "

        Specifies the date and time of the most recent Amazon SNS notification that CloudTrail has written a new log file to an account's Amazon S3 bucket.

        ", "GetTrailStatusResponse$StartLoggingTime": "

        Specifies the most recent date and time when CloudTrail started recording API calls for an AWS account.

        ", "GetTrailStatusResponse$StopLoggingTime": "

        Specifies the most recent date and time when CloudTrail stopped recording API calls for an AWS account.

        ", "GetTrailStatusResponse$LatestCloudWatchLogsDeliveryTime": "

        Displays the most recent date and time when CloudTrail delivered logs to CloudWatch Logs.

        ", "GetTrailStatusResponse$LatestDigestDeliveryTime": "

        Specifies the date and time that CloudTrail last delivered a digest file to an account's Amazon S3 bucket.

        ", "ListPublicKeysRequest$StartTime": "

        Optionally specifies, in UTC, the start of the time range to look up public keys for CloudTrail digest files. If not specified, the current time is used, and the current public key is returned.

        ", "ListPublicKeysRequest$EndTime": "

        Optionally specifies, in UTC, the end of the time range to look up public keys for CloudTrail digest files. If not specified, the current time is used.

        ", "LookupEventsRequest$StartTime": "

        Specifies that only events that occur after or at the specified time are returned. If the specified start time is after the specified end time, an error is returned.

        ", "LookupEventsRequest$EndTime": "

        Specifies that only events that occur before or at the specified time are returned. If the specified end time is before the specified start time, an error is returned.

        ", "PublicKey$ValidityStartTime": "

        The starting time of validity of the public key.

        ", "PublicKey$ValidityEndTime": "

        The ending time of validity of the public key.

        " } }, "DeleteTrailRequest": { "base": "

        The request that specifies the name of a trail to delete.

        ", "refs": { } }, "DeleteTrailResponse": { "base": "

        Returns the objects or data listed below if successful. Otherwise, returns an error.

        ", "refs": { } }, "DescribeTrailsRequest": { "base": "

        Returns information about the trail.

        ", "refs": { } }, "DescribeTrailsResponse": { "base": "

        Returns the objects or data listed below if successful. Otherwise, returns an error.

        ", "refs": { } }, "Event": { "base": "

        Contains information about an event that was returned by a lookup request. The result includes a representation of a CloudTrail event.

        ", "refs": { "EventsList$member": null } }, "EventsList": { "base": null, "refs": { "LookupEventsResponse$Events": "

        A list of events returned based on the lookup attributes specified and the CloudTrail event. The events list is sorted by time. The most recent event is listed first.

        " } }, "GetTrailStatusRequest": { "base": "

        The name of a trail about which you want the current status.

        ", "refs": { } }, "GetTrailStatusResponse": { "base": "

        Returns the objects or data listed below if successful. Otherwise, returns an error.

        ", "refs": { } }, "InsufficientEncryptionPolicyException": { "base": "

        This exception is thrown when the policy on the S3 bucket or KMS key is not sufficient.

        ", "refs": { } }, "InsufficientS3BucketPolicyException": { "base": "

        This exception is thrown when the policy on the S3 bucket is not sufficient.

        ", "refs": { } }, "InsufficientSnsTopicPolicyException": { "base": "

        This exception is thrown when the policy on the SNS topic is not sufficient.

        ", "refs": { } }, "InvalidCloudWatchLogsLogGroupArnException": { "base": "

        This exception is thrown when the provided CloudWatch log group is not valid.

        ", "refs": { } }, "InvalidCloudWatchLogsRoleArnException": { "base": "

        This exception is thrown when the provided role is not valid.

        ", "refs": { } }, "InvalidHomeRegionException": { "base": "

        This exception is thrown when an operation is called on a trail from a region other than the region in which the trail was created.

        ", "refs": { } }, "InvalidKmsKeyIdException": { "base": "

        This exception is thrown when the KMS key ARN is invalid.

        ", "refs": { } }, "InvalidLookupAttributesException": { "base": "

        Occurs when an invalid lookup attribute is specified.

        ", "refs": { } }, "InvalidMaxResultsException": { "base": "

        This exception is thrown if the limit specified is invalid.

        ", "refs": { } }, "InvalidNextTokenException": { "base": "

        Invalid token or token that was previously used in a request with different parameters. This exception is thrown if the token is invalid.

        ", "refs": { } }, "InvalidParameterCombinationException": { "base": "

        This exception is thrown when the combination of parameters provided is not valid.

        ", "refs": { } }, "InvalidS3BucketNameException": { "base": "

        This exception is thrown when the provided S3 bucket name is not valid.

        ", "refs": { } }, "InvalidS3PrefixException": { "base": "

        This exception is thrown when the provided S3 prefix is not valid.

        ", "refs": { } }, "InvalidSnsTopicNameException": { "base": "

        This exception is thrown when the provided SNS topic name is not valid.

        ", "refs": { } }, "InvalidTagParameterException": { "base": "

        This exception is thrown when the key or value specified for the tag does not match the regular expression ^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:/=+\\\\-@]*)$.

        ", "refs": { } }, "InvalidTimeRangeException": { "base": "

        Occurs if the timestamp values are invalid. Either the start time occurs after the end time or the time range is outside the range of possible values.

        ", "refs": { } }, "InvalidTokenException": { "base": "

        Reserved for future use.

        ", "refs": { } }, "InvalidTrailNameException": { "base": "

        This exception is thrown when the provided trail name is not valid. Trail names must meet the following requirements:

        • Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores (_), or dashes (-)

        • Start with a letter or number, and end with a letter or number

        • Be between 3 and 128 characters

        • Have no adjacent periods, underscores or dashes. Names like my-_namespace and my--namespace are invalid.

        • Not be in IP address format (for example, 192.168.5.4)

        ", "refs": { } }, "KmsException": { "base": "

        This exception is thrown when there is an issue with the specified KMS key and the trail can’t be updated.

        ", "refs": { } }, "KmsKeyDisabledException": { "base": "

        This exception is deprecated.

        ", "refs": { } }, "KmsKeyNotFoundException": { "base": "

        This exception is thrown when the KMS key does not exist, or when the S3 bucket and the KMS key are not in the same region.

        ", "refs": { } }, "ListPublicKeysRequest": { "base": "

        Requests the public keys for a specified time range.

        ", "refs": { } }, "ListPublicKeysResponse": { "base": "

        Returns the objects or data listed below if successful. Otherwise, returns an error.

        ", "refs": { } }, "ListTagsRequest": { "base": "

        Specifies a list of trail tags to return.

        ", "refs": { } }, "ListTagsResponse": { "base": "

        Returns the objects or data listed below if successful. Otherwise, returns an error.

        ", "refs": { } }, "LookupAttribute": { "base": "

        Specifies an attribute and value that filter the events returned.

        ", "refs": { "LookupAttributesList$member": null } }, "LookupAttributeKey": { "base": null, "refs": { "LookupAttribute$AttributeKey": "

        Specifies an attribute on which to filter the events returned.

        " } }, "LookupAttributesList": { "base": null, "refs": { "LookupEventsRequest$LookupAttributes": "

        Contains a list of lookup attributes. Currently the list can contain only one item.

        " } }, "LookupEventsRequest": { "base": "

        Contains a request for LookupEvents.

        ", "refs": { } }, "LookupEventsResponse": { "base": "

        Contains a response to a LookupEvents action.

        ", "refs": { } }, "MaxResults": { "base": null, "refs": { "LookupEventsRequest$MaxResults": "

        The number of events to return. Possible values are 1 through 50. The default is 10.

        " } }, "MaximumNumberOfTrailsExceededException": { "base": "

        This exception is thrown when the maximum number of trails is reached.

        ", "refs": { } }, "NextToken": { "base": null, "refs": { "LookupEventsRequest$NextToken": "

        The token to use to get the next page of results after a previous API call. This token must be passed in with the same parameters that were specified in the the original call. For example, if the original call specified an AttributeKey of 'Username' with a value of 'root', the call with NextToken should include those same parameters.

        ", "LookupEventsResponse$NextToken": "

        The token to use to get the next page of results after a previous API call. If the token does not appear, there are no more results to return. The token must be passed in with the same parameters as the previous call. For example, if the original call specified an AttributeKey of 'Username' with a value of 'root', the call with NextToken should include those same parameters.

        " } }, "OperationNotPermittedException": { "base": "

        This exception is thrown when the requested operation is not permitted.

        ", "refs": { } }, "PublicKey": { "base": "

        Contains information about a returned public key.

        ", "refs": { "PublicKeyList$member": null } }, "PublicKeyList": { "base": null, "refs": { "ListPublicKeysResponse$PublicKeyList": "

        Contains an array of PublicKey objects.

        The returned public keys may have validity time ranges that overlap.

        " } }, "RemoveTagsRequest": { "base": "

        Specifies the tags to remove from a trail.

        ", "refs": { } }, "RemoveTagsResponse": { "base": "

        Returns the objects or data listed below if successful. Otherwise, returns an error.

        ", "refs": { } }, "Resource": { "base": "

        Specifies the type and name of a resource referenced by an event.

        ", "refs": { "ResourceList$member": null } }, "ResourceIdList": { "base": null, "refs": { "ListTagsRequest$ResourceIdList": "

        Specifies a list of trail ARNs whose tags will be listed. The list has a limit of 20 ARNs. The format of a trail ARN is:

        arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail

        " } }, "ResourceList": { "base": "

        A list of resources referenced by the event returned.

        ", "refs": { "Event$Resources": "

        A list of resources referenced by the event returned.

        " } }, "ResourceNotFoundException": { "base": "

        This exception is thrown when the specified resource is not found.

        ", "refs": { } }, "ResourceTag": { "base": "

        A resource tag.

        ", "refs": { "ResourceTagList$member": null } }, "ResourceTagList": { "base": "

        A list of resource tags.

        ", "refs": { "ListTagsResponse$ResourceTagList": null } }, "ResourceTypeNotSupportedException": { "base": "

        This exception is thrown when the specified resource type is not supported by CloudTrail.

        ", "refs": { } }, "S3BucketDoesNotExistException": { "base": "

        This exception is thrown when the specified S3 bucket does not exist.

        ", "refs": { } }, "StartLoggingRequest": { "base": "

        The request to CloudTrail to start logging AWS API calls for an account.

        ", "refs": { } }, "StartLoggingResponse": { "base": "

        Returns the objects or data listed below if successful. Otherwise, returns an error.

        ", "refs": { } }, "StopLoggingRequest": { "base": "

        Passes the request to CloudTrail to stop logging AWS API calls for the specified account.

        ", "refs": { } }, "StopLoggingResponse": { "base": "

        Returns the objects or data listed below if successful. Otherwise, returns an error.

        ", "refs": { } }, "String": { "base": null, "refs": { "AddTagsRequest$ResourceId": "

        Specifies the ARN of the trail to which one or more tags will be added. The format of a trail ARN is:

        arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail

        ", "CreateTrailRequest$Name": "

        Specifies the name of the trail. The name must meet the following requirements:

        • Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores (_), or dashes (-)

        • Start with a letter or number, and end with a letter or number

        • Be between 3 and 128 characters

        • Have no adjacent periods, underscores or dashes. Names like my-_namespace and my--namespace are invalid.

        • Not be in IP address format (for example, 192.168.5.4)

        ", "CreateTrailRequest$S3BucketName": "

        Specifies the name of the Amazon S3 bucket designated for publishing log files. See Amazon S3 Bucket Naming Requirements.

        ", "CreateTrailRequest$S3KeyPrefix": "

        Specifies the Amazon S3 key prefix that comes after the name of the bucket you have designated for log file delivery. For more information, see Finding Your CloudTrail Log Files. The maximum length is 200 characters.

        ", "CreateTrailRequest$SnsTopicName": "

        Specifies the name of the Amazon SNS topic defined for notification of log file delivery. The maximum length is 256 characters.

        ", "CreateTrailRequest$CloudWatchLogsLogGroupArn": "

        Specifies a log group name using an Amazon Resource Name (ARN), a unique identifier that represents the log group to which CloudTrail logs will be delivered. Not required unless you specify CloudWatchLogsRoleArn.

        ", "CreateTrailRequest$CloudWatchLogsRoleArn": "

        Specifies the role for the CloudWatch Logs endpoint to assume to write to a user's log group.

        ", "CreateTrailRequest$KmsKeyId": "

        Specifies the KMS key ID to use to encrypt the logs delivered by CloudTrail. The value can be a an alias name prefixed by \"alias/\", a fully specified ARN to an alias, a fully specified ARN to a key, or a globally unique identifier.

        Examples:

        • alias/MyAliasName

        • arn:aws:kms:us-east-1:123456789012:alias/MyAliasName

        • arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        • 12345678-1234-1234-1234-123456789012

        ", "CreateTrailResponse$Name": "

        Specifies the name of the trail.

        ", "CreateTrailResponse$S3BucketName": "

        Specifies the name of the Amazon S3 bucket designated for publishing log files.

        ", "CreateTrailResponse$S3KeyPrefix": "

        Specifies the Amazon S3 key prefix that comes after the name of the bucket you have designated for log file delivery. For more information, see Finding Your CloudTrail Log Files.

        ", "CreateTrailResponse$SnsTopicName": "

        This field is deprecated. Use SnsTopicARN.

        ", "CreateTrailResponse$SnsTopicARN": "

        Specifies the ARN of the Amazon SNS topic that CloudTrail uses to send notifications when log files are delivered. The format of a topic ARN is:

        arn:aws:sns:us-east-1:123456789012:MyTopic

        ", "CreateTrailResponse$TrailARN": "

        Specifies the ARN of the trail that was created. The format of a trail ARN is:

        arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail

        ", "CreateTrailResponse$CloudWatchLogsLogGroupArn": "

        Specifies the Amazon Resource Name (ARN) of the log group to which CloudTrail logs will be delivered.

        ", "CreateTrailResponse$CloudWatchLogsRoleArn": "

        Specifies the role for the CloudWatch Logs endpoint to assume to write to a user's log group.

        ", "CreateTrailResponse$KmsKeyId": "

        Specifies the KMS key ID that encrypts the logs delivered by CloudTrail. The value is a fully specified ARN to a KMS key in the format:

        arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        ", "DeleteTrailRequest$Name": "

        Specifies the name or the CloudTrail ARN of the trail to be deleted. The format of a trail ARN is:

        arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail

        ", "Event$EventId": "

        The CloudTrail ID of the event returned.

        ", "Event$EventName": "

        The name of the event returned.

        ", "Event$Username": "

        A user name or role name of the requester that called the API in the event returned.

        ", "Event$CloudTrailEvent": "

        A JSON string that contains a representation of the event returned.

        ", "GetTrailStatusRequest$Name": "

        Specifies the name or the CloudTrail ARN of the trail for which you are requesting status. To get the status of a shadow trail (a replication of the trail in another region), you must specify its ARN. The format of a trail ARN is:

        arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail

        ", "GetTrailStatusResponse$LatestDeliveryError": "

        Displays any Amazon S3 error that CloudTrail encountered when attempting to deliver log files to the designated bucket. For more information see the topic Error Responses in the Amazon S3 API Reference.

        This error occurs only when there is a problem with the destination S3 bucket and will not occur for timeouts. To resolve the issue, create a new bucket and call UpdateTrail to specify the new bucket, or fix the existing objects so that CloudTrail can again write to the bucket.

        ", "GetTrailStatusResponse$LatestNotificationError": "

        Displays any Amazon SNS error that CloudTrail encountered when attempting to send a notification. For more information about Amazon SNS errors, see the Amazon SNS Developer Guide.

        ", "GetTrailStatusResponse$LatestCloudWatchLogsDeliveryError": "

        Displays any CloudWatch Logs error that CloudTrail encountered when attempting to deliver logs to CloudWatch Logs.

        ", "GetTrailStatusResponse$LatestDigestDeliveryError": "

        Displays any Amazon S3 error that CloudTrail encountered when attempting to deliver a digest file to the designated bucket. For more information see the topic Error Responses in the Amazon S3 API Reference.

        This error occurs only when there is a problem with the destination S3 bucket and will not occur for timeouts. To resolve the issue, create a new bucket and call UpdateTrail to specify the new bucket, or fix the existing objects so that CloudTrail can again write to the bucket.

        ", "GetTrailStatusResponse$LatestDeliveryAttemptTime": "

        This field is deprecated.

        ", "GetTrailStatusResponse$LatestNotificationAttemptTime": "

        This field is deprecated.

        ", "GetTrailStatusResponse$LatestNotificationAttemptSucceeded": "

        This field is deprecated.

        ", "GetTrailStatusResponse$LatestDeliveryAttemptSucceeded": "

        This field is deprecated.

        ", "GetTrailStatusResponse$TimeLoggingStarted": "

        This field is deprecated.

        ", "GetTrailStatusResponse$TimeLoggingStopped": "

        This field is deprecated.

        ", "ListPublicKeysRequest$NextToken": "

        Reserved for future use.

        ", "ListPublicKeysResponse$NextToken": "

        Reserved for future use.

        ", "ListTagsRequest$NextToken": "

        Reserved for future use.

        ", "ListTagsResponse$NextToken": "

        Reserved for future use.

        ", "LookupAttribute$AttributeValue": "

        Specifies a value for the specified AttributeKey.

        ", "PublicKey$Fingerprint": "

        The fingerprint of the public key.

        ", "RemoveTagsRequest$ResourceId": "

        Specifies the ARN of the trail from which tags should be removed. The format of a trail ARN is:

        arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail

        ", "Resource$ResourceType": "

        The type of a resource referenced by the event returned. When the resource type cannot be determined, null is returned. Some examples of resource types are: Instance for EC2, Trail for CloudTrail, DBInstance for RDS, and AccessKey for IAM. For a list of resource types supported for event lookup, see Resource Types Supported for Event Lookup.

        ", "Resource$ResourceName": "

        The name of the resource referenced by the event returned. These are user-created names whose values will depend on the environment. For example, the resource name might be \"auto-scaling-test-group\" for an Auto Scaling Group or \"i-1234567\" for an EC2 Instance.

        ", "ResourceIdList$member": null, "ResourceTag$ResourceId": "

        Specifies the ARN of the resource.

        ", "StartLoggingRequest$Name": "

        Specifies the name or the CloudTrail ARN of the trail for which CloudTrail logs AWS API calls. The format of a trail ARN is:

        arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail

        ", "StopLoggingRequest$Name": "

        Specifies the name or the CloudTrail ARN of the trail for which CloudTrail will stop logging AWS API calls. The format of a trail ARN is:

        arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail

        ", "Tag$Key": "

        The key in a key-value pair. The key must be must be no longer than 128 Unicode characters. The key must be unique for the resource to which it applies.

        ", "Tag$Value": "

        The value in a key-value pair of a tag. The value must be no longer than 256 Unicode characters.

        ", "Trail$Name": "

        Name of the trail set by calling CreateTrail. The maximum length is 128 characters.

        ", "Trail$S3BucketName": "

        Name of the Amazon S3 bucket into which CloudTrail delivers your trail files. See Amazon S3 Bucket Naming Requirements.

        ", "Trail$S3KeyPrefix": "

        Specifies the Amazon S3 key prefix that comes after the name of the bucket you have designated for log file delivery. For more information, see Finding Your CloudTrail Log Files.The maximum length is 200 characters.

        ", "Trail$SnsTopicName": "

        This field is deprecated. Use SnsTopicARN.

        ", "Trail$SnsTopicARN": "

        Specifies the ARN of the Amazon SNS topic that CloudTrail uses to send notifications when log files are delivered. The format of a topic ARN is:

        arn:aws:sns:us-east-1:123456789012:MyTopic

        ", "Trail$HomeRegion": "

        The region in which the trail was created.

        ", "Trail$TrailARN": "

        Specifies the ARN of the trail. The format of a trail ARN is:

        arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail

        ", "Trail$CloudWatchLogsLogGroupArn": "

        Specifies an Amazon Resource Name (ARN), a unique identifier that represents the log group to which CloudTrail logs will be delivered.

        ", "Trail$CloudWatchLogsRoleArn": "

        Specifies the role for the CloudWatch Logs endpoint to assume to write to a user's log group.

        ", "Trail$KmsKeyId": "

        Specifies the KMS key ID that encrypts the logs delivered by CloudTrail. The value is a fully specified ARN to a KMS key in the format:

        arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        ", "TrailNameList$member": null, "UpdateTrailRequest$Name": "

        Specifies the name of the trail or trail ARN. If Name is a trail name, the string must meet the following requirements:

        • Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores (_), or dashes (-)

        • Start with a letter or number, and end with a letter or number

        • Be between 3 and 128 characters

        • Have no adjacent periods, underscores or dashes. Names like my-_namespace and my--namespace are invalid.

        • Not be in IP address format (for example, 192.168.5.4)

        If Name is a trail ARN, it must be in the format:

        arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail

        ", "UpdateTrailRequest$S3BucketName": "

        Specifies the name of the Amazon S3 bucket designated for publishing log files. See Amazon S3 Bucket Naming Requirements.

        ", "UpdateTrailRequest$S3KeyPrefix": "

        Specifies the Amazon S3 key prefix that comes after the name of the bucket you have designated for log file delivery. For more information, see Finding Your CloudTrail Log Files. The maximum length is 200 characters.

        ", "UpdateTrailRequest$SnsTopicName": "

        Specifies the name of the Amazon SNS topic defined for notification of log file delivery. The maximum length is 256 characters.

        ", "UpdateTrailRequest$CloudWatchLogsLogGroupArn": "

        Specifies a log group name using an Amazon Resource Name (ARN), a unique identifier that represents the log group to which CloudTrail logs will be delivered. Not required unless you specify CloudWatchLogsRoleArn.

        ", "UpdateTrailRequest$CloudWatchLogsRoleArn": "

        Specifies the role for the CloudWatch Logs endpoint to assume to write to a user's log group.

        ", "UpdateTrailRequest$KmsKeyId": "

        Specifies the KMS key ID to use to encrypt the logs delivered by CloudTrail. The value can be a an alias name prefixed by \"alias/\", a fully specified ARN to an alias, a fully specified ARN to a key, or a globally unique identifier.

        Examples:

        • alias/MyAliasName

        • arn:aws:kms:us-east-1:123456789012:alias/MyAliasName

        • arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        • 12345678-1234-1234-1234-123456789012

        ", "UpdateTrailResponse$Name": "

        Specifies the name of the trail.

        ", "UpdateTrailResponse$S3BucketName": "

        Specifies the name of the Amazon S3 bucket designated for publishing log files.

        ", "UpdateTrailResponse$S3KeyPrefix": "

        Specifies the Amazon S3 key prefix that comes after the name of the bucket you have designated for log file delivery. For more information, see Finding Your CloudTrail Log Files.

        ", "UpdateTrailResponse$SnsTopicName": "

        This field is deprecated. Use SnsTopicARN.

        ", "UpdateTrailResponse$SnsTopicARN": "

        Specifies the ARN of the Amazon SNS topic that CloudTrail uses to send notifications when log files are delivered. The format of a topic ARN is:

        arn:aws:sns:us-east-1:123456789012:MyTopic

        ", "UpdateTrailResponse$TrailARN": "

        Specifies the ARN of the trail that was updated. The format of a trail ARN is:

        arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail

        ", "UpdateTrailResponse$CloudWatchLogsLogGroupArn": "

        Specifies the Amazon Resource Name (ARN) of the log group to which CloudTrail logs will be delivered.

        ", "UpdateTrailResponse$CloudWatchLogsRoleArn": "

        Specifies the role for the CloudWatch Logs endpoint to assume to write to a user's log group.

        ", "UpdateTrailResponse$KmsKeyId": "

        Specifies the KMS key ID that encrypts the logs delivered by CloudTrail. The value is a fully specified ARN to a KMS key in the format:

        arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        " } }, "Tag": { "base": "

        A custom key-value pair associated with a resource such as a CloudTrail trail.

        ", "refs": { "TagsList$member": null } }, "TagsLimitExceededException": { "base": "

        The number of tags per trail has exceeded the permitted amount. Currently, the limit is 10.

        ", "refs": { } }, "TagsList": { "base": "

        A list of tags.

        ", "refs": { "AddTagsRequest$TagsList": "

        Contains a list of CloudTrail tags, up to a limit of 10.

        ", "RemoveTagsRequest$TagsList": "

        Specifies a list of tags to be removed.

        ", "ResourceTag$TagsList": null } }, "Trail": { "base": "

        The settings for a trail.

        ", "refs": { "TrailList$member": null } }, "TrailAlreadyExistsException": { "base": "

        This exception is thrown when the specified trail already exists.

        ", "refs": { } }, "TrailList": { "base": null, "refs": { "DescribeTrailsResponse$trailList": "

        The list of trail objects.

        " } }, "TrailNameList": { "base": null, "refs": { "DescribeTrailsRequest$trailNameList": "

        Specifies a list of trail names, trail ARNs, or both, of the trails to describe. The format of a trail ARN is:

        arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail

        If an empty list is specified, information for the trail in the current region is returned.

        • If an empty list is specified and IncludeShadowTrails is false, then information for all trails in the current region is returned.

        • If an empty list is specified and IncludeShadowTrails is null or true, then information for all trails in the current region and any associated shadow trails in other regions is returned.

        If one or more trail names are specified, information is returned only if the names match the names of trails belonging only to the current region. To return information about a trail in another region, you must specify its trail ARN.

        " } }, "TrailNotFoundException": { "base": "

        This exception is thrown when the trail with the given name is not found.

        ", "refs": { } }, "TrailNotProvidedException": { "base": "

        This exception is deprecated.

        ", "refs": { } }, "UnsupportedOperationException": { "base": "

        This exception is thrown when the requested operation is not supported.

        ", "refs": { } }, "UpdateTrailRequest": { "base": "

        Specifies settings to update for the trail.

        ", "refs": { } }, "UpdateTrailResponse": { "base": "

        Returns the objects or data listed below if successful. Otherwise, returns an error.

        ", "refs": { } } } } aws-sdk-go-1.4.22/models/apis/cloudtrail/2013-11-01/examples-1.json000066400000000000000000000000541300374646400240340ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/cloudtrail/2013-11-01/paginators-1.json000066400000000000000000000001301300374646400243600ustar00rootroot00000000000000{ "pagination": { "DescribeTrails": { "result_key": "trailList" } } } aws-sdk-go-1.4.22/models/apis/codecommit/000077500000000000000000000000001300374646400201255ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/codecommit/2015-04-13/000077500000000000000000000000001300374646400211565ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/codecommit/2015-04-13/api-2.json000066400000000000000000000647141300374646400227750ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-04-13", "endpointPrefix":"codecommit", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"CodeCommit", "serviceFullName":"AWS CodeCommit", "signatureVersion":"v4", "targetPrefix":"CodeCommit_20150413" }, "operations":{ "BatchGetRepositories":{ "name":"BatchGetRepositories", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BatchGetRepositoriesInput"}, "output":{"shape":"BatchGetRepositoriesOutput"}, "errors":[ {"shape":"RepositoryNamesRequiredException"}, {"shape":"MaximumRepositoryNamesExceededException"}, {"shape":"InvalidRepositoryNameException"}, {"shape":"EncryptionIntegrityChecksFailedException"}, {"shape":"EncryptionKeyAccessDeniedException"}, {"shape":"EncryptionKeyDisabledException"}, {"shape":"EncryptionKeyNotFoundException"}, {"shape":"EncryptionKeyUnavailableException"} ] }, "CreateBranch":{ "name":"CreateBranch", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateBranchInput"}, "errors":[ {"shape":"RepositoryNameRequiredException"}, {"shape":"InvalidRepositoryNameException"}, {"shape":"RepositoryDoesNotExistException"}, {"shape":"BranchNameRequiredException"}, {"shape":"BranchNameExistsException"}, {"shape":"InvalidBranchNameException"}, {"shape":"CommitIdRequiredException"}, {"shape":"CommitDoesNotExistException"}, {"shape":"InvalidCommitIdException"}, {"shape":"EncryptionIntegrityChecksFailedException"}, {"shape":"EncryptionKeyAccessDeniedException"}, {"shape":"EncryptionKeyDisabledException"}, {"shape":"EncryptionKeyNotFoundException"}, {"shape":"EncryptionKeyUnavailableException"} ] }, "CreateRepository":{ "name":"CreateRepository", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateRepositoryInput"}, "output":{"shape":"CreateRepositoryOutput"}, "errors":[ {"shape":"RepositoryNameExistsException"}, {"shape":"RepositoryNameRequiredException"}, {"shape":"InvalidRepositoryNameException"}, {"shape":"InvalidRepositoryDescriptionException"}, {"shape":"RepositoryLimitExceededException"}, {"shape":"EncryptionIntegrityChecksFailedException"}, {"shape":"EncryptionKeyAccessDeniedException"}, {"shape":"EncryptionKeyDisabledException"}, {"shape":"EncryptionKeyNotFoundException"}, {"shape":"EncryptionKeyUnavailableException"} ] }, "DeleteRepository":{ "name":"DeleteRepository", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRepositoryInput"}, "output":{"shape":"DeleteRepositoryOutput"}, "errors":[ {"shape":"RepositoryNameRequiredException"}, {"shape":"InvalidRepositoryNameException"}, {"shape":"EncryptionIntegrityChecksFailedException"}, {"shape":"EncryptionKeyAccessDeniedException"}, {"shape":"EncryptionKeyDisabledException"}, {"shape":"EncryptionKeyNotFoundException"}, {"shape":"EncryptionKeyUnavailableException"} ] }, "GetBranch":{ "name":"GetBranch", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetBranchInput"}, "output":{"shape":"GetBranchOutput"}, "errors":[ {"shape":"RepositoryNameRequiredException"}, {"shape":"RepositoryDoesNotExistException"}, {"shape":"InvalidRepositoryNameException"}, {"shape":"BranchNameRequiredException"}, {"shape":"InvalidBranchNameException"}, {"shape":"BranchDoesNotExistException"}, {"shape":"EncryptionIntegrityChecksFailedException"}, {"shape":"EncryptionKeyAccessDeniedException"}, {"shape":"EncryptionKeyDisabledException"}, {"shape":"EncryptionKeyNotFoundException"}, {"shape":"EncryptionKeyUnavailableException"} ] }, "GetCommit":{ "name":"GetCommit", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetCommitInput"}, "output":{"shape":"GetCommitOutput"}, "errors":[ {"shape":"RepositoryNameRequiredException"}, {"shape":"InvalidRepositoryNameException"}, {"shape":"RepositoryDoesNotExistException"}, {"shape":"CommitIdRequiredException"}, {"shape":"InvalidCommitIdException"}, {"shape":"CommitIdDoesNotExistException"}, {"shape":"EncryptionIntegrityChecksFailedException"}, {"shape":"EncryptionKeyAccessDeniedException"}, {"shape":"EncryptionKeyDisabledException"}, {"shape":"EncryptionKeyNotFoundException"}, {"shape":"EncryptionKeyUnavailableException"} ] }, "GetRepository":{ "name":"GetRepository", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetRepositoryInput"}, "output":{"shape":"GetRepositoryOutput"}, "errors":[ {"shape":"RepositoryNameRequiredException"}, {"shape":"RepositoryDoesNotExistException"}, {"shape":"InvalidRepositoryNameException"}, {"shape":"EncryptionIntegrityChecksFailedException"}, {"shape":"EncryptionKeyAccessDeniedException"}, {"shape":"EncryptionKeyDisabledException"}, {"shape":"EncryptionKeyNotFoundException"}, {"shape":"EncryptionKeyUnavailableException"} ] }, "GetRepositoryTriggers":{ "name":"GetRepositoryTriggers", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetRepositoryTriggersInput"}, "output":{"shape":"GetRepositoryTriggersOutput"}, "errors":[ {"shape":"RepositoryNameRequiredException"}, {"shape":"InvalidRepositoryNameException"}, {"shape":"RepositoryDoesNotExistException"}, {"shape":"EncryptionIntegrityChecksFailedException"}, {"shape":"EncryptionKeyAccessDeniedException"}, {"shape":"EncryptionKeyDisabledException"}, {"shape":"EncryptionKeyNotFoundException"}, {"shape":"EncryptionKeyUnavailableException"} ] }, "ListBranches":{ "name":"ListBranches", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListBranchesInput"}, "output":{"shape":"ListBranchesOutput"}, "errors":[ {"shape":"RepositoryNameRequiredException"}, {"shape":"RepositoryDoesNotExistException"}, {"shape":"InvalidRepositoryNameException"}, {"shape":"EncryptionIntegrityChecksFailedException"}, {"shape":"EncryptionKeyAccessDeniedException"}, {"shape":"EncryptionKeyDisabledException"}, {"shape":"EncryptionKeyNotFoundException"}, {"shape":"EncryptionKeyUnavailableException"}, {"shape":"InvalidContinuationTokenException"} ] }, "ListRepositories":{ "name":"ListRepositories", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListRepositoriesInput"}, "output":{"shape":"ListRepositoriesOutput"}, "errors":[ {"shape":"InvalidSortByException"}, {"shape":"InvalidOrderException"}, {"shape":"InvalidContinuationTokenException"} ] }, "PutRepositoryTriggers":{ "name":"PutRepositoryTriggers", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutRepositoryTriggersInput"}, "output":{"shape":"PutRepositoryTriggersOutput"}, "errors":[ {"shape":"RepositoryDoesNotExistException"}, {"shape":"RepositoryNameRequiredException"}, {"shape":"InvalidRepositoryNameException"}, {"shape":"RepositoryTriggersListRequiredException"}, {"shape":"MaximumRepositoryTriggersExceededException"}, {"shape":"InvalidRepositoryTriggerNameException"}, {"shape":"InvalidRepositoryTriggerDestinationArnException"}, {"shape":"InvalidRepositoryTriggerRegionException"}, {"shape":"InvalidRepositoryTriggerCustomDataException"}, {"shape":"MaximumBranchesExceededException"}, {"shape":"InvalidRepositoryTriggerBranchNameException"}, {"shape":"InvalidRepositoryTriggerEventsException"}, {"shape":"RepositoryTriggerNameRequiredException"}, {"shape":"RepositoryTriggerDestinationArnRequiredException"}, {"shape":"RepositoryTriggerBranchNameListRequiredException"}, {"shape":"RepositoryTriggerEventsListRequiredException"}, {"shape":"EncryptionIntegrityChecksFailedException"}, {"shape":"EncryptionKeyAccessDeniedException"}, {"shape":"EncryptionKeyDisabledException"}, {"shape":"EncryptionKeyNotFoundException"}, {"shape":"EncryptionKeyUnavailableException"} ] }, "TestRepositoryTriggers":{ "name":"TestRepositoryTriggers", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"TestRepositoryTriggersInput"}, "output":{"shape":"TestRepositoryTriggersOutput"}, "errors":[ {"shape":"RepositoryDoesNotExistException"}, {"shape":"RepositoryNameRequiredException"}, {"shape":"InvalidRepositoryNameException"}, {"shape":"RepositoryTriggersListRequiredException"}, {"shape":"MaximumRepositoryTriggersExceededException"}, {"shape":"InvalidRepositoryTriggerNameException"}, {"shape":"InvalidRepositoryTriggerDestinationArnException"}, {"shape":"InvalidRepositoryTriggerRegionException"}, {"shape":"InvalidRepositoryTriggerCustomDataException"}, {"shape":"MaximumBranchesExceededException"}, {"shape":"InvalidRepositoryTriggerBranchNameException"}, {"shape":"InvalidRepositoryTriggerEventsException"}, {"shape":"RepositoryTriggerNameRequiredException"}, {"shape":"RepositoryTriggerDestinationArnRequiredException"}, {"shape":"RepositoryTriggerBranchNameListRequiredException"}, {"shape":"RepositoryTriggerEventsListRequiredException"}, {"shape":"EncryptionIntegrityChecksFailedException"}, {"shape":"EncryptionKeyAccessDeniedException"}, {"shape":"EncryptionKeyDisabledException"}, {"shape":"EncryptionKeyNotFoundException"}, {"shape":"EncryptionKeyUnavailableException"} ] }, "UpdateDefaultBranch":{ "name":"UpdateDefaultBranch", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateDefaultBranchInput"}, "errors":[ {"shape":"RepositoryNameRequiredException"}, {"shape":"RepositoryDoesNotExistException"}, {"shape":"InvalidRepositoryNameException"}, {"shape":"BranchNameRequiredException"}, {"shape":"InvalidBranchNameException"}, {"shape":"BranchDoesNotExistException"}, {"shape":"EncryptionIntegrityChecksFailedException"}, {"shape":"EncryptionKeyAccessDeniedException"}, {"shape":"EncryptionKeyDisabledException"}, {"shape":"EncryptionKeyNotFoundException"}, {"shape":"EncryptionKeyUnavailableException"} ] }, "UpdateRepositoryDescription":{ "name":"UpdateRepositoryDescription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateRepositoryDescriptionInput"}, "errors":[ {"shape":"RepositoryNameRequiredException"}, {"shape":"RepositoryDoesNotExistException"}, {"shape":"InvalidRepositoryNameException"}, {"shape":"InvalidRepositoryDescriptionException"}, {"shape":"EncryptionIntegrityChecksFailedException"}, {"shape":"EncryptionKeyAccessDeniedException"}, {"shape":"EncryptionKeyDisabledException"}, {"shape":"EncryptionKeyNotFoundException"}, {"shape":"EncryptionKeyUnavailableException"} ] }, "UpdateRepositoryName":{ "name":"UpdateRepositoryName", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateRepositoryNameInput"}, "errors":[ {"shape":"RepositoryDoesNotExistException"}, {"shape":"RepositoryNameExistsException"}, {"shape":"RepositoryNameRequiredException"}, {"shape":"InvalidRepositoryNameException"} ] } }, "shapes":{ "AccountId":{"type":"string"}, "AdditionalData":{"type":"string"}, "Arn":{"type":"string"}, "BatchGetRepositoriesInput":{ "type":"structure", "required":["repositoryNames"], "members":{ "repositoryNames":{"shape":"RepositoryNameList"} } }, "BatchGetRepositoriesOutput":{ "type":"structure", "members":{ "repositories":{"shape":"RepositoryMetadataList"}, "repositoriesNotFound":{"shape":"RepositoryNotFoundList"} } }, "BranchDoesNotExistException":{ "type":"structure", "members":{ }, "exception":true }, "BranchInfo":{ "type":"structure", "members":{ "branchName":{"shape":"BranchName"}, "commitId":{"shape":"CommitId"} } }, "BranchName":{ "type":"string", "max":100, "min":1 }, "BranchNameExistsException":{ "type":"structure", "members":{ }, "exception":true }, "BranchNameList":{ "type":"list", "member":{"shape":"BranchName"} }, "BranchNameRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "CloneUrlHttp":{"type":"string"}, "CloneUrlSsh":{"type":"string"}, "Commit":{ "type":"structure", "members":{ "treeId":{"shape":"ObjectId"}, "parents":{"shape":"ParentList"}, "message":{"shape":"Message"}, "author":{"shape":"UserInfo"}, "committer":{"shape":"UserInfo"}, "additionalData":{"shape":"AdditionalData"} } }, "CommitDoesNotExistException":{ "type":"structure", "members":{ }, "exception":true }, "CommitId":{"type":"string"}, "CommitIdDoesNotExistException":{ "type":"structure", "members":{ }, "exception":true }, "CommitIdRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "CreateBranchInput":{ "type":"structure", "required":[ "repositoryName", "branchName", "commitId" ], "members":{ "repositoryName":{"shape":"RepositoryName"}, "branchName":{"shape":"BranchName"}, "commitId":{"shape":"CommitId"} } }, "CreateRepositoryInput":{ "type":"structure", "required":["repositoryName"], "members":{ "repositoryName":{"shape":"RepositoryName"}, "repositoryDescription":{"shape":"RepositoryDescription"} } }, "CreateRepositoryOutput":{ "type":"structure", "members":{ "repositoryMetadata":{"shape":"RepositoryMetadata"} } }, "CreationDate":{"type":"timestamp"}, "Date":{"type":"string"}, "DeleteRepositoryInput":{ "type":"structure", "required":["repositoryName"], "members":{ "repositoryName":{"shape":"RepositoryName"} } }, "DeleteRepositoryOutput":{ "type":"structure", "members":{ "repositoryId":{"shape":"RepositoryId"} } }, "Email":{"type":"string"}, "EncryptionIntegrityChecksFailedException":{ "type":"structure", "members":{ }, "exception":true, "fault":true }, "EncryptionKeyAccessDeniedException":{ "type":"structure", "members":{ }, "exception":true }, "EncryptionKeyDisabledException":{ "type":"structure", "members":{ }, "exception":true }, "EncryptionKeyNotFoundException":{ "type":"structure", "members":{ }, "exception":true }, "EncryptionKeyUnavailableException":{ "type":"structure", "members":{ }, "exception":true }, "GetBranchInput":{ "type":"structure", "members":{ "repositoryName":{"shape":"RepositoryName"}, "branchName":{"shape":"BranchName"} } }, "GetBranchOutput":{ "type":"structure", "members":{ "branch":{"shape":"BranchInfo"} } }, "GetCommitInput":{ "type":"structure", "required":[ "repositoryName", "commitId" ], "members":{ "repositoryName":{"shape":"RepositoryName"}, "commitId":{"shape":"ObjectId"} } }, "GetCommitOutput":{ "type":"structure", "required":["commit"], "members":{ "commit":{"shape":"Commit"} } }, "GetRepositoryInput":{ "type":"structure", "required":["repositoryName"], "members":{ "repositoryName":{"shape":"RepositoryName"} } }, "GetRepositoryOutput":{ "type":"structure", "members":{ "repositoryMetadata":{"shape":"RepositoryMetadata"} } }, "GetRepositoryTriggersInput":{ "type":"structure", "members":{ "repositoryName":{"shape":"RepositoryName"} } }, "GetRepositoryTriggersOutput":{ "type":"structure", "members":{ "configurationId":{"shape":"RepositoryTriggersConfigurationId"}, "triggers":{"shape":"RepositoryTriggersList"} } }, "InvalidBranchNameException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidCommitIdException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidContinuationTokenException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidOrderException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidRepositoryDescriptionException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidRepositoryNameException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidRepositoryTriggerBranchNameException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidRepositoryTriggerCustomDataException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidRepositoryTriggerDestinationArnException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidRepositoryTriggerEventsException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidRepositoryTriggerNameException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidRepositoryTriggerRegionException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidSortByException":{ "type":"structure", "members":{ }, "exception":true }, "LastModifiedDate":{"type":"timestamp"}, "ListBranchesInput":{ "type":"structure", "required":["repositoryName"], "members":{ "repositoryName":{"shape":"RepositoryName"}, "nextToken":{"shape":"NextToken"} } }, "ListBranchesOutput":{ "type":"structure", "members":{ "branches":{"shape":"BranchNameList"}, "nextToken":{"shape":"NextToken"} } }, "ListRepositoriesInput":{ "type":"structure", "members":{ "nextToken":{"shape":"NextToken"}, "sortBy":{"shape":"SortByEnum"}, "order":{"shape":"OrderEnum"} } }, "ListRepositoriesOutput":{ "type":"structure", "members":{ "repositories":{"shape":"RepositoryNameIdPairList"}, "nextToken":{"shape":"NextToken"} } }, "MaximumBranchesExceededException":{ "type":"structure", "members":{ }, "exception":true }, "MaximumRepositoryNamesExceededException":{ "type":"structure", "members":{ }, "exception":true }, "MaximumRepositoryTriggersExceededException":{ "type":"structure", "members":{ }, "exception":true }, "Message":{"type":"string"}, "Name":{"type":"string"}, "NextToken":{"type":"string"}, "ObjectId":{"type":"string"}, "OrderEnum":{ "type":"string", "enum":[ "ascending", "descending" ] }, "ParentList":{ "type":"list", "member":{"shape":"ObjectId"} }, "PutRepositoryTriggersInput":{ "type":"structure", "members":{ "repositoryName":{"shape":"RepositoryName"}, "triggers":{"shape":"RepositoryTriggersList"} } }, "PutRepositoryTriggersOutput":{ "type":"structure", "members":{ "configurationId":{"shape":"RepositoryTriggersConfigurationId"} } }, "RepositoryDescription":{ "type":"string", "max":1000 }, "RepositoryDoesNotExistException":{ "type":"structure", "members":{ }, "exception":true }, "RepositoryId":{"type":"string"}, "RepositoryLimitExceededException":{ "type":"structure", "members":{ }, "exception":true }, "RepositoryMetadata":{ "type":"structure", "members":{ "accountId":{"shape":"AccountId"}, "repositoryId":{"shape":"RepositoryId"}, "repositoryName":{"shape":"RepositoryName"}, "repositoryDescription":{"shape":"RepositoryDescription"}, "defaultBranch":{"shape":"BranchName"}, "lastModifiedDate":{"shape":"LastModifiedDate"}, "creationDate":{"shape":"CreationDate"}, "cloneUrlHttp":{"shape":"CloneUrlHttp"}, "cloneUrlSsh":{"shape":"CloneUrlSsh"}, "Arn":{"shape":"Arn"} } }, "RepositoryMetadataList":{ "type":"list", "member":{"shape":"RepositoryMetadata"} }, "RepositoryName":{ "type":"string", "max":100, "min":1, "pattern":"[\\\\w\\\\.-]+" }, "RepositoryNameExistsException":{ "type":"structure", "members":{ }, "exception":true }, "RepositoryNameIdPair":{ "type":"structure", "members":{ "repositoryName":{"shape":"RepositoryName"}, "repositoryId":{"shape":"RepositoryId"} } }, "RepositoryNameIdPairList":{ "type":"list", "member":{"shape":"RepositoryNameIdPair"} }, "RepositoryNameList":{ "type":"list", "member":{"shape":"RepositoryName"} }, "RepositoryNameRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "RepositoryNamesRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "RepositoryNotFoundList":{ "type":"list", "member":{"shape":"RepositoryName"} }, "RepositoryTrigger":{ "type":"structure", "members":{ "name":{"shape":"RepositoryTriggerName"}, "destinationArn":{"shape":"Arn"}, "customData":{"shape":"RepositoryTriggerCustomData"}, "branches":{"shape":"BranchNameList"}, "events":{"shape":"RepositoryTriggerEventList"} } }, "RepositoryTriggerBranchNameListRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "RepositoryTriggerCustomData":{"type":"string"}, "RepositoryTriggerDestinationArnRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "RepositoryTriggerEventEnum":{ "type":"string", "enum":[ "all", "updateReference", "createReference", "deleteReference" ] }, "RepositoryTriggerEventList":{ "type":"list", "member":{"shape":"RepositoryTriggerEventEnum"} }, "RepositoryTriggerEventsListRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "RepositoryTriggerExecutionFailure":{ "type":"structure", "members":{ "trigger":{"shape":"RepositoryTriggerName"}, "failureMessage":{"shape":"RepositoryTriggerExecutionFailureMessage"} } }, "RepositoryTriggerExecutionFailureList":{ "type":"list", "member":{"shape":"RepositoryTriggerExecutionFailure"} }, "RepositoryTriggerExecutionFailureMessage":{"type":"string"}, "RepositoryTriggerName":{"type":"string"}, "RepositoryTriggerNameList":{ "type":"list", "member":{"shape":"RepositoryTriggerName"} }, "RepositoryTriggerNameRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "RepositoryTriggersConfigurationId":{"type":"string"}, "RepositoryTriggersList":{ "type":"list", "member":{"shape":"RepositoryTrigger"} }, "RepositoryTriggersListRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "SortByEnum":{ "type":"string", "enum":[ "repositoryName", "lastModifiedDate" ] }, "TestRepositoryTriggersInput":{ "type":"structure", "members":{ "repositoryName":{"shape":"RepositoryName"}, "triggers":{"shape":"RepositoryTriggersList"} } }, "TestRepositoryTriggersOutput":{ "type":"structure", "members":{ "successfulExecutions":{"shape":"RepositoryTriggerNameList"}, "failedExecutions":{"shape":"RepositoryTriggerExecutionFailureList"} } }, "UpdateDefaultBranchInput":{ "type":"structure", "required":[ "repositoryName", "defaultBranchName" ], "members":{ "repositoryName":{"shape":"RepositoryName"}, "defaultBranchName":{"shape":"BranchName"} } }, "UpdateRepositoryDescriptionInput":{ "type":"structure", "required":["repositoryName"], "members":{ "repositoryName":{"shape":"RepositoryName"}, "repositoryDescription":{"shape":"RepositoryDescription"} } }, "UpdateRepositoryNameInput":{ "type":"structure", "required":[ "oldName", "newName" ], "members":{ "oldName":{"shape":"RepositoryName"}, "newName":{"shape":"RepositoryName"} } }, "UserInfo":{ "type":"structure", "members":{ "name":{"shape":"Name"}, "email":{"shape":"Email"}, "date":{"shape":"Date"} } } } } aws-sdk-go-1.4.22/models/apis/codecommit/2015-04-13/docs-2.json000066400000000000000000000725701300374646400231530ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS CodeCommit

        This is the AWS CodeCommit API Reference. This reference provides descriptions of the operations and data types for AWS CodeCommit API.

        You can use the AWS CodeCommit API to work with the following objects:

        • Repositories, by calling the following:
          • BatchGetRepositories, which returns information about one or more repositories associated with your AWS account
          • CreateRepository, which creates an AWS CodeCommit repository
          • DeleteRepository, which deletes an AWS CodeCommit repository
          • GetRepository, which returns information about a specified repository
          • ListRepositories, which lists all AWS CodeCommit repositories associated with your AWS account
          • UpdateRepositoryDescription, which sets or updates the description of the repository
          • UpdateRepositoryName, which changes the name of the repository. If you change the name of a repository, no other users of that repository will be able to access it until you send them the new HTTPS or SSH URL to use.
        • Branches, by calling the following:
          • CreateBranch, which creates a new branch in a specified repository
          • GetBranch, which returns information about a specified branch
          • ListBranches, which lists all branches for a specified repository
          • UpdateDefaultBranch, which changes the default branch for a repository
        • Information about committed code in a repository, by calling the following:
          • GetCommit, which returns information about a commit, including commit messages and committer information.
        • Triggers, by calling the following:
          • GetRepositoryTriggers, which returns information about triggers configured for a repository
          • PutRepositoryTriggers, which replaces all triggers for a repository and can be used to create or delete triggers
          • TestRepositoryTriggers, which tests the functionality of a repository trigger by sending data to the trigger target

        For information about how to use AWS CodeCommit, see the AWS CodeCommit User Guide.

        ", "operations": { "BatchGetRepositories": "

        Returns information about one or more repositories.

        The description field for a repository accepts all HTML characters and all valid Unicode characters. Applications that do not HTML-encode the description and display it in a web page could expose users to potentially malicious code. Make sure that you HTML-encode the description field in any application that uses this API to display the repository description on a web page.

        ", "CreateBranch": "

        Creates a new branch in a repository and points the branch to a commit.

        Calling the create branch operation does not set a repository's default branch. To do this, call the update default branch operation.

        ", "CreateRepository": "

        Creates a new, empty repository.

        ", "DeleteRepository": "

        Deletes a repository. If a specified repository was already deleted, a null repository ID will be returned.

        Deleting a repository also deletes all associated objects and metadata. After a repository is deleted, all future push calls to the deleted repository will fail.", "GetBranch": "

        Returns information about a repository branch, including its name and the last commit ID.

        ", "GetCommit": "

        Returns information about a commit, including commit message and committer information.

        ", "GetRepository": "

        Returns information about a repository.

        The description field for a repository accepts all HTML characters and all valid Unicode characters. Applications that do not HTML-encode the description and display it in a web page could expose users to potentially malicious code. Make sure that you HTML-encode the description field in any application that uses this API to display the repository description on a web page.

        ", "GetRepositoryTriggers": "

        Gets information about triggers configured for a repository.

        ", "ListBranches": "

        Gets information about one or more branches in a repository.

        ", "ListRepositories": "

        Gets information about one or more repositories.

        ", "PutRepositoryTriggers": "

        Replaces all triggers for a repository. This can be used to create or delete triggers.

        ", "TestRepositoryTriggers": "

        Tests the functionality of repository triggers by sending information to the trigger target. If real data is available in the repository, the test will send data from the last commit. If no data is available, sample data will be generated.

        ", "UpdateDefaultBranch": "

        Sets or changes the default branch name for the specified repository.

        If you use this operation to change the default branch name to the current default branch name, a success message is returned even though the default branch did not change.

        ", "UpdateRepositoryDescription": "

        Sets or changes the comment or description for a repository.

        The description field for a repository accepts all HTML characters and all valid Unicode characters. Applications that do not HTML-encode the description and display it in a web page could expose users to potentially malicious code. Make sure that you HTML-encode the description field in any application that uses this API to display the repository description on a web page.

        ", "UpdateRepositoryName": "

        Renames a repository. The repository name must be unique across the calling AWS account. In addition, repository names are limited to 100 alphanumeric, dash, and underscore characters, and cannot include certain characters. The suffix \".git\" is prohibited. For a full description of the limits on repository names, see Limits in the AWS CodeCommit User Guide.

        " }, "shapes": { "AccountId": { "base": null, "refs": { "RepositoryMetadata$accountId": "

        The ID of the AWS account associated with the repository.

        " } }, "AdditionalData": { "base": null, "refs": { "Commit$additionalData": "

        Any additional data associated with the specified commit.

        " } }, "Arn": { "base": null, "refs": { "RepositoryMetadata$Arn": "

        The Amazon Resource Name (ARN) of the repository.

        ", "RepositoryTrigger$destinationArn": "

        The ARN of the resource that is the target for a trigger. For example, the ARN of a topic in Amazon Simple Notification Service (SNS).

        " } }, "BatchGetRepositoriesInput": { "base": "

        Represents the input of a batch get repositories operation.

        ", "refs": { } }, "BatchGetRepositoriesOutput": { "base": "

        Represents the output of a batch get repositories operation.

        ", "refs": { } }, "BranchDoesNotExistException": { "base": "

        The specified branch does not exist.

        ", "refs": { } }, "BranchInfo": { "base": "

        Returns information about a branch.

        ", "refs": { "GetBranchOutput$branch": "

        The name of the branch.

        " } }, "BranchName": { "base": null, "refs": { "BranchInfo$branchName": "

        The name of the branch.

        ", "BranchNameList$member": null, "CreateBranchInput$branchName": "

        The name of the new branch to create.

        ", "GetBranchInput$branchName": "

        The name of the branch for which you want to retrieve information.

        ", "RepositoryMetadata$defaultBranch": "

        The repository's default branch name.

        ", "UpdateDefaultBranchInput$defaultBranchName": "

        The name of the branch to set as the default.

        " } }, "BranchNameExistsException": { "base": "

        The specified branch name already exists.

        ", "refs": { } }, "BranchNameList": { "base": null, "refs": { "ListBranchesOutput$branches": "

        The list of branch names.

        ", "RepositoryTrigger$branches": "

        The branches that will be included in the trigger configuration. If no branches are specified, the trigger will apply to all branches.

        " } }, "BranchNameRequiredException": { "base": "

        A branch name is required but was not specified.

        ", "refs": { } }, "CloneUrlHttp": { "base": null, "refs": { "RepositoryMetadata$cloneUrlHttp": "

        The URL to use for cloning the repository over HTTPS.

        " } }, "CloneUrlSsh": { "base": null, "refs": { "RepositoryMetadata$cloneUrlSsh": "

        The URL to use for cloning the repository over SSH.

        " } }, "Commit": { "base": "

        Returns information about a specific commit.

        ", "refs": { "GetCommitOutput$commit": "

        Information about the specified commit.

        " } }, "CommitDoesNotExistException": { "base": "

        The specified commit does not exist or no commit was specified, and the specified repository has no default branch.

        ", "refs": { } }, "CommitId": { "base": null, "refs": { "BranchInfo$commitId": "

        The ID of the last commit made to the branch.

        ", "CreateBranchInput$commitId": "

        The ID of the commit to point the new branch to.

        " } }, "CommitIdDoesNotExistException": { "base": "

        The specified commit ID does not exist.

        ", "refs": { } }, "CommitIdRequiredException": { "base": "

        A commit ID was not specified.

        ", "refs": { } }, "CreateBranchInput": { "base": "

        Represents the input of a create branch operation.

        ", "refs": { } }, "CreateRepositoryInput": { "base": "

        Represents the input of a create repository operation.

        ", "refs": { } }, "CreateRepositoryOutput": { "base": "

        Represents the output of a create repository operation.

        ", "refs": { } }, "CreationDate": { "base": null, "refs": { "RepositoryMetadata$creationDate": "

        The date and time the repository was created, in timestamp format.

        " } }, "Date": { "base": null, "refs": { "UserInfo$date": "

        The date when the specified commit was pushed to the repository.

        " } }, "DeleteRepositoryInput": { "base": "

        Represents the input of a delete repository operation.

        ", "refs": { } }, "DeleteRepositoryOutput": { "base": "

        Represents the output of a delete repository operation.

        ", "refs": { } }, "Email": { "base": null, "refs": { "UserInfo$email": "

        The email address associated with the user who made the commit, if any.

        " } }, "EncryptionIntegrityChecksFailedException": { "base": "

        An encryption integrity check failed.

        ", "refs": { } }, "EncryptionKeyAccessDeniedException": { "base": "

        An encryption key could not be accessed.

        ", "refs": { } }, "EncryptionKeyDisabledException": { "base": "

        The encryption key is disabled.

        ", "refs": { } }, "EncryptionKeyNotFoundException": { "base": "

        No encryption key was found.

        ", "refs": { } }, "EncryptionKeyUnavailableException": { "base": "

        The encryption key is not available.

        ", "refs": { } }, "GetBranchInput": { "base": "

        Represents the input of a get branch operation.

        ", "refs": { } }, "GetBranchOutput": { "base": "

        Represents the output of a get branch operation.

        ", "refs": { } }, "GetCommitInput": { "base": "

        Represents the input of a get commit operation.

        ", "refs": { } }, "GetCommitOutput": { "base": "

        Represents the output of a get commit operation.

        ", "refs": { } }, "GetRepositoryInput": { "base": "

        Represents the input of a get repository operation.

        ", "refs": { } }, "GetRepositoryOutput": { "base": "

        Represents the output of a get repository operation.

        ", "refs": { } }, "GetRepositoryTriggersInput": { "base": "

        Represents the input of a get repository triggers operation.

        ", "refs": { } }, "GetRepositoryTriggersOutput": { "base": "

        Represents the output of a get repository triggers operation.

        ", "refs": { } }, "InvalidBranchNameException": { "base": "

        The specified branch name is not valid.

        ", "refs": { } }, "InvalidCommitIdException": { "base": "

        The specified commit ID is not valid.

        ", "refs": { } }, "InvalidContinuationTokenException": { "base": "

        The specified continuation token is not valid.

        ", "refs": { } }, "InvalidOrderException": { "base": "

        The specified sort order is not valid.

        ", "refs": { } }, "InvalidRepositoryDescriptionException": { "base": "

        The specified repository description is not valid.

        ", "refs": { } }, "InvalidRepositoryNameException": { "base": "

        At least one specified repository name is not valid.

        This exception only occurs when a specified repository name is not valid. Other exceptions occur when a required repository parameter is missing, or when a specified repository does not exist.

        ", "refs": { } }, "InvalidRepositoryTriggerBranchNameException": { "base": "

        One or more branch names specified for the trigger is not valid.

        ", "refs": { } }, "InvalidRepositoryTriggerCustomDataException": { "base": "

        The custom data provided for the trigger is not valid.

        ", "refs": { } }, "InvalidRepositoryTriggerDestinationArnException": { "base": "

        The Amazon Resource Name (ARN) for the trigger is not valid for the specified destination. The most common reason for this error is that the ARN does not meet the requirements for the service type.

        ", "refs": { } }, "InvalidRepositoryTriggerEventsException": { "base": "

        One or more events specified for the trigger is not valid. Check to make sure that all events specified match the requirements for allowed events.

        ", "refs": { } }, "InvalidRepositoryTriggerNameException": { "base": "

        The name of the trigger is not valid.

        ", "refs": { } }, "InvalidRepositoryTriggerRegionException": { "base": "

        The region for the trigger target does not match the region for the repository. Triggers must be created in the same region as the target for the trigger.

        ", "refs": { } }, "InvalidSortByException": { "base": "

        The specified sort by value is not valid.

        ", "refs": { } }, "LastModifiedDate": { "base": null, "refs": { "RepositoryMetadata$lastModifiedDate": "

        The date and time the repository was last modified, in timestamp format.

        " } }, "ListBranchesInput": { "base": "

        Represents the input of a list branches operation.

        ", "refs": { } }, "ListBranchesOutput": { "base": "

        Represents the output of a list branches operation.

        ", "refs": { } }, "ListRepositoriesInput": { "base": "

        Represents the input of a list repositories operation.

        ", "refs": { } }, "ListRepositoriesOutput": { "base": "

        Represents the output of a list repositories operation.

        ", "refs": { } }, "MaximumBranchesExceededException": { "base": "

        The number of branches for the trigger was exceeded.

        ", "refs": { } }, "MaximumRepositoryNamesExceededException": { "base": "

        The maximum number of allowed repository names was exceeded. Currently, this number is 25.

        ", "refs": { } }, "MaximumRepositoryTriggersExceededException": { "base": "

        The number of triggers allowed for the repository was exceeded.

        ", "refs": { } }, "Message": { "base": null, "refs": { "Commit$message": "

        The message associated with the specified commit.

        " } }, "Name": { "base": null, "refs": { "UserInfo$name": "

        The name of the user who made the specified commit.

        " } }, "NextToken": { "base": null, "refs": { "ListBranchesInput$nextToken": "

        An enumeration token that allows the operation to batch the results.

        ", "ListBranchesOutput$nextToken": "

        An enumeration token that returns the batch of the results.

        ", "ListRepositoriesInput$nextToken": "

        An enumeration token that allows the operation to batch the results of the operation. Batch sizes are 1,000 for list repository operations. When the client sends the token back to AWS CodeCommit, another page of 1,000 records is retrieved.

        ", "ListRepositoriesOutput$nextToken": "

        An enumeration token that allows the operation to batch the results of the operation. Batch sizes are 1,000 for list repository operations. When the client sends the token back to AWS CodeCommit, another page of 1,000 records is retrieved.

        " } }, "ObjectId": { "base": null, "refs": { "Commit$treeId": "

        Tree information for the specified commit.

        ", "GetCommitInput$commitId": "

        The commit ID.

        ", "ParentList$member": null } }, "OrderEnum": { "base": null, "refs": { "ListRepositoriesInput$order": "

        The order in which to sort the results of a list repositories operation.

        " } }, "ParentList": { "base": null, "refs": { "Commit$parents": "

        The parent list for the specified commit.

        " } }, "PutRepositoryTriggersInput": { "base": "

        Represents the input ofa put repository triggers operation.

        ", "refs": { } }, "PutRepositoryTriggersOutput": { "base": "

        Represents the output of a put repository triggers operation.

        ", "refs": { } }, "RepositoryDescription": { "base": null, "refs": { "CreateRepositoryInput$repositoryDescription": "

        A comment or description about the new repository.

        The description field for a repository accepts all HTML characters and all valid Unicode characters. Applications that do not HTML-encode the description and display it in a web page could expose users to potentially malicious code. Make sure that you HTML-encode the description field in any application that uses this API to display the repository description on a web page.

        ", "RepositoryMetadata$repositoryDescription": "

        A comment or description about the repository.

        ", "UpdateRepositoryDescriptionInput$repositoryDescription": "

        The new comment or description for the specified repository. Repository descriptions are limited to 1,000 characters.

        " } }, "RepositoryDoesNotExistException": { "base": "

        The specified repository does not exist.

        ", "refs": { } }, "RepositoryId": { "base": null, "refs": { "DeleteRepositoryOutput$repositoryId": "

        The ID of the repository that was deleted.

        ", "RepositoryMetadata$repositoryId": "

        The ID of the repository.

        ", "RepositoryNameIdPair$repositoryId": "

        The ID associated with the repository.

        " } }, "RepositoryLimitExceededException": { "base": "

        A repository resource limit was exceeded.

        ", "refs": { } }, "RepositoryMetadata": { "base": "

        Information about a repository.

        ", "refs": { "CreateRepositoryOutput$repositoryMetadata": "

        Information about the newly created repository.

        ", "GetRepositoryOutput$repositoryMetadata": "

        Information about the repository.

        ", "RepositoryMetadataList$member": null } }, "RepositoryMetadataList": { "base": null, "refs": { "BatchGetRepositoriesOutput$repositories": "

        A list of repositories returned by the batch get repositories operation.

        " } }, "RepositoryName": { "base": null, "refs": { "CreateBranchInput$repositoryName": "

        The name of the repository in which you want to create the new branch.

        ", "CreateRepositoryInput$repositoryName": "

        The name of the new repository to be created.

        The repository name must be unique across the calling AWS account. In addition, repository names are limited to 100 alphanumeric, dash, and underscore characters, and cannot include certain characters. For a full description of the limits on repository names, see Limits in the AWS CodeCommit User Guide. The suffix \".git\" is prohibited.

        ", "DeleteRepositoryInput$repositoryName": "

        The name of the repository to delete.

        ", "GetBranchInput$repositoryName": "

        The name of the repository that contains the branch for which you want to retrieve information.

        ", "GetCommitInput$repositoryName": "

        The name of the repository to which the commit was made.

        ", "GetRepositoryInput$repositoryName": "

        The name of the repository to get information about.

        ", "GetRepositoryTriggersInput$repositoryName": "

        The name of the repository for which the trigger is configured.

        ", "ListBranchesInput$repositoryName": "

        The name of the repository that contains the branches.

        ", "PutRepositoryTriggersInput$repositoryName": "

        The name of the repository where you want to create or update the trigger.

        ", "RepositoryMetadata$repositoryName": "

        The repository's name.

        ", "RepositoryNameIdPair$repositoryName": "

        The name associated with the repository.

        ", "RepositoryNameList$member": null, "RepositoryNotFoundList$member": null, "TestRepositoryTriggersInput$repositoryName": "

        The name of the repository in which to test the triggers.

        ", "UpdateDefaultBranchInput$repositoryName": "

        The name of the repository to set or change the default branch for.

        ", "UpdateRepositoryDescriptionInput$repositoryName": "

        The name of the repository to set or change the comment or description for.

        ", "UpdateRepositoryNameInput$oldName": "

        The existing name of the repository.

        ", "UpdateRepositoryNameInput$newName": "

        The new name for the repository.

        " } }, "RepositoryNameExistsException": { "base": "

        The specified repository name already exists.

        ", "refs": { } }, "RepositoryNameIdPair": { "base": "

        Information about a repository name and ID.

        ", "refs": { "RepositoryNameIdPairList$member": null } }, "RepositoryNameIdPairList": { "base": null, "refs": { "ListRepositoriesOutput$repositories": "

        Lists the repositories called by the list repositories operation.

        " } }, "RepositoryNameList": { "base": null, "refs": { "BatchGetRepositoriesInput$repositoryNames": "

        The names of the repositories to get information about.

        " } }, "RepositoryNameRequiredException": { "base": "

        A repository name is required but was not specified.

        ", "refs": { } }, "RepositoryNamesRequiredException": { "base": "

        A repository names object is required but was not specified.

        ", "refs": { } }, "RepositoryNotFoundList": { "base": null, "refs": { "BatchGetRepositoriesOutput$repositoriesNotFound": "

        Returns a list of repository names for which information could not be found.

        " } }, "RepositoryTrigger": { "base": "

        Information about a trigger for a repository.

        ", "refs": { "RepositoryTriggersList$member": null } }, "RepositoryTriggerBranchNameListRequiredException": { "base": "

        At least one branch name is required but was not specified in the trigger configuration.

        ", "refs": { } }, "RepositoryTriggerCustomData": { "base": null, "refs": { "RepositoryTrigger$customData": "

        Any custom data associated with the trigger that will be included in the information sent to the target of the trigger.

        " } }, "RepositoryTriggerDestinationArnRequiredException": { "base": "

        A destination ARN for the target service for the trigger is required but was not specified.

        ", "refs": { } }, "RepositoryTriggerEventEnum": { "base": null, "refs": { "RepositoryTriggerEventList$member": null } }, "RepositoryTriggerEventList": { "base": null, "refs": { "RepositoryTrigger$events": "

        The repository events that will cause the trigger to run actions in another service, such as sending a notification through Amazon Simple Notification Service (SNS). If no events are specified, the trigger will run for all repository events.

        " } }, "RepositoryTriggerEventsListRequiredException": { "base": "

        At least one event for the trigger is required but was not specified.

        ", "refs": { } }, "RepositoryTriggerExecutionFailure": { "base": "

        A trigger failed to run.

        ", "refs": { "RepositoryTriggerExecutionFailureList$member": null } }, "RepositoryTriggerExecutionFailureList": { "base": null, "refs": { "TestRepositoryTriggersOutput$failedExecutions": "

        The list of triggers that were not able to be tested. This list provides the names of the triggers that could not be tested, separated by commas.

        " } }, "RepositoryTriggerExecutionFailureMessage": { "base": null, "refs": { "RepositoryTriggerExecutionFailure$failureMessage": "

        Additional message information about the trigger that did not run.

        " } }, "RepositoryTriggerName": { "base": null, "refs": { "RepositoryTrigger$name": "

        The name of the trigger.

        ", "RepositoryTriggerExecutionFailure$trigger": "

        The name of the trigger that did not run.

        ", "RepositoryTriggerNameList$member": null } }, "RepositoryTriggerNameList": { "base": null, "refs": { "TestRepositoryTriggersOutput$successfulExecutions": "

        The list of triggers that were successfully tested. This list provides the names of the triggers that were successfully tested, separated by commas.

        " } }, "RepositoryTriggerNameRequiredException": { "base": "

        A name for the trigger is required but was not specified.

        ", "refs": { } }, "RepositoryTriggersConfigurationId": { "base": null, "refs": { "GetRepositoryTriggersOutput$configurationId": "

        The system-generated unique ID for the trigger.

        ", "PutRepositoryTriggersOutput$configurationId": "

        The system-generated unique ID for the create or update operation.

        " } }, "RepositoryTriggersList": { "base": null, "refs": { "GetRepositoryTriggersOutput$triggers": "

        The JSON block of configuration information for each trigger.

        ", "PutRepositoryTriggersInput$triggers": "

        The JSON block of configuration information for each trigger.

        ", "TestRepositoryTriggersInput$triggers": "

        The list of triggers to test.

        " } }, "RepositoryTriggersListRequiredException": { "base": "

        The list of triggers for the repository is required but was not specified.

        ", "refs": { } }, "SortByEnum": { "base": null, "refs": { "ListRepositoriesInput$sortBy": "

        The criteria used to sort the results of a list repositories operation.

        " } }, "TestRepositoryTriggersInput": { "base": "

        Represents the input of a test repository triggers operation.

        ", "refs": { } }, "TestRepositoryTriggersOutput": { "base": "

        Represents the output of a test repository triggers operation.

        ", "refs": { } }, "UpdateDefaultBranchInput": { "base": "

        Represents the input of an update default branch operation.

        ", "refs": { } }, "UpdateRepositoryDescriptionInput": { "base": "

        Represents the input of an update repository description operation.

        ", "refs": { } }, "UpdateRepositoryNameInput": { "base": "

        Represents the input of an update repository description operation.

        ", "refs": { } }, "UserInfo": { "base": "

        Information about the user who made a specified commit.

        ", "refs": { "Commit$author": "

        Information about the author of the specified commit.

        ", "Commit$committer": "

        Information about the person who committed the specified commit, also known as the committer. For more information about the difference between an author and a committer in Git, see Viewing the Commit History in Pro Git by Scott Chacon and Ben Straub.

        " } } } } aws-sdk-go-1.4.22/models/apis/codecommit/2015-04-13/examples-1.json000066400000000000000000000000541300374646400240240ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/codecommit/2015-04-13/paginators-1.json000066400000000000000000000005321300374646400243560ustar00rootroot00000000000000{ "pagination": { "ListBranches": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "branches" }, "ListRepositories": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "repositories" } } }aws-sdk-go-1.4.22/models/apis/codedeploy/000077500000000000000000000000001300374646400201315ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/codedeploy/2014-10-06/000077500000000000000000000000001300374646400211605ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/codedeploy/2014-10-06/api-2.json000066400000000000000000001600531300374646400227700ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2014-10-06", "endpointPrefix":"codedeploy", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"CodeDeploy", "serviceFullName":"AWS CodeDeploy", "signatureVersion":"v4", "targetPrefix":"CodeDeploy_20141006", "timestampFormat":"unixTimestamp" }, "operations":{ "AddTagsToOnPremisesInstances":{ "name":"AddTagsToOnPremisesInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsToOnPremisesInstancesInput"}, "errors":[ {"shape":"InstanceNameRequiredException"}, {"shape":"TagRequiredException"}, {"shape":"InvalidTagException"}, {"shape":"TagLimitExceededException"}, {"shape":"InstanceLimitExceededException"}, {"shape":"InstanceNotRegisteredException"} ] }, "BatchGetApplicationRevisions":{ "name":"BatchGetApplicationRevisions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BatchGetApplicationRevisionsInput"}, "output":{"shape":"BatchGetApplicationRevisionsOutput"}, "errors":[ {"shape":"ApplicationDoesNotExistException"}, {"shape":"ApplicationNameRequiredException"}, {"shape":"InvalidApplicationNameException"}, {"shape":"RevisionRequiredException"}, {"shape":"InvalidRevisionException"}, {"shape":"BatchLimitExceededException"} ] }, "BatchGetApplications":{ "name":"BatchGetApplications", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BatchGetApplicationsInput"}, "output":{"shape":"BatchGetApplicationsOutput"}, "errors":[ {"shape":"ApplicationNameRequiredException"}, {"shape":"InvalidApplicationNameException"}, {"shape":"ApplicationDoesNotExistException"}, {"shape":"BatchLimitExceededException"} ] }, "BatchGetDeploymentGroups":{ "name":"BatchGetDeploymentGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BatchGetDeploymentGroupsInput"}, "output":{"shape":"BatchGetDeploymentGroupsOutput"}, "errors":[ {"shape":"ApplicationNameRequiredException"}, {"shape":"InvalidApplicationNameException"}, {"shape":"ApplicationDoesNotExistException"}, {"shape":"DeploymentGroupNameRequiredException"}, {"shape":"InvalidDeploymentGroupNameException"}, {"shape":"BatchLimitExceededException"} ] }, "BatchGetDeploymentInstances":{ "name":"BatchGetDeploymentInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BatchGetDeploymentInstancesInput"}, "output":{"shape":"BatchGetDeploymentInstancesOutput"}, "errors":[ {"shape":"DeploymentIdRequiredException"}, {"shape":"DeploymentDoesNotExistException"}, {"shape":"InstanceIdRequiredException"}, {"shape":"InvalidDeploymentIdException"}, {"shape":"InvalidInstanceNameException"}, {"shape":"BatchLimitExceededException"} ] }, "BatchGetDeployments":{ "name":"BatchGetDeployments", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BatchGetDeploymentsInput"}, "output":{"shape":"BatchGetDeploymentsOutput"}, "errors":[ {"shape":"DeploymentIdRequiredException"}, {"shape":"InvalidDeploymentIdException"}, {"shape":"BatchLimitExceededException"} ] }, "BatchGetOnPremisesInstances":{ "name":"BatchGetOnPremisesInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BatchGetOnPremisesInstancesInput"}, "output":{"shape":"BatchGetOnPremisesInstancesOutput"}, "errors":[ {"shape":"InstanceNameRequiredException"}, {"shape":"InvalidInstanceNameException"}, {"shape":"BatchLimitExceededException"} ] }, "CreateApplication":{ "name":"CreateApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateApplicationInput"}, "output":{"shape":"CreateApplicationOutput"}, "errors":[ {"shape":"ApplicationNameRequiredException"}, {"shape":"InvalidApplicationNameException"}, {"shape":"ApplicationAlreadyExistsException"}, {"shape":"ApplicationLimitExceededException"} ] }, "CreateDeployment":{ "name":"CreateDeployment", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDeploymentInput"}, "output":{"shape":"CreateDeploymentOutput"}, "errors":[ {"shape":"ApplicationNameRequiredException"}, {"shape":"InvalidApplicationNameException"}, {"shape":"ApplicationDoesNotExistException"}, {"shape":"DeploymentGroupNameRequiredException"}, {"shape":"InvalidDeploymentGroupNameException"}, {"shape":"DeploymentGroupDoesNotExistException"}, {"shape":"RevisionRequiredException"}, {"shape":"RevisionDoesNotExistException"}, {"shape":"InvalidRevisionException"}, {"shape":"InvalidDeploymentConfigNameException"}, {"shape":"DeploymentConfigDoesNotExistException"}, {"shape":"DescriptionTooLongException"}, {"shape":"DeploymentLimitExceededException"}, {"shape":"InvalidAutoRollbackConfigException"} ] }, "CreateDeploymentConfig":{ "name":"CreateDeploymentConfig", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDeploymentConfigInput"}, "output":{"shape":"CreateDeploymentConfigOutput"}, "errors":[ {"shape":"InvalidDeploymentConfigNameException"}, {"shape":"DeploymentConfigNameRequiredException"}, {"shape":"DeploymentConfigAlreadyExistsException"}, {"shape":"InvalidMinimumHealthyHostValueException"}, {"shape":"DeploymentConfigLimitExceededException"} ] }, "CreateDeploymentGroup":{ "name":"CreateDeploymentGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDeploymentGroupInput"}, "output":{"shape":"CreateDeploymentGroupOutput"}, "errors":[ {"shape":"ApplicationNameRequiredException"}, {"shape":"InvalidApplicationNameException"}, {"shape":"ApplicationDoesNotExistException"}, {"shape":"DeploymentGroupNameRequiredException"}, {"shape":"InvalidDeploymentGroupNameException"}, {"shape":"DeploymentGroupAlreadyExistsException"}, {"shape":"InvalidEC2TagException"}, {"shape":"InvalidTagException"}, {"shape":"InvalidAutoScalingGroupException"}, {"shape":"InvalidDeploymentConfigNameException"}, {"shape":"DeploymentConfigDoesNotExistException"}, {"shape":"RoleRequiredException"}, {"shape":"InvalidRoleException"}, {"shape":"DeploymentGroupLimitExceededException"}, {"shape":"LifecycleHookLimitExceededException"}, {"shape":"InvalidTriggerConfigException"}, {"shape":"TriggerTargetsLimitExceededException"}, {"shape":"InvalidAlarmConfigException"}, {"shape":"AlarmsLimitExceededException"}, {"shape":"InvalidAutoRollbackConfigException"} ] }, "DeleteApplication":{ "name":"DeleteApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteApplicationInput"}, "errors":[ {"shape":"ApplicationNameRequiredException"}, {"shape":"InvalidApplicationNameException"} ] }, "DeleteDeploymentConfig":{ "name":"DeleteDeploymentConfig", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDeploymentConfigInput"}, "errors":[ {"shape":"InvalidDeploymentConfigNameException"}, {"shape":"DeploymentConfigNameRequiredException"}, {"shape":"DeploymentConfigInUseException"}, {"shape":"InvalidOperationException"} ] }, "DeleteDeploymentGroup":{ "name":"DeleteDeploymentGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDeploymentGroupInput"}, "output":{"shape":"DeleteDeploymentGroupOutput"}, "errors":[ {"shape":"ApplicationNameRequiredException"}, {"shape":"InvalidApplicationNameException"}, {"shape":"DeploymentGroupNameRequiredException"}, {"shape":"InvalidDeploymentGroupNameException"}, {"shape":"InvalidRoleException"} ] }, "DeregisterOnPremisesInstance":{ "name":"DeregisterOnPremisesInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeregisterOnPremisesInstanceInput"}, "errors":[ {"shape":"InstanceNameRequiredException"}, {"shape":"InvalidInstanceNameException"} ] }, "GetApplication":{ "name":"GetApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetApplicationInput"}, "output":{"shape":"GetApplicationOutput"}, "errors":[ {"shape":"ApplicationNameRequiredException"}, {"shape":"InvalidApplicationNameException"}, {"shape":"ApplicationDoesNotExistException"} ] }, "GetApplicationRevision":{ "name":"GetApplicationRevision", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetApplicationRevisionInput"}, "output":{"shape":"GetApplicationRevisionOutput"}, "errors":[ {"shape":"ApplicationDoesNotExistException"}, {"shape":"ApplicationNameRequiredException"}, {"shape":"InvalidApplicationNameException"}, {"shape":"RevisionDoesNotExistException"}, {"shape":"RevisionRequiredException"}, {"shape":"InvalidRevisionException"} ] }, "GetDeployment":{ "name":"GetDeployment", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetDeploymentInput"}, "output":{"shape":"GetDeploymentOutput"}, "errors":[ {"shape":"DeploymentIdRequiredException"}, {"shape":"InvalidDeploymentIdException"}, {"shape":"DeploymentDoesNotExistException"} ] }, "GetDeploymentConfig":{ "name":"GetDeploymentConfig", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetDeploymentConfigInput"}, "output":{"shape":"GetDeploymentConfigOutput"}, "errors":[ {"shape":"InvalidDeploymentConfigNameException"}, {"shape":"DeploymentConfigNameRequiredException"}, {"shape":"DeploymentConfigDoesNotExistException"} ] }, "GetDeploymentGroup":{ "name":"GetDeploymentGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetDeploymentGroupInput"}, "output":{"shape":"GetDeploymentGroupOutput"}, "errors":[ {"shape":"ApplicationNameRequiredException"}, {"shape":"InvalidApplicationNameException"}, {"shape":"ApplicationDoesNotExistException"}, {"shape":"DeploymentGroupNameRequiredException"}, {"shape":"InvalidDeploymentGroupNameException"}, {"shape":"DeploymentGroupDoesNotExistException"} ] }, "GetDeploymentInstance":{ "name":"GetDeploymentInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetDeploymentInstanceInput"}, "output":{"shape":"GetDeploymentInstanceOutput"}, "errors":[ {"shape":"DeploymentIdRequiredException"}, {"shape":"DeploymentDoesNotExistException"}, {"shape":"InstanceIdRequiredException"}, {"shape":"InvalidDeploymentIdException"}, {"shape":"InstanceDoesNotExistException"}, {"shape":"InvalidInstanceNameException"} ] }, "GetOnPremisesInstance":{ "name":"GetOnPremisesInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetOnPremisesInstanceInput"}, "output":{"shape":"GetOnPremisesInstanceOutput"}, "errors":[ {"shape":"InstanceNameRequiredException"}, {"shape":"InstanceNotRegisteredException"}, {"shape":"InvalidInstanceNameException"} ] }, "ListApplicationRevisions":{ "name":"ListApplicationRevisions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListApplicationRevisionsInput"}, "output":{"shape":"ListApplicationRevisionsOutput"}, "errors":[ {"shape":"ApplicationDoesNotExistException"}, {"shape":"ApplicationNameRequiredException"}, {"shape":"InvalidApplicationNameException"}, {"shape":"InvalidSortByException"}, {"shape":"InvalidSortOrderException"}, {"shape":"InvalidBucketNameFilterException"}, {"shape":"InvalidKeyPrefixFilterException"}, {"shape":"BucketNameFilterRequiredException"}, {"shape":"InvalidDeployedStateFilterException"}, {"shape":"InvalidNextTokenException"} ] }, "ListApplications":{ "name":"ListApplications", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListApplicationsInput"}, "output":{"shape":"ListApplicationsOutput"}, "errors":[ {"shape":"InvalidNextTokenException"} ] }, "ListDeploymentConfigs":{ "name":"ListDeploymentConfigs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListDeploymentConfigsInput"}, "output":{"shape":"ListDeploymentConfigsOutput"}, "errors":[ {"shape":"InvalidNextTokenException"} ] }, "ListDeploymentGroups":{ "name":"ListDeploymentGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListDeploymentGroupsInput"}, "output":{"shape":"ListDeploymentGroupsOutput"}, "errors":[ {"shape":"ApplicationNameRequiredException"}, {"shape":"InvalidApplicationNameException"}, {"shape":"ApplicationDoesNotExistException"}, {"shape":"InvalidNextTokenException"} ] }, "ListDeploymentInstances":{ "name":"ListDeploymentInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListDeploymentInstancesInput"}, "output":{"shape":"ListDeploymentInstancesOutput"}, "errors":[ {"shape":"DeploymentIdRequiredException"}, {"shape":"DeploymentDoesNotExistException"}, {"shape":"DeploymentNotStartedException"}, {"shape":"InvalidNextTokenException"}, {"shape":"InvalidDeploymentIdException"}, {"shape":"InvalidInstanceStatusException"} ] }, "ListDeployments":{ "name":"ListDeployments", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListDeploymentsInput"}, "output":{"shape":"ListDeploymentsOutput"}, "errors":[ {"shape":"ApplicationNameRequiredException"}, {"shape":"InvalidApplicationNameException"}, {"shape":"ApplicationDoesNotExistException"}, {"shape":"InvalidDeploymentGroupNameException"}, {"shape":"DeploymentGroupDoesNotExistException"}, {"shape":"DeploymentGroupNameRequiredException"}, {"shape":"InvalidTimeRangeException"}, {"shape":"InvalidDeploymentStatusException"}, {"shape":"InvalidNextTokenException"} ] }, "ListOnPremisesInstances":{ "name":"ListOnPremisesInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListOnPremisesInstancesInput"}, "output":{"shape":"ListOnPremisesInstancesOutput"}, "errors":[ {"shape":"InvalidRegistrationStatusException"}, {"shape":"InvalidTagFilterException"}, {"shape":"InvalidNextTokenException"} ] }, "RegisterApplicationRevision":{ "name":"RegisterApplicationRevision", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterApplicationRevisionInput"}, "errors":[ {"shape":"ApplicationDoesNotExistException"}, {"shape":"ApplicationNameRequiredException"}, {"shape":"InvalidApplicationNameException"}, {"shape":"DescriptionTooLongException"}, {"shape":"RevisionRequiredException"}, {"shape":"InvalidRevisionException"} ] }, "RegisterOnPremisesInstance":{ "name":"RegisterOnPremisesInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterOnPremisesInstanceInput"}, "errors":[ {"shape":"InstanceNameAlreadyRegisteredException"}, {"shape":"IamUserArnAlreadyRegisteredException"}, {"shape":"InstanceNameRequiredException"}, {"shape":"IamUserArnRequiredException"}, {"shape":"InvalidInstanceNameException"}, {"shape":"InvalidIamUserArnException"} ] }, "RemoveTagsFromOnPremisesInstances":{ "name":"RemoveTagsFromOnPremisesInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsFromOnPremisesInstancesInput"}, "errors":[ {"shape":"InstanceNameRequiredException"}, {"shape":"TagRequiredException"}, {"shape":"InvalidTagException"}, {"shape":"TagLimitExceededException"}, {"shape":"InstanceLimitExceededException"}, {"shape":"InstanceNotRegisteredException"} ] }, "StopDeployment":{ "name":"StopDeployment", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopDeploymentInput"}, "output":{"shape":"StopDeploymentOutput"}, "errors":[ {"shape":"DeploymentIdRequiredException"}, {"shape":"DeploymentDoesNotExistException"}, {"shape":"DeploymentAlreadyCompletedException"}, {"shape":"InvalidDeploymentIdException"} ] }, "UpdateApplication":{ "name":"UpdateApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateApplicationInput"}, "errors":[ {"shape":"ApplicationNameRequiredException"}, {"shape":"InvalidApplicationNameException"}, {"shape":"ApplicationAlreadyExistsException"}, {"shape":"ApplicationDoesNotExistException"} ] }, "UpdateDeploymentGroup":{ "name":"UpdateDeploymentGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateDeploymentGroupInput"}, "output":{"shape":"UpdateDeploymentGroupOutput"}, "errors":[ {"shape":"ApplicationNameRequiredException"}, {"shape":"InvalidApplicationNameException"}, {"shape":"ApplicationDoesNotExistException"}, {"shape":"InvalidDeploymentGroupNameException"}, {"shape":"DeploymentGroupAlreadyExistsException"}, {"shape":"DeploymentGroupNameRequiredException"}, {"shape":"DeploymentGroupDoesNotExistException"}, {"shape":"InvalidEC2TagException"}, {"shape":"InvalidTagException"}, {"shape":"InvalidAutoScalingGroupException"}, {"shape":"InvalidDeploymentConfigNameException"}, {"shape":"DeploymentConfigDoesNotExistException"}, {"shape":"InvalidRoleException"}, {"shape":"LifecycleHookLimitExceededException"}, {"shape":"InvalidTriggerConfigException"}, {"shape":"TriggerTargetsLimitExceededException"}, {"shape":"InvalidAlarmConfigException"}, {"shape":"AlarmsLimitExceededException"}, {"shape":"InvalidAutoRollbackConfigException"} ] } }, "shapes":{ "AddTagsToOnPremisesInstancesInput":{ "type":"structure", "required":[ "tags", "instanceNames" ], "members":{ "tags":{"shape":"TagList"}, "instanceNames":{"shape":"InstanceNameList"} } }, "Alarm":{ "type":"structure", "members":{ "name":{"shape":"AlarmName"} } }, "AlarmConfiguration":{ "type":"structure", "members":{ "enabled":{"shape":"Boolean"}, "ignorePollAlarmFailure":{"shape":"Boolean"}, "alarms":{"shape":"AlarmList"} } }, "AlarmList":{ "type":"list", "member":{"shape":"Alarm"} }, "AlarmName":{"type":"string"}, "AlarmsLimitExceededException":{ "type":"structure", "members":{ }, "exception":true }, "ApplicationAlreadyExistsException":{ "type":"structure", "members":{ }, "exception":true }, "ApplicationDoesNotExistException":{ "type":"structure", "members":{ }, "exception":true }, "ApplicationId":{"type":"string"}, "ApplicationInfo":{ "type":"structure", "members":{ "applicationId":{"shape":"ApplicationId"}, "applicationName":{"shape":"ApplicationName"}, "createTime":{"shape":"Timestamp"}, "linkedToGitHub":{"shape":"Boolean"} } }, "ApplicationLimitExceededException":{ "type":"structure", "members":{ }, "exception":true }, "ApplicationName":{ "type":"string", "max":100, "min":1 }, "ApplicationNameRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "ApplicationRevisionSortBy":{ "type":"string", "enum":[ "registerTime", "firstUsedTime", "lastUsedTime" ] }, "ApplicationsInfoList":{ "type":"list", "member":{"shape":"ApplicationInfo"} }, "ApplicationsList":{ "type":"list", "member":{"shape":"ApplicationName"} }, "AutoRollbackConfiguration":{ "type":"structure", "members":{ "enabled":{"shape":"Boolean"}, "events":{"shape":"AutoRollbackEventsList"} } }, "AutoRollbackEvent":{ "type":"string", "enum":[ "DEPLOYMENT_FAILURE", "DEPLOYMENT_STOP_ON_ALARM", "DEPLOYMENT_STOP_ON_REQUEST" ] }, "AutoRollbackEventsList":{ "type":"list", "member":{"shape":"AutoRollbackEvent"} }, "AutoScalingGroup":{ "type":"structure", "members":{ "name":{"shape":"AutoScalingGroupName"}, "hook":{"shape":"AutoScalingGroupHook"} } }, "AutoScalingGroupHook":{"type":"string"}, "AutoScalingGroupList":{ "type":"list", "member":{"shape":"AutoScalingGroup"} }, "AutoScalingGroupName":{"type":"string"}, "AutoScalingGroupNameList":{ "type":"list", "member":{"shape":"AutoScalingGroupName"} }, "BatchGetApplicationRevisionsInput":{ "type":"structure", "required":[ "applicationName", "revisions" ], "members":{ "applicationName":{"shape":"ApplicationName"}, "revisions":{"shape":"RevisionLocationList"} } }, "BatchGetApplicationRevisionsOutput":{ "type":"structure", "members":{ "applicationName":{"shape":"ApplicationName"}, "errorMessage":{"shape":"ErrorMessage"}, "revisions":{"shape":"RevisionInfoList"} } }, "BatchGetApplicationsInput":{ "type":"structure", "members":{ "applicationNames":{"shape":"ApplicationsList"} } }, "BatchGetApplicationsOutput":{ "type":"structure", "members":{ "applicationsInfo":{"shape":"ApplicationsInfoList"} } }, "BatchGetDeploymentGroupsInput":{ "type":"structure", "required":[ "applicationName", "deploymentGroupNames" ], "members":{ "applicationName":{"shape":"ApplicationName"}, "deploymentGroupNames":{"shape":"DeploymentGroupsList"} } }, "BatchGetDeploymentGroupsOutput":{ "type":"structure", "members":{ "deploymentGroupsInfo":{"shape":"DeploymentGroupInfoList"}, "errorMessage":{"shape":"ErrorMessage"} } }, "BatchGetDeploymentInstancesInput":{ "type":"structure", "required":[ "deploymentId", "instanceIds" ], "members":{ "deploymentId":{"shape":"DeploymentId"}, "instanceIds":{"shape":"InstancesList"} } }, "BatchGetDeploymentInstancesOutput":{ "type":"structure", "members":{ "instancesSummary":{"shape":"InstanceSummaryList"}, "errorMessage":{"shape":"ErrorMessage"} } }, "BatchGetDeploymentsInput":{ "type":"structure", "members":{ "deploymentIds":{"shape":"DeploymentsList"} } }, "BatchGetDeploymentsOutput":{ "type":"structure", "members":{ "deploymentsInfo":{"shape":"DeploymentsInfoList"} } }, "BatchGetOnPremisesInstancesInput":{ "type":"structure", "members":{ "instanceNames":{"shape":"InstanceNameList"} } }, "BatchGetOnPremisesInstancesOutput":{ "type":"structure", "members":{ "instanceInfos":{"shape":"InstanceInfoList"} } }, "BatchLimitExceededException":{ "type":"structure", "members":{ }, "exception":true }, "Boolean":{"type":"boolean"}, "BucketNameFilterRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "BundleType":{ "type":"string", "enum":[ "tar", "tgz", "zip" ] }, "CommitId":{"type":"string"}, "CreateApplicationInput":{ "type":"structure", "required":["applicationName"], "members":{ "applicationName":{"shape":"ApplicationName"} } }, "CreateApplicationOutput":{ "type":"structure", "members":{ "applicationId":{"shape":"ApplicationId"} } }, "CreateDeploymentConfigInput":{ "type":"structure", "required":["deploymentConfigName"], "members":{ "deploymentConfigName":{"shape":"DeploymentConfigName"}, "minimumHealthyHosts":{"shape":"MinimumHealthyHosts"} } }, "CreateDeploymentConfigOutput":{ "type":"structure", "members":{ "deploymentConfigId":{"shape":"DeploymentConfigId"} } }, "CreateDeploymentGroupInput":{ "type":"structure", "required":[ "applicationName", "deploymentGroupName", "serviceRoleArn" ], "members":{ "applicationName":{"shape":"ApplicationName"}, "deploymentGroupName":{"shape":"DeploymentGroupName"}, "deploymentConfigName":{"shape":"DeploymentConfigName"}, "ec2TagFilters":{"shape":"EC2TagFilterList"}, "onPremisesInstanceTagFilters":{"shape":"TagFilterList"}, "autoScalingGroups":{"shape":"AutoScalingGroupNameList"}, "serviceRoleArn":{"shape":"Role"}, "triggerConfigurations":{"shape":"TriggerConfigList"}, "alarmConfiguration":{"shape":"AlarmConfiguration"}, "autoRollbackConfiguration":{"shape":"AutoRollbackConfiguration"} } }, "CreateDeploymentGroupOutput":{ "type":"structure", "members":{ "deploymentGroupId":{"shape":"DeploymentGroupId"} } }, "CreateDeploymentInput":{ "type":"structure", "required":["applicationName"], "members":{ "applicationName":{"shape":"ApplicationName"}, "deploymentGroupName":{"shape":"DeploymentGroupName"}, "revision":{"shape":"RevisionLocation"}, "deploymentConfigName":{"shape":"DeploymentConfigName"}, "description":{"shape":"Description"}, "ignoreApplicationStopFailures":{"shape":"Boolean"}, "autoRollbackConfiguration":{"shape":"AutoRollbackConfiguration"}, "updateOutdatedInstancesOnly":{"shape":"Boolean"} } }, "CreateDeploymentOutput":{ "type":"structure", "members":{ "deploymentId":{"shape":"DeploymentId"} } }, "DeleteApplicationInput":{ "type":"structure", "required":["applicationName"], "members":{ "applicationName":{"shape":"ApplicationName"} } }, "DeleteDeploymentConfigInput":{ "type":"structure", "required":["deploymentConfigName"], "members":{ "deploymentConfigName":{"shape":"DeploymentConfigName"} } }, "DeleteDeploymentGroupInput":{ "type":"structure", "required":[ "applicationName", "deploymentGroupName" ], "members":{ "applicationName":{"shape":"ApplicationName"}, "deploymentGroupName":{"shape":"DeploymentGroupName"} } }, "DeleteDeploymentGroupOutput":{ "type":"structure", "members":{ "hooksNotCleanedUp":{"shape":"AutoScalingGroupList"} } }, "DeploymentAlreadyCompletedException":{ "type":"structure", "members":{ }, "exception":true }, "DeploymentConfigAlreadyExistsException":{ "type":"structure", "members":{ }, "exception":true }, "DeploymentConfigDoesNotExistException":{ "type":"structure", "members":{ }, "exception":true }, "DeploymentConfigId":{"type":"string"}, "DeploymentConfigInUseException":{ "type":"structure", "members":{ }, "exception":true }, "DeploymentConfigInfo":{ "type":"structure", "members":{ "deploymentConfigId":{"shape":"DeploymentConfigId"}, "deploymentConfigName":{"shape":"DeploymentConfigName"}, "minimumHealthyHosts":{"shape":"MinimumHealthyHosts"}, "createTime":{"shape":"Timestamp"} } }, "DeploymentConfigLimitExceededException":{ "type":"structure", "members":{ }, "exception":true }, "DeploymentConfigName":{ "type":"string", "max":100, "min":1 }, "DeploymentConfigNameRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "DeploymentConfigsList":{ "type":"list", "member":{"shape":"DeploymentConfigName"} }, "DeploymentCreator":{ "type":"string", "enum":[ "user", "autoscaling", "codeDeployRollback" ] }, "DeploymentDoesNotExistException":{ "type":"structure", "members":{ }, "exception":true }, "DeploymentGroupAlreadyExistsException":{ "type":"structure", "members":{ }, "exception":true }, "DeploymentGroupDoesNotExistException":{ "type":"structure", "members":{ }, "exception":true }, "DeploymentGroupId":{"type":"string"}, "DeploymentGroupInfo":{ "type":"structure", "members":{ "applicationName":{"shape":"ApplicationName"}, "deploymentGroupId":{"shape":"DeploymentGroupId"}, "deploymentGroupName":{"shape":"DeploymentGroupName"}, "deploymentConfigName":{"shape":"DeploymentConfigName"}, "ec2TagFilters":{"shape":"EC2TagFilterList"}, "onPremisesInstanceTagFilters":{"shape":"TagFilterList"}, "autoScalingGroups":{"shape":"AutoScalingGroupList"}, "serviceRoleArn":{"shape":"Role"}, "targetRevision":{"shape":"RevisionLocation"}, "triggerConfigurations":{"shape":"TriggerConfigList"}, "alarmConfiguration":{"shape":"AlarmConfiguration"}, "autoRollbackConfiguration":{"shape":"AutoRollbackConfiguration"} } }, "DeploymentGroupInfoList":{ "type":"list", "member":{"shape":"DeploymentGroupInfo"} }, "DeploymentGroupLimitExceededException":{ "type":"structure", "members":{ }, "exception":true }, "DeploymentGroupName":{ "type":"string", "max":100, "min":1 }, "DeploymentGroupNameRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "DeploymentGroupsList":{ "type":"list", "member":{"shape":"DeploymentGroupName"} }, "DeploymentId":{"type":"string"}, "DeploymentIdRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "DeploymentInfo":{ "type":"structure", "members":{ "applicationName":{"shape":"ApplicationName"}, "deploymentGroupName":{"shape":"DeploymentGroupName"}, "deploymentConfigName":{"shape":"DeploymentConfigName"}, "deploymentId":{"shape":"DeploymentId"}, "revision":{"shape":"RevisionLocation"}, "status":{"shape":"DeploymentStatus"}, "errorInformation":{"shape":"ErrorInformation"}, "createTime":{"shape":"Timestamp"}, "startTime":{"shape":"Timestamp"}, "completeTime":{"shape":"Timestamp"}, "deploymentOverview":{"shape":"DeploymentOverview"}, "description":{"shape":"Description"}, "creator":{"shape":"DeploymentCreator"}, "ignoreApplicationStopFailures":{"shape":"Boolean"}, "autoRollbackConfiguration":{"shape":"AutoRollbackConfiguration"}, "updateOutdatedInstancesOnly":{"shape":"Boolean"}, "rollbackInfo":{"shape":"RollbackInfo"} } }, "DeploymentLimitExceededException":{ "type":"structure", "members":{ }, "exception":true }, "DeploymentNotStartedException":{ "type":"structure", "members":{ }, "exception":true }, "DeploymentOverview":{ "type":"structure", "members":{ "Pending":{"shape":"InstanceCount"}, "InProgress":{"shape":"InstanceCount"}, "Succeeded":{"shape":"InstanceCount"}, "Failed":{"shape":"InstanceCount"}, "Skipped":{"shape":"InstanceCount"} } }, "DeploymentStatus":{ "type":"string", "enum":[ "Created", "Queued", "InProgress", "Succeeded", "Failed", "Stopped" ] }, "DeploymentStatusList":{ "type":"list", "member":{"shape":"DeploymentStatus"} }, "DeploymentsInfoList":{ "type":"list", "member":{"shape":"DeploymentInfo"} }, "DeploymentsList":{ "type":"list", "member":{"shape":"DeploymentId"} }, "DeregisterOnPremisesInstanceInput":{ "type":"structure", "required":["instanceName"], "members":{ "instanceName":{"shape":"InstanceName"} } }, "Description":{"type":"string"}, "DescriptionTooLongException":{ "type":"structure", "members":{ }, "exception":true }, "Diagnostics":{ "type":"structure", "members":{ "errorCode":{"shape":"LifecycleErrorCode"}, "scriptName":{"shape":"ScriptName"}, "message":{"shape":"LifecycleMessage"}, "logTail":{"shape":"LogTail"} } }, "EC2TagFilter":{ "type":"structure", "members":{ "Key":{"shape":"Key"}, "Value":{"shape":"Value"}, "Type":{"shape":"EC2TagFilterType"} } }, "EC2TagFilterList":{ "type":"list", "member":{"shape":"EC2TagFilter"} }, "EC2TagFilterType":{ "type":"string", "enum":[ "KEY_ONLY", "VALUE_ONLY", "KEY_AND_VALUE" ] }, "ETag":{"type":"string"}, "ErrorCode":{ "type":"string", "enum":[ "DEPLOYMENT_GROUP_MISSING", "APPLICATION_MISSING", "REVISION_MISSING", "IAM_ROLE_MISSING", "IAM_ROLE_PERMISSIONS", "NO_EC2_SUBSCRIPTION", "OVER_MAX_INSTANCES", "NO_INSTANCES", "TIMEOUT", "HEALTH_CONSTRAINTS_INVALID", "HEALTH_CONSTRAINTS", "INTERNAL_ERROR", "THROTTLED", "ALARM_ACTIVE", "AGENT_ISSUE", "AUTO_SCALING_IAM_ROLE_PERMISSIONS", "AUTO_SCALING_CONFIGURATION", "MANUAL_STOP" ] }, "ErrorInformation":{ "type":"structure", "members":{ "code":{"shape":"ErrorCode"}, "message":{"shape":"ErrorMessage"} } }, "ErrorMessage":{"type":"string"}, "GenericRevisionInfo":{ "type":"structure", "members":{ "description":{"shape":"Description"}, "deploymentGroups":{"shape":"DeploymentGroupsList"}, "firstUsedTime":{"shape":"Timestamp"}, "lastUsedTime":{"shape":"Timestamp"}, "registerTime":{"shape":"Timestamp"} } }, "GetApplicationInput":{ "type":"structure", "required":["applicationName"], "members":{ "applicationName":{"shape":"ApplicationName"} } }, "GetApplicationOutput":{ "type":"structure", "members":{ "application":{"shape":"ApplicationInfo"} } }, "GetApplicationRevisionInput":{ "type":"structure", "required":[ "applicationName", "revision" ], "members":{ "applicationName":{"shape":"ApplicationName"}, "revision":{"shape":"RevisionLocation"} } }, "GetApplicationRevisionOutput":{ "type":"structure", "members":{ "applicationName":{"shape":"ApplicationName"}, "revision":{"shape":"RevisionLocation"}, "revisionInfo":{"shape":"GenericRevisionInfo"} } }, "GetDeploymentConfigInput":{ "type":"structure", "required":["deploymentConfigName"], "members":{ "deploymentConfigName":{"shape":"DeploymentConfigName"} } }, "GetDeploymentConfigOutput":{ "type":"structure", "members":{ "deploymentConfigInfo":{"shape":"DeploymentConfigInfo"} } }, "GetDeploymentGroupInput":{ "type":"structure", "required":[ "applicationName", "deploymentGroupName" ], "members":{ "applicationName":{"shape":"ApplicationName"}, "deploymentGroupName":{"shape":"DeploymentGroupName"} } }, "GetDeploymentGroupOutput":{ "type":"structure", "members":{ "deploymentGroupInfo":{"shape":"DeploymentGroupInfo"} } }, "GetDeploymentInput":{ "type":"structure", "required":["deploymentId"], "members":{ "deploymentId":{"shape":"DeploymentId"} } }, "GetDeploymentInstanceInput":{ "type":"structure", "required":[ "deploymentId", "instanceId" ], "members":{ "deploymentId":{"shape":"DeploymentId"}, "instanceId":{"shape":"InstanceId"} } }, "GetDeploymentInstanceOutput":{ "type":"structure", "members":{ "instanceSummary":{"shape":"InstanceSummary"} } }, "GetDeploymentOutput":{ "type":"structure", "members":{ "deploymentInfo":{"shape":"DeploymentInfo"} } }, "GetOnPremisesInstanceInput":{ "type":"structure", "required":["instanceName"], "members":{ "instanceName":{"shape":"InstanceName"} } }, "GetOnPremisesInstanceOutput":{ "type":"structure", "members":{ "instanceInfo":{"shape":"InstanceInfo"} } }, "GitHubLocation":{ "type":"structure", "members":{ "repository":{"shape":"Repository"}, "commitId":{"shape":"CommitId"} } }, "IamUserArn":{"type":"string"}, "IamUserArnAlreadyRegisteredException":{ "type":"structure", "members":{ }, "exception":true }, "IamUserArnRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "InstanceArn":{"type":"string"}, "InstanceCount":{"type":"long"}, "InstanceDoesNotExistException":{ "type":"structure", "members":{ }, "exception":true }, "InstanceId":{"type":"string"}, "InstanceIdRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "InstanceInfo":{ "type":"structure", "members":{ "instanceName":{"shape":"InstanceName"}, "iamUserArn":{"shape":"IamUserArn"}, "instanceArn":{"shape":"InstanceArn"}, "registerTime":{"shape":"Timestamp"}, "deregisterTime":{"shape":"Timestamp"}, "tags":{"shape":"TagList"} } }, "InstanceInfoList":{ "type":"list", "member":{"shape":"InstanceInfo"} }, "InstanceLimitExceededException":{ "type":"structure", "members":{ }, "exception":true }, "InstanceName":{"type":"string"}, "InstanceNameAlreadyRegisteredException":{ "type":"structure", "members":{ }, "exception":true }, "InstanceNameList":{ "type":"list", "member":{"shape":"InstanceName"} }, "InstanceNameRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "InstanceNotRegisteredException":{ "type":"structure", "members":{ }, "exception":true }, "InstanceStatus":{ "type":"string", "enum":[ "Pending", "InProgress", "Succeeded", "Failed", "Skipped", "Unknown" ] }, "InstanceStatusList":{ "type":"list", "member":{"shape":"InstanceStatus"} }, "InstanceSummary":{ "type":"structure", "members":{ "deploymentId":{"shape":"DeploymentId"}, "instanceId":{"shape":"InstanceId"}, "status":{"shape":"InstanceStatus"}, "lastUpdatedAt":{"shape":"Timestamp"}, "lifecycleEvents":{"shape":"LifecycleEventList"} } }, "InstanceSummaryList":{ "type":"list", "member":{"shape":"InstanceSummary"} }, "InstancesList":{ "type":"list", "member":{"shape":"InstanceId"} }, "InvalidAlarmConfigException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidApplicationNameException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidAutoRollbackConfigException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidAutoScalingGroupException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidBucketNameFilterException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidDeployedStateFilterException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidDeploymentConfigNameException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidDeploymentGroupNameException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidDeploymentIdException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidDeploymentStatusException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidEC2TagException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidIamUserArnException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidInstanceNameException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidInstanceStatusException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidKeyPrefixFilterException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidMinimumHealthyHostValueException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidNextTokenException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidOperationException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidRegistrationStatusException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidRevisionException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidRoleException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidSortByException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidSortOrderException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidTagException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidTagFilterException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidTimeRangeException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidTriggerConfigException":{ "type":"structure", "members":{ }, "exception":true }, "Key":{"type":"string"}, "LifecycleErrorCode":{ "type":"string", "enum":[ "Success", "ScriptMissing", "ScriptNotExecutable", "ScriptTimedOut", "ScriptFailed", "UnknownError" ] }, "LifecycleEvent":{ "type":"structure", "members":{ "lifecycleEventName":{"shape":"LifecycleEventName"}, "diagnostics":{"shape":"Diagnostics"}, "startTime":{"shape":"Timestamp"}, "endTime":{"shape":"Timestamp"}, "status":{"shape":"LifecycleEventStatus"} } }, "LifecycleEventList":{ "type":"list", "member":{"shape":"LifecycleEvent"} }, "LifecycleEventName":{"type":"string"}, "LifecycleEventStatus":{ "type":"string", "enum":[ "Pending", "InProgress", "Succeeded", "Failed", "Skipped", "Unknown" ] }, "LifecycleHookLimitExceededException":{ "type":"structure", "members":{ }, "exception":true }, "LifecycleMessage":{"type":"string"}, "ListApplicationRevisionsInput":{ "type":"structure", "required":["applicationName"], "members":{ "applicationName":{"shape":"ApplicationName"}, "sortBy":{"shape":"ApplicationRevisionSortBy"}, "sortOrder":{"shape":"SortOrder"}, "s3Bucket":{"shape":"S3Bucket"}, "s3KeyPrefix":{"shape":"S3Key"}, "deployed":{"shape":"ListStateFilterAction"}, "nextToken":{"shape":"NextToken"} } }, "ListApplicationRevisionsOutput":{ "type":"structure", "members":{ "revisions":{"shape":"RevisionLocationList"}, "nextToken":{"shape":"NextToken"} } }, "ListApplicationsInput":{ "type":"structure", "members":{ "nextToken":{"shape":"NextToken"} } }, "ListApplicationsOutput":{ "type":"structure", "members":{ "applications":{"shape":"ApplicationsList"}, "nextToken":{"shape":"NextToken"} } }, "ListDeploymentConfigsInput":{ "type":"structure", "members":{ "nextToken":{"shape":"NextToken"} } }, "ListDeploymentConfigsOutput":{ "type":"structure", "members":{ "deploymentConfigsList":{"shape":"DeploymentConfigsList"}, "nextToken":{"shape":"NextToken"} } }, "ListDeploymentGroupsInput":{ "type":"structure", "required":["applicationName"], "members":{ "applicationName":{"shape":"ApplicationName"}, "nextToken":{"shape":"NextToken"} } }, "ListDeploymentGroupsOutput":{ "type":"structure", "members":{ "applicationName":{"shape":"ApplicationName"}, "deploymentGroups":{"shape":"DeploymentGroupsList"}, "nextToken":{"shape":"NextToken"} } }, "ListDeploymentInstancesInput":{ "type":"structure", "required":["deploymentId"], "members":{ "deploymentId":{"shape":"DeploymentId"}, "nextToken":{"shape":"NextToken"}, "instanceStatusFilter":{"shape":"InstanceStatusList"} } }, "ListDeploymentInstancesOutput":{ "type":"structure", "members":{ "instancesList":{"shape":"InstancesList"}, "nextToken":{"shape":"NextToken"} } }, "ListDeploymentsInput":{ "type":"structure", "members":{ "applicationName":{"shape":"ApplicationName"}, "deploymentGroupName":{"shape":"DeploymentGroupName"}, "includeOnlyStatuses":{"shape":"DeploymentStatusList"}, "createTimeRange":{"shape":"TimeRange"}, "nextToken":{"shape":"NextToken"} } }, "ListDeploymentsOutput":{ "type":"structure", "members":{ "deployments":{"shape":"DeploymentsList"}, "nextToken":{"shape":"NextToken"} } }, "ListOnPremisesInstancesInput":{ "type":"structure", "members":{ "registrationStatus":{"shape":"RegistrationStatus"}, "tagFilters":{"shape":"TagFilterList"}, "nextToken":{"shape":"NextToken"} } }, "ListOnPremisesInstancesOutput":{ "type":"structure", "members":{ "instanceNames":{"shape":"InstanceNameList"}, "nextToken":{"shape":"NextToken"} } }, "ListStateFilterAction":{ "type":"string", "enum":[ "include", "exclude", "ignore" ] }, "LogTail":{"type":"string"}, "Message":{"type":"string"}, "MinimumHealthyHosts":{ "type":"structure", "members":{ "value":{"shape":"MinimumHealthyHostsValue"}, "type":{"shape":"MinimumHealthyHostsType"} } }, "MinimumHealthyHostsType":{ "type":"string", "enum":[ "HOST_COUNT", "FLEET_PERCENT" ] }, "MinimumHealthyHostsValue":{"type":"integer"}, "NextToken":{"type":"string"}, "NullableBoolean":{"type":"boolean"}, "RegisterApplicationRevisionInput":{ "type":"structure", "required":[ "applicationName", "revision" ], "members":{ "applicationName":{"shape":"ApplicationName"}, "description":{"shape":"Description"}, "revision":{"shape":"RevisionLocation"} } }, "RegisterOnPremisesInstanceInput":{ "type":"structure", "required":[ "instanceName", "iamUserArn" ], "members":{ "instanceName":{"shape":"InstanceName"}, "iamUserArn":{"shape":"IamUserArn"} } }, "RegistrationStatus":{ "type":"string", "enum":[ "Registered", "Deregistered" ] }, "RemoveTagsFromOnPremisesInstancesInput":{ "type":"structure", "required":[ "tags", "instanceNames" ], "members":{ "tags":{"shape":"TagList"}, "instanceNames":{"shape":"InstanceNameList"} } }, "Repository":{"type":"string"}, "RevisionDoesNotExistException":{ "type":"structure", "members":{ }, "exception":true }, "RevisionInfo":{ "type":"structure", "members":{ "revisionLocation":{"shape":"RevisionLocation"}, "genericRevisionInfo":{"shape":"GenericRevisionInfo"} } }, "RevisionInfoList":{ "type":"list", "member":{"shape":"RevisionInfo"} }, "RevisionLocation":{ "type":"structure", "members":{ "revisionType":{"shape":"RevisionLocationType"}, "s3Location":{"shape":"S3Location"}, "gitHubLocation":{"shape":"GitHubLocation"} } }, "RevisionLocationList":{ "type":"list", "member":{"shape":"RevisionLocation"} }, "RevisionLocationType":{ "type":"string", "enum":[ "S3", "GitHub" ] }, "RevisionRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "Role":{"type":"string"}, "RoleRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "RollbackInfo":{ "type":"structure", "members":{ "rollbackDeploymentId":{"shape":"DeploymentId"}, "rollbackTriggeringDeploymentId":{"shape":"DeploymentId"}, "rollbackMessage":{"shape":"Description"} } }, "S3Bucket":{"type":"string"}, "S3Key":{"type":"string"}, "S3Location":{ "type":"structure", "members":{ "bucket":{"shape":"S3Bucket"}, "key":{"shape":"S3Key"}, "bundleType":{"shape":"BundleType"}, "version":{"shape":"VersionId"}, "eTag":{"shape":"ETag"} } }, "ScriptName":{"type":"string"}, "SortOrder":{ "type":"string", "enum":[ "ascending", "descending" ] }, "StopDeploymentInput":{ "type":"structure", "required":["deploymentId"], "members":{ "deploymentId":{"shape":"DeploymentId"}, "autoRollbackEnabled":{"shape":"NullableBoolean"} } }, "StopDeploymentOutput":{ "type":"structure", "members":{ "status":{"shape":"StopStatus"}, "statusMessage":{"shape":"Message"} } }, "StopStatus":{ "type":"string", "enum":[ "Pending", "Succeeded" ] }, "Tag":{ "type":"structure", "members":{ "Key":{"shape":"Key"}, "Value":{"shape":"Value"} } }, "TagFilter":{ "type":"structure", "members":{ "Key":{"shape":"Key"}, "Value":{"shape":"Value"}, "Type":{"shape":"TagFilterType"} } }, "TagFilterList":{ "type":"list", "member":{"shape":"TagFilter"} }, "TagFilterType":{ "type":"string", "enum":[ "KEY_ONLY", "VALUE_ONLY", "KEY_AND_VALUE" ] }, "TagLimitExceededException":{ "type":"structure", "members":{ }, "exception":true }, "TagList":{ "type":"list", "member":{"shape":"Tag"} }, "TagRequiredException":{ "type":"structure", "members":{ }, "exception":true }, "TimeRange":{ "type":"structure", "members":{ "start":{"shape":"Timestamp"}, "end":{"shape":"Timestamp"} } }, "Timestamp":{"type":"timestamp"}, "TriggerConfig":{ "type":"structure", "members":{ "triggerName":{"shape":"TriggerName"}, "triggerTargetArn":{"shape":"TriggerTargetArn"}, "triggerEvents":{"shape":"TriggerEventTypeList"} } }, "TriggerConfigList":{ "type":"list", "member":{"shape":"TriggerConfig"} }, "TriggerEventType":{ "type":"string", "enum":[ "DeploymentStart", "DeploymentSuccess", "DeploymentFailure", "DeploymentStop", "DeploymentRollback", "InstanceStart", "InstanceSuccess", "InstanceFailure" ] }, "TriggerEventTypeList":{ "type":"list", "member":{"shape":"TriggerEventType"} }, "TriggerName":{"type":"string"}, "TriggerTargetArn":{"type":"string"}, "TriggerTargetsLimitExceededException":{ "type":"structure", "members":{ }, "exception":true }, "UpdateApplicationInput":{ "type":"structure", "members":{ "applicationName":{"shape":"ApplicationName"}, "newApplicationName":{"shape":"ApplicationName"} } }, "UpdateDeploymentGroupInput":{ "type":"structure", "required":[ "applicationName", "currentDeploymentGroupName" ], "members":{ "applicationName":{"shape":"ApplicationName"}, "currentDeploymentGroupName":{"shape":"DeploymentGroupName"}, "newDeploymentGroupName":{"shape":"DeploymentGroupName"}, "deploymentConfigName":{"shape":"DeploymentConfigName"}, "ec2TagFilters":{"shape":"EC2TagFilterList"}, "onPremisesInstanceTagFilters":{"shape":"TagFilterList"}, "autoScalingGroups":{"shape":"AutoScalingGroupNameList"}, "serviceRoleArn":{"shape":"Role"}, "triggerConfigurations":{"shape":"TriggerConfigList"}, "alarmConfiguration":{"shape":"AlarmConfiguration"}, "autoRollbackConfiguration":{"shape":"AutoRollbackConfiguration"} } }, "UpdateDeploymentGroupOutput":{ "type":"structure", "members":{ "hooksNotCleanedUp":{"shape":"AutoScalingGroupList"} } }, "Value":{"type":"string"}, "VersionId":{"type":"string"} } } aws-sdk-go-1.4.22/models/apis/codedeploy/2014-10-06/docs-2.json000066400000000000000000002367531300374646400231620ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS CodeDeploy

        Overview

        This reference guide provides descriptions of the AWS CodeDeploy APIs. For more information about AWS CodeDeploy, see the AWS CodeDeploy User Guide.

        Using the APIs

        You can use the AWS CodeDeploy APIs to work with the following:

        • Applications are unique identifiers used by AWS CodeDeploy to ensure the correct combinations of revisions, deployment configurations, and deployment groups are being referenced during deployments.

          You can use the AWS CodeDeploy APIs to create, delete, get, list, and update applications.

        • Deployment configurations are sets of deployment rules and success and failure conditions used by AWS CodeDeploy during deployments.

          You can use the AWS CodeDeploy APIs to create, delete, get, and list deployment configurations.

        • Deployment groups are groups of instances to which application revisions can be deployed.

          You can use the AWS CodeDeploy APIs to create, delete, get, list, and update deployment groups.

        • Instances represent Amazon EC2 instances to which application revisions are deployed. Instances are identified by their Amazon EC2 tags or Auto Scaling group names. Instances belong to deployment groups.

          You can use the AWS CodeDeploy APIs to get and list instance.

        • Deployments represent the process of deploying revisions to instances.

          You can use the AWS CodeDeploy APIs to create, get, list, and stop deployments.

        • Application revisions are archive files stored in Amazon S3 buckets or GitHub repositories. These revisions contain source content (such as source code, web pages, executable files, and deployment scripts) along with an application specification (AppSpec) file. (The AppSpec file is unique to AWS CodeDeploy; it defines the deployment actions you want AWS CodeDeploy to execute.) For application revisions stored in Amazon S3 buckets, an application revision is uniquely identified by its Amazon S3 object key and its ETag, version, or both. For application revisions stored in GitHub repositories, an application revision is uniquely identified by its repository name and commit ID. Application revisions are deployed through deployment groups.

          You can use the AWS CodeDeploy APIs to get, list, and register application revisions.

        ", "operations": { "AddTagsToOnPremisesInstances": "

        Adds tags to on-premises instances.

        ", "BatchGetApplicationRevisions": "

        Gets information about one or more application revisions.

        ", "BatchGetApplications": "

        Gets information about one or more applications.

        ", "BatchGetDeploymentGroups": "

        Get information about one or more deployment groups.

        ", "BatchGetDeploymentInstances": "

        Gets information about one or more instance that are part of a deployment group.

        ", "BatchGetDeployments": "

        Gets information about one or more deployments.

        ", "BatchGetOnPremisesInstances": "

        Gets information about one or more on-premises instances.

        ", "CreateApplication": "

        Creates an application.

        ", "CreateDeployment": "

        Deploys an application revision through the specified deployment group.

        ", "CreateDeploymentConfig": "

        Creates a deployment configuration.

        ", "CreateDeploymentGroup": "

        Creates a deployment group to which application revisions will be deployed.

        ", "DeleteApplication": "

        Deletes an application.

        ", "DeleteDeploymentConfig": "

        Deletes a deployment configuration.

        A deployment configuration cannot be deleted if it is currently in use. Predefined configurations cannot be deleted.

        ", "DeleteDeploymentGroup": "

        Deletes a deployment group.

        ", "DeregisterOnPremisesInstance": "

        Deregisters an on-premises instance.

        ", "GetApplication": "

        Gets information about an application.

        ", "GetApplicationRevision": "

        Gets information about an application revision.

        ", "GetDeployment": "

        Gets information about a deployment.

        ", "GetDeploymentConfig": "

        Gets information about a deployment configuration.

        ", "GetDeploymentGroup": "

        Gets information about a deployment group.

        ", "GetDeploymentInstance": "

        Gets information about an instance as part of a deployment.

        ", "GetOnPremisesInstance": "

        Gets information about an on-premises instance.

        ", "ListApplicationRevisions": "

        Lists information about revisions for an application.

        ", "ListApplications": "

        Lists the applications registered with the applicable IAM user or AWS account.

        ", "ListDeploymentConfigs": "

        Lists the deployment configurations with the applicable IAM user or AWS account.

        ", "ListDeploymentGroups": "

        Lists the deployment groups for an application registered with the applicable IAM user or AWS account.

        ", "ListDeploymentInstances": "

        Lists the instance for a deployment associated with the applicable IAM user or AWS account.

        ", "ListDeployments": "

        Lists the deployments in a deployment group for an application registered with the applicable IAM user or AWS account.

        ", "ListOnPremisesInstances": "

        Gets a list of names for one or more on-premises instances.

        Unless otherwise specified, both registered and deregistered on-premises instance names will be listed. To list only registered or deregistered on-premises instance names, use the registration status parameter.

        ", "RegisterApplicationRevision": "

        Registers with AWS CodeDeploy a revision for the specified application.

        ", "RegisterOnPremisesInstance": "

        Registers an on-premises instance.

        ", "RemoveTagsFromOnPremisesInstances": "

        Removes one or more tags from one or more on-premises instances.

        ", "StopDeployment": "

        Attempts to stop an ongoing deployment.

        ", "UpdateApplication": "

        Changes the name of an application.

        ", "UpdateDeploymentGroup": "

        Changes information about a deployment group.

        " }, "shapes": { "AddTagsToOnPremisesInstancesInput": { "base": "

        Represents the input of, and adds tags to, an on-premises instance operation.

        ", "refs": { } }, "Alarm": { "base": "

        Information about an alarm.

        ", "refs": { "AlarmList$member": null } }, "AlarmConfiguration": { "base": "

        Information about alarms associated with the deployment group.

        ", "refs": { "CreateDeploymentGroupInput$alarmConfiguration": "

        Information to add about Amazon CloudWatch alarms when the deployment group is created.

        ", "DeploymentGroupInfo$alarmConfiguration": "

        A list of alarms associated with the deployment group.

        ", "UpdateDeploymentGroupInput$alarmConfiguration": "

        Information to add or change about Amazon CloudWatch alarms when the deployment group is updated.

        " } }, "AlarmList": { "base": null, "refs": { "AlarmConfiguration$alarms": "

        A list of alarms configured for the deployment group. A maximum of 10 alarms can be added to a deployment group.

        " } }, "AlarmName": { "base": null, "refs": { "Alarm$name": "

        The name of the alarm. Maximum length is 255 characters. Each alarm name can be used only once in a list of alarms.

        " } }, "AlarmsLimitExceededException": { "base": "

        The maximum number of alarms for a deployment group (10) was exceeded.

        ", "refs": { } }, "ApplicationAlreadyExistsException": { "base": "

        An application with the specified name already exists with the applicable IAM user or AWS account.

        ", "refs": { } }, "ApplicationDoesNotExistException": { "base": "

        The application does not exist with the applicable IAM user or AWS account.

        ", "refs": { } }, "ApplicationId": { "base": null, "refs": { "ApplicationInfo$applicationId": "

        The application ID.

        ", "CreateApplicationOutput$applicationId": "

        A unique application ID.

        " } }, "ApplicationInfo": { "base": "

        Information about an application.

        ", "refs": { "ApplicationsInfoList$member": null, "GetApplicationOutput$application": "

        Information about the application.

        " } }, "ApplicationLimitExceededException": { "base": "

        More applications were attempted to be created than are allowed.

        ", "refs": { } }, "ApplicationName": { "base": null, "refs": { "ApplicationInfo$applicationName": "

        The application name.

        ", "ApplicationsList$member": null, "BatchGetApplicationRevisionsInput$applicationName": "

        The name of an AWS CodeDeploy application about which to get revision information.

        ", "BatchGetApplicationRevisionsOutput$applicationName": "

        The name of the application that corresponds to the revisions.

        ", "BatchGetDeploymentGroupsInput$applicationName": "

        The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.

        ", "CreateApplicationInput$applicationName": "

        The name of the application. This name must be unique with the applicable IAM user or AWS account.

        ", "CreateDeploymentGroupInput$applicationName": "

        The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.

        ", "CreateDeploymentInput$applicationName": "

        The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.

        ", "DeleteApplicationInput$applicationName": "

        The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.

        ", "DeleteDeploymentGroupInput$applicationName": "

        The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.

        ", "DeploymentGroupInfo$applicationName": "

        The application name.

        ", "DeploymentInfo$applicationName": "

        The application name.

        ", "GetApplicationInput$applicationName": "

        The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.

        ", "GetApplicationRevisionInput$applicationName": "

        The name of the application that corresponds to the revision.

        ", "GetApplicationRevisionOutput$applicationName": "

        The name of the application that corresponds to the revision.

        ", "GetDeploymentGroupInput$applicationName": "

        The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.

        ", "ListApplicationRevisionsInput$applicationName": "

        The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.

        ", "ListDeploymentGroupsInput$applicationName": "

        The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.

        ", "ListDeploymentGroupsOutput$applicationName": "

        The application name.

        ", "ListDeploymentsInput$applicationName": "

        The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.

        ", "RegisterApplicationRevisionInput$applicationName": "

        The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.

        ", "UpdateApplicationInput$applicationName": "

        The current name of the application you want to change.

        ", "UpdateApplicationInput$newApplicationName": "

        The new name to give the application.

        ", "UpdateDeploymentGroupInput$applicationName": "

        The application name corresponding to the deployment group to update.

        " } }, "ApplicationNameRequiredException": { "base": "

        The minimum number of required application names was not specified.

        ", "refs": { } }, "ApplicationRevisionSortBy": { "base": null, "refs": { "ListApplicationRevisionsInput$sortBy": "

        The column name to use to sort the list results:

        • registerTime: Sort by the time the revisions were registered with AWS CodeDeploy.

        • firstUsedTime: Sort by the time the revisions were first used in a deployment.

        • lastUsedTime: Sort by the time the revisions were last used in a deployment.

        If not specified or set to null, the results will be returned in an arbitrary order.

        " } }, "ApplicationsInfoList": { "base": null, "refs": { "BatchGetApplicationsOutput$applicationsInfo": "

        Information about the applications.

        " } }, "ApplicationsList": { "base": null, "refs": { "BatchGetApplicationsInput$applicationNames": "

        A list of application names separated by spaces.

        ", "ListApplicationsOutput$applications": "

        A list of application names.

        " } }, "AutoRollbackConfiguration": { "base": "

        Information about a configuration for automatically rolling back to a previous version of an application revision when a deployment doesn't complete successfully.

        ", "refs": { "CreateDeploymentGroupInput$autoRollbackConfiguration": "

        Configuration information for an automatic rollback that is added when a deployment group is created.

        ", "CreateDeploymentInput$autoRollbackConfiguration": "

        Configuration information for an automatic rollback that is added when a deployment is created.

        ", "DeploymentGroupInfo$autoRollbackConfiguration": "

        Information about the automatic rollback configuration associated with the deployment group.

        ", "DeploymentInfo$autoRollbackConfiguration": "

        Information about the automatic rollback configuration associated with the deployment.

        ", "UpdateDeploymentGroupInput$autoRollbackConfiguration": "

        Information for an automatic rollback configuration that is added or changed when a deployment group is updated.

        " } }, "AutoRollbackEvent": { "base": null, "refs": { "AutoRollbackEventsList$member": null } }, "AutoRollbackEventsList": { "base": null, "refs": { "AutoRollbackConfiguration$events": "

        The event type or types that trigger a rollback.

        " } }, "AutoScalingGroup": { "base": "

        Information about an Auto Scaling group.

        ", "refs": { "AutoScalingGroupList$member": null } }, "AutoScalingGroupHook": { "base": null, "refs": { "AutoScalingGroup$hook": "

        An Auto Scaling lifecycle event hook name.

        " } }, "AutoScalingGroupList": { "base": null, "refs": { "DeleteDeploymentGroupOutput$hooksNotCleanedUp": "

        If the output contains no data, and the corresponding deployment group contained at least one Auto Scaling group, AWS CodeDeploy successfully removed all corresponding Auto Scaling lifecycle event hooks from the Amazon EC2 instances in the Auto Scaling group. If the output contains data, AWS CodeDeploy could not remove some Auto Scaling lifecycle event hooks from the Amazon EC2 instances in the Auto Scaling group.

        ", "DeploymentGroupInfo$autoScalingGroups": "

        A list of associated Auto Scaling groups.

        ", "UpdateDeploymentGroupOutput$hooksNotCleanedUp": "

        If the output contains no data, and the corresponding deployment group contained at least one Auto Scaling group, AWS CodeDeploy successfully removed all corresponding Auto Scaling lifecycle event hooks from the AWS account. If the output contains data, AWS CodeDeploy could not remove some Auto Scaling lifecycle event hooks from the AWS account.

        " } }, "AutoScalingGroupName": { "base": null, "refs": { "AutoScalingGroup$name": "

        The Auto Scaling group name.

        ", "AutoScalingGroupNameList$member": null } }, "AutoScalingGroupNameList": { "base": null, "refs": { "CreateDeploymentGroupInput$autoScalingGroups": "

        A list of associated Auto Scaling groups.

        ", "UpdateDeploymentGroupInput$autoScalingGroups": "

        The replacement list of Auto Scaling groups to be included in the deployment group, if you want to change them. To keep the Auto Scaling groups, enter their names. To remove Auto Scaling groups, do not enter any Auto Scaling group names.

        " } }, "BatchGetApplicationRevisionsInput": { "base": "

        Represents the input of a batch get application revisions operation.

        ", "refs": { } }, "BatchGetApplicationRevisionsOutput": { "base": "

        Represents the output of a batch get application revisions operation.

        ", "refs": { } }, "BatchGetApplicationsInput": { "base": "

        Represents the input of a batch get applications operation.

        ", "refs": { } }, "BatchGetApplicationsOutput": { "base": "

        Represents the output of a batch get applications operation.

        ", "refs": { } }, "BatchGetDeploymentGroupsInput": { "base": "

        Represents the input of a batch get deployment groups operation.

        ", "refs": { } }, "BatchGetDeploymentGroupsOutput": { "base": "

        Represents the output of a batch get deployment groups operation.

        ", "refs": { } }, "BatchGetDeploymentInstancesInput": { "base": "

        Represents the input of a batch get deployment instances operation.

        ", "refs": { } }, "BatchGetDeploymentInstancesOutput": { "base": "

        Represents the output of a batch get deployment instance operation.

        ", "refs": { } }, "BatchGetDeploymentsInput": { "base": "

        Represents the input of a batch get deployments operation.

        ", "refs": { } }, "BatchGetDeploymentsOutput": { "base": "

        Represents the output of a batch get deployments operation.

        ", "refs": { } }, "BatchGetOnPremisesInstancesInput": { "base": "

        Represents the input of a batch get on-premises instances operation.

        ", "refs": { } }, "BatchGetOnPremisesInstancesOutput": { "base": "

        Represents the output of a batch get on-premises instances operation.

        ", "refs": { } }, "BatchLimitExceededException": { "base": "

        The maximum number of names or IDs allowed for this request (100) was exceeded.

        ", "refs": { } }, "Boolean": { "base": null, "refs": { "AlarmConfiguration$enabled": "

        Indicates whether the alarm configuration is enabled.

        ", "AlarmConfiguration$ignorePollAlarmFailure": "

        Indicates whether a deployment should continue if information about the current state of alarms cannot be retrieved from Amazon CloudWatch. The default value is false.

        • true: The deployment will proceed even if alarm status information can't be retrieved from Amazon CloudWatch.

        • false: The deployment will stop if alarm status information can't be retrieved from Amazon CloudWatch.

        ", "ApplicationInfo$linkedToGitHub": "

        True if the user has authenticated with GitHub for the specified application; otherwise, false.

        ", "AutoRollbackConfiguration$enabled": "

        Indicates whether a defined automatic rollback configuration is currently enabled.

        ", "CreateDeploymentInput$ignoreApplicationStopFailures": "

        If set to true, then if the deployment causes the ApplicationStop deployment lifecycle event to an instance to fail, the deployment to that instance will not be considered to have failed at that point and will continue on to the BeforeInstall deployment lifecycle event.

        If set to false or not specified, then if the deployment causes the ApplicationStop deployment lifecycle event to fail to an instance, the deployment to that instance will stop, and the deployment to that instance will be considered to have failed.

        ", "CreateDeploymentInput$updateOutdatedInstancesOnly": "

        Indicates whether to deploy to all instances or only to instances that are not running the latest application revision.

        ", "DeploymentInfo$ignoreApplicationStopFailures": "

        If true, then if the deployment causes the ApplicationStop deployment lifecycle event to an instance to fail, the deployment to that instance will not be considered to have failed at that point and will continue on to the BeforeInstall deployment lifecycle event.

        If false or not specified, then if the deployment causes the ApplicationStop deployment lifecycle event to an instance to fail, the deployment to that instance will stop, and the deployment to that instance will be considered to have failed.

        ", "DeploymentInfo$updateOutdatedInstancesOnly": "

        Indicates whether only instances that are not running the latest application revision are to be deployed to.

        " } }, "BucketNameFilterRequiredException": { "base": "

        A bucket name is required, but was not provided.

        ", "refs": { } }, "BundleType": { "base": null, "refs": { "S3Location$bundleType": "

        The file type of the application revision. Must be one of the following:

        • tar: A tar archive file.

        • tgz: A compressed tar archive file.

        • zip: A zip archive file.

        " } }, "CommitId": { "base": null, "refs": { "GitHubLocation$commitId": "

        The SHA1 commit ID of the GitHub commit that represents the bundled artifacts for the application revision.

        " } }, "CreateApplicationInput": { "base": "

        Represents the input of a create application operation.

        ", "refs": { } }, "CreateApplicationOutput": { "base": "

        Represents the output of a create application operation.

        ", "refs": { } }, "CreateDeploymentConfigInput": { "base": "

        Represents the input of a create deployment configuration operation.

        ", "refs": { } }, "CreateDeploymentConfigOutput": { "base": "

        Represents the output of a create deployment configuration operation.

        ", "refs": { } }, "CreateDeploymentGroupInput": { "base": "

        Represents the input of a create deployment group operation.

        ", "refs": { } }, "CreateDeploymentGroupOutput": { "base": "

        Represents the output of a create deployment group operation.

        ", "refs": { } }, "CreateDeploymentInput": { "base": "

        Represents the input of a create deployment operation.

        ", "refs": { } }, "CreateDeploymentOutput": { "base": "

        Represents the output of a create deployment operation.

        ", "refs": { } }, "DeleteApplicationInput": { "base": "

        Represents the input of a delete application operation.

        ", "refs": { } }, "DeleteDeploymentConfigInput": { "base": "

        Represents the input of a delete deployment configuration operation.

        ", "refs": { } }, "DeleteDeploymentGroupInput": { "base": "

        Represents the input of a delete deployment group operation.

        ", "refs": { } }, "DeleteDeploymentGroupOutput": { "base": "

        Represents the output of a delete deployment group operation.

        ", "refs": { } }, "DeploymentAlreadyCompletedException": { "base": "

        The deployment is already complete.

        ", "refs": { } }, "DeploymentConfigAlreadyExistsException": { "base": "

        A deployment configuration with the specified name already exists with the applicable IAM user or AWS account.

        ", "refs": { } }, "DeploymentConfigDoesNotExistException": { "base": "

        The deployment configuration does not exist with the applicable IAM user or AWS account.

        ", "refs": { } }, "DeploymentConfigId": { "base": null, "refs": { "CreateDeploymentConfigOutput$deploymentConfigId": "

        A unique deployment configuration ID.

        ", "DeploymentConfigInfo$deploymentConfigId": "

        The deployment configuration ID.

        " } }, "DeploymentConfigInUseException": { "base": "

        The deployment configuration is still in use.

        ", "refs": { } }, "DeploymentConfigInfo": { "base": "

        Information about a deployment configuration.

        ", "refs": { "GetDeploymentConfigOutput$deploymentConfigInfo": "

        Information about the deployment configuration.

        " } }, "DeploymentConfigLimitExceededException": { "base": "

        The deployment configurations limit was exceeded.

        ", "refs": { } }, "DeploymentConfigName": { "base": null, "refs": { "CreateDeploymentConfigInput$deploymentConfigName": "

        The name of the deployment configuration to create.

        ", "CreateDeploymentGroupInput$deploymentConfigName": "

        If specified, the deployment configuration name can be either one of the predefined configurations provided with AWS CodeDeploy or a custom deployment configuration that you create by calling the create deployment configuration operation.

        CodeDeployDefault.OneAtATime is the default deployment configuration. It is used if a configuration isn't specified for the deployment or the deployment group.

        The predefined deployment configurations include the following:

        • CodeDeployDefault.AllAtOnce attempts to deploy an application revision to as many instances as possible at once. The status of the overall deployment will be displayed as Succeeded if the application revision is deployed to one or more of the instances. The status of the overall deployment will be displayed as Failed if the application revision is not deployed to any of the instances. Using an example of nine instances, CodeDeployDefault.AllAtOnce will attempt to deploy to all nine instances at once. The overall deployment will succeed if deployment to even a single instance is successful; it will fail only if deployments to all nine instances fail.

        • CodeDeployDefault.HalfAtATime deploys to up to half of the instances at a time (with fractions rounded down). The overall deployment succeeds if the application revision is deployed to at least half of the instances (with fractions rounded up); otherwise, the deployment fails. In the example of nine instances, it will deploy to up to four instances at a time. The overall deployment succeeds if deployment to five or more instances succeed; otherwise, the deployment fails. The deployment may be successfully deployed to some instances even if the overall deployment fails.

        • CodeDeployDefault.OneAtATime deploys the application revision to only one instance at a time.

          For deployment groups that contain more than one instance:

          • The overall deployment succeeds if the application revision is deployed to all of the instances. The exception to this rule is if deployment to the last instance fails, the overall deployment still succeeds. This is because AWS CodeDeploy allows only one instance at a time to be taken offline with the CodeDeployDefault.OneAtATime configuration.

          • The overall deployment fails as soon as the application revision fails to be deployed to any but the last instance. The deployment may be successfully deployed to some instances even if the overall deployment fails.

          • In an example using nine instances, it will deploy to one instance at a time. The overall deployment succeeds if deployment to the first eight instances is successful; the overall deployment fails if deployment to any of the first eight instances fails.

          For deployment groups that contain only one instance, the overall deployment is successful only if deployment to the single instance is successful

        ", "CreateDeploymentInput$deploymentConfigName": "

        The name of a deployment configuration associated with the applicable IAM user or AWS account.

        If not specified, the value configured in the deployment group will be used as the default. If the deployment group does not have a deployment configuration associated with it, then CodeDeployDefault.OneAtATime will be used by default.

        ", "DeleteDeploymentConfigInput$deploymentConfigName": "

        The name of a deployment configuration associated with the applicable IAM user or AWS account.

        ", "DeploymentConfigInfo$deploymentConfigName": "

        The deployment configuration name.

        ", "DeploymentConfigsList$member": null, "DeploymentGroupInfo$deploymentConfigName": "

        The deployment configuration name.

        ", "DeploymentInfo$deploymentConfigName": "

        The deployment configuration name.

        ", "GetDeploymentConfigInput$deploymentConfigName": "

        The name of a deployment configuration associated with the applicable IAM user or AWS account.

        ", "UpdateDeploymentGroupInput$deploymentConfigName": "

        The replacement deployment configuration name to use, if you want to change it.

        " } }, "DeploymentConfigNameRequiredException": { "base": "

        The deployment configuration name was not specified.

        ", "refs": { } }, "DeploymentConfigsList": { "base": null, "refs": { "ListDeploymentConfigsOutput$deploymentConfigsList": "

        A list of deployment configurations, including built-in configurations such as CodeDeployDefault.OneAtATime.

        " } }, "DeploymentCreator": { "base": null, "refs": { "DeploymentInfo$creator": "

        The means by which the deployment was created:

        • user: A user created the deployment.

        • autoscaling: Auto Scaling created the deployment.

        • codeDeployRollback: A rollback process created the deployment.

        " } }, "DeploymentDoesNotExistException": { "base": "

        The deployment does not exist with the applicable IAM user or AWS account.

        ", "refs": { } }, "DeploymentGroupAlreadyExistsException": { "base": "

        A deployment group with the specified name already exists with the applicable IAM user or AWS account.

        ", "refs": { } }, "DeploymentGroupDoesNotExistException": { "base": "

        The named deployment group does not exist with the applicable IAM user or AWS account.

        ", "refs": { } }, "DeploymentGroupId": { "base": null, "refs": { "CreateDeploymentGroupOutput$deploymentGroupId": "

        A unique deployment group ID.

        ", "DeploymentGroupInfo$deploymentGroupId": "

        The deployment group ID.

        " } }, "DeploymentGroupInfo": { "base": "

        Information about a deployment group.

        ", "refs": { "DeploymentGroupInfoList$member": null, "GetDeploymentGroupOutput$deploymentGroupInfo": "

        Information about the deployment group.

        " } }, "DeploymentGroupInfoList": { "base": null, "refs": { "BatchGetDeploymentGroupsOutput$deploymentGroupsInfo": "

        Information about the deployment groups.

        " } }, "DeploymentGroupLimitExceededException": { "base": "

        The deployment groups limit was exceeded.

        ", "refs": { } }, "DeploymentGroupName": { "base": null, "refs": { "CreateDeploymentGroupInput$deploymentGroupName": "

        The name of a new deployment group for the specified application.

        ", "CreateDeploymentInput$deploymentGroupName": "

        The name of the deployment group.

        ", "DeleteDeploymentGroupInput$deploymentGroupName": "

        The name of an existing deployment group for the specified application.

        ", "DeploymentGroupInfo$deploymentGroupName": "

        The deployment group name.

        ", "DeploymentGroupsList$member": null, "DeploymentInfo$deploymentGroupName": "

        The deployment group name.

        ", "GetDeploymentGroupInput$deploymentGroupName": "

        The name of an existing deployment group for the specified application.

        ", "ListDeploymentsInput$deploymentGroupName": "

        The name of an existing deployment group for the specified application.

        ", "UpdateDeploymentGroupInput$currentDeploymentGroupName": "

        The current name of the deployment group.

        ", "UpdateDeploymentGroupInput$newDeploymentGroupName": "

        The new name of the deployment group, if you want to change it.

        " } }, "DeploymentGroupNameRequiredException": { "base": "

        The deployment group name was not specified.

        ", "refs": { } }, "DeploymentGroupsList": { "base": null, "refs": { "BatchGetDeploymentGroupsInput$deploymentGroupNames": "

        The deployment groups' names.

        ", "GenericRevisionInfo$deploymentGroups": "

        The deployment groups for which this is the current target revision.

        ", "ListDeploymentGroupsOutput$deploymentGroups": "

        A list of corresponding deployment group names.

        " } }, "DeploymentId": { "base": null, "refs": { "BatchGetDeploymentInstancesInput$deploymentId": "

        The unique ID of a deployment.

        ", "CreateDeploymentOutput$deploymentId": "

        A unique deployment ID.

        ", "DeploymentInfo$deploymentId": "

        The deployment ID.

        ", "DeploymentsList$member": null, "GetDeploymentInput$deploymentId": "

        A deployment ID associated with the applicable IAM user or AWS account.

        ", "GetDeploymentInstanceInput$deploymentId": "

        The unique ID of a deployment.

        ", "InstanceSummary$deploymentId": "

        The deployment ID.

        ", "ListDeploymentInstancesInput$deploymentId": "

        The unique ID of a deployment.

        ", "RollbackInfo$rollbackDeploymentId": "

        The ID of the deployment rollback.

        ", "RollbackInfo$rollbackTriggeringDeploymentId": "

        The deployment ID of the deployment that was underway and triggered a rollback deployment because it failed or was stopped.

        ", "StopDeploymentInput$deploymentId": "

        The unique ID of a deployment.

        " } }, "DeploymentIdRequiredException": { "base": "

        At least one deployment ID must be specified.

        ", "refs": { } }, "DeploymentInfo": { "base": "

        Information about a deployment.

        ", "refs": { "DeploymentsInfoList$member": null, "GetDeploymentOutput$deploymentInfo": "

        Information about the deployment.

        " } }, "DeploymentLimitExceededException": { "base": "

        The number of allowed deployments was exceeded.

        ", "refs": { } }, "DeploymentNotStartedException": { "base": "

        The specified deployment has not started.

        ", "refs": { } }, "DeploymentOverview": { "base": "

        Information about the deployment status of the instances in the deployment.

        ", "refs": { "DeploymentInfo$deploymentOverview": "

        A summary of the deployment status of the instances in the deployment.

        " } }, "DeploymentStatus": { "base": null, "refs": { "DeploymentInfo$status": "

        The current state of the deployment as a whole.

        ", "DeploymentStatusList$member": null } }, "DeploymentStatusList": { "base": null, "refs": { "ListDeploymentsInput$includeOnlyStatuses": "

        A subset of deployments to list by status:

        • Created: Include created deployments in the resulting list.

        • Queued: Include queued deployments in the resulting list.

        • In Progress: Include in-progress deployments in the resulting list.

        • Succeeded: Include successful deployments in the resulting list.

        • Failed: Include failed deployments in the resulting list.

        • Stopped: Include stopped deployments in the resulting list.

        " } }, "DeploymentsInfoList": { "base": null, "refs": { "BatchGetDeploymentsOutput$deploymentsInfo": "

        Information about the deployments.

        " } }, "DeploymentsList": { "base": null, "refs": { "BatchGetDeploymentsInput$deploymentIds": "

        A list of deployment IDs, separated by spaces.

        ", "ListDeploymentsOutput$deployments": "

        A list of deployment IDs.

        " } }, "DeregisterOnPremisesInstanceInput": { "base": "

        Represents the input of a deregister on-premises instance operation.

        ", "refs": { } }, "Description": { "base": null, "refs": { "CreateDeploymentInput$description": "

        A comment about the deployment.

        ", "DeploymentInfo$description": "

        A comment about the deployment.

        ", "GenericRevisionInfo$description": "

        A comment about the revision.

        ", "RegisterApplicationRevisionInput$description": "

        A comment about the revision.

        ", "RollbackInfo$rollbackMessage": "

        Information describing the status of a deployment rollback; for example, whether the deployment can't be rolled back, is in progress, failed, or succeeded.

        " } }, "DescriptionTooLongException": { "base": "

        The description is too long.

        ", "refs": { } }, "Diagnostics": { "base": "

        Diagnostic information about executable scripts that are part of a deployment.

        ", "refs": { "LifecycleEvent$diagnostics": "

        Diagnostic information about the deployment lifecycle event.

        " } }, "EC2TagFilter": { "base": "

        Information about a tag filter.

        ", "refs": { "EC2TagFilterList$member": null } }, "EC2TagFilterList": { "base": null, "refs": { "CreateDeploymentGroupInput$ec2TagFilters": "

        The Amazon EC2 tags on which to filter.

        ", "DeploymentGroupInfo$ec2TagFilters": "

        The Amazon EC2 tags on which to filter.

        ", "UpdateDeploymentGroupInput$ec2TagFilters": "

        The replacement set of Amazon EC2 tags on which to filter, if you want to change them. To keep the existing tags, enter their names. To remove tags, do not enter any tag names.

        " } }, "EC2TagFilterType": { "base": null, "refs": { "EC2TagFilter$Type": "

        The tag filter type:

        • KEY_ONLY: Key only.

        • VALUE_ONLY: Value only.

        • KEY_AND_VALUE: Key and value.

        " } }, "ETag": { "base": null, "refs": { "S3Location$eTag": "

        The ETag of the Amazon S3 object that represents the bundled artifacts for the application revision.

        If the ETag is not specified as an input parameter, ETag validation of the object will be skipped.

        " } }, "ErrorCode": { "base": null, "refs": { "ErrorInformation$code": "

        The error code:

        • APPLICATION_MISSING: The application was missing. This error code will most likely be raised if the application is deleted after the deployment is created but before it is started.

        • DEPLOYMENT_GROUP_MISSING: The deployment group was missing. This error code will most likely be raised if the deployment group is deleted after the deployment is created but before it is started.

        • HEALTH_CONSTRAINTS: The deployment failed on too many instances to be successfully deployed within the instance health constraints specified.

        • HEALTH_CONSTRAINTS_INVALID: The revision cannot be successfully deployed within the instance health constraints specified.

        • IAM_ROLE_MISSING: The service role cannot be accessed.

        • IAM_ROLE_PERMISSIONS: The service role does not have the correct permissions.

        • INTERNAL_ERROR: There was an internal error.

        • NO_EC2_SUBSCRIPTION: The calling account is not subscribed to the Amazon EC2 service.

        • NO_INSTANCES: No instance were specified, or no instance can be found.

        • OVER_MAX_INSTANCES: The maximum number of instance was exceeded.

        • THROTTLED: The operation was throttled because the calling account exceeded the throttling limits of one or more AWS services.

        • TIMEOUT: The deployment has timed out.

        • REVISION_MISSING: The revision ID was missing. This error code will most likely be raised if the revision is deleted after the deployment is created but before it is started.

        " } }, "ErrorInformation": { "base": "

        Information about a deployment error.

        ", "refs": { "DeploymentInfo$errorInformation": "

        Information about any error associated with this deployment.

        " } }, "ErrorMessage": { "base": null, "refs": { "BatchGetApplicationRevisionsOutput$errorMessage": "

        Information about errors that may have occurred during the API call.

        ", "BatchGetDeploymentGroupsOutput$errorMessage": "

        Information about errors that may have occurred during the API call.

        ", "BatchGetDeploymentInstancesOutput$errorMessage": "

        Information about errors that may have occurred during the API call.

        ", "ErrorInformation$message": "

        An accompanying error message.

        " } }, "GenericRevisionInfo": { "base": "

        Information about an application revision.

        ", "refs": { "GetApplicationRevisionOutput$revisionInfo": "

        General information about the revision.

        ", "RevisionInfo$genericRevisionInfo": null } }, "GetApplicationInput": { "base": "

        Represents the input of a get application operation.

        ", "refs": { } }, "GetApplicationOutput": { "base": "

        Represents the output of a get application operation.

        ", "refs": { } }, "GetApplicationRevisionInput": { "base": "

        Represents the input of a get application revision operation.

        ", "refs": { } }, "GetApplicationRevisionOutput": { "base": "

        Represents the output of a get application revision operation.

        ", "refs": { } }, "GetDeploymentConfigInput": { "base": "

        Represents the input of a get deployment configuration operation.

        ", "refs": { } }, "GetDeploymentConfigOutput": { "base": "

        Represents the output of a get deployment configuration operation.

        ", "refs": { } }, "GetDeploymentGroupInput": { "base": "

        Represents the input of a get deployment group operation.

        ", "refs": { } }, "GetDeploymentGroupOutput": { "base": "

        Represents the output of a get deployment group operation.

        ", "refs": { } }, "GetDeploymentInput": { "base": "

        Represents the input of a get deployment operation.

        ", "refs": { } }, "GetDeploymentInstanceInput": { "base": "

        Represents the input of a get deployment instance operation.

        ", "refs": { } }, "GetDeploymentInstanceOutput": { "base": "

        Represents the output of a get deployment instance operation.

        ", "refs": { } }, "GetDeploymentOutput": { "base": "

        Represents the output of a get deployment operation.

        ", "refs": { } }, "GetOnPremisesInstanceInput": { "base": "

        Represents the input of a get on-premises instance operation.

        ", "refs": { } }, "GetOnPremisesInstanceOutput": { "base": "

        Represents the output of a get on-premises instance operation.

        ", "refs": { } }, "GitHubLocation": { "base": "

        Information about the location of application artifacts stored in GitHub.

        ", "refs": { "RevisionLocation$gitHubLocation": null } }, "IamUserArn": { "base": null, "refs": { "InstanceInfo$iamUserArn": "

        The IAM user ARN associated with the on-premises instance.

        ", "RegisterOnPremisesInstanceInput$iamUserArn": "

        The ARN of the IAM user to associate with the on-premises instance.

        " } }, "IamUserArnAlreadyRegisteredException": { "base": "

        The specified IAM user ARN is already registered with an on-premises instance.

        ", "refs": { } }, "IamUserArnRequiredException": { "base": "

        An IAM user ARN was not specified.

        ", "refs": { } }, "InstanceArn": { "base": null, "refs": { "InstanceInfo$instanceArn": "

        The ARN of the on-premises instance.

        " } }, "InstanceCount": { "base": null, "refs": { "DeploymentOverview$Pending": "

        The number of instances in the deployment in a pending state.

        ", "DeploymentOverview$InProgress": "

        The number of instances in which the deployment is in progress.

        ", "DeploymentOverview$Succeeded": "

        The number of instances in the deployment to which revisions have been successfully deployed.

        ", "DeploymentOverview$Failed": "

        The number of instances in the deployment in a failed state.

        ", "DeploymentOverview$Skipped": "

        The number of instances in the deployment in a skipped state.

        " } }, "InstanceDoesNotExistException": { "base": "

        The specified instance does not exist in the deployment group.

        ", "refs": { } }, "InstanceId": { "base": null, "refs": { "GetDeploymentInstanceInput$instanceId": "

        The unique ID of an instance in the deployment group.

        ", "InstanceSummary$instanceId": "

        The instance ID.

        ", "InstancesList$member": null } }, "InstanceIdRequiredException": { "base": "

        The instance ID was not specified.

        ", "refs": { } }, "InstanceInfo": { "base": "

        Information about an on-premises instance.

        ", "refs": { "GetOnPremisesInstanceOutput$instanceInfo": "

        Information about the on-premises instance.

        ", "InstanceInfoList$member": null } }, "InstanceInfoList": { "base": null, "refs": { "BatchGetOnPremisesInstancesOutput$instanceInfos": "

        Information about the on-premises instances.

        " } }, "InstanceLimitExceededException": { "base": "

        The maximum number of allowed on-premises instances in a single call was exceeded.

        ", "refs": { } }, "InstanceName": { "base": null, "refs": { "DeregisterOnPremisesInstanceInput$instanceName": "

        The name of the on-premises instance to deregister.

        ", "GetOnPremisesInstanceInput$instanceName": "

        The name of the on-premises instance about which to get information.

        ", "InstanceInfo$instanceName": "

        The name of the on-premises instance.

        ", "InstanceNameList$member": null, "RegisterOnPremisesInstanceInput$instanceName": "

        The name of the on-premises instance to register.

        " } }, "InstanceNameAlreadyRegisteredException": { "base": "

        The specified on-premises instance name is already registered.

        ", "refs": { } }, "InstanceNameList": { "base": null, "refs": { "AddTagsToOnPremisesInstancesInput$instanceNames": "

        The names of the on-premises instances to which to add tags.

        ", "BatchGetOnPremisesInstancesInput$instanceNames": "

        The names of the on-premises instances about which to get information.

        ", "ListOnPremisesInstancesOutput$instanceNames": "

        The list of matching on-premises instance names.

        ", "RemoveTagsFromOnPremisesInstancesInput$instanceNames": "

        The names of the on-premises instances from which to remove tags.

        " } }, "InstanceNameRequiredException": { "base": "

        An on-premises instance name was not specified.

        ", "refs": { } }, "InstanceNotRegisteredException": { "base": "

        The specified on-premises instance is not registered.

        ", "refs": { } }, "InstanceStatus": { "base": null, "refs": { "InstanceStatusList$member": null, "InstanceSummary$status": "

        The deployment status for this instance:

        • Pending: The deployment is pending for this instance.

        • In Progress: The deployment is in progress for this instance.

        • Succeeded: The deployment has succeeded for this instance.

        • Failed: The deployment has failed for this instance.

        • Skipped: The deployment has been skipped for this instance.

        • Unknown: The deployment status is unknown for this instance.

        " } }, "InstanceStatusList": { "base": null, "refs": { "ListDeploymentInstancesInput$instanceStatusFilter": "

        A subset of instances to list by status:

        • Pending: Include those instance with pending deployments.

        • InProgress: Include those instance where deployments are still in progress.

        • Succeeded: Include those instances with successful deployments.

        • Failed: Include those instance with failed deployments.

        • Skipped: Include those instance with skipped deployments.

        • Unknown: Include those instance with deployments in an unknown state.

        " } }, "InstanceSummary": { "base": "

        Information about an instance in a deployment.

        ", "refs": { "GetDeploymentInstanceOutput$instanceSummary": "

        Information about the instance.

        ", "InstanceSummaryList$member": null } }, "InstanceSummaryList": { "base": null, "refs": { "BatchGetDeploymentInstancesOutput$instancesSummary": "

        Information about the instance.

        " } }, "InstancesList": { "base": null, "refs": { "BatchGetDeploymentInstancesInput$instanceIds": "

        The unique IDs of instances in the deployment group.

        ", "ListDeploymentInstancesOutput$instancesList": "

        A list of instance IDs.

        " } }, "InvalidAlarmConfigException": { "base": "

        The format of the alarm configuration is invalid. Possible causes include:

        • The alarm list is null.

        • The alarm object is null.

        • The alarm name is empty or null or exceeds the 255 character limit.

        • Two alarms with the same name have been specified.

        • The alarm configuration is enabled but the alarm list is empty.

        ", "refs": { } }, "InvalidApplicationNameException": { "base": "

        The application name was specified in an invalid format.

        ", "refs": { } }, "InvalidAutoRollbackConfigException": { "base": "

        The automatic rollback configuration was specified in an invalid format. For example, automatic rollback is enabled but an invalid triggering event type or no event types were listed.

        ", "refs": { } }, "InvalidAutoScalingGroupException": { "base": "

        The Auto Scaling group was specified in an invalid format or does not exist.

        ", "refs": { } }, "InvalidBucketNameFilterException": { "base": "

        The bucket name either doesn't exist or was specified in an invalid format.

        ", "refs": { } }, "InvalidDeployedStateFilterException": { "base": "

        The deployed state filter was specified in an invalid format.

        ", "refs": { } }, "InvalidDeploymentConfigNameException": { "base": "

        The deployment configuration name was specified in an invalid format.

        ", "refs": { } }, "InvalidDeploymentGroupNameException": { "base": "

        The deployment group name was specified in an invalid format.

        ", "refs": { } }, "InvalidDeploymentIdException": { "base": "

        At least one of the deployment IDs was specified in an invalid format.

        ", "refs": { } }, "InvalidDeploymentStatusException": { "base": "

        The specified deployment status doesn't exist or cannot be determined.

        ", "refs": { } }, "InvalidEC2TagException": { "base": "

        The tag was specified in an invalid format.

        ", "refs": { } }, "InvalidIamUserArnException": { "base": "

        The IAM user ARN was specified in an invalid format.

        ", "refs": { } }, "InvalidInstanceNameException": { "base": "

        The specified on-premises instance name was specified in an invalid format.

        ", "refs": { } }, "InvalidInstanceStatusException": { "base": "

        The specified instance status does not exist.

        ", "refs": { } }, "InvalidKeyPrefixFilterException": { "base": "

        The specified key prefix filter was specified in an invalid format.

        ", "refs": { } }, "InvalidMinimumHealthyHostValueException": { "base": "

        The minimum healthy instance value was specified in an invalid format.

        ", "refs": { } }, "InvalidNextTokenException": { "base": "

        The next token was specified in an invalid format.

        ", "refs": { } }, "InvalidOperationException": { "base": "

        An invalid operation was detected.

        ", "refs": { } }, "InvalidRegistrationStatusException": { "base": "

        The registration status was specified in an invalid format.

        ", "refs": { } }, "InvalidRevisionException": { "base": "

        The revision was specified in an invalid format.

        ", "refs": { } }, "InvalidRoleException": { "base": "

        The service role ARN was specified in an invalid format. Or, if an Auto Scaling group was specified, the specified service role does not grant the appropriate permissions to Auto Scaling.

        ", "refs": { } }, "InvalidSortByException": { "base": "

        The column name to sort by is either not present or was specified in an invalid format.

        ", "refs": { } }, "InvalidSortOrderException": { "base": "

        The sort order was specified in an invalid format.

        ", "refs": { } }, "InvalidTagException": { "base": "

        The specified tag was specified in an invalid format.

        ", "refs": { } }, "InvalidTagFilterException": { "base": "

        The specified tag filter was specified in an invalid format.

        ", "refs": { } }, "InvalidTimeRangeException": { "base": "

        The specified time range was specified in an invalid format.

        ", "refs": { } }, "InvalidTriggerConfigException": { "base": "

        The trigger was specified in an invalid format.

        ", "refs": { } }, "Key": { "base": null, "refs": { "EC2TagFilter$Key": "

        The tag filter key.

        ", "Tag$Key": "

        The tag's key.

        ", "TagFilter$Key": "

        The on-premises instance tag filter key.

        " } }, "LifecycleErrorCode": { "base": null, "refs": { "Diagnostics$errorCode": "

        The associated error code:

        • Success: The specified script ran.

        • ScriptMissing: The specified script was not found in the specified location.

        • ScriptNotExecutable: The specified script is not a recognized executable file type.

        • ScriptTimedOut: The specified script did not finish running in the specified time period.

        • ScriptFailed: The specified script failed to run as expected.

        • UnknownError: The specified script did not run for an unknown reason.

        " } }, "LifecycleEvent": { "base": "

        Information about a deployment lifecycle event.

        ", "refs": { "LifecycleEventList$member": null } }, "LifecycleEventList": { "base": null, "refs": { "InstanceSummary$lifecycleEvents": "

        A list of lifecycle events for this instance.

        " } }, "LifecycleEventName": { "base": null, "refs": { "LifecycleEvent$lifecycleEventName": "

        The deployment lifecycle event name, such as ApplicationStop, BeforeInstall, AfterInstall, ApplicationStart, or ValidateService.

        " } }, "LifecycleEventStatus": { "base": null, "refs": { "LifecycleEvent$status": "

        The deployment lifecycle event status:

        • Pending: The deployment lifecycle event is pending.

        • InProgress: The deployment lifecycle event is in progress.

        • Succeeded: The deployment lifecycle event ran successfully.

        • Failed: The deployment lifecycle event has failed.

        • Skipped: The deployment lifecycle event has been skipped.

        • Unknown: The deployment lifecycle event is unknown.

        " } }, "LifecycleHookLimitExceededException": { "base": "

        The limit for lifecycle hooks was exceeded.

        ", "refs": { } }, "LifecycleMessage": { "base": null, "refs": { "Diagnostics$message": "

        The message associated with the error.

        " } }, "ListApplicationRevisionsInput": { "base": "

        Represents the input of a list application revisions operation.

        ", "refs": { } }, "ListApplicationRevisionsOutput": { "base": "

        Represents the output of a list application revisions operation.

        ", "refs": { } }, "ListApplicationsInput": { "base": "

        Represents the input of a list applications operation.

        ", "refs": { } }, "ListApplicationsOutput": { "base": "

        Represents the output of a list applications operation.

        ", "refs": { } }, "ListDeploymentConfigsInput": { "base": "

        Represents the input of a list deployment configurations operation.

        ", "refs": { } }, "ListDeploymentConfigsOutput": { "base": "

        Represents the output of a list deployment configurations operation.

        ", "refs": { } }, "ListDeploymentGroupsInput": { "base": "

        Represents the input of a list deployment groups operation.

        ", "refs": { } }, "ListDeploymentGroupsOutput": { "base": "

        Represents the output of a list deployment groups operation.

        ", "refs": { } }, "ListDeploymentInstancesInput": { "base": "

        Represents the input of a list deployment instances operation.

        ", "refs": { } }, "ListDeploymentInstancesOutput": { "base": "

        Represents the output of a list deployment instances operation.

        ", "refs": { } }, "ListDeploymentsInput": { "base": "

        Represents the input of a list deployments operation.

        ", "refs": { } }, "ListDeploymentsOutput": { "base": "

        Represents the output of a list deployments operation.

        ", "refs": { } }, "ListOnPremisesInstancesInput": { "base": "

        Represents the input of a list on-premises instances operation.

        ", "refs": { } }, "ListOnPremisesInstancesOutput": { "base": "

        Represents the output of list on-premises instances operation.

        ", "refs": { } }, "ListStateFilterAction": { "base": null, "refs": { "ListApplicationRevisionsInput$deployed": "

        Whether to list revisions based on whether the revision is the target revision of an deployment group:

        • include: List revisions that are target revisions of a deployment group.

        • exclude: Do not list revisions that are target revisions of a deployment group.

        • ignore: List all revisions.

        " } }, "LogTail": { "base": null, "refs": { "Diagnostics$logTail": "

        The last portion of the diagnostic log.

        If available, AWS CodeDeploy returns up to the last 4 KB of the diagnostic log.

        " } }, "Message": { "base": null, "refs": { "StopDeploymentOutput$statusMessage": "

        An accompanying status message.

        " } }, "MinimumHealthyHosts": { "base": "

        Information about minimum healthy instance.

        ", "refs": { "CreateDeploymentConfigInput$minimumHealthyHosts": "

        The minimum number of healthy instances that should be available at any time during the deployment. There are two parameters expected in the input: type and value.

        The type parameter takes either of the following values:

        • HOST_COUNT: The value parameter represents the minimum number of healthy instances as an absolute value.

        • FLEET_PERCENT: The value parameter represents the minimum number of healthy instances as a percentage of the total number of instances in the deployment. If you specify FLEET_PERCENT, at the start of the deployment, AWS CodeDeploy converts the percentage to the equivalent number of instance and rounds up fractional instances.

        The value parameter takes an integer.

        For example, to set a minimum of 95% healthy instance, specify a type of FLEET_PERCENT and a value of 95.

        ", "DeploymentConfigInfo$minimumHealthyHosts": "

        Information about the number or percentage of minimum healthy instance.

        " } }, "MinimumHealthyHostsType": { "base": null, "refs": { "MinimumHealthyHosts$type": "

        The minimum healthy instance type:

        • HOST_COUNT: The minimum number of healthy instance as an absolute value.

        • FLEET_PERCENT: The minimum number of healthy instance as a percentage of the total number of instance in the deployment.

        In an example of nine instance, if a HOST_COUNT of six is specified, deploy to up to three instances at a time. The deployment will be successful if six or more instances are deployed to successfully; otherwise, the deployment fails. If a FLEET_PERCENT of 40 is specified, deploy to up to five instance at a time. The deployment will be successful if four or more instance are deployed to successfully; otherwise, the deployment fails.

        In a call to the get deployment configuration operation, CodeDeployDefault.OneAtATime will return a minimum healthy instance type of MOST_CONCURRENCY and a value of 1. This means a deployment to only one instance at a time. (You cannot set the type to MOST_CONCURRENCY, only to HOST_COUNT or FLEET_PERCENT.) In addition, with CodeDeployDefault.OneAtATime, AWS CodeDeploy will try to ensure that all instances but one are kept in a healthy state during the deployment. Although this allows one instance at a time to be taken offline for a new deployment, it also means that if the deployment to the last instance fails, the overall deployment still succeeds.

        " } }, "MinimumHealthyHostsValue": { "base": null, "refs": { "MinimumHealthyHosts$value": "

        The minimum healthy instance value.

        " } }, "NextToken": { "base": null, "refs": { "ListApplicationRevisionsInput$nextToken": "

        An identifier returned from the previous list application revisions call. It can be used to return the next set of applications in the list.

        ", "ListApplicationRevisionsOutput$nextToken": "

        If a large amount of information is returned, an identifier will also be returned. It can be used in a subsequent list application revisions call to return the next set of application revisions in the list.

        ", "ListApplicationsInput$nextToken": "

        An identifier returned from the previous list applications call. It can be used to return the next set of applications in the list.

        ", "ListApplicationsOutput$nextToken": "

        If a large amount of information is returned, an identifier is also returned. It can be used in a subsequent list applications call to return the next set of applications, will also be returned. in the list.

        ", "ListDeploymentConfigsInput$nextToken": "

        An identifier returned from the previous list deployment configurations call. It can be used to return the next set of deployment configurations in the list.

        ", "ListDeploymentConfigsOutput$nextToken": "

        If a large amount of information is returned, an identifier is also returned. It can be used in a subsequent list deployment configurations call to return the next set of deployment configurations in the list.

        ", "ListDeploymentGroupsInput$nextToken": "

        An identifier returned from the previous list deployment groups call. It can be used to return the next set of deployment groups in the list.

        ", "ListDeploymentGroupsOutput$nextToken": "

        If a large amount of information is returned, an identifier is also returned. It can be used in a subsequent list deployment groups call to return the next set of deployment groups in the list.

        ", "ListDeploymentInstancesInput$nextToken": "

        An identifier returned from the previous list deployment instances call. It can be used to return the next set of deployment instances in the list.

        ", "ListDeploymentInstancesOutput$nextToken": "

        If a large amount of information is returned, an identifier is also returned. It can be used in a subsequent list deployment instances call to return the next set of deployment instances in the list.

        ", "ListDeploymentsInput$nextToken": "

        An identifier returned from the previous list deployments call. It can be used to return the next set of deployments in the list.

        ", "ListDeploymentsOutput$nextToken": "

        If a large amount of information is returned, an identifier is also returned. It can be used in a subsequent list deployments call to return the next set of deployments in the list.

        ", "ListOnPremisesInstancesInput$nextToken": "

        An identifier returned from the previous list on-premises instances call. It can be used to return the next set of on-premises instances in the list.

        ", "ListOnPremisesInstancesOutput$nextToken": "

        If a large amount of information is returned, an identifier is also returned. It can be used in a subsequent list on-premises instances call to return the next set of on-premises instances in the list.

        " } }, "NullableBoolean": { "base": null, "refs": { "StopDeploymentInput$autoRollbackEnabled": "

        Indicates, when a deployment is stopped, whether instances that have been updated should be rolled back to the previous version of the application revision.

        " } }, "RegisterApplicationRevisionInput": { "base": "

        Represents the input of a register application revision operation.

        ", "refs": { } }, "RegisterOnPremisesInstanceInput": { "base": "

        Represents the input of the register on-premises instance operation.

        ", "refs": { } }, "RegistrationStatus": { "base": null, "refs": { "ListOnPremisesInstancesInput$registrationStatus": "

        The registration status of the on-premises instances:

        • Deregistered: Include deregistered on-premises instances in the resulting list.

        • Registered: Include registered on-premises instances in the resulting list.

        " } }, "RemoveTagsFromOnPremisesInstancesInput": { "base": "

        Represents the input of a remove tags from on-premises instances operation.

        ", "refs": { } }, "Repository": { "base": null, "refs": { "GitHubLocation$repository": "

        The GitHub account and repository pair that stores a reference to the commit that represents the bundled artifacts for the application revision.

        Specified as account/repository.

        " } }, "RevisionDoesNotExistException": { "base": "

        The named revision does not exist with the applicable IAM user or AWS account.

        ", "refs": { } }, "RevisionInfo": { "base": "

        Information about an application revision.

        ", "refs": { "RevisionInfoList$member": null } }, "RevisionInfoList": { "base": null, "refs": { "BatchGetApplicationRevisionsOutput$revisions": "

        Additional information about the revisions, including the type and location.

        " } }, "RevisionLocation": { "base": "

        Information about the location of an application revision.

        ", "refs": { "CreateDeploymentInput$revision": "

        The type and location of the revision to deploy.

        ", "DeploymentGroupInfo$targetRevision": "

        Information about the deployment group's target revision, including type and location.

        ", "DeploymentInfo$revision": "

        Information about the location of stored application artifacts and the service from which to retrieve them.

        ", "GetApplicationRevisionInput$revision": "

        Information about the application revision to get, including type and location.

        ", "GetApplicationRevisionOutput$revision": "

        Additional information about the revision, including type and location.

        ", "RegisterApplicationRevisionInput$revision": "

        Information about the application revision to register, including type and location.

        ", "RevisionInfo$revisionLocation": null, "RevisionLocationList$member": null } }, "RevisionLocationList": { "base": null, "refs": { "BatchGetApplicationRevisionsInput$revisions": "

        Information to get about the application revisions, including type and location.

        ", "ListApplicationRevisionsOutput$revisions": "

        A list of locations that contain the matching revisions.

        " } }, "RevisionLocationType": { "base": null, "refs": { "RevisionLocation$revisionType": "

        The type of application revision:

        • S3: An application revision stored in Amazon S3.

        • GitHub: An application revision stored in GitHub.

        " } }, "RevisionRequiredException": { "base": "

        The revision ID was not specified.

        ", "refs": { } }, "Role": { "base": null, "refs": { "CreateDeploymentGroupInput$serviceRoleArn": "

        A service role ARN that allows AWS CodeDeploy to act on the user's behalf when interacting with AWS services.

        ", "DeploymentGroupInfo$serviceRoleArn": "

        A service role ARN.

        ", "UpdateDeploymentGroupInput$serviceRoleArn": "

        A replacement ARN for the service role, if you want to change it.

        " } }, "RoleRequiredException": { "base": "

        The role ID was not specified.

        ", "refs": { } }, "RollbackInfo": { "base": "

        Information about a deployment rollback.

        ", "refs": { "DeploymentInfo$rollbackInfo": "

        Information about a deployment rollback.

        " } }, "S3Bucket": { "base": null, "refs": { "ListApplicationRevisionsInput$s3Bucket": "

        An Amazon S3 bucket name to limit the search for revisions.

        If set to null, all of the user's buckets will be searched.

        ", "S3Location$bucket": "

        The name of the Amazon S3 bucket where the application revision is stored.

        " } }, "S3Key": { "base": null, "refs": { "ListApplicationRevisionsInput$s3KeyPrefix": "

        A key prefix for the set of Amazon S3 objects to limit the search for revisions.

        ", "S3Location$key": "

        The name of the Amazon S3 object that represents the bundled artifacts for the application revision.

        " } }, "S3Location": { "base": "

        Information about the location of application artifacts stored in Amazon S3.

        ", "refs": { "RevisionLocation$s3Location": null } }, "ScriptName": { "base": null, "refs": { "Diagnostics$scriptName": "

        The name of the script.

        " } }, "SortOrder": { "base": null, "refs": { "ListApplicationRevisionsInput$sortOrder": "

        The order in which to sort the list results:

        • ascending: ascending order.

        • descending: descending order.

        If not specified, the results will be sorted in ascending order.

        If set to null, the results will be sorted in an arbitrary order.

        " } }, "StopDeploymentInput": { "base": "

        Represents the input of a stop deployment operation.

        ", "refs": { } }, "StopDeploymentOutput": { "base": "

        Represents the output of a stop deployment operation.

        ", "refs": { } }, "StopStatus": { "base": null, "refs": { "StopDeploymentOutput$status": "

        The status of the stop deployment operation:

        • Pending: The stop operation is pending.

        • Succeeded: The stop operation was successful.

        " } }, "Tag": { "base": "

        Information about a tag.

        ", "refs": { "TagList$member": null } }, "TagFilter": { "base": "

        Information about an on-premises instance tag filter.

        ", "refs": { "TagFilterList$member": null } }, "TagFilterList": { "base": null, "refs": { "CreateDeploymentGroupInput$onPremisesInstanceTagFilters": "

        The on-premises instance tags on which to filter.

        ", "DeploymentGroupInfo$onPremisesInstanceTagFilters": "

        The on-premises instance tags on which to filter.

        ", "ListOnPremisesInstancesInput$tagFilters": "

        The on-premises instance tags that will be used to restrict the corresponding on-premises instance names returned.

        ", "UpdateDeploymentGroupInput$onPremisesInstanceTagFilters": "

        The replacement set of on-premises instance tags on which to filter, if you want to change them. To keep the existing tags, enter their names. To remove tags, do not enter any tag names.

        " } }, "TagFilterType": { "base": null, "refs": { "TagFilter$Type": "

        The on-premises instance tag filter type:

        • KEY_ONLY: Key only.

        • VALUE_ONLY: Value only.

        • KEY_AND_VALUE: Key and value.

        " } }, "TagLimitExceededException": { "base": "

        The maximum allowed number of tags was exceeded.

        ", "refs": { } }, "TagList": { "base": null, "refs": { "AddTagsToOnPremisesInstancesInput$tags": "

        The tag key-value pairs to add to the on-premises instances.

        Keys and values are both required. Keys cannot be null or empty strings. Value-only tags are not allowed.

        ", "InstanceInfo$tags": "

        The tags currently associated with the on-premises instance.

        ", "RemoveTagsFromOnPremisesInstancesInput$tags": "

        The tag key-value pairs to remove from the on-premises instances.

        " } }, "TagRequiredException": { "base": "

        A tag was not specified.

        ", "refs": { } }, "TimeRange": { "base": "

        Information about a time range.

        ", "refs": { "ListDeploymentsInput$createTimeRange": "

        A time range (start and end) for returning a subset of the list of deployments.

        " } }, "Timestamp": { "base": null, "refs": { "ApplicationInfo$createTime": "

        The time at which the application was created.

        ", "DeploymentConfigInfo$createTime": "

        The time at which the deployment configuration was created.

        ", "DeploymentInfo$createTime": "

        A timestamp indicating when the deployment was created.

        ", "DeploymentInfo$startTime": "

        A timestamp indicating when the deployment was deployed to the deployment group.

        In some cases, the reported value of the start time may be later than the complete time. This is due to differences in the clock settings of back-end servers that participate in the deployment process.

        ", "DeploymentInfo$completeTime": "

        A timestamp indicating when the deployment was complete.

        ", "GenericRevisionInfo$firstUsedTime": "

        When the revision was first used by AWS CodeDeploy.

        ", "GenericRevisionInfo$lastUsedTime": "

        When the revision was last used by AWS CodeDeploy.

        ", "GenericRevisionInfo$registerTime": "

        When the revision was registered with AWS CodeDeploy.

        ", "InstanceInfo$registerTime": "

        The time at which the on-premises instance was registered.

        ", "InstanceInfo$deregisterTime": "

        If the on-premises instance was deregistered, the time at which the on-premises instance was deregistered.

        ", "InstanceSummary$lastUpdatedAt": "

        A timestamp indicating when the instance information was last updated.

        ", "LifecycleEvent$startTime": "

        A timestamp indicating when the deployment lifecycle event started.

        ", "LifecycleEvent$endTime": "

        A timestamp indicating when the deployment lifecycle event ended.

        ", "TimeRange$start": "

        The start time of the time range.

        Specify null to leave the start time open-ended.

        ", "TimeRange$end": "

        The end time of the time range.

        Specify null to leave the end time open-ended.

        " } }, "TriggerConfig": { "base": "

        Information about notification triggers for the deployment group.

        ", "refs": { "TriggerConfigList$member": null } }, "TriggerConfigList": { "base": null, "refs": { "CreateDeploymentGroupInput$triggerConfigurations": "

        Information about triggers to create when the deployment group is created. For examples, see Create a Trigger for an AWS CodeDeploy Event in the AWS CodeDeploy User Guide.

        ", "DeploymentGroupInfo$triggerConfigurations": "

        Information about triggers associated with the deployment group.

        ", "UpdateDeploymentGroupInput$triggerConfigurations": "

        Information about triggers to change when the deployment group is updated. For examples, see Modify Triggers in an AWS CodeDeploy Deployment Group in the AWS CodeDeploy User Guide.

        " } }, "TriggerEventType": { "base": null, "refs": { "TriggerEventTypeList$member": null } }, "TriggerEventTypeList": { "base": null, "refs": { "TriggerConfig$triggerEvents": "

        The event type or types for which notifications are triggered.

        " } }, "TriggerName": { "base": null, "refs": { "TriggerConfig$triggerName": "

        The name of the notification trigger.

        " } }, "TriggerTargetArn": { "base": null, "refs": { "TriggerConfig$triggerTargetArn": "

        The ARN of the Amazon Simple Notification Service topic through which notifications about deployment or instance events are sent.

        " } }, "TriggerTargetsLimitExceededException": { "base": "

        The maximum allowed number of triggers was exceeded.

        ", "refs": { } }, "UpdateApplicationInput": { "base": "

        Represents the input of an update application operation.

        ", "refs": { } }, "UpdateDeploymentGroupInput": { "base": "

        Represents the input of an update deployment group operation.

        ", "refs": { } }, "UpdateDeploymentGroupOutput": { "base": "

        Represents the output of an update deployment group operation.

        ", "refs": { } }, "Value": { "base": null, "refs": { "EC2TagFilter$Value": "

        The tag filter value.

        ", "Tag$Value": "

        The tag's value.

        ", "TagFilter$Value": "

        The on-premises instance tag filter value.

        " } }, "VersionId": { "base": null, "refs": { "S3Location$version": "

        A specific version of the Amazon S3 object that represents the bundled artifacts for the application revision.

        If the version is not specified, the system will use the most recent version by default.

        " } } } } aws-sdk-go-1.4.22/models/apis/codedeploy/2014-10-06/examples-1.json000066400000000000000000000000541300374646400240260ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/codedeploy/2014-10-06/paginators-1.json000066400000000000000000000015601300374646400243620ustar00rootroot00000000000000{ "pagination": { "ListApplicationRevisions": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "revisions" }, "ListApplications": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "applications" }, "ListDeploymentConfigs": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "deploymentConfigsList" }, "ListDeploymentGroups": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "deploymentGroups" }, "ListDeploymentInstances": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "instancesList" }, "ListDeployments": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "deployments" } } } aws-sdk-go-1.4.22/models/apis/codedeploy/2014-10-06/waiters-2.json000066400000000000000000000012261300374646400236710ustar00rootroot00000000000000{ "version": 2, "waiters": { "DeploymentSuccessful": { "delay": 15, "operation": "GetDeployment", "maxAttempts": 120, "acceptors": [ { "expected": "Succeeded", "matcher": "path", "state": "success", "argument": "deploymentInfo.status" }, { "expected": "Failed", "matcher": "path", "state": "failure", "argument": "deploymentInfo.status" }, { "expected": "Stopped", "matcher": "path", "state": "failure", "argument": "deploymentInfo.status" } ] } } } aws-sdk-go-1.4.22/models/apis/codepipeline/000077500000000000000000000000001300374646400204425ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/codepipeline/2015-07-09/000077500000000000000000000000001300374646400215035ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/codepipeline/2015-07-09/api-2.json000066400000000000000000001244561300374646400233220ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-07-09", "endpointPrefix":"codepipeline", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"CodePipeline", "serviceFullName":"AWS CodePipeline", "signatureVersion":"v4", "targetPrefix":"CodePipeline_20150709" }, "operations":{ "AcknowledgeJob":{ "name":"AcknowledgeJob", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AcknowledgeJobInput"}, "output":{"shape":"AcknowledgeJobOutput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"InvalidNonceException"}, {"shape":"JobNotFoundException"} ] }, "AcknowledgeThirdPartyJob":{ "name":"AcknowledgeThirdPartyJob", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AcknowledgeThirdPartyJobInput"}, "output":{"shape":"AcknowledgeThirdPartyJobOutput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"InvalidNonceException"}, {"shape":"JobNotFoundException"}, {"shape":"InvalidClientTokenException"} ] }, "CreateCustomActionType":{ "name":"CreateCustomActionType", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateCustomActionTypeInput"}, "output":{"shape":"CreateCustomActionTypeOutput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"LimitExceededException"} ] }, "CreatePipeline":{ "name":"CreatePipeline", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreatePipelineInput"}, "output":{"shape":"CreatePipelineOutput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"PipelineNameInUseException"}, {"shape":"InvalidStageDeclarationException"}, {"shape":"InvalidActionDeclarationException"}, {"shape":"InvalidBlockerDeclarationException"}, {"shape":"InvalidStructureException"}, {"shape":"LimitExceededException"} ] }, "DeleteCustomActionType":{ "name":"DeleteCustomActionType", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteCustomActionTypeInput"}, "errors":[ {"shape":"ValidationException"} ] }, "DeletePipeline":{ "name":"DeletePipeline", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeletePipelineInput"}, "errors":[ {"shape":"ValidationException"} ] }, "DisableStageTransition":{ "name":"DisableStageTransition", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableStageTransitionInput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"PipelineNotFoundException"}, {"shape":"StageNotFoundException"} ] }, "EnableStageTransition":{ "name":"EnableStageTransition", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableStageTransitionInput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"PipelineNotFoundException"}, {"shape":"StageNotFoundException"} ] }, "GetJobDetails":{ "name":"GetJobDetails", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetJobDetailsInput"}, "output":{"shape":"GetJobDetailsOutput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"JobNotFoundException"} ] }, "GetPipeline":{ "name":"GetPipeline", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetPipelineInput"}, "output":{"shape":"GetPipelineOutput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"PipelineNotFoundException"}, {"shape":"PipelineVersionNotFoundException"} ] }, "GetPipelineExecution":{ "name":"GetPipelineExecution", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetPipelineExecutionInput"}, "output":{"shape":"GetPipelineExecutionOutput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"PipelineNotFoundException"}, {"shape":"PipelineExecutionNotFoundException"} ] }, "GetPipelineState":{ "name":"GetPipelineState", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetPipelineStateInput"}, "output":{"shape":"GetPipelineStateOutput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"PipelineNotFoundException"} ] }, "GetThirdPartyJobDetails":{ "name":"GetThirdPartyJobDetails", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetThirdPartyJobDetailsInput"}, "output":{"shape":"GetThirdPartyJobDetailsOutput"}, "errors":[ {"shape":"JobNotFoundException"}, {"shape":"ValidationException"}, {"shape":"InvalidClientTokenException"}, {"shape":"InvalidJobException"} ] }, "ListActionTypes":{ "name":"ListActionTypes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListActionTypesInput"}, "output":{"shape":"ListActionTypesOutput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"InvalidNextTokenException"} ] }, "ListPipelines":{ "name":"ListPipelines", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListPipelinesInput"}, "output":{"shape":"ListPipelinesOutput"}, "errors":[ {"shape":"InvalidNextTokenException"} ] }, "PollForJobs":{ "name":"PollForJobs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PollForJobsInput"}, "output":{"shape":"PollForJobsOutput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ActionTypeNotFoundException"} ] }, "PollForThirdPartyJobs":{ "name":"PollForThirdPartyJobs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PollForThirdPartyJobsInput"}, "output":{"shape":"PollForThirdPartyJobsOutput"}, "errors":[ {"shape":"ActionTypeNotFoundException"}, {"shape":"ValidationException"} ] }, "PutActionRevision":{ "name":"PutActionRevision", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutActionRevisionInput"}, "output":{"shape":"PutActionRevisionOutput"}, "errors":[ {"shape":"PipelineNotFoundException"}, {"shape":"StageNotFoundException"}, {"shape":"ActionNotFoundException"}, {"shape":"ValidationException"} ] }, "PutApprovalResult":{ "name":"PutApprovalResult", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutApprovalResultInput"}, "output":{"shape":"PutApprovalResultOutput"}, "errors":[ {"shape":"InvalidApprovalTokenException"}, {"shape":"ApprovalAlreadyCompletedException"}, {"shape":"PipelineNotFoundException"}, {"shape":"StageNotFoundException"}, {"shape":"ActionNotFoundException"}, {"shape":"ValidationException"} ] }, "PutJobFailureResult":{ "name":"PutJobFailureResult", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutJobFailureResultInput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"JobNotFoundException"}, {"shape":"InvalidJobStateException"} ] }, "PutJobSuccessResult":{ "name":"PutJobSuccessResult", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutJobSuccessResultInput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"JobNotFoundException"}, {"shape":"InvalidJobStateException"} ] }, "PutThirdPartyJobFailureResult":{ "name":"PutThirdPartyJobFailureResult", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutThirdPartyJobFailureResultInput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"JobNotFoundException"}, {"shape":"InvalidJobStateException"}, {"shape":"InvalidClientTokenException"} ] }, "PutThirdPartyJobSuccessResult":{ "name":"PutThirdPartyJobSuccessResult", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutThirdPartyJobSuccessResultInput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"JobNotFoundException"}, {"shape":"InvalidJobStateException"}, {"shape":"InvalidClientTokenException"} ] }, "RetryStageExecution":{ "name":"RetryStageExecution", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RetryStageExecutionInput"}, "output":{"shape":"RetryStageExecutionOutput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"PipelineNotFoundException"}, {"shape":"StageNotFoundException"}, {"shape":"StageNotRetryableException"}, {"shape":"NotLatestPipelineExecutionException"} ] }, "StartPipelineExecution":{ "name":"StartPipelineExecution", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartPipelineExecutionInput"}, "output":{"shape":"StartPipelineExecutionOutput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"PipelineNotFoundException"} ] }, "UpdatePipeline":{ "name":"UpdatePipeline", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdatePipelineInput"}, "output":{"shape":"UpdatePipelineOutput"}, "errors":[ {"shape":"ValidationException"}, {"shape":"InvalidStageDeclarationException"}, {"shape":"InvalidActionDeclarationException"}, {"shape":"InvalidBlockerDeclarationException"}, {"shape":"InvalidStructureException"} ] } }, "shapes":{ "AWSSessionCredentials":{ "type":"structure", "required":[ "accessKeyId", "secretAccessKey", "sessionToken" ], "members":{ "accessKeyId":{"shape":"AccessKeyId"}, "secretAccessKey":{"shape":"SecretAccessKey"}, "sessionToken":{"shape":"SessionToken"} }, "sensitive":true }, "AccessKeyId":{"type":"string"}, "AccountId":{ "type":"string", "pattern":"[0-9]{12}" }, "AcknowledgeJobInput":{ "type":"structure", "required":[ "jobId", "nonce" ], "members":{ "jobId":{"shape":"JobId"}, "nonce":{"shape":"Nonce"} } }, "AcknowledgeJobOutput":{ "type":"structure", "members":{ "status":{"shape":"JobStatus"} } }, "AcknowledgeThirdPartyJobInput":{ "type":"structure", "required":[ "jobId", "nonce", "clientToken" ], "members":{ "jobId":{"shape":"ThirdPartyJobId"}, "nonce":{"shape":"Nonce"}, "clientToken":{"shape":"ClientToken"} } }, "AcknowledgeThirdPartyJobOutput":{ "type":"structure", "members":{ "status":{"shape":"JobStatus"} } }, "ActionCategory":{ "type":"string", "enum":[ "Source", "Build", "Deploy", "Test", "Invoke", "Approval" ] }, "ActionConfiguration":{ "type":"structure", "members":{ "configuration":{"shape":"ActionConfigurationMap"} } }, "ActionConfigurationKey":{ "type":"string", "max":50, "min":1 }, "ActionConfigurationMap":{ "type":"map", "key":{"shape":"ActionConfigurationKey"}, "value":{"shape":"ActionConfigurationValue"} }, "ActionConfigurationProperty":{ "type":"structure", "required":[ "name", "required", "key", "secret" ], "members":{ "name":{"shape":"ActionConfigurationKey"}, "required":{"shape":"Boolean"}, "key":{"shape":"Boolean"}, "secret":{"shape":"Boolean"}, "queryable":{"shape":"Boolean"}, "description":{"shape":"Description"}, "type":{"shape":"ActionConfigurationPropertyType"} } }, "ActionConfigurationPropertyList":{ "type":"list", "member":{"shape":"ActionConfigurationProperty"}, "max":10 }, "ActionConfigurationPropertyType":{ "type":"string", "enum":[ "String", "Number", "Boolean" ] }, "ActionConfigurationQueryableValue":{ "type":"string", "max":20, "min":1, "pattern":"[a-zA-Z0-9_-]+" }, "ActionConfigurationValue":{ "type":"string", "max":500, "min":1 }, "ActionContext":{ "type":"structure", "members":{ "name":{"shape":"ActionName"} } }, "ActionDeclaration":{ "type":"structure", "required":[ "name", "actionTypeId" ], "members":{ "name":{"shape":"ActionName"}, "actionTypeId":{"shape":"ActionTypeId"}, "runOrder":{"shape":"ActionRunOrder"}, "configuration":{"shape":"ActionConfigurationMap"}, "outputArtifacts":{"shape":"OutputArtifactList"}, "inputArtifacts":{"shape":"InputArtifactList"}, "roleArn":{"shape":"RoleArn"} } }, "ActionExecution":{ "type":"structure", "members":{ "status":{"shape":"ActionExecutionStatus"}, "summary":{"shape":"ExecutionSummary"}, "lastStatusChange":{"shape":"Timestamp"}, "token":{"shape":"ActionExecutionToken"}, "lastUpdatedBy":{"shape":"LastUpdatedBy"}, "externalExecutionId":{"shape":"ExecutionId"}, "externalExecutionUrl":{"shape":"Url"}, "percentComplete":{"shape":"Percentage"}, "errorDetails":{"shape":"ErrorDetails"} } }, "ActionExecutionStatus":{ "type":"string", "enum":[ "InProgress", "Succeeded", "Failed" ] }, "ActionExecutionToken":{"type":"string"}, "ActionName":{ "type":"string", "max":100, "min":1, "pattern":"[A-Za-z0-9.@\\-_]+" }, "ActionNotFoundException":{ "type":"structure", "members":{ }, "exception":true }, "ActionOwner":{ "type":"string", "enum":[ "AWS", "ThirdParty", "Custom" ] }, "ActionProvider":{ "type":"string", "max":25, "min":1, "pattern":"[0-9A-Za-z_-]+" }, "ActionRevision":{ "type":"structure", "required":[ "revisionId", "revisionChangeId", "created" ], "members":{ "revisionId":{"shape":"Revision"}, "revisionChangeId":{"shape":"RevisionChangeIdentifier"}, "created":{"shape":"Timestamp"} } }, "ActionRunOrder":{ "type":"integer", "max":999, "min":1 }, "ActionState":{ "type":"structure", "members":{ "actionName":{"shape":"ActionName"}, "currentRevision":{"shape":"ActionRevision"}, "latestExecution":{"shape":"ActionExecution"}, "entityUrl":{"shape":"Url"}, "revisionUrl":{"shape":"Url"} } }, "ActionStateList":{ "type":"list", "member":{"shape":"ActionState"} }, "ActionType":{ "type":"structure", "required":[ "id", "inputArtifactDetails", "outputArtifactDetails" ], "members":{ "id":{"shape":"ActionTypeId"}, "settings":{"shape":"ActionTypeSettings"}, "actionConfigurationProperties":{"shape":"ActionConfigurationPropertyList"}, "inputArtifactDetails":{"shape":"ArtifactDetails"}, "outputArtifactDetails":{"shape":"ArtifactDetails"} } }, "ActionTypeId":{ "type":"structure", "required":[ "category", "owner", "provider", "version" ], "members":{ "category":{"shape":"ActionCategory"}, "owner":{"shape":"ActionOwner"}, "provider":{"shape":"ActionProvider"}, "version":{"shape":"Version"} } }, "ActionTypeList":{ "type":"list", "member":{"shape":"ActionType"} }, "ActionTypeNotFoundException":{ "type":"structure", "members":{ }, "exception":true }, "ActionTypeSettings":{ "type":"structure", "members":{ "thirdPartyConfigurationUrl":{"shape":"Url"}, "entityUrlTemplate":{"shape":"UrlTemplate"}, "executionUrlTemplate":{"shape":"UrlTemplate"}, "revisionUrlTemplate":{"shape":"UrlTemplate"} } }, "ApprovalAlreadyCompletedException":{ "type":"structure", "members":{ }, "exception":true }, "ApprovalResult":{ "type":"structure", "required":[ "summary", "status" ], "members":{ "summary":{"shape":"ApprovalSummary"}, "status":{"shape":"ApprovalStatus"} } }, "ApprovalStatus":{ "type":"string", "enum":[ "Approved", "Rejected" ] }, "ApprovalSummary":{ "type":"string", "max":512, "min":0 }, "ApprovalToken":{ "type":"string", "pattern":"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}" }, "Artifact":{ "type":"structure", "members":{ "name":{"shape":"ArtifactName"}, "revision":{"shape":"Revision"}, "location":{"shape":"ArtifactLocation"} } }, "ArtifactDetails":{ "type":"structure", "required":[ "minimumCount", "maximumCount" ], "members":{ "minimumCount":{"shape":"MinimumArtifactCount"}, "maximumCount":{"shape":"MaximumArtifactCount"} } }, "ArtifactList":{ "type":"list", "member":{"shape":"Artifact"} }, "ArtifactLocation":{ "type":"structure", "members":{ "type":{"shape":"ArtifactLocationType"}, "s3Location":{"shape":"S3ArtifactLocation"} } }, "ArtifactLocationType":{ "type":"string", "enum":["S3"] }, "ArtifactName":{ "type":"string", "max":100, "min":1, "pattern":"[a-zA-Z0-9_\\-]+" }, "ArtifactRevision":{ "type":"structure", "members":{ "name":{"shape":"ArtifactName"}, "revisionId":{"shape":"Revision"}, "revisionChangeIdentifier":{"shape":"RevisionChangeIdentifier"}, "revisionSummary":{"shape":"RevisionSummary"}, "created":{"shape":"Timestamp"}, "revisionUrl":{"shape":"Url"} } }, "ArtifactRevisionList":{ "type":"list", "member":{"shape":"ArtifactRevision"} }, "ArtifactStore":{ "type":"structure", "required":[ "type", "location" ], "members":{ "type":{"shape":"ArtifactStoreType"}, "location":{"shape":"ArtifactStoreLocation"}, "encryptionKey":{"shape":"EncryptionKey"} } }, "ArtifactStoreLocation":{ "type":"string", "max":63, "min":3, "pattern":"[a-zA-Z0-9\\-\\.]+" }, "ArtifactStoreType":{ "type":"string", "enum":["S3"] }, "BlockerDeclaration":{ "type":"structure", "required":[ "name", "type" ], "members":{ "name":{"shape":"BlockerName"}, "type":{"shape":"BlockerType"} } }, "BlockerName":{ "type":"string", "max":100, "min":1 }, "BlockerType":{ "type":"string", "enum":["Schedule"] }, "Boolean":{"type":"boolean"}, "ClientId":{ "type":"string", "pattern":"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}" }, "ClientToken":{"type":"string"}, "Code":{"type":"string"}, "ContinuationToken":{"type":"string"}, "CreateCustomActionTypeInput":{ "type":"structure", "required":[ "category", "provider", "version", "inputArtifactDetails", "outputArtifactDetails" ], "members":{ "category":{"shape":"ActionCategory"}, "provider":{"shape":"ActionProvider"}, "version":{"shape":"Version"}, "settings":{"shape":"ActionTypeSettings"}, "configurationProperties":{"shape":"ActionConfigurationPropertyList"}, "inputArtifactDetails":{"shape":"ArtifactDetails"}, "outputArtifactDetails":{"shape":"ArtifactDetails"} } }, "CreateCustomActionTypeOutput":{ "type":"structure", "required":["actionType"], "members":{ "actionType":{"shape":"ActionType"} } }, "CreatePipelineInput":{ "type":"structure", "required":["pipeline"], "members":{ "pipeline":{"shape":"PipelineDeclaration"} } }, "CreatePipelineOutput":{ "type":"structure", "members":{ "pipeline":{"shape":"PipelineDeclaration"} } }, "CurrentRevision":{ "type":"structure", "required":[ "revision", "changeIdentifier" ], "members":{ "revision":{"shape":"Revision"}, "changeIdentifier":{"shape":"RevisionChangeIdentifier"}, "created":{"shape":"Time"}, "revisionSummary":{"shape":"RevisionSummary"} } }, "DeleteCustomActionTypeInput":{ "type":"structure", "required":[ "category", "provider", "version" ], "members":{ "category":{"shape":"ActionCategory"}, "provider":{"shape":"ActionProvider"}, "version":{"shape":"Version"} } }, "DeletePipelineInput":{ "type":"structure", "required":["name"], "members":{ "name":{"shape":"PipelineName"} } }, "Description":{ "type":"string", "max":2048, "min":1 }, "DisableStageTransitionInput":{ "type":"structure", "required":[ "pipelineName", "stageName", "transitionType", "reason" ], "members":{ "pipelineName":{"shape":"PipelineName"}, "stageName":{"shape":"StageName"}, "transitionType":{"shape":"StageTransitionType"}, "reason":{"shape":"DisabledReason"} } }, "DisabledReason":{ "type":"string", "max":300, "min":1, "pattern":"[a-zA-Z0-9!@ \\(\\)\\.\\*\\?\\-]+" }, "EnableStageTransitionInput":{ "type":"structure", "required":[ "pipelineName", "stageName", "transitionType" ], "members":{ "pipelineName":{"shape":"PipelineName"}, "stageName":{"shape":"StageName"}, "transitionType":{"shape":"StageTransitionType"} } }, "Enabled":{"type":"boolean"}, "EncryptionKey":{ "type":"structure", "required":[ "id", "type" ], "members":{ "id":{"shape":"EncryptionKeyId"}, "type":{"shape":"EncryptionKeyType"} } }, "EncryptionKeyId":{ "type":"string", "max":100, "min":1 }, "EncryptionKeyType":{ "type":"string", "enum":["KMS"] }, "ErrorDetails":{ "type":"structure", "members":{ "code":{"shape":"Code"}, "message":{"shape":"Message"} } }, "ExecutionDetails":{ "type":"structure", "members":{ "summary":{"shape":"ExecutionSummary"}, "externalExecutionId":{"shape":"ExecutionId"}, "percentComplete":{"shape":"Percentage"} } }, "ExecutionId":{ "type":"string", "max":1500, "min":1 }, "ExecutionSummary":{"type":"string"}, "FailureDetails":{ "type":"structure", "required":[ "type", "message" ], "members":{ "type":{"shape":"FailureType"}, "message":{"shape":"Message"}, "externalExecutionId":{"shape":"ExecutionId"} } }, "FailureType":{ "type":"string", "enum":[ "JobFailed", "ConfigurationError", "PermissionError", "RevisionOutOfSync", "RevisionUnavailable", "SystemUnavailable" ] }, "GetJobDetailsInput":{ "type":"structure", "required":["jobId"], "members":{ "jobId":{"shape":"JobId"} } }, "GetJobDetailsOutput":{ "type":"structure", "members":{ "jobDetails":{"shape":"JobDetails"} } }, "GetPipelineExecutionInput":{ "type":"structure", "required":[ "pipelineName", "pipelineExecutionId" ], "members":{ "pipelineName":{"shape":"PipelineName"}, "pipelineExecutionId":{"shape":"PipelineExecutionId"} } }, "GetPipelineExecutionOutput":{ "type":"structure", "members":{ "pipelineExecution":{"shape":"PipelineExecution"} } }, "GetPipelineInput":{ "type":"structure", "required":["name"], "members":{ "name":{"shape":"PipelineName"}, "version":{"shape":"PipelineVersion"} } }, "GetPipelineOutput":{ "type":"structure", "members":{ "pipeline":{"shape":"PipelineDeclaration"} } }, "GetPipelineStateInput":{ "type":"structure", "required":["name"], "members":{ "name":{"shape":"PipelineName"} } }, "GetPipelineStateOutput":{ "type":"structure", "members":{ "pipelineName":{"shape":"PipelineName"}, "pipelineVersion":{"shape":"PipelineVersion"}, "stageStates":{"shape":"StageStateList"}, "created":{"shape":"Timestamp"}, "updated":{"shape":"Timestamp"} } }, "GetThirdPartyJobDetailsInput":{ "type":"structure", "required":[ "jobId", "clientToken" ], "members":{ "jobId":{"shape":"ThirdPartyJobId"}, "clientToken":{"shape":"ClientToken"} } }, "GetThirdPartyJobDetailsOutput":{ "type":"structure", "members":{ "jobDetails":{"shape":"ThirdPartyJobDetails"} } }, "InputArtifact":{ "type":"structure", "required":["name"], "members":{ "name":{"shape":"ArtifactName"} } }, "InputArtifactList":{ "type":"list", "member":{"shape":"InputArtifact"} }, "InvalidActionDeclarationException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidApprovalTokenException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidBlockerDeclarationException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidClientTokenException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidJobException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidJobStateException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidNextTokenException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidNonceException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidStageDeclarationException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidStructureException":{ "type":"structure", "members":{ }, "exception":true }, "Job":{ "type":"structure", "members":{ "id":{"shape":"JobId"}, "data":{"shape":"JobData"}, "nonce":{"shape":"Nonce"}, "accountId":{"shape":"AccountId"} } }, "JobData":{ "type":"structure", "members":{ "actionTypeId":{"shape":"ActionTypeId"}, "actionConfiguration":{"shape":"ActionConfiguration"}, "pipelineContext":{"shape":"PipelineContext"}, "inputArtifacts":{"shape":"ArtifactList"}, "outputArtifacts":{"shape":"ArtifactList"}, "artifactCredentials":{"shape":"AWSSessionCredentials"}, "continuationToken":{"shape":"ContinuationToken"}, "encryptionKey":{"shape":"EncryptionKey"} } }, "JobDetails":{ "type":"structure", "members":{ "id":{"shape":"JobId"}, "data":{"shape":"JobData"}, "accountId":{"shape":"AccountId"} } }, "JobId":{ "type":"string", "pattern":"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}" }, "JobList":{ "type":"list", "member":{"shape":"Job"} }, "JobNotFoundException":{ "type":"structure", "members":{ }, "exception":true }, "JobStatus":{ "type":"string", "enum":[ "Created", "Queued", "Dispatched", "InProgress", "TimedOut", "Succeeded", "Failed" ] }, "LastChangedAt":{"type":"timestamp"}, "LastChangedBy":{"type":"string"}, "LastUpdatedBy":{"type":"string"}, "LimitExceededException":{ "type":"structure", "members":{ }, "exception":true }, "ListActionTypesInput":{ "type":"structure", "members":{ "actionOwnerFilter":{"shape":"ActionOwner"}, "nextToken":{"shape":"NextToken"} } }, "ListActionTypesOutput":{ "type":"structure", "required":["actionTypes"], "members":{ "actionTypes":{"shape":"ActionTypeList"}, "nextToken":{"shape":"NextToken"} } }, "ListPipelinesInput":{ "type":"structure", "members":{ "nextToken":{"shape":"NextToken"} } }, "ListPipelinesOutput":{ "type":"structure", "members":{ "pipelines":{"shape":"PipelineList"}, "nextToken":{"shape":"NextToken"} } }, "MaxBatchSize":{ "type":"integer", "min":1 }, "MaximumArtifactCount":{ "type":"integer", "max":5, "min":0 }, "Message":{"type":"string"}, "MinimumArtifactCount":{ "type":"integer", "max":5, "min":0 }, "NextToken":{"type":"string"}, "Nonce":{"type":"string"}, "NotLatestPipelineExecutionException":{ "type":"structure", "members":{ }, "exception":true }, "OutputArtifact":{ "type":"structure", "required":["name"], "members":{ "name":{"shape":"ArtifactName"} } }, "OutputArtifactList":{ "type":"list", "member":{"shape":"OutputArtifact"} }, "Percentage":{ "type":"integer", "max":100, "min":0 }, "PipelineContext":{ "type":"structure", "members":{ "pipelineName":{"shape":"PipelineName"}, "stage":{"shape":"StageContext"}, "action":{"shape":"ActionContext"} } }, "PipelineDeclaration":{ "type":"structure", "required":[ "name", "roleArn", "artifactStore", "stages" ], "members":{ "name":{"shape":"PipelineName"}, "roleArn":{"shape":"RoleArn"}, "artifactStore":{"shape":"ArtifactStore"}, "stages":{"shape":"PipelineStageDeclarationList"}, "version":{"shape":"PipelineVersion"} } }, "PipelineExecution":{ "type":"structure", "members":{ "pipelineName":{"shape":"PipelineName"}, "pipelineVersion":{"shape":"PipelineVersion"}, "pipelineExecutionId":{"shape":"PipelineExecutionId"}, "status":{"shape":"PipelineExecutionStatus"}, "artifactRevisions":{"shape":"ArtifactRevisionList"} } }, "PipelineExecutionId":{ "type":"string", "pattern":"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}" }, "PipelineExecutionNotFoundException":{ "type":"structure", "members":{ }, "exception":true }, "PipelineExecutionStatus":{ "type":"string", "enum":[ "InProgress", "Succeeded", "Superseded", "Failed" ] }, "PipelineList":{ "type":"list", "member":{"shape":"PipelineSummary"} }, "PipelineName":{ "type":"string", "max":100, "min":1, "pattern":"[A-Za-z0-9.@\\-_]+" }, "PipelineNameInUseException":{ "type":"structure", "members":{ }, "exception":true }, "PipelineNotFoundException":{ "type":"structure", "members":{ }, "exception":true }, "PipelineStageDeclarationList":{ "type":"list", "member":{"shape":"StageDeclaration"} }, "PipelineSummary":{ "type":"structure", "members":{ "name":{"shape":"PipelineName"}, "version":{"shape":"PipelineVersion"}, "created":{"shape":"Timestamp"}, "updated":{"shape":"Timestamp"} } }, "PipelineVersion":{ "type":"integer", "min":1 }, "PipelineVersionNotFoundException":{ "type":"structure", "members":{ }, "exception":true }, "PollForJobsInput":{ "type":"structure", "required":["actionTypeId"], "members":{ "actionTypeId":{"shape":"ActionTypeId"}, "maxBatchSize":{"shape":"MaxBatchSize"}, "queryParam":{"shape":"QueryParamMap"} } }, "PollForJobsOutput":{ "type":"structure", "members":{ "jobs":{"shape":"JobList"} } }, "PollForThirdPartyJobsInput":{ "type":"structure", "required":["actionTypeId"], "members":{ "actionTypeId":{"shape":"ActionTypeId"}, "maxBatchSize":{"shape":"MaxBatchSize"} } }, "PollForThirdPartyJobsOutput":{ "type":"structure", "members":{ "jobs":{"shape":"ThirdPartyJobList"} } }, "PutActionRevisionInput":{ "type":"structure", "required":[ "pipelineName", "stageName", "actionName", "actionRevision" ], "members":{ "pipelineName":{"shape":"PipelineName"}, "stageName":{"shape":"StageName"}, "actionName":{"shape":"ActionName"}, "actionRevision":{"shape":"ActionRevision"} } }, "PutActionRevisionOutput":{ "type":"structure", "members":{ "newRevision":{"shape":"Boolean"}, "pipelineExecutionId":{"shape":"PipelineExecutionId"} } }, "PutApprovalResultInput":{ "type":"structure", "required":[ "pipelineName", "stageName", "actionName", "result", "token" ], "members":{ "pipelineName":{"shape":"PipelineName"}, "stageName":{"shape":"StageName"}, "actionName":{"shape":"ActionName"}, "result":{"shape":"ApprovalResult"}, "token":{"shape":"ApprovalToken"} } }, "PutApprovalResultOutput":{ "type":"structure", "members":{ "approvedAt":{"shape":"Timestamp"} } }, "PutJobFailureResultInput":{ "type":"structure", "required":[ "jobId", "failureDetails" ], "members":{ "jobId":{"shape":"JobId"}, "failureDetails":{"shape":"FailureDetails"} } }, "PutJobSuccessResultInput":{ "type":"structure", "required":["jobId"], "members":{ "jobId":{"shape":"JobId"}, "currentRevision":{"shape":"CurrentRevision"}, "continuationToken":{"shape":"ContinuationToken"}, "executionDetails":{"shape":"ExecutionDetails"} } }, "PutThirdPartyJobFailureResultInput":{ "type":"structure", "required":[ "jobId", "clientToken", "failureDetails" ], "members":{ "jobId":{"shape":"ThirdPartyJobId"}, "clientToken":{"shape":"ClientToken"}, "failureDetails":{"shape":"FailureDetails"} } }, "PutThirdPartyJobSuccessResultInput":{ "type":"structure", "required":[ "jobId", "clientToken" ], "members":{ "jobId":{"shape":"ThirdPartyJobId"}, "clientToken":{"shape":"ClientToken"}, "currentRevision":{"shape":"CurrentRevision"}, "continuationToken":{"shape":"ContinuationToken"}, "executionDetails":{"shape":"ExecutionDetails"} } }, "QueryParamMap":{ "type":"map", "key":{"shape":"ActionConfigurationKey"}, "value":{"shape":"ActionConfigurationQueryableValue"}, "max":1, "min":0 }, "RetryStageExecutionInput":{ "type":"structure", "required":[ "pipelineName", "stageName", "pipelineExecutionId", "retryMode" ], "members":{ "pipelineName":{"shape":"PipelineName"}, "stageName":{"shape":"StageName"}, "pipelineExecutionId":{"shape":"PipelineExecutionId"}, "retryMode":{"shape":"StageRetryMode"} } }, "RetryStageExecutionOutput":{ "type":"structure", "members":{ "pipelineExecutionId":{"shape":"PipelineExecutionId"} } }, "Revision":{ "type":"string", "max":1500, "min":1 }, "RevisionChangeIdentifier":{ "type":"string", "max":100, "min":1 }, "RevisionSummary":{ "type":"string", "max":2048, "min":1 }, "RoleArn":{ "type":"string", "max":1024, "pattern":"arn:aws(-[\\w]+)*:iam::[0-9]{12}:role/.*" }, "S3ArtifactLocation":{ "type":"structure", "required":[ "bucketName", "objectKey" ], "members":{ "bucketName":{"shape":"S3BucketName"}, "objectKey":{"shape":"S3ObjectKey"} } }, "S3BucketName":{"type":"string"}, "S3ObjectKey":{"type":"string"}, "SecretAccessKey":{"type":"string"}, "SessionToken":{"type":"string"}, "StageActionDeclarationList":{ "type":"list", "member":{"shape":"ActionDeclaration"} }, "StageBlockerDeclarationList":{ "type":"list", "member":{"shape":"BlockerDeclaration"} }, "StageContext":{ "type":"structure", "members":{ "name":{"shape":"StageName"} } }, "StageDeclaration":{ "type":"structure", "required":[ "name", "actions" ], "members":{ "name":{"shape":"StageName"}, "blockers":{"shape":"StageBlockerDeclarationList"}, "actions":{"shape":"StageActionDeclarationList"} } }, "StageExecution":{ "type":"structure", "required":[ "pipelineExecutionId", "status" ], "members":{ "pipelineExecutionId":{"shape":"PipelineExecutionId"}, "status":{"shape":"StageExecutionStatus"} } }, "StageExecutionStatus":{ "type":"string", "enum":[ "InProgress", "Failed", "Succeeded" ] }, "StageName":{ "type":"string", "max":100, "min":1, "pattern":"[A-Za-z0-9.@\\-_]+" }, "StageNotFoundException":{ "type":"structure", "members":{ }, "exception":true }, "StageNotRetryableException":{ "type":"structure", "members":{ }, "exception":true }, "StageRetryMode":{ "type":"string", "enum":["FAILED_ACTIONS"] }, "StageState":{ "type":"structure", "members":{ "stageName":{"shape":"StageName"}, "inboundTransitionState":{"shape":"TransitionState"}, "actionStates":{"shape":"ActionStateList"}, "latestExecution":{"shape":"StageExecution"} } }, "StageStateList":{ "type":"list", "member":{"shape":"StageState"} }, "StageTransitionType":{ "type":"string", "enum":[ "Inbound", "Outbound" ] }, "StartPipelineExecutionInput":{ "type":"structure", "required":["name"], "members":{ "name":{"shape":"PipelineName"} } }, "StartPipelineExecutionOutput":{ "type":"structure", "members":{ "pipelineExecutionId":{"shape":"PipelineExecutionId"} } }, "ThirdPartyJob":{ "type":"structure", "members":{ "clientId":{"shape":"ClientId"}, "jobId":{"shape":"JobId"} } }, "ThirdPartyJobData":{ "type":"structure", "members":{ "actionTypeId":{"shape":"ActionTypeId"}, "actionConfiguration":{"shape":"ActionConfiguration"}, "pipelineContext":{"shape":"PipelineContext"}, "inputArtifacts":{"shape":"ArtifactList"}, "outputArtifacts":{"shape":"ArtifactList"}, "artifactCredentials":{"shape":"AWSSessionCredentials"}, "continuationToken":{"shape":"ContinuationToken"}, "encryptionKey":{"shape":"EncryptionKey"} } }, "ThirdPartyJobDetails":{ "type":"structure", "members":{ "id":{"shape":"ThirdPartyJobId"}, "data":{"shape":"ThirdPartyJobData"}, "nonce":{"shape":"Nonce"} } }, "ThirdPartyJobId":{ "type":"string", "max":512, "min":1 }, "ThirdPartyJobList":{ "type":"list", "member":{"shape":"ThirdPartyJob"} }, "Time":{"type":"timestamp"}, "Timestamp":{"type":"timestamp"}, "TransitionState":{ "type":"structure", "members":{ "enabled":{"shape":"Enabled"}, "lastChangedBy":{"shape":"LastChangedBy"}, "lastChangedAt":{"shape":"LastChangedAt"}, "disabledReason":{"shape":"DisabledReason"} } }, "UpdatePipelineInput":{ "type":"structure", "required":["pipeline"], "members":{ "pipeline":{"shape":"PipelineDeclaration"} } }, "UpdatePipelineOutput":{ "type":"structure", "members":{ "pipeline":{"shape":"PipelineDeclaration"} } }, "Url":{ "type":"string", "max":2048, "min":1 }, "UrlTemplate":{ "type":"string", "max":2048, "min":1 }, "ValidationException":{ "type":"structure", "members":{ }, "exception":true }, "Version":{ "type":"string", "max":9, "min":1, "pattern":"[0-9A-Za-z_-]+" } } } aws-sdk-go-1.4.22/models/apis/codepipeline/2015-07-09/docs-2.json000066400000000000000000002047041300374646400234740ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS CodePipeline

        Overview

        This is the AWS CodePipeline API Reference. This guide provides descriptions of the actions and data types for AWS CodePipeline. Some functionality for your pipeline is only configurable through the API. For additional information, see the AWS CodePipeline User Guide.

        You can use the AWS CodePipeline API to work with pipelines, stages, actions, gates, and transitions, as described below.

        Pipelines are models of automated release processes. Each pipeline is uniquely named, and consists of actions, gates, and stages.

        You can work with pipelines by calling:

        • CreatePipeline, which creates a uniquely-named pipeline.

        • DeletePipeline, which deletes the specified pipeline.

        • GetPipeline, which returns information about a pipeline structure.

        • GetPipelineExecution, which returns information about a specific execution of a pipeline.

        • GetPipelineState, which returns information about the current state of the stages and actions of a pipeline.

        • ListPipelines, which gets a summary of all of the pipelines associated with your account.

        • StartPipelineExecution, which runs the the most recent revision of an artifact through the pipeline.

        • UpdatePipeline, which updates a pipeline with edits or changes to the structure of the pipeline.

        Pipelines include stages, which are which are logical groupings of gates and actions. Each stage contains one or more actions that must complete before the next stage begins. A stage will result in success or failure. If a stage fails, then the pipeline stops at that stage and will remain stopped until either a new version of an artifact appears in the source location, or a user takes action to re-run the most recent artifact through the pipeline. You can call GetPipelineState, which displays the status of a pipeline, including the status of stages in the pipeline, or GetPipeline, which returns the entire structure of the pipeline, including the stages of that pipeline. For more information about the structure of stages and actions, also refer to the AWS CodePipeline Pipeline Structure Reference.

        Pipeline stages include actions, which are categorized into categories such as source or build actions performed within a stage of a pipeline. For example, you can use a source action to import artifacts into a pipeline from a source such as Amazon S3. Like stages, you do not work with actions directly in most cases, but you do define and interact with actions when working with pipeline operations such as CreatePipeline and GetPipelineState.

        Pipelines also include transitions, which allow the transition of artifacts from one stage to the next in a pipeline after the actions in one stage complete.

        You can work with transitions by calling:

        Using the API to integrate with AWS CodePipeline

        For third-party integrators or developers who want to create their own integrations with AWS CodePipeline, the expected sequence varies from the standard API user. In order to integrate with AWS CodePipeline, developers will need to work with the following items:

        Jobs, which are instances of an action. For example, a job for a source action might import a revision of an artifact from a source.

        You can work with jobs by calling:

        Third party jobs, which are instances of an action created by a partner action and integrated into AWS CodePipeline. Partner actions are created by members of the AWS Partner Network.

        You can work with third party jobs by calling:

        ", "operations": { "AcknowledgeJob": "

        Returns information about a specified job and whether that job has been received by the job worker. Only used for custom actions.

        ", "AcknowledgeThirdPartyJob": "

        Confirms a job worker has received the specified job. Only used for partner actions.

        ", "CreateCustomActionType": "

        Creates a new custom action that can be used in all pipelines associated with the AWS account. Only used for custom actions.

        ", "CreatePipeline": "

        Creates a pipeline.

        ", "DeleteCustomActionType": "

        Marks a custom action as deleted. PollForJobs for the custom action will fail after the action is marked for deletion. Only used for custom actions.

        You cannot recreate a custom action after it has been deleted unless you increase the version number of the action.

        ", "DeletePipeline": "

        Deletes the specified pipeline.

        ", "DisableStageTransition": "

        Prevents artifacts in a pipeline from transitioning to the next stage in the pipeline.

        ", "EnableStageTransition": "

        Enables artifacts in a pipeline to transition to a stage in a pipeline.

        ", "GetJobDetails": "

        Returns information about a job. Only used for custom actions.

        When this API is called, AWS CodePipeline returns temporary credentials for the Amazon S3 bucket used to store artifacts for the pipeline, if the action requires access to that Amazon S3 bucket for input or output artifacts. Additionally, this API returns any secret values defined for the action.

        ", "GetPipeline": "

        Returns the metadata, structure, stages, and actions of a pipeline. Can be used to return the entire structure of a pipeline in JSON format, which can then be modified and used to update the pipeline structure with UpdatePipeline.

        ", "GetPipelineExecution": "

        Returns information about an execution of a pipeline, including details about artifacts, the pipeline execution ID, and the name, version, and status of the pipeline.

        ", "GetPipelineState": "

        Returns information about the state of a pipeline, including the stages and actions.

        ", "GetThirdPartyJobDetails": "

        Requests the details of a job for a third party action. Only used for partner actions.

        When this API is called, AWS CodePipeline returns temporary credentials for the Amazon S3 bucket used to store artifacts for the pipeline, if the action requires access to that Amazon S3 bucket for input or output artifacts. Additionally, this API returns any secret values defined for the action.

        ", "ListActionTypes": "

        Gets a summary of all AWS CodePipeline action types associated with your account.

        ", "ListPipelines": "

        Gets a summary of all of the pipelines associated with your account.

        ", "PollForJobs": "

        Returns information about any jobs for AWS CodePipeline to act upon.

        When this API is called, AWS CodePipeline returns temporary credentials for the Amazon S3 bucket used to store artifacts for the pipeline, if the action requires access to that Amazon S3 bucket for input or output artifacts. Additionally, this API returns any secret values defined for the action.

        ", "PollForThirdPartyJobs": "

        Determines whether there are any third party jobs for a job worker to act on. Only used for partner actions.

        When this API is called, AWS CodePipeline returns temporary credentials for the Amazon S3 bucket used to store artifacts for the pipeline, if the action requires access to that Amazon S3 bucket for input or output artifacts.

        ", "PutActionRevision": "

        Provides information to AWS CodePipeline about new revisions to a source.

        ", "PutApprovalResult": "

        Provides the response to a manual approval request to AWS CodePipeline. Valid responses include Approved and Rejected.

        ", "PutJobFailureResult": "

        Represents the failure of a job as returned to the pipeline by a job worker. Only used for custom actions.

        ", "PutJobSuccessResult": "

        Represents the success of a job as returned to the pipeline by a job worker. Only used for custom actions.

        ", "PutThirdPartyJobFailureResult": "

        Represents the failure of a third party job as returned to the pipeline by a job worker. Only used for partner actions.

        ", "PutThirdPartyJobSuccessResult": "

        Represents the success of a third party job as returned to the pipeline by a job worker. Only used for partner actions.

        ", "RetryStageExecution": "

        Resumes the pipeline execution by retrying the last failed actions in a stage.

        ", "StartPipelineExecution": "

        Starts the specified pipeline. Specifically, it begins processing the latest commit to the source location specified as part of the pipeline.

        ", "UpdatePipeline": "

        Updates a specified pipeline with edits or changes to its structure. Use a JSON file with the pipeline structure in conjunction with UpdatePipeline to provide the full structure of the pipeline. Updating the pipeline increases the version number of the pipeline by 1.

        " }, "shapes": { "AWSSessionCredentials": { "base": "

        Represents an AWS session credentials object. These credentials are temporary credentials that are issued by AWS Secure Token Service (STS). They can be used to access input and output artifacts in the Amazon S3 bucket used to store artifact for the pipeline in AWS CodePipeline.

        ", "refs": { "JobData$artifactCredentials": null, "ThirdPartyJobData$artifactCredentials": null } }, "AccessKeyId": { "base": null, "refs": { "AWSSessionCredentials$accessKeyId": "

        The access key for the session.

        " } }, "AccountId": { "base": null, "refs": { "Job$accountId": "

        The ID of the AWS account to use when performing the job.

        ", "JobDetails$accountId": "

        The AWS account ID associated with the job.

        " } }, "AcknowledgeJobInput": { "base": "

        Represents the input of an acknowledge job action.

        ", "refs": { } }, "AcknowledgeJobOutput": { "base": "

        Represents the output of an acknowledge job action.

        ", "refs": { } }, "AcknowledgeThirdPartyJobInput": { "base": "

        Represents the input of an acknowledge third party job action.

        ", "refs": { } }, "AcknowledgeThirdPartyJobOutput": { "base": "

        Represents the output of an acknowledge third party job action.

        ", "refs": { } }, "ActionCategory": { "base": null, "refs": { "ActionTypeId$category": "

        A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Valid categories are limited to one of the values below.

        ", "CreateCustomActionTypeInput$category": "

        The category of the custom action, such as a build action or a test action.

        Although Source and Approval are listed as valid values, they are not currently functional. These values are reserved for future use.

        ", "DeleteCustomActionTypeInput$category": "

        The category of the custom action that you want to delete, such as source or deploy.

        " } }, "ActionConfiguration": { "base": "

        Represents information about an action configuration.

        ", "refs": { "JobData$actionConfiguration": null, "ThirdPartyJobData$actionConfiguration": null } }, "ActionConfigurationKey": { "base": null, "refs": { "ActionConfigurationMap$key": null, "ActionConfigurationProperty$name": "

        The name of the action configuration property.

        ", "QueryParamMap$key": null } }, "ActionConfigurationMap": { "base": null, "refs": { "ActionConfiguration$configuration": "

        The configuration data for the action.

        ", "ActionDeclaration$configuration": "

        The action declaration's configuration.

        " } }, "ActionConfigurationProperty": { "base": "

        Represents information about an action configuration property.

        ", "refs": { "ActionConfigurationPropertyList$member": null } }, "ActionConfigurationPropertyList": { "base": null, "refs": { "ActionType$actionConfigurationProperties": "

        The configuration properties for the action type.

        ", "CreateCustomActionTypeInput$configurationProperties": "

        The configuration properties for the custom action.

        You can refer to a name in the configuration properties of the custom action within the URL templates by following the format of {Config:name}, as long as the configuration property is both required and not secret. For more information, see Create a Custom Action for a Pipeline.

        " } }, "ActionConfigurationPropertyType": { "base": null, "refs": { "ActionConfigurationProperty$type": "

        The type of the configuration property.

        " } }, "ActionConfigurationQueryableValue": { "base": null, "refs": { "QueryParamMap$value": null } }, "ActionConfigurationValue": { "base": null, "refs": { "ActionConfigurationMap$value": null } }, "ActionContext": { "base": "

        Represents the context of an action within the stage of a pipeline to a job worker.

        ", "refs": { "PipelineContext$action": null } }, "ActionDeclaration": { "base": "

        Represents information about an action declaration.

        ", "refs": { "StageActionDeclarationList$member": null } }, "ActionExecution": { "base": "

        Represents information about the run of an action.

        ", "refs": { "ActionState$latestExecution": null } }, "ActionExecutionStatus": { "base": null, "refs": { "ActionExecution$status": "

        The status of the action, or for a completed action, the last status of the action.

        " } }, "ActionExecutionToken": { "base": null, "refs": { "ActionExecution$token": "

        The system-generated token used to identify a unique approval request. The token for each open approval request can be obtained using the GetPipelineState command and is used to validate that the approval request corresponding to this token is still valid.

        " } }, "ActionName": { "base": null, "refs": { "ActionContext$name": "

        The name of the action within the context of a job.

        ", "ActionDeclaration$name": "

        The action declaration's name.

        ", "ActionState$actionName": "

        The name of the action.

        ", "PutActionRevisionInput$actionName": "

        The name of the action that will process the revision.

        ", "PutApprovalResultInput$actionName": "

        The name of the action for which approval is requested.

        " } }, "ActionNotFoundException": { "base": "

        The specified action cannot be found.

        ", "refs": { } }, "ActionOwner": { "base": null, "refs": { "ActionTypeId$owner": "

        The creator of the action being called.

        ", "ListActionTypesInput$actionOwnerFilter": "

        Filters the list of action types to those created by a specified entity.

        " } }, "ActionProvider": { "base": null, "refs": { "ActionTypeId$provider": "

        The provider of the service being called by the action. Valid providers are determined by the action category. For example, an action in the Deploy category type might have a provider of AWS CodeDeploy, which would be specified as CodeDeploy.

        ", "CreateCustomActionTypeInput$provider": "

        The provider of the service used in the custom action, such as AWS CodeDeploy.

        ", "DeleteCustomActionTypeInput$provider": "

        The provider of the service used in the custom action, such as AWS CodeDeploy.

        " } }, "ActionRevision": { "base": "

        Represents information about the version (or revision) of an action.

        ", "refs": { "ActionState$currentRevision": null, "PutActionRevisionInput$actionRevision": null } }, "ActionRunOrder": { "base": null, "refs": { "ActionDeclaration$runOrder": "

        The order in which actions are run.

        " } }, "ActionState": { "base": "

        Represents information about the state of an action.

        ", "refs": { "ActionStateList$member": null } }, "ActionStateList": { "base": null, "refs": { "StageState$actionStates": "

        The state of the stage.

        " } }, "ActionType": { "base": "

        Returns information about the details of an action type.

        ", "refs": { "ActionTypeList$member": null, "CreateCustomActionTypeOutput$actionType": null } }, "ActionTypeId": { "base": "

        Represents information about an action type.

        ", "refs": { "ActionDeclaration$actionTypeId": "

        The configuration information for the action type.

        ", "ActionType$id": null, "JobData$actionTypeId": null, "PollForJobsInput$actionTypeId": null, "PollForThirdPartyJobsInput$actionTypeId": null, "ThirdPartyJobData$actionTypeId": null } }, "ActionTypeList": { "base": null, "refs": { "ListActionTypesOutput$actionTypes": "

        Provides details of the action types.

        " } }, "ActionTypeNotFoundException": { "base": "

        The specified action type cannot be found.

        ", "refs": { } }, "ActionTypeSettings": { "base": "

        Returns information about the settings for an action type.

        ", "refs": { "ActionType$settings": "

        The settings for the action type.

        ", "CreateCustomActionTypeInput$settings": null } }, "ApprovalAlreadyCompletedException": { "base": "

        The approval action has already been approved or rejected.

        ", "refs": { } }, "ApprovalResult": { "base": "

        Represents information about the result of an approval request.

        ", "refs": { "PutApprovalResultInput$result": "

        Represents information about the result of the approval request.

        " } }, "ApprovalStatus": { "base": null, "refs": { "ApprovalResult$status": "

        The response submitted by a reviewer assigned to an approval action request.

        " } }, "ApprovalSummary": { "base": null, "refs": { "ApprovalResult$summary": "

        The summary of the current status of the approval request.

        " } }, "ApprovalToken": { "base": null, "refs": { "PutApprovalResultInput$token": "

        The system-generated token used to identify a unique approval request. The token for each open approval request can be obtained using the GetPipelineState action and is used to validate that the approval request corresponding to this token is still valid.

        " } }, "Artifact": { "base": "

        Represents information about an artifact that will be worked upon by actions in the pipeline.

        ", "refs": { "ArtifactList$member": null } }, "ArtifactDetails": { "base": "

        Returns information about the details of an artifact.

        ", "refs": { "ActionType$inputArtifactDetails": "

        The details of the input artifact for the action, such as its commit ID.

        ", "ActionType$outputArtifactDetails": "

        The details of the output artifact of the action, such as its commit ID.

        ", "CreateCustomActionTypeInput$inputArtifactDetails": null, "CreateCustomActionTypeInput$outputArtifactDetails": null } }, "ArtifactList": { "base": null, "refs": { "JobData$inputArtifacts": "

        The artifact supplied to the job.

        ", "JobData$outputArtifacts": "

        The output of the job.

        ", "ThirdPartyJobData$inputArtifacts": "

        The name of the artifact that will be worked upon by the action, if any. This name might be system-generated, such as \"MyApp\", or might be defined by the user when the action is created. The input artifact name must match the name of an output artifact generated by an action in an earlier action or stage of the pipeline.

        ", "ThirdPartyJobData$outputArtifacts": "

        The name of the artifact that will be the result of the action, if any. This name might be system-generated, such as \"MyBuiltApp\", or might be defined by the user when the action is created.

        " } }, "ArtifactLocation": { "base": "

        Represents information about the location of an artifact.

        ", "refs": { "Artifact$location": "

        The location of an artifact.

        " } }, "ArtifactLocationType": { "base": null, "refs": { "ArtifactLocation$type": "

        The type of artifact in the location.

        " } }, "ArtifactName": { "base": null, "refs": { "Artifact$name": "

        The artifact's name.

        ", "ArtifactRevision$name": "

        The name of an artifact. This name might be system-generated, such as \"MyApp\", or might be defined by the user when an action is created.

        ", "InputArtifact$name": "

        The name of the artifact to be worked on, for example, \"My App\".

        The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.

        ", "OutputArtifact$name": "

        The name of the output of an artifact, such as \"My App\".

        The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.

        Output artifact names must be unique within a pipeline.

        " } }, "ArtifactRevision": { "base": "

        Represents revision details of an artifact.

        ", "refs": { "ArtifactRevisionList$member": null } }, "ArtifactRevisionList": { "base": null, "refs": { "PipelineExecution$artifactRevisions": "

        A list of ArtifactRevision objects included in a pipeline execution.

        " } }, "ArtifactStore": { "base": "

        The Amazon S3 location where artifacts are stored for the pipeline. If this Amazon S3 bucket is created manually, it must meet the requirements for AWS CodePipeline. For more information, see the Concepts.

        ", "refs": { "PipelineDeclaration$artifactStore": null } }, "ArtifactStoreLocation": { "base": null, "refs": { "ArtifactStore$location": "

        The location for storing the artifacts for a pipeline, such as an S3 bucket or folder.

        " } }, "ArtifactStoreType": { "base": null, "refs": { "ArtifactStore$type": "

        The type of the artifact store, such as S3.

        " } }, "BlockerDeclaration": { "base": "

        Reserved for future use.

        ", "refs": { "StageBlockerDeclarationList$member": null } }, "BlockerName": { "base": null, "refs": { "BlockerDeclaration$name": "

        Reserved for future use.

        " } }, "BlockerType": { "base": null, "refs": { "BlockerDeclaration$type": "

        Reserved for future use.

        " } }, "Boolean": { "base": null, "refs": { "ActionConfigurationProperty$required": "

        Whether the configuration property is a required value.

        ", "ActionConfigurationProperty$key": "

        Whether the configuration property is a key.

        ", "ActionConfigurationProperty$secret": "

        Whether the configuration property is secret. Secrets are hidden from all calls except for GetJobDetails, GetThirdPartyJobDetails, PollForJobs, and PollForThirdPartyJobs.

        When updating a pipeline, passing * * * * * without changing any other values of the action will preserve the prior value of the secret.

        ", "ActionConfigurationProperty$queryable": "

        Indicates that the proprety will be used in conjunction with PollForJobs. When creating a custom action, an action can have up to one queryable property. If it has one, that property must be both required and not secret.

        If you create a pipeline with a custom action type, and that custom action contains a queryable property, the value for that configuration property is subject to additional restrictions. The value must be less than or equal to twenty (20) characters. The value can contain only alphanumeric characters, underscores, and hyphens.

        ", "PutActionRevisionOutput$newRevision": "

        Indicates whether the artifact revision was previously used in an execution of the specified pipeline.

        " } }, "ClientId": { "base": null, "refs": { "ThirdPartyJob$clientId": "

        The clientToken portion of the clientId and clientToken pair used to verify that the calling entity is allowed access to the job and its details.

        " } }, "ClientToken": { "base": null, "refs": { "AcknowledgeThirdPartyJobInput$clientToken": "

        The clientToken portion of the clientId and clientToken pair used to verify that the calling entity is allowed access to the job and its details.

        ", "GetThirdPartyJobDetailsInput$clientToken": "

        The clientToken portion of the clientId and clientToken pair used to verify that the calling entity is allowed access to the job and its details.

        ", "PutThirdPartyJobFailureResultInput$clientToken": "

        The clientToken portion of the clientId and clientToken pair used to verify that the calling entity is allowed access to the job and its details.

        ", "PutThirdPartyJobSuccessResultInput$clientToken": "

        The clientToken portion of the clientId and clientToken pair used to verify that the calling entity is allowed access to the job and its details.

        " } }, "Code": { "base": null, "refs": { "ErrorDetails$code": "

        The system ID or error number code of the error.

        " } }, "ContinuationToken": { "base": null, "refs": { "JobData$continuationToken": "

        A system-generated token, such as a AWS CodeDeploy deployment ID, that a job requires in order to continue the job asynchronously.

        ", "PutJobSuccessResultInput$continuationToken": "

        A token generated by a job worker, such as an AWS CodeDeploy deployment ID, that a successful job provides to identify a custom action in progress. Future jobs will use this token in order to identify the running instance of the action. It can be reused to return additional information about the progress of the custom action. When the action is complete, no continuation token should be supplied.

        ", "PutThirdPartyJobSuccessResultInput$continuationToken": "

        A token generated by a job worker, such as an AWS CodeDeploy deployment ID, that a successful job provides to identify a partner action in progress. Future jobs will use this token in order to identify the running instance of the action. It can be reused to return additional information about the progress of the partner action. When the action is complete, no continuation token should be supplied.

        ", "ThirdPartyJobData$continuationToken": "

        A system-generated token, such as a AWS CodeDeploy deployment ID, that a job requires in order to continue the job asynchronously.

        " } }, "CreateCustomActionTypeInput": { "base": "

        Represents the input of a create custom action operation.

        ", "refs": { } }, "CreateCustomActionTypeOutput": { "base": "

        Represents the output of a create custom action operation.

        ", "refs": { } }, "CreatePipelineInput": { "base": "

        Represents the input of a create pipeline action.

        ", "refs": { } }, "CreatePipelineOutput": { "base": "

        Represents the output of a create pipeline action.

        ", "refs": { } }, "CurrentRevision": { "base": "

        Represents information about a current revision.

        ", "refs": { "PutJobSuccessResultInput$currentRevision": "

        The ID of the current revision of the artifact successfully worked upon by the job.

        ", "PutThirdPartyJobSuccessResultInput$currentRevision": null } }, "DeleteCustomActionTypeInput": { "base": "

        Represents the input of a delete custom action operation. The custom action will be marked as deleted.

        ", "refs": { } }, "DeletePipelineInput": { "base": "

        Represents the input of a delete pipeline action.

        ", "refs": { } }, "Description": { "base": null, "refs": { "ActionConfigurationProperty$description": "

        The description of the action configuration property that will be displayed to users.

        " } }, "DisableStageTransitionInput": { "base": "

        Represents the input of a disable stage transition input action.

        ", "refs": { } }, "DisabledReason": { "base": null, "refs": { "DisableStageTransitionInput$reason": "

        The reason given to the user why a stage is disabled, such as waiting for manual approval or manual tests. This message is displayed in the pipeline console UI.

        ", "TransitionState$disabledReason": "

        The user-specified reason why the transition between two stages of a pipeline was disabled.

        " } }, "EnableStageTransitionInput": { "base": "

        Represents the input of an enable stage transition action.

        ", "refs": { } }, "Enabled": { "base": null, "refs": { "TransitionState$enabled": "

        Whether the transition between stages is enabled (true) or disabled (false).

        " } }, "EncryptionKey": { "base": "

        Represents information about the key used to encrypt data in the artifact store, such as an AWS Key Management Service (AWS KMS) key.

        ", "refs": { "ArtifactStore$encryptionKey": "

        The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If this is undefined, the default key for Amazon S3 is used.

        ", "JobData$encryptionKey": null, "ThirdPartyJobData$encryptionKey": "

        The encryption key used to encrypt and decrypt data in the artifact store for the pipeline, such as an AWS Key Management Service (AWS KMS) key. This is optional and might not be present.

        " } }, "EncryptionKeyId": { "base": null, "refs": { "EncryptionKey$id": "

        The ID used to identify the key. For an AWS KMS key, this is the key ID or key ARN.

        " } }, "EncryptionKeyType": { "base": null, "refs": { "EncryptionKey$type": "

        The type of encryption key, such as an AWS Key Management Service (AWS KMS) key. When creating or updating a pipeline, the value must be set to 'KMS'.

        " } }, "ErrorDetails": { "base": "

        Represents information about an error in AWS CodePipeline.

        ", "refs": { "ActionExecution$errorDetails": "

        The details of an error returned by a URL external to AWS.

        " } }, "ExecutionDetails": { "base": "

        The details of the actions taken and results produced on an artifact as it passes through stages in the pipeline.

        ", "refs": { "PutJobSuccessResultInput$executionDetails": "

        The execution details of the successful job, such as the actions taken by the job worker.

        ", "PutThirdPartyJobSuccessResultInput$executionDetails": null } }, "ExecutionId": { "base": null, "refs": { "ActionExecution$externalExecutionId": "

        The external ID of the run of the action.

        ", "ExecutionDetails$externalExecutionId": "

        The system-generated unique ID of this action used to identify this job worker in any external systems, such as AWS CodeDeploy.

        ", "FailureDetails$externalExecutionId": "

        The external ID of the run of the action that failed.

        " } }, "ExecutionSummary": { "base": null, "refs": { "ActionExecution$summary": "

        A summary of the run of the action.

        ", "ExecutionDetails$summary": "

        The summary of the current status of the actions.

        " } }, "FailureDetails": { "base": "

        Represents information about failure details.

        ", "refs": { "PutJobFailureResultInput$failureDetails": "

        The details about the failure of a job.

        ", "PutThirdPartyJobFailureResultInput$failureDetails": null } }, "FailureType": { "base": null, "refs": { "FailureDetails$type": "

        The type of the failure.

        " } }, "GetJobDetailsInput": { "base": "

        Represents the input of a get job details action.

        ", "refs": { } }, "GetJobDetailsOutput": { "base": "

        Represents the output of a get job details action.

        ", "refs": { } }, "GetPipelineExecutionInput": { "base": "

        Represents the input of a get pipeline execution action.

        ", "refs": { } }, "GetPipelineExecutionOutput": { "base": "

        Represents the output of a get pipeline execution action.

        ", "refs": { } }, "GetPipelineInput": { "base": "

        Represents the input of a get pipeline action.

        ", "refs": { } }, "GetPipelineOutput": { "base": "

        Represents the output of a get pipeline action.

        ", "refs": { } }, "GetPipelineStateInput": { "base": "

        Represents the input of a get pipeline state action.

        ", "refs": { } }, "GetPipelineStateOutput": { "base": "

        Represents the output of a get pipeline state action.

        ", "refs": { } }, "GetThirdPartyJobDetailsInput": { "base": "

        Represents the input of a get third party job details action.

        ", "refs": { } }, "GetThirdPartyJobDetailsOutput": { "base": "

        Represents the output of a get third party job details action.

        ", "refs": { } }, "InputArtifact": { "base": "

        Represents information about an artifact to be worked on, such as a test or build artifact.

        ", "refs": { "InputArtifactList$member": null } }, "InputArtifactList": { "base": null, "refs": { "ActionDeclaration$inputArtifacts": "

        The name or ID of the artifact consumed by the action, such as a test or build artifact.

        " } }, "InvalidActionDeclarationException": { "base": "

        The specified action declaration was specified in an invalid format.

        ", "refs": { } }, "InvalidApprovalTokenException": { "base": "

        The approval request already received a response or has expired.

        ", "refs": { } }, "InvalidBlockerDeclarationException": { "base": "

        Reserved for future use.

        ", "refs": { } }, "InvalidClientTokenException": { "base": "

        The client token was specified in an invalid format

        ", "refs": { } }, "InvalidJobException": { "base": "

        The specified job was specified in an invalid format or cannot be found.

        ", "refs": { } }, "InvalidJobStateException": { "base": "

        The specified job state was specified in an invalid format.

        ", "refs": { } }, "InvalidNextTokenException": { "base": "

        The next token was specified in an invalid format. Make sure that the next token you provided is the token returned by a previous call.

        ", "refs": { } }, "InvalidNonceException": { "base": "

        The specified nonce was specified in an invalid format.

        ", "refs": { } }, "InvalidStageDeclarationException": { "base": "

        The specified stage declaration was specified in an invalid format.

        ", "refs": { } }, "InvalidStructureException": { "base": "

        The specified structure was specified in an invalid format.

        ", "refs": { } }, "Job": { "base": "

        Represents information about a job.

        ", "refs": { "JobList$member": null } }, "JobData": { "base": "

        Represents additional information about a job required for a job worker to complete the job.

        ", "refs": { "Job$data": "

        Additional data about a job.

        ", "JobDetails$data": null } }, "JobDetails": { "base": "

        Represents information about the details of a job.

        ", "refs": { "GetJobDetailsOutput$jobDetails": "

        The details of the job.

        If AWSSessionCredentials is used, a long-running job can call GetJobDetails again to obtain new credentials.

        " } }, "JobId": { "base": null, "refs": { "AcknowledgeJobInput$jobId": "

        The unique system-generated ID of the job for which you want to confirm receipt.

        ", "GetJobDetailsInput$jobId": "

        The unique system-generated ID for the job.

        ", "Job$id": "

        The unique system-generated ID of the job.

        ", "JobDetails$id": "

        The unique system-generated ID of the job.

        ", "PutJobFailureResultInput$jobId": "

        The unique system-generated ID of the job that failed. This is the same ID returned from PollForJobs.

        ", "PutJobSuccessResultInput$jobId": "

        The unique system-generated ID of the job that succeeded. This is the same ID returned from PollForJobs.

        ", "ThirdPartyJob$jobId": "

        The identifier used to identify the job in AWS CodePipeline.

        " } }, "JobList": { "base": null, "refs": { "PollForJobsOutput$jobs": "

        Information about the jobs to take action on.

        " } }, "JobNotFoundException": { "base": "

        The specified job was specified in an invalid format or cannot be found.

        ", "refs": { } }, "JobStatus": { "base": null, "refs": { "AcknowledgeJobOutput$status": "

        Whether the job worker has received the specified job.

        ", "AcknowledgeThirdPartyJobOutput$status": "

        The status information for the third party job, if any.

        " } }, "LastChangedAt": { "base": null, "refs": { "TransitionState$lastChangedAt": "

        The timestamp when the transition state was last changed.

        " } }, "LastChangedBy": { "base": null, "refs": { "TransitionState$lastChangedBy": "

        The ID of the user who last changed the transition state.

        " } }, "LastUpdatedBy": { "base": null, "refs": { "ActionExecution$lastUpdatedBy": "

        The ARN of the user who last changed the pipeline.

        " } }, "LimitExceededException": { "base": "

        The number of pipelines associated with the AWS account has exceeded the limit allowed for the account.

        ", "refs": { } }, "ListActionTypesInput": { "base": "

        Represents the input of a list action types action.

        ", "refs": { } }, "ListActionTypesOutput": { "base": "

        Represents the output of a list action types action.

        ", "refs": { } }, "ListPipelinesInput": { "base": "

        Represents the input of a list pipelines action.

        ", "refs": { } }, "ListPipelinesOutput": { "base": "

        Represents the output of a list pipelines action.

        ", "refs": { } }, "MaxBatchSize": { "base": null, "refs": { "PollForJobsInput$maxBatchSize": "

        The maximum number of jobs to return in a poll for jobs call.

        ", "PollForThirdPartyJobsInput$maxBatchSize": "

        The maximum number of jobs to return in a poll for jobs call.

        " } }, "MaximumArtifactCount": { "base": null, "refs": { "ArtifactDetails$maximumCount": "

        The maximum number of artifacts allowed for the action type.

        " } }, "Message": { "base": null, "refs": { "ErrorDetails$message": "

        The text of the error message.

        ", "FailureDetails$message": "

        The message about the failure.

        " } }, "MinimumArtifactCount": { "base": null, "refs": { "ArtifactDetails$minimumCount": "

        The minimum number of artifacts allowed for the action type.

        " } }, "NextToken": { "base": null, "refs": { "ListActionTypesInput$nextToken": "

        An identifier that was returned from the previous list action types call, which can be used to return the next set of action types in the list.

        ", "ListActionTypesOutput$nextToken": "

        If the amount of returned information is significantly large, an identifier is also returned which can be used in a subsequent list action types call to return the next set of action types in the list.

        ", "ListPipelinesInput$nextToken": "

        An identifier that was returned from the previous list pipelines call, which can be used to return the next set of pipelines in the list.

        ", "ListPipelinesOutput$nextToken": "

        If the amount of returned information is significantly large, an identifier is also returned which can be used in a subsequent list pipelines call to return the next set of pipelines in the list.

        " } }, "Nonce": { "base": null, "refs": { "AcknowledgeJobInput$nonce": "

        A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. This number must be returned in the response.

        ", "AcknowledgeThirdPartyJobInput$nonce": "

        A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. This number must be returned in the response.

        ", "Job$nonce": "

        A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. This number must be returned in the response.

        ", "ThirdPartyJobDetails$nonce": "

        A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. This number must be returned in the response.

        " } }, "NotLatestPipelineExecutionException": { "base": "

        The stage has failed in a later run of the pipeline and the pipelineExecutionId associated with the request is out of date.

        ", "refs": { } }, "OutputArtifact": { "base": "

        Represents information about the output of an action.

        ", "refs": { "OutputArtifactList$member": null } }, "OutputArtifactList": { "base": null, "refs": { "ActionDeclaration$outputArtifacts": "

        The name or ID of the result of the action declaration, such as a test or build artifact.

        " } }, "Percentage": { "base": null, "refs": { "ActionExecution$percentComplete": "

        A percentage of completeness of the action as it runs.

        ", "ExecutionDetails$percentComplete": "

        The percentage of work completed on the action, represented on a scale of zero to one hundred percent.

        " } }, "PipelineContext": { "base": "

        Represents information about a pipeline to a job worker.

        ", "refs": { "JobData$pipelineContext": null, "ThirdPartyJobData$pipelineContext": null } }, "PipelineDeclaration": { "base": "

        Represents the structure of actions and stages to be performed in the pipeline.

        ", "refs": { "CreatePipelineInput$pipeline": null, "CreatePipelineOutput$pipeline": null, "GetPipelineOutput$pipeline": null, "UpdatePipelineInput$pipeline": "

        The name of the pipeline to be updated.

        ", "UpdatePipelineOutput$pipeline": "

        The structure of the updated pipeline.

        " } }, "PipelineExecution": { "base": "

        Represents information about an execution of a pipeline.

        ", "refs": { "GetPipelineExecutionOutput$pipelineExecution": "

        Represents information about the execution of a pipeline.

        " } }, "PipelineExecutionId": { "base": null, "refs": { "GetPipelineExecutionInput$pipelineExecutionId": "

        The ID of the pipeline execution about which you want to get execution details.

        ", "PipelineExecution$pipelineExecutionId": "

        The ID of the pipeline execution.

        ", "PutActionRevisionOutput$pipelineExecutionId": "

        The ID of the current workflow state of the pipeline.

        ", "RetryStageExecutionInput$pipelineExecutionId": "

        The ID of the pipeline execution in the failed stage to be retried. Use the GetPipelineState action to retrieve the current pipelineExecutionId of the failed stage

        ", "RetryStageExecutionOutput$pipelineExecutionId": "

        The ID of the current workflow execution in the failed stage.

        ", "StageExecution$pipelineExecutionId": "

        The ID of the pipeline execution associated with the stage.

        ", "StartPipelineExecutionOutput$pipelineExecutionId": "

        The unique system-generated ID of the pipeline execution that was started.

        " } }, "PipelineExecutionNotFoundException": { "base": "

        The pipeline execution was specified in an invalid format or cannot be found, or an execution ID does not belong to the specified pipeline.

        ", "refs": { } }, "PipelineExecutionStatus": { "base": null, "refs": { "PipelineExecution$status": "

        The status of the pipeline execution.

        • InProgress: The pipeline execution is currently running.

        • Succeeded: The pipeline execution completed successfully.

        • Superseded: While this pipeline execution was waiting for the next stage to be completed, a newer pipeline execution caught up and continued through the pipeline instead.

        • Failed: The pipeline did not complete successfully.

        " } }, "PipelineList": { "base": null, "refs": { "ListPipelinesOutput$pipelines": "

        The list of pipelines.

        " } }, "PipelineName": { "base": null, "refs": { "DeletePipelineInput$name": "

        The name of the pipeline to be deleted.

        ", "DisableStageTransitionInput$pipelineName": "

        The name of the pipeline in which you want to disable the flow of artifacts from one stage to another.

        ", "EnableStageTransitionInput$pipelineName": "

        The name of the pipeline in which you want to enable the flow of artifacts from one stage to another.

        ", "GetPipelineExecutionInput$pipelineName": "

        The name of the pipeline about which you want to get execution details.

        ", "GetPipelineInput$name": "

        The name of the pipeline for which you want to get information. Pipeline names must be unique under an Amazon Web Services (AWS) user account.

        ", "GetPipelineStateInput$name": "

        The name of the pipeline about which you want to get information.

        ", "GetPipelineStateOutput$pipelineName": "

        The name of the pipeline for which you want to get the state.

        ", "PipelineContext$pipelineName": "

        The name of the pipeline. This is a user-specified value. Pipeline names must be unique across all pipeline names under an Amazon Web Services account.

        ", "PipelineDeclaration$name": "

        The name of the action to be performed.

        ", "PipelineExecution$pipelineName": "

        The name of the pipeline that was executed.

        ", "PipelineSummary$name": "

        The name of the pipeline.

        ", "PutActionRevisionInput$pipelineName": "

        The name of the pipeline that will start processing the revision to the source.

        ", "PutApprovalResultInput$pipelineName": "

        The name of the pipeline that contains the action.

        ", "RetryStageExecutionInput$pipelineName": "

        The name of the pipeline that contains the failed stage.

        ", "StartPipelineExecutionInput$name": "

        The name of the pipeline to start.

        " } }, "PipelineNameInUseException": { "base": "

        The specified pipeline name is already in use.

        ", "refs": { } }, "PipelineNotFoundException": { "base": "

        The specified pipeline was specified in an invalid format or cannot be found.

        ", "refs": { } }, "PipelineStageDeclarationList": { "base": null, "refs": { "PipelineDeclaration$stages": "

        The stage in which to perform the action.

        " } }, "PipelineSummary": { "base": "

        Returns a summary of a pipeline.

        ", "refs": { "PipelineList$member": null } }, "PipelineVersion": { "base": null, "refs": { "GetPipelineInput$version": "

        The version number of the pipeline. If you do not specify a version, defaults to the most current version.

        ", "GetPipelineStateOutput$pipelineVersion": "

        The version number of the pipeline.

        A newly-created pipeline is always assigned a version number of 1.

        ", "PipelineDeclaration$version": "

        The version number of the pipeline. A new pipeline always has a version number of 1. This number is automatically incremented when a pipeline is updated.

        ", "PipelineExecution$pipelineVersion": "

        The version number of the pipeline that was executed.

        ", "PipelineSummary$version": "

        The version number of the pipeline.

        " } }, "PipelineVersionNotFoundException": { "base": "

        The specified pipeline version was specified in an invalid format or cannot be found.

        ", "refs": { } }, "PollForJobsInput": { "base": "

        Represents the input of a poll for jobs action.

        ", "refs": { } }, "PollForJobsOutput": { "base": "

        Represents the output of a poll for jobs action.

        ", "refs": { } }, "PollForThirdPartyJobsInput": { "base": "

        Represents the input of a poll for third party jobs action.

        ", "refs": { } }, "PollForThirdPartyJobsOutput": { "base": "

        Represents the output of a poll for third party jobs action.

        ", "refs": { } }, "PutActionRevisionInput": { "base": "

        Represents the input of a put action revision action.

        ", "refs": { } }, "PutActionRevisionOutput": { "base": "

        Represents the output of a put action revision action.

        ", "refs": { } }, "PutApprovalResultInput": { "base": "

        Represents the input of a put approval result action.

        ", "refs": { } }, "PutApprovalResultOutput": { "base": "

        Represents the output of a put approval result action.

        ", "refs": { } }, "PutJobFailureResultInput": { "base": "

        Represents the input of a put job failure result action.

        ", "refs": { } }, "PutJobSuccessResultInput": { "base": "

        Represents the input of a put job success result action.

        ", "refs": { } }, "PutThirdPartyJobFailureResultInput": { "base": "

        Represents the input of a third party job failure result action.

        ", "refs": { } }, "PutThirdPartyJobSuccessResultInput": { "base": "

        Represents the input of a put third party job success result action.

        ", "refs": { } }, "QueryParamMap": { "base": null, "refs": { "PollForJobsInput$queryParam": "

        A map of property names and values. For an action type with no queryable properties, this value must be null or an empty map. For an action type with a queryable property, you must supply that property as a key in the map. Only jobs whose action configuration matches the mapped value will be returned.

        " } }, "RetryStageExecutionInput": { "base": "

        Represents the input of a retry stage execution action.

        ", "refs": { } }, "RetryStageExecutionOutput": { "base": "

        Represents the output of a retry stage execution action.

        ", "refs": { } }, "Revision": { "base": null, "refs": { "ActionRevision$revisionId": "

        The system-generated unique ID that identifies the revision number of the action.

        ", "Artifact$revision": "

        The artifact's revision ID. Depending on the type of object, this could be a commit ID (GitHub) or a revision ID (Amazon S3).

        ", "ArtifactRevision$revisionId": "

        The revision ID of the artifact.

        ", "CurrentRevision$revision": "

        The revision ID of the current version of an artifact.

        " } }, "RevisionChangeIdentifier": { "base": null, "refs": { "ActionRevision$revisionChangeId": "

        The unique identifier of the change that set the state to this revision, for example a deployment ID or timestamp.

        ", "ArtifactRevision$revisionChangeIdentifier": "

        An additional identifier for a revision, such as a commit date or, for artifacts stored in Amazon S3 buckets, the ETag value.

        ", "CurrentRevision$changeIdentifier": "

        The change identifier for the current revision.

        " } }, "RevisionSummary": { "base": null, "refs": { "ArtifactRevision$revisionSummary": "

        Summary information about the most recent revision of the artifact. For GitHub and AWS CodeCommit repositories, the commit message. For Amazon S3 buckets or actions, the user-provided content of a codepipeline-artifact-revision-summary key specified in the object metadata.

        ", "CurrentRevision$revisionSummary": "

        The summary of the most recent revision of the artifact.

        " } }, "RoleArn": { "base": null, "refs": { "ActionDeclaration$roleArn": "

        The ARN of the IAM service role that will perform the declared action. This is assumed through the roleArn for the pipeline.

        ", "PipelineDeclaration$roleArn": "

        The Amazon Resource Name (ARN) for AWS CodePipeline to use to either perform actions with no actionRoleArn, or to use to assume roles for actions with an actionRoleArn.

        " } }, "S3ArtifactLocation": { "base": "

        The location of the Amazon S3 bucket that contains a revision.

        ", "refs": { "ArtifactLocation$s3Location": "

        The Amazon S3 bucket that contains the artifact.

        " } }, "S3BucketName": { "base": null, "refs": { "S3ArtifactLocation$bucketName": "

        The name of the Amazon S3 bucket.

        " } }, "S3ObjectKey": { "base": null, "refs": { "S3ArtifactLocation$objectKey": "

        The key of the object in the Amazon S3 bucket, which uniquely identifies the object in the bucket.

        " } }, "SecretAccessKey": { "base": null, "refs": { "AWSSessionCredentials$secretAccessKey": "

        The secret access key for the session.

        " } }, "SessionToken": { "base": null, "refs": { "AWSSessionCredentials$sessionToken": "

        The token for the session.

        " } }, "StageActionDeclarationList": { "base": null, "refs": { "StageDeclaration$actions": "

        The actions included in a stage.

        " } }, "StageBlockerDeclarationList": { "base": null, "refs": { "StageDeclaration$blockers": "

        Reserved for future use.

        " } }, "StageContext": { "base": "

        Represents information about a stage to a job worker.

        ", "refs": { "PipelineContext$stage": "

        The stage of the pipeline.

        " } }, "StageDeclaration": { "base": "

        Represents information about a stage and its definition.

        ", "refs": { "PipelineStageDeclarationList$member": null } }, "StageExecution": { "base": "

        Represents information about the run of a stage.

        ", "refs": { "StageState$latestExecution": "

        Information about the latest execution in the stage, including its ID and status.

        " } }, "StageExecutionStatus": { "base": null, "refs": { "StageExecution$status": "

        The status of the stage, or for a completed stage, the last status of the stage.

        " } }, "StageName": { "base": null, "refs": { "DisableStageTransitionInput$stageName": "

        The name of the stage where you want to disable the inbound or outbound transition of artifacts.

        ", "EnableStageTransitionInput$stageName": "

        The name of the stage where you want to enable the transition of artifacts, either into the stage (inbound) or from that stage to the next stage (outbound).

        ", "PutActionRevisionInput$stageName": "

        The name of the stage that contains the action that will act upon the revision.

        ", "PutApprovalResultInput$stageName": "

        The name of the stage that contains the action.

        ", "RetryStageExecutionInput$stageName": "

        The name of the failed stage to be retried.

        ", "StageContext$name": "

        The name of the stage.

        ", "StageDeclaration$name": "

        The name of the stage.

        ", "StageState$stageName": "

        The name of the stage.

        " } }, "StageNotFoundException": { "base": "

        The specified stage was specified in an invalid format or cannot be found.

        ", "refs": { } }, "StageNotRetryableException": { "base": "

        The specified stage can't be retried because the pipeline structure or stage state changed after the stage was not completed; the stage contains no failed actions; one or more actions are still in progress; or another retry attempt is already in progress.

        ", "refs": { } }, "StageRetryMode": { "base": null, "refs": { "RetryStageExecutionInput$retryMode": "

        The scope of the retry attempt. Currently, the only supported value is FAILED_ACTIONS.

        " } }, "StageState": { "base": "

        Represents information about the state of the stage.

        ", "refs": { "StageStateList$member": null } }, "StageStateList": { "base": null, "refs": { "GetPipelineStateOutput$stageStates": "

        A list of the pipeline stage output information, including stage name, state, most recent run details, whether the stage is disabled, and other data.

        " } }, "StageTransitionType": { "base": null, "refs": { "DisableStageTransitionInput$transitionType": "

        Specifies whether artifacts will be prevented from transitioning into the stage and being processed by the actions in that stage (inbound), or prevented from transitioning from the stage after they have been processed by the actions in that stage (outbound).

        ", "EnableStageTransitionInput$transitionType": "

        Specifies whether artifacts will be allowed to enter the stage and be processed by the actions in that stage (inbound) or whether already-processed artifacts will be allowed to transition to the next stage (outbound).

        " } }, "StartPipelineExecutionInput": { "base": "

        Represents the input of a start pipeline execution action.

        ", "refs": { } }, "StartPipelineExecutionOutput": { "base": "

        Represents the output of a start pipeline execution action.

        ", "refs": { } }, "ThirdPartyJob": { "base": "

        A response to a PollForThirdPartyJobs request returned by AWS CodePipeline when there is a job to be worked upon by a partner action.

        ", "refs": { "ThirdPartyJobList$member": null } }, "ThirdPartyJobData": { "base": "

        Represents information about the job data for a partner action.

        ", "refs": { "ThirdPartyJobDetails$data": "

        The data to be returned by the third party job worker.

        " } }, "ThirdPartyJobDetails": { "base": "

        The details of a job sent in response to a GetThirdPartyJobDetails request.

        ", "refs": { "GetThirdPartyJobDetailsOutput$jobDetails": "

        The details of the job, including any protected values defined for the job.

        " } }, "ThirdPartyJobId": { "base": null, "refs": { "AcknowledgeThirdPartyJobInput$jobId": "

        The unique system-generated ID of the job.

        ", "GetThirdPartyJobDetailsInput$jobId": "

        The unique system-generated ID used for identifying the job.

        ", "PutThirdPartyJobFailureResultInput$jobId": "

        The ID of the job that failed. This is the same ID returned from PollForThirdPartyJobs.

        ", "PutThirdPartyJobSuccessResultInput$jobId": "

        The ID of the job that successfully completed. This is the same ID returned from PollForThirdPartyJobs.

        ", "ThirdPartyJobDetails$id": "

        The identifier used to identify the job details in AWS CodePipeline.

        " } }, "ThirdPartyJobList": { "base": null, "refs": { "PollForThirdPartyJobsOutput$jobs": "

        Information about the jobs to take action on.

        " } }, "Time": { "base": null, "refs": { "CurrentRevision$created": "

        The date and time when the most recent revision of the artifact was created, in timestamp format.

        " } }, "Timestamp": { "base": null, "refs": { "ActionExecution$lastStatusChange": "

        The last status change of the action.

        ", "ActionRevision$created": "

        The date and time when the most recent version of the action was created, in timestamp format.

        ", "ArtifactRevision$created": "

        The date and time when the most recent revision of the artifact was created, in timestamp format.

        ", "GetPipelineStateOutput$created": "

        The date and time the pipeline was created, in timestamp format.

        ", "GetPipelineStateOutput$updated": "

        The date and time the pipeline was last updated, in timestamp format.

        ", "PipelineSummary$created": "

        The date and time the pipeline was created, in timestamp format.

        ", "PipelineSummary$updated": "

        The date and time of the last update to the pipeline, in timestamp format.

        ", "PutApprovalResultOutput$approvedAt": "

        The timestamp showing when the approval or rejection was submitted.

        " } }, "TransitionState": { "base": "

        Represents information about the state of transitions between one stage and another stage.

        ", "refs": { "StageState$inboundTransitionState": "

        The state of the inbound transition, which is either enabled or disabled.

        " } }, "UpdatePipelineInput": { "base": "

        Represents the input of an update pipeline action.

        ", "refs": { } }, "UpdatePipelineOutput": { "base": "

        Represents the output of an update pipeline action.

        ", "refs": { } }, "Url": { "base": null, "refs": { "ActionExecution$externalExecutionUrl": "

        The URL of a resource external to AWS that will be used when running the action, for example an external repository URL.

        ", "ActionState$entityUrl": "

        A URL link for more information about the state of the action, such as a deployment group details page.

        ", "ActionState$revisionUrl": "

        A URL link for more information about the revision, such as a commit details page.

        ", "ActionTypeSettings$thirdPartyConfigurationUrl": "

        The URL of a sign-up page where users can sign up for an external service and perform initial configuration of the action provided by that service.

        ", "ArtifactRevision$revisionUrl": "

        The commit ID for the artifact revision. For artifacts stored in GitHub or AWS CodeCommit repositories, the commit ID is linked to a commit details page.

        " } }, "UrlTemplate": { "base": null, "refs": { "ActionTypeSettings$entityUrlTemplate": "

        The URL returned to the AWS CodePipeline console that provides a deep link to the resources of the external system, such as the configuration page for an AWS CodeDeploy deployment group. This link is provided as part of the action display within the pipeline.

        ", "ActionTypeSettings$executionUrlTemplate": "

        The URL returned to the AWS CodePipeline console that contains a link to the top-level landing page for the external system, such as console page for AWS CodeDeploy. This link is shown on the pipeline view page in the AWS CodePipeline console and provides a link to the execution entity of the external action.

        ", "ActionTypeSettings$revisionUrlTemplate": "

        The URL returned to the AWS CodePipeline console that contains a link to the page where customers can update or change the configuration of the external action.

        " } }, "ValidationException": { "base": "

        The validation was specified in an invalid format.

        ", "refs": { } }, "Version": { "base": null, "refs": { "ActionTypeId$version": "

        A string that identifies the action type.

        ", "CreateCustomActionTypeInput$version": "

        The version identifier of the custom action.

        ", "DeleteCustomActionTypeInput$version": "

        The version of the custom action to delete.

        " } } } } aws-sdk-go-1.4.22/models/apis/codepipeline/2015-07-09/examples-1.json000066400000000000000000000000541300374646400243510ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/cognito-identity/000077500000000000000000000000001300374646400212735ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cognito-identity/2014-06-30/000077500000000000000000000000001300374646400223245ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cognito-identity/2014-06-30/api-2.json000066400000000000000000000572151300374646400241410ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2014-06-30", "endpointPrefix":"cognito-identity", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"Amazon Cognito Identity", "signatureVersion":"v4", "targetPrefix":"AWSCognitoIdentityService" }, "operations":{ "CreateIdentityPool":{ "name":"CreateIdentityPool", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateIdentityPoolInput"}, "output":{"shape":"IdentityPool"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"NotAuthorizedException"}, {"shape":"ResourceConflictException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"}, {"shape":"LimitExceededException"} ] }, "DeleteIdentities":{ "name":"DeleteIdentities", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteIdentitiesInput"}, "output":{"shape":"DeleteIdentitiesResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"} ] }, "DeleteIdentityPool":{ "name":"DeleteIdentityPool", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteIdentityPoolInput"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"NotAuthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"} ] }, "DescribeIdentity":{ "name":"DescribeIdentity", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeIdentityInput"}, "output":{"shape":"IdentityDescription"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"NotAuthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"} ] }, "DescribeIdentityPool":{ "name":"DescribeIdentityPool", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeIdentityPoolInput"}, "output":{"shape":"IdentityPool"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"NotAuthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"} ] }, "GetCredentialsForIdentity":{ "name":"GetCredentialsForIdentity", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetCredentialsForIdentityInput"}, "output":{"shape":"GetCredentialsForIdentityResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"NotAuthorizedException"}, {"shape":"ResourceConflictException"}, {"shape":"TooManyRequestsException"}, {"shape":"InvalidIdentityPoolConfigurationException"}, {"shape":"InternalErrorException"}, {"shape":"ExternalServiceException"} ] }, "GetId":{ "name":"GetId", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetIdInput"}, "output":{"shape":"GetIdResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"NotAuthorizedException"}, {"shape":"ResourceConflictException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"}, {"shape":"LimitExceededException"}, {"shape":"ExternalServiceException"} ] }, "GetIdentityPoolRoles":{ "name":"GetIdentityPoolRoles", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetIdentityPoolRolesInput"}, "output":{"shape":"GetIdentityPoolRolesResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"NotAuthorizedException"}, {"shape":"ResourceConflictException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"} ] }, "GetOpenIdToken":{ "name":"GetOpenIdToken", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetOpenIdTokenInput"}, "output":{"shape":"GetOpenIdTokenResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"NotAuthorizedException"}, {"shape":"ResourceConflictException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"}, {"shape":"ExternalServiceException"} ] }, "GetOpenIdTokenForDeveloperIdentity":{ "name":"GetOpenIdTokenForDeveloperIdentity", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetOpenIdTokenForDeveloperIdentityInput"}, "output":{"shape":"GetOpenIdTokenForDeveloperIdentityResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"NotAuthorizedException"}, {"shape":"ResourceConflictException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"}, {"shape":"DeveloperUserAlreadyRegisteredException"} ] }, "ListIdentities":{ "name":"ListIdentities", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListIdentitiesInput"}, "output":{"shape":"ListIdentitiesResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"NotAuthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"} ] }, "ListIdentityPools":{ "name":"ListIdentityPools", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListIdentityPoolsInput"}, "output":{"shape":"ListIdentityPoolsResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"NotAuthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"} ] }, "LookupDeveloperIdentity":{ "name":"LookupDeveloperIdentity", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"LookupDeveloperIdentityInput"}, "output":{"shape":"LookupDeveloperIdentityResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"NotAuthorizedException"}, {"shape":"ResourceConflictException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"} ] }, "MergeDeveloperIdentities":{ "name":"MergeDeveloperIdentities", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"MergeDeveloperIdentitiesInput"}, "output":{"shape":"MergeDeveloperIdentitiesResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"NotAuthorizedException"}, {"shape":"ResourceConflictException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"} ] }, "SetIdentityPoolRoles":{ "name":"SetIdentityPoolRoles", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetIdentityPoolRolesInput"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"NotAuthorizedException"}, {"shape":"ResourceConflictException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"}, {"shape":"ConcurrentModificationException"} ] }, "UnlinkDeveloperIdentity":{ "name":"UnlinkDeveloperIdentity", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UnlinkDeveloperIdentityInput"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"NotAuthorizedException"}, {"shape":"ResourceConflictException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"} ] }, "UnlinkIdentity":{ "name":"UnlinkIdentity", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UnlinkIdentityInput"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"NotAuthorizedException"}, {"shape":"ResourceConflictException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"}, {"shape":"ExternalServiceException"} ] }, "UpdateIdentityPool":{ "name":"UpdateIdentityPool", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"IdentityPool"}, "output":{"shape":"IdentityPool"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"NotAuthorizedException"}, {"shape":"ResourceConflictException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"}, {"shape":"ConcurrentModificationException"}, {"shape":"LimitExceededException"} ] } }, "shapes":{ "ARNString":{ "type":"string", "max":2048, "min":20 }, "AccessKeyString":{"type":"string"}, "AccountId":{ "type":"string", "max":15, "min":1, "pattern":"\\d+" }, "CognitoIdentityProvider":{ "type":"structure", "members":{ "ProviderName":{"shape":"CognitoIdentityProviderName"}, "ClientId":{"shape":"CognitoIdentityProviderClientId"} } }, "CognitoIdentityProviderClientId":{ "type":"string", "max":128, "min":1, "pattern":"[\\w_]+" }, "CognitoIdentityProviderList":{ "type":"list", "member":{"shape":"CognitoIdentityProvider"} }, "CognitoIdentityProviderName":{ "type":"string", "max":128, "min":1, "pattern":"[\\w._:/-]+" }, "ConcurrentModificationException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "CreateIdentityPoolInput":{ "type":"structure", "required":[ "IdentityPoolName", "AllowUnauthenticatedIdentities" ], "members":{ "IdentityPoolName":{"shape":"IdentityPoolName"}, "AllowUnauthenticatedIdentities":{"shape":"IdentityPoolUnauthenticated"}, "SupportedLoginProviders":{"shape":"IdentityProviders"}, "DeveloperProviderName":{"shape":"DeveloperProviderName"}, "OpenIdConnectProviderARNs":{"shape":"OIDCProviderList"}, "CognitoIdentityProviders":{"shape":"CognitoIdentityProviderList"}, "SamlProviderARNs":{"shape":"SAMLProviderList"} } }, "Credentials":{ "type":"structure", "members":{ "AccessKeyId":{"shape":"AccessKeyString"}, "SecretKey":{"shape":"SecretKeyString"}, "SessionToken":{"shape":"SessionTokenString"}, "Expiration":{"shape":"DateType"} } }, "DateType":{"type":"timestamp"}, "DeleteIdentitiesInput":{ "type":"structure", "required":["IdentityIdsToDelete"], "members":{ "IdentityIdsToDelete":{"shape":"IdentityIdList"} } }, "DeleteIdentitiesResponse":{ "type":"structure", "members":{ "UnprocessedIdentityIds":{"shape":"UnprocessedIdentityIdList"} } }, "DeleteIdentityPoolInput":{ "type":"structure", "required":["IdentityPoolId"], "members":{ "IdentityPoolId":{"shape":"IdentityPoolId"} } }, "DescribeIdentityInput":{ "type":"structure", "required":["IdentityId"], "members":{ "IdentityId":{"shape":"IdentityId"} } }, "DescribeIdentityPoolInput":{ "type":"structure", "required":["IdentityPoolId"], "members":{ "IdentityPoolId":{"shape":"IdentityPoolId"} } }, "DeveloperProviderName":{ "type":"string", "max":128, "min":1, "pattern":"[\\w._-]+" }, "DeveloperUserAlreadyRegisteredException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "DeveloperUserIdentifier":{ "type":"string", "max":1024, "min":1, "pattern":"[\\w.@_-]+" }, "DeveloperUserIdentifierList":{ "type":"list", "member":{"shape":"DeveloperUserIdentifier"} }, "ErrorCode":{ "type":"string", "enum":[ "AccessDenied", "InternalServerError" ] }, "ExternalServiceException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "GetCredentialsForIdentityInput":{ "type":"structure", "required":["IdentityId"], "members":{ "IdentityId":{"shape":"IdentityId"}, "Logins":{"shape":"LoginsMap"}, "CustomRoleArn":{"shape":"ARNString"} } }, "GetCredentialsForIdentityResponse":{ "type":"structure", "members":{ "IdentityId":{"shape":"IdentityId"}, "Credentials":{"shape":"Credentials"} } }, "GetIdInput":{ "type":"structure", "required":["IdentityPoolId"], "members":{ "AccountId":{"shape":"AccountId"}, "IdentityPoolId":{"shape":"IdentityPoolId"}, "Logins":{"shape":"LoginsMap"} } }, "GetIdResponse":{ "type":"structure", "members":{ "IdentityId":{"shape":"IdentityId"} } }, "GetIdentityPoolRolesInput":{ "type":"structure", "required":["IdentityPoolId"], "members":{ "IdentityPoolId":{"shape":"IdentityPoolId"} } }, "GetIdentityPoolRolesResponse":{ "type":"structure", "members":{ "IdentityPoolId":{"shape":"IdentityPoolId"}, "Roles":{"shape":"RolesMap"} } }, "GetOpenIdTokenForDeveloperIdentityInput":{ "type":"structure", "required":[ "IdentityPoolId", "Logins" ], "members":{ "IdentityPoolId":{"shape":"IdentityPoolId"}, "IdentityId":{"shape":"IdentityId"}, "Logins":{"shape":"LoginsMap"}, "TokenDuration":{"shape":"TokenDuration"} } }, "GetOpenIdTokenForDeveloperIdentityResponse":{ "type":"structure", "members":{ "IdentityId":{"shape":"IdentityId"}, "Token":{"shape":"OIDCToken"} } }, "GetOpenIdTokenInput":{ "type":"structure", "required":["IdentityId"], "members":{ "IdentityId":{"shape":"IdentityId"}, "Logins":{"shape":"LoginsMap"} } }, "GetOpenIdTokenResponse":{ "type":"structure", "members":{ "IdentityId":{"shape":"IdentityId"}, "Token":{"shape":"OIDCToken"} } }, "HideDisabled":{"type":"boolean"}, "IdentitiesList":{ "type":"list", "member":{"shape":"IdentityDescription"} }, "IdentityDescription":{ "type":"structure", "members":{ "IdentityId":{"shape":"IdentityId"}, "Logins":{"shape":"LoginsList"}, "CreationDate":{"shape":"DateType"}, "LastModifiedDate":{"shape":"DateType"} } }, "IdentityId":{ "type":"string", "max":55, "min":1, "pattern":"[\\w-]+:[0-9a-f-]+" }, "IdentityIdList":{ "type":"list", "member":{"shape":"IdentityId"}, "max":60, "min":1 }, "IdentityPool":{ "type":"structure", "required":[ "IdentityPoolId", "IdentityPoolName", "AllowUnauthenticatedIdentities" ], "members":{ "IdentityPoolId":{"shape":"IdentityPoolId"}, "IdentityPoolName":{"shape":"IdentityPoolName"}, "AllowUnauthenticatedIdentities":{"shape":"IdentityPoolUnauthenticated"}, "SupportedLoginProviders":{"shape":"IdentityProviders"}, "DeveloperProviderName":{"shape":"DeveloperProviderName"}, "OpenIdConnectProviderARNs":{"shape":"OIDCProviderList"}, "CognitoIdentityProviders":{"shape":"CognitoIdentityProviderList"}, "SamlProviderARNs":{"shape":"SAMLProviderList"} } }, "IdentityPoolId":{ "type":"string", "max":55, "min":1, "pattern":"[\\w-]+:[0-9a-f-]+" }, "IdentityPoolName":{ "type":"string", "max":128, "min":1, "pattern":"[\\w ]+" }, "IdentityPoolShortDescription":{ "type":"structure", "members":{ "IdentityPoolId":{"shape":"IdentityPoolId"}, "IdentityPoolName":{"shape":"IdentityPoolName"} } }, "IdentityPoolUnauthenticated":{"type":"boolean"}, "IdentityPoolsList":{ "type":"list", "member":{"shape":"IdentityPoolShortDescription"} }, "IdentityProviderId":{ "type":"string", "max":128, "min":1, "pattern":"[\\w.;_/-]+" }, "IdentityProviderName":{ "type":"string", "max":128, "min":1 }, "IdentityProviderToken":{ "type":"string", "max":50000, "min":1 }, "IdentityProviders":{ "type":"map", "key":{"shape":"IdentityProviderName"}, "value":{"shape":"IdentityProviderId"}, "max":10 }, "InternalErrorException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true, "fault":true }, "InvalidIdentityPoolConfigurationException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "InvalidParameterException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "LimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "ListIdentitiesInput":{ "type":"structure", "required":[ "IdentityPoolId", "MaxResults" ], "members":{ "IdentityPoolId":{"shape":"IdentityPoolId"}, "MaxResults":{"shape":"QueryLimit"}, "NextToken":{"shape":"PaginationKey"}, "HideDisabled":{"shape":"HideDisabled"} } }, "ListIdentitiesResponse":{ "type":"structure", "members":{ "IdentityPoolId":{"shape":"IdentityPoolId"}, "Identities":{"shape":"IdentitiesList"}, "NextToken":{"shape":"PaginationKey"} } }, "ListIdentityPoolsInput":{ "type":"structure", "required":["MaxResults"], "members":{ "MaxResults":{"shape":"QueryLimit"}, "NextToken":{"shape":"PaginationKey"} } }, "ListIdentityPoolsResponse":{ "type":"structure", "members":{ "IdentityPools":{"shape":"IdentityPoolsList"}, "NextToken":{"shape":"PaginationKey"} } }, "LoginsList":{ "type":"list", "member":{"shape":"IdentityProviderName"} }, "LoginsMap":{ "type":"map", "key":{"shape":"IdentityProviderName"}, "value":{"shape":"IdentityProviderToken"}, "max":10 }, "LookupDeveloperIdentityInput":{ "type":"structure", "required":["IdentityPoolId"], "members":{ "IdentityPoolId":{"shape":"IdentityPoolId"}, "IdentityId":{"shape":"IdentityId"}, "DeveloperUserIdentifier":{"shape":"DeveloperUserIdentifier"}, "MaxResults":{"shape":"QueryLimit"}, "NextToken":{"shape":"PaginationKey"} } }, "LookupDeveloperIdentityResponse":{ "type":"structure", "members":{ "IdentityId":{"shape":"IdentityId"}, "DeveloperUserIdentifierList":{"shape":"DeveloperUserIdentifierList"}, "NextToken":{"shape":"PaginationKey"} } }, "MergeDeveloperIdentitiesInput":{ "type":"structure", "required":[ "SourceUserIdentifier", "DestinationUserIdentifier", "DeveloperProviderName", "IdentityPoolId" ], "members":{ "SourceUserIdentifier":{"shape":"DeveloperUserIdentifier"}, "DestinationUserIdentifier":{"shape":"DeveloperUserIdentifier"}, "DeveloperProviderName":{"shape":"DeveloperProviderName"}, "IdentityPoolId":{"shape":"IdentityPoolId"} } }, "MergeDeveloperIdentitiesResponse":{ "type":"structure", "members":{ "IdentityId":{"shape":"IdentityId"} } }, "NotAuthorizedException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "OIDCProviderList":{ "type":"list", "member":{"shape":"ARNString"} }, "OIDCToken":{"type":"string"}, "PaginationKey":{ "type":"string", "min":1, "pattern":"[\\S]+" }, "QueryLimit":{ "type":"integer", "max":60, "min":1 }, "ResourceConflictException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "ResourceNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "RoleType":{ "type":"string", "pattern":"(un)?authenticated" }, "RolesMap":{ "type":"map", "key":{"shape":"RoleType"}, "value":{"shape":"ARNString"}, "max":2 }, "SAMLProviderList":{ "type":"list", "member":{"shape":"ARNString"} }, "SecretKeyString":{"type":"string"}, "SessionTokenString":{"type":"string"}, "SetIdentityPoolRolesInput":{ "type":"structure", "required":[ "IdentityPoolId", "Roles" ], "members":{ "IdentityPoolId":{"shape":"IdentityPoolId"}, "Roles":{"shape":"RolesMap"} } }, "String":{"type":"string"}, "TokenDuration":{ "type":"long", "max":86400, "min":1 }, "TooManyRequestsException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "UnlinkDeveloperIdentityInput":{ "type":"structure", "required":[ "IdentityId", "IdentityPoolId", "DeveloperProviderName", "DeveloperUserIdentifier" ], "members":{ "IdentityId":{"shape":"IdentityId"}, "IdentityPoolId":{"shape":"IdentityPoolId"}, "DeveloperProviderName":{"shape":"DeveloperProviderName"}, "DeveloperUserIdentifier":{"shape":"DeveloperUserIdentifier"} } }, "UnlinkIdentityInput":{ "type":"structure", "required":[ "IdentityId", "Logins", "LoginsToRemove" ], "members":{ "IdentityId":{"shape":"IdentityId"}, "Logins":{"shape":"LoginsMap"}, "LoginsToRemove":{"shape":"LoginsList"} } }, "UnprocessedIdentityId":{ "type":"structure", "members":{ "IdentityId":{"shape":"IdentityId"}, "ErrorCode":{"shape":"ErrorCode"} } }, "UnprocessedIdentityIdList":{ "type":"list", "member":{"shape":"UnprocessedIdentityId"}, "max":60 } } } aws-sdk-go-1.4.22/models/apis/cognito-identity/2014-06-30/docs-2.json000066400000000000000000001020771300374646400243150ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon Cognito

        Amazon Cognito is a web service that delivers scoped temporary credentials to mobile devices and other untrusted environments. Amazon Cognito uniquely identifies a device and supplies the user with a consistent identity over the lifetime of an application.

        Using Amazon Cognito, you can enable authentication with one or more third-party identity providers (Facebook, Google, or Login with Amazon), and you can also choose to support unauthenticated access from your app. Cognito delivers a unique identifier for each user and acts as an OpenID token provider trusted by AWS Security Token Service (STS) to access temporary, limited-privilege AWS credentials.

        To provide end-user credentials, first make an unsigned call to GetId. If the end user is authenticated with one of the supported identity providers, set the Logins map with the identity provider token. GetId returns a unique identifier for the user.

        Next, make an unsigned call to GetCredentialsForIdentity. This call expects the same Logins map as the GetId call, as well as the IdentityID originally returned by GetId. Assuming your identity pool has been configured via the SetIdentityPoolRoles operation, GetCredentialsForIdentity will return AWS credentials for your use. If your pool has not been configured with SetIdentityPoolRoles, or if you want to follow legacy flow, make an unsigned call to GetOpenIdToken, which returns the OpenID token necessary to call STS and retrieve AWS credentials. This call expects the same Logins map as the GetId call, as well as the IdentityID originally returned by GetId. The token returned by GetOpenIdToken can be passed to the STS operation AssumeRoleWithWebIdentity to retrieve AWS credentials.

        If you want to use Amazon Cognito in an Android, iOS, or Unity application, you will probably want to make API calls via the AWS Mobile SDK. To learn more, see the AWS Mobile SDK Developer Guide.

        ", "operations": { "CreateIdentityPool": "

        Creates a new identity pool. The identity pool is a store of user identity information that is specific to your AWS account. The limit on identity pools is 60 per account. The keys for SupportedLoginProviders are as follows:

        • Facebook: graph.facebook.com
        • Google: accounts.google.com
        • Amazon: www.amazon.com
        • Twitter: api.twitter.com
        • Digits: www.digits.com
        You must use AWS Developer credentials to call this API.

        ", "DeleteIdentities": "

        Deletes identities from an identity pool. You can specify a list of 1-60 identities that you want to delete.

        You must use AWS Developer credentials to call this API.

        ", "DeleteIdentityPool": "

        Deletes a user pool. Once a pool is deleted, users will not be able to authenticate with the pool.

        You must use AWS Developer credentials to call this API.

        ", "DescribeIdentity": "

        Returns metadata related to the given identity, including when the identity was created and any associated linked logins.

        You must use AWS Developer credentials to call this API.

        ", "DescribeIdentityPool": "

        Gets details about a particular identity pool, including the pool name, ID description, creation date, and current number of users.

        You must use AWS Developer credentials to call this API.

        ", "GetCredentialsForIdentity": "

        Returns credentials for the provided identity ID. Any provided logins will be validated against supported login providers. If the token is for cognito-identity.amazonaws.com, it will be passed through to AWS Security Token Service with the appropriate role for the token.

        This is a public API. You do not need any credentials to call this API.

        ", "GetId": "

        Generates (or retrieves) a Cognito ID. Supplying multiple logins will create an implicit linked account.

        This is a public API. You do not need any credentials to call this API.

        ", "GetIdentityPoolRoles": "

        Gets the roles for an identity pool.

        You must use AWS Developer credentials to call this API.

        ", "GetOpenIdToken": "

        Gets an OpenID token, using a known Cognito ID. This known Cognito ID is returned by GetId. You can optionally add additional logins for the identity. Supplying multiple logins creates an implicit link.

        The OpenId token is valid for 15 minutes.

        This is a public API. You do not need any credentials to call this API.

        ", "GetOpenIdTokenForDeveloperIdentity": "

        Registers (or retrieves) a Cognito IdentityId and an OpenID Connect token for a user authenticated by your backend authentication process. Supplying multiple logins will create an implicit linked account. You can only specify one developer provider as part of the Logins map, which is linked to the identity pool. The developer provider is the \"domain\" by which Cognito will refer to your users.

        You can use GetOpenIdTokenForDeveloperIdentity to create a new identity and to link new logins (that is, user credentials issued by a public provider or developer provider) to an existing identity. When you want to create a new identity, the IdentityId should be null. When you want to associate a new login with an existing authenticated/unauthenticated identity, you can do so by providing the existing IdentityId. This API will create the identity in the specified IdentityPoolId.

        You must use AWS Developer credentials to call this API.

        ", "ListIdentities": "

        Lists the identities in a pool.

        You must use AWS Developer credentials to call this API.

        ", "ListIdentityPools": "

        Lists all of the Cognito identity pools registered for your account.

        You must use AWS Developer credentials to call this API.

        ", "LookupDeveloperIdentity": "

        Retrieves the IdentityID associated with a DeveloperUserIdentifier or the list of DeveloperUserIdentifiers associated with an IdentityId for an existing identity. Either IdentityID or DeveloperUserIdentifier must not be null. If you supply only one of these values, the other value will be searched in the database and returned as a part of the response. If you supply both, DeveloperUserIdentifier will be matched against IdentityID. If the values are verified against the database, the response returns both values and is the same as the request. Otherwise a ResourceConflictException is thrown.

        You must use AWS Developer credentials to call this API.

        ", "MergeDeveloperIdentities": "

        Merges two users having different IdentityIds, existing in the same identity pool, and identified by the same developer provider. You can use this action to request that discrete users be merged and identified as a single user in the Cognito environment. Cognito associates the given source user (SourceUserIdentifier) with the IdentityId of the DestinationUserIdentifier. Only developer-authenticated users can be merged. If the users to be merged are associated with the same public provider, but as two different users, an exception will be thrown.

        You must use AWS Developer credentials to call this API.

        ", "SetIdentityPoolRoles": "

        Sets the roles for an identity pool. These roles are used when making calls to GetCredentialsForIdentity action.

        You must use AWS Developer credentials to call this API.

        ", "UnlinkDeveloperIdentity": "

        Unlinks a DeveloperUserIdentifier from an existing identity. Unlinked developer users will be considered new identities next time they are seen. If, for a given Cognito identity, you remove all federated identities as well as the developer user identifier, the Cognito identity becomes inaccessible.

        You must use AWS Developer credentials to call this API.

        ", "UnlinkIdentity": "

        Unlinks a federated identity from an existing account. Unlinked logins will be considered new identities next time they are seen. Removing the last linked login will make this identity inaccessible.

        This is a public API. You do not need any credentials to call this API.

        ", "UpdateIdentityPool": "

        Updates a user pool.

        You must use AWS Developer credentials to call this API.

        " }, "shapes": { "ARNString": { "base": null, "refs": { "GetCredentialsForIdentityInput$CustomRoleArn": "

        The Amazon Resource Name (ARN) of the role to be assumed when multiple roles were received in the token from the identity provider. For example, a SAML-based identity provider. This parameter is optional for identity providers that do not support role customization.

        ", "OIDCProviderList$member": null, "RolesMap$value": null, "SAMLProviderList$member": null } }, "AccessKeyString": { "base": null, "refs": { "Credentials$AccessKeyId": "

        The Access Key portion of the credentials.

        " } }, "AccountId": { "base": null, "refs": { "GetIdInput$AccountId": "A standard AWS account ID (9+ digits)." } }, "CognitoIdentityProvider": { "base": "

        A provider representing an Amazon Cognito Identity User Pool and its client ID.

        ", "refs": { "CognitoIdentityProviderList$member": null } }, "CognitoIdentityProviderClientId": { "base": null, "refs": { "CognitoIdentityProvider$ClientId": "

        The client ID for the Amazon Cognito Identity User Pool.

        " } }, "CognitoIdentityProviderList": { "base": null, "refs": { "CreateIdentityPoolInput$CognitoIdentityProviders": "

        An array of Amazon Cognito Identity user pools.

        ", "IdentityPool$CognitoIdentityProviders": "

        A list representing an Amazon Cognito Identity User Pool and its client ID.

        " } }, "CognitoIdentityProviderName": { "base": null, "refs": { "CognitoIdentityProvider$ProviderName": "

        The provider name for an Amazon Cognito Identity User Pool. For example, cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789.

        " } }, "ConcurrentModificationException": { "base": "

        Thrown if there are parallel requests to modify a resource.

        ", "refs": { } }, "CreateIdentityPoolInput": { "base": "

        Input to the CreateIdentityPool action.

        ", "refs": { } }, "Credentials": { "base": "

        Credentials for the provided identity ID.

        ", "refs": { "GetCredentialsForIdentityResponse$Credentials": "

        Credentials for the provided identity ID.

        " } }, "DateType": { "base": null, "refs": { "Credentials$Expiration": "

        The date at which these credentials will expire.

        ", "IdentityDescription$CreationDate": "

        Date on which the identity was created.

        ", "IdentityDescription$LastModifiedDate": "

        Date on which the identity was last modified.

        " } }, "DeleteIdentitiesInput": { "base": "

        Input to the DeleteIdentities action.

        ", "refs": { } }, "DeleteIdentitiesResponse": { "base": "

        Returned in response to a successful DeleteIdentities operation.

        ", "refs": { } }, "DeleteIdentityPoolInput": { "base": "

        Input to the DeleteIdentityPool action.

        ", "refs": { } }, "DescribeIdentityInput": { "base": "

        Input to the DescribeIdentity action.

        ", "refs": { } }, "DescribeIdentityPoolInput": { "base": "Input to the DescribeIdentityPool action.", "refs": { } }, "DeveloperProviderName": { "base": null, "refs": { "CreateIdentityPoolInput$DeveloperProviderName": "

        The \"domain\" by which Cognito will refer to your users. This name acts as a placeholder that allows your backend and the Cognito service to communicate about the developer provider. For the DeveloperProviderName, you can use letters as well as period (.), underscore (_), and dash (-).

        Once you have set a developer provider name, you cannot change it. Please take care in setting this parameter.

        ", "IdentityPool$DeveloperProviderName": "

        The \"domain\" by which Cognito will refer to your users.

        ", "MergeDeveloperIdentitiesInput$DeveloperProviderName": "

        The \"domain\" by which Cognito will refer to your users. This is a (pseudo) domain name that you provide while creating an identity pool. This name acts as a placeholder that allows your backend and the Cognito service to communicate about the developer provider. For the DeveloperProviderName, you can use letters as well as period (.), underscore (_), and dash (-).

        ", "UnlinkDeveloperIdentityInput$DeveloperProviderName": "

        The \"domain\" by which Cognito will refer to your users.

        " } }, "DeveloperUserAlreadyRegisteredException": { "base": "

        The provided developer user identifier is already registered with Cognito under a different identity ID.

        ", "refs": { } }, "DeveloperUserIdentifier": { "base": null, "refs": { "DeveloperUserIdentifierList$member": null, "LookupDeveloperIdentityInput$DeveloperUserIdentifier": "

        A unique ID used by your backend authentication process to identify a user. Typically, a developer identity provider would issue many developer user identifiers, in keeping with the number of users.

        ", "MergeDeveloperIdentitiesInput$SourceUserIdentifier": "

        User identifier for the source user. The value should be a DeveloperUserIdentifier.

        ", "MergeDeveloperIdentitiesInput$DestinationUserIdentifier": "

        User identifier for the destination user. The value should be a DeveloperUserIdentifier.

        ", "UnlinkDeveloperIdentityInput$DeveloperUserIdentifier": "A unique ID used by your backend authentication process to identify a user." } }, "DeveloperUserIdentifierList": { "base": null, "refs": { "LookupDeveloperIdentityResponse$DeveloperUserIdentifierList": "

        This is the list of developer user identifiers associated with an identity ID. Cognito supports the association of multiple developer user identifiers with an identity ID.

        " } }, "ErrorCode": { "base": null, "refs": { "UnprocessedIdentityId$ErrorCode": "

        The error code indicating the type of error that occurred.

        " } }, "ExternalServiceException": { "base": "

        An exception thrown when a dependent service such as Facebook or Twitter is not responding

        ", "refs": { } }, "GetCredentialsForIdentityInput": { "base": "

        Input to the GetCredentialsForIdentity action.

        ", "refs": { } }, "GetCredentialsForIdentityResponse": { "base": "

        Returned in response to a successful GetCredentialsForIdentity operation.

        ", "refs": { } }, "GetIdInput": { "base": "Input to the GetId action.", "refs": { } }, "GetIdResponse": { "base": "Returned in response to a GetId request.", "refs": { } }, "GetIdentityPoolRolesInput": { "base": "

        Input to the GetIdentityPoolRoles action.

        ", "refs": { } }, "GetIdentityPoolRolesResponse": { "base": "

        Returned in response to a successful GetIdentityPoolRoles operation.

        ", "refs": { } }, "GetOpenIdTokenForDeveloperIdentityInput": { "base": "

        Input to the GetOpenIdTokenForDeveloperIdentity action.

        ", "refs": { } }, "GetOpenIdTokenForDeveloperIdentityResponse": { "base": "

        Returned in response to a successful GetOpenIdTokenForDeveloperIdentity request.

        ", "refs": { } }, "GetOpenIdTokenInput": { "base": "Input to the GetOpenIdToken action.", "refs": { } }, "GetOpenIdTokenResponse": { "base": "Returned in response to a successful GetOpenIdToken request.", "refs": { } }, "HideDisabled": { "base": null, "refs": { "ListIdentitiesInput$HideDisabled": "

        An optional boolean parameter that allows you to hide disabled identities. If omitted, the ListIdentities API will include disabled identities in the response.

        " } }, "IdentitiesList": { "base": null, "refs": { "ListIdentitiesResponse$Identities": "An object containing a set of identities and associated mappings." } }, "IdentityDescription": { "base": "A description of the identity.", "refs": { "IdentitiesList$member": null } }, "IdentityId": { "base": null, "refs": { "DescribeIdentityInput$IdentityId": "

        A unique identifier in the format REGION:GUID.

        ", "GetCredentialsForIdentityInput$IdentityId": "

        A unique identifier in the format REGION:GUID.

        ", "GetCredentialsForIdentityResponse$IdentityId": "

        A unique identifier in the format REGION:GUID.

        ", "GetIdResponse$IdentityId": "A unique identifier in the format REGION:GUID.", "GetOpenIdTokenForDeveloperIdentityInput$IdentityId": "

        A unique identifier in the format REGION:GUID.

        ", "GetOpenIdTokenForDeveloperIdentityResponse$IdentityId": "

        A unique identifier in the format REGION:GUID.

        ", "GetOpenIdTokenInput$IdentityId": "A unique identifier in the format REGION:GUID.", "GetOpenIdTokenResponse$IdentityId": "A unique identifier in the format REGION:GUID. Note that the IdentityId returned may not match the one passed on input.", "IdentityDescription$IdentityId": "A unique identifier in the format REGION:GUID.", "IdentityIdList$member": null, "LookupDeveloperIdentityInput$IdentityId": "

        A unique identifier in the format REGION:GUID.

        ", "LookupDeveloperIdentityResponse$IdentityId": "

        A unique identifier in the format REGION:GUID.

        ", "MergeDeveloperIdentitiesResponse$IdentityId": "

        A unique identifier in the format REGION:GUID.

        ", "UnlinkDeveloperIdentityInput$IdentityId": "

        A unique identifier in the format REGION:GUID.

        ", "UnlinkIdentityInput$IdentityId": "A unique identifier in the format REGION:GUID.", "UnprocessedIdentityId$IdentityId": "

        A unique identifier in the format REGION:GUID.

        " } }, "IdentityIdList": { "base": null, "refs": { "DeleteIdentitiesInput$IdentityIdsToDelete": "

        A list of 1-60 identities that you want to delete.

        " } }, "IdentityPool": { "base": "An object representing a Cognito identity pool.", "refs": { } }, "IdentityPoolId": { "base": null, "refs": { "DeleteIdentityPoolInput$IdentityPoolId": "An identity pool ID in the format REGION:GUID.", "DescribeIdentityPoolInput$IdentityPoolId": "An identity pool ID in the format REGION:GUID.", "GetIdInput$IdentityPoolId": "An identity pool ID in the format REGION:GUID.", "GetIdentityPoolRolesInput$IdentityPoolId": "

        An identity pool ID in the format REGION:GUID.

        ", "GetIdentityPoolRolesResponse$IdentityPoolId": "

        An identity pool ID in the format REGION:GUID.

        ", "GetOpenIdTokenForDeveloperIdentityInput$IdentityPoolId": "

        An identity pool ID in the format REGION:GUID.

        ", "IdentityPool$IdentityPoolId": "An identity pool ID in the format REGION:GUID.", "IdentityPoolShortDescription$IdentityPoolId": "An identity pool ID in the format REGION:GUID.", "ListIdentitiesInput$IdentityPoolId": "An identity pool ID in the format REGION:GUID.", "ListIdentitiesResponse$IdentityPoolId": "An identity pool ID in the format REGION:GUID.", "LookupDeveloperIdentityInput$IdentityPoolId": "

        An identity pool ID in the format REGION:GUID.

        ", "MergeDeveloperIdentitiesInput$IdentityPoolId": "

        An identity pool ID in the format REGION:GUID.

        ", "SetIdentityPoolRolesInput$IdentityPoolId": "

        An identity pool ID in the format REGION:GUID.

        ", "UnlinkDeveloperIdentityInput$IdentityPoolId": "

        An identity pool ID in the format REGION:GUID.

        " } }, "IdentityPoolName": { "base": null, "refs": { "CreateIdentityPoolInput$IdentityPoolName": "

        A string that you provide.

        ", "IdentityPool$IdentityPoolName": "

        A string that you provide.

        ", "IdentityPoolShortDescription$IdentityPoolName": "A string that you provide." } }, "IdentityPoolShortDescription": { "base": "A description of the identity pool.", "refs": { "IdentityPoolsList$member": null } }, "IdentityPoolUnauthenticated": { "base": null, "refs": { "CreateIdentityPoolInput$AllowUnauthenticatedIdentities": "

        TRUE if the identity pool supports unauthenticated logins.

        ", "IdentityPool$AllowUnauthenticatedIdentities": "TRUE if the identity pool supports unauthenticated logins." } }, "IdentityPoolsList": { "base": null, "refs": { "ListIdentityPoolsResponse$IdentityPools": "The identity pools returned by the ListIdentityPools action." } }, "IdentityProviderId": { "base": null, "refs": { "IdentityProviders$value": null } }, "IdentityProviderName": { "base": null, "refs": { "IdentityProviders$key": null, "LoginsList$member": null, "LoginsMap$key": null } }, "IdentityProviderToken": { "base": null, "refs": { "LoginsMap$value": null } }, "IdentityProviders": { "base": null, "refs": { "CreateIdentityPoolInput$SupportedLoginProviders": "

        Optional key:value pairs mapping provider names to provider app IDs.

        ", "IdentityPool$SupportedLoginProviders": "

        Optional key:value pairs mapping provider names to provider app IDs.

        " } }, "InternalErrorException": { "base": "Thrown when the service encounters an error during processing the request.", "refs": { } }, "InvalidIdentityPoolConfigurationException": { "base": "

        Thrown if the identity pool has no role associated for the given auth type (auth/unauth) or if the AssumeRole fails.

        ", "refs": { } }, "InvalidParameterException": { "base": "Thrown for missing or bad input parameter(s).", "refs": { } }, "LimitExceededException": { "base": "Thrown when the total number of user pools has exceeded a preset limit.", "refs": { } }, "ListIdentitiesInput": { "base": "Input to the ListIdentities action.", "refs": { } }, "ListIdentitiesResponse": { "base": "The response to a ListIdentities request.", "refs": { } }, "ListIdentityPoolsInput": { "base": "Input to the ListIdentityPools action.", "refs": { } }, "ListIdentityPoolsResponse": { "base": "The result of a successful ListIdentityPools action.", "refs": { } }, "LoginsList": { "base": null, "refs": { "IdentityDescription$Logins": "A set of optional name-value pairs that map provider names to provider tokens.", "UnlinkIdentityInput$LoginsToRemove": "Provider names to unlink from this identity." } }, "LoginsMap": { "base": null, "refs": { "GetCredentialsForIdentityInput$Logins": "

        A set of optional name-value pairs that map provider names to provider tokens.

        ", "GetIdInput$Logins": "

        A set of optional name-value pairs that map provider names to provider tokens.

        The available provider names for Logins are as follows:

        • Facebook: graph.facebook.com
        • Google: accounts.google.com
        • Amazon: www.amazon.com
        • Twitter: api.twitter.com
        • Digits: www.digits.com

        ", "GetOpenIdTokenForDeveloperIdentityInput$Logins": "

        A set of optional name-value pairs that map provider names to provider tokens. Each name-value pair represents a user from a public provider or developer provider. If the user is from a developer provider, the name-value pair will follow the syntax \"developer_provider_name\": \"developer_user_identifier\". The developer provider is the \"domain\" by which Cognito will refer to your users; you provided this domain while creating/updating the identity pool. The developer user identifier is an identifier from your backend that uniquely identifies a user. When you create an identity pool, you can specify the supported logins.

        ", "GetOpenIdTokenInput$Logins": "A set of optional name-value pairs that map provider names to provider tokens. When using graph.facebook.com and www.amazon.com, supply the access_token returned from the provider's authflow. For accounts.google.com or any other OpenId Connect provider, always include the id_token.", "UnlinkIdentityInput$Logins": "A set of optional name-value pairs that map provider names to provider tokens." } }, "LookupDeveloperIdentityInput": { "base": "

        Input to the LookupDeveloperIdentityInput action.

        ", "refs": { } }, "LookupDeveloperIdentityResponse": { "base": "

        Returned in response to a successful LookupDeveloperIdentity action.

        ", "refs": { } }, "MergeDeveloperIdentitiesInput": { "base": "

        Input to the MergeDeveloperIdentities action.

        ", "refs": { } }, "MergeDeveloperIdentitiesResponse": { "base": "

        Returned in response to a successful MergeDeveloperIdentities action.

        ", "refs": { } }, "NotAuthorizedException": { "base": "Thrown when a user is not authorized to access the requested resource.", "refs": { } }, "OIDCProviderList": { "base": null, "refs": { "CreateIdentityPoolInput$OpenIdConnectProviderARNs": "

        A list of OpendID Connect provider ARNs.

        ", "IdentityPool$OpenIdConnectProviderARNs": "

        A list of OpendID Connect provider ARNs.

        " } }, "OIDCToken": { "base": null, "refs": { "GetOpenIdTokenForDeveloperIdentityResponse$Token": "

        An OpenID token.

        ", "GetOpenIdTokenResponse$Token": "An OpenID token, valid for 15 minutes." } }, "PaginationKey": { "base": null, "refs": { "ListIdentitiesInput$NextToken": "A pagination token.", "ListIdentitiesResponse$NextToken": "A pagination token.", "ListIdentityPoolsInput$NextToken": "A pagination token.", "ListIdentityPoolsResponse$NextToken": "A pagination token.", "LookupDeveloperIdentityInput$NextToken": "

        A pagination token. The first call you make will have NextToken set to null. After that the service will return NextToken values as needed. For example, let's say you make a request with MaxResults set to 10, and there are 20 matches in the database. The service will return a pagination token as a part of the response. This token can be used to call the API again and get results starting from the 11th match.

        ", "LookupDeveloperIdentityResponse$NextToken": "

        A pagination token. The first call you make will have NextToken set to null. After that the service will return NextToken values as needed. For example, let's say you make a request with MaxResults set to 10, and there are 20 matches in the database. The service will return a pagination token as a part of the response. This token can be used to call the API again and get results starting from the 11th match.

        " } }, "QueryLimit": { "base": null, "refs": { "ListIdentitiesInput$MaxResults": "The maximum number of identities to return.", "ListIdentityPoolsInput$MaxResults": "The maximum number of identities to return.", "LookupDeveloperIdentityInput$MaxResults": "

        The maximum number of identities to return.

        " } }, "ResourceConflictException": { "base": "Thrown when a user tries to use a login which is already linked to another account.", "refs": { } }, "ResourceNotFoundException": { "base": "Thrown when the requested resource (for example, a dataset or record) does not exist.", "refs": { } }, "RoleType": { "base": null, "refs": { "RolesMap$key": null } }, "RolesMap": { "base": null, "refs": { "GetIdentityPoolRolesResponse$Roles": "

        The map of roles associated with this pool. Currently only authenticated and unauthenticated roles are supported.

        ", "SetIdentityPoolRolesInput$Roles": "

        The map of roles associated with this pool. For a given role, the key will be either \"authenticated\" or \"unauthenticated\" and the value will be the Role ARN.

        " } }, "SAMLProviderList": { "base": null, "refs": { "CreateIdentityPoolInput$SamlProviderARNs": "

        An array of Amazon Resource Names (ARNs) of the SAML provider for your identity pool.

        ", "IdentityPool$SamlProviderARNs": "

        An array of Amazon Resource Names (ARNs) of the SAML provider for your identity pool.

        " } }, "SecretKeyString": { "base": null, "refs": { "Credentials$SecretKey": "

        The Secret Access Key portion of the credentials

        " } }, "SessionTokenString": { "base": null, "refs": { "Credentials$SessionToken": "

        The Session Token portion of the credentials

        " } }, "SetIdentityPoolRolesInput": { "base": "

        Input to the SetIdentityPoolRoles action.

        ", "refs": { } }, "String": { "base": null, "refs": { "ConcurrentModificationException$message": "

        The message returned by a ConcurrentModificationException.

        ", "DeveloperUserAlreadyRegisteredException$message": "

        This developer user identifier is already registered with Cognito.

        ", "ExternalServiceException$message": "

        The message returned by an ExternalServiceException

        ", "InternalErrorException$message": "The message returned by an InternalErrorException.", "InvalidIdentityPoolConfigurationException$message": "

        The message returned for an InvalidIdentityPoolConfigurationException

        ", "InvalidParameterException$message": "The message returned by an InvalidParameterException.", "LimitExceededException$message": "The message returned by a LimitExceededException.", "NotAuthorizedException$message": "The message returned by a NotAuthorizedException", "ResourceConflictException$message": "The message returned by a ResourceConflictException.", "ResourceNotFoundException$message": "The message returned by a ResourceNotFoundException.", "TooManyRequestsException$message": "Message returned by a TooManyRequestsException" } }, "TokenDuration": { "base": null, "refs": { "GetOpenIdTokenForDeveloperIdentityInput$TokenDuration": "

        The expiration time of the token, in seconds. You can specify a custom expiration time for the token so that you can cache it. If you don't provide an expiration time, the token is valid for 15 minutes. You can exchange the token with Amazon STS for temporary AWS credentials, which are valid for a maximum of one hour. The maximum token duration you can set is 24 hours. You should take care in setting the expiration time for a token, as there are significant security implications: an attacker could use a leaked token to access your AWS resources for the token's duration.

        " } }, "TooManyRequestsException": { "base": "Thrown when a request is throttled.", "refs": { } }, "UnlinkDeveloperIdentityInput": { "base": "

        Input to the UnlinkDeveloperIdentity action.

        ", "refs": { } }, "UnlinkIdentityInput": { "base": "Input to the UnlinkIdentity action.", "refs": { } }, "UnprocessedIdentityId": { "base": "

        An array of UnprocessedIdentityId objects, each of which contains an ErrorCode and IdentityId.

        ", "refs": { "UnprocessedIdentityIdList$member": null } }, "UnprocessedIdentityIdList": { "base": null, "refs": { "DeleteIdentitiesResponse$UnprocessedIdentityIds": "

        An array of UnprocessedIdentityId objects, each of which contains an ErrorCode and IdentityId.

        " } } } } aws-sdk-go-1.4.22/models/apis/cognito-identity/2014-06-30/examples-1.json000066400000000000000000000000541300374646400251720ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/cognito-idp/000077500000000000000000000000001300374646400202165ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cognito-idp/2016-04-18/000077500000000000000000000000001300374646400212555ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cognito-idp/2016-04-18/api-2.json000066400000000000000000002535301300374646400230700ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2016-04-18", "endpointPrefix":"cognito-idp", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"Amazon Cognito Identity Provider", "signatureVersion":"v4", "targetPrefix":"AWSCognitoIdentityProviderService" }, "operations":{ "AddCustomAttributes":{ "name":"AddCustomAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddCustomAttributesRequest"}, "output":{"shape":"AddCustomAttributesResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"UserImportInProgressException"}, {"shape":"InternalErrorException"} ] }, "AdminConfirmSignUp":{ "name":"AdminConfirmSignUp", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AdminConfirmSignUpRequest"}, "output":{"shape":"AdminConfirmSignUpResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"UnexpectedLambdaException"}, {"shape":"UserLambdaValidationException"}, {"shape":"NotAuthorizedException"}, {"shape":"TooManyFailedAttemptsException"}, {"shape":"InvalidLambdaResponseException"}, {"shape":"TooManyRequestsException"}, {"shape":"LimitExceededException"}, {"shape":"UserNotFoundException"}, {"shape":"InternalErrorException"} ] }, "AdminCreateUser":{ "name":"AdminCreateUser", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AdminCreateUserRequest"}, "output":{"shape":"AdminCreateUserResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"UserNotFoundException"}, {"shape":"UsernameExistsException"}, {"shape":"InvalidPasswordException"}, {"shape":"CodeDeliveryFailureException"}, {"shape":"UnexpectedLambdaException"}, {"shape":"UserLambdaValidationException"}, {"shape":"InvalidLambdaResponseException"}, {"shape":"PreconditionNotMetException"}, {"shape":"InvalidSmsRoleAccessPolicyException"}, {"shape":"InvalidSmsRoleTrustRelationshipException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"UnsupportedUserStateException"}, {"shape":"InternalErrorException"} ] }, "AdminDeleteUser":{ "name":"AdminDeleteUser", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AdminDeleteUserRequest"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"UserNotFoundException"}, {"shape":"InternalErrorException"} ] }, "AdminDeleteUserAttributes":{ "name":"AdminDeleteUserAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AdminDeleteUserAttributesRequest"}, "output":{"shape":"AdminDeleteUserAttributesResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"UserNotFoundException"}, {"shape":"InternalErrorException"} ] }, "AdminDisableUser":{ "name":"AdminDisableUser", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AdminDisableUserRequest"}, "output":{"shape":"AdminDisableUserResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"UserNotFoundException"}, {"shape":"InternalErrorException"} ] }, "AdminEnableUser":{ "name":"AdminEnableUser", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AdminEnableUserRequest"}, "output":{"shape":"AdminEnableUserResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"UserNotFoundException"}, {"shape":"InternalErrorException"} ] }, "AdminForgetDevice":{ "name":"AdminForgetDevice", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AdminForgetDeviceRequest"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidUserPoolConfigurationException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"UserNotFoundException"}, {"shape":"InternalErrorException"} ] }, "AdminGetDevice":{ "name":"AdminGetDevice", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AdminGetDeviceRequest"}, "output":{"shape":"AdminGetDeviceResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidUserPoolConfigurationException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"}, {"shape":"NotAuthorizedException"} ] }, "AdminGetUser":{ "name":"AdminGetUser", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AdminGetUserRequest"}, "output":{"shape":"AdminGetUserResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"UserNotFoundException"}, {"shape":"InternalErrorException"} ] }, "AdminInitiateAuth":{ "name":"AdminInitiateAuth", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AdminInitiateAuthRequest"}, "output":{"shape":"AdminInitiateAuthResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"NotAuthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"}, {"shape":"UnexpectedLambdaException"}, {"shape":"InvalidUserPoolConfigurationException"}, {"shape":"UserLambdaValidationException"}, {"shape":"InvalidLambdaResponseException"}, {"shape":"MFAMethodNotFoundException"}, {"shape":"InvalidSmsRoleAccessPolicyException"}, {"shape":"InvalidSmsRoleTrustRelationshipException"}, {"shape":"PasswordResetRequiredException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"} ] }, "AdminListDevices":{ "name":"AdminListDevices", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AdminListDevicesRequest"}, "output":{"shape":"AdminListDevicesResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidUserPoolConfigurationException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"}, {"shape":"NotAuthorizedException"} ] }, "AdminResetUserPassword":{ "name":"AdminResetUserPassword", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AdminResetUserPasswordRequest"}, "output":{"shape":"AdminResetUserPasswordResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"UnexpectedLambdaException"}, {"shape":"UserLambdaValidationException"}, {"shape":"NotAuthorizedException"}, {"shape":"InvalidLambdaResponseException"}, {"shape":"TooManyRequestsException"}, {"shape":"LimitExceededException"}, {"shape":"UserNotFoundException"}, {"shape":"InternalErrorException"} ] }, "AdminRespondToAuthChallenge":{ "name":"AdminRespondToAuthChallenge", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AdminRespondToAuthChallengeRequest"}, "output":{"shape":"AdminRespondToAuthChallengeResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"NotAuthorizedException"}, {"shape":"CodeMismatchException"}, {"shape":"ExpiredCodeException"}, {"shape":"UnexpectedLambdaException"}, {"shape":"InvalidPasswordException"}, {"shape":"UserLambdaValidationException"}, {"shape":"InvalidLambdaResponseException"}, {"shape":"TooManyRequestsException"}, {"shape":"InvalidUserPoolConfigurationException"}, {"shape":"InternalErrorException"}, {"shape":"MFAMethodNotFoundException"}, {"shape":"InvalidSmsRoleAccessPolicyException"}, {"shape":"InvalidSmsRoleTrustRelationshipException"}, {"shape":"AliasExistsException"}, {"shape":"PasswordResetRequiredException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"} ] }, "AdminSetUserSettings":{ "name":"AdminSetUserSettings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AdminSetUserSettingsRequest"}, "output":{"shape":"AdminSetUserSettingsResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"NotAuthorizedException"}, {"shape":"UserNotFoundException"}, {"shape":"InternalErrorException"} ] }, "AdminUpdateDeviceStatus":{ "name":"AdminUpdateDeviceStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AdminUpdateDeviceStatusRequest"}, "output":{"shape":"AdminUpdateDeviceStatusResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidUserPoolConfigurationException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"UserNotFoundException"}, {"shape":"InternalErrorException"} ] }, "AdminUpdateUserAttributes":{ "name":"AdminUpdateUserAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AdminUpdateUserAttributesRequest"}, "output":{"shape":"AdminUpdateUserAttributesResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"UnexpectedLambdaException"}, {"shape":"UserLambdaValidationException"}, {"shape":"InvalidLambdaResponseException"}, {"shape":"AliasExistsException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"UserNotFoundException"}, {"shape":"InternalErrorException"} ] }, "AdminUserGlobalSignOut":{ "name":"AdminUserGlobalSignOut", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AdminUserGlobalSignOutRequest"}, "output":{"shape":"AdminUserGlobalSignOutResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"UserNotFoundException"}, {"shape":"InternalErrorException"} ] }, "ChangePassword":{ "name":"ChangePassword", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ChangePasswordRequest"}, "output":{"shape":"ChangePasswordResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidPasswordException"}, {"shape":"NotAuthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"LimitExceededException"}, {"shape":"PasswordResetRequiredException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"}, {"shape":"InternalErrorException"} ], "authtype":"none" }, "ConfirmDevice":{ "name":"ConfirmDevice", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ConfirmDeviceRequest"}, "output":{"shape":"ConfirmDeviceResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"NotAuthorizedException"}, {"shape":"InvalidPasswordException"}, {"shape":"InvalidLambdaResponseException"}, {"shape":"UsernameExistsException"}, {"shape":"InvalidUserPoolConfigurationException"}, {"shape":"TooManyRequestsException"}, {"shape":"PasswordResetRequiredException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"}, {"shape":"InternalErrorException"} ] }, "ConfirmForgotPassword":{ "name":"ConfirmForgotPassword", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ConfirmForgotPasswordRequest"}, "output":{"shape":"ConfirmForgotPasswordResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"UnexpectedLambdaException"}, {"shape":"UserLambdaValidationException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidPasswordException"}, {"shape":"NotAuthorizedException"}, {"shape":"CodeMismatchException"}, {"shape":"ExpiredCodeException"}, {"shape":"TooManyFailedAttemptsException"}, {"shape":"InvalidLambdaResponseException"}, {"shape":"TooManyRequestsException"}, {"shape":"LimitExceededException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"}, {"shape":"InternalErrorException"} ], "authtype":"none" }, "ConfirmSignUp":{ "name":"ConfirmSignUp", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ConfirmSignUpRequest"}, "output":{"shape":"ConfirmSignUpResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"UnexpectedLambdaException"}, {"shape":"UserLambdaValidationException"}, {"shape":"NotAuthorizedException"}, {"shape":"TooManyFailedAttemptsException"}, {"shape":"CodeMismatchException"}, {"shape":"ExpiredCodeException"}, {"shape":"InvalidLambdaResponseException"}, {"shape":"AliasExistsException"}, {"shape":"TooManyRequestsException"}, {"shape":"LimitExceededException"}, {"shape":"UserNotFoundException"}, {"shape":"InternalErrorException"} ], "authtype":"none" }, "CreateUserImportJob":{ "name":"CreateUserImportJob", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateUserImportJobRequest"}, "output":{"shape":"CreateUserImportJobResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"PreconditionNotMetException"}, {"shape":"NotAuthorizedException"}, {"shape":"LimitExceededException"}, {"shape":"InternalErrorException"} ] }, "CreateUserPool":{ "name":"CreateUserPool", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateUserPoolRequest"}, "output":{"shape":"CreateUserPoolResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidSmsRoleAccessPolicyException"}, {"shape":"InvalidSmsRoleTrustRelationshipException"}, {"shape":"InvalidEmailRoleAccessPolicyException"}, {"shape":"NotAuthorizedException"}, {"shape":"InternalErrorException"} ] }, "CreateUserPoolClient":{ "name":"CreateUserPoolClient", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateUserPoolClientRequest"}, "output":{"shape":"CreateUserPoolClientResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"TooManyRequestsException"}, {"shape":"LimitExceededException"}, {"shape":"NotAuthorizedException"}, {"shape":"InternalErrorException"} ] }, "DeleteUser":{ "name":"DeleteUser", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteUserRequest"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"NotAuthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"PasswordResetRequiredException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"}, {"shape":"InternalErrorException"} ], "authtype":"none" }, "DeleteUserAttributes":{ "name":"DeleteUserAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteUserAttributesRequest"}, "output":{"shape":"DeleteUserAttributesResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"NotAuthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"PasswordResetRequiredException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"}, {"shape":"InternalErrorException"} ], "authtype":"none" }, "DeleteUserPool":{ "name":"DeleteUserPool", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteUserPoolRequest"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"UserImportInProgressException"}, {"shape":"InternalErrorException"} ] }, "DeleteUserPoolClient":{ "name":"DeleteUserPoolClient", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteUserPoolClientRequest"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"InternalErrorException"} ] }, "DescribeUserImportJob":{ "name":"DescribeUserImportJob", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeUserImportJobRequest"}, "output":{"shape":"DescribeUserImportJobResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"InternalErrorException"} ] }, "DescribeUserPool":{ "name":"DescribeUserPool", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeUserPoolRequest"}, "output":{"shape":"DescribeUserPoolResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"InternalErrorException"} ] }, "DescribeUserPoolClient":{ "name":"DescribeUserPoolClient", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeUserPoolClientRequest"}, "output":{"shape":"DescribeUserPoolClientResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"InternalErrorException"} ] }, "ForgetDevice":{ "name":"ForgetDevice", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ForgetDeviceRequest"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"NotAuthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"InvalidUserPoolConfigurationException"}, {"shape":"PasswordResetRequiredException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"}, {"shape":"InternalErrorException"} ] }, "ForgotPassword":{ "name":"ForgotPassword", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ForgotPasswordRequest"}, "output":{"shape":"ForgotPasswordResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"UnexpectedLambdaException"}, {"shape":"UserLambdaValidationException"}, {"shape":"NotAuthorizedException"}, {"shape":"InvalidLambdaResponseException"}, {"shape":"TooManyRequestsException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidSmsRoleAccessPolicyException"}, {"shape":"InvalidSmsRoleTrustRelationshipException"}, {"shape":"InvalidEmailRoleAccessPolicyException"}, {"shape":"CodeDeliveryFailureException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"}, {"shape":"InternalErrorException"} ], "authtype":"none" }, "GetCSVHeader":{ "name":"GetCSVHeader", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetCSVHeaderRequest"}, "output":{"shape":"GetCSVHeaderResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"InternalErrorException"} ] }, "GetDevice":{ "name":"GetDevice", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetDeviceRequest"}, "output":{"shape":"GetDeviceResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidUserPoolConfigurationException"}, {"shape":"NotAuthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"PasswordResetRequiredException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"}, {"shape":"InternalErrorException"} ] }, "GetUser":{ "name":"GetUser", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetUserRequest"}, "output":{"shape":"GetUserResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"NotAuthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"PasswordResetRequiredException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"}, {"shape":"InternalErrorException"} ], "authtype":"none" }, "GetUserAttributeVerificationCode":{ "name":"GetUserAttributeVerificationCode", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetUserAttributeVerificationCodeRequest"}, "output":{"shape":"GetUserAttributeVerificationCodeResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"UnexpectedLambdaException"}, {"shape":"UserLambdaValidationException"}, {"shape":"InvalidLambdaResponseException"}, {"shape":"InvalidSmsRoleAccessPolicyException"}, {"shape":"InvalidSmsRoleTrustRelationshipException"}, {"shape":"InvalidEmailRoleAccessPolicyException"}, {"shape":"CodeDeliveryFailureException"}, {"shape":"LimitExceededException"}, {"shape":"PasswordResetRequiredException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"}, {"shape":"InternalErrorException"} ], "authtype":"none" }, "GlobalSignOut":{ "name":"GlobalSignOut", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GlobalSignOutRequest"}, "output":{"shape":"GlobalSignOutResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"NotAuthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"PasswordResetRequiredException"}, {"shape":"UserNotConfirmedException"}, {"shape":"InternalErrorException"} ] }, "InitiateAuth":{ "name":"InitiateAuth", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"InitiateAuthRequest"}, "output":{"shape":"InitiateAuthResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"NotAuthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"UnexpectedLambdaException"}, {"shape":"InvalidUserPoolConfigurationException"}, {"shape":"UserLambdaValidationException"}, {"shape":"InvalidLambdaResponseException"}, {"shape":"PasswordResetRequiredException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"}, {"shape":"InternalErrorException"} ] }, "ListDevices":{ "name":"ListDevices", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListDevicesRequest"}, "output":{"shape":"ListDevicesResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"NotAuthorizedException"}, {"shape":"InvalidUserPoolConfigurationException"}, {"shape":"TooManyRequestsException"}, {"shape":"PasswordResetRequiredException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"}, {"shape":"InternalErrorException"} ] }, "ListUserImportJobs":{ "name":"ListUserImportJobs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListUserImportJobsRequest"}, "output":{"shape":"ListUserImportJobsResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"InternalErrorException"} ] }, "ListUserPoolClients":{ "name":"ListUserPoolClients", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListUserPoolClientsRequest"}, "output":{"shape":"ListUserPoolClientsResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"InternalErrorException"} ] }, "ListUserPools":{ "name":"ListUserPools", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListUserPoolsRequest"}, "output":{"shape":"ListUserPoolsResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"InternalErrorException"} ] }, "ListUsers":{ "name":"ListUsers", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListUsersRequest"}, "output":{"shape":"ListUsersResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"InternalErrorException"} ] }, "ResendConfirmationCode":{ "name":"ResendConfirmationCode", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResendConfirmationCodeRequest"}, "output":{"shape":"ResendConfirmationCodeResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"UnexpectedLambdaException"}, {"shape":"UserLambdaValidationException"}, {"shape":"NotAuthorizedException"}, {"shape":"InvalidLambdaResponseException"}, {"shape":"TooManyRequestsException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidSmsRoleAccessPolicyException"}, {"shape":"InvalidSmsRoleTrustRelationshipException"}, {"shape":"InvalidEmailRoleAccessPolicyException"}, {"shape":"CodeDeliveryFailureException"}, {"shape":"UserNotFoundException"}, {"shape":"InternalErrorException"} ], "authtype":"none" }, "RespondToAuthChallenge":{ "name":"RespondToAuthChallenge", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RespondToAuthChallengeRequest"}, "output":{"shape":"RespondToAuthChallengeResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"NotAuthorizedException"}, {"shape":"CodeMismatchException"}, {"shape":"ExpiredCodeException"}, {"shape":"UnexpectedLambdaException"}, {"shape":"UserLambdaValidationException"}, {"shape":"InvalidPasswordException"}, {"shape":"InvalidLambdaResponseException"}, {"shape":"TooManyRequestsException"}, {"shape":"InvalidUserPoolConfigurationException"}, {"shape":"MFAMethodNotFoundException"}, {"shape":"PasswordResetRequiredException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"}, {"shape":"InvalidSmsRoleAccessPolicyException"}, {"shape":"InvalidSmsRoleTrustRelationshipException"}, {"shape":"AliasExistsException"}, {"shape":"InternalErrorException"} ] }, "SetUserSettings":{ "name":"SetUserSettings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetUserSettingsRequest"}, "output":{"shape":"SetUserSettingsResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"NotAuthorizedException"}, {"shape":"PasswordResetRequiredException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"}, {"shape":"InternalErrorException"} ], "authtype":"none" }, "SignUp":{ "name":"SignUp", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SignUpRequest"}, "output":{"shape":"SignUpResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"UnexpectedLambdaException"}, {"shape":"UserLambdaValidationException"}, {"shape":"NotAuthorizedException"}, {"shape":"InvalidPasswordException"}, {"shape":"InvalidLambdaResponseException"}, {"shape":"UsernameExistsException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"}, {"shape":"InvalidSmsRoleAccessPolicyException"}, {"shape":"InvalidSmsRoleTrustRelationshipException"}, {"shape":"InvalidEmailRoleAccessPolicyException"}, {"shape":"CodeDeliveryFailureException"} ], "authtype":"none" }, "StartUserImportJob":{ "name":"StartUserImportJob", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartUserImportJobRequest"}, "output":{"shape":"StartUserImportJobResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"}, {"shape":"PreconditionNotMetException"}, {"shape":"NotAuthorizedException"} ] }, "StopUserImportJob":{ "name":"StopUserImportJob", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopUserImportJobRequest"}, "output":{"shape":"StopUserImportJobResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"InternalErrorException"}, {"shape":"PreconditionNotMetException"}, {"shape":"NotAuthorizedException"} ] }, "UpdateDeviceStatus":{ "name":"UpdateDeviceStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateDeviceStatusRequest"}, "output":{"shape":"UpdateDeviceStatusResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"NotAuthorizedException"}, {"shape":"InvalidUserPoolConfigurationException"}, {"shape":"TooManyRequestsException"}, {"shape":"PasswordResetRequiredException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"}, {"shape":"InternalErrorException"} ] }, "UpdateUserAttributes":{ "name":"UpdateUserAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateUserAttributesRequest"}, "output":{"shape":"UpdateUserAttributesResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"CodeMismatchException"}, {"shape":"ExpiredCodeException"}, {"shape":"NotAuthorizedException"}, {"shape":"UnexpectedLambdaException"}, {"shape":"UserLambdaValidationException"}, {"shape":"InvalidLambdaResponseException"}, {"shape":"TooManyRequestsException"}, {"shape":"AliasExistsException"}, {"shape":"InvalidSmsRoleAccessPolicyException"}, {"shape":"InvalidSmsRoleTrustRelationshipException"}, {"shape":"InvalidEmailRoleAccessPolicyException"}, {"shape":"CodeDeliveryFailureException"}, {"shape":"PasswordResetRequiredException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"}, {"shape":"InternalErrorException"} ], "authtype":"none" }, "UpdateUserPool":{ "name":"UpdateUserPool", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateUserPoolRequest"}, "output":{"shape":"UpdateUserPoolResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"ConcurrentModificationException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"UserImportInProgressException"}, {"shape":"InternalErrorException"}, {"shape":"InvalidSmsRoleAccessPolicyException"}, {"shape":"InvalidSmsRoleTrustRelationshipException"}, {"shape":"InvalidEmailRoleAccessPolicyException"} ] }, "UpdateUserPoolClient":{ "name":"UpdateUserPoolClient", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateUserPoolClientRequest"}, "output":{"shape":"UpdateUserPoolClientResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"TooManyRequestsException"}, {"shape":"NotAuthorizedException"}, {"shape":"InternalErrorException"} ] }, "VerifyUserAttribute":{ "name":"VerifyUserAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"VerifyUserAttributeRequest"}, "output":{"shape":"VerifyUserAttributeResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"CodeMismatchException"}, {"shape":"ExpiredCodeException"}, {"shape":"NotAuthorizedException"}, {"shape":"TooManyRequestsException"}, {"shape":"LimitExceededException"}, {"shape":"PasswordResetRequiredException"}, {"shape":"UserNotFoundException"}, {"shape":"UserNotConfirmedException"}, {"shape":"InternalErrorException"} ], "authtype":"none" } }, "shapes":{ "AddCustomAttributesRequest":{ "type":"structure", "required":[ "UserPoolId", "CustomAttributes" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "CustomAttributes":{"shape":"CustomAttributesListType"} } }, "AddCustomAttributesResponse":{ "type":"structure", "members":{ } }, "AdminConfirmSignUpRequest":{ "type":"structure", "required":[ "UserPoolId", "Username" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "Username":{"shape":"UsernameType"} } }, "AdminConfirmSignUpResponse":{ "type":"structure", "members":{ } }, "AdminCreateUserConfigType":{ "type":"structure", "members":{ "AllowAdminCreateUserOnly":{"shape":"BooleanType"}, "UnusedAccountValidityDays":{"shape":"AdminCreateUserUnusedAccountValidityDaysType"}, "InviteMessageTemplate":{"shape":"MessageTemplateType"} } }, "AdminCreateUserRequest":{ "type":"structure", "required":[ "UserPoolId", "Username" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "Username":{"shape":"UsernameType"}, "UserAttributes":{"shape":"AttributeListType"}, "ValidationData":{"shape":"AttributeListType"}, "TemporaryPassword":{"shape":"PasswordType"}, "ForceAliasCreation":{"shape":"ForceAliasCreation"}, "MessageAction":{"shape":"MessageActionType"}, "DesiredDeliveryMediums":{"shape":"DeliveryMediumListType"} } }, "AdminCreateUserResponse":{ "type":"structure", "members":{ "User":{"shape":"UserType"} } }, "AdminCreateUserUnusedAccountValidityDaysType":{ "type":"integer", "max":90, "min":0 }, "AdminDeleteUserAttributesRequest":{ "type":"structure", "required":[ "UserPoolId", "Username", "UserAttributeNames" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "Username":{"shape":"UsernameType"}, "UserAttributeNames":{"shape":"AttributeNameListType"} } }, "AdminDeleteUserAttributesResponse":{ "type":"structure", "members":{ } }, "AdminDeleteUserRequest":{ "type":"structure", "required":[ "UserPoolId", "Username" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "Username":{"shape":"UsernameType"} } }, "AdminDisableUserRequest":{ "type":"structure", "required":[ "UserPoolId", "Username" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "Username":{"shape":"UsernameType"} } }, "AdminDisableUserResponse":{ "type":"structure", "members":{ } }, "AdminEnableUserRequest":{ "type":"structure", "required":[ "UserPoolId", "Username" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "Username":{"shape":"UsernameType"} } }, "AdminEnableUserResponse":{ "type":"structure", "members":{ } }, "AdminForgetDeviceRequest":{ "type":"structure", "required":[ "UserPoolId", "Username", "DeviceKey" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "Username":{"shape":"UsernameType"}, "DeviceKey":{"shape":"DeviceKeyType"} } }, "AdminGetDeviceRequest":{ "type":"structure", "required":[ "DeviceKey", "UserPoolId", "Username" ], "members":{ "DeviceKey":{"shape":"DeviceKeyType"}, "UserPoolId":{"shape":"UserPoolIdType"}, "Username":{"shape":"UsernameType"} } }, "AdminGetDeviceResponse":{ "type":"structure", "required":["Device"], "members":{ "Device":{"shape":"DeviceType"} } }, "AdminGetUserRequest":{ "type":"structure", "required":[ "UserPoolId", "Username" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "Username":{"shape":"UsernameType"} } }, "AdminGetUserResponse":{ "type":"structure", "required":["Username"], "members":{ "Username":{"shape":"UsernameType"}, "UserAttributes":{"shape":"AttributeListType"}, "UserCreateDate":{"shape":"DateType"}, "UserLastModifiedDate":{"shape":"DateType"}, "Enabled":{"shape":"BooleanType"}, "UserStatus":{"shape":"UserStatusType"}, "MFAOptions":{"shape":"MFAOptionListType"} } }, "AdminInitiateAuthRequest":{ "type":"structure", "required":[ "UserPoolId", "ClientId", "AuthFlow" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "ClientId":{"shape":"ClientIdType"}, "AuthFlow":{"shape":"AuthFlowType"}, "AuthParameters":{"shape":"AuthParametersType"}, "ClientMetadata":{"shape":"ClientMetadataType"} } }, "AdminInitiateAuthResponse":{ "type":"structure", "members":{ "ChallengeName":{"shape":"ChallengeNameType"}, "Session":{"shape":"SessionType"}, "ChallengeParameters":{"shape":"ChallengeParametersType"}, "AuthenticationResult":{"shape":"AuthenticationResultType"} } }, "AdminListDevicesRequest":{ "type":"structure", "required":[ "UserPoolId", "Username" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "Username":{"shape":"UsernameType"}, "Limit":{"shape":"QueryLimitType"}, "PaginationToken":{"shape":"SearchPaginationTokenType"} } }, "AdminListDevicesResponse":{ "type":"structure", "members":{ "Devices":{"shape":"DeviceListType"}, "PaginationToken":{"shape":"SearchPaginationTokenType"} } }, "AdminResetUserPasswordRequest":{ "type":"structure", "required":[ "UserPoolId", "Username" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "Username":{"shape":"UsernameType"} } }, "AdminResetUserPasswordResponse":{ "type":"structure", "members":{ } }, "AdminRespondToAuthChallengeRequest":{ "type":"structure", "required":[ "UserPoolId", "ClientId", "ChallengeName" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "ClientId":{"shape":"ClientIdType"}, "ChallengeName":{"shape":"ChallengeNameType"}, "ChallengeResponses":{"shape":"ChallengeResponsesType"}, "Session":{"shape":"SessionType"} } }, "AdminRespondToAuthChallengeResponse":{ "type":"structure", "members":{ "ChallengeName":{"shape":"ChallengeNameType"}, "Session":{"shape":"SessionType"}, "ChallengeParameters":{"shape":"ChallengeParametersType"}, "AuthenticationResult":{"shape":"AuthenticationResultType"} } }, "AdminSetUserSettingsRequest":{ "type":"structure", "required":[ "UserPoolId", "Username", "MFAOptions" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "Username":{"shape":"UsernameType"}, "MFAOptions":{"shape":"MFAOptionListType"} } }, "AdminSetUserSettingsResponse":{ "type":"structure", "members":{ } }, "AdminUpdateDeviceStatusRequest":{ "type":"structure", "required":[ "UserPoolId", "Username", "DeviceKey" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "Username":{"shape":"UsernameType"}, "DeviceKey":{"shape":"DeviceKeyType"}, "DeviceRememberedStatus":{"shape":"DeviceRememberedStatusType"} } }, "AdminUpdateDeviceStatusResponse":{ "type":"structure", "members":{ } }, "AdminUpdateUserAttributesRequest":{ "type":"structure", "required":[ "UserPoolId", "Username", "UserAttributes" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "Username":{"shape":"UsernameType"}, "UserAttributes":{"shape":"AttributeListType"} } }, "AdminUpdateUserAttributesResponse":{ "type":"structure", "members":{ } }, "AdminUserGlobalSignOutRequest":{ "type":"structure", "required":[ "UserPoolId", "Username" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "Username":{"shape":"UsernameType"} } }, "AdminUserGlobalSignOutResponse":{ "type":"structure", "members":{ } }, "AliasAttributeType":{ "type":"string", "enum":[ "phone_number", "email", "preferred_username" ] }, "AliasAttributesListType":{ "type":"list", "member":{"shape":"AliasAttributeType"} }, "AliasExistsException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "ArnType":{ "type":"string", "max":2048, "min":20, "pattern":"arn:[\\w+=/,.@-]+:[\\w+=/,.@-]+:([\\w+=/,.@-]*)?:[0-9]+:[\\w+=/,.@-]+(:[\\w+=/,.@-]+)?(:[\\w+=/,.@-]+)?" }, "AttributeDataType":{ "type":"string", "enum":[ "String", "Number", "DateTime", "Boolean" ] }, "AttributeListType":{ "type":"list", "member":{"shape":"AttributeType"} }, "AttributeNameListType":{ "type":"list", "member":{"shape":"AttributeNameType"} }, "AttributeNameType":{ "type":"string", "max":32, "min":1, "pattern":"[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}]+" }, "AttributeType":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"AttributeNameType"}, "Value":{"shape":"AttributeValueType"} } }, "AttributeValueType":{ "type":"string", "max":2048, "sensitive":true }, "AuthFlowType":{ "type":"string", "enum":[ "USER_SRP_AUTH", "REFRESH_TOKEN_AUTH", "REFRESH_TOKEN", "CUSTOM_AUTH", "ADMIN_NO_SRP_AUTH" ] }, "AuthParametersType":{ "type":"map", "key":{"shape":"StringType"}, "value":{"shape":"StringType"} }, "AuthenticationResultType":{ "type":"structure", "members":{ "AccessToken":{"shape":"TokenModelType"}, "ExpiresIn":{"shape":"IntegerType"}, "TokenType":{"shape":"StringType"}, "RefreshToken":{"shape":"TokenModelType"}, "IdToken":{"shape":"TokenModelType"}, "NewDeviceMetadata":{"shape":"NewDeviceMetadataType"} } }, "BooleanType":{"type":"boolean"}, "ChallengeNameType":{ "type":"string", "enum":[ "SMS_MFA", "PASSWORD_VERIFIER", "CUSTOM_CHALLENGE", "DEVICE_SRP_AUTH", "DEVICE_PASSWORD_VERIFIER", "ADMIN_NO_SRP_AUTH", "NEW_PASSWORD_REQUIRED" ] }, "ChallengeParametersType":{ "type":"map", "key":{"shape":"StringType"}, "value":{"shape":"StringType"} }, "ChallengeResponsesType":{ "type":"map", "key":{"shape":"StringType"}, "value":{"shape":"StringType"} }, "ChangePasswordRequest":{ "type":"structure", "required":[ "PreviousPassword", "ProposedPassword" ], "members":{ "PreviousPassword":{"shape":"PasswordType"}, "ProposedPassword":{"shape":"PasswordType"}, "AccessToken":{"shape":"TokenModelType"} } }, "ChangePasswordResponse":{ "type":"structure", "members":{ } }, "ClientIdType":{ "type":"string", "max":128, "min":1, "pattern":"[\\w+]+", "sensitive":true }, "ClientMetadataType":{ "type":"map", "key":{"shape":"StringType"}, "value":{"shape":"StringType"} }, "ClientNameType":{ "type":"string", "max":128, "min":1, "pattern":"[\\w\\s+=,.@-]+" }, "ClientPermissionListType":{ "type":"list", "member":{"shape":"ClientPermissionType"} }, "ClientPermissionType":{ "type":"string", "max":2048, "min":1 }, "ClientSecretType":{ "type":"string", "max":64, "min":1, "pattern":"[\\w+]+", "sensitive":true }, "CodeDeliveryDetailsListType":{ "type":"list", "member":{"shape":"CodeDeliveryDetailsType"} }, "CodeDeliveryDetailsType":{ "type":"structure", "members":{ "Destination":{"shape":"StringType"}, "DeliveryMedium":{"shape":"DeliveryMediumType"}, "AttributeName":{"shape":"AttributeNameType"} } }, "CodeDeliveryFailureException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "CodeMismatchException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "CompletionMessageType":{ "type":"string", "max":128, "min":1, "pattern":"[\\w]+" }, "ConcurrentModificationException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "ConfirmDeviceRequest":{ "type":"structure", "required":[ "AccessToken", "DeviceKey" ], "members":{ "AccessToken":{"shape":"TokenModelType"}, "DeviceKey":{"shape":"DeviceKeyType"}, "DeviceSecretVerifierConfig":{"shape":"DeviceSecretVerifierConfigType"}, "DeviceName":{"shape":"DeviceNameType"} } }, "ConfirmDeviceResponse":{ "type":"structure", "members":{ "UserConfirmationNecessary":{"shape":"BooleanType"} } }, "ConfirmForgotPasswordRequest":{ "type":"structure", "required":[ "ClientId", "Username", "ConfirmationCode", "Password" ], "members":{ "ClientId":{"shape":"ClientIdType"}, "SecretHash":{"shape":"SecretHashType"}, "Username":{"shape":"UsernameType"}, "ConfirmationCode":{"shape":"ConfirmationCodeType"}, "Password":{"shape":"PasswordType"} } }, "ConfirmForgotPasswordResponse":{ "type":"structure", "members":{ } }, "ConfirmSignUpRequest":{ "type":"structure", "required":[ "ClientId", "Username", "ConfirmationCode" ], "members":{ "ClientId":{"shape":"ClientIdType"}, "SecretHash":{"shape":"SecretHashType"}, "Username":{"shape":"UsernameType"}, "ConfirmationCode":{"shape":"ConfirmationCodeType"}, "ForceAliasCreation":{"shape":"ForceAliasCreation"} } }, "ConfirmSignUpResponse":{ "type":"structure", "members":{ } }, "ConfirmationCodeType":{ "type":"string", "max":2048, "min":1, "pattern":"[\\S]+" }, "CreateUserImportJobRequest":{ "type":"structure", "required":[ "JobName", "UserPoolId", "CloudWatchLogsRoleArn" ], "members":{ "JobName":{"shape":"UserImportJobNameType"}, "UserPoolId":{"shape":"UserPoolIdType"}, "CloudWatchLogsRoleArn":{"shape":"ArnType"} } }, "CreateUserImportJobResponse":{ "type":"structure", "members":{ "UserImportJob":{"shape":"UserImportJobType"} } }, "CreateUserPoolClientRequest":{ "type":"structure", "required":[ "UserPoolId", "ClientName" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "ClientName":{"shape":"ClientNameType"}, "GenerateSecret":{"shape":"GenerateSecret"}, "RefreshTokenValidity":{"shape":"RefreshTokenValidityType"}, "ReadAttributes":{"shape":"ClientPermissionListType"}, "WriteAttributes":{"shape":"ClientPermissionListType"}, "ExplicitAuthFlows":{"shape":"ExplicitAuthFlowsListType"} } }, "CreateUserPoolClientResponse":{ "type":"structure", "members":{ "UserPoolClient":{"shape":"UserPoolClientType"} } }, "CreateUserPoolRequest":{ "type":"structure", "required":["PoolName"], "members":{ "PoolName":{"shape":"UserPoolNameType"}, "Policies":{"shape":"UserPoolPolicyType"}, "LambdaConfig":{"shape":"LambdaConfigType"}, "AutoVerifiedAttributes":{"shape":"VerifiedAttributesListType"}, "AliasAttributes":{"shape":"AliasAttributesListType"}, "SmsVerificationMessage":{"shape":"SmsVerificationMessageType"}, "EmailVerificationMessage":{"shape":"EmailVerificationMessageType"}, "EmailVerificationSubject":{"shape":"EmailVerificationSubjectType"}, "SmsAuthenticationMessage":{"shape":"SmsVerificationMessageType"}, "MfaConfiguration":{"shape":"UserPoolMfaType"}, "DeviceConfiguration":{"shape":"DeviceConfigurationType"}, "EmailConfiguration":{"shape":"EmailConfigurationType"}, "SmsConfiguration":{"shape":"SmsConfigurationType"}, "AdminCreateUserConfig":{"shape":"AdminCreateUserConfigType"} } }, "CreateUserPoolResponse":{ "type":"structure", "members":{ "UserPool":{"shape":"UserPoolType"} } }, "CustomAttributeNameType":{ "type":"string", "max":20, "min":1, "pattern":"[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}]+" }, "CustomAttributesListType":{ "type":"list", "member":{"shape":"SchemaAttributeType"}, "max":25, "min":1 }, "DateType":{"type":"timestamp"}, "DeleteUserAttributesRequest":{ "type":"structure", "required":["UserAttributeNames"], "members":{ "UserAttributeNames":{"shape":"AttributeNameListType"}, "AccessToken":{"shape":"TokenModelType"} } }, "DeleteUserAttributesResponse":{ "type":"structure", "members":{ } }, "DeleteUserPoolClientRequest":{ "type":"structure", "required":[ "UserPoolId", "ClientId" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "ClientId":{"shape":"ClientIdType"} } }, "DeleteUserPoolRequest":{ "type":"structure", "required":["UserPoolId"], "members":{ "UserPoolId":{"shape":"UserPoolIdType"} } }, "DeleteUserRequest":{ "type":"structure", "members":{ "AccessToken":{"shape":"TokenModelType"} } }, "DeliveryMediumListType":{ "type":"list", "member":{"shape":"DeliveryMediumType"} }, "DeliveryMediumType":{ "type":"string", "enum":[ "SMS", "EMAIL" ] }, "DescribeUserImportJobRequest":{ "type":"structure", "required":[ "UserPoolId", "JobId" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "JobId":{"shape":"UserImportJobIdType"} } }, "DescribeUserImportJobResponse":{ "type":"structure", "members":{ "UserImportJob":{"shape":"UserImportJobType"} } }, "DescribeUserPoolClientRequest":{ "type":"structure", "required":[ "UserPoolId", "ClientId" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "ClientId":{"shape":"ClientIdType"} } }, "DescribeUserPoolClientResponse":{ "type":"structure", "members":{ "UserPoolClient":{"shape":"UserPoolClientType"} } }, "DescribeUserPoolRequest":{ "type":"structure", "required":["UserPoolId"], "members":{ "UserPoolId":{"shape":"UserPoolIdType"} } }, "DescribeUserPoolResponse":{ "type":"structure", "members":{ "UserPool":{"shape":"UserPoolType"} } }, "DeviceConfigurationType":{ "type":"structure", "members":{ "ChallengeRequiredOnNewDevice":{"shape":"BooleanType"}, "DeviceOnlyRememberedOnUserPrompt":{"shape":"BooleanType"} } }, "DeviceKeyType":{ "type":"string", "max":55, "min":1, "pattern":"[\\w-]+_[0-9a-f-]+" }, "DeviceListType":{ "type":"list", "member":{"shape":"DeviceType"} }, "DeviceNameType":{ "type":"string", "max":1024, "min":1 }, "DeviceRememberedStatusType":{ "type":"string", "enum":[ "remembered", "not_remembered" ] }, "DeviceSecretVerifierConfigType":{ "type":"structure", "members":{ "PasswordVerifier":{"shape":"StringType"}, "Salt":{"shape":"StringType"} } }, "DeviceType":{ "type":"structure", "members":{ "DeviceKey":{"shape":"DeviceKeyType"}, "DeviceAttributes":{"shape":"AttributeListType"}, "DeviceCreateDate":{"shape":"DateType"}, "DeviceLastModifiedDate":{"shape":"DateType"}, "DeviceLastAuthenticatedDate":{"shape":"DateType"} } }, "EmailAddressType":{ "type":"string", "pattern":"[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}]+@[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}]+" }, "EmailConfigurationType":{ "type":"structure", "members":{ "SourceArn":{"shape":"ArnType"}, "ReplyToEmailAddress":{"shape":"EmailAddressType"} } }, "EmailVerificationMessageType":{ "type":"string", "max":2048, "min":6, "pattern":"[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}\\s*]*\\{####\\}[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}\\s*]*" }, "EmailVerificationSubjectType":{ "type":"string", "max":140, "min":1, "pattern":"[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}\\s]+" }, "ExpiredCodeException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "ExplicitAuthFlowsListType":{ "type":"list", "member":{"shape":"ExplicitAuthFlowsType"} }, "ExplicitAuthFlowsType":{ "type":"string", "enum":[ "ADMIN_NO_SRP_AUTH", "CUSTOM_AUTH_FLOW_ONLY" ] }, "ForceAliasCreation":{"type":"boolean"}, "ForgetDeviceRequest":{ "type":"structure", "required":["DeviceKey"], "members":{ "AccessToken":{"shape":"TokenModelType"}, "DeviceKey":{"shape":"DeviceKeyType"} } }, "ForgotPasswordRequest":{ "type":"structure", "required":[ "ClientId", "Username" ], "members":{ "ClientId":{"shape":"ClientIdType"}, "SecretHash":{"shape":"SecretHashType"}, "Username":{"shape":"UsernameType"} } }, "ForgotPasswordResponse":{ "type":"structure", "members":{ "CodeDeliveryDetails":{"shape":"CodeDeliveryDetailsType"} } }, "GenerateSecret":{"type":"boolean"}, "GetCSVHeaderRequest":{ "type":"structure", "required":["UserPoolId"], "members":{ "UserPoolId":{"shape":"UserPoolIdType"} } }, "GetCSVHeaderResponse":{ "type":"structure", "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "CSVHeader":{"shape":"ListOfStringTypes"} } }, "GetDeviceRequest":{ "type":"structure", "required":["DeviceKey"], "members":{ "DeviceKey":{"shape":"DeviceKeyType"}, "AccessToken":{"shape":"TokenModelType"} } }, "GetDeviceResponse":{ "type":"structure", "required":["Device"], "members":{ "Device":{"shape":"DeviceType"} } }, "GetUserAttributeVerificationCodeRequest":{ "type":"structure", "required":["AttributeName"], "members":{ "AccessToken":{"shape":"TokenModelType"}, "AttributeName":{"shape":"AttributeNameType"} } }, "GetUserAttributeVerificationCodeResponse":{ "type":"structure", "members":{ "CodeDeliveryDetails":{"shape":"CodeDeliveryDetailsType"} } }, "GetUserRequest":{ "type":"structure", "members":{ "AccessToken":{"shape":"TokenModelType"} } }, "GetUserResponse":{ "type":"structure", "required":[ "Username", "UserAttributes" ], "members":{ "Username":{"shape":"UsernameType"}, "UserAttributes":{"shape":"AttributeListType"}, "MFAOptions":{"shape":"MFAOptionListType"} } }, "GlobalSignOutRequest":{ "type":"structure", "members":{ "AccessToken":{"shape":"TokenModelType"} } }, "GlobalSignOutResponse":{ "type":"structure", "members":{ } }, "InitiateAuthRequest":{ "type":"structure", "required":[ "AuthFlow", "ClientId" ], "members":{ "AuthFlow":{"shape":"AuthFlowType"}, "AuthParameters":{"shape":"AuthParametersType"}, "ClientMetadata":{"shape":"ClientMetadataType"}, "ClientId":{"shape":"ClientIdType"} } }, "InitiateAuthResponse":{ "type":"structure", "members":{ "ChallengeName":{"shape":"ChallengeNameType"}, "Session":{"shape":"SessionType"}, "ChallengeParameters":{"shape":"ChallengeParametersType"}, "AuthenticationResult":{"shape":"AuthenticationResultType"} } }, "IntegerType":{"type":"integer"}, "InternalErrorException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true, "fault":true }, "InvalidEmailRoleAccessPolicyException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "InvalidLambdaResponseException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "InvalidParameterException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "InvalidPasswordException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "InvalidSmsRoleAccessPolicyException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "InvalidSmsRoleTrustRelationshipException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "InvalidUserPoolConfigurationException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "LambdaConfigType":{ "type":"structure", "members":{ "PreSignUp":{"shape":"ArnType"}, "CustomMessage":{"shape":"ArnType"}, "PostConfirmation":{"shape":"ArnType"}, "PreAuthentication":{"shape":"ArnType"}, "PostAuthentication":{"shape":"ArnType"}, "DefineAuthChallenge":{"shape":"ArnType"}, "CreateAuthChallenge":{"shape":"ArnType"}, "VerifyAuthChallengeResponse":{"shape":"ArnType"} } }, "LimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "ListDevicesRequest":{ "type":"structure", "required":["AccessToken"], "members":{ "AccessToken":{"shape":"TokenModelType"}, "Limit":{"shape":"QueryLimitType"}, "PaginationToken":{"shape":"SearchPaginationTokenType"} } }, "ListDevicesResponse":{ "type":"structure", "members":{ "Devices":{"shape":"DeviceListType"}, "PaginationToken":{"shape":"SearchPaginationTokenType"} } }, "ListOfStringTypes":{ "type":"list", "member":{"shape":"StringType"} }, "ListUserImportJobsRequest":{ "type":"structure", "required":[ "UserPoolId", "MaxResults" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "MaxResults":{"shape":"PoolQueryLimitType"}, "PaginationToken":{"shape":"PaginationKeyType"} } }, "ListUserImportJobsResponse":{ "type":"structure", "members":{ "UserImportJobs":{"shape":"UserImportJobsListType"}, "PaginationToken":{"shape":"PaginationKeyType"} } }, "ListUserPoolClientsRequest":{ "type":"structure", "required":["UserPoolId"], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "MaxResults":{"shape":"QueryLimit"}, "NextToken":{"shape":"PaginationKey"} } }, "ListUserPoolClientsResponse":{ "type":"structure", "members":{ "UserPoolClients":{"shape":"UserPoolClientListType"}, "NextToken":{"shape":"PaginationKey"} } }, "ListUserPoolsRequest":{ "type":"structure", "required":["MaxResults"], "members":{ "NextToken":{"shape":"PaginationKeyType"}, "MaxResults":{"shape":"PoolQueryLimitType"} } }, "ListUserPoolsResponse":{ "type":"structure", "members":{ "UserPools":{"shape":"UserPoolListType"}, "NextToken":{"shape":"PaginationKeyType"} } }, "ListUsersRequest":{ "type":"structure", "required":["UserPoolId"], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "AttributesToGet":{"shape":"SearchedAttributeNamesListType"}, "Limit":{"shape":"QueryLimitType"}, "PaginationToken":{"shape":"SearchPaginationTokenType"}, "Filter":{"shape":"UserFilterType"} } }, "ListUsersResponse":{ "type":"structure", "members":{ "Users":{"shape":"UsersListType"}, "PaginationToken":{"shape":"SearchPaginationTokenType"} } }, "LongType":{"type":"long"}, "MFAMethodNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "MFAOptionListType":{ "type":"list", "member":{"shape":"MFAOptionType"} }, "MFAOptionType":{ "type":"structure", "members":{ "DeliveryMedium":{"shape":"DeliveryMediumType"}, "AttributeName":{"shape":"AttributeNameType"} } }, "MessageActionType":{ "type":"string", "enum":[ "RESEND", "SUPPRESS" ] }, "MessageTemplateType":{ "type":"structure", "members":{ "SMSMessage":{"shape":"SmsVerificationMessageType"}, "EmailMessage":{"shape":"EmailVerificationMessageType"}, "EmailSubject":{"shape":"EmailVerificationSubjectType"} } }, "MessageType":{"type":"string"}, "NewDeviceMetadataType":{ "type":"structure", "members":{ "DeviceKey":{"shape":"DeviceKeyType"}, "DeviceGroupKey":{"shape":"StringType"} } }, "NotAuthorizedException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "NumberAttributeConstraintsType":{ "type":"structure", "members":{ "MinValue":{"shape":"StringType"}, "MaxValue":{"shape":"StringType"} } }, "PaginationKey":{ "type":"string", "min":1, "pattern":"[\\S]+" }, "PaginationKeyType":{ "type":"string", "min":1, "pattern":"[\\S]+" }, "PasswordPolicyMinLengthType":{ "type":"integer", "max":99, "min":6 }, "PasswordPolicyType":{ "type":"structure", "members":{ "MinimumLength":{"shape":"PasswordPolicyMinLengthType"}, "RequireUppercase":{"shape":"BooleanType"}, "RequireLowercase":{"shape":"BooleanType"}, "RequireNumbers":{"shape":"BooleanType"}, "RequireSymbols":{"shape":"BooleanType"} } }, "PasswordResetRequiredException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "PasswordType":{ "type":"string", "max":256, "min":6, "pattern":"[\\S]+", "sensitive":true }, "PoolQueryLimitType":{ "type":"integer", "max":60, "min":1 }, "PreSignedUrlType":{ "type":"string", "max":2048, "min":0 }, "PreconditionNotMetException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "QueryLimit":{ "type":"integer", "max":60, "min":1 }, "QueryLimitType":{ "type":"integer", "max":60, "min":0 }, "RefreshTokenValidityType":{ "type":"integer", "max":3650, "min":0 }, "ResendConfirmationCodeRequest":{ "type":"structure", "required":[ "ClientId", "Username" ], "members":{ "ClientId":{"shape":"ClientIdType"}, "SecretHash":{"shape":"SecretHashType"}, "Username":{"shape":"UsernameType"} } }, "ResendConfirmationCodeResponse":{ "type":"structure", "members":{ "CodeDeliveryDetails":{"shape":"CodeDeliveryDetailsType"} } }, "ResourceNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "RespondToAuthChallengeRequest":{ "type":"structure", "required":[ "ClientId", "ChallengeName" ], "members":{ "ClientId":{"shape":"ClientIdType"}, "ChallengeName":{"shape":"ChallengeNameType"}, "Session":{"shape":"SessionType"}, "ChallengeResponses":{"shape":"ChallengeResponsesType"} } }, "RespondToAuthChallengeResponse":{ "type":"structure", "members":{ "ChallengeName":{"shape":"ChallengeNameType"}, "Session":{"shape":"SessionType"}, "ChallengeParameters":{"shape":"ChallengeParametersType"}, "AuthenticationResult":{"shape":"AuthenticationResultType"} } }, "SchemaAttributeType":{ "type":"structure", "members":{ "Name":{"shape":"CustomAttributeNameType"}, "AttributeDataType":{"shape":"AttributeDataType"}, "DeveloperOnlyAttribute":{"shape":"BooleanType"}, "Mutable":{"shape":"BooleanType"}, "Required":{"shape":"BooleanType"}, "NumberAttributeConstraints":{"shape":"NumberAttributeConstraintsType"}, "StringAttributeConstraints":{"shape":"StringAttributeConstraintsType"} } }, "SchemaAttributesListType":{ "type":"list", "member":{"shape":"SchemaAttributeType"}, "max":50, "min":1 }, "SearchPaginationTokenType":{ "type":"string", "min":1, "pattern":"[\\S]+" }, "SearchedAttributeNamesListType":{ "type":"list", "member":{"shape":"AttributeNameType"} }, "SecretHashType":{ "type":"string", "max":128, "min":1, "pattern":"[\\w+=/]+", "sensitive":true }, "SessionType":{ "type":"string", "max":2048, "min":20 }, "SetUserSettingsRequest":{ "type":"structure", "required":[ "AccessToken", "MFAOptions" ], "members":{ "AccessToken":{"shape":"TokenModelType"}, "MFAOptions":{"shape":"MFAOptionListType"} } }, "SetUserSettingsResponse":{ "type":"structure", "members":{ } }, "SignUpRequest":{ "type":"structure", "required":[ "ClientId", "Username", "Password" ], "members":{ "ClientId":{"shape":"ClientIdType"}, "SecretHash":{"shape":"SecretHashType"}, "Username":{"shape":"UsernameType"}, "Password":{"shape":"PasswordType"}, "UserAttributes":{"shape":"AttributeListType"}, "ValidationData":{"shape":"AttributeListType"} } }, "SignUpResponse":{ "type":"structure", "members":{ "UserConfirmed":{"shape":"BooleanType"}, "CodeDeliveryDetails":{"shape":"CodeDeliveryDetailsType"} } }, "SmsConfigurationType":{ "type":"structure", "members":{ "SnsCallerArn":{"shape":"ArnType"}, "ExternalId":{"shape":"StringType"} } }, "SmsVerificationMessageType":{ "type":"string", "max":140, "min":6, "pattern":".*\\{####\\}.*" }, "StartUserImportJobRequest":{ "type":"structure", "required":[ "UserPoolId", "JobId" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "JobId":{"shape":"UserImportJobIdType"} } }, "StartUserImportJobResponse":{ "type":"structure", "members":{ "UserImportJob":{"shape":"UserImportJobType"} } }, "StatusType":{ "type":"string", "enum":[ "Enabled", "Disabled" ] }, "StopUserImportJobRequest":{ "type":"structure", "required":[ "UserPoolId", "JobId" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "JobId":{"shape":"UserImportJobIdType"} } }, "StopUserImportJobResponse":{ "type":"structure", "members":{ "UserImportJob":{"shape":"UserImportJobType"} } }, "StringAttributeConstraintsType":{ "type":"structure", "members":{ "MinLength":{"shape":"StringType"}, "MaxLength":{"shape":"StringType"} } }, "StringType":{"type":"string"}, "TokenModelType":{ "type":"string", "pattern":"[A-Za-z0-9-_=.]+", "sensitive":true }, "TooManyFailedAttemptsException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "TooManyRequestsException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "UnexpectedLambdaException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "UnsupportedUserStateException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "UpdateDeviceStatusRequest":{ "type":"structure", "required":[ "AccessToken", "DeviceKey" ], "members":{ "AccessToken":{"shape":"TokenModelType"}, "DeviceKey":{"shape":"DeviceKeyType"}, "DeviceRememberedStatus":{"shape":"DeviceRememberedStatusType"} } }, "UpdateDeviceStatusResponse":{ "type":"structure", "members":{ } }, "UpdateUserAttributesRequest":{ "type":"structure", "required":["UserAttributes"], "members":{ "UserAttributes":{"shape":"AttributeListType"}, "AccessToken":{"shape":"TokenModelType"} } }, "UpdateUserAttributesResponse":{ "type":"structure", "members":{ "CodeDeliveryDetailsList":{"shape":"CodeDeliveryDetailsListType"} } }, "UpdateUserPoolClientRequest":{ "type":"structure", "required":[ "UserPoolId", "ClientId" ], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "ClientId":{"shape":"ClientIdType"}, "ClientName":{"shape":"ClientNameType"}, "RefreshTokenValidity":{"shape":"RefreshTokenValidityType"}, "ReadAttributes":{"shape":"ClientPermissionListType"}, "WriteAttributes":{"shape":"ClientPermissionListType"}, "ExplicitAuthFlows":{"shape":"ExplicitAuthFlowsListType"} } }, "UpdateUserPoolClientResponse":{ "type":"structure", "members":{ "UserPoolClient":{"shape":"UserPoolClientType"} } }, "UpdateUserPoolRequest":{ "type":"structure", "required":["UserPoolId"], "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "Policies":{"shape":"UserPoolPolicyType"}, "LambdaConfig":{"shape":"LambdaConfigType"}, "AutoVerifiedAttributes":{"shape":"VerifiedAttributesListType"}, "SmsVerificationMessage":{"shape":"SmsVerificationMessageType"}, "EmailVerificationMessage":{"shape":"EmailVerificationMessageType"}, "EmailVerificationSubject":{"shape":"EmailVerificationSubjectType"}, "SmsAuthenticationMessage":{"shape":"SmsVerificationMessageType"}, "MfaConfiguration":{"shape":"UserPoolMfaType"}, "DeviceConfiguration":{"shape":"DeviceConfigurationType"}, "EmailConfiguration":{"shape":"EmailConfigurationType"}, "SmsConfiguration":{"shape":"SmsConfigurationType"}, "AdminCreateUserConfig":{"shape":"AdminCreateUserConfigType"} } }, "UpdateUserPoolResponse":{ "type":"structure", "members":{ } }, "UserFilterType":{ "type":"string", "max":256 }, "UserImportInProgressException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "UserImportJobIdType":{ "type":"string", "max":55, "min":1, "pattern":"import-[0-9a-zA-Z-]+" }, "UserImportJobNameType":{ "type":"string", "max":128, "min":1, "pattern":"[\\w\\s+=,.@-]+" }, "UserImportJobStatusType":{ "type":"string", "enum":[ "Created", "Pending", "InProgress", "Stopping", "Expired", "Stopped", "Failed", "Succeeded" ] }, "UserImportJobType":{ "type":"structure", "members":{ "JobName":{"shape":"UserImportJobNameType"}, "JobId":{"shape":"UserImportJobIdType"}, "UserPoolId":{"shape":"UserPoolIdType"}, "PreSignedUrl":{"shape":"PreSignedUrlType"}, "CreationDate":{"shape":"DateType"}, "StartDate":{"shape":"DateType"}, "CompletionDate":{"shape":"DateType"}, "Status":{"shape":"UserImportJobStatusType"}, "CloudWatchLogsRoleArn":{"shape":"ArnType"}, "ImportedUsers":{"shape":"LongType"}, "SkippedUsers":{"shape":"LongType"}, "FailedUsers":{"shape":"LongType"}, "CompletionMessage":{"shape":"CompletionMessageType"} } }, "UserImportJobsListType":{ "type":"list", "member":{"shape":"UserImportJobType"}, "max":50, "min":1 }, "UserLambdaValidationException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "UserNotConfirmedException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "UserNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "UserPoolClientDescription":{ "type":"structure", "members":{ "ClientId":{"shape":"ClientIdType"}, "UserPoolId":{"shape":"UserPoolIdType"}, "ClientName":{"shape":"ClientNameType"} } }, "UserPoolClientListType":{ "type":"list", "member":{"shape":"UserPoolClientDescription"} }, "UserPoolClientType":{ "type":"structure", "members":{ "UserPoolId":{"shape":"UserPoolIdType"}, "ClientName":{"shape":"ClientNameType"}, "ClientId":{"shape":"ClientIdType"}, "ClientSecret":{"shape":"ClientSecretType"}, "LastModifiedDate":{"shape":"DateType"}, "CreationDate":{"shape":"DateType"}, "RefreshTokenValidity":{"shape":"RefreshTokenValidityType"}, "ReadAttributes":{"shape":"ClientPermissionListType"}, "WriteAttributes":{"shape":"ClientPermissionListType"}, "ExplicitAuthFlows":{"shape":"ExplicitAuthFlowsListType"} } }, "UserPoolDescriptionType":{ "type":"structure", "members":{ "Id":{"shape":"UserPoolIdType"}, "Name":{"shape":"UserPoolNameType"}, "LambdaConfig":{"shape":"LambdaConfigType"}, "Status":{"shape":"StatusType"}, "LastModifiedDate":{"shape":"DateType"}, "CreationDate":{"shape":"DateType"} } }, "UserPoolIdType":{ "type":"string", "max":55, "min":1, "pattern":"[\\w-]+_[0-9a-zA-Z]+" }, "UserPoolListType":{ "type":"list", "member":{"shape":"UserPoolDescriptionType"} }, "UserPoolMfaType":{ "type":"string", "enum":[ "OFF", "ON", "OPTIONAL" ] }, "UserPoolNameType":{ "type":"string", "max":128, "min":1, "pattern":"[\\w\\s+=,.@-]+" }, "UserPoolPolicyType":{ "type":"structure", "members":{ "PasswordPolicy":{"shape":"PasswordPolicyType"} } }, "UserPoolType":{ "type":"structure", "members":{ "Id":{"shape":"UserPoolIdType"}, "Name":{"shape":"UserPoolNameType"}, "Policies":{"shape":"UserPoolPolicyType"}, "LambdaConfig":{"shape":"LambdaConfigType"}, "Status":{"shape":"StatusType"}, "LastModifiedDate":{"shape":"DateType"}, "CreationDate":{"shape":"DateType"}, "SchemaAttributes":{"shape":"SchemaAttributesListType"}, "AutoVerifiedAttributes":{"shape":"VerifiedAttributesListType"}, "AliasAttributes":{"shape":"AliasAttributesListType"}, "SmsVerificationMessage":{"shape":"SmsVerificationMessageType"}, "EmailVerificationMessage":{"shape":"EmailVerificationMessageType"}, "EmailVerificationSubject":{"shape":"EmailVerificationSubjectType"}, "SmsAuthenticationMessage":{"shape":"SmsVerificationMessageType"}, "MfaConfiguration":{"shape":"UserPoolMfaType"}, "DeviceConfiguration":{"shape":"DeviceConfigurationType"}, "EstimatedNumberOfUsers":{"shape":"IntegerType"}, "EmailConfiguration":{"shape":"EmailConfigurationType"}, "SmsConfiguration":{"shape":"SmsConfigurationType"}, "SmsConfigurationFailure":{"shape":"StringType"}, "EmailConfigurationFailure":{"shape":"StringType"}, "AdminCreateUserConfig":{"shape":"AdminCreateUserConfigType"} } }, "UserStatusType":{ "type":"string", "enum":[ "UNCONFIRMED", "CONFIRMED", "ARCHIVED", "COMPROMISED", "UNKNOWN", "RESET_REQUIRED", "FORCE_CHANGE_PASSWORD" ] }, "UserType":{ "type":"structure", "members":{ "Username":{"shape":"UsernameType"}, "Attributes":{"shape":"AttributeListType"}, "UserCreateDate":{"shape":"DateType"}, "UserLastModifiedDate":{"shape":"DateType"}, "Enabled":{"shape":"BooleanType"}, "UserStatus":{"shape":"UserStatusType"}, "MFAOptions":{"shape":"MFAOptionListType"} } }, "UsernameExistsException":{ "type":"structure", "members":{ "message":{"shape":"MessageType"} }, "exception":true }, "UsernameType":{ "type":"string", "max":128, "min":1, "pattern":"[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}]+", "sensitive":true }, "UsersListType":{ "type":"list", "member":{"shape":"UserType"} }, "VerifiedAttributeType":{ "type":"string", "enum":[ "phone_number", "email" ] }, "VerifiedAttributesListType":{ "type":"list", "member":{"shape":"VerifiedAttributeType"} }, "VerifyUserAttributeRequest":{ "type":"structure", "required":[ "AttributeName", "Code" ], "members":{ "AccessToken":{"shape":"TokenModelType"}, "AttributeName":{"shape":"AttributeNameType"}, "Code":{"shape":"ConfirmationCodeType"} } }, "VerifyUserAttributeResponse":{ "type":"structure", "members":{ } } } } aws-sdk-go-1.4.22/models/apis/cognito-idp/2016-04-18/docs-2.json000066400000000000000000002570671300374646400232600ustar00rootroot00000000000000{ "version": "2.0", "service": "

        Using the Amazon Cognito Your User Pools API, you can create a user pool to manage directories and users. You can authenticate a user to obtain tokens related to user identity and access policies.

        This API reference provides information about user pools in Amazon Cognito Your User Pools.

        For more information, see the Amazon Cognito Documentation.

        ", "operations": { "AddCustomAttributes": "

        Adds additional user attributes to the user pool schema.

        ", "AdminConfirmSignUp": "

        Confirms user registration as an admin without using a confirmation code. Works on any user.

        ", "AdminCreateUser": "

        Creates a new user in the specified user pool and sends a welcome message via email or phone (SMS). This message is based on a template that you configured in your call to CreateUserPool or UpdateUserPool. This template includes your custom sign-up instructions and placeholders for user name and temporary password.

        Requires developer credentials.

        ", "AdminDeleteUser": "

        Deletes a user as an administrator. Works on any user.

        ", "AdminDeleteUserAttributes": "

        Deletes the user attributes in a user pool as an administrator. Works on any user.

        ", "AdminDisableUser": "

        Disables the specified user as an administrator. Works on any user.

        ", "AdminEnableUser": "

        Enables the specified user as an administrator. Works on any user.

        ", "AdminForgetDevice": "

        Forgets the device, as an administrator.

        ", "AdminGetDevice": "

        Gets the device, as an administrator.

        ", "AdminGetUser": "

        Gets the specified user by user name in a user pool as an administrator. Works on any user.

        ", "AdminInitiateAuth": "

        Initiates the authentication flow, as an administrator.

        ", "AdminListDevices": "

        Lists devices, as an administrator.

        ", "AdminResetUserPassword": "

        Resets the specified user's password in a user pool as an administrator. Works on any user.

        When a developer calls this API, the current password is invalidated, so it must be changed. If a user tries to sign in after the API is called, the app will get a PasswordResetRequiredException exception back and should direct the user down the flow to reset the password, which is the same as the forgot password flow. In addition, if the user pool has phone verification selected and a verified phone number exists for the user, or if email verification is selected and a verified email exists for the user, calling this API will also result in sending a message to the end user with the code to change their password.

        ", "AdminRespondToAuthChallenge": "

        Responds to an authentication challenge, as an administrator.

        ", "AdminSetUserSettings": "

        Sets all the user settings for a specified user name. Works on any user.

        ", "AdminUpdateDeviceStatus": "

        Updates the device status as an administrator.

        ", "AdminUpdateUserAttributes": "

        Updates the specified user's attributes, including developer attributes, as an administrator. Works on any user.

        ", "AdminUserGlobalSignOut": "

        Signs out users from all devices, as an administrator.

        ", "ChangePassword": "

        Changes the password for a specified user in a user pool.

        ", "ConfirmDevice": "

        Confirms tracking of the device. This API call is the call that beings device tracking.

        ", "ConfirmForgotPassword": "

        Allows a user to enter a code provided when they reset their password to update their password.

        ", "ConfirmSignUp": "

        Confirms registration of a user and handles the existing alias from a previous user.

        ", "CreateUserImportJob": "

        Creates the user import job.

        ", "CreateUserPool": "

        Creates a new Amazon Cognito user pool and sets the password policy for the pool.

        ", "CreateUserPoolClient": "

        Creates the user pool client.

        ", "DeleteUser": "

        Allows a user to delete one's self.

        ", "DeleteUserAttributes": "

        Deletes the attributes for a user.

        ", "DeleteUserPool": "

        Deletes the specified Amazon Cognito user pool.

        ", "DeleteUserPoolClient": "

        Allows the developer to delete the user pool client.

        ", "DescribeUserImportJob": "

        Describes the user import job.

        ", "DescribeUserPool": "

        Returns the configuration information and metadata of the specified user pool.

        ", "DescribeUserPoolClient": "

        Client method for returning the configuration information and metadata of the specified user pool client.

        ", "ForgetDevice": "

        Forgets the specified device.

        ", "ForgotPassword": "

        Retrieves the password for the specified client ID or username.

        ", "GetCSVHeader": "

        Gets the header information for the .csv file to be used as input for the user import job.

        ", "GetDevice": "

        Gets the device.

        ", "GetUser": "

        Gets the user attributes and metadata for a user.

        ", "GetUserAttributeVerificationCode": "

        Gets the user attribute verification code for the specified attribute name.

        ", "GlobalSignOut": "

        Signs out users from all devices.

        ", "InitiateAuth": "

        Initiates the authentication flow.

        ", "ListDevices": "

        Lists the devices.

        ", "ListUserImportJobs": "

        Lists the user import jobs.

        ", "ListUserPoolClients": "

        Lists the clients that have been created for the specified user pool.

        ", "ListUserPools": "

        Lists the user pools associated with an AWS account.

        ", "ListUsers": "

        Lists the users in the Amazon Cognito user pool.

        ", "ResendConfirmationCode": "

        Resends the confirmation (for confirmation of registration) to a specific user in the user pool.

        ", "RespondToAuthChallenge": "

        Responds to the authentication challenge.

        ", "SetUserSettings": "

        Sets the user settings like multi-factor authentication (MFA). If MFA is to be removed for a particular attribute pass the attribute with code delivery as null. If null list is passed, all MFA options are removed.

        ", "SignUp": "

        Registers the user in the specified user pool and creates a user name, password, and user attributes.

        ", "StartUserImportJob": "

        Starts the user import.

        ", "StopUserImportJob": "

        Stops the user import job.

        ", "UpdateDeviceStatus": "

        Updates the device status.

        ", "UpdateUserAttributes": "

        Allows a user to update a specific attribute (one at a time).

        ", "UpdateUserPool": "

        Updates the specified user pool with the specified attributes.

        ", "UpdateUserPoolClient": "

        Allows the developer to update the specified user pool client and password policy.

        ", "VerifyUserAttribute": "

        Verifies the specified user attributes in the user pool.

        " }, "shapes": { "AddCustomAttributesRequest": { "base": "

        Represents the request to add custom attributes.

        ", "refs": { } }, "AddCustomAttributesResponse": { "base": "

        Represents the response from the server for the request to add custom attributes.

        ", "refs": { } }, "AdminConfirmSignUpRequest": { "base": "

        Represents the request to confirm user registration.

        ", "refs": { } }, "AdminConfirmSignUpResponse": { "base": "

        Represents the response from the server for the request to confirm registration.

        ", "refs": { } }, "AdminCreateUserConfigType": { "base": "

        The type of configuration for creating a new user profile.

        ", "refs": { "CreateUserPoolRequest$AdminCreateUserConfig": "

        The configuration for AdminCreateUser requests.

        ", "UpdateUserPoolRequest$AdminCreateUserConfig": "

        The configuration for AdminCreateUser requests.

        ", "UserPoolType$AdminCreateUserConfig": "

        The configuration for AdminCreateUser requests.

        " } }, "AdminCreateUserRequest": { "base": "

        Represents the request to create a user in the specified user pool.

        ", "refs": { } }, "AdminCreateUserResponse": { "base": "

        Represents the response from the server to the request to create the user.

        ", "refs": { } }, "AdminCreateUserUnusedAccountValidityDaysType": { "base": null, "refs": { "AdminCreateUserConfigType$UnusedAccountValidityDays": "

        The user account expiration limit, in days, after which the account is no longer usable. To reset the account after that time limit, you must call AdminCreateUser again, specifying \"RESEND\" for the MessageAction parameter.

        " } }, "AdminDeleteUserAttributesRequest": { "base": "

        Represents the request to delete user attributes as an administrator.

        ", "refs": { } }, "AdminDeleteUserAttributesResponse": { "base": "

        Represents the response received from the server for a request to delete user attributes.

        ", "refs": { } }, "AdminDeleteUserRequest": { "base": "

        Represents the request to delete a user as an administrator.

        ", "refs": { } }, "AdminDisableUserRequest": { "base": "

        Represents the request to disable any user as an administrator.

        ", "refs": { } }, "AdminDisableUserResponse": { "base": "

        Represents the response received from the server to disable the user as an administrator.

        ", "refs": { } }, "AdminEnableUserRequest": { "base": "

        Represents the request that enables the user as an administrator.

        ", "refs": { } }, "AdminEnableUserResponse": { "base": "

        Represents the response from the server for the request to enable a user as an administrator.

        ", "refs": { } }, "AdminForgetDeviceRequest": { "base": "

        Sends the forgot device request, as an administrator.

        ", "refs": { } }, "AdminGetDeviceRequest": { "base": "

        Represents the request to get the device, as an administrator.

        ", "refs": { } }, "AdminGetDeviceResponse": { "base": "

        Gets the device response, as an administrator.

        ", "refs": { } }, "AdminGetUserRequest": { "base": "

        Represents the request to get the specified user as an administrator.

        ", "refs": { } }, "AdminGetUserResponse": { "base": "

        Represents the response from the server from the request to get the specified user as an administrator.

        ", "refs": { } }, "AdminInitiateAuthRequest": { "base": "

        Initiates the authorization request, as an administrator.

        ", "refs": { } }, "AdminInitiateAuthResponse": { "base": "

        Initiates the authentication response, as an administrator.

        ", "refs": { } }, "AdminListDevicesRequest": { "base": "

        Represents the request to list devices, as an administrator.

        ", "refs": { } }, "AdminListDevicesResponse": { "base": "

        Lists the device's response, as an administrator.

        ", "refs": { } }, "AdminResetUserPasswordRequest": { "base": "

        Represents the request to reset a user's password as an administrator.

        ", "refs": { } }, "AdminResetUserPasswordResponse": { "base": "

        Represents the response from the server to reset a user password as an administrator.

        ", "refs": { } }, "AdminRespondToAuthChallengeRequest": { "base": "

        The request to respond to the authentication challenge, as an administrator.

        ", "refs": { } }, "AdminRespondToAuthChallengeResponse": { "base": "

        Responds to the authentication challenge, as an administrator.

        ", "refs": { } }, "AdminSetUserSettingsRequest": { "base": "

        Represents the request to set user settings as an administrator.

        ", "refs": { } }, "AdminSetUserSettingsResponse": { "base": "

        Represents the response from the server to set user settings as an administrator.

        ", "refs": { } }, "AdminUpdateDeviceStatusRequest": { "base": "

        The request to update the device status, as an administrator.

        ", "refs": { } }, "AdminUpdateDeviceStatusResponse": { "base": "

        The status response from the request to update the device, as an administrator.

        ", "refs": { } }, "AdminUpdateUserAttributesRequest": { "base": "

        Represents the request to update the user's attributes as an administrator.

        ", "refs": { } }, "AdminUpdateUserAttributesResponse": { "base": "

        Represents the response from the server for the request to update user attributes as an administrator.

        ", "refs": { } }, "AdminUserGlobalSignOutRequest": { "base": "

        The request to sign out of all devices, as an administrator.

        ", "refs": { } }, "AdminUserGlobalSignOutResponse": { "base": "

        The global sign-out response, as an administrator.

        ", "refs": { } }, "AliasAttributeType": { "base": null, "refs": { "AliasAttributesListType$member": null } }, "AliasAttributesListType": { "base": null, "refs": { "CreateUserPoolRequest$AliasAttributes": "

        Attributes supported as an alias for this user pool. Possible values: phone_number, email, or preferred_username.

        ", "UserPoolType$AliasAttributes": "

        Specifies the attributes that are aliased in a user pool.

        " } }, "AliasExistsException": { "base": "

        This exception is thrown when a user tries to confirm the account with an email or phone number that has already been supplied as an alias from a different account. This exception tells user that an account with this email or phone already exists.

        ", "refs": { } }, "ArnType": { "base": null, "refs": { "CreateUserImportJobRequest$CloudWatchLogsRoleArn": "

        The role ARN for the Amazon CloudWatch Logging role for the user import job.

        ", "EmailConfigurationType$SourceArn": "

        The Amazon Resource Name (ARN) of the email source.

        ", "LambdaConfigType$PreSignUp": "

        A pre-registration AWS Lambda trigger.

        ", "LambdaConfigType$CustomMessage": "

        A custom Message AWS Lambda trigger.

        ", "LambdaConfigType$PostConfirmation": "

        A post-confirmation AWS Lambda trigger.

        ", "LambdaConfigType$PreAuthentication": "

        A pre-authentication AWS Lambda trigger.

        ", "LambdaConfigType$PostAuthentication": "

        A post-authentication AWS Lambda trigger.

        ", "LambdaConfigType$DefineAuthChallenge": "

        Defines the authentication challenge.

        ", "LambdaConfigType$CreateAuthChallenge": "

        Creates an authentication challenge.

        ", "LambdaConfigType$VerifyAuthChallengeResponse": "

        Verifies the authentication challenge response.

        ", "SmsConfigurationType$SnsCallerArn": "

        The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (SNS) caller.

        ", "UserImportJobType$CloudWatchLogsRoleArn": "

        The role ARN for the Amazon CloudWatch Logging role for the user import job. For more information, see \"Creating the CloudWatch Logs IAM Role\" in the Amazon Cognito Developer Guide.

        " } }, "AttributeDataType": { "base": null, "refs": { "SchemaAttributeType$AttributeDataType": "

        The attribute data type.

        " } }, "AttributeListType": { "base": null, "refs": { "AdminCreateUserRequest$UserAttributes": "

        An array of name-value pairs that contain user attributes and attribute values to be set for the user to be created. You can create a user without specifying any attributes other than Username. However, any attributes that you specify as required (in CreateUserPool or in the Attributes tab of the console) must be supplied either by you (in your call to AdminCreateUser) or by the user (when he or she signs up in response to your welcome message).

        To send a message inviting the user to sign up, you must specify the user's email address or phone number. This can be done in your call to AdminCreateUser or in the Users tab of the Amazon Cognito console for managing your user pools.

        In your call to AdminCreateUser, you can set the email_verified attribute to True, and you can set the phone_number_verified attribute to True. (You cannot do this by calling other operations such as AdminUpdateUserAttributes.)

        • email: The email address of the user to whom the message that contains the code and username will be sent. Required if the email_verified attribute is set to True, or if \"EMAIL\" is specified in the DesiredDeliveryMediums parameter.

        • phone_number: The phone number of the user to whom the message that contains the code and username will be sent. Required if the phone_number_verified attribute is set to True, or if \"SMS\" is specified in the DesiredDeliveryMediums parameter.

        ", "AdminCreateUserRequest$ValidationData": "

        The user's validation data. This is an array of name-value pairs that contain user attributes and attribute values that you can use for custom validation, such as restricting the types of user accounts that can be registered. For example, you might choose to allow or disallow user sign-up based on the user's domain.

        To configure custom validation, you must create a Pre Sign-up Lambda trigger for the user pool as described in the Amazon Cognito Developer Guide. The Lambda trigger receives the validation data and uses it in the validation process.

        The user's validation data is not persisted.

        ", "AdminGetUserResponse$UserAttributes": "

        An array of name-value pairs representing user attributes.

        ", "AdminUpdateUserAttributesRequest$UserAttributes": "

        An array of name-value pairs representing user attributes.

        ", "DeviceType$DeviceAttributes": "

        The device attributes.

        ", "GetUserResponse$UserAttributes": "

        An array of name-value pairs representing user attributes.

        ", "SignUpRequest$UserAttributes": "

        An array of name-value pairs representing user attributes.

        ", "SignUpRequest$ValidationData": "

        The validation data in the request to register a user.

        ", "UpdateUserAttributesRequest$UserAttributes": "

        An array of name-value pairs representing user attributes.

        ", "UserType$Attributes": "

        A container with information about the user type attributes.

        " } }, "AttributeNameListType": { "base": null, "refs": { "AdminDeleteUserAttributesRequest$UserAttributeNames": "

        An array of strings representing the user attribute names you wish to delete.

        ", "DeleteUserAttributesRequest$UserAttributeNames": "

        An array of strings representing the user attribute names you wish to delete.

        " } }, "AttributeNameType": { "base": null, "refs": { "AttributeNameListType$member": null, "AttributeType$Name": "

        The name of the attribute.

        ", "CodeDeliveryDetailsType$AttributeName": "

        The name of the attribute in the code delivery details type.

        ", "GetUserAttributeVerificationCodeRequest$AttributeName": "

        The attribute name returned by the server response to get the user attribute verification code.

        ", "MFAOptionType$AttributeName": "

        The attribute name of the MFA option type.

        ", "SearchedAttributeNamesListType$member": null, "VerifyUserAttributeRequest$AttributeName": "

        The attribute name in the request to verify user attributes.

        " } }, "AttributeType": { "base": "

        Specifies whether the attribute is standard or custom.

        ", "refs": { "AttributeListType$member": null } }, "AttributeValueType": { "base": null, "refs": { "AttributeType$Value": "

        The value of the attribute.

        " } }, "AuthFlowType": { "base": null, "refs": { "AdminInitiateAuthRequest$AuthFlow": "

        The authentication flow.

        ", "InitiateAuthRequest$AuthFlow": "

        The authentication flow.

        " } }, "AuthParametersType": { "base": null, "refs": { "AdminInitiateAuthRequest$AuthParameters": "

        The authentication parameters.

        ", "InitiateAuthRequest$AuthParameters": "

        The authentication parameters.

        " } }, "AuthenticationResultType": { "base": "

        The result type of the authentication result.

        ", "refs": { "AdminInitiateAuthResponse$AuthenticationResult": null, "AdminRespondToAuthChallengeResponse$AuthenticationResult": null, "InitiateAuthResponse$AuthenticationResult": null, "RespondToAuthChallengeResponse$AuthenticationResult": null } }, "BooleanType": { "base": null, "refs": { "AdminCreateUserConfigType$AllowAdminCreateUserOnly": "

        Set to True if only the administrator is allowed to create user profiles. Set to False if users can sign themselves up via an app.

        ", "AdminGetUserResponse$Enabled": "

        Indicates that the status is enabled.

        ", "ConfirmDeviceResponse$UserConfirmationNecessary": "

        Indicates whether the user confirmation is necessary to confirm the device response.

        ", "DeviceConfigurationType$ChallengeRequiredOnNewDevice": "

        Indicates whether a challenge is required on a new device. Only applicable to a new device.

        ", "DeviceConfigurationType$DeviceOnlyRememberedOnUserPrompt": "

        If true, a device is only remembered on user prompt.

        ", "PasswordPolicyType$RequireUppercase": "

        In the password policy that you have set, refers to whether you have required users to use at least one uppercase letter in their password.

        ", "PasswordPolicyType$RequireLowercase": "

        In the password policy that you have set, refers to whether you have required users to use at least one lowercase letter in their password.

        ", "PasswordPolicyType$RequireNumbers": "

        In the password policy that you have set, refers to whether you have required users to use at least one number in their password.

        ", "PasswordPolicyType$RequireSymbols": "

        In the password policy that you have set, refers to whether you have required users to use at least one symbol in their password.

        ", "SchemaAttributeType$DeveloperOnlyAttribute": "

        Specifies whether the attribute type is developer only.

        ", "SchemaAttributeType$Mutable": "

        Specifies whether the attribute can be changed once it has been created.

        ", "SchemaAttributeType$Required": "

        Specifies whether a user pool attribute is required. If the attribute is required and the user does not provide a value, registration or sign-in will fail.

        ", "SignUpResponse$UserConfirmed": "

        A response from the server indicating that a user registration has been confirmed.

        ", "UserType$Enabled": "

        Specifies whether the user is enabled.

        " } }, "ChallengeNameType": { "base": null, "refs": { "AdminInitiateAuthResponse$ChallengeName": "

        The name of the challenge.

        ", "AdminRespondToAuthChallengeRequest$ChallengeName": "

        The name of the challenge.

        ", "AdminRespondToAuthChallengeResponse$ChallengeName": "

        The name of the challenge.

        ", "InitiateAuthResponse$ChallengeName": "

        The name of the challenge.

        ", "RespondToAuthChallengeRequest$ChallengeName": "

        The name of the challenge.

        ", "RespondToAuthChallengeResponse$ChallengeName": "

        The challenge name.

        " } }, "ChallengeParametersType": { "base": null, "refs": { "AdminInitiateAuthResponse$ChallengeParameters": "

        The challenge parameters.

        ", "AdminRespondToAuthChallengeResponse$ChallengeParameters": "

        The challenge parameters.

        ", "InitiateAuthResponse$ChallengeParameters": "

        The challenge parameters.

        ", "RespondToAuthChallengeResponse$ChallengeParameters": "

        The challenge parameters.

        " } }, "ChallengeResponsesType": { "base": null, "refs": { "AdminRespondToAuthChallengeRequest$ChallengeResponses": "

        The challenge response.

        ", "RespondToAuthChallengeRequest$ChallengeResponses": "

        The responses to the authentication challenge.

        " } }, "ChangePasswordRequest": { "base": "

        Represents the request to change a user password.

        ", "refs": { } }, "ChangePasswordResponse": { "base": "

        The response from the server to the change password request.

        ", "refs": { } }, "ClientIdType": { "base": null, "refs": { "AdminInitiateAuthRequest$ClientId": "

        The client app ID.

        ", "AdminRespondToAuthChallengeRequest$ClientId": "

        The client ID.

        ", "ConfirmForgotPasswordRequest$ClientId": "

        The ID of the client associated with the user pool.

        ", "ConfirmSignUpRequest$ClientId": "

        The ID of the client associated with the user pool.

        ", "DeleteUserPoolClientRequest$ClientId": "

        The ID of the client associated with the user pool.

        ", "DescribeUserPoolClientRequest$ClientId": "

        The ID of the client associated with the user pool.

        ", "ForgotPasswordRequest$ClientId": "

        The ID of the client associated with the user pool.

        ", "InitiateAuthRequest$ClientId": "

        The client ID.

        ", "ResendConfirmationCodeRequest$ClientId": "

        The ID of the client associated with the user pool.

        ", "RespondToAuthChallengeRequest$ClientId": "

        The client ID.

        ", "SignUpRequest$ClientId": "

        The ID of the client associated with the user pool.

        ", "UpdateUserPoolClientRequest$ClientId": "

        The ID of the client associated with the user pool.

        ", "UserPoolClientDescription$ClientId": "

        The ID of the client associated with the user pool.

        ", "UserPoolClientType$ClientId": "

        The ID of the client associated with the user pool.

        " } }, "ClientMetadataType": { "base": null, "refs": { "AdminInitiateAuthRequest$ClientMetadata": "

        The client app metadata.

        ", "InitiateAuthRequest$ClientMetadata": "

        The client app's metadata.

        " } }, "ClientNameType": { "base": null, "refs": { "CreateUserPoolClientRequest$ClientName": "

        The client name for the user pool client you would like to create.

        ", "UpdateUserPoolClientRequest$ClientName": "

        The client name from the update user pool client request.

        ", "UserPoolClientDescription$ClientName": "

        The client name from the user pool client description.

        ", "UserPoolClientType$ClientName": "

        The client name from the user pool request of the client type.

        " } }, "ClientPermissionListType": { "base": null, "refs": { "CreateUserPoolClientRequest$ReadAttributes": "

        The read attributes.

        ", "CreateUserPoolClientRequest$WriteAttributes": "

        The write attributes.

        ", "UpdateUserPoolClientRequest$ReadAttributes": "

        The read-only attributes of the user pool.

        ", "UpdateUserPoolClientRequest$WriteAttributes": "

        The writeable attributes of the user pool.

        ", "UserPoolClientType$ReadAttributes": "

        The Read-only attributes.

        ", "UserPoolClientType$WriteAttributes": "

        The writeable attributes.

        " } }, "ClientPermissionType": { "base": null, "refs": { "ClientPermissionListType$member": null } }, "ClientSecretType": { "base": null, "refs": { "UserPoolClientType$ClientSecret": "

        The client secret from the user pool request of the client type.

        " } }, "CodeDeliveryDetailsListType": { "base": null, "refs": { "UpdateUserAttributesResponse$CodeDeliveryDetailsList": "

        The code delivery details list from the server for the request to update user attributes.

        " } }, "CodeDeliveryDetailsType": { "base": "

        The type of code delivery details being returned from the server.

        ", "refs": { "CodeDeliveryDetailsListType$member": null, "ForgotPasswordResponse$CodeDeliveryDetails": null, "GetUserAttributeVerificationCodeResponse$CodeDeliveryDetails": "

        The code delivery details returned by the server response to get the user attribute verification code.

        ", "ResendConfirmationCodeResponse$CodeDeliveryDetails": null, "SignUpResponse$CodeDeliveryDetails": null } }, "CodeDeliveryFailureException": { "base": "

        This exception is thrown when a verification code fails to deliver successfully.

        ", "refs": { } }, "CodeMismatchException": { "base": "

        This exception is thrown if the provided code does not match what the server was expecting.

        ", "refs": { } }, "CompletionMessageType": { "base": null, "refs": { "UserImportJobType$CompletionMessage": "

        The message returned when the user import job is completed.

        " } }, "ConcurrentModificationException": { "base": "

        This exception is thrown if two or more modifications are happening concurrently.

        ", "refs": { } }, "ConfirmDeviceRequest": { "base": "

        Confirms the device request.

        ", "refs": { } }, "ConfirmDeviceResponse": { "base": "

        Confirms the device response.

        ", "refs": { } }, "ConfirmForgotPasswordRequest": { "base": "

        The request representing the confirmation for a password reset.

        ", "refs": { } }, "ConfirmForgotPasswordResponse": { "base": "

        The response from the server that results from a user's request to retrieve a forgotten password.

        ", "refs": { } }, "ConfirmSignUpRequest": { "base": "

        Represents the request to confirm registration of a user.

        ", "refs": { } }, "ConfirmSignUpResponse": { "base": "

        Represents the response from the server for the registration confirmation.

        ", "refs": { } }, "ConfirmationCodeType": { "base": null, "refs": { "ConfirmForgotPasswordRequest$ConfirmationCode": "

        The confirmation code sent by a user's request to retrieve a forgotten password.

        ", "ConfirmSignUpRequest$ConfirmationCode": "

        The confirmation code sent by a user's request to confirm registration.

        ", "VerifyUserAttributeRequest$Code": "

        The verification code in the request to verify user attributes.

        " } }, "CreateUserImportJobRequest": { "base": "

        Represents the request to create the user import job.

        ", "refs": { } }, "CreateUserImportJobResponse": { "base": "

        Represents the response from the server to the request to create the user import job.

        ", "refs": { } }, "CreateUserPoolClientRequest": { "base": "

        Represents the request to create a user pool client.

        ", "refs": { } }, "CreateUserPoolClientResponse": { "base": "

        Represents the response from the server to create a user pool client.

        ", "refs": { } }, "CreateUserPoolRequest": { "base": "

        Represents the request to create a user pool.

        ", "refs": { } }, "CreateUserPoolResponse": { "base": "

        Represents the response from the server for the request to create a user pool.

        ", "refs": { } }, "CustomAttributeNameType": { "base": null, "refs": { "SchemaAttributeType$Name": "

        A schema attribute of the name type.

        " } }, "CustomAttributesListType": { "base": null, "refs": { "AddCustomAttributesRequest$CustomAttributes": "

        An array of custom attributes, such as Mutable and Name.

        " } }, "DateType": { "base": null, "refs": { "AdminGetUserResponse$UserCreateDate": "

        The date the user was created.

        ", "AdminGetUserResponse$UserLastModifiedDate": "

        The date the user was last modified.

        ", "DeviceType$DeviceCreateDate": "

        The creation date of the device.

        ", "DeviceType$DeviceLastModifiedDate": "

        The last modified date of the device.

        ", "DeviceType$DeviceLastAuthenticatedDate": "

        The date in which the device was last authenticated.

        ", "UserImportJobType$CreationDate": "

        The date when the user import job was created.

        ", "UserImportJobType$StartDate": "

        The date when the user import job was started.

        ", "UserImportJobType$CompletionDate": "

        The date when the user imoprt job was completed.

        ", "UserPoolClientType$LastModifiedDate": "

        The last modified date from the user pool request of the client type.

        ", "UserPoolClientType$CreationDate": "

        The creation date from the user pool request of the client type.

        ", "UserPoolDescriptionType$LastModifiedDate": "

        The last modified date in a user pool description.

        ", "UserPoolDescriptionType$CreationDate": "

        The creation date in a user pool description.

        ", "UserPoolType$LastModifiedDate": "

        The last modified date of a user pool.

        ", "UserPoolType$CreationDate": "

        The creation date of a user pool.

        ", "UserType$UserCreateDate": "

        The creation date of the user.

        ", "UserType$UserLastModifiedDate": "

        The last modified date of the user.

        " } }, "DeleteUserAttributesRequest": { "base": "

        Represents the request to delete user attributes.

        ", "refs": { } }, "DeleteUserAttributesResponse": { "base": "

        Represents the response from the server to delete user attributes.

        ", "refs": { } }, "DeleteUserPoolClientRequest": { "base": "

        Represents the request to delete a user pool client.

        ", "refs": { } }, "DeleteUserPoolRequest": { "base": "

        Represents the request to delete a user pool.

        ", "refs": { } }, "DeleteUserRequest": { "base": "

        Represents the request to delete a user.

        ", "refs": { } }, "DeliveryMediumListType": { "base": null, "refs": { "AdminCreateUserRequest$DesiredDeliveryMediums": "

        Specify \"EMAIL\" if email will be used to send the welcome message. Specify \"SMS\" if the phone number will be used. The default value is \"SMS\". More than one value can be specified.

        " } }, "DeliveryMediumType": { "base": null, "refs": { "CodeDeliveryDetailsType$DeliveryMedium": "

        The delivery medium (email message or phone number).

        ", "DeliveryMediumListType$member": null, "MFAOptionType$DeliveryMedium": "

        The delivery medium (email message or SMS message) to send the MFA code.

        " } }, "DescribeUserImportJobRequest": { "base": "

        Represents the request to describe the user import job.

        ", "refs": { } }, "DescribeUserImportJobResponse": { "base": "

        Represents the response from the server to the request to describe the user import job.

        ", "refs": { } }, "DescribeUserPoolClientRequest": { "base": "

        Represents the request to describe a user pool client.

        ", "refs": { } }, "DescribeUserPoolClientResponse": { "base": "

        Represents the response from the server from a request to describe the user pool client.

        ", "refs": { } }, "DescribeUserPoolRequest": { "base": "

        Represents the request to describe the user pool.

        ", "refs": { } }, "DescribeUserPoolResponse": { "base": "

        Represents the response to describe the user pool.

        ", "refs": { } }, "DeviceConfigurationType": { "base": "

        The type of configuration for the user pool's device tracking.

        ", "refs": { "CreateUserPoolRequest$DeviceConfiguration": "

        The device configuration.

        ", "UpdateUserPoolRequest$DeviceConfiguration": "

        Device configuration.

        ", "UserPoolType$DeviceConfiguration": "

        The device configuration.

        " } }, "DeviceKeyType": { "base": null, "refs": { "AdminForgetDeviceRequest$DeviceKey": "

        The device key.

        ", "AdminGetDeviceRequest$DeviceKey": "

        The device key.

        ", "AdminUpdateDeviceStatusRequest$DeviceKey": "

        The device key.

        ", "ConfirmDeviceRequest$DeviceKey": "

        The device key.

        ", "DeviceType$DeviceKey": "

        The device key.

        ", "ForgetDeviceRequest$DeviceKey": "

        The device key.

        ", "GetDeviceRequest$DeviceKey": "

        The device key.

        ", "NewDeviceMetadataType$DeviceKey": "

        The device key.

        ", "UpdateDeviceStatusRequest$DeviceKey": "

        The device key.

        " } }, "DeviceListType": { "base": null, "refs": { "AdminListDevicesResponse$Devices": "

        The devices in the list of devices response.

        ", "ListDevicesResponse$Devices": "

        The devices returned in the list devices response.

        " } }, "DeviceNameType": { "base": null, "refs": { "ConfirmDeviceRequest$DeviceName": "

        The device name.

        " } }, "DeviceRememberedStatusType": { "base": null, "refs": { "AdminUpdateDeviceStatusRequest$DeviceRememberedStatus": "

        The status indicating whether a device has been remembered or not.

        ", "UpdateDeviceStatusRequest$DeviceRememberedStatus": "

        The status of whether a device is remembered.

        " } }, "DeviceSecretVerifierConfigType": { "base": "

        The device verifier against which it will be authenticated.

        ", "refs": { "ConfirmDeviceRequest$DeviceSecretVerifierConfig": "

        The configuration of the device secret verifier.

        " } }, "DeviceType": { "base": "

        The device type.

        ", "refs": { "AdminGetDeviceResponse$Device": "

        The device.

        ", "DeviceListType$member": null, "GetDeviceResponse$Device": "

        The device.

        " } }, "EmailAddressType": { "base": null, "refs": { "EmailConfigurationType$ReplyToEmailAddress": "

        The REPLY-TO email address.

        " } }, "EmailConfigurationType": { "base": "

        The email configuration type.

        ", "refs": { "CreateUserPoolRequest$EmailConfiguration": "

        The email configuration.

        ", "UpdateUserPoolRequest$EmailConfiguration": "

        Email configuration.

        ", "UserPoolType$EmailConfiguration": "

        The email configuration.

        " } }, "EmailVerificationMessageType": { "base": null, "refs": { "CreateUserPoolRequest$EmailVerificationMessage": "

        A string representing the email verification message.

        ", "MessageTemplateType$EmailMessage": "

        The message template for email messages.

        ", "UpdateUserPoolRequest$EmailVerificationMessage": "

        The contents of the email verification message.

        ", "UserPoolType$EmailVerificationMessage": "

        The contents of the email verification message.

        " } }, "EmailVerificationSubjectType": { "base": null, "refs": { "CreateUserPoolRequest$EmailVerificationSubject": "

        A string representing the email verification subject.

        ", "MessageTemplateType$EmailSubject": "

        The subject line for email messages.

        ", "UpdateUserPoolRequest$EmailVerificationSubject": "

        The subject of the email verfication message.

        ", "UserPoolType$EmailVerificationSubject": "

        The subject of the email verification message.

        " } }, "ExpiredCodeException": { "base": "

        This exception is thrown if a code has expired.

        ", "refs": { } }, "ExplicitAuthFlowsListType": { "base": null, "refs": { "CreateUserPoolClientRequest$ExplicitAuthFlows": "

        The explicit authentication flows.

        ", "UpdateUserPoolClientRequest$ExplicitAuthFlows": "

        Explicit authentication flows.

        ", "UserPoolClientType$ExplicitAuthFlows": "

        The explicit authentication flows.

        " } }, "ExplicitAuthFlowsType": { "base": null, "refs": { "ExplicitAuthFlowsListType$member": null } }, "ForceAliasCreation": { "base": null, "refs": { "AdminCreateUserRequest$ForceAliasCreation": "

        This parameter is only used if the phone_number_verified or email_verified attribute is set to True. Otherwise, it is ignored.

        If this parameter is set to True and the phone number or email address specified in the UserAttributes parameter already exists as an alias with a different user, the API call will migrate the alias from the previous user to the newly created user. The previous user will no longer be able to log in using that alias.

        If this parameter is set to False, the API throws an AliasExistsException error if the alias already exists. The default value is False.

        ", "ConfirmSignUpRequest$ForceAliasCreation": "

        Boolean to be specified to force user confirmation irrespective of existing alias. By default set to False. If this parameter is set to True and the phone number/email used for sign up confirmation already exists as an alias with a different user, the API call will migrate the alias from the previous user to the newly created user being confirmed. If set to False, the API will throw an AliasExistsException error.

        " } }, "ForgetDeviceRequest": { "base": "

        Represents the request to forget the device.

        ", "refs": { } }, "ForgotPasswordRequest": { "base": "

        Represents the request to reset a user's password.

        ", "refs": { } }, "ForgotPasswordResponse": { "base": "

        Respresents the response from the server regarding the request to reset a password.

        ", "refs": { } }, "GenerateSecret": { "base": null, "refs": { "CreateUserPoolClientRequest$GenerateSecret": "

        Boolean to specify whether you want to generate a secret for the user pool client being created.

        " } }, "GetCSVHeaderRequest": { "base": "

        Represents the request to get the header information for the .csv file for the user import job.

        ", "refs": { } }, "GetCSVHeaderResponse": { "base": "

        Represents the response from the server to the request to get the header information for the .csv file for the user import job.

        ", "refs": { } }, "GetDeviceRequest": { "base": "

        Represents the request to get the device.

        ", "refs": { } }, "GetDeviceResponse": { "base": "

        Gets the device response.

        ", "refs": { } }, "GetUserAttributeVerificationCodeRequest": { "base": "

        Represents the request to get user attribute verification.

        ", "refs": { } }, "GetUserAttributeVerificationCodeResponse": { "base": "

        The verification code response returned by the server response to get the user attribute verification code.

        ", "refs": { } }, "GetUserRequest": { "base": "

        Represents the request to get information about the user.

        ", "refs": { } }, "GetUserResponse": { "base": "

        Represents the response from the server from the request to get information about the user.

        ", "refs": { } }, "GlobalSignOutRequest": { "base": "

        Represents the request to sign out all devices.

        ", "refs": { } }, "GlobalSignOutResponse": { "base": "

        The response to the request to sign out all devices.

        ", "refs": { } }, "InitiateAuthRequest": { "base": "

        Initiates the authentication request.

        ", "refs": { } }, "InitiateAuthResponse": { "base": "

        Initiates the authentication response.

        ", "refs": { } }, "IntegerType": { "base": null, "refs": { "AuthenticationResultType$ExpiresIn": "

        The expiration period of the authentication result.

        ", "UserPoolType$EstimatedNumberOfUsers": "

        A number estimating the size of the user pool.

        " } }, "InternalErrorException": { "base": "

        This exception is thrown when Amazon Cognito encounters an internal error.

        ", "refs": { } }, "InvalidEmailRoleAccessPolicyException": { "base": "

        This exception is thrown when Amazon Cognito is not allowed to use your email identity. HTTP status code: 400.

        ", "refs": { } }, "InvalidLambdaResponseException": { "base": "

        This exception is thrown when the Amazon Cognito service encounters an invalid AWS Lambda response.

        ", "refs": { } }, "InvalidParameterException": { "base": "

        This exception is thrown when the Amazon Cognito service encounters an invalid parameter.

        ", "refs": { } }, "InvalidPasswordException": { "base": "

        This exception is thrown when the Amazon Cognito service encounters an invalid password.

        ", "refs": { } }, "InvalidSmsRoleAccessPolicyException": { "base": "

        This exception is returned when the role provided for SMS configuration does not have permission to publish using Amazon SNS.

        ", "refs": { } }, "InvalidSmsRoleTrustRelationshipException": { "base": "

        This exception is thrown when the trust relationship is invalid for the role provided for SMS configuration. This can happen if you do not trust cognito-idp.amazonaws.com or the external ID provided in the role does not match what is provided in the SMS configuration for the user pool.

        ", "refs": { } }, "InvalidUserPoolConfigurationException": { "base": "

        This exception is thrown when the user pool configuration is invalid.

        ", "refs": { } }, "LambdaConfigType": { "base": "

        Specifies the type of configuration for AWS Lambda triggers.

        ", "refs": { "CreateUserPoolRequest$LambdaConfig": "

        The Lambda trigger configuration information for the new user pool.

        ", "UpdateUserPoolRequest$LambdaConfig": "

        The AWS Lambda configuration information from the request to update the user pool.

        ", "UserPoolDescriptionType$LambdaConfig": "

        The AWS Lambda configuration information in a user pool description.

        ", "UserPoolType$LambdaConfig": "

        A container describing the AWS Lambda triggers associated with a user pool.

        " } }, "LimitExceededException": { "base": "

        This exception is thrown when a user exceeds the limit for a requested AWS resource.

        ", "refs": { } }, "ListDevicesRequest": { "base": "

        Represents the request to list the devices.

        ", "refs": { } }, "ListDevicesResponse": { "base": "

        Represents the response to list devices.

        ", "refs": { } }, "ListOfStringTypes": { "base": null, "refs": { "GetCSVHeaderResponse$CSVHeader": "

        The header information for the .csv file for the user import job.

        " } }, "ListUserImportJobsRequest": { "base": "

        Represents the request to list the user import jobs.

        ", "refs": { } }, "ListUserImportJobsResponse": { "base": "

        Represents the response from the server to the request to list the user import jobs.

        ", "refs": { } }, "ListUserPoolClientsRequest": { "base": "

        Represents the request to list the user pool clients.

        ", "refs": { } }, "ListUserPoolClientsResponse": { "base": "

        Represents the response from the server that lists user pool clients.

        ", "refs": { } }, "ListUserPoolsRequest": { "base": "

        Represents the request to list user pools.

        ", "refs": { } }, "ListUserPoolsResponse": { "base": "

        Represents the response to list user pools.

        ", "refs": { } }, "ListUsersRequest": { "base": "

        Represents the request to list users.

        ", "refs": { } }, "ListUsersResponse": { "base": "

        The response from the request to list users.

        ", "refs": { } }, "LongType": { "base": null, "refs": { "UserImportJobType$ImportedUsers": "

        The number of users that were successfully imported.

        ", "UserImportJobType$SkippedUsers": "

        The number of users that were skipped.

        ", "UserImportJobType$FailedUsers": "

        The number of users that could not be imported.

        " } }, "MFAMethodNotFoundException": { "base": "

        This exception is thrown when Amazon Cognito cannot find a multi-factor authentication (MFA) method.

        ", "refs": { } }, "MFAOptionListType": { "base": null, "refs": { "AdminGetUserResponse$MFAOptions": "

        Specifies the options for MFA (e.g., email or phone number).

        ", "AdminSetUserSettingsRequest$MFAOptions": "

        Specifies the options for MFA (e.g., email or phone number).

        ", "GetUserResponse$MFAOptions": "

        Specifies the options for MFA (e.g., email or phone number).

        ", "SetUserSettingsRequest$MFAOptions": "

        Specifies the options for MFA (e.g., email or phone number).

        ", "UserType$MFAOptions": "

        The MFA options for the user.

        " } }, "MFAOptionType": { "base": "

        Specifies the different settings for multi-factor authentication (MFA).

        ", "refs": { "MFAOptionListType$member": null } }, "MessageActionType": { "base": null, "refs": { "AdminCreateUserRequest$MessageAction": "

        Set to \"RESEND\" to resend the invitation message to a user that already exists and reset the expiration limit on the user's account. Set to \"SUPPRESS\" to suppress sending the message. Only one value can be specified.

        " } }, "MessageTemplateType": { "base": "

        The message template structure.

        ", "refs": { "AdminCreateUserConfigType$InviteMessageTemplate": "

        The message template to be used for the welcome message to new users.

        " } }, "MessageType": { "base": null, "refs": { "AliasExistsException$message": "

        The message sent to the user when an alias exists.

        ", "CodeDeliveryFailureException$message": "

        The message sent when a verification code fails to deliver successfully.

        ", "CodeMismatchException$message": "

        The message provided when the code mismatch exception is thrown.

        ", "ConcurrentModificationException$message": "

        The message provided when the concurrent exception is thrown.

        ", "ExpiredCodeException$message": "

        The message returned when the expired code exception is thrown.

        ", "InternalErrorException$message": "

        The message returned when Amazon Cognito throws an internal error exception.

        ", "InvalidEmailRoleAccessPolicyException$message": "

        The message returned when you have an unverified email address or the identity policy is not set on an email address that Amazon Cognito can access.

        ", "InvalidLambdaResponseException$message": "

        The message returned when the Amazon Cognito service throws an invalid AWS Lambda response exception.

        ", "InvalidParameterException$message": "

        The message returned when the Amazon Cognito service throws an invalid parameter exception.

        ", "InvalidPasswordException$message": "

        The message returned when the Amazon Cognito service throws an invalid user password exception.

        ", "InvalidSmsRoleAccessPolicyException$message": "

        The message retuned when the invalid SMS role access policy exception is thrown.

        ", "InvalidSmsRoleTrustRelationshipException$message": "

        The message returned when the role trust relationship for the SMS message is invalid.

        ", "InvalidUserPoolConfigurationException$message": "

        The message returned when the user pool configuration is invalid.

        ", "LimitExceededException$message": "

        The message returned when Amazon Cognito throws a limit exceeded exception.

        ", "MFAMethodNotFoundException$message": "

        The message returned when Amazon Cognito throws an MFA method not found exception.

        ", "NotAuthorizedException$message": "

        The message returned when the Amazon Cognito service returns a not authorized exception.

        ", "PasswordResetRequiredException$message": "

        The message returned when a password reset is required.

        ", "PreconditionNotMetException$message": "

        The message returned when a precondition is not met.

        ", "ResourceNotFoundException$message": "

        The message returned when the Amazon Cognito service returns a resource not found exception.

        ", "TooManyFailedAttemptsException$message": "

        The message returned when the Amazon Cognito service returns a too many failed attempts exception.

        ", "TooManyRequestsException$message": "

        The message returned when the Amazon Cognito service returns a too many requests exception.

        ", "UnexpectedLambdaException$message": "

        The message returned when the Amazon Cognito service returns an unexpected AWS Lambda exception.

        ", "UnsupportedUserStateException$message": "

        The message returned when the user is in an unsupported state.

        ", "UserImportInProgressException$message": "

        The message returned when the user pool has an import job running.

        ", "UserLambdaValidationException$message": "

        The message returned when the Amazon Cognito service returns a user validation exception with the AWS Lambda service.

        ", "UserNotConfirmedException$message": "

        The message returned when a user is not confirmed successfully.

        ", "UserNotFoundException$message": "

        The message returned when a user is not found.

        ", "UsernameExistsException$message": "

        The message returned when Amazon Cognito throws a user name exists exception.

        " } }, "NewDeviceMetadataType": { "base": "

        The new device metadata type.

        ", "refs": { "AuthenticationResultType$NewDeviceMetadata": "

        The new device metadata from an authentication result.

        " } }, "NotAuthorizedException": { "base": "

        This exception gets thrown when a user is not authorized.

        ", "refs": { } }, "NumberAttributeConstraintsType": { "base": "

        The minimum and maximum value of an attribute that is of the number data type.

        ", "refs": { "SchemaAttributeType$NumberAttributeConstraints": "

        Specifies the constraints for an attribute of the number type.

        " } }, "PaginationKey": { "base": null, "refs": { "ListUserPoolClientsRequest$NextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListUserPoolClientsResponse$NextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        " } }, "PaginationKeyType": { "base": null, "refs": { "ListUserImportJobsRequest$PaginationToken": "

        An identifier that was returned from the previous call to ListUserImportJobs, which can be used to return the next set of import jobs in the list.

        ", "ListUserImportJobsResponse$PaginationToken": "

        An identifier that can be used to return the next set of user import jobs in the list.

        ", "ListUserPoolsRequest$NextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListUserPoolsResponse$NextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        " } }, "PasswordPolicyMinLengthType": { "base": null, "refs": { "PasswordPolicyType$MinimumLength": "

        The minimum length of the password policy that you have set. Cannot be less than 6.

        " } }, "PasswordPolicyType": { "base": "

        The password policy type.

        ", "refs": { "UserPoolPolicyType$PasswordPolicy": "

        A container with information about the user pool password policy.

        " } }, "PasswordResetRequiredException": { "base": "

        This exception is thrown when a password reset is required.

        ", "refs": { } }, "PasswordType": { "base": null, "refs": { "AdminCreateUserRequest$TemporaryPassword": "

        The user's temporary password. This password must conform to the password policy that you specified when you created the user pool.

        The temporary password is valid only once. To complete the Admin Create User flow, the user must enter the temporary password in the sign-in page along with a new password to be used in all future sign-ins.

        This parameter is not required. If you do not specify a value, Amazon Cognito generates one for you.

        The temporary password can only be used until the user account expiration limit that you specified when you created the user pool. To reset the account after that time limit, you must call AdminCreateUser again, specifying \"RESEND\" for the MessageAction parameter.

        ", "ChangePasswordRequest$PreviousPassword": "

        The old password in the change password request.

        ", "ChangePasswordRequest$ProposedPassword": "

        The new password in the change password request.

        ", "ConfirmForgotPasswordRequest$Password": "

        The password sent by sent by a user's request to retrieve a forgotten password.

        ", "SignUpRequest$Password": "

        The password of the user you wish to register.

        " } }, "PoolQueryLimitType": { "base": null, "refs": { "ListUserImportJobsRequest$MaxResults": "

        The maximum number of import jobs you want the request to return.

        ", "ListUserPoolsRequest$MaxResults": "

        The maximum number of results you want the request to return when listing the user pools.

        " } }, "PreSignedUrlType": { "base": null, "refs": { "UserImportJobType$PreSignedUrl": "

        The pre-signed URL to be used to upload the .csv file.

        " } }, "PreconditionNotMetException": { "base": "

        This exception is thrown when a precondition is not met.

        ", "refs": { } }, "QueryLimit": { "base": null, "refs": { "ListUserPoolClientsRequest$MaxResults": "

        The maximum number of results you want the request to return when listing the user pool clients.

        " } }, "QueryLimitType": { "base": null, "refs": { "AdminListDevicesRequest$Limit": "

        The limit of the devices request.

        ", "ListDevicesRequest$Limit": "

        The limit of the device request.

        ", "ListUsersRequest$Limit": "

        The limit of the request to list users.

        " } }, "RefreshTokenValidityType": { "base": null, "refs": { "CreateUserPoolClientRequest$RefreshTokenValidity": "

        Refreshes the token validity.

        ", "UpdateUserPoolClientRequest$RefreshTokenValidity": "

        The validity of the refresh token.

        ", "UserPoolClientType$RefreshTokenValidity": "

        The validity of the refresh token.

        " } }, "ResendConfirmationCodeRequest": { "base": "

        Represents the request to resend the confirmation code.

        ", "refs": { } }, "ResendConfirmationCodeResponse": { "base": "

        The response from the server when the Amazon Cognito service makes the request to resend a confirmation code.

        ", "refs": { } }, "ResourceNotFoundException": { "base": "

        This exception is thrown when the Amazon Cognito service cannot find the requested resource.

        ", "refs": { } }, "RespondToAuthChallengeRequest": { "base": "

        The request to respond to an authentication challenge.

        ", "refs": { } }, "RespondToAuthChallengeResponse": { "base": "

        The response to respond to the authentication challenge.

        ", "refs": { } }, "SchemaAttributeType": { "base": "

        Contains information about the schema attribute.

        ", "refs": { "CustomAttributesListType$member": null, "SchemaAttributesListType$member": null } }, "SchemaAttributesListType": { "base": null, "refs": { "UserPoolType$SchemaAttributes": "

        A container with the schema attributes of a user pool.

        " } }, "SearchPaginationTokenType": { "base": null, "refs": { "AdminListDevicesRequest$PaginationToken": "

        The pagination token.

        ", "AdminListDevicesResponse$PaginationToken": "

        The pagination token.

        ", "ListDevicesRequest$PaginationToken": "

        The pagination token for the list request.

        ", "ListDevicesResponse$PaginationToken": "

        The pagination token for the list device response.

        ", "ListUsersRequest$PaginationToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListUsersResponse$PaginationToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        " } }, "SearchedAttributeNamesListType": { "base": null, "refs": { "ListUsersRequest$AttributesToGet": "

        The attributes to get from the request to list users.

        " } }, "SecretHashType": { "base": null, "refs": { "ConfirmForgotPasswordRequest$SecretHash": "

        A keyed-hash message authentication code (HMAC) calculated using the secret key of a user pool client and username plus the client ID in the message.

        ", "ConfirmSignUpRequest$SecretHash": "

        A keyed-hash message authentication code (HMAC) calculated using the secret key of a user pool client and username plus the client ID in the message.

        ", "ForgotPasswordRequest$SecretHash": "

        A keyed-hash message authentication code (HMAC) calculated using the secret key of a user pool client and username plus the client ID in the message.

        ", "ResendConfirmationCodeRequest$SecretHash": "

        A keyed-hash message authentication code (HMAC) calculated using the secret key of a user pool client and username plus the client ID in the message.

        ", "SignUpRequest$SecretHash": "

        A keyed-hash message authentication code (HMAC) calculated using the secret key of a user pool client and username plus the client ID in the message.

        " } }, "SessionType": { "base": null, "refs": { "AdminInitiateAuthResponse$Session": "

        The session.

        ", "AdminRespondToAuthChallengeRequest$Session": "

        The session.

        ", "AdminRespondToAuthChallengeResponse$Session": "

        The session.

        ", "InitiateAuthResponse$Session": "

        The session.

        ", "RespondToAuthChallengeRequest$Session": "

        The session.

        ", "RespondToAuthChallengeResponse$Session": "

        The session.

        " } }, "SetUserSettingsRequest": { "base": "

        Represents the request to set user settings.

        ", "refs": { } }, "SetUserSettingsResponse": { "base": "

        The response from the server for a set user settings request.

        ", "refs": { } }, "SignUpRequest": { "base": "

        Represents the request to register a user.

        ", "refs": { } }, "SignUpResponse": { "base": "

        The response from the server for a registration request.

        ", "refs": { } }, "SmsConfigurationType": { "base": "

        The SMS configuratoin type.

        ", "refs": { "CreateUserPoolRequest$SmsConfiguration": "

        The SMS configuration.

        ", "UpdateUserPoolRequest$SmsConfiguration": "

        SMS configuration.

        ", "UserPoolType$SmsConfiguration": "

        The SMS configuration.

        " } }, "SmsVerificationMessageType": { "base": null, "refs": { "CreateUserPoolRequest$SmsVerificationMessage": "

        A string representing the SMS verification message.

        ", "CreateUserPoolRequest$SmsAuthenticationMessage": "

        A string representing the SMS authentication message.

        ", "MessageTemplateType$SMSMessage": "

        The message template for SMS messages.

        ", "UpdateUserPoolRequest$SmsVerificationMessage": "

        A container with information about the SMS verification message.

        ", "UpdateUserPoolRequest$SmsAuthenticationMessage": "

        The contents of the SMS authentication message.

        ", "UserPoolType$SmsVerificationMessage": "

        The contents of the SMS verification message.

        ", "UserPoolType$SmsAuthenticationMessage": "

        The contents of the SMS authentication message.

        " } }, "StartUserImportJobRequest": { "base": "

        Represents the request to start the user import job.

        ", "refs": { } }, "StartUserImportJobResponse": { "base": "

        Represents the response from the server to the request to start the user import job.

        ", "refs": { } }, "StatusType": { "base": null, "refs": { "UserPoolDescriptionType$Status": "

        The user pool status in a user pool description.

        ", "UserPoolType$Status": "

        The status of a user pool.

        " } }, "StopUserImportJobRequest": { "base": "

        Represents the request to stop the user import job.

        ", "refs": { } }, "StopUserImportJobResponse": { "base": "

        Represents the response from the server to the request to stop the user import job.

        ", "refs": { } }, "StringAttributeConstraintsType": { "base": "

        The type of constraints associated with an attribute of the string type.

        ", "refs": { "SchemaAttributeType$StringAttributeConstraints": "

        Specifies the constraints for an attribute of the string type.

        " } }, "StringType": { "base": null, "refs": { "AuthParametersType$key": null, "AuthParametersType$value": null, "AuthenticationResultType$TokenType": "

        The token type of the authentication result.

        ", "ChallengeParametersType$key": null, "ChallengeParametersType$value": null, "ChallengeResponsesType$key": null, "ChallengeResponsesType$value": null, "ClientMetadataType$key": null, "ClientMetadataType$value": null, "CodeDeliveryDetailsType$Destination": "

        The destination for the code delivery details.

        ", "DeviceSecretVerifierConfigType$PasswordVerifier": "

        The password verifier.

        ", "DeviceSecretVerifierConfigType$Salt": "

        The salt.

        ", "ListOfStringTypes$member": null, "NewDeviceMetadataType$DeviceGroupKey": "

        The device group key.

        ", "NumberAttributeConstraintsType$MinValue": "

        The minimum value of an attribute that is of the number data type.

        ", "NumberAttributeConstraintsType$MaxValue": "

        The maximum value of an attribute that is of the number data type.

        ", "SmsConfigurationType$ExternalId": "

        The external ID.

        ", "StringAttributeConstraintsType$MinLength": "

        The minimum length of an attribute value of the string type.

        ", "StringAttributeConstraintsType$MaxLength": "

        The maximum length of an attribute value of the string type.

        ", "UserPoolType$SmsConfigurationFailure": "

        The reason why the SMS configuration cannot send the message(s) to your users.

        ", "UserPoolType$EmailConfigurationFailure": "

        The reason why the email configuration cannot send the messages to your users.

        " } }, "TokenModelType": { "base": null, "refs": { "AuthenticationResultType$AccessToken": "

        The access token of the authentication result.

        ", "AuthenticationResultType$RefreshToken": "

        The refresh token of the authentication result.

        ", "AuthenticationResultType$IdToken": "

        The ID token of the authentication result.

        ", "ChangePasswordRequest$AccessToken": "

        The access token in the change password request.

        ", "ConfirmDeviceRequest$AccessToken": "

        The access token.

        ", "DeleteUserAttributesRequest$AccessToken": "

        The access token used in the request to delete user attributes.

        ", "DeleteUserRequest$AccessToken": "

        The access token from a request to delete a user.

        ", "ForgetDeviceRequest$AccessToken": "

        The access token for the forgotten device request.

        ", "GetDeviceRequest$AccessToken": "

        The access token.

        ", "GetUserAttributeVerificationCodeRequest$AccessToken": "

        The access token returned by the server response to get the user attribute verification code.

        ", "GetUserRequest$AccessToken": "

        The access token returned by the server response to get information about the user.

        ", "GlobalSignOutRequest$AccessToken": "

        The access token.

        ", "ListDevicesRequest$AccessToken": "

        The access tokens for the request to list devices.

        ", "SetUserSettingsRequest$AccessToken": "

        The access token for the set user settings request.

        ", "UpdateDeviceStatusRequest$AccessToken": "

        The access token.

        ", "UpdateUserAttributesRequest$AccessToken": "

        The access token for the request to update user attributes.

        ", "VerifyUserAttributeRequest$AccessToken": "

        Represents the access token of the request to verify user attributes.

        " } }, "TooManyFailedAttemptsException": { "base": "

        This exception gets thrown when the user has made too many failed attempts for a given action (e.g., sign in).

        ", "refs": { } }, "TooManyRequestsException": { "base": "

        This exception gets thrown when the user has made too many requests for a given operation.

        ", "refs": { } }, "UnexpectedLambdaException": { "base": "

        This exception gets thrown when the Amazon Cognito service encounters an unexpected exception with the AWS Lambda service.

        ", "refs": { } }, "UnsupportedUserStateException": { "base": "

        The request failed because the user is in an unsupported state.

        ", "refs": { } }, "UpdateDeviceStatusRequest": { "base": "

        Represents the request to update the device status.

        ", "refs": { } }, "UpdateDeviceStatusResponse": { "base": "

        The response to the request to update the device status.

        ", "refs": { } }, "UpdateUserAttributesRequest": { "base": "

        Represents the request to update user attributes.

        ", "refs": { } }, "UpdateUserAttributesResponse": { "base": "

        Represents the response from the server for the request to update user attributes.

        ", "refs": { } }, "UpdateUserPoolClientRequest": { "base": "

        Represents the request to update the user pool client.

        ", "refs": { } }, "UpdateUserPoolClientResponse": { "base": "

        Represents the response from the server to the request to update the user pool client.

        ", "refs": { } }, "UpdateUserPoolRequest": { "base": "

        Represents the request to update the user pool.

        ", "refs": { } }, "UpdateUserPoolResponse": { "base": "

        Represents the response from the server when you make a request to update the user pool.

        ", "refs": { } }, "UserFilterType": { "base": null, "refs": { "ListUsersRequest$Filter": "

        The filter for the list users request.

        " } }, "UserImportInProgressException": { "base": "

        This exception is thrown when you are trying to modify a user pool while a user import job is in progress for that pool.

        ", "refs": { } }, "UserImportJobIdType": { "base": null, "refs": { "DescribeUserImportJobRequest$JobId": "

        The job ID for the user import job.

        ", "StartUserImportJobRequest$JobId": "

        The job ID for the user import job.

        ", "StopUserImportJobRequest$JobId": "

        The job ID for the user import job.

        ", "UserImportJobType$JobId": "

        The job ID for the user import job.

        " } }, "UserImportJobNameType": { "base": null, "refs": { "CreateUserImportJobRequest$JobName": "

        The job name for the user import job.

        ", "UserImportJobType$JobName": "

        The job name for the user import job.

        " } }, "UserImportJobStatusType": { "base": null, "refs": { "UserImportJobType$Status": "

        The status of the user import job. One of the following:

        • Created - The job was created but not started.

        • Pending - A transition state. You have started the job, but it has not begun importing users yet.

        • InProgress - The job has started, and users are being imported.

        • Stopping - You have stopped the job, but the job has not stopped importing users yet.

        • Stopped - You have stopped the job, and the job has stopped importing users.

        • Succeeded - The job has completed successfully.

        • Failed - The job has stopped due to an error.

        • Expired - You created a job, but did not start the job within 24-48 hours. All data associated with the job was deleted, and the job cannot be started.

        " } }, "UserImportJobType": { "base": "

        The user import job type.

        ", "refs": { "CreateUserImportJobResponse$UserImportJob": "

        The job object that represents the user import job.

        ", "DescribeUserImportJobResponse$UserImportJob": "

        The job object that represents the user import job.

        ", "StartUserImportJobResponse$UserImportJob": "

        The job object that represents the user import job.

        ", "StopUserImportJobResponse$UserImportJob": "

        The job object that represents the user import job.

        ", "UserImportJobsListType$member": null } }, "UserImportJobsListType": { "base": null, "refs": { "ListUserImportJobsResponse$UserImportJobs": "

        The user import jobs.

        " } }, "UserLambdaValidationException": { "base": "

        This exception gets thrown when the Amazon Cognito service encounters a user validation exception with the AWS Lambda service.

        ", "refs": { } }, "UserNotConfirmedException": { "base": "

        This exception is thrown when a user is not confirmed successfully.

        ", "refs": { } }, "UserNotFoundException": { "base": "

        This exception is thrown when a user is not found.

        ", "refs": { } }, "UserPoolClientDescription": { "base": "

        The description of the user poool client.

        ", "refs": { "UserPoolClientListType$member": null } }, "UserPoolClientListType": { "base": null, "refs": { "ListUserPoolClientsResponse$UserPoolClients": "

        The user pool clients in the response that lists user pool clients.

        " } }, "UserPoolClientType": { "base": "

        A user pool of the client type.

        ", "refs": { "CreateUserPoolClientResponse$UserPoolClient": "

        The user pool client that was just created.

        ", "DescribeUserPoolClientResponse$UserPoolClient": "

        The user pool client from a server response to describe the user pool client.

        ", "UpdateUserPoolClientResponse$UserPoolClient": "

        The user pool client value from the response from the server when an update user pool client request is made.

        " } }, "UserPoolDescriptionType": { "base": "

        A user pool description.

        ", "refs": { "UserPoolListType$member": null } }, "UserPoolIdType": { "base": null, "refs": { "AddCustomAttributesRequest$UserPoolId": "

        The user pool ID for the user pool where you want to add custom attributes.

        ", "AdminConfirmSignUpRequest$UserPoolId": "

        The user pool ID for which you want to confirm user registration.

        ", "AdminCreateUserRequest$UserPoolId": "

        The user pool ID for the user pool where the user will be created.

        ", "AdminDeleteUserAttributesRequest$UserPoolId": "

        The user pool ID for the user pool where you want to delete user attributes.

        ", "AdminDeleteUserRequest$UserPoolId": "

        The user pool ID for the user pool where you want to delete the user.

        ", "AdminDisableUserRequest$UserPoolId": "

        The user pool ID for the user pool where you want to disable the user.

        ", "AdminEnableUserRequest$UserPoolId": "

        The user pool ID for the user pool where you want to enable the user.

        ", "AdminForgetDeviceRequest$UserPoolId": "

        The user pool ID.

        ", "AdminGetDeviceRequest$UserPoolId": "

        The user pool ID.

        ", "AdminGetUserRequest$UserPoolId": "

        The user pool ID for the user pool where you want to get information about the user.

        ", "AdminInitiateAuthRequest$UserPoolId": "

        The ID of the Amazon Cognito user pool.

        ", "AdminListDevicesRequest$UserPoolId": "

        The user pool ID.

        ", "AdminResetUserPasswordRequest$UserPoolId": "

        The user pool ID for the user pool where you want to reset the user's password.

        ", "AdminRespondToAuthChallengeRequest$UserPoolId": "

        The ID of the Amazon Cognito user pool.

        ", "AdminSetUserSettingsRequest$UserPoolId": "

        The user pool ID for the user pool where you want to set the user's settings, such as MFA options.

        ", "AdminUpdateDeviceStatusRequest$UserPoolId": "

        The user pool ID>

        ", "AdminUpdateUserAttributesRequest$UserPoolId": "

        The user pool ID for the user pool where you want to update user attributes.

        ", "AdminUserGlobalSignOutRequest$UserPoolId": "

        The user pool ID.

        ", "CreateUserImportJobRequest$UserPoolId": "

        The user pool ID for the user pool that the users are being imported into.

        ", "CreateUserPoolClientRequest$UserPoolId": "

        The user pool ID for the user pool where you want to create a user pool client.

        ", "DeleteUserPoolClientRequest$UserPoolId": "

        The user pool ID for the user pool where you want to delete the client.

        ", "DeleteUserPoolRequest$UserPoolId": "

        The user pool ID for the user pool you want to delete.

        ", "DescribeUserImportJobRequest$UserPoolId": "

        The user pool ID for the user pool that the users are being imported into.

        ", "DescribeUserPoolClientRequest$UserPoolId": "

        The user pool ID for the user pool you want to describe.

        ", "DescribeUserPoolRequest$UserPoolId": "

        The user pool ID for the user pool you want to describe.

        ", "GetCSVHeaderRequest$UserPoolId": "

        The user pool ID for the user pool that the users are to be imported into.

        ", "GetCSVHeaderResponse$UserPoolId": "

        The user pool ID for the user pool that the users are to be imported into.

        ", "ListUserImportJobsRequest$UserPoolId": "

        The user pool ID for the user pool that the users are being imported into.

        ", "ListUserPoolClientsRequest$UserPoolId": "

        The user pool ID for the user pool where you want to list user pool clients.

        ", "ListUsersRequest$UserPoolId": "

        The user pool ID for which you want to list users.

        ", "StartUserImportJobRequest$UserPoolId": "

        The user pool ID for the user pool that the users are being imported into.

        ", "StopUserImportJobRequest$UserPoolId": "

        The user pool ID for the user pool that the users are being imported into.

        ", "UpdateUserPoolClientRequest$UserPoolId": "

        The user pool ID for the user pool where you want to update the user pool client.

        ", "UpdateUserPoolRequest$UserPoolId": "

        The user pool ID for the user pool you want to update.

        ", "UserImportJobType$UserPoolId": "

        The user pool ID for the user pool that the users are being imported into.

        ", "UserPoolClientDescription$UserPoolId": "

        The user pool ID for the user pool where you want to describe the user pool client.

        ", "UserPoolClientType$UserPoolId": "

        The user pool ID for the user pool client.

        ", "UserPoolDescriptionType$Id": "

        The ID in a user pool description.

        ", "UserPoolType$Id": "

        The ID of the user pool.

        " } }, "UserPoolListType": { "base": null, "refs": { "ListUserPoolsResponse$UserPools": "

        The user pools from the response to list users.

        " } }, "UserPoolMfaType": { "base": null, "refs": { "CreateUserPoolRequest$MfaConfiguration": "

        Specifies MFA configuration details.

        ", "UpdateUserPoolRequest$MfaConfiguration": "

        Can be one of the following values:

        • OFF - MFA tokens are not required and cannot be specified during user registration.

        • ON - MFA tokens are required for all user registrations. You can only specify required when you are initially creating a user pool.

        • OPTIONAL - Users have the option when registering to create an MFA token.

        ", "UserPoolType$MfaConfiguration": "

        Can be one of the following values:

        • OFF - MFA tokens are not required and cannot be specified during user registration.

        • ON - MFA tokens are required for all user registrations. You can only specify required when you are initially creating a user pool.

        • OPTIONAL - Users have the option when registering to create an MFA token.

        " } }, "UserPoolNameType": { "base": null, "refs": { "CreateUserPoolRequest$PoolName": "

        A string used to name the user pool.

        ", "UserPoolDescriptionType$Name": "

        The name in a user pool description.

        ", "UserPoolType$Name": "

        The name of the user pool.

        " } }, "UserPoolPolicyType": { "base": "

        The type of policy in a user pool.

        ", "refs": { "CreateUserPoolRequest$Policies": "

        The policies associated with the new user pool.

        ", "UpdateUserPoolRequest$Policies": "

        A container with the policies you wish to update in a user pool.

        ", "UserPoolType$Policies": "

        A container describing the policies associated with a user pool.

        " } }, "UserPoolType": { "base": "

        A container with information about the user pool type.

        ", "refs": { "CreateUserPoolResponse$UserPool": "

        A container for the user pool details.

        ", "DescribeUserPoolResponse$UserPool": "

        The container of metadata returned by the server to describe the pool.

        " } }, "UserStatusType": { "base": null, "refs": { "AdminGetUserResponse$UserStatus": "

        The user status. Can be one of the following:

        • UNCONFIRMED - User has been created but not confirmed.

        • CONFIRMED - User has been confirmed.

        • ARCHIVED - User is no longer active.

        • COMPROMISED - User is disabled due to a potential security threat.

        • UNKNOWN - User status is not known.

        ", "UserType$UserStatus": "

        The user status. Can be one of the following:

        • UNCONFIRMED - User has been created but not confirmed.

        • CONFIRMED - User has been confirmed.

        • ARCHIVED - User is no longer active.

        • COMPROMISED - User is disabled due to a potential security threat.

        • UNKNOWN - User status is not known.

        " } }, "UserType": { "base": "

        The user type.

        ", "refs": { "AdminCreateUserResponse$User": "

        The user returned in the request to create a new user.

        ", "UsersListType$member": null } }, "UsernameExistsException": { "base": "

        This exception is thrown when Amazon Cognito encounters a user name that already exists in the user pool.

        ", "refs": { } }, "UsernameType": { "base": null, "refs": { "AdminConfirmSignUpRequest$Username": "

        The user name for which you want to confirm user registration.

        ", "AdminCreateUserRequest$Username": "

        The username for the user. Must be unique within the user pool. Must be a UTF-8 string between 1 and 128 characters. After the user is created, the username cannot be changed.

        ", "AdminDeleteUserAttributesRequest$Username": "

        The user name of the user from which you would like to delete attributes.

        ", "AdminDeleteUserRequest$Username": "

        The user name of the user you wish to delete.

        ", "AdminDisableUserRequest$Username": "

        The user name of the user you wish to disable.

        ", "AdminEnableUserRequest$Username": "

        The user name of the user you wish to ebable.

        ", "AdminForgetDeviceRequest$Username": "

        The user name.

        ", "AdminGetDeviceRequest$Username": "

        The user name.

        ", "AdminGetUserRequest$Username": "

        The user name of the user you wish to retrieve.

        ", "AdminGetUserResponse$Username": "

        The user name of the user about whom you are receiving information.

        ", "AdminListDevicesRequest$Username": "

        The user name.

        ", "AdminResetUserPasswordRequest$Username": "

        The user name of the user whose password you wish to reset.

        ", "AdminSetUserSettingsRequest$Username": "

        The user name of the user for whom you wish to set user settings.

        ", "AdminUpdateDeviceStatusRequest$Username": "

        The user name.

        ", "AdminUpdateUserAttributesRequest$Username": "

        The user name of the user for whom you want to update user attributes.

        ", "AdminUserGlobalSignOutRequest$Username": "

        The user name.

        ", "ConfirmForgotPasswordRequest$Username": "

        The user name of the user for whom you want to enter a code to retrieve a forgotten password.

        ", "ConfirmSignUpRequest$Username": "

        The user name of the user whose registration you wish to confirm.

        ", "ForgotPasswordRequest$Username": "

        The user name of the user for whom you want to enter a code to retrieve a forgotten password.

        ", "GetUserResponse$Username": "

        The user name of the user you wish to retrieve from the get user request.

        ", "ResendConfirmationCodeRequest$Username": "

        The user name of the user to whom you wish to resend a confirmation code.

        ", "SignUpRequest$Username": "

        The user name of the user you wish to register.

        ", "UserType$Username": "

        The user name of the user you wish to describe.

        " } }, "UsersListType": { "base": null, "refs": { "ListUsersResponse$Users": "

        The users returned in the request to list users.

        " } }, "VerifiedAttributeType": { "base": null, "refs": { "VerifiedAttributesListType$member": null } }, "VerifiedAttributesListType": { "base": null, "refs": { "CreateUserPoolRequest$AutoVerifiedAttributes": "

        The attributes to be auto-verified. Possible values: email, phone_number.

        ", "UpdateUserPoolRequest$AutoVerifiedAttributes": "

        The attributes that are automatically verified when the Amazon Cognito service makes a request to update user pools.

        ", "UserPoolType$AutoVerifiedAttributes": "

        Specifies the attributes that are auto-verified in a user pool.

        " } }, "VerifyUserAttributeRequest": { "base": "

        Represents the request to verify user attributes.

        ", "refs": { } }, "VerifyUserAttributeResponse": { "base": "

        A container representing the response from the server from the request to verify user attributes.

        ", "refs": { } } } } aws-sdk-go-1.4.22/models/apis/cognito-idp/2016-04-18/examples-1.json000066400000000000000000000000541300374646400241230ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/cognito-sync/000077500000000000000000000000001300374646400204165ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cognito-sync/2014-06-30/000077500000000000000000000000001300374646400214475ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/cognito-sync/2014-06-30/api-2.json000066400000000000000000001356171300374646400232670ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2014-06-30", "endpointPrefix":"cognito-sync", "jsonVersion":"1.1", "serviceFullName":"Amazon Cognito Sync", "signatureVersion":"v4", "protocol":"rest-json" }, "operations":{ "BulkPublish":{ "name":"BulkPublish", "http":{ "method":"POST", "requestUri":"/identitypools/{IdentityPoolId}/bulkpublish", "responseCode":200 }, "input":{"shape":"BulkPublishRequest"}, "output":{"shape":"BulkPublishResponse"}, "errors":[ { "shape":"NotAuthorizedException", "error":{ "code":"NotAuthorizedError", "httpStatusCode":403, "senderFault":true }, "exception":true }, { "shape":"InvalidParameterException", "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, { "shape":"InternalErrorException", "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true }, { "shape":"DuplicateRequestException", "error":{ "code":"DuplicateRequest", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"AlreadyStreamedException", "error":{ "code":"AlreadyStreamed", "httpStatusCode":400, "senderFault":true }, "exception":true } ] }, "DeleteDataset":{ "name":"DeleteDataset", "http":{ "method":"DELETE", "requestUri":"/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}", "responseCode":200 }, "input":{"shape":"DeleteDatasetRequest"}, "output":{"shape":"DeleteDatasetResponse"}, "errors":[ { "shape":"NotAuthorizedException", "error":{ "code":"NotAuthorizedError", "httpStatusCode":403, "senderFault":true }, "exception":true }, { "shape":"InvalidParameterException", "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, { "shape":"InternalErrorException", "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true }, { "shape":"TooManyRequestsException", "error":{ "code":"TooManyRequests", "httpStatusCode":429, "senderFault":true }, "exception":true }, { "shape":"ResourceConflictException", "error":{ "code":"ResourceConflict", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "DescribeDataset":{ "name":"DescribeDataset", "http":{ "method":"GET", "requestUri":"/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}", "responseCode":200 }, "input":{"shape":"DescribeDatasetRequest"}, "output":{"shape":"DescribeDatasetResponse"}, "errors":[ { "shape":"NotAuthorizedException", "error":{ "code":"NotAuthorizedError", "httpStatusCode":403, "senderFault":true }, "exception":true }, { "shape":"InvalidParameterException", "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, { "shape":"InternalErrorException", "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true }, { "shape":"TooManyRequestsException", "error":{ "code":"TooManyRequests", "httpStatusCode":429, "senderFault":true }, "exception":true } ] }, "DescribeIdentityPoolUsage":{ "name":"DescribeIdentityPoolUsage", "http":{ "method":"GET", "requestUri":"/identitypools/{IdentityPoolId}", "responseCode":200 }, "input":{"shape":"DescribeIdentityPoolUsageRequest"}, "output":{"shape":"DescribeIdentityPoolUsageResponse"}, "errors":[ { "shape":"NotAuthorizedException", "error":{ "code":"NotAuthorizedError", "httpStatusCode":403, "senderFault":true }, "exception":true }, { "shape":"InvalidParameterException", "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, { "shape":"InternalErrorException", "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true }, { "shape":"TooManyRequestsException", "error":{ "code":"TooManyRequests", "httpStatusCode":429, "senderFault":true }, "exception":true } ] }, "DescribeIdentityUsage":{ "name":"DescribeIdentityUsage", "http":{ "method":"GET", "requestUri":"/identitypools/{IdentityPoolId}/identities/{IdentityId}", "responseCode":200 }, "input":{"shape":"DescribeIdentityUsageRequest"}, "output":{"shape":"DescribeIdentityUsageResponse"}, "errors":[ { "shape":"NotAuthorizedException", "error":{ "code":"NotAuthorizedError", "httpStatusCode":403, "senderFault":true }, "exception":true }, { "shape":"InvalidParameterException", "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, { "shape":"InternalErrorException", "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true }, { "shape":"TooManyRequestsException", "error":{ "code":"TooManyRequests", "httpStatusCode":429, "senderFault":true }, "exception":true } ] }, "GetBulkPublishDetails":{ "name":"GetBulkPublishDetails", "http":{ "method":"POST", "requestUri":"/identitypools/{IdentityPoolId}/getBulkPublishDetails", "responseCode":200 }, "input":{"shape":"GetBulkPublishDetailsRequest"}, "output":{"shape":"GetBulkPublishDetailsResponse"}, "errors":[ { "shape":"NotAuthorizedException", "error":{ "code":"NotAuthorizedError", "httpStatusCode":403, "senderFault":true }, "exception":true }, { "shape":"InvalidParameterException", "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, { "shape":"InternalErrorException", "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true } ] }, "GetCognitoEvents":{ "name":"GetCognitoEvents", "http":{ "method":"GET", "requestUri":"/identitypools/{IdentityPoolId}/events", "responseCode":200 }, "input":{"shape":"GetCognitoEventsRequest"}, "output":{"shape":"GetCognitoEventsResponse"}, "errors":[ { "shape":"InvalidParameterException", "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, { "shape":"NotAuthorizedException", "error":{ "code":"NotAuthorizedError", "httpStatusCode":403, "senderFault":true }, "exception":true }, { "shape":"InternalErrorException", "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true }, { "shape":"TooManyRequestsException", "error":{ "code":"TooManyRequests", "httpStatusCode":429, "senderFault":true }, "exception":true } ] }, "GetIdentityPoolConfiguration":{ "name":"GetIdentityPoolConfiguration", "http":{ "method":"GET", "requestUri":"/identitypools/{IdentityPoolId}/configuration", "responseCode":200 }, "input":{"shape":"GetIdentityPoolConfigurationRequest"}, "output":{"shape":"GetIdentityPoolConfigurationResponse"}, "errors":[ { "shape":"NotAuthorizedException", "error":{ "code":"NotAuthorizedError", "httpStatusCode":403, "senderFault":true }, "exception":true }, { "shape":"InvalidParameterException", "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, { "shape":"InternalErrorException", "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true }, { "shape":"TooManyRequestsException", "error":{ "code":"TooManyRequests", "httpStatusCode":429, "senderFault":true }, "exception":true } ] }, "ListDatasets":{ "name":"ListDatasets", "http":{ "method":"GET", "requestUri":"/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets", "responseCode":200 }, "input":{"shape":"ListDatasetsRequest"}, "output":{"shape":"ListDatasetsResponse"}, "errors":[ { "shape":"NotAuthorizedException", "error":{ "code":"NotAuthorizedError", "httpStatusCode":403, "senderFault":true }, "exception":true }, { "shape":"InvalidParameterException", "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"InternalErrorException", "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true }, { "shape":"TooManyRequestsException", "error":{ "code":"TooManyRequests", "httpStatusCode":429, "senderFault":true }, "exception":true } ] }, "ListIdentityPoolUsage":{ "name":"ListIdentityPoolUsage", "http":{ "method":"GET", "requestUri":"/identitypools", "responseCode":200 }, "input":{"shape":"ListIdentityPoolUsageRequest"}, "output":{"shape":"ListIdentityPoolUsageResponse"}, "errors":[ { "shape":"NotAuthorizedException", "error":{ "code":"NotAuthorizedError", "httpStatusCode":403, "senderFault":true }, "exception":true }, { "shape":"InvalidParameterException", "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"InternalErrorException", "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true }, { "shape":"TooManyRequestsException", "error":{ "code":"TooManyRequests", "httpStatusCode":429, "senderFault":true }, "exception":true } ] }, "ListRecords":{ "name":"ListRecords", "http":{ "method":"GET", "requestUri":"/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}/records", "responseCode":200 }, "input":{"shape":"ListRecordsRequest"}, "output":{"shape":"ListRecordsResponse"}, "errors":[ { "shape":"InvalidParameterException", "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"NotAuthorizedException", "error":{ "code":"NotAuthorizedError", "httpStatusCode":403, "senderFault":true }, "exception":true }, { "shape":"TooManyRequestsException", "error":{ "code":"TooManyRequests", "httpStatusCode":429, "senderFault":true }, "exception":true }, { "shape":"InternalErrorException", "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true } ] }, "RegisterDevice":{ "name":"RegisterDevice", "http":{ "method":"POST", "requestUri":"/identitypools/{IdentityPoolId}/identity/{IdentityId}/device", "responseCode":200 }, "input":{"shape":"RegisterDeviceRequest"}, "output":{"shape":"RegisterDeviceResponse"}, "errors":[ { "shape":"NotAuthorizedException", "error":{ "code":"NotAuthorizedError", "httpStatusCode":403, "senderFault":true }, "exception":true }, { "shape":"InvalidParameterException", "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, { "shape":"InternalErrorException", "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true }, { "shape":"InvalidConfigurationException", "error":{ "code":"InvalidConfiguration", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"TooManyRequestsException", "error":{ "code":"TooManyRequests", "httpStatusCode":429, "senderFault":true }, "exception":true } ] }, "SetCognitoEvents":{ "name":"SetCognitoEvents", "http":{ "method":"POST", "requestUri":"/identitypools/{IdentityPoolId}/events", "responseCode":200 }, "input":{"shape":"SetCognitoEventsRequest"}, "errors":[ { "shape":"InvalidParameterException", "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, { "shape":"NotAuthorizedException", "error":{ "code":"NotAuthorizedError", "httpStatusCode":403, "senderFault":true }, "exception":true }, { "shape":"InternalErrorException", "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true }, { "shape":"TooManyRequestsException", "error":{ "code":"TooManyRequests", "httpStatusCode":429, "senderFault":true }, "exception":true } ] }, "SetIdentityPoolConfiguration":{ "name":"SetIdentityPoolConfiguration", "http":{ "method":"POST", "requestUri":"/identitypools/{IdentityPoolId}/configuration", "responseCode":200 }, "input":{"shape":"SetIdentityPoolConfigurationRequest"}, "output":{"shape":"SetIdentityPoolConfigurationResponse"}, "errors":[ { "shape":"NotAuthorizedException", "error":{ "code":"NotAuthorizedError", "httpStatusCode":403, "senderFault":true }, "exception":true }, { "shape":"InvalidParameterException", "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, { "shape":"InternalErrorException", "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true }, { "shape":"TooManyRequestsException", "error":{ "code":"TooManyRequests", "httpStatusCode":429, "senderFault":true }, "exception":true }, { "shape":"ConcurrentModificationException", "error":{ "code":"ConcurrentModification", "httpStatusCode":400, "senderFault":true }, "exception":true } ] }, "SubscribeToDataset":{ "name":"SubscribeToDataset", "http":{ "method":"POST", "requestUri":"/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}/subscriptions/{DeviceId}", "responseCode":200 }, "input":{"shape":"SubscribeToDatasetRequest"}, "output":{"shape":"SubscribeToDatasetResponse"}, "errors":[ { "shape":"NotAuthorizedException", "error":{ "code":"NotAuthorizedError", "httpStatusCode":403, "senderFault":true }, "exception":true }, { "shape":"InvalidParameterException", "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, { "shape":"InternalErrorException", "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true }, { "shape":"InvalidConfigurationException", "error":{ "code":"InvalidConfiguration", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"TooManyRequestsException", "error":{ "code":"TooManyRequests", "httpStatusCode":429, "senderFault":true }, "exception":true } ] }, "UnsubscribeFromDataset":{ "name":"UnsubscribeFromDataset", "http":{ "method":"DELETE", "requestUri":"/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}/subscriptions/{DeviceId}", "responseCode":200 }, "input":{"shape":"UnsubscribeFromDatasetRequest"}, "output":{"shape":"UnsubscribeFromDatasetResponse"}, "errors":[ { "shape":"NotAuthorizedException", "error":{ "code":"NotAuthorizedError", "httpStatusCode":403, "senderFault":true }, "exception":true }, { "shape":"InvalidParameterException", "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, { "shape":"InternalErrorException", "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true }, { "shape":"InvalidConfigurationException", "error":{ "code":"InvalidConfiguration", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"TooManyRequestsException", "error":{ "code":"TooManyRequests", "httpStatusCode":429, "senderFault":true }, "exception":true } ] }, "UpdateRecords":{ "name":"UpdateRecords", "http":{ "method":"POST", "requestUri":"/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}", "responseCode":200 }, "input":{"shape":"UpdateRecordsRequest"}, "output":{"shape":"UpdateRecordsResponse"}, "errors":[ { "shape":"InvalidParameterException", "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"LimitExceededException", "error":{ "code":"LimitExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"NotAuthorizedException", "error":{ "code":"NotAuthorizedError", "httpStatusCode":403, "senderFault":true }, "exception":true }, { "shape":"ResourceNotFoundException", "error":{ "code":"ResourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, { "shape":"ResourceConflictException", "error":{ "code":"ResourceConflict", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"InvalidLambdaFunctionOutputException", "error":{ "code":"InvalidLambdaFunctionOutput", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"LambdaThrottledException", "error":{ "code":"LambdaThrottled", "httpStatusCode":429, "senderFault":true }, "exception":true }, { "shape":"TooManyRequestsException", "error":{ "code":"TooManyRequests", "httpStatusCode":429, "senderFault":true }, "exception":true }, { "shape":"InternalErrorException", "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true } ] } }, "shapes":{ "AlreadyStreamedException":{ "type":"structure", "required":["message"], "members":{ "message":{"shape":"ExceptionMessage"} }, "error":{ "code":"AlreadyStreamed", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ApplicationArn":{ "type":"string", "pattern":"arn:aws:sns:[-0-9a-z]+:\\d+:app/[A-Z_]+/[a-zA-Z0-9_.-]+" }, "ApplicationArnList":{ "type":"list", "member":{"shape":"ApplicationArn"} }, "AssumeRoleArn":{ "type":"string", "min":20, "max":2048, "pattern":"arn:aws:iam::\\d+:role/.*" }, "Boolean":{"type":"boolean"}, "BulkPublishRequest":{ "type":"structure", "required":["IdentityPoolId"], "members":{ "IdentityPoolId":{ "shape":"IdentityPoolId", "location":"uri", "locationName":"IdentityPoolId" } } }, "BulkPublishResponse":{ "type":"structure", "members":{ "IdentityPoolId":{"shape":"IdentityPoolId"} } }, "BulkPublishStatus":{ "type":"string", "enum":[ "NOT_STARTED", "IN_PROGRESS", "FAILED", "SUCCEEDED" ] }, "ClientContext":{"type":"string"}, "CognitoEventType":{"type":"string"}, "CognitoStreams":{ "type":"structure", "members":{ "StreamName":{"shape":"StreamName"}, "RoleArn":{"shape":"AssumeRoleArn"}, "StreamingStatus":{"shape":"StreamingStatus"} } }, "ConcurrentModificationException":{ "type":"structure", "required":["message"], "members":{ "message":{"shape":"String"} }, "error":{ "code":"ConcurrentModification", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Dataset":{ "type":"structure", "members":{ "IdentityId":{"shape":"IdentityId"}, "DatasetName":{"shape":"DatasetName"}, "CreationDate":{"shape":"Date"}, "LastModifiedDate":{"shape":"Date"}, "LastModifiedBy":{"shape":"String"}, "DataStorage":{"shape":"Long"}, "NumRecords":{"shape":"Long"} } }, "DatasetList":{ "type":"list", "member":{"shape":"Dataset"} }, "DatasetName":{ "type":"string", "min":1, "max":128, "pattern":"[a-zA-Z0-9_.:-]+" }, "Date":{"type":"timestamp"}, "DeleteDatasetRequest":{ "type":"structure", "required":[ "IdentityPoolId", "IdentityId", "DatasetName" ], "members":{ "IdentityPoolId":{ "shape":"IdentityPoolId", "location":"uri", "locationName":"IdentityPoolId" }, "IdentityId":{ "shape":"IdentityId", "location":"uri", "locationName":"IdentityId" }, "DatasetName":{ "shape":"DatasetName", "location":"uri", "locationName":"DatasetName" } } }, "DeleteDatasetResponse":{ "type":"structure", "members":{ "Dataset":{"shape":"Dataset"} } }, "DescribeDatasetRequest":{ "type":"structure", "required":[ "IdentityPoolId", "IdentityId", "DatasetName" ], "members":{ "IdentityPoolId":{ "shape":"IdentityPoolId", "location":"uri", "locationName":"IdentityPoolId" }, "IdentityId":{ "shape":"IdentityId", "location":"uri", "locationName":"IdentityId" }, "DatasetName":{ "shape":"DatasetName", "location":"uri", "locationName":"DatasetName" } } }, "DescribeDatasetResponse":{ "type":"structure", "members":{ "Dataset":{"shape":"Dataset"} } }, "DescribeIdentityPoolUsageRequest":{ "type":"structure", "required":["IdentityPoolId"], "members":{ "IdentityPoolId":{ "shape":"IdentityPoolId", "location":"uri", "locationName":"IdentityPoolId" } } }, "DescribeIdentityPoolUsageResponse":{ "type":"structure", "members":{ "IdentityPoolUsage":{"shape":"IdentityPoolUsage"} } }, "DescribeIdentityUsageRequest":{ "type":"structure", "required":[ "IdentityPoolId", "IdentityId" ], "members":{ "IdentityPoolId":{ "shape":"IdentityPoolId", "location":"uri", "locationName":"IdentityPoolId" }, "IdentityId":{ "shape":"IdentityId", "location":"uri", "locationName":"IdentityId" } } }, "DescribeIdentityUsageResponse":{ "type":"structure", "members":{ "IdentityUsage":{"shape":"IdentityUsage"} } }, "DeviceId":{ "type":"string", "min":1, "max":256 }, "DuplicateRequestException":{ "type":"structure", "required":["message"], "members":{ "message":{"shape":"ExceptionMessage"} }, "error":{ "code":"DuplicateRequest", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Events":{ "type":"map", "key":{"shape":"CognitoEventType"}, "value":{"shape":"LambdaFunctionArn"}, "max":1 }, "ExceptionMessage":{"type":"string"}, "GetBulkPublishDetailsRequest":{ "type":"structure", "required":["IdentityPoolId"], "members":{ "IdentityPoolId":{ "shape":"IdentityPoolId", "location":"uri", "locationName":"IdentityPoolId" } } }, "GetBulkPublishDetailsResponse":{ "type":"structure", "members":{ "IdentityPoolId":{"shape":"IdentityPoolId"}, "BulkPublishStartTime":{"shape":"Date"}, "BulkPublishCompleteTime":{"shape":"Date"}, "BulkPublishStatus":{"shape":"BulkPublishStatus"}, "FailureMessage":{"shape":"String"} } }, "GetCognitoEventsRequest":{ "type":"structure", "required":["IdentityPoolId"], "members":{ "IdentityPoolId":{ "shape":"IdentityPoolId", "location":"uri", "locationName":"IdentityPoolId" } } }, "GetCognitoEventsResponse":{ "type":"structure", "members":{ "Events":{"shape":"Events"} } }, "GetIdentityPoolConfigurationRequest":{ "type":"structure", "required":["IdentityPoolId"], "members":{ "IdentityPoolId":{ "shape":"IdentityPoolId", "location":"uri", "locationName":"IdentityPoolId" } } }, "GetIdentityPoolConfigurationResponse":{ "type":"structure", "members":{ "IdentityPoolId":{"shape":"IdentityPoolId"}, "PushSync":{"shape":"PushSync"}, "CognitoStreams":{"shape":"CognitoStreams"} } }, "IdentityId":{ "type":"string", "min":1, "max":55, "pattern":"[\\w-]+:[0-9a-f-]+" }, "IdentityPoolId":{ "type":"string", "min":1, "max":55, "pattern":"[\\w-]+:[0-9a-f-]+" }, "IdentityPoolUsage":{ "type":"structure", "members":{ "IdentityPoolId":{"shape":"IdentityPoolId"}, "SyncSessionsCount":{"shape":"Long"}, "DataStorage":{"shape":"Long"}, "LastModifiedDate":{"shape":"Date"} } }, "IdentityPoolUsageList":{ "type":"list", "member":{"shape":"IdentityPoolUsage"} }, "IdentityUsage":{ "type":"structure", "members":{ "IdentityId":{"shape":"IdentityId"}, "IdentityPoolId":{"shape":"IdentityPoolId"}, "LastModifiedDate":{"shape":"Date"}, "DatasetCount":{"shape":"Integer"}, "DataStorage":{"shape":"Long"} } }, "Integer":{"type":"integer"}, "IntegerString":{"type":"integer"}, "InternalErrorException":{ "type":"structure", "required":["message"], "members":{ "message":{"shape":"ExceptionMessage"} }, "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true }, "InvalidConfigurationException":{ "type":"structure", "required":["message"], "members":{ "message":{"shape":"ExceptionMessage"} }, "error":{ "code":"InvalidConfiguration", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidLambdaFunctionOutputException":{ "type":"structure", "required":["message"], "members":{ "message":{"shape":"ExceptionMessage"} }, "error":{ "code":"InvalidLambdaFunctionOutput", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidParameterException":{ "type":"structure", "required":["message"], "members":{ "message":{"shape":"ExceptionMessage"} }, "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, "LambdaFunctionArn":{"type":"string"}, "LambdaThrottledException":{ "type":"structure", "required":["message"], "members":{ "message":{"shape":"ExceptionMessage"} }, "error":{ "code":"LambdaThrottled", "httpStatusCode":429, "senderFault":true }, "exception":true }, "LimitExceededException":{ "type":"structure", "required":["message"], "members":{ "message":{"shape":"ExceptionMessage"} }, "error":{ "code":"LimitExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ListDatasetsRequest":{ "type":"structure", "required":[ "IdentityId", "IdentityPoolId" ], "members":{ "IdentityPoolId":{ "shape":"IdentityPoolId", "location":"uri", "locationName":"IdentityPoolId" }, "IdentityId":{ "shape":"IdentityId", "location":"uri", "locationName":"IdentityId" }, "NextToken":{ "shape":"String", "location":"querystring", "locationName":"nextToken" }, "MaxResults":{ "shape":"IntegerString", "location":"querystring", "locationName":"maxResults" } } }, "ListDatasetsResponse":{ "type":"structure", "members":{ "Datasets":{"shape":"DatasetList"}, "Count":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "ListIdentityPoolUsageRequest":{ "type":"structure", "members":{ "NextToken":{ "shape":"String", "location":"querystring", "locationName":"nextToken" }, "MaxResults":{ "shape":"IntegerString", "location":"querystring", "locationName":"maxResults" } } }, "ListIdentityPoolUsageResponse":{ "type":"structure", "members":{ "IdentityPoolUsages":{"shape":"IdentityPoolUsageList"}, "MaxResults":{"shape":"Integer"}, "Count":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "ListRecordsRequest":{ "type":"structure", "required":[ "IdentityPoolId", "IdentityId", "DatasetName" ], "members":{ "IdentityPoolId":{ "shape":"IdentityPoolId", "location":"uri", "locationName":"IdentityPoolId" }, "IdentityId":{ "shape":"IdentityId", "location":"uri", "locationName":"IdentityId" }, "DatasetName":{ "shape":"DatasetName", "location":"uri", "locationName":"DatasetName" }, "LastSyncCount":{ "shape":"Long", "location":"querystring", "locationName":"lastSyncCount" }, "NextToken":{ "shape":"String", "location":"querystring", "locationName":"nextToken" }, "MaxResults":{ "shape":"IntegerString", "location":"querystring", "locationName":"maxResults" }, "SyncSessionToken":{ "shape":"SyncSessionToken", "location":"querystring", "locationName":"syncSessionToken" } } }, "ListRecordsResponse":{ "type":"structure", "members":{ "Records":{"shape":"RecordList"}, "NextToken":{"shape":"String"}, "Count":{"shape":"Integer"}, "DatasetSyncCount":{"shape":"Long"}, "LastModifiedBy":{"shape":"String"}, "MergedDatasetNames":{"shape":"MergedDatasetNameList"}, "DatasetExists":{"shape":"Boolean"}, "DatasetDeletedAfterRequestedSyncCount":{"shape":"Boolean"}, "SyncSessionToken":{"shape":"String"} } }, "Long":{"type":"long"}, "MergedDatasetNameList":{ "type":"list", "member":{"shape":"String"} }, "NotAuthorizedException":{ "type":"structure", "required":["message"], "members":{ "message":{"shape":"ExceptionMessage"} }, "error":{ "code":"NotAuthorizedError", "httpStatusCode":403, "senderFault":true }, "exception":true }, "Operation":{ "type":"string", "enum":[ "replace", "remove" ] }, "Platform":{ "type":"string", "enum":[ "APNS", "APNS_SANDBOX", "GCM", "ADM" ] }, "PushSync":{ "type":"structure", "members":{ "ApplicationArns":{"shape":"ApplicationArnList"}, "RoleArn":{"shape":"AssumeRoleArn"} } }, "PushToken":{"type":"string"}, "Record":{ "type":"structure", "members":{ "Key":{"shape":"RecordKey"}, "Value":{"shape":"RecordValue"}, "SyncCount":{"shape":"Long"}, "LastModifiedDate":{"shape":"Date"}, "LastModifiedBy":{"shape":"String"}, "DeviceLastModifiedDate":{"shape":"Date"} } }, "RecordKey":{ "type":"string", "min":1, "max":1024 }, "RecordList":{ "type":"list", "member":{"shape":"Record"} }, "RecordPatch":{ "type":"structure", "required":[ "Op", "Key", "SyncCount" ], "members":{ "Op":{"shape":"Operation"}, "Key":{"shape":"RecordKey"}, "Value":{"shape":"RecordValue"}, "SyncCount":{"shape":"Long"}, "DeviceLastModifiedDate":{"shape":"Date"} } }, "RecordPatchList":{ "type":"list", "member":{"shape":"RecordPatch"} }, "RecordValue":{ "type":"string", "max":1048575 }, "RegisterDeviceRequest":{ "type":"structure", "required":[ "IdentityPoolId", "IdentityId", "Platform", "Token" ], "members":{ "IdentityPoolId":{ "shape":"IdentityPoolId", "location":"uri", "locationName":"IdentityPoolId" }, "IdentityId":{ "shape":"IdentityId", "location":"uri", "locationName":"IdentityId" }, "Platform":{"shape":"Platform"}, "Token":{"shape":"PushToken"} } }, "RegisterDeviceResponse":{ "type":"structure", "members":{ "DeviceId":{"shape":"DeviceId"} } }, "ResourceConflictException":{ "type":"structure", "required":["message"], "members":{ "message":{"shape":"ExceptionMessage"} }, "error":{ "code":"ResourceConflict", "httpStatusCode":409, "senderFault":true }, "exception":true }, "ResourceNotFoundException":{ "type":"structure", "required":["message"], "members":{ "message":{"shape":"ExceptionMessage"} }, "error":{ "code":"ResourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SetCognitoEventsRequest":{ "type":"structure", "required":[ "IdentityPoolId", "Events" ], "members":{ "IdentityPoolId":{ "shape":"IdentityPoolId", "location":"uri", "locationName":"IdentityPoolId" }, "Events":{"shape":"Events"} } }, "SetIdentityPoolConfigurationRequest":{ "type":"structure", "required":["IdentityPoolId"], "members":{ "IdentityPoolId":{ "shape":"IdentityPoolId", "location":"uri", "locationName":"IdentityPoolId" }, "PushSync":{"shape":"PushSync"}, "CognitoStreams":{"shape":"CognitoStreams"} } }, "SetIdentityPoolConfigurationResponse":{ "type":"structure", "members":{ "IdentityPoolId":{"shape":"IdentityPoolId"}, "PushSync":{"shape":"PushSync"}, "CognitoStreams":{"shape":"CognitoStreams"} } }, "StreamName":{ "type":"string", "min":1, "max":128 }, "StreamingStatus":{ "type":"string", "enum":[ "ENABLED", "DISABLED" ] }, "String":{"type":"string"}, "SubscribeToDatasetRequest":{ "type":"structure", "required":[ "IdentityPoolId", "IdentityId", "DatasetName", "DeviceId" ], "members":{ "IdentityPoolId":{ "shape":"IdentityPoolId", "location":"uri", "locationName":"IdentityPoolId" }, "IdentityId":{ "shape":"IdentityId", "location":"uri", "locationName":"IdentityId" }, "DatasetName":{ "shape":"DatasetName", "location":"uri", "locationName":"DatasetName" }, "DeviceId":{ "shape":"DeviceId", "location":"uri", "locationName":"DeviceId" } } }, "SubscribeToDatasetResponse":{ "type":"structure", "members":{ } }, "SyncSessionToken":{"type":"string"}, "TooManyRequestsException":{ "type":"structure", "required":["message"], "members":{ "message":{"shape":"ExceptionMessage"} }, "error":{ "code":"TooManyRequests", "httpStatusCode":429, "senderFault":true }, "exception":true }, "UnsubscribeFromDatasetRequest":{ "type":"structure", "required":[ "IdentityPoolId", "IdentityId", "DatasetName", "DeviceId" ], "members":{ "IdentityPoolId":{ "shape":"IdentityPoolId", "location":"uri", "locationName":"IdentityPoolId" }, "IdentityId":{ "shape":"IdentityId", "location":"uri", "locationName":"IdentityId" }, "DatasetName":{ "shape":"DatasetName", "location":"uri", "locationName":"DatasetName" }, "DeviceId":{ "shape":"DeviceId", "location":"uri", "locationName":"DeviceId" } } }, "UnsubscribeFromDatasetResponse":{ "type":"structure", "members":{ } }, "UpdateRecordsRequest":{ "type":"structure", "required":[ "IdentityPoolId", "IdentityId", "DatasetName", "SyncSessionToken" ], "members":{ "IdentityPoolId":{ "shape":"IdentityPoolId", "location":"uri", "locationName":"IdentityPoolId" }, "IdentityId":{ "shape":"IdentityId", "location":"uri", "locationName":"IdentityId" }, "DatasetName":{ "shape":"DatasetName", "location":"uri", "locationName":"DatasetName" }, "DeviceId":{"shape":"DeviceId"}, "RecordPatches":{"shape":"RecordPatchList"}, "SyncSessionToken":{"shape":"SyncSessionToken"}, "ClientContext":{ "shape":"ClientContext", "location":"header", "locationName":"x-amz-Client-Context" } } }, "UpdateRecordsResponse":{ "type":"structure", "members":{ "Records":{"shape":"RecordList"} } } } } aws-sdk-go-1.4.22/models/apis/cognito-sync/2014-06-30/docs-2.json000066400000000000000000001053441300374646400234400ustar00rootroot00000000000000{ "version": "2.0", "operations": { "BulkPublish": "

        Initiates a bulk publish of all existing datasets for an Identity Pool to the configured stream. Customers are limited to one successful bulk publish per 24 hours. Bulk publish is an asynchronous request, customers can see the status of the request via the GetBulkPublishDetails operation.

        This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.

        ", "DeleteDataset": "

        Deletes the specific dataset. The dataset will be deleted permanently, and the action can't be undone. Datasets that this dataset was merged with will no longer report the merge. Any subsequent operation on this dataset will result in a ResourceNotFoundException.

        This API can be called with temporary user credentials provided by Cognito Identity or with developer credentials.

        ", "DescribeDataset": "

        Gets meta data about a dataset by identity and dataset name. With Amazon Cognito Sync, each identity has access only to its own data. Thus, the credentials used to make this API call need to have access to the identity data.

        This API can be called with temporary user credentials provided by Cognito Identity or with developer credentials. You should use Cognito Identity credentials to make this API call.

        ", "DescribeIdentityPoolUsage": "

        Gets usage details (for example, data storage) about a particular identity pool.

        This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.

        ", "DescribeIdentityUsage": "

        Gets usage information for an identity, including number of datasets and data usage.

        This API can be called with temporary user credentials provided by Cognito Identity or with developer credentials.

        ", "GetBulkPublishDetails": "

        Get the status of the last BulkPublish operation for an identity pool.

        This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.

        ", "GetCognitoEvents": "

        Gets the events and the corresponding Lambda functions associated with an identity pool.

        This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.

        ", "GetIdentityPoolConfiguration": "

        Gets the configuration settings of an identity pool.

        This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.

        ", "ListDatasets": "

        Lists datasets for an identity. With Amazon Cognito Sync, each identity has access only to its own data. Thus, the credentials used to make this API call need to have access to the identity data.

        ListDatasets can be called with temporary user credentials provided by Cognito Identity or with developer credentials. You should use the Cognito Identity credentials to make this API call.

        ", "ListIdentityPoolUsage": "

        Gets a list of identity pools registered with Cognito.

        ListIdentityPoolUsage can only be called with developer credentials. You cannot make this API call with the temporary user credentials provided by Cognito Identity.

        ", "ListRecords": "

        Gets paginated records, optionally changed after a particular sync count for a dataset and identity. With Amazon Cognito Sync, each identity has access only to its own data. Thus, the credentials used to make this API call need to have access to the identity data.

        ListRecords can be called with temporary user credentials provided by Cognito Identity or with developer credentials. You should use Cognito Identity credentials to make this API call.

        ", "RegisterDevice": "

        Registers a device to receive push sync notifications.

        This API can only be called with temporary credentials provided by Cognito Identity. You cannot call this API with developer credentials.

        ", "SetCognitoEvents": "

        Sets the AWS Lambda function for a given event type for an identity pool. This request only updates the key/value pair specified. Other key/values pairs are not updated. To remove a key value pair, pass a empty value for the particular key.

        This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.

        ", "SetIdentityPoolConfiguration": "

        Sets the necessary configuration for push sync.

        This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.

        ", "SubscribeToDataset": "

        Subscribes to receive notifications when a dataset is modified by another device.

        This API can only be called with temporary credentials provided by Cognito Identity. You cannot call this API with developer credentials.

        ", "UnsubscribeFromDataset": "

        Unsubscribes from receiving notifications when a dataset is modified by another device.

        This API can only be called with temporary credentials provided by Cognito Identity. You cannot call this API with developer credentials.

        ", "UpdateRecords": "

        Posts updates to records and adds and deletes records for a dataset and user.

        The sync count in the record patch is your last known sync count for that record. The server will reject an UpdateRecords request with a ResourceConflictException if you try to patch a record with a new value but a stale sync count.

        For example, if the sync count on the server is 5 for a key called highScore and you try and submit a new highScore with sync count of 4, the request will be rejected. To obtain the current sync count for a record, call ListRecords. On a successful update of the record, the response returns the new sync count for that record. You should present that sync count the next time you try to update that same record. When the record does not exist, specify the sync count as 0.

        This API can be called with temporary user credentials provided by Cognito Identity or with developer credentials.

        " }, "service": "Amazon Cognito Sync

        Amazon Cognito Sync provides an AWS service and client library that enable cross-device syncing of application-related user data. High-level client libraries are available for both iOS and Android. You can use these libraries to persist data locally so that it's available even if the device is offline. Developer credentials don't need to be stored on the mobile device to access the service. You can use Amazon Cognito to obtain a normalized user ID and credentials. User data is persisted in a dataset that can store up to 1 MB of key-value pairs, and you can have up to 20 datasets per user identity.

        With Amazon Cognito Sync, the data stored for each identity is accessible only to credentials assigned to that identity. In order to use the Cognito Sync service, you need to make API calls using credentials retrieved with Amazon Cognito Identity service.

        If you want to use Cognito Sync in an Android or iOS application, you will probably want to make API calls via the AWS Mobile SDK. To learn more, see the Developer Guide for Android and the Developer Guide for iOS.

        ", "shapes": { "AlreadyStreamedException": { "base": "An exception thrown when a bulk publish operation is requested less than 24 hours after a previous bulk publish operation completed successfully.", "refs": { } }, "ApplicationArn": { "base": null, "refs": { "ApplicationArnList$member": null } }, "ApplicationArnList": { "base": null, "refs": { "PushSync$ApplicationArns": "

        List of SNS platform application ARNs that could be used by clients.

        " } }, "AssumeRoleArn": { "base": null, "refs": { "CognitoStreams$RoleArn": "The ARN of the role Amazon Cognito can assume in order to publish to the stream. This role must grant access to Amazon Cognito (cognito-sync) to invoke PutRecord on your Cognito stream.", "PushSync$RoleArn": "

        A role configured to allow Cognito to call SNS on behalf of the developer.

        " } }, "Boolean": { "base": null, "refs": { "ListRecordsResponse$DatasetExists": "Indicates whether the dataset exists.", "ListRecordsResponse$DatasetDeletedAfterRequestedSyncCount": "A boolean value specifying whether to delete the dataset locally." } }, "BulkPublishRequest": { "base": "The input for the BulkPublish operation.", "refs": { } }, "BulkPublishResponse": { "base": "The output for the BulkPublish operation.", "refs": { } }, "BulkPublishStatus": { "base": null, "refs": { "GetBulkPublishDetailsResponse$BulkPublishStatus": "Status of the last bulk publish operation, valid values are:

        NOT_STARTED - No bulk publish has been requested for this identity pool

        IN_PROGRESS - Data is being published to the configured stream

        SUCCEEDED - All data for the identity pool has been published to the configured stream

        FAILED - Some portion of the data has failed to publish, check FailureMessage for the cause.

        " } }, "ClientContext": { "base": null, "refs": { "UpdateRecordsRequest$ClientContext": "Intended to supply a device ID that will populate the lastModifiedBy field referenced in other methods. The ClientContext field is not yet implemented." } }, "CognitoEventType": { "base": null, "refs": { "Events$key": null } }, "CognitoStreams": { "base": "Configuration options for configure Cognito streams.", "refs": { "GetIdentityPoolConfigurationResponse$CognitoStreams": "Options to apply to this identity pool for Amazon Cognito streams.", "SetIdentityPoolConfigurationRequest$CognitoStreams": "Options to apply to this identity pool for Amazon Cognito streams.", "SetIdentityPoolConfigurationResponse$CognitoStreams": "Options to apply to this identity pool for Amazon Cognito streams." } }, "ConcurrentModificationException": { "base": "

        Thrown if there are parallel requests to modify a resource.

        ", "refs": { } }, "Dataset": { "base": "A collection of data for an identity pool. An identity pool can have multiple datasets. A dataset is per identity and can be general or associated with a particular entity in an application (like a saved game). Datasets are automatically created if they don't exist. Data is synced by dataset, and a dataset can hold up to 1MB of key-value pairs.", "refs": { "DatasetList$member": null, "DeleteDatasetResponse$Dataset": "A collection of data for an identity pool. An identity pool can have multiple datasets. A dataset is per identity and can be general or associated with a particular entity in an application (like a saved game). Datasets are automatically created if they don't exist. Data is synced by dataset, and a dataset can hold up to 1MB of key-value pairs.", "DescribeDatasetResponse$Dataset": "Meta data for a collection of data for an identity. An identity can have multiple datasets. A dataset can be general or associated with a particular entity in an application (like a saved game). Datasets are automatically created if they don't exist. Data is synced by dataset, and a dataset can hold up to 1MB of key-value pairs." } }, "DatasetList": { "base": null, "refs": { "ListDatasetsResponse$Datasets": "A set of datasets." } }, "DatasetName": { "base": null, "refs": { "Dataset$DatasetName": "A string of up to 128 characters. Allowed characters are a-z, A-Z, 0-9, '_' (underscore), '-' (dash), and '.' (dot).", "DeleteDatasetRequest$DatasetName": "A string of up to 128 characters. Allowed characters are a-z, A-Z, 0-9, '_' (underscore), '-' (dash), and '.' (dot).", "DescribeDatasetRequest$DatasetName": "A string of up to 128 characters. Allowed characters are a-z, A-Z, 0-9, '_' (underscore), '-' (dash), and '.' (dot).", "ListRecordsRequest$DatasetName": "A string of up to 128 characters. Allowed characters are a-z, A-Z, 0-9, '_' (underscore), '-' (dash), and '.' (dot).", "SubscribeToDatasetRequest$DatasetName": "

        The name of the dataset to subcribe to.

        ", "UnsubscribeFromDatasetRequest$DatasetName": "

        The name of the dataset from which to unsubcribe.

        ", "UpdateRecordsRequest$DatasetName": "A string of up to 128 characters. Allowed characters are a-z, A-Z, 0-9, '_' (underscore), '-' (dash), and '.' (dot)." } }, "Date": { "base": null, "refs": { "Dataset$CreationDate": "Date on which the dataset was created.", "Dataset$LastModifiedDate": "Date when the dataset was last modified.", "GetBulkPublishDetailsResponse$BulkPublishStartTime": "The date/time at which the last bulk publish was initiated.", "GetBulkPublishDetailsResponse$BulkPublishCompleteTime": "If BulkPublishStatus is SUCCEEDED, the time the last bulk publish operation completed.", "IdentityPoolUsage$LastModifiedDate": "Date on which the identity pool was last modified.", "IdentityUsage$LastModifiedDate": "Date on which the identity was last modified.", "Record$LastModifiedDate": "The date on which the record was last modified.", "Record$DeviceLastModifiedDate": "The last modified date of the client device.", "RecordPatch$DeviceLastModifiedDate": "The last modified date of the client device." } }, "DeleteDatasetRequest": { "base": "A request to delete the specific dataset.", "refs": { } }, "DeleteDatasetResponse": { "base": "Response to a successful DeleteDataset request.", "refs": { } }, "DescribeDatasetRequest": { "base": "A request for meta data about a dataset (creation date, number of records, size) by owner and dataset name.", "refs": { } }, "DescribeDatasetResponse": { "base": "Response to a successful DescribeDataset request.", "refs": { } }, "DescribeIdentityPoolUsageRequest": { "base": "A request for usage information about the identity pool.", "refs": { } }, "DescribeIdentityPoolUsageResponse": { "base": "Response to a successful DescribeIdentityPoolUsage request.", "refs": { } }, "DescribeIdentityUsageRequest": { "base": "A request for information about the usage of an identity pool.", "refs": { } }, "DescribeIdentityUsageResponse": { "base": "The response to a successful DescribeIdentityUsage request.", "refs": { } }, "DeviceId": { "base": null, "refs": { "RegisterDeviceResponse$DeviceId": "

        The unique ID generated for this device by Cognito.

        ", "SubscribeToDatasetRequest$DeviceId": "

        The unique ID generated for this device by Cognito.

        ", "UnsubscribeFromDatasetRequest$DeviceId": "

        The unique ID generated for this device by Cognito.

        ", "UpdateRecordsRequest$DeviceId": "

        The unique ID generated for this device by Cognito.

        " } }, "DuplicateRequestException": { "base": "An exception thrown when there is an IN_PROGRESS bulk publish operation for the given identity pool.", "refs": { } }, "Events": { "base": null, "refs": { "GetCognitoEventsResponse$Events": "

        The Cognito Events returned from the GetCognitoEvents request

        ", "SetCognitoEventsRequest$Events": "

        The events to configure

        " } }, "ExceptionMessage": { "base": null, "refs": { "AlreadyStreamedException$message": "The message associated with the AlreadyStreamedException exception.", "DuplicateRequestException$message": "The message associated with the DuplicateRequestException exception.", "InternalErrorException$message": "Message returned by InternalErrorException.", "InvalidConfigurationException$message": "Message returned by InvalidConfigurationException.", "InvalidLambdaFunctionOutputException$message": "

        A message returned when an InvalidLambdaFunctionOutputException occurs

        ", "InvalidParameterException$message": "Message returned by InvalidParameterException.", "LambdaThrottledException$message": "

        A message returned when an LambdaThrottledException is thrown

        ", "LimitExceededException$message": "Message returned by LimitExceededException.", "NotAuthorizedException$message": "The message returned by a NotAuthorizedException.", "ResourceConflictException$message": "The message returned by a ResourceConflictException.", "ResourceNotFoundException$message": "Message returned by a ResourceNotFoundException.", "TooManyRequestsException$message": "Message returned by a TooManyRequestsException." } }, "GetBulkPublishDetailsRequest": { "base": "The input for the GetBulkPublishDetails operation.", "refs": { } }, "GetBulkPublishDetailsResponse": { "base": "The output for the GetBulkPublishDetails operation.", "refs": { } }, "GetCognitoEventsRequest": { "base": "

        A request for a list of the configured Cognito Events

        ", "refs": { } }, "GetCognitoEventsResponse": { "base": "

        The response from the GetCognitoEvents request

        ", "refs": { } }, "GetIdentityPoolConfigurationRequest": { "base": "

        The input for the GetIdentityPoolConfiguration operation.

        ", "refs": { } }, "GetIdentityPoolConfigurationResponse": { "base": "

        The output for the GetIdentityPoolConfiguration operation.

        ", "refs": { } }, "IdentityId": { "base": null, "refs": { "Dataset$IdentityId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "DeleteDatasetRequest$IdentityId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "DescribeDatasetRequest$IdentityId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "DescribeIdentityUsageRequest$IdentityId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "IdentityUsage$IdentityId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "ListDatasetsRequest$IdentityId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "ListRecordsRequest$IdentityId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "RegisterDeviceRequest$IdentityId": "

        The unique ID for this identity.

        ", "SubscribeToDatasetRequest$IdentityId": "

        Unique ID for this identity.

        ", "UnsubscribeFromDatasetRequest$IdentityId": "

        Unique ID for this identity.

        ", "UpdateRecordsRequest$IdentityId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region." } }, "IdentityPoolId": { "base": null, "refs": { "BulkPublishRequest$IdentityPoolId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "BulkPublishResponse$IdentityPoolId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "DeleteDatasetRequest$IdentityPoolId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "DescribeDatasetRequest$IdentityPoolId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "DescribeIdentityPoolUsageRequest$IdentityPoolId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "DescribeIdentityUsageRequest$IdentityPoolId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "GetBulkPublishDetailsRequest$IdentityPoolId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "GetBulkPublishDetailsResponse$IdentityPoolId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "GetCognitoEventsRequest$IdentityPoolId": "

        The Cognito Identity Pool ID for the request

        ", "GetIdentityPoolConfigurationRequest$IdentityPoolId": "

        A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. This is the ID of the pool for which to return a configuration.

        ", "GetIdentityPoolConfigurationResponse$IdentityPoolId": "

        A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito.

        ", "IdentityPoolUsage$IdentityPoolId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "IdentityUsage$IdentityPoolId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "ListDatasetsRequest$IdentityPoolId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "ListRecordsRequest$IdentityPoolId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.", "RegisterDeviceRequest$IdentityPoolId": "

        A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. Here, the ID of the pool that the identity belongs to.

        ", "SetCognitoEventsRequest$IdentityPoolId": "

        The Cognito Identity Pool to use when configuring Cognito Events

        ", "SetIdentityPoolConfigurationRequest$IdentityPoolId": "

        A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. This is the ID of the pool to modify.

        ", "SetIdentityPoolConfigurationResponse$IdentityPoolId": "

        A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito.

        ", "SubscribeToDatasetRequest$IdentityPoolId": "

        A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. The ID of the pool to which the identity belongs.

        ", "UnsubscribeFromDatasetRequest$IdentityPoolId": "

        A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. The ID of the pool to which this identity belongs.

        ", "UpdateRecordsRequest$IdentityPoolId": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region." } }, "IdentityPoolUsage": { "base": "Usage information for the identity pool.", "refs": { "DescribeIdentityPoolUsageResponse$IdentityPoolUsage": "Information about the usage of the identity pool.", "IdentityPoolUsageList$member": null } }, "IdentityPoolUsageList": { "base": null, "refs": { "ListIdentityPoolUsageResponse$IdentityPoolUsages": "Usage information for the identity pools." } }, "IdentityUsage": { "base": "Usage information for the identity.", "refs": { "DescribeIdentityUsageResponse$IdentityUsage": "Usage information for the identity." } }, "Integer": { "base": null, "refs": { "IdentityUsage$DatasetCount": "Number of datasets for the identity.", "ListDatasetsResponse$Count": "Number of datasets returned.", "ListIdentityPoolUsageResponse$MaxResults": "The maximum number of results to be returned.", "ListIdentityPoolUsageResponse$Count": "Total number of identities for the identity pool.", "ListRecordsResponse$Count": "Total number of records." } }, "IntegerString": { "base": null, "refs": { "ListDatasetsRequest$MaxResults": "The maximum number of results to be returned.", "ListIdentityPoolUsageRequest$MaxResults": "The maximum number of results to be returned.", "ListRecordsRequest$MaxResults": "The maximum number of results to be returned." } }, "InternalErrorException": { "base": "Indicates an internal service error.", "refs": { } }, "InvalidConfigurationException": { "base": null, "refs": { } }, "InvalidLambdaFunctionOutputException": { "base": "

        The AWS Lambda function returned invalid output or an exception.

        ", "refs": { } }, "InvalidParameterException": { "base": "Thrown when a request parameter does not comply with the associated constraints.", "refs": { } }, "LambdaFunctionArn": { "base": null, "refs": { "Events$value": null } }, "LambdaThrottledException": { "base": "

        AWS Lambda throttled your account, please contact AWS Support

        ", "refs": { } }, "LimitExceededException": { "base": "Thrown when the limit on the number of objects or operations has been exceeded.", "refs": { } }, "ListDatasetsRequest": { "base": "Request for a list of datasets for an identity.", "refs": { } }, "ListDatasetsResponse": { "base": "Returned for a successful ListDatasets request.", "refs": { } }, "ListIdentityPoolUsageRequest": { "base": "A request for usage information on an identity pool.", "refs": { } }, "ListIdentityPoolUsageResponse": { "base": "Returned for a successful ListIdentityPoolUsage request.", "refs": { } }, "ListRecordsRequest": { "base": "A request for a list of records.", "refs": { } }, "ListRecordsResponse": { "base": "Returned for a successful ListRecordsRequest.", "refs": { } }, "Long": { "base": null, "refs": { "Dataset$DataStorage": "Total size in bytes of the records in this dataset.", "Dataset$NumRecords": "Number of records in this dataset.", "IdentityPoolUsage$SyncSessionsCount": "Number of sync sessions for the identity pool.", "IdentityPoolUsage$DataStorage": "Data storage information for the identity pool.", "IdentityUsage$DataStorage": "Total data storage for this identity.", "ListRecordsRequest$LastSyncCount": "The last server sync count for this record.", "ListRecordsResponse$DatasetSyncCount": "Server sync count for this dataset.", "Record$SyncCount": "The server sync count for this record.", "RecordPatch$SyncCount": "Last known server sync count for this record. Set to 0 if unknown." } }, "MergedDatasetNameList": { "base": null, "refs": { "ListRecordsResponse$MergedDatasetNames": "Names of merged datasets." } }, "NotAuthorizedException": { "base": "Thrown when a user is not authorized to access the requested resource.", "refs": { } }, "Operation": { "base": null, "refs": { "RecordPatch$Op": "An operation, either replace or remove." } }, "Platform": { "base": null, "refs": { "RegisterDeviceRequest$Platform": "

        The SNS platform type (e.g. GCM, SDM, APNS, APNS_SANDBOX).

        " } }, "PushSync": { "base": "

        Configuration options to be applied to the identity pool.

        ", "refs": { "GetIdentityPoolConfigurationResponse$PushSync": "

        Options to apply to this identity pool for push synchronization.

        ", "SetIdentityPoolConfigurationRequest$PushSync": "

        Options to apply to this identity pool for push synchronization.

        ", "SetIdentityPoolConfigurationResponse$PushSync": "

        Options to apply to this identity pool for push synchronization.

        " } }, "PushToken": { "base": null, "refs": { "RegisterDeviceRequest$Token": "

        The push token.

        " } }, "Record": { "base": "The basic data structure of a dataset.", "refs": { "RecordList$member": null } }, "RecordKey": { "base": null, "refs": { "Record$Key": "The key for the record.", "RecordPatch$Key": "The key associated with the record patch." } }, "RecordList": { "base": null, "refs": { "ListRecordsResponse$Records": "A list of all records.", "UpdateRecordsResponse$Records": "A list of records that have been updated." } }, "RecordPatch": { "base": "An update operation for a record.", "refs": { "RecordPatchList$member": null } }, "RecordPatchList": { "base": null, "refs": { "UpdateRecordsRequest$RecordPatches": "A list of patch operations." } }, "RecordValue": { "base": null, "refs": { "Record$Value": "The value for the record.", "RecordPatch$Value": "The value associated with the record patch." } }, "RegisterDeviceRequest": { "base": "

        A request to RegisterDevice.

        ", "refs": { } }, "RegisterDeviceResponse": { "base": "

        Response to a RegisterDevice request.

        ", "refs": { } }, "ResourceConflictException": { "base": "Thrown if an update can't be applied because the resource was changed by another call and this would result in a conflict.", "refs": { } }, "ResourceNotFoundException": { "base": "Thrown if the resource doesn't exist.", "refs": { } }, "SetCognitoEventsRequest": { "base": "

        A request to configure Cognito Events\"

        \"", "refs": { } }, "SetIdentityPoolConfigurationRequest": { "base": "

        The input for the SetIdentityPoolConfiguration operation.

        ", "refs": { } }, "SetIdentityPoolConfigurationResponse": { "base": "

        The output for the SetIdentityPoolConfiguration operation

        ", "refs": { } }, "StreamName": { "base": null, "refs": { "CognitoStreams$StreamName": "The name of the Cognito stream to receive updates. This stream must be in the developers account and in the same region as the identity pool." } }, "StreamingStatus": { "base": null, "refs": { "CognitoStreams$StreamingStatus": "Status of the Cognito streams. Valid values are:

        ENABLED - Streaming of updates to identity pool is enabled.

        DISABLED - Streaming of updates to identity pool is disabled. Bulk publish will also fail if StreamingStatus is DISABLED.

        " } }, "String": { "base": null, "refs": { "ConcurrentModificationException$message": "

        The message returned by a ConcurrentModicationException.

        ", "Dataset$LastModifiedBy": "The device that made the last change to this dataset.", "GetBulkPublishDetailsResponse$FailureMessage": "If BulkPublishStatus is FAILED this field will contain the error message that caused the bulk publish to fail.", "ListDatasetsRequest$NextToken": "A pagination token for obtaining the next page of results.", "ListDatasetsResponse$NextToken": "A pagination token for obtaining the next page of results.", "ListIdentityPoolUsageRequest$NextToken": "A pagination token for obtaining the next page of results.", "ListIdentityPoolUsageResponse$NextToken": "A pagination token for obtaining the next page of results.", "ListRecordsRequest$NextToken": "A pagination token for obtaining the next page of results.", "ListRecordsResponse$NextToken": "A pagination token for obtaining the next page of results.", "ListRecordsResponse$LastModifiedBy": "The user/device that made the last change to this record.", "ListRecordsResponse$SyncSessionToken": "A token containing a session ID, identity ID, and expiration.", "MergedDatasetNameList$member": null, "Record$LastModifiedBy": "The user/device that made the last change to this record." } }, "SubscribeToDatasetRequest": { "base": "

        A request to SubscribeToDatasetRequest.

        ", "refs": { } }, "SubscribeToDatasetResponse": { "base": "

        Response to a SubscribeToDataset request.

        ", "refs": { } }, "SyncSessionToken": { "base": null, "refs": { "ListRecordsRequest$SyncSessionToken": "A token containing a session ID, identity ID, and expiration.", "UpdateRecordsRequest$SyncSessionToken": "The SyncSessionToken returned by a previous call to ListRecords for this dataset and identity." } }, "TooManyRequestsException": { "base": "Thrown if the request is throttled.", "refs": { } }, "UnsubscribeFromDatasetRequest": { "base": "

        A request to UnsubscribeFromDataset.

        ", "refs": { } }, "UnsubscribeFromDatasetResponse": { "base": "

        Response to an UnsubscribeFromDataset request.

        ", "refs": { } }, "UpdateRecordsRequest": { "base": "A request to post updates to records or add and delete records for a dataset and user.", "refs": { } }, "UpdateRecordsResponse": { "base": "Returned for a successful UpdateRecordsRequest.", "refs": { } } } } aws-sdk-go-1.4.22/models/apis/config/000077500000000000000000000000001300374646400172475ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/config/2014-11-12/000077500000000000000000000000001300374646400202745ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/config/2014-11-12/api-2.json000066400000000000000000001147251300374646400221110ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2014-11-12", "endpointPrefix":"config", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"Config Service", "serviceFullName":"AWS Config", "signatureVersion":"v4", "targetPrefix":"StarlingDoveService" }, "operations":{ "DeleteConfigRule":{ "name":"DeleteConfigRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteConfigRuleRequest"}, "errors":[ {"shape":"NoSuchConfigRuleException"}, {"shape":"ResourceInUseException"} ] }, "DeleteConfigurationRecorder":{ "name":"DeleteConfigurationRecorder", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteConfigurationRecorderRequest"}, "errors":[ {"shape":"NoSuchConfigurationRecorderException"} ] }, "DeleteDeliveryChannel":{ "name":"DeleteDeliveryChannel", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDeliveryChannelRequest"}, "errors":[ {"shape":"NoSuchDeliveryChannelException"}, {"shape":"LastDeliveryChannelDeleteFailedException"} ] }, "DeleteEvaluationResults":{ "name":"DeleteEvaluationResults", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteEvaluationResultsRequest"}, "output":{"shape":"DeleteEvaluationResultsResponse"}, "errors":[ {"shape":"NoSuchConfigRuleException"}, {"shape":"ResourceInUseException"} ] }, "DeliverConfigSnapshot":{ "name":"DeliverConfigSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeliverConfigSnapshotRequest"}, "output":{"shape":"DeliverConfigSnapshotResponse"}, "errors":[ {"shape":"NoSuchDeliveryChannelException"}, {"shape":"NoAvailableConfigurationRecorderException"}, {"shape":"NoRunningConfigurationRecorderException"} ] }, "DescribeComplianceByConfigRule":{ "name":"DescribeComplianceByConfigRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeComplianceByConfigRuleRequest"}, "output":{"shape":"DescribeComplianceByConfigRuleResponse"}, "errors":[ {"shape":"InvalidParameterValueException"}, {"shape":"NoSuchConfigRuleException"} ] }, "DescribeComplianceByResource":{ "name":"DescribeComplianceByResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeComplianceByResourceRequest"}, "output":{"shape":"DescribeComplianceByResourceResponse"}, "errors":[ {"shape":"InvalidParameterValueException"}, {"shape":"InvalidNextTokenException"} ] }, "DescribeConfigRuleEvaluationStatus":{ "name":"DescribeConfigRuleEvaluationStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeConfigRuleEvaluationStatusRequest"}, "output":{"shape":"DescribeConfigRuleEvaluationStatusResponse"}, "errors":[ {"shape":"NoSuchConfigRuleException"} ] }, "DescribeConfigRules":{ "name":"DescribeConfigRules", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeConfigRulesRequest"}, "output":{"shape":"DescribeConfigRulesResponse"}, "errors":[ {"shape":"NoSuchConfigRuleException"} ] }, "DescribeConfigurationRecorderStatus":{ "name":"DescribeConfigurationRecorderStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeConfigurationRecorderStatusRequest"}, "output":{"shape":"DescribeConfigurationRecorderStatusResponse"}, "errors":[ {"shape":"NoSuchConfigurationRecorderException"} ] }, "DescribeConfigurationRecorders":{ "name":"DescribeConfigurationRecorders", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeConfigurationRecordersRequest"}, "output":{"shape":"DescribeConfigurationRecordersResponse"}, "errors":[ {"shape":"NoSuchConfigurationRecorderException"} ] }, "DescribeDeliveryChannelStatus":{ "name":"DescribeDeliveryChannelStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDeliveryChannelStatusRequest"}, "output":{"shape":"DescribeDeliveryChannelStatusResponse"}, "errors":[ {"shape":"NoSuchDeliveryChannelException"} ] }, "DescribeDeliveryChannels":{ "name":"DescribeDeliveryChannels", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDeliveryChannelsRequest"}, "output":{"shape":"DescribeDeliveryChannelsResponse"}, "errors":[ {"shape":"NoSuchDeliveryChannelException"} ] }, "GetComplianceDetailsByConfigRule":{ "name":"GetComplianceDetailsByConfigRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetComplianceDetailsByConfigRuleRequest"}, "output":{"shape":"GetComplianceDetailsByConfigRuleResponse"}, "errors":[ {"shape":"InvalidParameterValueException"}, {"shape":"InvalidNextTokenException"}, {"shape":"NoSuchConfigRuleException"} ] }, "GetComplianceDetailsByResource":{ "name":"GetComplianceDetailsByResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetComplianceDetailsByResourceRequest"}, "output":{"shape":"GetComplianceDetailsByResourceResponse"}, "errors":[ {"shape":"InvalidParameterValueException"} ] }, "GetComplianceSummaryByConfigRule":{ "name":"GetComplianceSummaryByConfigRule", "http":{ "method":"POST", "requestUri":"/" }, "output":{"shape":"GetComplianceSummaryByConfigRuleResponse"} }, "GetComplianceSummaryByResourceType":{ "name":"GetComplianceSummaryByResourceType", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetComplianceSummaryByResourceTypeRequest"}, "output":{"shape":"GetComplianceSummaryByResourceTypeResponse"}, "errors":[ {"shape":"InvalidParameterValueException"} ] }, "GetResourceConfigHistory":{ "name":"GetResourceConfigHistory", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetResourceConfigHistoryRequest"}, "output":{"shape":"GetResourceConfigHistoryResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"InvalidTimeRangeException"}, {"shape":"InvalidLimitException"}, {"shape":"InvalidNextTokenException"}, {"shape":"NoAvailableConfigurationRecorderException"}, {"shape":"ResourceNotDiscoveredException"} ] }, "ListDiscoveredResources":{ "name":"ListDiscoveredResources", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListDiscoveredResourcesRequest"}, "output":{"shape":"ListDiscoveredResourcesResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"InvalidLimitException"}, {"shape":"InvalidNextTokenException"}, {"shape":"NoAvailableConfigurationRecorderException"} ] }, "PutConfigRule":{ "name":"PutConfigRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutConfigRuleRequest"}, "errors":[ {"shape":"InvalidParameterValueException"}, {"shape":"MaxNumberOfConfigRulesExceededException"}, {"shape":"ResourceInUseException"}, {"shape":"InsufficientPermissionsException"}, {"shape":"NoAvailableConfigurationRecorderException"} ] }, "PutConfigurationRecorder":{ "name":"PutConfigurationRecorder", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutConfigurationRecorderRequest"}, "errors":[ {"shape":"MaxNumberOfConfigurationRecordersExceededException"}, {"shape":"InvalidConfigurationRecorderNameException"}, {"shape":"InvalidRoleException"}, {"shape":"InvalidRecordingGroupException"} ] }, "PutDeliveryChannel":{ "name":"PutDeliveryChannel", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutDeliveryChannelRequest"}, "errors":[ {"shape":"MaxNumberOfDeliveryChannelsExceededException"}, {"shape":"NoAvailableConfigurationRecorderException"}, {"shape":"InvalidDeliveryChannelNameException"}, {"shape":"NoSuchBucketException"}, {"shape":"InvalidS3KeyPrefixException"}, {"shape":"InvalidSNSTopicARNException"}, {"shape":"InsufficientDeliveryPolicyException"} ] }, "PutEvaluations":{ "name":"PutEvaluations", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutEvaluationsRequest"}, "output":{"shape":"PutEvaluationsResponse"}, "errors":[ {"shape":"InvalidParameterValueException"}, {"shape":"InvalidResultTokenException"}, {"shape":"NoSuchConfigRuleException"} ] }, "StartConfigRulesEvaluation":{ "name":"StartConfigRulesEvaluation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartConfigRulesEvaluationRequest"}, "output":{"shape":"StartConfigRulesEvaluationResponse"}, "errors":[ {"shape":"NoSuchConfigRuleException"}, {"shape":"LimitExceededException"}, {"shape":"ResourceInUseException"}, {"shape":"InvalidParameterValueException"} ] }, "StartConfigurationRecorder":{ "name":"StartConfigurationRecorder", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartConfigurationRecorderRequest"}, "errors":[ {"shape":"NoSuchConfigurationRecorderException"}, {"shape":"NoAvailableDeliveryChannelException"} ] }, "StopConfigurationRecorder":{ "name":"StopConfigurationRecorder", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopConfigurationRecorderRequest"}, "errors":[ {"shape":"NoSuchConfigurationRecorderException"} ] } }, "shapes":{ "ARN":{"type":"string"}, "AccountId":{"type":"string"}, "AllSupported":{"type":"boolean"}, "AvailabilityZone":{"type":"string"}, "AwsRegion":{"type":"string"}, "Boolean":{"type":"boolean"}, "ChannelName":{ "type":"string", "max":256, "min":1 }, "ChronologicalOrder":{ "type":"string", "enum":[ "Reverse", "Forward" ] }, "Compliance":{ "type":"structure", "members":{ "ComplianceType":{"shape":"ComplianceType"}, "ComplianceContributorCount":{"shape":"ComplianceContributorCount"} } }, "ComplianceByConfigRule":{ "type":"structure", "members":{ "ConfigRuleName":{"shape":"StringWithCharLimit64"}, "Compliance":{"shape":"Compliance"} } }, "ComplianceByConfigRules":{ "type":"list", "member":{"shape":"ComplianceByConfigRule"} }, "ComplianceByResource":{ "type":"structure", "members":{ "ResourceType":{"shape":"StringWithCharLimit256"}, "ResourceId":{"shape":"StringWithCharLimit256"}, "Compliance":{"shape":"Compliance"} } }, "ComplianceByResources":{ "type":"list", "member":{"shape":"ComplianceByResource"} }, "ComplianceContributorCount":{ "type":"structure", "members":{ "CappedCount":{"shape":"Integer"}, "CapExceeded":{"shape":"Boolean"} } }, "ComplianceResourceTypes":{ "type":"list", "member":{"shape":"StringWithCharLimit256"}, "max":100, "min":0 }, "ComplianceSummariesByResourceType":{ "type":"list", "member":{"shape":"ComplianceSummaryByResourceType"} }, "ComplianceSummary":{ "type":"structure", "members":{ "CompliantResourceCount":{"shape":"ComplianceContributorCount"}, "NonCompliantResourceCount":{"shape":"ComplianceContributorCount"}, "ComplianceSummaryTimestamp":{"shape":"Date"} } }, "ComplianceSummaryByResourceType":{ "type":"structure", "members":{ "ResourceType":{"shape":"StringWithCharLimit256"}, "ComplianceSummary":{"shape":"ComplianceSummary"} } }, "ComplianceType":{ "type":"string", "enum":[ "COMPLIANT", "NON_COMPLIANT", "NOT_APPLICABLE", "INSUFFICIENT_DATA" ] }, "ComplianceTypes":{ "type":"list", "member":{"shape":"ComplianceType"}, "max":3, "min":0 }, "ConfigExportDeliveryInfo":{ "type":"structure", "members":{ "lastStatus":{"shape":"DeliveryStatus"}, "lastErrorCode":{"shape":"String"}, "lastErrorMessage":{"shape":"String"}, "lastAttemptTime":{"shape":"Date"}, "lastSuccessfulTime":{"shape":"Date"}, "nextDeliveryTime":{"shape":"Date"} } }, "ConfigRule":{ "type":"structure", "required":["Source"], "members":{ "ConfigRuleName":{"shape":"StringWithCharLimit64"}, "ConfigRuleArn":{"shape":"String"}, "ConfigRuleId":{"shape":"String"}, "Description":{"shape":"EmptiableStringWithCharLimit256"}, "Scope":{"shape":"Scope"}, "Source":{"shape":"Source"}, "InputParameters":{"shape":"StringWithCharLimit256"}, "MaximumExecutionFrequency":{"shape":"MaximumExecutionFrequency"}, "ConfigRuleState":{"shape":"ConfigRuleState"} } }, "ConfigRuleEvaluationStatus":{ "type":"structure", "members":{ "ConfigRuleName":{"shape":"StringWithCharLimit64"}, "ConfigRuleArn":{"shape":"String"}, "ConfigRuleId":{"shape":"String"}, "LastSuccessfulInvocationTime":{"shape":"Date"}, "LastFailedInvocationTime":{"shape":"Date"}, "LastSuccessfulEvaluationTime":{"shape":"Date"}, "LastFailedEvaluationTime":{"shape":"Date"}, "FirstActivatedTime":{"shape":"Date"}, "LastErrorCode":{"shape":"String"}, "LastErrorMessage":{"shape":"String"}, "FirstEvaluationStarted":{"shape":"Boolean"} } }, "ConfigRuleEvaluationStatusList":{ "type":"list", "member":{"shape":"ConfigRuleEvaluationStatus"} }, "ConfigRuleNames":{ "type":"list", "member":{"shape":"StringWithCharLimit64"}, "max":25, "min":0 }, "ConfigRuleState":{ "type":"string", "enum":[ "ACTIVE", "DELETING", "DELETING_RESULTS", "EVALUATING" ] }, "ConfigRules":{ "type":"list", "member":{"shape":"ConfigRule"} }, "ConfigSnapshotDeliveryProperties":{ "type":"structure", "members":{ "deliveryFrequency":{"shape":"MaximumExecutionFrequency"} } }, "ConfigStreamDeliveryInfo":{ "type":"structure", "members":{ "lastStatus":{"shape":"DeliveryStatus"}, "lastErrorCode":{"shape":"String"}, "lastErrorMessage":{"shape":"String"}, "lastStatusChangeTime":{"shape":"Date"} } }, "Configuration":{"type":"string"}, "ConfigurationItem":{ "type":"structure", "members":{ "version":{"shape":"Version"}, "accountId":{"shape":"AccountId"}, "configurationItemCaptureTime":{"shape":"ConfigurationItemCaptureTime"}, "configurationItemStatus":{"shape":"ConfigurationItemStatus"}, "configurationStateId":{"shape":"ConfigurationStateId"}, "configurationItemMD5Hash":{"shape":"ConfigurationItemMD5Hash"}, "arn":{"shape":"ARN"}, "resourceType":{"shape":"ResourceType"}, "resourceId":{"shape":"ResourceId"}, "resourceName":{"shape":"ResourceName"}, "awsRegion":{"shape":"AwsRegion"}, "availabilityZone":{"shape":"AvailabilityZone"}, "resourceCreationTime":{"shape":"ResourceCreationTime"}, "tags":{"shape":"Tags"}, "relatedEvents":{"shape":"RelatedEventList"}, "relationships":{"shape":"RelationshipList"}, "configuration":{"shape":"Configuration"}, "supplementaryConfiguration":{"shape":"SupplementaryConfiguration"} } }, "ConfigurationItemCaptureTime":{"type":"timestamp"}, "ConfigurationItemList":{ "type":"list", "member":{"shape":"ConfigurationItem"} }, "ConfigurationItemMD5Hash":{"type":"string"}, "ConfigurationItemStatus":{ "type":"string", "enum":[ "Ok", "Failed", "Discovered", "Deleted" ] }, "ConfigurationRecorder":{ "type":"structure", "members":{ "name":{"shape":"RecorderName"}, "roleARN":{"shape":"String"}, "recordingGroup":{"shape":"RecordingGroup"} } }, "ConfigurationRecorderList":{ "type":"list", "member":{"shape":"ConfigurationRecorder"} }, "ConfigurationRecorderNameList":{ "type":"list", "member":{"shape":"RecorderName"} }, "ConfigurationRecorderStatus":{ "type":"structure", "members":{ "name":{"shape":"String"}, "lastStartTime":{"shape":"Date"}, "lastStopTime":{"shape":"Date"}, "recording":{"shape":"Boolean"}, "lastStatus":{"shape":"RecorderStatus"}, "lastErrorCode":{"shape":"String"}, "lastErrorMessage":{"shape":"String"}, "lastStatusChangeTime":{"shape":"Date"} } }, "ConfigurationRecorderStatusList":{ "type":"list", "member":{"shape":"ConfigurationRecorderStatus"} }, "ConfigurationStateId":{"type":"string"}, "Date":{"type":"timestamp"}, "DeleteConfigRuleRequest":{ "type":"structure", "required":["ConfigRuleName"], "members":{ "ConfigRuleName":{"shape":"StringWithCharLimit64"} } }, "DeleteConfigurationRecorderRequest":{ "type":"structure", "required":["ConfigurationRecorderName"], "members":{ "ConfigurationRecorderName":{"shape":"RecorderName"} } }, "DeleteDeliveryChannelRequest":{ "type":"structure", "required":["DeliveryChannelName"], "members":{ "DeliveryChannelName":{"shape":"ChannelName"} } }, "DeleteEvaluationResultsRequest":{ "type":"structure", "required":["ConfigRuleName"], "members":{ "ConfigRuleName":{"shape":"StringWithCharLimit64"} } }, "DeleteEvaluationResultsResponse":{ "type":"structure", "members":{ } }, "DeliverConfigSnapshotRequest":{ "type":"structure", "required":["deliveryChannelName"], "members":{ "deliveryChannelName":{"shape":"ChannelName"} } }, "DeliverConfigSnapshotResponse":{ "type":"structure", "members":{ "configSnapshotId":{"shape":"String"} } }, "DeliveryChannel":{ "type":"structure", "members":{ "name":{"shape":"ChannelName"}, "s3BucketName":{"shape":"String"}, "s3KeyPrefix":{"shape":"String"}, "snsTopicARN":{"shape":"String"}, "configSnapshotDeliveryProperties":{"shape":"ConfigSnapshotDeliveryProperties"} } }, "DeliveryChannelList":{ "type":"list", "member":{"shape":"DeliveryChannel"} }, "DeliveryChannelNameList":{ "type":"list", "member":{"shape":"ChannelName"} }, "DeliveryChannelStatus":{ "type":"structure", "members":{ "name":{"shape":"String"}, "configSnapshotDeliveryInfo":{"shape":"ConfigExportDeliveryInfo"}, "configHistoryDeliveryInfo":{"shape":"ConfigExportDeliveryInfo"}, "configStreamDeliveryInfo":{"shape":"ConfigStreamDeliveryInfo"} } }, "DeliveryChannelStatusList":{ "type":"list", "member":{"shape":"DeliveryChannelStatus"} }, "DeliveryStatus":{ "type":"string", "enum":[ "Success", "Failure", "Not_Applicable" ] }, "DescribeComplianceByConfigRuleRequest":{ "type":"structure", "members":{ "ConfigRuleNames":{"shape":"ConfigRuleNames"}, "ComplianceTypes":{"shape":"ComplianceTypes"}, "NextToken":{"shape":"String"} } }, "DescribeComplianceByConfigRuleResponse":{ "type":"structure", "members":{ "ComplianceByConfigRules":{"shape":"ComplianceByConfigRules"}, "NextToken":{"shape":"String"} } }, "DescribeComplianceByResourceRequest":{ "type":"structure", "members":{ "ResourceType":{"shape":"StringWithCharLimit256"}, "ResourceId":{"shape":"StringWithCharLimit256"}, "ComplianceTypes":{"shape":"ComplianceTypes"}, "Limit":{"shape":"Limit"}, "NextToken":{"shape":"NextToken"} } }, "DescribeComplianceByResourceResponse":{ "type":"structure", "members":{ "ComplianceByResources":{"shape":"ComplianceByResources"}, "NextToken":{"shape":"NextToken"} } }, "DescribeConfigRuleEvaluationStatusRequest":{ "type":"structure", "members":{ "ConfigRuleNames":{"shape":"ConfigRuleNames"} } }, "DescribeConfigRuleEvaluationStatusResponse":{ "type":"structure", "members":{ "ConfigRulesEvaluationStatus":{"shape":"ConfigRuleEvaluationStatusList"} } }, "DescribeConfigRulesRequest":{ "type":"structure", "members":{ "ConfigRuleNames":{"shape":"ConfigRuleNames"}, "NextToken":{"shape":"String"} } }, "DescribeConfigRulesResponse":{ "type":"structure", "members":{ "ConfigRules":{"shape":"ConfigRules"}, "NextToken":{"shape":"String"} } }, "DescribeConfigurationRecorderStatusRequest":{ "type":"structure", "members":{ "ConfigurationRecorderNames":{"shape":"ConfigurationRecorderNameList"} } }, "DescribeConfigurationRecorderStatusResponse":{ "type":"structure", "members":{ "ConfigurationRecordersStatus":{"shape":"ConfigurationRecorderStatusList"} } }, "DescribeConfigurationRecordersRequest":{ "type":"structure", "members":{ "ConfigurationRecorderNames":{"shape":"ConfigurationRecorderNameList"} } }, "DescribeConfigurationRecordersResponse":{ "type":"structure", "members":{ "ConfigurationRecorders":{"shape":"ConfigurationRecorderList"} } }, "DescribeDeliveryChannelStatusRequest":{ "type":"structure", "members":{ "DeliveryChannelNames":{"shape":"DeliveryChannelNameList"} } }, "DescribeDeliveryChannelStatusResponse":{ "type":"structure", "members":{ "DeliveryChannelsStatus":{"shape":"DeliveryChannelStatusList"} } }, "DescribeDeliveryChannelsRequest":{ "type":"structure", "members":{ "DeliveryChannelNames":{"shape":"DeliveryChannelNameList"} } }, "DescribeDeliveryChannelsResponse":{ "type":"structure", "members":{ "DeliveryChannels":{"shape":"DeliveryChannelList"} } }, "EarlierTime":{"type":"timestamp"}, "EmptiableStringWithCharLimit256":{ "type":"string", "max":256, "min":0 }, "Evaluation":{ "type":"structure", "required":[ "ComplianceResourceType", "ComplianceResourceId", "ComplianceType", "OrderingTimestamp" ], "members":{ "ComplianceResourceType":{"shape":"StringWithCharLimit256"}, "ComplianceResourceId":{"shape":"StringWithCharLimit256"}, "ComplianceType":{"shape":"ComplianceType"}, "Annotation":{"shape":"StringWithCharLimit256"}, "OrderingTimestamp":{"shape":"OrderingTimestamp"} } }, "EvaluationResult":{ "type":"structure", "members":{ "EvaluationResultIdentifier":{"shape":"EvaluationResultIdentifier"}, "ComplianceType":{"shape":"ComplianceType"}, "ResultRecordedTime":{"shape":"Date"}, "ConfigRuleInvokedTime":{"shape":"Date"}, "Annotation":{"shape":"StringWithCharLimit256"}, "ResultToken":{"shape":"String"} } }, "EvaluationResultIdentifier":{ "type":"structure", "members":{ "EvaluationResultQualifier":{"shape":"EvaluationResultQualifier"}, "OrderingTimestamp":{"shape":"Date"} } }, "EvaluationResultQualifier":{ "type":"structure", "members":{ "ConfigRuleName":{"shape":"StringWithCharLimit64"}, "ResourceType":{"shape":"StringWithCharLimit256"}, "ResourceId":{"shape":"StringWithCharLimit256"} } }, "EvaluationResults":{ "type":"list", "member":{"shape":"EvaluationResult"} }, "Evaluations":{ "type":"list", "member":{"shape":"Evaluation"}, "max":100, "min":0 }, "EventSource":{ "type":"string", "enum":["aws.config"] }, "GetComplianceDetailsByConfigRuleRequest":{ "type":"structure", "required":["ConfigRuleName"], "members":{ "ConfigRuleName":{"shape":"StringWithCharLimit64"}, "ComplianceTypes":{"shape":"ComplianceTypes"}, "Limit":{"shape":"Limit"}, "NextToken":{"shape":"NextToken"} } }, "GetComplianceDetailsByConfigRuleResponse":{ "type":"structure", "members":{ "EvaluationResults":{"shape":"EvaluationResults"}, "NextToken":{"shape":"NextToken"} } }, "GetComplianceDetailsByResourceRequest":{ "type":"structure", "required":[ "ResourceType", "ResourceId" ], "members":{ "ResourceType":{"shape":"StringWithCharLimit256"}, "ResourceId":{"shape":"StringWithCharLimit256"}, "ComplianceTypes":{"shape":"ComplianceTypes"}, "NextToken":{"shape":"String"} } }, "GetComplianceDetailsByResourceResponse":{ "type":"structure", "members":{ "EvaluationResults":{"shape":"EvaluationResults"}, "NextToken":{"shape":"String"} } }, "GetComplianceSummaryByConfigRuleResponse":{ "type":"structure", "members":{ "ComplianceSummary":{"shape":"ComplianceSummary"} } }, "GetComplianceSummaryByResourceTypeRequest":{ "type":"structure", "members":{ "ResourceTypes":{"shape":"ResourceTypes"} } }, "GetComplianceSummaryByResourceTypeResponse":{ "type":"structure", "members":{ "ComplianceSummariesByResourceType":{"shape":"ComplianceSummariesByResourceType"} } }, "GetResourceConfigHistoryRequest":{ "type":"structure", "required":[ "resourceType", "resourceId" ], "members":{ "resourceType":{"shape":"ResourceType"}, "resourceId":{"shape":"ResourceId"}, "laterTime":{"shape":"LaterTime"}, "earlierTime":{"shape":"EarlierTime"}, "chronologicalOrder":{"shape":"ChronologicalOrder"}, "limit":{"shape":"Limit"}, "nextToken":{"shape":"NextToken"} } }, "GetResourceConfigHistoryResponse":{ "type":"structure", "members":{ "configurationItems":{"shape":"ConfigurationItemList"}, "nextToken":{"shape":"NextToken"} } }, "IncludeGlobalResourceTypes":{"type":"boolean"}, "InsufficientDeliveryPolicyException":{ "type":"structure", "members":{ }, "exception":true }, "InsufficientPermissionsException":{ "type":"structure", "members":{ }, "exception":true }, "Integer":{"type":"integer"}, "InvalidConfigurationRecorderNameException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidDeliveryChannelNameException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidLimitException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidNextTokenException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidParameterValueException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidRecordingGroupException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidResultTokenException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidRoleException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidS3KeyPrefixException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidSNSTopicARNException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidTimeRangeException":{ "type":"structure", "members":{ }, "exception":true }, "LastDeliveryChannelDeleteFailedException":{ "type":"structure", "members":{ }, "exception":true }, "LaterTime":{"type":"timestamp"}, "Limit":{ "type":"integer", "max":100, "min":0 }, "LimitExceededException":{ "type":"structure", "members":{ }, "exception":true }, "ListDiscoveredResourcesRequest":{ "type":"structure", "required":["resourceType"], "members":{ "resourceType":{"shape":"ResourceType"}, "resourceIds":{"shape":"ResourceIdList"}, "resourceName":{"shape":"ResourceName"}, "limit":{"shape":"Limit"}, "includeDeletedResources":{"shape":"Boolean"}, "nextToken":{"shape":"NextToken"} } }, "ListDiscoveredResourcesResponse":{ "type":"structure", "members":{ "resourceIdentifiers":{"shape":"ResourceIdentifierList"}, "nextToken":{"shape":"NextToken"} } }, "MaxNumberOfConfigRulesExceededException":{ "type":"structure", "members":{ }, "exception":true }, "MaxNumberOfConfigurationRecordersExceededException":{ "type":"structure", "members":{ }, "exception":true }, "MaxNumberOfDeliveryChannelsExceededException":{ "type":"structure", "members":{ }, "exception":true }, "MaximumExecutionFrequency":{ "type":"string", "enum":[ "One_Hour", "Three_Hours", "Six_Hours", "Twelve_Hours", "TwentyFour_Hours" ] }, "MessageType":{ "type":"string", "enum":[ "ConfigurationItemChangeNotification", "ConfigurationSnapshotDeliveryCompleted", "ScheduledNotification" ] }, "Name":{"type":"string"}, "NextToken":{"type":"string"}, "NoAvailableConfigurationRecorderException":{ "type":"structure", "members":{ }, "exception":true }, "NoAvailableDeliveryChannelException":{ "type":"structure", "members":{ }, "exception":true }, "NoRunningConfigurationRecorderException":{ "type":"structure", "members":{ }, "exception":true }, "NoSuchBucketException":{ "type":"structure", "members":{ }, "exception":true }, "NoSuchConfigRuleException":{ "type":"structure", "members":{ }, "exception":true }, "NoSuchConfigurationRecorderException":{ "type":"structure", "members":{ }, "exception":true }, "NoSuchDeliveryChannelException":{ "type":"structure", "members":{ }, "exception":true }, "OrderingTimestamp":{"type":"timestamp"}, "Owner":{ "type":"string", "enum":[ "CUSTOM_LAMBDA", "AWS" ] }, "PutConfigRuleRequest":{ "type":"structure", "required":["ConfigRule"], "members":{ "ConfigRule":{"shape":"ConfigRule"} } }, "PutConfigurationRecorderRequest":{ "type":"structure", "required":["ConfigurationRecorder"], "members":{ "ConfigurationRecorder":{"shape":"ConfigurationRecorder"} } }, "PutDeliveryChannelRequest":{ "type":"structure", "required":["DeliveryChannel"], "members":{ "DeliveryChannel":{"shape":"DeliveryChannel"} } }, "PutEvaluationsRequest":{ "type":"structure", "required":["ResultToken"], "members":{ "Evaluations":{"shape":"Evaluations"}, "ResultToken":{"shape":"String"} } }, "PutEvaluationsResponse":{ "type":"structure", "members":{ "FailedEvaluations":{"shape":"Evaluations"} } }, "RecorderName":{ "type":"string", "max":256, "min":1 }, "RecorderStatus":{ "type":"string", "enum":[ "Pending", "Success", "Failure" ] }, "RecordingGroup":{ "type":"structure", "members":{ "allSupported":{"shape":"AllSupported"}, "includeGlobalResourceTypes":{"shape":"IncludeGlobalResourceTypes"}, "resourceTypes":{"shape":"ResourceTypeList"} } }, "ReevaluateConfigRuleNames":{ "type":"list", "member":{"shape":"StringWithCharLimit64"}, "max":25, "min":1 }, "RelatedEvent":{"type":"string"}, "RelatedEventList":{ "type":"list", "member":{"shape":"RelatedEvent"} }, "Relationship":{ "type":"structure", "members":{ "resourceType":{"shape":"ResourceType"}, "resourceId":{"shape":"ResourceId"}, "resourceName":{"shape":"ResourceName"}, "relationshipName":{"shape":"RelationshipName"} } }, "RelationshipList":{ "type":"list", "member":{"shape":"Relationship"} }, "RelationshipName":{"type":"string"}, "ResourceCreationTime":{"type":"timestamp"}, "ResourceDeletionTime":{"type":"timestamp"}, "ResourceId":{"type":"string"}, "ResourceIdList":{ "type":"list", "member":{"shape":"ResourceId"} }, "ResourceIdentifier":{ "type":"structure", "members":{ "resourceType":{"shape":"ResourceType"}, "resourceId":{"shape":"ResourceId"}, "resourceName":{"shape":"ResourceName"}, "resourceDeletionTime":{"shape":"ResourceDeletionTime"} } }, "ResourceIdentifierList":{ "type":"list", "member":{"shape":"ResourceIdentifier"} }, "ResourceInUseException":{ "type":"structure", "members":{ }, "exception":true }, "ResourceName":{"type":"string"}, "ResourceNotDiscoveredException":{ "type":"structure", "members":{ }, "exception":true }, "ResourceType":{ "type":"string", "enum":[ "AWS::EC2::CustomerGateway", "AWS::EC2::EIP", "AWS::EC2::Host", "AWS::EC2::Instance", "AWS::EC2::InternetGateway", "AWS::EC2::NetworkAcl", "AWS::EC2::NetworkInterface", "AWS::EC2::RouteTable", "AWS::EC2::SecurityGroup", "AWS::EC2::Subnet", "AWS::CloudTrail::Trail", "AWS::EC2::Volume", "AWS::EC2::VPC", "AWS::EC2::VPNConnection", "AWS::EC2::VPNGateway", "AWS::IAM::Group", "AWS::IAM::Policy", "AWS::IAM::Role", "AWS::IAM::User", "AWS::ACM::Certificate", "AWS::RDS::DBInstance", "AWS::RDS::DBSubnetGroup", "AWS::RDS::DBSecurityGroup", "AWS::RDS::DBSnapshot", "AWS::RDS::EventSubscription", "AWS::ElasticLoadBalancingV2::LoadBalancer", "AWS::S3::Bucket" ] }, "ResourceTypeList":{ "type":"list", "member":{"shape":"ResourceType"} }, "ResourceTypes":{ "type":"list", "member":{"shape":"StringWithCharLimit256"}, "max":20, "min":0 }, "Scope":{ "type":"structure", "members":{ "ComplianceResourceTypes":{"shape":"ComplianceResourceTypes"}, "TagKey":{"shape":"StringWithCharLimit128"}, "TagValue":{"shape":"StringWithCharLimit256"}, "ComplianceResourceId":{"shape":"StringWithCharLimit256"} } }, "Source":{ "type":"structure", "members":{ "Owner":{"shape":"Owner"}, "SourceIdentifier":{"shape":"StringWithCharLimit256"}, "SourceDetails":{"shape":"SourceDetails"} } }, "SourceDetail":{ "type":"structure", "members":{ "EventSource":{"shape":"EventSource"}, "MessageType":{"shape":"MessageType"}, "MaximumExecutionFrequency":{"shape":"MaximumExecutionFrequency"} } }, "SourceDetails":{ "type":"list", "member":{"shape":"SourceDetail"}, "max":25, "min":0 }, "StartConfigRulesEvaluationRequest":{ "type":"structure", "members":{ "ConfigRuleNames":{"shape":"ReevaluateConfigRuleNames"} } }, "StartConfigRulesEvaluationResponse":{ "type":"structure", "members":{ } }, "StartConfigurationRecorderRequest":{ "type":"structure", "required":["ConfigurationRecorderName"], "members":{ "ConfigurationRecorderName":{"shape":"RecorderName"} } }, "StopConfigurationRecorderRequest":{ "type":"structure", "required":["ConfigurationRecorderName"], "members":{ "ConfigurationRecorderName":{"shape":"RecorderName"} } }, "String":{"type":"string"}, "StringWithCharLimit128":{ "type":"string", "max":128, "min":1 }, "StringWithCharLimit256":{ "type":"string", "max":256, "min":1 }, "StringWithCharLimit64":{ "type":"string", "max":64, "min":1 }, "SupplementaryConfiguration":{ "type":"map", "key":{"shape":"SupplementaryConfigurationName"}, "value":{"shape":"SupplementaryConfigurationValue"} }, "SupplementaryConfigurationName":{"type":"string"}, "SupplementaryConfigurationValue":{"type":"string"}, "Tags":{ "type":"map", "key":{"shape":"Name"}, "value":{"shape":"Value"} }, "ValidationException":{ "type":"structure", "members":{ }, "exception":true }, "Value":{"type":"string"}, "Version":{"type":"string"} } } aws-sdk-go-1.4.22/models/apis/config/2014-11-12/docs-2.json000066400000000000000000002400631300374646400222630ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS Config

        AWS Config provides a way to keep track of the configurations of all the AWS resources associated with your AWS account. You can use AWS Config to get the current and historical configurations of each AWS resource and also to get information about the relationship between the resources. An AWS resource can be an Amazon Compute Cloud (Amazon EC2) instance, an Elastic Block Store (EBS) volume, an Elastic network Interface (ENI), or a security group. For a complete list of resources currently supported by AWS Config, see Supported AWS Resources.

        You can access and manage AWS Config through the AWS Management Console, the AWS Command Line Interface (AWS CLI), the AWS Config API, or the AWS SDKs for AWS Config

        This reference guide contains documentation for the AWS Config API and the AWS CLI commands that you can use to manage AWS Config.

        The AWS Config API uses the Signature Version 4 protocol for signing requests. For more information about how to sign a request with this protocol, see Signature Version 4 Signing Process.

        For detailed information about AWS Config features and their associated actions or commands, as well as how to work with AWS Management Console, see What Is AWS Config? in the AWS Config Developer Guide.

        ", "operations": { "DeleteConfigRule": "

        Deletes the specified AWS Config rule and all of its evaluation results.

        AWS Config sets the state of a rule to DELETING until the deletion is complete. You cannot update a rule while it is in this state. If you make a PutConfigRule or DeleteConfigRule request for the rule, you will receive a ResourceInUseException.

        You can check the state of a rule by using the DescribeConfigRules request.

        ", "DeleteConfigurationRecorder": "

        Deletes the configuration recorder.

        After the configuration recorder is deleted, AWS Config will not record resource configuration changes until you create a new configuration recorder.

        This action does not delete the configuration information that was previously recorded. You will be able to access the previously recorded information by using the GetResourceConfigHistory action, but you will not be able to access this information in the AWS Config console until you create a new configuration recorder.

        ", "DeleteDeliveryChannel": "

        Deletes the delivery channel.

        Before you can delete the delivery channel, you must stop the configuration recorder by using the StopConfigurationRecorder action.

        ", "DeleteEvaluationResults": "

        Deletes the evaluation results for the specified Config rule. You can specify one Config rule per request. After you delete the evaluation results, you can call the StartConfigRulesEvaluation API to start evaluating your AWS resources against the rule.

        ", "DeliverConfigSnapshot": "

        Schedules delivery of a configuration snapshot to the Amazon S3 bucket in the specified delivery channel. After the delivery has started, AWS Config sends following notifications using an Amazon SNS topic that you have specified.

        • Notification of starting the delivery.

        • Notification of delivery completed, if the delivery was successfully completed.

        • Notification of delivery failure, if the delivery failed to complete.

        ", "DescribeComplianceByConfigRule": "

        Indicates whether the specified AWS Config rules are compliant. If a rule is noncompliant, this action returns the number of AWS resources that do not comply with the rule.

        A rule is compliant if all of the evaluated resources comply with it, and it is noncompliant if any of these resources do not comply.

        If AWS Config has no current evaluation results for the rule, it returns INSUFFICIENT_DATA. This result might indicate one of the following conditions:

        • AWS Config has never invoked an evaluation for the rule. To check whether it has, use the DescribeConfigRuleEvaluationStatus action to get the LastSuccessfulInvocationTime and LastFailedInvocationTime.

        • The rule's AWS Lambda function is failing to send evaluation results to AWS Config. Verify that the role that you assigned to your configuration recorder includes the config:PutEvaluations permission. If the rule is a custom rule, verify that the AWS Lambda execution role includes the config:PutEvaluations permission.

        • The rule's AWS Lambda function has returned NOT_APPLICABLE for all evaluation results. This can occur if the resources were deleted or removed from the rule's scope.

        ", "DescribeComplianceByResource": "

        Indicates whether the specified AWS resources are compliant. If a resource is noncompliant, this action returns the number of AWS Config rules that the resource does not comply with.

        A resource is compliant if it complies with all the AWS Config rules that evaluate it. It is noncompliant if it does not comply with one or more of these rules.

        If AWS Config has no current evaluation results for the resource, it returns INSUFFICIENT_DATA. This result might indicate one of the following conditions about the rules that evaluate the resource:

        • AWS Config has never invoked an evaluation for the rule. To check whether it has, use the DescribeConfigRuleEvaluationStatus action to get the LastSuccessfulInvocationTime and LastFailedInvocationTime.

        • The rule's AWS Lambda function is failing to send evaluation results to AWS Config. Verify that the role that you assigned to your configuration recorder includes the config:PutEvaluations permission. If the rule is a custom rule, verify that the AWS Lambda execution role includes the config:PutEvaluations permission.

        • The rule's AWS Lambda function has returned NOT_APPLICABLE for all evaluation results. This can occur if the resources were deleted or removed from the rule's scope.

        ", "DescribeConfigRuleEvaluationStatus": "

        Returns status information for each of your AWS managed Config rules. The status includes information such as the last time AWS Config invoked the rule, the last time AWS Config failed to invoke the rule, and the related error for the last failure.

        ", "DescribeConfigRules": "

        Returns details about your AWS Config rules.

        ", "DescribeConfigurationRecorderStatus": "

        Returns the current status of the specified configuration recorder. If a configuration recorder is not specified, this action returns the status of all configuration recorder associated with the account.

        Currently, you can specify only one configuration recorder per region in your account.

        ", "DescribeConfigurationRecorders": "

        Returns the details for the specified configuration recorders. If the configuration recorder is not specified, this action returns the details for all configuration recorders associated with the account.

        Currently, you can specify only one configuration recorder per region in your account.

        ", "DescribeDeliveryChannelStatus": "

        Returns the current status of the specified delivery channel. If a delivery channel is not specified, this action returns the current status of all delivery channels associated with the account.

        Currently, you can specify only one delivery channel per region in your account.

        ", "DescribeDeliveryChannels": "

        Returns details about the specified delivery channel. If a delivery channel is not specified, this action returns the details of all delivery channels associated with the account.

        Currently, you can specify only one delivery channel per region in your account.

        ", "GetComplianceDetailsByConfigRule": "

        Returns the evaluation results for the specified AWS Config rule. The results indicate which AWS resources were evaluated by the rule, when each resource was last evaluated, and whether each resource complies with the rule.

        ", "GetComplianceDetailsByResource": "

        Returns the evaluation results for the specified AWS resource. The results indicate which AWS Config rules were used to evaluate the resource, when each rule was last used, and whether the resource complies with each rule.

        ", "GetComplianceSummaryByConfigRule": "

        Returns the number of AWS Config rules that are compliant and noncompliant, up to a maximum of 25 for each.

        ", "GetComplianceSummaryByResourceType": "

        Returns the number of resources that are compliant and the number that are noncompliant. You can specify one or more resource types to get these numbers for each resource type. The maximum number returned is 100.

        ", "GetResourceConfigHistory": "

        Returns a list of configuration items for the specified resource. The list contains details about each state of the resource during the specified time interval.

        The response is paginated, and by default, AWS Config returns a limit of 10 configuration items per page. You can customize this number with the limit parameter. The response includes a nextToken string, and to get the next page of results, run the request again and enter this string for the nextToken parameter.

        Each call to the API is limited to span a duration of seven days. It is likely that the number of records returned is smaller than the specified limit. In such cases, you can make another call, using the nextToken.

        ", "ListDiscoveredResources": "

        Accepts a resource type and returns a list of resource identifiers for the resources of that type. A resource identifier includes the resource type, ID, and (if available) the custom resource name. The results consist of resources that AWS Config has discovered, including those that AWS Config is not currently recording. You can narrow the results to include only resources that have specific resource IDs or a resource name.

        You can specify either resource IDs or a resource name but not both in the same request.

        The response is paginated, and by default AWS Config lists 100 resource identifiers on each page. You can customize this number with the limit parameter. The response includes a nextToken string, and to get the next page of results, run the request again and enter this string for the nextToken parameter.

        ", "PutConfigRule": "

        Adds or updates an AWS Config rule for evaluating whether your AWS resources comply with your desired configurations.

        You can use this action for custom Config rules and AWS managed Config rules. A custom Config rule is a rule that you develop and maintain. An AWS managed Config rule is a customizable, predefined rule that AWS Config provides.

        If you are adding a new custom Config rule, you must first create the AWS Lambda function that the rule invokes to evaluate your resources. When you use the PutConfigRule action to add the rule to AWS Config, you must specify the Amazon Resource Name (ARN) that AWS Lambda assigns to the function. Specify the ARN for the SourceIdentifier key. This key is part of the Source object, which is part of the ConfigRule object.

        If you are adding a new AWS managed Config rule, specify the rule's identifier for the SourceIdentifier key. To reference AWS managed Config rule identifiers, see Using AWS Managed Config Rules.

        For any new rule that you add, specify the ConfigRuleName in the ConfigRule object. Do not specify the ConfigRuleArn or the ConfigRuleId. These values are generated by AWS Config for new rules.

        If you are updating a rule that you added previously, you can specify the rule by ConfigRuleName, ConfigRuleId, or ConfigRuleArn in the ConfigRule data type that you use in this request.

        The maximum number of rules that AWS Config supports is 25.

        For more information about developing and using AWS Config rules, see Evaluating AWS Resource Configurations with AWS Config in the AWS Config Developer Guide.

        ", "PutConfigurationRecorder": "

        Creates a new configuration recorder to record the selected resource configurations.

        You can use this action to change the role roleARN and/or the recordingGroup of an existing recorder. To change the role, call the action on the existing configuration recorder and specify a role.

        Currently, you can specify only one configuration recorder per region in your account.

        If ConfigurationRecorder does not have the recordingGroup parameter specified, the default is to record all supported resource types.

        ", "PutDeliveryChannel": "

        Creates a delivery channel object to deliver configuration information to an Amazon S3 bucket and Amazon SNS topic.

        Before you can create a delivery channel, you must create a configuration recorder.

        You can use this action to change the Amazon S3 bucket or an Amazon SNS topic of the existing delivery channel. To change the Amazon S3 bucket or an Amazon SNS topic, call this action and specify the changed values for the S3 bucket and the SNS topic. If you specify a different value for either the S3 bucket or the SNS topic, this action will keep the existing value for the parameter that is not changed.

        You can have only one delivery channel per region in your account.

        ", "PutEvaluations": "

        Used by an AWS Lambda function to deliver evaluation results to AWS Config. This action is required in every AWS Lambda function that is invoked by an AWS Config rule.

        ", "StartConfigRulesEvaluation": "

        Evaluates your resources against the specified Config rules. You can specify up to 25 Config rules per request.

        An existing StartConfigRulesEvaluation call must complete for the specified rules before you can call the API again. If you chose to have AWS Config stream to an Amazon SNS topic, you will receive a ConfigRuleEvaluationStarted notification when the evaluation starts.

        You don't need to call the StartConfigRulesEvaluation API to run an evaluation for a new rule. When you create a new rule, AWS Config automatically evaluates your resources against the rule.

        The StartConfigRulesEvaluation API is useful if you want to run on-demand evaluations, such as the following example:

        1. You have a custom rule that evaluates your IAM resources every 24 hours.

        2. You update your Lambda function to add additional conditions to your rule.

        3. Instead of waiting for the next periodic evaluation, you call the StartConfigRulesEvaluation API.

        4. AWS Config invokes your Lambda function and evaluates your IAM resources.

        5. Your custom rule will still run periodic evaluations every 24 hours.

        ", "StartConfigurationRecorder": "

        Starts recording configurations of the AWS resources you have selected to record in your AWS account.

        You must have created at least one delivery channel to successfully start the configuration recorder.

        ", "StopConfigurationRecorder": "

        Stops recording configurations of the AWS resources you have selected to record in your AWS account.

        " }, "shapes": { "ARN": { "base": null, "refs": { "ConfigurationItem$arn": "

        The Amazon Resource Name (ARN) of the resource.

        " } }, "AccountId": { "base": null, "refs": { "ConfigurationItem$accountId": "

        The 12 digit AWS account ID associated with the resource.

        " } }, "AllSupported": { "base": null, "refs": { "RecordingGroup$allSupported": "

        Specifies whether AWS Config records configuration changes for every supported type of regional resource.

        If you set this option to true, when AWS Config adds support for a new type of regional resource, it automatically starts recording resources of that type.

        If you set this option to true, you cannot enumerate a list of resourceTypes.

        " } }, "AvailabilityZone": { "base": null, "refs": { "ConfigurationItem$availabilityZone": "

        The Availability Zone associated with the resource.

        " } }, "AwsRegion": { "base": null, "refs": { "ConfigurationItem$awsRegion": "

        The region where the resource resides.

        " } }, "Boolean": { "base": null, "refs": { "ComplianceContributorCount$CapExceeded": "

        Indicates whether the maximum count is reached.

        ", "ConfigRuleEvaluationStatus$FirstEvaluationStarted": "

        Indicates whether AWS Config has evaluated your resources against the rule at least once.

        • true - AWS Config has evaluated your AWS resources against the rule at least once.

        • false - AWS Config has not once finished evaluating your AWS resources against the rule.

        ", "ConfigurationRecorderStatus$recording": "

        Specifies whether the recorder is currently recording or not.

        ", "ListDiscoveredResourcesRequest$includeDeletedResources": "

        Specifies whether AWS Config includes deleted resources in the results. By default, deleted resources are not included.

        " } }, "ChannelName": { "base": null, "refs": { "DeleteDeliveryChannelRequest$DeliveryChannelName": "

        The name of the delivery channel to delete.

        ", "DeliverConfigSnapshotRequest$deliveryChannelName": "

        The name of the delivery channel through which the snapshot is delivered.

        ", "DeliveryChannel$name": "

        The name of the delivery channel. By default, AWS Config assigns the name \"default\" when creating the delivery channel. To change the delivery channel name, you must use the DeleteDeliveryChannel action to delete your current delivery channel, and then you must use the PutDeliveryChannel command to create a delivery channel that has the desired name.

        ", "DeliveryChannelNameList$member": null } }, "ChronologicalOrder": { "base": null, "refs": { "GetResourceConfigHistoryRequest$chronologicalOrder": "

        The chronological order for configuration items listed. By default the results are listed in reverse chronological order.

        " } }, "Compliance": { "base": "

        Indicates whether an AWS resource or AWS Config rule is compliant and provides the number of contributors that affect the compliance.

        ", "refs": { "ComplianceByConfigRule$Compliance": "

        Indicates whether the AWS Config rule is compliant.

        ", "ComplianceByResource$Compliance": "

        Indicates whether the AWS resource complies with all of the AWS Config rules that evaluated it.

        " } }, "ComplianceByConfigRule": { "base": "

        Indicates whether an AWS Config rule is compliant. A rule is compliant if all of the resources that the rule evaluated comply with it, and it is noncompliant if any of these resources do not comply.

        ", "refs": { "ComplianceByConfigRules$member": null } }, "ComplianceByConfigRules": { "base": null, "refs": { "DescribeComplianceByConfigRuleResponse$ComplianceByConfigRules": "

        Indicates whether each of the specified AWS Config rules is compliant.

        " } }, "ComplianceByResource": { "base": "

        Indicates whether an AWS resource that is evaluated according to one or more AWS Config rules is compliant. A resource is compliant if it complies with all of the rules that evaluate it, and it is noncompliant if it does not comply with one or more of these rules.

        ", "refs": { "ComplianceByResources$member": null } }, "ComplianceByResources": { "base": null, "refs": { "DescribeComplianceByResourceResponse$ComplianceByResources": "

        Indicates whether the specified AWS resource complies with all of the AWS Config rules that evaluate it.

        " } }, "ComplianceContributorCount": { "base": "

        The number of AWS resources or AWS Config rules responsible for the current compliance of the item, up to a maximum number.

        ", "refs": { "Compliance$ComplianceContributorCount": "

        The number of AWS resources or AWS Config rules that cause a result of NON_COMPLIANT, up to a maximum number.

        ", "ComplianceSummary$CompliantResourceCount": "

        The number of AWS Config rules or AWS resources that are compliant, up to a maximum of 25 for rules and 100 for resources.

        ", "ComplianceSummary$NonCompliantResourceCount": "

        The number of AWS Config rules or AWS resources that are noncompliant, up to a maximum of 25 for rules and 100 for resources.

        " } }, "ComplianceResourceTypes": { "base": null, "refs": { "Scope$ComplianceResourceTypes": "

        The resource types of only those AWS resources that you want to trigger an evaluation for the rule. You can only specify one type if you also specify a resource ID for ComplianceResourceId.

        " } }, "ComplianceSummariesByResourceType": { "base": null, "refs": { "GetComplianceSummaryByResourceTypeResponse$ComplianceSummariesByResourceType": "

        The number of resources that are compliant and the number that are noncompliant. If one or more resource types were provided with the request, the numbers are returned for each resource type. The maximum number returned is 100.

        " } }, "ComplianceSummary": { "base": "

        The number of AWS Config rules or AWS resources that are compliant and noncompliant, up to a maximum.

        ", "refs": { "ComplianceSummaryByResourceType$ComplianceSummary": "

        The number of AWS resources that are compliant or noncompliant, up to a maximum of 100 for each compliance.

        ", "GetComplianceSummaryByConfigRuleResponse$ComplianceSummary": "

        The number of AWS Config rules that are compliant and the number that are noncompliant, up to a maximum of 25 for each.

        " } }, "ComplianceSummaryByResourceType": { "base": "

        The number of AWS resources of a specific type that are compliant or noncompliant, up to a maximum of 100 for each compliance.

        ", "refs": { "ComplianceSummariesByResourceType$member": null } }, "ComplianceType": { "base": null, "refs": { "Compliance$ComplianceType": "

        Indicates whether an AWS resource or AWS Config rule is compliant.

        A resource is compliant if it complies with all of the AWS Config rules that evaluate it, and it is noncompliant if it does not comply with one or more of these rules.

        A rule is compliant if all of the resources that the rule evaluates comply with it, and it is noncompliant if any of these resources do not comply.

        AWS Config returns the INSUFFICIENT_DATA value when no evaluation results are available for the AWS resource or Config rule.

        For the Compliance data type, AWS Config supports only COMPLIANT, NON_COMPLIANT, and INSUFFICIENT_DATA values. AWS Config does not support the NOT_APPLICABLE value for the Compliance data type.

        ", "ComplianceTypes$member": null, "Evaluation$ComplianceType": "

        Indicates whether the AWS resource complies with the AWS Config rule that it was evaluated against.

        For the Evaluation data type, AWS Config supports only the COMPLIANT, NON_COMPLIANT, and NOT_APPLICABLE values. AWS Config does not support the INSUFFICIENT_DATA value for this data type.

        Similarly, AWS Config does not accept INSUFFICIENT_DATA as the value for ComplianceType from a PutEvaluations request. For example, an AWS Lambda function for a custom Config rule cannot pass an INSUFFICIENT_DATA value to AWS Config.

        ", "EvaluationResult$ComplianceType": "

        Indicates whether the AWS resource complies with the AWS Config rule that evaluated it.

        For the EvaluationResult data type, AWS Config supports only the COMPLIANT, NON_COMPLIANT, and NOT_APPLICABLE values. AWS Config does not support the INSUFFICIENT_DATA value for the EvaluationResult data type.

        " } }, "ComplianceTypes": { "base": null, "refs": { "DescribeComplianceByConfigRuleRequest$ComplianceTypes": "

        Filters the results by compliance.

        The allowed values are COMPLIANT, NON_COMPLIANT, and INSUFFICIENT_DATA.

        ", "DescribeComplianceByResourceRequest$ComplianceTypes": "

        Filters the results by compliance.

        The allowed values are COMPLIANT, NON_COMPLIANT, and INSUFFICIENT_DATA.

        ", "GetComplianceDetailsByConfigRuleRequest$ComplianceTypes": "

        Filters the results by compliance.

        The allowed values are COMPLIANT, NON_COMPLIANT, and NOT_APPLICABLE.

        ", "GetComplianceDetailsByResourceRequest$ComplianceTypes": "

        Filters the results by compliance.

        The allowed values are COMPLIANT, NON_COMPLIANT, and NOT_APPLICABLE.

        " } }, "ConfigExportDeliveryInfo": { "base": "

        A list that contains the status of the delivery of either the snapshot or the configuration history to the specified Amazon S3 bucket.

        ", "refs": { "DeliveryChannelStatus$configSnapshotDeliveryInfo": "

        A list containing the status of the delivery of the snapshot to the specified Amazon S3 bucket.

        ", "DeliveryChannelStatus$configHistoryDeliveryInfo": "

        A list that contains the status of the delivery of the configuration history to the specified Amazon S3 bucket.

        " } }, "ConfigRule": { "base": "

        An AWS Config rule represents an AWS Lambda function that you create for a custom rule or a predefined function for an AWS managed rule. The function evaluates configuration items to assess whether your AWS resources comply with your desired configurations. This function can run when AWS Config detects a configuration change to an AWS resource and at a periodic frequency that you choose (for example, every 24 hours).

        You can use the AWS CLI and AWS SDKs if you want to create a rule that triggers evaluations for your resources when AWS Config delivers the configuration snapshot. For more information, see ConfigSnapshotDeliveryProperties.

        For more information about developing and using AWS Config rules, see Evaluating AWS Resource Configurations with AWS Config in the AWS Config Developer Guide.

        ", "refs": { "ConfigRules$member": null, "PutConfigRuleRequest$ConfigRule": null } }, "ConfigRuleEvaluationStatus": { "base": "

        Status information for your AWS managed Config rules. The status includes information such as the last time the rule ran, the last time it failed, and the related error for the last failure.

        This action does not return status information about custom Config rules.

        ", "refs": { "ConfigRuleEvaluationStatusList$member": null } }, "ConfigRuleEvaluationStatusList": { "base": null, "refs": { "DescribeConfigRuleEvaluationStatusResponse$ConfigRulesEvaluationStatus": "

        Status information about your AWS managed Config rules.

        " } }, "ConfigRuleNames": { "base": null, "refs": { "DescribeComplianceByConfigRuleRequest$ConfigRuleNames": "

        Specify one or more AWS Config rule names to filter the results by rule.

        ", "DescribeConfigRuleEvaluationStatusRequest$ConfigRuleNames": "

        The name of the AWS managed Config rules for which you want status information. If you do not specify any names, AWS Config returns status information for all AWS managed Config rules that you use.

        ", "DescribeConfigRulesRequest$ConfigRuleNames": "

        The names of the AWS Config rules for which you want details. If you do not specify any names, AWS Config returns details for all your rules.

        " } }, "ConfigRuleState": { "base": null, "refs": { "ConfigRule$ConfigRuleState": "

        Indicates whether the AWS Config rule is active or is currently being deleted by AWS Config. It can also indicate the evaluation status for the Config rule.

        AWS Config sets the state of the rule to EVALUATING temporarily after you use the StartConfigRulesEvaluation request to evaluate your resources against the Config rule.

        AWS Config sets the state of the rule to DELETING_RESULTS temporarily after you use the DeleteEvaluationResults request to delete the current evaluation results for the Config rule.

        AWS Config sets the state of a rule to DELETING temporarily after you use the DeleteConfigRule request to delete the rule. After AWS Config deletes the rule, the rule and all of its evaluations are erased and are no longer available.

        " } }, "ConfigRules": { "base": null, "refs": { "DescribeConfigRulesResponse$ConfigRules": "

        The details about your AWS Config rules.

        " } }, "ConfigSnapshotDeliveryProperties": { "base": "

        Provides options for how often AWS Config delivers configuration snapshots to the Amazon S3 bucket in your delivery channel.

        If you want to create a rule that triggers evaluations for your resources when AWS Config delivers the configuration snapshot, see the following:

        The frequency for a rule that triggers evaluations for your resources when AWS Config delivers the configuration snapshot is set by one of two values, depending on which is less frequent:

        • The value for the deliveryFrequency parameter within the delivery channel configuration, which sets how often AWS Config delivers configuration snapshots. This value also sets how often AWS Config invokes evaluations for Config rules.

        • The value for the MaximumExecutionFrequency parameter, which sets the maximum frequency with which AWS Config invokes evaluations for the rule. For more information, see ConfigRule.

        If the deliveryFrequency value is less frequent than the MaximumExecutionFrequency value for a rule, AWS Config invokes the rule only as often as the deliveryFrequency value.

        1. For example, you want your rule to run evaluations when AWS Config delivers the configuration snapshot.

        2. You specify the MaximumExecutionFrequency value for Six_Hours.

        3. You then specify the delivery channel deliveryFrequency value for TwentyFour_Hours.

        4. Because the value for deliveryFrequency is less frequent than MaximumExecutionFrequency, AWS Config invokes evaluations for the rule every 24 hours.

        You should set the MaximumExecutionFrequency value to be at least as frequent as the deliveryFrequency value. You can view the deliveryFrequency value by using the DescribeDeliveryChannnels action.

        To update the deliveryFrequency with which AWS Config delivers your configuration snapshots, use the PutDeliveryChannel action.

        ", "refs": { "DeliveryChannel$configSnapshotDeliveryProperties": null } }, "ConfigStreamDeliveryInfo": { "base": "

        A list that contains the status of the delivery of the configuration stream notification to the Amazon SNS topic.

        ", "refs": { "DeliveryChannelStatus$configStreamDeliveryInfo": "

        A list containing the status of the delivery of the configuration stream notification to the specified Amazon SNS topic.

        " } }, "Configuration": { "base": null, "refs": { "ConfigurationItem$configuration": "

        The description of the resource configuration.

        " } }, "ConfigurationItem": { "base": "

        A list that contains detailed configurations of a specified resource.

        Currently, the list does not contain information about non-AWS components (for example, applications on your Amazon EC2 instances).

        ", "refs": { "ConfigurationItemList$member": null } }, "ConfigurationItemCaptureTime": { "base": null, "refs": { "ConfigurationItem$configurationItemCaptureTime": "

        The time when the configuration recording was initiated.

        " } }, "ConfigurationItemList": { "base": null, "refs": { "GetResourceConfigHistoryResponse$configurationItems": "

        A list that contains the configuration history of one or more resources.

        " } }, "ConfigurationItemMD5Hash": { "base": null, "refs": { "ConfigurationItem$configurationItemMD5Hash": "

        Unique MD5 hash that represents the configuration item's state.

        You can use MD5 hash to compare the states of two or more configuration items that are associated with the same resource.

        " } }, "ConfigurationItemStatus": { "base": null, "refs": { "ConfigurationItem$configurationItemStatus": "

        The configuration item status.

        " } }, "ConfigurationRecorder": { "base": "

        An object that represents the recording of configuration changes of an AWS resource.

        ", "refs": { "ConfigurationRecorderList$member": null, "PutConfigurationRecorderRequest$ConfigurationRecorder": "

        The configuration recorder object that records each configuration change made to the resources.

        " } }, "ConfigurationRecorderList": { "base": null, "refs": { "DescribeConfigurationRecordersResponse$ConfigurationRecorders": "

        A list that contains the descriptions of the specified configuration recorders.

        " } }, "ConfigurationRecorderNameList": { "base": null, "refs": { "DescribeConfigurationRecorderStatusRequest$ConfigurationRecorderNames": "

        The name(s) of the configuration recorder. If the name is not specified, the action returns the current status of all the configuration recorders associated with the account.

        ", "DescribeConfigurationRecordersRequest$ConfigurationRecorderNames": "

        A list of configuration recorder names.

        " } }, "ConfigurationRecorderStatus": { "base": "

        The current status of the configuration recorder.

        ", "refs": { "ConfigurationRecorderStatusList$member": null } }, "ConfigurationRecorderStatusList": { "base": null, "refs": { "DescribeConfigurationRecorderStatusResponse$ConfigurationRecordersStatus": "

        A list that contains status of the specified recorders.

        " } }, "ConfigurationStateId": { "base": null, "refs": { "ConfigurationItem$configurationStateId": "

        An identifier that indicates the ordering of the configuration items of a resource.

        " } }, "Date": { "base": null, "refs": { "ComplianceSummary$ComplianceSummaryTimestamp": "

        The time that AWS Config created the compliance summary.

        ", "ConfigExportDeliveryInfo$lastAttemptTime": "

        The time of the last attempted delivery.

        ", "ConfigExportDeliveryInfo$lastSuccessfulTime": "

        The time of the last successful delivery.

        ", "ConfigExportDeliveryInfo$nextDeliveryTime": "

        The time that the next delivery occurs.

        ", "ConfigRuleEvaluationStatus$LastSuccessfulInvocationTime": "

        The time that AWS Config last successfully invoked the AWS Config rule to evaluate your AWS resources.

        ", "ConfigRuleEvaluationStatus$LastFailedInvocationTime": "

        The time that AWS Config last failed to invoke the AWS Config rule to evaluate your AWS resources.

        ", "ConfigRuleEvaluationStatus$LastSuccessfulEvaluationTime": "

        The time that AWS Config last successfully evaluated your AWS resources against the rule.

        ", "ConfigRuleEvaluationStatus$LastFailedEvaluationTime": "

        The time that AWS Config last failed to evaluate your AWS resources against the rule.

        ", "ConfigRuleEvaluationStatus$FirstActivatedTime": "

        The time that you first activated the AWS Config rule.

        ", "ConfigStreamDeliveryInfo$lastStatusChangeTime": "

        The time from the last status change.

        ", "ConfigurationRecorderStatus$lastStartTime": "

        The time the recorder was last started.

        ", "ConfigurationRecorderStatus$lastStopTime": "

        The time the recorder was last stopped.

        ", "ConfigurationRecorderStatus$lastStatusChangeTime": "

        The time when the status was last changed.

        ", "EvaluationResult$ResultRecordedTime": "

        The time when AWS Config recorded the evaluation result.

        ", "EvaluationResult$ConfigRuleInvokedTime": "

        The time when the AWS Config rule evaluated the AWS resource.

        ", "EvaluationResultIdentifier$OrderingTimestamp": "

        The time of the event that triggered the evaluation of your AWS resources. The time can indicate when AWS Config delivered a configuration item change notification, or it can indicate when AWS Config delivered the configuration snapshot, depending on which event triggered the evaluation.

        " } }, "DeleteConfigRuleRequest": { "base": "

        ", "refs": { } }, "DeleteConfigurationRecorderRequest": { "base": "

        The request object for the DeleteConfigurationRecorder action.

        ", "refs": { } }, "DeleteDeliveryChannelRequest": { "base": "

        The input for the DeleteDeliveryChannel action. The action accepts the following data in JSON format.

        ", "refs": { } }, "DeleteEvaluationResultsRequest": { "base": "

        ", "refs": { } }, "DeleteEvaluationResultsResponse": { "base": "

        The output when you delete the evaluation results for the specified Config rule.

        ", "refs": { } }, "DeliverConfigSnapshotRequest": { "base": "

        The input for the DeliverConfigSnapshot action.

        ", "refs": { } }, "DeliverConfigSnapshotResponse": { "base": "

        The output for the DeliverConfigSnapshot action in JSON format.

        ", "refs": { } }, "DeliveryChannel": { "base": "

        The channel through which AWS Config delivers notifications and updated configuration states.

        ", "refs": { "DeliveryChannelList$member": null, "PutDeliveryChannelRequest$DeliveryChannel": "

        The configuration delivery channel object that delivers the configuration information to an Amazon S3 bucket, and to an Amazon SNS topic.

        " } }, "DeliveryChannelList": { "base": null, "refs": { "DescribeDeliveryChannelsResponse$DeliveryChannels": "

        A list that contains the descriptions of the specified delivery channel.

        " } }, "DeliveryChannelNameList": { "base": null, "refs": { "DescribeDeliveryChannelStatusRequest$DeliveryChannelNames": "

        A list of delivery channel names.

        ", "DescribeDeliveryChannelsRequest$DeliveryChannelNames": "

        A list of delivery channel names.

        " } }, "DeliveryChannelStatus": { "base": "

        The status of a specified delivery channel.

        Valid values: Success | Failure

        ", "refs": { "DeliveryChannelStatusList$member": null } }, "DeliveryChannelStatusList": { "base": null, "refs": { "DescribeDeliveryChannelStatusResponse$DeliveryChannelsStatus": "

        A list that contains the status of a specified delivery channel.

        " } }, "DeliveryStatus": { "base": null, "refs": { "ConfigExportDeliveryInfo$lastStatus": "

        Status of the last attempted delivery.

        ", "ConfigStreamDeliveryInfo$lastStatus": "

        Status of the last attempted delivery.

        Note Providing an SNS topic on a DeliveryChannel for AWS Config is optional. If the SNS delivery is turned off, the last status will be Not_Applicable.

        " } }, "DescribeComplianceByConfigRuleRequest": { "base": "

        ", "refs": { } }, "DescribeComplianceByConfigRuleResponse": { "base": "

        ", "refs": { } }, "DescribeComplianceByResourceRequest": { "base": "

        ", "refs": { } }, "DescribeComplianceByResourceResponse": { "base": "

        ", "refs": { } }, "DescribeConfigRuleEvaluationStatusRequest": { "base": "

        ", "refs": { } }, "DescribeConfigRuleEvaluationStatusResponse": { "base": "

        ", "refs": { } }, "DescribeConfigRulesRequest": { "base": "

        ", "refs": { } }, "DescribeConfigRulesResponse": { "base": "

        ", "refs": { } }, "DescribeConfigurationRecorderStatusRequest": { "base": "

        The input for the DescribeConfigurationRecorderStatus action.

        ", "refs": { } }, "DescribeConfigurationRecorderStatusResponse": { "base": "

        The output for the DescribeConfigurationRecorderStatus action in JSON format.

        ", "refs": { } }, "DescribeConfigurationRecordersRequest": { "base": "

        The input for the DescribeConfigurationRecorders action.

        ", "refs": { } }, "DescribeConfigurationRecordersResponse": { "base": "

        The output for the DescribeConfigurationRecorders action.

        ", "refs": { } }, "DescribeDeliveryChannelStatusRequest": { "base": "

        The input for the DeliveryChannelStatus action.

        ", "refs": { } }, "DescribeDeliveryChannelStatusResponse": { "base": "

        The output for the DescribeDeliveryChannelStatus action.

        ", "refs": { } }, "DescribeDeliveryChannelsRequest": { "base": "

        The input for the DescribeDeliveryChannels action.

        ", "refs": { } }, "DescribeDeliveryChannelsResponse": { "base": "

        The output for the DescribeDeliveryChannels action.

        ", "refs": { } }, "EarlierTime": { "base": null, "refs": { "GetResourceConfigHistoryRequest$earlierTime": "

        The time stamp that indicates an earlier time. If not specified, the action returns paginated results that contain configuration items that start from when the first configuration item was recorded.

        " } }, "EmptiableStringWithCharLimit256": { "base": null, "refs": { "ConfigRule$Description": "

        The description that you provide for the AWS Config rule.

        " } }, "Evaluation": { "base": "

        Identifies an AWS resource and indicates whether it complies with the AWS Config rule that it was evaluated against.

        ", "refs": { "Evaluations$member": null } }, "EvaluationResult": { "base": "

        The details of an AWS Config evaluation. Provides the AWS resource that was evaluated, the compliance of the resource, related timestamps, and supplementary information.

        ", "refs": { "EvaluationResults$member": null } }, "EvaluationResultIdentifier": { "base": "

        Uniquely identifies an evaluation result.

        ", "refs": { "EvaluationResult$EvaluationResultIdentifier": "

        Uniquely identifies the evaluation result.

        " } }, "EvaluationResultQualifier": { "base": "

        Identifies an AWS Config rule that evaluated an AWS resource, and provides the type and ID of the resource that the rule evaluated.

        ", "refs": { "EvaluationResultIdentifier$EvaluationResultQualifier": "

        Identifies an AWS Config rule used to evaluate an AWS resource, and provides the type and ID of the evaluated resource.

        " } }, "EvaluationResults": { "base": null, "refs": { "GetComplianceDetailsByConfigRuleResponse$EvaluationResults": "

        Indicates whether the AWS resource complies with the specified AWS Config rule.

        ", "GetComplianceDetailsByResourceResponse$EvaluationResults": "

        Indicates whether the specified AWS resource complies each AWS Config rule.

        " } }, "Evaluations": { "base": null, "refs": { "PutEvaluationsRequest$Evaluations": "

        The assessments that the AWS Lambda function performs. Each evaluation identifies an AWS resource and indicates whether it complies with the AWS Config rule that invokes the AWS Lambda function.

        ", "PutEvaluationsResponse$FailedEvaluations": "

        Requests that failed because of a client or server error.

        " } }, "EventSource": { "base": null, "refs": { "SourceDetail$EventSource": "

        The source of the event, such as an AWS service, that triggers AWS Config to evaluate your AWS resources.

        " } }, "GetComplianceDetailsByConfigRuleRequest": { "base": "

        ", "refs": { } }, "GetComplianceDetailsByConfigRuleResponse": { "base": "

        ", "refs": { } }, "GetComplianceDetailsByResourceRequest": { "base": "

        ", "refs": { } }, "GetComplianceDetailsByResourceResponse": { "base": "

        ", "refs": { } }, "GetComplianceSummaryByConfigRuleResponse": { "base": "

        ", "refs": { } }, "GetComplianceSummaryByResourceTypeRequest": { "base": "

        ", "refs": { } }, "GetComplianceSummaryByResourceTypeResponse": { "base": "

        ", "refs": { } }, "GetResourceConfigHistoryRequest": { "base": "

        The input for the GetResourceConfigHistory action.

        ", "refs": { } }, "GetResourceConfigHistoryResponse": { "base": "

        The output for the GetResourceConfigHistory action.

        ", "refs": { } }, "IncludeGlobalResourceTypes": { "base": null, "refs": { "RecordingGroup$includeGlobalResourceTypes": "

        Specifies whether AWS Config includes all supported types of global resources (for example, IAM resources) with the resources that it records.

        Before you can set this option to true, you must set the allSupported option to true.

        If you set this option to true, when AWS Config adds support for a new type of global resource, it automatically starts recording resources of that type.

        The configuration details for any global resource are the same in all regions. To prevent duplicate configuration items, you should consider customizing AWS Config in only one region to record global resources.

        " } }, "InsufficientDeliveryPolicyException": { "base": "

        Your Amazon S3 bucket policy does not permit AWS Config to write to it.

        ", "refs": { } }, "InsufficientPermissionsException": { "base": "

        Indicates one of the following errors:

        • The rule cannot be created because the IAM role assigned to AWS Config lacks permissions to perform the config:Put* action.

        • The AWS Lambda function cannot be invoked. Check the function ARN, and check the function's permissions.

        ", "refs": { } }, "Integer": { "base": null, "refs": { "ComplianceContributorCount$CappedCount": "

        The number of AWS resources or AWS Config rules responsible for the current compliance of the item.

        " } }, "InvalidConfigurationRecorderNameException": { "base": "

        You have provided a configuration recorder name that is not valid.

        ", "refs": { } }, "InvalidDeliveryChannelNameException": { "base": "

        The specified delivery channel name is not valid.

        ", "refs": { } }, "InvalidLimitException": { "base": "

        The specified limit is outside the allowable range.

        ", "refs": { } }, "InvalidNextTokenException": { "base": "

        The specified next token is invalid. Specify the nextToken string that was returned in the previous response to get the next page of results.

        ", "refs": { } }, "InvalidParameterValueException": { "base": "

        One or more of the specified parameters are invalid. Verify that your parameters are valid and try again.

        ", "refs": { } }, "InvalidRecordingGroupException": { "base": "

        AWS Config throws an exception if the recording group does not contain a valid list of resource types. Invalid values could also be incorrectly formatted.

        ", "refs": { } }, "InvalidResultTokenException": { "base": "

        The result token is invalid.

        ", "refs": { } }, "InvalidRoleException": { "base": "

        You have provided a null or empty role ARN.

        ", "refs": { } }, "InvalidS3KeyPrefixException": { "base": "

        The specified Amazon S3 key prefix is not valid.

        ", "refs": { } }, "InvalidSNSTopicARNException": { "base": "

        The specified Amazon SNS topic does not exist.

        ", "refs": { } }, "InvalidTimeRangeException": { "base": "

        The specified time range is not valid. The earlier time is not chronologically before the later time.

        ", "refs": { } }, "LastDeliveryChannelDeleteFailedException": { "base": "

        You cannot delete the delivery channel you specified because the configuration recorder is running.

        ", "refs": { } }, "LaterTime": { "base": null, "refs": { "GetResourceConfigHistoryRequest$laterTime": "

        The time stamp that indicates a later time. If not specified, current time is taken.

        " } }, "Limit": { "base": null, "refs": { "DescribeComplianceByResourceRequest$Limit": "

        The maximum number of evaluation results returned on each page. The default is 10. You cannot specify a limit greater than 100. If you specify 0, AWS Config uses the default.

        ", "GetComplianceDetailsByConfigRuleRequest$Limit": "

        The maximum number of evaluation results returned on each page. The default is 10. You cannot specify a limit greater than 100. If you specify 0, AWS Config uses the default.

        ", "GetResourceConfigHistoryRequest$limit": "

        The maximum number of configuration items returned on each page. The default is 10. You cannot specify a limit greater than 100. If you specify 0, AWS Config uses the default.

        ", "ListDiscoveredResourcesRequest$limit": "

        The maximum number of resource identifiers returned on each page. The default is 100. You cannot specify a limit greater than 100. If you specify 0, AWS Config uses the default.

        " } }, "LimitExceededException": { "base": "

        This exception is thrown if an evaluation is in progress or if you call the StartConfigRulesEvaluation API more than once per minute.

        ", "refs": { } }, "ListDiscoveredResourcesRequest": { "base": "

        ", "refs": { } }, "ListDiscoveredResourcesResponse": { "base": "

        ", "refs": { } }, "MaxNumberOfConfigRulesExceededException": { "base": "

        Failed to add the AWS Config rule because the account already contains the maximum number of 25 rules. Consider deleting any deactivated rules before adding new rules.

        ", "refs": { } }, "MaxNumberOfConfigurationRecordersExceededException": { "base": "

        You have reached the limit on the number of recorders you can create.

        ", "refs": { } }, "MaxNumberOfDeliveryChannelsExceededException": { "base": "

        You have reached the limit on the number of delivery channels you can create.

        ", "refs": { } }, "MaximumExecutionFrequency": { "base": null, "refs": { "ConfigRule$MaximumExecutionFrequency": "

        The maximum frequency with which AWS Config runs evaluations for a rule. You can specify a value for MaximumExecutionFrequency when:

        • You are using an AWS managed rule that is triggered at a periodic frequency.

        • Your custom rule is triggered when AWS Config delivers the configuration snapshot.

        For more information, see ConfigSnapshotDeliveryProperties.

        ", "ConfigSnapshotDeliveryProperties$deliveryFrequency": "

        The frequency with which AWS Config delivers configuration snapshots.

        ", "SourceDetail$MaximumExecutionFrequency": "

        The frequency that you want AWS Config to run evaluations for a rule that is triggered periodically. If you specify a value for MaximumExecutionFrequency, then MessageType must use the ScheduledNotification value.

        " } }, "MessageType": { "base": null, "refs": { "SourceDetail$MessageType": "

        The type of notification that triggers AWS Config to run an evaluation. You can specify the following notification types:

        ConfigurationItemChangeNotification - Triggers an evaluation when AWS Config delivers a configuration item change notification.

        ScheduledNotification - Triggers a periodic evaluation at the frequency specified for MaximumExecutionFrequency.

        ConfigurationSnapshotDeliveryCompleted - Triggers a periodic evaluation when AWS Config delivers a configuration snapshot.

        " } }, "Name": { "base": null, "refs": { "Tags$key": null } }, "NextToken": { "base": null, "refs": { "DescribeComplianceByResourceRequest$NextToken": "

        The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.

        ", "DescribeComplianceByResourceResponse$NextToken": "

        The string that you use in a subsequent request to get the next page of results in a paginated response.

        ", "GetComplianceDetailsByConfigRuleRequest$NextToken": "

        The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.

        ", "GetComplianceDetailsByConfigRuleResponse$NextToken": "

        The string that you use in a subsequent request to get the next page of results in a paginated response.

        ", "GetResourceConfigHistoryRequest$nextToken": "

        The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.

        ", "GetResourceConfigHistoryResponse$nextToken": "

        The string that you use in a subsequent request to get the next page of results in a paginated response.

        ", "ListDiscoveredResourcesRequest$nextToken": "

        The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.

        ", "ListDiscoveredResourcesResponse$nextToken": "

        The string that you use in a subsequent request to get the next page of results in a paginated response.

        " } }, "NoAvailableConfigurationRecorderException": { "base": "

        There are no configuration recorders available to provide the role needed to describe your resources. Create a configuration recorder.

        ", "refs": { } }, "NoAvailableDeliveryChannelException": { "base": "

        There is no delivery channel available to record configurations.

        ", "refs": { } }, "NoRunningConfigurationRecorderException": { "base": "

        There is no configuration recorder running.

        ", "refs": { } }, "NoSuchBucketException": { "base": "

        The specified Amazon S3 bucket does not exist.

        ", "refs": { } }, "NoSuchConfigRuleException": { "base": "

        One or more AWS Config rules in the request are invalid. Verify that the rule names are correct and try again.

        ", "refs": { } }, "NoSuchConfigurationRecorderException": { "base": "

        You have specified a configuration recorder that does not exist.

        ", "refs": { } }, "NoSuchDeliveryChannelException": { "base": "

        You have specified a delivery channel that does not exist.

        ", "refs": { } }, "OrderingTimestamp": { "base": null, "refs": { "Evaluation$OrderingTimestamp": "

        The time of the event in AWS Config that triggered the evaluation. For event-based evaluations, the time indicates when AWS Config created the configuration item that triggered the evaluation. For periodic evaluations, the time indicates when AWS Config delivered the configuration snapshot that triggered the evaluation.

        " } }, "Owner": { "base": null, "refs": { "Source$Owner": "

        Indicates whether AWS or the customer owns and manages the AWS Config rule.

        " } }, "PutConfigRuleRequest": { "base": "

        ", "refs": { } }, "PutConfigurationRecorderRequest": { "base": "

        The input for the PutConfigurationRecorder action.

        ", "refs": { } }, "PutDeliveryChannelRequest": { "base": "

        The input for the PutDeliveryChannel action.

        ", "refs": { } }, "PutEvaluationsRequest": { "base": "

        ", "refs": { } }, "PutEvaluationsResponse": { "base": "

        ", "refs": { } }, "RecorderName": { "base": null, "refs": { "ConfigurationRecorder$name": "

        The name of the recorder. By default, AWS Config automatically assigns the name \"default\" when creating the configuration recorder. You cannot change the assigned name.

        ", "ConfigurationRecorderNameList$member": null, "DeleteConfigurationRecorderRequest$ConfigurationRecorderName": "

        The name of the configuration recorder to be deleted. You can retrieve the name of your configuration recorder by using the DescribeConfigurationRecorders action.

        ", "StartConfigurationRecorderRequest$ConfigurationRecorderName": "

        The name of the recorder object that records each configuration change made to the resources.

        ", "StopConfigurationRecorderRequest$ConfigurationRecorderName": "

        The name of the recorder object that records each configuration change made to the resources.

        " } }, "RecorderStatus": { "base": null, "refs": { "ConfigurationRecorderStatus$lastStatus": "

        The last (previous) status of the recorder.

        " } }, "RecordingGroup": { "base": "

        Specifies the types of AWS resource for which AWS Config records configuration changes.

        In the recording group, you specify whether all supported types or specific types of resources are recorded.

        By default, AWS Config records configuration changes for all supported types of regional resources that AWS Config discovers in the region in which it is running. Regional resources are tied to a region and can be used only in that region. Examples of regional resources are EC2 instances and EBS volumes.

        You can also have AWS Config record configuration changes for supported types of global resources (for example, IAM resources). Global resources are not tied to an individual region and can be used in all regions.

        The configuration details for any global resource are the same in all regions. If you customize AWS Config in multiple regions to record global resources, it will create multiple configuration items each time a global resource changes: one configuration item for each region. These configuration items will contain identical data. To prevent duplicate configuration items, you should consider customizing AWS Config in only one region to record global resources, unless you want the configuration items to be available in multiple regions.

        If you don't want AWS Config to record all resources, you can specify which types of resources it will record with the resourceTypes parameter.

        For a list of supported resource types, see Supported resource types.

        For more information, see Selecting Which Resources AWS Config Records.

        ", "refs": { "ConfigurationRecorder$recordingGroup": "

        Specifies the types of AWS resource for which AWS Config records configuration changes.

        " } }, "ReevaluateConfigRuleNames": { "base": null, "refs": { "StartConfigRulesEvaluationRequest$ConfigRuleNames": "

        The list of names of Config rules that you want to run evaluations for.

        " } }, "RelatedEvent": { "base": null, "refs": { "RelatedEventList$member": null } }, "RelatedEventList": { "base": null, "refs": { "ConfigurationItem$relatedEvents": "

        A list of CloudTrail event IDs.

        A populated field indicates that the current configuration was initiated by the events recorded in the CloudTrail log. For more information about CloudTrail, see What is AWS CloudTrail?.

        An empty field indicates that the current configuration was not initiated by any event.

        " } }, "Relationship": { "base": "

        The relationship of the related resource to the main resource.

        ", "refs": { "RelationshipList$member": null } }, "RelationshipList": { "base": null, "refs": { "ConfigurationItem$relationships": "

        A list of related AWS resources.

        " } }, "RelationshipName": { "base": null, "refs": { "Relationship$relationshipName": "

        The type of relationship with the related resource.

        " } }, "ResourceCreationTime": { "base": null, "refs": { "ConfigurationItem$resourceCreationTime": "

        The time stamp when the resource was created.

        " } }, "ResourceDeletionTime": { "base": null, "refs": { "ResourceIdentifier$resourceDeletionTime": "

        The time that the resource was deleted.

        " } }, "ResourceId": { "base": null, "refs": { "ConfigurationItem$resourceId": "

        The ID of the resource (for example., sg-xxxxxx).

        ", "GetResourceConfigHistoryRequest$resourceId": "

        The ID of the resource (for example., sg-xxxxxx).

        ", "Relationship$resourceId": "

        The ID of the related resource (for example, sg-xxxxxx).

        ", "ResourceIdList$member": null, "ResourceIdentifier$resourceId": "

        The ID of the resource (for example., sg-xxxxxx).

        " } }, "ResourceIdList": { "base": null, "refs": { "ListDiscoveredResourcesRequest$resourceIds": "

        The IDs of only those resources that you want AWS Config to list in the response. If you do not specify this parameter, AWS Config lists all resources of the specified type that it has discovered.

        " } }, "ResourceIdentifier": { "base": "

        The details that identify a resource that is discovered by AWS Config, including the resource type, ID, and (if available) the custom resource name.

        ", "refs": { "ResourceIdentifierList$member": null } }, "ResourceIdentifierList": { "base": null, "refs": { "ListDiscoveredResourcesResponse$resourceIdentifiers": "

        The details that identify a resource that is discovered by AWS Config, including the resource type, ID, and (if available) the custom resource name.

        " } }, "ResourceInUseException": { "base": "

        The rule is currently being deleted or the rule is deleting your evaluation results. Try your request again later.

        ", "refs": { } }, "ResourceName": { "base": null, "refs": { "ConfigurationItem$resourceName": "

        The custom name of the resource, if available.

        ", "ListDiscoveredResourcesRequest$resourceName": "

        The custom name of only those resources that you want AWS Config to list in the response. If you do not specify this parameter, AWS Config lists all resources of the specified type that it has discovered.

        ", "Relationship$resourceName": "

        The custom name of the related resource, if available.

        ", "ResourceIdentifier$resourceName": "

        The custom name of the resource (if available).

        " } }, "ResourceNotDiscoveredException": { "base": "

        You have specified a resource that is either unknown or has not been discovered.

        ", "refs": { } }, "ResourceType": { "base": null, "refs": { "ConfigurationItem$resourceType": "

        The type of AWS resource.

        ", "GetResourceConfigHistoryRequest$resourceType": "

        The resource type.

        ", "ListDiscoveredResourcesRequest$resourceType": "

        The type of resources that you want AWS Config to list in the response.

        ", "Relationship$resourceType": "

        The resource type of the related resource.

        ", "ResourceIdentifier$resourceType": "

        The type of resource.

        ", "ResourceTypeList$member": null } }, "ResourceTypeList": { "base": null, "refs": { "RecordingGroup$resourceTypes": "

        A comma-separated list that specifies the types of AWS resources for which AWS Config records configuration changes (for example, AWS::EC2::Instance or AWS::CloudTrail::Trail).

        Before you can set this option to true, you must set the allSupported option to false.

        If you set this option to true, when AWS Config adds support for a new type of resource, it will not record resources of that type unless you manually add that type to your recording group.

        For a list of valid resourceTypes values, see the resourceType Value column in Supported AWS Resource Types.

        " } }, "ResourceTypes": { "base": null, "refs": { "GetComplianceSummaryByResourceTypeRequest$ResourceTypes": "

        Specify one or more resource types to get the number of resources that are compliant and the number that are noncompliant for each resource type.

        For this request, you can specify an AWS resource type such as AWS::EC2::Instance, and you can specify that the resource type is an AWS account by specifying AWS::::Account.

        " } }, "Scope": { "base": "

        Defines which resources trigger an evaluation for an AWS Config rule. The scope can include one or more resource types, a combination of a tag key and value, or a combination of one resource type and one resource ID. Specify a scope to constrain which resources trigger an evaluation for a rule. Otherwise, evaluations for the rule are triggered when any resource in your recording group changes in configuration.

        ", "refs": { "ConfigRule$Scope": "

        Defines which resources can trigger an evaluation for the rule. The scope can include one or more resource types, a combination of one resource type and one resource ID, or a combination of a tag key and value. Specify a scope to constrain the resources that can trigger an evaluation for the rule. If you do not specify a scope, evaluations are triggered when any resource in the recording group changes.

        " } }, "Source": { "base": "

        Provides the AWS Config rule owner (AWS or customer), the rule identifier, and the events that trigger the evaluation of your AWS resources.

        ", "refs": { "ConfigRule$Source": "

        Provides the rule owner (AWS or customer), the rule identifier, and the notifications that cause the function to evaluate your AWS resources.

        " } }, "SourceDetail": { "base": "

        Provides the source and the message types that trigger AWS Config to evaluate your AWS resources against a rule. It also provides the frequency with which you want AWS Config to run evaluations for the rule if the trigger type is periodic. You can specify the parameter values for SourceDetail only for custom rules.

        ", "refs": { "SourceDetails$member": null } }, "SourceDetails": { "base": null, "refs": { "Source$SourceDetails": "

        Provides the source and type of the event that causes AWS Config to evaluate your AWS resources.

        " } }, "StartConfigRulesEvaluationRequest": { "base": "

        ", "refs": { } }, "StartConfigRulesEvaluationResponse": { "base": "

        The output when you start the evaluation for the specified Config rule.

        ", "refs": { } }, "StartConfigurationRecorderRequest": { "base": "

        The input for the StartConfigurationRecorder action.

        ", "refs": { } }, "StopConfigurationRecorderRequest": { "base": "

        The input for the StopConfigurationRecorder action.

        ", "refs": { } }, "String": { "base": null, "refs": { "ConfigExportDeliveryInfo$lastErrorCode": "

        The error code from the last attempted delivery.

        ", "ConfigExportDeliveryInfo$lastErrorMessage": "

        The error message from the last attempted delivery.

        ", "ConfigRule$ConfigRuleArn": "

        The Amazon Resource Name (ARN) of the AWS Config rule.

        ", "ConfigRule$ConfigRuleId": "

        The ID of the AWS Config rule.

        ", "ConfigRuleEvaluationStatus$ConfigRuleArn": "

        The Amazon Resource Name (ARN) of the AWS Config rule.

        ", "ConfigRuleEvaluationStatus$ConfigRuleId": "

        The ID of the AWS Config rule.

        ", "ConfigRuleEvaluationStatus$LastErrorCode": "

        The error code that AWS Config returned when the rule last failed.

        ", "ConfigRuleEvaluationStatus$LastErrorMessage": "

        The error message that AWS Config returned when the rule last failed.

        ", "ConfigStreamDeliveryInfo$lastErrorCode": "

        The error code from the last attempted delivery.

        ", "ConfigStreamDeliveryInfo$lastErrorMessage": "

        The error message from the last attempted delivery.

        ", "ConfigurationRecorder$roleARN": "

        Amazon Resource Name (ARN) of the IAM role used to describe the AWS resources associated with the account.

        ", "ConfigurationRecorderStatus$name": "

        The name of the configuration recorder.

        ", "ConfigurationRecorderStatus$lastErrorCode": "

        The error code indicating that the recording failed.

        ", "ConfigurationRecorderStatus$lastErrorMessage": "

        The message indicating that the recording failed due to an error.

        ", "DeliverConfigSnapshotResponse$configSnapshotId": "

        The ID of the snapshot that is being created.

        ", "DeliveryChannel$s3BucketName": "

        The name of the Amazon S3 bucket to which AWS Config delivers configuration snapshots and configuration history files.

        If you specify a bucket that belongs to another AWS account, that bucket must have policies that grant access permissions to AWS Config. For more information, see Permissions for the Amazon S3 Bucket in the AWS Config Developer Guide.

        ", "DeliveryChannel$s3KeyPrefix": "

        The prefix for the specified Amazon S3 bucket.

        ", "DeliveryChannel$snsTopicARN": "

        The Amazon Resource Name (ARN) of the Amazon SNS topic to which AWS Config sends notifications about configuration changes.

        If you choose a topic from another account, the topic must have policies that grant access permissions to AWS Config. For more information, see Permissions for the Amazon SNS Topic in the AWS Config Developer Guide.

        ", "DeliveryChannelStatus$name": "

        The name of the delivery channel.

        ", "DescribeComplianceByConfigRuleRequest$NextToken": "

        The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.

        ", "DescribeComplianceByConfigRuleResponse$NextToken": "

        The string that you use in a subsequent request to get the next page of results in a paginated response.

        ", "DescribeConfigRulesRequest$NextToken": "

        The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.

        ", "DescribeConfigRulesResponse$NextToken": "

        The string that you use in a subsequent request to get the next page of results in a paginated response.

        ", "EvaluationResult$ResultToken": "

        An encrypted token that associates an evaluation with an AWS Config rule. The token identifies the rule, the AWS resource being evaluated, and the event that triggered the evaluation.

        ", "GetComplianceDetailsByResourceRequest$NextToken": "

        The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.

        ", "GetComplianceDetailsByResourceResponse$NextToken": "

        The string that you use in a subsequent request to get the next page of results in a paginated response.

        ", "PutEvaluationsRequest$ResultToken": "

        An encrypted token that associates an evaluation with an AWS Config rule. Identifies the rule and the event that triggered the evaluation

        " } }, "StringWithCharLimit128": { "base": null, "refs": { "Scope$TagKey": "

        The tag key that is applied to only those AWS resources that you want you want to trigger an evaluation for the rule.

        " } }, "StringWithCharLimit256": { "base": null, "refs": { "ComplianceByResource$ResourceType": "

        The type of the AWS resource that was evaluated.

        ", "ComplianceByResource$ResourceId": "

        The ID of the AWS resource that was evaluated.

        ", "ComplianceResourceTypes$member": null, "ComplianceSummaryByResourceType$ResourceType": "

        The type of AWS resource.

        ", "ConfigRule$InputParameters": "

        A string in JSON format that is passed to the AWS Config rule Lambda function.

        ", "DescribeComplianceByResourceRequest$ResourceType": "

        The types of AWS resources for which you want compliance information; for example, AWS::EC2::Instance. For this action, you can specify that the resource type is an AWS account by specifying AWS::::Account.

        ", "DescribeComplianceByResourceRequest$ResourceId": "

        The ID of the AWS resource for which you want compliance information. You can specify only one resource ID. If you specify a resource ID, you must also specify a type for ResourceType.

        ", "Evaluation$ComplianceResourceType": "

        The type of AWS resource that was evaluated.

        ", "Evaluation$ComplianceResourceId": "

        The ID of the AWS resource that was evaluated.

        ", "Evaluation$Annotation": "

        Supplementary information about how the evaluation determined the compliance.

        ", "EvaluationResult$Annotation": "

        Supplementary information about how the evaluation determined the compliance.

        ", "EvaluationResultQualifier$ResourceType": "

        The type of AWS resource that was evaluated.

        ", "EvaluationResultQualifier$ResourceId": "

        The ID of the evaluated AWS resource.

        ", "GetComplianceDetailsByResourceRequest$ResourceType": "

        The type of the AWS resource for which you want compliance information.

        ", "GetComplianceDetailsByResourceRequest$ResourceId": "

        The ID of the AWS resource for which you want compliance information.

        ", "ResourceTypes$member": null, "Scope$TagValue": "

        The tag value applied to only those AWS resources that you want to trigger an evaluation for the rule. If you specify a value for TagValue, you must also specify a value for TagKey.

        ", "Scope$ComplianceResourceId": "

        The IDs of the only AWS resource that you want to trigger an evaluation for the rule. If you specify a resource ID, you must specify one resource type for ComplianceResourceTypes.

        ", "Source$SourceIdentifier": "

        For AWS Config managed rules, a predefined identifier from a list. For example, IAM_PASSWORD_POLICY is a managed rule. To reference a managed rule, see Using AWS Managed Config Rules.

        For custom rules, the identifier is the Amazon Resource Name (ARN) of the rule's AWS Lambda function, such as arn:aws:lambda:us-east-1:123456789012:function:custom_rule_name.

        " } }, "StringWithCharLimit64": { "base": null, "refs": { "ComplianceByConfigRule$ConfigRuleName": "

        The name of the AWS Config rule.

        ", "ConfigRule$ConfigRuleName": "

        The name that you assign to the AWS Config rule. The name is required if you are adding a new rule.

        ", "ConfigRuleEvaluationStatus$ConfigRuleName": "

        The name of the AWS Config rule.

        ", "ConfigRuleNames$member": null, "DeleteConfigRuleRequest$ConfigRuleName": "

        The name of the AWS Config rule that you want to delete.

        ", "DeleteEvaluationResultsRequest$ConfigRuleName": "

        The name of the Config rule for which you want to delete the evaluation results.

        ", "EvaluationResultQualifier$ConfigRuleName": "

        The name of the AWS Config rule that was used in the evaluation.

        ", "GetComplianceDetailsByConfigRuleRequest$ConfigRuleName": "

        The name of the AWS Config rule for which you want compliance information.

        ", "ReevaluateConfigRuleNames$member": null } }, "SupplementaryConfiguration": { "base": null, "refs": { "ConfigurationItem$supplementaryConfiguration": "

        Configuration attributes that AWS Config returns for certain resource types to supplement the information returned for the configuration parameter.

        " } }, "SupplementaryConfigurationName": { "base": null, "refs": { "SupplementaryConfiguration$key": null } }, "SupplementaryConfigurationValue": { "base": null, "refs": { "SupplementaryConfiguration$value": null } }, "Tags": { "base": null, "refs": { "ConfigurationItem$tags": "

        A mapping of key value tags associated with the resource.

        " } }, "ValidationException": { "base": "

        The requested action is not valid.

        ", "refs": { } }, "Value": { "base": null, "refs": { "Tags$value": null } }, "Version": { "base": null, "refs": { "ConfigurationItem$version": "

        The version number of the resource configuration.

        " } } } } aws-sdk-go-1.4.22/models/apis/config/2014-11-12/examples-1.json000066400000000000000000000000541300374646400231420ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/config/2014-11-12/paginators-1.json000066400000000000000000000003141300374646400234720ustar00rootroot00000000000000{ "pagination": { "GetResourceConfigHistory": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "limit", "result_key": "configurationItems" } } } aws-sdk-go-1.4.22/models/apis/datapipeline/000077500000000000000000000000001300374646400204415ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/datapipeline/2012-10-29/000077500000000000000000000000001300374646400214735ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/datapipeline/2012-10-29/api-2.json000066400000000000000000000660201300374646400233020ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2012-10-29", "endpointPrefix":"datapipeline", "jsonVersion":"1.1", "serviceFullName":"AWS Data Pipeline", "signatureVersion":"v4", "targetPrefix":"DataPipeline", "protocol":"json" }, "operations":{ "ActivatePipeline":{ "name":"ActivatePipeline", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ActivatePipelineInput"}, "output":{"shape":"ActivatePipelineOutput"}, "errors":[ { "shape":"PipelineNotFoundException", "exception":true }, { "shape":"PipelineDeletedException", "exception":true }, { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"InvalidRequestException", "exception":true } ] }, "AddTags":{ "name":"AddTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsInput"}, "output":{"shape":"AddTagsOutput"}, "errors":[ { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"InvalidRequestException", "exception":true }, { "shape":"PipelineNotFoundException", "exception":true }, { "shape":"PipelineDeletedException", "exception":true } ] }, "CreatePipeline":{ "name":"CreatePipeline", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreatePipelineInput"}, "output":{"shape":"CreatePipelineOutput"}, "errors":[ { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"InvalidRequestException", "exception":true } ] }, "DeactivatePipeline":{ "name":"DeactivatePipeline", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeactivatePipelineInput"}, "output":{"shape":"DeactivatePipelineOutput"}, "errors":[ { "shape":"PipelineNotFoundException", "exception":true }, { "shape":"PipelineDeletedException", "exception":true }, { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"InvalidRequestException", "exception":true } ] }, "DeletePipeline":{ "name":"DeletePipeline", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeletePipelineInput"}, "errors":[ { "shape":"PipelineNotFoundException", "exception":true }, { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"InvalidRequestException", "exception":true } ] }, "DescribeObjects":{ "name":"DescribeObjects", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeObjectsInput"}, "output":{"shape":"DescribeObjectsOutput"}, "errors":[ { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"InvalidRequestException", "exception":true }, { "shape":"PipelineNotFoundException", "exception":true }, { "shape":"PipelineDeletedException", "exception":true } ] }, "DescribePipelines":{ "name":"DescribePipelines", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribePipelinesInput"}, "output":{"shape":"DescribePipelinesOutput"}, "errors":[ { "shape":"PipelineNotFoundException", "exception":true }, { "shape":"PipelineDeletedException", "exception":true }, { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"InvalidRequestException", "exception":true } ] }, "EvaluateExpression":{ "name":"EvaluateExpression", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EvaluateExpressionInput"}, "output":{"shape":"EvaluateExpressionOutput"}, "errors":[ { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"TaskNotFoundException", "exception":true }, { "shape":"InvalidRequestException", "exception":true }, { "shape":"PipelineNotFoundException", "exception":true }, { "shape":"PipelineDeletedException", "exception":true } ] }, "GetPipelineDefinition":{ "name":"GetPipelineDefinition", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetPipelineDefinitionInput"}, "output":{"shape":"GetPipelineDefinitionOutput"}, "errors":[ { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"InvalidRequestException", "exception":true }, { "shape":"PipelineNotFoundException", "exception":true }, { "shape":"PipelineDeletedException", "exception":true } ] }, "ListPipelines":{ "name":"ListPipelines", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListPipelinesInput"}, "output":{"shape":"ListPipelinesOutput"}, "errors":[ { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"InvalidRequestException", "exception":true } ] }, "PollForTask":{ "name":"PollForTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PollForTaskInput"}, "output":{"shape":"PollForTaskOutput"}, "errors":[ { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"InvalidRequestException", "exception":true }, { "shape":"TaskNotFoundException", "exception":true } ] }, "PutPipelineDefinition":{ "name":"PutPipelineDefinition", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutPipelineDefinitionInput"}, "output":{"shape":"PutPipelineDefinitionOutput"}, "errors":[ { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"InvalidRequestException", "exception":true }, { "shape":"PipelineNotFoundException", "exception":true }, { "shape":"PipelineDeletedException", "exception":true } ] }, "QueryObjects":{ "name":"QueryObjects", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"QueryObjectsInput"}, "output":{"shape":"QueryObjectsOutput"}, "errors":[ { "shape":"PipelineNotFoundException", "exception":true }, { "shape":"PipelineDeletedException", "exception":true }, { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"InvalidRequestException", "exception":true } ] }, "RemoveTags":{ "name":"RemoveTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsInput"}, "output":{"shape":"RemoveTagsOutput"}, "errors":[ { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"InvalidRequestException", "exception":true }, { "shape":"PipelineNotFoundException", "exception":true }, { "shape":"PipelineDeletedException", "exception":true } ] }, "ReportTaskProgress":{ "name":"ReportTaskProgress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReportTaskProgressInput"}, "output":{"shape":"ReportTaskProgressOutput"}, "errors":[ { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"InvalidRequestException", "exception":true }, { "shape":"TaskNotFoundException", "exception":true }, { "shape":"PipelineNotFoundException", "exception":true }, { "shape":"PipelineDeletedException", "exception":true } ] }, "ReportTaskRunnerHeartbeat":{ "name":"ReportTaskRunnerHeartbeat", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReportTaskRunnerHeartbeatInput"}, "output":{"shape":"ReportTaskRunnerHeartbeatOutput"}, "errors":[ { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"InvalidRequestException", "exception":true } ] }, "SetStatus":{ "name":"SetStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetStatusInput"}, "errors":[ { "shape":"PipelineNotFoundException", "exception":true }, { "shape":"PipelineDeletedException", "exception":true }, { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"InvalidRequestException", "exception":true } ] }, "SetTaskStatus":{ "name":"SetTaskStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetTaskStatusInput"}, "output":{"shape":"SetTaskStatusOutput"}, "errors":[ { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"TaskNotFoundException", "exception":true }, { "shape":"InvalidRequestException", "exception":true }, { "shape":"PipelineNotFoundException", "exception":true }, { "shape":"PipelineDeletedException", "exception":true } ] }, "ValidatePipelineDefinition":{ "name":"ValidatePipelineDefinition", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ValidatePipelineDefinitionInput"}, "output":{"shape":"ValidatePipelineDefinitionOutput"}, "errors":[ { "shape":"InternalServiceError", "exception":true, "fault":true }, { "shape":"InvalidRequestException", "exception":true }, { "shape":"PipelineNotFoundException", "exception":true }, { "shape":"PipelineDeletedException", "exception":true } ] } }, "shapes":{ "ActivatePipelineInput":{ "type":"structure", "required":["pipelineId"], "members":{ "pipelineId":{"shape":"id"}, "parameterValues":{"shape":"ParameterValueList"}, "startTimestamp":{"shape":"timestamp"} } }, "ActivatePipelineOutput":{ "type":"structure", "members":{ } }, "AddTagsInput":{ "type":"structure", "required":[ "pipelineId", "tags" ], "members":{ "pipelineId":{"shape":"id"}, "tags":{"shape":"tagList"} } }, "AddTagsOutput":{ "type":"structure", "members":{ } }, "CreatePipelineInput":{ "type":"structure", "required":[ "name", "uniqueId" ], "members":{ "name":{"shape":"id"}, "uniqueId":{"shape":"id"}, "description":{"shape":"string"}, "tags":{"shape":"tagList"} } }, "CreatePipelineOutput":{ "type":"structure", "required":["pipelineId"], "members":{ "pipelineId":{"shape":"id"} } }, "DeactivatePipelineInput":{ "type":"structure", "required":["pipelineId"], "members":{ "pipelineId":{"shape":"id"}, "cancelActive":{"shape":"cancelActive"} } }, "DeactivatePipelineOutput":{ "type":"structure", "members":{ } }, "DeletePipelineInput":{ "type":"structure", "required":["pipelineId"], "members":{ "pipelineId":{"shape":"id"} } }, "DescribeObjectsInput":{ "type":"structure", "required":[ "pipelineId", "objectIds" ], "members":{ "pipelineId":{"shape":"id"}, "objectIds":{"shape":"idList"}, "evaluateExpressions":{"shape":"boolean"}, "marker":{"shape":"string"} } }, "DescribeObjectsOutput":{ "type":"structure", "required":["pipelineObjects"], "members":{ "pipelineObjects":{"shape":"PipelineObjectList"}, "marker":{"shape":"string"}, "hasMoreResults":{"shape":"boolean"} } }, "DescribePipelinesInput":{ "type":"structure", "required":["pipelineIds"], "members":{ "pipelineIds":{"shape":"idList"} } }, "DescribePipelinesOutput":{ "type":"structure", "required":["pipelineDescriptionList"], "members":{ "pipelineDescriptionList":{"shape":"PipelineDescriptionList"} } }, "EvaluateExpressionInput":{ "type":"structure", "required":[ "pipelineId", "objectId", "expression" ], "members":{ "pipelineId":{"shape":"id"}, "objectId":{"shape":"id"}, "expression":{"shape":"longString"} } }, "EvaluateExpressionOutput":{ "type":"structure", "required":["evaluatedExpression"], "members":{ "evaluatedExpression":{"shape":"longString"} } }, "Field":{ "type":"structure", "required":["key"], "members":{ "key":{"shape":"fieldNameString"}, "stringValue":{"shape":"fieldStringValue"}, "refValue":{"shape":"fieldNameString"} } }, "GetPipelineDefinitionInput":{ "type":"structure", "required":["pipelineId"], "members":{ "pipelineId":{"shape":"id"}, "version":{"shape":"string"} } }, "GetPipelineDefinitionOutput":{ "type":"structure", "members":{ "pipelineObjects":{"shape":"PipelineObjectList"}, "parameterObjects":{"shape":"ParameterObjectList"}, "parameterValues":{"shape":"ParameterValueList"} } }, "InstanceIdentity":{ "type":"structure", "members":{ "document":{"shape":"string"}, "signature":{"shape":"string"} } }, "InternalServiceError":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true, "fault":true }, "InvalidRequestException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true }, "ListPipelinesInput":{ "type":"structure", "members":{ "marker":{"shape":"string"} } }, "ListPipelinesOutput":{ "type":"structure", "required":["pipelineIdList"], "members":{ "pipelineIdList":{"shape":"pipelineList"}, "marker":{"shape":"string"}, "hasMoreResults":{"shape":"boolean"} } }, "Operator":{ "type":"structure", "members":{ "type":{"shape":"OperatorType"}, "values":{"shape":"stringList"} } }, "OperatorType":{ "type":"string", "enum":[ "EQ", "REF_EQ", "LE", "GE", "BETWEEN" ] }, "ParameterAttribute":{ "type":"structure", "required":[ "key", "stringValue" ], "members":{ "key":{"shape":"attributeNameString"}, "stringValue":{"shape":"attributeValueString"} } }, "ParameterAttributeList":{ "type":"list", "member":{"shape":"ParameterAttribute"} }, "ParameterObject":{ "type":"structure", "required":[ "id", "attributes" ], "members":{ "id":{"shape":"fieldNameString"}, "attributes":{"shape":"ParameterAttributeList"} } }, "ParameterObjectList":{ "type":"list", "member":{"shape":"ParameterObject"} }, "ParameterValue":{ "type":"structure", "required":[ "id", "stringValue" ], "members":{ "id":{"shape":"fieldNameString"}, "stringValue":{"shape":"fieldStringValue"} } }, "ParameterValueList":{ "type":"list", "member":{"shape":"ParameterValue"} }, "PipelineDeletedException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true }, "PipelineDescription":{ "type":"structure", "required":[ "pipelineId", "name", "fields" ], "members":{ "pipelineId":{"shape":"id"}, "name":{"shape":"id"}, "fields":{"shape":"fieldList"}, "description":{"shape":"string"}, "tags":{"shape":"tagList"} } }, "PipelineDescriptionList":{ "type":"list", "member":{"shape":"PipelineDescription"} }, "PipelineIdName":{ "type":"structure", "members":{ "id":{"shape":"id"}, "name":{"shape":"id"} } }, "PipelineNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true }, "PipelineObject":{ "type":"structure", "required":[ "id", "name", "fields" ], "members":{ "id":{"shape":"id"}, "name":{"shape":"id"}, "fields":{"shape":"fieldList"} } }, "PipelineObjectList":{ "type":"list", "member":{"shape":"PipelineObject"} }, "PipelineObjectMap":{ "type":"map", "key":{"shape":"id"}, "value":{"shape":"PipelineObject"} }, "PollForTaskInput":{ "type":"structure", "required":["workerGroup"], "members":{ "workerGroup":{"shape":"string"}, "hostname":{"shape":"id"}, "instanceIdentity":{"shape":"InstanceIdentity"} } }, "PollForTaskOutput":{ "type":"structure", "members":{ "taskObject":{"shape":"TaskObject"} } }, "PutPipelineDefinitionInput":{ "type":"structure", "required":[ "pipelineId", "pipelineObjects" ], "members":{ "pipelineId":{"shape":"id"}, "pipelineObjects":{"shape":"PipelineObjectList"}, "parameterObjects":{"shape":"ParameterObjectList"}, "parameterValues":{"shape":"ParameterValueList"} } }, "PutPipelineDefinitionOutput":{ "type":"structure", "required":["errored"], "members":{ "validationErrors":{"shape":"ValidationErrors"}, "validationWarnings":{"shape":"ValidationWarnings"}, "errored":{"shape":"boolean"} } }, "Query":{ "type":"structure", "members":{ "selectors":{"shape":"SelectorList"} } }, "QueryObjectsInput":{ "type":"structure", "required":[ "pipelineId", "sphere" ], "members":{ "pipelineId":{"shape":"id"}, "query":{"shape":"Query"}, "sphere":{"shape":"string"}, "marker":{"shape":"string"}, "limit":{"shape":"int"} } }, "QueryObjectsOutput":{ "type":"structure", "members":{ "ids":{"shape":"idList"}, "marker":{"shape":"string"}, "hasMoreResults":{"shape":"boolean"} } }, "RemoveTagsInput":{ "type":"structure", "required":[ "pipelineId", "tagKeys" ], "members":{ "pipelineId":{"shape":"id"}, "tagKeys":{"shape":"stringList"} } }, "RemoveTagsOutput":{ "type":"structure", "members":{ } }, "ReportTaskProgressInput":{ "type":"structure", "required":["taskId"], "members":{ "taskId":{"shape":"taskId"}, "fields":{"shape":"fieldList"} } }, "ReportTaskProgressOutput":{ "type":"structure", "required":["canceled"], "members":{ "canceled":{"shape":"boolean"} } }, "ReportTaskRunnerHeartbeatInput":{ "type":"structure", "required":["taskrunnerId"], "members":{ "taskrunnerId":{"shape":"id"}, "workerGroup":{"shape":"string"}, "hostname":{"shape":"id"} } }, "ReportTaskRunnerHeartbeatOutput":{ "type":"structure", "required":["terminate"], "members":{ "terminate":{"shape":"boolean"} } }, "Selector":{ "type":"structure", "members":{ "fieldName":{"shape":"string"}, "operator":{"shape":"Operator"} } }, "SelectorList":{ "type":"list", "member":{"shape":"Selector"} }, "SetStatusInput":{ "type":"structure", "required":[ "pipelineId", "objectIds", "status" ], "members":{ "pipelineId":{"shape":"id"}, "objectIds":{"shape":"idList"}, "status":{"shape":"string"} } }, "SetTaskStatusInput":{ "type":"structure", "required":[ "taskId", "taskStatus" ], "members":{ "taskId":{"shape":"taskId"}, "taskStatus":{"shape":"TaskStatus"}, "errorId":{"shape":"string"}, "errorMessage":{"shape":"errorMessage"}, "errorStackTrace":{"shape":"string"} } }, "SetTaskStatusOutput":{ "type":"structure", "members":{ } }, "Tag":{ "type":"structure", "required":[ "key", "value" ], "members":{ "key":{"shape":"tagKey"}, "value":{"shape":"tagValue"} } }, "TaskNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true }, "TaskObject":{ "type":"structure", "members":{ "taskId":{"shape":"taskId"}, "pipelineId":{"shape":"id"}, "attemptId":{"shape":"id"}, "objects":{"shape":"PipelineObjectMap"} } }, "TaskStatus":{ "type":"string", "enum":[ "FINISHED", "FAILED", "FALSE" ] }, "ValidatePipelineDefinitionInput":{ "type":"structure", "required":[ "pipelineId", "pipelineObjects" ], "members":{ "pipelineId":{"shape":"id"}, "pipelineObjects":{"shape":"PipelineObjectList"}, "parameterObjects":{"shape":"ParameterObjectList"}, "parameterValues":{"shape":"ParameterValueList"} } }, "ValidatePipelineDefinitionOutput":{ "type":"structure", "required":["errored"], "members":{ "validationErrors":{"shape":"ValidationErrors"}, "validationWarnings":{"shape":"ValidationWarnings"}, "errored":{"shape":"boolean"} } }, "ValidationError":{ "type":"structure", "members":{ "id":{"shape":"id"}, "errors":{"shape":"validationMessages"} } }, "ValidationErrors":{ "type":"list", "member":{"shape":"ValidationError"} }, "ValidationWarning":{ "type":"structure", "members":{ "id":{"shape":"id"}, "warnings":{"shape":"validationMessages"} } }, "ValidationWarnings":{ "type":"list", "member":{"shape":"ValidationWarning"} }, "attributeNameString":{ "type":"string", "min":1, "max":256, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "attributeValueString":{ "type":"string", "min":0, "max":10240, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "boolean":{"type":"boolean"}, "cancelActive":{"type":"boolean"}, "errorMessage":{"type":"string"}, "fieldList":{ "type":"list", "member":{"shape":"Field"} }, "fieldNameString":{ "type":"string", "min":1, "max":256, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "fieldStringValue":{ "type":"string", "min":0, "max":10240, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "id":{ "type":"string", "min":1, "max":1024, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "idList":{ "type":"list", "member":{"shape":"id"} }, "int":{"type":"integer"}, "longString":{ "type":"string", "min":0, "max":20971520, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "pipelineList":{ "type":"list", "member":{"shape":"PipelineIdName"} }, "string":{ "type":"string", "min":0, "max":1024, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "stringList":{ "type":"list", "member":{"shape":"string"} }, "tagKey":{ "type":"string", "min":1, "max":128 }, "tagList":{ "type":"list", "member":{"shape":"Tag"}, "min":0, "max":10 }, "tagValue":{ "type":"string", "min":0, "max":256 }, "taskId":{ "type":"string", "min":1, "max":2048, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "timestamp":{"type":"timestamp"}, "validationMessage":{ "type":"string", "min":0, "max":10000, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "validationMessages":{ "type":"list", "member":{"shape":"validationMessage"} } } } aws-sdk-go-1.4.22/models/apis/datapipeline/2012-10-29/docs-2.json000066400000000000000000001210541300374646400234600ustar00rootroot00000000000000{ "version": "2.0", "operations": { "ActivatePipeline": "

        Validates the specified pipeline and starts processing pipeline tasks. If the pipeline does not pass validation, activation fails.

        If you need to pause the pipeline to investigate an issue with a component, such as a data source or script, call DeactivatePipeline.

        To activate a finished pipeline, modify the end date for the pipeline and then activate it.

        ", "AddTags": "

        Adds or modifies tags for the specified pipeline.

        ", "CreatePipeline": "

        Creates a new, empty pipeline. Use PutPipelineDefinition to populate the pipeline.

        ", "DeactivatePipeline": "

        Deactivates the specified running pipeline. The pipeline is set to the DEACTIVATING state until the deactivation process completes.

        To resume a deactivated pipeline, use ActivatePipeline. By default, the pipeline resumes from the last completed execution. Optionally, you can specify the date and time to resume the pipeline.

        ", "DeletePipeline": "

        Deletes a pipeline, its pipeline definition, and its run history. AWS Data Pipeline attempts to cancel instances associated with the pipeline that are currently being processed by task runners.

        Deleting a pipeline cannot be undone. You cannot query or restore a deleted pipeline. To temporarily pause a pipeline instead of deleting it, call SetStatus with the status set to PAUSE on individual components. Components that are paused by SetStatus can be resumed.

        ", "DescribeObjects": "

        Gets the object definitions for a set of objects associated with the pipeline. Object definitions are composed of a set of fields that define the properties of the object.

        ", "DescribePipelines": "

        Retrieves metadata about one or more pipelines. The information retrieved includes the name of the pipeline, the pipeline identifier, its current state, and the user account that owns the pipeline. Using account credentials, you can retrieve metadata about pipelines that you or your IAM users have created. If you are using an IAM user account, you can retrieve metadata about only those pipelines for which you have read permissions.

        To retrieve the full pipeline definition instead of metadata about the pipeline, call GetPipelineDefinition.

        ", "EvaluateExpression": "

        Task runners call EvaluateExpression to evaluate a string in the context of the specified object. For example, a task runner can evaluate SQL queries stored in Amazon S3.

        ", "GetPipelineDefinition": "

        Gets the definition of the specified pipeline. You can call GetPipelineDefinition to retrieve the pipeline definition that you provided using PutPipelineDefinition.

        ", "ListPipelines": "

        Lists the pipeline identifiers for all active pipelines that you have permission to access.

        ", "PollForTask": "

        Task runners call PollForTask to receive a task to perform from AWS Data Pipeline. The task runner specifies which tasks it can perform by setting a value for the workerGroup parameter. The task returned can come from any of the pipelines that match the workerGroup value passed in by the task runner and that was launched using the IAM user credentials specified by the task runner.

        If tasks are ready in the work queue, PollForTask returns a response immediately. If no tasks are available in the queue, PollForTask uses long-polling and holds on to a poll connection for up to a 90 seconds, during which time the first newly scheduled task is handed to the task runner. To accomodate this, set the socket timeout in your task runner to 90 seconds. The task runner should not call PollForTask again on the same workerGroup until it receives a response, and this can take up to 90 seconds.

        ", "PutPipelineDefinition": "

        Adds tasks, schedules, and preconditions to the specified pipeline. You can use PutPipelineDefinition to populate a new pipeline.

        PutPipelineDefinition also validates the configuration as it adds it to the pipeline. Changes to the pipeline are saved unless one of the following three validation errors exists in the pipeline.

        1. An object is missing a name or identifier field.
        2. A string or reference field is empty.
        3. The number of objects in the pipeline exceeds the maximum allowed objects.
        4. The pipeline is in a FINISHED state.

        Pipeline object definitions are passed to the PutPipelineDefinition action and returned by the GetPipelineDefinition action.

        ", "QueryObjects": "

        Queries the specified pipeline for the names of objects that match the specified set of conditions.

        ", "RemoveTags": "

        Removes existing tags from the specified pipeline.

        ", "ReportTaskProgress": "

        Task runners call ReportTaskProgress when assigned a task to acknowledge that it has the task. If the web service does not receive this acknowledgement within 2 minutes, it assigns the task in a subsequent PollForTask call. After this initial acknowledgement, the task runner only needs to report progress every 15 minutes to maintain its ownership of the task. You can change this reporting time from 15 minutes by specifying a reportProgressTimeout field in your pipeline.

        If a task runner does not report its status after 5 minutes, AWS Data Pipeline assumes that the task runner is unable to process the task and reassigns the task in a subsequent response to PollForTask. Task runners should call ReportTaskProgress every 60 seconds.

        ", "ReportTaskRunnerHeartbeat": "

        Task runners call ReportTaskRunnerHeartbeat every 15 minutes to indicate that they are operational. If the AWS Data Pipeline Task Runner is launched on a resource managed by AWS Data Pipeline, the web service can use this call to detect when the task runner application has failed and restart a new instance.

        ", "SetStatus": "

        Requests that the status of the specified physical or logical pipeline objects be updated in the specified pipeline. This update might not occur immediately, but is eventually consistent. The status that can be set depends on the type of object (for example, DataNode or Activity). You cannot perform this operation on FINISHED pipelines and attempting to do so returns InvalidRequestException.

        ", "SetTaskStatus": "

        Task runners call SetTaskStatus to notify AWS Data Pipeline that a task is completed and provide information about the final status. A task runner makes this call regardless of whether the task was sucessful. A task runner does not need to call SetTaskStatus for tasks that are canceled by the web service during a call to ReportTaskProgress.

        ", "ValidatePipelineDefinition": "

        Validates the specified pipeline definition to ensure that it is well formed and can be run without error.

        " }, "service": "

        AWS Data Pipeline configures and manages a data-driven workflow called a pipeline. AWS Data Pipeline handles the details of scheduling and ensuring that data dependencies are met so that your application can focus on processing the data.

        AWS Data Pipeline provides a JAR implementation of a task runner called AWS Data Pipeline Task Runner. AWS Data Pipeline Task Runner provides logic for common data management scenarios, such as performing database queries and running data analysis using Amazon Elastic MapReduce (Amazon EMR). You can use AWS Data Pipeline Task Runner as your task runner, or you can write your own task runner to provide custom data management.

        AWS Data Pipeline implements two main sets of functionality. Use the first set to create a pipeline and define data sources, schedules, dependencies, and the transforms to be performed on the data. Use the second set in your task runner application to receive the next task ready for processing. The logic for performing the task, such as querying the data, running data analysis, or converting the data from one format to another, is contained within the task runner. The task runner performs the task assigned to it by the web service, reporting progress to the web service as it does so. When the task is done, the task runner reports the final success or failure of the task to the web service.

        ", "shapes": { "ActivatePipelineInput": { "base": "

        Contains the parameters for ActivatePipeline.

        ", "refs": { } }, "ActivatePipelineOutput": { "base": "

        Contains the output of ActivatePipeline.

        ", "refs": { } }, "AddTagsInput": { "base": "

        Contains the parameters for AddTags.

        ", "refs": { } }, "AddTagsOutput": { "base": "

        Contains the output of AddTags.

        ", "refs": { } }, "CreatePipelineInput": { "base": "

        Contains the parameters for CreatePipeline.

        ", "refs": { } }, "CreatePipelineOutput": { "base": "

        Contains the output of CreatePipeline.

        ", "refs": { } }, "DeactivatePipelineInput": { "base": "

        Contains the parameters for DeactivatePipeline.

        ", "refs": { } }, "DeactivatePipelineOutput": { "base": "

        Contains the output of DeactivatePipeline.

        ", "refs": { } }, "DeletePipelineInput": { "base": "

        Contains the parameters for DeletePipeline.

        ", "refs": { } }, "DescribeObjectsInput": { "base": "

        Contains the parameters for DescribeObjects.

        ", "refs": { } }, "DescribeObjectsOutput": { "base": "

        Contains the output of DescribeObjects.

        ", "refs": { } }, "DescribePipelinesInput": { "base": "

        Contains the parameters for DescribePipelines.

        ", "refs": { } }, "DescribePipelinesOutput": { "base": "

        Contains the output of DescribePipelines.

        ", "refs": { } }, "EvaluateExpressionInput": { "base": "

        Contains the parameters for EvaluateExpression.

        ", "refs": { } }, "EvaluateExpressionOutput": { "base": "

        Contains the output of EvaluateExpression.

        ", "refs": { } }, "Field": { "base": "

        A key-value pair that describes a property of a pipeline object. The value is specified as either a string value (StringValue) or a reference to another object (RefValue) but not as both.

        ", "refs": { "fieldList$member": null } }, "GetPipelineDefinitionInput": { "base": "

        Contains the parameters for GetPipelineDefinition.

        ", "refs": { } }, "GetPipelineDefinitionOutput": { "base": "

        Contains the output of GetPipelineDefinition.

        ", "refs": { } }, "InstanceIdentity": { "base": "

        Identity information for the EC2 instance that is hosting the task runner. You can get this value by calling a metadata URI from the EC2 instance. For more information, see Instance Metadata in the Amazon Elastic Compute Cloud User Guide. Passing in this value proves that your task runner is running on an EC2 instance, and ensures the proper AWS Data Pipeline service charges are applied to your pipeline.

        ", "refs": { "PollForTaskInput$instanceIdentity": "

        Identity information for the EC2 instance that is hosting the task runner. You can get this value from the instance using http://169.254.169.254/latest/meta-data/instance-id. For more information, see Instance Metadata in the Amazon Elastic Compute Cloud User Guide. Passing in this value proves that your task runner is running on an EC2 instance, and ensures the proper AWS Data Pipeline service charges are applied to your pipeline.

        " } }, "InternalServiceError": { "base": "

        An internal service error occurred.

        ", "refs": { } }, "InvalidRequestException": { "base": "

        The request was not valid. Verify that your request was properly formatted, that the signature was generated with the correct credentials, and that you haven't exceeded any of the service limits for your account.

        ", "refs": { } }, "ListPipelinesInput": { "base": "

        Contains the parameters for ListPipelines.

        ", "refs": { } }, "ListPipelinesOutput": { "base": "

        Contains the output of ListPipelines.

        ", "refs": { } }, "Operator": { "base": "

        Contains a logical operation for comparing the value of a field with a specified value.

        ", "refs": { "Selector$operator": null } }, "OperatorType": { "base": null, "refs": { "Operator$type": "

        The logical operation to be performed: equal (EQ), equal reference (REF_EQ), less than or equal (LE), greater than or equal (GE), or between (BETWEEN). Equal reference (REF_EQ) can be used only with reference fields. The other comparison types can be used only with String fields. The comparison types you can use apply only to certain object fields, as detailed below.

        The comparison operators EQ and REF_EQ act on the following fields:

        • name
        • @sphere
        • parent
        • @componentParent
        • @instanceParent
        • @status
        • @scheduledStartTime
        • @scheduledEndTime
        • @actualStartTime
        • @actualEndTime

        The comparison operators GE, LE, and BETWEEN act on the following fields:

        • @scheduledStartTime
        • @scheduledEndTime
        • @actualStartTime
        • @actualEndTime

        Note that fields beginning with the at sign (@) are read-only and set by the web service. When you name fields, you should choose names containing only alpha-numeric values, as symbols may be reserved by AWS Data Pipeline. User-defined fields that you add to a pipeline should prefix their name with the string \"my\".

        " } }, "ParameterAttribute": { "base": "

        The attributes allowed or specified with a parameter object.

        ", "refs": { "ParameterAttributeList$member": null } }, "ParameterAttributeList": { "base": null, "refs": { "ParameterObject$attributes": "

        The attributes of the parameter object.

        " } }, "ParameterObject": { "base": "

        Contains information about a parameter object.

        ", "refs": { "ParameterObjectList$member": null } }, "ParameterObjectList": { "base": null, "refs": { "GetPipelineDefinitionOutput$parameterObjects": "

        The parameter objects used in the pipeline definition.

        ", "PutPipelineDefinitionInput$parameterObjects": "

        The parameter objects used with the pipeline.

        ", "ValidatePipelineDefinitionInput$parameterObjects": "

        The parameter objects used with the pipeline.

        " } }, "ParameterValue": { "base": "

        A value or list of parameter values.

        ", "refs": { "ParameterValueList$member": null } }, "ParameterValueList": { "base": null, "refs": { "ActivatePipelineInput$parameterValues": "

        A list of parameter values to pass to the pipeline at activation.

        ", "GetPipelineDefinitionOutput$parameterValues": "

        The parameter values used in the pipeline definition.

        ", "PutPipelineDefinitionInput$parameterValues": "

        The parameter values used with the pipeline.

        ", "ValidatePipelineDefinitionInput$parameterValues": "

        The parameter values used with the pipeline.

        " } }, "PipelineDeletedException": { "base": "

        The specified pipeline has been deleted.

        ", "refs": { } }, "PipelineDescription": { "base": "

        Contains pipeline metadata.

        ", "refs": { "PipelineDescriptionList$member": null } }, "PipelineDescriptionList": { "base": null, "refs": { "DescribePipelinesOutput$pipelineDescriptionList": "

        An array of descriptions for the specified pipelines.

        " } }, "PipelineIdName": { "base": "

        Contains the name and identifier of a pipeline.

        ", "refs": { "pipelineList$member": null } }, "PipelineNotFoundException": { "base": "

        The specified pipeline was not found. Verify that you used the correct user and account identifiers.

        ", "refs": { } }, "PipelineObject": { "base": "

        Contains information about a pipeline object. This can be a logical, physical, or physical attempt pipeline object. The complete set of components of a pipeline defines the pipeline.

        ", "refs": { "PipelineObjectList$member": null, "PipelineObjectMap$value": null } }, "PipelineObjectList": { "base": null, "refs": { "DescribeObjectsOutput$pipelineObjects": "

        An array of object definitions.

        ", "GetPipelineDefinitionOutput$pipelineObjects": "

        The objects defined in the pipeline.

        ", "PutPipelineDefinitionInput$pipelineObjects": "

        The objects that define the pipeline. These objects overwrite the existing pipeline definition.

        ", "ValidatePipelineDefinitionInput$pipelineObjects": "

        The objects that define the pipeline changes to validate against the pipeline.

        " } }, "PipelineObjectMap": { "base": null, "refs": { "TaskObject$objects": "

        Connection information for the location where the task runner will publish the output of the task.

        " } }, "PollForTaskInput": { "base": "

        Contains the parameters for PollForTask.

        ", "refs": { } }, "PollForTaskOutput": { "base": "

        Contains the output of PollForTask.

        ", "refs": { } }, "PutPipelineDefinitionInput": { "base": "

        Contains the parameters for PutPipelineDefinition.

        ", "refs": { } }, "PutPipelineDefinitionOutput": { "base": "

        Contains the output of PutPipelineDefinition.

        ", "refs": { } }, "Query": { "base": "

        Defines the query to run against an object.

        ", "refs": { "QueryObjectsInput$query": "

        The query that defines the objects to be returned. The Query object can contain a maximum of ten selectors. The conditions in the query are limited to top-level String fields in the object. These filters can be applied to components, instances, and attempts.

        " } }, "QueryObjectsInput": { "base": "

        Contains the parameters for QueryObjects.

        ", "refs": { } }, "QueryObjectsOutput": { "base": "

        Contains the output of QueryObjects.

        ", "refs": { } }, "RemoveTagsInput": { "base": "

        Contains the parameters for RemoveTags.

        ", "refs": { } }, "RemoveTagsOutput": { "base": "

        Contains the output of RemoveTags.

        ", "refs": { } }, "ReportTaskProgressInput": { "base": "

        Contains the parameters for ReportTaskProgress.

        ", "refs": { } }, "ReportTaskProgressOutput": { "base": "

        Contains the output of ReportTaskProgress.

        ", "refs": { } }, "ReportTaskRunnerHeartbeatInput": { "base": "

        Contains the parameters for ReportTaskRunnerHeartbeat.

        ", "refs": { } }, "ReportTaskRunnerHeartbeatOutput": { "base": "

        Contains the output of ReportTaskRunnerHeartbeat.

        ", "refs": { } }, "Selector": { "base": "

        A comparision that is used to determine whether a query should return this object.

        ", "refs": { "SelectorList$member": null } }, "SelectorList": { "base": "

        The list of Selectors that define queries on individual fields.

        ", "refs": { "Query$selectors": "

        List of selectors that define the query. An object must satisfy all of the selectors to match the query.

        " } }, "SetStatusInput": { "base": "

        Contains the parameters for SetStatus.

        ", "refs": { } }, "SetTaskStatusInput": { "base": "

        Contains the parameters for SetTaskStatus.

        ", "refs": { } }, "SetTaskStatusOutput": { "base": "

        Contains the output of SetTaskStatus.

        ", "refs": { } }, "Tag": { "base": "

        Tags are key/value pairs defined by a user and associated with a pipeline to control access. AWS Data Pipeline allows you to associate ten tags per pipeline. For more information, see Controlling User Access to Pipelines in the AWS Data Pipeline Developer Guide.

        ", "refs": { "tagList$member": null } }, "TaskNotFoundException": { "base": "

        The specified task was not found.

        ", "refs": { } }, "TaskObject": { "base": "

        Contains information about a pipeline task that is assigned to a task runner.

        ", "refs": { "PollForTaskOutput$taskObject": "

        The information needed to complete the task that is being assigned to the task runner. One of the fields returned in this object is taskId, which contains an identifier for the task being assigned. The calling task runner uses taskId in subsequent calls to ReportTaskProgress and SetTaskStatus.

        " } }, "TaskStatus": { "base": null, "refs": { "SetTaskStatusInput$taskStatus": "

        If FINISHED, the task successfully completed. If FAILED, the task ended unsuccessfully. Preconditions use false.

        " } }, "ValidatePipelineDefinitionInput": { "base": "

        Contains the parameters for ValidatePipelineDefinition.

        ", "refs": { } }, "ValidatePipelineDefinitionOutput": { "base": "

        Contains the output of ValidatePipelineDefinition.

        ", "refs": { } }, "ValidationError": { "base": "

        Defines a validation error. Validation errors prevent pipeline activation. The set of validation errors that can be returned are defined by AWS Data Pipeline.

        ", "refs": { "ValidationErrors$member": null } }, "ValidationErrors": { "base": null, "refs": { "PutPipelineDefinitionOutput$validationErrors": "

        The validation errors that are associated with the objects defined in pipelineObjects.

        ", "ValidatePipelineDefinitionOutput$validationErrors": "

        Any validation errors that were found.

        " } }, "ValidationWarning": { "base": "

        Defines a validation warning. Validation warnings do not prevent pipeline activation. The set of validation warnings that can be returned are defined by AWS Data Pipeline.

        ", "refs": { "ValidationWarnings$member": null } }, "ValidationWarnings": { "base": null, "refs": { "PutPipelineDefinitionOutput$validationWarnings": "

        The validation warnings that are associated with the objects defined in pipelineObjects.

        ", "ValidatePipelineDefinitionOutput$validationWarnings": "

        Any validation warnings that were found.

        " } }, "attributeNameString": { "base": null, "refs": { "ParameterAttribute$key": "

        The field identifier.

        " } }, "attributeValueString": { "base": null, "refs": { "ParameterAttribute$stringValue": "

        The field value, expressed as a String.

        " } }, "boolean": { "base": null, "refs": { "DescribeObjectsInput$evaluateExpressions": "

        Indicates whether any expressions in the object should be evaluated when the object descriptions are returned.

        ", "DescribeObjectsOutput$hasMoreResults": "

        Indicates whether there are more results to return.

        ", "ListPipelinesOutput$hasMoreResults": "

        Indicates whether there are more results that can be obtained by a subsequent call.

        ", "PutPipelineDefinitionOutput$errored": "

        Indicates whether there were validation errors, and the pipeline definition is stored but cannot be activated until you correct the pipeline and call PutPipelineDefinition to commit the corrected pipeline.

        ", "QueryObjectsOutput$hasMoreResults": "

        Indicates whether there are more results that can be obtained by a subsequent call.

        ", "ReportTaskProgressOutput$canceled": "

        If true, the calling task runner should cancel processing of the task. The task runner does not need to call SetTaskStatus for canceled tasks.

        ", "ReportTaskRunnerHeartbeatOutput$terminate": "

        Indicates whether the calling task runner should terminate.

        ", "ValidatePipelineDefinitionOutput$errored": "

        Indicates whether there were validation errors.

        " } }, "cancelActive": { "base": null, "refs": { "DeactivatePipelineInput$cancelActive": "

        Indicates whether to cancel any running objects. The default is true, which sets the state of any running objects to CANCELED. If this value is false, the pipeline is deactivated after all running objects finish.

        " } }, "errorMessage": { "base": null, "refs": { "InternalServiceError$message": "

        Description of the error message.

        ", "InvalidRequestException$message": "

        Description of the error message.

        ", "PipelineDeletedException$message": "

        Description of the error message.

        ", "PipelineNotFoundException$message": "

        Description of the error message.

        ", "SetTaskStatusInput$errorMessage": "

        If an error occurred during the task, this value specifies a text description of the error. This value is set on the physical attempt object. It is used to display error information to the user. The web service does not parse this value.

        ", "TaskNotFoundException$message": "

        Description of the error message.

        " } }, "fieldList": { "base": null, "refs": { "PipelineDescription$fields": "

        A list of read-only fields that contain metadata about the pipeline: @userId, @accountId, and @pipelineState.

        ", "PipelineObject$fields": "

        Key-value pairs that define the properties of the object.

        ", "ReportTaskProgressInput$fields": "

        Key-value pairs that define the properties of the ReportTaskProgressInput object.

        " } }, "fieldNameString": { "base": null, "refs": { "Field$key": "

        The field identifier.

        ", "Field$refValue": "

        The field value, expressed as the identifier of another object.

        ", "ParameterObject$id": "

        The ID of the parameter object.

        ", "ParameterValue$id": "

        The ID of the parameter value.

        " } }, "fieldStringValue": { "base": null, "refs": { "Field$stringValue": "

        The field value, expressed as a String.

        ", "ParameterValue$stringValue": "

        The field value, expressed as a String.

        " } }, "id": { "base": null, "refs": { "ActivatePipelineInput$pipelineId": "

        The ID of the pipeline.

        ", "AddTagsInput$pipelineId": "

        The ID of the pipeline.

        ", "CreatePipelineInput$name": "

        The name for the pipeline. You can use the same name for multiple pipelines associated with your AWS account, because AWS Data Pipeline assigns each pipeline a unique pipeline identifier.

        ", "CreatePipelineInput$uniqueId": "

        A unique identifier. This identifier is not the same as the pipeline identifier assigned by AWS Data Pipeline. You are responsible for defining the format and ensuring the uniqueness of this identifier. You use this parameter to ensure idempotency during repeated calls to CreatePipeline. For example, if the first call to CreatePipeline does not succeed, you can pass in the same unique identifier and pipeline name combination on a subsequent call to CreatePipeline. CreatePipeline ensures that if a pipeline already exists with the same name and unique identifier, a new pipeline is not created. Instead, you'll receive the pipeline identifier from the previous attempt. The uniqueness of the name and unique identifier combination is scoped to the AWS account or IAM user credentials.

        ", "CreatePipelineOutput$pipelineId": "

        The ID that AWS Data Pipeline assigns the newly created pipeline. For example, df-06372391ZG65EXAMPLE.

        ", "DeactivatePipelineInput$pipelineId": "

        The ID of the pipeline.

        ", "DeletePipelineInput$pipelineId": "

        The ID of the pipeline.

        ", "DescribeObjectsInput$pipelineId": "

        The ID of the pipeline that contains the object definitions.

        ", "EvaluateExpressionInput$pipelineId": "

        The ID of the pipeline.

        ", "EvaluateExpressionInput$objectId": "

        The ID of the object.

        ", "GetPipelineDefinitionInput$pipelineId": "

        The ID of the pipeline.

        ", "PipelineDescription$pipelineId": "

        The pipeline identifier that was assigned by AWS Data Pipeline. This is a string of the form df-297EG78HU43EEXAMPLE.

        ", "PipelineDescription$name": "

        The name of the pipeline.

        ", "PipelineIdName$id": "

        The ID of the pipeline that was assigned by AWS Data Pipeline. This is a string of the form df-297EG78HU43EEXAMPLE.

        ", "PipelineIdName$name": "

        The name of the pipeline.

        ", "PipelineObject$id": "

        The ID of the object.

        ", "PipelineObject$name": "

        The name of the object.

        ", "PipelineObjectMap$key": null, "PollForTaskInput$hostname": "

        The public DNS name of the calling task runner.

        ", "PutPipelineDefinitionInput$pipelineId": "

        The ID of the pipeline.

        ", "QueryObjectsInput$pipelineId": "

        The ID of the pipeline.

        ", "RemoveTagsInput$pipelineId": "

        The ID of the pipeline.

        ", "ReportTaskRunnerHeartbeatInput$taskrunnerId": "

        The ID of the task runner. This value should be unique across your AWS account. In the case of AWS Data Pipeline Task Runner launched on a resource managed by AWS Data Pipeline, the web service provides a unique identifier when it launches the application. If you have written a custom task runner, you should assign a unique identifier for the task runner.

        ", "ReportTaskRunnerHeartbeatInput$hostname": "

        The public DNS name of the task runner.

        ", "SetStatusInput$pipelineId": "

        The ID of the pipeline that contains the objects.

        ", "TaskObject$pipelineId": "

        The ID of the pipeline that provided the task.

        ", "TaskObject$attemptId": "

        The ID of the pipeline task attempt object. AWS Data Pipeline uses this value to track how many times a task is attempted.

        ", "ValidatePipelineDefinitionInput$pipelineId": "

        The ID of the pipeline.

        ", "ValidationError$id": "

        The identifier of the object that contains the validation error.

        ", "ValidationWarning$id": "

        The identifier of the object that contains the validation warning.

        ", "idList$member": null } }, "idList": { "base": null, "refs": { "DescribeObjectsInput$objectIds": "

        The IDs of the pipeline objects that contain the definitions to be described. You can pass as many as 25 identifiers in a single call to DescribeObjects.

        ", "DescribePipelinesInput$pipelineIds": "

        The IDs of the pipelines to describe. You can pass as many as 25 identifiers in a single call. To obtain pipeline IDs, call ListPipelines.

        ", "QueryObjectsOutput$ids": "

        The identifiers that match the query selectors.

        ", "SetStatusInput$objectIds": "

        The IDs of the objects. The corresponding objects can be either physical or components, but not a mix of both types.

        " } }, "int": { "base": null, "refs": { "QueryObjectsInput$limit": "

        The maximum number of object names that QueryObjects will return in a single call. The default value is 100.

        " } }, "longString": { "base": null, "refs": { "EvaluateExpressionInput$expression": "

        The expression to evaluate.

        ", "EvaluateExpressionOutput$evaluatedExpression": "

        The evaluated expression.

        " } }, "pipelineList": { "base": null, "refs": { "ListPipelinesOutput$pipelineIdList": "

        The pipeline identifiers. If you require additional information about the pipelines, you can use these identifiers to call DescribePipelines and GetPipelineDefinition.

        " } }, "string": { "base": null, "refs": { "CreatePipelineInput$description": "

        The description for the pipeline.

        ", "DescribeObjectsInput$marker": "

        The starting point for the results to be returned. For the first call, this value should be empty. As long as there are more results, continue to call DescribeObjects with the marker value from the previous call to retrieve the next set of results.

        ", "DescribeObjectsOutput$marker": "

        The starting point for the next page of results. To view the next page of results, call DescribeObjects again with this marker value. If the value is null, there are no more results.

        ", "GetPipelineDefinitionInput$version": "

        The version of the pipeline definition to retrieve. Set this parameter to latest (default) to use the last definition saved to the pipeline or active to use the last definition that was activated.

        ", "InstanceIdentity$document": "

        A description of an EC2 instance that is generated when the instance is launched and exposed to the instance via the instance metadata service in the form of a JSON representation of an object.

        ", "InstanceIdentity$signature": "

        A signature which can be used to verify the accuracy and authenticity of the information provided in the instance identity document.

        ", "ListPipelinesInput$marker": "

        The starting point for the results to be returned. For the first call, this value should be empty. As long as there are more results, continue to call ListPipelines with the marker value from the previous call to retrieve the next set of results.

        ", "ListPipelinesOutput$marker": "

        The starting point for the next page of results. To view the next page of results, call ListPipelinesOutput again with this marker value. If the value is null, there are no more results.

        ", "PipelineDescription$description": "

        Description of the pipeline.

        ", "PollForTaskInput$workerGroup": "

        The type of task the task runner is configured to accept and process. The worker group is set as a field on objects in the pipeline when they are created. You can only specify a single value for workerGroup in the call to PollForTask. There are no wildcard values permitted in workerGroup; the string must be an exact, case-sensitive, match.

        ", "QueryObjectsInput$sphere": "

        Indicates whether the query applies to components or instances. The possible values are: COMPONENT, INSTANCE, and ATTEMPT.

        ", "QueryObjectsInput$marker": "

        The starting point for the results to be returned. For the first call, this value should be empty. As long as there are more results, continue to call QueryObjects with the marker value from the previous call to retrieve the next set of results.

        ", "QueryObjectsOutput$marker": "

        The starting point for the next page of results. To view the next page of results, call QueryObjects again with this marker value. If the value is null, there are no more results.

        ", "ReportTaskRunnerHeartbeatInput$workerGroup": "

        The type of task the task runner is configured to accept and process. The worker group is set as a field on objects in the pipeline when they are created. You can only specify a single value for workerGroup. There are no wildcard values permitted in workerGroup; the string must be an exact, case-sensitive, match.

        ", "Selector$fieldName": "

        The name of the field that the operator will be applied to. The field name is the \"key\" portion of the field definition in the pipeline definition syntax that is used by the AWS Data Pipeline API. If the field is not set on the object, the condition fails.

        ", "SetStatusInput$status": "

        The status to be set on all the objects specified in objectIds. For components, use PAUSE or RESUME. For instances, use TRY_CANCEL, RERUN, or MARK_FINISHED.

        ", "SetTaskStatusInput$errorId": "

        If an error occurred during the task, this value specifies the error code. This value is set on the physical attempt object. It is used to display error information to the user. It should not start with string \"Service_\" which is reserved by the system.

        ", "SetTaskStatusInput$errorStackTrace": "

        If an error occurred during the task, this value specifies the stack trace associated with the error. This value is set on the physical attempt object. It is used to display error information to the user. The web service does not parse this value.

        ", "stringList$member": null } }, "stringList": { "base": null, "refs": { "Operator$values": "

        The value that the actual field value will be compared with.

        ", "RemoveTagsInput$tagKeys": "

        The keys of the tags to remove.

        " } }, "tagKey": { "base": null, "refs": { "Tag$key": "

        The key name of a tag defined by a user. For more information, see Controlling User Access to Pipelines in the AWS Data Pipeline Developer Guide.

        " } }, "tagList": { "base": null, "refs": { "AddTagsInput$tags": "

        The tags to add, as key/value pairs.

        ", "CreatePipelineInput$tags": "

        A list of tags to associate with the pipeline at creation. Tags let you control access to pipelines. For more information, see Controlling User Access to Pipelines in the AWS Data Pipeline Developer Guide.

        ", "PipelineDescription$tags": "

        A list of tags to associated with a pipeline. Tags let you control access to pipelines. For more information, see Controlling User Access to Pipelines in the AWS Data Pipeline Developer Guide.

        " } }, "tagValue": { "base": null, "refs": { "Tag$value": "

        The optional value portion of a tag defined by a user. For more information, see Controlling User Access to Pipelines in the AWS Data Pipeline Developer Guide.

        " } }, "taskId": { "base": null, "refs": { "ReportTaskProgressInput$taskId": "

        The ID of the task assigned to the task runner. This value is provided in the response for PollForTask.

        ", "SetTaskStatusInput$taskId": "

        The ID of the task assigned to the task runner. This value is provided in the response for PollForTask.

        ", "TaskObject$taskId": "

        An internal identifier for the task. This ID is passed to the SetTaskStatus and ReportTaskProgress actions.

        " } }, "timestamp": { "base": null, "refs": { "ActivatePipelineInput$startTimestamp": "

        The date and time to resume the pipeline. By default, the pipeline resumes from the last completed execution.

        " } }, "validationMessage": { "base": null, "refs": { "validationMessages$member": null } }, "validationMessages": { "base": null, "refs": { "ValidationError$errors": "

        A description of the validation error.

        ", "ValidationWarning$warnings": "

        A description of the validation warning.

        " } } } } aws-sdk-go-1.4.22/models/apis/datapipeline/2012-10-29/paginators-1.json000066400000000000000000000011721300374646400246740ustar00rootroot00000000000000{ "pagination": { "ListPipelines": { "input_token": "marker", "output_token": "marker", "more_results": "hasMoreResults", "result_key": "pipelineIdList" }, "DescribeObjects": { "input_token": "marker", "output_token": "marker", "more_results": "hasMoreResults", "result_key": "pipelineObjects" }, "DescribePipelines": { "result_key": "pipelineDescriptionList" }, "QueryObjects": { "input_token": "marker", "output_token": "marker", "more_results": "hasMoreResults", "limit_key": "limit", "result_key": "ids" } } } aws-sdk-go-1.4.22/models/apis/devicefarm/000077500000000000000000000000001300374646400201075ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/devicefarm/2015-06-23/000077500000000000000000000000001300374646400211435ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/devicefarm/2015-06-23/api-2.json000066400000000000000000001461511300374646400227560ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-06-23", "endpointPrefix":"devicefarm", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"AWS Device Farm", "signatureVersion":"v4", "targetPrefix":"DeviceFarm_20150623" }, "operations":{ "CreateDevicePool":{ "name":"CreateDevicePool", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDevicePoolRequest"}, "output":{"shape":"CreateDevicePoolResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "CreateProject":{ "name":"CreateProject", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateProjectRequest"}, "output":{"shape":"CreateProjectResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "CreateRemoteAccessSession":{ "name":"CreateRemoteAccessSession", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateRemoteAccessSessionRequest"}, "output":{"shape":"CreateRemoteAccessSessionResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "CreateUpload":{ "name":"CreateUpload", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateUploadRequest"}, "output":{"shape":"CreateUploadResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "DeleteDevicePool":{ "name":"DeleteDevicePool", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDevicePoolRequest"}, "output":{"shape":"DeleteDevicePoolResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "DeleteProject":{ "name":"DeleteProject", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteProjectRequest"}, "output":{"shape":"DeleteProjectResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "DeleteRemoteAccessSession":{ "name":"DeleteRemoteAccessSession", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRemoteAccessSessionRequest"}, "output":{"shape":"DeleteRemoteAccessSessionResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "DeleteRun":{ "name":"DeleteRun", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRunRequest"}, "output":{"shape":"DeleteRunResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "DeleteUpload":{ "name":"DeleteUpload", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteUploadRequest"}, "output":{"shape":"DeleteUploadResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "GetAccountSettings":{ "name":"GetAccountSettings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetAccountSettingsRequest"}, "output":{"shape":"GetAccountSettingsResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "GetDevice":{ "name":"GetDevice", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetDeviceRequest"}, "output":{"shape":"GetDeviceResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "GetDevicePool":{ "name":"GetDevicePool", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetDevicePoolRequest"}, "output":{"shape":"GetDevicePoolResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "GetDevicePoolCompatibility":{ "name":"GetDevicePoolCompatibility", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetDevicePoolCompatibilityRequest"}, "output":{"shape":"GetDevicePoolCompatibilityResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "GetJob":{ "name":"GetJob", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetJobRequest"}, "output":{"shape":"GetJobResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "GetOfferingStatus":{ "name":"GetOfferingStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetOfferingStatusRequest"}, "output":{"shape":"GetOfferingStatusResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"NotEligibleException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "GetProject":{ "name":"GetProject", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetProjectRequest"}, "output":{"shape":"GetProjectResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "GetRemoteAccessSession":{ "name":"GetRemoteAccessSession", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetRemoteAccessSessionRequest"}, "output":{"shape":"GetRemoteAccessSessionResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "GetRun":{ "name":"GetRun", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetRunRequest"}, "output":{"shape":"GetRunResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "GetSuite":{ "name":"GetSuite", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetSuiteRequest"}, "output":{"shape":"GetSuiteResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "GetTest":{ "name":"GetTest", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetTestRequest"}, "output":{"shape":"GetTestResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "GetUpload":{ "name":"GetUpload", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetUploadRequest"}, "output":{"shape":"GetUploadResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "InstallToRemoteAccessSession":{ "name":"InstallToRemoteAccessSession", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"InstallToRemoteAccessSessionRequest"}, "output":{"shape":"InstallToRemoteAccessSessionResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "ListArtifacts":{ "name":"ListArtifacts", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListArtifactsRequest"}, "output":{"shape":"ListArtifactsResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "ListDevicePools":{ "name":"ListDevicePools", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListDevicePoolsRequest"}, "output":{"shape":"ListDevicePoolsResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "ListDevices":{ "name":"ListDevices", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListDevicesRequest"}, "output":{"shape":"ListDevicesResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "ListJobs":{ "name":"ListJobs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListJobsRequest"}, "output":{"shape":"ListJobsResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "ListOfferingTransactions":{ "name":"ListOfferingTransactions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListOfferingTransactionsRequest"}, "output":{"shape":"ListOfferingTransactionsResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"NotEligibleException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "ListOfferings":{ "name":"ListOfferings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListOfferingsRequest"}, "output":{"shape":"ListOfferingsResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"NotEligibleException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "ListProjects":{ "name":"ListProjects", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListProjectsRequest"}, "output":{"shape":"ListProjectsResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "ListRemoteAccessSessions":{ "name":"ListRemoteAccessSessions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListRemoteAccessSessionsRequest"}, "output":{"shape":"ListRemoteAccessSessionsResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "ListRuns":{ "name":"ListRuns", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListRunsRequest"}, "output":{"shape":"ListRunsResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "ListSamples":{ "name":"ListSamples", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListSamplesRequest"}, "output":{"shape":"ListSamplesResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "ListSuites":{ "name":"ListSuites", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListSuitesRequest"}, "output":{"shape":"ListSuitesResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "ListTests":{ "name":"ListTests", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTestsRequest"}, "output":{"shape":"ListTestsResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "ListUniqueProblems":{ "name":"ListUniqueProblems", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListUniqueProblemsRequest"}, "output":{"shape":"ListUniqueProblemsResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "ListUploads":{ "name":"ListUploads", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListUploadsRequest"}, "output":{"shape":"ListUploadsResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "PurchaseOffering":{ "name":"PurchaseOffering", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PurchaseOfferingRequest"}, "output":{"shape":"PurchaseOfferingResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"NotEligibleException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "RenewOffering":{ "name":"RenewOffering", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RenewOfferingRequest"}, "output":{"shape":"RenewOfferingResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"NotEligibleException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "ScheduleRun":{ "name":"ScheduleRun", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ScheduleRunRequest"}, "output":{"shape":"ScheduleRunResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"IdempotencyException"}, {"shape":"ServiceAccountException"} ] }, "StopRemoteAccessSession":{ "name":"StopRemoteAccessSession", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopRemoteAccessSessionRequest"}, "output":{"shape":"StopRemoteAccessSessionResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "StopRun":{ "name":"StopRun", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopRunRequest"}, "output":{"shape":"StopRunResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "UpdateDevicePool":{ "name":"UpdateDevicePool", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateDevicePoolRequest"}, "output":{"shape":"UpdateDevicePoolResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] }, "UpdateProject":{ "name":"UpdateProject", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateProjectRequest"}, "output":{"shape":"UpdateProjectResult"}, "errors":[ {"shape":"ArgumentException"}, {"shape":"NotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceAccountException"} ] } }, "shapes":{ "AWSAccountNumber":{ "type":"string", "max":16, "min":2 }, "AccountSettings":{ "type":"structure", "members":{ "awsAccountNumber":{"shape":"AWSAccountNumber"}, "unmeteredDevices":{"shape":"PurchasedDevicesMap"}, "unmeteredRemoteAccessDevices":{"shape":"PurchasedDevicesMap"} } }, "AmazonResourceName":{ "type":"string", "min":32 }, "AmazonResourceNames":{ "type":"list", "member":{"shape":"AmazonResourceName"} }, "ArgumentException":{ "type":"structure", "members":{ "message":{"shape":"Message"} }, "exception":true }, "Artifact":{ "type":"structure", "members":{ "arn":{"shape":"AmazonResourceName"}, "name":{"shape":"Name"}, "type":{"shape":"ArtifactType"}, "extension":{"shape":"String"}, "url":{"shape":"URL"} } }, "ArtifactCategory":{ "type":"string", "enum":[ "SCREENSHOT", "FILE", "LOG" ] }, "ArtifactType":{ "type":"string", "enum":[ "UNKNOWN", "SCREENSHOT", "DEVICE_LOG", "MESSAGE_LOG", "VIDEO_LOG", "RESULT_LOG", "SERVICE_LOG", "WEBKIT_LOG", "INSTRUMENTATION_OUTPUT", "EXERCISER_MONKEY_OUTPUT", "CALABASH_JSON_OUTPUT", "CALABASH_PRETTY_OUTPUT", "CALABASH_STANDARD_OUTPUT", "CALABASH_JAVA_XML_OUTPUT", "AUTOMATION_OUTPUT", "APPIUM_SERVER_OUTPUT", "APPIUM_JAVA_OUTPUT", "APPIUM_JAVA_XML_OUTPUT", "APPIUM_PYTHON_OUTPUT", "APPIUM_PYTHON_XML_OUTPUT", "EXPLORER_EVENT_LOG", "EXPLORER_SUMMARY_LOG", "APPLICATION_CRASH_REPORT", "XCTEST_LOG", "VIDEO" ] }, "Artifacts":{ "type":"list", "member":{"shape":"Artifact"} }, "BillingMethod":{ "type":"string", "enum":[ "METERED", "UNMETERED" ] }, "Boolean":{"type":"boolean"}, "CPU":{ "type":"structure", "members":{ "frequency":{"shape":"String"}, "architecture":{"shape":"String"}, "clock":{"shape":"Double"} } }, "ContentType":{ "type":"string", "max":64, "min":0 }, "Counters":{ "type":"structure", "members":{ "total":{"shape":"Integer"}, "passed":{"shape":"Integer"}, "failed":{"shape":"Integer"}, "warned":{"shape":"Integer"}, "errored":{"shape":"Integer"}, "stopped":{"shape":"Integer"}, "skipped":{"shape":"Integer"} } }, "CreateDevicePoolRequest":{ "type":"structure", "required":[ "projectArn", "name", "rules" ], "members":{ "projectArn":{"shape":"AmazonResourceName"}, "name":{"shape":"Name"}, "description":{"shape":"Message"}, "rules":{"shape":"Rules"} } }, "CreateDevicePoolResult":{ "type":"structure", "members":{ "devicePool":{"shape":"DevicePool"} } }, "CreateProjectRequest":{ "type":"structure", "required":["name"], "members":{ "name":{"shape":"Name"} } }, "CreateProjectResult":{ "type":"structure", "members":{ "project":{"shape":"Project"} } }, "CreateRemoteAccessSessionConfiguration":{ "type":"structure", "members":{ "billingMethod":{"shape":"BillingMethod"} } }, "CreateRemoteAccessSessionRequest":{ "type":"structure", "required":[ "projectArn", "deviceArn" ], "members":{ "projectArn":{"shape":"AmazonResourceName"}, "deviceArn":{"shape":"AmazonResourceName"}, "name":{"shape":"Name"}, "configuration":{"shape":"CreateRemoteAccessSessionConfiguration"} } }, "CreateRemoteAccessSessionResult":{ "type":"structure", "members":{ "remoteAccessSession":{"shape":"RemoteAccessSession"} } }, "CreateUploadRequest":{ "type":"structure", "required":[ "projectArn", "name", "type" ], "members":{ "projectArn":{"shape":"AmazonResourceName"}, "name":{"shape":"Name"}, "type":{"shape":"UploadType"}, "contentType":{"shape":"ContentType"} } }, "CreateUploadResult":{ "type":"structure", "members":{ "upload":{"shape":"Upload"} } }, "CurrencyCode":{ "type":"string", "enum":["USD"] }, "DateTime":{"type":"timestamp"}, "DeleteDevicePoolRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"} } }, "DeleteDevicePoolResult":{ "type":"structure", "members":{ } }, "DeleteProjectRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"} } }, "DeleteProjectResult":{ "type":"structure", "members":{ } }, "DeleteRemoteAccessSessionRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"} } }, "DeleteRemoteAccessSessionResult":{ "type":"structure", "members":{ } }, "DeleteRunRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"} } }, "DeleteRunResult":{ "type":"structure", "members":{ } }, "DeleteUploadRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"} } }, "DeleteUploadResult":{ "type":"structure", "members":{ } }, "Device":{ "type":"structure", "members":{ "arn":{"shape":"AmazonResourceName"}, "name":{"shape":"Name"}, "manufacturer":{"shape":"String"}, "model":{"shape":"String"}, "formFactor":{"shape":"DeviceFormFactor"}, "platform":{"shape":"DevicePlatform"}, "os":{"shape":"String"}, "cpu":{"shape":"CPU"}, "resolution":{"shape":"Resolution"}, "heapSize":{"shape":"Long"}, "memory":{"shape":"Long"}, "image":{"shape":"String"}, "carrier":{"shape":"String"}, "radio":{"shape":"String"}, "remoteAccessEnabled":{"shape":"Boolean"}, "fleetType":{"shape":"String"}, "fleetName":{"shape":"String"} } }, "DeviceAttribute":{ "type":"string", "enum":[ "ARN", "PLATFORM", "FORM_FACTOR", "MANUFACTURER", "REMOTE_ACCESS_ENABLED" ] }, "DeviceFormFactor":{ "type":"string", "enum":[ "PHONE", "TABLET" ] }, "DeviceMinutes":{ "type":"structure", "members":{ "total":{"shape":"Double"}, "metered":{"shape":"Double"}, "unmetered":{"shape":"Double"} } }, "DevicePlatform":{ "type":"string", "enum":[ "ANDROID", "IOS" ] }, "DevicePool":{ "type":"structure", "members":{ "arn":{"shape":"AmazonResourceName"}, "name":{"shape":"Name"}, "description":{"shape":"Message"}, "type":{"shape":"DevicePoolType"}, "rules":{"shape":"Rules"} } }, "DevicePoolCompatibilityResult":{ "type":"structure", "members":{ "device":{"shape":"Device"}, "compatible":{"shape":"Boolean"}, "incompatibilityMessages":{"shape":"IncompatibilityMessages"} } }, "DevicePoolCompatibilityResults":{ "type":"list", "member":{"shape":"DevicePoolCompatibilityResult"} }, "DevicePoolType":{ "type":"string", "enum":[ "CURATED", "PRIVATE" ] }, "DevicePools":{ "type":"list", "member":{"shape":"DevicePool"} }, "Devices":{ "type":"list", "member":{"shape":"Device"} }, "Double":{"type":"double"}, "ExecutionResult":{ "type":"string", "enum":[ "PENDING", "PASSED", "WARNED", "FAILED", "SKIPPED", "ERRORED", "STOPPED" ] }, "ExecutionStatus":{ "type":"string", "enum":[ "PENDING", "PENDING_CONCURRENCY", "PENDING_DEVICE", "PROCESSING", "SCHEDULING", "PREPARING", "RUNNING", "COMPLETED", "STOPPING" ] }, "Filter":{ "type":"string", "max":8192, "min":0 }, "GetAccountSettingsRequest":{ "type":"structure", "members":{ } }, "GetAccountSettingsResult":{ "type":"structure", "members":{ "accountSettings":{"shape":"AccountSettings"} } }, "GetDevicePoolCompatibilityRequest":{ "type":"structure", "required":["devicePoolArn"], "members":{ "devicePoolArn":{"shape":"AmazonResourceName"}, "appArn":{"shape":"AmazonResourceName"}, "testType":{"shape":"TestType"} } }, "GetDevicePoolCompatibilityResult":{ "type":"structure", "members":{ "compatibleDevices":{"shape":"DevicePoolCompatibilityResults"}, "incompatibleDevices":{"shape":"DevicePoolCompatibilityResults"} } }, "GetDevicePoolRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"} } }, "GetDevicePoolResult":{ "type":"structure", "members":{ "devicePool":{"shape":"DevicePool"} } }, "GetDeviceRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"} } }, "GetDeviceResult":{ "type":"structure", "members":{ "device":{"shape":"Device"} } }, "GetJobRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"} } }, "GetJobResult":{ "type":"structure", "members":{ "job":{"shape":"Job"} } }, "GetOfferingStatusRequest":{ "type":"structure", "members":{ "nextToken":{"shape":"PaginationToken"} } }, "GetOfferingStatusResult":{ "type":"structure", "members":{ "current":{"shape":"OfferingStatusMap"}, "nextPeriod":{"shape":"OfferingStatusMap"}, "nextToken":{"shape":"PaginationToken"} } }, "GetProjectRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"} } }, "GetProjectResult":{ "type":"structure", "members":{ "project":{"shape":"Project"} } }, "GetRemoteAccessSessionRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"} } }, "GetRemoteAccessSessionResult":{ "type":"structure", "members":{ "remoteAccessSession":{"shape":"RemoteAccessSession"} } }, "GetRunRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"} } }, "GetRunResult":{ "type":"structure", "members":{ "run":{"shape":"Run"} } }, "GetSuiteRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"} } }, "GetSuiteResult":{ "type":"structure", "members":{ "suite":{"shape":"Suite"} } }, "GetTestRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"} } }, "GetTestResult":{ "type":"structure", "members":{ "test":{"shape":"Test"} } }, "GetUploadRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"} } }, "GetUploadResult":{ "type":"structure", "members":{ "upload":{"shape":"Upload"} } }, "IdempotencyException":{ "type":"structure", "members":{ "message":{"shape":"Message"} }, "exception":true }, "IncompatibilityMessage":{ "type":"structure", "members":{ "message":{"shape":"Message"}, "type":{"shape":"DeviceAttribute"} } }, "IncompatibilityMessages":{ "type":"list", "member":{"shape":"IncompatibilityMessage"} }, "InstallToRemoteAccessSessionRequest":{ "type":"structure", "required":[ "remoteAccessSessionArn", "appArn" ], "members":{ "remoteAccessSessionArn":{"shape":"AmazonResourceName"}, "appArn":{"shape":"AmazonResourceName"} } }, "InstallToRemoteAccessSessionResult":{ "type":"structure", "members":{ "appUpload":{"shape":"Upload"} } }, "Integer":{"type":"integer"}, "Job":{ "type":"structure", "members":{ "arn":{"shape":"AmazonResourceName"}, "name":{"shape":"Name"}, "type":{"shape":"TestType"}, "created":{"shape":"DateTime"}, "status":{"shape":"ExecutionStatus"}, "result":{"shape":"ExecutionResult"}, "started":{"shape":"DateTime"}, "stopped":{"shape":"DateTime"}, "counters":{"shape":"Counters"}, "message":{"shape":"Message"}, "device":{"shape":"Device"}, "deviceMinutes":{"shape":"DeviceMinutes"} } }, "Jobs":{ "type":"list", "member":{"shape":"Job"} }, "LimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"Message"} }, "exception":true }, "ListArtifactsRequest":{ "type":"structure", "required":[ "arn", "type" ], "members":{ "arn":{"shape":"AmazonResourceName"}, "type":{"shape":"ArtifactCategory"}, "nextToken":{"shape":"PaginationToken"} } }, "ListArtifactsResult":{ "type":"structure", "members":{ "artifacts":{"shape":"Artifacts"}, "nextToken":{"shape":"PaginationToken"} } }, "ListDevicePoolsRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"}, "type":{"shape":"DevicePoolType"}, "nextToken":{"shape":"PaginationToken"} } }, "ListDevicePoolsResult":{ "type":"structure", "members":{ "devicePools":{"shape":"DevicePools"}, "nextToken":{"shape":"PaginationToken"} } }, "ListDevicesRequest":{ "type":"structure", "members":{ "arn":{"shape":"AmazonResourceName"}, "nextToken":{"shape":"PaginationToken"} } }, "ListDevicesResult":{ "type":"structure", "members":{ "devices":{"shape":"Devices"}, "nextToken":{"shape":"PaginationToken"} } }, "ListJobsRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"}, "nextToken":{"shape":"PaginationToken"} } }, "ListJobsResult":{ "type":"structure", "members":{ "jobs":{"shape":"Jobs"}, "nextToken":{"shape":"PaginationToken"} } }, "ListOfferingTransactionsRequest":{ "type":"structure", "members":{ "nextToken":{"shape":"PaginationToken"} } }, "ListOfferingTransactionsResult":{ "type":"structure", "members":{ "offeringTransactions":{"shape":"OfferingTransactions"}, "nextToken":{"shape":"PaginationToken"} } }, "ListOfferingsRequest":{ "type":"structure", "members":{ "nextToken":{"shape":"PaginationToken"} } }, "ListOfferingsResult":{ "type":"structure", "members":{ "offerings":{"shape":"Offerings"}, "nextToken":{"shape":"PaginationToken"} } }, "ListProjectsRequest":{ "type":"structure", "members":{ "arn":{"shape":"AmazonResourceName"}, "nextToken":{"shape":"PaginationToken"} } }, "ListProjectsResult":{ "type":"structure", "members":{ "projects":{"shape":"Projects"}, "nextToken":{"shape":"PaginationToken"} } }, "ListRemoteAccessSessionsRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"}, "nextToken":{"shape":"PaginationToken"} } }, "ListRemoteAccessSessionsResult":{ "type":"structure", "members":{ "remoteAccessSessions":{"shape":"RemoteAccessSessions"}, "nextToken":{"shape":"PaginationToken"} } }, "ListRunsRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"}, "nextToken":{"shape":"PaginationToken"} } }, "ListRunsResult":{ "type":"structure", "members":{ "runs":{"shape":"Runs"}, "nextToken":{"shape":"PaginationToken"} } }, "ListSamplesRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"}, "nextToken":{"shape":"PaginationToken"} } }, "ListSamplesResult":{ "type":"structure", "members":{ "samples":{"shape":"Samples"}, "nextToken":{"shape":"PaginationToken"} } }, "ListSuitesRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"}, "nextToken":{"shape":"PaginationToken"} } }, "ListSuitesResult":{ "type":"structure", "members":{ "suites":{"shape":"Suites"}, "nextToken":{"shape":"PaginationToken"} } }, "ListTestsRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"}, "nextToken":{"shape":"PaginationToken"} } }, "ListTestsResult":{ "type":"structure", "members":{ "tests":{"shape":"Tests"}, "nextToken":{"shape":"PaginationToken"} } }, "ListUniqueProblemsRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"}, "nextToken":{"shape":"PaginationToken"} } }, "ListUniqueProblemsResult":{ "type":"structure", "members":{ "uniqueProblems":{"shape":"UniqueProblemsByExecutionResultMap"}, "nextToken":{"shape":"PaginationToken"} } }, "ListUploadsRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"}, "nextToken":{"shape":"PaginationToken"} } }, "ListUploadsResult":{ "type":"structure", "members":{ "uploads":{"shape":"Uploads"}, "nextToken":{"shape":"PaginationToken"} } }, "Location":{ "type":"structure", "required":[ "latitude", "longitude" ], "members":{ "latitude":{"shape":"Double"}, "longitude":{"shape":"Double"} } }, "Long":{"type":"long"}, "Message":{ "type":"string", "max":16384, "min":0 }, "Metadata":{ "type":"string", "max":8192, "min":0 }, "MonetaryAmount":{ "type":"structure", "members":{ "amount":{"shape":"Double"}, "currencyCode":{"shape":"CurrencyCode"} } }, "Name":{ "type":"string", "max":256, "min":0 }, "NotEligibleException":{ "type":"structure", "members":{ "message":{"shape":"Message"} }, "exception":true }, "NotFoundException":{ "type":"structure", "members":{ "message":{"shape":"Message"} }, "exception":true }, "Offering":{ "type":"structure", "members":{ "id":{"shape":"OfferingIdentifier"}, "description":{"shape":"Message"}, "type":{"shape":"OfferingType"}, "platform":{"shape":"DevicePlatform"}, "recurringCharges":{"shape":"RecurringCharges"} } }, "OfferingIdentifier":{ "type":"string", "min":32 }, "OfferingStatus":{ "type":"structure", "members":{ "type":{"shape":"OfferingTransactionType"}, "offering":{"shape":"Offering"}, "quantity":{"shape":"Integer"}, "effectiveOn":{"shape":"DateTime"} } }, "OfferingStatusMap":{ "type":"map", "key":{"shape":"OfferingIdentifier"}, "value":{"shape":"OfferingStatus"} }, "OfferingTransaction":{ "type":"structure", "members":{ "offeringStatus":{"shape":"OfferingStatus"}, "transactionId":{"shape":"TransactionIdentifier"}, "createdOn":{"shape":"DateTime"}, "cost":{"shape":"MonetaryAmount"} } }, "OfferingTransactionType":{ "type":"string", "enum":[ "PURCHASE", "RENEW", "SYSTEM" ] }, "OfferingTransactions":{ "type":"list", "member":{"shape":"OfferingTransaction"} }, "OfferingType":{ "type":"string", "enum":["RECURRING"] }, "Offerings":{ "type":"list", "member":{"shape":"Offering"} }, "PaginationToken":{ "type":"string", "max":1024, "min":4 }, "Problem":{ "type":"structure", "members":{ "run":{"shape":"ProblemDetail"}, "job":{"shape":"ProblemDetail"}, "suite":{"shape":"ProblemDetail"}, "test":{"shape":"ProblemDetail"}, "device":{"shape":"Device"}, "result":{"shape":"ExecutionResult"}, "message":{"shape":"Message"} } }, "ProblemDetail":{ "type":"structure", "members":{ "arn":{"shape":"AmazonResourceName"}, "name":{"shape":"Name"} } }, "Problems":{ "type":"list", "member":{"shape":"Problem"} }, "Project":{ "type":"structure", "members":{ "arn":{"shape":"AmazonResourceName"}, "name":{"shape":"Name"}, "created":{"shape":"DateTime"} } }, "Projects":{ "type":"list", "member":{"shape":"Project"} }, "PurchaseOfferingRequest":{ "type":"structure", "members":{ "offeringId":{"shape":"OfferingIdentifier"}, "quantity":{"shape":"Integer"} } }, "PurchaseOfferingResult":{ "type":"structure", "members":{ "offeringTransaction":{"shape":"OfferingTransaction"} } }, "PurchasedDevicesMap":{ "type":"map", "key":{"shape":"DevicePlatform"}, "value":{"shape":"Integer"} }, "Radios":{ "type":"structure", "members":{ "wifi":{"shape":"Boolean"}, "bluetooth":{"shape":"Boolean"}, "nfc":{"shape":"Boolean"}, "gps":{"shape":"Boolean"} } }, "RecurringCharge":{ "type":"structure", "members":{ "cost":{"shape":"MonetaryAmount"}, "frequency":{"shape":"RecurringChargeFrequency"} } }, "RecurringChargeFrequency":{ "type":"string", "enum":["MONTHLY"] }, "RecurringCharges":{ "type":"list", "member":{"shape":"RecurringCharge"} }, "RemoteAccessSession":{ "type":"structure", "members":{ "arn":{"shape":"AmazonResourceName"}, "name":{"shape":"Name"}, "created":{"shape":"DateTime"}, "status":{"shape":"ExecutionStatus"}, "result":{"shape":"ExecutionResult"}, "message":{"shape":"Message"}, "started":{"shape":"DateTime"}, "stopped":{"shape":"DateTime"}, "device":{"shape":"Device"}, "billingMethod":{"shape":"BillingMethod"}, "deviceMinutes":{"shape":"DeviceMinutes"}, "endpoint":{"shape":"String"} } }, "RemoteAccessSessions":{ "type":"list", "member":{"shape":"RemoteAccessSession"} }, "RenewOfferingRequest":{ "type":"structure", "members":{ "offeringId":{"shape":"OfferingIdentifier"}, "quantity":{"shape":"Integer"} } }, "RenewOfferingResult":{ "type":"structure", "members":{ "offeringTransaction":{"shape":"OfferingTransaction"} } }, "Resolution":{ "type":"structure", "members":{ "width":{"shape":"Integer"}, "height":{"shape":"Integer"} } }, "Rule":{ "type":"structure", "members":{ "attribute":{"shape":"DeviceAttribute"}, "operator":{"shape":"RuleOperator"}, "value":{"shape":"String"} } }, "RuleOperator":{ "type":"string", "enum":[ "EQUALS", "LESS_THAN", "GREATER_THAN", "IN", "NOT_IN" ] }, "Rules":{ "type":"list", "member":{"shape":"Rule"} }, "Run":{ "type":"structure", "members":{ "arn":{"shape":"AmazonResourceName"}, "name":{"shape":"Name"}, "type":{"shape":"TestType"}, "platform":{"shape":"DevicePlatform"}, "created":{"shape":"DateTime"}, "status":{"shape":"ExecutionStatus"}, "result":{"shape":"ExecutionResult"}, "started":{"shape":"DateTime"}, "stopped":{"shape":"DateTime"}, "counters":{"shape":"Counters"}, "message":{"shape":"Message"}, "totalJobs":{"shape":"Integer"}, "completedJobs":{"shape":"Integer"}, "billingMethod":{"shape":"BillingMethod"}, "deviceMinutes":{"shape":"DeviceMinutes"} } }, "Runs":{ "type":"list", "member":{"shape":"Run"} }, "Sample":{ "type":"structure", "members":{ "arn":{"shape":"AmazonResourceName"}, "type":{"shape":"SampleType"}, "url":{"shape":"URL"} } }, "SampleType":{ "type":"string", "enum":[ "CPU", "MEMORY", "THREADS", "RX_RATE", "TX_RATE", "RX", "TX", "NATIVE_FRAMES", "NATIVE_FPS", "NATIVE_MIN_DRAWTIME", "NATIVE_AVG_DRAWTIME", "NATIVE_MAX_DRAWTIME", "OPENGL_FRAMES", "OPENGL_FPS", "OPENGL_MIN_DRAWTIME", "OPENGL_AVG_DRAWTIME", "OPENGL_MAX_DRAWTIME" ] }, "Samples":{ "type":"list", "member":{"shape":"Sample"} }, "ScheduleRunConfiguration":{ "type":"structure", "members":{ "extraDataPackageArn":{"shape":"AmazonResourceName"}, "networkProfileArn":{"shape":"AmazonResourceName"}, "locale":{"shape":"String"}, "location":{"shape":"Location"}, "radios":{"shape":"Radios"}, "auxiliaryApps":{"shape":"AmazonResourceNames"}, "billingMethod":{"shape":"BillingMethod"} } }, "ScheduleRunRequest":{ "type":"structure", "required":[ "projectArn", "devicePoolArn", "test" ], "members":{ "projectArn":{"shape":"AmazonResourceName"}, "appArn":{"shape":"AmazonResourceName"}, "devicePoolArn":{"shape":"AmazonResourceName"}, "name":{"shape":"Name"}, "test":{"shape":"ScheduleRunTest"}, "configuration":{"shape":"ScheduleRunConfiguration"} } }, "ScheduleRunResult":{ "type":"structure", "members":{ "run":{"shape":"Run"} } }, "ScheduleRunTest":{ "type":"structure", "required":["type"], "members":{ "type":{"shape":"TestType"}, "testPackageArn":{"shape":"AmazonResourceName"}, "filter":{"shape":"Filter"}, "parameters":{"shape":"TestParameters"} } }, "ServiceAccountException":{ "type":"structure", "members":{ "message":{"shape":"Message"} }, "exception":true }, "StopRemoteAccessSessionRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"} } }, "StopRemoteAccessSessionResult":{ "type":"structure", "members":{ "remoteAccessSession":{"shape":"RemoteAccessSession"} } }, "StopRunRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"} } }, "StopRunResult":{ "type":"structure", "members":{ "run":{"shape":"Run"} } }, "String":{"type":"string"}, "Suite":{ "type":"structure", "members":{ "arn":{"shape":"AmazonResourceName"}, "name":{"shape":"Name"}, "type":{"shape":"TestType"}, "created":{"shape":"DateTime"}, "status":{"shape":"ExecutionStatus"}, "result":{"shape":"ExecutionResult"}, "started":{"shape":"DateTime"}, "stopped":{"shape":"DateTime"}, "counters":{"shape":"Counters"}, "message":{"shape":"Message"}, "deviceMinutes":{"shape":"DeviceMinutes"} } }, "Suites":{ "type":"list", "member":{"shape":"Suite"} }, "Test":{ "type":"structure", "members":{ "arn":{"shape":"AmazonResourceName"}, "name":{"shape":"Name"}, "type":{"shape":"TestType"}, "created":{"shape":"DateTime"}, "status":{"shape":"ExecutionStatus"}, "result":{"shape":"ExecutionResult"}, "started":{"shape":"DateTime"}, "stopped":{"shape":"DateTime"}, "counters":{"shape":"Counters"}, "message":{"shape":"Message"}, "deviceMinutes":{"shape":"DeviceMinutes"} } }, "TestParameters":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"String"} }, "TestType":{ "type":"string", "enum":[ "BUILTIN_FUZZ", "BUILTIN_EXPLORER", "APPIUM_JAVA_JUNIT", "APPIUM_JAVA_TESTNG", "APPIUM_PYTHON", "APPIUM_WEB_JAVA_JUNIT", "APPIUM_WEB_JAVA_TESTNG", "APPIUM_WEB_PYTHON", "CALABASH", "INSTRUMENTATION", "UIAUTOMATION", "UIAUTOMATOR", "XCTEST", "XCTEST_UI" ] }, "Tests":{ "type":"list", "member":{"shape":"Test"} }, "TransactionIdentifier":{ "type":"string", "min":32 }, "URL":{ "type":"string", "max":2048, "min":0 }, "UniqueProblem":{ "type":"structure", "members":{ "message":{"shape":"Message"}, "problems":{"shape":"Problems"} } }, "UniqueProblems":{ "type":"list", "member":{"shape":"UniqueProblem"} }, "UniqueProblemsByExecutionResultMap":{ "type":"map", "key":{"shape":"ExecutionResult"}, "value":{"shape":"UniqueProblems"} }, "UpdateDevicePoolRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"}, "name":{"shape":"Name"}, "description":{"shape":"Message"}, "rules":{"shape":"Rules"} } }, "UpdateDevicePoolResult":{ "type":"structure", "members":{ "devicePool":{"shape":"DevicePool"} } }, "UpdateProjectRequest":{ "type":"structure", "required":["arn"], "members":{ "arn":{"shape":"AmazonResourceName"}, "name":{"shape":"Name"} } }, "UpdateProjectResult":{ "type":"structure", "members":{ "project":{"shape":"Project"} } }, "Upload":{ "type":"structure", "members":{ "arn":{"shape":"AmazonResourceName"}, "name":{"shape":"Name"}, "created":{"shape":"DateTime"}, "type":{"shape":"UploadType"}, "status":{"shape":"UploadStatus"}, "url":{"shape":"URL"}, "metadata":{"shape":"Metadata"}, "contentType":{"shape":"ContentType"}, "message":{"shape":"Message"} } }, "UploadStatus":{ "type":"string", "enum":[ "INITIALIZED", "PROCESSING", "SUCCEEDED", "FAILED" ] }, "UploadType":{ "type":"string", "enum":[ "ANDROID_APP", "IOS_APP", "WEB_APP", "EXTERNAL_DATA", "APPIUM_JAVA_JUNIT_TEST_PACKAGE", "APPIUM_JAVA_TESTNG_TEST_PACKAGE", "APPIUM_PYTHON_TEST_PACKAGE", "APPIUM_WEB_JAVA_JUNIT_TEST_PACKAGE", "APPIUM_WEB_JAVA_TESTNG_TEST_PACKAGE", "APPIUM_WEB_PYTHON_TEST_PACKAGE", "CALABASH_TEST_PACKAGE", "INSTRUMENTATION_TEST_PACKAGE", "UIAUTOMATION_TEST_PACKAGE", "UIAUTOMATOR_TEST_PACKAGE", "XCTEST_TEST_PACKAGE", "XCTEST_UI_TEST_PACKAGE" ] }, "Uploads":{ "type":"list", "member":{"shape":"Upload"} } } } aws-sdk-go-1.4.22/models/apis/devicefarm/2015-06-23/docs-2.json000066400000000000000000002350451300374646400231360ustar00rootroot00000000000000{ "version": "2.0", "service": "

        AWS Device Farm is a service that enables mobile app developers to test Android, iOS, and Fire OS apps on physical phones, tablets, and other devices in the cloud.

        ", "operations": { "CreateDevicePool": "

        Creates a device pool.

        ", "CreateProject": "

        Creates a new project.

        ", "CreateRemoteAccessSession": "

        Specifies and starts a remote access session.

        ", "CreateUpload": "

        Uploads an app or test scripts.

        ", "DeleteDevicePool": "

        Deletes a device pool given the pool ARN. Does not allow deletion of curated pools owned by the system.

        ", "DeleteProject": "

        Deletes an AWS Device Farm project, given the project ARN.

        Note Deleting this resource does not stop an in-progress run.

        ", "DeleteRemoteAccessSession": "

        Deletes a completed remote access session and its results.

        ", "DeleteRun": "

        Deletes the run, given the run ARN.

        Note Deleting this resource does not stop an in-progress run.

        ", "DeleteUpload": "

        Deletes an upload given the upload ARN.

        ", "GetAccountSettings": "

        Returns the number of unmetered iOS and/or unmetered Android devices that have been purchased by the account.

        ", "GetDevice": "

        Gets information about a unique device type.

        ", "GetDevicePool": "

        Gets information about a device pool.

        ", "GetDevicePoolCompatibility": "

        Gets information about compatibility with a device pool.

        ", "GetJob": "

        Gets information about a job.

        ", "GetOfferingStatus": "

        Gets the current status and future status of all offerings purchased by an AWS account. The response indicates how many offerings are currently available and the offerings that will be available in the next period. The API returns a NotEligible error if the user is not permitted to invoke the operation. Please contact aws-devicefarm-support@amazon.com if you believe that you should be able to invoke this operation.

        ", "GetProject": "

        Gets information about a project.

        ", "GetRemoteAccessSession": "

        Returns a link to a currently running remote access session.

        ", "GetRun": "

        Gets information about a run.

        ", "GetSuite": "

        Gets information about a suite.

        ", "GetTest": "

        Gets information about a test.

        ", "GetUpload": "

        Gets information about an upload.

        ", "InstallToRemoteAccessSession": "

        Installs an application to the device in a remote access session. For Android applications, the file must be in .apk format. For iOS applications, the file must be in .ipa format.

        ", "ListArtifacts": "

        Gets information about artifacts.

        ", "ListDevicePools": "

        Gets information about device pools.

        ", "ListDevices": "

        Gets information about unique device types.

        ", "ListJobs": "

        Gets information about jobs.

        ", "ListOfferingTransactions": "

        Returns a list of all historical purchases, renewals, and system renewal transactions for an AWS account. The list is paginated and ordered by a descending timestamp (most recent transactions are first). The API returns a NotEligible error if the user is not permitted to invoke the operation. Please contact aws-devicefarm-support@amazon.com if you believe that you should be able to invoke this operation.

        ", "ListOfferings": "

        Returns a list of products or offerings that the user can manage through the API. Each offering record indicates the recurring price per unit and the frequency for that offering. The API returns a NotEligible error if the user is not permitted to invoke the operation. Please contact aws-devicefarm-support@amazon.com if you believe that you should be able to invoke this operation.

        ", "ListProjects": "

        Gets information about projects.

        ", "ListRemoteAccessSessions": "

        Returns a list of all currently running remote access sessions.

        ", "ListRuns": "

        Gets information about runs, given an AWS Device Farm project ARN.

        ", "ListSamples": "

        Gets information about samples, given an AWS Device Farm project ARN

        ", "ListSuites": "

        Gets information about suites.

        ", "ListTests": "

        Gets information about tests.

        ", "ListUniqueProblems": "

        Gets information about unique problems.

        ", "ListUploads": "

        Gets information about uploads, given an AWS Device Farm project ARN.

        ", "PurchaseOffering": "

        Immediately purchases offerings for an AWS account. Offerings renew with the latest total purchased quantity for an offering, unless the renewal was overridden. The API returns a NotEligible error if the user is not permitted to invoke the operation. Please contact aws-devicefarm-support@amazon.com if you believe that you should be able to invoke this operation.

        ", "RenewOffering": "

        Explicitly sets the quantity of devices to renew for an offering, starting from the effectiveDate of the next period. The API returns a NotEligible error if the user is not permitted to invoke the operation. Please contact aws-devicefarm-support@amazon.com if you believe that you should be able to invoke this operation.

        ", "ScheduleRun": "

        Schedules a run.

        ", "StopRemoteAccessSession": "

        Ends a specified remote access session.

        ", "StopRun": "

        Initiates a stop request for the current test run. AWS Device Farm will immediately stop the run on devices where tests have not started executing, and you will not be billed for these devices. On devices where tests have started executing, Setup Suite and Teardown Suite tests will run to completion before stopping execution on those devices. You will be billed for Setup, Teardown, and any tests that were in progress or already completed.

        ", "UpdateDevicePool": "

        Modifies the name, description, and rules in a device pool given the attributes and the pool ARN. Rule updates are all-or-nothing, meaning they can only be updated as a whole (or not at all).

        ", "UpdateProject": "

        Modifies the specified project name, given the project ARN and a new name.

        " }, "shapes": { "AWSAccountNumber": { "base": null, "refs": { "AccountSettings$awsAccountNumber": "

        The AWS account number specified in the AccountSettings container.

        " } }, "AccountSettings": { "base": "

        A container for account-level settings within AWS Device Farm.

        ", "refs": { "GetAccountSettingsResult$accountSettings": null } }, "AmazonResourceName": { "base": null, "refs": { "AmazonResourceNames$member": null, "Artifact$arn": "

        The artifact's ARN.

        ", "CreateDevicePoolRequest$projectArn": "

        The ARN of the project for the device pool.

        ", "CreateRemoteAccessSessionRequest$projectArn": "

        The Amazon Resource Name (ARN) of the project for which you want to create a remote access session.

        ", "CreateRemoteAccessSessionRequest$deviceArn": "

        The Amazon Resource Name (ARN) of the device for which you want to create a remote access session.

        ", "CreateUploadRequest$projectArn": "

        The ARN of the project for the upload.

        ", "DeleteDevicePoolRequest$arn": "

        Represents the Amazon Resource Name (ARN) of the Device Farm device pool you wish to delete.

        ", "DeleteProjectRequest$arn": "

        Represents the Amazon Resource Name (ARN) of the Device Farm project you wish to delete.

        ", "DeleteRemoteAccessSessionRequest$arn": "

        The Amazon Resource Name (ARN) of the sesssion for which you want to delete remote access.

        ", "DeleteRunRequest$arn": "

        The Amazon Resource Name (ARN) for the run you wish to delete.

        ", "DeleteUploadRequest$arn": "

        Represents the Amazon Resource Name (ARN) of the Device Farm upload you wish to delete.

        ", "Device$arn": "

        The device's ARN.

        ", "DevicePool$arn": "

        The device pool's ARN.

        ", "GetDevicePoolCompatibilityRequest$devicePoolArn": "

        The device pool's ARN.

        ", "GetDevicePoolCompatibilityRequest$appArn": "

        The ARN of the app that is associated with the specified device pool.

        ", "GetDevicePoolRequest$arn": "

        The device pool's ARN.

        ", "GetDeviceRequest$arn": "

        The device type's ARN.

        ", "GetJobRequest$arn": "

        The job's ARN.

        ", "GetProjectRequest$arn": "

        The project's ARN.

        ", "GetRemoteAccessSessionRequest$arn": "

        The Amazon Resource Name (ARN) of the remote access session about which you want to get session information.

        ", "GetRunRequest$arn": "

        The run's ARN.

        ", "GetSuiteRequest$arn": "

        The suite's ARN.

        ", "GetTestRequest$arn": "

        The test's ARN.

        ", "GetUploadRequest$arn": "

        The upload's ARN.

        ", "InstallToRemoteAccessSessionRequest$remoteAccessSessionArn": "

        The Amazon Resource Name (ARN) of the remote access session about which you are requesting information.

        ", "InstallToRemoteAccessSessionRequest$appArn": "

        The Amazon Resource Name (ARN) of the app about which you are requesting information.

        ", "Job$arn": "

        The job's ARN.

        ", "ListArtifactsRequest$arn": "

        The Run, Job, Suite, or Test ARN.

        ", "ListDevicePoolsRequest$arn": "

        The project ARN.

        ", "ListDevicesRequest$arn": "

        The Amazon Resource Name (ARN) of the project.

        ", "ListJobsRequest$arn": "

        The jobs' ARNs.

        ", "ListProjectsRequest$arn": "

        Optional. If no Amazon Resource Name (ARN) is specified, then AWS Device Farm returns a list of all projects for the AWS account. You can also specify a project ARN.

        ", "ListRemoteAccessSessionsRequest$arn": "

        The Amazon Resource Name (ARN) of the remote access session about which you are requesting information.

        ", "ListRunsRequest$arn": "

        The Amazon Resource Name (ARN) of the project for which you want to list runs.

        ", "ListSamplesRequest$arn": "

        The Amazon Resource Name (ARN) of the project for which you want to list samples.

        ", "ListSuitesRequest$arn": "

        The suites' ARNs.

        ", "ListTestsRequest$arn": "

        The tests' ARNs.

        ", "ListUniqueProblemsRequest$arn": "

        The unique problems' ARNs.

        ", "ListUploadsRequest$arn": "

        The Amazon Resource Name (ARN) of the project for which you want to list uploads.

        ", "ProblemDetail$arn": "

        The problem detail's ARN.

        ", "Project$arn": "

        The project's ARN.

        ", "RemoteAccessSession$arn": "

        The Amazon Resource Name (ARN) of the remote access session.

        ", "Run$arn": "

        The run's ARN.

        ", "Sample$arn": "

        The sample's ARN.

        ", "ScheduleRunConfiguration$extraDataPackageArn": "

        The ARN of the extra data for the run. The extra data is a .zip file that AWS Device Farm will extract to external data for Android or the app's sandbox for iOS.

        ", "ScheduleRunConfiguration$networkProfileArn": "

        Reserved for internal use.

        ", "ScheduleRunRequest$projectArn": "

        The ARN of the project for the run to be scheduled.

        ", "ScheduleRunRequest$appArn": "

        The ARN of the app to schedule a run.

        ", "ScheduleRunRequest$devicePoolArn": "

        The ARN of the device pool for the run to be scheduled.

        ", "ScheduleRunTest$testPackageArn": "

        The ARN of the uploaded test that will be run.

        ", "StopRemoteAccessSessionRequest$arn": "

        The Amazon Resource Name (ARN) of the remote access session you wish to stop.

        ", "StopRunRequest$arn": "

        Represents the Amazon Resource Name (ARN) of the Device Farm run you wish to stop.

        ", "Suite$arn": "

        The suite's ARN.

        ", "Test$arn": "

        The test's ARN.

        ", "UpdateDevicePoolRequest$arn": "

        The Amazon Resourc Name (ARN) of the Device Farm device pool you wish to update.

        ", "UpdateProjectRequest$arn": "

        The Amazon Resource Name (ARN) of the project whose name you wish to update.

        ", "Upload$arn": "

        The upload's ARN.

        " } }, "AmazonResourceNames": { "base": null, "refs": { "ScheduleRunConfiguration$auxiliaryApps": "

        A list of auxiliary apps for the run.

        " } }, "ArgumentException": { "base": "

        An invalid argument was specified.

        ", "refs": { } }, "Artifact": { "base": "

        Represents the output of a test. Examples of artifacts include logs and screenshots.

        ", "refs": { "Artifacts$member": null } }, "ArtifactCategory": { "base": null, "refs": { "ListArtifactsRequest$type": "

        The artifacts' type.

        Allowed values include:

        • FILE: The artifacts are files.

        • LOG: The artifacts are logs.

        • SCREENSHOT: The artifacts are screenshots.

        " } }, "ArtifactType": { "base": null, "refs": { "Artifact$type": "

        The artifact's type.

        Allowed values include the following:

        • UNKNOWN: An unknown type.

        • SCREENSHOT: The screenshot type.

        • DEVICE_LOG: The device log type.

        • MESSAGE_LOG: The message log type.

        • RESULT_LOG: The result log type.

        • SERVICE_LOG: The service log type.

        • WEBKIT_LOG: The web kit log type.

        • INSTRUMENTATION_OUTPUT: The instrumentation type.

        • EXERCISER_MONKEY_OUTPUT: For Android, the artifact (log) generated by an Android fuzz test.

        • CALABASH_JSON_OUTPUT: The Calabash JSON output type.

        • CALABASH_PRETTY_OUTPUT: The Calabash pretty output type.

        • CALABASH_STANDARD_OUTPUT: The Calabash standard output type.

        • CALABASH_JAVA_XML_OUTPUT: The Calabash Java XML output type.

        • AUTOMATION_OUTPUT: The automation output type.

        • APPIUM_SERVER_OUTPUT: The Appium server output type.

        • APPIUM_JAVA_OUTPUT: The Appium Java output type.

        • APPIUM_JAVA_XML_OUTPUT: The Appium Java XML output type.

        • APPIUM_PYTHON_OUTPUT: The Appium Python output type.

        • APPIUM_PYTHON_XML_OUTPUT: The Appium Python XML output type.

        • EXPLORER_EVENT_LOG: The Explorer event log output type.

        • EXPLORER_SUMMARY_LOG: The Explorer summary log output type.

        • APPLICATION_CRASH_REPORT: The application crash report output type.

        • XCTEST_LOG: The XCode test output type.

        " } }, "Artifacts": { "base": null, "refs": { "ListArtifactsResult$artifacts": "

        Information about the artifacts.

        " } }, "BillingMethod": { "base": null, "refs": { "CreateRemoteAccessSessionConfiguration$billingMethod": "

        Returns the billing method for purposes of configuring a remote access session.

        ", "RemoteAccessSession$billingMethod": "

        The billing method of the remote access session. Possible values include METERED or UNMETERED. For more information about metered devices, see AWS Device Farm terminology.\"

        ", "Run$billingMethod": "

        Specifies the billing method for a test run: metered or unmetered. If the parameter is not specified, the default value is metered.

        ", "ScheduleRunConfiguration$billingMethod": "

        Specifies the billing method for a test run: metered or unmetered. If the parameter is not specified, the default value is metered.

        " } }, "Boolean": { "base": null, "refs": { "Device$remoteAccessEnabled": "

        Specifies whether remote access has been enabled for the specified device.

        ", "DevicePoolCompatibilityResult$compatible": "

        Whether the result was compatible with the device pool.

        ", "Radios$wifi": "

        True if Wi-Fi is enabled at the beginning of the test; otherwise, false.

        ", "Radios$bluetooth": "

        True if Bluetooth is enabled at the beginning of the test; otherwise, false.

        ", "Radios$nfc": "

        True if NFC is enabled at the beginning of the test; otherwise, false.

        ", "Radios$gps": "

        True if GPS is enabled at the beginning of the test; otherwise, false.

        " } }, "CPU": { "base": "

        Represents the amount of CPU that an app is using on a physical device.

        Note that this does not represent system-wide CPU usage.

        ", "refs": { "Device$cpu": "

        Information about the device's CPU.

        " } }, "ContentType": { "base": null, "refs": { "CreateUploadRequest$contentType": "

        The upload's content type (for example, \"application/octet-stream\").

        ", "Upload$contentType": "

        The upload's content type (for example, \"application/octet-stream\").

        " } }, "Counters": { "base": "

        Represents entity counters.

        ", "refs": { "Job$counters": "

        The job's result counters.

        ", "Run$counters": "

        The run's result counters.

        ", "Suite$counters": "

        The suite's result counters.

        ", "Test$counters": "

        The test's result counters.

        " } }, "CreateDevicePoolRequest": { "base": "

        Represents a request to the create device pool operation.

        ", "refs": { } }, "CreateDevicePoolResult": { "base": "

        Represents the result of a create device pool request.

        ", "refs": { } }, "CreateProjectRequest": { "base": "

        Represents a request to the create project operation.

        ", "refs": { } }, "CreateProjectResult": { "base": "

        Represents the result of a create project request.

        ", "refs": { } }, "CreateRemoteAccessSessionConfiguration": { "base": "

        Creates the configuration settings for a remote access session, including the device model and type.

        ", "refs": { "CreateRemoteAccessSessionRequest$configuration": "

        The configuration information for the remote access session request.

        " } }, "CreateRemoteAccessSessionRequest": { "base": "

        Creates and submits a request to start a remote access session.

        ", "refs": { } }, "CreateRemoteAccessSessionResult": { "base": "

        Represents the server response from a request to create a remote access session.

        ", "refs": { } }, "CreateUploadRequest": { "base": "

        Represents a request to the create upload operation.

        ", "refs": { } }, "CreateUploadResult": { "base": "

        Represents the result of a create upload request.

        ", "refs": { } }, "CurrencyCode": { "base": null, "refs": { "MonetaryAmount$currencyCode": "

        The currency code of a monetary amount. For example, USD means \"U.S. dollars.\"

        " } }, "DateTime": { "base": null, "refs": { "Job$created": "

        When the job was created.

        ", "Job$started": "

        The job's start time.

        ", "Job$stopped": "

        The job's stop time.

        ", "OfferingStatus$effectiveOn": "

        The date on which the offering is effective.

        ", "OfferingTransaction$createdOn": "

        The date on which an offering transaction was created.

        ", "Project$created": "

        When the project was created.

        ", "RemoteAccessSession$created": "

        The date and time the remote access session was created.

        ", "RemoteAccessSession$started": "

        The date and time the remote access session was started.

        ", "RemoteAccessSession$stopped": "

        The date and time the remote access session was stopped.

        ", "Run$created": "

        When the run was created.

        ", "Run$started": "

        The run's start time.

        ", "Run$stopped": "

        The run's stop time.

        ", "Suite$created": "

        When the suite was created.

        ", "Suite$started": "

        The suite's start time.

        ", "Suite$stopped": "

        The suite's stop time.

        ", "Test$created": "

        When the test was created.

        ", "Test$started": "

        The test's start time.

        ", "Test$stopped": "

        The test's stop time.

        ", "Upload$created": "

        When the upload was created.

        " } }, "DeleteDevicePoolRequest": { "base": "

        Represents a request to the delete device pool operation.

        ", "refs": { } }, "DeleteDevicePoolResult": { "base": "

        Represents the result of a delete device pool request.

        ", "refs": { } }, "DeleteProjectRequest": { "base": "

        Represents a request to the delete project operation.

        ", "refs": { } }, "DeleteProjectResult": { "base": "

        Represents the result of a delete project request.

        ", "refs": { } }, "DeleteRemoteAccessSessionRequest": { "base": "

        Represents the request to delete the specified remote access session.

        ", "refs": { } }, "DeleteRemoteAccessSessionResult": { "base": "

        The response from the server when a request is made to delete the remote access session.

        ", "refs": { } }, "DeleteRunRequest": { "base": "

        Represents a request to the delete run operation.

        ", "refs": { } }, "DeleteRunResult": { "base": "

        Represents the result of a delete run request.

        ", "refs": { } }, "DeleteUploadRequest": { "base": "

        Represents a request to the delete upload operation.

        ", "refs": { } }, "DeleteUploadResult": { "base": "

        Represents the result of a delete upload request.

        ", "refs": { } }, "Device": { "base": "

        Represents a device type that an app is tested against.

        ", "refs": { "DevicePoolCompatibilityResult$device": null, "Devices$member": null, "GetDeviceResult$device": null, "Job$device": null, "Problem$device": "

        Information about the associated device.

        ", "RemoteAccessSession$device": null } }, "DeviceAttribute": { "base": null, "refs": { "IncompatibilityMessage$type": "

        The type of incompatibility.

        Allowed values include:

        • ARN: The ARN.

        • FORM_FACTOR: The form factor (for example, phone or tablet).

        • MANUFACTURER: The manufacturer.

        • PLATFORM: The platform (for example, Android or iOS).

        ", "Rule$attribute": "

        The rule's stringified attribute. For example, specify the value as \"\\\"abc\\\"\".

        Allowed values include:

        • ARN: The ARN.

        • FORM_FACTOR: The form factor (for example, phone or tablet).

        • MANUFACTURER: The manufacturer.

        • PLATFORM: The platform (for example, Android or iOS).

        " } }, "DeviceFormFactor": { "base": null, "refs": { "Device$formFactor": "

        The device's form factor.

        Allowed values include:

        • PHONE: The phone form factor.

        • TABLET: The tablet form factor.

        " } }, "DeviceMinutes": { "base": "

        Represents the total (metered or unmetered) minutes used by the resource to run tests. Contains the sum of minutes consumed by all children.

        ", "refs": { "Job$deviceMinutes": "

        Represents the total (metered or unmetered) minutes used by the job.

        ", "RemoteAccessSession$deviceMinutes": null, "Run$deviceMinutes": "

        Represents the total (metered or unmetered) minutes used by the test run.

        ", "Suite$deviceMinutes": "

        Represents the total (metered or unmetered) minutes used by the test suite.

        ", "Test$deviceMinutes": "

        Represents the total (metered or unmetered) minutes used by the test.

        " } }, "DevicePlatform": { "base": null, "refs": { "Device$platform": "

        The device's platform.

        Allowed values include:

        • ANDROID: The Android platform.

        • IOS: The iOS platform.

        ", "Offering$platform": "

        The platform of the device (e.g., ANDROID or IOS).

        ", "PurchasedDevicesMap$key": null, "Run$platform": "

        The run's platform.

        Allowed values include:

        • ANDROID: The Android platform.

        • IOS: The iOS platform.

        " } }, "DevicePool": { "base": "

        Represents a collection of device types.

        ", "refs": { "CreateDevicePoolResult$devicePool": "

        The newly created device pool.

        ", "DevicePools$member": null, "GetDevicePoolResult$devicePool": null, "UpdateDevicePoolResult$devicePool": null } }, "DevicePoolCompatibilityResult": { "base": "

        Represents a device pool compatibility result.

        ", "refs": { "DevicePoolCompatibilityResults$member": null } }, "DevicePoolCompatibilityResults": { "base": null, "refs": { "GetDevicePoolCompatibilityResult$compatibleDevices": "

        Information about compatible devices.

        ", "GetDevicePoolCompatibilityResult$incompatibleDevices": "

        Information about incompatible devices.

        " } }, "DevicePoolType": { "base": null, "refs": { "DevicePool$type": "

        The device pool's type.

        Allowed values include:

        • CURATED: A device pool that is created and managed by AWS Device Farm.

        • PRIVATE: A device pool that is created and managed by the device pool developer.

        ", "ListDevicePoolsRequest$type": "

        The device pools' type.

        Allowed values include:

        • CURATED: A device pool that is created and managed by AWS Device Farm.

        • PRIVATE: A device pool that is created and managed by the device pool developer.

        " } }, "DevicePools": { "base": null, "refs": { "ListDevicePoolsResult$devicePools": "

        Information about the device pools.

        " } }, "Devices": { "base": null, "refs": { "ListDevicesResult$devices": "

        Information about the devices.

        " } }, "Double": { "base": null, "refs": { "CPU$clock": "

        The clock speed of the device's CPU, expressed in hertz (Hz). For example, a 1.2 GHz CPU is expressed as 1200000000.

        ", "DeviceMinutes$total": "

        When specified, represents the total minutes used by the resource to run tests.

        ", "DeviceMinutes$metered": "

        When specified, represents only the sum of metered minutes used by the resource to run tests.

        ", "DeviceMinutes$unmetered": "

        When specified, represents only the sum of unmetered minutes used by the resource to run tests.

        ", "Location$latitude": "

        The latitude.

        ", "Location$longitude": "

        The longitude.

        ", "MonetaryAmount$amount": "

        The numerical amount of an offering or transaction.

        " } }, "ExecutionResult": { "base": null, "refs": { "Job$result": "

        The job's result.

        Allowed values include:

        • PENDING: A pending condition.

        • PASSED: A passing condition.

        • WARNED: A warning condition.

        • FAILED: A failed condition.

        • SKIPPED: A skipped condition.

        • ERRORED: An error condition.

        • STOPPED: A stopped condition.

        ", "Problem$result": "

        The problem's result.

        Allowed values include:

        • PENDING: A pending condition.

        • PASSED: A passing condition.

        • WARNED: A warning condition.

        • FAILED: A failed condition.

        • SKIPPED: A skipped condition.

        • ERRORED: An error condition.

        • STOPPED: A stopped condition.

        ", "RemoteAccessSession$result": "

        The result of the remote access session. Can be any of the following:

        • PENDING: A pending condition.

        • PASSED: A passing condition.

        • WARNED: A warning condition.

        • FAILED: A failed condition.

        • SKIPPED: A skipped condition.

        • ERRORED: An error condition.

        • STOPPED: A stopped condition.

        ", "Run$result": "

        The run's result.

        Allowed values include:

        • PENDING: A pending condition.

        • PASSED: A passing condition.

        • WARNED: A warning condition.

        • FAILED: A failed condition.

        • SKIPPED: A skipped condition.

        • ERRORED: An error condition.

        • STOPPED: A stopped condition.

        ", "Suite$result": "

        The suite's result.

        Allowed values include:

        • PENDING: A pending condition.

        • PASSED: A passing condition.

        • WARNED: A warning condition.

        • FAILED: A failed condition.

        • SKIPPED: A skipped condition.

        • ERRORED: An error condition.

        • STOPPED: A stopped condition.

        ", "Test$result": "

        The test's result.

        Allowed values include:

        • PENDING: A pending condition.

        • PASSED: A passing condition.

        • WARNED: A warning condition.

        • FAILED: A failed condition.

        • SKIPPED: A skipped condition.

        • ERRORED: An error condition.

        • STOPPED: A stopped condition.

        ", "UniqueProblemsByExecutionResultMap$key": null } }, "ExecutionStatus": { "base": null, "refs": { "Job$status": "

        The job's status.

        Allowed values include:

        • PENDING: A pending status.

        • PENDING_CONCURRENCY: A pending concurrency status.

        • PENDING_DEVICE: A pending device status.

        • PROCESSING: A processing status.

        • SCHEDULING: A scheduling status.

        • PREPARING: A preparing status.

        • RUNNING: A running status.

        • COMPLETED: A completed status.

        • STOPPING: A stopping status.

        ", "RemoteAccessSession$status": "

        The status of the remote access session. Can be any of the following:

        • PENDING: A pending status.

        • PENDING_CONCURRENCY: A pending concurrency status.

        • PENDING_DEVICE: A pending device status.

        • PROCESSING: A processing status.

        • SCHEDULING: A scheduling status.

        • PREPARING: A preparing status.

        • RUNNING: A running status.

        • COMPLETED: A completed status.

        • STOPPING: A stopping status.

        ", "Run$status": "

        The run's status.

        Allowed values include:

        • PENDING: A pending status.

        • PENDING_CONCURRENCY: A pending concurrency status.

        • PENDING_DEVICE: A pending device status.

        • PROCESSING: A processing status.

        • SCHEDULING: A scheduling status.

        • PREPARING: A preparing status.

        • RUNNING: A running status.

        • COMPLETED: A completed status.

        • STOPPING: A stopping status.

        ", "Suite$status": "

        The suite's status.

        Allowed values include:

        • PENDING: A pending status.

        • PENDING_CONCURRENCY: A pending concurrency status.

        • PENDING_DEVICE: A pending device status.

        • PROCESSING: A processing status.

        • SCHEDULING: A scheduling status.

        • PREPARING: A preparing status.

        • RUNNING: A running status.

        • COMPLETED: A completed status.

        • STOPPING: A stopping status.

        ", "Test$status": "

        The test's status.

        Allowed values include:

        • PENDING: A pending status.

        • PENDING_CONCURRENCY: A pending concurrency status.

        • PENDING_DEVICE: A pending device status.

        • PROCESSING: A processing status.

        • SCHEDULING: A scheduling status.

        • PREPARING: A preparing status.

        • RUNNING: A running status.

        • COMPLETED: A completed status.

        • STOPPING: A stopping status.

        " } }, "Filter": { "base": null, "refs": { "ScheduleRunTest$filter": "

        The test's filter.

        " } }, "GetAccountSettingsRequest": { "base": "

        Represents the request sent to retrieve the account settings.

        ", "refs": { } }, "GetAccountSettingsResult": { "base": "

        Represents the account settings return values from the GetAccountSettings request.

        ", "refs": { } }, "GetDevicePoolCompatibilityRequest": { "base": "

        Represents a request to the get device pool compatibility operation.

        ", "refs": { } }, "GetDevicePoolCompatibilityResult": { "base": "

        Represents the result of describe device pool compatibility request.

        ", "refs": { } }, "GetDevicePoolRequest": { "base": "

        Represents a request to the get device pool operation.

        ", "refs": { } }, "GetDevicePoolResult": { "base": "

        Represents the result of a get device pool request.

        ", "refs": { } }, "GetDeviceRequest": { "base": "

        Represents a request to the get device request.

        ", "refs": { } }, "GetDeviceResult": { "base": "

        Represents the result of a get device request.

        ", "refs": { } }, "GetJobRequest": { "base": "

        Represents a request to the get job operation.

        ", "refs": { } }, "GetJobResult": { "base": "

        Represents the result of a get job request.

        ", "refs": { } }, "GetOfferingStatusRequest": { "base": "

        Represents the request to retrieve the offering status for the specified customer or account.

        ", "refs": { } }, "GetOfferingStatusResult": { "base": "

        Returns the status result for a device offering.

        ", "refs": { } }, "GetProjectRequest": { "base": "

        Represents a request to the get project operation.

        ", "refs": { } }, "GetProjectResult": { "base": "

        Represents the result of a get project request.

        ", "refs": { } }, "GetRemoteAccessSessionRequest": { "base": "

        Represents the request to get information about the specified remote access session.

        ", "refs": { } }, "GetRemoteAccessSessionResult": { "base": "

        Represents the response from the server that lists detailed information about the remote access session.

        ", "refs": { } }, "GetRunRequest": { "base": "

        Represents a request to the get run operation.

        ", "refs": { } }, "GetRunResult": { "base": "

        Represents the result of a get run request.

        ", "refs": { } }, "GetSuiteRequest": { "base": "

        Represents a request to the get suite operation.

        ", "refs": { } }, "GetSuiteResult": { "base": "

        Represents the result of a get suite request.

        ", "refs": { } }, "GetTestRequest": { "base": "

        Represents a request to the get test operation.

        ", "refs": { } }, "GetTestResult": { "base": "

        Represents the result of a get test request.

        ", "refs": { } }, "GetUploadRequest": { "base": "

        Represents a request to the get upload operation.

        ", "refs": { } }, "GetUploadResult": { "base": "

        Represents the result of a get upload request.

        ", "refs": { } }, "IdempotencyException": { "base": "

        An entity with the same name already exists.

        ", "refs": { } }, "IncompatibilityMessage": { "base": "

        Represents information about incompatibility.

        ", "refs": { "IncompatibilityMessages$member": null } }, "IncompatibilityMessages": { "base": null, "refs": { "DevicePoolCompatibilityResult$incompatibilityMessages": "

        Information about the compatibility.

        " } }, "InstallToRemoteAccessSessionRequest": { "base": "

        Represents the request to install an Android application (in .apk format) or an iOS application (in .ipa format) as part of a remote access session.

        ", "refs": { } }, "InstallToRemoteAccessSessionResult": { "base": "

        Represents the response from the server after AWS Device Farm makes a request to install to a remote access session.

        ", "refs": { } }, "Integer": { "base": null, "refs": { "Counters$total": "

        The total number of entities.

        ", "Counters$passed": "

        The number of passed entities.

        ", "Counters$failed": "

        The number of failed entities.

        ", "Counters$warned": "

        The number of warned entities.

        ", "Counters$errored": "

        The number of errored entities.

        ", "Counters$stopped": "

        The number of stopped entities.

        ", "Counters$skipped": "

        The number of skipped entities.

        ", "OfferingStatus$quantity": "

        The number of available devices in the offering.

        ", "PurchaseOfferingRequest$quantity": "

        The number of device slots you wish to purchase in an offering request.

        ", "PurchasedDevicesMap$value": null, "RenewOfferingRequest$quantity": "

        The quantity requested in an offering renewal.

        ", "Resolution$width": "

        The screen resolution's width, expressed in pixels.

        ", "Resolution$height": "

        The screen resolution's height, expressed in pixels.

        ", "Run$totalJobs": "

        The total number of jobs for the run.

        ", "Run$completedJobs": "

        The total number of completed jobs.

        " } }, "Job": { "base": "

        Represents a device.

        ", "refs": { "GetJobResult$job": null, "Jobs$member": null } }, "Jobs": { "base": null, "refs": { "ListJobsResult$jobs": "

        Information about the jobs.

        " } }, "LimitExceededException": { "base": "

        A limit was exceeded.

        ", "refs": { } }, "ListArtifactsRequest": { "base": "

        Represents a request to the list artifacts operation.

        ", "refs": { } }, "ListArtifactsResult": { "base": "

        Represents the result of a list artifacts operation.

        ", "refs": { } }, "ListDevicePoolsRequest": { "base": "

        Represents the result of a list device pools request.

        ", "refs": { } }, "ListDevicePoolsResult": { "base": "

        Represents the result of a list device pools request.

        ", "refs": { } }, "ListDevicesRequest": { "base": "

        Represents the result of a list devices request.

        ", "refs": { } }, "ListDevicesResult": { "base": "

        Represents the result of a list devices operation.

        ", "refs": { } }, "ListJobsRequest": { "base": "

        Represents a request to the list jobs operation.

        ", "refs": { } }, "ListJobsResult": { "base": "

        Represents the result of a list jobs request.

        ", "refs": { } }, "ListOfferingTransactionsRequest": { "base": "

        Represents the request to list the offering transaction history.

        ", "refs": { } }, "ListOfferingTransactionsResult": { "base": "

        Returns the transaction log of the specified offerings.

        ", "refs": { } }, "ListOfferingsRequest": { "base": "

        Represents the request to list all offerings.

        ", "refs": { } }, "ListOfferingsResult": { "base": "

        Represents the return values of the list of offerings.

        ", "refs": { } }, "ListProjectsRequest": { "base": "

        Represents a request to the list projects operation.

        ", "refs": { } }, "ListProjectsResult": { "base": "

        Represents the result of a list projects request.

        ", "refs": { } }, "ListRemoteAccessSessionsRequest": { "base": "

        Represents the request to return information about the remote access session.

        ", "refs": { } }, "ListRemoteAccessSessionsResult": { "base": "

        Represents the response from the server after AWS Device Farm makes a request to return information about the remote access session.

        ", "refs": { } }, "ListRunsRequest": { "base": "

        Represents a request to the list runs operation.

        ", "refs": { } }, "ListRunsResult": { "base": "

        Represents the result of a list runs request.

        ", "refs": { } }, "ListSamplesRequest": { "base": "

        Represents a request to the list samples operation.

        ", "refs": { } }, "ListSamplesResult": { "base": "

        Represents the result of a list samples request.

        ", "refs": { } }, "ListSuitesRequest": { "base": "

        Represents a request to the list suites operation.

        ", "refs": { } }, "ListSuitesResult": { "base": "

        Represents the result of a list suites request.

        ", "refs": { } }, "ListTestsRequest": { "base": "

        Represents a request to the list tests operation.

        ", "refs": { } }, "ListTestsResult": { "base": "

        Represents the result of a list tests request.

        ", "refs": { } }, "ListUniqueProblemsRequest": { "base": "

        Represents a request to the list unique problems operation.

        ", "refs": { } }, "ListUniqueProblemsResult": { "base": "

        Represents the result of a list unique problems request.

        ", "refs": { } }, "ListUploadsRequest": { "base": "

        Represents a request to the list uploads operation.

        ", "refs": { } }, "ListUploadsResult": { "base": "

        Represents the result of a list uploads request.

        ", "refs": { } }, "Location": { "base": "

        Represents a latitude and longitude pair, expressed in geographic coordinate system degrees (for example 47.6204, -122.3491).

        Elevation is currently not supported.

        ", "refs": { "ScheduleRunConfiguration$location": "

        Information about the location that is used for the run.

        " } }, "Long": { "base": null, "refs": { "Device$heapSize": "

        The device's heap size, expressed in bytes.

        ", "Device$memory": "

        The device's total memory size, expressed in bytes.

        " } }, "Message": { "base": null, "refs": { "ArgumentException$message": "

        Any additional information about the exception.

        ", "CreateDevicePoolRequest$description": "

        The device pool's description.

        ", "DevicePool$description": "

        The device pool's description.

        ", "IdempotencyException$message": "

        Any additional information about the exception.

        ", "IncompatibilityMessage$message": "

        A message about the incompatibility.

        ", "Job$message": "

        A message about the job's result.

        ", "LimitExceededException$message": "

        Any additional information about the exception.

        ", "NotEligibleException$message": "

        The HTTP response code of a Not Eligible exception.

        ", "NotFoundException$message": "

        Any additional information about the exception.

        ", "Offering$description": "

        A string describing the offering.

        ", "Problem$message": "

        A message about the problem's result.

        ", "RemoteAccessSession$message": "

        A message about the remote access session.

        ", "Run$message": "

        A message about the run's result.

        ", "ServiceAccountException$message": "

        Any additional information about the exception.

        ", "Suite$message": "

        A message about the suite's result.

        ", "Test$message": "

        A message about the test's result.

        ", "UniqueProblem$message": "

        A message about the unique problems' result.

        ", "UpdateDevicePoolRequest$description": "

        A description of the device pool you wish to update.

        ", "Upload$message": "

        A message about the upload's result.

        " } }, "Metadata": { "base": null, "refs": { "Upload$metadata": "

        The upload's metadata. For example, for Android, this contains information that is parsed from the manifest and is displayed in the AWS Device Farm console after the associated app is uploaded.

        " } }, "MonetaryAmount": { "base": "

        A number representing the monetary amount for an offering or transaction.

        ", "refs": { "OfferingTransaction$cost": "

        The cost of an offering transaction.

        ", "RecurringCharge$cost": "

        The cost of the recurring charge.

        " } }, "Name": { "base": null, "refs": { "Artifact$name": "

        The artifact's name.

        ", "CreateDevicePoolRequest$name": "

        The device pool's name.

        ", "CreateProjectRequest$name": "

        The project's name.

        ", "CreateRemoteAccessSessionRequest$name": "

        The name of the remote access session that you wish to create.

        ", "CreateUploadRequest$name": "

        The upload's file name. The name should not contain the '/' character. If uploading an iOS app, the file name needs to end with the .ipa extension. If uploading an Android app, the file name needs to end with the .apk extension. For all others, the file name must end with the .zip file extension.

        ", "Device$name": "

        The device's display name.

        ", "DevicePool$name": "

        The device pool's name.

        ", "Job$name": "

        The job's name.

        ", "ProblemDetail$name": "

        The problem detail's name.

        ", "Project$name": "

        The project's name.

        ", "RemoteAccessSession$name": "

        The name of the remote access session.

        ", "Run$name": "

        The run's name.

        ", "ScheduleRunRequest$name": "

        The name for the run to be scheduled.

        ", "Suite$name": "

        The suite's name.

        ", "Test$name": "

        The test's name.

        ", "UpdateDevicePoolRequest$name": "

        A string representing the name of the device pool you wish to update.

        ", "UpdateProjectRequest$name": "

        A string representing the new name of the project that you are updating.

        ", "Upload$name": "

        The upload's file name.

        " } }, "NotEligibleException": { "base": "

        Exception gets thrown when a user is not eligible to perform the specified transaction.

        ", "refs": { } }, "NotFoundException": { "base": "

        The specified entity was not found.

        ", "refs": { } }, "Offering": { "base": "

        Represents the metadata of a device offering.

        ", "refs": { "OfferingStatus$offering": "

        Represents the metadata of an offering status.

        ", "Offerings$member": null } }, "OfferingIdentifier": { "base": null, "refs": { "Offering$id": "

        The ID that corresponds to a device offering.

        ", "OfferingStatusMap$key": null, "PurchaseOfferingRequest$offeringId": "

        The ID of the offering.

        ", "RenewOfferingRequest$offeringId": "

        The ID of a request to renew an offering.

        " } }, "OfferingStatus": { "base": "

        The status of the offering.

        ", "refs": { "OfferingStatusMap$value": null, "OfferingTransaction$offeringStatus": "

        The status of an offering transaction.

        " } }, "OfferingStatusMap": { "base": null, "refs": { "GetOfferingStatusResult$current": "

        When specified, gets the offering status for the current period.

        ", "GetOfferingStatusResult$nextPeriod": "

        When specified, gets the offering status for the next period.

        " } }, "OfferingTransaction": { "base": "

        Represents the metadata of an offering transaction.

        ", "refs": { "OfferingTransactions$member": null, "PurchaseOfferingResult$offeringTransaction": "

        Represents the offering transaction for the purchase result.

        ", "RenewOfferingResult$offeringTransaction": "

        Represents the status of the offering transaction for the renewal.

        " } }, "OfferingTransactionType": { "base": null, "refs": { "OfferingStatus$type": "

        The type specified for the offering status.

        " } }, "OfferingTransactions": { "base": null, "refs": { "ListOfferingTransactionsResult$offeringTransactions": "

        The audit log of subscriptions you have purchased and modified through AWS Device Farm.

        " } }, "OfferingType": { "base": null, "refs": { "Offering$type": "

        The type of offering (e.g., \"RECURRING\") for a device.

        " } }, "Offerings": { "base": null, "refs": { "ListOfferingsResult$offerings": "

        A value representing the list offering results.

        " } }, "PaginationToken": { "base": null, "refs": { "GetOfferingStatusRequest$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "GetOfferingStatusResult$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListArtifactsRequest$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListArtifactsResult$nextToken": "

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

        ", "ListDevicePoolsRequest$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListDevicePoolsResult$nextToken": "

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

        ", "ListDevicesRequest$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListDevicesResult$nextToken": "

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

        ", "ListJobsRequest$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListJobsResult$nextToken": "

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

        ", "ListOfferingTransactionsRequest$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListOfferingTransactionsResult$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListOfferingsRequest$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListOfferingsResult$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListProjectsRequest$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListProjectsResult$nextToken": "

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

        ", "ListRemoteAccessSessionsRequest$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListRemoteAccessSessionsResult$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListRunsRequest$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListRunsResult$nextToken": "

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

        ", "ListSamplesRequest$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListSamplesResult$nextToken": "

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

        ", "ListSuitesRequest$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListSuitesResult$nextToken": "

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

        ", "ListTestsRequest$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListTestsResult$nextToken": "

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

        ", "ListUniqueProblemsRequest$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListUniqueProblemsResult$nextToken": "

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

        ", "ListUploadsRequest$nextToken": "

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

        ", "ListUploadsResult$nextToken": "

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

        " } }, "Problem": { "base": "

        Represents a specific warning or failure.

        ", "refs": { "Problems$member": null } }, "ProblemDetail": { "base": "

        Information about a problem detail.

        ", "refs": { "Problem$run": "

        Information about the associated run.

        ", "Problem$job": "

        Information about the associated job.

        ", "Problem$suite": "

        Information about the associated suite.

        ", "Problem$test": "

        Information about the associated test.

        " } }, "Problems": { "base": null, "refs": { "UniqueProblem$problems": "

        Information about the problems.

        " } }, "Project": { "base": "

        Represents an operating-system neutral workspace for running and managing tests.

        ", "refs": { "CreateProjectResult$project": "

        The newly created project.

        ", "GetProjectResult$project": null, "Projects$member": null, "UpdateProjectResult$project": null } }, "Projects": { "base": null, "refs": { "ListProjectsResult$projects": "

        Information about the projects.

        " } }, "PurchaseOfferingRequest": { "base": "

        Represents a request for a purchase offering.

        ", "refs": { } }, "PurchaseOfferingResult": { "base": "

        The result of the purchase offering (e.g., success or failure).

        ", "refs": { } }, "PurchasedDevicesMap": { "base": null, "refs": { "AccountSettings$unmeteredDevices": "

        Returns the unmetered devices you have purchased or want to purchase.

        ", "AccountSettings$unmeteredRemoteAccessDevices": "

        Returns the unmetered remote access devices you have purchased or want to purchase.

        " } }, "Radios": { "base": "

        Represents the set of radios and their states on a device. Examples of radios include Wi-Fi, GPS, Bluetooth, and NFC.

        ", "refs": { "ScheduleRunConfiguration$radios": "

        Information about the radio states for the run.

        " } }, "RecurringCharge": { "base": "

        Specifies whether charges for devices will be recurring.

        ", "refs": { "RecurringCharges$member": null } }, "RecurringChargeFrequency": { "base": null, "refs": { "RecurringCharge$frequency": "

        The frequency in which charges will recur.

        " } }, "RecurringCharges": { "base": null, "refs": { "Offering$recurringCharges": "

        Specifies whether there are recurring charges for the offering.

        " } }, "RemoteAccessSession": { "base": "

        Represents information about the remote access session.

        ", "refs": { "CreateRemoteAccessSessionResult$remoteAccessSession": "

        A container that describes the remote access session when the request to create a remote access session is sent.

        ", "GetRemoteAccessSessionResult$remoteAccessSession": "

        A container that lists detailed information about the remote access session.

        ", "RemoteAccessSessions$member": null, "StopRemoteAccessSessionResult$remoteAccessSession": "

        A container representing the metadata from the service about the remote access session you are stopping.

        " } }, "RemoteAccessSessions": { "base": null, "refs": { "ListRemoteAccessSessionsResult$remoteAccessSessions": "

        A container representing the metadata from the service about each remote access session you are requesting.

        " } }, "RenewOfferingRequest": { "base": "

        A request representing an offering renewal.

        ", "refs": { } }, "RenewOfferingResult": { "base": "

        The result of a renewal offering.

        ", "refs": { } }, "Resolution": { "base": "

        Represents the screen resolution of a device in height and width, expressed in pixels.

        ", "refs": { "Device$resolution": null } }, "Rule": { "base": "

        Represents a condition for a device pool.

        ", "refs": { "Rules$member": null } }, "RuleOperator": { "base": null, "refs": { "Rule$operator": "

        The rule's operator.

        • EQUALS: The equals operator.

        • GREATER_THAN: The greater-than operator.

        • IN: The in operator.

        • LESS_THAN: The less-than operator.

        • NOT_IN: The not-in operator.

        " } }, "Rules": { "base": null, "refs": { "CreateDevicePoolRequest$rules": "

        The device pool's rules.

        ", "DevicePool$rules": "

        Information about the device pool's rules.

        ", "UpdateDevicePoolRequest$rules": "

        Represents the rules you wish to modify for the device pool. Updating rules is optional; however, if you choose to update rules for your request, the update will replace the existing rules.

        " } }, "Run": { "base": "

        Represents an app on a set of devices with a specific test and configuration.

        ", "refs": { "GetRunResult$run": null, "Runs$member": null, "ScheduleRunResult$run": "

        Information about the scheduled run.

        ", "StopRunResult$run": null } }, "Runs": { "base": null, "refs": { "ListRunsResult$runs": "

        Information about the runs.

        " } }, "Sample": { "base": "

        Represents a sample of performance data.

        ", "refs": { "Samples$member": null } }, "SampleType": { "base": null, "refs": { "Sample$type": "

        The sample's type.

        Must be one of the following values:

        • CPU: A CPU sample type. This is expressed as the app processing CPU time (including child processes) as reported by process, as a percentage.

        • MEMORY: A memory usage sample type. This is expressed as the total proportional set size of an app process, in kilobytes.

        • NATIVE_AVG_DRAWTIME

        • NATIVE_FPS

        • NATIVE_FRAMES

        • NATIVE_MAX_DRAWTIME

        • NATIVE_MIN_DRAWTIME

        • OPENGL_AVG_DRAWTIME

        • OPENGL_FPS

        • OPENGL_FRAMES

        • OPENGL_MAX_DRAWTIME

        • OPENGL_MIN_DRAWTIME

        • RX

        • RX_RATE: The total number of bytes per second (TCP and UDP) that are sent, by app process.

        • THREADS: A threads sample type. This is expressed as the total number of threads per app process.

        • TX

        • TX_RATE: The total number of bytes per second (TCP and UDP) that are received, by app process.

        " } }, "Samples": { "base": null, "refs": { "ListSamplesResult$samples": "

        Information about the samples.

        " } }, "ScheduleRunConfiguration": { "base": "

        Represents the settings for a run. Includes things like location, radio states, auxiliary apps, and network profiles.

        ", "refs": { "ScheduleRunRequest$configuration": "

        Information about the settings for the run to be scheduled.

        " } }, "ScheduleRunRequest": { "base": "

        Represents a request to the schedule run operation.

        ", "refs": { } }, "ScheduleRunResult": { "base": "

        Represents the result of a schedule run request.

        ", "refs": { } }, "ScheduleRunTest": { "base": "

        Represents additional test settings.

        ", "refs": { "ScheduleRunRequest$test": "

        Information about the test for the run to be scheduled.

        " } }, "ServiceAccountException": { "base": "

        There was a problem with the service account.

        ", "refs": { } }, "StopRemoteAccessSessionRequest": { "base": "

        Represents the request to stop the remote access session.

        ", "refs": { } }, "StopRemoteAccessSessionResult": { "base": "

        Represents the response from the server that describes the remote access session when AWS Device Farm stops the session.

        ", "refs": { } }, "StopRunRequest": { "base": "

        Represents the request to stop a specific run.

        ", "refs": { } }, "StopRunResult": { "base": "

        Represents the results of your stop run attempt.

        ", "refs": { } }, "String": { "base": null, "refs": { "Artifact$extension": "

        The artifact's file extension.

        ", "CPU$frequency": "

        The CPU's frequency.

        ", "CPU$architecture": "

        The CPU's architecture, for example x86 or ARM.

        ", "Device$manufacturer": "

        The device's manufacturer name.

        ", "Device$model": "

        The device's model name.

        ", "Device$os": "

        The device's operating system type.

        ", "Device$image": "

        The device's image name.

        ", "Device$carrier": "

        The device's carrier.

        ", "Device$radio": "

        The device's radio.

        ", "Device$fleetType": "

        The type of fleet to which this device belongs. Possible values for fleet type are PRIVATE and PUBLIC.

        ", "Device$fleetName": "

        The name of the fleet to which this device belongs.

        ", "RemoteAccessSession$endpoint": "

        The endpoint for the remote access sesssion.

        ", "Rule$value": "

        The rule's value.

        ", "ScheduleRunConfiguration$locale": "

        Information about the locale that is used for the run.

        ", "TestParameters$key": null, "TestParameters$value": null } }, "Suite": { "base": "

        Represents a collection of one or more tests.

        ", "refs": { "GetSuiteResult$suite": null, "Suites$member": null } }, "Suites": { "base": null, "refs": { "ListSuitesResult$suites": "

        Information about the suites.

        " } }, "Test": { "base": "

        Represents a condition that is evaluated.

        ", "refs": { "GetTestResult$test": null, "Tests$member": null } }, "TestParameters": { "base": null, "refs": { "ScheduleRunTest$parameters": "

        The test's parameters, such as test framework parameters and fixture settings.

        " } }, "TestType": { "base": null, "refs": { "GetDevicePoolCompatibilityRequest$testType": "

        The test type for the specified device pool.

        Allowed values include the following:

        • BUILTIN_FUZZ: The built-in fuzz type.

        • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

        • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

        • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

        • APPIUM_PYTHON: The Appium Python type.

        • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

        • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

        • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

        • CALABASH: The Calabash type.

        • INSTRUMENTATION: The Instrumentation type.

        • UIAUTOMATION: The uiautomation type.

        • UIAUTOMATOR: The uiautomator type.

        • XCTEST: The XCode test type.

        • XCTEST_UI: The XCode UI test type.

        ", "Job$type": "

        The job's type.

        Allowed values include the following:

        • BUILTIN_FUZZ: The built-in fuzz type.

        • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

        • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

        • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

        • APPIUM_PYTHON: The Appium Python type.

        • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

        • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

        • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

        • CALABASH: The Calabash type.

        • INSTRUMENTATION: The Instrumentation type.

        • UIAUTOMATION: The uiautomation type.

        • UIAUTOMATOR: The uiautomator type.

        • XCTEST: The XCode test type.

        • XCTEST_UI: The XCode UI test type.

        ", "Run$type": "

        The run's type.

        Must be one of the following values:

        • BUILTIN_FUZZ: The built-in fuzz type.

        • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

        • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

        • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

        • APPIUM_PYTHON: The Appium Python type.

        • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

        • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

        • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

        • CALABASH: The Calabash type.

        • INSTRUMENTATION: The Instrumentation type.

        • UIAUTOMATION: The uiautomation type.

        • UIAUTOMATOR: The uiautomator type.

        • XCTEST: The XCode test type.

        • XCTEST_UI: The XCode UI test type.

        ", "ScheduleRunTest$type": "

        The test's type.

        Must be one of the following values:

        • BUILTIN_FUZZ: The built-in fuzz type.

        • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

        • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

        • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

        • APPIUM_PYTHON: The Appium Python type.

        • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

        • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

        • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

        • CALABASH: The Calabash type.

        • INSTRUMENTATION: The Instrumentation type.

        • UIAUTOMATION: The uiautomation type.

        • UIAUTOMATOR: The uiautomator type.

        • XCTEST: The XCode test type.

        • XCTEST_UI: The XCode UI test type.

        ", "Suite$type": "

        The suite's type.

        Must be one of the following values:

        • BUILTIN_FUZZ: The built-in fuzz type.

        • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

        • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

        • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

        • APPIUM_PYTHON: The Appium Python type.

        • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

        • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

        • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

        • CALABASH: The Calabash type.

        • INSTRUMENTATION: The Instrumentation type.

        • UIAUTOMATION: The uiautomation type.

        • UIAUTOMATOR: The uiautomator type.

        • XCTEST: The XCode test type.

        • XCTEST_UI: The XCode UI test type.

        ", "Test$type": "

        The test's type.

        Must be one of the following values:

        • BUILTIN_FUZZ: The built-in fuzz type.

        • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

        • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

        • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

        • APPIUM_PYTHON: The Appium Python type.

        • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

        • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

        • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

        • CALABASH: The Calabash type.

        • INSTRUMENTATION: The Instrumentation type.

        • UIAUTOMATION: The uiautomation type.

        • UIAUTOMATOR: The uiautomator type.

        • XCTEST: The XCode test type.

        • XCTEST_UI: The XCode UI test type.

        " } }, "Tests": { "base": null, "refs": { "ListTestsResult$tests": "

        Information about the tests.

        " } }, "TransactionIdentifier": { "base": null, "refs": { "OfferingTransaction$transactionId": "

        The transaction ID of the offering transaction.

        " } }, "URL": { "base": null, "refs": { "Artifact$url": "

        The pre-signed Amazon S3 URL that can be used with a corresponding GET request to download the artifact's file.

        ", "Sample$url": "

        The pre-signed Amazon S3 URL that can be used with a corresponding GET request to download the sample's file.

        ", "Upload$url": "

        The pre-signed Amazon S3 URL that was used to store a file through a corresponding PUT request.

        " } }, "UniqueProblem": { "base": "

        A collection of one or more problems, grouped by their result.

        ", "refs": { "UniqueProblems$member": null } }, "UniqueProblems": { "base": null, "refs": { "UniqueProblemsByExecutionResultMap$value": null } }, "UniqueProblemsByExecutionResultMap": { "base": null, "refs": { "ListUniqueProblemsResult$uniqueProblems": "

        Information about the unique problems.

        Allowed values include:

        • PENDING: A pending condition.

        • PASSED: A passing condition.

        • WARNED: A warning condition.

        • FAILED: A failed condition.

        • SKIPPED: A skipped condition.

        • ERRORED: An error condition.

        • STOPPED: A stopped condition.

        " } }, "UpdateDevicePoolRequest": { "base": "

        Represents a request to the update device pool operation.

        ", "refs": { } }, "UpdateDevicePoolResult": { "base": "

        Represents the result of an update device pool request.

        ", "refs": { } }, "UpdateProjectRequest": { "base": "

        Represents a request to the update project operation.

        ", "refs": { } }, "UpdateProjectResult": { "base": "

        Represents the result of an update project request.

        ", "refs": { } }, "Upload": { "base": "

        An app or a set of one or more tests to upload or that have been uploaded.

        ", "refs": { "CreateUploadResult$upload": "

        The newly created upload.

        ", "GetUploadResult$upload": null, "InstallToRemoteAccessSessionResult$appUpload": null, "Uploads$member": null } }, "UploadStatus": { "base": null, "refs": { "Upload$status": "

        The upload's status.

        Must be one of the following values:

        • FAILED: A failed status.

        • INITIALIZED: An initialized status.

        • PROCESSING: A processing status.

        • SUCCEEDED: A succeeded status.

        " } }, "UploadType": { "base": null, "refs": { "CreateUploadRequest$type": "

        The upload's upload type.

        Must be one of the following values:

        • ANDROID_APP: An Android upload.

        • IOS_APP: An iOS upload.

        • WEB_APP: A web appliction upload.

        • EXTERNAL_DATA: An external data upload.

        • APPIUM_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package upload.

        • APPIUM_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package upload.

        • APPIUM_PYTHON_TEST_PACKAGE: An Appium Python test package upload.

        • APPIUM_WEB_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package upload.

        • APPIUM_WEB_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package upload.

        • APPIUM_WEB_PYTHON_TEST_PACKAGE: An Appium Python test package upload.

        • CALABASH_TEST_PACKAGE: A Calabash test package upload.

        • INSTRUMENTATION_TEST_PACKAGE: An instrumentation upload.

        • UIAUTOMATION_TEST_PACKAGE: A uiautomation test package upload.

        • UIAUTOMATOR_TEST_PACKAGE: A uiautomator test package upload.

        • XCTEST_TEST_PACKAGE: An XCode test package upload.

        • XCTEST_UI_TEST_PACKAGE: An XCode UI test package upload.

        Note If you call CreateUpload with WEB_APP specified, AWS Device Farm throws an ArgumentException error.

        ", "Upload$type": "

        The upload's type.

        Must be one of the following values:

        • ANDROID_APP: An Android upload.

        • IOS_APP: An iOS upload.

        • WEB_APP: A web appliction upload.

        • EXTERNAL_DATA: An external data upload.

        • APPIUM_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package upload.

        • APPIUM_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package upload.

        • APPIUM_PYTHON_TEST_PACKAGE: An Appium Python test package upload.

        • APPIUM_WEB_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package upload.

        • APPIUM_WEB_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package upload.

        • APPIUM_WEB_PYTHON_TEST_PACKAGE: An Appium Python test package upload.

        • CALABASH_TEST_PACKAGE: A Calabash test package upload.

        • INSTRUMENTATION_TEST_PACKAGE: An instrumentation upload.

        • UIAUTOMATION_TEST_PACKAGE: A uiautomation test package upload.

        • UIAUTOMATOR_TEST_PACKAGE: A uiautomator test package upload.

        • XCTEST_TEST_PACKAGE: An XCode test package upload.

        • XCTEST_UI_TEST_PACKAGE: An XCode UI test package upload.

        " } }, "Uploads": { "base": null, "refs": { "ListUploadsResult$uploads": "

        Information about the uploads.

        " } } } } aws-sdk-go-1.4.22/models/apis/devicefarm/2015-06-23/examples-1.json000066400000000000000000001233611300374646400240200ustar00rootroot00000000000000{ "version": "1.0", "examples": { "CreateDevicePool": [ { "input": { "name": "MyDevicePool", "description": "My Android devices", "projectArn": "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456", "rules": [ ] }, "output": { "devicePool": { } }, "comments": { "input": { "name": "A device pool contains related devices, such as devices that run only on Android or that run only on iOS.", "projectArn": "You can get the project ARN by using the list-projects CLI command." }, "output": { } }, "description": "The following example creates a new device pool named MyDevicePool inside an existing project.", "id": "createdevicepool-example-1470862210860", "title": "To create a new device pool" } ], "CreateProject": [ { "input": { "name": "MyProject" }, "output": { "project": { "name": "MyProject", "arn": "arn:aws:devicefarm:us-west-2:183774035805:project:5e01a8c7-c861-4c0a-b1d5-12345EXAMPLE", "created": "1472660939.152" } }, "comments": { "input": { "name": "A project in Device Farm is a workspace that contains test runs. A run is a test of a single app against one or more devices." }, "output": { } }, "description": "The following example creates a new project named MyProject.", "id": "createproject-example-1470862210860", "title": "To create a new project" } ], "CreateRemoteAccessSession": [ { "input": { "name": "MySession", "configuration": { "billingMethod": "METERED" }, "deviceArn": "arn:aws:devicefarm:us-west-2::device:123EXAMPLE", "projectArn": "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456" }, "output": { "remoteAccessSession": { } }, "comments": { "input": { "deviceArn": "You can get the device ARN by using the list-devices CLI command.", "projectArn": "You can get the project ARN by using the list-projects CLI command." }, "output": { } }, "description": "The following example creates a remote access session named MySession.", "id": "to-create-a-remote-access-session-1470970668274", "title": "To create a remote access session" } ], "CreateUpload": [ { "input": { "name": "MyAppiumPythonUpload", "type": "APPIUM_PYTHON_TEST_PACKAGE", "projectArn": "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456" }, "output": { "upload": { "name": "MyAppiumPythonUpload", "type": "APPIUM_PYTHON_TEST_PACKAGE", "arn": "arn:aws:devicefarm:us-west-2:183774035805:upload:5e01a8c7-c861-4c0a-b1d5-5ec6e6c6dd23/b5340a65-3da7-4da6-a26e-12345EXAMPLE", "created": "1472661404.186", "status": "INITIALIZED", "url": "https://prod-us-west-2-uploads.s3-us-west-2.amazonaws.com/arn%3Aaws%3Adevicefarm%3Aus-west-2%3A183774035805%3Aproject%3A5e01a8c7-c861-4c0a-b1d5-12345EXAMPLE/uploads/arn%3Aaws%3Adevicefarm%3Aus-west-2%3A183774035805%3Aupload%3A5e01a8c7-c861-4c0a-b1d5-5ec6e6c6dd23/b5340a65-3da7-4da6-a26e-12345EXAMPLE/MyAppiumPythonUpload?AWSAccessKeyId=1234567891011EXAMPLE&Expires=1472747804&Signature=1234567891011EXAMPLE" } }, "comments": { "input": { "projectArn": "You can get the project ARN by using the list-projects CLI command." }, "output": { } }, "description": "The following example creates a new Appium Python test package upload inside an existing project.", "id": "createupload-example-1470864711775", "title": "To create a new test package upload" } ], "DeleteDevicePool": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2::devicepool:123-456-EXAMPLE-GUID" }, "output": { }, "comments": { "input": { "arn": "You can get the device pool ARN by using the list-device-pools CLI command." }, "output": { } }, "description": "The following example deletes a specific device pool.", "id": "deletedevicepool-example-1470866975494", "title": "To delete a device pool" } ], "DeleteProject": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456" }, "output": { }, "comments": { "input": { "arn": "You can get the project ARN by using the list-projects CLI command." }, "output": { } }, "description": "The following example deletes a specific project.", "id": "deleteproject-example-1470867374212", "title": "To delete a project" } ], "DeleteRemoteAccessSession": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:session:EXAMPLE-GUID-123-456" }, "output": { }, "comments": { "input": { "arn": "You can get the remote access session ARN by using the list-remote-access-sessions CLI command." }, "output": { } }, "description": "The following example deletes a specific remote access session.", "id": "to-delete-a-specific-remote-access-session-1470971431677", "title": "To delete a specific remote access session" } ], "DeleteRun": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:run:EXAMPLE-GUID-123-456" }, "output": { }, "comments": { "input": { "arn": "You can get the run ARN by using the list-runs CLI command." }, "output": { } }, "description": "The following example deletes a specific test run.", "id": "deleterun-example-1470867905129", "title": "To delete a run" } ], "DeleteUpload": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:upload:EXAMPLE-GUID-123-456" }, "output": { }, "comments": { "input": { "arn": "You can get the upload ARN by using the list-uploads CLI command." }, "output": { } }, "description": "The following example deletes a specific upload.", "id": "deleteupload-example-1470868363942", "title": "To delete a specific upload" } ], "GetAccountSettings": [ { "input": { }, "output": { "accountSettings": { "awsAccountNumber": "123456789101", "unmeteredDevices": { "ANDROID": 1, "IOS": 2 } } }, "comments": { "input": { }, "output": { } }, "description": "The following example returns information about your Device Farm account settings.", "id": "to-get-information-about-account-settings-1472567568189", "title": "To get information about account settings" } ], "GetDevice": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2::device:123EXAMPLE" }, "output": { "device": { "name": "LG G2 (Sprint)", "arn": "arn:aws:devicefarm:us-west-2::device:A0E6E6E1059E45918208DF75B2B7EF6C", "cpu": { "architecture": "armeabi-v7a", "clock": 2265.6, "frequency": "MHz" }, "formFactor": "PHONE", "heapSize": 256000000, "image": "75B2B7EF6C12345EXAMPLE", "manufacturer": "LG", "memory": 16000000000, "model": "G2 (Sprint)", "os": "4.2.2", "platform": "ANDROID", "resolution": { "height": 1920, "width": 1080 } } }, "comments": { "input": { }, "output": { } }, "description": "The following example returns information about a specific device.", "id": "getdevice-example-1470870602173", "title": "To get information about a device" } ], "GetDevicePool": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456" }, "output": { "devicePool": { } }, "comments": { "input": { "arn": "You can obtain the project ARN by using the list-projects CLI command." }, "output": { } }, "description": "The following example returns information about a specific device pool, given a project ARN.", "id": "getdevicepool-example-1470870873136", "title": "To get information about a device pool" } ], "GetDevicePoolCompatibility": [ { "input": { "appArn": "arn:aws:devicefarm:us-west-2::app:123-456-EXAMPLE-GUID", "devicePoolArn": "arn:aws:devicefarm:us-west-2::devicepool:123-456-EXAMPLE-GUID", "testType": "APPIUM_PYTHON" }, "output": { "compatibleDevices": [ ], "incompatibleDevices": [ ] }, "comments": { "input": { "devicePoolArn": "You can get the device pool ARN by using the list-device-pools CLI command." }, "output": { } }, "description": "The following example returns information about the compatibility of a specific device pool, given its ARN.", "id": "getdevicepoolcompatibility-example-1470925003466", "title": "To get information about the compatibility of a device pool" } ], "GetJob": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2::job:123-456-EXAMPLE-GUID" }, "output": { "job": { } }, "comments": { "input": { "arn": "You can get the job ARN by using the list-jobs CLI command." }, "output": { } }, "description": "The following example returns information about a specific job.", "id": "getjob-example-1470928294268", "title": "To get information about a job" } ], "GetOfferingStatus": [ { "input": { "nextToken": "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE=" }, "output": { "current": { "D68B3C05-1BA6-4360-BC69-12345EXAMPLE": { "offering": { "type": "RECURRING", "description": "Android Remote Access Unmetered Device Slot", "id": "D68B3C05-1BA6-4360-BC69-12345EXAMPLE", "platform": "ANDROID" }, "quantity": 1 } }, "nextPeriod": { "D68B3C05-1BA6-4360-BC69-12345EXAMPLE": { "effectiveOn": "1472688000", "offering": { "type": "RECURRING", "description": "Android Remote Access Unmetered Device Slot", "id": "D68B3C05-1BA6-4360-BC69-12345EXAMPLE", "platform": "ANDROID" }, "quantity": 1 } } }, "comments": { "input": { "nextToken": "A dynamically generated value, used for paginating results." }, "output": { } }, "description": "The following example returns information about Device Farm offerings available to your account.", "id": "to-get-status-information-about-device-offerings-1472568124402", "title": "To get status information about device offerings" } ], "GetProject": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:project:5e01a8c7-c861-4c0a-b1d5-12345EXAMPLE" }, "output": { "project": { "name": "My Project", "arn": "arn:aws:devicefarm:us-west-2:123456789101:project:5e01a8c7-c861-4c0a-b1d5-12345EXAMPLE", "created": "1472660939.152" } }, "comments": { "input": { "arn": "You can get the project ARN by using the list-projects CLI command." }, "output": { } }, "description": "The following example gets information about a specific project.", "id": "to-get-a-project-1470975038449", "title": "To get information about a project" } ], "GetRemoteAccessSession": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:session:EXAMPLE-GUID-123-456" }, "output": { "remoteAccessSession": { } }, "comments": { "input": { "arn": "You can get the remote access session ARN by using the list-remote-access-sessions CLI command." }, "output": { } }, "description": "The following example gets a specific remote access session.", "id": "to-get-a-remote-access-session-1471014119414", "title": "To get a remote access session" } ], "GetRun": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:run:5e01a8c7-c861-4c0a-b1d5-5ec6e6c6dd23/0fcac17b-6122-44d7-ae5a-12345EXAMPLE" }, "output": { "run": { "name": "My Test Run", "type": "BUILTIN_EXPLORER", "arn": "arn:aws:devicefarm:us-west-2:123456789101:run:5e01a8c7-c861-4c0a-b1d5-5ec6e6c6dd23/0fcac17b-6122-44d7-ae5a-12345EXAMPLE", "billingMethod": "METERED", "completedJobs": 0, "counters": { "errored": 0, "failed": 0, "passed": 0, "skipped": 0, "stopped": 0, "total": 0, "warned": 0 }, "created": "1472667509.852", "deviceMinutes": { "metered": 0.0, "total": 0.0, "unmetered": 0.0 }, "platform": "ANDROID", "result": "PENDING", "status": "RUNNING", "totalJobs": 3 } }, "comments": { "input": { "arn": "You can get the run ARN by using the list-runs CLI command." }, "output": { } }, "description": "The following example gets information about a specific test run.", "id": "to-get-a-test-run-1471015895657", "title": "To get information about a test run" } ], "GetSuite": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:suite:EXAMPLE-GUID-123-456" }, "output": { "suite": { } }, "comments": { "input": { "arn": "You can get the suite ARN by using the list-suites CLI command." }, "output": { } }, "description": "The following example gets information about a specific test suite.", "id": "to-get-information-about-a-test-suite-1471016525008", "title": "To get information about a test suite" } ], "GetTest": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:test:EXAMPLE-GUID-123-456" }, "output": { "test": { } }, "comments": { "input": { "arn": "You can get the test ARN by using the list-tests CLI command." }, "output": { } }, "description": "The following example gets information about a specific test.", "id": "to-get-information-about-a-specific-test-1471025744238", "title": "To get information about a specific test" } ], "GetUpload": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:upload:EXAMPLE-GUID-123-456" }, "output": { "upload": { } }, "comments": { "input": { "arn": "You can get the test ARN by using the list-uploads CLI command." }, "output": { } }, "description": "The following example gets information about a specific upload.", "id": "to-get-information-about-a-specific-upload-1471025996221", "title": "To get information about a specific upload" } ], "InstallToRemoteAccessSession": [ { "input": { "appArn": "arn:aws:devicefarm:us-west-2:123456789101:app:EXAMPLE-GUID-123-456", "remoteAccessSessionArn": "arn:aws:devicefarm:us-west-2:123456789101:session:EXAMPLE-GUID-123-456" }, "output": { "appUpload": { } }, "comments": { "input": { "remoteAccessSessionArn": "You can get the remote access session ARN by using the list-remote-access-sessions CLI command." }, "output": { } }, "description": "The following example installs a specific app to a device in a specific remote access session.", "id": "to-install-to-a-remote-access-session-1471634453818", "title": "To install to a remote access session" } ], "ListArtifacts": [ { "input": { "type": "SCREENSHOT", "arn": "arn:aws:devicefarm:us-west-2:123456789101:run:EXAMPLE-GUID-123-456" }, "comments": { "input": { "arn": "Can also be used to list artifacts for a Job, Suite, or Test ARN." }, "output": { } }, "description": "The following example lists screenshot artifacts for a specific run.", "id": "to-list-artifacts-for-a-resource-1471635409527", "title": "To list artifacts for a resource" } ], "ListDevicePools": [ { "input": { "type": "PRIVATE", "arn": "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456" }, "output": { "devicePools": [ { "name": "Top Devices", "arn": "arn:aws:devicefarm:us-west-2::devicepool:082d10e5-d7d7-48a5-ba5c-12345EXAMPLE", "description": "Top devices", "rules": [ { "value": "[\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\"]", "attribute": "ARN", "operator": "IN" } ] }, { "name": "My Android Device Pool", "arn": "arn:aws:devicefarm:us-west-2:123456789101:devicepool:5e01a8c7-c861-4c0a-b1d5-5ec6e6c6dd23/bf96e75a-28f6-4e61-b6a7-12345EXAMPLE", "description": "Samsung Galaxy Android devices", "rules": [ { "value": "[\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\"]", "attribute": "ARN", "operator": "IN" } ] } ] }, "comments": { "input": { "arn": "You can get the project ARN by using the list-projects CLI command." }, "output": { } }, "description": "The following example returns information about the private device pools in a specific project.", "id": "to-get-information-about-device-pools-1471635745170", "title": "To get information about device pools" } ], "ListDevices": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456" }, "output": { }, "comments": { "input": { "arn": "You can get the project ARN by using the list-projects CLI command." }, "output": { } }, "description": "The following example returns information about the available devices in a specific project.", "id": "to-get-information-about-devices-1471641699344", "title": "To get information about devices" } ], "ListJobs": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456" }, "comments": { "input": { "arn": "You can get the project ARN by using the list-jobs CLI command." }, "output": { } }, "description": "The following example returns information about jobs in a specific project.", "id": "to-get-information-about-jobs-1471642228071", "title": "To get information about jobs" } ], "ListOfferingTransactions": [ { "input": { "nextToken": "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE=" }, "output": { "offeringTransactions": [ { "cost": { "amount": 0, "currencyCode": "USD" }, "createdOn": "1470021420", "offeringStatus": { "type": "RENEW", "effectiveOn": "1472688000", "offering": { "type": "RECURRING", "description": "Android Remote Access Unmetered Device Slot", "id": "D68B3C05-1BA6-4360-BC69-12345EXAMPLE", "platform": "ANDROID" }, "quantity": 0 }, "transactionId": "03728003-d1ea-4851-abd6-12345EXAMPLE" }, { "cost": { "amount": 250, "currencyCode": "USD" }, "createdOn": "1470021420", "offeringStatus": { "type": "PURCHASE", "effectiveOn": "1470021420", "offering": { "type": "RECURRING", "description": "Android Remote Access Unmetered Device Slot", "id": "D68B3C05-1BA6-4360-BC69-12345EXAMPLE", "platform": "ANDROID" }, "quantity": 1 }, "transactionId": "56820b6e-06bd-473a-8ff8-12345EXAMPLE" }, { "cost": { "amount": 175, "currencyCode": "USD" }, "createdOn": "1465538520", "offeringStatus": { "type": "PURCHASE", "effectiveOn": "1465538520", "offering": { "type": "RECURRING", "description": "Android Unmetered Device Slot", "id": "8980F81C-00D7-469D-8EC6-12345EXAMPLE", "platform": "ANDROID" }, "quantity": 1 }, "transactionId": "953ae2c6-d760-4a04-9597-12345EXAMPLE" }, { "cost": { "amount": 8.07, "currencyCode": "USD" }, "createdOn": "1459344300", "offeringStatus": { "type": "PURCHASE", "effectiveOn": "1459344300", "offering": { "type": "RECURRING", "description": "iOS Unmetered Device Slot", "id": "A53D4D73-A6F6-4B82-A0B0-12345EXAMPLE", "platform": "IOS" }, "quantity": 1 }, "transactionId": "2baf9021-ae3e-47f5-ab52-12345EXAMPLE" } ] }, "comments": { "input": { "nextToken": "A dynamically generated value, used for paginating results." }, "output": { } }, "description": "The following example returns information about Device Farm offering transactions.", "id": "to-get-information-about-device-offering-transactions-1472561712315", "title": "To get information about device offering transactions" } ], "ListOfferings": [ { "input": { "nextToken": "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE=" }, "output": { "offerings": [ { "type": "RECURRING", "description": "iOS Unmetered Device Slot", "id": "A53D4D73-A6F6-4B82-A0B0-12345EXAMPLE", "platform": "IOS", "recurringCharges": [ { "cost": { "amount": 250, "currencyCode": "USD" }, "frequency": "MONTHLY" } ] }, { "type": "RECURRING", "description": "Android Unmetered Device Slot", "id": "8980F81C-00D7-469D-8EC6-12345EXAMPLE", "platform": "ANDROID", "recurringCharges": [ { "cost": { "amount": 250, "currencyCode": "USD" }, "frequency": "MONTHLY" } ] }, { "type": "RECURRING", "description": "Android Remote Access Unmetered Device Slot", "id": "D68B3C05-1BA6-4360-BC69-12345EXAMPLE", "platform": "ANDROID", "recurringCharges": [ { "cost": { "amount": 250, "currencyCode": "USD" }, "frequency": "MONTHLY" } ] }, { "type": "RECURRING", "description": "iOS Remote Access Unmetered Device Slot", "id": "552B4DAD-A6C9-45C4-94FB-12345EXAMPLE", "platform": "IOS", "recurringCharges": [ { "cost": { "amount": 250, "currencyCode": "USD" }, "frequency": "MONTHLY" } ] } ] }, "comments": { "input": { "nextToken": "A dynamically generated value, used for paginating results." }, "output": { } }, "description": "The following example returns information about available device offerings.", "id": "to-get-information-about-device-offerings-1472562810999", "title": "To get information about device offerings" } ], "ListProjects": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:project:7ad300ed-8183-41a7-bf94-12345EXAMPLE", "nextToken": "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE" }, "output": { "projects": [ { "name": "My Test Project", "arn": "arn:aws:devicefarm:us-west-2:183774035805:project:7ad300ed-8183-41a7-bf94-12345EXAMPLE", "created": "1453163262.105" }, { "name": "Hello World", "arn": "arn:aws:devicefarm:us-west-2:183774035805:project:d6b087d9-56db-4e44-b9ec-12345EXAMPLE", "created": "1470350112.439" } ] }, "comments": { "input": { "nextToken": "A dynamically generated value, used for paginating results." }, "output": { } }, "description": "The following example returns information about the specified project in Device Farm.", "id": "to-get-information-about-a-device-farm-project-1472564014388", "title": "To get information about a Device Farm project" } ], "ListRemoteAccessSessions": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:session:EXAMPLE-GUID-123-456", "nextToken": "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE=" }, "output": { "remoteAccessSessions": [ ] }, "comments": { "input": { "arn": "You can get the Amazon Resource Name (ARN) of the session by using the list-sessions CLI command.", "nextToken": "A dynamically generated value, used for paginating results." }, "output": { } }, "description": "The following example returns information about a specific Device Farm remote access session.", "id": "to-get-information-about-a-remote-access-session-1472581144803", "title": "To get information about a remote access session" } ], "ListRuns": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:run:5e01a8c7-c861-4c0a-b1d5-5ec6e6c6dd23/0fcac17b-6122-44d7-ae5a-12345EXAMPLE", "nextToken": "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE" }, "output": { "runs": [ { "name": "My Test Run", "type": "BUILTIN_EXPLORER", "arn": "arn:aws:devicefarm:us-west-2:123456789101:run:5e01a8c7-c861-4c0a-b1d5-5ec6e6c6dd23/0fcac17b-6122-44d7-ae5a-12345EXAMPLE", "billingMethod": "METERED", "completedJobs": 0, "counters": { "errored": 0, "failed": 0, "passed": 0, "skipped": 0, "stopped": 0, "total": 0, "warned": 0 }, "created": "1472667509.852", "deviceMinutes": { "metered": 0.0, "total": 0.0, "unmetered": 0.0 }, "platform": "ANDROID", "result": "PENDING", "status": "RUNNING", "totalJobs": 3 } ] }, "comments": { "input": { "arn": "You can get the Amazon Resource Name (ARN) of the run by using the list-runs CLI command.", "nextToken": "A dynamically generated value, used for paginating results." }, "output": { } }, "description": "The following example returns information about a specific test run.", "id": "to-get-information-about-test-runs-1472582711069", "title": "To get information about a test run" } ], "ListSamples": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456", "nextToken": "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE" }, "output": { "samples": [ ] }, "comments": { "input": { "arn": "You can get the Amazon Resource Name (ARN) of the project by using the list-projects CLI command.", "nextToken": "A dynamically generated value, used for paginating results." }, "output": { } }, "description": "The following example returns information about samples, given a specific Device Farm project.", "id": "to-get-information-about-samples-1472582847534", "title": "To get information about samples" } ], "ListSuites": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456", "nextToken": "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE" }, "output": { "suites": [ ] }, "comments": { "input": { "arn": "You can get the Amazon Resource Name (ARN) of the project by using the list-projects CLI command.", "nextToken": "A dynamically generated value, used for paginating results." }, "output": { } }, "description": "The following example returns information about suites, given a specific Device Farm project.", "id": "to-get-information-about-suites-1472583038218", "title": "To get information about suites" } ], "ListTests": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456", "nextToken": "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE" }, "output": { "tests": [ ] }, "comments": { "input": { "arn": "You can get the Amazon Resource Name (ARN) of the project by using the list-projects CLI command.", "nextToken": "A dynamically generated value, used for paginating results." }, "output": { } }, "description": "The following example returns information about tests, given a specific Device Farm project.", "id": "to-get-information-about-tests-1472617372212", "title": "To get information about tests" } ], "ListUniqueProblems": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456", "nextToken": "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE" }, "output": { "uniqueProblems": { } }, "comments": { "input": { "arn": "You can get the Amazon Resource Name (ARN) of the project by using the list-projects CLI command.", "nextToken": "A dynamically generated value, used for paginating results." }, "output": { } }, "description": "The following example returns information about unique problems, given a specific Device Farm project.", "id": "to-get-information-about-unique-problems-1472617781008", "title": "To get information about unique problems" } ], "ListUploads": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456", "nextToken": "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE" }, "output": { "uploads": [ ] }, "comments": { "input": { "arn": "You can get the Amazon Resource Name (ARN) of the project by using the list-projects CLI command.", "nextToken": "A dynamically generated value, used for paginating results." }, "output": { } }, "description": "The following example returns information about uploads, given a specific Device Farm project.", "id": "to-get-information-about-uploads-1472617943090", "title": "To get information about uploads" } ], "PurchaseOffering": [ { "input": { "offeringId": "D68B3C05-1BA6-4360-BC69-12345EXAMPLE", "quantity": 1 }, "output": { "offeringTransaction": { "cost": { "amount": 8.07, "currencyCode": "USD" }, "createdOn": "1472648340", "offeringStatus": { "type": "PURCHASE", "effectiveOn": "1472648340", "offering": { "type": "RECURRING", "description": "Android Remote Access Unmetered Device Slot", "id": "D68B3C05-1BA6-4360-BC69-12345EXAMPLE", "platform": "ANDROID" }, "quantity": 1 }, "transactionId": "d30614ed-1b03-404c-9893-12345EXAMPLE" } }, "comments": { "input": { "offeringId": "You can get the offering ID by using the list-offerings CLI command." }, "output": { } }, "description": "The following example purchases a specific device slot offering.", "id": "to-purchase-a-device-slot-offering-1472648146343", "title": "To purchase a device slot offering" } ], "RenewOffering": [ { "input": { "offeringId": "D68B3C05-1BA6-4360-BC69-12345EXAMPLE", "quantity": 1 }, "output": { "offeringTransaction": { "cost": { "amount": 250, "currencyCode": "USD" }, "createdOn": "1472648880", "offeringStatus": { "type": "RENEW", "effectiveOn": "1472688000", "offering": { "type": "RECURRING", "description": "Android Remote Access Unmetered Device Slot", "id": "D68B3C05-1BA6-4360-BC69-12345EXAMPLE", "platform": "ANDROID" }, "quantity": 1 }, "transactionId": "e90f1405-8c35-4561-be43-12345EXAMPLE" } }, "comments": { "input": { "offeringId": "You can get the offering ID by using the list-offerings CLI command." }, "output": { } }, "description": "The following example renews a specific device slot offering.", "id": "to-renew-a-device-slot-offering-1472648899785", "title": "To renew a device slot offering" } ], "ScheduleRun": [ { "input": { "name": "MyRun", "devicePoolArn": "arn:aws:devicefarm:us-west-2:123456789101:pool:EXAMPLE-GUID-123-456", "projectArn": "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456", "test": { "type": "APPIUM_JAVA_JUNIT", "testPackageArn": "arn:aws:devicefarm:us-west-2:123456789101:test:EXAMPLE-GUID-123-456" } }, "output": { "run": { } }, "comments": { "input": { "devicePoolArn": "You can get the Amazon Resource Name (ARN) of the device pool by using the list-pools CLI command.", "projectArn": "You can get the Amazon Resource Name (ARN) of the project by using the list-projects CLI command.", "testPackageArn": "You can get the Amazon Resource Name (ARN) of the test package by using the list-tests CLI command." }, "output": { } }, "description": "The following example schedules a test run named MyRun.", "id": "to-schedule-a-test-run-1472652429636", "title": "To schedule a test run" } ], "StopRun": [ { "input": { "arn": "arn:aws:devicefarm:us-west-2:123456789101:run:EXAMPLE-GUID-123-456" }, "output": { "run": { } }, "comments": { "input": { "arn": "You can get the Amazon Resource Name (ARN) of the test run by using the list-runs CLI command." }, "output": { } }, "description": "The following example stops a specific test run.", "id": "to-stop-a-test-run-1472653770340", "title": "To stop a test run" } ], "UpdateDevicePool": [ { "input": { "name": "NewName", "arn": "arn:aws:devicefarm:us-west-2::devicepool:082d10e5-d7d7-48a5-ba5c-12345EXAMPLE", "description": "NewDescription", "rules": [ { "value": "True", "attribute": "REMOTE_ACCESS_ENABLED", "operator": "EQUALS" } ] }, "output": { "devicePool": { } }, "comments": { "input": { "arn": "You can get the Amazon Resource Name (ARN) of the device pool by using the list-pools CLI command." }, "output": { "devicePool": "Note: you cannot update curated device pools." } }, "description": "The following example updates the specified device pool with a new name and description. It also enables remote access of devices in the device pool.", "id": "to-update-a-device-pool-1472653887677", "title": "To update a device pool" } ], "UpdateProject": [ { "input": { "name": "NewName", "arn": "arn:aws:devicefarm:us-west-2:183774035805:project:8f75187d-101e-4625-accc-12345EXAMPLE" }, "output": { "project": { "name": "NewName", "arn": "arn:aws:devicefarm:us-west-2:183774035805:project:8f75187d-101e-4625-accc-12345EXAMPLE", "created": "1448400709.927" } }, "comments": { "input": { "arn": "You can get the Amazon Resource Name (ARN) of the project by using the list-projects CLI command." }, "output": { } }, "description": "The following example updates the specified project with a new name.", "id": "to-update-a-device-pool-1472653887677", "title": "To update a device pool" } ] } } aws-sdk-go-1.4.22/models/apis/devicefarm/2015-06-23/paginators-1.json000066400000000000000000000035101300374646400243420ustar00rootroot00000000000000{ "pagination": { "GetOfferingStatus": { "input_token": "nextToken", "output_token": "nextToken", "result_key": ["current","nextPeriod"] }, "ListArtifacts": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "artifacts" }, "ListDevicePools": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "devicePools" }, "ListDevices": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "devices" }, "ListJobs": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "jobs" }, "ListOfferingTransactions": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "offeringTransactions" }, "ListOfferings": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "offerings" }, "ListProjects": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "projects" }, "ListRuns": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "runs" }, "ListSamples": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "samples" }, "ListSuites": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "suites" }, "ListTests": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "tests" }, "ListUniqueProblems": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "uniqueProblems" }, "ListUploads": { "input_token": "nextToken", "output_token": "nextToken", "result_key": "uploads" } } } aws-sdk-go-1.4.22/models/apis/directconnect/000077500000000000000000000000001300374646400206265ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/directconnect/2012-10-25/000077500000000000000000000000001300374646400216545ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/directconnect/2012-10-25/api-2.json000066400000000000000000000537531300374646400234740ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2012-10-25", "endpointPrefix":"directconnect", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"AWS Direct Connect", "signatureVersion":"v4", "targetPrefix":"OvertureService" }, "operations":{ "AllocateConnectionOnInterconnect":{ "name":"AllocateConnectionOnInterconnect", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AllocateConnectionOnInterconnectRequest"}, "output":{"shape":"Connection"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "AllocatePrivateVirtualInterface":{ "name":"AllocatePrivateVirtualInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AllocatePrivateVirtualInterfaceRequest"}, "output":{"shape":"VirtualInterface"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "AllocatePublicVirtualInterface":{ "name":"AllocatePublicVirtualInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AllocatePublicVirtualInterfaceRequest"}, "output":{"shape":"VirtualInterface"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "ConfirmConnection":{ "name":"ConfirmConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ConfirmConnectionRequest"}, "output":{"shape":"ConfirmConnectionResponse"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "ConfirmPrivateVirtualInterface":{ "name":"ConfirmPrivateVirtualInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ConfirmPrivateVirtualInterfaceRequest"}, "output":{"shape":"ConfirmPrivateVirtualInterfaceResponse"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "ConfirmPublicVirtualInterface":{ "name":"ConfirmPublicVirtualInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ConfirmPublicVirtualInterfaceRequest"}, "output":{"shape":"ConfirmPublicVirtualInterfaceResponse"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "CreateConnection":{ "name":"CreateConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateConnectionRequest"}, "output":{"shape":"Connection"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "CreateInterconnect":{ "name":"CreateInterconnect", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateInterconnectRequest"}, "output":{"shape":"Interconnect"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "CreatePrivateVirtualInterface":{ "name":"CreatePrivateVirtualInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreatePrivateVirtualInterfaceRequest"}, "output":{"shape":"VirtualInterface"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "CreatePublicVirtualInterface":{ "name":"CreatePublicVirtualInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreatePublicVirtualInterfaceRequest"}, "output":{"shape":"VirtualInterface"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "DeleteConnection":{ "name":"DeleteConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteConnectionRequest"}, "output":{"shape":"Connection"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "DeleteInterconnect":{ "name":"DeleteInterconnect", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteInterconnectRequest"}, "output":{"shape":"DeleteInterconnectResponse"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "DeleteVirtualInterface":{ "name":"DeleteVirtualInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVirtualInterfaceRequest"}, "output":{"shape":"DeleteVirtualInterfaceResponse"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "DescribeConnectionLoa":{ "name":"DescribeConnectionLoa", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeConnectionLoaRequest"}, "output":{"shape":"DescribeConnectionLoaResponse"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "DescribeConnections":{ "name":"DescribeConnections", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeConnectionsRequest"}, "output":{"shape":"Connections"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "DescribeConnectionsOnInterconnect":{ "name":"DescribeConnectionsOnInterconnect", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeConnectionsOnInterconnectRequest"}, "output":{"shape":"Connections"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "DescribeInterconnectLoa":{ "name":"DescribeInterconnectLoa", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInterconnectLoaRequest"}, "output":{"shape":"DescribeInterconnectLoaResponse"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "DescribeInterconnects":{ "name":"DescribeInterconnects", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInterconnectsRequest"}, "output":{"shape":"Interconnects"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "DescribeLocations":{ "name":"DescribeLocations", "http":{ "method":"POST", "requestUri":"/" }, "output":{"shape":"Locations"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "DescribeVirtualGateways":{ "name":"DescribeVirtualGateways", "http":{ "method":"POST", "requestUri":"/" }, "output":{"shape":"VirtualGateways"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] }, "DescribeVirtualInterfaces":{ "name":"DescribeVirtualInterfaces", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVirtualInterfacesRequest"}, "output":{"shape":"VirtualInterfaces"}, "errors":[ {"shape":"DirectConnectServerException"}, {"shape":"DirectConnectClientException"} ] } }, "shapes":{ "ASN":{"type":"integer"}, "AllocateConnectionOnInterconnectRequest":{ "type":"structure", "required":[ "bandwidth", "connectionName", "ownerAccount", "interconnectId", "vlan" ], "members":{ "bandwidth":{"shape":"Bandwidth"}, "connectionName":{"shape":"ConnectionName"}, "ownerAccount":{"shape":"OwnerAccount"}, "interconnectId":{"shape":"InterconnectId"}, "vlan":{"shape":"VLAN"} } }, "AllocatePrivateVirtualInterfaceRequest":{ "type":"structure", "required":[ "connectionId", "ownerAccount", "newPrivateVirtualInterfaceAllocation" ], "members":{ "connectionId":{"shape":"ConnectionId"}, "ownerAccount":{"shape":"OwnerAccount"}, "newPrivateVirtualInterfaceAllocation":{"shape":"NewPrivateVirtualInterfaceAllocation"} } }, "AllocatePublicVirtualInterfaceRequest":{ "type":"structure", "required":[ "connectionId", "ownerAccount", "newPublicVirtualInterfaceAllocation" ], "members":{ "connectionId":{"shape":"ConnectionId"}, "ownerAccount":{"shape":"OwnerAccount"}, "newPublicVirtualInterfaceAllocation":{"shape":"NewPublicVirtualInterfaceAllocation"} } }, "AmazonAddress":{"type":"string"}, "BGPAuthKey":{"type":"string"}, "Bandwidth":{"type":"string"}, "CIDR":{"type":"string"}, "ConfirmConnectionRequest":{ "type":"structure", "required":["connectionId"], "members":{ "connectionId":{"shape":"ConnectionId"} } }, "ConfirmConnectionResponse":{ "type":"structure", "members":{ "connectionState":{"shape":"ConnectionState"} } }, "ConfirmPrivateVirtualInterfaceRequest":{ "type":"structure", "required":[ "virtualInterfaceId", "virtualGatewayId" ], "members":{ "virtualInterfaceId":{"shape":"VirtualInterfaceId"}, "virtualGatewayId":{"shape":"VirtualGatewayId"} } }, "ConfirmPrivateVirtualInterfaceResponse":{ "type":"structure", "members":{ "virtualInterfaceState":{"shape":"VirtualInterfaceState"} } }, "ConfirmPublicVirtualInterfaceRequest":{ "type":"structure", "required":["virtualInterfaceId"], "members":{ "virtualInterfaceId":{"shape":"VirtualInterfaceId"} } }, "ConfirmPublicVirtualInterfaceResponse":{ "type":"structure", "members":{ "virtualInterfaceState":{"shape":"VirtualInterfaceState"} } }, "Connection":{ "type":"structure", "members":{ "ownerAccount":{"shape":"OwnerAccount"}, "connectionId":{"shape":"ConnectionId"}, "connectionName":{"shape":"ConnectionName"}, "connectionState":{"shape":"ConnectionState"}, "region":{"shape":"Region"}, "location":{"shape":"LocationCode"}, "bandwidth":{"shape":"Bandwidth"}, "vlan":{"shape":"VLAN"}, "partnerName":{"shape":"PartnerName"}, "loaIssueTime":{"shape":"LoaIssueTime"} } }, "ConnectionId":{"type":"string"}, "ConnectionList":{ "type":"list", "member":{"shape":"Connection"} }, "ConnectionName":{"type":"string"}, "ConnectionState":{ "type":"string", "enum":[ "ordering", "requested", "pending", "available", "down", "deleting", "deleted", "rejected" ] }, "Connections":{ "type":"structure", "members":{ "connections":{"shape":"ConnectionList"} } }, "CreateConnectionRequest":{ "type":"structure", "required":[ "location", "bandwidth", "connectionName" ], "members":{ "location":{"shape":"LocationCode"}, "bandwidth":{"shape":"Bandwidth"}, "connectionName":{"shape":"ConnectionName"} } }, "CreateInterconnectRequest":{ "type":"structure", "required":[ "interconnectName", "bandwidth", "location" ], "members":{ "interconnectName":{"shape":"InterconnectName"}, "bandwidth":{"shape":"Bandwidth"}, "location":{"shape":"LocationCode"} } }, "CreatePrivateVirtualInterfaceRequest":{ "type":"structure", "required":[ "connectionId", "newPrivateVirtualInterface" ], "members":{ "connectionId":{"shape":"ConnectionId"}, "newPrivateVirtualInterface":{"shape":"NewPrivateVirtualInterface"} } }, "CreatePublicVirtualInterfaceRequest":{ "type":"structure", "required":[ "connectionId", "newPublicVirtualInterface" ], "members":{ "connectionId":{"shape":"ConnectionId"}, "newPublicVirtualInterface":{"shape":"NewPublicVirtualInterface"} } }, "CustomerAddress":{"type":"string"}, "DeleteConnectionRequest":{ "type":"structure", "required":["connectionId"], "members":{ "connectionId":{"shape":"ConnectionId"} } }, "DeleteInterconnectRequest":{ "type":"structure", "required":["interconnectId"], "members":{ "interconnectId":{"shape":"InterconnectId"} } }, "DeleteInterconnectResponse":{ "type":"structure", "members":{ "interconnectState":{"shape":"InterconnectState"} } }, "DeleteVirtualInterfaceRequest":{ "type":"structure", "required":["virtualInterfaceId"], "members":{ "virtualInterfaceId":{"shape":"VirtualInterfaceId"} } }, "DeleteVirtualInterfaceResponse":{ "type":"structure", "members":{ "virtualInterfaceState":{"shape":"VirtualInterfaceState"} } }, "DescribeConnectionLoaRequest":{ "type":"structure", "required":["connectionId"], "members":{ "connectionId":{"shape":"ConnectionId"}, "providerName":{"shape":"ProviderName"}, "loaContentType":{"shape":"LoaContentType"} } }, "DescribeConnectionLoaResponse":{ "type":"structure", "members":{ "loa":{"shape":"Loa"} } }, "DescribeConnectionsOnInterconnectRequest":{ "type":"structure", "required":["interconnectId"], "members":{ "interconnectId":{"shape":"InterconnectId"} } }, "DescribeConnectionsRequest":{ "type":"structure", "members":{ "connectionId":{"shape":"ConnectionId"} } }, "DescribeInterconnectLoaRequest":{ "type":"structure", "required":["interconnectId"], "members":{ "interconnectId":{"shape":"InterconnectId"}, "providerName":{"shape":"ProviderName"}, "loaContentType":{"shape":"LoaContentType"} } }, "DescribeInterconnectLoaResponse":{ "type":"structure", "members":{ "loa":{"shape":"Loa"} } }, "DescribeInterconnectsRequest":{ "type":"structure", "members":{ "interconnectId":{"shape":"InterconnectId"} } }, "DescribeVirtualInterfacesRequest":{ "type":"structure", "members":{ "connectionId":{"shape":"ConnectionId"}, "virtualInterfaceId":{"shape":"VirtualInterfaceId"} } }, "DirectConnectClientException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "DirectConnectServerException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ErrorMessage":{"type":"string"}, "Interconnect":{ "type":"structure", "members":{ "interconnectId":{"shape":"InterconnectId"}, "interconnectName":{"shape":"InterconnectName"}, "interconnectState":{"shape":"InterconnectState"}, "region":{"shape":"Region"}, "location":{"shape":"LocationCode"}, "bandwidth":{"shape":"Bandwidth"}, "loaIssueTime":{"shape":"LoaIssueTime"} } }, "InterconnectId":{"type":"string"}, "InterconnectList":{ "type":"list", "member":{"shape":"Interconnect"} }, "InterconnectName":{"type":"string"}, "InterconnectState":{ "type":"string", "enum":[ "requested", "pending", "available", "down", "deleting", "deleted" ] }, "Interconnects":{ "type":"structure", "members":{ "interconnects":{"shape":"InterconnectList"} } }, "Loa":{ "type":"structure", "members":{ "loaContent":{"shape":"LoaContent"}, "loaContentType":{"shape":"LoaContentType"} } }, "LoaContent":{"type":"blob"}, "LoaContentType":{ "type":"string", "enum":["application/pdf"] }, "LoaIssueTime":{"type":"timestamp"}, "Location":{ "type":"structure", "members":{ "locationCode":{"shape":"LocationCode"}, "locationName":{"shape":"LocationName"} } }, "LocationCode":{"type":"string"}, "LocationList":{ "type":"list", "member":{"shape":"Location"} }, "LocationName":{"type":"string"}, "Locations":{ "type":"structure", "members":{ "locations":{"shape":"LocationList"} } }, "NewPrivateVirtualInterface":{ "type":"structure", "required":[ "virtualInterfaceName", "vlan", "asn", "virtualGatewayId" ], "members":{ "virtualInterfaceName":{"shape":"VirtualInterfaceName"}, "vlan":{"shape":"VLAN"}, "asn":{"shape":"ASN"}, "authKey":{"shape":"BGPAuthKey"}, "amazonAddress":{"shape":"AmazonAddress"}, "customerAddress":{"shape":"CustomerAddress"}, "virtualGatewayId":{"shape":"VirtualGatewayId"} } }, "NewPrivateVirtualInterfaceAllocation":{ "type":"structure", "required":[ "virtualInterfaceName", "vlan", "asn" ], "members":{ "virtualInterfaceName":{"shape":"VirtualInterfaceName"}, "vlan":{"shape":"VLAN"}, "asn":{"shape":"ASN"}, "authKey":{"shape":"BGPAuthKey"}, "amazonAddress":{"shape":"AmazonAddress"}, "customerAddress":{"shape":"CustomerAddress"} } }, "NewPublicVirtualInterface":{ "type":"structure", "required":[ "virtualInterfaceName", "vlan", "asn", "amazonAddress", "customerAddress", "routeFilterPrefixes" ], "members":{ "virtualInterfaceName":{"shape":"VirtualInterfaceName"}, "vlan":{"shape":"VLAN"}, "asn":{"shape":"ASN"}, "authKey":{"shape":"BGPAuthKey"}, "amazonAddress":{"shape":"AmazonAddress"}, "customerAddress":{"shape":"CustomerAddress"}, "routeFilterPrefixes":{"shape":"RouteFilterPrefixList"} } }, "NewPublicVirtualInterfaceAllocation":{ "type":"structure", "required":[ "virtualInterfaceName", "vlan", "asn", "amazonAddress", "customerAddress", "routeFilterPrefixes" ], "members":{ "virtualInterfaceName":{"shape":"VirtualInterfaceName"}, "vlan":{"shape":"VLAN"}, "asn":{"shape":"ASN"}, "authKey":{"shape":"BGPAuthKey"}, "amazonAddress":{"shape":"AmazonAddress"}, "customerAddress":{"shape":"CustomerAddress"}, "routeFilterPrefixes":{"shape":"RouteFilterPrefixList"} } }, "OwnerAccount":{"type":"string"}, "PartnerName":{"type":"string"}, "ProviderName":{"type":"string"}, "Region":{"type":"string"}, "RouteFilterPrefix":{ "type":"structure", "members":{ "cidr":{"shape":"CIDR"} } }, "RouteFilterPrefixList":{ "type":"list", "member":{"shape":"RouteFilterPrefix"} }, "RouterConfig":{"type":"string"}, "VLAN":{"type":"integer"}, "VirtualGateway":{ "type":"structure", "members":{ "virtualGatewayId":{"shape":"VirtualGatewayId"}, "virtualGatewayState":{"shape":"VirtualGatewayState"} } }, "VirtualGatewayId":{"type":"string"}, "VirtualGatewayList":{ "type":"list", "member":{"shape":"VirtualGateway"} }, "VirtualGatewayState":{"type":"string"}, "VirtualGateways":{ "type":"structure", "members":{ "virtualGateways":{"shape":"VirtualGatewayList"} } }, "VirtualInterface":{ "type":"structure", "members":{ "ownerAccount":{"shape":"OwnerAccount"}, "virtualInterfaceId":{"shape":"VirtualInterfaceId"}, "location":{"shape":"LocationCode"}, "connectionId":{"shape":"ConnectionId"}, "virtualInterfaceType":{"shape":"VirtualInterfaceType"}, "virtualInterfaceName":{"shape":"VirtualInterfaceName"}, "vlan":{"shape":"VLAN"}, "asn":{"shape":"ASN"}, "authKey":{"shape":"BGPAuthKey"}, "amazonAddress":{"shape":"AmazonAddress"}, "customerAddress":{"shape":"CustomerAddress"}, "virtualInterfaceState":{"shape":"VirtualInterfaceState"}, "customerRouterConfig":{"shape":"RouterConfig"}, "virtualGatewayId":{"shape":"VirtualGatewayId"}, "routeFilterPrefixes":{"shape":"RouteFilterPrefixList"} } }, "VirtualInterfaceId":{"type":"string"}, "VirtualInterfaceList":{ "type":"list", "member":{"shape":"VirtualInterface"} }, "VirtualInterfaceName":{"type":"string"}, "VirtualInterfaceState":{ "type":"string", "enum":[ "confirming", "verifying", "pending", "available", "down", "deleting", "deleted", "rejected" ] }, "VirtualInterfaceType":{"type":"string"}, "VirtualInterfaces":{ "type":"structure", "members":{ "virtualInterfaces":{"shape":"VirtualInterfaceList"} } } } } aws-sdk-go-1.4.22/models/apis/directconnect/2012-10-25/docs-2.json000066400000000000000000001075171300374646400236510ustar00rootroot00000000000000{ "version": "2.0", "service": "

        AWS Direct Connect links your internal network to an AWS Direct Connect location over a standard 1 gigabit or 10 gigabit Ethernet fiber-optic cable. One end of the cable is connected to your router, the other to an AWS Direct Connect router. With this connection in place, you can create virtual interfaces directly to the AWS cloud (for example, to Amazon Elastic Compute Cloud (Amazon EC2) and Amazon Simple Storage Service (Amazon S3)) and to Amazon Virtual Private Cloud (Amazon VPC), bypassing Internet service providers in your network path. An AWS Direct Connect location provides access to AWS in the region it is associated with, as well as access to other US regions. For example, you can provision a single connection to any AWS Direct Connect location in the US and use it to access public AWS services in all US Regions and AWS GovCloud (US).

        ", "operations": { "AllocateConnectionOnInterconnect": "

        Creates a hosted connection on an interconnect.

        Allocates a VLAN number and a specified amount of bandwidth for use by a hosted connection on the given interconnect.

        This is intended for use by AWS Direct Connect partners only.

        ", "AllocatePrivateVirtualInterface": "

        Provisions a private virtual interface to be owned by a different customer.

        The owner of a connection calls this function to provision a private virtual interface which will be owned by another AWS customer.

        Virtual interfaces created using this function must be confirmed by the virtual interface owner by calling ConfirmPrivateVirtualInterface. Until this step has been completed, the virtual interface will be in 'Confirming' state, and will not be available for handling traffic.

        ", "AllocatePublicVirtualInterface": "

        Provisions a public virtual interface to be owned by a different customer.

        The owner of a connection calls this function to provision a public virtual interface which will be owned by another AWS customer.

        Virtual interfaces created using this function must be confirmed by the virtual interface owner by calling ConfirmPublicVirtualInterface. Until this step has been completed, the virtual interface will be in 'Confirming' state, and will not be available for handling traffic.

        ", "ConfirmConnection": "

        Confirm the creation of a hosted connection on an interconnect.

        Upon creation, the hosted connection is initially in the 'Ordering' state, and will remain in this state until the owner calls ConfirmConnection to confirm creation of the hosted connection.

        ", "ConfirmPrivateVirtualInterface": "

        Accept ownership of a private virtual interface created by another customer.

        After the virtual interface owner calls this function, the virtual interface will be created and attached to the given virtual private gateway, and will be available for handling traffic.

        ", "ConfirmPublicVirtualInterface": "

        Accept ownership of a public virtual interface created by another customer.

        After the virtual interface owner calls this function, the specified virtual interface will be created and made available for handling traffic.

        ", "CreateConnection": "

        Creates a new connection between the customer network and a specific AWS Direct Connect location.

        A connection links your internal network to an AWS Direct Connect location over a standard 1 gigabit or 10 gigabit Ethernet fiber-optic cable. One end of the cable is connected to your router, the other to an AWS Direct Connect router. An AWS Direct Connect location provides access to Amazon Web Services in the region it is associated with. You can establish connections with AWS Direct Connect locations in multiple regions, but a connection in one region does not provide connectivity to other regions.

        ", "CreateInterconnect": "

        Creates a new interconnect between a AWS Direct Connect partner's network and a specific AWS Direct Connect location.

        An interconnect is a connection which is capable of hosting other connections. The AWS Direct Connect partner can use an interconnect to provide sub-1Gbps AWS Direct Connect service to tier 2 customers who do not have their own connections. Like a standard connection, an interconnect links the AWS Direct Connect partner's network to an AWS Direct Connect location over a standard 1 Gbps or 10 Gbps Ethernet fiber-optic cable. One end is connected to the partner's router, the other to an AWS Direct Connect router.

        For each end customer, the AWS Direct Connect partner provisions a connection on their interconnect by calling AllocateConnectionOnInterconnect. The end customer can then connect to AWS resources by creating a virtual interface on their connection, using the VLAN assigned to them by the AWS Direct Connect partner.

        This is intended for use by AWS Direct Connect partners only.

        ", "CreatePrivateVirtualInterface": "

        Creates a new private virtual interface. A virtual interface is the VLAN that transports AWS Direct Connect traffic. A private virtual interface supports sending traffic to a single virtual private cloud (VPC).

        ", "CreatePublicVirtualInterface": "

        Creates a new public virtual interface. A virtual interface is the VLAN that transports AWS Direct Connect traffic. A public virtual interface supports sending traffic to public services of AWS such as Amazon Simple Storage Service (Amazon S3).

        ", "DeleteConnection": "

        Deletes the connection.

        Deleting a connection only stops the AWS Direct Connect port hour and data transfer charges. You need to cancel separately with the providers any services or charges for cross-connects or network circuits that connect you to the AWS Direct Connect location.

        ", "DeleteInterconnect": "

        Deletes the specified interconnect.

        This is intended for use by AWS Direct Connect partners only.

        ", "DeleteVirtualInterface": "

        Deletes a virtual interface.

        ", "DescribeConnectionLoa": "

        Returns the LOA-CFA for a Connection.

        The Letter of Authorization - Connecting Facility Assignment (LOA-CFA) is a document that your APN partner or service provider uses when establishing your cross connect to AWS at the colocation facility. For more information, see Requesting Cross Connects at AWS Direct Connect Locations in the AWS Direct Connect user guide.

        ", "DescribeConnections": "

        Displays all connections in this region.

        If a connection ID is provided, the call returns only that particular connection.

        ", "DescribeConnectionsOnInterconnect": "

        Return a list of connections that have been provisioned on the given interconnect.

        This is intended for use by AWS Direct Connect partners only.

        ", "DescribeInterconnectLoa": "

        Returns the LOA-CFA for an Interconnect.

        The Letter of Authorization - Connecting Facility Assignment (LOA-CFA) is a document that is used when establishing your cross connect to AWS at the colocation facility. For more information, see Requesting Cross Connects at AWS Direct Connect Locations in the AWS Direct Connect user guide.

        ", "DescribeInterconnects": "

        Returns a list of interconnects owned by the AWS account.

        If an interconnect ID is provided, it will only return this particular interconnect.

        ", "DescribeLocations": "

        Returns the list of AWS Direct Connect locations in the current AWS region. These are the locations that may be selected when calling CreateConnection or CreateInterconnect.

        ", "DescribeVirtualGateways": "

        Returns a list of virtual private gateways owned by the AWS account.

        You can create one or more AWS Direct Connect private virtual interfaces linking to a virtual private gateway. A virtual private gateway can be managed via Amazon Virtual Private Cloud (VPC) console or the EC2 CreateVpnGateway action.

        ", "DescribeVirtualInterfaces": "

        Displays all virtual interfaces for an AWS account. Virtual interfaces deleted fewer than 15 minutes before DescribeVirtualInterfaces is called are also returned. If a connection ID is included then only virtual interfaces associated with this connection will be returned. If a virtual interface ID is included then only a single virtual interface will be returned.

        A virtual interface (VLAN) transmits the traffic between the AWS Direct Connect location and the customer.

        If a connection ID is provided, only virtual interfaces provisioned on the specified connection will be returned. If a virtual interface ID is provided, only this particular virtual interface will be returned.

        " }, "shapes": { "ASN": { "base": "

        Autonomous system (AS) number for Border Gateway Protocol (BGP) configuration.

        Example: 65000

        ", "refs": { "NewPrivateVirtualInterface$asn": null, "NewPrivateVirtualInterfaceAllocation$asn": null, "NewPublicVirtualInterface$asn": null, "NewPublicVirtualInterfaceAllocation$asn": null, "VirtualInterface$asn": null } }, "AllocateConnectionOnInterconnectRequest": { "base": "

        Container for the parameters to the AllocateConnectionOnInterconnect operation.

        ", "refs": { } }, "AllocatePrivateVirtualInterfaceRequest": { "base": "

        Container for the parameters to the AllocatePrivateVirtualInterface operation.

        ", "refs": { } }, "AllocatePublicVirtualInterfaceRequest": { "base": "

        Container for the parameters to the AllocatePublicVirtualInterface operation.

        ", "refs": { } }, "AmazonAddress": { "base": "

        IP address assigned to the Amazon interface.

        Example: 192.168.1.1/30

        ", "refs": { "NewPrivateVirtualInterface$amazonAddress": null, "NewPrivateVirtualInterfaceAllocation$amazonAddress": null, "NewPublicVirtualInterface$amazonAddress": null, "NewPublicVirtualInterfaceAllocation$amazonAddress": null, "VirtualInterface$amazonAddress": null } }, "BGPAuthKey": { "base": "

        Authentication key for BGP configuration.

        Example: asdf34example

        ", "refs": { "NewPrivateVirtualInterface$authKey": null, "NewPrivateVirtualInterfaceAllocation$authKey": null, "NewPublicVirtualInterface$authKey": null, "NewPublicVirtualInterfaceAllocation$authKey": null, "VirtualInterface$authKey": null } }, "Bandwidth": { "base": "

        Bandwidth of the connection.

        Example: 1Gbps

        Default: None

        ", "refs": { "AllocateConnectionOnInterconnectRequest$bandwidth": "

        Bandwidth of the connection.

        Example: \"500Mbps\"

        Default: None

        Values: 50M, 100M, 200M, 300M, 400M, or 500M

        ", "Connection$bandwidth": "

        Bandwidth of the connection.

        Example: 1Gbps (for regular connections), or 500Mbps (for hosted connections)

        Default: None

        ", "CreateConnectionRequest$bandwidth": null, "CreateInterconnectRequest$bandwidth": "

        The port bandwidth

        Example: 1Gbps

        Default: None

        Available values: 1Gbps,10Gbps

        ", "Interconnect$bandwidth": null } }, "CIDR": { "base": null, "refs": { "RouteFilterPrefix$cidr": "

        CIDR notation for the advertised route. Multiple routes are separated by commas.

        Example: 10.10.10.0/24,10.10.11.0/24

        " } }, "ConfirmConnectionRequest": { "base": "

        Container for the parameters to the ConfirmConnection operation.

        ", "refs": { } }, "ConfirmConnectionResponse": { "base": "

        The response received when ConfirmConnection is called.

        ", "refs": { } }, "ConfirmPrivateVirtualInterfaceRequest": { "base": "

        Container for the parameters to the ConfirmPrivateVirtualInterface operation.

        ", "refs": { } }, "ConfirmPrivateVirtualInterfaceResponse": { "base": "

        The response received when ConfirmPrivateVirtualInterface is called.

        ", "refs": { } }, "ConfirmPublicVirtualInterfaceRequest": { "base": "

        Container for the parameters to the ConfirmPublicVirtualInterface operation.

        ", "refs": { } }, "ConfirmPublicVirtualInterfaceResponse": { "base": "

        The response received when ConfirmPublicVirtualInterface is called.

        ", "refs": { } }, "Connection": { "base": "

        A connection represents the physical network connection between the AWS Direct Connect location and the customer.

        ", "refs": { "ConnectionList$member": null } }, "ConnectionId": { "base": "

        ID of the connection.

        Example: dxcon-fg5678gh

        Default: None

        ", "refs": { "AllocatePrivateVirtualInterfaceRequest$connectionId": "

        The connection ID on which the private virtual interface is provisioned.

        Default: None

        ", "AllocatePublicVirtualInterfaceRequest$connectionId": "

        The connection ID on which the public virtual interface is provisioned.

        Default: None

        ", "ConfirmConnectionRequest$connectionId": null, "Connection$connectionId": null, "CreatePrivateVirtualInterfaceRequest$connectionId": null, "CreatePublicVirtualInterfaceRequest$connectionId": null, "DeleteConnectionRequest$connectionId": null, "DescribeConnectionLoaRequest$connectionId": null, "DescribeConnectionsRequest$connectionId": null, "DescribeVirtualInterfacesRequest$connectionId": null, "VirtualInterface$connectionId": null } }, "ConnectionList": { "base": "

        A list of connections.

        ", "refs": { "Connections$connections": "

        A list of connections.

        " } }, "ConnectionName": { "base": "

        The name of the connection.

        Example: \"My Connection to AWS\"

        Default: None

        ", "refs": { "AllocateConnectionOnInterconnectRequest$connectionName": "

        Name of the provisioned connection.

        Example: \"500M Connection to AWS\"

        Default: None

        ", "Connection$connectionName": null, "CreateConnectionRequest$connectionName": null } }, "ConnectionState": { "base": "

        State of the connection.

        • Ordering: The initial state of a hosted connection provisioned on an interconnect. The connection stays in the ordering state until the owner of the hosted connection confirms or declines the connection order.

        • Requested: The initial state of a standard connection. The connection stays in the requested state until the Letter of Authorization (LOA) is sent to the customer.

        • Pending: The connection has been approved, and is being initialized.

        • Available: The network link is up, and the connection is ready for use.

        • Down: The network link is down.

        • Deleting: The connection is in the process of being deleted.

        • Deleted: The connection has been deleted.

        • Rejected: A hosted connection in the 'Ordering' state will enter the 'Rejected' state if it is deleted by the end customer.

        ", "refs": { "ConfirmConnectionResponse$connectionState": null, "Connection$connectionState": null } }, "Connections": { "base": "

        A structure containing a list of connections.

        ", "refs": { } }, "CreateConnectionRequest": { "base": "

        Container for the parameters to the CreateConnection operation.

        ", "refs": { } }, "CreateInterconnectRequest": { "base": "

        Container for the parameters to the CreateInterconnect operation.

        ", "refs": { } }, "CreatePrivateVirtualInterfaceRequest": { "base": "

        Container for the parameters to the CreatePrivateVirtualInterface operation.

        ", "refs": { } }, "CreatePublicVirtualInterfaceRequest": { "base": "

        Container for the parameters to the CreatePublicVirtualInterface operation.

        ", "refs": { } }, "CustomerAddress": { "base": "

        IP address assigned to the customer interface.

        Example: 192.168.1.2/30

        ", "refs": { "NewPrivateVirtualInterface$customerAddress": null, "NewPrivateVirtualInterfaceAllocation$customerAddress": null, "NewPublicVirtualInterface$customerAddress": null, "NewPublicVirtualInterfaceAllocation$customerAddress": null, "VirtualInterface$customerAddress": null } }, "DeleteConnectionRequest": { "base": "

        Container for the parameters to the DeleteConnection operation.

        ", "refs": { } }, "DeleteInterconnectRequest": { "base": "

        Container for the parameters to the DeleteInterconnect operation.

        ", "refs": { } }, "DeleteInterconnectResponse": { "base": "

        The response received when DeleteInterconnect is called.

        ", "refs": { } }, "DeleteVirtualInterfaceRequest": { "base": "

        Container for the parameters to the DeleteVirtualInterface operation.

        ", "refs": { } }, "DeleteVirtualInterfaceResponse": { "base": "

        The response received when DeleteVirtualInterface is called.

        ", "refs": { } }, "DescribeConnectionLoaRequest": { "base": "

        Container for the parameters to the DescribeConnectionLoa operation.

        ", "refs": { } }, "DescribeConnectionLoaResponse": { "base": "

        The response received when DescribeConnectionLoa is called.

        ", "refs": { } }, "DescribeConnectionsOnInterconnectRequest": { "base": "

        Container for the parameters to the DescribeConnectionsOnInterconnect operation.

        ", "refs": { } }, "DescribeConnectionsRequest": { "base": "

        Container for the parameters to the DescribeConnections operation.

        ", "refs": { } }, "DescribeInterconnectLoaRequest": { "base": "

        Container for the parameters to the DescribeInterconnectLoa operation.

        ", "refs": { } }, "DescribeInterconnectLoaResponse": { "base": "

        The response received when DescribeInterconnectLoa is called.

        ", "refs": { } }, "DescribeInterconnectsRequest": { "base": "

        Container for the parameters to the DescribeInterconnects operation.

        ", "refs": { } }, "DescribeVirtualInterfacesRequest": { "base": "

        Container for the parameters to the DescribeVirtualInterfaces operation.

        ", "refs": { } }, "DirectConnectClientException": { "base": "

        The API was called with invalid parameters. The error message will contain additional details about the cause.

        ", "refs": { } }, "DirectConnectServerException": { "base": "

        A server-side error occurred during the API call. The error message will contain additional details about the cause.

        ", "refs": { } }, "ErrorMessage": { "base": null, "refs": { "DirectConnectClientException$message": "

        This is an exception thrown when there is an issue with the input provided by the API call. For example, the name provided for a connection contains a pound sign (#). This can also occur when a valid value is provided, but is otherwise constrained. For example, the valid VLAN tag range is 1-4096 but each can only be used once per connection.

        ", "DirectConnectServerException$message": "

        This is an exception thrown when there is a backend issue on the server side.

        " } }, "Interconnect": { "base": "

        An interconnect is a connection that can host other connections.

        Like a standard AWS Direct Connect connection, an interconnect represents the physical connection between an AWS Direct Connect partner's network and a specific Direct Connect location. An AWS Direct Connect partner who owns an interconnect can provision hosted connections on the interconnect for their end customers, thereby providing the end customers with connectivity to AWS services.

        The resources of the interconnect, including bandwidth and VLAN numbers, are shared by all of the hosted connections on the interconnect, and the owner of the interconnect determines how these resources are assigned.

        ", "refs": { "InterconnectList$member": null } }, "InterconnectId": { "base": "

        The ID of the interconnect.

        Example: dxcon-abc123

        ", "refs": { "AllocateConnectionOnInterconnectRequest$interconnectId": "

        ID of the interconnect on which the connection will be provisioned.

        Example: dxcon-456abc78

        Default: None

        ", "DeleteInterconnectRequest$interconnectId": null, "DescribeConnectionsOnInterconnectRequest$interconnectId": "

        ID of the interconnect on which a list of connection is provisioned.

        Example: dxcon-abc123

        Default: None

        ", "DescribeInterconnectLoaRequest$interconnectId": null, "DescribeInterconnectsRequest$interconnectId": null, "Interconnect$interconnectId": null } }, "InterconnectList": { "base": "

        A list of interconnects.

        ", "refs": { "Interconnects$interconnects": "

        A list of interconnects.

        " } }, "InterconnectName": { "base": "

        The name of the interconnect.

        Example: \"1G Interconnect to AWS\"

        ", "refs": { "CreateInterconnectRequest$interconnectName": "

        The name of the interconnect.

        Example: \"1G Interconnect to AWS\"

        Default: None

        ", "Interconnect$interconnectName": null } }, "InterconnectState": { "base": "

        State of the interconnect.

        • Requested: The initial state of an interconnect. The interconnect stays in the requested state until the Letter of Authorization (LOA) is sent to the customer.

        • Pending>: The interconnect has been approved, and is being initialized.

        • Available: The network link is up, and the interconnect is ready for use.

        • Down: The network link is down.

        • Deleting: The interconnect is in the process of being deleted.

        • Deleted: The interconnect has been deleted.

        ", "refs": { "DeleteInterconnectResponse$interconnectState": null, "Interconnect$interconnectState": null } }, "Interconnects": { "base": "

        A structure containing a list of interconnects.

        ", "refs": { } }, "Loa": { "base": "

        A structure containing the Letter of Authorization - Connecting Facility Assignment (LOA-CFA) for a connection.

        ", "refs": { "DescribeConnectionLoaResponse$loa": null, "DescribeInterconnectLoaResponse$loa": null } }, "LoaContent": { "base": "

        The binary contents of the LOA-CFA document.

        ", "refs": { "Loa$loaContent": null } }, "LoaContentType": { "base": "

        A standard media type indicating the content type of the LOA-CFA document. Currently, the only supported value is \"application/pdf\".

        Default: application/pdf

        ", "refs": { "DescribeConnectionLoaRequest$loaContentType": null, "DescribeInterconnectLoaRequest$loaContentType": null, "Loa$loaContentType": null } }, "LoaIssueTime": { "base": null, "refs": { "Connection$loaIssueTime": "

        The time of the most recent call to DescribeConnectionLoa for this Connection.

        ", "Interconnect$loaIssueTime": "

        The time of the most recent call to DescribeInterconnectLoa for this Interconnect.

        " } }, "Location": { "base": "

        An AWS Direct Connect location where connections and interconnects can be requested.

        ", "refs": { "LocationList$member": null } }, "LocationCode": { "base": "

        Where the connection is located.

        Example: EqSV5

        Default: None

        ", "refs": { "Connection$location": null, "CreateConnectionRequest$location": null, "CreateInterconnectRequest$location": "

        Where the interconnect is located

        Example: EqSV5

        Default: None

        ", "Interconnect$location": null, "Location$locationCode": "

        The code used to indicate the AWS Direct Connect location.

        ", "VirtualInterface$location": null } }, "LocationList": { "base": null, "refs": { "Locations$locations": "

        A list of colocation hubs where network providers have equipment. Most regions have multiple locations available.

        " } }, "LocationName": { "base": null, "refs": { "Location$locationName": "

        The name of the AWS Direct Connect location. The name includes the colocation partner name and the physical site of the lit building.

        " } }, "Locations": { "base": "

        A location is a network facility where AWS Direct Connect routers are available to be connected. Generally, these are colocation hubs where many network providers have equipment, and where cross connects can be delivered. Locations include a name and facility code, and must be provided when creating a connection.

        ", "refs": { } }, "NewPrivateVirtualInterface": { "base": "

        A structure containing information about a new private virtual interface.

        ", "refs": { "CreatePrivateVirtualInterfaceRequest$newPrivateVirtualInterface": "

        Detailed information for the private virtual interface to be created.

        Default: None

        " } }, "NewPrivateVirtualInterfaceAllocation": { "base": "

        A structure containing information about a private virtual interface that will be provisioned on a connection.

        ", "refs": { "AllocatePrivateVirtualInterfaceRequest$newPrivateVirtualInterfaceAllocation": "

        Detailed information for the private virtual interface to be provisioned.

        Default: None

        " } }, "NewPublicVirtualInterface": { "base": "

        A structure containing information about a new public virtual interface.

        ", "refs": { "CreatePublicVirtualInterfaceRequest$newPublicVirtualInterface": "

        Detailed information for the public virtual interface to be created.

        Default: None

        " } }, "NewPublicVirtualInterfaceAllocation": { "base": "

        A structure containing information about a public virtual interface that will be provisioned on a connection.

        ", "refs": { "AllocatePublicVirtualInterfaceRequest$newPublicVirtualInterfaceAllocation": "

        Detailed information for the public virtual interface to be provisioned.

        Default: None

        " } }, "OwnerAccount": { "base": null, "refs": { "AllocateConnectionOnInterconnectRequest$ownerAccount": "

        Numeric account Id of the customer for whom the connection will be provisioned.

        Example: 123443215678

        Default: None

        ", "AllocatePrivateVirtualInterfaceRequest$ownerAccount": "

        The AWS account that will own the new private virtual interface.

        Default: None

        ", "AllocatePublicVirtualInterfaceRequest$ownerAccount": "

        The AWS account that will own the new public virtual interface.

        Default: None

        ", "Connection$ownerAccount": "

        The AWS account that will own the new connection.

        ", "VirtualInterface$ownerAccount": "

        The AWS account that will own the new virtual interface.

        " } }, "PartnerName": { "base": null, "refs": { "Connection$partnerName": "

        The name of the AWS Direct Connect service provider associated with the connection.

        " } }, "ProviderName": { "base": null, "refs": { "DescribeConnectionLoaRequest$providerName": "

        The name of the APN partner or service provider who establishes connectivity on your behalf. If you supply this parameter, the LOA-CFA lists the provider name alongside your company name as the requester of the cross connect.

        Default: None

        ", "DescribeInterconnectLoaRequest$providerName": "

        The name of the service provider who establishes connectivity on your behalf. If you supply this parameter, the LOA-CFA lists the provider name alongside your company name as the requester of the cross connect.

        Default: None

        " } }, "Region": { "base": "

        The AWS region where the connection is located.

        Example: us-east-1

        Default: None

        ", "refs": { "Connection$region": null, "Interconnect$region": null } }, "RouteFilterPrefix": { "base": "

        A route filter prefix that the customer can advertise through Border Gateway Protocol (BGP) over a public virtual interface.

        ", "refs": { "RouteFilterPrefixList$member": null } }, "RouteFilterPrefixList": { "base": "

        A list of routes to be advertised to the AWS network in this region (public virtual interface).

        ", "refs": { "NewPublicVirtualInterface$routeFilterPrefixes": null, "NewPublicVirtualInterfaceAllocation$routeFilterPrefixes": null, "VirtualInterface$routeFilterPrefixes": null } }, "RouterConfig": { "base": null, "refs": { "VirtualInterface$customerRouterConfig": "

        Information for generating the customer router configuration.

        " } }, "VLAN": { "base": "

        The VLAN ID.

        Example: 101

        ", "refs": { "AllocateConnectionOnInterconnectRequest$vlan": "

        The dedicated VLAN provisioned to the connection.

        Example: 101

        Default: None

        ", "Connection$vlan": null, "NewPrivateVirtualInterface$vlan": null, "NewPrivateVirtualInterfaceAllocation$vlan": null, "NewPublicVirtualInterface$vlan": null, "NewPublicVirtualInterfaceAllocation$vlan": null, "VirtualInterface$vlan": null } }, "VirtualGateway": { "base": "

        You can create one or more AWS Direct Connect private virtual interfaces linking to your virtual private gateway.

        Virtual private gateways can be managed using the Amazon Virtual Private Cloud (Amazon VPC) console or the Amazon EC2 CreateVpnGateway action.

        ", "refs": { "VirtualGatewayList$member": null } }, "VirtualGatewayId": { "base": "

        The ID of the virtual private gateway to a VPC. This only applies to private virtual interfaces.

        Example: vgw-123er56

        ", "refs": { "ConfirmPrivateVirtualInterfaceRequest$virtualGatewayId": "

        ID of the virtual private gateway that will be attached to the virtual interface.

        A virtual private gateway can be managed via the Amazon Virtual Private Cloud (VPC) console or the EC2 CreateVpnGateway action.

        Default: None

        ", "NewPrivateVirtualInterface$virtualGatewayId": null, "VirtualGateway$virtualGatewayId": null, "VirtualInterface$virtualGatewayId": null } }, "VirtualGatewayList": { "base": "

        A list of virtual private gateways.

        ", "refs": { "VirtualGateways$virtualGateways": "

        A list of virtual private gateways.

        " } }, "VirtualGatewayState": { "base": "

        State of the virtual private gateway.

        • Pending: This is the initial state after calling CreateVpnGateway.

        • Available: Ready for use by a private virtual interface.

        • Deleting: This is the initial state after calling DeleteVpnGateway.

        • Deleted: In this state, a private virtual interface is unable to send traffic over this gateway.

        ", "refs": { "VirtualGateway$virtualGatewayState": null } }, "VirtualGateways": { "base": "

        A structure containing a list of virtual private gateways.

        ", "refs": { } }, "VirtualInterface": { "base": "

        A virtual interface (VLAN) transmits the traffic between the AWS Direct Connect location and the customer.

        ", "refs": { "VirtualInterfaceList$member": null } }, "VirtualInterfaceId": { "base": "

        ID of the virtual interface.

        Example: dxvif-123dfg56

        Default: None

        ", "refs": { "ConfirmPrivateVirtualInterfaceRequest$virtualInterfaceId": null, "ConfirmPublicVirtualInterfaceRequest$virtualInterfaceId": null, "DeleteVirtualInterfaceRequest$virtualInterfaceId": null, "DescribeVirtualInterfacesRequest$virtualInterfaceId": null, "VirtualInterface$virtualInterfaceId": null } }, "VirtualInterfaceList": { "base": "

        A list of virtual interfaces.

        ", "refs": { "VirtualInterfaces$virtualInterfaces": "

        A list of virtual interfaces.

        " } }, "VirtualInterfaceName": { "base": "

        The name of the virtual interface assigned by the customer.

        Example: \"My VPC\"

        ", "refs": { "NewPrivateVirtualInterface$virtualInterfaceName": null, "NewPrivateVirtualInterfaceAllocation$virtualInterfaceName": null, "NewPublicVirtualInterface$virtualInterfaceName": null, "NewPublicVirtualInterfaceAllocation$virtualInterfaceName": null, "VirtualInterface$virtualInterfaceName": null } }, "VirtualInterfaceState": { "base": "

        State of the virtual interface.

        • Confirming: The creation of the virtual interface is pending confirmation from the virtual interface owner. If the owner of the virtual interface is different from the owner of the connection on which it is provisioned, then the virtual interface will remain in this state until it is confirmed by the virtual interface owner.

        • Verifying: This state only applies to public virtual interfaces. Each public virtual interface needs validation before the virtual interface can be created.

        • Pending: A virtual interface is in this state from the time that it is created until the virtual interface is ready to forward traffic.

        • Available: A virtual interface that is able to forward traffic.

        • Down: A virtual interface that is BGP down.

        • Deleting: A virtual interface is in this state immediately after calling DeleteVirtualInterface until it can no longer forward traffic.

        • Deleted: A virtual interface that cannot forward traffic.

        • Rejected: The virtual interface owner has declined creation of the virtual interface. If a virtual interface in the 'Confirming' state is deleted by the virtual interface owner, the virtual interface will enter the 'Rejected' state.

        ", "refs": { "ConfirmPrivateVirtualInterfaceResponse$virtualInterfaceState": null, "ConfirmPublicVirtualInterfaceResponse$virtualInterfaceState": null, "DeleteVirtualInterfaceResponse$virtualInterfaceState": null, "VirtualInterface$virtualInterfaceState": null } }, "VirtualInterfaceType": { "base": "

        The type of virtual interface.

        Example: private (Amazon VPC) or public (Amazon S3, Amazon DynamoDB, and so on.)

        ", "refs": { "VirtualInterface$virtualInterfaceType": null } }, "VirtualInterfaces": { "base": "

        A structure containing a list of virtual interfaces.

        ", "refs": { } } } } aws-sdk-go-1.4.22/models/apis/directconnect/2012-10-25/examples-1.json000066400000000000000000000000541300374646400245220ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/directconnect/2012-10-25/paginators-1.json000066400000000000000000000007371300374646400250630ustar00rootroot00000000000000{ "pagination": { "DescribeConnections": { "result_key": "connections" }, "DescribeConnectionsOnInterconnect": { "result_key": "connections" }, "DescribeInterconnects": { "result_key": "interconnects" }, "DescribeLocations": { "result_key": "locations" }, "DescribeVirtualGateways": { "result_key": "virtualGateways" }, "DescribeVirtualInterfaces": { "result_key": "virtualInterfaces" } } } aws-sdk-go-1.4.22/models/apis/discovery/000077500000000000000000000000001300374646400200115ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/discovery/2015-11-01/000077500000000000000000000000001300374646400210355ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/discovery/2015-11-01/api-2.json000066400000000000000000000351211300374646400226420ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-11-01", "endpointPrefix":"discovery", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"AWS Application Discovery Service", "signatureVersion":"v4", "targetPrefix":"AWSPoseidonService_V2015_11_01" }, "operations":{ "CreateTags":{ "name":"CreateTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateTagsRequest"}, "output":{"shape":"CreateTagsResponse"}, "errors":[ {"shape":"AuthorizationErrorException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidParameterValueException"}, {"shape":"ServerInternalErrorException"} ] }, "DeleteTags":{ "name":"DeleteTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteTagsRequest"}, "output":{"shape":"DeleteTagsResponse"}, "errors":[ {"shape":"AuthorizationErrorException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidParameterValueException"}, {"shape":"ServerInternalErrorException"} ] }, "DescribeAgents":{ "name":"DescribeAgents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAgentsRequest"}, "output":{"shape":"DescribeAgentsResponse"}, "errors":[ {"shape":"AuthorizationErrorException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidParameterValueException"}, {"shape":"ServerInternalErrorException"} ] }, "DescribeConfigurations":{ "name":"DescribeConfigurations", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeConfigurationsRequest"}, "output":{"shape":"DescribeConfigurationsResponse"}, "errors":[ {"shape":"AuthorizationErrorException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidParameterValueException"}, {"shape":"ServerInternalErrorException"} ] }, "DescribeExportConfigurations":{ "name":"DescribeExportConfigurations", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeExportConfigurationsRequest"}, "output":{"shape":"DescribeExportConfigurationsResponse"}, "errors":[ {"shape":"AuthorizationErrorException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidParameterValueException"}, {"shape":"ServerInternalErrorException"} ] }, "DescribeTags":{ "name":"DescribeTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTagsRequest"}, "output":{"shape":"DescribeTagsResponse"}, "errors":[ {"shape":"AuthorizationErrorException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidParameterValueException"}, {"shape":"ServerInternalErrorException"} ] }, "ExportConfigurations":{ "name":"ExportConfigurations", "http":{ "method":"POST", "requestUri":"/" }, "output":{"shape":"ExportConfigurationsResponse"}, "errors":[ {"shape":"AuthorizationErrorException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidParameterValueException"}, {"shape":"ServerInternalErrorException"}, {"shape":"OperationNotPermittedException"} ] }, "ListConfigurations":{ "name":"ListConfigurations", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListConfigurationsRequest"}, "output":{"shape":"ListConfigurationsResponse"}, "errors":[ {"shape":"AuthorizationErrorException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidParameterValueException"}, {"shape":"ServerInternalErrorException"} ] }, "StartDataCollectionByAgentIds":{ "name":"StartDataCollectionByAgentIds", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartDataCollectionByAgentIdsRequest"}, "output":{"shape":"StartDataCollectionByAgentIdsResponse"}, "errors":[ {"shape":"AuthorizationErrorException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidParameterValueException"}, {"shape":"ServerInternalErrorException"} ] }, "StopDataCollectionByAgentIds":{ "name":"StopDataCollectionByAgentIds", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopDataCollectionByAgentIdsRequest"}, "output":{"shape":"StopDataCollectionByAgentIdsResponse"}, "errors":[ {"shape":"AuthorizationErrorException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidParameterValueException"}, {"shape":"ServerInternalErrorException"} ] } }, "shapes":{ "AgentConfigurationStatus":{ "type":"structure", "members":{ "agentId":{"shape":"String"}, "operationSucceeded":{"shape":"Boolean"}, "description":{"shape":"String"} } }, "AgentConfigurationStatusList":{ "type":"list", "member":{"shape":"AgentConfigurationStatus"} }, "AgentId":{"type":"string"}, "AgentIds":{ "type":"list", "member":{"shape":"AgentId"} }, "AgentInfo":{ "type":"structure", "members":{ "agentId":{"shape":"AgentId"}, "hostName":{"shape":"String"}, "agentNetworkInfoList":{"shape":"AgentNetworkInfoList"}, "connectorId":{"shape":"String"}, "version":{"shape":"String"}, "health":{"shape":"AgentStatus"} } }, "AgentNetworkInfo":{ "type":"structure", "members":{ "ipAddress":{"shape":"String"}, "macAddress":{"shape":"String"} } }, "AgentNetworkInfoList":{ "type":"list", "member":{"shape":"AgentNetworkInfo"} }, "AgentStatus":{ "type":"string", "enum":[ "HEALTHY", "UNHEALTHY", "RUNNING", "UNKNOWN", "BLACKLISTED", "SHUTDOWN" ] }, "AgentsInfo":{ "type":"list", "member":{"shape":"AgentInfo"} }, "AuthorizationErrorException":{ "type":"structure", "members":{ "message":{"shape":"Message"} }, "exception":true }, "Boolean":{"type":"boolean"}, "Condition":{"type":"string"}, "Configuration":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"String"} }, "ConfigurationId":{"type":"string"}, "ConfigurationIdList":{ "type":"list", "member":{"shape":"ConfigurationId"} }, "ConfigurationItemType":{ "type":"string", "enum":[ "SERVER", "PROCESS", "CONNECTION" ] }, "ConfigurationTag":{ "type":"structure", "members":{ "configurationType":{"shape":"ConfigurationItemType"}, "configurationId":{"shape":"ConfigurationId"}, "key":{"shape":"TagKey"}, "value":{"shape":"TagValue"}, "timeOfCreation":{"shape":"TimeStamp"} } }, "ConfigurationTagSet":{ "type":"list", "member":{ "shape":"ConfigurationTag", "locationName":"item" } }, "Configurations":{ "type":"list", "member":{"shape":"Configuration"} }, "ConfigurationsDownloadUrl":{"type":"string"}, "ConfigurationsExportId":{"type":"string"}, "CreateTagsRequest":{ "type":"structure", "required":[ "configurationIds", "tags" ], "members":{ "configurationIds":{"shape":"ConfigurationIdList"}, "tags":{"shape":"TagSet"} } }, "CreateTagsResponse":{ "type":"structure", "members":{ } }, "DeleteTagsRequest":{ "type":"structure", "required":["configurationIds"], "members":{ "configurationIds":{"shape":"ConfigurationIdList"}, "tags":{"shape":"TagSet"} } }, "DeleteTagsResponse":{ "type":"structure", "members":{ } }, "DescribeAgentsRequest":{ "type":"structure", "members":{ "agentIds":{"shape":"AgentIds"}, "maxResults":{"shape":"Integer"}, "nextToken":{"shape":"NextToken"} } }, "DescribeAgentsResponse":{ "type":"structure", "members":{ "agentsInfo":{"shape":"AgentsInfo"}, "nextToken":{"shape":"NextToken"} } }, "DescribeConfigurationsAttribute":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"String"} }, "DescribeConfigurationsAttributes":{ "type":"list", "member":{"shape":"DescribeConfigurationsAttribute"} }, "DescribeConfigurationsRequest":{ "type":"structure", "required":["configurationIds"], "members":{ "configurationIds":{"shape":"ConfigurationIdList"} } }, "DescribeConfigurationsResponse":{ "type":"structure", "members":{ "configurations":{"shape":"DescribeConfigurationsAttributes"} } }, "DescribeExportConfigurationsRequest":{ "type":"structure", "members":{ "exportIds":{"shape":"ExportIds"}, "maxResults":{"shape":"Integer"}, "nextToken":{"shape":"NextToken"} } }, "DescribeExportConfigurationsResponse":{ "type":"structure", "members":{ "exportsInfo":{"shape":"ExportsInfo"}, "nextToken":{"shape":"NextToken"} } }, "DescribeTagsRequest":{ "type":"structure", "members":{ "filters":{"shape":"TagFilters"}, "maxResults":{"shape":"Integer"}, "nextToken":{"shape":"NextToken"} } }, "DescribeTagsResponse":{ "type":"structure", "members":{ "tags":{"shape":"ConfigurationTagSet"}, "nextToken":{"shape":"NextToken"} } }, "ExportConfigurationsResponse":{ "type":"structure", "members":{ "exportId":{"shape":"ConfigurationsExportId"} } }, "ExportIds":{ "type":"list", "member":{"shape":"ConfigurationsExportId"} }, "ExportInfo":{ "type":"structure", "required":[ "exportId", "exportStatus", "statusMessage", "exportRequestTime" ], "members":{ "exportId":{"shape":"ConfigurationsExportId"}, "exportStatus":{"shape":"ExportStatus"}, "statusMessage":{"shape":"ExportStatusMessage"}, "configurationsDownloadUrl":{"shape":"ConfigurationsDownloadUrl"}, "exportRequestTime":{"shape":"ExportRequestTime"} } }, "ExportRequestTime":{"type":"timestamp"}, "ExportStatus":{ "type":"string", "enum":[ "FAILED", "SUCCEEDED", "IN_PROGRESS" ] }, "ExportStatusMessage":{"type":"string"}, "ExportsInfo":{ "type":"list", "member":{"shape":"ExportInfo"} }, "Filter":{ "type":"structure", "required":[ "name", "values", "condition" ], "members":{ "name":{"shape":"String"}, "values":{"shape":"FilterValues"}, "condition":{"shape":"Condition"} } }, "FilterName":{"type":"string"}, "FilterValue":{"type":"string"}, "FilterValues":{ "type":"list", "member":{ "shape":"FilterValue", "locationName":"item" } }, "Filters":{ "type":"list", "member":{"shape":"Filter"} }, "Integer":{"type":"integer"}, "InvalidParameterException":{ "type":"structure", "members":{ "message":{"shape":"Message"} }, "exception":true }, "InvalidParameterValueException":{ "type":"structure", "members":{ "message":{"shape":"Message"} }, "exception":true }, "ListConfigurationsRequest":{ "type":"structure", "required":["configurationType"], "members":{ "configurationType":{"shape":"ConfigurationItemType"}, "filters":{"shape":"Filters"}, "maxResults":{"shape":"Integer"}, "nextToken":{"shape":"NextToken"} } }, "ListConfigurationsResponse":{ "type":"structure", "members":{ "configurations":{"shape":"Configurations"}, "nextToken":{"shape":"NextToken"} } }, "Message":{"type":"string"}, "NextToken":{"type":"string"}, "OperationNotPermittedException":{ "type":"structure", "members":{ "message":{"shape":"Message"} }, "exception":true }, "ResourceNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"Message"} }, "exception":true }, "ServerInternalErrorException":{ "type":"structure", "members":{ "message":{"shape":"Message"} }, "exception":true, "fault":true }, "StartDataCollectionByAgentIdsRequest":{ "type":"structure", "required":["agentIds"], "members":{ "agentIds":{"shape":"AgentIds"} } }, "StartDataCollectionByAgentIdsResponse":{ "type":"structure", "members":{ "agentsConfigurationStatus":{"shape":"AgentConfigurationStatusList"} } }, "StopDataCollectionByAgentIdsRequest":{ "type":"structure", "required":["agentIds"], "members":{ "agentIds":{"shape":"AgentIds"} } }, "StopDataCollectionByAgentIdsResponse":{ "type":"structure", "members":{ "agentsConfigurationStatus":{"shape":"AgentConfigurationStatusList"} } }, "String":{"type":"string"}, "Tag":{ "type":"structure", "required":[ "key", "value" ], "members":{ "key":{"shape":"TagKey"}, "value":{"shape":"TagValue"} } }, "TagFilter":{ "type":"structure", "required":[ "name", "values" ], "members":{ "name":{"shape":"FilterName"}, "values":{"shape":"FilterValues"} } }, "TagFilters":{ "type":"list", "member":{"shape":"TagFilter"} }, "TagKey":{"type":"string"}, "TagSet":{ "type":"list", "member":{ "shape":"Tag", "locationName":"item" } }, "TagValue":{"type":"string"}, "TimeStamp":{"type":"timestamp"} } } aws-sdk-go-1.4.22/models/apis/discovery/2015-11-01/docs-2.json000066400000000000000000000726121300374646400230270ustar00rootroot00000000000000{ "version": "2.0", "service": "

        The AWS Application Discovery Service helps Systems Integrators quickly and reliably plan application migration projects by automatically identifying applications running in on-premises data centers, their associated dependencies, and their performance profile.

        Planning data center migrations can involve thousands of workloads that are often deeply interdependent. Application discovery and dependency mapping are important early first steps in the migration process, but difficult to perform at scale due to the lack of automated tools.

        The AWS Application Discovery Service automatically collects configuration and usage data from servers to develop a list of applications, how they perform, and how they are interdependent. This information is securely retained in an AWS Application Discovery Service database which you can export as a CSV file into your preferred visualization tool or cloud migration solution to help reduce the complexity and time in planning your cloud migration.

        The Application Discovery Service is currently available for preview. Only customers who are engaged with AWS Professional Services or a certified AWS partner can use the service. To see the list of certified partners and request access to the Application Discovery Service, complete the following preview form.

        This API reference provides descriptions, syntax, and usage examples for each of the actions and data types for the Discovery Service. The topic for each action shows the API request parameters and the response. Alternatively, you can use one of the AWS SDKs to access an API that is tailored to the programming language or platform that you're using. For more information, see AWS SDKs.

        This guide is intended for use with the AWS Discovery Service User Guide .

        The following are short descriptions of each API action, organized by function.

        Managing AWS Agents Using the Application Discovery Service

        An AWS agent is software that you install on on-premises servers and virtual machines that are targeted for discovery and migration. Agents run on Linux and Windows Server and collect server configuration and activity information about your applications and infrastructure. Specifically, agents collect the following information and send it to the Application Discovery Service using Secure Sockets Layer (SSL) encryption:

        • User information (user name, home directory)

        • Group information (name)

        • List of installed packages

        • List of kernel modules

        • All create and stop process events

        • DNS queries

        • NIC information

        • TCP/UDP process listening ports

        • TCPV4/V6 connections

        • Operating system information

        • System performance

        • Process performance

        The Application Discovery Service API includes the following actions to manage AWS agents:

        • StartDataCollectionByAgentIds: Instructs the specified agents to start collecting data. The Application Discovery Service takes several minutes to receive and process data after you initiate data collection.

        • StopDataCollectionByAgentIds: Instructs the specified agents to stop collecting data.

        • DescribeAgents: Lists AWS agents by ID or lists all agents associated with your user account if you did not specify an agent ID. The output includes agent IDs, IP addresses, media access control (MAC) addresses, agent health, host name where the agent resides, and the version number of each agent.

        Querying Configuration Items

        A configuration item is an IT asset that was discovered in your data center by an AWS agent. When you use the Application Discovery Service, you can specify filters and query specific configuration items. The service supports Server, Process, and Connection configuration items. This means you can specify a value for the following keys and query your IT assets:

        Server

        • server.HostName

        • server.osName

        • server.osVersion

        • server.configurationId

        • server.agentId

        Process

        • process.name

        • process.CommandLine

        • process.configurationId

        • server.hostName

        • server.osName

        • server.osVersion

        • server.configurationId

        • server.agentId

        Connection

        • connection.sourceIp

        • connection.sourcePort

        • connection.destinationIp

        • connection.destinationPort

        • sourceProcess.configurationId

        • sourceProcess.commandLine

        • sourceProcess.name

        • destinationProcessId.configurationId

        • destinationProcess.commandLine

        • destinationProcess.name

        • sourceServer.configurationId

        • sourceServer.hostName

        • sourceServer.osName

        • sourceServer.osVersion

        • destinationServer.configurationId

        • destinationServer.hostName

        • destinationServer.osName

        • destinationServer.osVersion

        The Application Discovery Service includes the following actions for querying configuration items.

        • DescribeConfigurations: Retrieves a list of attributes for a specific configuration ID. For example, the output for a server configuration item includes a list of attributes about the server, including host name, operating system, number of network cards, etc.

        • ListConfigurations: Retrieves a list of configuration items according to the criteria you specify in a filter. The filter criteria identify relationship requirements. For example, you can specify filter criteria of process.name with values of nginx and apache.

        Tagging Discovered Configuration Items

        You can tag discovered configuration items. Tags are metadata that help you categorize IT assets in your data center. Tags use a key-value format. For example, {\"key\": \"serverType\", \"value\": \"webServer\"}.

        • CreateTags: Creates one or more tags for a configuration items.

        • DescribeTags: Retrieves a list of configuration items that are tagged with a specific tag. Or, retrieves a list of all tags assigned to a specific configuration item.

        • DeleteTags: Deletes the association between a configuration item and one or more tags.

        Exporting Data

        You can export data as a CSV file to an Amazon S3 bucket or into your preferred visualization tool or cloud migration solution to help reduce the complexity and time in planning your cloud migration.

        • ExportConfigurations: Exports all discovered configuration data to an Amazon S3 bucket. Data includes tags and tag associations, processes, connections, servers, and system performance. This API returns an export ID which you can query using the GetExportStatus API.

        • DescribeExportConfigurations: Gets the status of the data export. When the export is complete, the service returns an Amazon S3 URL where you can download CSV files that include the data.

        ", "operations": { "CreateTags": "

        Creates one or more tags for configuration items. Tags are metadata that help you categorize IT assets. This API accepts a list of multiple configuration items.

        ", "DeleteTags": "

        Deletes the association between configuration items and one or more tags. This API accepts a list of multiple configuration items.

        ", "DescribeAgents": "

        Lists AWS agents by ID or lists all agents associated with your user account if you did not specify an agent ID.

        ", "DescribeConfigurations": "

        Retrieves a list of attributes for a specific configuration ID. For example, the output for a server configuration item includes a list of attributes about the server, including host name, operating system, number of network cards, etc.

        ", "DescribeExportConfigurations": "

        Retrieves the status of a given export process. You can retrieve status from a maximum of 100 processes.

        ", "DescribeTags": "

        Retrieves a list of configuration items that are tagged with a specific tag. Or retrieves a list of all tags assigned to a specific configuration item.

        ", "ExportConfigurations": "

        Exports all discovered configuration data to an Amazon S3 bucket or an application that enables you to view and evaluate the data. Data includes tags and tag associations, processes, connections, servers, and system performance. This API returns an export ID which you can query using the GetExportStatus API. The system imposes a limit of two configuration exports in six hours.

        ", "ListConfigurations": "

        Retrieves a list of configurations items according to the criteria you specify in a filter. The filter criteria identify relationship requirements.

        ", "StartDataCollectionByAgentIds": "

        Instructs the specified agents to start collecting data. Agents can reside on host servers or virtual machines in your data center.

        ", "StopDataCollectionByAgentIds": "

        Instructs the specified agents to stop collecting data.

        " }, "shapes": { "AgentConfigurationStatus": { "base": "

        Information about agents that were instructed to start collecting data. Information includes the agent ID, a description of the operation, and whether or not the agent configuration was updated.

        ", "refs": { "AgentConfigurationStatusList$member": null } }, "AgentConfigurationStatusList": { "base": null, "refs": { "StartDataCollectionByAgentIdsResponse$agentsConfigurationStatus": "

        Information about agents that were instructed to start collecting data. Information includes the agent ID, a description of the operation performed, and whether or not the agent configuration was updated.

        ", "StopDataCollectionByAgentIdsResponse$agentsConfigurationStatus": "

        Information about agents that were instructed to stop collecting data. Information includes the agent ID, a description of the operation performed, and whether or not the agent configuration was updated.

        " } }, "AgentId": { "base": null, "refs": { "AgentIds$member": null, "AgentInfo$agentId": "

        The agent ID.

        " } }, "AgentIds": { "base": null, "refs": { "DescribeAgentsRequest$agentIds": "

        The agent IDs for which you want information. If you specify no IDs, the system returns information about all agents associated with your AWS user account.

        ", "StartDataCollectionByAgentIdsRequest$agentIds": "

        The IDs of the agents that you want to start collecting data. If you send a request to an AWS agent ID that you do not have permission to contact, according to your AWS account, the service does not throw an exception. Instead, it returns the error in the Description field. If you send a request to multiple agents and you do not have permission to contact some of those agents, the system does not throw an exception. Instead, the system shows Failed in the Description field.

        ", "StopDataCollectionByAgentIdsRequest$agentIds": "

        The IDs of the agents that you want to stop collecting data.

        " } }, "AgentInfo": { "base": "

        Information about agents associated with the user’s AWS account. Information includes agent IDs, IP addresses, media access control (MAC) addresses, agent health, hostname where the agent resides, and agent version for each agent.

        ", "refs": { "AgentsInfo$member": null } }, "AgentNetworkInfo": { "base": "

        Network details about the host where the agent resides.

        ", "refs": { "AgentNetworkInfoList$member": null } }, "AgentNetworkInfoList": { "base": null, "refs": { "AgentInfo$agentNetworkInfoList": "

        Network details about the host where the agent resides.

        " } }, "AgentStatus": { "base": null, "refs": { "AgentInfo$health": "

        The health of the agent.

        " } }, "AgentsInfo": { "base": null, "refs": { "DescribeAgentsResponse$agentsInfo": "

        Lists AWS agents by ID or lists all agents associated with your user account if you did not specify an agent ID. The output includes agent IDs, IP addresses, media access control (MAC) addresses, agent health, host name where the agent resides, and the version number of each agent.

        " } }, "AuthorizationErrorException": { "base": "

        The AWS user account does not have permission to perform the action. Check the IAM policy associated with this account.

        ", "refs": { } }, "Boolean": { "base": null, "refs": { "AgentConfigurationStatus$operationSucceeded": "

        Information about the status of the StartDataCollection and StopDataCollection operations. The system has recorded the data collection operation. The agent receives this command the next time it polls for a new command.

        " } }, "Condition": { "base": null, "refs": { "Filter$condition": "

        A conditional operator. The following operators are valid: EQUALS, NOT_EQUALS, CONTAINS, NOT_CONTAINS. If you specify multiple filters, the system utilizes all filters as though concatenated by AND. If you specify multiple values for a particular filter, the system differentiates the values using OR. Calling either DescribeConfigurations or ListConfigurations returns attributes of matching configuration items.

        " } }, "Configuration": { "base": null, "refs": { "Configurations$member": null } }, "ConfigurationId": { "base": null, "refs": { "ConfigurationIdList$member": null, "ConfigurationTag$configurationId": "

        The configuration ID for the item you want to tag. You can specify a list of keys and values.

        " } }, "ConfigurationIdList": { "base": null, "refs": { "CreateTagsRequest$configurationIds": "

        A list of configuration items that you want to tag.

        ", "DeleteTagsRequest$configurationIds": "

        A list of configuration items with tags that you want to delete.

        ", "DescribeConfigurationsRequest$configurationIds": "

        One or more configuration IDs.

        " } }, "ConfigurationItemType": { "base": null, "refs": { "ConfigurationTag$configurationType": "

        A type of IT asset that you want to tag.

        ", "ListConfigurationsRequest$configurationType": "

        A valid configuration identified by the Discovery Service.

        " } }, "ConfigurationTag": { "base": "

        Tags for a configuration item. Tags are metadata that help you categorize IT assets.

        ", "refs": { "ConfigurationTagSet$member": null } }, "ConfigurationTagSet": { "base": null, "refs": { "DescribeTagsResponse$tags": "

        Depending on the input, this is a list of configuration items tagged with a specific tag, or a list of tags for a specific configuration item.

        " } }, "Configurations": { "base": null, "refs": { "ListConfigurationsResponse$configurations": "

        Returns configuration details, including the configuration ID, attribute names, and attribute values.

        " } }, "ConfigurationsDownloadUrl": { "base": null, "refs": { "ExportInfo$configurationsDownloadUrl": "

        A URL for an Amazon S3 bucket where you can review the configuration data. The URL is displayed only if the export succeeded.

        " } }, "ConfigurationsExportId": { "base": null, "refs": { "ExportConfigurationsResponse$exportId": "

        A unique identifier that you can use to query the export status.

        ", "ExportIds$member": null, "ExportInfo$exportId": "

        A unique identifier that you can use to query the export.

        " } }, "CreateTagsRequest": { "base": null, "refs": { } }, "CreateTagsResponse": { "base": null, "refs": { } }, "DeleteTagsRequest": { "base": null, "refs": { } }, "DeleteTagsResponse": { "base": null, "refs": { } }, "DescribeAgentsRequest": { "base": null, "refs": { } }, "DescribeAgentsResponse": { "base": null, "refs": { } }, "DescribeConfigurationsAttribute": { "base": null, "refs": { "DescribeConfigurationsAttributes$member": null } }, "DescribeConfigurationsAttributes": { "base": null, "refs": { "DescribeConfigurationsResponse$configurations": "

        A key in the response map. The value is an array of data.

        " } }, "DescribeConfigurationsRequest": { "base": null, "refs": { } }, "DescribeConfigurationsResponse": { "base": null, "refs": { } }, "DescribeExportConfigurationsRequest": { "base": null, "refs": { } }, "DescribeExportConfigurationsResponse": { "base": null, "refs": { } }, "DescribeTagsRequest": { "base": null, "refs": { } }, "DescribeTagsResponse": { "base": null, "refs": { } }, "ExportConfigurationsResponse": { "base": null, "refs": { } }, "ExportIds": { "base": null, "refs": { "DescribeExportConfigurationsRequest$exportIds": "

        A unique identifier that you can use to query the export status.

        " } }, "ExportInfo": { "base": "

        Information regarding the export status of the discovered data. The value is an array of objects.

        ", "refs": { "ExportsInfo$member": null } }, "ExportRequestTime": { "base": null, "refs": { "ExportInfo$exportRequestTime": "

        The time the configuration data export was initiated.

        " } }, "ExportStatus": { "base": null, "refs": { "ExportInfo$exportStatus": "

        The status of the configuration data export. The status can succeed, fail, or be in-progress.

        " } }, "ExportStatusMessage": { "base": null, "refs": { "ExportInfo$statusMessage": "

        Helpful status messages for API callers. For example: Too many exports in the last 6 hours. Export in progress. Export was successful.

        " } }, "ExportsInfo": { "base": null, "refs": { "DescribeExportConfigurationsResponse$exportsInfo": "

        Returns export details. When the status is complete, the response includes a URL for an Amazon S3 bucket where you can view the data in a CSV file.

        " } }, "Filter": { "base": "

        A filter that can use conditional operators.

        ", "refs": { "Filters$member": null } }, "FilterName": { "base": null, "refs": { "TagFilter$name": "

        A name of a tag filter.

        " } }, "FilterValue": { "base": null, "refs": { "FilterValues$member": null } }, "FilterValues": { "base": null, "refs": { "Filter$values": "

        A string value that you want to filter on. For example, if you choose the destinationServer.osVersion filter name, you could specify Ubuntu for the value.

        ", "TagFilter$values": "

        Values of a tag filter.

        " } }, "Filters": { "base": null, "refs": { "ListConfigurationsRequest$filters": "

        You can filter the list using a key-value format. For example:

        {\"key\": \"serverType\", \"value\": \"webServer\"}

        You can separate these items by using logical operators.

        " } }, "Integer": { "base": null, "refs": { "DescribeAgentsRequest$maxResults": "

        The total number of agents to return. The maximum value is 100.

        ", "DescribeExportConfigurationsRequest$maxResults": "

        The maximum number of results that you want to display as a part of the query.

        ", "DescribeTagsRequest$maxResults": "

        The total number of items to return. The maximum value is 100.

        ", "ListConfigurationsRequest$maxResults": "

        The total number of items to return. The maximum value is 100.

        " } }, "InvalidParameterException": { "base": "

        One or more parameters are not valid. Verify the parameters and try again.

        ", "refs": { } }, "InvalidParameterValueException": { "base": "

        The value of one or more parameters are either invalid or out of range. Verify the parameter values and try again.

        ", "refs": { } }, "ListConfigurationsRequest": { "base": null, "refs": { } }, "ListConfigurationsResponse": { "base": null, "refs": { } }, "Message": { "base": null, "refs": { "AuthorizationErrorException$message": null, "InvalidParameterException$message": null, "InvalidParameterValueException$message": null, "OperationNotPermittedException$message": null, "ResourceNotFoundException$message": null, "ServerInternalErrorException$message": null } }, "NextToken": { "base": null, "refs": { "DescribeAgentsRequest$nextToken": "

        A token to start the list. Use this token to get the next set of results.

        ", "DescribeAgentsResponse$nextToken": "

        The call returns a token. Use this token to get the next set of results.

        ", "DescribeExportConfigurationsRequest$nextToken": "

        A token to get the next set of results. For example, if you specified 100 IDs for DescribeConfigurationsRequest$configurationIds but set DescribeExportConfigurationsRequest$maxResults to 10, you will get results in a set of 10. Use the token in the query to get the next set of 10.

        ", "DescribeExportConfigurationsResponse$nextToken": "

        A token to get the next set of results. For example, if you specified 100 IDs for DescribeConfigurationsRequest$configurationIds but set DescribeExportConfigurationsRequest$maxResults to 10, you will get results in a set of 10. Use the token in the query to get the next set of 10.

        ", "DescribeTagsRequest$nextToken": "

        A token to start the list. Use this token to get the next set of results.

        ", "DescribeTagsResponse$nextToken": "

        The call returns a token. Use this token to get the next set of results.

        ", "ListConfigurationsRequest$nextToken": "

        A token to start the list. Use this token to get the next set of results.

        ", "ListConfigurationsResponse$nextToken": "

        The call returns a token. Use this token to get the next set of results.

        " } }, "OperationNotPermittedException": { "base": "

        This operation is not permitted.

        ", "refs": { } }, "ResourceNotFoundException": { "base": "

        The specified configuration ID was not located. Verify the configuration ID and try again.

        ", "refs": { } }, "ServerInternalErrorException": { "base": "

        The server experienced an internal error. Try again.

        ", "refs": { } }, "StartDataCollectionByAgentIdsRequest": { "base": null, "refs": { } }, "StartDataCollectionByAgentIdsResponse": { "base": null, "refs": { } }, "StopDataCollectionByAgentIdsRequest": { "base": null, "refs": { } }, "StopDataCollectionByAgentIdsResponse": { "base": null, "refs": { } }, "String": { "base": null, "refs": { "AgentConfigurationStatus$agentId": "

        The agent ID.

        ", "AgentConfigurationStatus$description": "

        A description of the operation performed.

        ", "AgentInfo$hostName": "

        The name of the host where the agent resides. The host can be a server or virtual machine.

        ", "AgentInfo$connectorId": "

        This data type is currently not valid.

        ", "AgentInfo$version": "

        The agent version.

        ", "AgentNetworkInfo$ipAddress": "

        The IP address for the host where the agent resides.

        ", "AgentNetworkInfo$macAddress": "

        The MAC address for the host where the agent resides.

        ", "Configuration$key": null, "Configuration$value": null, "DescribeConfigurationsAttribute$key": null, "DescribeConfigurationsAttribute$value": null, "Filter$name": "

        The name of the filter. The following filter names are allowed for SERVER configuration items.

        Server

        • server.hostName

        • server.osName

        • server.osVersion

        • server.configurationid

        • server.agentid

        The name of the filter. The following filter names are allowed for PROCESS configuration items.

        Process

        • process.configurationid

        • process.name

        • process.commandLine

        • server.configurationid

        • server.hostName

        • server.osName

        • server.osVersion

        • server.agentId

        The name of the filter. The following filter names are allowed for CONNECTION configuration items.

        Connection

        • connection.sourceIp

        • connection.destinationIp

        • connection.destinationPort

        • sourceProcess.configurationId

        • sourceProcess.name

        • sourceProcess.commandLine

        • destinationProcess.configurationId

        • destinationProcess.name

        • destinationProcess.commandLine

        • sourceServer.configurationId

        • sourceServer.hostName

        • sourceServer.osName

        • sourceServer.osVersion

        • sourceServer.agentId

        • destinationServer.configurationId

        • destinationServer.hostName

        • destinationServer.osName

        • destinationServer.osVersion

        • destinationServer.agentId

        " } }, "Tag": { "base": "

        Metadata that help you categorize IT assets.

        ", "refs": { "TagSet$member": null } }, "TagFilter": { "base": "

        The name of a tag filter. Valid names are: tagKey, tagValue, configurationId.

        ", "refs": { "TagFilters$member": null } }, "TagFilters": { "base": null, "refs": { "DescribeTagsRequest$filters": "

        You can filter the list using a key-value format. You can separate these items by using logical operators. Allowed filters include tagKey, tagValue, and configurationId.

        " } }, "TagKey": { "base": null, "refs": { "ConfigurationTag$key": "

        A type of tag to filter on. For example, serverType.

        ", "Tag$key": "

        A type of tag to filter on.

        " } }, "TagSet": { "base": null, "refs": { "CreateTagsRequest$tags": "

        Tags that you want to associate with one or more configuration items. Specify the tags that you want to create in a key-value format. For example:

        {\"key\": \"serverType\", \"value\": \"webServer\"}

        ", "DeleteTagsRequest$tags": "

        Tags that you want to delete from one or more configuration items. Specify the tags that you want to delete in a key-value format. For example:

        {\"key\": \"serverType\", \"value\": \"webServer\"}

        " } }, "TagValue": { "base": null, "refs": { "ConfigurationTag$value": "

        A value to filter on. For example key = serverType and value = web server.

        ", "Tag$value": "

        A value for a tag key to filter on.

        " } }, "TimeStamp": { "base": null, "refs": { "ConfigurationTag$timeOfCreation": "

        The time the configuration tag was created in Coordinated Universal Time (UTC).

        " } } } } aws-sdk-go-1.4.22/models/apis/discovery/2015-11-01/examples-1.json000066400000000000000000000000541300374646400237030ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/dms/000077500000000000000000000000001300374646400165655ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/dms/2016-01-01/000077500000000000000000000000001300374646400176115ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/dms/2016-01-01/api-2.json000066400000000000000000001217441300374646400214250ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2016-01-01", "endpointPrefix":"dms", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"AWS Database Migration Service", "signatureVersion":"v4", "targetPrefix":"AmazonDMSv20160101" }, "operations":{ "AddTagsToResource":{ "name":"AddTagsToResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsToResourceMessage"}, "output":{"shape":"AddTagsToResourceResponse"}, "errors":[ {"shape":"ResourceNotFoundFault"} ] }, "CreateEndpoint":{ "name":"CreateEndpoint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateEndpointMessage"}, "output":{"shape":"CreateEndpointResponse"}, "errors":[ {"shape":"KMSKeyNotAccessibleFault"}, {"shape":"ResourceAlreadyExistsFault"}, {"shape":"ResourceQuotaExceededFault"}, {"shape":"InvalidResourceStateFault"}, {"shape":"ResourceNotFoundFault"} ] }, "CreateReplicationInstance":{ "name":"CreateReplicationInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateReplicationInstanceMessage"}, "output":{"shape":"CreateReplicationInstanceResponse"}, "errors":[ {"shape":"AccessDeniedFault"}, {"shape":"ResourceAlreadyExistsFault"}, {"shape":"InsufficientResourceCapacityFault"}, {"shape":"ResourceQuotaExceededFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"ResourceNotFoundFault"}, {"shape":"ReplicationSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidResourceStateFault"}, {"shape":"InvalidSubnet"}, {"shape":"KMSKeyNotAccessibleFault"} ] }, "CreateReplicationSubnetGroup":{ "name":"CreateReplicationSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateReplicationSubnetGroupMessage"}, "output":{"shape":"CreateReplicationSubnetGroupResponse"}, "errors":[ {"shape":"AccessDeniedFault"}, {"shape":"ResourceAlreadyExistsFault"}, {"shape":"ResourceNotFoundFault"}, {"shape":"ResourceQuotaExceededFault"}, {"shape":"ReplicationSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"} ] }, "CreateReplicationTask":{ "name":"CreateReplicationTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateReplicationTaskMessage"}, "output":{"shape":"CreateReplicationTaskResponse"}, "errors":[ {"shape":"InvalidResourceStateFault"}, {"shape":"ResourceAlreadyExistsFault"}, {"shape":"ResourceNotFoundFault"}, {"shape":"KMSKeyNotAccessibleFault"}, {"shape":"ResourceQuotaExceededFault"} ] }, "DeleteCertificate":{ "name":"DeleteCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteCertificateMessage"}, "output":{"shape":"DeleteCertificateResponse"}, "errors":[ {"shape":"ResourceNotFoundFault"}, {"shape":"InvalidResourceStateFault"} ] }, "DeleteEndpoint":{ "name":"DeleteEndpoint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteEndpointMessage"}, "output":{"shape":"DeleteEndpointResponse"}, "errors":[ {"shape":"ResourceNotFoundFault"}, {"shape":"InvalidResourceStateFault"} ] }, "DeleteReplicationInstance":{ "name":"DeleteReplicationInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteReplicationInstanceMessage"}, "output":{"shape":"DeleteReplicationInstanceResponse"}, "errors":[ {"shape":"InvalidResourceStateFault"}, {"shape":"ResourceNotFoundFault"} ] }, "DeleteReplicationSubnetGroup":{ "name":"DeleteReplicationSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteReplicationSubnetGroupMessage"}, "output":{"shape":"DeleteReplicationSubnetGroupResponse"}, "errors":[ {"shape":"InvalidResourceStateFault"}, {"shape":"ResourceNotFoundFault"} ] }, "DeleteReplicationTask":{ "name":"DeleteReplicationTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteReplicationTaskMessage"}, "output":{"shape":"DeleteReplicationTaskResponse"}, "errors":[ {"shape":"ResourceNotFoundFault"}, {"shape":"InvalidResourceStateFault"} ] }, "DescribeAccountAttributes":{ "name":"DescribeAccountAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAccountAttributesMessage"}, "output":{"shape":"DescribeAccountAttributesResponse"} }, "DescribeCertificates":{ "name":"DescribeCertificates", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeCertificatesMessage"}, "output":{"shape":"DescribeCertificatesResponse"}, "errors":[ {"shape":"ResourceNotFoundFault"} ] }, "DescribeConnections":{ "name":"DescribeConnections", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeConnectionsMessage"}, "output":{"shape":"DescribeConnectionsResponse"}, "errors":[ {"shape":"ResourceNotFoundFault"} ] }, "DescribeEndpointTypes":{ "name":"DescribeEndpointTypes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEndpointTypesMessage"}, "output":{"shape":"DescribeEndpointTypesResponse"} }, "DescribeEndpoints":{ "name":"DescribeEndpoints", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEndpointsMessage"}, "output":{"shape":"DescribeEndpointsResponse"}, "errors":[ {"shape":"ResourceNotFoundFault"} ] }, "DescribeOrderableReplicationInstances":{ "name":"DescribeOrderableReplicationInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeOrderableReplicationInstancesMessage"}, "output":{"shape":"DescribeOrderableReplicationInstancesResponse"} }, "DescribeRefreshSchemasStatus":{ "name":"DescribeRefreshSchemasStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRefreshSchemasStatusMessage"}, "output":{"shape":"DescribeRefreshSchemasStatusResponse"}, "errors":[ {"shape":"InvalidResourceStateFault"}, {"shape":"ResourceNotFoundFault"} ] }, "DescribeReplicationInstances":{ "name":"DescribeReplicationInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReplicationInstancesMessage"}, "output":{"shape":"DescribeReplicationInstancesResponse"}, "errors":[ {"shape":"ResourceNotFoundFault"} ] }, "DescribeReplicationSubnetGroups":{ "name":"DescribeReplicationSubnetGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReplicationSubnetGroupsMessage"}, "output":{"shape":"DescribeReplicationSubnetGroupsResponse"}, "errors":[ {"shape":"ResourceNotFoundFault"} ] }, "DescribeReplicationTasks":{ "name":"DescribeReplicationTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReplicationTasksMessage"}, "output":{"shape":"DescribeReplicationTasksResponse"}, "errors":[ {"shape":"ResourceNotFoundFault"} ] }, "DescribeSchemas":{ "name":"DescribeSchemas", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSchemasMessage"}, "output":{"shape":"DescribeSchemasResponse"}, "errors":[ {"shape":"InvalidResourceStateFault"}, {"shape":"ResourceNotFoundFault"} ] }, "DescribeTableStatistics":{ "name":"DescribeTableStatistics", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTableStatisticsMessage"}, "output":{"shape":"DescribeTableStatisticsResponse"}, "errors":[ {"shape":"ResourceNotFoundFault"}, {"shape":"InvalidResourceStateFault"} ] }, "ImportCertificate":{ "name":"ImportCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportCertificateMessage"}, "output":{"shape":"ImportCertificateResponse"}, "errors":[ {"shape":"ResourceAlreadyExistsFault"}, {"shape":"InvalidCertificateFault"} ] }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTagsForResourceMessage"}, "output":{"shape":"ListTagsForResourceResponse"}, "errors":[ {"shape":"ResourceNotFoundFault"} ] }, "ModifyEndpoint":{ "name":"ModifyEndpoint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyEndpointMessage"}, "output":{"shape":"ModifyEndpointResponse"}, "errors":[ {"shape":"InvalidResourceStateFault"}, {"shape":"ResourceNotFoundFault"}, {"shape":"ResourceAlreadyExistsFault"}, {"shape":"KMSKeyNotAccessibleFault"} ] }, "ModifyReplicationInstance":{ "name":"ModifyReplicationInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyReplicationInstanceMessage"}, "output":{"shape":"ModifyReplicationInstanceResponse"}, "errors":[ {"shape":"InvalidResourceStateFault"}, {"shape":"ResourceAlreadyExistsFault"}, {"shape":"ResourceNotFoundFault"}, {"shape":"InsufficientResourceCapacityFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"UpgradeDependencyFailureFault"} ] }, "ModifyReplicationSubnetGroup":{ "name":"ModifyReplicationSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyReplicationSubnetGroupMessage"}, "output":{"shape":"ModifyReplicationSubnetGroupResponse"}, "errors":[ {"shape":"AccessDeniedFault"}, {"shape":"ResourceNotFoundFault"}, {"shape":"ResourceQuotaExceededFault"}, {"shape":"SubnetAlreadyInUse"}, {"shape":"ReplicationSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"} ] }, "RefreshSchemas":{ "name":"RefreshSchemas", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RefreshSchemasMessage"}, "output":{"shape":"RefreshSchemasResponse"}, "errors":[ {"shape":"InvalidResourceStateFault"}, {"shape":"ResourceNotFoundFault"}, {"shape":"KMSKeyNotAccessibleFault"}, {"shape":"ResourceQuotaExceededFault"} ] }, "RemoveTagsFromResource":{ "name":"RemoveTagsFromResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsFromResourceMessage"}, "output":{"shape":"RemoveTagsFromResourceResponse"}, "errors":[ {"shape":"ResourceNotFoundFault"} ] }, "StartReplicationTask":{ "name":"StartReplicationTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartReplicationTaskMessage"}, "output":{"shape":"StartReplicationTaskResponse"}, "errors":[ {"shape":"ResourceNotFoundFault"}, {"shape":"InvalidResourceStateFault"} ] }, "StopReplicationTask":{ "name":"StopReplicationTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopReplicationTaskMessage"}, "output":{"shape":"StopReplicationTaskResponse"}, "errors":[ {"shape":"ResourceNotFoundFault"}, {"shape":"InvalidResourceStateFault"} ] }, "TestConnection":{ "name":"TestConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"TestConnectionMessage"}, "output":{"shape":"TestConnectionResponse"}, "errors":[ {"shape":"ResourceNotFoundFault"}, {"shape":"InvalidResourceStateFault"}, {"shape":"KMSKeyNotAccessibleFault"}, {"shape":"ResourceQuotaExceededFault"} ] } }, "shapes":{ "AccessDeniedFault":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "AccountQuota":{ "type":"structure", "members":{ "AccountQuotaName":{"shape":"String"}, "Used":{"shape":"Long"}, "Max":{"shape":"Long"} } }, "AccountQuotaList":{ "type":"list", "member":{ "shape":"AccountQuota", "locationName":"AccountQuota" } }, "AddTagsToResourceMessage":{ "type":"structure", "required":[ "ResourceArn", "Tags" ], "members":{ "ResourceArn":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "AddTagsToResourceResponse":{ "type":"structure", "members":{ } }, "AvailabilityZone":{ "type":"structure", "members":{ "Name":{"shape":"String"} } }, "Boolean":{"type":"boolean"}, "BooleanOptional":{"type":"boolean"}, "Certificate":{ "type":"structure", "members":{ "CertificateIdentifier":{"shape":"String"}, "CertificateCreationDate":{"shape":"TStamp"}, "CertificatePem":{"shape":"String"}, "CertificateArn":{"shape":"String"}, "CertificateOwner":{"shape":"String"}, "ValidFromDate":{"shape":"TStamp"}, "ValidToDate":{"shape":"TStamp"}, "SigningAlgorithm":{"shape":"String"}, "KeyLength":{"shape":"IntegerOptional"} } }, "CertificateList":{ "type":"list", "member":{ "shape":"Certificate", "locationName":"Certificate" } }, "Connection":{ "type":"structure", "members":{ "ReplicationInstanceArn":{"shape":"String"}, "EndpointArn":{"shape":"String"}, "Status":{"shape":"String"}, "LastFailureMessage":{"shape":"String"}, "EndpointIdentifier":{"shape":"String"}, "ReplicationInstanceIdentifier":{"shape":"String"} } }, "ConnectionList":{ "type":"list", "member":{ "shape":"Connection", "locationName":"Connection" } }, "CreateEndpointMessage":{ "type":"structure", "required":[ "EndpointIdentifier", "EndpointType", "EngineName", "Username", "Password", "ServerName", "Port" ], "members":{ "EndpointIdentifier":{"shape":"String"}, "EndpointType":{"shape":"ReplicationEndpointTypeValue"}, "EngineName":{"shape":"String"}, "Username":{"shape":"String"}, "Password":{"shape":"SecretString"}, "ServerName":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "DatabaseName":{"shape":"String"}, "ExtraConnectionAttributes":{"shape":"String"}, "KmsKeyId":{"shape":"String"}, "Tags":{"shape":"TagList"}, "CertificateArn":{"shape":"String"}, "SslMode":{"shape":"DmsSslModeValue"} } }, "CreateEndpointResponse":{ "type":"structure", "members":{ "Endpoint":{"shape":"Endpoint"} } }, "CreateReplicationInstanceMessage":{ "type":"structure", "required":[ "ReplicationInstanceIdentifier", "ReplicationInstanceClass" ], "members":{ "ReplicationInstanceIdentifier":{"shape":"String"}, "AllocatedStorage":{"shape":"IntegerOptional"}, "ReplicationInstanceClass":{"shape":"String"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "AvailabilityZone":{"shape":"String"}, "ReplicationSubnetGroupIdentifier":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "EngineVersion":{"shape":"String"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "Tags":{"shape":"TagList"}, "KmsKeyId":{"shape":"String"}, "PubliclyAccessible":{"shape":"BooleanOptional"} } }, "CreateReplicationInstanceResponse":{ "type":"structure", "members":{ "ReplicationInstance":{"shape":"ReplicationInstance"} } }, "CreateReplicationSubnetGroupMessage":{ "type":"structure", "required":[ "ReplicationSubnetGroupIdentifier", "ReplicationSubnetGroupDescription", "SubnetIds" ], "members":{ "ReplicationSubnetGroupIdentifier":{"shape":"String"}, "ReplicationSubnetGroupDescription":{"shape":"String"}, "SubnetIds":{"shape":"SubnetIdentifierList"}, "Tags":{"shape":"TagList"} } }, "CreateReplicationSubnetGroupResponse":{ "type":"structure", "members":{ "ReplicationSubnetGroup":{"shape":"ReplicationSubnetGroup"} } }, "CreateReplicationTaskMessage":{ "type":"structure", "required":[ "ReplicationTaskIdentifier", "SourceEndpointArn", "TargetEndpointArn", "ReplicationInstanceArn", "MigrationType", "TableMappings" ], "members":{ "ReplicationTaskIdentifier":{"shape":"String"}, "SourceEndpointArn":{"shape":"String"}, "TargetEndpointArn":{"shape":"String"}, "ReplicationInstanceArn":{"shape":"String"}, "MigrationType":{"shape":"MigrationTypeValue"}, "TableMappings":{"shape":"String"}, "ReplicationTaskSettings":{"shape":"String"}, "CdcStartTime":{"shape":"TStamp"}, "Tags":{"shape":"TagList"} } }, "CreateReplicationTaskResponse":{ "type":"structure", "members":{ "ReplicationTask":{"shape":"ReplicationTask"} } }, "DeleteCertificateMessage":{ "type":"structure", "required":["CertificateArn"], "members":{ "CertificateArn":{"shape":"String"} } }, "DeleteCertificateResponse":{ "type":"structure", "members":{ "Certificate":{"shape":"Certificate"} } }, "DeleteEndpointMessage":{ "type":"structure", "required":["EndpointArn"], "members":{ "EndpointArn":{"shape":"String"} } }, "DeleteEndpointResponse":{ "type":"structure", "members":{ "Endpoint":{"shape":"Endpoint"} } }, "DeleteReplicationInstanceMessage":{ "type":"structure", "required":["ReplicationInstanceArn"], "members":{ "ReplicationInstanceArn":{"shape":"String"} } }, "DeleteReplicationInstanceResponse":{ "type":"structure", "members":{ "ReplicationInstance":{"shape":"ReplicationInstance"} } }, "DeleteReplicationSubnetGroupMessage":{ "type":"structure", "required":["ReplicationSubnetGroupIdentifier"], "members":{ "ReplicationSubnetGroupIdentifier":{"shape":"String"} } }, "DeleteReplicationSubnetGroupResponse":{ "type":"structure", "members":{ } }, "DeleteReplicationTaskMessage":{ "type":"structure", "required":["ReplicationTaskArn"], "members":{ "ReplicationTaskArn":{"shape":"String"} } }, "DeleteReplicationTaskResponse":{ "type":"structure", "members":{ "ReplicationTask":{"shape":"ReplicationTask"} } }, "DescribeAccountAttributesMessage":{ "type":"structure", "members":{ } }, "DescribeAccountAttributesResponse":{ "type":"structure", "members":{ "AccountQuotas":{"shape":"AccountQuotaList"} } }, "DescribeCertificatesMessage":{ "type":"structure", "members":{ "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeCertificatesResponse":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "Certificates":{"shape":"CertificateList"} } }, "DescribeConnectionsMessage":{ "type":"structure", "members":{ "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeConnectionsResponse":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "Connections":{"shape":"ConnectionList"} } }, "DescribeEndpointTypesMessage":{ "type":"structure", "members":{ "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEndpointTypesResponse":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "SupportedEndpointTypes":{"shape":"SupportedEndpointTypeList"} } }, "DescribeEndpointsMessage":{ "type":"structure", "members":{ "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEndpointsResponse":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "Endpoints":{"shape":"EndpointList"} } }, "DescribeOrderableReplicationInstancesMessage":{ "type":"structure", "members":{ "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeOrderableReplicationInstancesResponse":{ "type":"structure", "members":{ "OrderableReplicationInstances":{"shape":"OrderableReplicationInstanceList"}, "Marker":{"shape":"String"} } }, "DescribeRefreshSchemasStatusMessage":{ "type":"structure", "required":["EndpointArn"], "members":{ "EndpointArn":{"shape":"String"} } }, "DescribeRefreshSchemasStatusResponse":{ "type":"structure", "members":{ "RefreshSchemasStatus":{"shape":"RefreshSchemasStatus"} } }, "DescribeReplicationInstancesMessage":{ "type":"structure", "members":{ "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeReplicationInstancesResponse":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ReplicationInstances":{"shape":"ReplicationInstanceList"} } }, "DescribeReplicationSubnetGroupsMessage":{ "type":"structure", "members":{ "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeReplicationSubnetGroupsResponse":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ReplicationSubnetGroups":{"shape":"ReplicationSubnetGroups"} } }, "DescribeReplicationTasksMessage":{ "type":"structure", "members":{ "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeReplicationTasksResponse":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ReplicationTasks":{"shape":"ReplicationTaskList"} } }, "DescribeSchemasMessage":{ "type":"structure", "required":["EndpointArn"], "members":{ "EndpointArn":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeSchemasResponse":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "Schemas":{"shape":"SchemaList"} } }, "DescribeTableStatisticsMessage":{ "type":"structure", "required":["ReplicationTaskArn"], "members":{ "ReplicationTaskArn":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeTableStatisticsResponse":{ "type":"structure", "members":{ "ReplicationTaskArn":{"shape":"String"}, "TableStatistics":{"shape":"TableStatisticsList"}, "Marker":{"shape":"String"} } }, "DmsSslModeValue":{ "type":"string", "enum":[ "none", "require", "verify-ca", "verify-full" ] }, "Endpoint":{ "type":"structure", "members":{ "EndpointIdentifier":{"shape":"String"}, "EndpointType":{"shape":"ReplicationEndpointTypeValue"}, "EngineName":{"shape":"String"}, "Username":{"shape":"String"}, "ServerName":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "DatabaseName":{"shape":"String"}, "ExtraConnectionAttributes":{"shape":"String"}, "Status":{"shape":"String"}, "KmsKeyId":{"shape":"String"}, "EndpointArn":{"shape":"String"}, "CertificateArn":{"shape":"String"}, "SslMode":{"shape":"DmsSslModeValue"} } }, "EndpointList":{ "type":"list", "member":{ "shape":"Endpoint", "locationName":"Endpoint" } }, "ExceptionMessage":{"type":"string"}, "Filter":{ "type":"structure", "required":[ "Name", "Values" ], "members":{ "Name":{"shape":"String"}, "Values":{"shape":"FilterValueList"} } }, "FilterList":{ "type":"list", "member":{ "shape":"Filter", "locationName":"Filter" } }, "FilterValueList":{ "type":"list", "member":{ "shape":"String", "locationName":"Value" } }, "ImportCertificateMessage":{ "type":"structure", "required":["CertificateIdentifier"], "members":{ "CertificateIdentifier":{"shape":"String"}, "CertificatePem":{"shape":"String"} } }, "ImportCertificateResponse":{ "type":"structure", "members":{ "Certificate":{"shape":"Certificate"} } }, "InsufficientResourceCapacityFault":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "Integer":{"type":"integer"}, "IntegerOptional":{"type":"integer"}, "InvalidCertificateFault":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "InvalidResourceStateFault":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "InvalidSubnet":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "KMSKeyNotAccessibleFault":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "KeyList":{ "type":"list", "member":{"shape":"String"} }, "ListTagsForResourceMessage":{ "type":"structure", "required":["ResourceArn"], "members":{ "ResourceArn":{"shape":"String"} } }, "ListTagsForResourceResponse":{ "type":"structure", "members":{ "TagList":{"shape":"TagList"} } }, "Long":{"type":"long"}, "MigrationTypeValue":{ "type":"string", "enum":[ "full-load", "cdc", "full-load-and-cdc" ] }, "ModifyEndpointMessage":{ "type":"structure", "required":["EndpointArn"], "members":{ "EndpointArn":{"shape":"String"}, "EndpointIdentifier":{"shape":"String"}, "EndpointType":{"shape":"ReplicationEndpointTypeValue"}, "EngineName":{"shape":"String"}, "Username":{"shape":"String"}, "Password":{"shape":"SecretString"}, "ServerName":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "DatabaseName":{"shape":"String"}, "ExtraConnectionAttributes":{"shape":"String"}, "CertificateArn":{"shape":"String"}, "SslMode":{"shape":"DmsSslModeValue"} } }, "ModifyEndpointResponse":{ "type":"structure", "members":{ "Endpoint":{"shape":"Endpoint"} } }, "ModifyReplicationInstanceMessage":{ "type":"structure", "required":["ReplicationInstanceArn"], "members":{ "ReplicationInstanceArn":{"shape":"String"}, "AllocatedStorage":{"shape":"IntegerOptional"}, "ApplyImmediately":{"shape":"Boolean"}, "ReplicationInstanceClass":{"shape":"String"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "PreferredMaintenanceWindow":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "EngineVersion":{"shape":"String"}, "AllowMajorVersionUpgrade":{"shape":"Boolean"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "ReplicationInstanceIdentifier":{"shape":"String"} } }, "ModifyReplicationInstanceResponse":{ "type":"structure", "members":{ "ReplicationInstance":{"shape":"ReplicationInstance"} } }, "ModifyReplicationSubnetGroupMessage":{ "type":"structure", "required":[ "ReplicationSubnetGroupIdentifier", "SubnetIds" ], "members":{ "ReplicationSubnetGroupIdentifier":{"shape":"String"}, "ReplicationSubnetGroupDescription":{"shape":"String"}, "SubnetIds":{"shape":"SubnetIdentifierList"} } }, "ModifyReplicationSubnetGroupResponse":{ "type":"structure", "members":{ "ReplicationSubnetGroup":{"shape":"ReplicationSubnetGroup"} } }, "OrderableReplicationInstance":{ "type":"structure", "members":{ "EngineVersion":{"shape":"String"}, "ReplicationInstanceClass":{"shape":"String"}, "StorageType":{"shape":"String"}, "MinAllocatedStorage":{"shape":"Integer"}, "MaxAllocatedStorage":{"shape":"Integer"}, "DefaultAllocatedStorage":{"shape":"Integer"}, "IncludedAllocatedStorage":{"shape":"Integer"} } }, "OrderableReplicationInstanceList":{ "type":"list", "member":{ "shape":"OrderableReplicationInstance", "locationName":"OrderableReplicationInstance" } }, "RefreshSchemasMessage":{ "type":"structure", "required":[ "EndpointArn", "ReplicationInstanceArn" ], "members":{ "EndpointArn":{"shape":"String"}, "ReplicationInstanceArn":{"shape":"String"} } }, "RefreshSchemasResponse":{ "type":"structure", "members":{ "RefreshSchemasStatus":{"shape":"RefreshSchemasStatus"} } }, "RefreshSchemasStatus":{ "type":"structure", "members":{ "EndpointArn":{"shape":"String"}, "ReplicationInstanceArn":{"shape":"String"}, "Status":{"shape":"RefreshSchemasStatusTypeValue"}, "LastRefreshDate":{"shape":"TStamp"}, "LastFailureMessage":{"shape":"String"} } }, "RefreshSchemasStatusTypeValue":{ "type":"string", "enum":[ "successful", "failed", "refreshing" ] }, "RemoveTagsFromResourceMessage":{ "type":"structure", "required":[ "ResourceArn", "TagKeys" ], "members":{ "ResourceArn":{"shape":"String"}, "TagKeys":{"shape":"KeyList"} } }, "RemoveTagsFromResourceResponse":{ "type":"structure", "members":{ } }, "ReplicationEndpointTypeValue":{ "type":"string", "enum":[ "source", "target" ] }, "ReplicationInstance":{ "type":"structure", "members":{ "ReplicationInstanceIdentifier":{"shape":"String"}, "ReplicationInstanceClass":{"shape":"String"}, "ReplicationInstanceStatus":{"shape":"String"}, "AllocatedStorage":{"shape":"Integer"}, "InstanceCreateTime":{"shape":"TStamp"}, "VpcSecurityGroups":{"shape":"VpcSecurityGroupMembershipList"}, "AvailabilityZone":{"shape":"String"}, "ReplicationSubnetGroup":{"shape":"ReplicationSubnetGroup"}, "PreferredMaintenanceWindow":{"shape":"String"}, "PendingModifiedValues":{"shape":"ReplicationPendingModifiedValues"}, "MultiAZ":{"shape":"Boolean"}, "EngineVersion":{"shape":"String"}, "AutoMinorVersionUpgrade":{"shape":"Boolean"}, "KmsKeyId":{"shape":"String"}, "ReplicationInstanceArn":{"shape":"String"}, "ReplicationInstancePublicIpAddress":{ "shape":"String", "deprecated":true }, "ReplicationInstancePrivateIpAddress":{ "shape":"String", "deprecated":true }, "ReplicationInstancePublicIpAddresses":{"shape":"ReplicationInstancePublicIpAddressList"}, "ReplicationInstancePrivateIpAddresses":{"shape":"ReplicationInstancePrivateIpAddressList"}, "PubliclyAccessible":{"shape":"Boolean"} } }, "ReplicationInstanceList":{ "type":"list", "member":{ "shape":"ReplicationInstance", "locationName":"ReplicationInstance" } }, "ReplicationInstancePrivateIpAddressList":{ "type":"list", "member":{"shape":"String"} }, "ReplicationInstancePublicIpAddressList":{ "type":"list", "member":{"shape":"String"} }, "ReplicationPendingModifiedValues":{ "type":"structure", "members":{ "ReplicationInstanceClass":{"shape":"String"}, "AllocatedStorage":{"shape":"IntegerOptional"}, "MultiAZ":{"shape":"BooleanOptional"}, "EngineVersion":{"shape":"String"} } }, "ReplicationSubnetGroup":{ "type":"structure", "members":{ "ReplicationSubnetGroupIdentifier":{"shape":"String"}, "ReplicationSubnetGroupDescription":{"shape":"String"}, "VpcId":{"shape":"String"}, "SubnetGroupStatus":{"shape":"String"}, "Subnets":{"shape":"SubnetList"} } }, "ReplicationSubnetGroupDoesNotCoverEnoughAZs":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "ReplicationSubnetGroups":{ "type":"list", "member":{ "shape":"ReplicationSubnetGroup", "locationName":"ReplicationSubnetGroup" } }, "ReplicationTask":{ "type":"structure", "members":{ "ReplicationTaskIdentifier":{"shape":"String"}, "SourceEndpointArn":{"shape":"String"}, "TargetEndpointArn":{"shape":"String"}, "ReplicationInstanceArn":{"shape":"String"}, "MigrationType":{"shape":"MigrationTypeValue"}, "TableMappings":{"shape":"String"}, "ReplicationTaskSettings":{"shape":"String"}, "Status":{"shape":"String"}, "LastFailureMessage":{"shape":"String"}, "ReplicationTaskCreationDate":{"shape":"TStamp"}, "ReplicationTaskStartDate":{"shape":"TStamp"}, "ReplicationTaskArn":{"shape":"String"}, "ReplicationTaskStats":{"shape":"ReplicationTaskStats"} } }, "ReplicationTaskList":{ "type":"list", "member":{ "shape":"ReplicationTask", "locationName":"ReplicationTask" } }, "ReplicationTaskStats":{ "type":"structure", "members":{ "FullLoadProgressPercent":{"shape":"Integer"}, "ElapsedTimeMillis":{"shape":"Long"}, "TablesLoaded":{"shape":"Integer"}, "TablesLoading":{"shape":"Integer"}, "TablesQueued":{"shape":"Integer"}, "TablesErrored":{"shape":"Integer"} } }, "ResourceAlreadyExistsFault":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "ResourceNotFoundFault":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "ResourceQuotaExceededFault":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "SchemaList":{ "type":"list", "member":{"shape":"String"} }, "SecretString":{ "type":"string", "sensitive":true }, "StartReplicationTaskMessage":{ "type":"structure", "required":[ "ReplicationTaskArn", "StartReplicationTaskType" ], "members":{ "ReplicationTaskArn":{"shape":"String"}, "StartReplicationTaskType":{"shape":"StartReplicationTaskTypeValue"}, "CdcStartTime":{"shape":"TStamp"} } }, "StartReplicationTaskResponse":{ "type":"structure", "members":{ "ReplicationTask":{"shape":"ReplicationTask"} } }, "StartReplicationTaskTypeValue":{ "type":"string", "enum":[ "start-replication", "resume-processing", "reload-target" ] }, "StopReplicationTaskMessage":{ "type":"structure", "required":["ReplicationTaskArn"], "members":{ "ReplicationTaskArn":{"shape":"String"} } }, "StopReplicationTaskResponse":{ "type":"structure", "members":{ "ReplicationTask":{"shape":"ReplicationTask"} } }, "StorageQuotaExceededFault":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "String":{"type":"string"}, "Subnet":{ "type":"structure", "members":{ "SubnetIdentifier":{"shape":"String"}, "SubnetAvailabilityZone":{"shape":"AvailabilityZone"}, "SubnetStatus":{"shape":"String"} } }, "SubnetAlreadyInUse":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "SubnetIdentifierList":{ "type":"list", "member":{ "shape":"String", "locationName":"SubnetIdentifier" } }, "SubnetList":{ "type":"list", "member":{ "shape":"Subnet", "locationName":"Subnet" } }, "SupportedEndpointType":{ "type":"structure", "members":{ "EngineName":{"shape":"String"}, "SupportsCDC":{"shape":"Boolean"}, "EndpointType":{"shape":"ReplicationEndpointTypeValue"} } }, "SupportedEndpointTypeList":{ "type":"list", "member":{ "shape":"SupportedEndpointType", "locationName":"SupportedEndpointType" } }, "TStamp":{"type":"timestamp"}, "TableStatistics":{ "type":"structure", "members":{ "SchemaName":{"shape":"String"}, "TableName":{"shape":"String"}, "Inserts":{"shape":"Long"}, "Deletes":{"shape":"Long"}, "Updates":{"shape":"Long"}, "Ddls":{"shape":"Long"}, "FullLoadRows":{"shape":"Long"}, "LastUpdateTime":{"shape":"TStamp"}, "TableState":{"shape":"String"} } }, "TableStatisticsList":{ "type":"list", "member":{"shape":"TableStatistics"} }, "Tag":{ "type":"structure", "members":{ "Key":{"shape":"String"}, "Value":{"shape":"String"} } }, "TagList":{ "type":"list", "member":{ "shape":"Tag", "locationName":"Tag" } }, "TestConnectionMessage":{ "type":"structure", "required":[ "ReplicationInstanceArn", "EndpointArn" ], "members":{ "ReplicationInstanceArn":{"shape":"String"}, "EndpointArn":{"shape":"String"} } }, "TestConnectionResponse":{ "type":"structure", "members":{ "Connection":{"shape":"Connection"} } }, "UpgradeDependencyFailureFault":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "VpcSecurityGroupIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpcSecurityGroupId" } }, "VpcSecurityGroupMembership":{ "type":"structure", "members":{ "VpcSecurityGroupId":{"shape":"String"}, "Status":{"shape":"String"} } }, "VpcSecurityGroupMembershipList":{ "type":"list", "member":{ "shape":"VpcSecurityGroupMembership", "locationName":"VpcSecurityGroupMembership" } } } } aws-sdk-go-1.4.22/models/apis/dms/2016-01-01/docs-2.json000066400000000000000000001716671300374646400216150ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS Database Migration Service

        AWS Database Migration Service (AWS DMS) can migrate your data to and from the most widely used commercial and open-source databases such as Oracle, PostgreSQL, Microsoft SQL Server, Amazon Redshift, MariaDB, Amazon Aurora, and MySQL. The service supports homogeneous migrations such as Oracle to Oracle, as well as heterogeneous migrations between different database platforms, such as Oracle to MySQL or SQL Server to PostgreSQL.

        ", "operations": { "AddTagsToResource": "

        Adds metadata tags to a DMS resource, including replication instance, endpoint, security group, and migration task. These tags can also be used with cost allocation reporting to track cost associated with DMS resources, or used in a Condition statement in an IAM policy for DMS.

        ", "CreateEndpoint": "

        Creates an endpoint using the provided settings.

        ", "CreateReplicationInstance": "

        Creates the replication instance using the specified parameters.

        ", "CreateReplicationSubnetGroup": "

        Creates a replication subnet group given a list of the subnet IDs in a VPC.

        ", "CreateReplicationTask": "

        Creates a replication task using the specified parameters.

        ", "DeleteCertificate": "

        Deletes the specified certificate.

        ", "DeleteEndpoint": "

        Deletes the specified endpoint.

        All tasks associated with the endpoint must be deleted before you can delete the endpoint.

        ", "DeleteReplicationInstance": "

        Deletes the specified replication instance.

        You must delete any migration tasks that are associated with the replication instance before you can delete it.

        ", "DeleteReplicationSubnetGroup": "

        Deletes a subnet group.

        ", "DeleteReplicationTask": "

        Deletes the specified replication task.

        ", "DescribeAccountAttributes": "

        Lists all of the AWS DMS attributes for a customer account. The attributes include AWS DMS quotas for the account, such as the number of replication instances allowed. The description for a quota includes the quota name, current usage toward that quota, and the quota's maximum value.

        This command does not take any parameters.

        ", "DescribeCertificates": "

        Provides a description of the certificate.

        ", "DescribeConnections": "

        Describes the status of the connections that have been made between the replication instance and an endpoint. Connections are created when you test an endpoint.

        ", "DescribeEndpointTypes": "

        Returns information about the type of endpoints available.

        ", "DescribeEndpoints": "

        Returns information about the endpoints for your account in the current region.

        ", "DescribeOrderableReplicationInstances": "

        Returns information about the replication instance types that can be created in the specified region.

        ", "DescribeRefreshSchemasStatus": "

        Returns the status of the RefreshSchemas operation.

        ", "DescribeReplicationInstances": "

        Returns information about replication instances for your account in the current region.

        ", "DescribeReplicationSubnetGroups": "

        Returns information about the replication subnet groups.

        ", "DescribeReplicationTasks": "

        Returns information about replication tasks for your account in the current region.

        ", "DescribeSchemas": "

        Returns information about the schema for the specified endpoint.

        ", "DescribeTableStatistics": "

        Returns table statistics on the database migration task, including table name, rows inserted, rows updated, and rows deleted.

        ", "ImportCertificate": "

        Uploads the specified certificate.

        ", "ListTagsForResource": "

        Lists all tags for an AWS DMS resource.

        ", "ModifyEndpoint": "

        Modifies the specified endpoint.

        ", "ModifyReplicationInstance": "

        Modifies the replication instance to apply new settings. You can change one or more parameters by specifying these parameters and the new values in the request.

        Some settings are applied during the maintenance window.

        ", "ModifyReplicationSubnetGroup": "

        Modifies the settings for the specified replication subnet group.

        ", "RefreshSchemas": "

        Populates the schema for the specified endpoint. This is an asynchronous operation and can take several minutes. You can check the status of this operation by calling the DescribeRefreshSchemasStatus operation.

        ", "RemoveTagsFromResource": "

        Removes metadata tags from a DMS resource.

        ", "StartReplicationTask": "

        Starts the replication task.

        ", "StopReplicationTask": "

        Stops the replication task.

        ", "TestConnection": "

        Tests the connection between the replication instance and the endpoint.

        " }, "shapes": { "AccessDeniedFault": { "base": "

        AWS DMS was denied access to the endpoint.

        ", "refs": { } }, "AccountQuota": { "base": "

        Describes a quota for an AWS account, for example, the number of replication instances allowed.

        ", "refs": { "AccountQuotaList$member": null } }, "AccountQuotaList": { "base": null, "refs": { "DescribeAccountAttributesResponse$AccountQuotas": "

        Account quota information.

        " } }, "AddTagsToResourceMessage": { "base": "

        ", "refs": { } }, "AddTagsToResourceResponse": { "base": "

        ", "refs": { } }, "AvailabilityZone": { "base": "

        ", "refs": { "Subnet$SubnetAvailabilityZone": "

        The Availability Zone of the subnet.

        " } }, "Boolean": { "base": null, "refs": { "ModifyReplicationInstanceMessage$ApplyImmediately": "

        Indicates whether the changes should be applied immediately or during the next maintenance window.

        ", "ModifyReplicationInstanceMessage$AllowMajorVersionUpgrade": "

        Indicates that major version upgrades are allowed. Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible.

        Constraints: This parameter must be set to true when specifying a value for the EngineVersion parameter that is a different major version than the replication instance's current version.

        ", "ReplicationInstance$MultiAZ": "

        Specifies if the replication instance is a Multi-AZ deployment. You cannot set the AvailabilityZone parameter if the Multi-AZ parameter is set to true.

        ", "ReplicationInstance$AutoMinorVersionUpgrade": "

        Boolean value indicating if minor version upgrades will be automatically applied to the instance.

        ", "ReplicationInstance$PubliclyAccessible": "

        Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address. The default value is true.

        ", "SupportedEndpointType$SupportsCDC": "

        Indicates if Change Data Capture (CDC) is supported.

        " } }, "BooleanOptional": { "base": null, "refs": { "CreateReplicationInstanceMessage$MultiAZ": "

        Specifies if the replication instance is a Multi-AZ deployment. You cannot set the AvailabilityZone parameter if the Multi-AZ parameter is set to true.

        ", "CreateReplicationInstanceMessage$AutoMinorVersionUpgrade": "

        Indicates that minor engine upgrades will be applied automatically to the replication instance during the maintenance window.

        Default: true

        ", "CreateReplicationInstanceMessage$PubliclyAccessible": "

        Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address. The default value is true.

        ", "ModifyReplicationInstanceMessage$MultiAZ": "

        Specifies if the replication instance is a Multi-AZ deployment. You cannot set the AvailabilityZone parameter if the Multi-AZ parameter is set to true.

        ", "ModifyReplicationInstanceMessage$AutoMinorVersionUpgrade": "

        Indicates that minor version upgrades will be applied automatically to the replication instance during the maintenance window. Changing this parameter does not result in an outage except in the following case and the change is asynchronously applied as soon as possible. An outage will result if this parameter is set to true during the maintenance window, and a newer minor version is available, and AWS DMS has enabled auto patching for that engine version.

        ", "ReplicationPendingModifiedValues$MultiAZ": "

        Specifies if the replication instance is a Multi-AZ deployment. You cannot set the AvailabilityZone parameter if the Multi-AZ parameter is set to true.

        " } }, "Certificate": { "base": "

        The SSL certificate that can be used to encrypt connections between the endpoints and the replication instance.

        ", "refs": { "CertificateList$member": null, "DeleteCertificateResponse$Certificate": "

        The SSL certificate.

        ", "ImportCertificateResponse$Certificate": "

        The certificate to be uploaded.

        " } }, "CertificateList": { "base": null, "refs": { "DescribeCertificatesResponse$Certificates": "

        The SSL certificates associated with the replication instance.

        " } }, "Connection": { "base": "

        ", "refs": { "ConnectionList$member": null, "TestConnectionResponse$Connection": "

        The connection tested.

        " } }, "ConnectionList": { "base": null, "refs": { "DescribeConnectionsResponse$Connections": "

        A description of the connections.

        " } }, "CreateEndpointMessage": { "base": "

        ", "refs": { } }, "CreateEndpointResponse": { "base": "

        ", "refs": { } }, "CreateReplicationInstanceMessage": { "base": "

        ", "refs": { } }, "CreateReplicationInstanceResponse": { "base": "

        ", "refs": { } }, "CreateReplicationSubnetGroupMessage": { "base": "

        ", "refs": { } }, "CreateReplicationSubnetGroupResponse": { "base": "

        ", "refs": { } }, "CreateReplicationTaskMessage": { "base": "

        ", "refs": { } }, "CreateReplicationTaskResponse": { "base": "

        ", "refs": { } }, "DeleteCertificateMessage": { "base": null, "refs": { } }, "DeleteCertificateResponse": { "base": null, "refs": { } }, "DeleteEndpointMessage": { "base": "

        ", "refs": { } }, "DeleteEndpointResponse": { "base": "

        ", "refs": { } }, "DeleteReplicationInstanceMessage": { "base": "

        ", "refs": { } }, "DeleteReplicationInstanceResponse": { "base": "

        ", "refs": { } }, "DeleteReplicationSubnetGroupMessage": { "base": "

        ", "refs": { } }, "DeleteReplicationSubnetGroupResponse": { "base": "

        ", "refs": { } }, "DeleteReplicationTaskMessage": { "base": "

        ", "refs": { } }, "DeleteReplicationTaskResponse": { "base": "

        ", "refs": { } }, "DescribeAccountAttributesMessage": { "base": "

        ", "refs": { } }, "DescribeAccountAttributesResponse": { "base": "

        ", "refs": { } }, "DescribeCertificatesMessage": { "base": null, "refs": { } }, "DescribeCertificatesResponse": { "base": null, "refs": { } }, "DescribeConnectionsMessage": { "base": "

        ", "refs": { } }, "DescribeConnectionsResponse": { "base": "

        ", "refs": { } }, "DescribeEndpointTypesMessage": { "base": "

        ", "refs": { } }, "DescribeEndpointTypesResponse": { "base": "

        ", "refs": { } }, "DescribeEndpointsMessage": { "base": "

        ", "refs": { } }, "DescribeEndpointsResponse": { "base": "

        ", "refs": { } }, "DescribeOrderableReplicationInstancesMessage": { "base": "

        ", "refs": { } }, "DescribeOrderableReplicationInstancesResponse": { "base": "

        ", "refs": { } }, "DescribeRefreshSchemasStatusMessage": { "base": "

        ", "refs": { } }, "DescribeRefreshSchemasStatusResponse": { "base": "

        ", "refs": { } }, "DescribeReplicationInstancesMessage": { "base": "

        ", "refs": { } }, "DescribeReplicationInstancesResponse": { "base": "

        ", "refs": { } }, "DescribeReplicationSubnetGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeReplicationSubnetGroupsResponse": { "base": "

        ", "refs": { } }, "DescribeReplicationTasksMessage": { "base": "

        ", "refs": { } }, "DescribeReplicationTasksResponse": { "base": "

        ", "refs": { } }, "DescribeSchemasMessage": { "base": "

        ", "refs": { } }, "DescribeSchemasResponse": { "base": "

        ", "refs": { } }, "DescribeTableStatisticsMessage": { "base": "

        ", "refs": { } }, "DescribeTableStatisticsResponse": { "base": "

        ", "refs": { } }, "DmsSslModeValue": { "base": null, "refs": { "CreateEndpointMessage$SslMode": "

        The SSL mode to use for the SSL connection.

        SSL mode can be one of four values: none, require, verify-ca, verify-full.

        The default value is none.

        ", "Endpoint$SslMode": "

        The SSL mode used to connect to the endpoint.

        SSL mode can be one of four values: none, require, verify-ca, verify-full.

        The default value is none.

        ", "ModifyEndpointMessage$SslMode": "

        The SSL mode to be used.

        SSL mode can be one of four values: none, require, verify-ca, verify-full.

        The default value is none.

        " } }, "Endpoint": { "base": "

        ", "refs": { "CreateEndpointResponse$Endpoint": "

        The endpoint that was created.

        ", "DeleteEndpointResponse$Endpoint": "

        The endpoint that was deleted.

        ", "EndpointList$member": null, "ModifyEndpointResponse$Endpoint": "

        The modified endpoint.

        " } }, "EndpointList": { "base": null, "refs": { "DescribeEndpointsResponse$Endpoints": "

        Endpoint description.

        " } }, "ExceptionMessage": { "base": null, "refs": { "AccessDeniedFault$message": "

        ", "InsufficientResourceCapacityFault$message": "

        ", "InvalidCertificateFault$message": null, "InvalidResourceStateFault$message": "

        ", "InvalidSubnet$message": "

        ", "KMSKeyNotAccessibleFault$message": "

        ", "ReplicationSubnetGroupDoesNotCoverEnoughAZs$message": "

        ", "ResourceAlreadyExistsFault$message": "

        ", "ResourceNotFoundFault$message": "

        ", "ResourceQuotaExceededFault$message": "

        ", "StorageQuotaExceededFault$message": "

        ", "SubnetAlreadyInUse$message": "

        ", "UpgradeDependencyFailureFault$message": "

        " } }, "Filter": { "base": "

        ", "refs": { "FilterList$member": null } }, "FilterList": { "base": null, "refs": { "DescribeCertificatesMessage$Filters": "

        Filters applied to the certificate described in the form of key-value pairs.

        ", "DescribeConnectionsMessage$Filters": "

        The filters applied to the connection.

        Valid filter names: endpoint-arn | replication-instance-arn

        ", "DescribeEndpointTypesMessage$Filters": "

        Filters applied to the describe action.

        Valid filter names: engine-name | endpoint-type

        ", "DescribeEndpointsMessage$Filters": "

        Filters applied to the describe action.

        Valid filter names: endpoint-arn | endpoint-type | endpoint-id | engine-name

        ", "DescribeReplicationInstancesMessage$Filters": "

        Filters applied to the describe action.

        Valid filter names: replication-instance-arn | replication-instance-id | replication-instance-class | engine-version

        ", "DescribeReplicationSubnetGroupsMessage$Filters": "

        Filters applied to the describe action.

        ", "DescribeReplicationTasksMessage$Filters": "

        Filters applied to the describe action.

        Valid filter names: replication-task-arn | replication-task-id | migration-type | endpoint-arn | replication-instance-arn

        " } }, "FilterValueList": { "base": null, "refs": { "Filter$Values": "

        The filter value.

        " } }, "ImportCertificateMessage": { "base": null, "refs": { } }, "ImportCertificateResponse": { "base": null, "refs": { } }, "InsufficientResourceCapacityFault": { "base": "

        There are not enough resources allocated to the database migration.

        ", "refs": { } }, "Integer": { "base": null, "refs": { "OrderableReplicationInstance$MinAllocatedStorage": "

        The minimum amount of storage (in gigabytes) that can be allocated for the replication instance.

        ", "OrderableReplicationInstance$MaxAllocatedStorage": "

        The minimum amount of storage (in gigabytes) that can be allocated for the replication instance.

        ", "OrderableReplicationInstance$DefaultAllocatedStorage": "

        The default amount of storage (in gigabytes) that is allocated for the replication instance.

        ", "OrderableReplicationInstance$IncludedAllocatedStorage": "

        The amount of storage (in gigabytes) that is allocated for the replication instance.

        ", "ReplicationInstance$AllocatedStorage": "

        The amount of storage (in gigabytes) that is allocated for the replication instance.

        ", "ReplicationTaskStats$FullLoadProgressPercent": "

        The percent complete for the full load migration task.

        ", "ReplicationTaskStats$TablesLoaded": "

        The number of tables loaded for this task.

        ", "ReplicationTaskStats$TablesLoading": "

        The number of tables currently loading for this task.

        ", "ReplicationTaskStats$TablesQueued": "

        The number of tables queued for this task.

        ", "ReplicationTaskStats$TablesErrored": "

        The number of errors that have occurred during this task.

        " } }, "IntegerOptional": { "base": null, "refs": { "Certificate$KeyLength": "

        The key length of the cryptographic algorithm being used.

        ", "CreateEndpointMessage$Port": "

        The port used by the endpoint database.

        ", "CreateReplicationInstanceMessage$AllocatedStorage": "

        The amount of storage (in gigabytes) to be initially allocated for the replication instance.

        ", "DescribeCertificatesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 10

        ", "DescribeConnectionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeEndpointTypesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeEndpointsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeOrderableReplicationInstancesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeReplicationInstancesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeReplicationSubnetGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeReplicationTasksMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeSchemasMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeTableStatisticsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "Endpoint$Port": "

        The port value used to access the endpoint.

        ", "ModifyEndpointMessage$Port": "

        The port used by the endpoint database.

        ", "ModifyReplicationInstanceMessage$AllocatedStorage": "

        The amount of storage (in gigabytes) to be allocated for the replication instance.

        ", "ReplicationPendingModifiedValues$AllocatedStorage": "

        The amount of storage (in gigabytes) that is allocated for the replication instance.

        " } }, "InvalidCertificateFault": { "base": "

        The certificate was not valid.

        ", "refs": { } }, "InvalidResourceStateFault": { "base": "

        The resource is in a state that prevents it from being used for database migration.

        ", "refs": { } }, "InvalidSubnet": { "base": "

        The subnet provided is invalid.

        ", "refs": { } }, "KMSKeyNotAccessibleFault": { "base": "

        AWS DMS cannot access the KMS key.

        ", "refs": { } }, "KeyList": { "base": null, "refs": { "RemoveTagsFromResourceMessage$TagKeys": "

        The tag key (name) of the tag to be removed.

        " } }, "ListTagsForResourceMessage": { "base": "

        ", "refs": { } }, "ListTagsForResourceResponse": { "base": "

        ", "refs": { } }, "Long": { "base": null, "refs": { "AccountQuota$Used": "

        The amount currently used toward the quota maximum.

        ", "AccountQuota$Max": "

        The maximum allowed value for the quota.

        ", "ReplicationTaskStats$ElapsedTimeMillis": "

        The elapsed time of the task, in milliseconds.

        ", "TableStatistics$Inserts": "

        The number of insert actions performed on a table.

        ", "TableStatistics$Deletes": "

        The number of delete actions performed on a table.

        ", "TableStatistics$Updates": "

        The number of update actions performed on a table.

        ", "TableStatistics$Ddls": "

        The Data Definition Language (DDL) used to build and modify the structure of your tables.

        ", "TableStatistics$FullLoadRows": "

        The number of rows added during the Full Load operation.

        " } }, "MigrationTypeValue": { "base": null, "refs": { "CreateReplicationTaskMessage$MigrationType": "

        The migration type.

        ", "ReplicationTask$MigrationType": "

        The type of migration.

        " } }, "ModifyEndpointMessage": { "base": "

        ", "refs": { } }, "ModifyEndpointResponse": { "base": "

        ", "refs": { } }, "ModifyReplicationInstanceMessage": { "base": "

        ", "refs": { } }, "ModifyReplicationInstanceResponse": { "base": "

        ", "refs": { } }, "ModifyReplicationSubnetGroupMessage": { "base": "

        ", "refs": { } }, "ModifyReplicationSubnetGroupResponse": { "base": "

        ", "refs": { } }, "OrderableReplicationInstance": { "base": "

        ", "refs": { "OrderableReplicationInstanceList$member": null } }, "OrderableReplicationInstanceList": { "base": null, "refs": { "DescribeOrderableReplicationInstancesResponse$OrderableReplicationInstances": "

        The order-able replication instances available.

        " } }, "RefreshSchemasMessage": { "base": "

        ", "refs": { } }, "RefreshSchemasResponse": { "base": "

        ", "refs": { } }, "RefreshSchemasStatus": { "base": "

        ", "refs": { "DescribeRefreshSchemasStatusResponse$RefreshSchemasStatus": "

        The status of the schema.

        ", "RefreshSchemasResponse$RefreshSchemasStatus": "

        The status of the refreshed schema.

        " } }, "RefreshSchemasStatusTypeValue": { "base": null, "refs": { "RefreshSchemasStatus$Status": "

        The status of the schema.

        " } }, "RemoveTagsFromResourceMessage": { "base": "

        ", "refs": { } }, "RemoveTagsFromResourceResponse": { "base": "

        ", "refs": { } }, "ReplicationEndpointTypeValue": { "base": null, "refs": { "CreateEndpointMessage$EndpointType": "

        The type of endpoint.

        ", "Endpoint$EndpointType": "

        The type of endpoint.

        ", "ModifyEndpointMessage$EndpointType": "

        The type of endpoint.

        ", "SupportedEndpointType$EndpointType": "

        The type of endpoint.

        " } }, "ReplicationInstance": { "base": "

        ", "refs": { "CreateReplicationInstanceResponse$ReplicationInstance": "

        The replication instance that was created.

        ", "DeleteReplicationInstanceResponse$ReplicationInstance": "

        The replication instance that was deleted.

        ", "ModifyReplicationInstanceResponse$ReplicationInstance": "

        The modified replication instance.

        ", "ReplicationInstanceList$member": null } }, "ReplicationInstanceList": { "base": null, "refs": { "DescribeReplicationInstancesResponse$ReplicationInstances": "

        The replication instances described.

        " } }, "ReplicationInstancePrivateIpAddressList": { "base": null, "refs": { "ReplicationInstance$ReplicationInstancePrivateIpAddresses": "

        The private IP address of the replication instance.

        " } }, "ReplicationInstancePublicIpAddressList": { "base": null, "refs": { "ReplicationInstance$ReplicationInstancePublicIpAddresses": "

        The public IP address of the replication instance.

        " } }, "ReplicationPendingModifiedValues": { "base": "

        ", "refs": { "ReplicationInstance$PendingModifiedValues": "

        The pending modification values.

        " } }, "ReplicationSubnetGroup": { "base": "

        ", "refs": { "CreateReplicationSubnetGroupResponse$ReplicationSubnetGroup": "

        The replication subnet group that was created.

        ", "ModifyReplicationSubnetGroupResponse$ReplicationSubnetGroup": "

        The modified replication subnet group.

        ", "ReplicationInstance$ReplicationSubnetGroup": "

        The subnet group for the replication instance.

        ", "ReplicationSubnetGroups$member": null } }, "ReplicationSubnetGroupDoesNotCoverEnoughAZs": { "base": "

        The replication subnet group does not cover enough Availability Zones (AZs). Edit the replication subnet group and add more AZs.

        ", "refs": { } }, "ReplicationSubnetGroups": { "base": null, "refs": { "DescribeReplicationSubnetGroupsResponse$ReplicationSubnetGroups": "

        A description of the replication subnet groups.

        " } }, "ReplicationTask": { "base": "

        ", "refs": { "CreateReplicationTaskResponse$ReplicationTask": "

        The replication task that was created.

        ", "DeleteReplicationTaskResponse$ReplicationTask": "

        The deleted replication task.

        ", "ReplicationTaskList$member": null, "StartReplicationTaskResponse$ReplicationTask": "

        The replication task started.

        ", "StopReplicationTaskResponse$ReplicationTask": "

        The replication task stopped.

        " } }, "ReplicationTaskList": { "base": null, "refs": { "DescribeReplicationTasksResponse$ReplicationTasks": "

        A description of the replication tasks.

        " } }, "ReplicationTaskStats": { "base": "

        ", "refs": { "ReplicationTask$ReplicationTaskStats": "

        The statistics for the task, including elapsed time, tables loaded, and table errors.

        " } }, "ResourceAlreadyExistsFault": { "base": "

        The resource you are attempting to create already exists.

        ", "refs": { } }, "ResourceNotFoundFault": { "base": "

        The resource could not be found.

        ", "refs": { } }, "ResourceQuotaExceededFault": { "base": "

        The quota for this resource quota has been exceeded.

        ", "refs": { } }, "SchemaList": { "base": null, "refs": { "DescribeSchemasResponse$Schemas": "

        The described schema.

        " } }, "SecretString": { "base": null, "refs": { "CreateEndpointMessage$Password": "

        The password to be used to login to the endpoint database.

        ", "ModifyEndpointMessage$Password": "

        The password to be used to login to the endpoint database.

        " } }, "StartReplicationTaskMessage": { "base": "

        ", "refs": { } }, "StartReplicationTaskResponse": { "base": "

        ", "refs": { } }, "StartReplicationTaskTypeValue": { "base": null, "refs": { "StartReplicationTaskMessage$StartReplicationTaskType": "

        The type of replication task.

        " } }, "StopReplicationTaskMessage": { "base": "

        ", "refs": { } }, "StopReplicationTaskResponse": { "base": "

        ", "refs": { } }, "StorageQuotaExceededFault": { "base": "

        The storage quota has been exceeded.

        ", "refs": { } }, "String": { "base": null, "refs": { "AccountQuota$AccountQuotaName": "

        The name of the AWS DMS quota for this AWS account.

        ", "AddTagsToResourceMessage$ResourceArn": "

        The Amazon Resource Name (ARN) of the AWS DMS resource the tag is to be added to. AWS DMS resources include a replication instance, endpoint, and a replication task.

        ", "AvailabilityZone$Name": "

        The name of the availability zone.

        ", "Certificate$CertificateIdentifier": "

        The customer-assigned name of the certificate. Valid characters are [A-z_0-9].

        ", "Certificate$CertificatePem": "

        The contents of the .pem X.509 certificate file.

        ", "Certificate$CertificateArn": "

        The Amazon Resource Name (ARN) for the certificate.

        ", "Certificate$CertificateOwner": "

        The owner of the certificate.

        ", "Certificate$SigningAlgorithm": "

        The signing algorithm for the certificate.

        ", "Connection$ReplicationInstanceArn": "

        The Amazon Resource Name (ARN) of the replication instance.

        ", "Connection$EndpointArn": "

        The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

        ", "Connection$Status": "

        The connection status.

        ", "Connection$LastFailureMessage": "

        The error message when the connection last failed.

        ", "Connection$EndpointIdentifier": "

        The identifier of the endpoint. Identifiers must begin with a letter; must contain only ASCII letters, digits, and hyphens; and must not end with a hyphen or contain two consecutive hyphens.

        ", "Connection$ReplicationInstanceIdentifier": "

        The replication instance identifier. This parameter is stored as a lowercase string.

        ", "CreateEndpointMessage$EndpointIdentifier": "

        The database endpoint identifier. Identifiers must begin with a letter; must contain only ASCII letters, digits, and hyphens; and must not end with a hyphen or contain two consecutive hyphens.

        ", "CreateEndpointMessage$EngineName": "

        The type of engine for the endpoint. Valid values include MYSQL, ORACLE, POSTGRES, MARIADB, AURORA, REDSHIFT, and SQLSERVER.

        ", "CreateEndpointMessage$Username": "

        The user name to be used to login to the endpoint database.

        ", "CreateEndpointMessage$ServerName": "

        The name of the server where the endpoint database resides.

        ", "CreateEndpointMessage$DatabaseName": "

        The name of the endpoint database.

        ", "CreateEndpointMessage$ExtraConnectionAttributes": "

        Additional attributes associated with the connection.

        ", "CreateEndpointMessage$KmsKeyId": "

        The KMS key identifier that will be used to encrypt the connection parameters. If you do not specify a value for the KmsKeyId parameter, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.

        ", "CreateEndpointMessage$CertificateArn": "

        The Amazon Resource Number (ARN) for the certificate.

        ", "CreateReplicationInstanceMessage$ReplicationInstanceIdentifier": "

        The replication instance identifier. This parameter is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        Example: myrepinstance

        ", "CreateReplicationInstanceMessage$ReplicationInstanceClass": "

        The compute and memory capacity of the replication instance as specified by the replication instance class.

        Valid Values: dms.t2.micro | dms.t2.small | dms.t2.medium | dms.t2.large | dms.c4.large | dms.c4.xlarge | dms.c4.2xlarge | dms.c4.4xlarge

        ", "CreateReplicationInstanceMessage$AvailabilityZone": "

        The EC2 Availability Zone that the replication instance will be created in.

        Default: A random, system-chosen Availability Zone in the endpoint's region.

        Example: us-east-1d

        ", "CreateReplicationInstanceMessage$ReplicationSubnetGroupIdentifier": "

        A subnet group to associate with the replication instance.

        ", "CreateReplicationInstanceMessage$PreferredMaintenanceWindow": "

        The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

        Format: ddd:hh24:mi-ddd:hh24:mi

        Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week.

        Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun

        Constraints: Minimum 30-minute window.

        ", "CreateReplicationInstanceMessage$EngineVersion": "

        The engine version number of the replication instance.

        ", "CreateReplicationInstanceMessage$KmsKeyId": "

        The KMS key identifier that will be used to encrypt the content on the replication instance. If you do not specify a value for the KmsKeyId parameter, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.

        ", "CreateReplicationSubnetGroupMessage$ReplicationSubnetGroupIdentifier": "

        The name for the replication subnet group. This value is stored as a lowercase string.

        Constraints: Must contain no more than 255 alphanumeric characters, periods, spaces, underscores, or hyphens. Must not be \"default\".

        Example: mySubnetgroup

        ", "CreateReplicationSubnetGroupMessage$ReplicationSubnetGroupDescription": "

        The description for the subnet group.

        ", "CreateReplicationTaskMessage$ReplicationTaskIdentifier": "

        The replication task identifier.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        ", "CreateReplicationTaskMessage$SourceEndpointArn": "

        The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

        ", "CreateReplicationTaskMessage$TargetEndpointArn": "

        The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

        ", "CreateReplicationTaskMessage$ReplicationInstanceArn": "

        The Amazon Resource Name (ARN) of the replication instance.

        ", "CreateReplicationTaskMessage$TableMappings": "

        The path of the JSON file that contains the table mappings. Preceed the path with \"file://\".

        For example, --table-mappings file://mappingfile.json

        ", "CreateReplicationTaskMessage$ReplicationTaskSettings": "

        Settings for the task, such as target metadata settings.

        ", "DeleteCertificateMessage$CertificateArn": "

        the Amazon Resource Name (ARN) of the deleted certificate.

        ", "DeleteEndpointMessage$EndpointArn": "

        The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

        ", "DeleteReplicationInstanceMessage$ReplicationInstanceArn": "

        The Amazon Resource Name (ARN) of the replication instance to be deleted.

        ", "DeleteReplicationSubnetGroupMessage$ReplicationSubnetGroupIdentifier": "

        The subnet group name of the replication instance.

        ", "DeleteReplicationTaskMessage$ReplicationTaskArn": "

        The Amazon Resource Name (ARN) of the replication task to be deleted.

        ", "DescribeCertificatesMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeCertificatesResponse$Marker": "

        The pagination token.

        ", "DescribeConnectionsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeConnectionsResponse$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeEndpointTypesMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeEndpointTypesResponse$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeEndpointsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeEndpointsResponse$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeOrderableReplicationInstancesMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeOrderableReplicationInstancesResponse$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeRefreshSchemasStatusMessage$EndpointArn": "

        The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

        ", "DescribeReplicationInstancesMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeReplicationInstancesResponse$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeReplicationSubnetGroupsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeReplicationSubnetGroupsResponse$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeReplicationTasksMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeReplicationTasksResponse$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeSchemasMessage$EndpointArn": "

        The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

        ", "DescribeSchemasMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeSchemasResponse$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeTableStatisticsMessage$ReplicationTaskArn": "

        The Amazon Resource Name (ARN) of the replication task.

        ", "DescribeTableStatisticsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeTableStatisticsResponse$ReplicationTaskArn": "

        The Amazon Resource Name (ARN) of the replication task.

        ", "DescribeTableStatisticsResponse$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "Endpoint$EndpointIdentifier": "

        The database endpoint identifier. Identifiers must begin with a letter; must contain only ASCII letters, digits, and hyphens; and must not end with a hyphen or contain two consecutive hyphens.

        ", "Endpoint$EngineName": "

        The database engine name.

        ", "Endpoint$Username": "

        The user name used to connect to the endpoint.

        ", "Endpoint$ServerName": "

        The name of the server at the endpoint.

        ", "Endpoint$DatabaseName": "

        The name of the database at the endpoint.

        ", "Endpoint$ExtraConnectionAttributes": "

        Additional connection attributes used to connect to the endpoint.

        ", "Endpoint$Status": "

        The status of the endpoint.

        ", "Endpoint$KmsKeyId": "

        The KMS key identifier that will be used to encrypt the connection parameters. If you do not specify a value for the KmsKeyId parameter, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.

        ", "Endpoint$EndpointArn": "

        The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

        ", "Endpoint$CertificateArn": "

        The Amazon Resource Name (ARN) used for SSL connection to the endpoint.

        ", "Filter$Name": "

        The name of the filter.

        ", "FilterValueList$member": null, "ImportCertificateMessage$CertificateIdentifier": "

        The customer-assigned name of the certificate. Valid characters are [A-z_0-9].

        ", "ImportCertificateMessage$CertificatePem": "

        The contents of the .pem X.509 certificate file.

        ", "KeyList$member": null, "ListTagsForResourceMessage$ResourceArn": "

        The Amazon Resource Name (ARN) string that uniquely identifies the AWS DMS resource.

        ", "ModifyEndpointMessage$EndpointArn": "

        The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

        ", "ModifyEndpointMessage$EndpointIdentifier": "

        The database endpoint identifier. Identifiers must begin with a letter; must contain only ASCII letters, digits, and hyphens; and must not end with a hyphen or contain two consecutive hyphens.

        ", "ModifyEndpointMessage$EngineName": "

        The type of engine for the endpoint. Valid values include MYSQL, ORACLE, POSTGRES, MARIADB, AURORA, REDSHIFT, and SQLSERVER.

        ", "ModifyEndpointMessage$Username": "

        The user name to be used to login to the endpoint database.

        ", "ModifyEndpointMessage$ServerName": "

        The name of the server where the endpoint database resides.

        ", "ModifyEndpointMessage$DatabaseName": "

        The name of the endpoint database.

        ", "ModifyEndpointMessage$ExtraConnectionAttributes": "

        Additional attributes associated with the connection.

        ", "ModifyEndpointMessage$CertificateArn": "

        The Amazon Resource Name (ARN) of the certificate used for SSL connection.

        ", "ModifyReplicationInstanceMessage$ReplicationInstanceArn": "

        The Amazon Resource Name (ARN) of the replication instance.

        ", "ModifyReplicationInstanceMessage$ReplicationInstanceClass": "

        The compute and memory capacity of the replication instance.

        Valid Values: dms.t2.micro | dms.t2.small | dms.t2.medium | dms.t2.large | dms.c4.large | dms.c4.xlarge | dms.c4.2xlarge | dms.c4.4xlarge

        ", "ModifyReplicationInstanceMessage$PreferredMaintenanceWindow": "

        The weekly time range (in UTC) during which system maintenance can occur, which might result in an outage. Changing this parameter does not result in an outage, except in the following situation, and the change is asynchronously applied as soon as possible. If moving this window to the current time, there must be at least 30 minutes between the current time and end of the window to ensure pending changes are applied.

        Default: Uses existing setting

        Format: ddd:hh24:mi-ddd:hh24:mi

        Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

        Constraints: Must be at least 30 minutes

        ", "ModifyReplicationInstanceMessage$EngineVersion": "

        The engine version number of the replication instance.

        ", "ModifyReplicationInstanceMessage$ReplicationInstanceIdentifier": "

        The replication instance identifier. This parameter is stored as a lowercase string.

        ", "ModifyReplicationSubnetGroupMessage$ReplicationSubnetGroupIdentifier": "

        The name of the replication instance subnet group.

        ", "ModifyReplicationSubnetGroupMessage$ReplicationSubnetGroupDescription": "

        The description of the replication instance subnet group.

        ", "OrderableReplicationInstance$EngineVersion": "

        The version of the replication engine.

        ", "OrderableReplicationInstance$ReplicationInstanceClass": "

        The compute and memory capacity of the replication instance.

        Valid Values: dms.t2.micro | dms.t2.small | dms.t2.medium | dms.t2.large | dms.c4.large | dms.c4.xlarge | dms.c4.2xlarge | dms.c4.4xlarge

        ", "OrderableReplicationInstance$StorageType": "

        The type of storage used by the replication instance.

        ", "RefreshSchemasMessage$EndpointArn": "

        The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

        ", "RefreshSchemasMessage$ReplicationInstanceArn": "

        The Amazon Resource Name (ARN) of the replication instance.

        ", "RefreshSchemasStatus$EndpointArn": "

        The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

        ", "RefreshSchemasStatus$ReplicationInstanceArn": "

        The Amazon Resource Name (ARN) of the replication instance.

        ", "RefreshSchemasStatus$LastFailureMessage": "

        The last failure message for the schema.

        ", "RemoveTagsFromResourceMessage$ResourceArn": "

        >The Amazon Resource Name (ARN) of the AWS DMS resource the tag is to be removed from.

        ", "ReplicationInstance$ReplicationInstanceIdentifier": "

        The replication instance identifier. This parameter is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        Example: myrepinstance

        ", "ReplicationInstance$ReplicationInstanceClass": "

        The compute and memory capacity of the replication instance.

        Valid Values: dms.t2.micro | dms.t2.small | dms.t2.medium | dms.t2.large | dms.c4.large | dms.c4.xlarge | dms.c4.2xlarge | dms.c4.4xlarge

        ", "ReplicationInstance$ReplicationInstanceStatus": "

        The status of the replication instance.

        ", "ReplicationInstance$AvailabilityZone": "

        The Availability Zone for the instance.

        ", "ReplicationInstance$PreferredMaintenanceWindow": "

        The maintenance window times for the replication instance.

        ", "ReplicationInstance$EngineVersion": "

        The engine version number of the replication instance.

        ", "ReplicationInstance$KmsKeyId": "

        The KMS key identifier that is used to encrypt the content on the replication instance. If you do not specify a value for the KmsKeyId parameter, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.

        ", "ReplicationInstance$ReplicationInstanceArn": "

        The Amazon Resource Name (ARN) of the replication instance.

        ", "ReplicationInstance$ReplicationInstancePublicIpAddress": "

        The public IP address of the replication instance.

        ", "ReplicationInstance$ReplicationInstancePrivateIpAddress": "

        The private IP address of the replication instance.

        ", "ReplicationInstancePrivateIpAddressList$member": null, "ReplicationInstancePublicIpAddressList$member": null, "ReplicationPendingModifiedValues$ReplicationInstanceClass": "

        The compute and memory capacity of the replication instance.

        Valid Values: dms.t2.micro | dms.t2.small | dms.t2.medium | dms.t2.large | dms.c4.large | dms.c4.xlarge | dms.c4.2xlarge | dms.c4.4xlarge

        ", "ReplicationPendingModifiedValues$EngineVersion": "

        The engine version number of the replication instance.

        ", "ReplicationSubnetGroup$ReplicationSubnetGroupIdentifier": "

        The identifier of the replication instance subnet group.

        ", "ReplicationSubnetGroup$ReplicationSubnetGroupDescription": "

        The description of the replication subnet group.

        ", "ReplicationSubnetGroup$VpcId": "

        The ID of the VPC.

        ", "ReplicationSubnetGroup$SubnetGroupStatus": "

        The status of the subnet group.

        ", "ReplicationTask$ReplicationTaskIdentifier": "

        The replication task identifier.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        ", "ReplicationTask$SourceEndpointArn": "

        The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

        ", "ReplicationTask$TargetEndpointArn": "

        The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

        ", "ReplicationTask$ReplicationInstanceArn": "

        The Amazon Resource Name (ARN) of the replication instance.

        ", "ReplicationTask$TableMappings": "

        Table mappings specified in the task.

        ", "ReplicationTask$ReplicationTaskSettings": "

        The settings for the replication task.

        ", "ReplicationTask$Status": "

        The status of the replication task.

        ", "ReplicationTask$LastFailureMessage": "

        The last error (failure) message generated for the replication instance.

        ", "ReplicationTask$ReplicationTaskArn": "

        The Amazon Resource Name (ARN) of the replication task.

        ", "SchemaList$member": null, "StartReplicationTaskMessage$ReplicationTaskArn": "

        The Amazon Resource Number (ARN) of the replication task to be started.

        ", "StopReplicationTaskMessage$ReplicationTaskArn": "

        The Amazon Resource Number(ARN) of the replication task to be stopped.

        ", "Subnet$SubnetIdentifier": "

        The subnet identifier.

        ", "Subnet$SubnetStatus": "

        The status of the subnet.

        ", "SubnetIdentifierList$member": null, "SupportedEndpointType$EngineName": "

        The database engine name.

        ", "TableStatistics$SchemaName": "

        The schema name.

        ", "TableStatistics$TableName": "

        The name of the table.

        ", "TableStatistics$TableState": "

        The state of the table.

        ", "Tag$Key": "

        A key is the required name of the tag. The string value can be from 1 to 128 Unicode characters in length and cannot be prefixed with \"aws:\" or \"dms:\". The string can only contain only the set of Unicode letters, digits, white-space, '_', '.', '/', '=', '+', '-' (Java regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:/=+\\\\-]*)$\").

        ", "Tag$Value": "

        A value is the optional value of the tag. The string value can be from 1 to 256 Unicode characters in length and cannot be prefixed with \"aws:\" or \"dms:\". The string can only contain only the set of Unicode letters, digits, white-space, '_', '.', '/', '=', '+', '-' (Java regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:/=+\\\\-]*)$\").

        ", "TestConnectionMessage$ReplicationInstanceArn": "

        The Amazon Resource Name (ARN) of the replication instance.

        ", "TestConnectionMessage$EndpointArn": "

        The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

        ", "VpcSecurityGroupIdList$member": null, "VpcSecurityGroupMembership$VpcSecurityGroupId": "

        The VPC security group Id.

        ", "VpcSecurityGroupMembership$Status": "

        The status of the VPC security group.

        " } }, "Subnet": { "base": "

        ", "refs": { "SubnetList$member": null } }, "SubnetAlreadyInUse": { "base": "

        The specified subnet is already in use.

        ", "refs": { } }, "SubnetIdentifierList": { "base": null, "refs": { "CreateReplicationSubnetGroupMessage$SubnetIds": "

        The EC2 subnet IDs for the subnet group.

        ", "ModifyReplicationSubnetGroupMessage$SubnetIds": "

        A list of subnet IDs.

        " } }, "SubnetList": { "base": null, "refs": { "ReplicationSubnetGroup$Subnets": "

        The subnets that are in the subnet group.

        " } }, "SupportedEndpointType": { "base": "

        ", "refs": { "SupportedEndpointTypeList$member": null } }, "SupportedEndpointTypeList": { "base": null, "refs": { "DescribeEndpointTypesResponse$SupportedEndpointTypes": "

        The type of endpoints that are supported.

        " } }, "TStamp": { "base": null, "refs": { "Certificate$CertificateCreationDate": "

        the date the certificate was created.

        ", "Certificate$ValidFromDate": "

        The beginning date the certificate is valid.

        ", "Certificate$ValidToDate": "

        the final date the certificate is valid.

        ", "CreateReplicationTaskMessage$CdcStartTime": "

        The start time for the Change Data Capture (CDC) operation.

        ", "RefreshSchemasStatus$LastRefreshDate": "

        The date the schema was last refreshed.

        ", "ReplicationInstance$InstanceCreateTime": "

        The time the replication instance was created.

        ", "ReplicationTask$ReplicationTaskCreationDate": "

        The date the replication task was created.

        ", "ReplicationTask$ReplicationTaskStartDate": "

        The date the replication task is scheduled to start.

        ", "StartReplicationTaskMessage$CdcStartTime": "

        The start time for the Change Data Capture (CDC) operation.

        ", "TableStatistics$LastUpdateTime": "

        The last time the table was updated.

        " } }, "TableStatistics": { "base": "

        ", "refs": { "TableStatisticsList$member": null } }, "TableStatisticsList": { "base": null, "refs": { "DescribeTableStatisticsResponse$TableStatistics": "

        The table statistics.

        " } }, "Tag": { "base": "

        ", "refs": { "TagList$member": null } }, "TagList": { "base": null, "refs": { "AddTagsToResourceMessage$Tags": "

        The tag to be assigned to the DMS resource.

        ", "CreateEndpointMessage$Tags": "

        Tags to be added to the endpoint.

        ", "CreateReplicationInstanceMessage$Tags": "

        Tags to be associated with the replication instance.

        ", "CreateReplicationSubnetGroupMessage$Tags": "

        The tag to be assigned to the subnet group.

        ", "CreateReplicationTaskMessage$Tags": "

        Tags to be added to the replication instance.

        ", "ListTagsForResourceResponse$TagList": "

        A list of tags for the resource.

        " } }, "TestConnectionMessage": { "base": "

        ", "refs": { } }, "TestConnectionResponse": { "base": "

        ", "refs": { } }, "UpgradeDependencyFailureFault": { "base": "

        An upgrade dependency is preventing the database migration.

        ", "refs": { } }, "VpcSecurityGroupIdList": { "base": null, "refs": { "CreateReplicationInstanceMessage$VpcSecurityGroupIds": "

        Specifies the VPC security group to be used with the replication instance. The VPC security group must work with the VPC containing the replication instance.

        ", "ModifyReplicationInstanceMessage$VpcSecurityGroupIds": "

        Specifies the VPC security group to be used with the replication instance. The VPC security group must work with the VPC containing the replication instance.

        " } }, "VpcSecurityGroupMembership": { "base": "

        ", "refs": { "VpcSecurityGroupMembershipList$member": null } }, "VpcSecurityGroupMembershipList": { "base": null, "refs": { "ReplicationInstance$VpcSecurityGroups": "

        The VPC security group for the instance.

        " } } } } aws-sdk-go-1.4.22/models/apis/dms/2016-01-01/examples-1.json000066400000000000000000000000541300374646400224570ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/ds/000077500000000000000000000000001300374646400164105ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/ds/2015-04-16/000077500000000000000000000000001300374646400174445ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/ds/2015-04-16/api-2.json000066400000000000000000001374261300374646400212640ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-04-16", "endpointPrefix":"ds", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"Directory Service", "serviceFullName":"AWS Directory Service", "signatureVersion":"v4", "targetPrefix":"DirectoryService_20150416" }, "operations":{ "AddIpRoutes":{ "name":"AddIpRoutes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddIpRoutesRequest"}, "output":{"shape":"AddIpRoutesResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"EntityAlreadyExistsException"}, {"shape":"InvalidParameterException"}, {"shape":"DirectoryUnavailableException"}, {"shape":"IpRouteLimitExceededException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "AddTagsToResource":{ "name":"AddTagsToResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsToResourceRequest"}, "output":{"shape":"AddTagsToResourceResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidParameterException"}, {"shape":"TagLimitExceededException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "ConnectDirectory":{ "name":"ConnectDirectory", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ConnectDirectoryRequest"}, "output":{"shape":"ConnectDirectoryResult"}, "errors":[ {"shape":"DirectoryLimitExceededException"}, {"shape":"InvalidParameterException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "CreateAlias":{ "name":"CreateAlias", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateAliasRequest"}, "output":{"shape":"CreateAliasResult"}, "errors":[ {"shape":"EntityAlreadyExistsException"}, {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidParameterException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "CreateComputer":{ "name":"CreateComputer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateComputerRequest"}, "output":{"shape":"CreateComputerResult"}, "errors":[ {"shape":"AuthenticationFailedException"}, {"shape":"DirectoryUnavailableException"}, {"shape":"EntityAlreadyExistsException"}, {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidParameterException"}, {"shape":"UnsupportedOperationException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "CreateConditionalForwarder":{ "name":"CreateConditionalForwarder", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateConditionalForwarderRequest"}, "output":{"shape":"CreateConditionalForwarderResult"}, "errors":[ {"shape":"EntityAlreadyExistsException"}, {"shape":"EntityDoesNotExistException"}, {"shape":"DirectoryUnavailableException"}, {"shape":"InvalidParameterException"}, {"shape":"UnsupportedOperationException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "CreateDirectory":{ "name":"CreateDirectory", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDirectoryRequest"}, "output":{"shape":"CreateDirectoryResult"}, "errors":[ {"shape":"DirectoryLimitExceededException"}, {"shape":"InvalidParameterException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "CreateMicrosoftAD":{ "name":"CreateMicrosoftAD", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateMicrosoftADRequest"}, "output":{"shape":"CreateMicrosoftADResult"}, "errors":[ {"shape":"DirectoryLimitExceededException"}, {"shape":"InvalidParameterException"}, {"shape":"ClientException"}, {"shape":"ServiceException"}, {"shape":"UnsupportedOperationException"} ] }, "CreateSnapshot":{ "name":"CreateSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSnapshotRequest"}, "output":{"shape":"CreateSnapshotResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidParameterException"}, {"shape":"SnapshotLimitExceededException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "CreateTrust":{ "name":"CreateTrust", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateTrustRequest"}, "output":{"shape":"CreateTrustResult"}, "errors":[ {"shape":"EntityAlreadyExistsException"}, {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidParameterException"}, {"shape":"ClientException"}, {"shape":"ServiceException"}, {"shape":"UnsupportedOperationException"} ] }, "DeleteConditionalForwarder":{ "name":"DeleteConditionalForwarder", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteConditionalForwarderRequest"}, "output":{"shape":"DeleteConditionalForwarderResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"DirectoryUnavailableException"}, {"shape":"InvalidParameterException"}, {"shape":"UnsupportedOperationException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "DeleteDirectory":{ "name":"DeleteDirectory", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDirectoryRequest"}, "output":{"shape":"DeleteDirectoryResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "DeleteSnapshot":{ "name":"DeleteSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSnapshotRequest"}, "output":{"shape":"DeleteSnapshotResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidParameterException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "DeleteTrust":{ "name":"DeleteTrust", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteTrustRequest"}, "output":{"shape":"DeleteTrustResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidParameterException"}, {"shape":"ClientException"}, {"shape":"ServiceException"}, {"shape":"UnsupportedOperationException"} ] }, "DeregisterEventTopic":{ "name":"DeregisterEventTopic", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeregisterEventTopicRequest"}, "output":{"shape":"DeregisterEventTopicResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidParameterException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "DescribeConditionalForwarders":{ "name":"DescribeConditionalForwarders", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeConditionalForwardersRequest"}, "output":{"shape":"DescribeConditionalForwardersResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"DirectoryUnavailableException"}, {"shape":"InvalidParameterException"}, {"shape":"UnsupportedOperationException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "DescribeDirectories":{ "name":"DescribeDirectories", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDirectoriesRequest"}, "output":{"shape":"DescribeDirectoriesResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidNextTokenException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "DescribeEventTopics":{ "name":"DescribeEventTopics", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventTopicsRequest"}, "output":{"shape":"DescribeEventTopicsResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidParameterException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "DescribeSnapshots":{ "name":"DescribeSnapshots", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSnapshotsRequest"}, "output":{"shape":"DescribeSnapshotsResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidNextTokenException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "DescribeTrusts":{ "name":"DescribeTrusts", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTrustsRequest"}, "output":{"shape":"DescribeTrustsResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidNextTokenException"}, {"shape":"InvalidParameterException"}, {"shape":"ClientException"}, {"shape":"ServiceException"}, {"shape":"UnsupportedOperationException"} ] }, "DisableRadius":{ "name":"DisableRadius", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableRadiusRequest"}, "output":{"shape":"DisableRadiusResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "DisableSso":{ "name":"DisableSso", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableSsoRequest"}, "output":{"shape":"DisableSsoResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"InsufficientPermissionsException"}, {"shape":"AuthenticationFailedException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "EnableRadius":{ "name":"EnableRadius", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableRadiusRequest"}, "output":{"shape":"EnableRadiusResult"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"EntityAlreadyExistsException"}, {"shape":"EntityDoesNotExistException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "EnableSso":{ "name":"EnableSso", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableSsoRequest"}, "output":{"shape":"EnableSsoResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"InsufficientPermissionsException"}, {"shape":"AuthenticationFailedException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "GetDirectoryLimits":{ "name":"GetDirectoryLimits", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetDirectoryLimitsRequest"}, "output":{"shape":"GetDirectoryLimitsResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "GetSnapshotLimits":{ "name":"GetSnapshotLimits", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetSnapshotLimitsRequest"}, "output":{"shape":"GetSnapshotLimitsResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "ListIpRoutes":{ "name":"ListIpRoutes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListIpRoutesRequest"}, "output":{"shape":"ListIpRoutesResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidNextTokenException"}, {"shape":"InvalidParameterException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTagsForResourceRequest"}, "output":{"shape":"ListTagsForResourceResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidNextTokenException"}, {"shape":"InvalidParameterException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "RegisterEventTopic":{ "name":"RegisterEventTopic", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterEventTopicRequest"}, "output":{"shape":"RegisterEventTopicResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidParameterException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "RemoveIpRoutes":{ "name":"RemoveIpRoutes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveIpRoutesRequest"}, "output":{"shape":"RemoveIpRoutesResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidParameterException"}, {"shape":"DirectoryUnavailableException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "RemoveTagsFromResource":{ "name":"RemoveTagsFromResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsFromResourceRequest"}, "output":{"shape":"RemoveTagsFromResourceResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidParameterException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "RestoreFromSnapshot":{ "name":"RestoreFromSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreFromSnapshotRequest"}, "output":{"shape":"RestoreFromSnapshotResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidParameterException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "UpdateConditionalForwarder":{ "name":"UpdateConditionalForwarder", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateConditionalForwarderRequest"}, "output":{"shape":"UpdateConditionalForwarderResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"DirectoryUnavailableException"}, {"shape":"InvalidParameterException"}, {"shape":"UnsupportedOperationException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "UpdateRadius":{ "name":"UpdateRadius", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateRadiusRequest"}, "output":{"shape":"UpdateRadiusResult"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"EntityDoesNotExistException"}, {"shape":"ClientException"}, {"shape":"ServiceException"} ] }, "VerifyTrust":{ "name":"VerifyTrust", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"VerifyTrustRequest"}, "output":{"shape":"VerifyTrustResult"}, "errors":[ {"shape":"EntityDoesNotExistException"}, {"shape":"InvalidParameterException"}, {"shape":"ClientException"}, {"shape":"ServiceException"}, {"shape":"UnsupportedOperationException"} ] } }, "shapes":{ "AccessUrl":{ "type":"string", "max":128, "min":1 }, "AddIpRoutesRequest":{ "type":"structure", "required":[ "DirectoryId", "IpRoutes" ], "members":{ "DirectoryId":{"shape":"DirectoryId"}, "IpRoutes":{"shape":"IpRoutes"}, "UpdateSecurityGroupForDirectoryControllers":{"shape":"UpdateSecurityGroupForDirectoryControllers"} } }, "AddIpRoutesResult":{ "type":"structure", "members":{ } }, "AddTagsToResourceRequest":{ "type":"structure", "required":[ "ResourceId", "Tags" ], "members":{ "ResourceId":{"shape":"ResourceId"}, "Tags":{"shape":"Tags"} } }, "AddTagsToResourceResult":{ "type":"structure", "members":{ } }, "AddedDateTime":{"type":"timestamp"}, "AliasName":{ "type":"string", "max":62, "min":1, "pattern":"^(?!d-)([\\da-zA-Z]+)([-]*[\\da-zA-Z])*" }, "Attribute":{ "type":"structure", "members":{ "Name":{"shape":"AttributeName"}, "Value":{"shape":"AttributeValue"} } }, "AttributeName":{ "type":"string", "min":1 }, "AttributeValue":{"type":"string"}, "Attributes":{ "type":"list", "member":{"shape":"Attribute"} }, "AuthenticationFailedException":{ "type":"structure", "members":{ "Message":{"shape":"ExceptionMessage"}, "RequestId":{"shape":"RequestId"} }, "exception":true }, "AvailabilityZone":{"type":"string"}, "AvailabilityZones":{ "type":"list", "member":{"shape":"AvailabilityZone"} }, "CidrIp":{ "type":"string", "pattern":"^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/([1-9]|[1-2][0-9]|3[0-2]))$" }, "CidrIps":{ "type":"list", "member":{"shape":"CidrIp"} }, "ClientException":{ "type":"structure", "members":{ "Message":{"shape":"ExceptionMessage"}, "RequestId":{"shape":"RequestId"} }, "exception":true }, "CloudOnlyDirectoriesLimitReached":{"type":"boolean"}, "Computer":{ "type":"structure", "members":{ "ComputerId":{"shape":"SID"}, "ComputerName":{"shape":"ComputerName"}, "ComputerAttributes":{"shape":"Attributes"} } }, "ComputerName":{ "type":"string", "max":15, "min":1 }, "ComputerPassword":{ "type":"string", "max":64, "min":8, "pattern":"[\\u0020-\\u00FF]+", "sensitive":true }, "ConditionalForwarder":{ "type":"structure", "members":{ "RemoteDomainName":{"shape":"RemoteDomainName"}, "DnsIpAddrs":{"shape":"DnsIpAddrs"}, "ReplicationScope":{"shape":"ReplicationScope"} } }, "ConditionalForwarders":{ "type":"list", "member":{"shape":"ConditionalForwarder"} }, "ConnectDirectoryRequest":{ "type":"structure", "required":[ "Name", "Password", "Size", "ConnectSettings" ], "members":{ "Name":{"shape":"DirectoryName"}, "ShortName":{"shape":"DirectoryShortName"}, "Password":{"shape":"ConnectPassword"}, "Description":{"shape":"Description"}, "Size":{"shape":"DirectorySize"}, "ConnectSettings":{"shape":"DirectoryConnectSettings"} } }, "ConnectDirectoryResult":{ "type":"structure", "members":{ "DirectoryId":{"shape":"DirectoryId"} } }, "ConnectPassword":{ "type":"string", "max":128, "min":1, "sensitive":true }, "ConnectedDirectoriesLimitReached":{"type":"boolean"}, "CreateAliasRequest":{ "type":"structure", "required":[ "DirectoryId", "Alias" ], "members":{ "DirectoryId":{"shape":"DirectoryId"}, "Alias":{"shape":"AliasName"} } }, "CreateAliasResult":{ "type":"structure", "members":{ "DirectoryId":{"shape":"DirectoryId"}, "Alias":{"shape":"AliasName"} } }, "CreateComputerRequest":{ "type":"structure", "required":[ "DirectoryId", "ComputerName", "Password" ], "members":{ "DirectoryId":{"shape":"DirectoryId"}, "ComputerName":{"shape":"ComputerName"}, "Password":{"shape":"ComputerPassword"}, "OrganizationalUnitDistinguishedName":{"shape":"OrganizationalUnitDN"}, "ComputerAttributes":{"shape":"Attributes"} } }, "CreateComputerResult":{ "type":"structure", "members":{ "Computer":{"shape":"Computer"} } }, "CreateConditionalForwarderRequest":{ "type":"structure", "required":[ "DirectoryId", "RemoteDomainName", "DnsIpAddrs" ], "members":{ "DirectoryId":{"shape":"DirectoryId"}, "RemoteDomainName":{"shape":"RemoteDomainName"}, "DnsIpAddrs":{"shape":"DnsIpAddrs"} } }, "CreateConditionalForwarderResult":{ "type":"structure", "members":{ } }, "CreateDirectoryRequest":{ "type":"structure", "required":[ "Name", "Password", "Size" ], "members":{ "Name":{"shape":"DirectoryName"}, "ShortName":{"shape":"DirectoryShortName"}, "Password":{"shape":"Password"}, "Description":{"shape":"Description"}, "Size":{"shape":"DirectorySize"}, "VpcSettings":{"shape":"DirectoryVpcSettings"} } }, "CreateDirectoryResult":{ "type":"structure", "members":{ "DirectoryId":{"shape":"DirectoryId"} } }, "CreateMicrosoftADRequest":{ "type":"structure", "required":[ "Name", "Password", "VpcSettings" ], "members":{ "Name":{"shape":"DirectoryName"}, "ShortName":{"shape":"DirectoryShortName"}, "Password":{"shape":"Password"}, "Description":{"shape":"Description"}, "VpcSettings":{"shape":"DirectoryVpcSettings"} } }, "CreateMicrosoftADResult":{ "type":"structure", "members":{ "DirectoryId":{"shape":"DirectoryId"} } }, "CreateSnapshotRequest":{ "type":"structure", "required":["DirectoryId"], "members":{ "DirectoryId":{"shape":"DirectoryId"}, "Name":{"shape":"SnapshotName"} } }, "CreateSnapshotResult":{ "type":"structure", "members":{ "SnapshotId":{"shape":"SnapshotId"} } }, "CreateTrustRequest":{ "type":"structure", "required":[ "DirectoryId", "RemoteDomainName", "TrustPassword", "TrustDirection" ], "members":{ "DirectoryId":{"shape":"DirectoryId"}, "RemoteDomainName":{"shape":"RemoteDomainName"}, "TrustPassword":{"shape":"TrustPassword"}, "TrustDirection":{"shape":"TrustDirection"}, "TrustType":{"shape":"TrustType"}, "ConditionalForwarderIpAddrs":{"shape":"DnsIpAddrs"} } }, "CreateTrustResult":{ "type":"structure", "members":{ "TrustId":{"shape":"TrustId"} } }, "CreatedDateTime":{"type":"timestamp"}, "DeleteAssociatedConditionalForwarder":{"type":"boolean"}, "DeleteConditionalForwarderRequest":{ "type":"structure", "required":[ "DirectoryId", "RemoteDomainName" ], "members":{ "DirectoryId":{"shape":"DirectoryId"}, "RemoteDomainName":{"shape":"RemoteDomainName"} } }, "DeleteConditionalForwarderResult":{ "type":"structure", "members":{ } }, "DeleteDirectoryRequest":{ "type":"structure", "required":["DirectoryId"], "members":{ "DirectoryId":{"shape":"DirectoryId"} } }, "DeleteDirectoryResult":{ "type":"structure", "members":{ "DirectoryId":{"shape":"DirectoryId"} } }, "DeleteSnapshotRequest":{ "type":"structure", "required":["SnapshotId"], "members":{ "SnapshotId":{"shape":"SnapshotId"} } }, "DeleteSnapshotResult":{ "type":"structure", "members":{ "SnapshotId":{"shape":"SnapshotId"} } }, "DeleteTrustRequest":{ "type":"structure", "required":["TrustId"], "members":{ "TrustId":{"shape":"TrustId"}, "DeleteAssociatedConditionalForwarder":{"shape":"DeleteAssociatedConditionalForwarder"} } }, "DeleteTrustResult":{ "type":"structure", "members":{ "TrustId":{"shape":"TrustId"} } }, "DeregisterEventTopicRequest":{ "type":"structure", "required":[ "DirectoryId", "TopicName" ], "members":{ "DirectoryId":{"shape":"DirectoryId"}, "TopicName":{"shape":"TopicName"} } }, "DeregisterEventTopicResult":{ "type":"structure", "members":{ } }, "DescribeConditionalForwardersRequest":{ "type":"structure", "required":["DirectoryId"], "members":{ "DirectoryId":{"shape":"DirectoryId"}, "RemoteDomainNames":{"shape":"RemoteDomainNames"} } }, "DescribeConditionalForwardersResult":{ "type":"structure", "members":{ "ConditionalForwarders":{"shape":"ConditionalForwarders"} } }, "DescribeDirectoriesRequest":{ "type":"structure", "members":{ "DirectoryIds":{"shape":"DirectoryIds"}, "NextToken":{"shape":"NextToken"}, "Limit":{"shape":"Limit"} } }, "DescribeDirectoriesResult":{ "type":"structure", "members":{ "DirectoryDescriptions":{"shape":"DirectoryDescriptions"}, "NextToken":{"shape":"NextToken"} } }, "DescribeEventTopicsRequest":{ "type":"structure", "members":{ "DirectoryId":{"shape":"DirectoryId"}, "TopicNames":{"shape":"TopicNames"} } }, "DescribeEventTopicsResult":{ "type":"structure", "members":{ "EventTopics":{"shape":"EventTopics"} } }, "DescribeSnapshotsRequest":{ "type":"structure", "members":{ "DirectoryId":{"shape":"DirectoryId"}, "SnapshotIds":{"shape":"SnapshotIds"}, "NextToken":{"shape":"NextToken"}, "Limit":{"shape":"Limit"} } }, "DescribeSnapshotsResult":{ "type":"structure", "members":{ "Snapshots":{"shape":"Snapshots"}, "NextToken":{"shape":"NextToken"} } }, "DescribeTrustsRequest":{ "type":"structure", "members":{ "DirectoryId":{"shape":"DirectoryId"}, "TrustIds":{"shape":"TrustIds"}, "NextToken":{"shape":"NextToken"}, "Limit":{"shape":"Limit"} } }, "DescribeTrustsResult":{ "type":"structure", "members":{ "Trusts":{"shape":"Trusts"}, "NextToken":{"shape":"NextToken"} } }, "Description":{ "type":"string", "max":128, "min":0, "pattern":"^([a-zA-Z0-9_])[\\\\a-zA-Z0-9_@#%*+=:?./!\\s-]*$" }, "DirectoryConnectSettings":{ "type":"structure", "required":[ "VpcId", "SubnetIds", "CustomerDnsIps", "CustomerUserName" ], "members":{ "VpcId":{"shape":"VpcId"}, "SubnetIds":{"shape":"SubnetIds"}, "CustomerDnsIps":{"shape":"DnsIpAddrs"}, "CustomerUserName":{"shape":"UserName"} } }, "DirectoryConnectSettingsDescription":{ "type":"structure", "members":{ "VpcId":{"shape":"VpcId"}, "SubnetIds":{"shape":"SubnetIds"}, "CustomerUserName":{"shape":"UserName"}, "SecurityGroupId":{"shape":"SecurityGroupId"}, "AvailabilityZones":{"shape":"AvailabilityZones"}, "ConnectIps":{"shape":"IpAddrs"} } }, "DirectoryDescription":{ "type":"structure", "members":{ "DirectoryId":{"shape":"DirectoryId"}, "Name":{"shape":"DirectoryName"}, "ShortName":{"shape":"DirectoryShortName"}, "Size":{"shape":"DirectorySize"}, "Alias":{"shape":"AliasName"}, "AccessUrl":{"shape":"AccessUrl"}, "Description":{"shape":"Description"}, "DnsIpAddrs":{"shape":"DnsIpAddrs"}, "Stage":{"shape":"DirectoryStage"}, "LaunchTime":{"shape":"LaunchTime"}, "StageLastUpdatedDateTime":{"shape":"LastUpdatedDateTime"}, "Type":{"shape":"DirectoryType"}, "VpcSettings":{"shape":"DirectoryVpcSettingsDescription"}, "ConnectSettings":{"shape":"DirectoryConnectSettingsDescription"}, "RadiusSettings":{"shape":"RadiusSettings"}, "RadiusStatus":{"shape":"RadiusStatus"}, "StageReason":{"shape":"StageReason"}, "SsoEnabled":{"shape":"SsoEnabled"} } }, "DirectoryDescriptions":{ "type":"list", "member":{"shape":"DirectoryDescription"} }, "DirectoryId":{ "type":"string", "pattern":"^d-[0-9a-f]{10}$" }, "DirectoryIds":{ "type":"list", "member":{"shape":"DirectoryId"} }, "DirectoryLimitExceededException":{ "type":"structure", "members":{ "Message":{"shape":"ExceptionMessage"}, "RequestId":{"shape":"RequestId"} }, "exception":true }, "DirectoryLimits":{ "type":"structure", "members":{ "CloudOnlyDirectoriesLimit":{"shape":"Limit"}, "CloudOnlyDirectoriesCurrentCount":{"shape":"Limit"}, "CloudOnlyDirectoriesLimitReached":{"shape":"CloudOnlyDirectoriesLimitReached"}, "CloudOnlyMicrosoftADLimit":{"shape":"Limit"}, "CloudOnlyMicrosoftADCurrentCount":{"shape":"Limit"}, "CloudOnlyMicrosoftADLimitReached":{"shape":"CloudOnlyDirectoriesLimitReached"}, "ConnectedDirectoriesLimit":{"shape":"Limit"}, "ConnectedDirectoriesCurrentCount":{"shape":"Limit"}, "ConnectedDirectoriesLimitReached":{"shape":"ConnectedDirectoriesLimitReached"} } }, "DirectoryName":{ "type":"string", "pattern":"^([a-zA-Z0-9]+[\\\\.-])+([a-zA-Z0-9])+$" }, "DirectoryShortName":{ "type":"string", "pattern":"^[^\\\\/:*?\\\"\\<\\>|.]+[^\\\\/:*?\\\"<>|]*$" }, "DirectorySize":{ "type":"string", "enum":[ "Small", "Large" ] }, "DirectoryStage":{ "type":"string", "enum":[ "Requested", "Creating", "Created", "Active", "Inoperable", "Impaired", "Restoring", "RestoreFailed", "Deleting", "Deleted", "Failed" ] }, "DirectoryType":{ "type":"string", "enum":[ "SimpleAD", "ADConnector", "MicrosoftAD" ] }, "DirectoryUnavailableException":{ "type":"structure", "members":{ "Message":{"shape":"ExceptionMessage"}, "RequestId":{"shape":"RequestId"} }, "exception":true }, "DirectoryVpcSettings":{ "type":"structure", "required":[ "VpcId", "SubnetIds" ], "members":{ "VpcId":{"shape":"VpcId"}, "SubnetIds":{"shape":"SubnetIds"} } }, "DirectoryVpcSettingsDescription":{ "type":"structure", "members":{ "VpcId":{"shape":"VpcId"}, "SubnetIds":{"shape":"SubnetIds"}, "SecurityGroupId":{"shape":"SecurityGroupId"}, "AvailabilityZones":{"shape":"AvailabilityZones"} } }, "DisableRadiusRequest":{ "type":"structure", "required":["DirectoryId"], "members":{ "DirectoryId":{"shape":"DirectoryId"} } }, "DisableRadiusResult":{ "type":"structure", "members":{ } }, "DisableSsoRequest":{ "type":"structure", "required":["DirectoryId"], "members":{ "DirectoryId":{"shape":"DirectoryId"}, "UserName":{"shape":"UserName"}, "Password":{"shape":"ConnectPassword"} } }, "DisableSsoResult":{ "type":"structure", "members":{ } }, "DnsIpAddrs":{ "type":"list", "member":{"shape":"IpAddr"} }, "EnableRadiusRequest":{ "type":"structure", "required":[ "DirectoryId", "RadiusSettings" ], "members":{ "DirectoryId":{"shape":"DirectoryId"}, "RadiusSettings":{"shape":"RadiusSettings"} } }, "EnableRadiusResult":{ "type":"structure", "members":{ } }, "EnableSsoRequest":{ "type":"structure", "required":["DirectoryId"], "members":{ "DirectoryId":{"shape":"DirectoryId"}, "UserName":{"shape":"UserName"}, "Password":{"shape":"ConnectPassword"} } }, "EnableSsoResult":{ "type":"structure", "members":{ } }, "EntityAlreadyExistsException":{ "type":"structure", "members":{ "Message":{"shape":"ExceptionMessage"}, "RequestId":{"shape":"RequestId"} }, "exception":true }, "EntityDoesNotExistException":{ "type":"structure", "members":{ "Message":{"shape":"ExceptionMessage"}, "RequestId":{"shape":"RequestId"} }, "exception":true }, "EventTopic":{ "type":"structure", "members":{ "DirectoryId":{"shape":"DirectoryId"}, "TopicName":{"shape":"TopicName"}, "TopicArn":{"shape":"TopicArn"}, "CreatedDateTime":{"shape":"CreatedDateTime"}, "Status":{"shape":"TopicStatus"} } }, "EventTopics":{ "type":"list", "member":{"shape":"EventTopic"} }, "ExceptionMessage":{"type":"string"}, "GetDirectoryLimitsRequest":{ "type":"structure", "members":{ } }, "GetDirectoryLimitsResult":{ "type":"structure", "members":{ "DirectoryLimits":{"shape":"DirectoryLimits"} } }, "GetSnapshotLimitsRequest":{ "type":"structure", "required":["DirectoryId"], "members":{ "DirectoryId":{"shape":"DirectoryId"} } }, "GetSnapshotLimitsResult":{ "type":"structure", "members":{ "SnapshotLimits":{"shape":"SnapshotLimits"} } }, "InsufficientPermissionsException":{ "type":"structure", "members":{ "Message":{"shape":"ExceptionMessage"}, "RequestId":{"shape":"RequestId"} }, "exception":true }, "InvalidNextTokenException":{ "type":"structure", "members":{ "Message":{"shape":"ExceptionMessage"}, "RequestId":{"shape":"RequestId"} }, "exception":true }, "InvalidParameterException":{ "type":"structure", "members":{ "Message":{"shape":"ExceptionMessage"}, "RequestId":{"shape":"RequestId"} }, "exception":true }, "IpAddr":{ "type":"string", "pattern":"^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$" }, "IpAddrs":{ "type":"list", "member":{"shape":"IpAddr"} }, "IpRoute":{ "type":"structure", "members":{ "CidrIp":{"shape":"CidrIp"}, "Description":{"shape":"Description"} } }, "IpRouteInfo":{ "type":"structure", "members":{ "DirectoryId":{"shape":"DirectoryId"}, "CidrIp":{"shape":"CidrIp"}, "IpRouteStatusMsg":{"shape":"IpRouteStatusMsg"}, "AddedDateTime":{"shape":"AddedDateTime"}, "IpRouteStatusReason":{"shape":"IpRouteStatusReason"}, "Description":{"shape":"Description"} } }, "IpRouteLimitExceededException":{ "type":"structure", "members":{ "Message":{"shape":"ExceptionMessage"}, "RequestId":{"shape":"RequestId"} }, "exception":true }, "IpRouteStatusMsg":{ "type":"string", "enum":[ "Adding", "Added", "Removing", "Removed", "AddFailed", "RemoveFailed" ] }, "IpRouteStatusReason":{"type":"string"}, "IpRoutes":{ "type":"list", "member":{"shape":"IpRoute"} }, "IpRoutesInfo":{ "type":"list", "member":{"shape":"IpRouteInfo"} }, "LastUpdatedDateTime":{"type":"timestamp"}, "LaunchTime":{"type":"timestamp"}, "Limit":{ "type":"integer", "min":0 }, "ListIpRoutesRequest":{ "type":"structure", "required":["DirectoryId"], "members":{ "DirectoryId":{"shape":"DirectoryId"}, "NextToken":{"shape":"NextToken"}, "Limit":{"shape":"Limit"} } }, "ListIpRoutesResult":{ "type":"structure", "members":{ "IpRoutesInfo":{"shape":"IpRoutesInfo"}, "NextToken":{"shape":"NextToken"} } }, "ListTagsForResourceRequest":{ "type":"structure", "required":["ResourceId"], "members":{ "ResourceId":{"shape":"ResourceId"}, "NextToken":{"shape":"NextToken"}, "Limit":{"shape":"Limit"} } }, "ListTagsForResourceResult":{ "type":"structure", "members":{ "Tags":{"shape":"Tags"}, "NextToken":{"shape":"NextToken"} } }, "ManualSnapshotsLimitReached":{"type":"boolean"}, "NextToken":{"type":"string"}, "OrganizationalUnitDN":{ "type":"string", "max":2000, "min":1 }, "Password":{ "type":"string", "pattern":"(?=^.{8,64}$)((?=.*\\d)(?=.*[A-Z])(?=.*[a-z])|(?=.*\\d)(?=.*[^A-Za-z0-9\\s])(?=.*[a-z])|(?=.*[^A-Za-z0-9\\s])(?=.*[A-Z])(?=.*[a-z])|(?=.*\\d)(?=.*[A-Z])(?=.*[^A-Za-z0-9\\s]))^.*", "sensitive":true }, "PortNumber":{ "type":"integer", "max":65535, "min":1025 }, "RadiusAuthenticationProtocol":{ "type":"string", "enum":[ "PAP", "CHAP", "MS-CHAPv1", "MS-CHAPv2" ] }, "RadiusDisplayLabel":{ "type":"string", "max":64, "min":1 }, "RadiusRetries":{ "type":"integer", "max":10, "min":0 }, "RadiusSettings":{ "type":"structure", "members":{ "RadiusServers":{"shape":"Servers"}, "RadiusPort":{"shape":"PortNumber"}, "RadiusTimeout":{"shape":"RadiusTimeout"}, "RadiusRetries":{"shape":"RadiusRetries"}, "SharedSecret":{"shape":"RadiusSharedSecret"}, "AuthenticationProtocol":{"shape":"RadiusAuthenticationProtocol"}, "DisplayLabel":{"shape":"RadiusDisplayLabel"}, "UseSameUsername":{"shape":"UseSameUsername"} } }, "RadiusSharedSecret":{ "type":"string", "max":512, "min":8, "sensitive":true }, "RadiusStatus":{ "type":"string", "enum":[ "Creating", "Completed", "Failed" ] }, "RadiusTimeout":{ "type":"integer", "max":20, "min":1 }, "RegisterEventTopicRequest":{ "type":"structure", "required":[ "DirectoryId", "TopicName" ], "members":{ "DirectoryId":{"shape":"DirectoryId"}, "TopicName":{"shape":"TopicName"} } }, "RegisterEventTopicResult":{ "type":"structure", "members":{ } }, "RemoteDomainName":{ "type":"string", "pattern":"^([a-zA-Z0-9]+[\\\\.-])+([a-zA-Z0-9])+[.]?$" }, "RemoteDomainNames":{ "type":"list", "member":{"shape":"RemoteDomainName"} }, "RemoveIpRoutesRequest":{ "type":"structure", "required":[ "DirectoryId", "CidrIps" ], "members":{ "DirectoryId":{"shape":"DirectoryId"}, "CidrIps":{"shape":"CidrIps"} } }, "RemoveIpRoutesResult":{ "type":"structure", "members":{ } }, "RemoveTagsFromResourceRequest":{ "type":"structure", "required":[ "ResourceId", "TagKeys" ], "members":{ "ResourceId":{"shape":"ResourceId"}, "TagKeys":{"shape":"TagKeys"} } }, "RemoveTagsFromResourceResult":{ "type":"structure", "members":{ } }, "ReplicationScope":{ "type":"string", "enum":["Domain"] }, "RequestId":{ "type":"string", "pattern":"^([A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{12})$" }, "ResourceId":{ "type":"string", "pattern":"^[d]-[0-9a-f]{10}$" }, "RestoreFromSnapshotRequest":{ "type":"structure", "required":["SnapshotId"], "members":{ "SnapshotId":{"shape":"SnapshotId"} } }, "RestoreFromSnapshotResult":{ "type":"structure", "members":{ } }, "SID":{ "type":"string", "max":256, "min":1, "pattern":"[&\\w+-.@]+" }, "SecurityGroupId":{ "type":"string", "pattern":"^(sg-[0-9a-f]{8})$" }, "Server":{ "type":"string", "max":256, "min":1 }, "Servers":{ "type":"list", "member":{"shape":"Server"} }, "ServiceException":{ "type":"structure", "members":{ "Message":{"shape":"ExceptionMessage"}, "RequestId":{"shape":"RequestId"} }, "exception":true, "fault":true }, "Snapshot":{ "type":"structure", "members":{ "DirectoryId":{"shape":"DirectoryId"}, "SnapshotId":{"shape":"SnapshotId"}, "Type":{"shape":"SnapshotType"}, "Name":{"shape":"SnapshotName"}, "Status":{"shape":"SnapshotStatus"}, "StartTime":{"shape":"StartTime"} } }, "SnapshotId":{ "type":"string", "pattern":"^s-[0-9a-f]{10}$" }, "SnapshotIds":{ "type":"list", "member":{"shape":"SnapshotId"} }, "SnapshotLimitExceededException":{ "type":"structure", "members":{ "Message":{"shape":"ExceptionMessage"}, "RequestId":{"shape":"RequestId"} }, "exception":true }, "SnapshotLimits":{ "type":"structure", "members":{ "ManualSnapshotsLimit":{"shape":"Limit"}, "ManualSnapshotsCurrentCount":{"shape":"Limit"}, "ManualSnapshotsLimitReached":{"shape":"ManualSnapshotsLimitReached"} } }, "SnapshotName":{ "type":"string", "max":128, "min":0, "pattern":"^([a-zA-Z0-9_])[\\\\a-zA-Z0-9_@#%*+=:?./!\\s-]*$" }, "SnapshotStatus":{ "type":"string", "enum":[ "Creating", "Completed", "Failed" ] }, "SnapshotType":{ "type":"string", "enum":[ "Auto", "Manual" ] }, "Snapshots":{ "type":"list", "member":{"shape":"Snapshot"} }, "SsoEnabled":{"type":"boolean"}, "StageReason":{"type":"string"}, "StartTime":{"type":"timestamp"}, "StateLastUpdatedDateTime":{"type":"timestamp"}, "SubnetId":{ "type":"string", "pattern":"^(subnet-[0-9a-f]{8})$" }, "SubnetIds":{ "type":"list", "member":{"shape":"SubnetId"} }, "Tag":{ "type":"structure", "required":[ "Key", "Value" ], "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{ "type":"string", "max":128, "min":1, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "TagKeys":{ "type":"list", "member":{"shape":"TagKey"} }, "TagLimitExceededException":{ "type":"structure", "members":{ "Message":{"shape":"ExceptionMessage"}, "RequestId":{"shape":"RequestId"} }, "exception":true }, "TagValue":{ "type":"string", "max":256, "min":0, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "Tags":{ "type":"list", "member":{"shape":"Tag"} }, "TopicArn":{"type":"string"}, "TopicName":{ "type":"string", "max":256, "min":1, "pattern":"[a-zA-Z0-9_-]+" }, "TopicNames":{ "type":"list", "member":{"shape":"TopicName"} }, "TopicStatus":{ "type":"string", "enum":[ "Registered", "Topic not found", "Failed", "Deleted" ] }, "Trust":{ "type":"structure", "members":{ "DirectoryId":{"shape":"DirectoryId"}, "TrustId":{"shape":"TrustId"}, "RemoteDomainName":{"shape":"RemoteDomainName"}, "TrustType":{"shape":"TrustType"}, "TrustDirection":{"shape":"TrustDirection"}, "TrustState":{"shape":"TrustState"}, "CreatedDateTime":{"shape":"CreatedDateTime"}, "LastUpdatedDateTime":{"shape":"LastUpdatedDateTime"}, "StateLastUpdatedDateTime":{"shape":"StateLastUpdatedDateTime"}, "TrustStateReason":{"shape":"TrustStateReason"} } }, "TrustDirection":{ "type":"string", "enum":[ "One-Way: Outgoing", "One-Way: Incoming", "Two-Way" ] }, "TrustId":{ "type":"string", "pattern":"^t-[0-9a-f]{10}$" }, "TrustIds":{ "type":"list", "member":{"shape":"TrustId"} }, "TrustPassword":{ "type":"string", "max":128, "min":1, "sensitive":true }, "TrustState":{ "type":"string", "enum":[ "Creating", "Created", "Verifying", "VerifyFailed", "Verified", "Deleting", "Deleted", "Failed" ] }, "TrustStateReason":{"type":"string"}, "TrustType":{ "type":"string", "enum":["Forest"] }, "Trusts":{ "type":"list", "member":{"shape":"Trust"} }, "UnsupportedOperationException":{ "type":"structure", "members":{ "Message":{"shape":"ExceptionMessage"}, "RequestId":{"shape":"RequestId"} }, "exception":true }, "UpdateConditionalForwarderRequest":{ "type":"structure", "required":[ "DirectoryId", "RemoteDomainName", "DnsIpAddrs" ], "members":{ "DirectoryId":{"shape":"DirectoryId"}, "RemoteDomainName":{"shape":"RemoteDomainName"}, "DnsIpAddrs":{"shape":"DnsIpAddrs"} } }, "UpdateConditionalForwarderResult":{ "type":"structure", "members":{ } }, "UpdateRadiusRequest":{ "type":"structure", "required":[ "DirectoryId", "RadiusSettings" ], "members":{ "DirectoryId":{"shape":"DirectoryId"}, "RadiusSettings":{"shape":"RadiusSettings"} } }, "UpdateRadiusResult":{ "type":"structure", "members":{ } }, "UpdateSecurityGroupForDirectoryControllers":{"type":"boolean"}, "UseSameUsername":{"type":"boolean"}, "UserName":{ "type":"string", "min":1, "pattern":"[a-zA-Z0-9._-]+" }, "VerifyTrustRequest":{ "type":"structure", "required":["TrustId"], "members":{ "TrustId":{"shape":"TrustId"} } }, "VerifyTrustResult":{ "type":"structure", "members":{ "TrustId":{"shape":"TrustId"} } }, "VpcId":{ "type":"string", "pattern":"^(vpc-[0-9a-f]{8})$" } } } aws-sdk-go-1.4.22/models/apis/ds/2015-04-16/docs-2.json000066400000000000000000001767251300374646400214500ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS Directory Service

        This is the AWS Directory Service API Reference. This guide provides detailed information about AWS Directory Service operations, data types, parameters, and errors.

        ", "operations": { "AddIpRoutes": "

        If the DNS server for your on-premises domain uses a publicly addressable IP address, you must add a CIDR address block to correctly route traffic to and from your Microsoft AD on Amazon Web Services. AddIpRoutes adds this address block. You can also use AddIpRoutes to facilitate routing traffic that uses public IP ranges from your Microsoft AD on AWS to a peer VPC.

        ", "AddTagsToResource": "

        Adds or overwrites one or more tags for the specified Amazon Directory Services directory. Each directory can have a maximum of 10 tags. Each tag consists of a key and optional value. Tag keys must be unique to each resource.

        ", "ConnectDirectory": "

        Creates an AD Connector to connect to an on-premises directory.

        ", "CreateAlias": "

        Creates an alias for a directory and assigns the alias to the directory. The alias is used to construct the access URL for the directory, such as http://<alias>.awsapps.com.

        After an alias has been created, it cannot be deleted or reused, so this operation should only be used when absolutely necessary.

        ", "CreateComputer": "

        Creates a computer account in the specified directory, and joins the computer to the directory.

        ", "CreateConditionalForwarder": "

        Creates a conditional forwarder associated with your AWS directory. Conditional forwarders are required in order to set up a trust relationship with another domain. The conditional forwarder points to the trusted domain.

        ", "CreateDirectory": "

        Creates a Simple AD directory.

        ", "CreateMicrosoftAD": "

        Creates a Microsoft AD in the AWS cloud.

        ", "CreateSnapshot": "

        Creates a snapshot of a Simple AD or Microsoft AD directory in the AWS cloud.

        You cannot take snapshots of AD Connector directories.

        ", "CreateTrust": "

        AWS Directory Service for Microsoft Active Directory allows you to configure trust relationships. For example, you can establish a trust between your Microsoft AD in the AWS cloud, and your existing on-premises Microsoft Active Directory. This would allow you to provide users and groups access to resources in either domain, with a single set of credentials.

        This action initiates the creation of the AWS side of a trust relationship between a Microsoft AD in the AWS cloud and an external domain.

        ", "DeleteConditionalForwarder": "

        Deletes a conditional forwarder that has been set up for your AWS directory.

        ", "DeleteDirectory": "

        Deletes an AWS Directory Service directory.

        ", "DeleteSnapshot": "

        Deletes a directory snapshot.

        ", "DeleteTrust": "

        Deletes an existing trust relationship between your Microsoft AD in the AWS cloud and an external domain.

        ", "DeregisterEventTopic": "

        Removes the specified directory as a publisher to the specified SNS topic.

        ", "DescribeConditionalForwarders": "

        Obtains information about the conditional forwarders for this account.

        If no input parameters are provided for RemoteDomainNames, this request describes all conditional forwarders for the specified directory ID.

        ", "DescribeDirectories": "

        Obtains information about the directories that belong to this account.

        You can retrieve information about specific directories by passing the directory identifiers in the DirectoryIds parameter. Otherwise, all directories that belong to the current account are returned.

        This operation supports pagination with the use of the NextToken request and response parameters. If more results are available, the DescribeDirectoriesResult.NextToken member contains a token that you pass in the next call to DescribeDirectories to retrieve the next set of items.

        You can also specify a maximum number of return results with the Limit parameter.

        ", "DescribeEventTopics": "

        Obtains information about which SNS topics receive status messages from the specified directory.

        If no input parameters are provided, such as DirectoryId or TopicName, this request describes all of the associations in the account.

        ", "DescribeSnapshots": "

        Obtains information about the directory snapshots that belong to this account.

        This operation supports pagination with the use of the NextToken request and response parameters. If more results are available, the DescribeSnapshots.NextToken member contains a token that you pass in the next call to DescribeSnapshots to retrieve the next set of items.

        You can also specify a maximum number of return results with the Limit parameter.

        ", "DescribeTrusts": "

        Obtains information about the trust relationships for this account.

        If no input parameters are provided, such as DirectoryId or TrustIds, this request describes all the trust relationships belonging to the account.

        ", "DisableRadius": "

        Disables multi-factor authentication (MFA) with the Remote Authentication Dial In User Service (RADIUS) server for an AD Connector directory.

        ", "DisableSso": "

        Disables single-sign on for a directory.

        ", "EnableRadius": "

        Enables multi-factor authentication (MFA) with the Remote Authentication Dial In User Service (RADIUS) server for an AD Connector directory.

        ", "EnableSso": "

        Enables single-sign on for a directory.

        ", "GetDirectoryLimits": "

        Obtains directory limit information for the current region.

        ", "GetSnapshotLimits": "

        Obtains the manual snapshot limits for a directory.

        ", "ListIpRoutes": "

        Lists the address blocks that you have added to a directory.

        ", "ListTagsForResource": "

        Lists all tags on an Amazon Directory Services directory.

        ", "RegisterEventTopic": "

        Associates a directory with an SNS topic. This establishes the directory as a publisher to the specified SNS topic. You can then receive email or text (SMS) messages when the status of your directory changes. You get notified if your directory goes from an Active status to an Impaired or Inoperable status. You also receive a notification when the directory returns to an Active status.

        ", "RemoveIpRoutes": "

        Removes IP address blocks from a directory.

        ", "RemoveTagsFromResource": "

        Removes tags from an Amazon Directory Services directory.

        ", "RestoreFromSnapshot": "

        Restores a directory using an existing directory snapshot.

        When you restore a directory from a snapshot, any changes made to the directory after the snapshot date are overwritten.

        This action returns as soon as the restore operation is initiated. You can monitor the progress of the restore operation by calling the DescribeDirectories operation with the directory identifier. When the DirectoryDescription.Stage value changes to Active, the restore operation is complete.

        ", "UpdateConditionalForwarder": "

        Updates a conditional forwarder that has been set up for your AWS directory.

        ", "UpdateRadius": "

        Updates the Remote Authentication Dial In User Service (RADIUS) server information for an AD Connector directory.

        ", "VerifyTrust": "

        AWS Directory Service for Microsoft Active Directory allows you to configure and verify trust relationships.

        This action verifies a trust relationship between your Microsoft AD in the AWS cloud and an external domain.

        " }, "shapes": { "AccessUrl": { "base": null, "refs": { "DirectoryDescription$AccessUrl": "

        The access URL for the directory, such as http://<alias>.awsapps.com. If no alias has been created for the directory, <alias> is the directory identifier, such as d-XXXXXXXXXX.

        " } }, "AddIpRoutesRequest": { "base": null, "refs": { } }, "AddIpRoutesResult": { "base": null, "refs": { } }, "AddTagsToResourceRequest": { "base": null, "refs": { } }, "AddTagsToResourceResult": { "base": null, "refs": { } }, "AddedDateTime": { "base": null, "refs": { "IpRouteInfo$AddedDateTime": "

        The date and time the address block was added to the directory.

        " } }, "AliasName": { "base": null, "refs": { "CreateAliasRequest$Alias": "

        The requested alias.

        The alias must be unique amongst all aliases in AWS. This operation throws an EntityAlreadyExistsException error if the alias already exists.

        ", "CreateAliasResult$Alias": "

        The alias for the directory.

        ", "DirectoryDescription$Alias": "

        The alias for the directory. If no alias has been created for the directory, the alias is the directory identifier, such as d-XXXXXXXXXX.

        " } }, "Attribute": { "base": "

        Represents a named directory attribute.

        ", "refs": { "Attributes$member": null } }, "AttributeName": { "base": null, "refs": { "Attribute$Name": "

        The name of the attribute.

        " } }, "AttributeValue": { "base": null, "refs": { "Attribute$Value": "

        The value of the attribute.

        " } }, "Attributes": { "base": null, "refs": { "Computer$ComputerAttributes": "

        An array of Attribute objects containing the LDAP attributes that belong to the computer account.

        ", "CreateComputerRequest$ComputerAttributes": "

        An array of Attribute objects that contain any LDAP attributes to apply to the computer account.

        " } }, "AuthenticationFailedException": { "base": "

        An authentication error occurred.

        ", "refs": { } }, "AvailabilityZone": { "base": null, "refs": { "AvailabilityZones$member": null } }, "AvailabilityZones": { "base": null, "refs": { "DirectoryConnectSettingsDescription$AvailabilityZones": "

        A list of the Availability Zones that the directory is in.

        ", "DirectoryVpcSettingsDescription$AvailabilityZones": "

        The list of Availability Zones that the directory is in.

        " } }, "CidrIp": { "base": null, "refs": { "CidrIps$member": null, "IpRoute$CidrIp": "

        IP address block using CIDR format, for example 10.0.0.0/24. This is often the address block of the DNS server used for your on-premises domain. For a single IP address use a CIDR address block with /32. For example 10.0.0.0/32.

        ", "IpRouteInfo$CidrIp": "

        IP address block in the IpRoute.

        " } }, "CidrIps": { "base": null, "refs": { "RemoveIpRoutesRequest$CidrIps": "

        IP address blocks that you want to remove.

        " } }, "ClientException": { "base": "

        A client exception has occurred.

        ", "refs": { } }, "CloudOnlyDirectoriesLimitReached": { "base": null, "refs": { "DirectoryLimits$CloudOnlyDirectoriesLimitReached": "

        Indicates if the cloud directory limit has been reached.

        ", "DirectoryLimits$CloudOnlyMicrosoftADLimitReached": "

        Indicates if the Microsoft AD directory limit has been reached.

        " } }, "Computer": { "base": "

        Contains information about a computer account in a directory.

        ", "refs": { "CreateComputerResult$Computer": "

        A Computer object that represents the computer account.

        " } }, "ComputerName": { "base": null, "refs": { "Computer$ComputerName": "

        The computer name.

        ", "CreateComputerRequest$ComputerName": "

        The name of the computer account.

        " } }, "ComputerPassword": { "base": null, "refs": { "CreateComputerRequest$Password": "

        A one-time password that is used to join the computer to the directory. You should generate a random, strong password to use for this parameter.

        " } }, "ConditionalForwarder": { "base": "

        Points to a remote domain with which you are setting up a trust relationship. Conditional forwarders are required in order to set up a trust relationship with another domain.

        ", "refs": { "ConditionalForwarders$member": null } }, "ConditionalForwarders": { "base": null, "refs": { "DescribeConditionalForwardersResult$ConditionalForwarders": "

        The list of conditional forwarders that have been created.

        " } }, "ConnectDirectoryRequest": { "base": "

        Contains the inputs for the ConnectDirectory operation.

        ", "refs": { } }, "ConnectDirectoryResult": { "base": "

        Contains the results of the ConnectDirectory operation.

        ", "refs": { } }, "ConnectPassword": { "base": null, "refs": { "ConnectDirectoryRequest$Password": "

        The password for the on-premises user account.

        ", "DisableSsoRequest$Password": "

        The password of an alternate account to use to disable single-sign on. This is only used for AD Connector directories. For more information, see the UserName parameter.

        ", "EnableSsoRequest$Password": "

        The password of an alternate account to use to enable single-sign on. This is only used for AD Connector directories. For more information, see the UserName parameter.

        " } }, "ConnectedDirectoriesLimitReached": { "base": null, "refs": { "DirectoryLimits$ConnectedDirectoriesLimitReached": "

        Indicates if the connected directory limit has been reached.

        " } }, "CreateAliasRequest": { "base": "

        Contains the inputs for the CreateAlias operation.

        ", "refs": { } }, "CreateAliasResult": { "base": "

        Contains the results of the CreateAlias operation.

        ", "refs": { } }, "CreateComputerRequest": { "base": "

        Contains the inputs for the CreateComputer operation.

        ", "refs": { } }, "CreateComputerResult": { "base": "

        Contains the results for the CreateComputer operation.

        ", "refs": { } }, "CreateConditionalForwarderRequest": { "base": "

        Initiates the creation of a conditional forwarder for your AWS Directory Service for Microsoft Active Directory. Conditional forwarders are required in order to set up a trust relationship with another domain.

        ", "refs": { } }, "CreateConditionalForwarderResult": { "base": "

        The result of a CreateConditinalForwarder request.

        ", "refs": { } }, "CreateDirectoryRequest": { "base": "

        Contains the inputs for the CreateDirectory operation.

        ", "refs": { } }, "CreateDirectoryResult": { "base": "

        Contains the results of the CreateDirectory operation.

        ", "refs": { } }, "CreateMicrosoftADRequest": { "base": "

        Creates a Microsoft AD in the AWS cloud.

        ", "refs": { } }, "CreateMicrosoftADResult": { "base": "

        Result of a CreateMicrosoftAD request.

        ", "refs": { } }, "CreateSnapshotRequest": { "base": "

        Contains the inputs for the CreateSnapshot operation.

        ", "refs": { } }, "CreateSnapshotResult": { "base": "

        Contains the results of the CreateSnapshot operation.

        ", "refs": { } }, "CreateTrustRequest": { "base": "

        AWS Directory Service for Microsoft Active Directory allows you to configure trust relationships. For example, you can establish a trust between your Microsoft AD in the AWS cloud, and your existing on-premises Microsoft Active Directory. This would allow you to provide users and groups access to resources in either domain, with a single set of credentials.

        This action initiates the creation of the AWS side of a trust relationship between a Microsoft AD in the AWS cloud and an external domain.

        ", "refs": { } }, "CreateTrustResult": { "base": "

        The result of a CreateTrust request.

        ", "refs": { } }, "CreatedDateTime": { "base": null, "refs": { "EventTopic$CreatedDateTime": "

        The date and time of when you associated your directory with the SNS topic.

        ", "Trust$CreatedDateTime": "

        The date and time that the trust relationship was created.

        " } }, "DeleteAssociatedConditionalForwarder": { "base": null, "refs": { "DeleteTrustRequest$DeleteAssociatedConditionalForwarder": "

        Delete a conditional forwarder as part of a DeleteTrustRequest.

        " } }, "DeleteConditionalForwarderRequest": { "base": "

        Deletes a conditional forwarder.

        ", "refs": { } }, "DeleteConditionalForwarderResult": { "base": "

        The result of a DeleteConditionalForwarder request.

        ", "refs": { } }, "DeleteDirectoryRequest": { "base": "

        Contains the inputs for the DeleteDirectory operation.

        ", "refs": { } }, "DeleteDirectoryResult": { "base": "

        Contains the results of the DeleteDirectory operation.

        ", "refs": { } }, "DeleteSnapshotRequest": { "base": "

        Contains the inputs for the DeleteSnapshot operation.

        ", "refs": { } }, "DeleteSnapshotResult": { "base": "

        Contains the results of the DeleteSnapshot operation.

        ", "refs": { } }, "DeleteTrustRequest": { "base": "

        Deletes the local side of an existing trust relationship between the Microsoft AD in the AWS cloud and the external domain.

        ", "refs": { } }, "DeleteTrustResult": { "base": "

        The result of a DeleteTrust request.

        ", "refs": { } }, "DeregisterEventTopicRequest": { "base": "

        Removes the specified directory as a publisher to the specified SNS topic.

        ", "refs": { } }, "DeregisterEventTopicResult": { "base": "

        The result of a DeregisterEventTopic request.

        ", "refs": { } }, "DescribeConditionalForwardersRequest": { "base": "

        Describes a conditional forwarder.

        ", "refs": { } }, "DescribeConditionalForwardersResult": { "base": "

        The result of a DescribeConditionalForwarder request.

        ", "refs": { } }, "DescribeDirectoriesRequest": { "base": "

        Contains the inputs for the DescribeDirectories operation.

        ", "refs": { } }, "DescribeDirectoriesResult": { "base": "

        Contains the results of the DescribeDirectories operation.

        ", "refs": { } }, "DescribeEventTopicsRequest": { "base": "

        Describes event topics.

        ", "refs": { } }, "DescribeEventTopicsResult": { "base": "

        The result of a DescribeEventTopic request.

        ", "refs": { } }, "DescribeSnapshotsRequest": { "base": "

        Contains the inputs for the DescribeSnapshots operation.

        ", "refs": { } }, "DescribeSnapshotsResult": { "base": "

        Contains the results of the DescribeSnapshots operation.

        ", "refs": { } }, "DescribeTrustsRequest": { "base": "

        Describes the trust relationships for a particular Microsoft AD in the AWS cloud. If no input parameters are are provided, such as directory ID or trust ID, this request describes all the trust relationships.

        ", "refs": { } }, "DescribeTrustsResult": { "base": "

        The result of a DescribeTrust request.

        ", "refs": { } }, "Description": { "base": null, "refs": { "ConnectDirectoryRequest$Description": "

        A textual description for the directory.

        ", "CreateDirectoryRequest$Description": "

        A textual description for the directory.

        ", "CreateMicrosoftADRequest$Description": "

        A textual description for the directory. This label will appear on the AWS console Directory Details page after the directory is created.

        ", "DirectoryDescription$Description": "

        The textual description for the directory.

        ", "IpRoute$Description": "

        Description of the address block.

        ", "IpRouteInfo$Description": "

        Description of the IpRouteInfo.

        " } }, "DirectoryConnectSettings": { "base": "

        Contains information for the ConnectDirectory operation when an AD Connector directory is being created.

        ", "refs": { "ConnectDirectoryRequest$ConnectSettings": "

        A DirectoryConnectSettings object that contains additional information for the operation.

        " } }, "DirectoryConnectSettingsDescription": { "base": "

        Contains information about an AD Connector directory.

        ", "refs": { "DirectoryDescription$ConnectSettings": "

        A DirectoryConnectSettingsDescription object that contains additional information about an AD Connector directory. This member is only present if the directory is an AD Connector directory.

        " } }, "DirectoryDescription": { "base": "

        Contains information about an AWS Directory Service directory.

        ", "refs": { "DirectoryDescriptions$member": null } }, "DirectoryDescriptions": { "base": "

        A list of directory descriptions.

        ", "refs": { "DescribeDirectoriesResult$DirectoryDescriptions": "

        The list of DirectoryDescription objects that were retrieved.

        It is possible that this list contains less than the number of items specified in the Limit member of the request. This occurs if there are less than the requested number of items left to retrieve, or if the limitations of the operation have been exceeded.

        " } }, "DirectoryId": { "base": null, "refs": { "AddIpRoutesRequest$DirectoryId": "

        Identifier (ID) of the directory to which to add the address block.

        ", "ConnectDirectoryResult$DirectoryId": "

        The identifier of the new directory.

        ", "CreateAliasRequest$DirectoryId": "

        The identifier of the directory for which to create the alias.

        ", "CreateAliasResult$DirectoryId": "

        The identifier of the directory.

        ", "CreateComputerRequest$DirectoryId": "

        The identifier of the directory in which to create the computer account.

        ", "CreateConditionalForwarderRequest$DirectoryId": "

        The directory ID of the AWS directory for which you are creating the conditional forwarder.

        ", "CreateDirectoryResult$DirectoryId": "

        The identifier of the directory that was created.

        ", "CreateMicrosoftADResult$DirectoryId": "

        The identifier of the directory that was created.

        ", "CreateSnapshotRequest$DirectoryId": "

        The identifier of the directory of which to take a snapshot.

        ", "CreateTrustRequest$DirectoryId": "

        The Directory ID of the Microsoft AD in the AWS cloud for which to establish the trust relationship.

        ", "DeleteConditionalForwarderRequest$DirectoryId": "

        The directory ID for which you are deleting the conditional forwarder.

        ", "DeleteDirectoryRequest$DirectoryId": "

        The identifier of the directory to delete.

        ", "DeleteDirectoryResult$DirectoryId": "

        The directory identifier.

        ", "DeregisterEventTopicRequest$DirectoryId": "

        The Directory ID to remove as a publisher. This directory will no longer send messages to the specified SNS topic.

        ", "DescribeConditionalForwardersRequest$DirectoryId": "

        The directory ID for which to get the list of associated conditional forwarders.

        ", "DescribeEventTopicsRequest$DirectoryId": "

        The Directory ID for which to get the list of associated SNS topics. If this member is null, associations for all Directory IDs are returned.

        ", "DescribeSnapshotsRequest$DirectoryId": "

        The identifier of the directory for which to retrieve snapshot information.

        ", "DescribeTrustsRequest$DirectoryId": "

        The Directory ID of the AWS directory that is a part of the requested trust relationship.

        ", "DirectoryDescription$DirectoryId": "

        The directory identifier.

        ", "DirectoryIds$member": null, "DisableRadiusRequest$DirectoryId": "

        The identifier of the directory for which to disable MFA.

        ", "DisableSsoRequest$DirectoryId": "

        The identifier of the directory for which to disable single-sign on.

        ", "EnableRadiusRequest$DirectoryId": "

        The identifier of the directory for which to enable MFA.

        ", "EnableSsoRequest$DirectoryId": "

        The identifier of the directory for which to enable single-sign on.

        ", "EventTopic$DirectoryId": "

        The Directory ID of an AWS Directory Service directory that will publish status messages to an SNS topic.

        ", "GetSnapshotLimitsRequest$DirectoryId": "

        Contains the identifier of the directory to obtain the limits for.

        ", "IpRouteInfo$DirectoryId": "

        Identifier (ID) of the directory associated with the IP addresses.

        ", "ListIpRoutesRequest$DirectoryId": "

        Identifier (ID) of the directory for which you want to retrieve the IP addresses.

        ", "RegisterEventTopicRequest$DirectoryId": "

        The Directory ID that will publish status messages to the SNS topic.

        ", "RemoveIpRoutesRequest$DirectoryId": "

        Identifier (ID) of the directory from which you want to remove the IP addresses.

        ", "Snapshot$DirectoryId": "

        The directory identifier.

        ", "Trust$DirectoryId": "

        The Directory ID of the AWS directory involved in the trust relationship.

        ", "UpdateConditionalForwarderRequest$DirectoryId": "

        The directory ID of the AWS directory for which to update the conditional forwarder.

        ", "UpdateRadiusRequest$DirectoryId": "

        The identifier of the directory for which to update the RADIUS server information.

        " } }, "DirectoryIds": { "base": "

        A list of directory identifiers.

        ", "refs": { "DescribeDirectoriesRequest$DirectoryIds": "

        A list of identifiers of the directories for which to obtain the information. If this member is null, all directories that belong to the current account are returned.

        An empty list results in an InvalidParameterException being thrown.

        " } }, "DirectoryLimitExceededException": { "base": "

        The maximum number of directories in the region has been reached. You can use the GetDirectoryLimits operation to determine your directory limits in the region.

        ", "refs": { } }, "DirectoryLimits": { "base": "

        Contains directory limit information for a region.

        ", "refs": { "GetDirectoryLimitsResult$DirectoryLimits": "

        A DirectoryLimits object that contains the directory limits for the current region.

        " } }, "DirectoryName": { "base": null, "refs": { "ConnectDirectoryRequest$Name": "

        The fully-qualified name of the on-premises directory, such as corp.example.com.

        ", "CreateDirectoryRequest$Name": "

        The fully qualified name for the directory, such as corp.example.com.

        ", "CreateMicrosoftADRequest$Name": "

        The fully qualified domain name for the directory, such as corp.example.com. This name will resolve inside your VPC only. It does not need to be publicly resolvable.

        ", "DirectoryDescription$Name": "

        The fully-qualified name of the directory.

        " } }, "DirectoryShortName": { "base": null, "refs": { "ConnectDirectoryRequest$ShortName": "

        The NetBIOS name of the on-premises directory, such as CORP.

        ", "CreateDirectoryRequest$ShortName": "

        The short name of the directory, such as CORP.

        ", "CreateMicrosoftADRequest$ShortName": "

        The NetBIOS name for your domain. A short identifier for your domain, such as CORP. If you don't specify a NetBIOS name, it will default to the first part of your directory DNS. For example, CORP for the directory DNS corp.example.com.

        ", "DirectoryDescription$ShortName": "

        The short name of the directory.

        " } }, "DirectorySize": { "base": null, "refs": { "ConnectDirectoryRequest$Size": "

        The size of the directory.

        ", "CreateDirectoryRequest$Size": "

        The size of the directory.

        ", "DirectoryDescription$Size": "

        The directory size.

        " } }, "DirectoryStage": { "base": null, "refs": { "DirectoryDescription$Stage": "

        The current stage of the directory.

        " } }, "DirectoryType": { "base": null, "refs": { "DirectoryDescription$Type": "

        The directory size.

        " } }, "DirectoryUnavailableException": { "base": "

        The specified directory is unavailable or could not be found.

        ", "refs": { } }, "DirectoryVpcSettings": { "base": "

        Contains VPC information for the CreateDirectory or CreateMicrosoftAD operation.

        ", "refs": { "CreateDirectoryRequest$VpcSettings": "

        A DirectoryVpcSettings object that contains additional information for the operation.

        ", "CreateMicrosoftADRequest$VpcSettings": null } }, "DirectoryVpcSettingsDescription": { "base": "

        Contains information about the directory.

        ", "refs": { "DirectoryDescription$VpcSettings": "

        A DirectoryVpcSettingsDescription object that contains additional information about a directory. This member is only present if the directory is a Simple AD or Managed AD directory.

        " } }, "DisableRadiusRequest": { "base": "

        Contains the inputs for the DisableRadius operation.

        ", "refs": { } }, "DisableRadiusResult": { "base": "

        Contains the results of the DisableRadius operation.

        ", "refs": { } }, "DisableSsoRequest": { "base": "

        Contains the inputs for the DisableSso operation.

        ", "refs": { } }, "DisableSsoResult": { "base": "

        Contains the results of the DisableSso operation.

        ", "refs": { } }, "DnsIpAddrs": { "base": null, "refs": { "ConditionalForwarder$DnsIpAddrs": "

        The IP addresses of the remote DNS server associated with RemoteDomainName. This is the IP address of the DNS server that your conditional forwarder points to.

        ", "CreateConditionalForwarderRequest$DnsIpAddrs": "

        The IP addresses of the remote DNS server associated with RemoteDomainName.

        ", "CreateTrustRequest$ConditionalForwarderIpAddrs": "

        The IP addresses of the remote DNS server associated with RemoteDomainName.

        ", "DirectoryConnectSettings$CustomerDnsIps": "

        A list of one or more IP addresses of DNS servers or domain controllers in the on-premises directory.

        ", "DirectoryDescription$DnsIpAddrs": "

        The IP addresses of the DNS servers for the directory. For a Simple AD or Microsoft AD directory, these are the IP addresses of the Simple AD or Microsoft AD directory servers. For an AD Connector directory, these are the IP addresses of the DNS servers or domain controllers in the on-premises directory to which the AD Connector is connected.

        ", "UpdateConditionalForwarderRequest$DnsIpAddrs": "

        The updated IP addresses of the remote DNS server associated with the conditional forwarder.

        " } }, "EnableRadiusRequest": { "base": "

        Contains the inputs for the EnableRadius operation.

        ", "refs": { } }, "EnableRadiusResult": { "base": "

        Contains the results of the EnableRadius operation.

        ", "refs": { } }, "EnableSsoRequest": { "base": "

        Contains the inputs for the EnableSso operation.

        ", "refs": { } }, "EnableSsoResult": { "base": "

        Contains the results of the EnableSso operation.

        ", "refs": { } }, "EntityAlreadyExistsException": { "base": "

        The specified entity already exists.

        ", "refs": { } }, "EntityDoesNotExistException": { "base": "

        The specified entity could not be found.

        ", "refs": { } }, "EventTopic": { "base": "

        Information about SNS topic and AWS Directory Service directory associations.

        ", "refs": { "EventTopics$member": null } }, "EventTopics": { "base": null, "refs": { "DescribeEventTopicsResult$EventTopics": "

        A list of SNS topic names that receive status messages from the specified Directory ID.

        " } }, "ExceptionMessage": { "base": "

        The descriptive message for the exception.

        ", "refs": { "AuthenticationFailedException$Message": "

        The textual message for the exception.

        ", "ClientException$Message": null, "DirectoryLimitExceededException$Message": null, "DirectoryUnavailableException$Message": null, "EntityAlreadyExistsException$Message": null, "EntityDoesNotExistException$Message": null, "InsufficientPermissionsException$Message": null, "InvalidNextTokenException$Message": null, "InvalidParameterException$Message": null, "IpRouteLimitExceededException$Message": null, "ServiceException$Message": null, "SnapshotLimitExceededException$Message": null, "TagLimitExceededException$Message": null, "UnsupportedOperationException$Message": null } }, "GetDirectoryLimitsRequest": { "base": "

        Contains the inputs for the GetDirectoryLimits operation.

        ", "refs": { } }, "GetDirectoryLimitsResult": { "base": "

        Contains the results of the GetDirectoryLimits operation.

        ", "refs": { } }, "GetSnapshotLimitsRequest": { "base": "

        Contains the inputs for the GetSnapshotLimits operation.

        ", "refs": { } }, "GetSnapshotLimitsResult": { "base": "

        Contains the results of the GetSnapshotLimits operation.

        ", "refs": { } }, "InsufficientPermissionsException": { "base": "

        The account does not have sufficient permission to perform the operation.

        ", "refs": { } }, "InvalidNextTokenException": { "base": "

        The NextToken value is not valid.

        ", "refs": { } }, "InvalidParameterException": { "base": "

        One or more parameters are not valid.

        ", "refs": { } }, "IpAddr": { "base": null, "refs": { "DnsIpAddrs$member": null, "IpAddrs$member": null } }, "IpAddrs": { "base": null, "refs": { "DirectoryConnectSettingsDescription$ConnectIps": "

        The IP addresses of the AD Connector servers.

        " } }, "IpRoute": { "base": "

        IP address block. This is often the address block of the DNS server used for your on-premises domain.

        ", "refs": { "IpRoutes$member": null } }, "IpRouteInfo": { "base": "

        Information about one or more IP address blocks.

        ", "refs": { "IpRoutesInfo$member": null } }, "IpRouteLimitExceededException": { "base": "

        The maximum allowed number of IP addresses was exceeded. The default limit is 100 IP address blocks.

        ", "refs": { } }, "IpRouteStatusMsg": { "base": null, "refs": { "IpRouteInfo$IpRouteStatusMsg": "

        The status of the IP address block.

        " } }, "IpRouteStatusReason": { "base": null, "refs": { "IpRouteInfo$IpRouteStatusReason": "

        The reason for the IpRouteStatusMsg.

        " } }, "IpRoutes": { "base": null, "refs": { "AddIpRoutesRequest$IpRoutes": "

        IP address blocks, using CIDR format, of the traffic to route. This is often the IP address block of the DNS server used for your on-premises domain.

        " } }, "IpRoutesInfo": { "base": null, "refs": { "ListIpRoutesResult$IpRoutesInfo": "

        A list of IpRoutes.

        " } }, "LastUpdatedDateTime": { "base": null, "refs": { "DirectoryDescription$StageLastUpdatedDateTime": "

        The date and time that the stage was last updated.

        ", "Trust$LastUpdatedDateTime": "

        The date and time that the trust relationship was last updated.

        " } }, "LaunchTime": { "base": null, "refs": { "DirectoryDescription$LaunchTime": "

        Specifies when the directory was created.

        " } }, "Limit": { "base": null, "refs": { "DescribeDirectoriesRequest$Limit": "

        The maximum number of items to return. If this value is zero, the maximum number of items is specified by the limitations of the operation.

        ", "DescribeSnapshotsRequest$Limit": "

        The maximum number of objects to return.

        ", "DescribeTrustsRequest$Limit": "

        The maximum number of objects to return.

        ", "DirectoryLimits$CloudOnlyDirectoriesLimit": "

        The maximum number of cloud directories allowed in the region.

        ", "DirectoryLimits$CloudOnlyDirectoriesCurrentCount": "

        The current number of cloud directories in the region.

        ", "DirectoryLimits$CloudOnlyMicrosoftADLimit": "

        The maximum number of Microsoft AD directories allowed in the region.

        ", "DirectoryLimits$CloudOnlyMicrosoftADCurrentCount": "

        The current number of Microsoft AD directories in the region.

        ", "DirectoryLimits$ConnectedDirectoriesLimit": "

        The maximum number of connected directories allowed in the region.

        ", "DirectoryLimits$ConnectedDirectoriesCurrentCount": "

        The current number of connected directories in the region.

        ", "ListIpRoutesRequest$Limit": "

        Maximum number of items to return. If this value is zero, the maximum number of items is specified by the limitations of the operation.

        ", "ListTagsForResourceRequest$Limit": "

        Reserved for future use.

        ", "SnapshotLimits$ManualSnapshotsLimit": "

        The maximum number of manual snapshots allowed.

        ", "SnapshotLimits$ManualSnapshotsCurrentCount": "

        The current number of manual snapshots of the directory.

        " } }, "ListIpRoutesRequest": { "base": null, "refs": { } }, "ListIpRoutesResult": { "base": null, "refs": { } }, "ListTagsForResourceRequest": { "base": null, "refs": { } }, "ListTagsForResourceResult": { "base": null, "refs": { } }, "ManualSnapshotsLimitReached": { "base": null, "refs": { "SnapshotLimits$ManualSnapshotsLimitReached": "

        Indicates if the manual snapshot limit has been reached.

        " } }, "NextToken": { "base": null, "refs": { "DescribeDirectoriesRequest$NextToken": "

        The DescribeDirectoriesResult.NextToken value from a previous call to DescribeDirectories. Pass null if this is the first call.

        ", "DescribeDirectoriesResult$NextToken": "

        If not null, more results are available. Pass this value for the NextToken parameter in a subsequent call to DescribeDirectories to retrieve the next set of items.

        ", "DescribeSnapshotsRequest$NextToken": "

        The DescribeSnapshotsResult.NextToken value from a previous call to DescribeSnapshots. Pass null if this is the first call.

        ", "DescribeSnapshotsResult$NextToken": "

        If not null, more results are available. Pass this value in the NextToken member of a subsequent call to DescribeSnapshots.

        ", "DescribeTrustsRequest$NextToken": "

        The DescribeTrustsResult.NextToken value from a previous call to DescribeTrusts. Pass null if this is the first call.

        ", "DescribeTrustsResult$NextToken": "

        If not null, more results are available. Pass this value for the NextToken parameter in a subsequent call to DescribeTrusts to retrieve the next set of items.

        ", "ListIpRoutesRequest$NextToken": "

        The ListIpRoutes.NextToken value from a previous call to ListIpRoutes. Pass null if this is the first call.

        ", "ListIpRoutesResult$NextToken": "

        If not null, more results are available. Pass this value for the NextToken parameter in a subsequent call to ListIpRoutes to retrieve the next set of items.

        ", "ListTagsForResourceRequest$NextToken": "

        Reserved for future use.

        ", "ListTagsForResourceResult$NextToken": "

        Reserved for future use.

        " } }, "OrganizationalUnitDN": { "base": null, "refs": { "CreateComputerRequest$OrganizationalUnitDistinguishedName": "

        The fully-qualified distinguished name of the organizational unit to place the computer account in.

        " } }, "Password": { "base": null, "refs": { "CreateDirectoryRequest$Password": "

        The password for the directory administrator. The directory creation process creates a directory administrator account with the username Administrator and this password.

        ", "CreateMicrosoftADRequest$Password": "

        The password for the default administrative user named Admin.

        " } }, "PortNumber": { "base": null, "refs": { "RadiusSettings$RadiusPort": "

        The port that your RADIUS server is using for communications. Your on-premises network must allow inbound traffic over this port from the AWS Directory Service servers.

        " } }, "RadiusAuthenticationProtocol": { "base": null, "refs": { "RadiusSettings$AuthenticationProtocol": "

        The protocol specified for your RADIUS endpoints.

        " } }, "RadiusDisplayLabel": { "base": null, "refs": { "RadiusSettings$DisplayLabel": "

        Not currently used.

        " } }, "RadiusRetries": { "base": null, "refs": { "RadiusSettings$RadiusRetries": "

        The maximum number of times that communication with the RADIUS server is attempted.

        " } }, "RadiusSettings": { "base": "

        Contains information about a Remote Authentication Dial In User Service (RADIUS) server.

        ", "refs": { "DirectoryDescription$RadiusSettings": "

        A RadiusSettings object that contains information about the RADIUS server configured for this directory.

        ", "EnableRadiusRequest$RadiusSettings": "

        A RadiusSettings object that contains information about the RADIUS server.

        ", "UpdateRadiusRequest$RadiusSettings": "

        A RadiusSettings object that contains information about the RADIUS server.

        " } }, "RadiusSharedSecret": { "base": null, "refs": { "RadiusSettings$SharedSecret": "

        Not currently used.

        " } }, "RadiusStatus": { "base": null, "refs": { "DirectoryDescription$RadiusStatus": "

        The status of the RADIUS MFA server connection.

        " } }, "RadiusTimeout": { "base": null, "refs": { "RadiusSettings$RadiusTimeout": "

        The amount of time, in seconds, to wait for the RADIUS server to respond.

        " } }, "RegisterEventTopicRequest": { "base": "

        Registers a new event topic.

        ", "refs": { } }, "RegisterEventTopicResult": { "base": "

        The result of a RegisterEventTopic request.

        ", "refs": { } }, "RemoteDomainName": { "base": null, "refs": { "ConditionalForwarder$RemoteDomainName": "

        The fully qualified domain name (FQDN) of the remote domains pointed to by the conditional forwarder.

        ", "CreateConditionalForwarderRequest$RemoteDomainName": "

        The fully qualified domain name (FQDN) of the remote domain with which you will set up a trust relationship.

        ", "CreateTrustRequest$RemoteDomainName": "

        The Fully Qualified Domain Name (FQDN) of the external domain for which to create the trust relationship.

        ", "DeleteConditionalForwarderRequest$RemoteDomainName": "

        The fully qualified domain name (FQDN) of the remote domain with which you are deleting the conditional forwarder.

        ", "RemoteDomainNames$member": null, "Trust$RemoteDomainName": "

        The Fully Qualified Domain Name (FQDN) of the external domain involved in the trust relationship.

        ", "UpdateConditionalForwarderRequest$RemoteDomainName": "

        The fully qualified domain name (FQDN) of the remote domain with which you will set up a trust relationship.

        " } }, "RemoteDomainNames": { "base": null, "refs": { "DescribeConditionalForwardersRequest$RemoteDomainNames": "

        The fully qualified domain names (FQDN) of the remote domains for which to get the list of associated conditional forwarders. If this member is null, all conditional forwarders are returned.

        " } }, "RemoveIpRoutesRequest": { "base": null, "refs": { } }, "RemoveIpRoutesResult": { "base": null, "refs": { } }, "RemoveTagsFromResourceRequest": { "base": null, "refs": { } }, "RemoveTagsFromResourceResult": { "base": null, "refs": { } }, "ReplicationScope": { "base": null, "refs": { "ConditionalForwarder$ReplicationScope": "

        The replication scope of the conditional forwarder. The only allowed value is Domain, which will replicate the conditional forwarder to all of the domain controllers for your AWS directory.

        " } }, "RequestId": { "base": "

        The AWS request identifier.

        ", "refs": { "AuthenticationFailedException$RequestId": "

        The identifier of the request that caused the exception.

        ", "ClientException$RequestId": null, "DirectoryLimitExceededException$RequestId": null, "DirectoryUnavailableException$RequestId": null, "EntityAlreadyExistsException$RequestId": null, "EntityDoesNotExistException$RequestId": null, "InsufficientPermissionsException$RequestId": null, "InvalidNextTokenException$RequestId": null, "InvalidParameterException$RequestId": null, "IpRouteLimitExceededException$RequestId": null, "ServiceException$RequestId": null, "SnapshotLimitExceededException$RequestId": null, "TagLimitExceededException$RequestId": null, "UnsupportedOperationException$RequestId": null } }, "ResourceId": { "base": null, "refs": { "AddTagsToResourceRequest$ResourceId": "

        Identifier (ID) for the directory to which to add the tag.

        ", "ListTagsForResourceRequest$ResourceId": "

        Identifier (ID) of the directory for which you want to retrieve tags.

        ", "RemoveTagsFromResourceRequest$ResourceId": "

        Identifier (ID) of the directory from which to remove the tag.

        " } }, "RestoreFromSnapshotRequest": { "base": "

        An object representing the inputs for the RestoreFromSnapshot operation.

        ", "refs": { } }, "RestoreFromSnapshotResult": { "base": "

        Contains the results of the RestoreFromSnapshot operation.

        ", "refs": { } }, "SID": { "base": null, "refs": { "Computer$ComputerId": "

        The identifier of the computer.

        " } }, "SecurityGroupId": { "base": null, "refs": { "DirectoryConnectSettingsDescription$SecurityGroupId": "

        The security group identifier for the AD Connector directory.

        ", "DirectoryVpcSettingsDescription$SecurityGroupId": "

        The security group identifier for the directory. If the directory was created before 8/1/2014, this is the identifier of the directory members security group that was created when the directory was created. If the directory was created after this date, this value is null.

        " } }, "Server": { "base": null, "refs": { "Servers$member": null } }, "Servers": { "base": null, "refs": { "RadiusSettings$RadiusServers": "

        An array of strings that contains the IP addresses of the RADIUS server endpoints, or the IP addresses of your RADIUS server load balancer.

        " } }, "ServiceException": { "base": "

        An exception has occurred in AWS Directory Service.

        ", "refs": { } }, "Snapshot": { "base": "

        Describes a directory snapshot.

        ", "refs": { "Snapshots$member": null } }, "SnapshotId": { "base": null, "refs": { "CreateSnapshotResult$SnapshotId": "

        The identifier of the snapshot that was created.

        ", "DeleteSnapshotRequest$SnapshotId": "

        The identifier of the directory snapshot to be deleted.

        ", "DeleteSnapshotResult$SnapshotId": "

        The identifier of the directory snapshot that was deleted.

        ", "RestoreFromSnapshotRequest$SnapshotId": "

        The identifier of the snapshot to restore from.

        ", "Snapshot$SnapshotId": "

        The snapshot identifier.

        ", "SnapshotIds$member": null } }, "SnapshotIds": { "base": "

        A list of directory snapshot identifiers.

        ", "refs": { "DescribeSnapshotsRequest$SnapshotIds": "

        A list of identifiers of the snapshots to obtain the information for. If this member is null or empty, all snapshots are returned using the Limit and NextToken members.

        " } }, "SnapshotLimitExceededException": { "base": "

        The maximum number of manual snapshots for the directory has been reached. You can use the GetSnapshotLimits operation to determine the snapshot limits for a directory.

        ", "refs": { } }, "SnapshotLimits": { "base": "

        Contains manual snapshot limit information for a directory.

        ", "refs": { "GetSnapshotLimitsResult$SnapshotLimits": "

        A SnapshotLimits object that contains the manual snapshot limits for the specified directory.

        " } }, "SnapshotName": { "base": null, "refs": { "CreateSnapshotRequest$Name": "

        The descriptive name to apply to the snapshot.

        ", "Snapshot$Name": "

        The descriptive name of the snapshot.

        " } }, "SnapshotStatus": { "base": null, "refs": { "Snapshot$Status": "

        The snapshot status.

        " } }, "SnapshotType": { "base": null, "refs": { "Snapshot$Type": "

        The snapshot type.

        " } }, "Snapshots": { "base": "

        A list of descriptions of directory snapshots.

        ", "refs": { "DescribeSnapshotsResult$Snapshots": "

        The list of Snapshot objects that were retrieved.

        It is possible that this list contains less than the number of items specified in the Limit member of the request. This occurs if there are less than the requested number of items left to retrieve, or if the limitations of the operation have been exceeded.

        " } }, "SsoEnabled": { "base": null, "refs": { "DirectoryDescription$SsoEnabled": "

        Indicates if single-sign on is enabled for the directory. For more information, see EnableSso and DisableSso.

        " } }, "StageReason": { "base": null, "refs": { "DirectoryDescription$StageReason": "

        Additional information about the directory stage.

        " } }, "StartTime": { "base": null, "refs": { "Snapshot$StartTime": "

        The date and time that the snapshot was taken.

        " } }, "StateLastUpdatedDateTime": { "base": null, "refs": { "Trust$StateLastUpdatedDateTime": "

        The date and time that the TrustState was last updated.

        " } }, "SubnetId": { "base": null, "refs": { "SubnetIds$member": null } }, "SubnetIds": { "base": null, "refs": { "DirectoryConnectSettings$SubnetIds": "

        A list of subnet identifiers in the VPC in which the AD Connector is created.

        ", "DirectoryConnectSettingsDescription$SubnetIds": "

        A list of subnet identifiers in the VPC that the AD connector is in.

        ", "DirectoryVpcSettings$SubnetIds": "

        The identifiers of the subnets for the directory servers. The two subnets must be in different Availability Zones. AWS Directory Service creates a directory server and a DNS server in each of these subnets.

        ", "DirectoryVpcSettingsDescription$SubnetIds": "

        The identifiers of the subnets for the directory servers.

        " } }, "Tag": { "base": "

        Metadata assigned to an Amazon Directory Services directory consisting of a key-value pair.

        ", "refs": { "Tags$member": null } }, "TagKey": { "base": null, "refs": { "Tag$Key": "

        Required name of the tag. The string value can be Unicode characters and cannot be prefixed with \"aws:\". The string can contain only the set of Unicode letters, digits, white-space, '_', '.', '/', '=', '+', '-' (Java regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:/=+\\\\-]*)$\").

        ", "TagKeys$member": null } }, "TagKeys": { "base": null, "refs": { "RemoveTagsFromResourceRequest$TagKeys": "

        The tag key (name) of the tag to be removed.

        " } }, "TagLimitExceededException": { "base": "

        The maximum allowed number of tags was exceeded.

        ", "refs": { } }, "TagValue": { "base": null, "refs": { "Tag$Value": "

        The optional value of the tag. The string value can be Unicode characters. The string can contain only the set of Unicode letters, digits, white-space, '_', '.', '/', '=', '+', '-' (Java regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:/=+\\\\-]*)$\").

        " } }, "Tags": { "base": null, "refs": { "AddTagsToResourceRequest$Tags": "

        The tags to be assigned to the Amazon Directory Services directory.

        ", "ListTagsForResourceResult$Tags": "

        List of tags returned by the ListTagsForResource operation.

        " } }, "TopicArn": { "base": null, "refs": { "EventTopic$TopicArn": "

        The SNS topic ARN (Amazon Resource Name).

        " } }, "TopicName": { "base": null, "refs": { "DeregisterEventTopicRequest$TopicName": "

        The name of the SNS topic from which to remove the directory as a publisher.

        ", "EventTopic$TopicName": "

        The name of an AWS SNS topic the receives status messages from the directory.

        ", "RegisterEventTopicRequest$TopicName": "

        The SNS topic name to which the directory will publish status messages. This SNS topic must be in the same region as the specified Directory ID.

        ", "TopicNames$member": null } }, "TopicNames": { "base": null, "refs": { "DescribeEventTopicsRequest$TopicNames": "

        A list of SNS topic names for which to obtain the information. If this member is null, all associations for the specified Directory ID are returned.

        An empty list results in an InvalidParameterException being thrown.

        " } }, "TopicStatus": { "base": null, "refs": { "EventTopic$Status": "

        The topic registration status.

        " } }, "Trust": { "base": "

        Describes a trust relationship between an Microsoft AD in the AWS cloud and an external domain.

        ", "refs": { "Trusts$member": null } }, "TrustDirection": { "base": null, "refs": { "CreateTrustRequest$TrustDirection": "

        The direction of the trust relationship.

        ", "Trust$TrustDirection": "

        The trust relationship direction.

        " } }, "TrustId": { "base": null, "refs": { "CreateTrustResult$TrustId": "

        A unique identifier for the trust relationship that was created.

        ", "DeleteTrustRequest$TrustId": "

        The Trust ID of the trust relationship to be deleted.

        ", "DeleteTrustResult$TrustId": "

        The Trust ID of the trust relationship that was deleted.

        ", "Trust$TrustId": "

        The unique ID of the trust relationship.

        ", "TrustIds$member": null, "VerifyTrustRequest$TrustId": "

        The unique Trust ID of the trust relationship to verify.

        ", "VerifyTrustResult$TrustId": "

        The unique Trust ID of the trust relationship that was verified.

        " } }, "TrustIds": { "base": null, "refs": { "DescribeTrustsRequest$TrustIds": "

        A list of identifiers of the trust relationships for which to obtain the information. If this member is null, all trust relationships that belong to the current account are returned.

        An empty list results in an InvalidParameterException being thrown.

        " } }, "TrustPassword": { "base": null, "refs": { "CreateTrustRequest$TrustPassword": "

        The trust password. The must be the same password that was used when creating the trust relationship on the external domain.

        " } }, "TrustState": { "base": null, "refs": { "Trust$TrustState": "

        The trust relationship state.

        " } }, "TrustStateReason": { "base": null, "refs": { "Trust$TrustStateReason": "

        The reason for the TrustState.

        " } }, "TrustType": { "base": null, "refs": { "CreateTrustRequest$TrustType": "

        The trust relationship type.

        ", "Trust$TrustType": "

        The trust relationship type.

        " } }, "Trusts": { "base": null, "refs": { "DescribeTrustsResult$Trusts": "

        The list of Trust objects that were retrieved.

        It is possible that this list contains less than the number of items specified in the Limit member of the request. This occurs if there are less than the requested number of items left to retrieve, or if the limitations of the operation have been exceeded.

        " } }, "UnsupportedOperationException": { "base": "

        The operation is not supported.

        ", "refs": { } }, "UpdateConditionalForwarderRequest": { "base": "

        Updates a conditional forwarder.

        ", "refs": { } }, "UpdateConditionalForwarderResult": { "base": "

        The result of an UpdateConditionalForwarder request.

        ", "refs": { } }, "UpdateRadiusRequest": { "base": "

        Contains the inputs for the UpdateRadius operation.

        ", "refs": { } }, "UpdateRadiusResult": { "base": "

        Contains the results of the UpdateRadius operation.

        ", "refs": { } }, "UpdateSecurityGroupForDirectoryControllers": { "base": null, "refs": { "AddIpRoutesRequest$UpdateSecurityGroupForDirectoryControllers": "

        If set to true, updates the inbound and outbound rules of the security group that has the description: \"AWS created security group for directory ID directory controllers.\" Following are the new rules:

        Inbound:

        • Type: Custom UDP Rule, Protocol: UDP, Range: 88, Source: 0.0.0.0/0

        • Type: Custom UDP Rule, Protocol: UDP, Range: 123, Source: 0.0.0.0/0

        • Type: Custom UDP Rule, Protocol: UDP, Range: 138, Source: 0.0.0.0/0

        • Type: Custom UDP Rule, Protocol: UDP, Range: 389, Source: 0.0.0.0/0

        • Type: Custom UDP Rule, Protocol: UDP, Range: 464, Source: 0.0.0.0/0

        • Type: Custom UDP Rule, Protocol: UDP, Range: 445, Source: 0.0.0.0/0

        • Type: Custom TCP Rule, Protocol: TCP, Range: 88, Source: 0.0.0.0/0

        • Type: Custom TCP Rule, Protocol: TCP, Range: 135, Source: 0.0.0.0/0

        • Type: Custom TCP Rule, Protocol: TCP, Range: 445, Source: 0.0.0.0/0

        • Type: Custom TCP Rule, Protocol: TCP, Range: 464, Source: 0.0.0.0/0

        • Type: Custom TCP Rule, Protocol: TCP, Range: 636, Source: 0.0.0.0/0

        • Type: Custom TCP Rule, Protocol: TCP, Range: 1024-65535, Source: 0.0.0.0/0

        • Type: Custom TCP Rule, Protocol: TCP, Range: 3268-33269, Source: 0.0.0.0/0

        • Type: DNS (UDP), Protocol: UDP, Range: 53, Source: 0.0.0.0/0

        • Type: DNS (TCP), Protocol: TCP, Range: 53, Source: 0.0.0.0/0

        • Type: LDAP, Protocol: TCP, Range: 389, Source: 0.0.0.0/0

        • Type: All ICMP, Protocol: All, Range: N/A, Source: 0.0.0.0/0

        Outbound:

        • Type: All traffic, Protocol: All, Range: All, Destination: 0.0.0.0/0

        These security rules impact an internal network interface that is not exposed publicly.

        " } }, "UseSameUsername": { "base": null, "refs": { "RadiusSettings$UseSameUsername": "

        Not currently used.

        " } }, "UserName": { "base": null, "refs": { "DirectoryConnectSettings$CustomerUserName": "

        The username of an account in the on-premises directory that is used to connect to the directory. This account must have the following privileges:

        • Read users and groups

        • Create computer objects

        • Join computers to the domain

        ", "DirectoryConnectSettingsDescription$CustomerUserName": "

        The username of the service account in the on-premises directory.

        ", "DisableSsoRequest$UserName": "

        The username of an alternate account to use to disable single-sign on. This is only used for AD Connector directories. This account must have privileges to remove a service principal name.

        If the AD Connector service account does not have privileges to remove a service principal name, you can specify an alternate account with the UserName and Password parameters. These credentials are only used to disable single sign-on and are not stored by the service. The AD Connector service account is not changed.

        ", "EnableSsoRequest$UserName": "

        The username of an alternate account to use to enable single-sign on. This is only used for AD Connector directories. This account must have privileges to add a service principal name.

        If the AD Connector service account does not have privileges to add a service principal name, you can specify an alternate account with the UserName and Password parameters. These credentials are only used to enable single sign-on and are not stored by the service. The AD Connector service account is not changed.

        " } }, "VerifyTrustRequest": { "base": "

        Initiates the verification of an existing trust relationship between a Microsoft AD in the AWS cloud and an external domain.

        ", "refs": { } }, "VerifyTrustResult": { "base": "

        Result of a VerifyTrust request.

        ", "refs": { } }, "VpcId": { "base": null, "refs": { "DirectoryConnectSettings$VpcId": "

        The identifier of the VPC in which the AD Connector is created.

        ", "DirectoryConnectSettingsDescription$VpcId": "

        The identifier of the VPC that the AD Connector is in.

        ", "DirectoryVpcSettings$VpcId": "

        The identifier of the VPC in which to create the directory.

        ", "DirectoryVpcSettingsDescription$VpcId": "

        The identifier of the VPC that the directory is in.

        " } } } } aws-sdk-go-1.4.22/models/apis/ds/2015-04-16/examples-1.json000066400000000000000000000000541300374646400223120ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/dynamodb/000077500000000000000000000000001300374646400175775ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/dynamodb/2011-12-05/000077500000000000000000000000001300374646400206245ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/dynamodb/2011-12-05/api-2.json000066400000000000000000000504041300374646400224320ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2011-12-05", "endpointPrefix":"dynamodb", "jsonVersion":"1.0", "protocol":"json", "serviceAbbreviation":"DynamoDB", "serviceFullName":"Amazon DynamoDB", "signatureVersion":"v4", "targetPrefix":"DynamoDB_20111205" }, "operations":{ "BatchGetItem":{ "name":"BatchGetItem", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BatchGetItemInput"}, "output":{"shape":"BatchGetItemOutput"}, "errors":[ {"shape":"ProvisionedThroughputExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InternalServerError"} ] }, "BatchWriteItem":{ "name":"BatchWriteItem", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BatchWriteItemInput"}, "output":{"shape":"BatchWriteItemOutput"}, "errors":[ {"shape":"ProvisionedThroughputExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"InternalServerError"} ] }, "CreateTable":{ "name":"CreateTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateTableInput"}, "output":{"shape":"CreateTableOutput"}, "errors":[ {"shape":"ResourceInUseException"}, {"shape":"LimitExceededException"}, {"shape":"InternalServerError"} ] }, "DeleteItem":{ "name":"DeleteItem", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteItemInput"}, "output":{"shape":"DeleteItemOutput"}, "errors":[ {"shape":"ConditionalCheckFailedException"}, {"shape":"ProvisionedThroughputExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"InternalServerError"} ] }, "DeleteTable":{ "name":"DeleteTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteTableInput"}, "output":{"shape":"DeleteTableOutput"}, "errors":[ {"shape":"ResourceInUseException"}, {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"InternalServerError"} ] }, "DescribeTable":{ "name":"DescribeTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTableInput"}, "output":{"shape":"DescribeTableOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InternalServerError"} ] }, "GetItem":{ "name":"GetItem", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetItemInput"}, "output":{"shape":"GetItemOutput"}, "errors":[ {"shape":"ProvisionedThroughputExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InternalServerError"} ] }, "ListTables":{ "name":"ListTables", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTablesInput"}, "output":{"shape":"ListTablesOutput"}, "errors":[ {"shape":"InternalServerError"} ] }, "PutItem":{ "name":"PutItem", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutItemInput"}, "output":{"shape":"PutItemOutput"}, "errors":[ {"shape":"ConditionalCheckFailedException"}, {"shape":"ProvisionedThroughputExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"InternalServerError"} ] }, "Query":{ "name":"Query", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"QueryInput"}, "output":{"shape":"QueryOutput"}, "errors":[ {"shape":"ProvisionedThroughputExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InternalServerError"} ] }, "Scan":{ "name":"Scan", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ScanInput"}, "output":{"shape":"ScanOutput"}, "errors":[ {"shape":"ProvisionedThroughputExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InternalServerError"} ] }, "UpdateItem":{ "name":"UpdateItem", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateItemInput"}, "output":{"shape":"UpdateItemOutput"}, "errors":[ {"shape":"ConditionalCheckFailedException"}, {"shape":"ProvisionedThroughputExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"InternalServerError"} ] }, "UpdateTable":{ "name":"UpdateTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateTableInput"}, "output":{"shape":"UpdateTableOutput"}, "errors":[ {"shape":"ResourceInUseException"}, {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"InternalServerError"} ] } }, "shapes":{ "AttributeAction":{ "type":"string", "enum":[ "ADD", "PUT", "DELETE" ] }, "AttributeMap":{ "type":"map", "key":{"shape":"AttributeName"}, "value":{"shape":"AttributeValue"} }, "AttributeName":{ "type":"string", "max":65535 }, "AttributeNameList":{ "type":"list", "member":{"shape":"AttributeName"}, "min":1 }, "AttributeUpdates":{ "type":"map", "key":{"shape":"AttributeName"}, "value":{"shape":"AttributeValueUpdate"} }, "AttributeValue":{ "type":"structure", "members":{ "S":{"shape":"StringAttributeValue"}, "N":{"shape":"NumberAttributeValue"}, "B":{"shape":"BinaryAttributeValue"}, "SS":{"shape":"StringSetAttributeValue"}, "NS":{"shape":"NumberSetAttributeValue"}, "BS":{"shape":"BinarySetAttributeValue"} } }, "AttributeValueList":{ "type":"list", "member":{"shape":"AttributeValue"} }, "AttributeValueUpdate":{ "type":"structure", "members":{ "Value":{"shape":"AttributeValue"}, "Action":{"shape":"AttributeAction"} } }, "BatchGetItemInput":{ "type":"structure", "required":["RequestItems"], "members":{ "RequestItems":{"shape":"BatchGetRequestMap"} } }, "BatchGetItemOutput":{ "type":"structure", "members":{ "Responses":{"shape":"BatchGetResponseMap"}, "UnprocessedKeys":{"shape":"BatchGetRequestMap"} } }, "BatchGetRequestMap":{ "type":"map", "key":{"shape":"TableName"}, "value":{"shape":"KeysAndAttributes"}, "max":100, "min":1 }, "BatchGetResponseMap":{ "type":"map", "key":{"shape":"TableName"}, "value":{"shape":"BatchResponse"} }, "BatchResponse":{ "type":"structure", "members":{ "Items":{"shape":"ItemList"}, "ConsumedCapacityUnits":{"shape":"ConsumedCapacityUnits"} } }, "BatchWriteItemInput":{ "type":"structure", "required":["RequestItems"], "members":{ "RequestItems":{"shape":"BatchWriteItemRequestMap"} } }, "BatchWriteItemOutput":{ "type":"structure", "members":{ "Responses":{"shape":"BatchWriteResponseMap"}, "UnprocessedItems":{"shape":"BatchWriteItemRequestMap"} } }, "BatchWriteItemRequestMap":{ "type":"map", "key":{"shape":"TableName"}, "value":{"shape":"WriteRequests"}, "max":25, "min":1 }, "BatchWriteResponse":{ "type":"structure", "members":{ "ConsumedCapacityUnits":{"shape":"ConsumedCapacityUnits"} } }, "BatchWriteResponseMap":{ "type":"map", "key":{"shape":"TableName"}, "value":{"shape":"BatchWriteResponse"} }, "BinaryAttributeValue":{"type":"blob"}, "BinarySetAttributeValue":{ "type":"list", "member":{"shape":"BinaryAttributeValue"} }, "BooleanObject":{"type":"boolean"}, "ComparisonOperator":{ "type":"string", "enum":[ "EQ", "NE", "IN", "LE", "LT", "GE", "GT", "BETWEEN", "NOT_NULL", "NULL", "CONTAINS", "NOT_CONTAINS", "BEGINS_WITH" ] }, "Condition":{ "type":"structure", "required":["ComparisonOperator"], "members":{ "AttributeValueList":{"shape":"AttributeValueList"}, "ComparisonOperator":{"shape":"ComparisonOperator"} } }, "ConditionalCheckFailedException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ConsistentRead":{"type":"boolean"}, "ConsumedCapacityUnits":{"type":"double"}, "CreateTableInput":{ "type":"structure", "required":[ "TableName", "KeySchema", "ProvisionedThroughput" ], "members":{ "TableName":{"shape":"TableName"}, "KeySchema":{"shape":"KeySchema"}, "ProvisionedThroughput":{"shape":"ProvisionedThroughput"} } }, "CreateTableOutput":{ "type":"structure", "members":{ "TableDescription":{"shape":"TableDescription"} } }, "Date":{"type":"timestamp"}, "DeleteItemInput":{ "type":"structure", "required":[ "TableName", "Key" ], "members":{ "TableName":{"shape":"TableName"}, "Key":{"shape":"Key"}, "Expected":{"shape":"ExpectedAttributeMap"}, "ReturnValues":{"shape":"ReturnValue"} } }, "DeleteItemOutput":{ "type":"structure", "members":{ "Attributes":{"shape":"AttributeMap"}, "ConsumedCapacityUnits":{"shape":"ConsumedCapacityUnits"} } }, "DeleteRequest":{ "type":"structure", "required":["Key"], "members":{ "Key":{"shape":"Key"} } }, "DeleteTableInput":{ "type":"structure", "required":["TableName"], "members":{ "TableName":{"shape":"TableName"} } }, "DeleteTableOutput":{ "type":"structure", "members":{ "TableDescription":{"shape":"TableDescription"} } }, "DescribeTableInput":{ "type":"structure", "required":["TableName"], "members":{ "TableName":{"shape":"TableName"} } }, "DescribeTableOutput":{ "type":"structure", "members":{ "Table":{"shape":"TableDescription"} } }, "ErrorMessage":{"type":"string"}, "ExpectedAttributeMap":{ "type":"map", "key":{"shape":"AttributeName"}, "value":{"shape":"ExpectedAttributeValue"} }, "ExpectedAttributeValue":{ "type":"structure", "members":{ "Value":{"shape":"AttributeValue"}, "Exists":{"shape":"BooleanObject"} } }, "FilterConditionMap":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"Condition"} }, "GetItemInput":{ "type":"structure", "required":[ "TableName", "Key" ], "members":{ "TableName":{"shape":"TableName"}, "Key":{"shape":"Key"}, "AttributesToGet":{"shape":"AttributeNameList"}, "ConsistentRead":{"shape":"ConsistentRead"} } }, "GetItemOutput":{ "type":"structure", "members":{ "Item":{"shape":"AttributeMap"}, "ConsumedCapacityUnits":{"shape":"ConsumedCapacityUnits"} } }, "Integer":{"type":"integer"}, "InternalServerError":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true, "fault":true }, "ItemList":{ "type":"list", "member":{"shape":"AttributeMap"} }, "Key":{ "type":"structure", "required":["HashKeyElement"], "members":{ "HashKeyElement":{"shape":"AttributeValue"}, "RangeKeyElement":{"shape":"AttributeValue"} } }, "KeyList":{ "type":"list", "member":{"shape":"Key"}, "max":100, "min":1 }, "KeySchema":{ "type":"structure", "required":["HashKeyElement"], "members":{ "HashKeyElement":{"shape":"KeySchemaElement"}, "RangeKeyElement":{"shape":"KeySchemaElement"} } }, "KeySchemaAttributeName":{ "type":"string", "max":255, "min":1 }, "KeySchemaElement":{ "type":"structure", "required":[ "AttributeName", "AttributeType" ], "members":{ "AttributeName":{"shape":"KeySchemaAttributeName"}, "AttributeType":{"shape":"ScalarAttributeType"} } }, "KeysAndAttributes":{ "type":"structure", "required":["Keys"], "members":{ "Keys":{"shape":"KeyList"}, "AttributesToGet":{"shape":"AttributeNameList"}, "ConsistentRead":{"shape":"ConsistentRead"} } }, "LimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ListTablesInput":{ "type":"structure", "members":{ "ExclusiveStartTableName":{"shape":"TableName"}, "Limit":{"shape":"ListTablesInputLimit"} } }, "ListTablesInputLimit":{ "type":"integer", "max":100, "min":1 }, "ListTablesOutput":{ "type":"structure", "members":{ "TableNames":{"shape":"TableNameList"}, "LastEvaluatedTableName":{"shape":"TableName"} } }, "Long":{"type":"long"}, "NumberAttributeValue":{"type":"string"}, "NumberSetAttributeValue":{ "type":"list", "member":{"shape":"NumberAttributeValue"} }, "PositiveIntegerObject":{ "type":"integer", "min":1 }, "PositiveLongObject":{ "type":"long", "min":1 }, "ProvisionedThroughput":{ "type":"structure", "required":[ "ReadCapacityUnits", "WriteCapacityUnits" ], "members":{ "ReadCapacityUnits":{"shape":"PositiveLongObject"}, "WriteCapacityUnits":{"shape":"PositiveLongObject"} } }, "ProvisionedThroughputDescription":{ "type":"structure", "members":{ "LastIncreaseDateTime":{"shape":"Date"}, "LastDecreaseDateTime":{"shape":"Date"}, "NumberOfDecreasesToday":{"shape":"PositiveLongObject"}, "ReadCapacityUnits":{"shape":"PositiveLongObject"}, "WriteCapacityUnits":{"shape":"PositiveLongObject"} } }, "ProvisionedThroughputExceededException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "PutItemInput":{ "type":"structure", "required":[ "TableName", "Item" ], "members":{ "TableName":{"shape":"TableName"}, "Item":{"shape":"PutItemInputAttributeMap"}, "Expected":{"shape":"ExpectedAttributeMap"}, "ReturnValues":{"shape":"ReturnValue"} } }, "PutItemInputAttributeMap":{ "type":"map", "key":{"shape":"AttributeName"}, "value":{"shape":"AttributeValue"} }, "PutItemOutput":{ "type":"structure", "members":{ "Attributes":{"shape":"AttributeMap"}, "ConsumedCapacityUnits":{"shape":"ConsumedCapacityUnits"} } }, "PutRequest":{ "type":"structure", "required":["Item"], "members":{ "Item":{"shape":"PutItemInputAttributeMap"} } }, "QueryInput":{ "type":"structure", "required":[ "TableName", "HashKeyValue" ], "members":{ "TableName":{"shape":"TableName"}, "AttributesToGet":{"shape":"AttributeNameList"}, "Limit":{"shape":"PositiveIntegerObject"}, "ConsistentRead":{"shape":"ConsistentRead"}, "Count":{"shape":"BooleanObject"}, "HashKeyValue":{"shape":"AttributeValue"}, "RangeKeyCondition":{"shape":"Condition"}, "ScanIndexForward":{"shape":"BooleanObject"}, "ExclusiveStartKey":{"shape":"Key"} } }, "QueryOutput":{ "type":"structure", "members":{ "Items":{"shape":"ItemList"}, "Count":{"shape":"Integer"}, "LastEvaluatedKey":{"shape":"Key"}, "ConsumedCapacityUnits":{"shape":"ConsumedCapacityUnits"} } }, "ResourceInUseException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ResourceNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ReturnValue":{ "type":"string", "enum":[ "NONE", "ALL_OLD", "UPDATED_OLD", "ALL_NEW", "UPDATED_NEW" ] }, "ScalarAttributeType":{ "type":"string", "enum":[ "S", "N", "B" ] }, "ScanInput":{ "type":"structure", "required":["TableName"], "members":{ "TableName":{"shape":"TableName"}, "AttributesToGet":{"shape":"AttributeNameList"}, "Limit":{"shape":"PositiveIntegerObject"}, "Count":{"shape":"BooleanObject"}, "ScanFilter":{"shape":"FilterConditionMap"}, "ExclusiveStartKey":{"shape":"Key"} } }, "ScanOutput":{ "type":"structure", "members":{ "Items":{"shape":"ItemList"}, "Count":{"shape":"Integer"}, "ScannedCount":{"shape":"Integer"}, "LastEvaluatedKey":{"shape":"Key"}, "ConsumedCapacityUnits":{"shape":"ConsumedCapacityUnits"} } }, "String":{"type":"string"}, "StringAttributeValue":{"type":"string"}, "StringSetAttributeValue":{ "type":"list", "member":{"shape":"StringAttributeValue"} }, "TableDescription":{ "type":"structure", "members":{ "TableName":{"shape":"TableName"}, "KeySchema":{"shape":"KeySchema"}, "TableStatus":{"shape":"TableStatus"}, "CreationDateTime":{"shape":"Date"}, "ProvisionedThroughput":{"shape":"ProvisionedThroughputDescription"}, "TableSizeBytes":{"shape":"Long"}, "ItemCount":{"shape":"Long"} } }, "TableName":{ "type":"string", "max":255, "min":3, "pattern":"[a-zA-Z0-9_.-]+" }, "TableNameList":{ "type":"list", "member":{"shape":"TableName"} }, "TableStatus":{ "type":"string", "enum":[ "CREATING", "UPDATING", "DELETING", "ACTIVE" ] }, "UpdateItemInput":{ "type":"structure", "required":[ "TableName", "Key", "AttributeUpdates" ], "members":{ "TableName":{"shape":"TableName"}, "Key":{"shape":"Key"}, "AttributeUpdates":{"shape":"AttributeUpdates"}, "Expected":{"shape":"ExpectedAttributeMap"}, "ReturnValues":{"shape":"ReturnValue"} } }, "UpdateItemOutput":{ "type":"structure", "members":{ "Attributes":{"shape":"AttributeMap"}, "ConsumedCapacityUnits":{"shape":"ConsumedCapacityUnits"} } }, "UpdateTableInput":{ "type":"structure", "required":[ "TableName", "ProvisionedThroughput" ], "members":{ "TableName":{"shape":"TableName"}, "ProvisionedThroughput":{"shape":"ProvisionedThroughput"} } }, "UpdateTableOutput":{ "type":"structure", "members":{ "TableDescription":{"shape":"TableDescription"} } }, "WriteRequest":{ "type":"structure", "members":{ "PutRequest":{"shape":"PutRequest"}, "DeleteRequest":{"shape":"DeleteRequest"} } }, "WriteRequests":{ "type":"list", "member":{"shape":"WriteRequest"}, "max":25, "min":1 } } } aws-sdk-go-1.4.22/models/apis/dynamodb/2011-12-05/docs-2.json000066400000000000000000001061051300374646400226110ustar00rootroot00000000000000{ "version": "2.0", "service": "

        Amazon DynamoDB is a fast, highly scalable, highly available, cost-effective non-relational database service.

        Amazon DynamoDB removes traditional scalability limitations on data storage while maintaining low latency and predictable performance.

        ", "operations": { "BatchGetItem": "

        Retrieves the attributes for multiple items from multiple tables using their primary keys.

        The maximum number of item attributes that can be retrieved for a single operation is 100. Also, the number of items retrieved is constrained by a 1 MB the size limit. If the response size limit is exceeded or a partial result is returned due to an internal processing failure, Amazon DynamoDB returns an UnprocessedKeys value so you can retry the operation starting with the next item to get.

        Amazon DynamoDB automatically adjusts the number of items returned per page to enforce this limit. For example, even if you ask to retrieve 100 items, but each individual item is 50k in size, the system returns 20 items and an appropriate UnprocessedKeys value so you can get the next page of results. If necessary, your application needs its own logic to assemble the pages of results into one set.

        ", "BatchWriteItem": "

        Allows to execute a batch of Put and/or Delete Requests for many tables in a single call. A total of 25 requests are allowed.

        There are no transaction guarantees provided by this API. It does not allow conditional puts nor does it support return values.

        ", "CreateTable": "

        Adds a new table to your account.

        The table name must be unique among those associated with the AWS Account issuing the request, and the AWS Region that receives the request (e.g. us-east-1).

        The CreateTable operation triggers an asynchronous workflow to begin creating the table. Amazon DynamoDB immediately returns the state of the table (CREATING) until the table is in the ACTIVE state. Once the table is in the ACTIVE state, you can perform data plane operations.

        ", "DeleteItem": "

        Deletes a single item in a table by primary key.

        You can perform a conditional delete operation that deletes the item if it exists, or if it has an expected attribute value.

        ", "DeleteTable": "

        Deletes a table and all of its items.

        If the table is in the ACTIVE state, you can delete it. If a table is in CREATING or UPDATING states then Amazon DynamoDB returns a ResourceInUseException. If the specified table does not exist, Amazon DynamoDB returns a ResourceNotFoundException.

        ", "DescribeTable": "

        Retrieves information about the table, including the current status of the table, the primary key schema and when the table was created.

        If the table does not exist, Amazon DynamoDB returns a ResourceNotFoundException.

        ", "GetItem": "

        Retrieves a set of Attributes for an item that matches the primary key.

        The GetItem operation provides an eventually-consistent read by default. If eventually-consistent reads are not acceptable for your application, use ConsistentRead. Although this operation might take longer than a standard read, it always returns the last updated value.

        ", "ListTables": "

        Retrieves a paginated list of table names created by the AWS Account of the caller in the AWS Region (e.g. us-east-1).

        ", "PutItem": "

        Creates a new item, or replaces an old item with a new item (including all the attributes).

        If an item already exists in the specified table with the same primary key, the new item completely replaces the existing item. You can perform a conditional put (insert a new item if one with the specified primary key doesn't exist), or replace an existing item if it has certain attribute values.

        ", "Query": "

        Gets the values of one or more items and its attributes by primary key (composite primary key, only).

        Narrow the scope of the query using comparison operators on the RangeKeyValue of the composite key. Use the ScanIndexForward parameter to get results in forward or reverse order by range key.

        ", "Scan": "

        Retrieves one or more items and its attributes by performing a full scan of a table.

        Provide a ScanFilter to get more specific results.

        ", "UpdateItem": "

        Edits an existing item's attributes.

        You can perform a conditional update (insert a new attribute name-value pair if it doesn't exist, or replace an existing name-value pair if it has certain expected attribute values).

        ", "UpdateTable": "

        Updates the provisioned throughput for the given table.

        Setting the throughput for a table helps you manage performance and is part of the Provisioned Throughput feature of Amazon DynamoDB.

        " }, "shapes": { "AttributeAction": { "base": "

        The type of action for an item update operation. Only use the add action for numbers or sets; the specified value is added to the existing value. If a set of values is specified, the values are added to the existing set. Adds the specified attribute. If the attribute exists, it is replaced by the new value. If no value is specified, this removes the attribute and its value. If a set of values is specified, then the values in the specified set are removed from the old set.

        ", "refs": { "AttributeValueUpdate$Action": null } }, "AttributeMap": { "base": null, "refs": { "DeleteItemOutput$Attributes": "

        If the ReturnValues parameter is provided as ALL_OLD in the request, Amazon DynamoDB returns an array of attribute name-value pairs (essentially, the deleted item). Otherwise, the response contains an empty set.

        ", "GetItemOutput$Item": "

        Contains the requested attributes.

        ", "ItemList$member": null, "PutItemOutput$Attributes": "

        Attribute values before the put operation, but only if the ReturnValues parameter is specified as ALL_OLD in the request.

        ", "UpdateItemOutput$Attributes": "

        A map of attribute name-value pairs, but only if the ReturnValues parameter is specified as something other than NONE in the request.

        " } }, "AttributeName": { "base": null, "refs": { "AttributeMap$key": null, "AttributeNameList$member": null, "AttributeUpdates$key": null, "ExpectedAttributeMap$key": null, "PutItemInputAttributeMap$key": null } }, "AttributeNameList": { "base": "

        List of Attribute names. If attribute names are not specified then all attributes will be returned. If some attributes are not found, they will not appear in the result.

        ", "refs": { "GetItemInput$AttributesToGet": null, "KeysAndAttributes$AttributesToGet": null, "QueryInput$AttributesToGet": null, "ScanInput$AttributesToGet": null } }, "AttributeUpdates": { "base": "

        Map of attribute name to the new value and action for the update. The attribute names specify the attributes to modify, and cannot contain any primary key attributes.

        ", "refs": { "UpdateItemInput$AttributeUpdates": null } }, "AttributeValue": { "base": "

        AttributeValue can be String, Number, Binary, StringSet, NumberSet, BinarySet.

        ", "refs": { "AttributeMap$value": null, "AttributeValueList$member": null, "AttributeValueUpdate$Value": null, "ExpectedAttributeValue$Value": "

        Specify whether or not a value already exists and has a specific content for the attribute name-value pair.

        ", "Key$HashKeyElement": "

        A hash key element is treated as the primary key, and can be a string or a number. Single attribute primary keys have one index value. The value can be String, Number, StringSet, NumberSet.

        ", "Key$RangeKeyElement": "

        A range key element is treated as a secondary key (used in conjunction with the primary key), and can be a string or a number, and is only used for hash-and-range primary keys. The value can be String, Number, StringSet, NumberSet.

        ", "PutItemInputAttributeMap$value": null, "QueryInput$HashKeyValue": "

        Attribute value of the hash component of the composite primary key.

        " } }, "AttributeValueList": { "base": "

        A list of attribute values to be used with a comparison operator for a scan or query operation. For comparisons that require more than one value, such as a BETWEEN comparison, the AttributeValueList contains two attribute values and the comparison operator.

        ", "refs": { "Condition$AttributeValueList": null } }, "AttributeValueUpdate": { "base": "

        Specifies the attribute to update and how to perform the update. Possible values: PUT (default), ADD or DELETE.

        ", "refs": { "AttributeUpdates$value": null } }, "BatchGetItemInput": { "base": null, "refs": { } }, "BatchGetItemOutput": { "base": null, "refs": { } }, "BatchGetRequestMap": { "base": "

        A map of the table name and corresponding items to get by primary key. While requesting items, each table name can be invoked only once per operation.

        ", "refs": { "BatchGetItemInput$RequestItems": null, "BatchGetItemOutput$UnprocessedKeys": "

        Contains a map of tables and their respective keys that were not processed with the current response, possibly due to reaching a limit on the response size. The UnprocessedKeys value is in the same form as a RequestItems parameter (so the value can be provided directly to a subsequent BatchGetItem operation). For more information, see the above RequestItems parameter.

        " } }, "BatchGetResponseMap": { "base": "

        Table names and the respective item attributes from the tables.

        ", "refs": { "BatchGetItemOutput$Responses": null } }, "BatchResponse": { "base": "

        The item attributes from a response in a specific table, along with the read resources consumed on the table during the request.

        ", "refs": { "BatchGetResponseMap$value": null } }, "BatchWriteItemInput": { "base": null, "refs": { } }, "BatchWriteItemOutput": { "base": "

        A container for BatchWriteItem response

        ", "refs": { } }, "BatchWriteItemRequestMap": { "base": "

        A map of table name to list-of-write-requests.

        Key: The table name corresponding to the list of requests

        Value: Essentially a list of request items. Each request item could contain either a PutRequest or DeleteRequest. Never both.

        ", "refs": { "BatchWriteItemInput$RequestItems": "

        A map of table name to list-of-write-requests. Used as input to the BatchWriteItem API call

        ", "BatchWriteItemOutput$UnprocessedItems": "

        The Items which we could not successfully process in a BatchWriteItem call is returned as UnprocessedItems

        " } }, "BatchWriteResponse": { "base": null, "refs": { "BatchWriteResponseMap$value": null } }, "BatchWriteResponseMap": { "base": null, "refs": { "BatchWriteItemOutput$Responses": "

        The response object as a result of BatchWriteItem call. This is essentially a map of table name to ConsumedCapacityUnits.

        " } }, "BinaryAttributeValue": { "base": null, "refs": { "AttributeValue$B": "

        Binary attributes are sequences of unsigned bytes.

        ", "BinarySetAttributeValue$member": null } }, "BinarySetAttributeValue": { "base": null, "refs": { "AttributeValue$BS": "

        A set of binary attributes.

        " } }, "BooleanObject": { "base": null, "refs": { "ExpectedAttributeValue$Exists": "

        Specify whether or not a value already exists for the attribute name-value pair.

        ", "QueryInput$Count": "

        If set to true, Amazon DynamoDB returns a total number of items that match the query parameters, instead of a list of the matching items and their attributes. Do not set Count to true while providing a list of AttributesToGet, otherwise Amazon DynamoDB returns a validation error.

        ", "QueryInput$ScanIndexForward": "

        Specifies forward or backward traversal of the index. Amazon DynamoDB returns results reflecting the requested order, determined by the range key. The default value is true (forward).

        ", "ScanInput$Count": "

        If set to true, Amazon DynamoDB returns a total number of items for the Scan operation, even if the operation has no matching items for the assigned filter. Do not set Count to true while providing a list of AttributesToGet, otherwise Amazon DynamoDB returns a validation error.

        " } }, "ComparisonOperator": { "base": "

        A comparison operator is an enumeration of several operations:

        • EQ for equal.
        • NE for not equal.
        • IN checks for exact matches.
        • LE for less than or equal to.
        • LT for less than.
        • GE for greater than or equal to.
        • GT for greater than.
        • BETWEEN for between.
        • NOT_NULL for exists.
        • NULL for not exists.
        • CONTAINS for substring or value in a set.
        • NOT_CONTAINS for absence of a substring or absence of a value in a set.
        • BEGINS_WITH for a substring prefix.

        Scan operations support all available comparison operators.

        Query operations support a subset of the available comparison operators: EQ, LE, LT, GE, GT, BETWEEN, and BEGINS_WITH.

        ", "refs": { "Condition$ComparisonOperator": null } }, "Condition": { "base": null, "refs": { "FilterConditionMap$value": null, "QueryInput$RangeKeyCondition": "

        A container for the attribute values and comparison operators to use for the query.

        " } }, "ConditionalCheckFailedException": { "base": "

        This exception is thrown when an expected value does not match what was found in the system.

        ", "refs": { } }, "ConsistentRead": { "base": "

        If set to true, then a consistent read is issued. Otherwise eventually-consistent is used.

        ", "refs": { "GetItemInput$ConsistentRead": null, "KeysAndAttributes$ConsistentRead": null, "QueryInput$ConsistentRead": null } }, "ConsumedCapacityUnits": { "base": "

        The number of Capacity Units of the provisioned throughput of the table consumed during the operation. GetItem, BatchGetItem, BatchWriteItem, Query, and Scan operations consume ReadCapacityUnits, while PutItem, UpdateItem, and DeleteItem operations consume WriteCapacityUnits.

        ", "refs": { "BatchResponse$ConsumedCapacityUnits": null, "BatchWriteResponse$ConsumedCapacityUnits": null, "DeleteItemOutput$ConsumedCapacityUnits": null, "GetItemOutput$ConsumedCapacityUnits": null, "PutItemOutput$ConsumedCapacityUnits": null, "QueryOutput$ConsumedCapacityUnits": null, "ScanOutput$ConsumedCapacityUnits": null, "UpdateItemOutput$ConsumedCapacityUnits": null } }, "CreateTableInput": { "base": null, "refs": { } }, "CreateTableOutput": { "base": null, "refs": { } }, "Date": { "base": null, "refs": { "ProvisionedThroughputDescription$LastIncreaseDateTime": null, "ProvisionedThroughputDescription$LastDecreaseDateTime": null, "TableDescription$CreationDateTime": null } }, "DeleteItemInput": { "base": null, "refs": { } }, "DeleteItemOutput": { "base": null, "refs": { } }, "DeleteRequest": { "base": "

        A container for a Delete BatchWrite request

        ", "refs": { "WriteRequest$DeleteRequest": null } }, "DeleteTableInput": { "base": null, "refs": { } }, "DeleteTableOutput": { "base": null, "refs": { } }, "DescribeTableInput": { "base": null, "refs": { } }, "DescribeTableOutput": { "base": null, "refs": { } }, "ErrorMessage": { "base": null, "refs": { "ConditionalCheckFailedException$message": null, "InternalServerError$message": null, "LimitExceededException$message": null, "ProvisionedThroughputExceededException$message": null, "ResourceInUseException$message": null, "ResourceNotFoundException$message": null } }, "ExpectedAttributeMap": { "base": "

        Designates an attribute for a conditional modification. The Expected parameter allows you to provide an attribute name, and whether or not Amazon DynamoDB should check to see if the attribute has a particular value before modifying it.

        ", "refs": { "DeleteItemInput$Expected": null, "PutItemInput$Expected": null, "UpdateItemInput$Expected": null } }, "ExpectedAttributeValue": { "base": "

        Allows you to provide an attribute name, and whether or not Amazon DynamoDB should check to see if the attribute value already exists; or if the attribute value exists and has a particular value before changing it.

        ", "refs": { "ExpectedAttributeMap$value": null } }, "FilterConditionMap": { "base": null, "refs": { "ScanInput$ScanFilter": "

        Evaluates the scan results and returns only the desired values.

        " } }, "GetItemInput": { "base": null, "refs": { } }, "GetItemOutput": { "base": null, "refs": { } }, "Integer": { "base": null, "refs": { "QueryOutput$Count": "

        Number of items in the response.

        ", "ScanOutput$Count": "

        Number of items in the response.

        ", "ScanOutput$ScannedCount": "

        Number of items in the complete scan before any filters are applied. A high ScannedCount value with few, or no, Count results indicates an inefficient Scan operation.

        " } }, "InternalServerError": { "base": "

        This exception is thrown when the service has a problem when trying to process the request.

        ", "refs": { } }, "ItemList": { "base": null, "refs": { "BatchResponse$Items": null, "QueryOutput$Items": null, "ScanOutput$Items": null } }, "Key": { "base": "

        The primary key that uniquely identifies each item in a table. A primary key can be a one attribute (hash) primary key or a two attribute (hash-and-range) primary key.

        ", "refs": { "DeleteItemInput$Key": null, "DeleteRequest$Key": "

        The item's key to be delete

        ", "GetItemInput$Key": null, "KeyList$member": null, "QueryInput$ExclusiveStartKey": "

        Primary key of the item from which to continue an earlier query. An earlier query might provide this value as the LastEvaluatedKey if that query operation was interrupted before completing the query; either because of the result set size or the Limit parameter. The LastEvaluatedKey can be passed back in a new query request to continue the operation from that point.

        ", "QueryOutput$LastEvaluatedKey": "

        Primary key of the item where the query operation stopped, inclusive of the previous result set. Use this value to start a new operation excluding this value in the new request. The LastEvaluatedKey is null when the entire query result set is complete (i.e. the operation processed the \"last page\").

        ", "ScanInput$ExclusiveStartKey": "

        Primary key of the item from which to continue an earlier scan. An earlier scan might provide this value if that scan operation was interrupted before scanning the entire table; either because of the result set size or the Limit parameter. The LastEvaluatedKey can be passed back in a new scan request to continue the operation from that point.

        ", "ScanOutput$LastEvaluatedKey": "

        Primary key of the item where the scan operation stopped. Provide this value in a subsequent scan operation to continue the operation from that point. The LastEvaluatedKey is null when the entire scan result set is complete (i.e. the operation processed the \"last page\").

        ", "UpdateItemInput$Key": null } }, "KeyList": { "base": null, "refs": { "KeysAndAttributes$Keys": null } }, "KeySchema": { "base": "

        The KeySchema identifies the primary key as a one attribute primary key (hash) or a composite two attribute (hash-and-range) primary key. Single attribute primary keys have one index value: a HashKeyElement. A composite hash-and-range primary key contains two attribute values: a HashKeyElement and a RangeKeyElement.

        ", "refs": { "CreateTableInput$KeySchema": null, "TableDescription$KeySchema": null } }, "KeySchemaAttributeName": { "base": null, "refs": { "KeySchemaElement$AttributeName": "

        The AttributeName of the KeySchemaElement.

        " } }, "KeySchemaElement": { "base": "

        KeySchemaElement is the primary key (hash or hash-and-range) structure for the table.

        ", "refs": { "KeySchema$HashKeyElement": "

        A hash key element is treated as the primary key, and can be a string or a number. Single attribute primary keys have one index value. The value can be String, Number, StringSet, NumberSet.

        ", "KeySchema$RangeKeyElement": "

        A range key element is treated as a secondary key (used in conjunction with the primary key), and can be a string or a number, and is only used for hash-and-range primary keys. The value can be String, Number, StringSet, NumberSet.

        " } }, "KeysAndAttributes": { "base": null, "refs": { "BatchGetRequestMap$value": null } }, "LimitExceededException": { "base": "

        This exception is thrown when the subscriber exceeded the limits on the number of objects or operations.

        ", "refs": { } }, "ListTablesInput": { "base": null, "refs": { } }, "ListTablesInputLimit": { "base": "

        A number of maximum table names to return.

        ", "refs": { "ListTablesInput$Limit": null } }, "ListTablesOutput": { "base": null, "refs": { } }, "Long": { "base": null, "refs": { "TableDescription$TableSizeBytes": null, "TableDescription$ItemCount": null } }, "NumberAttributeValue": { "base": null, "refs": { "AttributeValue$N": "

        Numbers are positive or negative exact-value decimals and integers. A number can have up to 38 digits precision and can be between 10^-128 to 10^+126.

        ", "NumberSetAttributeValue$member": null } }, "NumberSetAttributeValue": { "base": null, "refs": { "AttributeValue$NS": "

        A set of numbers.

        " } }, "PositiveIntegerObject": { "base": null, "refs": { "QueryInput$Limit": "

        The maximum number of items to return. If Amazon DynamoDB hits this limit while querying the table, it stops the query and returns the matching values up to the limit, and a LastEvaluatedKey to apply in a subsequent operation to continue the query. Also, if the result set size exceeds 1MB before Amazon DynamoDB hits this limit, it stops the query and returns the matching values, and a LastEvaluatedKey to apply in a subsequent operation to continue the query.

        ", "ScanInput$Limit": "

        The maximum number of items to return. If Amazon DynamoDB hits this limit while scanning the table, it stops the scan and returns the matching values up to the limit, and a LastEvaluatedKey to apply in a subsequent operation to continue the scan. Also, if the scanned data set size exceeds 1 MB before Amazon DynamoDB hits this limit, it stops the scan and returns the matching values up to the limit, and a LastEvaluatedKey to apply in a subsequent operation to continue the scan.

        " } }, "PositiveLongObject": { "base": null, "refs": { "ProvisionedThroughput$ReadCapacityUnits": "

        ReadCapacityUnits are in terms of strictly consistent reads, assuming items of 1k. 2k items require twice the ReadCapacityUnits. Eventually-consistent reads only require half the ReadCapacityUnits of stirctly consistent reads.

        ", "ProvisionedThroughput$WriteCapacityUnits": "

        WriteCapacityUnits are in terms of strictly consistent reads, assuming items of 1k. 2k items require twice the WriteCapacityUnits.

        ", "ProvisionedThroughputDescription$NumberOfDecreasesToday": null, "ProvisionedThroughputDescription$ReadCapacityUnits": null, "ProvisionedThroughputDescription$WriteCapacityUnits": null } }, "ProvisionedThroughput": { "base": "

        Provisioned throughput reserves the required read and write resources for your table in terms of ReadCapacityUnits and WriteCapacityUnits. Values for provisioned throughput depend upon your expected read/write rates, item size, and consistency. Provide the expected number of read and write operations, assuming an item size of 1k and strictly consistent reads. For 2k item size, double the value. For 3k, triple the value, etc. Eventually-consistent reads consume half the resources of strictly consistent reads.

        ", "refs": { "CreateTableInput$ProvisionedThroughput": null, "UpdateTableInput$ProvisionedThroughput": null } }, "ProvisionedThroughputDescription": { "base": null, "refs": { "TableDescription$ProvisionedThroughput": null } }, "ProvisionedThroughputExceededException": { "base": "

        This exception is thrown when the level of provisioned throughput defined for the table is exceeded.

        ", "refs": { } }, "PutItemInput": { "base": null, "refs": { } }, "PutItemInputAttributeMap": { "base": "

        A map of the attributes for the item, and must include the primary key values that define the item. Other attribute name-value pairs can be provided for the item.

        ", "refs": { "PutItemInput$Item": null, "PutRequest$Item": "

        The item to put

        " } }, "PutItemOutput": { "base": null, "refs": { } }, "PutRequest": { "base": "

        A container for a Put BatchWrite request

        ", "refs": { "WriteRequest$PutRequest": null } }, "QueryInput": { "base": null, "refs": { } }, "QueryOutput": { "base": null, "refs": { } }, "ResourceInUseException": { "base": "

        This exception is thrown when the resource which is being attempted to be changed is in use.

        ", "refs": { } }, "ResourceNotFoundException": { "base": "

        This exception is thrown when the resource which is being attempted to be changed is in use.

        ", "refs": { } }, "ReturnValue": { "base": "

        Use this parameter if you want to get the attribute name-value pairs before or after they are modified. For PUT operations, the possible parameter values are NONE (default) or ALL_OLD. For update operations, the possible parameter values are NONE (default) or ALL_OLD, UPDATED_OLD, ALL_NEW or UPDATED_NEW.

        • NONE: Nothing is returned.
        • ALL_OLD: Returns the attributes of the item as they were before the operation.
        • UPDATED_OLD: Returns the values of the updated attributes, only, as they were before the operation.
        • ALL_NEW: Returns all the attributes and their new values after the operation.
        • UPDATED_NEW: Returns the values of the updated attributes, only, as they are after the operation.
        ", "refs": { "DeleteItemInput$ReturnValues": null, "PutItemInput$ReturnValues": null, "UpdateItemInput$ReturnValues": null } }, "ScalarAttributeType": { "base": null, "refs": { "KeySchemaElement$AttributeType": "

        The AttributeType of the KeySchemaElement which can be a String or a Number.

        " } }, "ScanInput": { "base": null, "refs": { } }, "ScanOutput": { "base": null, "refs": { } }, "String": { "base": null, "refs": { "FilterConditionMap$key": null } }, "StringAttributeValue": { "base": null, "refs": { "AttributeValue$S": "

        Strings are Unicode with UTF-8 binary encoding. The maximum size is limited by the size of the primary key (1024 bytes as a range part of a key or 2048 bytes as a single part hash key) or the item size (64k).

        ", "StringSetAttributeValue$member": null } }, "StringSetAttributeValue": { "base": null, "refs": { "AttributeValue$SS": "

        A set of strings.

        " } }, "TableDescription": { "base": null, "refs": { "CreateTableOutput$TableDescription": null, "DeleteTableOutput$TableDescription": null, "DescribeTableOutput$Table": null, "UpdateTableOutput$TableDescription": null } }, "TableName": { "base": null, "refs": { "BatchGetRequestMap$key": null, "BatchGetResponseMap$key": null, "BatchWriteItemRequestMap$key": null, "BatchWriteResponseMap$key": null, "CreateTableInput$TableName": "

        The name of the table you want to create. Allowed characters are a-z, A-Z, 0-9, _ (underscore), - (hyphen) and . (period).

        ", "DeleteItemInput$TableName": "

        The name of the table in which you want to delete an item. Allowed characters are a-z, A-Z, 0-9, _ (underscore), - (hyphen) and . (period).

        ", "DeleteTableInput$TableName": "

        The name of the table you want to delete. Allowed characters are a-z, A-Z, 0-9, _ (underscore), - (hyphen) and . (period).

        ", "DescribeTableInput$TableName": "

        The name of the table you want to describe. Allowed characters are a-z, A-Z, 0-9, _ (underscore), - (hyphen) and . (period).

        ", "GetItemInput$TableName": "

        The name of the table in which you want to get an item. Allowed characters are a-z, A-Z, 0-9, _ (underscore), - (hyphen) and . (period).

        ", "ListTablesInput$ExclusiveStartTableName": "

        The name of the table that starts the list. If you already ran a ListTables operation and received a LastEvaluatedTableName value in the response, use that value here to continue the list.

        ", "ListTablesOutput$LastEvaluatedTableName": "

        The name of the last table in the current list. Use this value as the ExclusiveStartTableName in a new request to continue the list until all the table names are returned. If this value is null, all table names have been returned.

        ", "PutItemInput$TableName": "

        The name of the table in which you want to put an item. Allowed characters are a-z, A-Z, 0-9, _ (underscore), - (hyphen) and . (period).

        ", "QueryInput$TableName": "

        The name of the table in which you want to query. Allowed characters are a-z, A-Z, 0-9, _ (underscore), - (hyphen) and . (period).

        ", "ScanInput$TableName": "

        The name of the table in which you want to scan. Allowed characters are a-z, A-Z, 0-9, _ (underscore), - (hyphen) and . (period).

        ", "TableDescription$TableName": "

        The name of the table being described.

        ", "TableNameList$member": null, "UpdateItemInput$TableName": "

        The name of the table in which you want to update an item. Allowed characters are a-z, A-Z, 0-9, _ (underscore), - (hyphen) and . (period).

        ", "UpdateTableInput$TableName": "

        The name of the table you want to update. Allowed characters are a-z, A-Z, 0-9, _ (underscore), - (hyphen) and . (period).

        " } }, "TableNameList": { "base": null, "refs": { "ListTablesOutput$TableNames": null } }, "TableStatus": { "base": null, "refs": { "TableDescription$TableStatus": null } }, "UpdateItemInput": { "base": null, "refs": { } }, "UpdateItemOutput": { "base": null, "refs": { } }, "UpdateTableInput": { "base": null, "refs": { } }, "UpdateTableOutput": { "base": null, "refs": { } }, "WriteRequest": { "base": "

        This structure is a Union of PutRequest and DeleteRequest. It can contain exactly one of PutRequest or DeleteRequest. Never Both. This is enforced in the code.

        ", "refs": { "WriteRequests$member": null } }, "WriteRequests": { "base": null, "refs": { "BatchWriteItemRequestMap$value": null } } } } aws-sdk-go-1.4.22/models/apis/dynamodb/2011-12-05/examples-1.json000066400000000000000000000000541300374646400234720ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/dynamodb/2011-12-05/paginators-1.json000066400000000000000000000011761300374646400240310ustar00rootroot00000000000000{ "pagination": { "BatchGetItem": { "input_token": "RequestItems", "output_token": "UnprocessedKeys" }, "ListTables": { "input_token": "ExclusiveStartTableName", "output_token": "LastEvaluatedTableName", "limit_key": "Limit", "result_key": "TableNames" }, "Query": { "input_token": "ExclusiveStartKey", "output_token": "LastEvaluatedKey", "limit_key": "Limit", "result_key": "Items" }, "Scan": { "input_token": "ExclusiveStartKey", "output_token": "LastEvaluatedKey", "limit_key": "Limit", "result_key": "Items" } } } aws-sdk-go-1.4.22/models/apis/dynamodb/2011-12-05/waiters-2.json000066400000000000000000000013271300374646400233370ustar00rootroot00000000000000{ "version": 2, "waiters": { "TableExists": { "delay": 20, "operation": "DescribeTable", "maxAttempts": 25, "acceptors": [ { "expected": "ACTIVE", "matcher": "path", "state": "success", "argument": "Table.TableStatus" }, { "expected": "ResourceNotFoundException", "matcher": "error", "state": "retry" } ] }, "TableNotExists": { "delay": 20, "operation": "DescribeTable", "maxAttempts": 25, "acceptors": [ { "expected": "ResourceNotFoundException", "matcher": "error", "state": "success" } ] } } } aws-sdk-go-1.4.22/models/apis/dynamodb/2012-08-10/000077500000000000000000000000001300374646400206265ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/dynamodb/2012-08-10/api-2.json000066400000000000000000001023471300374646400224400ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2012-08-10", "endpointPrefix":"dynamodb", "jsonVersion":"1.0", "protocol":"json", "serviceAbbreviation":"DynamoDB", "serviceFullName":"Amazon DynamoDB", "signatureVersion":"v4", "targetPrefix":"DynamoDB_20120810" }, "operations":{ "BatchGetItem":{ "name":"BatchGetItem", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BatchGetItemInput"}, "output":{"shape":"BatchGetItemOutput"}, "errors":[ {"shape":"ProvisionedThroughputExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InternalServerError"} ] }, "BatchWriteItem":{ "name":"BatchWriteItem", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BatchWriteItemInput"}, "output":{"shape":"BatchWriteItemOutput"}, "errors":[ {"shape":"ProvisionedThroughputExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ItemCollectionSizeLimitExceededException"}, {"shape":"InternalServerError"} ] }, "CreateTable":{ "name":"CreateTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateTableInput"}, "output":{"shape":"CreateTableOutput"}, "errors":[ {"shape":"ResourceInUseException"}, {"shape":"LimitExceededException"}, {"shape":"InternalServerError"} ] }, "DeleteItem":{ "name":"DeleteItem", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteItemInput"}, "output":{"shape":"DeleteItemOutput"}, "errors":[ {"shape":"ConditionalCheckFailedException"}, {"shape":"ProvisionedThroughputExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ItemCollectionSizeLimitExceededException"}, {"shape":"InternalServerError"} ] }, "DeleteTable":{ "name":"DeleteTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteTableInput"}, "output":{"shape":"DeleteTableOutput"}, "errors":[ {"shape":"ResourceInUseException"}, {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"InternalServerError"} ] }, "DescribeLimits":{ "name":"DescribeLimits", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeLimitsInput"}, "output":{"shape":"DescribeLimitsOutput"}, "errors":[ {"shape":"InternalServerError"} ] }, "DescribeTable":{ "name":"DescribeTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTableInput"}, "output":{"shape":"DescribeTableOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InternalServerError"} ] }, "GetItem":{ "name":"GetItem", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetItemInput"}, "output":{"shape":"GetItemOutput"}, "errors":[ {"shape":"ProvisionedThroughputExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InternalServerError"} ] }, "ListTables":{ "name":"ListTables", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTablesInput"}, "output":{"shape":"ListTablesOutput"}, "errors":[ {"shape":"InternalServerError"} ] }, "PutItem":{ "name":"PutItem", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutItemInput"}, "output":{"shape":"PutItemOutput"}, "errors":[ {"shape":"ConditionalCheckFailedException"}, {"shape":"ProvisionedThroughputExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ItemCollectionSizeLimitExceededException"}, {"shape":"InternalServerError"} ] }, "Query":{ "name":"Query", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"QueryInput"}, "output":{"shape":"QueryOutput"}, "errors":[ {"shape":"ProvisionedThroughputExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InternalServerError"} ] }, "Scan":{ "name":"Scan", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ScanInput"}, "output":{"shape":"ScanOutput"}, "errors":[ {"shape":"ProvisionedThroughputExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InternalServerError"} ] }, "UpdateItem":{ "name":"UpdateItem", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateItemInput"}, "output":{"shape":"UpdateItemOutput"}, "errors":[ {"shape":"ConditionalCheckFailedException"}, {"shape":"ProvisionedThroughputExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ItemCollectionSizeLimitExceededException"}, {"shape":"InternalServerError"} ] }, "UpdateTable":{ "name":"UpdateTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateTableInput"}, "output":{"shape":"UpdateTableOutput"}, "errors":[ {"shape":"ResourceInUseException"}, {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"InternalServerError"} ] } }, "shapes":{ "AttributeAction":{ "type":"string", "enum":[ "ADD", "PUT", "DELETE" ] }, "AttributeDefinition":{ "type":"structure", "required":[ "AttributeName", "AttributeType" ], "members":{ "AttributeName":{"shape":"KeySchemaAttributeName"}, "AttributeType":{"shape":"ScalarAttributeType"} } }, "AttributeDefinitions":{ "type":"list", "member":{"shape":"AttributeDefinition"} }, "AttributeMap":{ "type":"map", "key":{"shape":"AttributeName"}, "value":{"shape":"AttributeValue"} }, "AttributeName":{ "type":"string", "max":65535 }, "AttributeNameList":{ "type":"list", "member":{"shape":"AttributeName"}, "min":1 }, "AttributeUpdates":{ "type":"map", "key":{"shape":"AttributeName"}, "value":{"shape":"AttributeValueUpdate"} }, "AttributeValue":{ "type":"structure", "members":{ "S":{"shape":"StringAttributeValue"}, "N":{"shape":"NumberAttributeValue"}, "B":{"shape":"BinaryAttributeValue"}, "SS":{"shape":"StringSetAttributeValue"}, "NS":{"shape":"NumberSetAttributeValue"}, "BS":{"shape":"BinarySetAttributeValue"}, "M":{"shape":"MapAttributeValue"}, "L":{"shape":"ListAttributeValue"}, "NULL":{"shape":"NullAttributeValue"}, "BOOL":{"shape":"BooleanAttributeValue"} } }, "AttributeValueList":{ "type":"list", "member":{"shape":"AttributeValue"} }, "AttributeValueUpdate":{ "type":"structure", "members":{ "Value":{"shape":"AttributeValue"}, "Action":{"shape":"AttributeAction"} } }, "Backfilling":{"type":"boolean"}, "BatchGetItemInput":{ "type":"structure", "required":["RequestItems"], "members":{ "RequestItems":{"shape":"BatchGetRequestMap"}, "ReturnConsumedCapacity":{"shape":"ReturnConsumedCapacity"} } }, "BatchGetItemOutput":{ "type":"structure", "members":{ "Responses":{"shape":"BatchGetResponseMap"}, "UnprocessedKeys":{"shape":"BatchGetRequestMap"}, "ConsumedCapacity":{"shape":"ConsumedCapacityMultiple"} } }, "BatchGetRequestMap":{ "type":"map", "key":{"shape":"TableName"}, "value":{"shape":"KeysAndAttributes"}, "max":100, "min":1 }, "BatchGetResponseMap":{ "type":"map", "key":{"shape":"TableName"}, "value":{"shape":"ItemList"} }, "BatchWriteItemInput":{ "type":"structure", "required":["RequestItems"], "members":{ "RequestItems":{"shape":"BatchWriteItemRequestMap"}, "ReturnConsumedCapacity":{"shape":"ReturnConsumedCapacity"}, "ReturnItemCollectionMetrics":{"shape":"ReturnItemCollectionMetrics"} } }, "BatchWriteItemOutput":{ "type":"structure", "members":{ "UnprocessedItems":{"shape":"BatchWriteItemRequestMap"}, "ItemCollectionMetrics":{"shape":"ItemCollectionMetricsPerTable"}, "ConsumedCapacity":{"shape":"ConsumedCapacityMultiple"} } }, "BatchWriteItemRequestMap":{ "type":"map", "key":{"shape":"TableName"}, "value":{"shape":"WriteRequests"}, "max":25, "min":1 }, "BinaryAttributeValue":{"type":"blob"}, "BinarySetAttributeValue":{ "type":"list", "member":{"shape":"BinaryAttributeValue"} }, "BooleanAttributeValue":{"type":"boolean"}, "BooleanObject":{"type":"boolean"}, "Capacity":{ "type":"structure", "members":{ "CapacityUnits":{"shape":"ConsumedCapacityUnits"} } }, "ComparisonOperator":{ "type":"string", "enum":[ "EQ", "NE", "IN", "LE", "LT", "GE", "GT", "BETWEEN", "NOT_NULL", "NULL", "CONTAINS", "NOT_CONTAINS", "BEGINS_WITH" ] }, "Condition":{ "type":"structure", "required":["ComparisonOperator"], "members":{ "AttributeValueList":{"shape":"AttributeValueList"}, "ComparisonOperator":{"shape":"ComparisonOperator"} } }, "ConditionExpression":{"type":"string"}, "ConditionalCheckFailedException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ConditionalOperator":{ "type":"string", "enum":[ "AND", "OR" ] }, "ConsistentRead":{"type":"boolean"}, "ConsumedCapacity":{ "type":"structure", "members":{ "TableName":{"shape":"TableName"}, "CapacityUnits":{"shape":"ConsumedCapacityUnits"}, "Table":{"shape":"Capacity"}, "LocalSecondaryIndexes":{"shape":"SecondaryIndexesCapacityMap"}, "GlobalSecondaryIndexes":{"shape":"SecondaryIndexesCapacityMap"} } }, "ConsumedCapacityMultiple":{ "type":"list", "member":{"shape":"ConsumedCapacity"} }, "ConsumedCapacityUnits":{"type":"double"}, "CreateGlobalSecondaryIndexAction":{ "type":"structure", "required":[ "IndexName", "KeySchema", "Projection", "ProvisionedThroughput" ], "members":{ "IndexName":{"shape":"IndexName"}, "KeySchema":{"shape":"KeySchema"}, "Projection":{"shape":"Projection"}, "ProvisionedThroughput":{"shape":"ProvisionedThroughput"} } }, "CreateTableInput":{ "type":"structure", "required":[ "AttributeDefinitions", "TableName", "KeySchema", "ProvisionedThroughput" ], "members":{ "AttributeDefinitions":{"shape":"AttributeDefinitions"}, "TableName":{"shape":"TableName"}, "KeySchema":{"shape":"KeySchema"}, "LocalSecondaryIndexes":{"shape":"LocalSecondaryIndexList"}, "GlobalSecondaryIndexes":{"shape":"GlobalSecondaryIndexList"}, "ProvisionedThroughput":{"shape":"ProvisionedThroughput"}, "StreamSpecification":{"shape":"StreamSpecification"} } }, "CreateTableOutput":{ "type":"structure", "members":{ "TableDescription":{"shape":"TableDescription"} } }, "Date":{"type":"timestamp"}, "DeleteGlobalSecondaryIndexAction":{ "type":"structure", "required":["IndexName"], "members":{ "IndexName":{"shape":"IndexName"} } }, "DeleteItemInput":{ "type":"structure", "required":[ "TableName", "Key" ], "members":{ "TableName":{"shape":"TableName"}, "Key":{"shape":"Key"}, "Expected":{"shape":"ExpectedAttributeMap"}, "ConditionalOperator":{"shape":"ConditionalOperator"}, "ReturnValues":{"shape":"ReturnValue"}, "ReturnConsumedCapacity":{"shape":"ReturnConsumedCapacity"}, "ReturnItemCollectionMetrics":{"shape":"ReturnItemCollectionMetrics"}, "ConditionExpression":{"shape":"ConditionExpression"}, "ExpressionAttributeNames":{"shape":"ExpressionAttributeNameMap"}, "ExpressionAttributeValues":{"shape":"ExpressionAttributeValueMap"} } }, "DeleteItemOutput":{ "type":"structure", "members":{ "Attributes":{"shape":"AttributeMap"}, "ConsumedCapacity":{"shape":"ConsumedCapacity"}, "ItemCollectionMetrics":{"shape":"ItemCollectionMetrics"} } }, "DeleteRequest":{ "type":"structure", "required":["Key"], "members":{ "Key":{"shape":"Key"} } }, "DeleteTableInput":{ "type":"structure", "required":["TableName"], "members":{ "TableName":{"shape":"TableName"} } }, "DeleteTableOutput":{ "type":"structure", "members":{ "TableDescription":{"shape":"TableDescription"} } }, "DescribeLimitsInput":{ "type":"structure", "members":{ } }, "DescribeLimitsOutput":{ "type":"structure", "members":{ "AccountMaxReadCapacityUnits":{"shape":"PositiveLongObject"}, "AccountMaxWriteCapacityUnits":{"shape":"PositiveLongObject"}, "TableMaxReadCapacityUnits":{"shape":"PositiveLongObject"}, "TableMaxWriteCapacityUnits":{"shape":"PositiveLongObject"} } }, "DescribeTableInput":{ "type":"structure", "required":["TableName"], "members":{ "TableName":{"shape":"TableName"} } }, "DescribeTableOutput":{ "type":"structure", "members":{ "Table":{"shape":"TableDescription"} } }, "ErrorMessage":{"type":"string"}, "ExpectedAttributeMap":{ "type":"map", "key":{"shape":"AttributeName"}, "value":{"shape":"ExpectedAttributeValue"} }, "ExpectedAttributeValue":{ "type":"structure", "members":{ "Value":{"shape":"AttributeValue"}, "Exists":{"shape":"BooleanObject"}, "ComparisonOperator":{"shape":"ComparisonOperator"}, "AttributeValueList":{"shape":"AttributeValueList"} } }, "ExpressionAttributeNameMap":{ "type":"map", "key":{"shape":"ExpressionAttributeNameVariable"}, "value":{"shape":"AttributeName"} }, "ExpressionAttributeNameVariable":{"type":"string"}, "ExpressionAttributeValueMap":{ "type":"map", "key":{"shape":"ExpressionAttributeValueVariable"}, "value":{"shape":"AttributeValue"} }, "ExpressionAttributeValueVariable":{"type":"string"}, "FilterConditionMap":{ "type":"map", "key":{"shape":"AttributeName"}, "value":{"shape":"Condition"} }, "GetItemInput":{ "type":"structure", "required":[ "TableName", "Key" ], "members":{ "TableName":{"shape":"TableName"}, "Key":{"shape":"Key"}, "AttributesToGet":{"shape":"AttributeNameList"}, "ConsistentRead":{"shape":"ConsistentRead"}, "ReturnConsumedCapacity":{"shape":"ReturnConsumedCapacity"}, "ProjectionExpression":{"shape":"ProjectionExpression"}, "ExpressionAttributeNames":{"shape":"ExpressionAttributeNameMap"} } }, "GetItemOutput":{ "type":"structure", "members":{ "Item":{"shape":"AttributeMap"}, "ConsumedCapacity":{"shape":"ConsumedCapacity"} } }, "GlobalSecondaryIndex":{ "type":"structure", "required":[ "IndexName", "KeySchema", "Projection", "ProvisionedThroughput" ], "members":{ "IndexName":{"shape":"IndexName"}, "KeySchema":{"shape":"KeySchema"}, "Projection":{"shape":"Projection"}, "ProvisionedThroughput":{"shape":"ProvisionedThroughput"} } }, "GlobalSecondaryIndexDescription":{ "type":"structure", "members":{ "IndexName":{"shape":"IndexName"}, "KeySchema":{"shape":"KeySchema"}, "Projection":{"shape":"Projection"}, "IndexStatus":{"shape":"IndexStatus"}, "Backfilling":{"shape":"Backfilling"}, "ProvisionedThroughput":{"shape":"ProvisionedThroughputDescription"}, "IndexSizeBytes":{"shape":"Long"}, "ItemCount":{"shape":"Long"}, "IndexArn":{"shape":"String"} } }, "GlobalSecondaryIndexDescriptionList":{ "type":"list", "member":{"shape":"GlobalSecondaryIndexDescription"} }, "GlobalSecondaryIndexList":{ "type":"list", "member":{"shape":"GlobalSecondaryIndex"} }, "GlobalSecondaryIndexUpdate":{ "type":"structure", "members":{ "Update":{"shape":"UpdateGlobalSecondaryIndexAction"}, "Create":{"shape":"CreateGlobalSecondaryIndexAction"}, "Delete":{"shape":"DeleteGlobalSecondaryIndexAction"} } }, "GlobalSecondaryIndexUpdateList":{ "type":"list", "member":{"shape":"GlobalSecondaryIndexUpdate"} }, "IndexName":{ "type":"string", "max":255, "min":3, "pattern":"[a-zA-Z0-9_.-]+" }, "IndexStatus":{ "type":"string", "enum":[ "CREATING", "UPDATING", "DELETING", "ACTIVE" ] }, "Integer":{"type":"integer"}, "InternalServerError":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true, "fault":true }, "ItemCollectionKeyAttributeMap":{ "type":"map", "key":{"shape":"AttributeName"}, "value":{"shape":"AttributeValue"} }, "ItemCollectionMetrics":{ "type":"structure", "members":{ "ItemCollectionKey":{"shape":"ItemCollectionKeyAttributeMap"}, "SizeEstimateRangeGB":{"shape":"ItemCollectionSizeEstimateRange"} } }, "ItemCollectionMetricsMultiple":{ "type":"list", "member":{"shape":"ItemCollectionMetrics"} }, "ItemCollectionMetricsPerTable":{ "type":"map", "key":{"shape":"TableName"}, "value":{"shape":"ItemCollectionMetricsMultiple"} }, "ItemCollectionSizeEstimateBound":{"type":"double"}, "ItemCollectionSizeEstimateRange":{ "type":"list", "member":{"shape":"ItemCollectionSizeEstimateBound"} }, "ItemCollectionSizeLimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ItemList":{ "type":"list", "member":{"shape":"AttributeMap"} }, "Key":{ "type":"map", "key":{"shape":"AttributeName"}, "value":{"shape":"AttributeValue"} }, "KeyConditions":{ "type":"map", "key":{"shape":"AttributeName"}, "value":{"shape":"Condition"} }, "KeyExpression":{"type":"string"}, "KeyList":{ "type":"list", "member":{"shape":"Key"}, "max":100, "min":1 }, "KeySchema":{ "type":"list", "member":{"shape":"KeySchemaElement"}, "max":2, "min":1 }, "KeySchemaAttributeName":{ "type":"string", "max":255, "min":1 }, "KeySchemaElement":{ "type":"structure", "required":[ "AttributeName", "KeyType" ], "members":{ "AttributeName":{"shape":"KeySchemaAttributeName"}, "KeyType":{"shape":"KeyType"} } }, "KeyType":{ "type":"string", "enum":[ "HASH", "RANGE" ] }, "KeysAndAttributes":{ "type":"structure", "required":["Keys"], "members":{ "Keys":{"shape":"KeyList"}, "AttributesToGet":{"shape":"AttributeNameList"}, "ConsistentRead":{"shape":"ConsistentRead"}, "ProjectionExpression":{"shape":"ProjectionExpression"}, "ExpressionAttributeNames":{"shape":"ExpressionAttributeNameMap"} } }, "LimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ListAttributeValue":{ "type":"list", "member":{"shape":"AttributeValue"} }, "ListTablesInput":{ "type":"structure", "members":{ "ExclusiveStartTableName":{"shape":"TableName"}, "Limit":{"shape":"ListTablesInputLimit"} } }, "ListTablesInputLimit":{ "type":"integer", "max":100, "min":1 }, "ListTablesOutput":{ "type":"structure", "members":{ "TableNames":{"shape":"TableNameList"}, "LastEvaluatedTableName":{"shape":"TableName"} } }, "LocalSecondaryIndex":{ "type":"structure", "required":[ "IndexName", "KeySchema", "Projection" ], "members":{ "IndexName":{"shape":"IndexName"}, "KeySchema":{"shape":"KeySchema"}, "Projection":{"shape":"Projection"} } }, "LocalSecondaryIndexDescription":{ "type":"structure", "members":{ "IndexName":{"shape":"IndexName"}, "KeySchema":{"shape":"KeySchema"}, "Projection":{"shape":"Projection"}, "IndexSizeBytes":{"shape":"Long"}, "ItemCount":{"shape":"Long"}, "IndexArn":{"shape":"String"} } }, "LocalSecondaryIndexDescriptionList":{ "type":"list", "member":{"shape":"LocalSecondaryIndexDescription"} }, "LocalSecondaryIndexList":{ "type":"list", "member":{"shape":"LocalSecondaryIndex"} }, "Long":{"type":"long"}, "MapAttributeValue":{ "type":"map", "key":{"shape":"AttributeName"}, "value":{"shape":"AttributeValue"} }, "NonKeyAttributeName":{ "type":"string", "max":255, "min":1 }, "NonKeyAttributeNameList":{ "type":"list", "member":{"shape":"NonKeyAttributeName"}, "max":20, "min":1 }, "NullAttributeValue":{"type":"boolean"}, "NumberAttributeValue":{"type":"string"}, "NumberSetAttributeValue":{ "type":"list", "member":{"shape":"NumberAttributeValue"} }, "PositiveIntegerObject":{ "type":"integer", "min":1 }, "PositiveLongObject":{ "type":"long", "min":1 }, "Projection":{ "type":"structure", "members":{ "ProjectionType":{"shape":"ProjectionType"}, "NonKeyAttributes":{"shape":"NonKeyAttributeNameList"} } }, "ProjectionExpression":{"type":"string"}, "ProjectionType":{ "type":"string", "enum":[ "ALL", "KEYS_ONLY", "INCLUDE" ] }, "ProvisionedThroughput":{ "type":"structure", "required":[ "ReadCapacityUnits", "WriteCapacityUnits" ], "members":{ "ReadCapacityUnits":{"shape":"PositiveLongObject"}, "WriteCapacityUnits":{"shape":"PositiveLongObject"} } }, "ProvisionedThroughputDescription":{ "type":"structure", "members":{ "LastIncreaseDateTime":{"shape":"Date"}, "LastDecreaseDateTime":{"shape":"Date"}, "NumberOfDecreasesToday":{"shape":"PositiveLongObject"}, "ReadCapacityUnits":{"shape":"PositiveLongObject"}, "WriteCapacityUnits":{"shape":"PositiveLongObject"} } }, "ProvisionedThroughputExceededException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "PutItemInput":{ "type":"structure", "required":[ "TableName", "Item" ], "members":{ "TableName":{"shape":"TableName"}, "Item":{"shape":"PutItemInputAttributeMap"}, "Expected":{"shape":"ExpectedAttributeMap"}, "ReturnValues":{"shape":"ReturnValue"}, "ReturnConsumedCapacity":{"shape":"ReturnConsumedCapacity"}, "ReturnItemCollectionMetrics":{"shape":"ReturnItemCollectionMetrics"}, "ConditionalOperator":{"shape":"ConditionalOperator"}, "ConditionExpression":{"shape":"ConditionExpression"}, "ExpressionAttributeNames":{"shape":"ExpressionAttributeNameMap"}, "ExpressionAttributeValues":{"shape":"ExpressionAttributeValueMap"} } }, "PutItemInputAttributeMap":{ "type":"map", "key":{"shape":"AttributeName"}, "value":{"shape":"AttributeValue"} }, "PutItemOutput":{ "type":"structure", "members":{ "Attributes":{"shape":"AttributeMap"}, "ConsumedCapacity":{"shape":"ConsumedCapacity"}, "ItemCollectionMetrics":{"shape":"ItemCollectionMetrics"} } }, "PutRequest":{ "type":"structure", "required":["Item"], "members":{ "Item":{"shape":"PutItemInputAttributeMap"} } }, "QueryInput":{ "type":"structure", "required":["TableName"], "members":{ "TableName":{"shape":"TableName"}, "IndexName":{"shape":"IndexName"}, "Select":{"shape":"Select"}, "AttributesToGet":{"shape":"AttributeNameList"}, "Limit":{"shape":"PositiveIntegerObject"}, "ConsistentRead":{"shape":"ConsistentRead"}, "KeyConditions":{"shape":"KeyConditions"}, "QueryFilter":{"shape":"FilterConditionMap"}, "ConditionalOperator":{"shape":"ConditionalOperator"}, "ScanIndexForward":{"shape":"BooleanObject"}, "ExclusiveStartKey":{"shape":"Key"}, "ReturnConsumedCapacity":{"shape":"ReturnConsumedCapacity"}, "ProjectionExpression":{"shape":"ProjectionExpression"}, "FilterExpression":{"shape":"ConditionExpression"}, "KeyConditionExpression":{"shape":"KeyExpression"}, "ExpressionAttributeNames":{"shape":"ExpressionAttributeNameMap"}, "ExpressionAttributeValues":{"shape":"ExpressionAttributeValueMap"} } }, "QueryOutput":{ "type":"structure", "members":{ "Items":{"shape":"ItemList"}, "Count":{"shape":"Integer"}, "ScannedCount":{"shape":"Integer"}, "LastEvaluatedKey":{"shape":"Key"}, "ConsumedCapacity":{"shape":"ConsumedCapacity"} } }, "ResourceInUseException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ResourceNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ReturnConsumedCapacity":{ "type":"string", "enum":[ "INDEXES", "TOTAL", "NONE" ] }, "ReturnItemCollectionMetrics":{ "type":"string", "enum":[ "SIZE", "NONE" ] }, "ReturnValue":{ "type":"string", "enum":[ "NONE", "ALL_OLD", "UPDATED_OLD", "ALL_NEW", "UPDATED_NEW" ] }, "ScalarAttributeType":{ "type":"string", "enum":[ "S", "N", "B" ] }, "ScanInput":{ "type":"structure", "required":["TableName"], "members":{ "TableName":{"shape":"TableName"}, "IndexName":{"shape":"IndexName"}, "AttributesToGet":{"shape":"AttributeNameList"}, "Limit":{"shape":"PositiveIntegerObject"}, "Select":{"shape":"Select"}, "ScanFilter":{"shape":"FilterConditionMap"}, "ConditionalOperator":{"shape":"ConditionalOperator"}, "ExclusiveStartKey":{"shape":"Key"}, "ReturnConsumedCapacity":{"shape":"ReturnConsumedCapacity"}, "TotalSegments":{"shape":"ScanTotalSegments"}, "Segment":{"shape":"ScanSegment"}, "ProjectionExpression":{"shape":"ProjectionExpression"}, "FilterExpression":{"shape":"ConditionExpression"}, "ExpressionAttributeNames":{"shape":"ExpressionAttributeNameMap"}, "ExpressionAttributeValues":{"shape":"ExpressionAttributeValueMap"}, "ConsistentRead":{"shape":"ConsistentRead"} } }, "ScanOutput":{ "type":"structure", "members":{ "Items":{"shape":"ItemList"}, "Count":{"shape":"Integer"}, "ScannedCount":{"shape":"Integer"}, "LastEvaluatedKey":{"shape":"Key"}, "ConsumedCapacity":{"shape":"ConsumedCapacity"} } }, "ScanSegment":{ "type":"integer", "max":999999, "min":0 }, "ScanTotalSegments":{ "type":"integer", "max":1000000, "min":1 }, "SecondaryIndexesCapacityMap":{ "type":"map", "key":{"shape":"IndexName"}, "value":{"shape":"Capacity"} }, "Select":{ "type":"string", "enum":[ "ALL_ATTRIBUTES", "ALL_PROJECTED_ATTRIBUTES", "SPECIFIC_ATTRIBUTES", "COUNT" ] }, "StreamArn":{ "type":"string", "max":1024, "min":37 }, "StreamEnabled":{"type":"boolean"}, "StreamSpecification":{ "type":"structure", "members":{ "StreamEnabled":{"shape":"StreamEnabled"}, "StreamViewType":{"shape":"StreamViewType"} } }, "StreamViewType":{ "type":"string", "enum":[ "NEW_IMAGE", "OLD_IMAGE", "NEW_AND_OLD_IMAGES", "KEYS_ONLY" ] }, "String":{"type":"string"}, "StringAttributeValue":{"type":"string"}, "StringSetAttributeValue":{ "type":"list", "member":{"shape":"StringAttributeValue"} }, "TableDescription":{ "type":"structure", "members":{ "AttributeDefinitions":{"shape":"AttributeDefinitions"}, "TableName":{"shape":"TableName"}, "KeySchema":{"shape":"KeySchema"}, "TableStatus":{"shape":"TableStatus"}, "CreationDateTime":{"shape":"Date"}, "ProvisionedThroughput":{"shape":"ProvisionedThroughputDescription"}, "TableSizeBytes":{"shape":"Long"}, "ItemCount":{"shape":"Long"}, "TableArn":{"shape":"String"}, "LocalSecondaryIndexes":{"shape":"LocalSecondaryIndexDescriptionList"}, "GlobalSecondaryIndexes":{"shape":"GlobalSecondaryIndexDescriptionList"}, "StreamSpecification":{"shape":"StreamSpecification"}, "LatestStreamLabel":{"shape":"String"}, "LatestStreamArn":{"shape":"StreamArn"} } }, "TableName":{ "type":"string", "max":255, "min":3, "pattern":"[a-zA-Z0-9_.-]+" }, "TableNameList":{ "type":"list", "member":{"shape":"TableName"} }, "TableStatus":{ "type":"string", "enum":[ "CREATING", "UPDATING", "DELETING", "ACTIVE" ] }, "UpdateExpression":{"type":"string"}, "UpdateGlobalSecondaryIndexAction":{ "type":"structure", "required":[ "IndexName", "ProvisionedThroughput" ], "members":{ "IndexName":{"shape":"IndexName"}, "ProvisionedThroughput":{"shape":"ProvisionedThroughput"} } }, "UpdateItemInput":{ "type":"structure", "required":[ "TableName", "Key" ], "members":{ "TableName":{"shape":"TableName"}, "Key":{"shape":"Key"}, "AttributeUpdates":{"shape":"AttributeUpdates"}, "Expected":{"shape":"ExpectedAttributeMap"}, "ConditionalOperator":{"shape":"ConditionalOperator"}, "ReturnValues":{"shape":"ReturnValue"}, "ReturnConsumedCapacity":{"shape":"ReturnConsumedCapacity"}, "ReturnItemCollectionMetrics":{"shape":"ReturnItemCollectionMetrics"}, "UpdateExpression":{"shape":"UpdateExpression"}, "ConditionExpression":{"shape":"ConditionExpression"}, "ExpressionAttributeNames":{"shape":"ExpressionAttributeNameMap"}, "ExpressionAttributeValues":{"shape":"ExpressionAttributeValueMap"} } }, "UpdateItemOutput":{ "type":"structure", "members":{ "Attributes":{"shape":"AttributeMap"}, "ConsumedCapacity":{"shape":"ConsumedCapacity"}, "ItemCollectionMetrics":{"shape":"ItemCollectionMetrics"} } }, "UpdateTableInput":{ "type":"structure", "required":["TableName"], "members":{ "AttributeDefinitions":{"shape":"AttributeDefinitions"}, "TableName":{"shape":"TableName"}, "ProvisionedThroughput":{"shape":"ProvisionedThroughput"}, "GlobalSecondaryIndexUpdates":{"shape":"GlobalSecondaryIndexUpdateList"}, "StreamSpecification":{"shape":"StreamSpecification"} } }, "UpdateTableOutput":{ "type":"structure", "members":{ "TableDescription":{"shape":"TableDescription"} } }, "WriteRequest":{ "type":"structure", "members":{ "PutRequest":{"shape":"PutRequest"}, "DeleteRequest":{"shape":"DeleteRequest"} } }, "WriteRequests":{ "type":"list", "member":{"shape":"WriteRequest"}, "max":25, "min":1 } } } aws-sdk-go-1.4.22/models/apis/dynamodb/2012-08-10/docs-2.json000066400000000000000000007317011300374646400226210ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon DynamoDB

        This is the Amazon DynamoDB API Reference. This guide provides descriptions of the low-level DynamoDB API.

        This guide is intended for use with the following DynamoDB documentation:

        Instead of making the requests to the low-level DynamoDB API directly from your application, we recommend that you use the AWS Software Development Kits (SDKs). The easy-to-use libraries in the AWS SDKs make it unnecessary to call the low-level DynamoDB API directly from your application. The libraries take care of request authentication, serialization, and connection management. For more information, see Using the AWS SDKs with DynamoDB in the Amazon DynamoDB Developer Guide.

        If you decide to code against the low-level DynamoDB API directly, you will need to write the necessary code to authenticate your requests. For more information on signing your requests, see Using the DynamoDB API in the Amazon DynamoDB Developer Guide.

        The following are short descriptions of each low-level API action, organized by function.

        Managing Tables

        • CreateTable - Creates a table with user-specified provisioned throughput settings. You must define a primary key for the table - either a simple primary key (partition key), or a composite primary key (partition key and sort key). Optionally, you can create one or more secondary indexes, which provide fast data access using non-key attributes.

        • DescribeTable - Returns metadata for a table, such as table size, status, and index information.

        • UpdateTable - Modifies the provisioned throughput settings for a table. Optionally, you can modify the provisioned throughput settings for global secondary indexes on the table.

        • ListTables - Returns a list of all tables associated with the current AWS account and endpoint.

        • DeleteTable - Deletes a table and all of its indexes.

        For conceptual information about managing tables, see Working with Tables in the Amazon DynamoDB Developer Guide.

        Reading Data

        • GetItem - Returns a set of attributes for the item that has a given primary key. By default, GetItem performs an eventually consistent read; however, applications can request a strongly consistent read instead.

        • BatchGetItem - Performs multiple GetItem requests for data items using their primary keys, from one table or multiple tables. The response from BatchGetItem has a size limit of 16 MB and returns a maximum of 100 items. Both eventually consistent and strongly consistent reads can be used.

        • Query - Returns one or more items from a table or a secondary index. You must provide a specific value for the partition key. You can narrow the scope of the query using comparison operators against a sort key value, or on the index key. Query supports either eventual or strong consistency. A single response has a size limit of 1 MB.

        • Scan - Reads every item in a table; the result set is eventually consistent. You can limit the number of items returned by filtering the data attributes, using conditional expressions. Scan can be used to enable ad-hoc querying of a table against non-key attributes; however, since this is a full table scan without using an index, Scan should not be used for any application query use case that requires predictable performance.

        For conceptual information about reading data, see Working with Items and Query and Scan Operations in the Amazon DynamoDB Developer Guide.

        Modifying Data

        • PutItem - Creates a new item, or replaces an existing item with a new item (including all the attributes). By default, if an item in the table already exists with the same primary key, the new item completely replaces the existing item. You can use conditional operators to replace an item only if its attribute values match certain conditions, or to insert a new item only if that item doesn't already exist.

        • UpdateItem - Modifies the attributes of an existing item. You can also use conditional operators to perform an update only if the item's attribute values match certain conditions.

        • DeleteItem - Deletes an item in a table by primary key. You can use conditional operators to perform a delete an item only if the item's attribute values match certain conditions.

        • BatchWriteItem - Performs multiple PutItem and DeleteItem requests across multiple tables in a single request. A failure of any request(s) in the batch will not cause the entire BatchWriteItem operation to fail. Supports batches of up to 25 items to put or delete, with a maximum total request size of 16 MB.

        For conceptual information about modifying data, see Working with Items and Query and Scan Operations in the Amazon DynamoDB Developer Guide.

        ", "operations": { "BatchGetItem": "

        The BatchGetItem operation returns the attributes of one or more items from one or more tables. You identify requested items by primary key.

        A single operation can retrieve up to 16 MB of data, which can contain as many as 100 items. BatchGetItem will return a partial result if the response size limit is exceeded, the table's provisioned throughput is exceeded, or an internal processing failure occurs. If a partial result is returned, the operation returns a value for UnprocessedKeys. You can use this value to retry the operation starting with the next item to get.

        If you request more than 100 items BatchGetItem will return a ValidationException with the message \"Too many items requested for the BatchGetItem call\".

        For example, if you ask to retrieve 100 items, but each individual item is 300 KB in size, the system returns 52 items (so as not to exceed the 16 MB limit). It also returns an appropriate UnprocessedKeys value so you can get the next page of results. If desired, your application can include its own logic to assemble the pages of results into one data set.

        If none of the items can be processed due to insufficient provisioned throughput on all of the tables in the request, then BatchGetItem will return a ProvisionedThroughputExceededException. If at least one of the items is successfully processed, then BatchGetItem completes successfully, while returning the keys of the unread items in UnprocessedKeys.

        If DynamoDB returns any unprocessed items, you should retry the batch operation on those items. However, we strongly recommend that you use an exponential backoff algorithm. If you retry the batch operation immediately, the underlying read or write requests can still fail due to throttling on the individual tables. If you delay the batch operation using exponential backoff, the individual requests in the batch are much more likely to succeed.

        For more information, see Batch Operations and Error Handling in the Amazon DynamoDB Developer Guide.

        By default, BatchGetItem performs eventually consistent reads on every table in the request. If you want strongly consistent reads instead, you can set ConsistentRead to true for any or all tables.

        In order to minimize response latency, BatchGetItem retrieves items in parallel.

        When designing your application, keep in mind that DynamoDB does not return items in any particular order. To help parse the response by item, include the primary key values for the items in your request in the AttributesToGet parameter.

        If a requested item does not exist, it is not returned in the result. Requests for nonexistent items consume the minimum read capacity units according to the type of read. For more information, see Capacity Units Calculations in the Amazon DynamoDB Developer Guide.

        ", "BatchWriteItem": "

        The BatchWriteItem operation puts or deletes multiple items in one or more tables. A single call to BatchWriteItem can write up to 16 MB of data, which can comprise as many as 25 put or delete requests. Individual items to be written can be as large as 400 KB.

        BatchWriteItem cannot update items. To update items, use the UpdateItem API.

        The individual PutItem and DeleteItem operations specified in BatchWriteItem are atomic; however BatchWriteItem as a whole is not. If any requested operations fail because the table's provisioned throughput is exceeded or an internal processing failure occurs, the failed operations are returned in the UnprocessedItems response parameter. You can investigate and optionally resend the requests. Typically, you would call BatchWriteItem in a loop. Each iteration would check for unprocessed items and submit a new BatchWriteItem request with those unprocessed items until all items have been processed.

        Note that if none of the items can be processed due to insufficient provisioned throughput on all of the tables in the request, then BatchWriteItem will return a ProvisionedThroughputExceededException.

        If DynamoDB returns any unprocessed items, you should retry the batch operation on those items. However, we strongly recommend that you use an exponential backoff algorithm. If you retry the batch operation immediately, the underlying read or write requests can still fail due to throttling on the individual tables. If you delay the batch operation using exponential backoff, the individual requests in the batch are much more likely to succeed.

        For more information, see Batch Operations and Error Handling in the Amazon DynamoDB Developer Guide.

        With BatchWriteItem, you can efficiently write or delete large amounts of data, such as from Amazon Elastic MapReduce (EMR), or copy data from another database into DynamoDB. In order to improve performance with these large-scale operations, BatchWriteItem does not behave in the same way as individual PutItem and DeleteItem calls would. For example, you cannot specify conditions on individual put and delete requests, and BatchWriteItem does not return deleted items in the response.

        If you use a programming language that supports concurrency, you can use threads to write items in parallel. Your application must include the necessary logic to manage the threads. With languages that don't support threading, you must update or delete the specified items one at a time. In both situations, BatchWriteItem provides an alternative where the API performs the specified put and delete operations in parallel, giving you the power of the thread pool approach without having to introduce complexity into your application.

        Parallel processing reduces latency, but each specified put and delete request consumes the same number of write capacity units whether it is processed in parallel or not. Delete operations on nonexistent items consume one write capacity unit.

        If one or more of the following is true, DynamoDB rejects the entire batch write operation:

        • One or more tables specified in the BatchWriteItem request does not exist.

        • Primary key attributes specified on an item in the request do not match those in the corresponding table's primary key schema.

        • You try to perform multiple operations on the same item in the same BatchWriteItem request. For example, you cannot put and delete the same item in the same BatchWriteItem request.

        • There are more than 25 requests in the batch.

        • Any individual item in a batch exceeds 400 KB.

        • The total request size exceeds 16 MB.

        ", "CreateTable": "

        The CreateTable operation adds a new table to your account. In an AWS account, table names must be unique within each region. That is, you can have two tables with same name if you create the tables in different regions.

        CreateTable is an asynchronous operation. Upon receiving a CreateTable request, DynamoDB immediately returns a response with a TableStatus of CREATING. After the table is created, DynamoDB sets the TableStatus to ACTIVE. You can perform read and write operations only on an ACTIVE table.

        You can optionally define secondary indexes on the new table, as part of the CreateTable operation. If you want to create multiple tables with secondary indexes on them, you must create the tables sequentially. Only one table with secondary indexes can be in the CREATING state at any given time.

        You can use the DescribeTable API to check the table status.

        ", "DeleteItem": "

        Deletes a single item in a table by primary key. You can perform a conditional delete operation that deletes the item if it exists, or if it has an expected attribute value.

        In addition to deleting an item, you can also return the item's attribute values in the same operation, using the ReturnValues parameter.

        Unless you specify conditions, the DeleteItem is an idempotent operation; running it multiple times on the same item or attribute does not result in an error response.

        Conditional deletes are useful for deleting items only if specific conditions are met. If those conditions are met, DynamoDB performs the delete. Otherwise, the item is not deleted.

        ", "DeleteTable": "

        The DeleteTable operation deletes a table and all of its items. After a DeleteTable request, the specified table is in the DELETING state until DynamoDB completes the deletion. If the table is in the ACTIVE state, you can delete it. If a table is in CREATING or UPDATING states, then DynamoDB returns a ResourceInUseException. If the specified table does not exist, DynamoDB returns a ResourceNotFoundException. If table is already in the DELETING state, no error is returned.

        DynamoDB might continue to accept data read and write operations, such as GetItem and PutItem, on a table in the DELETING state until the table deletion is complete.

        When you delete a table, any indexes on that table are also deleted.

        If you have DynamoDB Streams enabled on the table, then the corresponding stream on that table goes into the DISABLED state, and the stream is automatically deleted after 24 hours.

        Use the DescribeTable API to check the status of the table.

        ", "DescribeLimits": "

        Returns the current provisioned-capacity limits for your AWS account in a region, both for the region as a whole and for any one DynamoDB table that you create there.

        When you establish an AWS account, the account has initial limits on the maximum read capacity units and write capacity units that you can provision across all of your DynamoDB tables in a given region. Also, there are per-table limits that apply when you create a table there. For more information, see Limits page in the Amazon DynamoDB Developer Guide.

        Although you can increase these limits by filing a case at AWS Support Center, obtaining the increase is not instantaneous. The DescribeLimits API lets you write code to compare the capacity you are currently using to those limits imposed by your account so that you have enough time to apply for an increase before you hit a limit.

        For example, you could use one of the AWS SDKs to do the following:

        1. Call DescribeLimits for a particular region to obtain your current account limits on provisioned capacity there.

        2. Create a variable to hold the aggregate read capacity units provisioned for all your tables in that region, and one to hold the aggregate write capacity units. Zero them both.

        3. Call ListTables to obtain a list of all your DynamoDB tables.

        4. For each table name listed by ListTables, do the following:

          • Call DescribeTable with the table name.

          • Use the data returned by DescribeTable to add the read capacity units and write capacity units provisioned for the table itself to your variables.

          • If the table has one or more global secondary indexes (GSIs), loop over these GSIs and add their provisioned capacity values to your variables as well.

        5. Report the account limits for that region returned by DescribeLimits, along with the total current provisioned capacity levels you have calculated.

        This will let you see whether you are getting close to your account-level limits.

        The per-table limits apply only when you are creating a new table. They restrict the sum of the provisioned capacity of the new table itself and all its global secondary indexes.

        For existing tables and their GSIs, DynamoDB will not let you increase provisioned capacity extremely rapidly, but the only upper limit that applies is that the aggregate provisioned capacity over all your tables and GSIs cannot exceed either of the per-account limits.

        DescribeLimits should only be called periodically. You can expect throttling errors if you call it more than once in a minute.

        The DescribeLimits Request element has no content.

        ", "DescribeTable": "

        Returns information about the table, including the current status of the table, when it was created, the primary key schema, and any indexes on the table.

        If you issue a DescribeTable request immediately after a CreateTable request, DynamoDB might return a ResourceNotFoundException. This is because DescribeTable uses an eventually consistent query, and the metadata for your table might not be available at that moment. Wait for a few seconds, and then try the DescribeTable request again.

        ", "GetItem": "

        The GetItem operation returns a set of attributes for the item with the given primary key. If there is no matching item, GetItem does not return any data.

        GetItem provides an eventually consistent read by default. If your application requires a strongly consistent read, set ConsistentRead to true. Although a strongly consistent read might take more time than an eventually consistent read, it always returns the last updated value.

        ", "ListTables": "

        Returns an array of table names associated with the current account and endpoint. The output from ListTables is paginated, with each page returning a maximum of 100 table names.

        ", "PutItem": "

        Creates a new item, or replaces an old item with a new item. If an item that has the same primary key as the new item already exists in the specified table, the new item completely replaces the existing item. You can perform a conditional put operation (add a new item if one with the specified primary key doesn't exist), or replace an existing item if it has certain attribute values.

        In addition to putting an item, you can also return the item's attribute values in the same operation, using the ReturnValues parameter.

        When you add an item, the primary key attribute(s) are the only required attributes. Attribute values cannot be null. String and Binary type attributes must have lengths greater than zero. Set type attributes cannot be empty. Requests with empty values will be rejected with a ValidationException exception.

        You can request that PutItem return either a copy of the original item (before the update) or a copy of the updated item (after the update). For more information, see the ReturnValues description below.

        To prevent a new item from replacing an existing item, use a conditional expression that contains the attribute_not_exists function with the name of the attribute being used as the partition key for the table. Since every record must contain that attribute, the attribute_not_exists function will only succeed if no matching item exists.

        For more information about using this API, see Working with Items in the Amazon DynamoDB Developer Guide.

        ", "Query": "

        A Query operation uses the primary key of a table or a secondary index to directly access items from that table or index.

        Use the KeyConditionExpression parameter to provide a specific value for the partition key. The Query operation will return all of the items from the table or index with that partition key value. You can optionally narrow the scope of the Query operation by specifying a sort key value and a comparison operator in KeyConditionExpression. You can use the ScanIndexForward parameter to get results in forward or reverse order, by sort key.

        Queries that do not return results consume the minimum number of read capacity units for that type of read operation.

        If the total number of items meeting the query criteria exceeds the result set size limit of 1 MB, the query stops and results are returned to the user with the LastEvaluatedKey element to continue the query in a subsequent operation. Unlike a Scan operation, a Query operation never returns both an empty result set and a LastEvaluatedKey value. LastEvaluatedKey is only provided if you have used the Limit parameter, or if the result set exceeds 1 MB (prior to applying a filter).

        You can query a table, a local secondary index, or a global secondary index. For a query on a table or on a local secondary index, you can set the ConsistentRead parameter to true and obtain a strongly consistent result. Global secondary indexes support eventually consistent reads only, so do not specify ConsistentRead when querying a global secondary index.

        ", "Scan": "

        The Scan operation returns one or more items and item attributes by accessing every item in a table or a secondary index. To have DynamoDB return fewer items, you can provide a ScanFilter operation.

        If the total number of scanned items exceeds the maximum data set size limit of 1 MB, the scan stops and results are returned to the user as a LastEvaluatedKey value to continue the scan in a subsequent operation. The results also include the number of items exceeding the limit. A scan can result in no table data meeting the filter criteria.

        By default, Scan operations proceed sequentially; however, for faster performance on a large table or secondary index, applications can request a parallel Scan operation by providing the Segment and TotalSegments parameters. For more information, see Parallel Scan in the Amazon DynamoDB Developer Guide.

        By default, Scan uses eventually consistent reads when accessing the data in a table; therefore, the result set might not include the changes to data in the table immediately before the operation began. If you need a consistent copy of the data, as of the time that the Scan begins, you can set the ConsistentRead parameter to true.

        ", "UpdateItem": "

        Edits an existing item's attributes, or adds a new item to the table if it does not already exist. You can put, delete, or add attribute values. You can also perform a conditional update on an existing item (insert a new attribute name-value pair if it doesn't exist, or replace an existing name-value pair if it has certain expected attribute values).

        You can also return the item's attribute values in the same UpdateItem operation using the ReturnValues parameter.

        ", "UpdateTable": "

        Modifies the provisioned throughput settings, global secondary indexes, or DynamoDB Streams settings for a given table.

        You can only perform one of the following operations at once:

        • Modify the provisioned throughput settings of the table.

        • Enable or disable Streams on the table.

        • Remove a global secondary index from the table.

        • Create a new global secondary index on the table. Once the index begins backfilling, you can use UpdateTable to perform other operations.

        UpdateTable is an asynchronous operation; while it is executing, the table status changes from ACTIVE to UPDATING. While it is UPDATING, you cannot issue another UpdateTable request. When the table returns to the ACTIVE state, the UpdateTable operation is complete.

        " }, "shapes": { "AttributeAction": { "base": null, "refs": { "AttributeValueUpdate$Action": "

        Specifies how to perform the update. Valid values are PUT (default), DELETE, and ADD. The behavior depends on whether the specified primary key already exists in the table.

        If an item with the specified Key is found in the table:

        • PUT - Adds the specified attribute to the item. If the attribute already exists, it is replaced by the new value.

        • DELETE - If no value is specified, the attribute and its value are removed from the item. The data type of the specified value must match the existing value's data type.

          If a set of values is specified, then those values are subtracted from the old set. For example, if the attribute value was the set [a,b,c] and the DELETE action specified [a,c], then the final attribute value would be [b]. Specifying an empty set is an error.

        • ADD - If the attribute does not already exist, then the attribute and its values are added to the item. If the attribute does exist, then the behavior of ADD depends on the data type of the attribute:

          • If the existing attribute is a number, and if Value is also a number, then the Value is mathematically added to the existing attribute. If Value is a negative number, then it is subtracted from the existing attribute.

            If you use ADD to increment or decrement a number value for an item that doesn't exist before the update, DynamoDB uses 0 as the initial value.

            In addition, if you use ADD to update an existing item, and intend to increment or decrement an attribute value which does not yet exist, DynamoDB uses 0 as the initial value. For example, suppose that the item you want to update does not yet have an attribute named itemcount, but you decide to ADD the number 3 to this attribute anyway, even though it currently does not exist. DynamoDB will create the itemcount attribute, set its initial value to 0, and finally add 3 to it. The result will be a new itemcount attribute in the item, with a value of 3.

          • If the existing data type is a set, and if the Value is also a set, then the Value is added to the existing set. (This is a set operation, not mathematical addition.) For example, if the attribute value was the set [1,2], and the ADD action specified [3], then the final attribute value would be [1,2,3]. An error occurs if an Add action is specified for a set attribute and the attribute type specified does not match the existing set type.

            Both sets must have the same primitive data type. For example, if the existing data type is a set of strings, the Value must also be a set of strings. The same holds true for number sets and binary sets.

          This action is only valid for an existing attribute whose data type is number or is a set. Do not use ADD for any other data types.

        If no item with the specified Key is found:

        • PUT - DynamoDB creates a new item with the specified primary key, and then adds the attribute.

        • DELETE - Nothing happens; there is no attribute to delete.

        • ADD - DynamoDB creates an item with the supplied primary key and number (or set of numbers) for the attribute value. The only data types allowed are number and number set; no other data types can be specified.

        " } }, "AttributeDefinition": { "base": "

        Represents an attribute for describing the key schema for the table and indexes.

        ", "refs": { "AttributeDefinitions$member": null } }, "AttributeDefinitions": { "base": null, "refs": { "CreateTableInput$AttributeDefinitions": "

        An array of attributes that describe the key schema for the table and indexes.

        ", "TableDescription$AttributeDefinitions": "

        An array of AttributeDefinition objects. Each of these objects describes one attribute in the table and index key schema.

        Each AttributeDefinition object in this array is composed of:

        • AttributeName - The name of the attribute.

        • AttributeType - The data type for the attribute.

        ", "UpdateTableInput$AttributeDefinitions": "

        An array of attributes that describe the key schema for the table and indexes. If you are adding a new global secondary index to the table, AttributeDefinitions must include the key element(s) of the new index.

        " } }, "AttributeMap": { "base": null, "refs": { "DeleteItemOutput$Attributes": "

        A map of attribute names to AttributeValue objects, representing the item as it appeared before the DeleteItem operation. This map appears in the response only if ReturnValues was specified as ALL_OLD in the request.

        ", "GetItemOutput$Item": "

        A map of attribute names to AttributeValue objects, as specified by AttributesToGet.

        ", "ItemList$member": null, "PutItemOutput$Attributes": "

        The attribute values as they appeared before the PutItem operation, but only if ReturnValues is specified as ALL_OLD in the request. Each element consists of an attribute name and an attribute value.

        ", "UpdateItemOutput$Attributes": "

        A map of attribute values as they appeared before the UpdateItem operation. This map only appears if ReturnValues was specified as something other than NONE in the request. Each element represents one attribute.

        " } }, "AttributeName": { "base": null, "refs": { "AttributeMap$key": null, "AttributeNameList$member": null, "AttributeUpdates$key": null, "ExpectedAttributeMap$key": null, "ExpressionAttributeNameMap$value": null, "FilterConditionMap$key": null, "ItemCollectionKeyAttributeMap$key": null, "Key$key": null, "KeyConditions$key": null, "MapAttributeValue$key": null, "PutItemInputAttributeMap$key": null } }, "AttributeNameList": { "base": null, "refs": { "GetItemInput$AttributesToGet": "

        This is a legacy parameter, for backward compatibility. New applications should use ProjectionExpression instead. Do not combine legacy parameters and expression parameters in a single API call; otherwise, DynamoDB will return a ValidationException exception.

        This parameter allows you to retrieve attributes of type List or Map; however, it cannot retrieve individual elements within a List or a Map.

        The names of one or more attributes to retrieve. If no attribute names are provided, then all attributes will be returned. If any of the requested attributes are not found, they will not appear in the result.

        Note that AttributesToGet has no effect on provisioned throughput consumption. DynamoDB determines capacity units consumed based on item size, not on the amount of data that is returned to an application.

        ", "KeysAndAttributes$AttributesToGet": "

        One or more attributes to retrieve from the table or index. If no attribute names are specified then all attributes will be returned. If any of the specified attributes are not found, they will not appear in the result.

        ", "QueryInput$AttributesToGet": "

        This is a legacy parameter, for backward compatibility. New applications should use ProjectionExpression instead. Do not combine legacy parameters and expression parameters in a single API call; otherwise, DynamoDB will return a ValidationException exception.

        This parameter allows you to retrieve attributes of type List or Map; however, it cannot retrieve individual elements within a List or a Map.

        The names of one or more attributes to retrieve. If no attribute names are provided, then all attributes will be returned. If any of the requested attributes are not found, they will not appear in the result.

        Note that AttributesToGet has no effect on provisioned throughput consumption. DynamoDB determines capacity units consumed based on item size, not on the amount of data that is returned to an application.

        You cannot use both AttributesToGet and Select together in a Query request, unless the value for Select is SPECIFIC_ATTRIBUTES. (This usage is equivalent to specifying AttributesToGet without any value for Select.)

        If you query a local secondary index and request only attributes that are projected into that index, the operation will read only the index and not the table. If any of the requested attributes are not projected into the local secondary index, DynamoDB will fetch each of these attributes from the parent table. This extra fetching incurs additional throughput cost and latency.

        If you query a global secondary index, you can only request attributes that are projected into the index. Global secondary index queries cannot fetch attributes from the parent table.

        ", "ScanInput$AttributesToGet": "

        This is a legacy parameter, for backward compatibility. New applications should use ProjectionExpression instead. Do not combine legacy parameters and expression parameters in a single API call; otherwise, DynamoDB will return a ValidationException exception.

        This parameter allows you to retrieve attributes of type List or Map; however, it cannot retrieve individual elements within a List or a Map.

        The names of one or more attributes to retrieve. If no attribute names are provided, then all attributes will be returned. If any of the requested attributes are not found, they will not appear in the result.

        Note that AttributesToGet has no effect on provisioned throughput consumption. DynamoDB determines capacity units consumed based on item size, not on the amount of data that is returned to an application.

        " } }, "AttributeUpdates": { "base": null, "refs": { "UpdateItemInput$AttributeUpdates": "

        This is a legacy parameter, for backward compatibility. New applications should use UpdateExpression instead. Do not combine legacy parameters and expression parameters in a single API call; otherwise, DynamoDB will return a ValidationException exception.

        This parameter can be used for modifying top-level attributes; however, it does not support individual list or map elements.

        The names of attributes to be modified, the action to perform on each, and the new value for each. If you are updating an attribute that is an index key attribute for any indexes on that table, the attribute type must match the index key type defined in the AttributesDefinition of the table description. You can use UpdateItem to update any non-key attributes.

        Attribute values cannot be null. String and Binary type attributes must have lengths greater than zero. Set type attributes must not be empty. Requests with empty values will be rejected with a ValidationException exception.

        Each AttributeUpdates element consists of an attribute name to modify, along with the following:

        • Value - The new value, if applicable, for this attribute.

        • Action - A value that specifies how to perform the update. This action is only valid for an existing attribute whose data type is Number or is a set; do not use ADD for other data types.

          If an item with the specified primary key is found in the table, the following values perform the following actions:

          • PUT - Adds the specified attribute to the item. If the attribute already exists, it is replaced by the new value.

          • DELETE - Removes the attribute and its value, if no value is specified for DELETE. The data type of the specified value must match the existing value's data type.

            If a set of values is specified, then those values are subtracted from the old set. For example, if the attribute value was the set [a,b,c] and the DELETE action specifies [a,c], then the final attribute value is [b]. Specifying an empty set is an error.

          • ADD - Adds the specified value to the item, if the attribute does not already exist. If the attribute does exist, then the behavior of ADD depends on the data type of the attribute:

            • If the existing attribute is a number, and if Value is also a number, then Value is mathematically added to the existing attribute. If Value is a negative number, then it is subtracted from the existing attribute.

              If you use ADD to increment or decrement a number value for an item that doesn't exist before the update, DynamoDB uses 0 as the initial value.

              Similarly, if you use ADD for an existing item to increment or decrement an attribute value that doesn't exist before the update, DynamoDB uses 0 as the initial value. For example, suppose that the item you want to update doesn't have an attribute named itemcount, but you decide to ADD the number 3 to this attribute anyway. DynamoDB will create the itemcount attribute, set its initial value to 0, and finally add 3 to it. The result will be a new itemcount attribute, with a value of 3.

            • If the existing data type is a set, and if Value is also a set, then Value is appended to the existing set. For example, if the attribute value is the set [1,2], and the ADD action specified [3], then the final attribute value is [1,2,3]. An error occurs if an ADD action is specified for a set attribute and the attribute type specified does not match the existing set type.

              Both sets must have the same primitive data type. For example, if the existing data type is a set of strings, Value must also be a set of strings.

          If no item with the specified key is found in the table, the following values perform the following actions:

          • PUT - Causes DynamoDB to create a new item with the specified primary key, and then adds the attribute.

          • DELETE - Nothing happens, because attributes cannot be deleted from a nonexistent item. The operation succeeds, but DynamoDB does not create a new item.

          • ADD - Causes DynamoDB to create an item with the supplied primary key and number (or set of numbers) for the attribute value. The only data types allowed are Number and Number Set.

        If you provide any attributes that are part of an index key, then the data types for those attributes must match those of the schema in the table's attribute definition.

        " } }, "AttributeValue": { "base": "

        Represents the data for an attribute. You can set one, and only one, of the elements.

        Each attribute in an item is a name-value pair. An attribute can be single-valued or multi-valued set. For example, a book item can have title and authors attributes. Each book has one title but can have many authors. The multi-valued attribute is a set; duplicate values are not allowed.

        ", "refs": { "AttributeMap$value": null, "AttributeValueList$member": null, "AttributeValueUpdate$Value": null, "ExpectedAttributeValue$Value": null, "ExpressionAttributeValueMap$value": null, "ItemCollectionKeyAttributeMap$value": null, "Key$value": null, "ListAttributeValue$member": null, "MapAttributeValue$value": null, "PutItemInputAttributeMap$value": null } }, "AttributeValueList": { "base": null, "refs": { "Condition$AttributeValueList": "

        One or more values to evaluate against the supplied attribute. The number of values in the list depends on the ComparisonOperator being used.

        For type Number, value comparisons are numeric.

        String value comparisons for greater than, equals, or less than are based on ASCII character code values. For example, a is greater than A, and a is greater than B. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.

        For Binary, DynamoDB treats each byte of the binary data as unsigned when it compares binary values.

        ", "ExpectedAttributeValue$AttributeValueList": "

        One or more values to evaluate against the supplied attribute. The number of values in the list depends on the ComparisonOperator being used.

        For type Number, value comparisons are numeric.

        String value comparisons for greater than, equals, or less than are based on ASCII character code values. For example, a is greater than A, and a is greater than B. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.

        For Binary, DynamoDB treats each byte of the binary data as unsigned when it compares binary values.

        For information on specifying data types in JSON, see JSON Data Format in the Amazon DynamoDB Developer Guide.

        " } }, "AttributeValueUpdate": { "base": "

        For the UpdateItem operation, represents the attributes to be modified, the action to perform on each, and the new value for each.

        You cannot use UpdateItem to update any primary key attributes. Instead, you will need to delete the item, and then use PutItem to create a new item with new attributes.

        Attribute values cannot be null; string and binary type attributes must have lengths greater than zero; and set type attributes must not be empty. Requests with empty values will be rejected with a ValidationException exception.

        ", "refs": { "AttributeUpdates$value": null } }, "Backfilling": { "base": null, "refs": { "GlobalSecondaryIndexDescription$Backfilling": "

        Indicates whether the index is currently backfilling. Backfilling is the process of reading items from the table and determining whether they can be added to the index. (Not all items will qualify: For example, a partition key cannot have any duplicate values.) If an item can be added to the index, DynamoDB will do so. After all items have been processed, the backfilling operation is complete and Backfilling is false.

        For indexes that were created during a CreateTable operation, the Backfilling attribute does not appear in the DescribeTable output.

        " } }, "BatchGetItemInput": { "base": "

        Represents the input of a BatchGetItem operation.

        ", "refs": { } }, "BatchGetItemOutput": { "base": "

        Represents the output of a BatchGetItem operation.

        ", "refs": { } }, "BatchGetRequestMap": { "base": null, "refs": { "BatchGetItemInput$RequestItems": "

        A map of one or more table names and, for each table, a map that describes one or more items to retrieve from that table. Each table name can be used only once per BatchGetItem request.

        Each element in the map of items to retrieve consists of the following:

        • ConsistentRead - If true, a strongly consistent read is used; if false (the default), an eventually consistent read is used.

        • ExpressionAttributeNames - One or more substitution tokens for attribute names in the ProjectionExpression parameter. The following are some use cases for using ExpressionAttributeNames:

          • To access an attribute whose name conflicts with a DynamoDB reserved word.

          • To create a placeholder for repeating occurrences of an attribute name in an expression.

          • To prevent special characters in an attribute name from being misinterpreted in an expression.

          Use the # character in an expression to dereference an attribute name. For example, consider the following attribute name:

          • Percentile

          The name of this attribute conflicts with a reserved word, so it cannot be used directly in an expression. (For the complete list of reserved words, see Reserved Words in the Amazon DynamoDB Developer Guide). To work around this, you could specify the following for ExpressionAttributeNames:

          • {\"#P\":\"Percentile\"}

          You could then use this substitution in an expression, as in this example:

          • #P = :val

          Tokens that begin with the : character are expression attribute values, which are placeholders for the actual value at runtime.

          For more information on expression attribute names, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

        • Keys - An array of primary key attribute values that define specific items in the table. For each primary key, you must provide all of the key attributes. For example, with a simple primary key, you only need to provide the partition key value. For a composite key, you must provide both the partition key value and the sort key value.

        • ProjectionExpression - A string that identifies one or more attributes to retrieve from the table. These attributes can include scalars, sets, or elements of a JSON document. The attributes in the expression must be separated by commas.

          If no attribute names are specified, then all attributes will be returned. If any of the requested attributes are not found, they will not appear in the result.

          For more information, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

        • AttributesToGet -

          This is a legacy parameter, for backward compatibility. New applications should use ProjectionExpression instead. Do not combine legacy parameters and expression parameters in a single API call; otherwise, DynamoDB will return a ValidationException exception.

          This parameter allows you to retrieve attributes of type List or Map; however, it cannot retrieve individual elements within a List or a Map.

          The names of one or more attributes to retrieve. If no attribute names are provided, then all attributes will be returned. If any of the requested attributes are not found, they will not appear in the result.

          Note that AttributesToGet has no effect on provisioned throughput consumption. DynamoDB determines capacity units consumed based on item size, not on the amount of data that is returned to an application.

        ", "BatchGetItemOutput$UnprocessedKeys": "

        A map of tables and their respective keys that were not processed with the current response. The UnprocessedKeys value is in the same form as RequestItems, so the value can be provided directly to a subsequent BatchGetItem operation. For more information, see RequestItems in the Request Parameters section.

        Each element consists of:

        • Keys - An array of primary key attribute values that define specific items in the table.

        • AttributesToGet - One or more attributes to be retrieved from the table or index. By default, all attributes are returned. If a requested attribute is not found, it does not appear in the result.

        • ConsistentRead - The consistency of a read operation. If set to true, then a strongly consistent read is used; otherwise, an eventually consistent read is used.

        If there are no unprocessed keys remaining, the response contains an empty UnprocessedKeys map.

        " } }, "BatchGetResponseMap": { "base": null, "refs": { "BatchGetItemOutput$Responses": "

        A map of table name to a list of items. Each object in Responses consists of a table name, along with a map of attribute data consisting of the data type and attribute value.

        " } }, "BatchWriteItemInput": { "base": "

        Represents the input of a BatchWriteItem operation.

        ", "refs": { } }, "BatchWriteItemOutput": { "base": "

        Represents the output of a BatchWriteItem operation.

        ", "refs": { } }, "BatchWriteItemRequestMap": { "base": null, "refs": { "BatchWriteItemInput$RequestItems": "

        A map of one or more table names and, for each table, a list of operations to be performed (DeleteRequest or PutRequest). Each element in the map consists of the following:

        • DeleteRequest - Perform a DeleteItem operation on the specified item. The item to be deleted is identified by a Key subelement:

          • Key - A map of primary key attribute values that uniquely identify the ! item. Each entry in this map consists of an attribute name and an attribute value. For each primary key, you must provide all of the key attributes. For example, with a simple primary key, you only need to provide a value for the partition key. For a composite primary key, you must provide values for both the partition key and the sort key.

        • PutRequest - Perform a PutItem operation on the specified item. The item to be put is identified by an Item subelement:

          • Item - A map of attributes and their values. Each entry in this map consists of an attribute name and an attribute value. Attribute values must not be null; string and binary type attributes must have lengths greater than zero; and set type attributes must not be empty. Requests that contain empty values will be rejected with a ValidationException exception.

            If you specify any attributes that are part of an index key, then the data types for those attributes must match those of the schema in the table's attribute definition.

        ", "BatchWriteItemOutput$UnprocessedItems": "

        A map of tables and requests against those tables that were not processed. The UnprocessedItems value is in the same form as RequestItems, so you can provide this value directly to a subsequent BatchGetItem operation. For more information, see RequestItems in the Request Parameters section.

        Each UnprocessedItems entry consists of a table name and, for that table, a list of operations to perform (DeleteRequest or PutRequest).

        • DeleteRequest - Perform a DeleteItem operation on the specified item. The item to be deleted is identified by a Key subelement:

          • Key - A map of primary key attribute values that uniquely identify the item. Each entry in this map consists of an attribute name and an attribute value.

        • PutRequest - Perform a PutItem operation on the specified item. The item to be put is identified by an Item subelement:

          • Item - A map of attributes and their values. Each entry in this map consists of an attribute name and an attribute value. Attribute values must not be null; string and binary type attributes must have lengths greater than zero; and set type attributes must not be empty. Requests that contain empty values will be rejected with a ValidationException exception.

            If you specify any attributes that are part of an index key, then the data types for those attributes must match those of the schema in the table's attribute definition.

        If there are no unprocessed items remaining, the response contains an empty UnprocessedItems map.

        " } }, "BinaryAttributeValue": { "base": null, "refs": { "AttributeValue$B": "

        A Binary data type.

        ", "BinarySetAttributeValue$member": null } }, "BinarySetAttributeValue": { "base": null, "refs": { "AttributeValue$BS": "

        A Binary Set data type.

        " } }, "BooleanAttributeValue": { "base": null, "refs": { "AttributeValue$BOOL": "

        A Boolean data type.

        " } }, "BooleanObject": { "base": null, "refs": { "ExpectedAttributeValue$Exists": "

        Causes DynamoDB to evaluate the value before attempting a conditional operation:

        • If Exists is true, DynamoDB will check to see if that attribute value already exists in the table. If it is found, then the operation succeeds. If it is not found, the operation fails with a ConditionalCheckFailedException.

        • If Exists is false, DynamoDB assumes that the attribute value does not exist in the table. If in fact the value does not exist, then the assumption is valid and the operation succeeds. If the value is found, despite the assumption that it does not exist, the operation fails with a ConditionalCheckFailedException.

        The default setting for Exists is true. If you supply a Value all by itself, DynamoDB assumes the attribute exists: You don't have to set Exists to true, because it is implied.

        DynamoDB returns a ValidationException if:

        • Exists is true but there is no Value to check. (You expect a value to exist, but don't specify what that value is.)

        • Exists is false but you also provide a Value. (You cannot expect an attribute to have a value, while also expecting it not to exist.)

        ", "QueryInput$ScanIndexForward": "

        Specifies the order for index traversal: If true (default), the traversal is performed in ascending order; if false, the traversal is performed in descending order.

        Items with the same partition key value are stored in sorted order by sort key. If the sort key data type is Number, the results are stored in numeric order. For type String, the results are stored in order of ASCII character code values. For type Binary, DynamoDB treats each byte of the binary data as unsigned.

        If ScanIndexForward is true, DynamoDB returns the results in the order in which they are stored (by sort key value). This is the default behavior. If ScanIndexForward is false, DynamoDB reads the results in reverse order by sort key value, and then returns the results to the client.

        " } }, "Capacity": { "base": "

        Represents the amount of provisioned throughput capacity consumed on a table or an index.

        ", "refs": { "ConsumedCapacity$Table": "

        The amount of throughput consumed on the table affected by the operation.

        ", "SecondaryIndexesCapacityMap$value": null } }, "ComparisonOperator": { "base": null, "refs": { "Condition$ComparisonOperator": "

        A comparator for evaluating attributes. For example, equals, greater than, less than, etc.

        The following comparison operators are available:

        EQ | NE | LE | LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | BEGINS_WITH | IN | BETWEEN

        The following are descriptions of each comparison operator.

        • EQ : Equal. EQ is supported for all datatypes, including lists and maps.

          AttributeValueList can contain only one AttributeValue element of type String, Number, Binary, String Set, Number Set, or Binary Set. If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not equal {\"NS\":[\"6\", \"2\", \"1\"]}.

        • NE : Not equal. NE is supported for all datatypes, including lists and maps.

          AttributeValueList can contain only one AttributeValue of type String, Number, Binary, String Set, Number Set, or Binary Set. If an item contains an AttributeValue of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not equal {\"NS\":[\"6\", \"2\", \"1\"]}.

        • LE : Less than or equal.

          AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

        • LT : Less than.

          AttributeValueList can contain only one AttributeValue of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

        • GE : Greater than or equal.

          AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

        • GT : Greater than.

          AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

        • NOT_NULL : The attribute exists. NOT_NULL is supported for all datatypes, including lists and maps.

          This operator tests for the existence of an attribute, not its data type. If the data type of attribute \"a\" is null, and you evaluate it using NOT_NULL, the result is a Boolean true. This result is because the attribute \"a\" exists; its data type is not relevant to the NOT_NULL comparison operator.

        • NULL : The attribute does not exist. NULL is supported for all datatypes, including lists and maps.

          This operator tests for the nonexistence of an attribute, not its data type. If the data type of attribute \"a\" is null, and you evaluate it using NULL, the result is a Boolean false. This is because the attribute \"a\" exists; its data type is not relevant to the NULL comparison operator.

        • CONTAINS : Checks for a subsequence, or value in a set.

          AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If the target attribute of the comparison is of type String, then the operator checks for a substring match. If the target attribute of the comparison is of type Binary, then the operator looks for a subsequence of the target that matches the input. If the target attribute of the comparison is a set (\"SS\", \"NS\", or \"BS\"), then the operator evaluates to true if it finds an exact match with any member of the set.

          CONTAINS is supported for lists: When evaluating \"a CONTAINS b\", \"a\" can be a list; however, \"b\" cannot be a set, a map, or a list.

        • NOT_CONTAINS : Checks for absence of a subsequence, or absence of a value in a set.

          AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If the target attribute of the comparison is a String, then the operator checks for the absence of a substring match. If the target attribute of the comparison is Binary, then the operator checks for the absence of a subsequence of the target that matches the input. If the target attribute of the comparison is a set (\"SS\", \"NS\", or \"BS\"), then the operator evaluates to true if it does not find an exact match with any member of the set.

          NOT_CONTAINS is supported for lists: When evaluating \"a NOT CONTAINS b\", \"a\" can be a list; however, \"b\" cannot be a set, a map, or a list.

        • BEGINS_WITH : Checks for a prefix.

          AttributeValueList can contain only one AttributeValue of type String or Binary (not a Number or a set type). The target attribute of the comparison must be of type String or Binary (not a Number or a set type).

        • IN : Checks for matching elements within two sets.

          AttributeValueList can contain one or more AttributeValue elements of type String, Number, or Binary (not a set type). These attributes are compared against an existing set type attribute of an item. If any elements of the input set are present in the item attribute, the expression evaluates to true.

        • BETWEEN : Greater than or equal to the first value, and less than or equal to the second value.

          AttributeValueList must contain two AttributeValue elements of the same type, either String, Number, or Binary (not a set type). A target attribute matches if the target value is greater than, or equal to, the first element and less than, or equal to, the second element. If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not compare to {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}

        For usage examples of AttributeValueList and ComparisonOperator, see Legacy Conditional Parameters in the Amazon DynamoDB Developer Guide.

        ", "ExpectedAttributeValue$ComparisonOperator": "

        A comparator for evaluating attributes in the AttributeValueList. For example, equals, greater than, less than, etc.

        The following comparison operators are available:

        EQ | NE | LE | LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | BEGINS_WITH | IN | BETWEEN

        The following are descriptions of each comparison operator.

        • EQ : Equal. EQ is supported for all datatypes, including lists and maps.

          AttributeValueList can contain only one AttributeValue element of type String, Number, Binary, String Set, Number Set, or Binary Set. If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not equal {\"NS\":[\"6\", \"2\", \"1\"]}.

        • NE : Not equal. NE is supported for all datatypes, including lists and maps.

          AttributeValueList can contain only one AttributeValue of type String, Number, Binary, String Set, Number Set, or Binary Set. If an item contains an AttributeValue of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not equal {\"NS\":[\"6\", \"2\", \"1\"]}.

        • LE : Less than or equal.

          AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

        • LT : Less than.

          AttributeValueList can contain only one AttributeValue of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

        • GE : Greater than or equal.

          AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

        • GT : Greater than.

          AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

        • NOT_NULL : The attribute exists. NOT_NULL is supported for all datatypes, including lists and maps.

          This operator tests for the existence of an attribute, not its data type. If the data type of attribute \"a\" is null, and you evaluate it using NOT_NULL, the result is a Boolean true. This result is because the attribute \"a\" exists; its data type is not relevant to the NOT_NULL comparison operator.

        • NULL : The attribute does not exist. NULL is supported for all datatypes, including lists and maps.

          This operator tests for the nonexistence of an attribute, not its data type. If the data type of attribute \"a\" is null, and you evaluate it using NULL, the result is a Boolean false. This is because the attribute \"a\" exists; its data type is not relevant to the NULL comparison operator.

        • CONTAINS : Checks for a subsequence, or value in a set.

          AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If the target attribute of the comparison is of type String, then the operator checks for a substring match. If the target attribute of the comparison is of type Binary, then the operator looks for a subsequence of the target that matches the input. If the target attribute of the comparison is a set (\"SS\", \"NS\", or \"BS\"), then the operator evaluates to true if it finds an exact match with any member of the set.

          CONTAINS is supported for lists: When evaluating \"a CONTAINS b\", \"a\" can be a list; however, \"b\" cannot be a set, a map, or a list.

        • NOT_CONTAINS : Checks for absence of a subsequence, or absence of a value in a set.

          AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If the target attribute of the comparison is a String, then the operator checks for the absence of a substring match. If the target attribute of the comparison is Binary, then the operator checks for the absence of a subsequence of the target that matches the input. If the target attribute of the comparison is a set (\"SS\", \"NS\", or \"BS\"), then the operator evaluates to true if it does not find an exact match with any member of the set.

          NOT_CONTAINS is supported for lists: When evaluating \"a NOT CONTAINS b\", \"a\" can be a list; however, \"b\" cannot be a set, a map, or a list.

        • BEGINS_WITH : Checks for a prefix.

          AttributeValueList can contain only one AttributeValue of type String or Binary (not a Number or a set type). The target attribute of the comparison must be of type String or Binary (not a Number or a set type).

        • IN : Checks for matching elements within two sets.

          AttributeValueList can contain one or more AttributeValue elements of type String, Number, or Binary (not a set type). These attributes are compared against an existing set type attribute of an item. If any elements of the input set are present in the item attribute, the expression evaluates to true.

        • BETWEEN : Greater than or equal to the first value, and less than or equal to the second value.

          AttributeValueList must contain two AttributeValue elements of the same type, either String, Number, or Binary (not a set type). A target attribute matches if the target value is greater than, or equal to, the first element and less than, or equal to, the second element. If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not compare to {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}

        " } }, "Condition": { "base": "

        Represents the selection criteria for a Query or Scan operation:

        • For a Query operation, Condition is used for specifying the KeyConditions to use when querying a table or an index. For KeyConditions, only the following comparison operators are supported:

          EQ | LE | LT | GE | GT | BEGINS_WITH | BETWEEN

          Condition is also used in a QueryFilter, which evaluates the query results and returns only the desired values.

        • For a Scan operation, Condition is used in a ScanFilter, which evaluates the scan results and returns only the desired values.

        ", "refs": { "FilterConditionMap$value": null, "KeyConditions$value": null } }, "ConditionExpression": { "base": null, "refs": { "DeleteItemInput$ConditionExpression": "

        A condition that must be satisfied in order for a conditional DeleteItem to succeed.

        An expression can contain any of the following:

        • Functions: attribute_exists | attribute_not_exists | attribute_type | contains | begins_with | size

          These function names are case-sensitive.

        • Comparison operators: = | &#x3C;&#x3E; | &#x3C; | &#x3E; | &#x3C;= | &#x3E;= | BETWEEN | IN

        • Logical operators: AND | OR | NOT

        For more information on condition expressions, see Specifying Conditions in the Amazon DynamoDB Developer Guide.

        ConditionExpression replaces the legacy ConditionalOperator and Expected parameters.

        ", "PutItemInput$ConditionExpression": "

        A condition that must be satisfied in order for a conditional PutItem operation to succeed.

        An expression can contain any of the following:

        • Functions: attribute_exists | attribute_not_exists | attribute_type | contains | begins_with | size

          These function names are case-sensitive.

        • Comparison operators: = | &#x3C;&#x3E; | &#x3C; | &#x3E; | &#x3C;= | &#x3E;= | BETWEEN | IN

        • Logical operators: AND | OR | NOT

        For more information on condition expressions, see Specifying Conditions in the Amazon DynamoDB Developer Guide.

        ConditionExpression replaces the legacy ConditionalOperator and Expected parameters.

        ", "QueryInput$FilterExpression": "

        A string that contains conditions that DynamoDB applies after the Query operation, but before the data is returned to you. Items that do not satisfy the FilterExpression criteria are not returned.

        A FilterExpression is applied after the items have already been read; the process of filtering does not consume any additional read capacity units.

        For more information, see Filter Expressions in the Amazon DynamoDB Developer Guide.

        FilterExpression replaces the legacy QueryFilter and ConditionalOperator parameters.

        ", "ScanInput$FilterExpression": "

        A string that contains conditions that DynamoDB applies after the Scan operation, but before the data is returned to you. Items that do not satisfy the FilterExpression criteria are not returned.

        A FilterExpression is applied after the items have already been read; the process of filtering does not consume any additional read capacity units.

        For more information, see Filter Expressions in the Amazon DynamoDB Developer Guide.

        FilterExpression replaces the legacy ScanFilter and ConditionalOperator parameters.

        ", "UpdateItemInput$ConditionExpression": "

        A condition that must be satisfied in order for a conditional update to succeed.

        An expression can contain any of the following:

        • Functions: attribute_exists | attribute_not_exists | attribute_type | contains | begins_with | size

          These function names are case-sensitive.

        • Comparison operators: = | &#x3C;&#x3E; | &#x3C; | &#x3E; | &#x3C;= | &#x3E;= | BETWEEN | IN

        • Logical operators: AND | OR | NOT

        For more information on condition expressions, see Specifying Conditions in the Amazon DynamoDB Developer Guide.

        ConditionExpression replaces the legacy ConditionalOperator and Expected parameters.

        " } }, "ConditionalCheckFailedException": { "base": "

        A condition specified in the operation could not be evaluated.

        ", "refs": { } }, "ConditionalOperator": { "base": null, "refs": { "DeleteItemInput$ConditionalOperator": "

        This is a legacy parameter, for backward compatibility. New applications should use ConditionExpression instead. Do not combine legacy parameters and expression parameters in a single API call; otherwise, DynamoDB will return a ValidationException exception.

        A logical operator to apply to the conditions in the Expected map:

        • AND - If all of the conditions evaluate to true, then the entire map evaluates to true.

        • OR - If at least one of the conditions evaluate to true, then the entire map evaluates to true.

        If you omit ConditionalOperator, then AND is the default.

        The operation will succeed only if the entire map evaluates to true.

        This parameter does not support attributes of type List or Map.

        ", "PutItemInput$ConditionalOperator": "

        This is a legacy parameter, for backward compatibility. New applications should use ConditionExpression instead. Do not combine legacy parameters and expression parameters in a single API call; otherwise, DynamoDB will return a ValidationException exception.

        A logical operator to apply to the conditions in the Expected map:

        • AND - If all of the conditions evaluate to true, then the entire map evaluates to true.

        • OR - If at least one of the conditions evaluate to true, then the entire map evaluates to true.

        If you omit ConditionalOperator, then AND is the default.

        The operation will succeed only if the entire map evaluates to true.

        This parameter does not support attributes of type List or Map.

        ", "QueryInput$ConditionalOperator": "

        This is a legacy parameter, for backward compatibility. New applications should use FilterExpression instead. Do not combine legacy parameters and expression parameters in a single API call; otherwise, DynamoDB will return a ValidationException exception.

        A logical operator to apply to the conditions in a QueryFilter map:

        • AND - If all of the conditions evaluate to true, then the entire map evaluates to true.

        • OR - If at least one of the conditions evaluate to true, then the entire map evaluates to true.

        If you omit ConditionalOperator, then AND is the default.

        The operation will succeed only if the entire map evaluates to true.

        This parameter does not support attributes of type List or Map.

        ", "ScanInput$ConditionalOperator": "

        This is a legacy parameter, for backward compatibility. New applications should use FilterExpression instead. Do not combine legacy parameters and expression parameters in a single API call; otherwise, DynamoDB will return a ValidationException exception.

        A logical operator to apply to the conditions in a ScanFilter map:

        • AND - If all of the conditions evaluate to true, then the entire map evaluates to true.

        • OR - If at least one of the conditions evaluate to true, then the entire map evaluates to true.

        If you omit ConditionalOperator, then AND is the default.

        The operation will succeed only if the entire map evaluates to true.

        This parameter does not support attributes of type List or Map.

        ", "UpdateItemInput$ConditionalOperator": "

        This is a legacy parameter, for backward compatibility. New applications should use ConditionExpression instead. Do not combine legacy parameters and expression parameters in a single API call; otherwise, DynamoDB will return a ValidationException exception.

        A logical operator to apply to the conditions in the Expected map:

        • AND - If all of the conditions evaluate to true, then the entire map evaluates to true.

        • OR - If at least one of the conditions evaluate to true, then the entire map evaluates to true.

        If you omit ConditionalOperator, then AND is the default.

        The operation will succeed only if the entire map evaluates to true.

        This parameter does not support attributes of type List or Map.

        " } }, "ConsistentRead": { "base": null, "refs": { "GetItemInput$ConsistentRead": "

        Determines the read consistency model: If set to true, then the operation uses strongly consistent reads; otherwise, the operation uses eventually consistent reads.

        ", "KeysAndAttributes$ConsistentRead": "

        The consistency of a read operation. If set to true, then a strongly consistent read is used; otherwise, an eventually consistent read is used.

        ", "QueryInput$ConsistentRead": "

        Determines the read consistency model: If set to true, then the operation uses strongly consistent reads; otherwise, the operation uses eventually consistent reads.

        Strongly consistent reads are not supported on global secondary indexes. If you query a global secondary index with ConsistentRead set to true, you will receive a ValidationException.

        ", "ScanInput$ConsistentRead": "

        A Boolean value that determines the read consistency model during the scan:

        • If ConsistentRead is false, then the data returned from Scan might not contain the results from other recently completed write operations (PutItem, UpdateItem or DeleteItem).

        • If ConsistentRead is true, then all of the write operations that completed before the Scan began are guaranteed to be contained in the Scan response.

        The default setting for ConsistentRead is false.

        The ConsistentRead parameter is not supported on global secondary indexes. If you scan a global secondary index with ConsistentRead set to true, you will receive a ValidationException.

        " } }, "ConsumedCapacity": { "base": "

        The capacity units consumed by an operation. The data returned includes the total provisioned throughput consumed, along with statistics for the table and any indexes involved in the operation. ConsumedCapacity is only returned if the request asked for it. For more information, see Provisioned Throughput in the Amazon DynamoDB Developer Guide.

        ", "refs": { "ConsumedCapacityMultiple$member": null, "DeleteItemOutput$ConsumedCapacity": null, "GetItemOutput$ConsumedCapacity": null, "PutItemOutput$ConsumedCapacity": null, "QueryOutput$ConsumedCapacity": null, "ScanOutput$ConsumedCapacity": null, "UpdateItemOutput$ConsumedCapacity": null } }, "ConsumedCapacityMultiple": { "base": null, "refs": { "BatchGetItemOutput$ConsumedCapacity": "

        The read capacity units consumed by the operation.

        Each element consists of:

        • TableName - The table that consumed the provisioned throughput.

        • CapacityUnits - The total number of capacity units consumed.

        ", "BatchWriteItemOutput$ConsumedCapacity": "

        The capacity units consumed by the operation.

        Each element consists of:

        • TableName - The table that consumed the provisioned throughput.

        • CapacityUnits - The total number of capacity units consumed.

        " } }, "ConsumedCapacityUnits": { "base": null, "refs": { "Capacity$CapacityUnits": "

        The total number of capacity units consumed on a table or an index.

        ", "ConsumedCapacity$CapacityUnits": "

        The total number of capacity units consumed by the operation.

        " } }, "CreateGlobalSecondaryIndexAction": { "base": "

        Represents a new global secondary index to be added to an existing table.

        ", "refs": { "GlobalSecondaryIndexUpdate$Create": "

        The parameters required for creating a global secondary index on an existing table:

        • IndexName

        • KeySchema

        • AttributeDefinitions

        • Projection

        • ProvisionedThroughput

        " } }, "CreateTableInput": { "base": "

        Represents the input of a CreateTable operation.

        ", "refs": { } }, "CreateTableOutput": { "base": "

        Represents the output of a CreateTable operation.

        ", "refs": { } }, "Date": { "base": null, "refs": { "ProvisionedThroughputDescription$LastIncreaseDateTime": "

        The date and time of the last provisioned throughput increase for this table.

        ", "ProvisionedThroughputDescription$LastDecreaseDateTime": "

        The date and time of the last provisioned throughput decrease for this table.

        ", "TableDescription$CreationDateTime": "

        The date and time when the table was created, in UNIX epoch time format.

        " } }, "DeleteGlobalSecondaryIndexAction": { "base": "

        Represents a global secondary index to be deleted from an existing table.

        ", "refs": { "GlobalSecondaryIndexUpdate$Delete": "

        The name of an existing global secondary index to be removed.

        " } }, "DeleteItemInput": { "base": "

        Represents the input of a DeleteItem operation.

        ", "refs": { } }, "DeleteItemOutput": { "base": "

        Represents the output of a DeleteItem operation.

        ", "refs": { } }, "DeleteRequest": { "base": "

        Represents a request to perform a DeleteItem operation on an item.

        ", "refs": { "WriteRequest$DeleteRequest": "

        A request to perform a DeleteItem operation.

        " } }, "DeleteTableInput": { "base": "

        Represents the input of a DeleteTable operation.

        ", "refs": { } }, "DeleteTableOutput": { "base": "

        Represents the output of a DeleteTable operation.

        ", "refs": { } }, "DescribeLimitsInput": { "base": "

        Represents the input of a DescribeLimits operation. Has no content.

        ", "refs": { } }, "DescribeLimitsOutput": { "base": "

        Represents the output of a DescribeLimits operation.

        ", "refs": { } }, "DescribeTableInput": { "base": "

        Represents the input of a DescribeTable operation.

        ", "refs": { } }, "DescribeTableOutput": { "base": "

        Represents the output of a DescribeTable operation.

        ", "refs": { } }, "ErrorMessage": { "base": null, "refs": { "ConditionalCheckFailedException$message": "

        The conditional request failed.

        ", "InternalServerError$message": "

        The server encountered an internal error trying to fulfill the request.

        ", "ItemCollectionSizeLimitExceededException$message": "

        The total size of an item collection has exceeded the maximum limit of 10 gigabytes.

        ", "LimitExceededException$message": "

        Too many operations for a given subscriber.

        ", "ProvisionedThroughputExceededException$message": "

        You exceeded your maximum allowed provisioned throughput.

        ", "ResourceInUseException$message": "

        The resource which is being attempted to be changed is in use.

        ", "ResourceNotFoundException$message": "

        The resource which is being requested does not exist.

        " } }, "ExpectedAttributeMap": { "base": null, "refs": { "DeleteItemInput$Expected": "

        This is a legacy parameter, for backward compatibility. New applications should use ConditionExpression instead. Do not combine legacy parameters and expression parameters in a single API call; otherwise, DynamoDB will return a ValidationException exception.

        A map of attribute/condition pairs. Expected provides a conditional block for the DeleteItem operation.

        Each element of Expected consists of an attribute name, a comparison operator, and one or more values. DynamoDB compares the attribute with the value(s) you supplied, using the comparison operator. For each Expected element, the result of the evaluation is either true or false.

        If you specify more than one element in the Expected map, then by default all of the conditions must evaluate to true. In other words, the conditions are ANDed together. (You can use the ConditionalOperator parameter to OR the conditions instead. If you do this, then at least one of the conditions must evaluate to true, rather than all of them.)

        If the Expected map evaluates to true, then the conditional operation succeeds; otherwise, it fails.

        Expected contains the following:

        • AttributeValueList - One or more values to evaluate against the supplied attribute. The number of values in the list depends on the ComparisonOperator being used.

          For type Number, value comparisons are numeric.

          String value comparisons for greater than, equals, or less than are based on ASCII character code values. For example, a is greater than A, and a is greater than B. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.

          For type Binary, DynamoDB treats each byte of the binary data as unsigned when it compares binary values.

        • ComparisonOperator - A comparator for evaluating attributes in the AttributeValueList. When performing the comparison, DynamoDB uses strongly consistent reads.

          The following comparison operators are available:

          EQ | NE | LE | LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | BEGINS_WITH | IN | BETWEEN

          The following are descriptions of each comparison operator.

          • EQ : Equal. EQ is supported for all datatypes, including lists and maps.

            AttributeValueList can contain only one AttributeValue element of type String, Number, Binary, String Set, Number Set, or Binary Set. If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not equal {\"NS\":[\"6\", \"2\", \"1\"]}.

          • NE : Not equal. NE is supported for all datatypes, including lists and maps.

            AttributeValueList can contain only one AttributeValue of type String, Number, Binary, String Set, Number Set, or Binary Set. If an item contains an AttributeValue of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not equal {\"NS\":[\"6\", \"2\", \"1\"]}.

          • LE : Less than or equal.

            AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

          • LT : Less than.

            AttributeValueList can contain only one AttributeValue of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

          • GE : Greater than or equal.

            AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

          • GT : Greater than.

            AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

          • NOT_NULL : The attribute exists. NOT_NULL is supported for all datatypes, including lists and maps.

            This operator tests for the existence of an attribute, not its data type. If the data type of attribute \"a\" is null, and you evaluate it using NOT_NULL, the result is a Boolean true. This result is because the attribute \"a\" exists; its data type is not relevant to the NOT_NULL comparison operator.

          • NULL : The attribute does not exist. NULL is supported for all datatypes, including lists and maps.

            This operator tests for the nonexistence of an attribute, not its data type. If the data type of attribute \"a\" is null, and you evaluate it using NULL, the result is a Boolean false. This is because the attribute \"a\" exists; its data type is not relevant to the NULL comparison operator.

          • CONTAINS : Checks for a subsequence, or value in a set.

            AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If the target attribute of the comparison is of type String, then the operator checks for a substring match. If the target attribute of the comparison is of type Binary, then the operator looks for a subsequence of the target that matches the input. If the target attribute of the comparison is a set (\"SS\", \"NS\", or \"BS\"), then the operator evaluates to true if it finds an exact match with any member of the set.

            CONTAINS is supported for lists: When evaluating \"a CONTAINS b\", \"a\" can be a list; however, \"b\" cannot be a set, a map, or a list.

          • NOT_CONTAINS : Checks for absence of a subsequence, or absence of a value in a set.

            AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If the target attribute of the comparison is a String, then the operator checks for the absence of a substring match. If the target attribute of the comparison is Binary, then the operator checks for the absence of a subsequence of the target that matches the input. If the target attribute of the comparison is a set (\"SS\", \"NS\", or \"BS\"), then the operator evaluates to true if it does not find an exact match with any member of the set.

            NOT_CONTAINS is supported for lists: When evaluating \"a NOT CONTAINS b\", \"a\" can be a list; however, \"b\" cannot be a set, a map, or a list.

          • BEGINS_WITH : Checks for a prefix.

            AttributeValueList can contain only one AttributeValue of type String or Binary (not a Number or a set type). The target attribute of the comparison must be of type String or Binary (not a Number or a set type).

          • IN : Checks for matching elements within two sets.

            AttributeValueList can contain one or more AttributeValue elements of type String, Number, or Binary (not a set type). These attributes are compared against an existing set type attribute of an item. If any elements of the input set are present in the item attribute, the expression evaluates to true.

          • BETWEEN : Greater than or equal to the first value, and less than or equal to the second value.

            AttributeValueList must contain two AttributeValue elements of the same type, either String, Number, or Binary (not a set type). A target attribute matches if the target value is greater than, or equal to, the first element and less than, or equal to, the second element. If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not compare to {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}

        For usage examples of AttributeValueList and ComparisonOperator, see Legacy Conditional Parameters in the Amazon DynamoDB Developer Guide.

        For backward compatibility with previous DynamoDB releases, the following parameters can be used instead of AttributeValueList and ComparisonOperator:

        • Value - A value for DynamoDB to compare with an attribute.

        • Exists - A Boolean value that causes DynamoDB to evaluate the value before attempting the conditional operation:

          • If Exists is true, DynamoDB will check to see if that attribute value already exists in the table. If it is found, then the condition evaluates to true; otherwise the condition evaluate to false.

          • If Exists is false, DynamoDB assumes that the attribute value does not exist in the table. If in fact the value does not exist, then the assumption is valid and the condition evaluates to true. If the value is found, despite the assumption that it does not exist, the condition evaluates to false.

          Note that the default value for Exists is true.

        The Value and Exists parameters are incompatible with AttributeValueList and ComparisonOperator. Note that if you use both sets of parameters at once, DynamoDB will return a ValidationException exception.

        This parameter does not support attributes of type List or Map.

        ", "PutItemInput$Expected": "

        This is a legacy parameter, for backward compatibility. New applications should use ConditionExpression instead. Do not combine legacy parameters and expression parameters in a single API call; otherwise, DynamoDB will return a ValidationException exception.

        A map of attribute/condition pairs. Expected provides a conditional block for the PutItem operation.

        This parameter does not support attributes of type List or Map.

        Each element of Expected consists of an attribute name, a comparison operator, and one or more values. DynamoDB compares the attribute with the value(s) you supplied, using the comparison operator. For each Expected element, the result of the evaluation is either true or false.

        If you specify more than one element in the Expected map, then by default all of the conditions must evaluate to true. In other words, the conditions are ANDed together. (You can use the ConditionalOperator parameter to OR the conditions instead. If you do this, then at least one of the conditions must evaluate to true, rather than all of them.)

        If the Expected map evaluates to true, then the conditional operation succeeds; otherwise, it fails.

        Expected contains the following:

        • AttributeValueList - One or more values to evaluate against the supplied attribute. The number of values in the list depends on the ComparisonOperator being used.

          For type Number, value comparisons are numeric.

          String value comparisons for greater than, equals, or less than are based on ASCII character code values. For example, a is greater than A, and a is greater than B. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.

          For type Binary, DynamoDB treats each byte of the binary data as unsigned when it compares binary values.

        • ComparisonOperator - A comparator for evaluating attributes in the AttributeValueList. When performing the comparison, DynamoDB uses strongly consistent reads.

          The following comparison operators are available:

          EQ | NE | LE | LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | BEGINS_WITH | IN | BETWEEN

          The following are descriptions of each comparison operator.

          • EQ : Equal. EQ is supported for all datatypes, including lists and maps.

            AttributeValueList can contain only one AttributeValue element of type String, Number, Binary, String Set, Number Set, or Binary Set. If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not equal {\"NS\":[\"6\", \"2\", \"1\"]}.

          • NE : Not equal. NE is supported for all datatypes, including lists and maps.

            AttributeValueList can contain only one AttributeValue of type String, Number, Binary, String Set, Number Set, or Binary Set. If an item contains an AttributeValue of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not equal {\"NS\":[\"6\", \"2\", \"1\"]}.

          • LE : Less than or equal.

            AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

          • LT : Less than.

            AttributeValueList can contain only one AttributeValue of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

          • GE : Greater than or equal.

            AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

          • GT : Greater than.

            AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

          • NOT_NULL : The attribute exists. NOT_NULL is supported for all datatypes, including lists and maps.

            This operator tests for the existence of an attribute, not its data type. If the data type of attribute \"a\" is null, and you evaluate it using NOT_NULL, the result is a Boolean true. This result is because the attribute \"a\" exists; its data type is not relevant to the NOT_NULL comparison operator.

          • NULL : The attribute does not exist. NULL is supported for all datatypes, including lists and maps.

            This operator tests for the nonexistence of an attribute, not its data type. If the data type of attribute \"a\" is null, and you evaluate it using NULL, the result is a Boolean false. This is because the attribute \"a\" exists; its data type is not relevant to the NULL comparison operator.

          • CONTAINS : Checks for a subsequence, or value in a set.

            AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If the target attribute of the comparison is of type String, then the operator checks for a substring match. If the target attribute of the comparison is of type Binary, then the operator looks for a subsequence of the target that matches the input. If the target attribute of the comparison is a set (\"SS\", \"NS\", or \"BS\"), then the operator evaluates to true if it finds an exact match with any member of the set.

            CONTAINS is supported for lists: When evaluating \"a CONTAINS b\", \"a\" can be a list; however, \"b\" cannot be a set, a map, or a list.

          • NOT_CONTAINS : Checks for absence of a subsequence, or absence of a value in a set.

            AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If the target attribute of the comparison is a String, then the operator checks for the absence of a substring match. If the target attribute of the comparison is Binary, then the operator checks for the absence of a subsequence of the target that matches the input. If the target attribute of the comparison is a set (\"SS\", \"NS\", or \"BS\"), then the operator evaluates to true if it does not find an exact match with any member of the set.

            NOT_CONTAINS is supported for lists: When evaluating \"a NOT CONTAINS b\", \"a\" can be a list; however, \"b\" cannot be a set, a map, or a list.

          • BEGINS_WITH : Checks for a prefix.

            AttributeValueList can contain only one AttributeValue of type String or Binary (not a Number or a set type). The target attribute of the comparison must be of type String or Binary (not a Number or a set type).

          • IN : Checks for matching elements within two sets.

            AttributeValueList can contain one or more AttributeValue elements of type String, Number, or Binary (not a set type). These attributes are compared against an existing set type attribute of an item. If any elements of the input set are present in the item attribute, the expression evaluates to true.

          • BETWEEN : Greater than or equal to the first value, and less than or equal to the second value.

            AttributeValueList must contain two AttributeValue elements of the same type, either String, Number, or Binary (not a set type). A target attribute matches if the target value is greater than, or equal to, the first element and less than, or equal to, the second element. If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not compare to {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}

        For usage examples of AttributeValueList and ComparisonOperator, see Legacy Conditional Parameters in the Amazon DynamoDB Developer Guide.

        For backward compatibility with previous DynamoDB releases, the following parameters can be used instead of AttributeValueList and ComparisonOperator:

        • Value - A value for DynamoDB to compare with an attribute.

        • Exists - A Boolean value that causes DynamoDB to evaluate the value before attempting the conditional operation:

          • If Exists is true, DynamoDB will check to see if that attribute value already exists in the table. If it is found, then the condition evaluates to true; otherwise the condition evaluate to false.

          • If Exists is false, DynamoDB assumes that the attribute value does not exist in the table. If in fact the value does not exist, then the assumption is valid and the condition evaluates to true. If the value is found, despite the assumption that it does not exist, the condition evaluates to false.

          Note that the default value for Exists is true.

        The Value and Exists parameters are incompatible with AttributeValueList and ComparisonOperator. Note that if you use both sets of parameters at once, DynamoDB will return a ValidationException exception.

        ", "UpdateItemInput$Expected": "

        This is a legacy parameter, for backward compatibility. New applications should use ConditionExpression instead. Do not combine legacy parameters and expression parameters in a single API call; otherwise, DynamoDB will return a ValidationException exception.

        A map of attribute/condition pairs. Expected provides a conditional block for the UpdateItem operation.

        Each element of Expected consists of an attribute name, a comparison operator, and one or more values. DynamoDB compares the attribute with the value(s) you supplied, using the comparison operator. For each Expected element, the result of the evaluation is either true or false.

        If you specify more than one element in the Expected map, then by default all of the conditions must evaluate to true. In other words, the conditions are ANDed together. (You can use the ConditionalOperator parameter to OR the conditions instead. If you do this, then at least one of the conditions must evaluate to true, rather than all of them.)

        If the Expected map evaluates to true, then the conditional operation succeeds; otherwise, it fails.

        Expected contains the following:

        • AttributeValueList - One or more values to evaluate against the supplied attribute. The number of values in the list depends on the ComparisonOperator being used.

          For type Number, value comparisons are numeric.

          String value comparisons for greater than, equals, or less than are based on ASCII character code values. For example, a is greater than A, and a is greater than B. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.

          For type Binary, DynamoDB treats each byte of the binary data as unsigned when it compares binary values.

        • ComparisonOperator - A comparator for evaluating attributes in the AttributeValueList. When performing the comparison, DynamoDB uses strongly consistent reads.

          The following comparison operators are available:

          EQ | NE | LE | LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | BEGINS_WITH | IN | BETWEEN

          The following are descriptions of each comparison operator.

          • EQ : Equal. EQ is supported for all datatypes, including lists and maps.

            AttributeValueList can contain only one AttributeValue element of type String, Number, Binary, String Set, Number Set, or Binary Set. If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not equal {\"NS\":[\"6\", \"2\", \"1\"]}.

          • NE : Not equal. NE is supported for all datatypes, including lists and maps.

            AttributeValueList can contain only one AttributeValue of type String, Number, Binary, String Set, Number Set, or Binary Set. If an item contains an AttributeValue of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not equal {\"NS\":[\"6\", \"2\", \"1\"]}.

          • LE : Less than or equal.

            AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

          • LT : Less than.

            AttributeValueList can contain only one AttributeValue of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

          • GE : Greater than or equal.

            AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

          • GT : Greater than.

            AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

          • NOT_NULL : The attribute exists. NOT_NULL is supported for all datatypes, including lists and maps.

            This operator tests for the existence of an attribute, not its data type. If the data type of attribute \"a\" is null, and you evaluate it using NOT_NULL, the result is a Boolean true. This result is because the attribute \"a\" exists; its data type is not relevant to the NOT_NULL comparison operator.

          • NULL : The attribute does not exist. NULL is supported for all datatypes, including lists and maps.

            This operator tests for the nonexistence of an attribute, not its data type. If the data type of attribute \"a\" is null, and you evaluate it using NULL, the result is a Boolean false. This is because the attribute \"a\" exists; its data type is not relevant to the NULL comparison operator.

          • CONTAINS : Checks for a subsequence, or value in a set.

            AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If the target attribute of the comparison is of type String, then the operator checks for a substring match. If the target attribute of the comparison is of type Binary, then the operator looks for a subsequence of the target that matches the input. If the target attribute of the comparison is a set (\"SS\", \"NS\", or \"BS\"), then the operator evaluates to true if it finds an exact match with any member of the set.

            CONTAINS is supported for lists: When evaluating \"a CONTAINS b\", \"a\" can be a list; however, \"b\" cannot be a set, a map, or a list.

          • NOT_CONTAINS : Checks for absence of a subsequence, or absence of a value in a set.

            AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If the target attribute of the comparison is a String, then the operator checks for the absence of a substring match. If the target attribute of the comparison is Binary, then the operator checks for the absence of a subsequence of the target that matches the input. If the target attribute of the comparison is a set (\"SS\", \"NS\", or \"BS\"), then the operator evaluates to true if it does not find an exact match with any member of the set.

            NOT_CONTAINS is supported for lists: When evaluating \"a NOT CONTAINS b\", \"a\" can be a list; however, \"b\" cannot be a set, a map, or a list.

          • BEGINS_WITH : Checks for a prefix.

            AttributeValueList can contain only one AttributeValue of type String or Binary (not a Number or a set type). The target attribute of the comparison must be of type String or Binary (not a Number or a set type).

          • IN : Checks for matching elements within two sets.

            AttributeValueList can contain one or more AttributeValue elements of type String, Number, or Binary (not a set type). These attributes are compared against an existing set type attribute of an item. If any elements of the input set are present in the item attribute, the expression evaluates to true.

          • BETWEEN : Greater than or equal to the first value, and less than or equal to the second value.

            AttributeValueList must contain two AttributeValue elements of the same type, either String, Number, or Binary (not a set type). A target attribute matches if the target value is greater than, or equal to, the first element and less than, or equal to, the second element. If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not compare to {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}

        For usage examples of AttributeValueList and ComparisonOperator, see Legacy Conditional Parameters in the Amazon DynamoDB Developer Guide.

        For backward compatibility with previous DynamoDB releases, the following parameters can be used instead of AttributeValueList and ComparisonOperator:

        • Value - A value for DynamoDB to compare with an attribute.

        • Exists - A Boolean value that causes DynamoDB to evaluate the value before attempting the conditional operation:

          • If Exists is true, DynamoDB will check to see if that attribute value already exists in the table. If it is found, then the condition evaluates to true; otherwise the condition evaluate to false.

          • If Exists is false, DynamoDB assumes that the attribute value does not exist in the table. If in fact the value does not exist, then the assumption is valid and the condition evaluates to true. If the value is found, despite the assumption that it does not exist, the condition evaluates to false.

          Note that the default value for Exists is true.

        The Value and Exists parameters are incompatible with AttributeValueList and ComparisonOperator. Note that if you use both sets of parameters at once, DynamoDB will return a ValidationException exception.

        This parameter does not support attributes of type List or Map.

        " } }, "ExpectedAttributeValue": { "base": "

        Represents a condition to be compared with an attribute value. This condition can be used with DeleteItem, PutItem or UpdateItem operations; if the comparison evaluates to true, the operation succeeds; if not, the operation fails. You can use ExpectedAttributeValue in one of two different ways:

        • Use AttributeValueList to specify one or more values to compare against an attribute. Use ComparisonOperator to specify how you want to perform the comparison. If the comparison evaluates to true, then the conditional operation succeeds.

        • Use Value to specify a value that DynamoDB will compare against an attribute. If the values match, then ExpectedAttributeValue evaluates to true and the conditional operation succeeds. Optionally, you can also set Exists to false, indicating that you do not expect to find the attribute value in the table. In this case, the conditional operation succeeds only if the comparison evaluates to false.

        Value and Exists are incompatible with AttributeValueList and ComparisonOperator. Note that if you use both sets of parameters at once, DynamoDB will return a ValidationException exception.

        ", "refs": { "ExpectedAttributeMap$value": null } }, "ExpressionAttributeNameMap": { "base": null, "refs": { "DeleteItemInput$ExpressionAttributeNames": "

        One or more substitution tokens for attribute names in an expression. The following are some use cases for using ExpressionAttributeNames:

        • To access an attribute whose name conflicts with a DynamoDB reserved word.

        • To create a placeholder for repeating occurrences of an attribute name in an expression.

        • To prevent special characters in an attribute name from being misinterpreted in an expression.

        Use the # character in an expression to dereference an attribute name. For example, consider the following attribute name:

        • Percentile

        The name of this attribute conflicts with a reserved word, so it cannot be used directly in an expression. (For the complete list of reserved words, see Reserved Words in the Amazon DynamoDB Developer Guide). To work around this, you could specify the following for ExpressionAttributeNames:

        • {\"#P\":\"Percentile\"}

        You could then use this substitution in an expression, as in this example:

        • #P = :val

        Tokens that begin with the : character are expression attribute values, which are placeholders for the actual value at runtime.

        For more information on expression attribute names, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

        ", "GetItemInput$ExpressionAttributeNames": "

        One or more substitution tokens for attribute names in an expression. The following are some use cases for using ExpressionAttributeNames:

        • To access an attribute whose name conflicts with a DynamoDB reserved word.

        • To create a placeholder for repeating occurrences of an attribute name in an expression.

        • To prevent special characters in an attribute name from being misinterpreted in an expression.

        Use the # character in an expression to dereference an attribute name. For example, consider the following attribute name:

        • Percentile

        The name of this attribute conflicts with a reserved word, so it cannot be used directly in an expression. (For the complete list of reserved words, see Reserved Words in the Amazon DynamoDB Developer Guide). To work around this, you could specify the following for ExpressionAttributeNames:

        • {\"#P\":\"Percentile\"}

        You could then use this substitution in an expression, as in this example:

        • #P = :val

        Tokens that begin with the : character are expression attribute values, which are placeholders for the actual value at runtime.

        For more information on expression attribute names, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

        ", "KeysAndAttributes$ExpressionAttributeNames": "

        One or more substitution tokens for attribute names in an expression. The following are some use cases for using ExpressionAttributeNames:

        • To access an attribute whose name conflicts with a DynamoDB reserved word.

        • To create a placeholder for repeating occurrences of an attribute name in an expression.

        • To prevent special characters in an attribute name from being misinterpreted in an expression.

        Use the # character in an expression to dereference an attribute name. For example, consider the following attribute name:

        • Percentile

        The name of this attribute conflicts with a reserved word, so it cannot be used directly in an expression. (For the complete list of reserved words, see Reserved Words in the Amazon DynamoDB Developer Guide). To work around this, you could specify the following for ExpressionAttributeNames:

        • {\"#P\":\"Percentile\"}

        You could then use this substitution in an expression, as in this example:

        • #P = :val

        Tokens that begin with the : character are expression attribute values, which are placeholders for the actual value at runtime.

        For more information on expression attribute names, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

        ", "PutItemInput$ExpressionAttributeNames": "

        One or more substitution tokens for attribute names in an expression. The following are some use cases for using ExpressionAttributeNames:

        • To access an attribute whose name conflicts with a DynamoDB reserved word.

        • To create a placeholder for repeating occurrences of an attribute name in an expression.

        • To prevent special characters in an attribute name from being misinterpreted in an expression.

        Use the # character in an expression to dereference an attribute name. For example, consider the following attribute name:

        • Percentile

        The name of this attribute conflicts with a reserved word, so it cannot be used directly in an expression. (For the complete list of reserved words, see Reserved Words in the Amazon DynamoDB Developer Guide). To work around this, you could specify the following for ExpressionAttributeNames:

        • {\"#P\":\"Percentile\"}

        You could then use this substitution in an expression, as in this example:

        • #P = :val

        Tokens that begin with the : character are expression attribute values, which are placeholders for the actual value at runtime.

        For more information on expression attribute names, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

        ", "QueryInput$ExpressionAttributeNames": "

        One or more substitution tokens for attribute names in an expression. The following are some use cases for using ExpressionAttributeNames:

        • To access an attribute whose name conflicts with a DynamoDB reserved word.

        • To create a placeholder for repeating occurrences of an attribute name in an expression.

        • To prevent special characters in an attribute name from being misinterpreted in an expression.

        Use the # character in an expression to dereference an attribute name. For example, consider the following attribute name:

        • Percentile

        The name of this attribute conflicts with a reserved word, so it cannot be used directly in an expression. (For the complete list of reserved words, see Reserved Words in the Amazon DynamoDB Developer Guide). To work around this, you could specify the following for ExpressionAttributeNames:

        • {\"#P\":\"Percentile\"}

        You could then use this substitution in an expression, as in this example:

        • #P = :val

        Tokens that begin with the : character are expression attribute values, which are placeholders for the actual value at runtime.

        For more information on expression attribute names, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

        ", "ScanInput$ExpressionAttributeNames": "

        One or more substitution tokens for attribute names in an expression. The following are some use cases for using ExpressionAttributeNames:

        • To access an attribute whose name conflicts with a DynamoDB reserved word.

        • To create a placeholder for repeating occurrences of an attribute name in an expression.

        • To prevent special characters in an attribute name from being misinterpreted in an expression.

        Use the # character in an expression to dereference an attribute name. For example, consider the following attribute name:

        • Percentile

        The name of this attribute conflicts with a reserved word, so it cannot be used directly in an expression. (For the complete list of reserved words, see Reserved Words in the Amazon DynamoDB Developer Guide). To work around this, you could specify the following for ExpressionAttributeNames:

        • {\"#P\":\"Percentile\"}

        You could then use this substitution in an expression, as in this example:

        • #P = :val

        Tokens that begin with the : character are expression attribute values, which are placeholders for the actual value at runtime.

        For more information on expression attribute names, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

        ", "UpdateItemInput$ExpressionAttributeNames": "

        One or more substitution tokens for attribute names in an expression. The following are some use cases for using ExpressionAttributeNames:

        • To access an attribute whose name conflicts with a DynamoDB reserved word.

        • To create a placeholder for repeating occurrences of an attribute name in an expression.

        • To prevent special characters in an attribute name from being misinterpreted in an expression.

        Use the # character in an expression to dereference an attribute name. For example, consider the following attribute name:

        • Percentile

        The name of this attribute conflicts with a reserved word, so it cannot be used directly in an expression. (For the complete list of reserved words, see Reserved Words in the Amazon DynamoDB Developer Guide). To work around this, you could specify the following for ExpressionAttributeNames:

        • {\"#P\":\"Percentile\"}

        You could then use this substitution in an expression, as in this example:

        • #P = :val

        Tokens that begin with the : character are expression attribute values, which are placeholders for the actual value at runtime.

        For more information on expression attribute names, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

        " } }, "ExpressionAttributeNameVariable": { "base": null, "refs": { "ExpressionAttributeNameMap$key": null } }, "ExpressionAttributeValueMap": { "base": null, "refs": { "DeleteItemInput$ExpressionAttributeValues": "

        One or more values that can be substituted in an expression.

        Use the : (colon) character in an expression to dereference an attribute value. For example, suppose that you wanted to check whether the value of the ProductStatus attribute was one of the following:

        Available | Backordered | Discontinued

        You would first need to specify ExpressionAttributeValues as follows:

        { \":avail\":{\"S\":\"Available\"}, \":back\":{\"S\":\"Backordered\"}, \":disc\":{\"S\":\"Discontinued\"} }

        You could then use these values in an expression, such as this:

        ProductStatus IN (:avail, :back, :disc)

        For more information on expression attribute values, see Specifying Conditions in the Amazon DynamoDB Developer Guide.

        ", "PutItemInput$ExpressionAttributeValues": "

        One or more values that can be substituted in an expression.

        Use the : (colon) character in an expression to dereference an attribute value. For example, suppose that you wanted to check whether the value of the ProductStatus attribute was one of the following:

        Available | Backordered | Discontinued

        You would first need to specify ExpressionAttributeValues as follows:

        { \":avail\":{\"S\":\"Available\"}, \":back\":{\"S\":\"Backordered\"}, \":disc\":{\"S\":\"Discontinued\"} }

        You could then use these values in an expression, such as this:

        ProductStatus IN (:avail, :back, :disc)

        For more information on expression attribute values, see Specifying Conditions in the Amazon DynamoDB Developer Guide.

        ", "QueryInput$ExpressionAttributeValues": "

        One or more values that can be substituted in an expression.

        Use the : (colon) character in an expression to dereference an attribute value. For example, suppose that you wanted to check whether the value of the ProductStatus attribute was one of the following:

        Available | Backordered | Discontinued

        You would first need to specify ExpressionAttributeValues as follows:

        { \":avail\":{\"S\":\"Available\"}, \":back\":{\"S\":\"Backordered\"}, \":disc\":{\"S\":\"Discontinued\"} }

        You could then use these values in an expression, such as this:

        ProductStatus IN (:avail, :back, :disc)

        For more information on expression attribute values, see Specifying Conditions in the Amazon DynamoDB Developer Guide.

        ", "ScanInput$ExpressionAttributeValues": "

        One or more values that can be substituted in an expression.

        Use the : (colon) character in an expression to dereference an attribute value. For example, suppose that you wanted to check whether the value of the ProductStatus attribute was one of the following:

        Available | Backordered | Discontinued

        You would first need to specify ExpressionAttributeValues as follows:

        { \":avail\":{\"S\":\"Available\"}, \":back\":{\"S\":\"Backordered\"}, \":disc\":{\"S\":\"Discontinued\"} }

        You could then use these values in an expression, such as this:

        ProductStatus IN (:avail, :back, :disc)

        For more information on expression attribute values, see Specifying Conditions in the Amazon DynamoDB Developer Guide.

        ", "UpdateItemInput$ExpressionAttributeValues": "

        One or more values that can be substituted in an expression.

        Use the : (colon) character in an expression to dereference an attribute value. For example, suppose that you wanted to check whether the value of the ProductStatus attribute was one of the following:

        Available | Backordered | Discontinued

        You would first need to specify ExpressionAttributeValues as follows:

        { \":avail\":{\"S\":\"Available\"}, \":back\":{\"S\":\"Backordered\"}, \":disc\":{\"S\":\"Discontinued\"} }

        You could then use these values in an expression, such as this:

        ProductStatus IN (:avail, :back, :disc)

        For more information on expression attribute values, see Specifying Conditions in the Amazon DynamoDB Developer Guide.

        " } }, "ExpressionAttributeValueVariable": { "base": null, "refs": { "ExpressionAttributeValueMap$key": null } }, "FilterConditionMap": { "base": null, "refs": { "QueryInput$QueryFilter": "

        This is a legacy parameter, for backward compatibility. New applications should use FilterExpression instead. Do not combine legacy parameters and expression parameters in a single API call; otherwise, DynamoDB will return a ValidationException exception.

        A condition that evaluates the query results after the items are read and returns only the desired values.

        This parameter does not support attributes of type List or Map.

        A QueryFilter is applied after the items have already been read; the process of filtering does not consume any additional read capacity units.

        If you provide more than one condition in the QueryFilter map, then by default all of the conditions must evaluate to true. In other words, the conditions are ANDed together. (You can use the ConditionalOperator parameter to OR the conditions instead. If you do this, then at least one of the conditions must evaluate to true, rather than all of them.)

        Note that QueryFilter does not allow key attributes. You cannot define a filter condition on a partition key or a sort key.

        Each QueryFilter element consists of an attribute name to compare, along with the following:

        • AttributeValueList - One or more values to evaluate against the supplied attribute. The number of values in the list depends on the operator specified in ComparisonOperator.

          For type Number, value comparisons are numeric.

          String value comparisons for greater than, equals, or less than are based on ASCII character code values. For example, a is greater than A, and a is greater than B. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.

          For type Binary, DynamoDB treats each byte of the binary data as unsigned when it compares binary values.

          For information on specifying data types in JSON, see JSON Data Format in the Amazon DynamoDB Developer Guide.

        • ComparisonOperator - A comparator for evaluating attributes. For example, equals, greater than, less than, etc.

          The following comparison operators are available:

          EQ | NE | LE | LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | BEGINS_WITH | IN | BETWEEN

          For complete descriptions of all comparison operators, see the Condition data type.

        ", "ScanInput$ScanFilter": "

        This is a legacy parameter, for backward compatibility. New applications should use FilterExpression instead. Do not combine legacy parameters and expression parameters in a single API call; otherwise, DynamoDB will return a ValidationException exception.

        A condition that evaluates the scan results and returns only the desired values.

        This parameter does not support attributes of type List or Map.

        If you specify more than one condition in the ScanFilter map, then by default all of the conditions must evaluate to true. In other words, the conditions are ANDed together. (You can use the ConditionalOperator parameter to OR the conditions instead. If you do this, then at least one of the conditions must evaluate to true, rather than all of them.)

        Each ScanFilter element consists of an attribute name to compare, along with the following:

        • AttributeValueList - One or more values to evaluate against the supplied attribute. The number of values in the list depends on the operator specified in ComparisonOperator .

          For type Number, value comparisons are numeric.

          String value comparisons for greater than, equals, or less than are based on ASCII character code values. For example, a is greater than A, and a is greater than B. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.

          For Binary, DynamoDB treats each byte of the binary data as unsigned when it compares binary values.

          For information on specifying data types in JSON, see JSON Data Format in the Amazon DynamoDB Developer Guide.

        • ComparisonOperator - A comparator for evaluating attributes. For example, equals, greater than, less than, etc.

          The following comparison operators are available:

          EQ | NE | LE | LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | BEGINS_WITH | IN | BETWEEN

          For complete descriptions of all comparison operators, see Condition.

        " } }, "GetItemInput": { "base": "

        Represents the input of a GetItem operation.

        ", "refs": { } }, "GetItemOutput": { "base": "

        Represents the output of a GetItem operation.

        ", "refs": { } }, "GlobalSecondaryIndex": { "base": "

        Represents the properties of a global secondary index.

        ", "refs": { "GlobalSecondaryIndexList$member": null } }, "GlobalSecondaryIndexDescription": { "base": "

        Represents the properties of a global secondary index.

        ", "refs": { "GlobalSecondaryIndexDescriptionList$member": null } }, "GlobalSecondaryIndexDescriptionList": { "base": null, "refs": { "TableDescription$GlobalSecondaryIndexes": "

        The global secondary indexes, if any, on the table. Each index is scoped to a given partition key value. Each element is composed of:

        • Backfilling - If true, then the index is currently in the backfilling phase. Backfilling occurs only when a new global secondary index is added to the table; it is the process by which DynamoDB populates the new index with data from the table. (This attribute does not appear for indexes that were created during a CreateTable operation.)

        • IndexName - The name of the global secondary index.

        • IndexSizeBytes - The total size of the global secondary index, in bytes. DynamoDB updates this value approximately every six hours. Recent changes might not be reflected in this value.

        • IndexStatus - The current status of the global secondary index:

          • CREATING - The index is being created.

          • UPDATING - The index is being updated.

          • DELETING - The index is being deleted.

          • ACTIVE - The index is ready for use.

        • ItemCount - The number of items in the global secondary index. DynamoDB updates this value approximately every six hours. Recent changes might not be reflected in this value.

        • KeySchema - Specifies the complete index key schema. The attribute names in the key schema must be between 1 and 255 characters (inclusive). The key schema must begin with the same partition key as the table.

        • Projection - Specifies attributes that are copied (projected) from the table into the index. These are in addition to the primary key attributes and index key attributes, which are automatically projected. Each attribute specification is composed of:

          • ProjectionType - One of the following:

            • KEYS_ONLY - Only the index and primary keys are projected into the index.

            • INCLUDE - Only the specified table attributes are projected into the index. The list of projected attributes are in NonKeyAttributes.

            • ALL - All of the table attributes are projected into the index.

          • NonKeyAttributes - A list of one or more non-key attribute names that are projected into the secondary index. The total count of attributes provided in NonKeyAttributes, summed across all of the secondary indexes, must not exceed 20. If you project the same attribute into two different indexes, this counts as two distinct attributes when determining the total.

        • ProvisionedThroughput - The provisioned throughput settings for the global secondary index, consisting of read and write capacity units, along with data about increases and decreases.

        If the table is in the DELETING state, no information about indexes will be returned.

        " } }, "GlobalSecondaryIndexList": { "base": null, "refs": { "CreateTableInput$GlobalSecondaryIndexes": "

        One or more global secondary indexes (the maximum is five) to be created on the table. Each global secondary index in the array includes the following:

        • IndexName - The name of the global secondary index. Must be unique only for this table.

        • KeySchema - Specifies the key schema for the global secondary index.

        • Projection - Specifies attributes that are copied (projected) from the table into the index. These are in addition to the primary key attributes and index key attributes, which are automatically projected. Each attribute specification is composed of:

          • ProjectionType - One of the following:

            • KEYS_ONLY - Only the index and primary keys are projected into the index.

            • INCLUDE - Only the specified table attributes are projected into the index. The list of projected attributes are in NonKeyAttributes.

            • ALL - All of the table attributes are projected into the index.

          • NonKeyAttributes - A list of one or more non-key attribute names that are projected into the secondary index. The total count of attributes provided in NonKeyAttributes, summed across all of the secondary indexes, must not exceed 20. If you project the same attribute into two different indexes, this counts as two distinct attributes when determining the total.

        • ProvisionedThroughput - The provisioned throughput settings for the global secondary index, consisting of read and write capacity units.

        " } }, "GlobalSecondaryIndexUpdate": { "base": "

        Represents one of the following:

        • A new global secondary index to be added to an existing table.

        • New provisioned throughput parameters for an existing global secondary index.

        • An existing global secondary index to be removed from an existing table.

        ", "refs": { "GlobalSecondaryIndexUpdateList$member": null } }, "GlobalSecondaryIndexUpdateList": { "base": null, "refs": { "UpdateTableInput$GlobalSecondaryIndexUpdates": "

        An array of one or more global secondary indexes for the table. For each index in the array, you can request one action:

        • Create - add a new global secondary index to the table.

        • Update - modify the provisioned throughput settings of an existing global secondary index.

        • Delete - remove a global secondary index from the table.

        For more information, see Managing Global Secondary Indexes in the Amazon DynamoDB Developer Guide.

        " } }, "IndexName": { "base": null, "refs": { "CreateGlobalSecondaryIndexAction$IndexName": "

        The name of the global secondary index to be created.

        ", "DeleteGlobalSecondaryIndexAction$IndexName": "

        The name of the global secondary index to be deleted.

        ", "GlobalSecondaryIndex$IndexName": "

        The name of the global secondary index. The name must be unique among all other indexes on this table.

        ", "GlobalSecondaryIndexDescription$IndexName": "

        The name of the global secondary index.

        ", "LocalSecondaryIndex$IndexName": "

        The name of the local secondary index. The name must be unique among all other indexes on this table.

        ", "LocalSecondaryIndexDescription$IndexName": "

        Represents the name of the local secondary index.

        ", "QueryInput$IndexName": "

        The name of an index to query. This index can be any local secondary index or global secondary index on the table. Note that if you use the IndexName parameter, you must also provide TableName.

        ", "ScanInput$IndexName": "

        The name of a secondary index to scan. This index can be any local secondary index or global secondary index. Note that if you use the IndexName parameter, you must also provide TableName.

        ", "SecondaryIndexesCapacityMap$key": null, "UpdateGlobalSecondaryIndexAction$IndexName": "

        The name of the global secondary index to be updated.

        " } }, "IndexStatus": { "base": null, "refs": { "GlobalSecondaryIndexDescription$IndexStatus": "

        The current state of the global secondary index:

        • CREATING - The index is being created.

        • UPDATING - The index is being updated.

        • DELETING - The index is being deleted.

        • ACTIVE - The index is ready for use.

        " } }, "Integer": { "base": null, "refs": { "QueryOutput$Count": "

        The number of items in the response.

        If you used a QueryFilter in the request, then Count is the number of items returned after the filter was applied, and ScannedCount is the number of matching items before the filter was applied.

        If you did not use a filter in the request, then Count and ScannedCount are the same.

        ", "QueryOutput$ScannedCount": "

        The number of items evaluated, before any QueryFilter is applied. A high ScannedCount value with few, or no, Count results indicates an inefficient Query operation. For more information, see Count and ScannedCount in the Amazon DynamoDB Developer Guide.

        If you did not use a filter in the request, then ScannedCount is the same as Count.

        ", "ScanOutput$Count": "

        The number of items in the response.

        If you set ScanFilter in the request, then Count is the number of items returned after the filter was applied, and ScannedCount is the number of matching items before the filter was applied.

        If you did not use a filter in the request, then Count is the same as ScannedCount.

        ", "ScanOutput$ScannedCount": "

        The number of items evaluated, before any ScanFilter is applied. A high ScannedCount value with few, or no, Count results indicates an inefficient Scan operation. For more information, see Count and ScannedCount in the Amazon DynamoDB Developer Guide.

        If you did not use a filter in the request, then ScannedCount is the same as Count.

        " } }, "InternalServerError": { "base": "

        An error occurred on the server side.

        ", "refs": { } }, "ItemCollectionKeyAttributeMap": { "base": null, "refs": { "ItemCollectionMetrics$ItemCollectionKey": "

        The partition key value of the item collection. This value is the same as the partition key value of the item.

        " } }, "ItemCollectionMetrics": { "base": "

        Information about item collections, if any, that were affected by the operation. ItemCollectionMetrics is only returned if the request asked for it. If the table does not have any local secondary indexes, this information is not returned in the response.

        ", "refs": { "DeleteItemOutput$ItemCollectionMetrics": "

        Information about item collections, if any, that were affected by the operation. ItemCollectionMetrics is only returned if the request asked for it. If the table does not have any local secondary indexes, this information is not returned in the response.

        Each ItemCollectionMetrics element consists of:

        • ItemCollectionKey - The partition key value of the item collection. This is the same as the partition key value of the item itself.

        • SizeEstimateRange - An estimate of item collection size, in gigabytes. This value is a two-element array containing a lower bound and an upper bound for the estimate. The estimate includes the size of all the items in the table, plus the size of all attributes projected into all of the local secondary indexes on that table. Use this estimate to measure whether a local secondary index is approaching its size limit.

          The estimate is subject to change over time; therefore, do not rely on the precision or accuracy of the estimate.

        ", "ItemCollectionMetricsMultiple$member": null, "PutItemOutput$ItemCollectionMetrics": "

        Information about item collections, if any, that were affected by the operation. ItemCollectionMetrics is only returned if the request asked for it. If the table does not have any local secondary indexes, this information is not returned in the response.

        Each ItemCollectionMetrics element consists of:

        • ItemCollectionKey - The partition key value of the item collection. This is the same as the partition key value of the item itself.

        • SizeEstimateRange - An estimate of item collection size, in gigabytes. This value is a two-element array containing a lower bound and an upper bound for the estimate. The estimate includes the size of all the items in the table, plus the size of all attributes projected into all of the local secondary indexes on that table. Use this estimate to measure whether a local secondary index is approaching its size limit.

          The estimate is subject to change over time; therefore, do not rely on the precision or accuracy of the estimate.

        ", "UpdateItemOutput$ItemCollectionMetrics": null } }, "ItemCollectionMetricsMultiple": { "base": null, "refs": { "ItemCollectionMetricsPerTable$value": null } }, "ItemCollectionMetricsPerTable": { "base": null, "refs": { "BatchWriteItemOutput$ItemCollectionMetrics": "

        A list of tables that were processed by BatchWriteItem and, for each table, information about any item collections that were affected by individual DeleteItem or PutItem operations.

        Each entry consists of the following subelements:

        • ItemCollectionKey - The partition key value of the item collection. This is the same as the partition key value of the item.

        • SizeEstimateRange - An estimate of item collection size, expressed in GB. This is a two-element array containing a lower bound and an upper bound for the estimate. The estimate includes the size of all the items in the table, plus the size of all attributes projected into all of the local secondary indexes on the table. Use this estimate to measure whether a local secondary index is approaching its size limit.

          The estimate is subject to change over time; therefore, do not rely on the precision or accuracy of the estimate.

        " } }, "ItemCollectionSizeEstimateBound": { "base": null, "refs": { "ItemCollectionSizeEstimateRange$member": null } }, "ItemCollectionSizeEstimateRange": { "base": null, "refs": { "ItemCollectionMetrics$SizeEstimateRangeGB": "

        An estimate of item collection size, in gigabytes. This value is a two-element array containing a lower bound and an upper bound for the estimate. The estimate includes the size of all the items in the table, plus the size of all attributes projected into all of the local secondary indexes on that table. Use this estimate to measure whether a local secondary index is approaching its size limit.

        The estimate is subject to change over time; therefore, do not rely on the precision or accuracy of the estimate.

        " } }, "ItemCollectionSizeLimitExceededException": { "base": "

        An item collection is too large. This exception is only returned for tables that have one or more local secondary indexes.

        ", "refs": { } }, "ItemList": { "base": null, "refs": { "BatchGetResponseMap$value": null, "QueryOutput$Items": "

        An array of item attributes that match the query criteria. Each element in this array consists of an attribute name and the value for that attribute.

        ", "ScanOutput$Items": "

        An array of item attributes that match the scan criteria. Each element in this array consists of an attribute name and the value for that attribute.

        " } }, "Key": { "base": null, "refs": { "DeleteItemInput$Key": "

        A map of attribute names to AttributeValue objects, representing the primary key of the item to delete.

        For the primary key, you must provide all of the attributes. For example, with a simple primary key, you only need to provide a value for the partition key. For a composite primary key, you must provide values for both the partition key and the sort key.

        ", "DeleteRequest$Key": "

        A map of attribute name to attribute values, representing the primary key of the item to delete. All of the table's primary key attributes must be specified, and their data types must match those of the table's key schema.

        ", "GetItemInput$Key": "

        A map of attribute names to AttributeValue objects, representing the primary key of the item to retrieve.

        For the primary key, you must provide all of the attributes. For example, with a simple primary key, you only need to provide a value for the partition key. For a composite primary key, you must provide values for both the partition key and the sort key.

        ", "KeyList$member": null, "QueryInput$ExclusiveStartKey": "

        The primary key of the first item that this operation will evaluate. Use the value that was returned for LastEvaluatedKey in the previous operation.

        The data type for ExclusiveStartKey must be String, Number or Binary. No set data types are allowed.

        ", "QueryOutput$LastEvaluatedKey": "

        The primary key of the item where the operation stopped, inclusive of the previous result set. Use this value to start a new operation, excluding this value in the new request.

        If LastEvaluatedKey is empty, then the \"last page\" of results has been processed and there is no more data to be retrieved.

        If LastEvaluatedKey is not empty, it does not necessarily mean that there is more data in the result set. The only way to know when you have reached the end of the result set is when LastEvaluatedKey is empty.

        ", "ScanInput$ExclusiveStartKey": "

        The primary key of the first item that this operation will evaluate. Use the value that was returned for LastEvaluatedKey in the previous operation.

        The data type for ExclusiveStartKey must be String, Number or Binary. No set data types are allowed.

        In a parallel scan, a Scan request that includes ExclusiveStartKey must specify the same segment whose previous Scan returned the corresponding value of LastEvaluatedKey.

        ", "ScanOutput$LastEvaluatedKey": "

        The primary key of the item where the operation stopped, inclusive of the previous result set. Use this value to start a new operation, excluding this value in the new request.

        If LastEvaluatedKey is empty, then the \"last page\" of results has been processed and there is no more data to be retrieved.

        If LastEvaluatedKey is not empty, it does not necessarily mean that there is more data in the result set. The only way to know when you have reached the end of the result set is when LastEvaluatedKey is empty.

        ", "UpdateItemInput$Key": "

        The primary key of the item to be updated. Each element consists of an attribute name and a value for that attribute.

        For the primary key, you must provide all of the attributes. For example, with a simple primary key, you only need to provide a value for the partition key. For a composite primary key, you must provide values for both the partition key and the sort key.

        " } }, "KeyConditions": { "base": null, "refs": { "QueryInput$KeyConditions": "

        This is a legacy parameter, for backward compatibility. New applications should use KeyConditionExpression instead. Do not combine legacy parameters and expression parameters in a single API call; otherwise, DynamoDB will return a ValidationException exception.

        The selection criteria for the query. For a query on a table, you can have conditions only on the table primary key attributes. You must provide the partition key name and value as an EQ condition. You can optionally provide a second condition, referring to the sort key.

        If you don't provide a sort key condition, all of the items that match the partition key will be retrieved. If a FilterExpression or QueryFilter is present, it will be applied after the items are retrieved.

        For a query on an index, you can have conditions only on the index key attributes. You must provide the index partition key name and value as an EQ condition. You can optionally provide a second condition, referring to the index sort key.

        Each KeyConditions element consists of an attribute name to compare, along with the following:

        • AttributeValueList - One or more values to evaluate against the supplied attribute. The number of values in the list depends on the ComparisonOperator being used.

          For type Number, value comparisons are numeric.

          String value comparisons for greater than, equals, or less than are based on ASCII character code values. For example, a is greater than A, and a is greater than B. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.

          For Binary, DynamoDB treats each byte of the binary data as unsigned when it compares binary values.

        • ComparisonOperator - A comparator for evaluating attributes, for example, equals, greater than, less than, and so on.

          For KeyConditions, only the following comparison operators are supported:

          EQ | LE | LT | GE | GT | BEGINS_WITH | BETWEEN

          The following are descriptions of these comparison operators.

          • EQ : Equal.

            AttributeValueList can contain only one AttributeValue of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one specified in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not equal {\"NS\":[\"6\", \"2\", \"1\"]}.

          • LE : Less than or equal.

            AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

          • LT : Less than.

            AttributeValueList can contain only one AttributeValue of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

          • GE : Greater than or equal.

            AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

          • GT : Greater than.

            AttributeValueList can contain only one AttributeValue element of type String, Number, or Binary (not a set type). If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not equal {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}.

          • BEGINS_WITH : Checks for a prefix.

            AttributeValueList can contain only one AttributeValue of type String or Binary (not a Number or a set type). The target attribute of the comparison must be of type String or Binary (not a Number or a set type).

          • BETWEEN : Greater than or equal to the first value, and less than or equal to the second value.

            AttributeValueList must contain two AttributeValue elements of the same type, either String, Number, or Binary (not a set type). A target attribute matches if the target value is greater than, or equal to, the first element and less than, or equal to, the second element. If an item contains an AttributeValue element of a different type than the one provided in the request, the value does not match. For example, {\"S\":\"6\"} does not compare to {\"N\":\"6\"}. Also, {\"N\":\"6\"} does not compare to {\"NS\":[\"6\", \"2\", \"1\"]}

        For usage examples of AttributeValueList and ComparisonOperator, see Legacy Conditional Parameters in the Amazon DynamoDB Developer Guide.

        " } }, "KeyExpression": { "base": null, "refs": { "QueryInput$KeyConditionExpression": "

        The condition that specifies the key value(s) for items to be retrieved by the Query action.

        The condition must perform an equality test on a single partition key value. The condition can also perform one of several comparison tests on a single sort key value. Query can use KeyConditionExpression to retrieve one item with a given partition key value and sort key value, or several items that have the same partition key value but different sort key values.

        The partition key equality test is required, and must be specified in the following format:

        partitionKeyName = :partitionkeyval

        If you also want to provide a condition for the sort key, it must be combined using AND with the condition for the sort key. Following is an example, using the = comparison operator for the sort key:

        partitionKeyName = :partitionkeyval AND sortKeyName = :sortkeyval

        Valid comparisons for the sort key condition are as follows:

        • sortKeyName = :sortkeyval - true if the sort key value is equal to :sortkeyval.

        • sortKeyName < :sortkeyval - true if the sort key value is less than :sortkeyval.

        • sortKeyName <= :sortkeyval - true if the sort key value is less than or equal to :sortkeyval.

        • sortKeyName > :sortkeyval - true if the sort key value is greater than :sortkeyval.

        • sortKeyName >= :sortkeyval - true if the sort key value is greater than or equal to :sortkeyval.

        • sortKeyName BETWEEN :sortkeyval1 AND :sortkeyval2 - true if the sort key value is greater than or equal to :sortkeyval1, and less than or equal to :sortkeyval2.

        • begins_with ( sortKeyName, :sortkeyval ) - true if the sort key value begins with a particular operand. (You cannot use this function with a sort key that is of type Number.) Note that the function name begins_with is case-sensitive.

        Use the ExpressionAttributeValues parameter to replace tokens such as :partitionval and :sortval with actual values at runtime.

        You can optionally use the ExpressionAttributeNames parameter to replace the names of the partition key and sort key with placeholder tokens. This option might be necessary if an attribute name conflicts with a DynamoDB reserved word. For example, the following KeyConditionExpression parameter causes an error because Size is a reserved word:

        • Size = :myval

        To work around this, define a placeholder (such a #S) to represent the attribute name Size. KeyConditionExpression then is as follows:

        • #S = :myval

        For a list of reserved words, see Reserved Words in the Amazon DynamoDB Developer Guide.

        For more information on ExpressionAttributeNames and ExpressionAttributeValues, see Using Placeholders for Attribute Names and Values in the Amazon DynamoDB Developer Guide.

        KeyConditionExpression replaces the legacy KeyConditions parameter.

        " } }, "KeyList": { "base": null, "refs": { "KeysAndAttributes$Keys": "

        The primary key attribute values that define the items and the attributes associated with the items.

        " } }, "KeySchema": { "base": null, "refs": { "CreateGlobalSecondaryIndexAction$KeySchema": "

        The key schema for the global secondary index.

        ", "CreateTableInput$KeySchema": "

        Specifies the attributes that make up the primary key for a table or an index. The attributes in KeySchema must also be defined in the AttributeDefinitions array. For more information, see Data Model in the Amazon DynamoDB Developer Guide.

        Each KeySchemaElement in the array is composed of:

        • AttributeName - The name of this key attribute.

        • KeyType - The role that the key attribute will assume:

          • HASH - partition key

          • RANGE - sort key

        The partition key of an item is also known as its hash attribute. The term \"hash attribute\" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

        The sort key of an item is also known as its range attribute. The term \"range attribute\" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

        For a simple primary key (partition key), you must provide exactly one element with a KeyType of HASH.

        For a composite primary key (partition key and sort key), you must provide exactly two elements, in this order: The first element must have a KeyType of HASH, and the second element must have a KeyType of RANGE.

        For more information, see Specifying the Primary Key in the Amazon DynamoDB Developer Guide.

        ", "GlobalSecondaryIndex$KeySchema": "

        The complete key schema for a global secondary index, which consists of one or more pairs of attribute names and key types:

        • HASH - partition key

        • RANGE - sort key

        The partition key of an item is also known as its hash attribute. The term \"hash attribute\" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

        The sort key of an item is also known as its range attribute. The term \"range attribute\" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

        ", "GlobalSecondaryIndexDescription$KeySchema": "

        The complete key schema for a global secondary index, which consists of one or more pairs of attribute names and key types:

        • HASH - partition key

        • RANGE - sort key

        The partition key of an item is also known as its hash attribute. The term \"hash attribute\" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

        The sort key of an item is also known as its range attribute. The term \"range attribute\" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

        ", "LocalSecondaryIndex$KeySchema": "

        The complete key schema for the local secondary index, consisting of one or more pairs of attribute names and key types:

        • HASH - partition key

        • RANGE - sort key

        The partition key of an item is also known as its hash attribute. The term \"hash attribute\" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

        The sort key of an item is also known as its range attribute. The term \"range attribute\" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

        ", "LocalSecondaryIndexDescription$KeySchema": "

        The complete key schema for the local secondary index, consisting of one or more pairs of attribute names and key types:

        • HASH - partition key

        • RANGE - sort key

        The partition key of an item is also known as its hash attribute. The term \"hash attribute\" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

        The sort key of an item is also known as its range attribute. The term \"range attribute\" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

        ", "TableDescription$KeySchema": "

        The primary key structure for the table. Each KeySchemaElement consists of:

        • AttributeName - The name of the attribute.

        • KeyType - The role of the attribute:

          • HASH - partition key

          • RANGE - sort key

          The partition key of an item is also known as its hash attribute. The term \"hash attribute\" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

          The sort key of an item is also known as its range attribute. The term \"range attribute\" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

        For more information about primary keys, see Primary Key in the Amazon DynamoDB Developer Guide.

        " } }, "KeySchemaAttributeName": { "base": null, "refs": { "AttributeDefinition$AttributeName": "

        A name for the attribute.

        ", "KeySchemaElement$AttributeName": "

        The name of a key attribute.

        " } }, "KeySchemaElement": { "base": "

        Represents a single element of a key schema. A key schema specifies the attributes that make up the primary key of a table, or the key attributes of an index.

        A KeySchemaElement represents exactly one attribute of the primary key. For example, a simple primary key would be represented by one KeySchemaElement (for the partition key). A composite primary key would require one KeySchemaElement for the partition key, and another KeySchemaElement for the sort key.

        A KeySchemaElement must be a scalar, top-level attribute (not a nested attribute). The data type must be one of String, Number, or Binary. The attribute cannot be nested within a List or a Map.

        ", "refs": { "KeySchema$member": null } }, "KeyType": { "base": null, "refs": { "KeySchemaElement$KeyType": "

        The role that this key attribute will assume:

        • HASH - partition key

        • RANGE - sort key

        The partition key of an item is also known as its hash attribute. The term \"hash attribute\" derives from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

        The sort key of an item is also known as its range attribute. The term \"range attribute\" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

        " } }, "KeysAndAttributes": { "base": "

        Represents a set of primary keys and, for each key, the attributes to retrieve from the table.

        For each primary key, you must provide all of the key attributes. For example, with a simple primary key, you only need to provide the partition key. For a composite primary key, you must provide both the partition key and the sort key.

        ", "refs": { "BatchGetRequestMap$value": null } }, "LimitExceededException": { "base": "

        The number of concurrent table requests (cumulative number of tables in the CREATING, DELETING or UPDATING state) exceeds the maximum allowed of 10.

        Also, for tables with secondary indexes, only one of those tables can be in the CREATING state at any point in time. Do not attempt to create more than one such table simultaneously.

        The total limit of tables in the ACTIVE state is 250.

        ", "refs": { } }, "ListAttributeValue": { "base": null, "refs": { "AttributeValue$L": "

        A List of attribute values.

        " } }, "ListTablesInput": { "base": "

        Represents the input of a ListTables operation.

        ", "refs": { } }, "ListTablesInputLimit": { "base": null, "refs": { "ListTablesInput$Limit": "

        A maximum number of table names to return. If this parameter is not specified, the limit is 100.

        " } }, "ListTablesOutput": { "base": "

        Represents the output of a ListTables operation.

        ", "refs": { } }, "LocalSecondaryIndex": { "base": "

        Represents the properties of a local secondary index.

        ", "refs": { "LocalSecondaryIndexList$member": null } }, "LocalSecondaryIndexDescription": { "base": "

        Represents the properties of a local secondary index.

        ", "refs": { "LocalSecondaryIndexDescriptionList$member": null } }, "LocalSecondaryIndexDescriptionList": { "base": null, "refs": { "TableDescription$LocalSecondaryIndexes": "

        Represents one or more local secondary indexes on the table. Each index is scoped to a given partition key value. Tables with one or more local secondary indexes are subject to an item collection size limit, where the amount of data within a given item collection cannot exceed 10 GB. Each element is composed of:

        • IndexName - The name of the local secondary index.

        • KeySchema - Specifies the complete index key schema. The attribute names in the key schema must be between 1 and 255 characters (inclusive). The key schema must begin with the same partition key as the table.

        • Projection - Specifies attributes that are copied (projected) from the table into the index. These are in addition to the primary key attributes and index key attributes, which are automatically projected. Each attribute specification is composed of:

          • ProjectionType - One of the following:

            • KEYS_ONLY - Only the index and primary keys are projected into the index.

            • INCLUDE - Only the specified table attributes are projected into the index. The list of projected attributes are in NonKeyAttributes.

            • ALL - All of the table attributes are projected into the index.

          • NonKeyAttributes - A list of one or more non-key attribute names that are projected into the secondary index. The total count of attributes provided in NonKeyAttributes, summed across all of the secondary indexes, must not exceed 20. If you project the same attribute into two different indexes, this counts as two distinct attributes when determining the total.

        • IndexSizeBytes - Represents the total size of the index, in bytes. DynamoDB updates this value approximately every six hours. Recent changes might not be reflected in this value.

        • ItemCount - Represents the number of items in the index. DynamoDB updates this value approximately every six hours. Recent changes might not be reflected in this value.

        If the table is in the DELETING state, no information about indexes will be returned.

        " } }, "LocalSecondaryIndexList": { "base": null, "refs": { "CreateTableInput$LocalSecondaryIndexes": "

        One or more local secondary indexes (the maximum is five) to be created on the table. Each index is scoped to a given partition key value. There is a 10 GB size limit per partition key value; otherwise, the size of a local secondary index is unconstrained.

        Each local secondary index in the array includes the following:

        • IndexName - The name of the local secondary index. Must be unique only for this table.

        • KeySchema - Specifies the key schema for the local secondary index. The key schema must begin with the same partition key as the table.

        • Projection - Specifies attributes that are copied (projected) from the table into the index. These are in addition to the primary key attributes and index key attributes, which are automatically projected. Each attribute specification is composed of:

          • ProjectionType - One of the following:

            • KEYS_ONLY - Only the index and primary keys are projected into the index.

            • INCLUDE - Only the specified table attributes are projected into the index. The list of projected attributes are in NonKeyAttributes.

            • ALL - All of the table attributes are projected into the index.

          • NonKeyAttributes - A list of one or more non-key attribute names that are projected into the secondary index. The total count of attributes provided in NonKeyAttributes, summed across all of the secondary indexes, must not exceed 20. If you project the same attribute into two different indexes, this counts as two distinct attributes when determining the total.

        " } }, "Long": { "base": null, "refs": { "GlobalSecondaryIndexDescription$IndexSizeBytes": "

        The total size of the specified index, in bytes. DynamoDB updates this value approximately every six hours. Recent changes might not be reflected in this value.

        ", "GlobalSecondaryIndexDescription$ItemCount": "

        The number of items in the specified index. DynamoDB updates this value approximately every six hours. Recent changes might not be reflected in this value.

        ", "LocalSecondaryIndexDescription$IndexSizeBytes": "

        The total size of the specified index, in bytes. DynamoDB updates this value approximately every six hours. Recent changes might not be reflected in this value.

        ", "LocalSecondaryIndexDescription$ItemCount": "

        The number of items in the specified index. DynamoDB updates this value approximately every six hours. Recent changes might not be reflected in this value.

        ", "TableDescription$TableSizeBytes": "

        The total size of the specified table, in bytes. DynamoDB updates this value approximately every six hours. Recent changes might not be reflected in this value.

        ", "TableDescription$ItemCount": "

        The number of items in the specified table. DynamoDB updates this value approximately every six hours. Recent changes might not be reflected in this value.

        " } }, "MapAttributeValue": { "base": null, "refs": { "AttributeValue$M": "

        A Map of attribute values.

        " } }, "NonKeyAttributeName": { "base": null, "refs": { "NonKeyAttributeNameList$member": null } }, "NonKeyAttributeNameList": { "base": null, "refs": { "Projection$NonKeyAttributes": "

        Represents the non-key attribute names which will be projected into the index.

        For local secondary indexes, the total count of NonKeyAttributes summed across all of the local secondary indexes, must not exceed 20. If you project the same attribute into two different indexes, this counts as two distinct attributes when determining the total.

        " } }, "NullAttributeValue": { "base": null, "refs": { "AttributeValue$NULL": "

        A Null data type.

        " } }, "NumberAttributeValue": { "base": null, "refs": { "AttributeValue$N": "

        A Number data type.

        ", "NumberSetAttributeValue$member": null } }, "NumberSetAttributeValue": { "base": null, "refs": { "AttributeValue$NS": "

        A Number Set data type.

        " } }, "PositiveIntegerObject": { "base": null, "refs": { "QueryInput$Limit": "

        The maximum number of items to evaluate (not necessarily the number of matching items). If DynamoDB processes the number of items up to the limit while processing the results, it stops the operation and returns the matching values up to that point, and a key in LastEvaluatedKey to apply in a subsequent operation, so that you can pick up where you left off. Also, if the processed data set size exceeds 1 MB before DynamoDB reaches this limit, it stops the operation and returns the matching values up to the limit, and a key in LastEvaluatedKey to apply in a subsequent operation to continue the operation. For more information, see Query and Scan in the Amazon DynamoDB Developer Guide.

        ", "ScanInput$Limit": "

        The maximum number of items to evaluate (not necessarily the number of matching items). If DynamoDB processes the number of items up to the limit while processing the results, it stops the operation and returns the matching values up to that point, and a key in LastEvaluatedKey to apply in a subsequent operation, so that you can pick up where you left off. Also, if the processed data set size exceeds 1 MB before DynamoDB reaches this limit, it stops the operation and returns the matching values up to the limit, and a key in LastEvaluatedKey to apply in a subsequent operation to continue the operation. For more information, see Query and Scan in the Amazon DynamoDB Developer Guide.

        " } }, "PositiveLongObject": { "base": null, "refs": { "DescribeLimitsOutput$AccountMaxReadCapacityUnits": "

        The maximum total read capacity units that your account allows you to provision across all of your tables in this region.

        ", "DescribeLimitsOutput$AccountMaxWriteCapacityUnits": "

        The maximum total write capacity units that your account allows you to provision across all of your tables in this region.

        ", "DescribeLimitsOutput$TableMaxReadCapacityUnits": "

        The maximum read capacity units that your account allows you to provision for a new table that you are creating in this region, including the read capacity units provisioned for its global secondary indexes (GSIs).

        ", "DescribeLimitsOutput$TableMaxWriteCapacityUnits": "

        The maximum write capacity units that your account allows you to provision for a new table that you are creating in this region, including the write capacity units provisioned for its global secondary indexes (GSIs).

        ", "ProvisionedThroughput$ReadCapacityUnits": "

        The maximum number of strongly consistent reads consumed per second before DynamoDB returns a ThrottlingException. For more information, see Specifying Read and Write Requirements in the Amazon DynamoDB Developer Guide.

        ", "ProvisionedThroughput$WriteCapacityUnits": "

        The maximum number of writes consumed per second before DynamoDB returns a ThrottlingException. For more information, see Specifying Read and Write Requirements in the Amazon DynamoDB Developer Guide.

        ", "ProvisionedThroughputDescription$NumberOfDecreasesToday": "

        The number of provisioned throughput decreases for this table during this UTC calendar day. For current maximums on provisioned throughput decreases, see Limits in the Amazon DynamoDB Developer Guide.

        ", "ProvisionedThroughputDescription$ReadCapacityUnits": "

        The maximum number of strongly consistent reads consumed per second before DynamoDB returns a ThrottlingException. Eventually consistent reads require less effort than strongly consistent reads, so a setting of 50 ReadCapacityUnits per second provides 100 eventually consistent ReadCapacityUnits per second.

        ", "ProvisionedThroughputDescription$WriteCapacityUnits": "

        The maximum number of writes consumed per second before DynamoDB returns a ThrottlingException.

        " } }, "Projection": { "base": "

        Represents attributes that are copied (projected) from the table into an index. These are in addition to the primary key attributes and index key attributes, which are automatically projected.

        ", "refs": { "CreateGlobalSecondaryIndexAction$Projection": null, "GlobalSecondaryIndex$Projection": null, "GlobalSecondaryIndexDescription$Projection": null, "LocalSecondaryIndex$Projection": null, "LocalSecondaryIndexDescription$Projection": null } }, "ProjectionExpression": { "base": null, "refs": { "GetItemInput$ProjectionExpression": "

        A string that identifies one or more attributes to retrieve from the table. These attributes can include scalars, sets, or elements of a JSON document. The attributes in the expression must be separated by commas.

        If no attribute names are specified, then all attributes will be returned. If any of the requested attributes are not found, they will not appear in the result.

        For more information, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

        ProjectionExpression replaces the legacy AttributesToGet parameter.

        ", "KeysAndAttributes$ProjectionExpression": "

        A string that identifies one or more attributes to retrieve from the table. These attributes can include scalars, sets, or elements of a JSON document. The attributes in the ProjectionExpression must be separated by commas.

        If no attribute names are specified, then all attributes will be returned. If any of the requested attributes are not found, they will not appear in the result.

        For more information, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

        ProjectionExpression replaces the legacy AttributesToGet parameter.

        ", "QueryInput$ProjectionExpression": "

        A string that identifies one or more attributes to retrieve from the table. These attributes can include scalars, sets, or elements of a JSON document. The attributes in the expression must be separated by commas.

        If no attribute names are specified, then all attributes will be returned. If any of the requested attributes are not found, they will not appear in the result.

        For more information, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

        ProjectionExpression replaces the legacy AttributesToGet parameter.

        ", "ScanInput$ProjectionExpression": "

        A string that identifies one or more attributes to retrieve from the specified table or index. These attributes can include scalars, sets, or elements of a JSON document. The attributes in the expression must be separated by commas.

        If no attribute names are specified, then all attributes will be returned. If any of the requested attributes are not found, they will not appear in the result.

        For more information, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

        ProjectionExpression replaces the legacy AttributesToGet parameter.

        " } }, "ProjectionType": { "base": null, "refs": { "Projection$ProjectionType": "

        The set of attributes that are projected into the index:

        • KEYS_ONLY - Only the index and primary keys are projected into the index.

        • INCLUDE - Only the specified table attributes are projected into the index. The list of projected attributes are in NonKeyAttributes.

        • ALL - All of the table attributes are projected into the index.

        " } }, "ProvisionedThroughput": { "base": "

        Represents the provisioned throughput settings for a specified table or index. The settings can be modified using the UpdateTable operation.

        For current minimum and maximum provisioned throughput values, see Limits in the Amazon DynamoDB Developer Guide.

        ", "refs": { "CreateGlobalSecondaryIndexAction$ProvisionedThroughput": null, "CreateTableInput$ProvisionedThroughput": null, "GlobalSecondaryIndex$ProvisionedThroughput": null, "UpdateGlobalSecondaryIndexAction$ProvisionedThroughput": null, "UpdateTableInput$ProvisionedThroughput": null } }, "ProvisionedThroughputDescription": { "base": "

        Represents the provisioned throughput settings for the table, consisting of read and write capacity units, along with data about increases and decreases.

        ", "refs": { "GlobalSecondaryIndexDescription$ProvisionedThroughput": null, "TableDescription$ProvisionedThroughput": "

        The provisioned throughput settings for the table, consisting of read and write capacity units, along with data about increases and decreases.

        " } }, "ProvisionedThroughputExceededException": { "base": "

        Your request rate is too high. The AWS SDKs for DynamoDB automatically retry requests that receive this exception. Your request is eventually successful, unless your retry queue is too large to finish. Reduce the frequency of requests and use exponential backoff. For more information, go to Error Retries and Exponential Backoff in the Amazon DynamoDB Developer Guide.

        ", "refs": { } }, "PutItemInput": { "base": "

        Represents the input of a PutItem operation.

        ", "refs": { } }, "PutItemInputAttributeMap": { "base": null, "refs": { "PutItemInput$Item": "

        A map of attribute name/value pairs, one for each attribute. Only the primary key attributes are required; you can optionally provide other attribute name-value pairs for the item.

        You must provide all of the attributes for the primary key. For example, with a simple primary key, you only need to provide a value for the partition key. For a composite primary key, you must provide both values for both the partition key and the sort key.

        If you specify any attributes that are part of an index key, then the data types for those attributes must match those of the schema in the table's attribute definition.

        For more information about primary keys, see Primary Key in the Amazon DynamoDB Developer Guide.

        Each element in the Item map is an AttributeValue object.

        ", "PutRequest$Item": "

        A map of attribute name to attribute values, representing the primary key of an item to be processed by PutItem. All of the table's primary key attributes must be specified, and their data types must match those of the table's key schema. If any attributes are present in the item which are part of an index key schema for the table, their types must match the index key schema.

        " } }, "PutItemOutput": { "base": "

        Represents the output of a PutItem operation.

        ", "refs": { } }, "PutRequest": { "base": "

        Represents a request to perform a PutItem operation on an item.

        ", "refs": { "WriteRequest$PutRequest": "

        A request to perform a PutItem operation.

        " } }, "QueryInput": { "base": "

        Represents the input of a Query operation.

        ", "refs": { } }, "QueryOutput": { "base": "

        Represents the output of a Query operation.

        ", "refs": { } }, "ResourceInUseException": { "base": "

        The operation conflicts with the resource's availability. For example, you attempted to recreate an existing table, or tried to delete a table currently in the CREATING state.

        ", "refs": { } }, "ResourceNotFoundException": { "base": "

        The operation tried to access a nonexistent table or index. The resource might not be specified correctly, or its status might not be ACTIVE.

        ", "refs": { } }, "ReturnConsumedCapacity": { "base": "

        Determines the level of detail about provisioned throughput consumption that is returned in the response:

        • INDEXES - The response includes the aggregate ConsumedCapacity for the operation, together with ConsumedCapacity for each table and secondary index that was accessed.

          Note that some operations, such as GetItem and BatchGetItem, do not access any indexes at all. In these cases, specifying INDEXES will only return ConsumedCapacity information for table(s).

        • TOTAL - The response includes only the aggregate ConsumedCapacity for the operation.

        • NONE - No ConsumedCapacity details are included in the response.

        ", "refs": { "BatchGetItemInput$ReturnConsumedCapacity": null, "BatchWriteItemInput$ReturnConsumedCapacity": null, "DeleteItemInput$ReturnConsumedCapacity": null, "GetItemInput$ReturnConsumedCapacity": null, "PutItemInput$ReturnConsumedCapacity": null, "QueryInput$ReturnConsumedCapacity": null, "ScanInput$ReturnConsumedCapacity": null, "UpdateItemInput$ReturnConsumedCapacity": null } }, "ReturnItemCollectionMetrics": { "base": null, "refs": { "BatchWriteItemInput$ReturnItemCollectionMetrics": "

        Determines whether item collection metrics are returned. If set to SIZE, the response includes statistics about item collections, if any, that were modified during the operation are returned in the response. If set to NONE (the default), no statistics are returned.

        ", "DeleteItemInput$ReturnItemCollectionMetrics": "

        Determines whether item collection metrics are returned. If set to SIZE, the response includes statistics about item collections, if any, that were modified during the operation are returned in the response. If set to NONE (the default), no statistics are returned.

        ", "PutItemInput$ReturnItemCollectionMetrics": "

        Determines whether item collection metrics are returned. If set to SIZE, the response includes statistics about item collections, if any, that were modified during the operation are returned in the response. If set to NONE (the default), no statistics are returned.

        ", "UpdateItemInput$ReturnItemCollectionMetrics": "

        Determines whether item collection metrics are returned. If set to SIZE, the response includes statistics about item collections, if any, that were modified during the operation are returned in the response. If set to NONE (the default), no statistics are returned.

        " } }, "ReturnValue": { "base": null, "refs": { "DeleteItemInput$ReturnValues": "

        Use ReturnValues if you want to get the item attributes as they appeared before they were deleted. For DeleteItem, the valid values are:

        • NONE - If ReturnValues is not specified, or if its value is NONE, then nothing is returned. (This setting is the default for ReturnValues.)

        • ALL_OLD - The content of the old item is returned.

        The ReturnValues parameter is used by several DynamoDB operations; however, DeleteItem does not recognize any values other than NONE or ALL_OLD.

        ", "PutItemInput$ReturnValues": "

        Use ReturnValues if you want to get the item attributes as they appeared before they were updated with the PutItem request. For PutItem, the valid values are:

        • NONE - If ReturnValues is not specified, or if its value is NONE, then nothing is returned. (This setting is the default for ReturnValues.)

        • ALL_OLD - If PutItem overwrote an attribute name-value pair, then the content of the old item is returned.

        The ReturnValues parameter is used by several DynamoDB operations; however, PutItem does not recognize any values other than NONE or ALL_OLD.

        ", "UpdateItemInput$ReturnValues": "

        Use ReturnValues if you want to get the item attributes as they appeared either before or after they were updated. For UpdateItem, the valid values are:

        • NONE - If ReturnValues is not specified, or if its value is NONE, then nothing is returned. (This setting is the default for ReturnValues.)

        • ALL_OLD - If UpdateItem overwrote an attribute name-value pair, then the content of the old item is returned.

        • UPDATED_OLD - The old versions of only the updated attributes are returned.

        • ALL_NEW - All of the attributes of the new version of the item are returned.

        • UPDATED_NEW - The new versions of only the updated attributes are returned.

        There is no additional cost associated with requesting a return value aside from the small network and processing overhead of receiving a larger response. No Read Capacity Units are consumed.

        Values returned are strongly consistent

        " } }, "ScalarAttributeType": { "base": null, "refs": { "AttributeDefinition$AttributeType": "

        The data type for the attribute, where:

        • S - the attribute is of type String

        • N - the attribute is of type Number

        • B - the attribute is of type Binary

        " } }, "ScanInput": { "base": "

        Represents the input of a Scan operation.

        ", "refs": { } }, "ScanOutput": { "base": "

        Represents the output of a Scan operation.

        ", "refs": { } }, "ScanSegment": { "base": null, "refs": { "ScanInput$Segment": "

        For a parallel Scan request, Segment identifies an individual segment to be scanned by an application worker.

        Segment IDs are zero-based, so the first segment is always 0. For example, if you want to use four application threads to scan a table or an index, then the first thread specifies a Segment value of 0, the second thread specifies 1, and so on.

        The value of LastEvaluatedKey returned from a parallel Scan request must be used as ExclusiveStartKey with the same segment ID in a subsequent Scan operation.

        The value for Segment must be greater than or equal to 0, and less than the value provided for TotalSegments.

        If you provide Segment, you must also provide TotalSegments.

        " } }, "ScanTotalSegments": { "base": null, "refs": { "ScanInput$TotalSegments": "

        For a parallel Scan request, TotalSegments represents the total number of segments into which the Scan operation will be divided. The value of TotalSegments corresponds to the number of application workers that will perform the parallel scan. For example, if you want to use four application threads to scan a table or an index, specify a TotalSegments value of 4.

        The value for TotalSegments must be greater than or equal to 1, and less than or equal to 1000000. If you specify a TotalSegments value of 1, the Scan operation will be sequential rather than parallel.

        If you specify TotalSegments, you must also specify Segment.

        " } }, "SecondaryIndexesCapacityMap": { "base": null, "refs": { "ConsumedCapacity$LocalSecondaryIndexes": "

        The amount of throughput consumed on each local index affected by the operation.

        ", "ConsumedCapacity$GlobalSecondaryIndexes": "

        The amount of throughput consumed on each global index affected by the operation.

        " } }, "Select": { "base": null, "refs": { "QueryInput$Select": "

        The attributes to be returned in the result. You can retrieve all item attributes, specific item attributes, the count of matching items, or in the case of an index, some or all of the attributes projected into the index.

        • ALL_ATTRIBUTES - Returns all of the item attributes from the specified table or index. If you query a local secondary index, then for each matching item in the index DynamoDB will fetch the entire item from the parent table. If the index is configured to project all item attributes, then all of the data can be obtained from the local secondary index, and no fetching is required.

        • ALL_PROJECTED_ATTRIBUTES - Allowed only when querying an index. Retrieves all attributes that have been projected into the index. If the index is configured to project all attributes, this return value is equivalent to specifying ALL_ATTRIBUTES.

        • COUNT - Returns the number of matching items, rather than the matching items themselves.

        • SPECIFIC_ATTRIBUTES - Returns only the attributes listed in AttributesToGet. This return value is equivalent to specifying AttributesToGet without specifying any value for Select.

          If you query a local secondary index and request only attributes that are projected into that index, the operation will read only the index and not the table. If any of the requested attributes are not projected into the local secondary index, DynamoDB will fetch each of these attributes from the parent table. This extra fetching incurs additional throughput cost and latency.

          If you query a global secondary index, you can only request attributes that are projected into the index. Global secondary index queries cannot fetch attributes from the parent table.

        If neither Select nor AttributesToGet are specified, DynamoDB defaults to ALL_ATTRIBUTES when accessing a table, and ALL_PROJECTED_ATTRIBUTES when accessing an index. You cannot use both Select and AttributesToGet together in a single request, unless the value for Select is SPECIFIC_ATTRIBUTES. (This usage is equivalent to specifying AttributesToGet without any value for Select.)

        If you use the ProjectionExpression parameter, then the value for Select can only be SPECIFIC_ATTRIBUTES. Any other value for Select will return an error.

        ", "ScanInput$Select": "

        The attributes to be returned in the result. You can retrieve all item attributes, specific item attributes, or the count of matching items.

        • ALL_ATTRIBUTES - Returns all of the item attributes.

        • ALL_PROJECTED_ATTRIBUTES - Allowed only when querying an index. Retrieves all attributes that have been projected into the index. If the index is configured to project all attributes, this return value is equivalent to specifying ALL_ATTRIBUTES.

        • COUNT - Returns the number of matching items, rather than the matching items themselves.

        • SPECIFIC_ATTRIBUTES - Returns only the attributes listed in AttributesToGet. This return value is equivalent to specifying AttributesToGet without specifying any value for Select.

        If neither Select nor AttributesToGet are specified, DynamoDB defaults to ALL_ATTRIBUTES. You cannot use both AttributesToGet and Select together in a single request, unless the value for Select is SPECIFIC_ATTRIBUTES. (This usage is equivalent to specifying AttributesToGet without any value for Select.)

        " } }, "StreamArn": { "base": null, "refs": { "TableDescription$LatestStreamArn": "

        The Amazon Resource Name (ARN) that uniquely identifies the latest stream for this table.

        " } }, "StreamEnabled": { "base": null, "refs": { "StreamSpecification$StreamEnabled": "

        Indicates whether DynamoDB Streams is enabled (true) or disabled (false) on the table.

        " } }, "StreamSpecification": { "base": "

        Represents the DynamoDB Streams configuration for a table in DynamoDB.

        ", "refs": { "CreateTableInput$StreamSpecification": "

        The settings for DynamoDB Streams on the table. These settings consist of:

        • StreamEnabled - Indicates whether Streams is to be enabled (true) or disabled (false).

        • StreamViewType - When an item in the table is modified, StreamViewType determines what information is written to the table's stream. Valid values for StreamViewType are:

          • KEYS_ONLY - Only the key attributes of the modified item are written to the stream.

          • NEW_IMAGE - The entire item, as it appears after it was modified, is written to the stream.

          • OLD_IMAGE - The entire item, as it appeared before it was modified, is written to the stream.

          • NEW_AND_OLD_IMAGES - Both the new and the old item images of the item are written to the stream.

        ", "TableDescription$StreamSpecification": "

        The current DynamoDB Streams configuration for the table.

        ", "UpdateTableInput$StreamSpecification": "

        Represents the DynamoDB Streams configuration for the table.

        You will receive a ResourceInUseException if you attempt to enable a stream on a table that already has a stream, or if you attempt to disable a stream on a table which does not have a stream.

        " } }, "StreamViewType": { "base": null, "refs": { "StreamSpecification$StreamViewType": "

        The DynamoDB Streams settings for the table. These settings consist of:

        • StreamEnabled - Indicates whether DynamoDB Streams is enabled (true) or disabled (false) on the table.

        • StreamViewType - When an item in the table is modified, StreamViewType determines what information is written to the stream for this table. Valid values for StreamViewType are:

          • KEYS_ONLY - Only the key attributes of the modified item are written to the stream.

          • NEW_IMAGE - The entire item, as it appears after it was modified, is written to the stream.

          • OLD_IMAGE - The entire item, as it appeared before it was modified, is written to the stream.

          • NEW_AND_OLD_IMAGES - Both the new and the old item images of the item are written to the stream.

        " } }, "String": { "base": null, "refs": { "GlobalSecondaryIndexDescription$IndexArn": "

        The Amazon Resource Name (ARN) that uniquely identifies the index.

        ", "LocalSecondaryIndexDescription$IndexArn": "

        The Amazon Resource Name (ARN) that uniquely identifies the index.

        ", "TableDescription$TableArn": "

        The Amazon Resource Name (ARN) that uniquely identifies the table.

        ", "TableDescription$LatestStreamLabel": "

        A timestamp, in ISO 8601 format, for this stream.

        Note that LatestStreamLabel is not a unique identifier for the stream, because it is possible that a stream from another table might have the same timestamp. However, the combination of the following three elements is guaranteed to be unique:

        • the AWS customer ID.

        • the table name.

        • the StreamLabel.

        " } }, "StringAttributeValue": { "base": null, "refs": { "AttributeValue$S": "

        A String data type.

        ", "StringSetAttributeValue$member": null } }, "StringSetAttributeValue": { "base": null, "refs": { "AttributeValue$SS": "

        A String Set data type.

        " } }, "TableDescription": { "base": "

        Represents the properties of a table.

        ", "refs": { "CreateTableOutput$TableDescription": null, "DeleteTableOutput$TableDescription": null, "DescribeTableOutput$Table": null, "UpdateTableOutput$TableDescription": null } }, "TableName": { "base": null, "refs": { "BatchGetRequestMap$key": null, "BatchGetResponseMap$key": null, "BatchWriteItemRequestMap$key": null, "ConsumedCapacity$TableName": "

        The name of the table that was affected by the operation.

        ", "CreateTableInput$TableName": "

        The name of the table to create.

        ", "DeleteItemInput$TableName": "

        The name of the table from which to delete the item.

        ", "DeleteTableInput$TableName": "

        The name of the table to delete.

        ", "DescribeTableInput$TableName": "

        The name of the table to describe.

        ", "GetItemInput$TableName": "

        The name of the table containing the requested item.

        ", "ItemCollectionMetricsPerTable$key": null, "ListTablesInput$ExclusiveStartTableName": "

        The first table name that this operation will evaluate. Use the value that was returned for LastEvaluatedTableName in a previous operation, so that you can obtain the next page of results.

        ", "ListTablesOutput$LastEvaluatedTableName": "

        The name of the last table in the current page of results. Use this value as the ExclusiveStartTableName in a new request to obtain the next page of results, until all the table names are returned.

        If you do not receive a LastEvaluatedTableName value in the response, this means that there are no more table names to be retrieved.

        ", "PutItemInput$TableName": "

        The name of the table to contain the item.

        ", "QueryInput$TableName": "

        The name of the table containing the requested items.

        ", "ScanInput$TableName": "

        The name of the table containing the requested items; or, if you provide IndexName, the name of the table to which that index belongs.

        ", "TableDescription$TableName": "

        The name of the table.

        ", "TableNameList$member": null, "UpdateItemInput$TableName": "

        The name of the table containing the item to update.

        ", "UpdateTableInput$TableName": "

        The name of the table to be updated.

        " } }, "TableNameList": { "base": null, "refs": { "ListTablesOutput$TableNames": "

        The names of the tables associated with the current account at the current endpoint. The maximum size of this array is 100.

        If LastEvaluatedTableName also appears in the output, you can use this value as the ExclusiveStartTableName parameter in a subsequent ListTables request and obtain the next page of results.

        " } }, "TableStatus": { "base": null, "refs": { "TableDescription$TableStatus": "

        The current state of the table:

        • CREATING - The table is being created.

        • UPDATING - The table is being updated.

        • DELETING - The table is being deleted.

        • ACTIVE - The table is ready for use.

        " } }, "UpdateExpression": { "base": null, "refs": { "UpdateItemInput$UpdateExpression": "

        An expression that defines one or more attributes to be updated, the action to be performed on them, and new value(s) for them.

        The following action values are available for UpdateExpression.

        • SET - Adds one or more attributes and values to an item. If any of these attribute already exist, they are replaced by the new values. You can also use SET to add or subtract from an attribute that is of type Number. For example: SET myNum = myNum + :val

          SET supports the following functions:

          • if_not_exists (path, operand) - if the item does not contain an attribute at the specified path, then if_not_exists evaluates to operand; otherwise, it evaluates to path. You can use this function to avoid overwriting an attribute that may already be present in the item.

          • list_append (operand, operand) - evaluates to a list with a new element added to it. You can append the new element to the start or the end of the list by reversing the order of the operands.

          These function names are case-sensitive.

        • REMOVE - Removes one or more attributes from an item.

        • ADD - Adds the specified value to the item, if the attribute does not already exist. If the attribute does exist, then the behavior of ADD depends on the data type of the attribute:

          • If the existing attribute is a number, and if Value is also a number, then Value is mathematically added to the existing attribute. If Value is a negative number, then it is subtracted from the existing attribute.

            If you use ADD to increment or decrement a number value for an item that doesn't exist before the update, DynamoDB uses 0 as the initial value.

            Similarly, if you use ADD for an existing item to increment or decrement an attribute value that doesn't exist before the update, DynamoDB uses 0 as the initial value. For example, suppose that the item you want to update doesn't have an attribute named itemcount, but you decide to ADD the number 3 to this attribute anyway. DynamoDB will create the itemcount attribute, set its initial value to 0, and finally add 3 to it. The result will be a new itemcount attribute in the item, with a value of 3.

          • If the existing data type is a set and if Value is also a set, then Value is added to the existing set. For example, if the attribute value is the set [1,2], and the ADD action specified [3], then the final attribute value is [1,2,3]. An error occurs if an ADD action is specified for a set attribute and the attribute type specified does not match the existing set type.

            Both sets must have the same primitive data type. For example, if the existing data type is a set of strings, the Value must also be a set of strings.

          The ADD action only supports Number and set data types. In addition, ADD can only be used on top-level attributes, not nested attributes.

        • DELETE - Deletes an element from a set.

          If a set of values is specified, then those values are subtracted from the old set. For example, if the attribute value was the set [a,b,c] and the DELETE action specifies [a,c], then the final attribute value is [b]. Specifying an empty set is an error.

          The DELETE action only supports set data types. In addition, DELETE can only be used on top-level attributes, not nested attributes.

        You can have many actions in a single expression, such as the following: SET a=:value1, b=:value2 DELETE :value3, :value4, :value5

        For more information on update expressions, see Modifying Items and Attributes in the Amazon DynamoDB Developer Guide.

        UpdateExpression replaces the legacy AttributeUpdates parameter.

        " } }, "UpdateGlobalSecondaryIndexAction": { "base": "

        Represents the new provisioned throughput settings to be applied to a global secondary index.

        ", "refs": { "GlobalSecondaryIndexUpdate$Update": "

        The name of an existing global secondary index, along with new provisioned throughput settings to be applied to that index.

        " } }, "UpdateItemInput": { "base": "

        Represents the input of an UpdateItem operation.

        ", "refs": { } }, "UpdateItemOutput": { "base": "

        Represents the output of an UpdateItem operation.

        ", "refs": { } }, "UpdateTableInput": { "base": "

        Represents the input of an UpdateTable operation.

        ", "refs": { } }, "UpdateTableOutput": { "base": "

        Represents the output of an UpdateTable operation.

        ", "refs": { } }, "WriteRequest": { "base": "

        Represents an operation to perform - either DeleteItem or PutItem. You can only request one of these operations, not both, in a single WriteRequest. If you do need to perform both of these operations, you will need to provide two separate WriteRequest objects.

        ", "refs": { "WriteRequests$member": null } }, "WriteRequests": { "base": null, "refs": { "BatchWriteItemRequestMap$value": null } } } } aws-sdk-go-1.4.22/models/apis/dynamodb/2012-08-10/examples-1.json000066400000000000000000000000541300374646400234740ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/dynamodb/2012-08-10/paginators-1.json000066400000000000000000000011761300374646400240330ustar00rootroot00000000000000{ "pagination": { "BatchGetItem": { "input_token": "RequestItems", "output_token": "UnprocessedKeys" }, "ListTables": { "input_token": "ExclusiveStartTableName", "output_token": "LastEvaluatedTableName", "limit_key": "Limit", "result_key": "TableNames" }, "Query": { "input_token": "ExclusiveStartKey", "output_token": "LastEvaluatedKey", "limit_key": "Limit", "result_key": "Items" }, "Scan": { "input_token": "ExclusiveStartKey", "output_token": "LastEvaluatedKey", "limit_key": "Limit", "result_key": "Items" } } } aws-sdk-go-1.4.22/models/apis/dynamodb/2012-08-10/waiters-2.json000066400000000000000000000013271300374646400233410ustar00rootroot00000000000000{ "version": 2, "waiters": { "TableExists": { "delay": 20, "operation": "DescribeTable", "maxAttempts": 25, "acceptors": [ { "expected": "ACTIVE", "matcher": "path", "state": "success", "argument": "Table.TableStatus" }, { "expected": "ResourceNotFoundException", "matcher": "error", "state": "retry" } ] }, "TableNotExists": { "delay": 20, "operation": "DescribeTable", "maxAttempts": 25, "acceptors": [ { "expected": "ResourceNotFoundException", "matcher": "error", "state": "success" } ] } } } aws-sdk-go-1.4.22/models/apis/ec2/000077500000000000000000000000001300374646400164535ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/ec2/2015-04-15/000077500000000000000000000000001300374646400175065ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/ec2/2015-04-15/api-2.json000066400000000000000000010733001300374646400213150ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-04-15", "endpointPrefix":"ec2", "serviceAbbreviation":"Amazon EC2", "serviceFullName":"Amazon Elastic Compute Cloud", "signatureVersion":"v4", "xmlNamespace":"http://ec2.amazonaws.com/doc/2015-04-15", "protocol":"ec2" }, "operations":{ "AcceptVpcPeeringConnection":{ "name":"AcceptVpcPeeringConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AcceptVpcPeeringConnectionRequest"}, "output":{"shape":"AcceptVpcPeeringConnectionResult"} }, "AllocateAddress":{ "name":"AllocateAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AllocateAddressRequest"}, "output":{"shape":"AllocateAddressResult"} }, "AssignPrivateIpAddresses":{ "name":"AssignPrivateIpAddresses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssignPrivateIpAddressesRequest"} }, "AssociateAddress":{ "name":"AssociateAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssociateAddressRequest"}, "output":{"shape":"AssociateAddressResult"} }, "AssociateDhcpOptions":{ "name":"AssociateDhcpOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssociateDhcpOptionsRequest"} }, "AssociateRouteTable":{ "name":"AssociateRouteTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssociateRouteTableRequest"}, "output":{"shape":"AssociateRouteTableResult"} }, "AttachClassicLinkVpc":{ "name":"AttachClassicLinkVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachClassicLinkVpcRequest"}, "output":{"shape":"AttachClassicLinkVpcResult"} }, "AttachInternetGateway":{ "name":"AttachInternetGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachInternetGatewayRequest"} }, "AttachNetworkInterface":{ "name":"AttachNetworkInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachNetworkInterfaceRequest"}, "output":{"shape":"AttachNetworkInterfaceResult"} }, "AttachVolume":{ "name":"AttachVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachVolumeRequest"}, "output":{ "shape":"VolumeAttachment", "locationName":"attachment" } }, "AttachVpnGateway":{ "name":"AttachVpnGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachVpnGatewayRequest"}, "output":{"shape":"AttachVpnGatewayResult"} }, "AuthorizeSecurityGroupEgress":{ "name":"AuthorizeSecurityGroupEgress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AuthorizeSecurityGroupEgressRequest"} }, "AuthorizeSecurityGroupIngress":{ "name":"AuthorizeSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AuthorizeSecurityGroupIngressRequest"} }, "BundleInstance":{ "name":"BundleInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BundleInstanceRequest"}, "output":{"shape":"BundleInstanceResult"} }, "CancelBundleTask":{ "name":"CancelBundleTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelBundleTaskRequest"}, "output":{"shape":"CancelBundleTaskResult"} }, "CancelConversionTask":{ "name":"CancelConversionTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelConversionRequest"} }, "CancelExportTask":{ "name":"CancelExportTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelExportTaskRequest"} }, "CancelImportTask":{ "name":"CancelImportTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelImportTaskRequest"}, "output":{"shape":"CancelImportTaskResult"} }, "CancelReservedInstancesListing":{ "name":"CancelReservedInstancesListing", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelReservedInstancesListingRequest"}, "output":{"shape":"CancelReservedInstancesListingResult"} }, "CancelSpotFleetRequests":{ "name":"CancelSpotFleetRequests", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelSpotFleetRequestsRequest"}, "output":{"shape":"CancelSpotFleetRequestsResponse"} }, "CancelSpotInstanceRequests":{ "name":"CancelSpotInstanceRequests", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelSpotInstanceRequestsRequest"}, "output":{"shape":"CancelSpotInstanceRequestsResult"} }, "ConfirmProductInstance":{ "name":"ConfirmProductInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ConfirmProductInstanceRequest"}, "output":{"shape":"ConfirmProductInstanceResult"} }, "CopyImage":{ "name":"CopyImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopyImageRequest"}, "output":{"shape":"CopyImageResult"} }, "CopySnapshot":{ "name":"CopySnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopySnapshotRequest"}, "output":{"shape":"CopySnapshotResult"} }, "CreateCustomerGateway":{ "name":"CreateCustomerGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateCustomerGatewayRequest"}, "output":{"shape":"CreateCustomerGatewayResult"} }, "CreateDhcpOptions":{ "name":"CreateDhcpOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDhcpOptionsRequest"}, "output":{"shape":"CreateDhcpOptionsResult"} }, "CreateFlowLogs":{ "name":"CreateFlowLogs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateFlowLogsRequest"}, "output":{"shape":"CreateFlowLogsResult"} }, "CreateImage":{ "name":"CreateImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateImageRequest"}, "output":{"shape":"CreateImageResult"} }, "CreateInstanceExportTask":{ "name":"CreateInstanceExportTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateInstanceExportTaskRequest"}, "output":{"shape":"CreateInstanceExportTaskResult"} }, "CreateInternetGateway":{ "name":"CreateInternetGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateInternetGatewayRequest"}, "output":{"shape":"CreateInternetGatewayResult"} }, "CreateKeyPair":{ "name":"CreateKeyPair", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateKeyPairRequest"}, "output":{ "shape":"KeyPair", "locationName":"keyPair" } }, "CreateNetworkAcl":{ "name":"CreateNetworkAcl", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateNetworkAclRequest"}, "output":{"shape":"CreateNetworkAclResult"} }, "CreateNetworkAclEntry":{ "name":"CreateNetworkAclEntry", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateNetworkAclEntryRequest"} }, "CreateNetworkInterface":{ "name":"CreateNetworkInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateNetworkInterfaceRequest"}, "output":{"shape":"CreateNetworkInterfaceResult"} }, "CreatePlacementGroup":{ "name":"CreatePlacementGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreatePlacementGroupRequest"} }, "CreateReservedInstancesListing":{ "name":"CreateReservedInstancesListing", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateReservedInstancesListingRequest"}, "output":{"shape":"CreateReservedInstancesListingResult"} }, "CreateRoute":{ "name":"CreateRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateRouteRequest"}, "output":{"shape":"CreateRouteResult"} }, "CreateRouteTable":{ "name":"CreateRouteTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateRouteTableRequest"}, "output":{"shape":"CreateRouteTableResult"} }, "CreateSecurityGroup":{ "name":"CreateSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSecurityGroupRequest"}, "output":{"shape":"CreateSecurityGroupResult"} }, "CreateSnapshot":{ "name":"CreateSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSnapshotRequest"}, "output":{ "shape":"Snapshot", "locationName":"snapshot" } }, "CreateSpotDatafeedSubscription":{ "name":"CreateSpotDatafeedSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSpotDatafeedSubscriptionRequest"}, "output":{"shape":"CreateSpotDatafeedSubscriptionResult"} }, "CreateSubnet":{ "name":"CreateSubnet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSubnetRequest"}, "output":{"shape":"CreateSubnetResult"} }, "CreateTags":{ "name":"CreateTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateTagsRequest"} }, "CreateVolume":{ "name":"CreateVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVolumeRequest"}, "output":{ "shape":"Volume", "locationName":"volume" } }, "CreateVpc":{ "name":"CreateVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpcRequest"}, "output":{"shape":"CreateVpcResult"} }, "CreateVpcEndpoint":{ "name":"CreateVpcEndpoint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpcEndpointRequest"}, "output":{"shape":"CreateVpcEndpointResult"} }, "CreateVpcPeeringConnection":{ "name":"CreateVpcPeeringConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpcPeeringConnectionRequest"}, "output":{"shape":"CreateVpcPeeringConnectionResult"} }, "CreateVpnConnection":{ "name":"CreateVpnConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpnConnectionRequest"}, "output":{"shape":"CreateVpnConnectionResult"} }, "CreateVpnConnectionRoute":{ "name":"CreateVpnConnectionRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpnConnectionRouteRequest"} }, "CreateVpnGateway":{ "name":"CreateVpnGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpnGatewayRequest"}, "output":{"shape":"CreateVpnGatewayResult"} }, "DeleteCustomerGateway":{ "name":"DeleteCustomerGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteCustomerGatewayRequest"} }, "DeleteDhcpOptions":{ "name":"DeleteDhcpOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDhcpOptionsRequest"} }, "DeleteFlowLogs":{ "name":"DeleteFlowLogs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteFlowLogsRequest"}, "output":{"shape":"DeleteFlowLogsResult"} }, "DeleteInternetGateway":{ "name":"DeleteInternetGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteInternetGatewayRequest"} }, "DeleteKeyPair":{ "name":"DeleteKeyPair", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteKeyPairRequest"} }, "DeleteNetworkAcl":{ "name":"DeleteNetworkAcl", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteNetworkAclRequest"} }, "DeleteNetworkAclEntry":{ "name":"DeleteNetworkAclEntry", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteNetworkAclEntryRequest"} }, "DeleteNetworkInterface":{ "name":"DeleteNetworkInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteNetworkInterfaceRequest"} }, "DeletePlacementGroup":{ "name":"DeletePlacementGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeletePlacementGroupRequest"} }, "DeleteRoute":{ "name":"DeleteRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRouteRequest"} }, "DeleteRouteTable":{ "name":"DeleteRouteTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRouteTableRequest"} }, "DeleteSecurityGroup":{ "name":"DeleteSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSecurityGroupRequest"} }, "DeleteSnapshot":{ "name":"DeleteSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSnapshotRequest"} }, "DeleteSpotDatafeedSubscription":{ "name":"DeleteSpotDatafeedSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSpotDatafeedSubscriptionRequest"} }, "DeleteSubnet":{ "name":"DeleteSubnet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSubnetRequest"} }, "DeleteTags":{ "name":"DeleteTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteTagsRequest"} }, "DeleteVolume":{ "name":"DeleteVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVolumeRequest"} }, "DeleteVpc":{ "name":"DeleteVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpcRequest"} }, "DeleteVpcEndpoints":{ "name":"DeleteVpcEndpoints", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpcEndpointsRequest"}, "output":{"shape":"DeleteVpcEndpointsResult"} }, "DeleteVpcPeeringConnection":{ "name":"DeleteVpcPeeringConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpcPeeringConnectionRequest"}, "output":{"shape":"DeleteVpcPeeringConnectionResult"} }, "DeleteVpnConnection":{ "name":"DeleteVpnConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpnConnectionRequest"} }, "DeleteVpnConnectionRoute":{ "name":"DeleteVpnConnectionRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpnConnectionRouteRequest"} }, "DeleteVpnGateway":{ "name":"DeleteVpnGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpnGatewayRequest"} }, "DeregisterImage":{ "name":"DeregisterImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeregisterImageRequest"} }, "DescribeAccountAttributes":{ "name":"DescribeAccountAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAccountAttributesRequest"}, "output":{"shape":"DescribeAccountAttributesResult"} }, "DescribeAddresses":{ "name":"DescribeAddresses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAddressesRequest"}, "output":{"shape":"DescribeAddressesResult"} }, "DescribeAvailabilityZones":{ "name":"DescribeAvailabilityZones", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAvailabilityZonesRequest"}, "output":{"shape":"DescribeAvailabilityZonesResult"} }, "DescribeBundleTasks":{ "name":"DescribeBundleTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeBundleTasksRequest"}, "output":{"shape":"DescribeBundleTasksResult"} }, "DescribeClassicLinkInstances":{ "name":"DescribeClassicLinkInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeClassicLinkInstancesRequest"}, "output":{"shape":"DescribeClassicLinkInstancesResult"} }, "DescribeConversionTasks":{ "name":"DescribeConversionTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeConversionTasksRequest"}, "output":{"shape":"DescribeConversionTasksResult"} }, "DescribeCustomerGateways":{ "name":"DescribeCustomerGateways", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeCustomerGatewaysRequest"}, "output":{"shape":"DescribeCustomerGatewaysResult"} }, "DescribeDhcpOptions":{ "name":"DescribeDhcpOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDhcpOptionsRequest"}, "output":{"shape":"DescribeDhcpOptionsResult"} }, "DescribeExportTasks":{ "name":"DescribeExportTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeExportTasksRequest"}, "output":{"shape":"DescribeExportTasksResult"} }, "DescribeFlowLogs":{ "name":"DescribeFlowLogs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeFlowLogsRequest"}, "output":{"shape":"DescribeFlowLogsResult"} }, "DescribeImageAttribute":{ "name":"DescribeImageAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeImageAttributeRequest"}, "output":{ "shape":"ImageAttribute", "locationName":"imageAttribute" } }, "DescribeImages":{ "name":"DescribeImages", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeImagesRequest"}, "output":{"shape":"DescribeImagesResult"} }, "DescribeImportImageTasks":{ "name":"DescribeImportImageTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeImportImageTasksRequest"}, "output":{"shape":"DescribeImportImageTasksResult"} }, "DescribeImportSnapshotTasks":{ "name":"DescribeImportSnapshotTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeImportSnapshotTasksRequest"}, "output":{"shape":"DescribeImportSnapshotTasksResult"} }, "DescribeInstanceAttribute":{ "name":"DescribeInstanceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInstanceAttributeRequest"}, "output":{"shape":"InstanceAttribute"} }, "DescribeInstanceStatus":{ "name":"DescribeInstanceStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInstanceStatusRequest"}, "output":{"shape":"DescribeInstanceStatusResult"} }, "DescribeInstances":{ "name":"DescribeInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInstancesRequest"}, "output":{"shape":"DescribeInstancesResult"} }, "DescribeInternetGateways":{ "name":"DescribeInternetGateways", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInternetGatewaysRequest"}, "output":{"shape":"DescribeInternetGatewaysResult"} }, "DescribeKeyPairs":{ "name":"DescribeKeyPairs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeKeyPairsRequest"}, "output":{"shape":"DescribeKeyPairsResult"} }, "DescribeMovingAddresses":{ "name":"DescribeMovingAddresses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeMovingAddressesRequest"}, "output":{"shape":"DescribeMovingAddressesResult"} }, "DescribeNetworkAcls":{ "name":"DescribeNetworkAcls", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeNetworkAclsRequest"}, "output":{"shape":"DescribeNetworkAclsResult"} }, "DescribeNetworkInterfaceAttribute":{ "name":"DescribeNetworkInterfaceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeNetworkInterfaceAttributeRequest"}, "output":{"shape":"DescribeNetworkInterfaceAttributeResult"} }, "DescribeNetworkInterfaces":{ "name":"DescribeNetworkInterfaces", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeNetworkInterfacesRequest"}, "output":{"shape":"DescribeNetworkInterfacesResult"} }, "DescribePlacementGroups":{ "name":"DescribePlacementGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribePlacementGroupsRequest"}, "output":{"shape":"DescribePlacementGroupsResult"} }, "DescribePrefixLists":{ "name":"DescribePrefixLists", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribePrefixListsRequest"}, "output":{"shape":"DescribePrefixListsResult"} }, "DescribeRegions":{ "name":"DescribeRegions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRegionsRequest"}, "output":{"shape":"DescribeRegionsResult"} }, "DescribeReservedInstances":{ "name":"DescribeReservedInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedInstancesRequest"}, "output":{"shape":"DescribeReservedInstancesResult"} }, "DescribeReservedInstancesListings":{ "name":"DescribeReservedInstancesListings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedInstancesListingsRequest"}, "output":{"shape":"DescribeReservedInstancesListingsResult"} }, "DescribeReservedInstancesModifications":{ "name":"DescribeReservedInstancesModifications", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedInstancesModificationsRequest"}, "output":{"shape":"DescribeReservedInstancesModificationsResult"} }, "DescribeReservedInstancesOfferings":{ "name":"DescribeReservedInstancesOfferings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedInstancesOfferingsRequest"}, "output":{"shape":"DescribeReservedInstancesOfferingsResult"} }, "DescribeRouteTables":{ "name":"DescribeRouteTables", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRouteTablesRequest"}, "output":{"shape":"DescribeRouteTablesResult"} }, "DescribeSecurityGroups":{ "name":"DescribeSecurityGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSecurityGroupsRequest"}, "output":{"shape":"DescribeSecurityGroupsResult"} }, "DescribeSnapshotAttribute":{ "name":"DescribeSnapshotAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSnapshotAttributeRequest"}, "output":{"shape":"DescribeSnapshotAttributeResult"} }, "DescribeSnapshots":{ "name":"DescribeSnapshots", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSnapshotsRequest"}, "output":{"shape":"DescribeSnapshotsResult"} }, "DescribeSpotDatafeedSubscription":{ "name":"DescribeSpotDatafeedSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotDatafeedSubscriptionRequest"}, "output":{"shape":"DescribeSpotDatafeedSubscriptionResult"} }, "DescribeSpotFleetInstances":{ "name":"DescribeSpotFleetInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotFleetInstancesRequest"}, "output":{"shape":"DescribeSpotFleetInstancesResponse"} }, "DescribeSpotFleetRequestHistory":{ "name":"DescribeSpotFleetRequestHistory", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotFleetRequestHistoryRequest"}, "output":{"shape":"DescribeSpotFleetRequestHistoryResponse"} }, "DescribeSpotFleetRequests":{ "name":"DescribeSpotFleetRequests", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotFleetRequestsRequest"}, "output":{"shape":"DescribeSpotFleetRequestsResponse"} }, "DescribeSpotInstanceRequests":{ "name":"DescribeSpotInstanceRequests", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotInstanceRequestsRequest"}, "output":{"shape":"DescribeSpotInstanceRequestsResult"} }, "DescribeSpotPriceHistory":{ "name":"DescribeSpotPriceHistory", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotPriceHistoryRequest"}, "output":{"shape":"DescribeSpotPriceHistoryResult"} }, "DescribeSubnets":{ "name":"DescribeSubnets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSubnetsRequest"}, "output":{"shape":"DescribeSubnetsResult"} }, "DescribeTags":{ "name":"DescribeTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTagsRequest"}, "output":{"shape":"DescribeTagsResult"} }, "DescribeVolumeAttribute":{ "name":"DescribeVolumeAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVolumeAttributeRequest"}, "output":{"shape":"DescribeVolumeAttributeResult"} }, "DescribeVolumeStatus":{ "name":"DescribeVolumeStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVolumeStatusRequest"}, "output":{"shape":"DescribeVolumeStatusResult"} }, "DescribeVolumes":{ "name":"DescribeVolumes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVolumesRequest"}, "output":{"shape":"DescribeVolumesResult"} }, "DescribeVpcAttribute":{ "name":"DescribeVpcAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcAttributeRequest"}, "output":{"shape":"DescribeVpcAttributeResult"} }, "DescribeVpcClassicLink":{ "name":"DescribeVpcClassicLink", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcClassicLinkRequest"}, "output":{"shape":"DescribeVpcClassicLinkResult"} }, "DescribeVpcEndpointServices":{ "name":"DescribeVpcEndpointServices", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcEndpointServicesRequest"}, "output":{"shape":"DescribeVpcEndpointServicesResult"} }, "DescribeVpcEndpoints":{ "name":"DescribeVpcEndpoints", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcEndpointsRequest"}, "output":{"shape":"DescribeVpcEndpointsResult"} }, "DescribeVpcPeeringConnections":{ "name":"DescribeVpcPeeringConnections", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcPeeringConnectionsRequest"}, "output":{"shape":"DescribeVpcPeeringConnectionsResult"} }, "DescribeVpcs":{ "name":"DescribeVpcs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcsRequest"}, "output":{"shape":"DescribeVpcsResult"} }, "DescribeVpnConnections":{ "name":"DescribeVpnConnections", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpnConnectionsRequest"}, "output":{"shape":"DescribeVpnConnectionsResult"} }, "DescribeVpnGateways":{ "name":"DescribeVpnGateways", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpnGatewaysRequest"}, "output":{"shape":"DescribeVpnGatewaysResult"} }, "DetachClassicLinkVpc":{ "name":"DetachClassicLinkVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachClassicLinkVpcRequest"}, "output":{"shape":"DetachClassicLinkVpcResult"} }, "DetachInternetGateway":{ "name":"DetachInternetGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachInternetGatewayRequest"} }, "DetachNetworkInterface":{ "name":"DetachNetworkInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachNetworkInterfaceRequest"} }, "DetachVolume":{ "name":"DetachVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachVolumeRequest"}, "output":{ "shape":"VolumeAttachment", "locationName":"attachment" } }, "DetachVpnGateway":{ "name":"DetachVpnGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachVpnGatewayRequest"} }, "DisableVgwRoutePropagation":{ "name":"DisableVgwRoutePropagation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableVgwRoutePropagationRequest"} }, "DisableVpcClassicLink":{ "name":"DisableVpcClassicLink", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableVpcClassicLinkRequest"}, "output":{"shape":"DisableVpcClassicLinkResult"} }, "DisassociateAddress":{ "name":"DisassociateAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisassociateAddressRequest"} }, "DisassociateRouteTable":{ "name":"DisassociateRouteTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisassociateRouteTableRequest"} }, "EnableVgwRoutePropagation":{ "name":"EnableVgwRoutePropagation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableVgwRoutePropagationRequest"} }, "EnableVolumeIO":{ "name":"EnableVolumeIO", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableVolumeIORequest"} }, "EnableVpcClassicLink":{ "name":"EnableVpcClassicLink", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableVpcClassicLinkRequest"}, "output":{"shape":"EnableVpcClassicLinkResult"} }, "GetConsoleOutput":{ "name":"GetConsoleOutput", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetConsoleOutputRequest"}, "output":{"shape":"GetConsoleOutputResult"} }, "GetPasswordData":{ "name":"GetPasswordData", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetPasswordDataRequest"}, "output":{"shape":"GetPasswordDataResult"} }, "ImportImage":{ "name":"ImportImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportImageRequest"}, "output":{"shape":"ImportImageResult"} }, "ImportInstance":{ "name":"ImportInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportInstanceRequest"}, "output":{"shape":"ImportInstanceResult"} }, "ImportKeyPair":{ "name":"ImportKeyPair", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportKeyPairRequest"}, "output":{"shape":"ImportKeyPairResult"} }, "ImportSnapshot":{ "name":"ImportSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportSnapshotRequest"}, "output":{"shape":"ImportSnapshotResult"} }, "ImportVolume":{ "name":"ImportVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportVolumeRequest"}, "output":{"shape":"ImportVolumeResult"} }, "ModifyImageAttribute":{ "name":"ModifyImageAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyImageAttributeRequest"} }, "ModifyInstanceAttribute":{ "name":"ModifyInstanceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyInstanceAttributeRequest"} }, "ModifyNetworkInterfaceAttribute":{ "name":"ModifyNetworkInterfaceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyNetworkInterfaceAttributeRequest"} }, "ModifyReservedInstances":{ "name":"ModifyReservedInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyReservedInstancesRequest"}, "output":{"shape":"ModifyReservedInstancesResult"} }, "ModifySnapshotAttribute":{ "name":"ModifySnapshotAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifySnapshotAttributeRequest"} }, "ModifySubnetAttribute":{ "name":"ModifySubnetAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifySubnetAttributeRequest"} }, "ModifyVolumeAttribute":{ "name":"ModifyVolumeAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyVolumeAttributeRequest"} }, "ModifyVpcAttribute":{ "name":"ModifyVpcAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyVpcAttributeRequest"} }, "ModifyVpcEndpoint":{ "name":"ModifyVpcEndpoint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyVpcEndpointRequest"}, "output":{"shape":"ModifyVpcEndpointResult"} }, "MonitorInstances":{ "name":"MonitorInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"MonitorInstancesRequest"}, "output":{"shape":"MonitorInstancesResult"} }, "MoveAddressToVpc":{ "name":"MoveAddressToVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"MoveAddressToVpcRequest"}, "output":{"shape":"MoveAddressToVpcResult"} }, "PurchaseReservedInstancesOffering":{ "name":"PurchaseReservedInstancesOffering", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PurchaseReservedInstancesOfferingRequest"}, "output":{"shape":"PurchaseReservedInstancesOfferingResult"} }, "RebootInstances":{ "name":"RebootInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RebootInstancesRequest"} }, "RegisterImage":{ "name":"RegisterImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterImageRequest"}, "output":{"shape":"RegisterImageResult"} }, "RejectVpcPeeringConnection":{ "name":"RejectVpcPeeringConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RejectVpcPeeringConnectionRequest"}, "output":{"shape":"RejectVpcPeeringConnectionResult"} }, "ReleaseAddress":{ "name":"ReleaseAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReleaseAddressRequest"} }, "ReplaceNetworkAclAssociation":{ "name":"ReplaceNetworkAclAssociation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReplaceNetworkAclAssociationRequest"}, "output":{"shape":"ReplaceNetworkAclAssociationResult"} }, "ReplaceNetworkAclEntry":{ "name":"ReplaceNetworkAclEntry", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReplaceNetworkAclEntryRequest"} }, "ReplaceRoute":{ "name":"ReplaceRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReplaceRouteRequest"} }, "ReplaceRouteTableAssociation":{ "name":"ReplaceRouteTableAssociation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReplaceRouteTableAssociationRequest"}, "output":{"shape":"ReplaceRouteTableAssociationResult"} }, "ReportInstanceStatus":{ "name":"ReportInstanceStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReportInstanceStatusRequest"} }, "RequestSpotFleet":{ "name":"RequestSpotFleet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RequestSpotFleetRequest"}, "output":{"shape":"RequestSpotFleetResponse"} }, "RequestSpotInstances":{ "name":"RequestSpotInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RequestSpotInstancesRequest"}, "output":{"shape":"RequestSpotInstancesResult"} }, "ResetImageAttribute":{ "name":"ResetImageAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetImageAttributeRequest"} }, "ResetInstanceAttribute":{ "name":"ResetInstanceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetInstanceAttributeRequest"} }, "ResetNetworkInterfaceAttribute":{ "name":"ResetNetworkInterfaceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetNetworkInterfaceAttributeRequest"} }, "ResetSnapshotAttribute":{ "name":"ResetSnapshotAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetSnapshotAttributeRequest"} }, "RestoreAddressToClassic":{ "name":"RestoreAddressToClassic", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreAddressToClassicRequest"}, "output":{"shape":"RestoreAddressToClassicResult"} }, "RevokeSecurityGroupEgress":{ "name":"RevokeSecurityGroupEgress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RevokeSecurityGroupEgressRequest"} }, "RevokeSecurityGroupIngress":{ "name":"RevokeSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RevokeSecurityGroupIngressRequest"} }, "RunInstances":{ "name":"RunInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RunInstancesRequest"}, "output":{ "shape":"Reservation", "locationName":"reservation" } }, "StartInstances":{ "name":"StartInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartInstancesRequest"}, "output":{"shape":"StartInstancesResult"} }, "StopInstances":{ "name":"StopInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopInstancesRequest"}, "output":{"shape":"StopInstancesResult"} }, "TerminateInstances":{ "name":"TerminateInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"TerminateInstancesRequest"}, "output":{"shape":"TerminateInstancesResult"} }, "UnassignPrivateIpAddresses":{ "name":"UnassignPrivateIpAddresses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UnassignPrivateIpAddressesRequest"} }, "UnmonitorInstances":{ "name":"UnmonitorInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UnmonitorInstancesRequest"}, "output":{"shape":"UnmonitorInstancesResult"} } }, "shapes":{ "AcceptVpcPeeringConnectionRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "AcceptVpcPeeringConnectionResult":{ "type":"structure", "members":{ "VpcPeeringConnection":{ "shape":"VpcPeeringConnection", "locationName":"vpcPeeringConnection" } } }, "AccountAttribute":{ "type":"structure", "members":{ "AttributeName":{ "shape":"String", "locationName":"attributeName" }, "AttributeValues":{ "shape":"AccountAttributeValueList", "locationName":"attributeValueSet" } } }, "AccountAttributeList":{ "type":"list", "member":{ "shape":"AccountAttribute", "locationName":"item" } }, "AccountAttributeName":{ "type":"string", "enum":[ "supported-platforms", "default-vpc" ] }, "AccountAttributeNameStringList":{ "type":"list", "member":{ "shape":"AccountAttributeName", "locationName":"attributeName" } }, "AccountAttributeValue":{ "type":"structure", "members":{ "AttributeValue":{ "shape":"String", "locationName":"attributeValue" } } }, "AccountAttributeValueList":{ "type":"list", "member":{ "shape":"AccountAttributeValue", "locationName":"item" } }, "ActiveInstance":{ "type":"structure", "members":{ "InstanceType":{ "shape":"String", "locationName":"instanceType" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "SpotInstanceRequestId":{ "shape":"String", "locationName":"spotInstanceRequestId" } } }, "ActiveInstanceSet":{ "type":"list", "member":{ "shape":"ActiveInstance", "locationName":"item" } }, "Address":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "AllocationId":{ "shape":"String", "locationName":"allocationId" }, "AssociationId":{ "shape":"String", "locationName":"associationId" }, "Domain":{ "shape":"DomainType", "locationName":"domain" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "NetworkInterfaceOwnerId":{ "shape":"String", "locationName":"networkInterfaceOwnerId" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" } } }, "AddressList":{ "type":"list", "member":{ "shape":"Address", "locationName":"item" } }, "AllocateAddressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Domain":{"shape":"DomainType"} } }, "AllocateAddressResult":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "Domain":{ "shape":"DomainType", "locationName":"domain" }, "AllocationId":{ "shape":"String", "locationName":"allocationId" } } }, "AllocationIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"AllocationId" } }, "AllocationStrategy":{ "type":"string", "enum":[ "lowestPrice", "diversified" ] }, "ArchitectureValues":{ "type":"string", "enum":[ "i386", "x86_64" ] }, "AssignPrivateIpAddressesRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "PrivateIpAddresses":{ "shape":"PrivateIpAddressStringList", "locationName":"privateIpAddress" }, "SecondaryPrivateIpAddressCount":{ "shape":"Integer", "locationName":"secondaryPrivateIpAddressCount" }, "AllowReassignment":{ "shape":"Boolean", "locationName":"allowReassignment" } } }, "AssociateAddressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{"shape":"String"}, "PublicIp":{"shape":"String"}, "AllocationId":{"shape":"String"}, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "AllowReassociation":{ "shape":"Boolean", "locationName":"allowReassociation" } } }, "AssociateAddressResult":{ "type":"structure", "members":{ "AssociationId":{ "shape":"String", "locationName":"associationId" } } }, "AssociateDhcpOptionsRequest":{ "type":"structure", "required":[ "DhcpOptionsId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "DhcpOptionsId":{"shape":"String"}, "VpcId":{"shape":"String"} } }, "AssociateRouteTableRequest":{ "type":"structure", "required":[ "SubnetId", "RouteTableId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" } } }, "AssociateRouteTableResult":{ "type":"structure", "members":{ "AssociationId":{ "shape":"String", "locationName":"associationId" } } }, "AttachClassicLinkVpcRequest":{ "type":"structure", "required":[ "InstanceId", "VpcId", "Groups" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Groups":{ "shape":"GroupIdStringList", "locationName":"SecurityGroupId" } } }, "AttachClassicLinkVpcResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "AttachInternetGatewayRequest":{ "type":"structure", "required":[ "InternetGatewayId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InternetGatewayId":{ "shape":"String", "locationName":"internetGatewayId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "AttachNetworkInterfaceRequest":{ "type":"structure", "required":[ "NetworkInterfaceId", "InstanceId", "DeviceIndex" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "DeviceIndex":{ "shape":"Integer", "locationName":"deviceIndex" } } }, "AttachNetworkInterfaceResult":{ "type":"structure", "members":{ "AttachmentId":{ "shape":"String", "locationName":"attachmentId" } } }, "AttachVolumeRequest":{ "type":"structure", "required":[ "VolumeId", "InstanceId", "Device" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "InstanceId":{"shape":"String"}, "Device":{"shape":"String"} } }, "AttachVpnGatewayRequest":{ "type":"structure", "required":[ "VpnGatewayId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnGatewayId":{"shape":"String"}, "VpcId":{"shape":"String"} } }, "AttachVpnGatewayResult":{ "type":"structure", "members":{ "VpcAttachment":{ "shape":"VpcAttachment", "locationName":"attachment" } } }, "AttachmentStatus":{ "type":"string", "enum":[ "attaching", "attached", "detaching", "detached" ] }, "AttributeBooleanValue":{ "type":"structure", "members":{ "Value":{ "shape":"Boolean", "locationName":"value" } } }, "AttributeValue":{ "type":"structure", "members":{ "Value":{ "shape":"String", "locationName":"value" } } }, "AuthorizeSecurityGroupEgressRequest":{ "type":"structure", "required":["GroupId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupId":{ "shape":"String", "locationName":"groupId" }, "SourceSecurityGroupName":{ "shape":"String", "locationName":"sourceSecurityGroupName" }, "SourceSecurityGroupOwnerId":{ "shape":"String", "locationName":"sourceSecurityGroupOwnerId" }, "IpProtocol":{ "shape":"String", "locationName":"ipProtocol" }, "FromPort":{ "shape":"Integer", "locationName":"fromPort" }, "ToPort":{ "shape":"Integer", "locationName":"toPort" }, "CidrIp":{ "shape":"String", "locationName":"cidrIp" }, "IpPermissions":{ "shape":"IpPermissionList", "locationName":"ipPermissions" } } }, "AuthorizeSecurityGroupIngressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{"shape":"String"}, "GroupId":{"shape":"String"}, "SourceSecurityGroupName":{"shape":"String"}, "SourceSecurityGroupOwnerId":{"shape":"String"}, "IpProtocol":{"shape":"String"}, "FromPort":{"shape":"Integer"}, "ToPort":{"shape":"Integer"}, "CidrIp":{"shape":"String"}, "IpPermissions":{"shape":"IpPermissionList"} } }, "AvailabilityZone":{ "type":"structure", "members":{ "ZoneName":{ "shape":"String", "locationName":"zoneName" }, "State":{ "shape":"AvailabilityZoneState", "locationName":"zoneState" }, "RegionName":{ "shape":"String", "locationName":"regionName" }, "Messages":{ "shape":"AvailabilityZoneMessageList", "locationName":"messageSet" } } }, "AvailabilityZoneList":{ "type":"list", "member":{ "shape":"AvailabilityZone", "locationName":"item" } }, "AvailabilityZoneMessage":{ "type":"structure", "members":{ "Message":{ "shape":"String", "locationName":"message" } } }, "AvailabilityZoneMessageList":{ "type":"list", "member":{ "shape":"AvailabilityZoneMessage", "locationName":"item" } }, "AvailabilityZoneState":{ "type":"string", "enum":["available"] }, "BatchState":{ "type":"string", "enum":[ "submitted", "active", "cancelled", "failed", "cancelled_running", "cancelled_terminating" ] }, "BlockDeviceMapping":{ "type":"structure", "members":{ "VirtualName":{ "shape":"String", "locationName":"virtualName" }, "DeviceName":{ "shape":"String", "locationName":"deviceName" }, "Ebs":{ "shape":"EbsBlockDevice", "locationName":"ebs" }, "NoDevice":{ "shape":"String", "locationName":"noDevice" } } }, "BlockDeviceMappingList":{ "type":"list", "member":{ "shape":"BlockDeviceMapping", "locationName":"item" } }, "BlockDeviceMappingRequestList":{ "type":"list", "member":{ "shape":"BlockDeviceMapping", "locationName":"BlockDeviceMapping" } }, "Boolean":{"type":"boolean"}, "BundleIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"BundleId" } }, "BundleInstanceRequest":{ "type":"structure", "required":[ "InstanceId", "Storage" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{"shape":"String"}, "Storage":{"shape":"Storage"} } }, "BundleInstanceResult":{ "type":"structure", "members":{ "BundleTask":{ "shape":"BundleTask", "locationName":"bundleInstanceTask" } } }, "BundleTask":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "BundleId":{ "shape":"String", "locationName":"bundleId" }, "State":{ "shape":"BundleTaskState", "locationName":"state" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "UpdateTime":{ "shape":"DateTime", "locationName":"updateTime" }, "Storage":{ "shape":"Storage", "locationName":"storage" }, "Progress":{ "shape":"String", "locationName":"progress" }, "BundleTaskError":{ "shape":"BundleTaskError", "locationName":"error" } } }, "BundleTaskError":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "BundleTaskList":{ "type":"list", "member":{ "shape":"BundleTask", "locationName":"item" } }, "BundleTaskState":{ "type":"string", "enum":[ "pending", "waiting-for-shutdown", "bundling", "storing", "cancelling", "complete", "failed" ] }, "CancelBatchErrorCode":{ "type":"string", "enum":[ "fleetRequestIdDoesNotExist", "fleetRequestIdMalformed", "fleetRequestNotInCancellableState", "unexpectedError" ] }, "CancelBundleTaskRequest":{ "type":"structure", "required":["BundleId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "BundleId":{"shape":"String"} } }, "CancelBundleTaskResult":{ "type":"structure", "members":{ "BundleTask":{ "shape":"BundleTask", "locationName":"bundleInstanceTask" } } }, "CancelConversionRequest":{ "type":"structure", "required":["ConversionTaskId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ConversionTaskId":{ "shape":"String", "locationName":"conversionTaskId" }, "ReasonMessage":{ "shape":"String", "locationName":"reasonMessage" } } }, "CancelExportTaskRequest":{ "type":"structure", "required":["ExportTaskId"], "members":{ "ExportTaskId":{ "shape":"String", "locationName":"exportTaskId" } } }, "CancelImportTaskRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "ImportTaskId":{"shape":"String"}, "CancelReason":{"shape":"String"} } }, "CancelImportTaskResult":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "State":{ "shape":"String", "locationName":"state" }, "PreviousState":{ "shape":"String", "locationName":"previousState" } } }, "CancelReservedInstancesListingRequest":{ "type":"structure", "required":["ReservedInstancesListingId"], "members":{ "ReservedInstancesListingId":{ "shape":"String", "locationName":"reservedInstancesListingId" } } }, "CancelReservedInstancesListingResult":{ "type":"structure", "members":{ "ReservedInstancesListings":{ "shape":"ReservedInstancesListingList", "locationName":"reservedInstancesListingsSet" } } }, "CancelSpotFleetRequestsError":{ "type":"structure", "required":[ "Code", "Message" ], "members":{ "Code":{ "shape":"CancelBatchErrorCode", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "CancelSpotFleetRequestsErrorItem":{ "type":"structure", "required":[ "SpotFleetRequestId", "Error" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "Error":{ "shape":"CancelSpotFleetRequestsError", "locationName":"error" } } }, "CancelSpotFleetRequestsErrorSet":{ "type":"list", "member":{ "shape":"CancelSpotFleetRequestsErrorItem", "locationName":"item" } }, "CancelSpotFleetRequestsRequest":{ "type":"structure", "required":[ "SpotFleetRequestIds", "TerminateInstances" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestIds":{ "shape":"ValueStringList", "locationName":"spotFleetRequestId" }, "TerminateInstances":{ "shape":"Boolean", "locationName":"terminateInstances" } } }, "CancelSpotFleetRequestsResponse":{ "type":"structure", "members":{ "UnsuccessfulFleetRequests":{ "shape":"CancelSpotFleetRequestsErrorSet", "locationName":"unsuccessfulFleetRequestSet" }, "SuccessfulFleetRequests":{ "shape":"CancelSpotFleetRequestsSuccessSet", "locationName":"successfulFleetRequestSet" } } }, "CancelSpotFleetRequestsSuccessItem":{ "type":"structure", "required":[ "SpotFleetRequestId", "CurrentSpotFleetRequestState", "PreviousSpotFleetRequestState" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "CurrentSpotFleetRequestState":{ "shape":"BatchState", "locationName":"currentSpotFleetRequestState" }, "PreviousSpotFleetRequestState":{ "shape":"BatchState", "locationName":"previousSpotFleetRequestState" } } }, "CancelSpotFleetRequestsSuccessSet":{ "type":"list", "member":{ "shape":"CancelSpotFleetRequestsSuccessItem", "locationName":"item" } }, "CancelSpotInstanceRequestState":{ "type":"string", "enum":[ "active", "open", "closed", "cancelled", "completed" ] }, "CancelSpotInstanceRequestsRequest":{ "type":"structure", "required":["SpotInstanceRequestIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotInstanceRequestIds":{ "shape":"SpotInstanceRequestIdList", "locationName":"SpotInstanceRequestId" } } }, "CancelSpotInstanceRequestsResult":{ "type":"structure", "members":{ "CancelledSpotInstanceRequests":{ "shape":"CancelledSpotInstanceRequestList", "locationName":"spotInstanceRequestSet" } } }, "CancelledSpotInstanceRequest":{ "type":"structure", "members":{ "SpotInstanceRequestId":{ "shape":"String", "locationName":"spotInstanceRequestId" }, "State":{ "shape":"CancelSpotInstanceRequestState", "locationName":"state" } } }, "CancelledSpotInstanceRequestList":{ "type":"list", "member":{ "shape":"CancelledSpotInstanceRequest", "locationName":"item" } }, "ClassicLinkInstance":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "ClassicLinkInstanceList":{ "type":"list", "member":{ "shape":"ClassicLinkInstance", "locationName":"item" } }, "ClientData":{ "type":"structure", "members":{ "UploadStart":{"shape":"DateTime"}, "UploadEnd":{"shape":"DateTime"}, "UploadSize":{"shape":"Double"}, "Comment":{"shape":"String"} } }, "ConfirmProductInstanceRequest":{ "type":"structure", "required":[ "ProductCode", "InstanceId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ProductCode":{"shape":"String"}, "InstanceId":{"shape":"String"} } }, "ConfirmProductInstanceResult":{ "type":"structure", "members":{ "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "Return":{ "shape":"Boolean", "locationName":"return" } } }, "ContainerFormat":{ "type":"string", "enum":["ova"] }, "ConversionIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "ConversionTask":{ "type":"structure", "required":[ "ConversionTaskId", "State" ], "members":{ "ConversionTaskId":{ "shape":"String", "locationName":"conversionTaskId" }, "ExpirationTime":{ "shape":"String", "locationName":"expirationTime" }, "ImportInstance":{ "shape":"ImportInstanceTaskDetails", "locationName":"importInstance" }, "ImportVolume":{ "shape":"ImportVolumeTaskDetails", "locationName":"importVolume" }, "State":{ "shape":"ConversionTaskState", "locationName":"state" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "ConversionTaskState":{ "type":"string", "enum":[ "active", "cancelling", "cancelled", "completed" ] }, "CopyImageRequest":{ "type":"structure", "required":[ "SourceRegion", "SourceImageId", "Name" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SourceRegion":{"shape":"String"}, "SourceImageId":{"shape":"String"}, "Name":{"shape":"String"}, "Description":{"shape":"String"}, "ClientToken":{"shape":"String"} } }, "CopyImageResult":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" } } }, "CopySnapshotRequest":{ "type":"structure", "required":[ "SourceRegion", "SourceSnapshotId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SourceRegion":{"shape":"String"}, "SourceSnapshotId":{"shape":"String"}, "Description":{"shape":"String"}, "DestinationRegion":{ "shape":"String", "locationName":"destinationRegion" }, "PresignedUrl":{ "shape":"String", "locationName":"presignedUrl" }, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{ "shape":"String", "locationName":"kmsKeyId" } } }, "CopySnapshotResult":{ "type":"structure", "members":{ "SnapshotId":{ "shape":"String", "locationName":"snapshotId" } } }, "CreateCustomerGatewayRequest":{ "type":"structure", "required":[ "Type", "PublicIp", "BgpAsn" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Type":{"shape":"GatewayType"}, "PublicIp":{ "shape":"String", "locationName":"IpAddress" }, "BgpAsn":{"shape":"Integer"} } }, "CreateCustomerGatewayResult":{ "type":"structure", "members":{ "CustomerGateway":{ "shape":"CustomerGateway", "locationName":"customerGateway" } } }, "CreateDhcpOptionsRequest":{ "type":"structure", "required":["DhcpConfigurations"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "DhcpConfigurations":{ "shape":"NewDhcpConfigurationList", "locationName":"dhcpConfiguration" } } }, "CreateDhcpOptionsResult":{ "type":"structure", "members":{ "DhcpOptions":{ "shape":"DhcpOptions", "locationName":"dhcpOptions" } } }, "CreateFlowLogsRequest":{ "type":"structure", "required":[ "ResourceIds", "ResourceType", "TrafficType", "LogGroupName", "DeliverLogsPermissionArn" ], "members":{ "ResourceIds":{ "shape":"ValueStringList", "locationName":"ResourceId" }, "ResourceType":{"shape":"FlowLogsResourceType"}, "TrafficType":{"shape":"TrafficType"}, "LogGroupName":{"shape":"String"}, "DeliverLogsPermissionArn":{"shape":"String"}, "ClientToken":{"shape":"String"} } }, "CreateFlowLogsResult":{ "type":"structure", "members":{ "FlowLogIds":{ "shape":"ValueStringList", "locationName":"flowLogIdSet" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "Unsuccessful":{ "shape":"UnsuccessfulItemSet", "locationName":"unsuccessful" } } }, "CreateImageRequest":{ "type":"structure", "required":[ "InstanceId", "Name" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Name":{ "shape":"String", "locationName":"name" }, "Description":{ "shape":"String", "locationName":"description" }, "NoReboot":{ "shape":"Boolean", "locationName":"noReboot" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingRequestList", "locationName":"blockDeviceMapping" } } }, "CreateImageResult":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" } } }, "CreateInstanceExportTaskRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "Description":{ "shape":"String", "locationName":"description" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "TargetEnvironment":{ "shape":"ExportEnvironment", "locationName":"targetEnvironment" }, "ExportToS3Task":{ "shape":"ExportToS3TaskSpecification", "locationName":"exportToS3" } } }, "CreateInstanceExportTaskResult":{ "type":"structure", "members":{ "ExportTask":{ "shape":"ExportTask", "locationName":"exportTask" } } }, "CreateInternetGatewayRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "CreateInternetGatewayResult":{ "type":"structure", "members":{ "InternetGateway":{ "shape":"InternetGateway", "locationName":"internetGateway" } } }, "CreateKeyPairRequest":{ "type":"structure", "required":["KeyName"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "KeyName":{"shape":"String"} } }, "CreateNetworkAclEntryRequest":{ "type":"structure", "required":[ "NetworkAclId", "RuleNumber", "Protocol", "RuleAction", "Egress", "CidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "RuleNumber":{ "shape":"Integer", "locationName":"ruleNumber" }, "Protocol":{ "shape":"String", "locationName":"protocol" }, "RuleAction":{ "shape":"RuleAction", "locationName":"ruleAction" }, "Egress":{ "shape":"Boolean", "locationName":"egress" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "IcmpTypeCode":{ "shape":"IcmpTypeCode", "locationName":"Icmp" }, "PortRange":{ "shape":"PortRange", "locationName":"portRange" } } }, "CreateNetworkAclRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "CreateNetworkAclResult":{ "type":"structure", "members":{ "NetworkAcl":{ "shape":"NetworkAcl", "locationName":"networkAcl" } } }, "CreateNetworkInterfaceRequest":{ "type":"structure", "required":["SubnetId"], "members":{ "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "Description":{ "shape":"String", "locationName":"description" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "Groups":{ "shape":"SecurityGroupIdStringList", "locationName":"SecurityGroupId" }, "PrivateIpAddresses":{ "shape":"PrivateIpAddressSpecificationList", "locationName":"privateIpAddresses" }, "SecondaryPrivateIpAddressCount":{ "shape":"Integer", "locationName":"secondaryPrivateIpAddressCount" }, "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "CreateNetworkInterfaceResult":{ "type":"structure", "members":{ "NetworkInterface":{ "shape":"NetworkInterface", "locationName":"networkInterface" } } }, "CreatePlacementGroupRequest":{ "type":"structure", "required":[ "GroupName", "Strategy" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "Strategy":{ "shape":"PlacementStrategy", "locationName":"strategy" } } }, "CreateReservedInstancesListingRequest":{ "type":"structure", "required":[ "ReservedInstancesId", "InstanceCount", "PriceSchedules", "ClientToken" ], "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "PriceSchedules":{ "shape":"PriceScheduleSpecificationList", "locationName":"priceSchedules" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "CreateReservedInstancesListingResult":{ "type":"structure", "members":{ "ReservedInstancesListings":{ "shape":"ReservedInstancesListingList", "locationName":"reservedInstancesListingsSet" } } }, "CreateRouteRequest":{ "type":"structure", "required":[ "RouteTableId", "DestinationCidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" }, "GatewayId":{ "shape":"String", "locationName":"gatewayId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "CreateRouteResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "CreateRouteTableRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "CreateRouteTableResult":{ "type":"structure", "members":{ "RouteTable":{ "shape":"RouteTable", "locationName":"routeTable" } } }, "CreateSecurityGroupRequest":{ "type":"structure", "required":[ "GroupName", "Description" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{"shape":"String"}, "Description":{ "shape":"String", "locationName":"GroupDescription" }, "VpcId":{"shape":"String"} } }, "CreateSecurityGroupResult":{ "type":"structure", "members":{ "GroupId":{ "shape":"String", "locationName":"groupId" } } }, "CreateSnapshotRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "Description":{"shape":"String"} } }, "CreateSpotDatafeedSubscriptionRequest":{ "type":"structure", "required":["Bucket"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Bucket":{ "shape":"String", "locationName":"bucket" }, "Prefix":{ "shape":"String", "locationName":"prefix" } } }, "CreateSpotDatafeedSubscriptionResult":{ "type":"structure", "members":{ "SpotDatafeedSubscription":{ "shape":"SpotDatafeedSubscription", "locationName":"spotDatafeedSubscription" } } }, "CreateSubnetRequest":{ "type":"structure", "required":[ "VpcId", "CidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{"shape":"String"}, "CidrBlock":{"shape":"String"}, "AvailabilityZone":{"shape":"String"} } }, "CreateSubnetResult":{ "type":"structure", "members":{ "Subnet":{ "shape":"Subnet", "locationName":"subnet" } } }, "CreateTagsRequest":{ "type":"structure", "required":[ "Resources", "Tags" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Resources":{ "shape":"ResourceIdList", "locationName":"ResourceId" }, "Tags":{ "shape":"TagList", "locationName":"Tag" } } }, "CreateVolumePermission":{ "type":"structure", "members":{ "UserId":{ "shape":"String", "locationName":"userId" }, "Group":{ "shape":"PermissionGroup", "locationName":"group" } } }, "CreateVolumePermissionList":{ "type":"list", "member":{ "shape":"CreateVolumePermission", "locationName":"item" } }, "CreateVolumePermissionModifications":{ "type":"structure", "members":{ "Add":{"shape":"CreateVolumePermissionList"}, "Remove":{"shape":"CreateVolumePermissionList"} } }, "CreateVolumeRequest":{ "type":"structure", "required":["AvailabilityZone"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Size":{"shape":"Integer"}, "SnapshotId":{"shape":"String"}, "AvailabilityZone":{"shape":"String"}, "VolumeType":{"shape":"VolumeType"}, "Iops":{"shape":"Integer"}, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{"shape":"String"} } }, "CreateVpcEndpointRequest":{ "type":"structure", "required":[ "VpcId", "ServiceName" ], "members":{ "DryRun":{"shape":"Boolean"}, "VpcId":{"shape":"String"}, "ServiceName":{"shape":"String"}, "PolicyDocument":{"shape":"String"}, "RouteTableIds":{ "shape":"ValueStringList", "locationName":"RouteTableId" }, "ClientToken":{"shape":"String"} } }, "CreateVpcEndpointResult":{ "type":"structure", "members":{ "VpcEndpoint":{ "shape":"VpcEndpoint", "locationName":"vpcEndpoint" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "CreateVpcPeeringConnectionRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "PeerVpcId":{ "shape":"String", "locationName":"peerVpcId" }, "PeerOwnerId":{ "shape":"String", "locationName":"peerOwnerId" } } }, "CreateVpcPeeringConnectionResult":{ "type":"structure", "members":{ "VpcPeeringConnection":{ "shape":"VpcPeeringConnection", "locationName":"vpcPeeringConnection" } } }, "CreateVpcRequest":{ "type":"structure", "required":["CidrBlock"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "CidrBlock":{"shape":"String"}, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" } } }, "CreateVpcResult":{ "type":"structure", "members":{ "Vpc":{ "shape":"Vpc", "locationName":"vpc" } } }, "CreateVpnConnectionRequest":{ "type":"structure", "required":[ "Type", "CustomerGatewayId", "VpnGatewayId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Type":{"shape":"String"}, "CustomerGatewayId":{"shape":"String"}, "VpnGatewayId":{"shape":"String"}, "Options":{ "shape":"VpnConnectionOptionsSpecification", "locationName":"options" } } }, "CreateVpnConnectionResult":{ "type":"structure", "members":{ "VpnConnection":{ "shape":"VpnConnection", "locationName":"vpnConnection" } } }, "CreateVpnConnectionRouteRequest":{ "type":"structure", "required":[ "VpnConnectionId", "DestinationCidrBlock" ], "members":{ "VpnConnectionId":{"shape":"String"}, "DestinationCidrBlock":{"shape":"String"} } }, "CreateVpnGatewayRequest":{ "type":"structure", "required":["Type"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Type":{"shape":"GatewayType"}, "AvailabilityZone":{"shape":"String"} } }, "CreateVpnGatewayResult":{ "type":"structure", "members":{ "VpnGateway":{ "shape":"VpnGateway", "locationName":"vpnGateway" } } }, "CurrencyCodeValues":{ "type":"string", "enum":["USD"] }, "CustomerGateway":{ "type":"structure", "members":{ "CustomerGatewayId":{ "shape":"String", "locationName":"customerGatewayId" }, "State":{ "shape":"String", "locationName":"state" }, "Type":{ "shape":"String", "locationName":"type" }, "IpAddress":{ "shape":"String", "locationName":"ipAddress" }, "BgpAsn":{ "shape":"String", "locationName":"bgpAsn" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "CustomerGatewayIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"CustomerGatewayId" } }, "CustomerGatewayList":{ "type":"list", "member":{ "shape":"CustomerGateway", "locationName":"item" } }, "DatafeedSubscriptionState":{ "type":"string", "enum":[ "Active", "Inactive" ] }, "DateTime":{"type":"timestamp"}, "DeleteCustomerGatewayRequest":{ "type":"structure", "required":["CustomerGatewayId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "CustomerGatewayId":{"shape":"String"} } }, "DeleteDhcpOptionsRequest":{ "type":"structure", "required":["DhcpOptionsId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "DhcpOptionsId":{"shape":"String"} } }, "DeleteFlowLogsRequest":{ "type":"structure", "required":["FlowLogIds"], "members":{ "FlowLogIds":{ "shape":"ValueStringList", "locationName":"FlowLogId" } } }, "DeleteFlowLogsResult":{ "type":"structure", "members":{ "Unsuccessful":{ "shape":"UnsuccessfulItemSet", "locationName":"unsuccessful" } } }, "DeleteInternetGatewayRequest":{ "type":"structure", "required":["InternetGatewayId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InternetGatewayId":{ "shape":"String", "locationName":"internetGatewayId" } } }, "DeleteKeyPairRequest":{ "type":"structure", "required":["KeyName"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "KeyName":{"shape":"String"} } }, "DeleteNetworkAclEntryRequest":{ "type":"structure", "required":[ "NetworkAclId", "RuleNumber", "Egress" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "RuleNumber":{ "shape":"Integer", "locationName":"ruleNumber" }, "Egress":{ "shape":"Boolean", "locationName":"egress" } } }, "DeleteNetworkAclRequest":{ "type":"structure", "required":["NetworkAclId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" } } }, "DeleteNetworkInterfaceRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" } } }, "DeletePlacementGroupRequest":{ "type":"structure", "required":["GroupName"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{ "shape":"String", "locationName":"groupName" } } }, "DeleteRouteRequest":{ "type":"structure", "required":[ "RouteTableId", "DestinationCidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" } } }, "DeleteRouteTableRequest":{ "type":"structure", "required":["RouteTableId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" } } }, "DeleteSecurityGroupRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{"shape":"String"}, "GroupId":{"shape":"String"} } }, "DeleteSnapshotRequest":{ "type":"structure", "required":["SnapshotId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotId":{"shape":"String"} } }, "DeleteSpotDatafeedSubscriptionRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "DeleteSubnetRequest":{ "type":"structure", "required":["SubnetId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SubnetId":{"shape":"String"} } }, "DeleteTagsRequest":{ "type":"structure", "required":["Resources"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Resources":{ "shape":"ResourceIdList", "locationName":"resourceId" }, "Tags":{ "shape":"TagList", "locationName":"tag" } } }, "DeleteVolumeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"} } }, "DeleteVpcEndpointsRequest":{ "type":"structure", "required":["VpcEndpointIds"], "members":{ "DryRun":{"shape":"Boolean"}, "VpcEndpointIds":{ "shape":"ValueStringList", "locationName":"VpcEndpointId" } } }, "DeleteVpcEndpointsResult":{ "type":"structure", "members":{ "Unsuccessful":{ "shape":"UnsuccessfulItemSet", "locationName":"unsuccessful" } } }, "DeleteVpcPeeringConnectionRequest":{ "type":"structure", "required":["VpcPeeringConnectionId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "DeleteVpcPeeringConnectionResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "DeleteVpcRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{"shape":"String"} } }, "DeleteVpnConnectionRequest":{ "type":"structure", "required":["VpnConnectionId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnConnectionId":{"shape":"String"} } }, "DeleteVpnConnectionRouteRequest":{ "type":"structure", "required":[ "VpnConnectionId", "DestinationCidrBlock" ], "members":{ "VpnConnectionId":{"shape":"String"}, "DestinationCidrBlock":{"shape":"String"} } }, "DeleteVpnGatewayRequest":{ "type":"structure", "required":["VpnGatewayId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnGatewayId":{"shape":"String"} } }, "DeregisterImageRequest":{ "type":"structure", "required":["ImageId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"} } }, "DescribeAccountAttributesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AttributeNames":{ "shape":"AccountAttributeNameStringList", "locationName":"attributeName" } } }, "DescribeAccountAttributesResult":{ "type":"structure", "members":{ "AccountAttributes":{ "shape":"AccountAttributeList", "locationName":"accountAttributeSet" } } }, "DescribeAddressesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIps":{ "shape":"PublicIpStringList", "locationName":"PublicIp" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "AllocationIds":{ "shape":"AllocationIdList", "locationName":"AllocationId" } } }, "DescribeAddressesResult":{ "type":"structure", "members":{ "Addresses":{ "shape":"AddressList", "locationName":"addressesSet" } } }, "DescribeAvailabilityZonesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ZoneNames":{ "shape":"ZoneNameStringList", "locationName":"ZoneName" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeAvailabilityZonesResult":{ "type":"structure", "members":{ "AvailabilityZones":{ "shape":"AvailabilityZoneList", "locationName":"availabilityZoneInfo" } } }, "DescribeBundleTasksRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "BundleIds":{ "shape":"BundleIdStringList", "locationName":"BundleId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeBundleTasksResult":{ "type":"structure", "members":{ "BundleTasks":{ "shape":"BundleTaskList", "locationName":"bundleInstanceTasksSet" } } }, "DescribeClassicLinkInstancesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeClassicLinkInstancesResult":{ "type":"structure", "members":{ "Instances":{ "shape":"ClassicLinkInstanceList", "locationName":"instancesSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeConversionTaskList":{ "type":"list", "member":{ "shape":"ConversionTask", "locationName":"item" } }, "DescribeConversionTasksRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Filters":{ "shape":"FilterList", "locationName":"filter" }, "ConversionTaskIds":{ "shape":"ConversionIdStringList", "locationName":"conversionTaskId" } } }, "DescribeConversionTasksResult":{ "type":"structure", "members":{ "ConversionTasks":{ "shape":"DescribeConversionTaskList", "locationName":"conversionTasks" } } }, "DescribeCustomerGatewaysRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "CustomerGatewayIds":{ "shape":"CustomerGatewayIdStringList", "locationName":"CustomerGatewayId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeCustomerGatewaysResult":{ "type":"structure", "members":{ "CustomerGateways":{ "shape":"CustomerGatewayList", "locationName":"customerGatewaySet" } } }, "DescribeDhcpOptionsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "DhcpOptionsIds":{ "shape":"DhcpOptionsIdStringList", "locationName":"DhcpOptionsId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeDhcpOptionsResult":{ "type":"structure", "members":{ "DhcpOptions":{ "shape":"DhcpOptionsList", "locationName":"dhcpOptionsSet" } } }, "DescribeExportTasksRequest":{ "type":"structure", "members":{ "ExportTaskIds":{ "shape":"ExportTaskIdStringList", "locationName":"exportTaskId" } } }, "DescribeExportTasksResult":{ "type":"structure", "members":{ "ExportTasks":{ "shape":"ExportTaskList", "locationName":"exportTaskSet" } } }, "DescribeFlowLogsRequest":{ "type":"structure", "members":{ "FlowLogIds":{ "shape":"ValueStringList", "locationName":"FlowLogId" }, "Filter":{"shape":"FilterList"}, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"} } }, "DescribeFlowLogsResult":{ "type":"structure", "members":{ "FlowLogs":{ "shape":"FlowLogSet", "locationName":"flowLogSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeImageAttributeRequest":{ "type":"structure", "required":[ "ImageId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"}, "Attribute":{"shape":"ImageAttributeName"} } }, "DescribeImagesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageIds":{ "shape":"ImageIdStringList", "locationName":"ImageId" }, "Owners":{ "shape":"OwnerStringList", "locationName":"Owner" }, "ExecutableUsers":{ "shape":"ExecutableByStringList", "locationName":"ExecutableBy" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeImagesResult":{ "type":"structure", "members":{ "Images":{ "shape":"ImageList", "locationName":"imagesSet" } } }, "DescribeImportImageTasksRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "ImportTaskIds":{ "shape":"ImportTaskIdList", "locationName":"ImportTaskId" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"}, "Filters":{"shape":"FilterList"} } }, "DescribeImportImageTasksResult":{ "type":"structure", "members":{ "ImportImageTasks":{ "shape":"ImportImageTaskList", "locationName":"importImageTaskSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeImportSnapshotTasksRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "ImportTaskIds":{ "shape":"ImportTaskIdList", "locationName":"ImportTaskId" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"}, "Filters":{"shape":"FilterList"} } }, "DescribeImportSnapshotTasksResult":{ "type":"structure", "members":{ "ImportSnapshotTasks":{ "shape":"ImportSnapshotTaskList", "locationName":"importSnapshotTaskSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeInstanceAttributeRequest":{ "type":"structure", "required":[ "InstanceId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Attribute":{ "shape":"InstanceAttributeName", "locationName":"attribute" } } }, "DescribeInstanceStatusRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"}, "IncludeAllInstances":{ "shape":"Boolean", "locationName":"includeAllInstances" } } }, "DescribeInstanceStatusResult":{ "type":"structure", "members":{ "InstanceStatuses":{ "shape":"InstanceStatusList", "locationName":"instanceStatusSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeInstancesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeInstancesResult":{ "type":"structure", "members":{ "Reservations":{ "shape":"ReservationList", "locationName":"reservationSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeInternetGatewaysRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InternetGatewayIds":{ "shape":"ValueStringList", "locationName":"internetGatewayId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeInternetGatewaysResult":{ "type":"structure", "members":{ "InternetGateways":{ "shape":"InternetGatewayList", "locationName":"internetGatewaySet" } } }, "DescribeKeyPairsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "KeyNames":{ "shape":"KeyNameStringList", "locationName":"KeyName" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeKeyPairsResult":{ "type":"structure", "members":{ "KeyPairs":{ "shape":"KeyPairList", "locationName":"keySet" } } }, "DescribeMovingAddressesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIps":{ "shape":"ValueStringList", "locationName":"publicIp" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "Filters":{ "shape":"FilterList", "locationName":"filter" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeMovingAddressesResult":{ "type":"structure", "members":{ "MovingAddressStatuses":{ "shape":"MovingAddressStatusSet", "locationName":"movingAddressStatusSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeNetworkAclsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclIds":{ "shape":"ValueStringList", "locationName":"NetworkAclId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeNetworkAclsResult":{ "type":"structure", "members":{ "NetworkAcls":{ "shape":"NetworkAclList", "locationName":"networkAclSet" } } }, "DescribeNetworkInterfaceAttributeRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "Attribute":{ "shape":"NetworkInterfaceAttribute", "locationName":"attribute" } } }, "DescribeNetworkInterfaceAttributeResult":{ "type":"structure", "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "Description":{ "shape":"AttributeValue", "locationName":"description" }, "SourceDestCheck":{ "shape":"AttributeBooleanValue", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Attachment":{ "shape":"NetworkInterfaceAttachment", "locationName":"attachment" } } }, "DescribeNetworkInterfacesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceIds":{ "shape":"NetworkInterfaceIdList", "locationName":"NetworkInterfaceId" }, "Filters":{ "shape":"FilterList", "locationName":"filter" } } }, "DescribeNetworkInterfacesResult":{ "type":"structure", "members":{ "NetworkInterfaces":{ "shape":"NetworkInterfaceList", "locationName":"networkInterfaceSet" } } }, "DescribePlacementGroupsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupNames":{ "shape":"PlacementGroupStringList", "locationName":"groupName" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribePlacementGroupsResult":{ "type":"structure", "members":{ "PlacementGroups":{ "shape":"PlacementGroupList", "locationName":"placementGroupSet" } } }, "DescribePrefixListsRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "PrefixListIds":{ "shape":"ValueStringList", "locationName":"PrefixListId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribePrefixListsResult":{ "type":"structure", "members":{ "PrefixLists":{ "shape":"PrefixListSet", "locationName":"prefixListSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeRegionsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RegionNames":{ "shape":"RegionNameStringList", "locationName":"RegionName" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeRegionsResult":{ "type":"structure", "members":{ "Regions":{ "shape":"RegionList", "locationName":"regionInfo" } } }, "DescribeReservedInstancesListingsRequest":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "ReservedInstancesListingId":{ "shape":"String", "locationName":"reservedInstancesListingId" }, "Filters":{ "shape":"FilterList", "locationName":"filters" } } }, "DescribeReservedInstancesListingsResult":{ "type":"structure", "members":{ "ReservedInstancesListings":{ "shape":"ReservedInstancesListingList", "locationName":"reservedInstancesListingsSet" } } }, "DescribeReservedInstancesModificationsRequest":{ "type":"structure", "members":{ "ReservedInstancesModificationIds":{ "shape":"ReservedInstancesModificationIdStringList", "locationName":"ReservedInstancesModificationId" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeReservedInstancesModificationsResult":{ "type":"structure", "members":{ "ReservedInstancesModifications":{ "shape":"ReservedInstancesModificationList", "locationName":"reservedInstancesModificationsSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeReservedInstancesOfferingsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ReservedInstancesOfferingIds":{ "shape":"ReservedInstancesOfferingIdStringList", "locationName":"ReservedInstancesOfferingId" }, "InstanceType":{"shape":"InstanceType"}, "AvailabilityZone":{"shape":"String"}, "ProductDescription":{"shape":"RIProductDescription"}, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" }, "OfferingType":{ "shape":"OfferingTypeValues", "locationName":"offeringType" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" }, "IncludeMarketplace":{"shape":"Boolean"}, "MinDuration":{"shape":"Long"}, "MaxDuration":{"shape":"Long"}, "MaxInstanceCount":{"shape":"Integer"} } }, "DescribeReservedInstancesOfferingsResult":{ "type":"structure", "members":{ "ReservedInstancesOfferings":{ "shape":"ReservedInstancesOfferingList", "locationName":"reservedInstancesOfferingsSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeReservedInstancesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ReservedInstancesIds":{ "shape":"ReservedInstancesIdStringList", "locationName":"ReservedInstancesId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "OfferingType":{ "shape":"OfferingTypeValues", "locationName":"offeringType" } } }, "DescribeReservedInstancesResult":{ "type":"structure", "members":{ "ReservedInstances":{ "shape":"ReservedInstancesList", "locationName":"reservedInstancesSet" } } }, "DescribeRouteTablesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableIds":{ "shape":"ValueStringList", "locationName":"RouteTableId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeRouteTablesResult":{ "type":"structure", "members":{ "RouteTables":{ "shape":"RouteTableList", "locationName":"routeTableSet" } } }, "DescribeSecurityGroupsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupNames":{ "shape":"GroupNameStringList", "locationName":"GroupName" }, "GroupIds":{ "shape":"GroupIdStringList", "locationName":"GroupId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeSecurityGroupsResult":{ "type":"structure", "members":{ "SecurityGroups":{ "shape":"SecurityGroupList", "locationName":"securityGroupInfo" } } }, "DescribeSnapshotAttributeRequest":{ "type":"structure", "required":[ "SnapshotId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotId":{"shape":"String"}, "Attribute":{"shape":"SnapshotAttributeName"} } }, "DescribeSnapshotAttributeResult":{ "type":"structure", "members":{ "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "CreateVolumePermissions":{ "shape":"CreateVolumePermissionList", "locationName":"createVolumePermission" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" } } }, "DescribeSnapshotsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotIds":{ "shape":"SnapshotIdStringList", "locationName":"SnapshotId" }, "OwnerIds":{ "shape":"OwnerStringList", "locationName":"Owner" }, "RestorableByUserIds":{ "shape":"RestorableByStringList", "locationName":"RestorableBy" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"} } }, "DescribeSnapshotsResult":{ "type":"structure", "members":{ "Snapshots":{ "shape":"SnapshotList", "locationName":"snapshotSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotDatafeedSubscriptionRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "DescribeSpotDatafeedSubscriptionResult":{ "type":"structure", "members":{ "SpotDatafeedSubscription":{ "shape":"SpotDatafeedSubscription", "locationName":"spotDatafeedSubscription" } } }, "DescribeSpotFleetInstancesRequest":{ "type":"structure", "required":["SpotFleetRequestId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeSpotFleetInstancesResponse":{ "type":"structure", "required":[ "SpotFleetRequestId", "ActiveInstances" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "ActiveInstances":{ "shape":"ActiveInstanceSet", "locationName":"activeInstanceSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotFleetRequestHistoryRequest":{ "type":"structure", "required":[ "SpotFleetRequestId", "StartTime" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "EventType":{ "shape":"EventType", "locationName":"eventType" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeSpotFleetRequestHistoryResponse":{ "type":"structure", "required":[ "SpotFleetRequestId", "StartTime", "LastEvaluatedTime", "HistoryRecords" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "LastEvaluatedTime":{ "shape":"DateTime", "locationName":"lastEvaluatedTime" }, "HistoryRecords":{ "shape":"HistoryRecords", "locationName":"historyRecordSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotFleetRequestsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestIds":{ "shape":"ValueStringList", "locationName":"spotFleetRequestId" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeSpotFleetRequestsResponse":{ "type":"structure", "required":["SpotFleetRequestConfigs"], "members":{ "SpotFleetRequestConfigs":{ "shape":"SpotFleetRequestConfigSet", "locationName":"spotFleetRequestConfigSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotInstanceRequestsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotInstanceRequestIds":{ "shape":"SpotInstanceRequestIdList", "locationName":"SpotInstanceRequestId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeSpotInstanceRequestsResult":{ "type":"structure", "members":{ "SpotInstanceRequests":{ "shape":"SpotInstanceRequestList", "locationName":"spotInstanceRequestSet" } } }, "DescribeSpotPriceHistoryRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "EndTime":{ "shape":"DateTime", "locationName":"endTime" }, "InstanceTypes":{ "shape":"InstanceTypeList", "locationName":"InstanceType" }, "ProductDescriptions":{ "shape":"ProductDescriptionList", "locationName":"ProductDescription" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotPriceHistoryResult":{ "type":"structure", "members":{ "SpotPriceHistory":{ "shape":"SpotPriceHistoryList", "locationName":"spotPriceHistorySet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSubnetsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SubnetIds":{ "shape":"SubnetIdStringList", "locationName":"SubnetId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeSubnetsResult":{ "type":"structure", "members":{ "Subnets":{ "shape":"SubnetList", "locationName":"subnetSet" } } }, "DescribeTagsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeTagsResult":{ "type":"structure", "members":{ "Tags":{ "shape":"TagDescriptionList", "locationName":"tagSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVolumeAttributeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "Attribute":{"shape":"VolumeAttributeName"} } }, "DescribeVolumeAttributeResult":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "AutoEnableIO":{ "shape":"AttributeBooleanValue", "locationName":"autoEnableIO" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" } } }, "DescribeVolumeStatusRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeIds":{ "shape":"VolumeIdStringList", "locationName":"VolumeId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"} } }, "DescribeVolumeStatusResult":{ "type":"structure", "members":{ "VolumeStatuses":{ "shape":"VolumeStatusList", "locationName":"volumeStatusSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVolumesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeIds":{ "shape":"VolumeIdStringList", "locationName":"VolumeId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeVolumesResult":{ "type":"structure", "members":{ "Volumes":{ "shape":"VolumeList", "locationName":"volumeSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVpcAttributeRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{"shape":"String"}, "Attribute":{"shape":"VpcAttributeName"} } }, "DescribeVpcAttributeResult":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "EnableDnsSupport":{ "shape":"AttributeBooleanValue", "locationName":"enableDnsSupport" }, "EnableDnsHostnames":{ "shape":"AttributeBooleanValue", "locationName":"enableDnsHostnames" } } }, "DescribeVpcClassicLinkRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcIds":{ "shape":"VpcClassicLinkIdList", "locationName":"VpcId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpcClassicLinkResult":{ "type":"structure", "members":{ "Vpcs":{ "shape":"VpcClassicLinkList", "locationName":"vpcSet" } } }, "DescribeVpcEndpointServicesRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribeVpcEndpointServicesResult":{ "type":"structure", "members":{ "ServiceNames":{ "shape":"ValueStringList", "locationName":"serviceNameSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVpcEndpointsRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "VpcEndpointIds":{ "shape":"ValueStringList", "locationName":"VpcEndpointId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribeVpcEndpointsResult":{ "type":"structure", "members":{ "VpcEndpoints":{ "shape":"VpcEndpointSet", "locationName":"vpcEndpointSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVpcPeeringConnectionsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcPeeringConnectionIds":{ "shape":"ValueStringList", "locationName":"VpcPeeringConnectionId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpcPeeringConnectionsResult":{ "type":"structure", "members":{ "VpcPeeringConnections":{ "shape":"VpcPeeringConnectionList", "locationName":"vpcPeeringConnectionSet" } } }, "DescribeVpcsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcIds":{ "shape":"VpcIdStringList", "locationName":"VpcId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpcsResult":{ "type":"structure", "members":{ "Vpcs":{ "shape":"VpcList", "locationName":"vpcSet" } } }, "DescribeVpnConnectionsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnConnectionIds":{ "shape":"VpnConnectionIdStringList", "locationName":"VpnConnectionId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpnConnectionsResult":{ "type":"structure", "members":{ "VpnConnections":{ "shape":"VpnConnectionList", "locationName":"vpnConnectionSet" } } }, "DescribeVpnGatewaysRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnGatewayIds":{ "shape":"VpnGatewayIdStringList", "locationName":"VpnGatewayId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpnGatewaysResult":{ "type":"structure", "members":{ "VpnGateways":{ "shape":"VpnGatewayList", "locationName":"vpnGatewaySet" } } }, "DetachClassicLinkVpcRequest":{ "type":"structure", "required":[ "InstanceId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "DetachClassicLinkVpcResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "DetachInternetGatewayRequest":{ "type":"structure", "required":[ "InternetGatewayId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InternetGatewayId":{ "shape":"String", "locationName":"internetGatewayId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "DetachNetworkInterfaceRequest":{ "type":"structure", "required":["AttachmentId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AttachmentId":{ "shape":"String", "locationName":"attachmentId" }, "Force":{ "shape":"Boolean", "locationName":"force" } } }, "DetachVolumeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "InstanceId":{"shape":"String"}, "Device":{"shape":"String"}, "Force":{"shape":"Boolean"} } }, "DetachVpnGatewayRequest":{ "type":"structure", "required":[ "VpnGatewayId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnGatewayId":{"shape":"String"}, "VpcId":{"shape":"String"} } }, "DeviceType":{ "type":"string", "enum":[ "ebs", "instance-store" ] }, "DhcpConfiguration":{ "type":"structure", "members":{ "Key":{ "shape":"String", "locationName":"key" }, "Values":{ "shape":"DhcpConfigurationValueList", "locationName":"valueSet" } } }, "DhcpConfigurationList":{ "type":"list", "member":{ "shape":"DhcpConfiguration", "locationName":"item" } }, "DhcpOptions":{ "type":"structure", "members":{ "DhcpOptionsId":{ "shape":"String", "locationName":"dhcpOptionsId" }, "DhcpConfigurations":{ "shape":"DhcpConfigurationList", "locationName":"dhcpConfigurationSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "DhcpOptionsIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"DhcpOptionsId" } }, "DhcpOptionsList":{ "type":"list", "member":{ "shape":"DhcpOptions", "locationName":"item" } }, "DisableVgwRoutePropagationRequest":{ "type":"structure", "required":[ "RouteTableId", "GatewayId" ], "members":{ "RouteTableId":{"shape":"String"}, "GatewayId":{"shape":"String"} } }, "DisableVpcClassicLinkRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "DisableVpcClassicLinkResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "DisassociateAddressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIp":{"shape":"String"}, "AssociationId":{"shape":"String"} } }, "DisassociateRouteTableRequest":{ "type":"structure", "required":["AssociationId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AssociationId":{ "shape":"String", "locationName":"associationId" } } }, "DiskImage":{ "type":"structure", "members":{ "Image":{"shape":"DiskImageDetail"}, "Description":{"shape":"String"}, "Volume":{"shape":"VolumeDetail"} } }, "DiskImageDescription":{ "type":"structure", "required":[ "Format", "Size", "ImportManifestUrl" ], "members":{ "Format":{ "shape":"DiskImageFormat", "locationName":"format" }, "Size":{ "shape":"Long", "locationName":"size" }, "ImportManifestUrl":{ "shape":"String", "locationName":"importManifestUrl" }, "Checksum":{ "shape":"String", "locationName":"checksum" } } }, "DiskImageDetail":{ "type":"structure", "required":[ "Format", "Bytes", "ImportManifestUrl" ], "members":{ "Format":{ "shape":"DiskImageFormat", "locationName":"format" }, "Bytes":{ "shape":"Long", "locationName":"bytes" }, "ImportManifestUrl":{ "shape":"String", "locationName":"importManifestUrl" } } }, "DiskImageFormat":{ "type":"string", "enum":[ "VMDK", "RAW", "VHD" ] }, "DiskImageList":{ "type":"list", "member":{"shape":"DiskImage"} }, "DiskImageVolumeDescription":{ "type":"structure", "required":["Id"], "members":{ "Size":{ "shape":"Long", "locationName":"size" }, "Id":{ "shape":"String", "locationName":"id" } } }, "DomainType":{ "type":"string", "enum":[ "vpc", "standard" ] }, "Double":{"type":"double"}, "EbsBlockDevice":{ "type":"structure", "members":{ "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "VolumeSize":{ "shape":"Integer", "locationName":"volumeSize" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" }, "VolumeType":{ "shape":"VolumeType", "locationName":"volumeType" }, "Iops":{ "shape":"Integer", "locationName":"iops" }, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" } } }, "EbsInstanceBlockDevice":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "Status":{ "shape":"AttachmentStatus", "locationName":"status" }, "AttachTime":{ "shape":"DateTime", "locationName":"attachTime" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "EbsInstanceBlockDeviceSpecification":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "EnableVgwRoutePropagationRequest":{ "type":"structure", "required":[ "RouteTableId", "GatewayId" ], "members":{ "RouteTableId":{"shape":"String"}, "GatewayId":{"shape":"String"} } }, "EnableVolumeIORequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{ "shape":"String", "locationName":"volumeId" } } }, "EnableVpcClassicLinkRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "EnableVpcClassicLinkResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "EventCode":{ "type":"string", "enum":[ "instance-reboot", "system-reboot", "system-maintenance", "instance-retirement", "instance-stop" ] }, "EventInformation":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "EventSubType":{ "shape":"String", "locationName":"eventSubType" }, "EventDescription":{ "shape":"String", "locationName":"eventDescription" } } }, "EventType":{ "type":"string", "enum":[ "instanceChange", "fleetRequestChange", "error" ] }, "ExecutableByStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ExecutableBy" } }, "ExportEnvironment":{ "type":"string", "enum":[ "citrix", "vmware", "microsoft" ] }, "ExportTask":{ "type":"structure", "members":{ "ExportTaskId":{ "shape":"String", "locationName":"exportTaskId" }, "Description":{ "shape":"String", "locationName":"description" }, "State":{ "shape":"ExportTaskState", "locationName":"state" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "InstanceExportDetails":{ "shape":"InstanceExportDetails", "locationName":"instanceExport" }, "ExportToS3Task":{ "shape":"ExportToS3Task", "locationName":"exportToS3" } } }, "ExportTaskIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ExportTaskId" } }, "ExportTaskList":{ "type":"list", "member":{ "shape":"ExportTask", "locationName":"item" } }, "ExportTaskState":{ "type":"string", "enum":[ "active", "cancelling", "cancelled", "completed" ] }, "ExportToS3Task":{ "type":"structure", "members":{ "DiskImageFormat":{ "shape":"DiskImageFormat", "locationName":"diskImageFormat" }, "ContainerFormat":{ "shape":"ContainerFormat", "locationName":"containerFormat" }, "S3Bucket":{ "shape":"String", "locationName":"s3Bucket" }, "S3Key":{ "shape":"String", "locationName":"s3Key" } } }, "ExportToS3TaskSpecification":{ "type":"structure", "members":{ "DiskImageFormat":{ "shape":"DiskImageFormat", "locationName":"diskImageFormat" }, "ContainerFormat":{ "shape":"ContainerFormat", "locationName":"containerFormat" }, "S3Bucket":{ "shape":"String", "locationName":"s3Bucket" }, "S3Prefix":{ "shape":"String", "locationName":"s3Prefix" } } }, "Filter":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "Values":{ "shape":"ValueStringList", "locationName":"Value" } } }, "FilterList":{ "type":"list", "member":{ "shape":"Filter", "locationName":"Filter" } }, "Float":{"type":"float"}, "FlowLog":{ "type":"structure", "members":{ "CreationTime":{ "shape":"DateTime", "locationName":"creationTime" }, "FlowLogId":{ "shape":"String", "locationName":"flowLogId" }, "FlowLogStatus":{ "shape":"String", "locationName":"flowLogStatus" }, "ResourceId":{ "shape":"String", "locationName":"resourceId" }, "TrafficType":{ "shape":"TrafficType", "locationName":"trafficType" }, "LogGroupName":{ "shape":"String", "locationName":"logGroupName" }, "DeliverLogsStatus":{ "shape":"String", "locationName":"deliverLogsStatus" }, "DeliverLogsErrorMessage":{ "shape":"String", "locationName":"deliverLogsErrorMessage" }, "DeliverLogsPermissionArn":{ "shape":"String", "locationName":"deliverLogsPermissionArn" } } }, "FlowLogSet":{ "type":"list", "member":{ "shape":"FlowLog", "locationName":"item" } }, "FlowLogsResourceType":{ "type":"string", "enum":[ "VPC", "Subnet", "NetworkInterface" ] }, "GatewayType":{ "type":"string", "enum":["ipsec.1"] }, "GetConsoleOutputRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{"shape":"String"} } }, "GetConsoleOutputResult":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Timestamp":{ "shape":"DateTime", "locationName":"timestamp" }, "Output":{ "shape":"String", "locationName":"output" } } }, "GetPasswordDataRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{"shape":"String"} } }, "GetPasswordDataResult":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Timestamp":{ "shape":"DateTime", "locationName":"timestamp" }, "PasswordData":{ "shape":"String", "locationName":"passwordData" } } }, "GroupIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"groupId" } }, "GroupIdentifier":{ "type":"structure", "members":{ "GroupName":{ "shape":"String", "locationName":"groupName" }, "GroupId":{ "shape":"String", "locationName":"groupId" } } }, "GroupIdentifierList":{ "type":"list", "member":{ "shape":"GroupIdentifier", "locationName":"item" } }, "GroupNameStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"GroupName" } }, "HistoryRecord":{ "type":"structure", "required":[ "Timestamp", "EventType", "EventInformation" ], "members":{ "Timestamp":{ "shape":"DateTime", "locationName":"timestamp" }, "EventType":{ "shape":"EventType", "locationName":"eventType" }, "EventInformation":{ "shape":"EventInformation", "locationName":"eventInformation" } } }, "HistoryRecords":{ "type":"list", "member":{ "shape":"HistoryRecord", "locationName":"item" } }, "HypervisorType":{ "type":"string", "enum":[ "ovm", "xen" ] }, "IamInstanceProfile":{ "type":"structure", "members":{ "Arn":{ "shape":"String", "locationName":"arn" }, "Id":{ "shape":"String", "locationName":"id" } } }, "IamInstanceProfileSpecification":{ "type":"structure", "members":{ "Arn":{ "shape":"String", "locationName":"arn" }, "Name":{ "shape":"String", "locationName":"name" } } }, "IcmpTypeCode":{ "type":"structure", "members":{ "Type":{ "shape":"Integer", "locationName":"type" }, "Code":{ "shape":"Integer", "locationName":"code" } } }, "Image":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "ImageLocation":{ "shape":"String", "locationName":"imageLocation" }, "State":{ "shape":"ImageState", "locationName":"imageState" }, "OwnerId":{ "shape":"String", "locationName":"imageOwnerId" }, "CreationDate":{ "shape":"String", "locationName":"creationDate" }, "Public":{ "shape":"Boolean", "locationName":"isPublic" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" }, "Architecture":{ "shape":"ArchitectureValues", "locationName":"architecture" }, "ImageType":{ "shape":"ImageTypeValues", "locationName":"imageType" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "Platform":{ "shape":"PlatformValues", "locationName":"platform" }, "SriovNetSupport":{ "shape":"String", "locationName":"sriovNetSupport" }, "StateReason":{ "shape":"StateReason", "locationName":"stateReason" }, "ImageOwnerAlias":{ "shape":"String", "locationName":"imageOwnerAlias" }, "Name":{ "shape":"String", "locationName":"name" }, "Description":{ "shape":"String", "locationName":"description" }, "RootDeviceType":{ "shape":"DeviceType", "locationName":"rootDeviceType" }, "RootDeviceName":{ "shape":"String", "locationName":"rootDeviceName" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "VirtualizationType":{ "shape":"VirtualizationType", "locationName":"virtualizationType" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "Hypervisor":{ "shape":"HypervisorType", "locationName":"hypervisor" } } }, "ImageAttribute":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "LaunchPermissions":{ "shape":"LaunchPermissionList", "locationName":"launchPermission" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" }, "KernelId":{ "shape":"AttributeValue", "locationName":"kernel" }, "RamdiskId":{ "shape":"AttributeValue", "locationName":"ramdisk" }, "Description":{ "shape":"AttributeValue", "locationName":"description" }, "SriovNetSupport":{ "shape":"AttributeValue", "locationName":"sriovNetSupport" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" } } }, "ImageAttributeName":{ "type":"string", "enum":[ "description", "kernel", "ramdisk", "launchPermission", "productCodes", "blockDeviceMapping", "sriovNetSupport" ] }, "ImageDiskContainer":{ "type":"structure", "members":{ "Description":{"shape":"String"}, "Format":{"shape":"String"}, "Url":{"shape":"String"}, "UserBucket":{"shape":"UserBucket"}, "DeviceName":{"shape":"String"}, "SnapshotId":{"shape":"String"} } }, "ImageDiskContainerList":{ "type":"list", "member":{ "shape":"ImageDiskContainer", "locationName":"item" } }, "ImageIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ImageId" } }, "ImageList":{ "type":"list", "member":{ "shape":"Image", "locationName":"item" } }, "ImageState":{ "type":"string", "enum":[ "pending", "available", "invalid", "deregistered", "transient", "failed", "error" ] }, "ImageTypeValues":{ "type":"string", "enum":[ "machine", "kernel", "ramdisk" ] }, "ImportImageRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "Description":{"shape":"String"}, "DiskContainers":{ "shape":"ImageDiskContainerList", "locationName":"DiskContainer" }, "LicenseType":{"shape":"String"}, "Hypervisor":{"shape":"String"}, "Architecture":{"shape":"String"}, "Platform":{"shape":"String"}, "ClientData":{"shape":"ClientData"}, "ClientToken":{"shape":"String"}, "RoleName":{"shape":"String"} } }, "ImportImageResult":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "Architecture":{ "shape":"String", "locationName":"architecture" }, "LicenseType":{ "shape":"String", "locationName":"licenseType" }, "Platform":{ "shape":"String", "locationName":"platform" }, "Hypervisor":{ "shape":"String", "locationName":"hypervisor" }, "Description":{ "shape":"String", "locationName":"description" }, "SnapshotDetails":{ "shape":"SnapshotDetailList", "locationName":"snapshotDetailSet" }, "ImageId":{ "shape":"String", "locationName":"imageId" }, "Progress":{ "shape":"String", "locationName":"progress" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Status":{ "shape":"String", "locationName":"status" } } }, "ImportImageTask":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "Architecture":{ "shape":"String", "locationName":"architecture" }, "LicenseType":{ "shape":"String", "locationName":"licenseType" }, "Platform":{ "shape":"String", "locationName":"platform" }, "Hypervisor":{ "shape":"String", "locationName":"hypervisor" }, "Description":{ "shape":"String", "locationName":"description" }, "SnapshotDetails":{ "shape":"SnapshotDetailList", "locationName":"snapshotDetailSet" }, "ImageId":{ "shape":"String", "locationName":"imageId" }, "Progress":{ "shape":"String", "locationName":"progress" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Status":{ "shape":"String", "locationName":"status" } } }, "ImportImageTaskList":{ "type":"list", "member":{ "shape":"ImportImageTask", "locationName":"item" } }, "ImportInstanceLaunchSpecification":{ "type":"structure", "members":{ "Architecture":{ "shape":"ArchitectureValues", "locationName":"architecture" }, "GroupNames":{ "shape":"SecurityGroupStringList", "locationName":"GroupName" }, "GroupIds":{ "shape":"SecurityGroupIdStringList", "locationName":"GroupId" }, "AdditionalInfo":{ "shape":"String", "locationName":"additionalInfo" }, "UserData":{ "shape":"UserData", "locationName":"userData" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "Placement":{ "shape":"Placement", "locationName":"placement" }, "Monitoring":{ "shape":"Boolean", "locationName":"monitoring" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "InstanceInitiatedShutdownBehavior":{ "shape":"ShutdownBehavior", "locationName":"instanceInitiatedShutdownBehavior" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" } } }, "ImportInstanceRequest":{ "type":"structure", "required":["Platform"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Description":{ "shape":"String", "locationName":"description" }, "LaunchSpecification":{ "shape":"ImportInstanceLaunchSpecification", "locationName":"launchSpecification" }, "DiskImages":{ "shape":"DiskImageList", "locationName":"diskImage" }, "Platform":{ "shape":"PlatformValues", "locationName":"platform" } } }, "ImportInstanceResult":{ "type":"structure", "members":{ "ConversionTask":{ "shape":"ConversionTask", "locationName":"conversionTask" } } }, "ImportInstanceTaskDetails":{ "type":"structure", "required":["Volumes"], "members":{ "Volumes":{ "shape":"ImportInstanceVolumeDetailSet", "locationName":"volumes" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Platform":{ "shape":"PlatformValues", "locationName":"platform" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ImportInstanceVolumeDetailItem":{ "type":"structure", "required":[ "BytesConverted", "AvailabilityZone", "Image", "Volume", "Status" ], "members":{ "BytesConverted":{ "shape":"Long", "locationName":"bytesConverted" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Image":{ "shape":"DiskImageDescription", "locationName":"image" }, "Volume":{ "shape":"DiskImageVolumeDescription", "locationName":"volume" }, "Status":{ "shape":"String", "locationName":"status" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ImportInstanceVolumeDetailSet":{ "type":"list", "member":{ "shape":"ImportInstanceVolumeDetailItem", "locationName":"item" } }, "ImportKeyPairRequest":{ "type":"structure", "required":[ "KeyName", "PublicKeyMaterial" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "PublicKeyMaterial":{ "shape":"Blob", "locationName":"publicKeyMaterial" } } }, "ImportKeyPairResult":{ "type":"structure", "members":{ "KeyName":{ "shape":"String", "locationName":"keyName" }, "KeyFingerprint":{ "shape":"String", "locationName":"keyFingerprint" } } }, "ImportSnapshotRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "Description":{"shape":"String"}, "DiskContainer":{"shape":"SnapshotDiskContainer"}, "ClientData":{"shape":"ClientData"}, "ClientToken":{"shape":"String"}, "RoleName":{"shape":"String"} } }, "ImportSnapshotResult":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "SnapshotTaskDetail":{ "shape":"SnapshotTaskDetail", "locationName":"snapshotTaskDetail" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ImportSnapshotTask":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "SnapshotTaskDetail":{ "shape":"SnapshotTaskDetail", "locationName":"snapshotTaskDetail" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ImportSnapshotTaskList":{ "type":"list", "member":{ "shape":"ImportSnapshotTask", "locationName":"item" } }, "ImportTaskIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"ImportTaskId" } }, "ImportVolumeRequest":{ "type":"structure", "required":[ "AvailabilityZone", "Image", "Volume" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Image":{ "shape":"DiskImageDetail", "locationName":"image" }, "Description":{ "shape":"String", "locationName":"description" }, "Volume":{ "shape":"VolumeDetail", "locationName":"volume" } } }, "ImportVolumeResult":{ "type":"structure", "members":{ "ConversionTask":{ "shape":"ConversionTask", "locationName":"conversionTask" } } }, "ImportVolumeTaskDetails":{ "type":"structure", "required":[ "BytesConverted", "AvailabilityZone", "Image", "Volume" ], "members":{ "BytesConverted":{ "shape":"Long", "locationName":"bytesConverted" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Description":{ "shape":"String", "locationName":"description" }, "Image":{ "shape":"DiskImageDescription", "locationName":"image" }, "Volume":{ "shape":"DiskImageVolumeDescription", "locationName":"volume" } } }, "Instance":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "ImageId":{ "shape":"String", "locationName":"imageId" }, "State":{ "shape":"InstanceState", "locationName":"instanceState" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "PublicDnsName":{ "shape":"String", "locationName":"dnsName" }, "StateTransitionReason":{ "shape":"String", "locationName":"reason" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "AmiLaunchIndex":{ "shape":"Integer", "locationName":"amiLaunchIndex" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "LaunchTime":{ "shape":"DateTime", "locationName":"launchTime" }, "Placement":{ "shape":"Placement", "locationName":"placement" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "Platform":{ "shape":"PlatformValues", "locationName":"platform" }, "Monitoring":{ "shape":"Monitoring", "locationName":"monitoring" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PublicIpAddress":{ "shape":"String", "locationName":"ipAddress" }, "StateReason":{ "shape":"StateReason", "locationName":"stateReason" }, "Architecture":{ "shape":"ArchitectureValues", "locationName":"architecture" }, "RootDeviceType":{ "shape":"DeviceType", "locationName":"rootDeviceType" }, "RootDeviceName":{ "shape":"String", "locationName":"rootDeviceName" }, "BlockDeviceMappings":{ "shape":"InstanceBlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "VirtualizationType":{ "shape":"VirtualizationType", "locationName":"virtualizationType" }, "InstanceLifecycle":{ "shape":"InstanceLifecycleType", "locationName":"instanceLifecycle" }, "SpotInstanceRequestId":{ "shape":"String", "locationName":"spotInstanceRequestId" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "SecurityGroups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "SourceDestCheck":{ "shape":"Boolean", "locationName":"sourceDestCheck" }, "Hypervisor":{ "shape":"HypervisorType", "locationName":"hypervisor" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceList", "locationName":"networkInterfaceSet" }, "IamInstanceProfile":{ "shape":"IamInstanceProfile", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" }, "SriovNetSupport":{ "shape":"String", "locationName":"sriovNetSupport" } } }, "InstanceAttribute":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "InstanceType":{ "shape":"AttributeValue", "locationName":"instanceType" }, "KernelId":{ "shape":"AttributeValue", "locationName":"kernel" }, "RamdiskId":{ "shape":"AttributeValue", "locationName":"ramdisk" }, "UserData":{ "shape":"AttributeValue", "locationName":"userData" }, "DisableApiTermination":{ "shape":"AttributeBooleanValue", "locationName":"disableApiTermination" }, "InstanceInitiatedShutdownBehavior":{ "shape":"AttributeValue", "locationName":"instanceInitiatedShutdownBehavior" }, "RootDeviceName":{ "shape":"AttributeValue", "locationName":"rootDeviceName" }, "BlockDeviceMappings":{ "shape":"InstanceBlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" }, "EbsOptimized":{ "shape":"AttributeBooleanValue", "locationName":"ebsOptimized" }, "SriovNetSupport":{ "shape":"AttributeValue", "locationName":"sriovNetSupport" }, "SourceDestCheck":{ "shape":"AttributeBooleanValue", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" } } }, "InstanceAttributeName":{ "type":"string", "enum":[ "instanceType", "kernel", "ramdisk", "userData", "disableApiTermination", "instanceInitiatedShutdownBehavior", "rootDeviceName", "blockDeviceMapping", "productCodes", "sourceDestCheck", "groupSet", "ebsOptimized", "sriovNetSupport" ] }, "InstanceBlockDeviceMapping":{ "type":"structure", "members":{ "DeviceName":{ "shape":"String", "locationName":"deviceName" }, "Ebs":{ "shape":"EbsInstanceBlockDevice", "locationName":"ebs" } } }, "InstanceBlockDeviceMappingList":{ "type":"list", "member":{ "shape":"InstanceBlockDeviceMapping", "locationName":"item" } }, "InstanceBlockDeviceMappingSpecification":{ "type":"structure", "members":{ "DeviceName":{ "shape":"String", "locationName":"deviceName" }, "Ebs":{ "shape":"EbsInstanceBlockDeviceSpecification", "locationName":"ebs" }, "VirtualName":{ "shape":"String", "locationName":"virtualName" }, "NoDevice":{ "shape":"String", "locationName":"noDevice" } } }, "InstanceBlockDeviceMappingSpecificationList":{ "type":"list", "member":{ "shape":"InstanceBlockDeviceMappingSpecification", "locationName":"item" } }, "InstanceCount":{ "type":"structure", "members":{ "State":{ "shape":"ListingState", "locationName":"state" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" } } }, "InstanceCountList":{ "type":"list", "member":{ "shape":"InstanceCount", "locationName":"item" } }, "InstanceExportDetails":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "TargetEnvironment":{ "shape":"ExportEnvironment", "locationName":"targetEnvironment" } } }, "InstanceIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"InstanceId" } }, "InstanceLifecycleType":{ "type":"string", "enum":["spot"] }, "InstanceList":{ "type":"list", "member":{ "shape":"Instance", "locationName":"item" } }, "InstanceMonitoring":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Monitoring":{ "shape":"Monitoring", "locationName":"monitoring" } } }, "InstanceMonitoringList":{ "type":"list", "member":{ "shape":"InstanceMonitoring", "locationName":"item" } }, "InstanceNetworkInterface":{ "type":"structure", "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Description":{ "shape":"String", "locationName":"description" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "Status":{ "shape":"NetworkInterfaceStatus", "locationName":"status" }, "MacAddress":{ "shape":"String", "locationName":"macAddress" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "SourceDestCheck":{ "shape":"Boolean", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Attachment":{ "shape":"InstanceNetworkInterfaceAttachment", "locationName":"attachment" }, "Association":{ "shape":"InstanceNetworkInterfaceAssociation", "locationName":"association" }, "PrivateIpAddresses":{ "shape":"InstancePrivateIpAddressList", "locationName":"privateIpAddressesSet" } } }, "InstanceNetworkInterfaceAssociation":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "PublicDnsName":{ "shape":"String", "locationName":"publicDnsName" }, "IpOwnerId":{ "shape":"String", "locationName":"ipOwnerId" } } }, "InstanceNetworkInterfaceAttachment":{ "type":"structure", "members":{ "AttachmentId":{ "shape":"String", "locationName":"attachmentId" }, "DeviceIndex":{ "shape":"Integer", "locationName":"deviceIndex" }, "Status":{ "shape":"AttachmentStatus", "locationName":"status" }, "AttachTime":{ "shape":"DateTime", "locationName":"attachTime" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "InstanceNetworkInterfaceList":{ "type":"list", "member":{ "shape":"InstanceNetworkInterface", "locationName":"item" } }, "InstanceNetworkInterfaceSpecification":{ "type":"structure", "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "DeviceIndex":{ "shape":"Integer", "locationName":"deviceIndex" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "Description":{ "shape":"String", "locationName":"description" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "Groups":{ "shape":"SecurityGroupIdStringList", "locationName":"SecurityGroupId" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" }, "PrivateIpAddresses":{ "shape":"PrivateIpAddressSpecificationList", "locationName":"privateIpAddressesSet", "queryName":"PrivateIpAddresses" }, "SecondaryPrivateIpAddressCount":{ "shape":"Integer", "locationName":"secondaryPrivateIpAddressCount" }, "AssociatePublicIpAddress":{ "shape":"Boolean", "locationName":"associatePublicIpAddress" } } }, "InstanceNetworkInterfaceSpecificationList":{ "type":"list", "member":{ "shape":"InstanceNetworkInterfaceSpecification", "locationName":"item" } }, "InstancePrivateIpAddress":{ "type":"structure", "members":{ "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "Primary":{ "shape":"Boolean", "locationName":"primary" }, "Association":{ "shape":"InstanceNetworkInterfaceAssociation", "locationName":"association" } } }, "InstancePrivateIpAddressList":{ "type":"list", "member":{ "shape":"InstancePrivateIpAddress", "locationName":"item" } }, "InstanceState":{ "type":"structure", "members":{ "Code":{ "shape":"Integer", "locationName":"code" }, "Name":{ "shape":"InstanceStateName", "locationName":"name" } } }, "InstanceStateChange":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "CurrentState":{ "shape":"InstanceState", "locationName":"currentState" }, "PreviousState":{ "shape":"InstanceState", "locationName":"previousState" } } }, "InstanceStateChangeList":{ "type":"list", "member":{ "shape":"InstanceStateChange", "locationName":"item" } }, "InstanceStateName":{ "type":"string", "enum":[ "pending", "running", "shutting-down", "terminated", "stopping", "stopped" ] }, "InstanceStatus":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Events":{ "shape":"InstanceStatusEventList", "locationName":"eventsSet" }, "InstanceState":{ "shape":"InstanceState", "locationName":"instanceState" }, "SystemStatus":{ "shape":"InstanceStatusSummary", "locationName":"systemStatus" }, "InstanceStatus":{ "shape":"InstanceStatusSummary", "locationName":"instanceStatus" } } }, "InstanceStatusDetails":{ "type":"structure", "members":{ "Name":{ "shape":"StatusName", "locationName":"name" }, "Status":{ "shape":"StatusType", "locationName":"status" }, "ImpairedSince":{ "shape":"DateTime", "locationName":"impairedSince" } } }, "InstanceStatusDetailsList":{ "type":"list", "member":{ "shape":"InstanceStatusDetails", "locationName":"item" } }, "InstanceStatusEvent":{ "type":"structure", "members":{ "Code":{ "shape":"EventCode", "locationName":"code" }, "Description":{ "shape":"String", "locationName":"description" }, "NotBefore":{ "shape":"DateTime", "locationName":"notBefore" }, "NotAfter":{ "shape":"DateTime", "locationName":"notAfter" } } }, "InstanceStatusEventList":{ "type":"list", "member":{ "shape":"InstanceStatusEvent", "locationName":"item" } }, "InstanceStatusList":{ "type":"list", "member":{ "shape":"InstanceStatus", "locationName":"item" } }, "InstanceStatusSummary":{ "type":"structure", "members":{ "Status":{ "shape":"SummaryStatus", "locationName":"status" }, "Details":{ "shape":"InstanceStatusDetailsList", "locationName":"details" } } }, "InstanceType":{ "type":"string", "enum":[ "t1.micro", "m1.small", "m1.medium", "m1.large", "m1.xlarge", "m3.medium", "m3.large", "m3.xlarge", "m3.2xlarge", "m4.large", "m4.xlarge", "m4.2xlarge", "m4.4xlarge", "m4.10xlarge", "t2.micro", "t2.small", "t2.medium", "t2.large", "m2.xlarge", "m2.2xlarge", "m2.4xlarge", "cr1.8xlarge", "i2.xlarge", "i2.2xlarge", "i2.4xlarge", "i2.8xlarge", "hi1.4xlarge", "hs1.8xlarge", "c1.medium", "c1.xlarge", "c3.large", "c3.xlarge", "c3.2xlarge", "c3.4xlarge", "c3.8xlarge", "c4.large", "c4.xlarge", "c4.2xlarge", "c4.4xlarge", "c4.8xlarge", "cc1.4xlarge", "cc2.8xlarge", "g2.2xlarge", "cg1.4xlarge", "r3.large", "r3.xlarge", "r3.2xlarge", "r3.4xlarge", "r3.8xlarge", "d2.xlarge", "d2.2xlarge", "d2.4xlarge", "d2.8xlarge" ] }, "InstanceTypeList":{ "type":"list", "member":{"shape":"InstanceType"} }, "Integer":{"type":"integer"}, "InternetGateway":{ "type":"structure", "members":{ "InternetGatewayId":{ "shape":"String", "locationName":"internetGatewayId" }, "Attachments":{ "shape":"InternetGatewayAttachmentList", "locationName":"attachmentSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "InternetGatewayAttachment":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "State":{ "shape":"AttachmentStatus", "locationName":"state" } } }, "InternetGatewayAttachmentList":{ "type":"list", "member":{ "shape":"InternetGatewayAttachment", "locationName":"item" } }, "InternetGatewayList":{ "type":"list", "member":{ "shape":"InternetGateway", "locationName":"item" } }, "IpPermission":{ "type":"structure", "members":{ "IpProtocol":{ "shape":"String", "locationName":"ipProtocol" }, "FromPort":{ "shape":"Integer", "locationName":"fromPort" }, "ToPort":{ "shape":"Integer", "locationName":"toPort" }, "UserIdGroupPairs":{ "shape":"UserIdGroupPairList", "locationName":"groups" }, "IpRanges":{ "shape":"IpRangeList", "locationName":"ipRanges" }, "PrefixListIds":{ "shape":"PrefixListIdList", "locationName":"prefixListIds" } } }, "IpPermissionList":{ "type":"list", "member":{ "shape":"IpPermission", "locationName":"item" } }, "IpRange":{ "type":"structure", "members":{ "CidrIp":{ "shape":"String", "locationName":"cidrIp" } } }, "IpRangeList":{ "type":"list", "member":{ "shape":"IpRange", "locationName":"item" } }, "KeyNameStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"KeyName" } }, "KeyPair":{ "type":"structure", "members":{ "KeyName":{ "shape":"String", "locationName":"keyName" }, "KeyFingerprint":{ "shape":"String", "locationName":"keyFingerprint" }, "KeyMaterial":{ "shape":"String", "locationName":"keyMaterial" } } }, "KeyPairInfo":{ "type":"structure", "members":{ "KeyName":{ "shape":"String", "locationName":"keyName" }, "KeyFingerprint":{ "shape":"String", "locationName":"keyFingerprint" } } }, "KeyPairList":{ "type":"list", "member":{ "shape":"KeyPairInfo", "locationName":"item" } }, "LaunchPermission":{ "type":"structure", "members":{ "UserId":{ "shape":"String", "locationName":"userId" }, "Group":{ "shape":"PermissionGroup", "locationName":"group" } } }, "LaunchPermissionList":{ "type":"list", "member":{ "shape":"LaunchPermission", "locationName":"item" } }, "LaunchPermissionModifications":{ "type":"structure", "members":{ "Add":{"shape":"LaunchPermissionList"}, "Remove":{"shape":"LaunchPermissionList"} } }, "LaunchSpecification":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "SecurityGroups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "UserData":{ "shape":"String", "locationName":"userData" }, "AddressingType":{ "shape":"String", "locationName":"addressingType" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "Placement":{ "shape":"SpotPlacement", "locationName":"placement" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceSpecificationList", "locationName":"networkInterfaceSet" }, "IamInstanceProfile":{ "shape":"IamInstanceProfileSpecification", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" }, "Monitoring":{ "shape":"RunInstancesMonitoringEnabled", "locationName":"monitoring" } } }, "LaunchSpecsList":{ "type":"list", "member":{ "shape":"SpotFleetLaunchSpecification", "locationName":"item" }, "min":1 }, "ListingState":{ "type":"string", "enum":[ "available", "sold", "cancelled", "pending" ] }, "ListingStatus":{ "type":"string", "enum":[ "active", "pending", "cancelled", "closed" ] }, "Long":{"type":"long"}, "ModifyImageAttributeRequest":{ "type":"structure", "required":["ImageId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"}, "Attribute":{"shape":"String"}, "OperationType":{"shape":"OperationType"}, "UserIds":{ "shape":"UserIdStringList", "locationName":"UserId" }, "UserGroups":{ "shape":"UserGroupStringList", "locationName":"UserGroup" }, "ProductCodes":{ "shape":"ProductCodeStringList", "locationName":"ProductCode" }, "Value":{"shape":"String"}, "LaunchPermission":{"shape":"LaunchPermissionModifications"}, "Description":{"shape":"AttributeValue"} } }, "ModifyInstanceAttributeRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Attribute":{ "shape":"InstanceAttributeName", "locationName":"attribute" }, "Value":{ "shape":"String", "locationName":"value" }, "BlockDeviceMappings":{ "shape":"InstanceBlockDeviceMappingSpecificationList", "locationName":"blockDeviceMapping" }, "SourceDestCheck":{"shape":"AttributeBooleanValue"}, "DisableApiTermination":{ "shape":"AttributeBooleanValue", "locationName":"disableApiTermination" }, "InstanceType":{ "shape":"AttributeValue", "locationName":"instanceType" }, "Kernel":{ "shape":"AttributeValue", "locationName":"kernel" }, "Ramdisk":{ "shape":"AttributeValue", "locationName":"ramdisk" }, "UserData":{ "shape":"BlobAttributeValue", "locationName":"userData" }, "InstanceInitiatedShutdownBehavior":{ "shape":"AttributeValue", "locationName":"instanceInitiatedShutdownBehavior" }, "Groups":{ "shape":"GroupIdStringList", "locationName":"GroupId" }, "EbsOptimized":{ "shape":"AttributeBooleanValue", "locationName":"ebsOptimized" }, "SriovNetSupport":{ "shape":"AttributeValue", "locationName":"sriovNetSupport" } } }, "ModifyNetworkInterfaceAttributeRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "Description":{ "shape":"AttributeValue", "locationName":"description" }, "SourceDestCheck":{ "shape":"AttributeBooleanValue", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"SecurityGroupIdStringList", "locationName":"SecurityGroupId" }, "Attachment":{ "shape":"NetworkInterfaceAttachmentChanges", "locationName":"attachment" } } }, "ModifyReservedInstancesRequest":{ "type":"structure", "required":[ "ReservedInstancesIds", "TargetConfigurations" ], "members":{ "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "ReservedInstancesIds":{ "shape":"ReservedInstancesIdStringList", "locationName":"ReservedInstancesId" }, "TargetConfigurations":{ "shape":"ReservedInstancesConfigurationList", "locationName":"ReservedInstancesConfigurationSetItemType" } } }, "ModifyReservedInstancesResult":{ "type":"structure", "members":{ "ReservedInstancesModificationId":{ "shape":"String", "locationName":"reservedInstancesModificationId" } } }, "ModifySnapshotAttributeRequest":{ "type":"structure", "required":["SnapshotId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotId":{"shape":"String"}, "Attribute":{"shape":"SnapshotAttributeName"}, "OperationType":{"shape":"OperationType"}, "UserIds":{ "shape":"UserIdStringList", "locationName":"UserId" }, "GroupNames":{ "shape":"GroupNameStringList", "locationName":"UserGroup" }, "CreateVolumePermission":{"shape":"CreateVolumePermissionModifications"} } }, "ModifySubnetAttributeRequest":{ "type":"structure", "required":["SubnetId"], "members":{ "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "MapPublicIpOnLaunch":{"shape":"AttributeBooleanValue"} } }, "ModifyVolumeAttributeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "AutoEnableIO":{"shape":"AttributeBooleanValue"} } }, "ModifyVpcAttributeRequest":{ "type":"structure", "required":["VpcId"], "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "EnableDnsSupport":{"shape":"AttributeBooleanValue"}, "EnableDnsHostnames":{"shape":"AttributeBooleanValue"} } }, "ModifyVpcEndpointRequest":{ "type":"structure", "required":["VpcEndpointId"], "members":{ "DryRun":{"shape":"Boolean"}, "VpcEndpointId":{"shape":"String"}, "ResetPolicy":{"shape":"Boolean"}, "PolicyDocument":{"shape":"String"}, "AddRouteTableIds":{ "shape":"ValueStringList", "locationName":"AddRouteTableId" }, "RemoveRouteTableIds":{ "shape":"ValueStringList", "locationName":"RemoveRouteTableId" } } }, "ModifyVpcEndpointResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "MonitorInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" } } }, "MonitorInstancesResult":{ "type":"structure", "members":{ "InstanceMonitorings":{ "shape":"InstanceMonitoringList", "locationName":"instancesSet" } } }, "Monitoring":{ "type":"structure", "members":{ "State":{ "shape":"MonitoringState", "locationName":"state" } } }, "MonitoringState":{ "type":"string", "enum":[ "disabled", "disabling", "enabled", "pending" ] }, "MoveAddressToVpcRequest":{ "type":"structure", "required":["PublicIp"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIp":{ "shape":"String", "locationName":"publicIp" } } }, "MoveAddressToVpcResult":{ "type":"structure", "members":{ "AllocationId":{ "shape":"String", "locationName":"allocationId" }, "Status":{ "shape":"Status", "locationName":"status" } } }, "MoveStatus":{ "type":"string", "enum":[ "movingToVpc", "restoringToClassic" ] }, "MovingAddressStatus":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "MoveStatus":{ "shape":"MoveStatus", "locationName":"moveStatus" } } }, "MovingAddressStatusSet":{ "type":"list", "member":{ "shape":"MovingAddressStatus", "locationName":"item" } }, "NetworkAcl":{ "type":"structure", "members":{ "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "IsDefault":{ "shape":"Boolean", "locationName":"default" }, "Entries":{ "shape":"NetworkAclEntryList", "locationName":"entrySet" }, "Associations":{ "shape":"NetworkAclAssociationList", "locationName":"associationSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "NetworkAclAssociation":{ "type":"structure", "members":{ "NetworkAclAssociationId":{ "shape":"String", "locationName":"networkAclAssociationId" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" } } }, "NetworkAclAssociationList":{ "type":"list", "member":{ "shape":"NetworkAclAssociation", "locationName":"item" } }, "NetworkAclEntry":{ "type":"structure", "members":{ "RuleNumber":{ "shape":"Integer", "locationName":"ruleNumber" }, "Protocol":{ "shape":"String", "locationName":"protocol" }, "RuleAction":{ "shape":"RuleAction", "locationName":"ruleAction" }, "Egress":{ "shape":"Boolean", "locationName":"egress" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "IcmpTypeCode":{ "shape":"IcmpTypeCode", "locationName":"icmpTypeCode" }, "PortRange":{ "shape":"PortRange", "locationName":"portRange" } } }, "NetworkAclEntryList":{ "type":"list", "member":{ "shape":"NetworkAclEntry", "locationName":"item" } }, "NetworkAclList":{ "type":"list", "member":{ "shape":"NetworkAcl", "locationName":"item" } }, "NetworkInterface":{ "type":"structure", "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Description":{ "shape":"String", "locationName":"description" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "RequesterId":{ "shape":"String", "locationName":"requesterId" }, "RequesterManaged":{ "shape":"Boolean", "locationName":"requesterManaged" }, "Status":{ "shape":"NetworkInterfaceStatus", "locationName":"status" }, "MacAddress":{ "shape":"String", "locationName":"macAddress" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "SourceDestCheck":{ "shape":"Boolean", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Attachment":{ "shape":"NetworkInterfaceAttachment", "locationName":"attachment" }, "Association":{ "shape":"NetworkInterfaceAssociation", "locationName":"association" }, "TagSet":{ "shape":"TagList", "locationName":"tagSet" }, "PrivateIpAddresses":{ "shape":"NetworkInterfacePrivateIpAddressList", "locationName":"privateIpAddressesSet" } } }, "NetworkInterfaceAssociation":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "PublicDnsName":{ "shape":"String", "locationName":"publicDnsName" }, "IpOwnerId":{ "shape":"String", "locationName":"ipOwnerId" }, "AllocationId":{ "shape":"String", "locationName":"allocationId" }, "AssociationId":{ "shape":"String", "locationName":"associationId" } } }, "NetworkInterfaceAttachment":{ "type":"structure", "members":{ "AttachmentId":{ "shape":"String", "locationName":"attachmentId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "InstanceOwnerId":{ "shape":"String", "locationName":"instanceOwnerId" }, "DeviceIndex":{ "shape":"Integer", "locationName":"deviceIndex" }, "Status":{ "shape":"AttachmentStatus", "locationName":"status" }, "AttachTime":{ "shape":"DateTime", "locationName":"attachTime" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "NetworkInterfaceAttachmentChanges":{ "type":"structure", "members":{ "AttachmentId":{ "shape":"String", "locationName":"attachmentId" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "NetworkInterfaceAttribute":{ "type":"string", "enum":[ "description", "groupSet", "sourceDestCheck", "attachment" ] }, "NetworkInterfaceIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "NetworkInterfaceList":{ "type":"list", "member":{ "shape":"NetworkInterface", "locationName":"item" } }, "NetworkInterfacePrivateIpAddress":{ "type":"structure", "members":{ "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "Primary":{ "shape":"Boolean", "locationName":"primary" }, "Association":{ "shape":"NetworkInterfaceAssociation", "locationName":"association" } } }, "NetworkInterfacePrivateIpAddressList":{ "type":"list", "member":{ "shape":"NetworkInterfacePrivateIpAddress", "locationName":"item" } }, "NetworkInterfaceStatus":{ "type":"string", "enum":[ "available", "attaching", "in-use", "detaching" ] }, "OfferingTypeValues":{ "type":"string", "enum":[ "Heavy Utilization", "Medium Utilization", "Light Utilization", "No Upfront", "Partial Upfront", "All Upfront" ] }, "OperationType":{ "type":"string", "enum":[ "add", "remove" ] }, "OwnerStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"Owner" } }, "PermissionGroup":{ "type":"string", "enum":["all"] }, "Placement":{ "type":"structure", "members":{ "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "Tenancy":{ "shape":"Tenancy", "locationName":"tenancy" } } }, "PlacementGroup":{ "type":"structure", "members":{ "GroupName":{ "shape":"String", "locationName":"groupName" }, "Strategy":{ "shape":"PlacementStrategy", "locationName":"strategy" }, "State":{ "shape":"PlacementGroupState", "locationName":"state" } } }, "PlacementGroupList":{ "type":"list", "member":{ "shape":"PlacementGroup", "locationName":"item" } }, "PlacementGroupState":{ "type":"string", "enum":[ "pending", "available", "deleting", "deleted" ] }, "PlacementGroupStringList":{ "type":"list", "member":{"shape":"String"} }, "PlacementStrategy":{ "type":"string", "enum":["cluster"] }, "PlatformValues":{ "type":"string", "enum":["Windows"] }, "PortRange":{ "type":"structure", "members":{ "From":{ "shape":"Integer", "locationName":"from" }, "To":{ "shape":"Integer", "locationName":"to" } } }, "PrefixList":{ "type":"structure", "members":{ "PrefixListId":{ "shape":"String", "locationName":"prefixListId" }, "PrefixListName":{ "shape":"String", "locationName":"prefixListName" }, "Cidrs":{ "shape":"ValueStringList", "locationName":"cidrSet" } } }, "PrefixListId":{ "type":"structure", "members":{ "PrefixListId":{ "shape":"String", "locationName":"prefixListId" } } }, "PrefixListIdList":{ "type":"list", "member":{ "shape":"PrefixListId", "locationName":"item" } }, "PrefixListSet":{ "type":"list", "member":{ "shape":"PrefixList", "locationName":"item" } }, "PriceSchedule":{ "type":"structure", "members":{ "Term":{ "shape":"Long", "locationName":"term" }, "Price":{ "shape":"Double", "locationName":"price" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "Active":{ "shape":"Boolean", "locationName":"active" } } }, "PriceScheduleList":{ "type":"list", "member":{ "shape":"PriceSchedule", "locationName":"item" } }, "PriceScheduleSpecification":{ "type":"structure", "members":{ "Term":{ "shape":"Long", "locationName":"term" }, "Price":{ "shape":"Double", "locationName":"price" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" } } }, "PriceScheduleSpecificationList":{ "type":"list", "member":{ "shape":"PriceScheduleSpecification", "locationName":"item" } }, "PricingDetail":{ "type":"structure", "members":{ "Price":{ "shape":"Double", "locationName":"price" }, "Count":{ "shape":"Integer", "locationName":"count" } } }, "PricingDetailsList":{ "type":"list", "member":{ "shape":"PricingDetail", "locationName":"item" } }, "PrivateIpAddressSpecification":{ "type":"structure", "required":["PrivateIpAddress"], "members":{ "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "Primary":{ "shape":"Boolean", "locationName":"primary" } } }, "PrivateIpAddressSpecificationList":{ "type":"list", "member":{ "shape":"PrivateIpAddressSpecification", "locationName":"item" } }, "PrivateIpAddressStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"PrivateIpAddress" } }, "ProductCode":{ "type":"structure", "members":{ "ProductCodeId":{ "shape":"String", "locationName":"productCode" }, "ProductCodeType":{ "shape":"ProductCodeValues", "locationName":"type" } } }, "ProductCodeList":{ "type":"list", "member":{ "shape":"ProductCode", "locationName":"item" } }, "ProductCodeStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ProductCode" } }, "ProductCodeValues":{ "type":"string", "enum":[ "devpay", "marketplace" ] }, "ProductDescriptionList":{ "type":"list", "member":{"shape":"String"} }, "PropagatingVgw":{ "type":"structure", "members":{ "GatewayId":{ "shape":"String", "locationName":"gatewayId" } } }, "PropagatingVgwList":{ "type":"list", "member":{ "shape":"PropagatingVgw", "locationName":"item" } }, "PublicIpStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"PublicIp" } }, "PurchaseReservedInstancesOfferingRequest":{ "type":"structure", "required":[ "ReservedInstancesOfferingId", "InstanceCount" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ReservedInstancesOfferingId":{"shape":"String"}, "InstanceCount":{"shape":"Integer"}, "LimitPrice":{ "shape":"ReservedInstanceLimitPrice", "locationName":"limitPrice" } } }, "PurchaseReservedInstancesOfferingResult":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" } } }, "RIProductDescription":{ "type":"string", "enum":[ "Linux/UNIX", "Linux/UNIX (Amazon VPC)", "Windows", "Windows (Amazon VPC)" ] }, "ReasonCodesList":{ "type":"list", "member":{ "shape":"ReportInstanceReasonCodes", "locationName":"item" } }, "RebootInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" } } }, "RecurringCharge":{ "type":"structure", "members":{ "Frequency":{ "shape":"RecurringChargeFrequency", "locationName":"frequency" }, "Amount":{ "shape":"Double", "locationName":"amount" } } }, "RecurringChargeFrequency":{ "type":"string", "enum":["Hourly"] }, "RecurringChargesList":{ "type":"list", "member":{ "shape":"RecurringCharge", "locationName":"item" } }, "Region":{ "type":"structure", "members":{ "RegionName":{ "shape":"String", "locationName":"regionName" }, "Endpoint":{ "shape":"String", "locationName":"regionEndpoint" } } }, "RegionList":{ "type":"list", "member":{ "shape":"Region", "locationName":"item" } }, "RegionNameStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"RegionName" } }, "RegisterImageRequest":{ "type":"structure", "required":["Name"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageLocation":{"shape":"String"}, "Name":{ "shape":"String", "locationName":"name" }, "Description":{ "shape":"String", "locationName":"description" }, "Architecture":{ "shape":"ArchitectureValues", "locationName":"architecture" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "RootDeviceName":{ "shape":"String", "locationName":"rootDeviceName" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingRequestList", "locationName":"BlockDeviceMapping" }, "VirtualizationType":{ "shape":"String", "locationName":"virtualizationType" }, "SriovNetSupport":{ "shape":"String", "locationName":"sriovNetSupport" } } }, "RegisterImageResult":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" } } }, "RejectVpcPeeringConnectionRequest":{ "type":"structure", "required":["VpcPeeringConnectionId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "RejectVpcPeeringConnectionResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "ReleaseAddressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIp":{"shape":"String"}, "AllocationId":{"shape":"String"} } }, "ReplaceNetworkAclAssociationRequest":{ "type":"structure", "required":[ "AssociationId", "NetworkAclId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AssociationId":{ "shape":"String", "locationName":"associationId" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" } } }, "ReplaceNetworkAclAssociationResult":{ "type":"structure", "members":{ "NewAssociationId":{ "shape":"String", "locationName":"newAssociationId" } } }, "ReplaceNetworkAclEntryRequest":{ "type":"structure", "required":[ "NetworkAclId", "RuleNumber", "Protocol", "RuleAction", "Egress", "CidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "RuleNumber":{ "shape":"Integer", "locationName":"ruleNumber" }, "Protocol":{ "shape":"String", "locationName":"protocol" }, "RuleAction":{ "shape":"RuleAction", "locationName":"ruleAction" }, "Egress":{ "shape":"Boolean", "locationName":"egress" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "IcmpTypeCode":{ "shape":"IcmpTypeCode", "locationName":"Icmp" }, "PortRange":{ "shape":"PortRange", "locationName":"portRange" } } }, "ReplaceRouteRequest":{ "type":"structure", "required":[ "RouteTableId", "DestinationCidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" }, "GatewayId":{ "shape":"String", "locationName":"gatewayId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "ReplaceRouteTableAssociationRequest":{ "type":"structure", "required":[ "AssociationId", "RouteTableId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AssociationId":{ "shape":"String", "locationName":"associationId" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" } } }, "ReplaceRouteTableAssociationResult":{ "type":"structure", "members":{ "NewAssociationId":{ "shape":"String", "locationName":"newAssociationId" } } }, "ReportInstanceReasonCodes":{ "type":"string", "enum":[ "instance-stuck-in-state", "unresponsive", "not-accepting-credentials", "password-not-available", "performance-network", "performance-instance-store", "performance-ebs-volume", "performance-other", "other" ] }, "ReportInstanceStatusRequest":{ "type":"structure", "required":[ "Instances", "Status", "ReasonCodes" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Instances":{ "shape":"InstanceIdStringList", "locationName":"instanceId" }, "Status":{ "shape":"ReportStatusType", "locationName":"status" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "EndTime":{ "shape":"DateTime", "locationName":"endTime" }, "ReasonCodes":{ "shape":"ReasonCodesList", "locationName":"reasonCode" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ReportStatusType":{ "type":"string", "enum":[ "ok", "impaired" ] }, "RequestSpotFleetRequest":{ "type":"structure", "required":["SpotFleetRequestConfig"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestConfig":{ "shape":"SpotFleetRequestConfigData", "locationName":"spotFleetRequestConfig" } } }, "RequestSpotFleetResponse":{ "type":"structure", "required":["SpotFleetRequestId"], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" } } }, "RequestSpotInstancesRequest":{ "type":"structure", "required":["SpotPrice"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "Type":{ "shape":"SpotInstanceType", "locationName":"type" }, "ValidFrom":{ "shape":"DateTime", "locationName":"validFrom" }, "ValidUntil":{ "shape":"DateTime", "locationName":"validUntil" }, "LaunchGroup":{ "shape":"String", "locationName":"launchGroup" }, "AvailabilityZoneGroup":{ "shape":"String", "locationName":"availabilityZoneGroup" }, "LaunchSpecification":{"shape":"RequestSpotLaunchSpecification"} } }, "RequestSpotInstancesResult":{ "type":"structure", "members":{ "SpotInstanceRequests":{ "shape":"SpotInstanceRequestList", "locationName":"spotInstanceRequestSet" } } }, "Reservation":{ "type":"structure", "members":{ "ReservationId":{ "shape":"String", "locationName":"reservationId" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "RequesterId":{ "shape":"String", "locationName":"requesterId" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Instances":{ "shape":"InstanceList", "locationName":"instancesSet" } } }, "ReservationList":{ "type":"list", "member":{ "shape":"Reservation", "locationName":"item" } }, "ReservedInstanceLimitPrice":{ "type":"structure", "members":{ "Amount":{ "shape":"Double", "locationName":"amount" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" } } }, "ReservedInstanceState":{ "type":"string", "enum":[ "payment-pending", "active", "payment-failed", "retired" ] }, "ReservedInstances":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Start":{ "shape":"DateTime", "locationName":"start" }, "End":{ "shape":"DateTime", "locationName":"end" }, "Duration":{ "shape":"Long", "locationName":"duration" }, "UsagePrice":{ "shape":"Float", "locationName":"usagePrice" }, "FixedPrice":{ "shape":"Float", "locationName":"fixedPrice" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "ProductDescription":{ "shape":"RIProductDescription", "locationName":"productDescription" }, "State":{ "shape":"ReservedInstanceState", "locationName":"state" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "OfferingType":{ "shape":"OfferingTypeValues", "locationName":"offeringType" }, "RecurringCharges":{ "shape":"RecurringChargesList", "locationName":"recurringCharges" } } }, "ReservedInstancesConfiguration":{ "type":"structure", "members":{ "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Platform":{ "shape":"String", "locationName":"platform" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" } } }, "ReservedInstancesConfigurationList":{ "type":"list", "member":{ "shape":"ReservedInstancesConfiguration", "locationName":"item" } }, "ReservedInstancesId":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" } } }, "ReservedInstancesIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ReservedInstancesId" } }, "ReservedInstancesList":{ "type":"list", "member":{ "shape":"ReservedInstances", "locationName":"item" } }, "ReservedInstancesListing":{ "type":"structure", "members":{ "ReservedInstancesListingId":{ "shape":"String", "locationName":"reservedInstancesListingId" }, "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "CreateDate":{ "shape":"DateTime", "locationName":"createDate" }, "UpdateDate":{ "shape":"DateTime", "locationName":"updateDate" }, "Status":{ "shape":"ListingStatus", "locationName":"status" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "InstanceCounts":{ "shape":"InstanceCountList", "locationName":"instanceCounts" }, "PriceSchedules":{ "shape":"PriceScheduleList", "locationName":"priceSchedules" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "ReservedInstancesListingList":{ "type":"list", "member":{ "shape":"ReservedInstancesListing", "locationName":"item" } }, "ReservedInstancesModification":{ "type":"structure", "members":{ "ReservedInstancesModificationId":{ "shape":"String", "locationName":"reservedInstancesModificationId" }, "ReservedInstancesIds":{ "shape":"ReservedIntancesIds", "locationName":"reservedInstancesSet" }, "ModificationResults":{ "shape":"ReservedInstancesModificationResultList", "locationName":"modificationResultSet" }, "CreateDate":{ "shape":"DateTime", "locationName":"createDate" }, "UpdateDate":{ "shape":"DateTime", "locationName":"updateDate" }, "EffectiveDate":{ "shape":"DateTime", "locationName":"effectiveDate" }, "Status":{ "shape":"String", "locationName":"status" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "ReservedInstancesModificationIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ReservedInstancesModificationId" } }, "ReservedInstancesModificationList":{ "type":"list", "member":{ "shape":"ReservedInstancesModification", "locationName":"item" } }, "ReservedInstancesModificationResult":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "TargetConfiguration":{ "shape":"ReservedInstancesConfiguration", "locationName":"targetConfiguration" } } }, "ReservedInstancesModificationResultList":{ "type":"list", "member":{ "shape":"ReservedInstancesModificationResult", "locationName":"item" } }, "ReservedInstancesOffering":{ "type":"structure", "members":{ "ReservedInstancesOfferingId":{ "shape":"String", "locationName":"reservedInstancesOfferingId" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Duration":{ "shape":"Long", "locationName":"duration" }, "UsagePrice":{ "shape":"Float", "locationName":"usagePrice" }, "FixedPrice":{ "shape":"Float", "locationName":"fixedPrice" }, "ProductDescription":{ "shape":"RIProductDescription", "locationName":"productDescription" }, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "OfferingType":{ "shape":"OfferingTypeValues", "locationName":"offeringType" }, "RecurringCharges":{ "shape":"RecurringChargesList", "locationName":"recurringCharges" }, "Marketplace":{ "shape":"Boolean", "locationName":"marketplace" }, "PricingDetails":{ "shape":"PricingDetailsList", "locationName":"pricingDetailsSet" } } }, "ReservedInstancesOfferingIdStringList":{ "type":"list", "member":{"shape":"String"} }, "ReservedInstancesOfferingList":{ "type":"list", "member":{ "shape":"ReservedInstancesOffering", "locationName":"item" } }, "ReservedIntancesIds":{ "type":"list", "member":{ "shape":"ReservedInstancesId", "locationName":"item" } }, "ResetImageAttributeName":{ "type":"string", "enum":["launchPermission"] }, "ResetImageAttributeRequest":{ "type":"structure", "required":[ "ImageId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"}, "Attribute":{"shape":"ResetImageAttributeName"} } }, "ResetInstanceAttributeRequest":{ "type":"structure", "required":[ "InstanceId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Attribute":{ "shape":"InstanceAttributeName", "locationName":"attribute" } } }, "ResetNetworkInterfaceAttributeRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "SourceDestCheck":{ "shape":"String", "locationName":"sourceDestCheck" } } }, "ResetSnapshotAttributeRequest":{ "type":"structure", "required":[ "SnapshotId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotId":{"shape":"String"}, "Attribute":{"shape":"SnapshotAttributeName"} } }, "ResourceIdList":{ "type":"list", "member":{"shape":"String"} }, "ResourceType":{ "type":"string", "enum":[ "customer-gateway", "dhcp-options", "image", "instance", "internet-gateway", "network-acl", "network-interface", "reserved-instances", "route-table", "snapshot", "spot-instances-request", "subnet", "security-group", "volume", "vpc", "vpn-connection", "vpn-gateway" ] }, "RestorableByStringList":{ "type":"list", "member":{"shape":"String"} }, "RestoreAddressToClassicRequest":{ "type":"structure", "required":["PublicIp"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIp":{ "shape":"String", "locationName":"publicIp" } } }, "RestoreAddressToClassicResult":{ "type":"structure", "members":{ "Status":{ "shape":"Status", "locationName":"status" }, "PublicIp":{ "shape":"String", "locationName":"publicIp" } } }, "RevokeSecurityGroupEgressRequest":{ "type":"structure", "required":["GroupId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupId":{ "shape":"String", "locationName":"groupId" }, "SourceSecurityGroupName":{ "shape":"String", "locationName":"sourceSecurityGroupName" }, "SourceSecurityGroupOwnerId":{ "shape":"String", "locationName":"sourceSecurityGroupOwnerId" }, "IpProtocol":{ "shape":"String", "locationName":"ipProtocol" }, "FromPort":{ "shape":"Integer", "locationName":"fromPort" }, "ToPort":{ "shape":"Integer", "locationName":"toPort" }, "CidrIp":{ "shape":"String", "locationName":"cidrIp" }, "IpPermissions":{ "shape":"IpPermissionList", "locationName":"ipPermissions" } } }, "RevokeSecurityGroupIngressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{"shape":"String"}, "GroupId":{"shape":"String"}, "SourceSecurityGroupName":{"shape":"String"}, "SourceSecurityGroupOwnerId":{"shape":"String"}, "IpProtocol":{"shape":"String"}, "FromPort":{"shape":"Integer"}, "ToPort":{"shape":"Integer"}, "CidrIp":{"shape":"String"}, "IpPermissions":{"shape":"IpPermissionList"} } }, "Route":{ "type":"structure", "members":{ "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" }, "DestinationPrefixListId":{ "shape":"String", "locationName":"destinationPrefixListId" }, "GatewayId":{ "shape":"String", "locationName":"gatewayId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "InstanceOwnerId":{ "shape":"String", "locationName":"instanceOwnerId" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" }, "State":{ "shape":"RouteState", "locationName":"state" }, "Origin":{ "shape":"RouteOrigin", "locationName":"origin" } } }, "RouteList":{ "type":"list", "member":{ "shape":"Route", "locationName":"item" } }, "RouteOrigin":{ "type":"string", "enum":[ "CreateRouteTable", "CreateRoute", "EnableVgwRoutePropagation" ] }, "RouteState":{ "type":"string", "enum":[ "active", "blackhole" ] }, "RouteTable":{ "type":"structure", "members":{ "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Routes":{ "shape":"RouteList", "locationName":"routeSet" }, "Associations":{ "shape":"RouteTableAssociationList", "locationName":"associationSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "PropagatingVgws":{ "shape":"PropagatingVgwList", "locationName":"propagatingVgwSet" } } }, "RouteTableAssociation":{ "type":"structure", "members":{ "RouteTableAssociationId":{ "shape":"String", "locationName":"routeTableAssociationId" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "Main":{ "shape":"Boolean", "locationName":"main" } } }, "RouteTableAssociationList":{ "type":"list", "member":{ "shape":"RouteTableAssociation", "locationName":"item" } }, "RouteTableList":{ "type":"list", "member":{ "shape":"RouteTable", "locationName":"item" } }, "RuleAction":{ "type":"string", "enum":[ "allow", "deny" ] }, "RunInstancesMonitoringEnabled":{ "type":"structure", "required":["Enabled"], "members":{ "Enabled":{ "shape":"Boolean", "locationName":"enabled" } } }, "RunInstancesRequest":{ "type":"structure", "required":[ "ImageId", "MinCount", "MaxCount" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"}, "MinCount":{"shape":"Integer"}, "MaxCount":{"shape":"Integer"}, "KeyName":{"shape":"String"}, "SecurityGroups":{ "shape":"SecurityGroupStringList", "locationName":"SecurityGroup" }, "SecurityGroupIds":{ "shape":"SecurityGroupIdStringList", "locationName":"SecurityGroupId" }, "UserData":{"shape":"String"}, "InstanceType":{"shape":"InstanceType"}, "Placement":{"shape":"Placement"}, "KernelId":{"shape":"String"}, "RamdiskId":{"shape":"String"}, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingRequestList", "locationName":"BlockDeviceMapping" }, "Monitoring":{"shape":"RunInstancesMonitoringEnabled"}, "SubnetId":{"shape":"String"}, "DisableApiTermination":{ "shape":"Boolean", "locationName":"disableApiTermination" }, "InstanceInitiatedShutdownBehavior":{ "shape":"ShutdownBehavior", "locationName":"instanceInitiatedShutdownBehavior" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "AdditionalInfo":{ "shape":"String", "locationName":"additionalInfo" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceSpecificationList", "locationName":"networkInterface" }, "IamInstanceProfile":{ "shape":"IamInstanceProfileSpecification", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" } } }, "S3Storage":{ "type":"structure", "members":{ "Bucket":{ "shape":"String", "locationName":"bucket" }, "Prefix":{ "shape":"String", "locationName":"prefix" }, "AWSAccessKeyId":{"shape":"String"}, "UploadPolicy":{ "shape":"Blob", "locationName":"uploadPolicy" }, "UploadPolicySignature":{ "shape":"String", "locationName":"uploadPolicySignature" } } }, "SecurityGroup":{ "type":"structure", "members":{ "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "GroupId":{ "shape":"String", "locationName":"groupId" }, "Description":{ "shape":"String", "locationName":"groupDescription" }, "IpPermissions":{ "shape":"IpPermissionList", "locationName":"ipPermissions" }, "IpPermissionsEgress":{ "shape":"IpPermissionList", "locationName":"ipPermissionsEgress" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "SecurityGroupIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"SecurityGroupId" } }, "SecurityGroupList":{ "type":"list", "member":{ "shape":"SecurityGroup", "locationName":"item" } }, "SecurityGroupStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"SecurityGroup" } }, "ShutdownBehavior":{ "type":"string", "enum":[ "stop", "terminate" ] }, "Snapshot":{ "type":"structure", "members":{ "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "State":{ "shape":"SnapshotState", "locationName":"status" }, "StateMessage":{ "shape":"String", "locationName":"statusMessage" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "Progress":{ "shape":"String", "locationName":"progress" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "Description":{ "shape":"String", "locationName":"description" }, "VolumeSize":{ "shape":"Integer", "locationName":"volumeSize" }, "OwnerAlias":{ "shape":"String", "locationName":"ownerAlias" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{ "shape":"String", "locationName":"kmsKeyId" }, "DataEncryptionKeyId":{ "shape":"String", "locationName":"dataEncryptionKeyId" } } }, "SnapshotAttributeName":{ "type":"string", "enum":[ "productCodes", "createVolumePermission" ] }, "SnapshotDetail":{ "type":"structure", "members":{ "DiskImageSize":{ "shape":"Double", "locationName":"diskImageSize" }, "Description":{ "shape":"String", "locationName":"description" }, "Format":{ "shape":"String", "locationName":"format" }, "Url":{ "shape":"String", "locationName":"url" }, "UserBucket":{ "shape":"UserBucketDetails", "locationName":"userBucket" }, "DeviceName":{ "shape":"String", "locationName":"deviceName" }, "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "Progress":{ "shape":"String", "locationName":"progress" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Status":{ "shape":"String", "locationName":"status" } } }, "SnapshotDetailList":{ "type":"list", "member":{ "shape":"SnapshotDetail", "locationName":"item" } }, "SnapshotDiskContainer":{ "type":"structure", "members":{ "Description":{"shape":"String"}, "Format":{"shape":"String"}, "Url":{"shape":"String"}, "UserBucket":{"shape":"UserBucket"} } }, "SnapshotIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"SnapshotId" } }, "SnapshotList":{ "type":"list", "member":{ "shape":"Snapshot", "locationName":"item" } }, "SnapshotState":{ "type":"string", "enum":[ "pending", "completed", "error" ] }, "SnapshotTaskDetail":{ "type":"structure", "members":{ "DiskImageSize":{ "shape":"Double", "locationName":"diskImageSize" }, "Description":{ "shape":"String", "locationName":"description" }, "Format":{ "shape":"String", "locationName":"format" }, "Url":{ "shape":"String", "locationName":"url" }, "UserBucket":{ "shape":"UserBucketDetails", "locationName":"userBucket" }, "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "Progress":{ "shape":"String", "locationName":"progress" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Status":{ "shape":"String", "locationName":"status" } } }, "SpotDatafeedSubscription":{ "type":"structure", "members":{ "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "Bucket":{ "shape":"String", "locationName":"bucket" }, "Prefix":{ "shape":"String", "locationName":"prefix" }, "State":{ "shape":"DatafeedSubscriptionState", "locationName":"state" }, "Fault":{ "shape":"SpotInstanceStateFault", "locationName":"fault" } } }, "SpotFleetLaunchSpecification":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "SecurityGroups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "UserData":{ "shape":"String", "locationName":"userData" }, "AddressingType":{ "shape":"String", "locationName":"addressingType" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "Placement":{ "shape":"SpotPlacement", "locationName":"placement" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "Monitoring":{ "shape":"SpotFleetMonitoring", "locationName":"monitoring" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceSpecificationList", "locationName":"networkInterfaceSet" }, "IamInstanceProfile":{ "shape":"IamInstanceProfileSpecification", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" }, "WeightedCapacity":{ "shape":"Double", "locationName":"weightedCapacity" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" } } }, "SpotFleetMonitoring":{ "type":"structure", "members":{ "Enabled":{ "shape":"Boolean", "locationName":"enabled" } } }, "SpotFleetRequestConfig":{ "type":"structure", "required":[ "SpotFleetRequestId", "SpotFleetRequestState", "SpotFleetRequestConfig" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "SpotFleetRequestState":{ "shape":"BatchState", "locationName":"spotFleetRequestState" }, "SpotFleetRequestConfig":{ "shape":"SpotFleetRequestConfigData", "locationName":"spotFleetRequestConfig" } } }, "SpotFleetRequestConfigData":{ "type":"structure", "required":[ "SpotPrice", "TargetCapacity", "IamFleetRole", "LaunchSpecifications" ], "members":{ "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" }, "TargetCapacity":{ "shape":"Integer", "locationName":"targetCapacity" }, "ValidFrom":{ "shape":"DateTime", "locationName":"validFrom" }, "ValidUntil":{ "shape":"DateTime", "locationName":"validUntil" }, "TerminateInstancesWithExpiration":{ "shape":"Boolean", "locationName":"terminateInstancesWithExpiration" }, "IamFleetRole":{ "shape":"String", "locationName":"iamFleetRole" }, "LaunchSpecifications":{ "shape":"LaunchSpecsList", "locationName":"launchSpecifications" }, "AllocationStrategy":{ "shape":"AllocationStrategy", "locationName":"allocationStrategy" } } }, "SpotFleetRequestConfigSet":{ "type":"list", "member":{ "shape":"SpotFleetRequestConfig", "locationName":"item" } }, "SpotInstanceRequest":{ "type":"structure", "members":{ "SpotInstanceRequestId":{ "shape":"String", "locationName":"spotInstanceRequestId" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" }, "Type":{ "shape":"SpotInstanceType", "locationName":"type" }, "State":{ "shape":"SpotInstanceState", "locationName":"state" }, "Fault":{ "shape":"SpotInstanceStateFault", "locationName":"fault" }, "Status":{ "shape":"SpotInstanceStatus", "locationName":"status" }, "ValidFrom":{ "shape":"DateTime", "locationName":"validFrom" }, "ValidUntil":{ "shape":"DateTime", "locationName":"validUntil" }, "LaunchGroup":{ "shape":"String", "locationName":"launchGroup" }, "AvailabilityZoneGroup":{ "shape":"String", "locationName":"availabilityZoneGroup" }, "LaunchSpecification":{ "shape":"LaunchSpecification", "locationName":"launchSpecification" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "CreateTime":{ "shape":"DateTime", "locationName":"createTime" }, "ProductDescription":{ "shape":"RIProductDescription", "locationName":"productDescription" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "LaunchedAvailabilityZone":{ "shape":"String", "locationName":"launchedAvailabilityZone" } } }, "SpotInstanceRequestIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"SpotInstanceRequestId" } }, "SpotInstanceRequestList":{ "type":"list", "member":{ "shape":"SpotInstanceRequest", "locationName":"item" } }, "SpotInstanceState":{ "type":"string", "enum":[ "open", "active", "closed", "cancelled", "failed" ] }, "SpotInstanceStateFault":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "SpotInstanceStatus":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "UpdateTime":{ "shape":"DateTime", "locationName":"updateTime" }, "Message":{ "shape":"String", "locationName":"message" } } }, "SpotInstanceType":{ "type":"string", "enum":[ "one-time", "persistent" ] }, "SpotPlacement":{ "type":"structure", "members":{ "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "GroupName":{ "shape":"String", "locationName":"groupName" } } }, "SpotPrice":{ "type":"structure", "members":{ "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "ProductDescription":{ "shape":"RIProductDescription", "locationName":"productDescription" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" }, "Timestamp":{ "shape":"DateTime", "locationName":"timestamp" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" } } }, "SpotPriceHistoryList":{ "type":"list", "member":{ "shape":"SpotPrice", "locationName":"item" } }, "StartInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "AdditionalInfo":{ "shape":"String", "locationName":"additionalInfo" }, "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "StartInstancesResult":{ "type":"structure", "members":{ "StartingInstances":{ "shape":"InstanceStateChangeList", "locationName":"instancesSet" } } }, "State":{ "type":"string", "enum":[ "Pending", "Available", "Deleting", "Deleted" ] }, "StateReason":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "Status":{ "type":"string", "enum":[ "MoveInProgress", "InVpc", "InClassic" ] }, "StatusName":{ "type":"string", "enum":["reachability"] }, "StatusType":{ "type":"string", "enum":[ "passed", "failed", "insufficient-data", "initializing" ] }, "StopInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "Force":{ "shape":"Boolean", "locationName":"force" } } }, "StopInstancesResult":{ "type":"structure", "members":{ "StoppingInstances":{ "shape":"InstanceStateChangeList", "locationName":"instancesSet" } } }, "Storage":{ "type":"structure", "members":{ "S3":{"shape":"S3Storage"} } }, "String":{"type":"string"}, "Subnet":{ "type":"structure", "members":{ "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "State":{ "shape":"SubnetState", "locationName":"state" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "AvailableIpAddressCount":{ "shape":"Integer", "locationName":"availableIpAddressCount" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "DefaultForAz":{ "shape":"Boolean", "locationName":"defaultForAz" }, "MapPublicIpOnLaunch":{ "shape":"Boolean", "locationName":"mapPublicIpOnLaunch" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "SubnetIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"SubnetId" } }, "SubnetList":{ "type":"list", "member":{ "shape":"Subnet", "locationName":"item" } }, "SubnetState":{ "type":"string", "enum":[ "pending", "available" ] }, "SummaryStatus":{ "type":"string", "enum":[ "ok", "impaired", "insufficient-data", "not-applicable", "initializing" ] }, "Tag":{ "type":"structure", "members":{ "Key":{ "shape":"String", "locationName":"key" }, "Value":{ "shape":"String", "locationName":"value" } } }, "TagDescription":{ "type":"structure", "members":{ "ResourceId":{ "shape":"String", "locationName":"resourceId" }, "ResourceType":{ "shape":"ResourceType", "locationName":"resourceType" }, "Key":{ "shape":"String", "locationName":"key" }, "Value":{ "shape":"String", "locationName":"value" } } }, "TagDescriptionList":{ "type":"list", "member":{ "shape":"TagDescription", "locationName":"item" } }, "TagList":{ "type":"list", "member":{ "shape":"Tag", "locationName":"item" } }, "TelemetryStatus":{ "type":"string", "enum":[ "UP", "DOWN" ] }, "Tenancy":{ "type":"string", "enum":[ "default", "dedicated" ] }, "TerminateInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" } } }, "TerminateInstancesResult":{ "type":"structure", "members":{ "TerminatingInstances":{ "shape":"InstanceStateChangeList", "locationName":"instancesSet" } } }, "TrafficType":{ "type":"string", "enum":[ "ACCEPT", "REJECT", "ALL" ] }, "UnassignPrivateIpAddressesRequest":{ "type":"structure", "required":[ "NetworkInterfaceId", "PrivateIpAddresses" ], "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "PrivateIpAddresses":{ "shape":"PrivateIpAddressStringList", "locationName":"privateIpAddress" } } }, "UnmonitorInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" } } }, "UnmonitorInstancesResult":{ "type":"structure", "members":{ "InstanceMonitorings":{ "shape":"InstanceMonitoringList", "locationName":"instancesSet" } } }, "UnsuccessfulItem":{ "type":"structure", "required":["Error"], "members":{ "ResourceId":{ "shape":"String", "locationName":"resourceId" }, "Error":{ "shape":"UnsuccessfulItemError", "locationName":"error" } } }, "UnsuccessfulItemError":{ "type":"structure", "required":[ "Code", "Message" ], "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "UnsuccessfulItemSet":{ "type":"list", "member":{ "shape":"UnsuccessfulItem", "locationName":"item" } }, "UserBucket":{ "type":"structure", "members":{ "S3Bucket":{"shape":"String"}, "S3Key":{"shape":"String"} } }, "UserBucketDetails":{ "type":"structure", "members":{ "S3Bucket":{ "shape":"String", "locationName":"s3Bucket" }, "S3Key":{ "shape":"String", "locationName":"s3Key" } } }, "UserData":{ "type":"structure", "members":{ "Data":{ "shape":"String", "locationName":"data" } } }, "UserGroupStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"UserGroup" } }, "UserIdGroupPair":{ "type":"structure", "members":{ "UserId":{ "shape":"String", "locationName":"userId" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "GroupId":{ "shape":"String", "locationName":"groupId" } } }, "UserIdGroupPairList":{ "type":"list", "member":{ "shape":"UserIdGroupPair", "locationName":"item" } }, "UserIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"UserId" } }, "ValueStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "VgwTelemetry":{ "type":"structure", "members":{ "OutsideIpAddress":{ "shape":"String", "locationName":"outsideIpAddress" }, "Status":{ "shape":"TelemetryStatus", "locationName":"status" }, "LastStatusChange":{ "shape":"DateTime", "locationName":"lastStatusChange" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "AcceptedRouteCount":{ "shape":"Integer", "locationName":"acceptedRouteCount" } } }, "VgwTelemetryList":{ "type":"list", "member":{ "shape":"VgwTelemetry", "locationName":"item" } }, "VirtualizationType":{ "type":"string", "enum":[ "hvm", "paravirtual" ] }, "Volume":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "Size":{ "shape":"Integer", "locationName":"size" }, "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "State":{ "shape":"VolumeState", "locationName":"status" }, "CreateTime":{ "shape":"DateTime", "locationName":"createTime" }, "Attachments":{ "shape":"VolumeAttachmentList", "locationName":"attachmentSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "VolumeType":{ "shape":"VolumeType", "locationName":"volumeType" }, "Iops":{ "shape":"Integer", "locationName":"iops" }, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{ "shape":"String", "locationName":"kmsKeyId" } } }, "VolumeAttachment":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Device":{ "shape":"String", "locationName":"device" }, "State":{ "shape":"VolumeAttachmentState", "locationName":"status" }, "AttachTime":{ "shape":"DateTime", "locationName":"attachTime" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "VolumeAttachmentList":{ "type":"list", "member":{ "shape":"VolumeAttachment", "locationName":"item" } }, "VolumeAttachmentState":{ "type":"string", "enum":[ "attaching", "attached", "detaching", "detached" ] }, "VolumeAttributeName":{ "type":"string", "enum":[ "autoEnableIO", "productCodes" ] }, "VolumeDetail":{ "type":"structure", "required":["Size"], "members":{ "Size":{ "shape":"Long", "locationName":"size" } } }, "VolumeIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"VolumeId" } }, "VolumeList":{ "type":"list", "member":{ "shape":"Volume", "locationName":"item" } }, "VolumeState":{ "type":"string", "enum":[ "creating", "available", "in-use", "deleting", "deleted", "error" ] }, "VolumeStatusAction":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Description":{ "shape":"String", "locationName":"description" }, "EventType":{ "shape":"String", "locationName":"eventType" }, "EventId":{ "shape":"String", "locationName":"eventId" } } }, "VolumeStatusActionsList":{ "type":"list", "member":{ "shape":"VolumeStatusAction", "locationName":"item" } }, "VolumeStatusDetails":{ "type":"structure", "members":{ "Name":{ "shape":"VolumeStatusName", "locationName":"name" }, "Status":{ "shape":"String", "locationName":"status" } } }, "VolumeStatusDetailsList":{ "type":"list", "member":{ "shape":"VolumeStatusDetails", "locationName":"item" } }, "VolumeStatusEvent":{ "type":"structure", "members":{ "EventType":{ "shape":"String", "locationName":"eventType" }, "Description":{ "shape":"String", "locationName":"description" }, "NotBefore":{ "shape":"DateTime", "locationName":"notBefore" }, "NotAfter":{ "shape":"DateTime", "locationName":"notAfter" }, "EventId":{ "shape":"String", "locationName":"eventId" } } }, "VolumeStatusEventsList":{ "type":"list", "member":{ "shape":"VolumeStatusEvent", "locationName":"item" } }, "VolumeStatusInfo":{ "type":"structure", "members":{ "Status":{ "shape":"VolumeStatusInfoStatus", "locationName":"status" }, "Details":{ "shape":"VolumeStatusDetailsList", "locationName":"details" } } }, "VolumeStatusInfoStatus":{ "type":"string", "enum":[ "ok", "impaired", "insufficient-data" ] }, "VolumeStatusItem":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "VolumeStatus":{ "shape":"VolumeStatusInfo", "locationName":"volumeStatus" }, "Events":{ "shape":"VolumeStatusEventsList", "locationName":"eventsSet" }, "Actions":{ "shape":"VolumeStatusActionsList", "locationName":"actionsSet" } } }, "VolumeStatusList":{ "type":"list", "member":{ "shape":"VolumeStatusItem", "locationName":"item" } }, "VolumeStatusName":{ "type":"string", "enum":[ "io-enabled", "io-performance" ] }, "VolumeType":{ "type":"string", "enum":[ "standard", "io1", "gp2" ] }, "Vpc":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "State":{ "shape":"VpcState", "locationName":"state" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "DhcpOptionsId":{ "shape":"String", "locationName":"dhcpOptionsId" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" }, "IsDefault":{ "shape":"Boolean", "locationName":"isDefault" } } }, "VpcAttachment":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "State":{ "shape":"AttachmentStatus", "locationName":"state" } } }, "VpcAttachmentList":{ "type":"list", "member":{ "shape":"VpcAttachment", "locationName":"item" } }, "VpcAttributeName":{ "type":"string", "enum":[ "enableDnsSupport", "enableDnsHostnames" ] }, "VpcClassicLink":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "ClassicLinkEnabled":{ "shape":"Boolean", "locationName":"classicLinkEnabled" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "VpcClassicLinkIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpcId" } }, "VpcClassicLinkList":{ "type":"list", "member":{ "shape":"VpcClassicLink", "locationName":"item" } }, "VpcEndpoint":{ "type":"structure", "members":{ "VpcEndpointId":{ "shape":"String", "locationName":"vpcEndpointId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "ServiceName":{ "shape":"String", "locationName":"serviceName" }, "State":{ "shape":"State", "locationName":"state" }, "PolicyDocument":{ "shape":"String", "locationName":"policyDocument" }, "RouteTableIds":{ "shape":"ValueStringList", "locationName":"routeTableIdSet" }, "CreationTimestamp":{ "shape":"DateTime", "locationName":"creationTimestamp" } } }, "VpcEndpointSet":{ "type":"list", "member":{ "shape":"VpcEndpoint", "locationName":"item" } }, "VpcIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpcId" } }, "VpcList":{ "type":"list", "member":{ "shape":"Vpc", "locationName":"item" } }, "VpcPeeringConnection":{ "type":"structure", "members":{ "AccepterVpcInfo":{ "shape":"VpcPeeringConnectionVpcInfo", "locationName":"accepterVpcInfo" }, "ExpirationTime":{ "shape":"DateTime", "locationName":"expirationTime" }, "RequesterVpcInfo":{ "shape":"VpcPeeringConnectionVpcInfo", "locationName":"requesterVpcInfo" }, "Status":{ "shape":"VpcPeeringConnectionStateReason", "locationName":"status" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "VpcPeeringConnectionList":{ "type":"list", "member":{ "shape":"VpcPeeringConnection", "locationName":"item" } }, "VpcPeeringConnectionStateReason":{ "type":"structure", "members":{ "Code":{ "shape":"VpcPeeringConnectionStateReasonCode", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "VpcPeeringConnectionStateReasonCode":{ "type":"string", "enum":[ "initiating-request", "pending-acceptance", "active", "deleted", "rejected", "failed", "expired", "provisioning", "deleting" ] }, "VpcPeeringConnectionVpcInfo":{ "type":"structure", "members":{ "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "VpcState":{ "type":"string", "enum":[ "pending", "available" ] }, "VpnConnection":{ "type":"structure", "members":{ "VpnConnectionId":{ "shape":"String", "locationName":"vpnConnectionId" }, "State":{ "shape":"VpnState", "locationName":"state" }, "CustomerGatewayConfiguration":{ "shape":"String", "locationName":"customerGatewayConfiguration" }, "Type":{ "shape":"GatewayType", "locationName":"type" }, "CustomerGatewayId":{ "shape":"String", "locationName":"customerGatewayId" }, "VpnGatewayId":{ "shape":"String", "locationName":"vpnGatewayId" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "VgwTelemetry":{ "shape":"VgwTelemetryList", "locationName":"vgwTelemetry" }, "Options":{ "shape":"VpnConnectionOptions", "locationName":"options" }, "Routes":{ "shape":"VpnStaticRouteList", "locationName":"routes" } } }, "VpnConnectionIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpnConnectionId" } }, "VpnConnectionList":{ "type":"list", "member":{ "shape":"VpnConnection", "locationName":"item" } }, "VpnConnectionOptions":{ "type":"structure", "members":{ "StaticRoutesOnly":{ "shape":"Boolean", "locationName":"staticRoutesOnly" } } }, "VpnConnectionOptionsSpecification":{ "type":"structure", "members":{ "StaticRoutesOnly":{ "shape":"Boolean", "locationName":"staticRoutesOnly" } } }, "VpnGateway":{ "type":"structure", "members":{ "VpnGatewayId":{ "shape":"String", "locationName":"vpnGatewayId" }, "State":{ "shape":"VpnState", "locationName":"state" }, "Type":{ "shape":"GatewayType", "locationName":"type" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "VpcAttachments":{ "shape":"VpcAttachmentList", "locationName":"attachments" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "VpnGatewayIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpnGatewayId" } }, "VpnGatewayList":{ "type":"list", "member":{ "shape":"VpnGateway", "locationName":"item" } }, "VpnState":{ "type":"string", "enum":[ "pending", "available", "deleting", "deleted" ] }, "VpnStaticRoute":{ "type":"structure", "members":{ "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" }, "Source":{ "shape":"VpnStaticRouteSource", "locationName":"source" }, "State":{ "shape":"VpnState", "locationName":"state" } } }, "VpnStaticRouteList":{ "type":"list", "member":{ "shape":"VpnStaticRoute", "locationName":"item" } }, "VpnStaticRouteSource":{ "type":"string", "enum":["Static"] }, "ZoneNameStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ZoneName" } }, "NewDhcpConfigurationList":{ "type":"list", "member":{ "shape":"NewDhcpConfiguration", "locationName":"item" } }, "NewDhcpConfiguration":{ "type":"structure", "members":{ "Key":{ "shape":"String", "locationName":"key" }, "Values":{ "shape":"ValueStringList", "locationName":"Value" } } }, "DhcpConfigurationValueList":{ "type":"list", "member":{ "shape":"AttributeValue", "locationName":"item" } }, "Blob":{"type":"blob"}, "BlobAttributeValue":{ "type":"structure", "members":{ "Value":{ "shape":"Blob", "locationName":"value" } } }, "RequestSpotLaunchSpecification":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "SecurityGroups":{ "shape":"ValueStringList", "locationName":"SecurityGroup" }, "UserData":{ "shape":"String", "locationName":"userData" }, "AddressingType":{ "shape":"String", "locationName":"addressingType" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "Placement":{ "shape":"SpotPlacement", "locationName":"placement" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceSpecificationList", "locationName":"NetworkInterface" }, "IamInstanceProfile":{ "shape":"IamInstanceProfileSpecification", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" }, "Monitoring":{ "shape":"RunInstancesMonitoringEnabled", "locationName":"monitoring" }, "SecurityGroupIds":{ "shape":"ValueStringList", "locationName":"SecurityGroupId" } } } } } aws-sdk-go-1.4.22/models/apis/ec2/2015-04-15/docs-2.json000066400000000000000000017421461300374646400215070ustar00rootroot00000000000000{ "version": "2.0", "operations": { "AcceptVpcPeeringConnection": "

        Accept a VPC peering connection request. To accept a request, the VPC peering connection must be in the pending-acceptance state, and you must be the owner of the peer VPC. Use the DescribeVpcPeeringConnections request to view your outstanding VPC peering connection requests.

        ", "AllocateAddress": "

        Acquires an Elastic IP address.

        An Elastic IP address is for use either in the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        ", "AssignPrivateIpAddresses": "

        Assigns one or more secondary private IP addresses to the specified network interface. You can specify one or more specific secondary IP addresses, or you can specify the number of secondary IP addresses to be automatically assigned within the subnet's CIDR block range. The number of secondary IP addresses that you can assign to an instance varies by instance type. For information about instance types, see Instance Types in the Amazon Elastic Compute Cloud User Guide. For more information about Elastic IP addresses, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        AssignPrivateIpAddresses is available only in EC2-VPC.

        ", "AssociateAddress": "

        Associates an Elastic IP address with an instance or a network interface.

        An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        [EC2-Classic, VPC in an EC2-VPC-only account] If the Elastic IP address is already associated with a different instance, it is disassociated from that instance and associated with the specified instance.

        [VPC in an EC2-Classic account] If you don't specify a private IP address, the Elastic IP address is associated with the primary IP address. If the Elastic IP address is already associated with a different instance or a network interface, you get an error unless you allow reassociation.

        This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error.

        ", "AssociateDhcpOptions": "

        Associates a set of DHCP options (that you've previously created) with the specified VPC, or associates no DHCP options with the VPC.

        After you associate the options with the VPC, any existing instances and all new instances that you launch in that VPC use the options. You don't need to restart or relaunch the instances. They automatically pick up the changes within a few hours, depending on how frequently the instance renews its DHCP lease. You can explicitly renew the lease using the operating system on the instance.

        For more information, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.

        ", "AssociateRouteTable": "

        Associates a subnet with a route table. The subnet and route table must be in the same VPC. This association causes traffic originating from the subnet to be routed according to the routes in the route table. The action returns an association ID, which you need in order to disassociate the route table from the subnet later. A route table can be associated with multiple subnets.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "AttachClassicLinkVpc": "

        Links an EC2-Classic instance to a ClassicLink-enabled VPC through one or more of the VPC's security groups. You cannot link an EC2-Classic instance to more than one VPC at a time. You can only link an instance that's in the running state. An instance is automatically unlinked from a VPC when it's stopped - you can link it to the VPC again when you restart it.

        After you've linked an instance, you cannot change the VPC security groups that are associated with it. To change the security groups, you must first unlink the instance, and then link it again.

        Linking your instance to a VPC is sometimes referred to as attaching your instance.

        ", "AttachInternetGateway": "

        Attaches an Internet gateway to a VPC, enabling connectivity between the Internet and the VPC. For more information about your VPC and Internet gateway, see the Amazon Virtual Private Cloud User Guide.

        ", "AttachNetworkInterface": "

        Attaches a network interface to an instance.

        ", "AttachVolume": "

        Attaches an EBS volume to a running or stopped instance and exposes it to the instance with the specified device name.

        Encrypted EBS volumes may only be attached to instances that support Amazon EBS encryption. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        For a list of supported device names, see Attaching an EBS Volume to an Instance. Any device names that aren't reserved for instance store volumes can be used for EBS volumes. For more information, see Amazon EC2 Instance Store in the Amazon Elastic Compute Cloud User Guide.

        If a volume has an AWS Marketplace product code:

        • The volume can be attached only to a stopped instance.
        • AWS Marketplace product codes are copied from the volume to the instance.
        • You must be subscribed to the product.
        • The instance type and operating system of the instance must support the product. For example, you can't detach a volume from a Windows instance and attach it to a Linux instance.

        For an overview of the AWS Marketplace, see Introducing AWS Marketplace.

        For more information about EBS volumes, see Attaching Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.

        ", "AttachVpnGateway": "

        Attaches a virtual private gateway to a VPC. For more information, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "AuthorizeSecurityGroupEgress": "

        Adds one or more egress rules to a security group for use with a VPC. Specifically, this action permits instances to send traffic to one or more destination CIDR IP address ranges, or to one or more destination security groups for the same VPC.

        You can have up to 50 rules per security group (covering both ingress and egress rules).

        A security group is for use with instances either in the EC2-Classic platform or in a specific VPC. This action doesn't apply to security groups for use in EC2-Classic. For more information, see Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.

        Each rule consists of the protocol (for example, TCP), plus either a CIDR range or a source group. For the TCP and UDP protocols, you must also specify the destination port or port range. For the ICMP protocol, you must also specify the ICMP type and code. You can use -1 for the type or code to mean all types or all codes.

        Rule changes are propagated to affected instances as quickly as possible. However, a small delay might occur.

        ", "AuthorizeSecurityGroupIngress": "

        Adds one or more ingress rules to a security group.

        EC2-Classic: You can have up to 100 rules per group.

        EC2-VPC: You can have up to 50 rules per group (covering both ingress and egress rules).

        Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

        [EC2-Classic] This action gives one or more CIDR IP address ranges permission to access a security group in your account, or gives one or more security groups (called the source groups) permission to access a security group for your account. A source group can be for your own AWS account, or another.

        [EC2-VPC] This action gives one or more CIDR IP address ranges permission to access a security group in your VPC, or gives one or more other security groups (called the source groups) permission to access a security group for your VPC. The security groups must all be for the same VPC.

        ", "BundleInstance": "

        Bundles an Amazon instance store-backed Windows instance.

        During bundling, only the root device volume (C:\\) is bundled. Data on other instance store volumes is not preserved.

        This action is not applicable for Linux/Unix instances or Windows instances that are backed by Amazon EBS.

        For more information, see Creating an Instance Store-Backed Windows AMI.

        ", "CancelBundleTask": "

        Cancels a bundling operation for an instance store-backed Windows instance.

        ", "CancelConversionTask": "

        Cancels an active conversion task. The task can be the import of an instance or volume. The action removes all artifacts of the conversion, including a partially uploaded volume or instance. If the conversion is complete or is in the process of transferring the final disk image, the command fails and returns an exception.

        For more information, see Using the Command Line Tools to Import Your Virtual Machine to Amazon EC2 in the Amazon Elastic Compute Cloud User Guide.

        ", "CancelExportTask": "

        Cancels an active export task. The request removes all artifacts of the export, including any partially-created Amazon S3 objects. If the export task is complete or is in the process of transferring the final disk image, the command fails and returns an error.

        ", "CancelImportTask": "

        Cancels an in-process import virtual machine or import snapshot task.

        ", "CancelReservedInstancesListing": "

        Cancels the specified Reserved Instance listing in the Reserved Instance Marketplace.

        For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "CancelSpotFleetRequests": "

        Cancels the specified Spot fleet requests.

        ", "CancelSpotInstanceRequests": "

        Cancels one or more Spot instance requests. Spot instances are instances that Amazon EC2 starts on your behalf when the bid price that you specify exceeds the current Spot price. Amazon EC2 periodically sets the Spot price based on available Spot instance capacity and current Spot instance requests. For more information, see Spot Instance Requests in the Amazon Elastic Compute Cloud User Guide.

        Canceling a Spot instance request does not terminate running Spot instances associated with the request.

        ", "ConfirmProductInstance": "

        Determines whether a product code is associated with an instance. This action can only be used by the owner of the product code. It is useful when a product code owner needs to verify whether another user's instance is eligible for support.

        ", "CopyImage": "

        Initiates the copy of an AMI from the specified source region to the current region. You specify the destination region by using its endpoint when making the request. AMIs that use encrypted EBS snapshots cannot be copied with this method.

        For more information, see Copying AMIs in the Amazon Elastic Compute Cloud User Guide.

        ", "CopySnapshot": "

        Copies a point-in-time snapshot of an EBS volume and stores it in Amazon S3. You can copy the snapshot within the same region or from one region to another. You can use the snapshot to create EBS volumes or Amazon Machine Images (AMIs). The snapshot is copied to the regional endpoint that you send the HTTP request to.

        Copies of encrypted EBS snapshots remain encrypted. Copies of unencrypted snapshots remain unencrypted, unless the Encrypted flag is specified during the snapshot copy operation. By default, encrypted snapshot copies use the default AWS Key Management Service (AWS KMS) customer master key (CMK); however, you can specify a non-default CMK with the KmsKeyId parameter.

        For more information, see Copying an Amazon EBS Snapshot in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateCustomerGateway": "

        Provides information to AWS about your VPN customer gateway device. The customer gateway is the appliance at your end of the VPN connection. (The device on the AWS side of the VPN connection is the virtual private gateway.) You must provide the Internet-routable IP address of the customer gateway's external interface. The IP address must be static and can't be behind a device performing network address translation (NAT).

        For devices that use Border Gateway Protocol (BGP), you can also provide the device's BGP Autonomous System Number (ASN). You can use an existing ASN assigned to your network. If you don't have an ASN already, you can use a private ASN (in the 64512 - 65534 range).

        Amazon EC2 supports all 2-byte ASN numbers in the range of 1 - 65534, with the exception of 7224, which is reserved in the us-east-1 region, and 9059, which is reserved in the eu-west-1 region.

        For more information about VPN customer gateways, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        You cannot create more than one customer gateway with the same VPN type, IP address, and BGP ASN parameter values. If you run an identical request more than one time, the first request creates the customer gateway, and subsequent requests return information about the existing customer gateway. The subsequent requests do not create new customer gateway resources.

        ", "CreateDhcpOptions": "

        Creates a set of DHCP options for your VPC. After creating the set, you must associate it with the VPC, causing all existing and new instances that you launch in the VPC to use this set of DHCP options. The following are the individual DHCP options you can specify. For more information about the options, see RFC 2132.

        • domain-name-servers - The IP addresses of up to four domain name servers, or AmazonProvidedDNS. The default DHCP option set specifies AmazonProvidedDNS. If specifying more than one domain name server, specify the IP addresses in a single parameter, separated by commas.
        • domain-name - If you're using AmazonProvidedDNS in us-east-1, specify ec2.internal. If you're using AmazonProvidedDNS in another region, specify region.compute.internal (for example, ap-northeast-1.compute.internal). Otherwise, specify a domain name (for example, MyCompany.com). Important: Some Linux operating systems accept multiple domain names separated by spaces. However, Windows and other Linux operating systems treat the value as a single domain, which results in unexpected behavior. If your DHCP options set is associated with a VPC that has instances with multiple operating systems, specify only one domain name.
        • ntp-servers - The IP addresses of up to four Network Time Protocol (NTP) servers.
        • netbios-name-servers - The IP addresses of up to four NetBIOS name servers.
        • netbios-node-type - The NetBIOS node type (1, 2, 4, or 8). We recommend that you specify 2 (broadcast and multicast are not currently supported). For more information about these node types, see RFC 2132.

        Your VPC automatically starts out with a set of DHCP options that includes only a DNS server that we provide (AmazonProvidedDNS). If you create a set of options, and if your VPC has an Internet gateway, make sure to set the domain-name-servers option either to AmazonProvidedDNS or to a domain name server of your choice. For more information about DHCP options, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.

        ", "CreateFlowLogs": "

        Creates one or more flow logs to capture IP traffic for a specific network interface, subnet, or VPC. Flow logs are delivered to a specified log group in Amazon CloudWatch Logs. If you specify a VPC or subnet in the request, a log stream is created in CloudWatch Logs for each network interface in the subnet or VPC. Log streams can include information about accepted and rejected traffic to a network interface. You can view the data in your log streams using Amazon CloudWatch Logs.

        In your request, you must also specify an IAM role that has permission to publish logs to CloudWatch Logs.

        ", "CreateImage": "

        Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance that is either running or stopped.

        If you customized your instance with instance store volumes or EBS volumes in addition to the root device volume, the new AMI contains block device mapping information for those volumes. When you launch an instance from this new AMI, the instance automatically launches with those additional volumes.

        For more information, see Creating Amazon EBS-Backed Linux AMIs in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateInstanceExportTask": "

        Exports a running or stopped instance to an S3 bucket.

        For information about the supported operating systems, image formats, and known limitations for the types of instances you can export, see Exporting EC2 Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateInternetGateway": "

        Creates an Internet gateway for use with a VPC. After creating the Internet gateway, you attach it to a VPC using AttachInternetGateway.

        For more information about your VPC and Internet gateway, see the Amazon Virtual Private Cloud User Guide.

        ", "CreateKeyPair": "

        Creates a 2048-bit RSA key pair with the specified name. Amazon EC2 stores the public key and displays the private key for you to save to a file. The private key is returned as an unencrypted PEM encoded PKCS#8 private key. If a key with the specified name already exists, Amazon EC2 returns an error.

        You can have up to five thousand key pairs per region.

        The key pair returned to you is available only in the region in which you create it. To create a key pair that is available in all regions, use ImportKeyPair.

        For more information about key pairs, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateNetworkAcl": "

        Creates a network ACL in a VPC. Network ACLs provide an optional layer of security (in addition to security groups) for the instances in your VPC.

        For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "CreateNetworkAclEntry": "

        Creates an entry (a rule) in a network ACL with the specified rule number. Each network ACL has a set of numbered ingress rules and a separate set of numbered egress rules. When determining whether a packet should be allowed in or out of a subnet associated with the ACL, we process the entries in the ACL according to the rule numbers, in ascending order. Each network ACL has a set of ingress rules and a separate set of egress rules.

        We recommend that you leave room between the rule numbers (for example, 100, 110, 120, ...), and not number them one right after the other (for example, 101, 102, 103, ...). This makes it easier to add a rule between existing ones without having to renumber the rules.

        After you add an entry, you can't modify it; you must either replace it, or create an entry and delete the old one.

        For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "CreateNetworkInterface": "

        Creates a network interface in the specified subnet.

        For more information about network interfaces, see Elastic Network Interfaces in the Amazon Elastic Compute Cloud User Guide.

        ", "CreatePlacementGroup": "

        Creates a placement group that you launch cluster instances into. You must give the group a name that's unique within the scope of your account.

        For more information about placement groups and cluster instances, see Cluster Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateReservedInstancesListing": "

        Creates a listing for Amazon EC2 Reserved Instances to be sold in the Reserved Instance Marketplace. You can submit one Reserved Instance listing at a time. To get a list of your Reserved Instances, you can use the DescribeReservedInstances operation.

        The Reserved Instance Marketplace matches sellers who want to resell Reserved Instance capacity that they no longer need with buyers who want to purchase additional capacity. Reserved Instances bought and sold through the Reserved Instance Marketplace work like any other Reserved Instances.

        To sell your Reserved Instances, you must first register as a seller in the Reserved Instance Marketplace. After completing the registration process, you can create a Reserved Instance Marketplace listing of some or all of your Reserved Instances, and specify the upfront price to receive for them. Your Reserved Instance listings then become available for purchase. To view the details of your Reserved Instance listing, you can use the DescribeReservedInstancesListings operation.

        For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateRoute": "

        Creates a route in a route table within a VPC.

        You must specify one of the following targets: Internet gateway or virtual private gateway, NAT instance, VPC peering connection, or network interface.

        When determining how to route traffic, we use the route with the most specific match. For example, let's say the traffic is destined for 192.0.2.3, and the route table includes the following two routes:

        • 192.0.2.0/24 (goes to some target A)

        • 192.0.2.0/28 (goes to some target B)

        Both routes apply to the traffic destined for 192.0.2.3. However, the second route in the list covers a smaller number of IP addresses and is therefore more specific, so we use that route to determine where to target the traffic.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "CreateRouteTable": "

        Creates a route table for the specified VPC. After you create a route table, you can add routes and associate the table with a subnet.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "CreateSecurityGroup": "

        Creates a security group.

        A security group is for use with instances either in the EC2-Classic platform or in a specific VPC. For more information, see Amazon EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide and Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.

        EC2-Classic: You can have up to 500 security groups.

        EC2-VPC: You can create up to 100 security groups per VPC.

        When you create a security group, you specify a friendly name of your choice. You can have a security group for use in EC2-Classic with the same name as a security group for use in a VPC. However, you can't have two security groups for use in EC2-Classic with the same name or two security groups for use in a VPC with the same name.

        You have a default security group for use in EC2-Classic and a default security group for use in your VPC. If you don't specify a security group when you launch an instance, the instance is launched into the appropriate default security group. A default security group includes a default rule that grants instances unrestricted network access to each other.

        You can add or remove rules from your security groups using AuthorizeSecurityGroupIngress, AuthorizeSecurityGroupEgress, RevokeSecurityGroupIngress, and RevokeSecurityGroupEgress.

        ", "CreateSnapshot": "

        Creates a snapshot of an EBS volume and stores it in Amazon S3. You can use snapshots for backups, to make copies of EBS volumes, and to save data before shutting down an instance.

        When a snapshot is created, any AWS Marketplace product codes that are associated with the source volume are propagated to the snapshot.

        You can take a snapshot of an attached volume that is in use. However, snapshots only capture data that has been written to your EBS volume at the time the snapshot command is issued; this may exclude any data that has been cached by any applications or the operating system. If you can pause any file systems on the volume long enough to take a snapshot, your snapshot should be complete. However, if you cannot pause all file writes to the volume, you should unmount the volume from within the instance, issue the snapshot command, and then remount the volume to ensure a consistent and complete snapshot. You may remount and use your volume while the snapshot status is pending.

        To create a snapshot for EBS volumes that serve as root devices, you should stop the instance before taking the snapshot.

        Snapshots that are taken from encrypted volumes are automatically encrypted. Volumes that are created from encrypted snapshots are also automatically encrypted. Your encrypted volumes and any associated snapshots always remain protected.

        For more information, see Amazon Elastic Block Store and Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateSpotDatafeedSubscription": "

        Creates a data feed for Spot instances, enabling you to view Spot instance usage logs. You can create one data feed per AWS account. For more information, see Spot Instance Data Feed in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateSubnet": "

        Creates a subnet in an existing VPC.

        When you create each subnet, you provide the VPC ID and the CIDR block you want for the subnet. After you create a subnet, you can't change its CIDR block. The subnet's CIDR block can be the same as the VPC's CIDR block (assuming you want only a single subnet in the VPC), or a subset of the VPC's CIDR block. If you create more than one subnet in a VPC, the subnets' CIDR blocks must not overlap. The smallest subnet (and VPC) you can create uses a /28 netmask (16 IP addresses), and the largest uses a /16 netmask (65,536 IP addresses).

        AWS reserves both the first four and the last IP address in each subnet's CIDR block. They're not available for use.

        If you add more than one subnet to a VPC, they're set up in a star topology with a logical router in the middle.

        If you launch an instance in a VPC using an Amazon EBS-backed AMI, the IP address doesn't change if you stop and restart the instance (unlike a similar instance launched outside a VPC, which gets a new IP address when restarted). It's therefore possible to have a subnet with no running instances (they're all stopped), but no remaining IP addresses available.

        For more information about subnets, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide.

        ", "CreateTags": "

        Adds or overwrites one or more tags for the specified Amazon EC2 resource or resources. Each resource can have a maximum of 10 tags. Each tag consists of a key and optional value. Tag keys must be unique per resource.

        For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateVolume": "

        Creates an EBS volume that can be attached to an instance in the same Availability Zone. The volume is created in the regional endpoint that you send the HTTP request to. For more information see Regions and Endpoints.

        You can create a new empty volume or restore a volume from an EBS snapshot. Any AWS Marketplace product codes from the snapshot are propagated to the volume.

        You can create encrypted volumes with the Encrypted parameter. Encrypted volumes may only be attached to instances that support Amazon EBS encryption. Volumes that are created from encrypted snapshots are also automatically encrypted. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        For more information, see Creating or Restoring an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateVpc": "

        Creates a VPC with the specified CIDR block.

        The smallest VPC you can create uses a /28 netmask (16 IP addresses), and the largest uses a /16 netmask (65,536 IP addresses). To help you decide how big to make your VPC, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide.

        By default, each instance you launch in the VPC has the default DHCP options, which includes only a default DNS server that we provide (AmazonProvidedDNS). For more information about DHCP options, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.

        ", "CreateVpcEndpoint": "

        Creates a VPC endpoint for a specified AWS service. An endpoint enables you to create a private connection between your VPC and another AWS service in your account. You can specify an endpoint policy to attach to the endpoint that will control access to the service from your VPC. You can also specify the VPC route tables that use the endpoint.

        Currently, only endpoints to Amazon S3 are supported.

        ", "CreateVpcPeeringConnection": "

        Requests a VPC peering connection between two VPCs: a requester VPC that you own and a peer VPC with which to create the connection. The peer VPC can belong to another AWS account. The requester VPC and peer VPC cannot have overlapping CIDR blocks.

        The owner of the peer VPC must accept the peering request to activate the peering connection. The VPC peering connection request expires after 7 days, after which it cannot be accepted or rejected.

        A CreateVpcPeeringConnection request between VPCs with overlapping CIDR blocks results in the VPC peering connection having a status of failed.

        ", "CreateVpnConnection": "

        Creates a VPN connection between an existing virtual private gateway and a VPN customer gateway. The only supported connection type is ipsec.1.

        The response includes information that you need to give to your network administrator to configure your customer gateway.

        We strongly recommend that you use HTTPS when calling this operation because the response contains sensitive cryptographic information for configuring your customer gateway.

        If you decide to shut down your VPN connection for any reason and later create a new VPN connection, you must reconfigure your customer gateway with the new information returned from this call.

        For more information about VPN connections, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "CreateVpnConnectionRoute": "

        Creates a static route associated with a VPN connection between an existing virtual private gateway and a VPN customer gateway. The static route allows traffic to be routed from the virtual private gateway to the VPN customer gateway.

        For more information about VPN connections, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "CreateVpnGateway": "

        Creates a virtual private gateway. A virtual private gateway is the endpoint on the VPC side of your VPN connection. You can create a virtual private gateway before creating the VPC itself.

        For more information about virtual private gateways, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DeleteCustomerGateway": "

        Deletes the specified customer gateway. You must delete the VPN connection before you can delete the customer gateway.

        ", "DeleteDhcpOptions": "

        Deletes the specified set of DHCP options. You must disassociate the set of DHCP options before you can delete it. You can disassociate the set of DHCP options by associating either a new set of options or the default set of options with the VPC.

        ", "DeleteFlowLogs": "

        Deletes one or more flow logs.

        ", "DeleteInternetGateway": "

        Deletes the specified Internet gateway. You must detach the Internet gateway from the VPC before you can delete it.

        ", "DeleteKeyPair": "

        Deletes the specified key pair, by removing the public key from Amazon EC2.

        ", "DeleteNetworkAcl": "

        Deletes the specified network ACL. You can't delete the ACL if it's associated with any subnets. You can't delete the default network ACL.

        ", "DeleteNetworkAclEntry": "

        Deletes the specified ingress or egress entry (rule) from the specified network ACL.

        ", "DeleteNetworkInterface": "

        Deletes the specified network interface. You must detach the network interface before you can delete it.

        ", "DeletePlacementGroup": "

        Deletes the specified placement group. You must terminate all instances in the placement group before you can delete the placement group. For more information about placement groups and cluster instances, see Cluster Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "DeleteRoute": "

        Deletes the specified route from the specified route table.

        ", "DeleteRouteTable": "

        Deletes the specified route table. You must disassociate the route table from any subnets before you can delete it. You can't delete the main route table.

        ", "DeleteSecurityGroup": "

        Deletes a security group.

        If you attempt to delete a security group that is associated with an instance, or is referenced by another security group, the operation fails with InvalidGroup.InUse in EC2-Classic or DependencyViolation in EC2-VPC.

        ", "DeleteSnapshot": "

        Deletes the specified snapshot.

        When you make periodic snapshots of a volume, the snapshots are incremental, and only the blocks on the device that have changed since your last snapshot are saved in the new snapshot. When you delete a snapshot, only the data not needed for any other snapshot is removed. So regardless of which prior snapshots have been deleted, all active snapshots will have access to all the information needed to restore the volume.

        You cannot delete a snapshot of the root device of an EBS volume used by a registered AMI. You must first de-register the AMI before you can delete the snapshot.

        For more information, see Deleting an Amazon EBS Snapshot in the Amazon Elastic Compute Cloud User Guide.

        ", "DeleteSpotDatafeedSubscription": "

        Deletes the data feed for Spot instances.

        ", "DeleteSubnet": "

        Deletes the specified subnet. You must terminate all running instances in the subnet before you can delete the subnet.

        ", "DeleteTags": "

        Deletes the specified set of tags from the specified set of resources. This call is designed to follow a DescribeTags request.

        For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide.

        ", "DeleteVolume": "

        Deletes the specified EBS volume. The volume must be in the available state (not attached to an instance).

        The volume may remain in the deleting state for several minutes.

        For more information, see Deleting an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide.

        ", "DeleteVpc": "

        Deletes the specified VPC. You must detach or delete all gateways and resources that are associated with the VPC before you can delete it. For example, you must terminate all instances running in the VPC, delete all security groups associated with the VPC (except the default one), delete all route tables associated with the VPC (except the default one), and so on.

        ", "DeleteVpcEndpoints": "

        Deletes one or more specified VPC endpoints. Deleting the endpoint also deletes the endpoint routes in the route tables that were associated with the endpoint.

        ", "DeleteVpcPeeringConnection": "

        Deletes a VPC peering connection. Either the owner of the requester VPC or the owner of the peer VPC can delete the VPC peering connection if it's in the active state. The owner of the requester VPC can delete a VPC peering connection in the pending-acceptance state.

        ", "DeleteVpnConnection": "

        Deletes the specified VPN connection.

        If you're deleting the VPC and its associated components, we recommend that you detach the virtual private gateway from the VPC and delete the VPC before deleting the VPN connection. If you believe that the tunnel credentials for your VPN connection have been compromised, you can delete the VPN connection and create a new one that has new keys, without needing to delete the VPC or virtual private gateway. If you create a new VPN connection, you must reconfigure the customer gateway using the new configuration information returned with the new VPN connection ID.

        ", "DeleteVpnConnectionRoute": "

        Deletes the specified static route associated with a VPN connection between an existing virtual private gateway and a VPN customer gateway. The static route allows traffic to be routed from the virtual private gateway to the VPN customer gateway.

        ", "DeleteVpnGateway": "

        Deletes the specified virtual private gateway. We recommend that before you delete a virtual private gateway, you detach it from the VPC and delete the VPN connection. Note that you don't need to delete the virtual private gateway if you plan to delete and recreate the VPN connection between your VPC and your network.

        ", "DeregisterImage": "

        Deregisters the specified AMI. After you deregister an AMI, it can't be used to launch new instances.

        This command does not delete the AMI.

        ", "DescribeAccountAttributes": "

        Describes attributes of your AWS account. The following are the supported account attributes:

        • supported-platforms: Indicates whether your account can launch instances into EC2-Classic and EC2-VPC, or only into EC2-VPC.

        • default-vpc: The ID of the default VPC for your account, or none.

        • max-instances: The maximum number of On-Demand instances that you can run.

        • vpc-max-security-groups-per-interface: The maximum number of security groups that you can assign to a network interface.

        • max-elastic-ips: The maximum number of Elastic IP addresses that you can allocate for use with EC2-Classic.

        • vpc-max-elastic-ips: The maximum number of Elastic IP addresses that you can allocate for use with EC2-VPC.

        ", "DescribeAddresses": "

        Describes one or more of your Elastic IP addresses.

        An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeAvailabilityZones": "

        Describes one or more of the Availability Zones that are available to you. The results include zones only for the region you're currently using. If there is an event impacting an Availability Zone, you can use this request to view the state and any provided message for that Availability Zone.

        For more information, see Regions and Availability Zones in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeBundleTasks": "

        Describes one or more of your bundling tasks.

        Completed bundle tasks are listed for only a limited time. If your bundle task is no longer in the list, you can still register an AMI from it. Just use RegisterImage with the Amazon S3 bucket name and image manifest name you provided to the bundle task.

        ", "DescribeClassicLinkInstances": "

        Describes one or more of your linked EC2-Classic instances. This request only returns information about EC2-Classic instances linked to a VPC through ClassicLink; you cannot use this request to return information about other instances.

        ", "DescribeConversionTasks": "

        Describes one or more of your conversion tasks. For more information, see Using the Command Line Tools to Import Your Virtual Machine to Amazon EC2 in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeCustomerGateways": "

        Describes one or more of your VPN customer gateways.

        For more information about VPN customer gateways, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeDhcpOptions": "

        Describes one or more of your DHCP options sets.

        For more information about DHCP options sets, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeExportTasks": "

        Describes one or more of your export tasks.

        ", "DescribeFlowLogs": "

        Describes one or more flow logs. To view the information in your flow logs (the log streams for the network interfaces), you must use the CloudWatch Logs console or the CloudWatch Logs API.

        ", "DescribeImageAttribute": "

        Describes the specified attribute of the specified AMI. You can specify only one attribute at a time.

        ", "DescribeImages": "

        Describes one or more of the images (AMIs, AKIs, and ARIs) available to you. Images available to you include public images, private images that you own, and private images owned by other AWS accounts but for which you have explicit launch permissions.

        Deregistered images are included in the returned results for an unspecified interval after deregistration.

        ", "DescribeImportImageTasks": "

        Displays details about an import virtual machine or import snapshot tasks that are already created.

        ", "DescribeImportSnapshotTasks": "

        Describes your import snapshot tasks.

        ", "DescribeInstanceAttribute": "

        Describes the specified attribute of the specified instance. You can specify only one attribute at a time. Valid attribute values are: instanceType | kernel | ramdisk | userData | disableApiTermination | instanceInitiatedShutdownBehavior | rootDeviceName | blockDeviceMapping | productCodes | sourceDestCheck | groupSet | ebsOptimized | sriovNetSupport

        ", "DescribeInstanceStatus": "

        Describes the status of one or more instances.

        Instance status includes the following components:

        • Status checks - Amazon EC2 performs status checks on running EC2 instances to identify hardware and software issues. For more information, see Status Checks for Your Instances and Troubleshooting Instances with Failed Status Checks in the Amazon Elastic Compute Cloud User Guide.

        • Scheduled events - Amazon EC2 can schedule events (such as reboot, stop, or terminate) for your instances related to hardware issues, software updates, or system maintenance. For more information, see Scheduled Events for Your Instances in the Amazon Elastic Compute Cloud User Guide.

        • Instance state - You can manage your instances from the moment you launch them through their termination. For more information, see Instance Lifecycle in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeInstances": "

        Describes one or more of your instances.

        If you specify one or more instance IDs, Amazon EC2 returns information for those instances. If you do not specify instance IDs, Amazon EC2 returns information for all relevant instances. If you specify an instance ID that is not valid, an error is returned. If you specify an instance that you do not own, it is not included in the returned results.

        Recently terminated instances might appear in the returned results. This interval is usually less than one hour.

        ", "DescribeInternetGateways": "

        Describes one or more of your Internet gateways.

        ", "DescribeKeyPairs": "

        Describes one or more of your key pairs.

        For more information about key pairs, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeMovingAddresses": "

        Describes your Elastic IP addresses that are being moved to the EC2-VPC platform, or that are being restored to the EC2-Classic platform. This request does not return information about any other Elastic IP addresses in your account.

        ", "DescribeNetworkAcls": "

        Describes one or more of your network ACLs.

        For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeNetworkInterfaceAttribute": "

        Describes a network interface attribute. You can specify only one attribute at a time.

        ", "DescribeNetworkInterfaces": "

        Describes one or more of your network interfaces.

        ", "DescribePlacementGroups": "

        Describes one or more of your placement groups. For more information about placement groups and cluster instances, see Cluster Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribePrefixLists": "

        Describes available AWS services in a prefix list format, which includes the prefix list name and prefix list ID of the service and the IP address range for the service. A prefix list ID is required for creating an outbound security group rule that allows traffic from a VPC to access an AWS service through a VPC endpoint.

        ", "DescribeRegions": "

        Describes one or more regions that are currently available to you.

        For a list of the regions supported by Amazon EC2, see Regions and Endpoints.

        ", "DescribeReservedInstances": "

        Describes one or more of the Reserved Instances that you purchased.

        For more information about Reserved Instances, see Reserved Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeReservedInstancesListings": "

        Describes your account's Reserved Instance listings in the Reserved Instance Marketplace.

        The Reserved Instance Marketplace matches sellers who want to resell Reserved Instance capacity that they no longer need with buyers who want to purchase additional capacity. Reserved Instances bought and sold through the Reserved Instance Marketplace work like any other Reserved Instances.

        As a seller, you choose to list some or all of your Reserved Instances, and you specify the upfront price to receive for them. Your Reserved Instances are then listed in the Reserved Instance Marketplace and are available for purchase.

        As a buyer, you specify the configuration of the Reserved Instance to purchase, and the Marketplace matches what you're searching for with what's available. The Marketplace first sells the lowest priced Reserved Instances to you, and continues to sell available Reserved Instance listings to you until your demand is met. You are charged based on the total price of all of the listings that you purchase.

        For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeReservedInstancesModifications": "

        Describes the modifications made to your Reserved Instances. If no parameter is specified, information about all your Reserved Instances modification requests is returned. If a modification ID is specified, only information about the specific modification is returned.

        For more information, see Modifying Reserved Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeReservedInstancesOfferings": "

        Describes Reserved Instance offerings that are available for purchase. With Reserved Instances, you purchase the right to launch instances for a period of time. During that time period, you do not receive insufficient capacity errors, and you pay a lower usage rate than the rate charged for On-Demand instances for the actual time used.

        For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeRouteTables": "

        Describes one or more of your route tables.

        Each subnet in your VPC must be associated with a route table. If a subnet is not explicitly associated with any route table, it is implicitly associated with the main route table. This command does not return the subnet ID for implicit associations.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeSecurityGroups": "

        Describes one or more of your security groups.

        A security group is for use with instances either in the EC2-Classic platform or in a specific VPC. For more information, see Amazon EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide and Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeSnapshotAttribute": "

        Describes the specified attribute of the specified snapshot. You can specify only one attribute at a time.

        For more information about EBS snapshots, see Amazon EBS Snapshots in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeSnapshots": "

        Describes one or more of the EBS snapshots available to you. Available snapshots include public snapshots available for any AWS account to launch, private snapshots that you own, and private snapshots owned by another AWS account but for which you've been given explicit create volume permissions.

        The create volume permissions fall into the following categories:

        • public: The owner of the snapshot granted create volume permissions for the snapshot to the all group. All AWS accounts have create volume permissions for these snapshots.
        • explicit: The owner of the snapshot granted create volume permissions to a specific AWS account.
        • implicit: An AWS account has implicit create volume permissions for all snapshots it owns.

        The list of snapshots returned can be modified by specifying snapshot IDs, snapshot owners, or AWS accounts with create volume permissions. If no options are specified, Amazon EC2 returns all snapshots for which you have create volume permissions.

        If you specify one or more snapshot IDs, only snapshots that have the specified IDs are returned. If you specify an invalid snapshot ID, an error is returned. If you specify a snapshot ID for which you do not have access, it is not included in the returned results.

        If you specify one or more snapshot owners, only snapshots from the specified owners and for which you have access are returned. The results can include the AWS account IDs of the specified owners, amazon for snapshots owned by Amazon, or self for snapshots that you own.

        If you specify a list of restorable users, only snapshots with create snapshot permissions for those users are returned. You can specify AWS account IDs (if you own the snapshots), self for snapshots for which you own or have explicit permissions, or all for public snapshots.

        If you are describing a long list of snapshots, you can paginate the output to make the list more manageable. The MaxResults parameter sets the maximum number of results returned in a single page. If the list of results exceeds your MaxResults value, then that number of results is returned along with a NextToken value that can be passed to a subsequent DescribeSnapshots request to retrieve the remaining results.

        For more information about EBS snapshots, see Amazon EBS Snapshots in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeSpotDatafeedSubscription": "

        Describes the data feed for Spot instances. For more information, see Spot Instance Data Feed in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeSpotFleetInstances": "

        Describes the running instances for the specified Spot fleet.

        ", "DescribeSpotFleetRequestHistory": "

        Describes the events for the specified Spot fleet request during the specified time.

        Spot fleet events are delayed by up to 30 seconds before they can be described. This ensures that you can query by the last evaluated time and not miss a recorded event.

        ", "DescribeSpotFleetRequests": "

        Describes your Spot fleet requests.

        ", "DescribeSpotInstanceRequests": "

        Describes the Spot instance requests that belong to your account. Spot instances are instances that Amazon EC2 launches when the bid price that you specify exceeds the current Spot price. Amazon EC2 periodically sets the Spot price based on available Spot instance capacity and current Spot instance requests. For more information, see Spot Instance Requests in the Amazon Elastic Compute Cloud User Guide.

        You can use DescribeSpotInstanceRequests to find a running Spot instance by examining the response. If the status of the Spot instance is fulfilled, the instance ID appears in the response and contains the identifier of the instance. Alternatively, you can use DescribeInstances with a filter to look for instances where the instance lifecycle is spot.

        ", "DescribeSpotPriceHistory": "

        Describes the Spot price history. The prices returned are listed in chronological order, from the oldest to the most recent, for up to the past 90 days. For more information, see Spot Instance Pricing History in the Amazon Elastic Compute Cloud User Guide.

        When you specify a start and end time, this operation returns the prices of the instance types within the time range that you specified and the time when the price changed. The price is valid within the time period that you specified; the response merely indicates the last time that the price changed.

        ", "DescribeSubnets": "

        Describes one or more of your subnets.

        For more information about subnets, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeTags": "

        Describes one or more of the tags for your EC2 resources.

        For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeVolumeAttribute": "

        Describes the specified attribute of the specified volume. You can specify only one attribute at a time.

        For more information about EBS volumes, see Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeVolumeStatus": "

        Describes the status of the specified volumes. Volume status provides the result of the checks performed on your volumes to determine events that can impair the performance of your volumes. The performance of a volume can be affected if an issue occurs on the volume's underlying host. If the volume's underlying host experiences a power outage or system issue, after the system is restored, there could be data inconsistencies on the volume. Volume events notify you if this occurs. Volume actions notify you if any action needs to be taken in response to the event.

        The DescribeVolumeStatus operation provides the following information about the specified volumes:

        Status: Reflects the current status of the volume. The possible values are ok, impaired , warning, or insufficient-data. If all checks pass, the overall status of the volume is ok. If the check fails, the overall status is impaired. If the status is insufficient-data, then the checks may still be taking place on your volume at the time. We recommend that you retry the request. For more information on volume status, see Monitoring the Status of Your Volumes.

        Events: Reflect the cause of a volume status and may require you to take action. For example, if your volume returns an impaired status, then the volume event might be potential-data-inconsistency. This means that your volume has been affected by an issue with the underlying host, has all I/O operations disabled, and may have inconsistent data.

        Actions: Reflect the actions you may have to take in response to an event. For example, if the status of the volume is impaired and the volume event shows potential-data-inconsistency, then the action shows enable-volume-io. This means that you may want to enable the I/O operations for the volume by calling the EnableVolumeIO action and then check the volume for data consistency.

        Volume status is based on the volume status checks, and does not reflect the volume state. Therefore, volume status does not indicate volumes in the error state (for example, when a volume is incapable of accepting I/O.)

        ", "DescribeVolumes": "

        Describes the specified EBS volumes.

        If you are describing a long list of volumes, you can paginate the output to make the list more manageable. The MaxResults parameter sets the maximum number of results returned in a single page. If the list of results exceeds your MaxResults value, then that number of results is returned along with a NextToken value that can be passed to a subsequent DescribeVolumes request to retrieve the remaining results.

        For more information about EBS volumes, see Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeVpcAttribute": "

        Describes the specified attribute of the specified VPC. You can specify only one attribute at a time.

        ", "DescribeVpcClassicLink": "

        Describes the ClassicLink status of one or more VPCs.

        ", "DescribeVpcEndpointServices": "

        Describes all supported AWS services that can be specified when creating a VPC endpoint.

        ", "DescribeVpcEndpoints": "

        Describes one or more of your VPC endpoints.

        ", "DescribeVpcPeeringConnections": "

        Describes one or more of your VPC peering connections.

        ", "DescribeVpcs": "

        Describes one or more of your VPCs.

        ", "DescribeVpnConnections": "

        Describes one or more of your VPN connections.

        For more information about VPN connections, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeVpnGateways": "

        Describes one or more of your virtual private gateways.

        For more information about virtual private gateways, see Adding an IPsec Hardware VPN to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DetachClassicLinkVpc": "

        Unlinks (detaches) a linked EC2-Classic instance from a VPC. After the instance has been unlinked, the VPC security groups are no longer associated with it. An instance is automatically unlinked from a VPC when it's stopped.

        ", "DetachInternetGateway": "

        Detaches an Internet gateway from a VPC, disabling connectivity between the Internet and the VPC. The VPC must not contain any running instances with Elastic IP addresses.

        ", "DetachNetworkInterface": "

        Detaches a network interface from an instance.

        ", "DetachVolume": "

        Detaches an EBS volume from an instance. Make sure to unmount any file systems on the device within your operating system before detaching the volume. Failure to do so results in the volume being stuck in a busy state while detaching.

        If an Amazon EBS volume is the root device of an instance, it can't be detached while the instance is running. To detach the root volume, stop the instance first.

        When a volume with an AWS Marketplace product code is detached from an instance, the product code is no longer associated with the instance.

        For more information, see Detaching an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide.

        ", "DetachVpnGateway": "

        Detaches a virtual private gateway from a VPC. You do this if you're planning to turn off the VPC and not use it anymore. You can confirm a virtual private gateway has been completely detached from a VPC by describing the virtual private gateway (any attachments to the virtual private gateway are also described).

        You must wait for the attachment's state to switch to detached before you can delete the VPC or attach a different VPC to the virtual private gateway.

        ", "DisableVgwRoutePropagation": "

        Disables a virtual private gateway (VGW) from propagating routes to a specified route table of a VPC.

        ", "DisableVpcClassicLink": "

        Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC that has EC2-Classic instances linked to it.

        ", "DisassociateAddress": "

        Disassociates an Elastic IP address from the instance or network interface it's associated with.

        An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error.

        ", "DisassociateRouteTable": "

        Disassociates a subnet from a route table.

        After you perform this action, the subnet no longer uses the routes in the route table. Instead, it uses the routes in the VPC's main route table. For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "EnableVgwRoutePropagation": "

        Enables a virtual private gateway (VGW) to propagate routes to the specified route table of a VPC.

        ", "EnableVolumeIO": "

        Enables I/O operations for a volume that had I/O operations disabled because the data on the volume was potentially inconsistent.

        ", "EnableVpcClassicLink": "

        Enables a VPC for ClassicLink. You can then link EC2-Classic instances to your ClassicLink-enabled VPC to allow communication over private IP addresses. You cannot enable your VPC for ClassicLink if any of your VPC's route tables have existing routes for address ranges within the 10.0.0.0/8 IP address range, excluding local routes for VPCs in the 10.0.0.0/16 and 10.1.0.0/16 IP address ranges. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

        ", "GetConsoleOutput": "

        Gets the console output for the specified instance.

        Instances do not have a physical monitor through which you can view their console output. They also lack physical controls that allow you to power up, reboot, or shut them down. To allow these actions, we provide them through the Amazon EC2 API and command line interface.

        Instance console output is buffered and posted shortly after instance boot, reboot, and termination. Amazon EC2 preserves the most recent 64 KB output which is available for at least one hour after the most recent post.

        For Linux instances, the instance console output displays the exact console output that would normally be displayed on a physical monitor attached to a computer. This output is buffered because the instance produces it and then posts it to a store where the instance's owner can retrieve it.

        For Windows instances, the instance console output includes output from the EC2Config service.

        ", "GetPasswordData": "

        Retrieves the encrypted administrator password for an instance running Windows.

        The Windows password is generated at boot if the EC2Config service plugin, Ec2SetPassword, is enabled. This usually only happens the first time an AMI is launched, and then Ec2SetPassword is automatically disabled. The password is not generated for rebundled AMIs unless Ec2SetPassword is enabled before bundling.

        The password is encrypted using the key pair that you specified when you launched the instance. You must provide the corresponding key pair file.

        Password generation and encryption takes a few moments. We recommend that you wait up to 15 minutes after launching an instance before trying to retrieve the generated password.

        ", "ImportImage": "

        Import single or multi-volume disk images or EBS snapshots into an Amazon Machine Image (AMI).

        ", "ImportInstance": "

        Creates an import instance task using metadata from the specified disk image. ImportInstance only supports single-volume VMs. To import multi-volume VMs, use ImportImage. After importing the image, you then upload it using the ec2-import-volume command in the EC2 command line tools. For more information, see Using the Command Line Tools to Import Your Virtual Machine to Amazon EC2 in the Amazon Elastic Compute Cloud User Guide.

        ", "ImportKeyPair": "

        Imports the public key from an RSA key pair that you created with a third-party tool. Compare this with CreateKeyPair, in which AWS creates the key pair and gives the keys to you (AWS keeps a copy of the public key). With ImportKeyPair, you create the key pair and give AWS just the public key. The private key is never transferred between you and AWS.

        For more information about key pairs, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.

        ", "ImportSnapshot": "

        Imports a disk into an EBS snapshot.

        ", "ImportVolume": "

        Creates an import volume task using metadata from the specified disk image. After importing the image, you then upload it using the ec2-import-volume command in the Amazon EC2 command-line interface (CLI) tools. For more information, see Using the Command Line Tools to Import Your Virtual Machine to Amazon EC2 in the Amazon Elastic Compute Cloud User Guide.

        ", "ModifyImageAttribute": "

        Modifies the specified attribute of the specified AMI. You can specify only one attribute at a time.

        AWS Marketplace product codes cannot be modified. Images with an AWS Marketplace product code cannot be made public.

        ", "ModifyInstanceAttribute": "

        Modifies the specified attribute of the specified instance. You can specify only one attribute at a time.

        To modify some attributes, the instance must be stopped. For more information, see Modifying Attributes of a Stopped Instance in the Amazon Elastic Compute Cloud User Guide.

        ", "ModifyNetworkInterfaceAttribute": "

        Modifies the specified network interface attribute. You can specify only one attribute at a time.

        ", "ModifyReservedInstances": "

        Modifies the Availability Zone, instance count, instance type, or network platform (EC2-Classic or EC2-VPC) of your Reserved Instances. The Reserved Instances to be modified must be identical, except for Availability Zone, network platform, and instance type.

        For more information, see Modifying Reserved Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "ModifySnapshotAttribute": "

        Adds or removes permission settings for the specified snapshot. You may add or remove specified AWS account IDs from a snapshot's list of create volume permissions, but you cannot do both in a single API call. If you need to both add and remove account IDs for a snapshot, you must use multiple API calls.

        For more information on modifying snapshot permissions, see Sharing Snapshots in the Amazon Elastic Compute Cloud User Guide.

        Snapshots with AWS Marketplace product codes cannot be made public.

        ", "ModifySubnetAttribute": "

        Modifies a subnet attribute.

        ", "ModifyVolumeAttribute": "

        Modifies a volume attribute.

        By default, all I/O operations for the volume are suspended when the data on the volume is determined to be potentially inconsistent, to prevent undetectable, latent data corruption. The I/O access to the volume can be resumed by first enabling I/O access and then checking the data consistency on your volume.

        You can change the default behavior to resume I/O operations. We recommend that you change this only for boot volumes or for volumes that are stateless or disposable.

        ", "ModifyVpcAttribute": "

        Modifies the specified attribute of the specified VPC.

        ", "ModifyVpcEndpoint": "

        Modifies attributes of a specified VPC endpoint. You can modify the policy associated with the endpoint, and you can add and remove route tables associated with the endpoint.

        ", "MonitorInstances": "

        Enables monitoring for a running instance. For more information about monitoring instances, see Monitoring Your Instances and Volumes in the Amazon Elastic Compute Cloud User Guide.

        ", "MoveAddressToVpc": "

        Moves an Elastic IP address from the EC2-Classic platform to the EC2-VPC platform. The Elastic IP address must be allocated to your account, and it must not be associated with an instance. After the Elastic IP address is moved, it is no longer available for use in the EC2-Classic platform, unless you move it back using the RestoreAddressToClassic request. You cannot move an Elastic IP address that's allocated for use in the EC2-VPC platform to the EC2-Classic platform.

        ", "PurchaseReservedInstancesOffering": "

        Purchases a Reserved Instance for use with your account. With Amazon EC2 Reserved Instances, you obtain a capacity reservation for a certain instance configuration over a specified period of time and pay a lower hourly rate compared to on-Demand Instance pricing.

        Use DescribeReservedInstancesOfferings to get a list of Reserved Instance offerings that match your specifications. After you've purchased a Reserved Instance, you can check for your new Reserved Instance with DescribeReservedInstances.

        For more information, see Reserved Instances and Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "RebootInstances": "

        Requests a reboot of one or more instances. This operation is asynchronous; it only queues a request to reboot the specified instances. The operation succeeds if the instances are valid and belong to you. Requests to reboot terminated instances are ignored.

        If a Linux/Unix instance does not cleanly shut down within four minutes, Amazon EC2 performs a hard reboot.

        For more information about troubleshooting, see Getting Console Output and Rebooting Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "RegisterImage": "

        Registers an AMI. When you're creating an AMI, this is the final step you must complete before you can launch an instance from the AMI. For more information about creating AMIs, see Creating Your Own AMIs in the Amazon Elastic Compute Cloud User Guide.

        For Amazon EBS-backed instances, CreateImage creates and registers the AMI in a single request, so you don't have to register the AMI yourself.

        You can also use RegisterImage to create an Amazon EBS-backed Linux AMI from a snapshot of a root device volume. For more information, see Launching an Instance from a Snapshot in the Amazon Elastic Compute Cloud User Guide.

        Some Linux distributions, such as Red Hat Enterprise Linux (RHEL) and SUSE Linux Enterprise Server (SLES), use the EC2 billingProduct code associated with an AMI to verify subscription status for package updates. Creating an AMI from an EBS snapshot does not maintain this billing code, and subsequent instances launched from such an AMI will not be able to connect to package update infrastructure.

        Similarly, although you can create a Windows AMI from a snapshot, you can't successfully launch an instance from the AMI.

        To create Windows AMIs or to create AMIs for Linux operating systems that must retain AMI billing codes to work properly, see CreateImage.

        If needed, you can deregister an AMI at any time. Any modifications you make to an AMI backed by an instance store volume invalidates its registration. If you make changes to an image, deregister the previous image and register the new image.

        You can't register an image where a secondary (non-root) snapshot has AWS Marketplace product codes.

        ", "RejectVpcPeeringConnection": "

        Rejects a VPC peering connection request. The VPC peering connection must be in the pending-acceptance state. Use the DescribeVpcPeeringConnections request to view your outstanding VPC peering connection requests. To delete an active VPC peering connection, or to delete a VPC peering connection request that you initiated, use DeleteVpcPeeringConnection.

        ", "ReleaseAddress": "

        Releases the specified Elastic IP address.

        After releasing an Elastic IP address, it is released to the IP address pool and might be unavailable to you. Be sure to update your DNS records and any servers or devices that communicate with the address. If you attempt to release an Elastic IP address that you already released, you'll get an AuthFailure error if the address is already allocated to another AWS account.

        [EC2-Classic, default VPC] Releasing an Elastic IP address automatically disassociates it from any instance that it's associated with. To disassociate an Elastic IP address without releasing it, use DisassociateAddress.

        [Nondefault VPC] You must use DisassociateAddress to disassociate the Elastic IP address before you try to release it. Otherwise, Amazon EC2 returns an error (InvalidIPAddress.InUse).

        ", "ReplaceNetworkAclAssociation": "

        Changes which network ACL a subnet is associated with. By default when you create a subnet, it's automatically associated with the default network ACL. For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "ReplaceNetworkAclEntry": "

        Replaces an entry (rule) in a network ACL. For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "ReplaceRoute": "

        Replaces an existing route within a route table in a VPC. You must provide only one of the following: Internet gateway or virtual private gateway, NAT instance, VPC peering connection, or network interface.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "ReplaceRouteTableAssociation": "

        Changes the route table associated with a given subnet in a VPC. After the operation completes, the subnet uses the routes in the new route table it's associated with. For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        You can also use ReplaceRouteTableAssociation to change which table is the main route table in the VPC. You just specify the main route table's association ID and the route table to be the new main route table.

        ", "ReportInstanceStatus": "

        Submits feedback about the status of an instance. The instance must be in the running state. If your experience with the instance differs from the instance status returned by DescribeInstanceStatus, use ReportInstanceStatus to report your experience with the instance. Amazon EC2 collects this information to improve the accuracy of status checks.

        Use of this action does not change the value returned by DescribeInstanceStatus.

        ", "RequestSpotFleet": "

        Creates a Spot fleet request.

        You can submit a single request that includes multiple launch specifications that vary by instance type, AMI, Availability Zone, or subnet.

        By default, the Spot fleet requests Spot instances in the Spot pool where the price per unit is the lowest. Each launch specification can include its own instance weighting that reflects the value of the instance type to your application workload.

        Alternatively, you can specify that the Spot fleet distribute the target capacity across the Spot pools included in its launch specifications. By ensuring that the Spot instances in your Spot fleet are in different Spot pools, you can improve the availability of your fleet.

        For more information, see Spot Fleet Requests in the Amazon Elastic Compute Cloud User Guide.

        ", "RequestSpotInstances": "

        Creates a Spot instance request. Spot instances are instances that Amazon EC2 launches when the bid price that you specify exceeds the current Spot price. Amazon EC2 periodically sets the Spot price based on available Spot Instance capacity and current Spot instance requests. For more information, see Spot Instance Requests in the Amazon Elastic Compute Cloud User Guide.

        ", "ResetImageAttribute": "

        Resets an attribute of an AMI to its default value.

        The productCodes attribute can't be reset.

        ", "ResetInstanceAttribute": "

        Resets an attribute of an instance to its default value. To reset the kernel or ramdisk, the instance must be in a stopped state. To reset the SourceDestCheck, the instance can be either running or stopped.

        The SourceDestCheck attribute controls whether source/destination checking is enabled. The default value is true, which means checking is enabled. This value must be false for a NAT instance to perform NAT. For more information, see NAT Instances in the Amazon Virtual Private Cloud User Guide.

        ", "ResetNetworkInterfaceAttribute": "

        Resets a network interface attribute. You can specify only one attribute at a time.

        ", "ResetSnapshotAttribute": "

        Resets permission settings for the specified snapshot.

        For more information on modifying snapshot permissions, see Sharing Snapshots in the Amazon Elastic Compute Cloud User Guide.

        ", "RestoreAddressToClassic": "

        Restores an Elastic IP address that was previously moved to the EC2-VPC platform back to the EC2-Classic platform. You cannot move an Elastic IP address that was originally allocated for use in EC2-VPC. The Elastic IP address must not be associated with an instance or network interface.

        ", "RevokeSecurityGroupEgress": "

        Removes one or more egress rules from a security group for EC2-VPC. The values that you specify in the revoke request (for example, ports) must match the existing rule's values for the rule to be revoked.

        Each rule consists of the protocol and the CIDR range or source security group. For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code.

        Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

        ", "RevokeSecurityGroupIngress": "

        Removes one or more ingress rules from a security group. The values that you specify in the revoke request (for example, ports) must match the existing rule's values for the rule to be removed.

        Each rule consists of the protocol and the CIDR range or source security group. For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code.

        Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

        ", "RunInstances": "

        Launches the specified number of instances using an AMI for which you have permissions.

        When you launch an instance, it enters the pending state. After the instance is ready for you, it enters the running state. To check the state of your instance, call DescribeInstances.

        If you don't specify a security group when launching an instance, Amazon EC2 uses the default security group. For more information, see Security Groups in the Amazon Elastic Compute Cloud User Guide.

        [EC2-VPC only accounts] If you don't specify a subnet in the request, we choose a default subnet from your default VPC for you.

        [EC2-Classic accounts] If you're launching into EC2-Classic and you don't specify an Availability Zone, we choose one for you.

        Linux instances have access to the public key of the key pair at boot. You can use this key to provide secure access to the instance. Amazon EC2 public images use this feature to provide secure access without passwords. For more information, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.

        You can provide optional user data when launching an instance. For more information, see Instance Metadata in the Amazon Elastic Compute Cloud User Guide.

        If any of the AMIs have a product code attached for which the user has not subscribed, RunInstances fails.

        T2 instance types can only be launched into a VPC. If you do not have a default VPC, or if you do not specify a subnet ID in the request, RunInstances fails.

        For more information about troubleshooting, see What To Do If An Instance Immediately Terminates, and Troubleshooting Connecting to Your Instance in the Amazon Elastic Compute Cloud User Guide.

        ", "StartInstances": "

        Starts an Amazon EBS-backed AMI that you've previously stopped.

        Instances that use Amazon EBS volumes as their root devices can be quickly stopped and started. When an instance is stopped, the compute resources are released and you are not billed for hourly instance usage. However, your root partition Amazon EBS volume remains, continues to persist your data, and you are charged for Amazon EBS volume usage. You can restart your instance at any time. Each time you transition an instance from stopped to started, Amazon EC2 charges a full instance hour, even if transitions happen multiple times within a single hour.

        Before stopping an instance, make sure it is in a state from which it can be restarted. Stopping an instance does not preserve data stored in RAM.

        Performing this operation on an instance that uses an instance store as its root device returns an error.

        For more information, see Stopping Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "StopInstances": "

        Stops an Amazon EBS-backed instance. Each time you transition an instance from stopped to started, Amazon EC2 charges a full instance hour, even if transitions happen multiple times within a single hour.

        You can't start or stop Spot Instances.

        Instances that use Amazon EBS volumes as their root devices can be quickly stopped and started. When an instance is stopped, the compute resources are released and you are not billed for hourly instance usage. However, your root partition Amazon EBS volume remains, continues to persist your data, and you are charged for Amazon EBS volume usage. You can restart your instance at any time.

        Before stopping an instance, make sure it is in a state from which it can be restarted. Stopping an instance does not preserve data stored in RAM.

        Performing this operation on an instance that uses an instance store as its root device returns an error.

        You can stop, start, and terminate EBS-backed instances. You can only terminate instance store-backed instances. What happens to an instance differs if you stop it or terminate it. For example, when you stop an instance, the root device and any other devices attached to the instance persist. When you terminate an instance, the root device and any other devices attached during the instance launch are automatically deleted. For more information about the differences between stopping and terminating instances, see Instance Lifecycle in the Amazon Elastic Compute Cloud User Guide.

        For more information about troubleshooting, see Troubleshooting Stopping Your Instance in the Amazon Elastic Compute Cloud User Guide.

        ", "TerminateInstances": "

        Shuts down one or more instances. This operation is idempotent; if you terminate an instance more than once, each call succeeds.

        Terminated instances remain visible after termination (for approximately one hour).

        By default, Amazon EC2 deletes all EBS volumes that were attached when the instance launched. Volumes attached after instance launch continue running.

        You can stop, start, and terminate EBS-backed instances. You can only terminate instance store-backed instances. What happens to an instance differs if you stop it or terminate it. For example, when you stop an instance, the root device and any other devices attached to the instance persist. When you terminate an instance, any attached EBS volumes with the DeleteOnTermination block device mapping parameter set to true are automatically deleted. For more information about the differences between stopping and terminating instances, see Instance Lifecycle in the Amazon Elastic Compute Cloud User Guide.

        For more information about troubleshooting, see Troubleshooting Terminating Your Instance in the Amazon Elastic Compute Cloud User Guide.

        ", "UnassignPrivateIpAddresses": "

        Unassigns one or more secondary private IP addresses from a network interface.

        ", "UnmonitorInstances": "

        Disables monitoring for a running instance. For more information about monitoring instances, see Monitoring Your Instances and Volumes in the Amazon Elastic Compute Cloud User Guide.

        " }, "service": "Amazon Elastic Compute Cloud

        Amazon Elastic Compute Cloud (Amazon EC2) provides resizable computing capacity in the Amazon Web Services (AWS) cloud. Using Amazon EC2 eliminates your need to invest in hardware up front, so you can develop and deploy applications faster.

        ", "shapes": { "AcceptVpcPeeringConnectionRequest": { "base": null, "refs": { } }, "AcceptVpcPeeringConnectionResult": { "base": null, "refs": { } }, "AccountAttribute": { "base": "

        Describes an account attribute.

        ", "refs": { "AccountAttributeList$member": null } }, "AccountAttributeList": { "base": null, "refs": { "DescribeAccountAttributesResult$AccountAttributes": "

        Information about one or more account attributes.

        " } }, "AccountAttributeName": { "base": null, "refs": { "AccountAttributeNameStringList$member": null } }, "AccountAttributeNameStringList": { "base": null, "refs": { "DescribeAccountAttributesRequest$AttributeNames": "

        One or more account attribute names.

        " } }, "AccountAttributeValue": { "base": "

        Describes a value of an account attribute.

        ", "refs": { "AccountAttributeValueList$member": null } }, "AccountAttributeValueList": { "base": null, "refs": { "AccountAttribute$AttributeValues": "

        One or more values for the account attribute.

        " } }, "ActiveInstance": { "base": "

        Describes a running instance in a Spot fleet.

        ", "refs": { "ActiveInstanceSet$member": null } }, "ActiveInstanceSet": { "base": null, "refs": { "DescribeSpotFleetInstancesResponse$ActiveInstances": "

        The running instances. Note that this list is refreshed periodically and might be out of date.

        " } }, "Address": { "base": "

        Describes an Elastic IP address.

        ", "refs": { "AddressList$member": null } }, "AddressList": { "base": null, "refs": { "DescribeAddressesResult$Addresses": "

        Information about one or more Elastic IP addresses.

        " } }, "AllocateAddressRequest": { "base": null, "refs": { } }, "AllocateAddressResult": { "base": null, "refs": { } }, "AllocationIdList": { "base": null, "refs": { "DescribeAddressesRequest$AllocationIds": "

        [EC2-VPC] One or more allocation IDs.

        Default: Describes all your Elastic IP addresses.

        " } }, "AllocationStrategy": { "base": null, "refs": { "SpotFleetRequestConfigData$AllocationStrategy": "

        Determines how to allocate the target capacity across the Spot pools specified by the Spot fleet request. The default is lowestPrice.

        " } }, "ArchitectureValues": { "base": null, "refs": { "Image$Architecture": "

        The architecture of the image.

        ", "ImportInstanceLaunchSpecification$Architecture": "

        The architecture of the instance.

        ", "Instance$Architecture": "

        The architecture of the image.

        ", "RegisterImageRequest$Architecture": "

        The architecture of the AMI.

        Default: For Amazon EBS-backed AMIs, i386. For instance store-backed AMIs, the architecture specified in the manifest file.

        " } }, "AssignPrivateIpAddressesRequest": { "base": null, "refs": { } }, "AssociateAddressRequest": { "base": null, "refs": { } }, "AssociateAddressResult": { "base": null, "refs": { } }, "AssociateDhcpOptionsRequest": { "base": null, "refs": { } }, "AssociateRouteTableRequest": { "base": null, "refs": { } }, "AssociateRouteTableResult": { "base": null, "refs": { } }, "AttachClassicLinkVpcRequest": { "base": null, "refs": { } }, "AttachClassicLinkVpcResult": { "base": null, "refs": { } }, "AttachInternetGatewayRequest": { "base": null, "refs": { } }, "AttachNetworkInterfaceRequest": { "base": null, "refs": { } }, "AttachNetworkInterfaceResult": { "base": null, "refs": { } }, "AttachVolumeRequest": { "base": null, "refs": { } }, "AttachVpnGatewayRequest": { "base": null, "refs": { } }, "AttachVpnGatewayResult": { "base": null, "refs": { } }, "AttachmentStatus": { "base": null, "refs": { "EbsInstanceBlockDevice$Status": "

        The attachment state.

        ", "InstanceNetworkInterfaceAttachment$Status": "

        The attachment state.

        ", "InternetGatewayAttachment$State": "

        The current state of the attachment.

        ", "NetworkInterfaceAttachment$Status": "

        The attachment state.

        ", "VpcAttachment$State": "

        The current state of the attachment.

        " } }, "AttributeBooleanValue": { "base": "

        The value to use when a resource attribute accepts a Boolean value.

        ", "refs": { "DescribeNetworkInterfaceAttributeResult$SourceDestCheck": "

        Indicates whether source/destination checking is enabled.

        ", "DescribeVolumeAttributeResult$AutoEnableIO": "

        The state of autoEnableIO attribute.

        ", "DescribeVpcAttributeResult$EnableDnsSupport": "

        Indicates whether DNS resolution is enabled for the VPC. If this attribute is true, the Amazon DNS server resolves DNS hostnames for your instances to their corresponding IP addresses; otherwise, it does not.

        ", "DescribeVpcAttributeResult$EnableDnsHostnames": "

        Indicates whether the instances launched in the VPC get DNS hostnames. If this attribute is true, instances in the VPC get DNS hostnames; otherwise, they do not.

        ", "InstanceAttribute$DisableApiTermination": "

        If the value is true, you can't terminate the instance through the Amazon EC2 console, CLI, or API; otherwise, you can.

        ", "InstanceAttribute$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O.

        ", "InstanceAttribute$SourceDestCheck": "

        Indicates whether source/destination checking is enabled. A value of true means checking is enabled, and false means checking is disabled. This value must be false for a NAT instance to perform NAT.

        ", "ModifyInstanceAttributeRequest$SourceDestCheck": "

        Specifies whether source/destination checking is enabled. A value of true means that checking is enabled, and false means checking is disabled. This value must be false for a NAT instance to perform NAT.

        ", "ModifyInstanceAttributeRequest$DisableApiTermination": "

        If the value is true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. You cannot use this paramater for Spot Instances.

        ", "ModifyInstanceAttributeRequest$EbsOptimized": "

        Specifies whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        ", "ModifyNetworkInterfaceAttributeRequest$SourceDestCheck": "

        Indicates whether source/destination checking is enabled. A value of true means checking is enabled, and false means checking is disabled. This value must be false for a NAT instance to perform NAT. For more information, see NAT Instances in the Amazon Virtual Private Cloud User Guide.

        ", "ModifySubnetAttributeRequest$MapPublicIpOnLaunch": "

        Specify true to indicate that instances launched into the specified subnet should be assigned public IP address.

        ", "ModifyVolumeAttributeRequest$AutoEnableIO": "

        Indicates whether the volume should be auto-enabled for I/O operations.

        ", "ModifyVpcAttributeRequest$EnableDnsSupport": "

        Indicates whether the DNS resolution is supported for the VPC. If enabled, queries to the Amazon provided DNS server at the 169.254.169.253 IP address, or the reserved IP address at the base of the VPC network range \"plus two\" will succeed. If disabled, the Amazon provided DNS service in the VPC that resolves public DNS hostnames to IP addresses is not enabled.

        ", "ModifyVpcAttributeRequest$EnableDnsHostnames": "

        Indicates whether the instances launched in the VPC get DNS hostnames. If enabled, instances in the VPC get DNS hostnames; otherwise, they do not.

        You can only enable DNS hostnames if you also enable DNS support.

        " } }, "AttributeValue": { "base": "

        The value to use for a resource attribute.

        ", "refs": { "DescribeNetworkInterfaceAttributeResult$Description": "

        The description of the network interface.

        ", "ImageAttribute$KernelId": "

        The kernel ID.

        ", "ImageAttribute$RamdiskId": "

        The RAM disk ID.

        ", "ImageAttribute$Description": "

        A description for the AMI.

        ", "ImageAttribute$SriovNetSupport": null, "InstanceAttribute$InstanceType": "

        The instance type.

        ", "InstanceAttribute$KernelId": "

        The kernel ID.

        ", "InstanceAttribute$RamdiskId": "

        The RAM disk ID.

        ", "InstanceAttribute$UserData": "

        The Base64-encoded MIME user data.

        ", "InstanceAttribute$InstanceInitiatedShutdownBehavior": "

        Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

        ", "InstanceAttribute$RootDeviceName": "

        The name of the root device (for example, /dev/sda1 or /dev/xvda).

        ", "InstanceAttribute$SriovNetSupport": null, "ModifyImageAttributeRequest$Description": "

        A description for the AMI.

        ", "ModifyInstanceAttributeRequest$InstanceType": "

        Changes the instance type to the specified value. For more information, see Instance Types. If the instance type is not valid, the error returned is InvalidInstanceAttributeValue.

        ", "ModifyInstanceAttributeRequest$Kernel": "

        Changes the instance's kernel to the specified value. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB.

        ", "ModifyInstanceAttributeRequest$Ramdisk": "

        Changes the instance's RAM disk to the specified value. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB.

        ", "ModifyInstanceAttributeRequest$InstanceInitiatedShutdownBehavior": "

        Specifies whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

        ", "ModifyInstanceAttributeRequest$SriovNetSupport": "

        Set to simple to enable enhanced networking for the instance.

        There is no way to disable enhanced networking at this time.

        This option is supported only for HVM instances. Specifying this option with a PV instance can make it unreachable.

        ", "ModifyNetworkInterfaceAttributeRequest$Description": "

        A description for the network interface.

        ", "DhcpConfigurationValueList$member": null } }, "AuthorizeSecurityGroupEgressRequest": { "base": null, "refs": { } }, "AuthorizeSecurityGroupIngressRequest": { "base": null, "refs": { } }, "AvailabilityZone": { "base": "

        Describes an Availability Zone.

        ", "refs": { "AvailabilityZoneList$member": null } }, "AvailabilityZoneList": { "base": null, "refs": { "DescribeAvailabilityZonesResult$AvailabilityZones": "

        Information about one or more Availability Zones.

        " } }, "AvailabilityZoneMessage": { "base": "

        Describes a message about an Availability Zone.

        ", "refs": { "AvailabilityZoneMessageList$member": null } }, "AvailabilityZoneMessageList": { "base": null, "refs": { "AvailabilityZone$Messages": "

        Any messages about the Availability Zone.

        " } }, "AvailabilityZoneState": { "base": null, "refs": { "AvailabilityZone$State": "

        The state of the Availability Zone (available | impaired | unavailable).

        " } }, "BatchState": { "base": null, "refs": { "CancelSpotFleetRequestsSuccessItem$CurrentSpotFleetRequestState": "

        The current state of the Spot fleet request.

        ", "CancelSpotFleetRequestsSuccessItem$PreviousSpotFleetRequestState": "

        The previous state of the Spot fleet request.

        ", "SpotFleetRequestConfig$SpotFleetRequestState": "

        The state of the Spot fleet request.

        " } }, "BlockDeviceMapping": { "base": "

        Describes a block device mapping.

        ", "refs": { "BlockDeviceMappingList$member": null, "BlockDeviceMappingRequestList$member": null } }, "BlockDeviceMappingList": { "base": null, "refs": { "Image$BlockDeviceMappings": "

        Any block device mapping entries.

        ", "ImageAttribute$BlockDeviceMappings": "

        One or more block device mapping entries.

        ", "LaunchSpecification$BlockDeviceMappings": "

        One or more block device mapping entries.

        ", "SpotFleetLaunchSpecification$BlockDeviceMappings": "

        One or more block device mapping entries.

        ", "RequestSpotLaunchSpecification$BlockDeviceMappings": "

        One or more block device mapping entries.

        " } }, "BlockDeviceMappingRequestList": { "base": null, "refs": { "CreateImageRequest$BlockDeviceMappings": "

        Information about one or more block device mappings.

        ", "RegisterImageRequest$BlockDeviceMappings": "

        One or more block device mapping entries.

        ", "RunInstancesRequest$BlockDeviceMappings": "

        The block device mapping.

        " } }, "Boolean": { "base": null, "refs": { "AcceptVpcPeeringConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AllocateAddressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AssignPrivateIpAddressesRequest$AllowReassignment": "

        Indicates whether to allow an IP address that is already assigned to another network interface or instance to be reassigned to the specified network interface.

        ", "AssociateAddressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AssociateAddressRequest$AllowReassociation": "

        [EC2-VPC] Allows an Elastic IP address that is already associated with an instance or network interface to be re-associated with the specified instance or network interface. Otherwise, the operation fails.

        Default: false

        ", "AssociateDhcpOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AssociateRouteTableRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachClassicLinkVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachClassicLinkVpcResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "AttachInternetGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachNetworkInterfaceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachVpnGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttributeBooleanValue$Value": "

        Valid values are true or false.

        ", "AuthorizeSecurityGroupEgressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AuthorizeSecurityGroupIngressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "BundleInstanceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelBundleTaskRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelConversionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelImportTaskRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelSpotFleetRequestsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelSpotFleetRequestsRequest$TerminateInstances": "

        Indicates whether to terminate instances for a Spot fleet request if it is canceled successfully.

        ", "CancelSpotInstanceRequestsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ConfirmProductInstanceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ConfirmProductInstanceResult$Return": "

        The return value of the request. Returns true if the specified product code is owned by the requester and associated with the specified instance.

        ", "CopyImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CopySnapshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CopySnapshotRequest$Encrypted": "

        Specifies whether the destination snapshot should be encrypted. There is no way to create an unencrypted snapshot copy from an encrypted snapshot; however, you can encrypt a copy of an unencrypted snapshot with this flag. The default CMK for EBS is used unless a non-default AWS Key Management Service (AWS KMS) CMK is specified with KmsKeyId. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateCustomerGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateDhcpOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateImageRequest$NoReboot": "

        By default, this parameter is set to false, which means Amazon EC2 attempts to shut down the instance cleanly before image creation and then reboots the instance. When the parameter is set to true, Amazon EC2 doesn't shut down the instance before creating the image. When this option is used, file system integrity on the created image can't be guaranteed.

        ", "CreateInternetGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateKeyPairRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateNetworkAclEntryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateNetworkAclEntryRequest$Egress": "

        Indicates whether this is an egress rule (rule is applied to traffic leaving the subnet).

        ", "CreateNetworkAclRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateNetworkInterfaceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreatePlacementGroupRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateRouteRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateRouteResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "CreateRouteTableRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateSecurityGroupRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateSnapshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateSpotDatafeedSubscriptionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateSubnetRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateTagsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVolumeRequest$Encrypted": "

        Specifies whether the volume should be encrypted. Encrypted Amazon EBS volumes may only be attached to instances that support Amazon EBS encryption. Volumes that are created from encrypted snapshots are automatically encrypted. There is no way to create an encrypted volume from an unencrypted snapshot or vice versa. If your AMI uses encrypted volumes, you can only launch it on supported instance types. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateVpcEndpointRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVpcPeeringConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVpnConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVpnGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteCustomerGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteDhcpOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteInternetGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteKeyPairRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteNetworkAclEntryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteNetworkAclEntryRequest$Egress": "

        Indicates whether the rule is an egress rule.

        ", "DeleteNetworkAclRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteNetworkInterfaceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeletePlacementGroupRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteRouteRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteRouteTableRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteSecurityGroupRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteSnapshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteSpotDatafeedSubscriptionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteSubnetRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteTagsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpcEndpointsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpcPeeringConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpcPeeringConnectionResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "DeleteVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpnConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpnGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeregisterImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeAccountAttributesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeAddressesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeAvailabilityZonesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeBundleTasksRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeClassicLinkInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeConversionTasksRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeCustomerGatewaysRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeDhcpOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeImageAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeImagesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeImportImageTasksRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeImportSnapshotTasksRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeInstanceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeInstanceStatusRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeInstanceStatusRequest$IncludeAllInstances": "

        When true, includes the health status for all instances. When false, includes the health status for running instances only.

        Default: false

        ", "DescribeInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeInternetGatewaysRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeKeyPairsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeMovingAddressesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeNetworkAclsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeNetworkInterfaceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeNetworkInterfacesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribePlacementGroupsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribePrefixListsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeRegionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeReservedInstancesOfferingsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeReservedInstancesOfferingsRequest$IncludeMarketplace": "

        Include Marketplace offerings in the response.

        ", "DescribeReservedInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeRouteTablesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSecurityGroupsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSnapshotAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSnapshotsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotDatafeedSubscriptionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotFleetInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotFleetRequestHistoryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotFleetRequestsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotInstanceRequestsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotPriceHistoryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSubnetsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeTagsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVolumeAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVolumeStatusRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVolumesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcClassicLinkRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcEndpointServicesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcEndpointsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcPeeringConnectionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpnConnectionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpnGatewaysRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachClassicLinkVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachClassicLinkVpcResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "DetachInternetGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachNetworkInterfaceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachNetworkInterfaceRequest$Force": "

        Specifies whether to force a detachment.

        ", "DetachVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachVolumeRequest$Force": "

        Forces detachment if the previous detachment attempt did not occur cleanly (for example, logging into an instance, unmounting the volume, and detaching normally). This option can lead to data loss or a corrupted file system. Use this option only as a last resort to detach a volume from a failed instance. The instance won't have an opportunity to flush file system caches or file system metadata. If you use this option, you must perform file system check and repair procedures.

        ", "DetachVpnGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DisableVpcClassicLinkRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DisableVpcClassicLinkResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "DisassociateAddressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DisassociateRouteTableRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "EbsBlockDevice$DeleteOnTermination": "

        Indicates whether the EBS volume is deleted on instance termination.

        ", "EbsBlockDevice$Encrypted": "

        Indicates whether the EBS volume is encrypted. Encrypted Amazon EBS volumes may only be attached to instances that support Amazon EBS encryption.

        ", "EbsInstanceBlockDevice$DeleteOnTermination": "

        Indicates whether the volume is deleted on instance termination.

        ", "EbsInstanceBlockDeviceSpecification$DeleteOnTermination": "

        Indicates whether the volume is deleted on instance termination.

        ", "EnableVolumeIORequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "EnableVpcClassicLinkRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "EnableVpcClassicLinkResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "GetConsoleOutputRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "GetPasswordDataRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "Image$Public": "

        Indicates whether the image has public launch permissions. The value is true if this image has public launch permissions or false if it has only implicit and explicit launch permissions.

        ", "ImportImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ImportInstanceLaunchSpecification$Monitoring": "

        Indicates whether monitoring is enabled.

        ", "ImportInstanceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ImportKeyPairRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ImportSnapshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ImportVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "Instance$SourceDestCheck": "

        Specifies whether to enable an instance launched in a VPC to perform NAT. This controls whether source/destination checking is enabled on the instance. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the instance to perform NAT. For more information, see NAT Instances in the Amazon Virtual Private Cloud User Guide.

        ", "Instance$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        ", "InstanceNetworkInterface$SourceDestCheck": "

        Indicates whether to validate network traffic to or from this network interface.

        ", "InstanceNetworkInterfaceAttachment$DeleteOnTermination": "

        Indicates whether the network interface is deleted when the instance is terminated.

        ", "InstanceNetworkInterfaceSpecification$DeleteOnTermination": "

        If set to true, the interface is deleted when the instance is terminated. You can specify true only if creating a new network interface when launching an instance.

        ", "InstanceNetworkInterfaceSpecification$AssociatePublicIpAddress": "

        Indicates whether to assign a public IP address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is true.

        ", "InstancePrivateIpAddress$Primary": "

        Indicates whether this IP address is the primary private IP address of the network interface.

        ", "LaunchSpecification$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        Default: false

        ", "ModifyImageAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifyInstanceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifyNetworkInterfaceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifySnapshotAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifyVolumeAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifyVpcEndpointRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifyVpcEndpointRequest$ResetPolicy": "

        Specify true to reset the policy document to the default policy. The default policy allows access to the service.

        ", "ModifyVpcEndpointResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "MonitorInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "MoveAddressToVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "NetworkAcl$IsDefault": "

        Indicates whether this is the default network ACL for the VPC.

        ", "NetworkAclEntry$Egress": "

        Indicates whether the rule is an egress rule (applied to traffic leaving the subnet).

        ", "NetworkInterface$RequesterManaged": "

        Indicates whether the network interface is being managed by AWS.

        ", "NetworkInterface$SourceDestCheck": "

        Indicates whether traffic to or from the instance is validated.

        ", "NetworkInterfaceAttachment$DeleteOnTermination": "

        Indicates whether the network interface is deleted when the instance is terminated.

        ", "NetworkInterfaceAttachmentChanges$DeleteOnTermination": "

        Indicates whether the network interface is deleted when the instance is terminated.

        ", "NetworkInterfacePrivateIpAddress$Primary": "

        Indicates whether this IP address is the primary private IP address of the network interface.

        ", "PriceSchedule$Active": "

        The current price schedule, as determined by the term remaining for the Reserved Instance in the listing.

        A specific price schedule is always in effect, but only one price schedule can be active at any time. Take, for example, a Reserved Instance listing that has five months remaining in its term. When you specify price schedules for five months and two months, this means that schedule 1, covering the first three months of the remaining term, will be active during months 5, 4, and 3. Then schedule 2, covering the last two months of the term, will be active for months 2 and 1.

        ", "PrivateIpAddressSpecification$Primary": "

        Indicates whether the private IP address is the primary private IP address. Only one IP address can be designated as primary.

        ", "PurchaseReservedInstancesOfferingRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RebootInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RegisterImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RejectVpcPeeringConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RejectVpcPeeringConnectionResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "ReleaseAddressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReplaceNetworkAclAssociationRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReplaceNetworkAclEntryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReplaceNetworkAclEntryRequest$Egress": "

        Indicates whether to replace the egress rule.

        Default: If no value is specified, we replace the ingress rule.

        ", "ReplaceRouteRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReplaceRouteTableAssociationRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReportInstanceStatusRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RequestSpotFleetRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RequestSpotInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReservedInstancesOffering$Marketplace": "

        Indicates whether the offering is available through the Reserved Instance Marketplace (resale) or AWS. If it's a Reserved Instance Marketplace offering, this is true.

        ", "ResetImageAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ResetInstanceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ResetNetworkInterfaceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ResetSnapshotAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RestoreAddressToClassicRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RevokeSecurityGroupEgressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RevokeSecurityGroupIngressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RouteTableAssociation$Main": "

        Indicates whether this is the main route table.

        ", "RunInstancesMonitoringEnabled$Enabled": "

        Indicates whether monitoring is enabled for the instance.

        ", "RunInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RunInstancesRequest$DisableApiTermination": "

        If you set this parameter to true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. If you set this parameter to true and then later want to be able to terminate the instance, you must first change the value of the disableApiTermination attribute to false using ModifyInstanceAttribute. Alternatively, if you set InstanceInitiatedShutdownBehavior to terminate, you can terminate the instance by running the shutdown command from the instance.

        Default: false

        ", "RunInstancesRequest$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.

        Default: false

        ", "Snapshot$Encrypted": "

        Indicates whether the snapshot is encrypted.

        ", "SpotFleetLaunchSpecification$EbsOptimized": "

        Indicates whether the instances are optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        Default: false

        ", "SpotFleetMonitoring$Enabled": "

        Enables monitoring for the instance.

        Default: false

        ", "SpotFleetRequestConfigData$TerminateInstancesWithExpiration": "

        Indicates whether running Spot instances should be terminated when the Spot fleet request expires.

        ", "StartInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "StopInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "StopInstancesRequest$Force": "

        Forces the instances to stop. The instances do not have an opportunity to flush file system caches or file system metadata. If you use this option, you must perform file system check and repair procedures. This option is not recommended for Windows instances.

        Default: false

        ", "Subnet$DefaultForAz": "

        Indicates whether this is the default subnet for the Availability Zone.

        ", "Subnet$MapPublicIpOnLaunch": "

        Indicates whether instances launched in this subnet receive a public IP address.

        ", "TerminateInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "UnmonitorInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "Volume$Encrypted": "

        Indicates whether the volume will be encrypted.

        ", "VolumeAttachment$DeleteOnTermination": "

        Indicates whether the EBS volume is deleted on instance termination.

        ", "Vpc$IsDefault": "

        Indicates whether the VPC is the default VPC.

        ", "VpcClassicLink$ClassicLinkEnabled": "

        Indicates whether the VPC is enabled for ClassicLink.

        ", "VpnConnectionOptions$StaticRoutesOnly": "

        Indicates whether the VPN connection uses static routes only. Static routes must be used for devices that don't support BGP.

        ", "VpnConnectionOptionsSpecification$StaticRoutesOnly": "

        Indicates whether the VPN connection uses static routes only. Static routes must be used for devices that don't support BGP.

        ", "RequestSpotLaunchSpecification$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        Default: false

        " } }, "BundleIdStringList": { "base": null, "refs": { "DescribeBundleTasksRequest$BundleIds": "

        One or more bundle task IDs.

        Default: Describes all your bundle tasks.

        " } }, "BundleInstanceRequest": { "base": null, "refs": { } }, "BundleInstanceResult": { "base": null, "refs": { } }, "BundleTask": { "base": "

        Describes a bundle task.

        ", "refs": { "BundleInstanceResult$BundleTask": "

        Information about the bundle task.

        ", "BundleTaskList$member": null, "CancelBundleTaskResult$BundleTask": "

        Information about the bundle task.

        " } }, "BundleTaskError": { "base": "

        Describes an error for BundleInstance.

        ", "refs": { "BundleTask$BundleTaskError": "

        If the task fails, a description of the error.

        " } }, "BundleTaskList": { "base": null, "refs": { "DescribeBundleTasksResult$BundleTasks": "

        Information about one or more bundle tasks.

        " } }, "BundleTaskState": { "base": null, "refs": { "BundleTask$State": "

        The state of the task.

        " } }, "CancelBatchErrorCode": { "base": null, "refs": { "CancelSpotFleetRequestsError$Code": "

        The error code.

        " } }, "CancelBundleTaskRequest": { "base": null, "refs": { } }, "CancelBundleTaskResult": { "base": null, "refs": { } }, "CancelConversionRequest": { "base": null, "refs": { } }, "CancelExportTaskRequest": { "base": null, "refs": { } }, "CancelImportTaskRequest": { "base": null, "refs": { } }, "CancelImportTaskResult": { "base": null, "refs": { } }, "CancelReservedInstancesListingRequest": { "base": null, "refs": { } }, "CancelReservedInstancesListingResult": { "base": null, "refs": { } }, "CancelSpotFleetRequestsError": { "base": "

        Describes a Spot fleet error.

        ", "refs": { "CancelSpotFleetRequestsErrorItem$Error": "

        The error.

        " } }, "CancelSpotFleetRequestsErrorItem": { "base": "

        Describes a Spot fleet request that was not successfully canceled.

        ", "refs": { "CancelSpotFleetRequestsErrorSet$member": null } }, "CancelSpotFleetRequestsErrorSet": { "base": null, "refs": { "CancelSpotFleetRequestsResponse$UnsuccessfulFleetRequests": "

        Information about the Spot fleet requests that are not successfully canceled.

        " } }, "CancelSpotFleetRequestsRequest": { "base": "

        Contains the parameters for CancelSpotFleetRequests.

        ", "refs": { } }, "CancelSpotFleetRequestsResponse": { "base": "

        Contains the output of CancelSpotFleetRequests.

        ", "refs": { } }, "CancelSpotFleetRequestsSuccessItem": { "base": "

        Describes a Spot fleet request that was successfully canceled.

        ", "refs": { "CancelSpotFleetRequestsSuccessSet$member": null } }, "CancelSpotFleetRequestsSuccessSet": { "base": null, "refs": { "CancelSpotFleetRequestsResponse$SuccessfulFleetRequests": "

        Information about the Spot fleet requests that are successfully canceled.

        " } }, "CancelSpotInstanceRequestState": { "base": null, "refs": { "CancelledSpotInstanceRequest$State": "

        The state of the Spot instance request.

        " } }, "CancelSpotInstanceRequestsRequest": { "base": "

        Contains the parameters for CancelSpotInstanceRequests.

        ", "refs": { } }, "CancelSpotInstanceRequestsResult": { "base": "

        Contains the output of CancelSpotInstanceRequests.

        ", "refs": { } }, "CancelledSpotInstanceRequest": { "base": "

        Describes a request to cancel a Spot instance.

        ", "refs": { "CancelledSpotInstanceRequestList$member": null } }, "CancelledSpotInstanceRequestList": { "base": null, "refs": { "CancelSpotInstanceRequestsResult$CancelledSpotInstanceRequests": "

        One or more Spot instance requests.

        " } }, "ClassicLinkInstance": { "base": "

        Describes a linked EC2-Classic instance.

        ", "refs": { "ClassicLinkInstanceList$member": null } }, "ClassicLinkInstanceList": { "base": null, "refs": { "DescribeClassicLinkInstancesResult$Instances": "

        Information about one or more linked EC2-Classic instances.

        " } }, "ClientData": { "base": "

        Describes the client-specific data.

        ", "refs": { "ImportImageRequest$ClientData": "

        The client-specific data.

        ", "ImportSnapshotRequest$ClientData": "

        The client-specific data.

        " } }, "ConfirmProductInstanceRequest": { "base": null, "refs": { } }, "ConfirmProductInstanceResult": { "base": null, "refs": { } }, "ContainerFormat": { "base": null, "refs": { "ExportToS3Task$ContainerFormat": "

        The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is exported.

        ", "ExportToS3TaskSpecification$ContainerFormat": "

        The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is exported.

        " } }, "ConversionIdStringList": { "base": null, "refs": { "DescribeConversionTasksRequest$ConversionTaskIds": "

        One or more conversion task IDs.

        " } }, "ConversionTask": { "base": "

        Describes a conversion task.

        ", "refs": { "DescribeConversionTaskList$member": null, "ImportInstanceResult$ConversionTask": "

        Information about the conversion task.

        ", "ImportVolumeResult$ConversionTask": "

        Information about the conversion task.

        " } }, "ConversionTaskState": { "base": null, "refs": { "ConversionTask$State": "

        The state of the conversion task.

        " } }, "CopyImageRequest": { "base": null, "refs": { } }, "CopyImageResult": { "base": null, "refs": { } }, "CopySnapshotRequest": { "base": null, "refs": { } }, "CopySnapshotResult": { "base": null, "refs": { } }, "CreateCustomerGatewayRequest": { "base": null, "refs": { } }, "CreateCustomerGatewayResult": { "base": null, "refs": { } }, "CreateDhcpOptionsRequest": { "base": null, "refs": { } }, "CreateDhcpOptionsResult": { "base": null, "refs": { } }, "CreateFlowLogsRequest": { "base": null, "refs": { } }, "CreateFlowLogsResult": { "base": null, "refs": { } }, "CreateImageRequest": { "base": null, "refs": { } }, "CreateImageResult": { "base": null, "refs": { } }, "CreateInstanceExportTaskRequest": { "base": null, "refs": { } }, "CreateInstanceExportTaskResult": { "base": null, "refs": { } }, "CreateInternetGatewayRequest": { "base": null, "refs": { } }, "CreateInternetGatewayResult": { "base": null, "refs": { } }, "CreateKeyPairRequest": { "base": null, "refs": { } }, "CreateNetworkAclEntryRequest": { "base": null, "refs": { } }, "CreateNetworkAclRequest": { "base": null, "refs": { } }, "CreateNetworkAclResult": { "base": null, "refs": { } }, "CreateNetworkInterfaceRequest": { "base": null, "refs": { } }, "CreateNetworkInterfaceResult": { "base": null, "refs": { } }, "CreatePlacementGroupRequest": { "base": null, "refs": { } }, "CreateReservedInstancesListingRequest": { "base": null, "refs": { } }, "CreateReservedInstancesListingResult": { "base": null, "refs": { } }, "CreateRouteRequest": { "base": null, "refs": { } }, "CreateRouteResult": { "base": null, "refs": { } }, "CreateRouteTableRequest": { "base": null, "refs": { } }, "CreateRouteTableResult": { "base": null, "refs": { } }, "CreateSecurityGroupRequest": { "base": null, "refs": { } }, "CreateSecurityGroupResult": { "base": null, "refs": { } }, "CreateSnapshotRequest": { "base": null, "refs": { } }, "CreateSpotDatafeedSubscriptionRequest": { "base": "

        Contains the parameters for CreateSpotDatafeedSubscription.

        ", "refs": { } }, "CreateSpotDatafeedSubscriptionResult": { "base": "

        Contains the output of CreateSpotDatafeedSubscription.

        ", "refs": { } }, "CreateSubnetRequest": { "base": null, "refs": { } }, "CreateSubnetResult": { "base": null, "refs": { } }, "CreateTagsRequest": { "base": null, "refs": { } }, "CreateVolumePermission": { "base": "

        Describes the user or group to be added or removed from the permissions for a volume.

        ", "refs": { "CreateVolumePermissionList$member": null } }, "CreateVolumePermissionList": { "base": null, "refs": { "CreateVolumePermissionModifications$Add": "

        Adds a specific AWS account ID or group to a volume's list of create volume permissions.

        ", "CreateVolumePermissionModifications$Remove": "

        Removes a specific AWS account ID or group from a volume's list of create volume permissions.

        ", "DescribeSnapshotAttributeResult$CreateVolumePermissions": "

        A list of permissions for creating volumes from the snapshot.

        " } }, "CreateVolumePermissionModifications": { "base": "

        Describes modifications to the permissions for a volume.

        ", "refs": { "ModifySnapshotAttributeRequest$CreateVolumePermission": "

        A JSON representation of the snapshot attribute modification.

        " } }, "CreateVolumeRequest": { "base": null, "refs": { } }, "CreateVpcEndpointRequest": { "base": null, "refs": { } }, "CreateVpcEndpointResult": { "base": null, "refs": { } }, "CreateVpcPeeringConnectionRequest": { "base": null, "refs": { } }, "CreateVpcPeeringConnectionResult": { "base": null, "refs": { } }, "CreateVpcRequest": { "base": null, "refs": { } }, "CreateVpcResult": { "base": null, "refs": { } }, "CreateVpnConnectionRequest": { "base": null, "refs": { } }, "CreateVpnConnectionResult": { "base": null, "refs": { } }, "CreateVpnConnectionRouteRequest": { "base": null, "refs": { } }, "CreateVpnGatewayRequest": { "base": null, "refs": { } }, "CreateVpnGatewayResult": { "base": null, "refs": { } }, "CurrencyCodeValues": { "base": null, "refs": { "PriceSchedule$CurrencyCode": "

        The currency for transacting the Reserved Instance resale. At this time, the only supported currency is USD.

        ", "PriceScheduleSpecification$CurrencyCode": "

        The currency for transacting the Reserved Instance resale. At this time, the only supported currency is USD.

        ", "ReservedInstanceLimitPrice$CurrencyCode": "

        The currency in which the limitPrice amount is specified. At this time, the only supported currency is USD.

        ", "ReservedInstances$CurrencyCode": "

        The currency of the Reserved Instance. It's specified using ISO 4217 standard currency codes. At this time, the only supported currency is USD.

        ", "ReservedInstancesOffering$CurrencyCode": "

        The currency of the Reserved Instance offering you are purchasing. It's specified using ISO 4217 standard currency codes. At this time, the only supported currency is USD.

        " } }, "CustomerGateway": { "base": "

        Describes a customer gateway.

        ", "refs": { "CreateCustomerGatewayResult$CustomerGateway": "

        Information about the customer gateway.

        ", "CustomerGatewayList$member": null } }, "CustomerGatewayIdStringList": { "base": null, "refs": { "DescribeCustomerGatewaysRequest$CustomerGatewayIds": "

        One or more customer gateway IDs.

        Default: Describes all your customer gateways.

        " } }, "CustomerGatewayList": { "base": null, "refs": { "DescribeCustomerGatewaysResult$CustomerGateways": "

        Information about one or more customer gateways.

        " } }, "DatafeedSubscriptionState": { "base": null, "refs": { "SpotDatafeedSubscription$State": "

        The state of the Spot instance data feed subscription.

        " } }, "DateTime": { "base": null, "refs": { "BundleTask$StartTime": "

        The time this task started.

        ", "BundleTask$UpdateTime": "

        The time of the most recent update for the task.

        ", "ClientData$UploadStart": "

        The time that the disk upload starts.

        ", "ClientData$UploadEnd": "

        The time that the disk upload ends.

        ", "DescribeSpotFleetRequestHistoryRequest$StartTime": "

        The starting date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "DescribeSpotFleetRequestHistoryResponse$StartTime": "

        The starting date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "DescribeSpotFleetRequestHistoryResponse$LastEvaluatedTime": "

        The last date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). All records up to this time were retrieved.

        If nextToken indicates that there are more results, this value is not present.

        ", "DescribeSpotPriceHistoryRequest$StartTime": "

        The date and time, up to the past 90 days, from which to start retrieving the price history data, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "DescribeSpotPriceHistoryRequest$EndTime": "

        The date and time, up to the current date, from which to stop retrieving the price history data, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "EbsInstanceBlockDevice$AttachTime": "

        The time stamp when the attachment initiated.

        ", "FlowLog$CreationTime": "

        The date and time the flow log was created.

        ", "GetConsoleOutputResult$Timestamp": "

        The time the output was last updated.

        ", "GetPasswordDataResult$Timestamp": "

        The time the data was last updated.

        ", "HistoryRecord$Timestamp": "

        The date and time of the event, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "Instance$LaunchTime": "

        The time the instance was launched.

        ", "InstanceNetworkInterfaceAttachment$AttachTime": "

        The time stamp when the attachment initiated.

        ", "InstanceStatusDetails$ImpairedSince": "

        The time when a status check failed. For an instance that was launched and impaired, this is the time when the instance was launched.

        ", "InstanceStatusEvent$NotBefore": "

        The earliest scheduled start time for the event.

        ", "InstanceStatusEvent$NotAfter": "

        The latest scheduled end time for the event.

        ", "NetworkInterfaceAttachment$AttachTime": "

        The timestamp indicating when the attachment initiated.

        ", "ReportInstanceStatusRequest$StartTime": "

        The time at which the reported instance health state began.

        ", "ReportInstanceStatusRequest$EndTime": "

        The time at which the reported instance health state ended.

        ", "RequestSpotInstancesRequest$ValidFrom": "

        The start date of the request. If this is a one-time request, the request becomes active at this date and time and remains active until all instances launch, the request expires, or the request is canceled. If the request is persistent, the request becomes active at this date and time and remains active until it expires or is canceled.

        Default: The request is effective indefinitely.

        ", "RequestSpotInstancesRequest$ValidUntil": "

        The end date of the request. If this is a one-time request, the request remains active until all instances launch, the request is canceled, or this date is reached. If the request is persistent, it remains active until it is canceled or this date and time is reached.

        Default: The request is effective indefinitely.

        ", "ReservedInstances$Start": "

        The date and time the Reserved Instance started.

        ", "ReservedInstances$End": "

        The time when the Reserved Instance expires.

        ", "ReservedInstancesListing$CreateDate": "

        The time the listing was created.

        ", "ReservedInstancesListing$UpdateDate": "

        The last modified timestamp of the listing.

        ", "ReservedInstancesModification$CreateDate": "

        The time when the modification request was created.

        ", "ReservedInstancesModification$UpdateDate": "

        The time when the modification request was last updated.

        ", "ReservedInstancesModification$EffectiveDate": "

        The time for the modification to become effective.

        ", "Snapshot$StartTime": "

        The time stamp when the snapshot was initiated.

        ", "SpotFleetRequestConfigData$ValidFrom": "

        The start date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.

        ", "SpotFleetRequestConfigData$ValidUntil": "

        The end date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request.

        ", "SpotInstanceRequest$ValidFrom": "

        The start date of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). If this is a one-time request, the request becomes active at this date and time and remains active until all instances launch, the request expires, or the request is canceled. If the request is persistent, the request becomes active at this date and time and remains active until it expires or is canceled.

        ", "SpotInstanceRequest$ValidUntil": "

        The end date of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). If this is a one-time request, the request remains active until all instances launch, the request is canceled, or this date is reached. If the request is persistent, it remains active until it is canceled or this date is reached.

        ", "SpotInstanceRequest$CreateTime": "

        The date and time when the Spot instance request was created, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "SpotInstanceStatus$UpdateTime": "

        The date and time of the most recent status update, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "SpotPrice$Timestamp": "

        The date and time the request was created, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "VgwTelemetry$LastStatusChange": "

        The date and time of the last change in status.

        ", "Volume$CreateTime": "

        The time stamp when volume creation was initiated.

        ", "VolumeAttachment$AttachTime": "

        The time stamp when the attachment initiated.

        ", "VolumeStatusEvent$NotBefore": "

        The earliest start time of the event.

        ", "VolumeStatusEvent$NotAfter": "

        The latest end time of the event.

        ", "VpcEndpoint$CreationTimestamp": "

        The date and time the VPC endpoint was created.

        ", "VpcPeeringConnection$ExpirationTime": "

        The time that an unaccepted VPC peering connection will expire.

        " } }, "DeleteCustomerGatewayRequest": { "base": null, "refs": { } }, "DeleteDhcpOptionsRequest": { "base": null, "refs": { } }, "DeleteFlowLogsRequest": { "base": null, "refs": { } }, "DeleteFlowLogsResult": { "base": null, "refs": { } }, "DeleteInternetGatewayRequest": { "base": null, "refs": { } }, "DeleteKeyPairRequest": { "base": null, "refs": { } }, "DeleteNetworkAclEntryRequest": { "base": null, "refs": { } }, "DeleteNetworkAclRequest": { "base": null, "refs": { } }, "DeleteNetworkInterfaceRequest": { "base": null, "refs": { } }, "DeletePlacementGroupRequest": { "base": null, "refs": { } }, "DeleteRouteRequest": { "base": null, "refs": { } }, "DeleteRouteTableRequest": { "base": null, "refs": { } }, "DeleteSecurityGroupRequest": { "base": null, "refs": { } }, "DeleteSnapshotRequest": { "base": null, "refs": { } }, "DeleteSpotDatafeedSubscriptionRequest": { "base": "

        Contains the parameters for DeleteSpotDatafeedSubscription.

        ", "refs": { } }, "DeleteSubnetRequest": { "base": null, "refs": { } }, "DeleteTagsRequest": { "base": null, "refs": { } }, "DeleteVolumeRequest": { "base": null, "refs": { } }, "DeleteVpcEndpointsRequest": { "base": null, "refs": { } }, "DeleteVpcEndpointsResult": { "base": null, "refs": { } }, "DeleteVpcPeeringConnectionRequest": { "base": null, "refs": { } }, "DeleteVpcPeeringConnectionResult": { "base": null, "refs": { } }, "DeleteVpcRequest": { "base": null, "refs": { } }, "DeleteVpnConnectionRequest": { "base": null, "refs": { } }, "DeleteVpnConnectionRouteRequest": { "base": null, "refs": { } }, "DeleteVpnGatewayRequest": { "base": null, "refs": { } }, "DeregisterImageRequest": { "base": null, "refs": { } }, "DescribeAccountAttributesRequest": { "base": null, "refs": { } }, "DescribeAccountAttributesResult": { "base": null, "refs": { } }, "DescribeAddressesRequest": { "base": null, "refs": { } }, "DescribeAddressesResult": { "base": null, "refs": { } }, "DescribeAvailabilityZonesRequest": { "base": null, "refs": { } }, "DescribeAvailabilityZonesResult": { "base": null, "refs": { } }, "DescribeBundleTasksRequest": { "base": null, "refs": { } }, "DescribeBundleTasksResult": { "base": null, "refs": { } }, "DescribeClassicLinkInstancesRequest": { "base": null, "refs": { } }, "DescribeClassicLinkInstancesResult": { "base": null, "refs": { } }, "DescribeConversionTaskList": { "base": null, "refs": { "DescribeConversionTasksResult$ConversionTasks": "

        Information about the conversion tasks.

        " } }, "DescribeConversionTasksRequest": { "base": null, "refs": { } }, "DescribeConversionTasksResult": { "base": null, "refs": { } }, "DescribeCustomerGatewaysRequest": { "base": null, "refs": { } }, "DescribeCustomerGatewaysResult": { "base": null, "refs": { } }, "DescribeDhcpOptionsRequest": { "base": null, "refs": { } }, "DescribeDhcpOptionsResult": { "base": null, "refs": { } }, "DescribeExportTasksRequest": { "base": null, "refs": { } }, "DescribeExportTasksResult": { "base": null, "refs": { } }, "DescribeFlowLogsRequest": { "base": null, "refs": { } }, "DescribeFlowLogsResult": { "base": null, "refs": { } }, "DescribeImageAttributeRequest": { "base": null, "refs": { } }, "DescribeImagesRequest": { "base": null, "refs": { } }, "DescribeImagesResult": { "base": null, "refs": { } }, "DescribeImportImageTasksRequest": { "base": null, "refs": { } }, "DescribeImportImageTasksResult": { "base": null, "refs": { } }, "DescribeImportSnapshotTasksRequest": { "base": null, "refs": { } }, "DescribeImportSnapshotTasksResult": { "base": null, "refs": { } }, "DescribeInstanceAttributeRequest": { "base": null, "refs": { } }, "DescribeInstanceStatusRequest": { "base": null, "refs": { } }, "DescribeInstanceStatusResult": { "base": null, "refs": { } }, "DescribeInstancesRequest": { "base": null, "refs": { } }, "DescribeInstancesResult": { "base": null, "refs": { } }, "DescribeInternetGatewaysRequest": { "base": null, "refs": { } }, "DescribeInternetGatewaysResult": { "base": null, "refs": { } }, "DescribeKeyPairsRequest": { "base": null, "refs": { } }, "DescribeKeyPairsResult": { "base": null, "refs": { } }, "DescribeMovingAddressesRequest": { "base": null, "refs": { } }, "DescribeMovingAddressesResult": { "base": null, "refs": { } }, "DescribeNetworkAclsRequest": { "base": null, "refs": { } }, "DescribeNetworkAclsResult": { "base": null, "refs": { } }, "DescribeNetworkInterfaceAttributeRequest": { "base": null, "refs": { } }, "DescribeNetworkInterfaceAttributeResult": { "base": null, "refs": { } }, "DescribeNetworkInterfacesRequest": { "base": null, "refs": { } }, "DescribeNetworkInterfacesResult": { "base": null, "refs": { } }, "DescribePlacementGroupsRequest": { "base": null, "refs": { } }, "DescribePlacementGroupsResult": { "base": null, "refs": { } }, "DescribePrefixListsRequest": { "base": null, "refs": { } }, "DescribePrefixListsResult": { "base": null, "refs": { } }, "DescribeRegionsRequest": { "base": null, "refs": { } }, "DescribeRegionsResult": { "base": null, "refs": { } }, "DescribeReservedInstancesListingsRequest": { "base": null, "refs": { } }, "DescribeReservedInstancesListingsResult": { "base": null, "refs": { } }, "DescribeReservedInstancesModificationsRequest": { "base": null, "refs": { } }, "DescribeReservedInstancesModificationsResult": { "base": null, "refs": { } }, "DescribeReservedInstancesOfferingsRequest": { "base": null, "refs": { } }, "DescribeReservedInstancesOfferingsResult": { "base": null, "refs": { } }, "DescribeReservedInstancesRequest": { "base": null, "refs": { } }, "DescribeReservedInstancesResult": { "base": null, "refs": { } }, "DescribeRouteTablesRequest": { "base": null, "refs": { } }, "DescribeRouteTablesResult": { "base": null, "refs": { } }, "DescribeSecurityGroupsRequest": { "base": null, "refs": { } }, "DescribeSecurityGroupsResult": { "base": null, "refs": { } }, "DescribeSnapshotAttributeRequest": { "base": null, "refs": { } }, "DescribeSnapshotAttributeResult": { "base": null, "refs": { } }, "DescribeSnapshotsRequest": { "base": null, "refs": { } }, "DescribeSnapshotsResult": { "base": null, "refs": { } }, "DescribeSpotDatafeedSubscriptionRequest": { "base": "

        Contains the parameters for DescribeSpotDatafeedSubscription.

        ", "refs": { } }, "DescribeSpotDatafeedSubscriptionResult": { "base": "

        Contains the output of DescribeSpotDatafeedSubscription.

        ", "refs": { } }, "DescribeSpotFleetInstancesRequest": { "base": "

        Contains the parameters for DescribeSpotFleetInstances.

        ", "refs": { } }, "DescribeSpotFleetInstancesResponse": { "base": "

        Contains the output of DescribeSpotFleetInstances.

        ", "refs": { } }, "DescribeSpotFleetRequestHistoryRequest": { "base": "

        Contains the parameters for DescribeSpotFleetRequestHistory.

        ", "refs": { } }, "DescribeSpotFleetRequestHistoryResponse": { "base": "

        Contains the output of DescribeSpotFleetRequestHistory.

        ", "refs": { } }, "DescribeSpotFleetRequestsRequest": { "base": "

        Contains the parameters for DescribeSpotFleetRequests.

        ", "refs": { } }, "DescribeSpotFleetRequestsResponse": { "base": "

        Contains the output of DescribeSpotFleetRequests.

        ", "refs": { } }, "DescribeSpotInstanceRequestsRequest": { "base": "

        Contains the parameters for DescribeSpotInstanceRequests.

        ", "refs": { } }, "DescribeSpotInstanceRequestsResult": { "base": "

        Contains the output of DescribeSpotInstanceRequests.

        ", "refs": { } }, "DescribeSpotPriceHistoryRequest": { "base": "

        Contains the parameters for DescribeSpotPriceHistory.

        ", "refs": { } }, "DescribeSpotPriceHistoryResult": { "base": "

        Contains the output of DescribeSpotPriceHistory.

        ", "refs": { } }, "DescribeSubnetsRequest": { "base": null, "refs": { } }, "DescribeSubnetsResult": { "base": null, "refs": { } }, "DescribeTagsRequest": { "base": null, "refs": { } }, "DescribeTagsResult": { "base": null, "refs": { } }, "DescribeVolumeAttributeRequest": { "base": null, "refs": { } }, "DescribeVolumeAttributeResult": { "base": null, "refs": { } }, "DescribeVolumeStatusRequest": { "base": null, "refs": { } }, "DescribeVolumeStatusResult": { "base": null, "refs": { } }, "DescribeVolumesRequest": { "base": null, "refs": { } }, "DescribeVolumesResult": { "base": null, "refs": { } }, "DescribeVpcAttributeRequest": { "base": null, "refs": { } }, "DescribeVpcAttributeResult": { "base": null, "refs": { } }, "DescribeVpcClassicLinkRequest": { "base": null, "refs": { } }, "DescribeVpcClassicLinkResult": { "base": null, "refs": { } }, "DescribeVpcEndpointServicesRequest": { "base": null, "refs": { } }, "DescribeVpcEndpointServicesResult": { "base": null, "refs": { } }, "DescribeVpcEndpointsRequest": { "base": null, "refs": { } }, "DescribeVpcEndpointsResult": { "base": null, "refs": { } }, "DescribeVpcPeeringConnectionsRequest": { "base": null, "refs": { } }, "DescribeVpcPeeringConnectionsResult": { "base": null, "refs": { } }, "DescribeVpcsRequest": { "base": null, "refs": { } }, "DescribeVpcsResult": { "base": null, "refs": { } }, "DescribeVpnConnectionsRequest": { "base": null, "refs": { } }, "DescribeVpnConnectionsResult": { "base": null, "refs": { } }, "DescribeVpnGatewaysRequest": { "base": null, "refs": { } }, "DescribeVpnGatewaysResult": { "base": null, "refs": { } }, "DetachClassicLinkVpcRequest": { "base": null, "refs": { } }, "DetachClassicLinkVpcResult": { "base": null, "refs": { } }, "DetachInternetGatewayRequest": { "base": null, "refs": { } }, "DetachNetworkInterfaceRequest": { "base": null, "refs": { } }, "DetachVolumeRequest": { "base": null, "refs": { } }, "DetachVpnGatewayRequest": { "base": null, "refs": { } }, "DeviceType": { "base": null, "refs": { "Image$RootDeviceType": "

        The type of root device used by the AMI. The AMI can use an EBS volume or an instance store volume.

        ", "Instance$RootDeviceType": "

        The root device type used by the AMI. The AMI can use an EBS volume or an instance store volume.

        " } }, "DhcpConfiguration": { "base": "

        Describes a DHCP configuration option.

        ", "refs": { "DhcpConfigurationList$member": null } }, "DhcpConfigurationList": { "base": null, "refs": { "DhcpOptions$DhcpConfigurations": "

        One or more DHCP options in the set.

        " } }, "DhcpOptions": { "base": "

        Describes a set of DHCP options.

        ", "refs": { "CreateDhcpOptionsResult$DhcpOptions": "

        A set of DHCP options.

        ", "DhcpOptionsList$member": null } }, "DhcpOptionsIdStringList": { "base": null, "refs": { "DescribeDhcpOptionsRequest$DhcpOptionsIds": "

        The IDs of one or more DHCP options sets.

        Default: Describes all your DHCP options sets.

        " } }, "DhcpOptionsList": { "base": null, "refs": { "DescribeDhcpOptionsResult$DhcpOptions": "

        Information about one or more DHCP options sets.

        " } }, "DisableVgwRoutePropagationRequest": { "base": null, "refs": { } }, "DisableVpcClassicLinkRequest": { "base": null, "refs": { } }, "DisableVpcClassicLinkResult": { "base": null, "refs": { } }, "DisassociateAddressRequest": { "base": null, "refs": { } }, "DisassociateRouteTableRequest": { "base": null, "refs": { } }, "DiskImage": { "base": "

        Describes a disk image.

        ", "refs": { "DiskImageList$member": null } }, "DiskImageDescription": { "base": "

        Describes a disk image.

        ", "refs": { "ImportInstanceVolumeDetailItem$Image": "

        The image.

        ", "ImportVolumeTaskDetails$Image": "

        The image.

        " } }, "DiskImageDetail": { "base": "

        Describes a disk image.

        ", "refs": { "DiskImage$Image": "

        Information about the disk image.

        ", "ImportVolumeRequest$Image": "

        The disk image.

        " } }, "DiskImageFormat": { "base": null, "refs": { "DiskImageDescription$Format": "

        The disk image format.

        ", "DiskImageDetail$Format": "

        The disk image format.

        ", "ExportToS3Task$DiskImageFormat": "

        The format for the exported image.

        ", "ExportToS3TaskSpecification$DiskImageFormat": "

        The format for the exported image.

        " } }, "DiskImageList": { "base": null, "refs": { "ImportInstanceRequest$DiskImages": "

        The disk image.

        " } }, "DiskImageVolumeDescription": { "base": "

        Describes a disk image volume.

        ", "refs": { "ImportInstanceVolumeDetailItem$Volume": "

        The volume.

        ", "ImportVolumeTaskDetails$Volume": "

        The volume.

        " } }, "DomainType": { "base": null, "refs": { "Address$Domain": "

        Indicates whether this Elastic IP address is for use with instances in EC2-Classic (standard) or instances in a VPC (vpc).

        ", "AllocateAddressRequest$Domain": "

        Set to vpc to allocate the address for use with instances in a VPC.

        Default: The address is for use with instances in EC2-Classic.

        ", "AllocateAddressResult$Domain": "

        Indicates whether this Elastic IP address is for use with instances in EC2-Classic (standard) or instances in a VPC (vpc).

        " } }, "Double": { "base": null, "refs": { "ClientData$UploadSize": "

        The size of the uploaded disk image, in GiB.

        ", "PriceSchedule$Price": "

        The fixed price for the term.

        ", "PriceScheduleSpecification$Price": "

        The fixed price for the term.

        ", "PricingDetail$Price": "

        The price per instance.

        ", "RecurringCharge$Amount": "

        The amount of the recurring charge.

        ", "ReservedInstanceLimitPrice$Amount": "

        Used for Reserved Instance Marketplace offerings. Specifies the limit price on the total order (instanceCount * price).

        ", "SnapshotDetail$DiskImageSize": "

        The size of the disk in the snapshot, in GiB.

        ", "SnapshotTaskDetail$DiskImageSize": "

        The size of the disk in the snapshot, in GiB.

        ", "SpotFleetLaunchSpecification$WeightedCapacity": "

        The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms (instances or a performance characteristic such as vCPUs, memory, or I/O).

        If the target capacity divided by this value is not a whole number, we round the number of instances to the next whole number. If this value is not specified, the default is 1.

        " } }, "EbsBlockDevice": { "base": "

        Describes a block device for an EBS volume.

        ", "refs": { "BlockDeviceMapping$Ebs": "

        Parameters used to automatically set up EBS volumes when the instance is launched.

        " } }, "EbsInstanceBlockDevice": { "base": "

        Describes a parameter used to set up an EBS volume in a block device mapping.

        ", "refs": { "InstanceBlockDeviceMapping$Ebs": "

        Parameters used to automatically set up EBS volumes when the instance is launched.

        " } }, "EbsInstanceBlockDeviceSpecification": { "base": null, "refs": { "InstanceBlockDeviceMappingSpecification$Ebs": "

        Parameters used to automatically set up EBS volumes when the instance is launched.

        " } }, "EnableVgwRoutePropagationRequest": { "base": null, "refs": { } }, "EnableVolumeIORequest": { "base": null, "refs": { } }, "EnableVpcClassicLinkRequest": { "base": null, "refs": { } }, "EnableVpcClassicLinkResult": { "base": null, "refs": { } }, "EventCode": { "base": null, "refs": { "InstanceStatusEvent$Code": "

        The event code.

        " } }, "EventInformation": { "base": "

        Describes a Spot fleet event.

        ", "refs": { "HistoryRecord$EventInformation": "

        Information about the event.

        " } }, "EventType": { "base": null, "refs": { "DescribeSpotFleetRequestHistoryRequest$EventType": "

        The type of events to describe. By default, all events are described.

        ", "HistoryRecord$EventType": "

        The event type.

        • error - Indicates an error with the Spot fleet request.

        • fleetRequestChange - Indicates a change in the status or configuration of the Spot fleet request.

        • instanceChange - Indicates that an instance was launched or terminated.

        " } }, "ExecutableByStringList": { "base": null, "refs": { "DescribeImagesRequest$ExecutableUsers": "

        Scopes the images by users with explicit launch permissions. Specify an AWS account ID, self (the sender of the request), or all (public AMIs).

        " } }, "ExportEnvironment": { "base": null, "refs": { "CreateInstanceExportTaskRequest$TargetEnvironment": "

        The target virtualization environment.

        ", "InstanceExportDetails$TargetEnvironment": "

        The target virtualization environment.

        " } }, "ExportTask": { "base": "

        Describes an instance export task.

        ", "refs": { "CreateInstanceExportTaskResult$ExportTask": "

        Information about the instance export task.

        ", "ExportTaskList$member": null } }, "ExportTaskIdStringList": { "base": null, "refs": { "DescribeExportTasksRequest$ExportTaskIds": "

        One or more export task IDs.

        " } }, "ExportTaskList": { "base": null, "refs": { "DescribeExportTasksResult$ExportTasks": "

        Information about the export tasks.

        " } }, "ExportTaskState": { "base": null, "refs": { "ExportTask$State": "

        The state of the export task.

        " } }, "ExportToS3Task": { "base": "

        Describes the format and location for an instance export task.

        ", "refs": { "ExportTask$ExportToS3Task": "

        Information about the export task.

        " } }, "ExportToS3TaskSpecification": { "base": "

        Describes an instance export task.

        ", "refs": { "CreateInstanceExportTaskRequest$ExportToS3Task": "

        The format and location for an instance export task.

        " } }, "Filter": { "base": "

        A filter name and value pair that is used to return a more specific list of results. Filters can be used to match a set of resources by various criteria, such as tags, attributes, or IDs.

        ", "refs": { "FilterList$member": null } }, "FilterList": { "base": null, "refs": { "DescribeAddressesRequest$Filters": "

        One or more filters. Filter names and values are case-sensitive.

        • allocation-id - [EC2-VPC] The allocation ID for the address.

        • association-id - [EC2-VPC] The association ID for the address.

        • domain - Indicates whether the address is for use in EC2-Classic (standard) or in a VPC (vpc).

        • instance-id - The ID of the instance the address is associated with, if any.

        • network-interface-id - [EC2-VPC] The ID of the network interface that the address is associated with, if any.

        • network-interface-owner-id - The AWS account ID of the owner.

        • private-ip-address - [EC2-VPC] The private IP address associated with the Elastic IP address.

        • public-ip - The Elastic IP address.

        ", "DescribeAvailabilityZonesRequest$Filters": "

        One or more filters.

        • message - Information about the Availability Zone.

        • region-name - The name of the region for the Availability Zone (for example, us-east-1).

        • state - The state of the Availability Zone (available | impaired | unavailable).

        • zone-name - The name of the Availability Zone (for example, us-east-1a).

        ", "DescribeBundleTasksRequest$Filters": "

        One or more filters.

        • bundle-id - The ID of the bundle task.

        • error-code - If the task failed, the error code returned.

        • error-message - If the task failed, the error message returned.

        • instance-id - The ID of the instance.

        • progress - The level of task completion, as a percentage (for example, 20%).

        • s3-bucket - The Amazon S3 bucket to store the AMI.

        • s3-prefix - The beginning of the AMI name.

        • start-time - The time the task started (for example, 2013-09-15T17:15:20.000Z).

        • state - The state of the task (pending | waiting-for-shutdown | bundling | storing | cancelling | complete | failed).

        • update-time - The time of the most recent update for the task.

        ", "DescribeClassicLinkInstancesRequest$Filters": "

        One or more filters.

        • group-id - The ID of a VPC security group that's associated with the instance.

        • instance-id - The ID of the instance.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC that the instance is linked to.

        ", "DescribeConversionTasksRequest$Filters": "

        One or more filters.

        ", "DescribeCustomerGatewaysRequest$Filters": "

        One or more filters.

        • bgp-asn - The customer gateway's Border Gateway Protocol (BGP) Autonomous System Number (ASN).

        • customer-gateway-id - The ID of the customer gateway.

        • ip-address - The IP address of the customer gateway's Internet-routable external interface.

        • state - The state of the customer gateway (pending | available | deleting | deleted).

        • type - The type of customer gateway. Currently, the only supported type is ipsec.1.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        ", "DescribeDhcpOptionsRequest$Filters": "

        One or more filters.

        • dhcp-options-id - The ID of a set of DHCP options.

        • key - The key for one of the options (for example, domain-name).

        • value - The value for one of the options.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        ", "DescribeFlowLogsRequest$Filter": "

        One or more filters.

        • deliver-log-status - The status of the logs delivery (SUCCESS | FAILED).

        • flow-log-id - The ID of the flow log.

        • log-group-name - The name of the log group.

        • resource-id - The ID of the VPC, subnet, or network interface.

        • traffic-type - The type of traffic (ACCEPT | REJECT | ALL)

        ", "DescribeImagesRequest$Filters": "

        One or more filters.

        • architecture - The image architecture (i386 | x86_64).

        • block-device-mapping.delete-on-termination - A Boolean value that indicates whether the Amazon EBS volume is deleted on instance termination.

        • block-device-mapping.device-name - The device name for the EBS volume (for example, /dev/sdh).

        • block-device-mapping.snapshot-id - The ID of the snapshot used for the EBS volume.

        • block-device-mapping.volume-size - The volume size of the EBS volume, in GiB.

        • block-device-mapping.volume-type - The volume type of the EBS volume (gp2 | standard | io1).

        • description - The description of the image (provided during image creation).

        • hypervisor - The hypervisor type (ovm | xen).

        • image-id - The ID of the image.

        • image-type - The image type (machine | kernel | ramdisk).

        • is-public - A Boolean that indicates whether the image is public.

        • kernel-id - The kernel ID.

        • manifest-location - The location of the image manifest.

        • name - The name of the AMI (provided during image creation).

        • owner-alias - The AWS account alias (for example, amazon).

        • owner-id - The AWS account ID of the image owner.

        • platform - The platform. To only list Windows-based AMIs, use windows.

        • product-code - The product code.

        • product-code.type - The type of the product code (devpay | marketplace).

        • ramdisk-id - The RAM disk ID.

        • root-device-name - The name of the root device volume (for example, /dev/sda1).

        • root-device-type - The type of the root device volume (ebs | instance-store).

        • state - The state of the image (available | pending | failed).

        • state-reason-code - The reason code for the state change.

        • state-reason-message - The message for the state change.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • virtualization-type - The virtualization type (paravirtual | hvm).

        ", "DescribeImportImageTasksRequest$Filters": "

        One or more filters.

        ", "DescribeImportSnapshotTasksRequest$Filters": "

        One or more filters.

        ", "DescribeInstanceStatusRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone of the instance.

        • event.code - The code for the scheduled event (instance-reboot | system-reboot | system-maintenance | instance-retirement | instance-stop).

        • event.description - A description of the event.

        • event.not-after - The latest end time for the scheduled event (for example, 2014-09-15T17:15:20.000Z).

        • event.not-before - The earliest start time for the scheduled event (for example, 2014-09-15T17:15:20.000Z).

        • instance-state-code - The code for the instance state, as a 16-bit unsigned integer. The high byte is an opaque internal value and should be ignored. The low byte is set based on the state represented. The valid values are 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64 (stopping), and 80 (stopped).

        • instance-state-name - The state of the instance (pending | running | shutting-down | terminated | stopping | stopped).

        • instance-status.reachability - Filters on instance status where the name is reachability (passed | failed | initializing | insufficient-data).

        • instance-status.status - The status of the instance (ok | impaired | initializing | insufficient-data | not-applicable).

        • system-status.reachability - Filters on system status where the name is reachability (passed | failed | initializing | insufficient-data).

        • system-status.status - The system status of the instance (ok | impaired | initializing | insufficient-data | not-applicable).

        ", "DescribeInstancesRequest$Filters": "

        One or more filters.

        • architecture - The instance architecture (i386 | x86_64).

        • availability-zone - The Availability Zone of the instance.

        • block-device-mapping.attach-time - The attach time for an EBS volume mapped to the instance, for example, 2010-09-15T17:15:20.000Z.

        • block-device-mapping.delete-on-termination - A Boolean that indicates whether the EBS volume is deleted on instance termination.

        • block-device-mapping.device-name - The device name for the EBS volume (for example, /dev/sdh or xvdh).

        • block-device-mapping.status - The status for the EBS volume (attaching | attached | detaching | detached).

        • block-device-mapping.volume-id - The volume ID of the EBS volume.

        • client-token - The idempotency token you provided when you launched the instance.

        • dns-name - The public DNS name of the instance.

        • group-id - The ID of the security group for the instance. EC2-Classic only.

        • group-name - The name of the security group for the instance. EC2-Classic only.

        • hypervisor - The hypervisor type of the instance (ovm | xen).

        • iam-instance-profile.arn - The instance profile associated with the instance. Specified as an ARN.

        • image-id - The ID of the image used to launch the instance.

        • instance-id - The ID of the instance.

        • instance-lifecycle - Indicates whether this is a Spot Instance (spot).

        • instance-state-code - The state of the instance, as a 16-bit unsigned integer. The high byte is an opaque internal value and should be ignored. The low byte is set based on the state represented. The valid values are: 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64 (stopping), and 80 (stopped).

        • instance-state-name - The state of the instance (pending | running | shutting-down | terminated | stopping | stopped).

        • instance-type - The type of instance (for example, t2.micro).

        • instance.group-id - The ID of the security group for the instance.

        • instance.group-name - The name of the security group for the instance.

        • ip-address - The public IP address of the instance.

        • kernel-id - The kernel ID.

        • key-name - The name of the key pair used when the instance was launched.

        • launch-index - When launching multiple instances, this is the index for the instance in the launch group (for example, 0, 1, 2, and so on).

        • launch-time - The time when the instance was launched.

        • monitoring-state - Indicates whether monitoring is enabled for the instance (disabled | enabled).

        • owner-id - The AWS account ID of the instance owner.

        • placement-group-name - The name of the placement group for the instance.

        • platform - The platform. Use windows if you have Windows instances; otherwise, leave blank.

        • private-dns-name - The private DNS name of the instance.

        • private-ip-address - The private IP address of the instance.

        • product-code - The product code associated with the AMI used to launch the instance.

        • product-code.type - The type of product code (devpay | marketplace).

        • ramdisk-id - The RAM disk ID.

        • reason - The reason for the current state of the instance (for example, shows \"User Initiated [date]\" when you stop or terminate the instance). Similar to the state-reason-code filter.

        • requester-id - The ID of the entity that launched the instance on your behalf (for example, AWS Management Console, Auto Scaling, and so on).

        • reservation-id - The ID of the instance's reservation. A reservation ID is created any time you launch an instance. A reservation ID has a one-to-one relationship with an instance launch request, but can be associated with more than one instance if you launch multiple instances using the same launch request. For example, if you launch one instance, you'll get one reservation ID. If you launch ten instances using the same launch request, you'll also get one reservation ID.

        • root-device-name - The name of the root device for the instance (for example, /dev/sda1 or /dev/xvda).

        • root-device-type - The type of root device that the instance uses (ebs | instance-store).

        • source-dest-check - Indicates whether the instance performs source/destination checking. A value of true means that checking is enabled, and false means checking is disabled. The value must be false for the instance to perform network address translation (NAT) in your VPC.

        • spot-instance-request-id - The ID of the Spot Instance request.

        • state-reason-code - The reason code for the state change.

        • state-reason-message - A message that describes the state change.

        • subnet-id - The ID of the subnet for the instance.

        • tag:key=value - The key/value combination of a tag assigned to the resource, where tag:key is the tag's key.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • tenancy - The tenancy of an instance (dedicated | default).

        • virtualization-type - The virtualization type of the instance (paravirtual | hvm).

        • vpc-id - The ID of the VPC that the instance is running in.

        • network-interface.description - The description of the network interface.

        • network-interface.subnet-id - The ID of the subnet for the network interface.

        • network-interface.vpc-id - The ID of the VPC for the network interface.

        • network-interface.network-interface.id - The ID of the network interface.

        • network-interface.owner-id - The ID of the owner of the network interface.

        • network-interface.availability-zone - The Availability Zone for the network interface.

        • network-interface.requester-id - The requester ID for the network interface.

        • network-interface.requester-managed - Indicates whether the network interface is being managed by AWS.

        • network-interface.status - The status of the network interface (available) | in-use).

        • network-interface.mac-address - The MAC address of the network interface.

        • network-interface-private-dns-name - The private DNS name of the network interface.

        • network-interface.source-dest-check - Whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

        • network-interface.group-id - The ID of a security group associated with the network interface.

        • network-interface.group-name - The name of a security group associated with the network interface.

        • network-interface.attachment.attachment-id - The ID of the interface attachment.

        • network-interface.attachment.instance-id - The ID of the instance to which the network interface is attached.

        • network-interface.attachment.instance-owner-id - The owner ID of the instance to which the network interface is attached.

        • network-interface.addresses.private-ip-address - The private IP address associated with the network interface.

        • network-interface.attachment.device-index - The device index to which the network interface is attached.

        • network-interface.attachment.status - The status of the attachment (attaching | attached | detaching | detached).

        • network-interface.attachment.attach-time - The time that the network interface was attached to an instance.

        • network-interface.attachment.delete-on-termination - Specifies whether the attachment is deleted when an instance is terminated.

        • network-interface.addresses.primary - Specifies whether the IP address of the network interface is the primary private IP address.

        • network-interface.addresses.association.public-ip - The ID of the association of an Elastic IP address with a network interface.

        • network-interface.addresses.association.ip-owner-id - The owner ID of the private IP address associated with the network interface.

        • association.public-ip - The address of the Elastic IP address bound to the network interface.

        • association.ip-owner-id - The owner of the Elastic IP address associated with the network interface.

        • association.allocation-id - The allocation ID returned when you allocated the Elastic IP address for your network interface.

        • association.association-id - The association ID returned when the network interface was associated with an IP address.

        ", "DescribeInternetGatewaysRequest$Filters": "

        One or more filters.

        • attachment.state - The current state of the attachment between the gateway and the VPC (available). Present only if a VPC is attached.

        • attachment.vpc-id - The ID of an attached VPC.

        • internet-gateway-id - The ID of the Internet gateway.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        ", "DescribeKeyPairsRequest$Filters": "

        One or more filters.

        • fingerprint - The fingerprint of the key pair.

        • key-name - The name of the key pair.

        ", "DescribeMovingAddressesRequest$Filters": "

        One or more filters.

        • moving-status - The status of the Elastic IP address (MovingToVpc | RestoringToClassic).

        ", "DescribeNetworkAclsRequest$Filters": "

        One or more filters.

        • association.association-id - The ID of an association ID for the ACL.

        • association.network-acl-id - The ID of the network ACL involved in the association.

        • association.subnet-id - The ID of the subnet involved in the association.

        • default - Indicates whether the ACL is the default network ACL for the VPC.

        • entry.cidr - The CIDR range specified in the entry.

        • entry.egress - Indicates whether the entry applies to egress traffic.

        • entry.icmp.code - The ICMP code specified in the entry, if any.

        • entry.icmp.type - The ICMP type specified in the entry, if any.

        • entry.port-range.from - The start of the port range specified in the entry.

        • entry.port-range.to - The end of the port range specified in the entry.

        • entry.protocol - The protocol specified in the entry (tcp | udp | icmp or a protocol number).

        • entry.rule-action - Allows or denies the matching traffic (allow | deny).

        • entry.rule-number - The number of an entry (in other words, rule) in the ACL's set of entries.

        • network-acl-id - The ID of the network ACL.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC for the network ACL.

        ", "DescribeNetworkInterfacesRequest$Filters": "

        One or more filters.

        • addresses.private-ip-address - The private IP addresses associated with the network interface.

        • addresses.primary - Whether the private IP address is the primary IP address associated with the network interface.

        • addresses.association.public-ip - The association ID returned when the network interface was associated with the Elastic IP address.

        • addresses.association.owner-id - The owner ID of the addresses associated with the network interface.

        • association.association-id - The association ID returned when the network interface was associated with an IP address.

        • association.allocation-id - The allocation ID returned when you allocated the Elastic IP address for your network interface.

        • association.ip-owner-id - The owner of the Elastic IP address associated with the network interface.

        • association.public-ip - The address of the Elastic IP address bound to the network interface.

        • association.public-dns-name - The public DNS name for the network interface.

        • attachment.attachment-id - The ID of the interface attachment.

        • attachment.instance-id - The ID of the instance to which the network interface is attached.

        • attachment.instance-owner-id - The owner ID of the instance to which the network interface is attached.

        • attachment.device-index - The device index to which the network interface is attached.

        • attachment.status - The status of the attachment (attaching | attached | detaching | detached).

        • attachment.attach.time - The time that the network interface was attached to an instance.

        • attachment.delete-on-termination - Indicates whether the attachment is deleted when an instance is terminated.

        • availability-zone - The Availability Zone of the network interface.

        • description - The description of the network interface.

        • group-id - The ID of a security group associated with the network interface.

        • group-name - The name of a security group associated with the network interface.

        • mac-address - The MAC address of the network interface.

        • network-interface-id - The ID of the network interface.

        • owner-id - The AWS account ID of the network interface owner.

        • private-ip-address - The private IP address or addresses of the network interface.

        • private-dns-name - The private DNS name of the network interface.

        • requester-id - The ID of the entity that launched the instance on your behalf (for example, AWS Management Console, Auto Scaling, and so on).

        • requester-managed - Indicates whether the network interface is being managed by an AWS service (for example, AWS Management Console, Auto Scaling, and so on).

        • source-desk-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform Network Address Translation (NAT) in your VPC.

        • status - The status of the network interface. If the network interface is not attached to an instance, the status is available; if a network interface is attached to an instance the status is in-use.

        • subnet-id - The ID of the subnet for the network interface.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC for the network interface.

        ", "DescribePlacementGroupsRequest$Filters": "

        One or more filters.

        • group-name - The name of the placement group.

        • state - The state of the placement group (pending | available | deleting | deleted).

        • strategy - The strategy of the placement group (cluster).

        ", "DescribePrefixListsRequest$Filters": "

        One or more filters.

        • prefix-list-id: The ID of a prefix list.

        • prefix-list-name: The name of a prefix list.

        ", "DescribeRegionsRequest$Filters": "

        One or more filters.

        • endpoint - The endpoint of the region (for example, ec2.us-east-1.amazonaws.com).

        • region-name - The name of the region (for example, us-east-1).

        ", "DescribeReservedInstancesListingsRequest$Filters": "

        One or more filters.

        • reserved-instances-id - The ID of the Reserved Instances.

        • reserved-instances-listing-id - The ID of the Reserved Instances listing.

        • status - The status of the Reserved Instance listing (pending | active | cancelled | closed).

        • status-message - The reason for the status.

        ", "DescribeReservedInstancesModificationsRequest$Filters": "

        One or more filters.

        • client-token - The idempotency token for the modification request.

        • create-date - The time when the modification request was created.

        • effective-date - The time when the modification becomes effective.

        • modification-result.reserved-instances-id - The ID for the Reserved Instances created as part of the modification request. This ID is only available when the status of the modification is fulfilled.

        • modification-result.target-configuration.availability-zone - The Availability Zone for the new Reserved Instances.

        • modification-result.target-configuration.instance-count - The number of new Reserved Instances.

        • modification-result.target-configuration.instance-type - The instance type of the new Reserved Instances.

        • modification-result.target-configuration.platform - The network platform of the new Reserved Instances (EC2-Classic | EC2-VPC).

        • reserved-instances-id - The ID of the Reserved Instances modified.

        • reserved-instances-modification-id - The ID of the modification request.

        • status - The status of the Reserved Instances modification request (processing | fulfilled | failed).

        • status-message - The reason for the status.

        • update-date - The time when the modification request was last updated.

        ", "DescribeReservedInstancesOfferingsRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone where the Reserved Instance can be used.

        • duration - The duration of the Reserved Instance (for example, one year or three years), in seconds (31536000 | 94608000).

        • fixed-price - The purchase price of the Reserved Instance (for example, 9800.0).

        • instance-type - The instance type on which the Reserved Instance can be used.

        • marketplace - Set to true to show only Reserved Instance Marketplace offerings. When this filter is not used, which is the default behavior, all offerings from AWS and Reserved Instance Marketplace are listed.

        • product-description - The Reserved Instance product platform description. Instances that include (Amazon VPC) in the product platform description will only be displayed to EC2-Classic account holders and are for use with Amazon VPC. (Linux/UNIX | Linux/UNIX (Amazon VPC) | SUSE Linux | SUSE Linux (Amazon VPC) | Red Hat Enterprise Linux | Red Hat Enterprise Linux (Amazon VPC) | Windows | Windows (Amazon VPC) | Windows with SQL Server Standard | Windows with SQL Server Standard (Amazon VPC) | Windows with SQL Server Web | Windows with SQL Server Web (Amazon VPC) | Windows with SQL Server Enterprise | Windows with SQL Server Enterprise (Amazon VPC))

        • reserved-instances-offering-id - The Reserved Instances offering ID.

        • usage-price - The usage price of the Reserved Instance, per hour (for example, 0.84).

        ", "DescribeReservedInstancesRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone where the Reserved Instance can be used.

        • duration - The duration of the Reserved Instance (one year or three years), in seconds (31536000 | 94608000).

        • end - The time when the Reserved Instance expires (for example, 2015-08-07T11:54:42.000Z).

        • fixed-price - The purchase price of the Reserved Instance (for example, 9800.0).

        • instance-type - The instance type on which the Reserved Instance can be used.

        • product-description - The Reserved Instance product platform description. Instances that include (Amazon VPC) in the product platform description will only be displayed to EC2-Classic account holders and are for use with Amazon VPC. (Linux/UNIX | Linux/UNIX (Amazon VPC) | SUSE Linux | SUSE Linux (Amazon VPC) | Red Hat Enterprise Linux | Red Hat Enterprise Linux (Amazon VPC) | Windows | Windows (Amazon VPC) | Windows with SQL Server Standard | Windows with SQL Server Standard (Amazon VPC) | Windows with SQL Server Web | Windows with SQL Server Web (Amazon VPC) | Windows with SQL Server Enterprise | Windows with SQL Server Enterprise (Amazon VPC)).

        • reserved-instances-id - The ID of the Reserved Instance.

        • start - The time at which the Reserved Instance purchase request was placed (for example, 2014-08-07T11:54:42.000Z).

        • state - The state of the Reserved Instance (payment-pending | active | payment-failed | retired).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • usage-price - The usage price of the Reserved Instance, per hour (for example, 0.84).

        ", "DescribeRouteTablesRequest$Filters": "

        One or more filters.

        • association.route-table-association-id - The ID of an association ID for the route table.

        • association.route-table-id - The ID of the route table involved in the association.

        • association.subnet-id - The ID of the subnet involved in the association.

        • association.main - Indicates whether the route table is the main route table for the VPC.

        • route-table-id - The ID of the route table.

        • route.destination-cidr-block - The CIDR range specified in a route in the table.

        • route.destination-prefix-list-id - The ID (prefix) of the AWS service specified in a route in the table.

        • route.gateway-id - The ID of a gateway specified in a route in the table.

        • route.instance-id - The ID of an instance specified in a route in the table.

        • route.origin - Describes how the route was created. CreateRouteTable indicates that the route was automatically created when the route table was created; CreateRoute indicates that the route was manually added to the route table; EnableVgwRoutePropagation indicates that the route was propagated by route propagation.

        • route.state - The state of a route in the route table (active | blackhole). The blackhole state indicates that the route's target isn't available (for example, the specified gateway isn't attached to the VPC, the specified NAT instance has been terminated, and so on).

        • route.vpc-peering-connection-id - The ID of a VPC peering connection specified in a route in the table.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC for the route table.

        ", "DescribeSecurityGroupsRequest$Filters": "

        One or more filters. If using multiple filters for rules, the results include security groups for which any combination of rules - not necessarily a single rule - match all filters.

        • description - The description of the security group.

        • egress.ip-permission.prefix-list-id - The ID (prefix) of the AWS service to which the security group allows access.

        • group-id - The ID of the security group.

        • group-name - The name of the security group.

        • ip-permission.cidr - A CIDR range that has been granted permission.

        • ip-permission.from-port - The start of port range for the TCP and UDP protocols, or an ICMP type number.

        • ip-permission.group-id - The ID of a security group that has been granted permission.

        • ip-permission.group-name - The name of a security group that has been granted permission.

        • ip-permission.protocol - The IP protocol for the permission (tcp | udp | icmp or a protocol number).

        • ip-permission.to-port - The end of port range for the TCP and UDP protocols, or an ICMP code.

        • ip-permission.user-id - The ID of an AWS account that has been granted permission.

        • owner-id - The AWS account ID of the owner of the security group.

        • tag-key - The key of a tag assigned to the security group.

        • tag-value - The value of a tag assigned to the security group.

        • vpc-id - The ID of the VPC specified when the security group was created.

        ", "DescribeSnapshotsRequest$Filters": "

        One or more filters.

        • description - A description of the snapshot.

        • owner-alias - The AWS account alias (for example, amazon) that owns the snapshot.

        • owner-id - The ID of the AWS account that owns the snapshot.

        • progress - The progress of the snapshot, as a percentage (for example, 80%).

        • snapshot-id - The snapshot ID.

        • start-time - The time stamp when the snapshot was initiated.

        • status - The status of the snapshot (pending | completed | error).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • volume-id - The ID of the volume the snapshot is for.

        • volume-size - The size of the volume, in GiB.

        ", "DescribeSpotInstanceRequestsRequest$Filters": "

        One or more filters.

        • availability-zone-group - The Availability Zone group.

        • create-time - The time stamp when the Spot instance request was created.

        • fault-code - The fault code related to the request.

        • fault-message - The fault message related to the request.

        • instance-id - The ID of the instance that fulfilled the request.

        • launch-group - The Spot instance launch group.

        • launch.block-device-mapping.delete-on-termination - Indicates whether the Amazon EBS volume is deleted on instance termination.

        • launch.block-device-mapping.device-name - The device name for the Amazon EBS volume (for example, /dev/sdh).

        • launch.block-device-mapping.snapshot-id - The ID of the snapshot used for the Amazon EBS volume.

        • launch.block-device-mapping.volume-size - The size of the Amazon EBS volume, in GiB.

        • launch.block-device-mapping.volume-type - The type of the Amazon EBS volume (gp2 | standard | io1).

        • launch.group-id - The security group for the instance.

        • launch.image-id - The ID of the AMI.

        • launch.instance-type - The type of instance (for example, m1.small).

        • launch.kernel-id - The kernel ID.

        • launch.key-name - The name of the key pair the instance launched with.

        • launch.monitoring-enabled - Whether monitoring is enabled for the Spot instance.

        • launch.ramdisk-id - The RAM disk ID.

        • network-interface.network-interface-id - The ID of the network interface.

        • network-interface.device-index - The index of the device for the network interface attachment on the instance.

        • network-interface.subnet-id - The ID of the subnet for the instance.

        • network-interface.description - A description of the network interface.

        • network-interface.private-ip-address - The primary private IP address of the network interface.

        • network-interface.delete-on-termination - Indicates whether the network interface is deleted when the instance is terminated.

        • network-interface.group-id - The ID of the security group associated with the network interface.

        • network-interface.group-name - The name of the security group associated with the network interface.

        • network-interface.addresses.primary - Indicates whether the IP address is the primary private IP address.

        • product-description - The product description associated with the instance (Linux/UNIX | Windows).

        • spot-instance-request-id - The Spot instance request ID.

        • spot-price - The maximum hourly price for any Spot instance launched to fulfill the request.

        • state - The state of the Spot instance request (open | active | closed | cancelled | failed). Spot bid status information can help you track your Amazon EC2 Spot instance requests. For more information, see Spot Bid Status in the Amazon Elastic Compute Cloud User Guide.

        • status-code - The short code describing the most recent evaluation of your Spot instance request.

        • status-message - The message explaining the status of the Spot instance request.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • type - The type of Spot instance request (one-time | persistent).

        • launched-availability-zone - The Availability Zone in which the bid is launched.

        • valid-from - The start date of the request.

        • valid-until - The end date of the request.

        ", "DescribeSpotPriceHistoryRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone for which prices should be returned.

        • instance-type - The type of instance (for example, m1.small).

        • product-description - The product description for the Spot price (Linux/UNIX | SUSE Linux | Windows | Linux/UNIX (Amazon VPC) | SUSE Linux (Amazon VPC) | Windows (Amazon VPC)).

        • spot-price - The Spot price. The value must match exactly (or use wildcards; greater than or less than comparison is not supported).

        • timestamp - The timestamp of the Spot price history, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). You can use wildcards (* and ?). Greater than or less than comparison is not supported.

        ", "DescribeSubnetsRequest$Filters": "

        One or more filters.

        • availabilityZone - The Availability Zone for the subnet. You can also use availability-zone as the filter name.

        • available-ip-address-count - The number of IP addresses in the subnet that are available.

        • cidrBlock - The CIDR block of the subnet. The CIDR block you specify must exactly match the subnet's CIDR block for information to be returned for the subnet. You can also use cidr or cidr-block as the filter names.

        • defaultForAz - Indicates whether this is the default subnet for the Availability Zone. You can also use default-for-az as the filter name.

        • state - The state of the subnet (pending | available).

        • subnet-id - The ID of the subnet.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC for the subnet.

        ", "DescribeTagsRequest$Filters": "

        One or more filters.

        • key - The tag key.

        • resource-id - The resource ID.

        • resource-type - The resource type (customer-gateway | dhcp-options | image | instance | internet-gateway | network-acl | network-interface | reserved-instances | route-table | security-group | snapshot | spot-instances-request | subnet | volume | vpc | vpn-connection | vpn-gateway).

        • value - The tag value.

        ", "DescribeVolumeStatusRequest$Filters": "

        One or more filters.

        • action.code - The action code for the event (for example, enable-volume-io).

        • action.description - A description of the action.

        • action.event-id - The event ID associated with the action.

        • availability-zone - The Availability Zone of the instance.

        • event.description - A description of the event.

        • event.event-id - The event ID.

        • event.event-type - The event type (for io-enabled: passed | failed; for io-performance: io-performance:degraded | io-performance:severely-degraded | io-performance:stalled).

        • event.not-after - The latest end time for the event.

        • event.not-before - The earliest start time for the event.

        • volume-status.details-name - The cause for volume-status.status (io-enabled | io-performance).

        • volume-status.details-status - The status of volume-status.details-name (for io-enabled: passed | failed; for io-performance: normal | degraded | severely-degraded | stalled).

        • volume-status.status - The status of the volume (ok | impaired | warning | insufficient-data).

        ", "DescribeVolumesRequest$Filters": "

        One or more filters.

        • attachment.attach-time - The time stamp when the attachment initiated.

        • attachment.delete-on-termination - Whether the volume is deleted on instance termination.

        • attachment.device - The device name that is exposed to the instance (for example, /dev/sda1).

        • attachment.instance-id - The ID of the instance the volume is attached to.

        • attachment.status - The attachment state (attaching | attached | detaching | detached).

        • availability-zone - The Availability Zone in which the volume was created.

        • create-time - The time stamp when the volume was created.

        • encrypted - The encryption status of the volume.

        • size - The size of the volume, in GiB.

        • snapshot-id - The snapshot from which the volume was created.

        • status - The status of the volume (creating | available | in-use | deleting | deleted | error).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • volume-id - The volume ID.

        • volume-type - The Amazon EBS volume type. This can be gp2 for General Purpose (SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, or standard for Magnetic volumes.

        ", "DescribeVpcClassicLinkRequest$Filters": "

        One or more filters.

        • is-classic-link-enabled - Whether the VPC is enabled for ClassicLink (true | false).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        ", "DescribeVpcEndpointsRequest$Filters": "

        One or more filters.

        • service-name: The name of the AWS service.

        • vpc-id: The ID of the VPC in which the endpoint resides.

        • vpc-endpoint-id: The ID of the endpoint.

        • vpc-endpoint-state: The state of the endpoint. (pending | available | deleting | deleted)

        ", "DescribeVpcPeeringConnectionsRequest$Filters": "

        One or more filters.

        • accepter-vpc-info.cidr-block - The CIDR block of the peer VPC.

        • accepter-vpc-info.owner-id - The AWS account ID of the owner of the peer VPC.

        • accepter-vpc-info.vpc-id - The ID of the peer VPC.

        • expiration-time - The expiration date and time for the VPC peering connection.

        • requester-vpc-info.cidr-block - The CIDR block of the requester's VPC.

        • requester-vpc-info.owner-id - The AWS account ID of the owner of the requester VPC.

        • requester-vpc-info.vpc-id - The ID of the requester VPC.

        • status-code - The status of the VPC peering connection (pending-acceptance | failed | expired | provisioning | active | deleted | rejected).

        • status-message - A message that provides more information about the status of the VPC peering connection, if applicable.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-peering-connection-id - The ID of the VPC peering connection.

        ", "DescribeVpcsRequest$Filters": "

        One or more filters.

        • cidr - The CIDR block of the VPC. The CIDR block you specify must exactly match the VPC's CIDR block for information to be returned for the VPC. Must contain the slash followed by one or two digits (for example, /28).

        • dhcp-options-id - The ID of a set of DHCP options.

        • isDefault - Indicates whether the VPC is the default VPC.

        • state - The state of the VPC (pending | available).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC.

        ", "DescribeVpnConnectionsRequest$Filters": "

        One or more filters.

        • customer-gateway-configuration - The configuration information for the customer gateway.

        • customer-gateway-id - The ID of a customer gateway associated with the VPN connection.

        • state - The state of the VPN connection (pending | available | deleting | deleted).

        • option.static-routes-only - Indicates whether the connection has static routes only. Used for devices that do not support Border Gateway Protocol (BGP).

        • route.destination-cidr-block - The destination CIDR block. This corresponds to the subnet used in a customer data center.

        • bgp-asn - The BGP Autonomous System Number (ASN) associated with a BGP device.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • type - The type of VPN connection. Currently the only supported type is ipsec.1.

        • vpn-connection-id - The ID of the VPN connection.

        • vpn-gateway-id - The ID of a virtual private gateway associated with the VPN connection.

        ", "DescribeVpnGatewaysRequest$Filters": "

        One or more filters.

        • attachment.state - The current state of the attachment between the gateway and the VPC (attaching | attached | detaching | detached).

        • attachment.vpc-id - The ID of an attached VPC.

        • availability-zone - The Availability Zone for the virtual private gateway.

        • state - The state of the virtual private gateway (pending | available | deleting | deleted).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • type - The type of virtual private gateway. Currently the only supported type is ipsec.1.

        • vpn-gateway-id - The ID of the virtual private gateway.

        " } }, "Float": { "base": null, "refs": { "ReservedInstances$UsagePrice": "

        The usage price of the Reserved Instance, per hour.

        ", "ReservedInstances$FixedPrice": "

        The purchase price of the Reserved Instance.

        ", "ReservedInstancesOffering$UsagePrice": "

        The usage price of the Reserved Instance, per hour.

        ", "ReservedInstancesOffering$FixedPrice": "

        The purchase price of the Reserved Instance.

        " } }, "FlowLog": { "base": "

        Describes a flow log.

        ", "refs": { "FlowLogSet$member": null } }, "FlowLogSet": { "base": null, "refs": { "DescribeFlowLogsResult$FlowLogs": "

        Information about the flow logs.

        " } }, "FlowLogsResourceType": { "base": null, "refs": { "CreateFlowLogsRequest$ResourceType": "

        The type of resource on which to create the flow log.

        " } }, "GatewayType": { "base": null, "refs": { "CreateCustomerGatewayRequest$Type": "

        The type of VPN connection that this customer gateway supports (ipsec.1).

        ", "CreateVpnGatewayRequest$Type": "

        The type of VPN connection this virtual private gateway supports.

        ", "VpnConnection$Type": "

        The type of VPN connection.

        ", "VpnGateway$Type": "

        The type of VPN connection the virtual private gateway supports.

        " } }, "GetConsoleOutputRequest": { "base": null, "refs": { } }, "GetConsoleOutputResult": { "base": null, "refs": { } }, "GetPasswordDataRequest": { "base": null, "refs": { } }, "GetPasswordDataResult": { "base": null, "refs": { } }, "GroupIdStringList": { "base": null, "refs": { "AttachClassicLinkVpcRequest$Groups": "

        The ID of one or more of the VPC's security groups. You cannot specify security groups from a different VPC.

        ", "DescribeSecurityGroupsRequest$GroupIds": "

        One or more security group IDs. Required for security groups in a nondefault VPC.

        Default: Describes all your security groups.

        ", "ModifyInstanceAttributeRequest$Groups": "

        [EC2-VPC] Changes the security groups of the instance. You must specify at least one security group, even if it's just the default security group for the VPC. You must specify the security group ID, not the security group name.

        " } }, "GroupIdentifier": { "base": "

        Describes a security group.

        ", "refs": { "GroupIdentifierList$member": null } }, "GroupIdentifierList": { "base": null, "refs": { "ClassicLinkInstance$Groups": "

        A list of security groups.

        ", "DescribeNetworkInterfaceAttributeResult$Groups": "

        The security groups associated with the network interface.

        ", "Instance$SecurityGroups": "

        One or more security groups for the instance.

        ", "InstanceAttribute$Groups": "

        The security groups associated with the instance.

        ", "InstanceNetworkInterface$Groups": "

        One or more security groups.

        ", "LaunchSpecification$SecurityGroups": "

        One or more security groups. To request an instance in a nondefault VPC, you must specify the ID of the security group. To request an instance in EC2-Classic or a default VPC, you can specify the name or the ID of the security group.

        ", "NetworkInterface$Groups": "

        Any security groups for the network interface.

        ", "Reservation$Groups": "

        One or more security groups.

        ", "SpotFleetLaunchSpecification$SecurityGroups": "

        One or more security groups. To request an instance in a nondefault VPC, you must specify the ID of the security group. To request an instance in EC2-Classic or a default VPC, you can specify the name or the ID of the security group.

        " } }, "GroupNameStringList": { "base": null, "refs": { "DescribeSecurityGroupsRequest$GroupNames": "

        [EC2-Classic and default VPC only] One or more security group names. You can specify either the security group name or the security group ID. For security groups in a nondefault VPC, use the group-name filter to describe security groups by name.

        Default: Describes all your security groups.

        ", "ModifySnapshotAttributeRequest$GroupNames": "

        The group to modify for the snapshot.

        " } }, "HistoryRecord": { "base": "

        Describes an event in the history of the Spot fleet request.

        ", "refs": { "HistoryRecords$member": null } }, "HistoryRecords": { "base": null, "refs": { "DescribeSpotFleetRequestHistoryResponse$HistoryRecords": "

        Information about the events in the history of the Spot fleet request.

        " } }, "HypervisorType": { "base": null, "refs": { "Image$Hypervisor": "

        The hypervisor type of the image.

        ", "Instance$Hypervisor": "

        The hypervisor type of the instance.

        " } }, "IamInstanceProfile": { "base": "

        Describes an IAM instance profile.

        ", "refs": { "Instance$IamInstanceProfile": "

        The IAM instance profile associated with the instance.

        " } }, "IamInstanceProfileSpecification": { "base": "

        Describes an IAM instance profile.

        ", "refs": { "LaunchSpecification$IamInstanceProfile": "

        The IAM instance profile.

        ", "RunInstancesRequest$IamInstanceProfile": "

        The IAM instance profile.

        ", "SpotFleetLaunchSpecification$IamInstanceProfile": "

        The IAM instance profile.

        ", "RequestSpotLaunchSpecification$IamInstanceProfile": "

        The IAM instance profile.

        " } }, "IcmpTypeCode": { "base": "

        Describes the ICMP type and code.

        ", "refs": { "CreateNetworkAclEntryRequest$IcmpTypeCode": "

        ICMP protocol: The ICMP type and code. Required if specifying ICMP for the protocol.

        ", "NetworkAclEntry$IcmpTypeCode": "

        ICMP protocol: The ICMP type and code.

        ", "ReplaceNetworkAclEntryRequest$IcmpTypeCode": "

        ICMP protocol: The ICMP type and code. Required if specifying 1 (ICMP) for the protocol.

        " } }, "Image": { "base": "

        Describes an image.

        ", "refs": { "ImageList$member": null } }, "ImageAttribute": { "base": "

        Describes an image attribute.

        ", "refs": { } }, "ImageAttributeName": { "base": null, "refs": { "DescribeImageAttributeRequest$Attribute": "

        The AMI attribute.

        Note: Depending on your account privileges, the blockDeviceMapping attribute may return a Client.AuthFailure error. If this happens, use DescribeImages to get information about the block device mapping for the AMI.

        " } }, "ImageDiskContainer": { "base": "

        Describes the disk container object for an import image task.

        ", "refs": { "ImageDiskContainerList$member": null } }, "ImageDiskContainerList": { "base": null, "refs": { "ImportImageRequest$DiskContainers": "

        Information about the disk containers.

        " } }, "ImageIdStringList": { "base": null, "refs": { "DescribeImagesRequest$ImageIds": "

        One or more image IDs.

        Default: Describes all images available to you.

        " } }, "ImageList": { "base": null, "refs": { "DescribeImagesResult$Images": "

        Information about one or more images.

        " } }, "ImageState": { "base": null, "refs": { "Image$State": "

        The current state of the AMI. If the state is available, the image is successfully registered and can be used to launch an instance.

        " } }, "ImageTypeValues": { "base": null, "refs": { "Image$ImageType": "

        The type of image.

        " } }, "ImportImageRequest": { "base": null, "refs": { } }, "ImportImageResult": { "base": null, "refs": { } }, "ImportImageTask": { "base": "

        Describes an import image task.

        ", "refs": { "ImportImageTaskList$member": null } }, "ImportImageTaskList": { "base": null, "refs": { "DescribeImportImageTasksResult$ImportImageTasks": "

        A list of zero or more import image tasks that are currently active or were completed or canceled in the previous 7 days.

        " } }, "ImportInstanceLaunchSpecification": { "base": "

        Describes the launch specification for VM import.

        ", "refs": { "ImportInstanceRequest$LaunchSpecification": "

        The launch specification.

        " } }, "ImportInstanceRequest": { "base": null, "refs": { } }, "ImportInstanceResult": { "base": null, "refs": { } }, "ImportInstanceTaskDetails": { "base": "

        Describes an import instance task.

        ", "refs": { "ConversionTask$ImportInstance": "

        If the task is for importing an instance, this contains information about the import instance task.

        " } }, "ImportInstanceVolumeDetailItem": { "base": "

        Describes an import volume task.

        ", "refs": { "ImportInstanceVolumeDetailSet$member": null } }, "ImportInstanceVolumeDetailSet": { "base": null, "refs": { "ImportInstanceTaskDetails$Volumes": "

        One or more volumes.

        " } }, "ImportKeyPairRequest": { "base": null, "refs": { } }, "ImportKeyPairResult": { "base": null, "refs": { } }, "ImportSnapshotRequest": { "base": null, "refs": { } }, "ImportSnapshotResult": { "base": null, "refs": { } }, "ImportSnapshotTask": { "base": "

        Describes an import snapshot task.

        ", "refs": { "ImportSnapshotTaskList$member": null } }, "ImportSnapshotTaskList": { "base": null, "refs": { "DescribeImportSnapshotTasksResult$ImportSnapshotTasks": "

        A list of zero or more import snapshot tasks that are currently active or were completed or canceled in the previous 7 days.

        " } }, "ImportTaskIdList": { "base": null, "refs": { "DescribeImportImageTasksRequest$ImportTaskIds": "

        A list of import image task IDs.

        ", "DescribeImportSnapshotTasksRequest$ImportTaskIds": "

        A list of import snapshot task IDs.

        " } }, "ImportVolumeRequest": { "base": null, "refs": { } }, "ImportVolumeResult": { "base": null, "refs": { } }, "ImportVolumeTaskDetails": { "base": "

        Describes an import volume task.

        ", "refs": { "ConversionTask$ImportVolume": "

        If the task is for importing a volume, this contains information about the import volume task.

        " } }, "Instance": { "base": "

        Describes an instance.

        ", "refs": { "InstanceList$member": null } }, "InstanceAttribute": { "base": "

        Describes an instance attribute.

        ", "refs": { } }, "InstanceAttributeName": { "base": null, "refs": { "DescribeInstanceAttributeRequest$Attribute": "

        The instance attribute.

        ", "ModifyInstanceAttributeRequest$Attribute": "

        The name of the attribute.

        ", "ResetInstanceAttributeRequest$Attribute": "

        The attribute to reset.

        " } }, "InstanceBlockDeviceMapping": { "base": "

        Describes a block device mapping.

        ", "refs": { "InstanceBlockDeviceMappingList$member": null } }, "InstanceBlockDeviceMappingList": { "base": null, "refs": { "Instance$BlockDeviceMappings": "

        Any block device mapping entries for the instance.

        ", "InstanceAttribute$BlockDeviceMappings": "

        The block device mapping of the instance.

        " } }, "InstanceBlockDeviceMappingSpecification": { "base": "

        Describes a block device mapping entry.

        ", "refs": { "InstanceBlockDeviceMappingSpecificationList$member": null } }, "InstanceBlockDeviceMappingSpecificationList": { "base": null, "refs": { "ModifyInstanceAttributeRequest$BlockDeviceMappings": "

        Modifies the DeleteOnTermination attribute for volumes that are currently attached. The volume must be owned by the caller. If no value is specified for DeleteOnTermination, the default is true and the volume is deleted when the instance is terminated.

        To add instance store volumes to an Amazon EBS-backed instance, you must add them when you launch the instance. For more information, see Updating the Block Device Mapping when Launching an Instance in the Amazon Elastic Compute Cloud User Guide.

        " } }, "InstanceCount": { "base": "

        Describes a Reserved Instance listing state.

        ", "refs": { "InstanceCountList$member": null } }, "InstanceCountList": { "base": null, "refs": { "ReservedInstancesListing$InstanceCounts": "

        The number of instances in this state.

        " } }, "InstanceExportDetails": { "base": "

        Describes an instance to export.

        ", "refs": { "ExportTask$InstanceExportDetails": "

        Information about the instance to export.

        " } }, "InstanceIdStringList": { "base": null, "refs": { "DescribeClassicLinkInstancesRequest$InstanceIds": "

        One or more instance IDs. Must be instances linked to a VPC through ClassicLink.

        ", "DescribeInstanceStatusRequest$InstanceIds": "

        One or more instance IDs.

        Default: Describes all your instances.

        Constraints: Maximum 100 explicitly specified instance IDs.

        ", "DescribeInstancesRequest$InstanceIds": "

        One or more instance IDs.

        Default: Describes all your instances.

        ", "MonitorInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "RebootInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "ReportInstanceStatusRequest$Instances": "

        One or more instances.

        ", "StartInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "StopInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "TerminateInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "UnmonitorInstancesRequest$InstanceIds": "

        One or more instance IDs.

        " } }, "InstanceLifecycleType": { "base": null, "refs": { "Instance$InstanceLifecycle": "

        Indicates whether this is a Spot Instance.

        " } }, "InstanceList": { "base": null, "refs": { "Reservation$Instances": "

        One or more instances.

        " } }, "InstanceMonitoring": { "base": "

        Describes the monitoring information of the instance.

        ", "refs": { "InstanceMonitoringList$member": null } }, "InstanceMonitoringList": { "base": null, "refs": { "MonitorInstancesResult$InstanceMonitorings": "

        Monitoring information for one or more instances.

        ", "UnmonitorInstancesResult$InstanceMonitorings": "

        Monitoring information for one or more instances.

        " } }, "InstanceNetworkInterface": { "base": "

        Describes a network interface.

        ", "refs": { "InstanceNetworkInterfaceList$member": null } }, "InstanceNetworkInterfaceAssociation": { "base": "

        Describes association information for an Elastic IP address.

        ", "refs": { "InstanceNetworkInterface$Association": "

        The association information for an Elastic IP associated with the network interface.

        ", "InstancePrivateIpAddress$Association": "

        The association information for an Elastic IP address for the network interface.

        " } }, "InstanceNetworkInterfaceAttachment": { "base": "

        Describes a network interface attachment.

        ", "refs": { "InstanceNetworkInterface$Attachment": "

        The network interface attachment.

        " } }, "InstanceNetworkInterfaceList": { "base": null, "refs": { "Instance$NetworkInterfaces": "

        [EC2-VPC] One or more network interfaces for the instance.

        " } }, "InstanceNetworkInterfaceSpecification": { "base": "

        Describes a network interface.

        ", "refs": { "InstanceNetworkInterfaceSpecificationList$member": null } }, "InstanceNetworkInterfaceSpecificationList": { "base": null, "refs": { "LaunchSpecification$NetworkInterfaces": "

        One or more network interfaces.

        ", "RunInstancesRequest$NetworkInterfaces": "

        One or more network interfaces.

        ", "SpotFleetLaunchSpecification$NetworkInterfaces": "

        One or more network interfaces.

        ", "RequestSpotLaunchSpecification$NetworkInterfaces": "

        One or more network interfaces.

        " } }, "InstancePrivateIpAddress": { "base": "

        Describes a private IP address.

        ", "refs": { "InstancePrivateIpAddressList$member": null } }, "InstancePrivateIpAddressList": { "base": null, "refs": { "InstanceNetworkInterface$PrivateIpAddresses": "

        The private IP addresses associated with the network interface.

        " } }, "InstanceState": { "base": "

        Describes the current state of the instance.

        ", "refs": { "Instance$State": "

        The current state of the instance.

        ", "InstanceStateChange$CurrentState": "

        The current state of the instance.

        ", "InstanceStateChange$PreviousState": "

        The previous state of the instance.

        ", "InstanceStatus$InstanceState": "

        The intended state of the instance. DescribeInstanceStatus requires that an instance be in the running state.

        " } }, "InstanceStateChange": { "base": "

        Describes an instance state change.

        ", "refs": { "InstanceStateChangeList$member": null } }, "InstanceStateChangeList": { "base": null, "refs": { "StartInstancesResult$StartingInstances": "

        Information about one or more started instances.

        ", "StopInstancesResult$StoppingInstances": "

        Information about one or more stopped instances.

        ", "TerminateInstancesResult$TerminatingInstances": "

        Information about one or more terminated instances.

        " } }, "InstanceStateName": { "base": null, "refs": { "InstanceState$Name": "

        The current state of the instance.

        " } }, "InstanceStatus": { "base": "

        Describes the status of an instance.

        ", "refs": { "InstanceStatusList$member": null } }, "InstanceStatusDetails": { "base": "

        Describes the instance status.

        ", "refs": { "InstanceStatusDetailsList$member": null } }, "InstanceStatusDetailsList": { "base": null, "refs": { "InstanceStatusSummary$Details": "

        The system instance health or application instance health.

        " } }, "InstanceStatusEvent": { "base": "

        Describes a scheduled event for an instance.

        ", "refs": { "InstanceStatusEventList$member": null } }, "InstanceStatusEventList": { "base": null, "refs": { "InstanceStatus$Events": "

        Any scheduled events associated with the instance.

        " } }, "InstanceStatusList": { "base": null, "refs": { "DescribeInstanceStatusResult$InstanceStatuses": "

        One or more instance status descriptions.

        " } }, "InstanceStatusSummary": { "base": "

        Describes the status of an instance.

        ", "refs": { "InstanceStatus$SystemStatus": "

        Reports impaired functionality that stems from issues related to the systems that support an instance, such as hardware failures and network connectivity problems.

        ", "InstanceStatus$InstanceStatus": "

        Reports impaired functionality that stems from issues internal to the instance, such as impaired reachability.

        " } }, "InstanceType": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$InstanceType": "

        The instance type on which the Reserved Instance can be used. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide.

        ", "ImportInstanceLaunchSpecification$InstanceType": "

        The instance type. For more information about the instance types that you can import, see Before You Get Started in the Amazon Elastic Compute Cloud User Guide.

        ", "Instance$InstanceType": "

        The instance type.

        ", "InstanceTypeList$member": null, "LaunchSpecification$InstanceType": "

        The instance type.

        ", "ReservedInstances$InstanceType": "

        The instance type on which the Reserved Instance can be used.

        ", "ReservedInstancesConfiguration$InstanceType": "

        The instance type for the modified Reserved Instances.

        ", "ReservedInstancesOffering$InstanceType": "

        The instance type on which the Reserved Instance can be used.

        ", "RunInstancesRequest$InstanceType": "

        The instance type. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide.

        Default: m1.small

        ", "SpotFleetLaunchSpecification$InstanceType": "

        The instance type.

        ", "SpotPrice$InstanceType": "

        The instance type.

        ", "RequestSpotLaunchSpecification$InstanceType": "

        The instance type.

        " } }, "InstanceTypeList": { "base": null, "refs": { "DescribeSpotPriceHistoryRequest$InstanceTypes": "

        Filters the results by the specified instance types.

        " } }, "Integer": { "base": null, "refs": { "AssignPrivateIpAddressesRequest$SecondaryPrivateIpAddressCount": "

        The number of secondary IP addresses to assign to the network interface. You can't specify this parameter when also specifying private IP addresses.

        ", "AttachNetworkInterfaceRequest$DeviceIndex": "

        The index of the device for the network interface attachment.

        ", "AuthorizeSecurityGroupEgressRequest$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. For the ICMP type number, use -1 to specify all ICMP types.

        ", "AuthorizeSecurityGroupEgressRequest$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP code number. For the ICMP code number, use -1 to specify all ICMP codes for the ICMP type.

        ", "AuthorizeSecurityGroupIngressRequest$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. For the ICMP type number, use -1 to specify all ICMP types.

        ", "AuthorizeSecurityGroupIngressRequest$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP code number. For the ICMP code number, use -1 to specify all ICMP codes for the ICMP type.

        ", "CreateCustomerGatewayRequest$BgpAsn": "

        For devices that support BGP, the customer gateway's BGP ASN.

        Default: 65000

        ", "CreateNetworkAclEntryRequest$RuleNumber": "

        The rule number for the entry (for example, 100). ACL entries are processed in ascending order by rule number.

        Constraints: Positive integer from 1 to 32766

        ", "CreateNetworkInterfaceRequest$SecondaryPrivateIpAddressCount": "

        The number of secondary private IP addresses to assign to a network interface. When you specify a number of secondary IP addresses, Amazon EC2 selects these IP addresses within the subnet range. You can't specify this option and specify more than one private IP address using privateIpAddresses.

        The number of IP addresses you can assign to a network interface varies by instance type. For more information, see Private IP Addresses Per ENI Per Instance Type in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateReservedInstancesListingRequest$InstanceCount": "

        The number of instances that are a part of a Reserved Instance account to be listed in the Reserved Instance Marketplace. This number should be less than or equal to the instance count associated with the Reserved Instance ID specified in this call.

        ", "CreateVolumeRequest$Size": "

        The size of the volume, in GiBs.

        Constraints: 1-1024 for standard volumes, 1-16384 for gp2 volumes, and 4-16384 for io1 volumes. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size.

        Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

        ", "CreateVolumeRequest$Iops": "

        Only valid for Provisioned IOPS (SSD) volumes. The number of I/O operations per second (IOPS) to provision for the volume, with a maximum ratio of 30 IOPS/GiB.

        Constraint: Range is 100 to 20000 for Provisioned IOPS (SSD) volumes

        ", "DeleteNetworkAclEntryRequest$RuleNumber": "

        The rule number of the entry to delete.

        ", "DescribeClassicLinkInstancesRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. You cannot specify this parameter and the instance IDs parameter in the same request.

        Constraint: If the value is greater than 1000, we return only 1000 items.

        ", "DescribeFlowLogsRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. You cannot specify this parameter and the flow log IDs parameter in the same request.

        ", "DescribeImportImageTasksRequest$MaxResults": "

        The maximum number of results to return in a single request.

        ", "DescribeImportSnapshotTasksRequest$MaxResults": "

        The maximum number of results to return in a single request.

        ", "DescribeInstanceStatusRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. You cannot specify this parameter and the instance IDs parameter in the same request.

        ", "DescribeInstancesRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. You cannot specify this parameter and the instance IDs parameter in the same request.

        ", "DescribeMovingAddressesRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value outside of this range, an error is returned.

        Default: If no value is provided, the default is 1000.

        ", "DescribePrefixListsRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        Constraint: If the value specified is greater than 1000, we return only 1000 items.

        ", "DescribeReservedInstancesOfferingsRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. The maximum is 100.

        Default: 100

        ", "DescribeReservedInstancesOfferingsRequest$MaxInstanceCount": "

        The maximum number of instances to filter when searching for offerings.

        Default: 20

        ", "DescribeSnapshotsRequest$MaxResults": "

        The maximum number of snapshot results returned by DescribeSnapshots in paginated output. When this parameter is used, DescribeSnapshots only returns MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another DescribeSnapshots request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. If this parameter is not used, then DescribeSnapshots returns all results. You cannot specify this parameter and the snapshot IDs parameter in the same request.

        ", "DescribeSpotFleetInstancesRequest$MaxResults": "

        The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeSpotFleetRequestHistoryRequest$MaxResults": "

        The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeSpotFleetRequestsRequest$MaxResults": "

        The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeSpotPriceHistoryRequest$MaxResults": "

        The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeTagsRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned.

        ", "DescribeVolumeStatusRequest$MaxResults": "

        The maximum number of volume results returned by DescribeVolumeStatus in paginated output. When this parameter is used, the request only returns MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. If this parameter is not used, then DescribeVolumeStatus returns all results. You cannot specify this parameter and the volume IDs parameter in the same request.

        ", "DescribeVolumesRequest$MaxResults": "

        The maximum number of volume results returned by DescribeVolumes in paginated output. When this parameter is used, DescribeVolumes only returns MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another DescribeVolumes request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. If this parameter is not used, then DescribeVolumes returns all results. You cannot specify this parameter and the volume IDs parameter in the same request.

        ", "DescribeVpcEndpointServicesRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        Constraint: If the value is greater than 1000, we return only 1000 items.

        ", "DescribeVpcEndpointsRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        Constraint: If the value is greater than 1000, we return only 1000 items.

        ", "EbsBlockDevice$VolumeSize": "

        The size of the volume, in GiB.

        Constraints: 1-1024 for standard volumes, 1-16384 for gp2 volumes, and 4-16384 for io1 volumes. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size.

        Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

        ", "EbsBlockDevice$Iops": "

        The number of I/O operations per second (IOPS) that the volume supports. For Provisioned IOPS (SSD) volumes, this represents the number of IOPS that are provisioned for the volume. For General Purpose (SSD) volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information on General Purpose (SSD) baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

        Constraint: Range is 100 to 20000 for Provisioned IOPS (SSD) volumes and 3 to 10000 for General Purpose (SSD) volumes.

        Condition: This parameter is required for requests to create io1 volumes; it is not used in requests to create standard or gp2 volumes.

        ", "IcmpTypeCode$Type": "

        The ICMP code. A value of -1 means all codes for the specified ICMP type.

        ", "IcmpTypeCode$Code": "

        The ICMP type. A value of -1 means all types.

        ", "Instance$AmiLaunchIndex": "

        The AMI launch index, which can be used to find this instance in the launch group.

        ", "InstanceCount$InstanceCount": "

        The number of listed Reserved Instances in the state specified by the state.

        ", "InstanceNetworkInterfaceAttachment$DeviceIndex": "

        The index of the device on the instance for the network interface attachment.

        ", "InstanceNetworkInterfaceSpecification$DeviceIndex": "

        The index of the device on the instance for the network interface attachment. If you are specifying a network interface in a RunInstances request, you must provide the device index.

        ", "InstanceNetworkInterfaceSpecification$SecondaryPrivateIpAddressCount": "

        The number of secondary private IP addresses. You can't specify this option and specify more than one private IP address using the private IP addresses option.

        ", "InstanceState$Code": "

        The low byte represents the state. The high byte is an opaque internal value and should be ignored.

        • 0 : pending

        • 16 : running

        • 32 : shutting-down

        • 48 : terminated

        • 64 : stopping

        • 80 : stopped

        ", "IpPermission$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. A value of -1 indicates all ICMP types.

        ", "IpPermission$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP code. A value of -1 indicates all ICMP codes for the specified ICMP type.

        ", "NetworkAclEntry$RuleNumber": "

        The rule number for the entry. ACL entries are processed in ascending order by rule number.

        ", "NetworkInterfaceAttachment$DeviceIndex": "

        The device index of the network interface attachment on the instance.

        ", "PortRange$From": "

        The first port in the range.

        ", "PortRange$To": "

        The last port in the range.

        ", "PricingDetail$Count": "

        The number of instances available for the price.

        ", "PurchaseReservedInstancesOfferingRequest$InstanceCount": "

        The number of Reserved Instances to purchase.

        ", "ReplaceNetworkAclEntryRequest$RuleNumber": "

        The rule number of the entry to replace.

        ", "RequestSpotInstancesRequest$InstanceCount": "

        The maximum number of Spot instances to launch.

        Default: 1

        ", "ReservedInstances$InstanceCount": "

        The number of Reserved Instances purchased.

        ", "ReservedInstancesConfiguration$InstanceCount": "

        The number of modified Reserved Instances.

        ", "RevokeSecurityGroupEgressRequest$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. For the ICMP type number, use -1 to specify all ICMP types.

        ", "RevokeSecurityGroupEgressRequest$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP code number. For the ICMP code number, use -1 to specify all ICMP codes for the ICMP type.

        ", "RevokeSecurityGroupIngressRequest$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. For the ICMP type number, use -1 to specify all ICMP types.

        ", "RevokeSecurityGroupIngressRequest$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP code number. For the ICMP code number, use -1 to specify all ICMP codes for the ICMP type.

        ", "RunInstancesRequest$MinCount": "

        The minimum number of instances to launch. If you specify a minimum that is more instances than Amazon EC2 can launch in the target Availability Zone, Amazon EC2 launches no instances.

        Constraints: Between 1 and the maximum number you're allowed for the specified instance type. For more information about the default limits, and how to request an increase, see How many instances can I run in Amazon EC2 in the Amazon EC2 General FAQ.

        ", "RunInstancesRequest$MaxCount": "

        The maximum number of instances to launch. If you specify more instances than Amazon EC2 can launch in the target Availability Zone, Amazon EC2 launches the largest possible number of instances above MinCount.

        Constraints: Between 1 and the maximum number you're allowed for the specified instance type. For more information about the default limits, and how to request an increase, see How many instances can I run in Amazon EC2 in the Amazon EC2 General FAQ.

        ", "Snapshot$VolumeSize": "

        The size of the volume, in GiB.

        ", "SpotFleetRequestConfigData$TargetCapacity": "

        The number of units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O.

        ", "Subnet$AvailableIpAddressCount": "

        The number of unused IP addresses in the subnet. Note that the IP addresses for any stopped instances are considered unavailable.

        ", "VgwTelemetry$AcceptedRouteCount": "

        The number of accepted routes.

        ", "Volume$Size": "

        The size of the volume, in GiBs.

        ", "Volume$Iops": "

        The number of I/O operations per second (IOPS) that the volume supports. For Provisioned IOPS (SSD) volumes, this represents the number of IOPS that are provisioned for the volume. For General Purpose (SSD) volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information on General Purpose (SSD) baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

        Constraint: Range is 100 to 20000 for Provisioned IOPS (SSD) volumes and 3 to 10000 for General Purpose (SSD) volumes.

        Condition: This parameter is required for requests to create io1 volumes; it is not used in requests to create standard or gp2 volumes.

        " } }, "InternetGateway": { "base": "

        Describes an Internet gateway.

        ", "refs": { "CreateInternetGatewayResult$InternetGateway": "

        Information about the Internet gateway.

        ", "InternetGatewayList$member": null } }, "InternetGatewayAttachment": { "base": "

        Describes the attachment of a VPC to an Internet gateway.

        ", "refs": { "InternetGatewayAttachmentList$member": null } }, "InternetGatewayAttachmentList": { "base": null, "refs": { "InternetGateway$Attachments": "

        Any VPCs attached to the Internet gateway.

        " } }, "InternetGatewayList": { "base": null, "refs": { "DescribeInternetGatewaysResult$InternetGateways": "

        Information about one or more Internet gateways.

        " } }, "IpPermission": { "base": "

        Describes a security group rule.

        ", "refs": { "IpPermissionList$member": null } }, "IpPermissionList": { "base": null, "refs": { "AuthorizeSecurityGroupEgressRequest$IpPermissions": "

        A set of IP permissions. You can't specify a destination security group and a CIDR IP address range.

        ", "AuthorizeSecurityGroupIngressRequest$IpPermissions": "

        A set of IP permissions. Can be used to specify multiple rules in a single command.

        ", "RevokeSecurityGroupEgressRequest$IpPermissions": "

        A set of IP permissions. You can't specify a destination security group and a CIDR IP address range.

        ", "RevokeSecurityGroupIngressRequest$IpPermissions": "

        A set of IP permissions. You can't specify a source security group and a CIDR IP address range.

        ", "SecurityGroup$IpPermissions": "

        One or more inbound rules associated with the security group.

        ", "SecurityGroup$IpPermissionsEgress": "

        [EC2-VPC] One or more outbound rules associated with the security group.

        " } }, "IpRange": { "base": "

        Describes an IP range.

        ", "refs": { "IpRangeList$member": null } }, "IpRangeList": { "base": null, "refs": { "IpPermission$IpRanges": "

        One or more IP ranges.

        " } }, "KeyNameStringList": { "base": null, "refs": { "DescribeKeyPairsRequest$KeyNames": "

        One or more key pair names.

        Default: Describes all your key pairs.

        " } }, "KeyPair": { "base": "

        Describes a key pair.

        ", "refs": { } }, "KeyPairInfo": { "base": "

        Describes a key pair.

        ", "refs": { "KeyPairList$member": null } }, "KeyPairList": { "base": null, "refs": { "DescribeKeyPairsResult$KeyPairs": "

        Information about one or more key pairs.

        " } }, "LaunchPermission": { "base": "

        Describes a launch permission.

        ", "refs": { "LaunchPermissionList$member": null } }, "LaunchPermissionList": { "base": null, "refs": { "ImageAttribute$LaunchPermissions": "

        One or more launch permissions.

        ", "LaunchPermissionModifications$Add": "

        The AWS account ID to add to the list of launch permissions for the AMI.

        ", "LaunchPermissionModifications$Remove": "

        The AWS account ID to remove from the list of launch permissions for the AMI.

        " } }, "LaunchPermissionModifications": { "base": "

        Describes a launch permission modification.

        ", "refs": { "ModifyImageAttributeRequest$LaunchPermission": "

        A launch permission modification.

        " } }, "LaunchSpecification": { "base": "

        Describes the launch specification for an instance.

        ", "refs": { "SpotInstanceRequest$LaunchSpecification": "

        Additional information for launching instances.

        " } }, "LaunchSpecsList": { "base": null, "refs": { "SpotFleetRequestConfigData$LaunchSpecifications": "

        Information about the launch specifications for the Spot fleet request.

        " } }, "ListingState": { "base": null, "refs": { "InstanceCount$State": "

        The states of the listed Reserved Instances.

        " } }, "ListingStatus": { "base": null, "refs": { "ReservedInstancesListing$Status": "

        The status of the Reserved Instance listing.

        " } }, "Long": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$MinDuration": "

        The minimum duration (in seconds) to filter when searching for offerings.

        Default: 2592000 (1 month)

        ", "DescribeReservedInstancesOfferingsRequest$MaxDuration": "

        The maximum duration (in seconds) to filter when searching for offerings.

        Default: 94608000 (3 years)

        ", "DiskImageDescription$Size": "

        The size of the disk image, in GiB.

        ", "DiskImageDetail$Bytes": "

        The size of the disk image, in GiB.

        ", "DiskImageVolumeDescription$Size": "

        The size of the volume, in GiB.

        ", "ImportInstanceVolumeDetailItem$BytesConverted": "

        The number of bytes converted so far.

        ", "ImportVolumeTaskDetails$BytesConverted": "

        The number of bytes converted so far.

        ", "PriceSchedule$Term": "

        The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.

        ", "PriceScheduleSpecification$Term": "

        The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.

        ", "ReservedInstances$Duration": "

        The duration of the Reserved Instance, in seconds.

        ", "ReservedInstancesOffering$Duration": "

        The duration of the Reserved Instance, in seconds.

        ", "VolumeDetail$Size": "

        The size of the volume, in GiB.

        " } }, "ModifyImageAttributeRequest": { "base": null, "refs": { } }, "ModifyInstanceAttributeRequest": { "base": null, "refs": { } }, "ModifyNetworkInterfaceAttributeRequest": { "base": null, "refs": { } }, "ModifyReservedInstancesRequest": { "base": null, "refs": { } }, "ModifyReservedInstancesResult": { "base": null, "refs": { } }, "ModifySnapshotAttributeRequest": { "base": null, "refs": { } }, "ModifySubnetAttributeRequest": { "base": null, "refs": { } }, "ModifyVolumeAttributeRequest": { "base": null, "refs": { } }, "ModifyVpcAttributeRequest": { "base": null, "refs": { } }, "ModifyVpcEndpointRequest": { "base": null, "refs": { } }, "ModifyVpcEndpointResult": { "base": null, "refs": { } }, "MonitorInstancesRequest": { "base": null, "refs": { } }, "MonitorInstancesResult": { "base": null, "refs": { } }, "Monitoring": { "base": "

        Describes the monitoring for the instance.

        ", "refs": { "Instance$Monitoring": "

        The monitoring information for the instance.

        ", "InstanceMonitoring$Monitoring": "

        The monitoring information.

        " } }, "MonitoringState": { "base": null, "refs": { "Monitoring$State": "

        Indicates whether monitoring is enabled for the instance.

        " } }, "MoveAddressToVpcRequest": { "base": null, "refs": { } }, "MoveAddressToVpcResult": { "base": null, "refs": { } }, "MoveStatus": { "base": null, "refs": { "MovingAddressStatus$MoveStatus": "

        The status of the Elastic IP address that's being moved to the EC2-VPC platform, or restored to the EC2-Classic platform.

        " } }, "MovingAddressStatus": { "base": "

        Describes the status of a moving Elastic IP address.

        ", "refs": { "MovingAddressStatusSet$member": null } }, "MovingAddressStatusSet": { "base": null, "refs": { "DescribeMovingAddressesResult$MovingAddressStatuses": "

        The status for each Elastic IP address.

        " } }, "NetworkAcl": { "base": "

        Describes a network ACL.

        ", "refs": { "CreateNetworkAclResult$NetworkAcl": "

        Information about the network ACL.

        ", "NetworkAclList$member": null } }, "NetworkAclAssociation": { "base": "

        Describes an association between a network ACL and a subnet.

        ", "refs": { "NetworkAclAssociationList$member": null } }, "NetworkAclAssociationList": { "base": null, "refs": { "NetworkAcl$Associations": "

        Any associations between the network ACL and one or more subnets

        " } }, "NetworkAclEntry": { "base": "

        Describes an entry in a network ACL.

        ", "refs": { "NetworkAclEntryList$member": null } }, "NetworkAclEntryList": { "base": null, "refs": { "NetworkAcl$Entries": "

        One or more entries (rules) in the network ACL.

        " } }, "NetworkAclList": { "base": null, "refs": { "DescribeNetworkAclsResult$NetworkAcls": "

        Information about one or more network ACLs.

        " } }, "NetworkInterface": { "base": "

        Describes a network interface.

        ", "refs": { "CreateNetworkInterfaceResult$NetworkInterface": "

        Information about the network interface.

        ", "NetworkInterfaceList$member": null } }, "NetworkInterfaceAssociation": { "base": "

        Describes association information for an Elastic IP address.

        ", "refs": { "NetworkInterface$Association": "

        The association information for an Elastic IP associated with the network interface.

        ", "NetworkInterfacePrivateIpAddress$Association": "

        The association information for an Elastic IP address associated with the network interface.

        " } }, "NetworkInterfaceAttachment": { "base": "

        Describes a network interface attachment.

        ", "refs": { "DescribeNetworkInterfaceAttributeResult$Attachment": "

        The attachment (if any) of the network interface.

        ", "NetworkInterface$Attachment": "

        The network interface attachment.

        " } }, "NetworkInterfaceAttachmentChanges": { "base": "

        Describes an attachment change.

        ", "refs": { "ModifyNetworkInterfaceAttributeRequest$Attachment": "

        Information about the interface attachment. If modifying the 'delete on termination' attribute, you must specify the ID of the interface attachment.

        " } }, "NetworkInterfaceAttribute": { "base": null, "refs": { "DescribeNetworkInterfaceAttributeRequest$Attribute": "

        The attribute of the network interface.

        " } }, "NetworkInterfaceIdList": { "base": null, "refs": { "DescribeNetworkInterfacesRequest$NetworkInterfaceIds": "

        One or more network interface IDs.

        Default: Describes all your network interfaces.

        " } }, "NetworkInterfaceList": { "base": null, "refs": { "DescribeNetworkInterfacesResult$NetworkInterfaces": "

        Information about one or more network interfaces.

        " } }, "NetworkInterfacePrivateIpAddress": { "base": "

        Describes the private IP address of a network interface.

        ", "refs": { "NetworkInterfacePrivateIpAddressList$member": null } }, "NetworkInterfacePrivateIpAddressList": { "base": null, "refs": { "NetworkInterface$PrivateIpAddresses": "

        The private IP addresses associated with the network interface.

        " } }, "NetworkInterfaceStatus": { "base": null, "refs": { "InstanceNetworkInterface$Status": "

        The status of the network interface.

        ", "NetworkInterface$Status": "

        The status of the network interface.

        " } }, "OfferingTypeValues": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$OfferingType": "

        The Reserved Instance offering type. If you are using tools that predate the 2011-11-01 API version, you only have access to the Medium Utilization Reserved Instance offering type.

        ", "DescribeReservedInstancesRequest$OfferingType": "

        The Reserved Instance offering type. If you are using tools that predate the 2011-11-01 API version, you only have access to the Medium Utilization Reserved Instance offering type.

        ", "ReservedInstances$OfferingType": "

        The Reserved Instance offering type.

        ", "ReservedInstancesOffering$OfferingType": "

        The Reserved Instance offering type.

        " } }, "OperationType": { "base": null, "refs": { "ModifyImageAttributeRequest$OperationType": "

        The operation type.

        ", "ModifySnapshotAttributeRequest$OperationType": "

        The type of operation to perform to the attribute.

        " } }, "OwnerStringList": { "base": null, "refs": { "DescribeImagesRequest$Owners": "

        Filters the images by the owner. Specify an AWS account ID, amazon (owner is Amazon), aws-marketplace (owner is AWS Marketplace), self (owner is the sender of the request). Omitting this option returns all images for which you have launch permissions, regardless of ownership.

        ", "DescribeSnapshotsRequest$OwnerIds": "

        Returns the snapshots owned by the specified owner. Multiple owners can be specified.

        " } }, "PermissionGroup": { "base": null, "refs": { "CreateVolumePermission$Group": "

        The specific group that is to be added or removed from a volume's list of create volume permissions.

        ", "LaunchPermission$Group": "

        The name of the group.

        " } }, "Placement": { "base": "

        Describes the placement for the instance.

        ", "refs": { "ImportInstanceLaunchSpecification$Placement": "

        The placement information for the instance.

        ", "Instance$Placement": "

        The location where the instance launched.

        ", "RunInstancesRequest$Placement": "

        The placement for the instance.

        " } }, "PlacementGroup": { "base": "

        Describes a placement group.

        ", "refs": { "PlacementGroupList$member": null } }, "PlacementGroupList": { "base": null, "refs": { "DescribePlacementGroupsResult$PlacementGroups": "

        One or more placement groups.

        " } }, "PlacementGroupState": { "base": null, "refs": { "PlacementGroup$State": "

        The state of the placement group.

        " } }, "PlacementGroupStringList": { "base": null, "refs": { "DescribePlacementGroupsRequest$GroupNames": "

        One or more placement group names.

        Default: Describes all your placement groups, or only those otherwise specified.

        " } }, "PlacementStrategy": { "base": null, "refs": { "CreatePlacementGroupRequest$Strategy": "

        The placement strategy.

        ", "PlacementGroup$Strategy": "

        The placement strategy.

        " } }, "PlatformValues": { "base": null, "refs": { "Image$Platform": "

        The value is Windows for Windows AMIs; otherwise blank.

        ", "ImportInstanceRequest$Platform": "

        The instance operating system.

        ", "ImportInstanceTaskDetails$Platform": "

        The instance operating system.

        ", "Instance$Platform": "

        The value is Windows for Windows instances; otherwise blank.

        " } }, "PortRange": { "base": "

        Describes a range of ports.

        ", "refs": { "CreateNetworkAclEntryRequest$PortRange": "

        TCP or UDP protocols: The range of ports the rule applies to.

        ", "NetworkAclEntry$PortRange": "

        TCP or UDP protocols: The range of ports the rule applies to.

        ", "ReplaceNetworkAclEntryRequest$PortRange": "

        TCP or UDP protocols: The range of ports the rule applies to. Required if specifying 6 (TCP) or 17 (UDP) for the protocol.

        " } }, "PrefixList": { "base": "

        Describes prefixes for AWS services.

        ", "refs": { "PrefixListSet$member": null } }, "PrefixListId": { "base": "

        The ID of the prefix.

        ", "refs": { "PrefixListIdList$member": null } }, "PrefixListIdList": { "base": null, "refs": { "IpPermission$PrefixListIds": "

        (Valid for AuthorizeSecurityGroupEgress, RevokeSecurityGroupEgress and DescribeSecurityGroups only) One or more prefix list IDs for an AWS service. In an AuthorizeSecurityGroupEgress request, this is the AWS service that you want to access through a VPC endpoint from instances associated with the security group.

        " } }, "PrefixListSet": { "base": null, "refs": { "DescribePrefixListsResult$PrefixLists": "

        All available prefix lists.

        " } }, "PriceSchedule": { "base": "

        Describes the price for a Reserved Instance.

        ", "refs": { "PriceScheduleList$member": null } }, "PriceScheduleList": { "base": null, "refs": { "ReservedInstancesListing$PriceSchedules": "

        The price of the Reserved Instance listing.

        " } }, "PriceScheduleSpecification": { "base": "

        Describes the price for a Reserved Instance.

        ", "refs": { "PriceScheduleSpecificationList$member": null } }, "PriceScheduleSpecificationList": { "base": null, "refs": { "CreateReservedInstancesListingRequest$PriceSchedules": "

        A list specifying the price of the Reserved Instance for each month remaining in the Reserved Instance term.

        " } }, "PricingDetail": { "base": "

        Describes a Reserved Instance offering.

        ", "refs": { "PricingDetailsList$member": null } }, "PricingDetailsList": { "base": null, "refs": { "ReservedInstancesOffering$PricingDetails": "

        The pricing details of the Reserved Instance offering.

        " } }, "PrivateIpAddressSpecification": { "base": "

        Describes a secondary private IP address for a network interface.

        ", "refs": { "PrivateIpAddressSpecificationList$member": null } }, "PrivateIpAddressSpecificationList": { "base": null, "refs": { "CreateNetworkInterfaceRequest$PrivateIpAddresses": "

        One or more private IP addresses.

        ", "InstanceNetworkInterfaceSpecification$PrivateIpAddresses": "

        One or more private IP addresses to assign to the network interface. Only one private IP address can be designated as primary.

        " } }, "PrivateIpAddressStringList": { "base": null, "refs": { "AssignPrivateIpAddressesRequest$PrivateIpAddresses": "

        One or more IP addresses to be assigned as a secondary private IP address to the network interface. You can't specify this parameter when also specifying a number of secondary IP addresses.

        If you don't specify an IP address, Amazon EC2 automatically selects an IP address within the subnet range.

        ", "UnassignPrivateIpAddressesRequest$PrivateIpAddresses": "

        The secondary private IP addresses to unassign from the network interface. You can specify this option multiple times to unassign more than one IP address.

        " } }, "ProductCode": { "base": "

        Describes a product code.

        ", "refs": { "ProductCodeList$member": null } }, "ProductCodeList": { "base": null, "refs": { "DescribeSnapshotAttributeResult$ProductCodes": "

        A list of product codes.

        ", "DescribeVolumeAttributeResult$ProductCodes": "

        A list of product codes.

        ", "Image$ProductCodes": "

        Any product codes associated with the AMI.

        ", "ImageAttribute$ProductCodes": "

        One or more product codes.

        ", "Instance$ProductCodes": "

        The product codes attached to this instance.

        ", "InstanceAttribute$ProductCodes": "

        A list of product codes.

        " } }, "ProductCodeStringList": { "base": null, "refs": { "ModifyImageAttributeRequest$ProductCodes": "

        One or more product codes. After you add a product code to an AMI, it can't be removed. This is only valid when modifying the productCodes attribute.

        " } }, "ProductCodeValues": { "base": null, "refs": { "ProductCode$ProductCodeType": "

        The type of product code.

        " } }, "ProductDescriptionList": { "base": null, "refs": { "DescribeSpotPriceHistoryRequest$ProductDescriptions": "

        Filters the results by the specified basic product descriptions.

        " } }, "PropagatingVgw": { "base": "

        Describes a virtual private gateway propagating route.

        ", "refs": { "PropagatingVgwList$member": null } }, "PropagatingVgwList": { "base": null, "refs": { "RouteTable$PropagatingVgws": "

        Any virtual private gateway (VGW) propagating routes.

        " } }, "PublicIpStringList": { "base": null, "refs": { "DescribeAddressesRequest$PublicIps": "

        [EC2-Classic] One or more Elastic IP addresses.

        Default: Describes all your Elastic IP addresses.

        " } }, "PurchaseReservedInstancesOfferingRequest": { "base": null, "refs": { } }, "PurchaseReservedInstancesOfferingResult": { "base": null, "refs": { } }, "RIProductDescription": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$ProductDescription": "

        The Reserved Instance product platform description. Instances that include (Amazon VPC) in the description are for use with Amazon VPC.

        ", "ReservedInstances$ProductDescription": "

        The Reserved Instance product platform description.

        ", "ReservedInstancesOffering$ProductDescription": "

        The Reserved Instance product platform description.

        ", "SpotInstanceRequest$ProductDescription": "

        The product description associated with the Spot instance.

        ", "SpotPrice$ProductDescription": "

        A general description of the AMI.

        " } }, "ReasonCodesList": { "base": null, "refs": { "ReportInstanceStatusRequest$ReasonCodes": "

        One or more reason codes that describes the health state of your instance.

        • instance-stuck-in-state: My instance is stuck in a state.

        • unresponsive: My instance is unresponsive.

        • not-accepting-credentials: My instance is not accepting my credentials.

        • password-not-available: A password is not available for my instance.

        • performance-network: My instance is experiencing performance problems which I believe are network related.

        • performance-instance-store: My instance is experiencing performance problems which I believe are related to the instance stores.

        • performance-ebs-volume: My instance is experiencing performance problems which I believe are related to an EBS volume.

        • performance-other: My instance is experiencing performance problems.

        • other: [explain using the description parameter]

        " } }, "RebootInstancesRequest": { "base": null, "refs": { } }, "RecurringCharge": { "base": "

        Describes a recurring charge.

        ", "refs": { "RecurringChargesList$member": null } }, "RecurringChargeFrequency": { "base": null, "refs": { "RecurringCharge$Frequency": "

        The frequency of the recurring charge.

        " } }, "RecurringChargesList": { "base": null, "refs": { "ReservedInstances$RecurringCharges": "

        The recurring charge tag assigned to the resource.

        ", "ReservedInstancesOffering$RecurringCharges": "

        The recurring charge tag assigned to the resource.

        " } }, "Region": { "base": "

        Describes a region.

        ", "refs": { "RegionList$member": null } }, "RegionList": { "base": null, "refs": { "DescribeRegionsResult$Regions": "

        Information about one or more regions.

        " } }, "RegionNameStringList": { "base": null, "refs": { "DescribeRegionsRequest$RegionNames": "

        The names of one or more regions.

        " } }, "RegisterImageRequest": { "base": null, "refs": { } }, "RegisterImageResult": { "base": null, "refs": { } }, "RejectVpcPeeringConnectionRequest": { "base": null, "refs": { } }, "RejectVpcPeeringConnectionResult": { "base": null, "refs": { } }, "ReleaseAddressRequest": { "base": null, "refs": { } }, "ReplaceNetworkAclAssociationRequest": { "base": null, "refs": { } }, "ReplaceNetworkAclAssociationResult": { "base": null, "refs": { } }, "ReplaceNetworkAclEntryRequest": { "base": null, "refs": { } }, "ReplaceRouteRequest": { "base": null, "refs": { } }, "ReplaceRouteTableAssociationRequest": { "base": null, "refs": { } }, "ReplaceRouteTableAssociationResult": { "base": null, "refs": { } }, "ReportInstanceReasonCodes": { "base": null, "refs": { "ReasonCodesList$member": null } }, "ReportInstanceStatusRequest": { "base": null, "refs": { } }, "ReportStatusType": { "base": null, "refs": { "ReportInstanceStatusRequest$Status": "

        The status of all instances listed.

        " } }, "RequestSpotFleetRequest": { "base": "

        Contains the parameters for RequestSpotFleet.

        ", "refs": { } }, "RequestSpotFleetResponse": { "base": "

        Contains the output of RequestSpotFleet.

        ", "refs": { } }, "RequestSpotInstancesRequest": { "base": "

        Contains the parameters for RequestSpotInstances.

        ", "refs": { } }, "RequestSpotInstancesResult": { "base": "

        Contains the output of RequestSpotInstances.

        ", "refs": { } }, "Reservation": { "base": "

        Describes a reservation.

        ", "refs": { "ReservationList$member": null } }, "ReservationList": { "base": null, "refs": { "DescribeInstancesResult$Reservations": "

        One or more reservations.

        " } }, "ReservedInstanceLimitPrice": { "base": "

        Describes the limit price of a Reserved Instance offering.

        ", "refs": { "PurchaseReservedInstancesOfferingRequest$LimitPrice": "

        Specified for Reserved Instance Marketplace offerings to limit the total order and ensure that the Reserved Instances are not purchased at unexpected prices.

        " } }, "ReservedInstanceState": { "base": null, "refs": { "ReservedInstances$State": "

        The state of the Reserved Instance purchase.

        " } }, "ReservedInstances": { "base": "

        Describes a Reserved Instance.

        ", "refs": { "ReservedInstancesList$member": null } }, "ReservedInstancesConfiguration": { "base": "

        Describes the configuration settings for the modified Reserved Instances.

        ", "refs": { "ReservedInstancesConfigurationList$member": null, "ReservedInstancesModificationResult$TargetConfiguration": "

        The target Reserved Instances configurations supplied as part of the modification request.

        " } }, "ReservedInstancesConfigurationList": { "base": null, "refs": { "ModifyReservedInstancesRequest$TargetConfigurations": "

        The configuration settings for the Reserved Instances to modify.

        " } }, "ReservedInstancesId": { "base": "

        Describes the ID of a Reserved Instance.

        ", "refs": { "ReservedIntancesIds$member": null } }, "ReservedInstancesIdStringList": { "base": null, "refs": { "DescribeReservedInstancesRequest$ReservedInstancesIds": "

        One or more Reserved Instance IDs.

        Default: Describes all your Reserved Instances, or only those otherwise specified.

        ", "ModifyReservedInstancesRequest$ReservedInstancesIds": "

        The IDs of the Reserved Instances to modify.

        " } }, "ReservedInstancesList": { "base": null, "refs": { "DescribeReservedInstancesResult$ReservedInstances": "

        A list of Reserved Instances.

        " } }, "ReservedInstancesListing": { "base": "

        Describes a Reserved Instance listing.

        ", "refs": { "ReservedInstancesListingList$member": null } }, "ReservedInstancesListingList": { "base": null, "refs": { "CancelReservedInstancesListingResult$ReservedInstancesListings": "

        The Reserved Instance listing.

        ", "CreateReservedInstancesListingResult$ReservedInstancesListings": "

        Information about the Reserved Instances listing.

        ", "DescribeReservedInstancesListingsResult$ReservedInstancesListings": "

        Information about the Reserved Instance listing.

        " } }, "ReservedInstancesModification": { "base": "

        Describes a Reserved Instance modification.

        ", "refs": { "ReservedInstancesModificationList$member": null } }, "ReservedInstancesModificationIdStringList": { "base": null, "refs": { "DescribeReservedInstancesModificationsRequest$ReservedInstancesModificationIds": "

        IDs for the submitted modification request.

        " } }, "ReservedInstancesModificationList": { "base": null, "refs": { "DescribeReservedInstancesModificationsResult$ReservedInstancesModifications": "

        The Reserved Instance modification information.

        " } }, "ReservedInstancesModificationResult": { "base": null, "refs": { "ReservedInstancesModificationResultList$member": null } }, "ReservedInstancesModificationResultList": { "base": null, "refs": { "ReservedInstancesModification$ModificationResults": "

        Contains target configurations along with their corresponding new Reserved Instance IDs.

        " } }, "ReservedInstancesOffering": { "base": "

        Describes a Reserved Instance offering.

        ", "refs": { "ReservedInstancesOfferingList$member": null } }, "ReservedInstancesOfferingIdStringList": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$ReservedInstancesOfferingIds": "

        One or more Reserved Instances offering IDs.

        " } }, "ReservedInstancesOfferingList": { "base": null, "refs": { "DescribeReservedInstancesOfferingsResult$ReservedInstancesOfferings": "

        A list of Reserved Instances offerings.

        " } }, "ReservedIntancesIds": { "base": null, "refs": { "ReservedInstancesModification$ReservedInstancesIds": "

        The IDs of one or more Reserved Instances.

        " } }, "ResetImageAttributeName": { "base": null, "refs": { "ResetImageAttributeRequest$Attribute": "

        The attribute to reset (currently you can only reset the launch permission attribute).

        " } }, "ResetImageAttributeRequest": { "base": null, "refs": { } }, "ResetInstanceAttributeRequest": { "base": null, "refs": { } }, "ResetNetworkInterfaceAttributeRequest": { "base": null, "refs": { } }, "ResetSnapshotAttributeRequest": { "base": null, "refs": { } }, "ResourceIdList": { "base": null, "refs": { "CreateTagsRequest$Resources": "

        The IDs of one or more resources to tag. For example, ami-1a2b3c4d.

        ", "DeleteTagsRequest$Resources": "

        The ID of the resource. For example, ami-1a2b3c4d. You can specify more than one resource ID.

        " } }, "ResourceType": { "base": null, "refs": { "TagDescription$ResourceType": "

        The resource type.

        " } }, "RestorableByStringList": { "base": null, "refs": { "DescribeSnapshotsRequest$RestorableByUserIds": "

        One or more AWS accounts IDs that can create volumes from the snapshot.

        " } }, "RestoreAddressToClassicRequest": { "base": null, "refs": { } }, "RestoreAddressToClassicResult": { "base": null, "refs": { } }, "RevokeSecurityGroupEgressRequest": { "base": null, "refs": { } }, "RevokeSecurityGroupIngressRequest": { "base": null, "refs": { } }, "Route": { "base": "

        Describes a route in a route table.

        ", "refs": { "RouteList$member": null } }, "RouteList": { "base": null, "refs": { "RouteTable$Routes": "

        The routes in the route table.

        " } }, "RouteOrigin": { "base": null, "refs": { "Route$Origin": "

        Describes how the route was created.

        • CreateRouteTable indicates that route was automatically created when the route table was created.
        • CreateRoute indicates that the route was manually added to the route table.
        • EnableVgwRoutePropagation indicates that the route was propagated by route propagation.
        " } }, "RouteState": { "base": null, "refs": { "Route$State": "

        The state of the route. The blackhole state indicates that the route's target isn't available (for example, the specified gateway isn't attached to the VPC, or the specified NAT instance has been terminated).

        " } }, "RouteTable": { "base": "

        Describes a route table.

        ", "refs": { "CreateRouteTableResult$RouteTable": "

        Information about the route table.

        ", "RouteTableList$member": null } }, "RouteTableAssociation": { "base": "

        Describes an association between a route table and a subnet.

        ", "refs": { "RouteTableAssociationList$member": null } }, "RouteTableAssociationList": { "base": null, "refs": { "RouteTable$Associations": "

        The associations between the route table and one or more subnets.

        " } }, "RouteTableList": { "base": null, "refs": { "DescribeRouteTablesResult$RouteTables": "

        Information about one or more route tables.

        " } }, "RuleAction": { "base": null, "refs": { "CreateNetworkAclEntryRequest$RuleAction": "

        Indicates whether to allow or deny the traffic that matches the rule.

        ", "NetworkAclEntry$RuleAction": "

        Indicates whether to allow or deny the traffic that matches the rule.

        ", "ReplaceNetworkAclEntryRequest$RuleAction": "

        Indicates whether to allow or deny the traffic that matches the rule.

        " } }, "RunInstancesMonitoringEnabled": { "base": "

        Describes the monitoring for the instance.

        ", "refs": { "LaunchSpecification$Monitoring": null, "RunInstancesRequest$Monitoring": "

        The monitoring for the instance.

        ", "RequestSpotLaunchSpecification$Monitoring": null } }, "RunInstancesRequest": { "base": null, "refs": { } }, "S3Storage": { "base": "

        Describes the storage parameters for S3 and S3 buckets for an instance store-backed AMI.

        ", "refs": { "Storage$S3": "

        An Amazon S3 storage location.

        " } }, "SecurityGroup": { "base": "

        Describes a security group

        ", "refs": { "SecurityGroupList$member": null } }, "SecurityGroupIdStringList": { "base": null, "refs": { "CreateNetworkInterfaceRequest$Groups": "

        The IDs of one or more security groups.

        ", "ImportInstanceLaunchSpecification$GroupIds": "

        One or more security group IDs.

        ", "InstanceNetworkInterfaceSpecification$Groups": "

        The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.

        ", "ModifyNetworkInterfaceAttributeRequest$Groups": "

        Changes the security groups for the network interface. The new set of groups you specify replaces the current set. You must specify at least one group, even if it's just the default security group in the VPC. You must specify the ID of the security group, not the name.

        ", "RunInstancesRequest$SecurityGroupIds": "

        One or more security group IDs. You can create a security group using CreateSecurityGroup.

        Default: Amazon EC2 uses the default security group.

        " } }, "SecurityGroupList": { "base": null, "refs": { "DescribeSecurityGroupsResult$SecurityGroups": "

        Information about one or more security groups.

        " } }, "SecurityGroupStringList": { "base": null, "refs": { "ImportInstanceLaunchSpecification$GroupNames": "

        One or more security group names.

        ", "RunInstancesRequest$SecurityGroups": "

        [EC2-Classic, default VPC] One or more security group names. For a nondefault VPC, you must use security group IDs instead.

        Default: Amazon EC2 uses the default security group.

        " } }, "ShutdownBehavior": { "base": null, "refs": { "ImportInstanceLaunchSpecification$InstanceInitiatedShutdownBehavior": "

        Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

        ", "RunInstancesRequest$InstanceInitiatedShutdownBehavior": "

        Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

        Default: stop

        " } }, "Snapshot": { "base": "

        Describes a snapshot.

        ", "refs": { "SnapshotList$member": null } }, "SnapshotAttributeName": { "base": null, "refs": { "DescribeSnapshotAttributeRequest$Attribute": "

        The snapshot attribute you would like to view.

        ", "ModifySnapshotAttributeRequest$Attribute": "

        The snapshot attribute to modify.

        Only volume creation permissions may be modified at the customer level.

        ", "ResetSnapshotAttributeRequest$Attribute": "

        The attribute to reset. Currently, only the attribute for permission to create volumes can be reset.

        " } }, "SnapshotDetail": { "base": "

        Describes the snapshot created from the imported disk.

        ", "refs": { "SnapshotDetailList$member": null } }, "SnapshotDetailList": { "base": null, "refs": { "ImportImageResult$SnapshotDetails": "

        Information about the snapshots.

        ", "ImportImageTask$SnapshotDetails": "

        Information about the snapshots.

        " } }, "SnapshotDiskContainer": { "base": "

        The disk container object for the import snapshot request.

        ", "refs": { "ImportSnapshotRequest$DiskContainer": "

        Information about the disk container.

        " } }, "SnapshotIdStringList": { "base": null, "refs": { "DescribeSnapshotsRequest$SnapshotIds": "

        One or more snapshot IDs.

        Default: Describes snapshots for which you have launch permissions.

        " } }, "SnapshotList": { "base": null, "refs": { "DescribeSnapshotsResult$Snapshots": "

        Information about the snapshots.

        " } }, "SnapshotState": { "base": null, "refs": { "Snapshot$State": "

        The snapshot state.

        " } }, "SnapshotTaskDetail": { "base": "

        Details about the import snapshot task.

        ", "refs": { "ImportSnapshotResult$SnapshotTaskDetail": "

        Information about the import snapshot task.

        ", "ImportSnapshotTask$SnapshotTaskDetail": "

        Describes an import snapshot task.

        " } }, "SpotDatafeedSubscription": { "base": "

        Describes the data feed for a Spot instance.

        ", "refs": { "CreateSpotDatafeedSubscriptionResult$SpotDatafeedSubscription": "

        The Spot instance data feed subscription.

        ", "DescribeSpotDatafeedSubscriptionResult$SpotDatafeedSubscription": "

        The Spot instance data feed subscription.

        " } }, "SpotFleetLaunchSpecification": { "base": "

        Describes the launch specification for one or more Spot instances.

        ", "refs": { "LaunchSpecsList$member": null } }, "SpotFleetMonitoring": { "base": "

        Describes whether monitoring is enabled.

        ", "refs": { "SpotFleetLaunchSpecification$Monitoring": "

        Enable or disable monitoring for the instances.

        " } }, "SpotFleetRequestConfig": { "base": "

        Describes a Spot fleet request.

        ", "refs": { "SpotFleetRequestConfigSet$member": null } }, "SpotFleetRequestConfigData": { "base": "

        Describes the configuration of a Spot fleet request.

        ", "refs": { "RequestSpotFleetRequest$SpotFleetRequestConfig": "

        The configuration for the Spot fleet request.

        ", "SpotFleetRequestConfig$SpotFleetRequestConfig": "

        Information about the configuration of the Spot fleet request.

        " } }, "SpotFleetRequestConfigSet": { "base": null, "refs": { "DescribeSpotFleetRequestsResponse$SpotFleetRequestConfigs": "

        Information about the configuration of your Spot fleet.

        " } }, "SpotInstanceRequest": { "base": "

        Describe a Spot instance request.

        ", "refs": { "SpotInstanceRequestList$member": null } }, "SpotInstanceRequestIdList": { "base": null, "refs": { "CancelSpotInstanceRequestsRequest$SpotInstanceRequestIds": "

        One or more Spot instance request IDs.

        ", "DescribeSpotInstanceRequestsRequest$SpotInstanceRequestIds": "

        One or more Spot instance request IDs.

        " } }, "SpotInstanceRequestList": { "base": null, "refs": { "DescribeSpotInstanceRequestsResult$SpotInstanceRequests": "

        One or more Spot instance requests.

        ", "RequestSpotInstancesResult$SpotInstanceRequests": "

        One or more Spot instance requests.

        " } }, "SpotInstanceState": { "base": null, "refs": { "SpotInstanceRequest$State": "

        The state of the Spot instance request. Spot bid status information can help you track your Spot instance requests. For more information, see Spot Bid Status in the Amazon Elastic Compute Cloud User Guide.

        " } }, "SpotInstanceStateFault": { "base": "

        Describes a Spot instance state change.

        ", "refs": { "SpotDatafeedSubscription$Fault": "

        The fault codes for the Spot instance request, if any.

        ", "SpotInstanceRequest$Fault": "

        The fault codes for the Spot instance request, if any.

        " } }, "SpotInstanceStatus": { "base": "

        Describes the status of a Spot instance request.

        ", "refs": { "SpotInstanceRequest$Status": "

        The status code and status message describing the Spot instance request.

        " } }, "SpotInstanceType": { "base": null, "refs": { "RequestSpotInstancesRequest$Type": "

        The Spot instance request type.

        Default: one-time

        ", "SpotInstanceRequest$Type": "

        The Spot instance request type.

        " } }, "SpotPlacement": { "base": "

        Describes Spot instance placement.

        ", "refs": { "LaunchSpecification$Placement": "

        The placement information for the instance.

        ", "SpotFleetLaunchSpecification$Placement": "

        The placement information.

        ", "RequestSpotLaunchSpecification$Placement": "

        The placement information for the instance.

        " } }, "SpotPrice": { "base": "

        Describes the maximum hourly price (bid) for any Spot instance launched to fulfill the request.

        ", "refs": { "SpotPriceHistoryList$member": null } }, "SpotPriceHistoryList": { "base": null, "refs": { "DescribeSpotPriceHistoryResult$SpotPriceHistory": "

        The historical Spot prices.

        " } }, "StartInstancesRequest": { "base": null, "refs": { } }, "StartInstancesResult": { "base": null, "refs": { } }, "State": { "base": null, "refs": { "VpcEndpoint$State": "

        The state of the VPC endpoint.

        " } }, "StateReason": { "base": "

        Describes a state change.

        ", "refs": { "Image$StateReason": "

        The reason for the state change.

        ", "Instance$StateReason": "

        The reason for the most recent state transition.

        " } }, "Status": { "base": null, "refs": { "MoveAddressToVpcResult$Status": "

        The status of the move of the IP address.

        ", "RestoreAddressToClassicResult$Status": "

        The move status for the IP address.

        " } }, "StatusName": { "base": null, "refs": { "InstanceStatusDetails$Name": "

        The type of instance status.

        " } }, "StatusType": { "base": null, "refs": { "InstanceStatusDetails$Status": "

        The status.

        " } }, "StopInstancesRequest": { "base": null, "refs": { } }, "StopInstancesResult": { "base": null, "refs": { } }, "Storage": { "base": "

        Describes the storage location for an instance store-backed AMI.

        ", "refs": { "BundleInstanceRequest$Storage": "

        The bucket in which to store the AMI. You can specify a bucket that you already own or a new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone else, Amazon EC2 returns an error.

        ", "BundleTask$Storage": "

        The Amazon S3 storage locations.

        " } }, "String": { "base": null, "refs": { "AcceptVpcPeeringConnectionRequest$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "AccountAttribute$AttributeName": "

        The name of the account attribute.

        ", "AccountAttributeValue$AttributeValue": "

        The value of the attribute.

        ", "ActiveInstance$InstanceType": "

        The instance type.

        ", "ActiveInstance$InstanceId": "

        The ID of the instance.

        ", "ActiveInstance$SpotInstanceRequestId": "

        The ID of the Spot instance request.

        ", "Address$InstanceId": "

        The ID of the instance that the address is associated with (if any).

        ", "Address$PublicIp": "

        The Elastic IP address.

        ", "Address$AllocationId": "

        The ID representing the allocation of the address for use with EC2-VPC.

        ", "Address$AssociationId": "

        The ID representing the association of the address with an instance in a VPC.

        ", "Address$NetworkInterfaceId": "

        The ID of the network interface.

        ", "Address$NetworkInterfaceOwnerId": "

        The ID of the AWS account that owns the network interface.

        ", "Address$PrivateIpAddress": "

        The private IP address associated with the Elastic IP address.

        ", "AllocateAddressResult$PublicIp": "

        The Elastic IP address.

        ", "AllocateAddressResult$AllocationId": "

        [EC2-VPC] The ID that AWS assigns to represent the allocation of the Elastic IP address for use with instances in a VPC.

        ", "AllocationIdList$member": null, "AssignPrivateIpAddressesRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "AssociateAddressRequest$InstanceId": "

        The ID of the instance. This is required for EC2-Classic. For EC2-VPC, you can specify either the instance ID or the network interface ID, but not both. The operation fails if you specify an instance ID unless exactly one network interface is attached.

        ", "AssociateAddressRequest$PublicIp": "

        The Elastic IP address. This is required for EC2-Classic.

        ", "AssociateAddressRequest$AllocationId": "

        [EC2-VPC] The allocation ID. This is required for EC2-VPC.

        ", "AssociateAddressRequest$NetworkInterfaceId": "

        [EC2-VPC] The ID of the network interface. If the instance has more than one network interface, you must specify a network interface ID.

        ", "AssociateAddressRequest$PrivateIpAddress": "

        [EC2-VPC] The primary or secondary private IP address to associate with the Elastic IP address. If no private IP address is specified, the Elastic IP address is associated with the primary private IP address.

        ", "AssociateAddressResult$AssociationId": "

        [EC2-VPC] The ID that represents the association of the Elastic IP address with an instance.

        ", "AssociateDhcpOptionsRequest$DhcpOptionsId": "

        The ID of the DHCP options set, or default to associate no DHCP options with the VPC.

        ", "AssociateDhcpOptionsRequest$VpcId": "

        The ID of the VPC.

        ", "AssociateRouteTableRequest$SubnetId": "

        The ID of the subnet.

        ", "AssociateRouteTableRequest$RouteTableId": "

        The ID of the route table.

        ", "AssociateRouteTableResult$AssociationId": "

        The route table association ID (needed to disassociate the route table).

        ", "AttachClassicLinkVpcRequest$InstanceId": "

        The ID of an EC2-Classic instance to link to the ClassicLink-enabled VPC.

        ", "AttachClassicLinkVpcRequest$VpcId": "

        The ID of a ClassicLink-enabled VPC.

        ", "AttachInternetGatewayRequest$InternetGatewayId": "

        The ID of the Internet gateway.

        ", "AttachInternetGatewayRequest$VpcId": "

        The ID of the VPC.

        ", "AttachNetworkInterfaceRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "AttachNetworkInterfaceRequest$InstanceId": "

        The ID of the instance.

        ", "AttachNetworkInterfaceResult$AttachmentId": "

        The ID of the network interface attachment.

        ", "AttachVolumeRequest$VolumeId": "

        The ID of the EBS volume. The volume and instance must be within the same Availability Zone.

        ", "AttachVolumeRequest$InstanceId": "

        The ID of the instance.

        ", "AttachVolumeRequest$Device": "

        The device name to expose to the instance (for example, /dev/sdh or xvdh).

        ", "AttachVpnGatewayRequest$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "AttachVpnGatewayRequest$VpcId": "

        The ID of the VPC.

        ", "AttributeValue$Value": "

        Valid values are case-sensitive and vary by action.

        ", "AuthorizeSecurityGroupEgressRequest$GroupId": "

        The ID of the security group.

        ", "AuthorizeSecurityGroupEgressRequest$SourceSecurityGroupName": "

        The name of a destination security group. To authorize outbound access to a destination security group, we recommend that you use a set of IP permissions instead.

        ", "AuthorizeSecurityGroupEgressRequest$SourceSecurityGroupOwnerId": "

        The AWS account number for a destination security group. To authorize outbound access to a destination security group, we recommend that you use a set of IP permissions instead.

        ", "AuthorizeSecurityGroupEgressRequest$IpProtocol": "

        The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). Use -1 to specify all.

        ", "AuthorizeSecurityGroupEgressRequest$CidrIp": "

        The CIDR IP address range. You can't specify this parameter when specifying a source security group.

        ", "AuthorizeSecurityGroupIngressRequest$GroupName": "

        [EC2-Classic, default VPC] The name of the security group.

        ", "AuthorizeSecurityGroupIngressRequest$GroupId": "

        The ID of the security group. Required for a nondefault VPC.

        ", "AuthorizeSecurityGroupIngressRequest$SourceSecurityGroupName": "

        [EC2-Classic, default VPC] The name of the source security group. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the start of the port range, the IP protocol, and the end of the port range. For EC2-VPC, the source security group must be in the same VPC.

        ", "AuthorizeSecurityGroupIngressRequest$SourceSecurityGroupOwnerId": "

        [EC2-Classic, default VPC] The AWS account number for the source security group. For EC2-VPC, the source security group must be in the same VPC. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the IP protocol, the start of the port range, and the end of the port range. Creates rules that grant full ICMP, UDP, and TCP access. To create a rule with a specific IP protocol and port range, use a set of IP permissions instead.

        ", "AuthorizeSecurityGroupIngressRequest$IpProtocol": "

        The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). (VPC only) Use -1 to specify all.

        ", "AuthorizeSecurityGroupIngressRequest$CidrIp": "

        The CIDR IP address range. You can't specify this parameter when specifying a source security group.

        ", "AvailabilityZone$ZoneName": "

        The name of the Availability Zone.

        ", "AvailabilityZone$RegionName": "

        The name of the region.

        ", "AvailabilityZoneMessage$Message": "

        The message about the Availability Zone.

        ", "BlockDeviceMapping$VirtualName": "

        The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with 2 available instance store volumes can specify mappings for ephemeral0 and ephemeral1.The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.

        Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.

        ", "BlockDeviceMapping$DeviceName": "

        The device name exposed to the instance (for example, /dev/sdh or xvdh).

        ", "BlockDeviceMapping$NoDevice": "

        Suppresses the specified device included in the block device mapping of the AMI.

        ", "BundleIdStringList$member": null, "BundleInstanceRequest$InstanceId": "

        The ID of the instance to bundle.

        Type: String

        Default: None

        Required: Yes

        ", "BundleTask$InstanceId": "

        The ID of the instance associated with this bundle task.

        ", "BundleTask$BundleId": "

        The ID of the bundle task.

        ", "BundleTask$Progress": "

        The level of task completion, as a percent (for example, 20%).

        ", "BundleTaskError$Code": "

        The error code.

        ", "BundleTaskError$Message": "

        The error message.

        ", "CancelBundleTaskRequest$BundleId": "

        The ID of the bundle task.

        ", "CancelConversionRequest$ConversionTaskId": "

        The ID of the conversion task.

        ", "CancelConversionRequest$ReasonMessage": "

        The reason for canceling the conversion task.

        ", "CancelExportTaskRequest$ExportTaskId": "

        The ID of the export task. This is the ID returned by CreateInstanceExportTask.

        ", "CancelImportTaskRequest$ImportTaskId": "

        The ID of the import image or import snapshot task to be canceled.

        ", "CancelImportTaskRequest$CancelReason": "

        The reason for canceling the task.

        ", "CancelImportTaskResult$ImportTaskId": "

        The ID of the task being canceled.

        ", "CancelImportTaskResult$State": "

        The current state of the task being canceled.

        ", "CancelImportTaskResult$PreviousState": "

        The current state of the task being canceled.

        ", "CancelReservedInstancesListingRequest$ReservedInstancesListingId": "

        The ID of the Reserved Instance listing.

        ", "CancelSpotFleetRequestsError$Message": "

        The description for the error code.

        ", "CancelSpotFleetRequestsErrorItem$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "CancelSpotFleetRequestsSuccessItem$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "CancelledSpotInstanceRequest$SpotInstanceRequestId": "

        The ID of the Spot instance request.

        ", "ClassicLinkInstance$InstanceId": "

        The ID of the instance.

        ", "ClassicLinkInstance$VpcId": "

        The ID of the VPC.

        ", "ClientData$Comment": "

        A user-defined comment about the disk upload.

        ", "ConfirmProductInstanceRequest$ProductCode": "

        The product code. This must be a product code that you own.

        ", "ConfirmProductInstanceRequest$InstanceId": "

        The ID of the instance.

        ", "ConfirmProductInstanceResult$OwnerId": "

        The AWS account ID of the instance owner. This is only present if the product code is attached to the instance.

        ", "ConversionIdStringList$member": null, "ConversionTask$ConversionTaskId": "

        The ID of the conversion task.

        ", "ConversionTask$ExpirationTime": "

        The time when the task expires. If the upload isn't complete before the expiration time, we automatically cancel the task.

        ", "ConversionTask$StatusMessage": "

        The status message related to the conversion task.

        ", "CopyImageRequest$SourceRegion": "

        The name of the region that contains the AMI to copy.

        ", "CopyImageRequest$SourceImageId": "

        The ID of the AMI to copy.

        ", "CopyImageRequest$Name": "

        The name of the new AMI in the destination region.

        ", "CopyImageRequest$Description": "

        A description for the new AMI in the destination region.

        ", "CopyImageRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.

        ", "CopyImageResult$ImageId": "

        The ID of the new AMI.

        ", "CopySnapshotRequest$SourceRegion": "

        The ID of the region that contains the snapshot to be copied.

        ", "CopySnapshotRequest$SourceSnapshotId": "

        The ID of the EBS snapshot to copy.

        ", "CopySnapshotRequest$Description": "

        A description for the EBS snapshot.

        ", "CopySnapshotRequest$DestinationRegion": "

        The destination region to use in the PresignedUrl parameter of a snapshot copy operation. This parameter is only valid for specifying the destination region in a PresignedUrl parameter, where it is required.

        CopySnapshot sends the snapshot copy to the regional endpoint that you send the HTTP request to, such as ec2.us-east-1.amazonaws.com (in the AWS CLI, this is specified with the --region parameter or the default region in your AWS configuration file).

        ", "CopySnapshotRequest$PresignedUrl": "

        The pre-signed URL that facilitates copying an encrypted snapshot. This parameter is only required when copying an encrypted snapshot with the Amazon EC2 Query API; it is available as an optional parameter in all other cases. The PresignedUrl should use the snapshot source endpoint, the CopySnapshot action, and include the SourceRegion, SourceSnapshotId, and DestinationRegion parameters. The PresignedUrl must be signed using AWS Signature Version 4. Because EBS snapshots are stored in Amazon S3, the signing algorithm for this parameter uses the same logic that is described in Authenticating Requests by Using Query Parameters (AWS Signature Version 4) in the Amazon Simple Storage Service API Reference. An invalid or improperly signed PresignedUrl will cause the copy operation to fail asynchronously, and the snapshot will move to an error state.

        ", "CopySnapshotRequest$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) CMK to use when creating the snapshot copy. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used. The ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the key namespace, and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. The specified CMK must exist in the region that the snapshot is being copied to. If a KmsKeyId is specified, the Encrypted flag must also be set.

        ", "CopySnapshotResult$SnapshotId": "

        The ID of the new snapshot.

        ", "CreateCustomerGatewayRequest$PublicIp": "

        The Internet-routable IP address for the customer gateway's outside interface. The address must be static.

        ", "CreateFlowLogsRequest$LogGroupName": "

        The name of the CloudWatch log group.

        ", "CreateFlowLogsRequest$DeliverLogsPermissionArn": "

        The ARN for the IAM role that's used to post flow logs to a CloudWatch Logs log group.

        ", "CreateFlowLogsRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

        ", "CreateFlowLogsResult$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request.

        ", "CreateImageRequest$InstanceId": "

        The ID of the instance.

        ", "CreateImageRequest$Name": "

        A name for the new image.

        Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)

        ", "CreateImageRequest$Description": "

        A description for the new image.

        ", "CreateImageResult$ImageId": "

        The ID of the new AMI.

        ", "CreateInstanceExportTaskRequest$Description": "

        A description for the conversion task or the resource being exported. The maximum length is 255 bytes.

        ", "CreateInstanceExportTaskRequest$InstanceId": "

        The ID of the instance.

        ", "CreateKeyPairRequest$KeyName": "

        A unique name for the key pair.

        Constraints: Up to 255 ASCII characters

        ", "CreateNetworkAclEntryRequest$NetworkAclId": "

        The ID of the network ACL.

        ", "CreateNetworkAclEntryRequest$Protocol": "

        The protocol. A value of -1 means all protocols.

        ", "CreateNetworkAclEntryRequest$CidrBlock": "

        The network range to allow or deny, in CIDR notation (for example 172.16.0.0/24).

        ", "CreateNetworkAclRequest$VpcId": "

        The ID of the VPC.

        ", "CreateNetworkInterfaceRequest$SubnetId": "

        The ID of the subnet to associate with the network interface.

        ", "CreateNetworkInterfaceRequest$Description": "

        A description for the network interface.

        ", "CreateNetworkInterfaceRequest$PrivateIpAddress": "

        The primary private IP address of the network interface. If you don't specify an IP address, Amazon EC2 selects one for you from the subnet range. If you specify an IP address, you cannot indicate any IP addresses specified in privateIpAddresses as primary (only one IP address can be designated as primary).

        ", "CreatePlacementGroupRequest$GroupName": "

        A name for the placement group.

        Constraints: Up to 255 ASCII characters

        ", "CreateReservedInstancesListingRequest$ReservedInstancesId": "

        The ID of the active Reserved Instance.

        ", "CreateReservedInstancesListingRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure idempotency of your listings. This helps avoid duplicate listings. For more information, see Ensuring Idempotency.

        ", "CreateRouteRequest$RouteTableId": "

        The ID of the route table for the route.

        ", "CreateRouteRequest$DestinationCidrBlock": "

        The CIDR address block used for the destination match. Routing decisions are based on the most specific match.

        ", "CreateRouteRequest$GatewayId": "

        The ID of an Internet gateway or virtual private gateway attached to your VPC.

        ", "CreateRouteRequest$InstanceId": "

        The ID of a NAT instance in your VPC. The operation fails if you specify an instance ID unless exactly one network interface is attached.

        ", "CreateRouteRequest$NetworkInterfaceId": "

        The ID of a network interface.

        ", "CreateRouteRequest$VpcPeeringConnectionId": "

        The ID of a VPC peering connection.

        ", "CreateRouteTableRequest$VpcId": "

        The ID of the VPC.

        ", "CreateSecurityGroupRequest$GroupName": "

        The name of the security group.

        Constraints: Up to 255 characters in length

        Constraints for EC2-Classic: ASCII characters

        Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

        ", "CreateSecurityGroupRequest$Description": "

        A description for the security group. This is informational only.

        Constraints: Up to 255 characters in length

        Constraints for EC2-Classic: ASCII characters

        Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

        ", "CreateSecurityGroupRequest$VpcId": "

        [EC2-VPC] The ID of the VPC. Required for EC2-VPC.

        ", "CreateSecurityGroupResult$GroupId": "

        The ID of the security group.

        ", "CreateSnapshotRequest$VolumeId": "

        The ID of the EBS volume.

        ", "CreateSnapshotRequest$Description": "

        A description for the snapshot.

        ", "CreateSpotDatafeedSubscriptionRequest$Bucket": "

        The Amazon S3 bucket in which to store the Spot instance data feed.

        ", "CreateSpotDatafeedSubscriptionRequest$Prefix": "

        A prefix for the data feed file names.

        ", "CreateSubnetRequest$VpcId": "

        The ID of the VPC.

        ", "CreateSubnetRequest$CidrBlock": "

        The network range for the subnet, in CIDR notation. For example, 10.0.0.0/24.

        ", "CreateSubnetRequest$AvailabilityZone": "

        The Availability Zone for the subnet.

        Default: Amazon EC2 selects one for you (recommended).

        ", "CreateVolumePermission$UserId": "

        The specific AWS account ID that is to be added or removed from a volume's list of create volume permissions.

        ", "CreateVolumeRequest$SnapshotId": "

        The snapshot from which to create the volume.

        ", "CreateVolumeRequest$AvailabilityZone": "

        The Availability Zone in which to create the volume. Use DescribeAvailabilityZones to list the Availability Zones that are currently available to you.

        ", "CreateVolumeRequest$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use when creating the encrypted volume. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used. The ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the key namespace, and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. If a KmsKeyId is specified, the Encrypted flag must also be set.

        ", "CreateVpcEndpointRequest$VpcId": "

        The ID of the VPC in which the endpoint will be used.

        ", "CreateVpcEndpointRequest$ServiceName": "

        The AWS service name, in the form com.amazonaws.region.service. To get a list of available services, use the DescribeVpcEndpointServices request.

        ", "CreateVpcEndpointRequest$PolicyDocument": "

        A policy to attach to the endpoint that controls access to the service. The policy must be in valid JSON format. If this parameter is not specified, we attach a default policy that allows full access to the service.

        ", "CreateVpcEndpointRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

        ", "CreateVpcEndpointResult$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request.

        ", "CreateVpcPeeringConnectionRequest$VpcId": "

        The ID of the requester VPC.

        ", "CreateVpcPeeringConnectionRequest$PeerVpcId": "

        The ID of the VPC with which you are creating the VPC peering connection.

        ", "CreateVpcPeeringConnectionRequest$PeerOwnerId": "

        The AWS account ID of the owner of the peer VPC.

        Default: Your AWS account ID

        ", "CreateVpcRequest$CidrBlock": "

        The network range for the VPC, in CIDR notation. For example, 10.0.0.0/16.

        ", "CreateVpnConnectionRequest$Type": "

        The type of VPN connection (ipsec.1).

        ", "CreateVpnConnectionRequest$CustomerGatewayId": "

        The ID of the customer gateway.

        ", "CreateVpnConnectionRequest$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "CreateVpnConnectionRouteRequest$VpnConnectionId": "

        The ID of the VPN connection.

        ", "CreateVpnConnectionRouteRequest$DestinationCidrBlock": "

        The CIDR block associated with the local subnet of the customer network.

        ", "CreateVpnGatewayRequest$AvailabilityZone": "

        The Availability Zone for the virtual private gateway.

        ", "CustomerGateway$CustomerGatewayId": "

        The ID of the customer gateway.

        ", "CustomerGateway$State": "

        The current state of the customer gateway (pending | available | deleting | deleted).

        ", "CustomerGateway$Type": "

        The type of VPN connection the customer gateway supports (ipsec.1).

        ", "CustomerGateway$IpAddress": "

        The Internet-routable IP address of the customer gateway's outside interface.

        ", "CustomerGateway$BgpAsn": "

        The customer gateway's Border Gateway Protocol (BGP) Autonomous System Number (ASN).

        ", "CustomerGatewayIdStringList$member": null, "DeleteCustomerGatewayRequest$CustomerGatewayId": "

        The ID of the customer gateway.

        ", "DeleteDhcpOptionsRequest$DhcpOptionsId": "

        The ID of the DHCP options set.

        ", "DeleteInternetGatewayRequest$InternetGatewayId": "

        The ID of the Internet gateway.

        ", "DeleteKeyPairRequest$KeyName": "

        The name of the key pair.

        ", "DeleteNetworkAclEntryRequest$NetworkAclId": "

        The ID of the network ACL.

        ", "DeleteNetworkAclRequest$NetworkAclId": "

        The ID of the network ACL.

        ", "DeleteNetworkInterfaceRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "DeletePlacementGroupRequest$GroupName": "

        The name of the placement group.

        ", "DeleteRouteRequest$RouteTableId": "

        The ID of the route table.

        ", "DeleteRouteRequest$DestinationCidrBlock": "

        The CIDR range for the route. The value you specify must match the CIDR for the route exactly.

        ", "DeleteRouteTableRequest$RouteTableId": "

        The ID of the route table.

        ", "DeleteSecurityGroupRequest$GroupName": "

        [EC2-Classic, default VPC] The name of the security group. You can specify either the security group name or the security group ID.

        ", "DeleteSecurityGroupRequest$GroupId": "

        The ID of the security group. Required for a nondefault VPC.

        ", "DeleteSnapshotRequest$SnapshotId": "

        The ID of the EBS snapshot.

        ", "DeleteSubnetRequest$SubnetId": "

        The ID of the subnet.

        ", "DeleteVolumeRequest$VolumeId": "

        The ID of the volume.

        ", "DeleteVpcPeeringConnectionRequest$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "DeleteVpcRequest$VpcId": "

        The ID of the VPC.

        ", "DeleteVpnConnectionRequest$VpnConnectionId": "

        The ID of the VPN connection.

        ", "DeleteVpnConnectionRouteRequest$VpnConnectionId": "

        The ID of the VPN connection.

        ", "DeleteVpnConnectionRouteRequest$DestinationCidrBlock": "

        The CIDR block associated with the local subnet of the customer network.

        ", "DeleteVpnGatewayRequest$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "DeregisterImageRequest$ImageId": "

        The ID of the AMI.

        ", "DescribeClassicLinkInstancesRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeClassicLinkInstancesResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeFlowLogsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeFlowLogsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeImageAttributeRequest$ImageId": "

        The ID of the AMI.

        ", "DescribeImportImageTasksRequest$NextToken": "

        A token that indicates the next page of results.

        ", "DescribeImportImageTasksResult$NextToken": "

        The token to use to get the next page of results. This value is null when there are no more results to return.

        ", "DescribeImportSnapshotTasksRequest$NextToken": "

        A token that indicates the next page of results.

        ", "DescribeImportSnapshotTasksResult$NextToken": "

        The token to use to get the next page of results. This value is null when there are no more results to return.

        ", "DescribeInstanceAttributeRequest$InstanceId": "

        The ID of the instance.

        ", "DescribeInstanceStatusRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeInstanceStatusResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeInstancesRequest$NextToken": "

        The token to request the next page of results.

        ", "DescribeInstancesResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeMovingAddressesRequest$NextToken": "

        The token to use to retrieve the next page of results.

        ", "DescribeMovingAddressesResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeNetworkInterfaceAttributeRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "DescribeNetworkInterfaceAttributeResult$NetworkInterfaceId": "

        The ID of the network interface.

        ", "DescribePrefixListsRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a prior call.)

        ", "DescribePrefixListsResult$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DescribeReservedInstancesListingsRequest$ReservedInstancesId": "

        One or more Reserved Instance IDs.

        ", "DescribeReservedInstancesListingsRequest$ReservedInstancesListingId": "

        One or more Reserved Instance Listing IDs.

        ", "DescribeReservedInstancesModificationsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeReservedInstancesModificationsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeReservedInstancesOfferingsRequest$AvailabilityZone": "

        The Availability Zone in which the Reserved Instance can be used.

        ", "DescribeReservedInstancesOfferingsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeReservedInstancesOfferingsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeSnapshotAttributeRequest$SnapshotId": "

        The ID of the EBS snapshot.

        ", "DescribeSnapshotAttributeResult$SnapshotId": "

        The ID of the EBS snapshot.

        ", "DescribeSnapshotsRequest$NextToken": "

        The NextToken value returned from a previous paginated DescribeSnapshots request where MaxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the NextToken value. This value is null when there are no more results to return.

        ", "DescribeSnapshotsResult$NextToken": "

        The NextToken value to include in a future DescribeSnapshots request. When the results of a DescribeSnapshots request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeSpotFleetInstancesRequest$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "DescribeSpotFleetInstancesRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeSpotFleetInstancesResponse$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "DescribeSpotFleetInstancesResponse$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeSpotFleetRequestHistoryRequest$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "DescribeSpotFleetRequestHistoryRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeSpotFleetRequestHistoryResponse$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "DescribeSpotFleetRequestHistoryResponse$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeSpotFleetRequestsRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeSpotFleetRequestsResponse$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeSpotPriceHistoryRequest$AvailabilityZone": "

        Filters the results by the specified Availability Zone.

        ", "DescribeSpotPriceHistoryRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeSpotPriceHistoryResult$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeTagsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeTagsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return..

        ", "DescribeVolumeAttributeRequest$VolumeId": "

        The ID of the volume.

        ", "DescribeVolumeAttributeResult$VolumeId": "

        The ID of the volume.

        ", "DescribeVolumeStatusRequest$NextToken": "

        The NextToken value to include in a future DescribeVolumeStatus request. When the results of the request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeVolumeStatusResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeVolumesRequest$NextToken": "

        The NextToken value returned from a previous paginated DescribeVolumes request where MaxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the NextToken value. This value is null when there are no more results to return.

        ", "DescribeVolumesResult$NextToken": "

        The NextToken value to include in a future DescribeVolumes request. When the results of a DescribeVolumes request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeVpcAttributeRequest$VpcId": "

        The ID of the VPC.

        ", "DescribeVpcAttributeResult$VpcId": "

        The ID of the VPC.

        ", "DescribeVpcEndpointServicesRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a prior call.)

        ", "DescribeVpcEndpointServicesResult$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DescribeVpcEndpointsRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a prior call.)

        ", "DescribeVpcEndpointsResult$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DetachClassicLinkVpcRequest$InstanceId": "

        The ID of the instance to unlink from the VPC.

        ", "DetachClassicLinkVpcRequest$VpcId": "

        The ID of the VPC to which the instance is linked.

        ", "DetachInternetGatewayRequest$InternetGatewayId": "

        The ID of the Internet gateway.

        ", "DetachInternetGatewayRequest$VpcId": "

        The ID of the VPC.

        ", "DetachNetworkInterfaceRequest$AttachmentId": "

        The ID of the attachment.

        ", "DetachVolumeRequest$VolumeId": "

        The ID of the volume.

        ", "DetachVolumeRequest$InstanceId": "

        The ID of the instance.

        ", "DetachVolumeRequest$Device": "

        The device name.

        ", "DetachVpnGatewayRequest$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "DetachVpnGatewayRequest$VpcId": "

        The ID of the VPC.

        ", "DhcpConfiguration$Key": "

        The name of a DHCP option.

        ", "DhcpOptions$DhcpOptionsId": "

        The ID of the set of DHCP options.

        ", "DhcpOptionsIdStringList$member": null, "DisableVgwRoutePropagationRequest$RouteTableId": "

        The ID of the route table.

        ", "DisableVgwRoutePropagationRequest$GatewayId": "

        The ID of the virtual private gateway.

        ", "DisableVpcClassicLinkRequest$VpcId": "

        The ID of the VPC.

        ", "DisassociateAddressRequest$PublicIp": "

        [EC2-Classic] The Elastic IP address. Required for EC2-Classic.

        ", "DisassociateAddressRequest$AssociationId": "

        [EC2-VPC] The association ID. Required for EC2-VPC.

        ", "DisassociateRouteTableRequest$AssociationId": "

        The association ID representing the current association between the route table and subnet.

        ", "DiskImage$Description": "

        A description of the disk image.

        ", "DiskImageDescription$ImportManifestUrl": "

        A presigned URL for the import manifest stored in Amazon S3. For information about creating a presigned URL for an Amazon S3 object, read the \"Query String Request Authentication Alternative\" section of the Authenticating REST Requests topic in the Amazon Simple Storage Service Developer Guide.

        ", "DiskImageDescription$Checksum": "

        The checksum computed for the disk image.

        ", "DiskImageDetail$ImportManifestUrl": "

        A presigned URL for the import manifest stored in Amazon S3 and presented here as an Amazon S3 presigned URL. For information about creating a presigned URL for an Amazon S3 object, read the \"Query String Request Authentication Alternative\" section of the Authenticating REST Requests topic in the Amazon Simple Storage Service Developer Guide.

        ", "DiskImageVolumeDescription$Id": "

        The volume identifier.

        ", "EbsBlockDevice$SnapshotId": "

        The ID of the snapshot.

        ", "EbsInstanceBlockDevice$VolumeId": "

        The ID of the EBS volume.

        ", "EbsInstanceBlockDeviceSpecification$VolumeId": "

        The ID of the EBS volume.

        ", "EnableVgwRoutePropagationRequest$RouteTableId": "

        The ID of the route table.

        ", "EnableVgwRoutePropagationRequest$GatewayId": "

        The ID of the virtual private gateway.

        ", "EnableVolumeIORequest$VolumeId": "

        The ID of the volume.

        ", "EnableVpcClassicLinkRequest$VpcId": "

        The ID of the VPC.

        ", "EventInformation$InstanceId": "

        The ID of the instance. This information is available only for instanceChange events.

        ", "EventInformation$EventSubType": "

        The event.

        The following are the error events.

        • iamFleetRoleInvalid - Spot fleet did not have the required permissions either to launch or terminate an instance.

        • spotFleetRequestConfigurationInvalid - The configuration is not valid. For more information, see the description.

        • spotInstanceCountLimitExceeded - You've reached the limit on the number of Spot instances that you can launch.

        The following are the fleetRequestChange events.

        • active - The Spot fleet has been validated and Amazon EC2 is attempting to maintain the target number of running Spot instances.

        • cancelled - The Spot fleet is canceled and has no running Spot instances. The Spot fleet will be deleted two days after its instances were terminated.

        • cancelled_running - The Spot fleet is canceled and will not launch additional Spot instances, but its existing Spot instances continue to run until they are interrupted or terminated.

        • cancelled_terminating - The Spot fleet is canceled and its Spot instances are terminating.

        • expired - The Spot fleet request has expired. A subsequent event indicates that the instances were terminated, if the request was created with TerminateInstancesWithExpiration set.

        • price_update - The bid price for a launch configuration was adjusted because it was too high. This change is permanent.

        • submitted - The Spot fleet request is being evaluated and Amazon EC2 is preparing to launch the target number of Spot instances.

        The following are the instanceChange events.

        • launched - A bid was fulfilled and a new instance was launched.

        • terminated - An instance was terminated by the user.

        ", "EventInformation$EventDescription": "

        The description of the event.

        ", "ExecutableByStringList$member": null, "ExportTask$ExportTaskId": "

        The ID of the export task.

        ", "ExportTask$Description": "

        A description of the resource being exported.

        ", "ExportTask$StatusMessage": "

        The status message related to the export task.

        ", "ExportTaskIdStringList$member": null, "ExportToS3Task$S3Bucket": "

        The S3 bucket for the destination image. The destination bucket must exist and grant WRITE and READ_ACP permissions to the AWS account vm-import-export@amazon.com.

        ", "ExportToS3Task$S3Key": "

        The encryption key for your S3 bucket.

        ", "ExportToS3TaskSpecification$S3Bucket": "

        The S3 bucket for the destination image. The destination bucket must exist and grant WRITE and READ_ACP permissions to the AWS account vm-import-export@amazon.com.

        ", "ExportToS3TaskSpecification$S3Prefix": "

        The image is written to a single object in the S3 bucket at the S3 key s3prefix + exportTaskId + '.' + diskImageFormat.

        ", "Filter$Name": "

        The name of the filter. Filter names are case-sensitive.

        ", "FlowLog$FlowLogId": "

        The flow log ID.

        ", "FlowLog$FlowLogStatus": "

        The status of the flow log (ACTIVE).

        ", "FlowLog$ResourceId": "

        The ID of the resource on which the flow log was created.

        ", "FlowLog$LogGroupName": "

        The name of the flow log group.

        ", "FlowLog$DeliverLogsStatus": "

        The status of the logs delivery (SUCCESS | FAILED).

        ", "FlowLog$DeliverLogsErrorMessage": "

        Information about the error that occurred. Rate limited indicates that CloudWatch logs throttling has been applied for one or more network interfaces. Access error indicates that the IAM role associated with the flow log does not have sufficient permissions to publish to CloudWatch Logs. Unknown error indicates an internal error.

        ", "FlowLog$DeliverLogsPermissionArn": "

        The ARN of the IAM role that posts logs to CloudWatch Logs.

        ", "GetConsoleOutputRequest$InstanceId": "

        The ID of the instance.

        ", "GetConsoleOutputResult$InstanceId": "

        The ID of the instance.

        ", "GetConsoleOutputResult$Output": "

        The console output, Base64 encoded.

        ", "GetPasswordDataRequest$InstanceId": "

        The ID of the Windows instance.

        ", "GetPasswordDataResult$InstanceId": "

        The ID of the Windows instance.

        ", "GetPasswordDataResult$PasswordData": "

        The password of the instance.

        ", "GroupIdStringList$member": null, "GroupIdentifier$GroupName": "

        The name of the security group.

        ", "GroupIdentifier$GroupId": "

        The ID of the security group.

        ", "GroupNameStringList$member": null, "IamInstanceProfile$Arn": "

        The Amazon Resource Name (ARN) of the instance profile.

        ", "IamInstanceProfile$Id": "

        The ID of the instance profile.

        ", "IamInstanceProfileSpecification$Arn": "

        The Amazon Resource Name (ARN) of the instance profile.

        ", "IamInstanceProfileSpecification$Name": "

        The name of the instance profile.

        ", "Image$ImageId": "

        The ID of the AMI.

        ", "Image$ImageLocation": "

        The location of the AMI.

        ", "Image$OwnerId": "

        The AWS account ID of the image owner.

        ", "Image$CreationDate": "

        The date and time the image was created.

        ", "Image$KernelId": "

        The kernel associated with the image, if any. Only applicable for machine images.

        ", "Image$RamdiskId": "

        The RAM disk associated with the image, if any. Only applicable for machine images.

        ", "Image$SriovNetSupport": "

        Specifies whether enhanced networking is enabled.

        ", "Image$ImageOwnerAlias": "

        The AWS account alias (for example, amazon, self) or the AWS account ID of the AMI owner.

        ", "Image$Name": "

        The name of the AMI that was provided during image creation.

        ", "Image$Description": "

        The description of the AMI that was provided during image creation.

        ", "Image$RootDeviceName": "

        The device name of the root device (for example, /dev/sda1 or /dev/xvda).

        ", "ImageAttribute$ImageId": "

        The ID of the AMI.

        ", "ImageDiskContainer$Description": "

        The description of the disk image.

        ", "ImageDiskContainer$Format": "

        The format of the disk image being imported.

        Valid values: RAW | VHD | VMDK | OVA

        ", "ImageDiskContainer$Url": "

        The URL to the Amazon S3-based disk image being imported. The URL can either be a https URL (https://..) or an Amazon S3 URL (s3://..)

        ", "ImageDiskContainer$DeviceName": "

        The block device mapping for the disk.

        ", "ImageDiskContainer$SnapshotId": "

        The ID of the EBS snapshot to be used for importing the snapshot.

        ", "ImageIdStringList$member": null, "ImportImageRequest$Description": "

        A description string for the import image task.

        ", "ImportImageRequest$LicenseType": "

        The license type to be used for the Amazon Machine Image (AMI) after importing.

        Note: You may only use BYOL if you have existing licenses with rights to use these licenses in a third party cloud like AWS. For more information, see VM Import/Export Prerequisites in the Amazon Elastic Compute Cloud User Guide.

        Valid values: AWS | BYOL

        ", "ImportImageRequest$Hypervisor": "

        The target hypervisor platform.

        Valid values: xen

        ", "ImportImageRequest$Architecture": "

        The architecture of the virtual machine.

        Valid values: i386 | x86_64

        ", "ImportImageRequest$Platform": "

        The operating system of the virtual machine.

        Valid values: Windows | Linux

        ", "ImportImageRequest$ClientToken": "

        The token to enable idempotency for VM import requests.

        ", "ImportImageRequest$RoleName": "

        The name of the role to use when not using the default role, 'vmimport'.

        ", "ImportImageResult$ImportTaskId": "

        The task ID of the import image task.

        ", "ImportImageResult$Architecture": "

        The architecture of the virtual machine.

        ", "ImportImageResult$LicenseType": "

        The license type of the virtual machine.

        ", "ImportImageResult$Platform": "

        The operating system of the virtual machine.

        ", "ImportImageResult$Hypervisor": "

        The target hypervisor of the import task.

        ", "ImportImageResult$Description": "

        A description of the import task.

        ", "ImportImageResult$ImageId": "

        The ID of the Amazon Machine Image (AMI) created by the import task.

        ", "ImportImageResult$Progress": "

        The progress of the task.

        ", "ImportImageResult$StatusMessage": "

        A detailed status message of the import task.

        ", "ImportImageResult$Status": "

        A brief status of the task.

        ", "ImportImageTask$ImportTaskId": "

        The ID of the import image task.

        ", "ImportImageTask$Architecture": "

        The architecture of the virtual machine.

        Valid values: i386 | x86_64

        ", "ImportImageTask$LicenseType": "

        The license type of the virtual machine.

        ", "ImportImageTask$Platform": "

        The description string for the import image task.

        ", "ImportImageTask$Hypervisor": "

        The target hypervisor for the import task.

        Valid values: xen

        ", "ImportImageTask$Description": "

        A description of the import task.

        ", "ImportImageTask$ImageId": "

        The ID of the Amazon Machine Image (AMI) of the imported virtual machine.

        ", "ImportImageTask$Progress": "

        The percentage of progress of the import image task.

        ", "ImportImageTask$StatusMessage": "

        A descriptive status message for the import image task.

        ", "ImportImageTask$Status": "

        A brief status for the import image task.

        ", "ImportInstanceLaunchSpecification$AdditionalInfo": "

        Reserved.

        ", "ImportInstanceLaunchSpecification$SubnetId": "

        [EC2-VPC] The ID of the subnet in which to launch the instance.

        ", "ImportInstanceLaunchSpecification$PrivateIpAddress": "

        [EC2-VPC] An available IP address from the IP address range of the subnet.

        ", "ImportInstanceRequest$Description": "

        A description for the instance being imported.

        ", "ImportInstanceTaskDetails$InstanceId": "

        The ID of the instance.

        ", "ImportInstanceTaskDetails$Description": "

        A description of the task.

        ", "ImportInstanceVolumeDetailItem$AvailabilityZone": "

        The Availability Zone where the resulting instance will reside.

        ", "ImportInstanceVolumeDetailItem$Status": "

        The status of the import of this particular disk image.

        ", "ImportInstanceVolumeDetailItem$StatusMessage": "

        The status information or errors related to the disk image.

        ", "ImportInstanceVolumeDetailItem$Description": "

        A description of the task.

        ", "ImportKeyPairRequest$KeyName": "

        A unique name for the key pair.

        ", "ImportKeyPairResult$KeyName": "

        The key pair name you provided.

        ", "ImportKeyPairResult$KeyFingerprint": "

        The MD5 public key fingerprint as specified in section 4 of RFC 4716.

        ", "ImportSnapshotRequest$Description": "

        The description string for the import snapshot task.

        ", "ImportSnapshotRequest$ClientToken": "

        Token to enable idempotency for VM import requests.

        ", "ImportSnapshotRequest$RoleName": "

        The name of the role to use when not using the default role, 'vmimport'.

        ", "ImportSnapshotResult$ImportTaskId": "

        The ID of the import snapshot task.

        ", "ImportSnapshotResult$Description": "

        A description of the import snapshot task.

        ", "ImportSnapshotTask$ImportTaskId": "

        The ID of the import snapshot task.

        ", "ImportSnapshotTask$Description": "

        A description of the import snapshot task.

        ", "ImportTaskIdList$member": null, "ImportVolumeRequest$AvailabilityZone": "

        The Availability Zone for the resulting EBS volume.

        ", "ImportVolumeRequest$Description": "

        A description of the volume.

        ", "ImportVolumeTaskDetails$AvailabilityZone": "

        The Availability Zone where the resulting volume will reside.

        ", "ImportVolumeTaskDetails$Description": "

        The description you provided when starting the import volume task.

        ", "Instance$InstanceId": "

        The ID of the instance.

        ", "Instance$ImageId": "

        The ID of the AMI used to launch the instance.

        ", "Instance$PrivateDnsName": "

        The private DNS name assigned to the instance. This DNS name can only be used inside the Amazon EC2 network. This name is not available until the instance enters the running state.

        ", "Instance$PublicDnsName": "

        The public DNS name assigned to the instance. This name is not available until the instance enters the running state.

        ", "Instance$StateTransitionReason": "

        The reason for the most recent state transition. This might be an empty string.

        ", "Instance$KeyName": "

        The name of the key pair, if this instance was launched with an associated key pair.

        ", "Instance$KernelId": "

        The kernel associated with this instance.

        ", "Instance$RamdiskId": "

        The RAM disk associated with this instance.

        ", "Instance$SubnetId": "

        The ID of the subnet in which the instance is running.

        ", "Instance$VpcId": "

        The ID of the VPC in which the instance is running.

        ", "Instance$PrivateIpAddress": "

        The private IP address assigned to the instance.

        ", "Instance$PublicIpAddress": "

        The public IP address assigned to the instance.

        ", "Instance$RootDeviceName": "

        The root device name (for example, /dev/sda1 or /dev/xvda).

        ", "Instance$SpotInstanceRequestId": "

        The ID of the Spot Instance request.

        ", "Instance$ClientToken": "

        The idempotency token you provided when you launched the instance.

        ", "Instance$SriovNetSupport": "

        Specifies whether enhanced networking is enabled.

        ", "InstanceAttribute$InstanceId": "

        The ID of the instance.

        ", "InstanceBlockDeviceMapping$DeviceName": "

        The device name exposed to the instance (for example, /dev/sdh or xvdh).

        ", "InstanceBlockDeviceMappingSpecification$DeviceName": "

        The device name exposed to the instance (for example, /dev/sdh or xvdh).

        ", "InstanceBlockDeviceMappingSpecification$VirtualName": "

        The virtual device name.

        ", "InstanceBlockDeviceMappingSpecification$NoDevice": "

        suppress the specified device included in the block device mapping.

        ", "InstanceExportDetails$InstanceId": "

        The ID of the resource being exported.

        ", "InstanceIdStringList$member": null, "InstanceMonitoring$InstanceId": "

        The ID of the instance.

        ", "InstanceNetworkInterface$NetworkInterfaceId": "

        The ID of the network interface.

        ", "InstanceNetworkInterface$SubnetId": "

        The ID of the subnet.

        ", "InstanceNetworkInterface$VpcId": "

        The ID of the VPC.

        ", "InstanceNetworkInterface$Description": "

        The description.

        ", "InstanceNetworkInterface$OwnerId": "

        The ID of the AWS account that created the network interface.

        ", "InstanceNetworkInterface$MacAddress": "

        The MAC address.

        ", "InstanceNetworkInterface$PrivateIpAddress": "

        The IP address of the network interface within the subnet.

        ", "InstanceNetworkInterface$PrivateDnsName": "

        The private DNS name.

        ", "InstanceNetworkInterfaceAssociation$PublicIp": "

        The public IP address or Elastic IP address bound to the network interface.

        ", "InstanceNetworkInterfaceAssociation$PublicDnsName": "

        The public DNS name.

        ", "InstanceNetworkInterfaceAssociation$IpOwnerId": "

        The ID of the owner of the Elastic IP address.

        ", "InstanceNetworkInterfaceAttachment$AttachmentId": "

        The ID of the network interface attachment.

        ", "InstanceNetworkInterfaceSpecification$NetworkInterfaceId": "

        The ID of the network interface.

        ", "InstanceNetworkInterfaceSpecification$SubnetId": "

        The ID of the subnet associated with the network string. Applies only if creating a network interface when launching an instance.

        ", "InstanceNetworkInterfaceSpecification$Description": "

        The description of the network interface. Applies only if creating a network interface when launching an instance.

        ", "InstanceNetworkInterfaceSpecification$PrivateIpAddress": "

        The private IP address of the network interface. Applies only if creating a network interface when launching an instance.

        ", "InstancePrivateIpAddress$PrivateIpAddress": "

        The private IP address of the network interface.

        ", "InstancePrivateIpAddress$PrivateDnsName": "

        The private DNS name.

        ", "InstanceStateChange$InstanceId": "

        The ID of the instance.

        ", "InstanceStatus$InstanceId": "

        The ID of the instance.

        ", "InstanceStatus$AvailabilityZone": "

        The Availability Zone of the instance.

        ", "InstanceStatusEvent$Description": "

        A description of the event.

        After a scheduled event is completed, it can still be described for up to a week. If the event has been completed, this description starts with the following text: [Completed].

        ", "InternetGateway$InternetGatewayId": "

        The ID of the Internet gateway.

        ", "InternetGatewayAttachment$VpcId": "

        The ID of the VPC.

        ", "IpPermission$IpProtocol": "

        The protocol.

        When you call DescribeSecurityGroups, the protocol value returned is the number. Exception: For TCP, UDP, and ICMP, the value returned is the name (for example, tcp, udp, or icmp). For a list of protocol numbers, see Protocol Numbers. (VPC only) When you call AuthorizeSecurityGroupIngress, you can use -1 to specify all.

        ", "IpRange$CidrIp": "

        The CIDR range. You can either specify a CIDR range or a source security group, not both.

        ", "KeyNameStringList$member": null, "KeyPair$KeyName": "

        The name of the key pair.

        ", "KeyPair$KeyFingerprint": "

        The SHA-1 digest of the DER encoded private key.

        ", "KeyPair$KeyMaterial": "

        An unencrypted PEM encoded RSA private key.

        ", "KeyPairInfo$KeyName": "

        The name of the key pair.

        ", "KeyPairInfo$KeyFingerprint": "

        If you used CreateKeyPair to create the key pair, this is the SHA-1 digest of the DER encoded private key. If you used ImportKeyPair to provide AWS the public key, this is the MD5 public key fingerprint as specified in section 4 of RFC4716.

        ", "LaunchPermission$UserId": "

        The AWS account ID.

        ", "LaunchSpecification$ImageId": "

        The ID of the AMI.

        ", "LaunchSpecification$KeyName": "

        The name of the key pair.

        ", "LaunchSpecification$UserData": "

        The Base64-encoded MIME user data to make available to the instances.

        ", "LaunchSpecification$AddressingType": "

        Deprecated.

        ", "LaunchSpecification$KernelId": "

        The ID of the kernel.

        ", "LaunchSpecification$RamdiskId": "

        The ID of the RAM disk.

        ", "LaunchSpecification$SubnetId": "

        The ID of the subnet in which to launch the instance.

        ", "ModifyImageAttributeRequest$ImageId": "

        The ID of the AMI.

        ", "ModifyImageAttributeRequest$Attribute": "

        The name of the attribute to modify.

        ", "ModifyImageAttributeRequest$Value": "

        The value of the attribute being modified. This is only valid when modifying the description attribute.

        ", "ModifyInstanceAttributeRequest$InstanceId": "

        The ID of the instance.

        ", "ModifyInstanceAttributeRequest$Value": "

        A new value for the attribute. Use only with the kernel, ramdisk, userData, disableApiTermination, or instanceInitiatedShutdownBehavior attribute.

        ", "ModifyNetworkInterfaceAttributeRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "ModifyReservedInstancesRequest$ClientToken": "

        A unique, case-sensitive token you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

        ", "ModifyReservedInstancesResult$ReservedInstancesModificationId": "

        The ID for the modification.

        ", "ModifySnapshotAttributeRequest$SnapshotId": "

        The ID of the snapshot.

        ", "ModifySubnetAttributeRequest$SubnetId": "

        The ID of the subnet.

        ", "ModifyVolumeAttributeRequest$VolumeId": "

        The ID of the volume.

        ", "ModifyVpcAttributeRequest$VpcId": "

        The ID of the VPC.

        ", "ModifyVpcEndpointRequest$VpcEndpointId": "

        The ID of the endpoint.

        ", "ModifyVpcEndpointRequest$PolicyDocument": "

        A policy document to attach to the endpoint. The policy must be in valid JSON format.

        ", "MoveAddressToVpcRequest$PublicIp": "

        The Elastic IP address.

        ", "MoveAddressToVpcResult$AllocationId": "

        The allocation ID for the Elastic IP address.

        ", "MovingAddressStatus$PublicIp": "

        The Elastic IP address.

        ", "NetworkAcl$NetworkAclId": "

        The ID of the network ACL.

        ", "NetworkAcl$VpcId": "

        The ID of the VPC for the network ACL.

        ", "NetworkAclAssociation$NetworkAclAssociationId": "

        The ID of the association between a network ACL and a subnet.

        ", "NetworkAclAssociation$NetworkAclId": "

        The ID of the network ACL.

        ", "NetworkAclAssociation$SubnetId": "

        The ID of the subnet.

        ", "NetworkAclEntry$Protocol": "

        The protocol. A value of -1 means all protocols.

        ", "NetworkAclEntry$CidrBlock": "

        The network range to allow or deny, in CIDR notation.

        ", "NetworkInterface$NetworkInterfaceId": "

        The ID of the network interface.

        ", "NetworkInterface$SubnetId": "

        The ID of the subnet.

        ", "NetworkInterface$VpcId": "

        The ID of the VPC.

        ", "NetworkInterface$AvailabilityZone": "

        The Availability Zone.

        ", "NetworkInterface$Description": "

        A description.

        ", "NetworkInterface$OwnerId": "

        The AWS account ID of the owner of the network interface.

        ", "NetworkInterface$RequesterId": "

        The ID of the entity that launched the instance on your behalf (for example, AWS Management Console or Auto Scaling).

        ", "NetworkInterface$MacAddress": "

        The MAC address.

        ", "NetworkInterface$PrivateIpAddress": "

        The IP address of the network interface within the subnet.

        ", "NetworkInterface$PrivateDnsName": "

        The private DNS name.

        ", "NetworkInterfaceAssociation$PublicIp": "

        The address of the Elastic IP address bound to the network interface.

        ", "NetworkInterfaceAssociation$PublicDnsName": "

        The public DNS name.

        ", "NetworkInterfaceAssociation$IpOwnerId": "

        The ID of the Elastic IP address owner.

        ", "NetworkInterfaceAssociation$AllocationId": "

        The allocation ID.

        ", "NetworkInterfaceAssociation$AssociationId": "

        The association ID.

        ", "NetworkInterfaceAttachment$AttachmentId": "

        The ID of the network interface attachment.

        ", "NetworkInterfaceAttachment$InstanceId": "

        The ID of the instance.

        ", "NetworkInterfaceAttachment$InstanceOwnerId": "

        The AWS account ID of the owner of the instance.

        ", "NetworkInterfaceAttachmentChanges$AttachmentId": "

        The ID of the network interface attachment.

        ", "NetworkInterfaceIdList$member": null, "NetworkInterfacePrivateIpAddress$PrivateIpAddress": "

        The private IP address.

        ", "NetworkInterfacePrivateIpAddress$PrivateDnsName": "

        The private DNS name.

        ", "OwnerStringList$member": null, "Placement$AvailabilityZone": "

        The Availability Zone of the instance.

        ", "Placement$GroupName": "

        The name of the placement group the instance is in (for cluster compute instances).

        ", "PlacementGroup$GroupName": "

        The name of the placement group.

        ", "PlacementGroupStringList$member": null, "PrefixList$PrefixListId": "

        The ID of the prefix.

        ", "PrefixList$PrefixListName": "

        The name of the prefix.

        ", "PrefixListId$PrefixListId": "

        The ID of the prefix.

        ", "PrivateIpAddressSpecification$PrivateIpAddress": "

        The private IP addresses.

        ", "PrivateIpAddressStringList$member": null, "ProductCode$ProductCodeId": "

        The product code.

        ", "ProductCodeStringList$member": null, "ProductDescriptionList$member": null, "PropagatingVgw$GatewayId": "

        The ID of the virtual private gateway (VGW).

        ", "PublicIpStringList$member": null, "PurchaseReservedInstancesOfferingRequest$ReservedInstancesOfferingId": "

        The ID of the Reserved Instance offering to purchase.

        ", "PurchaseReservedInstancesOfferingResult$ReservedInstancesId": "

        The IDs of the purchased Reserved Instances.

        ", "Region$RegionName": "

        The name of the region.

        ", "Region$Endpoint": "

        The region service endpoint.

        ", "RegionNameStringList$member": null, "RegisterImageRequest$ImageLocation": "

        The full path to your AMI manifest in Amazon S3 storage.

        ", "RegisterImageRequest$Name": "

        A name for your AMI.

        Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)

        ", "RegisterImageRequest$Description": "

        A description for your AMI.

        ", "RegisterImageRequest$KernelId": "

        The ID of the kernel.

        ", "RegisterImageRequest$RamdiskId": "

        The ID of the RAM disk.

        ", "RegisterImageRequest$RootDeviceName": "

        The name of the root device (for example, /dev/sda1, or /dev/xvda).

        ", "RegisterImageRequest$VirtualizationType": "

        The type of virtualization.

        Default: paravirtual

        ", "RegisterImageRequest$SriovNetSupport": "

        Set to simple to enable enhanced networking for the AMI and any instances that you launch from the AMI.

        There is no way to disable enhanced networking at this time.

        This option is supported only for HVM AMIs. Specifying this option with a PV AMI can make instances launched from the AMI unreachable.

        ", "RegisterImageResult$ImageId": "

        The ID of the newly registered AMI.

        ", "RejectVpcPeeringConnectionRequest$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "ReleaseAddressRequest$PublicIp": "

        [EC2-Classic] The Elastic IP address. Required for EC2-Classic.

        ", "ReleaseAddressRequest$AllocationId": "

        [EC2-VPC] The allocation ID. Required for EC2-VPC.

        ", "ReplaceNetworkAclAssociationRequest$AssociationId": "

        The ID of the current association between the original network ACL and the subnet.

        ", "ReplaceNetworkAclAssociationRequest$NetworkAclId": "

        The ID of the new network ACL to associate with the subnet.

        ", "ReplaceNetworkAclAssociationResult$NewAssociationId": "

        The ID of the new association.

        ", "ReplaceNetworkAclEntryRequest$NetworkAclId": "

        The ID of the ACL.

        ", "ReplaceNetworkAclEntryRequest$Protocol": "

        The IP protocol. You can specify all or -1 to mean all protocols.

        ", "ReplaceNetworkAclEntryRequest$CidrBlock": "

        The network range to allow or deny, in CIDR notation.

        ", "ReplaceRouteRequest$RouteTableId": "

        The ID of the route table.

        ", "ReplaceRouteRequest$DestinationCidrBlock": "

        The CIDR address block used for the destination match. The value you provide must match the CIDR of an existing route in the table.

        ", "ReplaceRouteRequest$GatewayId": "

        The ID of an Internet gateway or virtual private gateway.

        ", "ReplaceRouteRequest$InstanceId": "

        The ID of a NAT instance in your VPC.

        ", "ReplaceRouteRequest$NetworkInterfaceId": "

        The ID of a network interface.

        ", "ReplaceRouteRequest$VpcPeeringConnectionId": "

        The ID of a VPC peering connection.

        ", "ReplaceRouteTableAssociationRequest$AssociationId": "

        The association ID.

        ", "ReplaceRouteTableAssociationRequest$RouteTableId": "

        The ID of the new route table to associate with the subnet.

        ", "ReplaceRouteTableAssociationResult$NewAssociationId": "

        The ID of the new association.

        ", "ReportInstanceStatusRequest$Description": "

        Descriptive text about the health state of your instance.

        ", "RequestSpotFleetResponse$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "RequestSpotInstancesRequest$SpotPrice": "

        The maximum hourly price (bid) for any Spot instance launched to fulfill the request.

        ", "RequestSpotInstancesRequest$ClientToken": "

        Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.

        ", "RequestSpotInstancesRequest$LaunchGroup": "

        The instance launch group. Launch groups are Spot instances that launch together and terminate together.

        Default: Instances are launched and terminated individually

        ", "RequestSpotInstancesRequest$AvailabilityZoneGroup": "

        The user-specified name for a logical grouping of bids.

        When you specify an Availability Zone group in a Spot Instance request, all Spot instances in the request are launched in the same Availability Zone. Instance proximity is maintained with this parameter, but the choice of Availability Zone is not. The group applies only to bids for Spot Instances of the same instance type. Any additional Spot instance requests that are specified with the same Availability Zone group name are launched in that same Availability Zone, as long as at least one instance from the group is still active.

        If there is no active instance running in the Availability Zone group that you specify for a new Spot instance request (all instances are terminated, the bid is expired, or the bid falls below current market), then Amazon EC2 launches the instance in any Availability Zone where the constraint can be met. Consequently, the subsequent set of Spot instances could be placed in a different zone from the original request, even if you specified the same Availability Zone group.

        Default: Instances are launched in any available Availability Zone.

        ", "Reservation$ReservationId": "

        The ID of the reservation.

        ", "Reservation$OwnerId": "

        The ID of the AWS account that owns the reservation.

        ", "Reservation$RequesterId": "

        The ID of the requester that launched the instances on your behalf (for example, AWS Management Console or Auto Scaling).

        ", "ReservedInstances$ReservedInstancesId": "

        The ID of the Reserved Instance.

        ", "ReservedInstances$AvailabilityZone": "

        The Availability Zone in which the Reserved Instance can be used.

        ", "ReservedInstancesConfiguration$AvailabilityZone": "

        The Availability Zone for the modified Reserved Instances.

        ", "ReservedInstancesConfiguration$Platform": "

        The network platform of the modified Reserved Instances, which is either EC2-Classic or EC2-VPC.

        ", "ReservedInstancesId$ReservedInstancesId": "

        The ID of the Reserved Instance.

        ", "ReservedInstancesIdStringList$member": null, "ReservedInstancesListing$ReservedInstancesListingId": "

        The ID of the Reserved Instance listing.

        ", "ReservedInstancesListing$ReservedInstancesId": "

        The ID of the Reserved Instance.

        ", "ReservedInstancesListing$StatusMessage": "

        The reason for the current status of the Reserved Instance listing. The response can be blank.

        ", "ReservedInstancesListing$ClientToken": "

        A unique, case-sensitive key supplied by the client to ensure that the request is idempotent. For more information, see Ensuring Idempotency.

        ", "ReservedInstancesModification$ReservedInstancesModificationId": "

        A unique ID for the Reserved Instance modification.

        ", "ReservedInstancesModification$Status": "

        The status of the Reserved Instances modification request.

        ", "ReservedInstancesModification$StatusMessage": "

        The reason for the status.

        ", "ReservedInstancesModification$ClientToken": "

        A unique, case-sensitive key supplied by the client to ensure that the request is idempotent. For more information, see Ensuring Idempotency.

        ", "ReservedInstancesModificationIdStringList$member": null, "ReservedInstancesModificationResult$ReservedInstancesId": "

        The ID for the Reserved Instances that were created as part of the modification request. This field is only available when the modification is fulfilled.

        ", "ReservedInstancesOffering$ReservedInstancesOfferingId": "

        The ID of the Reserved Instance offering.

        ", "ReservedInstancesOffering$AvailabilityZone": "

        The Availability Zone in which the Reserved Instance can be used.

        ", "ReservedInstancesOfferingIdStringList$member": null, "ResetImageAttributeRequest$ImageId": "

        The ID of the AMI.

        ", "ResetInstanceAttributeRequest$InstanceId": "

        The ID of the instance.

        ", "ResetNetworkInterfaceAttributeRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "ResetNetworkInterfaceAttributeRequest$SourceDestCheck": "

        The source/destination checking attribute. Resets the value to true.

        ", "ResetSnapshotAttributeRequest$SnapshotId": "

        The ID of the snapshot.

        ", "ResourceIdList$member": null, "RestorableByStringList$member": null, "RestoreAddressToClassicRequest$PublicIp": "

        The Elastic IP address.

        ", "RestoreAddressToClassicResult$PublicIp": "

        The Elastic IP address.

        ", "RevokeSecurityGroupEgressRequest$GroupId": "

        The ID of the security group.

        ", "RevokeSecurityGroupEgressRequest$SourceSecurityGroupName": "

        The name of a destination security group. To revoke outbound access to a destination security group, we recommend that you use a set of IP permissions instead.

        ", "RevokeSecurityGroupEgressRequest$SourceSecurityGroupOwnerId": "

        The AWS account number for a destination security group. To revoke outbound access to a destination security group, we recommend that you use a set of IP permissions instead.

        ", "RevokeSecurityGroupEgressRequest$IpProtocol": "

        The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). Use -1 to specify all.

        ", "RevokeSecurityGroupEgressRequest$CidrIp": "

        The CIDR IP address range. You can't specify this parameter when specifying a source security group.

        ", "RevokeSecurityGroupIngressRequest$GroupName": "

        [EC2-Classic, default VPC] The name of the security group.

        ", "RevokeSecurityGroupIngressRequest$GroupId": "

        The ID of the security group. Required for a security group in a nondefault VPC.

        ", "RevokeSecurityGroupIngressRequest$SourceSecurityGroupName": "

        [EC2-Classic, default VPC] The name of the source security group. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the start of the port range, the IP protocol, and the end of the port range. For EC2-VPC, the source security group must be in the same VPC.

        ", "RevokeSecurityGroupIngressRequest$SourceSecurityGroupOwnerId": "

        [EC2-Classic, default VPC] The AWS account ID of the source security group. For EC2-VPC, the source security group must be in the same VPC. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the IP protocol, the start of the port range, and the end of the port range. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.

        ", "RevokeSecurityGroupIngressRequest$IpProtocol": "

        The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). Use -1 to specify all.

        ", "RevokeSecurityGroupIngressRequest$CidrIp": "

        The CIDR IP address range. You can't specify this parameter when specifying a source security group.

        ", "Route$DestinationCidrBlock": "

        The CIDR block used for the destination match.

        ", "Route$DestinationPrefixListId": "

        The prefix of the AWS service.

        ", "Route$GatewayId": "

        The ID of a gateway attached to your VPC.

        ", "Route$InstanceId": "

        The ID of a NAT instance in your VPC.

        ", "Route$InstanceOwnerId": "

        The AWS account ID of the owner of the instance.

        ", "Route$NetworkInterfaceId": "

        The ID of the network interface.

        ", "Route$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "RouteTable$RouteTableId": "

        The ID of the route table.

        ", "RouteTable$VpcId": "

        The ID of the VPC.

        ", "RouteTableAssociation$RouteTableAssociationId": "

        The ID of the association between a route table and a subnet.

        ", "RouteTableAssociation$RouteTableId": "

        The ID of the route table.

        ", "RouteTableAssociation$SubnetId": "

        The ID of the subnet. A subnet ID is not returned for an implicit association.

        ", "RunInstancesRequest$ImageId": "

        The ID of the AMI, which you can get by calling DescribeImages.

        ", "RunInstancesRequest$KeyName": "

        The name of the key pair. You can create a key pair using CreateKeyPair or ImportKeyPair.

        If you do not specify a key pair, you can't connect to the instance unless you choose an AMI that is configured to allow users another way to log in.

        ", "RunInstancesRequest$UserData": "

        The Base64-encoded MIME user data for the instances.

        ", "RunInstancesRequest$KernelId": "

        The ID of the kernel.

        We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB in the Amazon Elastic Compute Cloud User Guide.

        ", "RunInstancesRequest$RamdiskId": "

        The ID of the RAM disk.

        We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB in the Amazon Elastic Compute Cloud User Guide.

        ", "RunInstancesRequest$SubnetId": "

        [EC2-VPC] The ID of the subnet to launch the instance into.

        ", "RunInstancesRequest$PrivateIpAddress": "

        [EC2-VPC] The primary IP address. You must specify a value from the IP address range of the subnet.

        Only one private IP address can be designated as primary. Therefore, you can't specify this parameter if PrivateIpAddresses.n.Primary is set to true and PrivateIpAddresses.n.PrivateIpAddress is set to an IP address.

        Default: We select an IP address from the IP address range of the subnet.

        ", "RunInstancesRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

        Constraints: Maximum 64 ASCII characters

        ", "RunInstancesRequest$AdditionalInfo": "

        Reserved.

        ", "S3Storage$Bucket": "

        The bucket in which to store the AMI. You can specify a bucket that you already own or a new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone else, Amazon EC2 returns an error.

        ", "S3Storage$Prefix": "

        The beginning of the file name of the AMI.

        ", "S3Storage$AWSAccessKeyId": "

        The access key ID of the owner of the bucket. Before you specify a value for your access key ID, review and follow the guidance in Best Practices for Managing AWS Access Keys.

        ", "S3Storage$UploadPolicySignature": "

        The signature of the Base64 encoded JSON document.

        ", "SecurityGroup$OwnerId": "

        The AWS account ID of the owner of the security group.

        ", "SecurityGroup$GroupName": "

        The name of the security group.

        ", "SecurityGroup$GroupId": "

        The ID of the security group.

        ", "SecurityGroup$Description": "

        A description of the security group.

        ", "SecurityGroup$VpcId": "

        [EC2-VPC] The ID of the VPC for the security group.

        ", "SecurityGroupIdStringList$member": null, "SecurityGroupStringList$member": null, "Snapshot$SnapshotId": "

        The ID of the snapshot. Each snapshot receives a unique identifier when it is created.

        ", "Snapshot$VolumeId": "

        The ID of the volume that was used to create the snapshot.

        ", "Snapshot$StateMessage": "

        Encrypted Amazon EBS snapshots are copied asynchronously. If a snapshot copy operation fails (for example, if the proper AWS Key Management Service (AWS KMS) permissions are not obtained) this field displays error state details to help you diagnose why the error occurred. This parameter is only returned by the DescribeSnapshots API operation.

        ", "Snapshot$Progress": "

        The progress of the snapshot, as a percentage.

        ", "Snapshot$OwnerId": "

        The AWS account ID of the EBS snapshot owner.

        ", "Snapshot$Description": "

        The description for the snapshot.

        ", "Snapshot$OwnerAlias": "

        The AWS account alias (for example, amazon, self) or AWS account ID that owns the snapshot.

        ", "Snapshot$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) that was used to protect the volume encryption key for the parent volume.

        ", "Snapshot$DataEncryptionKeyId": "

        The data encryption key identifier for the snapshot. This value is a unique identifier that corresponds to the data encryption key that was used to encrypt the original volume or snapshot copy. Because data encryption keys are inherited by volumes created from snapshots, and vice versa, if snapshots share the same data encryption key identifier, then they belong to the same volume/snapshot lineage. This parameter is only returned by the DescribeSnapshots API operation.

        ", "SnapshotDetail$Description": "

        A description for the snapshot.

        ", "SnapshotDetail$Format": "

        The format of the disk image from which the snapshot is created.

        ", "SnapshotDetail$Url": "

        The URL used to access the disk image.

        ", "SnapshotDetail$DeviceName": "

        The block device mapping for the snapshot.

        ", "SnapshotDetail$SnapshotId": "

        The snapshot ID of the disk being imported.

        ", "SnapshotDetail$Progress": "

        The percentage of progress for the task.

        ", "SnapshotDetail$StatusMessage": "

        A detailed status message for the snapshot creation.

        ", "SnapshotDetail$Status": "

        A brief status of the snapshot creation.

        ", "SnapshotDiskContainer$Description": "

        The description of the disk image being imported.

        ", "SnapshotDiskContainer$Format": "

        The format of the disk image being imported.

        Valid values: RAW | VHD | VMDK | OVA

        ", "SnapshotDiskContainer$Url": "

        The URL to the Amazon S3-based disk image being imported. It can either be a https URL (https://..) or an Amazon S3 URL (s3://..).

        ", "SnapshotIdStringList$member": null, "SnapshotTaskDetail$Description": "

        The description of the snapshot.

        ", "SnapshotTaskDetail$Format": "

        The format of the disk image from which the snapshot is created.

        ", "SnapshotTaskDetail$Url": "

        The URL of the disk image from which the snapshot is created.

        ", "SnapshotTaskDetail$SnapshotId": "

        The snapshot ID of the disk being imported.

        ", "SnapshotTaskDetail$Progress": "

        The percentage of completion for the import snapshot task.

        ", "SnapshotTaskDetail$StatusMessage": "

        A detailed status message for the import snapshot task.

        ", "SnapshotTaskDetail$Status": "

        A brief status for the import snapshot task.

        ", "SpotDatafeedSubscription$OwnerId": "

        The AWS account ID of the account.

        ", "SpotDatafeedSubscription$Bucket": "

        The Amazon S3 bucket where the Spot instance data feed is located.

        ", "SpotDatafeedSubscription$Prefix": "

        The prefix that is prepended to data feed files.

        ", "SpotFleetLaunchSpecification$ImageId": "

        The ID of the AMI.

        ", "SpotFleetLaunchSpecification$KeyName": "

        The name of the key pair.

        ", "SpotFleetLaunchSpecification$UserData": "

        The Base64-encoded MIME user data to make available to the instances.

        ", "SpotFleetLaunchSpecification$AddressingType": "

        Deprecated.

        ", "SpotFleetLaunchSpecification$KernelId": "

        The ID of the kernel.

        ", "SpotFleetLaunchSpecification$RamdiskId": "

        The ID of the RAM disk.

        ", "SpotFleetLaunchSpecification$SubnetId": "

        The ID of the subnet in which to launch the instances.

        ", "SpotFleetLaunchSpecification$SpotPrice": "

        The bid price per unit hour for the specified instance type. If this value is not specified, the default is the Spot bid price specified for the fleet. To determine the bid price per unit hour, divide the Spot bid price by the value of WeightedCapacity.

        ", "SpotFleetRequestConfig$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "SpotFleetRequestConfigData$ClientToken": "

        A unique, case-sensitive identifier you provide to ensure idempotency of your listings. This helps avoid duplicate listings. For more information, see Ensuring Idempotency.

        ", "SpotFleetRequestConfigData$SpotPrice": "

        The bid price per unit hour.

        ", "SpotFleetRequestConfigData$IamFleetRole": "

        Grants the Spot fleet permission to terminate Spot instances on your behalf when you cancel its Spot fleet request using CancelSpotFleetRequests or when the Spot fleet request expires, if you set terminateInstancesWithExpiration.

        ", "SpotInstanceRequest$SpotInstanceRequestId": "

        The ID of the Spot instance request.

        ", "SpotInstanceRequest$SpotPrice": "

        The maximum hourly price (bid) for any Spot instance launched to fulfill the request.

        ", "SpotInstanceRequest$LaunchGroup": "

        The instance launch group. Launch groups are Spot instances that launch together and terminate together.

        ", "SpotInstanceRequest$AvailabilityZoneGroup": "

        The Availability Zone group. If you specify the same Availability Zone group for all Spot instance requests, all Spot instances are launched in the same Availability Zone.

        ", "SpotInstanceRequest$InstanceId": "

        The instance ID, if an instance has been launched to fulfill the Spot instance request.

        ", "SpotInstanceRequest$LaunchedAvailabilityZone": "

        The Availability Zone in which the bid is launched.

        ", "SpotInstanceRequestIdList$member": null, "SpotInstanceStateFault$Code": "

        The reason code for the Spot instance state change.

        ", "SpotInstanceStateFault$Message": "

        The message for the Spot instance state change.

        ", "SpotInstanceStatus$Code": "

        The status code.

        ", "SpotInstanceStatus$Message": "

        The description for the status code.

        ", "SpotPlacement$AvailabilityZone": "

        The Availability Zone.

        ", "SpotPlacement$GroupName": "

        The name of the placement group (for cluster instances).

        ", "SpotPrice$SpotPrice": "

        The maximum price (bid) that you are willing to pay for a Spot instance.

        ", "SpotPrice$AvailabilityZone": "

        The Availability Zone.

        ", "StartInstancesRequest$AdditionalInfo": "

        Reserved.

        ", "StateReason$Code": "

        The reason code for the state change.

        ", "StateReason$Message": "

        The message for the state change.

        • Server.SpotInstanceTermination: A Spot Instance was terminated due to an increase in the market price.

        • Server.InternalError: An internal error occurred during instance launch, resulting in termination.

        • Server.InsufficientInstanceCapacity: There was insufficient instance capacity to satisfy the launch request.

        • Client.InternalError: A client error caused the instance to terminate on launch.

        • Client.InstanceInitiatedShutdown: The instance was shut down using the shutdown -h command from the instance.

        • Client.UserInitiatedShutdown: The instance was shut down using the Amazon EC2 API.

        • Client.VolumeLimitExceeded: The volume limit was exceeded.

        • Client.InvalidSnapshot.NotFound: The specified snapshot was not found.

        ", "Subnet$SubnetId": "

        The ID of the subnet.

        ", "Subnet$VpcId": "

        The ID of the VPC the subnet is in.

        ", "Subnet$CidrBlock": "

        The CIDR block assigned to the subnet.

        ", "Subnet$AvailabilityZone": "

        The Availability Zone of the subnet.

        ", "SubnetIdStringList$member": null, "Tag$Key": "

        The key of the tag.

        Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with aws:

        ", "Tag$Value": "

        The value of the tag.

        Constraints: Tag values are case-sensitive and accept a maximum of 255 Unicode characters.

        ", "TagDescription$ResourceId": "

        The ID of the resource. For example, ami-1a2b3c4d.

        ", "TagDescription$Key": "

        The tag key.

        ", "TagDescription$Value": "

        The tag value.

        ", "UnassignPrivateIpAddressesRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "UnsuccessfulItem$ResourceId": "

        The ID of the resource.

        ", "UnsuccessfulItemError$Code": "

        The error code.

        ", "UnsuccessfulItemError$Message": "

        The error message accompanying the error code.

        ", "UserBucket$S3Bucket": "

        The name of the S3 bucket where the disk image is located.

        ", "UserBucket$S3Key": "

        The key for the disk image.

        ", "UserBucketDetails$S3Bucket": "

        The S3 bucket from which the disk image was created.

        ", "UserBucketDetails$S3Key": "

        The key from which the disk image was created.

        ", "UserData$Data": "

        The Base64-encoded MIME user data for the instance.

        ", "UserGroupStringList$member": null, "UserIdGroupPair$UserId": "

        The ID of an AWS account. EC2-Classic only.

        ", "UserIdGroupPair$GroupName": "

        The name of the security group. In a request, use this parameter for a security group in EC2-Classic or a default VPC only. For a security group in a nondefault VPC, use GroupId.

        ", "UserIdGroupPair$GroupId": "

        The ID of the security group.

        ", "UserIdStringList$member": null, "ValueStringList$member": null, "VgwTelemetry$OutsideIpAddress": "

        The Internet-routable IP address of the virtual private gateway's outside interface.

        ", "VgwTelemetry$StatusMessage": "

        If an error occurs, a description of the error.

        ", "Volume$VolumeId": "

        The ID of the volume.

        ", "Volume$SnapshotId": "

        The snapshot from which the volume was created, if applicable.

        ", "Volume$AvailabilityZone": "

        The Availability Zone for the volume.

        ", "Volume$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) that was used to protect the volume encryption key for the volume.

        ", "VolumeAttachment$VolumeId": "

        The ID of the volume.

        ", "VolumeAttachment$InstanceId": "

        The ID of the instance.

        ", "VolumeAttachment$Device": "

        The device name.

        ", "VolumeIdStringList$member": null, "VolumeStatusAction$Code": "

        The code identifying the operation, for example, enable-volume-io.

        ", "VolumeStatusAction$Description": "

        A description of the operation.

        ", "VolumeStatusAction$EventType": "

        The event type associated with this operation.

        ", "VolumeStatusAction$EventId": "

        The ID of the event associated with this operation.

        ", "VolumeStatusDetails$Status": "

        The intended status of the volume status.

        ", "VolumeStatusEvent$EventType": "

        The type of this event.

        ", "VolumeStatusEvent$Description": "

        A description of the event.

        ", "VolumeStatusEvent$EventId": "

        The ID of this event.

        ", "VolumeStatusItem$VolumeId": "

        The volume ID.

        ", "VolumeStatusItem$AvailabilityZone": "

        The Availability Zone of the volume.

        ", "Vpc$VpcId": "

        The ID of the VPC.

        ", "Vpc$CidrBlock": "

        The CIDR block for the VPC.

        ", "Vpc$DhcpOptionsId": "

        The ID of the set of DHCP options you've associated with the VPC (or default if the default options are associated with the VPC).

        ", "VpcAttachment$VpcId": "

        The ID of the VPC.

        ", "VpcClassicLink$VpcId": "

        The ID of the VPC.

        ", "VpcClassicLinkIdList$member": null, "VpcEndpoint$VpcEndpointId": "

        The ID of the VPC endpoint.

        ", "VpcEndpoint$VpcId": "

        The ID of the VPC to which the endpoint is associated.

        ", "VpcEndpoint$ServiceName": "

        The name of the AWS service to which the endpoint is associated.

        ", "VpcEndpoint$PolicyDocument": "

        The policy document associated with the endpoint.

        ", "VpcIdStringList$member": null, "VpcPeeringConnection$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "VpcPeeringConnectionStateReason$Message": "

        A message that provides more information about the status, if applicable.

        ", "VpcPeeringConnectionVpcInfo$CidrBlock": "

        The CIDR block for the VPC.

        ", "VpcPeeringConnectionVpcInfo$OwnerId": "

        The AWS account ID of the VPC owner.

        ", "VpcPeeringConnectionVpcInfo$VpcId": "

        The ID of the VPC.

        ", "VpnConnection$VpnConnectionId": "

        The ID of the VPN connection.

        ", "VpnConnection$CustomerGatewayConfiguration": "

        The configuration information for the VPN connection's customer gateway (in the native XML format). This element is always present in the CreateVpnConnection response; however, it's present in the DescribeVpnConnections response only if the VPN connection is in the pending or available state.

        ", "VpnConnection$CustomerGatewayId": "

        The ID of the customer gateway at your end of the VPN connection.

        ", "VpnConnection$VpnGatewayId": "

        The ID of the virtual private gateway at the AWS side of the VPN connection.

        ", "VpnConnectionIdStringList$member": null, "VpnGateway$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "VpnGateway$AvailabilityZone": "

        The Availability Zone where the virtual private gateway was created.

        ", "VpnGatewayIdStringList$member": null, "VpnStaticRoute$DestinationCidrBlock": "

        The CIDR block associated with the local subnet of the customer data center.

        ", "ZoneNameStringList$member": null, "NewDhcpConfiguration$Key": null, "RequestSpotLaunchSpecification$ImageId": "

        The ID of the AMI.

        ", "RequestSpotLaunchSpecification$KeyName": "

        The name of the key pair.

        ", "RequestSpotLaunchSpecification$UserData": "

        The Base64-encoded MIME user data to make available to the instances.

        ", "RequestSpotLaunchSpecification$AddressingType": "

        Deprecated.

        ", "RequestSpotLaunchSpecification$KernelId": "

        The ID of the kernel.

        ", "RequestSpotLaunchSpecification$RamdiskId": "

        The ID of the RAM disk.

        ", "RequestSpotLaunchSpecification$SubnetId": "

        The ID of the subnet in which to launch the instance.

        " } }, "Subnet": { "base": "

        Describes a subnet.

        ", "refs": { "CreateSubnetResult$Subnet": "

        Information about the subnet.

        ", "SubnetList$member": null } }, "SubnetIdStringList": { "base": null, "refs": { "DescribeSubnetsRequest$SubnetIds": "

        One or more subnet IDs.

        Default: Describes all your subnets.

        " } }, "SubnetList": { "base": null, "refs": { "DescribeSubnetsResult$Subnets": "

        Information about one or more subnets.

        " } }, "SubnetState": { "base": null, "refs": { "Subnet$State": "

        The current state of the subnet.

        " } }, "SummaryStatus": { "base": null, "refs": { "InstanceStatusSummary$Status": "

        The status.

        " } }, "Tag": { "base": "

        Describes a tag.

        ", "refs": { "TagList$member": null } }, "TagDescription": { "base": "

        Describes a tag.

        ", "refs": { "TagDescriptionList$member": null } }, "TagDescriptionList": { "base": null, "refs": { "DescribeTagsResult$Tags": "

        A list of tags.

        " } }, "TagList": { "base": null, "refs": { "ClassicLinkInstance$Tags": "

        Any tags assigned to the instance.

        ", "ConversionTask$Tags": "

        Any tags assigned to the task.

        ", "CreateTagsRequest$Tags": "

        One or more tags. The value parameter is required, but if you don't want the tag to have a value, specify the parameter with no value, and we set the value to an empty string.

        ", "CustomerGateway$Tags": "

        Any tags assigned to the customer gateway.

        ", "DeleteTagsRequest$Tags": "

        One or more tags to delete. If you omit the value parameter, we delete the tag regardless of its value. If you specify this parameter with an empty string as the value, we delete the key only if its value is an empty string.

        ", "DhcpOptions$Tags": "

        Any tags assigned to the DHCP options set.

        ", "Image$Tags": "

        Any tags assigned to the image.

        ", "Instance$Tags": "

        Any tags assigned to the instance.

        ", "InternetGateway$Tags": "

        Any tags assigned to the Internet gateway.

        ", "NetworkAcl$Tags": "

        Any tags assigned to the network ACL.

        ", "NetworkInterface$TagSet": "

        Any tags assigned to the network interface.

        ", "ReservedInstances$Tags": "

        Any tags assigned to the resource.

        ", "ReservedInstancesListing$Tags": "

        Any tags assigned to the resource.

        ", "RouteTable$Tags": "

        Any tags assigned to the route table.

        ", "SecurityGroup$Tags": "

        Any tags assigned to the security group.

        ", "Snapshot$Tags": "

        Any tags assigned to the snapshot.

        ", "SpotInstanceRequest$Tags": "

        Any tags assigned to the resource.

        ", "Subnet$Tags": "

        Any tags assigned to the subnet.

        ", "Volume$Tags": "

        Any tags assigned to the volume.

        ", "Vpc$Tags": "

        Any tags assigned to the VPC.

        ", "VpcClassicLink$Tags": "

        Any tags assigned to the VPC.

        ", "VpcPeeringConnection$Tags": "

        Any tags assigned to the resource.

        ", "VpnConnection$Tags": "

        Any tags assigned to the VPN connection.

        ", "VpnGateway$Tags": "

        Any tags assigned to the virtual private gateway.

        " } }, "TelemetryStatus": { "base": null, "refs": { "VgwTelemetry$Status": "

        The status of the VPN tunnel.

        " } }, "Tenancy": { "base": null, "refs": { "CreateVpcRequest$InstanceTenancy": "

        The supported tenancy options for instances launched into the VPC. A value of default means that instances can be launched with any tenancy; a value of dedicated means all instances launched into the VPC are launched as dedicated tenancy instances regardless of the tenancy assigned to the instance at launch. Dedicated tenancy instances run on single-tenant hardware.

        Default: default

        ", "DescribeReservedInstancesOfferingsRequest$InstanceTenancy": "

        The tenancy of the Reserved Instance offering. A Reserved Instance with dedicated tenancy runs on single-tenant hardware and can only be launched within a VPC.

        Default: default

        ", "Placement$Tenancy": "

        The tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware.

        ", "ReservedInstances$InstanceTenancy": "

        The tenancy of the reserved instance.

        ", "ReservedInstancesOffering$InstanceTenancy": "

        The tenancy of the reserved instance.

        ", "Vpc$InstanceTenancy": "

        The allowed tenancy of instances launched into the VPC.

        " } }, "TerminateInstancesRequest": { "base": null, "refs": { } }, "TerminateInstancesResult": { "base": null, "refs": { } }, "TrafficType": { "base": null, "refs": { "CreateFlowLogsRequest$TrafficType": "

        The type of traffic to log.

        ", "FlowLog$TrafficType": "

        The type of traffic captured for the flow log.

        " } }, "UnassignPrivateIpAddressesRequest": { "base": null, "refs": { } }, "UnmonitorInstancesRequest": { "base": null, "refs": { } }, "UnmonitorInstancesResult": { "base": null, "refs": { } }, "UnsuccessfulItem": { "base": "

        Information about items that were not successfully processed in a batch call.

        ", "refs": { "UnsuccessfulItemSet$member": null } }, "UnsuccessfulItemError": { "base": "

        Information about the error that occurred. For more information about errors, see Error Codes.

        ", "refs": { "UnsuccessfulItem$Error": "

        Information about the error.

        " } }, "UnsuccessfulItemSet": { "base": null, "refs": { "CreateFlowLogsResult$Unsuccessful": "

        Information about the flow logs that could not be created successfully.

        ", "DeleteFlowLogsResult$Unsuccessful": "

        Information about the flow logs that could not be deleted successfully.

        ", "DeleteVpcEndpointsResult$Unsuccessful": "

        Information about the endpoints that were not successfully deleted.

        " } }, "UserBucket": { "base": "

        Describes the S3 bucket for the disk image.

        ", "refs": { "ImageDiskContainer$UserBucket": "

        The S3 bucket for the disk image.

        ", "SnapshotDiskContainer$UserBucket": null } }, "UserBucketDetails": { "base": "

        Describes the S3 bucket for the disk image.

        ", "refs": { "SnapshotDetail$UserBucket": null, "SnapshotTaskDetail$UserBucket": "

        The S3 bucket for the disk image.

        " } }, "UserData": { "base": "

        Describes the user data to be made available to an instance.

        ", "refs": { "ImportInstanceLaunchSpecification$UserData": "

        The Base64-encoded MIME user data to be made available to the instance.

        " } }, "UserGroupStringList": { "base": null, "refs": { "ModifyImageAttributeRequest$UserGroups": "

        One or more user groups. This is only valid when modifying the launchPermission attribute.

        " } }, "UserIdGroupPair": { "base": "

        Describes a security group and AWS account ID pair.

        ", "refs": { "UserIdGroupPairList$member": null } }, "UserIdGroupPairList": { "base": null, "refs": { "IpPermission$UserIdGroupPairs": "

        One or more security group and AWS account ID pairs.

        " } }, "UserIdStringList": { "base": null, "refs": { "ModifyImageAttributeRequest$UserIds": "

        One or more AWS account IDs. This is only valid when modifying the launchPermission attribute.

        ", "ModifySnapshotAttributeRequest$UserIds": "

        The account ID to modify for the snapshot.

        " } }, "ValueStringList": { "base": null, "refs": { "CancelSpotFleetRequestsRequest$SpotFleetRequestIds": "

        The IDs of the Spot fleet requests.

        ", "CreateFlowLogsRequest$ResourceIds": "

        One or more subnet, network interface, or VPC IDs.

        ", "CreateFlowLogsResult$FlowLogIds": "

        The IDs of the flow logs.

        ", "CreateVpcEndpointRequest$RouteTableIds": "

        One or more route table IDs.

        ", "DeleteFlowLogsRequest$FlowLogIds": "

        One or more flow log IDs.

        ", "DeleteVpcEndpointsRequest$VpcEndpointIds": "

        One or more endpoint IDs.

        ", "DescribeFlowLogsRequest$FlowLogIds": "

        One or more flow log IDs.

        ", "DescribeInternetGatewaysRequest$InternetGatewayIds": "

        One or more Internet gateway IDs.

        Default: Describes all your Internet gateways.

        ", "DescribeMovingAddressesRequest$PublicIps": "

        One or more Elastic IP addresses.

        ", "DescribeNetworkAclsRequest$NetworkAclIds": "

        One or more network ACL IDs.

        Default: Describes all your network ACLs.

        ", "DescribePrefixListsRequest$PrefixListIds": "

        One or more prefix list IDs.

        ", "DescribeRouteTablesRequest$RouteTableIds": "

        One or more route table IDs.

        Default: Describes all your route tables.

        ", "DescribeSpotFleetRequestsRequest$SpotFleetRequestIds": "

        The IDs of the Spot fleet requests.

        ", "DescribeVpcEndpointServicesResult$ServiceNames": "

        A list of supported AWS services.

        ", "DescribeVpcEndpointsRequest$VpcEndpointIds": "

        One or more endpoint IDs.

        ", "DescribeVpcPeeringConnectionsRequest$VpcPeeringConnectionIds": "

        One or more VPC peering connection IDs.

        Default: Describes all your VPC peering connections.

        ", "Filter$Values": "

        One or more filter values. Filter values are case-sensitive.

        ", "ModifyVpcEndpointRequest$AddRouteTableIds": "

        One or more route tables IDs to associate with the endpoint.

        ", "ModifyVpcEndpointRequest$RemoveRouteTableIds": "

        One or more route table IDs to disassociate from the endpoint.

        ", "PrefixList$Cidrs": "

        The IP address range of the AWS service.

        ", "VpcEndpoint$RouteTableIds": "

        One or more route tables associated with the endpoint.

        ", "NewDhcpConfiguration$Values": null, "RequestSpotLaunchSpecification$SecurityGroups": null, "RequestSpotLaunchSpecification$SecurityGroupIds": null } }, "VgwTelemetry": { "base": "

        Describes telemetry for a VPN tunnel.

        ", "refs": { "VgwTelemetryList$member": null } }, "VgwTelemetryList": { "base": null, "refs": { "VpnConnection$VgwTelemetry": "

        Information about the VPN tunnel.

        " } }, "VirtualizationType": { "base": null, "refs": { "Image$VirtualizationType": "

        The type of virtualization of the AMI.

        ", "Instance$VirtualizationType": "

        The virtualization type of the instance.

        " } }, "Volume": { "base": "

        Describes a volume.

        ", "refs": { "VolumeList$member": null } }, "VolumeAttachment": { "base": "

        Describes volume attachment details.

        ", "refs": { "VolumeAttachmentList$member": null } }, "VolumeAttachmentList": { "base": null, "refs": { "Volume$Attachments": "

        Information about the volume attachments.

        " } }, "VolumeAttachmentState": { "base": null, "refs": { "VolumeAttachment$State": "

        The attachment state of the volume.

        " } }, "VolumeAttributeName": { "base": null, "refs": { "DescribeVolumeAttributeRequest$Attribute": "

        The instance attribute.

        " } }, "VolumeDetail": { "base": "

        Describes an EBS volume.

        ", "refs": { "DiskImage$Volume": "

        Information about the volume.

        ", "ImportVolumeRequest$Volume": "

        The volume size.

        " } }, "VolumeIdStringList": { "base": null, "refs": { "DescribeVolumeStatusRequest$VolumeIds": "

        One or more volume IDs.

        Default: Describes all your volumes.

        ", "DescribeVolumesRequest$VolumeIds": "

        One or more volume IDs.

        " } }, "VolumeList": { "base": null, "refs": { "DescribeVolumesResult$Volumes": "

        Information about the volumes.

        " } }, "VolumeState": { "base": null, "refs": { "Volume$State": "

        The volume state.

        " } }, "VolumeStatusAction": { "base": "

        Describes a volume status operation code.

        ", "refs": { "VolumeStatusActionsList$member": null } }, "VolumeStatusActionsList": { "base": null, "refs": { "VolumeStatusItem$Actions": "

        The details of the operation.

        " } }, "VolumeStatusDetails": { "base": "

        Describes a volume status.

        ", "refs": { "VolumeStatusDetailsList$member": null } }, "VolumeStatusDetailsList": { "base": null, "refs": { "VolumeStatusInfo$Details": "

        The details of the volume status.

        " } }, "VolumeStatusEvent": { "base": "

        Describes a volume status event.

        ", "refs": { "VolumeStatusEventsList$member": null } }, "VolumeStatusEventsList": { "base": null, "refs": { "VolumeStatusItem$Events": "

        A list of events associated with the volume.

        " } }, "VolumeStatusInfo": { "base": "

        Describes the status of a volume.

        ", "refs": { "VolumeStatusItem$VolumeStatus": "

        The volume status.

        " } }, "VolumeStatusInfoStatus": { "base": null, "refs": { "VolumeStatusInfo$Status": "

        The status of the volume.

        " } }, "VolumeStatusItem": { "base": "

        Describes the volume status.

        ", "refs": { "VolumeStatusList$member": null } }, "VolumeStatusList": { "base": null, "refs": { "DescribeVolumeStatusResult$VolumeStatuses": "

        A list of volumes.

        " } }, "VolumeStatusName": { "base": null, "refs": { "VolumeStatusDetails$Name": "

        The name of the volume status.

        " } }, "VolumeType": { "base": null, "refs": { "CreateVolumeRequest$VolumeType": "

        The volume type. This can be gp2 for General Purpose (SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, or standard for Magnetic volumes.

        Default: standard

        ", "EbsBlockDevice$VolumeType": "

        The volume type. gp2 for General Purpose (SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, and standard for Magnetic volumes.

        Default: standard

        ", "Volume$VolumeType": "

        The volume type. This can be gp2 for General Purpose (SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, or standard for Magnetic volumes.

        " } }, "Vpc": { "base": "

        Describes a VPC.

        ", "refs": { "CreateVpcResult$Vpc": "

        Information about the VPC.

        ", "VpcList$member": null } }, "VpcAttachment": { "base": "

        Describes an attachment between a virtual private gateway and a VPC.

        ", "refs": { "AttachVpnGatewayResult$VpcAttachment": "

        Information about the attachment.

        ", "VpcAttachmentList$member": null } }, "VpcAttachmentList": { "base": null, "refs": { "VpnGateway$VpcAttachments": "

        Any VPCs attached to the virtual private gateway.

        " } }, "VpcAttributeName": { "base": null, "refs": { "DescribeVpcAttributeRequest$Attribute": "

        The VPC attribute.

        " } }, "VpcClassicLink": { "base": "

        Describes whether a VPC is enabled for ClassicLink.

        ", "refs": { "VpcClassicLinkList$member": null } }, "VpcClassicLinkIdList": { "base": null, "refs": { "DescribeVpcClassicLinkRequest$VpcIds": "

        One or more VPCs for which you want to describe the ClassicLink status.

        " } }, "VpcClassicLinkList": { "base": null, "refs": { "DescribeVpcClassicLinkResult$Vpcs": "

        The ClassicLink status of one or more VPCs.

        " } }, "VpcEndpoint": { "base": "

        Describes a VPC endpoint.

        ", "refs": { "CreateVpcEndpointResult$VpcEndpoint": "

        Information about the endpoint.

        ", "VpcEndpointSet$member": null } }, "VpcEndpointSet": { "base": null, "refs": { "DescribeVpcEndpointsResult$VpcEndpoints": "

        Information about the endpoints.

        " } }, "VpcIdStringList": { "base": null, "refs": { "DescribeVpcsRequest$VpcIds": "

        One or more VPC IDs.

        Default: Describes all your VPCs.

        " } }, "VpcList": { "base": null, "refs": { "DescribeVpcsResult$Vpcs": "

        Information about one or more VPCs.

        " } }, "VpcPeeringConnection": { "base": "

        Describes a VPC peering connection.

        ", "refs": { "AcceptVpcPeeringConnectionResult$VpcPeeringConnection": "

        Information about the VPC peering connection.

        ", "CreateVpcPeeringConnectionResult$VpcPeeringConnection": "

        Information about the VPC peering connection.

        ", "VpcPeeringConnectionList$member": null } }, "VpcPeeringConnectionList": { "base": null, "refs": { "DescribeVpcPeeringConnectionsResult$VpcPeeringConnections": "

        Information about the VPC peering connections.

        " } }, "VpcPeeringConnectionStateReason": { "base": "

        Describes the status of a VPC peering connection.

        ", "refs": { "VpcPeeringConnection$Status": "

        The status of the VPC peering connection.

        " } }, "VpcPeeringConnectionStateReasonCode": { "base": null, "refs": { "VpcPeeringConnectionStateReason$Code": "

        The status of the VPC peering connection.

        " } }, "VpcPeeringConnectionVpcInfo": { "base": "

        Describes a VPC in a VPC peering connection.

        ", "refs": { "VpcPeeringConnection$AccepterVpcInfo": "

        The information of the peer VPC.

        ", "VpcPeeringConnection$RequesterVpcInfo": "

        The information of the requester VPC.

        " } }, "VpcState": { "base": null, "refs": { "Vpc$State": "

        The current state of the VPC.

        " } }, "VpnConnection": { "base": "

        Describes a VPN connection.

        ", "refs": { "CreateVpnConnectionResult$VpnConnection": "

        Information about the VPN connection.

        ", "VpnConnectionList$member": null } }, "VpnConnectionIdStringList": { "base": null, "refs": { "DescribeVpnConnectionsRequest$VpnConnectionIds": "

        One or more VPN connection IDs.

        Default: Describes your VPN connections.

        " } }, "VpnConnectionList": { "base": null, "refs": { "DescribeVpnConnectionsResult$VpnConnections": "

        Information about one or more VPN connections.

        " } }, "VpnConnectionOptions": { "base": "

        Describes VPN connection options.

        ", "refs": { "VpnConnection$Options": "

        The VPN connection options.

        " } }, "VpnConnectionOptionsSpecification": { "base": "

        Describes VPN connection options.

        ", "refs": { "CreateVpnConnectionRequest$Options": "

        Indicates whether the VPN connection requires static routes. If you are creating a VPN connection for a device that does not support BGP, you must specify true.

        Default: false

        " } }, "VpnGateway": { "base": "

        Describes a virtual private gateway.

        ", "refs": { "CreateVpnGatewayResult$VpnGateway": "

        Information about the virtual private gateway.

        ", "VpnGatewayList$member": null } }, "VpnGatewayIdStringList": { "base": null, "refs": { "DescribeVpnGatewaysRequest$VpnGatewayIds": "

        One or more virtual private gateway IDs.

        Default: Describes all your virtual private gateways.

        " } }, "VpnGatewayList": { "base": null, "refs": { "DescribeVpnGatewaysResult$VpnGateways": "

        Information about one or more virtual private gateways.

        " } }, "VpnState": { "base": null, "refs": { "VpnConnection$State": "

        The current state of the VPN connection.

        ", "VpnGateway$State": "

        The current state of the virtual private gateway.

        ", "VpnStaticRoute$State": "

        The current state of the static route.

        " } }, "VpnStaticRoute": { "base": "

        Describes a static route for a VPN connection.

        ", "refs": { "VpnStaticRouteList$member": null } }, "VpnStaticRouteList": { "base": null, "refs": { "VpnConnection$Routes": "

        The static routes associated with the VPN connection.

        " } }, "VpnStaticRouteSource": { "base": null, "refs": { "VpnStaticRoute$Source": "

        Indicates how the routes were provided.

        " } }, "ZoneNameStringList": { "base": null, "refs": { "DescribeAvailabilityZonesRequest$ZoneNames": "

        The names of one or more Availability Zones.

        " } }, "NewDhcpConfigurationList": { "base": null, "refs": { "CreateDhcpOptionsRequest$DhcpConfigurations": "

        A DHCP configuration option.

        " } }, "NewDhcpConfiguration": { "base": null, "refs": { "NewDhcpConfigurationList$member": null } }, "DhcpConfigurationValueList": { "base": null, "refs": { "DhcpConfiguration$Values": "

        One or more values for the DHCP option.

        " } }, "Blob": { "base": null, "refs": { "ImportKeyPairRequest$PublicKeyMaterial": "

        The public key. You must base64 encode the public key material before sending it to AWS.

        ", "S3Storage$UploadPolicy": "

        A Base64-encoded Amazon S3 upload policy that gives Amazon EC2 permission to upload items into Amazon S3 on your behalf.

        ", "BlobAttributeValue$Value": null } }, "BlobAttributeValue": { "base": null, "refs": { "ModifyInstanceAttributeRequest$UserData": "

        Changes the instance's user data to the specified value.

        " } }, "RequestSpotLaunchSpecification": { "base": "

        Describes the launch specification for an instance.

        ", "refs": { "RequestSpotInstancesRequest$LaunchSpecification": null } } } } aws-sdk-go-1.4.22/models/apis/ec2/2015-04-15/paginators-1.json000066400000000000000000000062501300374646400227110ustar00rootroot00000000000000{ "pagination": { "DescribeAccountAttributes": { "result_key": "AccountAttributes" }, "DescribeAddresses": { "result_key": "Addresses" }, "DescribeAvailabilityZones": { "result_key": "AvailabilityZones" }, "DescribeBundleTasks": { "result_key": "BundleTasks" }, "DescribeConversionTasks": { "result_key": "ConversionTasks" }, "DescribeCustomerGateways": { "result_key": "CustomerGateways" }, "DescribeDhcpOptions": { "result_key": "DhcpOptions" }, "DescribeExportTasks": { "result_key": "ExportTasks" }, "DescribeImages": { "result_key": "Images" }, "DescribeInstanceStatus": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "InstanceStatuses" }, "DescribeInstances": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "Reservations" }, "DescribeInternetGateways": { "result_key": "InternetGateways" }, "DescribeKeyPairs": { "result_key": "KeyPairs" }, "DescribeNetworkAcls": { "result_key": "NetworkAcls" }, "DescribeNetworkInterfaces": { "result_key": "NetworkInterfaces" }, "DescribePlacementGroups": { "result_key": "PlacementGroups" }, "DescribeRegions": { "result_key": "Regions" }, "DescribeReservedInstances": { "result_key": "ReservedInstances" }, "DescribeReservedInstancesListings": { "result_key": "ReservedInstancesListings" }, "DescribeReservedInstancesOfferings": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "ReservedInstancesOfferings" }, "DescribeReservedInstancesModifications": { "input_token": "NextToken", "output_token": "NextToken", "result_key": "ReservedInstancesModifications" }, "DescribeRouteTables": { "result_key": "RouteTables" }, "DescribeSecurityGroups": { "result_key": "SecurityGroups" }, "DescribeSnapshots": { "input_token": "NextToken", "output_token": "NextToken", "result_key": "Snapshots" }, "DescribeSpotInstanceRequests": { "result_key": "SpotInstanceRequests" }, "DescribeSpotPriceHistory": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "SpotPriceHistory" }, "DescribeSubnets": { "result_key": "Subnets" }, "DescribeTags": { "result_key": "Tags" }, "DescribeVolumeStatus": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "VolumeStatuses" }, "DescribeVolumes": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "Volumes" }, "DescribeVpcs": { "result_key": "Vpcs" }, "DescribeVpnConnections": { "result_key": "VpnConnections" }, "DescribeVpnGateways": { "result_key": "VpnGateways" } } } aws-sdk-go-1.4.22/models/apis/ec2/2015-04-15/waiters-2.json000066400000000000000000000302411300374646400222160ustar00rootroot00000000000000{ "version": 2, "waiters": { "InstanceExists": { "delay": 5, "maxAttempts": 40, "operation": "DescribeInstances", "acceptors": [ { "matcher": "status", "expected": 200, "state": "success" }, { "matcher": "error", "expected": "InvalidInstanceIDNotFound", "state": "retry" } ] }, "BundleTaskComplete": { "delay": 15, "operation": "DescribeBundleTasks", "maxAttempts": 40, "acceptors": [ { "expected": "complete", "matcher": "pathAll", "state": "success", "argument": "BundleTasks[].State" }, { "expected": "failed", "matcher": "pathAny", "state": "failure", "argument": "BundleTasks[].State" } ] }, "ConversionTaskCancelled": { "delay": 15, "operation": "DescribeConversionTasks", "maxAttempts": 40, "acceptors": [ { "expected": "cancelled", "matcher": "pathAll", "state": "success", "argument": "ConversionTasks[].State" } ] }, "ConversionTaskCompleted": { "delay": 15, "operation": "DescribeConversionTasks", "maxAttempts": 40, "acceptors": [ { "expected": "completed", "matcher": "pathAll", "state": "success", "argument": "ConversionTasks[].State" }, { "expected": "cancelled", "matcher": "pathAny", "state": "failure", "argument": "ConversionTasks[].State" }, { "expected": "cancelling", "matcher": "pathAny", "state": "failure", "argument": "ConversionTasks[].State" } ] }, "ConversionTaskDeleted": { "delay": 15, "operation": "DescribeConversionTasks", "maxAttempts": 40, "acceptors": [ { "expected": "deleted", "matcher": "pathAll", "state": "success", "argument": "ConversionTasks[].State" } ] }, "CustomerGatewayAvailable": { "delay": 15, "operation": "DescribeCustomerGateways", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "CustomerGateways[].State" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "CustomerGateways[].State" }, { "expected": "deleting", "matcher": "pathAny", "state": "failure", "argument": "CustomerGateways[].State" } ] }, "ExportTaskCancelled": { "delay": 15, "operation": "DescribeExportTasks", "maxAttempts": 40, "acceptors": [ { "expected": "cancelled", "matcher": "pathAll", "state": "success", "argument": "ExportTasks[].State" } ] }, "ExportTaskCompleted": { "delay": 15, "operation": "DescribeExportTasks", "maxAttempts": 40, "acceptors": [ { "expected": "completed", "matcher": "pathAll", "state": "success", "argument": "ExportTasks[].State" } ] }, "ImageAvailable": { "operation": "DescribeImages", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "Images[].State", "expected": "available" }, { "state": "failure", "matcher": "pathAny", "argument": "Images[].State", "expected": "failed" } ] }, "InstanceRunning": { "delay": 15, "operation": "DescribeInstances", "maxAttempts": 40, "acceptors": [ { "expected": "running", "matcher": "pathAll", "state": "success", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "shutting-down", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "terminated", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "stopping", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" } ] }, "InstanceStatusOk": { "operation": "DescribeInstanceStatus", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "InstanceStatuses[].InstanceStatus.Status", "expected": "ok" } ] }, "InstanceStopped": { "delay": 15, "operation": "DescribeInstances", "maxAttempts": 40, "acceptors": [ { "expected": "stopped", "matcher": "pathAll", "state": "success", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "pending", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "terminated", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" } ] }, "InstanceTerminated": { "delay": 15, "operation": "DescribeInstances", "maxAttempts": 40, "acceptors": [ { "expected": "terminated", "matcher": "pathAll", "state": "success", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "pending", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "stopping", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" } ] }, "KeyPairExists": { "operation": "DescribeKeyPairs", "delay": 5, "maxAttempts": 6, "acceptors": [ { "expected": true, "matcher": "pathAll", "state": "success", "argument": "length(KeyPairs[].KeyName) > `0`" }, { "expected": "InvalidKeyPairNotFound", "matcher": "error", "state": "retry" } ] }, "NetworkInterfaceAvailable": { "operation": "DescribeNetworkInterfaces", "delay": 20, "maxAttempts": 10, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "NetworkInterfaces[].Status" }, { "expected": "InvalidNetworkInterfaceIDNotFound", "matcher": "error", "state": "failure" } ] }, "PasswordDataAvailable": { "operation": "GetPasswordData", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "path", "argument": "length(PasswordData) > `0`", "expected": true } ] }, "SnapshotCompleted": { "delay": 15, "operation": "DescribeSnapshots", "maxAttempts": 40, "acceptors": [ { "expected": "completed", "matcher": "pathAll", "state": "success", "argument": "Snapshots[].State" } ] }, "SpotInstanceRequestFulfilled": { "operation": "DescribeSpotInstanceRequests", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "SpotInstanceRequests[].Status.Code", "expected": "fulfilled" }, { "state": "failure", "matcher": "pathAny", "argument": "SpotInstanceRequests[].Status.Code", "expected": "schedule-expired" }, { "state": "failure", "matcher": "pathAny", "argument": "SpotInstanceRequests[].Status.Code", "expected": "canceled-before-fulfillment" }, { "state": "failure", "matcher": "pathAny", "argument": "SpotInstanceRequests[].Status.Code", "expected": "bad-parameters" }, { "state": "failure", "matcher": "pathAny", "argument": "SpotInstanceRequests[].Status.Code", "expected": "system-error" } ] }, "SubnetAvailable": { "delay": 15, "operation": "DescribeSubnets", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "Subnets[].State" } ] }, "SystemStatusOk": { "operation": "DescribeInstanceStatus", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "InstanceStatuses[].SystemStatus.Status", "expected": "ok" } ] }, "VolumeAvailable": { "delay": 15, "operation": "DescribeVolumes", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "Volumes[].State" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "Volumes[].State" } ] }, "VolumeDeleted": { "delay": 15, "operation": "DescribeVolumes", "maxAttempts": 40, "acceptors": [ { "expected": "deleted", "matcher": "pathAll", "state": "success", "argument": "Volumes[].State" }, { "matcher": "error", "expected": "InvalidVolumeNotFound", "state": "success" } ] }, "VolumeInUse": { "delay": 15, "operation": "DescribeVolumes", "maxAttempts": 40, "acceptors": [ { "expected": "in-use", "matcher": "pathAll", "state": "success", "argument": "Volumes[].State" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "Volumes[].State" } ] }, "VpcAvailable": { "delay": 15, "operation": "DescribeVpcs", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "Vpcs[].State" } ] }, "VpnConnectionAvailable": { "delay": 15, "operation": "DescribeVpnConnections", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "VpnConnections[].State" }, { "expected": "deleting", "matcher": "pathAny", "state": "failure", "argument": "VpnConnections[].State" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "VpnConnections[].State" } ] }, "VpnConnectionDeleted": { "delay": 15, "operation": "DescribeVpnConnections", "maxAttempts": 40, "acceptors": [ { "expected": "deleted", "matcher": "pathAll", "state": "success", "argument": "VpnConnections[].State" }, { "expected": "pending", "matcher": "pathAny", "state": "failure", "argument": "VpnConnections[].State" } ] } } } aws-sdk-go-1.4.22/models/apis/ec2/2015-10-01/000077500000000000000000000000001300374646400174765ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/ec2/2015-10-01/api-2.json000066400000000000000000012211441300374646400213060ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-10-01", "endpointPrefix":"ec2", "protocol":"ec2", "serviceAbbreviation":"Amazon EC2", "serviceFullName":"Amazon Elastic Compute Cloud", "signatureVersion":"v4", "xmlNamespace":"http://ec2.amazonaws.com/doc/2015-10-01" }, "operations":{ "AcceptVpcPeeringConnection":{ "name":"AcceptVpcPeeringConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AcceptVpcPeeringConnectionRequest"}, "output":{"shape":"AcceptVpcPeeringConnectionResult"} }, "AllocateAddress":{ "name":"AllocateAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AllocateAddressRequest"}, "output":{"shape":"AllocateAddressResult"} }, "AllocateHosts":{ "name":"AllocateHosts", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AllocateHostsRequest"}, "output":{"shape":"AllocateHostsResult"} }, "AssignPrivateIpAddresses":{ "name":"AssignPrivateIpAddresses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssignPrivateIpAddressesRequest"} }, "AssociateAddress":{ "name":"AssociateAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssociateAddressRequest"}, "output":{"shape":"AssociateAddressResult"} }, "AssociateDhcpOptions":{ "name":"AssociateDhcpOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssociateDhcpOptionsRequest"} }, "AssociateRouteTable":{ "name":"AssociateRouteTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssociateRouteTableRequest"}, "output":{"shape":"AssociateRouteTableResult"} }, "AttachClassicLinkVpc":{ "name":"AttachClassicLinkVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachClassicLinkVpcRequest"}, "output":{"shape":"AttachClassicLinkVpcResult"} }, "AttachInternetGateway":{ "name":"AttachInternetGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachInternetGatewayRequest"} }, "AttachNetworkInterface":{ "name":"AttachNetworkInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachNetworkInterfaceRequest"}, "output":{"shape":"AttachNetworkInterfaceResult"} }, "AttachVolume":{ "name":"AttachVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachVolumeRequest"}, "output":{"shape":"VolumeAttachment"} }, "AttachVpnGateway":{ "name":"AttachVpnGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachVpnGatewayRequest"}, "output":{"shape":"AttachVpnGatewayResult"} }, "AuthorizeSecurityGroupEgress":{ "name":"AuthorizeSecurityGroupEgress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AuthorizeSecurityGroupEgressRequest"} }, "AuthorizeSecurityGroupIngress":{ "name":"AuthorizeSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AuthorizeSecurityGroupIngressRequest"} }, "BundleInstance":{ "name":"BundleInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BundleInstanceRequest"}, "output":{"shape":"BundleInstanceResult"} }, "CancelBundleTask":{ "name":"CancelBundleTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelBundleTaskRequest"}, "output":{"shape":"CancelBundleTaskResult"} }, "CancelConversionTask":{ "name":"CancelConversionTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelConversionRequest"} }, "CancelExportTask":{ "name":"CancelExportTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelExportTaskRequest"} }, "CancelImportTask":{ "name":"CancelImportTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelImportTaskRequest"}, "output":{"shape":"CancelImportTaskResult"} }, "CancelReservedInstancesListing":{ "name":"CancelReservedInstancesListing", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelReservedInstancesListingRequest"}, "output":{"shape":"CancelReservedInstancesListingResult"} }, "CancelSpotFleetRequests":{ "name":"CancelSpotFleetRequests", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelSpotFleetRequestsRequest"}, "output":{"shape":"CancelSpotFleetRequestsResponse"} }, "CancelSpotInstanceRequests":{ "name":"CancelSpotInstanceRequests", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelSpotInstanceRequestsRequest"}, "output":{"shape":"CancelSpotInstanceRequestsResult"} }, "ConfirmProductInstance":{ "name":"ConfirmProductInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ConfirmProductInstanceRequest"}, "output":{"shape":"ConfirmProductInstanceResult"} }, "CopyImage":{ "name":"CopyImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopyImageRequest"}, "output":{"shape":"CopyImageResult"} }, "CopySnapshot":{ "name":"CopySnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopySnapshotRequest"}, "output":{"shape":"CopySnapshotResult"} }, "CreateCustomerGateway":{ "name":"CreateCustomerGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateCustomerGatewayRequest"}, "output":{"shape":"CreateCustomerGatewayResult"} }, "CreateDhcpOptions":{ "name":"CreateDhcpOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDhcpOptionsRequest"}, "output":{"shape":"CreateDhcpOptionsResult"} }, "CreateFlowLogs":{ "name":"CreateFlowLogs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateFlowLogsRequest"}, "output":{"shape":"CreateFlowLogsResult"} }, "CreateImage":{ "name":"CreateImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateImageRequest"}, "output":{"shape":"CreateImageResult"} }, "CreateInstanceExportTask":{ "name":"CreateInstanceExportTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateInstanceExportTaskRequest"}, "output":{"shape":"CreateInstanceExportTaskResult"} }, "CreateInternetGateway":{ "name":"CreateInternetGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateInternetGatewayRequest"}, "output":{"shape":"CreateInternetGatewayResult"} }, "CreateKeyPair":{ "name":"CreateKeyPair", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateKeyPairRequest"}, "output":{"shape":"KeyPair"} }, "CreateNatGateway":{ "name":"CreateNatGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateNatGatewayRequest"}, "output":{"shape":"CreateNatGatewayResult"} }, "CreateNetworkAcl":{ "name":"CreateNetworkAcl", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateNetworkAclRequest"}, "output":{"shape":"CreateNetworkAclResult"} }, "CreateNetworkAclEntry":{ "name":"CreateNetworkAclEntry", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateNetworkAclEntryRequest"} }, "CreateNetworkInterface":{ "name":"CreateNetworkInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateNetworkInterfaceRequest"}, "output":{"shape":"CreateNetworkInterfaceResult"} }, "CreatePlacementGroup":{ "name":"CreatePlacementGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreatePlacementGroupRequest"} }, "CreateReservedInstancesListing":{ "name":"CreateReservedInstancesListing", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateReservedInstancesListingRequest"}, "output":{"shape":"CreateReservedInstancesListingResult"} }, "CreateRoute":{ "name":"CreateRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateRouteRequest"}, "output":{"shape":"CreateRouteResult"} }, "CreateRouteTable":{ "name":"CreateRouteTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateRouteTableRequest"}, "output":{"shape":"CreateRouteTableResult"} }, "CreateSecurityGroup":{ "name":"CreateSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSecurityGroupRequest"}, "output":{"shape":"CreateSecurityGroupResult"} }, "CreateSnapshot":{ "name":"CreateSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSnapshotRequest"}, "output":{"shape":"Snapshot"} }, "CreateSpotDatafeedSubscription":{ "name":"CreateSpotDatafeedSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSpotDatafeedSubscriptionRequest"}, "output":{"shape":"CreateSpotDatafeedSubscriptionResult"} }, "CreateSubnet":{ "name":"CreateSubnet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSubnetRequest"}, "output":{"shape":"CreateSubnetResult"} }, "CreateTags":{ "name":"CreateTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateTagsRequest"} }, "CreateVolume":{ "name":"CreateVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVolumeRequest"}, "output":{"shape":"Volume"} }, "CreateVpc":{ "name":"CreateVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpcRequest"}, "output":{"shape":"CreateVpcResult"} }, "CreateVpcEndpoint":{ "name":"CreateVpcEndpoint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpcEndpointRequest"}, "output":{"shape":"CreateVpcEndpointResult"} }, "CreateVpcPeeringConnection":{ "name":"CreateVpcPeeringConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpcPeeringConnectionRequest"}, "output":{"shape":"CreateVpcPeeringConnectionResult"} }, "CreateVpnConnection":{ "name":"CreateVpnConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpnConnectionRequest"}, "output":{"shape":"CreateVpnConnectionResult"} }, "CreateVpnConnectionRoute":{ "name":"CreateVpnConnectionRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpnConnectionRouteRequest"} }, "CreateVpnGateway":{ "name":"CreateVpnGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpnGatewayRequest"}, "output":{"shape":"CreateVpnGatewayResult"} }, "DeleteCustomerGateway":{ "name":"DeleteCustomerGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteCustomerGatewayRequest"} }, "DeleteDhcpOptions":{ "name":"DeleteDhcpOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDhcpOptionsRequest"} }, "DeleteFlowLogs":{ "name":"DeleteFlowLogs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteFlowLogsRequest"}, "output":{"shape":"DeleteFlowLogsResult"} }, "DeleteInternetGateway":{ "name":"DeleteInternetGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteInternetGatewayRequest"} }, "DeleteKeyPair":{ "name":"DeleteKeyPair", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteKeyPairRequest"} }, "DeleteNatGateway":{ "name":"DeleteNatGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteNatGatewayRequest"}, "output":{"shape":"DeleteNatGatewayResult"} }, "DeleteNetworkAcl":{ "name":"DeleteNetworkAcl", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteNetworkAclRequest"} }, "DeleteNetworkAclEntry":{ "name":"DeleteNetworkAclEntry", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteNetworkAclEntryRequest"} }, "DeleteNetworkInterface":{ "name":"DeleteNetworkInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteNetworkInterfaceRequest"} }, "DeletePlacementGroup":{ "name":"DeletePlacementGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeletePlacementGroupRequest"} }, "DeleteRoute":{ "name":"DeleteRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRouteRequest"} }, "DeleteRouteTable":{ "name":"DeleteRouteTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRouteTableRequest"} }, "DeleteSecurityGroup":{ "name":"DeleteSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSecurityGroupRequest"} }, "DeleteSnapshot":{ "name":"DeleteSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSnapshotRequest"} }, "DeleteSpotDatafeedSubscription":{ "name":"DeleteSpotDatafeedSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSpotDatafeedSubscriptionRequest"} }, "DeleteSubnet":{ "name":"DeleteSubnet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSubnetRequest"} }, "DeleteTags":{ "name":"DeleteTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteTagsRequest"} }, "DeleteVolume":{ "name":"DeleteVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVolumeRequest"} }, "DeleteVpc":{ "name":"DeleteVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpcRequest"} }, "DeleteVpcEndpoints":{ "name":"DeleteVpcEndpoints", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpcEndpointsRequest"}, "output":{"shape":"DeleteVpcEndpointsResult"} }, "DeleteVpcPeeringConnection":{ "name":"DeleteVpcPeeringConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpcPeeringConnectionRequest"}, "output":{"shape":"DeleteVpcPeeringConnectionResult"} }, "DeleteVpnConnection":{ "name":"DeleteVpnConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpnConnectionRequest"} }, "DeleteVpnConnectionRoute":{ "name":"DeleteVpnConnectionRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpnConnectionRouteRequest"} }, "DeleteVpnGateway":{ "name":"DeleteVpnGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpnGatewayRequest"} }, "DeregisterImage":{ "name":"DeregisterImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeregisterImageRequest"} }, "DescribeAccountAttributes":{ "name":"DescribeAccountAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAccountAttributesRequest"}, "output":{"shape":"DescribeAccountAttributesResult"} }, "DescribeAddresses":{ "name":"DescribeAddresses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAddressesRequest"}, "output":{"shape":"DescribeAddressesResult"} }, "DescribeAvailabilityZones":{ "name":"DescribeAvailabilityZones", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAvailabilityZonesRequest"}, "output":{"shape":"DescribeAvailabilityZonesResult"} }, "DescribeBundleTasks":{ "name":"DescribeBundleTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeBundleTasksRequest"}, "output":{"shape":"DescribeBundleTasksResult"} }, "DescribeClassicLinkInstances":{ "name":"DescribeClassicLinkInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeClassicLinkInstancesRequest"}, "output":{"shape":"DescribeClassicLinkInstancesResult"} }, "DescribeConversionTasks":{ "name":"DescribeConversionTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeConversionTasksRequest"}, "output":{"shape":"DescribeConversionTasksResult"} }, "DescribeCustomerGateways":{ "name":"DescribeCustomerGateways", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeCustomerGatewaysRequest"}, "output":{"shape":"DescribeCustomerGatewaysResult"} }, "DescribeDhcpOptions":{ "name":"DescribeDhcpOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDhcpOptionsRequest"}, "output":{"shape":"DescribeDhcpOptionsResult"} }, "DescribeExportTasks":{ "name":"DescribeExportTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeExportTasksRequest"}, "output":{"shape":"DescribeExportTasksResult"} }, "DescribeFlowLogs":{ "name":"DescribeFlowLogs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeFlowLogsRequest"}, "output":{"shape":"DescribeFlowLogsResult"} }, "DescribeHosts":{ "name":"DescribeHosts", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeHostsRequest"}, "output":{"shape":"DescribeHostsResult"} }, "DescribeIdFormat":{ "name":"DescribeIdFormat", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeIdFormatRequest"}, "output":{"shape":"DescribeIdFormatResult"} }, "DescribeImageAttribute":{ "name":"DescribeImageAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeImageAttributeRequest"}, "output":{"shape":"ImageAttribute"} }, "DescribeImages":{ "name":"DescribeImages", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeImagesRequest"}, "output":{"shape":"DescribeImagesResult"} }, "DescribeImportImageTasks":{ "name":"DescribeImportImageTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeImportImageTasksRequest"}, "output":{"shape":"DescribeImportImageTasksResult"} }, "DescribeImportSnapshotTasks":{ "name":"DescribeImportSnapshotTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeImportSnapshotTasksRequest"}, "output":{"shape":"DescribeImportSnapshotTasksResult"} }, "DescribeInstanceAttribute":{ "name":"DescribeInstanceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInstanceAttributeRequest"}, "output":{"shape":"InstanceAttribute"} }, "DescribeInstanceStatus":{ "name":"DescribeInstanceStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInstanceStatusRequest"}, "output":{"shape":"DescribeInstanceStatusResult"} }, "DescribeInstances":{ "name":"DescribeInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInstancesRequest"}, "output":{"shape":"DescribeInstancesResult"} }, "DescribeInternetGateways":{ "name":"DescribeInternetGateways", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInternetGatewaysRequest"}, "output":{"shape":"DescribeInternetGatewaysResult"} }, "DescribeKeyPairs":{ "name":"DescribeKeyPairs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeKeyPairsRequest"}, "output":{"shape":"DescribeKeyPairsResult"} }, "DescribeMovingAddresses":{ "name":"DescribeMovingAddresses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeMovingAddressesRequest"}, "output":{"shape":"DescribeMovingAddressesResult"} }, "DescribeNatGateways":{ "name":"DescribeNatGateways", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeNatGatewaysRequest"}, "output":{"shape":"DescribeNatGatewaysResult"} }, "DescribeNetworkAcls":{ "name":"DescribeNetworkAcls", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeNetworkAclsRequest"}, "output":{"shape":"DescribeNetworkAclsResult"} }, "DescribeNetworkInterfaceAttribute":{ "name":"DescribeNetworkInterfaceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeNetworkInterfaceAttributeRequest"}, "output":{"shape":"DescribeNetworkInterfaceAttributeResult"} }, "DescribeNetworkInterfaces":{ "name":"DescribeNetworkInterfaces", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeNetworkInterfacesRequest"}, "output":{"shape":"DescribeNetworkInterfacesResult"} }, "DescribePlacementGroups":{ "name":"DescribePlacementGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribePlacementGroupsRequest"}, "output":{"shape":"DescribePlacementGroupsResult"} }, "DescribePrefixLists":{ "name":"DescribePrefixLists", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribePrefixListsRequest"}, "output":{"shape":"DescribePrefixListsResult"} }, "DescribeRegions":{ "name":"DescribeRegions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRegionsRequest"}, "output":{"shape":"DescribeRegionsResult"} }, "DescribeReservedInstances":{ "name":"DescribeReservedInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedInstancesRequest"}, "output":{"shape":"DescribeReservedInstancesResult"} }, "DescribeReservedInstancesListings":{ "name":"DescribeReservedInstancesListings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedInstancesListingsRequest"}, "output":{"shape":"DescribeReservedInstancesListingsResult"} }, "DescribeReservedInstancesModifications":{ "name":"DescribeReservedInstancesModifications", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedInstancesModificationsRequest"}, "output":{"shape":"DescribeReservedInstancesModificationsResult"} }, "DescribeReservedInstancesOfferings":{ "name":"DescribeReservedInstancesOfferings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedInstancesOfferingsRequest"}, "output":{"shape":"DescribeReservedInstancesOfferingsResult"} }, "DescribeRouteTables":{ "name":"DescribeRouteTables", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRouteTablesRequest"}, "output":{"shape":"DescribeRouteTablesResult"} }, "DescribeScheduledInstanceAvailability":{ "name":"DescribeScheduledInstanceAvailability", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeScheduledInstanceAvailabilityRequest"}, "output":{"shape":"DescribeScheduledInstanceAvailabilityResult"} }, "DescribeScheduledInstances":{ "name":"DescribeScheduledInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeScheduledInstancesRequest"}, "output":{"shape":"DescribeScheduledInstancesResult"} }, "DescribeSecurityGroupReferences":{ "name":"DescribeSecurityGroupReferences", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSecurityGroupReferencesRequest"}, "output":{"shape":"DescribeSecurityGroupReferencesResult"} }, "DescribeSecurityGroups":{ "name":"DescribeSecurityGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSecurityGroupsRequest"}, "output":{"shape":"DescribeSecurityGroupsResult"} }, "DescribeSnapshotAttribute":{ "name":"DescribeSnapshotAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSnapshotAttributeRequest"}, "output":{"shape":"DescribeSnapshotAttributeResult"} }, "DescribeSnapshots":{ "name":"DescribeSnapshots", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSnapshotsRequest"}, "output":{"shape":"DescribeSnapshotsResult"} }, "DescribeSpotDatafeedSubscription":{ "name":"DescribeSpotDatafeedSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotDatafeedSubscriptionRequest"}, "output":{"shape":"DescribeSpotDatafeedSubscriptionResult"} }, "DescribeSpotFleetInstances":{ "name":"DescribeSpotFleetInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotFleetInstancesRequest"}, "output":{"shape":"DescribeSpotFleetInstancesResponse"} }, "DescribeSpotFleetRequestHistory":{ "name":"DescribeSpotFleetRequestHistory", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotFleetRequestHistoryRequest"}, "output":{"shape":"DescribeSpotFleetRequestHistoryResponse"} }, "DescribeSpotFleetRequests":{ "name":"DescribeSpotFleetRequests", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotFleetRequestsRequest"}, "output":{"shape":"DescribeSpotFleetRequestsResponse"} }, "DescribeSpotInstanceRequests":{ "name":"DescribeSpotInstanceRequests", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotInstanceRequestsRequest"}, "output":{"shape":"DescribeSpotInstanceRequestsResult"} }, "DescribeSpotPriceHistory":{ "name":"DescribeSpotPriceHistory", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotPriceHistoryRequest"}, "output":{"shape":"DescribeSpotPriceHistoryResult"} }, "DescribeStaleSecurityGroups":{ "name":"DescribeStaleSecurityGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeStaleSecurityGroupsRequest"}, "output":{"shape":"DescribeStaleSecurityGroupsResult"} }, "DescribeSubnets":{ "name":"DescribeSubnets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSubnetsRequest"}, "output":{"shape":"DescribeSubnetsResult"} }, "DescribeTags":{ "name":"DescribeTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTagsRequest"}, "output":{"shape":"DescribeTagsResult"} }, "DescribeVolumeAttribute":{ "name":"DescribeVolumeAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVolumeAttributeRequest"}, "output":{"shape":"DescribeVolumeAttributeResult"} }, "DescribeVolumeStatus":{ "name":"DescribeVolumeStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVolumeStatusRequest"}, "output":{"shape":"DescribeVolumeStatusResult"} }, "DescribeVolumes":{ "name":"DescribeVolumes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVolumesRequest"}, "output":{"shape":"DescribeVolumesResult"} }, "DescribeVpcAttribute":{ "name":"DescribeVpcAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcAttributeRequest"}, "output":{"shape":"DescribeVpcAttributeResult"} }, "DescribeVpcClassicLink":{ "name":"DescribeVpcClassicLink", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcClassicLinkRequest"}, "output":{"shape":"DescribeVpcClassicLinkResult"} }, "DescribeVpcClassicLinkDnsSupport":{ "name":"DescribeVpcClassicLinkDnsSupport", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcClassicLinkDnsSupportRequest"}, "output":{"shape":"DescribeVpcClassicLinkDnsSupportResult"} }, "DescribeVpcEndpointServices":{ "name":"DescribeVpcEndpointServices", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcEndpointServicesRequest"}, "output":{"shape":"DescribeVpcEndpointServicesResult"} }, "DescribeVpcEndpoints":{ "name":"DescribeVpcEndpoints", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcEndpointsRequest"}, "output":{"shape":"DescribeVpcEndpointsResult"} }, "DescribeVpcPeeringConnections":{ "name":"DescribeVpcPeeringConnections", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcPeeringConnectionsRequest"}, "output":{"shape":"DescribeVpcPeeringConnectionsResult"} }, "DescribeVpcs":{ "name":"DescribeVpcs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcsRequest"}, "output":{"shape":"DescribeVpcsResult"} }, "DescribeVpnConnections":{ "name":"DescribeVpnConnections", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpnConnectionsRequest"}, "output":{"shape":"DescribeVpnConnectionsResult"} }, "DescribeVpnGateways":{ "name":"DescribeVpnGateways", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpnGatewaysRequest"}, "output":{"shape":"DescribeVpnGatewaysResult"} }, "DetachClassicLinkVpc":{ "name":"DetachClassicLinkVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachClassicLinkVpcRequest"}, "output":{"shape":"DetachClassicLinkVpcResult"} }, "DetachInternetGateway":{ "name":"DetachInternetGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachInternetGatewayRequest"} }, "DetachNetworkInterface":{ "name":"DetachNetworkInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachNetworkInterfaceRequest"} }, "DetachVolume":{ "name":"DetachVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachVolumeRequest"}, "output":{"shape":"VolumeAttachment"} }, "DetachVpnGateway":{ "name":"DetachVpnGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachVpnGatewayRequest"} }, "DisableVgwRoutePropagation":{ "name":"DisableVgwRoutePropagation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableVgwRoutePropagationRequest"} }, "DisableVpcClassicLink":{ "name":"DisableVpcClassicLink", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableVpcClassicLinkRequest"}, "output":{"shape":"DisableVpcClassicLinkResult"} }, "DisableVpcClassicLinkDnsSupport":{ "name":"DisableVpcClassicLinkDnsSupport", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableVpcClassicLinkDnsSupportRequest"}, "output":{"shape":"DisableVpcClassicLinkDnsSupportResult"} }, "DisassociateAddress":{ "name":"DisassociateAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisassociateAddressRequest"} }, "DisassociateRouteTable":{ "name":"DisassociateRouteTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisassociateRouteTableRequest"} }, "EnableVgwRoutePropagation":{ "name":"EnableVgwRoutePropagation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableVgwRoutePropagationRequest"} }, "EnableVolumeIO":{ "name":"EnableVolumeIO", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableVolumeIORequest"} }, "EnableVpcClassicLink":{ "name":"EnableVpcClassicLink", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableVpcClassicLinkRequest"}, "output":{"shape":"EnableVpcClassicLinkResult"} }, "EnableVpcClassicLinkDnsSupport":{ "name":"EnableVpcClassicLinkDnsSupport", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableVpcClassicLinkDnsSupportRequest"}, "output":{"shape":"EnableVpcClassicLinkDnsSupportResult"} }, "GetConsoleOutput":{ "name":"GetConsoleOutput", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetConsoleOutputRequest"}, "output":{"shape":"GetConsoleOutputResult"} }, "GetConsoleScreenshot":{ "name":"GetConsoleScreenshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetConsoleScreenshotRequest"}, "output":{"shape":"GetConsoleScreenshotResult"} }, "GetPasswordData":{ "name":"GetPasswordData", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetPasswordDataRequest"}, "output":{"shape":"GetPasswordDataResult"} }, "ImportImage":{ "name":"ImportImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportImageRequest"}, "output":{"shape":"ImportImageResult"} }, "ImportInstance":{ "name":"ImportInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportInstanceRequest"}, "output":{"shape":"ImportInstanceResult"} }, "ImportKeyPair":{ "name":"ImportKeyPair", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportKeyPairRequest"}, "output":{"shape":"ImportKeyPairResult"} }, "ImportSnapshot":{ "name":"ImportSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportSnapshotRequest"}, "output":{"shape":"ImportSnapshotResult"} }, "ImportVolume":{ "name":"ImportVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportVolumeRequest"}, "output":{"shape":"ImportVolumeResult"} }, "ModifyHosts":{ "name":"ModifyHosts", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyHostsRequest"}, "output":{"shape":"ModifyHostsResult"} }, "ModifyIdFormat":{ "name":"ModifyIdFormat", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyIdFormatRequest"} }, "ModifyImageAttribute":{ "name":"ModifyImageAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyImageAttributeRequest"} }, "ModifyInstanceAttribute":{ "name":"ModifyInstanceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyInstanceAttributeRequest"} }, "ModifyInstancePlacement":{ "name":"ModifyInstancePlacement", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyInstancePlacementRequest"}, "output":{"shape":"ModifyInstancePlacementResult"} }, "ModifyNetworkInterfaceAttribute":{ "name":"ModifyNetworkInterfaceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyNetworkInterfaceAttributeRequest"} }, "ModifyReservedInstances":{ "name":"ModifyReservedInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyReservedInstancesRequest"}, "output":{"shape":"ModifyReservedInstancesResult"} }, "ModifySnapshotAttribute":{ "name":"ModifySnapshotAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifySnapshotAttributeRequest"} }, "ModifySpotFleetRequest":{ "name":"ModifySpotFleetRequest", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifySpotFleetRequestRequest"}, "output":{"shape":"ModifySpotFleetRequestResponse"} }, "ModifySubnetAttribute":{ "name":"ModifySubnetAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifySubnetAttributeRequest"} }, "ModifyVolumeAttribute":{ "name":"ModifyVolumeAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyVolumeAttributeRequest"} }, "ModifyVpcAttribute":{ "name":"ModifyVpcAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyVpcAttributeRequest"} }, "ModifyVpcEndpoint":{ "name":"ModifyVpcEndpoint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyVpcEndpointRequest"}, "output":{"shape":"ModifyVpcEndpointResult"} }, "ModifyVpcPeeringConnectionOptions":{ "name":"ModifyVpcPeeringConnectionOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyVpcPeeringConnectionOptionsRequest"}, "output":{"shape":"ModifyVpcPeeringConnectionOptionsResult"} }, "MonitorInstances":{ "name":"MonitorInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"MonitorInstancesRequest"}, "output":{"shape":"MonitorInstancesResult"} }, "MoveAddressToVpc":{ "name":"MoveAddressToVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"MoveAddressToVpcRequest"}, "output":{"shape":"MoveAddressToVpcResult"} }, "PurchaseReservedInstancesOffering":{ "name":"PurchaseReservedInstancesOffering", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PurchaseReservedInstancesOfferingRequest"}, "output":{"shape":"PurchaseReservedInstancesOfferingResult"} }, "PurchaseScheduledInstances":{ "name":"PurchaseScheduledInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PurchaseScheduledInstancesRequest"}, "output":{"shape":"PurchaseScheduledInstancesResult"} }, "RebootInstances":{ "name":"RebootInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RebootInstancesRequest"} }, "RegisterImage":{ "name":"RegisterImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterImageRequest"}, "output":{"shape":"RegisterImageResult"} }, "RejectVpcPeeringConnection":{ "name":"RejectVpcPeeringConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RejectVpcPeeringConnectionRequest"}, "output":{"shape":"RejectVpcPeeringConnectionResult"} }, "ReleaseAddress":{ "name":"ReleaseAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReleaseAddressRequest"} }, "ReleaseHosts":{ "name":"ReleaseHosts", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReleaseHostsRequest"}, "output":{"shape":"ReleaseHostsResult"} }, "ReplaceNetworkAclAssociation":{ "name":"ReplaceNetworkAclAssociation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReplaceNetworkAclAssociationRequest"}, "output":{"shape":"ReplaceNetworkAclAssociationResult"} }, "ReplaceNetworkAclEntry":{ "name":"ReplaceNetworkAclEntry", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReplaceNetworkAclEntryRequest"} }, "ReplaceRoute":{ "name":"ReplaceRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReplaceRouteRequest"} }, "ReplaceRouteTableAssociation":{ "name":"ReplaceRouteTableAssociation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReplaceRouteTableAssociationRequest"}, "output":{"shape":"ReplaceRouteTableAssociationResult"} }, "ReportInstanceStatus":{ "name":"ReportInstanceStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReportInstanceStatusRequest"} }, "RequestSpotFleet":{ "name":"RequestSpotFleet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RequestSpotFleetRequest"}, "output":{"shape":"RequestSpotFleetResponse"} }, "RequestSpotInstances":{ "name":"RequestSpotInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RequestSpotInstancesRequest"}, "output":{"shape":"RequestSpotInstancesResult"} }, "ResetImageAttribute":{ "name":"ResetImageAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetImageAttributeRequest"} }, "ResetInstanceAttribute":{ "name":"ResetInstanceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetInstanceAttributeRequest"} }, "ResetNetworkInterfaceAttribute":{ "name":"ResetNetworkInterfaceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetNetworkInterfaceAttributeRequest"} }, "ResetSnapshotAttribute":{ "name":"ResetSnapshotAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetSnapshotAttributeRequest"} }, "RestoreAddressToClassic":{ "name":"RestoreAddressToClassic", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreAddressToClassicRequest"}, "output":{"shape":"RestoreAddressToClassicResult"} }, "RevokeSecurityGroupEgress":{ "name":"RevokeSecurityGroupEgress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RevokeSecurityGroupEgressRequest"} }, "RevokeSecurityGroupIngress":{ "name":"RevokeSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RevokeSecurityGroupIngressRequest"} }, "RunInstances":{ "name":"RunInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RunInstancesRequest"}, "output":{"shape":"Reservation"} }, "RunScheduledInstances":{ "name":"RunScheduledInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RunScheduledInstancesRequest"}, "output":{"shape":"RunScheduledInstancesResult"} }, "StartInstances":{ "name":"StartInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartInstancesRequest"}, "output":{"shape":"StartInstancesResult"} }, "StopInstances":{ "name":"StopInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopInstancesRequest"}, "output":{"shape":"StopInstancesResult"} }, "TerminateInstances":{ "name":"TerminateInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"TerminateInstancesRequest"}, "output":{"shape":"TerminateInstancesResult"} }, "UnassignPrivateIpAddresses":{ "name":"UnassignPrivateIpAddresses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UnassignPrivateIpAddressesRequest"} }, "UnmonitorInstances":{ "name":"UnmonitorInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UnmonitorInstancesRequest"}, "output":{"shape":"UnmonitorInstancesResult"} } }, "shapes":{ "AcceptVpcPeeringConnectionRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "AcceptVpcPeeringConnectionResult":{ "type":"structure", "members":{ "VpcPeeringConnection":{ "shape":"VpcPeeringConnection", "locationName":"vpcPeeringConnection" } } }, "AccountAttribute":{ "type":"structure", "members":{ "AttributeName":{ "shape":"String", "locationName":"attributeName" }, "AttributeValues":{ "shape":"AccountAttributeValueList", "locationName":"attributeValueSet" } } }, "AccountAttributeList":{ "type":"list", "member":{ "shape":"AccountAttribute", "locationName":"item" } }, "AccountAttributeName":{ "type":"string", "enum":[ "supported-platforms", "default-vpc" ] }, "AccountAttributeNameStringList":{ "type":"list", "member":{ "shape":"AccountAttributeName", "locationName":"attributeName" } }, "AccountAttributeValue":{ "type":"structure", "members":{ "AttributeValue":{ "shape":"String", "locationName":"attributeValue" } } }, "AccountAttributeValueList":{ "type":"list", "member":{ "shape":"AccountAttributeValue", "locationName":"item" } }, "ActiveInstance":{ "type":"structure", "members":{ "InstanceType":{ "shape":"String", "locationName":"instanceType" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "SpotInstanceRequestId":{ "shape":"String", "locationName":"spotInstanceRequestId" } } }, "ActiveInstanceSet":{ "type":"list", "member":{ "shape":"ActiveInstance", "locationName":"item" } }, "Address":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "AllocationId":{ "shape":"String", "locationName":"allocationId" }, "AssociationId":{ "shape":"String", "locationName":"associationId" }, "Domain":{ "shape":"DomainType", "locationName":"domain" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "NetworkInterfaceOwnerId":{ "shape":"String", "locationName":"networkInterfaceOwnerId" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" } } }, "AddressList":{ "type":"list", "member":{ "shape":"Address", "locationName":"item" } }, "Affinity":{ "type":"string", "enum":[ "default", "host" ] }, "AllocateAddressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Domain":{"shape":"DomainType"} } }, "AllocateAddressResult":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "Domain":{ "shape":"DomainType", "locationName":"domain" }, "AllocationId":{ "shape":"String", "locationName":"allocationId" } } }, "AllocateHostsRequest":{ "type":"structure", "required":[ "InstanceType", "Quantity", "AvailabilityZone" ], "members":{ "AutoPlacement":{ "shape":"AutoPlacement", "locationName":"autoPlacement" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "InstanceType":{ "shape":"String", "locationName":"instanceType" }, "Quantity":{ "shape":"Integer", "locationName":"quantity" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" } } }, "AllocateHostsResult":{ "type":"structure", "members":{ "HostIds":{ "shape":"ResponseHostIdList", "locationName":"hostIdSet" } } }, "AllocationIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"AllocationId" } }, "AllocationState":{ "type":"string", "enum":[ "available", "under-assessment", "permanent-failure", "released", "released-permanent-failure" ] }, "AllocationStrategy":{ "type":"string", "enum":[ "lowestPrice", "diversified" ] }, "ArchitectureValues":{ "type":"string", "enum":[ "i386", "x86_64" ] }, "AssignPrivateIpAddressesRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "PrivateIpAddresses":{ "shape":"PrivateIpAddressStringList", "locationName":"privateIpAddress" }, "SecondaryPrivateIpAddressCount":{ "shape":"Integer", "locationName":"secondaryPrivateIpAddressCount" }, "AllowReassignment":{ "shape":"Boolean", "locationName":"allowReassignment" } } }, "AssociateAddressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{"shape":"String"}, "PublicIp":{"shape":"String"}, "AllocationId":{"shape":"String"}, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "AllowReassociation":{ "shape":"Boolean", "locationName":"allowReassociation" } } }, "AssociateAddressResult":{ "type":"structure", "members":{ "AssociationId":{ "shape":"String", "locationName":"associationId" } } }, "AssociateDhcpOptionsRequest":{ "type":"structure", "required":[ "DhcpOptionsId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "DhcpOptionsId":{"shape":"String"}, "VpcId":{"shape":"String"} } }, "AssociateRouteTableRequest":{ "type":"structure", "required":[ "SubnetId", "RouteTableId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" } } }, "AssociateRouteTableResult":{ "type":"structure", "members":{ "AssociationId":{ "shape":"String", "locationName":"associationId" } } }, "AttachClassicLinkVpcRequest":{ "type":"structure", "required":[ "InstanceId", "VpcId", "Groups" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Groups":{ "shape":"GroupIdStringList", "locationName":"SecurityGroupId" } } }, "AttachClassicLinkVpcResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "AttachInternetGatewayRequest":{ "type":"structure", "required":[ "InternetGatewayId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InternetGatewayId":{ "shape":"String", "locationName":"internetGatewayId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "AttachNetworkInterfaceRequest":{ "type":"structure", "required":[ "NetworkInterfaceId", "InstanceId", "DeviceIndex" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "DeviceIndex":{ "shape":"Integer", "locationName":"deviceIndex" } } }, "AttachNetworkInterfaceResult":{ "type":"structure", "members":{ "AttachmentId":{ "shape":"String", "locationName":"attachmentId" } } }, "AttachVolumeRequest":{ "type":"structure", "required":[ "VolumeId", "InstanceId", "Device" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "InstanceId":{"shape":"String"}, "Device":{"shape":"String"} } }, "AttachVpnGatewayRequest":{ "type":"structure", "required":[ "VpnGatewayId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnGatewayId":{"shape":"String"}, "VpcId":{"shape":"String"} } }, "AttachVpnGatewayResult":{ "type":"structure", "members":{ "VpcAttachment":{ "shape":"VpcAttachment", "locationName":"attachment" } } }, "AttachmentStatus":{ "type":"string", "enum":[ "attaching", "attached", "detaching", "detached" ] }, "AttributeBooleanValue":{ "type":"structure", "members":{ "Value":{ "shape":"Boolean", "locationName":"value" } } }, "AttributeValue":{ "type":"structure", "members":{ "Value":{ "shape":"String", "locationName":"value" } } }, "AuthorizeSecurityGroupEgressRequest":{ "type":"structure", "required":["GroupId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupId":{ "shape":"String", "locationName":"groupId" }, "SourceSecurityGroupName":{ "shape":"String", "locationName":"sourceSecurityGroupName" }, "SourceSecurityGroupOwnerId":{ "shape":"String", "locationName":"sourceSecurityGroupOwnerId" }, "IpProtocol":{ "shape":"String", "locationName":"ipProtocol" }, "FromPort":{ "shape":"Integer", "locationName":"fromPort" }, "ToPort":{ "shape":"Integer", "locationName":"toPort" }, "CidrIp":{ "shape":"String", "locationName":"cidrIp" }, "IpPermissions":{ "shape":"IpPermissionList", "locationName":"ipPermissions" } } }, "AuthorizeSecurityGroupIngressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{"shape":"String"}, "GroupId":{"shape":"String"}, "SourceSecurityGroupName":{"shape":"String"}, "SourceSecurityGroupOwnerId":{"shape":"String"}, "IpProtocol":{"shape":"String"}, "FromPort":{"shape":"Integer"}, "ToPort":{"shape":"Integer"}, "CidrIp":{"shape":"String"}, "IpPermissions":{"shape":"IpPermissionList"} } }, "AutoPlacement":{ "type":"string", "enum":[ "on", "off" ] }, "AvailabilityZone":{ "type":"structure", "members":{ "ZoneName":{ "shape":"String", "locationName":"zoneName" }, "State":{ "shape":"AvailabilityZoneState", "locationName":"zoneState" }, "RegionName":{ "shape":"String", "locationName":"regionName" }, "Messages":{ "shape":"AvailabilityZoneMessageList", "locationName":"messageSet" } } }, "AvailabilityZoneList":{ "type":"list", "member":{ "shape":"AvailabilityZone", "locationName":"item" } }, "AvailabilityZoneMessage":{ "type":"structure", "members":{ "Message":{ "shape":"String", "locationName":"message" } } }, "AvailabilityZoneMessageList":{ "type":"list", "member":{ "shape":"AvailabilityZoneMessage", "locationName":"item" } }, "AvailabilityZoneState":{ "type":"string", "enum":[ "available", "information", "impaired", "unavailable" ] }, "AvailableCapacity":{ "type":"structure", "members":{ "AvailableInstanceCapacity":{ "shape":"AvailableInstanceCapacityList", "locationName":"availableInstanceCapacity" }, "AvailableVCpus":{ "shape":"Integer", "locationName":"availableVCpus" } } }, "AvailableInstanceCapacityList":{ "type":"list", "member":{ "shape":"InstanceCapacity", "locationName":"item" } }, "BatchState":{ "type":"string", "enum":[ "submitted", "active", "cancelled", "failed", "cancelled_running", "cancelled_terminating", "modifying" ] }, "Blob":{"type":"blob"}, "BlobAttributeValue":{ "type":"structure", "members":{ "Value":{ "shape":"Blob", "locationName":"value" } } }, "BlockDeviceMapping":{ "type":"structure", "members":{ "VirtualName":{ "shape":"String", "locationName":"virtualName" }, "DeviceName":{ "shape":"String", "locationName":"deviceName" }, "Ebs":{ "shape":"EbsBlockDevice", "locationName":"ebs" }, "NoDevice":{ "shape":"String", "locationName":"noDevice" } } }, "BlockDeviceMappingList":{ "type":"list", "member":{ "shape":"BlockDeviceMapping", "locationName":"item" } }, "BlockDeviceMappingRequestList":{ "type":"list", "member":{ "shape":"BlockDeviceMapping", "locationName":"BlockDeviceMapping" } }, "Boolean":{"type":"boolean"}, "BundleIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"BundleId" } }, "BundleInstanceRequest":{ "type":"structure", "required":[ "InstanceId", "Storage" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{"shape":"String"}, "Storage":{"shape":"Storage"} } }, "BundleInstanceResult":{ "type":"structure", "members":{ "BundleTask":{ "shape":"BundleTask", "locationName":"bundleInstanceTask" } } }, "BundleTask":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "BundleId":{ "shape":"String", "locationName":"bundleId" }, "State":{ "shape":"BundleTaskState", "locationName":"state" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "UpdateTime":{ "shape":"DateTime", "locationName":"updateTime" }, "Storage":{ "shape":"Storage", "locationName":"storage" }, "Progress":{ "shape":"String", "locationName":"progress" }, "BundleTaskError":{ "shape":"BundleTaskError", "locationName":"error" } } }, "BundleTaskError":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "BundleTaskList":{ "type":"list", "member":{ "shape":"BundleTask", "locationName":"item" } }, "BundleTaskState":{ "type":"string", "enum":[ "pending", "waiting-for-shutdown", "bundling", "storing", "cancelling", "complete", "failed" ] }, "CancelBatchErrorCode":{ "type":"string", "enum":[ "fleetRequestIdDoesNotExist", "fleetRequestIdMalformed", "fleetRequestNotInCancellableState", "unexpectedError" ] }, "CancelBundleTaskRequest":{ "type":"structure", "required":["BundleId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "BundleId":{"shape":"String"} } }, "CancelBundleTaskResult":{ "type":"structure", "members":{ "BundleTask":{ "shape":"BundleTask", "locationName":"bundleInstanceTask" } } }, "CancelConversionRequest":{ "type":"structure", "required":["ConversionTaskId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ConversionTaskId":{ "shape":"String", "locationName":"conversionTaskId" }, "ReasonMessage":{ "shape":"String", "locationName":"reasonMessage" } } }, "CancelExportTaskRequest":{ "type":"structure", "required":["ExportTaskId"], "members":{ "ExportTaskId":{ "shape":"String", "locationName":"exportTaskId" } } }, "CancelImportTaskRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "ImportTaskId":{"shape":"String"}, "CancelReason":{"shape":"String"} } }, "CancelImportTaskResult":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "State":{ "shape":"String", "locationName":"state" }, "PreviousState":{ "shape":"String", "locationName":"previousState" } } }, "CancelReservedInstancesListingRequest":{ "type":"structure", "required":["ReservedInstancesListingId"], "members":{ "ReservedInstancesListingId":{ "shape":"String", "locationName":"reservedInstancesListingId" } } }, "CancelReservedInstancesListingResult":{ "type":"structure", "members":{ "ReservedInstancesListings":{ "shape":"ReservedInstancesListingList", "locationName":"reservedInstancesListingsSet" } } }, "CancelSpotFleetRequestsError":{ "type":"structure", "required":[ "Code", "Message" ], "members":{ "Code":{ "shape":"CancelBatchErrorCode", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "CancelSpotFleetRequestsErrorItem":{ "type":"structure", "required":[ "SpotFleetRequestId", "Error" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "Error":{ "shape":"CancelSpotFleetRequestsError", "locationName":"error" } } }, "CancelSpotFleetRequestsErrorSet":{ "type":"list", "member":{ "shape":"CancelSpotFleetRequestsErrorItem", "locationName":"item" } }, "CancelSpotFleetRequestsRequest":{ "type":"structure", "required":[ "SpotFleetRequestIds", "TerminateInstances" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestIds":{ "shape":"ValueStringList", "locationName":"spotFleetRequestId" }, "TerminateInstances":{ "shape":"Boolean", "locationName":"terminateInstances" } } }, "CancelSpotFleetRequestsResponse":{ "type":"structure", "members":{ "UnsuccessfulFleetRequests":{ "shape":"CancelSpotFleetRequestsErrorSet", "locationName":"unsuccessfulFleetRequestSet" }, "SuccessfulFleetRequests":{ "shape":"CancelSpotFleetRequestsSuccessSet", "locationName":"successfulFleetRequestSet" } } }, "CancelSpotFleetRequestsSuccessItem":{ "type":"structure", "required":[ "SpotFleetRequestId", "CurrentSpotFleetRequestState", "PreviousSpotFleetRequestState" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "CurrentSpotFleetRequestState":{ "shape":"BatchState", "locationName":"currentSpotFleetRequestState" }, "PreviousSpotFleetRequestState":{ "shape":"BatchState", "locationName":"previousSpotFleetRequestState" } } }, "CancelSpotFleetRequestsSuccessSet":{ "type":"list", "member":{ "shape":"CancelSpotFleetRequestsSuccessItem", "locationName":"item" } }, "CancelSpotInstanceRequestState":{ "type":"string", "enum":[ "active", "open", "closed", "cancelled", "completed" ] }, "CancelSpotInstanceRequestsRequest":{ "type":"structure", "required":["SpotInstanceRequestIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotInstanceRequestIds":{ "shape":"SpotInstanceRequestIdList", "locationName":"SpotInstanceRequestId" } } }, "CancelSpotInstanceRequestsResult":{ "type":"structure", "members":{ "CancelledSpotInstanceRequests":{ "shape":"CancelledSpotInstanceRequestList", "locationName":"spotInstanceRequestSet" } } }, "CancelledSpotInstanceRequest":{ "type":"structure", "members":{ "SpotInstanceRequestId":{ "shape":"String", "locationName":"spotInstanceRequestId" }, "State":{ "shape":"CancelSpotInstanceRequestState", "locationName":"state" } } }, "CancelledSpotInstanceRequestList":{ "type":"list", "member":{ "shape":"CancelledSpotInstanceRequest", "locationName":"item" } }, "ClassicLinkDnsSupport":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "ClassicLinkDnsSupported":{ "shape":"Boolean", "locationName":"classicLinkDnsSupported" } } }, "ClassicLinkDnsSupportList":{ "type":"list", "member":{ "shape":"ClassicLinkDnsSupport", "locationName":"item" } }, "ClassicLinkInstance":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "ClassicLinkInstanceList":{ "type":"list", "member":{ "shape":"ClassicLinkInstance", "locationName":"item" } }, "ClientData":{ "type":"structure", "members":{ "UploadStart":{"shape":"DateTime"}, "UploadEnd":{"shape":"DateTime"}, "UploadSize":{"shape":"Double"}, "Comment":{"shape":"String"} } }, "ConfirmProductInstanceRequest":{ "type":"structure", "required":[ "ProductCode", "InstanceId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ProductCode":{"shape":"String"}, "InstanceId":{"shape":"String"} } }, "ConfirmProductInstanceResult":{ "type":"structure", "members":{ "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "Return":{ "shape":"Boolean", "locationName":"return" } } }, "ContainerFormat":{ "type":"string", "enum":["ova"] }, "ConversionIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "ConversionTask":{ "type":"structure", "required":[ "ConversionTaskId", "State" ], "members":{ "ConversionTaskId":{ "shape":"String", "locationName":"conversionTaskId" }, "ExpirationTime":{ "shape":"String", "locationName":"expirationTime" }, "ImportInstance":{ "shape":"ImportInstanceTaskDetails", "locationName":"importInstance" }, "ImportVolume":{ "shape":"ImportVolumeTaskDetails", "locationName":"importVolume" }, "State":{ "shape":"ConversionTaskState", "locationName":"state" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "ConversionTaskState":{ "type":"string", "enum":[ "active", "cancelling", "cancelled", "completed" ] }, "CopyImageRequest":{ "type":"structure", "required":[ "SourceRegion", "SourceImageId", "Name" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SourceRegion":{"shape":"String"}, "SourceImageId":{"shape":"String"}, "Name":{"shape":"String"}, "Description":{"shape":"String"}, "ClientToken":{"shape":"String"}, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{ "shape":"String", "locationName":"kmsKeyId" } } }, "CopyImageResult":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" } } }, "CopySnapshotRequest":{ "type":"structure", "required":[ "SourceRegion", "SourceSnapshotId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SourceRegion":{"shape":"String"}, "SourceSnapshotId":{"shape":"String"}, "Description":{"shape":"String"}, "DestinationRegion":{ "shape":"String", "locationName":"destinationRegion" }, "PresignedUrl":{ "shape":"String", "locationName":"presignedUrl" }, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{ "shape":"String", "locationName":"kmsKeyId" } } }, "CopySnapshotResult":{ "type":"structure", "members":{ "SnapshotId":{ "shape":"String", "locationName":"snapshotId" } } }, "CreateCustomerGatewayRequest":{ "type":"structure", "required":[ "Type", "PublicIp", "BgpAsn" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Type":{"shape":"GatewayType"}, "PublicIp":{ "shape":"String", "locationName":"IpAddress" }, "BgpAsn":{"shape":"Integer"} } }, "CreateCustomerGatewayResult":{ "type":"structure", "members":{ "CustomerGateway":{ "shape":"CustomerGateway", "locationName":"customerGateway" } } }, "CreateDhcpOptionsRequest":{ "type":"structure", "required":["DhcpConfigurations"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "DhcpConfigurations":{ "shape":"NewDhcpConfigurationList", "locationName":"dhcpConfiguration" } } }, "CreateDhcpOptionsResult":{ "type":"structure", "members":{ "DhcpOptions":{ "shape":"DhcpOptions", "locationName":"dhcpOptions" } } }, "CreateFlowLogsRequest":{ "type":"structure", "required":[ "ResourceIds", "ResourceType", "TrafficType", "LogGroupName", "DeliverLogsPermissionArn" ], "members":{ "ResourceIds":{ "shape":"ValueStringList", "locationName":"ResourceId" }, "ResourceType":{"shape":"FlowLogsResourceType"}, "TrafficType":{"shape":"TrafficType"}, "LogGroupName":{"shape":"String"}, "DeliverLogsPermissionArn":{"shape":"String"}, "ClientToken":{"shape":"String"} } }, "CreateFlowLogsResult":{ "type":"structure", "members":{ "FlowLogIds":{ "shape":"ValueStringList", "locationName":"flowLogIdSet" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "Unsuccessful":{ "shape":"UnsuccessfulItemSet", "locationName":"unsuccessful" } } }, "CreateImageRequest":{ "type":"structure", "required":[ "InstanceId", "Name" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Name":{ "shape":"String", "locationName":"name" }, "Description":{ "shape":"String", "locationName":"description" }, "NoReboot":{ "shape":"Boolean", "locationName":"noReboot" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingRequestList", "locationName":"blockDeviceMapping" } } }, "CreateImageResult":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" } } }, "CreateInstanceExportTaskRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "Description":{ "shape":"String", "locationName":"description" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "TargetEnvironment":{ "shape":"ExportEnvironment", "locationName":"targetEnvironment" }, "ExportToS3Task":{ "shape":"ExportToS3TaskSpecification", "locationName":"exportToS3" } } }, "CreateInstanceExportTaskResult":{ "type":"structure", "members":{ "ExportTask":{ "shape":"ExportTask", "locationName":"exportTask" } } }, "CreateInternetGatewayRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "CreateInternetGatewayResult":{ "type":"structure", "members":{ "InternetGateway":{ "shape":"InternetGateway", "locationName":"internetGateway" } } }, "CreateKeyPairRequest":{ "type":"structure", "required":["KeyName"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "KeyName":{"shape":"String"} } }, "CreateNatGatewayRequest":{ "type":"structure", "required":[ "SubnetId", "AllocationId" ], "members":{ "SubnetId":{"shape":"String"}, "AllocationId":{"shape":"String"}, "ClientToken":{"shape":"String"} } }, "CreateNatGatewayResult":{ "type":"structure", "members":{ "NatGateway":{ "shape":"NatGateway", "locationName":"natGateway" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "CreateNetworkAclEntryRequest":{ "type":"structure", "required":[ "NetworkAclId", "RuleNumber", "Protocol", "RuleAction", "Egress", "CidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "RuleNumber":{ "shape":"Integer", "locationName":"ruleNumber" }, "Protocol":{ "shape":"String", "locationName":"protocol" }, "RuleAction":{ "shape":"RuleAction", "locationName":"ruleAction" }, "Egress":{ "shape":"Boolean", "locationName":"egress" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "IcmpTypeCode":{ "shape":"IcmpTypeCode", "locationName":"Icmp" }, "PortRange":{ "shape":"PortRange", "locationName":"portRange" } } }, "CreateNetworkAclRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "CreateNetworkAclResult":{ "type":"structure", "members":{ "NetworkAcl":{ "shape":"NetworkAcl", "locationName":"networkAcl" } } }, "CreateNetworkInterfaceRequest":{ "type":"structure", "required":["SubnetId"], "members":{ "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "Description":{ "shape":"String", "locationName":"description" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "Groups":{ "shape":"SecurityGroupIdStringList", "locationName":"SecurityGroupId" }, "PrivateIpAddresses":{ "shape":"PrivateIpAddressSpecificationList", "locationName":"privateIpAddresses" }, "SecondaryPrivateIpAddressCount":{ "shape":"Integer", "locationName":"secondaryPrivateIpAddressCount" }, "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "CreateNetworkInterfaceResult":{ "type":"structure", "members":{ "NetworkInterface":{ "shape":"NetworkInterface", "locationName":"networkInterface" } } }, "CreatePlacementGroupRequest":{ "type":"structure", "required":[ "GroupName", "Strategy" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "Strategy":{ "shape":"PlacementStrategy", "locationName":"strategy" } } }, "CreateReservedInstancesListingRequest":{ "type":"structure", "required":[ "ReservedInstancesId", "InstanceCount", "PriceSchedules", "ClientToken" ], "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "PriceSchedules":{ "shape":"PriceScheduleSpecificationList", "locationName":"priceSchedules" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "CreateReservedInstancesListingResult":{ "type":"structure", "members":{ "ReservedInstancesListings":{ "shape":"ReservedInstancesListingList", "locationName":"reservedInstancesListingsSet" } } }, "CreateRouteRequest":{ "type":"structure", "required":[ "RouteTableId", "DestinationCidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" }, "GatewayId":{ "shape":"String", "locationName":"gatewayId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" }, "NatGatewayId":{ "shape":"String", "locationName":"natGatewayId" } } }, "CreateRouteResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "CreateRouteTableRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "CreateRouteTableResult":{ "type":"structure", "members":{ "RouteTable":{ "shape":"RouteTable", "locationName":"routeTable" } } }, "CreateSecurityGroupRequest":{ "type":"structure", "required":[ "GroupName", "Description" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{"shape":"String"}, "Description":{ "shape":"String", "locationName":"GroupDescription" }, "VpcId":{"shape":"String"} } }, "CreateSecurityGroupResult":{ "type":"structure", "members":{ "GroupId":{ "shape":"String", "locationName":"groupId" } } }, "CreateSnapshotRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "Description":{"shape":"String"} } }, "CreateSpotDatafeedSubscriptionRequest":{ "type":"structure", "required":["Bucket"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Bucket":{ "shape":"String", "locationName":"bucket" }, "Prefix":{ "shape":"String", "locationName":"prefix" } } }, "CreateSpotDatafeedSubscriptionResult":{ "type":"structure", "members":{ "SpotDatafeedSubscription":{ "shape":"SpotDatafeedSubscription", "locationName":"spotDatafeedSubscription" } } }, "CreateSubnetRequest":{ "type":"structure", "required":[ "VpcId", "CidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{"shape":"String"}, "CidrBlock":{"shape":"String"}, "AvailabilityZone":{"shape":"String"} } }, "CreateSubnetResult":{ "type":"structure", "members":{ "Subnet":{ "shape":"Subnet", "locationName":"subnet" } } }, "CreateTagsRequest":{ "type":"structure", "required":[ "Resources", "Tags" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Resources":{ "shape":"ResourceIdList", "locationName":"ResourceId" }, "Tags":{ "shape":"TagList", "locationName":"Tag" } } }, "CreateVolumePermission":{ "type":"structure", "members":{ "UserId":{ "shape":"String", "locationName":"userId" }, "Group":{ "shape":"PermissionGroup", "locationName":"group" } } }, "CreateVolumePermissionList":{ "type":"list", "member":{ "shape":"CreateVolumePermission", "locationName":"item" } }, "CreateVolumePermissionModifications":{ "type":"structure", "members":{ "Add":{"shape":"CreateVolumePermissionList"}, "Remove":{"shape":"CreateVolumePermissionList"} } }, "CreateVolumeRequest":{ "type":"structure", "required":["AvailabilityZone"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Size":{"shape":"Integer"}, "SnapshotId":{"shape":"String"}, "AvailabilityZone":{"shape":"String"}, "VolumeType":{"shape":"VolumeType"}, "Iops":{"shape":"Integer"}, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{"shape":"String"} } }, "CreateVpcEndpointRequest":{ "type":"structure", "required":[ "VpcId", "ServiceName" ], "members":{ "DryRun":{"shape":"Boolean"}, "VpcId":{"shape":"String"}, "ServiceName":{"shape":"String"}, "PolicyDocument":{"shape":"String"}, "RouteTableIds":{ "shape":"ValueStringList", "locationName":"RouteTableId" }, "ClientToken":{"shape":"String"} } }, "CreateVpcEndpointResult":{ "type":"structure", "members":{ "VpcEndpoint":{ "shape":"VpcEndpoint", "locationName":"vpcEndpoint" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "CreateVpcPeeringConnectionRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "PeerVpcId":{ "shape":"String", "locationName":"peerVpcId" }, "PeerOwnerId":{ "shape":"String", "locationName":"peerOwnerId" } } }, "CreateVpcPeeringConnectionResult":{ "type":"structure", "members":{ "VpcPeeringConnection":{ "shape":"VpcPeeringConnection", "locationName":"vpcPeeringConnection" } } }, "CreateVpcRequest":{ "type":"structure", "required":["CidrBlock"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "CidrBlock":{"shape":"String"}, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" } } }, "CreateVpcResult":{ "type":"structure", "members":{ "Vpc":{ "shape":"Vpc", "locationName":"vpc" } } }, "CreateVpnConnectionRequest":{ "type":"structure", "required":[ "Type", "CustomerGatewayId", "VpnGatewayId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Type":{"shape":"String"}, "CustomerGatewayId":{"shape":"String"}, "VpnGatewayId":{"shape":"String"}, "Options":{ "shape":"VpnConnectionOptionsSpecification", "locationName":"options" } } }, "CreateVpnConnectionResult":{ "type":"structure", "members":{ "VpnConnection":{ "shape":"VpnConnection", "locationName":"vpnConnection" } } }, "CreateVpnConnectionRouteRequest":{ "type":"structure", "required":[ "VpnConnectionId", "DestinationCidrBlock" ], "members":{ "VpnConnectionId":{"shape":"String"}, "DestinationCidrBlock":{"shape":"String"} } }, "CreateVpnGatewayRequest":{ "type":"structure", "required":["Type"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Type":{"shape":"GatewayType"}, "AvailabilityZone":{"shape":"String"} } }, "CreateVpnGatewayResult":{ "type":"structure", "members":{ "VpnGateway":{ "shape":"VpnGateway", "locationName":"vpnGateway" } } }, "CurrencyCodeValues":{ "type":"string", "enum":["USD"] }, "CustomerGateway":{ "type":"structure", "members":{ "CustomerGatewayId":{ "shape":"String", "locationName":"customerGatewayId" }, "State":{ "shape":"String", "locationName":"state" }, "Type":{ "shape":"String", "locationName":"type" }, "IpAddress":{ "shape":"String", "locationName":"ipAddress" }, "BgpAsn":{ "shape":"String", "locationName":"bgpAsn" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "CustomerGatewayIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"CustomerGatewayId" } }, "CustomerGatewayList":{ "type":"list", "member":{ "shape":"CustomerGateway", "locationName":"item" } }, "DatafeedSubscriptionState":{ "type":"string", "enum":[ "Active", "Inactive" ] }, "DateTime":{"type":"timestamp"}, "DeleteCustomerGatewayRequest":{ "type":"structure", "required":["CustomerGatewayId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "CustomerGatewayId":{"shape":"String"} } }, "DeleteDhcpOptionsRequest":{ "type":"structure", "required":["DhcpOptionsId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "DhcpOptionsId":{"shape":"String"} } }, "DeleteFlowLogsRequest":{ "type":"structure", "required":["FlowLogIds"], "members":{ "FlowLogIds":{ "shape":"ValueStringList", "locationName":"FlowLogId" } } }, "DeleteFlowLogsResult":{ "type":"structure", "members":{ "Unsuccessful":{ "shape":"UnsuccessfulItemSet", "locationName":"unsuccessful" } } }, "DeleteInternetGatewayRequest":{ "type":"structure", "required":["InternetGatewayId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InternetGatewayId":{ "shape":"String", "locationName":"internetGatewayId" } } }, "DeleteKeyPairRequest":{ "type":"structure", "required":["KeyName"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "KeyName":{"shape":"String"} } }, "DeleteNatGatewayRequest":{ "type":"structure", "required":["NatGatewayId"], "members":{ "NatGatewayId":{"shape":"String"} } }, "DeleteNatGatewayResult":{ "type":"structure", "members":{ "NatGatewayId":{ "shape":"String", "locationName":"natGatewayId" } } }, "DeleteNetworkAclEntryRequest":{ "type":"structure", "required":[ "NetworkAclId", "RuleNumber", "Egress" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "RuleNumber":{ "shape":"Integer", "locationName":"ruleNumber" }, "Egress":{ "shape":"Boolean", "locationName":"egress" } } }, "DeleteNetworkAclRequest":{ "type":"structure", "required":["NetworkAclId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" } } }, "DeleteNetworkInterfaceRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" } } }, "DeletePlacementGroupRequest":{ "type":"structure", "required":["GroupName"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{ "shape":"String", "locationName":"groupName" } } }, "DeleteRouteRequest":{ "type":"structure", "required":[ "RouteTableId", "DestinationCidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" } } }, "DeleteRouteTableRequest":{ "type":"structure", "required":["RouteTableId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" } } }, "DeleteSecurityGroupRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{"shape":"String"}, "GroupId":{"shape":"String"} } }, "DeleteSnapshotRequest":{ "type":"structure", "required":["SnapshotId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotId":{"shape":"String"} } }, "DeleteSpotDatafeedSubscriptionRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "DeleteSubnetRequest":{ "type":"structure", "required":["SubnetId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SubnetId":{"shape":"String"} } }, "DeleteTagsRequest":{ "type":"structure", "required":["Resources"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Resources":{ "shape":"ResourceIdList", "locationName":"resourceId" }, "Tags":{ "shape":"TagList", "locationName":"tag" } } }, "DeleteVolumeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"} } }, "DeleteVpcEndpointsRequest":{ "type":"structure", "required":["VpcEndpointIds"], "members":{ "DryRun":{"shape":"Boolean"}, "VpcEndpointIds":{ "shape":"ValueStringList", "locationName":"VpcEndpointId" } } }, "DeleteVpcEndpointsResult":{ "type":"structure", "members":{ "Unsuccessful":{ "shape":"UnsuccessfulItemSet", "locationName":"unsuccessful" } } }, "DeleteVpcPeeringConnectionRequest":{ "type":"structure", "required":["VpcPeeringConnectionId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "DeleteVpcPeeringConnectionResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "DeleteVpcRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{"shape":"String"} } }, "DeleteVpnConnectionRequest":{ "type":"structure", "required":["VpnConnectionId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnConnectionId":{"shape":"String"} } }, "DeleteVpnConnectionRouteRequest":{ "type":"structure", "required":[ "VpnConnectionId", "DestinationCidrBlock" ], "members":{ "VpnConnectionId":{"shape":"String"}, "DestinationCidrBlock":{"shape":"String"} } }, "DeleteVpnGatewayRequest":{ "type":"structure", "required":["VpnGatewayId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnGatewayId":{"shape":"String"} } }, "DeregisterImageRequest":{ "type":"structure", "required":["ImageId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"} } }, "DescribeAccountAttributesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AttributeNames":{ "shape":"AccountAttributeNameStringList", "locationName":"attributeName" } } }, "DescribeAccountAttributesResult":{ "type":"structure", "members":{ "AccountAttributes":{ "shape":"AccountAttributeList", "locationName":"accountAttributeSet" } } }, "DescribeAddressesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIps":{ "shape":"PublicIpStringList", "locationName":"PublicIp" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "AllocationIds":{ "shape":"AllocationIdList", "locationName":"AllocationId" } } }, "DescribeAddressesResult":{ "type":"structure", "members":{ "Addresses":{ "shape":"AddressList", "locationName":"addressesSet" } } }, "DescribeAvailabilityZonesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ZoneNames":{ "shape":"ZoneNameStringList", "locationName":"ZoneName" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeAvailabilityZonesResult":{ "type":"structure", "members":{ "AvailabilityZones":{ "shape":"AvailabilityZoneList", "locationName":"availabilityZoneInfo" } } }, "DescribeBundleTasksRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "BundleIds":{ "shape":"BundleIdStringList", "locationName":"BundleId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeBundleTasksResult":{ "type":"structure", "members":{ "BundleTasks":{ "shape":"BundleTaskList", "locationName":"bundleInstanceTasksSet" } } }, "DescribeClassicLinkInstancesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeClassicLinkInstancesResult":{ "type":"structure", "members":{ "Instances":{ "shape":"ClassicLinkInstanceList", "locationName":"instancesSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeConversionTaskList":{ "type":"list", "member":{ "shape":"ConversionTask", "locationName":"item" } }, "DescribeConversionTasksRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Filters":{ "shape":"FilterList", "locationName":"filter" }, "ConversionTaskIds":{ "shape":"ConversionIdStringList", "locationName":"conversionTaskId" } } }, "DescribeConversionTasksResult":{ "type":"structure", "members":{ "ConversionTasks":{ "shape":"DescribeConversionTaskList", "locationName":"conversionTasks" } } }, "DescribeCustomerGatewaysRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "CustomerGatewayIds":{ "shape":"CustomerGatewayIdStringList", "locationName":"CustomerGatewayId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeCustomerGatewaysResult":{ "type":"structure", "members":{ "CustomerGateways":{ "shape":"CustomerGatewayList", "locationName":"customerGatewaySet" } } }, "DescribeDhcpOptionsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "DhcpOptionsIds":{ "shape":"DhcpOptionsIdStringList", "locationName":"DhcpOptionsId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeDhcpOptionsResult":{ "type":"structure", "members":{ "DhcpOptions":{ "shape":"DhcpOptionsList", "locationName":"dhcpOptionsSet" } } }, "DescribeExportTasksRequest":{ "type":"structure", "members":{ "ExportTaskIds":{ "shape":"ExportTaskIdStringList", "locationName":"exportTaskId" } } }, "DescribeExportTasksResult":{ "type":"structure", "members":{ "ExportTasks":{ "shape":"ExportTaskList", "locationName":"exportTaskSet" } } }, "DescribeFlowLogsRequest":{ "type":"structure", "members":{ "FlowLogIds":{ "shape":"ValueStringList", "locationName":"FlowLogId" }, "Filter":{"shape":"FilterList"}, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"} } }, "DescribeFlowLogsResult":{ "type":"structure", "members":{ "FlowLogs":{ "shape":"FlowLogSet", "locationName":"flowLogSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeHostsRequest":{ "type":"structure", "members":{ "HostIds":{ "shape":"RequestHostIdList", "locationName":"hostId" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" }, "Filter":{ "shape":"FilterList", "locationName":"filter" } } }, "DescribeHostsResult":{ "type":"structure", "members":{ "Hosts":{ "shape":"HostList", "locationName":"hostSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeIdFormatRequest":{ "type":"structure", "members":{ "Resource":{"shape":"String"} } }, "DescribeIdFormatResult":{ "type":"structure", "members":{ "Statuses":{ "shape":"IdFormatList", "locationName":"statusSet" } } }, "DescribeImageAttributeRequest":{ "type":"structure", "required":[ "ImageId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"}, "Attribute":{"shape":"ImageAttributeName"} } }, "DescribeImagesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageIds":{ "shape":"ImageIdStringList", "locationName":"ImageId" }, "Owners":{ "shape":"OwnerStringList", "locationName":"Owner" }, "ExecutableUsers":{ "shape":"ExecutableByStringList", "locationName":"ExecutableBy" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeImagesResult":{ "type":"structure", "members":{ "Images":{ "shape":"ImageList", "locationName":"imagesSet" } } }, "DescribeImportImageTasksRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "ImportTaskIds":{ "shape":"ImportTaskIdList", "locationName":"ImportTaskId" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"}, "Filters":{"shape":"FilterList"} } }, "DescribeImportImageTasksResult":{ "type":"structure", "members":{ "ImportImageTasks":{ "shape":"ImportImageTaskList", "locationName":"importImageTaskSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeImportSnapshotTasksRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "ImportTaskIds":{ "shape":"ImportTaskIdList", "locationName":"ImportTaskId" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"}, "Filters":{"shape":"FilterList"} } }, "DescribeImportSnapshotTasksResult":{ "type":"structure", "members":{ "ImportSnapshotTasks":{ "shape":"ImportSnapshotTaskList", "locationName":"importSnapshotTaskSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeInstanceAttributeRequest":{ "type":"structure", "required":[ "InstanceId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Attribute":{ "shape":"InstanceAttributeName", "locationName":"attribute" } } }, "DescribeInstanceStatusRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"}, "IncludeAllInstances":{ "shape":"Boolean", "locationName":"includeAllInstances" } } }, "DescribeInstanceStatusResult":{ "type":"structure", "members":{ "InstanceStatuses":{ "shape":"InstanceStatusList", "locationName":"instanceStatusSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeInstancesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeInstancesResult":{ "type":"structure", "members":{ "Reservations":{ "shape":"ReservationList", "locationName":"reservationSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeInternetGatewaysRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InternetGatewayIds":{ "shape":"ValueStringList", "locationName":"internetGatewayId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeInternetGatewaysResult":{ "type":"structure", "members":{ "InternetGateways":{ "shape":"InternetGatewayList", "locationName":"internetGatewaySet" } } }, "DescribeKeyPairsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "KeyNames":{ "shape":"KeyNameStringList", "locationName":"KeyName" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeKeyPairsResult":{ "type":"structure", "members":{ "KeyPairs":{ "shape":"KeyPairList", "locationName":"keySet" } } }, "DescribeMovingAddressesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIps":{ "shape":"ValueStringList", "locationName":"publicIp" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "Filters":{ "shape":"FilterList", "locationName":"filter" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeMovingAddressesResult":{ "type":"structure", "members":{ "MovingAddressStatuses":{ "shape":"MovingAddressStatusSet", "locationName":"movingAddressStatusSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeNatGatewaysRequest":{ "type":"structure", "members":{ "NatGatewayIds":{ "shape":"ValueStringList", "locationName":"NatGatewayId" }, "Filter":{"shape":"FilterList"}, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribeNatGatewaysResult":{ "type":"structure", "members":{ "NatGateways":{ "shape":"NatGatewayList", "locationName":"natGatewaySet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeNetworkAclsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclIds":{ "shape":"ValueStringList", "locationName":"NetworkAclId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeNetworkAclsResult":{ "type":"structure", "members":{ "NetworkAcls":{ "shape":"NetworkAclList", "locationName":"networkAclSet" } } }, "DescribeNetworkInterfaceAttributeRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "Attribute":{ "shape":"NetworkInterfaceAttribute", "locationName":"attribute" } } }, "DescribeNetworkInterfaceAttributeResult":{ "type":"structure", "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "Description":{ "shape":"AttributeValue", "locationName":"description" }, "SourceDestCheck":{ "shape":"AttributeBooleanValue", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Attachment":{ "shape":"NetworkInterfaceAttachment", "locationName":"attachment" } } }, "DescribeNetworkInterfacesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceIds":{ "shape":"NetworkInterfaceIdList", "locationName":"NetworkInterfaceId" }, "Filters":{ "shape":"FilterList", "locationName":"filter" } } }, "DescribeNetworkInterfacesResult":{ "type":"structure", "members":{ "NetworkInterfaces":{ "shape":"NetworkInterfaceList", "locationName":"networkInterfaceSet" } } }, "DescribePlacementGroupsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupNames":{ "shape":"PlacementGroupStringList", "locationName":"groupName" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribePlacementGroupsResult":{ "type":"structure", "members":{ "PlacementGroups":{ "shape":"PlacementGroupList", "locationName":"placementGroupSet" } } }, "DescribePrefixListsRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "PrefixListIds":{ "shape":"ValueStringList", "locationName":"PrefixListId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribePrefixListsResult":{ "type":"structure", "members":{ "PrefixLists":{ "shape":"PrefixListSet", "locationName":"prefixListSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeRegionsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RegionNames":{ "shape":"RegionNameStringList", "locationName":"RegionName" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeRegionsResult":{ "type":"structure", "members":{ "Regions":{ "shape":"RegionList", "locationName":"regionInfo" } } }, "DescribeReservedInstancesListingsRequest":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "ReservedInstancesListingId":{ "shape":"String", "locationName":"reservedInstancesListingId" }, "Filters":{ "shape":"FilterList", "locationName":"filters" } } }, "DescribeReservedInstancesListingsResult":{ "type":"structure", "members":{ "ReservedInstancesListings":{ "shape":"ReservedInstancesListingList", "locationName":"reservedInstancesListingsSet" } } }, "DescribeReservedInstancesModificationsRequest":{ "type":"structure", "members":{ "ReservedInstancesModificationIds":{ "shape":"ReservedInstancesModificationIdStringList", "locationName":"ReservedInstancesModificationId" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeReservedInstancesModificationsResult":{ "type":"structure", "members":{ "ReservedInstancesModifications":{ "shape":"ReservedInstancesModificationList", "locationName":"reservedInstancesModificationsSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeReservedInstancesOfferingsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ReservedInstancesOfferingIds":{ "shape":"ReservedInstancesOfferingIdStringList", "locationName":"ReservedInstancesOfferingId" }, "InstanceType":{"shape":"InstanceType"}, "AvailabilityZone":{"shape":"String"}, "ProductDescription":{"shape":"RIProductDescription"}, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" }, "OfferingType":{ "shape":"OfferingTypeValues", "locationName":"offeringType" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" }, "IncludeMarketplace":{"shape":"Boolean"}, "MinDuration":{"shape":"Long"}, "MaxDuration":{"shape":"Long"}, "MaxInstanceCount":{"shape":"Integer"} } }, "DescribeReservedInstancesOfferingsResult":{ "type":"structure", "members":{ "ReservedInstancesOfferings":{ "shape":"ReservedInstancesOfferingList", "locationName":"reservedInstancesOfferingsSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeReservedInstancesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ReservedInstancesIds":{ "shape":"ReservedInstancesIdStringList", "locationName":"ReservedInstancesId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "OfferingType":{ "shape":"OfferingTypeValues", "locationName":"offeringType" } } }, "DescribeReservedInstancesResult":{ "type":"structure", "members":{ "ReservedInstances":{ "shape":"ReservedInstancesList", "locationName":"reservedInstancesSet" } } }, "DescribeRouteTablesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableIds":{ "shape":"ValueStringList", "locationName":"RouteTableId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeRouteTablesResult":{ "type":"structure", "members":{ "RouteTables":{ "shape":"RouteTableList", "locationName":"routeTableSet" } } }, "DescribeScheduledInstanceAvailabilityRequest":{ "type":"structure", "required":[ "Recurrence", "FirstSlotStartTimeRange" ], "members":{ "DryRun":{"shape":"Boolean"}, "Recurrence":{"shape":"ScheduledInstanceRecurrenceRequest"}, "FirstSlotStartTimeRange":{"shape":"SlotDateTimeRangeRequest"}, "MinSlotDurationInHours":{"shape":"Integer"}, "MaxSlotDurationInHours":{"shape":"Integer"}, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"}, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeScheduledInstanceAvailabilityResult":{ "type":"structure", "members":{ "NextToken":{ "shape":"String", "locationName":"nextToken" }, "ScheduledInstanceAvailabilitySet":{ "shape":"ScheduledInstanceAvailabilitySet", "locationName":"scheduledInstanceAvailabilitySet" } } }, "DescribeScheduledInstancesRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "ScheduledInstanceIds":{ "shape":"ScheduledInstanceIdRequestSet", "locationName":"ScheduledInstanceId" }, "SlotStartTimeRange":{"shape":"SlotStartTimeRangeRequest"}, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"}, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeScheduledInstancesResult":{ "type":"structure", "members":{ "NextToken":{ "shape":"String", "locationName":"nextToken" }, "ScheduledInstanceSet":{ "shape":"ScheduledInstanceSet", "locationName":"scheduledInstanceSet" } } }, "DescribeSecurityGroupReferencesRequest":{ "type":"structure", "required":["GroupId"], "members":{ "DryRun":{"shape":"Boolean"}, "GroupId":{"shape":"GroupIds"} } }, "DescribeSecurityGroupReferencesResult":{ "type":"structure", "members":{ "SecurityGroupReferenceSet":{ "shape":"SecurityGroupReferences", "locationName":"securityGroupReferenceSet" } } }, "DescribeSecurityGroupsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupNames":{ "shape":"GroupNameStringList", "locationName":"GroupName" }, "GroupIds":{ "shape":"GroupIdStringList", "locationName":"GroupId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeSecurityGroupsResult":{ "type":"structure", "members":{ "SecurityGroups":{ "shape":"SecurityGroupList", "locationName":"securityGroupInfo" } } }, "DescribeSnapshotAttributeRequest":{ "type":"structure", "required":[ "SnapshotId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotId":{"shape":"String"}, "Attribute":{"shape":"SnapshotAttributeName"} } }, "DescribeSnapshotAttributeResult":{ "type":"structure", "members":{ "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "CreateVolumePermissions":{ "shape":"CreateVolumePermissionList", "locationName":"createVolumePermission" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" } } }, "DescribeSnapshotsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotIds":{ "shape":"SnapshotIdStringList", "locationName":"SnapshotId" }, "OwnerIds":{ "shape":"OwnerStringList", "locationName":"Owner" }, "RestorableByUserIds":{ "shape":"RestorableByStringList", "locationName":"RestorableBy" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"} } }, "DescribeSnapshotsResult":{ "type":"structure", "members":{ "Snapshots":{ "shape":"SnapshotList", "locationName":"snapshotSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotDatafeedSubscriptionRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "DescribeSpotDatafeedSubscriptionResult":{ "type":"structure", "members":{ "SpotDatafeedSubscription":{ "shape":"SpotDatafeedSubscription", "locationName":"spotDatafeedSubscription" } } }, "DescribeSpotFleetInstancesRequest":{ "type":"structure", "required":["SpotFleetRequestId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeSpotFleetInstancesResponse":{ "type":"structure", "required":[ "SpotFleetRequestId", "ActiveInstances" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "ActiveInstances":{ "shape":"ActiveInstanceSet", "locationName":"activeInstanceSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotFleetRequestHistoryRequest":{ "type":"structure", "required":[ "SpotFleetRequestId", "StartTime" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "EventType":{ "shape":"EventType", "locationName":"eventType" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeSpotFleetRequestHistoryResponse":{ "type":"structure", "required":[ "SpotFleetRequestId", "StartTime", "LastEvaluatedTime", "HistoryRecords" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "LastEvaluatedTime":{ "shape":"DateTime", "locationName":"lastEvaluatedTime" }, "HistoryRecords":{ "shape":"HistoryRecords", "locationName":"historyRecordSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotFleetRequestsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestIds":{ "shape":"ValueStringList", "locationName":"spotFleetRequestId" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeSpotFleetRequestsResponse":{ "type":"structure", "required":["SpotFleetRequestConfigs"], "members":{ "SpotFleetRequestConfigs":{ "shape":"SpotFleetRequestConfigSet", "locationName":"spotFleetRequestConfigSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotInstanceRequestsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotInstanceRequestIds":{ "shape":"SpotInstanceRequestIdList", "locationName":"SpotInstanceRequestId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeSpotInstanceRequestsResult":{ "type":"structure", "members":{ "SpotInstanceRequests":{ "shape":"SpotInstanceRequestList", "locationName":"spotInstanceRequestSet" } } }, "DescribeSpotPriceHistoryRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "EndTime":{ "shape":"DateTime", "locationName":"endTime" }, "InstanceTypes":{ "shape":"InstanceTypeList", "locationName":"InstanceType" }, "ProductDescriptions":{ "shape":"ProductDescriptionList", "locationName":"ProductDescription" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotPriceHistoryResult":{ "type":"structure", "members":{ "SpotPriceHistory":{ "shape":"SpotPriceHistoryList", "locationName":"spotPriceHistorySet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeStaleSecurityGroupsRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{"shape":"Boolean"}, "VpcId":{"shape":"String"}, "MaxResults":{"shape":"MaxResults"}, "NextToken":{"shape":"NextToken"} } }, "DescribeStaleSecurityGroupsResult":{ "type":"structure", "members":{ "StaleSecurityGroupSet":{ "shape":"StaleSecurityGroupSet", "locationName":"staleSecurityGroupSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSubnetsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SubnetIds":{ "shape":"SubnetIdStringList", "locationName":"SubnetId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeSubnetsResult":{ "type":"structure", "members":{ "Subnets":{ "shape":"SubnetList", "locationName":"subnetSet" } } }, "DescribeTagsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeTagsResult":{ "type":"structure", "members":{ "Tags":{ "shape":"TagDescriptionList", "locationName":"tagSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVolumeAttributeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "Attribute":{"shape":"VolumeAttributeName"} } }, "DescribeVolumeAttributeResult":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "AutoEnableIO":{ "shape":"AttributeBooleanValue", "locationName":"autoEnableIO" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" } } }, "DescribeVolumeStatusRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeIds":{ "shape":"VolumeIdStringList", "locationName":"VolumeId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"} } }, "DescribeVolumeStatusResult":{ "type":"structure", "members":{ "VolumeStatuses":{ "shape":"VolumeStatusList", "locationName":"volumeStatusSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVolumesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeIds":{ "shape":"VolumeIdStringList", "locationName":"VolumeId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeVolumesResult":{ "type":"structure", "members":{ "Volumes":{ "shape":"VolumeList", "locationName":"volumeSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVpcAttributeRequest":{ "type":"structure", "required":[ "VpcId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{"shape":"String"}, "Attribute":{"shape":"VpcAttributeName"} } }, "DescribeVpcAttributeResult":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "EnableDnsSupport":{ "shape":"AttributeBooleanValue", "locationName":"enableDnsSupport" }, "EnableDnsHostnames":{ "shape":"AttributeBooleanValue", "locationName":"enableDnsHostnames" } } }, "DescribeVpcClassicLinkDnsSupportRequest":{ "type":"structure", "members":{ "VpcIds":{"shape":"VpcClassicLinkIdList"}, "MaxResults":{ "shape":"MaxResults", "locationName":"maxResults" }, "NextToken":{ "shape":"NextToken", "locationName":"nextToken" } } }, "DescribeVpcClassicLinkDnsSupportResult":{ "type":"structure", "members":{ "Vpcs":{ "shape":"ClassicLinkDnsSupportList", "locationName":"vpcs" }, "NextToken":{ "shape":"NextToken", "locationName":"nextToken" } } }, "DescribeVpcClassicLinkRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcIds":{ "shape":"VpcClassicLinkIdList", "locationName":"VpcId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpcClassicLinkResult":{ "type":"structure", "members":{ "Vpcs":{ "shape":"VpcClassicLinkList", "locationName":"vpcSet" } } }, "DescribeVpcEndpointServicesRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribeVpcEndpointServicesResult":{ "type":"structure", "members":{ "ServiceNames":{ "shape":"ValueStringList", "locationName":"serviceNameSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVpcEndpointsRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "VpcEndpointIds":{ "shape":"ValueStringList", "locationName":"VpcEndpointId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribeVpcEndpointsResult":{ "type":"structure", "members":{ "VpcEndpoints":{ "shape":"VpcEndpointSet", "locationName":"vpcEndpointSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVpcPeeringConnectionsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcPeeringConnectionIds":{ "shape":"ValueStringList", "locationName":"VpcPeeringConnectionId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpcPeeringConnectionsResult":{ "type":"structure", "members":{ "VpcPeeringConnections":{ "shape":"VpcPeeringConnectionList", "locationName":"vpcPeeringConnectionSet" } } }, "DescribeVpcsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcIds":{ "shape":"VpcIdStringList", "locationName":"VpcId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpcsResult":{ "type":"structure", "members":{ "Vpcs":{ "shape":"VpcList", "locationName":"vpcSet" } } }, "DescribeVpnConnectionsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnConnectionIds":{ "shape":"VpnConnectionIdStringList", "locationName":"VpnConnectionId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpnConnectionsResult":{ "type":"structure", "members":{ "VpnConnections":{ "shape":"VpnConnectionList", "locationName":"vpnConnectionSet" } } }, "DescribeVpnGatewaysRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnGatewayIds":{ "shape":"VpnGatewayIdStringList", "locationName":"VpnGatewayId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpnGatewaysResult":{ "type":"structure", "members":{ "VpnGateways":{ "shape":"VpnGatewayList", "locationName":"vpnGatewaySet" } } }, "DetachClassicLinkVpcRequest":{ "type":"structure", "required":[ "InstanceId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "DetachClassicLinkVpcResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "DetachInternetGatewayRequest":{ "type":"structure", "required":[ "InternetGatewayId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InternetGatewayId":{ "shape":"String", "locationName":"internetGatewayId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "DetachNetworkInterfaceRequest":{ "type":"structure", "required":["AttachmentId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AttachmentId":{ "shape":"String", "locationName":"attachmentId" }, "Force":{ "shape":"Boolean", "locationName":"force" } } }, "DetachVolumeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "InstanceId":{"shape":"String"}, "Device":{"shape":"String"}, "Force":{"shape":"Boolean"} } }, "DetachVpnGatewayRequest":{ "type":"structure", "required":[ "VpnGatewayId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnGatewayId":{"shape":"String"}, "VpcId":{"shape":"String"} } }, "DeviceType":{ "type":"string", "enum":[ "ebs", "instance-store" ] }, "DhcpConfiguration":{ "type":"structure", "members":{ "Key":{ "shape":"String", "locationName":"key" }, "Values":{ "shape":"DhcpConfigurationValueList", "locationName":"valueSet" } } }, "DhcpConfigurationList":{ "type":"list", "member":{ "shape":"DhcpConfiguration", "locationName":"item" } }, "DhcpConfigurationValueList":{ "type":"list", "member":{ "shape":"AttributeValue", "locationName":"item" } }, "DhcpOptions":{ "type":"structure", "members":{ "DhcpOptionsId":{ "shape":"String", "locationName":"dhcpOptionsId" }, "DhcpConfigurations":{ "shape":"DhcpConfigurationList", "locationName":"dhcpConfigurationSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "DhcpOptionsIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"DhcpOptionsId" } }, "DhcpOptionsList":{ "type":"list", "member":{ "shape":"DhcpOptions", "locationName":"item" } }, "DisableVgwRoutePropagationRequest":{ "type":"structure", "required":[ "RouteTableId", "GatewayId" ], "members":{ "RouteTableId":{"shape":"String"}, "GatewayId":{"shape":"String"} } }, "DisableVpcClassicLinkDnsSupportRequest":{ "type":"structure", "members":{ "VpcId":{"shape":"String"} } }, "DisableVpcClassicLinkDnsSupportResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "DisableVpcClassicLinkRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "DisableVpcClassicLinkResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "DisassociateAddressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIp":{"shape":"String"}, "AssociationId":{"shape":"String"} } }, "DisassociateRouteTableRequest":{ "type":"structure", "required":["AssociationId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AssociationId":{ "shape":"String", "locationName":"associationId" } } }, "DiskImage":{ "type":"structure", "members":{ "Image":{"shape":"DiskImageDetail"}, "Description":{"shape":"String"}, "Volume":{"shape":"VolumeDetail"} } }, "DiskImageDescription":{ "type":"structure", "required":[ "Format", "Size", "ImportManifestUrl" ], "members":{ "Format":{ "shape":"DiskImageFormat", "locationName":"format" }, "Size":{ "shape":"Long", "locationName":"size" }, "ImportManifestUrl":{ "shape":"String", "locationName":"importManifestUrl" }, "Checksum":{ "shape":"String", "locationName":"checksum" } } }, "DiskImageDetail":{ "type":"structure", "required":[ "Format", "Bytes", "ImportManifestUrl" ], "members":{ "Format":{ "shape":"DiskImageFormat", "locationName":"format" }, "Bytes":{ "shape":"Long", "locationName":"bytes" }, "ImportManifestUrl":{ "shape":"String", "locationName":"importManifestUrl" } } }, "DiskImageFormat":{ "type":"string", "enum":[ "VMDK", "RAW", "VHD" ] }, "DiskImageList":{ "type":"list", "member":{"shape":"DiskImage"} }, "DiskImageVolumeDescription":{ "type":"structure", "required":["Id"], "members":{ "Size":{ "shape":"Long", "locationName":"size" }, "Id":{ "shape":"String", "locationName":"id" } } }, "DomainType":{ "type":"string", "enum":[ "vpc", "standard" ] }, "Double":{"type":"double"}, "EbsBlockDevice":{ "type":"structure", "members":{ "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "VolumeSize":{ "shape":"Integer", "locationName":"volumeSize" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" }, "VolumeType":{ "shape":"VolumeType", "locationName":"volumeType" }, "Iops":{ "shape":"Integer", "locationName":"iops" }, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" } } }, "EbsInstanceBlockDevice":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "Status":{ "shape":"AttachmentStatus", "locationName":"status" }, "AttachTime":{ "shape":"DateTime", "locationName":"attachTime" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "EbsInstanceBlockDeviceSpecification":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "EnableVgwRoutePropagationRequest":{ "type":"structure", "required":[ "RouteTableId", "GatewayId" ], "members":{ "RouteTableId":{"shape":"String"}, "GatewayId":{"shape":"String"} } }, "EnableVolumeIORequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{ "shape":"String", "locationName":"volumeId" } } }, "EnableVpcClassicLinkDnsSupportRequest":{ "type":"structure", "members":{ "VpcId":{"shape":"String"} } }, "EnableVpcClassicLinkDnsSupportResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "EnableVpcClassicLinkRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "EnableVpcClassicLinkResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "EventCode":{ "type":"string", "enum":[ "instance-reboot", "system-reboot", "system-maintenance", "instance-retirement", "instance-stop" ] }, "EventInformation":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "EventSubType":{ "shape":"String", "locationName":"eventSubType" }, "EventDescription":{ "shape":"String", "locationName":"eventDescription" } } }, "EventType":{ "type":"string", "enum":[ "instanceChange", "fleetRequestChange", "error" ] }, "ExcessCapacityTerminationPolicy":{ "type":"string", "enum":[ "noTermination", "default" ] }, "ExecutableByStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ExecutableBy" } }, "ExportEnvironment":{ "type":"string", "enum":[ "citrix", "vmware", "microsoft" ] }, "ExportTask":{ "type":"structure", "members":{ "ExportTaskId":{ "shape":"String", "locationName":"exportTaskId" }, "Description":{ "shape":"String", "locationName":"description" }, "State":{ "shape":"ExportTaskState", "locationName":"state" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "InstanceExportDetails":{ "shape":"InstanceExportDetails", "locationName":"instanceExport" }, "ExportToS3Task":{ "shape":"ExportToS3Task", "locationName":"exportToS3" } } }, "ExportTaskIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ExportTaskId" } }, "ExportTaskList":{ "type":"list", "member":{ "shape":"ExportTask", "locationName":"item" } }, "ExportTaskState":{ "type":"string", "enum":[ "active", "cancelling", "cancelled", "completed" ] }, "ExportToS3Task":{ "type":"structure", "members":{ "DiskImageFormat":{ "shape":"DiskImageFormat", "locationName":"diskImageFormat" }, "ContainerFormat":{ "shape":"ContainerFormat", "locationName":"containerFormat" }, "S3Bucket":{ "shape":"String", "locationName":"s3Bucket" }, "S3Key":{ "shape":"String", "locationName":"s3Key" } } }, "ExportToS3TaskSpecification":{ "type":"structure", "members":{ "DiskImageFormat":{ "shape":"DiskImageFormat", "locationName":"diskImageFormat" }, "ContainerFormat":{ "shape":"ContainerFormat", "locationName":"containerFormat" }, "S3Bucket":{ "shape":"String", "locationName":"s3Bucket" }, "S3Prefix":{ "shape":"String", "locationName":"s3Prefix" } } }, "Filter":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "Values":{ "shape":"ValueStringList", "locationName":"Value" } } }, "FilterList":{ "type":"list", "member":{ "shape":"Filter", "locationName":"Filter" } }, "FleetType":{ "type":"string", "enum":[ "request", "maintain" ] }, "Float":{"type":"float"}, "FlowLog":{ "type":"structure", "members":{ "CreationTime":{ "shape":"DateTime", "locationName":"creationTime" }, "FlowLogId":{ "shape":"String", "locationName":"flowLogId" }, "FlowLogStatus":{ "shape":"String", "locationName":"flowLogStatus" }, "ResourceId":{ "shape":"String", "locationName":"resourceId" }, "TrafficType":{ "shape":"TrafficType", "locationName":"trafficType" }, "LogGroupName":{ "shape":"String", "locationName":"logGroupName" }, "DeliverLogsStatus":{ "shape":"String", "locationName":"deliverLogsStatus" }, "DeliverLogsErrorMessage":{ "shape":"String", "locationName":"deliverLogsErrorMessage" }, "DeliverLogsPermissionArn":{ "shape":"String", "locationName":"deliverLogsPermissionArn" } } }, "FlowLogSet":{ "type":"list", "member":{ "shape":"FlowLog", "locationName":"item" } }, "FlowLogsResourceType":{ "type":"string", "enum":[ "VPC", "Subnet", "NetworkInterface" ] }, "GatewayType":{ "type":"string", "enum":["ipsec.1"] }, "GetConsoleOutputRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{"shape":"String"} } }, "GetConsoleOutputResult":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Timestamp":{ "shape":"DateTime", "locationName":"timestamp" }, "Output":{ "shape":"String", "locationName":"output" } } }, "GetConsoleScreenshotRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "DryRun":{"shape":"Boolean"}, "InstanceId":{"shape":"String"}, "WakeUp":{"shape":"Boolean"} } }, "GetConsoleScreenshotResult":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "ImageData":{ "shape":"String", "locationName":"imageData" } } }, "GetPasswordDataRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{"shape":"String"} } }, "GetPasswordDataResult":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Timestamp":{ "shape":"DateTime", "locationName":"timestamp" }, "PasswordData":{ "shape":"String", "locationName":"passwordData" } } }, "GroupIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"groupId" } }, "GroupIdentifier":{ "type":"structure", "members":{ "GroupName":{ "shape":"String", "locationName":"groupName" }, "GroupId":{ "shape":"String", "locationName":"groupId" } } }, "GroupIdentifierList":{ "type":"list", "member":{ "shape":"GroupIdentifier", "locationName":"item" } }, "GroupIds":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "GroupNameStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"GroupName" } }, "HistoryRecord":{ "type":"structure", "required":[ "Timestamp", "EventType", "EventInformation" ], "members":{ "Timestamp":{ "shape":"DateTime", "locationName":"timestamp" }, "EventType":{ "shape":"EventType", "locationName":"eventType" }, "EventInformation":{ "shape":"EventInformation", "locationName":"eventInformation" } } }, "HistoryRecords":{ "type":"list", "member":{ "shape":"HistoryRecord", "locationName":"item" } }, "Host":{ "type":"structure", "members":{ "HostId":{ "shape":"String", "locationName":"hostId" }, "AutoPlacement":{ "shape":"AutoPlacement", "locationName":"autoPlacement" }, "HostReservationId":{ "shape":"String", "locationName":"hostReservationId" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "HostProperties":{ "shape":"HostProperties", "locationName":"hostProperties" }, "State":{ "shape":"AllocationState", "locationName":"state" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Instances":{ "shape":"HostInstanceList", "locationName":"instances" }, "AvailableCapacity":{ "shape":"AvailableCapacity", "locationName":"availableCapacity" } } }, "HostInstance":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "InstanceType":{ "shape":"String", "locationName":"instanceType" } } }, "HostInstanceList":{ "type":"list", "member":{ "shape":"HostInstance", "locationName":"item" } }, "HostList":{ "type":"list", "member":{ "shape":"Host", "locationName":"item" } }, "HostProperties":{ "type":"structure", "members":{ "Sockets":{ "shape":"Integer", "locationName":"sockets" }, "Cores":{ "shape":"Integer", "locationName":"cores" }, "TotalVCpus":{ "shape":"Integer", "locationName":"totalVCpus" }, "InstanceType":{ "shape":"String", "locationName":"instanceType" } } }, "HostTenancy":{ "type":"string", "enum":[ "dedicated", "host" ] }, "HypervisorType":{ "type":"string", "enum":[ "ovm", "xen" ] }, "IamInstanceProfile":{ "type":"structure", "members":{ "Arn":{ "shape":"String", "locationName":"arn" }, "Id":{ "shape":"String", "locationName":"id" } } }, "IamInstanceProfileSpecification":{ "type":"structure", "members":{ "Arn":{ "shape":"String", "locationName":"arn" }, "Name":{ "shape":"String", "locationName":"name" } } }, "IcmpTypeCode":{ "type":"structure", "members":{ "Type":{ "shape":"Integer", "locationName":"type" }, "Code":{ "shape":"Integer", "locationName":"code" } } }, "IdFormat":{ "type":"structure", "members":{ "Resource":{ "shape":"String", "locationName":"resource" }, "UseLongIds":{ "shape":"Boolean", "locationName":"useLongIds" }, "Deadline":{ "shape":"DateTime", "locationName":"deadline" } } }, "IdFormatList":{ "type":"list", "member":{ "shape":"IdFormat", "locationName":"item" } }, "Image":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "ImageLocation":{ "shape":"String", "locationName":"imageLocation" }, "State":{ "shape":"ImageState", "locationName":"imageState" }, "OwnerId":{ "shape":"String", "locationName":"imageOwnerId" }, "CreationDate":{ "shape":"String", "locationName":"creationDate" }, "Public":{ "shape":"Boolean", "locationName":"isPublic" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" }, "Architecture":{ "shape":"ArchitectureValues", "locationName":"architecture" }, "ImageType":{ "shape":"ImageTypeValues", "locationName":"imageType" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "Platform":{ "shape":"PlatformValues", "locationName":"platform" }, "SriovNetSupport":{ "shape":"String", "locationName":"sriovNetSupport" }, "StateReason":{ "shape":"StateReason", "locationName":"stateReason" }, "ImageOwnerAlias":{ "shape":"String", "locationName":"imageOwnerAlias" }, "Name":{ "shape":"String", "locationName":"name" }, "Description":{ "shape":"String", "locationName":"description" }, "RootDeviceType":{ "shape":"DeviceType", "locationName":"rootDeviceType" }, "RootDeviceName":{ "shape":"String", "locationName":"rootDeviceName" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "VirtualizationType":{ "shape":"VirtualizationType", "locationName":"virtualizationType" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "Hypervisor":{ "shape":"HypervisorType", "locationName":"hypervisor" } } }, "ImageAttribute":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "LaunchPermissions":{ "shape":"LaunchPermissionList", "locationName":"launchPermission" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" }, "KernelId":{ "shape":"AttributeValue", "locationName":"kernel" }, "RamdiskId":{ "shape":"AttributeValue", "locationName":"ramdisk" }, "Description":{ "shape":"AttributeValue", "locationName":"description" }, "SriovNetSupport":{ "shape":"AttributeValue", "locationName":"sriovNetSupport" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" } } }, "ImageAttributeName":{ "type":"string", "enum":[ "description", "kernel", "ramdisk", "launchPermission", "productCodes", "blockDeviceMapping", "sriovNetSupport" ] }, "ImageDiskContainer":{ "type":"structure", "members":{ "Description":{"shape":"String"}, "Format":{"shape":"String"}, "Url":{"shape":"String"}, "UserBucket":{"shape":"UserBucket"}, "DeviceName":{"shape":"String"}, "SnapshotId":{"shape":"String"} } }, "ImageDiskContainerList":{ "type":"list", "member":{ "shape":"ImageDiskContainer", "locationName":"item" } }, "ImageIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ImageId" } }, "ImageList":{ "type":"list", "member":{ "shape":"Image", "locationName":"item" } }, "ImageState":{ "type":"string", "enum":[ "pending", "available", "invalid", "deregistered", "transient", "failed", "error" ] }, "ImageTypeValues":{ "type":"string", "enum":[ "machine", "kernel", "ramdisk" ] }, "ImportImageRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "Description":{"shape":"String"}, "DiskContainers":{ "shape":"ImageDiskContainerList", "locationName":"DiskContainer" }, "LicenseType":{"shape":"String"}, "Hypervisor":{"shape":"String"}, "Architecture":{"shape":"String"}, "Platform":{"shape":"String"}, "ClientData":{"shape":"ClientData"}, "ClientToken":{"shape":"String"}, "RoleName":{"shape":"String"} } }, "ImportImageResult":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "Architecture":{ "shape":"String", "locationName":"architecture" }, "LicenseType":{ "shape":"String", "locationName":"licenseType" }, "Platform":{ "shape":"String", "locationName":"platform" }, "Hypervisor":{ "shape":"String", "locationName":"hypervisor" }, "Description":{ "shape":"String", "locationName":"description" }, "SnapshotDetails":{ "shape":"SnapshotDetailList", "locationName":"snapshotDetailSet" }, "ImageId":{ "shape":"String", "locationName":"imageId" }, "Progress":{ "shape":"String", "locationName":"progress" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Status":{ "shape":"String", "locationName":"status" } } }, "ImportImageTask":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "Architecture":{ "shape":"String", "locationName":"architecture" }, "LicenseType":{ "shape":"String", "locationName":"licenseType" }, "Platform":{ "shape":"String", "locationName":"platform" }, "Hypervisor":{ "shape":"String", "locationName":"hypervisor" }, "Description":{ "shape":"String", "locationName":"description" }, "SnapshotDetails":{ "shape":"SnapshotDetailList", "locationName":"snapshotDetailSet" }, "ImageId":{ "shape":"String", "locationName":"imageId" }, "Progress":{ "shape":"String", "locationName":"progress" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Status":{ "shape":"String", "locationName":"status" } } }, "ImportImageTaskList":{ "type":"list", "member":{ "shape":"ImportImageTask", "locationName":"item" } }, "ImportInstanceLaunchSpecification":{ "type":"structure", "members":{ "Architecture":{ "shape":"ArchitectureValues", "locationName":"architecture" }, "GroupNames":{ "shape":"SecurityGroupStringList", "locationName":"GroupName" }, "GroupIds":{ "shape":"SecurityGroupIdStringList", "locationName":"GroupId" }, "AdditionalInfo":{ "shape":"String", "locationName":"additionalInfo" }, "UserData":{ "shape":"UserData", "locationName":"userData" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "Placement":{ "shape":"Placement", "locationName":"placement" }, "Monitoring":{ "shape":"Boolean", "locationName":"monitoring" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "InstanceInitiatedShutdownBehavior":{ "shape":"ShutdownBehavior", "locationName":"instanceInitiatedShutdownBehavior" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" } } }, "ImportInstanceRequest":{ "type":"structure", "required":["Platform"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Description":{ "shape":"String", "locationName":"description" }, "LaunchSpecification":{ "shape":"ImportInstanceLaunchSpecification", "locationName":"launchSpecification" }, "DiskImages":{ "shape":"DiskImageList", "locationName":"diskImage" }, "Platform":{ "shape":"PlatformValues", "locationName":"platform" } } }, "ImportInstanceResult":{ "type":"structure", "members":{ "ConversionTask":{ "shape":"ConversionTask", "locationName":"conversionTask" } } }, "ImportInstanceTaskDetails":{ "type":"structure", "required":["Volumes"], "members":{ "Volumes":{ "shape":"ImportInstanceVolumeDetailSet", "locationName":"volumes" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Platform":{ "shape":"PlatformValues", "locationName":"platform" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ImportInstanceVolumeDetailItem":{ "type":"structure", "required":[ "BytesConverted", "AvailabilityZone", "Image", "Volume", "Status" ], "members":{ "BytesConverted":{ "shape":"Long", "locationName":"bytesConverted" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Image":{ "shape":"DiskImageDescription", "locationName":"image" }, "Volume":{ "shape":"DiskImageVolumeDescription", "locationName":"volume" }, "Status":{ "shape":"String", "locationName":"status" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ImportInstanceVolumeDetailSet":{ "type":"list", "member":{ "shape":"ImportInstanceVolumeDetailItem", "locationName":"item" } }, "ImportKeyPairRequest":{ "type":"structure", "required":[ "KeyName", "PublicKeyMaterial" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "PublicKeyMaterial":{ "shape":"Blob", "locationName":"publicKeyMaterial" } } }, "ImportKeyPairResult":{ "type":"structure", "members":{ "KeyName":{ "shape":"String", "locationName":"keyName" }, "KeyFingerprint":{ "shape":"String", "locationName":"keyFingerprint" } } }, "ImportSnapshotRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "Description":{"shape":"String"}, "DiskContainer":{"shape":"SnapshotDiskContainer"}, "ClientData":{"shape":"ClientData"}, "ClientToken":{"shape":"String"}, "RoleName":{"shape":"String"} } }, "ImportSnapshotResult":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "SnapshotTaskDetail":{ "shape":"SnapshotTaskDetail", "locationName":"snapshotTaskDetail" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ImportSnapshotTask":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "SnapshotTaskDetail":{ "shape":"SnapshotTaskDetail", "locationName":"snapshotTaskDetail" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ImportSnapshotTaskList":{ "type":"list", "member":{ "shape":"ImportSnapshotTask", "locationName":"item" } }, "ImportTaskIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"ImportTaskId" } }, "ImportVolumeRequest":{ "type":"structure", "required":[ "AvailabilityZone", "Image", "Volume" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Image":{ "shape":"DiskImageDetail", "locationName":"image" }, "Description":{ "shape":"String", "locationName":"description" }, "Volume":{ "shape":"VolumeDetail", "locationName":"volume" } } }, "ImportVolumeResult":{ "type":"structure", "members":{ "ConversionTask":{ "shape":"ConversionTask", "locationName":"conversionTask" } } }, "ImportVolumeTaskDetails":{ "type":"structure", "required":[ "BytesConverted", "AvailabilityZone", "Image", "Volume" ], "members":{ "BytesConverted":{ "shape":"Long", "locationName":"bytesConverted" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Description":{ "shape":"String", "locationName":"description" }, "Image":{ "shape":"DiskImageDescription", "locationName":"image" }, "Volume":{ "shape":"DiskImageVolumeDescription", "locationName":"volume" } } }, "Instance":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "ImageId":{ "shape":"String", "locationName":"imageId" }, "State":{ "shape":"InstanceState", "locationName":"instanceState" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "PublicDnsName":{ "shape":"String", "locationName":"dnsName" }, "StateTransitionReason":{ "shape":"String", "locationName":"reason" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "AmiLaunchIndex":{ "shape":"Integer", "locationName":"amiLaunchIndex" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "LaunchTime":{ "shape":"DateTime", "locationName":"launchTime" }, "Placement":{ "shape":"Placement", "locationName":"placement" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "Platform":{ "shape":"PlatformValues", "locationName":"platform" }, "Monitoring":{ "shape":"Monitoring", "locationName":"monitoring" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PublicIpAddress":{ "shape":"String", "locationName":"ipAddress" }, "StateReason":{ "shape":"StateReason", "locationName":"stateReason" }, "Architecture":{ "shape":"ArchitectureValues", "locationName":"architecture" }, "RootDeviceType":{ "shape":"DeviceType", "locationName":"rootDeviceType" }, "RootDeviceName":{ "shape":"String", "locationName":"rootDeviceName" }, "BlockDeviceMappings":{ "shape":"InstanceBlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "VirtualizationType":{ "shape":"VirtualizationType", "locationName":"virtualizationType" }, "InstanceLifecycle":{ "shape":"InstanceLifecycleType", "locationName":"instanceLifecycle" }, "SpotInstanceRequestId":{ "shape":"String", "locationName":"spotInstanceRequestId" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "SecurityGroups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "SourceDestCheck":{ "shape":"Boolean", "locationName":"sourceDestCheck" }, "Hypervisor":{ "shape":"HypervisorType", "locationName":"hypervisor" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceList", "locationName":"networkInterfaceSet" }, "IamInstanceProfile":{ "shape":"IamInstanceProfile", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" }, "SriovNetSupport":{ "shape":"String", "locationName":"sriovNetSupport" } } }, "InstanceAttribute":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "InstanceType":{ "shape":"AttributeValue", "locationName":"instanceType" }, "KernelId":{ "shape":"AttributeValue", "locationName":"kernel" }, "RamdiskId":{ "shape":"AttributeValue", "locationName":"ramdisk" }, "UserData":{ "shape":"AttributeValue", "locationName":"userData" }, "DisableApiTermination":{ "shape":"AttributeBooleanValue", "locationName":"disableApiTermination" }, "InstanceInitiatedShutdownBehavior":{ "shape":"AttributeValue", "locationName":"instanceInitiatedShutdownBehavior" }, "RootDeviceName":{ "shape":"AttributeValue", "locationName":"rootDeviceName" }, "BlockDeviceMappings":{ "shape":"InstanceBlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" }, "EbsOptimized":{ "shape":"AttributeBooleanValue", "locationName":"ebsOptimized" }, "SriovNetSupport":{ "shape":"AttributeValue", "locationName":"sriovNetSupport" }, "SourceDestCheck":{ "shape":"AttributeBooleanValue", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" } } }, "InstanceAttributeName":{ "type":"string", "enum":[ "instanceType", "kernel", "ramdisk", "userData", "disableApiTermination", "instanceInitiatedShutdownBehavior", "rootDeviceName", "blockDeviceMapping", "productCodes", "sourceDestCheck", "groupSet", "ebsOptimized", "sriovNetSupport" ] }, "InstanceBlockDeviceMapping":{ "type":"structure", "members":{ "DeviceName":{ "shape":"String", "locationName":"deviceName" }, "Ebs":{ "shape":"EbsInstanceBlockDevice", "locationName":"ebs" } } }, "InstanceBlockDeviceMappingList":{ "type":"list", "member":{ "shape":"InstanceBlockDeviceMapping", "locationName":"item" } }, "InstanceBlockDeviceMappingSpecification":{ "type":"structure", "members":{ "DeviceName":{ "shape":"String", "locationName":"deviceName" }, "Ebs":{ "shape":"EbsInstanceBlockDeviceSpecification", "locationName":"ebs" }, "VirtualName":{ "shape":"String", "locationName":"virtualName" }, "NoDevice":{ "shape":"String", "locationName":"noDevice" } } }, "InstanceBlockDeviceMappingSpecificationList":{ "type":"list", "member":{ "shape":"InstanceBlockDeviceMappingSpecification", "locationName":"item" } }, "InstanceCapacity":{ "type":"structure", "members":{ "InstanceType":{ "shape":"String", "locationName":"instanceType" }, "AvailableCapacity":{ "shape":"Integer", "locationName":"availableCapacity" }, "TotalCapacity":{ "shape":"Integer", "locationName":"totalCapacity" } } }, "InstanceCount":{ "type":"structure", "members":{ "State":{ "shape":"ListingState", "locationName":"state" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" } } }, "InstanceCountList":{ "type":"list", "member":{ "shape":"InstanceCount", "locationName":"item" } }, "InstanceExportDetails":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "TargetEnvironment":{ "shape":"ExportEnvironment", "locationName":"targetEnvironment" } } }, "InstanceIdSet":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "InstanceIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"InstanceId" } }, "InstanceLifecycleType":{ "type":"string", "enum":[ "spot", "scheduled" ] }, "InstanceList":{ "type":"list", "member":{ "shape":"Instance", "locationName":"item" } }, "InstanceMonitoring":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Monitoring":{ "shape":"Monitoring", "locationName":"monitoring" } } }, "InstanceMonitoringList":{ "type":"list", "member":{ "shape":"InstanceMonitoring", "locationName":"item" } }, "InstanceNetworkInterface":{ "type":"structure", "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Description":{ "shape":"String", "locationName":"description" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "Status":{ "shape":"NetworkInterfaceStatus", "locationName":"status" }, "MacAddress":{ "shape":"String", "locationName":"macAddress" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "SourceDestCheck":{ "shape":"Boolean", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Attachment":{ "shape":"InstanceNetworkInterfaceAttachment", "locationName":"attachment" }, "Association":{ "shape":"InstanceNetworkInterfaceAssociation", "locationName":"association" }, "PrivateIpAddresses":{ "shape":"InstancePrivateIpAddressList", "locationName":"privateIpAddressesSet" } } }, "InstanceNetworkInterfaceAssociation":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "PublicDnsName":{ "shape":"String", "locationName":"publicDnsName" }, "IpOwnerId":{ "shape":"String", "locationName":"ipOwnerId" } } }, "InstanceNetworkInterfaceAttachment":{ "type":"structure", "members":{ "AttachmentId":{ "shape":"String", "locationName":"attachmentId" }, "DeviceIndex":{ "shape":"Integer", "locationName":"deviceIndex" }, "Status":{ "shape":"AttachmentStatus", "locationName":"status" }, "AttachTime":{ "shape":"DateTime", "locationName":"attachTime" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "InstanceNetworkInterfaceList":{ "type":"list", "member":{ "shape":"InstanceNetworkInterface", "locationName":"item" } }, "InstanceNetworkInterfaceSpecification":{ "type":"structure", "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "DeviceIndex":{ "shape":"Integer", "locationName":"deviceIndex" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "Description":{ "shape":"String", "locationName":"description" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "Groups":{ "shape":"SecurityGroupIdStringList", "locationName":"SecurityGroupId" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" }, "PrivateIpAddresses":{ "shape":"PrivateIpAddressSpecificationList", "locationName":"privateIpAddressesSet", "queryName":"PrivateIpAddresses" }, "SecondaryPrivateIpAddressCount":{ "shape":"Integer", "locationName":"secondaryPrivateIpAddressCount" }, "AssociatePublicIpAddress":{ "shape":"Boolean", "locationName":"associatePublicIpAddress" } } }, "InstanceNetworkInterfaceSpecificationList":{ "type":"list", "member":{ "shape":"InstanceNetworkInterfaceSpecification", "locationName":"item" } }, "InstancePrivateIpAddress":{ "type":"structure", "members":{ "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "Primary":{ "shape":"Boolean", "locationName":"primary" }, "Association":{ "shape":"InstanceNetworkInterfaceAssociation", "locationName":"association" } } }, "InstancePrivateIpAddressList":{ "type":"list", "member":{ "shape":"InstancePrivateIpAddress", "locationName":"item" } }, "InstanceState":{ "type":"structure", "members":{ "Code":{ "shape":"Integer", "locationName":"code" }, "Name":{ "shape":"InstanceStateName", "locationName":"name" } } }, "InstanceStateChange":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "CurrentState":{ "shape":"InstanceState", "locationName":"currentState" }, "PreviousState":{ "shape":"InstanceState", "locationName":"previousState" } } }, "InstanceStateChangeList":{ "type":"list", "member":{ "shape":"InstanceStateChange", "locationName":"item" } }, "InstanceStateName":{ "type":"string", "enum":[ "pending", "running", "shutting-down", "terminated", "stopping", "stopped" ] }, "InstanceStatus":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Events":{ "shape":"InstanceStatusEventList", "locationName":"eventsSet" }, "InstanceState":{ "shape":"InstanceState", "locationName":"instanceState" }, "SystemStatus":{ "shape":"InstanceStatusSummary", "locationName":"systemStatus" }, "InstanceStatus":{ "shape":"InstanceStatusSummary", "locationName":"instanceStatus" } } }, "InstanceStatusDetails":{ "type":"structure", "members":{ "Name":{ "shape":"StatusName", "locationName":"name" }, "Status":{ "shape":"StatusType", "locationName":"status" }, "ImpairedSince":{ "shape":"DateTime", "locationName":"impairedSince" } } }, "InstanceStatusDetailsList":{ "type":"list", "member":{ "shape":"InstanceStatusDetails", "locationName":"item" } }, "InstanceStatusEvent":{ "type":"structure", "members":{ "Code":{ "shape":"EventCode", "locationName":"code" }, "Description":{ "shape":"String", "locationName":"description" }, "NotBefore":{ "shape":"DateTime", "locationName":"notBefore" }, "NotAfter":{ "shape":"DateTime", "locationName":"notAfter" } } }, "InstanceStatusEventList":{ "type":"list", "member":{ "shape":"InstanceStatusEvent", "locationName":"item" } }, "InstanceStatusList":{ "type":"list", "member":{ "shape":"InstanceStatus", "locationName":"item" } }, "InstanceStatusSummary":{ "type":"structure", "members":{ "Status":{ "shape":"SummaryStatus", "locationName":"status" }, "Details":{ "shape":"InstanceStatusDetailsList", "locationName":"details" } } }, "InstanceType":{ "type":"string", "enum":[ "t1.micro", "m1.small", "m1.medium", "m1.large", "m1.xlarge", "m3.medium", "m3.large", "m3.xlarge", "m3.2xlarge", "m4.large", "m4.xlarge", "m4.2xlarge", "m4.4xlarge", "m4.10xlarge", "t2.nano", "t2.micro", "t2.small", "t2.medium", "t2.large", "m2.xlarge", "m2.2xlarge", "m2.4xlarge", "cr1.8xlarge", "x1.4xlarge", "x1.8xlarge", "x1.16xlarge", "x1.32xlarge", "i2.xlarge", "i2.2xlarge", "i2.4xlarge", "i2.8xlarge", "hi1.4xlarge", "hs1.8xlarge", "c1.medium", "c1.xlarge", "c3.large", "c3.xlarge", "c3.2xlarge", "c3.4xlarge", "c3.8xlarge", "c4.large", "c4.xlarge", "c4.2xlarge", "c4.4xlarge", "c4.8xlarge", "cc1.4xlarge", "cc2.8xlarge", "g2.2xlarge", "g2.8xlarge", "cg1.4xlarge", "r3.large", "r3.xlarge", "r3.2xlarge", "r3.4xlarge", "r3.8xlarge", "d2.xlarge", "d2.2xlarge", "d2.4xlarge", "d2.8xlarge" ] }, "InstanceTypeList":{ "type":"list", "member":{"shape":"InstanceType"} }, "Integer":{"type":"integer"}, "InternetGateway":{ "type":"structure", "members":{ "InternetGatewayId":{ "shape":"String", "locationName":"internetGatewayId" }, "Attachments":{ "shape":"InternetGatewayAttachmentList", "locationName":"attachmentSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "InternetGatewayAttachment":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "State":{ "shape":"AttachmentStatus", "locationName":"state" } } }, "InternetGatewayAttachmentList":{ "type":"list", "member":{ "shape":"InternetGatewayAttachment", "locationName":"item" } }, "InternetGatewayList":{ "type":"list", "member":{ "shape":"InternetGateway", "locationName":"item" } }, "IpPermission":{ "type":"structure", "members":{ "IpProtocol":{ "shape":"String", "locationName":"ipProtocol" }, "FromPort":{ "shape":"Integer", "locationName":"fromPort" }, "ToPort":{ "shape":"Integer", "locationName":"toPort" }, "UserIdGroupPairs":{ "shape":"UserIdGroupPairList", "locationName":"groups" }, "IpRanges":{ "shape":"IpRangeList", "locationName":"ipRanges" }, "PrefixListIds":{ "shape":"PrefixListIdList", "locationName":"prefixListIds" } } }, "IpPermissionList":{ "type":"list", "member":{ "shape":"IpPermission", "locationName":"item" } }, "IpRange":{ "type":"structure", "members":{ "CidrIp":{ "shape":"String", "locationName":"cidrIp" } } }, "IpRangeList":{ "type":"list", "member":{ "shape":"IpRange", "locationName":"item" } }, "IpRanges":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "KeyNameStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"KeyName" } }, "KeyPair":{ "type":"structure", "members":{ "KeyName":{ "shape":"String", "locationName":"keyName" }, "KeyFingerprint":{ "shape":"String", "locationName":"keyFingerprint" }, "KeyMaterial":{ "shape":"String", "locationName":"keyMaterial" } } }, "KeyPairInfo":{ "type":"structure", "members":{ "KeyName":{ "shape":"String", "locationName":"keyName" }, "KeyFingerprint":{ "shape":"String", "locationName":"keyFingerprint" } } }, "KeyPairList":{ "type":"list", "member":{ "shape":"KeyPairInfo", "locationName":"item" } }, "LaunchPermission":{ "type":"structure", "members":{ "UserId":{ "shape":"String", "locationName":"userId" }, "Group":{ "shape":"PermissionGroup", "locationName":"group" } } }, "LaunchPermissionList":{ "type":"list", "member":{ "shape":"LaunchPermission", "locationName":"item" } }, "LaunchPermissionModifications":{ "type":"structure", "members":{ "Add":{"shape":"LaunchPermissionList"}, "Remove":{"shape":"LaunchPermissionList"} } }, "LaunchSpecification":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "SecurityGroups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "UserData":{ "shape":"String", "locationName":"userData" }, "AddressingType":{ "shape":"String", "locationName":"addressingType" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "Placement":{ "shape":"SpotPlacement", "locationName":"placement" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceSpecificationList", "locationName":"networkInterfaceSet" }, "IamInstanceProfile":{ "shape":"IamInstanceProfileSpecification", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" }, "Monitoring":{ "shape":"RunInstancesMonitoringEnabled", "locationName":"monitoring" } } }, "LaunchSpecsList":{ "type":"list", "member":{ "shape":"SpotFleetLaunchSpecification", "locationName":"item" }, "min":1 }, "ListingState":{ "type":"string", "enum":[ "available", "sold", "cancelled", "pending" ] }, "ListingStatus":{ "type":"string", "enum":[ "active", "pending", "cancelled", "closed" ] }, "Long":{"type":"long"}, "MaxResults":{ "type":"integer", "max":255, "min":5 }, "ModifyHostsRequest":{ "type":"structure", "required":[ "HostIds", "AutoPlacement" ], "members":{ "HostIds":{ "shape":"RequestHostIdList", "locationName":"hostId" }, "AutoPlacement":{ "shape":"AutoPlacement", "locationName":"autoPlacement" } } }, "ModifyHostsResult":{ "type":"structure", "members":{ "Successful":{ "shape":"ResponseHostIdList", "locationName":"successful" }, "Unsuccessful":{ "shape":"UnsuccessfulItemList", "locationName":"unsuccessful" } } }, "ModifyIdFormatRequest":{ "type":"structure", "required":[ "Resource", "UseLongIds" ], "members":{ "Resource":{"shape":"String"}, "UseLongIds":{"shape":"Boolean"} } }, "ModifyImageAttributeRequest":{ "type":"structure", "required":["ImageId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"}, "Attribute":{"shape":"String"}, "OperationType":{"shape":"OperationType"}, "UserIds":{ "shape":"UserIdStringList", "locationName":"UserId" }, "UserGroups":{ "shape":"UserGroupStringList", "locationName":"UserGroup" }, "ProductCodes":{ "shape":"ProductCodeStringList", "locationName":"ProductCode" }, "Value":{"shape":"String"}, "LaunchPermission":{"shape":"LaunchPermissionModifications"}, "Description":{"shape":"AttributeValue"} } }, "ModifyInstanceAttributeRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Attribute":{ "shape":"InstanceAttributeName", "locationName":"attribute" }, "Value":{ "shape":"String", "locationName":"value" }, "BlockDeviceMappings":{ "shape":"InstanceBlockDeviceMappingSpecificationList", "locationName":"blockDeviceMapping" }, "SourceDestCheck":{"shape":"AttributeBooleanValue"}, "DisableApiTermination":{ "shape":"AttributeBooleanValue", "locationName":"disableApiTermination" }, "InstanceType":{ "shape":"AttributeValue", "locationName":"instanceType" }, "Kernel":{ "shape":"AttributeValue", "locationName":"kernel" }, "Ramdisk":{ "shape":"AttributeValue", "locationName":"ramdisk" }, "UserData":{ "shape":"BlobAttributeValue", "locationName":"userData" }, "InstanceInitiatedShutdownBehavior":{ "shape":"AttributeValue", "locationName":"instanceInitiatedShutdownBehavior" }, "Groups":{ "shape":"GroupIdStringList", "locationName":"GroupId" }, "EbsOptimized":{ "shape":"AttributeBooleanValue", "locationName":"ebsOptimized" }, "SriovNetSupport":{ "shape":"AttributeValue", "locationName":"sriovNetSupport" } } }, "ModifyInstancePlacementRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Tenancy":{ "shape":"HostTenancy", "locationName":"tenancy" }, "Affinity":{ "shape":"Affinity", "locationName":"affinity" }, "HostId":{ "shape":"String", "locationName":"hostId" } } }, "ModifyInstancePlacementResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "ModifyNetworkInterfaceAttributeRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "Description":{ "shape":"AttributeValue", "locationName":"description" }, "SourceDestCheck":{ "shape":"AttributeBooleanValue", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"SecurityGroupIdStringList", "locationName":"SecurityGroupId" }, "Attachment":{ "shape":"NetworkInterfaceAttachmentChanges", "locationName":"attachment" } } }, "ModifyReservedInstancesRequest":{ "type":"structure", "required":[ "ReservedInstancesIds", "TargetConfigurations" ], "members":{ "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "ReservedInstancesIds":{ "shape":"ReservedInstancesIdStringList", "locationName":"ReservedInstancesId" }, "TargetConfigurations":{ "shape":"ReservedInstancesConfigurationList", "locationName":"ReservedInstancesConfigurationSetItemType" } } }, "ModifyReservedInstancesResult":{ "type":"structure", "members":{ "ReservedInstancesModificationId":{ "shape":"String", "locationName":"reservedInstancesModificationId" } } }, "ModifySnapshotAttributeRequest":{ "type":"structure", "required":["SnapshotId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotId":{"shape":"String"}, "Attribute":{"shape":"SnapshotAttributeName"}, "OperationType":{"shape":"OperationType"}, "UserIds":{ "shape":"UserIdStringList", "locationName":"UserId" }, "GroupNames":{ "shape":"GroupNameStringList", "locationName":"UserGroup" }, "CreateVolumePermission":{"shape":"CreateVolumePermissionModifications"} } }, "ModifySpotFleetRequestRequest":{ "type":"structure", "required":["SpotFleetRequestId"], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "TargetCapacity":{ "shape":"Integer", "locationName":"targetCapacity" }, "ExcessCapacityTerminationPolicy":{ "shape":"ExcessCapacityTerminationPolicy", "locationName":"excessCapacityTerminationPolicy" } } }, "ModifySpotFleetRequestResponse":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "ModifySubnetAttributeRequest":{ "type":"structure", "required":["SubnetId"], "members":{ "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "MapPublicIpOnLaunch":{"shape":"AttributeBooleanValue"} } }, "ModifyVolumeAttributeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "AutoEnableIO":{"shape":"AttributeBooleanValue"} } }, "ModifyVpcAttributeRequest":{ "type":"structure", "required":["VpcId"], "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "EnableDnsSupport":{"shape":"AttributeBooleanValue"}, "EnableDnsHostnames":{"shape":"AttributeBooleanValue"} } }, "ModifyVpcEndpointRequest":{ "type":"structure", "required":["VpcEndpointId"], "members":{ "DryRun":{"shape":"Boolean"}, "VpcEndpointId":{"shape":"String"}, "ResetPolicy":{"shape":"Boolean"}, "PolicyDocument":{"shape":"String"}, "AddRouteTableIds":{ "shape":"ValueStringList", "locationName":"AddRouteTableId" }, "RemoveRouteTableIds":{ "shape":"ValueStringList", "locationName":"RemoveRouteTableId" } } }, "ModifyVpcEndpointResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "ModifyVpcPeeringConnectionOptionsRequest":{ "type":"structure", "required":["VpcPeeringConnectionId"], "members":{ "DryRun":{"shape":"Boolean"}, "VpcPeeringConnectionId":{"shape":"String"}, "RequesterPeeringConnectionOptions":{"shape":"PeeringConnectionOptionsRequest"}, "AccepterPeeringConnectionOptions":{"shape":"PeeringConnectionOptionsRequest"} } }, "ModifyVpcPeeringConnectionOptionsResult":{ "type":"structure", "members":{ "RequesterPeeringConnectionOptions":{ "shape":"PeeringConnectionOptions", "locationName":"requesterPeeringConnectionOptions" }, "AccepterPeeringConnectionOptions":{ "shape":"PeeringConnectionOptions", "locationName":"accepterPeeringConnectionOptions" } } }, "MonitorInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" } } }, "MonitorInstancesResult":{ "type":"structure", "members":{ "InstanceMonitorings":{ "shape":"InstanceMonitoringList", "locationName":"instancesSet" } } }, "Monitoring":{ "type":"structure", "members":{ "State":{ "shape":"MonitoringState", "locationName":"state" } } }, "MonitoringState":{ "type":"string", "enum":[ "disabled", "disabling", "enabled", "pending" ] }, "MoveAddressToVpcRequest":{ "type":"structure", "required":["PublicIp"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIp":{ "shape":"String", "locationName":"publicIp" } } }, "MoveAddressToVpcResult":{ "type":"structure", "members":{ "AllocationId":{ "shape":"String", "locationName":"allocationId" }, "Status":{ "shape":"Status", "locationName":"status" } } }, "MoveStatus":{ "type":"string", "enum":[ "movingToVpc", "restoringToClassic" ] }, "MovingAddressStatus":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "MoveStatus":{ "shape":"MoveStatus", "locationName":"moveStatus" } } }, "MovingAddressStatusSet":{ "type":"list", "member":{ "shape":"MovingAddressStatus", "locationName":"item" } }, "NatGateway":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "NatGatewayId":{ "shape":"String", "locationName":"natGatewayId" }, "CreateTime":{ "shape":"DateTime", "locationName":"createTime" }, "DeleteTime":{ "shape":"DateTime", "locationName":"deleteTime" }, "NatGatewayAddresses":{ "shape":"NatGatewayAddressList", "locationName":"natGatewayAddressSet" }, "State":{ "shape":"NatGatewayState", "locationName":"state" }, "FailureCode":{ "shape":"String", "locationName":"failureCode" }, "FailureMessage":{ "shape":"String", "locationName":"failureMessage" }, "ProvisionedBandwidth":{ "shape":"ProvisionedBandwidth", "locationName":"provisionedBandwidth" } } }, "NatGatewayAddress":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "AllocationId":{ "shape":"String", "locationName":"allocationId" }, "PrivateIp":{ "shape":"String", "locationName":"privateIp" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" } } }, "NatGatewayAddressList":{ "type":"list", "member":{ "shape":"NatGatewayAddress", "locationName":"item" } }, "NatGatewayList":{ "type":"list", "member":{ "shape":"NatGateway", "locationName":"item" } }, "NatGatewayState":{ "type":"string", "enum":[ "pending", "failed", "available", "deleting", "deleted" ] }, "NetworkAcl":{ "type":"structure", "members":{ "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "IsDefault":{ "shape":"Boolean", "locationName":"default" }, "Entries":{ "shape":"NetworkAclEntryList", "locationName":"entrySet" }, "Associations":{ "shape":"NetworkAclAssociationList", "locationName":"associationSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "NetworkAclAssociation":{ "type":"structure", "members":{ "NetworkAclAssociationId":{ "shape":"String", "locationName":"networkAclAssociationId" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" } } }, "NetworkAclAssociationList":{ "type":"list", "member":{ "shape":"NetworkAclAssociation", "locationName":"item" } }, "NetworkAclEntry":{ "type":"structure", "members":{ "RuleNumber":{ "shape":"Integer", "locationName":"ruleNumber" }, "Protocol":{ "shape":"String", "locationName":"protocol" }, "RuleAction":{ "shape":"RuleAction", "locationName":"ruleAction" }, "Egress":{ "shape":"Boolean", "locationName":"egress" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "IcmpTypeCode":{ "shape":"IcmpTypeCode", "locationName":"icmpTypeCode" }, "PortRange":{ "shape":"PortRange", "locationName":"portRange" } } }, "NetworkAclEntryList":{ "type":"list", "member":{ "shape":"NetworkAclEntry", "locationName":"item" } }, "NetworkAclList":{ "type":"list", "member":{ "shape":"NetworkAcl", "locationName":"item" } }, "NetworkInterface":{ "type":"structure", "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Description":{ "shape":"String", "locationName":"description" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "RequesterId":{ "shape":"String", "locationName":"requesterId" }, "RequesterManaged":{ "shape":"Boolean", "locationName":"requesterManaged" }, "Status":{ "shape":"NetworkInterfaceStatus", "locationName":"status" }, "MacAddress":{ "shape":"String", "locationName":"macAddress" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "SourceDestCheck":{ "shape":"Boolean", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Attachment":{ "shape":"NetworkInterfaceAttachment", "locationName":"attachment" }, "Association":{ "shape":"NetworkInterfaceAssociation", "locationName":"association" }, "TagSet":{ "shape":"TagList", "locationName":"tagSet" }, "PrivateIpAddresses":{ "shape":"NetworkInterfacePrivateIpAddressList", "locationName":"privateIpAddressesSet" }, "InterfaceType":{ "shape":"NetworkInterfaceType", "locationName":"interfaceType" } } }, "NetworkInterfaceAssociation":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "PublicDnsName":{ "shape":"String", "locationName":"publicDnsName" }, "IpOwnerId":{ "shape":"String", "locationName":"ipOwnerId" }, "AllocationId":{ "shape":"String", "locationName":"allocationId" }, "AssociationId":{ "shape":"String", "locationName":"associationId" } } }, "NetworkInterfaceAttachment":{ "type":"structure", "members":{ "AttachmentId":{ "shape":"String", "locationName":"attachmentId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "InstanceOwnerId":{ "shape":"String", "locationName":"instanceOwnerId" }, "DeviceIndex":{ "shape":"Integer", "locationName":"deviceIndex" }, "Status":{ "shape":"AttachmentStatus", "locationName":"status" }, "AttachTime":{ "shape":"DateTime", "locationName":"attachTime" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "NetworkInterfaceAttachmentChanges":{ "type":"structure", "members":{ "AttachmentId":{ "shape":"String", "locationName":"attachmentId" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "NetworkInterfaceAttribute":{ "type":"string", "enum":[ "description", "groupSet", "sourceDestCheck", "attachment" ] }, "NetworkInterfaceIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "NetworkInterfaceList":{ "type":"list", "member":{ "shape":"NetworkInterface", "locationName":"item" } }, "NetworkInterfacePrivateIpAddress":{ "type":"structure", "members":{ "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "Primary":{ "shape":"Boolean", "locationName":"primary" }, "Association":{ "shape":"NetworkInterfaceAssociation", "locationName":"association" } } }, "NetworkInterfacePrivateIpAddressList":{ "type":"list", "member":{ "shape":"NetworkInterfacePrivateIpAddress", "locationName":"item" } }, "NetworkInterfaceStatus":{ "type":"string", "enum":[ "available", "attaching", "in-use", "detaching" ] }, "NetworkInterfaceType":{ "type":"string", "enum":[ "interface", "natGateway" ] }, "NewDhcpConfiguration":{ "type":"structure", "members":{ "Key":{ "shape":"String", "locationName":"key" }, "Values":{ "shape":"ValueStringList", "locationName":"Value" } } }, "NewDhcpConfigurationList":{ "type":"list", "member":{ "shape":"NewDhcpConfiguration", "locationName":"item" } }, "NextToken":{ "type":"string", "max":1024, "min":1 }, "OccurrenceDayRequestSet":{ "type":"list", "member":{ "shape":"Integer", "locationName":"OccurenceDay" } }, "OccurrenceDaySet":{ "type":"list", "member":{ "shape":"Integer", "locationName":"item" } }, "OfferingTypeValues":{ "type":"string", "enum":[ "Heavy Utilization", "Medium Utilization", "Light Utilization", "No Upfront", "Partial Upfront", "All Upfront" ] }, "OperationType":{ "type":"string", "enum":[ "add", "remove" ] }, "OwnerStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"Owner" } }, "PeeringConnectionOptions":{ "type":"structure", "members":{ "AllowEgressFromLocalClassicLinkToRemoteVpc":{ "shape":"Boolean", "locationName":"allowEgressFromLocalClassicLinkToRemoteVpc" }, "AllowEgressFromLocalVpcToRemoteClassicLink":{ "shape":"Boolean", "locationName":"allowEgressFromLocalVpcToRemoteClassicLink" } } }, "PeeringConnectionOptionsRequest":{ "type":"structure", "required":[ "AllowEgressFromLocalClassicLinkToRemoteVpc", "AllowEgressFromLocalVpcToRemoteClassicLink" ], "members":{ "AllowEgressFromLocalClassicLinkToRemoteVpc":{"shape":"Boolean"}, "AllowEgressFromLocalVpcToRemoteClassicLink":{"shape":"Boolean"} } }, "PermissionGroup":{ "type":"string", "enum":["all"] }, "Placement":{ "type":"structure", "members":{ "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "Tenancy":{ "shape":"Tenancy", "locationName":"tenancy" }, "HostId":{ "shape":"String", "locationName":"hostId" }, "Affinity":{ "shape":"String", "locationName":"affinity" } } }, "PlacementGroup":{ "type":"structure", "members":{ "GroupName":{ "shape":"String", "locationName":"groupName" }, "Strategy":{ "shape":"PlacementStrategy", "locationName":"strategy" }, "State":{ "shape":"PlacementGroupState", "locationName":"state" } } }, "PlacementGroupList":{ "type":"list", "member":{ "shape":"PlacementGroup", "locationName":"item" } }, "PlacementGroupState":{ "type":"string", "enum":[ "pending", "available", "deleting", "deleted" ] }, "PlacementGroupStringList":{ "type":"list", "member":{"shape":"String"} }, "PlacementStrategy":{ "type":"string", "enum":["cluster"] }, "PlatformValues":{ "type":"string", "enum":["Windows"] }, "PortRange":{ "type":"structure", "members":{ "From":{ "shape":"Integer", "locationName":"from" }, "To":{ "shape":"Integer", "locationName":"to" } } }, "PrefixList":{ "type":"structure", "members":{ "PrefixListId":{ "shape":"String", "locationName":"prefixListId" }, "PrefixListName":{ "shape":"String", "locationName":"prefixListName" }, "Cidrs":{ "shape":"ValueStringList", "locationName":"cidrSet" } } }, "PrefixListId":{ "type":"structure", "members":{ "PrefixListId":{ "shape":"String", "locationName":"prefixListId" } } }, "PrefixListIdList":{ "type":"list", "member":{ "shape":"PrefixListId", "locationName":"item" } }, "PrefixListIdSet":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "PrefixListSet":{ "type":"list", "member":{ "shape":"PrefixList", "locationName":"item" } }, "PriceSchedule":{ "type":"structure", "members":{ "Term":{ "shape":"Long", "locationName":"term" }, "Price":{ "shape":"Double", "locationName":"price" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "Active":{ "shape":"Boolean", "locationName":"active" } } }, "PriceScheduleList":{ "type":"list", "member":{ "shape":"PriceSchedule", "locationName":"item" } }, "PriceScheduleSpecification":{ "type":"structure", "members":{ "Term":{ "shape":"Long", "locationName":"term" }, "Price":{ "shape":"Double", "locationName":"price" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" } } }, "PriceScheduleSpecificationList":{ "type":"list", "member":{ "shape":"PriceScheduleSpecification", "locationName":"item" } }, "PricingDetail":{ "type":"structure", "members":{ "Price":{ "shape":"Double", "locationName":"price" }, "Count":{ "shape":"Integer", "locationName":"count" } } }, "PricingDetailsList":{ "type":"list", "member":{ "shape":"PricingDetail", "locationName":"item" } }, "PrivateIpAddressConfigSet":{ "type":"list", "member":{ "shape":"ScheduledInstancesPrivateIpAddressConfig", "locationName":"PrivateIpAddressConfigSet" } }, "PrivateIpAddressSpecification":{ "type":"structure", "required":["PrivateIpAddress"], "members":{ "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "Primary":{ "shape":"Boolean", "locationName":"primary" } } }, "PrivateIpAddressSpecificationList":{ "type":"list", "member":{ "shape":"PrivateIpAddressSpecification", "locationName":"item" } }, "PrivateIpAddressStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"PrivateIpAddress" } }, "ProductCode":{ "type":"structure", "members":{ "ProductCodeId":{ "shape":"String", "locationName":"productCode" }, "ProductCodeType":{ "shape":"ProductCodeValues", "locationName":"type" } } }, "ProductCodeList":{ "type":"list", "member":{ "shape":"ProductCode", "locationName":"item" } }, "ProductCodeStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ProductCode" } }, "ProductCodeValues":{ "type":"string", "enum":[ "devpay", "marketplace" ] }, "ProductDescriptionList":{ "type":"list", "member":{"shape":"String"} }, "PropagatingVgw":{ "type":"structure", "members":{ "GatewayId":{ "shape":"String", "locationName":"gatewayId" } } }, "PropagatingVgwList":{ "type":"list", "member":{ "shape":"PropagatingVgw", "locationName":"item" } }, "ProvisionedBandwidth":{ "type":"structure", "members":{ "Provisioned":{ "shape":"String", "locationName":"provisioned" }, "Requested":{ "shape":"String", "locationName":"requested" }, "RequestTime":{ "shape":"DateTime", "locationName":"requestTime" }, "ProvisionTime":{ "shape":"DateTime", "locationName":"provisionTime" }, "Status":{ "shape":"String", "locationName":"status" } } }, "PublicIpStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"PublicIp" } }, "PurchaseRequest":{ "type":"structure", "required":[ "PurchaseToken", "InstanceCount" ], "members":{ "PurchaseToken":{"shape":"String"}, "InstanceCount":{"shape":"Integer"} } }, "PurchaseRequestSet":{ "type":"list", "member":{ "shape":"PurchaseRequest", "locationName":"PurchaseRequest" }, "min":1 }, "PurchaseReservedInstancesOfferingRequest":{ "type":"structure", "required":[ "ReservedInstancesOfferingId", "InstanceCount" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ReservedInstancesOfferingId":{"shape":"String"}, "InstanceCount":{"shape":"Integer"}, "LimitPrice":{ "shape":"ReservedInstanceLimitPrice", "locationName":"limitPrice" } } }, "PurchaseReservedInstancesOfferingResult":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" } } }, "PurchaseScheduledInstancesRequest":{ "type":"structure", "required":["PurchaseRequests"], "members":{ "DryRun":{"shape":"Boolean"}, "ClientToken":{ "shape":"String", "idempotencyToken":true }, "PurchaseRequests":{ "shape":"PurchaseRequestSet", "locationName":"PurchaseRequest" } } }, "PurchaseScheduledInstancesResult":{ "type":"structure", "members":{ "ScheduledInstanceSet":{ "shape":"PurchasedScheduledInstanceSet", "locationName":"scheduledInstanceSet" } } }, "PurchasedScheduledInstanceSet":{ "type":"list", "member":{ "shape":"ScheduledInstance", "locationName":"item" } }, "RIProductDescription":{ "type":"string", "enum":[ "Linux/UNIX", "Linux/UNIX (Amazon VPC)", "Windows", "Windows (Amazon VPC)" ] }, "ReasonCodesList":{ "type":"list", "member":{ "shape":"ReportInstanceReasonCodes", "locationName":"item" } }, "RebootInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" } } }, "RecurringCharge":{ "type":"structure", "members":{ "Frequency":{ "shape":"RecurringChargeFrequency", "locationName":"frequency" }, "Amount":{ "shape":"Double", "locationName":"amount" } } }, "RecurringChargeFrequency":{ "type":"string", "enum":["Hourly"] }, "RecurringChargesList":{ "type":"list", "member":{ "shape":"RecurringCharge", "locationName":"item" } }, "Region":{ "type":"structure", "members":{ "RegionName":{ "shape":"String", "locationName":"regionName" }, "Endpoint":{ "shape":"String", "locationName":"regionEndpoint" } } }, "RegionList":{ "type":"list", "member":{ "shape":"Region", "locationName":"item" } }, "RegionNameStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"RegionName" } }, "RegisterImageRequest":{ "type":"structure", "required":["Name"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageLocation":{"shape":"String"}, "Name":{ "shape":"String", "locationName":"name" }, "Description":{ "shape":"String", "locationName":"description" }, "Architecture":{ "shape":"ArchitectureValues", "locationName":"architecture" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "RootDeviceName":{ "shape":"String", "locationName":"rootDeviceName" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingRequestList", "locationName":"BlockDeviceMapping" }, "VirtualizationType":{ "shape":"String", "locationName":"virtualizationType" }, "SriovNetSupport":{ "shape":"String", "locationName":"sriovNetSupport" } } }, "RegisterImageResult":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" } } }, "RejectVpcPeeringConnectionRequest":{ "type":"structure", "required":["VpcPeeringConnectionId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "RejectVpcPeeringConnectionResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "ReleaseAddressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIp":{"shape":"String"}, "AllocationId":{"shape":"String"} } }, "ReleaseHostsRequest":{ "type":"structure", "required":["HostIds"], "members":{ "HostIds":{ "shape":"RequestHostIdList", "locationName":"hostId" } } }, "ReleaseHostsResult":{ "type":"structure", "members":{ "Successful":{ "shape":"ResponseHostIdList", "locationName":"successful" }, "Unsuccessful":{ "shape":"UnsuccessfulItemList", "locationName":"unsuccessful" } } }, "ReplaceNetworkAclAssociationRequest":{ "type":"structure", "required":[ "AssociationId", "NetworkAclId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AssociationId":{ "shape":"String", "locationName":"associationId" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" } } }, "ReplaceNetworkAclAssociationResult":{ "type":"structure", "members":{ "NewAssociationId":{ "shape":"String", "locationName":"newAssociationId" } } }, "ReplaceNetworkAclEntryRequest":{ "type":"structure", "required":[ "NetworkAclId", "RuleNumber", "Protocol", "RuleAction", "Egress", "CidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "RuleNumber":{ "shape":"Integer", "locationName":"ruleNumber" }, "Protocol":{ "shape":"String", "locationName":"protocol" }, "RuleAction":{ "shape":"RuleAction", "locationName":"ruleAction" }, "Egress":{ "shape":"Boolean", "locationName":"egress" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "IcmpTypeCode":{ "shape":"IcmpTypeCode", "locationName":"Icmp" }, "PortRange":{ "shape":"PortRange", "locationName":"portRange" } } }, "ReplaceRouteRequest":{ "type":"structure", "required":[ "RouteTableId", "DestinationCidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" }, "GatewayId":{ "shape":"String", "locationName":"gatewayId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" }, "NatGatewayId":{ "shape":"String", "locationName":"natGatewayId" } } }, "ReplaceRouteTableAssociationRequest":{ "type":"structure", "required":[ "AssociationId", "RouteTableId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AssociationId":{ "shape":"String", "locationName":"associationId" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" } } }, "ReplaceRouteTableAssociationResult":{ "type":"structure", "members":{ "NewAssociationId":{ "shape":"String", "locationName":"newAssociationId" } } }, "ReportInstanceReasonCodes":{ "type":"string", "enum":[ "instance-stuck-in-state", "unresponsive", "not-accepting-credentials", "password-not-available", "performance-network", "performance-instance-store", "performance-ebs-volume", "performance-other", "other" ] }, "ReportInstanceStatusRequest":{ "type":"structure", "required":[ "Instances", "Status", "ReasonCodes" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Instances":{ "shape":"InstanceIdStringList", "locationName":"instanceId" }, "Status":{ "shape":"ReportStatusType", "locationName":"status" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "EndTime":{ "shape":"DateTime", "locationName":"endTime" }, "ReasonCodes":{ "shape":"ReasonCodesList", "locationName":"reasonCode" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ReportStatusType":{ "type":"string", "enum":[ "ok", "impaired" ] }, "RequestHostIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "RequestSpotFleetRequest":{ "type":"structure", "required":["SpotFleetRequestConfig"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestConfig":{ "shape":"SpotFleetRequestConfigData", "locationName":"spotFleetRequestConfig" } } }, "RequestSpotFleetResponse":{ "type":"structure", "required":["SpotFleetRequestId"], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" } } }, "RequestSpotInstancesRequest":{ "type":"structure", "required":["SpotPrice"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "Type":{ "shape":"SpotInstanceType", "locationName":"type" }, "ValidFrom":{ "shape":"DateTime", "locationName":"validFrom" }, "ValidUntil":{ "shape":"DateTime", "locationName":"validUntil" }, "LaunchGroup":{ "shape":"String", "locationName":"launchGroup" }, "AvailabilityZoneGroup":{ "shape":"String", "locationName":"availabilityZoneGroup" }, "BlockDurationMinutes":{ "shape":"Integer", "locationName":"blockDurationMinutes" }, "LaunchSpecification":{"shape":"RequestSpotLaunchSpecification"} } }, "RequestSpotInstancesResult":{ "type":"structure", "members":{ "SpotInstanceRequests":{ "shape":"SpotInstanceRequestList", "locationName":"spotInstanceRequestSet" } } }, "RequestSpotLaunchSpecification":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "SecurityGroups":{ "shape":"ValueStringList", "locationName":"SecurityGroup" }, "UserData":{ "shape":"String", "locationName":"userData" }, "AddressingType":{ "shape":"String", "locationName":"addressingType" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "Placement":{ "shape":"SpotPlacement", "locationName":"placement" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceSpecificationList", "locationName":"NetworkInterface" }, "IamInstanceProfile":{ "shape":"IamInstanceProfileSpecification", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" }, "Monitoring":{ "shape":"RunInstancesMonitoringEnabled", "locationName":"monitoring" }, "SecurityGroupIds":{ "shape":"ValueStringList", "locationName":"SecurityGroupId" } } }, "Reservation":{ "type":"structure", "members":{ "ReservationId":{ "shape":"String", "locationName":"reservationId" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "RequesterId":{ "shape":"String", "locationName":"requesterId" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Instances":{ "shape":"InstanceList", "locationName":"instancesSet" } } }, "ReservationList":{ "type":"list", "member":{ "shape":"Reservation", "locationName":"item" } }, "ReservedInstanceLimitPrice":{ "type":"structure", "members":{ "Amount":{ "shape":"Double", "locationName":"amount" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" } } }, "ReservedInstanceState":{ "type":"string", "enum":[ "payment-pending", "active", "payment-failed", "retired" ] }, "ReservedInstances":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Start":{ "shape":"DateTime", "locationName":"start" }, "End":{ "shape":"DateTime", "locationName":"end" }, "Duration":{ "shape":"Long", "locationName":"duration" }, "UsagePrice":{ "shape":"Float", "locationName":"usagePrice" }, "FixedPrice":{ "shape":"Float", "locationName":"fixedPrice" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "ProductDescription":{ "shape":"RIProductDescription", "locationName":"productDescription" }, "State":{ "shape":"ReservedInstanceState", "locationName":"state" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "OfferingType":{ "shape":"OfferingTypeValues", "locationName":"offeringType" }, "RecurringCharges":{ "shape":"RecurringChargesList", "locationName":"recurringCharges" } } }, "ReservedInstancesConfiguration":{ "type":"structure", "members":{ "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Platform":{ "shape":"String", "locationName":"platform" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" } } }, "ReservedInstancesConfigurationList":{ "type":"list", "member":{ "shape":"ReservedInstancesConfiguration", "locationName":"item" } }, "ReservedInstancesId":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" } } }, "ReservedInstancesIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ReservedInstancesId" } }, "ReservedInstancesList":{ "type":"list", "member":{ "shape":"ReservedInstances", "locationName":"item" } }, "ReservedInstancesListing":{ "type":"structure", "members":{ "ReservedInstancesListingId":{ "shape":"String", "locationName":"reservedInstancesListingId" }, "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "CreateDate":{ "shape":"DateTime", "locationName":"createDate" }, "UpdateDate":{ "shape":"DateTime", "locationName":"updateDate" }, "Status":{ "shape":"ListingStatus", "locationName":"status" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "InstanceCounts":{ "shape":"InstanceCountList", "locationName":"instanceCounts" }, "PriceSchedules":{ "shape":"PriceScheduleList", "locationName":"priceSchedules" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "ReservedInstancesListingList":{ "type":"list", "member":{ "shape":"ReservedInstancesListing", "locationName":"item" } }, "ReservedInstancesModification":{ "type":"structure", "members":{ "ReservedInstancesModificationId":{ "shape":"String", "locationName":"reservedInstancesModificationId" }, "ReservedInstancesIds":{ "shape":"ReservedIntancesIds", "locationName":"reservedInstancesSet" }, "ModificationResults":{ "shape":"ReservedInstancesModificationResultList", "locationName":"modificationResultSet" }, "CreateDate":{ "shape":"DateTime", "locationName":"createDate" }, "UpdateDate":{ "shape":"DateTime", "locationName":"updateDate" }, "EffectiveDate":{ "shape":"DateTime", "locationName":"effectiveDate" }, "Status":{ "shape":"String", "locationName":"status" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "ReservedInstancesModificationIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ReservedInstancesModificationId" } }, "ReservedInstancesModificationList":{ "type":"list", "member":{ "shape":"ReservedInstancesModification", "locationName":"item" } }, "ReservedInstancesModificationResult":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "TargetConfiguration":{ "shape":"ReservedInstancesConfiguration", "locationName":"targetConfiguration" } } }, "ReservedInstancesModificationResultList":{ "type":"list", "member":{ "shape":"ReservedInstancesModificationResult", "locationName":"item" } }, "ReservedInstancesOffering":{ "type":"structure", "members":{ "ReservedInstancesOfferingId":{ "shape":"String", "locationName":"reservedInstancesOfferingId" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Duration":{ "shape":"Long", "locationName":"duration" }, "UsagePrice":{ "shape":"Float", "locationName":"usagePrice" }, "FixedPrice":{ "shape":"Float", "locationName":"fixedPrice" }, "ProductDescription":{ "shape":"RIProductDescription", "locationName":"productDescription" }, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "OfferingType":{ "shape":"OfferingTypeValues", "locationName":"offeringType" }, "RecurringCharges":{ "shape":"RecurringChargesList", "locationName":"recurringCharges" }, "Marketplace":{ "shape":"Boolean", "locationName":"marketplace" }, "PricingDetails":{ "shape":"PricingDetailsList", "locationName":"pricingDetailsSet" } } }, "ReservedInstancesOfferingIdStringList":{ "type":"list", "member":{"shape":"String"} }, "ReservedInstancesOfferingList":{ "type":"list", "member":{ "shape":"ReservedInstancesOffering", "locationName":"item" } }, "ReservedIntancesIds":{ "type":"list", "member":{ "shape":"ReservedInstancesId", "locationName":"item" } }, "ResetImageAttributeName":{ "type":"string", "enum":["launchPermission"] }, "ResetImageAttributeRequest":{ "type":"structure", "required":[ "ImageId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"}, "Attribute":{"shape":"ResetImageAttributeName"} } }, "ResetInstanceAttributeRequest":{ "type":"structure", "required":[ "InstanceId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Attribute":{ "shape":"InstanceAttributeName", "locationName":"attribute" } } }, "ResetNetworkInterfaceAttributeRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "SourceDestCheck":{ "shape":"String", "locationName":"sourceDestCheck" } } }, "ResetSnapshotAttributeRequest":{ "type":"structure", "required":[ "SnapshotId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotId":{"shape":"String"}, "Attribute":{"shape":"SnapshotAttributeName"} } }, "ResourceIdList":{ "type":"list", "member":{"shape":"String"} }, "ResourceType":{ "type":"string", "enum":[ "customer-gateway", "dhcp-options", "image", "instance", "internet-gateway", "network-acl", "network-interface", "reserved-instances", "route-table", "snapshot", "spot-instances-request", "subnet", "security-group", "volume", "vpc", "vpn-connection", "vpn-gateway" ] }, "ResponseHostIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "RestorableByStringList":{ "type":"list", "member":{"shape":"String"} }, "RestoreAddressToClassicRequest":{ "type":"structure", "required":["PublicIp"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIp":{ "shape":"String", "locationName":"publicIp" } } }, "RestoreAddressToClassicResult":{ "type":"structure", "members":{ "Status":{ "shape":"Status", "locationName":"status" }, "PublicIp":{ "shape":"String", "locationName":"publicIp" } } }, "RevokeSecurityGroupEgressRequest":{ "type":"structure", "required":["GroupId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupId":{ "shape":"String", "locationName":"groupId" }, "SourceSecurityGroupName":{ "shape":"String", "locationName":"sourceSecurityGroupName" }, "SourceSecurityGroupOwnerId":{ "shape":"String", "locationName":"sourceSecurityGroupOwnerId" }, "IpProtocol":{ "shape":"String", "locationName":"ipProtocol" }, "FromPort":{ "shape":"Integer", "locationName":"fromPort" }, "ToPort":{ "shape":"Integer", "locationName":"toPort" }, "CidrIp":{ "shape":"String", "locationName":"cidrIp" }, "IpPermissions":{ "shape":"IpPermissionList", "locationName":"ipPermissions" } } }, "RevokeSecurityGroupIngressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{"shape":"String"}, "GroupId":{"shape":"String"}, "SourceSecurityGroupName":{"shape":"String"}, "SourceSecurityGroupOwnerId":{"shape":"String"}, "IpProtocol":{"shape":"String"}, "FromPort":{"shape":"Integer"}, "ToPort":{"shape":"Integer"}, "CidrIp":{"shape":"String"}, "IpPermissions":{"shape":"IpPermissionList"} } }, "Route":{ "type":"structure", "members":{ "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" }, "DestinationPrefixListId":{ "shape":"String", "locationName":"destinationPrefixListId" }, "GatewayId":{ "shape":"String", "locationName":"gatewayId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "InstanceOwnerId":{ "shape":"String", "locationName":"instanceOwnerId" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" }, "NatGatewayId":{ "shape":"String", "locationName":"natGatewayId" }, "State":{ "shape":"RouteState", "locationName":"state" }, "Origin":{ "shape":"RouteOrigin", "locationName":"origin" } } }, "RouteList":{ "type":"list", "member":{ "shape":"Route", "locationName":"item" } }, "RouteOrigin":{ "type":"string", "enum":[ "CreateRouteTable", "CreateRoute", "EnableVgwRoutePropagation" ] }, "RouteState":{ "type":"string", "enum":[ "active", "blackhole" ] }, "RouteTable":{ "type":"structure", "members":{ "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Routes":{ "shape":"RouteList", "locationName":"routeSet" }, "Associations":{ "shape":"RouteTableAssociationList", "locationName":"associationSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "PropagatingVgws":{ "shape":"PropagatingVgwList", "locationName":"propagatingVgwSet" } } }, "RouteTableAssociation":{ "type":"structure", "members":{ "RouteTableAssociationId":{ "shape":"String", "locationName":"routeTableAssociationId" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "Main":{ "shape":"Boolean", "locationName":"main" } } }, "RouteTableAssociationList":{ "type":"list", "member":{ "shape":"RouteTableAssociation", "locationName":"item" } }, "RouteTableList":{ "type":"list", "member":{ "shape":"RouteTable", "locationName":"item" } }, "RuleAction":{ "type":"string", "enum":[ "allow", "deny" ] }, "RunInstancesMonitoringEnabled":{ "type":"structure", "required":["Enabled"], "members":{ "Enabled":{ "shape":"Boolean", "locationName":"enabled" } } }, "RunInstancesRequest":{ "type":"structure", "required":[ "ImageId", "MinCount", "MaxCount" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"}, "MinCount":{"shape":"Integer"}, "MaxCount":{"shape":"Integer"}, "KeyName":{"shape":"String"}, "SecurityGroups":{ "shape":"SecurityGroupStringList", "locationName":"SecurityGroup" }, "SecurityGroupIds":{ "shape":"SecurityGroupIdStringList", "locationName":"SecurityGroupId" }, "UserData":{"shape":"String"}, "InstanceType":{"shape":"InstanceType"}, "Placement":{"shape":"Placement"}, "KernelId":{"shape":"String"}, "RamdiskId":{"shape":"String"}, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingRequestList", "locationName":"BlockDeviceMapping" }, "Monitoring":{"shape":"RunInstancesMonitoringEnabled"}, "SubnetId":{"shape":"String"}, "DisableApiTermination":{ "shape":"Boolean", "locationName":"disableApiTermination" }, "InstanceInitiatedShutdownBehavior":{ "shape":"ShutdownBehavior", "locationName":"instanceInitiatedShutdownBehavior" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "AdditionalInfo":{ "shape":"String", "locationName":"additionalInfo" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceSpecificationList", "locationName":"networkInterface" }, "IamInstanceProfile":{ "shape":"IamInstanceProfileSpecification", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" } } }, "RunScheduledInstancesRequest":{ "type":"structure", "required":[ "ScheduledInstanceId", "LaunchSpecification" ], "members":{ "DryRun":{"shape":"Boolean"}, "ClientToken":{ "shape":"String", "idempotencyToken":true }, "InstanceCount":{"shape":"Integer"}, "ScheduledInstanceId":{"shape":"String"}, "LaunchSpecification":{"shape":"ScheduledInstancesLaunchSpecification"} } }, "RunScheduledInstancesResult":{ "type":"structure", "members":{ "InstanceIdSet":{ "shape":"InstanceIdSet", "locationName":"instanceIdSet" } } }, "S3Storage":{ "type":"structure", "members":{ "Bucket":{ "shape":"String", "locationName":"bucket" }, "Prefix":{ "shape":"String", "locationName":"prefix" }, "AWSAccessKeyId":{"shape":"String"}, "UploadPolicy":{ "shape":"Blob", "locationName":"uploadPolicy" }, "UploadPolicySignature":{ "shape":"String", "locationName":"uploadPolicySignature" } } }, "ScheduledInstance":{ "type":"structure", "members":{ "ScheduledInstanceId":{ "shape":"String", "locationName":"scheduledInstanceId" }, "InstanceType":{ "shape":"String", "locationName":"instanceType" }, "Platform":{ "shape":"String", "locationName":"platform" }, "NetworkPlatform":{ "shape":"String", "locationName":"networkPlatform" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "SlotDurationInHours":{ "shape":"Integer", "locationName":"slotDurationInHours" }, "Recurrence":{ "shape":"ScheduledInstanceRecurrence", "locationName":"recurrence" }, "PreviousSlotEndTime":{ "shape":"DateTime", "locationName":"previousSlotEndTime" }, "NextSlotStartTime":{ "shape":"DateTime", "locationName":"nextSlotStartTime" }, "HourlyPrice":{ "shape":"String", "locationName":"hourlyPrice" }, "TotalScheduledInstanceHours":{ "shape":"Integer", "locationName":"totalScheduledInstanceHours" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "TermStartDate":{ "shape":"DateTime", "locationName":"termStartDate" }, "TermEndDate":{ "shape":"DateTime", "locationName":"termEndDate" }, "CreateDate":{ "shape":"DateTime", "locationName":"createDate" } } }, "ScheduledInstanceAvailability":{ "type":"structure", "members":{ "InstanceType":{ "shape":"String", "locationName":"instanceType" }, "Platform":{ "shape":"String", "locationName":"platform" }, "NetworkPlatform":{ "shape":"String", "locationName":"networkPlatform" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "PurchaseToken":{ "shape":"String", "locationName":"purchaseToken" }, "SlotDurationInHours":{ "shape":"Integer", "locationName":"slotDurationInHours" }, "Recurrence":{ "shape":"ScheduledInstanceRecurrence", "locationName":"recurrence" }, "FirstSlotStartTime":{ "shape":"DateTime", "locationName":"firstSlotStartTime" }, "HourlyPrice":{ "shape":"String", "locationName":"hourlyPrice" }, "TotalScheduledInstanceHours":{ "shape":"Integer", "locationName":"totalScheduledInstanceHours" }, "AvailableInstanceCount":{ "shape":"Integer", "locationName":"availableInstanceCount" }, "MinTermDurationInDays":{ "shape":"Integer", "locationName":"minTermDurationInDays" }, "MaxTermDurationInDays":{ "shape":"Integer", "locationName":"maxTermDurationInDays" } } }, "ScheduledInstanceAvailabilitySet":{ "type":"list", "member":{ "shape":"ScheduledInstanceAvailability", "locationName":"item" } }, "ScheduledInstanceIdRequestSet":{ "type":"list", "member":{ "shape":"String", "locationName":"ScheduledInstanceId" } }, "ScheduledInstanceRecurrence":{ "type":"structure", "members":{ "Frequency":{ "shape":"String", "locationName":"frequency" }, "Interval":{ "shape":"Integer", "locationName":"interval" }, "OccurrenceDaySet":{ "shape":"OccurrenceDaySet", "locationName":"occurrenceDaySet" }, "OccurrenceRelativeToEnd":{ "shape":"Boolean", "locationName":"occurrenceRelativeToEnd" }, "OccurrenceUnit":{ "shape":"String", "locationName":"occurrenceUnit" } } }, "ScheduledInstanceRecurrenceRequest":{ "type":"structure", "members":{ "Frequency":{"shape":"String"}, "Interval":{"shape":"Integer"}, "OccurrenceDays":{ "shape":"OccurrenceDayRequestSet", "locationName":"OccurrenceDay" }, "OccurrenceRelativeToEnd":{"shape":"Boolean"}, "OccurrenceUnit":{"shape":"String"} } }, "ScheduledInstanceSet":{ "type":"list", "member":{ "shape":"ScheduledInstance", "locationName":"item" } }, "ScheduledInstancesBlockDeviceMapping":{ "type":"structure", "members":{ "DeviceName":{"shape":"String"}, "NoDevice":{"shape":"String"}, "VirtualName":{"shape":"String"}, "Ebs":{"shape":"ScheduledInstancesEbs"} } }, "ScheduledInstancesBlockDeviceMappingSet":{ "type":"list", "member":{ "shape":"ScheduledInstancesBlockDeviceMapping", "locationName":"BlockDeviceMapping" } }, "ScheduledInstancesEbs":{ "type":"structure", "members":{ "SnapshotId":{"shape":"String"}, "VolumeSize":{"shape":"Integer"}, "DeleteOnTermination":{"shape":"Boolean"}, "VolumeType":{"shape":"String"}, "Iops":{"shape":"Integer"}, "Encrypted":{"shape":"Boolean"} } }, "ScheduledInstancesIamInstanceProfile":{ "type":"structure", "members":{ "Arn":{"shape":"String"}, "Name":{"shape":"String"} } }, "ScheduledInstancesLaunchSpecification":{ "type":"structure", "required":["ImageId"], "members":{ "ImageId":{"shape":"String"}, "KeyName":{"shape":"String"}, "SecurityGroupIds":{ "shape":"ScheduledInstancesSecurityGroupIdSet", "locationName":"SecurityGroupId" }, "UserData":{"shape":"String"}, "Placement":{"shape":"ScheduledInstancesPlacement"}, "KernelId":{"shape":"String"}, "InstanceType":{"shape":"String"}, "RamdiskId":{"shape":"String"}, "BlockDeviceMappings":{ "shape":"ScheduledInstancesBlockDeviceMappingSet", "locationName":"BlockDeviceMapping" }, "Monitoring":{"shape":"ScheduledInstancesMonitoring"}, "SubnetId":{"shape":"String"}, "NetworkInterfaces":{ "shape":"ScheduledInstancesNetworkInterfaceSet", "locationName":"NetworkInterface" }, "IamInstanceProfile":{"shape":"ScheduledInstancesIamInstanceProfile"}, "EbsOptimized":{"shape":"Boolean"} } }, "ScheduledInstancesMonitoring":{ "type":"structure", "members":{ "Enabled":{"shape":"Boolean"} } }, "ScheduledInstancesNetworkInterface":{ "type":"structure", "members":{ "NetworkInterfaceId":{"shape":"String"}, "DeviceIndex":{"shape":"Integer"}, "SubnetId":{"shape":"String"}, "Description":{"shape":"String"}, "PrivateIpAddress":{"shape":"String"}, "PrivateIpAddressConfigs":{ "shape":"PrivateIpAddressConfigSet", "locationName":"PrivateIpAddressConfig" }, "SecondaryPrivateIpAddressCount":{"shape":"Integer"}, "AssociatePublicIpAddress":{"shape":"Boolean"}, "Groups":{ "shape":"ScheduledInstancesSecurityGroupIdSet", "locationName":"Group" }, "DeleteOnTermination":{"shape":"Boolean"} } }, "ScheduledInstancesNetworkInterfaceSet":{ "type":"list", "member":{ "shape":"ScheduledInstancesNetworkInterface", "locationName":"NetworkInterface" } }, "ScheduledInstancesPlacement":{ "type":"structure", "members":{ "AvailabilityZone":{"shape":"String"}, "GroupName":{"shape":"String"} } }, "ScheduledInstancesPrivateIpAddressConfig":{ "type":"structure", "members":{ "PrivateIpAddress":{"shape":"String"}, "Primary":{"shape":"Boolean"} } }, "ScheduledInstancesSecurityGroupIdSet":{ "type":"list", "member":{ "shape":"String", "locationName":"SecurityGroupId" } }, "SecurityGroup":{ "type":"structure", "members":{ "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "GroupId":{ "shape":"String", "locationName":"groupId" }, "Description":{ "shape":"String", "locationName":"groupDescription" }, "IpPermissions":{ "shape":"IpPermissionList", "locationName":"ipPermissions" }, "IpPermissionsEgress":{ "shape":"IpPermissionList", "locationName":"ipPermissionsEgress" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "SecurityGroupIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"SecurityGroupId" } }, "SecurityGroupList":{ "type":"list", "member":{ "shape":"SecurityGroup", "locationName":"item" } }, "SecurityGroupReference":{ "type":"structure", "required":[ "GroupId", "ReferencingVpcId" ], "members":{ "GroupId":{ "shape":"String", "locationName":"groupId" }, "ReferencingVpcId":{ "shape":"String", "locationName":"referencingVpcId" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "SecurityGroupReferences":{ "type":"list", "member":{ "shape":"SecurityGroupReference", "locationName":"item" } }, "SecurityGroupStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"SecurityGroup" } }, "ShutdownBehavior":{ "type":"string", "enum":[ "stop", "terminate" ] }, "SlotDateTimeRangeRequest":{ "type":"structure", "required":[ "EarliestTime", "LatestTime" ], "members":{ "EarliestTime":{"shape":"DateTime"}, "LatestTime":{"shape":"DateTime"} } }, "SlotStartTimeRangeRequest":{ "type":"structure", "members":{ "EarliestTime":{"shape":"DateTime"}, "LatestTime":{"shape":"DateTime"} } }, "Snapshot":{ "type":"structure", "members":{ "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "State":{ "shape":"SnapshotState", "locationName":"status" }, "StateMessage":{ "shape":"String", "locationName":"statusMessage" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "Progress":{ "shape":"String", "locationName":"progress" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "Description":{ "shape":"String", "locationName":"description" }, "VolumeSize":{ "shape":"Integer", "locationName":"volumeSize" }, "OwnerAlias":{ "shape":"String", "locationName":"ownerAlias" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{ "shape":"String", "locationName":"kmsKeyId" }, "DataEncryptionKeyId":{ "shape":"String", "locationName":"dataEncryptionKeyId" } } }, "SnapshotAttributeName":{ "type":"string", "enum":[ "productCodes", "createVolumePermission" ] }, "SnapshotDetail":{ "type":"structure", "members":{ "DiskImageSize":{ "shape":"Double", "locationName":"diskImageSize" }, "Description":{ "shape":"String", "locationName":"description" }, "Format":{ "shape":"String", "locationName":"format" }, "Url":{ "shape":"String", "locationName":"url" }, "UserBucket":{ "shape":"UserBucketDetails", "locationName":"userBucket" }, "DeviceName":{ "shape":"String", "locationName":"deviceName" }, "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "Progress":{ "shape":"String", "locationName":"progress" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Status":{ "shape":"String", "locationName":"status" } } }, "SnapshotDetailList":{ "type":"list", "member":{ "shape":"SnapshotDetail", "locationName":"item" } }, "SnapshotDiskContainer":{ "type":"structure", "members":{ "Description":{"shape":"String"}, "Format":{"shape":"String"}, "Url":{"shape":"String"}, "UserBucket":{"shape":"UserBucket"} } }, "SnapshotIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"SnapshotId" } }, "SnapshotList":{ "type":"list", "member":{ "shape":"Snapshot", "locationName":"item" } }, "SnapshotState":{ "type":"string", "enum":[ "pending", "completed", "error" ] }, "SnapshotTaskDetail":{ "type":"structure", "members":{ "DiskImageSize":{ "shape":"Double", "locationName":"diskImageSize" }, "Description":{ "shape":"String", "locationName":"description" }, "Format":{ "shape":"String", "locationName":"format" }, "Url":{ "shape":"String", "locationName":"url" }, "UserBucket":{ "shape":"UserBucketDetails", "locationName":"userBucket" }, "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "Progress":{ "shape":"String", "locationName":"progress" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Status":{ "shape":"String", "locationName":"status" } } }, "SpotDatafeedSubscription":{ "type":"structure", "members":{ "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "Bucket":{ "shape":"String", "locationName":"bucket" }, "Prefix":{ "shape":"String", "locationName":"prefix" }, "State":{ "shape":"DatafeedSubscriptionState", "locationName":"state" }, "Fault":{ "shape":"SpotInstanceStateFault", "locationName":"fault" } } }, "SpotFleetLaunchSpecification":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "SecurityGroups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "UserData":{ "shape":"String", "locationName":"userData" }, "AddressingType":{ "shape":"String", "locationName":"addressingType" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "Placement":{ "shape":"SpotPlacement", "locationName":"placement" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "Monitoring":{ "shape":"SpotFleetMonitoring", "locationName":"monitoring" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceSpecificationList", "locationName":"networkInterfaceSet" }, "IamInstanceProfile":{ "shape":"IamInstanceProfileSpecification", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" }, "WeightedCapacity":{ "shape":"Double", "locationName":"weightedCapacity" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" } } }, "SpotFleetMonitoring":{ "type":"structure", "members":{ "Enabled":{ "shape":"Boolean", "locationName":"enabled" } } }, "SpotFleetRequestConfig":{ "type":"structure", "required":[ "SpotFleetRequestId", "SpotFleetRequestState", "SpotFleetRequestConfig", "CreateTime" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "SpotFleetRequestState":{ "shape":"BatchState", "locationName":"spotFleetRequestState" }, "SpotFleetRequestConfig":{ "shape":"SpotFleetRequestConfigData", "locationName":"spotFleetRequestConfig" }, "CreateTime":{ "shape":"DateTime", "locationName":"createTime" } } }, "SpotFleetRequestConfigData":{ "type":"structure", "required":[ "SpotPrice", "TargetCapacity", "IamFleetRole", "LaunchSpecifications" ], "members":{ "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" }, "TargetCapacity":{ "shape":"Integer", "locationName":"targetCapacity" }, "ValidFrom":{ "shape":"DateTime", "locationName":"validFrom" }, "ValidUntil":{ "shape":"DateTime", "locationName":"validUntil" }, "TerminateInstancesWithExpiration":{ "shape":"Boolean", "locationName":"terminateInstancesWithExpiration" }, "IamFleetRole":{ "shape":"String", "locationName":"iamFleetRole" }, "LaunchSpecifications":{ "shape":"LaunchSpecsList", "locationName":"launchSpecifications" }, "ExcessCapacityTerminationPolicy":{ "shape":"ExcessCapacityTerminationPolicy", "locationName":"excessCapacityTerminationPolicy" }, "AllocationStrategy":{ "shape":"AllocationStrategy", "locationName":"allocationStrategy" }, "FulfilledCapacity":{ "shape":"Double", "locationName":"fulfilledCapacity" }, "Type":{ "shape":"FleetType", "locationName":"type" } } }, "SpotFleetRequestConfigSet":{ "type":"list", "member":{ "shape":"SpotFleetRequestConfig", "locationName":"item" } }, "SpotInstanceRequest":{ "type":"structure", "members":{ "SpotInstanceRequestId":{ "shape":"String", "locationName":"spotInstanceRequestId" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" }, "Type":{ "shape":"SpotInstanceType", "locationName":"type" }, "State":{ "shape":"SpotInstanceState", "locationName":"state" }, "Fault":{ "shape":"SpotInstanceStateFault", "locationName":"fault" }, "Status":{ "shape":"SpotInstanceStatus", "locationName":"status" }, "ValidFrom":{ "shape":"DateTime", "locationName":"validFrom" }, "ValidUntil":{ "shape":"DateTime", "locationName":"validUntil" }, "LaunchGroup":{ "shape":"String", "locationName":"launchGroup" }, "AvailabilityZoneGroup":{ "shape":"String", "locationName":"availabilityZoneGroup" }, "LaunchSpecification":{ "shape":"LaunchSpecification", "locationName":"launchSpecification" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "CreateTime":{ "shape":"DateTime", "locationName":"createTime" }, "ProductDescription":{ "shape":"RIProductDescription", "locationName":"productDescription" }, "BlockDurationMinutes":{ "shape":"Integer", "locationName":"blockDurationMinutes" }, "ActualBlockHourlyPrice":{ "shape":"String", "locationName":"actualBlockHourlyPrice" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "LaunchedAvailabilityZone":{ "shape":"String", "locationName":"launchedAvailabilityZone" } } }, "SpotInstanceRequestIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"SpotInstanceRequestId" } }, "SpotInstanceRequestList":{ "type":"list", "member":{ "shape":"SpotInstanceRequest", "locationName":"item" } }, "SpotInstanceState":{ "type":"string", "enum":[ "open", "active", "closed", "cancelled", "failed" ] }, "SpotInstanceStateFault":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "SpotInstanceStatus":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "UpdateTime":{ "shape":"DateTime", "locationName":"updateTime" }, "Message":{ "shape":"String", "locationName":"message" } } }, "SpotInstanceType":{ "type":"string", "enum":[ "one-time", "persistent" ] }, "SpotPlacement":{ "type":"structure", "members":{ "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "GroupName":{ "shape":"String", "locationName":"groupName" } } }, "SpotPrice":{ "type":"structure", "members":{ "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "ProductDescription":{ "shape":"RIProductDescription", "locationName":"productDescription" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" }, "Timestamp":{ "shape":"DateTime", "locationName":"timestamp" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" } } }, "SpotPriceHistoryList":{ "type":"list", "member":{ "shape":"SpotPrice", "locationName":"item" } }, "StaleIpPermission":{ "type":"structure", "members":{ "FromPort":{ "shape":"Integer", "locationName":"fromPort" }, "IpProtocol":{ "shape":"String", "locationName":"ipProtocol" }, "IpRanges":{ "shape":"IpRanges", "locationName":"ipRanges" }, "PrefixListIds":{ "shape":"PrefixListIdSet", "locationName":"prefixListIds" }, "ToPort":{ "shape":"Integer", "locationName":"toPort" }, "UserIdGroupPairs":{ "shape":"UserIdGroupPairSet", "locationName":"groups" } } }, "StaleIpPermissionSet":{ "type":"list", "member":{ "shape":"StaleIpPermission", "locationName":"item" } }, "StaleSecurityGroup":{ "type":"structure", "required":["GroupId"], "members":{ "GroupId":{ "shape":"String", "locationName":"groupId" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "Description":{ "shape":"String", "locationName":"description" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "StaleIpPermissions":{ "shape":"StaleIpPermissionSet", "locationName":"staleIpPermissions" }, "StaleIpPermissionsEgress":{ "shape":"StaleIpPermissionSet", "locationName":"staleIpPermissionsEgress" } } }, "StaleSecurityGroupSet":{ "type":"list", "member":{ "shape":"StaleSecurityGroup", "locationName":"item" } }, "StartInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "AdditionalInfo":{ "shape":"String", "locationName":"additionalInfo" }, "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "StartInstancesResult":{ "type":"structure", "members":{ "StartingInstances":{ "shape":"InstanceStateChangeList", "locationName":"instancesSet" } } }, "State":{ "type":"string", "enum":[ "Pending", "Available", "Deleting", "Deleted" ] }, "StateReason":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "Status":{ "type":"string", "enum":[ "MoveInProgress", "InVpc", "InClassic" ] }, "StatusName":{ "type":"string", "enum":["reachability"] }, "StatusType":{ "type":"string", "enum":[ "passed", "failed", "insufficient-data", "initializing" ] }, "StopInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "Force":{ "shape":"Boolean", "locationName":"force" } } }, "StopInstancesResult":{ "type":"structure", "members":{ "StoppingInstances":{ "shape":"InstanceStateChangeList", "locationName":"instancesSet" } } }, "Storage":{ "type":"structure", "members":{ "S3":{"shape":"S3Storage"} } }, "String":{"type":"string"}, "Subnet":{ "type":"structure", "members":{ "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "State":{ "shape":"SubnetState", "locationName":"state" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "AvailableIpAddressCount":{ "shape":"Integer", "locationName":"availableIpAddressCount" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "DefaultForAz":{ "shape":"Boolean", "locationName":"defaultForAz" }, "MapPublicIpOnLaunch":{ "shape":"Boolean", "locationName":"mapPublicIpOnLaunch" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "SubnetIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"SubnetId" } }, "SubnetList":{ "type":"list", "member":{ "shape":"Subnet", "locationName":"item" } }, "SubnetState":{ "type":"string", "enum":[ "pending", "available" ] }, "SummaryStatus":{ "type":"string", "enum":[ "ok", "impaired", "insufficient-data", "not-applicable", "initializing" ] }, "Tag":{ "type":"structure", "members":{ "Key":{ "shape":"String", "locationName":"key" }, "Value":{ "shape":"String", "locationName":"value" } } }, "TagDescription":{ "type":"structure", "members":{ "ResourceId":{ "shape":"String", "locationName":"resourceId" }, "ResourceType":{ "shape":"ResourceType", "locationName":"resourceType" }, "Key":{ "shape":"String", "locationName":"key" }, "Value":{ "shape":"String", "locationName":"value" } } }, "TagDescriptionList":{ "type":"list", "member":{ "shape":"TagDescription", "locationName":"item" } }, "TagList":{ "type":"list", "member":{ "shape":"Tag", "locationName":"item" } }, "TelemetryStatus":{ "type":"string", "enum":[ "UP", "DOWN" ] }, "Tenancy":{ "type":"string", "enum":[ "default", "dedicated", "host" ] }, "TerminateInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" } } }, "TerminateInstancesResult":{ "type":"structure", "members":{ "TerminatingInstances":{ "shape":"InstanceStateChangeList", "locationName":"instancesSet" } } }, "TrafficType":{ "type":"string", "enum":[ "ACCEPT", "REJECT", "ALL" ] }, "UnassignPrivateIpAddressesRequest":{ "type":"structure", "required":[ "NetworkInterfaceId", "PrivateIpAddresses" ], "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "PrivateIpAddresses":{ "shape":"PrivateIpAddressStringList", "locationName":"privateIpAddress" } } }, "UnmonitorInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" } } }, "UnmonitorInstancesResult":{ "type":"structure", "members":{ "InstanceMonitorings":{ "shape":"InstanceMonitoringList", "locationName":"instancesSet" } } }, "UnsuccessfulItem":{ "type":"structure", "required":["Error"], "members":{ "Error":{ "shape":"UnsuccessfulItemError", "locationName":"error" }, "ResourceId":{ "shape":"String", "locationName":"resourceId" } } }, "UnsuccessfulItemError":{ "type":"structure", "required":[ "Code", "Message" ], "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "UnsuccessfulItemList":{ "type":"list", "member":{ "shape":"UnsuccessfulItem", "locationName":"item" } }, "UnsuccessfulItemSet":{ "type":"list", "member":{ "shape":"UnsuccessfulItem", "locationName":"item" } }, "UserBucket":{ "type":"structure", "members":{ "S3Bucket":{"shape":"String"}, "S3Key":{"shape":"String"} } }, "UserBucketDetails":{ "type":"structure", "members":{ "S3Bucket":{ "shape":"String", "locationName":"s3Bucket" }, "S3Key":{ "shape":"String", "locationName":"s3Key" } } }, "UserData":{ "type":"structure", "members":{ "Data":{ "shape":"String", "locationName":"data" } } }, "UserGroupStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"UserGroup" } }, "UserIdGroupPair":{ "type":"structure", "members":{ "UserId":{ "shape":"String", "locationName":"userId" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "GroupId":{ "shape":"String", "locationName":"groupId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" }, "PeeringStatus":{ "shape":"String", "locationName":"peeringStatus" } } }, "UserIdGroupPairList":{ "type":"list", "member":{ "shape":"UserIdGroupPair", "locationName":"item" } }, "UserIdGroupPairSet":{ "type":"list", "member":{ "shape":"UserIdGroupPair", "locationName":"item" } }, "UserIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"UserId" } }, "ValueStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "VgwTelemetry":{ "type":"structure", "members":{ "OutsideIpAddress":{ "shape":"String", "locationName":"outsideIpAddress" }, "Status":{ "shape":"TelemetryStatus", "locationName":"status" }, "LastStatusChange":{ "shape":"DateTime", "locationName":"lastStatusChange" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "AcceptedRouteCount":{ "shape":"Integer", "locationName":"acceptedRouteCount" } } }, "VgwTelemetryList":{ "type":"list", "member":{ "shape":"VgwTelemetry", "locationName":"item" } }, "VirtualizationType":{ "type":"string", "enum":[ "hvm", "paravirtual" ] }, "Volume":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "Size":{ "shape":"Integer", "locationName":"size" }, "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "State":{ "shape":"VolumeState", "locationName":"status" }, "CreateTime":{ "shape":"DateTime", "locationName":"createTime" }, "Attachments":{ "shape":"VolumeAttachmentList", "locationName":"attachmentSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "VolumeType":{ "shape":"VolumeType", "locationName":"volumeType" }, "Iops":{ "shape":"Integer", "locationName":"iops" }, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{ "shape":"String", "locationName":"kmsKeyId" } } }, "VolumeAttachment":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Device":{ "shape":"String", "locationName":"device" }, "State":{ "shape":"VolumeAttachmentState", "locationName":"status" }, "AttachTime":{ "shape":"DateTime", "locationName":"attachTime" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "VolumeAttachmentList":{ "type":"list", "member":{ "shape":"VolumeAttachment", "locationName":"item" } }, "VolumeAttachmentState":{ "type":"string", "enum":[ "attaching", "attached", "detaching", "detached" ] }, "VolumeAttributeName":{ "type":"string", "enum":[ "autoEnableIO", "productCodes" ] }, "VolumeDetail":{ "type":"structure", "required":["Size"], "members":{ "Size":{ "shape":"Long", "locationName":"size" } } }, "VolumeIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"VolumeId" } }, "VolumeList":{ "type":"list", "member":{ "shape":"Volume", "locationName":"item" } }, "VolumeState":{ "type":"string", "enum":[ "creating", "available", "in-use", "deleting", "deleted", "error" ] }, "VolumeStatusAction":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Description":{ "shape":"String", "locationName":"description" }, "EventType":{ "shape":"String", "locationName":"eventType" }, "EventId":{ "shape":"String", "locationName":"eventId" } } }, "VolumeStatusActionsList":{ "type":"list", "member":{ "shape":"VolumeStatusAction", "locationName":"item" } }, "VolumeStatusDetails":{ "type":"structure", "members":{ "Name":{ "shape":"VolumeStatusName", "locationName":"name" }, "Status":{ "shape":"String", "locationName":"status" } } }, "VolumeStatusDetailsList":{ "type":"list", "member":{ "shape":"VolumeStatusDetails", "locationName":"item" } }, "VolumeStatusEvent":{ "type":"structure", "members":{ "EventType":{ "shape":"String", "locationName":"eventType" }, "Description":{ "shape":"String", "locationName":"description" }, "NotBefore":{ "shape":"DateTime", "locationName":"notBefore" }, "NotAfter":{ "shape":"DateTime", "locationName":"notAfter" }, "EventId":{ "shape":"String", "locationName":"eventId" } } }, "VolumeStatusEventsList":{ "type":"list", "member":{ "shape":"VolumeStatusEvent", "locationName":"item" } }, "VolumeStatusInfo":{ "type":"structure", "members":{ "Status":{ "shape":"VolumeStatusInfoStatus", "locationName":"status" }, "Details":{ "shape":"VolumeStatusDetailsList", "locationName":"details" } } }, "VolumeStatusInfoStatus":{ "type":"string", "enum":[ "ok", "impaired", "insufficient-data" ] }, "VolumeStatusItem":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "VolumeStatus":{ "shape":"VolumeStatusInfo", "locationName":"volumeStatus" }, "Events":{ "shape":"VolumeStatusEventsList", "locationName":"eventsSet" }, "Actions":{ "shape":"VolumeStatusActionsList", "locationName":"actionsSet" } } }, "VolumeStatusList":{ "type":"list", "member":{ "shape":"VolumeStatusItem", "locationName":"item" } }, "VolumeStatusName":{ "type":"string", "enum":[ "io-enabled", "io-performance" ] }, "VolumeType":{ "type":"string", "enum":[ "standard", "io1", "gp2", "sc1", "st1" ] }, "Vpc":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "State":{ "shape":"VpcState", "locationName":"state" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "DhcpOptionsId":{ "shape":"String", "locationName":"dhcpOptionsId" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" }, "IsDefault":{ "shape":"Boolean", "locationName":"isDefault" } } }, "VpcAttachment":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "State":{ "shape":"AttachmentStatus", "locationName":"state" } } }, "VpcAttachmentList":{ "type":"list", "member":{ "shape":"VpcAttachment", "locationName":"item" } }, "VpcAttributeName":{ "type":"string", "enum":[ "enableDnsSupport", "enableDnsHostnames" ] }, "VpcClassicLink":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "ClassicLinkEnabled":{ "shape":"Boolean", "locationName":"classicLinkEnabled" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "VpcClassicLinkIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpcId" } }, "VpcClassicLinkList":{ "type":"list", "member":{ "shape":"VpcClassicLink", "locationName":"item" } }, "VpcEndpoint":{ "type":"structure", "members":{ "VpcEndpointId":{ "shape":"String", "locationName":"vpcEndpointId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "ServiceName":{ "shape":"String", "locationName":"serviceName" }, "State":{ "shape":"State", "locationName":"state" }, "PolicyDocument":{ "shape":"String", "locationName":"policyDocument" }, "RouteTableIds":{ "shape":"ValueStringList", "locationName":"routeTableIdSet" }, "CreationTimestamp":{ "shape":"DateTime", "locationName":"creationTimestamp" } } }, "VpcEndpointSet":{ "type":"list", "member":{ "shape":"VpcEndpoint", "locationName":"item" } }, "VpcIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpcId" } }, "VpcList":{ "type":"list", "member":{ "shape":"Vpc", "locationName":"item" } }, "VpcPeeringConnection":{ "type":"structure", "members":{ "AccepterVpcInfo":{ "shape":"VpcPeeringConnectionVpcInfo", "locationName":"accepterVpcInfo" }, "ExpirationTime":{ "shape":"DateTime", "locationName":"expirationTime" }, "RequesterVpcInfo":{ "shape":"VpcPeeringConnectionVpcInfo", "locationName":"requesterVpcInfo" }, "Status":{ "shape":"VpcPeeringConnectionStateReason", "locationName":"status" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "VpcPeeringConnectionList":{ "type":"list", "member":{ "shape":"VpcPeeringConnection", "locationName":"item" } }, "VpcPeeringConnectionOptionsDescription":{ "type":"structure", "members":{ "AllowEgressFromLocalClassicLinkToRemoteVpc":{ "shape":"Boolean", "locationName":"allowEgressFromLocalClassicLinkToRemoteVpc" }, "AllowEgressFromLocalVpcToRemoteClassicLink":{ "shape":"Boolean", "locationName":"allowEgressFromLocalVpcToRemoteClassicLink" } } }, "VpcPeeringConnectionStateReason":{ "type":"structure", "members":{ "Code":{ "shape":"VpcPeeringConnectionStateReasonCode", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "VpcPeeringConnectionStateReasonCode":{ "type":"string", "enum":[ "initiating-request", "pending-acceptance", "active", "deleted", "rejected", "failed", "expired", "provisioning", "deleting" ] }, "VpcPeeringConnectionVpcInfo":{ "type":"structure", "members":{ "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "PeeringOptions":{ "shape":"VpcPeeringConnectionOptionsDescription", "locationName":"peeringOptions" } } }, "VpcState":{ "type":"string", "enum":[ "pending", "available" ] }, "VpnConnection":{ "type":"structure", "members":{ "VpnConnectionId":{ "shape":"String", "locationName":"vpnConnectionId" }, "State":{ "shape":"VpnState", "locationName":"state" }, "CustomerGatewayConfiguration":{ "shape":"String", "locationName":"customerGatewayConfiguration" }, "Type":{ "shape":"GatewayType", "locationName":"type" }, "CustomerGatewayId":{ "shape":"String", "locationName":"customerGatewayId" }, "VpnGatewayId":{ "shape":"String", "locationName":"vpnGatewayId" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "VgwTelemetry":{ "shape":"VgwTelemetryList", "locationName":"vgwTelemetry" }, "Options":{ "shape":"VpnConnectionOptions", "locationName":"options" }, "Routes":{ "shape":"VpnStaticRouteList", "locationName":"routes" } } }, "VpnConnectionIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpnConnectionId" } }, "VpnConnectionList":{ "type":"list", "member":{ "shape":"VpnConnection", "locationName":"item" } }, "VpnConnectionOptions":{ "type":"structure", "members":{ "StaticRoutesOnly":{ "shape":"Boolean", "locationName":"staticRoutesOnly" } } }, "VpnConnectionOptionsSpecification":{ "type":"structure", "members":{ "StaticRoutesOnly":{ "shape":"Boolean", "locationName":"staticRoutesOnly" } } }, "VpnGateway":{ "type":"structure", "members":{ "VpnGatewayId":{ "shape":"String", "locationName":"vpnGatewayId" }, "State":{ "shape":"VpnState", "locationName":"state" }, "Type":{ "shape":"GatewayType", "locationName":"type" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "VpcAttachments":{ "shape":"VpcAttachmentList", "locationName":"attachments" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "VpnGatewayIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpnGatewayId" } }, "VpnGatewayList":{ "type":"list", "member":{ "shape":"VpnGateway", "locationName":"item" } }, "VpnState":{ "type":"string", "enum":[ "pending", "available", "deleting", "deleted" ] }, "VpnStaticRoute":{ "type":"structure", "members":{ "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" }, "Source":{ "shape":"VpnStaticRouteSource", "locationName":"source" }, "State":{ "shape":"VpnState", "locationName":"state" } } }, "VpnStaticRouteList":{ "type":"list", "member":{ "shape":"VpnStaticRoute", "locationName":"item" } }, "VpnStaticRouteSource":{ "type":"string", "enum":["Static"] }, "ZoneNameStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ZoneName" } } } } aws-sdk-go-1.4.22/models/apis/ec2/2015-10-01/docs-2.json000066400000000000000000022377311300374646400214770ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon Elastic Compute Cloud

        Amazon Elastic Compute Cloud (Amazon EC2) provides resizable computing capacity in the Amazon Web Services (AWS) cloud. Using Amazon EC2 eliminates your need to invest in hardware up front, so you can develop and deploy applications faster.

        ", "operations": { "AcceptVpcPeeringConnection": "

        Accept a VPC peering connection request. To accept a request, the VPC peering connection must be in the pending-acceptance state, and you must be the owner of the peer VPC. Use the DescribeVpcPeeringConnections request to view your outstanding VPC peering connection requests.

        ", "AllocateAddress": "

        Acquires an Elastic IP address.

        An Elastic IP address is for use either in the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        ", "AllocateHosts": "

        Allocates a Dedicated host to your account. At minimum you need to specify the instance size type, Availability Zone, and quantity of hosts you want to allocate.

        ", "AssignPrivateIpAddresses": "

        Assigns one or more secondary private IP addresses to the specified network interface. You can specify one or more specific secondary IP addresses, or you can specify the number of secondary IP addresses to be automatically assigned within the subnet's CIDR block range. The number of secondary IP addresses that you can assign to an instance varies by instance type. For information about instance types, see Instance Types in the Amazon Elastic Compute Cloud User Guide. For more information about Elastic IP addresses, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        AssignPrivateIpAddresses is available only in EC2-VPC.

        ", "AssociateAddress": "

        Associates an Elastic IP address with an instance or a network interface.

        An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        [EC2-Classic, VPC in an EC2-VPC-only account] If the Elastic IP address is already associated with a different instance, it is disassociated from that instance and associated with the specified instance.

        [VPC in an EC2-Classic account] If you don't specify a private IP address, the Elastic IP address is associated with the primary IP address. If the Elastic IP address is already associated with a different instance or a network interface, you get an error unless you allow reassociation.

        This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error.

        ", "AssociateDhcpOptions": "

        Associates a set of DHCP options (that you've previously created) with the specified VPC, or associates no DHCP options with the VPC.

        After you associate the options with the VPC, any existing instances and all new instances that you launch in that VPC use the options. You don't need to restart or relaunch the instances. They automatically pick up the changes within a few hours, depending on how frequently the instance renews its DHCP lease. You can explicitly renew the lease using the operating system on the instance.

        For more information, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.

        ", "AssociateRouteTable": "

        Associates a subnet with a route table. The subnet and route table must be in the same VPC. This association causes traffic originating from the subnet to be routed according to the routes in the route table. The action returns an association ID, which you need in order to disassociate the route table from the subnet later. A route table can be associated with multiple subnets.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "AttachClassicLinkVpc": "

        Links an EC2-Classic instance to a ClassicLink-enabled VPC through one or more of the VPC's security groups. You cannot link an EC2-Classic instance to more than one VPC at a time. You can only link an instance that's in the running state. An instance is automatically unlinked from a VPC when it's stopped - you can link it to the VPC again when you restart it.

        After you've linked an instance, you cannot change the VPC security groups that are associated with it. To change the security groups, you must first unlink the instance, and then link it again.

        Linking your instance to a VPC is sometimes referred to as attaching your instance.

        ", "AttachInternetGateway": "

        Attaches an Internet gateway to a VPC, enabling connectivity between the Internet and the VPC. For more information about your VPC and Internet gateway, see the Amazon Virtual Private Cloud User Guide.

        ", "AttachNetworkInterface": "

        Attaches a network interface to an instance.

        ", "AttachVolume": "

        Attaches an EBS volume to a running or stopped instance and exposes it to the instance with the specified device name.

        Encrypted EBS volumes may only be attached to instances that support Amazon EBS encryption. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        For a list of supported device names, see Attaching an EBS Volume to an Instance. Any device names that aren't reserved for instance store volumes can be used for EBS volumes. For more information, see Amazon EC2 Instance Store in the Amazon Elastic Compute Cloud User Guide.

        If a volume has an AWS Marketplace product code:

        • The volume can be attached only to a stopped instance.

        • AWS Marketplace product codes are copied from the volume to the instance.

        • You must be subscribed to the product.

        • The instance type and operating system of the instance must support the product. For example, you can't detach a volume from a Windows instance and attach it to a Linux instance.

        For an overview of the AWS Marketplace, see Introducing AWS Marketplace.

        For more information about EBS volumes, see Attaching Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.

        ", "AttachVpnGateway": "

        Attaches a virtual private gateway to a VPC. For more information, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "AuthorizeSecurityGroupEgress": "

        [EC2-VPC only] Adds one or more egress rules to a security group for use with a VPC. Specifically, this action permits instances to send traffic to one or more destination CIDR IP address ranges, or to one or more destination security groups for the same VPC. This action doesn't apply to security groups for use in EC2-Classic. For more information, see Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.

        You can have up to 50 rules per security group (covering both ingress and egress rules).

        Each rule consists of the protocol (for example, TCP), plus either a CIDR range or a source group. For the TCP and UDP protocols, you must also specify the destination port or port range. For the ICMP protocol, you must also specify the ICMP type and code. You can use -1 for the type or code to mean all types or all codes.

        Rule changes are propagated to affected instances as quickly as possible. However, a small delay might occur.

        ", "AuthorizeSecurityGroupIngress": "

        Adds one or more ingress rules to a security group.

        EC2-Classic: You can have up to 100 rules per group.

        EC2-VPC: You can have up to 50 rules per group (covering both ingress and egress rules).

        Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

        [EC2-Classic] This action gives one or more CIDR IP address ranges permission to access a security group in your account, or gives one or more security groups (called the source groups) permission to access a security group for your account. A source group can be for your own AWS account, or another.

        [EC2-VPC] This action gives one or more CIDR IP address ranges permission to access a security group in your VPC, or gives one or more other security groups (called the source groups) permission to access a security group for your VPC. The security groups must all be for the same VPC.

        ", "BundleInstance": "

        Bundles an Amazon instance store-backed Windows instance.

        During bundling, only the root device volume (C:\\) is bundled. Data on other instance store volumes is not preserved.

        This action is not applicable for Linux/Unix instances or Windows instances that are backed by Amazon EBS.

        For more information, see Creating an Instance Store-Backed Windows AMI.

        ", "CancelBundleTask": "

        Cancels a bundling operation for an instance store-backed Windows instance.

        ", "CancelConversionTask": "

        Cancels an active conversion task. The task can be the import of an instance or volume. The action removes all artifacts of the conversion, including a partially uploaded volume or instance. If the conversion is complete or is in the process of transferring the final disk image, the command fails and returns an exception.

        For more information, see Using the Command Line Tools to Import Your Virtual Machine to Amazon EC2 in the Amazon Elastic Compute Cloud User Guide.

        ", "CancelExportTask": "

        Cancels an active export task. The request removes all artifacts of the export, including any partially-created Amazon S3 objects. If the export task is complete or is in the process of transferring the final disk image, the command fails and returns an error.

        ", "CancelImportTask": "

        Cancels an in-process import virtual machine or import snapshot task.

        ", "CancelReservedInstancesListing": "

        Cancels the specified Reserved Instance listing in the Reserved Instance Marketplace.

        For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "CancelSpotFleetRequests": "

        Cancels the specified Spot fleet requests.

        After you cancel a Spot fleet request, the Spot fleet launches no new Spot instances. You must specify whether the Spot fleet should also terminate its Spot instances. If you terminate the instances, the Spot fleet request enters the cancelled_terminating state. Otherwise, the Spot fleet request enters the cancelled_running state and the instances continue to run until they are interrupted or you terminate them manually.

        ", "CancelSpotInstanceRequests": "

        Cancels one or more Spot instance requests. Spot instances are instances that Amazon EC2 starts on your behalf when the bid price that you specify exceeds the current Spot price. Amazon EC2 periodically sets the Spot price based on available Spot instance capacity and current Spot instance requests. For more information, see Spot Instance Requests in the Amazon Elastic Compute Cloud User Guide.

        Canceling a Spot instance request does not terminate running Spot instances associated with the request.

        ", "ConfirmProductInstance": "

        Determines whether a product code is associated with an instance. This action can only be used by the owner of the product code. It is useful when a product code owner needs to verify whether another user's instance is eligible for support.

        ", "CopyImage": "

        Initiates the copy of an AMI from the specified source region to the current region. You specify the destination region by using its endpoint when making the request.

        For more information, see Copying AMIs in the Amazon Elastic Compute Cloud User Guide.

        ", "CopySnapshot": "

        Copies a point-in-time snapshot of an EBS volume and stores it in Amazon S3. You can copy the snapshot within the same region or from one region to another. You can use the snapshot to create EBS volumes or Amazon Machine Images (AMIs). The snapshot is copied to the regional endpoint that you send the HTTP request to.

        Copies of encrypted EBS snapshots remain encrypted. Copies of unencrypted snapshots remain unencrypted, unless the Encrypted flag is specified during the snapshot copy operation. By default, encrypted snapshot copies use the default AWS Key Management Service (AWS KMS) customer master key (CMK); however, you can specify a non-default CMK with the KmsKeyId parameter.

        For more information, see Copying an Amazon EBS Snapshot in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateCustomerGateway": "

        Provides information to AWS about your VPN customer gateway device. The customer gateway is the appliance at your end of the VPN connection. (The device on the AWS side of the VPN connection is the virtual private gateway.) You must provide the Internet-routable IP address of the customer gateway's external interface. The IP address must be static and may be behind a device performing network address translation (NAT).

        For devices that use Border Gateway Protocol (BGP), you can also provide the device's BGP Autonomous System Number (ASN). You can use an existing ASN assigned to your network. If you don't have an ASN already, you can use a private ASN (in the 64512 - 65534 range).

        Amazon EC2 supports all 2-byte ASN numbers in the range of 1 - 65534, with the exception of 7224, which is reserved in the us-east-1 region, and 9059, which is reserved in the eu-west-1 region.

        For more information about VPN customer gateways, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        You cannot create more than one customer gateway with the same VPN type, IP address, and BGP ASN parameter values. If you run an identical request more than one time, the first request creates the customer gateway, and subsequent requests return information about the existing customer gateway. The subsequent requests do not create new customer gateway resources.

        ", "CreateDhcpOptions": "

        Creates a set of DHCP options for your VPC. After creating the set, you must associate it with the VPC, causing all existing and new instances that you launch in the VPC to use this set of DHCP options. The following are the individual DHCP options you can specify. For more information about the options, see RFC 2132.

        • domain-name-servers - The IP addresses of up to four domain name servers, or AmazonProvidedDNS. The default DHCP option set specifies AmazonProvidedDNS. If specifying more than one domain name server, specify the IP addresses in a single parameter, separated by commas.

        • domain-name - If you're using AmazonProvidedDNS in \"us-east-1\", specify \"ec2.internal\". If you're using AmazonProvidedDNS in another region, specify \"region.compute.internal\" (for example, \"ap-northeast-1.compute.internal\"). Otherwise, specify a domain name (for example, \"MyCompany.com\"). Important: Some Linux operating systems accept multiple domain names separated by spaces. However, Windows and other Linux operating systems treat the value as a single domain, which results in unexpected behavior. If your DHCP options set is associated with a VPC that has instances with multiple operating systems, specify only one domain name.

        • ntp-servers - The IP addresses of up to four Network Time Protocol (NTP) servers.

        • netbios-name-servers - The IP addresses of up to four NetBIOS name servers.

        • netbios-node-type - The NetBIOS node type (1, 2, 4, or 8). We recommend that you specify 2 (broadcast and multicast are not currently supported). For more information about these node types, see RFC 2132.

        Your VPC automatically starts out with a set of DHCP options that includes only a DNS server that we provide (AmazonProvidedDNS). If you create a set of options, and if your VPC has an Internet gateway, make sure to set the domain-name-servers option either to AmazonProvidedDNS or to a domain name server of your choice. For more information about DHCP options, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.

        ", "CreateFlowLogs": "

        Creates one or more flow logs to capture IP traffic for a specific network interface, subnet, or VPC. Flow logs are delivered to a specified log group in Amazon CloudWatch Logs. If you specify a VPC or subnet in the request, a log stream is created in CloudWatch Logs for each network interface in the subnet or VPC. Log streams can include information about accepted and rejected traffic to a network interface. You can view the data in your log streams using Amazon CloudWatch Logs.

        In your request, you must also specify an IAM role that has permission to publish logs to CloudWatch Logs.

        ", "CreateImage": "

        Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance that is either running or stopped.

        If you customized your instance with instance store volumes or EBS volumes in addition to the root device volume, the new AMI contains block device mapping information for those volumes. When you launch an instance from this new AMI, the instance automatically launches with those additional volumes.

        For more information, see Creating Amazon EBS-Backed Linux AMIs in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateInstanceExportTask": "

        Exports a running or stopped instance to an S3 bucket.

        For information about the supported operating systems, image formats, and known limitations for the types of instances you can export, see Exporting EC2 Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateInternetGateway": "

        Creates an Internet gateway for use with a VPC. After creating the Internet gateway, you attach it to a VPC using AttachInternetGateway.

        For more information about your VPC and Internet gateway, see the Amazon Virtual Private Cloud User Guide.

        ", "CreateKeyPair": "

        Creates a 2048-bit RSA key pair with the specified name. Amazon EC2 stores the public key and displays the private key for you to save to a file. The private key is returned as an unencrypted PEM encoded PKCS#8 private key. If a key with the specified name already exists, Amazon EC2 returns an error.

        You can have up to five thousand key pairs per region.

        The key pair returned to you is available only in the region in which you create it. To create a key pair that is available in all regions, use ImportKeyPair.

        For more information about key pairs, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateNatGateway": "

        Creates a NAT gateway in the specified subnet. A NAT gateway can be used to enable instances in a private subnet to connect to the Internet. This action creates a network interface in the specified subnet with a private IP address from the IP address range of the subnet. For more information, see NAT Gateways in the Amazon Virtual Private Cloud User Guide.

        ", "CreateNetworkAcl": "

        Creates a network ACL in a VPC. Network ACLs provide an optional layer of security (in addition to security groups) for the instances in your VPC.

        For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "CreateNetworkAclEntry": "

        Creates an entry (a rule) in a network ACL with the specified rule number. Each network ACL has a set of numbered ingress rules and a separate set of numbered egress rules. When determining whether a packet should be allowed in or out of a subnet associated with the ACL, we process the entries in the ACL according to the rule numbers, in ascending order. Each network ACL has a set of ingress rules and a separate set of egress rules.

        We recommend that you leave room between the rule numbers (for example, 100, 110, 120, ...), and not number them one right after the other (for example, 101, 102, 103, ...). This makes it easier to add a rule between existing ones without having to renumber the rules.

        After you add an entry, you can't modify it; you must either replace it, or create an entry and delete the old one.

        For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "CreateNetworkInterface": "

        Creates a network interface in the specified subnet.

        For more information about network interfaces, see Elastic Network Interfaces in the Amazon Elastic Compute Cloud User Guide.

        ", "CreatePlacementGroup": "

        Creates a placement group that you launch cluster instances into. You must give the group a name that's unique within the scope of your account.

        For more information about placement groups and cluster instances, see Cluster Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateReservedInstancesListing": "

        Creates a listing for Amazon EC2 Reserved Instances to be sold in the Reserved Instance Marketplace. You can submit one Reserved Instance listing at a time. To get a list of your Reserved Instances, you can use the DescribeReservedInstances operation.

        The Reserved Instance Marketplace matches sellers who want to resell Reserved Instance capacity that they no longer need with buyers who want to purchase additional capacity. Reserved Instances bought and sold through the Reserved Instance Marketplace work like any other Reserved Instances.

        To sell your Reserved Instances, you must first register as a seller in the Reserved Instance Marketplace. After completing the registration process, you can create a Reserved Instance Marketplace listing of some or all of your Reserved Instances, and specify the upfront price to receive for them. Your Reserved Instance listings then become available for purchase. To view the details of your Reserved Instance listing, you can use the DescribeReservedInstancesListings operation.

        For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateRoute": "

        Creates a route in a route table within a VPC.

        You must specify one of the following targets: Internet gateway or virtual private gateway, NAT instance, NAT gateway, VPC peering connection, or network interface.

        When determining how to route traffic, we use the route with the most specific match. For example, let's say the traffic is destined for 192.0.2.3, and the route table includes the following two routes:

        • 192.0.2.0/24 (goes to some target A)

        • 192.0.2.0/28 (goes to some target B)

        Both routes apply to the traffic destined for 192.0.2.3. However, the second route in the list covers a smaller number of IP addresses and is therefore more specific, so we use that route to determine where to target the traffic.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "CreateRouteTable": "

        Creates a route table for the specified VPC. After you create a route table, you can add routes and associate the table with a subnet.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "CreateSecurityGroup": "

        Creates a security group.

        A security group is for use with instances either in the EC2-Classic platform or in a specific VPC. For more information, see Amazon EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide and Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.

        EC2-Classic: You can have up to 500 security groups.

        EC2-VPC: You can create up to 500 security groups per VPC.

        When you create a security group, you specify a friendly name of your choice. You can have a security group for use in EC2-Classic with the same name as a security group for use in a VPC. However, you can't have two security groups for use in EC2-Classic with the same name or two security groups for use in a VPC with the same name.

        You have a default security group for use in EC2-Classic and a default security group for use in your VPC. If you don't specify a security group when you launch an instance, the instance is launched into the appropriate default security group. A default security group includes a default rule that grants instances unrestricted network access to each other.

        You can add or remove rules from your security groups using AuthorizeSecurityGroupIngress, AuthorizeSecurityGroupEgress, RevokeSecurityGroupIngress, and RevokeSecurityGroupEgress.

        ", "CreateSnapshot": "

        Creates a snapshot of an EBS volume and stores it in Amazon S3. You can use snapshots for backups, to make copies of EBS volumes, and to save data before shutting down an instance.

        When a snapshot is created, any AWS Marketplace product codes that are associated with the source volume are propagated to the snapshot.

        You can take a snapshot of an attached volume that is in use. However, snapshots only capture data that has been written to your EBS volume at the time the snapshot command is issued; this may exclude any data that has been cached by any applications or the operating system. If you can pause any file systems on the volume long enough to take a snapshot, your snapshot should be complete. However, if you cannot pause all file writes to the volume, you should unmount the volume from within the instance, issue the snapshot command, and then remount the volume to ensure a consistent and complete snapshot. You may remount and use your volume while the snapshot status is pending.

        To create a snapshot for EBS volumes that serve as root devices, you should stop the instance before taking the snapshot.

        Snapshots that are taken from encrypted volumes are automatically encrypted. Volumes that are created from encrypted snapshots are also automatically encrypted. Your encrypted volumes and any associated snapshots always remain protected.

        For more information, see Amazon Elastic Block Store and Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateSpotDatafeedSubscription": "

        Creates a data feed for Spot instances, enabling you to view Spot instance usage logs. You can create one data feed per AWS account. For more information, see Spot Instance Data Feed in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateSubnet": "

        Creates a subnet in an existing VPC.

        When you create each subnet, you provide the VPC ID and the CIDR block you want for the subnet. After you create a subnet, you can't change its CIDR block. The subnet's CIDR block can be the same as the VPC's CIDR block (assuming you want only a single subnet in the VPC), or a subset of the VPC's CIDR block. If you create more than one subnet in a VPC, the subnets' CIDR blocks must not overlap. The smallest subnet (and VPC) you can create uses a /28 netmask (16 IP addresses), and the largest uses a /16 netmask (65,536 IP addresses).

        AWS reserves both the first four and the last IP address in each subnet's CIDR block. They're not available for use.

        If you add more than one subnet to a VPC, they're set up in a star topology with a logical router in the middle.

        If you launch an instance in a VPC using an Amazon EBS-backed AMI, the IP address doesn't change if you stop and restart the instance (unlike a similar instance launched outside a VPC, which gets a new IP address when restarted). It's therefore possible to have a subnet with no running instances (they're all stopped), but no remaining IP addresses available.

        For more information about subnets, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide.

        ", "CreateTags": "

        Adds or overwrites one or more tags for the specified Amazon EC2 resource or resources. Each resource can have a maximum of 10 tags. Each tag consists of a key and optional value. Tag keys must be unique per resource.

        For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide. For more information about creating IAM policies that control users' access to resources based on tags, see Supported Resource-Level Permissions for Amazon EC2 API Actions in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateVolume": "

        Creates an EBS volume that can be attached to an instance in the same Availability Zone. The volume is created in the regional endpoint that you send the HTTP request to. For more information see Regions and Endpoints.

        You can create a new empty volume or restore a volume from an EBS snapshot. Any AWS Marketplace product codes from the snapshot are propagated to the volume.

        You can create encrypted volumes with the Encrypted parameter. Encrypted volumes may only be attached to instances that support Amazon EBS encryption. Volumes that are created from encrypted snapshots are also automatically encrypted. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        For more information, see Creating or Restoring an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateVpc": "

        Creates a VPC with the specified CIDR block.

        The smallest VPC you can create uses a /28 netmask (16 IP addresses), and the largest uses a /16 netmask (65,536 IP addresses). To help you decide how big to make your VPC, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide.

        By default, each instance you launch in the VPC has the default DHCP options, which includes only a default DNS server that we provide (AmazonProvidedDNS). For more information about DHCP options, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.

        You can specify the instance tenancy value for the VPC when you create it. You can't change this value for the VPC after you create it. For more information, see Dedicated Instances in the Amazon Virtual Private Cloud User Guide.

        ", "CreateVpcEndpoint": "

        Creates a VPC endpoint for a specified AWS service. An endpoint enables you to create a private connection between your VPC and another AWS service in your account. You can specify an endpoint policy to attach to the endpoint that will control access to the service from your VPC. You can also specify the VPC route tables that use the endpoint.

        Currently, only endpoints to Amazon S3 are supported.

        ", "CreateVpcPeeringConnection": "

        Requests a VPC peering connection between two VPCs: a requester VPC that you own and a peer VPC with which to create the connection. The peer VPC can belong to another AWS account. The requester VPC and peer VPC cannot have overlapping CIDR blocks.

        The owner of the peer VPC must accept the peering request to activate the peering connection. The VPC peering connection request expires after 7 days, after which it cannot be accepted or rejected.

        A CreateVpcPeeringConnection request between VPCs with overlapping CIDR blocks results in the VPC peering connection having a status of failed.

        ", "CreateVpnConnection": "

        Creates a VPN connection between an existing virtual private gateway and a VPN customer gateway. The only supported connection type is ipsec.1.

        The response includes information that you need to give to your network administrator to configure your customer gateway.

        We strongly recommend that you use HTTPS when calling this operation because the response contains sensitive cryptographic information for configuring your customer gateway.

        If you decide to shut down your VPN connection for any reason and later create a new VPN connection, you must reconfigure your customer gateway with the new information returned from this call.

        This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error.

        For more information about VPN connections, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "CreateVpnConnectionRoute": "

        Creates a static route associated with a VPN connection between an existing virtual private gateway and a VPN customer gateway. The static route allows traffic to be routed from the virtual private gateway to the VPN customer gateway.

        For more information about VPN connections, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "CreateVpnGateway": "

        Creates a virtual private gateway. A virtual private gateway is the endpoint on the VPC side of your VPN connection. You can create a virtual private gateway before creating the VPC itself.

        For more information about virtual private gateways, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DeleteCustomerGateway": "

        Deletes the specified customer gateway. You must delete the VPN connection before you can delete the customer gateway.

        ", "DeleteDhcpOptions": "

        Deletes the specified set of DHCP options. You must disassociate the set of DHCP options before you can delete it. You can disassociate the set of DHCP options by associating either a new set of options or the default set of options with the VPC.

        ", "DeleteFlowLogs": "

        Deletes one or more flow logs.

        ", "DeleteInternetGateway": "

        Deletes the specified Internet gateway. You must detach the Internet gateway from the VPC before you can delete it.

        ", "DeleteKeyPair": "

        Deletes the specified key pair, by removing the public key from Amazon EC2.

        ", "DeleteNatGateway": "

        Deletes the specified NAT gateway. Deleting a NAT gateway disassociates its Elastic IP address, but does not release the address from your account. Deleting a NAT gateway does not delete any NAT gateway routes in your route tables.

        ", "DeleteNetworkAcl": "

        Deletes the specified network ACL. You can't delete the ACL if it's associated with any subnets. You can't delete the default network ACL.

        ", "DeleteNetworkAclEntry": "

        Deletes the specified ingress or egress entry (rule) from the specified network ACL.

        ", "DeleteNetworkInterface": "

        Deletes the specified network interface. You must detach the network interface before you can delete it.

        ", "DeletePlacementGroup": "

        Deletes the specified placement group. You must terminate all instances in the placement group before you can delete the placement group. For more information about placement groups and cluster instances, see Cluster Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "DeleteRoute": "

        Deletes the specified route from the specified route table.

        ", "DeleteRouteTable": "

        Deletes the specified route table. You must disassociate the route table from any subnets before you can delete it. You can't delete the main route table.

        ", "DeleteSecurityGroup": "

        Deletes a security group.

        If you attempt to delete a security group that is associated with an instance, or is referenced by another security group, the operation fails with InvalidGroup.InUse in EC2-Classic or DependencyViolation in EC2-VPC.

        ", "DeleteSnapshot": "

        Deletes the specified snapshot.

        When you make periodic snapshots of a volume, the snapshots are incremental, and only the blocks on the device that have changed since your last snapshot are saved in the new snapshot. When you delete a snapshot, only the data not needed for any other snapshot is removed. So regardless of which prior snapshots have been deleted, all active snapshots will have access to all the information needed to restore the volume.

        You cannot delete a snapshot of the root device of an EBS volume used by a registered AMI. You must first de-register the AMI before you can delete the snapshot.

        For more information, see Deleting an Amazon EBS Snapshot in the Amazon Elastic Compute Cloud User Guide.

        ", "DeleteSpotDatafeedSubscription": "

        Deletes the data feed for Spot instances.

        ", "DeleteSubnet": "

        Deletes the specified subnet. You must terminate all running instances in the subnet before you can delete the subnet.

        ", "DeleteTags": "

        Deletes the specified set of tags from the specified set of resources. This call is designed to follow a DescribeTags request.

        For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide.

        ", "DeleteVolume": "

        Deletes the specified EBS volume. The volume must be in the available state (not attached to an instance).

        The volume may remain in the deleting state for several minutes.

        For more information, see Deleting an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide.

        ", "DeleteVpc": "

        Deletes the specified VPC. You must detach or delete all gateways and resources that are associated with the VPC before you can delete it. For example, you must terminate all instances running in the VPC, delete all security groups associated with the VPC (except the default one), delete all route tables associated with the VPC (except the default one), and so on.

        ", "DeleteVpcEndpoints": "

        Deletes one or more specified VPC endpoints. Deleting the endpoint also deletes the endpoint routes in the route tables that were associated with the endpoint.

        ", "DeleteVpcPeeringConnection": "

        Deletes a VPC peering connection. Either the owner of the requester VPC or the owner of the peer VPC can delete the VPC peering connection if it's in the active state. The owner of the requester VPC can delete a VPC peering connection in the pending-acceptance state.

        ", "DeleteVpnConnection": "

        Deletes the specified VPN connection.

        If you're deleting the VPC and its associated components, we recommend that you detach the virtual private gateway from the VPC and delete the VPC before deleting the VPN connection. If you believe that the tunnel credentials for your VPN connection have been compromised, you can delete the VPN connection and create a new one that has new keys, without needing to delete the VPC or virtual private gateway. If you create a new VPN connection, you must reconfigure the customer gateway using the new configuration information returned with the new VPN connection ID.

        ", "DeleteVpnConnectionRoute": "

        Deletes the specified static route associated with a VPN connection between an existing virtual private gateway and a VPN customer gateway. The static route allows traffic to be routed from the virtual private gateway to the VPN customer gateway.

        ", "DeleteVpnGateway": "

        Deletes the specified virtual private gateway. We recommend that before you delete a virtual private gateway, you detach it from the VPC and delete the VPN connection. Note that you don't need to delete the virtual private gateway if you plan to delete and recreate the VPN connection between your VPC and your network.

        ", "DeregisterImage": "

        Deregisters the specified AMI. After you deregister an AMI, it can't be used to launch new instances.

        This command does not delete the AMI.

        ", "DescribeAccountAttributes": "

        Describes attributes of your AWS account. The following are the supported account attributes:

        • supported-platforms: Indicates whether your account can launch instances into EC2-Classic and EC2-VPC, or only into EC2-VPC.

        • default-vpc: The ID of the default VPC for your account, or none.

        • max-instances: The maximum number of On-Demand instances that you can run.

        • vpc-max-security-groups-per-interface: The maximum number of security groups that you can assign to a network interface.

        • max-elastic-ips: The maximum number of Elastic IP addresses that you can allocate for use with EC2-Classic.

        • vpc-max-elastic-ips: The maximum number of Elastic IP addresses that you can allocate for use with EC2-VPC.

        ", "DescribeAddresses": "

        Describes one or more of your Elastic IP addresses.

        An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeAvailabilityZones": "

        Describes one or more of the Availability Zones that are available to you. The results include zones only for the region you're currently using. If there is an event impacting an Availability Zone, you can use this request to view the state and any provided message for that Availability Zone.

        For more information, see Regions and Availability Zones in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeBundleTasks": "

        Describes one or more of your bundling tasks.

        Completed bundle tasks are listed for only a limited time. If your bundle task is no longer in the list, you can still register an AMI from it. Just use RegisterImage with the Amazon S3 bucket name and image manifest name you provided to the bundle task.

        ", "DescribeClassicLinkInstances": "

        Describes one or more of your linked EC2-Classic instances. This request only returns information about EC2-Classic instances linked to a VPC through ClassicLink; you cannot use this request to return information about other instances.

        ", "DescribeConversionTasks": "

        Describes one or more of your conversion tasks. For more information, see Using the Command Line Tools to Import Your Virtual Machine to Amazon EC2 in the Amazon Elastic Compute Cloud User Guide.

        For information about the import manifest referenced by this API action, see VM Import Manifest.

        ", "DescribeCustomerGateways": "

        Describes one or more of your VPN customer gateways.

        For more information about VPN customer gateways, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeDhcpOptions": "

        Describes one or more of your DHCP options sets.

        For more information about DHCP options sets, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeExportTasks": "

        Describes one or more of your export tasks.

        ", "DescribeFlowLogs": "

        Describes one or more flow logs. To view the information in your flow logs (the log streams for the network interfaces), you must use the CloudWatch Logs console or the CloudWatch Logs API.

        ", "DescribeHosts": "

        Describes one or more of your Dedicated hosts.

        The results describe only the Dedicated hosts in the region you're currently using. All listed instances consume capacity on your Dedicated host. Dedicated hosts that have recently been released will be listed with the state released.

        ", "DescribeIdFormat": "

        Describes the ID format settings for your resources on a per-region basis, for example, to view which resource types are enabled for longer IDs. This request only returns information about resource types whose ID formats can be modified; it does not return information about other resource types.

        The following resource types support longer IDs: instance | reservation | snapshot | volume.

        These settings apply to the IAM user who makes the request; they do not apply to the entire AWS account. By default, an IAM user defaults to the same settings as the root user, unless they explicitly override the settings by running the ModifyIdFormat command. Resources created with longer IDs are visible to all IAM users, regardless of these settings and provided that they have permission to use the relevant Describe command for the resource type.

        ", "DescribeImageAttribute": "

        Describes the specified attribute of the specified AMI. You can specify only one attribute at a time.

        ", "DescribeImages": "

        Describes one or more of the images (AMIs, AKIs, and ARIs) available to you. Images available to you include public images, private images that you own, and private images owned by other AWS accounts but for which you have explicit launch permissions.

        Deregistered images are included in the returned results for an unspecified interval after deregistration.

        ", "DescribeImportImageTasks": "

        Displays details about an import virtual machine or import snapshot tasks that are already created.

        ", "DescribeImportSnapshotTasks": "

        Describes your import snapshot tasks.

        ", "DescribeInstanceAttribute": "

        Describes the specified attribute of the specified instance. You can specify only one attribute at a time. Valid attribute values are: instanceType | kernel | ramdisk | userData | disableApiTermination | instanceInitiatedShutdownBehavior | rootDeviceName | blockDeviceMapping | productCodes | sourceDestCheck | groupSet | ebsOptimized | sriovNetSupport

        ", "DescribeInstanceStatus": "

        Describes the status of one or more instances. By default, only running instances are described, unless specified otherwise.

        Instance status includes the following components:

        • Status checks - Amazon EC2 performs status checks on running EC2 instances to identify hardware and software issues. For more information, see Status Checks for Your Instances and Troubleshooting Instances with Failed Status Checks in the Amazon Elastic Compute Cloud User Guide.

        • Scheduled events - Amazon EC2 can schedule events (such as reboot, stop, or terminate) for your instances related to hardware issues, software updates, or system maintenance. For more information, see Scheduled Events for Your Instances in the Amazon Elastic Compute Cloud User Guide.

        • Instance state - You can manage your instances from the moment you launch them through their termination. For more information, see Instance Lifecycle in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeInstances": "

        Describes one or more of your instances.

        If you specify one or more instance IDs, Amazon EC2 returns information for those instances. If you do not specify instance IDs, Amazon EC2 returns information for all relevant instances. If you specify an instance ID that is not valid, an error is returned. If you specify an instance that you do not own, it is not included in the returned results.

        Recently terminated instances might appear in the returned results. This interval is usually less than one hour.

        ", "DescribeInternetGateways": "

        Describes one or more of your Internet gateways.

        ", "DescribeKeyPairs": "

        Describes one or more of your key pairs.

        For more information about key pairs, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeMovingAddresses": "

        Describes your Elastic IP addresses that are being moved to the EC2-VPC platform, or that are being restored to the EC2-Classic platform. This request does not return information about any other Elastic IP addresses in your account.

        ", "DescribeNatGateways": "

        Describes one or more of the your NAT gateways.

        ", "DescribeNetworkAcls": "

        Describes one or more of your network ACLs.

        For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeNetworkInterfaceAttribute": "

        Describes a network interface attribute. You can specify only one attribute at a time.

        ", "DescribeNetworkInterfaces": "

        Describes one or more of your network interfaces.

        ", "DescribePlacementGroups": "

        Describes one or more of your placement groups. For more information about placement groups and cluster instances, see Cluster Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribePrefixLists": "

        Describes available AWS services in a prefix list format, which includes the prefix list name and prefix list ID of the service and the IP address range for the service. A prefix list ID is required for creating an outbound security group rule that allows traffic from a VPC to access an AWS service through a VPC endpoint.

        ", "DescribeRegions": "

        Describes one or more regions that are currently available to you.

        For a list of the regions supported by Amazon EC2, see Regions and Endpoints.

        ", "DescribeReservedInstances": "

        Describes one or more of the Reserved Instances that you purchased.

        For more information about Reserved Instances, see Reserved Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeReservedInstancesListings": "

        Describes your account's Reserved Instance listings in the Reserved Instance Marketplace.

        The Reserved Instance Marketplace matches sellers who want to resell Reserved Instance capacity that they no longer need with buyers who want to purchase additional capacity. Reserved Instances bought and sold through the Reserved Instance Marketplace work like any other Reserved Instances.

        As a seller, you choose to list some or all of your Reserved Instances, and you specify the upfront price to receive for them. Your Reserved Instances are then listed in the Reserved Instance Marketplace and are available for purchase.

        As a buyer, you specify the configuration of the Reserved Instance to purchase, and the Marketplace matches what you're searching for with what's available. The Marketplace first sells the lowest priced Reserved Instances to you, and continues to sell available Reserved Instance listings to you until your demand is met. You are charged based on the total price of all of the listings that you purchase.

        For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeReservedInstancesModifications": "

        Describes the modifications made to your Reserved Instances. If no parameter is specified, information about all your Reserved Instances modification requests is returned. If a modification ID is specified, only information about the specific modification is returned.

        For more information, see Modifying Reserved Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeReservedInstancesOfferings": "

        Describes Reserved Instance offerings that are available for purchase. With Reserved Instances, you purchase the right to launch instances for a period of time. During that time period, you do not receive insufficient capacity errors, and you pay a lower usage rate than the rate charged for On-Demand instances for the actual time used.

        If you have listed your own Reserved Instances for sale in the Reserved Instance Marketplace, they will be excluded from these results. This is to ensure that you do not purchase your own Reserved Instances.

        For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeRouteTables": "

        Describes one or more of your route tables.

        Each subnet in your VPC must be associated with a route table. If a subnet is not explicitly associated with any route table, it is implicitly associated with the main route table. This command does not return the subnet ID for implicit associations.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeScheduledInstanceAvailability": "

        Finds available schedules that meet the specified criteria.

        You can search for an available schedule no more than 3 months in advance. You must meet the minimum required duration of 1,200 hours per year. For example, the minimum daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the minimum monthly schedule is 100 hours.

        After you find a schedule that meets your needs, call PurchaseScheduledInstances to purchase Scheduled Instances with that schedule.

        ", "DescribeScheduledInstances": "

        Describes one or more of your Scheduled Instances.

        ", "DescribeSecurityGroupReferences": "

        [EC2-VPC only] Describes the VPCs on the other side of a VPC peering connection that are referencing the security groups you've specified in this request.

        ", "DescribeSecurityGroups": "

        Describes one or more of your security groups.

        A security group is for use with instances either in the EC2-Classic platform or in a specific VPC. For more information, see Amazon EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide and Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeSnapshotAttribute": "

        Describes the specified attribute of the specified snapshot. You can specify only one attribute at a time.

        For more information about EBS snapshots, see Amazon EBS Snapshots in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeSnapshots": "

        Describes one or more of the EBS snapshots available to you. Available snapshots include public snapshots available for any AWS account to launch, private snapshots that you own, and private snapshots owned by another AWS account but for which you've been given explicit create volume permissions.

        The create volume permissions fall into the following categories:

        • public: The owner of the snapshot granted create volume permissions for the snapshot to the all group. All AWS accounts have create volume permissions for these snapshots.

        • explicit: The owner of the snapshot granted create volume permissions to a specific AWS account.

        • implicit: An AWS account has implicit create volume permissions for all snapshots it owns.

        The list of snapshots returned can be modified by specifying snapshot IDs, snapshot owners, or AWS accounts with create volume permissions. If no options are specified, Amazon EC2 returns all snapshots for which you have create volume permissions.

        If you specify one or more snapshot IDs, only snapshots that have the specified IDs are returned. If you specify an invalid snapshot ID, an error is returned. If you specify a snapshot ID for which you do not have access, it is not included in the returned results.

        If you specify one or more snapshot owners, only snapshots from the specified owners and for which you have access are returned. The results can include the AWS account IDs of the specified owners, amazon for snapshots owned by Amazon, or self for snapshots that you own.

        If you specify a list of restorable users, only snapshots with create snapshot permissions for those users are returned. You can specify AWS account IDs (if you own the snapshots), self for snapshots for which you own or have explicit permissions, or all for public snapshots.

        If you are describing a long list of snapshots, you can paginate the output to make the list more manageable. The MaxResults parameter sets the maximum number of results returned in a single page. If the list of results exceeds your MaxResults value, then that number of results is returned along with a NextToken value that can be passed to a subsequent DescribeSnapshots request to retrieve the remaining results.

        For more information about EBS snapshots, see Amazon EBS Snapshots in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeSpotDatafeedSubscription": "

        Describes the data feed for Spot instances. For more information, see Spot Instance Data Feed in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeSpotFleetInstances": "

        Describes the running instances for the specified Spot fleet.

        ", "DescribeSpotFleetRequestHistory": "

        Describes the events for the specified Spot fleet request during the specified time.

        Spot fleet events are delayed by up to 30 seconds before they can be described. This ensures that you can query by the last evaluated time and not miss a recorded event.

        ", "DescribeSpotFleetRequests": "

        Describes your Spot fleet requests.

        ", "DescribeSpotInstanceRequests": "

        Describes the Spot instance requests that belong to your account. Spot instances are instances that Amazon EC2 launches when the bid price that you specify exceeds the current Spot price. Amazon EC2 periodically sets the Spot price based on available Spot instance capacity and current Spot instance requests. For more information, see Spot Instance Requests in the Amazon Elastic Compute Cloud User Guide.

        You can use DescribeSpotInstanceRequests to find a running Spot instance by examining the response. If the status of the Spot instance is fulfilled, the instance ID appears in the response and contains the identifier of the instance. Alternatively, you can use DescribeInstances with a filter to look for instances where the instance lifecycle is spot.

        ", "DescribeSpotPriceHistory": "

        Describes the Spot price history. The prices returned are listed in chronological order, from the oldest to the most recent, for up to the past 90 days. For more information, see Spot Instance Pricing History in the Amazon Elastic Compute Cloud User Guide.

        When you specify a start and end time, this operation returns the prices of the instance types within the time range that you specified and the time when the price changed. The price is valid within the time period that you specified; the response merely indicates the last time that the price changed.

        ", "DescribeStaleSecurityGroups": "

        [EC2-VPC only] Describes the stale security group rules for security groups in a specified VPC. Rules are stale when they reference a deleted security group in a peer VPC, or a security group in a peer VPC for which the VPC peering connection has been deleted.

        ", "DescribeSubnets": "

        Describes one or more of your subnets.

        For more information about subnets, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeTags": "

        Describes one or more of the tags for your EC2 resources.

        For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeVolumeAttribute": "

        Describes the specified attribute of the specified volume. You can specify only one attribute at a time.

        For more information about EBS volumes, see Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeVolumeStatus": "

        Describes the status of the specified volumes. Volume status provides the result of the checks performed on your volumes to determine events that can impair the performance of your volumes. The performance of a volume can be affected if an issue occurs on the volume's underlying host. If the volume's underlying host experiences a power outage or system issue, after the system is restored, there could be data inconsistencies on the volume. Volume events notify you if this occurs. Volume actions notify you if any action needs to be taken in response to the event.

        The DescribeVolumeStatus operation provides the following information about the specified volumes:

        Status: Reflects the current status of the volume. The possible values are ok, impaired , warning, or insufficient-data. If all checks pass, the overall status of the volume is ok. If the check fails, the overall status is impaired. If the status is insufficient-data, then the checks may still be taking place on your volume at the time. We recommend that you retry the request. For more information on volume status, see Monitoring the Status of Your Volumes.

        Events: Reflect the cause of a volume status and may require you to take action. For example, if your volume returns an impaired status, then the volume event might be potential-data-inconsistency. This means that your volume has been affected by an issue with the underlying host, has all I/O operations disabled, and may have inconsistent data.

        Actions: Reflect the actions you may have to take in response to an event. For example, if the status of the volume is impaired and the volume event shows potential-data-inconsistency, then the action shows enable-volume-io. This means that you may want to enable the I/O operations for the volume by calling the EnableVolumeIO action and then check the volume for data consistency.

        Volume status is based on the volume status checks, and does not reflect the volume state. Therefore, volume status does not indicate volumes in the error state (for example, when a volume is incapable of accepting I/O.)

        ", "DescribeVolumes": "

        Describes the specified EBS volumes.

        If you are describing a long list of volumes, you can paginate the output to make the list more manageable. The MaxResults parameter sets the maximum number of results returned in a single page. If the list of results exceeds your MaxResults value, then that number of results is returned along with a NextToken value that can be passed to a subsequent DescribeVolumes request to retrieve the remaining results.

        For more information about EBS volumes, see Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeVpcAttribute": "

        Describes the specified attribute of the specified VPC. You can specify only one attribute at a time.

        ", "DescribeVpcClassicLink": "

        Describes the ClassicLink status of one or more VPCs.

        ", "DescribeVpcClassicLinkDnsSupport": "

        Describes the ClassicLink DNS support status of one or more VPCs. If enabled, the DNS hostname of a linked EC2-Classic instance resolves to its private IP address when addressed from an instance in the VPC to which it's linked. Similarly, the DNS hostname of an instance in a VPC resolves to its private IP address when addressed from a linked EC2-Classic instance. For more information about ClassicLink, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeVpcEndpointServices": "

        Describes all supported AWS services that can be specified when creating a VPC endpoint.

        ", "DescribeVpcEndpoints": "

        Describes one or more of your VPC endpoints.

        ", "DescribeVpcPeeringConnections": "

        Describes one or more of your VPC peering connections.

        ", "DescribeVpcs": "

        Describes one or more of your VPCs.

        ", "DescribeVpnConnections": "

        Describes one or more of your VPN connections.

        For more information about VPN connections, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeVpnGateways": "

        Describes one or more of your virtual private gateways.

        For more information about virtual private gateways, see Adding an IPsec Hardware VPN to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DetachClassicLinkVpc": "

        Unlinks (detaches) a linked EC2-Classic instance from a VPC. After the instance has been unlinked, the VPC security groups are no longer associated with it. An instance is automatically unlinked from a VPC when it's stopped.

        ", "DetachInternetGateway": "

        Detaches an Internet gateway from a VPC, disabling connectivity between the Internet and the VPC. The VPC must not contain any running instances with Elastic IP addresses.

        ", "DetachNetworkInterface": "

        Detaches a network interface from an instance.

        ", "DetachVolume": "

        Detaches an EBS volume from an instance. Make sure to unmount any file systems on the device within your operating system before detaching the volume. Failure to do so results in the volume being stuck in a busy state while detaching.

        If an Amazon EBS volume is the root device of an instance, it can't be detached while the instance is running. To detach the root volume, stop the instance first.

        When a volume with an AWS Marketplace product code is detached from an instance, the product code is no longer associated with the instance.

        For more information, see Detaching an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide.

        ", "DetachVpnGateway": "

        Detaches a virtual private gateway from a VPC. You do this if you're planning to turn off the VPC and not use it anymore. You can confirm a virtual private gateway has been completely detached from a VPC by describing the virtual private gateway (any attachments to the virtual private gateway are also described).

        You must wait for the attachment's state to switch to detached before you can delete the VPC or attach a different VPC to the virtual private gateway.

        ", "DisableVgwRoutePropagation": "

        Disables a virtual private gateway (VGW) from propagating routes to a specified route table of a VPC.

        ", "DisableVpcClassicLink": "

        Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC that has EC2-Classic instances linked to it.

        ", "DisableVpcClassicLinkDnsSupport": "

        Disables ClassicLink DNS support for a VPC. If disabled, DNS hostnames resolve to public IP addresses when addressed between a linked EC2-Classic instance and instances in the VPC to which it's linked. For more information about ClassicLink, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

        ", "DisassociateAddress": "

        Disassociates an Elastic IP address from the instance or network interface it's associated with.

        An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error.

        ", "DisassociateRouteTable": "

        Disassociates a subnet from a route table.

        After you perform this action, the subnet no longer uses the routes in the route table. Instead, it uses the routes in the VPC's main route table. For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "EnableVgwRoutePropagation": "

        Enables a virtual private gateway (VGW) to propagate routes to the specified route table of a VPC.

        ", "EnableVolumeIO": "

        Enables I/O operations for a volume that had I/O operations disabled because the data on the volume was potentially inconsistent.

        ", "EnableVpcClassicLink": "

        Enables a VPC for ClassicLink. You can then link EC2-Classic instances to your ClassicLink-enabled VPC to allow communication over private IP addresses. You cannot enable your VPC for ClassicLink if any of your VPC's route tables have existing routes for address ranges within the 10.0.0.0/8 IP address range, excluding local routes for VPCs in the 10.0.0.0/16 and 10.1.0.0/16 IP address ranges. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

        ", "EnableVpcClassicLinkDnsSupport": "

        Enables a VPC to support DNS hostname resolution for ClassicLink. If enabled, the DNS hostname of a linked EC2-Classic instance resolves to its private IP address when addressed from an instance in the VPC to which it's linked. Similarly, the DNS hostname of an instance in a VPC resolves to its private IP address when addressed from a linked EC2-Classic instance. For more information about ClassicLink, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

        ", "GetConsoleOutput": "

        Gets the console output for the specified instance.

        Instances do not have a physical monitor through which you can view their console output. They also lack physical controls that allow you to power up, reboot, or shut them down. To allow these actions, we provide them through the Amazon EC2 API and command line interface.

        Instance console output is buffered and posted shortly after instance boot, reboot, and termination. Amazon EC2 preserves the most recent 64 KB output which is available for at least one hour after the most recent post.

        For Linux instances, the instance console output displays the exact console output that would normally be displayed on a physical monitor attached to a computer. This output is buffered because the instance produces it and then posts it to a store where the instance's owner can retrieve it.

        For Windows instances, the instance console output includes output from the EC2Config service.

        ", "GetConsoleScreenshot": "

        Retrieve a JPG-format screenshot of a running instance to help with troubleshooting.

        The returned content is base64-encoded.

        ", "GetPasswordData": "

        Retrieves the encrypted administrator password for an instance running Windows.

        The Windows password is generated at boot if the EC2Config service plugin, Ec2SetPassword, is enabled. This usually only happens the first time an AMI is launched, and then Ec2SetPassword is automatically disabled. The password is not generated for rebundled AMIs unless Ec2SetPassword is enabled before bundling.

        The password is encrypted using the key pair that you specified when you launched the instance. You must provide the corresponding key pair file.

        Password generation and encryption takes a few moments. We recommend that you wait up to 15 minutes after launching an instance before trying to retrieve the generated password.

        ", "ImportImage": "

        Import single or multi-volume disk images or EBS snapshots into an Amazon Machine Image (AMI).

        ", "ImportInstance": "

        Creates an import instance task using metadata from the specified disk image. ImportInstance only supports single-volume VMs. To import multi-volume VMs, use ImportImage. After importing the image, you then upload it using the ec2-import-volume command in the EC2 command line tools. For more information, see Using the Command Line Tools to Import Your Virtual Machine to Amazon EC2 in the Amazon Elastic Compute Cloud User Guide.

        For information about the import manifest referenced by this API action, see VM Import Manifest.

        ", "ImportKeyPair": "

        Imports the public key from an RSA key pair that you created with a third-party tool. Compare this with CreateKeyPair, in which AWS creates the key pair and gives the keys to you (AWS keeps a copy of the public key). With ImportKeyPair, you create the key pair and give AWS just the public key. The private key is never transferred between you and AWS.

        For more information about key pairs, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.

        ", "ImportSnapshot": "

        Imports a disk into an EBS snapshot.

        ", "ImportVolume": "

        Creates an import volume task using metadata from the specified disk image. After importing the image, you then upload it using the ec2-import-volume command in the Amazon EC2 command-line interface (CLI) tools. For more information, see Using the Command Line Tools to Import Your Virtual Machine to Amazon EC2 in the Amazon Elastic Compute Cloud User Guide.

        For information about the import manifest referenced by this API action, see VM Import Manifest.

        ", "ModifyHosts": "

        Modify the auto-placement setting of a Dedicated host. When auto-placement is enabled, AWS will place instances that you launch with a tenancy of host, but without targeting a specific host ID, onto any available Dedicated host in your account which has auto-placement enabled. When auto-placement is disabled, you need to provide a host ID if you want the instance to launch onto a specific host. If no host ID is provided, the instance will be launched onto a suitable host which has auto-placement enabled.

        ", "ModifyIdFormat": "

        Modifies the ID format for the specified resource on a per-region basis. You can specify that resources should receive longer IDs (17-character IDs) when they are created. The following resource types support longer IDs: instance | reservation | snapshot | volume.

        This setting applies to the IAM user who makes the request; it does not apply to the entire AWS account. By default, an IAM user defaults to the same settings as the root user. If you're using this action as the root user or as an IAM role that has permission to use this action, then these settings apply to the entire account, unless an IAM user explicitly overrides these settings for themselves. For more information, see Controlling Access to Longer ID Settings in the Amazon Elastic Compute Cloud User Guide.

        Resources created with longer IDs are visible to all IAM users, regardless of these settings and provided that they have permission to use the relevant Describe command for the resource type.

        ", "ModifyImageAttribute": "

        Modifies the specified attribute of the specified AMI. You can specify only one attribute at a time.

        AWS Marketplace product codes cannot be modified. Images with an AWS Marketplace product code cannot be made public.

        ", "ModifyInstanceAttribute": "

        Modifies the specified attribute of the specified instance. You can specify only one attribute at a time.

        To modify some attributes, the instance must be stopped. For more information, see Modifying Attributes of a Stopped Instance in the Amazon Elastic Compute Cloud User Guide.

        ", "ModifyInstancePlacement": "

        Set the instance affinity value for a specific stopped instance and modify the instance tenancy setting.

        Instance affinity is disabled by default. When instance affinity is host and it is not associated with a specific Dedicated host, the next time it is launched it will automatically be associated with the host it lands on. This relationship will persist if the instance is stopped/started, or rebooted.

        You can modify the host ID associated with a stopped instance. If a stopped instance has a new host ID association, the instance will target that host when restarted.

        You can modify the tenancy of a stopped instance with a tenancy of host or dedicated.

        Affinity, hostID, and tenancy are not required parameters, but at least one of them must be specified in the request. Affinity and tenancy can be modified in the same request, but tenancy can only be modified on instances that are stopped.

        ", "ModifyNetworkInterfaceAttribute": "

        Modifies the specified network interface attribute. You can specify only one attribute at a time.

        ", "ModifyReservedInstances": "

        Modifies the Availability Zone, instance count, instance type, or network platform (EC2-Classic or EC2-VPC) of your Reserved Instances. The Reserved Instances to be modified must be identical, except for Availability Zone, network platform, and instance type.

        For more information, see Modifying Reserved Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "ModifySnapshotAttribute": "

        Adds or removes permission settings for the specified snapshot. You may add or remove specified AWS account IDs from a snapshot's list of create volume permissions, but you cannot do both in a single API call. If you need to both add and remove account IDs for a snapshot, you must use multiple API calls.

        For more information on modifying snapshot permissions, see Sharing Snapshots in the Amazon Elastic Compute Cloud User Guide.

        Snapshots with AWS Marketplace product codes cannot be made public.

        ", "ModifySpotFleetRequest": "

        Modifies the specified Spot fleet request.

        While the Spot fleet request is being modified, it is in the modifying state.

        To scale up your Spot fleet, increase its target capacity. The Spot fleet launches the additional Spot instances according to the allocation strategy for the Spot fleet request. If the allocation strategy is lowestPrice, the Spot fleet launches instances using the Spot pool with the lowest price. If the allocation strategy is diversified, the Spot fleet distributes the instances across the Spot pools.

        To scale down your Spot fleet, decrease its target capacity. First, the Spot fleet cancels any open bids that exceed the new target capacity. You can request that the Spot fleet terminate Spot instances until the size of the fleet no longer exceeds the new target capacity. If the allocation strategy is lowestPrice, the Spot fleet terminates the instances with the highest price per unit. If the allocation strategy is diversified, the Spot fleet terminates instances across the Spot pools. Alternatively, you can request that the Spot fleet keep the fleet at its current size, but not replace any Spot instances that are interrupted or that you terminate manually.

        ", "ModifySubnetAttribute": "

        Modifies a subnet attribute.

        ", "ModifyVolumeAttribute": "

        Modifies a volume attribute.

        By default, all I/O operations for the volume are suspended when the data on the volume is determined to be potentially inconsistent, to prevent undetectable, latent data corruption. The I/O access to the volume can be resumed by first enabling I/O access and then checking the data consistency on your volume.

        You can change the default behavior to resume I/O operations. We recommend that you change this only for boot volumes or for volumes that are stateless or disposable.

        ", "ModifyVpcAttribute": "

        Modifies the specified attribute of the specified VPC.

        ", "ModifyVpcEndpoint": "

        Modifies attributes of a specified VPC endpoint. You can modify the policy associated with the endpoint, and you can add and remove route tables associated with the endpoint.

        ", "ModifyVpcPeeringConnectionOptions": "

        Modifies the VPC peering connection options on one side of a VPC peering connection. You can do the following:

        • Enable/disable communication over the peering connection between an EC2-Classic instance that's linked to your VPC (using ClassicLink) and instances in the peer VPC.

        • Enable/disable communication over the peering connection between instances in your VPC and an EC2-Classic instance that's linked to the peer VPC.

        If the peered VPCs are in different accounts, each owner must initiate a separate request to enable or disable communication in either direction, depending on whether their VPC was the requester or accepter for the VPC peering connection. If the peered VPCs are in the same account, you can modify the requester and accepter options in the same request. To confirm which VPC is the accepter and requester for a VPC peering connection, use the DescribeVpcPeeringConnections command.

        ", "MonitorInstances": "

        Enables monitoring for a running instance. For more information about monitoring instances, see Monitoring Your Instances and Volumes in the Amazon Elastic Compute Cloud User Guide.

        ", "MoveAddressToVpc": "

        Moves an Elastic IP address from the EC2-Classic platform to the EC2-VPC platform. The Elastic IP address must be allocated to your account for more than 24 hours, and it must not be associated with an instance. After the Elastic IP address is moved, it is no longer available for use in the EC2-Classic platform, unless you move it back using the RestoreAddressToClassic request. You cannot move an Elastic IP address that was originally allocated for use in the EC2-VPC platform to the EC2-Classic platform.

        ", "PurchaseReservedInstancesOffering": "

        Purchases a Reserved Instance for use with your account. With Reserved Instances, you obtain a capacity reservation for a certain instance configuration over a specified period of time and pay a lower hourly rate compared to On-Demand instance pricing.

        Use DescribeReservedInstancesOfferings to get a list of Reserved Instance offerings that match your specifications. After you've purchased a Reserved Instance, you can check for your new Reserved Instance with DescribeReservedInstances.

        For more information, see Reserved Instances and Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "PurchaseScheduledInstances": "

        Purchases one or more Scheduled Instances with the specified schedule.

        Scheduled Instances enable you to purchase Amazon EC2 compute capacity by the hour for a one-year term. Before you can purchase a Scheduled Instance, you must call DescribeScheduledInstanceAvailability to check for available schedules and obtain a purchase token. After you purchase a Scheduled Instance, you must call RunScheduledInstances during each scheduled time period.

        After you purchase a Scheduled Instance, you can't cancel, modify, or resell your purchase.

        ", "RebootInstances": "

        Requests a reboot of one or more instances. This operation is asynchronous; it only queues a request to reboot the specified instances. The operation succeeds if the instances are valid and belong to you. Requests to reboot terminated instances are ignored.

        If an instance does not cleanly shut down within four minutes, Amazon EC2 performs a hard reboot.

        For more information about troubleshooting, see Getting Console Output and Rebooting Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "RegisterImage": "

        Registers an AMI. When you're creating an AMI, this is the final step you must complete before you can launch an instance from the AMI. For more information about creating AMIs, see Creating Your Own AMIs in the Amazon Elastic Compute Cloud User Guide.

        For Amazon EBS-backed instances, CreateImage creates and registers the AMI in a single request, so you don't have to register the AMI yourself.

        You can also use RegisterImage to create an Amazon EBS-backed Linux AMI from a snapshot of a root device volume. For more information, see Launching an Instance from a Snapshot in the Amazon Elastic Compute Cloud User Guide.

        Some Linux distributions, such as Red Hat Enterprise Linux (RHEL) and SUSE Linux Enterprise Server (SLES), use the EC2 billingProduct code associated with an AMI to verify subscription status for package updates. Creating an AMI from an EBS snapshot does not maintain this billing code, and subsequent instances launched from such an AMI will not be able to connect to package update infrastructure.

        Similarly, although you can create a Windows AMI from a snapshot, you can't successfully launch an instance from the AMI.

        To create Windows AMIs or to create AMIs for Linux operating systems that must retain AMI billing codes to work properly, see CreateImage.

        If needed, you can deregister an AMI at any time. Any modifications you make to an AMI backed by an instance store volume invalidates its registration. If you make changes to an image, deregister the previous image and register the new image.

        You can't register an image where a secondary (non-root) snapshot has AWS Marketplace product codes.

        ", "RejectVpcPeeringConnection": "

        Rejects a VPC peering connection request. The VPC peering connection must be in the pending-acceptance state. Use the DescribeVpcPeeringConnections request to view your outstanding VPC peering connection requests. To delete an active VPC peering connection, or to delete a VPC peering connection request that you initiated, use DeleteVpcPeeringConnection.

        ", "ReleaseAddress": "

        Releases the specified Elastic IP address.

        After releasing an Elastic IP address, it is released to the IP address pool and might be unavailable to you. Be sure to update your DNS records and any servers or devices that communicate with the address. If you attempt to release an Elastic IP address that you already released, you'll get an AuthFailure error if the address is already allocated to another AWS account.

        [EC2-Classic, default VPC] Releasing an Elastic IP address automatically disassociates it from any instance that it's associated with. To disassociate an Elastic IP address without releasing it, use DisassociateAddress.

        [Nondefault VPC] You must use DisassociateAddress to disassociate the Elastic IP address before you try to release it. Otherwise, Amazon EC2 returns an error (InvalidIPAddress.InUse).

        ", "ReleaseHosts": "

        When you no longer want to use a Dedicated host it can be released. On-Demand billing is stopped and the host goes into released state. The host ID of Dedicated hosts that have been released can no longer be specified in another request, e.g., ModifyHosts. You must stop or terminate all instances on a host before it can be released.

        When Dedicated hosts are released, it make take some time for them to stop counting toward your limit and you may receive capacity errors when trying to allocate new Dedicated hosts. Try waiting a few minutes, and then try again.

        Released hosts will still appear in a DescribeHosts response.

        ", "ReplaceNetworkAclAssociation": "

        Changes which network ACL a subnet is associated with. By default when you create a subnet, it's automatically associated with the default network ACL. For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "ReplaceNetworkAclEntry": "

        Replaces an entry (rule) in a network ACL. For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "ReplaceRoute": "

        Replaces an existing route within a route table in a VPC. You must provide only one of the following: Internet gateway or virtual private gateway, NAT instance, NAT gateway, VPC peering connection, or network interface.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "ReplaceRouteTableAssociation": "

        Changes the route table associated with a given subnet in a VPC. After the operation completes, the subnet uses the routes in the new route table it's associated with. For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        You can also use ReplaceRouteTableAssociation to change which table is the main route table in the VPC. You just specify the main route table's association ID and the route table to be the new main route table.

        ", "ReportInstanceStatus": "

        Submits feedback about the status of an instance. The instance must be in the running state. If your experience with the instance differs from the instance status returned by DescribeInstanceStatus, use ReportInstanceStatus to report your experience with the instance. Amazon EC2 collects this information to improve the accuracy of status checks.

        Use of this action does not change the value returned by DescribeInstanceStatus.

        ", "RequestSpotFleet": "

        Creates a Spot fleet request.

        You can submit a single request that includes multiple launch specifications that vary by instance type, AMI, Availability Zone, or subnet.

        By default, the Spot fleet requests Spot instances in the Spot pool where the price per unit is the lowest. Each launch specification can include its own instance weighting that reflects the value of the instance type to your application workload.

        Alternatively, you can specify that the Spot fleet distribute the target capacity across the Spot pools included in its launch specifications. By ensuring that the Spot instances in your Spot fleet are in different Spot pools, you can improve the availability of your fleet.

        For more information, see Spot Fleet Requests in the Amazon Elastic Compute Cloud User Guide.

        ", "RequestSpotInstances": "

        Creates a Spot instance request. Spot instances are instances that Amazon EC2 launches when the bid price that you specify exceeds the current Spot price. Amazon EC2 periodically sets the Spot price based on available Spot Instance capacity and current Spot instance requests. For more information, see Spot Instance Requests in the Amazon Elastic Compute Cloud User Guide.

        ", "ResetImageAttribute": "

        Resets an attribute of an AMI to its default value.

        The productCodes attribute can't be reset.

        ", "ResetInstanceAttribute": "

        Resets an attribute of an instance to its default value. To reset the kernel or ramdisk, the instance must be in a stopped state. To reset the sourceDestCheck, the instance can be either running or stopped.

        The sourceDestCheck attribute controls whether source/destination checking is enabled. The default value is true, which means checking is enabled. This value must be false for a NAT instance to perform NAT. For more information, see NAT Instances in the Amazon Virtual Private Cloud User Guide.

        ", "ResetNetworkInterfaceAttribute": "

        Resets a network interface attribute. You can specify only one attribute at a time.

        ", "ResetSnapshotAttribute": "

        Resets permission settings for the specified snapshot.

        For more information on modifying snapshot permissions, see Sharing Snapshots in the Amazon Elastic Compute Cloud User Guide.

        ", "RestoreAddressToClassic": "

        Restores an Elastic IP address that was previously moved to the EC2-VPC platform back to the EC2-Classic platform. You cannot move an Elastic IP address that was originally allocated for use in EC2-VPC. The Elastic IP address must not be associated with an instance or network interface.

        ", "RevokeSecurityGroupEgress": "

        [EC2-VPC only] Removes one or more egress rules from a security group for EC2-VPC. This action doesn't apply to security groups for use in EC2-Classic. The values that you specify in the revoke request (for example, ports) must match the existing rule's values for the rule to be revoked.

        Each rule consists of the protocol and the CIDR range or source security group. For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code.

        Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

        ", "RevokeSecurityGroupIngress": "

        Removes one or more ingress rules from a security group. The values that you specify in the revoke request (for example, ports) must match the existing rule's values for the rule to be removed.

        Each rule consists of the protocol and the CIDR range or source security group. For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code.

        Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

        ", "RunInstances": "

        Launches the specified number of instances using an AMI for which you have permissions.

        When you launch an instance, it enters the pending state. After the instance is ready for you, it enters the running state. To check the state of your instance, call DescribeInstances.

        To ensure faster instance launches, break up large requests into smaller batches. For example, create five separate launch requests for 100 instances each instead of one launch request for 500 instances.

        To tag your instance, ensure that it is running as CreateTags requires a resource ID. For more information about tagging, see Tagging Your Amazon EC2 Resources.

        If you don't specify a security group when launching an instance, Amazon EC2 uses the default security group. For more information, see Security Groups in the Amazon Elastic Compute Cloud User Guide.

        [EC2-VPC only accounts] If you don't specify a subnet in the request, we choose a default subnet from your default VPC for you.

        [EC2-Classic accounts] If you're launching into EC2-Classic and you don't specify an Availability Zone, we choose one for you.

        Linux instances have access to the public key of the key pair at boot. You can use this key to provide secure access to the instance. Amazon EC2 public images use this feature to provide secure access without passwords. For more information, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.

        You can provide optional user data when launching an instance. For more information, see Instance Metadata in the Amazon Elastic Compute Cloud User Guide.

        If any of the AMIs have a product code attached for which the user has not subscribed, RunInstances fails.

        Some instance types can only be launched into a VPC. If you do not have a default VPC, or if you do not specify a subnet ID in the request, RunInstances fails. For more information, see Instance Types Available Only in a VPC.

        For more information about troubleshooting, see What To Do If An Instance Immediately Terminates, and Troubleshooting Connecting to Your Instance in the Amazon Elastic Compute Cloud User Guide.

        ", "RunScheduledInstances": "

        Launches the specified Scheduled Instances.

        Before you can launch a Scheduled Instance, you must purchase it and obtain an identifier using PurchaseScheduledInstances.

        You must launch a Scheduled Instance during its scheduled time period. You can't stop or reboot a Scheduled Instance, but you can terminate it as needed. If you terminate a Scheduled Instance before the current scheduled time period ends, you can launch it again after a few minutes. For more information, see Scheduled Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "StartInstances": "

        Starts an Amazon EBS-backed AMI that you've previously stopped.

        Instances that use Amazon EBS volumes as their root devices can be quickly stopped and started. When an instance is stopped, the compute resources are released and you are not billed for hourly instance usage. However, your root partition Amazon EBS volume remains, continues to persist your data, and you are charged for Amazon EBS volume usage. You can restart your instance at any time. Each time you transition an instance from stopped to started, Amazon EC2 charges a full instance hour, even if transitions happen multiple times within a single hour.

        Before stopping an instance, make sure it is in a state from which it can be restarted. Stopping an instance does not preserve data stored in RAM.

        Performing this operation on an instance that uses an instance store as its root device returns an error.

        For more information, see Stopping Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "StopInstances": "

        Stops an Amazon EBS-backed instance.

        We don't charge hourly usage for a stopped instance, or data transfer fees; however, your root partition Amazon EBS volume remains, continues to persist your data, and you are charged for Amazon EBS volume usage. Each time you transition an instance from stopped to started, Amazon EC2 charges a full instance hour, even if transitions happen multiple times within a single hour.

        You can't start or stop Spot instances, and you can't stop instance store-backed instances.

        When you stop an instance, we shut it down. You can restart your instance at any time. Before stopping an instance, make sure it is in a state from which it can be restarted. Stopping an instance does not preserve data stored in RAM.

        Stopping an instance is different to rebooting or terminating it. For example, when you stop an instance, the root device and any other devices attached to the instance persist. When you terminate an instance, the root device and any other devices attached during the instance launch are automatically deleted. For more information about the differences between rebooting, stopping, and terminating instances, see Instance Lifecycle in the Amazon Elastic Compute Cloud User Guide.

        When you stop an instance, we attempt to shut it down forcibly after a short while. If your instance appears stuck in the stopping state after a period of time, there may be an issue with the underlying host computer. For more information, see Troubleshooting Stopping Your Instance in the Amazon Elastic Compute Cloud User Guide.

        ", "TerminateInstances": "

        Shuts down one or more instances. This operation is idempotent; if you terminate an instance more than once, each call succeeds.

        Terminated instances remain visible after termination (for approximately one hour).

        By default, Amazon EC2 deletes all EBS volumes that were attached when the instance launched. Volumes attached after instance launch continue running.

        You can stop, start, and terminate EBS-backed instances. You can only terminate instance store-backed instances. What happens to an instance differs if you stop it or terminate it. For example, when you stop an instance, the root device and any other devices attached to the instance persist. When you terminate an instance, any attached EBS volumes with the DeleteOnTermination block device mapping parameter set to true are automatically deleted. For more information about the differences between stopping and terminating instances, see Instance Lifecycle in the Amazon Elastic Compute Cloud User Guide.

        For more information about troubleshooting, see Troubleshooting Terminating Your Instance in the Amazon Elastic Compute Cloud User Guide.

        ", "UnassignPrivateIpAddresses": "

        Unassigns one or more secondary private IP addresses from a network interface.

        ", "UnmonitorInstances": "

        Disables monitoring for a running instance. For more information about monitoring instances, see Monitoring Your Instances and Volumes in the Amazon Elastic Compute Cloud User Guide.

        " }, "shapes": { "AcceptVpcPeeringConnectionRequest": { "base": "

        Contains the parameters for AcceptVpcPeeringConnection.

        ", "refs": { } }, "AcceptVpcPeeringConnectionResult": { "base": "

        Contains the output of AcceptVpcPeeringConnection.

        ", "refs": { } }, "AccountAttribute": { "base": "

        Describes an account attribute.

        ", "refs": { "AccountAttributeList$member": null } }, "AccountAttributeList": { "base": null, "refs": { "DescribeAccountAttributesResult$AccountAttributes": "

        Information about one or more account attributes.

        " } }, "AccountAttributeName": { "base": null, "refs": { "AccountAttributeNameStringList$member": null } }, "AccountAttributeNameStringList": { "base": null, "refs": { "DescribeAccountAttributesRequest$AttributeNames": "

        One or more account attribute names.

        " } }, "AccountAttributeValue": { "base": "

        Describes a value of an account attribute.

        ", "refs": { "AccountAttributeValueList$member": null } }, "AccountAttributeValueList": { "base": null, "refs": { "AccountAttribute$AttributeValues": "

        One or more values for the account attribute.

        " } }, "ActiveInstance": { "base": "

        Describes a running instance in a Spot fleet.

        ", "refs": { "ActiveInstanceSet$member": null } }, "ActiveInstanceSet": { "base": null, "refs": { "DescribeSpotFleetInstancesResponse$ActiveInstances": "

        The running instances. Note that this list is refreshed periodically and might be out of date.

        " } }, "Address": { "base": "

        Describes an Elastic IP address.

        ", "refs": { "AddressList$member": null } }, "AddressList": { "base": null, "refs": { "DescribeAddressesResult$Addresses": "

        Information about one or more Elastic IP addresses.

        " } }, "Affinity": { "base": null, "refs": { "ModifyInstancePlacementRequest$Affinity": "

        The new affinity setting for the instance.

        " } }, "AllocateAddressRequest": { "base": "

        Contains the parameters for AllocateAddress.

        ", "refs": { } }, "AllocateAddressResult": { "base": "

        Contains the output of AllocateAddress.

        ", "refs": { } }, "AllocateHostsRequest": { "base": "

        Contains the parameters for AllocateHosts.

        ", "refs": { } }, "AllocateHostsResult": { "base": "

        Contains the output of AllocateHosts.

        ", "refs": { } }, "AllocationIdList": { "base": null, "refs": { "DescribeAddressesRequest$AllocationIds": "

        [EC2-VPC] One or more allocation IDs.

        Default: Describes all your Elastic IP addresses.

        " } }, "AllocationState": { "base": null, "refs": { "Host$State": "

        The Dedicated host's state.

        " } }, "AllocationStrategy": { "base": null, "refs": { "SpotFleetRequestConfigData$AllocationStrategy": "

        Indicates how to allocate the target capacity across the Spot pools specified by the Spot fleet request. The default is lowestPrice.

        " } }, "ArchitectureValues": { "base": null, "refs": { "Image$Architecture": "

        The architecture of the image.

        ", "ImportInstanceLaunchSpecification$Architecture": "

        The architecture of the instance.

        ", "Instance$Architecture": "

        The architecture of the image.

        ", "RegisterImageRequest$Architecture": "

        The architecture of the AMI.

        Default: For Amazon EBS-backed AMIs, i386. For instance store-backed AMIs, the architecture specified in the manifest file.

        " } }, "AssignPrivateIpAddressesRequest": { "base": "

        Contains the parameters for AssignPrivateIpAddresses.

        ", "refs": { } }, "AssociateAddressRequest": { "base": "

        Contains the parameters for AssociateAddress.

        ", "refs": { } }, "AssociateAddressResult": { "base": "

        Contains the output of AssociateAddress.

        ", "refs": { } }, "AssociateDhcpOptionsRequest": { "base": "

        Contains the parameters for AssociateDhcpOptions.

        ", "refs": { } }, "AssociateRouteTableRequest": { "base": "

        Contains the parameters for AssociateRouteTable.

        ", "refs": { } }, "AssociateRouteTableResult": { "base": "

        Contains the output of AssociateRouteTable.

        ", "refs": { } }, "AttachClassicLinkVpcRequest": { "base": "

        Contains the parameters for AttachClassicLinkVpc.

        ", "refs": { } }, "AttachClassicLinkVpcResult": { "base": "

        Contains the output of AttachClassicLinkVpc.

        ", "refs": { } }, "AttachInternetGatewayRequest": { "base": "

        Contains the parameters for AttachInternetGateway.

        ", "refs": { } }, "AttachNetworkInterfaceRequest": { "base": "

        Contains the parameters for AttachNetworkInterface.

        ", "refs": { } }, "AttachNetworkInterfaceResult": { "base": "

        Contains the output of AttachNetworkInterface.

        ", "refs": { } }, "AttachVolumeRequest": { "base": "

        Contains the parameters for AttachVolume.

        ", "refs": { } }, "AttachVpnGatewayRequest": { "base": "

        Contains the parameters for AttachVpnGateway.

        ", "refs": { } }, "AttachVpnGatewayResult": { "base": "

        Contains the output of AttachVpnGateway.

        ", "refs": { } }, "AttachmentStatus": { "base": null, "refs": { "EbsInstanceBlockDevice$Status": "

        The attachment state.

        ", "InstanceNetworkInterfaceAttachment$Status": "

        The attachment state.

        ", "InternetGatewayAttachment$State": "

        The current state of the attachment.

        ", "NetworkInterfaceAttachment$Status": "

        The attachment state.

        ", "VpcAttachment$State": "

        The current state of the attachment.

        " } }, "AttributeBooleanValue": { "base": "

        The value to use when a resource attribute accepts a Boolean value.

        ", "refs": { "DescribeNetworkInterfaceAttributeResult$SourceDestCheck": "

        Indicates whether source/destination checking is enabled.

        ", "DescribeVolumeAttributeResult$AutoEnableIO": "

        The state of autoEnableIO attribute.

        ", "DescribeVpcAttributeResult$EnableDnsSupport": "

        Indicates whether DNS resolution is enabled for the VPC. If this attribute is true, the Amazon DNS server resolves DNS hostnames for your instances to their corresponding IP addresses; otherwise, it does not.

        ", "DescribeVpcAttributeResult$EnableDnsHostnames": "

        Indicates whether the instances launched in the VPC get DNS hostnames. If this attribute is true, instances in the VPC get DNS hostnames; otherwise, they do not.

        ", "InstanceAttribute$DisableApiTermination": "

        If the value is true, you can't terminate the instance through the Amazon EC2 console, CLI, or API; otherwise, you can.

        ", "InstanceAttribute$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O.

        ", "InstanceAttribute$SourceDestCheck": "

        Indicates whether source/destination checking is enabled. A value of true means checking is enabled, and false means checking is disabled. This value must be false for a NAT instance to perform NAT.

        ", "ModifyInstanceAttributeRequest$SourceDestCheck": "

        Specifies whether source/destination checking is enabled. A value of true means that checking is enabled, and false means checking is disabled. This value must be false for a NAT instance to perform NAT.

        ", "ModifyInstanceAttributeRequest$DisableApiTermination": "

        If the value is true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. You cannot use this paramater for Spot Instances.

        ", "ModifyInstanceAttributeRequest$EbsOptimized": "

        Specifies whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        ", "ModifyNetworkInterfaceAttributeRequest$SourceDestCheck": "

        Indicates whether source/destination checking is enabled. A value of true means checking is enabled, and false means checking is disabled. This value must be false for a NAT instance to perform NAT. For more information, see NAT Instances in the Amazon Virtual Private Cloud User Guide.

        ", "ModifySubnetAttributeRequest$MapPublicIpOnLaunch": "

        Specify true to indicate that instances launched into the specified subnet should be assigned public IP address.

        ", "ModifyVolumeAttributeRequest$AutoEnableIO": "

        Indicates whether the volume should be auto-enabled for I/O operations.

        ", "ModifyVpcAttributeRequest$EnableDnsSupport": "

        Indicates whether the DNS resolution is supported for the VPC. If enabled, queries to the Amazon provided DNS server at the 169.254.169.253 IP address, or the reserved IP address at the base of the VPC network range \"plus two\" will succeed. If disabled, the Amazon provided DNS service in the VPC that resolves public DNS hostnames to IP addresses is not enabled.

        You cannot modify the DNS resolution and DNS hostnames attributes in the same request. Use separate requests for each attribute.

        ", "ModifyVpcAttributeRequest$EnableDnsHostnames": "

        Indicates whether the instances launched in the VPC get DNS hostnames. If enabled, instances in the VPC get DNS hostnames; otherwise, they do not.

        You cannot modify the DNS resolution and DNS hostnames attributes in the same request. Use separate requests for each attribute. You can only enable DNS hostnames if you've enabled DNS support.

        " } }, "AttributeValue": { "base": "

        The value to use for a resource attribute.

        ", "refs": { "DescribeNetworkInterfaceAttributeResult$Description": "

        The description of the network interface.

        ", "DhcpConfigurationValueList$member": null, "ImageAttribute$KernelId": "

        The kernel ID.

        ", "ImageAttribute$RamdiskId": "

        The RAM disk ID.

        ", "ImageAttribute$Description": "

        A description for the AMI.

        ", "ImageAttribute$SriovNetSupport": null, "InstanceAttribute$InstanceType": "

        The instance type.

        ", "InstanceAttribute$KernelId": "

        The kernel ID.

        ", "InstanceAttribute$RamdiskId": "

        The RAM disk ID.

        ", "InstanceAttribute$UserData": "

        The Base64-encoded MIME user data.

        ", "InstanceAttribute$InstanceInitiatedShutdownBehavior": "

        Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

        ", "InstanceAttribute$RootDeviceName": "

        The name of the root device (for example, /dev/sda1 or /dev/xvda).

        ", "InstanceAttribute$SriovNetSupport": null, "ModifyImageAttributeRequest$Description": "

        A description for the AMI.

        ", "ModifyInstanceAttributeRequest$InstanceType": "

        Changes the instance type to the specified value. For more information, see Instance Types. If the instance type is not valid, the error returned is InvalidInstanceAttributeValue.

        ", "ModifyInstanceAttributeRequest$Kernel": "

        Changes the instance's kernel to the specified value. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB.

        ", "ModifyInstanceAttributeRequest$Ramdisk": "

        Changes the instance's RAM disk to the specified value. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB.

        ", "ModifyInstanceAttributeRequest$InstanceInitiatedShutdownBehavior": "

        Specifies whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

        ", "ModifyInstanceAttributeRequest$SriovNetSupport": "

        Set to simple to enable enhanced networking for the instance.

        There is no way to disable enhanced networking at this time.

        This option is supported only for HVM instances. Specifying this option with a PV instance can make it unreachable.

        ", "ModifyNetworkInterfaceAttributeRequest$Description": "

        A description for the network interface.

        " } }, "AuthorizeSecurityGroupEgressRequest": { "base": "

        Contains the parameters for AuthorizeSecurityGroupEgress.

        ", "refs": { } }, "AuthorizeSecurityGroupIngressRequest": { "base": "

        Contains the parameters for AuthorizeSecurityGroupIngress.

        ", "refs": { } }, "AutoPlacement": { "base": null, "refs": { "AllocateHostsRequest$AutoPlacement": "

        This is enabled by default. This property allows instances to be automatically placed onto available Dedicated hosts, when you are launching instances without specifying a host ID.

        Default: Enabled

        ", "Host$AutoPlacement": "

        Whether auto-placement is on or off.

        ", "ModifyHostsRequest$AutoPlacement": "

        Specify whether to enable or disable auto-placement.

        " } }, "AvailabilityZone": { "base": "

        Describes an Availability Zone.

        ", "refs": { "AvailabilityZoneList$member": null } }, "AvailabilityZoneList": { "base": null, "refs": { "DescribeAvailabilityZonesResult$AvailabilityZones": "

        Information about one or more Availability Zones.

        " } }, "AvailabilityZoneMessage": { "base": "

        Describes a message about an Availability Zone.

        ", "refs": { "AvailabilityZoneMessageList$member": null } }, "AvailabilityZoneMessageList": { "base": null, "refs": { "AvailabilityZone$Messages": "

        Any messages about the Availability Zone.

        " } }, "AvailabilityZoneState": { "base": null, "refs": { "AvailabilityZone$State": "

        The state of the Availability Zone.

        " } }, "AvailableCapacity": { "base": "

        The capacity information for instances launched onto the Dedicated host.

        ", "refs": { "Host$AvailableCapacity": "

        The number of new instances that can be launched onto the Dedicated host.

        " } }, "AvailableInstanceCapacityList": { "base": null, "refs": { "AvailableCapacity$AvailableInstanceCapacity": "

        The total number of instances that the Dedicated host supports.

        " } }, "BatchState": { "base": null, "refs": { "CancelSpotFleetRequestsSuccessItem$CurrentSpotFleetRequestState": "

        The current state of the Spot fleet request.

        ", "CancelSpotFleetRequestsSuccessItem$PreviousSpotFleetRequestState": "

        The previous state of the Spot fleet request.

        ", "SpotFleetRequestConfig$SpotFleetRequestState": "

        The state of the Spot fleet request.

        " } }, "Blob": { "base": null, "refs": { "BlobAttributeValue$Value": null, "ImportKeyPairRequest$PublicKeyMaterial": "

        The public key. For API calls, the text must be base64-encoded. For command line tools, base64 encoding is performed for you.

        ", "S3Storage$UploadPolicy": "

        A base64-encoded Amazon S3 upload policy that gives Amazon EC2 permission to upload items into Amazon S3 on your behalf. For command line tools, base64 encoding is performed for you.

        " } }, "BlobAttributeValue": { "base": null, "refs": { "ModifyInstanceAttributeRequest$UserData": "

        Changes the instance's user data to the specified base64-encoded value. For command line tools, base64 encoding is performed for you.

        " } }, "BlockDeviceMapping": { "base": "

        Describes a block device mapping.

        ", "refs": { "BlockDeviceMappingList$member": null, "BlockDeviceMappingRequestList$member": null } }, "BlockDeviceMappingList": { "base": null, "refs": { "Image$BlockDeviceMappings": "

        Any block device mapping entries.

        ", "ImageAttribute$BlockDeviceMappings": "

        One or more block device mapping entries.

        ", "LaunchSpecification$BlockDeviceMappings": "

        One or more block device mapping entries.

        Although you can specify encrypted EBS volumes in this block device mapping for your Spot Instances, these volumes are not encrypted.

        ", "RequestSpotLaunchSpecification$BlockDeviceMappings": "

        One or more block device mapping entries.

        Although you can specify encrypted EBS volumes in this block device mapping for your Spot Instances, these volumes are not encrypted.

        ", "SpotFleetLaunchSpecification$BlockDeviceMappings": "

        One or more block device mapping entries.

        " } }, "BlockDeviceMappingRequestList": { "base": null, "refs": { "CreateImageRequest$BlockDeviceMappings": "

        Information about one or more block device mappings.

        ", "RegisterImageRequest$BlockDeviceMappings": "

        One or more block device mapping entries.

        ", "RunInstancesRequest$BlockDeviceMappings": "

        The block device mapping.

        " } }, "Boolean": { "base": null, "refs": { "AcceptVpcPeeringConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AllocateAddressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AssignPrivateIpAddressesRequest$AllowReassignment": "

        Indicates whether to allow an IP address that is already assigned to another network interface or instance to be reassigned to the specified network interface.

        ", "AssociateAddressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AssociateAddressRequest$AllowReassociation": "

        [EC2-VPC] For a VPC in an EC2-Classic account, specify true to allow an Elastic IP address that is already associated with an instance or network interface to be reassociated with the specified instance or network interface. Otherwise, the operation fails. In a VPC in an EC2-VPC-only account, reassociation is automatic, therefore you can specify false to ensure the operation fails if the Elastic IP address is already associated with another resource.

        ", "AssociateDhcpOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AssociateRouteTableRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachClassicLinkVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachClassicLinkVpcResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "AttachInternetGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachNetworkInterfaceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachVpnGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttributeBooleanValue$Value": "

        Valid values are true or false.

        ", "AuthorizeSecurityGroupEgressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AuthorizeSecurityGroupIngressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "BundleInstanceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelBundleTaskRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelConversionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelImportTaskRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelSpotFleetRequestsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelSpotFleetRequestsRequest$TerminateInstances": "

        Indicates whether to terminate instances for a Spot fleet request if it is canceled successfully.

        ", "CancelSpotInstanceRequestsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ClassicLinkDnsSupport$ClassicLinkDnsSupported": "

        Indicates whether ClassicLink DNS support is enabled for the VPC.

        ", "ConfirmProductInstanceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ConfirmProductInstanceResult$Return": "

        The return value of the request. Returns true if the specified product code is owned by the requester and associated with the specified instance.

        ", "CopyImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CopyImageRequest$Encrypted": "

        Specifies whether the destination snapshots of the copied image should be encrypted. The default CMK for EBS is used unless a non-default AWS Key Management Service (AWS KMS) CMK is specified with KmsKeyId. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        ", "CopySnapshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CopySnapshotRequest$Encrypted": "

        Specifies whether the destination snapshot should be encrypted. There is no way to create an unencrypted snapshot copy from an encrypted snapshot; however, you can encrypt a copy of an unencrypted snapshot with this flag. The default CMK for EBS is used unless a non-default AWS Key Management Service (AWS KMS) CMK is specified with KmsKeyId. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateCustomerGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateDhcpOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateImageRequest$NoReboot": "

        By default, Amazon EC2 attempts to shut down and reboot the instance before creating the image. If the 'No Reboot' option is set, Amazon EC2 doesn't shut down the instance before creating the image. When this option is used, file system integrity on the created image can't be guaranteed.

        ", "CreateInternetGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateKeyPairRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateNetworkAclEntryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateNetworkAclEntryRequest$Egress": "

        Indicates whether this is an egress rule (rule is applied to traffic leaving the subnet).

        ", "CreateNetworkAclRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateNetworkInterfaceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreatePlacementGroupRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateRouteRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateRouteResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "CreateRouteTableRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateSecurityGroupRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateSnapshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateSpotDatafeedSubscriptionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateSubnetRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateTagsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVolumeRequest$Encrypted": "

        Specifies whether the volume should be encrypted. Encrypted Amazon EBS volumes may only be attached to instances that support Amazon EBS encryption. Volumes that are created from encrypted snapshots are automatically encrypted. There is no way to create an encrypted volume from an unencrypted snapshot or vice versa. If your AMI uses encrypted volumes, you can only launch it on supported instance types. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateVpcEndpointRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVpcPeeringConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVpnConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVpnGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteCustomerGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteDhcpOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteInternetGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteKeyPairRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteNetworkAclEntryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteNetworkAclEntryRequest$Egress": "

        Indicates whether the rule is an egress rule.

        ", "DeleteNetworkAclRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteNetworkInterfaceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeletePlacementGroupRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteRouteRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteRouteTableRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteSecurityGroupRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteSnapshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteSpotDatafeedSubscriptionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteSubnetRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteTagsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpcEndpointsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpcPeeringConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpcPeeringConnectionResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "DeleteVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpnConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpnGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeregisterImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeAccountAttributesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeAddressesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeAvailabilityZonesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeBundleTasksRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeClassicLinkInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeConversionTasksRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeCustomerGatewaysRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeDhcpOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeImageAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeImagesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeImportImageTasksRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeImportSnapshotTasksRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeInstanceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeInstanceStatusRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeInstanceStatusRequest$IncludeAllInstances": "

        When true, includes the health status for all instances. When false, includes the health status for running instances only.

        Default: false

        ", "DescribeInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeInternetGatewaysRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeKeyPairsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeMovingAddressesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeNetworkAclsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeNetworkInterfaceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeNetworkInterfacesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribePlacementGroupsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribePrefixListsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeRegionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeReservedInstancesOfferingsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeReservedInstancesOfferingsRequest$IncludeMarketplace": "

        Include Reserved Instance Marketplace offerings in the response.

        ", "DescribeReservedInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeRouteTablesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeScheduledInstanceAvailabilityRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeScheduledInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSecurityGroupReferencesRequest$DryRun": "

        Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSecurityGroupsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSnapshotAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSnapshotsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotDatafeedSubscriptionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotFleetInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotFleetRequestHistoryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotFleetRequestsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotInstanceRequestsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotPriceHistoryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeStaleSecurityGroupsRequest$DryRun": "

        Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSubnetsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeTagsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVolumeAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVolumeStatusRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVolumesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcClassicLinkRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcEndpointServicesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcEndpointsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcPeeringConnectionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpnConnectionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpnGatewaysRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachClassicLinkVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachClassicLinkVpcResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "DetachInternetGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachNetworkInterfaceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachNetworkInterfaceRequest$Force": "

        Specifies whether to force a detachment.

        ", "DetachVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachVolumeRequest$Force": "

        Forces detachment if the previous detachment attempt did not occur cleanly (for example, logging into an instance, unmounting the volume, and detaching normally). This option can lead to data loss or a corrupted file system. Use this option only as a last resort to detach a volume from a failed instance. The instance won't have an opportunity to flush file system caches or file system metadata. If you use this option, you must perform file system check and repair procedures.

        ", "DetachVpnGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DisableVpcClassicLinkDnsSupportResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "DisableVpcClassicLinkRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DisableVpcClassicLinkResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "DisassociateAddressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DisassociateRouteTableRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "EbsBlockDevice$DeleteOnTermination": "

        Indicates whether the EBS volume is deleted on instance termination.

        ", "EbsBlockDevice$Encrypted": "

        Indicates whether the EBS volume is encrypted. Encrypted Amazon EBS volumes may only be attached to instances that support Amazon EBS encryption.

        ", "EbsInstanceBlockDevice$DeleteOnTermination": "

        Indicates whether the volume is deleted on instance termination.

        ", "EbsInstanceBlockDeviceSpecification$DeleteOnTermination": "

        Indicates whether the volume is deleted on instance termination.

        ", "EnableVolumeIORequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "EnableVpcClassicLinkDnsSupportResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "EnableVpcClassicLinkRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "EnableVpcClassicLinkResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "GetConsoleOutputRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "GetConsoleScreenshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "GetConsoleScreenshotRequest$WakeUp": "

        When set to true, acts as keystroke input and wakes up an instance that's in standby or \"sleep\" mode.

        ", "GetPasswordDataRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "IdFormat$UseLongIds": "

        Indicates whether longer IDs (17-character IDs) are enabled for the resource.

        ", "Image$Public": "

        Indicates whether the image has public launch permissions. The value is true if this image has public launch permissions or false if it has only implicit and explicit launch permissions.

        ", "ImportImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ImportInstanceLaunchSpecification$Monitoring": "

        Indicates whether monitoring is enabled.

        ", "ImportInstanceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ImportKeyPairRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ImportSnapshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ImportVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "Instance$SourceDestCheck": "

        Specifies whether to enable an instance launched in a VPC to perform NAT. This controls whether source/destination checking is enabled on the instance. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the instance to perform NAT. For more information, see NAT Instances in the Amazon Virtual Private Cloud User Guide.

        ", "Instance$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        ", "InstanceNetworkInterface$SourceDestCheck": "

        Indicates whether to validate network traffic to or from this network interface.

        ", "InstanceNetworkInterfaceAttachment$DeleteOnTermination": "

        Indicates whether the network interface is deleted when the instance is terminated.

        ", "InstanceNetworkInterfaceSpecification$DeleteOnTermination": "

        If set to true, the interface is deleted when the instance is terminated. You can specify true only if creating a new network interface when launching an instance.

        ", "InstanceNetworkInterfaceSpecification$AssociatePublicIpAddress": "

        Indicates whether to assign a public IP address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is true.

        ", "InstancePrivateIpAddress$Primary": "

        Indicates whether this IP address is the primary private IP address of the network interface.

        ", "LaunchSpecification$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        Default: false

        ", "ModifyIdFormatRequest$UseLongIds": "

        Indicate whether the resource should use longer IDs (17-character IDs).

        ", "ModifyImageAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifyInstanceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifyInstancePlacementResult$Return": "

        Is true if the request succeeds, and an error otherwise.

        ", "ModifyNetworkInterfaceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifySnapshotAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifySpotFleetRequestResponse$Return": "

        Is true if the request succeeds, and an error otherwise.

        ", "ModifyVolumeAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifyVpcEndpointRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifyVpcEndpointRequest$ResetPolicy": "

        Specify true to reset the policy document to the default policy. The default policy allows access to the service.

        ", "ModifyVpcEndpointResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "ModifyVpcPeeringConnectionOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "MonitorInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "MoveAddressToVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "NetworkAcl$IsDefault": "

        Indicates whether this is the default network ACL for the VPC.

        ", "NetworkAclEntry$Egress": "

        Indicates whether the rule is an egress rule (applied to traffic leaving the subnet).

        ", "NetworkInterface$RequesterManaged": "

        Indicates whether the network interface is being managed by AWS.

        ", "NetworkInterface$SourceDestCheck": "

        Indicates whether traffic to or from the instance is validated.

        ", "NetworkInterfaceAttachment$DeleteOnTermination": "

        Indicates whether the network interface is deleted when the instance is terminated.

        ", "NetworkInterfaceAttachmentChanges$DeleteOnTermination": "

        Indicates whether the network interface is deleted when the instance is terminated.

        ", "NetworkInterfacePrivateIpAddress$Primary": "

        Indicates whether this IP address is the primary private IP address of the network interface.

        ", "PeeringConnectionOptions$AllowEgressFromLocalClassicLinkToRemoteVpc": "

        If true, enables outbound communication from an EC2-Classic instance that's linked to a local VPC via ClassicLink to instances in a peer VPC.

        ", "PeeringConnectionOptions$AllowEgressFromLocalVpcToRemoteClassicLink": "

        If true, enables outbound communication from instances in a local VPC to an EC2-Classic instance that's linked to a peer VPC via ClassicLink.

        ", "PeeringConnectionOptionsRequest$AllowEgressFromLocalClassicLinkToRemoteVpc": "

        If true, enables outbound communication from an EC2-Classic instance that's linked to a local VPC via ClassicLink to instances in a peer VPC.

        ", "PeeringConnectionOptionsRequest$AllowEgressFromLocalVpcToRemoteClassicLink": "

        If true, enables outbound communication from instances in a local VPC to an EC2-Classic instance that's linked to a peer VPC via ClassicLink.

        ", "PriceSchedule$Active": "

        The current price schedule, as determined by the term remaining for the Reserved Instance in the listing.

        A specific price schedule is always in effect, but only one price schedule can be active at any time. Take, for example, a Reserved Instance listing that has five months remaining in its term. When you specify price schedules for five months and two months, this means that schedule 1, covering the first three months of the remaining term, will be active during months 5, 4, and 3. Then schedule 2, covering the last two months of the term, will be active for months 2 and 1.

        ", "PrivateIpAddressSpecification$Primary": "

        Indicates whether the private IP address is the primary private IP address. Only one IP address can be designated as primary.

        ", "PurchaseReservedInstancesOfferingRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "PurchaseScheduledInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RebootInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RegisterImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RejectVpcPeeringConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RejectVpcPeeringConnectionResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "ReleaseAddressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReplaceNetworkAclAssociationRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReplaceNetworkAclEntryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReplaceNetworkAclEntryRequest$Egress": "

        Indicates whether to replace the egress rule.

        Default: If no value is specified, we replace the ingress rule.

        ", "ReplaceRouteRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReplaceRouteTableAssociationRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReportInstanceStatusRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RequestSpotFleetRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RequestSpotInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RequestSpotLaunchSpecification$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        Default: false

        ", "ReservedInstancesOffering$Marketplace": "

        Indicates whether the offering is available through the Reserved Instance Marketplace (resale) or AWS. If it's a Reserved Instance Marketplace offering, this is true.

        ", "ResetImageAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ResetInstanceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ResetNetworkInterfaceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ResetSnapshotAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RestoreAddressToClassicRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RevokeSecurityGroupEgressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RevokeSecurityGroupIngressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RouteTableAssociation$Main": "

        Indicates whether this is the main route table.

        ", "RunInstancesMonitoringEnabled$Enabled": "

        Indicates whether monitoring is enabled for the instance.

        ", "RunInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RunInstancesRequest$DisableApiTermination": "

        If you set this parameter to true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. If you set this parameter to true and then later want to be able to terminate the instance, you must first change the value of the disableApiTermination attribute to false using ModifyInstanceAttribute. Alternatively, if you set InstanceInitiatedShutdownBehavior to terminate, you can terminate the instance by running the shutdown command from the instance.

        Default: false

        ", "RunInstancesRequest$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.

        Default: false

        ", "RunScheduledInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ScheduledInstanceRecurrence$OccurrenceRelativeToEnd": "

        Indicates whether the occurrence is relative to the end of the specified week or month.

        ", "ScheduledInstanceRecurrenceRequest$OccurrenceRelativeToEnd": "

        Indicates whether the occurrence is relative to the end of the specified week or month. You can't specify this value with a daily schedule.

        ", "ScheduledInstancesEbs$DeleteOnTermination": "

        Indicates whether the volume is deleted on instance termination.

        ", "ScheduledInstancesEbs$Encrypted": "

        Indicates whether the volume is encrypted. You can attached encrypted volumes only to instances that support them.

        ", "ScheduledInstancesLaunchSpecification$EbsOptimized": "

        Indicates whether the instances are optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.

        Default: false

        ", "ScheduledInstancesMonitoring$Enabled": "

        Indicates whether monitoring is enabled.

        ", "ScheduledInstancesNetworkInterface$AssociatePublicIpAddress": "

        Indicates whether to assign a public IP address to instances launched in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is true.

        ", "ScheduledInstancesNetworkInterface$DeleteOnTermination": "

        Indicates whether to delete the interface when the instance is terminated.

        ", "ScheduledInstancesPrivateIpAddressConfig$Primary": "

        Indicates whether this is a primary IP address. Otherwise, this is a secondary IP address.

        ", "Snapshot$Encrypted": "

        Indicates whether the snapshot is encrypted.

        ", "SpotFleetLaunchSpecification$EbsOptimized": "

        Indicates whether the instances are optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        Default: false

        ", "SpotFleetMonitoring$Enabled": "

        Enables monitoring for the instance.

        Default: false

        ", "SpotFleetRequestConfigData$TerminateInstancesWithExpiration": "

        Indicates whether running Spot instances should be terminated when the Spot fleet request expires.

        ", "StartInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "StopInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "StopInstancesRequest$Force": "

        Forces the instances to stop. The instances do not have an opportunity to flush file system caches or file system metadata. If you use this option, you must perform file system check and repair procedures. This option is not recommended for Windows instances.

        Default: false

        ", "Subnet$DefaultForAz": "

        Indicates whether this is the default subnet for the Availability Zone.

        ", "Subnet$MapPublicIpOnLaunch": "

        Indicates whether instances launched in this subnet receive a public IP address.

        ", "TerminateInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "UnmonitorInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "Volume$Encrypted": "

        Indicates whether the volume will be encrypted.

        ", "VolumeAttachment$DeleteOnTermination": "

        Indicates whether the EBS volume is deleted on instance termination.

        ", "Vpc$IsDefault": "

        Indicates whether the VPC is the default VPC.

        ", "VpcClassicLink$ClassicLinkEnabled": "

        Indicates whether the VPC is enabled for ClassicLink.

        ", "VpcPeeringConnectionOptionsDescription$AllowEgressFromLocalClassicLinkToRemoteVpc": "

        Indicates whether a local ClassicLink connection can communicate with the peer VPC over the VPC peering connection.

        ", "VpcPeeringConnectionOptionsDescription$AllowEgressFromLocalVpcToRemoteClassicLink": "

        Indicates whether a local VPC can communicate with a ClassicLink connection in the peer VPC over the VPC peering connection.

        ", "VpnConnectionOptions$StaticRoutesOnly": "

        Indicates whether the VPN connection uses static routes only. Static routes must be used for devices that don't support BGP.

        ", "VpnConnectionOptionsSpecification$StaticRoutesOnly": "

        Indicates whether the VPN connection uses static routes only. Static routes must be used for devices that don't support BGP.

        " } }, "BundleIdStringList": { "base": null, "refs": { "DescribeBundleTasksRequest$BundleIds": "

        One or more bundle task IDs.

        Default: Describes all your bundle tasks.

        " } }, "BundleInstanceRequest": { "base": "

        Contains the parameters for BundleInstance.

        ", "refs": { } }, "BundleInstanceResult": { "base": "

        Contains the output of BundleInstance.

        ", "refs": { } }, "BundleTask": { "base": "

        Describes a bundle task.

        ", "refs": { "BundleInstanceResult$BundleTask": "

        Information about the bundle task.

        ", "BundleTaskList$member": null, "CancelBundleTaskResult$BundleTask": "

        Information about the bundle task.

        " } }, "BundleTaskError": { "base": "

        Describes an error for BundleInstance.

        ", "refs": { "BundleTask$BundleTaskError": "

        If the task fails, a description of the error.

        " } }, "BundleTaskList": { "base": null, "refs": { "DescribeBundleTasksResult$BundleTasks": "

        Information about one or more bundle tasks.

        " } }, "BundleTaskState": { "base": null, "refs": { "BundleTask$State": "

        The state of the task.

        " } }, "CancelBatchErrorCode": { "base": null, "refs": { "CancelSpotFleetRequestsError$Code": "

        The error code.

        " } }, "CancelBundleTaskRequest": { "base": "

        Contains the parameters for CancelBundleTask.

        ", "refs": { } }, "CancelBundleTaskResult": { "base": "

        Contains the output of CancelBundleTask.

        ", "refs": { } }, "CancelConversionRequest": { "base": "

        Contains the parameters for CancelConversionTask.

        ", "refs": { } }, "CancelExportTaskRequest": { "base": "

        Contains the parameters for CancelExportTask.

        ", "refs": { } }, "CancelImportTaskRequest": { "base": "

        Contains the parameters for CancelImportTask.

        ", "refs": { } }, "CancelImportTaskResult": { "base": "

        Contains the output for CancelImportTask.

        ", "refs": { } }, "CancelReservedInstancesListingRequest": { "base": "

        Contains the parameters for CancelReservedInstancesListing.

        ", "refs": { } }, "CancelReservedInstancesListingResult": { "base": "

        Contains the output of CancelReservedInstancesListing.

        ", "refs": { } }, "CancelSpotFleetRequestsError": { "base": "

        Describes a Spot fleet error.

        ", "refs": { "CancelSpotFleetRequestsErrorItem$Error": "

        The error.

        " } }, "CancelSpotFleetRequestsErrorItem": { "base": "

        Describes a Spot fleet request that was not successfully canceled.

        ", "refs": { "CancelSpotFleetRequestsErrorSet$member": null } }, "CancelSpotFleetRequestsErrorSet": { "base": null, "refs": { "CancelSpotFleetRequestsResponse$UnsuccessfulFleetRequests": "

        Information about the Spot fleet requests that are not successfully canceled.

        " } }, "CancelSpotFleetRequestsRequest": { "base": "

        Contains the parameters for CancelSpotFleetRequests.

        ", "refs": { } }, "CancelSpotFleetRequestsResponse": { "base": "

        Contains the output of CancelSpotFleetRequests.

        ", "refs": { } }, "CancelSpotFleetRequestsSuccessItem": { "base": "

        Describes a Spot fleet request that was successfully canceled.

        ", "refs": { "CancelSpotFleetRequestsSuccessSet$member": null } }, "CancelSpotFleetRequestsSuccessSet": { "base": null, "refs": { "CancelSpotFleetRequestsResponse$SuccessfulFleetRequests": "

        Information about the Spot fleet requests that are successfully canceled.

        " } }, "CancelSpotInstanceRequestState": { "base": null, "refs": { "CancelledSpotInstanceRequest$State": "

        The state of the Spot instance request.

        " } }, "CancelSpotInstanceRequestsRequest": { "base": "

        Contains the parameters for CancelSpotInstanceRequests.

        ", "refs": { } }, "CancelSpotInstanceRequestsResult": { "base": "

        Contains the output of CancelSpotInstanceRequests.

        ", "refs": { } }, "CancelledSpotInstanceRequest": { "base": "

        Describes a request to cancel a Spot instance.

        ", "refs": { "CancelledSpotInstanceRequestList$member": null } }, "CancelledSpotInstanceRequestList": { "base": null, "refs": { "CancelSpotInstanceRequestsResult$CancelledSpotInstanceRequests": "

        One or more Spot instance requests.

        " } }, "ClassicLinkDnsSupport": { "base": "

        Describes the ClassicLink DNS support status of a VPC.

        ", "refs": { "ClassicLinkDnsSupportList$member": null } }, "ClassicLinkDnsSupportList": { "base": null, "refs": { "DescribeVpcClassicLinkDnsSupportResult$Vpcs": "

        Information about the ClassicLink DNS support status of the VPCs.

        " } }, "ClassicLinkInstance": { "base": "

        Describes a linked EC2-Classic instance.

        ", "refs": { "ClassicLinkInstanceList$member": null } }, "ClassicLinkInstanceList": { "base": null, "refs": { "DescribeClassicLinkInstancesResult$Instances": "

        Information about one or more linked EC2-Classic instances.

        " } }, "ClientData": { "base": "

        Describes the client-specific data.

        ", "refs": { "ImportImageRequest$ClientData": "

        The client-specific data.

        ", "ImportSnapshotRequest$ClientData": "

        The client-specific data.

        " } }, "ConfirmProductInstanceRequest": { "base": "

        Contains the parameters for ConfirmProductInstance.

        ", "refs": { } }, "ConfirmProductInstanceResult": { "base": "

        Contains the output of ConfirmProductInstance.

        ", "refs": { } }, "ContainerFormat": { "base": null, "refs": { "ExportToS3Task$ContainerFormat": "

        The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is exported.

        ", "ExportToS3TaskSpecification$ContainerFormat": "

        The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is exported.

        " } }, "ConversionIdStringList": { "base": null, "refs": { "DescribeConversionTasksRequest$ConversionTaskIds": "

        One or more conversion task IDs.

        " } }, "ConversionTask": { "base": "

        Describes a conversion task.

        ", "refs": { "DescribeConversionTaskList$member": null, "ImportInstanceResult$ConversionTask": "

        Information about the conversion task.

        ", "ImportVolumeResult$ConversionTask": "

        Information about the conversion task.

        " } }, "ConversionTaskState": { "base": null, "refs": { "ConversionTask$State": "

        The state of the conversion task.

        " } }, "CopyImageRequest": { "base": "

        Contains the parameters for CopyImage.

        ", "refs": { } }, "CopyImageResult": { "base": "

        Contains the output of CopyImage.

        ", "refs": { } }, "CopySnapshotRequest": { "base": "

        Contains the parameters for CopySnapshot.

        ", "refs": { } }, "CopySnapshotResult": { "base": "

        Contains the output of CopySnapshot.

        ", "refs": { } }, "CreateCustomerGatewayRequest": { "base": "

        Contains the parameters for CreateCustomerGateway.

        ", "refs": { } }, "CreateCustomerGatewayResult": { "base": "

        Contains the output of CreateCustomerGateway.

        ", "refs": { } }, "CreateDhcpOptionsRequest": { "base": "

        Contains the parameters for CreateDhcpOptions.

        ", "refs": { } }, "CreateDhcpOptionsResult": { "base": "

        Contains the output of CreateDhcpOptions.

        ", "refs": { } }, "CreateFlowLogsRequest": { "base": "

        Contains the parameters for CreateFlowLogs.

        ", "refs": { } }, "CreateFlowLogsResult": { "base": "

        Contains the output of CreateFlowLogs.

        ", "refs": { } }, "CreateImageRequest": { "base": "

        Contains the parameters for CreateImage.

        ", "refs": { } }, "CreateImageResult": { "base": "

        Contains the output of CreateImage.

        ", "refs": { } }, "CreateInstanceExportTaskRequest": { "base": "

        Contains the parameters for CreateInstanceExportTask.

        ", "refs": { } }, "CreateInstanceExportTaskResult": { "base": "

        Contains the output for CreateInstanceExportTask.

        ", "refs": { } }, "CreateInternetGatewayRequest": { "base": "

        Contains the parameters for CreateInternetGateway.

        ", "refs": { } }, "CreateInternetGatewayResult": { "base": "

        Contains the output of CreateInternetGateway.

        ", "refs": { } }, "CreateKeyPairRequest": { "base": "

        Contains the parameters for CreateKeyPair.

        ", "refs": { } }, "CreateNatGatewayRequest": { "base": "

        Contains the parameters for CreateNatGateway.

        ", "refs": { } }, "CreateNatGatewayResult": { "base": "

        Contains the output of CreateNatGateway.

        ", "refs": { } }, "CreateNetworkAclEntryRequest": { "base": "

        Contains the parameters for CreateNetworkAclEntry.

        ", "refs": { } }, "CreateNetworkAclRequest": { "base": "

        Contains the parameters for CreateNetworkAcl.

        ", "refs": { } }, "CreateNetworkAclResult": { "base": "

        Contains the output of CreateNetworkAcl.

        ", "refs": { } }, "CreateNetworkInterfaceRequest": { "base": "

        Contains the parameters for CreateNetworkInterface.

        ", "refs": { } }, "CreateNetworkInterfaceResult": { "base": "

        Contains the output of CreateNetworkInterface.

        ", "refs": { } }, "CreatePlacementGroupRequest": { "base": "

        Contains the parameters for CreatePlacementGroup.

        ", "refs": { } }, "CreateReservedInstancesListingRequest": { "base": "

        Contains the parameters for CreateReservedInstancesListing.

        ", "refs": { } }, "CreateReservedInstancesListingResult": { "base": "

        Contains the output of CreateReservedInstancesListing.

        ", "refs": { } }, "CreateRouteRequest": { "base": "

        Contains the parameters for CreateRoute.

        ", "refs": { } }, "CreateRouteResult": { "base": "

        Contains the output of CreateRoute.

        ", "refs": { } }, "CreateRouteTableRequest": { "base": "

        Contains the parameters for CreateRouteTable.

        ", "refs": { } }, "CreateRouteTableResult": { "base": "

        Contains the output of CreateRouteTable.

        ", "refs": { } }, "CreateSecurityGroupRequest": { "base": "

        Contains the parameters for CreateSecurityGroup.

        ", "refs": { } }, "CreateSecurityGroupResult": { "base": "

        Contains the output of CreateSecurityGroup.

        ", "refs": { } }, "CreateSnapshotRequest": { "base": "

        Contains the parameters for CreateSnapshot.

        ", "refs": { } }, "CreateSpotDatafeedSubscriptionRequest": { "base": "

        Contains the parameters for CreateSpotDatafeedSubscription.

        ", "refs": { } }, "CreateSpotDatafeedSubscriptionResult": { "base": "

        Contains the output of CreateSpotDatafeedSubscription.

        ", "refs": { } }, "CreateSubnetRequest": { "base": "

        Contains the parameters for CreateSubnet.

        ", "refs": { } }, "CreateSubnetResult": { "base": "

        Contains the output of CreateSubnet.

        ", "refs": { } }, "CreateTagsRequest": { "base": "

        Contains the parameters for CreateTags.

        ", "refs": { } }, "CreateVolumePermission": { "base": "

        Describes the user or group to be added or removed from the permissions for a volume.

        ", "refs": { "CreateVolumePermissionList$member": null } }, "CreateVolumePermissionList": { "base": null, "refs": { "CreateVolumePermissionModifications$Add": "

        Adds a specific AWS account ID or group to a volume's list of create volume permissions.

        ", "CreateVolumePermissionModifications$Remove": "

        Removes a specific AWS account ID or group from a volume's list of create volume permissions.

        ", "DescribeSnapshotAttributeResult$CreateVolumePermissions": "

        A list of permissions for creating volumes from the snapshot.

        " } }, "CreateVolumePermissionModifications": { "base": "

        Describes modifications to the permissions for a volume.

        ", "refs": { "ModifySnapshotAttributeRequest$CreateVolumePermission": "

        A JSON representation of the snapshot attribute modification.

        " } }, "CreateVolumeRequest": { "base": "

        Contains the parameters for CreateVolume.

        ", "refs": { } }, "CreateVpcEndpointRequest": { "base": "

        Contains the parameters for CreateVpcEndpoint.

        ", "refs": { } }, "CreateVpcEndpointResult": { "base": "

        Contains the output of CreateVpcEndpoint.

        ", "refs": { } }, "CreateVpcPeeringConnectionRequest": { "base": "

        Contains the parameters for CreateVpcPeeringConnection.

        ", "refs": { } }, "CreateVpcPeeringConnectionResult": { "base": "

        Contains the output of CreateVpcPeeringConnection.

        ", "refs": { } }, "CreateVpcRequest": { "base": "

        Contains the parameters for CreateVpc.

        ", "refs": { } }, "CreateVpcResult": { "base": "

        Contains the output of CreateVpc.

        ", "refs": { } }, "CreateVpnConnectionRequest": { "base": "

        Contains the parameters for CreateVpnConnection.

        ", "refs": { } }, "CreateVpnConnectionResult": { "base": "

        Contains the output of CreateVpnConnection.

        ", "refs": { } }, "CreateVpnConnectionRouteRequest": { "base": "

        Contains the parameters for CreateVpnConnectionRoute.

        ", "refs": { } }, "CreateVpnGatewayRequest": { "base": "

        Contains the parameters for CreateVpnGateway.

        ", "refs": { } }, "CreateVpnGatewayResult": { "base": "

        Contains the output of CreateVpnGateway.

        ", "refs": { } }, "CurrencyCodeValues": { "base": null, "refs": { "PriceSchedule$CurrencyCode": "

        The currency for transacting the Reserved Instance resale. At this time, the only supported currency is USD.

        ", "PriceScheduleSpecification$CurrencyCode": "

        The currency for transacting the Reserved Instance resale. At this time, the only supported currency is USD.

        ", "ReservedInstanceLimitPrice$CurrencyCode": "

        The currency in which the limitPrice amount is specified. At this time, the only supported currency is USD.

        ", "ReservedInstances$CurrencyCode": "

        The currency of the Reserved Instance. It's specified using ISO 4217 standard currency codes. At this time, the only supported currency is USD.

        ", "ReservedInstancesOffering$CurrencyCode": "

        The currency of the Reserved Instance offering you are purchasing. It's specified using ISO 4217 standard currency codes. At this time, the only supported currency is USD.

        " } }, "CustomerGateway": { "base": "

        Describes a customer gateway.

        ", "refs": { "CreateCustomerGatewayResult$CustomerGateway": "

        Information about the customer gateway.

        ", "CustomerGatewayList$member": null } }, "CustomerGatewayIdStringList": { "base": null, "refs": { "DescribeCustomerGatewaysRequest$CustomerGatewayIds": "

        One or more customer gateway IDs.

        Default: Describes all your customer gateways.

        " } }, "CustomerGatewayList": { "base": null, "refs": { "DescribeCustomerGatewaysResult$CustomerGateways": "

        Information about one or more customer gateways.

        " } }, "DatafeedSubscriptionState": { "base": null, "refs": { "SpotDatafeedSubscription$State": "

        The state of the Spot instance data feed subscription.

        " } }, "DateTime": { "base": null, "refs": { "BundleTask$StartTime": "

        The time this task started.

        ", "BundleTask$UpdateTime": "

        The time of the most recent update for the task.

        ", "ClientData$UploadStart": "

        The time that the disk upload starts.

        ", "ClientData$UploadEnd": "

        The time that the disk upload ends.

        ", "DescribeSpotFleetRequestHistoryRequest$StartTime": "

        The starting date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "DescribeSpotFleetRequestHistoryResponse$StartTime": "

        The starting date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "DescribeSpotFleetRequestHistoryResponse$LastEvaluatedTime": "

        The last date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). All records up to this time were retrieved.

        If nextToken indicates that there are more results, this value is not present.

        ", "DescribeSpotPriceHistoryRequest$StartTime": "

        The date and time, up to the past 90 days, from which to start retrieving the price history data, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "DescribeSpotPriceHistoryRequest$EndTime": "

        The date and time, up to the current date, from which to stop retrieving the price history data, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "EbsInstanceBlockDevice$AttachTime": "

        The time stamp when the attachment initiated.

        ", "FlowLog$CreationTime": "

        The date and time the flow log was created.

        ", "GetConsoleOutputResult$Timestamp": "

        The time the output was last updated.

        ", "GetPasswordDataResult$Timestamp": "

        The time the data was last updated.

        ", "HistoryRecord$Timestamp": "

        The date and time of the event, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "IdFormat$Deadline": "

        The date in UTC at which you are permanently switched over to using longer IDs. If a deadline is not yet available for this resource type, this field is not returned.

        ", "Instance$LaunchTime": "

        The time the instance was launched.

        ", "InstanceNetworkInterfaceAttachment$AttachTime": "

        The time stamp when the attachment initiated.

        ", "InstanceStatusDetails$ImpairedSince": "

        The time when a status check failed. For an instance that was launched and impaired, this is the time when the instance was launched.

        ", "InstanceStatusEvent$NotBefore": "

        The earliest scheduled start time for the event.

        ", "InstanceStatusEvent$NotAfter": "

        The latest scheduled end time for the event.

        ", "NatGateway$CreateTime": "

        The date and time the NAT gateway was created.

        ", "NatGateway$DeleteTime": "

        The date and time the NAT gateway was deleted, if applicable.

        ", "NetworkInterfaceAttachment$AttachTime": "

        The timestamp indicating when the attachment initiated.

        ", "ProvisionedBandwidth$RequestTime": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        ", "ProvisionedBandwidth$ProvisionTime": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        ", "ReportInstanceStatusRequest$StartTime": "

        The time at which the reported instance health state began.

        ", "ReportInstanceStatusRequest$EndTime": "

        The time at which the reported instance health state ended.

        ", "RequestSpotInstancesRequest$ValidFrom": "

        The start date of the request. If this is a one-time request, the request becomes active at this date and time and remains active until all instances launch, the request expires, or the request is canceled. If the request is persistent, the request becomes active at this date and time and remains active until it expires or is canceled.

        Default: The request is effective indefinitely.

        ", "RequestSpotInstancesRequest$ValidUntil": "

        The end date of the request. If this is a one-time request, the request remains active until all instances launch, the request is canceled, or this date is reached. If the request is persistent, it remains active until it is canceled or this date and time is reached.

        Default: The request is effective indefinitely.

        ", "ReservedInstances$Start": "

        The date and time the Reserved Instance started.

        ", "ReservedInstances$End": "

        The time when the Reserved Instance expires.

        ", "ReservedInstancesListing$CreateDate": "

        The time the listing was created.

        ", "ReservedInstancesListing$UpdateDate": "

        The last modified timestamp of the listing.

        ", "ReservedInstancesModification$CreateDate": "

        The time when the modification request was created.

        ", "ReservedInstancesModification$UpdateDate": "

        The time when the modification request was last updated.

        ", "ReservedInstancesModification$EffectiveDate": "

        The time for the modification to become effective.

        ", "ScheduledInstance$PreviousSlotEndTime": "

        The time that the previous schedule ended or will end.

        ", "ScheduledInstance$NextSlotStartTime": "

        The time for the next schedule to start.

        ", "ScheduledInstance$TermStartDate": "

        The start date for the Scheduled Instance.

        ", "ScheduledInstance$TermEndDate": "

        The end date for the Scheduled Instance.

        ", "ScheduledInstance$CreateDate": "

        The date when the Scheduled Instance was purchased.

        ", "ScheduledInstanceAvailability$FirstSlotStartTime": "

        The time period for the first schedule to start.

        ", "SlotDateTimeRangeRequest$EarliestTime": "

        The earliest date and time, in UTC, for the Scheduled Instance to start.

        ", "SlotDateTimeRangeRequest$LatestTime": "

        The latest date and time, in UTC, for the Scheduled Instance to start. This value must be later than or equal to the earliest date and at most three months in the future.

        ", "SlotStartTimeRangeRequest$EarliestTime": "

        The earliest date and time, in UTC, for the Scheduled Instance to start.

        ", "SlotStartTimeRangeRequest$LatestTime": "

        The latest date and time, in UTC, for the Scheduled Instance to start.

        ", "Snapshot$StartTime": "

        The time stamp when the snapshot was initiated.

        ", "SpotFleetRequestConfig$CreateTime": "

        The creation date and time of the request.

        ", "SpotFleetRequestConfigData$ValidFrom": "

        The start date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.

        ", "SpotFleetRequestConfigData$ValidUntil": "

        The end date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request.

        ", "SpotInstanceRequest$ValidFrom": "

        The start date of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). The request becomes active at this date and time.

        ", "SpotInstanceRequest$ValidUntil": "

        The end date of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). If this is a one-time request, it remains active until all instances launch, the request is canceled, or this date is reached. If the request is persistent, it remains active until it is canceled or this date is reached.

        ", "SpotInstanceRequest$CreateTime": "

        The date and time when the Spot instance request was created, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "SpotInstanceStatus$UpdateTime": "

        The date and time of the most recent status update, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "SpotPrice$Timestamp": "

        The date and time the request was created, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "VgwTelemetry$LastStatusChange": "

        The date and time of the last change in status.

        ", "Volume$CreateTime": "

        The time stamp when volume creation was initiated.

        ", "VolumeAttachment$AttachTime": "

        The time stamp when the attachment initiated.

        ", "VolumeStatusEvent$NotBefore": "

        The earliest start time of the event.

        ", "VolumeStatusEvent$NotAfter": "

        The latest end time of the event.

        ", "VpcEndpoint$CreationTimestamp": "

        The date and time the VPC endpoint was created.

        ", "VpcPeeringConnection$ExpirationTime": "

        The time that an unaccepted VPC peering connection will expire.

        " } }, "DeleteCustomerGatewayRequest": { "base": "

        Contains the parameters for DeleteCustomerGateway.

        ", "refs": { } }, "DeleteDhcpOptionsRequest": { "base": "

        Contains the parameters for DeleteDhcpOptions.

        ", "refs": { } }, "DeleteFlowLogsRequest": { "base": "

        Contains the parameters for DeleteFlowLogs.

        ", "refs": { } }, "DeleteFlowLogsResult": { "base": "

        Contains the output of DeleteFlowLogs.

        ", "refs": { } }, "DeleteInternetGatewayRequest": { "base": "

        Contains the parameters for DeleteInternetGateway.

        ", "refs": { } }, "DeleteKeyPairRequest": { "base": "

        Contains the parameters for DeleteKeyPair.

        ", "refs": { } }, "DeleteNatGatewayRequest": { "base": "

        Contains the parameters for DeleteNatGateway.

        ", "refs": { } }, "DeleteNatGatewayResult": { "base": "

        Contains the output of DeleteNatGateway.

        ", "refs": { } }, "DeleteNetworkAclEntryRequest": { "base": "

        Contains the parameters for DeleteNetworkAclEntry.

        ", "refs": { } }, "DeleteNetworkAclRequest": { "base": "

        Contains the parameters for DeleteNetworkAcl.

        ", "refs": { } }, "DeleteNetworkInterfaceRequest": { "base": "

        Contains the parameters for DeleteNetworkInterface.

        ", "refs": { } }, "DeletePlacementGroupRequest": { "base": "

        Contains the parameters for DeletePlacementGroup.

        ", "refs": { } }, "DeleteRouteRequest": { "base": "

        Contains the parameters for DeleteRoute.

        ", "refs": { } }, "DeleteRouteTableRequest": { "base": "

        Contains the parameters for DeleteRouteTable.

        ", "refs": { } }, "DeleteSecurityGroupRequest": { "base": "

        Contains the parameters for DeleteSecurityGroup.

        ", "refs": { } }, "DeleteSnapshotRequest": { "base": "

        Contains the parameters for DeleteSnapshot.

        ", "refs": { } }, "DeleteSpotDatafeedSubscriptionRequest": { "base": "

        Contains the parameters for DeleteSpotDatafeedSubscription.

        ", "refs": { } }, "DeleteSubnetRequest": { "base": "

        Contains the parameters for DeleteSubnet.

        ", "refs": { } }, "DeleteTagsRequest": { "base": "

        Contains the parameters for DeleteTags.

        ", "refs": { } }, "DeleteVolumeRequest": { "base": "

        Contains the parameters for DeleteVolume.

        ", "refs": { } }, "DeleteVpcEndpointsRequest": { "base": "

        Contains the parameters for DeleteVpcEndpoints.

        ", "refs": { } }, "DeleteVpcEndpointsResult": { "base": "

        Contains the output of DeleteVpcEndpoints.

        ", "refs": { } }, "DeleteVpcPeeringConnectionRequest": { "base": "

        Contains the parameters for DeleteVpcPeeringConnection.

        ", "refs": { } }, "DeleteVpcPeeringConnectionResult": { "base": "

        Contains the output of DeleteVpcPeeringConnection.

        ", "refs": { } }, "DeleteVpcRequest": { "base": "

        Contains the parameters for DeleteVpc.

        ", "refs": { } }, "DeleteVpnConnectionRequest": { "base": "

        Contains the parameters for DeleteVpnConnection.

        ", "refs": { } }, "DeleteVpnConnectionRouteRequest": { "base": "

        Contains the parameters for DeleteVpnConnectionRoute.

        ", "refs": { } }, "DeleteVpnGatewayRequest": { "base": "

        Contains the parameters for DeleteVpnGateway.

        ", "refs": { } }, "DeregisterImageRequest": { "base": "

        Contains the parameters for DeregisterImage.

        ", "refs": { } }, "DescribeAccountAttributesRequest": { "base": "

        Contains the parameters for DescribeAccountAttributes.

        ", "refs": { } }, "DescribeAccountAttributesResult": { "base": "

        Contains the output of DescribeAccountAttributes.

        ", "refs": { } }, "DescribeAddressesRequest": { "base": "

        Contains the parameters for DescribeAddresses.

        ", "refs": { } }, "DescribeAddressesResult": { "base": "

        Contains the output of DescribeAddresses.

        ", "refs": { } }, "DescribeAvailabilityZonesRequest": { "base": "

        Contains the parameters for DescribeAvailabilityZones.

        ", "refs": { } }, "DescribeAvailabilityZonesResult": { "base": "

        Contains the output of DescribeAvailabiltyZones.

        ", "refs": { } }, "DescribeBundleTasksRequest": { "base": "

        Contains the parameters for DescribeBundleTasks.

        ", "refs": { } }, "DescribeBundleTasksResult": { "base": "

        Contains the output of DescribeBundleTasks.

        ", "refs": { } }, "DescribeClassicLinkInstancesRequest": { "base": "

        Contains the parameters for DescribeClassicLinkInstances.

        ", "refs": { } }, "DescribeClassicLinkInstancesResult": { "base": "

        Contains the output of DescribeClassicLinkInstances.

        ", "refs": { } }, "DescribeConversionTaskList": { "base": null, "refs": { "DescribeConversionTasksResult$ConversionTasks": "

        Information about the conversion tasks.

        " } }, "DescribeConversionTasksRequest": { "base": "

        Contains the parameters for DescribeConversionTasks.

        ", "refs": { } }, "DescribeConversionTasksResult": { "base": "

        Contains the output for DescribeConversionTasks.

        ", "refs": { } }, "DescribeCustomerGatewaysRequest": { "base": "

        Contains the parameters for DescribeCustomerGateways.

        ", "refs": { } }, "DescribeCustomerGatewaysResult": { "base": "

        Contains the output of DescribeCustomerGateways.

        ", "refs": { } }, "DescribeDhcpOptionsRequest": { "base": "

        Contains the parameters for DescribeDhcpOptions.

        ", "refs": { } }, "DescribeDhcpOptionsResult": { "base": "

        Contains the output of DescribeDhcpOptions.

        ", "refs": { } }, "DescribeExportTasksRequest": { "base": "

        Contains the parameters for DescribeExportTasks.

        ", "refs": { } }, "DescribeExportTasksResult": { "base": "

        Contains the output for DescribeExportTasks.

        ", "refs": { } }, "DescribeFlowLogsRequest": { "base": "

        Contains the parameters for DescribeFlowLogs.

        ", "refs": { } }, "DescribeFlowLogsResult": { "base": "

        Contains the output of DescribeFlowLogs.

        ", "refs": { } }, "DescribeHostsRequest": { "base": "

        Contains the parameters for DescribeHosts.

        ", "refs": { } }, "DescribeHostsResult": { "base": "

        Contains the output of DescribeHosts.

        ", "refs": { } }, "DescribeIdFormatRequest": { "base": "

        Contains the parameters for DescribeIdFormat.

        ", "refs": { } }, "DescribeIdFormatResult": { "base": "

        Contains the output of DescribeIdFormat.

        ", "refs": { } }, "DescribeImageAttributeRequest": { "base": "

        Contains the parameters for DescribeImageAttribute.

        ", "refs": { } }, "DescribeImagesRequest": { "base": "

        Contains the parameters for DescribeImages.

        ", "refs": { } }, "DescribeImagesResult": { "base": "

        Contains the output of DescribeImages.

        ", "refs": { } }, "DescribeImportImageTasksRequest": { "base": "

        Contains the parameters for DescribeImportImageTasks.

        ", "refs": { } }, "DescribeImportImageTasksResult": { "base": "

        Contains the output for DescribeImportImageTasks.

        ", "refs": { } }, "DescribeImportSnapshotTasksRequest": { "base": "

        Contains the parameters for DescribeImportSnapshotTasks.

        ", "refs": { } }, "DescribeImportSnapshotTasksResult": { "base": "

        Contains the output for DescribeImportSnapshotTasks.

        ", "refs": { } }, "DescribeInstanceAttributeRequest": { "base": "

        Contains the parameters for DescribeInstanceAttribute.

        ", "refs": { } }, "DescribeInstanceStatusRequest": { "base": "

        Contains the parameters for DescribeInstanceStatus.

        ", "refs": { } }, "DescribeInstanceStatusResult": { "base": "

        Contains the output of DescribeInstanceStatus.

        ", "refs": { } }, "DescribeInstancesRequest": { "base": "

        Contains the parameters for DescribeInstances.

        ", "refs": { } }, "DescribeInstancesResult": { "base": "

        Contains the output of DescribeInstances.

        ", "refs": { } }, "DescribeInternetGatewaysRequest": { "base": "

        Contains the parameters for DescribeInternetGateways.

        ", "refs": { } }, "DescribeInternetGatewaysResult": { "base": "

        Contains the output of DescribeInternetGateways.

        ", "refs": { } }, "DescribeKeyPairsRequest": { "base": "

        Contains the parameters for DescribeKeyPairs.

        ", "refs": { } }, "DescribeKeyPairsResult": { "base": "

        Contains the output of DescribeKeyPairs.

        ", "refs": { } }, "DescribeMovingAddressesRequest": { "base": "

        Contains the parameters for DescribeMovingAddresses.

        ", "refs": { } }, "DescribeMovingAddressesResult": { "base": "

        Contains the output of DescribeMovingAddresses.

        ", "refs": { } }, "DescribeNatGatewaysRequest": { "base": "

        Contains the parameters for DescribeNatGateways.

        ", "refs": { } }, "DescribeNatGatewaysResult": { "base": "

        Contains the output of DescribeNatGateways.

        ", "refs": { } }, "DescribeNetworkAclsRequest": { "base": "

        Contains the parameters for DescribeNetworkAcls.

        ", "refs": { } }, "DescribeNetworkAclsResult": { "base": "

        Contains the output of DescribeNetworkAcls.

        ", "refs": { } }, "DescribeNetworkInterfaceAttributeRequest": { "base": "

        Contains the parameters for DescribeNetworkInterfaceAttribute.

        ", "refs": { } }, "DescribeNetworkInterfaceAttributeResult": { "base": "

        Contains the output of DescribeNetworkInterfaceAttribute.

        ", "refs": { } }, "DescribeNetworkInterfacesRequest": { "base": "

        Contains the parameters for DescribeNetworkInterfaces.

        ", "refs": { } }, "DescribeNetworkInterfacesResult": { "base": "

        Contains the output of DescribeNetworkInterfaces.

        ", "refs": { } }, "DescribePlacementGroupsRequest": { "base": "

        Contains the parameters for DescribePlacementGroups.

        ", "refs": { } }, "DescribePlacementGroupsResult": { "base": "

        Contains the output of DescribePlacementGroups.

        ", "refs": { } }, "DescribePrefixListsRequest": { "base": "

        Contains the parameters for DescribePrefixLists.

        ", "refs": { } }, "DescribePrefixListsResult": { "base": "

        Contains the output of DescribePrefixLists.

        ", "refs": { } }, "DescribeRegionsRequest": { "base": "

        Contains the parameters for DescribeRegions.

        ", "refs": { } }, "DescribeRegionsResult": { "base": "

        Contains the output of DescribeRegions.

        ", "refs": { } }, "DescribeReservedInstancesListingsRequest": { "base": "

        Contains the parameters for DescribeReservedInstancesListings.

        ", "refs": { } }, "DescribeReservedInstancesListingsResult": { "base": "

        Contains the output of DescribeReservedInstancesListings.

        ", "refs": { } }, "DescribeReservedInstancesModificationsRequest": { "base": "

        Contains the parameters for DescribeReservedInstancesModifications.

        ", "refs": { } }, "DescribeReservedInstancesModificationsResult": { "base": "

        Contains the output of DescribeReservedInstancesModifications.

        ", "refs": { } }, "DescribeReservedInstancesOfferingsRequest": { "base": "

        Contains the parameters for DescribeReservedInstancesOfferings.

        ", "refs": { } }, "DescribeReservedInstancesOfferingsResult": { "base": "

        Contains the output of DescribeReservedInstancesOfferings.

        ", "refs": { } }, "DescribeReservedInstancesRequest": { "base": "

        Contains the parameters for DescribeReservedInstances.

        ", "refs": { } }, "DescribeReservedInstancesResult": { "base": "

        Contains the output for DescribeReservedInstances.

        ", "refs": { } }, "DescribeRouteTablesRequest": { "base": "

        Contains the parameters for DescribeRouteTables.

        ", "refs": { } }, "DescribeRouteTablesResult": { "base": "

        Contains the output of DescribeRouteTables.

        ", "refs": { } }, "DescribeScheduledInstanceAvailabilityRequest": { "base": "

        Contains the parameters for DescribeScheduledInstanceAvailability.

        ", "refs": { } }, "DescribeScheduledInstanceAvailabilityResult": { "base": "

        Contains the output of DescribeScheduledInstanceAvailability.

        ", "refs": { } }, "DescribeScheduledInstancesRequest": { "base": "

        Contains the parameters for DescribeScheduledInstances.

        ", "refs": { } }, "DescribeScheduledInstancesResult": { "base": "

        Contains the output of DescribeScheduledInstances.

        ", "refs": { } }, "DescribeSecurityGroupReferencesRequest": { "base": null, "refs": { } }, "DescribeSecurityGroupReferencesResult": { "base": null, "refs": { } }, "DescribeSecurityGroupsRequest": { "base": "

        Contains the parameters for DescribeSecurityGroups.

        ", "refs": { } }, "DescribeSecurityGroupsResult": { "base": "

        Contains the output of DescribeSecurityGroups.

        ", "refs": { } }, "DescribeSnapshotAttributeRequest": { "base": "

        Contains the parameters for DescribeSnapshotAttribute.

        ", "refs": { } }, "DescribeSnapshotAttributeResult": { "base": "

        Contains the output of DescribeSnapshotAttribute.

        ", "refs": { } }, "DescribeSnapshotsRequest": { "base": "

        Contains the parameters for DescribeSnapshots.

        ", "refs": { } }, "DescribeSnapshotsResult": { "base": "

        Contains the output of DescribeSnapshots.

        ", "refs": { } }, "DescribeSpotDatafeedSubscriptionRequest": { "base": "

        Contains the parameters for DescribeSpotDatafeedSubscription.

        ", "refs": { } }, "DescribeSpotDatafeedSubscriptionResult": { "base": "

        Contains the output of DescribeSpotDatafeedSubscription.

        ", "refs": { } }, "DescribeSpotFleetInstancesRequest": { "base": "

        Contains the parameters for DescribeSpotFleetInstances.

        ", "refs": { } }, "DescribeSpotFleetInstancesResponse": { "base": "

        Contains the output of DescribeSpotFleetInstances.

        ", "refs": { } }, "DescribeSpotFleetRequestHistoryRequest": { "base": "

        Contains the parameters for DescribeSpotFleetRequestHistory.

        ", "refs": { } }, "DescribeSpotFleetRequestHistoryResponse": { "base": "

        Contains the output of DescribeSpotFleetRequestHistory.

        ", "refs": { } }, "DescribeSpotFleetRequestsRequest": { "base": "

        Contains the parameters for DescribeSpotFleetRequests.

        ", "refs": { } }, "DescribeSpotFleetRequestsResponse": { "base": "

        Contains the output of DescribeSpotFleetRequests.

        ", "refs": { } }, "DescribeSpotInstanceRequestsRequest": { "base": "

        Contains the parameters for DescribeSpotInstanceRequests.

        ", "refs": { } }, "DescribeSpotInstanceRequestsResult": { "base": "

        Contains the output of DescribeSpotInstanceRequests.

        ", "refs": { } }, "DescribeSpotPriceHistoryRequest": { "base": "

        Contains the parameters for DescribeSpotPriceHistory.

        ", "refs": { } }, "DescribeSpotPriceHistoryResult": { "base": "

        Contains the output of DescribeSpotPriceHistory.

        ", "refs": { } }, "DescribeStaleSecurityGroupsRequest": { "base": null, "refs": { } }, "DescribeStaleSecurityGroupsResult": { "base": null, "refs": { } }, "DescribeSubnetsRequest": { "base": "

        Contains the parameters for DescribeSubnets.

        ", "refs": { } }, "DescribeSubnetsResult": { "base": "

        Contains the output of DescribeSubnets.

        ", "refs": { } }, "DescribeTagsRequest": { "base": "

        Contains the parameters for DescribeTags.

        ", "refs": { } }, "DescribeTagsResult": { "base": "

        Contains the output of DescribeTags.

        ", "refs": { } }, "DescribeVolumeAttributeRequest": { "base": "

        Contains the parameters for DescribeVolumeAttribute.

        ", "refs": { } }, "DescribeVolumeAttributeResult": { "base": "

        Contains the output of DescribeVolumeAttribute.

        ", "refs": { } }, "DescribeVolumeStatusRequest": { "base": "

        Contains the parameters for DescribeVolumeStatus.

        ", "refs": { } }, "DescribeVolumeStatusResult": { "base": "

        Contains the output of DescribeVolumeStatus.

        ", "refs": { } }, "DescribeVolumesRequest": { "base": "

        Contains the parameters for DescribeVolumes.

        ", "refs": { } }, "DescribeVolumesResult": { "base": "

        Contains the output of DescribeVolumes.

        ", "refs": { } }, "DescribeVpcAttributeRequest": { "base": "

        Contains the parameters for DescribeVpcAttribute.

        ", "refs": { } }, "DescribeVpcAttributeResult": { "base": "

        Contains the output of DescribeVpcAttribute.

        ", "refs": { } }, "DescribeVpcClassicLinkDnsSupportRequest": { "base": "

        Contains the parameters for DescribeVpcClassicLinkDnsSupport.

        ", "refs": { } }, "DescribeVpcClassicLinkDnsSupportResult": { "base": "

        Contains the output of DescribeVpcClassicLinkDnsSupport.

        ", "refs": { } }, "DescribeVpcClassicLinkRequest": { "base": "

        Contains the parameters for DescribeVpcClassicLink.

        ", "refs": { } }, "DescribeVpcClassicLinkResult": { "base": "

        Contains the output of DescribeVpcClassicLink.

        ", "refs": { } }, "DescribeVpcEndpointServicesRequest": { "base": "

        Contains the parameters for DescribeVpcEndpointServices.

        ", "refs": { } }, "DescribeVpcEndpointServicesResult": { "base": "

        Contains the output of DescribeVpcEndpointServices.

        ", "refs": { } }, "DescribeVpcEndpointsRequest": { "base": "

        Contains the parameters for DescribeVpcEndpoints.

        ", "refs": { } }, "DescribeVpcEndpointsResult": { "base": "

        Contains the output of DescribeVpcEndpoints.

        ", "refs": { } }, "DescribeVpcPeeringConnectionsRequest": { "base": "

        Contains the parameters for DescribeVpcPeeringConnections.

        ", "refs": { } }, "DescribeVpcPeeringConnectionsResult": { "base": "

        Contains the output of DescribeVpcPeeringConnections.

        ", "refs": { } }, "DescribeVpcsRequest": { "base": "

        Contains the parameters for DescribeVpcs.

        ", "refs": { } }, "DescribeVpcsResult": { "base": "

        Contains the output of DescribeVpcs.

        ", "refs": { } }, "DescribeVpnConnectionsRequest": { "base": "

        Contains the parameters for DescribeVpnConnections.

        ", "refs": { } }, "DescribeVpnConnectionsResult": { "base": "

        Contains the output of DescribeVpnConnections.

        ", "refs": { } }, "DescribeVpnGatewaysRequest": { "base": "

        Contains the parameters for DescribeVpnGateways.

        ", "refs": { } }, "DescribeVpnGatewaysResult": { "base": "

        Contains the output of DescribeVpnGateways.

        ", "refs": { } }, "DetachClassicLinkVpcRequest": { "base": "

        Contains the parameters for DetachClassicLinkVpc.

        ", "refs": { } }, "DetachClassicLinkVpcResult": { "base": "

        Contains the output of DetachClassicLinkVpc.

        ", "refs": { } }, "DetachInternetGatewayRequest": { "base": "

        Contains the parameters for DetachInternetGateway.

        ", "refs": { } }, "DetachNetworkInterfaceRequest": { "base": "

        Contains the parameters for DetachNetworkInterface.

        ", "refs": { } }, "DetachVolumeRequest": { "base": "

        Contains the parameters for DetachVolume.

        ", "refs": { } }, "DetachVpnGatewayRequest": { "base": "

        Contains the parameters for DetachVpnGateway.

        ", "refs": { } }, "DeviceType": { "base": null, "refs": { "Image$RootDeviceType": "

        The type of root device used by the AMI. The AMI can use an EBS volume or an instance store volume.

        ", "Instance$RootDeviceType": "

        The root device type used by the AMI. The AMI can use an EBS volume or an instance store volume.

        " } }, "DhcpConfiguration": { "base": "

        Describes a DHCP configuration option.

        ", "refs": { "DhcpConfigurationList$member": null } }, "DhcpConfigurationList": { "base": null, "refs": { "DhcpOptions$DhcpConfigurations": "

        One or more DHCP options in the set.

        " } }, "DhcpConfigurationValueList": { "base": null, "refs": { "DhcpConfiguration$Values": "

        One or more values for the DHCP option.

        " } }, "DhcpOptions": { "base": "

        Describes a set of DHCP options.

        ", "refs": { "CreateDhcpOptionsResult$DhcpOptions": "

        A set of DHCP options.

        ", "DhcpOptionsList$member": null } }, "DhcpOptionsIdStringList": { "base": null, "refs": { "DescribeDhcpOptionsRequest$DhcpOptionsIds": "

        The IDs of one or more DHCP options sets.

        Default: Describes all your DHCP options sets.

        " } }, "DhcpOptionsList": { "base": null, "refs": { "DescribeDhcpOptionsResult$DhcpOptions": "

        Information about one or more DHCP options sets.

        " } }, "DisableVgwRoutePropagationRequest": { "base": "

        Contains the parameters for DisableVgwRoutePropagation.

        ", "refs": { } }, "DisableVpcClassicLinkDnsSupportRequest": { "base": "

        Contains the parameters for DisableVpcClassicLinkDnsSupport.

        ", "refs": { } }, "DisableVpcClassicLinkDnsSupportResult": { "base": "

        Contains the output of DisableVpcClassicLinkDnsSupport.

        ", "refs": { } }, "DisableVpcClassicLinkRequest": { "base": "

        Contains the parameters for DisableVpcClassicLink.

        ", "refs": { } }, "DisableVpcClassicLinkResult": { "base": "

        Contains the output of DisableVpcClassicLink.

        ", "refs": { } }, "DisassociateAddressRequest": { "base": "

        Contains the parameters for DisassociateAddress.

        ", "refs": { } }, "DisassociateRouteTableRequest": { "base": "

        Contains the parameters for DisassociateRouteTable.

        ", "refs": { } }, "DiskImage": { "base": "

        Describes a disk image.

        ", "refs": { "DiskImageList$member": null } }, "DiskImageDescription": { "base": "

        Describes a disk image.

        ", "refs": { "ImportInstanceVolumeDetailItem$Image": "

        The image.

        ", "ImportVolumeTaskDetails$Image": "

        The image.

        " } }, "DiskImageDetail": { "base": "

        Describes a disk image.

        ", "refs": { "DiskImage$Image": "

        Information about the disk image.

        ", "ImportVolumeRequest$Image": "

        The disk image.

        " } }, "DiskImageFormat": { "base": null, "refs": { "DiskImageDescription$Format": "

        The disk image format.

        ", "DiskImageDetail$Format": "

        The disk image format.

        ", "ExportToS3Task$DiskImageFormat": "

        The format for the exported image.

        ", "ExportToS3TaskSpecification$DiskImageFormat": "

        The format for the exported image.

        " } }, "DiskImageList": { "base": null, "refs": { "ImportInstanceRequest$DiskImages": "

        The disk image.

        " } }, "DiskImageVolumeDescription": { "base": "

        Describes a disk image volume.

        ", "refs": { "ImportInstanceVolumeDetailItem$Volume": "

        The volume.

        ", "ImportVolumeTaskDetails$Volume": "

        The volume.

        " } }, "DomainType": { "base": null, "refs": { "Address$Domain": "

        Indicates whether this Elastic IP address is for use with instances in EC2-Classic (standard) or instances in a VPC (vpc).

        ", "AllocateAddressRequest$Domain": "

        Set to vpc to allocate the address for use with instances in a VPC.

        Default: The address is for use with instances in EC2-Classic.

        ", "AllocateAddressResult$Domain": "

        Indicates whether this Elastic IP address is for use with instances in EC2-Classic (standard) or instances in a VPC (vpc).

        " } }, "Double": { "base": null, "refs": { "ClientData$UploadSize": "

        The size of the uploaded disk image, in GiB.

        ", "PriceSchedule$Price": "

        The fixed price for the term.

        ", "PriceScheduleSpecification$Price": "

        The fixed price for the term.

        ", "PricingDetail$Price": "

        The price per instance.

        ", "RecurringCharge$Amount": "

        The amount of the recurring charge.

        ", "ReservedInstanceLimitPrice$Amount": "

        Used for Reserved Instance Marketplace offerings. Specifies the limit price on the total order (instanceCount * price).

        ", "SnapshotDetail$DiskImageSize": "

        The size of the disk in the snapshot, in GiB.

        ", "SnapshotTaskDetail$DiskImageSize": "

        The size of the disk in the snapshot, in GiB.

        ", "SpotFleetLaunchSpecification$WeightedCapacity": "

        The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms (instances or a performance characteristic such as vCPUs, memory, or I/O).

        If the target capacity divided by this value is not a whole number, we round the number of instances to the next whole number. If this value is not specified, the default is 1.

        ", "SpotFleetRequestConfigData$FulfilledCapacity": "

        The number of units fulfilled by this request compared to the set target capacity.

        " } }, "EbsBlockDevice": { "base": "

        Describes a block device for an EBS volume.

        ", "refs": { "BlockDeviceMapping$Ebs": "

        Parameters used to automatically set up EBS volumes when the instance is launched.

        " } }, "EbsInstanceBlockDevice": { "base": "

        Describes a parameter used to set up an EBS volume in a block device mapping.

        ", "refs": { "InstanceBlockDeviceMapping$Ebs": "

        Parameters used to automatically set up EBS volumes when the instance is launched.

        " } }, "EbsInstanceBlockDeviceSpecification": { "base": "

        Describes information used to set up an EBS volume specified in a block device mapping.

        ", "refs": { "InstanceBlockDeviceMappingSpecification$Ebs": "

        Parameters used to automatically set up EBS volumes when the instance is launched.

        " } }, "EnableVgwRoutePropagationRequest": { "base": "

        Contains the parameters for EnableVgwRoutePropagation.

        ", "refs": { } }, "EnableVolumeIORequest": { "base": "

        Contains the parameters for EnableVolumeIO.

        ", "refs": { } }, "EnableVpcClassicLinkDnsSupportRequest": { "base": "

        Contains the parameters for EnableVpcClassicLinkDnsSupport.

        ", "refs": { } }, "EnableVpcClassicLinkDnsSupportResult": { "base": "

        Contains the output of EnableVpcClassicLinkDnsSupport.

        ", "refs": { } }, "EnableVpcClassicLinkRequest": { "base": "

        Contains the parameters for EnableVpcClassicLink.

        ", "refs": { } }, "EnableVpcClassicLinkResult": { "base": "

        Contains the output of EnableVpcClassicLink.

        ", "refs": { } }, "EventCode": { "base": null, "refs": { "InstanceStatusEvent$Code": "

        The event code.

        " } }, "EventInformation": { "base": "

        Describes a Spot fleet event.

        ", "refs": { "HistoryRecord$EventInformation": "

        Information about the event.

        " } }, "EventType": { "base": null, "refs": { "DescribeSpotFleetRequestHistoryRequest$EventType": "

        The type of events to describe. By default, all events are described.

        ", "HistoryRecord$EventType": "

        The event type.

        • error - Indicates an error with the Spot fleet request.

        • fleetRequestChange - Indicates a change in the status or configuration of the Spot fleet request.

        • instanceChange - Indicates that an instance was launched or terminated.

        " } }, "ExcessCapacityTerminationPolicy": { "base": null, "refs": { "ModifySpotFleetRequestRequest$ExcessCapacityTerminationPolicy": "

        Indicates whether running Spot instances should be terminated if the target capacity of the Spot fleet request is decreased below the current size of the Spot fleet.

        ", "SpotFleetRequestConfigData$ExcessCapacityTerminationPolicy": "

        Indicates whether running Spot instances should be terminated if the target capacity of the Spot fleet request is decreased below the current size of the Spot fleet.

        " } }, "ExecutableByStringList": { "base": null, "refs": { "DescribeImagesRequest$ExecutableUsers": "

        Scopes the images by users with explicit launch permissions. Specify an AWS account ID, self (the sender of the request), or all (public AMIs).

        " } }, "ExportEnvironment": { "base": null, "refs": { "CreateInstanceExportTaskRequest$TargetEnvironment": "

        The target virtualization environment.

        ", "InstanceExportDetails$TargetEnvironment": "

        The target virtualization environment.

        " } }, "ExportTask": { "base": "

        Describes an instance export task.

        ", "refs": { "CreateInstanceExportTaskResult$ExportTask": "

        Information about the instance export task.

        ", "ExportTaskList$member": null } }, "ExportTaskIdStringList": { "base": null, "refs": { "DescribeExportTasksRequest$ExportTaskIds": "

        One or more export task IDs.

        " } }, "ExportTaskList": { "base": null, "refs": { "DescribeExportTasksResult$ExportTasks": "

        Information about the export tasks.

        " } }, "ExportTaskState": { "base": null, "refs": { "ExportTask$State": "

        The state of the export task.

        " } }, "ExportToS3Task": { "base": "

        Describes the format and location for an instance export task.

        ", "refs": { "ExportTask$ExportToS3Task": "

        Information about the export task.

        " } }, "ExportToS3TaskSpecification": { "base": "

        Describes an instance export task.

        ", "refs": { "CreateInstanceExportTaskRequest$ExportToS3Task": "

        The format and location for an instance export task.

        " } }, "Filter": { "base": "

        A filter name and value pair that is used to return a more specific list of results. Filters can be used to match a set of resources by various criteria, such as tags, attributes, or IDs.

        ", "refs": { "FilterList$member": null } }, "FilterList": { "base": null, "refs": { "DescribeAddressesRequest$Filters": "

        One or more filters. Filter names and values are case-sensitive.

        • allocation-id - [EC2-VPC] The allocation ID for the address.

        • association-id - [EC2-VPC] The association ID for the address.

        • domain - Indicates whether the address is for use in EC2-Classic (standard) or in a VPC (vpc).

        • instance-id - The ID of the instance the address is associated with, if any.

        • network-interface-id - [EC2-VPC] The ID of the network interface that the address is associated with, if any.

        • network-interface-owner-id - The AWS account ID of the owner.

        • private-ip-address - [EC2-VPC] The private IP address associated with the Elastic IP address.

        • public-ip - The Elastic IP address.

        ", "DescribeAvailabilityZonesRequest$Filters": "

        One or more filters.

        • message - Information about the Availability Zone.

        • region-name - The name of the region for the Availability Zone (for example, us-east-1).

        • state - The state of the Availability Zone (available | information | impaired | unavailable).

        • zone-name - The name of the Availability Zone (for example, us-east-1a).

        ", "DescribeBundleTasksRequest$Filters": "

        One or more filters.

        • bundle-id - The ID of the bundle task.

        • error-code - If the task failed, the error code returned.

        • error-message - If the task failed, the error message returned.

        • instance-id - The ID of the instance.

        • progress - The level of task completion, as a percentage (for example, 20%).

        • s3-bucket - The Amazon S3 bucket to store the AMI.

        • s3-prefix - The beginning of the AMI name.

        • start-time - The time the task started (for example, 2013-09-15T17:15:20.000Z).

        • state - The state of the task (pending | waiting-for-shutdown | bundling | storing | cancelling | complete | failed).

        • update-time - The time of the most recent update for the task.

        ", "DescribeClassicLinkInstancesRequest$Filters": "

        One or more filters.

        • group-id - The ID of a VPC security group that's associated with the instance.

        • instance-id - The ID of the instance.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC that the instance is linked to.

        ", "DescribeConversionTasksRequest$Filters": "

        One or more filters.

        ", "DescribeCustomerGatewaysRequest$Filters": "

        One or more filters.

        • bgp-asn - The customer gateway's Border Gateway Protocol (BGP) Autonomous System Number (ASN).

        • customer-gateway-id - The ID of the customer gateway.

        • ip-address - The IP address of the customer gateway's Internet-routable external interface.

        • state - The state of the customer gateway (pending | available | deleting | deleted).

        • type - The type of customer gateway. Currently, the only supported type is ipsec.1.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        ", "DescribeDhcpOptionsRequest$Filters": "

        One or more filters.

        • dhcp-options-id - The ID of a set of DHCP options.

        • key - The key for one of the options (for example, domain-name).

        • value - The value for one of the options.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        ", "DescribeFlowLogsRequest$Filter": "

        One or more filters.

        • deliver-log-status - The status of the logs delivery (SUCCESS | FAILED).

        • flow-log-id - The ID of the flow log.

        • log-group-name - The name of the log group.

        • resource-id - The ID of the VPC, subnet, or network interface.

        • traffic-type - The type of traffic (ACCEPT | REJECT | ALL)

        ", "DescribeHostsRequest$Filter": "

        One or more filters.

        • instance-type - The instance type size that the Dedicated host is configured to support.

        • auto-placement - Whether auto-placement is enabled or disabled (on | off).

        • host-reservation-id - The ID of the reservation associated with this host.

        • client-token - The idempotency token you provided when you launched the instance

        • state- The allocation state of the Dedicated host (available | under-assessment | permanent-failure | released | released-permanent-failure).

        • availability-zone - The Availability Zone of the host.

        ", "DescribeImagesRequest$Filters": "

        One or more filters.

        • architecture - The image architecture (i386 | x86_64).

        • block-device-mapping.delete-on-termination - A Boolean value that indicates whether the Amazon EBS volume is deleted on instance termination.

        • block-device-mapping.device-name - The device name for the EBS volume (for example, /dev/sdh).

        • block-device-mapping.snapshot-id - The ID of the snapshot used for the EBS volume.

        • block-device-mapping.volume-size - The volume size of the EBS volume, in GiB.

        • block-device-mapping.volume-type - The volume type of the EBS volume (gp2 | io1 | st1 | sc1 | standard).

        • description - The description of the image (provided during image creation).

        • hypervisor - The hypervisor type (ovm | xen).

        • image-id - The ID of the image.

        • image-type - The image type (machine | kernel | ramdisk).

        • is-public - A Boolean that indicates whether the image is public.

        • kernel-id - The kernel ID.

        • manifest-location - The location of the image manifest.

        • name - The name of the AMI (provided during image creation).

        • owner-alias - The AWS account alias (for example, amazon).

        • owner-id - The AWS account ID of the image owner.

        • platform - The platform. To only list Windows-based AMIs, use windows.

        • product-code - The product code.

        • product-code.type - The type of the product code (devpay | marketplace).

        • ramdisk-id - The RAM disk ID.

        • root-device-name - The name of the root device volume (for example, /dev/sda1).

        • root-device-type - The type of the root device volume (ebs | instance-store).

        • state - The state of the image (available | pending | failed).

        • state-reason-code - The reason code for the state change.

        • state-reason-message - The message for the state change.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • virtualization-type - The virtualization type (paravirtual | hvm).

        ", "DescribeImportImageTasksRequest$Filters": "

        Filter tasks using the task-state filter and one of the following values: active, completed, deleting, deleted.

        ", "DescribeImportSnapshotTasksRequest$Filters": "

        One or more filters.

        ", "DescribeInstanceStatusRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone of the instance.

        • event.code - The code for the scheduled event (instance-reboot | system-reboot | system-maintenance | instance-retirement | instance-stop).

        • event.description - A description of the event.

        • event.not-after - The latest end time for the scheduled event (for example, 2014-09-15T17:15:20.000Z).

        • event.not-before - The earliest start time for the scheduled event (for example, 2014-09-15T17:15:20.000Z).

        • instance-state-code - The code for the instance state, as a 16-bit unsigned integer. The high byte is an opaque internal value and should be ignored. The low byte is set based on the state represented. The valid values are 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64 (stopping), and 80 (stopped).

        • instance-state-name - The state of the instance (pending | running | shutting-down | terminated | stopping | stopped).

        • instance-status.reachability - Filters on instance status where the name is reachability (passed | failed | initializing | insufficient-data).

        • instance-status.status - The status of the instance (ok | impaired | initializing | insufficient-data | not-applicable).

        • system-status.reachability - Filters on system status where the name is reachability (passed | failed | initializing | insufficient-data).

        • system-status.status - The system status of the instance (ok | impaired | initializing | insufficient-data | not-applicable).

        ", "DescribeInstancesRequest$Filters": "

        One or more filters.

        • affinity - The affinity setting for an instance running on a Dedicated host (default | host).

        • architecture - The instance architecture (i386 | x86_64).

        • availability-zone - The Availability Zone of the instance.

        • block-device-mapping.attach-time - The attach time for an EBS volume mapped to the instance, for example, 2010-09-15T17:15:20.000Z.

        • block-device-mapping.delete-on-termination - A Boolean that indicates whether the EBS volume is deleted on instance termination.

        • block-device-mapping.device-name - The device name for the EBS volume (for example, /dev/sdh or xvdh).

        • block-device-mapping.status - The status for the EBS volume (attaching | attached | detaching | detached).

        • block-device-mapping.volume-id - The volume ID of the EBS volume.

        • client-token - The idempotency token you provided when you launched the instance.

        • dns-name - The public DNS name of the instance.

        • group-id - The ID of the security group for the instance. EC2-Classic only.

        • group-name - The name of the security group for the instance. EC2-Classic only.

        • host-Id - The ID of the Dedicated host on which the instance is running, if applicable.

        • hypervisor - The hypervisor type of the instance (ovm | xen).

        • iam-instance-profile.arn - The instance profile associated with the instance. Specified as an ARN.

        • image-id - The ID of the image used to launch the instance.

        • instance-id - The ID of the instance.

        • instance-lifecycle - Indicates whether this is a Spot Instance or a Scheduled Instance (spot | scheduled).

        • instance-state-code - The state of the instance, as a 16-bit unsigned integer. The high byte is an opaque internal value and should be ignored. The low byte is set based on the state represented. The valid values are: 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64 (stopping), and 80 (stopped).

        • instance-state-name - The state of the instance (pending | running | shutting-down | terminated | stopping | stopped).

        • instance-type - The type of instance (for example, t2.micro).

        • instance.group-id - The ID of the security group for the instance.

        • instance.group-name - The name of the security group for the instance.

        • ip-address - The public IP address of the instance.

        • kernel-id - The kernel ID.

        • key-name - The name of the key pair used when the instance was launched.

        • launch-index - When launching multiple instances, this is the index for the instance in the launch group (for example, 0, 1, 2, and so on).

        • launch-time - The time when the instance was launched.

        • monitoring-state - Indicates whether monitoring is enabled for the instance (disabled | enabled).

        • owner-id - The AWS account ID of the instance owner.

        • placement-group-name - The name of the placement group for the instance.

        • platform - The platform. Use windows if you have Windows instances; otherwise, leave blank.

        • private-dns-name - The private DNS name of the instance.

        • private-ip-address - The private IP address of the instance.

        • product-code - The product code associated with the AMI used to launch the instance.

        • product-code.type - The type of product code (devpay | marketplace).

        • ramdisk-id - The RAM disk ID.

        • reason - The reason for the current state of the instance (for example, shows \"User Initiated [date]\" when you stop or terminate the instance). Similar to the state-reason-code filter.

        • requester-id - The ID of the entity that launched the instance on your behalf (for example, AWS Management Console, Auto Scaling, and so on).

        • reservation-id - The ID of the instance's reservation. A reservation ID is created any time you launch an instance. A reservation ID has a one-to-one relationship with an instance launch request, but can be associated with more than one instance if you launch multiple instances using the same launch request. For example, if you launch one instance, you'll get one reservation ID. If you launch ten instances using the same launch request, you'll also get one reservation ID.

        • root-device-name - The name of the root device for the instance (for example, /dev/sda1 or /dev/xvda).

        • root-device-type - The type of root device that the instance uses (ebs | instance-store).

        • source-dest-check - Indicates whether the instance performs source/destination checking. A value of true means that checking is enabled, and false means checking is disabled. The value must be false for the instance to perform network address translation (NAT) in your VPC.

        • spot-instance-request-id - The ID of the Spot instance request.

        • state-reason-code - The reason code for the state change.

        • state-reason-message - A message that describes the state change.

        • subnet-id - The ID of the subnet for the instance.

        • tag:key=value - The key/value combination of a tag assigned to the resource, where tag:key is the tag's key.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • tenancy - The tenancy of an instance (dedicated | default | host).

        • virtualization-type - The virtualization type of the instance (paravirtual | hvm).

        • vpc-id - The ID of the VPC that the instance is running in.

        • network-interface.description - The description of the network interface.

        • network-interface.subnet-id - The ID of the subnet for the network interface.

        • network-interface.vpc-id - The ID of the VPC for the network interface.

        • network-interface.network-interface-id - The ID of the network interface.

        • network-interface.owner-id - The ID of the owner of the network interface.

        • network-interface.availability-zone - The Availability Zone for the network interface.

        • network-interface.requester-id - The requester ID for the network interface.

        • network-interface.requester-managed - Indicates whether the network interface is being managed by AWS.

        • network-interface.status - The status of the network interface (available) | in-use).

        • network-interface.mac-address - The MAC address of the network interface.

        • network-interface.private-dns-name - The private DNS name of the network interface.

        • network-interface.source-dest-check - Whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

        • network-interface.group-id - The ID of a security group associated with the network interface.

        • network-interface.group-name - The name of a security group associated with the network interface.

        • network-interface.attachment.attachment-id - The ID of the interface attachment.

        • network-interface.attachment.instance-id - The ID of the instance to which the network interface is attached.

        • network-interface.attachment.instance-owner-id - The owner ID of the instance to which the network interface is attached.

        • network-interface.addresses.private-ip-address - The private IP address associated with the network interface.

        • network-interface.attachment.device-index - The device index to which the network interface is attached.

        • network-interface.attachment.status - The status of the attachment (attaching | attached | detaching | detached).

        • network-interface.attachment.attach-time - The time that the network interface was attached to an instance.

        • network-interface.attachment.delete-on-termination - Specifies whether the attachment is deleted when an instance is terminated.

        • network-interface.addresses.primary - Specifies whether the IP address of the network interface is the primary private IP address.

        • network-interface.addresses.association.public-ip - The ID of the association of an Elastic IP address with a network interface.

        • network-interface.addresses.association.ip-owner-id - The owner ID of the private IP address associated with the network interface.

        • association.public-ip - The address of the Elastic IP address bound to the network interface.

        • association.ip-owner-id - The owner of the Elastic IP address associated with the network interface.

        • association.allocation-id - The allocation ID returned when you allocated the Elastic IP address for your network interface.

        • association.association-id - The association ID returned when the network interface was associated with an IP address.

        ", "DescribeInternetGatewaysRequest$Filters": "

        One or more filters.

        • attachment.state - The current state of the attachment between the gateway and the VPC (available). Present only if a VPC is attached.

        • attachment.vpc-id - The ID of an attached VPC.

        • internet-gateway-id - The ID of the Internet gateway.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        ", "DescribeKeyPairsRequest$Filters": "

        One or more filters.

        • fingerprint - The fingerprint of the key pair.

        • key-name - The name of the key pair.

        ", "DescribeMovingAddressesRequest$Filters": "

        One or more filters.

        • moving-status - The status of the Elastic IP address (MovingToVpc | RestoringToClassic).

        ", "DescribeNatGatewaysRequest$Filter": "

        One or more filters.

        • nat-gateway-id - The ID of the NAT gateway.

        • state - The state of the NAT gateway (pending | failed | available | deleting | deleted).

        • subnet-id - The ID of the subnet in which the NAT gateway resides.

        • vpc-id - The ID of the VPC in which the NAT gateway resides.

        ", "DescribeNetworkAclsRequest$Filters": "

        One or more filters.

        • association.association-id - The ID of an association ID for the ACL.

        • association.network-acl-id - The ID of the network ACL involved in the association.

        • association.subnet-id - The ID of the subnet involved in the association.

        • default - Indicates whether the ACL is the default network ACL for the VPC.

        • entry.cidr - The CIDR range specified in the entry.

        • entry.egress - Indicates whether the entry applies to egress traffic.

        • entry.icmp.code - The ICMP code specified in the entry, if any.

        • entry.icmp.type - The ICMP type specified in the entry, if any.

        • entry.port-range.from - The start of the port range specified in the entry.

        • entry.port-range.to - The end of the port range specified in the entry.

        • entry.protocol - The protocol specified in the entry (tcp | udp | icmp or a protocol number).

        • entry.rule-action - Allows or denies the matching traffic (allow | deny).

        • entry.rule-number - The number of an entry (in other words, rule) in the ACL's set of entries.

        • network-acl-id - The ID of the network ACL.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC for the network ACL.

        ", "DescribeNetworkInterfacesRequest$Filters": "

        One or more filters.

        • addresses.private-ip-address - The private IP addresses associated with the network interface.

        • addresses.primary - Whether the private IP address is the primary IP address associated with the network interface.

        • addresses.association.public-ip - The association ID returned when the network interface was associated with the Elastic IP address.

        • addresses.association.owner-id - The owner ID of the addresses associated with the network interface.

        • association.association-id - The association ID returned when the network interface was associated with an IP address.

        • association.allocation-id - The allocation ID returned when you allocated the Elastic IP address for your network interface.

        • association.ip-owner-id - The owner of the Elastic IP address associated with the network interface.

        • association.public-ip - The address of the Elastic IP address bound to the network interface.

        • association.public-dns-name - The public DNS name for the network interface.

        • attachment.attachment-id - The ID of the interface attachment.

        • attachment.attach.time - The time that the network interface was attached to an instance.

        • attachment.delete-on-termination - Indicates whether the attachment is deleted when an instance is terminated.

        • attachment.device-index - The device index to which the network interface is attached.

        • attachment.instance-id - The ID of the instance to which the network interface is attached.

        • attachment.instance-owner-id - The owner ID of the instance to which the network interface is attached.

        • attachment.nat-gateway-id - The ID of the NAT gateway to which the network interface is attached.

        • attachment.status - The status of the attachment (attaching | attached | detaching | detached).

        • availability-zone - The Availability Zone of the network interface.

        • description - The description of the network interface.

        • group-id - The ID of a security group associated with the network interface.

        • group-name - The name of a security group associated with the network interface.

        • mac-address - The MAC address of the network interface.

        • network-interface-id - The ID of the network interface.

        • owner-id - The AWS account ID of the network interface owner.

        • private-ip-address - The private IP address or addresses of the network interface.

        • private-dns-name - The private DNS name of the network interface.

        • requester-id - The ID of the entity that launched the instance on your behalf (for example, AWS Management Console, Auto Scaling, and so on).

        • requester-managed - Indicates whether the network interface is being managed by an AWS service (for example, AWS Management Console, Auto Scaling, and so on).

        • source-desk-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

        • status - The status of the network interface. If the network interface is not attached to an instance, the status is available; if a network interface is attached to an instance the status is in-use.

        • subnet-id - The ID of the subnet for the network interface.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC for the network interface.

        ", "DescribePlacementGroupsRequest$Filters": "

        One or more filters.

        • group-name - The name of the placement group.

        • state - The state of the placement group (pending | available | deleting | deleted).

        • strategy - The strategy of the placement group (cluster).

        ", "DescribePrefixListsRequest$Filters": "

        One or more filters.

        • prefix-list-id: The ID of a prefix list.

        • prefix-list-name: The name of a prefix list.

        ", "DescribeRegionsRequest$Filters": "

        One or more filters.

        • endpoint - The endpoint of the region (for example, ec2.us-east-1.amazonaws.com).

        • region-name - The name of the region (for example, us-east-1).

        ", "DescribeReservedInstancesListingsRequest$Filters": "

        One or more filters.

        • reserved-instances-id - The ID of the Reserved Instances.

        • reserved-instances-listing-id - The ID of the Reserved Instances listing.

        • status - The status of the Reserved Instance listing (pending | active | cancelled | closed).

        • status-message - The reason for the status.

        ", "DescribeReservedInstancesModificationsRequest$Filters": "

        One or more filters.

        • client-token - The idempotency token for the modification request.

        • create-date - The time when the modification request was created.

        • effective-date - The time when the modification becomes effective.

        • modification-result.reserved-instances-id - The ID for the Reserved Instances created as part of the modification request. This ID is only available when the status of the modification is fulfilled.

        • modification-result.target-configuration.availability-zone - The Availability Zone for the new Reserved Instances.

        • modification-result.target-configuration.instance-count - The number of new Reserved Instances.

        • modification-result.target-configuration.instance-type - The instance type of the new Reserved Instances.

        • modification-result.target-configuration.platform - The network platform of the new Reserved Instances (EC2-Classic | EC2-VPC).

        • reserved-instances-id - The ID of the Reserved Instances modified.

        • reserved-instances-modification-id - The ID of the modification request.

        • status - The status of the Reserved Instances modification request (processing | fulfilled | failed).

        • status-message - The reason for the status.

        • update-date - The time when the modification request was last updated.

        ", "DescribeReservedInstancesOfferingsRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone where the Reserved Instance can be used.

        • duration - The duration of the Reserved Instance (for example, one year or three years), in seconds (31536000 | 94608000).

        • fixed-price - The purchase price of the Reserved Instance (for example, 9800.0).

        • instance-type - The instance type that is covered by the reservation.

        • marketplace - Set to true to show only Reserved Instance Marketplace offerings. When this filter is not used, which is the default behavior, all offerings from both AWS and the Reserved Instance Marketplace are listed.

        • product-description - The Reserved Instance product platform description. Instances that include (Amazon VPC) in the product platform description will only be displayed to EC2-Classic account holders and are for use with Amazon VPC. (Linux/UNIX | Linux/UNIX (Amazon VPC) | SUSE Linux | SUSE Linux (Amazon VPC) | Red Hat Enterprise Linux | Red Hat Enterprise Linux (Amazon VPC) | Windows | Windows (Amazon VPC) | Windows with SQL Server Standard | Windows with SQL Server Standard (Amazon VPC) | Windows with SQL Server Web | Windows with SQL Server Web (Amazon VPC) | Windows with SQL Server Enterprise | Windows with SQL Server Enterprise (Amazon VPC))

        • reserved-instances-offering-id - The Reserved Instances offering ID.

        • usage-price - The usage price of the Reserved Instance, per hour (for example, 0.84).

        ", "DescribeReservedInstancesRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone where the Reserved Instance can be used.

        • duration - The duration of the Reserved Instance (one year or three years), in seconds (31536000 | 94608000).

        • end - The time when the Reserved Instance expires (for example, 2015-08-07T11:54:42.000Z).

        • fixed-price - The purchase price of the Reserved Instance (for example, 9800.0).

        • instance-type - The instance type that is covered by the reservation.

        • product-description - The Reserved Instance product platform description. Instances that include (Amazon VPC) in the product platform description will only be displayed to EC2-Classic account holders and are for use with Amazon VPC (Linux/UNIX | Linux/UNIX (Amazon VPC) | SUSE Linux | SUSE Linux (Amazon VPC) | Red Hat Enterprise Linux | Red Hat Enterprise Linux (Amazon VPC) | Windows | Windows (Amazon VPC) | Windows with SQL Server Standard | Windows with SQL Server Standard (Amazon VPC) | Windows with SQL Server Web | Windows with SQL Server Web (Amazon VPC) | Windows with SQL Server Enterprise | Windows with SQL Server Enterprise (Amazon VPC)).

        • reserved-instances-id - The ID of the Reserved Instance.

        • start - The time at which the Reserved Instance purchase request was placed (for example, 2014-08-07T11:54:42.000Z).

        • state - The state of the Reserved Instance (payment-pending | active | payment-failed | retired).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • usage-price - The usage price of the Reserved Instance, per hour (for example, 0.84).

        ", "DescribeRouteTablesRequest$Filters": "

        One or more filters.

        • association.route-table-association-id - The ID of an association ID for the route table.

        • association.route-table-id - The ID of the route table involved in the association.

        • association.subnet-id - The ID of the subnet involved in the association.

        • association.main - Indicates whether the route table is the main route table for the VPC (true | false).

        • route-table-id - The ID of the route table.

        • route.destination-cidr-block - The CIDR range specified in a route in the table.

        • route.destination-prefix-list-id - The ID (prefix) of the AWS service specified in a route in the table.

        • route.gateway-id - The ID of a gateway specified in a route in the table.

        • route.instance-id - The ID of an instance specified in a route in the table.

        • route.nat-gateway-id - The ID of a NAT gateway.

        • route.origin - Describes how the route was created. CreateRouteTable indicates that the route was automatically created when the route table was created; CreateRoute indicates that the route was manually added to the route table; EnableVgwRoutePropagation indicates that the route was propagated by route propagation.

        • route.state - The state of a route in the route table (active | blackhole). The blackhole state indicates that the route's target isn't available (for example, the specified gateway isn't attached to the VPC, the specified NAT instance has been terminated, and so on).

        • route.vpc-peering-connection-id - The ID of a VPC peering connection specified in a route in the table.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC for the route table.

        ", "DescribeScheduledInstanceAvailabilityRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone (for example, us-west-2a).

        • instance-type - The instance type (for example, c4.large).

        • network-platform - The network platform (EC2-Classic or EC2-VPC).

        • platform - The platform (Linux/UNIX or Windows).

        ", "DescribeScheduledInstancesRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone (for example, us-west-2a).

        • instance-type - The instance type (for example, c4.large).

        • network-platform - The network platform (EC2-Classic or EC2-VPC).

        • platform - The platform (Linux/UNIX or Windows).

        ", "DescribeSecurityGroupsRequest$Filters": "

        One or more filters. If using multiple filters for rules, the results include security groups for which any combination of rules - not necessarily a single rule - match all filters.

        • description - The description of the security group.

        • egress.ip-permission.prefix-list-id - The ID (prefix) of the AWS service to which the security group allows access.

        • group-id - The ID of the security group.

        • group-name - The name of the security group.

        • ip-permission.cidr - A CIDR range that has been granted permission.

        • ip-permission.from-port - The start of port range for the TCP and UDP protocols, or an ICMP type number.

        • ip-permission.group-id - The ID of a security group that has been granted permission.

        • ip-permission.group-name - The name of a security group that has been granted permission.

        • ip-permission.protocol - The IP protocol for the permission (tcp | udp | icmp or a protocol number).

        • ip-permission.to-port - The end of port range for the TCP and UDP protocols, or an ICMP code.

        • ip-permission.user-id - The ID of an AWS account that has been granted permission.

        • owner-id - The AWS account ID of the owner of the security group.

        • tag-key - The key of a tag assigned to the security group.

        • tag-value - The value of a tag assigned to the security group.

        • vpc-id - The ID of the VPC specified when the security group was created.

        ", "DescribeSnapshotsRequest$Filters": "

        One or more filters.

        • description - A description of the snapshot.

        • owner-alias - The AWS account alias (for example, amazon) that owns the snapshot.

        • owner-id - The ID of the AWS account that owns the snapshot.

        • progress - The progress of the snapshot, as a percentage (for example, 80%).

        • snapshot-id - The snapshot ID.

        • start-time - The time stamp when the snapshot was initiated.

        • status - The status of the snapshot (pending | completed | error).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • volume-id - The ID of the volume the snapshot is for.

        • volume-size - The size of the volume, in GiB.

        ", "DescribeSpotInstanceRequestsRequest$Filters": "

        One or more filters.

        • availability-zone-group - The Availability Zone group.

        • create-time - The time stamp when the Spot instance request was created.

        • fault-code - The fault code related to the request.

        • fault-message - The fault message related to the request.

        • instance-id - The ID of the instance that fulfilled the request.

        • launch-group - The Spot instance launch group.

        • launch.block-device-mapping.delete-on-termination - Indicates whether the Amazon EBS volume is deleted on instance termination.

        • launch.block-device-mapping.device-name - The device name for the Amazon EBS volume (for example, /dev/sdh).

        • launch.block-device-mapping.snapshot-id - The ID of the snapshot used for the Amazon EBS volume.

        • launch.block-device-mapping.volume-size - The size of the Amazon EBS volume, in GiB.

        • launch.block-device-mapping.volume-type - The type of the Amazon EBS volume: gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1for Cold HDD, or standard for Magnetic.

        • launch.group-id - The security group for the instance.

        • launch.image-id - The ID of the AMI.

        • launch.instance-type - The type of instance (for example, m3.medium).

        • launch.kernel-id - The kernel ID.

        • launch.key-name - The name of the key pair the instance launched with.

        • launch.monitoring-enabled - Whether monitoring is enabled for the Spot instance.

        • launch.ramdisk-id - The RAM disk ID.

        • network-interface.network-interface-id - The ID of the network interface.

        • network-interface.device-index - The index of the device for the network interface attachment on the instance.

        • network-interface.subnet-id - The ID of the subnet for the instance.

        • network-interface.description - A description of the network interface.

        • network-interface.private-ip-address - The primary private IP address of the network interface.

        • network-interface.delete-on-termination - Indicates whether the network interface is deleted when the instance is terminated.

        • network-interface.group-id - The ID of the security group associated with the network interface.

        • network-interface.group-name - The name of the security group associated with the network interface.

        • network-interface.addresses.primary - Indicates whether the IP address is the primary private IP address.

        • product-description - The product description associated with the instance (Linux/UNIX | Windows).

        • spot-instance-request-id - The Spot instance request ID.

        • spot-price - The maximum hourly price for any Spot instance launched to fulfill the request.

        • state - The state of the Spot instance request (open | active | closed | cancelled | failed). Spot bid status information can help you track your Amazon EC2 Spot instance requests. For more information, see Spot Bid Status in the Amazon Elastic Compute Cloud User Guide.

        • status-code - The short code describing the most recent evaluation of your Spot instance request.

        • status-message - The message explaining the status of the Spot instance request.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • type - The type of Spot instance request (one-time | persistent).

        • launched-availability-zone - The Availability Zone in which the bid is launched.

        • valid-from - The start date of the request.

        • valid-until - The end date of the request.

        ", "DescribeSpotPriceHistoryRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone for which prices should be returned.

        • instance-type - The type of instance (for example, m3.medium).

        • product-description - The product description for the Spot price (Linux/UNIX | SUSE Linux | Windows | Linux/UNIX (Amazon VPC) | SUSE Linux (Amazon VPC) | Windows (Amazon VPC)).

        • spot-price - The Spot price. The value must match exactly (or use wildcards; greater than or less than comparison is not supported).

        • timestamp - The timestamp of the Spot price history, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). You can use wildcards (* and ?). Greater than or less than comparison is not supported.

        ", "DescribeSubnetsRequest$Filters": "

        One or more filters.

        • availabilityZone - The Availability Zone for the subnet. You can also use availability-zone as the filter name.

        • available-ip-address-count - The number of IP addresses in the subnet that are available.

        • cidrBlock - The CIDR block of the subnet. The CIDR block you specify must exactly match the subnet's CIDR block for information to be returned for the subnet. You can also use cidr or cidr-block as the filter names.

        • defaultForAz - Indicates whether this is the default subnet for the Availability Zone. You can also use default-for-az as the filter name.

        • state - The state of the subnet (pending | available).

        • subnet-id - The ID of the subnet.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC for the subnet.

        ", "DescribeTagsRequest$Filters": "

        One or more filters.

        • key - The tag key.

        • resource-id - The resource ID.

        • resource-type - The resource type (customer-gateway | dhcp-options | image | instance | internet-gateway | network-acl | network-interface | reserved-instances | route-table | security-group | snapshot | spot-instances-request | subnet | volume | vpc | vpn-connection | vpn-gateway).

        • value - The tag value.

        ", "DescribeVolumeStatusRequest$Filters": "

        One or more filters.

        • action.code - The action code for the event (for example, enable-volume-io).

        • action.description - A description of the action.

        • action.event-id - The event ID associated with the action.

        • availability-zone - The Availability Zone of the instance.

        • event.description - A description of the event.

        • event.event-id - The event ID.

        • event.event-type - The event type (for io-enabled: passed | failed; for io-performance: io-performance:degraded | io-performance:severely-degraded | io-performance:stalled).

        • event.not-after - The latest end time for the event.

        • event.not-before - The earliest start time for the event.

        • volume-status.details-name - The cause for volume-status.status (io-enabled | io-performance).

        • volume-status.details-status - The status of volume-status.details-name (for io-enabled: passed | failed; for io-performance: normal | degraded | severely-degraded | stalled).

        • volume-status.status - The status of the volume (ok | impaired | warning | insufficient-data).

        ", "DescribeVolumesRequest$Filters": "

        One or more filters.

        • attachment.attach-time - The time stamp when the attachment initiated.

        • attachment.delete-on-termination - Whether the volume is deleted on instance termination.

        • attachment.device - The device name that is exposed to the instance (for example, /dev/sda1).

        • attachment.instance-id - The ID of the instance the volume is attached to.

        • attachment.status - The attachment state (attaching | attached | detaching | detached).

        • availability-zone - The Availability Zone in which the volume was created.

        • create-time - The time stamp when the volume was created.

        • encrypted - The encryption status of the volume.

        • size - The size of the volume, in GiB.

        • snapshot-id - The snapshot from which the volume was created.

        • status - The status of the volume (creating | available | in-use | deleting | deleted | error).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • volume-id - The volume ID.

        • volume-type - The Amazon EBS volume type. This can be gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, or standard for Magnetic volumes.

        ", "DescribeVpcClassicLinkRequest$Filters": "

        One or more filters.

        • is-classic-link-enabled - Whether the VPC is enabled for ClassicLink (true | false).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        ", "DescribeVpcEndpointsRequest$Filters": "

        One or more filters.

        • service-name: The name of the AWS service.

        • vpc-id: The ID of the VPC in which the endpoint resides.

        • vpc-endpoint-id: The ID of the endpoint.

        • vpc-endpoint-state: The state of the endpoint. (pending | available | deleting | deleted)

        ", "DescribeVpcPeeringConnectionsRequest$Filters": "

        One or more filters.

        • accepter-vpc-info.cidr-block - The CIDR block of the peer VPC.

        • accepter-vpc-info.owner-id - The AWS account ID of the owner of the peer VPC.

        • accepter-vpc-info.vpc-id - The ID of the peer VPC.

        • expiration-time - The expiration date and time for the VPC peering connection.

        • requester-vpc-info.cidr-block - The CIDR block of the requester's VPC.

        • requester-vpc-info.owner-id - The AWS account ID of the owner of the requester VPC.

        • requester-vpc-info.vpc-id - The ID of the requester VPC.

        • status-code - The status of the VPC peering connection (pending-acceptance | failed | expired | provisioning | active | deleted | rejected).

        • status-message - A message that provides more information about the status of the VPC peering connection, if applicable.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-peering-connection-id - The ID of the VPC peering connection.

        ", "DescribeVpcsRequest$Filters": "

        One or more filters.

        • cidr - The CIDR block of the VPC. The CIDR block you specify must exactly match the VPC's CIDR block for information to be returned for the VPC. Must contain the slash followed by one or two digits (for example, /28).

        • dhcp-options-id - The ID of a set of DHCP options.

        • isDefault - Indicates whether the VPC is the default VPC.

        • state - The state of the VPC (pending | available).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC.

        ", "DescribeVpnConnectionsRequest$Filters": "

        One or more filters.

        • customer-gateway-configuration - The configuration information for the customer gateway.

        • customer-gateway-id - The ID of a customer gateway associated with the VPN connection.

        • state - The state of the VPN connection (pending | available | deleting | deleted).

        • option.static-routes-only - Indicates whether the connection has static routes only. Used for devices that do not support Border Gateway Protocol (BGP).

        • route.destination-cidr-block - The destination CIDR block. This corresponds to the subnet used in a customer data center.

        • bgp-asn - The BGP Autonomous System Number (ASN) associated with a BGP device.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • type - The type of VPN connection. Currently the only supported type is ipsec.1.

        • vpn-connection-id - The ID of the VPN connection.

        • vpn-gateway-id - The ID of a virtual private gateway associated with the VPN connection.

        ", "DescribeVpnGatewaysRequest$Filters": "

        One or more filters.

        • attachment.state - The current state of the attachment between the gateway and the VPC (attaching | attached | detaching | detached).

        • attachment.vpc-id - The ID of an attached VPC.

        • availability-zone - The Availability Zone for the virtual private gateway (if applicable).

        • state - The state of the virtual private gateway (pending | available | deleting | deleted).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • type - The type of virtual private gateway. Currently the only supported type is ipsec.1.

        • vpn-gateway-id - The ID of the virtual private gateway.

        " } }, "FleetType": { "base": null, "refs": { "SpotFleetRequestConfigData$Type": "

        The type of request. Indicates whether the fleet will only request the target capacity or also attempt to maintain it. When you request a certain target capacity, the fleet will only place the required bids. It will not attempt to replenish Spot instances if capacity is diminished, nor will it submit bids in alternative Spot pools if capacity is not available. When you want to maintain a certain target capacity, fleet will place the required bids to meet this target capacity. It will also automatically replenish any interrupted instances. Default: maintain.

        " } }, "Float": { "base": null, "refs": { "ReservedInstances$UsagePrice": "

        The usage price of the Reserved Instance, per hour.

        ", "ReservedInstances$FixedPrice": "

        The purchase price of the Reserved Instance.

        ", "ReservedInstancesOffering$UsagePrice": "

        The usage price of the Reserved Instance, per hour.

        ", "ReservedInstancesOffering$FixedPrice": "

        The purchase price of the Reserved Instance.

        " } }, "FlowLog": { "base": "

        Describes a flow log.

        ", "refs": { "FlowLogSet$member": null } }, "FlowLogSet": { "base": null, "refs": { "DescribeFlowLogsResult$FlowLogs": "

        Information about the flow logs.

        " } }, "FlowLogsResourceType": { "base": null, "refs": { "CreateFlowLogsRequest$ResourceType": "

        The type of resource on which to create the flow log.

        " } }, "GatewayType": { "base": null, "refs": { "CreateCustomerGatewayRequest$Type": "

        The type of VPN connection that this customer gateway supports (ipsec.1).

        ", "CreateVpnGatewayRequest$Type": "

        The type of VPN connection this virtual private gateway supports.

        ", "VpnConnection$Type": "

        The type of VPN connection.

        ", "VpnGateway$Type": "

        The type of VPN connection the virtual private gateway supports.

        " } }, "GetConsoleOutputRequest": { "base": "

        Contains the parameters for GetConsoleOutput.

        ", "refs": { } }, "GetConsoleOutputResult": { "base": "

        Contains the output of GetConsoleOutput.

        ", "refs": { } }, "GetConsoleScreenshotRequest": { "base": "

        Contains the parameters for the request.

        ", "refs": { } }, "GetConsoleScreenshotResult": { "base": "

        Contains the output of the request.

        ", "refs": { } }, "GetPasswordDataRequest": { "base": "

        Contains the parameters for GetPasswordData.

        ", "refs": { } }, "GetPasswordDataResult": { "base": "

        Contains the output of GetPasswordData.

        ", "refs": { } }, "GroupIdStringList": { "base": null, "refs": { "AttachClassicLinkVpcRequest$Groups": "

        The ID of one or more of the VPC's security groups. You cannot specify security groups from a different VPC.

        ", "DescribeSecurityGroupsRequest$GroupIds": "

        One or more security group IDs. Required for security groups in a nondefault VPC.

        Default: Describes all your security groups.

        ", "ModifyInstanceAttributeRequest$Groups": "

        [EC2-VPC] Changes the security groups of the instance. You must specify at least one security group, even if it's just the default security group for the VPC. You must specify the security group ID, not the security group name.

        " } }, "GroupIdentifier": { "base": "

        Describes a security group.

        ", "refs": { "GroupIdentifierList$member": null } }, "GroupIdentifierList": { "base": null, "refs": { "ClassicLinkInstance$Groups": "

        A list of security groups.

        ", "DescribeNetworkInterfaceAttributeResult$Groups": "

        The security groups associated with the network interface.

        ", "Instance$SecurityGroups": "

        One or more security groups for the instance.

        ", "InstanceAttribute$Groups": "

        The security groups associated with the instance.

        ", "InstanceNetworkInterface$Groups": "

        One or more security groups.

        ", "LaunchSpecification$SecurityGroups": "

        One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.

        ", "NetworkInterface$Groups": "

        Any security groups for the network interface.

        ", "Reservation$Groups": "

        [EC2-Classic only] One or more security groups.

        ", "SpotFleetLaunchSpecification$SecurityGroups": "

        One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.

        " } }, "GroupIds": { "base": null, "refs": { "DescribeSecurityGroupReferencesRequest$GroupId": "

        One or more security group IDs in your account.

        " } }, "GroupNameStringList": { "base": null, "refs": { "DescribeSecurityGroupsRequest$GroupNames": "

        [EC2-Classic and default VPC only] One or more security group names. You can specify either the security group name or the security group ID. For security groups in a nondefault VPC, use the group-name filter to describe security groups by name.

        Default: Describes all your security groups.

        ", "ModifySnapshotAttributeRequest$GroupNames": "

        The group to modify for the snapshot.

        " } }, "HistoryRecord": { "base": "

        Describes an event in the history of the Spot fleet request.

        ", "refs": { "HistoryRecords$member": null } }, "HistoryRecords": { "base": null, "refs": { "DescribeSpotFleetRequestHistoryResponse$HistoryRecords": "

        Information about the events in the history of the Spot fleet request.

        " } }, "Host": { "base": "

        Describes the properties of the Dedicated host.

        ", "refs": { "HostList$member": null } }, "HostInstance": { "base": "

        Describes an instance running on a Dedicated host.

        ", "refs": { "HostInstanceList$member": null } }, "HostInstanceList": { "base": null, "refs": { "Host$Instances": "

        The IDs and instance type that are currently running on the Dedicated host.

        " } }, "HostList": { "base": null, "refs": { "DescribeHostsResult$Hosts": "

        Information about the Dedicated hosts.

        " } }, "HostProperties": { "base": "

        Describes properties of a Dedicated host.

        ", "refs": { "Host$HostProperties": "

        The hardware specifications of the Dedicated host.

        " } }, "HostTenancy": { "base": null, "refs": { "ModifyInstancePlacementRequest$Tenancy": "

        The tenancy of the instance that you are modifying.

        " } }, "HypervisorType": { "base": null, "refs": { "Image$Hypervisor": "

        The hypervisor type of the image.

        ", "Instance$Hypervisor": "

        The hypervisor type of the instance.

        " } }, "IamInstanceProfile": { "base": "

        Describes an IAM instance profile.

        ", "refs": { "Instance$IamInstanceProfile": "

        The IAM instance profile associated with the instance, if applicable.

        " } }, "IamInstanceProfileSpecification": { "base": "

        Describes an IAM instance profile.

        ", "refs": { "LaunchSpecification$IamInstanceProfile": "

        The IAM instance profile.

        ", "RequestSpotLaunchSpecification$IamInstanceProfile": "

        The IAM instance profile.

        ", "RunInstancesRequest$IamInstanceProfile": "

        The IAM instance profile.

        ", "SpotFleetLaunchSpecification$IamInstanceProfile": "

        The IAM instance profile.

        " } }, "IcmpTypeCode": { "base": "

        Describes the ICMP type and code.

        ", "refs": { "CreateNetworkAclEntryRequest$IcmpTypeCode": "

        ICMP protocol: The ICMP type and code. Required if specifying ICMP for the protocol.

        ", "NetworkAclEntry$IcmpTypeCode": "

        ICMP protocol: The ICMP type and code.

        ", "ReplaceNetworkAclEntryRequest$IcmpTypeCode": "

        ICMP protocol: The ICMP type and code. Required if specifying 1 (ICMP) for the protocol.

        " } }, "IdFormat": { "base": "

        Describes the ID format for a resource.

        ", "refs": { "IdFormatList$member": null } }, "IdFormatList": { "base": null, "refs": { "DescribeIdFormatResult$Statuses": "

        Information about the ID format for the resource.

        " } }, "Image": { "base": "

        Describes an image.

        ", "refs": { "ImageList$member": null } }, "ImageAttribute": { "base": "

        Describes an image attribute.

        ", "refs": { } }, "ImageAttributeName": { "base": null, "refs": { "DescribeImageAttributeRequest$Attribute": "

        The AMI attribute.

        Note: Depending on your account privileges, the blockDeviceMapping attribute may return a Client.AuthFailure error. If this happens, use DescribeImages to get information about the block device mapping for the AMI.

        " } }, "ImageDiskContainer": { "base": "

        Describes the disk container object for an import image task.

        ", "refs": { "ImageDiskContainerList$member": null } }, "ImageDiskContainerList": { "base": null, "refs": { "ImportImageRequest$DiskContainers": "

        Information about the disk containers.

        " } }, "ImageIdStringList": { "base": null, "refs": { "DescribeImagesRequest$ImageIds": "

        One or more image IDs.

        Default: Describes all images available to you.

        " } }, "ImageList": { "base": null, "refs": { "DescribeImagesResult$Images": "

        Information about one or more images.

        " } }, "ImageState": { "base": null, "refs": { "Image$State": "

        The current state of the AMI. If the state is available, the image is successfully registered and can be used to launch an instance.

        " } }, "ImageTypeValues": { "base": null, "refs": { "Image$ImageType": "

        The type of image.

        " } }, "ImportImageRequest": { "base": "

        Contains the parameters for ImportImage.

        ", "refs": { } }, "ImportImageResult": { "base": "

        Contains the output for ImportImage.

        ", "refs": { } }, "ImportImageTask": { "base": "

        Describes an import image task.

        ", "refs": { "ImportImageTaskList$member": null } }, "ImportImageTaskList": { "base": null, "refs": { "DescribeImportImageTasksResult$ImportImageTasks": "

        A list of zero or more import image tasks that are currently active or were completed or canceled in the previous 7 days.

        " } }, "ImportInstanceLaunchSpecification": { "base": "

        Describes the launch specification for VM import.

        ", "refs": { "ImportInstanceRequest$LaunchSpecification": "

        The launch specification.

        " } }, "ImportInstanceRequest": { "base": "

        Contains the parameters for ImportInstance.

        ", "refs": { } }, "ImportInstanceResult": { "base": "

        Contains the output for ImportInstance.

        ", "refs": { } }, "ImportInstanceTaskDetails": { "base": "

        Describes an import instance task.

        ", "refs": { "ConversionTask$ImportInstance": "

        If the task is for importing an instance, this contains information about the import instance task.

        " } }, "ImportInstanceVolumeDetailItem": { "base": "

        Describes an import volume task.

        ", "refs": { "ImportInstanceVolumeDetailSet$member": null } }, "ImportInstanceVolumeDetailSet": { "base": null, "refs": { "ImportInstanceTaskDetails$Volumes": "

        One or more volumes.

        " } }, "ImportKeyPairRequest": { "base": "

        Contains the parameters for ImportKeyPair.

        ", "refs": { } }, "ImportKeyPairResult": { "base": "

        Contains the output of ImportKeyPair.

        ", "refs": { } }, "ImportSnapshotRequest": { "base": "

        Contains the parameters for ImportSnapshot.

        ", "refs": { } }, "ImportSnapshotResult": { "base": "

        Contains the output for ImportSnapshot.

        ", "refs": { } }, "ImportSnapshotTask": { "base": "

        Describes an import snapshot task.

        ", "refs": { "ImportSnapshotTaskList$member": null } }, "ImportSnapshotTaskList": { "base": null, "refs": { "DescribeImportSnapshotTasksResult$ImportSnapshotTasks": "

        A list of zero or more import snapshot tasks that are currently active or were completed or canceled in the previous 7 days.

        " } }, "ImportTaskIdList": { "base": null, "refs": { "DescribeImportImageTasksRequest$ImportTaskIds": "

        A list of import image task IDs.

        ", "DescribeImportSnapshotTasksRequest$ImportTaskIds": "

        A list of import snapshot task IDs.

        " } }, "ImportVolumeRequest": { "base": "

        Contains the parameters for ImportVolume.

        ", "refs": { } }, "ImportVolumeResult": { "base": "

        Contains the output for ImportVolume.

        ", "refs": { } }, "ImportVolumeTaskDetails": { "base": "

        Describes an import volume task.

        ", "refs": { "ConversionTask$ImportVolume": "

        If the task is for importing a volume, this contains information about the import volume task.

        " } }, "Instance": { "base": "

        Describes an instance.

        ", "refs": { "InstanceList$member": null } }, "InstanceAttribute": { "base": "

        Describes an instance attribute.

        ", "refs": { } }, "InstanceAttributeName": { "base": null, "refs": { "DescribeInstanceAttributeRequest$Attribute": "

        The instance attribute.

        ", "ModifyInstanceAttributeRequest$Attribute": "

        The name of the attribute.

        ", "ResetInstanceAttributeRequest$Attribute": "

        The attribute to reset.

        You can only reset the following attributes: kernel | ramdisk | sourceDestCheck. To change an instance attribute, use ModifyInstanceAttribute.

        " } }, "InstanceBlockDeviceMapping": { "base": "

        Describes a block device mapping.

        ", "refs": { "InstanceBlockDeviceMappingList$member": null } }, "InstanceBlockDeviceMappingList": { "base": null, "refs": { "Instance$BlockDeviceMappings": "

        Any block device mapping entries for the instance.

        ", "InstanceAttribute$BlockDeviceMappings": "

        The block device mapping of the instance.

        " } }, "InstanceBlockDeviceMappingSpecification": { "base": "

        Describes a block device mapping entry.

        ", "refs": { "InstanceBlockDeviceMappingSpecificationList$member": null } }, "InstanceBlockDeviceMappingSpecificationList": { "base": null, "refs": { "ModifyInstanceAttributeRequest$BlockDeviceMappings": "

        Modifies the DeleteOnTermination attribute for volumes that are currently attached. The volume must be owned by the caller. If no value is specified for DeleteOnTermination, the default is true and the volume is deleted when the instance is terminated.

        To add instance store volumes to an Amazon EBS-backed instance, you must add them when you launch the instance. For more information, see Updating the Block Device Mapping when Launching an Instance in the Amazon Elastic Compute Cloud User Guide.

        " } }, "InstanceCapacity": { "base": "

        Information about the instance type that the Dedicated host supports.

        ", "refs": { "AvailableInstanceCapacityList$member": null } }, "InstanceCount": { "base": "

        Describes a Reserved Instance listing state.

        ", "refs": { "InstanceCountList$member": null } }, "InstanceCountList": { "base": null, "refs": { "ReservedInstancesListing$InstanceCounts": "

        The number of instances in this state.

        " } }, "InstanceExportDetails": { "base": "

        Describes an instance to export.

        ", "refs": { "ExportTask$InstanceExportDetails": "

        Information about the instance to export.

        " } }, "InstanceIdSet": { "base": null, "refs": { "RunScheduledInstancesResult$InstanceIdSet": "

        The IDs of the newly launched instances.

        " } }, "InstanceIdStringList": { "base": null, "refs": { "DescribeClassicLinkInstancesRequest$InstanceIds": "

        One or more instance IDs. Must be instances linked to a VPC through ClassicLink.

        ", "DescribeInstanceStatusRequest$InstanceIds": "

        One or more instance IDs.

        Default: Describes all your instances.

        Constraints: Maximum 100 explicitly specified instance IDs.

        ", "DescribeInstancesRequest$InstanceIds": "

        One or more instance IDs.

        Default: Describes all your instances.

        ", "MonitorInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "RebootInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "ReportInstanceStatusRequest$Instances": "

        One or more instances.

        ", "StartInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "StopInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "TerminateInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "UnmonitorInstancesRequest$InstanceIds": "

        One or more instance IDs.

        " } }, "InstanceLifecycleType": { "base": null, "refs": { "Instance$InstanceLifecycle": "

        Indicates whether this is a Spot instance or a Scheduled Instance.

        " } }, "InstanceList": { "base": null, "refs": { "Reservation$Instances": "

        One or more instances.

        " } }, "InstanceMonitoring": { "base": "

        Describes the monitoring information of the instance.

        ", "refs": { "InstanceMonitoringList$member": null } }, "InstanceMonitoringList": { "base": null, "refs": { "MonitorInstancesResult$InstanceMonitorings": "

        Monitoring information for one or more instances.

        ", "UnmonitorInstancesResult$InstanceMonitorings": "

        Monitoring information for one or more instances.

        " } }, "InstanceNetworkInterface": { "base": "

        Describes a network interface.

        ", "refs": { "InstanceNetworkInterfaceList$member": null } }, "InstanceNetworkInterfaceAssociation": { "base": "

        Describes association information for an Elastic IP address.

        ", "refs": { "InstanceNetworkInterface$Association": "

        The association information for an Elastic IP associated with the network interface.

        ", "InstancePrivateIpAddress$Association": "

        The association information for an Elastic IP address for the network interface.

        " } }, "InstanceNetworkInterfaceAttachment": { "base": "

        Describes a network interface attachment.

        ", "refs": { "InstanceNetworkInterface$Attachment": "

        The network interface attachment.

        " } }, "InstanceNetworkInterfaceList": { "base": null, "refs": { "Instance$NetworkInterfaces": "

        [EC2-VPC] One or more network interfaces for the instance.

        " } }, "InstanceNetworkInterfaceSpecification": { "base": "

        Describes a network interface.

        ", "refs": { "InstanceNetworkInterfaceSpecificationList$member": null } }, "InstanceNetworkInterfaceSpecificationList": { "base": null, "refs": { "LaunchSpecification$NetworkInterfaces": "

        One or more network interfaces.

        ", "RequestSpotLaunchSpecification$NetworkInterfaces": "

        One or more network interfaces.

        ", "RunInstancesRequest$NetworkInterfaces": "

        One or more network interfaces.

        ", "SpotFleetLaunchSpecification$NetworkInterfaces": "

        One or more network interfaces.

        " } }, "InstancePrivateIpAddress": { "base": "

        Describes a private IP address.

        ", "refs": { "InstancePrivateIpAddressList$member": null } }, "InstancePrivateIpAddressList": { "base": null, "refs": { "InstanceNetworkInterface$PrivateIpAddresses": "

        The private IP addresses associated with the network interface.

        " } }, "InstanceState": { "base": "

        Describes the current state of the instance.

        ", "refs": { "Instance$State": "

        The current state of the instance.

        ", "InstanceStateChange$CurrentState": "

        The current state of the instance.

        ", "InstanceStateChange$PreviousState": "

        The previous state of the instance.

        ", "InstanceStatus$InstanceState": "

        The intended state of the instance. DescribeInstanceStatus requires that an instance be in the running state.

        " } }, "InstanceStateChange": { "base": "

        Describes an instance state change.

        ", "refs": { "InstanceStateChangeList$member": null } }, "InstanceStateChangeList": { "base": null, "refs": { "StartInstancesResult$StartingInstances": "

        Information about one or more started instances.

        ", "StopInstancesResult$StoppingInstances": "

        Information about one or more stopped instances.

        ", "TerminateInstancesResult$TerminatingInstances": "

        Information about one or more terminated instances.

        " } }, "InstanceStateName": { "base": null, "refs": { "InstanceState$Name": "

        The current state of the instance.

        " } }, "InstanceStatus": { "base": "

        Describes the status of an instance.

        ", "refs": { "InstanceStatusList$member": null } }, "InstanceStatusDetails": { "base": "

        Describes the instance status.

        ", "refs": { "InstanceStatusDetailsList$member": null } }, "InstanceStatusDetailsList": { "base": null, "refs": { "InstanceStatusSummary$Details": "

        The system instance health or application instance health.

        " } }, "InstanceStatusEvent": { "base": "

        Describes a scheduled event for an instance.

        ", "refs": { "InstanceStatusEventList$member": null } }, "InstanceStatusEventList": { "base": null, "refs": { "InstanceStatus$Events": "

        Any scheduled events associated with the instance.

        " } }, "InstanceStatusList": { "base": null, "refs": { "DescribeInstanceStatusResult$InstanceStatuses": "

        One or more instance status descriptions.

        " } }, "InstanceStatusSummary": { "base": "

        Describes the status of an instance.

        ", "refs": { "InstanceStatus$SystemStatus": "

        Reports impaired functionality that stems from issues related to the systems that support an instance, such as hardware failures and network connectivity problems.

        ", "InstanceStatus$InstanceStatus": "

        Reports impaired functionality that stems from issues internal to the instance, such as impaired reachability.

        " } }, "InstanceType": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$InstanceType": "

        The instance type that the reservation will cover (for example, m1.small). For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide.

        ", "ImportInstanceLaunchSpecification$InstanceType": "

        The instance type. For more information about the instance types that you can import, see Before You Get Started in the Amazon Elastic Compute Cloud User Guide.

        ", "Instance$InstanceType": "

        The instance type.

        ", "InstanceTypeList$member": null, "LaunchSpecification$InstanceType": "

        The instance type.

        ", "RequestSpotLaunchSpecification$InstanceType": "

        The instance type.

        ", "ReservedInstances$InstanceType": "

        The instance type on which the Reserved Instance can be used.

        ", "ReservedInstancesConfiguration$InstanceType": "

        The instance type for the modified Reserved Instances.

        ", "ReservedInstancesOffering$InstanceType": "

        The instance type on which the Reserved Instance can be used.

        ", "RunInstancesRequest$InstanceType": "

        The instance type. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide.

        Default: m1.small

        ", "SpotFleetLaunchSpecification$InstanceType": "

        The instance type.

        ", "SpotPrice$InstanceType": "

        The instance type.

        " } }, "InstanceTypeList": { "base": null, "refs": { "DescribeSpotPriceHistoryRequest$InstanceTypes": "

        Filters the results by the specified instance types.

        " } }, "Integer": { "base": null, "refs": { "AllocateHostsRequest$Quantity": "

        The number of Dedicated hosts you want to allocate to your account with these parameters.

        ", "AssignPrivateIpAddressesRequest$SecondaryPrivateIpAddressCount": "

        The number of secondary IP addresses to assign to the network interface. You can't specify this parameter when also specifying private IP addresses.

        ", "AttachNetworkInterfaceRequest$DeviceIndex": "

        The index of the device for the network interface attachment.

        ", "AuthorizeSecurityGroupEgressRequest$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. We recommend that you specify the port range in a set of IP permissions instead.

        ", "AuthorizeSecurityGroupEgressRequest$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP type number. We recommend that you specify the port range in a set of IP permissions instead.

        ", "AuthorizeSecurityGroupIngressRequest$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. For the ICMP type number, use -1 to specify all ICMP types.

        ", "AuthorizeSecurityGroupIngressRequest$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP code number. For the ICMP code number, use -1 to specify all ICMP codes for the ICMP type.

        ", "AvailableCapacity$AvailableVCpus": "

        The number of vCPUs available on the Dedicated host.

        ", "CreateCustomerGatewayRequest$BgpAsn": "

        For devices that support BGP, the customer gateway's BGP ASN.

        Default: 65000

        ", "CreateNetworkAclEntryRequest$RuleNumber": "

        The rule number for the entry (for example, 100). ACL entries are processed in ascending order by rule number.

        Constraints: Positive integer from 1 to 32766. The range 32767 to 65535 is reserved for internal use.

        ", "CreateNetworkInterfaceRequest$SecondaryPrivateIpAddressCount": "

        The number of secondary private IP addresses to assign to a network interface. When you specify a number of secondary IP addresses, Amazon EC2 selects these IP addresses within the subnet range. You can't specify this option and specify more than one private IP address using privateIpAddresses.

        The number of IP addresses you can assign to a network interface varies by instance type. For more information, see Private IP Addresses Per ENI Per Instance Type in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateReservedInstancesListingRequest$InstanceCount": "

        The number of instances that are a part of a Reserved Instance account to be listed in the Reserved Instance Marketplace. This number should be less than or equal to the instance count associated with the Reserved Instance ID specified in this call.

        ", "CreateVolumeRequest$Size": "

        The size of the volume, in GiBs.

        Constraints: 1-16384 for gp2, 4-16384 for io1, 500-16384 for st1, 500-16384 for sc1, and 1-1024 for standard. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size.

        Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

        ", "CreateVolumeRequest$Iops": "

        Only valid for Provisioned IOPS SSD volumes. The number of I/O operations per second (IOPS) to provision for the volume, with a maximum ratio of 30 IOPS/GiB.

        Constraint: Range is 100 to 20000 for Provisioned IOPS SSD volumes

        ", "DeleteNetworkAclEntryRequest$RuleNumber": "

        The rule number of the entry to delete.

        ", "DescribeClassicLinkInstancesRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. You cannot specify this parameter and the instance IDs parameter in the same request.

        Constraint: If the value is greater than 1000, we return only 1000 items.

        ", "DescribeFlowLogsRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. You cannot specify this parameter and the flow log IDs parameter in the same request.

        ", "DescribeHostsRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500; if maxResults is given a larger value than 500, you will receive an error. You cannot specify this parameter and the host IDs parameter in the same request.

        ", "DescribeImportImageTasksRequest$MaxResults": "

        The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeImportSnapshotTasksRequest$MaxResults": "

        The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeInstanceStatusRequest$MaxResults": "

        The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. This value can be between 5 and 1000. You cannot specify this parameter and the instance IDs parameter in the same call.

        ", "DescribeInstancesRequest$MaxResults": "

        The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. This value can be between 5 and 1000. You cannot specify this parameter and the instance IDs parameter or tag filters in the same call.

        ", "DescribeMovingAddressesRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value outside of this range, an error is returned.

        Default: If no value is provided, the default is 1000.

        ", "DescribeNatGatewaysRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        Constraint: If the value specified is greater than 1000, we return only 1000 items.

        ", "DescribePrefixListsRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        Constraint: If the value specified is greater than 1000, we return only 1000 items.

        ", "DescribeReservedInstancesOfferingsRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. The maximum is 100.

        Default: 100

        ", "DescribeReservedInstancesOfferingsRequest$MaxInstanceCount": "

        The maximum number of instances to filter when searching for offerings.

        Default: 20

        ", "DescribeScheduledInstanceAvailabilityRequest$MinSlotDurationInHours": "

        The minimum available duration, in hours. The minimum required duration is 1,200 hours per year. For example, the minimum daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the minimum monthly schedule is 100 hours.

        ", "DescribeScheduledInstanceAvailabilityRequest$MaxSlotDurationInHours": "

        The maximum available duration, in hours. This value must be greater than MinSlotDurationInHours and less than 1,720.

        ", "DescribeScheduledInstanceAvailabilityRequest$MaxResults": "

        The maximum number of results to return in a single call. This value can be between 5 and 300. The default value is 300. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeScheduledInstancesRequest$MaxResults": "

        The maximum number of results to return in a single call. This value can be between 5 and 300. The default value is 100. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeSnapshotsRequest$MaxResults": "

        The maximum number of snapshot results returned by DescribeSnapshots in paginated output. When this parameter is used, DescribeSnapshots only returns MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another DescribeSnapshots request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. If this parameter is not used, then DescribeSnapshots returns all results. You cannot specify this parameter and the snapshot IDs parameter in the same request.

        ", "DescribeSpotFleetInstancesRequest$MaxResults": "

        The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeSpotFleetRequestHistoryRequest$MaxResults": "

        The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeSpotFleetRequestsRequest$MaxResults": "

        The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeSpotPriceHistoryRequest$MaxResults": "

        The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeTagsRequest$MaxResults": "

        The maximum number of results to return in a single call. This value can be between 5 and 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeVolumeStatusRequest$MaxResults": "

        The maximum number of volume results returned by DescribeVolumeStatus in paginated output. When this parameter is used, the request only returns MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. If this parameter is not used, then DescribeVolumeStatus returns all results. You cannot specify this parameter and the volume IDs parameter in the same request.

        ", "DescribeVolumesRequest$MaxResults": "

        The maximum number of volume results returned by DescribeVolumes in paginated output. When this parameter is used, DescribeVolumes only returns MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another DescribeVolumes request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. If this parameter is not used, then DescribeVolumes returns all results. You cannot specify this parameter and the volume IDs parameter in the same request.

        ", "DescribeVpcEndpointServicesRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        Constraint: If the value is greater than 1000, we return only 1000 items.

        ", "DescribeVpcEndpointsRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        Constraint: If the value is greater than 1000, we return only 1000 items.

        ", "EbsBlockDevice$VolumeSize": "

        The size of the volume, in GiB.

        Constraints: 1-16384 for General Purpose SSD (gp2), 4-16384 for Provisioned IOPS SSD (io1), 500-16384 for Throughput Optimized HDD (st1), 500-16384 for Cold HDD (sc1), and 1-1024 for Magnetic (standard) volumes. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size.

        Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

        ", "EbsBlockDevice$Iops": "

        The number of I/O operations per second (IOPS) that the volume supports. For io1, this represents the number of IOPS that are provisioned for the volume. For gp2, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information on General Purpose SSD baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

        Constraint: Range is 100-20000 IOPS for io1 volumes and 100-10000 IOPS for gp2 volumes.

        Condition: This parameter is required for requests to create io1 volumes; it is not used in requests to create gp2, st1, sc1, or standard volumes.

        ", "HostProperties$Sockets": "

        The number of sockets on the Dedicated host.

        ", "HostProperties$Cores": "

        The number of cores on the Dedicated host.

        ", "HostProperties$TotalVCpus": "

        The number of vCPUs on the Dedicated host.

        ", "IcmpTypeCode$Type": "

        The ICMP code. A value of -1 means all codes for the specified ICMP type.

        ", "IcmpTypeCode$Code": "

        The ICMP type. A value of -1 means all types.

        ", "Instance$AmiLaunchIndex": "

        The AMI launch index, which can be used to find this instance in the launch group.

        ", "InstanceCapacity$AvailableCapacity": "

        The number of instances that can still be launched onto the Dedicated host.

        ", "InstanceCapacity$TotalCapacity": "

        The total number of instances that can be launched onto the Dedicated host.

        ", "InstanceCount$InstanceCount": "

        The number of listed Reserved Instances in the state specified by the state.

        ", "InstanceNetworkInterfaceAttachment$DeviceIndex": "

        The index of the device on the instance for the network interface attachment.

        ", "InstanceNetworkInterfaceSpecification$DeviceIndex": "

        The index of the device on the instance for the network interface attachment. If you are specifying a network interface in a RunInstances request, you must provide the device index.

        ", "InstanceNetworkInterfaceSpecification$SecondaryPrivateIpAddressCount": "

        The number of secondary private IP addresses. You can't specify this option and specify more than one private IP address using the private IP addresses option.

        ", "InstanceState$Code": "

        The low byte represents the state. The high byte is an opaque internal value and should be ignored.

        • 0 : pending

        • 16 : running

        • 32 : shutting-down

        • 48 : terminated

        • 64 : stopping

        • 80 : stopped

        ", "IpPermission$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. A value of -1 indicates all ICMP types.

        ", "IpPermission$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP code. A value of -1 indicates all ICMP codes for the specified ICMP type.

        ", "ModifySpotFleetRequestRequest$TargetCapacity": "

        The size of the fleet.

        ", "NetworkAclEntry$RuleNumber": "

        The rule number for the entry. ACL entries are processed in ascending order by rule number.

        ", "NetworkInterfaceAttachment$DeviceIndex": "

        The device index of the network interface attachment on the instance.

        ", "OccurrenceDayRequestSet$member": null, "OccurrenceDaySet$member": null, "PortRange$From": "

        The first port in the range.

        ", "PortRange$To": "

        The last port in the range.

        ", "PricingDetail$Count": "

        The number of reservations available for the price.

        ", "PurchaseRequest$InstanceCount": "

        The number of instances.

        ", "PurchaseReservedInstancesOfferingRequest$InstanceCount": "

        The number of Reserved Instances to purchase.

        ", "ReplaceNetworkAclEntryRequest$RuleNumber": "

        The rule number of the entry to replace.

        ", "RequestSpotInstancesRequest$InstanceCount": "

        The maximum number of Spot instances to launch.

        Default: 1

        ", "RequestSpotInstancesRequest$BlockDurationMinutes": "

        The required duration for the Spot instances (also known as Spot blocks), in minutes. This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360).

        The duration period starts as soon as your Spot instance receives its instance ID. At the end of the duration period, Amazon EC2 marks the Spot instance for termination and provides a Spot instance termination notice, which gives the instance a two-minute warning before it terminates.

        Note that you can't specify an Availability Zone group or a launch group if you specify a duration.

        ", "ReservedInstances$InstanceCount": "

        The number of reservations purchased.

        ", "ReservedInstancesConfiguration$InstanceCount": "

        The number of modified Reserved Instances.

        ", "RevokeSecurityGroupEgressRequest$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. We recommend that you specify the port range in a set of IP permissions instead.

        ", "RevokeSecurityGroupEgressRequest$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP type number. We recommend that you specify the port range in a set of IP permissions instead.

        ", "RevokeSecurityGroupIngressRequest$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. For the ICMP type number, use -1 to specify all ICMP types.

        ", "RevokeSecurityGroupIngressRequest$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP code number. For the ICMP code number, use -1 to specify all ICMP codes for the ICMP type.

        ", "RunInstancesRequest$MinCount": "

        The minimum number of instances to launch. If you specify a minimum that is more instances than Amazon EC2 can launch in the target Availability Zone, Amazon EC2 launches no instances.

        Constraints: Between 1 and the maximum number you're allowed for the specified instance type. For more information about the default limits, and how to request an increase, see How many instances can I run in Amazon EC2 in the Amazon EC2 General FAQ.

        ", "RunInstancesRequest$MaxCount": "

        The maximum number of instances to launch. If you specify more instances than Amazon EC2 can launch in the target Availability Zone, Amazon EC2 launches the largest possible number of instances above MinCount.

        Constraints: Between 1 and the maximum number you're allowed for the specified instance type. For more information about the default limits, and how to request an increase, see How many instances can I run in Amazon EC2 in the Amazon EC2 FAQ.

        ", "RunScheduledInstancesRequest$InstanceCount": "

        The number of instances.

        Default: 1

        ", "ScheduledInstance$SlotDurationInHours": "

        The number of hours in the schedule.

        ", "ScheduledInstance$TotalScheduledInstanceHours": "

        The total number of hours for a single instance for the entire term.

        ", "ScheduledInstance$InstanceCount": "

        The number of instances.

        ", "ScheduledInstanceAvailability$SlotDurationInHours": "

        The number of hours in the schedule.

        ", "ScheduledInstanceAvailability$TotalScheduledInstanceHours": "

        The total number of hours for a single instance for the entire term.

        ", "ScheduledInstanceAvailability$AvailableInstanceCount": "

        The number of available instances.

        ", "ScheduledInstanceAvailability$MinTermDurationInDays": "

        The minimum term. The only possible value is 365 days.

        ", "ScheduledInstanceAvailability$MaxTermDurationInDays": "

        The maximum term. The only possible value is 365 days.

        ", "ScheduledInstanceRecurrence$Interval": "

        The interval quantity. The interval unit depends on the value of frequency. For example, every 2 weeks or every 2 months.

        ", "ScheduledInstanceRecurrenceRequest$Interval": "

        The interval quantity. The interval unit depends on the value of Frequency. For example, every 2 weeks or every 2 months.

        ", "ScheduledInstancesEbs$VolumeSize": "

        The size of the volume, in GiB.

        Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

        ", "ScheduledInstancesEbs$Iops": "

        The number of I/O operations per second (IOPS) that the volume supports. For io1 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information about gp2 baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

        Constraint: Range is 100-20000 IOPS for io1 volumes and 100-10000 IOPS for gp2 volumes.

        Condition: This parameter is required for requests to create io1volumes; it is not used in requests to create gp2, st1, sc1, or standard volumes.

        ", "ScheduledInstancesNetworkInterface$DeviceIndex": "

        The index of the device for the network interface attachment.

        ", "ScheduledInstancesNetworkInterface$SecondaryPrivateIpAddressCount": "

        The number of secondary private IP addresses.

        ", "Snapshot$VolumeSize": "

        The size of the volume, in GiB.

        ", "SpotFleetRequestConfigData$TargetCapacity": "

        The number of units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O.

        ", "SpotInstanceRequest$BlockDurationMinutes": "

        The duration for the Spot instance, in minutes.

        ", "StaleIpPermission$FromPort": "

        The start of the port range for the TCP and UDP protocols, or an ICMP type number. A value of -1 indicates all ICMP types.

        ", "StaleIpPermission$ToPort": "

        The end of the port range for the TCP and UDP protocols, or an ICMP type number. A value of -1 indicates all ICMP types.

        ", "Subnet$AvailableIpAddressCount": "

        The number of unused IP addresses in the subnet. Note that the IP addresses for any stopped instances are considered unavailable.

        ", "VgwTelemetry$AcceptedRouteCount": "

        The number of accepted routes.

        ", "Volume$Size": "

        The size of the volume, in GiBs.

        ", "Volume$Iops": "

        The number of I/O operations per second (IOPS) that the volume supports. For Provisioned IOPS SSD volumes, this represents the number of IOPS that are provisioned for the volume. For General Purpose SSD volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information on General Purpose SSD baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

        Constraint: Range is 100-20000 IOPS for io1 volumes and 100-10000 IOPS for gp2 volumes.

        Condition: This parameter is required for requests to create io1 volumes; it is not used in requests to create gp2, st1, sc1, or standard volumes.

        " } }, "InternetGateway": { "base": "

        Describes an Internet gateway.

        ", "refs": { "CreateInternetGatewayResult$InternetGateway": "

        Information about the Internet gateway.

        ", "InternetGatewayList$member": null } }, "InternetGatewayAttachment": { "base": "

        Describes the attachment of a VPC to an Internet gateway.

        ", "refs": { "InternetGatewayAttachmentList$member": null } }, "InternetGatewayAttachmentList": { "base": null, "refs": { "InternetGateway$Attachments": "

        Any VPCs attached to the Internet gateway.

        " } }, "InternetGatewayList": { "base": null, "refs": { "DescribeInternetGatewaysResult$InternetGateways": "

        Information about one or more Internet gateways.

        " } }, "IpPermission": { "base": "

        Describes a security group rule.

        ", "refs": { "IpPermissionList$member": null } }, "IpPermissionList": { "base": null, "refs": { "AuthorizeSecurityGroupEgressRequest$IpPermissions": "

        A set of IP permissions. You can't specify a destination security group and a CIDR IP address range.

        ", "AuthorizeSecurityGroupIngressRequest$IpPermissions": "

        A set of IP permissions. Can be used to specify multiple rules in a single command.

        ", "RevokeSecurityGroupEgressRequest$IpPermissions": "

        A set of IP permissions. You can't specify a destination security group and a CIDR IP address range.

        ", "RevokeSecurityGroupIngressRequest$IpPermissions": "

        A set of IP permissions. You can't specify a source security group and a CIDR IP address range.

        ", "SecurityGroup$IpPermissions": "

        One or more inbound rules associated with the security group.

        ", "SecurityGroup$IpPermissionsEgress": "

        [EC2-VPC] One or more outbound rules associated with the security group.

        " } }, "IpRange": { "base": "

        Describes an IP range.

        ", "refs": { "IpRangeList$member": null } }, "IpRangeList": { "base": null, "refs": { "IpPermission$IpRanges": "

        One or more IP ranges.

        " } }, "IpRanges": { "base": null, "refs": { "StaleIpPermission$IpRanges": "

        One or more IP ranges. Not applicable for stale security group rules.

        " } }, "KeyNameStringList": { "base": null, "refs": { "DescribeKeyPairsRequest$KeyNames": "

        One or more key pair names.

        Default: Describes all your key pairs.

        " } }, "KeyPair": { "base": "

        Describes a key pair.

        ", "refs": { } }, "KeyPairInfo": { "base": "

        Describes a key pair.

        ", "refs": { "KeyPairList$member": null } }, "KeyPairList": { "base": null, "refs": { "DescribeKeyPairsResult$KeyPairs": "

        Information about one or more key pairs.

        " } }, "LaunchPermission": { "base": "

        Describes a launch permission.

        ", "refs": { "LaunchPermissionList$member": null } }, "LaunchPermissionList": { "base": null, "refs": { "ImageAttribute$LaunchPermissions": "

        One or more launch permissions.

        ", "LaunchPermissionModifications$Add": "

        The AWS account ID to add to the list of launch permissions for the AMI.

        ", "LaunchPermissionModifications$Remove": "

        The AWS account ID to remove from the list of launch permissions for the AMI.

        " } }, "LaunchPermissionModifications": { "base": "

        Describes a launch permission modification.

        ", "refs": { "ModifyImageAttributeRequest$LaunchPermission": "

        A launch permission modification.

        " } }, "LaunchSpecification": { "base": "

        Describes the launch specification for an instance.

        ", "refs": { "SpotInstanceRequest$LaunchSpecification": "

        Additional information for launching instances.

        " } }, "LaunchSpecsList": { "base": null, "refs": { "SpotFleetRequestConfigData$LaunchSpecifications": "

        Information about the launch specifications for the Spot fleet request.

        " } }, "ListingState": { "base": null, "refs": { "InstanceCount$State": "

        The states of the listed Reserved Instances.

        " } }, "ListingStatus": { "base": null, "refs": { "ReservedInstancesListing$Status": "

        The status of the Reserved Instance listing.

        " } }, "Long": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$MinDuration": "

        The minimum duration (in seconds) to filter when searching for offerings.

        Default: 2592000 (1 month)

        ", "DescribeReservedInstancesOfferingsRequest$MaxDuration": "

        The maximum duration (in seconds) to filter when searching for offerings.

        Default: 94608000 (3 years)

        ", "DiskImageDescription$Size": "

        The size of the disk image, in GiB.

        ", "DiskImageDetail$Bytes": "

        The size of the disk image, in GiB.

        ", "DiskImageVolumeDescription$Size": "

        The size of the volume, in GiB.

        ", "ImportInstanceVolumeDetailItem$BytesConverted": "

        The number of bytes converted so far.

        ", "ImportVolumeTaskDetails$BytesConverted": "

        The number of bytes converted so far.

        ", "PriceSchedule$Term": "

        The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.

        ", "PriceScheduleSpecification$Term": "

        The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.

        ", "ReservedInstances$Duration": "

        The duration of the Reserved Instance, in seconds.

        ", "ReservedInstancesOffering$Duration": "

        The duration of the Reserved Instance, in seconds.

        ", "VolumeDetail$Size": "

        The size of the volume, in GiB.

        " } }, "MaxResults": { "base": null, "refs": { "DescribeStaleSecurityGroupsRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        ", "DescribeVpcClassicLinkDnsSupportRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        " } }, "ModifyHostsRequest": { "base": "

        Contains the parameters for ModifyHosts.

        ", "refs": { } }, "ModifyHostsResult": { "base": "

        Contains the output of ModifyHosts.

        ", "refs": { } }, "ModifyIdFormatRequest": { "base": "

        Contains the parameters of ModifyIdFormat.

        ", "refs": { } }, "ModifyImageAttributeRequest": { "base": "

        Contains the parameters for ModifyImageAttribute.

        ", "refs": { } }, "ModifyInstanceAttributeRequest": { "base": "

        Contains the parameters for ModifyInstanceAttribute.

        ", "refs": { } }, "ModifyInstancePlacementRequest": { "base": "

        Contains the parameters for ModifyInstancePlacement.

        ", "refs": { } }, "ModifyInstancePlacementResult": { "base": "

        Contains the output of ModifyInstancePlacement.

        ", "refs": { } }, "ModifyNetworkInterfaceAttributeRequest": { "base": "

        Contains the parameters for ModifyNetworkInterfaceAttribute.

        ", "refs": { } }, "ModifyReservedInstancesRequest": { "base": "

        Contains the parameters for ModifyReservedInstances.

        ", "refs": { } }, "ModifyReservedInstancesResult": { "base": "

        Contains the output of ModifyReservedInstances.

        ", "refs": { } }, "ModifySnapshotAttributeRequest": { "base": "

        Contains the parameters for ModifySnapshotAttribute.

        ", "refs": { } }, "ModifySpotFleetRequestRequest": { "base": "

        Contains the parameters for ModifySpotFleetRequest.

        ", "refs": { } }, "ModifySpotFleetRequestResponse": { "base": "

        Contains the output of ModifySpotFleetRequest.

        ", "refs": { } }, "ModifySubnetAttributeRequest": { "base": "

        Contains the parameters for ModifySubnetAttribute.

        ", "refs": { } }, "ModifyVolumeAttributeRequest": { "base": "

        Contains the parameters for ModifyVolumeAttribute.

        ", "refs": { } }, "ModifyVpcAttributeRequest": { "base": "

        Contains the parameters for ModifyVpcAttribute.

        ", "refs": { } }, "ModifyVpcEndpointRequest": { "base": "

        Contains the parameters for ModifyVpcEndpoint.

        ", "refs": { } }, "ModifyVpcEndpointResult": { "base": "

        Contains the output of ModifyVpcEndpoint.

        ", "refs": { } }, "ModifyVpcPeeringConnectionOptionsRequest": { "base": null, "refs": { } }, "ModifyVpcPeeringConnectionOptionsResult": { "base": null, "refs": { } }, "MonitorInstancesRequest": { "base": "

        Contains the parameters for MonitorInstances.

        ", "refs": { } }, "MonitorInstancesResult": { "base": "

        Contains the output of MonitorInstances.

        ", "refs": { } }, "Monitoring": { "base": "

        Describes the monitoring for the instance.

        ", "refs": { "Instance$Monitoring": "

        The monitoring information for the instance.

        ", "InstanceMonitoring$Monitoring": "

        The monitoring information.

        " } }, "MonitoringState": { "base": null, "refs": { "Monitoring$State": "

        Indicates whether monitoring is enabled for the instance.

        " } }, "MoveAddressToVpcRequest": { "base": "

        Contains the parameters for MoveAddressToVpc.

        ", "refs": { } }, "MoveAddressToVpcResult": { "base": "

        Contains the output of MoveAddressToVpc.

        ", "refs": { } }, "MoveStatus": { "base": null, "refs": { "MovingAddressStatus$MoveStatus": "

        The status of the Elastic IP address that's being moved to the EC2-VPC platform, or restored to the EC2-Classic platform.

        " } }, "MovingAddressStatus": { "base": "

        Describes the status of a moving Elastic IP address.

        ", "refs": { "MovingAddressStatusSet$member": null } }, "MovingAddressStatusSet": { "base": null, "refs": { "DescribeMovingAddressesResult$MovingAddressStatuses": "

        The status for each Elastic IP address.

        " } }, "NatGateway": { "base": "

        Describes a NAT gateway.

        ", "refs": { "CreateNatGatewayResult$NatGateway": "

        Information about the NAT gateway.

        ", "NatGatewayList$member": null } }, "NatGatewayAddress": { "base": "

        Describes the IP addresses and network interface associated with a NAT gateway.

        ", "refs": { "NatGatewayAddressList$member": null } }, "NatGatewayAddressList": { "base": null, "refs": { "NatGateway$NatGatewayAddresses": "

        Information about the IP addresses and network interface associated with the NAT gateway.

        " } }, "NatGatewayList": { "base": null, "refs": { "DescribeNatGatewaysResult$NatGateways": "

        Information about the NAT gateways.

        " } }, "NatGatewayState": { "base": null, "refs": { "NatGateway$State": "

        The state of the NAT gateway.

        • pending: The NAT gateway is being created and is not ready to process traffic.

        • failed: The NAT gateway could not be created. Check the failureCode and failureMessage fields for the reason.

        • available: The NAT gateway is able to process traffic. This status remains until you delete the NAT gateway, and does not indicate the health of the NAT gateway.

        • deleting: The NAT gateway is in the process of being terminated and may still be processing traffic.

        • deleted: The NAT gateway has been terminated and is no longer processing traffic.

        " } }, "NetworkAcl": { "base": "

        Describes a network ACL.

        ", "refs": { "CreateNetworkAclResult$NetworkAcl": "

        Information about the network ACL.

        ", "NetworkAclList$member": null } }, "NetworkAclAssociation": { "base": "

        Describes an association between a network ACL and a subnet.

        ", "refs": { "NetworkAclAssociationList$member": null } }, "NetworkAclAssociationList": { "base": null, "refs": { "NetworkAcl$Associations": "

        Any associations between the network ACL and one or more subnets

        " } }, "NetworkAclEntry": { "base": "

        Describes an entry in a network ACL.

        ", "refs": { "NetworkAclEntryList$member": null } }, "NetworkAclEntryList": { "base": null, "refs": { "NetworkAcl$Entries": "

        One or more entries (rules) in the network ACL.

        " } }, "NetworkAclList": { "base": null, "refs": { "DescribeNetworkAclsResult$NetworkAcls": "

        Information about one or more network ACLs.

        " } }, "NetworkInterface": { "base": "

        Describes a network interface.

        ", "refs": { "CreateNetworkInterfaceResult$NetworkInterface": "

        Information about the network interface.

        ", "NetworkInterfaceList$member": null } }, "NetworkInterfaceAssociation": { "base": "

        Describes association information for an Elastic IP address.

        ", "refs": { "NetworkInterface$Association": "

        The association information for an Elastic IP associated with the network interface.

        ", "NetworkInterfacePrivateIpAddress$Association": "

        The association information for an Elastic IP address associated with the network interface.

        " } }, "NetworkInterfaceAttachment": { "base": "

        Describes a network interface attachment.

        ", "refs": { "DescribeNetworkInterfaceAttributeResult$Attachment": "

        The attachment (if any) of the network interface.

        ", "NetworkInterface$Attachment": "

        The network interface attachment.

        " } }, "NetworkInterfaceAttachmentChanges": { "base": "

        Describes an attachment change.

        ", "refs": { "ModifyNetworkInterfaceAttributeRequest$Attachment": "

        Information about the interface attachment. If modifying the 'delete on termination' attribute, you must specify the ID of the interface attachment.

        " } }, "NetworkInterfaceAttribute": { "base": null, "refs": { "DescribeNetworkInterfaceAttributeRequest$Attribute": "

        The attribute of the network interface.

        " } }, "NetworkInterfaceIdList": { "base": null, "refs": { "DescribeNetworkInterfacesRequest$NetworkInterfaceIds": "

        One or more network interface IDs.

        Default: Describes all your network interfaces.

        " } }, "NetworkInterfaceList": { "base": null, "refs": { "DescribeNetworkInterfacesResult$NetworkInterfaces": "

        Information about one or more network interfaces.

        " } }, "NetworkInterfacePrivateIpAddress": { "base": "

        Describes the private IP address of a network interface.

        ", "refs": { "NetworkInterfacePrivateIpAddressList$member": null } }, "NetworkInterfacePrivateIpAddressList": { "base": null, "refs": { "NetworkInterface$PrivateIpAddresses": "

        The private IP addresses associated with the network interface.

        " } }, "NetworkInterfaceStatus": { "base": null, "refs": { "InstanceNetworkInterface$Status": "

        The status of the network interface.

        ", "NetworkInterface$Status": "

        The status of the network interface.

        " } }, "NetworkInterfaceType": { "base": null, "refs": { "NetworkInterface$InterfaceType": "

        The type of interface.

        " } }, "NewDhcpConfiguration": { "base": null, "refs": { "NewDhcpConfigurationList$member": null } }, "NewDhcpConfigurationList": { "base": null, "refs": { "CreateDhcpOptionsRequest$DhcpConfigurations": "

        A DHCP configuration option.

        " } }, "NextToken": { "base": null, "refs": { "DescribeStaleSecurityGroupsRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a prior call.)

        ", "DescribeVpcClassicLinkDnsSupportRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a prior call.)

        ", "DescribeVpcClassicLinkDnsSupportResult$NextToken": "

        The token to use when requesting the next set of items.

        " } }, "OccurrenceDayRequestSet": { "base": null, "refs": { "ScheduledInstanceRecurrenceRequest$OccurrenceDays": "

        The days. For a monthly schedule, this is one or more days of the month (1-31). For a weekly schedule, this is one or more days of the week (1-7, where 1 is Sunday). You can't specify this value with a daily schedule. If the occurrence is relative to the end of the month, you can specify only a single day.

        " } }, "OccurrenceDaySet": { "base": null, "refs": { "ScheduledInstanceRecurrence$OccurrenceDaySet": "

        The days. For a monthly schedule, this is one or more days of the month (1-31). For a weekly schedule, this is one or more days of the week (1-7, where 1 is Sunday).

        " } }, "OfferingTypeValues": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$OfferingType": "

        The Reserved Instance offering type. If you are using tools that predate the 2011-11-01 API version, you only have access to the Medium Utilization Reserved Instance offering type.

        ", "DescribeReservedInstancesRequest$OfferingType": "

        The Reserved Instance offering type. If you are using tools that predate the 2011-11-01 API version, you only have access to the Medium Utilization Reserved Instance offering type.

        ", "ReservedInstances$OfferingType": "

        The Reserved Instance offering type.

        ", "ReservedInstancesOffering$OfferingType": "

        The Reserved Instance offering type.

        " } }, "OperationType": { "base": null, "refs": { "ModifyImageAttributeRequest$OperationType": "

        The operation type.

        ", "ModifySnapshotAttributeRequest$OperationType": "

        The type of operation to perform to the attribute.

        " } }, "OwnerStringList": { "base": null, "refs": { "DescribeImagesRequest$Owners": "

        Filters the images by the owner. Specify an AWS account ID, amazon (owner is Amazon), aws-marketplace (owner is AWS Marketplace), self (owner is the sender of the request). Omitting this option returns all images for which you have launch permissions, regardless of ownership.

        ", "DescribeSnapshotsRequest$OwnerIds": "

        Returns the snapshots owned by the specified owner. Multiple owners can be specified.

        " } }, "PeeringConnectionOptions": { "base": "

        Describes the VPC peering connection options.

        ", "refs": { "ModifyVpcPeeringConnectionOptionsResult$RequesterPeeringConnectionOptions": "

        Information about the VPC peering connection options for the requester VPC.

        ", "ModifyVpcPeeringConnectionOptionsResult$AccepterPeeringConnectionOptions": "

        Information about the VPC peering connection options for the accepter VPC.

        " } }, "PeeringConnectionOptionsRequest": { "base": "

        The VPC peering connection options.

        ", "refs": { "ModifyVpcPeeringConnectionOptionsRequest$RequesterPeeringConnectionOptions": "

        The VPC peering connection options for the requester VPC.

        ", "ModifyVpcPeeringConnectionOptionsRequest$AccepterPeeringConnectionOptions": "

        The VPC peering connection options for the accepter VPC.

        " } }, "PermissionGroup": { "base": null, "refs": { "CreateVolumePermission$Group": "

        The specific group that is to be added or removed from a volume's list of create volume permissions.

        ", "LaunchPermission$Group": "

        The name of the group.

        " } }, "Placement": { "base": "

        Describes the placement for the instance.

        ", "refs": { "ImportInstanceLaunchSpecification$Placement": "

        The placement information for the instance.

        ", "Instance$Placement": "

        The location where the instance launched, if applicable.

        ", "RunInstancesRequest$Placement": "

        The placement for the instance.

        " } }, "PlacementGroup": { "base": "

        Describes a placement group.

        ", "refs": { "PlacementGroupList$member": null } }, "PlacementGroupList": { "base": null, "refs": { "DescribePlacementGroupsResult$PlacementGroups": "

        One or more placement groups.

        " } }, "PlacementGroupState": { "base": null, "refs": { "PlacementGroup$State": "

        The state of the placement group.

        " } }, "PlacementGroupStringList": { "base": null, "refs": { "DescribePlacementGroupsRequest$GroupNames": "

        One or more placement group names.

        Default: Describes all your placement groups, or only those otherwise specified.

        " } }, "PlacementStrategy": { "base": null, "refs": { "CreatePlacementGroupRequest$Strategy": "

        The placement strategy.

        ", "PlacementGroup$Strategy": "

        The placement strategy.

        " } }, "PlatformValues": { "base": null, "refs": { "Image$Platform": "

        The value is Windows for Windows AMIs; otherwise blank.

        ", "ImportInstanceRequest$Platform": "

        The instance operating system.

        ", "ImportInstanceTaskDetails$Platform": "

        The instance operating system.

        ", "Instance$Platform": "

        The value is Windows for Windows instances; otherwise blank.

        " } }, "PortRange": { "base": "

        Describes a range of ports.

        ", "refs": { "CreateNetworkAclEntryRequest$PortRange": "

        TCP or UDP protocols: The range of ports the rule applies to.

        ", "NetworkAclEntry$PortRange": "

        TCP or UDP protocols: The range of ports the rule applies to.

        ", "ReplaceNetworkAclEntryRequest$PortRange": "

        TCP or UDP protocols: The range of ports the rule applies to. Required if specifying 6 (TCP) or 17 (UDP) for the protocol.

        " } }, "PrefixList": { "base": "

        Describes prefixes for AWS services.

        ", "refs": { "PrefixListSet$member": null } }, "PrefixListId": { "base": "

        The ID of the prefix.

        ", "refs": { "PrefixListIdList$member": null } }, "PrefixListIdList": { "base": null, "refs": { "IpPermission$PrefixListIds": "

        (Valid for AuthorizeSecurityGroupEgress, RevokeSecurityGroupEgress and DescribeSecurityGroups only) One or more prefix list IDs for an AWS service. In an AuthorizeSecurityGroupEgress request, this is the AWS service that you want to access through a VPC endpoint from instances associated with the security group.

        " } }, "PrefixListIdSet": { "base": null, "refs": { "StaleIpPermission$PrefixListIds": "

        One or more prefix list IDs for an AWS service. Not applicable for stale security group rules.

        " } }, "PrefixListSet": { "base": null, "refs": { "DescribePrefixListsResult$PrefixLists": "

        All available prefix lists.

        " } }, "PriceSchedule": { "base": "

        Describes the price for a Reserved Instance.

        ", "refs": { "PriceScheduleList$member": null } }, "PriceScheduleList": { "base": null, "refs": { "ReservedInstancesListing$PriceSchedules": "

        The price of the Reserved Instance listing.

        " } }, "PriceScheduleSpecification": { "base": "

        Describes the price for a Reserved Instance.

        ", "refs": { "PriceScheduleSpecificationList$member": null } }, "PriceScheduleSpecificationList": { "base": null, "refs": { "CreateReservedInstancesListingRequest$PriceSchedules": "

        A list specifying the price of the Reserved Instance for each month remaining in the Reserved Instance term.

        " } }, "PricingDetail": { "base": "

        Describes a Reserved Instance offering.

        ", "refs": { "PricingDetailsList$member": null } }, "PricingDetailsList": { "base": null, "refs": { "ReservedInstancesOffering$PricingDetails": "

        The pricing details of the Reserved Instance offering.

        " } }, "PrivateIpAddressConfigSet": { "base": null, "refs": { "ScheduledInstancesNetworkInterface$PrivateIpAddressConfigs": "

        The private IP addresses.

        " } }, "PrivateIpAddressSpecification": { "base": "

        Describes a secondary private IP address for a network interface.

        ", "refs": { "PrivateIpAddressSpecificationList$member": null } }, "PrivateIpAddressSpecificationList": { "base": null, "refs": { "CreateNetworkInterfaceRequest$PrivateIpAddresses": "

        One or more private IP addresses.

        ", "InstanceNetworkInterfaceSpecification$PrivateIpAddresses": "

        One or more private IP addresses to assign to the network interface. Only one private IP address can be designated as primary.

        " } }, "PrivateIpAddressStringList": { "base": null, "refs": { "AssignPrivateIpAddressesRequest$PrivateIpAddresses": "

        One or more IP addresses to be assigned as a secondary private IP address to the network interface. You can't specify this parameter when also specifying a number of secondary IP addresses.

        If you don't specify an IP address, Amazon EC2 automatically selects an IP address within the subnet range.

        ", "UnassignPrivateIpAddressesRequest$PrivateIpAddresses": "

        The secondary private IP addresses to unassign from the network interface. You can specify this option multiple times to unassign more than one IP address.

        " } }, "ProductCode": { "base": "

        Describes a product code.

        ", "refs": { "ProductCodeList$member": null } }, "ProductCodeList": { "base": null, "refs": { "DescribeSnapshotAttributeResult$ProductCodes": "

        A list of product codes.

        ", "DescribeVolumeAttributeResult$ProductCodes": "

        A list of product codes.

        ", "Image$ProductCodes": "

        Any product codes associated with the AMI.

        ", "ImageAttribute$ProductCodes": "

        One or more product codes.

        ", "Instance$ProductCodes": "

        The product codes attached to this instance, if applicable.

        ", "InstanceAttribute$ProductCodes": "

        A list of product codes.

        " } }, "ProductCodeStringList": { "base": null, "refs": { "ModifyImageAttributeRequest$ProductCodes": "

        One or more product codes. After you add a product code to an AMI, it can't be removed. This is only valid when modifying the productCodes attribute.

        " } }, "ProductCodeValues": { "base": null, "refs": { "ProductCode$ProductCodeType": "

        The type of product code.

        " } }, "ProductDescriptionList": { "base": null, "refs": { "DescribeSpotPriceHistoryRequest$ProductDescriptions": "

        Filters the results by the specified basic product descriptions.

        " } }, "PropagatingVgw": { "base": "

        Describes a virtual private gateway propagating route.

        ", "refs": { "PropagatingVgwList$member": null } }, "PropagatingVgwList": { "base": null, "refs": { "RouteTable$PropagatingVgws": "

        Any virtual private gateway (VGW) propagating routes.

        " } }, "ProvisionedBandwidth": { "base": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        ", "refs": { "NatGateway$ProvisionedBandwidth": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        " } }, "PublicIpStringList": { "base": null, "refs": { "DescribeAddressesRequest$PublicIps": "

        [EC2-Classic] One or more Elastic IP addresses.

        Default: Describes all your Elastic IP addresses.

        " } }, "PurchaseRequest": { "base": "

        Describes a request to purchase Scheduled Instances.

        ", "refs": { "PurchaseRequestSet$member": null } }, "PurchaseRequestSet": { "base": null, "refs": { "PurchaseScheduledInstancesRequest$PurchaseRequests": "

        One or more purchase requests.

        " } }, "PurchaseReservedInstancesOfferingRequest": { "base": "

        Contains the parameters for PurchaseReservedInstancesOffering.

        ", "refs": { } }, "PurchaseReservedInstancesOfferingResult": { "base": "

        Contains the output of PurchaseReservedInstancesOffering.

        ", "refs": { } }, "PurchaseScheduledInstancesRequest": { "base": "

        Contains the parameters for PurchaseScheduledInstances.

        ", "refs": { } }, "PurchaseScheduledInstancesResult": { "base": "

        Contains the output of PurchaseScheduledInstances.

        ", "refs": { } }, "PurchasedScheduledInstanceSet": { "base": null, "refs": { "PurchaseScheduledInstancesResult$ScheduledInstanceSet": "

        Information about the Scheduled Instances.

        " } }, "RIProductDescription": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$ProductDescription": "

        The Reserved Instance product platform description. Instances that include (Amazon VPC) in the description are for use with Amazon VPC.

        ", "ReservedInstances$ProductDescription": "

        The Reserved Instance product platform description.

        ", "ReservedInstancesOffering$ProductDescription": "

        The Reserved Instance product platform description.

        ", "SpotInstanceRequest$ProductDescription": "

        The product description associated with the Spot instance.

        ", "SpotPrice$ProductDescription": "

        A general description of the AMI.

        " } }, "ReasonCodesList": { "base": null, "refs": { "ReportInstanceStatusRequest$ReasonCodes": "

        One or more reason codes that describes the health state of your instance.

        • instance-stuck-in-state: My instance is stuck in a state.

        • unresponsive: My instance is unresponsive.

        • not-accepting-credentials: My instance is not accepting my credentials.

        • password-not-available: A password is not available for my instance.

        • performance-network: My instance is experiencing performance problems which I believe are network related.

        • performance-instance-store: My instance is experiencing performance problems which I believe are related to the instance stores.

        • performance-ebs-volume: My instance is experiencing performance problems which I believe are related to an EBS volume.

        • performance-other: My instance is experiencing performance problems.

        • other: [explain using the description parameter]

        " } }, "RebootInstancesRequest": { "base": "

        Contains the parameters for RebootInstances.

        ", "refs": { } }, "RecurringCharge": { "base": "

        Describes a recurring charge.

        ", "refs": { "RecurringChargesList$member": null } }, "RecurringChargeFrequency": { "base": null, "refs": { "RecurringCharge$Frequency": "

        The frequency of the recurring charge.

        " } }, "RecurringChargesList": { "base": null, "refs": { "ReservedInstances$RecurringCharges": "

        The recurring charge tag assigned to the resource.

        ", "ReservedInstancesOffering$RecurringCharges": "

        The recurring charge tag assigned to the resource.

        " } }, "Region": { "base": "

        Describes a region.

        ", "refs": { "RegionList$member": null } }, "RegionList": { "base": null, "refs": { "DescribeRegionsResult$Regions": "

        Information about one or more regions.

        " } }, "RegionNameStringList": { "base": null, "refs": { "DescribeRegionsRequest$RegionNames": "

        The names of one or more regions.

        " } }, "RegisterImageRequest": { "base": "

        Contains the parameters for RegisterImage.

        ", "refs": { } }, "RegisterImageResult": { "base": "

        Contains the output of RegisterImage.

        ", "refs": { } }, "RejectVpcPeeringConnectionRequest": { "base": "

        Contains the parameters for RejectVpcPeeringConnection.

        ", "refs": { } }, "RejectVpcPeeringConnectionResult": { "base": "

        Contains the output of RejectVpcPeeringConnection.

        ", "refs": { } }, "ReleaseAddressRequest": { "base": "

        Contains the parameters for ReleaseAddress.

        ", "refs": { } }, "ReleaseHostsRequest": { "base": "

        Contains the parameters for ReleaseHosts.

        ", "refs": { } }, "ReleaseHostsResult": { "base": "

        Contains the output of ReleaseHosts.

        ", "refs": { } }, "ReplaceNetworkAclAssociationRequest": { "base": "

        Contains the parameters for ReplaceNetworkAclAssociation.

        ", "refs": { } }, "ReplaceNetworkAclAssociationResult": { "base": "

        Contains the output of ReplaceNetworkAclAssociation.

        ", "refs": { } }, "ReplaceNetworkAclEntryRequest": { "base": "

        Contains the parameters for ReplaceNetworkAclEntry.

        ", "refs": { } }, "ReplaceRouteRequest": { "base": "

        Contains the parameters for ReplaceRoute.

        ", "refs": { } }, "ReplaceRouteTableAssociationRequest": { "base": "

        Contains the parameters for ReplaceRouteTableAssociation.

        ", "refs": { } }, "ReplaceRouteTableAssociationResult": { "base": "

        Contains the output of ReplaceRouteTableAssociation.

        ", "refs": { } }, "ReportInstanceReasonCodes": { "base": null, "refs": { "ReasonCodesList$member": null } }, "ReportInstanceStatusRequest": { "base": "

        Contains the parameters for ReportInstanceStatus.

        ", "refs": { } }, "ReportStatusType": { "base": null, "refs": { "ReportInstanceStatusRequest$Status": "

        The status of all instances listed.

        " } }, "RequestHostIdList": { "base": null, "refs": { "DescribeHostsRequest$HostIds": "

        The IDs of the Dedicated hosts. The IDs are used for targeted instance launches.

        ", "ModifyHostsRequest$HostIds": "

        The host IDs of the Dedicated hosts you want to modify.

        ", "ReleaseHostsRequest$HostIds": "

        The IDs of the Dedicated hosts you want to release.

        " } }, "RequestSpotFleetRequest": { "base": "

        Contains the parameters for RequestSpotFleet.

        ", "refs": { } }, "RequestSpotFleetResponse": { "base": "

        Contains the output of RequestSpotFleet.

        ", "refs": { } }, "RequestSpotInstancesRequest": { "base": "

        Contains the parameters for RequestSpotInstances.

        ", "refs": { } }, "RequestSpotInstancesResult": { "base": "

        Contains the output of RequestSpotInstances.

        ", "refs": { } }, "RequestSpotLaunchSpecification": { "base": "

        Describes the launch specification for an instance.

        ", "refs": { "RequestSpotInstancesRequest$LaunchSpecification": null } }, "Reservation": { "base": "

        Describes a reservation.

        ", "refs": { "ReservationList$member": null } }, "ReservationList": { "base": null, "refs": { "DescribeInstancesResult$Reservations": "

        Zero or more reservations.

        " } }, "ReservedInstanceLimitPrice": { "base": "

        Describes the limit price of a Reserved Instance offering.

        ", "refs": { "PurchaseReservedInstancesOfferingRequest$LimitPrice": "

        Specified for Reserved Instance Marketplace offerings to limit the total order and ensure that the Reserved Instances are not purchased at unexpected prices.

        " } }, "ReservedInstanceState": { "base": null, "refs": { "ReservedInstances$State": "

        The state of the Reserved Instance purchase.

        " } }, "ReservedInstances": { "base": "

        Describes a Reserved Instance.

        ", "refs": { "ReservedInstancesList$member": null } }, "ReservedInstancesConfiguration": { "base": "

        Describes the configuration settings for the modified Reserved Instances.

        ", "refs": { "ReservedInstancesConfigurationList$member": null, "ReservedInstancesModificationResult$TargetConfiguration": "

        The target Reserved Instances configurations supplied as part of the modification request.

        " } }, "ReservedInstancesConfigurationList": { "base": null, "refs": { "ModifyReservedInstancesRequest$TargetConfigurations": "

        The configuration settings for the Reserved Instances to modify.

        " } }, "ReservedInstancesId": { "base": "

        Describes the ID of a Reserved Instance.

        ", "refs": { "ReservedIntancesIds$member": null } }, "ReservedInstancesIdStringList": { "base": null, "refs": { "DescribeReservedInstancesRequest$ReservedInstancesIds": "

        One or more Reserved Instance IDs.

        Default: Describes all your Reserved Instances, or only those otherwise specified.

        ", "ModifyReservedInstancesRequest$ReservedInstancesIds": "

        The IDs of the Reserved Instances to modify.

        " } }, "ReservedInstancesList": { "base": null, "refs": { "DescribeReservedInstancesResult$ReservedInstances": "

        A list of Reserved Instances.

        " } }, "ReservedInstancesListing": { "base": "

        Describes a Reserved Instance listing.

        ", "refs": { "ReservedInstancesListingList$member": null } }, "ReservedInstancesListingList": { "base": null, "refs": { "CancelReservedInstancesListingResult$ReservedInstancesListings": "

        The Reserved Instance listing.

        ", "CreateReservedInstancesListingResult$ReservedInstancesListings": "

        Information about the Reserved Instance listing.

        ", "DescribeReservedInstancesListingsResult$ReservedInstancesListings": "

        Information about the Reserved Instance listing.

        " } }, "ReservedInstancesModification": { "base": "

        Describes a Reserved Instance modification.

        ", "refs": { "ReservedInstancesModificationList$member": null } }, "ReservedInstancesModificationIdStringList": { "base": null, "refs": { "DescribeReservedInstancesModificationsRequest$ReservedInstancesModificationIds": "

        IDs for the submitted modification request.

        " } }, "ReservedInstancesModificationList": { "base": null, "refs": { "DescribeReservedInstancesModificationsResult$ReservedInstancesModifications": "

        The Reserved Instance modification information.

        " } }, "ReservedInstancesModificationResult": { "base": "

        Describes the modification request/s.

        ", "refs": { "ReservedInstancesModificationResultList$member": null } }, "ReservedInstancesModificationResultList": { "base": null, "refs": { "ReservedInstancesModification$ModificationResults": "

        Contains target configurations along with their corresponding new Reserved Instance IDs.

        " } }, "ReservedInstancesOffering": { "base": "

        Describes a Reserved Instance offering.

        ", "refs": { "ReservedInstancesOfferingList$member": null } }, "ReservedInstancesOfferingIdStringList": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$ReservedInstancesOfferingIds": "

        One or more Reserved Instances offering IDs.

        " } }, "ReservedInstancesOfferingList": { "base": null, "refs": { "DescribeReservedInstancesOfferingsResult$ReservedInstancesOfferings": "

        A list of Reserved Instances offerings.

        " } }, "ReservedIntancesIds": { "base": null, "refs": { "ReservedInstancesModification$ReservedInstancesIds": "

        The IDs of one or more Reserved Instances.

        " } }, "ResetImageAttributeName": { "base": null, "refs": { "ResetImageAttributeRequest$Attribute": "

        The attribute to reset (currently you can only reset the launch permission attribute).

        " } }, "ResetImageAttributeRequest": { "base": "

        Contains the parameters for ResetImageAttribute.

        ", "refs": { } }, "ResetInstanceAttributeRequest": { "base": "

        Contains the parameters for ResetInstanceAttribute.

        ", "refs": { } }, "ResetNetworkInterfaceAttributeRequest": { "base": "

        Contains the parameters for ResetNetworkInterfaceAttribute.

        ", "refs": { } }, "ResetSnapshotAttributeRequest": { "base": "

        Contains the parameters for ResetSnapshotAttribute.

        ", "refs": { } }, "ResourceIdList": { "base": null, "refs": { "CreateTagsRequest$Resources": "

        The IDs of one or more resources to tag. For example, ami-1a2b3c4d.

        ", "DeleteTagsRequest$Resources": "

        The ID of the resource. For example, ami-1a2b3c4d. You can specify more than one resource ID.

        " } }, "ResourceType": { "base": null, "refs": { "TagDescription$ResourceType": "

        The resource type.

        " } }, "ResponseHostIdList": { "base": null, "refs": { "AllocateHostsResult$HostIds": "

        The ID of the allocated Dedicated host. This is used when you want to launch an instance onto a specific host.

        ", "ModifyHostsResult$Successful": "

        The IDs of the Dedicated hosts that were successfully modified.

        ", "ReleaseHostsResult$Successful": "

        The IDs of the Dedicated hosts that were successfully released.

        " } }, "RestorableByStringList": { "base": null, "refs": { "DescribeSnapshotsRequest$RestorableByUserIds": "

        One or more AWS accounts IDs that can create volumes from the snapshot.

        " } }, "RestoreAddressToClassicRequest": { "base": "

        Contains the parameters for RestoreAddressToClassic.

        ", "refs": { } }, "RestoreAddressToClassicResult": { "base": "

        Contains the output of RestoreAddressToClassic.

        ", "refs": { } }, "RevokeSecurityGroupEgressRequest": { "base": "

        Contains the parameters for RevokeSecurityGroupEgress.

        ", "refs": { } }, "RevokeSecurityGroupIngressRequest": { "base": "

        Contains the parameters for RevokeSecurityGroupIngress.

        ", "refs": { } }, "Route": { "base": "

        Describes a route in a route table.

        ", "refs": { "RouteList$member": null } }, "RouteList": { "base": null, "refs": { "RouteTable$Routes": "

        The routes in the route table.

        " } }, "RouteOrigin": { "base": null, "refs": { "Route$Origin": "

        Describes how the route was created.

        • CreateRouteTable - The route was automatically created when the route table was created.

        • CreateRoute - The route was manually added to the route table.

        • EnableVgwRoutePropagation - The route was propagated by route propagation.

        " } }, "RouteState": { "base": null, "refs": { "Route$State": "

        The state of the route. The blackhole state indicates that the route's target isn't available (for example, the specified gateway isn't attached to the VPC, or the specified NAT instance has been terminated).

        " } }, "RouteTable": { "base": "

        Describes a route table.

        ", "refs": { "CreateRouteTableResult$RouteTable": "

        Information about the route table.

        ", "RouteTableList$member": null } }, "RouteTableAssociation": { "base": "

        Describes an association between a route table and a subnet.

        ", "refs": { "RouteTableAssociationList$member": null } }, "RouteTableAssociationList": { "base": null, "refs": { "RouteTable$Associations": "

        The associations between the route table and one or more subnets.

        " } }, "RouteTableList": { "base": null, "refs": { "DescribeRouteTablesResult$RouteTables": "

        Information about one or more route tables.

        " } }, "RuleAction": { "base": null, "refs": { "CreateNetworkAclEntryRequest$RuleAction": "

        Indicates whether to allow or deny the traffic that matches the rule.

        ", "NetworkAclEntry$RuleAction": "

        Indicates whether to allow or deny the traffic that matches the rule.

        ", "ReplaceNetworkAclEntryRequest$RuleAction": "

        Indicates whether to allow or deny the traffic that matches the rule.

        " } }, "RunInstancesMonitoringEnabled": { "base": "

        Describes the monitoring for the instance.

        ", "refs": { "LaunchSpecification$Monitoring": null, "RequestSpotLaunchSpecification$Monitoring": null, "RunInstancesRequest$Monitoring": "

        The monitoring for the instance.

        " } }, "RunInstancesRequest": { "base": "

        Contains the parameters for RunInstances.

        ", "refs": { } }, "RunScheduledInstancesRequest": { "base": "

        Contains the parameters for RunScheduledInstances.

        ", "refs": { } }, "RunScheduledInstancesResult": { "base": "

        Contains the output of RunScheduledInstances.

        ", "refs": { } }, "S3Storage": { "base": "

        Describes the storage parameters for S3 and S3 buckets for an instance store-backed AMI.

        ", "refs": { "Storage$S3": "

        An Amazon S3 storage location.

        " } }, "ScheduledInstance": { "base": "

        Describes a Scheduled Instance.

        ", "refs": { "PurchasedScheduledInstanceSet$member": null, "ScheduledInstanceSet$member": null } }, "ScheduledInstanceAvailability": { "base": "

        Describes a schedule that is available for your Scheduled Instances.

        ", "refs": { "ScheduledInstanceAvailabilitySet$member": null } }, "ScheduledInstanceAvailabilitySet": { "base": null, "refs": { "DescribeScheduledInstanceAvailabilityResult$ScheduledInstanceAvailabilitySet": "

        Information about the available Scheduled Instances.

        " } }, "ScheduledInstanceIdRequestSet": { "base": null, "refs": { "DescribeScheduledInstancesRequest$ScheduledInstanceIds": "

        One or more Scheduled Instance IDs.

        " } }, "ScheduledInstanceRecurrence": { "base": "

        Describes the recurring schedule for a Scheduled Instance.

        ", "refs": { "ScheduledInstance$Recurrence": "

        The schedule recurrence.

        ", "ScheduledInstanceAvailability$Recurrence": "

        The schedule recurrence.

        " } }, "ScheduledInstanceRecurrenceRequest": { "base": "

        Describes the recurring schedule for a Scheduled Instance.

        ", "refs": { "DescribeScheduledInstanceAvailabilityRequest$Recurrence": "

        The schedule recurrence.

        " } }, "ScheduledInstanceSet": { "base": null, "refs": { "DescribeScheduledInstancesResult$ScheduledInstanceSet": "

        Information about the Scheduled Instances.

        " } }, "ScheduledInstancesBlockDeviceMapping": { "base": "

        Describes a block device mapping for a Scheduled Instance.

        ", "refs": { "ScheduledInstancesBlockDeviceMappingSet$member": null } }, "ScheduledInstancesBlockDeviceMappingSet": { "base": null, "refs": { "ScheduledInstancesLaunchSpecification$BlockDeviceMappings": "

        One or more block device mapping entries.

        " } }, "ScheduledInstancesEbs": { "base": "

        Describes an EBS volume for a Scheduled Instance.

        ", "refs": { "ScheduledInstancesBlockDeviceMapping$Ebs": "

        Parameters used to set up EBS volumes automatically when the instance is launched.

        " } }, "ScheduledInstancesIamInstanceProfile": { "base": "

        Describes an IAM instance profile for a Scheduled Instance.

        ", "refs": { "ScheduledInstancesLaunchSpecification$IamInstanceProfile": "

        The IAM instance profile.

        " } }, "ScheduledInstancesLaunchSpecification": { "base": "

        Describes the launch specification for a Scheduled Instance.

        If you are launching the Scheduled Instance in EC2-VPC, you must specify the ID of the subnet. You can specify the subnet using either SubnetId or NetworkInterface.

        ", "refs": { "RunScheduledInstancesRequest$LaunchSpecification": "

        The launch specification.

        " } }, "ScheduledInstancesMonitoring": { "base": "

        Describes whether monitoring is enabled for a Scheduled Instance.

        ", "refs": { "ScheduledInstancesLaunchSpecification$Monitoring": "

        Enable or disable monitoring for the instances.

        " } }, "ScheduledInstancesNetworkInterface": { "base": "

        Describes a network interface for a Scheduled Instance.

        ", "refs": { "ScheduledInstancesNetworkInterfaceSet$member": null } }, "ScheduledInstancesNetworkInterfaceSet": { "base": null, "refs": { "ScheduledInstancesLaunchSpecification$NetworkInterfaces": "

        One or more network interfaces.

        " } }, "ScheduledInstancesPlacement": { "base": "

        Describes the placement for a Scheduled Instance.

        ", "refs": { "ScheduledInstancesLaunchSpecification$Placement": "

        The placement information.

        " } }, "ScheduledInstancesPrivateIpAddressConfig": { "base": "

        Describes a private IP address for a Scheduled Instance.

        ", "refs": { "PrivateIpAddressConfigSet$member": null } }, "ScheduledInstancesSecurityGroupIdSet": { "base": null, "refs": { "ScheduledInstancesLaunchSpecification$SecurityGroupIds": "

        The IDs of one or more security groups.

        ", "ScheduledInstancesNetworkInterface$Groups": "

        The IDs of one or more security groups.

        " } }, "SecurityGroup": { "base": "

        Describes a security group

        ", "refs": { "SecurityGroupList$member": null } }, "SecurityGroupIdStringList": { "base": null, "refs": { "CreateNetworkInterfaceRequest$Groups": "

        The IDs of one or more security groups.

        ", "ImportInstanceLaunchSpecification$GroupIds": "

        One or more security group IDs.

        ", "InstanceNetworkInterfaceSpecification$Groups": "

        The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.

        ", "ModifyNetworkInterfaceAttributeRequest$Groups": "

        Changes the security groups for the network interface. The new set of groups you specify replaces the current set. You must specify at least one group, even if it's just the default security group in the VPC. You must specify the ID of the security group, not the name.

        ", "RunInstancesRequest$SecurityGroupIds": "

        One or more security group IDs. You can create a security group using CreateSecurityGroup.

        Default: Amazon EC2 uses the default security group.

        " } }, "SecurityGroupList": { "base": null, "refs": { "DescribeSecurityGroupsResult$SecurityGroups": "

        Information about one or more security groups.

        " } }, "SecurityGroupReference": { "base": "

        Describes a VPC with a security group that references your security group.

        ", "refs": { "SecurityGroupReferences$member": null } }, "SecurityGroupReferences": { "base": null, "refs": { "DescribeSecurityGroupReferencesResult$SecurityGroupReferenceSet": "

        Information about the VPCs with the referencing security groups.

        " } }, "SecurityGroupStringList": { "base": null, "refs": { "ImportInstanceLaunchSpecification$GroupNames": "

        One or more security group names.

        ", "RunInstancesRequest$SecurityGroups": "

        [EC2-Classic, default VPC] One or more security group names. For a nondefault VPC, you must use security group IDs instead.

        Default: Amazon EC2 uses the default security group.

        " } }, "ShutdownBehavior": { "base": null, "refs": { "ImportInstanceLaunchSpecification$InstanceInitiatedShutdownBehavior": "

        Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

        ", "RunInstancesRequest$InstanceInitiatedShutdownBehavior": "

        Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

        Default: stop

        " } }, "SlotDateTimeRangeRequest": { "base": "

        Describes the time period for a Scheduled Instance to start its first schedule. The time period must span less than one day.

        ", "refs": { "DescribeScheduledInstanceAvailabilityRequest$FirstSlotStartTimeRange": "

        The time period for the first schedule to start.

        " } }, "SlotStartTimeRangeRequest": { "base": "

        Describes the time period for a Scheduled Instance to start its first schedule.

        ", "refs": { "DescribeScheduledInstancesRequest$SlotStartTimeRange": "

        The time period for the first schedule to start.

        " } }, "Snapshot": { "base": "

        Describes a snapshot.

        ", "refs": { "SnapshotList$member": null } }, "SnapshotAttributeName": { "base": null, "refs": { "DescribeSnapshotAttributeRequest$Attribute": "

        The snapshot attribute you would like to view.

        ", "ModifySnapshotAttributeRequest$Attribute": "

        The snapshot attribute to modify.

        Only volume creation permissions may be modified at the customer level.

        ", "ResetSnapshotAttributeRequest$Attribute": "

        The attribute to reset. Currently, only the attribute for permission to create volumes can be reset.

        " } }, "SnapshotDetail": { "base": "

        Describes the snapshot created from the imported disk.

        ", "refs": { "SnapshotDetailList$member": null } }, "SnapshotDetailList": { "base": null, "refs": { "ImportImageResult$SnapshotDetails": "

        Information about the snapshots.

        ", "ImportImageTask$SnapshotDetails": "

        Information about the snapshots.

        " } }, "SnapshotDiskContainer": { "base": "

        The disk container object for the import snapshot request.

        ", "refs": { "ImportSnapshotRequest$DiskContainer": "

        Information about the disk container.

        " } }, "SnapshotIdStringList": { "base": null, "refs": { "DescribeSnapshotsRequest$SnapshotIds": "

        One or more snapshot IDs.

        Default: Describes snapshots for which you have launch permissions.

        " } }, "SnapshotList": { "base": null, "refs": { "DescribeSnapshotsResult$Snapshots": "

        Information about the snapshots.

        " } }, "SnapshotState": { "base": null, "refs": { "Snapshot$State": "

        The snapshot state.

        " } }, "SnapshotTaskDetail": { "base": "

        Details about the import snapshot task.

        ", "refs": { "ImportSnapshotResult$SnapshotTaskDetail": "

        Information about the import snapshot task.

        ", "ImportSnapshotTask$SnapshotTaskDetail": "

        Describes an import snapshot task.

        " } }, "SpotDatafeedSubscription": { "base": "

        Describes the data feed for a Spot instance.

        ", "refs": { "CreateSpotDatafeedSubscriptionResult$SpotDatafeedSubscription": "

        The Spot instance data feed subscription.

        ", "DescribeSpotDatafeedSubscriptionResult$SpotDatafeedSubscription": "

        The Spot instance data feed subscription.

        " } }, "SpotFleetLaunchSpecification": { "base": "

        Describes the launch specification for one or more Spot instances.

        ", "refs": { "LaunchSpecsList$member": null } }, "SpotFleetMonitoring": { "base": "

        Describes whether monitoring is enabled.

        ", "refs": { "SpotFleetLaunchSpecification$Monitoring": "

        Enable or disable monitoring for the instances.

        " } }, "SpotFleetRequestConfig": { "base": "

        Describes a Spot fleet request.

        ", "refs": { "SpotFleetRequestConfigSet$member": null } }, "SpotFleetRequestConfigData": { "base": "

        Describes the configuration of a Spot fleet request.

        ", "refs": { "RequestSpotFleetRequest$SpotFleetRequestConfig": "

        The configuration for the Spot fleet request.

        ", "SpotFleetRequestConfig$SpotFleetRequestConfig": "

        Information about the configuration of the Spot fleet request.

        " } }, "SpotFleetRequestConfigSet": { "base": null, "refs": { "DescribeSpotFleetRequestsResponse$SpotFleetRequestConfigs": "

        Information about the configuration of your Spot fleet.

        " } }, "SpotInstanceRequest": { "base": "

        Describes a Spot instance request.

        ", "refs": { "SpotInstanceRequestList$member": null } }, "SpotInstanceRequestIdList": { "base": null, "refs": { "CancelSpotInstanceRequestsRequest$SpotInstanceRequestIds": "

        One or more Spot instance request IDs.

        ", "DescribeSpotInstanceRequestsRequest$SpotInstanceRequestIds": "

        One or more Spot instance request IDs.

        " } }, "SpotInstanceRequestList": { "base": null, "refs": { "DescribeSpotInstanceRequestsResult$SpotInstanceRequests": "

        One or more Spot instance requests.

        ", "RequestSpotInstancesResult$SpotInstanceRequests": "

        One or more Spot instance requests.

        " } }, "SpotInstanceState": { "base": null, "refs": { "SpotInstanceRequest$State": "

        The state of the Spot instance request. Spot bid status information can help you track your Spot instance requests. For more information, see Spot Bid Status in the Amazon Elastic Compute Cloud User Guide.

        " } }, "SpotInstanceStateFault": { "base": "

        Describes a Spot instance state change.

        ", "refs": { "SpotDatafeedSubscription$Fault": "

        The fault codes for the Spot instance request, if any.

        ", "SpotInstanceRequest$Fault": "

        The fault codes for the Spot instance request, if any.

        " } }, "SpotInstanceStatus": { "base": "

        Describes the status of a Spot instance request.

        ", "refs": { "SpotInstanceRequest$Status": "

        The status code and status message describing the Spot instance request.

        " } }, "SpotInstanceType": { "base": null, "refs": { "RequestSpotInstancesRequest$Type": "

        The Spot instance request type.

        Default: one-time

        ", "SpotInstanceRequest$Type": "

        The Spot instance request type.

        " } }, "SpotPlacement": { "base": "

        Describes Spot instance placement.

        ", "refs": { "LaunchSpecification$Placement": "

        The placement information for the instance.

        ", "RequestSpotLaunchSpecification$Placement": "

        The placement information for the instance.

        ", "SpotFleetLaunchSpecification$Placement": "

        The placement information.

        " } }, "SpotPrice": { "base": "

        Describes the maximum hourly price (bid) for any Spot instance launched to fulfill the request.

        ", "refs": { "SpotPriceHistoryList$member": null } }, "SpotPriceHistoryList": { "base": null, "refs": { "DescribeSpotPriceHistoryResult$SpotPriceHistory": "

        The historical Spot prices.

        " } }, "StaleIpPermission": { "base": "

        Describes a stale rule in a security group.

        ", "refs": { "StaleIpPermissionSet$member": null } }, "StaleIpPermissionSet": { "base": null, "refs": { "StaleSecurityGroup$StaleIpPermissions": "

        Information about the stale inbound rules in the security group.

        ", "StaleSecurityGroup$StaleIpPermissionsEgress": "

        Information about the stale outbound rules in the security group.

        " } }, "StaleSecurityGroup": { "base": "

        Describes a stale security group (a security group that contains stale rules).

        ", "refs": { "StaleSecurityGroupSet$member": null } }, "StaleSecurityGroupSet": { "base": null, "refs": { "DescribeStaleSecurityGroupsResult$StaleSecurityGroupSet": "

        Information about the stale security groups.

        " } }, "StartInstancesRequest": { "base": "

        Contains the parameters for StartInstances.

        ", "refs": { } }, "StartInstancesResult": { "base": "

        Contains the output of StartInstances.

        ", "refs": { } }, "State": { "base": null, "refs": { "VpcEndpoint$State": "

        The state of the VPC endpoint.

        " } }, "StateReason": { "base": "

        Describes a state change.

        ", "refs": { "Image$StateReason": "

        The reason for the state change.

        ", "Instance$StateReason": "

        The reason for the most recent state transition.

        " } }, "Status": { "base": null, "refs": { "MoveAddressToVpcResult$Status": "

        The status of the move of the IP address.

        ", "RestoreAddressToClassicResult$Status": "

        The move status for the IP address.

        " } }, "StatusName": { "base": null, "refs": { "InstanceStatusDetails$Name": "

        The type of instance status.

        " } }, "StatusType": { "base": null, "refs": { "InstanceStatusDetails$Status": "

        The status.

        " } }, "StopInstancesRequest": { "base": "

        Contains the parameters for StopInstances.

        ", "refs": { } }, "StopInstancesResult": { "base": "

        Contains the output of StopInstances.

        ", "refs": { } }, "Storage": { "base": "

        Describes the storage location for an instance store-backed AMI.

        ", "refs": { "BundleInstanceRequest$Storage": "

        The bucket in which to store the AMI. You can specify a bucket that you already own or a new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone else, Amazon EC2 returns an error.

        ", "BundleTask$Storage": "

        The Amazon S3 storage locations.

        " } }, "String": { "base": null, "refs": { "AcceptVpcPeeringConnectionRequest$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "AccountAttribute$AttributeName": "

        The name of the account attribute.

        ", "AccountAttributeValue$AttributeValue": "

        The value of the attribute.

        ", "ActiveInstance$InstanceType": "

        The instance type.

        ", "ActiveInstance$InstanceId": "

        The ID of the instance.

        ", "ActiveInstance$SpotInstanceRequestId": "

        The ID of the Spot instance request.

        ", "Address$InstanceId": "

        The ID of the instance that the address is associated with (if any).

        ", "Address$PublicIp": "

        The Elastic IP address.

        ", "Address$AllocationId": "

        The ID representing the allocation of the address for use with EC2-VPC.

        ", "Address$AssociationId": "

        The ID representing the association of the address with an instance in a VPC.

        ", "Address$NetworkInterfaceId": "

        The ID of the network interface.

        ", "Address$NetworkInterfaceOwnerId": "

        The ID of the AWS account that owns the network interface.

        ", "Address$PrivateIpAddress": "

        The private IP address associated with the Elastic IP address.

        ", "AllocateAddressResult$PublicIp": "

        The Elastic IP address.

        ", "AllocateAddressResult$AllocationId": "

        [EC2-VPC] The ID that AWS assigns to represent the allocation of the Elastic IP address for use with instances in a VPC.

        ", "AllocateHostsRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.

        ", "AllocateHostsRequest$InstanceType": "

        Specify the instance type that you want your Dedicated hosts to be configured for. When you specify the instance type, that is the only instance type that you can launch onto that host.

        ", "AllocateHostsRequest$AvailabilityZone": "

        The Availability Zone for the Dedicated hosts.

        ", "AllocationIdList$member": null, "AssignPrivateIpAddressesRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "AssociateAddressRequest$InstanceId": "

        The ID of the instance. This is required for EC2-Classic. For EC2-VPC, you can specify either the instance ID or the network interface ID, but not both. The operation fails if you specify an instance ID unless exactly one network interface is attached.

        ", "AssociateAddressRequest$PublicIp": "

        The Elastic IP address. This is required for EC2-Classic.

        ", "AssociateAddressRequest$AllocationId": "

        [EC2-VPC] The allocation ID. This is required for EC2-VPC.

        ", "AssociateAddressRequest$NetworkInterfaceId": "

        [EC2-VPC] The ID of the network interface. If the instance has more than one network interface, you must specify a network interface ID.

        ", "AssociateAddressRequest$PrivateIpAddress": "

        [EC2-VPC] The primary or secondary private IP address to associate with the Elastic IP address. If no private IP address is specified, the Elastic IP address is associated with the primary private IP address.

        ", "AssociateAddressResult$AssociationId": "

        [EC2-VPC] The ID that represents the association of the Elastic IP address with an instance.

        ", "AssociateDhcpOptionsRequest$DhcpOptionsId": "

        The ID of the DHCP options set, or default to associate no DHCP options with the VPC.

        ", "AssociateDhcpOptionsRequest$VpcId": "

        The ID of the VPC.

        ", "AssociateRouteTableRequest$SubnetId": "

        The ID of the subnet.

        ", "AssociateRouteTableRequest$RouteTableId": "

        The ID of the route table.

        ", "AssociateRouteTableResult$AssociationId": "

        The route table association ID (needed to disassociate the route table).

        ", "AttachClassicLinkVpcRequest$InstanceId": "

        The ID of an EC2-Classic instance to link to the ClassicLink-enabled VPC.

        ", "AttachClassicLinkVpcRequest$VpcId": "

        The ID of a ClassicLink-enabled VPC.

        ", "AttachInternetGatewayRequest$InternetGatewayId": "

        The ID of the Internet gateway.

        ", "AttachInternetGatewayRequest$VpcId": "

        The ID of the VPC.

        ", "AttachNetworkInterfaceRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "AttachNetworkInterfaceRequest$InstanceId": "

        The ID of the instance.

        ", "AttachNetworkInterfaceResult$AttachmentId": "

        The ID of the network interface attachment.

        ", "AttachVolumeRequest$VolumeId": "

        The ID of the EBS volume. The volume and instance must be within the same Availability Zone.

        ", "AttachVolumeRequest$InstanceId": "

        The ID of the instance.

        ", "AttachVolumeRequest$Device": "

        The device name to expose to the instance (for example, /dev/sdh or xvdh).

        ", "AttachVpnGatewayRequest$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "AttachVpnGatewayRequest$VpcId": "

        The ID of the VPC.

        ", "AttributeValue$Value": "

        Valid values are case-sensitive and vary by action.

        ", "AuthorizeSecurityGroupEgressRequest$GroupId": "

        The ID of the security group.

        ", "AuthorizeSecurityGroupEgressRequest$SourceSecurityGroupName": "

        The name of a destination security group. To authorize outbound access to a destination security group, we recommend that you use a set of IP permissions instead.

        ", "AuthorizeSecurityGroupEgressRequest$SourceSecurityGroupOwnerId": "

        The AWS account number for a destination security group. To authorize outbound access to a destination security group, we recommend that you use a set of IP permissions instead.

        ", "AuthorizeSecurityGroupEgressRequest$IpProtocol": "

        The IP protocol name or number. We recommend that you specify the protocol in a set of IP permissions instead.

        ", "AuthorizeSecurityGroupEgressRequest$CidrIp": "

        The CIDR IP address range. We recommend that you specify the CIDR range in a set of IP permissions instead.

        ", "AuthorizeSecurityGroupIngressRequest$GroupName": "

        [EC2-Classic, default VPC] The name of the security group.

        ", "AuthorizeSecurityGroupIngressRequest$GroupId": "

        The ID of the security group. Required for a nondefault VPC.

        ", "AuthorizeSecurityGroupIngressRequest$SourceSecurityGroupName": "

        [EC2-Classic, default VPC] The name of the source security group. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the start of the port range, the IP protocol, and the end of the port range. Creates rules that grant full ICMP, UDP, and TCP access. To create a rule with a specific IP protocol and port range, use a set of IP permissions instead. For EC2-VPC, the source security group must be in the same VPC.

        ", "AuthorizeSecurityGroupIngressRequest$SourceSecurityGroupOwnerId": "

        [EC2-Classic] The AWS account number for the source security group, if the source security group is in a different account. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the IP protocol, the start of the port range, and the end of the port range. Creates rules that grant full ICMP, UDP, and TCP access. To create a rule with a specific IP protocol and port range, use a set of IP permissions instead.

        ", "AuthorizeSecurityGroupIngressRequest$IpProtocol": "

        The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). (VPC only) Use -1 to specify all.

        ", "AuthorizeSecurityGroupIngressRequest$CidrIp": "

        The CIDR IP address range. You can't specify this parameter when specifying a source security group.

        ", "AvailabilityZone$ZoneName": "

        The name of the Availability Zone.

        ", "AvailabilityZone$RegionName": "

        The name of the region.

        ", "AvailabilityZoneMessage$Message": "

        The message about the Availability Zone.

        ", "BlockDeviceMapping$VirtualName": "

        The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with 2 available instance store volumes can specify mappings for ephemeral0 and ephemeral1.The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.

        Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.

        ", "BlockDeviceMapping$DeviceName": "

        The device name exposed to the instance (for example, /dev/sdh or xvdh).

        ", "BlockDeviceMapping$NoDevice": "

        Suppresses the specified device included in the block device mapping of the AMI.

        ", "BundleIdStringList$member": null, "BundleInstanceRequest$InstanceId": "

        The ID of the instance to bundle.

        Type: String

        Default: None

        Required: Yes

        ", "BundleTask$InstanceId": "

        The ID of the instance associated with this bundle task.

        ", "BundleTask$BundleId": "

        The ID of the bundle task.

        ", "BundleTask$Progress": "

        The level of task completion, as a percent (for example, 20%).

        ", "BundleTaskError$Code": "

        The error code.

        ", "BundleTaskError$Message": "

        The error message.

        ", "CancelBundleTaskRequest$BundleId": "

        The ID of the bundle task.

        ", "CancelConversionRequest$ConversionTaskId": "

        The ID of the conversion task.

        ", "CancelConversionRequest$ReasonMessage": "

        The reason for canceling the conversion task.

        ", "CancelExportTaskRequest$ExportTaskId": "

        The ID of the export task. This is the ID returned by CreateInstanceExportTask.

        ", "CancelImportTaskRequest$ImportTaskId": "

        The ID of the import image or import snapshot task to be canceled.

        ", "CancelImportTaskRequest$CancelReason": "

        The reason for canceling the task.

        ", "CancelImportTaskResult$ImportTaskId": "

        The ID of the task being canceled.

        ", "CancelImportTaskResult$State": "

        The current state of the task being canceled.

        ", "CancelImportTaskResult$PreviousState": "

        The current state of the task being canceled.

        ", "CancelReservedInstancesListingRequest$ReservedInstancesListingId": "

        The ID of the Reserved Instance listing.

        ", "CancelSpotFleetRequestsError$Message": "

        The description for the error code.

        ", "CancelSpotFleetRequestsErrorItem$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "CancelSpotFleetRequestsSuccessItem$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "CancelledSpotInstanceRequest$SpotInstanceRequestId": "

        The ID of the Spot instance request.

        ", "ClassicLinkDnsSupport$VpcId": "

        The ID of the VPC.

        ", "ClassicLinkInstance$InstanceId": "

        The ID of the instance.

        ", "ClassicLinkInstance$VpcId": "

        The ID of the VPC.

        ", "ClientData$Comment": "

        A user-defined comment about the disk upload.

        ", "ConfirmProductInstanceRequest$ProductCode": "

        The product code. This must be a product code that you own.

        ", "ConfirmProductInstanceRequest$InstanceId": "

        The ID of the instance.

        ", "ConfirmProductInstanceResult$OwnerId": "

        The AWS account ID of the instance owner. This is only present if the product code is attached to the instance.

        ", "ConversionIdStringList$member": null, "ConversionTask$ConversionTaskId": "

        The ID of the conversion task.

        ", "ConversionTask$ExpirationTime": "

        The time when the task expires. If the upload isn't complete before the expiration time, we automatically cancel the task.

        ", "ConversionTask$StatusMessage": "

        The status message related to the conversion task.

        ", "CopyImageRequest$SourceRegion": "

        The name of the region that contains the AMI to copy.

        ", "CopyImageRequest$SourceImageId": "

        The ID of the AMI to copy.

        ", "CopyImageRequest$Name": "

        The name of the new AMI in the destination region.

        ", "CopyImageRequest$Description": "

        A description for the new AMI in the destination region.

        ", "CopyImageRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.

        ", "CopyImageRequest$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) CMK to use when encrypting the snapshots of an image during a copy operation. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used. The ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the key namespace, and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. The specified CMK must exist in the region that the snapshot is being copied to. If a KmsKeyId is specified, the Encrypted flag must also be set.

        ", "CopyImageResult$ImageId": "

        The ID of the new AMI.

        ", "CopySnapshotRequest$SourceRegion": "

        The ID of the region that contains the snapshot to be copied.

        ", "CopySnapshotRequest$SourceSnapshotId": "

        The ID of the EBS snapshot to copy.

        ", "CopySnapshotRequest$Description": "

        A description for the EBS snapshot.

        ", "CopySnapshotRequest$DestinationRegion": "

        The destination region to use in the PresignedUrl parameter of a snapshot copy operation. This parameter is only valid for specifying the destination region in a PresignedUrl parameter, where it is required.

        CopySnapshot sends the snapshot copy to the regional endpoint that you send the HTTP request to, such as ec2.us-east-1.amazonaws.com (in the AWS CLI, this is specified with the --region parameter or the default region in your AWS configuration file).

        ", "CopySnapshotRequest$PresignedUrl": "

        The pre-signed URL that facilitates copying an encrypted snapshot. This parameter is only required when copying an encrypted snapshot with the Amazon EC2 Query API; it is available as an optional parameter in all other cases. The PresignedUrl should use the snapshot source endpoint, the CopySnapshot action, and include the SourceRegion, SourceSnapshotId, and DestinationRegion parameters. The PresignedUrl must be signed using AWS Signature Version 4. Because EBS snapshots are stored in Amazon S3, the signing algorithm for this parameter uses the same logic that is described in Authenticating Requests by Using Query Parameters (AWS Signature Version 4) in the Amazon Simple Storage Service API Reference. An invalid or improperly signed PresignedUrl will cause the copy operation to fail asynchronously, and the snapshot will move to an error state.

        ", "CopySnapshotRequest$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) CMK to use when creating the snapshot copy. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used. The ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the key namespace, and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. The specified CMK must exist in the region that the snapshot is being copied to. If a KmsKeyId is specified, the Encrypted flag must also be set.

        ", "CopySnapshotResult$SnapshotId": "

        The ID of the new snapshot.

        ", "CreateCustomerGatewayRequest$PublicIp": "

        The Internet-routable IP address for the customer gateway's outside interface. The address must be static.

        ", "CreateFlowLogsRequest$LogGroupName": "

        The name of the CloudWatch log group.

        ", "CreateFlowLogsRequest$DeliverLogsPermissionArn": "

        The ARN for the IAM role that's used to post flow logs to a CloudWatch Logs log group.

        ", "CreateFlowLogsRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

        ", "CreateFlowLogsResult$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request.

        ", "CreateImageRequest$InstanceId": "

        The ID of the instance.

        ", "CreateImageRequest$Name": "

        A name for the new image.

        Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)

        ", "CreateImageRequest$Description": "

        A description for the new image.

        ", "CreateImageResult$ImageId": "

        The ID of the new AMI.

        ", "CreateInstanceExportTaskRequest$Description": "

        A description for the conversion task or the resource being exported. The maximum length is 255 bytes.

        ", "CreateInstanceExportTaskRequest$InstanceId": "

        The ID of the instance.

        ", "CreateKeyPairRequest$KeyName": "

        A unique name for the key pair.

        Constraints: Up to 255 ASCII characters

        ", "CreateNatGatewayRequest$SubnetId": "

        The subnet in which to create the NAT gateway.

        ", "CreateNatGatewayRequest$AllocationId": "

        The allocation ID of an Elastic IP address to associate with the NAT gateway. If the Elastic IP address is associated with another resource, you must first disassociate it.

        ", "CreateNatGatewayRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

        Constraint: Maximum 64 ASCII characters.

        ", "CreateNatGatewayResult$ClientToken": "

        Unique, case-sensitive identifier to ensure the idempotency of the request. Only returned if a client token was provided in the request.

        ", "CreateNetworkAclEntryRequest$NetworkAclId": "

        The ID of the network ACL.

        ", "CreateNetworkAclEntryRequest$Protocol": "

        The protocol. A value of -1 means all protocols.

        ", "CreateNetworkAclEntryRequest$CidrBlock": "

        The network range to allow or deny, in CIDR notation (for example 172.16.0.0/24).

        ", "CreateNetworkAclRequest$VpcId": "

        The ID of the VPC.

        ", "CreateNetworkInterfaceRequest$SubnetId": "

        The ID of the subnet to associate with the network interface.

        ", "CreateNetworkInterfaceRequest$Description": "

        A description for the network interface.

        ", "CreateNetworkInterfaceRequest$PrivateIpAddress": "

        The primary private IP address of the network interface. If you don't specify an IP address, Amazon EC2 selects one for you from the subnet range. If you specify an IP address, you cannot indicate any IP addresses specified in privateIpAddresses as primary (only one IP address can be designated as primary).

        ", "CreatePlacementGroupRequest$GroupName": "

        A name for the placement group.

        Constraints: Up to 255 ASCII characters

        ", "CreateReservedInstancesListingRequest$ReservedInstancesId": "

        The ID of the active Reserved Instance.

        ", "CreateReservedInstancesListingRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure idempotency of your listings. This helps avoid duplicate listings. For more information, see Ensuring Idempotency.

        ", "CreateRouteRequest$RouteTableId": "

        The ID of the route table for the route.

        ", "CreateRouteRequest$DestinationCidrBlock": "

        The CIDR address block used for the destination match. Routing decisions are based on the most specific match.

        ", "CreateRouteRequest$GatewayId": "

        The ID of an Internet gateway or virtual private gateway attached to your VPC.

        ", "CreateRouteRequest$InstanceId": "

        The ID of a NAT instance in your VPC. The operation fails if you specify an instance ID unless exactly one network interface is attached.

        ", "CreateRouteRequest$NetworkInterfaceId": "

        The ID of a network interface.

        ", "CreateRouteRequest$VpcPeeringConnectionId": "

        The ID of a VPC peering connection.

        ", "CreateRouteRequest$NatGatewayId": "

        The ID of a NAT gateway.

        ", "CreateRouteTableRequest$VpcId": "

        The ID of the VPC.

        ", "CreateSecurityGroupRequest$GroupName": "

        The name of the security group.

        Constraints: Up to 255 characters in length

        Constraints for EC2-Classic: ASCII characters

        Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=;{}!$*

        ", "CreateSecurityGroupRequest$Description": "

        A description for the security group. This is informational only.

        Constraints: Up to 255 characters in length

        Constraints for EC2-Classic: ASCII characters

        Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=;{}!$*

        ", "CreateSecurityGroupRequest$VpcId": "

        [EC2-VPC] The ID of the VPC. Required for EC2-VPC.

        ", "CreateSecurityGroupResult$GroupId": "

        The ID of the security group.

        ", "CreateSnapshotRequest$VolumeId": "

        The ID of the EBS volume.

        ", "CreateSnapshotRequest$Description": "

        A description for the snapshot.

        ", "CreateSpotDatafeedSubscriptionRequest$Bucket": "

        The Amazon S3 bucket in which to store the Spot instance data feed.

        ", "CreateSpotDatafeedSubscriptionRequest$Prefix": "

        A prefix for the data feed file names.

        ", "CreateSubnetRequest$VpcId": "

        The ID of the VPC.

        ", "CreateSubnetRequest$CidrBlock": "

        The network range for the subnet, in CIDR notation. For example, 10.0.0.0/24.

        ", "CreateSubnetRequest$AvailabilityZone": "

        The Availability Zone for the subnet.

        Default: AWS selects one for you. If you create more than one subnet in your VPC, we may not necessarily select a different zone for each subnet.

        ", "CreateVolumePermission$UserId": "

        The specific AWS account ID that is to be added or removed from a volume's list of create volume permissions.

        ", "CreateVolumeRequest$SnapshotId": "

        The snapshot from which to create the volume.

        ", "CreateVolumeRequest$AvailabilityZone": "

        The Availability Zone in which to create the volume. Use DescribeAvailabilityZones to list the Availability Zones that are currently available to you.

        ", "CreateVolumeRequest$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use when creating the encrypted volume. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used. The ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the key namespace, and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. If a KmsKeyId is specified, the Encrypted flag must also be set.

        ", "CreateVpcEndpointRequest$VpcId": "

        The ID of the VPC in which the endpoint will be used.

        ", "CreateVpcEndpointRequest$ServiceName": "

        The AWS service name, in the form com.amazonaws.region.service. To get a list of available services, use the DescribeVpcEndpointServices request.

        ", "CreateVpcEndpointRequest$PolicyDocument": "

        A policy to attach to the endpoint that controls access to the service. The policy must be in valid JSON format. If this parameter is not specified, we attach a default policy that allows full access to the service.

        ", "CreateVpcEndpointRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

        ", "CreateVpcEndpointResult$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request.

        ", "CreateVpcPeeringConnectionRequest$VpcId": "

        The ID of the requester VPC.

        ", "CreateVpcPeeringConnectionRequest$PeerVpcId": "

        The ID of the VPC with which you are creating the VPC peering connection.

        ", "CreateVpcPeeringConnectionRequest$PeerOwnerId": "

        The AWS account ID of the owner of the peer VPC.

        Default: Your AWS account ID

        ", "CreateVpcRequest$CidrBlock": "

        The network range for the VPC, in CIDR notation. For example, 10.0.0.0/16.

        ", "CreateVpnConnectionRequest$Type": "

        The type of VPN connection (ipsec.1).

        ", "CreateVpnConnectionRequest$CustomerGatewayId": "

        The ID of the customer gateway.

        ", "CreateVpnConnectionRequest$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "CreateVpnConnectionRouteRequest$VpnConnectionId": "

        The ID of the VPN connection.

        ", "CreateVpnConnectionRouteRequest$DestinationCidrBlock": "

        The CIDR block associated with the local subnet of the customer network.

        ", "CreateVpnGatewayRequest$AvailabilityZone": "

        The Availability Zone for the virtual private gateway.

        ", "CustomerGateway$CustomerGatewayId": "

        The ID of the customer gateway.

        ", "CustomerGateway$State": "

        The current state of the customer gateway (pending | available | deleting | deleted).

        ", "CustomerGateway$Type": "

        The type of VPN connection the customer gateway supports (ipsec.1).

        ", "CustomerGateway$IpAddress": "

        The Internet-routable IP address of the customer gateway's outside interface.

        ", "CustomerGateway$BgpAsn": "

        The customer gateway's Border Gateway Protocol (BGP) Autonomous System Number (ASN).

        ", "CustomerGatewayIdStringList$member": null, "DeleteCustomerGatewayRequest$CustomerGatewayId": "

        The ID of the customer gateway.

        ", "DeleteDhcpOptionsRequest$DhcpOptionsId": "

        The ID of the DHCP options set.

        ", "DeleteInternetGatewayRequest$InternetGatewayId": "

        The ID of the Internet gateway.

        ", "DeleteKeyPairRequest$KeyName": "

        The name of the key pair.

        ", "DeleteNatGatewayRequest$NatGatewayId": "

        The ID of the NAT gateway.

        ", "DeleteNatGatewayResult$NatGatewayId": "

        The ID of the NAT gateway.

        ", "DeleteNetworkAclEntryRequest$NetworkAclId": "

        The ID of the network ACL.

        ", "DeleteNetworkAclRequest$NetworkAclId": "

        The ID of the network ACL.

        ", "DeleteNetworkInterfaceRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "DeletePlacementGroupRequest$GroupName": "

        The name of the placement group.

        ", "DeleteRouteRequest$RouteTableId": "

        The ID of the route table.

        ", "DeleteRouteRequest$DestinationCidrBlock": "

        The CIDR range for the route. The value you specify must match the CIDR for the route exactly.

        ", "DeleteRouteTableRequest$RouteTableId": "

        The ID of the route table.

        ", "DeleteSecurityGroupRequest$GroupName": "

        [EC2-Classic, default VPC] The name of the security group. You can specify either the security group name or the security group ID.

        ", "DeleteSecurityGroupRequest$GroupId": "

        The ID of the security group. Required for a nondefault VPC.

        ", "DeleteSnapshotRequest$SnapshotId": "

        The ID of the EBS snapshot.

        ", "DeleteSubnetRequest$SubnetId": "

        The ID of the subnet.

        ", "DeleteVolumeRequest$VolumeId": "

        The ID of the volume.

        ", "DeleteVpcPeeringConnectionRequest$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "DeleteVpcRequest$VpcId": "

        The ID of the VPC.

        ", "DeleteVpnConnectionRequest$VpnConnectionId": "

        The ID of the VPN connection.

        ", "DeleteVpnConnectionRouteRequest$VpnConnectionId": "

        The ID of the VPN connection.

        ", "DeleteVpnConnectionRouteRequest$DestinationCidrBlock": "

        The CIDR block associated with the local subnet of the customer network.

        ", "DeleteVpnGatewayRequest$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "DeregisterImageRequest$ImageId": "

        The ID of the AMI.

        ", "DescribeClassicLinkInstancesRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeClassicLinkInstancesResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeFlowLogsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeFlowLogsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeHostsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeHostsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeIdFormatRequest$Resource": "

        The type of resource.

        ", "DescribeImageAttributeRequest$ImageId": "

        The ID of the AMI.

        ", "DescribeImportImageTasksRequest$NextToken": "

        A token that indicates the next page of results.

        ", "DescribeImportImageTasksResult$NextToken": "

        The token to use to get the next page of results. This value is null when there are no more results to return.

        ", "DescribeImportSnapshotTasksRequest$NextToken": "

        A token that indicates the next page of results.

        ", "DescribeImportSnapshotTasksResult$NextToken": "

        The token to use to get the next page of results. This value is null when there are no more results to return.

        ", "DescribeInstanceAttributeRequest$InstanceId": "

        The ID of the instance.

        ", "DescribeInstanceStatusRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeInstanceStatusResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeInstancesRequest$NextToken": "

        The token to request the next page of results.

        ", "DescribeInstancesResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeMovingAddressesRequest$NextToken": "

        The token to use to retrieve the next page of results.

        ", "DescribeMovingAddressesResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeNatGatewaysRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeNatGatewaysResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeNetworkInterfaceAttributeRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "DescribeNetworkInterfaceAttributeResult$NetworkInterfaceId": "

        The ID of the network interface.

        ", "DescribePrefixListsRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a prior call.)

        ", "DescribePrefixListsResult$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DescribeReservedInstancesListingsRequest$ReservedInstancesId": "

        One or more Reserved Instance IDs.

        ", "DescribeReservedInstancesListingsRequest$ReservedInstancesListingId": "

        One or more Reserved Instance listing IDs.

        ", "DescribeReservedInstancesModificationsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeReservedInstancesModificationsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeReservedInstancesOfferingsRequest$AvailabilityZone": "

        The Availability Zone in which the Reserved Instance can be used.

        ", "DescribeReservedInstancesOfferingsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeReservedInstancesOfferingsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeScheduledInstanceAvailabilityRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeScheduledInstanceAvailabilityResult$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeScheduledInstancesRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeScheduledInstancesResult$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeSnapshotAttributeRequest$SnapshotId": "

        The ID of the EBS snapshot.

        ", "DescribeSnapshotAttributeResult$SnapshotId": "

        The ID of the EBS snapshot.

        ", "DescribeSnapshotsRequest$NextToken": "

        The NextToken value returned from a previous paginated DescribeSnapshots request where MaxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the NextToken value. This value is null when there are no more results to return.

        ", "DescribeSnapshotsResult$NextToken": "

        The NextToken value to include in a future DescribeSnapshots request. When the results of a DescribeSnapshots request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeSpotFleetInstancesRequest$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "DescribeSpotFleetInstancesRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeSpotFleetInstancesResponse$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "DescribeSpotFleetInstancesResponse$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeSpotFleetRequestHistoryRequest$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "DescribeSpotFleetRequestHistoryRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeSpotFleetRequestHistoryResponse$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "DescribeSpotFleetRequestHistoryResponse$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeSpotFleetRequestsRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeSpotFleetRequestsResponse$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeSpotPriceHistoryRequest$AvailabilityZone": "

        Filters the results by the specified Availability Zone.

        ", "DescribeSpotPriceHistoryRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeSpotPriceHistoryResult$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeStaleSecurityGroupsRequest$VpcId": "

        The ID of the VPC.

        ", "DescribeStaleSecurityGroupsResult$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DescribeTagsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeTagsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return..

        ", "DescribeVolumeAttributeRequest$VolumeId": "

        The ID of the volume.

        ", "DescribeVolumeAttributeResult$VolumeId": "

        The ID of the volume.

        ", "DescribeVolumeStatusRequest$NextToken": "

        The NextToken value to include in a future DescribeVolumeStatus request. When the results of the request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeVolumeStatusResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeVolumesRequest$NextToken": "

        The NextToken value returned from a previous paginated DescribeVolumes request where MaxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the NextToken value. This value is null when there are no more results to return.

        ", "DescribeVolumesResult$NextToken": "

        The NextToken value to include in a future DescribeVolumes request. When the results of a DescribeVolumes request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeVpcAttributeRequest$VpcId": "

        The ID of the VPC.

        ", "DescribeVpcAttributeResult$VpcId": "

        The ID of the VPC.

        ", "DescribeVpcEndpointServicesRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a prior call.)

        ", "DescribeVpcEndpointServicesResult$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DescribeVpcEndpointsRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a prior call.)

        ", "DescribeVpcEndpointsResult$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DetachClassicLinkVpcRequest$InstanceId": "

        The ID of the instance to unlink from the VPC.

        ", "DetachClassicLinkVpcRequest$VpcId": "

        The ID of the VPC to which the instance is linked.

        ", "DetachInternetGatewayRequest$InternetGatewayId": "

        The ID of the Internet gateway.

        ", "DetachInternetGatewayRequest$VpcId": "

        The ID of the VPC.

        ", "DetachNetworkInterfaceRequest$AttachmentId": "

        The ID of the attachment.

        ", "DetachVolumeRequest$VolumeId": "

        The ID of the volume.

        ", "DetachVolumeRequest$InstanceId": "

        The ID of the instance.

        ", "DetachVolumeRequest$Device": "

        The device name.

        ", "DetachVpnGatewayRequest$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "DetachVpnGatewayRequest$VpcId": "

        The ID of the VPC.

        ", "DhcpConfiguration$Key": "

        The name of a DHCP option.

        ", "DhcpOptions$DhcpOptionsId": "

        The ID of the set of DHCP options.

        ", "DhcpOptionsIdStringList$member": null, "DisableVgwRoutePropagationRequest$RouteTableId": "

        The ID of the route table.

        ", "DisableVgwRoutePropagationRequest$GatewayId": "

        The ID of the virtual private gateway.

        ", "DisableVpcClassicLinkDnsSupportRequest$VpcId": "

        The ID of the VPC.

        ", "DisableVpcClassicLinkRequest$VpcId": "

        The ID of the VPC.

        ", "DisassociateAddressRequest$PublicIp": "

        [EC2-Classic] The Elastic IP address. Required for EC2-Classic.

        ", "DisassociateAddressRequest$AssociationId": "

        [EC2-VPC] The association ID. Required for EC2-VPC.

        ", "DisassociateRouteTableRequest$AssociationId": "

        The association ID representing the current association between the route table and subnet.

        ", "DiskImage$Description": "

        A description of the disk image.

        ", "DiskImageDescription$ImportManifestUrl": "

        A presigned URL for the import manifest stored in Amazon S3. For information about creating a presigned URL for an Amazon S3 object, read the \"Query String Request Authentication Alternative\" section of the Authenticating REST Requests topic in the Amazon Simple Storage Service Developer Guide.

        For information about the import manifest referenced by this API action, see VM Import Manifest.

        ", "DiskImageDescription$Checksum": "

        The checksum computed for the disk image.

        ", "DiskImageDetail$ImportManifestUrl": "

        A presigned URL for the import manifest stored in Amazon S3 and presented here as an Amazon S3 presigned URL. For information about creating a presigned URL for an Amazon S3 object, read the \"Query String Request Authentication Alternative\" section of the Authenticating REST Requests topic in the Amazon Simple Storage Service Developer Guide.

        For information about the import manifest referenced by this API action, see VM Import Manifest.

        ", "DiskImageVolumeDescription$Id": "

        The volume identifier.

        ", "EbsBlockDevice$SnapshotId": "

        The ID of the snapshot.

        ", "EbsInstanceBlockDevice$VolumeId": "

        The ID of the EBS volume.

        ", "EbsInstanceBlockDeviceSpecification$VolumeId": "

        The ID of the EBS volume.

        ", "EnableVgwRoutePropagationRequest$RouteTableId": "

        The ID of the route table.

        ", "EnableVgwRoutePropagationRequest$GatewayId": "

        The ID of the virtual private gateway.

        ", "EnableVolumeIORequest$VolumeId": "

        The ID of the volume.

        ", "EnableVpcClassicLinkDnsSupportRequest$VpcId": "

        The ID of the VPC.

        ", "EnableVpcClassicLinkRequest$VpcId": "

        The ID of the VPC.

        ", "EventInformation$InstanceId": "

        The ID of the instance. This information is available only for instanceChange events.

        ", "EventInformation$EventSubType": "

        The event.

        The following are the error events.

        • iamFleetRoleInvalid - The Spot fleet did not have the required permissions either to launch or terminate an instance.

        • launchSpecTemporarilyBlacklisted - The configuration is not valid and several attempts to launch instances have failed. For more information, see the description of the event.

        • spotFleetRequestConfigurationInvalid - The configuration is not valid. For more information, see the description of the event.

        • spotInstanceCountLimitExceeded - You've reached the limit on the number of Spot instances that you can launch.

        The following are the fleetRequestChange events.

        • active - The Spot fleet has been validated and Amazon EC2 is attempting to maintain the target number of running Spot instances.

        • cancelled - The Spot fleet is canceled and has no running Spot instances. The Spot fleet will be deleted two days after its instances were terminated.

        • cancelled_running - The Spot fleet is canceled and will not launch additional Spot instances, but its existing Spot instances continue to run until they are interrupted or terminated.

        • cancelled_terminating - The Spot fleet is canceled and its Spot instances are terminating.

        • expired - The Spot fleet request has expired. A subsequent event indicates that the instances were terminated, if the request was created with TerminateInstancesWithExpiration set.

        • modify_in_progress - A request to modify the Spot fleet request was accepted and is in progress.

        • modify_successful - The Spot fleet request was modified.

        • price_update - The bid price for a launch configuration was adjusted because it was too high. This change is permanent.

        • submitted - The Spot fleet request is being evaluated and Amazon EC2 is preparing to launch the target number of Spot instances.

        The following are the instanceChange events.

        • launched - A bid was fulfilled and a new instance was launched.

        • terminated - An instance was terminated by the user.

        ", "EventInformation$EventDescription": "

        The description of the event.

        ", "ExecutableByStringList$member": null, "ExportTask$ExportTaskId": "

        The ID of the export task.

        ", "ExportTask$Description": "

        A description of the resource being exported.

        ", "ExportTask$StatusMessage": "

        The status message related to the export task.

        ", "ExportTaskIdStringList$member": null, "ExportToS3Task$S3Bucket": "

        The S3 bucket for the destination image. The destination bucket must exist and grant WRITE and READ_ACP permissions to the AWS account vm-import-export@amazon.com.

        ", "ExportToS3Task$S3Key": "

        The encryption key for your S3 bucket.

        ", "ExportToS3TaskSpecification$S3Bucket": "

        The S3 bucket for the destination image. The destination bucket must exist and grant WRITE and READ_ACP permissions to the AWS account vm-import-export@amazon.com.

        ", "ExportToS3TaskSpecification$S3Prefix": "

        The image is written to a single object in the S3 bucket at the S3 key s3prefix + exportTaskId + '.' + diskImageFormat.

        ", "Filter$Name": "

        The name of the filter. Filter names are case-sensitive.

        ", "FlowLog$FlowLogId": "

        The flow log ID.

        ", "FlowLog$FlowLogStatus": "

        The status of the flow log (ACTIVE).

        ", "FlowLog$ResourceId": "

        The ID of the resource on which the flow log was created.

        ", "FlowLog$LogGroupName": "

        The name of the flow log group.

        ", "FlowLog$DeliverLogsStatus": "

        The status of the logs delivery (SUCCESS | FAILED).

        ", "FlowLog$DeliverLogsErrorMessage": "

        Information about the error that occurred. Rate limited indicates that CloudWatch logs throttling has been applied for one or more network interfaces, or that you've reached the limit on the number of CloudWatch Logs log groups that you can create. Access error indicates that the IAM role associated with the flow log does not have sufficient permissions to publish to CloudWatch Logs. Unknown error indicates an internal error.

        ", "FlowLog$DeliverLogsPermissionArn": "

        The ARN of the IAM role that posts logs to CloudWatch Logs.

        ", "GetConsoleOutputRequest$InstanceId": "

        The ID of the instance.

        ", "GetConsoleOutputResult$InstanceId": "

        The ID of the instance.

        ", "GetConsoleOutputResult$Output": "

        The console output, base64-encoded. If using a command line tool, the tools decode the output for you.

        ", "GetConsoleScreenshotRequest$InstanceId": "

        The ID of the instance.

        ", "GetConsoleScreenshotResult$InstanceId": "

        The ID of the instance.

        ", "GetConsoleScreenshotResult$ImageData": "

        The data that comprises the image.

        ", "GetPasswordDataRequest$InstanceId": "

        The ID of the Windows instance.

        ", "GetPasswordDataResult$InstanceId": "

        The ID of the Windows instance.

        ", "GetPasswordDataResult$PasswordData": "

        The password of the instance.

        ", "GroupIdStringList$member": null, "GroupIdentifier$GroupName": "

        The name of the security group.

        ", "GroupIdentifier$GroupId": "

        The ID of the security group.

        ", "GroupIds$member": null, "GroupNameStringList$member": null, "Host$HostId": "

        The ID of the Dedicated host.

        ", "Host$HostReservationId": "

        The reservation ID of the Dedicated host. This returns a null response if the Dedicated host doesn't have an associated reservation.

        ", "Host$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.

        ", "Host$AvailabilityZone": "

        The Availability Zone of the Dedicated host.

        ", "HostInstance$InstanceId": "

        the IDs of instances that are running on the Dedicated host.

        ", "HostInstance$InstanceType": "

        The instance type size (for example, m3.medium) of the running instance.

        ", "HostProperties$InstanceType": "

        The instance type size that the Dedicated host supports (for example, m3.medium).

        ", "IamInstanceProfile$Arn": "

        The Amazon Resource Name (ARN) of the instance profile.

        ", "IamInstanceProfile$Id": "

        The ID of the instance profile.

        ", "IamInstanceProfileSpecification$Arn": "

        The Amazon Resource Name (ARN) of the instance profile.

        ", "IamInstanceProfileSpecification$Name": "

        The name of the instance profile.

        ", "IdFormat$Resource": "

        The type of resource.

        ", "Image$ImageId": "

        The ID of the AMI.

        ", "Image$ImageLocation": "

        The location of the AMI.

        ", "Image$OwnerId": "

        The AWS account ID of the image owner.

        ", "Image$CreationDate": "

        The date and time the image was created.

        ", "Image$KernelId": "

        The kernel associated with the image, if any. Only applicable for machine images.

        ", "Image$RamdiskId": "

        The RAM disk associated with the image, if any. Only applicable for machine images.

        ", "Image$SriovNetSupport": "

        Specifies whether enhanced networking is enabled.

        ", "Image$ImageOwnerAlias": "

        The AWS account alias (for example, amazon, self) or the AWS account ID of the AMI owner.

        ", "Image$Name": "

        The name of the AMI that was provided during image creation.

        ", "Image$Description": "

        The description of the AMI that was provided during image creation.

        ", "Image$RootDeviceName": "

        The device name of the root device (for example, /dev/sda1 or /dev/xvda).

        ", "ImageAttribute$ImageId": "

        The ID of the AMI.

        ", "ImageDiskContainer$Description": "

        The description of the disk image.

        ", "ImageDiskContainer$Format": "

        The format of the disk image being imported.

        Valid values: RAW | VHD | VMDK | OVA

        ", "ImageDiskContainer$Url": "

        The URL to the Amazon S3-based disk image being imported. The URL can either be a https URL (https://..) or an Amazon S3 URL (s3://..)

        ", "ImageDiskContainer$DeviceName": "

        The block device mapping for the disk.

        ", "ImageDiskContainer$SnapshotId": "

        The ID of the EBS snapshot to be used for importing the snapshot.

        ", "ImageIdStringList$member": null, "ImportImageRequest$Description": "

        A description string for the import image task.

        ", "ImportImageRequest$LicenseType": "

        The license type to be used for the Amazon Machine Image (AMI) after importing.

        Note: You may only use BYOL if you have existing licenses with rights to use these licenses in a third party cloud like AWS. For more information, see VM Import/Export Prerequisites in the Amazon Elastic Compute Cloud User Guide.

        Valid values: AWS | BYOL

        ", "ImportImageRequest$Hypervisor": "

        The target hypervisor platform.

        Valid values: xen

        ", "ImportImageRequest$Architecture": "

        The architecture of the virtual machine.

        Valid values: i386 | x86_64

        ", "ImportImageRequest$Platform": "

        The operating system of the virtual machine.

        Valid values: Windows | Linux

        ", "ImportImageRequest$ClientToken": "

        The token to enable idempotency for VM import requests.

        ", "ImportImageRequest$RoleName": "

        The name of the role to use when not using the default role, 'vmimport'.

        ", "ImportImageResult$ImportTaskId": "

        The task ID of the import image task.

        ", "ImportImageResult$Architecture": "

        The architecture of the virtual machine.

        ", "ImportImageResult$LicenseType": "

        The license type of the virtual machine.

        ", "ImportImageResult$Platform": "

        The operating system of the virtual machine.

        ", "ImportImageResult$Hypervisor": "

        The target hypervisor of the import task.

        ", "ImportImageResult$Description": "

        A description of the import task.

        ", "ImportImageResult$ImageId": "

        The ID of the Amazon Machine Image (AMI) created by the import task.

        ", "ImportImageResult$Progress": "

        The progress of the task.

        ", "ImportImageResult$StatusMessage": "

        A detailed status message of the import task.

        ", "ImportImageResult$Status": "

        A brief status of the task.

        ", "ImportImageTask$ImportTaskId": "

        The ID of the import image task.

        ", "ImportImageTask$Architecture": "

        The architecture of the virtual machine.

        Valid values: i386 | x86_64

        ", "ImportImageTask$LicenseType": "

        The license type of the virtual machine.

        ", "ImportImageTask$Platform": "

        The description string for the import image task.

        ", "ImportImageTask$Hypervisor": "

        The target hypervisor for the import task.

        Valid values: xen

        ", "ImportImageTask$Description": "

        A description of the import task.

        ", "ImportImageTask$ImageId": "

        The ID of the Amazon Machine Image (AMI) of the imported virtual machine.

        ", "ImportImageTask$Progress": "

        The percentage of progress of the import image task.

        ", "ImportImageTask$StatusMessage": "

        A descriptive status message for the import image task.

        ", "ImportImageTask$Status": "

        A brief status for the import image task.

        ", "ImportInstanceLaunchSpecification$AdditionalInfo": "

        Reserved.

        ", "ImportInstanceLaunchSpecification$SubnetId": "

        [EC2-VPC] The ID of the subnet in which to launch the instance.

        ", "ImportInstanceLaunchSpecification$PrivateIpAddress": "

        [EC2-VPC] An available IP address from the IP address range of the subnet.

        ", "ImportInstanceRequest$Description": "

        A description for the instance being imported.

        ", "ImportInstanceTaskDetails$InstanceId": "

        The ID of the instance.

        ", "ImportInstanceTaskDetails$Description": "

        A description of the task.

        ", "ImportInstanceVolumeDetailItem$AvailabilityZone": "

        The Availability Zone where the resulting instance will reside.

        ", "ImportInstanceVolumeDetailItem$Status": "

        The status of the import of this particular disk image.

        ", "ImportInstanceVolumeDetailItem$StatusMessage": "

        The status information or errors related to the disk image.

        ", "ImportInstanceVolumeDetailItem$Description": "

        A description of the task.

        ", "ImportKeyPairRequest$KeyName": "

        A unique name for the key pair.

        ", "ImportKeyPairResult$KeyName": "

        The key pair name you provided.

        ", "ImportKeyPairResult$KeyFingerprint": "

        The MD5 public key fingerprint as specified in section 4 of RFC 4716.

        ", "ImportSnapshotRequest$Description": "

        The description string for the import snapshot task.

        ", "ImportSnapshotRequest$ClientToken": "

        Token to enable idempotency for VM import requests.

        ", "ImportSnapshotRequest$RoleName": "

        The name of the role to use when not using the default role, 'vmimport'.

        ", "ImportSnapshotResult$ImportTaskId": "

        The ID of the import snapshot task.

        ", "ImportSnapshotResult$Description": "

        A description of the import snapshot task.

        ", "ImportSnapshotTask$ImportTaskId": "

        The ID of the import snapshot task.

        ", "ImportSnapshotTask$Description": "

        A description of the import snapshot task.

        ", "ImportTaskIdList$member": null, "ImportVolumeRequest$AvailabilityZone": "

        The Availability Zone for the resulting EBS volume.

        ", "ImportVolumeRequest$Description": "

        A description of the volume.

        ", "ImportVolumeTaskDetails$AvailabilityZone": "

        The Availability Zone where the resulting volume will reside.

        ", "ImportVolumeTaskDetails$Description": "

        The description you provided when starting the import volume task.

        ", "Instance$InstanceId": "

        The ID of the instance.

        ", "Instance$ImageId": "

        The ID of the AMI used to launch the instance.

        ", "Instance$PrivateDnsName": "

        The private DNS name assigned to the instance. This DNS name can only be used inside the Amazon EC2 network. This name is not available until the instance enters the running state. For EC2-VPC, this name is only available if you've enabled DNS hostnames for your VPC.

        ", "Instance$PublicDnsName": "

        The public DNS name assigned to the instance. This name is not available until the instance enters the running state. For EC2-VPC, this name is only available if you've enabled DNS hostnames for your VPC.

        ", "Instance$StateTransitionReason": "

        The reason for the most recent state transition. This might be an empty string.

        ", "Instance$KeyName": "

        The name of the key pair, if this instance was launched with an associated key pair.

        ", "Instance$KernelId": "

        The kernel associated with this instance, if applicable.

        ", "Instance$RamdiskId": "

        The RAM disk associated with this instance, if applicable.

        ", "Instance$SubnetId": "

        [EC2-VPC] The ID of the subnet in which the instance is running.

        ", "Instance$VpcId": "

        [EC2-VPC] The ID of the VPC in which the instance is running.

        ", "Instance$PrivateIpAddress": "

        The private IP address assigned to the instance.

        ", "Instance$PublicIpAddress": "

        The public IP address assigned to the instance, if applicable.

        ", "Instance$RootDeviceName": "

        The root device name (for example, /dev/sda1 or /dev/xvda).

        ", "Instance$SpotInstanceRequestId": "

        If the request is a Spot instance request, the ID of the request.

        ", "Instance$ClientToken": "

        The idempotency token you provided when you launched the instance, if applicable.

        ", "Instance$SriovNetSupport": "

        Specifies whether enhanced networking is enabled.

        ", "InstanceAttribute$InstanceId": "

        The ID of the instance.

        ", "InstanceBlockDeviceMapping$DeviceName": "

        The device name exposed to the instance (for example, /dev/sdh or xvdh).

        ", "InstanceBlockDeviceMappingSpecification$DeviceName": "

        The device name exposed to the instance (for example, /dev/sdh or xvdh).

        ", "InstanceBlockDeviceMappingSpecification$VirtualName": "

        The virtual device name.

        ", "InstanceBlockDeviceMappingSpecification$NoDevice": "

        suppress the specified device included in the block device mapping.

        ", "InstanceCapacity$InstanceType": "

        The instance type size supported by the Dedicated host.

        ", "InstanceExportDetails$InstanceId": "

        The ID of the resource being exported.

        ", "InstanceIdSet$member": null, "InstanceIdStringList$member": null, "InstanceMonitoring$InstanceId": "

        The ID of the instance.

        ", "InstanceNetworkInterface$NetworkInterfaceId": "

        The ID of the network interface.

        ", "InstanceNetworkInterface$SubnetId": "

        The ID of the subnet.

        ", "InstanceNetworkInterface$VpcId": "

        The ID of the VPC.

        ", "InstanceNetworkInterface$Description": "

        The description.

        ", "InstanceNetworkInterface$OwnerId": "

        The ID of the AWS account that created the network interface.

        ", "InstanceNetworkInterface$MacAddress": "

        The MAC address.

        ", "InstanceNetworkInterface$PrivateIpAddress": "

        The IP address of the network interface within the subnet.

        ", "InstanceNetworkInterface$PrivateDnsName": "

        The private DNS name.

        ", "InstanceNetworkInterfaceAssociation$PublicIp": "

        The public IP address or Elastic IP address bound to the network interface.

        ", "InstanceNetworkInterfaceAssociation$PublicDnsName": "

        The public DNS name.

        ", "InstanceNetworkInterfaceAssociation$IpOwnerId": "

        The ID of the owner of the Elastic IP address.

        ", "InstanceNetworkInterfaceAttachment$AttachmentId": "

        The ID of the network interface attachment.

        ", "InstanceNetworkInterfaceSpecification$NetworkInterfaceId": "

        The ID of the network interface.

        ", "InstanceNetworkInterfaceSpecification$SubnetId": "

        The ID of the subnet associated with the network string. Applies only if creating a network interface when launching an instance.

        ", "InstanceNetworkInterfaceSpecification$Description": "

        The description of the network interface. Applies only if creating a network interface when launching an instance.

        ", "InstanceNetworkInterfaceSpecification$PrivateIpAddress": "

        The private IP address of the network interface. Applies only if creating a network interface when launching an instance.

        ", "InstancePrivateIpAddress$PrivateIpAddress": "

        The private IP address of the network interface.

        ", "InstancePrivateIpAddress$PrivateDnsName": "

        The private DNS name.

        ", "InstanceStateChange$InstanceId": "

        The ID of the instance.

        ", "InstanceStatus$InstanceId": "

        The ID of the instance.

        ", "InstanceStatus$AvailabilityZone": "

        The Availability Zone of the instance.

        ", "InstanceStatusEvent$Description": "

        A description of the event.

        After a scheduled event is completed, it can still be described for up to a week. If the event has been completed, this description starts with the following text: [Completed].

        ", "InternetGateway$InternetGatewayId": "

        The ID of the Internet gateway.

        ", "InternetGatewayAttachment$VpcId": "

        The ID of the VPC.

        ", "IpPermission$IpProtocol": "

        The IP protocol name (for tcp, udp, and icmp) or number (see Protocol Numbers).

        [EC2-VPC only] When you authorize or revoke security group rules, you can use -1 to specify all.

        ", "IpRange$CidrIp": "

        The CIDR range. You can either specify a CIDR range or a source security group, not both.

        ", "IpRanges$member": null, "KeyNameStringList$member": null, "KeyPair$KeyName": "

        The name of the key pair.

        ", "KeyPair$KeyFingerprint": "

        The SHA-1 digest of the DER encoded private key.

        ", "KeyPair$KeyMaterial": "

        An unencrypted PEM encoded RSA private key.

        ", "KeyPairInfo$KeyName": "

        The name of the key pair.

        ", "KeyPairInfo$KeyFingerprint": "

        If you used CreateKeyPair to create the key pair, this is the SHA-1 digest of the DER encoded private key. If you used ImportKeyPair to provide AWS the public key, this is the MD5 public key fingerprint as specified in section 4 of RFC4716.

        ", "LaunchPermission$UserId": "

        The AWS account ID.

        ", "LaunchSpecification$ImageId": "

        The ID of the AMI.

        ", "LaunchSpecification$KeyName": "

        The name of the key pair.

        ", "LaunchSpecification$UserData": "

        The Base64-encoded MIME user data to make available to the instances.

        ", "LaunchSpecification$AddressingType": "

        Deprecated.

        ", "LaunchSpecification$KernelId": "

        The ID of the kernel.

        ", "LaunchSpecification$RamdiskId": "

        The ID of the RAM disk.

        ", "LaunchSpecification$SubnetId": "

        The ID of the subnet in which to launch the instance.

        ", "ModifyIdFormatRequest$Resource": "

        The type of resource.

        ", "ModifyImageAttributeRequest$ImageId": "

        The ID of the AMI.

        ", "ModifyImageAttributeRequest$Attribute": "

        The name of the attribute to modify.

        ", "ModifyImageAttributeRequest$Value": "

        The value of the attribute being modified. This is only valid when modifying the description attribute.

        ", "ModifyInstanceAttributeRequest$InstanceId": "

        The ID of the instance.

        ", "ModifyInstanceAttributeRequest$Value": "

        A new value for the attribute. Use only with the kernel, ramdisk, userData, disableApiTermination, or instanceInitiatedShutdownBehavior attribute.

        ", "ModifyInstancePlacementRequest$InstanceId": "

        The ID of the instance that you are modifying.

        ", "ModifyInstancePlacementRequest$HostId": "

        The ID of the Dedicated host that the instance will have affinity with.

        ", "ModifyNetworkInterfaceAttributeRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "ModifyReservedInstancesRequest$ClientToken": "

        A unique, case-sensitive token you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

        ", "ModifyReservedInstancesResult$ReservedInstancesModificationId": "

        The ID for the modification.

        ", "ModifySnapshotAttributeRequest$SnapshotId": "

        The ID of the snapshot.

        ", "ModifySpotFleetRequestRequest$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "ModifySubnetAttributeRequest$SubnetId": "

        The ID of the subnet.

        ", "ModifyVolumeAttributeRequest$VolumeId": "

        The ID of the volume.

        ", "ModifyVpcAttributeRequest$VpcId": "

        The ID of the VPC.

        ", "ModifyVpcEndpointRequest$VpcEndpointId": "

        The ID of the endpoint.

        ", "ModifyVpcEndpointRequest$PolicyDocument": "

        A policy document to attach to the endpoint. The policy must be in valid JSON format.

        ", "ModifyVpcPeeringConnectionOptionsRequest$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "MoveAddressToVpcRequest$PublicIp": "

        The Elastic IP address.

        ", "MoveAddressToVpcResult$AllocationId": "

        The allocation ID for the Elastic IP address.

        ", "MovingAddressStatus$PublicIp": "

        The Elastic IP address.

        ", "NatGateway$VpcId": "

        The ID of the VPC in which the NAT gateway is located.

        ", "NatGateway$SubnetId": "

        The ID of the subnet in which the NAT gateway is located.

        ", "NatGateway$NatGatewayId": "

        The ID of the NAT gateway.

        ", "NatGateway$FailureCode": "

        If the NAT gateway could not be created, specifies the error code for the failure. (InsufficientFreeAddressesInSubnet | Gateway.NotAttached | InvalidAllocationID.NotFound | Resource.AlreadyAssociated | InternalError | InvalidSubnetID.NotFound)

        ", "NatGateway$FailureMessage": "

        If the NAT gateway could not be created, specifies the error message for the failure, that corresponds to the error code.

        • For InsufficientFreeAddressesInSubnet: \"Subnet has insufficient free addresses to create this NAT gateway\"

        • For Gateway.NotAttached: \"Network vpc-xxxxxxxx has no Internet gateway attached\"

        • For InvalidAllocationID.NotFound: \"Elastic IP address eipalloc-xxxxxxxx could not be associated with this NAT gateway\"

        • For Resource.AlreadyAssociated: \"Elastic IP address eipalloc-xxxxxxxx is already associated\"

        • For InternalError: \"Network interface eni-xxxxxxxx, created and used internally by this NAT gateway is in an invalid state. Please try again.\"

        • For InvalidSubnetID.NotFound: \"The specified subnet subnet-xxxxxxxx does not exist or could not be found.\"

        ", "NatGatewayAddress$PublicIp": "

        The Elastic IP address associated with the NAT gateway.

        ", "NatGatewayAddress$AllocationId": "

        The allocation ID of the Elastic IP address that's associated with the NAT gateway.

        ", "NatGatewayAddress$PrivateIp": "

        The private IP address associated with the Elastic IP address.

        ", "NatGatewayAddress$NetworkInterfaceId": "

        The ID of the network interface associated with the NAT gateway.

        ", "NetworkAcl$NetworkAclId": "

        The ID of the network ACL.

        ", "NetworkAcl$VpcId": "

        The ID of the VPC for the network ACL.

        ", "NetworkAclAssociation$NetworkAclAssociationId": "

        The ID of the association between a network ACL and a subnet.

        ", "NetworkAclAssociation$NetworkAclId": "

        The ID of the network ACL.

        ", "NetworkAclAssociation$SubnetId": "

        The ID of the subnet.

        ", "NetworkAclEntry$Protocol": "

        The protocol. A value of -1 means all protocols.

        ", "NetworkAclEntry$CidrBlock": "

        The network range to allow or deny, in CIDR notation.

        ", "NetworkInterface$NetworkInterfaceId": "

        The ID of the network interface.

        ", "NetworkInterface$SubnetId": "

        The ID of the subnet.

        ", "NetworkInterface$VpcId": "

        The ID of the VPC.

        ", "NetworkInterface$AvailabilityZone": "

        The Availability Zone.

        ", "NetworkInterface$Description": "

        A description.

        ", "NetworkInterface$OwnerId": "

        The AWS account ID of the owner of the network interface.

        ", "NetworkInterface$RequesterId": "

        The ID of the entity that launched the instance on your behalf (for example, AWS Management Console or Auto Scaling).

        ", "NetworkInterface$MacAddress": "

        The MAC address.

        ", "NetworkInterface$PrivateIpAddress": "

        The IP address of the network interface within the subnet.

        ", "NetworkInterface$PrivateDnsName": "

        The private DNS name.

        ", "NetworkInterfaceAssociation$PublicIp": "

        The address of the Elastic IP address bound to the network interface.

        ", "NetworkInterfaceAssociation$PublicDnsName": "

        The public DNS name.

        ", "NetworkInterfaceAssociation$IpOwnerId": "

        The ID of the Elastic IP address owner.

        ", "NetworkInterfaceAssociation$AllocationId": "

        The allocation ID.

        ", "NetworkInterfaceAssociation$AssociationId": "

        The association ID.

        ", "NetworkInterfaceAttachment$AttachmentId": "

        The ID of the network interface attachment.

        ", "NetworkInterfaceAttachment$InstanceId": "

        The ID of the instance.

        ", "NetworkInterfaceAttachment$InstanceOwnerId": "

        The AWS account ID of the owner of the instance.

        ", "NetworkInterfaceAttachmentChanges$AttachmentId": "

        The ID of the network interface attachment.

        ", "NetworkInterfaceIdList$member": null, "NetworkInterfacePrivateIpAddress$PrivateIpAddress": "

        The private IP address.

        ", "NetworkInterfacePrivateIpAddress$PrivateDnsName": "

        The private DNS name.

        ", "NewDhcpConfiguration$Key": null, "OwnerStringList$member": null, "Placement$AvailabilityZone": "

        The Availability Zone of the instance.

        ", "Placement$GroupName": "

        The name of the placement group the instance is in (for cluster compute instances).

        ", "Placement$HostId": "

        The ID of the Dedicted host on which the instance resides. This parameter is not support for the ImportInstance command.

        ", "Placement$Affinity": "

        The affinity setting for the instance on the Dedicated host. This parameter is not supported for the ImportInstance command.

        ", "PlacementGroup$GroupName": "

        The name of the placement group.

        ", "PlacementGroupStringList$member": null, "PrefixList$PrefixListId": "

        The ID of the prefix.

        ", "PrefixList$PrefixListName": "

        The name of the prefix.

        ", "PrefixListId$PrefixListId": "

        The ID of the prefix.

        ", "PrefixListIdSet$member": null, "PrivateIpAddressSpecification$PrivateIpAddress": "

        The private IP addresses.

        ", "PrivateIpAddressStringList$member": null, "ProductCode$ProductCodeId": "

        The product code.

        ", "ProductCodeStringList$member": null, "ProductDescriptionList$member": null, "PropagatingVgw$GatewayId": "

        The ID of the virtual private gateway (VGW).

        ", "ProvisionedBandwidth$Provisioned": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        ", "ProvisionedBandwidth$Requested": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        ", "ProvisionedBandwidth$Status": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        ", "PublicIpStringList$member": null, "PurchaseRequest$PurchaseToken": "

        The purchase token.

        ", "PurchaseReservedInstancesOfferingRequest$ReservedInstancesOfferingId": "

        The ID of the Reserved Instance offering to purchase.

        ", "PurchaseReservedInstancesOfferingResult$ReservedInstancesId": "

        The IDs of the purchased Reserved Instances.

        ", "PurchaseScheduledInstancesRequest$ClientToken": "

        Unique, case-sensitive identifier that ensures the idempotency of the request. For more information, see Ensuring Idempotency.

        ", "Region$RegionName": "

        The name of the region.

        ", "Region$Endpoint": "

        The region service endpoint.

        ", "RegionNameStringList$member": null, "RegisterImageRequest$ImageLocation": "

        The full path to your AMI manifest in Amazon S3 storage.

        ", "RegisterImageRequest$Name": "

        A name for your AMI.

        Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)

        ", "RegisterImageRequest$Description": "

        A description for your AMI.

        ", "RegisterImageRequest$KernelId": "

        The ID of the kernel.

        ", "RegisterImageRequest$RamdiskId": "

        The ID of the RAM disk.

        ", "RegisterImageRequest$RootDeviceName": "

        The name of the root device (for example, /dev/sda1, or /dev/xvda).

        ", "RegisterImageRequest$VirtualizationType": "

        The type of virtualization.

        Default: paravirtual

        ", "RegisterImageRequest$SriovNetSupport": "

        Set to simple to enable enhanced networking for the AMI and any instances that you launch from the AMI.

        There is no way to disable enhanced networking at this time.

        This option is supported only for HVM AMIs. Specifying this option with a PV AMI can make instances launched from the AMI unreachable.

        ", "RegisterImageResult$ImageId": "

        The ID of the newly registered AMI.

        ", "RejectVpcPeeringConnectionRequest$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "ReleaseAddressRequest$PublicIp": "

        [EC2-Classic] The Elastic IP address. Required for EC2-Classic.

        ", "ReleaseAddressRequest$AllocationId": "

        [EC2-VPC] The allocation ID. Required for EC2-VPC.

        ", "ReplaceNetworkAclAssociationRequest$AssociationId": "

        The ID of the current association between the original network ACL and the subnet.

        ", "ReplaceNetworkAclAssociationRequest$NetworkAclId": "

        The ID of the new network ACL to associate with the subnet.

        ", "ReplaceNetworkAclAssociationResult$NewAssociationId": "

        The ID of the new association.

        ", "ReplaceNetworkAclEntryRequest$NetworkAclId": "

        The ID of the ACL.

        ", "ReplaceNetworkAclEntryRequest$Protocol": "

        The IP protocol. You can specify all or -1 to mean all protocols.

        ", "ReplaceNetworkAclEntryRequest$CidrBlock": "

        The network range to allow or deny, in CIDR notation.

        ", "ReplaceRouteRequest$RouteTableId": "

        The ID of the route table.

        ", "ReplaceRouteRequest$DestinationCidrBlock": "

        The CIDR address block used for the destination match. The value you provide must match the CIDR of an existing route in the table.

        ", "ReplaceRouteRequest$GatewayId": "

        The ID of an Internet gateway or virtual private gateway.

        ", "ReplaceRouteRequest$InstanceId": "

        The ID of a NAT instance in your VPC.

        ", "ReplaceRouteRequest$NetworkInterfaceId": "

        The ID of a network interface.

        ", "ReplaceRouteRequest$VpcPeeringConnectionId": "

        The ID of a VPC peering connection.

        ", "ReplaceRouteRequest$NatGatewayId": "

        The ID of a NAT gateway.

        ", "ReplaceRouteTableAssociationRequest$AssociationId": "

        The association ID.

        ", "ReplaceRouteTableAssociationRequest$RouteTableId": "

        The ID of the new route table to associate with the subnet.

        ", "ReplaceRouteTableAssociationResult$NewAssociationId": "

        The ID of the new association.

        ", "ReportInstanceStatusRequest$Description": "

        Descriptive text about the health state of your instance.

        ", "RequestHostIdList$member": null, "RequestSpotFleetResponse$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "RequestSpotInstancesRequest$SpotPrice": "

        The maximum hourly price (bid) for any Spot instance launched to fulfill the request.

        ", "RequestSpotInstancesRequest$ClientToken": "

        Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.

        ", "RequestSpotInstancesRequest$LaunchGroup": "

        The instance launch group. Launch groups are Spot instances that launch together and terminate together.

        Default: Instances are launched and terminated individually

        ", "RequestSpotInstancesRequest$AvailabilityZoneGroup": "

        The user-specified name for a logical grouping of bids.

        When you specify an Availability Zone group in a Spot Instance request, all Spot instances in the request are launched in the same Availability Zone. Instance proximity is maintained with this parameter, but the choice of Availability Zone is not. The group applies only to bids for Spot Instances of the same instance type. Any additional Spot instance requests that are specified with the same Availability Zone group name are launched in that same Availability Zone, as long as at least one instance from the group is still active.

        If there is no active instance running in the Availability Zone group that you specify for a new Spot instance request (all instances are terminated, the bid is expired, or the bid falls below current market), then Amazon EC2 launches the instance in any Availability Zone where the constraint can be met. Consequently, the subsequent set of Spot instances could be placed in a different zone from the original request, even if you specified the same Availability Zone group.

        Default: Instances are launched in any available Availability Zone.

        ", "RequestSpotLaunchSpecification$ImageId": "

        The ID of the AMI.

        ", "RequestSpotLaunchSpecification$KeyName": "

        The name of the key pair.

        ", "RequestSpotLaunchSpecification$UserData": "

        The Base64-encoded MIME user data to make available to the instances.

        ", "RequestSpotLaunchSpecification$AddressingType": "

        Deprecated.

        ", "RequestSpotLaunchSpecification$KernelId": "

        The ID of the kernel.

        ", "RequestSpotLaunchSpecification$RamdiskId": "

        The ID of the RAM disk.

        ", "RequestSpotLaunchSpecification$SubnetId": "

        The ID of the subnet in which to launch the instance.

        ", "Reservation$ReservationId": "

        The ID of the reservation.

        ", "Reservation$OwnerId": "

        The ID of the AWS account that owns the reservation.

        ", "Reservation$RequesterId": "

        The ID of the requester that launched the instances on your behalf (for example, AWS Management Console or Auto Scaling).

        ", "ReservedInstances$ReservedInstancesId": "

        The ID of the Reserved Instance.

        ", "ReservedInstances$AvailabilityZone": "

        The Availability Zone in which the Reserved Instance can be used.

        ", "ReservedInstancesConfiguration$AvailabilityZone": "

        The Availability Zone for the modified Reserved Instances.

        ", "ReservedInstancesConfiguration$Platform": "

        The network platform of the modified Reserved Instances, which is either EC2-Classic or EC2-VPC.

        ", "ReservedInstancesId$ReservedInstancesId": "

        The ID of the Reserved Instance.

        ", "ReservedInstancesIdStringList$member": null, "ReservedInstancesListing$ReservedInstancesListingId": "

        The ID of the Reserved Instance listing.

        ", "ReservedInstancesListing$ReservedInstancesId": "

        The ID of the Reserved Instance.

        ", "ReservedInstancesListing$StatusMessage": "

        The reason for the current status of the Reserved Instance listing. The response can be blank.

        ", "ReservedInstancesListing$ClientToken": "

        A unique, case-sensitive key supplied by the client to ensure that the request is idempotent. For more information, see Ensuring Idempotency.

        ", "ReservedInstancesModification$ReservedInstancesModificationId": "

        A unique ID for the Reserved Instance modification.

        ", "ReservedInstancesModification$Status": "

        The status of the Reserved Instances modification request.

        ", "ReservedInstancesModification$StatusMessage": "

        The reason for the status.

        ", "ReservedInstancesModification$ClientToken": "

        A unique, case-sensitive key supplied by the client to ensure that the request is idempotent. For more information, see Ensuring Idempotency.

        ", "ReservedInstancesModificationIdStringList$member": null, "ReservedInstancesModificationResult$ReservedInstancesId": "

        The ID for the Reserved Instances that were created as part of the modification request. This field is only available when the modification is fulfilled.

        ", "ReservedInstancesOffering$ReservedInstancesOfferingId": "

        The ID of the Reserved Instance offering.

        ", "ReservedInstancesOffering$AvailabilityZone": "

        The Availability Zone in which the Reserved Instance can be used.

        ", "ReservedInstancesOfferingIdStringList$member": null, "ResetImageAttributeRequest$ImageId": "

        The ID of the AMI.

        ", "ResetInstanceAttributeRequest$InstanceId": "

        The ID of the instance.

        ", "ResetNetworkInterfaceAttributeRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "ResetNetworkInterfaceAttributeRequest$SourceDestCheck": "

        The source/destination checking attribute. Resets the value to true.

        ", "ResetSnapshotAttributeRequest$SnapshotId": "

        The ID of the snapshot.

        ", "ResourceIdList$member": null, "ResponseHostIdList$member": null, "RestorableByStringList$member": null, "RestoreAddressToClassicRequest$PublicIp": "

        The Elastic IP address.

        ", "RestoreAddressToClassicResult$PublicIp": "

        The Elastic IP address.

        ", "RevokeSecurityGroupEgressRequest$GroupId": "

        The ID of the security group.

        ", "RevokeSecurityGroupEgressRequest$SourceSecurityGroupName": "

        The name of a destination security group. To revoke outbound access to a destination security group, we recommend that you use a set of IP permissions instead.

        ", "RevokeSecurityGroupEgressRequest$SourceSecurityGroupOwnerId": "

        The AWS account number for a destination security group. To revoke outbound access to a destination security group, we recommend that you use a set of IP permissions instead.

        ", "RevokeSecurityGroupEgressRequest$IpProtocol": "

        The IP protocol name or number. We recommend that you specify the protocol in a set of IP permissions instead.

        ", "RevokeSecurityGroupEgressRequest$CidrIp": "

        The CIDR IP address range. We recommend that you specify the CIDR range in a set of IP permissions instead.

        ", "RevokeSecurityGroupIngressRequest$GroupName": "

        [EC2-Classic, default VPC] The name of the security group.

        ", "RevokeSecurityGroupIngressRequest$GroupId": "

        The ID of the security group. Required for a security group in a nondefault VPC.

        ", "RevokeSecurityGroupIngressRequest$SourceSecurityGroupName": "

        [EC2-Classic, default VPC] The name of the source security group. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the start of the port range, the IP protocol, and the end of the port range. For EC2-VPC, the source security group must be in the same VPC. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.

        ", "RevokeSecurityGroupIngressRequest$SourceSecurityGroupOwnerId": "

        [EC2-Classic] The AWS account ID of the source security group, if the source security group is in a different account. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the IP protocol, the start of the port range, and the end of the port range. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.

        ", "RevokeSecurityGroupIngressRequest$IpProtocol": "

        The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). Use -1 to specify all.

        ", "RevokeSecurityGroupIngressRequest$CidrIp": "

        The CIDR IP address range. You can't specify this parameter when specifying a source security group.

        ", "Route$DestinationCidrBlock": "

        The CIDR block used for the destination match.

        ", "Route$DestinationPrefixListId": "

        The prefix of the AWS service.

        ", "Route$GatewayId": "

        The ID of a gateway attached to your VPC.

        ", "Route$InstanceId": "

        The ID of a NAT instance in your VPC.

        ", "Route$InstanceOwnerId": "

        The AWS account ID of the owner of the instance.

        ", "Route$NetworkInterfaceId": "

        The ID of the network interface.

        ", "Route$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "Route$NatGatewayId": "

        The ID of a NAT gateway.

        ", "RouteTable$RouteTableId": "

        The ID of the route table.

        ", "RouteTable$VpcId": "

        The ID of the VPC.

        ", "RouteTableAssociation$RouteTableAssociationId": "

        The ID of the association between a route table and a subnet.

        ", "RouteTableAssociation$RouteTableId": "

        The ID of the route table.

        ", "RouteTableAssociation$SubnetId": "

        The ID of the subnet. A subnet ID is not returned for an implicit association.

        ", "RunInstancesRequest$ImageId": "

        The ID of the AMI, which you can get by calling DescribeImages.

        ", "RunInstancesRequest$KeyName": "

        The name of the key pair. You can create a key pair using CreateKeyPair or ImportKeyPair.

        If you do not specify a key pair, you can't connect to the instance unless you choose an AMI that is configured to allow users another way to log in.

        ", "RunInstancesRequest$UserData": "

        Data to configure the instance, or a script to run during instance launch. For more information, see Running Commands on Your Linux Instance at Launch (Linux) and Adding User Data (Windows). For API calls, the text must be base64-encoded. For command line tools, the encoding is performed for you, and you can load the text from a file.

        ", "RunInstancesRequest$KernelId": "

        The ID of the kernel.

        We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB in the Amazon Elastic Compute Cloud User Guide.

        ", "RunInstancesRequest$RamdiskId": "

        The ID of the RAM disk.

        We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB in the Amazon Elastic Compute Cloud User Guide.

        ", "RunInstancesRequest$SubnetId": "

        [EC2-VPC] The ID of the subnet to launch the instance into.

        ", "RunInstancesRequest$PrivateIpAddress": "

        [EC2-VPC] The primary IP address. You must specify a value from the IP address range of the subnet.

        Only one private IP address can be designated as primary. Therefore, you can't specify this parameter if PrivateIpAddresses.n.Primary is set to true and PrivateIpAddresses.n.PrivateIpAddress is set to an IP address.

        Default: We select an IP address from the IP address range of the subnet.

        ", "RunInstancesRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

        Constraints: Maximum 64 ASCII characters

        ", "RunInstancesRequest$AdditionalInfo": "

        Reserved.

        ", "RunScheduledInstancesRequest$ClientToken": "

        Unique, case-sensitive identifier that ensures the idempotency of the request. For more information, see Ensuring Idempotency.

        ", "RunScheduledInstancesRequest$ScheduledInstanceId": "

        The Scheduled Instance ID.

        ", "S3Storage$Bucket": "

        The bucket in which to store the AMI. You can specify a bucket that you already own or a new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone else, Amazon EC2 returns an error.

        ", "S3Storage$Prefix": "

        The beginning of the file name of the AMI.

        ", "S3Storage$AWSAccessKeyId": "

        The access key ID of the owner of the bucket. Before you specify a value for your access key ID, review and follow the guidance in Best Practices for Managing AWS Access Keys.

        ", "S3Storage$UploadPolicySignature": "

        The signature of the Base64 encoded JSON document.

        ", "ScheduledInstance$ScheduledInstanceId": "

        The Scheduled Instance ID.

        ", "ScheduledInstance$InstanceType": "

        The instance type.

        ", "ScheduledInstance$Platform": "

        The platform (Linux/UNIX or Windows).

        ", "ScheduledInstance$NetworkPlatform": "

        The network platform (EC2-Classic or EC2-VPC).

        ", "ScheduledInstance$AvailabilityZone": "

        The Availability Zone.

        ", "ScheduledInstance$HourlyPrice": "

        The hourly price for a single instance.

        ", "ScheduledInstanceAvailability$InstanceType": "

        The instance type. You can specify one of the C3, C4, M4, or R3 instance types.

        ", "ScheduledInstanceAvailability$Platform": "

        The platform (Linux/UNIX or Windows).

        ", "ScheduledInstanceAvailability$NetworkPlatform": "

        The network platform (EC2-Classic or EC2-VPC).

        ", "ScheduledInstanceAvailability$AvailabilityZone": "

        The Availability Zone.

        ", "ScheduledInstanceAvailability$PurchaseToken": "

        The purchase token. This token expires in two hours.

        ", "ScheduledInstanceAvailability$HourlyPrice": "

        The hourly price for a single instance.

        ", "ScheduledInstanceIdRequestSet$member": null, "ScheduledInstanceRecurrence$Frequency": "

        The frequency (Daily, Weekly, or Monthly).

        ", "ScheduledInstanceRecurrence$OccurrenceUnit": "

        The unit for occurrenceDaySet (DayOfWeek or DayOfMonth).

        ", "ScheduledInstanceRecurrenceRequest$Frequency": "

        The frequency (Daily, Weekly, or Monthly).

        ", "ScheduledInstanceRecurrenceRequest$OccurrenceUnit": "

        The unit for OccurrenceDays (DayOfWeek or DayOfMonth). This value is required for a monthly schedule. You can't specify DayOfWeek with a weekly schedule. You can't specify this value with a daily schedule.

        ", "ScheduledInstancesBlockDeviceMapping$DeviceName": "

        The device name exposed to the instance (for example, /dev/sdh or xvdh).

        ", "ScheduledInstancesBlockDeviceMapping$NoDevice": "

        Suppresses the specified device included in the block device mapping of the AMI.

        ", "ScheduledInstancesBlockDeviceMapping$VirtualName": "

        The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with two available instance store volumes can specify mappings for ephemeral0 and ephemeral1.The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.

        Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.

        ", "ScheduledInstancesEbs$SnapshotId": "

        The ID of the snapshot.

        ", "ScheduledInstancesEbs$VolumeType": "

        The volume type. gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, Throughput Optimized HDD for st1, Cold HDD for sc1, or standard for Magnetic.

        Default: standard

        ", "ScheduledInstancesIamInstanceProfile$Arn": "

        The Amazon Resource Name (ARN).

        ", "ScheduledInstancesIamInstanceProfile$Name": "

        The name.

        ", "ScheduledInstancesLaunchSpecification$ImageId": "

        The ID of the Amazon Machine Image (AMI).

        ", "ScheduledInstancesLaunchSpecification$KeyName": "

        The name of the key pair.

        ", "ScheduledInstancesLaunchSpecification$UserData": "

        The base64-encoded MIME user data.

        ", "ScheduledInstancesLaunchSpecification$KernelId": "

        The ID of the kernel.

        ", "ScheduledInstancesLaunchSpecification$InstanceType": "

        The instance type.

        ", "ScheduledInstancesLaunchSpecification$RamdiskId": "

        The ID of the RAM disk.

        ", "ScheduledInstancesLaunchSpecification$SubnetId": "

        The ID of the subnet in which to launch the instances.

        ", "ScheduledInstancesNetworkInterface$NetworkInterfaceId": "

        The ID of the network interface.

        ", "ScheduledInstancesNetworkInterface$SubnetId": "

        The ID of the subnet.

        ", "ScheduledInstancesNetworkInterface$Description": "

        The description.

        ", "ScheduledInstancesNetworkInterface$PrivateIpAddress": "

        The IP address of the network interface within the subnet.

        ", "ScheduledInstancesPlacement$AvailabilityZone": "

        The Availability Zone.

        ", "ScheduledInstancesPlacement$GroupName": "

        The name of the placement group.

        ", "ScheduledInstancesPrivateIpAddressConfig$PrivateIpAddress": "

        The IP address.

        ", "ScheduledInstancesSecurityGroupIdSet$member": null, "SecurityGroup$OwnerId": "

        The AWS account ID of the owner of the security group.

        ", "SecurityGroup$GroupName": "

        The name of the security group.

        ", "SecurityGroup$GroupId": "

        The ID of the security group.

        ", "SecurityGroup$Description": "

        A description of the security group.

        ", "SecurityGroup$VpcId": "

        [EC2-VPC] The ID of the VPC for the security group.

        ", "SecurityGroupIdStringList$member": null, "SecurityGroupReference$GroupId": "

        The ID of your security group.

        ", "SecurityGroupReference$ReferencingVpcId": "

        The ID of the VPC with the referencing security group.

        ", "SecurityGroupReference$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "SecurityGroupStringList$member": null, "Snapshot$SnapshotId": "

        The ID of the snapshot. Each snapshot receives a unique identifier when it is created.

        ", "Snapshot$VolumeId": "

        The ID of the volume that was used to create the snapshot.

        ", "Snapshot$StateMessage": "

        Encrypted Amazon EBS snapshots are copied asynchronously. If a snapshot copy operation fails (for example, if the proper AWS Key Management Service (AWS KMS) permissions are not obtained) this field displays error state details to help you diagnose why the error occurred. This parameter is only returned by the DescribeSnapshots API operation.

        ", "Snapshot$Progress": "

        The progress of the snapshot, as a percentage.

        ", "Snapshot$OwnerId": "

        The AWS account ID of the EBS snapshot owner.

        ", "Snapshot$Description": "

        The description for the snapshot.

        ", "Snapshot$OwnerAlias": "

        The AWS account alias (for example, amazon, self) or AWS account ID that owns the snapshot.

        ", "Snapshot$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) that was used to protect the volume encryption key for the parent volume.

        ", "Snapshot$DataEncryptionKeyId": "

        The data encryption key identifier for the snapshot. This value is a unique identifier that corresponds to the data encryption key that was used to encrypt the original volume or snapshot copy. Because data encryption keys are inherited by volumes created from snapshots, and vice versa, if snapshots share the same data encryption key identifier, then they belong to the same volume/snapshot lineage. This parameter is only returned by the DescribeSnapshots API operation.

        ", "SnapshotDetail$Description": "

        A description for the snapshot.

        ", "SnapshotDetail$Format": "

        The format of the disk image from which the snapshot is created.

        ", "SnapshotDetail$Url": "

        The URL used to access the disk image.

        ", "SnapshotDetail$DeviceName": "

        The block device mapping for the snapshot.

        ", "SnapshotDetail$SnapshotId": "

        The snapshot ID of the disk being imported.

        ", "SnapshotDetail$Progress": "

        The percentage of progress for the task.

        ", "SnapshotDetail$StatusMessage": "

        A detailed status message for the snapshot creation.

        ", "SnapshotDetail$Status": "

        A brief status of the snapshot creation.

        ", "SnapshotDiskContainer$Description": "

        The description of the disk image being imported.

        ", "SnapshotDiskContainer$Format": "

        The format of the disk image being imported.

        Valid values: RAW | VHD | VMDK | OVA

        ", "SnapshotDiskContainer$Url": "

        The URL to the Amazon S3-based disk image being imported. It can either be a https URL (https://..) or an Amazon S3 URL (s3://..).

        ", "SnapshotIdStringList$member": null, "SnapshotTaskDetail$Description": "

        The description of the snapshot.

        ", "SnapshotTaskDetail$Format": "

        The format of the disk image from which the snapshot is created.

        ", "SnapshotTaskDetail$Url": "

        The URL of the disk image from which the snapshot is created.

        ", "SnapshotTaskDetail$SnapshotId": "

        The snapshot ID of the disk being imported.

        ", "SnapshotTaskDetail$Progress": "

        The percentage of completion for the import snapshot task.

        ", "SnapshotTaskDetail$StatusMessage": "

        A detailed status message for the import snapshot task.

        ", "SnapshotTaskDetail$Status": "

        A brief status for the import snapshot task.

        ", "SpotDatafeedSubscription$OwnerId": "

        The AWS account ID of the account.

        ", "SpotDatafeedSubscription$Bucket": "

        The Amazon S3 bucket where the Spot instance data feed is located.

        ", "SpotDatafeedSubscription$Prefix": "

        The prefix that is prepended to data feed files.

        ", "SpotFleetLaunchSpecification$ImageId": "

        The ID of the AMI.

        ", "SpotFleetLaunchSpecification$KeyName": "

        The name of the key pair.

        ", "SpotFleetLaunchSpecification$UserData": "

        The Base64-encoded MIME user data to make available to the instances.

        ", "SpotFleetLaunchSpecification$AddressingType": "

        Deprecated.

        ", "SpotFleetLaunchSpecification$KernelId": "

        The ID of the kernel.

        ", "SpotFleetLaunchSpecification$RamdiskId": "

        The ID of the RAM disk.

        ", "SpotFleetLaunchSpecification$SubnetId": "

        The ID of the subnet in which to launch the instances. To specify multiple subnets, separate them using commas; for example, \"subnet-a61dafcf, subnet-65ea5f08\".

        ", "SpotFleetLaunchSpecification$SpotPrice": "

        The bid price per unit hour for the specified instance type. If this value is not specified, the default is the Spot bid price specified for the fleet. To determine the bid price per unit hour, divide the Spot bid price by the value of WeightedCapacity.

        ", "SpotFleetRequestConfig$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "SpotFleetRequestConfigData$ClientToken": "

        A unique, case-sensitive identifier you provide to ensure idempotency of your listings. This helps avoid duplicate listings. For more information, see Ensuring Idempotency.

        ", "SpotFleetRequestConfigData$SpotPrice": "

        The bid price per unit hour.

        ", "SpotFleetRequestConfigData$IamFleetRole": "

        Grants the Spot fleet permission to terminate Spot instances on your behalf when you cancel its Spot fleet request using CancelSpotFleetRequests or when the Spot fleet request expires, if you set terminateInstancesWithExpiration.

        ", "SpotInstanceRequest$SpotInstanceRequestId": "

        The ID of the Spot instance request.

        ", "SpotInstanceRequest$SpotPrice": "

        The maximum hourly price (bid) for the Spot instance launched to fulfill the request.

        ", "SpotInstanceRequest$LaunchGroup": "

        The instance launch group. Launch groups are Spot instances that launch together and terminate together.

        ", "SpotInstanceRequest$AvailabilityZoneGroup": "

        The Availability Zone group. If you specify the same Availability Zone group for all Spot instance requests, all Spot instances are launched in the same Availability Zone.

        ", "SpotInstanceRequest$InstanceId": "

        The instance ID, if an instance has been launched to fulfill the Spot instance request.

        ", "SpotInstanceRequest$ActualBlockHourlyPrice": "

        If you specified a duration and your Spot instance request was fulfilled, this is the fixed hourly price in effect for the Spot instance while it runs.

        ", "SpotInstanceRequest$LaunchedAvailabilityZone": "

        The Availability Zone in which the bid is launched.

        ", "SpotInstanceRequestIdList$member": null, "SpotInstanceStateFault$Code": "

        The reason code for the Spot instance state change.

        ", "SpotInstanceStateFault$Message": "

        The message for the Spot instance state change.

        ", "SpotInstanceStatus$Code": "

        The status code. For a list of status codes, see Spot Bid Status Codes in the Amazon Elastic Compute Cloud User Guide.

        ", "SpotInstanceStatus$Message": "

        The description for the status code.

        ", "SpotPlacement$AvailabilityZone": "

        The Availability Zone.

        [Spot fleet only] To specify multiple Availability Zones, separate them using commas; for example, \"us-west-2a, us-west-2b\".

        ", "SpotPlacement$GroupName": "

        The name of the placement group (for cluster instances).

        ", "SpotPrice$SpotPrice": "

        The maximum price (bid) that you are willing to pay for a Spot instance.

        ", "SpotPrice$AvailabilityZone": "

        The Availability Zone.

        ", "StaleIpPermission$IpProtocol": "

        The IP protocol name (for tcp, udp, and icmp) or number (see Protocol Numbers).

        ", "StaleSecurityGroup$GroupId": "

        The ID of the security group.

        ", "StaleSecurityGroup$GroupName": "

        The name of the security group.

        ", "StaleSecurityGroup$Description": "

        The description of the security group.

        ", "StaleSecurityGroup$VpcId": "

        The ID of the VPC for the security group.

        ", "StartInstancesRequest$AdditionalInfo": "

        Reserved.

        ", "StateReason$Code": "

        The reason code for the state change.

        ", "StateReason$Message": "

        The message for the state change.

        • Server.SpotInstanceTermination: A Spot instance was terminated due to an increase in the market price.

        • Server.InternalError: An internal error occurred during instance launch, resulting in termination.

        • Server.InsufficientInstanceCapacity: There was insufficient instance capacity to satisfy the launch request.

        • Client.InternalError: A client error caused the instance to terminate on launch.

        • Client.InstanceInitiatedShutdown: The instance was shut down using the shutdown -h command from the instance.

        • Client.UserInitiatedShutdown: The instance was shut down using the Amazon EC2 API.

        • Client.VolumeLimitExceeded: The limit on the number of EBS volumes or total storage was exceeded. Decrease usage or request an increase in your limits.

        • Client.InvalidSnapshot.NotFound: The specified snapshot was not found.

        ", "Subnet$SubnetId": "

        The ID of the subnet.

        ", "Subnet$VpcId": "

        The ID of the VPC the subnet is in.

        ", "Subnet$CidrBlock": "

        The CIDR block assigned to the subnet.

        ", "Subnet$AvailabilityZone": "

        The Availability Zone of the subnet.

        ", "SubnetIdStringList$member": null, "Tag$Key": "

        The key of the tag.

        Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with aws:

        ", "Tag$Value": "

        The value of the tag.

        Constraints: Tag values are case-sensitive and accept a maximum of 255 Unicode characters.

        ", "TagDescription$ResourceId": "

        The ID of the resource. For example, ami-1a2b3c4d.

        ", "TagDescription$Key": "

        The tag key.

        ", "TagDescription$Value": "

        The tag value.

        ", "UnassignPrivateIpAddressesRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "UnsuccessfulItem$ResourceId": "

        The ID of the resource.

        ", "UnsuccessfulItemError$Code": "

        The error code.

        ", "UnsuccessfulItemError$Message": "

        The error message accompanying the error code.

        ", "UserBucket$S3Bucket": "

        The name of the S3 bucket where the disk image is located.

        ", "UserBucket$S3Key": "

        The file name of the disk image.

        ", "UserBucketDetails$S3Bucket": "

        The S3 bucket from which the disk image was created.

        ", "UserBucketDetails$S3Key": "

        The file name of the disk image.

        ", "UserData$Data": "

        The Base64-encoded MIME user data for the instance.

        ", "UserGroupStringList$member": null, "UserIdGroupPair$UserId": "

        The ID of an AWS account. For a referenced security group in another VPC, the account ID of the referenced security group is returned.

        [EC2-Classic] Required when adding or removing rules that reference a security group in another AWS account.

        ", "UserIdGroupPair$GroupName": "

        The name of the security group. In a request, use this parameter for a security group in EC2-Classic or a default VPC only. For a security group in a nondefault VPC, use the security group ID.

        ", "UserIdGroupPair$GroupId": "

        The ID of the security group.

        ", "UserIdGroupPair$VpcId": "

        The ID of the VPC for the referenced security group, if applicable.

        ", "UserIdGroupPair$VpcPeeringConnectionId": "

        The ID of the VPC peering connection, if applicable.

        ", "UserIdGroupPair$PeeringStatus": "

        The status of a VPC peering connection, if applicable.

        ", "UserIdStringList$member": null, "ValueStringList$member": null, "VgwTelemetry$OutsideIpAddress": "

        The Internet-routable IP address of the virtual private gateway's outside interface.

        ", "VgwTelemetry$StatusMessage": "

        If an error occurs, a description of the error.

        ", "Volume$VolumeId": "

        The ID of the volume.

        ", "Volume$SnapshotId": "

        The snapshot from which the volume was created, if applicable.

        ", "Volume$AvailabilityZone": "

        The Availability Zone for the volume.

        ", "Volume$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) that was used to protect the volume encryption key for the volume.

        ", "VolumeAttachment$VolumeId": "

        The ID of the volume.

        ", "VolumeAttachment$InstanceId": "

        The ID of the instance.

        ", "VolumeAttachment$Device": "

        The device name.

        ", "VolumeIdStringList$member": null, "VolumeStatusAction$Code": "

        The code identifying the operation, for example, enable-volume-io.

        ", "VolumeStatusAction$Description": "

        A description of the operation.

        ", "VolumeStatusAction$EventType": "

        The event type associated with this operation.

        ", "VolumeStatusAction$EventId": "

        The ID of the event associated with this operation.

        ", "VolumeStatusDetails$Status": "

        The intended status of the volume status.

        ", "VolumeStatusEvent$EventType": "

        The type of this event.

        ", "VolumeStatusEvent$Description": "

        A description of the event.

        ", "VolumeStatusEvent$EventId": "

        The ID of this event.

        ", "VolumeStatusItem$VolumeId": "

        The volume ID.

        ", "VolumeStatusItem$AvailabilityZone": "

        The Availability Zone of the volume.

        ", "Vpc$VpcId": "

        The ID of the VPC.

        ", "Vpc$CidrBlock": "

        The CIDR block for the VPC.

        ", "Vpc$DhcpOptionsId": "

        The ID of the set of DHCP options you've associated with the VPC (or default if the default options are associated with the VPC).

        ", "VpcAttachment$VpcId": "

        The ID of the VPC.

        ", "VpcClassicLink$VpcId": "

        The ID of the VPC.

        ", "VpcClassicLinkIdList$member": null, "VpcEndpoint$VpcEndpointId": "

        The ID of the VPC endpoint.

        ", "VpcEndpoint$VpcId": "

        The ID of the VPC to which the endpoint is associated.

        ", "VpcEndpoint$ServiceName": "

        The name of the AWS service to which the endpoint is associated.

        ", "VpcEndpoint$PolicyDocument": "

        The policy document associated with the endpoint.

        ", "VpcIdStringList$member": null, "VpcPeeringConnection$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "VpcPeeringConnectionStateReason$Message": "

        A message that provides more information about the status, if applicable.

        ", "VpcPeeringConnectionVpcInfo$CidrBlock": "

        The CIDR block for the VPC.

        ", "VpcPeeringConnectionVpcInfo$OwnerId": "

        The AWS account ID of the VPC owner.

        ", "VpcPeeringConnectionVpcInfo$VpcId": "

        The ID of the VPC.

        ", "VpnConnection$VpnConnectionId": "

        The ID of the VPN connection.

        ", "VpnConnection$CustomerGatewayConfiguration": "

        The configuration information for the VPN connection's customer gateway (in the native XML format). This element is always present in the CreateVpnConnection response; however, it's present in the DescribeVpnConnections response only if the VPN connection is in the pending or available state.

        ", "VpnConnection$CustomerGatewayId": "

        The ID of the customer gateway at your end of the VPN connection.

        ", "VpnConnection$VpnGatewayId": "

        The ID of the virtual private gateway at the AWS side of the VPN connection.

        ", "VpnConnectionIdStringList$member": null, "VpnGateway$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "VpnGateway$AvailabilityZone": "

        The Availability Zone where the virtual private gateway was created, if applicable. This field may be empty or not returned.

        ", "VpnGatewayIdStringList$member": null, "VpnStaticRoute$DestinationCidrBlock": "

        The CIDR block associated with the local subnet of the customer data center.

        ", "ZoneNameStringList$member": null } }, "Subnet": { "base": "

        Describes a subnet.

        ", "refs": { "CreateSubnetResult$Subnet": "

        Information about the subnet.

        ", "SubnetList$member": null } }, "SubnetIdStringList": { "base": null, "refs": { "DescribeSubnetsRequest$SubnetIds": "

        One or more subnet IDs.

        Default: Describes all your subnets.

        " } }, "SubnetList": { "base": null, "refs": { "DescribeSubnetsResult$Subnets": "

        Information about one or more subnets.

        " } }, "SubnetState": { "base": null, "refs": { "Subnet$State": "

        The current state of the subnet.

        " } }, "SummaryStatus": { "base": null, "refs": { "InstanceStatusSummary$Status": "

        The status.

        " } }, "Tag": { "base": "

        Describes a tag.

        ", "refs": { "TagList$member": null } }, "TagDescription": { "base": "

        Describes a tag.

        ", "refs": { "TagDescriptionList$member": null } }, "TagDescriptionList": { "base": null, "refs": { "DescribeTagsResult$Tags": "

        A list of tags.

        " } }, "TagList": { "base": null, "refs": { "ClassicLinkInstance$Tags": "

        Any tags assigned to the instance.

        ", "ConversionTask$Tags": "

        Any tags assigned to the task.

        ", "CreateTagsRequest$Tags": "

        One or more tags. The value parameter is required, but if you don't want the tag to have a value, specify the parameter with no value, and we set the value to an empty string.

        ", "CustomerGateway$Tags": "

        Any tags assigned to the customer gateway.

        ", "DeleteTagsRequest$Tags": "

        One or more tags to delete. If you omit the value parameter, we delete the tag regardless of its value. If you specify this parameter with an empty string as the value, we delete the key only if its value is an empty string.

        ", "DhcpOptions$Tags": "

        Any tags assigned to the DHCP options set.

        ", "Image$Tags": "

        Any tags assigned to the image.

        ", "Instance$Tags": "

        Any tags assigned to the instance.

        ", "InternetGateway$Tags": "

        Any tags assigned to the Internet gateway.

        ", "NetworkAcl$Tags": "

        Any tags assigned to the network ACL.

        ", "NetworkInterface$TagSet": "

        Any tags assigned to the network interface.

        ", "ReservedInstances$Tags": "

        Any tags assigned to the resource.

        ", "ReservedInstancesListing$Tags": "

        Any tags assigned to the resource.

        ", "RouteTable$Tags": "

        Any tags assigned to the route table.

        ", "SecurityGroup$Tags": "

        Any tags assigned to the security group.

        ", "Snapshot$Tags": "

        Any tags assigned to the snapshot.

        ", "SpotInstanceRequest$Tags": "

        Any tags assigned to the resource.

        ", "Subnet$Tags": "

        Any tags assigned to the subnet.

        ", "Volume$Tags": "

        Any tags assigned to the volume.

        ", "Vpc$Tags": "

        Any tags assigned to the VPC.

        ", "VpcClassicLink$Tags": "

        Any tags assigned to the VPC.

        ", "VpcPeeringConnection$Tags": "

        Any tags assigned to the resource.

        ", "VpnConnection$Tags": "

        Any tags assigned to the VPN connection.

        ", "VpnGateway$Tags": "

        Any tags assigned to the virtual private gateway.

        " } }, "TelemetryStatus": { "base": null, "refs": { "VgwTelemetry$Status": "

        The status of the VPN tunnel.

        " } }, "Tenancy": { "base": null, "refs": { "CreateVpcRequest$InstanceTenancy": "

        The tenancy options for instances launched into the VPC. For default, instances are launched with shared tenancy by default. You can launch instances with any tenancy into a shared tenancy VPC. For dedicated, instances are launched as dedicated tenancy instances by default. You can only launch instances with a tenancy of dedicated or host into a dedicated tenancy VPC.

        Important: The host value cannot be used with this parameter. Use the default or dedicated values only.

        Default: default

        ", "DescribeReservedInstancesOfferingsRequest$InstanceTenancy": "

        The tenancy of the instances covered by the reservation. A Reserved Instance with a tenancy of dedicated is applied to instances that run in a VPC on single-tenant hardware (i.e., Dedicated Instances).

        Default: default

        ", "Placement$Tenancy": "

        The tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for the ImportInstance command.

        ", "ReservedInstances$InstanceTenancy": "

        The tenancy of the instance.

        ", "ReservedInstancesOffering$InstanceTenancy": "

        The tenancy of the instance.

        ", "Vpc$InstanceTenancy": "

        The allowed tenancy of instances launched into the VPC.

        " } }, "TerminateInstancesRequest": { "base": "

        Contains the parameters for TerminateInstances.

        ", "refs": { } }, "TerminateInstancesResult": { "base": "

        Contains the output of TerminateInstances.

        ", "refs": { } }, "TrafficType": { "base": null, "refs": { "CreateFlowLogsRequest$TrafficType": "

        The type of traffic to log.

        ", "FlowLog$TrafficType": "

        The type of traffic captured for the flow log.

        " } }, "UnassignPrivateIpAddressesRequest": { "base": "

        Contains the parameters for UnassignPrivateIpAddresses.

        ", "refs": { } }, "UnmonitorInstancesRequest": { "base": "

        Contains the parameters for UnmonitorInstances.

        ", "refs": { } }, "UnmonitorInstancesResult": { "base": "

        Contains the output of UnmonitorInstances.

        ", "refs": { } }, "UnsuccessfulItem": { "base": "

        Information about items that were not successfully processed in a batch call.

        ", "refs": { "UnsuccessfulItemList$member": null, "UnsuccessfulItemSet$member": null } }, "UnsuccessfulItemError": { "base": "

        Information about the error that occurred. For more information about errors, see Error Codes.

        ", "refs": { "UnsuccessfulItem$Error": "

        Information about the error.

        " } }, "UnsuccessfulItemList": { "base": null, "refs": { "ModifyHostsResult$Unsuccessful": "

        The IDs of the Dedicated hosts that could not be modified. Check whether the setting you requested can be used.

        ", "ReleaseHostsResult$Unsuccessful": "

        The IDs of the Dedicated hosts that could not be released, including an error message.

        " } }, "UnsuccessfulItemSet": { "base": null, "refs": { "CreateFlowLogsResult$Unsuccessful": "

        Information about the flow logs that could not be created successfully.

        ", "DeleteFlowLogsResult$Unsuccessful": "

        Information about the flow logs that could not be deleted successfully.

        ", "DeleteVpcEndpointsResult$Unsuccessful": "

        Information about the endpoints that were not successfully deleted.

        " } }, "UserBucket": { "base": "

        Describes the S3 bucket for the disk image.

        ", "refs": { "ImageDiskContainer$UserBucket": "

        The S3 bucket for the disk image.

        ", "SnapshotDiskContainer$UserBucket": "

        The S3 bucket for the disk image.

        " } }, "UserBucketDetails": { "base": "

        Describes the S3 bucket for the disk image.

        ", "refs": { "SnapshotDetail$UserBucket": "

        The S3 bucket for the disk image.

        ", "SnapshotTaskDetail$UserBucket": "

        The S3 bucket for the disk image.

        " } }, "UserData": { "base": "

        Describes the user data to be made available to an instance.

        ", "refs": { "ImportInstanceLaunchSpecification$UserData": "

        The Base64-encoded MIME user data to be made available to the instance.

        " } }, "UserGroupStringList": { "base": null, "refs": { "ModifyImageAttributeRequest$UserGroups": "

        One or more user groups. This is only valid when modifying the launchPermission attribute.

        " } }, "UserIdGroupPair": { "base": "

        Describes a security group and AWS account ID pair.

        ", "refs": { "UserIdGroupPairList$member": null, "UserIdGroupPairSet$member": null } }, "UserIdGroupPairList": { "base": null, "refs": { "IpPermission$UserIdGroupPairs": "

        One or more security group and AWS account ID pairs.

        " } }, "UserIdGroupPairSet": { "base": null, "refs": { "StaleIpPermission$UserIdGroupPairs": "

        One or more security group pairs. Returns the ID of the referenced security group and VPC, and the ID and status of the VPC peering connection.

        " } }, "UserIdStringList": { "base": null, "refs": { "ModifyImageAttributeRequest$UserIds": "

        One or more AWS account IDs. This is only valid when modifying the launchPermission attribute.

        ", "ModifySnapshotAttributeRequest$UserIds": "

        The account ID to modify for the snapshot.

        " } }, "ValueStringList": { "base": null, "refs": { "CancelSpotFleetRequestsRequest$SpotFleetRequestIds": "

        The IDs of the Spot fleet requests.

        ", "CreateFlowLogsRequest$ResourceIds": "

        One or more subnet, network interface, or VPC IDs.

        Constraints: Maximum of 1000 resources

        ", "CreateFlowLogsResult$FlowLogIds": "

        The IDs of the flow logs.

        ", "CreateVpcEndpointRequest$RouteTableIds": "

        One or more route table IDs.

        ", "DeleteFlowLogsRequest$FlowLogIds": "

        One or more flow log IDs.

        ", "DeleteVpcEndpointsRequest$VpcEndpointIds": "

        One or more endpoint IDs.

        ", "DescribeFlowLogsRequest$FlowLogIds": "

        One or more flow log IDs.

        ", "DescribeInternetGatewaysRequest$InternetGatewayIds": "

        One or more Internet gateway IDs.

        Default: Describes all your Internet gateways.

        ", "DescribeMovingAddressesRequest$PublicIps": "

        One or more Elastic IP addresses.

        ", "DescribeNatGatewaysRequest$NatGatewayIds": "

        One or more NAT gateway IDs.

        ", "DescribeNetworkAclsRequest$NetworkAclIds": "

        One or more network ACL IDs.

        Default: Describes all your network ACLs.

        ", "DescribePrefixListsRequest$PrefixListIds": "

        One or more prefix list IDs.

        ", "DescribeRouteTablesRequest$RouteTableIds": "

        One or more route table IDs.

        Default: Describes all your route tables.

        ", "DescribeSpotFleetRequestsRequest$SpotFleetRequestIds": "

        The IDs of the Spot fleet requests.

        ", "DescribeVpcEndpointServicesResult$ServiceNames": "

        A list of supported AWS services.

        ", "DescribeVpcEndpointsRequest$VpcEndpointIds": "

        One or more endpoint IDs.

        ", "DescribeVpcPeeringConnectionsRequest$VpcPeeringConnectionIds": "

        One or more VPC peering connection IDs.

        Default: Describes all your VPC peering connections.

        ", "Filter$Values": "

        One or more filter values. Filter values are case-sensitive.

        ", "ModifyVpcEndpointRequest$AddRouteTableIds": "

        One or more route tables IDs to associate with the endpoint.

        ", "ModifyVpcEndpointRequest$RemoveRouteTableIds": "

        One or more route table IDs to disassociate from the endpoint.

        ", "NewDhcpConfiguration$Values": null, "PrefixList$Cidrs": "

        The IP address range of the AWS service.

        ", "RequestSpotLaunchSpecification$SecurityGroups": null, "RequestSpotLaunchSpecification$SecurityGroupIds": null, "VpcEndpoint$RouteTableIds": "

        One or more route tables associated with the endpoint.

        " } }, "VgwTelemetry": { "base": "

        Describes telemetry for a VPN tunnel.

        ", "refs": { "VgwTelemetryList$member": null } }, "VgwTelemetryList": { "base": null, "refs": { "VpnConnection$VgwTelemetry": "

        Information about the VPN tunnel.

        " } }, "VirtualizationType": { "base": null, "refs": { "Image$VirtualizationType": "

        The type of virtualization of the AMI.

        ", "Instance$VirtualizationType": "

        The virtualization type of the instance.

        " } }, "Volume": { "base": "

        Describes a volume.

        ", "refs": { "VolumeList$member": null } }, "VolumeAttachment": { "base": "

        Describes volume attachment details.

        ", "refs": { "VolumeAttachmentList$member": null } }, "VolumeAttachmentList": { "base": null, "refs": { "Volume$Attachments": "

        Information about the volume attachments.

        " } }, "VolumeAttachmentState": { "base": null, "refs": { "VolumeAttachment$State": "

        The attachment state of the volume.

        " } }, "VolumeAttributeName": { "base": null, "refs": { "DescribeVolumeAttributeRequest$Attribute": "

        The instance attribute.

        " } }, "VolumeDetail": { "base": "

        Describes an EBS volume.

        ", "refs": { "DiskImage$Volume": "

        Information about the volume.

        ", "ImportVolumeRequest$Volume": "

        The volume size.

        " } }, "VolumeIdStringList": { "base": null, "refs": { "DescribeVolumeStatusRequest$VolumeIds": "

        One or more volume IDs.

        Default: Describes all your volumes.

        ", "DescribeVolumesRequest$VolumeIds": "

        One or more volume IDs.

        " } }, "VolumeList": { "base": null, "refs": { "DescribeVolumesResult$Volumes": "

        Information about the volumes.

        " } }, "VolumeState": { "base": null, "refs": { "Volume$State": "

        The volume state.

        " } }, "VolumeStatusAction": { "base": "

        Describes a volume status operation code.

        ", "refs": { "VolumeStatusActionsList$member": null } }, "VolumeStatusActionsList": { "base": null, "refs": { "VolumeStatusItem$Actions": "

        The details of the operation.

        " } }, "VolumeStatusDetails": { "base": "

        Describes a volume status.

        ", "refs": { "VolumeStatusDetailsList$member": null } }, "VolumeStatusDetailsList": { "base": null, "refs": { "VolumeStatusInfo$Details": "

        The details of the volume status.

        " } }, "VolumeStatusEvent": { "base": "

        Describes a volume status event.

        ", "refs": { "VolumeStatusEventsList$member": null } }, "VolumeStatusEventsList": { "base": null, "refs": { "VolumeStatusItem$Events": "

        A list of events associated with the volume.

        " } }, "VolumeStatusInfo": { "base": "

        Describes the status of a volume.

        ", "refs": { "VolumeStatusItem$VolumeStatus": "

        The volume status.

        " } }, "VolumeStatusInfoStatus": { "base": null, "refs": { "VolumeStatusInfo$Status": "

        The status of the volume.

        " } }, "VolumeStatusItem": { "base": "

        Describes the volume status.

        ", "refs": { "VolumeStatusList$member": null } }, "VolumeStatusList": { "base": null, "refs": { "DescribeVolumeStatusResult$VolumeStatuses": "

        A list of volumes.

        " } }, "VolumeStatusName": { "base": null, "refs": { "VolumeStatusDetails$Name": "

        The name of the volume status.

        " } }, "VolumeType": { "base": null, "refs": { "CreateVolumeRequest$VolumeType": "

        The volume type. This can be gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, or standard for Magnetic volumes.

        Default: standard

        ", "EbsBlockDevice$VolumeType": "

        The volume type: gp2, io1, st1, sc1, or standard.

        Default: standard

        ", "Volume$VolumeType": "

        The volume type. This can be gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, or standard for Magnetic volumes.

        " } }, "Vpc": { "base": "

        Describes a VPC.

        ", "refs": { "CreateVpcResult$Vpc": "

        Information about the VPC.

        ", "VpcList$member": null } }, "VpcAttachment": { "base": "

        Describes an attachment between a virtual private gateway and a VPC.

        ", "refs": { "AttachVpnGatewayResult$VpcAttachment": "

        Information about the attachment.

        ", "VpcAttachmentList$member": null } }, "VpcAttachmentList": { "base": null, "refs": { "VpnGateway$VpcAttachments": "

        Any VPCs attached to the virtual private gateway.

        " } }, "VpcAttributeName": { "base": null, "refs": { "DescribeVpcAttributeRequest$Attribute": "

        The VPC attribute.

        " } }, "VpcClassicLink": { "base": "

        Describes whether a VPC is enabled for ClassicLink.

        ", "refs": { "VpcClassicLinkList$member": null } }, "VpcClassicLinkIdList": { "base": null, "refs": { "DescribeVpcClassicLinkDnsSupportRequest$VpcIds": "

        One or more VPC IDs.

        ", "DescribeVpcClassicLinkRequest$VpcIds": "

        One or more VPCs for which you want to describe the ClassicLink status.

        " } }, "VpcClassicLinkList": { "base": null, "refs": { "DescribeVpcClassicLinkResult$Vpcs": "

        The ClassicLink status of one or more VPCs.

        " } }, "VpcEndpoint": { "base": "

        Describes a VPC endpoint.

        ", "refs": { "CreateVpcEndpointResult$VpcEndpoint": "

        Information about the endpoint.

        ", "VpcEndpointSet$member": null } }, "VpcEndpointSet": { "base": null, "refs": { "DescribeVpcEndpointsResult$VpcEndpoints": "

        Information about the endpoints.

        " } }, "VpcIdStringList": { "base": null, "refs": { "DescribeVpcsRequest$VpcIds": "

        One or more VPC IDs.

        Default: Describes all your VPCs.

        " } }, "VpcList": { "base": null, "refs": { "DescribeVpcsResult$Vpcs": "

        Information about one or more VPCs.

        " } }, "VpcPeeringConnection": { "base": "

        Describes a VPC peering connection.

        ", "refs": { "AcceptVpcPeeringConnectionResult$VpcPeeringConnection": "

        Information about the VPC peering connection.

        ", "CreateVpcPeeringConnectionResult$VpcPeeringConnection": "

        Information about the VPC peering connection.

        ", "VpcPeeringConnectionList$member": null } }, "VpcPeeringConnectionList": { "base": null, "refs": { "DescribeVpcPeeringConnectionsResult$VpcPeeringConnections": "

        Information about the VPC peering connections.

        " } }, "VpcPeeringConnectionOptionsDescription": { "base": "

        Describes the VPC peering connection options.

        ", "refs": { "VpcPeeringConnectionVpcInfo$PeeringOptions": "

        Information about the VPC peering connection options for the accepter or requester VPC.

        " } }, "VpcPeeringConnectionStateReason": { "base": "

        Describes the status of a VPC peering connection.

        ", "refs": { "VpcPeeringConnection$Status": "

        The status of the VPC peering connection.

        " } }, "VpcPeeringConnectionStateReasonCode": { "base": null, "refs": { "VpcPeeringConnectionStateReason$Code": "

        The status of the VPC peering connection.

        " } }, "VpcPeeringConnectionVpcInfo": { "base": "

        Describes a VPC in a VPC peering connection.

        ", "refs": { "VpcPeeringConnection$AccepterVpcInfo": "

        Information about the accepter VPC. CIDR block information is not returned when creating a VPC peering connection, or when describing a VPC peering connection that's in the initiating-request or pending-acceptance state.

        ", "VpcPeeringConnection$RequesterVpcInfo": "

        Information about the requester VPC.

        " } }, "VpcState": { "base": null, "refs": { "Vpc$State": "

        The current state of the VPC.

        " } }, "VpnConnection": { "base": "

        Describes a VPN connection.

        ", "refs": { "CreateVpnConnectionResult$VpnConnection": "

        Information about the VPN connection.

        ", "VpnConnectionList$member": null } }, "VpnConnectionIdStringList": { "base": null, "refs": { "DescribeVpnConnectionsRequest$VpnConnectionIds": "

        One or more VPN connection IDs.

        Default: Describes your VPN connections.

        " } }, "VpnConnectionList": { "base": null, "refs": { "DescribeVpnConnectionsResult$VpnConnections": "

        Information about one or more VPN connections.

        " } }, "VpnConnectionOptions": { "base": "

        Describes VPN connection options.

        ", "refs": { "VpnConnection$Options": "

        The VPN connection options.

        " } }, "VpnConnectionOptionsSpecification": { "base": "

        Describes VPN connection options.

        ", "refs": { "CreateVpnConnectionRequest$Options": "

        Indicates whether the VPN connection requires static routes. If you are creating a VPN connection for a device that does not support BGP, you must specify true.

        Default: false

        " } }, "VpnGateway": { "base": "

        Describes a virtual private gateway.

        ", "refs": { "CreateVpnGatewayResult$VpnGateway": "

        Information about the virtual private gateway.

        ", "VpnGatewayList$member": null } }, "VpnGatewayIdStringList": { "base": null, "refs": { "DescribeVpnGatewaysRequest$VpnGatewayIds": "

        One or more virtual private gateway IDs.

        Default: Describes all your virtual private gateways.

        " } }, "VpnGatewayList": { "base": null, "refs": { "DescribeVpnGatewaysResult$VpnGateways": "

        Information about one or more virtual private gateways.

        " } }, "VpnState": { "base": null, "refs": { "VpnConnection$State": "

        The current state of the VPN connection.

        ", "VpnGateway$State": "

        The current state of the virtual private gateway.

        ", "VpnStaticRoute$State": "

        The current state of the static route.

        " } }, "VpnStaticRoute": { "base": "

        Describes a static route for a VPN connection.

        ", "refs": { "VpnStaticRouteList$member": null } }, "VpnStaticRouteList": { "base": null, "refs": { "VpnConnection$Routes": "

        The static routes associated with the VPN connection.

        " } }, "VpnStaticRouteSource": { "base": null, "refs": { "VpnStaticRoute$Source": "

        Indicates how the routes were provided.

        " } }, "ZoneNameStringList": { "base": null, "refs": { "DescribeAvailabilityZonesRequest$ZoneNames": "

        The names of one or more Availability Zones.

        " } } } } aws-sdk-go-1.4.22/models/apis/ec2/2015-10-01/examples-1.json000066400000000000000000000000541300374646400223440ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/ec2/2015-10-01/paginators-1.json000066400000000000000000000071071300374646400227030ustar00rootroot00000000000000{ "pagination": { "DescribeAccountAttributes": { "result_key": "AccountAttributes" }, "DescribeAddresses": { "result_key": "Addresses" }, "DescribeAvailabilityZones": { "result_key": "AvailabilityZones" }, "DescribeBundleTasks": { "result_key": "BundleTasks" }, "DescribeConversionTasks": { "result_key": "ConversionTasks" }, "DescribeCustomerGateways": { "result_key": "CustomerGateways" }, "DescribeDhcpOptions": { "result_key": "DhcpOptions" }, "DescribeExportTasks": { "result_key": "ExportTasks" }, "DescribeImages": { "result_key": "Images" }, "DescribeInstanceStatus": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "InstanceStatuses" }, "DescribeInstances": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "Reservations" }, "DescribeInternetGateways": { "result_key": "InternetGateways" }, "DescribeKeyPairs": { "result_key": "KeyPairs" }, "DescribeNetworkAcls": { "result_key": "NetworkAcls" }, "DescribeNetworkInterfaces": { "result_key": "NetworkInterfaces" }, "DescribePlacementGroups": { "result_key": "PlacementGroups" }, "DescribeRegions": { "result_key": "Regions" }, "DescribeReservedInstances": { "result_key": "ReservedInstances" }, "DescribeReservedInstancesListings": { "result_key": "ReservedInstancesListings" }, "DescribeReservedInstancesOfferings": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "ReservedInstancesOfferings" }, "DescribeReservedInstancesModifications": { "input_token": "NextToken", "output_token": "NextToken", "result_key": "ReservedInstancesModifications" }, "DescribeRouteTables": { "result_key": "RouteTables" }, "DescribeSecurityGroups": { "result_key": "SecurityGroups" }, "DescribeSnapshots": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "Snapshots" }, "DescribeSpotInstanceRequests": { "result_key": "SpotInstanceRequests" }, "DescribeSpotFleetRequests": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "SpotFleetRequestConfigs" }, "DescribeSpotPriceHistory": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "SpotPriceHistory" }, "DescribeSubnets": { "result_key": "Subnets" }, "DescribeTags": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "Tags" }, "DescribeVolumeStatus": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "VolumeStatuses" }, "DescribeVolumes": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "Volumes" }, "DescribeVpcs": { "result_key": "Vpcs" }, "DescribeVpcPeeringConnections": { "result_key": "VpcPeeringConnections" }, "DescribeVpnConnections": { "result_key": "VpnConnections" }, "DescribeVpnGateways": { "result_key": "VpnGateways" } } } aws-sdk-go-1.4.22/models/apis/ec2/2015-10-01/waiters-2.json000066400000000000000000000350361300374646400222150ustar00rootroot00000000000000{ "version": 2, "waiters": { "InstanceExists": { "delay": 5, "maxAttempts": 40, "operation": "DescribeInstances", "acceptors": [ { "matcher": "path", "expected": true, "argument": "length(Reservations[]) > `0`", "state": "success" }, { "matcher": "error", "expected": "InvalidInstanceID.NotFound", "state": "retry" } ] }, "BundleTaskComplete": { "delay": 15, "operation": "DescribeBundleTasks", "maxAttempts": 40, "acceptors": [ { "expected": "complete", "matcher": "pathAll", "state": "success", "argument": "BundleTasks[].State" }, { "expected": "failed", "matcher": "pathAny", "state": "failure", "argument": "BundleTasks[].State" } ] }, "ConversionTaskCancelled": { "delay": 15, "operation": "DescribeConversionTasks", "maxAttempts": 40, "acceptors": [ { "expected": "cancelled", "matcher": "pathAll", "state": "success", "argument": "ConversionTasks[].State" } ] }, "ConversionTaskCompleted": { "delay": 15, "operation": "DescribeConversionTasks", "maxAttempts": 40, "acceptors": [ { "expected": "completed", "matcher": "pathAll", "state": "success", "argument": "ConversionTasks[].State" }, { "expected": "cancelled", "matcher": "pathAny", "state": "failure", "argument": "ConversionTasks[].State" }, { "expected": "cancelling", "matcher": "pathAny", "state": "failure", "argument": "ConversionTasks[].State" } ] }, "ConversionTaskDeleted": { "delay": 15, "operation": "DescribeConversionTasks", "maxAttempts": 40, "acceptors": [ { "expected": "deleted", "matcher": "pathAll", "state": "success", "argument": "ConversionTasks[].State" } ] }, "CustomerGatewayAvailable": { "delay": 15, "operation": "DescribeCustomerGateways", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "CustomerGateways[].State" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "CustomerGateways[].State" }, { "expected": "deleting", "matcher": "pathAny", "state": "failure", "argument": "CustomerGateways[].State" } ] }, "ExportTaskCancelled": { "delay": 15, "operation": "DescribeExportTasks", "maxAttempts": 40, "acceptors": [ { "expected": "cancelled", "matcher": "pathAll", "state": "success", "argument": "ExportTasks[].State" } ] }, "ExportTaskCompleted": { "delay": 15, "operation": "DescribeExportTasks", "maxAttempts": 40, "acceptors": [ { "expected": "completed", "matcher": "pathAll", "state": "success", "argument": "ExportTasks[].State" } ] }, "ImageExists": { "operation": "DescribeImages", "maxAttempts": 40, "delay": 15, "acceptors": [ { "matcher": "path", "expected": true, "argument": "length(Images[]) > `0`", "state": "success" }, { "matcher": "error", "expected": "InvalidAMIID.NotFound", "state": "retry" } ] }, "ImageAvailable": { "operation": "DescribeImages", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "Images[].State", "expected": "available" }, { "state": "failure", "matcher": "pathAny", "argument": "Images[].State", "expected": "failed" } ] }, "InstanceRunning": { "delay": 15, "operation": "DescribeInstances", "maxAttempts": 40, "acceptors": [ { "expected": "running", "matcher": "pathAll", "state": "success", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "shutting-down", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "terminated", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "stopping", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "matcher": "error", "expected": "InvalidInstanceID.NotFound", "state": "retry" } ] }, "InstanceStatusOk": { "operation": "DescribeInstanceStatus", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "InstanceStatuses[].InstanceStatus.Status", "expected": "ok" }, { "matcher": "error", "expected": "InvalidInstanceID.NotFound", "state": "retry" } ] }, "InstanceStopped": { "delay": 15, "operation": "DescribeInstances", "maxAttempts": 40, "acceptors": [ { "expected": "stopped", "matcher": "pathAll", "state": "success", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "pending", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "terminated", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" } ] }, "InstanceTerminated": { "delay": 15, "operation": "DescribeInstances", "maxAttempts": 40, "acceptors": [ { "expected": "terminated", "matcher": "pathAll", "state": "success", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "pending", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "stopping", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" } ] }, "KeyPairExists": { "operation": "DescribeKeyPairs", "delay": 5, "maxAttempts": 6, "acceptors": [ { "expected": true, "matcher": "pathAll", "state": "success", "argument": "length(KeyPairs[].KeyName) > `0`" }, { "expected": "InvalidKeyPair.NotFound", "matcher": "error", "state": "retry" } ] }, "NatGatewayAvailable": { "operation": "DescribeNatGateways", "delay": 15, "maxAttempts": 40, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "NatGateways[].State", "expected": "available" }, { "state": "failure", "matcher": "pathAny", "argument": "NatGateways[].State", "expected": "failed" }, { "state": "failure", "matcher": "pathAny", "argument": "NatGateways[].State", "expected": "deleting" }, { "state": "failure", "matcher": "pathAny", "argument": "NatGateways[].State", "expected": "deleted" }, { "state": "retry", "matcher": "error", "expected": "NatGatewayNotFound" } ] }, "NetworkInterfaceAvailable": { "operation": "DescribeNetworkInterfaces", "delay": 20, "maxAttempts": 10, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "NetworkInterfaces[].Status" }, { "expected": "InvalidNetworkInterfaceID.NotFound", "matcher": "error", "state": "failure" } ] }, "PasswordDataAvailable": { "operation": "GetPasswordData", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "path", "argument": "length(PasswordData) > `0`", "expected": true } ] }, "SnapshotCompleted": { "delay": 15, "operation": "DescribeSnapshots", "maxAttempts": 40, "acceptors": [ { "expected": "completed", "matcher": "pathAll", "state": "success", "argument": "Snapshots[].State" } ] }, "SpotInstanceRequestFulfilled": { "operation": "DescribeSpotInstanceRequests", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "SpotInstanceRequests[].Status.Code", "expected": "fulfilled" }, { "state": "failure", "matcher": "pathAny", "argument": "SpotInstanceRequests[].Status.Code", "expected": "schedule-expired" }, { "state": "failure", "matcher": "pathAny", "argument": "SpotInstanceRequests[].Status.Code", "expected": "canceled-before-fulfillment" }, { "state": "failure", "matcher": "pathAny", "argument": "SpotInstanceRequests[].Status.Code", "expected": "bad-parameters" }, { "state": "failure", "matcher": "pathAny", "argument": "SpotInstanceRequests[].Status.Code", "expected": "system-error" } ] }, "SubnetAvailable": { "delay": 15, "operation": "DescribeSubnets", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "Subnets[].State" } ] }, "SystemStatusOk": { "operation": "DescribeInstanceStatus", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "InstanceStatuses[].SystemStatus.Status", "expected": "ok" } ] }, "VolumeAvailable": { "delay": 15, "operation": "DescribeVolumes", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "Volumes[].State" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "Volumes[].State" } ] }, "VolumeDeleted": { "delay": 15, "operation": "DescribeVolumes", "maxAttempts": 40, "acceptors": [ { "expected": "deleted", "matcher": "pathAll", "state": "success", "argument": "Volumes[].State" }, { "matcher": "error", "expected": "InvalidVolume.NotFound", "state": "success" } ] }, "VolumeInUse": { "delay": 15, "operation": "DescribeVolumes", "maxAttempts": 40, "acceptors": [ { "expected": "in-use", "matcher": "pathAll", "state": "success", "argument": "Volumes[].State" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "Volumes[].State" } ] }, "VpcAvailable": { "delay": 15, "operation": "DescribeVpcs", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "Vpcs[].State" } ] }, "VpcExists": { "operation": "DescribeVpcs", "delay": 1, "maxAttempts": 5, "acceptors": [ { "matcher": "status", "expected": 200, "state": "success" }, { "matcher": "error", "expected": "InvalidVpcID.NotFound", "state": "retry" } ] }, "VpnConnectionAvailable": { "delay": 15, "operation": "DescribeVpnConnections", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "VpnConnections[].State" }, { "expected": "deleting", "matcher": "pathAny", "state": "failure", "argument": "VpnConnections[].State" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "VpnConnections[].State" } ] }, "VpnConnectionDeleted": { "delay": 15, "operation": "DescribeVpnConnections", "maxAttempts": 40, "acceptors": [ { "expected": "deleted", "matcher": "pathAll", "state": "success", "argument": "VpnConnections[].State" }, { "expected": "pending", "matcher": "pathAny", "state": "failure", "argument": "VpnConnections[].State" } ] }, "VpcPeeringConnectionExists": { "delay": 15, "operation": "DescribeVpcPeeringConnections", "maxAttempts": 40, "acceptors": [ { "matcher": "status", "expected": 200, "state": "success" }, { "matcher": "error", "expected": "InvalidVpcPeeringConnectionID.NotFound", "state": "retry" } ] } } } aws-sdk-go-1.4.22/models/apis/ec2/2016-04-01/000077500000000000000000000000001300374646400175025ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/ec2/2016-04-01/api-2.json000066400000000000000000012465471300374646400213300ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2016-04-01", "endpointPrefix":"ec2", "protocol":"ec2", "serviceAbbreviation":"Amazon EC2", "serviceFullName":"Amazon Elastic Compute Cloud", "signatureVersion":"v4", "xmlNamespace":"http://ec2.amazonaws.com/doc/2016-04-01" }, "operations":{ "AcceptVpcPeeringConnection":{ "name":"AcceptVpcPeeringConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AcceptVpcPeeringConnectionRequest"}, "output":{"shape":"AcceptVpcPeeringConnectionResult"} }, "AllocateAddress":{ "name":"AllocateAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AllocateAddressRequest"}, "output":{"shape":"AllocateAddressResult"} }, "AllocateHosts":{ "name":"AllocateHosts", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AllocateHostsRequest"}, "output":{"shape":"AllocateHostsResult"} }, "AssignPrivateIpAddresses":{ "name":"AssignPrivateIpAddresses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssignPrivateIpAddressesRequest"} }, "AssociateAddress":{ "name":"AssociateAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssociateAddressRequest"}, "output":{"shape":"AssociateAddressResult"} }, "AssociateDhcpOptions":{ "name":"AssociateDhcpOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssociateDhcpOptionsRequest"} }, "AssociateRouteTable":{ "name":"AssociateRouteTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssociateRouteTableRequest"}, "output":{"shape":"AssociateRouteTableResult"} }, "AttachClassicLinkVpc":{ "name":"AttachClassicLinkVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachClassicLinkVpcRequest"}, "output":{"shape":"AttachClassicLinkVpcResult"} }, "AttachInternetGateway":{ "name":"AttachInternetGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachInternetGatewayRequest"} }, "AttachNetworkInterface":{ "name":"AttachNetworkInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachNetworkInterfaceRequest"}, "output":{"shape":"AttachNetworkInterfaceResult"} }, "AttachVolume":{ "name":"AttachVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachVolumeRequest"}, "output":{"shape":"VolumeAttachment"} }, "AttachVpnGateway":{ "name":"AttachVpnGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachVpnGatewayRequest"}, "output":{"shape":"AttachVpnGatewayResult"} }, "AuthorizeSecurityGroupEgress":{ "name":"AuthorizeSecurityGroupEgress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AuthorizeSecurityGroupEgressRequest"} }, "AuthorizeSecurityGroupIngress":{ "name":"AuthorizeSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AuthorizeSecurityGroupIngressRequest"} }, "BundleInstance":{ "name":"BundleInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BundleInstanceRequest"}, "output":{"shape":"BundleInstanceResult"} }, "CancelBundleTask":{ "name":"CancelBundleTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelBundleTaskRequest"}, "output":{"shape":"CancelBundleTaskResult"} }, "CancelConversionTask":{ "name":"CancelConversionTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelConversionRequest"} }, "CancelExportTask":{ "name":"CancelExportTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelExportTaskRequest"} }, "CancelImportTask":{ "name":"CancelImportTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelImportTaskRequest"}, "output":{"shape":"CancelImportTaskResult"} }, "CancelReservedInstancesListing":{ "name":"CancelReservedInstancesListing", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelReservedInstancesListingRequest"}, "output":{"shape":"CancelReservedInstancesListingResult"} }, "CancelSpotFleetRequests":{ "name":"CancelSpotFleetRequests", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelSpotFleetRequestsRequest"}, "output":{"shape":"CancelSpotFleetRequestsResponse"} }, "CancelSpotInstanceRequests":{ "name":"CancelSpotInstanceRequests", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelSpotInstanceRequestsRequest"}, "output":{"shape":"CancelSpotInstanceRequestsResult"} }, "ConfirmProductInstance":{ "name":"ConfirmProductInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ConfirmProductInstanceRequest"}, "output":{"shape":"ConfirmProductInstanceResult"} }, "CopyImage":{ "name":"CopyImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopyImageRequest"}, "output":{"shape":"CopyImageResult"} }, "CopySnapshot":{ "name":"CopySnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopySnapshotRequest"}, "output":{"shape":"CopySnapshotResult"} }, "CreateCustomerGateway":{ "name":"CreateCustomerGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateCustomerGatewayRequest"}, "output":{"shape":"CreateCustomerGatewayResult"} }, "CreateDhcpOptions":{ "name":"CreateDhcpOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDhcpOptionsRequest"}, "output":{"shape":"CreateDhcpOptionsResult"} }, "CreateFlowLogs":{ "name":"CreateFlowLogs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateFlowLogsRequest"}, "output":{"shape":"CreateFlowLogsResult"} }, "CreateImage":{ "name":"CreateImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateImageRequest"}, "output":{"shape":"CreateImageResult"} }, "CreateInstanceExportTask":{ "name":"CreateInstanceExportTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateInstanceExportTaskRequest"}, "output":{"shape":"CreateInstanceExportTaskResult"} }, "CreateInternetGateway":{ "name":"CreateInternetGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateInternetGatewayRequest"}, "output":{"shape":"CreateInternetGatewayResult"} }, "CreateKeyPair":{ "name":"CreateKeyPair", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateKeyPairRequest"}, "output":{"shape":"KeyPair"} }, "CreateNatGateway":{ "name":"CreateNatGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateNatGatewayRequest"}, "output":{"shape":"CreateNatGatewayResult"} }, "CreateNetworkAcl":{ "name":"CreateNetworkAcl", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateNetworkAclRequest"}, "output":{"shape":"CreateNetworkAclResult"} }, "CreateNetworkAclEntry":{ "name":"CreateNetworkAclEntry", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateNetworkAclEntryRequest"} }, "CreateNetworkInterface":{ "name":"CreateNetworkInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateNetworkInterfaceRequest"}, "output":{"shape":"CreateNetworkInterfaceResult"} }, "CreatePlacementGroup":{ "name":"CreatePlacementGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreatePlacementGroupRequest"} }, "CreateReservedInstancesListing":{ "name":"CreateReservedInstancesListing", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateReservedInstancesListingRequest"}, "output":{"shape":"CreateReservedInstancesListingResult"} }, "CreateRoute":{ "name":"CreateRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateRouteRequest"}, "output":{"shape":"CreateRouteResult"} }, "CreateRouteTable":{ "name":"CreateRouteTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateRouteTableRequest"}, "output":{"shape":"CreateRouteTableResult"} }, "CreateSecurityGroup":{ "name":"CreateSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSecurityGroupRequest"}, "output":{"shape":"CreateSecurityGroupResult"} }, "CreateSnapshot":{ "name":"CreateSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSnapshotRequest"}, "output":{"shape":"Snapshot"} }, "CreateSpotDatafeedSubscription":{ "name":"CreateSpotDatafeedSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSpotDatafeedSubscriptionRequest"}, "output":{"shape":"CreateSpotDatafeedSubscriptionResult"} }, "CreateSubnet":{ "name":"CreateSubnet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSubnetRequest"}, "output":{"shape":"CreateSubnetResult"} }, "CreateTags":{ "name":"CreateTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateTagsRequest"} }, "CreateVolume":{ "name":"CreateVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVolumeRequest"}, "output":{"shape":"Volume"} }, "CreateVpc":{ "name":"CreateVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpcRequest"}, "output":{"shape":"CreateVpcResult"} }, "CreateVpcEndpoint":{ "name":"CreateVpcEndpoint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpcEndpointRequest"}, "output":{"shape":"CreateVpcEndpointResult"} }, "CreateVpcPeeringConnection":{ "name":"CreateVpcPeeringConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpcPeeringConnectionRequest"}, "output":{"shape":"CreateVpcPeeringConnectionResult"} }, "CreateVpnConnection":{ "name":"CreateVpnConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpnConnectionRequest"}, "output":{"shape":"CreateVpnConnectionResult"} }, "CreateVpnConnectionRoute":{ "name":"CreateVpnConnectionRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpnConnectionRouteRequest"} }, "CreateVpnGateway":{ "name":"CreateVpnGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpnGatewayRequest"}, "output":{"shape":"CreateVpnGatewayResult"} }, "DeleteCustomerGateway":{ "name":"DeleteCustomerGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteCustomerGatewayRequest"} }, "DeleteDhcpOptions":{ "name":"DeleteDhcpOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDhcpOptionsRequest"} }, "DeleteFlowLogs":{ "name":"DeleteFlowLogs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteFlowLogsRequest"}, "output":{"shape":"DeleteFlowLogsResult"} }, "DeleteInternetGateway":{ "name":"DeleteInternetGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteInternetGatewayRequest"} }, "DeleteKeyPair":{ "name":"DeleteKeyPair", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteKeyPairRequest"} }, "DeleteNatGateway":{ "name":"DeleteNatGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteNatGatewayRequest"}, "output":{"shape":"DeleteNatGatewayResult"} }, "DeleteNetworkAcl":{ "name":"DeleteNetworkAcl", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteNetworkAclRequest"} }, "DeleteNetworkAclEntry":{ "name":"DeleteNetworkAclEntry", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteNetworkAclEntryRequest"} }, "DeleteNetworkInterface":{ "name":"DeleteNetworkInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteNetworkInterfaceRequest"} }, "DeletePlacementGroup":{ "name":"DeletePlacementGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeletePlacementGroupRequest"} }, "DeleteRoute":{ "name":"DeleteRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRouteRequest"} }, "DeleteRouteTable":{ "name":"DeleteRouteTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRouteTableRequest"} }, "DeleteSecurityGroup":{ "name":"DeleteSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSecurityGroupRequest"} }, "DeleteSnapshot":{ "name":"DeleteSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSnapshotRequest"} }, "DeleteSpotDatafeedSubscription":{ "name":"DeleteSpotDatafeedSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSpotDatafeedSubscriptionRequest"} }, "DeleteSubnet":{ "name":"DeleteSubnet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSubnetRequest"} }, "DeleteTags":{ "name":"DeleteTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteTagsRequest"} }, "DeleteVolume":{ "name":"DeleteVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVolumeRequest"} }, "DeleteVpc":{ "name":"DeleteVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpcRequest"} }, "DeleteVpcEndpoints":{ "name":"DeleteVpcEndpoints", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpcEndpointsRequest"}, "output":{"shape":"DeleteVpcEndpointsResult"} }, "DeleteVpcPeeringConnection":{ "name":"DeleteVpcPeeringConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpcPeeringConnectionRequest"}, "output":{"shape":"DeleteVpcPeeringConnectionResult"} }, "DeleteVpnConnection":{ "name":"DeleteVpnConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpnConnectionRequest"} }, "DeleteVpnConnectionRoute":{ "name":"DeleteVpnConnectionRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpnConnectionRouteRequest"} }, "DeleteVpnGateway":{ "name":"DeleteVpnGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpnGatewayRequest"} }, "DeregisterImage":{ "name":"DeregisterImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeregisterImageRequest"} }, "DescribeAccountAttributes":{ "name":"DescribeAccountAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAccountAttributesRequest"}, "output":{"shape":"DescribeAccountAttributesResult"} }, "DescribeAddresses":{ "name":"DescribeAddresses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAddressesRequest"}, "output":{"shape":"DescribeAddressesResult"} }, "DescribeAvailabilityZones":{ "name":"DescribeAvailabilityZones", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAvailabilityZonesRequest"}, "output":{"shape":"DescribeAvailabilityZonesResult"} }, "DescribeBundleTasks":{ "name":"DescribeBundleTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeBundleTasksRequest"}, "output":{"shape":"DescribeBundleTasksResult"} }, "DescribeClassicLinkInstances":{ "name":"DescribeClassicLinkInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeClassicLinkInstancesRequest"}, "output":{"shape":"DescribeClassicLinkInstancesResult"} }, "DescribeConversionTasks":{ "name":"DescribeConversionTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeConversionTasksRequest"}, "output":{"shape":"DescribeConversionTasksResult"} }, "DescribeCustomerGateways":{ "name":"DescribeCustomerGateways", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeCustomerGatewaysRequest"}, "output":{"shape":"DescribeCustomerGatewaysResult"} }, "DescribeDhcpOptions":{ "name":"DescribeDhcpOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDhcpOptionsRequest"}, "output":{"shape":"DescribeDhcpOptionsResult"} }, "DescribeExportTasks":{ "name":"DescribeExportTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeExportTasksRequest"}, "output":{"shape":"DescribeExportTasksResult"} }, "DescribeFlowLogs":{ "name":"DescribeFlowLogs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeFlowLogsRequest"}, "output":{"shape":"DescribeFlowLogsResult"} }, "DescribeHostReservationOfferings":{ "name":"DescribeHostReservationOfferings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeHostReservationOfferingsRequest"}, "output":{"shape":"DescribeHostReservationOfferingsResult"} }, "DescribeHostReservations":{ "name":"DescribeHostReservations", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeHostReservationsRequest"}, "output":{"shape":"DescribeHostReservationsResult"} }, "DescribeHosts":{ "name":"DescribeHosts", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeHostsRequest"}, "output":{"shape":"DescribeHostsResult"} }, "DescribeIdFormat":{ "name":"DescribeIdFormat", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeIdFormatRequest"}, "output":{"shape":"DescribeIdFormatResult"} }, "DescribeIdentityIdFormat":{ "name":"DescribeIdentityIdFormat", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeIdentityIdFormatRequest"}, "output":{"shape":"DescribeIdentityIdFormatResult"} }, "DescribeImageAttribute":{ "name":"DescribeImageAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeImageAttributeRequest"}, "output":{"shape":"ImageAttribute"} }, "DescribeImages":{ "name":"DescribeImages", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeImagesRequest"}, "output":{"shape":"DescribeImagesResult"} }, "DescribeImportImageTasks":{ "name":"DescribeImportImageTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeImportImageTasksRequest"}, "output":{"shape":"DescribeImportImageTasksResult"} }, "DescribeImportSnapshotTasks":{ "name":"DescribeImportSnapshotTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeImportSnapshotTasksRequest"}, "output":{"shape":"DescribeImportSnapshotTasksResult"} }, "DescribeInstanceAttribute":{ "name":"DescribeInstanceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInstanceAttributeRequest"}, "output":{"shape":"InstanceAttribute"} }, "DescribeInstanceStatus":{ "name":"DescribeInstanceStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInstanceStatusRequest"}, "output":{"shape":"DescribeInstanceStatusResult"} }, "DescribeInstances":{ "name":"DescribeInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInstancesRequest"}, "output":{"shape":"DescribeInstancesResult"} }, "DescribeInternetGateways":{ "name":"DescribeInternetGateways", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInternetGatewaysRequest"}, "output":{"shape":"DescribeInternetGatewaysResult"} }, "DescribeKeyPairs":{ "name":"DescribeKeyPairs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeKeyPairsRequest"}, "output":{"shape":"DescribeKeyPairsResult"} }, "DescribeMovingAddresses":{ "name":"DescribeMovingAddresses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeMovingAddressesRequest"}, "output":{"shape":"DescribeMovingAddressesResult"} }, "DescribeNatGateways":{ "name":"DescribeNatGateways", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeNatGatewaysRequest"}, "output":{"shape":"DescribeNatGatewaysResult"} }, "DescribeNetworkAcls":{ "name":"DescribeNetworkAcls", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeNetworkAclsRequest"}, "output":{"shape":"DescribeNetworkAclsResult"} }, "DescribeNetworkInterfaceAttribute":{ "name":"DescribeNetworkInterfaceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeNetworkInterfaceAttributeRequest"}, "output":{"shape":"DescribeNetworkInterfaceAttributeResult"} }, "DescribeNetworkInterfaces":{ "name":"DescribeNetworkInterfaces", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeNetworkInterfacesRequest"}, "output":{"shape":"DescribeNetworkInterfacesResult"} }, "DescribePlacementGroups":{ "name":"DescribePlacementGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribePlacementGroupsRequest"}, "output":{"shape":"DescribePlacementGroupsResult"} }, "DescribePrefixLists":{ "name":"DescribePrefixLists", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribePrefixListsRequest"}, "output":{"shape":"DescribePrefixListsResult"} }, "DescribeRegions":{ "name":"DescribeRegions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRegionsRequest"}, "output":{"shape":"DescribeRegionsResult"} }, "DescribeReservedInstances":{ "name":"DescribeReservedInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedInstancesRequest"}, "output":{"shape":"DescribeReservedInstancesResult"} }, "DescribeReservedInstancesListings":{ "name":"DescribeReservedInstancesListings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedInstancesListingsRequest"}, "output":{"shape":"DescribeReservedInstancesListingsResult"} }, "DescribeReservedInstancesModifications":{ "name":"DescribeReservedInstancesModifications", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedInstancesModificationsRequest"}, "output":{"shape":"DescribeReservedInstancesModificationsResult"} }, "DescribeReservedInstancesOfferings":{ "name":"DescribeReservedInstancesOfferings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedInstancesOfferingsRequest"}, "output":{"shape":"DescribeReservedInstancesOfferingsResult"} }, "DescribeRouteTables":{ "name":"DescribeRouteTables", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRouteTablesRequest"}, "output":{"shape":"DescribeRouteTablesResult"} }, "DescribeScheduledInstanceAvailability":{ "name":"DescribeScheduledInstanceAvailability", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeScheduledInstanceAvailabilityRequest"}, "output":{"shape":"DescribeScheduledInstanceAvailabilityResult"} }, "DescribeScheduledInstances":{ "name":"DescribeScheduledInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeScheduledInstancesRequest"}, "output":{"shape":"DescribeScheduledInstancesResult"} }, "DescribeSecurityGroupReferences":{ "name":"DescribeSecurityGroupReferences", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSecurityGroupReferencesRequest"}, "output":{"shape":"DescribeSecurityGroupReferencesResult"} }, "DescribeSecurityGroups":{ "name":"DescribeSecurityGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSecurityGroupsRequest"}, "output":{"shape":"DescribeSecurityGroupsResult"} }, "DescribeSnapshotAttribute":{ "name":"DescribeSnapshotAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSnapshotAttributeRequest"}, "output":{"shape":"DescribeSnapshotAttributeResult"} }, "DescribeSnapshots":{ "name":"DescribeSnapshots", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSnapshotsRequest"}, "output":{"shape":"DescribeSnapshotsResult"} }, "DescribeSpotDatafeedSubscription":{ "name":"DescribeSpotDatafeedSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotDatafeedSubscriptionRequest"}, "output":{"shape":"DescribeSpotDatafeedSubscriptionResult"} }, "DescribeSpotFleetInstances":{ "name":"DescribeSpotFleetInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotFleetInstancesRequest"}, "output":{"shape":"DescribeSpotFleetInstancesResponse"} }, "DescribeSpotFleetRequestHistory":{ "name":"DescribeSpotFleetRequestHistory", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotFleetRequestHistoryRequest"}, "output":{"shape":"DescribeSpotFleetRequestHistoryResponse"} }, "DescribeSpotFleetRequests":{ "name":"DescribeSpotFleetRequests", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotFleetRequestsRequest"}, "output":{"shape":"DescribeSpotFleetRequestsResponse"} }, "DescribeSpotInstanceRequests":{ "name":"DescribeSpotInstanceRequests", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotInstanceRequestsRequest"}, "output":{"shape":"DescribeSpotInstanceRequestsResult"} }, "DescribeSpotPriceHistory":{ "name":"DescribeSpotPriceHistory", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotPriceHistoryRequest"}, "output":{"shape":"DescribeSpotPriceHistoryResult"} }, "DescribeStaleSecurityGroups":{ "name":"DescribeStaleSecurityGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeStaleSecurityGroupsRequest"}, "output":{"shape":"DescribeStaleSecurityGroupsResult"} }, "DescribeSubnets":{ "name":"DescribeSubnets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSubnetsRequest"}, "output":{"shape":"DescribeSubnetsResult"} }, "DescribeTags":{ "name":"DescribeTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTagsRequest"}, "output":{"shape":"DescribeTagsResult"} }, "DescribeVolumeAttribute":{ "name":"DescribeVolumeAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVolumeAttributeRequest"}, "output":{"shape":"DescribeVolumeAttributeResult"} }, "DescribeVolumeStatus":{ "name":"DescribeVolumeStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVolumeStatusRequest"}, "output":{"shape":"DescribeVolumeStatusResult"} }, "DescribeVolumes":{ "name":"DescribeVolumes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVolumesRequest"}, "output":{"shape":"DescribeVolumesResult"} }, "DescribeVpcAttribute":{ "name":"DescribeVpcAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcAttributeRequest"}, "output":{"shape":"DescribeVpcAttributeResult"} }, "DescribeVpcClassicLink":{ "name":"DescribeVpcClassicLink", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcClassicLinkRequest"}, "output":{"shape":"DescribeVpcClassicLinkResult"} }, "DescribeVpcClassicLinkDnsSupport":{ "name":"DescribeVpcClassicLinkDnsSupport", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcClassicLinkDnsSupportRequest"}, "output":{"shape":"DescribeVpcClassicLinkDnsSupportResult"} }, "DescribeVpcEndpointServices":{ "name":"DescribeVpcEndpointServices", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcEndpointServicesRequest"}, "output":{"shape":"DescribeVpcEndpointServicesResult"} }, "DescribeVpcEndpoints":{ "name":"DescribeVpcEndpoints", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcEndpointsRequest"}, "output":{"shape":"DescribeVpcEndpointsResult"} }, "DescribeVpcPeeringConnections":{ "name":"DescribeVpcPeeringConnections", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcPeeringConnectionsRequest"}, "output":{"shape":"DescribeVpcPeeringConnectionsResult"} }, "DescribeVpcs":{ "name":"DescribeVpcs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcsRequest"}, "output":{"shape":"DescribeVpcsResult"} }, "DescribeVpnConnections":{ "name":"DescribeVpnConnections", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpnConnectionsRequest"}, "output":{"shape":"DescribeVpnConnectionsResult"} }, "DescribeVpnGateways":{ "name":"DescribeVpnGateways", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpnGatewaysRequest"}, "output":{"shape":"DescribeVpnGatewaysResult"} }, "DetachClassicLinkVpc":{ "name":"DetachClassicLinkVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachClassicLinkVpcRequest"}, "output":{"shape":"DetachClassicLinkVpcResult"} }, "DetachInternetGateway":{ "name":"DetachInternetGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachInternetGatewayRequest"} }, "DetachNetworkInterface":{ "name":"DetachNetworkInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachNetworkInterfaceRequest"} }, "DetachVolume":{ "name":"DetachVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachVolumeRequest"}, "output":{"shape":"VolumeAttachment"} }, "DetachVpnGateway":{ "name":"DetachVpnGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachVpnGatewayRequest"} }, "DisableVgwRoutePropagation":{ "name":"DisableVgwRoutePropagation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableVgwRoutePropagationRequest"} }, "DisableVpcClassicLink":{ "name":"DisableVpcClassicLink", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableVpcClassicLinkRequest"}, "output":{"shape":"DisableVpcClassicLinkResult"} }, "DisableVpcClassicLinkDnsSupport":{ "name":"DisableVpcClassicLinkDnsSupport", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableVpcClassicLinkDnsSupportRequest"}, "output":{"shape":"DisableVpcClassicLinkDnsSupportResult"} }, "DisassociateAddress":{ "name":"DisassociateAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisassociateAddressRequest"} }, "DisassociateRouteTable":{ "name":"DisassociateRouteTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisassociateRouteTableRequest"} }, "EnableVgwRoutePropagation":{ "name":"EnableVgwRoutePropagation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableVgwRoutePropagationRequest"} }, "EnableVolumeIO":{ "name":"EnableVolumeIO", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableVolumeIORequest"} }, "EnableVpcClassicLink":{ "name":"EnableVpcClassicLink", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableVpcClassicLinkRequest"}, "output":{"shape":"EnableVpcClassicLinkResult"} }, "EnableVpcClassicLinkDnsSupport":{ "name":"EnableVpcClassicLinkDnsSupport", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableVpcClassicLinkDnsSupportRequest"}, "output":{"shape":"EnableVpcClassicLinkDnsSupportResult"} }, "GetConsoleOutput":{ "name":"GetConsoleOutput", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetConsoleOutputRequest"}, "output":{"shape":"GetConsoleOutputResult"} }, "GetConsoleScreenshot":{ "name":"GetConsoleScreenshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetConsoleScreenshotRequest"}, "output":{"shape":"GetConsoleScreenshotResult"} }, "GetHostReservationPurchasePreview":{ "name":"GetHostReservationPurchasePreview", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetHostReservationPurchasePreviewRequest"}, "output":{"shape":"GetHostReservationPurchasePreviewResult"} }, "GetPasswordData":{ "name":"GetPasswordData", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetPasswordDataRequest"}, "output":{"shape":"GetPasswordDataResult"} }, "ImportImage":{ "name":"ImportImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportImageRequest"}, "output":{"shape":"ImportImageResult"} }, "ImportInstance":{ "name":"ImportInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportInstanceRequest"}, "output":{"shape":"ImportInstanceResult"} }, "ImportKeyPair":{ "name":"ImportKeyPair", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportKeyPairRequest"}, "output":{"shape":"ImportKeyPairResult"} }, "ImportSnapshot":{ "name":"ImportSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportSnapshotRequest"}, "output":{"shape":"ImportSnapshotResult"} }, "ImportVolume":{ "name":"ImportVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportVolumeRequest"}, "output":{"shape":"ImportVolumeResult"} }, "ModifyHosts":{ "name":"ModifyHosts", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyHostsRequest"}, "output":{"shape":"ModifyHostsResult"} }, "ModifyIdFormat":{ "name":"ModifyIdFormat", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyIdFormatRequest"} }, "ModifyIdentityIdFormat":{ "name":"ModifyIdentityIdFormat", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyIdentityIdFormatRequest"} }, "ModifyImageAttribute":{ "name":"ModifyImageAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyImageAttributeRequest"} }, "ModifyInstanceAttribute":{ "name":"ModifyInstanceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyInstanceAttributeRequest"} }, "ModifyInstancePlacement":{ "name":"ModifyInstancePlacement", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyInstancePlacementRequest"}, "output":{"shape":"ModifyInstancePlacementResult"} }, "ModifyNetworkInterfaceAttribute":{ "name":"ModifyNetworkInterfaceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyNetworkInterfaceAttributeRequest"} }, "ModifyReservedInstances":{ "name":"ModifyReservedInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyReservedInstancesRequest"}, "output":{"shape":"ModifyReservedInstancesResult"} }, "ModifySnapshotAttribute":{ "name":"ModifySnapshotAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifySnapshotAttributeRequest"} }, "ModifySpotFleetRequest":{ "name":"ModifySpotFleetRequest", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifySpotFleetRequestRequest"}, "output":{"shape":"ModifySpotFleetRequestResponse"} }, "ModifySubnetAttribute":{ "name":"ModifySubnetAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifySubnetAttributeRequest"} }, "ModifyVolumeAttribute":{ "name":"ModifyVolumeAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyVolumeAttributeRequest"} }, "ModifyVpcAttribute":{ "name":"ModifyVpcAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyVpcAttributeRequest"} }, "ModifyVpcEndpoint":{ "name":"ModifyVpcEndpoint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyVpcEndpointRequest"}, "output":{"shape":"ModifyVpcEndpointResult"} }, "ModifyVpcPeeringConnectionOptions":{ "name":"ModifyVpcPeeringConnectionOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyVpcPeeringConnectionOptionsRequest"}, "output":{"shape":"ModifyVpcPeeringConnectionOptionsResult"} }, "MonitorInstances":{ "name":"MonitorInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"MonitorInstancesRequest"}, "output":{"shape":"MonitorInstancesResult"} }, "MoveAddressToVpc":{ "name":"MoveAddressToVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"MoveAddressToVpcRequest"}, "output":{"shape":"MoveAddressToVpcResult"} }, "PurchaseHostReservation":{ "name":"PurchaseHostReservation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PurchaseHostReservationRequest"}, "output":{"shape":"PurchaseHostReservationResult"} }, "PurchaseReservedInstancesOffering":{ "name":"PurchaseReservedInstancesOffering", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PurchaseReservedInstancesOfferingRequest"}, "output":{"shape":"PurchaseReservedInstancesOfferingResult"} }, "PurchaseScheduledInstances":{ "name":"PurchaseScheduledInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PurchaseScheduledInstancesRequest"}, "output":{"shape":"PurchaseScheduledInstancesResult"} }, "RebootInstances":{ "name":"RebootInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RebootInstancesRequest"} }, "RegisterImage":{ "name":"RegisterImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterImageRequest"}, "output":{"shape":"RegisterImageResult"} }, "RejectVpcPeeringConnection":{ "name":"RejectVpcPeeringConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RejectVpcPeeringConnectionRequest"}, "output":{"shape":"RejectVpcPeeringConnectionResult"} }, "ReleaseAddress":{ "name":"ReleaseAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReleaseAddressRequest"} }, "ReleaseHosts":{ "name":"ReleaseHosts", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReleaseHostsRequest"}, "output":{"shape":"ReleaseHostsResult"} }, "ReplaceNetworkAclAssociation":{ "name":"ReplaceNetworkAclAssociation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReplaceNetworkAclAssociationRequest"}, "output":{"shape":"ReplaceNetworkAclAssociationResult"} }, "ReplaceNetworkAclEntry":{ "name":"ReplaceNetworkAclEntry", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReplaceNetworkAclEntryRequest"} }, "ReplaceRoute":{ "name":"ReplaceRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReplaceRouteRequest"} }, "ReplaceRouteTableAssociation":{ "name":"ReplaceRouteTableAssociation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReplaceRouteTableAssociationRequest"}, "output":{"shape":"ReplaceRouteTableAssociationResult"} }, "ReportInstanceStatus":{ "name":"ReportInstanceStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReportInstanceStatusRequest"} }, "RequestSpotFleet":{ "name":"RequestSpotFleet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RequestSpotFleetRequest"}, "output":{"shape":"RequestSpotFleetResponse"} }, "RequestSpotInstances":{ "name":"RequestSpotInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RequestSpotInstancesRequest"}, "output":{"shape":"RequestSpotInstancesResult"} }, "ResetImageAttribute":{ "name":"ResetImageAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetImageAttributeRequest"} }, "ResetInstanceAttribute":{ "name":"ResetInstanceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetInstanceAttributeRequest"} }, "ResetNetworkInterfaceAttribute":{ "name":"ResetNetworkInterfaceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetNetworkInterfaceAttributeRequest"} }, "ResetSnapshotAttribute":{ "name":"ResetSnapshotAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetSnapshotAttributeRequest"} }, "RestoreAddressToClassic":{ "name":"RestoreAddressToClassic", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreAddressToClassicRequest"}, "output":{"shape":"RestoreAddressToClassicResult"} }, "RevokeSecurityGroupEgress":{ "name":"RevokeSecurityGroupEgress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RevokeSecurityGroupEgressRequest"} }, "RevokeSecurityGroupIngress":{ "name":"RevokeSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RevokeSecurityGroupIngressRequest"} }, "RunInstances":{ "name":"RunInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RunInstancesRequest"}, "output":{"shape":"Reservation"} }, "RunScheduledInstances":{ "name":"RunScheduledInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RunScheduledInstancesRequest"}, "output":{"shape":"RunScheduledInstancesResult"} }, "StartInstances":{ "name":"StartInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartInstancesRequest"}, "output":{"shape":"StartInstancesResult"} }, "StopInstances":{ "name":"StopInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopInstancesRequest"}, "output":{"shape":"StopInstancesResult"} }, "TerminateInstances":{ "name":"TerminateInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"TerminateInstancesRequest"}, "output":{"shape":"TerminateInstancesResult"} }, "UnassignPrivateIpAddresses":{ "name":"UnassignPrivateIpAddresses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UnassignPrivateIpAddressesRequest"} }, "UnmonitorInstances":{ "name":"UnmonitorInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UnmonitorInstancesRequest"}, "output":{"shape":"UnmonitorInstancesResult"} } }, "shapes":{ "AcceptVpcPeeringConnectionRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "AcceptVpcPeeringConnectionResult":{ "type":"structure", "members":{ "VpcPeeringConnection":{ "shape":"VpcPeeringConnection", "locationName":"vpcPeeringConnection" } } }, "AccountAttribute":{ "type":"structure", "members":{ "AttributeName":{ "shape":"String", "locationName":"attributeName" }, "AttributeValues":{ "shape":"AccountAttributeValueList", "locationName":"attributeValueSet" } } }, "AccountAttributeList":{ "type":"list", "member":{ "shape":"AccountAttribute", "locationName":"item" } }, "AccountAttributeName":{ "type":"string", "enum":[ "supported-platforms", "default-vpc" ] }, "AccountAttributeNameStringList":{ "type":"list", "member":{ "shape":"AccountAttributeName", "locationName":"attributeName" } }, "AccountAttributeValue":{ "type":"structure", "members":{ "AttributeValue":{ "shape":"String", "locationName":"attributeValue" } } }, "AccountAttributeValueList":{ "type":"list", "member":{ "shape":"AccountAttributeValue", "locationName":"item" } }, "ActiveInstance":{ "type":"structure", "members":{ "InstanceType":{ "shape":"String", "locationName":"instanceType" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "SpotInstanceRequestId":{ "shape":"String", "locationName":"spotInstanceRequestId" } } }, "ActiveInstanceSet":{ "type":"list", "member":{ "shape":"ActiveInstance", "locationName":"item" } }, "ActivityStatus":{ "type":"string", "enum":[ "error", "pending_fulfillment", "pending_termination", "fulfilled" ] }, "Address":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "AllocationId":{ "shape":"String", "locationName":"allocationId" }, "AssociationId":{ "shape":"String", "locationName":"associationId" }, "Domain":{ "shape":"DomainType", "locationName":"domain" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "NetworkInterfaceOwnerId":{ "shape":"String", "locationName":"networkInterfaceOwnerId" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" } } }, "AddressList":{ "type":"list", "member":{ "shape":"Address", "locationName":"item" } }, "Affinity":{ "type":"string", "enum":[ "default", "host" ] }, "AllocateAddressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Domain":{"shape":"DomainType"} } }, "AllocateAddressResult":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "Domain":{ "shape":"DomainType", "locationName":"domain" }, "AllocationId":{ "shape":"String", "locationName":"allocationId" } } }, "AllocateHostsRequest":{ "type":"structure", "required":[ "InstanceType", "Quantity", "AvailabilityZone" ], "members":{ "AutoPlacement":{ "shape":"AutoPlacement", "locationName":"autoPlacement" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "InstanceType":{ "shape":"String", "locationName":"instanceType" }, "Quantity":{ "shape":"Integer", "locationName":"quantity" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" } } }, "AllocateHostsResult":{ "type":"structure", "members":{ "HostIds":{ "shape":"ResponseHostIdList", "locationName":"hostIdSet" } } }, "AllocationIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"AllocationId" } }, "AllocationState":{ "type":"string", "enum":[ "available", "under-assessment", "permanent-failure", "released", "released-permanent-failure" ] }, "AllocationStrategy":{ "type":"string", "enum":[ "lowestPrice", "diversified" ] }, "ArchitectureValues":{ "type":"string", "enum":[ "i386", "x86_64" ] }, "AssignPrivateIpAddressesRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "PrivateIpAddresses":{ "shape":"PrivateIpAddressStringList", "locationName":"privateIpAddress" }, "SecondaryPrivateIpAddressCount":{ "shape":"Integer", "locationName":"secondaryPrivateIpAddressCount" }, "AllowReassignment":{ "shape":"Boolean", "locationName":"allowReassignment" } } }, "AssociateAddressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{"shape":"String"}, "PublicIp":{"shape":"String"}, "AllocationId":{"shape":"String"}, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "AllowReassociation":{ "shape":"Boolean", "locationName":"allowReassociation" } } }, "AssociateAddressResult":{ "type":"structure", "members":{ "AssociationId":{ "shape":"String", "locationName":"associationId" } } }, "AssociateDhcpOptionsRequest":{ "type":"structure", "required":[ "DhcpOptionsId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "DhcpOptionsId":{"shape":"String"}, "VpcId":{"shape":"String"} } }, "AssociateRouteTableRequest":{ "type":"structure", "required":[ "SubnetId", "RouteTableId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" } } }, "AssociateRouteTableResult":{ "type":"structure", "members":{ "AssociationId":{ "shape":"String", "locationName":"associationId" } } }, "AttachClassicLinkVpcRequest":{ "type":"structure", "required":[ "InstanceId", "VpcId", "Groups" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Groups":{ "shape":"GroupIdStringList", "locationName":"SecurityGroupId" } } }, "AttachClassicLinkVpcResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "AttachInternetGatewayRequest":{ "type":"structure", "required":[ "InternetGatewayId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InternetGatewayId":{ "shape":"String", "locationName":"internetGatewayId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "AttachNetworkInterfaceRequest":{ "type":"structure", "required":[ "NetworkInterfaceId", "InstanceId", "DeviceIndex" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "DeviceIndex":{ "shape":"Integer", "locationName":"deviceIndex" } } }, "AttachNetworkInterfaceResult":{ "type":"structure", "members":{ "AttachmentId":{ "shape":"String", "locationName":"attachmentId" } } }, "AttachVolumeRequest":{ "type":"structure", "required":[ "VolumeId", "InstanceId", "Device" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "InstanceId":{"shape":"String"}, "Device":{"shape":"String"} } }, "AttachVpnGatewayRequest":{ "type":"structure", "required":[ "VpnGatewayId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnGatewayId":{"shape":"String"}, "VpcId":{"shape":"String"} } }, "AttachVpnGatewayResult":{ "type":"structure", "members":{ "VpcAttachment":{ "shape":"VpcAttachment", "locationName":"attachment" } } }, "AttachmentStatus":{ "type":"string", "enum":[ "attaching", "attached", "detaching", "detached" ] }, "AttributeBooleanValue":{ "type":"structure", "members":{ "Value":{ "shape":"Boolean", "locationName":"value" } } }, "AttributeValue":{ "type":"structure", "members":{ "Value":{ "shape":"String", "locationName":"value" } } }, "AuthorizeSecurityGroupEgressRequest":{ "type":"structure", "required":["GroupId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupId":{ "shape":"String", "locationName":"groupId" }, "SourceSecurityGroupName":{ "shape":"String", "locationName":"sourceSecurityGroupName" }, "SourceSecurityGroupOwnerId":{ "shape":"String", "locationName":"sourceSecurityGroupOwnerId" }, "IpProtocol":{ "shape":"String", "locationName":"ipProtocol" }, "FromPort":{ "shape":"Integer", "locationName":"fromPort" }, "ToPort":{ "shape":"Integer", "locationName":"toPort" }, "CidrIp":{ "shape":"String", "locationName":"cidrIp" }, "IpPermissions":{ "shape":"IpPermissionList", "locationName":"ipPermissions" } } }, "AuthorizeSecurityGroupIngressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{"shape":"String"}, "GroupId":{"shape":"String"}, "SourceSecurityGroupName":{"shape":"String"}, "SourceSecurityGroupOwnerId":{"shape":"String"}, "IpProtocol":{"shape":"String"}, "FromPort":{"shape":"Integer"}, "ToPort":{"shape":"Integer"}, "CidrIp":{"shape":"String"}, "IpPermissions":{"shape":"IpPermissionList"} } }, "AutoPlacement":{ "type":"string", "enum":[ "on", "off" ] }, "AvailabilityZone":{ "type":"structure", "members":{ "ZoneName":{ "shape":"String", "locationName":"zoneName" }, "State":{ "shape":"AvailabilityZoneState", "locationName":"zoneState" }, "RegionName":{ "shape":"String", "locationName":"regionName" }, "Messages":{ "shape":"AvailabilityZoneMessageList", "locationName":"messageSet" } } }, "AvailabilityZoneList":{ "type":"list", "member":{ "shape":"AvailabilityZone", "locationName":"item" } }, "AvailabilityZoneMessage":{ "type":"structure", "members":{ "Message":{ "shape":"String", "locationName":"message" } } }, "AvailabilityZoneMessageList":{ "type":"list", "member":{ "shape":"AvailabilityZoneMessage", "locationName":"item" } }, "AvailabilityZoneState":{ "type":"string", "enum":[ "available", "information", "impaired", "unavailable" ] }, "AvailableCapacity":{ "type":"structure", "members":{ "AvailableInstanceCapacity":{ "shape":"AvailableInstanceCapacityList", "locationName":"availableInstanceCapacity" }, "AvailableVCpus":{ "shape":"Integer", "locationName":"availableVCpus" } } }, "AvailableInstanceCapacityList":{ "type":"list", "member":{ "shape":"InstanceCapacity", "locationName":"item" } }, "BatchState":{ "type":"string", "enum":[ "submitted", "active", "cancelled", "failed", "cancelled_running", "cancelled_terminating", "modifying" ] }, "Blob":{"type":"blob"}, "BlobAttributeValue":{ "type":"structure", "members":{ "Value":{ "shape":"Blob", "locationName":"value" } } }, "BlockDeviceMapping":{ "type":"structure", "members":{ "VirtualName":{ "shape":"String", "locationName":"virtualName" }, "DeviceName":{ "shape":"String", "locationName":"deviceName" }, "Ebs":{ "shape":"EbsBlockDevice", "locationName":"ebs" }, "NoDevice":{ "shape":"String", "locationName":"noDevice" } } }, "BlockDeviceMappingList":{ "type":"list", "member":{ "shape":"BlockDeviceMapping", "locationName":"item" } }, "BlockDeviceMappingRequestList":{ "type":"list", "member":{ "shape":"BlockDeviceMapping", "locationName":"BlockDeviceMapping" } }, "Boolean":{"type":"boolean"}, "BundleIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"BundleId" } }, "BundleInstanceRequest":{ "type":"structure", "required":[ "InstanceId", "Storage" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{"shape":"String"}, "Storage":{"shape":"Storage"} } }, "BundleInstanceResult":{ "type":"structure", "members":{ "BundleTask":{ "shape":"BundleTask", "locationName":"bundleInstanceTask" } } }, "BundleTask":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "BundleId":{ "shape":"String", "locationName":"bundleId" }, "State":{ "shape":"BundleTaskState", "locationName":"state" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "UpdateTime":{ "shape":"DateTime", "locationName":"updateTime" }, "Storage":{ "shape":"Storage", "locationName":"storage" }, "Progress":{ "shape":"String", "locationName":"progress" }, "BundleTaskError":{ "shape":"BundleTaskError", "locationName":"error" } } }, "BundleTaskError":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "BundleTaskList":{ "type":"list", "member":{ "shape":"BundleTask", "locationName":"item" } }, "BundleTaskState":{ "type":"string", "enum":[ "pending", "waiting-for-shutdown", "bundling", "storing", "cancelling", "complete", "failed" ] }, "CancelBatchErrorCode":{ "type":"string", "enum":[ "fleetRequestIdDoesNotExist", "fleetRequestIdMalformed", "fleetRequestNotInCancellableState", "unexpectedError" ] }, "CancelBundleTaskRequest":{ "type":"structure", "required":["BundleId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "BundleId":{"shape":"String"} } }, "CancelBundleTaskResult":{ "type":"structure", "members":{ "BundleTask":{ "shape":"BundleTask", "locationName":"bundleInstanceTask" } } }, "CancelConversionRequest":{ "type":"structure", "required":["ConversionTaskId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ConversionTaskId":{ "shape":"String", "locationName":"conversionTaskId" }, "ReasonMessage":{ "shape":"String", "locationName":"reasonMessage" } } }, "CancelExportTaskRequest":{ "type":"structure", "required":["ExportTaskId"], "members":{ "ExportTaskId":{ "shape":"String", "locationName":"exportTaskId" } } }, "CancelImportTaskRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "ImportTaskId":{"shape":"String"}, "CancelReason":{"shape":"String"} } }, "CancelImportTaskResult":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "State":{ "shape":"String", "locationName":"state" }, "PreviousState":{ "shape":"String", "locationName":"previousState" } } }, "CancelReservedInstancesListingRequest":{ "type":"structure", "required":["ReservedInstancesListingId"], "members":{ "ReservedInstancesListingId":{ "shape":"String", "locationName":"reservedInstancesListingId" } } }, "CancelReservedInstancesListingResult":{ "type":"structure", "members":{ "ReservedInstancesListings":{ "shape":"ReservedInstancesListingList", "locationName":"reservedInstancesListingsSet" } } }, "CancelSpotFleetRequestsError":{ "type":"structure", "required":[ "Code", "Message" ], "members":{ "Code":{ "shape":"CancelBatchErrorCode", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "CancelSpotFleetRequestsErrorItem":{ "type":"structure", "required":[ "SpotFleetRequestId", "Error" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "Error":{ "shape":"CancelSpotFleetRequestsError", "locationName":"error" } } }, "CancelSpotFleetRequestsErrorSet":{ "type":"list", "member":{ "shape":"CancelSpotFleetRequestsErrorItem", "locationName":"item" } }, "CancelSpotFleetRequestsRequest":{ "type":"structure", "required":[ "SpotFleetRequestIds", "TerminateInstances" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestIds":{ "shape":"ValueStringList", "locationName":"spotFleetRequestId" }, "TerminateInstances":{ "shape":"Boolean", "locationName":"terminateInstances" } } }, "CancelSpotFleetRequestsResponse":{ "type":"structure", "members":{ "UnsuccessfulFleetRequests":{ "shape":"CancelSpotFleetRequestsErrorSet", "locationName":"unsuccessfulFleetRequestSet" }, "SuccessfulFleetRequests":{ "shape":"CancelSpotFleetRequestsSuccessSet", "locationName":"successfulFleetRequestSet" } } }, "CancelSpotFleetRequestsSuccessItem":{ "type":"structure", "required":[ "SpotFleetRequestId", "CurrentSpotFleetRequestState", "PreviousSpotFleetRequestState" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "CurrentSpotFleetRequestState":{ "shape":"BatchState", "locationName":"currentSpotFleetRequestState" }, "PreviousSpotFleetRequestState":{ "shape":"BatchState", "locationName":"previousSpotFleetRequestState" } } }, "CancelSpotFleetRequestsSuccessSet":{ "type":"list", "member":{ "shape":"CancelSpotFleetRequestsSuccessItem", "locationName":"item" } }, "CancelSpotInstanceRequestState":{ "type":"string", "enum":[ "active", "open", "closed", "cancelled", "completed" ] }, "CancelSpotInstanceRequestsRequest":{ "type":"structure", "required":["SpotInstanceRequestIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotInstanceRequestIds":{ "shape":"SpotInstanceRequestIdList", "locationName":"SpotInstanceRequestId" } } }, "CancelSpotInstanceRequestsResult":{ "type":"structure", "members":{ "CancelledSpotInstanceRequests":{ "shape":"CancelledSpotInstanceRequestList", "locationName":"spotInstanceRequestSet" } } }, "CancelledSpotInstanceRequest":{ "type":"structure", "members":{ "SpotInstanceRequestId":{ "shape":"String", "locationName":"spotInstanceRequestId" }, "State":{ "shape":"CancelSpotInstanceRequestState", "locationName":"state" } } }, "CancelledSpotInstanceRequestList":{ "type":"list", "member":{ "shape":"CancelledSpotInstanceRequest", "locationName":"item" } }, "ClassicLinkDnsSupport":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "ClassicLinkDnsSupported":{ "shape":"Boolean", "locationName":"classicLinkDnsSupported" } } }, "ClassicLinkDnsSupportList":{ "type":"list", "member":{ "shape":"ClassicLinkDnsSupport", "locationName":"item" } }, "ClassicLinkInstance":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "ClassicLinkInstanceList":{ "type":"list", "member":{ "shape":"ClassicLinkInstance", "locationName":"item" } }, "ClientData":{ "type":"structure", "members":{ "UploadStart":{"shape":"DateTime"}, "UploadEnd":{"shape":"DateTime"}, "UploadSize":{"shape":"Double"}, "Comment":{"shape":"String"} } }, "ConfirmProductInstanceRequest":{ "type":"structure", "required":[ "ProductCode", "InstanceId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ProductCode":{"shape":"String"}, "InstanceId":{"shape":"String"} } }, "ConfirmProductInstanceResult":{ "type":"structure", "members":{ "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "Return":{ "shape":"Boolean", "locationName":"return" } } }, "ContainerFormat":{ "type":"string", "enum":["ova"] }, "ConversionIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "ConversionTask":{ "type":"structure", "required":[ "ConversionTaskId", "State" ], "members":{ "ConversionTaskId":{ "shape":"String", "locationName":"conversionTaskId" }, "ExpirationTime":{ "shape":"String", "locationName":"expirationTime" }, "ImportInstance":{ "shape":"ImportInstanceTaskDetails", "locationName":"importInstance" }, "ImportVolume":{ "shape":"ImportVolumeTaskDetails", "locationName":"importVolume" }, "State":{ "shape":"ConversionTaskState", "locationName":"state" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "ConversionTaskState":{ "type":"string", "enum":[ "active", "cancelling", "cancelled", "completed" ] }, "CopyImageRequest":{ "type":"structure", "required":[ "SourceRegion", "SourceImageId", "Name" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SourceRegion":{"shape":"String"}, "SourceImageId":{"shape":"String"}, "Name":{"shape":"String"}, "Description":{"shape":"String"}, "ClientToken":{"shape":"String"}, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{ "shape":"String", "locationName":"kmsKeyId" } } }, "CopyImageResult":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" } } }, "CopySnapshotRequest":{ "type":"structure", "required":[ "SourceRegion", "SourceSnapshotId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SourceRegion":{"shape":"String"}, "SourceSnapshotId":{"shape":"String"}, "Description":{"shape":"String"}, "DestinationRegion":{ "shape":"String", "locationName":"destinationRegion" }, "PresignedUrl":{ "shape":"String", "locationName":"presignedUrl" }, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{ "shape":"String", "locationName":"kmsKeyId" } } }, "CopySnapshotResult":{ "type":"structure", "members":{ "SnapshotId":{ "shape":"String", "locationName":"snapshotId" } } }, "CreateCustomerGatewayRequest":{ "type":"structure", "required":[ "Type", "PublicIp", "BgpAsn" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Type":{"shape":"GatewayType"}, "PublicIp":{ "shape":"String", "locationName":"IpAddress" }, "BgpAsn":{"shape":"Integer"} } }, "CreateCustomerGatewayResult":{ "type":"structure", "members":{ "CustomerGateway":{ "shape":"CustomerGateway", "locationName":"customerGateway" } } }, "CreateDhcpOptionsRequest":{ "type":"structure", "required":["DhcpConfigurations"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "DhcpConfigurations":{ "shape":"NewDhcpConfigurationList", "locationName":"dhcpConfiguration" } } }, "CreateDhcpOptionsResult":{ "type":"structure", "members":{ "DhcpOptions":{ "shape":"DhcpOptions", "locationName":"dhcpOptions" } } }, "CreateFlowLogsRequest":{ "type":"structure", "required":[ "ResourceIds", "ResourceType", "TrafficType", "LogGroupName", "DeliverLogsPermissionArn" ], "members":{ "ResourceIds":{ "shape":"ValueStringList", "locationName":"ResourceId" }, "ResourceType":{"shape":"FlowLogsResourceType"}, "TrafficType":{"shape":"TrafficType"}, "LogGroupName":{"shape":"String"}, "DeliverLogsPermissionArn":{"shape":"String"}, "ClientToken":{"shape":"String"} } }, "CreateFlowLogsResult":{ "type":"structure", "members":{ "FlowLogIds":{ "shape":"ValueStringList", "locationName":"flowLogIdSet" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "Unsuccessful":{ "shape":"UnsuccessfulItemSet", "locationName":"unsuccessful" } } }, "CreateImageRequest":{ "type":"structure", "required":[ "InstanceId", "Name" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Name":{ "shape":"String", "locationName":"name" }, "Description":{ "shape":"String", "locationName":"description" }, "NoReboot":{ "shape":"Boolean", "locationName":"noReboot" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingRequestList", "locationName":"blockDeviceMapping" } } }, "CreateImageResult":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" } } }, "CreateInstanceExportTaskRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "Description":{ "shape":"String", "locationName":"description" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "TargetEnvironment":{ "shape":"ExportEnvironment", "locationName":"targetEnvironment" }, "ExportToS3Task":{ "shape":"ExportToS3TaskSpecification", "locationName":"exportToS3" } } }, "CreateInstanceExportTaskResult":{ "type":"structure", "members":{ "ExportTask":{ "shape":"ExportTask", "locationName":"exportTask" } } }, "CreateInternetGatewayRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "CreateInternetGatewayResult":{ "type":"structure", "members":{ "InternetGateway":{ "shape":"InternetGateway", "locationName":"internetGateway" } } }, "CreateKeyPairRequest":{ "type":"structure", "required":["KeyName"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "KeyName":{"shape":"String"} } }, "CreateNatGatewayRequest":{ "type":"structure", "required":[ "SubnetId", "AllocationId" ], "members":{ "SubnetId":{"shape":"String"}, "AllocationId":{"shape":"String"}, "ClientToken":{"shape":"String"} } }, "CreateNatGatewayResult":{ "type":"structure", "members":{ "NatGateway":{ "shape":"NatGateway", "locationName":"natGateway" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "CreateNetworkAclEntryRequest":{ "type":"structure", "required":[ "NetworkAclId", "RuleNumber", "Protocol", "RuleAction", "Egress", "CidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "RuleNumber":{ "shape":"Integer", "locationName":"ruleNumber" }, "Protocol":{ "shape":"String", "locationName":"protocol" }, "RuleAction":{ "shape":"RuleAction", "locationName":"ruleAction" }, "Egress":{ "shape":"Boolean", "locationName":"egress" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "IcmpTypeCode":{ "shape":"IcmpTypeCode", "locationName":"Icmp" }, "PortRange":{ "shape":"PortRange", "locationName":"portRange" } } }, "CreateNetworkAclRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "CreateNetworkAclResult":{ "type":"structure", "members":{ "NetworkAcl":{ "shape":"NetworkAcl", "locationName":"networkAcl" } } }, "CreateNetworkInterfaceRequest":{ "type":"structure", "required":["SubnetId"], "members":{ "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "Description":{ "shape":"String", "locationName":"description" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "Groups":{ "shape":"SecurityGroupIdStringList", "locationName":"SecurityGroupId" }, "PrivateIpAddresses":{ "shape":"PrivateIpAddressSpecificationList", "locationName":"privateIpAddresses" }, "SecondaryPrivateIpAddressCount":{ "shape":"Integer", "locationName":"secondaryPrivateIpAddressCount" }, "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "CreateNetworkInterfaceResult":{ "type":"structure", "members":{ "NetworkInterface":{ "shape":"NetworkInterface", "locationName":"networkInterface" } } }, "CreatePlacementGroupRequest":{ "type":"structure", "required":[ "GroupName", "Strategy" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "Strategy":{ "shape":"PlacementStrategy", "locationName":"strategy" } } }, "CreateReservedInstancesListingRequest":{ "type":"structure", "required":[ "ReservedInstancesId", "InstanceCount", "PriceSchedules", "ClientToken" ], "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "PriceSchedules":{ "shape":"PriceScheduleSpecificationList", "locationName":"priceSchedules" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "CreateReservedInstancesListingResult":{ "type":"structure", "members":{ "ReservedInstancesListings":{ "shape":"ReservedInstancesListingList", "locationName":"reservedInstancesListingsSet" } } }, "CreateRouteRequest":{ "type":"structure", "required":[ "RouteTableId", "DestinationCidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" }, "GatewayId":{ "shape":"String", "locationName":"gatewayId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" }, "NatGatewayId":{ "shape":"String", "locationName":"natGatewayId" } } }, "CreateRouteResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "CreateRouteTableRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "CreateRouteTableResult":{ "type":"structure", "members":{ "RouteTable":{ "shape":"RouteTable", "locationName":"routeTable" } } }, "CreateSecurityGroupRequest":{ "type":"structure", "required":[ "GroupName", "Description" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{"shape":"String"}, "Description":{ "shape":"String", "locationName":"GroupDescription" }, "VpcId":{"shape":"String"} } }, "CreateSecurityGroupResult":{ "type":"structure", "members":{ "GroupId":{ "shape":"String", "locationName":"groupId" } } }, "CreateSnapshotRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "Description":{"shape":"String"} } }, "CreateSpotDatafeedSubscriptionRequest":{ "type":"structure", "required":["Bucket"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Bucket":{ "shape":"String", "locationName":"bucket" }, "Prefix":{ "shape":"String", "locationName":"prefix" } } }, "CreateSpotDatafeedSubscriptionResult":{ "type":"structure", "members":{ "SpotDatafeedSubscription":{ "shape":"SpotDatafeedSubscription", "locationName":"spotDatafeedSubscription" } } }, "CreateSubnetRequest":{ "type":"structure", "required":[ "VpcId", "CidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{"shape":"String"}, "CidrBlock":{"shape":"String"}, "AvailabilityZone":{"shape":"String"} } }, "CreateSubnetResult":{ "type":"structure", "members":{ "Subnet":{ "shape":"Subnet", "locationName":"subnet" } } }, "CreateTagsRequest":{ "type":"structure", "required":[ "Resources", "Tags" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Resources":{ "shape":"ResourceIdList", "locationName":"ResourceId" }, "Tags":{ "shape":"TagList", "locationName":"Tag" } } }, "CreateVolumePermission":{ "type":"structure", "members":{ "UserId":{ "shape":"String", "locationName":"userId" }, "Group":{ "shape":"PermissionGroup", "locationName":"group" } } }, "CreateVolumePermissionList":{ "type":"list", "member":{ "shape":"CreateVolumePermission", "locationName":"item" } }, "CreateVolumePermissionModifications":{ "type":"structure", "members":{ "Add":{"shape":"CreateVolumePermissionList"}, "Remove":{"shape":"CreateVolumePermissionList"} } }, "CreateVolumeRequest":{ "type":"structure", "required":["AvailabilityZone"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Size":{"shape":"Integer"}, "SnapshotId":{"shape":"String"}, "AvailabilityZone":{"shape":"String"}, "VolumeType":{"shape":"VolumeType"}, "Iops":{"shape":"Integer"}, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{"shape":"String"} } }, "CreateVpcEndpointRequest":{ "type":"structure", "required":[ "VpcId", "ServiceName" ], "members":{ "DryRun":{"shape":"Boolean"}, "VpcId":{"shape":"String"}, "ServiceName":{"shape":"String"}, "PolicyDocument":{"shape":"String"}, "RouteTableIds":{ "shape":"ValueStringList", "locationName":"RouteTableId" }, "ClientToken":{"shape":"String"} } }, "CreateVpcEndpointResult":{ "type":"structure", "members":{ "VpcEndpoint":{ "shape":"VpcEndpoint", "locationName":"vpcEndpoint" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "CreateVpcPeeringConnectionRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "PeerVpcId":{ "shape":"String", "locationName":"peerVpcId" }, "PeerOwnerId":{ "shape":"String", "locationName":"peerOwnerId" } } }, "CreateVpcPeeringConnectionResult":{ "type":"structure", "members":{ "VpcPeeringConnection":{ "shape":"VpcPeeringConnection", "locationName":"vpcPeeringConnection" } } }, "CreateVpcRequest":{ "type":"structure", "required":["CidrBlock"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "CidrBlock":{"shape":"String"}, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" } } }, "CreateVpcResult":{ "type":"structure", "members":{ "Vpc":{ "shape":"Vpc", "locationName":"vpc" } } }, "CreateVpnConnectionRequest":{ "type":"structure", "required":[ "Type", "CustomerGatewayId", "VpnGatewayId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Type":{"shape":"String"}, "CustomerGatewayId":{"shape":"String"}, "VpnGatewayId":{"shape":"String"}, "Options":{ "shape":"VpnConnectionOptionsSpecification", "locationName":"options" } } }, "CreateVpnConnectionResult":{ "type":"structure", "members":{ "VpnConnection":{ "shape":"VpnConnection", "locationName":"vpnConnection" } } }, "CreateVpnConnectionRouteRequest":{ "type":"structure", "required":[ "VpnConnectionId", "DestinationCidrBlock" ], "members":{ "VpnConnectionId":{"shape":"String"}, "DestinationCidrBlock":{"shape":"String"} } }, "CreateVpnGatewayRequest":{ "type":"structure", "required":["Type"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Type":{"shape":"GatewayType"}, "AvailabilityZone":{"shape":"String"} } }, "CreateVpnGatewayResult":{ "type":"structure", "members":{ "VpnGateway":{ "shape":"VpnGateway", "locationName":"vpnGateway" } } }, "CurrencyCodeValues":{ "type":"string", "enum":["USD"] }, "CustomerGateway":{ "type":"structure", "members":{ "CustomerGatewayId":{ "shape":"String", "locationName":"customerGatewayId" }, "State":{ "shape":"String", "locationName":"state" }, "Type":{ "shape":"String", "locationName":"type" }, "IpAddress":{ "shape":"String", "locationName":"ipAddress" }, "BgpAsn":{ "shape":"String", "locationName":"bgpAsn" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "CustomerGatewayIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"CustomerGatewayId" } }, "CustomerGatewayList":{ "type":"list", "member":{ "shape":"CustomerGateway", "locationName":"item" } }, "DatafeedSubscriptionState":{ "type":"string", "enum":[ "Active", "Inactive" ] }, "DateTime":{"type":"timestamp"}, "DeleteCustomerGatewayRequest":{ "type":"structure", "required":["CustomerGatewayId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "CustomerGatewayId":{"shape":"String"} } }, "DeleteDhcpOptionsRequest":{ "type":"structure", "required":["DhcpOptionsId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "DhcpOptionsId":{"shape":"String"} } }, "DeleteFlowLogsRequest":{ "type":"structure", "required":["FlowLogIds"], "members":{ "FlowLogIds":{ "shape":"ValueStringList", "locationName":"FlowLogId" } } }, "DeleteFlowLogsResult":{ "type":"structure", "members":{ "Unsuccessful":{ "shape":"UnsuccessfulItemSet", "locationName":"unsuccessful" } } }, "DeleteInternetGatewayRequest":{ "type":"structure", "required":["InternetGatewayId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InternetGatewayId":{ "shape":"String", "locationName":"internetGatewayId" } } }, "DeleteKeyPairRequest":{ "type":"structure", "required":["KeyName"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "KeyName":{"shape":"String"} } }, "DeleteNatGatewayRequest":{ "type":"structure", "required":["NatGatewayId"], "members":{ "NatGatewayId":{"shape":"String"} } }, "DeleteNatGatewayResult":{ "type":"structure", "members":{ "NatGatewayId":{ "shape":"String", "locationName":"natGatewayId" } } }, "DeleteNetworkAclEntryRequest":{ "type":"structure", "required":[ "NetworkAclId", "RuleNumber", "Egress" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "RuleNumber":{ "shape":"Integer", "locationName":"ruleNumber" }, "Egress":{ "shape":"Boolean", "locationName":"egress" } } }, "DeleteNetworkAclRequest":{ "type":"structure", "required":["NetworkAclId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" } } }, "DeleteNetworkInterfaceRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" } } }, "DeletePlacementGroupRequest":{ "type":"structure", "required":["GroupName"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{ "shape":"String", "locationName":"groupName" } } }, "DeleteRouteRequest":{ "type":"structure", "required":[ "RouteTableId", "DestinationCidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" } } }, "DeleteRouteTableRequest":{ "type":"structure", "required":["RouteTableId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" } } }, "DeleteSecurityGroupRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{"shape":"String"}, "GroupId":{"shape":"String"} } }, "DeleteSnapshotRequest":{ "type":"structure", "required":["SnapshotId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotId":{"shape":"String"} } }, "DeleteSpotDatafeedSubscriptionRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "DeleteSubnetRequest":{ "type":"structure", "required":["SubnetId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SubnetId":{"shape":"String"} } }, "DeleteTagsRequest":{ "type":"structure", "required":["Resources"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Resources":{ "shape":"ResourceIdList", "locationName":"resourceId" }, "Tags":{ "shape":"TagList", "locationName":"tag" } } }, "DeleteVolumeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"} } }, "DeleteVpcEndpointsRequest":{ "type":"structure", "required":["VpcEndpointIds"], "members":{ "DryRun":{"shape":"Boolean"}, "VpcEndpointIds":{ "shape":"ValueStringList", "locationName":"VpcEndpointId" } } }, "DeleteVpcEndpointsResult":{ "type":"structure", "members":{ "Unsuccessful":{ "shape":"UnsuccessfulItemSet", "locationName":"unsuccessful" } } }, "DeleteVpcPeeringConnectionRequest":{ "type":"structure", "required":["VpcPeeringConnectionId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "DeleteVpcPeeringConnectionResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "DeleteVpcRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{"shape":"String"} } }, "DeleteVpnConnectionRequest":{ "type":"structure", "required":["VpnConnectionId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnConnectionId":{"shape":"String"} } }, "DeleteVpnConnectionRouteRequest":{ "type":"structure", "required":[ "VpnConnectionId", "DestinationCidrBlock" ], "members":{ "VpnConnectionId":{"shape":"String"}, "DestinationCidrBlock":{"shape":"String"} } }, "DeleteVpnGatewayRequest":{ "type":"structure", "required":["VpnGatewayId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnGatewayId":{"shape":"String"} } }, "DeregisterImageRequest":{ "type":"structure", "required":["ImageId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"} } }, "DescribeAccountAttributesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AttributeNames":{ "shape":"AccountAttributeNameStringList", "locationName":"attributeName" } } }, "DescribeAccountAttributesResult":{ "type":"structure", "members":{ "AccountAttributes":{ "shape":"AccountAttributeList", "locationName":"accountAttributeSet" } } }, "DescribeAddressesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIps":{ "shape":"PublicIpStringList", "locationName":"PublicIp" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "AllocationIds":{ "shape":"AllocationIdList", "locationName":"AllocationId" } } }, "DescribeAddressesResult":{ "type":"structure", "members":{ "Addresses":{ "shape":"AddressList", "locationName":"addressesSet" } } }, "DescribeAvailabilityZonesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ZoneNames":{ "shape":"ZoneNameStringList", "locationName":"ZoneName" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeAvailabilityZonesResult":{ "type":"structure", "members":{ "AvailabilityZones":{ "shape":"AvailabilityZoneList", "locationName":"availabilityZoneInfo" } } }, "DescribeBundleTasksRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "BundleIds":{ "shape":"BundleIdStringList", "locationName":"BundleId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeBundleTasksResult":{ "type":"structure", "members":{ "BundleTasks":{ "shape":"BundleTaskList", "locationName":"bundleInstanceTasksSet" } } }, "DescribeClassicLinkInstancesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeClassicLinkInstancesResult":{ "type":"structure", "members":{ "Instances":{ "shape":"ClassicLinkInstanceList", "locationName":"instancesSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeConversionTaskList":{ "type":"list", "member":{ "shape":"ConversionTask", "locationName":"item" } }, "DescribeConversionTasksRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Filters":{ "shape":"FilterList", "locationName":"filter" }, "ConversionTaskIds":{ "shape":"ConversionIdStringList", "locationName":"conversionTaskId" } } }, "DescribeConversionTasksResult":{ "type":"structure", "members":{ "ConversionTasks":{ "shape":"DescribeConversionTaskList", "locationName":"conversionTasks" } } }, "DescribeCustomerGatewaysRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "CustomerGatewayIds":{ "shape":"CustomerGatewayIdStringList", "locationName":"CustomerGatewayId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeCustomerGatewaysResult":{ "type":"structure", "members":{ "CustomerGateways":{ "shape":"CustomerGatewayList", "locationName":"customerGatewaySet" } } }, "DescribeDhcpOptionsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "DhcpOptionsIds":{ "shape":"DhcpOptionsIdStringList", "locationName":"DhcpOptionsId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeDhcpOptionsResult":{ "type":"structure", "members":{ "DhcpOptions":{ "shape":"DhcpOptionsList", "locationName":"dhcpOptionsSet" } } }, "DescribeExportTasksRequest":{ "type":"structure", "members":{ "ExportTaskIds":{ "shape":"ExportTaskIdStringList", "locationName":"exportTaskId" } } }, "DescribeExportTasksResult":{ "type":"structure", "members":{ "ExportTasks":{ "shape":"ExportTaskList", "locationName":"exportTaskSet" } } }, "DescribeFlowLogsRequest":{ "type":"structure", "members":{ "FlowLogIds":{ "shape":"ValueStringList", "locationName":"FlowLogId" }, "Filter":{"shape":"FilterList"}, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"} } }, "DescribeFlowLogsResult":{ "type":"structure", "members":{ "FlowLogs":{ "shape":"FlowLogSet", "locationName":"flowLogSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeHostReservationOfferingsRequest":{ "type":"structure", "members":{ "OfferingId":{"shape":"String"}, "MinDuration":{"shape":"Integer"}, "MaxDuration":{"shape":"Integer"}, "Filter":{"shape":"FilterList"}, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribeHostReservationOfferingsResult":{ "type":"structure", "members":{ "OfferingSet":{ "shape":"HostOfferingSet", "locationName":"offeringSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeHostReservationsRequest":{ "type":"structure", "members":{ "HostReservationIdSet":{"shape":"HostReservationIdSet"}, "Filter":{"shape":"FilterList"}, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribeHostReservationsResult":{ "type":"structure", "members":{ "HostReservationSet":{ "shape":"HostReservationSet", "locationName":"hostReservationSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeHostsRequest":{ "type":"structure", "members":{ "HostIds":{ "shape":"RequestHostIdList", "locationName":"hostId" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" }, "Filter":{ "shape":"FilterList", "locationName":"filter" } } }, "DescribeHostsResult":{ "type":"structure", "members":{ "Hosts":{ "shape":"HostList", "locationName":"hostSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeIdFormatRequest":{ "type":"structure", "members":{ "Resource":{"shape":"String"} } }, "DescribeIdFormatResult":{ "type":"structure", "members":{ "Statuses":{ "shape":"IdFormatList", "locationName":"statusSet" } } }, "DescribeIdentityIdFormatRequest":{ "type":"structure", "required":["PrincipalArn"], "members":{ "Resource":{ "shape":"String", "locationName":"resource" }, "PrincipalArn":{ "shape":"String", "locationName":"principalArn" } } }, "DescribeIdentityIdFormatResult":{ "type":"structure", "members":{ "Statuses":{ "shape":"IdFormatList", "locationName":"statusSet" } } }, "DescribeImageAttributeRequest":{ "type":"structure", "required":[ "ImageId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"}, "Attribute":{"shape":"ImageAttributeName"} } }, "DescribeImagesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageIds":{ "shape":"ImageIdStringList", "locationName":"ImageId" }, "Owners":{ "shape":"OwnerStringList", "locationName":"Owner" }, "ExecutableUsers":{ "shape":"ExecutableByStringList", "locationName":"ExecutableBy" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeImagesResult":{ "type":"structure", "members":{ "Images":{ "shape":"ImageList", "locationName":"imagesSet" } } }, "DescribeImportImageTasksRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "ImportTaskIds":{ "shape":"ImportTaskIdList", "locationName":"ImportTaskId" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"}, "Filters":{"shape":"FilterList"} } }, "DescribeImportImageTasksResult":{ "type":"structure", "members":{ "ImportImageTasks":{ "shape":"ImportImageTaskList", "locationName":"importImageTaskSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeImportSnapshotTasksRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "ImportTaskIds":{ "shape":"ImportTaskIdList", "locationName":"ImportTaskId" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"}, "Filters":{"shape":"FilterList"} } }, "DescribeImportSnapshotTasksResult":{ "type":"structure", "members":{ "ImportSnapshotTasks":{ "shape":"ImportSnapshotTaskList", "locationName":"importSnapshotTaskSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeInstanceAttributeRequest":{ "type":"structure", "required":[ "InstanceId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Attribute":{ "shape":"InstanceAttributeName", "locationName":"attribute" } } }, "DescribeInstanceStatusRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"}, "IncludeAllInstances":{ "shape":"Boolean", "locationName":"includeAllInstances" } } }, "DescribeInstanceStatusResult":{ "type":"structure", "members":{ "InstanceStatuses":{ "shape":"InstanceStatusList", "locationName":"instanceStatusSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeInstancesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeInstancesResult":{ "type":"structure", "members":{ "Reservations":{ "shape":"ReservationList", "locationName":"reservationSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeInternetGatewaysRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InternetGatewayIds":{ "shape":"ValueStringList", "locationName":"internetGatewayId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeInternetGatewaysResult":{ "type":"structure", "members":{ "InternetGateways":{ "shape":"InternetGatewayList", "locationName":"internetGatewaySet" } } }, "DescribeKeyPairsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "KeyNames":{ "shape":"KeyNameStringList", "locationName":"KeyName" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeKeyPairsResult":{ "type":"structure", "members":{ "KeyPairs":{ "shape":"KeyPairList", "locationName":"keySet" } } }, "DescribeMovingAddressesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIps":{ "shape":"ValueStringList", "locationName":"publicIp" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "Filters":{ "shape":"FilterList", "locationName":"filter" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeMovingAddressesResult":{ "type":"structure", "members":{ "MovingAddressStatuses":{ "shape":"MovingAddressStatusSet", "locationName":"movingAddressStatusSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeNatGatewaysRequest":{ "type":"structure", "members":{ "NatGatewayIds":{ "shape":"ValueStringList", "locationName":"NatGatewayId" }, "Filter":{"shape":"FilterList"}, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribeNatGatewaysResult":{ "type":"structure", "members":{ "NatGateways":{ "shape":"NatGatewayList", "locationName":"natGatewaySet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeNetworkAclsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclIds":{ "shape":"ValueStringList", "locationName":"NetworkAclId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeNetworkAclsResult":{ "type":"structure", "members":{ "NetworkAcls":{ "shape":"NetworkAclList", "locationName":"networkAclSet" } } }, "DescribeNetworkInterfaceAttributeRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "Attribute":{ "shape":"NetworkInterfaceAttribute", "locationName":"attribute" } } }, "DescribeNetworkInterfaceAttributeResult":{ "type":"structure", "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "Description":{ "shape":"AttributeValue", "locationName":"description" }, "SourceDestCheck":{ "shape":"AttributeBooleanValue", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Attachment":{ "shape":"NetworkInterfaceAttachment", "locationName":"attachment" } } }, "DescribeNetworkInterfacesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceIds":{ "shape":"NetworkInterfaceIdList", "locationName":"NetworkInterfaceId" }, "Filters":{ "shape":"FilterList", "locationName":"filter" } } }, "DescribeNetworkInterfacesResult":{ "type":"structure", "members":{ "NetworkInterfaces":{ "shape":"NetworkInterfaceList", "locationName":"networkInterfaceSet" } } }, "DescribePlacementGroupsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupNames":{ "shape":"PlacementGroupStringList", "locationName":"groupName" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribePlacementGroupsResult":{ "type":"structure", "members":{ "PlacementGroups":{ "shape":"PlacementGroupList", "locationName":"placementGroupSet" } } }, "DescribePrefixListsRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "PrefixListIds":{ "shape":"ValueStringList", "locationName":"PrefixListId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribePrefixListsResult":{ "type":"structure", "members":{ "PrefixLists":{ "shape":"PrefixListSet", "locationName":"prefixListSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeRegionsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RegionNames":{ "shape":"RegionNameStringList", "locationName":"RegionName" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeRegionsResult":{ "type":"structure", "members":{ "Regions":{ "shape":"RegionList", "locationName":"regionInfo" } } }, "DescribeReservedInstancesListingsRequest":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "ReservedInstancesListingId":{ "shape":"String", "locationName":"reservedInstancesListingId" }, "Filters":{ "shape":"FilterList", "locationName":"filters" } } }, "DescribeReservedInstancesListingsResult":{ "type":"structure", "members":{ "ReservedInstancesListings":{ "shape":"ReservedInstancesListingList", "locationName":"reservedInstancesListingsSet" } } }, "DescribeReservedInstancesModificationsRequest":{ "type":"structure", "members":{ "ReservedInstancesModificationIds":{ "shape":"ReservedInstancesModificationIdStringList", "locationName":"ReservedInstancesModificationId" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeReservedInstancesModificationsResult":{ "type":"structure", "members":{ "ReservedInstancesModifications":{ "shape":"ReservedInstancesModificationList", "locationName":"reservedInstancesModificationsSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeReservedInstancesOfferingsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ReservedInstancesOfferingIds":{ "shape":"ReservedInstancesOfferingIdStringList", "locationName":"ReservedInstancesOfferingId" }, "InstanceType":{"shape":"InstanceType"}, "AvailabilityZone":{"shape":"String"}, "ProductDescription":{"shape":"RIProductDescription"}, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" }, "OfferingType":{ "shape":"OfferingTypeValues", "locationName":"offeringType" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" }, "IncludeMarketplace":{"shape":"Boolean"}, "MinDuration":{"shape":"Long"}, "MaxDuration":{"shape":"Long"}, "MaxInstanceCount":{"shape":"Integer"} } }, "DescribeReservedInstancesOfferingsResult":{ "type":"structure", "members":{ "ReservedInstancesOfferings":{ "shape":"ReservedInstancesOfferingList", "locationName":"reservedInstancesOfferingsSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeReservedInstancesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ReservedInstancesIds":{ "shape":"ReservedInstancesIdStringList", "locationName":"ReservedInstancesId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "OfferingType":{ "shape":"OfferingTypeValues", "locationName":"offeringType" } } }, "DescribeReservedInstancesResult":{ "type":"structure", "members":{ "ReservedInstances":{ "shape":"ReservedInstancesList", "locationName":"reservedInstancesSet" } } }, "DescribeRouteTablesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableIds":{ "shape":"ValueStringList", "locationName":"RouteTableId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeRouteTablesResult":{ "type":"structure", "members":{ "RouteTables":{ "shape":"RouteTableList", "locationName":"routeTableSet" } } }, "DescribeScheduledInstanceAvailabilityRequest":{ "type":"structure", "required":[ "Recurrence", "FirstSlotStartTimeRange" ], "members":{ "DryRun":{"shape":"Boolean"}, "Recurrence":{"shape":"ScheduledInstanceRecurrenceRequest"}, "FirstSlotStartTimeRange":{"shape":"SlotDateTimeRangeRequest"}, "MinSlotDurationInHours":{"shape":"Integer"}, "MaxSlotDurationInHours":{"shape":"Integer"}, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"}, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeScheduledInstanceAvailabilityResult":{ "type":"structure", "members":{ "NextToken":{ "shape":"String", "locationName":"nextToken" }, "ScheduledInstanceAvailabilitySet":{ "shape":"ScheduledInstanceAvailabilitySet", "locationName":"scheduledInstanceAvailabilitySet" } } }, "DescribeScheduledInstancesRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "ScheduledInstanceIds":{ "shape":"ScheduledInstanceIdRequestSet", "locationName":"ScheduledInstanceId" }, "SlotStartTimeRange":{"shape":"SlotStartTimeRangeRequest"}, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"}, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeScheduledInstancesResult":{ "type":"structure", "members":{ "NextToken":{ "shape":"String", "locationName":"nextToken" }, "ScheduledInstanceSet":{ "shape":"ScheduledInstanceSet", "locationName":"scheduledInstanceSet" } } }, "DescribeSecurityGroupReferencesRequest":{ "type":"structure", "required":["GroupId"], "members":{ "DryRun":{"shape":"Boolean"}, "GroupId":{"shape":"GroupIds"} } }, "DescribeSecurityGroupReferencesResult":{ "type":"structure", "members":{ "SecurityGroupReferenceSet":{ "shape":"SecurityGroupReferences", "locationName":"securityGroupReferenceSet" } } }, "DescribeSecurityGroupsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupNames":{ "shape":"GroupNameStringList", "locationName":"GroupName" }, "GroupIds":{ "shape":"GroupIdStringList", "locationName":"GroupId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeSecurityGroupsResult":{ "type":"structure", "members":{ "SecurityGroups":{ "shape":"SecurityGroupList", "locationName":"securityGroupInfo" } } }, "DescribeSnapshotAttributeRequest":{ "type":"structure", "required":[ "SnapshotId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotId":{"shape":"String"}, "Attribute":{"shape":"SnapshotAttributeName"} } }, "DescribeSnapshotAttributeResult":{ "type":"structure", "members":{ "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "CreateVolumePermissions":{ "shape":"CreateVolumePermissionList", "locationName":"createVolumePermission" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" } } }, "DescribeSnapshotsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotIds":{ "shape":"SnapshotIdStringList", "locationName":"SnapshotId" }, "OwnerIds":{ "shape":"OwnerStringList", "locationName":"Owner" }, "RestorableByUserIds":{ "shape":"RestorableByStringList", "locationName":"RestorableBy" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"} } }, "DescribeSnapshotsResult":{ "type":"structure", "members":{ "Snapshots":{ "shape":"SnapshotList", "locationName":"snapshotSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotDatafeedSubscriptionRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "DescribeSpotDatafeedSubscriptionResult":{ "type":"structure", "members":{ "SpotDatafeedSubscription":{ "shape":"SpotDatafeedSubscription", "locationName":"spotDatafeedSubscription" } } }, "DescribeSpotFleetInstancesRequest":{ "type":"structure", "required":["SpotFleetRequestId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeSpotFleetInstancesResponse":{ "type":"structure", "required":[ "SpotFleetRequestId", "ActiveInstances" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "ActiveInstances":{ "shape":"ActiveInstanceSet", "locationName":"activeInstanceSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotFleetRequestHistoryRequest":{ "type":"structure", "required":[ "SpotFleetRequestId", "StartTime" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "EventType":{ "shape":"EventType", "locationName":"eventType" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeSpotFleetRequestHistoryResponse":{ "type":"structure", "required":[ "SpotFleetRequestId", "StartTime", "LastEvaluatedTime", "HistoryRecords" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "LastEvaluatedTime":{ "shape":"DateTime", "locationName":"lastEvaluatedTime" }, "HistoryRecords":{ "shape":"HistoryRecords", "locationName":"historyRecordSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotFleetRequestsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestIds":{ "shape":"ValueStringList", "locationName":"spotFleetRequestId" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeSpotFleetRequestsResponse":{ "type":"structure", "required":["SpotFleetRequestConfigs"], "members":{ "SpotFleetRequestConfigs":{ "shape":"SpotFleetRequestConfigSet", "locationName":"spotFleetRequestConfigSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotInstanceRequestsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotInstanceRequestIds":{ "shape":"SpotInstanceRequestIdList", "locationName":"SpotInstanceRequestId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeSpotInstanceRequestsResult":{ "type":"structure", "members":{ "SpotInstanceRequests":{ "shape":"SpotInstanceRequestList", "locationName":"spotInstanceRequestSet" } } }, "DescribeSpotPriceHistoryRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "EndTime":{ "shape":"DateTime", "locationName":"endTime" }, "InstanceTypes":{ "shape":"InstanceTypeList", "locationName":"InstanceType" }, "ProductDescriptions":{ "shape":"ProductDescriptionList", "locationName":"ProductDescription" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotPriceHistoryResult":{ "type":"structure", "members":{ "SpotPriceHistory":{ "shape":"SpotPriceHistoryList", "locationName":"spotPriceHistorySet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeStaleSecurityGroupsRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{"shape":"Boolean"}, "VpcId":{"shape":"String"}, "MaxResults":{"shape":"MaxResults"}, "NextToken":{"shape":"NextToken"} } }, "DescribeStaleSecurityGroupsResult":{ "type":"structure", "members":{ "StaleSecurityGroupSet":{ "shape":"StaleSecurityGroupSet", "locationName":"staleSecurityGroupSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSubnetsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SubnetIds":{ "shape":"SubnetIdStringList", "locationName":"SubnetId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeSubnetsResult":{ "type":"structure", "members":{ "Subnets":{ "shape":"SubnetList", "locationName":"subnetSet" } } }, "DescribeTagsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeTagsResult":{ "type":"structure", "members":{ "Tags":{ "shape":"TagDescriptionList", "locationName":"tagSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVolumeAttributeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "Attribute":{"shape":"VolumeAttributeName"} } }, "DescribeVolumeAttributeResult":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "AutoEnableIO":{ "shape":"AttributeBooleanValue", "locationName":"autoEnableIO" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" } } }, "DescribeVolumeStatusRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeIds":{ "shape":"VolumeIdStringList", "locationName":"VolumeId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"} } }, "DescribeVolumeStatusResult":{ "type":"structure", "members":{ "VolumeStatuses":{ "shape":"VolumeStatusList", "locationName":"volumeStatusSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVolumesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeIds":{ "shape":"VolumeIdStringList", "locationName":"VolumeId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeVolumesResult":{ "type":"structure", "members":{ "Volumes":{ "shape":"VolumeList", "locationName":"volumeSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVpcAttributeRequest":{ "type":"structure", "required":[ "VpcId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{"shape":"String"}, "Attribute":{"shape":"VpcAttributeName"} } }, "DescribeVpcAttributeResult":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "EnableDnsSupport":{ "shape":"AttributeBooleanValue", "locationName":"enableDnsSupport" }, "EnableDnsHostnames":{ "shape":"AttributeBooleanValue", "locationName":"enableDnsHostnames" } } }, "DescribeVpcClassicLinkDnsSupportRequest":{ "type":"structure", "members":{ "VpcIds":{"shape":"VpcClassicLinkIdList"}, "MaxResults":{ "shape":"MaxResults", "locationName":"maxResults" }, "NextToken":{ "shape":"NextToken", "locationName":"nextToken" } } }, "DescribeVpcClassicLinkDnsSupportResult":{ "type":"structure", "members":{ "Vpcs":{ "shape":"ClassicLinkDnsSupportList", "locationName":"vpcs" }, "NextToken":{ "shape":"NextToken", "locationName":"nextToken" } } }, "DescribeVpcClassicLinkRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcIds":{ "shape":"VpcClassicLinkIdList", "locationName":"VpcId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpcClassicLinkResult":{ "type":"structure", "members":{ "Vpcs":{ "shape":"VpcClassicLinkList", "locationName":"vpcSet" } } }, "DescribeVpcEndpointServicesRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribeVpcEndpointServicesResult":{ "type":"structure", "members":{ "ServiceNames":{ "shape":"ValueStringList", "locationName":"serviceNameSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVpcEndpointsRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "VpcEndpointIds":{ "shape":"ValueStringList", "locationName":"VpcEndpointId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribeVpcEndpointsResult":{ "type":"structure", "members":{ "VpcEndpoints":{ "shape":"VpcEndpointSet", "locationName":"vpcEndpointSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVpcPeeringConnectionsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcPeeringConnectionIds":{ "shape":"ValueStringList", "locationName":"VpcPeeringConnectionId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpcPeeringConnectionsResult":{ "type":"structure", "members":{ "VpcPeeringConnections":{ "shape":"VpcPeeringConnectionList", "locationName":"vpcPeeringConnectionSet" } } }, "DescribeVpcsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcIds":{ "shape":"VpcIdStringList", "locationName":"VpcId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpcsResult":{ "type":"structure", "members":{ "Vpcs":{ "shape":"VpcList", "locationName":"vpcSet" } } }, "DescribeVpnConnectionsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnConnectionIds":{ "shape":"VpnConnectionIdStringList", "locationName":"VpnConnectionId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpnConnectionsResult":{ "type":"structure", "members":{ "VpnConnections":{ "shape":"VpnConnectionList", "locationName":"vpnConnectionSet" } } }, "DescribeVpnGatewaysRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnGatewayIds":{ "shape":"VpnGatewayIdStringList", "locationName":"VpnGatewayId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpnGatewaysResult":{ "type":"structure", "members":{ "VpnGateways":{ "shape":"VpnGatewayList", "locationName":"vpnGatewaySet" } } }, "DetachClassicLinkVpcRequest":{ "type":"structure", "required":[ "InstanceId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "DetachClassicLinkVpcResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "DetachInternetGatewayRequest":{ "type":"structure", "required":[ "InternetGatewayId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InternetGatewayId":{ "shape":"String", "locationName":"internetGatewayId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "DetachNetworkInterfaceRequest":{ "type":"structure", "required":["AttachmentId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AttachmentId":{ "shape":"String", "locationName":"attachmentId" }, "Force":{ "shape":"Boolean", "locationName":"force" } } }, "DetachVolumeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "InstanceId":{"shape":"String"}, "Device":{"shape":"String"}, "Force":{"shape":"Boolean"} } }, "DetachVpnGatewayRequest":{ "type":"structure", "required":[ "VpnGatewayId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnGatewayId":{"shape":"String"}, "VpcId":{"shape":"String"} } }, "DeviceType":{ "type":"string", "enum":[ "ebs", "instance-store" ] }, "DhcpConfiguration":{ "type":"structure", "members":{ "Key":{ "shape":"String", "locationName":"key" }, "Values":{ "shape":"DhcpConfigurationValueList", "locationName":"valueSet" } } }, "DhcpConfigurationList":{ "type":"list", "member":{ "shape":"DhcpConfiguration", "locationName":"item" } }, "DhcpConfigurationValueList":{ "type":"list", "member":{ "shape":"AttributeValue", "locationName":"item" } }, "DhcpOptions":{ "type":"structure", "members":{ "DhcpOptionsId":{ "shape":"String", "locationName":"dhcpOptionsId" }, "DhcpConfigurations":{ "shape":"DhcpConfigurationList", "locationName":"dhcpConfigurationSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "DhcpOptionsIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"DhcpOptionsId" } }, "DhcpOptionsList":{ "type":"list", "member":{ "shape":"DhcpOptions", "locationName":"item" } }, "DisableVgwRoutePropagationRequest":{ "type":"structure", "required":[ "RouteTableId", "GatewayId" ], "members":{ "RouteTableId":{"shape":"String"}, "GatewayId":{"shape":"String"} } }, "DisableVpcClassicLinkDnsSupportRequest":{ "type":"structure", "members":{ "VpcId":{"shape":"String"} } }, "DisableVpcClassicLinkDnsSupportResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "DisableVpcClassicLinkRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "DisableVpcClassicLinkResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "DisassociateAddressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIp":{"shape":"String"}, "AssociationId":{"shape":"String"} } }, "DisassociateRouteTableRequest":{ "type":"structure", "required":["AssociationId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AssociationId":{ "shape":"String", "locationName":"associationId" } } }, "DiskImage":{ "type":"structure", "members":{ "Image":{"shape":"DiskImageDetail"}, "Description":{"shape":"String"}, "Volume":{"shape":"VolumeDetail"} } }, "DiskImageDescription":{ "type":"structure", "required":[ "Format", "Size", "ImportManifestUrl" ], "members":{ "Format":{ "shape":"DiskImageFormat", "locationName":"format" }, "Size":{ "shape":"Long", "locationName":"size" }, "ImportManifestUrl":{ "shape":"String", "locationName":"importManifestUrl" }, "Checksum":{ "shape":"String", "locationName":"checksum" } } }, "DiskImageDetail":{ "type":"structure", "required":[ "Format", "Bytes", "ImportManifestUrl" ], "members":{ "Format":{ "shape":"DiskImageFormat", "locationName":"format" }, "Bytes":{ "shape":"Long", "locationName":"bytes" }, "ImportManifestUrl":{ "shape":"String", "locationName":"importManifestUrl" } } }, "DiskImageFormat":{ "type":"string", "enum":[ "VMDK", "RAW", "VHD" ] }, "DiskImageList":{ "type":"list", "member":{"shape":"DiskImage"} }, "DiskImageVolumeDescription":{ "type":"structure", "required":["Id"], "members":{ "Size":{ "shape":"Long", "locationName":"size" }, "Id":{ "shape":"String", "locationName":"id" } } }, "DomainType":{ "type":"string", "enum":[ "vpc", "standard" ] }, "Double":{"type":"double"}, "EbsBlockDevice":{ "type":"structure", "members":{ "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "VolumeSize":{ "shape":"Integer", "locationName":"volumeSize" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" }, "VolumeType":{ "shape":"VolumeType", "locationName":"volumeType" }, "Iops":{ "shape":"Integer", "locationName":"iops" }, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" } } }, "EbsInstanceBlockDevice":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "Status":{ "shape":"AttachmentStatus", "locationName":"status" }, "AttachTime":{ "shape":"DateTime", "locationName":"attachTime" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "EbsInstanceBlockDeviceSpecification":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "EnableVgwRoutePropagationRequest":{ "type":"structure", "required":[ "RouteTableId", "GatewayId" ], "members":{ "RouteTableId":{"shape":"String"}, "GatewayId":{"shape":"String"} } }, "EnableVolumeIORequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{ "shape":"String", "locationName":"volumeId" } } }, "EnableVpcClassicLinkDnsSupportRequest":{ "type":"structure", "members":{ "VpcId":{"shape":"String"} } }, "EnableVpcClassicLinkDnsSupportResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "EnableVpcClassicLinkRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "EnableVpcClassicLinkResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "EventCode":{ "type":"string", "enum":[ "instance-reboot", "system-reboot", "system-maintenance", "instance-retirement", "instance-stop" ] }, "EventInformation":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "EventSubType":{ "shape":"String", "locationName":"eventSubType" }, "EventDescription":{ "shape":"String", "locationName":"eventDescription" } } }, "EventType":{ "type":"string", "enum":[ "instanceChange", "fleetRequestChange", "error" ] }, "ExcessCapacityTerminationPolicy":{ "type":"string", "enum":[ "noTermination", "default" ] }, "ExecutableByStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ExecutableBy" } }, "ExportEnvironment":{ "type":"string", "enum":[ "citrix", "vmware", "microsoft" ] }, "ExportTask":{ "type":"structure", "members":{ "ExportTaskId":{ "shape":"String", "locationName":"exportTaskId" }, "Description":{ "shape":"String", "locationName":"description" }, "State":{ "shape":"ExportTaskState", "locationName":"state" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "InstanceExportDetails":{ "shape":"InstanceExportDetails", "locationName":"instanceExport" }, "ExportToS3Task":{ "shape":"ExportToS3Task", "locationName":"exportToS3" } } }, "ExportTaskIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ExportTaskId" } }, "ExportTaskList":{ "type":"list", "member":{ "shape":"ExportTask", "locationName":"item" } }, "ExportTaskState":{ "type":"string", "enum":[ "active", "cancelling", "cancelled", "completed" ] }, "ExportToS3Task":{ "type":"structure", "members":{ "DiskImageFormat":{ "shape":"DiskImageFormat", "locationName":"diskImageFormat" }, "ContainerFormat":{ "shape":"ContainerFormat", "locationName":"containerFormat" }, "S3Bucket":{ "shape":"String", "locationName":"s3Bucket" }, "S3Key":{ "shape":"String", "locationName":"s3Key" } } }, "ExportToS3TaskSpecification":{ "type":"structure", "members":{ "DiskImageFormat":{ "shape":"DiskImageFormat", "locationName":"diskImageFormat" }, "ContainerFormat":{ "shape":"ContainerFormat", "locationName":"containerFormat" }, "S3Bucket":{ "shape":"String", "locationName":"s3Bucket" }, "S3Prefix":{ "shape":"String", "locationName":"s3Prefix" } } }, "Filter":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "Values":{ "shape":"ValueStringList", "locationName":"Value" } } }, "FilterList":{ "type":"list", "member":{ "shape":"Filter", "locationName":"Filter" } }, "FleetType":{ "type":"string", "enum":[ "request", "maintain" ] }, "Float":{"type":"float"}, "FlowLog":{ "type":"structure", "members":{ "CreationTime":{ "shape":"DateTime", "locationName":"creationTime" }, "FlowLogId":{ "shape":"String", "locationName":"flowLogId" }, "FlowLogStatus":{ "shape":"String", "locationName":"flowLogStatus" }, "ResourceId":{ "shape":"String", "locationName":"resourceId" }, "TrafficType":{ "shape":"TrafficType", "locationName":"trafficType" }, "LogGroupName":{ "shape":"String", "locationName":"logGroupName" }, "DeliverLogsStatus":{ "shape":"String", "locationName":"deliverLogsStatus" }, "DeliverLogsErrorMessage":{ "shape":"String", "locationName":"deliverLogsErrorMessage" }, "DeliverLogsPermissionArn":{ "shape":"String", "locationName":"deliverLogsPermissionArn" } } }, "FlowLogSet":{ "type":"list", "member":{ "shape":"FlowLog", "locationName":"item" } }, "FlowLogsResourceType":{ "type":"string", "enum":[ "VPC", "Subnet", "NetworkInterface" ] }, "GatewayType":{ "type":"string", "enum":["ipsec.1"] }, "GetConsoleOutputRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{"shape":"String"} } }, "GetConsoleOutputResult":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Timestamp":{ "shape":"DateTime", "locationName":"timestamp" }, "Output":{ "shape":"String", "locationName":"output" } } }, "GetConsoleScreenshotRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "DryRun":{"shape":"Boolean"}, "InstanceId":{"shape":"String"}, "WakeUp":{"shape":"Boolean"} } }, "GetConsoleScreenshotResult":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "ImageData":{ "shape":"String", "locationName":"imageData" } } }, "GetHostReservationPurchasePreviewRequest":{ "type":"structure", "required":[ "OfferingId", "HostIdSet" ], "members":{ "OfferingId":{"shape":"String"}, "HostIdSet":{"shape":"RequestHostIdSet"} } }, "GetHostReservationPurchasePreviewResult":{ "type":"structure", "members":{ "Purchase":{ "shape":"PurchaseSet", "locationName":"purchase" }, "TotalUpfrontPrice":{ "shape":"String", "locationName":"totalUpfrontPrice" }, "TotalHourlyPrice":{ "shape":"String", "locationName":"totalHourlyPrice" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" } } }, "GetPasswordDataRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{"shape":"String"} } }, "GetPasswordDataResult":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Timestamp":{ "shape":"DateTime", "locationName":"timestamp" }, "PasswordData":{ "shape":"String", "locationName":"passwordData" } } }, "GroupIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"groupId" } }, "GroupIdentifier":{ "type":"structure", "members":{ "GroupName":{ "shape":"String", "locationName":"groupName" }, "GroupId":{ "shape":"String", "locationName":"groupId" } } }, "GroupIdentifierList":{ "type":"list", "member":{ "shape":"GroupIdentifier", "locationName":"item" } }, "GroupIds":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "GroupNameStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"GroupName" } }, "HistoryRecord":{ "type":"structure", "required":[ "Timestamp", "EventType", "EventInformation" ], "members":{ "Timestamp":{ "shape":"DateTime", "locationName":"timestamp" }, "EventType":{ "shape":"EventType", "locationName":"eventType" }, "EventInformation":{ "shape":"EventInformation", "locationName":"eventInformation" } } }, "HistoryRecords":{ "type":"list", "member":{ "shape":"HistoryRecord", "locationName":"item" } }, "Host":{ "type":"structure", "members":{ "HostId":{ "shape":"String", "locationName":"hostId" }, "AutoPlacement":{ "shape":"AutoPlacement", "locationName":"autoPlacement" }, "HostReservationId":{ "shape":"String", "locationName":"hostReservationId" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "HostProperties":{ "shape":"HostProperties", "locationName":"hostProperties" }, "State":{ "shape":"AllocationState", "locationName":"state" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Instances":{ "shape":"HostInstanceList", "locationName":"instances" }, "AvailableCapacity":{ "shape":"AvailableCapacity", "locationName":"availableCapacity" } } }, "HostInstance":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "InstanceType":{ "shape":"String", "locationName":"instanceType" } } }, "HostInstanceList":{ "type":"list", "member":{ "shape":"HostInstance", "locationName":"item" } }, "HostList":{ "type":"list", "member":{ "shape":"Host", "locationName":"item" } }, "HostOffering":{ "type":"structure", "members":{ "OfferingId":{ "shape":"String", "locationName":"offeringId" }, "InstanceFamily":{ "shape":"String", "locationName":"instanceFamily" }, "PaymentOption":{ "shape":"PaymentOption", "locationName":"paymentOption" }, "UpfrontPrice":{ "shape":"String", "locationName":"upfrontPrice" }, "HourlyPrice":{ "shape":"String", "locationName":"hourlyPrice" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "Duration":{ "shape":"Integer", "locationName":"duration" } } }, "HostOfferingSet":{ "type":"list", "member":{"shape":"HostOffering"} }, "HostProperties":{ "type":"structure", "members":{ "Sockets":{ "shape":"Integer", "locationName":"sockets" }, "Cores":{ "shape":"Integer", "locationName":"cores" }, "TotalVCpus":{ "shape":"Integer", "locationName":"totalVCpus" }, "InstanceType":{ "shape":"String", "locationName":"instanceType" } } }, "HostReservation":{ "type":"structure", "members":{ "HostReservationId":{ "shape":"String", "locationName":"hostReservationId" }, "HostIdSet":{ "shape":"ResponseHostIdSet", "locationName":"hostIdSet" }, "OfferingId":{ "shape":"String", "locationName":"offeringId" }, "InstanceFamily":{ "shape":"String", "locationName":"instanceFamily" }, "PaymentOption":{ "shape":"PaymentOption", "locationName":"paymentOption" }, "HourlyPrice":{ "shape":"String", "locationName":"hourlyPrice" }, "UpfrontPrice":{ "shape":"String", "locationName":"upfrontPrice" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "Count":{ "shape":"Integer", "locationName":"count" }, "Duration":{ "shape":"Integer", "locationName":"duration" }, "End":{ "shape":"DateTime", "locationName":"end" }, "Start":{ "shape":"DateTime", "locationName":"start" }, "State":{ "shape":"ReservationState", "locationName":"state" } } }, "HostReservationIdSet":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "HostReservationSet":{ "type":"list", "member":{"shape":"HostReservation"} }, "HostTenancy":{ "type":"string", "enum":[ "dedicated", "host" ] }, "HypervisorType":{ "type":"string", "enum":[ "ovm", "xen" ] }, "IamInstanceProfile":{ "type":"structure", "members":{ "Arn":{ "shape":"String", "locationName":"arn" }, "Id":{ "shape":"String", "locationName":"id" } } }, "IamInstanceProfileSpecification":{ "type":"structure", "members":{ "Arn":{ "shape":"String", "locationName":"arn" }, "Name":{ "shape":"String", "locationName":"name" } } }, "IcmpTypeCode":{ "type":"structure", "members":{ "Type":{ "shape":"Integer", "locationName":"type" }, "Code":{ "shape":"Integer", "locationName":"code" } } }, "IdFormat":{ "type":"structure", "members":{ "Resource":{ "shape":"String", "locationName":"resource" }, "UseLongIds":{ "shape":"Boolean", "locationName":"useLongIds" }, "Deadline":{ "shape":"DateTime", "locationName":"deadline" } } }, "IdFormatList":{ "type":"list", "member":{ "shape":"IdFormat", "locationName":"item" } }, "Image":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "ImageLocation":{ "shape":"String", "locationName":"imageLocation" }, "State":{ "shape":"ImageState", "locationName":"imageState" }, "OwnerId":{ "shape":"String", "locationName":"imageOwnerId" }, "CreationDate":{ "shape":"String", "locationName":"creationDate" }, "Public":{ "shape":"Boolean", "locationName":"isPublic" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" }, "Architecture":{ "shape":"ArchitectureValues", "locationName":"architecture" }, "ImageType":{ "shape":"ImageTypeValues", "locationName":"imageType" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "Platform":{ "shape":"PlatformValues", "locationName":"platform" }, "SriovNetSupport":{ "shape":"String", "locationName":"sriovNetSupport" }, "EnaSupport":{ "shape":"Boolean", "locationName":"enaSupport" }, "StateReason":{ "shape":"StateReason", "locationName":"stateReason" }, "ImageOwnerAlias":{ "shape":"String", "locationName":"imageOwnerAlias" }, "Name":{ "shape":"String", "locationName":"name" }, "Description":{ "shape":"String", "locationName":"description" }, "RootDeviceType":{ "shape":"DeviceType", "locationName":"rootDeviceType" }, "RootDeviceName":{ "shape":"String", "locationName":"rootDeviceName" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "VirtualizationType":{ "shape":"VirtualizationType", "locationName":"virtualizationType" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "Hypervisor":{ "shape":"HypervisorType", "locationName":"hypervisor" } } }, "ImageAttribute":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "LaunchPermissions":{ "shape":"LaunchPermissionList", "locationName":"launchPermission" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" }, "KernelId":{ "shape":"AttributeValue", "locationName":"kernel" }, "RamdiskId":{ "shape":"AttributeValue", "locationName":"ramdisk" }, "Description":{ "shape":"AttributeValue", "locationName":"description" }, "SriovNetSupport":{ "shape":"AttributeValue", "locationName":"sriovNetSupport" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" } } }, "ImageAttributeName":{ "type":"string", "enum":[ "description", "kernel", "ramdisk", "launchPermission", "productCodes", "blockDeviceMapping", "sriovNetSupport" ] }, "ImageDiskContainer":{ "type":"structure", "members":{ "Description":{"shape":"String"}, "Format":{"shape":"String"}, "Url":{"shape":"String"}, "UserBucket":{"shape":"UserBucket"}, "DeviceName":{"shape":"String"}, "SnapshotId":{"shape":"String"} } }, "ImageDiskContainerList":{ "type":"list", "member":{ "shape":"ImageDiskContainer", "locationName":"item" } }, "ImageIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ImageId" } }, "ImageList":{ "type":"list", "member":{ "shape":"Image", "locationName":"item" } }, "ImageState":{ "type":"string", "enum":[ "pending", "available", "invalid", "deregistered", "transient", "failed", "error" ] }, "ImageTypeValues":{ "type":"string", "enum":[ "machine", "kernel", "ramdisk" ] }, "ImportImageRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "Description":{"shape":"String"}, "DiskContainers":{ "shape":"ImageDiskContainerList", "locationName":"DiskContainer" }, "LicenseType":{"shape":"String"}, "Hypervisor":{"shape":"String"}, "Architecture":{"shape":"String"}, "Platform":{"shape":"String"}, "ClientData":{"shape":"ClientData"}, "ClientToken":{"shape":"String"}, "RoleName":{"shape":"String"} } }, "ImportImageResult":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "Architecture":{ "shape":"String", "locationName":"architecture" }, "LicenseType":{ "shape":"String", "locationName":"licenseType" }, "Platform":{ "shape":"String", "locationName":"platform" }, "Hypervisor":{ "shape":"String", "locationName":"hypervisor" }, "Description":{ "shape":"String", "locationName":"description" }, "SnapshotDetails":{ "shape":"SnapshotDetailList", "locationName":"snapshotDetailSet" }, "ImageId":{ "shape":"String", "locationName":"imageId" }, "Progress":{ "shape":"String", "locationName":"progress" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Status":{ "shape":"String", "locationName":"status" } } }, "ImportImageTask":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "Architecture":{ "shape":"String", "locationName":"architecture" }, "LicenseType":{ "shape":"String", "locationName":"licenseType" }, "Platform":{ "shape":"String", "locationName":"platform" }, "Hypervisor":{ "shape":"String", "locationName":"hypervisor" }, "Description":{ "shape":"String", "locationName":"description" }, "SnapshotDetails":{ "shape":"SnapshotDetailList", "locationName":"snapshotDetailSet" }, "ImageId":{ "shape":"String", "locationName":"imageId" }, "Progress":{ "shape":"String", "locationName":"progress" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Status":{ "shape":"String", "locationName":"status" } } }, "ImportImageTaskList":{ "type":"list", "member":{ "shape":"ImportImageTask", "locationName":"item" } }, "ImportInstanceLaunchSpecification":{ "type":"structure", "members":{ "Architecture":{ "shape":"ArchitectureValues", "locationName":"architecture" }, "GroupNames":{ "shape":"SecurityGroupStringList", "locationName":"GroupName" }, "GroupIds":{ "shape":"SecurityGroupIdStringList", "locationName":"GroupId" }, "AdditionalInfo":{ "shape":"String", "locationName":"additionalInfo" }, "UserData":{ "shape":"UserData", "locationName":"userData" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "Placement":{ "shape":"Placement", "locationName":"placement" }, "Monitoring":{ "shape":"Boolean", "locationName":"monitoring" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "InstanceInitiatedShutdownBehavior":{ "shape":"ShutdownBehavior", "locationName":"instanceInitiatedShutdownBehavior" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" } } }, "ImportInstanceRequest":{ "type":"structure", "required":["Platform"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Description":{ "shape":"String", "locationName":"description" }, "LaunchSpecification":{ "shape":"ImportInstanceLaunchSpecification", "locationName":"launchSpecification" }, "DiskImages":{ "shape":"DiskImageList", "locationName":"diskImage" }, "Platform":{ "shape":"PlatformValues", "locationName":"platform" } } }, "ImportInstanceResult":{ "type":"structure", "members":{ "ConversionTask":{ "shape":"ConversionTask", "locationName":"conversionTask" } } }, "ImportInstanceTaskDetails":{ "type":"structure", "required":["Volumes"], "members":{ "Volumes":{ "shape":"ImportInstanceVolumeDetailSet", "locationName":"volumes" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Platform":{ "shape":"PlatformValues", "locationName":"platform" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ImportInstanceVolumeDetailItem":{ "type":"structure", "required":[ "BytesConverted", "AvailabilityZone", "Image", "Volume", "Status" ], "members":{ "BytesConverted":{ "shape":"Long", "locationName":"bytesConverted" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Image":{ "shape":"DiskImageDescription", "locationName":"image" }, "Volume":{ "shape":"DiskImageVolumeDescription", "locationName":"volume" }, "Status":{ "shape":"String", "locationName":"status" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ImportInstanceVolumeDetailSet":{ "type":"list", "member":{ "shape":"ImportInstanceVolumeDetailItem", "locationName":"item" } }, "ImportKeyPairRequest":{ "type":"structure", "required":[ "KeyName", "PublicKeyMaterial" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "PublicKeyMaterial":{ "shape":"Blob", "locationName":"publicKeyMaterial" } } }, "ImportKeyPairResult":{ "type":"structure", "members":{ "KeyName":{ "shape":"String", "locationName":"keyName" }, "KeyFingerprint":{ "shape":"String", "locationName":"keyFingerprint" } } }, "ImportSnapshotRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "Description":{"shape":"String"}, "DiskContainer":{"shape":"SnapshotDiskContainer"}, "ClientData":{"shape":"ClientData"}, "ClientToken":{"shape":"String"}, "RoleName":{"shape":"String"} } }, "ImportSnapshotResult":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "SnapshotTaskDetail":{ "shape":"SnapshotTaskDetail", "locationName":"snapshotTaskDetail" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ImportSnapshotTask":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "SnapshotTaskDetail":{ "shape":"SnapshotTaskDetail", "locationName":"snapshotTaskDetail" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ImportSnapshotTaskList":{ "type":"list", "member":{ "shape":"ImportSnapshotTask", "locationName":"item" } }, "ImportTaskIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"ImportTaskId" } }, "ImportVolumeRequest":{ "type":"structure", "required":[ "AvailabilityZone", "Image", "Volume" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Image":{ "shape":"DiskImageDetail", "locationName":"image" }, "Description":{ "shape":"String", "locationName":"description" }, "Volume":{ "shape":"VolumeDetail", "locationName":"volume" } } }, "ImportVolumeResult":{ "type":"structure", "members":{ "ConversionTask":{ "shape":"ConversionTask", "locationName":"conversionTask" } } }, "ImportVolumeTaskDetails":{ "type":"structure", "required":[ "BytesConverted", "AvailabilityZone", "Image", "Volume" ], "members":{ "BytesConverted":{ "shape":"Long", "locationName":"bytesConverted" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Description":{ "shape":"String", "locationName":"description" }, "Image":{ "shape":"DiskImageDescription", "locationName":"image" }, "Volume":{ "shape":"DiskImageVolumeDescription", "locationName":"volume" } } }, "Instance":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "ImageId":{ "shape":"String", "locationName":"imageId" }, "State":{ "shape":"InstanceState", "locationName":"instanceState" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "PublicDnsName":{ "shape":"String", "locationName":"dnsName" }, "StateTransitionReason":{ "shape":"String", "locationName":"reason" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "AmiLaunchIndex":{ "shape":"Integer", "locationName":"amiLaunchIndex" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "LaunchTime":{ "shape":"DateTime", "locationName":"launchTime" }, "Placement":{ "shape":"Placement", "locationName":"placement" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "Platform":{ "shape":"PlatformValues", "locationName":"platform" }, "Monitoring":{ "shape":"Monitoring", "locationName":"monitoring" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PublicIpAddress":{ "shape":"String", "locationName":"ipAddress" }, "StateReason":{ "shape":"StateReason", "locationName":"stateReason" }, "Architecture":{ "shape":"ArchitectureValues", "locationName":"architecture" }, "RootDeviceType":{ "shape":"DeviceType", "locationName":"rootDeviceType" }, "RootDeviceName":{ "shape":"String", "locationName":"rootDeviceName" }, "BlockDeviceMappings":{ "shape":"InstanceBlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "VirtualizationType":{ "shape":"VirtualizationType", "locationName":"virtualizationType" }, "InstanceLifecycle":{ "shape":"InstanceLifecycleType", "locationName":"instanceLifecycle" }, "SpotInstanceRequestId":{ "shape":"String", "locationName":"spotInstanceRequestId" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "SecurityGroups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "SourceDestCheck":{ "shape":"Boolean", "locationName":"sourceDestCheck" }, "Hypervisor":{ "shape":"HypervisorType", "locationName":"hypervisor" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceList", "locationName":"networkInterfaceSet" }, "IamInstanceProfile":{ "shape":"IamInstanceProfile", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" }, "SriovNetSupport":{ "shape":"String", "locationName":"sriovNetSupport" }, "EnaSupport":{ "shape":"Boolean", "locationName":"enaSupport" } } }, "InstanceAttribute":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "InstanceType":{ "shape":"AttributeValue", "locationName":"instanceType" }, "KernelId":{ "shape":"AttributeValue", "locationName":"kernel" }, "RamdiskId":{ "shape":"AttributeValue", "locationName":"ramdisk" }, "UserData":{ "shape":"AttributeValue", "locationName":"userData" }, "DisableApiTermination":{ "shape":"AttributeBooleanValue", "locationName":"disableApiTermination" }, "InstanceInitiatedShutdownBehavior":{ "shape":"AttributeValue", "locationName":"instanceInitiatedShutdownBehavior" }, "RootDeviceName":{ "shape":"AttributeValue", "locationName":"rootDeviceName" }, "BlockDeviceMappings":{ "shape":"InstanceBlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" }, "EbsOptimized":{ "shape":"AttributeBooleanValue", "locationName":"ebsOptimized" }, "SriovNetSupport":{ "shape":"AttributeValue", "locationName":"sriovNetSupport" }, "EnaSupport":{ "shape":"AttributeBooleanValue", "locationName":"enaSupport" }, "SourceDestCheck":{ "shape":"AttributeBooleanValue", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" } } }, "InstanceAttributeName":{ "type":"string", "enum":[ "instanceType", "kernel", "ramdisk", "userData", "disableApiTermination", "instanceInitiatedShutdownBehavior", "rootDeviceName", "blockDeviceMapping", "productCodes", "sourceDestCheck", "groupSet", "ebsOptimized", "sriovNetSupport", "enaSupport" ] }, "InstanceBlockDeviceMapping":{ "type":"structure", "members":{ "DeviceName":{ "shape":"String", "locationName":"deviceName" }, "Ebs":{ "shape":"EbsInstanceBlockDevice", "locationName":"ebs" } } }, "InstanceBlockDeviceMappingList":{ "type":"list", "member":{ "shape":"InstanceBlockDeviceMapping", "locationName":"item" } }, "InstanceBlockDeviceMappingSpecification":{ "type":"structure", "members":{ "DeviceName":{ "shape":"String", "locationName":"deviceName" }, "Ebs":{ "shape":"EbsInstanceBlockDeviceSpecification", "locationName":"ebs" }, "VirtualName":{ "shape":"String", "locationName":"virtualName" }, "NoDevice":{ "shape":"String", "locationName":"noDevice" } } }, "InstanceBlockDeviceMappingSpecificationList":{ "type":"list", "member":{ "shape":"InstanceBlockDeviceMappingSpecification", "locationName":"item" } }, "InstanceCapacity":{ "type":"structure", "members":{ "InstanceType":{ "shape":"String", "locationName":"instanceType" }, "AvailableCapacity":{ "shape":"Integer", "locationName":"availableCapacity" }, "TotalCapacity":{ "shape":"Integer", "locationName":"totalCapacity" } } }, "InstanceCount":{ "type":"structure", "members":{ "State":{ "shape":"ListingState", "locationName":"state" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" } } }, "InstanceCountList":{ "type":"list", "member":{ "shape":"InstanceCount", "locationName":"item" } }, "InstanceExportDetails":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "TargetEnvironment":{ "shape":"ExportEnvironment", "locationName":"targetEnvironment" } } }, "InstanceIdSet":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "InstanceIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"InstanceId" } }, "InstanceLifecycleType":{ "type":"string", "enum":[ "spot", "scheduled" ] }, "InstanceList":{ "type":"list", "member":{ "shape":"Instance", "locationName":"item" } }, "InstanceMonitoring":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Monitoring":{ "shape":"Monitoring", "locationName":"monitoring" } } }, "InstanceMonitoringList":{ "type":"list", "member":{ "shape":"InstanceMonitoring", "locationName":"item" } }, "InstanceNetworkInterface":{ "type":"structure", "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Description":{ "shape":"String", "locationName":"description" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "Status":{ "shape":"NetworkInterfaceStatus", "locationName":"status" }, "MacAddress":{ "shape":"String", "locationName":"macAddress" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "SourceDestCheck":{ "shape":"Boolean", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Attachment":{ "shape":"InstanceNetworkInterfaceAttachment", "locationName":"attachment" }, "Association":{ "shape":"InstanceNetworkInterfaceAssociation", "locationName":"association" }, "PrivateIpAddresses":{ "shape":"InstancePrivateIpAddressList", "locationName":"privateIpAddressesSet" } } }, "InstanceNetworkInterfaceAssociation":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "PublicDnsName":{ "shape":"String", "locationName":"publicDnsName" }, "IpOwnerId":{ "shape":"String", "locationName":"ipOwnerId" } } }, "InstanceNetworkInterfaceAttachment":{ "type":"structure", "members":{ "AttachmentId":{ "shape":"String", "locationName":"attachmentId" }, "DeviceIndex":{ "shape":"Integer", "locationName":"deviceIndex" }, "Status":{ "shape":"AttachmentStatus", "locationName":"status" }, "AttachTime":{ "shape":"DateTime", "locationName":"attachTime" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "InstanceNetworkInterfaceList":{ "type":"list", "member":{ "shape":"InstanceNetworkInterface", "locationName":"item" } }, "InstanceNetworkInterfaceSpecification":{ "type":"structure", "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "DeviceIndex":{ "shape":"Integer", "locationName":"deviceIndex" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "Description":{ "shape":"String", "locationName":"description" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "Groups":{ "shape":"SecurityGroupIdStringList", "locationName":"SecurityGroupId" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" }, "PrivateIpAddresses":{ "shape":"PrivateIpAddressSpecificationList", "locationName":"privateIpAddressesSet", "queryName":"PrivateIpAddresses" }, "SecondaryPrivateIpAddressCount":{ "shape":"Integer", "locationName":"secondaryPrivateIpAddressCount" }, "AssociatePublicIpAddress":{ "shape":"Boolean", "locationName":"associatePublicIpAddress" } } }, "InstanceNetworkInterfaceSpecificationList":{ "type":"list", "member":{ "shape":"InstanceNetworkInterfaceSpecification", "locationName":"item" } }, "InstancePrivateIpAddress":{ "type":"structure", "members":{ "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "Primary":{ "shape":"Boolean", "locationName":"primary" }, "Association":{ "shape":"InstanceNetworkInterfaceAssociation", "locationName":"association" } } }, "InstancePrivateIpAddressList":{ "type":"list", "member":{ "shape":"InstancePrivateIpAddress", "locationName":"item" } }, "InstanceState":{ "type":"structure", "members":{ "Code":{ "shape":"Integer", "locationName":"code" }, "Name":{ "shape":"InstanceStateName", "locationName":"name" } } }, "InstanceStateChange":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "CurrentState":{ "shape":"InstanceState", "locationName":"currentState" }, "PreviousState":{ "shape":"InstanceState", "locationName":"previousState" } } }, "InstanceStateChangeList":{ "type":"list", "member":{ "shape":"InstanceStateChange", "locationName":"item" } }, "InstanceStateName":{ "type":"string", "enum":[ "pending", "running", "shutting-down", "terminated", "stopping", "stopped" ] }, "InstanceStatus":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Events":{ "shape":"InstanceStatusEventList", "locationName":"eventsSet" }, "InstanceState":{ "shape":"InstanceState", "locationName":"instanceState" }, "SystemStatus":{ "shape":"InstanceStatusSummary", "locationName":"systemStatus" }, "InstanceStatus":{ "shape":"InstanceStatusSummary", "locationName":"instanceStatus" } } }, "InstanceStatusDetails":{ "type":"structure", "members":{ "Name":{ "shape":"StatusName", "locationName":"name" }, "Status":{ "shape":"StatusType", "locationName":"status" }, "ImpairedSince":{ "shape":"DateTime", "locationName":"impairedSince" } } }, "InstanceStatusDetailsList":{ "type":"list", "member":{ "shape":"InstanceStatusDetails", "locationName":"item" } }, "InstanceStatusEvent":{ "type":"structure", "members":{ "Code":{ "shape":"EventCode", "locationName":"code" }, "Description":{ "shape":"String", "locationName":"description" }, "NotBefore":{ "shape":"DateTime", "locationName":"notBefore" }, "NotAfter":{ "shape":"DateTime", "locationName":"notAfter" } } }, "InstanceStatusEventList":{ "type":"list", "member":{ "shape":"InstanceStatusEvent", "locationName":"item" } }, "InstanceStatusList":{ "type":"list", "member":{ "shape":"InstanceStatus", "locationName":"item" } }, "InstanceStatusSummary":{ "type":"structure", "members":{ "Status":{ "shape":"SummaryStatus", "locationName":"status" }, "Details":{ "shape":"InstanceStatusDetailsList", "locationName":"details" } } }, "InstanceType":{ "type":"string", "enum":[ "t1.micro", "t2.nano", "t2.micro", "t2.small", "t2.medium", "t2.large", "m1.small", "m1.medium", "m1.large", "m1.xlarge", "m3.medium", "m3.large", "m3.xlarge", "m3.2xlarge", "m4.large", "m4.xlarge", "m4.2xlarge", "m4.4xlarge", "m4.10xlarge", "m2.xlarge", "m2.2xlarge", "m2.4xlarge", "cr1.8xlarge", "r3.large", "r3.xlarge", "r3.2xlarge", "r3.4xlarge", "r3.8xlarge", "x1.4xlarge", "x1.8xlarge", "x1.16xlarge", "x1.32xlarge", "i2.xlarge", "i2.2xlarge", "i2.4xlarge", "i2.8xlarge", "hi1.4xlarge", "hs1.8xlarge", "c1.medium", "c1.xlarge", "c3.large", "c3.xlarge", "c3.2xlarge", "c3.4xlarge", "c3.8xlarge", "c4.large", "c4.xlarge", "c4.2xlarge", "c4.4xlarge", "c4.8xlarge", "cc1.4xlarge", "cc2.8xlarge", "g2.2xlarge", "g2.8xlarge", "cg1.4xlarge", "d2.xlarge", "d2.2xlarge", "d2.4xlarge", "d2.8xlarge" ] }, "InstanceTypeList":{ "type":"list", "member":{"shape":"InstanceType"} }, "Integer":{"type":"integer"}, "InternetGateway":{ "type":"structure", "members":{ "InternetGatewayId":{ "shape":"String", "locationName":"internetGatewayId" }, "Attachments":{ "shape":"InternetGatewayAttachmentList", "locationName":"attachmentSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "InternetGatewayAttachment":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "State":{ "shape":"AttachmentStatus", "locationName":"state" } } }, "InternetGatewayAttachmentList":{ "type":"list", "member":{ "shape":"InternetGatewayAttachment", "locationName":"item" } }, "InternetGatewayList":{ "type":"list", "member":{ "shape":"InternetGateway", "locationName":"item" } }, "IpPermission":{ "type":"structure", "members":{ "IpProtocol":{ "shape":"String", "locationName":"ipProtocol" }, "FromPort":{ "shape":"Integer", "locationName":"fromPort" }, "ToPort":{ "shape":"Integer", "locationName":"toPort" }, "UserIdGroupPairs":{ "shape":"UserIdGroupPairList", "locationName":"groups" }, "IpRanges":{ "shape":"IpRangeList", "locationName":"ipRanges" }, "PrefixListIds":{ "shape":"PrefixListIdList", "locationName":"prefixListIds" } } }, "IpPermissionList":{ "type":"list", "member":{ "shape":"IpPermission", "locationName":"item" } }, "IpRange":{ "type":"structure", "members":{ "CidrIp":{ "shape":"String", "locationName":"cidrIp" } } }, "IpRangeList":{ "type":"list", "member":{ "shape":"IpRange", "locationName":"item" } }, "IpRanges":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "KeyNameStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"KeyName" } }, "KeyPair":{ "type":"structure", "members":{ "KeyName":{ "shape":"String", "locationName":"keyName" }, "KeyFingerprint":{ "shape":"String", "locationName":"keyFingerprint" }, "KeyMaterial":{ "shape":"String", "locationName":"keyMaterial" } } }, "KeyPairInfo":{ "type":"structure", "members":{ "KeyName":{ "shape":"String", "locationName":"keyName" }, "KeyFingerprint":{ "shape":"String", "locationName":"keyFingerprint" } } }, "KeyPairList":{ "type":"list", "member":{ "shape":"KeyPairInfo", "locationName":"item" } }, "LaunchPermission":{ "type":"structure", "members":{ "UserId":{ "shape":"String", "locationName":"userId" }, "Group":{ "shape":"PermissionGroup", "locationName":"group" } } }, "LaunchPermissionList":{ "type":"list", "member":{ "shape":"LaunchPermission", "locationName":"item" } }, "LaunchPermissionModifications":{ "type":"structure", "members":{ "Add":{"shape":"LaunchPermissionList"}, "Remove":{"shape":"LaunchPermissionList"} } }, "LaunchSpecification":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "SecurityGroups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "UserData":{ "shape":"String", "locationName":"userData" }, "AddressingType":{ "shape":"String", "locationName":"addressingType" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "Placement":{ "shape":"SpotPlacement", "locationName":"placement" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceSpecificationList", "locationName":"networkInterfaceSet" }, "IamInstanceProfile":{ "shape":"IamInstanceProfileSpecification", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" }, "Monitoring":{ "shape":"RunInstancesMonitoringEnabled", "locationName":"monitoring" } } }, "LaunchSpecsList":{ "type":"list", "member":{ "shape":"SpotFleetLaunchSpecification", "locationName":"item" }, "min":1 }, "ListingState":{ "type":"string", "enum":[ "available", "sold", "cancelled", "pending" ] }, "ListingStatus":{ "type":"string", "enum":[ "active", "pending", "cancelled", "closed" ] }, "Long":{"type":"long"}, "MaxResults":{ "type":"integer", "max":255, "min":5 }, "ModifyHostsRequest":{ "type":"structure", "required":[ "HostIds", "AutoPlacement" ], "members":{ "HostIds":{ "shape":"RequestHostIdList", "locationName":"hostId" }, "AutoPlacement":{ "shape":"AutoPlacement", "locationName":"autoPlacement" } } }, "ModifyHostsResult":{ "type":"structure", "members":{ "Successful":{ "shape":"ResponseHostIdList", "locationName":"successful" }, "Unsuccessful":{ "shape":"UnsuccessfulItemList", "locationName":"unsuccessful" } } }, "ModifyIdFormatRequest":{ "type":"structure", "required":[ "Resource", "UseLongIds" ], "members":{ "Resource":{"shape":"String"}, "UseLongIds":{"shape":"Boolean"} } }, "ModifyIdentityIdFormatRequest":{ "type":"structure", "required":[ "Resource", "UseLongIds", "PrincipalArn" ], "members":{ "Resource":{ "shape":"String", "locationName":"resource" }, "UseLongIds":{ "shape":"Boolean", "locationName":"useLongIds" }, "PrincipalArn":{ "shape":"String", "locationName":"principalArn" } } }, "ModifyImageAttributeRequest":{ "type":"structure", "required":["ImageId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"}, "Attribute":{"shape":"String"}, "OperationType":{"shape":"OperationType"}, "UserIds":{ "shape":"UserIdStringList", "locationName":"UserId" }, "UserGroups":{ "shape":"UserGroupStringList", "locationName":"UserGroup" }, "ProductCodes":{ "shape":"ProductCodeStringList", "locationName":"ProductCode" }, "Value":{"shape":"String"}, "LaunchPermission":{"shape":"LaunchPermissionModifications"}, "Description":{"shape":"AttributeValue"} } }, "ModifyInstanceAttributeRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Attribute":{ "shape":"InstanceAttributeName", "locationName":"attribute" }, "Value":{ "shape":"String", "locationName":"value" }, "BlockDeviceMappings":{ "shape":"InstanceBlockDeviceMappingSpecificationList", "locationName":"blockDeviceMapping" }, "SourceDestCheck":{"shape":"AttributeBooleanValue"}, "DisableApiTermination":{ "shape":"AttributeBooleanValue", "locationName":"disableApiTermination" }, "InstanceType":{ "shape":"AttributeValue", "locationName":"instanceType" }, "Kernel":{ "shape":"AttributeValue", "locationName":"kernel" }, "Ramdisk":{ "shape":"AttributeValue", "locationName":"ramdisk" }, "UserData":{ "shape":"BlobAttributeValue", "locationName":"userData" }, "InstanceInitiatedShutdownBehavior":{ "shape":"AttributeValue", "locationName":"instanceInitiatedShutdownBehavior" }, "Groups":{ "shape":"GroupIdStringList", "locationName":"GroupId" }, "EbsOptimized":{ "shape":"AttributeBooleanValue", "locationName":"ebsOptimized" }, "SriovNetSupport":{ "shape":"AttributeValue", "locationName":"sriovNetSupport" }, "EnaSupport":{ "shape":"AttributeBooleanValue", "locationName":"enaSupport" } } }, "ModifyInstancePlacementRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Tenancy":{ "shape":"HostTenancy", "locationName":"tenancy" }, "Affinity":{ "shape":"Affinity", "locationName":"affinity" }, "HostId":{ "shape":"String", "locationName":"hostId" } } }, "ModifyInstancePlacementResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "ModifyNetworkInterfaceAttributeRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "Description":{ "shape":"AttributeValue", "locationName":"description" }, "SourceDestCheck":{ "shape":"AttributeBooleanValue", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"SecurityGroupIdStringList", "locationName":"SecurityGroupId" }, "Attachment":{ "shape":"NetworkInterfaceAttachmentChanges", "locationName":"attachment" } } }, "ModifyReservedInstancesRequest":{ "type":"structure", "required":[ "ReservedInstancesIds", "TargetConfigurations" ], "members":{ "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "ReservedInstancesIds":{ "shape":"ReservedInstancesIdStringList", "locationName":"ReservedInstancesId" }, "TargetConfigurations":{ "shape":"ReservedInstancesConfigurationList", "locationName":"ReservedInstancesConfigurationSetItemType" } } }, "ModifyReservedInstancesResult":{ "type":"structure", "members":{ "ReservedInstancesModificationId":{ "shape":"String", "locationName":"reservedInstancesModificationId" } } }, "ModifySnapshotAttributeRequest":{ "type":"structure", "required":["SnapshotId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotId":{"shape":"String"}, "Attribute":{"shape":"SnapshotAttributeName"}, "OperationType":{"shape":"OperationType"}, "UserIds":{ "shape":"UserIdStringList", "locationName":"UserId" }, "GroupNames":{ "shape":"GroupNameStringList", "locationName":"UserGroup" }, "CreateVolumePermission":{"shape":"CreateVolumePermissionModifications"} } }, "ModifySpotFleetRequestRequest":{ "type":"structure", "required":["SpotFleetRequestId"], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "TargetCapacity":{ "shape":"Integer", "locationName":"targetCapacity" }, "ExcessCapacityTerminationPolicy":{ "shape":"ExcessCapacityTerminationPolicy", "locationName":"excessCapacityTerminationPolicy" } } }, "ModifySpotFleetRequestResponse":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "ModifySubnetAttributeRequest":{ "type":"structure", "required":["SubnetId"], "members":{ "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "MapPublicIpOnLaunch":{"shape":"AttributeBooleanValue"} } }, "ModifyVolumeAttributeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "AutoEnableIO":{"shape":"AttributeBooleanValue"} } }, "ModifyVpcAttributeRequest":{ "type":"structure", "required":["VpcId"], "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "EnableDnsSupport":{"shape":"AttributeBooleanValue"}, "EnableDnsHostnames":{"shape":"AttributeBooleanValue"} } }, "ModifyVpcEndpointRequest":{ "type":"structure", "required":["VpcEndpointId"], "members":{ "DryRun":{"shape":"Boolean"}, "VpcEndpointId":{"shape":"String"}, "ResetPolicy":{"shape":"Boolean"}, "PolicyDocument":{"shape":"String"}, "AddRouteTableIds":{ "shape":"ValueStringList", "locationName":"AddRouteTableId" }, "RemoveRouteTableIds":{ "shape":"ValueStringList", "locationName":"RemoveRouteTableId" } } }, "ModifyVpcEndpointResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "ModifyVpcPeeringConnectionOptionsRequest":{ "type":"structure", "required":["VpcPeeringConnectionId"], "members":{ "DryRun":{"shape":"Boolean"}, "VpcPeeringConnectionId":{"shape":"String"}, "RequesterPeeringConnectionOptions":{"shape":"PeeringConnectionOptionsRequest"}, "AccepterPeeringConnectionOptions":{"shape":"PeeringConnectionOptionsRequest"} } }, "ModifyVpcPeeringConnectionOptionsResult":{ "type":"structure", "members":{ "RequesterPeeringConnectionOptions":{ "shape":"PeeringConnectionOptions", "locationName":"requesterPeeringConnectionOptions" }, "AccepterPeeringConnectionOptions":{ "shape":"PeeringConnectionOptions", "locationName":"accepterPeeringConnectionOptions" } } }, "MonitorInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" } } }, "MonitorInstancesResult":{ "type":"structure", "members":{ "InstanceMonitorings":{ "shape":"InstanceMonitoringList", "locationName":"instancesSet" } } }, "Monitoring":{ "type":"structure", "members":{ "State":{ "shape":"MonitoringState", "locationName":"state" } } }, "MonitoringState":{ "type":"string", "enum":[ "disabled", "disabling", "enabled", "pending" ] }, "MoveAddressToVpcRequest":{ "type":"structure", "required":["PublicIp"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIp":{ "shape":"String", "locationName":"publicIp" } } }, "MoveAddressToVpcResult":{ "type":"structure", "members":{ "AllocationId":{ "shape":"String", "locationName":"allocationId" }, "Status":{ "shape":"Status", "locationName":"status" } } }, "MoveStatus":{ "type":"string", "enum":[ "movingToVpc", "restoringToClassic" ] }, "MovingAddressStatus":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "MoveStatus":{ "shape":"MoveStatus", "locationName":"moveStatus" } } }, "MovingAddressStatusSet":{ "type":"list", "member":{ "shape":"MovingAddressStatus", "locationName":"item" } }, "NatGateway":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "NatGatewayId":{ "shape":"String", "locationName":"natGatewayId" }, "CreateTime":{ "shape":"DateTime", "locationName":"createTime" }, "DeleteTime":{ "shape":"DateTime", "locationName":"deleteTime" }, "NatGatewayAddresses":{ "shape":"NatGatewayAddressList", "locationName":"natGatewayAddressSet" }, "State":{ "shape":"NatGatewayState", "locationName":"state" }, "FailureCode":{ "shape":"String", "locationName":"failureCode" }, "FailureMessage":{ "shape":"String", "locationName":"failureMessage" }, "ProvisionedBandwidth":{ "shape":"ProvisionedBandwidth", "locationName":"provisionedBandwidth" } } }, "NatGatewayAddress":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "AllocationId":{ "shape":"String", "locationName":"allocationId" }, "PrivateIp":{ "shape":"String", "locationName":"privateIp" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" } } }, "NatGatewayAddressList":{ "type":"list", "member":{ "shape":"NatGatewayAddress", "locationName":"item" } }, "NatGatewayList":{ "type":"list", "member":{ "shape":"NatGateway", "locationName":"item" } }, "NatGatewayState":{ "type":"string", "enum":[ "pending", "failed", "available", "deleting", "deleted" ] }, "NetworkAcl":{ "type":"structure", "members":{ "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "IsDefault":{ "shape":"Boolean", "locationName":"default" }, "Entries":{ "shape":"NetworkAclEntryList", "locationName":"entrySet" }, "Associations":{ "shape":"NetworkAclAssociationList", "locationName":"associationSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "NetworkAclAssociation":{ "type":"structure", "members":{ "NetworkAclAssociationId":{ "shape":"String", "locationName":"networkAclAssociationId" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" } } }, "NetworkAclAssociationList":{ "type":"list", "member":{ "shape":"NetworkAclAssociation", "locationName":"item" } }, "NetworkAclEntry":{ "type":"structure", "members":{ "RuleNumber":{ "shape":"Integer", "locationName":"ruleNumber" }, "Protocol":{ "shape":"String", "locationName":"protocol" }, "RuleAction":{ "shape":"RuleAction", "locationName":"ruleAction" }, "Egress":{ "shape":"Boolean", "locationName":"egress" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "IcmpTypeCode":{ "shape":"IcmpTypeCode", "locationName":"icmpTypeCode" }, "PortRange":{ "shape":"PortRange", "locationName":"portRange" } } }, "NetworkAclEntryList":{ "type":"list", "member":{ "shape":"NetworkAclEntry", "locationName":"item" } }, "NetworkAclList":{ "type":"list", "member":{ "shape":"NetworkAcl", "locationName":"item" } }, "NetworkInterface":{ "type":"structure", "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Description":{ "shape":"String", "locationName":"description" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "RequesterId":{ "shape":"String", "locationName":"requesterId" }, "RequesterManaged":{ "shape":"Boolean", "locationName":"requesterManaged" }, "Status":{ "shape":"NetworkInterfaceStatus", "locationName":"status" }, "MacAddress":{ "shape":"String", "locationName":"macAddress" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "SourceDestCheck":{ "shape":"Boolean", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Attachment":{ "shape":"NetworkInterfaceAttachment", "locationName":"attachment" }, "Association":{ "shape":"NetworkInterfaceAssociation", "locationName":"association" }, "TagSet":{ "shape":"TagList", "locationName":"tagSet" }, "PrivateIpAddresses":{ "shape":"NetworkInterfacePrivateIpAddressList", "locationName":"privateIpAddressesSet" }, "InterfaceType":{ "shape":"NetworkInterfaceType", "locationName":"interfaceType" } } }, "NetworkInterfaceAssociation":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "PublicDnsName":{ "shape":"String", "locationName":"publicDnsName" }, "IpOwnerId":{ "shape":"String", "locationName":"ipOwnerId" }, "AllocationId":{ "shape":"String", "locationName":"allocationId" }, "AssociationId":{ "shape":"String", "locationName":"associationId" } } }, "NetworkInterfaceAttachment":{ "type":"structure", "members":{ "AttachmentId":{ "shape":"String", "locationName":"attachmentId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "InstanceOwnerId":{ "shape":"String", "locationName":"instanceOwnerId" }, "DeviceIndex":{ "shape":"Integer", "locationName":"deviceIndex" }, "Status":{ "shape":"AttachmentStatus", "locationName":"status" }, "AttachTime":{ "shape":"DateTime", "locationName":"attachTime" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "NetworkInterfaceAttachmentChanges":{ "type":"structure", "members":{ "AttachmentId":{ "shape":"String", "locationName":"attachmentId" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "NetworkInterfaceAttribute":{ "type":"string", "enum":[ "description", "groupSet", "sourceDestCheck", "attachment" ] }, "NetworkInterfaceIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "NetworkInterfaceList":{ "type":"list", "member":{ "shape":"NetworkInterface", "locationName":"item" } }, "NetworkInterfacePrivateIpAddress":{ "type":"structure", "members":{ "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "Primary":{ "shape":"Boolean", "locationName":"primary" }, "Association":{ "shape":"NetworkInterfaceAssociation", "locationName":"association" } } }, "NetworkInterfacePrivateIpAddressList":{ "type":"list", "member":{ "shape":"NetworkInterfacePrivateIpAddress", "locationName":"item" } }, "NetworkInterfaceStatus":{ "type":"string", "enum":[ "available", "attaching", "in-use", "detaching" ] }, "NetworkInterfaceType":{ "type":"string", "enum":[ "interface", "natGateway" ] }, "NewDhcpConfiguration":{ "type":"structure", "members":{ "Key":{ "shape":"String", "locationName":"key" }, "Values":{ "shape":"ValueStringList", "locationName":"Value" } } }, "NewDhcpConfigurationList":{ "type":"list", "member":{ "shape":"NewDhcpConfiguration", "locationName":"item" } }, "NextToken":{ "type":"string", "max":1024, "min":1 }, "OccurrenceDayRequestSet":{ "type":"list", "member":{ "shape":"Integer", "locationName":"OccurenceDay" } }, "OccurrenceDaySet":{ "type":"list", "member":{ "shape":"Integer", "locationName":"item" } }, "OfferingTypeValues":{ "type":"string", "enum":[ "Heavy Utilization", "Medium Utilization", "Light Utilization", "No Upfront", "Partial Upfront", "All Upfront" ] }, "OperationType":{ "type":"string", "enum":[ "add", "remove" ] }, "OwnerStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"Owner" } }, "PaymentOption":{ "type":"string", "enum":[ "AllUpfront", "PartialUpfront", "NoUpfront" ] }, "PeeringConnectionOptions":{ "type":"structure", "members":{ "AllowEgressFromLocalClassicLinkToRemoteVpc":{ "shape":"Boolean", "locationName":"allowEgressFromLocalClassicLinkToRemoteVpc" }, "AllowEgressFromLocalVpcToRemoteClassicLink":{ "shape":"Boolean", "locationName":"allowEgressFromLocalVpcToRemoteClassicLink" }, "AllowDnsResolutionFromRemoteVpc":{ "shape":"Boolean", "locationName":"allowDnsResolutionFromRemoteVpc" } } }, "PeeringConnectionOptionsRequest":{ "type":"structure", "members":{ "AllowEgressFromLocalClassicLinkToRemoteVpc":{"shape":"Boolean"}, "AllowEgressFromLocalVpcToRemoteClassicLink":{"shape":"Boolean"}, "AllowDnsResolutionFromRemoteVpc":{"shape":"Boolean"} } }, "PermissionGroup":{ "type":"string", "enum":["all"] }, "Placement":{ "type":"structure", "members":{ "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "Tenancy":{ "shape":"Tenancy", "locationName":"tenancy" }, "HostId":{ "shape":"String", "locationName":"hostId" }, "Affinity":{ "shape":"String", "locationName":"affinity" } } }, "PlacementGroup":{ "type":"structure", "members":{ "GroupName":{ "shape":"String", "locationName":"groupName" }, "Strategy":{ "shape":"PlacementStrategy", "locationName":"strategy" }, "State":{ "shape":"PlacementGroupState", "locationName":"state" } } }, "PlacementGroupList":{ "type":"list", "member":{ "shape":"PlacementGroup", "locationName":"item" } }, "PlacementGroupState":{ "type":"string", "enum":[ "pending", "available", "deleting", "deleted" ] }, "PlacementGroupStringList":{ "type":"list", "member":{"shape":"String"} }, "PlacementStrategy":{ "type":"string", "enum":["cluster"] }, "PlatformValues":{ "type":"string", "enum":["Windows"] }, "PortRange":{ "type":"structure", "members":{ "From":{ "shape":"Integer", "locationName":"from" }, "To":{ "shape":"Integer", "locationName":"to" } } }, "PrefixList":{ "type":"structure", "members":{ "PrefixListId":{ "shape":"String", "locationName":"prefixListId" }, "PrefixListName":{ "shape":"String", "locationName":"prefixListName" }, "Cidrs":{ "shape":"ValueStringList", "locationName":"cidrSet" } } }, "PrefixListId":{ "type":"structure", "members":{ "PrefixListId":{ "shape":"String", "locationName":"prefixListId" } } }, "PrefixListIdList":{ "type":"list", "member":{ "shape":"PrefixListId", "locationName":"item" } }, "PrefixListIdSet":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "PrefixListSet":{ "type":"list", "member":{ "shape":"PrefixList", "locationName":"item" } }, "PriceSchedule":{ "type":"structure", "members":{ "Term":{ "shape":"Long", "locationName":"term" }, "Price":{ "shape":"Double", "locationName":"price" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "Active":{ "shape":"Boolean", "locationName":"active" } } }, "PriceScheduleList":{ "type":"list", "member":{ "shape":"PriceSchedule", "locationName":"item" } }, "PriceScheduleSpecification":{ "type":"structure", "members":{ "Term":{ "shape":"Long", "locationName":"term" }, "Price":{ "shape":"Double", "locationName":"price" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" } } }, "PriceScheduleSpecificationList":{ "type":"list", "member":{ "shape":"PriceScheduleSpecification", "locationName":"item" } }, "PricingDetail":{ "type":"structure", "members":{ "Price":{ "shape":"Double", "locationName":"price" }, "Count":{ "shape":"Integer", "locationName":"count" } } }, "PricingDetailsList":{ "type":"list", "member":{ "shape":"PricingDetail", "locationName":"item" } }, "PrivateIpAddressConfigSet":{ "type":"list", "member":{ "shape":"ScheduledInstancesPrivateIpAddressConfig", "locationName":"PrivateIpAddressConfigSet" } }, "PrivateIpAddressSpecification":{ "type":"structure", "required":["PrivateIpAddress"], "members":{ "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "Primary":{ "shape":"Boolean", "locationName":"primary" } } }, "PrivateIpAddressSpecificationList":{ "type":"list", "member":{ "shape":"PrivateIpAddressSpecification", "locationName":"item" } }, "PrivateIpAddressStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"PrivateIpAddress" } }, "ProductCode":{ "type":"structure", "members":{ "ProductCodeId":{ "shape":"String", "locationName":"productCode" }, "ProductCodeType":{ "shape":"ProductCodeValues", "locationName":"type" } } }, "ProductCodeList":{ "type":"list", "member":{ "shape":"ProductCode", "locationName":"item" } }, "ProductCodeStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ProductCode" } }, "ProductCodeValues":{ "type":"string", "enum":[ "devpay", "marketplace" ] }, "ProductDescriptionList":{ "type":"list", "member":{"shape":"String"} }, "PropagatingVgw":{ "type":"structure", "members":{ "GatewayId":{ "shape":"String", "locationName":"gatewayId" } } }, "PropagatingVgwList":{ "type":"list", "member":{ "shape":"PropagatingVgw", "locationName":"item" } }, "ProvisionedBandwidth":{ "type":"structure", "members":{ "Provisioned":{ "shape":"String", "locationName":"provisioned" }, "Requested":{ "shape":"String", "locationName":"requested" }, "RequestTime":{ "shape":"DateTime", "locationName":"requestTime" }, "ProvisionTime":{ "shape":"DateTime", "locationName":"provisionTime" }, "Status":{ "shape":"String", "locationName":"status" } } }, "PublicIpStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"PublicIp" } }, "Purchase":{ "type":"structure", "members":{ "HostReservationId":{ "shape":"String", "locationName":"hostReservationId" }, "HostIdSet":{ "shape":"ResponseHostIdSet", "locationName":"hostIdSet" }, "InstanceFamily":{ "shape":"String", "locationName":"instanceFamily" }, "PaymentOption":{ "shape":"PaymentOption", "locationName":"paymentOption" }, "UpfrontPrice":{ "shape":"String", "locationName":"upfrontPrice" }, "HourlyPrice":{ "shape":"String", "locationName":"hourlyPrice" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "Duration":{ "shape":"Integer", "locationName":"duration" } } }, "PurchaseHostReservationRequest":{ "type":"structure", "required":[ "OfferingId", "HostIdSet" ], "members":{ "OfferingId":{"shape":"String"}, "HostIdSet":{"shape":"RequestHostIdSet"}, "LimitPrice":{"shape":"String"}, "CurrencyCode":{"shape":"CurrencyCodeValues"}, "ClientToken":{"shape":"String"} } }, "PurchaseHostReservationResult":{ "type":"structure", "members":{ "Purchase":{ "shape":"PurchaseSet", "locationName":"purchase" }, "TotalUpfrontPrice":{ "shape":"String", "locationName":"totalUpfrontPrice" }, "TotalHourlyPrice":{ "shape":"String", "locationName":"totalHourlyPrice" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "PurchaseRequest":{ "type":"structure", "required":[ "PurchaseToken", "InstanceCount" ], "members":{ "PurchaseToken":{"shape":"String"}, "InstanceCount":{"shape":"Integer"} } }, "PurchaseRequestSet":{ "type":"list", "member":{ "shape":"PurchaseRequest", "locationName":"PurchaseRequest" }, "min":1 }, "PurchaseReservedInstancesOfferingRequest":{ "type":"structure", "required":[ "ReservedInstancesOfferingId", "InstanceCount" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ReservedInstancesOfferingId":{"shape":"String"}, "InstanceCount":{"shape":"Integer"}, "LimitPrice":{ "shape":"ReservedInstanceLimitPrice", "locationName":"limitPrice" } } }, "PurchaseReservedInstancesOfferingResult":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" } } }, "PurchaseScheduledInstancesRequest":{ "type":"structure", "required":["PurchaseRequests"], "members":{ "DryRun":{"shape":"Boolean"}, "ClientToken":{ "shape":"String", "idempotencyToken":true }, "PurchaseRequests":{ "shape":"PurchaseRequestSet", "locationName":"PurchaseRequest" } } }, "PurchaseScheduledInstancesResult":{ "type":"structure", "members":{ "ScheduledInstanceSet":{ "shape":"PurchasedScheduledInstanceSet", "locationName":"scheduledInstanceSet" } } }, "PurchaseSet":{ "type":"list", "member":{"shape":"Purchase"} }, "PurchasedScheduledInstanceSet":{ "type":"list", "member":{ "shape":"ScheduledInstance", "locationName":"item" } }, "RIProductDescription":{ "type":"string", "enum":[ "Linux/UNIX", "Linux/UNIX (Amazon VPC)", "Windows", "Windows (Amazon VPC)" ] }, "ReasonCodesList":{ "type":"list", "member":{ "shape":"ReportInstanceReasonCodes", "locationName":"item" } }, "RebootInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" } } }, "RecurringCharge":{ "type":"structure", "members":{ "Frequency":{ "shape":"RecurringChargeFrequency", "locationName":"frequency" }, "Amount":{ "shape":"Double", "locationName":"amount" } } }, "RecurringChargeFrequency":{ "type":"string", "enum":["Hourly"] }, "RecurringChargesList":{ "type":"list", "member":{ "shape":"RecurringCharge", "locationName":"item" } }, "Region":{ "type":"structure", "members":{ "RegionName":{ "shape":"String", "locationName":"regionName" }, "Endpoint":{ "shape":"String", "locationName":"regionEndpoint" } } }, "RegionList":{ "type":"list", "member":{ "shape":"Region", "locationName":"item" } }, "RegionNameStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"RegionName" } }, "RegisterImageRequest":{ "type":"structure", "required":["Name"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageLocation":{"shape":"String"}, "Name":{ "shape":"String", "locationName":"name" }, "Description":{ "shape":"String", "locationName":"description" }, "Architecture":{ "shape":"ArchitectureValues", "locationName":"architecture" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "RootDeviceName":{ "shape":"String", "locationName":"rootDeviceName" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingRequestList", "locationName":"BlockDeviceMapping" }, "VirtualizationType":{ "shape":"String", "locationName":"virtualizationType" }, "SriovNetSupport":{ "shape":"String", "locationName":"sriovNetSupport" }, "EnaSupport":{ "shape":"Boolean", "locationName":"enaSupport" } } }, "RegisterImageResult":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" } } }, "RejectVpcPeeringConnectionRequest":{ "type":"structure", "required":["VpcPeeringConnectionId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "RejectVpcPeeringConnectionResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "ReleaseAddressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIp":{"shape":"String"}, "AllocationId":{"shape":"String"} } }, "ReleaseHostsRequest":{ "type":"structure", "required":["HostIds"], "members":{ "HostIds":{ "shape":"RequestHostIdList", "locationName":"hostId" } } }, "ReleaseHostsResult":{ "type":"structure", "members":{ "Successful":{ "shape":"ResponseHostIdList", "locationName":"successful" }, "Unsuccessful":{ "shape":"UnsuccessfulItemList", "locationName":"unsuccessful" } } }, "ReplaceNetworkAclAssociationRequest":{ "type":"structure", "required":[ "AssociationId", "NetworkAclId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AssociationId":{ "shape":"String", "locationName":"associationId" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" } } }, "ReplaceNetworkAclAssociationResult":{ "type":"structure", "members":{ "NewAssociationId":{ "shape":"String", "locationName":"newAssociationId" } } }, "ReplaceNetworkAclEntryRequest":{ "type":"structure", "required":[ "NetworkAclId", "RuleNumber", "Protocol", "RuleAction", "Egress", "CidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "RuleNumber":{ "shape":"Integer", "locationName":"ruleNumber" }, "Protocol":{ "shape":"String", "locationName":"protocol" }, "RuleAction":{ "shape":"RuleAction", "locationName":"ruleAction" }, "Egress":{ "shape":"Boolean", "locationName":"egress" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "IcmpTypeCode":{ "shape":"IcmpTypeCode", "locationName":"Icmp" }, "PortRange":{ "shape":"PortRange", "locationName":"portRange" } } }, "ReplaceRouteRequest":{ "type":"structure", "required":[ "RouteTableId", "DestinationCidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" }, "GatewayId":{ "shape":"String", "locationName":"gatewayId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" }, "NatGatewayId":{ "shape":"String", "locationName":"natGatewayId" } } }, "ReplaceRouteTableAssociationRequest":{ "type":"structure", "required":[ "AssociationId", "RouteTableId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AssociationId":{ "shape":"String", "locationName":"associationId" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" } } }, "ReplaceRouteTableAssociationResult":{ "type":"structure", "members":{ "NewAssociationId":{ "shape":"String", "locationName":"newAssociationId" } } }, "ReportInstanceReasonCodes":{ "type":"string", "enum":[ "instance-stuck-in-state", "unresponsive", "not-accepting-credentials", "password-not-available", "performance-network", "performance-instance-store", "performance-ebs-volume", "performance-other", "other" ] }, "ReportInstanceStatusRequest":{ "type":"structure", "required":[ "Instances", "Status", "ReasonCodes" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Instances":{ "shape":"InstanceIdStringList", "locationName":"instanceId" }, "Status":{ "shape":"ReportStatusType", "locationName":"status" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "EndTime":{ "shape":"DateTime", "locationName":"endTime" }, "ReasonCodes":{ "shape":"ReasonCodesList", "locationName":"reasonCode" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ReportStatusType":{ "type":"string", "enum":[ "ok", "impaired" ] }, "RequestHostIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "RequestHostIdSet":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "RequestSpotFleetRequest":{ "type":"structure", "required":["SpotFleetRequestConfig"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestConfig":{ "shape":"SpotFleetRequestConfigData", "locationName":"spotFleetRequestConfig" } } }, "RequestSpotFleetResponse":{ "type":"structure", "required":["SpotFleetRequestId"], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" } } }, "RequestSpotInstancesRequest":{ "type":"structure", "required":["SpotPrice"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "Type":{ "shape":"SpotInstanceType", "locationName":"type" }, "ValidFrom":{ "shape":"DateTime", "locationName":"validFrom" }, "ValidUntil":{ "shape":"DateTime", "locationName":"validUntil" }, "LaunchGroup":{ "shape":"String", "locationName":"launchGroup" }, "AvailabilityZoneGroup":{ "shape":"String", "locationName":"availabilityZoneGroup" }, "BlockDurationMinutes":{ "shape":"Integer", "locationName":"blockDurationMinutes" }, "LaunchSpecification":{"shape":"RequestSpotLaunchSpecification"} } }, "RequestSpotInstancesResult":{ "type":"structure", "members":{ "SpotInstanceRequests":{ "shape":"SpotInstanceRequestList", "locationName":"spotInstanceRequestSet" } } }, "RequestSpotLaunchSpecification":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "SecurityGroups":{ "shape":"ValueStringList", "locationName":"SecurityGroup" }, "UserData":{ "shape":"String", "locationName":"userData" }, "AddressingType":{ "shape":"String", "locationName":"addressingType" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "Placement":{ "shape":"SpotPlacement", "locationName":"placement" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceSpecificationList", "locationName":"NetworkInterface" }, "IamInstanceProfile":{ "shape":"IamInstanceProfileSpecification", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" }, "Monitoring":{ "shape":"RunInstancesMonitoringEnabled", "locationName":"monitoring" }, "SecurityGroupIds":{ "shape":"ValueStringList", "locationName":"SecurityGroupId" } } }, "Reservation":{ "type":"structure", "members":{ "ReservationId":{ "shape":"String", "locationName":"reservationId" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "RequesterId":{ "shape":"String", "locationName":"requesterId" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Instances":{ "shape":"InstanceList", "locationName":"instancesSet" } } }, "ReservationList":{ "type":"list", "member":{ "shape":"Reservation", "locationName":"item" } }, "ReservationState":{ "type":"string", "enum":[ "payment-pending", "payment-failed", "active", "retired" ] }, "ReservedInstanceLimitPrice":{ "type":"structure", "members":{ "Amount":{ "shape":"Double", "locationName":"amount" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" } } }, "ReservedInstanceState":{ "type":"string", "enum":[ "payment-pending", "active", "payment-failed", "retired" ] }, "ReservedInstances":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Start":{ "shape":"DateTime", "locationName":"start" }, "End":{ "shape":"DateTime", "locationName":"end" }, "Duration":{ "shape":"Long", "locationName":"duration" }, "UsagePrice":{ "shape":"Float", "locationName":"usagePrice" }, "FixedPrice":{ "shape":"Float", "locationName":"fixedPrice" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "ProductDescription":{ "shape":"RIProductDescription", "locationName":"productDescription" }, "State":{ "shape":"ReservedInstanceState", "locationName":"state" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "OfferingType":{ "shape":"OfferingTypeValues", "locationName":"offeringType" }, "RecurringCharges":{ "shape":"RecurringChargesList", "locationName":"recurringCharges" } } }, "ReservedInstancesConfiguration":{ "type":"structure", "members":{ "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Platform":{ "shape":"String", "locationName":"platform" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" } } }, "ReservedInstancesConfigurationList":{ "type":"list", "member":{ "shape":"ReservedInstancesConfiguration", "locationName":"item" } }, "ReservedInstancesId":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" } } }, "ReservedInstancesIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ReservedInstancesId" } }, "ReservedInstancesList":{ "type":"list", "member":{ "shape":"ReservedInstances", "locationName":"item" } }, "ReservedInstancesListing":{ "type":"structure", "members":{ "ReservedInstancesListingId":{ "shape":"String", "locationName":"reservedInstancesListingId" }, "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "CreateDate":{ "shape":"DateTime", "locationName":"createDate" }, "UpdateDate":{ "shape":"DateTime", "locationName":"updateDate" }, "Status":{ "shape":"ListingStatus", "locationName":"status" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "InstanceCounts":{ "shape":"InstanceCountList", "locationName":"instanceCounts" }, "PriceSchedules":{ "shape":"PriceScheduleList", "locationName":"priceSchedules" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "ReservedInstancesListingList":{ "type":"list", "member":{ "shape":"ReservedInstancesListing", "locationName":"item" } }, "ReservedInstancesModification":{ "type":"structure", "members":{ "ReservedInstancesModificationId":{ "shape":"String", "locationName":"reservedInstancesModificationId" }, "ReservedInstancesIds":{ "shape":"ReservedIntancesIds", "locationName":"reservedInstancesSet" }, "ModificationResults":{ "shape":"ReservedInstancesModificationResultList", "locationName":"modificationResultSet" }, "CreateDate":{ "shape":"DateTime", "locationName":"createDate" }, "UpdateDate":{ "shape":"DateTime", "locationName":"updateDate" }, "EffectiveDate":{ "shape":"DateTime", "locationName":"effectiveDate" }, "Status":{ "shape":"String", "locationName":"status" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "ReservedInstancesModificationIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ReservedInstancesModificationId" } }, "ReservedInstancesModificationList":{ "type":"list", "member":{ "shape":"ReservedInstancesModification", "locationName":"item" } }, "ReservedInstancesModificationResult":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "TargetConfiguration":{ "shape":"ReservedInstancesConfiguration", "locationName":"targetConfiguration" } } }, "ReservedInstancesModificationResultList":{ "type":"list", "member":{ "shape":"ReservedInstancesModificationResult", "locationName":"item" } }, "ReservedInstancesOffering":{ "type":"structure", "members":{ "ReservedInstancesOfferingId":{ "shape":"String", "locationName":"reservedInstancesOfferingId" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Duration":{ "shape":"Long", "locationName":"duration" }, "UsagePrice":{ "shape":"Float", "locationName":"usagePrice" }, "FixedPrice":{ "shape":"Float", "locationName":"fixedPrice" }, "ProductDescription":{ "shape":"RIProductDescription", "locationName":"productDescription" }, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "OfferingType":{ "shape":"OfferingTypeValues", "locationName":"offeringType" }, "RecurringCharges":{ "shape":"RecurringChargesList", "locationName":"recurringCharges" }, "Marketplace":{ "shape":"Boolean", "locationName":"marketplace" }, "PricingDetails":{ "shape":"PricingDetailsList", "locationName":"pricingDetailsSet" } } }, "ReservedInstancesOfferingIdStringList":{ "type":"list", "member":{"shape":"String"} }, "ReservedInstancesOfferingList":{ "type":"list", "member":{ "shape":"ReservedInstancesOffering", "locationName":"item" } }, "ReservedIntancesIds":{ "type":"list", "member":{ "shape":"ReservedInstancesId", "locationName":"item" } }, "ResetImageAttributeName":{ "type":"string", "enum":["launchPermission"] }, "ResetImageAttributeRequest":{ "type":"structure", "required":[ "ImageId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"}, "Attribute":{"shape":"ResetImageAttributeName"} } }, "ResetInstanceAttributeRequest":{ "type":"structure", "required":[ "InstanceId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Attribute":{ "shape":"InstanceAttributeName", "locationName":"attribute" } } }, "ResetNetworkInterfaceAttributeRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "SourceDestCheck":{ "shape":"String", "locationName":"sourceDestCheck" } } }, "ResetSnapshotAttributeRequest":{ "type":"structure", "required":[ "SnapshotId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotId":{"shape":"String"}, "Attribute":{"shape":"SnapshotAttributeName"} } }, "ResourceIdList":{ "type":"list", "member":{"shape":"String"} }, "ResourceType":{ "type":"string", "enum":[ "customer-gateway", "dhcp-options", "image", "instance", "internet-gateway", "network-acl", "network-interface", "reserved-instances", "route-table", "snapshot", "spot-instances-request", "subnet", "security-group", "volume", "vpc", "vpn-connection", "vpn-gateway" ] }, "ResponseHostIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "ResponseHostIdSet":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "RestorableByStringList":{ "type":"list", "member":{"shape":"String"} }, "RestoreAddressToClassicRequest":{ "type":"structure", "required":["PublicIp"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIp":{ "shape":"String", "locationName":"publicIp" } } }, "RestoreAddressToClassicResult":{ "type":"structure", "members":{ "Status":{ "shape":"Status", "locationName":"status" }, "PublicIp":{ "shape":"String", "locationName":"publicIp" } } }, "RevokeSecurityGroupEgressRequest":{ "type":"structure", "required":["GroupId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupId":{ "shape":"String", "locationName":"groupId" }, "SourceSecurityGroupName":{ "shape":"String", "locationName":"sourceSecurityGroupName" }, "SourceSecurityGroupOwnerId":{ "shape":"String", "locationName":"sourceSecurityGroupOwnerId" }, "IpProtocol":{ "shape":"String", "locationName":"ipProtocol" }, "FromPort":{ "shape":"Integer", "locationName":"fromPort" }, "ToPort":{ "shape":"Integer", "locationName":"toPort" }, "CidrIp":{ "shape":"String", "locationName":"cidrIp" }, "IpPermissions":{ "shape":"IpPermissionList", "locationName":"ipPermissions" } } }, "RevokeSecurityGroupIngressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{"shape":"String"}, "GroupId":{"shape":"String"}, "SourceSecurityGroupName":{"shape":"String"}, "SourceSecurityGroupOwnerId":{"shape":"String"}, "IpProtocol":{"shape":"String"}, "FromPort":{"shape":"Integer"}, "ToPort":{"shape":"Integer"}, "CidrIp":{"shape":"String"}, "IpPermissions":{"shape":"IpPermissionList"} } }, "Route":{ "type":"structure", "members":{ "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" }, "DestinationPrefixListId":{ "shape":"String", "locationName":"destinationPrefixListId" }, "GatewayId":{ "shape":"String", "locationName":"gatewayId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "InstanceOwnerId":{ "shape":"String", "locationName":"instanceOwnerId" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" }, "NatGatewayId":{ "shape":"String", "locationName":"natGatewayId" }, "State":{ "shape":"RouteState", "locationName":"state" }, "Origin":{ "shape":"RouteOrigin", "locationName":"origin" } } }, "RouteList":{ "type":"list", "member":{ "shape":"Route", "locationName":"item" } }, "RouteOrigin":{ "type":"string", "enum":[ "CreateRouteTable", "CreateRoute", "EnableVgwRoutePropagation" ] }, "RouteState":{ "type":"string", "enum":[ "active", "blackhole" ] }, "RouteTable":{ "type":"structure", "members":{ "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Routes":{ "shape":"RouteList", "locationName":"routeSet" }, "Associations":{ "shape":"RouteTableAssociationList", "locationName":"associationSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "PropagatingVgws":{ "shape":"PropagatingVgwList", "locationName":"propagatingVgwSet" } } }, "RouteTableAssociation":{ "type":"structure", "members":{ "RouteTableAssociationId":{ "shape":"String", "locationName":"routeTableAssociationId" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "Main":{ "shape":"Boolean", "locationName":"main" } } }, "RouteTableAssociationList":{ "type":"list", "member":{ "shape":"RouteTableAssociation", "locationName":"item" } }, "RouteTableList":{ "type":"list", "member":{ "shape":"RouteTable", "locationName":"item" } }, "RuleAction":{ "type":"string", "enum":[ "allow", "deny" ] }, "RunInstancesMonitoringEnabled":{ "type":"structure", "required":["Enabled"], "members":{ "Enabled":{ "shape":"Boolean", "locationName":"enabled" } } }, "RunInstancesRequest":{ "type":"structure", "required":[ "ImageId", "MinCount", "MaxCount" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"}, "MinCount":{"shape":"Integer"}, "MaxCount":{"shape":"Integer"}, "KeyName":{"shape":"String"}, "SecurityGroups":{ "shape":"SecurityGroupStringList", "locationName":"SecurityGroup" }, "SecurityGroupIds":{ "shape":"SecurityGroupIdStringList", "locationName":"SecurityGroupId" }, "UserData":{"shape":"String"}, "InstanceType":{"shape":"InstanceType"}, "Placement":{"shape":"Placement"}, "KernelId":{"shape":"String"}, "RamdiskId":{"shape":"String"}, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingRequestList", "locationName":"BlockDeviceMapping" }, "Monitoring":{"shape":"RunInstancesMonitoringEnabled"}, "SubnetId":{"shape":"String"}, "DisableApiTermination":{ "shape":"Boolean", "locationName":"disableApiTermination" }, "InstanceInitiatedShutdownBehavior":{ "shape":"ShutdownBehavior", "locationName":"instanceInitiatedShutdownBehavior" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "AdditionalInfo":{ "shape":"String", "locationName":"additionalInfo" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceSpecificationList", "locationName":"networkInterface" }, "IamInstanceProfile":{ "shape":"IamInstanceProfileSpecification", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" } } }, "RunScheduledInstancesRequest":{ "type":"structure", "required":[ "ScheduledInstanceId", "LaunchSpecification" ], "members":{ "DryRun":{"shape":"Boolean"}, "ClientToken":{ "shape":"String", "idempotencyToken":true }, "InstanceCount":{"shape":"Integer"}, "ScheduledInstanceId":{"shape":"String"}, "LaunchSpecification":{"shape":"ScheduledInstancesLaunchSpecification"} } }, "RunScheduledInstancesResult":{ "type":"structure", "members":{ "InstanceIdSet":{ "shape":"InstanceIdSet", "locationName":"instanceIdSet" } } }, "S3Storage":{ "type":"structure", "members":{ "Bucket":{ "shape":"String", "locationName":"bucket" }, "Prefix":{ "shape":"String", "locationName":"prefix" }, "AWSAccessKeyId":{"shape":"String"}, "UploadPolicy":{ "shape":"Blob", "locationName":"uploadPolicy" }, "UploadPolicySignature":{ "shape":"String", "locationName":"uploadPolicySignature" } } }, "ScheduledInstance":{ "type":"structure", "members":{ "ScheduledInstanceId":{ "shape":"String", "locationName":"scheduledInstanceId" }, "InstanceType":{ "shape":"String", "locationName":"instanceType" }, "Platform":{ "shape":"String", "locationName":"platform" }, "NetworkPlatform":{ "shape":"String", "locationName":"networkPlatform" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "SlotDurationInHours":{ "shape":"Integer", "locationName":"slotDurationInHours" }, "Recurrence":{ "shape":"ScheduledInstanceRecurrence", "locationName":"recurrence" }, "PreviousSlotEndTime":{ "shape":"DateTime", "locationName":"previousSlotEndTime" }, "NextSlotStartTime":{ "shape":"DateTime", "locationName":"nextSlotStartTime" }, "HourlyPrice":{ "shape":"String", "locationName":"hourlyPrice" }, "TotalScheduledInstanceHours":{ "shape":"Integer", "locationName":"totalScheduledInstanceHours" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "TermStartDate":{ "shape":"DateTime", "locationName":"termStartDate" }, "TermEndDate":{ "shape":"DateTime", "locationName":"termEndDate" }, "CreateDate":{ "shape":"DateTime", "locationName":"createDate" } } }, "ScheduledInstanceAvailability":{ "type":"structure", "members":{ "InstanceType":{ "shape":"String", "locationName":"instanceType" }, "Platform":{ "shape":"String", "locationName":"platform" }, "NetworkPlatform":{ "shape":"String", "locationName":"networkPlatform" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "PurchaseToken":{ "shape":"String", "locationName":"purchaseToken" }, "SlotDurationInHours":{ "shape":"Integer", "locationName":"slotDurationInHours" }, "Recurrence":{ "shape":"ScheduledInstanceRecurrence", "locationName":"recurrence" }, "FirstSlotStartTime":{ "shape":"DateTime", "locationName":"firstSlotStartTime" }, "HourlyPrice":{ "shape":"String", "locationName":"hourlyPrice" }, "TotalScheduledInstanceHours":{ "shape":"Integer", "locationName":"totalScheduledInstanceHours" }, "AvailableInstanceCount":{ "shape":"Integer", "locationName":"availableInstanceCount" }, "MinTermDurationInDays":{ "shape":"Integer", "locationName":"minTermDurationInDays" }, "MaxTermDurationInDays":{ "shape":"Integer", "locationName":"maxTermDurationInDays" } } }, "ScheduledInstanceAvailabilitySet":{ "type":"list", "member":{ "shape":"ScheduledInstanceAvailability", "locationName":"item" } }, "ScheduledInstanceIdRequestSet":{ "type":"list", "member":{ "shape":"String", "locationName":"ScheduledInstanceId" } }, "ScheduledInstanceRecurrence":{ "type":"structure", "members":{ "Frequency":{ "shape":"String", "locationName":"frequency" }, "Interval":{ "shape":"Integer", "locationName":"interval" }, "OccurrenceDaySet":{ "shape":"OccurrenceDaySet", "locationName":"occurrenceDaySet" }, "OccurrenceRelativeToEnd":{ "shape":"Boolean", "locationName":"occurrenceRelativeToEnd" }, "OccurrenceUnit":{ "shape":"String", "locationName":"occurrenceUnit" } } }, "ScheduledInstanceRecurrenceRequest":{ "type":"structure", "members":{ "Frequency":{"shape":"String"}, "Interval":{"shape":"Integer"}, "OccurrenceDays":{ "shape":"OccurrenceDayRequestSet", "locationName":"OccurrenceDay" }, "OccurrenceRelativeToEnd":{"shape":"Boolean"}, "OccurrenceUnit":{"shape":"String"} } }, "ScheduledInstanceSet":{ "type":"list", "member":{ "shape":"ScheduledInstance", "locationName":"item" } }, "ScheduledInstancesBlockDeviceMapping":{ "type":"structure", "members":{ "DeviceName":{"shape":"String"}, "NoDevice":{"shape":"String"}, "VirtualName":{"shape":"String"}, "Ebs":{"shape":"ScheduledInstancesEbs"} } }, "ScheduledInstancesBlockDeviceMappingSet":{ "type":"list", "member":{ "shape":"ScheduledInstancesBlockDeviceMapping", "locationName":"BlockDeviceMapping" } }, "ScheduledInstancesEbs":{ "type":"structure", "members":{ "SnapshotId":{"shape":"String"}, "VolumeSize":{"shape":"Integer"}, "DeleteOnTermination":{"shape":"Boolean"}, "VolumeType":{"shape":"String"}, "Iops":{"shape":"Integer"}, "Encrypted":{"shape":"Boolean"} } }, "ScheduledInstancesIamInstanceProfile":{ "type":"structure", "members":{ "Arn":{"shape":"String"}, "Name":{"shape":"String"} } }, "ScheduledInstancesLaunchSpecification":{ "type":"structure", "required":["ImageId"], "members":{ "ImageId":{"shape":"String"}, "KeyName":{"shape":"String"}, "SecurityGroupIds":{ "shape":"ScheduledInstancesSecurityGroupIdSet", "locationName":"SecurityGroupId" }, "UserData":{"shape":"String"}, "Placement":{"shape":"ScheduledInstancesPlacement"}, "KernelId":{"shape":"String"}, "InstanceType":{"shape":"String"}, "RamdiskId":{"shape":"String"}, "BlockDeviceMappings":{ "shape":"ScheduledInstancesBlockDeviceMappingSet", "locationName":"BlockDeviceMapping" }, "Monitoring":{"shape":"ScheduledInstancesMonitoring"}, "SubnetId":{"shape":"String"}, "NetworkInterfaces":{ "shape":"ScheduledInstancesNetworkInterfaceSet", "locationName":"NetworkInterface" }, "IamInstanceProfile":{"shape":"ScheduledInstancesIamInstanceProfile"}, "EbsOptimized":{"shape":"Boolean"} } }, "ScheduledInstancesMonitoring":{ "type":"structure", "members":{ "Enabled":{"shape":"Boolean"} } }, "ScheduledInstancesNetworkInterface":{ "type":"structure", "members":{ "NetworkInterfaceId":{"shape":"String"}, "DeviceIndex":{"shape":"Integer"}, "SubnetId":{"shape":"String"}, "Description":{"shape":"String"}, "PrivateIpAddress":{"shape":"String"}, "PrivateIpAddressConfigs":{ "shape":"PrivateIpAddressConfigSet", "locationName":"PrivateIpAddressConfig" }, "SecondaryPrivateIpAddressCount":{"shape":"Integer"}, "AssociatePublicIpAddress":{"shape":"Boolean"}, "Groups":{ "shape":"ScheduledInstancesSecurityGroupIdSet", "locationName":"Group" }, "DeleteOnTermination":{"shape":"Boolean"} } }, "ScheduledInstancesNetworkInterfaceSet":{ "type":"list", "member":{ "shape":"ScheduledInstancesNetworkInterface", "locationName":"NetworkInterface" } }, "ScheduledInstancesPlacement":{ "type":"structure", "members":{ "AvailabilityZone":{"shape":"String"}, "GroupName":{"shape":"String"} } }, "ScheduledInstancesPrivateIpAddressConfig":{ "type":"structure", "members":{ "PrivateIpAddress":{"shape":"String"}, "Primary":{"shape":"Boolean"} } }, "ScheduledInstancesSecurityGroupIdSet":{ "type":"list", "member":{ "shape":"String", "locationName":"SecurityGroupId" } }, "SecurityGroup":{ "type":"structure", "members":{ "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "GroupId":{ "shape":"String", "locationName":"groupId" }, "Description":{ "shape":"String", "locationName":"groupDescription" }, "IpPermissions":{ "shape":"IpPermissionList", "locationName":"ipPermissions" }, "IpPermissionsEgress":{ "shape":"IpPermissionList", "locationName":"ipPermissionsEgress" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "SecurityGroupIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"SecurityGroupId" } }, "SecurityGroupList":{ "type":"list", "member":{ "shape":"SecurityGroup", "locationName":"item" } }, "SecurityGroupReference":{ "type":"structure", "required":[ "GroupId", "ReferencingVpcId" ], "members":{ "GroupId":{ "shape":"String", "locationName":"groupId" }, "ReferencingVpcId":{ "shape":"String", "locationName":"referencingVpcId" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "SecurityGroupReferences":{ "type":"list", "member":{ "shape":"SecurityGroupReference", "locationName":"item" } }, "SecurityGroupStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"SecurityGroup" } }, "ShutdownBehavior":{ "type":"string", "enum":[ "stop", "terminate" ] }, "SlotDateTimeRangeRequest":{ "type":"structure", "required":[ "EarliestTime", "LatestTime" ], "members":{ "EarliestTime":{"shape":"DateTime"}, "LatestTime":{"shape":"DateTime"} } }, "SlotStartTimeRangeRequest":{ "type":"structure", "members":{ "EarliestTime":{"shape":"DateTime"}, "LatestTime":{"shape":"DateTime"} } }, "Snapshot":{ "type":"structure", "members":{ "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "State":{ "shape":"SnapshotState", "locationName":"status" }, "StateMessage":{ "shape":"String", "locationName":"statusMessage" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "Progress":{ "shape":"String", "locationName":"progress" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "Description":{ "shape":"String", "locationName":"description" }, "VolumeSize":{ "shape":"Integer", "locationName":"volumeSize" }, "OwnerAlias":{ "shape":"String", "locationName":"ownerAlias" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{ "shape":"String", "locationName":"kmsKeyId" }, "DataEncryptionKeyId":{ "shape":"String", "locationName":"dataEncryptionKeyId" } } }, "SnapshotAttributeName":{ "type":"string", "enum":[ "productCodes", "createVolumePermission" ] }, "SnapshotDetail":{ "type":"structure", "members":{ "DiskImageSize":{ "shape":"Double", "locationName":"diskImageSize" }, "Description":{ "shape":"String", "locationName":"description" }, "Format":{ "shape":"String", "locationName":"format" }, "Url":{ "shape":"String", "locationName":"url" }, "UserBucket":{ "shape":"UserBucketDetails", "locationName":"userBucket" }, "DeviceName":{ "shape":"String", "locationName":"deviceName" }, "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "Progress":{ "shape":"String", "locationName":"progress" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Status":{ "shape":"String", "locationName":"status" } } }, "SnapshotDetailList":{ "type":"list", "member":{ "shape":"SnapshotDetail", "locationName":"item" } }, "SnapshotDiskContainer":{ "type":"structure", "members":{ "Description":{"shape":"String"}, "Format":{"shape":"String"}, "Url":{"shape":"String"}, "UserBucket":{"shape":"UserBucket"} } }, "SnapshotIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"SnapshotId" } }, "SnapshotList":{ "type":"list", "member":{ "shape":"Snapshot", "locationName":"item" } }, "SnapshotState":{ "type":"string", "enum":[ "pending", "completed", "error" ] }, "SnapshotTaskDetail":{ "type":"structure", "members":{ "DiskImageSize":{ "shape":"Double", "locationName":"diskImageSize" }, "Description":{ "shape":"String", "locationName":"description" }, "Format":{ "shape":"String", "locationName":"format" }, "Url":{ "shape":"String", "locationName":"url" }, "UserBucket":{ "shape":"UserBucketDetails", "locationName":"userBucket" }, "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "Progress":{ "shape":"String", "locationName":"progress" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Status":{ "shape":"String", "locationName":"status" } } }, "SpotDatafeedSubscription":{ "type":"structure", "members":{ "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "Bucket":{ "shape":"String", "locationName":"bucket" }, "Prefix":{ "shape":"String", "locationName":"prefix" }, "State":{ "shape":"DatafeedSubscriptionState", "locationName":"state" }, "Fault":{ "shape":"SpotInstanceStateFault", "locationName":"fault" } } }, "SpotFleetLaunchSpecification":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "SecurityGroups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "UserData":{ "shape":"String", "locationName":"userData" }, "AddressingType":{ "shape":"String", "locationName":"addressingType" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "Placement":{ "shape":"SpotPlacement", "locationName":"placement" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "Monitoring":{ "shape":"SpotFleetMonitoring", "locationName":"monitoring" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceSpecificationList", "locationName":"networkInterfaceSet" }, "IamInstanceProfile":{ "shape":"IamInstanceProfileSpecification", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" }, "WeightedCapacity":{ "shape":"Double", "locationName":"weightedCapacity" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" } } }, "SpotFleetMonitoring":{ "type":"structure", "members":{ "Enabled":{ "shape":"Boolean", "locationName":"enabled" } } }, "SpotFleetRequestConfig":{ "type":"structure", "required":[ "SpotFleetRequestId", "SpotFleetRequestState", "SpotFleetRequestConfig", "CreateTime" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "SpotFleetRequestState":{ "shape":"BatchState", "locationName":"spotFleetRequestState" }, "SpotFleetRequestConfig":{ "shape":"SpotFleetRequestConfigData", "locationName":"spotFleetRequestConfig" }, "CreateTime":{ "shape":"DateTime", "locationName":"createTime" }, "ActivityStatus":{ "shape":"ActivityStatus", "locationName":"activityStatus" } } }, "SpotFleetRequestConfigData":{ "type":"structure", "required":[ "SpotPrice", "TargetCapacity", "IamFleetRole", "LaunchSpecifications" ], "members":{ "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" }, "TargetCapacity":{ "shape":"Integer", "locationName":"targetCapacity" }, "ValidFrom":{ "shape":"DateTime", "locationName":"validFrom" }, "ValidUntil":{ "shape":"DateTime", "locationName":"validUntil" }, "TerminateInstancesWithExpiration":{ "shape":"Boolean", "locationName":"terminateInstancesWithExpiration" }, "IamFleetRole":{ "shape":"String", "locationName":"iamFleetRole" }, "LaunchSpecifications":{ "shape":"LaunchSpecsList", "locationName":"launchSpecifications" }, "ExcessCapacityTerminationPolicy":{ "shape":"ExcessCapacityTerminationPolicy", "locationName":"excessCapacityTerminationPolicy" }, "AllocationStrategy":{ "shape":"AllocationStrategy", "locationName":"allocationStrategy" }, "FulfilledCapacity":{ "shape":"Double", "locationName":"fulfilledCapacity" }, "Type":{ "shape":"FleetType", "locationName":"type" } } }, "SpotFleetRequestConfigSet":{ "type":"list", "member":{ "shape":"SpotFleetRequestConfig", "locationName":"item" } }, "SpotInstanceRequest":{ "type":"structure", "members":{ "SpotInstanceRequestId":{ "shape":"String", "locationName":"spotInstanceRequestId" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" }, "Type":{ "shape":"SpotInstanceType", "locationName":"type" }, "State":{ "shape":"SpotInstanceState", "locationName":"state" }, "Fault":{ "shape":"SpotInstanceStateFault", "locationName":"fault" }, "Status":{ "shape":"SpotInstanceStatus", "locationName":"status" }, "ValidFrom":{ "shape":"DateTime", "locationName":"validFrom" }, "ValidUntil":{ "shape":"DateTime", "locationName":"validUntil" }, "LaunchGroup":{ "shape":"String", "locationName":"launchGroup" }, "AvailabilityZoneGroup":{ "shape":"String", "locationName":"availabilityZoneGroup" }, "LaunchSpecification":{ "shape":"LaunchSpecification", "locationName":"launchSpecification" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "CreateTime":{ "shape":"DateTime", "locationName":"createTime" }, "ProductDescription":{ "shape":"RIProductDescription", "locationName":"productDescription" }, "BlockDurationMinutes":{ "shape":"Integer", "locationName":"blockDurationMinutes" }, "ActualBlockHourlyPrice":{ "shape":"String", "locationName":"actualBlockHourlyPrice" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "LaunchedAvailabilityZone":{ "shape":"String", "locationName":"launchedAvailabilityZone" } } }, "SpotInstanceRequestIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"SpotInstanceRequestId" } }, "SpotInstanceRequestList":{ "type":"list", "member":{ "shape":"SpotInstanceRequest", "locationName":"item" } }, "SpotInstanceState":{ "type":"string", "enum":[ "open", "active", "closed", "cancelled", "failed" ] }, "SpotInstanceStateFault":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "SpotInstanceStatus":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "UpdateTime":{ "shape":"DateTime", "locationName":"updateTime" }, "Message":{ "shape":"String", "locationName":"message" } } }, "SpotInstanceType":{ "type":"string", "enum":[ "one-time", "persistent" ] }, "SpotPlacement":{ "type":"structure", "members":{ "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "GroupName":{ "shape":"String", "locationName":"groupName" } } }, "SpotPrice":{ "type":"structure", "members":{ "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "ProductDescription":{ "shape":"RIProductDescription", "locationName":"productDescription" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" }, "Timestamp":{ "shape":"DateTime", "locationName":"timestamp" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" } } }, "SpotPriceHistoryList":{ "type":"list", "member":{ "shape":"SpotPrice", "locationName":"item" } }, "StaleIpPermission":{ "type":"structure", "members":{ "FromPort":{ "shape":"Integer", "locationName":"fromPort" }, "IpProtocol":{ "shape":"String", "locationName":"ipProtocol" }, "IpRanges":{ "shape":"IpRanges", "locationName":"ipRanges" }, "PrefixListIds":{ "shape":"PrefixListIdSet", "locationName":"prefixListIds" }, "ToPort":{ "shape":"Integer", "locationName":"toPort" }, "UserIdGroupPairs":{ "shape":"UserIdGroupPairSet", "locationName":"groups" } } }, "StaleIpPermissionSet":{ "type":"list", "member":{ "shape":"StaleIpPermission", "locationName":"item" } }, "StaleSecurityGroup":{ "type":"structure", "required":["GroupId"], "members":{ "GroupId":{ "shape":"String", "locationName":"groupId" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "Description":{ "shape":"String", "locationName":"description" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "StaleIpPermissions":{ "shape":"StaleIpPermissionSet", "locationName":"staleIpPermissions" }, "StaleIpPermissionsEgress":{ "shape":"StaleIpPermissionSet", "locationName":"staleIpPermissionsEgress" } } }, "StaleSecurityGroupSet":{ "type":"list", "member":{ "shape":"StaleSecurityGroup", "locationName":"item" } }, "StartInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "AdditionalInfo":{ "shape":"String", "locationName":"additionalInfo" }, "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "StartInstancesResult":{ "type":"structure", "members":{ "StartingInstances":{ "shape":"InstanceStateChangeList", "locationName":"instancesSet" } } }, "State":{ "type":"string", "enum":[ "Pending", "Available", "Deleting", "Deleted" ] }, "StateReason":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "Status":{ "type":"string", "enum":[ "MoveInProgress", "InVpc", "InClassic" ] }, "StatusName":{ "type":"string", "enum":["reachability"] }, "StatusType":{ "type":"string", "enum":[ "passed", "failed", "insufficient-data", "initializing" ] }, "StopInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "Force":{ "shape":"Boolean", "locationName":"force" } } }, "StopInstancesResult":{ "type":"structure", "members":{ "StoppingInstances":{ "shape":"InstanceStateChangeList", "locationName":"instancesSet" } } }, "Storage":{ "type":"structure", "members":{ "S3":{"shape":"S3Storage"} } }, "String":{"type":"string"}, "Subnet":{ "type":"structure", "members":{ "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "State":{ "shape":"SubnetState", "locationName":"state" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "AvailableIpAddressCount":{ "shape":"Integer", "locationName":"availableIpAddressCount" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "DefaultForAz":{ "shape":"Boolean", "locationName":"defaultForAz" }, "MapPublicIpOnLaunch":{ "shape":"Boolean", "locationName":"mapPublicIpOnLaunch" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "SubnetIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"SubnetId" } }, "SubnetList":{ "type":"list", "member":{ "shape":"Subnet", "locationName":"item" } }, "SubnetState":{ "type":"string", "enum":[ "pending", "available" ] }, "SummaryStatus":{ "type":"string", "enum":[ "ok", "impaired", "insufficient-data", "not-applicable", "initializing" ] }, "Tag":{ "type":"structure", "members":{ "Key":{ "shape":"String", "locationName":"key" }, "Value":{ "shape":"String", "locationName":"value" } } }, "TagDescription":{ "type":"structure", "members":{ "ResourceId":{ "shape":"String", "locationName":"resourceId" }, "ResourceType":{ "shape":"ResourceType", "locationName":"resourceType" }, "Key":{ "shape":"String", "locationName":"key" }, "Value":{ "shape":"String", "locationName":"value" } } }, "TagDescriptionList":{ "type":"list", "member":{ "shape":"TagDescription", "locationName":"item" } }, "TagList":{ "type":"list", "member":{ "shape":"Tag", "locationName":"item" } }, "TelemetryStatus":{ "type":"string", "enum":[ "UP", "DOWN" ] }, "Tenancy":{ "type":"string", "enum":[ "default", "dedicated", "host" ] }, "TerminateInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" } } }, "TerminateInstancesResult":{ "type":"structure", "members":{ "TerminatingInstances":{ "shape":"InstanceStateChangeList", "locationName":"instancesSet" } } }, "TrafficType":{ "type":"string", "enum":[ "ACCEPT", "REJECT", "ALL" ] }, "UnassignPrivateIpAddressesRequest":{ "type":"structure", "required":[ "NetworkInterfaceId", "PrivateIpAddresses" ], "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "PrivateIpAddresses":{ "shape":"PrivateIpAddressStringList", "locationName":"privateIpAddress" } } }, "UnmonitorInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" } } }, "UnmonitorInstancesResult":{ "type":"structure", "members":{ "InstanceMonitorings":{ "shape":"InstanceMonitoringList", "locationName":"instancesSet" } } }, "UnsuccessfulItem":{ "type":"structure", "required":["Error"], "members":{ "ResourceId":{ "shape":"String", "locationName":"resourceId" }, "Error":{ "shape":"UnsuccessfulItemError", "locationName":"error" } } }, "UnsuccessfulItemError":{ "type":"structure", "required":[ "Code", "Message" ], "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "UnsuccessfulItemList":{ "type":"list", "member":{ "shape":"UnsuccessfulItem", "locationName":"item" } }, "UnsuccessfulItemSet":{ "type":"list", "member":{ "shape":"UnsuccessfulItem", "locationName":"item" } }, "UserBucket":{ "type":"structure", "members":{ "S3Bucket":{"shape":"String"}, "S3Key":{"shape":"String"} } }, "UserBucketDetails":{ "type":"structure", "members":{ "S3Bucket":{ "shape":"String", "locationName":"s3Bucket" }, "S3Key":{ "shape":"String", "locationName":"s3Key" } } }, "UserData":{ "type":"structure", "members":{ "Data":{ "shape":"String", "locationName":"data" } } }, "UserGroupStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"UserGroup" } }, "UserIdGroupPair":{ "type":"structure", "members":{ "UserId":{ "shape":"String", "locationName":"userId" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "GroupId":{ "shape":"String", "locationName":"groupId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" }, "PeeringStatus":{ "shape":"String", "locationName":"peeringStatus" } } }, "UserIdGroupPairList":{ "type":"list", "member":{ "shape":"UserIdGroupPair", "locationName":"item" } }, "UserIdGroupPairSet":{ "type":"list", "member":{ "shape":"UserIdGroupPair", "locationName":"item" } }, "UserIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"UserId" } }, "ValueStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "VgwTelemetry":{ "type":"structure", "members":{ "OutsideIpAddress":{ "shape":"String", "locationName":"outsideIpAddress" }, "Status":{ "shape":"TelemetryStatus", "locationName":"status" }, "LastStatusChange":{ "shape":"DateTime", "locationName":"lastStatusChange" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "AcceptedRouteCount":{ "shape":"Integer", "locationName":"acceptedRouteCount" } } }, "VgwTelemetryList":{ "type":"list", "member":{ "shape":"VgwTelemetry", "locationName":"item" } }, "VirtualizationType":{ "type":"string", "enum":[ "hvm", "paravirtual" ] }, "Volume":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "Size":{ "shape":"Integer", "locationName":"size" }, "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "State":{ "shape":"VolumeState", "locationName":"status" }, "CreateTime":{ "shape":"DateTime", "locationName":"createTime" }, "Attachments":{ "shape":"VolumeAttachmentList", "locationName":"attachmentSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "VolumeType":{ "shape":"VolumeType", "locationName":"volumeType" }, "Iops":{ "shape":"Integer", "locationName":"iops" }, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{ "shape":"String", "locationName":"kmsKeyId" } } }, "VolumeAttachment":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Device":{ "shape":"String", "locationName":"device" }, "State":{ "shape":"VolumeAttachmentState", "locationName":"status" }, "AttachTime":{ "shape":"DateTime", "locationName":"attachTime" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "VolumeAttachmentList":{ "type":"list", "member":{ "shape":"VolumeAttachment", "locationName":"item" } }, "VolumeAttachmentState":{ "type":"string", "enum":[ "attaching", "attached", "detaching", "detached" ] }, "VolumeAttributeName":{ "type":"string", "enum":[ "autoEnableIO", "productCodes" ] }, "VolumeDetail":{ "type":"structure", "required":["Size"], "members":{ "Size":{ "shape":"Long", "locationName":"size" } } }, "VolumeIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"VolumeId" } }, "VolumeList":{ "type":"list", "member":{ "shape":"Volume", "locationName":"item" } }, "VolumeState":{ "type":"string", "enum":[ "creating", "available", "in-use", "deleting", "deleted", "error" ] }, "VolumeStatusAction":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Description":{ "shape":"String", "locationName":"description" }, "EventType":{ "shape":"String", "locationName":"eventType" }, "EventId":{ "shape":"String", "locationName":"eventId" } } }, "VolumeStatusActionsList":{ "type":"list", "member":{ "shape":"VolumeStatusAction", "locationName":"item" } }, "VolumeStatusDetails":{ "type":"structure", "members":{ "Name":{ "shape":"VolumeStatusName", "locationName":"name" }, "Status":{ "shape":"String", "locationName":"status" } } }, "VolumeStatusDetailsList":{ "type":"list", "member":{ "shape":"VolumeStatusDetails", "locationName":"item" } }, "VolumeStatusEvent":{ "type":"structure", "members":{ "EventType":{ "shape":"String", "locationName":"eventType" }, "Description":{ "shape":"String", "locationName":"description" }, "NotBefore":{ "shape":"DateTime", "locationName":"notBefore" }, "NotAfter":{ "shape":"DateTime", "locationName":"notAfter" }, "EventId":{ "shape":"String", "locationName":"eventId" } } }, "VolumeStatusEventsList":{ "type":"list", "member":{ "shape":"VolumeStatusEvent", "locationName":"item" } }, "VolumeStatusInfo":{ "type":"structure", "members":{ "Status":{ "shape":"VolumeStatusInfoStatus", "locationName":"status" }, "Details":{ "shape":"VolumeStatusDetailsList", "locationName":"details" } } }, "VolumeStatusInfoStatus":{ "type":"string", "enum":[ "ok", "impaired", "insufficient-data" ] }, "VolumeStatusItem":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "VolumeStatus":{ "shape":"VolumeStatusInfo", "locationName":"volumeStatus" }, "Events":{ "shape":"VolumeStatusEventsList", "locationName":"eventsSet" }, "Actions":{ "shape":"VolumeStatusActionsList", "locationName":"actionsSet" } } }, "VolumeStatusList":{ "type":"list", "member":{ "shape":"VolumeStatusItem", "locationName":"item" } }, "VolumeStatusName":{ "type":"string", "enum":[ "io-enabled", "io-performance" ] }, "VolumeType":{ "type":"string", "enum":[ "standard", "io1", "gp2", "sc1", "st1" ] }, "Vpc":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "State":{ "shape":"VpcState", "locationName":"state" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "DhcpOptionsId":{ "shape":"String", "locationName":"dhcpOptionsId" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" }, "IsDefault":{ "shape":"Boolean", "locationName":"isDefault" } } }, "VpcAttachment":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "State":{ "shape":"AttachmentStatus", "locationName":"state" } } }, "VpcAttachmentList":{ "type":"list", "member":{ "shape":"VpcAttachment", "locationName":"item" } }, "VpcAttributeName":{ "type":"string", "enum":[ "enableDnsSupport", "enableDnsHostnames" ] }, "VpcClassicLink":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "ClassicLinkEnabled":{ "shape":"Boolean", "locationName":"classicLinkEnabled" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "VpcClassicLinkIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpcId" } }, "VpcClassicLinkList":{ "type":"list", "member":{ "shape":"VpcClassicLink", "locationName":"item" } }, "VpcEndpoint":{ "type":"structure", "members":{ "VpcEndpointId":{ "shape":"String", "locationName":"vpcEndpointId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "ServiceName":{ "shape":"String", "locationName":"serviceName" }, "State":{ "shape":"State", "locationName":"state" }, "PolicyDocument":{ "shape":"String", "locationName":"policyDocument" }, "RouteTableIds":{ "shape":"ValueStringList", "locationName":"routeTableIdSet" }, "CreationTimestamp":{ "shape":"DateTime", "locationName":"creationTimestamp" } } }, "VpcEndpointSet":{ "type":"list", "member":{ "shape":"VpcEndpoint", "locationName":"item" } }, "VpcIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpcId" } }, "VpcList":{ "type":"list", "member":{ "shape":"Vpc", "locationName":"item" } }, "VpcPeeringConnection":{ "type":"structure", "members":{ "AccepterVpcInfo":{ "shape":"VpcPeeringConnectionVpcInfo", "locationName":"accepterVpcInfo" }, "ExpirationTime":{ "shape":"DateTime", "locationName":"expirationTime" }, "RequesterVpcInfo":{ "shape":"VpcPeeringConnectionVpcInfo", "locationName":"requesterVpcInfo" }, "Status":{ "shape":"VpcPeeringConnectionStateReason", "locationName":"status" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "VpcPeeringConnectionList":{ "type":"list", "member":{ "shape":"VpcPeeringConnection", "locationName":"item" } }, "VpcPeeringConnectionOptionsDescription":{ "type":"structure", "members":{ "AllowEgressFromLocalClassicLinkToRemoteVpc":{ "shape":"Boolean", "locationName":"allowEgressFromLocalClassicLinkToRemoteVpc" }, "AllowEgressFromLocalVpcToRemoteClassicLink":{ "shape":"Boolean", "locationName":"allowEgressFromLocalVpcToRemoteClassicLink" }, "AllowDnsResolutionFromRemoteVpc":{ "shape":"Boolean", "locationName":"allowDnsResolutionFromRemoteVpc" } } }, "VpcPeeringConnectionStateReason":{ "type":"structure", "members":{ "Code":{ "shape":"VpcPeeringConnectionStateReasonCode", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "VpcPeeringConnectionStateReasonCode":{ "type":"string", "enum":[ "initiating-request", "pending-acceptance", "active", "deleted", "rejected", "failed", "expired", "provisioning", "deleting" ] }, "VpcPeeringConnectionVpcInfo":{ "type":"structure", "members":{ "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "PeeringOptions":{ "shape":"VpcPeeringConnectionOptionsDescription", "locationName":"peeringOptions" } } }, "VpcState":{ "type":"string", "enum":[ "pending", "available" ] }, "VpnConnection":{ "type":"structure", "members":{ "VpnConnectionId":{ "shape":"String", "locationName":"vpnConnectionId" }, "State":{ "shape":"VpnState", "locationName":"state" }, "CustomerGatewayConfiguration":{ "shape":"String", "locationName":"customerGatewayConfiguration" }, "Type":{ "shape":"GatewayType", "locationName":"type" }, "CustomerGatewayId":{ "shape":"String", "locationName":"customerGatewayId" }, "VpnGatewayId":{ "shape":"String", "locationName":"vpnGatewayId" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "VgwTelemetry":{ "shape":"VgwTelemetryList", "locationName":"vgwTelemetry" }, "Options":{ "shape":"VpnConnectionOptions", "locationName":"options" }, "Routes":{ "shape":"VpnStaticRouteList", "locationName":"routes" } } }, "VpnConnectionIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpnConnectionId" } }, "VpnConnectionList":{ "type":"list", "member":{ "shape":"VpnConnection", "locationName":"item" } }, "VpnConnectionOptions":{ "type":"structure", "members":{ "StaticRoutesOnly":{ "shape":"Boolean", "locationName":"staticRoutesOnly" } } }, "VpnConnectionOptionsSpecification":{ "type":"structure", "members":{ "StaticRoutesOnly":{ "shape":"Boolean", "locationName":"staticRoutesOnly" } } }, "VpnGateway":{ "type":"structure", "members":{ "VpnGatewayId":{ "shape":"String", "locationName":"vpnGatewayId" }, "State":{ "shape":"VpnState", "locationName":"state" }, "Type":{ "shape":"GatewayType", "locationName":"type" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "VpcAttachments":{ "shape":"VpcAttachmentList", "locationName":"attachments" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "VpnGatewayIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpnGatewayId" } }, "VpnGatewayList":{ "type":"list", "member":{ "shape":"VpnGateway", "locationName":"item" } }, "VpnState":{ "type":"string", "enum":[ "pending", "available", "deleting", "deleted" ] }, "VpnStaticRoute":{ "type":"structure", "members":{ "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" }, "Source":{ "shape":"VpnStaticRouteSource", "locationName":"source" }, "State":{ "shape":"VpnState", "locationName":"state" } } }, "VpnStaticRouteList":{ "type":"list", "member":{ "shape":"VpnStaticRoute", "locationName":"item" } }, "VpnStaticRouteSource":{ "type":"string", "enum":["Static"] }, "ZoneNameStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ZoneName" } } } } aws-sdk-go-1.4.22/models/apis/ec2/2016-04-01/docs-2.json000066400000000000000000023156021300374646400214750ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon Elastic Compute Cloud

        Amazon Elastic Compute Cloud (Amazon EC2) provides resizable computing capacity in the Amazon Web Services (AWS) cloud. Using Amazon EC2 eliminates your need to invest in hardware up front, so you can develop and deploy applications faster.

        ", "operations": { "AcceptVpcPeeringConnection": "

        Accept a VPC peering connection request. To accept a request, the VPC peering connection must be in the pending-acceptance state, and you must be the owner of the peer VPC. Use the DescribeVpcPeeringConnections request to view your outstanding VPC peering connection requests.

        ", "AllocateAddress": "

        Acquires an Elastic IP address.

        An Elastic IP address is for use either in the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        ", "AllocateHosts": "

        Allocates a Dedicated Host to your account. At minimum you need to specify the instance size type, Availability Zone, and quantity of hosts you want to allocate.

        ", "AssignPrivateIpAddresses": "

        Assigns one or more secondary private IP addresses to the specified network interface. You can specify one or more specific secondary IP addresses, or you can specify the number of secondary IP addresses to be automatically assigned within the subnet's CIDR block range. The number of secondary IP addresses that you can assign to an instance varies by instance type. For information about instance types, see Instance Types in the Amazon Elastic Compute Cloud User Guide. For more information about Elastic IP addresses, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        AssignPrivateIpAddresses is available only in EC2-VPC.

        ", "AssociateAddress": "

        Associates an Elastic IP address with an instance or a network interface.

        An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        [EC2-Classic, VPC in an EC2-VPC-only account] If the Elastic IP address is already associated with a different instance, it is disassociated from that instance and associated with the specified instance.

        [VPC in an EC2-Classic account] If you don't specify a private IP address, the Elastic IP address is associated with the primary IP address. If the Elastic IP address is already associated with a different instance or a network interface, you get an error unless you allow reassociation.

        This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error, and you may be charged for each time the Elastic IP address is remapped to the same instance. For more information, see the Elastic IP Addresses section of Amazon EC2 Pricing.

        ", "AssociateDhcpOptions": "

        Associates a set of DHCP options (that you've previously created) with the specified VPC, or associates no DHCP options with the VPC.

        After you associate the options with the VPC, any existing instances and all new instances that you launch in that VPC use the options. You don't need to restart or relaunch the instances. They automatically pick up the changes within a few hours, depending on how frequently the instance renews its DHCP lease. You can explicitly renew the lease using the operating system on the instance.

        For more information, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.

        ", "AssociateRouteTable": "

        Associates a subnet with a route table. The subnet and route table must be in the same VPC. This association causes traffic originating from the subnet to be routed according to the routes in the route table. The action returns an association ID, which you need in order to disassociate the route table from the subnet later. A route table can be associated with multiple subnets.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "AttachClassicLinkVpc": "

        Links an EC2-Classic instance to a ClassicLink-enabled VPC through one or more of the VPC's security groups. You cannot link an EC2-Classic instance to more than one VPC at a time. You can only link an instance that's in the running state. An instance is automatically unlinked from a VPC when it's stopped - you can link it to the VPC again when you restart it.

        After you've linked an instance, you cannot change the VPC security groups that are associated with it. To change the security groups, you must first unlink the instance, and then link it again.

        Linking your instance to a VPC is sometimes referred to as attaching your instance.

        ", "AttachInternetGateway": "

        Attaches an Internet gateway to a VPC, enabling connectivity between the Internet and the VPC. For more information about your VPC and Internet gateway, see the Amazon Virtual Private Cloud User Guide.

        ", "AttachNetworkInterface": "

        Attaches a network interface to an instance.

        ", "AttachVolume": "

        Attaches an EBS volume to a running or stopped instance and exposes it to the instance with the specified device name.

        Encrypted EBS volumes may only be attached to instances that support Amazon EBS encryption. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        For a list of supported device names, see Attaching an EBS Volume to an Instance. Any device names that aren't reserved for instance store volumes can be used for EBS volumes. For more information, see Amazon EC2 Instance Store in the Amazon Elastic Compute Cloud User Guide.

        If a volume has an AWS Marketplace product code:

        • The volume can be attached only to a stopped instance.

        • AWS Marketplace product codes are copied from the volume to the instance.

        • You must be subscribed to the product.

        • The instance type and operating system of the instance must support the product. For example, you can't detach a volume from a Windows instance and attach it to a Linux instance.

        For an overview of the AWS Marketplace, see Introducing AWS Marketplace.

        For more information about EBS volumes, see Attaching Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.

        ", "AttachVpnGateway": "

        Attaches a virtual private gateway to a VPC. For more information, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "AuthorizeSecurityGroupEgress": "

        [EC2-VPC only] Adds one or more egress rules to a security group for use with a VPC. Specifically, this action permits instances to send traffic to one or more destination CIDR IP address ranges, or to one or more destination security groups for the same VPC. This action doesn't apply to security groups for use in EC2-Classic. For more information, see Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.

        You can have up to 50 rules per security group (covering both ingress and egress rules).

        Each rule consists of the protocol (for example, TCP), plus either a CIDR range or a source group. For the TCP and UDP protocols, you must also specify the destination port or port range. For the ICMP protocol, you must also specify the ICMP type and code. You can use -1 for the type or code to mean all types or all codes.

        Rule changes are propagated to affected instances as quickly as possible. However, a small delay might occur.

        ", "AuthorizeSecurityGroupIngress": "

        Adds one or more ingress rules to a security group.

        EC2-Classic: You can have up to 100 rules per group.

        EC2-VPC: You can have up to 50 rules per group (covering both ingress and egress rules).

        Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

        [EC2-Classic] This action gives one or more CIDR IP address ranges permission to access a security group in your account, or gives one or more security groups (called the source groups) permission to access a security group for your account. A source group can be for your own AWS account, or another.

        [EC2-VPC] This action gives one or more CIDR IP address ranges permission to access a security group in your VPC, or gives one or more other security groups (called the source groups) permission to access a security group for your VPC. The security groups must all be for the same VPC.

        ", "BundleInstance": "

        Bundles an Amazon instance store-backed Windows instance.

        During bundling, only the root device volume (C:\\) is bundled. Data on other instance store volumes is not preserved.

        This action is not applicable for Linux/Unix instances or Windows instances that are backed by Amazon EBS.

        For more information, see Creating an Instance Store-Backed Windows AMI.

        ", "CancelBundleTask": "

        Cancels a bundling operation for an instance store-backed Windows instance.

        ", "CancelConversionTask": "

        Cancels an active conversion task. The task can be the import of an instance or volume. The action removes all artifacts of the conversion, including a partially uploaded volume or instance. If the conversion is complete or is in the process of transferring the final disk image, the command fails and returns an exception.

        For more information, see Importing a Virtual Machine Using the Amazon EC2 CLI.

        ", "CancelExportTask": "

        Cancels an active export task. The request removes all artifacts of the export, including any partially-created Amazon S3 objects. If the export task is complete or is in the process of transferring the final disk image, the command fails and returns an error.

        ", "CancelImportTask": "

        Cancels an in-process import virtual machine or import snapshot task.

        ", "CancelReservedInstancesListing": "

        Cancels the specified Reserved Instance listing in the Reserved Instance Marketplace.

        For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "CancelSpotFleetRequests": "

        Cancels the specified Spot fleet requests.

        After you cancel a Spot fleet request, the Spot fleet launches no new Spot instances. You must specify whether the Spot fleet should also terminate its Spot instances. If you terminate the instances, the Spot fleet request enters the cancelled_terminating state. Otherwise, the Spot fleet request enters the cancelled_running state and the instances continue to run until they are interrupted or you terminate them manually.

        ", "CancelSpotInstanceRequests": "

        Cancels one or more Spot instance requests. Spot instances are instances that Amazon EC2 starts on your behalf when the bid price that you specify exceeds the current Spot price. Amazon EC2 periodically sets the Spot price based on available Spot instance capacity and current Spot instance requests. For more information, see Spot Instance Requests in the Amazon Elastic Compute Cloud User Guide.

        Canceling a Spot instance request does not terminate running Spot instances associated with the request.

        ", "ConfirmProductInstance": "

        Determines whether a product code is associated with an instance. This action can only be used by the owner of the product code. It is useful when a product code owner needs to verify whether another user's instance is eligible for support.

        ", "CopyImage": "

        Initiates the copy of an AMI from the specified source region to the current region. You specify the destination region by using its endpoint when making the request.

        For more information, see Copying AMIs in the Amazon Elastic Compute Cloud User Guide.

        ", "CopySnapshot": "

        Copies a point-in-time snapshot of an EBS volume and stores it in Amazon S3. You can copy the snapshot within the same region or from one region to another. You can use the snapshot to create EBS volumes or Amazon Machine Images (AMIs). The snapshot is copied to the regional endpoint that you send the HTTP request to.

        Copies of encrypted EBS snapshots remain encrypted. Copies of unencrypted snapshots remain unencrypted, unless the Encrypted flag is specified during the snapshot copy operation. By default, encrypted snapshot copies use the default AWS Key Management Service (AWS KMS) customer master key (CMK); however, you can specify a non-default CMK with the KmsKeyId parameter.

        To copy an encrypted snapshot that has been shared from another account, you must have permissions for the CMK used to encrypt the snapshot.

        Snapshots created by the CopySnapshot action have an arbitrary volume ID that should not be used for any purpose.

        For more information, see Copying an Amazon EBS Snapshot in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateCustomerGateway": "

        Provides information to AWS about your VPN customer gateway device. The customer gateway is the appliance at your end of the VPN connection. (The device on the AWS side of the VPN connection is the virtual private gateway.) You must provide the Internet-routable IP address of the customer gateway's external interface. The IP address must be static and may be behind a device performing network address translation (NAT).

        For devices that use Border Gateway Protocol (BGP), you can also provide the device's BGP Autonomous System Number (ASN). You can use an existing ASN assigned to your network. If you don't have an ASN already, you can use a private ASN (in the 64512 - 65534 range).

        Amazon EC2 supports all 2-byte ASN numbers in the range of 1 - 65534, with the exception of 7224, which is reserved in the us-east-1 region, and 9059, which is reserved in the eu-west-1 region.

        For more information about VPN customer gateways, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        You cannot create more than one customer gateway with the same VPN type, IP address, and BGP ASN parameter values. If you run an identical request more than one time, the first request creates the customer gateway, and subsequent requests return information about the existing customer gateway. The subsequent requests do not create new customer gateway resources.

        ", "CreateDhcpOptions": "

        Creates a set of DHCP options for your VPC. After creating the set, you must associate it with the VPC, causing all existing and new instances that you launch in the VPC to use this set of DHCP options. The following are the individual DHCP options you can specify. For more information about the options, see RFC 2132.

        • domain-name-servers - The IP addresses of up to four domain name servers, or AmazonProvidedDNS. The default DHCP option set specifies AmazonProvidedDNS. If specifying more than one domain name server, specify the IP addresses in a single parameter, separated by commas. If you want your instance to receive a custom DNS hostname as specified in domain-name, you must set domain-name-servers to a custom DNS server.

        • domain-name - If you're using AmazonProvidedDNS in \"us-east-1\", specify \"ec2.internal\". If you're using AmazonProvidedDNS in another region, specify \"region.compute.internal\" (for example, \"ap-northeast-1.compute.internal\"). Otherwise, specify a domain name (for example, \"MyCompany.com\"). This value is used to complete unqualified DNS hostnames. Important: Some Linux operating systems accept multiple domain names separated by spaces. However, Windows and other Linux operating systems treat the value as a single domain, which results in unexpected behavior. If your DHCP options set is associated with a VPC that has instances with multiple operating systems, specify only one domain name.

        • ntp-servers - The IP addresses of up to four Network Time Protocol (NTP) servers.

        • netbios-name-servers - The IP addresses of up to four NetBIOS name servers.

        • netbios-node-type - The NetBIOS node type (1, 2, 4, or 8). We recommend that you specify 2 (broadcast and multicast are not currently supported). For more information about these node types, see RFC 2132.

        Your VPC automatically starts out with a set of DHCP options that includes only a DNS server that we provide (AmazonProvidedDNS). If you create a set of options, and if your VPC has an Internet gateway, make sure to set the domain-name-servers option either to AmazonProvidedDNS or to a domain name server of your choice. For more information about DHCP options, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.

        ", "CreateFlowLogs": "

        Creates one or more flow logs to capture IP traffic for a specific network interface, subnet, or VPC. Flow logs are delivered to a specified log group in Amazon CloudWatch Logs. If you specify a VPC or subnet in the request, a log stream is created in CloudWatch Logs for each network interface in the subnet or VPC. Log streams can include information about accepted and rejected traffic to a network interface. You can view the data in your log streams using Amazon CloudWatch Logs.

        In your request, you must also specify an IAM role that has permission to publish logs to CloudWatch Logs.

        ", "CreateImage": "

        Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance that is either running or stopped.

        If you customized your instance with instance store volumes or EBS volumes in addition to the root device volume, the new AMI contains block device mapping information for those volumes. When you launch an instance from this new AMI, the instance automatically launches with those additional volumes.

        For more information, see Creating Amazon EBS-Backed Linux AMIs in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateInstanceExportTask": "

        Exports a running or stopped instance to an S3 bucket.

        For information about the supported operating systems, image formats, and known limitations for the types of instances you can export, see Exporting an Instance as a VM Using VM Import/Export in the VM Import/Export User Guide.

        ", "CreateInternetGateway": "

        Creates an Internet gateway for use with a VPC. After creating the Internet gateway, you attach it to a VPC using AttachInternetGateway.

        For more information about your VPC and Internet gateway, see the Amazon Virtual Private Cloud User Guide.

        ", "CreateKeyPair": "

        Creates a 2048-bit RSA key pair with the specified name. Amazon EC2 stores the public key and displays the private key for you to save to a file. The private key is returned as an unencrypted PEM encoded PKCS#8 private key. If a key with the specified name already exists, Amazon EC2 returns an error.

        You can have up to five thousand key pairs per region.

        The key pair returned to you is available only in the region in which you create it. To create a key pair that is available in all regions, use ImportKeyPair.

        For more information about key pairs, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateNatGateway": "

        Creates a NAT gateway in the specified subnet. A NAT gateway can be used to enable instances in a private subnet to connect to the Internet. This action creates a network interface in the specified subnet with a private IP address from the IP address range of the subnet. For more information, see NAT Gateways in the Amazon Virtual Private Cloud User Guide.

        ", "CreateNetworkAcl": "

        Creates a network ACL in a VPC. Network ACLs provide an optional layer of security (in addition to security groups) for the instances in your VPC.

        For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "CreateNetworkAclEntry": "

        Creates an entry (a rule) in a network ACL with the specified rule number. Each network ACL has a set of numbered ingress rules and a separate set of numbered egress rules. When determining whether a packet should be allowed in or out of a subnet associated with the ACL, we process the entries in the ACL according to the rule numbers, in ascending order. Each network ACL has a set of ingress rules and a separate set of egress rules.

        We recommend that you leave room between the rule numbers (for example, 100, 110, 120, ...), and not number them one right after the other (for example, 101, 102, 103, ...). This makes it easier to add a rule between existing ones without having to renumber the rules.

        After you add an entry, you can't modify it; you must either replace it, or create an entry and delete the old one.

        For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "CreateNetworkInterface": "

        Creates a network interface in the specified subnet.

        For more information about network interfaces, see Elastic Network Interfaces in the Amazon Elastic Compute Cloud User Guide.

        ", "CreatePlacementGroup": "

        Creates a placement group that you launch cluster instances into. You must give the group a name that's unique within the scope of your account.

        For more information about placement groups and cluster instances, see Cluster Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateReservedInstancesListing": "

        Creates a listing for Amazon EC2 Reserved Instances to be sold in the Reserved Instance Marketplace. You can submit one Reserved Instance listing at a time. To get a list of your Reserved Instances, you can use the DescribeReservedInstances operation.

        The Reserved Instance Marketplace matches sellers who want to resell Reserved Instance capacity that they no longer need with buyers who want to purchase additional capacity. Reserved Instances bought and sold through the Reserved Instance Marketplace work like any other Reserved Instances.

        To sell your Reserved Instances, you must first register as a seller in the Reserved Instance Marketplace. After completing the registration process, you can create a Reserved Instance Marketplace listing of some or all of your Reserved Instances, and specify the upfront price to receive for them. Your Reserved Instance listings then become available for purchase. To view the details of your Reserved Instance listing, you can use the DescribeReservedInstancesListings operation.

        For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateRoute": "

        Creates a route in a route table within a VPC.

        You must specify one of the following targets: Internet gateway or virtual private gateway, NAT instance, NAT gateway, VPC peering connection, or network interface.

        When determining how to route traffic, we use the route with the most specific match. For example, let's say the traffic is destined for 192.0.2.3, and the route table includes the following two routes:

        • 192.0.2.0/24 (goes to some target A)

        • 192.0.2.0/28 (goes to some target B)

        Both routes apply to the traffic destined for 192.0.2.3. However, the second route in the list covers a smaller number of IP addresses and is therefore more specific, so we use that route to determine where to target the traffic.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "CreateRouteTable": "

        Creates a route table for the specified VPC. After you create a route table, you can add routes and associate the table with a subnet.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "CreateSecurityGroup": "

        Creates a security group.

        A security group is for use with instances either in the EC2-Classic platform or in a specific VPC. For more information, see Amazon EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide and Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.

        EC2-Classic: You can have up to 500 security groups.

        EC2-VPC: You can create up to 500 security groups per VPC.

        When you create a security group, you specify a friendly name of your choice. You can have a security group for use in EC2-Classic with the same name as a security group for use in a VPC. However, you can't have two security groups for use in EC2-Classic with the same name or two security groups for use in a VPC with the same name.

        You have a default security group for use in EC2-Classic and a default security group for use in your VPC. If you don't specify a security group when you launch an instance, the instance is launched into the appropriate default security group. A default security group includes a default rule that grants instances unrestricted network access to each other.

        You can add or remove rules from your security groups using AuthorizeSecurityGroupIngress, AuthorizeSecurityGroupEgress, RevokeSecurityGroupIngress, and RevokeSecurityGroupEgress.

        ", "CreateSnapshot": "

        Creates a snapshot of an EBS volume and stores it in Amazon S3. You can use snapshots for backups, to make copies of EBS volumes, and to save data before shutting down an instance.

        When a snapshot is created, any AWS Marketplace product codes that are associated with the source volume are propagated to the snapshot.

        You can take a snapshot of an attached volume that is in use. However, snapshots only capture data that has been written to your EBS volume at the time the snapshot command is issued; this may exclude any data that has been cached by any applications or the operating system. If you can pause any file systems on the volume long enough to take a snapshot, your snapshot should be complete. However, if you cannot pause all file writes to the volume, you should unmount the volume from within the instance, issue the snapshot command, and then remount the volume to ensure a consistent and complete snapshot. You may remount and use your volume while the snapshot status is pending.

        To create a snapshot for EBS volumes that serve as root devices, you should stop the instance before taking the snapshot.

        Snapshots that are taken from encrypted volumes are automatically encrypted. Volumes that are created from encrypted snapshots are also automatically encrypted. Your encrypted volumes and any associated snapshots always remain protected.

        For more information, see Amazon Elastic Block Store and Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateSpotDatafeedSubscription": "

        Creates a data feed for Spot instances, enabling you to view Spot instance usage logs. You can create one data feed per AWS account. For more information, see Spot Instance Data Feed in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateSubnet": "

        Creates a subnet in an existing VPC.

        When you create each subnet, you provide the VPC ID and the CIDR block you want for the subnet. After you create a subnet, you can't change its CIDR block. The subnet's CIDR block can be the same as the VPC's CIDR block (assuming you want only a single subnet in the VPC), or a subset of the VPC's CIDR block. If you create more than one subnet in a VPC, the subnets' CIDR blocks must not overlap. The smallest subnet (and VPC) you can create uses a /28 netmask (16 IP addresses), and the largest uses a /16 netmask (65,536 IP addresses).

        AWS reserves both the first four and the last IP address in each subnet's CIDR block. They're not available for use.

        If you add more than one subnet to a VPC, they're set up in a star topology with a logical router in the middle.

        If you launch an instance in a VPC using an Amazon EBS-backed AMI, the IP address doesn't change if you stop and restart the instance (unlike a similar instance launched outside a VPC, which gets a new IP address when restarted). It's therefore possible to have a subnet with no running instances (they're all stopped), but no remaining IP addresses available.

        For more information about subnets, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide.

        ", "CreateTags": "

        Adds or overwrites one or more tags for the specified Amazon EC2 resource or resources. Each resource can have a maximum of 50 tags. Each tag consists of a key and optional value. Tag keys must be unique per resource.

        For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide. For more information about creating IAM policies that control users' access to resources based on tags, see Supported Resource-Level Permissions for Amazon EC2 API Actions in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateVolume": "

        Creates an EBS volume that can be attached to an instance in the same Availability Zone. The volume is created in the regional endpoint that you send the HTTP request to. For more information see Regions and Endpoints.

        You can create a new empty volume or restore a volume from an EBS snapshot. Any AWS Marketplace product codes from the snapshot are propagated to the volume.

        You can create encrypted volumes with the Encrypted parameter. Encrypted volumes may only be attached to instances that support Amazon EBS encryption. Volumes that are created from encrypted snapshots are also automatically encrypted. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        For more information, see Creating or Restoring an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateVpc": "

        Creates a VPC with the specified CIDR block.

        The smallest VPC you can create uses a /28 netmask (16 IP addresses), and the largest uses a /16 netmask (65,536 IP addresses). To help you decide how big to make your VPC, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide.

        By default, each instance you launch in the VPC has the default DHCP options, which includes only a default DNS server that we provide (AmazonProvidedDNS). For more information about DHCP options, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.

        You can specify the instance tenancy value for the VPC when you create it. You can't change this value for the VPC after you create it. For more information, see Dedicated Instances in the Amazon Virtual Private Cloud User Guide.

        ", "CreateVpcEndpoint": "

        Creates a VPC endpoint for a specified AWS service. An endpoint enables you to create a private connection between your VPC and another AWS service in your account. You can specify an endpoint policy to attach to the endpoint that will control access to the service from your VPC. You can also specify the VPC route tables that use the endpoint.

        Currently, only endpoints to Amazon S3 are supported.

        ", "CreateVpcPeeringConnection": "

        Requests a VPC peering connection between two VPCs: a requester VPC that you own and a peer VPC with which to create the connection. The peer VPC can belong to another AWS account. The requester VPC and peer VPC cannot have overlapping CIDR blocks.

        The owner of the peer VPC must accept the peering request to activate the peering connection. The VPC peering connection request expires after 7 days, after which it cannot be accepted or rejected.

        A CreateVpcPeeringConnection request between VPCs with overlapping CIDR blocks results in the VPC peering connection having a status of failed.

        ", "CreateVpnConnection": "

        Creates a VPN connection between an existing virtual private gateway and a VPN customer gateway. The only supported connection type is ipsec.1.

        The response includes information that you need to give to your network administrator to configure your customer gateway.

        We strongly recommend that you use HTTPS when calling this operation because the response contains sensitive cryptographic information for configuring your customer gateway.

        If you decide to shut down your VPN connection for any reason and later create a new VPN connection, you must reconfigure your customer gateway with the new information returned from this call.

        This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error.

        For more information about VPN connections, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "CreateVpnConnectionRoute": "

        Creates a static route associated with a VPN connection between an existing virtual private gateway and a VPN customer gateway. The static route allows traffic to be routed from the virtual private gateway to the VPN customer gateway.

        For more information about VPN connections, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "CreateVpnGateway": "

        Creates a virtual private gateway. A virtual private gateway is the endpoint on the VPC side of your VPN connection. You can create a virtual private gateway before creating the VPC itself.

        For more information about virtual private gateways, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DeleteCustomerGateway": "

        Deletes the specified customer gateway. You must delete the VPN connection before you can delete the customer gateway.

        ", "DeleteDhcpOptions": "

        Deletes the specified set of DHCP options. You must disassociate the set of DHCP options before you can delete it. You can disassociate the set of DHCP options by associating either a new set of options or the default set of options with the VPC.

        ", "DeleteFlowLogs": "

        Deletes one or more flow logs.

        ", "DeleteInternetGateway": "

        Deletes the specified Internet gateway. You must detach the Internet gateway from the VPC before you can delete it.

        ", "DeleteKeyPair": "

        Deletes the specified key pair, by removing the public key from Amazon EC2.

        ", "DeleteNatGateway": "

        Deletes the specified NAT gateway. Deleting a NAT gateway disassociates its Elastic IP address, but does not release the address from your account. Deleting a NAT gateway does not delete any NAT gateway routes in your route tables.

        ", "DeleteNetworkAcl": "

        Deletes the specified network ACL. You can't delete the ACL if it's associated with any subnets. You can't delete the default network ACL.

        ", "DeleteNetworkAclEntry": "

        Deletes the specified ingress or egress entry (rule) from the specified network ACL.

        ", "DeleteNetworkInterface": "

        Deletes the specified network interface. You must detach the network interface before you can delete it.

        ", "DeletePlacementGroup": "

        Deletes the specified placement group. You must terminate all instances in the placement group before you can delete the placement group. For more information about placement groups and cluster instances, see Cluster Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "DeleteRoute": "

        Deletes the specified route from the specified route table.

        ", "DeleteRouteTable": "

        Deletes the specified route table. You must disassociate the route table from any subnets before you can delete it. You can't delete the main route table.

        ", "DeleteSecurityGroup": "

        Deletes a security group.

        If you attempt to delete a security group that is associated with an instance, or is referenced by another security group, the operation fails with InvalidGroup.InUse in EC2-Classic or DependencyViolation in EC2-VPC.

        ", "DeleteSnapshot": "

        Deletes the specified snapshot.

        When you make periodic snapshots of a volume, the snapshots are incremental, and only the blocks on the device that have changed since your last snapshot are saved in the new snapshot. When you delete a snapshot, only the data not needed for any other snapshot is removed. So regardless of which prior snapshots have been deleted, all active snapshots will have access to all the information needed to restore the volume.

        You cannot delete a snapshot of the root device of an EBS volume used by a registered AMI. You must first de-register the AMI before you can delete the snapshot.

        For more information, see Deleting an Amazon EBS Snapshot in the Amazon Elastic Compute Cloud User Guide.

        ", "DeleteSpotDatafeedSubscription": "

        Deletes the data feed for Spot instances.

        ", "DeleteSubnet": "

        Deletes the specified subnet. You must terminate all running instances in the subnet before you can delete the subnet.

        ", "DeleteTags": "

        Deletes the specified set of tags from the specified set of resources. This call is designed to follow a DescribeTags request.

        For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide.

        ", "DeleteVolume": "

        Deletes the specified EBS volume. The volume must be in the available state (not attached to an instance).

        The volume may remain in the deleting state for several minutes.

        For more information, see Deleting an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide.

        ", "DeleteVpc": "

        Deletes the specified VPC. You must detach or delete all gateways and resources that are associated with the VPC before you can delete it. For example, you must terminate all instances running in the VPC, delete all security groups associated with the VPC (except the default one), delete all route tables associated with the VPC (except the default one), and so on.

        ", "DeleteVpcEndpoints": "

        Deletes one or more specified VPC endpoints. Deleting the endpoint also deletes the endpoint routes in the route tables that were associated with the endpoint.

        ", "DeleteVpcPeeringConnection": "

        Deletes a VPC peering connection. Either the owner of the requester VPC or the owner of the peer VPC can delete the VPC peering connection if it's in the active state. The owner of the requester VPC can delete a VPC peering connection in the pending-acceptance state.

        ", "DeleteVpnConnection": "

        Deletes the specified VPN connection.

        If you're deleting the VPC and its associated components, we recommend that you detach the virtual private gateway from the VPC and delete the VPC before deleting the VPN connection. If you believe that the tunnel credentials for your VPN connection have been compromised, you can delete the VPN connection and create a new one that has new keys, without needing to delete the VPC or virtual private gateway. If you create a new VPN connection, you must reconfigure the customer gateway using the new configuration information returned with the new VPN connection ID.

        ", "DeleteVpnConnectionRoute": "

        Deletes the specified static route associated with a VPN connection between an existing virtual private gateway and a VPN customer gateway. The static route allows traffic to be routed from the virtual private gateway to the VPN customer gateway.

        ", "DeleteVpnGateway": "

        Deletes the specified virtual private gateway. We recommend that before you delete a virtual private gateway, you detach it from the VPC and delete the VPN connection. Note that you don't need to delete the virtual private gateway if you plan to delete and recreate the VPN connection between your VPC and your network.

        ", "DeregisterImage": "

        Deregisters the specified AMI. After you deregister an AMI, it can't be used to launch new instances.

        This command does not delete the AMI.

        ", "DescribeAccountAttributes": "

        Describes attributes of your AWS account. The following are the supported account attributes:

        • supported-platforms: Indicates whether your account can launch instances into EC2-Classic and EC2-VPC, or only into EC2-VPC.

        • default-vpc: The ID of the default VPC for your account, or none.

        • max-instances: The maximum number of On-Demand instances that you can run.

        • vpc-max-security-groups-per-interface: The maximum number of security groups that you can assign to a network interface.

        • max-elastic-ips: The maximum number of Elastic IP addresses that you can allocate for use with EC2-Classic.

        • vpc-max-elastic-ips: The maximum number of Elastic IP addresses that you can allocate for use with EC2-VPC.

        ", "DescribeAddresses": "

        Describes one or more of your Elastic IP addresses.

        An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeAvailabilityZones": "

        Describes one or more of the Availability Zones that are available to you. The results include zones only for the region you're currently using. If there is an event impacting an Availability Zone, you can use this request to view the state and any provided message for that Availability Zone.

        For more information, see Regions and Availability Zones in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeBundleTasks": "

        Describes one or more of your bundling tasks.

        Completed bundle tasks are listed for only a limited time. If your bundle task is no longer in the list, you can still register an AMI from it. Just use RegisterImage with the Amazon S3 bucket name and image manifest name you provided to the bundle task.

        ", "DescribeClassicLinkInstances": "

        Describes one or more of your linked EC2-Classic instances. This request only returns information about EC2-Classic instances linked to a VPC through ClassicLink; you cannot use this request to return information about other instances.

        ", "DescribeConversionTasks": "

        Describes one or more of your conversion tasks. For more information, see the VM Import/Export User Guide.

        For information about the import manifest referenced by this API action, see VM Import Manifest.

        ", "DescribeCustomerGateways": "

        Describes one or more of your VPN customer gateways.

        For more information about VPN customer gateways, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeDhcpOptions": "

        Describes one or more of your DHCP options sets.

        For more information about DHCP options sets, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeExportTasks": "

        Describes one or more of your export tasks.

        ", "DescribeFlowLogs": "

        Describes one or more flow logs. To view the information in your flow logs (the log streams for the network interfaces), you must use the CloudWatch Logs console or the CloudWatch Logs API.

        ", "DescribeHostReservationOfferings": "

        Describes the Dedicated Host Reservations that are available to purchase.

        The results describe all the Dedicated Host Reservation offerings, including offerings that may not match the instance family and region of your Dedicated Hosts. When purchasing an offering, ensure that the the instance family and region of the offering matches that of the Dedicated Host/s it will be associated with. For an overview of supported instance types, see Dedicated Hosts Overview in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeHostReservations": "

        Describes Dedicated Host Reservations which are associated with Dedicated Hosts in your account.

        ", "DescribeHosts": "

        Describes one or more of your Dedicated Hosts.

        The results describe only the Dedicated Hosts in the region you're currently using. All listed instances consume capacity on your Dedicated Host. Dedicated Hosts that have recently been released will be listed with the state released.

        ", "DescribeIdFormat": "

        Describes the ID format settings for your resources on a per-region basis, for example, to view which resource types are enabled for longer IDs. This request only returns information about resource types whose ID formats can be modified; it does not return information about other resource types.

        The following resource types support longer IDs: instance | reservation | snapshot | volume.

        These settings apply to the IAM user who makes the request; they do not apply to the entire AWS account. By default, an IAM user defaults to the same settings as the root user, unless they explicitly override the settings by running the ModifyIdFormat command. Resources created with longer IDs are visible to all IAM users, regardless of these settings and provided that they have permission to use the relevant Describe command for the resource type.

        ", "DescribeIdentityIdFormat": "

        Describes the ID format settings for resources for the specified IAM user, IAM role, or root user. For example, you can view the resource types that are enabled for longer IDs. This request only returns information about resource types whose ID formats can be modified; it does not return information about other resource types. For more information, see Resource IDs in the Amazon Elastic Compute Cloud User Guide.

        The following resource types support longer IDs: instance | reservation | snapshot | volume.

        These settings apply to the principal specified in the request. They do not apply to the principal that makes the request.

        ", "DescribeImageAttribute": "

        Describes the specified attribute of the specified AMI. You can specify only one attribute at a time.

        ", "DescribeImages": "

        Describes one or more of the images (AMIs, AKIs, and ARIs) available to you. Images available to you include public images, private images that you own, and private images owned by other AWS accounts but for which you have explicit launch permissions.

        Deregistered images are included in the returned results for an unspecified interval after deregistration.

        ", "DescribeImportImageTasks": "

        Displays details about an import virtual machine or import snapshot tasks that are already created.

        ", "DescribeImportSnapshotTasks": "

        Describes your import snapshot tasks.

        ", "DescribeInstanceAttribute": "

        Describes the specified attribute of the specified instance. You can specify only one attribute at a time. Valid attribute values are: instanceType | kernel | ramdisk | userData | disableApiTermination | instanceInitiatedShutdownBehavior | rootDeviceName | blockDeviceMapping | productCodes | sourceDestCheck | groupSet | ebsOptimized | sriovNetSupport

        ", "DescribeInstanceStatus": "

        Describes the status of one or more instances. By default, only running instances are described, unless specified otherwise.

        Instance status includes the following components:

        • Status checks - Amazon EC2 performs status checks on running EC2 instances to identify hardware and software issues. For more information, see Status Checks for Your Instances and Troubleshooting Instances with Failed Status Checks in the Amazon Elastic Compute Cloud User Guide.

        • Scheduled events - Amazon EC2 can schedule events (such as reboot, stop, or terminate) for your instances related to hardware issues, software updates, or system maintenance. For more information, see Scheduled Events for Your Instances in the Amazon Elastic Compute Cloud User Guide.

        • Instance state - You can manage your instances from the moment you launch them through their termination. For more information, see Instance Lifecycle in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeInstances": "

        Describes one or more of your instances.

        If you specify one or more instance IDs, Amazon EC2 returns information for those instances. If you do not specify instance IDs, Amazon EC2 returns information for all relevant instances. If you specify an instance ID that is not valid, an error is returned. If you specify an instance that you do not own, it is not included in the returned results.

        Recently terminated instances might appear in the returned results. This interval is usually less than one hour.

        If you describe instances in the rare case where an Availability Zone is experiencing a service disruption and you specify instance IDs that are in the affected zone, or do not specify any instance IDs at all, the call fails. If you describe instances and specify only instance IDs that are in an unaffected zone, the call works normally.

        ", "DescribeInternetGateways": "

        Describes one or more of your Internet gateways.

        ", "DescribeKeyPairs": "

        Describes one or more of your key pairs.

        For more information about key pairs, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeMovingAddresses": "

        Describes your Elastic IP addresses that are being moved to the EC2-VPC platform, or that are being restored to the EC2-Classic platform. This request does not return information about any other Elastic IP addresses in your account.

        ", "DescribeNatGateways": "

        Describes one or more of the your NAT gateways.

        ", "DescribeNetworkAcls": "

        Describes one or more of your network ACLs.

        For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeNetworkInterfaceAttribute": "

        Describes a network interface attribute. You can specify only one attribute at a time.

        ", "DescribeNetworkInterfaces": "

        Describes one or more of your network interfaces.

        ", "DescribePlacementGroups": "

        Describes one or more of your placement groups. For more information about placement groups and cluster instances, see Cluster Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribePrefixLists": "

        Describes available AWS services in a prefix list format, which includes the prefix list name and prefix list ID of the service and the IP address range for the service. A prefix list ID is required for creating an outbound security group rule that allows traffic from a VPC to access an AWS service through a VPC endpoint.

        ", "DescribeRegions": "

        Describes one or more regions that are currently available to you.

        For a list of the regions supported by Amazon EC2, see Regions and Endpoints.

        ", "DescribeReservedInstances": "

        Describes one or more of the Reserved Instances that you purchased.

        For more information about Reserved Instances, see Reserved Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeReservedInstancesListings": "

        Describes your account's Reserved Instance listings in the Reserved Instance Marketplace.

        The Reserved Instance Marketplace matches sellers who want to resell Reserved Instance capacity that they no longer need with buyers who want to purchase additional capacity. Reserved Instances bought and sold through the Reserved Instance Marketplace work like any other Reserved Instances.

        As a seller, you choose to list some or all of your Reserved Instances, and you specify the upfront price to receive for them. Your Reserved Instances are then listed in the Reserved Instance Marketplace and are available for purchase.

        As a buyer, you specify the configuration of the Reserved Instance to purchase, and the Marketplace matches what you're searching for with what's available. The Marketplace first sells the lowest priced Reserved Instances to you, and continues to sell available Reserved Instance listings to you until your demand is met. You are charged based on the total price of all of the listings that you purchase.

        For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeReservedInstancesModifications": "

        Describes the modifications made to your Reserved Instances. If no parameter is specified, information about all your Reserved Instances modification requests is returned. If a modification ID is specified, only information about the specific modification is returned.

        For more information, see Modifying Reserved Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeReservedInstancesOfferings": "

        Describes Reserved Instance offerings that are available for purchase. With Reserved Instances, you purchase the right to launch instances for a period of time. During that time period, you do not receive insufficient capacity errors, and you pay a lower usage rate than the rate charged for On-Demand instances for the actual time used.

        If you have listed your own Reserved Instances for sale in the Reserved Instance Marketplace, they will be excluded from these results. This is to ensure that you do not purchase your own Reserved Instances.

        For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeRouteTables": "

        Describes one or more of your route tables.

        Each subnet in your VPC must be associated with a route table. If a subnet is not explicitly associated with any route table, it is implicitly associated with the main route table. This command does not return the subnet ID for implicit associations.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeScheduledInstanceAvailability": "

        Finds available schedules that meet the specified criteria.

        You can search for an available schedule no more than 3 months in advance. You must meet the minimum required duration of 1,200 hours per year. For example, the minimum daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the minimum monthly schedule is 100 hours.

        After you find a schedule that meets your needs, call PurchaseScheduledInstances to purchase Scheduled Instances with that schedule.

        ", "DescribeScheduledInstances": "

        Describes one or more of your Scheduled Instances.

        ", "DescribeSecurityGroupReferences": "

        [EC2-VPC only] Describes the VPCs on the other side of a VPC peering connection that are referencing the security groups you've specified in this request.

        ", "DescribeSecurityGroups": "

        Describes one or more of your security groups.

        A security group is for use with instances either in the EC2-Classic platform or in a specific VPC. For more information, see Amazon EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide and Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeSnapshotAttribute": "

        Describes the specified attribute of the specified snapshot. You can specify only one attribute at a time.

        For more information about EBS snapshots, see Amazon EBS Snapshots in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeSnapshots": "

        Describes one or more of the EBS snapshots available to you. Available snapshots include public snapshots available for any AWS account to launch, private snapshots that you own, and private snapshots owned by another AWS account but for which you've been given explicit create volume permissions.

        The create volume permissions fall into the following categories:

        • public: The owner of the snapshot granted create volume permissions for the snapshot to the all group. All AWS accounts have create volume permissions for these snapshots.

        • explicit: The owner of the snapshot granted create volume permissions to a specific AWS account.

        • implicit: An AWS account has implicit create volume permissions for all snapshots it owns.

        The list of snapshots returned can be modified by specifying snapshot IDs, snapshot owners, or AWS accounts with create volume permissions. If no options are specified, Amazon EC2 returns all snapshots for which you have create volume permissions.

        If you specify one or more snapshot IDs, only snapshots that have the specified IDs are returned. If you specify an invalid snapshot ID, an error is returned. If you specify a snapshot ID for which you do not have access, it is not included in the returned results.

        If you specify one or more snapshot owners using the OwnerIds option, only snapshots from the specified owners and for which you have access are returned. The results can include the AWS account IDs of the specified owners, amazon for snapshots owned by Amazon, or self for snapshots that you own.

        If you specify a list of restorable users, only snapshots with create snapshot permissions for those users are returned. You can specify AWS account IDs (if you own the snapshots), self for snapshots for which you own or have explicit permissions, or all for public snapshots.

        If you are describing a long list of snapshots, you can paginate the output to make the list more manageable. The MaxResults parameter sets the maximum number of results returned in a single page. If the list of results exceeds your MaxResults value, then that number of results is returned along with a NextToken value that can be passed to a subsequent DescribeSnapshots request to retrieve the remaining results.

        For more information about EBS snapshots, see Amazon EBS Snapshots in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeSpotDatafeedSubscription": "

        Describes the data feed for Spot instances. For more information, see Spot Instance Data Feed in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeSpotFleetInstances": "

        Describes the running instances for the specified Spot fleet.

        ", "DescribeSpotFleetRequestHistory": "

        Describes the events for the specified Spot fleet request during the specified time.

        Spot fleet events are delayed by up to 30 seconds before they can be described. This ensures that you can query by the last evaluated time and not miss a recorded event.

        ", "DescribeSpotFleetRequests": "

        Describes your Spot fleet requests.

        ", "DescribeSpotInstanceRequests": "

        Describes the Spot instance requests that belong to your account. Spot instances are instances that Amazon EC2 launches when the bid price that you specify exceeds the current Spot price. Amazon EC2 periodically sets the Spot price based on available Spot instance capacity and current Spot instance requests. For more information, see Spot Instance Requests in the Amazon Elastic Compute Cloud User Guide.

        You can use DescribeSpotInstanceRequests to find a running Spot instance by examining the response. If the status of the Spot instance is fulfilled, the instance ID appears in the response and contains the identifier of the instance. Alternatively, you can use DescribeInstances with a filter to look for instances where the instance lifecycle is spot.

        ", "DescribeSpotPriceHistory": "

        Describes the Spot price history. The prices returned are listed in chronological order, from the oldest to the most recent, for up to the past 90 days. For more information, see Spot Instance Pricing History in the Amazon Elastic Compute Cloud User Guide.

        When you specify a start and end time, this operation returns the prices of the instance types within the time range that you specified and the time when the price changed. The price is valid within the time period that you specified; the response merely indicates the last time that the price changed.

        ", "DescribeStaleSecurityGroups": "

        [EC2-VPC only] Describes the stale security group rules for security groups in a specified VPC. Rules are stale when they reference a deleted security group in a peer VPC, or a security group in a peer VPC for which the VPC peering connection has been deleted.

        ", "DescribeSubnets": "

        Describes one or more of your subnets.

        For more information about subnets, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeTags": "

        Describes one or more of the tags for your EC2 resources.

        For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeVolumeAttribute": "

        Describes the specified attribute of the specified volume. You can specify only one attribute at a time.

        For more information about EBS volumes, see Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeVolumeStatus": "

        Describes the status of the specified volumes. Volume status provides the result of the checks performed on your volumes to determine events that can impair the performance of your volumes. The performance of a volume can be affected if an issue occurs on the volume's underlying host. If the volume's underlying host experiences a power outage or system issue, after the system is restored, there could be data inconsistencies on the volume. Volume events notify you if this occurs. Volume actions notify you if any action needs to be taken in response to the event.

        The DescribeVolumeStatus operation provides the following information about the specified volumes:

        Status: Reflects the current status of the volume. The possible values are ok, impaired , warning, or insufficient-data. If all checks pass, the overall status of the volume is ok. If the check fails, the overall status is impaired. If the status is insufficient-data, then the checks may still be taking place on your volume at the time. We recommend that you retry the request. For more information on volume status, see Monitoring the Status of Your Volumes.

        Events: Reflect the cause of a volume status and may require you to take action. For example, if your volume returns an impaired status, then the volume event might be potential-data-inconsistency. This means that your volume has been affected by an issue with the underlying host, has all I/O operations disabled, and may have inconsistent data.

        Actions: Reflect the actions you may have to take in response to an event. For example, if the status of the volume is impaired and the volume event shows potential-data-inconsistency, then the action shows enable-volume-io. This means that you may want to enable the I/O operations for the volume by calling the EnableVolumeIO action and then check the volume for data consistency.

        Volume status is based on the volume status checks, and does not reflect the volume state. Therefore, volume status does not indicate volumes in the error state (for example, when a volume is incapable of accepting I/O.)

        ", "DescribeVolumes": "

        Describes the specified EBS volumes.

        If you are describing a long list of volumes, you can paginate the output to make the list more manageable. The MaxResults parameter sets the maximum number of results returned in a single page. If the list of results exceeds your MaxResults value, then that number of results is returned along with a NextToken value that can be passed to a subsequent DescribeVolumes request to retrieve the remaining results.

        For more information about EBS volumes, see Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeVpcAttribute": "

        Describes the specified attribute of the specified VPC. You can specify only one attribute at a time.

        ", "DescribeVpcClassicLink": "

        Describes the ClassicLink status of one or more VPCs.

        ", "DescribeVpcClassicLinkDnsSupport": "

        Describes the ClassicLink DNS support status of one or more VPCs. If enabled, the DNS hostname of a linked EC2-Classic instance resolves to its private IP address when addressed from an instance in the VPC to which it's linked. Similarly, the DNS hostname of an instance in a VPC resolves to its private IP address when addressed from a linked EC2-Classic instance. For more information about ClassicLink, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeVpcEndpointServices": "

        Describes all supported AWS services that can be specified when creating a VPC endpoint.

        ", "DescribeVpcEndpoints": "

        Describes one or more of your VPC endpoints.

        ", "DescribeVpcPeeringConnections": "

        Describes one or more of your VPC peering connections.

        ", "DescribeVpcs": "

        Describes one or more of your VPCs.

        ", "DescribeVpnConnections": "

        Describes one or more of your VPN connections.

        For more information about VPN connections, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeVpnGateways": "

        Describes one or more of your virtual private gateways.

        For more information about virtual private gateways, see Adding an IPsec Hardware VPN to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DetachClassicLinkVpc": "

        Unlinks (detaches) a linked EC2-Classic instance from a VPC. After the instance has been unlinked, the VPC security groups are no longer associated with it. An instance is automatically unlinked from a VPC when it's stopped.

        ", "DetachInternetGateway": "

        Detaches an Internet gateway from a VPC, disabling connectivity between the Internet and the VPC. The VPC must not contain any running instances with Elastic IP addresses.

        ", "DetachNetworkInterface": "

        Detaches a network interface from an instance.

        ", "DetachVolume": "

        Detaches an EBS volume from an instance. Make sure to unmount any file systems on the device within your operating system before detaching the volume. Failure to do so can result in the volume becoming stuck in the busy state while detaching. If this happens, detachment can be delayed indefinitely until you unmount the volume, force detachment, reboot the instance, or all three. If an EBS volume is the root device of an instance, it can't be detached while the instance is running. To detach the root volume, stop the instance first.

        When a volume with an AWS Marketplace product code is detached from an instance, the product code is no longer associated with the instance.

        For more information, see Detaching an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide.

        ", "DetachVpnGateway": "

        Detaches a virtual private gateway from a VPC. You do this if you're planning to turn off the VPC and not use it anymore. You can confirm a virtual private gateway has been completely detached from a VPC by describing the virtual private gateway (any attachments to the virtual private gateway are also described).

        You must wait for the attachment's state to switch to detached before you can delete the VPC or attach a different VPC to the virtual private gateway.

        ", "DisableVgwRoutePropagation": "

        Disables a virtual private gateway (VGW) from propagating routes to a specified route table of a VPC.

        ", "DisableVpcClassicLink": "

        Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC that has EC2-Classic instances linked to it.

        ", "DisableVpcClassicLinkDnsSupport": "

        Disables ClassicLink DNS support for a VPC. If disabled, DNS hostnames resolve to public IP addresses when addressed between a linked EC2-Classic instance and instances in the VPC to which it's linked. For more information about ClassicLink, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

        ", "DisassociateAddress": "

        Disassociates an Elastic IP address from the instance or network interface it's associated with.

        An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error.

        ", "DisassociateRouteTable": "

        Disassociates a subnet from a route table.

        After you perform this action, the subnet no longer uses the routes in the route table. Instead, it uses the routes in the VPC's main route table. For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "EnableVgwRoutePropagation": "

        Enables a virtual private gateway (VGW) to propagate routes to the specified route table of a VPC.

        ", "EnableVolumeIO": "

        Enables I/O operations for a volume that had I/O operations disabled because the data on the volume was potentially inconsistent.

        ", "EnableVpcClassicLink": "

        Enables a VPC for ClassicLink. You can then link EC2-Classic instances to your ClassicLink-enabled VPC to allow communication over private IP addresses. You cannot enable your VPC for ClassicLink if any of your VPC's route tables have existing routes for address ranges within the 10.0.0.0/8 IP address range, excluding local routes for VPCs in the 10.0.0.0/16 and 10.1.0.0/16 IP address ranges. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

        ", "EnableVpcClassicLinkDnsSupport": "

        Enables a VPC to support DNS hostname resolution for ClassicLink. If enabled, the DNS hostname of a linked EC2-Classic instance resolves to its private IP address when addressed from an instance in the VPC to which it's linked. Similarly, the DNS hostname of an instance in a VPC resolves to its private IP address when addressed from a linked EC2-Classic instance. For more information about ClassicLink, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

        ", "GetConsoleOutput": "

        Gets the console output for the specified instance.

        Instances do not have a physical monitor through which you can view their console output. They also lack physical controls that allow you to power up, reboot, or shut them down. To allow these actions, we provide them through the Amazon EC2 API and command line interface.

        Instance console output is buffered and posted shortly after instance boot, reboot, and termination. Amazon EC2 preserves the most recent 64 KB output which is available for at least one hour after the most recent post.

        For Linux instances, the instance console output displays the exact console output that would normally be displayed on a physical monitor attached to a computer. This output is buffered because the instance produces it and then posts it to a store where the instance's owner can retrieve it.

        For Windows instances, the instance console output includes output from the EC2Config service.

        ", "GetConsoleScreenshot": "

        Retrieve a JPG-format screenshot of a running instance to help with troubleshooting.

        The returned content is Base64-encoded.

        ", "GetHostReservationPurchasePreview": "

        Preview a reservation purchase with configurations that match those of your Dedicated Host. You must have active Dedicated Hosts in your account before you purchase a reservation.

        This is a preview of the PurchaseHostReservation action and does not result in the offering being purchased.

        ", "GetPasswordData": "

        Retrieves the encrypted administrator password for an instance running Windows.

        The Windows password is generated at boot if the EC2Config service plugin, Ec2SetPassword, is enabled. This usually only happens the first time an AMI is launched, and then Ec2SetPassword is automatically disabled. The password is not generated for rebundled AMIs unless Ec2SetPassword is enabled before bundling.

        The password is encrypted using the key pair that you specified when you launched the instance. You must provide the corresponding key pair file.

        Password generation and encryption takes a few moments. We recommend that you wait up to 15 minutes after launching an instance before trying to retrieve the generated password.

        ", "ImportImage": "

        Import single or multi-volume disk images or EBS snapshots into an Amazon Machine Image (AMI). For more information, see Importing a VM as an Image Using VM Import/Export in the VM Import/Export User Guide.

        ", "ImportInstance": "

        Creates an import instance task using metadata from the specified disk image. ImportInstance only supports single-volume VMs. To import multi-volume VMs, use ImportImage. For more information, see Importing a Virtual Machine Using the Amazon EC2 CLI.

        For information about the import manifest referenced by this API action, see VM Import Manifest.

        ", "ImportKeyPair": "

        Imports the public key from an RSA key pair that you created with a third-party tool. Compare this with CreateKeyPair, in which AWS creates the key pair and gives the keys to you (AWS keeps a copy of the public key). With ImportKeyPair, you create the key pair and give AWS just the public key. The private key is never transferred between you and AWS.

        For more information about key pairs, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.

        ", "ImportSnapshot": "

        Imports a disk into an EBS snapshot.

        ", "ImportVolume": "

        Creates an import volume task using metadata from the specified disk image.For more information, see Importing Disks to Amazon EBS.

        For information about the import manifest referenced by this API action, see VM Import Manifest.

        ", "ModifyHosts": "

        Modify the auto-placement setting of a Dedicated Host. When auto-placement is enabled, AWS will place instances that you launch with a tenancy of host, but without targeting a specific host ID, onto any available Dedicated Host in your account which has auto-placement enabled. When auto-placement is disabled, you need to provide a host ID if you want the instance to launch onto a specific host. If no host ID is provided, the instance will be launched onto a suitable host which has auto-placement enabled.

        ", "ModifyIdFormat": "

        Modifies the ID format for the specified resource on a per-region basis. You can specify that resources should receive longer IDs (17-character IDs) when they are created. The following resource types support longer IDs: instance | reservation | snapshot | volume.

        This setting applies to the IAM user who makes the request; it does not apply to the entire AWS account. By default, an IAM user defaults to the same settings as the root user. If you're using this action as the root user, then these settings apply to the entire account, unless an IAM user explicitly overrides these settings for themselves. For more information, see Resource IDs in the Amazon Elastic Compute Cloud User Guide.

        Resources created with longer IDs are visible to all IAM roles and users, regardless of these settings and provided that they have permission to use the relevant Describe command for the resource type.

        ", "ModifyIdentityIdFormat": "

        Modifies the ID format of a resource for a specified IAM user, IAM role, or the root user for an account; or all IAM users, IAM roles, and the root user for an account. You can specify that resources should receive longer IDs (17-character IDs) when they are created.

        The following resource types support longer IDs: instance | reservation | snapshot | volume. For more information, see Resource IDs in the Amazon Elastic Compute Cloud User Guide.

        This setting applies to the principal specified in the request; it does not apply to the principal that makes the request.

        Resources created with longer IDs are visible to all IAM roles and users, regardless of these settings and provided that they have permission to use the relevant Describe command for the resource type.

        ", "ModifyImageAttribute": "

        Modifies the specified attribute of the specified AMI. You can specify only one attribute at a time.

        AWS Marketplace product codes cannot be modified. Images with an AWS Marketplace product code cannot be made public.

        The SriovNetSupport enhanced networking attribute cannot be changed using this command. Instead, enable SriovNetSupport on an instance and create an AMI from the instance. This will result in an image with SriovNetSupport enabled.

        ", "ModifyInstanceAttribute": "

        Modifies the specified attribute of the specified instance. You can specify only one attribute at a time.

        To modify some attributes, the instance must be stopped. For more information, see Modifying Attributes of a Stopped Instance in the Amazon Elastic Compute Cloud User Guide.

        ", "ModifyInstancePlacement": "

        Set the instance affinity value for a specific stopped instance and modify the instance tenancy setting.

        Instance affinity is disabled by default. When instance affinity is host and it is not associated with a specific Dedicated Host, the next time it is launched it will automatically be associated with the host it lands on. This relationship will persist if the instance is stopped/started, or rebooted.

        You can modify the host ID associated with a stopped instance. If a stopped instance has a new host ID association, the instance will target that host when restarted.

        You can modify the tenancy of a stopped instance with a tenancy of host or dedicated.

        Affinity, hostID, and tenancy are not required parameters, but at least one of them must be specified in the request. Affinity and tenancy can be modified in the same request, but tenancy can only be modified on instances that are stopped.

        ", "ModifyNetworkInterfaceAttribute": "

        Modifies the specified network interface attribute. You can specify only one attribute at a time.

        ", "ModifyReservedInstances": "

        Modifies the Availability Zone, instance count, instance type, or network platform (EC2-Classic or EC2-VPC) of your Reserved Instances. The Reserved Instances to be modified must be identical, except for Availability Zone, network platform, and instance type.

        For more information, see Modifying Reserved Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "ModifySnapshotAttribute": "

        Adds or removes permission settings for the specified snapshot. You may add or remove specified AWS account IDs from a snapshot's list of create volume permissions, but you cannot do both in a single API call. If you need to both add and remove account IDs for a snapshot, you must use multiple API calls.

        Encrypted snapshots and snapshots with AWS Marketplace product codes cannot be made public. Snapshots encrypted with your default CMK cannot be shared with other accounts.

        For more information on modifying snapshot permissions, see Sharing Snapshots in the Amazon Elastic Compute Cloud User Guide.

        ", "ModifySpotFleetRequest": "

        Modifies the specified Spot fleet request.

        While the Spot fleet request is being modified, it is in the modifying state.

        To scale up your Spot fleet, increase its target capacity. The Spot fleet launches the additional Spot instances according to the allocation strategy for the Spot fleet request. If the allocation strategy is lowestPrice, the Spot fleet launches instances using the Spot pool with the lowest price. If the allocation strategy is diversified, the Spot fleet distributes the instances across the Spot pools.

        To scale down your Spot fleet, decrease its target capacity. First, the Spot fleet cancels any open bids that exceed the new target capacity. You can request that the Spot fleet terminate Spot instances until the size of the fleet no longer exceeds the new target capacity. If the allocation strategy is lowestPrice, the Spot fleet terminates the instances with the highest price per unit. If the allocation strategy is diversified, the Spot fleet terminates instances across the Spot pools. Alternatively, you can request that the Spot fleet keep the fleet at its current size, but not replace any Spot instances that are interrupted or that you terminate manually.

        ", "ModifySubnetAttribute": "

        Modifies a subnet attribute.

        ", "ModifyVolumeAttribute": "

        Modifies a volume attribute.

        By default, all I/O operations for the volume are suspended when the data on the volume is determined to be potentially inconsistent, to prevent undetectable, latent data corruption. The I/O access to the volume can be resumed by first enabling I/O access and then checking the data consistency on your volume.

        You can change the default behavior to resume I/O operations. We recommend that you change this only for boot volumes or for volumes that are stateless or disposable.

        ", "ModifyVpcAttribute": "

        Modifies the specified attribute of the specified VPC.

        ", "ModifyVpcEndpoint": "

        Modifies attributes of a specified VPC endpoint. You can modify the policy associated with the endpoint, and you can add and remove route tables associated with the endpoint.

        ", "ModifyVpcPeeringConnectionOptions": "

        Modifies the VPC peering connection options on one side of a VPC peering connection. You can do the following:

        • Enable/disable communication over the peering connection between an EC2-Classic instance that's linked to your VPC (using ClassicLink) and instances in the peer VPC.

        • Enable/disable communication over the peering connection between instances in your VPC and an EC2-Classic instance that's linked to the peer VPC.

        • Enable/disable a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC.

        If the peered VPCs are in different accounts, each owner must initiate a separate request to modify the peering connection options, depending on whether their VPC was the requester or accepter for the VPC peering connection. If the peered VPCs are in the same account, you can modify the requester and accepter options in the same request. To confirm which VPC is the accepter and requester for a VPC peering connection, use the DescribeVpcPeeringConnections command.

        ", "MonitorInstances": "

        Enables monitoring for a running instance. For more information about monitoring instances, see Monitoring Your Instances and Volumes in the Amazon Elastic Compute Cloud User Guide.

        ", "MoveAddressToVpc": "

        Moves an Elastic IP address from the EC2-Classic platform to the EC2-VPC platform. The Elastic IP address must be allocated to your account for more than 24 hours, and it must not be associated with an instance. After the Elastic IP address is moved, it is no longer available for use in the EC2-Classic platform, unless you move it back using the RestoreAddressToClassic request. You cannot move an Elastic IP address that was originally allocated for use in the EC2-VPC platform to the EC2-Classic platform.

        ", "PurchaseHostReservation": "

        Purchase a reservation with configurations that match those of your Dedicated Host. You must have active Dedicated Hosts in your account before you purchase a reservation. This action results in the specified reservation being purchased and charged to your account.

        ", "PurchaseReservedInstancesOffering": "

        Purchases a Reserved Instance for use with your account. With Reserved Instances, you obtain a capacity reservation for a certain instance configuration over a specified period of time and pay a lower hourly rate compared to On-Demand instance pricing.

        Use DescribeReservedInstancesOfferings to get a list of Reserved Instance offerings that match your specifications. After you've purchased a Reserved Instance, you can check for your new Reserved Instance with DescribeReservedInstances.

        For more information, see Reserved Instances and Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "PurchaseScheduledInstances": "

        Purchases one or more Scheduled Instances with the specified schedule.

        Scheduled Instances enable you to purchase Amazon EC2 compute capacity by the hour for a one-year term. Before you can purchase a Scheduled Instance, you must call DescribeScheduledInstanceAvailability to check for available schedules and obtain a purchase token. After you purchase a Scheduled Instance, you must call RunScheduledInstances during each scheduled time period.

        After you purchase a Scheduled Instance, you can't cancel, modify, or resell your purchase.

        ", "RebootInstances": "

        Requests a reboot of one or more instances. This operation is asynchronous; it only queues a request to reboot the specified instances. The operation succeeds if the instances are valid and belong to you. Requests to reboot terminated instances are ignored.

        If an instance does not cleanly shut down within four minutes, Amazon EC2 performs a hard reboot.

        For more information about troubleshooting, see Getting Console Output and Rebooting Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "RegisterImage": "

        Registers an AMI. When you're creating an AMI, this is the final step you must complete before you can launch an instance from the AMI. For more information about creating AMIs, see Creating Your Own AMIs in the Amazon Elastic Compute Cloud User Guide.

        For Amazon EBS-backed instances, CreateImage creates and registers the AMI in a single request, so you don't have to register the AMI yourself.

        You can also use RegisterImage to create an Amazon EBS-backed Linux AMI from a snapshot of a root device volume. For more information, see Launching an Instance from a Snapshot in the Amazon Elastic Compute Cloud User Guide.

        Some Linux distributions, such as Red Hat Enterprise Linux (RHEL) and SUSE Linux Enterprise Server (SLES), use the EC2 billingProduct code associated with an AMI to verify subscription status for package updates. Creating an AMI from an EBS snapshot does not maintain this billing code, and subsequent instances launched from such an AMI will not be able to connect to package update infrastructure.

        Similarly, although you can create a Windows AMI from a snapshot, you can't successfully launch an instance from the AMI.

        To create Windows AMIs or to create AMIs for Linux operating systems that must retain AMI billing codes to work properly, see CreateImage.

        If needed, you can deregister an AMI at any time. Any modifications you make to an AMI backed by an instance store volume invalidates its registration. If you make changes to an image, deregister the previous image and register the new image.

        You can't register an image where a secondary (non-root) snapshot has AWS Marketplace product codes.

        ", "RejectVpcPeeringConnection": "

        Rejects a VPC peering connection request. The VPC peering connection must be in the pending-acceptance state. Use the DescribeVpcPeeringConnections request to view your outstanding VPC peering connection requests. To delete an active VPC peering connection, or to delete a VPC peering connection request that you initiated, use DeleteVpcPeeringConnection.

        ", "ReleaseAddress": "

        Releases the specified Elastic IP address.

        After releasing an Elastic IP address, it is released to the IP address pool and might be unavailable to you. Be sure to update your DNS records and any servers or devices that communicate with the address. If you attempt to release an Elastic IP address that you already released, you'll get an AuthFailure error if the address is already allocated to another AWS account.

        [EC2-Classic, default VPC] Releasing an Elastic IP address automatically disassociates it from any instance that it's associated with. To disassociate an Elastic IP address without releasing it, use DisassociateAddress.

        [Nondefault VPC] You must use DisassociateAddress to disassociate the Elastic IP address before you try to release it. Otherwise, Amazon EC2 returns an error (InvalidIPAddress.InUse).

        ", "ReleaseHosts": "

        When you no longer want to use an On-Demand Dedicated Host it can be released. On-Demand billing is stopped and the host goes into released state. The host ID of Dedicated Hosts that have been released can no longer be specified in another request, e.g., ModifyHosts. You must stop or terminate all instances on a host before it can be released.

        When Dedicated Hosts are released, it make take some time for them to stop counting toward your limit and you may receive capacity errors when trying to allocate new Dedicated hosts. Try waiting a few minutes, and then try again.

        Released hosts will still appear in a DescribeHosts response.

        ", "ReplaceNetworkAclAssociation": "

        Changes which network ACL a subnet is associated with. By default when you create a subnet, it's automatically associated with the default network ACL. For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "ReplaceNetworkAclEntry": "

        Replaces an entry (rule) in a network ACL. For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "ReplaceRoute": "

        Replaces an existing route within a route table in a VPC. You must provide only one of the following: Internet gateway or virtual private gateway, NAT instance, NAT gateway, VPC peering connection, or network interface.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "ReplaceRouteTableAssociation": "

        Changes the route table associated with a given subnet in a VPC. After the operation completes, the subnet uses the routes in the new route table it's associated with. For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        You can also use ReplaceRouteTableAssociation to change which table is the main route table in the VPC. You just specify the main route table's association ID and the route table to be the new main route table.

        ", "ReportInstanceStatus": "

        Submits feedback about the status of an instance. The instance must be in the running state. If your experience with the instance differs from the instance status returned by DescribeInstanceStatus, use ReportInstanceStatus to report your experience with the instance. Amazon EC2 collects this information to improve the accuracy of status checks.

        Use of this action does not change the value returned by DescribeInstanceStatus.

        ", "RequestSpotFleet": "

        Creates a Spot fleet request.

        You can submit a single request that includes multiple launch specifications that vary by instance type, AMI, Availability Zone, or subnet.

        By default, the Spot fleet requests Spot instances in the Spot pool where the price per unit is the lowest. Each launch specification can include its own instance weighting that reflects the value of the instance type to your application workload.

        Alternatively, you can specify that the Spot fleet distribute the target capacity across the Spot pools included in its launch specifications. By ensuring that the Spot instances in your Spot fleet are in different Spot pools, you can improve the availability of your fleet.

        For more information, see Spot Fleet Requests in the Amazon Elastic Compute Cloud User Guide.

        ", "RequestSpotInstances": "

        Creates a Spot instance request. Spot instances are instances that Amazon EC2 launches when the bid price that you specify exceeds the current Spot price. Amazon EC2 periodically sets the Spot price based on available Spot Instance capacity and current Spot instance requests. For more information, see Spot Instance Requests in the Amazon Elastic Compute Cloud User Guide.

        ", "ResetImageAttribute": "

        Resets an attribute of an AMI to its default value.

        The productCodes attribute can't be reset.

        ", "ResetInstanceAttribute": "

        Resets an attribute of an instance to its default value. To reset the kernel or ramdisk, the instance must be in a stopped state. To reset the sourceDestCheck, the instance can be either running or stopped.

        The sourceDestCheck attribute controls whether source/destination checking is enabled. The default value is true, which means checking is enabled. This value must be false for a NAT instance to perform NAT. For more information, see NAT Instances in the Amazon Virtual Private Cloud User Guide.

        ", "ResetNetworkInterfaceAttribute": "

        Resets a network interface attribute. You can specify only one attribute at a time.

        ", "ResetSnapshotAttribute": "

        Resets permission settings for the specified snapshot.

        For more information on modifying snapshot permissions, see Sharing Snapshots in the Amazon Elastic Compute Cloud User Guide.

        ", "RestoreAddressToClassic": "

        Restores an Elastic IP address that was previously moved to the EC2-VPC platform back to the EC2-Classic platform. You cannot move an Elastic IP address that was originally allocated for use in EC2-VPC. The Elastic IP address must not be associated with an instance or network interface.

        ", "RevokeSecurityGroupEgress": "

        [EC2-VPC only] Removes one or more egress rules from a security group for EC2-VPC. This action doesn't apply to security groups for use in EC2-Classic. The values that you specify in the revoke request (for example, ports) must match the existing rule's values for the rule to be revoked.

        Each rule consists of the protocol and the CIDR range or source security group. For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code.

        Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

        ", "RevokeSecurityGroupIngress": "

        Removes one or more ingress rules from a security group. The values that you specify in the revoke request (for example, ports) must match the existing rule's values for the rule to be removed.

        Each rule consists of the protocol and the CIDR range or source security group. For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code.

        Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

        ", "RunInstances": "

        Launches the specified number of instances using an AMI for which you have permissions.

        When you launch an instance, it enters the pending state. After the instance is ready for you, it enters the running state. To check the state of your instance, call DescribeInstances.

        To ensure faster instance launches, break up large requests into smaller batches. For example, create five separate launch requests for 100 instances each instead of one launch request for 500 instances.

        To tag your instance, ensure that it is running as CreateTags requires a resource ID. For more information about tagging, see Tagging Your Amazon EC2 Resources.

        If you don't specify a security group when launching an instance, Amazon EC2 uses the default security group. For more information, see Security Groups in the Amazon Elastic Compute Cloud User Guide.

        [EC2-VPC only accounts] If you don't specify a subnet in the request, we choose a default subnet from your default VPC for you.

        [EC2-Classic accounts] If you're launching into EC2-Classic and you don't specify an Availability Zone, we choose one for you.

        Linux instances have access to the public key of the key pair at boot. You can use this key to provide secure access to the instance. Amazon EC2 public images use this feature to provide secure access without passwords. For more information, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.

        You can provide optional user data when launching an instance. For more information, see Instance Metadata in the Amazon Elastic Compute Cloud User Guide.

        If any of the AMIs have a product code attached for which the user has not subscribed, RunInstances fails.

        Some instance types can only be launched into a VPC. If you do not have a default VPC, or if you do not specify a subnet ID in the request, RunInstances fails. For more information, see Instance Types Available Only in a VPC.

        For more information about troubleshooting, see What To Do If An Instance Immediately Terminates, and Troubleshooting Connecting to Your Instance in the Amazon Elastic Compute Cloud User Guide.

        ", "RunScheduledInstances": "

        Launches the specified Scheduled Instances.

        Before you can launch a Scheduled Instance, you must purchase it and obtain an identifier using PurchaseScheduledInstances.

        You must launch a Scheduled Instance during its scheduled time period. You can't stop or reboot a Scheduled Instance, but you can terminate it as needed. If you terminate a Scheduled Instance before the current scheduled time period ends, you can launch it again after a few minutes. For more information, see Scheduled Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "StartInstances": "

        Starts an Amazon EBS-backed AMI that you've previously stopped.

        Instances that use Amazon EBS volumes as their root devices can be quickly stopped and started. When an instance is stopped, the compute resources are released and you are not billed for hourly instance usage. However, your root partition Amazon EBS volume remains, continues to persist your data, and you are charged for Amazon EBS volume usage. You can restart your instance at any time. Each time you transition an instance from stopped to started, Amazon EC2 charges a full instance hour, even if transitions happen multiple times within a single hour.

        Before stopping an instance, make sure it is in a state from which it can be restarted. Stopping an instance does not preserve data stored in RAM.

        Performing this operation on an instance that uses an instance store as its root device returns an error.

        For more information, see Stopping Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "StopInstances": "

        Stops an Amazon EBS-backed instance.

        We don't charge hourly usage for a stopped instance, or data transfer fees; however, your root partition Amazon EBS volume remains, continues to persist your data, and you are charged for Amazon EBS volume usage. Each time you transition an instance from stopped to started, Amazon EC2 charges a full instance hour, even if transitions happen multiple times within a single hour.

        You can't start or stop Spot instances, and you can't stop instance store-backed instances.

        When you stop an instance, we shut it down. You can restart your instance at any time. Before stopping an instance, make sure it is in a state from which it can be restarted. Stopping an instance does not preserve data stored in RAM.

        Stopping an instance is different to rebooting or terminating it. For example, when you stop an instance, the root device and any other devices attached to the instance persist. When you terminate an instance, the root device and any other devices attached during the instance launch are automatically deleted. For more information about the differences between rebooting, stopping, and terminating instances, see Instance Lifecycle in the Amazon Elastic Compute Cloud User Guide.

        When you stop an instance, we attempt to shut it down forcibly after a short while. If your instance appears stuck in the stopping state after a period of time, there may be an issue with the underlying host computer. For more information, see Troubleshooting Stopping Your Instance in the Amazon Elastic Compute Cloud User Guide.

        ", "TerminateInstances": "

        Shuts down one or more instances. This operation is idempotent; if you terminate an instance more than once, each call succeeds.

        Terminated instances remain visible after termination (for approximately one hour).

        By default, Amazon EC2 deletes all EBS volumes that were attached when the instance launched. Volumes attached after instance launch continue running.

        You can stop, start, and terminate EBS-backed instances. You can only terminate instance store-backed instances. What happens to an instance differs if you stop it or terminate it. For example, when you stop an instance, the root device and any other devices attached to the instance persist. When you terminate an instance, any attached EBS volumes with the DeleteOnTermination block device mapping parameter set to true are automatically deleted. For more information about the differences between stopping and terminating instances, see Instance Lifecycle in the Amazon Elastic Compute Cloud User Guide.

        For more information about troubleshooting, see Troubleshooting Terminating Your Instance in the Amazon Elastic Compute Cloud User Guide.

        ", "UnassignPrivateIpAddresses": "

        Unassigns one or more secondary private IP addresses from a network interface.

        ", "UnmonitorInstances": "

        Disables monitoring for a running instance. For more information about monitoring instances, see Monitoring Your Instances and Volumes in the Amazon Elastic Compute Cloud User Guide.

        " }, "shapes": { "AcceptVpcPeeringConnectionRequest": { "base": "

        Contains the parameters for AcceptVpcPeeringConnection.

        ", "refs": { } }, "AcceptVpcPeeringConnectionResult": { "base": "

        Contains the output of AcceptVpcPeeringConnection.

        ", "refs": { } }, "AccountAttribute": { "base": "

        Describes an account attribute.

        ", "refs": { "AccountAttributeList$member": null } }, "AccountAttributeList": { "base": null, "refs": { "DescribeAccountAttributesResult$AccountAttributes": "

        Information about one or more account attributes.

        " } }, "AccountAttributeName": { "base": null, "refs": { "AccountAttributeNameStringList$member": null } }, "AccountAttributeNameStringList": { "base": null, "refs": { "DescribeAccountAttributesRequest$AttributeNames": "

        One or more account attribute names.

        " } }, "AccountAttributeValue": { "base": "

        Describes a value of an account attribute.

        ", "refs": { "AccountAttributeValueList$member": null } }, "AccountAttributeValueList": { "base": null, "refs": { "AccountAttribute$AttributeValues": "

        One or more values for the account attribute.

        " } }, "ActiveInstance": { "base": "

        Describes a running instance in a Spot fleet.

        ", "refs": { "ActiveInstanceSet$member": null } }, "ActiveInstanceSet": { "base": null, "refs": { "DescribeSpotFleetInstancesResponse$ActiveInstances": "

        The running instances. Note that this list is refreshed periodically and might be out of date.

        " } }, "ActivityStatus": { "base": null, "refs": { "SpotFleetRequestConfig$ActivityStatus": "

        The progress of the Spot fleet request. If there is an error, the status is error. After all bids are placed, the status is pending_fulfillment. If the size of the fleet is equal to or greater than its target capacity, the status is fulfilled. If the size of the fleet is decreased, the status is pending_termination while Spot instances are terminating.

        " } }, "Address": { "base": "

        Describes an Elastic IP address.

        ", "refs": { "AddressList$member": null } }, "AddressList": { "base": null, "refs": { "DescribeAddressesResult$Addresses": "

        Information about one or more Elastic IP addresses.

        " } }, "Affinity": { "base": null, "refs": { "ModifyInstancePlacementRequest$Affinity": "

        The new affinity setting for the instance.

        " } }, "AllocateAddressRequest": { "base": "

        Contains the parameters for AllocateAddress.

        ", "refs": { } }, "AllocateAddressResult": { "base": "

        Contains the output of AllocateAddress.

        ", "refs": { } }, "AllocateHostsRequest": { "base": "

        Contains the parameters for AllocateHosts.

        ", "refs": { } }, "AllocateHostsResult": { "base": "

        Contains the output of AllocateHosts.

        ", "refs": { } }, "AllocationIdList": { "base": null, "refs": { "DescribeAddressesRequest$AllocationIds": "

        [EC2-VPC] One or more allocation IDs.

        Default: Describes all your Elastic IP addresses.

        " } }, "AllocationState": { "base": null, "refs": { "Host$State": "

        The Dedicated Host's state.

        " } }, "AllocationStrategy": { "base": null, "refs": { "SpotFleetRequestConfigData$AllocationStrategy": "

        Indicates how to allocate the target capacity across the Spot pools specified by the Spot fleet request. The default is lowestPrice.

        " } }, "ArchitectureValues": { "base": null, "refs": { "Image$Architecture": "

        The architecture of the image.

        ", "ImportInstanceLaunchSpecification$Architecture": "

        The architecture of the instance.

        ", "Instance$Architecture": "

        The architecture of the image.

        ", "RegisterImageRequest$Architecture": "

        The architecture of the AMI.

        Default: For Amazon EBS-backed AMIs, i386. For instance store-backed AMIs, the architecture specified in the manifest file.

        " } }, "AssignPrivateIpAddressesRequest": { "base": "

        Contains the parameters for AssignPrivateIpAddresses.

        ", "refs": { } }, "AssociateAddressRequest": { "base": "

        Contains the parameters for AssociateAddress.

        ", "refs": { } }, "AssociateAddressResult": { "base": "

        Contains the output of AssociateAddress.

        ", "refs": { } }, "AssociateDhcpOptionsRequest": { "base": "

        Contains the parameters for AssociateDhcpOptions.

        ", "refs": { } }, "AssociateRouteTableRequest": { "base": "

        Contains the parameters for AssociateRouteTable.

        ", "refs": { } }, "AssociateRouteTableResult": { "base": "

        Contains the output of AssociateRouteTable.

        ", "refs": { } }, "AttachClassicLinkVpcRequest": { "base": "

        Contains the parameters for AttachClassicLinkVpc.

        ", "refs": { } }, "AttachClassicLinkVpcResult": { "base": "

        Contains the output of AttachClassicLinkVpc.

        ", "refs": { } }, "AttachInternetGatewayRequest": { "base": "

        Contains the parameters for AttachInternetGateway.

        ", "refs": { } }, "AttachNetworkInterfaceRequest": { "base": "

        Contains the parameters for AttachNetworkInterface.

        ", "refs": { } }, "AttachNetworkInterfaceResult": { "base": "

        Contains the output of AttachNetworkInterface.

        ", "refs": { } }, "AttachVolumeRequest": { "base": "

        Contains the parameters for AttachVolume.

        ", "refs": { } }, "AttachVpnGatewayRequest": { "base": "

        Contains the parameters for AttachVpnGateway.

        ", "refs": { } }, "AttachVpnGatewayResult": { "base": "

        Contains the output of AttachVpnGateway.

        ", "refs": { } }, "AttachmentStatus": { "base": null, "refs": { "EbsInstanceBlockDevice$Status": "

        The attachment state.

        ", "InstanceNetworkInterfaceAttachment$Status": "

        The attachment state.

        ", "InternetGatewayAttachment$State": "

        The current state of the attachment.

        ", "NetworkInterfaceAttachment$Status": "

        The attachment state.

        ", "VpcAttachment$State": "

        The current state of the attachment.

        " } }, "AttributeBooleanValue": { "base": "

        Describes a value for a resource attribute that is a Boolean value.

        ", "refs": { "DescribeNetworkInterfaceAttributeResult$SourceDestCheck": "

        Indicates whether source/destination checking is enabled.

        ", "DescribeVolumeAttributeResult$AutoEnableIO": "

        The state of autoEnableIO attribute.

        ", "DescribeVpcAttributeResult$EnableDnsSupport": "

        Indicates whether DNS resolution is enabled for the VPC. If this attribute is true, the Amazon DNS server resolves DNS hostnames for your instances to their corresponding IP addresses; otherwise, it does not.

        ", "DescribeVpcAttributeResult$EnableDnsHostnames": "

        Indicates whether the instances launched in the VPC get DNS hostnames. If this attribute is true, instances in the VPC get DNS hostnames; otherwise, they do not.

        ", "InstanceAttribute$DisableApiTermination": "

        If the value is true, you can't terminate the instance through the Amazon EC2 console, CLI, or API; otherwise, you can.

        ", "InstanceAttribute$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O.

        ", "InstanceAttribute$EnaSupport": "

        Indicates whether enhanced networking with ENA is enabled.

        ", "InstanceAttribute$SourceDestCheck": "

        Indicates whether source/destination checking is enabled. A value of true means checking is enabled, and false means checking is disabled. This value must be false for a NAT instance to perform NAT.

        ", "ModifyInstanceAttributeRequest$SourceDestCheck": "

        Specifies whether source/destination checking is enabled. A value of true means that checking is enabled, and false means checking is disabled. This value must be false for a NAT instance to perform NAT.

        ", "ModifyInstanceAttributeRequest$DisableApiTermination": "

        If the value is true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. You cannot use this paramater for Spot Instances.

        ", "ModifyInstanceAttributeRequest$EbsOptimized": "

        Specifies whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        ", "ModifyInstanceAttributeRequest$EnaSupport": "

        Set to true to enable enhanced networking with ENA for the instance.

        This option is supported only for HVM instances. Specifying this option with a PV instance can make it unreachable.

        ", "ModifyNetworkInterfaceAttributeRequest$SourceDestCheck": "

        Indicates whether source/destination checking is enabled. A value of true means checking is enabled, and false means checking is disabled. This value must be false for a NAT instance to perform NAT. For more information, see NAT Instances in the Amazon Virtual Private Cloud User Guide.

        ", "ModifySubnetAttributeRequest$MapPublicIpOnLaunch": "

        Specify true to indicate that instances launched into the specified subnet should be assigned public IP address.

        ", "ModifyVolumeAttributeRequest$AutoEnableIO": "

        Indicates whether the volume should be auto-enabled for I/O operations.

        ", "ModifyVpcAttributeRequest$EnableDnsSupport": "

        Indicates whether the DNS resolution is supported for the VPC. If enabled, queries to the Amazon provided DNS server at the 169.254.169.253 IP address, or the reserved IP address at the base of the VPC network range \"plus two\" will succeed. If disabled, the Amazon provided DNS service in the VPC that resolves public DNS hostnames to IP addresses is not enabled.

        You cannot modify the DNS resolution and DNS hostnames attributes in the same request. Use separate requests for each attribute.

        ", "ModifyVpcAttributeRequest$EnableDnsHostnames": "

        Indicates whether the instances launched in the VPC get DNS hostnames. If enabled, instances in the VPC get DNS hostnames; otherwise, they do not.

        You cannot modify the DNS resolution and DNS hostnames attributes in the same request. Use separate requests for each attribute. You can only enable DNS hostnames if you've enabled DNS support.

        " } }, "AttributeValue": { "base": "

        Describes a value for a resource attribute that is a String.

        ", "refs": { "DescribeNetworkInterfaceAttributeResult$Description": "

        The description of the network interface.

        ", "DhcpConfigurationValueList$member": null, "ImageAttribute$KernelId": "

        The kernel ID.

        ", "ImageAttribute$RamdiskId": "

        The RAM disk ID.

        ", "ImageAttribute$Description": "

        A description for the AMI.

        ", "ImageAttribute$SriovNetSupport": "

        Indicates whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.

        ", "InstanceAttribute$InstanceType": "

        The instance type.

        ", "InstanceAttribute$KernelId": "

        The kernel ID.

        ", "InstanceAttribute$RamdiskId": "

        The RAM disk ID.

        ", "InstanceAttribute$UserData": "

        The user data.

        ", "InstanceAttribute$InstanceInitiatedShutdownBehavior": "

        Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

        ", "InstanceAttribute$RootDeviceName": "

        The name of the root device (for example, /dev/sda1 or /dev/xvda).

        ", "InstanceAttribute$SriovNetSupport": "

        Indicates whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.

        ", "ModifyImageAttributeRequest$Description": "

        A description for the AMI.

        ", "ModifyInstanceAttributeRequest$InstanceType": "

        Changes the instance type to the specified value. For more information, see Instance Types. If the instance type is not valid, the error returned is InvalidInstanceAttributeValue.

        ", "ModifyInstanceAttributeRequest$Kernel": "

        Changes the instance's kernel to the specified value. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB.

        ", "ModifyInstanceAttributeRequest$Ramdisk": "

        Changes the instance's RAM disk to the specified value. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB.

        ", "ModifyInstanceAttributeRequest$InstanceInitiatedShutdownBehavior": "

        Specifies whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

        ", "ModifyInstanceAttributeRequest$SriovNetSupport": "

        Set to simple to enable enhanced networking with the Intel 82599 Virtual Function interface for the instance.

        There is no way to disable enhanced networking with the Intel 82599 Virtual Function interface at this time.

        This option is supported only for HVM instances. Specifying this option with a PV instance can make it unreachable.

        ", "ModifyNetworkInterfaceAttributeRequest$Description": "

        A description for the network interface.

        " } }, "AuthorizeSecurityGroupEgressRequest": { "base": "

        Contains the parameters for AuthorizeSecurityGroupEgress.

        ", "refs": { } }, "AuthorizeSecurityGroupIngressRequest": { "base": "

        Contains the parameters for AuthorizeSecurityGroupIngress.

        ", "refs": { } }, "AutoPlacement": { "base": null, "refs": { "AllocateHostsRequest$AutoPlacement": "

        This is enabled by default. This property allows instances to be automatically placed onto available Dedicated Hosts, when you are launching instances without specifying a host ID.

        Default: Enabled

        ", "Host$AutoPlacement": "

        Whether auto-placement is on or off.

        ", "ModifyHostsRequest$AutoPlacement": "

        Specify whether to enable or disable auto-placement.

        " } }, "AvailabilityZone": { "base": "

        Describes an Availability Zone.

        ", "refs": { "AvailabilityZoneList$member": null } }, "AvailabilityZoneList": { "base": null, "refs": { "DescribeAvailabilityZonesResult$AvailabilityZones": "

        Information about one or more Availability Zones.

        " } }, "AvailabilityZoneMessage": { "base": "

        Describes a message about an Availability Zone.

        ", "refs": { "AvailabilityZoneMessageList$member": null } }, "AvailabilityZoneMessageList": { "base": null, "refs": { "AvailabilityZone$Messages": "

        Any messages about the Availability Zone.

        " } }, "AvailabilityZoneState": { "base": null, "refs": { "AvailabilityZone$State": "

        The state of the Availability Zone.

        " } }, "AvailableCapacity": { "base": "

        The capacity information for instances launched onto the Dedicated Host.

        ", "refs": { "Host$AvailableCapacity": "

        The number of new instances that can be launched onto the Dedicated Host.

        " } }, "AvailableInstanceCapacityList": { "base": null, "refs": { "AvailableCapacity$AvailableInstanceCapacity": "

        The total number of instances that the Dedicated Host supports.

        " } }, "BatchState": { "base": null, "refs": { "CancelSpotFleetRequestsSuccessItem$CurrentSpotFleetRequestState": "

        The current state of the Spot fleet request.

        ", "CancelSpotFleetRequestsSuccessItem$PreviousSpotFleetRequestState": "

        The previous state of the Spot fleet request.

        ", "SpotFleetRequestConfig$SpotFleetRequestState": "

        The state of the Spot fleet request.

        " } }, "Blob": { "base": null, "refs": { "BlobAttributeValue$Value": null, "ImportKeyPairRequest$PublicKeyMaterial": "

        The public key. For API calls, the text must be base64-encoded. For command line tools, base64 encoding is performed for you.

        ", "S3Storage$UploadPolicy": "

        An Amazon S3 upload policy that gives Amazon EC2 permission to upload items into Amazon S3 on your behalf.

        " } }, "BlobAttributeValue": { "base": null, "refs": { "ModifyInstanceAttributeRequest$UserData": "

        Changes the instance's user data to the specified value. If you are using an AWS SDK or command line tool, Base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide Base64-encoded text.

        " } }, "BlockDeviceMapping": { "base": "

        Describes a block device mapping.

        ", "refs": { "BlockDeviceMappingList$member": null, "BlockDeviceMappingRequestList$member": null } }, "BlockDeviceMappingList": { "base": null, "refs": { "Image$BlockDeviceMappings": "

        Any block device mapping entries.

        ", "ImageAttribute$BlockDeviceMappings": "

        One or more block device mapping entries.

        ", "LaunchSpecification$BlockDeviceMappings": "

        One or more block device mapping entries.

        Although you can specify encrypted EBS volumes in this block device mapping for your Spot Instances, these volumes are not encrypted.

        ", "RequestSpotLaunchSpecification$BlockDeviceMappings": "

        One or more block device mapping entries.

        Although you can specify encrypted EBS volumes in this block device mapping for your Spot Instances, these volumes are not encrypted.

        ", "SpotFleetLaunchSpecification$BlockDeviceMappings": "

        One or more block device mapping entries.

        " } }, "BlockDeviceMappingRequestList": { "base": null, "refs": { "CreateImageRequest$BlockDeviceMappings": "

        Information about one or more block device mappings.

        ", "RegisterImageRequest$BlockDeviceMappings": "

        One or more block device mapping entries.

        ", "RunInstancesRequest$BlockDeviceMappings": "

        The block device mapping.

        Supplying both a snapshot ID and an encryption value as arguments for block-device mapping results in an error. This is because only blank volumes can be encrypted on start, and these are not created from a snapshot. If a snapshot is the basis for the volume, it contains data by definition and its encryption status cannot be changed using this action.

        " } }, "Boolean": { "base": null, "refs": { "AcceptVpcPeeringConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AllocateAddressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AssignPrivateIpAddressesRequest$AllowReassignment": "

        Indicates whether to allow an IP address that is already assigned to another network interface or instance to be reassigned to the specified network interface.

        ", "AssociateAddressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AssociateAddressRequest$AllowReassociation": "

        [EC2-VPC] For a VPC in an EC2-Classic account, specify true to allow an Elastic IP address that is already associated with an instance or network interface to be reassociated with the specified instance or network interface. Otherwise, the operation fails. In a VPC in an EC2-VPC-only account, reassociation is automatic, therefore you can specify false to ensure the operation fails if the Elastic IP address is already associated with another resource.

        ", "AssociateDhcpOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AssociateRouteTableRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachClassicLinkVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachClassicLinkVpcResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "AttachInternetGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachNetworkInterfaceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachVpnGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttributeBooleanValue$Value": "

        The attribute value. The valid values are true or false.

        ", "AuthorizeSecurityGroupEgressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AuthorizeSecurityGroupIngressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "BundleInstanceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelBundleTaskRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelConversionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelImportTaskRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelSpotFleetRequestsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelSpotFleetRequestsRequest$TerminateInstances": "

        Indicates whether to terminate instances for a Spot fleet request if it is canceled successfully.

        ", "CancelSpotInstanceRequestsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ClassicLinkDnsSupport$ClassicLinkDnsSupported": "

        Indicates whether ClassicLink DNS support is enabled for the VPC.

        ", "ConfirmProductInstanceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ConfirmProductInstanceResult$Return": "

        The return value of the request. Returns true if the specified product code is owned by the requester and associated with the specified instance.

        ", "CopyImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CopyImageRequest$Encrypted": "

        Specifies whether the destination snapshots of the copied image should be encrypted. The default CMK for EBS is used unless a non-default AWS Key Management Service (AWS KMS) CMK is specified with KmsKeyId. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        ", "CopySnapshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CopySnapshotRequest$Encrypted": "

        Specifies whether the destination snapshot should be encrypted. You can encrypt a copy of an unencrypted snapshot using this flag, but you cannot use it to create an unencrypted copy from an encrypted snapshot. Your default CMK for EBS is used unless a non-default AWS Key Management Service (AWS KMS) CMK is specified with KmsKeyId. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateCustomerGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateDhcpOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateImageRequest$NoReboot": "

        By default, Amazon EC2 attempts to shut down and reboot the instance before creating the image. If the 'No Reboot' option is set, Amazon EC2 doesn't shut down the instance before creating the image. When this option is used, file system integrity on the created image can't be guaranteed.

        ", "CreateInternetGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateKeyPairRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateNetworkAclEntryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateNetworkAclEntryRequest$Egress": "

        Indicates whether this is an egress rule (rule is applied to traffic leaving the subnet).

        ", "CreateNetworkAclRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateNetworkInterfaceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreatePlacementGroupRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateRouteRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateRouteResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "CreateRouteTableRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateSecurityGroupRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateSnapshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateSpotDatafeedSubscriptionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateSubnetRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateTagsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVolumeRequest$Encrypted": "

        Specifies whether the volume should be encrypted. Encrypted Amazon EBS volumes may only be attached to instances that support Amazon EBS encryption. Volumes that are created from encrypted snapshots are automatically encrypted. There is no way to create an encrypted volume from an unencrypted snapshot or vice versa. If your AMI uses encrypted volumes, you can only launch it on supported instance types. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateVpcEndpointRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVpcPeeringConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVpnConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVpnGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteCustomerGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteDhcpOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteInternetGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteKeyPairRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteNetworkAclEntryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteNetworkAclEntryRequest$Egress": "

        Indicates whether the rule is an egress rule.

        ", "DeleteNetworkAclRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteNetworkInterfaceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeletePlacementGroupRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteRouteRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteRouteTableRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteSecurityGroupRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteSnapshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteSpotDatafeedSubscriptionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteSubnetRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteTagsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpcEndpointsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpcPeeringConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpcPeeringConnectionResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "DeleteVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpnConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpnGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeregisterImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeAccountAttributesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeAddressesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeAvailabilityZonesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeBundleTasksRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeClassicLinkInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeConversionTasksRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeCustomerGatewaysRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeDhcpOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeImageAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeImagesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeImportImageTasksRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeImportSnapshotTasksRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeInstanceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeInstanceStatusRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeInstanceStatusRequest$IncludeAllInstances": "

        When true, includes the health status for all instances. When false, includes the health status for running instances only.

        Default: false

        ", "DescribeInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeInternetGatewaysRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeKeyPairsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeMovingAddressesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeNetworkAclsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeNetworkInterfaceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeNetworkInterfacesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribePlacementGroupsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribePrefixListsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeRegionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeReservedInstancesOfferingsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeReservedInstancesOfferingsRequest$IncludeMarketplace": "

        Include Reserved Instance Marketplace offerings in the response.

        ", "DescribeReservedInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeRouteTablesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeScheduledInstanceAvailabilityRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeScheduledInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSecurityGroupReferencesRequest$DryRun": "

        Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSecurityGroupsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSnapshotAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSnapshotsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotDatafeedSubscriptionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotFleetInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotFleetRequestHistoryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotFleetRequestsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotInstanceRequestsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotPriceHistoryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeStaleSecurityGroupsRequest$DryRun": "

        Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSubnetsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeTagsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVolumeAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVolumeStatusRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVolumesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcClassicLinkRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcEndpointServicesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcEndpointsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcPeeringConnectionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpnConnectionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpnGatewaysRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachClassicLinkVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachClassicLinkVpcResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "DetachInternetGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachNetworkInterfaceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachNetworkInterfaceRequest$Force": "

        Specifies whether to force a detachment.

        ", "DetachVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachVolumeRequest$Force": "

        Forces detachment if the previous detachment attempt did not occur cleanly (for example, logging into an instance, unmounting the volume, and detaching normally). This option can lead to data loss or a corrupted file system. Use this option only as a last resort to detach a volume from a failed instance. The instance won't have an opportunity to flush file system caches or file system metadata. If you use this option, you must perform file system check and repair procedures.

        ", "DetachVpnGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DisableVpcClassicLinkDnsSupportResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "DisableVpcClassicLinkRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DisableVpcClassicLinkResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "DisassociateAddressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DisassociateRouteTableRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "EbsBlockDevice$DeleteOnTermination": "

        Indicates whether the EBS volume is deleted on instance termination.

        ", "EbsBlockDevice$Encrypted": "

        Indicates whether the EBS volume is encrypted. Encrypted Amazon EBS volumes may only be attached to instances that support Amazon EBS encryption.

        ", "EbsInstanceBlockDevice$DeleteOnTermination": "

        Indicates whether the volume is deleted on instance termination.

        ", "EbsInstanceBlockDeviceSpecification$DeleteOnTermination": "

        Indicates whether the volume is deleted on instance termination.

        ", "EnableVolumeIORequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "EnableVpcClassicLinkDnsSupportResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "EnableVpcClassicLinkRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "EnableVpcClassicLinkResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "GetConsoleOutputRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "GetConsoleScreenshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "GetConsoleScreenshotRequest$WakeUp": "

        When set to true, acts as keystroke input and wakes up an instance that's in standby or \"sleep\" mode.

        ", "GetPasswordDataRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "IdFormat$UseLongIds": "

        Indicates whether longer IDs (17-character IDs) are enabled for the resource.

        ", "Image$Public": "

        Indicates whether the image has public launch permissions. The value is true if this image has public launch permissions or false if it has only implicit and explicit launch permissions.

        ", "Image$EnaSupport": "

        Specifies whether enhanced networking with ENA is enabled.

        ", "ImportImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ImportInstanceLaunchSpecification$Monitoring": "

        Indicates whether monitoring is enabled.

        ", "ImportInstanceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ImportKeyPairRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ImportSnapshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ImportVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "Instance$SourceDestCheck": "

        Specifies whether to enable an instance launched in a VPC to perform NAT. This controls whether source/destination checking is enabled on the instance. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the instance to perform NAT. For more information, see NAT Instances in the Amazon Virtual Private Cloud User Guide.

        ", "Instance$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        ", "Instance$EnaSupport": "

        Specifies whether enhanced networking with ENA is enabled.

        ", "InstanceNetworkInterface$SourceDestCheck": "

        Indicates whether to validate network traffic to or from this network interface.

        ", "InstanceNetworkInterfaceAttachment$DeleteOnTermination": "

        Indicates whether the network interface is deleted when the instance is terminated.

        ", "InstanceNetworkInterfaceSpecification$DeleteOnTermination": "

        If set to true, the interface is deleted when the instance is terminated. You can specify true only if creating a new network interface when launching an instance.

        ", "InstanceNetworkInterfaceSpecification$AssociatePublicIpAddress": "

        Indicates whether to assign a public IP address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is true.

        ", "InstancePrivateIpAddress$Primary": "

        Indicates whether this IP address is the primary private IP address of the network interface.

        ", "LaunchSpecification$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        Default: false

        ", "ModifyIdFormatRequest$UseLongIds": "

        Indicate whether the resource should use longer IDs (17-character IDs).

        ", "ModifyIdentityIdFormatRequest$UseLongIds": "

        Indicates whether the resource should use longer IDs (17-character IDs)

        ", "ModifyImageAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifyInstanceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifyInstancePlacementResult$Return": "

        Is true if the request succeeds, and an error otherwise.

        ", "ModifyNetworkInterfaceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifySnapshotAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifySpotFleetRequestResponse$Return": "

        Is true if the request succeeds, and an error otherwise.

        ", "ModifyVolumeAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifyVpcEndpointRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifyVpcEndpointRequest$ResetPolicy": "

        Specify true to reset the policy document to the default policy. The default policy allows access to the service.

        ", "ModifyVpcEndpointResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "ModifyVpcPeeringConnectionOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "MonitorInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "MoveAddressToVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "NetworkAcl$IsDefault": "

        Indicates whether this is the default network ACL for the VPC.

        ", "NetworkAclEntry$Egress": "

        Indicates whether the rule is an egress rule (applied to traffic leaving the subnet).

        ", "NetworkInterface$RequesterManaged": "

        Indicates whether the network interface is being managed by AWS.

        ", "NetworkInterface$SourceDestCheck": "

        Indicates whether traffic to or from the instance is validated.

        ", "NetworkInterfaceAttachment$DeleteOnTermination": "

        Indicates whether the network interface is deleted when the instance is terminated.

        ", "NetworkInterfaceAttachmentChanges$DeleteOnTermination": "

        Indicates whether the network interface is deleted when the instance is terminated.

        ", "NetworkInterfacePrivateIpAddress$Primary": "

        Indicates whether this IP address is the primary private IP address of the network interface.

        ", "PeeringConnectionOptions$AllowEgressFromLocalClassicLinkToRemoteVpc": "

        If true, enables outbound communication from an EC2-Classic instance that's linked to a local VPC via ClassicLink to instances in a peer VPC.

        ", "PeeringConnectionOptions$AllowEgressFromLocalVpcToRemoteClassicLink": "

        If true, enables outbound communication from instances in a local VPC to an EC2-Classic instance that's linked to a peer VPC via ClassicLink.

        ", "PeeringConnectionOptions$AllowDnsResolutionFromRemoteVpc": "

        If true, enables a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC.

        ", "PeeringConnectionOptionsRequest$AllowEgressFromLocalClassicLinkToRemoteVpc": "

        If true, enables outbound communication from an EC2-Classic instance that's linked to a local VPC via ClassicLink to instances in a peer VPC.

        ", "PeeringConnectionOptionsRequest$AllowEgressFromLocalVpcToRemoteClassicLink": "

        If true, enables outbound communication from instances in a local VPC to an EC2-Classic instance that's linked to a peer VPC via ClassicLink.

        ", "PeeringConnectionOptionsRequest$AllowDnsResolutionFromRemoteVpc": "

        If true, enables a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC.

        ", "PriceSchedule$Active": "

        The current price schedule, as determined by the term remaining for the Reserved Instance in the listing.

        A specific price schedule is always in effect, but only one price schedule can be active at any time. Take, for example, a Reserved Instance listing that has five months remaining in its term. When you specify price schedules for five months and two months, this means that schedule 1, covering the first three months of the remaining term, will be active during months 5, 4, and 3. Then schedule 2, covering the last two months of the term, will be active for months 2 and 1.

        ", "PrivateIpAddressSpecification$Primary": "

        Indicates whether the private IP address is the primary private IP address. Only one IP address can be designated as primary.

        ", "PurchaseReservedInstancesOfferingRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "PurchaseScheduledInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RebootInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RegisterImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RegisterImageRequest$EnaSupport": "

        Set to true to enable enhanced networking with ENA for the AMI and any instances that you launch from the AMI.

        This option is supported only for HVM AMIs. Specifying this option with a PV AMI can make instances launched from the AMI unreachable.

        ", "RejectVpcPeeringConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RejectVpcPeeringConnectionResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "ReleaseAddressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReplaceNetworkAclAssociationRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReplaceNetworkAclEntryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReplaceNetworkAclEntryRequest$Egress": "

        Indicates whether to replace the egress rule.

        Default: If no value is specified, we replace the ingress rule.

        ", "ReplaceRouteRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReplaceRouteTableAssociationRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReportInstanceStatusRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RequestSpotFleetRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RequestSpotInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RequestSpotLaunchSpecification$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        Default: false

        ", "ReservedInstancesOffering$Marketplace": "

        Indicates whether the offering is available through the Reserved Instance Marketplace (resale) or AWS. If it's a Reserved Instance Marketplace offering, this is true.

        ", "ResetImageAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ResetInstanceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ResetNetworkInterfaceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ResetSnapshotAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RestoreAddressToClassicRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RevokeSecurityGroupEgressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RevokeSecurityGroupIngressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RouteTableAssociation$Main": "

        Indicates whether this is the main route table.

        ", "RunInstancesMonitoringEnabled$Enabled": "

        Indicates whether monitoring is enabled for the instance.

        ", "RunInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RunInstancesRequest$DisableApiTermination": "

        If you set this parameter to true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. If you set this parameter to true and then later want to be able to terminate the instance, you must first change the value of the disableApiTermination attribute to false using ModifyInstanceAttribute. Alternatively, if you set InstanceInitiatedShutdownBehavior to terminate, you can terminate the instance by running the shutdown command from the instance.

        Default: false

        ", "RunInstancesRequest$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.

        Default: false

        ", "RunScheduledInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ScheduledInstanceRecurrence$OccurrenceRelativeToEnd": "

        Indicates whether the occurrence is relative to the end of the specified week or month.

        ", "ScheduledInstanceRecurrenceRequest$OccurrenceRelativeToEnd": "

        Indicates whether the occurrence is relative to the end of the specified week or month. You can't specify this value with a daily schedule.

        ", "ScheduledInstancesEbs$DeleteOnTermination": "

        Indicates whether the volume is deleted on instance termination.

        ", "ScheduledInstancesEbs$Encrypted": "

        Indicates whether the volume is encrypted. You can attached encrypted volumes only to instances that support them.

        ", "ScheduledInstancesLaunchSpecification$EbsOptimized": "

        Indicates whether the instances are optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.

        Default: false

        ", "ScheduledInstancesMonitoring$Enabled": "

        Indicates whether monitoring is enabled.

        ", "ScheduledInstancesNetworkInterface$AssociatePublicIpAddress": "

        Indicates whether to assign a public IP address to instances launched in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is true.

        ", "ScheduledInstancesNetworkInterface$DeleteOnTermination": "

        Indicates whether to delete the interface when the instance is terminated.

        ", "ScheduledInstancesPrivateIpAddressConfig$Primary": "

        Indicates whether this is a primary IP address. Otherwise, this is a secondary IP address.

        ", "Snapshot$Encrypted": "

        Indicates whether the snapshot is encrypted.

        ", "SpotFleetLaunchSpecification$EbsOptimized": "

        Indicates whether the instances are optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        Default: false

        ", "SpotFleetMonitoring$Enabled": "

        Enables monitoring for the instance.

        Default: false

        ", "SpotFleetRequestConfigData$TerminateInstancesWithExpiration": "

        Indicates whether running Spot instances should be terminated when the Spot fleet request expires.

        ", "StartInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "StopInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "StopInstancesRequest$Force": "

        Forces the instances to stop. The instances do not have an opportunity to flush file system caches or file system metadata. If you use this option, you must perform file system check and repair procedures. This option is not recommended for Windows instances.

        Default: false

        ", "Subnet$DefaultForAz": "

        Indicates whether this is the default subnet for the Availability Zone.

        ", "Subnet$MapPublicIpOnLaunch": "

        Indicates whether instances launched in this subnet receive a public IP address.

        ", "TerminateInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "UnmonitorInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "Volume$Encrypted": "

        Indicates whether the volume will be encrypted.

        ", "VolumeAttachment$DeleteOnTermination": "

        Indicates whether the EBS volume is deleted on instance termination.

        ", "Vpc$IsDefault": "

        Indicates whether the VPC is the default VPC.

        ", "VpcClassicLink$ClassicLinkEnabled": "

        Indicates whether the VPC is enabled for ClassicLink.

        ", "VpcPeeringConnectionOptionsDescription$AllowEgressFromLocalClassicLinkToRemoteVpc": "

        Indicates whether a local ClassicLink connection can communicate with the peer VPC over the VPC peering connection.

        ", "VpcPeeringConnectionOptionsDescription$AllowEgressFromLocalVpcToRemoteClassicLink": "

        Indicates whether a local VPC can communicate with a ClassicLink connection in the peer VPC over the VPC peering connection.

        ", "VpcPeeringConnectionOptionsDescription$AllowDnsResolutionFromRemoteVpc": "

        Indicates whether a local VPC can resolve public DNS hostnames to private IP addresses when queried from instances in a peer VPC.

        ", "VpnConnectionOptions$StaticRoutesOnly": "

        Indicates whether the VPN connection uses static routes only. Static routes must be used for devices that don't support BGP.

        ", "VpnConnectionOptionsSpecification$StaticRoutesOnly": "

        Indicates whether the VPN connection uses static routes only. Static routes must be used for devices that don't support BGP.

        " } }, "BundleIdStringList": { "base": null, "refs": { "DescribeBundleTasksRequest$BundleIds": "

        One or more bundle task IDs.

        Default: Describes all your bundle tasks.

        " } }, "BundleInstanceRequest": { "base": "

        Contains the parameters for BundleInstance.

        ", "refs": { } }, "BundleInstanceResult": { "base": "

        Contains the output of BundleInstance.

        ", "refs": { } }, "BundleTask": { "base": "

        Describes a bundle task.

        ", "refs": { "BundleInstanceResult$BundleTask": "

        Information about the bundle task.

        ", "BundleTaskList$member": null, "CancelBundleTaskResult$BundleTask": "

        Information about the bundle task.

        " } }, "BundleTaskError": { "base": "

        Describes an error for BundleInstance.

        ", "refs": { "BundleTask$BundleTaskError": "

        If the task fails, a description of the error.

        " } }, "BundleTaskList": { "base": null, "refs": { "DescribeBundleTasksResult$BundleTasks": "

        Information about one or more bundle tasks.

        " } }, "BundleTaskState": { "base": null, "refs": { "BundleTask$State": "

        The state of the task.

        " } }, "CancelBatchErrorCode": { "base": null, "refs": { "CancelSpotFleetRequestsError$Code": "

        The error code.

        " } }, "CancelBundleTaskRequest": { "base": "

        Contains the parameters for CancelBundleTask.

        ", "refs": { } }, "CancelBundleTaskResult": { "base": "

        Contains the output of CancelBundleTask.

        ", "refs": { } }, "CancelConversionRequest": { "base": "

        Contains the parameters for CancelConversionTask.

        ", "refs": { } }, "CancelExportTaskRequest": { "base": "

        Contains the parameters for CancelExportTask.

        ", "refs": { } }, "CancelImportTaskRequest": { "base": "

        Contains the parameters for CancelImportTask.

        ", "refs": { } }, "CancelImportTaskResult": { "base": "

        Contains the output for CancelImportTask.

        ", "refs": { } }, "CancelReservedInstancesListingRequest": { "base": "

        Contains the parameters for CancelReservedInstancesListing.

        ", "refs": { } }, "CancelReservedInstancesListingResult": { "base": "

        Contains the output of CancelReservedInstancesListing.

        ", "refs": { } }, "CancelSpotFleetRequestsError": { "base": "

        Describes a Spot fleet error.

        ", "refs": { "CancelSpotFleetRequestsErrorItem$Error": "

        The error.

        " } }, "CancelSpotFleetRequestsErrorItem": { "base": "

        Describes a Spot fleet request that was not successfully canceled.

        ", "refs": { "CancelSpotFleetRequestsErrorSet$member": null } }, "CancelSpotFleetRequestsErrorSet": { "base": null, "refs": { "CancelSpotFleetRequestsResponse$UnsuccessfulFleetRequests": "

        Information about the Spot fleet requests that are not successfully canceled.

        " } }, "CancelSpotFleetRequestsRequest": { "base": "

        Contains the parameters for CancelSpotFleetRequests.

        ", "refs": { } }, "CancelSpotFleetRequestsResponse": { "base": "

        Contains the output of CancelSpotFleetRequests.

        ", "refs": { } }, "CancelSpotFleetRequestsSuccessItem": { "base": "

        Describes a Spot fleet request that was successfully canceled.

        ", "refs": { "CancelSpotFleetRequestsSuccessSet$member": null } }, "CancelSpotFleetRequestsSuccessSet": { "base": null, "refs": { "CancelSpotFleetRequestsResponse$SuccessfulFleetRequests": "

        Information about the Spot fleet requests that are successfully canceled.

        " } }, "CancelSpotInstanceRequestState": { "base": null, "refs": { "CancelledSpotInstanceRequest$State": "

        The state of the Spot instance request.

        " } }, "CancelSpotInstanceRequestsRequest": { "base": "

        Contains the parameters for CancelSpotInstanceRequests.

        ", "refs": { } }, "CancelSpotInstanceRequestsResult": { "base": "

        Contains the output of CancelSpotInstanceRequests.

        ", "refs": { } }, "CancelledSpotInstanceRequest": { "base": "

        Describes a request to cancel a Spot instance.

        ", "refs": { "CancelledSpotInstanceRequestList$member": null } }, "CancelledSpotInstanceRequestList": { "base": null, "refs": { "CancelSpotInstanceRequestsResult$CancelledSpotInstanceRequests": "

        One or more Spot instance requests.

        " } }, "ClassicLinkDnsSupport": { "base": "

        Describes the ClassicLink DNS support status of a VPC.

        ", "refs": { "ClassicLinkDnsSupportList$member": null } }, "ClassicLinkDnsSupportList": { "base": null, "refs": { "DescribeVpcClassicLinkDnsSupportResult$Vpcs": "

        Information about the ClassicLink DNS support status of the VPCs.

        " } }, "ClassicLinkInstance": { "base": "

        Describes a linked EC2-Classic instance.

        ", "refs": { "ClassicLinkInstanceList$member": null } }, "ClassicLinkInstanceList": { "base": null, "refs": { "DescribeClassicLinkInstancesResult$Instances": "

        Information about one or more linked EC2-Classic instances.

        " } }, "ClientData": { "base": "

        Describes the client-specific data.

        ", "refs": { "ImportImageRequest$ClientData": "

        The client-specific data.

        ", "ImportSnapshotRequest$ClientData": "

        The client-specific data.

        " } }, "ConfirmProductInstanceRequest": { "base": "

        Contains the parameters for ConfirmProductInstance.

        ", "refs": { } }, "ConfirmProductInstanceResult": { "base": "

        Contains the output of ConfirmProductInstance.

        ", "refs": { } }, "ContainerFormat": { "base": null, "refs": { "ExportToS3Task$ContainerFormat": "

        The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is exported.

        ", "ExportToS3TaskSpecification$ContainerFormat": "

        The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is exported.

        " } }, "ConversionIdStringList": { "base": null, "refs": { "DescribeConversionTasksRequest$ConversionTaskIds": "

        One or more conversion task IDs.

        " } }, "ConversionTask": { "base": "

        Describes a conversion task.

        ", "refs": { "DescribeConversionTaskList$member": null, "ImportInstanceResult$ConversionTask": "

        Information about the conversion task.

        ", "ImportVolumeResult$ConversionTask": "

        Information about the conversion task.

        " } }, "ConversionTaskState": { "base": null, "refs": { "ConversionTask$State": "

        The state of the conversion task.

        " } }, "CopyImageRequest": { "base": "

        Contains the parameters for CopyImage.

        ", "refs": { } }, "CopyImageResult": { "base": "

        Contains the output of CopyImage.

        ", "refs": { } }, "CopySnapshotRequest": { "base": "

        Contains the parameters for CopySnapshot.

        ", "refs": { } }, "CopySnapshotResult": { "base": "

        Contains the output of CopySnapshot.

        ", "refs": { } }, "CreateCustomerGatewayRequest": { "base": "

        Contains the parameters for CreateCustomerGateway.

        ", "refs": { } }, "CreateCustomerGatewayResult": { "base": "

        Contains the output of CreateCustomerGateway.

        ", "refs": { } }, "CreateDhcpOptionsRequest": { "base": "

        Contains the parameters for CreateDhcpOptions.

        ", "refs": { } }, "CreateDhcpOptionsResult": { "base": "

        Contains the output of CreateDhcpOptions.

        ", "refs": { } }, "CreateFlowLogsRequest": { "base": "

        Contains the parameters for CreateFlowLogs.

        ", "refs": { } }, "CreateFlowLogsResult": { "base": "

        Contains the output of CreateFlowLogs.

        ", "refs": { } }, "CreateImageRequest": { "base": "

        Contains the parameters for CreateImage.

        ", "refs": { } }, "CreateImageResult": { "base": "

        Contains the output of CreateImage.

        ", "refs": { } }, "CreateInstanceExportTaskRequest": { "base": "

        Contains the parameters for CreateInstanceExportTask.

        ", "refs": { } }, "CreateInstanceExportTaskResult": { "base": "

        Contains the output for CreateInstanceExportTask.

        ", "refs": { } }, "CreateInternetGatewayRequest": { "base": "

        Contains the parameters for CreateInternetGateway.

        ", "refs": { } }, "CreateInternetGatewayResult": { "base": "

        Contains the output of CreateInternetGateway.

        ", "refs": { } }, "CreateKeyPairRequest": { "base": "

        Contains the parameters for CreateKeyPair.

        ", "refs": { } }, "CreateNatGatewayRequest": { "base": "

        Contains the parameters for CreateNatGateway.

        ", "refs": { } }, "CreateNatGatewayResult": { "base": "

        Contains the output of CreateNatGateway.

        ", "refs": { } }, "CreateNetworkAclEntryRequest": { "base": "

        Contains the parameters for CreateNetworkAclEntry.

        ", "refs": { } }, "CreateNetworkAclRequest": { "base": "

        Contains the parameters for CreateNetworkAcl.

        ", "refs": { } }, "CreateNetworkAclResult": { "base": "

        Contains the output of CreateNetworkAcl.

        ", "refs": { } }, "CreateNetworkInterfaceRequest": { "base": "

        Contains the parameters for CreateNetworkInterface.

        ", "refs": { } }, "CreateNetworkInterfaceResult": { "base": "

        Contains the output of CreateNetworkInterface.

        ", "refs": { } }, "CreatePlacementGroupRequest": { "base": "

        Contains the parameters for CreatePlacementGroup.

        ", "refs": { } }, "CreateReservedInstancesListingRequest": { "base": "

        Contains the parameters for CreateReservedInstancesListing.

        ", "refs": { } }, "CreateReservedInstancesListingResult": { "base": "

        Contains the output of CreateReservedInstancesListing.

        ", "refs": { } }, "CreateRouteRequest": { "base": "

        Contains the parameters for CreateRoute.

        ", "refs": { } }, "CreateRouteResult": { "base": "

        Contains the output of CreateRoute.

        ", "refs": { } }, "CreateRouteTableRequest": { "base": "

        Contains the parameters for CreateRouteTable.

        ", "refs": { } }, "CreateRouteTableResult": { "base": "

        Contains the output of CreateRouteTable.

        ", "refs": { } }, "CreateSecurityGroupRequest": { "base": "

        Contains the parameters for CreateSecurityGroup.

        ", "refs": { } }, "CreateSecurityGroupResult": { "base": "

        Contains the output of CreateSecurityGroup.

        ", "refs": { } }, "CreateSnapshotRequest": { "base": "

        Contains the parameters for CreateSnapshot.

        ", "refs": { } }, "CreateSpotDatafeedSubscriptionRequest": { "base": "

        Contains the parameters for CreateSpotDatafeedSubscription.

        ", "refs": { } }, "CreateSpotDatafeedSubscriptionResult": { "base": "

        Contains the output of CreateSpotDatafeedSubscription.

        ", "refs": { } }, "CreateSubnetRequest": { "base": "

        Contains the parameters for CreateSubnet.

        ", "refs": { } }, "CreateSubnetResult": { "base": "

        Contains the output of CreateSubnet.

        ", "refs": { } }, "CreateTagsRequest": { "base": "

        Contains the parameters for CreateTags.

        ", "refs": { } }, "CreateVolumePermission": { "base": "

        Describes the user or group to be added or removed from the permissions for a volume.

        ", "refs": { "CreateVolumePermissionList$member": null } }, "CreateVolumePermissionList": { "base": null, "refs": { "CreateVolumePermissionModifications$Add": "

        Adds a specific AWS account ID or group to a volume's list of create volume permissions.

        ", "CreateVolumePermissionModifications$Remove": "

        Removes a specific AWS account ID or group from a volume's list of create volume permissions.

        ", "DescribeSnapshotAttributeResult$CreateVolumePermissions": "

        A list of permissions for creating volumes from the snapshot.

        " } }, "CreateVolumePermissionModifications": { "base": "

        Describes modifications to the permissions for a volume.

        ", "refs": { "ModifySnapshotAttributeRequest$CreateVolumePermission": "

        A JSON representation of the snapshot attribute modification.

        " } }, "CreateVolumeRequest": { "base": "

        Contains the parameters for CreateVolume.

        ", "refs": { } }, "CreateVpcEndpointRequest": { "base": "

        Contains the parameters for CreateVpcEndpoint.

        ", "refs": { } }, "CreateVpcEndpointResult": { "base": "

        Contains the output of CreateVpcEndpoint.

        ", "refs": { } }, "CreateVpcPeeringConnectionRequest": { "base": "

        Contains the parameters for CreateVpcPeeringConnection.

        ", "refs": { } }, "CreateVpcPeeringConnectionResult": { "base": "

        Contains the output of CreateVpcPeeringConnection.

        ", "refs": { } }, "CreateVpcRequest": { "base": "

        Contains the parameters for CreateVpc.

        ", "refs": { } }, "CreateVpcResult": { "base": "

        Contains the output of CreateVpc.

        ", "refs": { } }, "CreateVpnConnectionRequest": { "base": "

        Contains the parameters for CreateVpnConnection.

        ", "refs": { } }, "CreateVpnConnectionResult": { "base": "

        Contains the output of CreateVpnConnection.

        ", "refs": { } }, "CreateVpnConnectionRouteRequest": { "base": "

        Contains the parameters for CreateVpnConnectionRoute.

        ", "refs": { } }, "CreateVpnGatewayRequest": { "base": "

        Contains the parameters for CreateVpnGateway.

        ", "refs": { } }, "CreateVpnGatewayResult": { "base": "

        Contains the output of CreateVpnGateway.

        ", "refs": { } }, "CurrencyCodeValues": { "base": null, "refs": { "GetHostReservationPurchasePreviewResult$CurrencyCode": "

        The currency in which the totalUpfrontPrice and totalHourlyPrice amounts are specified. At this time, the only supported currency is USD.

        ", "HostOffering$CurrencyCode": "

        The currency of the offering.

        ", "HostReservation$CurrencyCode": "

        The currency in which the upfrontPrice and hourlyPrice amounts are specified. At this time, the only supported currency is USD.

        ", "PriceSchedule$CurrencyCode": "

        The currency for transacting the Reserved Instance resale. At this time, the only supported currency is USD.

        ", "PriceScheduleSpecification$CurrencyCode": "

        The currency for transacting the Reserved Instance resale. At this time, the only supported currency is USD.

        ", "Purchase$CurrencyCode": "

        The currency in which the UpfrontPrice and HourlyPrice amounts are specified. At this time, the only supported currency is USD.

        ", "PurchaseHostReservationRequest$CurrencyCode": "

        The currency in which the totalUpfrontPrice, LimitPrice, and totalHourlyPrice amounts are specified. At this time, the only supported currency is USD.

        ", "PurchaseHostReservationResult$CurrencyCode": "

        The currency in which the totalUpfrontPrice and totalHourlyPrice amounts are specified. At this time, the only supported currency is USD.

        ", "ReservedInstanceLimitPrice$CurrencyCode": "

        The currency in which the limitPrice amount is specified. At this time, the only supported currency is USD.

        ", "ReservedInstances$CurrencyCode": "

        The currency of the Reserved Instance. It's specified using ISO 4217 standard currency codes. At this time, the only supported currency is USD.

        ", "ReservedInstancesOffering$CurrencyCode": "

        The currency of the Reserved Instance offering you are purchasing. It's specified using ISO 4217 standard currency codes. At this time, the only supported currency is USD.

        " } }, "CustomerGateway": { "base": "

        Describes a customer gateway.

        ", "refs": { "CreateCustomerGatewayResult$CustomerGateway": "

        Information about the customer gateway.

        ", "CustomerGatewayList$member": null } }, "CustomerGatewayIdStringList": { "base": null, "refs": { "DescribeCustomerGatewaysRequest$CustomerGatewayIds": "

        One or more customer gateway IDs.

        Default: Describes all your customer gateways.

        " } }, "CustomerGatewayList": { "base": null, "refs": { "DescribeCustomerGatewaysResult$CustomerGateways": "

        Information about one or more customer gateways.

        " } }, "DatafeedSubscriptionState": { "base": null, "refs": { "SpotDatafeedSubscription$State": "

        The state of the Spot instance data feed subscription.

        " } }, "DateTime": { "base": null, "refs": { "BundleTask$StartTime": "

        The time this task started.

        ", "BundleTask$UpdateTime": "

        The time of the most recent update for the task.

        ", "ClientData$UploadStart": "

        The time that the disk upload starts.

        ", "ClientData$UploadEnd": "

        The time that the disk upload ends.

        ", "DescribeSpotFleetRequestHistoryRequest$StartTime": "

        The starting date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "DescribeSpotFleetRequestHistoryResponse$StartTime": "

        The starting date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "DescribeSpotFleetRequestHistoryResponse$LastEvaluatedTime": "

        The last date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). All records up to this time were retrieved.

        If nextToken indicates that there are more results, this value is not present.

        ", "DescribeSpotPriceHistoryRequest$StartTime": "

        The date and time, up to the past 90 days, from which to start retrieving the price history data, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "DescribeSpotPriceHistoryRequest$EndTime": "

        The date and time, up to the current date, from which to stop retrieving the price history data, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "EbsInstanceBlockDevice$AttachTime": "

        The time stamp when the attachment initiated.

        ", "FlowLog$CreationTime": "

        The date and time the flow log was created.

        ", "GetConsoleOutputResult$Timestamp": "

        The time the output was last updated.

        ", "GetPasswordDataResult$Timestamp": "

        The time the data was last updated.

        ", "HistoryRecord$Timestamp": "

        The date and time of the event, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "HostReservation$End": "

        The date and time that the reservation ends.

        ", "HostReservation$Start": "

        The date and time that the reservation started.

        ", "IdFormat$Deadline": "

        The date in UTC at which you are permanently switched over to using longer IDs. If a deadline is not yet available for this resource type, this field is not returned.

        ", "Instance$LaunchTime": "

        The time the instance was launched.

        ", "InstanceNetworkInterfaceAttachment$AttachTime": "

        The time stamp when the attachment initiated.

        ", "InstanceStatusDetails$ImpairedSince": "

        The time when a status check failed. For an instance that was launched and impaired, this is the time when the instance was launched.

        ", "InstanceStatusEvent$NotBefore": "

        The earliest scheduled start time for the event.

        ", "InstanceStatusEvent$NotAfter": "

        The latest scheduled end time for the event.

        ", "NatGateway$CreateTime": "

        The date and time the NAT gateway was created.

        ", "NatGateway$DeleteTime": "

        The date and time the NAT gateway was deleted, if applicable.

        ", "NetworkInterfaceAttachment$AttachTime": "

        The timestamp indicating when the attachment initiated.

        ", "ProvisionedBandwidth$RequestTime": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        ", "ProvisionedBandwidth$ProvisionTime": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        ", "ReportInstanceStatusRequest$StartTime": "

        The time at which the reported instance health state began.

        ", "ReportInstanceStatusRequest$EndTime": "

        The time at which the reported instance health state ended.

        ", "RequestSpotInstancesRequest$ValidFrom": "

        The start date of the request. If this is a one-time request, the request becomes active at this date and time and remains active until all instances launch, the request expires, or the request is canceled. If the request is persistent, the request becomes active at this date and time and remains active until it expires or is canceled.

        Default: The request is effective indefinitely.

        ", "RequestSpotInstancesRequest$ValidUntil": "

        The end date of the request. If this is a one-time request, the request remains active until all instances launch, the request is canceled, or this date is reached. If the request is persistent, it remains active until it is canceled or this date and time is reached.

        Default: The request is effective indefinitely.

        ", "ReservedInstances$Start": "

        The date and time the Reserved Instance started.

        ", "ReservedInstances$End": "

        The time when the Reserved Instance expires.

        ", "ReservedInstancesListing$CreateDate": "

        The time the listing was created.

        ", "ReservedInstancesListing$UpdateDate": "

        The last modified timestamp of the listing.

        ", "ReservedInstancesModification$CreateDate": "

        The time when the modification request was created.

        ", "ReservedInstancesModification$UpdateDate": "

        The time when the modification request was last updated.

        ", "ReservedInstancesModification$EffectiveDate": "

        The time for the modification to become effective.

        ", "ScheduledInstance$PreviousSlotEndTime": "

        The time that the previous schedule ended or will end.

        ", "ScheduledInstance$NextSlotStartTime": "

        The time for the next schedule to start.

        ", "ScheduledInstance$TermStartDate": "

        The start date for the Scheduled Instance.

        ", "ScheduledInstance$TermEndDate": "

        The end date for the Scheduled Instance.

        ", "ScheduledInstance$CreateDate": "

        The date when the Scheduled Instance was purchased.

        ", "ScheduledInstanceAvailability$FirstSlotStartTime": "

        The time period for the first schedule to start.

        ", "SlotDateTimeRangeRequest$EarliestTime": "

        The earliest date and time, in UTC, for the Scheduled Instance to start.

        ", "SlotDateTimeRangeRequest$LatestTime": "

        The latest date and time, in UTC, for the Scheduled Instance to start. This value must be later than or equal to the earliest date and at most three months in the future.

        ", "SlotStartTimeRangeRequest$EarliestTime": "

        The earliest date and time, in UTC, for the Scheduled Instance to start.

        ", "SlotStartTimeRangeRequest$LatestTime": "

        The latest date and time, in UTC, for the Scheduled Instance to start.

        ", "Snapshot$StartTime": "

        The time stamp when the snapshot was initiated.

        ", "SpotFleetRequestConfig$CreateTime": "

        The creation date and time of the request.

        ", "SpotFleetRequestConfigData$ValidFrom": "

        The start date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.

        ", "SpotFleetRequestConfigData$ValidUntil": "

        The end date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request.

        ", "SpotInstanceRequest$ValidFrom": "

        The start date of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). The request becomes active at this date and time.

        ", "SpotInstanceRequest$ValidUntil": "

        The end date of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). If this is a one-time request, it remains active until all instances launch, the request is canceled, or this date is reached. If the request is persistent, it remains active until it is canceled or this date is reached.

        ", "SpotInstanceRequest$CreateTime": "

        The date and time when the Spot instance request was created, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "SpotInstanceStatus$UpdateTime": "

        The date and time of the most recent status update, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "SpotPrice$Timestamp": "

        The date and time the request was created, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "VgwTelemetry$LastStatusChange": "

        The date and time of the last change in status.

        ", "Volume$CreateTime": "

        The time stamp when volume creation was initiated.

        ", "VolumeAttachment$AttachTime": "

        The time stamp when the attachment initiated.

        ", "VolumeStatusEvent$NotBefore": "

        The earliest start time of the event.

        ", "VolumeStatusEvent$NotAfter": "

        The latest end time of the event.

        ", "VpcEndpoint$CreationTimestamp": "

        The date and time the VPC endpoint was created.

        ", "VpcPeeringConnection$ExpirationTime": "

        The time that an unaccepted VPC peering connection will expire.

        " } }, "DeleteCustomerGatewayRequest": { "base": "

        Contains the parameters for DeleteCustomerGateway.

        ", "refs": { } }, "DeleteDhcpOptionsRequest": { "base": "

        Contains the parameters for DeleteDhcpOptions.

        ", "refs": { } }, "DeleteFlowLogsRequest": { "base": "

        Contains the parameters for DeleteFlowLogs.

        ", "refs": { } }, "DeleteFlowLogsResult": { "base": "

        Contains the output of DeleteFlowLogs.

        ", "refs": { } }, "DeleteInternetGatewayRequest": { "base": "

        Contains the parameters for DeleteInternetGateway.

        ", "refs": { } }, "DeleteKeyPairRequest": { "base": "

        Contains the parameters for DeleteKeyPair.

        ", "refs": { } }, "DeleteNatGatewayRequest": { "base": "

        Contains the parameters for DeleteNatGateway.

        ", "refs": { } }, "DeleteNatGatewayResult": { "base": "

        Contains the output of DeleteNatGateway.

        ", "refs": { } }, "DeleteNetworkAclEntryRequest": { "base": "

        Contains the parameters for DeleteNetworkAclEntry.

        ", "refs": { } }, "DeleteNetworkAclRequest": { "base": "

        Contains the parameters for DeleteNetworkAcl.

        ", "refs": { } }, "DeleteNetworkInterfaceRequest": { "base": "

        Contains the parameters for DeleteNetworkInterface.

        ", "refs": { } }, "DeletePlacementGroupRequest": { "base": "

        Contains the parameters for DeletePlacementGroup.

        ", "refs": { } }, "DeleteRouteRequest": { "base": "

        Contains the parameters for DeleteRoute.

        ", "refs": { } }, "DeleteRouteTableRequest": { "base": "

        Contains the parameters for DeleteRouteTable.

        ", "refs": { } }, "DeleteSecurityGroupRequest": { "base": "

        Contains the parameters for DeleteSecurityGroup.

        ", "refs": { } }, "DeleteSnapshotRequest": { "base": "

        Contains the parameters for DeleteSnapshot.

        ", "refs": { } }, "DeleteSpotDatafeedSubscriptionRequest": { "base": "

        Contains the parameters for DeleteSpotDatafeedSubscription.

        ", "refs": { } }, "DeleteSubnetRequest": { "base": "

        Contains the parameters for DeleteSubnet.

        ", "refs": { } }, "DeleteTagsRequest": { "base": "

        Contains the parameters for DeleteTags.

        ", "refs": { } }, "DeleteVolumeRequest": { "base": "

        Contains the parameters for DeleteVolume.

        ", "refs": { } }, "DeleteVpcEndpointsRequest": { "base": "

        Contains the parameters for DeleteVpcEndpoints.

        ", "refs": { } }, "DeleteVpcEndpointsResult": { "base": "

        Contains the output of DeleteVpcEndpoints.

        ", "refs": { } }, "DeleteVpcPeeringConnectionRequest": { "base": "

        Contains the parameters for DeleteVpcPeeringConnection.

        ", "refs": { } }, "DeleteVpcPeeringConnectionResult": { "base": "

        Contains the output of DeleteVpcPeeringConnection.

        ", "refs": { } }, "DeleteVpcRequest": { "base": "

        Contains the parameters for DeleteVpc.

        ", "refs": { } }, "DeleteVpnConnectionRequest": { "base": "

        Contains the parameters for DeleteVpnConnection.

        ", "refs": { } }, "DeleteVpnConnectionRouteRequest": { "base": "

        Contains the parameters for DeleteVpnConnectionRoute.

        ", "refs": { } }, "DeleteVpnGatewayRequest": { "base": "

        Contains the parameters for DeleteVpnGateway.

        ", "refs": { } }, "DeregisterImageRequest": { "base": "

        Contains the parameters for DeregisterImage.

        ", "refs": { } }, "DescribeAccountAttributesRequest": { "base": "

        Contains the parameters for DescribeAccountAttributes.

        ", "refs": { } }, "DescribeAccountAttributesResult": { "base": "

        Contains the output of DescribeAccountAttributes.

        ", "refs": { } }, "DescribeAddressesRequest": { "base": "

        Contains the parameters for DescribeAddresses.

        ", "refs": { } }, "DescribeAddressesResult": { "base": "

        Contains the output of DescribeAddresses.

        ", "refs": { } }, "DescribeAvailabilityZonesRequest": { "base": "

        Contains the parameters for DescribeAvailabilityZones.

        ", "refs": { } }, "DescribeAvailabilityZonesResult": { "base": "

        Contains the output of DescribeAvailabiltyZones.

        ", "refs": { } }, "DescribeBundleTasksRequest": { "base": "

        Contains the parameters for DescribeBundleTasks.

        ", "refs": { } }, "DescribeBundleTasksResult": { "base": "

        Contains the output of DescribeBundleTasks.

        ", "refs": { } }, "DescribeClassicLinkInstancesRequest": { "base": "

        Contains the parameters for DescribeClassicLinkInstances.

        ", "refs": { } }, "DescribeClassicLinkInstancesResult": { "base": "

        Contains the output of DescribeClassicLinkInstances.

        ", "refs": { } }, "DescribeConversionTaskList": { "base": null, "refs": { "DescribeConversionTasksResult$ConversionTasks": "

        Information about the conversion tasks.

        " } }, "DescribeConversionTasksRequest": { "base": "

        Contains the parameters for DescribeConversionTasks.

        ", "refs": { } }, "DescribeConversionTasksResult": { "base": "

        Contains the output for DescribeConversionTasks.

        ", "refs": { } }, "DescribeCustomerGatewaysRequest": { "base": "

        Contains the parameters for DescribeCustomerGateways.

        ", "refs": { } }, "DescribeCustomerGatewaysResult": { "base": "

        Contains the output of DescribeCustomerGateways.

        ", "refs": { } }, "DescribeDhcpOptionsRequest": { "base": "

        Contains the parameters for DescribeDhcpOptions.

        ", "refs": { } }, "DescribeDhcpOptionsResult": { "base": "

        Contains the output of DescribeDhcpOptions.

        ", "refs": { } }, "DescribeExportTasksRequest": { "base": "

        Contains the parameters for DescribeExportTasks.

        ", "refs": { } }, "DescribeExportTasksResult": { "base": "

        Contains the output for DescribeExportTasks.

        ", "refs": { } }, "DescribeFlowLogsRequest": { "base": "

        Contains the parameters for DescribeFlowLogs.

        ", "refs": { } }, "DescribeFlowLogsResult": { "base": "

        Contains the output of DescribeFlowLogs.

        ", "refs": { } }, "DescribeHostReservationOfferingsRequest": { "base": null, "refs": { } }, "DescribeHostReservationOfferingsResult": { "base": null, "refs": { } }, "DescribeHostReservationsRequest": { "base": null, "refs": { } }, "DescribeHostReservationsResult": { "base": null, "refs": { } }, "DescribeHostsRequest": { "base": "

        Contains the parameters for DescribeHosts.

        ", "refs": { } }, "DescribeHostsResult": { "base": "

        Contains the output of DescribeHosts.

        ", "refs": { } }, "DescribeIdFormatRequest": { "base": "

        Contains the parameters for DescribeIdFormat.

        ", "refs": { } }, "DescribeIdFormatResult": { "base": "

        Contains the output of DescribeIdFormat.

        ", "refs": { } }, "DescribeIdentityIdFormatRequest": { "base": "

        Contains the parameters for DescribeIdentityIdFormat.

        ", "refs": { } }, "DescribeIdentityIdFormatResult": { "base": "

        Contains the output of DescribeIdentityIdFormat.

        ", "refs": { } }, "DescribeImageAttributeRequest": { "base": "

        Contains the parameters for DescribeImageAttribute.

        ", "refs": { } }, "DescribeImagesRequest": { "base": "

        Contains the parameters for DescribeImages.

        ", "refs": { } }, "DescribeImagesResult": { "base": "

        Contains the output of DescribeImages.

        ", "refs": { } }, "DescribeImportImageTasksRequest": { "base": "

        Contains the parameters for DescribeImportImageTasks.

        ", "refs": { } }, "DescribeImportImageTasksResult": { "base": "

        Contains the output for DescribeImportImageTasks.

        ", "refs": { } }, "DescribeImportSnapshotTasksRequest": { "base": "

        Contains the parameters for DescribeImportSnapshotTasks.

        ", "refs": { } }, "DescribeImportSnapshotTasksResult": { "base": "

        Contains the output for DescribeImportSnapshotTasks.

        ", "refs": { } }, "DescribeInstanceAttributeRequest": { "base": "

        Contains the parameters for DescribeInstanceAttribute.

        ", "refs": { } }, "DescribeInstanceStatusRequest": { "base": "

        Contains the parameters for DescribeInstanceStatus.

        ", "refs": { } }, "DescribeInstanceStatusResult": { "base": "

        Contains the output of DescribeInstanceStatus.

        ", "refs": { } }, "DescribeInstancesRequest": { "base": "

        Contains the parameters for DescribeInstances.

        ", "refs": { } }, "DescribeInstancesResult": { "base": "

        Contains the output of DescribeInstances.

        ", "refs": { } }, "DescribeInternetGatewaysRequest": { "base": "

        Contains the parameters for DescribeInternetGateways.

        ", "refs": { } }, "DescribeInternetGatewaysResult": { "base": "

        Contains the output of DescribeInternetGateways.

        ", "refs": { } }, "DescribeKeyPairsRequest": { "base": "

        Contains the parameters for DescribeKeyPairs.

        ", "refs": { } }, "DescribeKeyPairsResult": { "base": "

        Contains the output of DescribeKeyPairs.

        ", "refs": { } }, "DescribeMovingAddressesRequest": { "base": "

        Contains the parameters for DescribeMovingAddresses.

        ", "refs": { } }, "DescribeMovingAddressesResult": { "base": "

        Contains the output of DescribeMovingAddresses.

        ", "refs": { } }, "DescribeNatGatewaysRequest": { "base": "

        Contains the parameters for DescribeNatGateways.

        ", "refs": { } }, "DescribeNatGatewaysResult": { "base": "

        Contains the output of DescribeNatGateways.

        ", "refs": { } }, "DescribeNetworkAclsRequest": { "base": "

        Contains the parameters for DescribeNetworkAcls.

        ", "refs": { } }, "DescribeNetworkAclsResult": { "base": "

        Contains the output of DescribeNetworkAcls.

        ", "refs": { } }, "DescribeNetworkInterfaceAttributeRequest": { "base": "

        Contains the parameters for DescribeNetworkInterfaceAttribute.

        ", "refs": { } }, "DescribeNetworkInterfaceAttributeResult": { "base": "

        Contains the output of DescribeNetworkInterfaceAttribute.

        ", "refs": { } }, "DescribeNetworkInterfacesRequest": { "base": "

        Contains the parameters for DescribeNetworkInterfaces.

        ", "refs": { } }, "DescribeNetworkInterfacesResult": { "base": "

        Contains the output of DescribeNetworkInterfaces.

        ", "refs": { } }, "DescribePlacementGroupsRequest": { "base": "

        Contains the parameters for DescribePlacementGroups.

        ", "refs": { } }, "DescribePlacementGroupsResult": { "base": "

        Contains the output of DescribePlacementGroups.

        ", "refs": { } }, "DescribePrefixListsRequest": { "base": "

        Contains the parameters for DescribePrefixLists.

        ", "refs": { } }, "DescribePrefixListsResult": { "base": "

        Contains the output of DescribePrefixLists.

        ", "refs": { } }, "DescribeRegionsRequest": { "base": "

        Contains the parameters for DescribeRegions.

        ", "refs": { } }, "DescribeRegionsResult": { "base": "

        Contains the output of DescribeRegions.

        ", "refs": { } }, "DescribeReservedInstancesListingsRequest": { "base": "

        Contains the parameters for DescribeReservedInstancesListings.

        ", "refs": { } }, "DescribeReservedInstancesListingsResult": { "base": "

        Contains the output of DescribeReservedInstancesListings.

        ", "refs": { } }, "DescribeReservedInstancesModificationsRequest": { "base": "

        Contains the parameters for DescribeReservedInstancesModifications.

        ", "refs": { } }, "DescribeReservedInstancesModificationsResult": { "base": "

        Contains the output of DescribeReservedInstancesModifications.

        ", "refs": { } }, "DescribeReservedInstancesOfferingsRequest": { "base": "

        Contains the parameters for DescribeReservedInstancesOfferings.

        ", "refs": { } }, "DescribeReservedInstancesOfferingsResult": { "base": "

        Contains the output of DescribeReservedInstancesOfferings.

        ", "refs": { } }, "DescribeReservedInstancesRequest": { "base": "

        Contains the parameters for DescribeReservedInstances.

        ", "refs": { } }, "DescribeReservedInstancesResult": { "base": "

        Contains the output for DescribeReservedInstances.

        ", "refs": { } }, "DescribeRouteTablesRequest": { "base": "

        Contains the parameters for DescribeRouteTables.

        ", "refs": { } }, "DescribeRouteTablesResult": { "base": "

        Contains the output of DescribeRouteTables.

        ", "refs": { } }, "DescribeScheduledInstanceAvailabilityRequest": { "base": "

        Contains the parameters for DescribeScheduledInstanceAvailability.

        ", "refs": { } }, "DescribeScheduledInstanceAvailabilityResult": { "base": "

        Contains the output of DescribeScheduledInstanceAvailability.

        ", "refs": { } }, "DescribeScheduledInstancesRequest": { "base": "

        Contains the parameters for DescribeScheduledInstances.

        ", "refs": { } }, "DescribeScheduledInstancesResult": { "base": "

        Contains the output of DescribeScheduledInstances.

        ", "refs": { } }, "DescribeSecurityGroupReferencesRequest": { "base": null, "refs": { } }, "DescribeSecurityGroupReferencesResult": { "base": null, "refs": { } }, "DescribeSecurityGroupsRequest": { "base": "

        Contains the parameters for DescribeSecurityGroups.

        ", "refs": { } }, "DescribeSecurityGroupsResult": { "base": "

        Contains the output of DescribeSecurityGroups.

        ", "refs": { } }, "DescribeSnapshotAttributeRequest": { "base": "

        Contains the parameters for DescribeSnapshotAttribute.

        ", "refs": { } }, "DescribeSnapshotAttributeResult": { "base": "

        Contains the output of DescribeSnapshotAttribute.

        ", "refs": { } }, "DescribeSnapshotsRequest": { "base": "

        Contains the parameters for DescribeSnapshots.

        ", "refs": { } }, "DescribeSnapshotsResult": { "base": "

        Contains the output of DescribeSnapshots.

        ", "refs": { } }, "DescribeSpotDatafeedSubscriptionRequest": { "base": "

        Contains the parameters for DescribeSpotDatafeedSubscription.

        ", "refs": { } }, "DescribeSpotDatafeedSubscriptionResult": { "base": "

        Contains the output of DescribeSpotDatafeedSubscription.

        ", "refs": { } }, "DescribeSpotFleetInstancesRequest": { "base": "

        Contains the parameters for DescribeSpotFleetInstances.

        ", "refs": { } }, "DescribeSpotFleetInstancesResponse": { "base": "

        Contains the output of DescribeSpotFleetInstances.

        ", "refs": { } }, "DescribeSpotFleetRequestHistoryRequest": { "base": "

        Contains the parameters for DescribeSpotFleetRequestHistory.

        ", "refs": { } }, "DescribeSpotFleetRequestHistoryResponse": { "base": "

        Contains the output of DescribeSpotFleetRequestHistory.

        ", "refs": { } }, "DescribeSpotFleetRequestsRequest": { "base": "

        Contains the parameters for DescribeSpotFleetRequests.

        ", "refs": { } }, "DescribeSpotFleetRequestsResponse": { "base": "

        Contains the output of DescribeSpotFleetRequests.

        ", "refs": { } }, "DescribeSpotInstanceRequestsRequest": { "base": "

        Contains the parameters for DescribeSpotInstanceRequests.

        ", "refs": { } }, "DescribeSpotInstanceRequestsResult": { "base": "

        Contains the output of DescribeSpotInstanceRequests.

        ", "refs": { } }, "DescribeSpotPriceHistoryRequest": { "base": "

        Contains the parameters for DescribeSpotPriceHistory.

        ", "refs": { } }, "DescribeSpotPriceHistoryResult": { "base": "

        Contains the output of DescribeSpotPriceHistory.

        ", "refs": { } }, "DescribeStaleSecurityGroupsRequest": { "base": null, "refs": { } }, "DescribeStaleSecurityGroupsResult": { "base": null, "refs": { } }, "DescribeSubnetsRequest": { "base": "

        Contains the parameters for DescribeSubnets.

        ", "refs": { } }, "DescribeSubnetsResult": { "base": "

        Contains the output of DescribeSubnets.

        ", "refs": { } }, "DescribeTagsRequest": { "base": "

        Contains the parameters for DescribeTags.

        ", "refs": { } }, "DescribeTagsResult": { "base": "

        Contains the output of DescribeTags.

        ", "refs": { } }, "DescribeVolumeAttributeRequest": { "base": "

        Contains the parameters for DescribeVolumeAttribute.

        ", "refs": { } }, "DescribeVolumeAttributeResult": { "base": "

        Contains the output of DescribeVolumeAttribute.

        ", "refs": { } }, "DescribeVolumeStatusRequest": { "base": "

        Contains the parameters for DescribeVolumeStatus.

        ", "refs": { } }, "DescribeVolumeStatusResult": { "base": "

        Contains the output of DescribeVolumeStatus.

        ", "refs": { } }, "DescribeVolumesRequest": { "base": "

        Contains the parameters for DescribeVolumes.

        ", "refs": { } }, "DescribeVolumesResult": { "base": "

        Contains the output of DescribeVolumes.

        ", "refs": { } }, "DescribeVpcAttributeRequest": { "base": "

        Contains the parameters for DescribeVpcAttribute.

        ", "refs": { } }, "DescribeVpcAttributeResult": { "base": "

        Contains the output of DescribeVpcAttribute.

        ", "refs": { } }, "DescribeVpcClassicLinkDnsSupportRequest": { "base": "

        Contains the parameters for DescribeVpcClassicLinkDnsSupport.

        ", "refs": { } }, "DescribeVpcClassicLinkDnsSupportResult": { "base": "

        Contains the output of DescribeVpcClassicLinkDnsSupport.

        ", "refs": { } }, "DescribeVpcClassicLinkRequest": { "base": "

        Contains the parameters for DescribeVpcClassicLink.

        ", "refs": { } }, "DescribeVpcClassicLinkResult": { "base": "

        Contains the output of DescribeVpcClassicLink.

        ", "refs": { } }, "DescribeVpcEndpointServicesRequest": { "base": "

        Contains the parameters for DescribeVpcEndpointServices.

        ", "refs": { } }, "DescribeVpcEndpointServicesResult": { "base": "

        Contains the output of DescribeVpcEndpointServices.

        ", "refs": { } }, "DescribeVpcEndpointsRequest": { "base": "

        Contains the parameters for DescribeVpcEndpoints.

        ", "refs": { } }, "DescribeVpcEndpointsResult": { "base": "

        Contains the output of DescribeVpcEndpoints.

        ", "refs": { } }, "DescribeVpcPeeringConnectionsRequest": { "base": "

        Contains the parameters for DescribeVpcPeeringConnections.

        ", "refs": { } }, "DescribeVpcPeeringConnectionsResult": { "base": "

        Contains the output of DescribeVpcPeeringConnections.

        ", "refs": { } }, "DescribeVpcsRequest": { "base": "

        Contains the parameters for DescribeVpcs.

        ", "refs": { } }, "DescribeVpcsResult": { "base": "

        Contains the output of DescribeVpcs.

        ", "refs": { } }, "DescribeVpnConnectionsRequest": { "base": "

        Contains the parameters for DescribeVpnConnections.

        ", "refs": { } }, "DescribeVpnConnectionsResult": { "base": "

        Contains the output of DescribeVpnConnections.

        ", "refs": { } }, "DescribeVpnGatewaysRequest": { "base": "

        Contains the parameters for DescribeVpnGateways.

        ", "refs": { } }, "DescribeVpnGatewaysResult": { "base": "

        Contains the output of DescribeVpnGateways.

        ", "refs": { } }, "DetachClassicLinkVpcRequest": { "base": "

        Contains the parameters for DetachClassicLinkVpc.

        ", "refs": { } }, "DetachClassicLinkVpcResult": { "base": "

        Contains the output of DetachClassicLinkVpc.

        ", "refs": { } }, "DetachInternetGatewayRequest": { "base": "

        Contains the parameters for DetachInternetGateway.

        ", "refs": { } }, "DetachNetworkInterfaceRequest": { "base": "

        Contains the parameters for DetachNetworkInterface.

        ", "refs": { } }, "DetachVolumeRequest": { "base": "

        Contains the parameters for DetachVolume.

        ", "refs": { } }, "DetachVpnGatewayRequest": { "base": "

        Contains the parameters for DetachVpnGateway.

        ", "refs": { } }, "DeviceType": { "base": null, "refs": { "Image$RootDeviceType": "

        The type of root device used by the AMI. The AMI can use an EBS volume or an instance store volume.

        ", "Instance$RootDeviceType": "

        The root device type used by the AMI. The AMI can use an EBS volume or an instance store volume.

        " } }, "DhcpConfiguration": { "base": "

        Describes a DHCP configuration option.

        ", "refs": { "DhcpConfigurationList$member": null } }, "DhcpConfigurationList": { "base": null, "refs": { "DhcpOptions$DhcpConfigurations": "

        One or more DHCP options in the set.

        " } }, "DhcpConfigurationValueList": { "base": null, "refs": { "DhcpConfiguration$Values": "

        One or more values for the DHCP option.

        " } }, "DhcpOptions": { "base": "

        Describes a set of DHCP options.

        ", "refs": { "CreateDhcpOptionsResult$DhcpOptions": "

        A set of DHCP options.

        ", "DhcpOptionsList$member": null } }, "DhcpOptionsIdStringList": { "base": null, "refs": { "DescribeDhcpOptionsRequest$DhcpOptionsIds": "

        The IDs of one or more DHCP options sets.

        Default: Describes all your DHCP options sets.

        " } }, "DhcpOptionsList": { "base": null, "refs": { "DescribeDhcpOptionsResult$DhcpOptions": "

        Information about one or more DHCP options sets.

        " } }, "DisableVgwRoutePropagationRequest": { "base": "

        Contains the parameters for DisableVgwRoutePropagation.

        ", "refs": { } }, "DisableVpcClassicLinkDnsSupportRequest": { "base": "

        Contains the parameters for DisableVpcClassicLinkDnsSupport.

        ", "refs": { } }, "DisableVpcClassicLinkDnsSupportResult": { "base": "

        Contains the output of DisableVpcClassicLinkDnsSupport.

        ", "refs": { } }, "DisableVpcClassicLinkRequest": { "base": "

        Contains the parameters for DisableVpcClassicLink.

        ", "refs": { } }, "DisableVpcClassicLinkResult": { "base": "

        Contains the output of DisableVpcClassicLink.

        ", "refs": { } }, "DisassociateAddressRequest": { "base": "

        Contains the parameters for DisassociateAddress.

        ", "refs": { } }, "DisassociateRouteTableRequest": { "base": "

        Contains the parameters for DisassociateRouteTable.

        ", "refs": { } }, "DiskImage": { "base": "

        Describes a disk image.

        ", "refs": { "DiskImageList$member": null } }, "DiskImageDescription": { "base": "

        Describes a disk image.

        ", "refs": { "ImportInstanceVolumeDetailItem$Image": "

        The image.

        ", "ImportVolumeTaskDetails$Image": "

        The image.

        " } }, "DiskImageDetail": { "base": "

        Describes a disk image.

        ", "refs": { "DiskImage$Image": "

        Information about the disk image.

        ", "ImportVolumeRequest$Image": "

        The disk image.

        " } }, "DiskImageFormat": { "base": null, "refs": { "DiskImageDescription$Format": "

        The disk image format.

        ", "DiskImageDetail$Format": "

        The disk image format.

        ", "ExportToS3Task$DiskImageFormat": "

        The format for the exported image.

        ", "ExportToS3TaskSpecification$DiskImageFormat": "

        The format for the exported image.

        " } }, "DiskImageList": { "base": null, "refs": { "ImportInstanceRequest$DiskImages": "

        The disk image.

        " } }, "DiskImageVolumeDescription": { "base": "

        Describes a disk image volume.

        ", "refs": { "ImportInstanceVolumeDetailItem$Volume": "

        The volume.

        ", "ImportVolumeTaskDetails$Volume": "

        The volume.

        " } }, "DomainType": { "base": null, "refs": { "Address$Domain": "

        Indicates whether this Elastic IP address is for use with instances in EC2-Classic (standard) or instances in a VPC (vpc).

        ", "AllocateAddressRequest$Domain": "

        Set to vpc to allocate the address for use with instances in a VPC.

        Default: The address is for use with instances in EC2-Classic.

        ", "AllocateAddressResult$Domain": "

        Indicates whether this Elastic IP address is for use with instances in EC2-Classic (standard) or instances in a VPC (vpc).

        " } }, "Double": { "base": null, "refs": { "ClientData$UploadSize": "

        The size of the uploaded disk image, in GiB.

        ", "PriceSchedule$Price": "

        The fixed price for the term.

        ", "PriceScheduleSpecification$Price": "

        The fixed price for the term.

        ", "PricingDetail$Price": "

        The price per instance.

        ", "RecurringCharge$Amount": "

        The amount of the recurring charge.

        ", "ReservedInstanceLimitPrice$Amount": "

        Used for Reserved Instance Marketplace offerings. Specifies the limit price on the total order (instanceCount * price).

        ", "SnapshotDetail$DiskImageSize": "

        The size of the disk in the snapshot, in GiB.

        ", "SnapshotTaskDetail$DiskImageSize": "

        The size of the disk in the snapshot, in GiB.

        ", "SpotFleetLaunchSpecification$WeightedCapacity": "

        The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms (instances or a performance characteristic such as vCPUs, memory, or I/O).

        If the target capacity divided by this value is not a whole number, we round the number of instances to the next whole number. If this value is not specified, the default is 1.

        ", "SpotFleetRequestConfigData$FulfilledCapacity": "

        The number of units fulfilled by this request compared to the set target capacity.

        " } }, "EbsBlockDevice": { "base": "

        Describes a block device for an EBS volume.

        ", "refs": { "BlockDeviceMapping$Ebs": "

        Parameters used to automatically set up EBS volumes when the instance is launched.

        " } }, "EbsInstanceBlockDevice": { "base": "

        Describes a parameter used to set up an EBS volume in a block device mapping.

        ", "refs": { "InstanceBlockDeviceMapping$Ebs": "

        Parameters used to automatically set up EBS volumes when the instance is launched.

        " } }, "EbsInstanceBlockDeviceSpecification": { "base": "

        Describes information used to set up an EBS volume specified in a block device mapping.

        ", "refs": { "InstanceBlockDeviceMappingSpecification$Ebs": "

        Parameters used to automatically set up EBS volumes when the instance is launched.

        " } }, "EnableVgwRoutePropagationRequest": { "base": "

        Contains the parameters for EnableVgwRoutePropagation.

        ", "refs": { } }, "EnableVolumeIORequest": { "base": "

        Contains the parameters for EnableVolumeIO.

        ", "refs": { } }, "EnableVpcClassicLinkDnsSupportRequest": { "base": "

        Contains the parameters for EnableVpcClassicLinkDnsSupport.

        ", "refs": { } }, "EnableVpcClassicLinkDnsSupportResult": { "base": "

        Contains the output of EnableVpcClassicLinkDnsSupport.

        ", "refs": { } }, "EnableVpcClassicLinkRequest": { "base": "

        Contains the parameters for EnableVpcClassicLink.

        ", "refs": { } }, "EnableVpcClassicLinkResult": { "base": "

        Contains the output of EnableVpcClassicLink.

        ", "refs": { } }, "EventCode": { "base": null, "refs": { "InstanceStatusEvent$Code": "

        The event code.

        " } }, "EventInformation": { "base": "

        Describes a Spot fleet event.

        ", "refs": { "HistoryRecord$EventInformation": "

        Information about the event.

        " } }, "EventType": { "base": null, "refs": { "DescribeSpotFleetRequestHistoryRequest$EventType": "

        The type of events to describe. By default, all events are described.

        ", "HistoryRecord$EventType": "

        The event type.

        • error - Indicates an error with the Spot fleet request.

        • fleetRequestChange - Indicates a change in the status or configuration of the Spot fleet request.

        • instanceChange - Indicates that an instance was launched or terminated.

        " } }, "ExcessCapacityTerminationPolicy": { "base": null, "refs": { "ModifySpotFleetRequestRequest$ExcessCapacityTerminationPolicy": "

        Indicates whether running Spot instances should be terminated if the target capacity of the Spot fleet request is decreased below the current size of the Spot fleet.

        ", "SpotFleetRequestConfigData$ExcessCapacityTerminationPolicy": "

        Indicates whether running Spot instances should be terminated if the target capacity of the Spot fleet request is decreased below the current size of the Spot fleet.

        " } }, "ExecutableByStringList": { "base": null, "refs": { "DescribeImagesRequest$ExecutableUsers": "

        Scopes the images by users with explicit launch permissions. Specify an AWS account ID, self (the sender of the request), or all (public AMIs).

        " } }, "ExportEnvironment": { "base": null, "refs": { "CreateInstanceExportTaskRequest$TargetEnvironment": "

        The target virtualization environment.

        ", "InstanceExportDetails$TargetEnvironment": "

        The target virtualization environment.

        " } }, "ExportTask": { "base": "

        Describes an instance export task.

        ", "refs": { "CreateInstanceExportTaskResult$ExportTask": "

        Information about the instance export task.

        ", "ExportTaskList$member": null } }, "ExportTaskIdStringList": { "base": null, "refs": { "DescribeExportTasksRequest$ExportTaskIds": "

        One or more export task IDs.

        " } }, "ExportTaskList": { "base": null, "refs": { "DescribeExportTasksResult$ExportTasks": "

        Information about the export tasks.

        " } }, "ExportTaskState": { "base": null, "refs": { "ExportTask$State": "

        The state of the export task.

        " } }, "ExportToS3Task": { "base": "

        Describes the format and location for an instance export task.

        ", "refs": { "ExportTask$ExportToS3Task": "

        Information about the export task.

        " } }, "ExportToS3TaskSpecification": { "base": "

        Describes an instance export task.

        ", "refs": { "CreateInstanceExportTaskRequest$ExportToS3Task": "

        The format and location for an instance export task.

        " } }, "Filter": { "base": "

        A filter name and value pair that is used to return a more specific list of results. Filters can be used to match a set of resources by various criteria, such as tags, attributes, or IDs.

        ", "refs": { "FilterList$member": null } }, "FilterList": { "base": null, "refs": { "DescribeAddressesRequest$Filters": "

        One or more filters. Filter names and values are case-sensitive.

        • allocation-id - [EC2-VPC] The allocation ID for the address.

        • association-id - [EC2-VPC] The association ID for the address.

        • domain - Indicates whether the address is for use in EC2-Classic (standard) or in a VPC (vpc).

        • instance-id - The ID of the instance the address is associated with, if any.

        • network-interface-id - [EC2-VPC] The ID of the network interface that the address is associated with, if any.

        • network-interface-owner-id - The AWS account ID of the owner.

        • private-ip-address - [EC2-VPC] The private IP address associated with the Elastic IP address.

        • public-ip - The Elastic IP address.

        ", "DescribeAvailabilityZonesRequest$Filters": "

        One or more filters.

        • message - Information about the Availability Zone.

        • region-name - The name of the region for the Availability Zone (for example, us-east-1).

        • state - The state of the Availability Zone (available | information | impaired | unavailable).

        • zone-name - The name of the Availability Zone (for example, us-east-1a).

        ", "DescribeBundleTasksRequest$Filters": "

        One or more filters.

        • bundle-id - The ID of the bundle task.

        • error-code - If the task failed, the error code returned.

        • error-message - If the task failed, the error message returned.

        • instance-id - The ID of the instance.

        • progress - The level of task completion, as a percentage (for example, 20%).

        • s3-bucket - The Amazon S3 bucket to store the AMI.

        • s3-prefix - The beginning of the AMI name.

        • start-time - The time the task started (for example, 2013-09-15T17:15:20.000Z).

        • state - The state of the task (pending | waiting-for-shutdown | bundling | storing | cancelling | complete | failed).

        • update-time - The time of the most recent update for the task.

        ", "DescribeClassicLinkInstancesRequest$Filters": "

        One or more filters.

        • group-id - The ID of a VPC security group that's associated with the instance.

        • instance-id - The ID of the instance.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC that the instance is linked to.

        ", "DescribeConversionTasksRequest$Filters": "

        One or more filters.

        ", "DescribeCustomerGatewaysRequest$Filters": "

        One or more filters.

        • bgp-asn - The customer gateway's Border Gateway Protocol (BGP) Autonomous System Number (ASN).

        • customer-gateway-id - The ID of the customer gateway.

        • ip-address - The IP address of the customer gateway's Internet-routable external interface.

        • state - The state of the customer gateway (pending | available | deleting | deleted).

        • type - The type of customer gateway. Currently, the only supported type is ipsec.1.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        ", "DescribeDhcpOptionsRequest$Filters": "

        One or more filters.

        • dhcp-options-id - The ID of a set of DHCP options.

        • key - The key for one of the options (for example, domain-name).

        • value - The value for one of the options.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        ", "DescribeFlowLogsRequest$Filter": "

        One or more filters.

        • deliver-log-status - The status of the logs delivery (SUCCESS | FAILED).

        • flow-log-id - The ID of the flow log.

        • log-group-name - The name of the log group.

        • resource-id - The ID of the VPC, subnet, or network interface.

        • traffic-type - The type of traffic (ACCEPT | REJECT | ALL)

        ", "DescribeHostReservationOfferingsRequest$Filter": "

        One or more filters.

        • instance-family - The instance family of the offering (e.g., m4).

        • payment-option - The payment option (No Upfront | Partial Upfront | All Upfront).

        ", "DescribeHostReservationsRequest$Filter": "

        One or more filters.

        • instance-family - The instance family (e.g., m4).

        • payment-option - The payment option (No Upfront | Partial Upfront | All Upfront).

        • state - The state of the reservation (payment-pending | payment-failed | active | retired).

        ", "DescribeHostsRequest$Filter": "

        One or more filters.

        • instance-type - The instance type size that the Dedicated Host is configured to support.

        • auto-placement - Whether auto-placement is enabled or disabled (on | off).

        • host-reservation-id - The ID of the reservation assigned to this host.

        • client-token - The idempotency token you provided when you launched the instance

        • state- The allocation state of the Dedicated Host (available | under-assessment | permanent-failure | released | released-permanent-failure).

        • availability-zone - The Availability Zone of the host.

        ", "DescribeImagesRequest$Filters": "

        One or more filters.

        • architecture - The image architecture (i386 | x86_64).

        • block-device-mapping.delete-on-termination - A Boolean value that indicates whether the Amazon EBS volume is deleted on instance termination.

        • block-device-mapping.device-name - The device name for the EBS volume (for example, /dev/sdh).

        • block-device-mapping.snapshot-id - The ID of the snapshot used for the EBS volume.

        • block-device-mapping.volume-size - The volume size of the EBS volume, in GiB.

        • block-device-mapping.volume-type - The volume type of the EBS volume (gp2 | io1 | st1 | sc1 | standard).

        • description - The description of the image (provided during image creation).

        • hypervisor - The hypervisor type (ovm | xen).

        • image-id - The ID of the image.

        • image-type - The image type (machine | kernel | ramdisk).

        • is-public - A Boolean that indicates whether the image is public.

        • kernel-id - The kernel ID.

        • manifest-location - The location of the image manifest.

        • name - The name of the AMI (provided during image creation).

        • owner-alias - String value from an Amazon-maintained list (amazon | aws-marketplace | microsoft) of snapshot owners. Not to be confused with the user-configured AWS account alias, which is set from the IAM console.

        • owner-id - The AWS account ID of the image owner.

        • platform - The platform. To only list Windows-based AMIs, use windows.

        • product-code - The product code.

        • product-code.type - The type of the product code (devpay | marketplace).

        • ramdisk-id - The RAM disk ID.

        • root-device-name - The name of the root device volume (for example, /dev/sda1).

        • root-device-type - The type of the root device volume (ebs | instance-store).

        • state - The state of the image (available | pending | failed).

        • state-reason-code - The reason code for the state change.

        • state-reason-message - The message for the state change.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • virtualization-type - The virtualization type (paravirtual | hvm).

        ", "DescribeImportImageTasksRequest$Filters": "

        Filter tasks using the task-state filter and one of the following values: active, completed, deleting, deleted.

        ", "DescribeImportSnapshotTasksRequest$Filters": "

        One or more filters.

        ", "DescribeInstanceStatusRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone of the instance.

        • event.code - The code for the scheduled event (instance-reboot | system-reboot | system-maintenance | instance-retirement | instance-stop).

        • event.description - A description of the event.

        • event.not-after - The latest end time for the scheduled event (for example, 2014-09-15T17:15:20.000Z).

        • event.not-before - The earliest start time for the scheduled event (for example, 2014-09-15T17:15:20.000Z).

        • instance-state-code - The code for the instance state, as a 16-bit unsigned integer. The high byte is an opaque internal value and should be ignored. The low byte is set based on the state represented. The valid values are 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64 (stopping), and 80 (stopped).

        • instance-state-name - The state of the instance (pending | running | shutting-down | terminated | stopping | stopped).

        • instance-status.reachability - Filters on instance status where the name is reachability (passed | failed | initializing | insufficient-data).

        • instance-status.status - The status of the instance (ok | impaired | initializing | insufficient-data | not-applicable).

        • system-status.reachability - Filters on system status where the name is reachability (passed | failed | initializing | insufficient-data).

        • system-status.status - The system status of the instance (ok | impaired | initializing | insufficient-data | not-applicable).

        ", "DescribeInstancesRequest$Filters": "

        One or more filters.

        • affinity - The affinity setting for an instance running on a Dedicated Host (default | host).

        • architecture - The instance architecture (i386 | x86_64).

        • availability-zone - The Availability Zone of the instance.

        • block-device-mapping.attach-time - The attach time for an EBS volume mapped to the instance, for example, 2010-09-15T17:15:20.000Z.

        • block-device-mapping.delete-on-termination - A Boolean that indicates whether the EBS volume is deleted on instance termination.

        • block-device-mapping.device-name - The device name for the EBS volume (for example, /dev/sdh or xvdh).

        • block-device-mapping.status - The status for the EBS volume (attaching | attached | detaching | detached).

        • block-device-mapping.volume-id - The volume ID of the EBS volume.

        • client-token - The idempotency token you provided when you launched the instance.

        • dns-name - The public DNS name of the instance.

        • group-id - The ID of the security group for the instance. EC2-Classic only.

        • group-name - The name of the security group for the instance. EC2-Classic only.

        • host-id - The ID of the Dedicated Host on which the instance is running, if applicable.

        • hypervisor - The hypervisor type of the instance (ovm | xen).

        • iam-instance-profile.arn - The instance profile associated with the instance. Specified as an ARN.

        • image-id - The ID of the image used to launch the instance.

        • instance-id - The ID of the instance.

        • instance-lifecycle - Indicates whether this is a Spot Instance or a Scheduled Instance (spot | scheduled).

        • instance-state-code - The state of the instance, as a 16-bit unsigned integer. The high byte is an opaque internal value and should be ignored. The low byte is set based on the state represented. The valid values are: 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64 (stopping), and 80 (stopped).

        • instance-state-name - The state of the instance (pending | running | shutting-down | terminated | stopping | stopped).

        • instance-type - The type of instance (for example, t2.micro).

        • instance.group-id - The ID of the security group for the instance.

        • instance.group-name - The name of the security group for the instance.

        • ip-address - The public IP address of the instance.

        • kernel-id - The kernel ID.

        • key-name - The name of the key pair used when the instance was launched.

        • launch-index - When launching multiple instances, this is the index for the instance in the launch group (for example, 0, 1, 2, and so on).

        • launch-time - The time when the instance was launched.

        • monitoring-state - Indicates whether monitoring is enabled for the instance (disabled | enabled).

        • owner-id - The AWS account ID of the instance owner.

        • placement-group-name - The name of the placement group for the instance.

        • platform - The platform. Use windows if you have Windows instances; otherwise, leave blank.

        • private-dns-name - The private DNS name of the instance.

        • private-ip-address - The private IP address of the instance.

        • product-code - The product code associated with the AMI used to launch the instance.

        • product-code.type - The type of product code (devpay | marketplace).

        • ramdisk-id - The RAM disk ID.

        • reason - The reason for the current state of the instance (for example, shows \"User Initiated [date]\" when you stop or terminate the instance). Similar to the state-reason-code filter.

        • requester-id - The ID of the entity that launched the instance on your behalf (for example, AWS Management Console, Auto Scaling, and so on).

        • reservation-id - The ID of the instance's reservation. A reservation ID is created any time you launch an instance. A reservation ID has a one-to-one relationship with an instance launch request, but can be associated with more than one instance if you launch multiple instances using the same launch request. For example, if you launch one instance, you'll get one reservation ID. If you launch ten instances using the same launch request, you'll also get one reservation ID.

        • root-device-name - The name of the root device for the instance (for example, /dev/sda1 or /dev/xvda).

        • root-device-type - The type of root device that the instance uses (ebs | instance-store).

        • source-dest-check - Indicates whether the instance performs source/destination checking. A value of true means that checking is enabled, and false means checking is disabled. The value must be false for the instance to perform network address translation (NAT) in your VPC.

        • spot-instance-request-id - The ID of the Spot instance request.

        • state-reason-code - The reason code for the state change.

        • state-reason-message - A message that describes the state change.

        • subnet-id - The ID of the subnet for the instance.

        • tag:key=value - The key/value combination of a tag assigned to the resource, where tag:key is the tag's key.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • tenancy - The tenancy of an instance (dedicated | default | host).

        • virtualization-type - The virtualization type of the instance (paravirtual | hvm).

        • vpc-id - The ID of the VPC that the instance is running in.

        • network-interface.description - The description of the network interface.

        • network-interface.subnet-id - The ID of the subnet for the network interface.

        • network-interface.vpc-id - The ID of the VPC for the network interface.

        • network-interface.network-interface-id - The ID of the network interface.

        • network-interface.owner-id - The ID of the owner of the network interface.

        • network-interface.availability-zone - The Availability Zone for the network interface.

        • network-interface.requester-id - The requester ID for the network interface.

        • network-interface.requester-managed - Indicates whether the network interface is being managed by AWS.

        • network-interface.status - The status of the network interface (available) | in-use).

        • network-interface.mac-address - The MAC address of the network interface.

        • network-interface.private-dns-name - The private DNS name of the network interface.

        • network-interface.source-dest-check - Whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

        • network-interface.group-id - The ID of a security group associated with the network interface.

        • network-interface.group-name - The name of a security group associated with the network interface.

        • network-interface.attachment.attachment-id - The ID of the interface attachment.

        • network-interface.attachment.instance-id - The ID of the instance to which the network interface is attached.

        • network-interface.attachment.instance-owner-id - The owner ID of the instance to which the network interface is attached.

        • network-interface.addresses.private-ip-address - The private IP address associated with the network interface.

        • network-interface.attachment.device-index - The device index to which the network interface is attached.

        • network-interface.attachment.status - The status of the attachment (attaching | attached | detaching | detached).

        • network-interface.attachment.attach-time - The time that the network interface was attached to an instance.

        • network-interface.attachment.delete-on-termination - Specifies whether the attachment is deleted when an instance is terminated.

        • network-interface.addresses.primary - Specifies whether the IP address of the network interface is the primary private IP address.

        • network-interface.addresses.association.public-ip - The ID of the association of an Elastic IP address with a network interface.

        • network-interface.addresses.association.ip-owner-id - The owner ID of the private IP address associated with the network interface.

        • association.public-ip - The address of the Elastic IP address bound to the network interface.

        • association.ip-owner-id - The owner of the Elastic IP address associated with the network interface.

        • association.allocation-id - The allocation ID returned when you allocated the Elastic IP address for your network interface.

        • association.association-id - The association ID returned when the network interface was associated with an IP address.

        ", "DescribeInternetGatewaysRequest$Filters": "

        One or more filters.

        • attachment.state - The current state of the attachment between the gateway and the VPC (available). Present only if a VPC is attached.

        • attachment.vpc-id - The ID of an attached VPC.

        • internet-gateway-id - The ID of the Internet gateway.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        ", "DescribeKeyPairsRequest$Filters": "

        One or more filters.

        • fingerprint - The fingerprint of the key pair.

        • key-name - The name of the key pair.

        ", "DescribeMovingAddressesRequest$Filters": "

        One or more filters.

        • moving-status - The status of the Elastic IP address (MovingToVpc | RestoringToClassic).

        ", "DescribeNatGatewaysRequest$Filter": "

        One or more filters.

        • nat-gateway-id - The ID of the NAT gateway.

        • state - The state of the NAT gateway (pending | failed | available | deleting | deleted).

        • subnet-id - The ID of the subnet in which the NAT gateway resides.

        • vpc-id - The ID of the VPC in which the NAT gateway resides.

        ", "DescribeNetworkAclsRequest$Filters": "

        One or more filters.

        • association.association-id - The ID of an association ID for the ACL.

        • association.network-acl-id - The ID of the network ACL involved in the association.

        • association.subnet-id - The ID of the subnet involved in the association.

        • default - Indicates whether the ACL is the default network ACL for the VPC.

        • entry.cidr - The CIDR range specified in the entry.

        • entry.egress - Indicates whether the entry applies to egress traffic.

        • entry.icmp.code - The ICMP code specified in the entry, if any.

        • entry.icmp.type - The ICMP type specified in the entry, if any.

        • entry.port-range.from - The start of the port range specified in the entry.

        • entry.port-range.to - The end of the port range specified in the entry.

        • entry.protocol - The protocol specified in the entry (tcp | udp | icmp or a protocol number).

        • entry.rule-action - Allows or denies the matching traffic (allow | deny).

        • entry.rule-number - The number of an entry (in other words, rule) in the ACL's set of entries.

        • network-acl-id - The ID of the network ACL.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC for the network ACL.

        ", "DescribeNetworkInterfacesRequest$Filters": "

        One or more filters.

        • addresses.private-ip-address - The private IP addresses associated with the network interface.

        • addresses.primary - Whether the private IP address is the primary IP address associated with the network interface.

        • addresses.association.public-ip - The association ID returned when the network interface was associated with the Elastic IP address.

        • addresses.association.owner-id - The owner ID of the addresses associated with the network interface.

        • association.association-id - The association ID returned when the network interface was associated with an IP address.

        • association.allocation-id - The allocation ID returned when you allocated the Elastic IP address for your network interface.

        • association.ip-owner-id - The owner of the Elastic IP address associated with the network interface.

        • association.public-ip - The address of the Elastic IP address bound to the network interface.

        • association.public-dns-name - The public DNS name for the network interface.

        • attachment.attachment-id - The ID of the interface attachment.

        • attachment.attach.time - The time that the network interface was attached to an instance.

        • attachment.delete-on-termination - Indicates whether the attachment is deleted when an instance is terminated.

        • attachment.device-index - The device index to which the network interface is attached.

        • attachment.instance-id - The ID of the instance to which the network interface is attached.

        • attachment.instance-owner-id - The owner ID of the instance to which the network interface is attached.

        • attachment.nat-gateway-id - The ID of the NAT gateway to which the network interface is attached.

        • attachment.status - The status of the attachment (attaching | attached | detaching | detached).

        • availability-zone - The Availability Zone of the network interface.

        • description - The description of the network interface.

        • group-id - The ID of a security group associated with the network interface.

        • group-name - The name of a security group associated with the network interface.

        • mac-address - The MAC address of the network interface.

        • network-interface-id - The ID of the network interface.

        • owner-id - The AWS account ID of the network interface owner.

        • private-ip-address - The private IP address or addresses of the network interface.

        • private-dns-name - The private DNS name of the network interface.

        • requester-id - The ID of the entity that launched the instance on your behalf (for example, AWS Management Console, Auto Scaling, and so on).

        • requester-managed - Indicates whether the network interface is being managed by an AWS service (for example, AWS Management Console, Auto Scaling, and so on).

        • source-desk-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

        • status - The status of the network interface. If the network interface is not attached to an instance, the status is available; if a network interface is attached to an instance the status is in-use.

        • subnet-id - The ID of the subnet for the network interface.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC for the network interface.

        ", "DescribePlacementGroupsRequest$Filters": "

        One or more filters.

        • group-name - The name of the placement group.

        • state - The state of the placement group (pending | available | deleting | deleted).

        • strategy - The strategy of the placement group (cluster).

        ", "DescribePrefixListsRequest$Filters": "

        One or more filters.

        • prefix-list-id: The ID of a prefix list.

        • prefix-list-name: The name of a prefix list.

        ", "DescribeRegionsRequest$Filters": "

        One or more filters.

        • endpoint - The endpoint of the region (for example, ec2.us-east-1.amazonaws.com).

        • region-name - The name of the region (for example, us-east-1).

        ", "DescribeReservedInstancesListingsRequest$Filters": "

        One or more filters.

        • reserved-instances-id - The ID of the Reserved Instances.

        • reserved-instances-listing-id - The ID of the Reserved Instances listing.

        • status - The status of the Reserved Instance listing (pending | active | cancelled | closed).

        • status-message - The reason for the status.

        ", "DescribeReservedInstancesModificationsRequest$Filters": "

        One or more filters.

        • client-token - The idempotency token for the modification request.

        • create-date - The time when the modification request was created.

        • effective-date - The time when the modification becomes effective.

        • modification-result.reserved-instances-id - The ID for the Reserved Instances created as part of the modification request. This ID is only available when the status of the modification is fulfilled.

        • modification-result.target-configuration.availability-zone - The Availability Zone for the new Reserved Instances.

        • modification-result.target-configuration.instance-count - The number of new Reserved Instances.

        • modification-result.target-configuration.instance-type - The instance type of the new Reserved Instances.

        • modification-result.target-configuration.platform - The network platform of the new Reserved Instances (EC2-Classic | EC2-VPC).

        • reserved-instances-id - The ID of the Reserved Instances modified.

        • reserved-instances-modification-id - The ID of the modification request.

        • status - The status of the Reserved Instances modification request (processing | fulfilled | failed).

        • status-message - The reason for the status.

        • update-date - The time when the modification request was last updated.

        ", "DescribeReservedInstancesOfferingsRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone where the Reserved Instance can be used.

        • duration - The duration of the Reserved Instance (for example, one year or three years), in seconds (31536000 | 94608000).

        • fixed-price - The purchase price of the Reserved Instance (for example, 9800.0).

        • instance-type - The instance type that is covered by the reservation.

        • marketplace - Set to true to show only Reserved Instance Marketplace offerings. When this filter is not used, which is the default behavior, all offerings from both AWS and the Reserved Instance Marketplace are listed.

        • product-description - The Reserved Instance product platform description. Instances that include (Amazon VPC) in the product platform description will only be displayed to EC2-Classic account holders and are for use with Amazon VPC. (Linux/UNIX | Linux/UNIX (Amazon VPC) | SUSE Linux | SUSE Linux (Amazon VPC) | Red Hat Enterprise Linux | Red Hat Enterprise Linux (Amazon VPC) | Windows | Windows (Amazon VPC) | Windows with SQL Server Standard | Windows with SQL Server Standard (Amazon VPC) | Windows with SQL Server Web | Windows with SQL Server Web (Amazon VPC) | Windows with SQL Server Enterprise | Windows with SQL Server Enterprise (Amazon VPC))

        • reserved-instances-offering-id - The Reserved Instances offering ID.

        • usage-price - The usage price of the Reserved Instance, per hour (for example, 0.84).

        ", "DescribeReservedInstancesRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone where the Reserved Instance can be used.

        • duration - The duration of the Reserved Instance (one year or three years), in seconds (31536000 | 94608000).

        • end - The time when the Reserved Instance expires (for example, 2015-08-07T11:54:42.000Z).

        • fixed-price - The purchase price of the Reserved Instance (for example, 9800.0).

        • instance-type - The instance type that is covered by the reservation.

        • product-description - The Reserved Instance product platform description. Instances that include (Amazon VPC) in the product platform description will only be displayed to EC2-Classic account holders and are for use with Amazon VPC (Linux/UNIX | Linux/UNIX (Amazon VPC) | SUSE Linux | SUSE Linux (Amazon VPC) | Red Hat Enterprise Linux | Red Hat Enterprise Linux (Amazon VPC) | Windows | Windows (Amazon VPC) | Windows with SQL Server Standard | Windows with SQL Server Standard (Amazon VPC) | Windows with SQL Server Web | Windows with SQL Server Web (Amazon VPC) | Windows with SQL Server Enterprise | Windows with SQL Server Enterprise (Amazon VPC)).

        • reserved-instances-id - The ID of the Reserved Instance.

        • start - The time at which the Reserved Instance purchase request was placed (for example, 2014-08-07T11:54:42.000Z).

        • state - The state of the Reserved Instance (payment-pending | active | payment-failed | retired).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • usage-price - The usage price of the Reserved Instance, per hour (for example, 0.84).

        ", "DescribeRouteTablesRequest$Filters": "

        One or more filters.

        • association.route-table-association-id - The ID of an association ID for the route table.

        • association.route-table-id - The ID of the route table involved in the association.

        • association.subnet-id - The ID of the subnet involved in the association.

        • association.main - Indicates whether the route table is the main route table for the VPC (true | false).

        • route-table-id - The ID of the route table.

        • route.destination-cidr-block - The CIDR range specified in a route in the table.

        • route.destination-prefix-list-id - The ID (prefix) of the AWS service specified in a route in the table.

        • route.gateway-id - The ID of a gateway specified in a route in the table.

        • route.instance-id - The ID of an instance specified in a route in the table.

        • route.nat-gateway-id - The ID of a NAT gateway.

        • route.origin - Describes how the route was created. CreateRouteTable indicates that the route was automatically created when the route table was created; CreateRoute indicates that the route was manually added to the route table; EnableVgwRoutePropagation indicates that the route was propagated by route propagation.

        • route.state - The state of a route in the route table (active | blackhole). The blackhole state indicates that the route's target isn't available (for example, the specified gateway isn't attached to the VPC, the specified NAT instance has been terminated, and so on).

        • route.vpc-peering-connection-id - The ID of a VPC peering connection specified in a route in the table.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC for the route table.

        ", "DescribeScheduledInstanceAvailabilityRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone (for example, us-west-2a).

        • instance-type - The instance type (for example, c4.large).

        • network-platform - The network platform (EC2-Classic or EC2-VPC).

        • platform - The platform (Linux/UNIX or Windows).

        ", "DescribeScheduledInstancesRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone (for example, us-west-2a).

        • instance-type - The instance type (for example, c4.large).

        • network-platform - The network platform (EC2-Classic or EC2-VPC).

        • platform - The platform (Linux/UNIX or Windows).

        ", "DescribeSecurityGroupsRequest$Filters": "

        One or more filters. If using multiple filters for rules, the results include security groups for which any combination of rules - not necessarily a single rule - match all filters.

        • description - The description of the security group.

        • egress.ip-permission.prefix-list-id - The ID (prefix) of the AWS service to which the security group allows access.

        • group-id - The ID of the security group.

        • group-name - The name of the security group.

        • ip-permission.cidr - A CIDR range that has been granted permission.

        • ip-permission.from-port - The start of port range for the TCP and UDP protocols, or an ICMP type number.

        • ip-permission.group-id - The ID of a security group that has been granted permission.

        • ip-permission.group-name - The name of a security group that has been granted permission.

        • ip-permission.protocol - The IP protocol for the permission (tcp | udp | icmp or a protocol number).

        • ip-permission.to-port - The end of port range for the TCP and UDP protocols, or an ICMP code.

        • ip-permission.user-id - The ID of an AWS account that has been granted permission.

        • owner-id - The AWS account ID of the owner of the security group.

        • tag-key - The key of a tag assigned to the security group.

        • tag-value - The value of a tag assigned to the security group.

        • vpc-id - The ID of the VPC specified when the security group was created.

        ", "DescribeSnapshotsRequest$Filters": "

        One or more filters.

        • description - A description of the snapshot.

        • owner-alias - Value from an Amazon-maintained list (amazon | aws-marketplace | microsoft) of snapshot owners. Not to be confused with the user-configured AWS account alias, which is set from the IAM consolew.

        • owner-id - The ID of the AWS account that owns the snapshot.

        • progress - The progress of the snapshot, as a percentage (for example, 80%).

        • snapshot-id - The snapshot ID.

        • start-time - The time stamp when the snapshot was initiated.

        • status - The status of the snapshot (pending | completed | error).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • volume-id - The ID of the volume the snapshot is for.

        • volume-size - The size of the volume, in GiB.

        ", "DescribeSpotInstanceRequestsRequest$Filters": "

        One or more filters.

        • availability-zone-group - The Availability Zone group.

        • create-time - The time stamp when the Spot instance request was created.

        • fault-code - The fault code related to the request.

        • fault-message - The fault message related to the request.

        • instance-id - The ID of the instance that fulfilled the request.

        • launch-group - The Spot instance launch group.

        • launch.block-device-mapping.delete-on-termination - Indicates whether the Amazon EBS volume is deleted on instance termination.

        • launch.block-device-mapping.device-name - The device name for the Amazon EBS volume (for example, /dev/sdh).

        • launch.block-device-mapping.snapshot-id - The ID of the snapshot used for the Amazon EBS volume.

        • launch.block-device-mapping.volume-size - The size of the Amazon EBS volume, in GiB.

        • launch.block-device-mapping.volume-type - The type of the Amazon EBS volume: gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1for Cold HDD, or standard for Magnetic.

        • launch.group-id - The security group for the instance.

        • launch.image-id - The ID of the AMI.

        • launch.instance-type - The type of instance (for example, m3.medium).

        • launch.kernel-id - The kernel ID.

        • launch.key-name - The name of the key pair the instance launched with.

        • launch.monitoring-enabled - Whether monitoring is enabled for the Spot instance.

        • launch.ramdisk-id - The RAM disk ID.

        • network-interface.network-interface-id - The ID of the network interface.

        • network-interface.device-index - The index of the device for the network interface attachment on the instance.

        • network-interface.subnet-id - The ID of the subnet for the instance.

        • network-interface.description - A description of the network interface.

        • network-interface.private-ip-address - The primary private IP address of the network interface.

        • network-interface.delete-on-termination - Indicates whether the network interface is deleted when the instance is terminated.

        • network-interface.group-id - The ID of the security group associated with the network interface.

        • network-interface.group-name - The name of the security group associated with the network interface.

        • network-interface.addresses.primary - Indicates whether the IP address is the primary private IP address.

        • product-description - The product description associated with the instance (Linux/UNIX | Windows).

        • spot-instance-request-id - The Spot instance request ID.

        • spot-price - The maximum hourly price for any Spot instance launched to fulfill the request.

        • state - The state of the Spot instance request (open | active | closed | cancelled | failed). Spot bid status information can help you track your Amazon EC2 Spot instance requests. For more information, see Spot Bid Status in the Amazon Elastic Compute Cloud User Guide.

        • status-code - The short code describing the most recent evaluation of your Spot instance request.

        • status-message - The message explaining the status of the Spot instance request.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • type - The type of Spot instance request (one-time | persistent).

        • launched-availability-zone - The Availability Zone in which the bid is launched.

        • valid-from - The start date of the request.

        • valid-until - The end date of the request.

        ", "DescribeSpotPriceHistoryRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone for which prices should be returned.

        • instance-type - The type of instance (for example, m3.medium).

        • product-description - The product description for the Spot price (Linux/UNIX | SUSE Linux | Windows | Linux/UNIX (Amazon VPC) | SUSE Linux (Amazon VPC) | Windows (Amazon VPC)).

        • spot-price - The Spot price. The value must match exactly (or use wildcards; greater than or less than comparison is not supported).

        • timestamp - The timestamp of the Spot price history, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). You can use wildcards (* and ?). Greater than or less than comparison is not supported.

        ", "DescribeSubnetsRequest$Filters": "

        One or more filters.

        • availabilityZone - The Availability Zone for the subnet. You can also use availability-zone as the filter name.

        • available-ip-address-count - The number of IP addresses in the subnet that are available.

        • cidrBlock - The CIDR block of the subnet. The CIDR block you specify must exactly match the subnet's CIDR block for information to be returned for the subnet. You can also use cidr or cidr-block as the filter names.

        • defaultForAz - Indicates whether this is the default subnet for the Availability Zone. You can also use default-for-az as the filter name.

        • state - The state of the subnet (pending | available).

        • subnet-id - The ID of the subnet.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC for the subnet.

        ", "DescribeTagsRequest$Filters": "

        One or more filters.

        • key - The tag key.

        • resource-id - The resource ID.

        • resource-type - The resource type (customer-gateway | dhcp-options | image | instance | internet-gateway | network-acl | network-interface | reserved-instances | route-table | security-group | snapshot | spot-instances-request | subnet | volume | vpc | vpn-connection | vpn-gateway).

        • value - The tag value.

        ", "DescribeVolumeStatusRequest$Filters": "

        One or more filters.

        • action.code - The action code for the event (for example, enable-volume-io).

        • action.description - A description of the action.

        • action.event-id - The event ID associated with the action.

        • availability-zone - The Availability Zone of the instance.

        • event.description - A description of the event.

        • event.event-id - The event ID.

        • event.event-type - The event type (for io-enabled: passed | failed; for io-performance: io-performance:degraded | io-performance:severely-degraded | io-performance:stalled).

        • event.not-after - The latest end time for the event.

        • event.not-before - The earliest start time for the event.

        • volume-status.details-name - The cause for volume-status.status (io-enabled | io-performance).

        • volume-status.details-status - The status of volume-status.details-name (for io-enabled: passed | failed; for io-performance: normal | degraded | severely-degraded | stalled).

        • volume-status.status - The status of the volume (ok | impaired | warning | insufficient-data).

        ", "DescribeVolumesRequest$Filters": "

        One or more filters.

        • attachment.attach-time - The time stamp when the attachment initiated.

        • attachment.delete-on-termination - Whether the volume is deleted on instance termination.

        • attachment.device - The device name that is exposed to the instance (for example, /dev/sda1).

        • attachment.instance-id - The ID of the instance the volume is attached to.

        • attachment.status - The attachment state (attaching | attached | detaching | detached).

        • availability-zone - The Availability Zone in which the volume was created.

        • create-time - The time stamp when the volume was created.

        • encrypted - The encryption status of the volume.

        • size - The size of the volume, in GiB.

        • snapshot-id - The snapshot from which the volume was created.

        • status - The status of the volume (creating | available | in-use | deleting | deleted | error).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • volume-id - The volume ID.

        • volume-type - The Amazon EBS volume type. This can be gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, or standard for Magnetic volumes.

        ", "DescribeVpcClassicLinkRequest$Filters": "

        One or more filters.

        • is-classic-link-enabled - Whether the VPC is enabled for ClassicLink (true | false).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        ", "DescribeVpcEndpointsRequest$Filters": "

        One or more filters.

        • service-name: The name of the AWS service.

        • vpc-id: The ID of the VPC in which the endpoint resides.

        • vpc-endpoint-id: The ID of the endpoint.

        • vpc-endpoint-state: The state of the endpoint. (pending | available | deleting | deleted)

        ", "DescribeVpcPeeringConnectionsRequest$Filters": "

        One or more filters.

        • accepter-vpc-info.cidr-block - The CIDR block of the peer VPC.

        • accepter-vpc-info.owner-id - The AWS account ID of the owner of the peer VPC.

        • accepter-vpc-info.vpc-id - The ID of the peer VPC.

        • expiration-time - The expiration date and time for the VPC peering connection.

        • requester-vpc-info.cidr-block - The CIDR block of the requester's VPC.

        • requester-vpc-info.owner-id - The AWS account ID of the owner of the requester VPC.

        • requester-vpc-info.vpc-id - The ID of the requester VPC.

        • status-code - The status of the VPC peering connection (pending-acceptance | failed | expired | provisioning | active | deleted | rejected).

        • status-message - A message that provides more information about the status of the VPC peering connection, if applicable.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-peering-connection-id - The ID of the VPC peering connection.

        ", "DescribeVpcsRequest$Filters": "

        One or more filters.

        • cidr - The CIDR block of the VPC. The CIDR block you specify must exactly match the VPC's CIDR block for information to be returned for the VPC. Must contain the slash followed by one or two digits (for example, /28).

        • dhcp-options-id - The ID of a set of DHCP options.

        • isDefault - Indicates whether the VPC is the default VPC.

        • state - The state of the VPC (pending | available).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC.

        ", "DescribeVpnConnectionsRequest$Filters": "

        One or more filters.

        • customer-gateway-configuration - The configuration information for the customer gateway.

        • customer-gateway-id - The ID of a customer gateway associated with the VPN connection.

        • state - The state of the VPN connection (pending | available | deleting | deleted).

        • option.static-routes-only - Indicates whether the connection has static routes only. Used for devices that do not support Border Gateway Protocol (BGP).

        • route.destination-cidr-block - The destination CIDR block. This corresponds to the subnet used in a customer data center.

        • bgp-asn - The BGP Autonomous System Number (ASN) associated with a BGP device.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • type - The type of VPN connection. Currently the only supported type is ipsec.1.

        • vpn-connection-id - The ID of the VPN connection.

        • vpn-gateway-id - The ID of a virtual private gateway associated with the VPN connection.

        ", "DescribeVpnGatewaysRequest$Filters": "

        One or more filters.

        • attachment.state - The current state of the attachment between the gateway and the VPC (attaching | attached | detaching | detached).

        • attachment.vpc-id - The ID of an attached VPC.

        • availability-zone - The Availability Zone for the virtual private gateway (if applicable).

        • state - The state of the virtual private gateway (pending | available | deleting | deleted).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • type - The type of virtual private gateway. Currently the only supported type is ipsec.1.

        • vpn-gateway-id - The ID of the virtual private gateway.

        " } }, "FleetType": { "base": null, "refs": { "SpotFleetRequestConfigData$Type": "

        The type of request. Indicates whether the fleet will only request the target capacity or also attempt to maintain it. When you request a certain target capacity, the fleet will only place the required bids. It will not attempt to replenish Spot instances if capacity is diminished, nor will it submit bids in alternative Spot pools if capacity is not available. When you want to maintain a certain target capacity, fleet will place the required bids to meet this target capacity. It will also automatically replenish any interrupted instances. Default: maintain.

        " } }, "Float": { "base": null, "refs": { "ReservedInstances$UsagePrice": "

        The usage price of the Reserved Instance, per hour.

        ", "ReservedInstances$FixedPrice": "

        The purchase price of the Reserved Instance.

        ", "ReservedInstancesOffering$UsagePrice": "

        The usage price of the Reserved Instance, per hour.

        ", "ReservedInstancesOffering$FixedPrice": "

        The purchase price of the Reserved Instance.

        " } }, "FlowLog": { "base": "

        Describes a flow log.

        ", "refs": { "FlowLogSet$member": null } }, "FlowLogSet": { "base": null, "refs": { "DescribeFlowLogsResult$FlowLogs": "

        Information about the flow logs.

        " } }, "FlowLogsResourceType": { "base": null, "refs": { "CreateFlowLogsRequest$ResourceType": "

        The type of resource on which to create the flow log.

        " } }, "GatewayType": { "base": null, "refs": { "CreateCustomerGatewayRequest$Type": "

        The type of VPN connection that this customer gateway supports (ipsec.1).

        ", "CreateVpnGatewayRequest$Type": "

        The type of VPN connection this virtual private gateway supports.

        ", "VpnConnection$Type": "

        The type of VPN connection.

        ", "VpnGateway$Type": "

        The type of VPN connection the virtual private gateway supports.

        " } }, "GetConsoleOutputRequest": { "base": "

        Contains the parameters for GetConsoleOutput.

        ", "refs": { } }, "GetConsoleOutputResult": { "base": "

        Contains the output of GetConsoleOutput.

        ", "refs": { } }, "GetConsoleScreenshotRequest": { "base": "

        Contains the parameters for the request.

        ", "refs": { } }, "GetConsoleScreenshotResult": { "base": "

        Contains the output of the request.

        ", "refs": { } }, "GetHostReservationPurchasePreviewRequest": { "base": null, "refs": { } }, "GetHostReservationPurchasePreviewResult": { "base": null, "refs": { } }, "GetPasswordDataRequest": { "base": "

        Contains the parameters for GetPasswordData.

        ", "refs": { } }, "GetPasswordDataResult": { "base": "

        Contains the output of GetPasswordData.

        ", "refs": { } }, "GroupIdStringList": { "base": null, "refs": { "AttachClassicLinkVpcRequest$Groups": "

        The ID of one or more of the VPC's security groups. You cannot specify security groups from a different VPC.

        ", "DescribeSecurityGroupsRequest$GroupIds": "

        One or more security group IDs. Required for security groups in a nondefault VPC.

        Default: Describes all your security groups.

        ", "ModifyInstanceAttributeRequest$Groups": "

        [EC2-VPC] Changes the security groups of the instance. You must specify at least one security group, even if it's just the default security group for the VPC. You must specify the security group ID, not the security group name.

        " } }, "GroupIdentifier": { "base": "

        Describes a security group.

        ", "refs": { "GroupIdentifierList$member": null } }, "GroupIdentifierList": { "base": null, "refs": { "ClassicLinkInstance$Groups": "

        A list of security groups.

        ", "DescribeNetworkInterfaceAttributeResult$Groups": "

        The security groups associated with the network interface.

        ", "Instance$SecurityGroups": "

        One or more security groups for the instance.

        ", "InstanceAttribute$Groups": "

        The security groups associated with the instance.

        ", "InstanceNetworkInterface$Groups": "

        One or more security groups.

        ", "LaunchSpecification$SecurityGroups": "

        One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.

        ", "NetworkInterface$Groups": "

        Any security groups for the network interface.

        ", "Reservation$Groups": "

        [EC2-Classic only] One or more security groups.

        ", "SpotFleetLaunchSpecification$SecurityGroups": "

        One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.

        " } }, "GroupIds": { "base": null, "refs": { "DescribeSecurityGroupReferencesRequest$GroupId": "

        One or more security group IDs in your account.

        " } }, "GroupNameStringList": { "base": null, "refs": { "DescribeSecurityGroupsRequest$GroupNames": "

        [EC2-Classic and default VPC only] One or more security group names. You can specify either the security group name or the security group ID. For security groups in a nondefault VPC, use the group-name filter to describe security groups by name.

        Default: Describes all your security groups.

        ", "ModifySnapshotAttributeRequest$GroupNames": "

        The group to modify for the snapshot.

        " } }, "HistoryRecord": { "base": "

        Describes an event in the history of the Spot fleet request.

        ", "refs": { "HistoryRecords$member": null } }, "HistoryRecords": { "base": null, "refs": { "DescribeSpotFleetRequestHistoryResponse$HistoryRecords": "

        Information about the events in the history of the Spot fleet request.

        " } }, "Host": { "base": "

        Describes the properties of the Dedicated Host.

        ", "refs": { "HostList$member": null } }, "HostInstance": { "base": "

        Describes an instance running on a Dedicated Host.

        ", "refs": { "HostInstanceList$member": null } }, "HostInstanceList": { "base": null, "refs": { "Host$Instances": "

        The IDs and instance type that are currently running on the Dedicated Host.

        " } }, "HostList": { "base": null, "refs": { "DescribeHostsResult$Hosts": "

        Information about the Dedicated Hosts.

        " } }, "HostOffering": { "base": "

        Details about the Dedicated Host Reservation offering.

        ", "refs": { "HostOfferingSet$member": null } }, "HostOfferingSet": { "base": null, "refs": { "DescribeHostReservationOfferingsResult$OfferingSet": "

        Information about the offerings.

        " } }, "HostProperties": { "base": "

        Describes properties of a Dedicated Host.

        ", "refs": { "Host$HostProperties": "

        The hardware specifications of the Dedicated Host.

        " } }, "HostReservation": { "base": "

        Details about the Dedicated Host Reservation and associated Dedicated Hosts.

        ", "refs": { "HostReservationSet$member": null } }, "HostReservationIdSet": { "base": null, "refs": { "DescribeHostReservationsRequest$HostReservationIdSet": "

        One or more host reservation IDs.

        " } }, "HostReservationSet": { "base": null, "refs": { "DescribeHostReservationsResult$HostReservationSet": "

        Details about the reservation's configuration.

        " } }, "HostTenancy": { "base": null, "refs": { "ModifyInstancePlacementRequest$Tenancy": "

        The tenancy of the instance that you are modifying.

        " } }, "HypervisorType": { "base": null, "refs": { "Image$Hypervisor": "

        The hypervisor type of the image.

        ", "Instance$Hypervisor": "

        The hypervisor type of the instance.

        " } }, "IamInstanceProfile": { "base": "

        Describes an IAM instance profile.

        ", "refs": { "Instance$IamInstanceProfile": "

        The IAM instance profile associated with the instance, if applicable.

        " } }, "IamInstanceProfileSpecification": { "base": "

        Describes an IAM instance profile.

        ", "refs": { "LaunchSpecification$IamInstanceProfile": "

        The IAM instance profile.

        ", "RequestSpotLaunchSpecification$IamInstanceProfile": "

        The IAM instance profile.

        ", "RunInstancesRequest$IamInstanceProfile": "

        The IAM instance profile.

        ", "SpotFleetLaunchSpecification$IamInstanceProfile": "

        The IAM instance profile.

        " } }, "IcmpTypeCode": { "base": "

        Describes the ICMP type and code.

        ", "refs": { "CreateNetworkAclEntryRequest$IcmpTypeCode": "

        ICMP protocol: The ICMP type and code. Required if specifying ICMP for the protocol.

        ", "NetworkAclEntry$IcmpTypeCode": "

        ICMP protocol: The ICMP type and code.

        ", "ReplaceNetworkAclEntryRequest$IcmpTypeCode": "

        ICMP protocol: The ICMP type and code. Required if specifying 1 (ICMP) for the protocol.

        " } }, "IdFormat": { "base": "

        Describes the ID format for a resource.

        ", "refs": { "IdFormatList$member": null } }, "IdFormatList": { "base": null, "refs": { "DescribeIdFormatResult$Statuses": "

        Information about the ID format for the resource.

        ", "DescribeIdentityIdFormatResult$Statuses": "

        Information about the ID format for the resources.

        " } }, "Image": { "base": "

        Describes an image.

        ", "refs": { "ImageList$member": null } }, "ImageAttribute": { "base": "

        Describes an image attribute.

        ", "refs": { } }, "ImageAttributeName": { "base": null, "refs": { "DescribeImageAttributeRequest$Attribute": "

        The AMI attribute.

        Note: Depending on your account privileges, the blockDeviceMapping attribute may return a Client.AuthFailure error. If this happens, use DescribeImages to get information about the block device mapping for the AMI.

        " } }, "ImageDiskContainer": { "base": "

        Describes the disk container object for an import image task.

        ", "refs": { "ImageDiskContainerList$member": null } }, "ImageDiskContainerList": { "base": null, "refs": { "ImportImageRequest$DiskContainers": "

        Information about the disk containers.

        " } }, "ImageIdStringList": { "base": null, "refs": { "DescribeImagesRequest$ImageIds": "

        One or more image IDs.

        Default: Describes all images available to you.

        " } }, "ImageList": { "base": null, "refs": { "DescribeImagesResult$Images": "

        Information about one or more images.

        " } }, "ImageState": { "base": null, "refs": { "Image$State": "

        The current state of the AMI. If the state is available, the image is successfully registered and can be used to launch an instance.

        " } }, "ImageTypeValues": { "base": null, "refs": { "Image$ImageType": "

        The type of image.

        " } }, "ImportImageRequest": { "base": "

        Contains the parameters for ImportImage.

        ", "refs": { } }, "ImportImageResult": { "base": "

        Contains the output for ImportImage.

        ", "refs": { } }, "ImportImageTask": { "base": "

        Describes an import image task.

        ", "refs": { "ImportImageTaskList$member": null } }, "ImportImageTaskList": { "base": null, "refs": { "DescribeImportImageTasksResult$ImportImageTasks": "

        A list of zero or more import image tasks that are currently active or were completed or canceled in the previous 7 days.

        " } }, "ImportInstanceLaunchSpecification": { "base": "

        Describes the launch specification for VM import.

        ", "refs": { "ImportInstanceRequest$LaunchSpecification": "

        The launch specification.

        " } }, "ImportInstanceRequest": { "base": "

        Contains the parameters for ImportInstance.

        ", "refs": { } }, "ImportInstanceResult": { "base": "

        Contains the output for ImportInstance.

        ", "refs": { } }, "ImportInstanceTaskDetails": { "base": "

        Describes an import instance task.

        ", "refs": { "ConversionTask$ImportInstance": "

        If the task is for importing an instance, this contains information about the import instance task.

        " } }, "ImportInstanceVolumeDetailItem": { "base": "

        Describes an import volume task.

        ", "refs": { "ImportInstanceVolumeDetailSet$member": null } }, "ImportInstanceVolumeDetailSet": { "base": null, "refs": { "ImportInstanceTaskDetails$Volumes": "

        One or more volumes.

        " } }, "ImportKeyPairRequest": { "base": "

        Contains the parameters for ImportKeyPair.

        ", "refs": { } }, "ImportKeyPairResult": { "base": "

        Contains the output of ImportKeyPair.

        ", "refs": { } }, "ImportSnapshotRequest": { "base": "

        Contains the parameters for ImportSnapshot.

        ", "refs": { } }, "ImportSnapshotResult": { "base": "

        Contains the output for ImportSnapshot.

        ", "refs": { } }, "ImportSnapshotTask": { "base": "

        Describes an import snapshot task.

        ", "refs": { "ImportSnapshotTaskList$member": null } }, "ImportSnapshotTaskList": { "base": null, "refs": { "DescribeImportSnapshotTasksResult$ImportSnapshotTasks": "

        A list of zero or more import snapshot tasks that are currently active or were completed or canceled in the previous 7 days.

        " } }, "ImportTaskIdList": { "base": null, "refs": { "DescribeImportImageTasksRequest$ImportTaskIds": "

        A list of import image task IDs.

        ", "DescribeImportSnapshotTasksRequest$ImportTaskIds": "

        A list of import snapshot task IDs.

        " } }, "ImportVolumeRequest": { "base": "

        Contains the parameters for ImportVolume.

        ", "refs": { } }, "ImportVolumeResult": { "base": "

        Contains the output for ImportVolume.

        ", "refs": { } }, "ImportVolumeTaskDetails": { "base": "

        Describes an import volume task.

        ", "refs": { "ConversionTask$ImportVolume": "

        If the task is for importing a volume, this contains information about the import volume task.

        " } }, "Instance": { "base": "

        Describes an instance.

        ", "refs": { "InstanceList$member": null } }, "InstanceAttribute": { "base": "

        Describes an instance attribute.

        ", "refs": { } }, "InstanceAttributeName": { "base": null, "refs": { "DescribeInstanceAttributeRequest$Attribute": "

        The instance attribute.

        Note: The enaSupport attribute is not supported at this time.

        ", "ModifyInstanceAttributeRequest$Attribute": "

        The name of the attribute.

        ", "ResetInstanceAttributeRequest$Attribute": "

        The attribute to reset.

        You can only reset the following attributes: kernel | ramdisk | sourceDestCheck. To change an instance attribute, use ModifyInstanceAttribute.

        " } }, "InstanceBlockDeviceMapping": { "base": "

        Describes a block device mapping.

        ", "refs": { "InstanceBlockDeviceMappingList$member": null } }, "InstanceBlockDeviceMappingList": { "base": null, "refs": { "Instance$BlockDeviceMappings": "

        Any block device mapping entries for the instance.

        ", "InstanceAttribute$BlockDeviceMappings": "

        The block device mapping of the instance.

        " } }, "InstanceBlockDeviceMappingSpecification": { "base": "

        Describes a block device mapping entry.

        ", "refs": { "InstanceBlockDeviceMappingSpecificationList$member": null } }, "InstanceBlockDeviceMappingSpecificationList": { "base": null, "refs": { "ModifyInstanceAttributeRequest$BlockDeviceMappings": "

        Modifies the DeleteOnTermination attribute for volumes that are currently attached. The volume must be owned by the caller. If no value is specified for DeleteOnTermination, the default is true and the volume is deleted when the instance is terminated.

        To add instance store volumes to an Amazon EBS-backed instance, you must add them when you launch the instance. For more information, see Updating the Block Device Mapping when Launching an Instance in the Amazon Elastic Compute Cloud User Guide.

        " } }, "InstanceCapacity": { "base": "

        Information about the instance type that the Dedicated Host supports.

        ", "refs": { "AvailableInstanceCapacityList$member": null } }, "InstanceCount": { "base": "

        Describes a Reserved Instance listing state.

        ", "refs": { "InstanceCountList$member": null } }, "InstanceCountList": { "base": null, "refs": { "ReservedInstancesListing$InstanceCounts": "

        The number of instances in this state.

        " } }, "InstanceExportDetails": { "base": "

        Describes an instance to export.

        ", "refs": { "ExportTask$InstanceExportDetails": "

        Information about the instance to export.

        " } }, "InstanceIdSet": { "base": null, "refs": { "RunScheduledInstancesResult$InstanceIdSet": "

        The IDs of the newly launched instances.

        " } }, "InstanceIdStringList": { "base": null, "refs": { "DescribeClassicLinkInstancesRequest$InstanceIds": "

        One or more instance IDs. Must be instances linked to a VPC through ClassicLink.

        ", "DescribeInstanceStatusRequest$InstanceIds": "

        One or more instance IDs.

        Default: Describes all your instances.

        Constraints: Maximum 100 explicitly specified instance IDs.

        ", "DescribeInstancesRequest$InstanceIds": "

        One or more instance IDs.

        Default: Describes all your instances.

        ", "MonitorInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "RebootInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "ReportInstanceStatusRequest$Instances": "

        One or more instances.

        ", "StartInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "StopInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "TerminateInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "UnmonitorInstancesRequest$InstanceIds": "

        One or more instance IDs.

        " } }, "InstanceLifecycleType": { "base": null, "refs": { "Instance$InstanceLifecycle": "

        Indicates whether this is a Spot instance or a Scheduled Instance.

        " } }, "InstanceList": { "base": null, "refs": { "Reservation$Instances": "

        One or more instances.

        " } }, "InstanceMonitoring": { "base": "

        Describes the monitoring information of the instance.

        ", "refs": { "InstanceMonitoringList$member": null } }, "InstanceMonitoringList": { "base": null, "refs": { "MonitorInstancesResult$InstanceMonitorings": "

        Monitoring information for one or more instances.

        ", "UnmonitorInstancesResult$InstanceMonitorings": "

        Monitoring information for one or more instances.

        " } }, "InstanceNetworkInterface": { "base": "

        Describes a network interface.

        ", "refs": { "InstanceNetworkInterfaceList$member": null } }, "InstanceNetworkInterfaceAssociation": { "base": "

        Describes association information for an Elastic IP address.

        ", "refs": { "InstanceNetworkInterface$Association": "

        The association information for an Elastic IP associated with the network interface.

        ", "InstancePrivateIpAddress$Association": "

        The association information for an Elastic IP address for the network interface.

        " } }, "InstanceNetworkInterfaceAttachment": { "base": "

        Describes a network interface attachment.

        ", "refs": { "InstanceNetworkInterface$Attachment": "

        The network interface attachment.

        " } }, "InstanceNetworkInterfaceList": { "base": null, "refs": { "Instance$NetworkInterfaces": "

        [EC2-VPC] One or more network interfaces for the instance.

        " } }, "InstanceNetworkInterfaceSpecification": { "base": "

        Describes a network interface.

        ", "refs": { "InstanceNetworkInterfaceSpecificationList$member": null } }, "InstanceNetworkInterfaceSpecificationList": { "base": null, "refs": { "LaunchSpecification$NetworkInterfaces": "

        One or more network interfaces.

        ", "RequestSpotLaunchSpecification$NetworkInterfaces": "

        One or more network interfaces.

        ", "RunInstancesRequest$NetworkInterfaces": "

        One or more network interfaces.

        ", "SpotFleetLaunchSpecification$NetworkInterfaces": "

        One or more network interfaces.

        " } }, "InstancePrivateIpAddress": { "base": "

        Describes a private IP address.

        ", "refs": { "InstancePrivateIpAddressList$member": null } }, "InstancePrivateIpAddressList": { "base": null, "refs": { "InstanceNetworkInterface$PrivateIpAddresses": "

        The private IP addresses associated with the network interface.

        " } }, "InstanceState": { "base": "

        Describes the current state of the instance.

        ", "refs": { "Instance$State": "

        The current state of the instance.

        ", "InstanceStateChange$CurrentState": "

        The current state of the instance.

        ", "InstanceStateChange$PreviousState": "

        The previous state of the instance.

        ", "InstanceStatus$InstanceState": "

        The intended state of the instance. DescribeInstanceStatus requires that an instance be in the running state.

        " } }, "InstanceStateChange": { "base": "

        Describes an instance state change.

        ", "refs": { "InstanceStateChangeList$member": null } }, "InstanceStateChangeList": { "base": null, "refs": { "StartInstancesResult$StartingInstances": "

        Information about one or more started instances.

        ", "StopInstancesResult$StoppingInstances": "

        Information about one or more stopped instances.

        ", "TerminateInstancesResult$TerminatingInstances": "

        Information about one or more terminated instances.

        " } }, "InstanceStateName": { "base": null, "refs": { "InstanceState$Name": "

        The current state of the instance.

        " } }, "InstanceStatus": { "base": "

        Describes the status of an instance.

        ", "refs": { "InstanceStatusList$member": null } }, "InstanceStatusDetails": { "base": "

        Describes the instance status.

        ", "refs": { "InstanceStatusDetailsList$member": null } }, "InstanceStatusDetailsList": { "base": null, "refs": { "InstanceStatusSummary$Details": "

        The system instance health or application instance health.

        " } }, "InstanceStatusEvent": { "base": "

        Describes a scheduled event for an instance.

        ", "refs": { "InstanceStatusEventList$member": null } }, "InstanceStatusEventList": { "base": null, "refs": { "InstanceStatus$Events": "

        Any scheduled events associated with the instance.

        " } }, "InstanceStatusList": { "base": null, "refs": { "DescribeInstanceStatusResult$InstanceStatuses": "

        One or more instance status descriptions.

        " } }, "InstanceStatusSummary": { "base": "

        Describes the status of an instance.

        ", "refs": { "InstanceStatus$SystemStatus": "

        Reports impaired functionality that stems from issues related to the systems that support an instance, such as hardware failures and network connectivity problems.

        ", "InstanceStatus$InstanceStatus": "

        Reports impaired functionality that stems from issues internal to the instance, such as impaired reachability.

        " } }, "InstanceType": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$InstanceType": "

        The instance type that the reservation will cover (for example, m1.small). For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide.

        ", "ImportInstanceLaunchSpecification$InstanceType": "

        The instance type. For more information about the instance types that you can import, see Instance Types in the VM Import/Export User Guide.

        ", "Instance$InstanceType": "

        The instance type.

        ", "InstanceTypeList$member": null, "LaunchSpecification$InstanceType": "

        The instance type.

        ", "RequestSpotLaunchSpecification$InstanceType": "

        The instance type.

        ", "ReservedInstances$InstanceType": "

        The instance type on which the Reserved Instance can be used.

        ", "ReservedInstancesConfiguration$InstanceType": "

        The instance type for the modified Reserved Instances.

        ", "ReservedInstancesOffering$InstanceType": "

        The instance type on which the Reserved Instance can be used.

        ", "RunInstancesRequest$InstanceType": "

        The instance type. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide.

        Default: m1.small

        ", "SpotFleetLaunchSpecification$InstanceType": "

        The instance type.

        ", "SpotPrice$InstanceType": "

        The instance type.

        " } }, "InstanceTypeList": { "base": null, "refs": { "DescribeSpotPriceHistoryRequest$InstanceTypes": "

        Filters the results by the specified instance types.

        " } }, "Integer": { "base": null, "refs": { "AllocateHostsRequest$Quantity": "

        The number of Dedicated Hosts you want to allocate to your account with these parameters.

        ", "AssignPrivateIpAddressesRequest$SecondaryPrivateIpAddressCount": "

        The number of secondary IP addresses to assign to the network interface. You can't specify this parameter when also specifying private IP addresses.

        ", "AttachNetworkInterfaceRequest$DeviceIndex": "

        The index of the device for the network interface attachment.

        ", "AuthorizeSecurityGroupEgressRequest$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. We recommend that you specify the port range in a set of IP permissions instead.

        ", "AuthorizeSecurityGroupEgressRequest$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP type number. We recommend that you specify the port range in a set of IP permissions instead.

        ", "AuthorizeSecurityGroupIngressRequest$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. For the ICMP type number, use -1 to specify all ICMP types.

        ", "AuthorizeSecurityGroupIngressRequest$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP code number. For the ICMP code number, use -1 to specify all ICMP codes for the ICMP type.

        ", "AvailableCapacity$AvailableVCpus": "

        The number of vCPUs available on the Dedicated Host.

        ", "CreateCustomerGatewayRequest$BgpAsn": "

        For devices that support BGP, the customer gateway's BGP ASN.

        Default: 65000

        ", "CreateNetworkAclEntryRequest$RuleNumber": "

        The rule number for the entry (for example, 100). ACL entries are processed in ascending order by rule number.

        Constraints: Positive integer from 1 to 32766. The range 32767 to 65535 is reserved for internal use.

        ", "CreateNetworkInterfaceRequest$SecondaryPrivateIpAddressCount": "

        The number of secondary private IP addresses to assign to a network interface. When you specify a number of secondary IP addresses, Amazon EC2 selects these IP addresses within the subnet range. You can't specify this option and specify more than one private IP address using privateIpAddresses.

        The number of IP addresses you can assign to a network interface varies by instance type. For more information, see Private IP Addresses Per ENI Per Instance Type in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateReservedInstancesListingRequest$InstanceCount": "

        The number of instances that are a part of a Reserved Instance account to be listed in the Reserved Instance Marketplace. This number should be less than or equal to the instance count associated with the Reserved Instance ID specified in this call.

        ", "CreateVolumeRequest$Size": "

        The size of the volume, in GiBs.

        Constraints: 1-16384 for gp2, 4-16384 for io1, 500-16384 for st1, 500-16384 for sc1, and 1-1024 for standard. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size.

        Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

        ", "CreateVolumeRequest$Iops": "

        Only valid for Provisioned IOPS SSD volumes. The number of I/O operations per second (IOPS) to provision for the volume, with a maximum ratio of 30 IOPS/GiB.

        Constraint: Range is 100 to 20000 for Provisioned IOPS SSD volumes

        ", "DeleteNetworkAclEntryRequest$RuleNumber": "

        The rule number of the entry to delete.

        ", "DescribeClassicLinkInstancesRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. You cannot specify this parameter and the instance IDs parameter in the same request.

        Constraint: If the value is greater than 1000, we return only 1000 items.

        ", "DescribeFlowLogsRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. You cannot specify this parameter and the flow log IDs parameter in the same request.

        ", "DescribeHostReservationOfferingsRequest$MinDuration": "

        This is the minimum duration of the reservation you'd like to purchase, specified in seconds. Reservations are available in one-year and three-year terms. The number of seconds specified must be the number of seconds in a year (365x24x60x60) times one of the supported durations (1 or 3). For example, specify 31536000 for one year.

        ", "DescribeHostReservationOfferingsRequest$MaxDuration": "

        This is the maximum duration of the reservation you'd like to purchase, specified in seconds. Reservations are available in one-year and three-year terms. The number of seconds specified must be the number of seconds in a year (365x24x60x60) times one of the supported durations (1 or 3). For example, specify 94608000 for three years.

        ", "DescribeHostReservationOfferingsRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500; if maxResults is given a larger value than 500, you will receive an error.

        ", "DescribeHostReservationsRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500; if maxResults is given a larger value than 500, you will receive an error.

        ", "DescribeHostsRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500; if maxResults is given a larger value than 500, you will receive an error. You cannot specify this parameter and the host IDs parameter in the same request.

        ", "DescribeImportImageTasksRequest$MaxResults": "

        The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeImportSnapshotTasksRequest$MaxResults": "

        The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeInstanceStatusRequest$MaxResults": "

        The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. This value can be between 5 and 1000. You cannot specify this parameter and the instance IDs parameter in the same call.

        ", "DescribeInstancesRequest$MaxResults": "

        The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. This value can be between 5 and 1000. You cannot specify this parameter and the instance IDs parameter or tag filters in the same call.

        ", "DescribeMovingAddressesRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value outside of this range, an error is returned.

        Default: If no value is provided, the default is 1000.

        ", "DescribeNatGatewaysRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        Constraint: If the value specified is greater than 1000, we return only 1000 items.

        ", "DescribePrefixListsRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        Constraint: If the value specified is greater than 1000, we return only 1000 items.

        ", "DescribeReservedInstancesOfferingsRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. The maximum is 100.

        Default: 100

        ", "DescribeReservedInstancesOfferingsRequest$MaxInstanceCount": "

        The maximum number of instances to filter when searching for offerings.

        Default: 20

        ", "DescribeScheduledInstanceAvailabilityRequest$MinSlotDurationInHours": "

        The minimum available duration, in hours. The minimum required duration is 1,200 hours per year. For example, the minimum daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the minimum monthly schedule is 100 hours.

        ", "DescribeScheduledInstanceAvailabilityRequest$MaxSlotDurationInHours": "

        The maximum available duration, in hours. This value must be greater than MinSlotDurationInHours and less than 1,720.

        ", "DescribeScheduledInstanceAvailabilityRequest$MaxResults": "

        The maximum number of results to return in a single call. This value can be between 5 and 300. The default value is 300. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeScheduledInstancesRequest$MaxResults": "

        The maximum number of results to return in a single call. This value can be between 5 and 300. The default value is 100. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeSnapshotsRequest$MaxResults": "

        The maximum number of snapshot results returned by DescribeSnapshots in paginated output. When this parameter is used, DescribeSnapshots only returns MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another DescribeSnapshots request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. If this parameter is not used, then DescribeSnapshots returns all results. You cannot specify this parameter and the snapshot IDs parameter in the same request.

        ", "DescribeSpotFleetInstancesRequest$MaxResults": "

        The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeSpotFleetRequestHistoryRequest$MaxResults": "

        The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeSpotFleetRequestsRequest$MaxResults": "

        The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeSpotPriceHistoryRequest$MaxResults": "

        The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeTagsRequest$MaxResults": "

        The maximum number of results to return in a single call. This value can be between 5 and 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeVolumeStatusRequest$MaxResults": "

        The maximum number of volume results returned by DescribeVolumeStatus in paginated output. When this parameter is used, the request only returns MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. If this parameter is not used, then DescribeVolumeStatus returns all results. You cannot specify this parameter and the volume IDs parameter in the same request.

        ", "DescribeVolumesRequest$MaxResults": "

        The maximum number of volume results returned by DescribeVolumes in paginated output. When this parameter is used, DescribeVolumes only returns MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another DescribeVolumes request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. If this parameter is not used, then DescribeVolumes returns all results. You cannot specify this parameter and the volume IDs parameter in the same request.

        ", "DescribeVpcEndpointServicesRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        Constraint: If the value is greater than 1000, we return only 1000 items.

        ", "DescribeVpcEndpointsRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        Constraint: If the value is greater than 1000, we return only 1000 items.

        ", "EbsBlockDevice$VolumeSize": "

        The size of the volume, in GiB.

        Constraints: 1-16384 for General Purpose SSD (gp2), 4-16384 for Provisioned IOPS SSD (io1), 500-16384 for Throughput Optimized HDD (st1), 500-16384 for Cold HDD (sc1), and 1-1024 for Magnetic (standard) volumes. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size.

        Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

        ", "EbsBlockDevice$Iops": "

        The number of I/O operations per second (IOPS) that the volume supports. For io1, this represents the number of IOPS that are provisioned for the volume. For gp2, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information about General Purpose SSD baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

        Constraint: Range is 100-20000 IOPS for io1 volumes and 100-10000 IOPS for gp2 volumes.

        Condition: This parameter is required for requests to create io1 volumes; it is not used in requests to create gp2, st1, sc1, or standard volumes.

        ", "HostOffering$Duration": "

        The duration of the offering (in seconds).

        ", "HostProperties$Sockets": "

        The number of sockets on the Dedicated Host.

        ", "HostProperties$Cores": "

        The number of cores on the Dedicated Host.

        ", "HostProperties$TotalVCpus": "

        The number of vCPUs on the Dedicated Host.

        ", "HostReservation$Count": "

        The number of Dedicated Hosts the reservation is associated with.

        ", "HostReservation$Duration": "

        The length of the reservation's term, specified in seconds. Can be 31536000 (1 year) | 94608000 (3 years).

        ", "IcmpTypeCode$Type": "

        The ICMP code. A value of -1 means all codes for the specified ICMP type.

        ", "IcmpTypeCode$Code": "

        The ICMP type. A value of -1 means all types.

        ", "Instance$AmiLaunchIndex": "

        The AMI launch index, which can be used to find this instance in the launch group.

        ", "InstanceCapacity$AvailableCapacity": "

        The number of instances that can still be launched onto the Dedicated Host.

        ", "InstanceCapacity$TotalCapacity": "

        The total number of instances that can be launched onto the Dedicated Host.

        ", "InstanceCount$InstanceCount": "

        The number of listed Reserved Instances in the state specified by the state.

        ", "InstanceNetworkInterfaceAttachment$DeviceIndex": "

        The index of the device on the instance for the network interface attachment.

        ", "InstanceNetworkInterfaceSpecification$DeviceIndex": "

        The index of the device on the instance for the network interface attachment. If you are specifying a network interface in a RunInstances request, you must provide the device index.

        ", "InstanceNetworkInterfaceSpecification$SecondaryPrivateIpAddressCount": "

        The number of secondary private IP addresses. You can't specify this option and specify more than one private IP address using the private IP addresses option.

        ", "InstanceState$Code": "

        The low byte represents the state. The high byte is an opaque internal value and should be ignored.

        • 0 : pending

        • 16 : running

        • 32 : shutting-down

        • 48 : terminated

        • 64 : stopping

        • 80 : stopped

        ", "IpPermission$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. A value of -1 indicates all ICMP types.

        ", "IpPermission$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP code. A value of -1 indicates all ICMP codes for the specified ICMP type.

        ", "ModifySpotFleetRequestRequest$TargetCapacity": "

        The size of the fleet.

        ", "NetworkAclEntry$RuleNumber": "

        The rule number for the entry. ACL entries are processed in ascending order by rule number.

        ", "NetworkInterfaceAttachment$DeviceIndex": "

        The device index of the network interface attachment on the instance.

        ", "OccurrenceDayRequestSet$member": null, "OccurrenceDaySet$member": null, "PortRange$From": "

        The first port in the range.

        ", "PortRange$To": "

        The last port in the range.

        ", "PricingDetail$Count": "

        The number of reservations available for the price.

        ", "Purchase$Duration": "

        The duration of the reservation's term in seconds.

        ", "PurchaseRequest$InstanceCount": "

        The number of instances.

        ", "PurchaseReservedInstancesOfferingRequest$InstanceCount": "

        The number of Reserved Instances to purchase.

        ", "ReplaceNetworkAclEntryRequest$RuleNumber": "

        The rule number of the entry to replace.

        ", "RequestSpotInstancesRequest$InstanceCount": "

        The maximum number of Spot instances to launch.

        Default: 1

        ", "RequestSpotInstancesRequest$BlockDurationMinutes": "

        The required duration for the Spot instances (also known as Spot blocks), in minutes. This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360).

        The duration period starts as soon as your Spot instance receives its instance ID. At the end of the duration period, Amazon EC2 marks the Spot instance for termination and provides a Spot instance termination notice, which gives the instance a two-minute warning before it terminates.

        Note that you can't specify an Availability Zone group or a launch group if you specify a duration.

        ", "ReservedInstances$InstanceCount": "

        The number of reservations purchased.

        ", "ReservedInstancesConfiguration$InstanceCount": "

        The number of modified Reserved Instances.

        ", "RevokeSecurityGroupEgressRequest$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. We recommend that you specify the port range in a set of IP permissions instead.

        ", "RevokeSecurityGroupEgressRequest$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP type number. We recommend that you specify the port range in a set of IP permissions instead.

        ", "RevokeSecurityGroupIngressRequest$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. For the ICMP type number, use -1 to specify all ICMP types.

        ", "RevokeSecurityGroupIngressRequest$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP code number. For the ICMP code number, use -1 to specify all ICMP codes for the ICMP type.

        ", "RunInstancesRequest$MinCount": "

        The minimum number of instances to launch. If you specify a minimum that is more instances than Amazon EC2 can launch in the target Availability Zone, Amazon EC2 launches no instances.

        Constraints: Between 1 and the maximum number you're allowed for the specified instance type. For more information about the default limits, and how to request an increase, see How many instances can I run in Amazon EC2 in the Amazon EC2 General FAQ.

        ", "RunInstancesRequest$MaxCount": "

        The maximum number of instances to launch. If you specify more instances than Amazon EC2 can launch in the target Availability Zone, Amazon EC2 launches the largest possible number of instances above MinCount.

        Constraints: Between 1 and the maximum number you're allowed for the specified instance type. For more information about the default limits, and how to request an increase, see How many instances can I run in Amazon EC2 in the Amazon EC2 FAQ.

        ", "RunScheduledInstancesRequest$InstanceCount": "

        The number of instances.

        Default: 1

        ", "ScheduledInstance$SlotDurationInHours": "

        The number of hours in the schedule.

        ", "ScheduledInstance$TotalScheduledInstanceHours": "

        The total number of hours for a single instance for the entire term.

        ", "ScheduledInstance$InstanceCount": "

        The number of instances.

        ", "ScheduledInstanceAvailability$SlotDurationInHours": "

        The number of hours in the schedule.

        ", "ScheduledInstanceAvailability$TotalScheduledInstanceHours": "

        The total number of hours for a single instance for the entire term.

        ", "ScheduledInstanceAvailability$AvailableInstanceCount": "

        The number of available instances.

        ", "ScheduledInstanceAvailability$MinTermDurationInDays": "

        The minimum term. The only possible value is 365 days.

        ", "ScheduledInstanceAvailability$MaxTermDurationInDays": "

        The maximum term. The only possible value is 365 days.

        ", "ScheduledInstanceRecurrence$Interval": "

        The interval quantity. The interval unit depends on the value of frequency. For example, every 2 weeks or every 2 months.

        ", "ScheduledInstanceRecurrenceRequest$Interval": "

        The interval quantity. The interval unit depends on the value of Frequency. For example, every 2 weeks or every 2 months.

        ", "ScheduledInstancesEbs$VolumeSize": "

        The size of the volume, in GiB.

        Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

        ", "ScheduledInstancesEbs$Iops": "

        The number of I/O operations per second (IOPS) that the volume supports. For io1 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information about gp2 baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

        Constraint: Range is 100-20000 IOPS for io1 volumes and 100-10000 IOPS for gp2 volumes.

        Condition: This parameter is required for requests to create io1volumes; it is not used in requests to create gp2, st1, sc1, or standard volumes.

        ", "ScheduledInstancesNetworkInterface$DeviceIndex": "

        The index of the device for the network interface attachment.

        ", "ScheduledInstancesNetworkInterface$SecondaryPrivateIpAddressCount": "

        The number of secondary private IP addresses.

        ", "Snapshot$VolumeSize": "

        The size of the volume, in GiB.

        ", "SpotFleetRequestConfigData$TargetCapacity": "

        The number of units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O.

        ", "SpotInstanceRequest$BlockDurationMinutes": "

        The duration for the Spot instance, in minutes.

        ", "StaleIpPermission$FromPort": "

        The start of the port range for the TCP and UDP protocols, or an ICMP type number. A value of -1 indicates all ICMP types.

        ", "StaleIpPermission$ToPort": "

        The end of the port range for the TCP and UDP protocols, or an ICMP type number. A value of -1 indicates all ICMP types.

        ", "Subnet$AvailableIpAddressCount": "

        The number of unused IP addresses in the subnet. Note that the IP addresses for any stopped instances are considered unavailable.

        ", "VgwTelemetry$AcceptedRouteCount": "

        The number of accepted routes.

        ", "Volume$Size": "

        The size of the volume, in GiBs.

        ", "Volume$Iops": "

        The number of I/O operations per second (IOPS) that the volume supports. For Provisioned IOPS SSD volumes, this represents the number of IOPS that are provisioned for the volume. For General Purpose SSD volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information on General Purpose SSD baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

        Constraint: Range is 100-20000 IOPS for io1 volumes and 100-10000 IOPS for gp2 volumes.

        Condition: This parameter is required for requests to create io1 volumes; it is not used in requests to create gp2, st1, sc1, or standard volumes.

        " } }, "InternetGateway": { "base": "

        Describes an Internet gateway.

        ", "refs": { "CreateInternetGatewayResult$InternetGateway": "

        Information about the Internet gateway.

        ", "InternetGatewayList$member": null } }, "InternetGatewayAttachment": { "base": "

        Describes the attachment of a VPC to an Internet gateway.

        ", "refs": { "InternetGatewayAttachmentList$member": null } }, "InternetGatewayAttachmentList": { "base": null, "refs": { "InternetGateway$Attachments": "

        Any VPCs attached to the Internet gateway.

        " } }, "InternetGatewayList": { "base": null, "refs": { "DescribeInternetGatewaysResult$InternetGateways": "

        Information about one or more Internet gateways.

        " } }, "IpPermission": { "base": "

        Describes a security group rule.

        ", "refs": { "IpPermissionList$member": null } }, "IpPermissionList": { "base": null, "refs": { "AuthorizeSecurityGroupEgressRequest$IpPermissions": "

        A set of IP permissions. You can't specify a destination security group and a CIDR IP address range.

        ", "AuthorizeSecurityGroupIngressRequest$IpPermissions": "

        A set of IP permissions. Can be used to specify multiple rules in a single command.

        ", "RevokeSecurityGroupEgressRequest$IpPermissions": "

        A set of IP permissions. You can't specify a destination security group and a CIDR IP address range.

        ", "RevokeSecurityGroupIngressRequest$IpPermissions": "

        A set of IP permissions. You can't specify a source security group and a CIDR IP address range.

        ", "SecurityGroup$IpPermissions": "

        One or more inbound rules associated with the security group.

        ", "SecurityGroup$IpPermissionsEgress": "

        [EC2-VPC] One or more outbound rules associated with the security group.

        " } }, "IpRange": { "base": "

        Describes an IP range.

        ", "refs": { "IpRangeList$member": null } }, "IpRangeList": { "base": null, "refs": { "IpPermission$IpRanges": "

        One or more IP ranges.

        " } }, "IpRanges": { "base": null, "refs": { "StaleIpPermission$IpRanges": "

        One or more IP ranges. Not applicable for stale security group rules.

        " } }, "KeyNameStringList": { "base": null, "refs": { "DescribeKeyPairsRequest$KeyNames": "

        One or more key pair names.

        Default: Describes all your key pairs.

        " } }, "KeyPair": { "base": "

        Describes a key pair.

        ", "refs": { } }, "KeyPairInfo": { "base": "

        Describes a key pair.

        ", "refs": { "KeyPairList$member": null } }, "KeyPairList": { "base": null, "refs": { "DescribeKeyPairsResult$KeyPairs": "

        Information about one or more key pairs.

        " } }, "LaunchPermission": { "base": "

        Describes a launch permission.

        ", "refs": { "LaunchPermissionList$member": null } }, "LaunchPermissionList": { "base": null, "refs": { "ImageAttribute$LaunchPermissions": "

        One or more launch permissions.

        ", "LaunchPermissionModifications$Add": "

        The AWS account ID to add to the list of launch permissions for the AMI.

        ", "LaunchPermissionModifications$Remove": "

        The AWS account ID to remove from the list of launch permissions for the AMI.

        " } }, "LaunchPermissionModifications": { "base": "

        Describes a launch permission modification.

        ", "refs": { "ModifyImageAttributeRequest$LaunchPermission": "

        A launch permission modification.

        " } }, "LaunchSpecification": { "base": "

        Describes the launch specification for an instance.

        ", "refs": { "SpotInstanceRequest$LaunchSpecification": "

        Additional information for launching instances.

        " } }, "LaunchSpecsList": { "base": null, "refs": { "SpotFleetRequestConfigData$LaunchSpecifications": "

        Information about the launch specifications for the Spot fleet request.

        " } }, "ListingState": { "base": null, "refs": { "InstanceCount$State": "

        The states of the listed Reserved Instances.

        " } }, "ListingStatus": { "base": null, "refs": { "ReservedInstancesListing$Status": "

        The status of the Reserved Instance listing.

        " } }, "Long": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$MinDuration": "

        The minimum duration (in seconds) to filter when searching for offerings.

        Default: 2592000 (1 month)

        ", "DescribeReservedInstancesOfferingsRequest$MaxDuration": "

        The maximum duration (in seconds) to filter when searching for offerings.

        Default: 94608000 (3 years)

        ", "DiskImageDescription$Size": "

        The size of the disk image, in GiB.

        ", "DiskImageDetail$Bytes": "

        The size of the disk image, in GiB.

        ", "DiskImageVolumeDescription$Size": "

        The size of the volume, in GiB.

        ", "ImportInstanceVolumeDetailItem$BytesConverted": "

        The number of bytes converted so far.

        ", "ImportVolumeTaskDetails$BytesConverted": "

        The number of bytes converted so far.

        ", "PriceSchedule$Term": "

        The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.

        ", "PriceScheduleSpecification$Term": "

        The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.

        ", "ReservedInstances$Duration": "

        The duration of the Reserved Instance, in seconds.

        ", "ReservedInstancesOffering$Duration": "

        The duration of the Reserved Instance, in seconds.

        ", "VolumeDetail$Size": "

        The size of the volume, in GiB.

        " } }, "MaxResults": { "base": null, "refs": { "DescribeStaleSecurityGroupsRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        ", "DescribeVpcClassicLinkDnsSupportRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        " } }, "ModifyHostsRequest": { "base": "

        Contains the parameters for ModifyHosts.

        ", "refs": { } }, "ModifyHostsResult": { "base": "

        Contains the output of ModifyHosts.

        ", "refs": { } }, "ModifyIdFormatRequest": { "base": "

        Contains the parameters of ModifyIdFormat.

        ", "refs": { } }, "ModifyIdentityIdFormatRequest": { "base": "

        Contains the parameters of ModifyIdentityIdFormat.

        ", "refs": { } }, "ModifyImageAttributeRequest": { "base": "

        Contains the parameters for ModifyImageAttribute.

        ", "refs": { } }, "ModifyInstanceAttributeRequest": { "base": "

        Contains the parameters for ModifyInstanceAttribute.

        ", "refs": { } }, "ModifyInstancePlacementRequest": { "base": "

        Contains the parameters for ModifyInstancePlacement.

        ", "refs": { } }, "ModifyInstancePlacementResult": { "base": "

        Contains the output of ModifyInstancePlacement.

        ", "refs": { } }, "ModifyNetworkInterfaceAttributeRequest": { "base": "

        Contains the parameters for ModifyNetworkInterfaceAttribute.

        ", "refs": { } }, "ModifyReservedInstancesRequest": { "base": "

        Contains the parameters for ModifyReservedInstances.

        ", "refs": { } }, "ModifyReservedInstancesResult": { "base": "

        Contains the output of ModifyReservedInstances.

        ", "refs": { } }, "ModifySnapshotAttributeRequest": { "base": "

        Contains the parameters for ModifySnapshotAttribute.

        ", "refs": { } }, "ModifySpotFleetRequestRequest": { "base": "

        Contains the parameters for ModifySpotFleetRequest.

        ", "refs": { } }, "ModifySpotFleetRequestResponse": { "base": "

        Contains the output of ModifySpotFleetRequest.

        ", "refs": { } }, "ModifySubnetAttributeRequest": { "base": "

        Contains the parameters for ModifySubnetAttribute.

        ", "refs": { } }, "ModifyVolumeAttributeRequest": { "base": "

        Contains the parameters for ModifyVolumeAttribute.

        ", "refs": { } }, "ModifyVpcAttributeRequest": { "base": "

        Contains the parameters for ModifyVpcAttribute.

        ", "refs": { } }, "ModifyVpcEndpointRequest": { "base": "

        Contains the parameters for ModifyVpcEndpoint.

        ", "refs": { } }, "ModifyVpcEndpointResult": { "base": "

        Contains the output of ModifyVpcEndpoint.

        ", "refs": { } }, "ModifyVpcPeeringConnectionOptionsRequest": { "base": null, "refs": { } }, "ModifyVpcPeeringConnectionOptionsResult": { "base": null, "refs": { } }, "MonitorInstancesRequest": { "base": "

        Contains the parameters for MonitorInstances.

        ", "refs": { } }, "MonitorInstancesResult": { "base": "

        Contains the output of MonitorInstances.

        ", "refs": { } }, "Monitoring": { "base": "

        Describes the monitoring for the instance.

        ", "refs": { "Instance$Monitoring": "

        The monitoring information for the instance.

        ", "InstanceMonitoring$Monitoring": "

        The monitoring information.

        " } }, "MonitoringState": { "base": null, "refs": { "Monitoring$State": "

        Indicates whether monitoring is enabled for the instance.

        " } }, "MoveAddressToVpcRequest": { "base": "

        Contains the parameters for MoveAddressToVpc.

        ", "refs": { } }, "MoveAddressToVpcResult": { "base": "

        Contains the output of MoveAddressToVpc.

        ", "refs": { } }, "MoveStatus": { "base": null, "refs": { "MovingAddressStatus$MoveStatus": "

        The status of the Elastic IP address that's being moved to the EC2-VPC platform, or restored to the EC2-Classic platform.

        " } }, "MovingAddressStatus": { "base": "

        Describes the status of a moving Elastic IP address.

        ", "refs": { "MovingAddressStatusSet$member": null } }, "MovingAddressStatusSet": { "base": null, "refs": { "DescribeMovingAddressesResult$MovingAddressStatuses": "

        The status for each Elastic IP address.

        " } }, "NatGateway": { "base": "

        Describes a NAT gateway.

        ", "refs": { "CreateNatGatewayResult$NatGateway": "

        Information about the NAT gateway.

        ", "NatGatewayList$member": null } }, "NatGatewayAddress": { "base": "

        Describes the IP addresses and network interface associated with a NAT gateway.

        ", "refs": { "NatGatewayAddressList$member": null } }, "NatGatewayAddressList": { "base": null, "refs": { "NatGateway$NatGatewayAddresses": "

        Information about the IP addresses and network interface associated with the NAT gateway.

        " } }, "NatGatewayList": { "base": null, "refs": { "DescribeNatGatewaysResult$NatGateways": "

        Information about the NAT gateways.

        " } }, "NatGatewayState": { "base": null, "refs": { "NatGateway$State": "

        The state of the NAT gateway.

        • pending: The NAT gateway is being created and is not ready to process traffic.

        • failed: The NAT gateway could not be created. Check the failureCode and failureMessage fields for the reason.

        • available: The NAT gateway is able to process traffic. This status remains until you delete the NAT gateway, and does not indicate the health of the NAT gateway.

        • deleting: The NAT gateway is in the process of being terminated and may still be processing traffic.

        • deleted: The NAT gateway has been terminated and is no longer processing traffic.

        " } }, "NetworkAcl": { "base": "

        Describes a network ACL.

        ", "refs": { "CreateNetworkAclResult$NetworkAcl": "

        Information about the network ACL.

        ", "NetworkAclList$member": null } }, "NetworkAclAssociation": { "base": "

        Describes an association between a network ACL and a subnet.

        ", "refs": { "NetworkAclAssociationList$member": null } }, "NetworkAclAssociationList": { "base": null, "refs": { "NetworkAcl$Associations": "

        Any associations between the network ACL and one or more subnets

        " } }, "NetworkAclEntry": { "base": "

        Describes an entry in a network ACL.

        ", "refs": { "NetworkAclEntryList$member": null } }, "NetworkAclEntryList": { "base": null, "refs": { "NetworkAcl$Entries": "

        One or more entries (rules) in the network ACL.

        " } }, "NetworkAclList": { "base": null, "refs": { "DescribeNetworkAclsResult$NetworkAcls": "

        Information about one or more network ACLs.

        " } }, "NetworkInterface": { "base": "

        Describes a network interface.

        ", "refs": { "CreateNetworkInterfaceResult$NetworkInterface": "

        Information about the network interface.

        ", "NetworkInterfaceList$member": null } }, "NetworkInterfaceAssociation": { "base": "

        Describes association information for an Elastic IP address.

        ", "refs": { "NetworkInterface$Association": "

        The association information for an Elastic IP associated with the network interface.

        ", "NetworkInterfacePrivateIpAddress$Association": "

        The association information for an Elastic IP address associated with the network interface.

        " } }, "NetworkInterfaceAttachment": { "base": "

        Describes a network interface attachment.

        ", "refs": { "DescribeNetworkInterfaceAttributeResult$Attachment": "

        The attachment (if any) of the network interface.

        ", "NetworkInterface$Attachment": "

        The network interface attachment.

        " } }, "NetworkInterfaceAttachmentChanges": { "base": "

        Describes an attachment change.

        ", "refs": { "ModifyNetworkInterfaceAttributeRequest$Attachment": "

        Information about the interface attachment. If modifying the 'delete on termination' attribute, you must specify the ID of the interface attachment.

        " } }, "NetworkInterfaceAttribute": { "base": null, "refs": { "DescribeNetworkInterfaceAttributeRequest$Attribute": "

        The attribute of the network interface.

        " } }, "NetworkInterfaceIdList": { "base": null, "refs": { "DescribeNetworkInterfacesRequest$NetworkInterfaceIds": "

        One or more network interface IDs.

        Default: Describes all your network interfaces.

        " } }, "NetworkInterfaceList": { "base": null, "refs": { "DescribeNetworkInterfacesResult$NetworkInterfaces": "

        Information about one or more network interfaces.

        " } }, "NetworkInterfacePrivateIpAddress": { "base": "

        Describes the private IP address of a network interface.

        ", "refs": { "NetworkInterfacePrivateIpAddressList$member": null } }, "NetworkInterfacePrivateIpAddressList": { "base": null, "refs": { "NetworkInterface$PrivateIpAddresses": "

        The private IP addresses associated with the network interface.

        " } }, "NetworkInterfaceStatus": { "base": null, "refs": { "InstanceNetworkInterface$Status": "

        The status of the network interface.

        ", "NetworkInterface$Status": "

        The status of the network interface.

        " } }, "NetworkInterfaceType": { "base": null, "refs": { "NetworkInterface$InterfaceType": "

        The type of interface.

        " } }, "NewDhcpConfiguration": { "base": null, "refs": { "NewDhcpConfigurationList$member": null } }, "NewDhcpConfigurationList": { "base": null, "refs": { "CreateDhcpOptionsRequest$DhcpConfigurations": "

        A DHCP configuration option.

        " } }, "NextToken": { "base": null, "refs": { "DescribeStaleSecurityGroupsRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a prior call.)

        ", "DescribeVpcClassicLinkDnsSupportRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a prior call.)

        ", "DescribeVpcClassicLinkDnsSupportResult$NextToken": "

        The token to use when requesting the next set of items.

        " } }, "OccurrenceDayRequestSet": { "base": null, "refs": { "ScheduledInstanceRecurrenceRequest$OccurrenceDays": "

        The days. For a monthly schedule, this is one or more days of the month (1-31). For a weekly schedule, this is one or more days of the week (1-7, where 1 is Sunday). You can't specify this value with a daily schedule. If the occurrence is relative to the end of the month, you can specify only a single day.

        " } }, "OccurrenceDaySet": { "base": null, "refs": { "ScheduledInstanceRecurrence$OccurrenceDaySet": "

        The days. For a monthly schedule, this is one or more days of the month (1-31). For a weekly schedule, this is one or more days of the week (1-7, where 1 is Sunday).

        " } }, "OfferingTypeValues": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$OfferingType": "

        The Reserved Instance offering type. If you are using tools that predate the 2011-11-01 API version, you only have access to the Medium Utilization Reserved Instance offering type.

        ", "DescribeReservedInstancesRequest$OfferingType": "

        The Reserved Instance offering type. If you are using tools that predate the 2011-11-01 API version, you only have access to the Medium Utilization Reserved Instance offering type.

        ", "ReservedInstances$OfferingType": "

        The Reserved Instance offering type.

        ", "ReservedInstancesOffering$OfferingType": "

        The Reserved Instance offering type.

        " } }, "OperationType": { "base": null, "refs": { "ModifyImageAttributeRequest$OperationType": "

        The operation type.

        ", "ModifySnapshotAttributeRequest$OperationType": "

        The type of operation to perform to the attribute.

        " } }, "OwnerStringList": { "base": null, "refs": { "DescribeImagesRequest$Owners": "

        Filters the images by the owner. Specify an AWS account ID, self (owner is the sender of the request), or an AWS owner alias (valid values are amazon | aws-marketplace | microsoft). Omitting this option returns all images for which you have launch permissions, regardless of ownership.

        ", "DescribeSnapshotsRequest$OwnerIds": "

        Returns the snapshots owned by the specified owner. Multiple owners can be specified.

        " } }, "PaymentOption": { "base": null, "refs": { "HostOffering$PaymentOption": "

        The available payment option.

        ", "HostReservation$PaymentOption": "

        The payment option selected for this reservation.

        ", "Purchase$PaymentOption": "

        The payment option for the reservation.

        " } }, "PeeringConnectionOptions": { "base": "

        Describes the VPC peering connection options.

        ", "refs": { "ModifyVpcPeeringConnectionOptionsResult$RequesterPeeringConnectionOptions": "

        Information about the VPC peering connection options for the requester VPC.

        ", "ModifyVpcPeeringConnectionOptionsResult$AccepterPeeringConnectionOptions": "

        Information about the VPC peering connection options for the accepter VPC.

        " } }, "PeeringConnectionOptionsRequest": { "base": "

        The VPC peering connection options.

        ", "refs": { "ModifyVpcPeeringConnectionOptionsRequest$RequesterPeeringConnectionOptions": "

        The VPC peering connection options for the requester VPC.

        ", "ModifyVpcPeeringConnectionOptionsRequest$AccepterPeeringConnectionOptions": "

        The VPC peering connection options for the accepter VPC.

        " } }, "PermissionGroup": { "base": null, "refs": { "CreateVolumePermission$Group": "

        The specific group that is to be added or removed from a volume's list of create volume permissions.

        ", "LaunchPermission$Group": "

        The name of the group.

        " } }, "Placement": { "base": "

        Describes the placement for the instance.

        ", "refs": { "ImportInstanceLaunchSpecification$Placement": "

        The placement information for the instance.

        ", "Instance$Placement": "

        The location where the instance launched, if applicable.

        ", "RunInstancesRequest$Placement": "

        The placement for the instance.

        " } }, "PlacementGroup": { "base": "

        Describes a placement group.

        ", "refs": { "PlacementGroupList$member": null } }, "PlacementGroupList": { "base": null, "refs": { "DescribePlacementGroupsResult$PlacementGroups": "

        One or more placement groups.

        " } }, "PlacementGroupState": { "base": null, "refs": { "PlacementGroup$State": "

        The state of the placement group.

        " } }, "PlacementGroupStringList": { "base": null, "refs": { "DescribePlacementGroupsRequest$GroupNames": "

        One or more placement group names.

        Default: Describes all your placement groups, or only those otherwise specified.

        " } }, "PlacementStrategy": { "base": null, "refs": { "CreatePlacementGroupRequest$Strategy": "

        The placement strategy.

        ", "PlacementGroup$Strategy": "

        The placement strategy.

        " } }, "PlatformValues": { "base": null, "refs": { "Image$Platform": "

        The value is Windows for Windows AMIs; otherwise blank.

        ", "ImportInstanceRequest$Platform": "

        The instance operating system.

        ", "ImportInstanceTaskDetails$Platform": "

        The instance operating system.

        ", "Instance$Platform": "

        The value is Windows for Windows instances; otherwise blank.

        " } }, "PortRange": { "base": "

        Describes a range of ports.

        ", "refs": { "CreateNetworkAclEntryRequest$PortRange": "

        TCP or UDP protocols: The range of ports the rule applies to.

        ", "NetworkAclEntry$PortRange": "

        TCP or UDP protocols: The range of ports the rule applies to.

        ", "ReplaceNetworkAclEntryRequest$PortRange": "

        TCP or UDP protocols: The range of ports the rule applies to. Required if specifying 6 (TCP) or 17 (UDP) for the protocol.

        " } }, "PrefixList": { "base": "

        Describes prefixes for AWS services.

        ", "refs": { "PrefixListSet$member": null } }, "PrefixListId": { "base": "

        The ID of the prefix.

        ", "refs": { "PrefixListIdList$member": null } }, "PrefixListIdList": { "base": null, "refs": { "IpPermission$PrefixListIds": "

        (Valid for AuthorizeSecurityGroupEgress, RevokeSecurityGroupEgress and DescribeSecurityGroups only) One or more prefix list IDs for an AWS service. In an AuthorizeSecurityGroupEgress request, this is the AWS service that you want to access through a VPC endpoint from instances associated with the security group.

        " } }, "PrefixListIdSet": { "base": null, "refs": { "StaleIpPermission$PrefixListIds": "

        One or more prefix list IDs for an AWS service. Not applicable for stale security group rules.

        " } }, "PrefixListSet": { "base": null, "refs": { "DescribePrefixListsResult$PrefixLists": "

        All available prefix lists.

        " } }, "PriceSchedule": { "base": "

        Describes the price for a Reserved Instance.

        ", "refs": { "PriceScheduleList$member": null } }, "PriceScheduleList": { "base": null, "refs": { "ReservedInstancesListing$PriceSchedules": "

        The price of the Reserved Instance listing.

        " } }, "PriceScheduleSpecification": { "base": "

        Describes the price for a Reserved Instance.

        ", "refs": { "PriceScheduleSpecificationList$member": null } }, "PriceScheduleSpecificationList": { "base": null, "refs": { "CreateReservedInstancesListingRequest$PriceSchedules": "

        A list specifying the price of the Reserved Instance for each month remaining in the Reserved Instance term.

        " } }, "PricingDetail": { "base": "

        Describes a Reserved Instance offering.

        ", "refs": { "PricingDetailsList$member": null } }, "PricingDetailsList": { "base": null, "refs": { "ReservedInstancesOffering$PricingDetails": "

        The pricing details of the Reserved Instance offering.

        " } }, "PrivateIpAddressConfigSet": { "base": null, "refs": { "ScheduledInstancesNetworkInterface$PrivateIpAddressConfigs": "

        The private IP addresses.

        " } }, "PrivateIpAddressSpecification": { "base": "

        Describes a secondary private IP address for a network interface.

        ", "refs": { "PrivateIpAddressSpecificationList$member": null } }, "PrivateIpAddressSpecificationList": { "base": null, "refs": { "CreateNetworkInterfaceRequest$PrivateIpAddresses": "

        One or more private IP addresses.

        ", "InstanceNetworkInterfaceSpecification$PrivateIpAddresses": "

        One or more private IP addresses to assign to the network interface. Only one private IP address can be designated as primary.

        " } }, "PrivateIpAddressStringList": { "base": null, "refs": { "AssignPrivateIpAddressesRequest$PrivateIpAddresses": "

        One or more IP addresses to be assigned as a secondary private IP address to the network interface. You can't specify this parameter when also specifying a number of secondary IP addresses.

        If you don't specify an IP address, Amazon EC2 automatically selects an IP address within the subnet range.

        ", "UnassignPrivateIpAddressesRequest$PrivateIpAddresses": "

        The secondary private IP addresses to unassign from the network interface. You can specify this option multiple times to unassign more than one IP address.

        " } }, "ProductCode": { "base": "

        Describes a product code.

        ", "refs": { "ProductCodeList$member": null } }, "ProductCodeList": { "base": null, "refs": { "DescribeSnapshotAttributeResult$ProductCodes": "

        A list of product codes.

        ", "DescribeVolumeAttributeResult$ProductCodes": "

        A list of product codes.

        ", "Image$ProductCodes": "

        Any product codes associated with the AMI.

        ", "ImageAttribute$ProductCodes": "

        One or more product codes.

        ", "Instance$ProductCodes": "

        The product codes attached to this instance, if applicable.

        ", "InstanceAttribute$ProductCodes": "

        A list of product codes.

        " } }, "ProductCodeStringList": { "base": null, "refs": { "ModifyImageAttributeRequest$ProductCodes": "

        One or more product codes. After you add a product code to an AMI, it can't be removed. This is only valid when modifying the productCodes attribute.

        " } }, "ProductCodeValues": { "base": null, "refs": { "ProductCode$ProductCodeType": "

        The type of product code.

        " } }, "ProductDescriptionList": { "base": null, "refs": { "DescribeSpotPriceHistoryRequest$ProductDescriptions": "

        Filters the results by the specified basic product descriptions.

        " } }, "PropagatingVgw": { "base": "

        Describes a virtual private gateway propagating route.

        ", "refs": { "PropagatingVgwList$member": null } }, "PropagatingVgwList": { "base": null, "refs": { "RouteTable$PropagatingVgws": "

        Any virtual private gateway (VGW) propagating routes.

        " } }, "ProvisionedBandwidth": { "base": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        ", "refs": { "NatGateway$ProvisionedBandwidth": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        " } }, "PublicIpStringList": { "base": null, "refs": { "DescribeAddressesRequest$PublicIps": "

        [EC2-Classic] One or more Elastic IP addresses.

        Default: Describes all your Elastic IP addresses.

        " } }, "Purchase": { "base": "

        Describes the result of the purchase.

        ", "refs": { "PurchaseSet$member": null } }, "PurchaseHostReservationRequest": { "base": null, "refs": { } }, "PurchaseHostReservationResult": { "base": null, "refs": { } }, "PurchaseRequest": { "base": "

        Describes a request to purchase Scheduled Instances.

        ", "refs": { "PurchaseRequestSet$member": null } }, "PurchaseRequestSet": { "base": null, "refs": { "PurchaseScheduledInstancesRequest$PurchaseRequests": "

        One or more purchase requests.

        " } }, "PurchaseReservedInstancesOfferingRequest": { "base": "

        Contains the parameters for PurchaseReservedInstancesOffering.

        ", "refs": { } }, "PurchaseReservedInstancesOfferingResult": { "base": "

        Contains the output of PurchaseReservedInstancesOffering.

        ", "refs": { } }, "PurchaseScheduledInstancesRequest": { "base": "

        Contains the parameters for PurchaseScheduledInstances.

        ", "refs": { } }, "PurchaseScheduledInstancesResult": { "base": "

        Contains the output of PurchaseScheduledInstances.

        ", "refs": { } }, "PurchaseSet": { "base": null, "refs": { "GetHostReservationPurchasePreviewResult$Purchase": "

        The purchase information of the Dedicated Host Reservation and the Dedicated Hosts associated with it.

        ", "PurchaseHostReservationResult$Purchase": "

        Describes the details of the purchase.

        " } }, "PurchasedScheduledInstanceSet": { "base": null, "refs": { "PurchaseScheduledInstancesResult$ScheduledInstanceSet": "

        Information about the Scheduled Instances.

        " } }, "RIProductDescription": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$ProductDescription": "

        The Reserved Instance product platform description. Instances that include (Amazon VPC) in the description are for use with Amazon VPC.

        ", "ReservedInstances$ProductDescription": "

        The Reserved Instance product platform description.

        ", "ReservedInstancesOffering$ProductDescription": "

        The Reserved Instance product platform description.

        ", "SpotInstanceRequest$ProductDescription": "

        The product description associated with the Spot instance.

        ", "SpotPrice$ProductDescription": "

        A general description of the AMI.

        " } }, "ReasonCodesList": { "base": null, "refs": { "ReportInstanceStatusRequest$ReasonCodes": "

        One or more reason codes that describes the health state of your instance.

        • instance-stuck-in-state: My instance is stuck in a state.

        • unresponsive: My instance is unresponsive.

        • not-accepting-credentials: My instance is not accepting my credentials.

        • password-not-available: A password is not available for my instance.

        • performance-network: My instance is experiencing performance problems which I believe are network related.

        • performance-instance-store: My instance is experiencing performance problems which I believe are related to the instance stores.

        • performance-ebs-volume: My instance is experiencing performance problems which I believe are related to an EBS volume.

        • performance-other: My instance is experiencing performance problems.

        • other: [explain using the description parameter]

        " } }, "RebootInstancesRequest": { "base": "

        Contains the parameters for RebootInstances.

        ", "refs": { } }, "RecurringCharge": { "base": "

        Describes a recurring charge.

        ", "refs": { "RecurringChargesList$member": null } }, "RecurringChargeFrequency": { "base": null, "refs": { "RecurringCharge$Frequency": "

        The frequency of the recurring charge.

        " } }, "RecurringChargesList": { "base": null, "refs": { "ReservedInstances$RecurringCharges": "

        The recurring charge tag assigned to the resource.

        ", "ReservedInstancesOffering$RecurringCharges": "

        The recurring charge tag assigned to the resource.

        " } }, "Region": { "base": "

        Describes a region.

        ", "refs": { "RegionList$member": null } }, "RegionList": { "base": null, "refs": { "DescribeRegionsResult$Regions": "

        Information about one or more regions.

        " } }, "RegionNameStringList": { "base": null, "refs": { "DescribeRegionsRequest$RegionNames": "

        The names of one or more regions.

        " } }, "RegisterImageRequest": { "base": "

        Contains the parameters for RegisterImage.

        ", "refs": { } }, "RegisterImageResult": { "base": "

        Contains the output of RegisterImage.

        ", "refs": { } }, "RejectVpcPeeringConnectionRequest": { "base": "

        Contains the parameters for RejectVpcPeeringConnection.

        ", "refs": { } }, "RejectVpcPeeringConnectionResult": { "base": "

        Contains the output of RejectVpcPeeringConnection.

        ", "refs": { } }, "ReleaseAddressRequest": { "base": "

        Contains the parameters for ReleaseAddress.

        ", "refs": { } }, "ReleaseHostsRequest": { "base": "

        Contains the parameters for ReleaseHosts.

        ", "refs": { } }, "ReleaseHostsResult": { "base": "

        Contains the output of ReleaseHosts.

        ", "refs": { } }, "ReplaceNetworkAclAssociationRequest": { "base": "

        Contains the parameters for ReplaceNetworkAclAssociation.

        ", "refs": { } }, "ReplaceNetworkAclAssociationResult": { "base": "

        Contains the output of ReplaceNetworkAclAssociation.

        ", "refs": { } }, "ReplaceNetworkAclEntryRequest": { "base": "

        Contains the parameters for ReplaceNetworkAclEntry.

        ", "refs": { } }, "ReplaceRouteRequest": { "base": "

        Contains the parameters for ReplaceRoute.

        ", "refs": { } }, "ReplaceRouteTableAssociationRequest": { "base": "

        Contains the parameters for ReplaceRouteTableAssociation.

        ", "refs": { } }, "ReplaceRouteTableAssociationResult": { "base": "

        Contains the output of ReplaceRouteTableAssociation.

        ", "refs": { } }, "ReportInstanceReasonCodes": { "base": null, "refs": { "ReasonCodesList$member": null } }, "ReportInstanceStatusRequest": { "base": "

        Contains the parameters for ReportInstanceStatus.

        ", "refs": { } }, "ReportStatusType": { "base": null, "refs": { "ReportInstanceStatusRequest$Status": "

        The status of all instances listed.

        " } }, "RequestHostIdList": { "base": null, "refs": { "DescribeHostsRequest$HostIds": "

        The IDs of the Dedicated Hosts. The IDs are used for targeted instance launches.

        ", "ModifyHostsRequest$HostIds": "

        The host IDs of the Dedicated Hosts you want to modify.

        ", "ReleaseHostsRequest$HostIds": "

        The IDs of the Dedicated Hosts you want to release.

        " } }, "RequestHostIdSet": { "base": null, "refs": { "GetHostReservationPurchasePreviewRequest$HostIdSet": "

        The ID/s of the Dedicated Host/s that the reservation will be associated with.

        ", "PurchaseHostReservationRequest$HostIdSet": "

        The ID/s of the Dedicated Host/s that the reservation will be associated with.

        " } }, "RequestSpotFleetRequest": { "base": "

        Contains the parameters for RequestSpotFleet.

        ", "refs": { } }, "RequestSpotFleetResponse": { "base": "

        Contains the output of RequestSpotFleet.

        ", "refs": { } }, "RequestSpotInstancesRequest": { "base": "

        Contains the parameters for RequestSpotInstances.

        ", "refs": { } }, "RequestSpotInstancesResult": { "base": "

        Contains the output of RequestSpotInstances.

        ", "refs": { } }, "RequestSpotLaunchSpecification": { "base": "

        Describes the launch specification for an instance.

        ", "refs": { "RequestSpotInstancesRequest$LaunchSpecification": null } }, "Reservation": { "base": "

        Describes a reservation.

        ", "refs": { "ReservationList$member": null } }, "ReservationList": { "base": null, "refs": { "DescribeInstancesResult$Reservations": "

        Zero or more reservations.

        " } }, "ReservationState": { "base": null, "refs": { "HostReservation$State": "

        The state of the reservation.

        " } }, "ReservedInstanceLimitPrice": { "base": "

        Describes the limit price of a Reserved Instance offering.

        ", "refs": { "PurchaseReservedInstancesOfferingRequest$LimitPrice": "

        Specified for Reserved Instance Marketplace offerings to limit the total order and ensure that the Reserved Instances are not purchased at unexpected prices.

        " } }, "ReservedInstanceState": { "base": null, "refs": { "ReservedInstances$State": "

        The state of the Reserved Instance purchase.

        " } }, "ReservedInstances": { "base": "

        Describes a Reserved Instance.

        ", "refs": { "ReservedInstancesList$member": null } }, "ReservedInstancesConfiguration": { "base": "

        Describes the configuration settings for the modified Reserved Instances.

        ", "refs": { "ReservedInstancesConfigurationList$member": null, "ReservedInstancesModificationResult$TargetConfiguration": "

        The target Reserved Instances configurations supplied as part of the modification request.

        " } }, "ReservedInstancesConfigurationList": { "base": null, "refs": { "ModifyReservedInstancesRequest$TargetConfigurations": "

        The configuration settings for the Reserved Instances to modify.

        " } }, "ReservedInstancesId": { "base": "

        Describes the ID of a Reserved Instance.

        ", "refs": { "ReservedIntancesIds$member": null } }, "ReservedInstancesIdStringList": { "base": null, "refs": { "DescribeReservedInstancesRequest$ReservedInstancesIds": "

        One or more Reserved Instance IDs.

        Default: Describes all your Reserved Instances, or only those otherwise specified.

        ", "ModifyReservedInstancesRequest$ReservedInstancesIds": "

        The IDs of the Reserved Instances to modify.

        " } }, "ReservedInstancesList": { "base": null, "refs": { "DescribeReservedInstancesResult$ReservedInstances": "

        A list of Reserved Instances.

        " } }, "ReservedInstancesListing": { "base": "

        Describes a Reserved Instance listing.

        ", "refs": { "ReservedInstancesListingList$member": null } }, "ReservedInstancesListingList": { "base": null, "refs": { "CancelReservedInstancesListingResult$ReservedInstancesListings": "

        The Reserved Instance listing.

        ", "CreateReservedInstancesListingResult$ReservedInstancesListings": "

        Information about the Reserved Instance listing.

        ", "DescribeReservedInstancesListingsResult$ReservedInstancesListings": "

        Information about the Reserved Instance listing.

        " } }, "ReservedInstancesModification": { "base": "

        Describes a Reserved Instance modification.

        ", "refs": { "ReservedInstancesModificationList$member": null } }, "ReservedInstancesModificationIdStringList": { "base": null, "refs": { "DescribeReservedInstancesModificationsRequest$ReservedInstancesModificationIds": "

        IDs for the submitted modification request.

        " } }, "ReservedInstancesModificationList": { "base": null, "refs": { "DescribeReservedInstancesModificationsResult$ReservedInstancesModifications": "

        The Reserved Instance modification information.

        " } }, "ReservedInstancesModificationResult": { "base": "

        Describes the modification request/s.

        ", "refs": { "ReservedInstancesModificationResultList$member": null } }, "ReservedInstancesModificationResultList": { "base": null, "refs": { "ReservedInstancesModification$ModificationResults": "

        Contains target configurations along with their corresponding new Reserved Instance IDs.

        " } }, "ReservedInstancesOffering": { "base": "

        Describes a Reserved Instance offering.

        ", "refs": { "ReservedInstancesOfferingList$member": null } }, "ReservedInstancesOfferingIdStringList": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$ReservedInstancesOfferingIds": "

        One or more Reserved Instances offering IDs.

        " } }, "ReservedInstancesOfferingList": { "base": null, "refs": { "DescribeReservedInstancesOfferingsResult$ReservedInstancesOfferings": "

        A list of Reserved Instances offerings.

        " } }, "ReservedIntancesIds": { "base": null, "refs": { "ReservedInstancesModification$ReservedInstancesIds": "

        The IDs of one or more Reserved Instances.

        " } }, "ResetImageAttributeName": { "base": null, "refs": { "ResetImageAttributeRequest$Attribute": "

        The attribute to reset (currently you can only reset the launch permission attribute).

        " } }, "ResetImageAttributeRequest": { "base": "

        Contains the parameters for ResetImageAttribute.

        ", "refs": { } }, "ResetInstanceAttributeRequest": { "base": "

        Contains the parameters for ResetInstanceAttribute.

        ", "refs": { } }, "ResetNetworkInterfaceAttributeRequest": { "base": "

        Contains the parameters for ResetNetworkInterfaceAttribute.

        ", "refs": { } }, "ResetSnapshotAttributeRequest": { "base": "

        Contains the parameters for ResetSnapshotAttribute.

        ", "refs": { } }, "ResourceIdList": { "base": null, "refs": { "CreateTagsRequest$Resources": "

        The IDs of one or more resources to tag. For example, ami-1a2b3c4d.

        ", "DeleteTagsRequest$Resources": "

        The ID of the resource. For example, ami-1a2b3c4d. You can specify more than one resource ID.

        " } }, "ResourceType": { "base": null, "refs": { "TagDescription$ResourceType": "

        The resource type.

        " } }, "ResponseHostIdList": { "base": null, "refs": { "AllocateHostsResult$HostIds": "

        The ID of the allocated Dedicated Host. This is used when you want to launch an instance onto a specific host.

        ", "ModifyHostsResult$Successful": "

        The IDs of the Dedicated Hosts that were successfully modified.

        ", "ReleaseHostsResult$Successful": "

        The IDs of the Dedicated Hosts that were successfully released.

        " } }, "ResponseHostIdSet": { "base": null, "refs": { "HostReservation$HostIdSet": "

        The IDs of the Dedicated Hosts associated with the reservation.

        ", "Purchase$HostIdSet": "

        The IDs of the Dedicated Hosts associated with the reservation.

        " } }, "RestorableByStringList": { "base": null, "refs": { "DescribeSnapshotsRequest$RestorableByUserIds": "

        One or more AWS accounts IDs that can create volumes from the snapshot.

        " } }, "RestoreAddressToClassicRequest": { "base": "

        Contains the parameters for RestoreAddressToClassic.

        ", "refs": { } }, "RestoreAddressToClassicResult": { "base": "

        Contains the output of RestoreAddressToClassic.

        ", "refs": { } }, "RevokeSecurityGroupEgressRequest": { "base": "

        Contains the parameters for RevokeSecurityGroupEgress.

        ", "refs": { } }, "RevokeSecurityGroupIngressRequest": { "base": "

        Contains the parameters for RevokeSecurityGroupIngress.

        ", "refs": { } }, "Route": { "base": "

        Describes a route in a route table.

        ", "refs": { "RouteList$member": null } }, "RouteList": { "base": null, "refs": { "RouteTable$Routes": "

        The routes in the route table.

        " } }, "RouteOrigin": { "base": null, "refs": { "Route$Origin": "

        Describes how the route was created.

        • CreateRouteTable - The route was automatically created when the route table was created.

        • CreateRoute - The route was manually added to the route table.

        • EnableVgwRoutePropagation - The route was propagated by route propagation.

        " } }, "RouteState": { "base": null, "refs": { "Route$State": "

        The state of the route. The blackhole state indicates that the route's target isn't available (for example, the specified gateway isn't attached to the VPC, or the specified NAT instance has been terminated).

        " } }, "RouteTable": { "base": "

        Describes a route table.

        ", "refs": { "CreateRouteTableResult$RouteTable": "

        Information about the route table.

        ", "RouteTableList$member": null } }, "RouteTableAssociation": { "base": "

        Describes an association between a route table and a subnet.

        ", "refs": { "RouteTableAssociationList$member": null } }, "RouteTableAssociationList": { "base": null, "refs": { "RouteTable$Associations": "

        The associations between the route table and one or more subnets.

        " } }, "RouteTableList": { "base": null, "refs": { "DescribeRouteTablesResult$RouteTables": "

        Information about one or more route tables.

        " } }, "RuleAction": { "base": null, "refs": { "CreateNetworkAclEntryRequest$RuleAction": "

        Indicates whether to allow or deny the traffic that matches the rule.

        ", "NetworkAclEntry$RuleAction": "

        Indicates whether to allow or deny the traffic that matches the rule.

        ", "ReplaceNetworkAclEntryRequest$RuleAction": "

        Indicates whether to allow or deny the traffic that matches the rule.

        " } }, "RunInstancesMonitoringEnabled": { "base": "

        Describes the monitoring for the instance.

        ", "refs": { "LaunchSpecification$Monitoring": null, "RequestSpotLaunchSpecification$Monitoring": null, "RunInstancesRequest$Monitoring": "

        The monitoring for the instance.

        " } }, "RunInstancesRequest": { "base": "

        Contains the parameters for RunInstances.

        ", "refs": { } }, "RunScheduledInstancesRequest": { "base": "

        Contains the parameters for RunScheduledInstances.

        ", "refs": { } }, "RunScheduledInstancesResult": { "base": "

        Contains the output of RunScheduledInstances.

        ", "refs": { } }, "S3Storage": { "base": "

        Describes the storage parameters for S3 and S3 buckets for an instance store-backed AMI.

        ", "refs": { "Storage$S3": "

        An Amazon S3 storage location.

        " } }, "ScheduledInstance": { "base": "

        Describes a Scheduled Instance.

        ", "refs": { "PurchasedScheduledInstanceSet$member": null, "ScheduledInstanceSet$member": null } }, "ScheduledInstanceAvailability": { "base": "

        Describes a schedule that is available for your Scheduled Instances.

        ", "refs": { "ScheduledInstanceAvailabilitySet$member": null } }, "ScheduledInstanceAvailabilitySet": { "base": null, "refs": { "DescribeScheduledInstanceAvailabilityResult$ScheduledInstanceAvailabilitySet": "

        Information about the available Scheduled Instances.

        " } }, "ScheduledInstanceIdRequestSet": { "base": null, "refs": { "DescribeScheduledInstancesRequest$ScheduledInstanceIds": "

        One or more Scheduled Instance IDs.

        " } }, "ScheduledInstanceRecurrence": { "base": "

        Describes the recurring schedule for a Scheduled Instance.

        ", "refs": { "ScheduledInstance$Recurrence": "

        The schedule recurrence.

        ", "ScheduledInstanceAvailability$Recurrence": "

        The schedule recurrence.

        " } }, "ScheduledInstanceRecurrenceRequest": { "base": "

        Describes the recurring schedule for a Scheduled Instance.

        ", "refs": { "DescribeScheduledInstanceAvailabilityRequest$Recurrence": "

        The schedule recurrence.

        " } }, "ScheduledInstanceSet": { "base": null, "refs": { "DescribeScheduledInstancesResult$ScheduledInstanceSet": "

        Information about the Scheduled Instances.

        " } }, "ScheduledInstancesBlockDeviceMapping": { "base": "

        Describes a block device mapping for a Scheduled Instance.

        ", "refs": { "ScheduledInstancesBlockDeviceMappingSet$member": null } }, "ScheduledInstancesBlockDeviceMappingSet": { "base": null, "refs": { "ScheduledInstancesLaunchSpecification$BlockDeviceMappings": "

        One or more block device mapping entries.

        " } }, "ScheduledInstancesEbs": { "base": "

        Describes an EBS volume for a Scheduled Instance.

        ", "refs": { "ScheduledInstancesBlockDeviceMapping$Ebs": "

        Parameters used to set up EBS volumes automatically when the instance is launched.

        " } }, "ScheduledInstancesIamInstanceProfile": { "base": "

        Describes an IAM instance profile for a Scheduled Instance.

        ", "refs": { "ScheduledInstancesLaunchSpecification$IamInstanceProfile": "

        The IAM instance profile.

        " } }, "ScheduledInstancesLaunchSpecification": { "base": "

        Describes the launch specification for a Scheduled Instance.

        If you are launching the Scheduled Instance in EC2-VPC, you must specify the ID of the subnet. You can specify the subnet using either SubnetId or NetworkInterface.

        ", "refs": { "RunScheduledInstancesRequest$LaunchSpecification": "

        The launch specification. You must match the instance type, Availability Zone, network, and platform of the schedule that you purchased.

        " } }, "ScheduledInstancesMonitoring": { "base": "

        Describes whether monitoring is enabled for a Scheduled Instance.

        ", "refs": { "ScheduledInstancesLaunchSpecification$Monitoring": "

        Enable or disable monitoring for the instances.

        " } }, "ScheduledInstancesNetworkInterface": { "base": "

        Describes a network interface for a Scheduled Instance.

        ", "refs": { "ScheduledInstancesNetworkInterfaceSet$member": null } }, "ScheduledInstancesNetworkInterfaceSet": { "base": null, "refs": { "ScheduledInstancesLaunchSpecification$NetworkInterfaces": "

        One or more network interfaces.

        " } }, "ScheduledInstancesPlacement": { "base": "

        Describes the placement for a Scheduled Instance.

        ", "refs": { "ScheduledInstancesLaunchSpecification$Placement": "

        The placement information.

        " } }, "ScheduledInstancesPrivateIpAddressConfig": { "base": "

        Describes a private IP address for a Scheduled Instance.

        ", "refs": { "PrivateIpAddressConfigSet$member": null } }, "ScheduledInstancesSecurityGroupIdSet": { "base": null, "refs": { "ScheduledInstancesLaunchSpecification$SecurityGroupIds": "

        The IDs of one or more security groups.

        ", "ScheduledInstancesNetworkInterface$Groups": "

        The IDs of one or more security groups.

        " } }, "SecurityGroup": { "base": "

        Describes a security group

        ", "refs": { "SecurityGroupList$member": null } }, "SecurityGroupIdStringList": { "base": null, "refs": { "CreateNetworkInterfaceRequest$Groups": "

        The IDs of one or more security groups.

        ", "ImportInstanceLaunchSpecification$GroupIds": "

        One or more security group IDs.

        ", "InstanceNetworkInterfaceSpecification$Groups": "

        The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.

        ", "ModifyNetworkInterfaceAttributeRequest$Groups": "

        Changes the security groups for the network interface. The new set of groups you specify replaces the current set. You must specify at least one group, even if it's just the default security group in the VPC. You must specify the ID of the security group, not the name.

        ", "RunInstancesRequest$SecurityGroupIds": "

        One or more security group IDs. You can create a security group using CreateSecurityGroup.

        Default: Amazon EC2 uses the default security group.

        " } }, "SecurityGroupList": { "base": null, "refs": { "DescribeSecurityGroupsResult$SecurityGroups": "

        Information about one or more security groups.

        " } }, "SecurityGroupReference": { "base": "

        Describes a VPC with a security group that references your security group.

        ", "refs": { "SecurityGroupReferences$member": null } }, "SecurityGroupReferences": { "base": null, "refs": { "DescribeSecurityGroupReferencesResult$SecurityGroupReferenceSet": "

        Information about the VPCs with the referencing security groups.

        " } }, "SecurityGroupStringList": { "base": null, "refs": { "ImportInstanceLaunchSpecification$GroupNames": "

        One or more security group names.

        ", "RunInstancesRequest$SecurityGroups": "

        [EC2-Classic, default VPC] One or more security group names. For a nondefault VPC, you must use security group IDs instead.

        Default: Amazon EC2 uses the default security group.

        " } }, "ShutdownBehavior": { "base": null, "refs": { "ImportInstanceLaunchSpecification$InstanceInitiatedShutdownBehavior": "

        Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

        ", "RunInstancesRequest$InstanceInitiatedShutdownBehavior": "

        Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

        Default: stop

        " } }, "SlotDateTimeRangeRequest": { "base": "

        Describes the time period for a Scheduled Instance to start its first schedule. The time period must span less than one day.

        ", "refs": { "DescribeScheduledInstanceAvailabilityRequest$FirstSlotStartTimeRange": "

        The time period for the first schedule to start.

        " } }, "SlotStartTimeRangeRequest": { "base": "

        Describes the time period for a Scheduled Instance to start its first schedule.

        ", "refs": { "DescribeScheduledInstancesRequest$SlotStartTimeRange": "

        The time period for the first schedule to start.

        " } }, "Snapshot": { "base": "

        Describes a snapshot.

        ", "refs": { "SnapshotList$member": null } }, "SnapshotAttributeName": { "base": null, "refs": { "DescribeSnapshotAttributeRequest$Attribute": "

        The snapshot attribute you would like to view.

        ", "ModifySnapshotAttributeRequest$Attribute": "

        The snapshot attribute to modify.

        Only volume creation permissions may be modified at the customer level.

        ", "ResetSnapshotAttributeRequest$Attribute": "

        The attribute to reset. Currently, only the attribute for permission to create volumes can be reset.

        " } }, "SnapshotDetail": { "base": "

        Describes the snapshot created from the imported disk.

        ", "refs": { "SnapshotDetailList$member": null } }, "SnapshotDetailList": { "base": null, "refs": { "ImportImageResult$SnapshotDetails": "

        Information about the snapshots.

        ", "ImportImageTask$SnapshotDetails": "

        Information about the snapshots.

        " } }, "SnapshotDiskContainer": { "base": "

        The disk container object for the import snapshot request.

        ", "refs": { "ImportSnapshotRequest$DiskContainer": "

        Information about the disk container.

        " } }, "SnapshotIdStringList": { "base": null, "refs": { "DescribeSnapshotsRequest$SnapshotIds": "

        One or more snapshot IDs.

        Default: Describes snapshots for which you have launch permissions.

        " } }, "SnapshotList": { "base": null, "refs": { "DescribeSnapshotsResult$Snapshots": "

        Information about the snapshots.

        " } }, "SnapshotState": { "base": null, "refs": { "Snapshot$State": "

        The snapshot state.

        " } }, "SnapshotTaskDetail": { "base": "

        Details about the import snapshot task.

        ", "refs": { "ImportSnapshotResult$SnapshotTaskDetail": "

        Information about the import snapshot task.

        ", "ImportSnapshotTask$SnapshotTaskDetail": "

        Describes an import snapshot task.

        " } }, "SpotDatafeedSubscription": { "base": "

        Describes the data feed for a Spot instance.

        ", "refs": { "CreateSpotDatafeedSubscriptionResult$SpotDatafeedSubscription": "

        The Spot instance data feed subscription.

        ", "DescribeSpotDatafeedSubscriptionResult$SpotDatafeedSubscription": "

        The Spot instance data feed subscription.

        " } }, "SpotFleetLaunchSpecification": { "base": "

        Describes the launch specification for one or more Spot instances.

        ", "refs": { "LaunchSpecsList$member": null } }, "SpotFleetMonitoring": { "base": "

        Describes whether monitoring is enabled.

        ", "refs": { "SpotFleetLaunchSpecification$Monitoring": "

        Enable or disable monitoring for the instances.

        " } }, "SpotFleetRequestConfig": { "base": "

        Describes a Spot fleet request.

        ", "refs": { "SpotFleetRequestConfigSet$member": null } }, "SpotFleetRequestConfigData": { "base": "

        Describes the configuration of a Spot fleet request.

        ", "refs": { "RequestSpotFleetRequest$SpotFleetRequestConfig": "

        The configuration for the Spot fleet request.

        ", "SpotFleetRequestConfig$SpotFleetRequestConfig": "

        Information about the configuration of the Spot fleet request.

        " } }, "SpotFleetRequestConfigSet": { "base": null, "refs": { "DescribeSpotFleetRequestsResponse$SpotFleetRequestConfigs": "

        Information about the configuration of your Spot fleet.

        " } }, "SpotInstanceRequest": { "base": "

        Describes a Spot instance request.

        ", "refs": { "SpotInstanceRequestList$member": null } }, "SpotInstanceRequestIdList": { "base": null, "refs": { "CancelSpotInstanceRequestsRequest$SpotInstanceRequestIds": "

        One or more Spot instance request IDs.

        ", "DescribeSpotInstanceRequestsRequest$SpotInstanceRequestIds": "

        One or more Spot instance request IDs.

        " } }, "SpotInstanceRequestList": { "base": null, "refs": { "DescribeSpotInstanceRequestsResult$SpotInstanceRequests": "

        One or more Spot instance requests.

        ", "RequestSpotInstancesResult$SpotInstanceRequests": "

        One or more Spot instance requests.

        " } }, "SpotInstanceState": { "base": null, "refs": { "SpotInstanceRequest$State": "

        The state of the Spot instance request. Spot bid status information can help you track your Spot instance requests. For more information, see Spot Bid Status in the Amazon Elastic Compute Cloud User Guide.

        " } }, "SpotInstanceStateFault": { "base": "

        Describes a Spot instance state change.

        ", "refs": { "SpotDatafeedSubscription$Fault": "

        The fault codes for the Spot instance request, if any.

        ", "SpotInstanceRequest$Fault": "

        The fault codes for the Spot instance request, if any.

        " } }, "SpotInstanceStatus": { "base": "

        Describes the status of a Spot instance request.

        ", "refs": { "SpotInstanceRequest$Status": "

        The status code and status message describing the Spot instance request.

        " } }, "SpotInstanceType": { "base": null, "refs": { "RequestSpotInstancesRequest$Type": "

        The Spot instance request type.

        Default: one-time

        ", "SpotInstanceRequest$Type": "

        The Spot instance request type.

        " } }, "SpotPlacement": { "base": "

        Describes Spot instance placement.

        ", "refs": { "LaunchSpecification$Placement": "

        The placement information for the instance.

        ", "RequestSpotLaunchSpecification$Placement": "

        The placement information for the instance.

        ", "SpotFleetLaunchSpecification$Placement": "

        The placement information.

        " } }, "SpotPrice": { "base": "

        Describes the maximum hourly price (bid) for any Spot instance launched to fulfill the request.

        ", "refs": { "SpotPriceHistoryList$member": null } }, "SpotPriceHistoryList": { "base": null, "refs": { "DescribeSpotPriceHistoryResult$SpotPriceHistory": "

        The historical Spot prices.

        " } }, "StaleIpPermission": { "base": "

        Describes a stale rule in a security group.

        ", "refs": { "StaleIpPermissionSet$member": null } }, "StaleIpPermissionSet": { "base": null, "refs": { "StaleSecurityGroup$StaleIpPermissions": "

        Information about the stale inbound rules in the security group.

        ", "StaleSecurityGroup$StaleIpPermissionsEgress": "

        Information about the stale outbound rules in the security group.

        " } }, "StaleSecurityGroup": { "base": "

        Describes a stale security group (a security group that contains stale rules).

        ", "refs": { "StaleSecurityGroupSet$member": null } }, "StaleSecurityGroupSet": { "base": null, "refs": { "DescribeStaleSecurityGroupsResult$StaleSecurityGroupSet": "

        Information about the stale security groups.

        " } }, "StartInstancesRequest": { "base": "

        Contains the parameters for StartInstances.

        ", "refs": { } }, "StartInstancesResult": { "base": "

        Contains the output of StartInstances.

        ", "refs": { } }, "State": { "base": null, "refs": { "VpcEndpoint$State": "

        The state of the VPC endpoint.

        " } }, "StateReason": { "base": "

        Describes a state change.

        ", "refs": { "Image$StateReason": "

        The reason for the state change.

        ", "Instance$StateReason": "

        The reason for the most recent state transition.

        " } }, "Status": { "base": null, "refs": { "MoveAddressToVpcResult$Status": "

        The status of the move of the IP address.

        ", "RestoreAddressToClassicResult$Status": "

        The move status for the IP address.

        " } }, "StatusName": { "base": null, "refs": { "InstanceStatusDetails$Name": "

        The type of instance status.

        " } }, "StatusType": { "base": null, "refs": { "InstanceStatusDetails$Status": "

        The status.

        " } }, "StopInstancesRequest": { "base": "

        Contains the parameters for StopInstances.

        ", "refs": { } }, "StopInstancesResult": { "base": "

        Contains the output of StopInstances.

        ", "refs": { } }, "Storage": { "base": "

        Describes the storage location for an instance store-backed AMI.

        ", "refs": { "BundleInstanceRequest$Storage": "

        The bucket in which to store the AMI. You can specify a bucket that you already own or a new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone else, Amazon EC2 returns an error.

        ", "BundleTask$Storage": "

        The Amazon S3 storage locations.

        " } }, "String": { "base": null, "refs": { "AcceptVpcPeeringConnectionRequest$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "AccountAttribute$AttributeName": "

        The name of the account attribute.

        ", "AccountAttributeValue$AttributeValue": "

        The value of the attribute.

        ", "ActiveInstance$InstanceType": "

        The instance type.

        ", "ActiveInstance$InstanceId": "

        The ID of the instance.

        ", "ActiveInstance$SpotInstanceRequestId": "

        The ID of the Spot instance request.

        ", "Address$InstanceId": "

        The ID of the instance that the address is associated with (if any).

        ", "Address$PublicIp": "

        The Elastic IP address.

        ", "Address$AllocationId": "

        The ID representing the allocation of the address for use with EC2-VPC.

        ", "Address$AssociationId": "

        The ID representing the association of the address with an instance in a VPC.

        ", "Address$NetworkInterfaceId": "

        The ID of the network interface.

        ", "Address$NetworkInterfaceOwnerId": "

        The ID of the AWS account that owns the network interface.

        ", "Address$PrivateIpAddress": "

        The private IP address associated with the Elastic IP address.

        ", "AllocateAddressResult$PublicIp": "

        The Elastic IP address.

        ", "AllocateAddressResult$AllocationId": "

        [EC2-VPC] The ID that AWS assigns to represent the allocation of the Elastic IP address for use with instances in a VPC.

        ", "AllocateHostsRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.

        ", "AllocateHostsRequest$InstanceType": "

        Specify the instance type that you want your Dedicated Hosts to be configured for. When you specify the instance type, that is the only instance type that you can launch onto that host.

        ", "AllocateHostsRequest$AvailabilityZone": "

        The Availability Zone for the Dedicated Hosts.

        ", "AllocationIdList$member": null, "AssignPrivateIpAddressesRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "AssociateAddressRequest$InstanceId": "

        The ID of the instance. This is required for EC2-Classic. For EC2-VPC, you can specify either the instance ID or the network interface ID, but not both. The operation fails if you specify an instance ID unless exactly one network interface is attached.

        ", "AssociateAddressRequest$PublicIp": "

        The Elastic IP address. This is required for EC2-Classic.

        ", "AssociateAddressRequest$AllocationId": "

        [EC2-VPC] The allocation ID. This is required for EC2-VPC.

        ", "AssociateAddressRequest$NetworkInterfaceId": "

        [EC2-VPC] The ID of the network interface. If the instance has more than one network interface, you must specify a network interface ID.

        ", "AssociateAddressRequest$PrivateIpAddress": "

        [EC2-VPC] The primary or secondary private IP address to associate with the Elastic IP address. If no private IP address is specified, the Elastic IP address is associated with the primary private IP address.

        ", "AssociateAddressResult$AssociationId": "

        [EC2-VPC] The ID that represents the association of the Elastic IP address with an instance.

        ", "AssociateDhcpOptionsRequest$DhcpOptionsId": "

        The ID of the DHCP options set, or default to associate no DHCP options with the VPC.

        ", "AssociateDhcpOptionsRequest$VpcId": "

        The ID of the VPC.

        ", "AssociateRouteTableRequest$SubnetId": "

        The ID of the subnet.

        ", "AssociateRouteTableRequest$RouteTableId": "

        The ID of the route table.

        ", "AssociateRouteTableResult$AssociationId": "

        The route table association ID (needed to disassociate the route table).

        ", "AttachClassicLinkVpcRequest$InstanceId": "

        The ID of an EC2-Classic instance to link to the ClassicLink-enabled VPC.

        ", "AttachClassicLinkVpcRequest$VpcId": "

        The ID of a ClassicLink-enabled VPC.

        ", "AttachInternetGatewayRequest$InternetGatewayId": "

        The ID of the Internet gateway.

        ", "AttachInternetGatewayRequest$VpcId": "

        The ID of the VPC.

        ", "AttachNetworkInterfaceRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "AttachNetworkInterfaceRequest$InstanceId": "

        The ID of the instance.

        ", "AttachNetworkInterfaceResult$AttachmentId": "

        The ID of the network interface attachment.

        ", "AttachVolumeRequest$VolumeId": "

        The ID of the EBS volume. The volume and instance must be within the same Availability Zone.

        ", "AttachVolumeRequest$InstanceId": "

        The ID of the instance.

        ", "AttachVolumeRequest$Device": "

        The device name to expose to the instance (for example, /dev/sdh or xvdh).

        ", "AttachVpnGatewayRequest$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "AttachVpnGatewayRequest$VpcId": "

        The ID of the VPC.

        ", "AttributeValue$Value": "

        The attribute value. Note that the value is case-sensitive.

        ", "AuthorizeSecurityGroupEgressRequest$GroupId": "

        The ID of the security group.

        ", "AuthorizeSecurityGroupEgressRequest$SourceSecurityGroupName": "

        The name of a destination security group. To authorize outbound access to a destination security group, we recommend that you use a set of IP permissions instead.

        ", "AuthorizeSecurityGroupEgressRequest$SourceSecurityGroupOwnerId": "

        The AWS account number for a destination security group. To authorize outbound access to a destination security group, we recommend that you use a set of IP permissions instead.

        ", "AuthorizeSecurityGroupEgressRequest$IpProtocol": "

        The IP protocol name or number. We recommend that you specify the protocol in a set of IP permissions instead.

        ", "AuthorizeSecurityGroupEgressRequest$CidrIp": "

        The CIDR IP address range. We recommend that you specify the CIDR range in a set of IP permissions instead.

        ", "AuthorizeSecurityGroupIngressRequest$GroupName": "

        [EC2-Classic, default VPC] The name of the security group.

        ", "AuthorizeSecurityGroupIngressRequest$GroupId": "

        The ID of the security group. Required for a nondefault VPC.

        ", "AuthorizeSecurityGroupIngressRequest$SourceSecurityGroupName": "

        [EC2-Classic, default VPC] The name of the source security group. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the start of the port range, the IP protocol, and the end of the port range. Creates rules that grant full ICMP, UDP, and TCP access. To create a rule with a specific IP protocol and port range, use a set of IP permissions instead. For EC2-VPC, the source security group must be in the same VPC.

        ", "AuthorizeSecurityGroupIngressRequest$SourceSecurityGroupOwnerId": "

        [EC2-Classic] The AWS account number for the source security group, if the source security group is in a different account. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the IP protocol, the start of the port range, and the end of the port range. Creates rules that grant full ICMP, UDP, and TCP access. To create a rule with a specific IP protocol and port range, use a set of IP permissions instead.

        ", "AuthorizeSecurityGroupIngressRequest$IpProtocol": "

        The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). (VPC only) Use -1 to specify all traffic. If you specify -1, traffic on all ports is allowed, regardless of any ports you specify.

        ", "AuthorizeSecurityGroupIngressRequest$CidrIp": "

        The CIDR IP address range. You can't specify this parameter when specifying a source security group.

        ", "AvailabilityZone$ZoneName": "

        The name of the Availability Zone.

        ", "AvailabilityZone$RegionName": "

        The name of the region.

        ", "AvailabilityZoneMessage$Message": "

        The message about the Availability Zone.

        ", "BlockDeviceMapping$VirtualName": "

        The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with 2 available instance store volumes can specify mappings for ephemeral0 and ephemeral1.The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.

        Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.

        ", "BlockDeviceMapping$DeviceName": "

        The device name exposed to the instance (for example, /dev/sdh or xvdh).

        ", "BlockDeviceMapping$NoDevice": "

        Suppresses the specified device included in the block device mapping of the AMI.

        ", "BundleIdStringList$member": null, "BundleInstanceRequest$InstanceId": "

        The ID of the instance to bundle.

        Type: String

        Default: None

        Required: Yes

        ", "BundleTask$InstanceId": "

        The ID of the instance associated with this bundle task.

        ", "BundleTask$BundleId": "

        The ID of the bundle task.

        ", "BundleTask$Progress": "

        The level of task completion, as a percent (for example, 20%).

        ", "BundleTaskError$Code": "

        The error code.

        ", "BundleTaskError$Message": "

        The error message.

        ", "CancelBundleTaskRequest$BundleId": "

        The ID of the bundle task.

        ", "CancelConversionRequest$ConversionTaskId": "

        The ID of the conversion task.

        ", "CancelConversionRequest$ReasonMessage": "

        The reason for canceling the conversion task.

        ", "CancelExportTaskRequest$ExportTaskId": "

        The ID of the export task. This is the ID returned by CreateInstanceExportTask.

        ", "CancelImportTaskRequest$ImportTaskId": "

        The ID of the import image or import snapshot task to be canceled.

        ", "CancelImportTaskRequest$CancelReason": "

        The reason for canceling the task.

        ", "CancelImportTaskResult$ImportTaskId": "

        The ID of the task being canceled.

        ", "CancelImportTaskResult$State": "

        The current state of the task being canceled.

        ", "CancelImportTaskResult$PreviousState": "

        The current state of the task being canceled.

        ", "CancelReservedInstancesListingRequest$ReservedInstancesListingId": "

        The ID of the Reserved Instance listing.

        ", "CancelSpotFleetRequestsError$Message": "

        The description for the error code.

        ", "CancelSpotFleetRequestsErrorItem$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "CancelSpotFleetRequestsSuccessItem$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "CancelledSpotInstanceRequest$SpotInstanceRequestId": "

        The ID of the Spot instance request.

        ", "ClassicLinkDnsSupport$VpcId": "

        The ID of the VPC.

        ", "ClassicLinkInstance$InstanceId": "

        The ID of the instance.

        ", "ClassicLinkInstance$VpcId": "

        The ID of the VPC.

        ", "ClientData$Comment": "

        A user-defined comment about the disk upload.

        ", "ConfirmProductInstanceRequest$ProductCode": "

        The product code. This must be a product code that you own.

        ", "ConfirmProductInstanceRequest$InstanceId": "

        The ID of the instance.

        ", "ConfirmProductInstanceResult$OwnerId": "

        The AWS account ID of the instance owner. This is only present if the product code is attached to the instance.

        ", "ConversionIdStringList$member": null, "ConversionTask$ConversionTaskId": "

        The ID of the conversion task.

        ", "ConversionTask$ExpirationTime": "

        The time when the task expires. If the upload isn't complete before the expiration time, we automatically cancel the task.

        ", "ConversionTask$StatusMessage": "

        The status message related to the conversion task.

        ", "CopyImageRequest$SourceRegion": "

        The name of the region that contains the AMI to copy.

        ", "CopyImageRequest$SourceImageId": "

        The ID of the AMI to copy.

        ", "CopyImageRequest$Name": "

        The name of the new AMI in the destination region.

        ", "CopyImageRequest$Description": "

        A description for the new AMI in the destination region.

        ", "CopyImageRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.

        ", "CopyImageRequest$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) CMK to use when encrypting the snapshots of an image during a copy operation. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used. The ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the key namespace, and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. The specified CMK must exist in the region that the snapshot is being copied to. If a KmsKeyId is specified, the Encrypted flag must also be set.

        ", "CopyImageResult$ImageId": "

        The ID of the new AMI.

        ", "CopySnapshotRequest$SourceRegion": "

        The ID of the region that contains the snapshot to be copied.

        ", "CopySnapshotRequest$SourceSnapshotId": "

        The ID of the EBS snapshot to copy.

        ", "CopySnapshotRequest$Description": "

        A description for the EBS snapshot.

        ", "CopySnapshotRequest$DestinationRegion": "

        The destination region to use in the PresignedUrl parameter of a snapshot copy operation. This parameter is only valid for specifying the destination region in a PresignedUrl parameter, where it is required.

        CopySnapshot sends the snapshot copy to the regional endpoint that you send the HTTP request to, such as ec2.us-east-1.amazonaws.com (in the AWS CLI, this is specified with the --region parameter or the default region in your AWS configuration file).

        ", "CopySnapshotRequest$PresignedUrl": "

        The pre-signed URL that facilitates copying an encrypted snapshot. This parameter is only required when copying an encrypted snapshot with the Amazon EC2 Query API; it is available as an optional parameter in all other cases. The PresignedUrl should use the snapshot source endpoint, the CopySnapshot action, and include the SourceRegion, SourceSnapshotId, and DestinationRegion parameters. The PresignedUrl must be signed using AWS Signature Version 4. Because EBS snapshots are stored in Amazon S3, the signing algorithm for this parameter uses the same logic that is described in Authenticating Requests by Using Query Parameters (AWS Signature Version 4) in the Amazon Simple Storage Service API Reference. An invalid or improperly signed PresignedUrl will cause the copy operation to fail asynchronously, and the snapshot will move to an error state.

        ", "CopySnapshotRequest$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) CMK to use when creating the snapshot copy. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used. The ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the key namespace, and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. The specified CMK must exist in the region that the snapshot is being copied to. If a KmsKeyId is specified, the Encrypted flag must also be set.

        ", "CopySnapshotResult$SnapshotId": "

        The ID of the new snapshot.

        ", "CreateCustomerGatewayRequest$PublicIp": "

        The Internet-routable IP address for the customer gateway's outside interface. The address must be static.

        ", "CreateFlowLogsRequest$LogGroupName": "

        The name of the CloudWatch log group.

        ", "CreateFlowLogsRequest$DeliverLogsPermissionArn": "

        The ARN for the IAM role that's used to post flow logs to a CloudWatch Logs log group.

        ", "CreateFlowLogsRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

        ", "CreateFlowLogsResult$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request.

        ", "CreateImageRequest$InstanceId": "

        The ID of the instance.

        ", "CreateImageRequest$Name": "

        A name for the new image.

        Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)

        ", "CreateImageRequest$Description": "

        A description for the new image.

        ", "CreateImageResult$ImageId": "

        The ID of the new AMI.

        ", "CreateInstanceExportTaskRequest$Description": "

        A description for the conversion task or the resource being exported. The maximum length is 255 bytes.

        ", "CreateInstanceExportTaskRequest$InstanceId": "

        The ID of the instance.

        ", "CreateKeyPairRequest$KeyName": "

        A unique name for the key pair.

        Constraints: Up to 255 ASCII characters

        ", "CreateNatGatewayRequest$SubnetId": "

        The subnet in which to create the NAT gateway.

        ", "CreateNatGatewayRequest$AllocationId": "

        The allocation ID of an Elastic IP address to associate with the NAT gateway. If the Elastic IP address is associated with another resource, you must first disassociate it.

        ", "CreateNatGatewayRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

        Constraint: Maximum 64 ASCII characters.

        ", "CreateNatGatewayResult$ClientToken": "

        Unique, case-sensitive identifier to ensure the idempotency of the request. Only returned if a client token was provided in the request.

        ", "CreateNetworkAclEntryRequest$NetworkAclId": "

        The ID of the network ACL.

        ", "CreateNetworkAclEntryRequest$Protocol": "

        The protocol. A value of -1 means all protocols.

        ", "CreateNetworkAclEntryRequest$CidrBlock": "

        The network range to allow or deny, in CIDR notation (for example 172.16.0.0/24).

        ", "CreateNetworkAclRequest$VpcId": "

        The ID of the VPC.

        ", "CreateNetworkInterfaceRequest$SubnetId": "

        The ID of the subnet to associate with the network interface.

        ", "CreateNetworkInterfaceRequest$Description": "

        A description for the network interface.

        ", "CreateNetworkInterfaceRequest$PrivateIpAddress": "

        The primary private IP address of the network interface. If you don't specify an IP address, Amazon EC2 selects one for you from the subnet range. If you specify an IP address, you cannot indicate any IP addresses specified in privateIpAddresses as primary (only one IP address can be designated as primary).

        ", "CreatePlacementGroupRequest$GroupName": "

        A name for the placement group.

        Constraints: Up to 255 ASCII characters

        ", "CreateReservedInstancesListingRequest$ReservedInstancesId": "

        The ID of the active Reserved Instance.

        ", "CreateReservedInstancesListingRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure idempotency of your listings. This helps avoid duplicate listings. For more information, see Ensuring Idempotency.

        ", "CreateRouteRequest$RouteTableId": "

        The ID of the route table for the route.

        ", "CreateRouteRequest$DestinationCidrBlock": "

        The CIDR address block used for the destination match. Routing decisions are based on the most specific match.

        ", "CreateRouteRequest$GatewayId": "

        The ID of an Internet gateway or virtual private gateway attached to your VPC.

        ", "CreateRouteRequest$InstanceId": "

        The ID of a NAT instance in your VPC. The operation fails if you specify an instance ID unless exactly one network interface is attached.

        ", "CreateRouteRequest$NetworkInterfaceId": "

        The ID of a network interface.

        ", "CreateRouteRequest$VpcPeeringConnectionId": "

        The ID of a VPC peering connection.

        ", "CreateRouteRequest$NatGatewayId": "

        The ID of a NAT gateway.

        ", "CreateRouteTableRequest$VpcId": "

        The ID of the VPC.

        ", "CreateSecurityGroupRequest$GroupName": "

        The name of the security group.

        Constraints: Up to 255 characters in length

        Constraints for EC2-Classic: ASCII characters

        Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

        ", "CreateSecurityGroupRequest$Description": "

        A description for the security group. This is informational only.

        Constraints: Up to 255 characters in length

        Constraints for EC2-Classic: ASCII characters

        Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

        ", "CreateSecurityGroupRequest$VpcId": "

        [EC2-VPC] The ID of the VPC. Required for EC2-VPC.

        ", "CreateSecurityGroupResult$GroupId": "

        The ID of the security group.

        ", "CreateSnapshotRequest$VolumeId": "

        The ID of the EBS volume.

        ", "CreateSnapshotRequest$Description": "

        A description for the snapshot.

        ", "CreateSpotDatafeedSubscriptionRequest$Bucket": "

        The Amazon S3 bucket in which to store the Spot instance data feed.

        ", "CreateSpotDatafeedSubscriptionRequest$Prefix": "

        A prefix for the data feed file names.

        ", "CreateSubnetRequest$VpcId": "

        The ID of the VPC.

        ", "CreateSubnetRequest$CidrBlock": "

        The network range for the subnet, in CIDR notation. For example, 10.0.0.0/24.

        ", "CreateSubnetRequest$AvailabilityZone": "

        The Availability Zone for the subnet.

        Default: AWS selects one for you. If you create more than one subnet in your VPC, we may not necessarily select a different zone for each subnet.

        ", "CreateVolumePermission$UserId": "

        The specific AWS account ID that is to be added or removed from a volume's list of create volume permissions.

        ", "CreateVolumeRequest$SnapshotId": "

        The snapshot from which to create the volume.

        ", "CreateVolumeRequest$AvailabilityZone": "

        The Availability Zone in which to create the volume. Use DescribeAvailabilityZones to list the Availability Zones that are currently available to you.

        ", "CreateVolumeRequest$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use when creating the encrypted volume. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used. The ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the key namespace, and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. If a KmsKeyId is specified, the Encrypted flag must also be set.

        ", "CreateVpcEndpointRequest$VpcId": "

        The ID of the VPC in which the endpoint will be used.

        ", "CreateVpcEndpointRequest$ServiceName": "

        The AWS service name, in the form com.amazonaws.region.service . To get a list of available services, use the DescribeVpcEndpointServices request.

        ", "CreateVpcEndpointRequest$PolicyDocument": "

        A policy to attach to the endpoint that controls access to the service. The policy must be in valid JSON format. If this parameter is not specified, we attach a default policy that allows full access to the service.

        ", "CreateVpcEndpointRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

        ", "CreateVpcEndpointResult$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request.

        ", "CreateVpcPeeringConnectionRequest$VpcId": "

        The ID of the requester VPC.

        ", "CreateVpcPeeringConnectionRequest$PeerVpcId": "

        The ID of the VPC with which you are creating the VPC peering connection.

        ", "CreateVpcPeeringConnectionRequest$PeerOwnerId": "

        The AWS account ID of the owner of the peer VPC.

        Default: Your AWS account ID

        ", "CreateVpcRequest$CidrBlock": "

        The network range for the VPC, in CIDR notation. For example, 10.0.0.0/16.

        ", "CreateVpnConnectionRequest$Type": "

        The type of VPN connection (ipsec.1).

        ", "CreateVpnConnectionRequest$CustomerGatewayId": "

        The ID of the customer gateway.

        ", "CreateVpnConnectionRequest$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "CreateVpnConnectionRouteRequest$VpnConnectionId": "

        The ID of the VPN connection.

        ", "CreateVpnConnectionRouteRequest$DestinationCidrBlock": "

        The CIDR block associated with the local subnet of the customer network.

        ", "CreateVpnGatewayRequest$AvailabilityZone": "

        The Availability Zone for the virtual private gateway.

        ", "CustomerGateway$CustomerGatewayId": "

        The ID of the customer gateway.

        ", "CustomerGateway$State": "

        The current state of the customer gateway (pending | available | deleting | deleted).

        ", "CustomerGateway$Type": "

        The type of VPN connection the customer gateway supports (ipsec.1).

        ", "CustomerGateway$IpAddress": "

        The Internet-routable IP address of the customer gateway's outside interface.

        ", "CustomerGateway$BgpAsn": "

        The customer gateway's Border Gateway Protocol (BGP) Autonomous System Number (ASN).

        ", "CustomerGatewayIdStringList$member": null, "DeleteCustomerGatewayRequest$CustomerGatewayId": "

        The ID of the customer gateway.

        ", "DeleteDhcpOptionsRequest$DhcpOptionsId": "

        The ID of the DHCP options set.

        ", "DeleteInternetGatewayRequest$InternetGatewayId": "

        The ID of the Internet gateway.

        ", "DeleteKeyPairRequest$KeyName": "

        The name of the key pair.

        ", "DeleteNatGatewayRequest$NatGatewayId": "

        The ID of the NAT gateway.

        ", "DeleteNatGatewayResult$NatGatewayId": "

        The ID of the NAT gateway.

        ", "DeleteNetworkAclEntryRequest$NetworkAclId": "

        The ID of the network ACL.

        ", "DeleteNetworkAclRequest$NetworkAclId": "

        The ID of the network ACL.

        ", "DeleteNetworkInterfaceRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "DeletePlacementGroupRequest$GroupName": "

        The name of the placement group.

        ", "DeleteRouteRequest$RouteTableId": "

        The ID of the route table.

        ", "DeleteRouteRequest$DestinationCidrBlock": "

        The CIDR range for the route. The value you specify must match the CIDR for the route exactly.

        ", "DeleteRouteTableRequest$RouteTableId": "

        The ID of the route table.

        ", "DeleteSecurityGroupRequest$GroupName": "

        [EC2-Classic, default VPC] The name of the security group. You can specify either the security group name or the security group ID.

        ", "DeleteSecurityGroupRequest$GroupId": "

        The ID of the security group. Required for a nondefault VPC.

        ", "DeleteSnapshotRequest$SnapshotId": "

        The ID of the EBS snapshot.

        ", "DeleteSubnetRequest$SubnetId": "

        The ID of the subnet.

        ", "DeleteVolumeRequest$VolumeId": "

        The ID of the volume.

        ", "DeleteVpcPeeringConnectionRequest$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "DeleteVpcRequest$VpcId": "

        The ID of the VPC.

        ", "DeleteVpnConnectionRequest$VpnConnectionId": "

        The ID of the VPN connection.

        ", "DeleteVpnConnectionRouteRequest$VpnConnectionId": "

        The ID of the VPN connection.

        ", "DeleteVpnConnectionRouteRequest$DestinationCidrBlock": "

        The CIDR block associated with the local subnet of the customer network.

        ", "DeleteVpnGatewayRequest$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "DeregisterImageRequest$ImageId": "

        The ID of the AMI.

        ", "DescribeClassicLinkInstancesRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeClassicLinkInstancesResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeFlowLogsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeFlowLogsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeHostReservationOfferingsRequest$OfferingId": "

        The ID of the reservation offering.

        ", "DescribeHostReservationOfferingsRequest$NextToken": "

        The token to use to retrieve the next page of results.

        ", "DescribeHostReservationOfferingsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeHostReservationsRequest$NextToken": "

        The token to use to retrieve the next page of results.

        ", "DescribeHostReservationsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeHostsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeHostsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeIdFormatRequest$Resource": "

        The type of resource: instance | reservation | snapshot | volume

        ", "DescribeIdentityIdFormatRequest$Resource": "

        The type of resource: instance | reservation | snapshot | volume

        ", "DescribeIdentityIdFormatRequest$PrincipalArn": "

        The ARN of the principal, which can be an IAM role, IAM user, or the root user.

        ", "DescribeImageAttributeRequest$ImageId": "

        The ID of the AMI.

        ", "DescribeImportImageTasksRequest$NextToken": "

        A token that indicates the next page of results.

        ", "DescribeImportImageTasksResult$NextToken": "

        The token to use to get the next page of results. This value is null when there are no more results to return.

        ", "DescribeImportSnapshotTasksRequest$NextToken": "

        A token that indicates the next page of results.

        ", "DescribeImportSnapshotTasksResult$NextToken": "

        The token to use to get the next page of results. This value is null when there are no more results to return.

        ", "DescribeInstanceAttributeRequest$InstanceId": "

        The ID of the instance.

        ", "DescribeInstanceStatusRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeInstanceStatusResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeInstancesRequest$NextToken": "

        The token to request the next page of results.

        ", "DescribeInstancesResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeMovingAddressesRequest$NextToken": "

        The token to use to retrieve the next page of results.

        ", "DescribeMovingAddressesResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeNatGatewaysRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeNatGatewaysResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeNetworkInterfaceAttributeRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "DescribeNetworkInterfaceAttributeResult$NetworkInterfaceId": "

        The ID of the network interface.

        ", "DescribePrefixListsRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a prior call.)

        ", "DescribePrefixListsResult$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DescribeReservedInstancesListingsRequest$ReservedInstancesId": "

        One or more Reserved Instance IDs.

        ", "DescribeReservedInstancesListingsRequest$ReservedInstancesListingId": "

        One or more Reserved Instance listing IDs.

        ", "DescribeReservedInstancesModificationsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeReservedInstancesModificationsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeReservedInstancesOfferingsRequest$AvailabilityZone": "

        The Availability Zone in which the Reserved Instance can be used.

        ", "DescribeReservedInstancesOfferingsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeReservedInstancesOfferingsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeScheduledInstanceAvailabilityRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeScheduledInstanceAvailabilityResult$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeScheduledInstancesRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeScheduledInstancesResult$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeSnapshotAttributeRequest$SnapshotId": "

        The ID of the EBS snapshot.

        ", "DescribeSnapshotAttributeResult$SnapshotId": "

        The ID of the EBS snapshot.

        ", "DescribeSnapshotsRequest$NextToken": "

        The NextToken value returned from a previous paginated DescribeSnapshots request where MaxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the NextToken value. This value is null when there are no more results to return.

        ", "DescribeSnapshotsResult$NextToken": "

        The NextToken value to include in a future DescribeSnapshots request. When the results of a DescribeSnapshots request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeSpotFleetInstancesRequest$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "DescribeSpotFleetInstancesRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeSpotFleetInstancesResponse$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "DescribeSpotFleetInstancesResponse$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeSpotFleetRequestHistoryRequest$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "DescribeSpotFleetRequestHistoryRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeSpotFleetRequestHistoryResponse$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "DescribeSpotFleetRequestHistoryResponse$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeSpotFleetRequestsRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeSpotFleetRequestsResponse$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeSpotPriceHistoryRequest$AvailabilityZone": "

        Filters the results by the specified Availability Zone.

        ", "DescribeSpotPriceHistoryRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeSpotPriceHistoryResult$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeStaleSecurityGroupsRequest$VpcId": "

        The ID of the VPC.

        ", "DescribeStaleSecurityGroupsResult$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DescribeTagsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeTagsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return..

        ", "DescribeVolumeAttributeRequest$VolumeId": "

        The ID of the volume.

        ", "DescribeVolumeAttributeResult$VolumeId": "

        The ID of the volume.

        ", "DescribeVolumeStatusRequest$NextToken": "

        The NextToken value to include in a future DescribeVolumeStatus request. When the results of the request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeVolumeStatusResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeVolumesRequest$NextToken": "

        The NextToken value returned from a previous paginated DescribeVolumes request where MaxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the NextToken value. This value is null when there are no more results to return.

        ", "DescribeVolumesResult$NextToken": "

        The NextToken value to include in a future DescribeVolumes request. When the results of a DescribeVolumes request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeVpcAttributeRequest$VpcId": "

        The ID of the VPC.

        ", "DescribeVpcAttributeResult$VpcId": "

        The ID of the VPC.

        ", "DescribeVpcEndpointServicesRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a prior call.)

        ", "DescribeVpcEndpointServicesResult$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DescribeVpcEndpointsRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a prior call.)

        ", "DescribeVpcEndpointsResult$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DetachClassicLinkVpcRequest$InstanceId": "

        The ID of the instance to unlink from the VPC.

        ", "DetachClassicLinkVpcRequest$VpcId": "

        The ID of the VPC to which the instance is linked.

        ", "DetachInternetGatewayRequest$InternetGatewayId": "

        The ID of the Internet gateway.

        ", "DetachInternetGatewayRequest$VpcId": "

        The ID of the VPC.

        ", "DetachNetworkInterfaceRequest$AttachmentId": "

        The ID of the attachment.

        ", "DetachVolumeRequest$VolumeId": "

        The ID of the volume.

        ", "DetachVolumeRequest$InstanceId": "

        The ID of the instance.

        ", "DetachVolumeRequest$Device": "

        The device name.

        ", "DetachVpnGatewayRequest$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "DetachVpnGatewayRequest$VpcId": "

        The ID of the VPC.

        ", "DhcpConfiguration$Key": "

        The name of a DHCP option.

        ", "DhcpOptions$DhcpOptionsId": "

        The ID of the set of DHCP options.

        ", "DhcpOptionsIdStringList$member": null, "DisableVgwRoutePropagationRequest$RouteTableId": "

        The ID of the route table.

        ", "DisableVgwRoutePropagationRequest$GatewayId": "

        The ID of the virtual private gateway.

        ", "DisableVpcClassicLinkDnsSupportRequest$VpcId": "

        The ID of the VPC.

        ", "DisableVpcClassicLinkRequest$VpcId": "

        The ID of the VPC.

        ", "DisassociateAddressRequest$PublicIp": "

        [EC2-Classic] The Elastic IP address. Required for EC2-Classic.

        ", "DisassociateAddressRequest$AssociationId": "

        [EC2-VPC] The association ID. Required for EC2-VPC.

        ", "DisassociateRouteTableRequest$AssociationId": "

        The association ID representing the current association between the route table and subnet.

        ", "DiskImage$Description": "

        A description of the disk image.

        ", "DiskImageDescription$ImportManifestUrl": "

        A presigned URL for the import manifest stored in Amazon S3. For information about creating a presigned URL for an Amazon S3 object, read the \"Query String Request Authentication Alternative\" section of the Authenticating REST Requests topic in the Amazon Simple Storage Service Developer Guide.

        For information about the import manifest referenced by this API action, see VM Import Manifest.

        ", "DiskImageDescription$Checksum": "

        The checksum computed for the disk image.

        ", "DiskImageDetail$ImportManifestUrl": "

        A presigned URL for the import manifest stored in Amazon S3 and presented here as an Amazon S3 presigned URL. For information about creating a presigned URL for an Amazon S3 object, read the \"Query String Request Authentication Alternative\" section of the Authenticating REST Requests topic in the Amazon Simple Storage Service Developer Guide.

        For information about the import manifest referenced by this API action, see VM Import Manifest.

        ", "DiskImageVolumeDescription$Id": "

        The volume identifier.

        ", "EbsBlockDevice$SnapshotId": "

        The ID of the snapshot.

        ", "EbsInstanceBlockDevice$VolumeId": "

        The ID of the EBS volume.

        ", "EbsInstanceBlockDeviceSpecification$VolumeId": "

        The ID of the EBS volume.

        ", "EnableVgwRoutePropagationRequest$RouteTableId": "

        The ID of the route table.

        ", "EnableVgwRoutePropagationRequest$GatewayId": "

        The ID of the virtual private gateway.

        ", "EnableVolumeIORequest$VolumeId": "

        The ID of the volume.

        ", "EnableVpcClassicLinkDnsSupportRequest$VpcId": "

        The ID of the VPC.

        ", "EnableVpcClassicLinkRequest$VpcId": "

        The ID of the VPC.

        ", "EventInformation$InstanceId": "

        The ID of the instance. This information is available only for instanceChange events.

        ", "EventInformation$EventSubType": "

        The event.

        The following are the error events.

        • iamFleetRoleInvalid - The Spot fleet did not have the required permissions either to launch or terminate an instance.

        • launchSpecTemporarilyBlacklisted - The configuration is not valid and several attempts to launch instances have failed. For more information, see the description of the event.

        • spotFleetRequestConfigurationInvalid - The configuration is not valid. For more information, see the description of the event.

        • spotInstanceCountLimitExceeded - You've reached the limit on the number of Spot instances that you can launch.

        The following are the fleetRequestChange events.

        • active - The Spot fleet has been validated and Amazon EC2 is attempting to maintain the target number of running Spot instances.

        • cancelled - The Spot fleet is canceled and has no running Spot instances. The Spot fleet will be deleted two days after its instances were terminated.

        • cancelled_running - The Spot fleet is canceled and will not launch additional Spot instances, but its existing Spot instances continue to run until they are interrupted or terminated.

        • cancelled_terminating - The Spot fleet is canceled and its Spot instances are terminating.

        • expired - The Spot fleet request has expired. A subsequent event indicates that the instances were terminated, if the request was created with TerminateInstancesWithExpiration set.

        • modify_in_progress - A request to modify the Spot fleet request was accepted and is in progress.

        • modify_successful - The Spot fleet request was modified.

        • price_update - The bid price for a launch configuration was adjusted because it was too high. This change is permanent.

        • submitted - The Spot fleet request is being evaluated and Amazon EC2 is preparing to launch the target number of Spot instances.

        The following are the instanceChange events.

        • launched - A bid was fulfilled and a new instance was launched.

        • terminated - An instance was terminated by the user.

        ", "EventInformation$EventDescription": "

        The description of the event.

        ", "ExecutableByStringList$member": null, "ExportTask$ExportTaskId": "

        The ID of the export task.

        ", "ExportTask$Description": "

        A description of the resource being exported.

        ", "ExportTask$StatusMessage": "

        The status message related to the export task.

        ", "ExportTaskIdStringList$member": null, "ExportToS3Task$S3Bucket": "

        The S3 bucket for the destination image. The destination bucket must exist and grant WRITE and READ_ACP permissions to the AWS account vm-import-export@amazon.com.

        ", "ExportToS3Task$S3Key": "

        The encryption key for your S3 bucket.

        ", "ExportToS3TaskSpecification$S3Bucket": "

        The S3 bucket for the destination image. The destination bucket must exist and grant WRITE and READ_ACP permissions to the AWS account vm-import-export@amazon.com.

        ", "ExportToS3TaskSpecification$S3Prefix": "

        The image is written to a single object in the S3 bucket at the S3 key s3prefix + exportTaskId + '.' + diskImageFormat.

        ", "Filter$Name": "

        The name of the filter. Filter names are case-sensitive.

        ", "FlowLog$FlowLogId": "

        The flow log ID.

        ", "FlowLog$FlowLogStatus": "

        The status of the flow log (ACTIVE).

        ", "FlowLog$ResourceId": "

        The ID of the resource on which the flow log was created.

        ", "FlowLog$LogGroupName": "

        The name of the flow log group.

        ", "FlowLog$DeliverLogsStatus": "

        The status of the logs delivery (SUCCESS | FAILED).

        ", "FlowLog$DeliverLogsErrorMessage": "

        Information about the error that occurred. Rate limited indicates that CloudWatch logs throttling has been applied for one or more network interfaces, or that you've reached the limit on the number of CloudWatch Logs log groups that you can create. Access error indicates that the IAM role associated with the flow log does not have sufficient permissions to publish to CloudWatch Logs. Unknown error indicates an internal error.

        ", "FlowLog$DeliverLogsPermissionArn": "

        The ARN of the IAM role that posts logs to CloudWatch Logs.

        ", "GetConsoleOutputRequest$InstanceId": "

        The ID of the instance.

        ", "GetConsoleOutputResult$InstanceId": "

        The ID of the instance.

        ", "GetConsoleOutputResult$Output": "

        The console output, Base64-encoded. If using a command line tool, the tool decodes the output for you.

        ", "GetConsoleScreenshotRequest$InstanceId": "

        The ID of the instance.

        ", "GetConsoleScreenshotResult$InstanceId": "

        The ID of the instance.

        ", "GetConsoleScreenshotResult$ImageData": "

        The data that comprises the image.

        ", "GetHostReservationPurchasePreviewRequest$OfferingId": "

        The offering ID of the reservation.

        ", "GetHostReservationPurchasePreviewResult$TotalUpfrontPrice": "

        The potential total upfront price. This is billed immediately.

        ", "GetHostReservationPurchasePreviewResult$TotalHourlyPrice": "

        The potential total hourly price of the reservation per hour.

        ", "GetPasswordDataRequest$InstanceId": "

        The ID of the Windows instance.

        ", "GetPasswordDataResult$InstanceId": "

        The ID of the Windows instance.

        ", "GetPasswordDataResult$PasswordData": "

        The password of the instance.

        ", "GroupIdStringList$member": null, "GroupIdentifier$GroupName": "

        The name of the security group.

        ", "GroupIdentifier$GroupId": "

        The ID of the security group.

        ", "GroupIds$member": null, "GroupNameStringList$member": null, "Host$HostId": "

        The ID of the Dedicated Host.

        ", "Host$HostReservationId": "

        The reservation ID of the Dedicated Host. This returns a null response if the Dedicated Host doesn't have an associated reservation.

        ", "Host$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.

        ", "Host$AvailabilityZone": "

        The Availability Zone of the Dedicated Host.

        ", "HostInstance$InstanceId": "

        the IDs of instances that are running on the Dedicated Host.

        ", "HostInstance$InstanceType": "

        The instance type size (for example, m3.medium) of the running instance.

        ", "HostOffering$OfferingId": "

        The ID of the offering.

        ", "HostOffering$InstanceFamily": "

        The instance family of the offering.

        ", "HostOffering$UpfrontPrice": "

        The upfront price of the offering. Does not apply to No Upfront offerings.

        ", "HostOffering$HourlyPrice": "

        The hourly price of the offering.

        ", "HostProperties$InstanceType": "

        The instance type size that the Dedicated Host supports (for example, m3.medium).

        ", "HostReservation$HostReservationId": "

        The ID of the reservation that specifies the associated Dedicated Hosts.

        ", "HostReservation$OfferingId": "

        The ID of the reservation. This remains the same regardless of which Dedicated Hosts are associated with it.

        ", "HostReservation$InstanceFamily": "

        The instance family of the Dedicated Host Reservation. The instance family on the Dedicated Host must be the same in order for it to benefit from the reservation.

        ", "HostReservation$HourlyPrice": "

        The hourly price of the reservation.

        ", "HostReservation$UpfrontPrice": "

        The upfront price of the reservation.

        ", "HostReservationIdSet$member": null, "IamInstanceProfile$Arn": "

        The Amazon Resource Name (ARN) of the instance profile.

        ", "IamInstanceProfile$Id": "

        The ID of the instance profile.

        ", "IamInstanceProfileSpecification$Arn": "

        The Amazon Resource Name (ARN) of the instance profile.

        ", "IamInstanceProfileSpecification$Name": "

        The name of the instance profile.

        ", "IdFormat$Resource": "

        The type of resource.

        ", "Image$ImageId": "

        The ID of the AMI.

        ", "Image$ImageLocation": "

        The location of the AMI.

        ", "Image$OwnerId": "

        The AWS account ID of the image owner.

        ", "Image$CreationDate": "

        The date and time the image was created.

        ", "Image$KernelId": "

        The kernel associated with the image, if any. Only applicable for machine images.

        ", "Image$RamdiskId": "

        The RAM disk associated with the image, if any. Only applicable for machine images.

        ", "Image$SriovNetSupport": "

        Specifies whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.

        ", "Image$ImageOwnerAlias": "

        The AWS account alias (for example, amazon, self) or the AWS account ID of the AMI owner.

        ", "Image$Name": "

        The name of the AMI that was provided during image creation.

        ", "Image$Description": "

        The description of the AMI that was provided during image creation.

        ", "Image$RootDeviceName": "

        The device name of the root device (for example, /dev/sda1 or /dev/xvda).

        ", "ImageAttribute$ImageId": "

        The ID of the AMI.

        ", "ImageDiskContainer$Description": "

        The description of the disk image.

        ", "ImageDiskContainer$Format": "

        The format of the disk image being imported.

        Valid values: RAW | VHD | VMDK | OVA

        ", "ImageDiskContainer$Url": "

        The URL to the Amazon S3-based disk image being imported. The URL can either be a https URL (https://..) or an Amazon S3 URL (s3://..)

        ", "ImageDiskContainer$DeviceName": "

        The block device mapping for the disk.

        ", "ImageDiskContainer$SnapshotId": "

        The ID of the EBS snapshot to be used for importing the snapshot.

        ", "ImageIdStringList$member": null, "ImportImageRequest$Description": "

        A description string for the import image task.

        ", "ImportImageRequest$LicenseType": "

        The license type to be used for the Amazon Machine Image (AMI) after importing.

        Note: You may only use BYOL if you have existing licenses with rights to use these licenses in a third party cloud like AWS. For more information, see Prerequisites in the VM Import/Export User Guide.

        Valid values: AWS | BYOL

        ", "ImportImageRequest$Hypervisor": "

        The target hypervisor platform.

        Valid values: xen

        ", "ImportImageRequest$Architecture": "

        The architecture of the virtual machine.

        Valid values: i386 | x86_64

        ", "ImportImageRequest$Platform": "

        The operating system of the virtual machine.

        Valid values: Windows | Linux

        ", "ImportImageRequest$ClientToken": "

        The token to enable idempotency for VM import requests.

        ", "ImportImageRequest$RoleName": "

        The name of the role to use when not using the default role, 'vmimport'.

        ", "ImportImageResult$ImportTaskId": "

        The task ID of the import image task.

        ", "ImportImageResult$Architecture": "

        The architecture of the virtual machine.

        ", "ImportImageResult$LicenseType": "

        The license type of the virtual machine.

        ", "ImportImageResult$Platform": "

        The operating system of the virtual machine.

        ", "ImportImageResult$Hypervisor": "

        The target hypervisor of the import task.

        ", "ImportImageResult$Description": "

        A description of the import task.

        ", "ImportImageResult$ImageId": "

        The ID of the Amazon Machine Image (AMI) created by the import task.

        ", "ImportImageResult$Progress": "

        The progress of the task.

        ", "ImportImageResult$StatusMessage": "

        A detailed status message of the import task.

        ", "ImportImageResult$Status": "

        A brief status of the task.

        ", "ImportImageTask$ImportTaskId": "

        The ID of the import image task.

        ", "ImportImageTask$Architecture": "

        The architecture of the virtual machine.

        Valid values: i386 | x86_64

        ", "ImportImageTask$LicenseType": "

        The license type of the virtual machine.

        ", "ImportImageTask$Platform": "

        The description string for the import image task.

        ", "ImportImageTask$Hypervisor": "

        The target hypervisor for the import task.

        Valid values: xen

        ", "ImportImageTask$Description": "

        A description of the import task.

        ", "ImportImageTask$ImageId": "

        The ID of the Amazon Machine Image (AMI) of the imported virtual machine.

        ", "ImportImageTask$Progress": "

        The percentage of progress of the import image task.

        ", "ImportImageTask$StatusMessage": "

        A descriptive status message for the import image task.

        ", "ImportImageTask$Status": "

        A brief status for the import image task.

        ", "ImportInstanceLaunchSpecification$AdditionalInfo": "

        Reserved.

        ", "ImportInstanceLaunchSpecification$SubnetId": "

        [EC2-VPC] The ID of the subnet in which to launch the instance.

        ", "ImportInstanceLaunchSpecification$PrivateIpAddress": "

        [EC2-VPC] An available IP address from the IP address range of the subnet.

        ", "ImportInstanceRequest$Description": "

        A description for the instance being imported.

        ", "ImportInstanceTaskDetails$InstanceId": "

        The ID of the instance.

        ", "ImportInstanceTaskDetails$Description": "

        A description of the task.

        ", "ImportInstanceVolumeDetailItem$AvailabilityZone": "

        The Availability Zone where the resulting instance will reside.

        ", "ImportInstanceVolumeDetailItem$Status": "

        The status of the import of this particular disk image.

        ", "ImportInstanceVolumeDetailItem$StatusMessage": "

        The status information or errors related to the disk image.

        ", "ImportInstanceVolumeDetailItem$Description": "

        A description of the task.

        ", "ImportKeyPairRequest$KeyName": "

        A unique name for the key pair.

        ", "ImportKeyPairResult$KeyName": "

        The key pair name you provided.

        ", "ImportKeyPairResult$KeyFingerprint": "

        The MD5 public key fingerprint as specified in section 4 of RFC 4716.

        ", "ImportSnapshotRequest$Description": "

        The description string for the import snapshot task.

        ", "ImportSnapshotRequest$ClientToken": "

        Token to enable idempotency for VM import requests.

        ", "ImportSnapshotRequest$RoleName": "

        The name of the role to use when not using the default role, 'vmimport'.

        ", "ImportSnapshotResult$ImportTaskId": "

        The ID of the import snapshot task.

        ", "ImportSnapshotResult$Description": "

        A description of the import snapshot task.

        ", "ImportSnapshotTask$ImportTaskId": "

        The ID of the import snapshot task.

        ", "ImportSnapshotTask$Description": "

        A description of the import snapshot task.

        ", "ImportTaskIdList$member": null, "ImportVolumeRequest$AvailabilityZone": "

        The Availability Zone for the resulting EBS volume.

        ", "ImportVolumeRequest$Description": "

        A description of the volume.

        ", "ImportVolumeTaskDetails$AvailabilityZone": "

        The Availability Zone where the resulting volume will reside.

        ", "ImportVolumeTaskDetails$Description": "

        The description you provided when starting the import volume task.

        ", "Instance$InstanceId": "

        The ID of the instance.

        ", "Instance$ImageId": "

        The ID of the AMI used to launch the instance.

        ", "Instance$PrivateDnsName": "

        The private DNS name assigned to the instance. This DNS name can only be used inside the Amazon EC2 network. This name is not available until the instance enters the running state. For EC2-VPC, this name is only available if you've enabled DNS hostnames for your VPC.

        ", "Instance$PublicDnsName": "

        The public DNS name assigned to the instance. This name is not available until the instance enters the running state. For EC2-VPC, this name is only available if you've enabled DNS hostnames for your VPC.

        ", "Instance$StateTransitionReason": "

        The reason for the most recent state transition. This might be an empty string.

        ", "Instance$KeyName": "

        The name of the key pair, if this instance was launched with an associated key pair.

        ", "Instance$KernelId": "

        The kernel associated with this instance, if applicable.

        ", "Instance$RamdiskId": "

        The RAM disk associated with this instance, if applicable.

        ", "Instance$SubnetId": "

        [EC2-VPC] The ID of the subnet in which the instance is running.

        ", "Instance$VpcId": "

        [EC2-VPC] The ID of the VPC in which the instance is running.

        ", "Instance$PrivateIpAddress": "

        The private IP address assigned to the instance.

        ", "Instance$PublicIpAddress": "

        The public IP address assigned to the instance, if applicable.

        ", "Instance$RootDeviceName": "

        The root device name (for example, /dev/sda1 or /dev/xvda).

        ", "Instance$SpotInstanceRequestId": "

        If the request is a Spot instance request, the ID of the request.

        ", "Instance$ClientToken": "

        The idempotency token you provided when you launched the instance, if applicable.

        ", "Instance$SriovNetSupport": "

        Specifies whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.

        ", "InstanceAttribute$InstanceId": "

        The ID of the instance.

        ", "InstanceBlockDeviceMapping$DeviceName": "

        The device name exposed to the instance (for example, /dev/sdh or xvdh).

        ", "InstanceBlockDeviceMappingSpecification$DeviceName": "

        The device name exposed to the instance (for example, /dev/sdh or xvdh).

        ", "InstanceBlockDeviceMappingSpecification$VirtualName": "

        The virtual device name.

        ", "InstanceBlockDeviceMappingSpecification$NoDevice": "

        suppress the specified device included in the block device mapping.

        ", "InstanceCapacity$InstanceType": "

        The instance type size supported by the Dedicated Host.

        ", "InstanceExportDetails$InstanceId": "

        The ID of the resource being exported.

        ", "InstanceIdSet$member": null, "InstanceIdStringList$member": null, "InstanceMonitoring$InstanceId": "

        The ID of the instance.

        ", "InstanceNetworkInterface$NetworkInterfaceId": "

        The ID of the network interface.

        ", "InstanceNetworkInterface$SubnetId": "

        The ID of the subnet.

        ", "InstanceNetworkInterface$VpcId": "

        The ID of the VPC.

        ", "InstanceNetworkInterface$Description": "

        The description.

        ", "InstanceNetworkInterface$OwnerId": "

        The ID of the AWS account that created the network interface.

        ", "InstanceNetworkInterface$MacAddress": "

        The MAC address.

        ", "InstanceNetworkInterface$PrivateIpAddress": "

        The IP address of the network interface within the subnet.

        ", "InstanceNetworkInterface$PrivateDnsName": "

        The private DNS name.

        ", "InstanceNetworkInterfaceAssociation$PublicIp": "

        The public IP address or Elastic IP address bound to the network interface.

        ", "InstanceNetworkInterfaceAssociation$PublicDnsName": "

        The public DNS name.

        ", "InstanceNetworkInterfaceAssociation$IpOwnerId": "

        The ID of the owner of the Elastic IP address.

        ", "InstanceNetworkInterfaceAttachment$AttachmentId": "

        The ID of the network interface attachment.

        ", "InstanceNetworkInterfaceSpecification$NetworkInterfaceId": "

        The ID of the network interface.

        ", "InstanceNetworkInterfaceSpecification$SubnetId": "

        The ID of the subnet associated with the network string. Applies only if creating a network interface when launching an instance.

        ", "InstanceNetworkInterfaceSpecification$Description": "

        The description of the network interface. Applies only if creating a network interface when launching an instance.

        ", "InstanceNetworkInterfaceSpecification$PrivateIpAddress": "

        The private IP address of the network interface. Applies only if creating a network interface when launching an instance.

        ", "InstancePrivateIpAddress$PrivateIpAddress": "

        The private IP address of the network interface.

        ", "InstancePrivateIpAddress$PrivateDnsName": "

        The private DNS name.

        ", "InstanceStateChange$InstanceId": "

        The ID of the instance.

        ", "InstanceStatus$InstanceId": "

        The ID of the instance.

        ", "InstanceStatus$AvailabilityZone": "

        The Availability Zone of the instance.

        ", "InstanceStatusEvent$Description": "

        A description of the event.

        After a scheduled event is completed, it can still be described for up to a week. If the event has been completed, this description starts with the following text: [Completed].

        ", "InternetGateway$InternetGatewayId": "

        The ID of the Internet gateway.

        ", "InternetGatewayAttachment$VpcId": "

        The ID of the VPC.

        ", "IpPermission$IpProtocol": "

        The IP protocol name (for tcp, udp, and icmp) or number (see Protocol Numbers).

        [EC2-VPC only] When you authorize or revoke security group rules, you can use -1 to specify all.

        ", "IpRange$CidrIp": "

        The CIDR range. You can either specify a CIDR range or a source security group, not both.

        ", "IpRanges$member": null, "KeyNameStringList$member": null, "KeyPair$KeyName": "

        The name of the key pair.

        ", "KeyPair$KeyFingerprint": "

        The SHA-1 digest of the DER encoded private key.

        ", "KeyPair$KeyMaterial": "

        An unencrypted PEM encoded RSA private key.

        ", "KeyPairInfo$KeyName": "

        The name of the key pair.

        ", "KeyPairInfo$KeyFingerprint": "

        If you used CreateKeyPair to create the key pair, this is the SHA-1 digest of the DER encoded private key. If you used ImportKeyPair to provide AWS the public key, this is the MD5 public key fingerprint as specified in section 4 of RFC4716.

        ", "LaunchPermission$UserId": "

        The AWS account ID.

        ", "LaunchSpecification$ImageId": "

        The ID of the AMI.

        ", "LaunchSpecification$KeyName": "

        The name of the key pair.

        ", "LaunchSpecification$UserData": "

        The user data to make available to the instances. If you are using an AWS SDK or command line tool, Base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide Base64-encoded text.

        ", "LaunchSpecification$AddressingType": "

        Deprecated.

        ", "LaunchSpecification$KernelId": "

        The ID of the kernel.

        ", "LaunchSpecification$RamdiskId": "

        The ID of the RAM disk.

        ", "LaunchSpecification$SubnetId": "

        The ID of the subnet in which to launch the instance.

        ", "ModifyIdFormatRequest$Resource": "

        The type of resource: instance | reservation | snapshot | volume

        ", "ModifyIdentityIdFormatRequest$Resource": "

        The type of resource: instance | reservation | snapshot | volume

        ", "ModifyIdentityIdFormatRequest$PrincipalArn": "

        The ARN of the principal, which can be an IAM user, IAM role, or the root user. Specify all to modify the ID format for all IAM users, IAM roles, and the root user of the account.

        ", "ModifyImageAttributeRequest$ImageId": "

        The ID of the AMI.

        ", "ModifyImageAttributeRequest$Attribute": "

        The name of the attribute to modify.

        ", "ModifyImageAttributeRequest$Value": "

        The value of the attribute being modified. This is only valid when modifying the description attribute.

        ", "ModifyInstanceAttributeRequest$InstanceId": "

        The ID of the instance.

        ", "ModifyInstanceAttributeRequest$Value": "

        A new value for the attribute. Use only with the kernel, ramdisk, userData, disableApiTermination, or instanceInitiatedShutdownBehavior attribute.

        ", "ModifyInstancePlacementRequest$InstanceId": "

        The ID of the instance that you are modifying.

        ", "ModifyInstancePlacementRequest$HostId": "

        The ID of the Dedicated Host that the instance will have affinity with.

        ", "ModifyNetworkInterfaceAttributeRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "ModifyReservedInstancesRequest$ClientToken": "

        A unique, case-sensitive token you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

        ", "ModifyReservedInstancesResult$ReservedInstancesModificationId": "

        The ID for the modification.

        ", "ModifySnapshotAttributeRequest$SnapshotId": "

        The ID of the snapshot.

        ", "ModifySpotFleetRequestRequest$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "ModifySubnetAttributeRequest$SubnetId": "

        The ID of the subnet.

        ", "ModifyVolumeAttributeRequest$VolumeId": "

        The ID of the volume.

        ", "ModifyVpcAttributeRequest$VpcId": "

        The ID of the VPC.

        ", "ModifyVpcEndpointRequest$VpcEndpointId": "

        The ID of the endpoint.

        ", "ModifyVpcEndpointRequest$PolicyDocument": "

        A policy document to attach to the endpoint. The policy must be in valid JSON format.

        ", "ModifyVpcPeeringConnectionOptionsRequest$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "MoveAddressToVpcRequest$PublicIp": "

        The Elastic IP address.

        ", "MoveAddressToVpcResult$AllocationId": "

        The allocation ID for the Elastic IP address.

        ", "MovingAddressStatus$PublicIp": "

        The Elastic IP address.

        ", "NatGateway$VpcId": "

        The ID of the VPC in which the NAT gateway is located.

        ", "NatGateway$SubnetId": "

        The ID of the subnet in which the NAT gateway is located.

        ", "NatGateway$NatGatewayId": "

        The ID of the NAT gateway.

        ", "NatGateway$FailureCode": "

        If the NAT gateway could not be created, specifies the error code for the failure. (InsufficientFreeAddressesInSubnet | Gateway.NotAttached | InvalidAllocationID.NotFound | Resource.AlreadyAssociated | InternalError | InvalidSubnetID.NotFound)

        ", "NatGateway$FailureMessage": "

        If the NAT gateway could not be created, specifies the error message for the failure, that corresponds to the error code.

        • For InsufficientFreeAddressesInSubnet: \"Subnet has insufficient free addresses to create this NAT gateway\"

        • For Gateway.NotAttached: \"Network vpc-xxxxxxxx has no Internet gateway attached\"

        • For InvalidAllocationID.NotFound: \"Elastic IP address eipalloc-xxxxxxxx could not be associated with this NAT gateway\"

        • For Resource.AlreadyAssociated: \"Elastic IP address eipalloc-xxxxxxxx is already associated\"

        • For InternalError: \"Network interface eni-xxxxxxxx, created and used internally by this NAT gateway is in an invalid state. Please try again.\"

        • For InvalidSubnetID.NotFound: \"The specified subnet subnet-xxxxxxxx does not exist or could not be found.\"

        ", "NatGatewayAddress$PublicIp": "

        The Elastic IP address associated with the NAT gateway.

        ", "NatGatewayAddress$AllocationId": "

        The allocation ID of the Elastic IP address that's associated with the NAT gateway.

        ", "NatGatewayAddress$PrivateIp": "

        The private IP address associated with the Elastic IP address.

        ", "NatGatewayAddress$NetworkInterfaceId": "

        The ID of the network interface associated with the NAT gateway.

        ", "NetworkAcl$NetworkAclId": "

        The ID of the network ACL.

        ", "NetworkAcl$VpcId": "

        The ID of the VPC for the network ACL.

        ", "NetworkAclAssociation$NetworkAclAssociationId": "

        The ID of the association between a network ACL and a subnet.

        ", "NetworkAclAssociation$NetworkAclId": "

        The ID of the network ACL.

        ", "NetworkAclAssociation$SubnetId": "

        The ID of the subnet.

        ", "NetworkAclEntry$Protocol": "

        The protocol. A value of -1 means all protocols.

        ", "NetworkAclEntry$CidrBlock": "

        The network range to allow or deny, in CIDR notation.

        ", "NetworkInterface$NetworkInterfaceId": "

        The ID of the network interface.

        ", "NetworkInterface$SubnetId": "

        The ID of the subnet.

        ", "NetworkInterface$VpcId": "

        The ID of the VPC.

        ", "NetworkInterface$AvailabilityZone": "

        The Availability Zone.

        ", "NetworkInterface$Description": "

        A description.

        ", "NetworkInterface$OwnerId": "

        The AWS account ID of the owner of the network interface.

        ", "NetworkInterface$RequesterId": "

        The ID of the entity that launched the instance on your behalf (for example, AWS Management Console or Auto Scaling).

        ", "NetworkInterface$MacAddress": "

        The MAC address.

        ", "NetworkInterface$PrivateIpAddress": "

        The IP address of the network interface within the subnet.

        ", "NetworkInterface$PrivateDnsName": "

        The private DNS name.

        ", "NetworkInterfaceAssociation$PublicIp": "

        The address of the Elastic IP address bound to the network interface.

        ", "NetworkInterfaceAssociation$PublicDnsName": "

        The public DNS name.

        ", "NetworkInterfaceAssociation$IpOwnerId": "

        The ID of the Elastic IP address owner.

        ", "NetworkInterfaceAssociation$AllocationId": "

        The allocation ID.

        ", "NetworkInterfaceAssociation$AssociationId": "

        The association ID.

        ", "NetworkInterfaceAttachment$AttachmentId": "

        The ID of the network interface attachment.

        ", "NetworkInterfaceAttachment$InstanceId": "

        The ID of the instance.

        ", "NetworkInterfaceAttachment$InstanceOwnerId": "

        The AWS account ID of the owner of the instance.

        ", "NetworkInterfaceAttachmentChanges$AttachmentId": "

        The ID of the network interface attachment.

        ", "NetworkInterfaceIdList$member": null, "NetworkInterfacePrivateIpAddress$PrivateIpAddress": "

        The private IP address.

        ", "NetworkInterfacePrivateIpAddress$PrivateDnsName": "

        The private DNS name.

        ", "NewDhcpConfiguration$Key": null, "OwnerStringList$member": null, "Placement$AvailabilityZone": "

        The Availability Zone of the instance.

        ", "Placement$GroupName": "

        The name of the placement group the instance is in (for cluster compute instances).

        ", "Placement$HostId": "

        The ID of the Dedicted host on which the instance resides. This parameter is not support for the ImportInstance command.

        ", "Placement$Affinity": "

        The affinity setting for the instance on the Dedicated Host. This parameter is not supported for the ImportInstance command.

        ", "PlacementGroup$GroupName": "

        The name of the placement group.

        ", "PlacementGroupStringList$member": null, "PrefixList$PrefixListId": "

        The ID of the prefix.

        ", "PrefixList$PrefixListName": "

        The name of the prefix.

        ", "PrefixListId$PrefixListId": "

        The ID of the prefix.

        ", "PrefixListIdSet$member": null, "PrivateIpAddressSpecification$PrivateIpAddress": "

        The private IP addresses.

        ", "PrivateIpAddressStringList$member": null, "ProductCode$ProductCodeId": "

        The product code.

        ", "ProductCodeStringList$member": null, "ProductDescriptionList$member": null, "PropagatingVgw$GatewayId": "

        The ID of the virtual private gateway (VGW).

        ", "ProvisionedBandwidth$Provisioned": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        ", "ProvisionedBandwidth$Requested": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        ", "ProvisionedBandwidth$Status": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        ", "PublicIpStringList$member": null, "Purchase$HostReservationId": "

        The ID of the reservation.

        ", "Purchase$InstanceFamily": "

        The instance family on the Dedicated Host that the reservation can be associated with.

        ", "Purchase$UpfrontPrice": "

        The upfront price of the reservation.

        ", "Purchase$HourlyPrice": "

        The hourly price of the reservation per hour.

        ", "PurchaseHostReservationRequest$OfferingId": "

        The ID of the offering.

        ", "PurchaseHostReservationRequest$LimitPrice": "

        The specified limit is checked against the total upfront cost of the reservation (calculated as the offering's upfront cost multiplied by the host count). If the total upfront cost is greater than the specified price limit, the request will fail. This is used to ensure that the purchase does not exceed the expected upfront cost of the purchase. At this time, the only supported currency is USD. For example, to indicate a limit price of USD 100, specify 100.00.

        ", "PurchaseHostReservationRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.

        ", "PurchaseHostReservationResult$TotalUpfrontPrice": "

        The total amount that will be charged to your account when you purchase the reservation.

        ", "PurchaseHostReservationResult$TotalHourlyPrice": "

        The total hourly price of the reservation calculated per hour.

        ", "PurchaseHostReservationResult$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide

        ", "PurchaseRequest$PurchaseToken": "

        The purchase token.

        ", "PurchaseReservedInstancesOfferingRequest$ReservedInstancesOfferingId": "

        The ID of the Reserved Instance offering to purchase.

        ", "PurchaseReservedInstancesOfferingResult$ReservedInstancesId": "

        The IDs of the purchased Reserved Instances.

        ", "PurchaseScheduledInstancesRequest$ClientToken": "

        Unique, case-sensitive identifier that ensures the idempotency of the request. For more information, see Ensuring Idempotency.

        ", "Region$RegionName": "

        The name of the region.

        ", "Region$Endpoint": "

        The region service endpoint.

        ", "RegionNameStringList$member": null, "RegisterImageRequest$ImageLocation": "

        The full path to your AMI manifest in Amazon S3 storage.

        ", "RegisterImageRequest$Name": "

        A name for your AMI.

        Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)

        ", "RegisterImageRequest$Description": "

        A description for your AMI.

        ", "RegisterImageRequest$KernelId": "

        The ID of the kernel.

        ", "RegisterImageRequest$RamdiskId": "

        The ID of the RAM disk.

        ", "RegisterImageRequest$RootDeviceName": "

        The name of the root device (for example, /dev/sda1, or /dev/xvda).

        ", "RegisterImageRequest$VirtualizationType": "

        The type of virtualization.

        Default: paravirtual

        ", "RegisterImageRequest$SriovNetSupport": "

        Set to simple to enable enhanced networking with the Intel 82599 Virtual Function interface for the AMI and any instances that you launch from the AMI.

        There is no way to disable sriovNetSupport at this time.

        This option is supported only for HVM AMIs. Specifying this option with a PV AMI can make instances launched from the AMI unreachable.

        ", "RegisterImageResult$ImageId": "

        The ID of the newly registered AMI.

        ", "RejectVpcPeeringConnectionRequest$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "ReleaseAddressRequest$PublicIp": "

        [EC2-Classic] The Elastic IP address. Required for EC2-Classic.

        ", "ReleaseAddressRequest$AllocationId": "

        [EC2-VPC] The allocation ID. Required for EC2-VPC.

        ", "ReplaceNetworkAclAssociationRequest$AssociationId": "

        The ID of the current association between the original network ACL and the subnet.

        ", "ReplaceNetworkAclAssociationRequest$NetworkAclId": "

        The ID of the new network ACL to associate with the subnet.

        ", "ReplaceNetworkAclAssociationResult$NewAssociationId": "

        The ID of the new association.

        ", "ReplaceNetworkAclEntryRequest$NetworkAclId": "

        The ID of the ACL.

        ", "ReplaceNetworkAclEntryRequest$Protocol": "

        The IP protocol. You can specify all or -1 to mean all protocols.

        ", "ReplaceNetworkAclEntryRequest$CidrBlock": "

        The network range to allow or deny, in CIDR notation.

        ", "ReplaceRouteRequest$RouteTableId": "

        The ID of the route table.

        ", "ReplaceRouteRequest$DestinationCidrBlock": "

        The CIDR address block used for the destination match. The value you provide must match the CIDR of an existing route in the table.

        ", "ReplaceRouteRequest$GatewayId": "

        The ID of an Internet gateway or virtual private gateway.

        ", "ReplaceRouteRequest$InstanceId": "

        The ID of a NAT instance in your VPC.

        ", "ReplaceRouteRequest$NetworkInterfaceId": "

        The ID of a network interface.

        ", "ReplaceRouteRequest$VpcPeeringConnectionId": "

        The ID of a VPC peering connection.

        ", "ReplaceRouteRequest$NatGatewayId": "

        The ID of a NAT gateway.

        ", "ReplaceRouteTableAssociationRequest$AssociationId": "

        The association ID.

        ", "ReplaceRouteTableAssociationRequest$RouteTableId": "

        The ID of the new route table to associate with the subnet.

        ", "ReplaceRouteTableAssociationResult$NewAssociationId": "

        The ID of the new association.

        ", "ReportInstanceStatusRequest$Description": "

        Descriptive text about the health state of your instance.

        ", "RequestHostIdList$member": null, "RequestHostIdSet$member": null, "RequestSpotFleetResponse$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "RequestSpotInstancesRequest$SpotPrice": "

        The maximum hourly price (bid) for any Spot instance launched to fulfill the request.

        ", "RequestSpotInstancesRequest$ClientToken": "

        Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.

        ", "RequestSpotInstancesRequest$LaunchGroup": "

        The instance launch group. Launch groups are Spot instances that launch together and terminate together.

        Default: Instances are launched and terminated individually

        ", "RequestSpotInstancesRequest$AvailabilityZoneGroup": "

        The user-specified name for a logical grouping of bids.

        When you specify an Availability Zone group in a Spot Instance request, all Spot instances in the request are launched in the same Availability Zone. Instance proximity is maintained with this parameter, but the choice of Availability Zone is not. The group applies only to bids for Spot Instances of the same instance type. Any additional Spot instance requests that are specified with the same Availability Zone group name are launched in that same Availability Zone, as long as at least one instance from the group is still active.

        If there is no active instance running in the Availability Zone group that you specify for a new Spot instance request (all instances are terminated, the bid is expired, or the bid falls below current market), then Amazon EC2 launches the instance in any Availability Zone where the constraint can be met. Consequently, the subsequent set of Spot instances could be placed in a different zone from the original request, even if you specified the same Availability Zone group.

        Default: Instances are launched in any available Availability Zone.

        ", "RequestSpotLaunchSpecification$ImageId": "

        The ID of the AMI.

        ", "RequestSpotLaunchSpecification$KeyName": "

        The name of the key pair.

        ", "RequestSpotLaunchSpecification$UserData": "

        The user data to make available to the instances. If you are using an AWS SDK or command line tool, Base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide Base64-encoded text.

        ", "RequestSpotLaunchSpecification$AddressingType": "

        Deprecated.

        ", "RequestSpotLaunchSpecification$KernelId": "

        The ID of the kernel.

        ", "RequestSpotLaunchSpecification$RamdiskId": "

        The ID of the RAM disk.

        ", "RequestSpotLaunchSpecification$SubnetId": "

        The ID of the subnet in which to launch the instance.

        ", "Reservation$ReservationId": "

        The ID of the reservation.

        ", "Reservation$OwnerId": "

        The ID of the AWS account that owns the reservation.

        ", "Reservation$RequesterId": "

        The ID of the requester that launched the instances on your behalf (for example, AWS Management Console or Auto Scaling).

        ", "ReservedInstances$ReservedInstancesId": "

        The ID of the Reserved Instance.

        ", "ReservedInstances$AvailabilityZone": "

        The Availability Zone in which the Reserved Instance can be used.

        ", "ReservedInstancesConfiguration$AvailabilityZone": "

        The Availability Zone for the modified Reserved Instances.

        ", "ReservedInstancesConfiguration$Platform": "

        The network platform of the modified Reserved Instances, which is either EC2-Classic or EC2-VPC.

        ", "ReservedInstancesId$ReservedInstancesId": "

        The ID of the Reserved Instance.

        ", "ReservedInstancesIdStringList$member": null, "ReservedInstancesListing$ReservedInstancesListingId": "

        The ID of the Reserved Instance listing.

        ", "ReservedInstancesListing$ReservedInstancesId": "

        The ID of the Reserved Instance.

        ", "ReservedInstancesListing$StatusMessage": "

        The reason for the current status of the Reserved Instance listing. The response can be blank.

        ", "ReservedInstancesListing$ClientToken": "

        A unique, case-sensitive key supplied by the client to ensure that the request is idempotent. For more information, see Ensuring Idempotency.

        ", "ReservedInstancesModification$ReservedInstancesModificationId": "

        A unique ID for the Reserved Instance modification.

        ", "ReservedInstancesModification$Status": "

        The status of the Reserved Instances modification request.

        ", "ReservedInstancesModification$StatusMessage": "

        The reason for the status.

        ", "ReservedInstancesModification$ClientToken": "

        A unique, case-sensitive key supplied by the client to ensure that the request is idempotent. For more information, see Ensuring Idempotency.

        ", "ReservedInstancesModificationIdStringList$member": null, "ReservedInstancesModificationResult$ReservedInstancesId": "

        The ID for the Reserved Instances that were created as part of the modification request. This field is only available when the modification is fulfilled.

        ", "ReservedInstancesOffering$ReservedInstancesOfferingId": "

        The ID of the Reserved Instance offering.

        ", "ReservedInstancesOffering$AvailabilityZone": "

        The Availability Zone in which the Reserved Instance can be used.

        ", "ReservedInstancesOfferingIdStringList$member": null, "ResetImageAttributeRequest$ImageId": "

        The ID of the AMI.

        ", "ResetInstanceAttributeRequest$InstanceId": "

        The ID of the instance.

        ", "ResetNetworkInterfaceAttributeRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "ResetNetworkInterfaceAttributeRequest$SourceDestCheck": "

        The source/destination checking attribute. Resets the value to true.

        ", "ResetSnapshotAttributeRequest$SnapshotId": "

        The ID of the snapshot.

        ", "ResourceIdList$member": null, "ResponseHostIdList$member": null, "ResponseHostIdSet$member": null, "RestorableByStringList$member": null, "RestoreAddressToClassicRequest$PublicIp": "

        The Elastic IP address.

        ", "RestoreAddressToClassicResult$PublicIp": "

        The Elastic IP address.

        ", "RevokeSecurityGroupEgressRequest$GroupId": "

        The ID of the security group.

        ", "RevokeSecurityGroupEgressRequest$SourceSecurityGroupName": "

        The name of a destination security group. To revoke outbound access to a destination security group, we recommend that you use a set of IP permissions instead.

        ", "RevokeSecurityGroupEgressRequest$SourceSecurityGroupOwnerId": "

        The AWS account number for a destination security group. To revoke outbound access to a destination security group, we recommend that you use a set of IP permissions instead.

        ", "RevokeSecurityGroupEgressRequest$IpProtocol": "

        The IP protocol name or number. We recommend that you specify the protocol in a set of IP permissions instead.

        ", "RevokeSecurityGroupEgressRequest$CidrIp": "

        The CIDR IP address range. We recommend that you specify the CIDR range in a set of IP permissions instead.

        ", "RevokeSecurityGroupIngressRequest$GroupName": "

        [EC2-Classic, default VPC] The name of the security group.

        ", "RevokeSecurityGroupIngressRequest$GroupId": "

        The ID of the security group. Required for a security group in a nondefault VPC.

        ", "RevokeSecurityGroupIngressRequest$SourceSecurityGroupName": "

        [EC2-Classic, default VPC] The name of the source security group. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the start of the port range, the IP protocol, and the end of the port range. For EC2-VPC, the source security group must be in the same VPC. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.

        ", "RevokeSecurityGroupIngressRequest$SourceSecurityGroupOwnerId": "

        [EC2-Classic] The AWS account ID of the source security group, if the source security group is in a different account. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the IP protocol, the start of the port range, and the end of the port range. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.

        ", "RevokeSecurityGroupIngressRequest$IpProtocol": "

        The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). Use -1 to specify all.

        ", "RevokeSecurityGroupIngressRequest$CidrIp": "

        The CIDR IP address range. You can't specify this parameter when specifying a source security group.

        ", "Route$DestinationCidrBlock": "

        The CIDR block used for the destination match.

        ", "Route$DestinationPrefixListId": "

        The prefix of the AWS service.

        ", "Route$GatewayId": "

        The ID of a gateway attached to your VPC.

        ", "Route$InstanceId": "

        The ID of a NAT instance in your VPC.

        ", "Route$InstanceOwnerId": "

        The AWS account ID of the owner of the instance.

        ", "Route$NetworkInterfaceId": "

        The ID of the network interface.

        ", "Route$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "Route$NatGatewayId": "

        The ID of a NAT gateway.

        ", "RouteTable$RouteTableId": "

        The ID of the route table.

        ", "RouteTable$VpcId": "

        The ID of the VPC.

        ", "RouteTableAssociation$RouteTableAssociationId": "

        The ID of the association between a route table and a subnet.

        ", "RouteTableAssociation$RouteTableId": "

        The ID of the route table.

        ", "RouteTableAssociation$SubnetId": "

        The ID of the subnet. A subnet ID is not returned for an implicit association.

        ", "RunInstancesRequest$ImageId": "

        The ID of the AMI, which you can get by calling DescribeImages.

        ", "RunInstancesRequest$KeyName": "

        The name of the key pair. You can create a key pair using CreateKeyPair or ImportKeyPair.

        If you do not specify a key pair, you can't connect to the instance unless you choose an AMI that is configured to allow users another way to log in.

        ", "RunInstancesRequest$UserData": "

        The user data to make available to the instance. For more information, see Running Commands on Your Linux Instance at Launch (Linux) and Adding User Data (Windows). If you are using an AWS SDK or command line tool, Base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide Base64-encoded text.

        ", "RunInstancesRequest$KernelId": "

        The ID of the kernel.

        We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB in the Amazon Elastic Compute Cloud User Guide.

        ", "RunInstancesRequest$RamdiskId": "

        The ID of the RAM disk.

        We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB in the Amazon Elastic Compute Cloud User Guide.

        ", "RunInstancesRequest$SubnetId": "

        [EC2-VPC] The ID of the subnet to launch the instance into.

        ", "RunInstancesRequest$PrivateIpAddress": "

        [EC2-VPC] The primary IP address. You must specify a value from the IP address range of the subnet.

        Only one private IP address can be designated as primary. Therefore, you can't specify this parameter if PrivateIpAddresses.n.Primary is set to true and PrivateIpAddresses.n.PrivateIpAddress is set to an IP address.

        Default: We select an IP address from the IP address range of the subnet.

        ", "RunInstancesRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

        Constraints: Maximum 64 ASCII characters

        ", "RunInstancesRequest$AdditionalInfo": "

        Reserved.

        ", "RunScheduledInstancesRequest$ClientToken": "

        Unique, case-sensitive identifier that ensures the idempotency of the request. For more information, see Ensuring Idempotency.

        ", "RunScheduledInstancesRequest$ScheduledInstanceId": "

        The Scheduled Instance ID.

        ", "S3Storage$Bucket": "

        The bucket in which to store the AMI. You can specify a bucket that you already own or a new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone else, Amazon EC2 returns an error.

        ", "S3Storage$Prefix": "

        The beginning of the file name of the AMI.

        ", "S3Storage$AWSAccessKeyId": "

        The access key ID of the owner of the bucket. Before you specify a value for your access key ID, review and follow the guidance in Best Practices for Managing AWS Access Keys.

        ", "S3Storage$UploadPolicySignature": "

        The signature of the JSON document.

        ", "ScheduledInstance$ScheduledInstanceId": "

        The Scheduled Instance ID.

        ", "ScheduledInstance$InstanceType": "

        The instance type.

        ", "ScheduledInstance$Platform": "

        The platform (Linux/UNIX or Windows).

        ", "ScheduledInstance$NetworkPlatform": "

        The network platform (EC2-Classic or EC2-VPC).

        ", "ScheduledInstance$AvailabilityZone": "

        The Availability Zone.

        ", "ScheduledInstance$HourlyPrice": "

        The hourly price for a single instance.

        ", "ScheduledInstanceAvailability$InstanceType": "

        The instance type. You can specify one of the C3, C4, M4, or R3 instance types.

        ", "ScheduledInstanceAvailability$Platform": "

        The platform (Linux/UNIX or Windows).

        ", "ScheduledInstanceAvailability$NetworkPlatform": "

        The network platform (EC2-Classic or EC2-VPC).

        ", "ScheduledInstanceAvailability$AvailabilityZone": "

        The Availability Zone.

        ", "ScheduledInstanceAvailability$PurchaseToken": "

        The purchase token. This token expires in two hours.

        ", "ScheduledInstanceAvailability$HourlyPrice": "

        The hourly price for a single instance.

        ", "ScheduledInstanceIdRequestSet$member": null, "ScheduledInstanceRecurrence$Frequency": "

        The frequency (Daily, Weekly, or Monthly).

        ", "ScheduledInstanceRecurrence$OccurrenceUnit": "

        The unit for occurrenceDaySet (DayOfWeek or DayOfMonth).

        ", "ScheduledInstanceRecurrenceRequest$Frequency": "

        The frequency (Daily, Weekly, or Monthly).

        ", "ScheduledInstanceRecurrenceRequest$OccurrenceUnit": "

        The unit for OccurrenceDays (DayOfWeek or DayOfMonth). This value is required for a monthly schedule. You can't specify DayOfWeek with a weekly schedule. You can't specify this value with a daily schedule.

        ", "ScheduledInstancesBlockDeviceMapping$DeviceName": "

        The device name exposed to the instance (for example, /dev/sdh or xvdh).

        ", "ScheduledInstancesBlockDeviceMapping$NoDevice": "

        Suppresses the specified device included in the block device mapping of the AMI.

        ", "ScheduledInstancesBlockDeviceMapping$VirtualName": "

        The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with two available instance store volumes can specify mappings for ephemeral0 and ephemeral1.The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.

        Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.

        ", "ScheduledInstancesEbs$SnapshotId": "

        The ID of the snapshot.

        ", "ScheduledInstancesEbs$VolumeType": "

        The volume type. gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, Throughput Optimized HDD for st1, Cold HDD for sc1, or standard for Magnetic.

        Default: standard

        ", "ScheduledInstancesIamInstanceProfile$Arn": "

        The Amazon Resource Name (ARN).

        ", "ScheduledInstancesIamInstanceProfile$Name": "

        The name.

        ", "ScheduledInstancesLaunchSpecification$ImageId": "

        The ID of the Amazon Machine Image (AMI).

        ", "ScheduledInstancesLaunchSpecification$KeyName": "

        The name of the key pair.

        ", "ScheduledInstancesLaunchSpecification$UserData": "

        The base64-encoded MIME user data.

        ", "ScheduledInstancesLaunchSpecification$KernelId": "

        The ID of the kernel.

        ", "ScheduledInstancesLaunchSpecification$InstanceType": "

        The instance type.

        ", "ScheduledInstancesLaunchSpecification$RamdiskId": "

        The ID of the RAM disk.

        ", "ScheduledInstancesLaunchSpecification$SubnetId": "

        The ID of the subnet in which to launch the instances.

        ", "ScheduledInstancesNetworkInterface$NetworkInterfaceId": "

        The ID of the network interface.

        ", "ScheduledInstancesNetworkInterface$SubnetId": "

        The ID of the subnet.

        ", "ScheduledInstancesNetworkInterface$Description": "

        The description.

        ", "ScheduledInstancesNetworkInterface$PrivateIpAddress": "

        The IP address of the network interface within the subnet.

        ", "ScheduledInstancesPlacement$AvailabilityZone": "

        The Availability Zone.

        ", "ScheduledInstancesPlacement$GroupName": "

        The name of the placement group.

        ", "ScheduledInstancesPrivateIpAddressConfig$PrivateIpAddress": "

        The IP address.

        ", "ScheduledInstancesSecurityGroupIdSet$member": null, "SecurityGroup$OwnerId": "

        The AWS account ID of the owner of the security group.

        ", "SecurityGroup$GroupName": "

        The name of the security group.

        ", "SecurityGroup$GroupId": "

        The ID of the security group.

        ", "SecurityGroup$Description": "

        A description of the security group.

        ", "SecurityGroup$VpcId": "

        [EC2-VPC] The ID of the VPC for the security group.

        ", "SecurityGroupIdStringList$member": null, "SecurityGroupReference$GroupId": "

        The ID of your security group.

        ", "SecurityGroupReference$ReferencingVpcId": "

        The ID of the VPC with the referencing security group.

        ", "SecurityGroupReference$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "SecurityGroupStringList$member": null, "Snapshot$SnapshotId": "

        The ID of the snapshot. Each snapshot receives a unique identifier when it is created.

        ", "Snapshot$VolumeId": "

        The ID of the volume that was used to create the snapshot. Snapshots created by the CopySnapshot action have an arbitrary volume ID that should not be used for any purpose.

        ", "Snapshot$StateMessage": "

        Encrypted Amazon EBS snapshots are copied asynchronously. If a snapshot copy operation fails (for example, if the proper AWS Key Management Service (AWS KMS) permissions are not obtained) this field displays error state details to help you diagnose why the error occurred. This parameter is only returned by the DescribeSnapshots API operation.

        ", "Snapshot$Progress": "

        The progress of the snapshot, as a percentage.

        ", "Snapshot$OwnerId": "

        The AWS account ID of the EBS snapshot owner.

        ", "Snapshot$Description": "

        The description for the snapshot.

        ", "Snapshot$OwnerAlias": "

        Value from an Amazon-maintained list (amazon | aws-marketplace | microsoft) of snapshot owners. Not to be confused with the user-configured AWS account alias, which is set from the IAM console.

        ", "Snapshot$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) that was used to protect the volume encryption key for the parent volume.

        ", "Snapshot$DataEncryptionKeyId": "

        The data encryption key identifier for the snapshot. This value is a unique identifier that corresponds to the data encryption key that was used to encrypt the original volume or snapshot copy. Because data encryption keys are inherited by volumes created from snapshots, and vice versa, if snapshots share the same data encryption key identifier, then they belong to the same volume/snapshot lineage. This parameter is only returned by the DescribeSnapshots API operation.

        ", "SnapshotDetail$Description": "

        A description for the snapshot.

        ", "SnapshotDetail$Format": "

        The format of the disk image from which the snapshot is created.

        ", "SnapshotDetail$Url": "

        The URL used to access the disk image.

        ", "SnapshotDetail$DeviceName": "

        The block device mapping for the snapshot.

        ", "SnapshotDetail$SnapshotId": "

        The snapshot ID of the disk being imported.

        ", "SnapshotDetail$Progress": "

        The percentage of progress for the task.

        ", "SnapshotDetail$StatusMessage": "

        A detailed status message for the snapshot creation.

        ", "SnapshotDetail$Status": "

        A brief status of the snapshot creation.

        ", "SnapshotDiskContainer$Description": "

        The description of the disk image being imported.

        ", "SnapshotDiskContainer$Format": "

        The format of the disk image being imported.

        Valid values: RAW | VHD | VMDK | OVA

        ", "SnapshotDiskContainer$Url": "

        The URL to the Amazon S3-based disk image being imported. It can either be a https URL (https://..) or an Amazon S3 URL (s3://..).

        ", "SnapshotIdStringList$member": null, "SnapshotTaskDetail$Description": "

        The description of the snapshot.

        ", "SnapshotTaskDetail$Format": "

        The format of the disk image from which the snapshot is created.

        ", "SnapshotTaskDetail$Url": "

        The URL of the disk image from which the snapshot is created.

        ", "SnapshotTaskDetail$SnapshotId": "

        The snapshot ID of the disk being imported.

        ", "SnapshotTaskDetail$Progress": "

        The percentage of completion for the import snapshot task.

        ", "SnapshotTaskDetail$StatusMessage": "

        A detailed status message for the import snapshot task.

        ", "SnapshotTaskDetail$Status": "

        A brief status for the import snapshot task.

        ", "SpotDatafeedSubscription$OwnerId": "

        The AWS account ID of the account.

        ", "SpotDatafeedSubscription$Bucket": "

        The Amazon S3 bucket where the Spot instance data feed is located.

        ", "SpotDatafeedSubscription$Prefix": "

        The prefix that is prepended to data feed files.

        ", "SpotFleetLaunchSpecification$ImageId": "

        The ID of the AMI.

        ", "SpotFleetLaunchSpecification$KeyName": "

        The name of the key pair.

        ", "SpotFleetLaunchSpecification$UserData": "

        The user data to make available to the instances. If you are using an AWS SDK or command line tool, Base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide Base64-encoded text.

        ", "SpotFleetLaunchSpecification$AddressingType": "

        Deprecated.

        ", "SpotFleetLaunchSpecification$KernelId": "

        The ID of the kernel.

        ", "SpotFleetLaunchSpecification$RamdiskId": "

        The ID of the RAM disk.

        ", "SpotFleetLaunchSpecification$SubnetId": "

        The ID of the subnet in which to launch the instances. To specify multiple subnets, separate them using commas; for example, \"subnet-a61dafcf, subnet-65ea5f08\".

        ", "SpotFleetLaunchSpecification$SpotPrice": "

        The bid price per unit hour for the specified instance type. If this value is not specified, the default is the Spot bid price specified for the fleet. To determine the bid price per unit hour, divide the Spot bid price by the value of WeightedCapacity.

        ", "SpotFleetRequestConfig$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "SpotFleetRequestConfigData$ClientToken": "

        A unique, case-sensitive identifier you provide to ensure idempotency of your listings. This helps avoid duplicate listings. For more information, see Ensuring Idempotency.

        ", "SpotFleetRequestConfigData$SpotPrice": "

        The bid price per unit hour.

        ", "SpotFleetRequestConfigData$IamFleetRole": "

        Grants the Spot fleet permission to terminate Spot instances on your behalf when you cancel its Spot fleet request using CancelSpotFleetRequests or when the Spot fleet request expires, if you set terminateInstancesWithExpiration.

        ", "SpotInstanceRequest$SpotInstanceRequestId": "

        The ID of the Spot instance request.

        ", "SpotInstanceRequest$SpotPrice": "

        The maximum hourly price (bid) for the Spot instance launched to fulfill the request.

        ", "SpotInstanceRequest$LaunchGroup": "

        The instance launch group. Launch groups are Spot instances that launch together and terminate together.

        ", "SpotInstanceRequest$AvailabilityZoneGroup": "

        The Availability Zone group. If you specify the same Availability Zone group for all Spot instance requests, all Spot instances are launched in the same Availability Zone.

        ", "SpotInstanceRequest$InstanceId": "

        The instance ID, if an instance has been launched to fulfill the Spot instance request.

        ", "SpotInstanceRequest$ActualBlockHourlyPrice": "

        If you specified a duration and your Spot instance request was fulfilled, this is the fixed hourly price in effect for the Spot instance while it runs.

        ", "SpotInstanceRequest$LaunchedAvailabilityZone": "

        The Availability Zone in which the bid is launched.

        ", "SpotInstanceRequestIdList$member": null, "SpotInstanceStateFault$Code": "

        The reason code for the Spot instance state change.

        ", "SpotInstanceStateFault$Message": "

        The message for the Spot instance state change.

        ", "SpotInstanceStatus$Code": "

        The status code. For a list of status codes, see Spot Bid Status Codes in the Amazon Elastic Compute Cloud User Guide.

        ", "SpotInstanceStatus$Message": "

        The description for the status code.

        ", "SpotPlacement$AvailabilityZone": "

        The Availability Zone.

        [Spot fleet only] To specify multiple Availability Zones, separate them using commas; for example, \"us-west-2a, us-west-2b\".

        ", "SpotPlacement$GroupName": "

        The name of the placement group (for cluster instances).

        ", "SpotPrice$SpotPrice": "

        The maximum price (bid) that you are willing to pay for a Spot instance.

        ", "SpotPrice$AvailabilityZone": "

        The Availability Zone.

        ", "StaleIpPermission$IpProtocol": "

        The IP protocol name (for tcp, udp, and icmp) or number (see Protocol Numbers).

        ", "StaleSecurityGroup$GroupId": "

        The ID of the security group.

        ", "StaleSecurityGroup$GroupName": "

        The name of the security group.

        ", "StaleSecurityGroup$Description": "

        The description of the security group.

        ", "StaleSecurityGroup$VpcId": "

        The ID of the VPC for the security group.

        ", "StartInstancesRequest$AdditionalInfo": "

        Reserved.

        ", "StateReason$Code": "

        The reason code for the state change.

        ", "StateReason$Message": "

        The message for the state change.

        • Server.SpotInstanceTermination: A Spot instance was terminated due to an increase in the market price.

        • Server.InternalError: An internal error occurred during instance launch, resulting in termination.

        • Server.InsufficientInstanceCapacity: There was insufficient instance capacity to satisfy the launch request.

        • Client.InternalError: A client error caused the instance to terminate on launch.

        • Client.InstanceInitiatedShutdown: The instance was shut down using the shutdown -h command from the instance.

        • Client.UserInitiatedShutdown: The instance was shut down using the Amazon EC2 API.

        • Client.VolumeLimitExceeded: The limit on the number of EBS volumes or total storage was exceeded. Decrease usage or request an increase in your limits.

        • Client.InvalidSnapshot.NotFound: The specified snapshot was not found.

        ", "Subnet$SubnetId": "

        The ID of the subnet.

        ", "Subnet$VpcId": "

        The ID of the VPC the subnet is in.

        ", "Subnet$CidrBlock": "

        The CIDR block assigned to the subnet.

        ", "Subnet$AvailabilityZone": "

        The Availability Zone of the subnet.

        ", "SubnetIdStringList$member": null, "Tag$Key": "

        The key of the tag.

        Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with aws:

        ", "Tag$Value": "

        The value of the tag.

        Constraints: Tag values are case-sensitive and accept a maximum of 255 Unicode characters.

        ", "TagDescription$ResourceId": "

        The ID of the resource. For example, ami-1a2b3c4d.

        ", "TagDescription$Key": "

        The tag key.

        ", "TagDescription$Value": "

        The tag value.

        ", "UnassignPrivateIpAddressesRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "UnsuccessfulItem$ResourceId": "

        The ID of the resource.

        ", "UnsuccessfulItemError$Code": "

        The error code.

        ", "UnsuccessfulItemError$Message": "

        The error message accompanying the error code.

        ", "UserBucket$S3Bucket": "

        The name of the S3 bucket where the disk image is located.

        ", "UserBucket$S3Key": "

        The file name of the disk image.

        ", "UserBucketDetails$S3Bucket": "

        The S3 bucket from which the disk image was created.

        ", "UserBucketDetails$S3Key": "

        The file name of the disk image.

        ", "UserData$Data": "

        The user data. If you are using an AWS SDK or command line tool, Base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide Base64-encoded text.

        ", "UserGroupStringList$member": null, "UserIdGroupPair$UserId": "

        The ID of an AWS account. For a referenced security group in another VPC, the account ID of the referenced security group is returned.

        [EC2-Classic] Required when adding or removing rules that reference a security group in another AWS account.

        ", "UserIdGroupPair$GroupName": "

        The name of the security group. In a request, use this parameter for a security group in EC2-Classic or a default VPC only. For a security group in a nondefault VPC, use the security group ID.

        ", "UserIdGroupPair$GroupId": "

        The ID of the security group.

        ", "UserIdGroupPair$VpcId": "

        The ID of the VPC for the referenced security group, if applicable.

        ", "UserIdGroupPair$VpcPeeringConnectionId": "

        The ID of the VPC peering connection, if applicable.

        ", "UserIdGroupPair$PeeringStatus": "

        The status of a VPC peering connection, if applicable.

        ", "UserIdStringList$member": null, "ValueStringList$member": null, "VgwTelemetry$OutsideIpAddress": "

        The Internet-routable IP address of the virtual private gateway's outside interface.

        ", "VgwTelemetry$StatusMessage": "

        If an error occurs, a description of the error.

        ", "Volume$VolumeId": "

        The ID of the volume.

        ", "Volume$SnapshotId": "

        The snapshot from which the volume was created, if applicable.

        ", "Volume$AvailabilityZone": "

        The Availability Zone for the volume.

        ", "Volume$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) that was used to protect the volume encryption key for the volume.

        ", "VolumeAttachment$VolumeId": "

        The ID of the volume.

        ", "VolumeAttachment$InstanceId": "

        The ID of the instance.

        ", "VolumeAttachment$Device": "

        The device name.

        ", "VolumeIdStringList$member": null, "VolumeStatusAction$Code": "

        The code identifying the operation, for example, enable-volume-io.

        ", "VolumeStatusAction$Description": "

        A description of the operation.

        ", "VolumeStatusAction$EventType": "

        The event type associated with this operation.

        ", "VolumeStatusAction$EventId": "

        The ID of the event associated with this operation.

        ", "VolumeStatusDetails$Status": "

        The intended status of the volume status.

        ", "VolumeStatusEvent$EventType": "

        The type of this event.

        ", "VolumeStatusEvent$Description": "

        A description of the event.

        ", "VolumeStatusEvent$EventId": "

        The ID of this event.

        ", "VolumeStatusItem$VolumeId": "

        The volume ID.

        ", "VolumeStatusItem$AvailabilityZone": "

        The Availability Zone of the volume.

        ", "Vpc$VpcId": "

        The ID of the VPC.

        ", "Vpc$CidrBlock": "

        The CIDR block for the VPC.

        ", "Vpc$DhcpOptionsId": "

        The ID of the set of DHCP options you've associated with the VPC (or default if the default options are associated with the VPC).

        ", "VpcAttachment$VpcId": "

        The ID of the VPC.

        ", "VpcClassicLink$VpcId": "

        The ID of the VPC.

        ", "VpcClassicLinkIdList$member": null, "VpcEndpoint$VpcEndpointId": "

        The ID of the VPC endpoint.

        ", "VpcEndpoint$VpcId": "

        The ID of the VPC to which the endpoint is associated.

        ", "VpcEndpoint$ServiceName": "

        The name of the AWS service to which the endpoint is associated.

        ", "VpcEndpoint$PolicyDocument": "

        The policy document associated with the endpoint.

        ", "VpcIdStringList$member": null, "VpcPeeringConnection$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "VpcPeeringConnectionStateReason$Message": "

        A message that provides more information about the status, if applicable.

        ", "VpcPeeringConnectionVpcInfo$CidrBlock": "

        The CIDR block for the VPC.

        ", "VpcPeeringConnectionVpcInfo$OwnerId": "

        The AWS account ID of the VPC owner.

        ", "VpcPeeringConnectionVpcInfo$VpcId": "

        The ID of the VPC.

        ", "VpnConnection$VpnConnectionId": "

        The ID of the VPN connection.

        ", "VpnConnection$CustomerGatewayConfiguration": "

        The configuration information for the VPN connection's customer gateway (in the native XML format). This element is always present in the CreateVpnConnection response; however, it's present in the DescribeVpnConnections response only if the VPN connection is in the pending or available state.

        ", "VpnConnection$CustomerGatewayId": "

        The ID of the customer gateway at your end of the VPN connection.

        ", "VpnConnection$VpnGatewayId": "

        The ID of the virtual private gateway at the AWS side of the VPN connection.

        ", "VpnConnectionIdStringList$member": null, "VpnGateway$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "VpnGateway$AvailabilityZone": "

        The Availability Zone where the virtual private gateway was created, if applicable. This field may be empty or not returned.

        ", "VpnGatewayIdStringList$member": null, "VpnStaticRoute$DestinationCidrBlock": "

        The CIDR block associated with the local subnet of the customer data center.

        ", "ZoneNameStringList$member": null } }, "Subnet": { "base": "

        Describes a subnet.

        ", "refs": { "CreateSubnetResult$Subnet": "

        Information about the subnet.

        ", "SubnetList$member": null } }, "SubnetIdStringList": { "base": null, "refs": { "DescribeSubnetsRequest$SubnetIds": "

        One or more subnet IDs.

        Default: Describes all your subnets.

        " } }, "SubnetList": { "base": null, "refs": { "DescribeSubnetsResult$Subnets": "

        Information about one or more subnets.

        " } }, "SubnetState": { "base": null, "refs": { "Subnet$State": "

        The current state of the subnet.

        " } }, "SummaryStatus": { "base": null, "refs": { "InstanceStatusSummary$Status": "

        The status.

        " } }, "Tag": { "base": "

        Describes a tag.

        ", "refs": { "TagList$member": null } }, "TagDescription": { "base": "

        Describes a tag.

        ", "refs": { "TagDescriptionList$member": null } }, "TagDescriptionList": { "base": null, "refs": { "DescribeTagsResult$Tags": "

        A list of tags.

        " } }, "TagList": { "base": null, "refs": { "ClassicLinkInstance$Tags": "

        Any tags assigned to the instance.

        ", "ConversionTask$Tags": "

        Any tags assigned to the task.

        ", "CreateTagsRequest$Tags": "

        One or more tags. The value parameter is required, but if you don't want the tag to have a value, specify the parameter with no value, and we set the value to an empty string.

        ", "CustomerGateway$Tags": "

        Any tags assigned to the customer gateway.

        ", "DeleteTagsRequest$Tags": "

        One or more tags to delete. If you omit the value parameter, we delete the tag regardless of its value. If you specify this parameter with an empty string as the value, we delete the key only if its value is an empty string.

        ", "DhcpOptions$Tags": "

        Any tags assigned to the DHCP options set.

        ", "Image$Tags": "

        Any tags assigned to the image.

        ", "Instance$Tags": "

        Any tags assigned to the instance.

        ", "InternetGateway$Tags": "

        Any tags assigned to the Internet gateway.

        ", "NetworkAcl$Tags": "

        Any tags assigned to the network ACL.

        ", "NetworkInterface$TagSet": "

        Any tags assigned to the network interface.

        ", "ReservedInstances$Tags": "

        Any tags assigned to the resource.

        ", "ReservedInstancesListing$Tags": "

        Any tags assigned to the resource.

        ", "RouteTable$Tags": "

        Any tags assigned to the route table.

        ", "SecurityGroup$Tags": "

        Any tags assigned to the security group.

        ", "Snapshot$Tags": "

        Any tags assigned to the snapshot.

        ", "SpotInstanceRequest$Tags": "

        Any tags assigned to the resource.

        ", "Subnet$Tags": "

        Any tags assigned to the subnet.

        ", "Volume$Tags": "

        Any tags assigned to the volume.

        ", "Vpc$Tags": "

        Any tags assigned to the VPC.

        ", "VpcClassicLink$Tags": "

        Any tags assigned to the VPC.

        ", "VpcPeeringConnection$Tags": "

        Any tags assigned to the resource.

        ", "VpnConnection$Tags": "

        Any tags assigned to the VPN connection.

        ", "VpnGateway$Tags": "

        Any tags assigned to the virtual private gateway.

        " } }, "TelemetryStatus": { "base": null, "refs": { "VgwTelemetry$Status": "

        The status of the VPN tunnel.

        " } }, "Tenancy": { "base": null, "refs": { "CreateVpcRequest$InstanceTenancy": "

        The tenancy options for instances launched into the VPC. For default, instances are launched with shared tenancy by default. You can launch instances with any tenancy into a shared tenancy VPC. For dedicated, instances are launched as dedicated tenancy instances by default. You can only launch instances with a tenancy of dedicated or host into a dedicated tenancy VPC.

        Important: The host value cannot be used with this parameter. Use the default or dedicated values only.

        Default: default

        ", "DescribeReservedInstancesOfferingsRequest$InstanceTenancy": "

        The tenancy of the instances covered by the reservation. A Reserved Instance with a tenancy of dedicated is applied to instances that run in a VPC on single-tenant hardware (i.e., Dedicated Instances).

        Default: default

        ", "Placement$Tenancy": "

        The tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for the ImportInstance command.

        ", "ReservedInstances$InstanceTenancy": "

        The tenancy of the instance.

        ", "ReservedInstancesOffering$InstanceTenancy": "

        The tenancy of the instance.

        ", "Vpc$InstanceTenancy": "

        The allowed tenancy of instances launched into the VPC.

        " } }, "TerminateInstancesRequest": { "base": "

        Contains the parameters for TerminateInstances.

        ", "refs": { } }, "TerminateInstancesResult": { "base": "

        Contains the output of TerminateInstances.

        ", "refs": { } }, "TrafficType": { "base": null, "refs": { "CreateFlowLogsRequest$TrafficType": "

        The type of traffic to log.

        ", "FlowLog$TrafficType": "

        The type of traffic captured for the flow log.

        " } }, "UnassignPrivateIpAddressesRequest": { "base": "

        Contains the parameters for UnassignPrivateIpAddresses.

        ", "refs": { } }, "UnmonitorInstancesRequest": { "base": "

        Contains the parameters for UnmonitorInstances.

        ", "refs": { } }, "UnmonitorInstancesResult": { "base": "

        Contains the output of UnmonitorInstances.

        ", "refs": { } }, "UnsuccessfulItem": { "base": "

        Information about items that were not successfully processed in a batch call.

        ", "refs": { "UnsuccessfulItemList$member": null, "UnsuccessfulItemSet$member": null } }, "UnsuccessfulItemError": { "base": "

        Information about the error that occurred. For more information about errors, see Error Codes.

        ", "refs": { "UnsuccessfulItem$Error": "

        Information about the error.

        " } }, "UnsuccessfulItemList": { "base": null, "refs": { "ModifyHostsResult$Unsuccessful": "

        The IDs of the Dedicated Hosts that could not be modified. Check whether the setting you requested can be used.

        ", "ReleaseHostsResult$Unsuccessful": "

        The IDs of the Dedicated Hosts that could not be released, including an error message.

        " } }, "UnsuccessfulItemSet": { "base": null, "refs": { "CreateFlowLogsResult$Unsuccessful": "

        Information about the flow logs that could not be created successfully.

        ", "DeleteFlowLogsResult$Unsuccessful": "

        Information about the flow logs that could not be deleted successfully.

        ", "DeleteVpcEndpointsResult$Unsuccessful": "

        Information about the endpoints that were not successfully deleted.

        " } }, "UserBucket": { "base": "

        Describes the S3 bucket for the disk image.

        ", "refs": { "ImageDiskContainer$UserBucket": "

        The S3 bucket for the disk image.

        ", "SnapshotDiskContainer$UserBucket": "

        The S3 bucket for the disk image.

        " } }, "UserBucketDetails": { "base": "

        Describes the S3 bucket for the disk image.

        ", "refs": { "SnapshotDetail$UserBucket": "

        The S3 bucket for the disk image.

        ", "SnapshotTaskDetail$UserBucket": "

        The S3 bucket for the disk image.

        " } }, "UserData": { "base": "

        Describes the user data for an instance.

        ", "refs": { "ImportInstanceLaunchSpecification$UserData": "

        The user data to make available to the instance. If you are using an AWS SDK or command line tool, Base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide Base64-encoded text.

        " } }, "UserGroupStringList": { "base": null, "refs": { "ModifyImageAttributeRequest$UserGroups": "

        One or more user groups. This is only valid when modifying the launchPermission attribute.

        " } }, "UserIdGroupPair": { "base": "

        Describes a security group and AWS account ID pair.

        ", "refs": { "UserIdGroupPairList$member": null, "UserIdGroupPairSet$member": null } }, "UserIdGroupPairList": { "base": null, "refs": { "IpPermission$UserIdGroupPairs": "

        One or more security group and AWS account ID pairs.

        " } }, "UserIdGroupPairSet": { "base": null, "refs": { "StaleIpPermission$UserIdGroupPairs": "

        One or more security group pairs. Returns the ID of the referenced security group and VPC, and the ID and status of the VPC peering connection.

        " } }, "UserIdStringList": { "base": null, "refs": { "ModifyImageAttributeRequest$UserIds": "

        One or more AWS account IDs. This is only valid when modifying the launchPermission attribute.

        ", "ModifySnapshotAttributeRequest$UserIds": "

        The account ID to modify for the snapshot.

        " } }, "ValueStringList": { "base": null, "refs": { "CancelSpotFleetRequestsRequest$SpotFleetRequestIds": "

        The IDs of the Spot fleet requests.

        ", "CreateFlowLogsRequest$ResourceIds": "

        One or more subnet, network interface, or VPC IDs.

        Constraints: Maximum of 1000 resources

        ", "CreateFlowLogsResult$FlowLogIds": "

        The IDs of the flow logs.

        ", "CreateVpcEndpointRequest$RouteTableIds": "

        One or more route table IDs.

        ", "DeleteFlowLogsRequest$FlowLogIds": "

        One or more flow log IDs.

        ", "DeleteVpcEndpointsRequest$VpcEndpointIds": "

        One or more endpoint IDs.

        ", "DescribeFlowLogsRequest$FlowLogIds": "

        One or more flow log IDs.

        ", "DescribeInternetGatewaysRequest$InternetGatewayIds": "

        One or more Internet gateway IDs.

        Default: Describes all your Internet gateways.

        ", "DescribeMovingAddressesRequest$PublicIps": "

        One or more Elastic IP addresses.

        ", "DescribeNatGatewaysRequest$NatGatewayIds": "

        One or more NAT gateway IDs.

        ", "DescribeNetworkAclsRequest$NetworkAclIds": "

        One or more network ACL IDs.

        Default: Describes all your network ACLs.

        ", "DescribePrefixListsRequest$PrefixListIds": "

        One or more prefix list IDs.

        ", "DescribeRouteTablesRequest$RouteTableIds": "

        One or more route table IDs.

        Default: Describes all your route tables.

        ", "DescribeSpotFleetRequestsRequest$SpotFleetRequestIds": "

        The IDs of the Spot fleet requests.

        ", "DescribeVpcEndpointServicesResult$ServiceNames": "

        A list of supported AWS services.

        ", "DescribeVpcEndpointsRequest$VpcEndpointIds": "

        One or more endpoint IDs.

        ", "DescribeVpcPeeringConnectionsRequest$VpcPeeringConnectionIds": "

        One or more VPC peering connection IDs.

        Default: Describes all your VPC peering connections.

        ", "Filter$Values": "

        One or more filter values. Filter values are case-sensitive.

        ", "ModifyVpcEndpointRequest$AddRouteTableIds": "

        One or more route tables IDs to associate with the endpoint.

        ", "ModifyVpcEndpointRequest$RemoveRouteTableIds": "

        One or more route table IDs to disassociate from the endpoint.

        ", "NewDhcpConfiguration$Values": null, "PrefixList$Cidrs": "

        The IP address range of the AWS service.

        ", "RequestSpotLaunchSpecification$SecurityGroups": null, "RequestSpotLaunchSpecification$SecurityGroupIds": null, "VpcEndpoint$RouteTableIds": "

        One or more route tables associated with the endpoint.

        " } }, "VgwTelemetry": { "base": "

        Describes telemetry for a VPN tunnel.

        ", "refs": { "VgwTelemetryList$member": null } }, "VgwTelemetryList": { "base": null, "refs": { "VpnConnection$VgwTelemetry": "

        Information about the VPN tunnel.

        " } }, "VirtualizationType": { "base": null, "refs": { "Image$VirtualizationType": "

        The type of virtualization of the AMI.

        ", "Instance$VirtualizationType": "

        The virtualization type of the instance.

        " } }, "Volume": { "base": "

        Describes a volume.

        ", "refs": { "VolumeList$member": null } }, "VolumeAttachment": { "base": "

        Describes volume attachment details.

        ", "refs": { "VolumeAttachmentList$member": null } }, "VolumeAttachmentList": { "base": null, "refs": { "Volume$Attachments": "

        Information about the volume attachments.

        " } }, "VolumeAttachmentState": { "base": null, "refs": { "VolumeAttachment$State": "

        The attachment state of the volume.

        " } }, "VolumeAttributeName": { "base": null, "refs": { "DescribeVolumeAttributeRequest$Attribute": "

        The instance attribute.

        " } }, "VolumeDetail": { "base": "

        Describes an EBS volume.

        ", "refs": { "DiskImage$Volume": "

        Information about the volume.

        ", "ImportVolumeRequest$Volume": "

        The volume size.

        " } }, "VolumeIdStringList": { "base": null, "refs": { "DescribeVolumeStatusRequest$VolumeIds": "

        One or more volume IDs.

        Default: Describes all your volumes.

        ", "DescribeVolumesRequest$VolumeIds": "

        One or more volume IDs.

        " } }, "VolumeList": { "base": null, "refs": { "DescribeVolumesResult$Volumes": "

        Information about the volumes.

        " } }, "VolumeState": { "base": null, "refs": { "Volume$State": "

        The volume state.

        " } }, "VolumeStatusAction": { "base": "

        Describes a volume status operation code.

        ", "refs": { "VolumeStatusActionsList$member": null } }, "VolumeStatusActionsList": { "base": null, "refs": { "VolumeStatusItem$Actions": "

        The details of the operation.

        " } }, "VolumeStatusDetails": { "base": "

        Describes a volume status.

        ", "refs": { "VolumeStatusDetailsList$member": null } }, "VolumeStatusDetailsList": { "base": null, "refs": { "VolumeStatusInfo$Details": "

        The details of the volume status.

        " } }, "VolumeStatusEvent": { "base": "

        Describes a volume status event.

        ", "refs": { "VolumeStatusEventsList$member": null } }, "VolumeStatusEventsList": { "base": null, "refs": { "VolumeStatusItem$Events": "

        A list of events associated with the volume.

        " } }, "VolumeStatusInfo": { "base": "

        Describes the status of a volume.

        ", "refs": { "VolumeStatusItem$VolumeStatus": "

        The volume status.

        " } }, "VolumeStatusInfoStatus": { "base": null, "refs": { "VolumeStatusInfo$Status": "

        The status of the volume.

        " } }, "VolumeStatusItem": { "base": "

        Describes the volume status.

        ", "refs": { "VolumeStatusList$member": null } }, "VolumeStatusList": { "base": null, "refs": { "DescribeVolumeStatusResult$VolumeStatuses": "

        A list of volumes.

        " } }, "VolumeStatusName": { "base": null, "refs": { "VolumeStatusDetails$Name": "

        The name of the volume status.

        " } }, "VolumeType": { "base": null, "refs": { "CreateVolumeRequest$VolumeType": "

        The volume type. This can be gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, or standard for Magnetic volumes.

        Default: standard

        ", "EbsBlockDevice$VolumeType": "

        The volume type: gp2, io1, st1, sc1, or standard.

        Default: standard

        ", "Volume$VolumeType": "

        The volume type. This can be gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, or standard for Magnetic volumes.

        " } }, "Vpc": { "base": "

        Describes a VPC.

        ", "refs": { "CreateVpcResult$Vpc": "

        Information about the VPC.

        ", "VpcList$member": null } }, "VpcAttachment": { "base": "

        Describes an attachment between a virtual private gateway and a VPC.

        ", "refs": { "AttachVpnGatewayResult$VpcAttachment": "

        Information about the attachment.

        ", "VpcAttachmentList$member": null } }, "VpcAttachmentList": { "base": null, "refs": { "VpnGateway$VpcAttachments": "

        Any VPCs attached to the virtual private gateway.

        " } }, "VpcAttributeName": { "base": null, "refs": { "DescribeVpcAttributeRequest$Attribute": "

        The VPC attribute.

        " } }, "VpcClassicLink": { "base": "

        Describes whether a VPC is enabled for ClassicLink.

        ", "refs": { "VpcClassicLinkList$member": null } }, "VpcClassicLinkIdList": { "base": null, "refs": { "DescribeVpcClassicLinkDnsSupportRequest$VpcIds": "

        One or more VPC IDs.

        ", "DescribeVpcClassicLinkRequest$VpcIds": "

        One or more VPCs for which you want to describe the ClassicLink status.

        " } }, "VpcClassicLinkList": { "base": null, "refs": { "DescribeVpcClassicLinkResult$Vpcs": "

        The ClassicLink status of one or more VPCs.

        " } }, "VpcEndpoint": { "base": "

        Describes a VPC endpoint.

        ", "refs": { "CreateVpcEndpointResult$VpcEndpoint": "

        Information about the endpoint.

        ", "VpcEndpointSet$member": null } }, "VpcEndpointSet": { "base": null, "refs": { "DescribeVpcEndpointsResult$VpcEndpoints": "

        Information about the endpoints.

        " } }, "VpcIdStringList": { "base": null, "refs": { "DescribeVpcsRequest$VpcIds": "

        One or more VPC IDs.

        Default: Describes all your VPCs.

        " } }, "VpcList": { "base": null, "refs": { "DescribeVpcsResult$Vpcs": "

        Information about one or more VPCs.

        " } }, "VpcPeeringConnection": { "base": "

        Describes a VPC peering connection.

        ", "refs": { "AcceptVpcPeeringConnectionResult$VpcPeeringConnection": "

        Information about the VPC peering connection.

        ", "CreateVpcPeeringConnectionResult$VpcPeeringConnection": "

        Information about the VPC peering connection.

        ", "VpcPeeringConnectionList$member": null } }, "VpcPeeringConnectionList": { "base": null, "refs": { "DescribeVpcPeeringConnectionsResult$VpcPeeringConnections": "

        Information about the VPC peering connections.

        " } }, "VpcPeeringConnectionOptionsDescription": { "base": "

        Describes the VPC peering connection options.

        ", "refs": { "VpcPeeringConnectionVpcInfo$PeeringOptions": "

        Information about the VPC peering connection options for the accepter or requester VPC.

        " } }, "VpcPeeringConnectionStateReason": { "base": "

        Describes the status of a VPC peering connection.

        ", "refs": { "VpcPeeringConnection$Status": "

        The status of the VPC peering connection.

        " } }, "VpcPeeringConnectionStateReasonCode": { "base": null, "refs": { "VpcPeeringConnectionStateReason$Code": "

        The status of the VPC peering connection.

        " } }, "VpcPeeringConnectionVpcInfo": { "base": "

        Describes a VPC in a VPC peering connection.

        ", "refs": { "VpcPeeringConnection$AccepterVpcInfo": "

        Information about the accepter VPC. CIDR block information is not returned when creating a VPC peering connection, or when describing a VPC peering connection that's in the initiating-request or pending-acceptance state.

        ", "VpcPeeringConnection$RequesterVpcInfo": "

        Information about the requester VPC.

        " } }, "VpcState": { "base": null, "refs": { "Vpc$State": "

        The current state of the VPC.

        " } }, "VpnConnection": { "base": "

        Describes a VPN connection.

        ", "refs": { "CreateVpnConnectionResult$VpnConnection": "

        Information about the VPN connection.

        ", "VpnConnectionList$member": null } }, "VpnConnectionIdStringList": { "base": null, "refs": { "DescribeVpnConnectionsRequest$VpnConnectionIds": "

        One or more VPN connection IDs.

        Default: Describes your VPN connections.

        " } }, "VpnConnectionList": { "base": null, "refs": { "DescribeVpnConnectionsResult$VpnConnections": "

        Information about one or more VPN connections.

        " } }, "VpnConnectionOptions": { "base": "

        Describes VPN connection options.

        ", "refs": { "VpnConnection$Options": "

        The VPN connection options.

        " } }, "VpnConnectionOptionsSpecification": { "base": "

        Describes VPN connection options.

        ", "refs": { "CreateVpnConnectionRequest$Options": "

        Indicates whether the VPN connection requires static routes. If you are creating a VPN connection for a device that does not support BGP, you must specify true.

        Default: false

        " } }, "VpnGateway": { "base": "

        Describes a virtual private gateway.

        ", "refs": { "CreateVpnGatewayResult$VpnGateway": "

        Information about the virtual private gateway.

        ", "VpnGatewayList$member": null } }, "VpnGatewayIdStringList": { "base": null, "refs": { "DescribeVpnGatewaysRequest$VpnGatewayIds": "

        One or more virtual private gateway IDs.

        Default: Describes all your virtual private gateways.

        " } }, "VpnGatewayList": { "base": null, "refs": { "DescribeVpnGatewaysResult$VpnGateways": "

        Information about one or more virtual private gateways.

        " } }, "VpnState": { "base": null, "refs": { "VpnConnection$State": "

        The current state of the VPN connection.

        ", "VpnGateway$State": "

        The current state of the virtual private gateway.

        ", "VpnStaticRoute$State": "

        The current state of the static route.

        " } }, "VpnStaticRoute": { "base": "

        Describes a static route for a VPN connection.

        ", "refs": { "VpnStaticRouteList$member": null } }, "VpnStaticRouteList": { "base": null, "refs": { "VpnConnection$Routes": "

        The static routes associated with the VPN connection.

        " } }, "VpnStaticRouteSource": { "base": null, "refs": { "VpnStaticRoute$Source": "

        Indicates how the routes were provided.

        " } }, "ZoneNameStringList": { "base": null, "refs": { "DescribeAvailabilityZonesRequest$ZoneNames": "

        The names of one or more Availability Zones.

        " } } } } aws-sdk-go-1.4.22/models/apis/ec2/2016-04-01/examples-1.json000066400000000000000000003265321300374646400223640ustar00rootroot00000000000000{ "version": "1.0", "examples": { "AllocateAddress": [ { "input": { "Domain": "vpc" }, "output": { "AllocationId": "eipalloc-64d5890a", "Domain": "vpc", "PublicIp": "203.0.113.0" }, "comments": { "input": { }, "output": { } }, "description": "This example allocates an Elastic IP address to use with an instance in a VPC.", "id": "ec2-allocate-address-1", "title": "To allocate an Elastic IP address for EC2-VPC" }, { "output": { "Domain": "standard", "PublicIp": "198.51.100.0" }, "comments": { "input": { }, "output": { } }, "description": "This example allocates an Elastic IP address to use with an instance in EC2-Classic.", "id": "ec2-allocate-address-2", "title": "To allocate an Elastic IP address for EC2-Classic" } ], "AssignPrivateIpAddresses": [ { "input": { "NetworkInterfaceId": "eni-e5aa89a3", "PrivateIpAddresses": [ "10.0.0.82" ] }, "comments": { "input": { }, "output": { } }, "description": "This example assigns the specified secondary private IP address to the specified network interface.", "id": "ec2-assign-private-ip-addresses-1", "title": "To assign a specific secondary private IP address to an interface" }, { "input": { "NetworkInterfaceId": "eni-e5aa89a3", "SecondaryPrivateIpAddressCount": 2 }, "comments": { "input": { }, "output": { } }, "description": "This example assigns two secondary private IP addresses to the specified network interface. Amazon EC2 automatically assigns these IP addresses from the available IP addresses in the CIDR block range of the subnet the network interface is associated with.", "id": "ec2-assign-private-ip-addresses-2", "title": "To assign secondary private IP addresses that Amazon EC2 selects to an interface" } ], "AssociateAddress": [ { "input": { "AllocationId": "eipalloc-64d5890a", "InstanceId": "i-0b263919b6498b123" }, "output": { "AssociationId": "eipassoc-2bebb745" }, "comments": { "input": { }, "output": { } }, "description": "This example associates the specified Elastic IP address with the specified instance in a VPC.", "id": "ec2-associate-address-1", "title": "To associate an Elastic IP address in EC2-VPC" }, { "input": { "AllocationId": "eipalloc-64d5890a", "NetworkInterfaceId": "eni-1a2b3c4d" }, "output": { "AssociationId": "eipassoc-2bebb745" }, "comments": { "input": { }, "output": { } }, "description": "This example associates the specified Elastic IP address with the specified network interface.", "id": "ec2-associate-address-2", "title": "To associate an Elastic IP address with a network interface" }, { "input": { "InstanceId": "i-07ffe74c7330ebf53", "PublicIp": "198.51.100.0" }, "comments": { "input": { }, "output": { } }, "description": "This example associates an Elastic IP address with an instance in EC2-Classic.", "id": "ec2-associate-address-3", "title": "To associate an Elastic IP address in EC2-Classic" } ], "AssociateDhcpOptions": [ { "input": { "DhcpOptionsId": "dopt-d9070ebb", "VpcId": "vpc-a01106c2" }, "comments": { "input": { }, "output": { } }, "description": "This example associates the specified DHCP options set with the specified VPC.", "id": "ec2-associate-dhcp-options-1", "title": "To associate a DHCP options set with a VPC" }, { "input": { "DhcpOptionsId": "default", "VpcId": "vpc-a01106c2" }, "comments": { "input": { }, "output": { } }, "description": "This example associates the default DHCP options set with the specified VPC.", "id": "ec2-associate-dhcp-options-2", "title": "To associate the default DHCP options set with a VPC" } ], "AssociateRouteTable": [ { "input": { "RouteTableId": "rtb-22574640", "SubnetId": "subnet-9d4a7b6" }, "output": { "AssociationId": "rtbassoc-781d0d1a" }, "comments": { "input": { }, "output": { } }, "description": "This example associates the specified route table with the specified subnet.", "id": "ec2-associate-route-table-1", "title": "To associate a route table with a subnet" } ], "AttachInternetGateway": [ { "input": { "InternetGatewayId": "igw-c0a643a9", "VpcId": "vpc-a01106c2" }, "comments": { "input": { }, "output": { } }, "description": "This example attaches the specified Internet gateway to the specified VPC.", "id": "ec2-attach-internet-gateway-1", "title": "To attach an Internet gateway to a VPC" } ], "AttachNetworkInterface": [ { "input": { "DeviceIndex": 1, "InstanceId": "i-1234567890abcdef0", "NetworkInterfaceId": "eni-e5aa89a3" }, "output": { "AttachmentId": "eni-attach-66c4350a" }, "comments": { "input": { }, "output": { } }, "description": "This example attaches the specified network interface to the specified instance.", "id": "ec2-attach-network-interface-1", "title": "To attach a network interface to an instance" } ], "AttachVolume": [ { "input": { "Device": "/dev/sdf", "InstanceId": "i-01474ef662b89480", "VolumeId": "vol-1234567890abcdef0" }, "output": { "AttachTime": "2016-08-29T18:52:32.724Z", "Device": "/dev/sdf", "InstanceId": "i-01474ef662b89480", "State": "attaching", "VolumeId": "vol-1234567890abcdef0" }, "comments": { "input": { }, "output": { } }, "description": "This example attaches a volume (``vol-1234567890abcdef0``) to an instance (``i-01474ef662b89480``) as ``/dev/sdf``.", "id": "to-attach-a-volume-to-an-instance-1472499213109", "title": "To attach a volume to an instance" } ], "CancelSpotFleetRequests": [ { "input": { "SpotFleetRequestIds": [ "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" ], "TerminateInstances": true }, "output": { "SuccessfulFleetRequests": [ { "CurrentSpotFleetRequestState": "cancelled_running", "PreviousSpotFleetRequestState": "active", "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example cancels the specified Spot fleet request and terminates its associated Spot Instances.", "id": "ec2-cancel-spot-fleet-requests-1", "title": "To cancel a Spot fleet request" }, { "input": { "SpotFleetRequestIds": [ "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" ], "TerminateInstances": false }, "output": { "SuccessfulFleetRequests": [ { "CurrentSpotFleetRequestState": "cancelled_terminating", "PreviousSpotFleetRequestState": "active", "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example cancels the specified Spot fleet request without terminating its associated Spot Instances.", "id": "ec2-cancel-spot-fleet-requests-2", "title": "To cancel a Spot fleet request without terminating its Spot Instances" } ], "CancelSpotInstanceRequests": [ { "input": { "SpotInstanceRequestIds": [ "sir-08b93456" ] }, "output": { "CancelledSpotInstanceRequests": [ { "SpotInstanceRequestId": "sir-08b93456", "State": "cancelled" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example cancels a Spot Instance request.", "id": "ec2-cancel-spot-instance-requests-1", "title": "To cancel Spot Instance requests" } ], "ConfirmProductInstance": [ { "input": { "InstanceId": "i-1234567890abcdef0", "ProductCode": "774F4FF8" }, "output": { "OwnerId": "123456789012" }, "comments": { "input": { }, "output": { } }, "description": "This example determines whether the specified product code is associated with the specified instance.", "id": "to-confirm-the-product-instance-1472712108494", "title": "To confirm the product instance" } ], "CopySnapshot": [ { "input": { "Description": "This is my copied snapshot.", "DestinationRegion": "us-east-1", "SourceRegion": "us-west-2", "SourceSnapshotId": "snap-066877671789bd71b" }, "output": { "SnapshotId": "snap-066877671789bd71b" }, "comments": { "input": { }, "output": { } }, "description": "This example copies a snapshot with the snapshot ID of ``snap-066877671789bd71b`` from the ``us-west-2`` region to the ``us-east-1`` region and adds a short description to identify the snapshot.", "id": "to-copy-a-snapshot-1472502259774", "title": "To copy a snapshot" } ], "CreateCustomerGateway": [ { "input": { "BgpAsn": 65534, "PublicIp": "12.1.2.3", "Type": "ipsec.1" }, "output": { "CustomerGateway": { "BgpAsn": "65534", "CustomerGatewayId": "cgw-0e11f167", "IpAddress": "12.1.2.3", "State": "available", "Type": "ipsec.1" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a customer gateway with the specified IP address for its outside interface.", "id": "ec2-create-customer-gateway-1", "title": "To create a customer gateway" } ], "CreateDhcpOptions": [ { "input": { "DhcpConfigurations": [ { "Key": "domain-name-servers", "Values": [ "10.2.5.1", "10.2.5.2" ] } ] }, "output": { "DhcpOptions": { "DhcpConfigurations": [ { "Key": "domain-name-servers", "Values": [ "10.2.5.2", "10.2.5.1" ] } ], "DhcpOptionsId": "dopt-d9070ebb" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a DHCP options set.", "id": "ec2-create-dhcp-options-1", "title": "To create a DHCP options set" } ], "CreateInternetGateway": [ { "output": { "InternetGateway": { "Attachments": [ ], "InternetGatewayId": "igw-c0a643a9", "Tags": [ ] } }, "comments": { "input": { }, "output": { } }, "description": "This example creates an Internet gateway.", "id": "ec2-create-internet-gateway-1", "title": "To create an Internet gateway" } ], "CreateKeyPair": [ { "input": { "KeyName": "my-key-pair" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a key pair named my-key-pair.", "id": "ec2-create-key-pair-1", "title": "To create a key pair" } ], "CreateNatGateway": [ { "input": { "AllocationId": "eipalloc-37fc1a52", "SubnetId": "subnet-1a2b3c4d" }, "output": { "NatGateway": { "CreateTime": "2015-12-17T12:45:26.732Z", "NatGatewayAddresses": [ { "AllocationId": "eipalloc-37fc1a52" } ], "NatGatewayId": "nat-08d48af2a8e83edfd", "State": "pending", "SubnetId": "subnet-1a2b3c4d", "VpcId": "vpc-1122aabb" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a NAT gateway in subnet subnet-1a2b3c4d and associates an Elastic IP address with the allocation ID eipalloc-37fc1a52 with the NAT gateway.", "id": "ec2-create-nat-gateway-1", "title": "To create a NAT gateway" } ], "CreateNetworkAcl": [ { "input": { "VpcId": "vpc-a01106c2" }, "output": { "NetworkAcl": { "Associations": [ ], "Entries": [ { "CidrBlock": "0.0.0.0/0", "Egress": true, "Protocol": "-1", "RuleAction": "deny", "RuleNumber": 32767 }, { "CidrBlock": "0.0.0.0/0", "Egress": false, "Protocol": "-1", "RuleAction": "deny", "RuleNumber": 32767 } ], "IsDefault": false, "NetworkAclId": "acl-5fb85d36", "Tags": [ ], "VpcId": "vpc-a01106c2" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a network ACL for the specified VPC.", "id": "ec2-create-network-acl-1", "title": "To create a network ACL" } ], "CreateNetworkAclEntry": [ { "input": { "CidrBlock": "0.0.0.0/0", "Egress": false, "NetworkAclId": "acl-5fb85d36", "PortRange": { "From": 53, "To": 53 }, "Protocol": "udp", "RuleAction": "allow", "RuleNumber": 100 }, "comments": { "input": { }, "output": { } }, "description": "This example creates an entry for the specified network ACL. The rule allows ingress traffic from anywhere (0.0.0.0/0) on UDP port 53 (DNS) into any associated subnet.", "id": "ec2-create-network-acl-entry-1", "title": "To create a network ACL entry" } ], "CreateNetworkInterface": [ { "input": { "Description": "my network interface", "Groups": [ "sg-903004f8" ], "PrivateIpAddress": "10.0.2.17", "SubnetId": "subnet-9d4a7b6c" }, "output": { "NetworkInterface": { "AvailabilityZone": "us-east-1d", "Description": "my network interface", "Groups": [ { "GroupId": "sg-903004f8", "GroupName": "default" } ], "MacAddress": "02:1a:80:41:52:9c", "NetworkInterfaceId": "eni-e5aa89a3", "OwnerId": "123456789012", "PrivateIpAddress": "10.0.2.17", "PrivateIpAddresses": [ { "Primary": true, "PrivateIpAddress": "10.0.2.17" } ], "RequesterManaged": false, "SourceDestCheck": true, "Status": "pending", "SubnetId": "subnet-9d4a7b6c", "TagSet": [ ], "VpcId": "vpc-a01106c2" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a network interface for the specified subnet.", "id": "ec2-create-network-interface-1", "title": "To create a network interface" } ], "CreatePlacementGroup": [ { "input": { "GroupName": "my-cluster", "Strategy": "cluster" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example creates a placement group with the specified name.", "id": "to-create-a-placement-group-1472712245768", "title": "To create a placement group" } ], "CreateRoute": [ { "input": { "DestinationCidrBlock": "0.0.0.0/0", "GatewayId": "igw-c0a643a9", "RouteTableId": "rtb-22574640" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a route for the specified route table. The route matches all traffic (0.0.0.0/0) and routes it to the specified Internet gateway.", "id": "ec2-create-route-1", "title": "To create a route" } ], "CreateRouteTable": [ { "input": { "VpcId": "vpc-a01106c2" }, "output": { "RouteTable": { "Associations": [ ], "PropagatingVgws": [ ], "RouteTableId": "rtb-22574640", "Routes": [ { "DestinationCidrBlock": "10.0.0.0/16", "GatewayId": "local", "State": "active" } ], "Tags": [ ], "VpcId": "vpc-a01106c2" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a route table for the specified VPC.", "id": "ec2-create-route-table-1", "title": "To create a route table" } ], "CreateSnapshot": [ { "input": { "Description": "This is my root volume snapshot.", "VolumeId": "vol-1234567890abcdef0" }, "output": { "Description": "This is my root volume snapshot.", "OwnerId": "012345678910", "SnapshotId": "snap-066877671789bd71b", "StartTime": "2014-02-28T21:06:01.000Z", "State": "pending", "Tags": [ ], "VolumeId": "vol-1234567890abcdef0", "VolumeSize": 8 }, "comments": { "input": { }, "output": { } }, "description": "This example creates a snapshot of the volume with a volume ID of ``vol-1234567890abcdef0`` and a short description to identify the snapshot.", "id": "to-create-a-snapshot-1472502529790", "title": "To create a snapshot" } ], "CreateSpotDatafeedSubscription": [ { "input": { "Bucket": "my-s3-bucket", "Prefix": "spotdata" }, "output": { "SpotDatafeedSubscription": { "Bucket": "my-s3-bucket", "OwnerId": "123456789012", "Prefix": "spotdata", "State": "Active" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a Spot Instance data feed for your AWS account.", "id": "ec2-create-spot-datafeed-subscription-1", "title": "To create a Spot Instance datafeed" } ], "CreateSubnet": [ { "input": { "CidrBlock": "10.0.1.0/24", "VpcId": "vpc-a01106c2" }, "output": { "Subnet": { "AvailabilityZone": "us-west-2c", "AvailableIpAddressCount": 251, "CidrBlock": "10.0.1.0/24", "State": "pending", "SubnetId": "subnet-9d4a7b6c", "VpcId": "vpc-a01106c2" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a subnet in the specified VPC with the specified CIDR block. We recommend that you let us select an Availability Zone for you.", "id": "ec2-create-subnet-1", "title": "To create a subnet" } ], "CreateTags": [ { "input": { "Resources": [ "ami-78a54011" ], "Tags": [ { "Key": "Stack", "Value": "production" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example adds the tag Stack=production to the specified image, or overwrites an existing tag for the AMI where the tag key is Stack.", "id": "ec2-create-tags-1", "title": "To add a tag to a resource" } ], "CreateVolume": [ { "input": { "AvailabilityZone": "us-east-1a", "Size": 80, "VolumeType": "gp2" }, "output": { "AvailabilityZone": "us-east-1a", "CreateTime": "2016-08-29T18:52:32.724Z", "Encrypted": false, "Iops": 240, "Size": 80, "SnapshotId": "", "State": "creating", "VolumeId": "vol-6b60b7c7", "VolumeType": "gp2" }, "comments": { "input": { }, "output": { } }, "description": "This example creates an 80 GiB General Purpose (SSD) volume in the Availability Zone ``us-east-1a``.", "id": "to-create-a-new-volume-1472496724296", "title": "To create a new volume" }, { "input": { "AvailabilityZone": "us-east-1a", "Iops": 1000, "SnapshotId": "snap-066877671789bd71b", "VolumeType": "io1" }, "output": { "Attachments": [ ], "AvailabilityZone": "us-east-1a", "CreateTime": "2016-08-29T18:52:32.724Z", "Iops": 1000, "Size": 500, "SnapshotId": "snap-066877671789bd71b", "State": "creating", "Tags": [ ], "VolumeId": "vol-1234567890abcdef0", "VolumeType": "io1" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a new Provisioned IOPS (SSD) volume with 1000 provisioned IOPS from a snapshot in the Availability Zone ``us-east-1a``.", "id": "to-create-a-new-provisioned-iops-ssd-volume-from-a-snapshot-1472498975176", "title": "To create a new Provisioned IOPS (SSD) volume from a snapshot" } ], "CreateVpc": [ { "input": { "CidrBlock": "10.0.0.0/16" }, "output": { "Vpc": { "CidrBlock": "10.0.0.0/16", "DhcpOptionsId": "dopt-7a8b9c2d", "InstanceTenancy": "default", "State": "pending", "VpcId": "vpc-a01106c2" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a VPC with the specified CIDR block.", "id": "ec2-create-vpc-1", "title": "To create a VPC" } ], "DeleteCustomerGateway": [ { "input": { "CustomerGatewayId": "cgw-0e11f167" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified customer gateway.", "id": "ec2-delete-customer-gateway-1", "title": "To delete a customer gateway" } ], "DeleteDhcpOptions": [ { "input": { "DhcpOptionsId": "dopt-d9070ebb" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified DHCP options set.", "id": "ec2-delete-dhcp-options-1", "title": "To delete a DHCP options set" } ], "DeleteInternetGateway": [ { "input": { "InternetGatewayId": "igw-c0a643a9" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified Internet gateway.", "id": "ec2-delete-internet-gateway-1", "title": "To delete an Internet gateway" } ], "DeleteKeyPair": [ { "input": { "KeyName": "my-key-pair" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified key pair.", "id": "ec2-delete-key-pair-1", "title": "To delete a key pair" } ], "DeleteNatGateway": [ { "input": { "NatGatewayId": "nat-04ae55e711cec5680" }, "output": { "NatGatewayId": "nat-04ae55e711cec5680" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified NAT gateway.", "id": "ec2-delete-nat-gateway-1", "title": "To delete a NAT gateway" } ], "DeleteNetworkAcl": [ { "input": { "NetworkAclId": "acl-5fb85d36" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified network ACL.", "id": "ec2-delete-network-acl-1", "title": "To delete a network ACL" } ], "DeleteNetworkAclEntry": [ { "input": { "Egress": true, "NetworkAclId": "acl-5fb85d36", "RuleNumber": 100 }, "comments": { "input": { }, "output": { } }, "description": "This example deletes ingress rule number 100 from the specified network ACL.", "id": "ec2-delete-network-acl-entry-1", "title": "To delete a network ACL entry" } ], "DeleteNetworkInterface": [ { "input": { "NetworkInterfaceId": "eni-e5aa89a3" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified network interface.", "id": "ec2-delete-network-interface-1", "title": "To delete a network interface" } ], "DeletePlacementGroup": [ { "input": { "GroupName": "my-cluster" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified placement group.\n", "id": "to-delete-a-placement-group-1472712349959", "title": "To delete a placement group" } ], "DeleteRoute": [ { "input": { "DestinationCidrBlock": "0.0.0.0/0", "RouteTableId": "rtb-22574640" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified route from the specified route table.", "id": "ec2-delete-route-1", "title": "To delete a route" } ], "DeleteRouteTable": [ { "input": { "RouteTableId": "rtb-22574640" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified route table.", "id": "ec2-delete-route-table-1", "title": "To delete a route table" } ], "DeleteSnapshot": [ { "input": { "SnapshotId": "snap-1234567890abcdef0" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example deletes a snapshot with the snapshot ID of ``snap-1234567890abcdef0``. If the command succeeds, no output is returned.", "id": "to-delete-a-snapshot-1472503042567", "title": "To delete a snapshot" } ], "DeleteSpotDatafeedSubscription": [ { "comments": { "input": { }, "output": { } }, "description": "This example deletes a Spot data feed subscription for the account.", "id": "ec2-delete-spot-datafeed-subscription-1", "title": "To cancel a Spot Instance data feed subscription" } ], "DeleteSubnet": [ { "input": { "SubnetId": "subnet-9d4a7b6c" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified subnet.", "id": "ec2-delete-subnet-1", "title": "To delete a subnet" } ], "DeleteTags": [ { "input": { "Resources": [ "ami-78a54011" ], "Tags": [ { "Key": "Stack", "Value": "test" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the tag Stack=test from the specified image.", "id": "ec2-delete-tags-1", "title": "To delete a tag from a resource" } ], "DeleteVolume": [ { "input": { "VolumeId": "vol-049df61146c4d7901" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example deletes an available volume with the volume ID of ``vol-049df61146c4d7901``. If the command succeeds, no output is returned.", "id": "to-delete-a-volume-1472503111160", "title": "To delete a volume" } ], "DeleteVpc": [ { "input": { "VpcId": "vpc-a01106c2" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified VPC.", "id": "ec2-delete-vpc-1", "title": "To delete a VPC" } ], "DescribeAccountAttributes": [ { "input": { "AttributeNames": [ "supported-platforms" ] }, "output": { "AccountAttributes": [ { "AttributeName": "supported-platforms", "AttributeValues": [ { "AttributeValue": "EC2" }, { "AttributeValue": "VPC" } ] } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the supported-platforms attribute for your AWS account.", "id": "ec2-describe-account-attributes-1", "title": "To describe a single attribute for your AWS account" }, { "output": { "AccountAttributes": [ { "AttributeName": "supported-platforms", "AttributeValues": [ { "AttributeValue": "EC2" }, { "AttributeValue": "VPC" } ] }, { "AttributeName": "vpc-max-security-groups-per-interface", "AttributeValues": [ { "AttributeValue": "5" } ] }, { "AttributeName": "max-elastic-ips", "AttributeValues": [ { "AttributeValue": "5" } ] }, { "AttributeName": "max-instances", "AttributeValues": [ { "AttributeValue": "20" } ] }, { "AttributeName": "vpc-max-elastic-ips", "AttributeValues": [ { "AttributeValue": "5" } ] }, { "AttributeName": "default-vpc", "AttributeValues": [ { "AttributeValue": "none" } ] } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the attributes for your AWS account.", "id": "ec2-describe-account-attributes-2", "title": "To describe all attributes for your AWS account" } ], "DescribeAddresses": [ { "output": { "Addresses": [ { "Domain": "standard", "InstanceId": "i-1234567890abcdef0", "PublicIp": "198.51.100.0" }, { "AllocationId": "eipalloc-12345678", "AssociationId": "eipassoc-12345678", "Domain": "vpc", "InstanceId": "i-1234567890abcdef0", "NetworkInterfaceId": "eni-12345678", "NetworkInterfaceOwnerId": "123456789012", "PrivateIpAddress": "10.0.1.241", "PublicIp": "203.0.113.0" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes your Elastic IP addresses.", "id": "ec2-describe-addresses-1", "title": "To describe your Elastic IP addresses" }, { "input": { "Filters": [ { "Name": "domain", "Values": [ "vpc" ] } ] }, "output": { "Addresses": [ { "AllocationId": "eipalloc-12345678", "AssociationId": "eipassoc-12345678", "Domain": "vpc", "InstanceId": "i-1234567890abcdef0", "NetworkInterfaceId": "eni-12345678", "NetworkInterfaceOwnerId": "123456789012", "PrivateIpAddress": "10.0.1.241", "PublicIp": "203.0.113.0" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes your Elastic IP addresses for use with instances in a VPC.", "id": "ec2-describe-addresses-2", "title": "To describe your Elastic IP addresses for EC2-VPC" }, { "input": { "Filters": [ { "Name": "domain", "Values": [ "standard" ] } ] }, "output": { "Addresses": [ { "Domain": "standard", "InstanceId": "i-1234567890abcdef0", "PublicIp": "198.51.100.0" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes your Elastic IP addresses for use with instances in EC2-Classic.", "id": "ec2-describe-addresses-3", "title": "To describe your Elastic IP addresses for EC2-Classic" } ], "DescribeAvailabilityZones": [ { "output": { "AvailabilityZones": [ { "Messages": [ ], "RegionName": "us-east-1", "State": "available", "ZoneName": "us-east-1b" }, { "Messages": [ ], "RegionName": "us-east-1", "State": "available", "ZoneName": "us-east-1c" }, { "Messages": [ ], "RegionName": "us-east-1", "State": "available", "ZoneName": "us-east-1d" }, { "Messages": [ ], "RegionName": "us-east-1", "State": "available", "ZoneName": "us-east-1e" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the Availability Zones that are available to you. The response includes Availability Zones only for the current region.", "id": "ec2-describe-availability-zones-1", "title": "To describe your Availability Zones" } ], "DescribeCustomerGateways": [ { "input": { "CustomerGatewayIds": [ "cgw-0e11f167" ] }, "output": { "CustomerGateways": [ { "BgpAsn": "65534", "CustomerGatewayId": "cgw-0e11f167", "IpAddress": "12.1.2.3", "State": "available", "Type": "ipsec.1" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified customer gateway.", "id": "ec2-describe-customer-gateways-1", "title": "To describe a customer gateway" } ], "DescribeDhcpOptions": [ { "input": { "DhcpOptionsIds": [ "dopt-d9070ebb" ] }, "output": { "DhcpOptions": [ { "DhcpConfigurations": [ { "Key": "domain-name-servers", "Values": [ "10.2.5.2", "10.2.5.1" ] } ], "DhcpOptionsId": "dopt-d9070ebb" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified DHCP options set.", "id": "ec2-describe-dhcp-options-1", "title": "To describe a DHCP options set" } ], "DescribeInstanceAttribute": [ { "input": { "Attribute": "instanceType", "InstanceId": "i-1234567890abcdef0" }, "output": { "InstanceId": "i-1234567890abcdef0", "InstanceType": { "Value": "t1.micro" } }, "comments": { "input": { }, "output": { } }, "description": "This example describes the instance type of the specified instance.\n", "id": "to-describe-the-instance-type-1472712432132", "title": "To describe the instance type" }, { "input": { "Attribute": "disableApiTermination", "InstanceId": "i-1234567890abcdef0" }, "output": { "DisableApiTermination": { "Value": "false" }, "InstanceId": "i-1234567890abcdef0" }, "comments": { "input": { }, "output": { } }, "description": "This example describes the ``disableApiTermination`` attribute of the specified instance.\n", "id": "to-describe-the-disableapitermination-attribute-1472712533466", "title": "To describe the disableApiTermination attribute" }, { "input": { "Attribute": "blockDeviceMapping", "InstanceId": "i-1234567890abcdef0" }, "output": { "BlockDeviceMappings": [ { "DeviceName": "/dev/sda1", "Ebs": { "AttachTime": "2013-05-17T22:42:34.000Z", "DeleteOnTermination": true, "Status": "attached", "VolumeId": "vol-049df61146c4d7901" } }, { "DeviceName": "/dev/sdf", "Ebs": { "AttachTime": "2013-09-10T23:07:00.000Z", "DeleteOnTermination": false, "Status": "attached", "VolumeId": "vol-049df61146c4d7901" } } ], "InstanceId": "i-1234567890abcdef0" }, "comments": { "input": { }, "output": { } }, "description": "This example describes the ``blockDeviceMapping`` attribute of the specified instance.\n", "id": "to-describe-the-block-device-mapping-for-an-instance-1472712645423", "title": "To describe the block device mapping for an instance" } ], "DescribeInternetGateways": [ { "input": { "Filters": [ { "Name": "attachment.vpc-id", "Values": [ "vpc-a01106c2" ] } ] }, "output": { "InternetGateways": [ { "Attachments": [ { "State": "available", "VpcId": "vpc-a01106c2" } ], "InternetGatewayId": "igw-c0a643a9", "Tags": [ ] } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the Internet gateway for the specified VPC.", "id": "ec2-describe-internet-gateways-1", "title": "To describe the Internet gateway for a VPC" } ], "DescribeKeyPairs": [ { "input": { "KeyNames": [ "my-key-pair" ] }, "output": { "KeyPairs": [ { "KeyFingerprint": "1f:51:ae:28:bf:89:e9:d8:1f:25:5d:37:2d:7d:b8:ca:9f:f5:f1:6f", "KeyName": "my-key-pair" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example displays the fingerprint for the specified key.", "id": "ec2-describe-key-pairs-1", "title": "To display a key pair" } ], "DescribeMovingAddresses": [ { "output": { "MovingAddressStatuses": [ { "MoveStatus": "MovingToVpc", "PublicIp": "198.51.100.0" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes all of your moving Elastic IP addresses.", "id": "ec2-describe-moving-addresses-1", "title": "To describe your moving addresses" } ], "DescribeNatGateways": [ { "input": { "Filters": [ { "Name": "vpc-id", "Values": [ "vpc-1a2b3c4d" ] } ] }, "output": { "NatGateways": [ { "CreateTime": "2015-12-01T12:26:55.983Z", "NatGatewayAddresses": [ { "AllocationId": "eipalloc-89c620ec", "NetworkInterfaceId": "eni-9dec76cd", "PrivateIp": "10.0.0.149", "PublicIp": "198.11.222.333" } ], "NatGatewayId": "nat-05dba92075d71c408", "State": "available", "SubnetId": "subnet-847e4dc2", "VpcId": "vpc-1a2b3c4d" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the NAT gateway for the specified VPC.", "id": "ec2-describe-nat-gateways-1", "title": "To describe a NAT gateway" } ], "DescribeNetworkAcls": [ { "input": { "NetworkAclIds": [ "acl-5fb85d36" ] }, "output": { "NetworkAcls": [ { "Associations": [ { "NetworkAclAssociationId": "aclassoc-66ea5f0b", "NetworkAclId": "acl-9aeb5ef7", "SubnetId": "subnet-65ea5f08" } ], "Entries": [ { "CidrBlock": "0.0.0.0/0", "Egress": true, "Protocol": "-1", "RuleAction": "deny", "RuleNumber": 32767 }, { "CidrBlock": "0.0.0.0/0", "Egress": false, "Protocol": "-1", "RuleAction": "deny", "RuleNumber": 32767 } ], "IsDefault": false, "NetworkAclId": "acl-5fb85d36", "Tags": [ ], "VpcId": "vpc-a01106c2" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified network ACL.", "id": "ec2-", "title": "To describe a network ACL" } ], "DescribeNetworkInterfaceAttribute": [ { "input": { "Attribute": "attachment", "NetworkInterfaceId": "eni-686ea200" }, "output": { "Attachment": { "AttachTime": "2015-05-21T20:02:20.000Z", "AttachmentId": "eni-attach-43348162", "DeleteOnTermination": true, "DeviceIndex": 0, "InstanceId": "i-1234567890abcdef0", "InstanceOwnerId": "123456789012", "Status": "attached" }, "NetworkInterfaceId": "eni-686ea200" }, "comments": { "input": { }, "output": { } }, "description": "This example describes the attachment attribute of the specified network interface.", "id": "ec2-describe-network-interface-attribute-1", "title": "To describe the attachment attribute of a network interface" }, { "input": { "Attribute": "description", "NetworkInterfaceId": "eni-686ea200" }, "output": { "Description": { "Value": "My description" }, "NetworkInterfaceId": "eni-686ea200" }, "comments": { "input": { }, "output": { } }, "description": "This example describes the description attribute of the specified network interface.", "id": "ec2-describe-network-interface-attribute-2", "title": "To describe the description attribute of a network interface" }, { "input": { "Attribute": "groupSet", "NetworkInterfaceId": "eni-686ea200" }, "output": { "Groups": [ { "GroupId": "sg-903004f8", "GroupName": "my-security-group" } ], "NetworkInterfaceId": "eni-686ea200" }, "comments": { "input": { }, "output": { } }, "description": "This example describes the groupSet attribute of the specified network interface.", "id": "ec2-describe-network-interface-attribute-3", "title": "To describe the groupSet attribute of a network interface" }, { "input": { "Attribute": "sourceDestCheck", "NetworkInterfaceId": "eni-686ea200" }, "output": { "NetworkInterfaceId": "eni-686ea200", "SourceDestCheck": { "Value": true } }, "comments": { "input": { }, "output": { } }, "description": "This example describes the sourceDestCheck attribute of the specified network interface.", "id": "ec2-describe-network-interface-attribute-4", "title": "To describe the sourceDestCheck attribute of a network interface" } ], "DescribeNetworkInterfaces": [ { "input": { "NetworkInterfaceIds": [ "eni-e5aa89a3" ] }, "output": { "NetworkInterfaces": [ { "Association": { "AssociationId": "eipassoc-0fbb766a", "IpOwnerId": "123456789012", "PublicDnsName": "ec2-203-0-113-12.compute-1.amazonaws.com", "PublicIp": "203.0.113.12" }, "Attachment": { "AttachTime": "2013-11-30T23:36:42.000Z", "AttachmentId": "eni-attach-66c4350a", "DeleteOnTermination": false, "DeviceIndex": 1, "InstanceId": "i-1234567890abcdef0", "InstanceOwnerId": "123456789012", "Status": "attached" }, "AvailabilityZone": "us-east-1d", "Description": "my network interface", "Groups": [ { "GroupId": "sg-8637d3e3", "GroupName": "default" } ], "MacAddress": "02:2f:8f:b0:cf:75", "NetworkInterfaceId": "eni-e5aa89a3", "OwnerId": "123456789012", "PrivateDnsName": "ip-10-0-1-17.ec2.internal", "PrivateIpAddress": "10.0.1.17", "PrivateIpAddresses": [ { "Association": { "AssociationId": "eipassoc-0fbb766a", "IpOwnerId": "123456789012", "PublicDnsName": "ec2-203-0-113-12.compute-1.amazonaws.com", "PublicIp": "203.0.113.12" }, "Primary": true, "PrivateDnsName": "ip-10-0-1-17.ec2.internal", "PrivateIpAddress": "10.0.1.17" } ], "RequesterManaged": false, "SourceDestCheck": true, "Status": "in-use", "SubnetId": "subnet-b61f49f0", "TagSet": [ ], "VpcId": "vpc-a01106c2" } ] }, "comments": { "input": { }, "output": { } }, "description": "", "id": "ec2-describe-network-interfaces-1", "title": "To describe a network interface" } ], "DescribeRegions": [ { "output": { "Regions": [ { "Endpoint": "ec2.ap-south-1.amazonaws.com", "RegionName": "ap-south-1" }, { "Endpoint": "ec2.eu-west-1.amazonaws.com", "RegionName": "eu-west-1" }, { "Endpoint": "ec2.ap-southeast-1.amazonaws.com", "RegionName": "ap-southeast-1" }, { "Endpoint": "ec2.ap-southeast-2.amazonaws.com", "RegionName": "ap-southeast-2" }, { "Endpoint": "ec2.eu-central-1.amazonaws.com", "RegionName": "eu-central-1" }, { "Endpoint": "ec2.ap-northeast-2.amazonaws.com", "RegionName": "ap-northeast-2" }, { "Endpoint": "ec2.ap-northeast-1.amazonaws.com", "RegionName": "ap-northeast-1" }, { "Endpoint": "ec2.us-east-1.amazonaws.com", "RegionName": "us-east-1" }, { "Endpoint": "ec2.sa-east-1.amazonaws.com", "RegionName": "sa-east-1" }, { "Endpoint": "ec2.us-west-1.amazonaws.com", "RegionName": "us-west-1" }, { "Endpoint": "ec2.us-west-2.amazonaws.com", "RegionName": "us-west-2" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes all the regions that are available to you.", "id": "ec2-describe-regions-1", "title": "To describe your regions" } ], "DescribeRouteTables": [ { "input": { "RouteTableIds": [ "rtb-1f382e7d" ] }, "output": { "RouteTables": [ { "Associations": [ { "Main": true, "RouteTableAssociationId": "rtbassoc-d8ccddba", "RouteTableId": "rtb-1f382e7d" } ], "PropagatingVgws": [ ], "RouteTableId": "rtb-1f382e7d", "Routes": [ { "DestinationCidrBlock": "10.0.0.0/16", "GatewayId": "local", "State": "active" } ], "Tags": [ ], "VpcId": "vpc-a01106c2" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified route table.", "id": "ec2-describe-route-tables-1", "title": "To describe a route table" } ], "DescribeScheduledInstanceAvailability": [ { "input": { "FirstSlotStartTimeRange": { "EarliestTime": "2016-01-31T00:00:00Z", "LatestTime": "2016-01-31T04:00:00Z" }, "Recurrence": { "Frequency": "Weekly", "Interval": 1, "OccurrenceDays": [ 1 ] } }, "output": { "ScheduledInstanceAvailabilitySet": [ { "AvailabilityZone": "us-west-2b", "AvailableInstanceCount": 20, "FirstSlotStartTime": "2016-01-31T00:00:00Z", "HourlyPrice": "0.095", "InstanceType": "c4.large", "MaxTermDurationInDays": 366, "MinTermDurationInDays": 366, "NetworkPlatform": "EC2-VPC", "Platform": "Linux/UNIX", "PurchaseToken": "eyJ2IjoiMSIsInMiOjEsImMiOi...", "Recurrence": { "Frequency": "Weekly", "Interval": 1, "OccurrenceDaySet": [ 1 ], "OccurrenceRelativeToEnd": false }, "SlotDurationInHours": 23, "TotalScheduledInstanceHours": 1219 } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes a schedule that occurs every week on Sunday, starting on the specified date. Note that the output contains a single schedule as an example.", "id": "ec2-describe-scheduled-instance-availability-1", "title": "To describe an available schedule" } ], "DescribeScheduledInstances": [ { "input": { "ScheduledInstanceIds": [ "sci-1234-1234-1234-1234-123456789012" ] }, "output": { "ScheduledInstanceSet": [ { "AvailabilityZone": "us-west-2b", "CreateDate": "2016-01-25T21:43:38.612Z", "HourlyPrice": "0.095", "InstanceCount": 1, "InstanceType": "c4.large", "NetworkPlatform": "EC2-VPC", "NextSlotStartTime": "2016-01-31T09:00:00Z", "Platform": "Linux/UNIX", "Recurrence": { "Frequency": "Weekly", "Interval": 1, "OccurrenceDaySet": [ 1 ], "OccurrenceRelativeToEnd": false, "OccurrenceUnit": "" }, "ScheduledInstanceId": "sci-1234-1234-1234-1234-123456789012", "SlotDurationInHours": 32, "TermEndDate": "2017-01-31T09:00:00Z", "TermStartDate": "2016-01-31T09:00:00Z", "TotalScheduledInstanceHours": 1696 } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified Scheduled Instance.", "id": "ec2-describe-scheduled-instances-1", "title": "To describe your Scheduled Instances" } ], "DescribeSnapshotAttribute": [ { "input": { "Attribute": "createVolumePermission", "SnapshotId": "snap-066877671789bd71b" }, "output": { "CreateVolumePermissions": [ ], "SnapshotId": "snap-066877671789bd71b" }, "comments": { "input": { }, "output": { } }, "description": "This example describes the ``createVolumePermission`` attribute on a snapshot with the snapshot ID of ``snap-066877671789bd71b``.", "id": "to-describe-snapshot-attributes-1472503199736", "title": "To describe snapshot attributes" } ], "DescribeSnapshots": [ { "input": { "SnapshotIds": [ "snap-1234567890abcdef0" ] }, "output": { "NextToken": "", "Snapshots": [ { "Description": "This is my snapshot.", "OwnerId": "012345678910", "Progress": "100%", "SnapshotId": "snap-1234567890abcdef0", "StartTime": "2014-02-28T21:28:32.000Z", "State": "completed", "VolumeId": "vol-049df61146c4d7901", "VolumeSize": 8 } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes a snapshot with the snapshot ID of ``snap-1234567890abcdef0``.", "id": "to-describe-a-snapshot-1472503807850", "title": "To describe a snapshot" }, { "input": { "Filters": [ { "Name": "status", "Values": [ "pending" ] } ], "OwnerIds": [ "012345678910" ] }, "output": { "NextToken": "", "Snapshots": [ { "Description": "This is my copied snapshot.", "OwnerId": "012345678910", "Progress": "87%", "SnapshotId": "snap-066877671789bd71b", "StartTime": "2014-02-28T21:37:27.000Z", "State": "pending", "VolumeId": "vol-1234567890abcdef0", "VolumeSize": 8 } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes all snapshots owned by the ID 012345678910 that are in the ``pending`` status.", "id": "to-describe-snapshots-using-filters-1472503929793", "title": "To describe snapshots using filters" } ], "DescribeSpotDatafeedSubscription": [ { "output": { "SpotDatafeedSubscription": { "Bucket": "my-s3-bucket", "OwnerId": "123456789012", "Prefix": "spotdata", "State": "Active" } }, "comments": { "input": { }, "output": { } }, "description": "This example describes the Spot Instance datafeed subscription for your AWS account.", "id": "ec2-describe-spot-datafeed-subscription-1", "title": "To describe the datafeed for your AWS account" } ], "DescribeSpotFleetInstances": [ { "input": { "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" }, "output": { "ActiveInstances": [ { "InstanceId": "i-1234567890abcdef0", "InstanceType": "m3.medium", "SpotInstanceRequestId": "sir-08b93456" } ], "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" }, "comments": { "input": { }, "output": { } }, "description": "This example lists the Spot Instances associated with the specified Spot fleet.", "id": "ec2-describe-spot-fleet-instances-1", "title": "To describe the Spot Instances associated with a Spot fleet" } ], "DescribeSpotFleetRequestHistory": [ { "input": { "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", "StartTime": "2015-05-26T00:00:00Z" }, "output": { "HistoryRecords": [ { "EventInformation": { "EventSubType": "submitted" }, "EventType": "fleetRequestChange", "Timestamp": "2015-05-26T23:17:20.697Z" }, { "EventInformation": { "EventSubType": "active" }, "EventType": "fleetRequestChange", "Timestamp": "2015-05-26T23:17:20.873Z" }, { "EventInformation": { "EventSubType": "launched", "InstanceId": "i-1234567890abcdef0" }, "EventType": "instanceChange", "Timestamp": "2015-05-26T23:21:21.712Z" }, { "EventInformation": { "EventSubType": "launched", "InstanceId": "i-1234567890abcdef1" }, "EventType": "instanceChange", "Timestamp": "2015-05-26T23:21:21.816Z" } ], "NextToken": "CpHNsscimcV5oH7bSbub03CI2Qms5+ypNpNm+53MNlR0YcXAkp0xFlfKf91yVxSExmbtma3awYxMFzNA663ZskT0AHtJ6TCb2Z8bQC2EnZgyELbymtWPfpZ1ZbauVg+P+TfGlWxWWB/Vr5dk5d4LfdgA/DRAHUrYgxzrEXAMPLE=", "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", "StartTime": "2015-05-26T00:00:00Z" }, "comments": { "input": { }, "output": { } }, "description": "This example returns the history for the specified Spot fleet starting at the specified time.", "id": "ec2-describe-spot-fleet-request-history-1", "title": "To describe Spot fleet history" } ], "DescribeSpotFleetRequests": [ { "input": { "SpotFleetRequestIds": [ "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" ] }, "output": { "SpotFleetRequestConfigs": [ { "SpotFleetRequestConfig": { "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", "LaunchSpecifications": [ { "EbsOptimized": false, "ImageId": "ami-1a2b3c4d", "InstanceType": "cc2.8xlarge", "NetworkInterfaces": [ { "AssociatePublicIpAddress": true, "DeleteOnTermination": false, "DeviceIndex": 0, "SecondaryPrivateIpAddressCount": 0, "SubnetId": "subnet-a61dafcf" } ] }, { "EbsOptimized": false, "ImageId": "ami-1a2b3c4d", "InstanceType": "r3.8xlarge", "NetworkInterfaces": [ { "AssociatePublicIpAddress": true, "DeleteOnTermination": false, "DeviceIndex": 0, "SecondaryPrivateIpAddressCount": 0, "SubnetId": "subnet-a61dafcf" } ] } ], "SpotPrice": "0.05", "TargetCapacity": 20 }, "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", "SpotFleetRequestState": "active" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified Spot fleet request.", "id": "ec2-describe-spot-fleet-requests-1", "title": "To describe a Spot fleet request" } ], "DescribeSpotInstanceRequests": [ { "input": { "SpotInstanceRequestIds": [ "sir-08b93456" ] }, "output": { "SpotInstanceRequests": [ { "CreateTime": "2014-04-30T18:14:55.000Z", "InstanceId": "i-1234567890abcdef0", "LaunchSpecification": { "BlockDeviceMappings": [ { "DeviceName": "/dev/sda1", "Ebs": { "DeleteOnTermination": true, "VolumeSize": 8, "VolumeType": "standard" } } ], "EbsOptimized": false, "ImageId": "ami-7aba833f", "InstanceType": "m1.small", "KeyName": "my-key-pair", "SecurityGroups": [ { "GroupId": "sg-e38f24a7", "GroupName": "my-security-group" } ] }, "LaunchedAvailabilityZone": "us-west-1b", "ProductDescription": "Linux/UNIX", "SpotInstanceRequestId": "sir-08b93456", "SpotPrice": "0.010000", "State": "active", "Status": { "Code": "fulfilled", "Message": "Your Spot request is fulfilled.", "UpdateTime": "2014-04-30T18:16:21.000Z" }, "Type": "one-time" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified Spot Instance request.", "id": "ec2-describe-spot-instance-requests-1", "title": "To describe a Spot Instance request" } ], "DescribeSpotPriceHistory": [ { "input": { "EndTime": "2014-01-06T08:09:10", "InstanceTypes": [ "m1.xlarge" ], "ProductDescriptions": [ "Linux/UNIX (Amazon VPC)" ], "StartTime": "2014-01-06T07:08:09" }, "output": { "SpotPriceHistory": [ { "AvailabilityZone": "us-west-1a", "InstanceType": "m1.xlarge", "ProductDescription": "Linux/UNIX (Amazon VPC)", "SpotPrice": "0.080000", "Timestamp": "2014-01-06T04:32:53.000Z" }, { "AvailabilityZone": "us-west-1c", "InstanceType": "m1.xlarge", "ProductDescription": "Linux/UNIX (Amazon VPC)", "SpotPrice": "0.080000", "Timestamp": "2014-01-05T11:28:26.000Z" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example returns the Spot Price history for m1.xlarge, Linux/UNIX (Amazon VPC) instances for a particular day in January.", "id": "ec2-describe-spot-price-history-1", "title": "To describe Spot price history for Linux/UNIX (Amazon VPC)" } ], "DescribeSubnets": [ { "input": { "Filters": [ { "Name": "vpc-id", "Values": [ "vpc-a01106c2" ] } ] }, "output": { "Subnets": [ { "AvailabilityZone": "us-east-1c", "AvailableIpAddressCount": 251, "CidrBlock": "10.0.1.0/24", "DefaultForAz": false, "MapPublicIpOnLaunch": false, "State": "available", "SubnetId": "subnet-9d4a7b6c", "VpcId": "vpc-a01106c2" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the subnets for the specified VPC.", "id": "ec2-describe-subnets-1", "title": "To describe the subnets for a VPC" } ], "DescribeTags": [ { "input": { "Filters": [ { "Name": "resource-id", "Values": [ "i-1234567890abcdef8" ] } ] }, "output": { "Tags": [ { "Key": "Stack", "ResourceId": "i-1234567890abcdef8", "ResourceType": "instance", "Value": "test" }, { "Key": "Name", "ResourceId": "i-1234567890abcdef8", "ResourceType": "instance", "Value": "Beta Server" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the tags for the specified instance.", "id": "ec2-describe-tags-1", "title": "To describe the tags for a single resource" } ], "DescribeVolumeAttribute": [ { "input": { "Attribute": "autoEnableIO", "VolumeId": "vol-049df61146c4d7901" }, "output": { "AutoEnableIO": { "Value": false }, "VolumeId": "vol-049df61146c4d7901" }, "comments": { "input": { }, "output": { } }, "description": "This example describes the ``autoEnableIo`` attribute of the volume with the ID ``vol-049df61146c4d7901``.", "id": "to-describe-a-volume-attribute-1472505773492", "title": "To describe a volume attribute" } ], "DescribeVolumeStatus": [ { "input": { "VolumeIds": [ "vol-1234567890abcdef0" ] }, "output": { "VolumeStatuses": [ { "Actions": [ ], "AvailabilityZone": "us-east-1a", "Events": [ ], "VolumeId": "vol-1234567890abcdef0", "VolumeStatus": { "Details": [ { "Name": "io-enabled", "Status": "passed" }, { "Name": "io-performance", "Status": "not-applicable" } ], "Status": "ok" } } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the status for the volume ``vol-1234567890abcdef0``.", "id": "to-describe-the-status-of-a-single-volume-1472507016193", "title": "To describe the status of a single volume" }, { "input": { "Filters": [ { "Name": "volume-status.status", "Values": [ "impaired" ] } ] }, "output": { "VolumeStatuses": [ ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the status for all volumes that are impaired. In this example output, there are no impaired volumes.", "id": "to-describe-the-status-of-impaired-volumes-1472507239821", "title": "To describe the status of impaired volumes" } ], "DescribeVolumes": [ { "input": { }, "output": { "NextToken": "", "Volumes": [ { "Attachments": [ { "AttachTime": "2013-12-18T22:35:00.000Z", "DeleteOnTermination": true, "Device": "/dev/sda1", "InstanceId": "i-1234567890abcdef0", "State": "attached", "VolumeId": "vol-049df61146c4d7901" } ], "AvailabilityZone": "us-east-1a", "CreateTime": "2013-12-18T22:35:00.084Z", "Size": 8, "SnapshotId": "snap-1234567890abcdef0", "State": "in-use", "VolumeId": "vol-049df61146c4d7901", "VolumeType": "standard" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes all of your volumes in the default region.", "id": "to-describe-all-volumes-1472506358883", "title": "To describe all volumes" }, { "input": { "Filters": [ { "Name": "attachment.instance-id", "Values": [ "i-1234567890abcdef0" ] }, { "Name": "attachment.delete-on-termination", "Values": [ "true" ] } ] }, "output": { "Volumes": [ { "Attachments": [ { "AttachTime": "2013-12-18T22:35:00.000Z", "DeleteOnTermination": true, "Device": "/dev/sda1", "InstanceId": "i-1234567890abcdef0", "State": "attached", "VolumeId": "vol-049df61146c4d7901" } ], "AvailabilityZone": "us-east-1a", "CreateTime": "2013-12-18T22:35:00.084Z", "Size": 8, "SnapshotId": "snap-1234567890abcdef0", "State": "in-use", "VolumeId": "vol-049df61146c4d7901", "VolumeType": "standard" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes all volumes that are both attached to the instance with the ID i-1234567890abcdef0 and set to delete when the instance terminates.", "id": "to-describe-volumes-that-are-attached-to-a-specific-instance-1472506613578", "title": "To describe volumes that are attached to a specific instance" } ], "DescribeVpcAttribute": [ { "input": { "Attribute": "enableDnsSupport", "VpcId": "vpc-a01106c2" }, "output": { "EnableDnsSupport": { "Value": true }, "VpcId": "vpc-a01106c2" }, "comments": { "input": { }, "output": { } }, "description": "This example describes the enableDnsSupport attribute. This attribute indicates whether DNS resolution is enabled for the VPC. If this attribute is true, the Amazon DNS server resolves DNS hostnames for your instances to their corresponding IP addresses; otherwise, it does not.", "id": "ec2-describe-vpc-attribute-1", "title": "To describe the enableDnsSupport attribute" }, { "input": { "Attribute": "enableDnsHostnames", "VpcId": "vpc-a01106c2" }, "output": { "EnableDnsHostnames": { "Value": true }, "VpcId": "vpc-a01106c2" }, "comments": { "input": { }, "output": { } }, "description": "This example describes the enableDnsHostnames attribute. This attribute indicates whether the instances launched in the VPC get DNS hostnames. If this attribute is true, instances in the VPC get DNS hostnames; otherwise, they do not.", "id": "ec2-describe-vpc-attribute-2", "title": "To describe the enableDnsHostnames attribute" } ], "DescribeVpcs": [ { "input": { "VpcIds": [ "vpc-a01106c2" ] }, "output": { "Vpcs": [ { "CidrBlock": "10.0.0.0/16", "DhcpOptionsId": "dopt-7a8b9c2d", "InstanceTenancy": "default", "IsDefault": false, "State": "available", "Tags": [ { "Key": "Name", "Value": "MyVPC" } ], "VpcId": "vpc-a01106c2" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified VPC.", "id": "ec2-describe-vpcs-1", "title": "To describe a VPC" } ], "DetachInternetGateway": [ { "input": { "InternetGatewayId": "igw-c0a643a9", "VpcId": "vpc-a01106c2" }, "comments": { "input": { }, "output": { } }, "description": "This example detaches the specified Internet gateway from the specified VPC.", "id": "ec2-detach-internet-gateway-1", "title": "To detach an Internet gateway from a VPC" } ], "DetachNetworkInterface": [ { "input": { "AttachmentId": "eni-attach-66c4350a" }, "comments": { "input": { }, "output": { } }, "description": "This example detaches the specified network interface from its attached instance.", "id": "ec2-detach-network-interface-1", "title": "To detach a network interface from an instance" } ], "DetachVolume": [ { "input": { "VolumeId": "vol-1234567890abcdef0" }, "output": { "AttachTime": "2014-02-27T19:23:06.000Z", "Device": "/dev/sdb", "InstanceId": "i-1234567890abcdef0", "State": "detaching", "VolumeId": "vol-049df61146c4d7901" }, "comments": { "input": { }, "output": { } }, "description": "This example detaches the volume (``vol-049df61146c4d7901``) from the instance it is attached to.", "id": "to-detach-a-volume-from-an-instance-1472507977694", "title": "To detach a volume from an instance" } ], "DisableVgwRoutePropagation": [ { "input": { "GatewayId": "vgw-9a4cacf3", "RouteTableId": "rtb-22574640" }, "comments": { "input": { }, "output": { } }, "description": "This example disables the specified virtual private gateway from propagating static routes to the specified route table.", "id": "ec2-disable-vgw-route-propagation-1", "title": "To disable route propagation" } ], "DisassociateAddress": [ { "input": { "AssociationId": "eipassoc-2bebb745" }, "comments": { "input": { }, "output": { } }, "description": "This example disassociates an Elastic IP address from an instance in a VPC.", "id": "ec2-disassociate-address-1", "title": "To disassociate an Elastic IP address in EC2-VPC" }, { "input": { "PublicIp": "198.51.100.0" }, "comments": { "input": { }, "output": { } }, "description": "This example disassociates an Elastic IP address from an instance in EC2-Classic.", "id": "ec2-disassociate-address-2", "title": "To disassociate an Elastic IP addresses in EC2-Classic" } ], "DisassociateRouteTable": [ { "input": { "AssociationId": "rtbassoc-781d0d1a" }, "comments": { "input": { }, "output": { } }, "description": "This example disassociates the specified route table from its associated subnet.", "id": "ec2-disassociate-route-table-1", "title": "To disassociate a route table" } ], "EnableVgwRoutePropagation": [ { "input": { "GatewayId": "vgw-9a4cacf3", "RouteTableId": "rtb-22574640" }, "comments": { "input": { }, "output": { } }, "description": "This example enables the specified virtual private gateway to propagate static routes to the specified route table.", "id": "ec2-enable-vgw-route-propagation-1", "title": "To enable route propagation" } ], "EnableVolumeIO": [ { "input": { "VolumeId": "vol-1234567890abcdef0" }, "output": { "Return": true }, "comments": { "input": { }, "output": { } }, "description": "This example enables I/O on volume ``vol-1234567890abcdef0``.", "id": "to-enable-io-for-a-volume-1472508114867", "title": "To enable I/O for a volume" } ], "ModifyNetworkInterfaceAttribute": [ { "input": { "Attachment": { "AttachmentId": "eni-attach-43348162", "DeleteOnTermination": false }, "NetworkInterfaceId": "eni-686ea200" }, "comments": { "input": { }, "output": { } }, "description": "This example modifies the attachment attribute of the specified network interface.", "id": "ec2-modify-network-interface-attribute-1", "title": "To modify the attachment attribute of a network interface" }, { "input": { "Description": "My description", "NetworkInterfaceId": "eni-686ea200" }, "comments": { "input": { }, "output": { } }, "description": "This example modifies the description attribute of the specified network interface.", "id": "ec2-modify-network-interface-attribute-2", "title": "To modify the description attribute of a network interface" }, { "input": { "Groups": [ "sg-903004f8", "sg-1a2b3c4d" ], "NetworkInterfaceId": "eni-686ea200" }, "comments": { "input": { }, "output": { } }, "description": "This example command modifies the groupSet attribute of the specified network interface.", "id": "ec2-modify-network-interface-attribute-3", "title": "To modify the groupSet attribute of a network interface" }, { "input": { "NetworkInterfaceId": "eni-686ea200", "SourceDestCheck": false }, "comments": { "input": { }, "output": { } }, "description": "This example command modifies the sourceDestCheck attribute of the specified network interface.", "id": "ec2-modify-network-interface-attribute-4", "title": "To modify the sourceDestCheck attribute of a network interface" } ], "ModifySnapshotAttribute": [ { "input": { "Attribute": "createVolumePermission", "OperationType": "remove", "SnapshotId": "snap-1234567890abcdef0", "UserIds": [ "123456789012" ] }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example modifies snapshot ``snap-1234567890abcdef0`` to remove the create volume permission for a user with the account ID ``123456789012``. If the command succeeds, no output is returned.", "id": "to-modify-a-snapshot-attribute-1472508385907", "title": "To modify a snapshot attribute" }, { "input": { "Attribute": "createVolumePermission", "GroupNames": [ "all" ], "OperationType": "add", "SnapshotId": "snap-1234567890abcdef0" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example makes the snapshot ``snap-1234567890abcdef0`` public.", "id": "to-make-a-snapshot-public-1472508470529", "title": "To make a snapshot public" } ], "ModifySpotFleetRequest": [ { "input": { "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", "TargetCapacity": 20 }, "output": { "Return": true }, "comments": { "input": { }, "output": { } }, "description": "This example increases the target capacity of the specified Spot fleet request.", "id": "ec2-modify-spot-fleet-request-1", "title": "To increase the target capacity of a Spot fleet request" }, { "input": { "ExcessCapacityTerminationPolicy": "NoTermination ", "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", "TargetCapacity": 10 }, "output": { "Return": true }, "comments": { "input": { }, "output": { } }, "description": "This example decreases the target capacity of the specified Spot fleet request without terminating any Spot Instances as a result.", "id": "ec2-modify-spot-fleet-request-2", "title": "To decrease the target capacity of a Spot fleet request" } ], "ModifySubnetAttribute": [ { "input": { "MapPublicIpOnLaunch": true, "SubnetId": "subnet-1a2b3c4d" }, "comments": { "input": { }, "output": { } }, "description": "This example modifies the specified subnet so that all instances launched into this subnet are assigned a public IP address.", "id": "ec2-modify-subnet-attribute-1", "title": "To change a subnet's public IP addressing behavior" } ], "ModifyVolumeAttribute": [ { "input": { "AutoEnableIO": { "Value": true }, "DryRun": true, "VolumeId": "vol-1234567890abcdef0" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example sets the ``autoEnableIo`` attribute of the volume with the ID ``vol-1234567890abcdef0`` to ``true``. If the command succeeds, no output is returned.", "id": "to-modify-a-volume-attribute-1472508596749", "title": "To modify a volume attribute" } ], "ModifyVpcAttribute": [ { "input": { "EnableDnsSupport": { "Value": false }, "VpcId": "vpc-a01106c2" }, "comments": { "input": { }, "output": { } }, "description": "This example modifies the enableDnsSupport attribute. This attribute indicates whether DNS resolution is enabled for the VPC. If this attribute is true, the Amazon DNS server resolves DNS hostnames for instances in the VPC to their corresponding IP addresses; otherwise, it does not.", "id": "ec2-modify-vpc-attribute-1", "title": "To modify the enableDnsSupport attribute" }, { "input": { "EnableDnsHostnames": { "Value": false }, "VpcId": "vpc-a01106c2" }, "comments": { "input": { }, "output": { } }, "description": "This example modifies the enableDnsHostnames attribute. This attribute indicates whether instances launched in the VPC get DNS hostnames. If this attribute is true, instances in the VPC get DNS hostnames; otherwise, they do not.", "id": "ec2-modify-vpc-attribute-2", "title": "To modify the enableDnsHostnames attribute" } ], "MoveAddressToVpc": [ { "input": { "PublicIp": "54.123.4.56" }, "output": { "Status": "MoveInProgress" }, "comments": { "input": { }, "output": { } }, "description": "This example moves the specified Elastic IP address to the EC2-VPC platform.", "id": "ec2-move-address-to-vpc-1", "title": "To move an address to EC2-VPC" } ], "PurchaseScheduledInstances": [ { "input": { "PurchaseRequests": [ { "InstanceCount": 1, "PurchaseToken": "eyJ2IjoiMSIsInMiOjEsImMiOi..." } ] }, "output": { "ScheduledInstanceSet": [ { "AvailabilityZone": "us-west-2b", "CreateDate": "2016-01-25T21:43:38.612Z", "HourlyPrice": "0.095", "InstanceCount": 1, "InstanceType": "c4.large", "NetworkPlatform": "EC2-VPC", "NextSlotStartTime": "2016-01-31T09:00:00Z", "Platform": "Linux/UNIX", "Recurrence": { "Frequency": "Weekly", "Interval": 1, "OccurrenceDaySet": [ 1 ], "OccurrenceRelativeToEnd": false, "OccurrenceUnit": "" }, "ScheduledInstanceId": "sci-1234-1234-1234-1234-123456789012", "SlotDurationInHours": 32, "TermEndDate": "2017-01-31T09:00:00Z", "TermStartDate": "2016-01-31T09:00:00Z", "TotalScheduledInstanceHours": 1696 } ] }, "comments": { "input": { }, "output": { } }, "description": "This example purchases a Scheduled Instance.", "id": "ec2-purchase-scheduled-instances-1", "title": "To purchase a Scheduled Instance" } ], "ReleaseAddress": [ { "input": { "AllocationId": "eipalloc-64d5890a" }, "comments": { "input": { }, "output": { } }, "description": "This example releases an Elastic IP address for use with instances in a VPC.", "id": "ec2-release-address-1", "title": "To release an Elastic IP address for EC2-VPC" }, { "input": { "PublicIp": "198.51.100.0" }, "comments": { "input": { }, "output": { } }, "description": "This example releases an Elastic IP address for use with instances in EC2-Classic.", "id": "ec2-release-address-2", "title": "To release an Elastic IP addresses for EC2-Classic" } ], "ReplaceNetworkAclAssociation": [ { "input": { "AssociationId": "aclassoc-e5b95c8c", "NetworkAclId": "acl-5fb85d36" }, "output": { "NewAssociationId": "aclassoc-3999875b" }, "comments": { "input": { }, "output": { } }, "description": "This example associates the specified network ACL with the subnet for the specified network ACL association.", "id": "ec2-replace-network-acl-association-1", "title": "To replace the network ACL associated with a subnet" } ], "ReplaceNetworkAclEntry": [ { "input": { "CidrBlock": "203.0.113.12/24", "Egress": false, "NetworkAclId": "acl-5fb85d36", "PortRange": { "From": 53, "To": 53 }, "Protocol": "udp", "RuleAction": "allow", "RuleNumber": 100 }, "comments": { "input": { }, "output": { } }, "description": "This example replaces an entry for the specified network ACL. The new rule 100 allows ingress traffic from 203.0.113.12/24 on UDP port 53 (DNS) into any associated subnet.", "id": "ec2-replace-network-acl-entry-1", "title": "To replace a network ACL entry" } ], "ReplaceRoute": [ { "input": { "DestinationCidrBlock": "10.0.0.0/16", "GatewayId": "vgw-9a4cacf3", "RouteTableId": "rtb-22574640" }, "comments": { "input": { }, "output": { } }, "description": "This example replaces the specified route in the specified table table. The new route matches the specified CIDR and sends the traffic to the specified virtual private gateway.", "id": "ec2-replace-route-1", "title": "To replace a route" } ], "ReplaceRouteTableAssociation": [ { "input": { "AssociationId": "rtbassoc-781d0d1a", "RouteTableId": "rtb-22574640" }, "output": { "NewAssociationId": "rtbassoc-3a1f0f58" }, "comments": { "input": { }, "output": { } }, "description": "This example associates the specified route table with the subnet for the specified route table association.", "id": "ec2-replace-route-table-association-1", "title": "To replace the route table associated with a subnet" } ], "RequestSpotFleet": [ { "input": { "SpotFleetRequestConfig": { "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", "LaunchSpecifications": [ { "IamInstanceProfile": { "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" }, "ImageId": "ami-1a2b3c4d", "InstanceType": "m3.medium", "KeyName": "my-key-pair", "SecurityGroups": [ { "GroupId": "sg-1a2b3c4d" } ], "SubnetId": "subnet-1a2b3c4d, subnet-3c4d5e6f" } ], "SpotPrice": "0.04", "TargetCapacity": 2 } }, "output": { "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a Spot fleet request with two launch specifications that differ only by subnet. The Spot fleet launches the instances in the specified subnet with the lowest price. If the instances are launched in a default VPC, they receive a public IP address by default. If the instances are launched in a nondefault VPC, they do not receive a public IP address by default. Note that you can't specify different subnets from the same Availability Zone in a Spot fleet request.", "id": "ec2-request-spot-fleet-1", "title": "To request a Spot fleet in the subnet with the lowest price" }, { "input": { "SpotFleetRequestConfig": { "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", "LaunchSpecifications": [ { "IamInstanceProfile": { "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" }, "ImageId": "ami-1a2b3c4d", "InstanceType": "m3.medium", "KeyName": "my-key-pair", "Placement": { "AvailabilityZone": "us-west-2a, us-west-2b" }, "SecurityGroups": [ { "GroupId": "sg-1a2b3c4d" } ] } ], "SpotPrice": "0.04", "TargetCapacity": 2 } }, "output": { "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a Spot fleet request with two launch specifications that differ only by Availability Zone. The Spot fleet launches the instances in the specified Availability Zone with the lowest price. If your account supports EC2-VPC only, Amazon EC2 launches the Spot instances in the default subnet of the Availability Zone. If your account supports EC2-Classic, Amazon EC2 launches the instances in EC2-Classic in the Availability Zone.", "id": "ec2-request-spot-fleet-2", "title": "To request a Spot fleet in the Availability Zone with the lowest price" }, { "input": { "SpotFleetRequestConfig": { "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", "LaunchSpecifications": [ { "IamInstanceProfile": { "Arn": "arn:aws:iam::880185128111:instance-profile/my-iam-role" }, "ImageId": "ami-1a2b3c4d", "InstanceType": "m3.medium", "KeyName": "my-key-pair", "NetworkInterfaces": [ { "AssociatePublicIpAddress": true, "DeviceIndex": 0, "Groups": [ "sg-1a2b3c4d" ], "SubnetId": "subnet-1a2b3c4d" } ] } ], "SpotPrice": "0.04", "TargetCapacity": 2 } }, "output": { "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" }, "comments": { "input": { }, "output": { } }, "description": "This example assigns public addresses to instances launched in a nondefault VPC. Note that when you specify a network interface, you must include the subnet ID and security group ID using the network interface.", "id": "ec2-request-spot-fleet-3", "title": "To launch Spot instances in a subnet and assign them public IP addresses" }, { "input": { "SpotFleetRequestConfig": { "AllocationStrategy": "diversified", "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "InstanceType": "c4.2xlarge", "SubnetId": "subnet-1a2b3c4d" }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "m3.2xlarge", "SubnetId": "subnet-1a2b3c4d" }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "r3.2xlarge", "SubnetId": "subnet-1a2b3c4d" } ], "SpotPrice": "0.70", "TargetCapacity": 30 } }, "output": { "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a Spot fleet request that launches 30 instances using the diversified allocation strategy. The launch specifications differ by instance type. The Spot fleet distributes the instances across the launch specifications such that there are 10 instances of each type.", "id": "ec2-request-spot-fleet-4", "title": "To request a Spot fleet using the diversified allocation strategy" } ], "RequestSpotInstances": [ { "input": { "InstanceCount": 5, "LaunchSpecification": { "IamInstanceProfile": { "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" }, "ImageId": "ami-1a2b3c4d", "InstanceType": "m3.medium", "KeyName": "my-key-pair", "Placement": { "AvailabilityZone": "us-west-2a" }, "SecurityGroupIds": [ "sg-1a2b3c4d" ] }, "SpotPrice": "0.03", "Type": "one-time" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a one-time Spot Instance request for five instances in the specified Availability Zone. If your account supports EC2-VPC only, Amazon EC2 launches the instances in the default subnet of the specified Availability Zone. If your account supports EC2-Classic, Amazon EC2 launches the instances in EC2-Classic in the specified Availability Zone.", "id": "ec2-request-spot-instances-1", "title": "To create a one-time Spot Instance request" }, { "input": { "InstanceCount": 5, "LaunchSpecification": { "IamInstanceProfile": { "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" }, "ImageId": "ami-1a2b3c4d", "InstanceType": "m3.medium", "SecurityGroupIds": [ "sg-1a2b3c4d" ], "SubnetId": "subnet-1a2b3c4d" }, "SpotPrice": "0.050", "Type": "one-time" }, "comments": { "input": { }, "output": { } }, "description": "This example command creates a one-time Spot Instance request for five instances in the specified subnet. Amazon EC2 launches the instances in the specified subnet. If the VPC is a nondefault VPC, the instances do not receive a public IP address by default.", "id": "ec2-request-spot-instances-2", "title": "To create a one-time Spot Instance request" } ], "ResetSnapshotAttribute": [ { "input": { "Attribute": "createVolumePermission", "SnapshotId": "snap-1234567890abcdef0" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example resets the create volume permissions for snapshot ``snap-1234567890abcdef0``. If the command succeeds, no output is returned.", "id": "to-reset-a-snapshot-attribute-1472508825735", "title": "To reset a snapshot attribute" } ], "RestoreAddressToClassic": [ { "input": { "PublicIp": "198.51.100.0" }, "output": { "PublicIp": "198.51.100.0", "Status": "MoveInProgress" }, "comments": { "input": { }, "output": { } }, "description": "This example restores the specified Elastic IP address to the EC2-Classic platform.", "id": "ec2-restore-address-to-classic-1", "title": "To restore an address to EC2-Classic" } ], "RunScheduledInstances": [ { "input": { "InstanceCount": 1, "LaunchSpecification": { "IamInstanceProfile": { "Name": "my-iam-role" }, "ImageId": "ami-12345678", "InstanceType": "c4.large", "KeyName": "my-key-pair", "NetworkInterfaces": [ { "AssociatePublicIpAddress": true, "DeviceIndex": 0, "Groups": [ "sg-12345678" ], "SubnetId": "subnet-12345678" } ] }, "ScheduledInstanceId": "sci-1234-1234-1234-1234-123456789012" }, "output": { "InstanceIdSet": [ "i-1234567890abcdef0" ] }, "comments": { "input": { }, "output": { } }, "description": "This example launches the specified Scheduled Instance in a VPC.", "id": "ec2-run-scheduled-instances-1", "title": "To launch a Scheduled Instance in a VPC" }, { "input": { "InstanceCount": 1, "LaunchSpecification": { "IamInstanceProfile": { "Name": "my-iam-role" }, "ImageId": "ami-12345678", "InstanceType": "c4.large", "KeyName": "my-key-pair", "Placement": { "AvailabilityZone": "us-west-2b" }, "SecurityGroupIds": [ "sg-12345678" ] }, "ScheduledInstanceId": "sci-1234-1234-1234-1234-123456789012" }, "output": { "InstanceIdSet": [ "i-1234567890abcdef0" ] }, "comments": { "input": { }, "output": { } }, "description": "This example launches the specified Scheduled Instance in EC2-Classic.", "id": "ec2-run-scheduled-instances-2", "title": "To launch a Scheduled Instance in EC2-Classic" } ], "UnassignPrivateIpAddresses": [ { "input": { "NetworkInterfaceId": "eni-e5aa89a3", "PrivateIpAddresses": [ "10.0.0.82" ] }, "comments": { "input": { }, "output": { } }, "description": "This example unassigns the specified private IP address from the specified network interface.", "id": "ec2-unassign-private-ip-addresses-1", "title": "To unassign a secondary private IP address from a network interface" } ] } } aws-sdk-go-1.4.22/models/apis/ec2/2016-04-01/paginators-1.json000066400000000000000000000071071300374646400227070ustar00rootroot00000000000000{ "pagination": { "DescribeAccountAttributes": { "result_key": "AccountAttributes" }, "DescribeAddresses": { "result_key": "Addresses" }, "DescribeAvailabilityZones": { "result_key": "AvailabilityZones" }, "DescribeBundleTasks": { "result_key": "BundleTasks" }, "DescribeConversionTasks": { "result_key": "ConversionTasks" }, "DescribeCustomerGateways": { "result_key": "CustomerGateways" }, "DescribeDhcpOptions": { "result_key": "DhcpOptions" }, "DescribeExportTasks": { "result_key": "ExportTasks" }, "DescribeImages": { "result_key": "Images" }, "DescribeInstanceStatus": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "InstanceStatuses" }, "DescribeInstances": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "Reservations" }, "DescribeInternetGateways": { "result_key": "InternetGateways" }, "DescribeKeyPairs": { "result_key": "KeyPairs" }, "DescribeNetworkAcls": { "result_key": "NetworkAcls" }, "DescribeNetworkInterfaces": { "result_key": "NetworkInterfaces" }, "DescribePlacementGroups": { "result_key": "PlacementGroups" }, "DescribeRegions": { "result_key": "Regions" }, "DescribeReservedInstances": { "result_key": "ReservedInstances" }, "DescribeReservedInstancesListings": { "result_key": "ReservedInstancesListings" }, "DescribeReservedInstancesOfferings": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "ReservedInstancesOfferings" }, "DescribeReservedInstancesModifications": { "input_token": "NextToken", "output_token": "NextToken", "result_key": "ReservedInstancesModifications" }, "DescribeRouteTables": { "result_key": "RouteTables" }, "DescribeSecurityGroups": { "result_key": "SecurityGroups" }, "DescribeSnapshots": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "Snapshots" }, "DescribeSpotInstanceRequests": { "result_key": "SpotInstanceRequests" }, "DescribeSpotFleetRequests": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "SpotFleetRequestConfigs" }, "DescribeSpotPriceHistory": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "SpotPriceHistory" }, "DescribeSubnets": { "result_key": "Subnets" }, "DescribeTags": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "Tags" }, "DescribeVolumeStatus": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "VolumeStatuses" }, "DescribeVolumes": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "Volumes" }, "DescribeVpcs": { "result_key": "Vpcs" }, "DescribeVpcPeeringConnections": { "result_key": "VpcPeeringConnections" }, "DescribeVpnConnections": { "result_key": "VpnConnections" }, "DescribeVpnGateways": { "result_key": "VpnGateways" } } } aws-sdk-go-1.4.22/models/apis/ec2/2016-04-01/waiters-2.json000066400000000000000000000350361300374646400222210ustar00rootroot00000000000000{ "version": 2, "waiters": { "InstanceExists": { "delay": 5, "maxAttempts": 40, "operation": "DescribeInstances", "acceptors": [ { "matcher": "path", "expected": true, "argument": "length(Reservations[]) > `0`", "state": "success" }, { "matcher": "error", "expected": "InvalidInstanceID.NotFound", "state": "retry" } ] }, "BundleTaskComplete": { "delay": 15, "operation": "DescribeBundleTasks", "maxAttempts": 40, "acceptors": [ { "expected": "complete", "matcher": "pathAll", "state": "success", "argument": "BundleTasks[].State" }, { "expected": "failed", "matcher": "pathAny", "state": "failure", "argument": "BundleTasks[].State" } ] }, "ConversionTaskCancelled": { "delay": 15, "operation": "DescribeConversionTasks", "maxAttempts": 40, "acceptors": [ { "expected": "cancelled", "matcher": "pathAll", "state": "success", "argument": "ConversionTasks[].State" } ] }, "ConversionTaskCompleted": { "delay": 15, "operation": "DescribeConversionTasks", "maxAttempts": 40, "acceptors": [ { "expected": "completed", "matcher": "pathAll", "state": "success", "argument": "ConversionTasks[].State" }, { "expected": "cancelled", "matcher": "pathAny", "state": "failure", "argument": "ConversionTasks[].State" }, { "expected": "cancelling", "matcher": "pathAny", "state": "failure", "argument": "ConversionTasks[].State" } ] }, "ConversionTaskDeleted": { "delay": 15, "operation": "DescribeConversionTasks", "maxAttempts": 40, "acceptors": [ { "expected": "deleted", "matcher": "pathAll", "state": "success", "argument": "ConversionTasks[].State" } ] }, "CustomerGatewayAvailable": { "delay": 15, "operation": "DescribeCustomerGateways", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "CustomerGateways[].State" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "CustomerGateways[].State" }, { "expected": "deleting", "matcher": "pathAny", "state": "failure", "argument": "CustomerGateways[].State" } ] }, "ExportTaskCancelled": { "delay": 15, "operation": "DescribeExportTasks", "maxAttempts": 40, "acceptors": [ { "expected": "cancelled", "matcher": "pathAll", "state": "success", "argument": "ExportTasks[].State" } ] }, "ExportTaskCompleted": { "delay": 15, "operation": "DescribeExportTasks", "maxAttempts": 40, "acceptors": [ { "expected": "completed", "matcher": "pathAll", "state": "success", "argument": "ExportTasks[].State" } ] }, "ImageExists": { "operation": "DescribeImages", "maxAttempts": 40, "delay": 15, "acceptors": [ { "matcher": "path", "expected": true, "argument": "length(Images[]) > `0`", "state": "success" }, { "matcher": "error", "expected": "InvalidAMIID.NotFound", "state": "retry" } ] }, "ImageAvailable": { "operation": "DescribeImages", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "Images[].State", "expected": "available" }, { "state": "failure", "matcher": "pathAny", "argument": "Images[].State", "expected": "failed" } ] }, "InstanceRunning": { "delay": 15, "operation": "DescribeInstances", "maxAttempts": 40, "acceptors": [ { "expected": "running", "matcher": "pathAll", "state": "success", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "shutting-down", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "terminated", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "stopping", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "matcher": "error", "expected": "InvalidInstanceID.NotFound", "state": "retry" } ] }, "InstanceStatusOk": { "operation": "DescribeInstanceStatus", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "InstanceStatuses[].InstanceStatus.Status", "expected": "ok" }, { "matcher": "error", "expected": "InvalidInstanceID.NotFound", "state": "retry" } ] }, "InstanceStopped": { "delay": 15, "operation": "DescribeInstances", "maxAttempts": 40, "acceptors": [ { "expected": "stopped", "matcher": "pathAll", "state": "success", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "pending", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "terminated", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" } ] }, "InstanceTerminated": { "delay": 15, "operation": "DescribeInstances", "maxAttempts": 40, "acceptors": [ { "expected": "terminated", "matcher": "pathAll", "state": "success", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "pending", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "stopping", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" } ] }, "KeyPairExists": { "operation": "DescribeKeyPairs", "delay": 5, "maxAttempts": 6, "acceptors": [ { "expected": true, "matcher": "pathAll", "state": "success", "argument": "length(KeyPairs[].KeyName) > `0`" }, { "expected": "InvalidKeyPair.NotFound", "matcher": "error", "state": "retry" } ] }, "NatGatewayAvailable": { "operation": "DescribeNatGateways", "delay": 15, "maxAttempts": 40, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "NatGateways[].State", "expected": "available" }, { "state": "failure", "matcher": "pathAny", "argument": "NatGateways[].State", "expected": "failed" }, { "state": "failure", "matcher": "pathAny", "argument": "NatGateways[].State", "expected": "deleting" }, { "state": "failure", "matcher": "pathAny", "argument": "NatGateways[].State", "expected": "deleted" }, { "state": "retry", "matcher": "error", "expected": "NatGatewayNotFound" } ] }, "NetworkInterfaceAvailable": { "operation": "DescribeNetworkInterfaces", "delay": 20, "maxAttempts": 10, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "NetworkInterfaces[].Status" }, { "expected": "InvalidNetworkInterfaceID.NotFound", "matcher": "error", "state": "failure" } ] }, "PasswordDataAvailable": { "operation": "GetPasswordData", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "path", "argument": "length(PasswordData) > `0`", "expected": true } ] }, "SnapshotCompleted": { "delay": 15, "operation": "DescribeSnapshots", "maxAttempts": 40, "acceptors": [ { "expected": "completed", "matcher": "pathAll", "state": "success", "argument": "Snapshots[].State" } ] }, "SpotInstanceRequestFulfilled": { "operation": "DescribeSpotInstanceRequests", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "SpotInstanceRequests[].Status.Code", "expected": "fulfilled" }, { "state": "failure", "matcher": "pathAny", "argument": "SpotInstanceRequests[].Status.Code", "expected": "schedule-expired" }, { "state": "failure", "matcher": "pathAny", "argument": "SpotInstanceRequests[].Status.Code", "expected": "canceled-before-fulfillment" }, { "state": "failure", "matcher": "pathAny", "argument": "SpotInstanceRequests[].Status.Code", "expected": "bad-parameters" }, { "state": "failure", "matcher": "pathAny", "argument": "SpotInstanceRequests[].Status.Code", "expected": "system-error" } ] }, "SubnetAvailable": { "delay": 15, "operation": "DescribeSubnets", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "Subnets[].State" } ] }, "SystemStatusOk": { "operation": "DescribeInstanceStatus", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "InstanceStatuses[].SystemStatus.Status", "expected": "ok" } ] }, "VolumeAvailable": { "delay": 15, "operation": "DescribeVolumes", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "Volumes[].State" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "Volumes[].State" } ] }, "VolumeDeleted": { "delay": 15, "operation": "DescribeVolumes", "maxAttempts": 40, "acceptors": [ { "expected": "deleted", "matcher": "pathAll", "state": "success", "argument": "Volumes[].State" }, { "matcher": "error", "expected": "InvalidVolume.NotFound", "state": "success" } ] }, "VolumeInUse": { "delay": 15, "operation": "DescribeVolumes", "maxAttempts": 40, "acceptors": [ { "expected": "in-use", "matcher": "pathAll", "state": "success", "argument": "Volumes[].State" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "Volumes[].State" } ] }, "VpcAvailable": { "delay": 15, "operation": "DescribeVpcs", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "Vpcs[].State" } ] }, "VpcExists": { "operation": "DescribeVpcs", "delay": 1, "maxAttempts": 5, "acceptors": [ { "matcher": "status", "expected": 200, "state": "success" }, { "matcher": "error", "expected": "InvalidVpcID.NotFound", "state": "retry" } ] }, "VpnConnectionAvailable": { "delay": 15, "operation": "DescribeVpnConnections", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "VpnConnections[].State" }, { "expected": "deleting", "matcher": "pathAny", "state": "failure", "argument": "VpnConnections[].State" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "VpnConnections[].State" } ] }, "VpnConnectionDeleted": { "delay": 15, "operation": "DescribeVpnConnections", "maxAttempts": 40, "acceptors": [ { "expected": "deleted", "matcher": "pathAll", "state": "success", "argument": "VpnConnections[].State" }, { "expected": "pending", "matcher": "pathAny", "state": "failure", "argument": "VpnConnections[].State" } ] }, "VpcPeeringConnectionExists": { "delay": 15, "operation": "DescribeVpcPeeringConnections", "maxAttempts": 40, "acceptors": [ { "matcher": "status", "expected": 200, "state": "success" }, { "matcher": "error", "expected": "InvalidVpcPeeringConnectionID.NotFound", "state": "retry" } ] } } } aws-sdk-go-1.4.22/models/apis/ec2/2016-09-15/000077500000000000000000000000001300374646400175145ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/ec2/2016-09-15/api-2.json000077500000000000000000012625511300374646400213360ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2016-09-15", "endpointPrefix":"ec2", "protocol":"ec2", "serviceAbbreviation":"Amazon EC2", "serviceFullName":"Amazon Elastic Compute Cloud", "signatureVersion":"v4", "xmlNamespace":"http://ec2.amazonaws.com/doc/2016-09-15" }, "operations":{ "AcceptReservedInstancesExchangeQuote":{ "name":"AcceptReservedInstancesExchangeQuote", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AcceptReservedInstancesExchangeQuoteRequest"}, "output":{"shape":"AcceptReservedInstancesExchangeQuoteResult"} }, "AcceptVpcPeeringConnection":{ "name":"AcceptVpcPeeringConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AcceptVpcPeeringConnectionRequest"}, "output":{"shape":"AcceptVpcPeeringConnectionResult"} }, "AllocateAddress":{ "name":"AllocateAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AllocateAddressRequest"}, "output":{"shape":"AllocateAddressResult"} }, "AllocateHosts":{ "name":"AllocateHosts", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AllocateHostsRequest"}, "output":{"shape":"AllocateHostsResult"} }, "AssignPrivateIpAddresses":{ "name":"AssignPrivateIpAddresses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssignPrivateIpAddressesRequest"} }, "AssociateAddress":{ "name":"AssociateAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssociateAddressRequest"}, "output":{"shape":"AssociateAddressResult"} }, "AssociateDhcpOptions":{ "name":"AssociateDhcpOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssociateDhcpOptionsRequest"} }, "AssociateRouteTable":{ "name":"AssociateRouteTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssociateRouteTableRequest"}, "output":{"shape":"AssociateRouteTableResult"} }, "AttachClassicLinkVpc":{ "name":"AttachClassicLinkVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachClassicLinkVpcRequest"}, "output":{"shape":"AttachClassicLinkVpcResult"} }, "AttachInternetGateway":{ "name":"AttachInternetGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachInternetGatewayRequest"} }, "AttachNetworkInterface":{ "name":"AttachNetworkInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachNetworkInterfaceRequest"}, "output":{"shape":"AttachNetworkInterfaceResult"} }, "AttachVolume":{ "name":"AttachVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachVolumeRequest"}, "output":{"shape":"VolumeAttachment"} }, "AttachVpnGateway":{ "name":"AttachVpnGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachVpnGatewayRequest"}, "output":{"shape":"AttachVpnGatewayResult"} }, "AuthorizeSecurityGroupEgress":{ "name":"AuthorizeSecurityGroupEgress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AuthorizeSecurityGroupEgressRequest"} }, "AuthorizeSecurityGroupIngress":{ "name":"AuthorizeSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AuthorizeSecurityGroupIngressRequest"} }, "BundleInstance":{ "name":"BundleInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BundleInstanceRequest"}, "output":{"shape":"BundleInstanceResult"} }, "CancelBundleTask":{ "name":"CancelBundleTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelBundleTaskRequest"}, "output":{"shape":"CancelBundleTaskResult"} }, "CancelConversionTask":{ "name":"CancelConversionTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelConversionRequest"} }, "CancelExportTask":{ "name":"CancelExportTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelExportTaskRequest"} }, "CancelImportTask":{ "name":"CancelImportTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelImportTaskRequest"}, "output":{"shape":"CancelImportTaskResult"} }, "CancelReservedInstancesListing":{ "name":"CancelReservedInstancesListing", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelReservedInstancesListingRequest"}, "output":{"shape":"CancelReservedInstancesListingResult"} }, "CancelSpotFleetRequests":{ "name":"CancelSpotFleetRequests", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelSpotFleetRequestsRequest"}, "output":{"shape":"CancelSpotFleetRequestsResponse"} }, "CancelSpotInstanceRequests":{ "name":"CancelSpotInstanceRequests", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelSpotInstanceRequestsRequest"}, "output":{"shape":"CancelSpotInstanceRequestsResult"} }, "ConfirmProductInstance":{ "name":"ConfirmProductInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ConfirmProductInstanceRequest"}, "output":{"shape":"ConfirmProductInstanceResult"} }, "CopyImage":{ "name":"CopyImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopyImageRequest"}, "output":{"shape":"CopyImageResult"} }, "CopySnapshot":{ "name":"CopySnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopySnapshotRequest"}, "output":{"shape":"CopySnapshotResult"} }, "CreateCustomerGateway":{ "name":"CreateCustomerGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateCustomerGatewayRequest"}, "output":{"shape":"CreateCustomerGatewayResult"} }, "CreateDhcpOptions":{ "name":"CreateDhcpOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDhcpOptionsRequest"}, "output":{"shape":"CreateDhcpOptionsResult"} }, "CreateFlowLogs":{ "name":"CreateFlowLogs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateFlowLogsRequest"}, "output":{"shape":"CreateFlowLogsResult"} }, "CreateImage":{ "name":"CreateImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateImageRequest"}, "output":{"shape":"CreateImageResult"} }, "CreateInstanceExportTask":{ "name":"CreateInstanceExportTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateInstanceExportTaskRequest"}, "output":{"shape":"CreateInstanceExportTaskResult"} }, "CreateInternetGateway":{ "name":"CreateInternetGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateInternetGatewayRequest"}, "output":{"shape":"CreateInternetGatewayResult"} }, "CreateKeyPair":{ "name":"CreateKeyPair", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateKeyPairRequest"}, "output":{"shape":"KeyPair"} }, "CreateNatGateway":{ "name":"CreateNatGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateNatGatewayRequest"}, "output":{"shape":"CreateNatGatewayResult"} }, "CreateNetworkAcl":{ "name":"CreateNetworkAcl", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateNetworkAclRequest"}, "output":{"shape":"CreateNetworkAclResult"} }, "CreateNetworkAclEntry":{ "name":"CreateNetworkAclEntry", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateNetworkAclEntryRequest"} }, "CreateNetworkInterface":{ "name":"CreateNetworkInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateNetworkInterfaceRequest"}, "output":{"shape":"CreateNetworkInterfaceResult"} }, "CreatePlacementGroup":{ "name":"CreatePlacementGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreatePlacementGroupRequest"} }, "CreateReservedInstancesListing":{ "name":"CreateReservedInstancesListing", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateReservedInstancesListingRequest"}, "output":{"shape":"CreateReservedInstancesListingResult"} }, "CreateRoute":{ "name":"CreateRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateRouteRequest"}, "output":{"shape":"CreateRouteResult"} }, "CreateRouteTable":{ "name":"CreateRouteTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateRouteTableRequest"}, "output":{"shape":"CreateRouteTableResult"} }, "CreateSecurityGroup":{ "name":"CreateSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSecurityGroupRequest"}, "output":{"shape":"CreateSecurityGroupResult"} }, "CreateSnapshot":{ "name":"CreateSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSnapshotRequest"}, "output":{"shape":"Snapshot"} }, "CreateSpotDatafeedSubscription":{ "name":"CreateSpotDatafeedSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSpotDatafeedSubscriptionRequest"}, "output":{"shape":"CreateSpotDatafeedSubscriptionResult"} }, "CreateSubnet":{ "name":"CreateSubnet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSubnetRequest"}, "output":{"shape":"CreateSubnetResult"} }, "CreateTags":{ "name":"CreateTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateTagsRequest"} }, "CreateVolume":{ "name":"CreateVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVolumeRequest"}, "output":{"shape":"Volume"} }, "CreateVpc":{ "name":"CreateVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpcRequest"}, "output":{"shape":"CreateVpcResult"} }, "CreateVpcEndpoint":{ "name":"CreateVpcEndpoint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpcEndpointRequest"}, "output":{"shape":"CreateVpcEndpointResult"} }, "CreateVpcPeeringConnection":{ "name":"CreateVpcPeeringConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpcPeeringConnectionRequest"}, "output":{"shape":"CreateVpcPeeringConnectionResult"} }, "CreateVpnConnection":{ "name":"CreateVpnConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpnConnectionRequest"}, "output":{"shape":"CreateVpnConnectionResult"} }, "CreateVpnConnectionRoute":{ "name":"CreateVpnConnectionRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpnConnectionRouteRequest"} }, "CreateVpnGateway":{ "name":"CreateVpnGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVpnGatewayRequest"}, "output":{"shape":"CreateVpnGatewayResult"} }, "DeleteCustomerGateway":{ "name":"DeleteCustomerGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteCustomerGatewayRequest"} }, "DeleteDhcpOptions":{ "name":"DeleteDhcpOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDhcpOptionsRequest"} }, "DeleteFlowLogs":{ "name":"DeleteFlowLogs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteFlowLogsRequest"}, "output":{"shape":"DeleteFlowLogsResult"} }, "DeleteInternetGateway":{ "name":"DeleteInternetGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteInternetGatewayRequest"} }, "DeleteKeyPair":{ "name":"DeleteKeyPair", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteKeyPairRequest"} }, "DeleteNatGateway":{ "name":"DeleteNatGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteNatGatewayRequest"}, "output":{"shape":"DeleteNatGatewayResult"} }, "DeleteNetworkAcl":{ "name":"DeleteNetworkAcl", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteNetworkAclRequest"} }, "DeleteNetworkAclEntry":{ "name":"DeleteNetworkAclEntry", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteNetworkAclEntryRequest"} }, "DeleteNetworkInterface":{ "name":"DeleteNetworkInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteNetworkInterfaceRequest"} }, "DeletePlacementGroup":{ "name":"DeletePlacementGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeletePlacementGroupRequest"} }, "DeleteRoute":{ "name":"DeleteRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRouteRequest"} }, "DeleteRouteTable":{ "name":"DeleteRouteTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRouteTableRequest"} }, "DeleteSecurityGroup":{ "name":"DeleteSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSecurityGroupRequest"} }, "DeleteSnapshot":{ "name":"DeleteSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSnapshotRequest"} }, "DeleteSpotDatafeedSubscription":{ "name":"DeleteSpotDatafeedSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSpotDatafeedSubscriptionRequest"} }, "DeleteSubnet":{ "name":"DeleteSubnet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSubnetRequest"} }, "DeleteTags":{ "name":"DeleteTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteTagsRequest"} }, "DeleteVolume":{ "name":"DeleteVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVolumeRequest"} }, "DeleteVpc":{ "name":"DeleteVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpcRequest"} }, "DeleteVpcEndpoints":{ "name":"DeleteVpcEndpoints", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpcEndpointsRequest"}, "output":{"shape":"DeleteVpcEndpointsResult"} }, "DeleteVpcPeeringConnection":{ "name":"DeleteVpcPeeringConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpcPeeringConnectionRequest"}, "output":{"shape":"DeleteVpcPeeringConnectionResult"} }, "DeleteVpnConnection":{ "name":"DeleteVpnConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpnConnectionRequest"} }, "DeleteVpnConnectionRoute":{ "name":"DeleteVpnConnectionRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpnConnectionRouteRequest"} }, "DeleteVpnGateway":{ "name":"DeleteVpnGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVpnGatewayRequest"} }, "DeregisterImage":{ "name":"DeregisterImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeregisterImageRequest"} }, "DescribeAccountAttributes":{ "name":"DescribeAccountAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAccountAttributesRequest"}, "output":{"shape":"DescribeAccountAttributesResult"} }, "DescribeAddresses":{ "name":"DescribeAddresses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAddressesRequest"}, "output":{"shape":"DescribeAddressesResult"} }, "DescribeAvailabilityZones":{ "name":"DescribeAvailabilityZones", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAvailabilityZonesRequest"}, "output":{"shape":"DescribeAvailabilityZonesResult"} }, "DescribeBundleTasks":{ "name":"DescribeBundleTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeBundleTasksRequest"}, "output":{"shape":"DescribeBundleTasksResult"} }, "DescribeClassicLinkInstances":{ "name":"DescribeClassicLinkInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeClassicLinkInstancesRequest"}, "output":{"shape":"DescribeClassicLinkInstancesResult"} }, "DescribeConversionTasks":{ "name":"DescribeConversionTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeConversionTasksRequest"}, "output":{"shape":"DescribeConversionTasksResult"} }, "DescribeCustomerGateways":{ "name":"DescribeCustomerGateways", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeCustomerGatewaysRequest"}, "output":{"shape":"DescribeCustomerGatewaysResult"} }, "DescribeDhcpOptions":{ "name":"DescribeDhcpOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDhcpOptionsRequest"}, "output":{"shape":"DescribeDhcpOptionsResult"} }, "DescribeExportTasks":{ "name":"DescribeExportTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeExportTasksRequest"}, "output":{"shape":"DescribeExportTasksResult"} }, "DescribeFlowLogs":{ "name":"DescribeFlowLogs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeFlowLogsRequest"}, "output":{"shape":"DescribeFlowLogsResult"} }, "DescribeHostReservationOfferings":{ "name":"DescribeHostReservationOfferings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeHostReservationOfferingsRequest"}, "output":{"shape":"DescribeHostReservationOfferingsResult"} }, "DescribeHostReservations":{ "name":"DescribeHostReservations", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeHostReservationsRequest"}, "output":{"shape":"DescribeHostReservationsResult"} }, "DescribeHosts":{ "name":"DescribeHosts", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeHostsRequest"}, "output":{"shape":"DescribeHostsResult"} }, "DescribeIdFormat":{ "name":"DescribeIdFormat", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeIdFormatRequest"}, "output":{"shape":"DescribeIdFormatResult"} }, "DescribeIdentityIdFormat":{ "name":"DescribeIdentityIdFormat", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeIdentityIdFormatRequest"}, "output":{"shape":"DescribeIdentityIdFormatResult"} }, "DescribeImageAttribute":{ "name":"DescribeImageAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeImageAttributeRequest"}, "output":{"shape":"ImageAttribute"} }, "DescribeImages":{ "name":"DescribeImages", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeImagesRequest"}, "output":{"shape":"DescribeImagesResult"} }, "DescribeImportImageTasks":{ "name":"DescribeImportImageTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeImportImageTasksRequest"}, "output":{"shape":"DescribeImportImageTasksResult"} }, "DescribeImportSnapshotTasks":{ "name":"DescribeImportSnapshotTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeImportSnapshotTasksRequest"}, "output":{"shape":"DescribeImportSnapshotTasksResult"} }, "DescribeInstanceAttribute":{ "name":"DescribeInstanceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInstanceAttributeRequest"}, "output":{"shape":"InstanceAttribute"} }, "DescribeInstanceStatus":{ "name":"DescribeInstanceStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInstanceStatusRequest"}, "output":{"shape":"DescribeInstanceStatusResult"} }, "DescribeInstances":{ "name":"DescribeInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInstancesRequest"}, "output":{"shape":"DescribeInstancesResult"} }, "DescribeInternetGateways":{ "name":"DescribeInternetGateways", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInternetGatewaysRequest"}, "output":{"shape":"DescribeInternetGatewaysResult"} }, "DescribeKeyPairs":{ "name":"DescribeKeyPairs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeKeyPairsRequest"}, "output":{"shape":"DescribeKeyPairsResult"} }, "DescribeMovingAddresses":{ "name":"DescribeMovingAddresses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeMovingAddressesRequest"}, "output":{"shape":"DescribeMovingAddressesResult"} }, "DescribeNatGateways":{ "name":"DescribeNatGateways", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeNatGatewaysRequest"}, "output":{"shape":"DescribeNatGatewaysResult"} }, "DescribeNetworkAcls":{ "name":"DescribeNetworkAcls", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeNetworkAclsRequest"}, "output":{"shape":"DescribeNetworkAclsResult"} }, "DescribeNetworkInterfaceAttribute":{ "name":"DescribeNetworkInterfaceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeNetworkInterfaceAttributeRequest"}, "output":{"shape":"DescribeNetworkInterfaceAttributeResult"} }, "DescribeNetworkInterfaces":{ "name":"DescribeNetworkInterfaces", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeNetworkInterfacesRequest"}, "output":{"shape":"DescribeNetworkInterfacesResult"} }, "DescribePlacementGroups":{ "name":"DescribePlacementGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribePlacementGroupsRequest"}, "output":{"shape":"DescribePlacementGroupsResult"} }, "DescribePrefixLists":{ "name":"DescribePrefixLists", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribePrefixListsRequest"}, "output":{"shape":"DescribePrefixListsResult"} }, "DescribeRegions":{ "name":"DescribeRegions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRegionsRequest"}, "output":{"shape":"DescribeRegionsResult"} }, "DescribeReservedInstances":{ "name":"DescribeReservedInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedInstancesRequest"}, "output":{"shape":"DescribeReservedInstancesResult"} }, "DescribeReservedInstancesListings":{ "name":"DescribeReservedInstancesListings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedInstancesListingsRequest"}, "output":{"shape":"DescribeReservedInstancesListingsResult"} }, "DescribeReservedInstancesModifications":{ "name":"DescribeReservedInstancesModifications", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedInstancesModificationsRequest"}, "output":{"shape":"DescribeReservedInstancesModificationsResult"} }, "DescribeReservedInstancesOfferings":{ "name":"DescribeReservedInstancesOfferings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedInstancesOfferingsRequest"}, "output":{"shape":"DescribeReservedInstancesOfferingsResult"} }, "DescribeRouteTables":{ "name":"DescribeRouteTables", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRouteTablesRequest"}, "output":{"shape":"DescribeRouteTablesResult"} }, "DescribeScheduledInstanceAvailability":{ "name":"DescribeScheduledInstanceAvailability", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeScheduledInstanceAvailabilityRequest"}, "output":{"shape":"DescribeScheduledInstanceAvailabilityResult"} }, "DescribeScheduledInstances":{ "name":"DescribeScheduledInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeScheduledInstancesRequest"}, "output":{"shape":"DescribeScheduledInstancesResult"} }, "DescribeSecurityGroupReferences":{ "name":"DescribeSecurityGroupReferences", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSecurityGroupReferencesRequest"}, "output":{"shape":"DescribeSecurityGroupReferencesResult"} }, "DescribeSecurityGroups":{ "name":"DescribeSecurityGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSecurityGroupsRequest"}, "output":{"shape":"DescribeSecurityGroupsResult"} }, "DescribeSnapshotAttribute":{ "name":"DescribeSnapshotAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSnapshotAttributeRequest"}, "output":{"shape":"DescribeSnapshotAttributeResult"} }, "DescribeSnapshots":{ "name":"DescribeSnapshots", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSnapshotsRequest"}, "output":{"shape":"DescribeSnapshotsResult"} }, "DescribeSpotDatafeedSubscription":{ "name":"DescribeSpotDatafeedSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotDatafeedSubscriptionRequest"}, "output":{"shape":"DescribeSpotDatafeedSubscriptionResult"} }, "DescribeSpotFleetInstances":{ "name":"DescribeSpotFleetInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotFleetInstancesRequest"}, "output":{"shape":"DescribeSpotFleetInstancesResponse"} }, "DescribeSpotFleetRequestHistory":{ "name":"DescribeSpotFleetRequestHistory", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotFleetRequestHistoryRequest"}, "output":{"shape":"DescribeSpotFleetRequestHistoryResponse"} }, "DescribeSpotFleetRequests":{ "name":"DescribeSpotFleetRequests", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotFleetRequestsRequest"}, "output":{"shape":"DescribeSpotFleetRequestsResponse"} }, "DescribeSpotInstanceRequests":{ "name":"DescribeSpotInstanceRequests", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotInstanceRequestsRequest"}, "output":{"shape":"DescribeSpotInstanceRequestsResult"} }, "DescribeSpotPriceHistory":{ "name":"DescribeSpotPriceHistory", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSpotPriceHistoryRequest"}, "output":{"shape":"DescribeSpotPriceHistoryResult"} }, "DescribeStaleSecurityGroups":{ "name":"DescribeStaleSecurityGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeStaleSecurityGroupsRequest"}, "output":{"shape":"DescribeStaleSecurityGroupsResult"} }, "DescribeSubnets":{ "name":"DescribeSubnets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSubnetsRequest"}, "output":{"shape":"DescribeSubnetsResult"} }, "DescribeTags":{ "name":"DescribeTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTagsRequest"}, "output":{"shape":"DescribeTagsResult"} }, "DescribeVolumeAttribute":{ "name":"DescribeVolumeAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVolumeAttributeRequest"}, "output":{"shape":"DescribeVolumeAttributeResult"} }, "DescribeVolumeStatus":{ "name":"DescribeVolumeStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVolumeStatusRequest"}, "output":{"shape":"DescribeVolumeStatusResult"} }, "DescribeVolumes":{ "name":"DescribeVolumes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVolumesRequest"}, "output":{"shape":"DescribeVolumesResult"} }, "DescribeVpcAttribute":{ "name":"DescribeVpcAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcAttributeRequest"}, "output":{"shape":"DescribeVpcAttributeResult"} }, "DescribeVpcClassicLink":{ "name":"DescribeVpcClassicLink", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcClassicLinkRequest"}, "output":{"shape":"DescribeVpcClassicLinkResult"} }, "DescribeVpcClassicLinkDnsSupport":{ "name":"DescribeVpcClassicLinkDnsSupport", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcClassicLinkDnsSupportRequest"}, "output":{"shape":"DescribeVpcClassicLinkDnsSupportResult"} }, "DescribeVpcEndpointServices":{ "name":"DescribeVpcEndpointServices", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcEndpointServicesRequest"}, "output":{"shape":"DescribeVpcEndpointServicesResult"} }, "DescribeVpcEndpoints":{ "name":"DescribeVpcEndpoints", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcEndpointsRequest"}, "output":{"shape":"DescribeVpcEndpointsResult"} }, "DescribeVpcPeeringConnections":{ "name":"DescribeVpcPeeringConnections", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcPeeringConnectionsRequest"}, "output":{"shape":"DescribeVpcPeeringConnectionsResult"} }, "DescribeVpcs":{ "name":"DescribeVpcs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpcsRequest"}, "output":{"shape":"DescribeVpcsResult"} }, "DescribeVpnConnections":{ "name":"DescribeVpnConnections", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpnConnectionsRequest"}, "output":{"shape":"DescribeVpnConnectionsResult"} }, "DescribeVpnGateways":{ "name":"DescribeVpnGateways", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVpnGatewaysRequest"}, "output":{"shape":"DescribeVpnGatewaysResult"} }, "DetachClassicLinkVpc":{ "name":"DetachClassicLinkVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachClassicLinkVpcRequest"}, "output":{"shape":"DetachClassicLinkVpcResult"} }, "DetachInternetGateway":{ "name":"DetachInternetGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachInternetGatewayRequest"} }, "DetachNetworkInterface":{ "name":"DetachNetworkInterface", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachNetworkInterfaceRequest"} }, "DetachVolume":{ "name":"DetachVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachVolumeRequest"}, "output":{"shape":"VolumeAttachment"} }, "DetachVpnGateway":{ "name":"DetachVpnGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachVpnGatewayRequest"} }, "DisableVgwRoutePropagation":{ "name":"DisableVgwRoutePropagation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableVgwRoutePropagationRequest"} }, "DisableVpcClassicLink":{ "name":"DisableVpcClassicLink", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableVpcClassicLinkRequest"}, "output":{"shape":"DisableVpcClassicLinkResult"} }, "DisableVpcClassicLinkDnsSupport":{ "name":"DisableVpcClassicLinkDnsSupport", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableVpcClassicLinkDnsSupportRequest"}, "output":{"shape":"DisableVpcClassicLinkDnsSupportResult"} }, "DisassociateAddress":{ "name":"DisassociateAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisassociateAddressRequest"} }, "DisassociateRouteTable":{ "name":"DisassociateRouteTable", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisassociateRouteTableRequest"} }, "EnableVgwRoutePropagation":{ "name":"EnableVgwRoutePropagation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableVgwRoutePropagationRequest"} }, "EnableVolumeIO":{ "name":"EnableVolumeIO", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableVolumeIORequest"} }, "EnableVpcClassicLink":{ "name":"EnableVpcClassicLink", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableVpcClassicLinkRequest"}, "output":{"shape":"EnableVpcClassicLinkResult"} }, "EnableVpcClassicLinkDnsSupport":{ "name":"EnableVpcClassicLinkDnsSupport", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableVpcClassicLinkDnsSupportRequest"}, "output":{"shape":"EnableVpcClassicLinkDnsSupportResult"} }, "GetConsoleOutput":{ "name":"GetConsoleOutput", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetConsoleOutputRequest"}, "output":{"shape":"GetConsoleOutputResult"} }, "GetConsoleScreenshot":{ "name":"GetConsoleScreenshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetConsoleScreenshotRequest"}, "output":{"shape":"GetConsoleScreenshotResult"} }, "GetHostReservationPurchasePreview":{ "name":"GetHostReservationPurchasePreview", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetHostReservationPurchasePreviewRequest"}, "output":{"shape":"GetHostReservationPurchasePreviewResult"} }, "GetPasswordData":{ "name":"GetPasswordData", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetPasswordDataRequest"}, "output":{"shape":"GetPasswordDataResult"} }, "GetReservedInstancesExchangeQuote":{ "name":"GetReservedInstancesExchangeQuote", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetReservedInstancesExchangeQuoteRequest"}, "output":{"shape":"GetReservedInstancesExchangeQuoteResult"} }, "ImportImage":{ "name":"ImportImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportImageRequest"}, "output":{"shape":"ImportImageResult"} }, "ImportInstance":{ "name":"ImportInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportInstanceRequest"}, "output":{"shape":"ImportInstanceResult"} }, "ImportKeyPair":{ "name":"ImportKeyPair", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportKeyPairRequest"}, "output":{"shape":"ImportKeyPairResult"} }, "ImportSnapshot":{ "name":"ImportSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportSnapshotRequest"}, "output":{"shape":"ImportSnapshotResult"} }, "ImportVolume":{ "name":"ImportVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportVolumeRequest"}, "output":{"shape":"ImportVolumeResult"} }, "ModifyHosts":{ "name":"ModifyHosts", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyHostsRequest"}, "output":{"shape":"ModifyHostsResult"} }, "ModifyIdFormat":{ "name":"ModifyIdFormat", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyIdFormatRequest"} }, "ModifyIdentityIdFormat":{ "name":"ModifyIdentityIdFormat", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyIdentityIdFormatRequest"} }, "ModifyImageAttribute":{ "name":"ModifyImageAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyImageAttributeRequest"} }, "ModifyInstanceAttribute":{ "name":"ModifyInstanceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyInstanceAttributeRequest"} }, "ModifyInstancePlacement":{ "name":"ModifyInstancePlacement", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyInstancePlacementRequest"}, "output":{"shape":"ModifyInstancePlacementResult"} }, "ModifyNetworkInterfaceAttribute":{ "name":"ModifyNetworkInterfaceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyNetworkInterfaceAttributeRequest"} }, "ModifyReservedInstances":{ "name":"ModifyReservedInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyReservedInstancesRequest"}, "output":{"shape":"ModifyReservedInstancesResult"} }, "ModifySnapshotAttribute":{ "name":"ModifySnapshotAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifySnapshotAttributeRequest"} }, "ModifySpotFleetRequest":{ "name":"ModifySpotFleetRequest", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifySpotFleetRequestRequest"}, "output":{"shape":"ModifySpotFleetRequestResponse"} }, "ModifySubnetAttribute":{ "name":"ModifySubnetAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifySubnetAttributeRequest"} }, "ModifyVolumeAttribute":{ "name":"ModifyVolumeAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyVolumeAttributeRequest"} }, "ModifyVpcAttribute":{ "name":"ModifyVpcAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyVpcAttributeRequest"} }, "ModifyVpcEndpoint":{ "name":"ModifyVpcEndpoint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyVpcEndpointRequest"}, "output":{"shape":"ModifyVpcEndpointResult"} }, "ModifyVpcPeeringConnectionOptions":{ "name":"ModifyVpcPeeringConnectionOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyVpcPeeringConnectionOptionsRequest"}, "output":{"shape":"ModifyVpcPeeringConnectionOptionsResult"} }, "MonitorInstances":{ "name":"MonitorInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"MonitorInstancesRequest"}, "output":{"shape":"MonitorInstancesResult"} }, "MoveAddressToVpc":{ "name":"MoveAddressToVpc", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"MoveAddressToVpcRequest"}, "output":{"shape":"MoveAddressToVpcResult"} }, "PurchaseHostReservation":{ "name":"PurchaseHostReservation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PurchaseHostReservationRequest"}, "output":{"shape":"PurchaseHostReservationResult"} }, "PurchaseReservedInstancesOffering":{ "name":"PurchaseReservedInstancesOffering", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PurchaseReservedInstancesOfferingRequest"}, "output":{"shape":"PurchaseReservedInstancesOfferingResult"} }, "PurchaseScheduledInstances":{ "name":"PurchaseScheduledInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PurchaseScheduledInstancesRequest"}, "output":{"shape":"PurchaseScheduledInstancesResult"} }, "RebootInstances":{ "name":"RebootInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RebootInstancesRequest"} }, "RegisterImage":{ "name":"RegisterImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterImageRequest"}, "output":{"shape":"RegisterImageResult"} }, "RejectVpcPeeringConnection":{ "name":"RejectVpcPeeringConnection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RejectVpcPeeringConnectionRequest"}, "output":{"shape":"RejectVpcPeeringConnectionResult"} }, "ReleaseAddress":{ "name":"ReleaseAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReleaseAddressRequest"} }, "ReleaseHosts":{ "name":"ReleaseHosts", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReleaseHostsRequest"}, "output":{"shape":"ReleaseHostsResult"} }, "ReplaceNetworkAclAssociation":{ "name":"ReplaceNetworkAclAssociation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReplaceNetworkAclAssociationRequest"}, "output":{"shape":"ReplaceNetworkAclAssociationResult"} }, "ReplaceNetworkAclEntry":{ "name":"ReplaceNetworkAclEntry", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReplaceNetworkAclEntryRequest"} }, "ReplaceRoute":{ "name":"ReplaceRoute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReplaceRouteRequest"} }, "ReplaceRouteTableAssociation":{ "name":"ReplaceRouteTableAssociation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReplaceRouteTableAssociationRequest"}, "output":{"shape":"ReplaceRouteTableAssociationResult"} }, "ReportInstanceStatus":{ "name":"ReportInstanceStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReportInstanceStatusRequest"} }, "RequestSpotFleet":{ "name":"RequestSpotFleet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RequestSpotFleetRequest"}, "output":{"shape":"RequestSpotFleetResponse"} }, "RequestSpotInstances":{ "name":"RequestSpotInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RequestSpotInstancesRequest"}, "output":{"shape":"RequestSpotInstancesResult"} }, "ResetImageAttribute":{ "name":"ResetImageAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetImageAttributeRequest"} }, "ResetInstanceAttribute":{ "name":"ResetInstanceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetInstanceAttributeRequest"} }, "ResetNetworkInterfaceAttribute":{ "name":"ResetNetworkInterfaceAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetNetworkInterfaceAttributeRequest"} }, "ResetSnapshotAttribute":{ "name":"ResetSnapshotAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetSnapshotAttributeRequest"} }, "RestoreAddressToClassic":{ "name":"RestoreAddressToClassic", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreAddressToClassicRequest"}, "output":{"shape":"RestoreAddressToClassicResult"} }, "RevokeSecurityGroupEgress":{ "name":"RevokeSecurityGroupEgress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RevokeSecurityGroupEgressRequest"} }, "RevokeSecurityGroupIngress":{ "name":"RevokeSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RevokeSecurityGroupIngressRequest"} }, "RunInstances":{ "name":"RunInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RunInstancesRequest"}, "output":{"shape":"Reservation"} }, "RunScheduledInstances":{ "name":"RunScheduledInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RunScheduledInstancesRequest"}, "output":{"shape":"RunScheduledInstancesResult"} }, "StartInstances":{ "name":"StartInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartInstancesRequest"}, "output":{"shape":"StartInstancesResult"} }, "StopInstances":{ "name":"StopInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopInstancesRequest"}, "output":{"shape":"StopInstancesResult"} }, "TerminateInstances":{ "name":"TerminateInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"TerminateInstancesRequest"}, "output":{"shape":"TerminateInstancesResult"} }, "UnassignPrivateIpAddresses":{ "name":"UnassignPrivateIpAddresses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UnassignPrivateIpAddressesRequest"} }, "UnmonitorInstances":{ "name":"UnmonitorInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UnmonitorInstancesRequest"}, "output":{"shape":"UnmonitorInstancesResult"} } }, "shapes":{ "AcceptReservedInstancesExchangeQuoteRequest":{ "type":"structure", "required":["ReservedInstanceIds"], "members":{ "DryRun":{"shape":"Boolean"}, "ReservedInstanceIds":{ "shape":"ReservedInstanceIdSet", "locationName":"ReservedInstanceId" }, "TargetConfigurations":{ "shape":"TargetConfigurationRequestSet", "locationName":"TargetConfiguration" } } }, "AcceptReservedInstancesExchangeQuoteResult":{ "type":"structure", "members":{ "ExchangeId":{ "shape":"String", "locationName":"exchangeId" } } }, "AcceptVpcPeeringConnectionRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "AcceptVpcPeeringConnectionResult":{ "type":"structure", "members":{ "VpcPeeringConnection":{ "shape":"VpcPeeringConnection", "locationName":"vpcPeeringConnection" } } }, "AccountAttribute":{ "type":"structure", "members":{ "AttributeName":{ "shape":"String", "locationName":"attributeName" }, "AttributeValues":{ "shape":"AccountAttributeValueList", "locationName":"attributeValueSet" } } }, "AccountAttributeList":{ "type":"list", "member":{ "shape":"AccountAttribute", "locationName":"item" } }, "AccountAttributeName":{ "type":"string", "enum":[ "supported-platforms", "default-vpc" ] }, "AccountAttributeNameStringList":{ "type":"list", "member":{ "shape":"AccountAttributeName", "locationName":"attributeName" } }, "AccountAttributeValue":{ "type":"structure", "members":{ "AttributeValue":{ "shape":"String", "locationName":"attributeValue" } } }, "AccountAttributeValueList":{ "type":"list", "member":{ "shape":"AccountAttributeValue", "locationName":"item" } }, "ActiveInstance":{ "type":"structure", "members":{ "InstanceType":{ "shape":"String", "locationName":"instanceType" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "SpotInstanceRequestId":{ "shape":"String", "locationName":"spotInstanceRequestId" } } }, "ActiveInstanceSet":{ "type":"list", "member":{ "shape":"ActiveInstance", "locationName":"item" } }, "ActivityStatus":{ "type":"string", "enum":[ "error", "pending_fulfillment", "pending_termination", "fulfilled" ] }, "Address":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "AllocationId":{ "shape":"String", "locationName":"allocationId" }, "AssociationId":{ "shape":"String", "locationName":"associationId" }, "Domain":{ "shape":"DomainType", "locationName":"domain" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "NetworkInterfaceOwnerId":{ "shape":"String", "locationName":"networkInterfaceOwnerId" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" } } }, "AddressList":{ "type":"list", "member":{ "shape":"Address", "locationName":"item" } }, "Affinity":{ "type":"string", "enum":[ "default", "host" ] }, "AllocateAddressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Domain":{"shape":"DomainType"} } }, "AllocateAddressResult":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "Domain":{ "shape":"DomainType", "locationName":"domain" }, "AllocationId":{ "shape":"String", "locationName":"allocationId" } } }, "AllocateHostsRequest":{ "type":"structure", "required":[ "InstanceType", "Quantity", "AvailabilityZone" ], "members":{ "AutoPlacement":{ "shape":"AutoPlacement", "locationName":"autoPlacement" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "InstanceType":{ "shape":"String", "locationName":"instanceType" }, "Quantity":{ "shape":"Integer", "locationName":"quantity" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" } } }, "AllocateHostsResult":{ "type":"structure", "members":{ "HostIds":{ "shape":"ResponseHostIdList", "locationName":"hostIdSet" } } }, "AllocationIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"AllocationId" } }, "AllocationState":{ "type":"string", "enum":[ "available", "under-assessment", "permanent-failure", "released", "released-permanent-failure" ] }, "AllocationStrategy":{ "type":"string", "enum":[ "lowestPrice", "diversified" ] }, "ArchitectureValues":{ "type":"string", "enum":[ "i386", "x86_64" ] }, "AssignPrivateIpAddressesRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "PrivateIpAddresses":{ "shape":"PrivateIpAddressStringList", "locationName":"privateIpAddress" }, "SecondaryPrivateIpAddressCount":{ "shape":"Integer", "locationName":"secondaryPrivateIpAddressCount" }, "AllowReassignment":{ "shape":"Boolean", "locationName":"allowReassignment" } } }, "AssociateAddressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{"shape":"String"}, "PublicIp":{"shape":"String"}, "AllocationId":{"shape":"String"}, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "AllowReassociation":{ "shape":"Boolean", "locationName":"allowReassociation" } } }, "AssociateAddressResult":{ "type":"structure", "members":{ "AssociationId":{ "shape":"String", "locationName":"associationId" } } }, "AssociateDhcpOptionsRequest":{ "type":"structure", "required":[ "DhcpOptionsId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "DhcpOptionsId":{"shape":"String"}, "VpcId":{"shape":"String"} } }, "AssociateRouteTableRequest":{ "type":"structure", "required":[ "SubnetId", "RouteTableId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" } } }, "AssociateRouteTableResult":{ "type":"structure", "members":{ "AssociationId":{ "shape":"String", "locationName":"associationId" } } }, "AttachClassicLinkVpcRequest":{ "type":"structure", "required":[ "InstanceId", "VpcId", "Groups" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Groups":{ "shape":"GroupIdStringList", "locationName":"SecurityGroupId" } } }, "AttachClassicLinkVpcResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "AttachInternetGatewayRequest":{ "type":"structure", "required":[ "InternetGatewayId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InternetGatewayId":{ "shape":"String", "locationName":"internetGatewayId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "AttachNetworkInterfaceRequest":{ "type":"structure", "required":[ "NetworkInterfaceId", "InstanceId", "DeviceIndex" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "DeviceIndex":{ "shape":"Integer", "locationName":"deviceIndex" } } }, "AttachNetworkInterfaceResult":{ "type":"structure", "members":{ "AttachmentId":{ "shape":"String", "locationName":"attachmentId" } } }, "AttachVolumeRequest":{ "type":"structure", "required":[ "VolumeId", "InstanceId", "Device" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "InstanceId":{"shape":"String"}, "Device":{"shape":"String"} } }, "AttachVpnGatewayRequest":{ "type":"structure", "required":[ "VpnGatewayId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnGatewayId":{"shape":"String"}, "VpcId":{"shape":"String"} } }, "AttachVpnGatewayResult":{ "type":"structure", "members":{ "VpcAttachment":{ "shape":"VpcAttachment", "locationName":"attachment" } } }, "AttachmentStatus":{ "type":"string", "enum":[ "attaching", "attached", "detaching", "detached" ] }, "AttributeBooleanValue":{ "type":"structure", "members":{ "Value":{ "shape":"Boolean", "locationName":"value" } } }, "AttributeValue":{ "type":"structure", "members":{ "Value":{ "shape":"String", "locationName":"value" } } }, "AuthorizeSecurityGroupEgressRequest":{ "type":"structure", "required":["GroupId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupId":{ "shape":"String", "locationName":"groupId" }, "SourceSecurityGroupName":{ "shape":"String", "locationName":"sourceSecurityGroupName" }, "SourceSecurityGroupOwnerId":{ "shape":"String", "locationName":"sourceSecurityGroupOwnerId" }, "IpProtocol":{ "shape":"String", "locationName":"ipProtocol" }, "FromPort":{ "shape":"Integer", "locationName":"fromPort" }, "ToPort":{ "shape":"Integer", "locationName":"toPort" }, "CidrIp":{ "shape":"String", "locationName":"cidrIp" }, "IpPermissions":{ "shape":"IpPermissionList", "locationName":"ipPermissions" } } }, "AuthorizeSecurityGroupIngressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{"shape":"String"}, "GroupId":{"shape":"String"}, "SourceSecurityGroupName":{"shape":"String"}, "SourceSecurityGroupOwnerId":{"shape":"String"}, "IpProtocol":{"shape":"String"}, "FromPort":{"shape":"Integer"}, "ToPort":{"shape":"Integer"}, "CidrIp":{"shape":"String"}, "IpPermissions":{"shape":"IpPermissionList"} } }, "AutoPlacement":{ "type":"string", "enum":[ "on", "off" ] }, "AvailabilityZone":{ "type":"structure", "members":{ "ZoneName":{ "shape":"String", "locationName":"zoneName" }, "State":{ "shape":"AvailabilityZoneState", "locationName":"zoneState" }, "RegionName":{ "shape":"String", "locationName":"regionName" }, "Messages":{ "shape":"AvailabilityZoneMessageList", "locationName":"messageSet" } } }, "AvailabilityZoneList":{ "type":"list", "member":{ "shape":"AvailabilityZone", "locationName":"item" } }, "AvailabilityZoneMessage":{ "type":"structure", "members":{ "Message":{ "shape":"String", "locationName":"message" } } }, "AvailabilityZoneMessageList":{ "type":"list", "member":{ "shape":"AvailabilityZoneMessage", "locationName":"item" } }, "AvailabilityZoneState":{ "type":"string", "enum":[ "available", "information", "impaired", "unavailable" ] }, "AvailableCapacity":{ "type":"structure", "members":{ "AvailableInstanceCapacity":{ "shape":"AvailableInstanceCapacityList", "locationName":"availableInstanceCapacity" }, "AvailableVCpus":{ "shape":"Integer", "locationName":"availableVCpus" } } }, "AvailableInstanceCapacityList":{ "type":"list", "member":{ "shape":"InstanceCapacity", "locationName":"item" } }, "BatchState":{ "type":"string", "enum":[ "submitted", "active", "cancelled", "failed", "cancelled_running", "cancelled_terminating", "modifying" ] }, "Blob":{"type":"blob"}, "BlobAttributeValue":{ "type":"structure", "members":{ "Value":{ "shape":"Blob", "locationName":"value" } } }, "BlockDeviceMapping":{ "type":"structure", "members":{ "VirtualName":{ "shape":"String", "locationName":"virtualName" }, "DeviceName":{ "shape":"String", "locationName":"deviceName" }, "Ebs":{ "shape":"EbsBlockDevice", "locationName":"ebs" }, "NoDevice":{ "shape":"String", "locationName":"noDevice" } } }, "BlockDeviceMappingList":{ "type":"list", "member":{ "shape":"BlockDeviceMapping", "locationName":"item" } }, "BlockDeviceMappingRequestList":{ "type":"list", "member":{ "shape":"BlockDeviceMapping", "locationName":"BlockDeviceMapping" } }, "Boolean":{"type":"boolean"}, "BundleIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"BundleId" } }, "BundleInstanceRequest":{ "type":"structure", "required":[ "InstanceId", "Storage" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{"shape":"String"}, "Storage":{"shape":"Storage"} } }, "BundleInstanceResult":{ "type":"structure", "members":{ "BundleTask":{ "shape":"BundleTask", "locationName":"bundleInstanceTask" } } }, "BundleTask":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "BundleId":{ "shape":"String", "locationName":"bundleId" }, "State":{ "shape":"BundleTaskState", "locationName":"state" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "UpdateTime":{ "shape":"DateTime", "locationName":"updateTime" }, "Storage":{ "shape":"Storage", "locationName":"storage" }, "Progress":{ "shape":"String", "locationName":"progress" }, "BundleTaskError":{ "shape":"BundleTaskError", "locationName":"error" } } }, "BundleTaskError":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "BundleTaskList":{ "type":"list", "member":{ "shape":"BundleTask", "locationName":"item" } }, "BundleTaskState":{ "type":"string", "enum":[ "pending", "waiting-for-shutdown", "bundling", "storing", "cancelling", "complete", "failed" ] }, "CancelBatchErrorCode":{ "type":"string", "enum":[ "fleetRequestIdDoesNotExist", "fleetRequestIdMalformed", "fleetRequestNotInCancellableState", "unexpectedError" ] }, "CancelBundleTaskRequest":{ "type":"structure", "required":["BundleId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "BundleId":{"shape":"String"} } }, "CancelBundleTaskResult":{ "type":"structure", "members":{ "BundleTask":{ "shape":"BundleTask", "locationName":"bundleInstanceTask" } } }, "CancelConversionRequest":{ "type":"structure", "required":["ConversionTaskId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ConversionTaskId":{ "shape":"String", "locationName":"conversionTaskId" }, "ReasonMessage":{ "shape":"String", "locationName":"reasonMessage" } } }, "CancelExportTaskRequest":{ "type":"structure", "required":["ExportTaskId"], "members":{ "ExportTaskId":{ "shape":"String", "locationName":"exportTaskId" } } }, "CancelImportTaskRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "ImportTaskId":{"shape":"String"}, "CancelReason":{"shape":"String"} } }, "CancelImportTaskResult":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "State":{ "shape":"String", "locationName":"state" }, "PreviousState":{ "shape":"String", "locationName":"previousState" } } }, "CancelReservedInstancesListingRequest":{ "type":"structure", "required":["ReservedInstancesListingId"], "members":{ "ReservedInstancesListingId":{ "shape":"String", "locationName":"reservedInstancesListingId" } } }, "CancelReservedInstancesListingResult":{ "type":"structure", "members":{ "ReservedInstancesListings":{ "shape":"ReservedInstancesListingList", "locationName":"reservedInstancesListingsSet" } } }, "CancelSpotFleetRequestsError":{ "type":"structure", "required":[ "Code", "Message" ], "members":{ "Code":{ "shape":"CancelBatchErrorCode", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "CancelSpotFleetRequestsErrorItem":{ "type":"structure", "required":[ "SpotFleetRequestId", "Error" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "Error":{ "shape":"CancelSpotFleetRequestsError", "locationName":"error" } } }, "CancelSpotFleetRequestsErrorSet":{ "type":"list", "member":{ "shape":"CancelSpotFleetRequestsErrorItem", "locationName":"item" } }, "CancelSpotFleetRequestsRequest":{ "type":"structure", "required":[ "SpotFleetRequestIds", "TerminateInstances" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestIds":{ "shape":"ValueStringList", "locationName":"spotFleetRequestId" }, "TerminateInstances":{ "shape":"Boolean", "locationName":"terminateInstances" } } }, "CancelSpotFleetRequestsResponse":{ "type":"structure", "members":{ "UnsuccessfulFleetRequests":{ "shape":"CancelSpotFleetRequestsErrorSet", "locationName":"unsuccessfulFleetRequestSet" }, "SuccessfulFleetRequests":{ "shape":"CancelSpotFleetRequestsSuccessSet", "locationName":"successfulFleetRequestSet" } } }, "CancelSpotFleetRequestsSuccessItem":{ "type":"structure", "required":[ "SpotFleetRequestId", "CurrentSpotFleetRequestState", "PreviousSpotFleetRequestState" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "CurrentSpotFleetRequestState":{ "shape":"BatchState", "locationName":"currentSpotFleetRequestState" }, "PreviousSpotFleetRequestState":{ "shape":"BatchState", "locationName":"previousSpotFleetRequestState" } } }, "CancelSpotFleetRequestsSuccessSet":{ "type":"list", "member":{ "shape":"CancelSpotFleetRequestsSuccessItem", "locationName":"item" } }, "CancelSpotInstanceRequestState":{ "type":"string", "enum":[ "active", "open", "closed", "cancelled", "completed" ] }, "CancelSpotInstanceRequestsRequest":{ "type":"structure", "required":["SpotInstanceRequestIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotInstanceRequestIds":{ "shape":"SpotInstanceRequestIdList", "locationName":"SpotInstanceRequestId" } } }, "CancelSpotInstanceRequestsResult":{ "type":"structure", "members":{ "CancelledSpotInstanceRequests":{ "shape":"CancelledSpotInstanceRequestList", "locationName":"spotInstanceRequestSet" } } }, "CancelledSpotInstanceRequest":{ "type":"structure", "members":{ "SpotInstanceRequestId":{ "shape":"String", "locationName":"spotInstanceRequestId" }, "State":{ "shape":"CancelSpotInstanceRequestState", "locationName":"state" } } }, "CancelledSpotInstanceRequestList":{ "type":"list", "member":{ "shape":"CancelledSpotInstanceRequest", "locationName":"item" } }, "ClassicLinkDnsSupport":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "ClassicLinkDnsSupported":{ "shape":"Boolean", "locationName":"classicLinkDnsSupported" } } }, "ClassicLinkDnsSupportList":{ "type":"list", "member":{ "shape":"ClassicLinkDnsSupport", "locationName":"item" } }, "ClassicLinkInstance":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "ClassicLinkInstanceList":{ "type":"list", "member":{ "shape":"ClassicLinkInstance", "locationName":"item" } }, "ClientData":{ "type":"structure", "members":{ "UploadStart":{"shape":"DateTime"}, "UploadEnd":{"shape":"DateTime"}, "UploadSize":{"shape":"Double"}, "Comment":{"shape":"String"} } }, "ConfirmProductInstanceRequest":{ "type":"structure", "required":[ "ProductCode", "InstanceId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ProductCode":{"shape":"String"}, "InstanceId":{"shape":"String"} } }, "ConfirmProductInstanceResult":{ "type":"structure", "members":{ "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "Return":{ "shape":"Boolean", "locationName":"return" } } }, "ContainerFormat":{ "type":"string", "enum":["ova"] }, "ConversionIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "ConversionTask":{ "type":"structure", "required":[ "ConversionTaskId", "State" ], "members":{ "ConversionTaskId":{ "shape":"String", "locationName":"conversionTaskId" }, "ExpirationTime":{ "shape":"String", "locationName":"expirationTime" }, "ImportInstance":{ "shape":"ImportInstanceTaskDetails", "locationName":"importInstance" }, "ImportVolume":{ "shape":"ImportVolumeTaskDetails", "locationName":"importVolume" }, "State":{ "shape":"ConversionTaskState", "locationName":"state" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "ConversionTaskState":{ "type":"string", "enum":[ "active", "cancelling", "cancelled", "completed" ] }, "CopyImageRequest":{ "type":"structure", "required":[ "SourceRegion", "SourceImageId", "Name" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SourceRegion":{"shape":"String"}, "SourceImageId":{"shape":"String"}, "Name":{"shape":"String"}, "Description":{"shape":"String"}, "ClientToken":{"shape":"String"}, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{ "shape":"String", "locationName":"kmsKeyId" } } }, "CopyImageResult":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" } } }, "CopySnapshotRequest":{ "type":"structure", "required":[ "SourceRegion", "SourceSnapshotId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SourceRegion":{"shape":"String"}, "SourceSnapshotId":{"shape":"String"}, "Description":{"shape":"String"}, "DestinationRegion":{ "shape":"String", "locationName":"destinationRegion" }, "PresignedUrl":{ "shape":"String", "locationName":"presignedUrl" }, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{ "shape":"String", "locationName":"kmsKeyId" } } }, "CopySnapshotResult":{ "type":"structure", "members":{ "SnapshotId":{ "shape":"String", "locationName":"snapshotId" } } }, "CreateCustomerGatewayRequest":{ "type":"structure", "required":[ "Type", "PublicIp", "BgpAsn" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Type":{"shape":"GatewayType"}, "PublicIp":{ "shape":"String", "locationName":"IpAddress" }, "BgpAsn":{"shape":"Integer"} } }, "CreateCustomerGatewayResult":{ "type":"structure", "members":{ "CustomerGateway":{ "shape":"CustomerGateway", "locationName":"customerGateway" } } }, "CreateDhcpOptionsRequest":{ "type":"structure", "required":["DhcpConfigurations"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "DhcpConfigurations":{ "shape":"NewDhcpConfigurationList", "locationName":"dhcpConfiguration" } } }, "CreateDhcpOptionsResult":{ "type":"structure", "members":{ "DhcpOptions":{ "shape":"DhcpOptions", "locationName":"dhcpOptions" } } }, "CreateFlowLogsRequest":{ "type":"structure", "required":[ "ResourceIds", "ResourceType", "TrafficType", "LogGroupName", "DeliverLogsPermissionArn" ], "members":{ "ResourceIds":{ "shape":"ValueStringList", "locationName":"ResourceId" }, "ResourceType":{"shape":"FlowLogsResourceType"}, "TrafficType":{"shape":"TrafficType"}, "LogGroupName":{"shape":"String"}, "DeliverLogsPermissionArn":{"shape":"String"}, "ClientToken":{"shape":"String"} } }, "CreateFlowLogsResult":{ "type":"structure", "members":{ "FlowLogIds":{ "shape":"ValueStringList", "locationName":"flowLogIdSet" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "Unsuccessful":{ "shape":"UnsuccessfulItemSet", "locationName":"unsuccessful" } } }, "CreateImageRequest":{ "type":"structure", "required":[ "InstanceId", "Name" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Name":{ "shape":"String", "locationName":"name" }, "Description":{ "shape":"String", "locationName":"description" }, "NoReboot":{ "shape":"Boolean", "locationName":"noReboot" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingRequestList", "locationName":"blockDeviceMapping" } } }, "CreateImageResult":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" } } }, "CreateInstanceExportTaskRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "Description":{ "shape":"String", "locationName":"description" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "TargetEnvironment":{ "shape":"ExportEnvironment", "locationName":"targetEnvironment" }, "ExportToS3Task":{ "shape":"ExportToS3TaskSpecification", "locationName":"exportToS3" } } }, "CreateInstanceExportTaskResult":{ "type":"structure", "members":{ "ExportTask":{ "shape":"ExportTask", "locationName":"exportTask" } } }, "CreateInternetGatewayRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "CreateInternetGatewayResult":{ "type":"structure", "members":{ "InternetGateway":{ "shape":"InternetGateway", "locationName":"internetGateway" } } }, "CreateKeyPairRequest":{ "type":"structure", "required":["KeyName"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "KeyName":{"shape":"String"} } }, "CreateNatGatewayRequest":{ "type":"structure", "required":[ "SubnetId", "AllocationId" ], "members":{ "SubnetId":{"shape":"String"}, "AllocationId":{"shape":"String"}, "ClientToken":{"shape":"String"} } }, "CreateNatGatewayResult":{ "type":"structure", "members":{ "NatGateway":{ "shape":"NatGateway", "locationName":"natGateway" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "CreateNetworkAclEntryRequest":{ "type":"structure", "required":[ "NetworkAclId", "RuleNumber", "Protocol", "RuleAction", "Egress", "CidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "RuleNumber":{ "shape":"Integer", "locationName":"ruleNumber" }, "Protocol":{ "shape":"String", "locationName":"protocol" }, "RuleAction":{ "shape":"RuleAction", "locationName":"ruleAction" }, "Egress":{ "shape":"Boolean", "locationName":"egress" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "IcmpTypeCode":{ "shape":"IcmpTypeCode", "locationName":"Icmp" }, "PortRange":{ "shape":"PortRange", "locationName":"portRange" } } }, "CreateNetworkAclRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "CreateNetworkAclResult":{ "type":"structure", "members":{ "NetworkAcl":{ "shape":"NetworkAcl", "locationName":"networkAcl" } } }, "CreateNetworkInterfaceRequest":{ "type":"structure", "required":["SubnetId"], "members":{ "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "Description":{ "shape":"String", "locationName":"description" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "Groups":{ "shape":"SecurityGroupIdStringList", "locationName":"SecurityGroupId" }, "PrivateIpAddresses":{ "shape":"PrivateIpAddressSpecificationList", "locationName":"privateIpAddresses" }, "SecondaryPrivateIpAddressCount":{ "shape":"Integer", "locationName":"secondaryPrivateIpAddressCount" }, "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "CreateNetworkInterfaceResult":{ "type":"structure", "members":{ "NetworkInterface":{ "shape":"NetworkInterface", "locationName":"networkInterface" } } }, "CreatePlacementGroupRequest":{ "type":"structure", "required":[ "GroupName", "Strategy" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "Strategy":{ "shape":"PlacementStrategy", "locationName":"strategy" } } }, "CreateReservedInstancesListingRequest":{ "type":"structure", "required":[ "ReservedInstancesId", "InstanceCount", "PriceSchedules", "ClientToken" ], "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "PriceSchedules":{ "shape":"PriceScheduleSpecificationList", "locationName":"priceSchedules" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "CreateReservedInstancesListingResult":{ "type":"structure", "members":{ "ReservedInstancesListings":{ "shape":"ReservedInstancesListingList", "locationName":"reservedInstancesListingsSet" } } }, "CreateRouteRequest":{ "type":"structure", "required":[ "RouteTableId", "DestinationCidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" }, "GatewayId":{ "shape":"String", "locationName":"gatewayId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" }, "NatGatewayId":{ "shape":"String", "locationName":"natGatewayId" } } }, "CreateRouteResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "CreateRouteTableRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "CreateRouteTableResult":{ "type":"structure", "members":{ "RouteTable":{ "shape":"RouteTable", "locationName":"routeTable" } } }, "CreateSecurityGroupRequest":{ "type":"structure", "required":[ "GroupName", "Description" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{"shape":"String"}, "Description":{ "shape":"String", "locationName":"GroupDescription" }, "VpcId":{"shape":"String"} } }, "CreateSecurityGroupResult":{ "type":"structure", "members":{ "GroupId":{ "shape":"String", "locationName":"groupId" } } }, "CreateSnapshotRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "Description":{"shape":"String"} } }, "CreateSpotDatafeedSubscriptionRequest":{ "type":"structure", "required":["Bucket"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Bucket":{ "shape":"String", "locationName":"bucket" }, "Prefix":{ "shape":"String", "locationName":"prefix" } } }, "CreateSpotDatafeedSubscriptionResult":{ "type":"structure", "members":{ "SpotDatafeedSubscription":{ "shape":"SpotDatafeedSubscription", "locationName":"spotDatafeedSubscription" } } }, "CreateSubnetRequest":{ "type":"structure", "required":[ "VpcId", "CidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{"shape":"String"}, "CidrBlock":{"shape":"String"}, "AvailabilityZone":{"shape":"String"} } }, "CreateSubnetResult":{ "type":"structure", "members":{ "Subnet":{ "shape":"Subnet", "locationName":"subnet" } } }, "CreateTagsRequest":{ "type":"structure", "required":[ "Resources", "Tags" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Resources":{ "shape":"ResourceIdList", "locationName":"ResourceId" }, "Tags":{ "shape":"TagList", "locationName":"Tag" } } }, "CreateVolumePermission":{ "type":"structure", "members":{ "UserId":{ "shape":"String", "locationName":"userId" }, "Group":{ "shape":"PermissionGroup", "locationName":"group" } } }, "CreateVolumePermissionList":{ "type":"list", "member":{ "shape":"CreateVolumePermission", "locationName":"item" } }, "CreateVolumePermissionModifications":{ "type":"structure", "members":{ "Add":{"shape":"CreateVolumePermissionList"}, "Remove":{"shape":"CreateVolumePermissionList"} } }, "CreateVolumeRequest":{ "type":"structure", "required":["AvailabilityZone"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Size":{"shape":"Integer"}, "SnapshotId":{"shape":"String"}, "AvailabilityZone":{"shape":"String"}, "VolumeType":{"shape":"VolumeType"}, "Iops":{"shape":"Integer"}, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{"shape":"String"} } }, "CreateVpcEndpointRequest":{ "type":"structure", "required":[ "VpcId", "ServiceName" ], "members":{ "DryRun":{"shape":"Boolean"}, "VpcId":{"shape":"String"}, "ServiceName":{"shape":"String"}, "PolicyDocument":{"shape":"String"}, "RouteTableIds":{ "shape":"ValueStringList", "locationName":"RouteTableId" }, "ClientToken":{"shape":"String"} } }, "CreateVpcEndpointResult":{ "type":"structure", "members":{ "VpcEndpoint":{ "shape":"VpcEndpoint", "locationName":"vpcEndpoint" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "CreateVpcPeeringConnectionRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "PeerVpcId":{ "shape":"String", "locationName":"peerVpcId" }, "PeerOwnerId":{ "shape":"String", "locationName":"peerOwnerId" } } }, "CreateVpcPeeringConnectionResult":{ "type":"structure", "members":{ "VpcPeeringConnection":{ "shape":"VpcPeeringConnection", "locationName":"vpcPeeringConnection" } } }, "CreateVpcRequest":{ "type":"structure", "required":["CidrBlock"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "CidrBlock":{"shape":"String"}, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" } } }, "CreateVpcResult":{ "type":"structure", "members":{ "Vpc":{ "shape":"Vpc", "locationName":"vpc" } } }, "CreateVpnConnectionRequest":{ "type":"structure", "required":[ "Type", "CustomerGatewayId", "VpnGatewayId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Type":{"shape":"String"}, "CustomerGatewayId":{"shape":"String"}, "VpnGatewayId":{"shape":"String"}, "Options":{ "shape":"VpnConnectionOptionsSpecification", "locationName":"options" } } }, "CreateVpnConnectionResult":{ "type":"structure", "members":{ "VpnConnection":{ "shape":"VpnConnection", "locationName":"vpnConnection" } } }, "CreateVpnConnectionRouteRequest":{ "type":"structure", "required":[ "VpnConnectionId", "DestinationCidrBlock" ], "members":{ "VpnConnectionId":{"shape":"String"}, "DestinationCidrBlock":{"shape":"String"} } }, "CreateVpnGatewayRequest":{ "type":"structure", "required":["Type"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Type":{"shape":"GatewayType"}, "AvailabilityZone":{"shape":"String"} } }, "CreateVpnGatewayResult":{ "type":"structure", "members":{ "VpnGateway":{ "shape":"VpnGateway", "locationName":"vpnGateway" } } }, "CurrencyCodeValues":{ "type":"string", "enum":["USD"] }, "CustomerGateway":{ "type":"structure", "members":{ "CustomerGatewayId":{ "shape":"String", "locationName":"customerGatewayId" }, "State":{ "shape":"String", "locationName":"state" }, "Type":{ "shape":"String", "locationName":"type" }, "IpAddress":{ "shape":"String", "locationName":"ipAddress" }, "BgpAsn":{ "shape":"String", "locationName":"bgpAsn" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "CustomerGatewayIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"CustomerGatewayId" } }, "CustomerGatewayList":{ "type":"list", "member":{ "shape":"CustomerGateway", "locationName":"item" } }, "DatafeedSubscriptionState":{ "type":"string", "enum":[ "Active", "Inactive" ] }, "DateTime":{"type":"timestamp"}, "DeleteCustomerGatewayRequest":{ "type":"structure", "required":["CustomerGatewayId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "CustomerGatewayId":{"shape":"String"} } }, "DeleteDhcpOptionsRequest":{ "type":"structure", "required":["DhcpOptionsId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "DhcpOptionsId":{"shape":"String"} } }, "DeleteFlowLogsRequest":{ "type":"structure", "required":["FlowLogIds"], "members":{ "FlowLogIds":{ "shape":"ValueStringList", "locationName":"FlowLogId" } } }, "DeleteFlowLogsResult":{ "type":"structure", "members":{ "Unsuccessful":{ "shape":"UnsuccessfulItemSet", "locationName":"unsuccessful" } } }, "DeleteInternetGatewayRequest":{ "type":"structure", "required":["InternetGatewayId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InternetGatewayId":{ "shape":"String", "locationName":"internetGatewayId" } } }, "DeleteKeyPairRequest":{ "type":"structure", "required":["KeyName"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "KeyName":{"shape":"String"} } }, "DeleteNatGatewayRequest":{ "type":"structure", "required":["NatGatewayId"], "members":{ "NatGatewayId":{"shape":"String"} } }, "DeleteNatGatewayResult":{ "type":"structure", "members":{ "NatGatewayId":{ "shape":"String", "locationName":"natGatewayId" } } }, "DeleteNetworkAclEntryRequest":{ "type":"structure", "required":[ "NetworkAclId", "RuleNumber", "Egress" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "RuleNumber":{ "shape":"Integer", "locationName":"ruleNumber" }, "Egress":{ "shape":"Boolean", "locationName":"egress" } } }, "DeleteNetworkAclRequest":{ "type":"structure", "required":["NetworkAclId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" } } }, "DeleteNetworkInterfaceRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" } } }, "DeletePlacementGroupRequest":{ "type":"structure", "required":["GroupName"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{ "shape":"String", "locationName":"groupName" } } }, "DeleteRouteRequest":{ "type":"structure", "required":[ "RouteTableId", "DestinationCidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" } } }, "DeleteRouteTableRequest":{ "type":"structure", "required":["RouteTableId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" } } }, "DeleteSecurityGroupRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{"shape":"String"}, "GroupId":{"shape":"String"} } }, "DeleteSnapshotRequest":{ "type":"structure", "required":["SnapshotId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotId":{"shape":"String"} } }, "DeleteSpotDatafeedSubscriptionRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "DeleteSubnetRequest":{ "type":"structure", "required":["SubnetId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SubnetId":{"shape":"String"} } }, "DeleteTagsRequest":{ "type":"structure", "required":["Resources"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Resources":{ "shape":"ResourceIdList", "locationName":"resourceId" }, "Tags":{ "shape":"TagList", "locationName":"tag" } } }, "DeleteVolumeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"} } }, "DeleteVpcEndpointsRequest":{ "type":"structure", "required":["VpcEndpointIds"], "members":{ "DryRun":{"shape":"Boolean"}, "VpcEndpointIds":{ "shape":"ValueStringList", "locationName":"VpcEndpointId" } } }, "DeleteVpcEndpointsResult":{ "type":"structure", "members":{ "Unsuccessful":{ "shape":"UnsuccessfulItemSet", "locationName":"unsuccessful" } } }, "DeleteVpcPeeringConnectionRequest":{ "type":"structure", "required":["VpcPeeringConnectionId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "DeleteVpcPeeringConnectionResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "DeleteVpcRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{"shape":"String"} } }, "DeleteVpnConnectionRequest":{ "type":"structure", "required":["VpnConnectionId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnConnectionId":{"shape":"String"} } }, "DeleteVpnConnectionRouteRequest":{ "type":"structure", "required":[ "VpnConnectionId", "DestinationCidrBlock" ], "members":{ "VpnConnectionId":{"shape":"String"}, "DestinationCidrBlock":{"shape":"String"} } }, "DeleteVpnGatewayRequest":{ "type":"structure", "required":["VpnGatewayId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnGatewayId":{"shape":"String"} } }, "DeregisterImageRequest":{ "type":"structure", "required":["ImageId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"} } }, "DescribeAccountAttributesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AttributeNames":{ "shape":"AccountAttributeNameStringList", "locationName":"attributeName" } } }, "DescribeAccountAttributesResult":{ "type":"structure", "members":{ "AccountAttributes":{ "shape":"AccountAttributeList", "locationName":"accountAttributeSet" } } }, "DescribeAddressesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIps":{ "shape":"PublicIpStringList", "locationName":"PublicIp" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "AllocationIds":{ "shape":"AllocationIdList", "locationName":"AllocationId" } } }, "DescribeAddressesResult":{ "type":"structure", "members":{ "Addresses":{ "shape":"AddressList", "locationName":"addressesSet" } } }, "DescribeAvailabilityZonesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ZoneNames":{ "shape":"ZoneNameStringList", "locationName":"ZoneName" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeAvailabilityZonesResult":{ "type":"structure", "members":{ "AvailabilityZones":{ "shape":"AvailabilityZoneList", "locationName":"availabilityZoneInfo" } } }, "DescribeBundleTasksRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "BundleIds":{ "shape":"BundleIdStringList", "locationName":"BundleId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeBundleTasksResult":{ "type":"structure", "members":{ "BundleTasks":{ "shape":"BundleTaskList", "locationName":"bundleInstanceTasksSet" } } }, "DescribeClassicLinkInstancesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeClassicLinkInstancesResult":{ "type":"structure", "members":{ "Instances":{ "shape":"ClassicLinkInstanceList", "locationName":"instancesSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeConversionTaskList":{ "type":"list", "member":{ "shape":"ConversionTask", "locationName":"item" } }, "DescribeConversionTasksRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ConversionTaskIds":{ "shape":"ConversionIdStringList", "locationName":"conversionTaskId" } } }, "DescribeConversionTasksResult":{ "type":"structure", "members":{ "ConversionTasks":{ "shape":"DescribeConversionTaskList", "locationName":"conversionTasks" } } }, "DescribeCustomerGatewaysRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "CustomerGatewayIds":{ "shape":"CustomerGatewayIdStringList", "locationName":"CustomerGatewayId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeCustomerGatewaysResult":{ "type":"structure", "members":{ "CustomerGateways":{ "shape":"CustomerGatewayList", "locationName":"customerGatewaySet" } } }, "DescribeDhcpOptionsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "DhcpOptionsIds":{ "shape":"DhcpOptionsIdStringList", "locationName":"DhcpOptionsId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeDhcpOptionsResult":{ "type":"structure", "members":{ "DhcpOptions":{ "shape":"DhcpOptionsList", "locationName":"dhcpOptionsSet" } } }, "DescribeExportTasksRequest":{ "type":"structure", "members":{ "ExportTaskIds":{ "shape":"ExportTaskIdStringList", "locationName":"exportTaskId" } } }, "DescribeExportTasksResult":{ "type":"structure", "members":{ "ExportTasks":{ "shape":"ExportTaskList", "locationName":"exportTaskSet" } } }, "DescribeFlowLogsRequest":{ "type":"structure", "members":{ "FlowLogIds":{ "shape":"ValueStringList", "locationName":"FlowLogId" }, "Filter":{"shape":"FilterList"}, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"} } }, "DescribeFlowLogsResult":{ "type":"structure", "members":{ "FlowLogs":{ "shape":"FlowLogSet", "locationName":"flowLogSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeHostReservationOfferingsRequest":{ "type":"structure", "members":{ "OfferingId":{"shape":"String"}, "MinDuration":{"shape":"Integer"}, "MaxDuration":{"shape":"Integer"}, "Filter":{"shape":"FilterList"}, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribeHostReservationOfferingsResult":{ "type":"structure", "members":{ "OfferingSet":{ "shape":"HostOfferingSet", "locationName":"offeringSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeHostReservationsRequest":{ "type":"structure", "members":{ "HostReservationIdSet":{"shape":"HostReservationIdSet"}, "Filter":{"shape":"FilterList"}, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribeHostReservationsResult":{ "type":"structure", "members":{ "HostReservationSet":{ "shape":"HostReservationSet", "locationName":"hostReservationSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeHostsRequest":{ "type":"structure", "members":{ "HostIds":{ "shape":"RequestHostIdList", "locationName":"hostId" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" }, "Filter":{ "shape":"FilterList", "locationName":"filter" } } }, "DescribeHostsResult":{ "type":"structure", "members":{ "Hosts":{ "shape":"HostList", "locationName":"hostSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeIdFormatRequest":{ "type":"structure", "members":{ "Resource":{"shape":"String"} } }, "DescribeIdFormatResult":{ "type":"structure", "members":{ "Statuses":{ "shape":"IdFormatList", "locationName":"statusSet" } } }, "DescribeIdentityIdFormatRequest":{ "type":"structure", "required":["PrincipalArn"], "members":{ "Resource":{ "shape":"String", "locationName":"resource" }, "PrincipalArn":{ "shape":"String", "locationName":"principalArn" } } }, "DescribeIdentityIdFormatResult":{ "type":"structure", "members":{ "Statuses":{ "shape":"IdFormatList", "locationName":"statusSet" } } }, "DescribeImageAttributeRequest":{ "type":"structure", "required":[ "ImageId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"}, "Attribute":{"shape":"ImageAttributeName"} } }, "DescribeImagesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageIds":{ "shape":"ImageIdStringList", "locationName":"ImageId" }, "Owners":{ "shape":"OwnerStringList", "locationName":"Owner" }, "ExecutableUsers":{ "shape":"ExecutableByStringList", "locationName":"ExecutableBy" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeImagesResult":{ "type":"structure", "members":{ "Images":{ "shape":"ImageList", "locationName":"imagesSet" } } }, "DescribeImportImageTasksRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "ImportTaskIds":{ "shape":"ImportTaskIdList", "locationName":"ImportTaskId" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"}, "Filters":{"shape":"FilterList"} } }, "DescribeImportImageTasksResult":{ "type":"structure", "members":{ "ImportImageTasks":{ "shape":"ImportImageTaskList", "locationName":"importImageTaskSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeImportSnapshotTasksRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "ImportTaskIds":{ "shape":"ImportTaskIdList", "locationName":"ImportTaskId" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"}, "Filters":{"shape":"FilterList"} } }, "DescribeImportSnapshotTasksResult":{ "type":"structure", "members":{ "ImportSnapshotTasks":{ "shape":"ImportSnapshotTaskList", "locationName":"importSnapshotTaskSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeInstanceAttributeRequest":{ "type":"structure", "required":[ "InstanceId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Attribute":{ "shape":"InstanceAttributeName", "locationName":"attribute" } } }, "DescribeInstanceStatusRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"}, "IncludeAllInstances":{ "shape":"Boolean", "locationName":"includeAllInstances" } } }, "DescribeInstanceStatusResult":{ "type":"structure", "members":{ "InstanceStatuses":{ "shape":"InstanceStatusList", "locationName":"instanceStatusSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeInstancesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeInstancesResult":{ "type":"structure", "members":{ "Reservations":{ "shape":"ReservationList", "locationName":"reservationSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeInternetGatewaysRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InternetGatewayIds":{ "shape":"ValueStringList", "locationName":"internetGatewayId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeInternetGatewaysResult":{ "type":"structure", "members":{ "InternetGateways":{ "shape":"InternetGatewayList", "locationName":"internetGatewaySet" } } }, "DescribeKeyPairsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "KeyNames":{ "shape":"KeyNameStringList", "locationName":"KeyName" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeKeyPairsResult":{ "type":"structure", "members":{ "KeyPairs":{ "shape":"KeyPairList", "locationName":"keySet" } } }, "DescribeMovingAddressesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIps":{ "shape":"ValueStringList", "locationName":"publicIp" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "Filters":{ "shape":"FilterList", "locationName":"filter" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeMovingAddressesResult":{ "type":"structure", "members":{ "MovingAddressStatuses":{ "shape":"MovingAddressStatusSet", "locationName":"movingAddressStatusSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeNatGatewaysRequest":{ "type":"structure", "members":{ "NatGatewayIds":{ "shape":"ValueStringList", "locationName":"NatGatewayId" }, "Filter":{"shape":"FilterList"}, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribeNatGatewaysResult":{ "type":"structure", "members":{ "NatGateways":{ "shape":"NatGatewayList", "locationName":"natGatewaySet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeNetworkAclsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclIds":{ "shape":"ValueStringList", "locationName":"NetworkAclId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeNetworkAclsResult":{ "type":"structure", "members":{ "NetworkAcls":{ "shape":"NetworkAclList", "locationName":"networkAclSet" } } }, "DescribeNetworkInterfaceAttributeRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "Attribute":{ "shape":"NetworkInterfaceAttribute", "locationName":"attribute" } } }, "DescribeNetworkInterfaceAttributeResult":{ "type":"structure", "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "Description":{ "shape":"AttributeValue", "locationName":"description" }, "SourceDestCheck":{ "shape":"AttributeBooleanValue", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Attachment":{ "shape":"NetworkInterfaceAttachment", "locationName":"attachment" } } }, "DescribeNetworkInterfacesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceIds":{ "shape":"NetworkInterfaceIdList", "locationName":"NetworkInterfaceId" }, "Filters":{ "shape":"FilterList", "locationName":"filter" } } }, "DescribeNetworkInterfacesResult":{ "type":"structure", "members":{ "NetworkInterfaces":{ "shape":"NetworkInterfaceList", "locationName":"networkInterfaceSet" } } }, "DescribePlacementGroupsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupNames":{ "shape":"PlacementGroupStringList", "locationName":"groupName" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribePlacementGroupsResult":{ "type":"structure", "members":{ "PlacementGroups":{ "shape":"PlacementGroupList", "locationName":"placementGroupSet" } } }, "DescribePrefixListsRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "PrefixListIds":{ "shape":"ValueStringList", "locationName":"PrefixListId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribePrefixListsResult":{ "type":"structure", "members":{ "PrefixLists":{ "shape":"PrefixListSet", "locationName":"prefixListSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeRegionsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RegionNames":{ "shape":"RegionNameStringList", "locationName":"RegionName" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeRegionsResult":{ "type":"structure", "members":{ "Regions":{ "shape":"RegionList", "locationName":"regionInfo" } } }, "DescribeReservedInstancesListingsRequest":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "ReservedInstancesListingId":{ "shape":"String", "locationName":"reservedInstancesListingId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeReservedInstancesListingsResult":{ "type":"structure", "members":{ "ReservedInstancesListings":{ "shape":"ReservedInstancesListingList", "locationName":"reservedInstancesListingsSet" } } }, "DescribeReservedInstancesModificationsRequest":{ "type":"structure", "members":{ "ReservedInstancesModificationIds":{ "shape":"ReservedInstancesModificationIdStringList", "locationName":"ReservedInstancesModificationId" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeReservedInstancesModificationsResult":{ "type":"structure", "members":{ "ReservedInstancesModifications":{ "shape":"ReservedInstancesModificationList", "locationName":"reservedInstancesModificationsSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeReservedInstancesOfferingsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ReservedInstancesOfferingIds":{ "shape":"ReservedInstancesOfferingIdStringList", "locationName":"ReservedInstancesOfferingId" }, "InstanceType":{"shape":"InstanceType"}, "AvailabilityZone":{"shape":"String"}, "ProductDescription":{"shape":"RIProductDescription"}, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" }, "OfferingType":{ "shape":"OfferingTypeValues", "locationName":"offeringType" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" }, "IncludeMarketplace":{"shape":"Boolean"}, "MinDuration":{"shape":"Long"}, "MaxDuration":{"shape":"Long"}, "MaxInstanceCount":{"shape":"Integer"}, "OfferingClass":{"shape":"OfferingClassType"} } }, "DescribeReservedInstancesOfferingsResult":{ "type":"structure", "members":{ "ReservedInstancesOfferings":{ "shape":"ReservedInstancesOfferingList", "locationName":"reservedInstancesOfferingsSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeReservedInstancesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ReservedInstancesIds":{ "shape":"ReservedInstancesIdStringList", "locationName":"ReservedInstancesId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "OfferingType":{ "shape":"OfferingTypeValues", "locationName":"offeringType" }, "OfferingClass":{"shape":"OfferingClassType"} } }, "DescribeReservedInstancesResult":{ "type":"structure", "members":{ "ReservedInstances":{ "shape":"ReservedInstancesList", "locationName":"reservedInstancesSet" } } }, "DescribeRouteTablesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableIds":{ "shape":"ValueStringList", "locationName":"RouteTableId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeRouteTablesResult":{ "type":"structure", "members":{ "RouteTables":{ "shape":"RouteTableList", "locationName":"routeTableSet" } } }, "DescribeScheduledInstanceAvailabilityRequest":{ "type":"structure", "required":[ "Recurrence", "FirstSlotStartTimeRange" ], "members":{ "DryRun":{"shape":"Boolean"}, "Recurrence":{"shape":"ScheduledInstanceRecurrenceRequest"}, "FirstSlotStartTimeRange":{"shape":"SlotDateTimeRangeRequest"}, "MinSlotDurationInHours":{"shape":"Integer"}, "MaxSlotDurationInHours":{"shape":"Integer"}, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"}, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeScheduledInstanceAvailabilityResult":{ "type":"structure", "members":{ "NextToken":{ "shape":"String", "locationName":"nextToken" }, "ScheduledInstanceAvailabilitySet":{ "shape":"ScheduledInstanceAvailabilitySet", "locationName":"scheduledInstanceAvailabilitySet" } } }, "DescribeScheduledInstancesRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "ScheduledInstanceIds":{ "shape":"ScheduledInstanceIdRequestSet", "locationName":"ScheduledInstanceId" }, "SlotStartTimeRange":{"shape":"SlotStartTimeRangeRequest"}, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"}, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeScheduledInstancesResult":{ "type":"structure", "members":{ "NextToken":{ "shape":"String", "locationName":"nextToken" }, "ScheduledInstanceSet":{ "shape":"ScheduledInstanceSet", "locationName":"scheduledInstanceSet" } } }, "DescribeSecurityGroupReferencesRequest":{ "type":"structure", "required":["GroupId"], "members":{ "DryRun":{"shape":"Boolean"}, "GroupId":{"shape":"GroupIds"} } }, "DescribeSecurityGroupReferencesResult":{ "type":"structure", "members":{ "SecurityGroupReferenceSet":{ "shape":"SecurityGroupReferences", "locationName":"securityGroupReferenceSet" } } }, "DescribeSecurityGroupsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupNames":{ "shape":"GroupNameStringList", "locationName":"GroupName" }, "GroupIds":{ "shape":"GroupIdStringList", "locationName":"GroupId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeSecurityGroupsResult":{ "type":"structure", "members":{ "SecurityGroups":{ "shape":"SecurityGroupList", "locationName":"securityGroupInfo" } } }, "DescribeSnapshotAttributeRequest":{ "type":"structure", "required":[ "SnapshotId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotId":{"shape":"String"}, "Attribute":{"shape":"SnapshotAttributeName"} } }, "DescribeSnapshotAttributeResult":{ "type":"structure", "members":{ "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "CreateVolumePermissions":{ "shape":"CreateVolumePermissionList", "locationName":"createVolumePermission" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" } } }, "DescribeSnapshotsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotIds":{ "shape":"SnapshotIdStringList", "locationName":"SnapshotId" }, "OwnerIds":{ "shape":"OwnerStringList", "locationName":"Owner" }, "RestorableByUserIds":{ "shape":"RestorableByStringList", "locationName":"RestorableBy" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"} } }, "DescribeSnapshotsResult":{ "type":"structure", "members":{ "Snapshots":{ "shape":"SnapshotList", "locationName":"snapshotSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotDatafeedSubscriptionRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "DescribeSpotDatafeedSubscriptionResult":{ "type":"structure", "members":{ "SpotDatafeedSubscription":{ "shape":"SpotDatafeedSubscription", "locationName":"spotDatafeedSubscription" } } }, "DescribeSpotFleetInstancesRequest":{ "type":"structure", "required":["SpotFleetRequestId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeSpotFleetInstancesResponse":{ "type":"structure", "required":[ "SpotFleetRequestId", "ActiveInstances" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "ActiveInstances":{ "shape":"ActiveInstanceSet", "locationName":"activeInstanceSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotFleetRequestHistoryRequest":{ "type":"structure", "required":[ "SpotFleetRequestId", "StartTime" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "EventType":{ "shape":"EventType", "locationName":"eventType" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeSpotFleetRequestHistoryResponse":{ "type":"structure", "required":[ "SpotFleetRequestId", "StartTime", "LastEvaluatedTime", "HistoryRecords" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "LastEvaluatedTime":{ "shape":"DateTime", "locationName":"lastEvaluatedTime" }, "HistoryRecords":{ "shape":"HistoryRecords", "locationName":"historyRecordSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotFleetRequestsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestIds":{ "shape":"ValueStringList", "locationName":"spotFleetRequestId" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeSpotFleetRequestsResponse":{ "type":"structure", "required":["SpotFleetRequestConfigs"], "members":{ "SpotFleetRequestConfigs":{ "shape":"SpotFleetRequestConfigSet", "locationName":"spotFleetRequestConfigSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotInstanceRequestsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotInstanceRequestIds":{ "shape":"SpotInstanceRequestIdList", "locationName":"SpotInstanceRequestId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeSpotInstanceRequestsResult":{ "type":"structure", "members":{ "SpotInstanceRequests":{ "shape":"SpotInstanceRequestList", "locationName":"spotInstanceRequestSet" } } }, "DescribeSpotPriceHistoryRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "EndTime":{ "shape":"DateTime", "locationName":"endTime" }, "InstanceTypes":{ "shape":"InstanceTypeList", "locationName":"InstanceType" }, "ProductDescriptions":{ "shape":"ProductDescriptionList", "locationName":"ProductDescription" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSpotPriceHistoryResult":{ "type":"structure", "members":{ "SpotPriceHistory":{ "shape":"SpotPriceHistoryList", "locationName":"spotPriceHistorySet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeStaleSecurityGroupsRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{"shape":"Boolean"}, "VpcId":{"shape":"String"}, "MaxResults":{"shape":"MaxResults"}, "NextToken":{"shape":"NextToken"} } }, "DescribeStaleSecurityGroupsResult":{ "type":"structure", "members":{ "StaleSecurityGroupSet":{ "shape":"StaleSecurityGroupSet", "locationName":"staleSecurityGroupSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeSubnetsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SubnetIds":{ "shape":"SubnetIdStringList", "locationName":"SubnetId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeSubnetsResult":{ "type":"structure", "members":{ "Subnets":{ "shape":"SubnetList", "locationName":"subnetSet" } } }, "DescribeTagsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeTagsResult":{ "type":"structure", "members":{ "Tags":{ "shape":"TagDescriptionList", "locationName":"tagSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVolumeAttributeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "Attribute":{"shape":"VolumeAttributeName"} } }, "DescribeVolumeAttributeResult":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "AutoEnableIO":{ "shape":"AttributeBooleanValue", "locationName":"autoEnableIO" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" } } }, "DescribeVolumeStatusRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeIds":{ "shape":"VolumeIdStringList", "locationName":"VolumeId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"} } }, "DescribeVolumeStatusResult":{ "type":"structure", "members":{ "VolumeStatuses":{ "shape":"VolumeStatusList", "locationName":"volumeStatusSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVolumesRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeIds":{ "shape":"VolumeIdStringList", "locationName":"VolumeId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "NextToken":{ "shape":"String", "locationName":"nextToken" }, "MaxResults":{ "shape":"Integer", "locationName":"maxResults" } } }, "DescribeVolumesResult":{ "type":"structure", "members":{ "Volumes":{ "shape":"VolumeList", "locationName":"volumeSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVpcAttributeRequest":{ "type":"structure", "required":[ "VpcId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{"shape":"String"}, "Attribute":{"shape":"VpcAttributeName"} } }, "DescribeVpcAttributeResult":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "EnableDnsSupport":{ "shape":"AttributeBooleanValue", "locationName":"enableDnsSupport" }, "EnableDnsHostnames":{ "shape":"AttributeBooleanValue", "locationName":"enableDnsHostnames" } } }, "DescribeVpcClassicLinkDnsSupportRequest":{ "type":"structure", "members":{ "VpcIds":{"shape":"VpcClassicLinkIdList"}, "MaxResults":{ "shape":"MaxResults", "locationName":"maxResults" }, "NextToken":{ "shape":"NextToken", "locationName":"nextToken" } } }, "DescribeVpcClassicLinkDnsSupportResult":{ "type":"structure", "members":{ "Vpcs":{ "shape":"ClassicLinkDnsSupportList", "locationName":"vpcs" }, "NextToken":{ "shape":"NextToken", "locationName":"nextToken" } } }, "DescribeVpcClassicLinkRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcIds":{ "shape":"VpcClassicLinkIdList", "locationName":"VpcId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpcClassicLinkResult":{ "type":"structure", "members":{ "Vpcs":{ "shape":"VpcClassicLinkList", "locationName":"vpcSet" } } }, "DescribeVpcEndpointServicesRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribeVpcEndpointServicesResult":{ "type":"structure", "members":{ "ServiceNames":{ "shape":"ValueStringList", "locationName":"serviceNameSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVpcEndpointsRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "VpcEndpointIds":{ "shape":"ValueStringList", "locationName":"VpcEndpointId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" }, "MaxResults":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "DescribeVpcEndpointsResult":{ "type":"structure", "members":{ "VpcEndpoints":{ "shape":"VpcEndpointSet", "locationName":"vpcEndpointSet" }, "NextToken":{ "shape":"String", "locationName":"nextToken" } } }, "DescribeVpcPeeringConnectionsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcPeeringConnectionIds":{ "shape":"ValueStringList", "locationName":"VpcPeeringConnectionId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpcPeeringConnectionsResult":{ "type":"structure", "members":{ "VpcPeeringConnections":{ "shape":"VpcPeeringConnectionList", "locationName":"vpcPeeringConnectionSet" } } }, "DescribeVpcsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcIds":{ "shape":"VpcIdStringList", "locationName":"VpcId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpcsResult":{ "type":"structure", "members":{ "Vpcs":{ "shape":"VpcList", "locationName":"vpcSet" } } }, "DescribeVpnConnectionsRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnConnectionIds":{ "shape":"VpnConnectionIdStringList", "locationName":"VpnConnectionId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpnConnectionsResult":{ "type":"structure", "members":{ "VpnConnections":{ "shape":"VpnConnectionList", "locationName":"vpnConnectionSet" } } }, "DescribeVpnGatewaysRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnGatewayIds":{ "shape":"VpnGatewayIdStringList", "locationName":"VpnGatewayId" }, "Filters":{ "shape":"FilterList", "locationName":"Filter" } } }, "DescribeVpnGatewaysResult":{ "type":"structure", "members":{ "VpnGateways":{ "shape":"VpnGatewayList", "locationName":"vpnGatewaySet" } } }, "DetachClassicLinkVpcRequest":{ "type":"structure", "required":[ "InstanceId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "DetachClassicLinkVpcResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "DetachInternetGatewayRequest":{ "type":"structure", "required":[ "InternetGatewayId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InternetGatewayId":{ "shape":"String", "locationName":"internetGatewayId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "DetachNetworkInterfaceRequest":{ "type":"structure", "required":["AttachmentId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AttachmentId":{ "shape":"String", "locationName":"attachmentId" }, "Force":{ "shape":"Boolean", "locationName":"force" } } }, "DetachVolumeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "InstanceId":{"shape":"String"}, "Device":{"shape":"String"}, "Force":{"shape":"Boolean"} } }, "DetachVpnGatewayRequest":{ "type":"structure", "required":[ "VpnGatewayId", "VpcId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpnGatewayId":{"shape":"String"}, "VpcId":{"shape":"String"} } }, "DeviceType":{ "type":"string", "enum":[ "ebs", "instance-store" ] }, "DhcpConfiguration":{ "type":"structure", "members":{ "Key":{ "shape":"String", "locationName":"key" }, "Values":{ "shape":"DhcpConfigurationValueList", "locationName":"valueSet" } } }, "DhcpConfigurationList":{ "type":"list", "member":{ "shape":"DhcpConfiguration", "locationName":"item" } }, "DhcpConfigurationValueList":{ "type":"list", "member":{ "shape":"AttributeValue", "locationName":"item" } }, "DhcpOptions":{ "type":"structure", "members":{ "DhcpOptionsId":{ "shape":"String", "locationName":"dhcpOptionsId" }, "DhcpConfigurations":{ "shape":"DhcpConfigurationList", "locationName":"dhcpConfigurationSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "DhcpOptionsIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"DhcpOptionsId" } }, "DhcpOptionsList":{ "type":"list", "member":{ "shape":"DhcpOptions", "locationName":"item" } }, "DisableVgwRoutePropagationRequest":{ "type":"structure", "required":[ "RouteTableId", "GatewayId" ], "members":{ "RouteTableId":{"shape":"String"}, "GatewayId":{"shape":"String"} } }, "DisableVpcClassicLinkDnsSupportRequest":{ "type":"structure", "members":{ "VpcId":{"shape":"String"} } }, "DisableVpcClassicLinkDnsSupportResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "DisableVpcClassicLinkRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "DisableVpcClassicLinkResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "DisassociateAddressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIp":{"shape":"String"}, "AssociationId":{"shape":"String"} } }, "DisassociateRouteTableRequest":{ "type":"structure", "required":["AssociationId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AssociationId":{ "shape":"String", "locationName":"associationId" } } }, "DiskImage":{ "type":"structure", "members":{ "Image":{"shape":"DiskImageDetail"}, "Description":{"shape":"String"}, "Volume":{"shape":"VolumeDetail"} } }, "DiskImageDescription":{ "type":"structure", "required":[ "Format", "Size", "ImportManifestUrl" ], "members":{ "Format":{ "shape":"DiskImageFormat", "locationName":"format" }, "Size":{ "shape":"Long", "locationName":"size" }, "ImportManifestUrl":{ "shape":"String", "locationName":"importManifestUrl" }, "Checksum":{ "shape":"String", "locationName":"checksum" } } }, "DiskImageDetail":{ "type":"structure", "required":[ "Format", "Bytes", "ImportManifestUrl" ], "members":{ "Format":{ "shape":"DiskImageFormat", "locationName":"format" }, "Bytes":{ "shape":"Long", "locationName":"bytes" }, "ImportManifestUrl":{ "shape":"String", "locationName":"importManifestUrl" } } }, "DiskImageFormat":{ "type":"string", "enum":[ "VMDK", "RAW", "VHD" ] }, "DiskImageList":{ "type":"list", "member":{"shape":"DiskImage"} }, "DiskImageVolumeDescription":{ "type":"structure", "required":["Id"], "members":{ "Size":{ "shape":"Long", "locationName":"size" }, "Id":{ "shape":"String", "locationName":"id" } } }, "DomainType":{ "type":"string", "enum":[ "vpc", "standard" ] }, "Double":{"type":"double"}, "EbsBlockDevice":{ "type":"structure", "members":{ "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "VolumeSize":{ "shape":"Integer", "locationName":"volumeSize" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" }, "VolumeType":{ "shape":"VolumeType", "locationName":"volumeType" }, "Iops":{ "shape":"Integer", "locationName":"iops" }, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" } } }, "EbsInstanceBlockDevice":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "Status":{ "shape":"AttachmentStatus", "locationName":"status" }, "AttachTime":{ "shape":"DateTime", "locationName":"attachTime" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "EbsInstanceBlockDeviceSpecification":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "EnableVgwRoutePropagationRequest":{ "type":"structure", "required":[ "RouteTableId", "GatewayId" ], "members":{ "RouteTableId":{"shape":"String"}, "GatewayId":{"shape":"String"} } }, "EnableVolumeIORequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{ "shape":"String", "locationName":"volumeId" } } }, "EnableVpcClassicLinkDnsSupportRequest":{ "type":"structure", "members":{ "VpcId":{"shape":"String"} } }, "EnableVpcClassicLinkDnsSupportResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "EnableVpcClassicLinkRequest":{ "type":"structure", "required":["VpcId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcId":{ "shape":"String", "locationName":"vpcId" } } }, "EnableVpcClassicLinkResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "EventCode":{ "type":"string", "enum":[ "instance-reboot", "system-reboot", "system-maintenance", "instance-retirement", "instance-stop" ] }, "EventInformation":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "EventSubType":{ "shape":"String", "locationName":"eventSubType" }, "EventDescription":{ "shape":"String", "locationName":"eventDescription" } } }, "EventType":{ "type":"string", "enum":[ "instanceChange", "fleetRequestChange", "error" ] }, "ExcessCapacityTerminationPolicy":{ "type":"string", "enum":[ "noTermination", "default" ] }, "ExecutableByStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ExecutableBy" } }, "ExportEnvironment":{ "type":"string", "enum":[ "citrix", "vmware", "microsoft" ] }, "ExportTask":{ "type":"structure", "members":{ "ExportTaskId":{ "shape":"String", "locationName":"exportTaskId" }, "Description":{ "shape":"String", "locationName":"description" }, "State":{ "shape":"ExportTaskState", "locationName":"state" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "InstanceExportDetails":{ "shape":"InstanceExportDetails", "locationName":"instanceExport" }, "ExportToS3Task":{ "shape":"ExportToS3Task", "locationName":"exportToS3" } } }, "ExportTaskIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ExportTaskId" } }, "ExportTaskList":{ "type":"list", "member":{ "shape":"ExportTask", "locationName":"item" } }, "ExportTaskState":{ "type":"string", "enum":[ "active", "cancelling", "cancelled", "completed" ] }, "ExportToS3Task":{ "type":"structure", "members":{ "DiskImageFormat":{ "shape":"DiskImageFormat", "locationName":"diskImageFormat" }, "ContainerFormat":{ "shape":"ContainerFormat", "locationName":"containerFormat" }, "S3Bucket":{ "shape":"String", "locationName":"s3Bucket" }, "S3Key":{ "shape":"String", "locationName":"s3Key" } } }, "ExportToS3TaskSpecification":{ "type":"structure", "members":{ "DiskImageFormat":{ "shape":"DiskImageFormat", "locationName":"diskImageFormat" }, "ContainerFormat":{ "shape":"ContainerFormat", "locationName":"containerFormat" }, "S3Bucket":{ "shape":"String", "locationName":"s3Bucket" }, "S3Prefix":{ "shape":"String", "locationName":"s3Prefix" } } }, "Filter":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "Values":{ "shape":"ValueStringList", "locationName":"Value" } } }, "FilterList":{ "type":"list", "member":{ "shape":"Filter", "locationName":"Filter" } }, "FleetType":{ "type":"string", "enum":[ "request", "maintain" ] }, "Float":{"type":"float"}, "FlowLog":{ "type":"structure", "members":{ "CreationTime":{ "shape":"DateTime", "locationName":"creationTime" }, "FlowLogId":{ "shape":"String", "locationName":"flowLogId" }, "FlowLogStatus":{ "shape":"String", "locationName":"flowLogStatus" }, "ResourceId":{ "shape":"String", "locationName":"resourceId" }, "TrafficType":{ "shape":"TrafficType", "locationName":"trafficType" }, "LogGroupName":{ "shape":"String", "locationName":"logGroupName" }, "DeliverLogsStatus":{ "shape":"String", "locationName":"deliverLogsStatus" }, "DeliverLogsErrorMessage":{ "shape":"String", "locationName":"deliverLogsErrorMessage" }, "DeliverLogsPermissionArn":{ "shape":"String", "locationName":"deliverLogsPermissionArn" } } }, "FlowLogSet":{ "type":"list", "member":{ "shape":"FlowLog", "locationName":"item" } }, "FlowLogsResourceType":{ "type":"string", "enum":[ "VPC", "Subnet", "NetworkInterface" ] }, "GatewayType":{ "type":"string", "enum":["ipsec.1"] }, "GetConsoleOutputRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{"shape":"String"} } }, "GetConsoleOutputResult":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Timestamp":{ "shape":"DateTime", "locationName":"timestamp" }, "Output":{ "shape":"String", "locationName":"output" } } }, "GetConsoleScreenshotRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "DryRun":{"shape":"Boolean"}, "InstanceId":{"shape":"String"}, "WakeUp":{"shape":"Boolean"} } }, "GetConsoleScreenshotResult":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "ImageData":{ "shape":"String", "locationName":"imageData" } } }, "GetHostReservationPurchasePreviewRequest":{ "type":"structure", "required":[ "OfferingId", "HostIdSet" ], "members":{ "OfferingId":{"shape":"String"}, "HostIdSet":{"shape":"RequestHostIdSet"} } }, "GetHostReservationPurchasePreviewResult":{ "type":"structure", "members":{ "Purchase":{ "shape":"PurchaseSet", "locationName":"purchase" }, "TotalUpfrontPrice":{ "shape":"String", "locationName":"totalUpfrontPrice" }, "TotalHourlyPrice":{ "shape":"String", "locationName":"totalHourlyPrice" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" } } }, "GetPasswordDataRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{"shape":"String"} } }, "GetPasswordDataResult":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Timestamp":{ "shape":"DateTime", "locationName":"timestamp" }, "PasswordData":{ "shape":"String", "locationName":"passwordData" } } }, "GetReservedInstancesExchangeQuoteRequest":{ "type":"structure", "required":["ReservedInstanceIds"], "members":{ "DryRun":{"shape":"Boolean"}, "ReservedInstanceIds":{ "shape":"ReservedInstanceIdSet", "locationName":"ReservedInstanceId" }, "TargetConfigurations":{ "shape":"TargetConfigurationRequestSet", "locationName":"TargetConfiguration" } } }, "GetReservedInstancesExchangeQuoteResult":{ "type":"structure", "members":{ "ReservedInstanceValueSet":{ "shape":"ReservedInstanceReservationValueSet", "locationName":"reservedInstanceValueSet" }, "ReservedInstanceValueRollup":{ "shape":"ReservationValue", "locationName":"reservedInstanceValueRollup" }, "TargetConfigurationValueSet":{ "shape":"TargetReservationValueSet", "locationName":"targetConfigurationValueSet" }, "TargetConfigurationValueRollup":{ "shape":"ReservationValue", "locationName":"targetConfigurationValueRollup" }, "PaymentDue":{ "shape":"String", "locationName":"paymentDue" }, "CurrencyCode":{ "shape":"String", "locationName":"currencyCode" }, "OutputReservedInstancesWillExpireAt":{ "shape":"DateTime", "locationName":"outputReservedInstancesWillExpireAt" }, "IsValidExchange":{ "shape":"Boolean", "locationName":"isValidExchange" }, "ValidationFailureReason":{ "shape":"String", "locationName":"validationFailureReason" } } }, "GroupIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"groupId" } }, "GroupIdentifier":{ "type":"structure", "members":{ "GroupName":{ "shape":"String", "locationName":"groupName" }, "GroupId":{ "shape":"String", "locationName":"groupId" } } }, "GroupIdentifierList":{ "type":"list", "member":{ "shape":"GroupIdentifier", "locationName":"item" } }, "GroupIds":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "GroupNameStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"GroupName" } }, "HistoryRecord":{ "type":"structure", "required":[ "Timestamp", "EventType", "EventInformation" ], "members":{ "Timestamp":{ "shape":"DateTime", "locationName":"timestamp" }, "EventType":{ "shape":"EventType", "locationName":"eventType" }, "EventInformation":{ "shape":"EventInformation", "locationName":"eventInformation" } } }, "HistoryRecords":{ "type":"list", "member":{ "shape":"HistoryRecord", "locationName":"item" } }, "Host":{ "type":"structure", "members":{ "HostId":{ "shape":"String", "locationName":"hostId" }, "AutoPlacement":{ "shape":"AutoPlacement", "locationName":"autoPlacement" }, "HostReservationId":{ "shape":"String", "locationName":"hostReservationId" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "HostProperties":{ "shape":"HostProperties", "locationName":"hostProperties" }, "State":{ "shape":"AllocationState", "locationName":"state" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Instances":{ "shape":"HostInstanceList", "locationName":"instances" }, "AvailableCapacity":{ "shape":"AvailableCapacity", "locationName":"availableCapacity" } } }, "HostInstance":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "InstanceType":{ "shape":"String", "locationName":"instanceType" } } }, "HostInstanceList":{ "type":"list", "member":{ "shape":"HostInstance", "locationName":"item" } }, "HostList":{ "type":"list", "member":{ "shape":"Host", "locationName":"item" } }, "HostOffering":{ "type":"structure", "members":{ "OfferingId":{ "shape":"String", "locationName":"offeringId" }, "InstanceFamily":{ "shape":"String", "locationName":"instanceFamily" }, "PaymentOption":{ "shape":"PaymentOption", "locationName":"paymentOption" }, "UpfrontPrice":{ "shape":"String", "locationName":"upfrontPrice" }, "HourlyPrice":{ "shape":"String", "locationName":"hourlyPrice" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "Duration":{ "shape":"Integer", "locationName":"duration" } } }, "HostOfferingSet":{ "type":"list", "member":{"shape":"HostOffering"} }, "HostProperties":{ "type":"structure", "members":{ "Sockets":{ "shape":"Integer", "locationName":"sockets" }, "Cores":{ "shape":"Integer", "locationName":"cores" }, "TotalVCpus":{ "shape":"Integer", "locationName":"totalVCpus" }, "InstanceType":{ "shape":"String", "locationName":"instanceType" } } }, "HostReservation":{ "type":"structure", "members":{ "HostReservationId":{ "shape":"String", "locationName":"hostReservationId" }, "HostIdSet":{ "shape":"ResponseHostIdSet", "locationName":"hostIdSet" }, "OfferingId":{ "shape":"String", "locationName":"offeringId" }, "InstanceFamily":{ "shape":"String", "locationName":"instanceFamily" }, "PaymentOption":{ "shape":"PaymentOption", "locationName":"paymentOption" }, "HourlyPrice":{ "shape":"String", "locationName":"hourlyPrice" }, "UpfrontPrice":{ "shape":"String", "locationName":"upfrontPrice" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "Count":{ "shape":"Integer", "locationName":"count" }, "Duration":{ "shape":"Integer", "locationName":"duration" }, "End":{ "shape":"DateTime", "locationName":"end" }, "Start":{ "shape":"DateTime", "locationName":"start" }, "State":{ "shape":"ReservationState", "locationName":"state" } } }, "HostReservationIdSet":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "HostReservationSet":{ "type":"list", "member":{"shape":"HostReservation"} }, "HostTenancy":{ "type":"string", "enum":[ "dedicated", "host" ] }, "HypervisorType":{ "type":"string", "enum":[ "ovm", "xen" ] }, "IamInstanceProfile":{ "type":"structure", "members":{ "Arn":{ "shape":"String", "locationName":"arn" }, "Id":{ "shape":"String", "locationName":"id" } } }, "IamInstanceProfileSpecification":{ "type":"structure", "members":{ "Arn":{ "shape":"String", "locationName":"arn" }, "Name":{ "shape":"String", "locationName":"name" } } }, "IcmpTypeCode":{ "type":"structure", "members":{ "Type":{ "shape":"Integer", "locationName":"type" }, "Code":{ "shape":"Integer", "locationName":"code" } } }, "IdFormat":{ "type":"structure", "members":{ "Resource":{ "shape":"String", "locationName":"resource" }, "UseLongIds":{ "shape":"Boolean", "locationName":"useLongIds" }, "Deadline":{ "shape":"DateTime", "locationName":"deadline" } } }, "IdFormatList":{ "type":"list", "member":{ "shape":"IdFormat", "locationName":"item" } }, "Image":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "ImageLocation":{ "shape":"String", "locationName":"imageLocation" }, "State":{ "shape":"ImageState", "locationName":"imageState" }, "OwnerId":{ "shape":"String", "locationName":"imageOwnerId" }, "CreationDate":{ "shape":"String", "locationName":"creationDate" }, "Public":{ "shape":"Boolean", "locationName":"isPublic" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" }, "Architecture":{ "shape":"ArchitectureValues", "locationName":"architecture" }, "ImageType":{ "shape":"ImageTypeValues", "locationName":"imageType" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "Platform":{ "shape":"PlatformValues", "locationName":"platform" }, "SriovNetSupport":{ "shape":"String", "locationName":"sriovNetSupport" }, "EnaSupport":{ "shape":"Boolean", "locationName":"enaSupport" }, "StateReason":{ "shape":"StateReason", "locationName":"stateReason" }, "ImageOwnerAlias":{ "shape":"String", "locationName":"imageOwnerAlias" }, "Name":{ "shape":"String", "locationName":"name" }, "Description":{ "shape":"String", "locationName":"description" }, "RootDeviceType":{ "shape":"DeviceType", "locationName":"rootDeviceType" }, "RootDeviceName":{ "shape":"String", "locationName":"rootDeviceName" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "VirtualizationType":{ "shape":"VirtualizationType", "locationName":"virtualizationType" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "Hypervisor":{ "shape":"HypervisorType", "locationName":"hypervisor" } } }, "ImageAttribute":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "LaunchPermissions":{ "shape":"LaunchPermissionList", "locationName":"launchPermission" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" }, "KernelId":{ "shape":"AttributeValue", "locationName":"kernel" }, "RamdiskId":{ "shape":"AttributeValue", "locationName":"ramdisk" }, "Description":{ "shape":"AttributeValue", "locationName":"description" }, "SriovNetSupport":{ "shape":"AttributeValue", "locationName":"sriovNetSupport" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" } } }, "ImageAttributeName":{ "type":"string", "enum":[ "description", "kernel", "ramdisk", "launchPermission", "productCodes", "blockDeviceMapping", "sriovNetSupport" ] }, "ImageDiskContainer":{ "type":"structure", "members":{ "Description":{"shape":"String"}, "Format":{"shape":"String"}, "Url":{"shape":"String"}, "UserBucket":{"shape":"UserBucket"}, "DeviceName":{"shape":"String"}, "SnapshotId":{"shape":"String"} } }, "ImageDiskContainerList":{ "type":"list", "member":{ "shape":"ImageDiskContainer", "locationName":"item" } }, "ImageIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ImageId" } }, "ImageList":{ "type":"list", "member":{ "shape":"Image", "locationName":"item" } }, "ImageState":{ "type":"string", "enum":[ "pending", "available", "invalid", "deregistered", "transient", "failed", "error" ] }, "ImageTypeValues":{ "type":"string", "enum":[ "machine", "kernel", "ramdisk" ] }, "ImportImageRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "Description":{"shape":"String"}, "DiskContainers":{ "shape":"ImageDiskContainerList", "locationName":"DiskContainer" }, "LicenseType":{"shape":"String"}, "Hypervisor":{"shape":"String"}, "Architecture":{"shape":"String"}, "Platform":{"shape":"String"}, "ClientData":{"shape":"ClientData"}, "ClientToken":{"shape":"String"}, "RoleName":{"shape":"String"} } }, "ImportImageResult":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "Architecture":{ "shape":"String", "locationName":"architecture" }, "LicenseType":{ "shape":"String", "locationName":"licenseType" }, "Platform":{ "shape":"String", "locationName":"platform" }, "Hypervisor":{ "shape":"String", "locationName":"hypervisor" }, "Description":{ "shape":"String", "locationName":"description" }, "SnapshotDetails":{ "shape":"SnapshotDetailList", "locationName":"snapshotDetailSet" }, "ImageId":{ "shape":"String", "locationName":"imageId" }, "Progress":{ "shape":"String", "locationName":"progress" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Status":{ "shape":"String", "locationName":"status" } } }, "ImportImageTask":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "Architecture":{ "shape":"String", "locationName":"architecture" }, "LicenseType":{ "shape":"String", "locationName":"licenseType" }, "Platform":{ "shape":"String", "locationName":"platform" }, "Hypervisor":{ "shape":"String", "locationName":"hypervisor" }, "Description":{ "shape":"String", "locationName":"description" }, "SnapshotDetails":{ "shape":"SnapshotDetailList", "locationName":"snapshotDetailSet" }, "ImageId":{ "shape":"String", "locationName":"imageId" }, "Progress":{ "shape":"String", "locationName":"progress" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Status":{ "shape":"String", "locationName":"status" } } }, "ImportImageTaskList":{ "type":"list", "member":{ "shape":"ImportImageTask", "locationName":"item" } }, "ImportInstanceLaunchSpecification":{ "type":"structure", "members":{ "Architecture":{ "shape":"ArchitectureValues", "locationName":"architecture" }, "GroupNames":{ "shape":"SecurityGroupStringList", "locationName":"GroupName" }, "GroupIds":{ "shape":"SecurityGroupIdStringList", "locationName":"GroupId" }, "AdditionalInfo":{ "shape":"String", "locationName":"additionalInfo" }, "UserData":{ "shape":"UserData", "locationName":"userData" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "Placement":{ "shape":"Placement", "locationName":"placement" }, "Monitoring":{ "shape":"Boolean", "locationName":"monitoring" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "InstanceInitiatedShutdownBehavior":{ "shape":"ShutdownBehavior", "locationName":"instanceInitiatedShutdownBehavior" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" } } }, "ImportInstanceRequest":{ "type":"structure", "required":["Platform"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Description":{ "shape":"String", "locationName":"description" }, "LaunchSpecification":{ "shape":"ImportInstanceLaunchSpecification", "locationName":"launchSpecification" }, "DiskImages":{ "shape":"DiskImageList", "locationName":"diskImage" }, "Platform":{ "shape":"PlatformValues", "locationName":"platform" } } }, "ImportInstanceResult":{ "type":"structure", "members":{ "ConversionTask":{ "shape":"ConversionTask", "locationName":"conversionTask" } } }, "ImportInstanceTaskDetails":{ "type":"structure", "required":["Volumes"], "members":{ "Volumes":{ "shape":"ImportInstanceVolumeDetailSet", "locationName":"volumes" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Platform":{ "shape":"PlatformValues", "locationName":"platform" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ImportInstanceVolumeDetailItem":{ "type":"structure", "required":[ "BytesConverted", "AvailabilityZone", "Image", "Volume", "Status" ], "members":{ "BytesConverted":{ "shape":"Long", "locationName":"bytesConverted" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Image":{ "shape":"DiskImageDescription", "locationName":"image" }, "Volume":{ "shape":"DiskImageVolumeDescription", "locationName":"volume" }, "Status":{ "shape":"String", "locationName":"status" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ImportInstanceVolumeDetailSet":{ "type":"list", "member":{ "shape":"ImportInstanceVolumeDetailItem", "locationName":"item" } }, "ImportKeyPairRequest":{ "type":"structure", "required":[ "KeyName", "PublicKeyMaterial" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "PublicKeyMaterial":{ "shape":"Blob", "locationName":"publicKeyMaterial" } } }, "ImportKeyPairResult":{ "type":"structure", "members":{ "KeyName":{ "shape":"String", "locationName":"keyName" }, "KeyFingerprint":{ "shape":"String", "locationName":"keyFingerprint" } } }, "ImportSnapshotRequest":{ "type":"structure", "members":{ "DryRun":{"shape":"Boolean"}, "Description":{"shape":"String"}, "DiskContainer":{"shape":"SnapshotDiskContainer"}, "ClientData":{"shape":"ClientData"}, "ClientToken":{"shape":"String"}, "RoleName":{"shape":"String"} } }, "ImportSnapshotResult":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "SnapshotTaskDetail":{ "shape":"SnapshotTaskDetail", "locationName":"snapshotTaskDetail" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ImportSnapshotTask":{ "type":"structure", "members":{ "ImportTaskId":{ "shape":"String", "locationName":"importTaskId" }, "SnapshotTaskDetail":{ "shape":"SnapshotTaskDetail", "locationName":"snapshotTaskDetail" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ImportSnapshotTaskList":{ "type":"list", "member":{ "shape":"ImportSnapshotTask", "locationName":"item" } }, "ImportTaskIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"ImportTaskId" } }, "ImportVolumeRequest":{ "type":"structure", "required":[ "AvailabilityZone", "Image", "Volume" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Image":{ "shape":"DiskImageDetail", "locationName":"image" }, "Description":{ "shape":"String", "locationName":"description" }, "Volume":{ "shape":"VolumeDetail", "locationName":"volume" } } }, "ImportVolumeResult":{ "type":"structure", "members":{ "ConversionTask":{ "shape":"ConversionTask", "locationName":"conversionTask" } } }, "ImportVolumeTaskDetails":{ "type":"structure", "required":[ "BytesConverted", "AvailabilityZone", "Image", "Volume" ], "members":{ "BytesConverted":{ "shape":"Long", "locationName":"bytesConverted" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Description":{ "shape":"String", "locationName":"description" }, "Image":{ "shape":"DiskImageDescription", "locationName":"image" }, "Volume":{ "shape":"DiskImageVolumeDescription", "locationName":"volume" } } }, "Instance":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "ImageId":{ "shape":"String", "locationName":"imageId" }, "State":{ "shape":"InstanceState", "locationName":"instanceState" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "PublicDnsName":{ "shape":"String", "locationName":"dnsName" }, "StateTransitionReason":{ "shape":"String", "locationName":"reason" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "AmiLaunchIndex":{ "shape":"Integer", "locationName":"amiLaunchIndex" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "LaunchTime":{ "shape":"DateTime", "locationName":"launchTime" }, "Placement":{ "shape":"Placement", "locationName":"placement" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "Platform":{ "shape":"PlatformValues", "locationName":"platform" }, "Monitoring":{ "shape":"Monitoring", "locationName":"monitoring" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PublicIpAddress":{ "shape":"String", "locationName":"ipAddress" }, "StateReason":{ "shape":"StateReason", "locationName":"stateReason" }, "Architecture":{ "shape":"ArchitectureValues", "locationName":"architecture" }, "RootDeviceType":{ "shape":"DeviceType", "locationName":"rootDeviceType" }, "RootDeviceName":{ "shape":"String", "locationName":"rootDeviceName" }, "BlockDeviceMappings":{ "shape":"InstanceBlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "VirtualizationType":{ "shape":"VirtualizationType", "locationName":"virtualizationType" }, "InstanceLifecycle":{ "shape":"InstanceLifecycleType", "locationName":"instanceLifecycle" }, "SpotInstanceRequestId":{ "shape":"String", "locationName":"spotInstanceRequestId" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "SecurityGroups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "SourceDestCheck":{ "shape":"Boolean", "locationName":"sourceDestCheck" }, "Hypervisor":{ "shape":"HypervisorType", "locationName":"hypervisor" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceList", "locationName":"networkInterfaceSet" }, "IamInstanceProfile":{ "shape":"IamInstanceProfile", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" }, "SriovNetSupport":{ "shape":"String", "locationName":"sriovNetSupport" }, "EnaSupport":{ "shape":"Boolean", "locationName":"enaSupport" } } }, "InstanceAttribute":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "InstanceType":{ "shape":"AttributeValue", "locationName":"instanceType" }, "KernelId":{ "shape":"AttributeValue", "locationName":"kernel" }, "RamdiskId":{ "shape":"AttributeValue", "locationName":"ramdisk" }, "UserData":{ "shape":"AttributeValue", "locationName":"userData" }, "DisableApiTermination":{ "shape":"AttributeBooleanValue", "locationName":"disableApiTermination" }, "InstanceInitiatedShutdownBehavior":{ "shape":"AttributeValue", "locationName":"instanceInitiatedShutdownBehavior" }, "RootDeviceName":{ "shape":"AttributeValue", "locationName":"rootDeviceName" }, "BlockDeviceMappings":{ "shape":"InstanceBlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "ProductCodes":{ "shape":"ProductCodeList", "locationName":"productCodes" }, "EbsOptimized":{ "shape":"AttributeBooleanValue", "locationName":"ebsOptimized" }, "SriovNetSupport":{ "shape":"AttributeValue", "locationName":"sriovNetSupport" }, "EnaSupport":{ "shape":"AttributeBooleanValue", "locationName":"enaSupport" }, "SourceDestCheck":{ "shape":"AttributeBooleanValue", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" } } }, "InstanceAttributeName":{ "type":"string", "enum":[ "instanceType", "kernel", "ramdisk", "userData", "disableApiTermination", "instanceInitiatedShutdownBehavior", "rootDeviceName", "blockDeviceMapping", "productCodes", "sourceDestCheck", "groupSet", "ebsOptimized", "sriovNetSupport", "enaSupport" ] }, "InstanceBlockDeviceMapping":{ "type":"structure", "members":{ "DeviceName":{ "shape":"String", "locationName":"deviceName" }, "Ebs":{ "shape":"EbsInstanceBlockDevice", "locationName":"ebs" } } }, "InstanceBlockDeviceMappingList":{ "type":"list", "member":{ "shape":"InstanceBlockDeviceMapping", "locationName":"item" } }, "InstanceBlockDeviceMappingSpecification":{ "type":"structure", "members":{ "DeviceName":{ "shape":"String", "locationName":"deviceName" }, "Ebs":{ "shape":"EbsInstanceBlockDeviceSpecification", "locationName":"ebs" }, "VirtualName":{ "shape":"String", "locationName":"virtualName" }, "NoDevice":{ "shape":"String", "locationName":"noDevice" } } }, "InstanceBlockDeviceMappingSpecificationList":{ "type":"list", "member":{ "shape":"InstanceBlockDeviceMappingSpecification", "locationName":"item" } }, "InstanceCapacity":{ "type":"structure", "members":{ "InstanceType":{ "shape":"String", "locationName":"instanceType" }, "AvailableCapacity":{ "shape":"Integer", "locationName":"availableCapacity" }, "TotalCapacity":{ "shape":"Integer", "locationName":"totalCapacity" } } }, "InstanceCount":{ "type":"structure", "members":{ "State":{ "shape":"ListingState", "locationName":"state" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" } } }, "InstanceCountList":{ "type":"list", "member":{ "shape":"InstanceCount", "locationName":"item" } }, "InstanceExportDetails":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "TargetEnvironment":{ "shape":"ExportEnvironment", "locationName":"targetEnvironment" } } }, "InstanceIdSet":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "InstanceIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"InstanceId" } }, "InstanceLifecycleType":{ "type":"string", "enum":[ "spot", "scheduled" ] }, "InstanceList":{ "type":"list", "member":{ "shape":"Instance", "locationName":"item" } }, "InstanceMonitoring":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Monitoring":{ "shape":"Monitoring", "locationName":"monitoring" } } }, "InstanceMonitoringList":{ "type":"list", "member":{ "shape":"InstanceMonitoring", "locationName":"item" } }, "InstanceNetworkInterface":{ "type":"structure", "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Description":{ "shape":"String", "locationName":"description" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "Status":{ "shape":"NetworkInterfaceStatus", "locationName":"status" }, "MacAddress":{ "shape":"String", "locationName":"macAddress" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "SourceDestCheck":{ "shape":"Boolean", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Attachment":{ "shape":"InstanceNetworkInterfaceAttachment", "locationName":"attachment" }, "Association":{ "shape":"InstanceNetworkInterfaceAssociation", "locationName":"association" }, "PrivateIpAddresses":{ "shape":"InstancePrivateIpAddressList", "locationName":"privateIpAddressesSet" } } }, "InstanceNetworkInterfaceAssociation":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "PublicDnsName":{ "shape":"String", "locationName":"publicDnsName" }, "IpOwnerId":{ "shape":"String", "locationName":"ipOwnerId" } } }, "InstanceNetworkInterfaceAttachment":{ "type":"structure", "members":{ "AttachmentId":{ "shape":"String", "locationName":"attachmentId" }, "DeviceIndex":{ "shape":"Integer", "locationName":"deviceIndex" }, "Status":{ "shape":"AttachmentStatus", "locationName":"status" }, "AttachTime":{ "shape":"DateTime", "locationName":"attachTime" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "InstanceNetworkInterfaceList":{ "type":"list", "member":{ "shape":"InstanceNetworkInterface", "locationName":"item" } }, "InstanceNetworkInterfaceSpecification":{ "type":"structure", "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "DeviceIndex":{ "shape":"Integer", "locationName":"deviceIndex" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "Description":{ "shape":"String", "locationName":"description" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "Groups":{ "shape":"SecurityGroupIdStringList", "locationName":"SecurityGroupId" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" }, "PrivateIpAddresses":{ "shape":"PrivateIpAddressSpecificationList", "locationName":"privateIpAddressesSet", "queryName":"PrivateIpAddresses" }, "SecondaryPrivateIpAddressCount":{ "shape":"Integer", "locationName":"secondaryPrivateIpAddressCount" }, "AssociatePublicIpAddress":{ "shape":"Boolean", "locationName":"associatePublicIpAddress" } } }, "InstanceNetworkInterfaceSpecificationList":{ "type":"list", "member":{ "shape":"InstanceNetworkInterfaceSpecification", "locationName":"item" } }, "InstancePrivateIpAddress":{ "type":"structure", "members":{ "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "Primary":{ "shape":"Boolean", "locationName":"primary" }, "Association":{ "shape":"InstanceNetworkInterfaceAssociation", "locationName":"association" } } }, "InstancePrivateIpAddressList":{ "type":"list", "member":{ "shape":"InstancePrivateIpAddress", "locationName":"item" } }, "InstanceState":{ "type":"structure", "members":{ "Code":{ "shape":"Integer", "locationName":"code" }, "Name":{ "shape":"InstanceStateName", "locationName":"name" } } }, "InstanceStateChange":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "CurrentState":{ "shape":"InstanceState", "locationName":"currentState" }, "PreviousState":{ "shape":"InstanceState", "locationName":"previousState" } } }, "InstanceStateChangeList":{ "type":"list", "member":{ "shape":"InstanceStateChange", "locationName":"item" } }, "InstanceStateName":{ "type":"string", "enum":[ "pending", "running", "shutting-down", "terminated", "stopping", "stopped" ] }, "InstanceStatus":{ "type":"structure", "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Events":{ "shape":"InstanceStatusEventList", "locationName":"eventsSet" }, "InstanceState":{ "shape":"InstanceState", "locationName":"instanceState" }, "SystemStatus":{ "shape":"InstanceStatusSummary", "locationName":"systemStatus" }, "InstanceStatus":{ "shape":"InstanceStatusSummary", "locationName":"instanceStatus" } } }, "InstanceStatusDetails":{ "type":"structure", "members":{ "Name":{ "shape":"StatusName", "locationName":"name" }, "Status":{ "shape":"StatusType", "locationName":"status" }, "ImpairedSince":{ "shape":"DateTime", "locationName":"impairedSince" } } }, "InstanceStatusDetailsList":{ "type":"list", "member":{ "shape":"InstanceStatusDetails", "locationName":"item" } }, "InstanceStatusEvent":{ "type":"structure", "members":{ "Code":{ "shape":"EventCode", "locationName":"code" }, "Description":{ "shape":"String", "locationName":"description" }, "NotBefore":{ "shape":"DateTime", "locationName":"notBefore" }, "NotAfter":{ "shape":"DateTime", "locationName":"notAfter" } } }, "InstanceStatusEventList":{ "type":"list", "member":{ "shape":"InstanceStatusEvent", "locationName":"item" } }, "InstanceStatusList":{ "type":"list", "member":{ "shape":"InstanceStatus", "locationName":"item" } }, "InstanceStatusSummary":{ "type":"structure", "members":{ "Status":{ "shape":"SummaryStatus", "locationName":"status" }, "Details":{ "shape":"InstanceStatusDetailsList", "locationName":"details" } } }, "InstanceType":{ "type":"string", "enum":[ "t1.micro", "t2.nano", "t2.micro", "t2.small", "t2.medium", "t2.large", "m1.small", "m1.medium", "m1.large", "m1.xlarge", "m3.medium", "m3.large", "m3.xlarge", "m3.2xlarge", "m4.large", "m4.xlarge", "m4.2xlarge", "m4.4xlarge", "m4.10xlarge", "m4.16xlarge", "m2.xlarge", "m2.2xlarge", "m2.4xlarge", "cr1.8xlarge", "r3.large", "r3.xlarge", "r3.2xlarge", "r3.4xlarge", "r3.8xlarge", "x1.16xlarge", "x1.32xlarge", "i2.xlarge", "i2.2xlarge", "i2.4xlarge", "i2.8xlarge", "hi1.4xlarge", "hs1.8xlarge", "c1.medium", "c1.xlarge", "c3.large", "c3.xlarge", "c3.2xlarge", "c3.4xlarge", "c3.8xlarge", "c4.large", "c4.xlarge", "c4.2xlarge", "c4.4xlarge", "c4.8xlarge", "cc1.4xlarge", "cc2.8xlarge", "g2.2xlarge", "g2.8xlarge", "cg1.4xlarge", "p2.xlarge", "p2.8xlarge", "p2.16xlarge", "d2.xlarge", "d2.2xlarge", "d2.4xlarge", "d2.8xlarge" ] }, "InstanceTypeList":{ "type":"list", "member":{"shape":"InstanceType"} }, "Integer":{"type":"integer"}, "InternetGateway":{ "type":"structure", "members":{ "InternetGatewayId":{ "shape":"String", "locationName":"internetGatewayId" }, "Attachments":{ "shape":"InternetGatewayAttachmentList", "locationName":"attachmentSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "InternetGatewayAttachment":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "State":{ "shape":"AttachmentStatus", "locationName":"state" } } }, "InternetGatewayAttachmentList":{ "type":"list", "member":{ "shape":"InternetGatewayAttachment", "locationName":"item" } }, "InternetGatewayList":{ "type":"list", "member":{ "shape":"InternetGateway", "locationName":"item" } }, "IpPermission":{ "type":"structure", "members":{ "IpProtocol":{ "shape":"String", "locationName":"ipProtocol" }, "FromPort":{ "shape":"Integer", "locationName":"fromPort" }, "ToPort":{ "shape":"Integer", "locationName":"toPort" }, "UserIdGroupPairs":{ "shape":"UserIdGroupPairList", "locationName":"groups" }, "IpRanges":{ "shape":"IpRangeList", "locationName":"ipRanges" }, "PrefixListIds":{ "shape":"PrefixListIdList", "locationName":"prefixListIds" } } }, "IpPermissionList":{ "type":"list", "member":{ "shape":"IpPermission", "locationName":"item" } }, "IpRange":{ "type":"structure", "members":{ "CidrIp":{ "shape":"String", "locationName":"cidrIp" } } }, "IpRangeList":{ "type":"list", "member":{ "shape":"IpRange", "locationName":"item" } }, "IpRanges":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "KeyNameStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"KeyName" } }, "KeyPair":{ "type":"structure", "members":{ "KeyName":{ "shape":"String", "locationName":"keyName" }, "KeyFingerprint":{ "shape":"String", "locationName":"keyFingerprint" }, "KeyMaterial":{ "shape":"String", "locationName":"keyMaterial" } } }, "KeyPairInfo":{ "type":"structure", "members":{ "KeyName":{ "shape":"String", "locationName":"keyName" }, "KeyFingerprint":{ "shape":"String", "locationName":"keyFingerprint" } } }, "KeyPairList":{ "type":"list", "member":{ "shape":"KeyPairInfo", "locationName":"item" } }, "LaunchPermission":{ "type":"structure", "members":{ "UserId":{ "shape":"String", "locationName":"userId" }, "Group":{ "shape":"PermissionGroup", "locationName":"group" } } }, "LaunchPermissionList":{ "type":"list", "member":{ "shape":"LaunchPermission", "locationName":"item" } }, "LaunchPermissionModifications":{ "type":"structure", "members":{ "Add":{"shape":"LaunchPermissionList"}, "Remove":{"shape":"LaunchPermissionList"} } }, "LaunchSpecification":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "SecurityGroups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "UserData":{ "shape":"String", "locationName":"userData" }, "AddressingType":{ "shape":"String", "locationName":"addressingType" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "Placement":{ "shape":"SpotPlacement", "locationName":"placement" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceSpecificationList", "locationName":"networkInterfaceSet" }, "IamInstanceProfile":{ "shape":"IamInstanceProfileSpecification", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" }, "Monitoring":{ "shape":"RunInstancesMonitoringEnabled", "locationName":"monitoring" } } }, "LaunchSpecsList":{ "type":"list", "member":{ "shape":"SpotFleetLaunchSpecification", "locationName":"item" }, "min":1 }, "ListingState":{ "type":"string", "enum":[ "available", "sold", "cancelled", "pending" ] }, "ListingStatus":{ "type":"string", "enum":[ "active", "pending", "cancelled", "closed" ] }, "Long":{"type":"long"}, "MaxResults":{ "type":"integer", "max":255, "min":5 }, "ModifyHostsRequest":{ "type":"structure", "required":[ "HostIds", "AutoPlacement" ], "members":{ "HostIds":{ "shape":"RequestHostIdList", "locationName":"hostId" }, "AutoPlacement":{ "shape":"AutoPlacement", "locationName":"autoPlacement" } } }, "ModifyHostsResult":{ "type":"structure", "members":{ "Successful":{ "shape":"ResponseHostIdList", "locationName":"successful" }, "Unsuccessful":{ "shape":"UnsuccessfulItemList", "locationName":"unsuccessful" } } }, "ModifyIdFormatRequest":{ "type":"structure", "required":[ "Resource", "UseLongIds" ], "members":{ "Resource":{"shape":"String"}, "UseLongIds":{"shape":"Boolean"} } }, "ModifyIdentityIdFormatRequest":{ "type":"structure", "required":[ "Resource", "UseLongIds", "PrincipalArn" ], "members":{ "Resource":{ "shape":"String", "locationName":"resource" }, "UseLongIds":{ "shape":"Boolean", "locationName":"useLongIds" }, "PrincipalArn":{ "shape":"String", "locationName":"principalArn" } } }, "ModifyImageAttributeRequest":{ "type":"structure", "required":["ImageId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"}, "Attribute":{"shape":"String"}, "OperationType":{"shape":"OperationType"}, "UserIds":{ "shape":"UserIdStringList", "locationName":"UserId" }, "UserGroups":{ "shape":"UserGroupStringList", "locationName":"UserGroup" }, "ProductCodes":{ "shape":"ProductCodeStringList", "locationName":"ProductCode" }, "Value":{"shape":"String"}, "LaunchPermission":{"shape":"LaunchPermissionModifications"}, "Description":{"shape":"AttributeValue"} } }, "ModifyInstanceAttributeRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Attribute":{ "shape":"InstanceAttributeName", "locationName":"attribute" }, "Value":{ "shape":"String", "locationName":"value" }, "BlockDeviceMappings":{ "shape":"InstanceBlockDeviceMappingSpecificationList", "locationName":"blockDeviceMapping" }, "SourceDestCheck":{"shape":"AttributeBooleanValue"}, "DisableApiTermination":{ "shape":"AttributeBooleanValue", "locationName":"disableApiTermination" }, "InstanceType":{ "shape":"AttributeValue", "locationName":"instanceType" }, "Kernel":{ "shape":"AttributeValue", "locationName":"kernel" }, "Ramdisk":{ "shape":"AttributeValue", "locationName":"ramdisk" }, "UserData":{ "shape":"BlobAttributeValue", "locationName":"userData" }, "InstanceInitiatedShutdownBehavior":{ "shape":"AttributeValue", "locationName":"instanceInitiatedShutdownBehavior" }, "Groups":{ "shape":"GroupIdStringList", "locationName":"GroupId" }, "EbsOptimized":{ "shape":"AttributeBooleanValue", "locationName":"ebsOptimized" }, "SriovNetSupport":{ "shape":"AttributeValue", "locationName":"sriovNetSupport" }, "EnaSupport":{ "shape":"AttributeBooleanValue", "locationName":"enaSupport" } } }, "ModifyInstancePlacementRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Tenancy":{ "shape":"HostTenancy", "locationName":"tenancy" }, "Affinity":{ "shape":"Affinity", "locationName":"affinity" }, "HostId":{ "shape":"String", "locationName":"hostId" } } }, "ModifyInstancePlacementResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "ModifyNetworkInterfaceAttributeRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "Description":{ "shape":"AttributeValue", "locationName":"description" }, "SourceDestCheck":{ "shape":"AttributeBooleanValue", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"SecurityGroupIdStringList", "locationName":"SecurityGroupId" }, "Attachment":{ "shape":"NetworkInterfaceAttachmentChanges", "locationName":"attachment" } } }, "ModifyReservedInstancesRequest":{ "type":"structure", "required":[ "ReservedInstancesIds", "TargetConfigurations" ], "members":{ "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "ReservedInstancesIds":{ "shape":"ReservedInstancesIdStringList", "locationName":"ReservedInstancesId" }, "TargetConfigurations":{ "shape":"ReservedInstancesConfigurationList", "locationName":"ReservedInstancesConfigurationSetItemType" } } }, "ModifyReservedInstancesResult":{ "type":"structure", "members":{ "ReservedInstancesModificationId":{ "shape":"String", "locationName":"reservedInstancesModificationId" } } }, "ModifySnapshotAttributeRequest":{ "type":"structure", "required":["SnapshotId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotId":{"shape":"String"}, "Attribute":{"shape":"SnapshotAttributeName"}, "OperationType":{"shape":"OperationType"}, "UserIds":{ "shape":"UserIdStringList", "locationName":"UserId" }, "GroupNames":{ "shape":"GroupNameStringList", "locationName":"UserGroup" }, "CreateVolumePermission":{"shape":"CreateVolumePermissionModifications"} } }, "ModifySpotFleetRequestRequest":{ "type":"structure", "required":["SpotFleetRequestId"], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "TargetCapacity":{ "shape":"Integer", "locationName":"targetCapacity" }, "ExcessCapacityTerminationPolicy":{ "shape":"ExcessCapacityTerminationPolicy", "locationName":"excessCapacityTerminationPolicy" } } }, "ModifySpotFleetRequestResponse":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "ModifySubnetAttributeRequest":{ "type":"structure", "required":["SubnetId"], "members":{ "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "MapPublicIpOnLaunch":{"shape":"AttributeBooleanValue"} } }, "ModifyVolumeAttributeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VolumeId":{"shape":"String"}, "AutoEnableIO":{"shape":"AttributeBooleanValue"} } }, "ModifyVpcAttributeRequest":{ "type":"structure", "required":["VpcId"], "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "EnableDnsSupport":{"shape":"AttributeBooleanValue"}, "EnableDnsHostnames":{"shape":"AttributeBooleanValue"} } }, "ModifyVpcEndpointRequest":{ "type":"structure", "required":["VpcEndpointId"], "members":{ "DryRun":{"shape":"Boolean"}, "VpcEndpointId":{"shape":"String"}, "ResetPolicy":{"shape":"Boolean"}, "PolicyDocument":{"shape":"String"}, "AddRouteTableIds":{ "shape":"ValueStringList", "locationName":"AddRouteTableId" }, "RemoveRouteTableIds":{ "shape":"ValueStringList", "locationName":"RemoveRouteTableId" } } }, "ModifyVpcEndpointResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "ModifyVpcPeeringConnectionOptionsRequest":{ "type":"structure", "required":["VpcPeeringConnectionId"], "members":{ "DryRun":{"shape":"Boolean"}, "VpcPeeringConnectionId":{"shape":"String"}, "RequesterPeeringConnectionOptions":{"shape":"PeeringConnectionOptionsRequest"}, "AccepterPeeringConnectionOptions":{"shape":"PeeringConnectionOptionsRequest"} } }, "ModifyVpcPeeringConnectionOptionsResult":{ "type":"structure", "members":{ "RequesterPeeringConnectionOptions":{ "shape":"PeeringConnectionOptions", "locationName":"requesterPeeringConnectionOptions" }, "AccepterPeeringConnectionOptions":{ "shape":"PeeringConnectionOptions", "locationName":"accepterPeeringConnectionOptions" } } }, "MonitorInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" } } }, "MonitorInstancesResult":{ "type":"structure", "members":{ "InstanceMonitorings":{ "shape":"InstanceMonitoringList", "locationName":"instancesSet" } } }, "Monitoring":{ "type":"structure", "members":{ "State":{ "shape":"MonitoringState", "locationName":"state" } } }, "MonitoringState":{ "type":"string", "enum":[ "disabled", "disabling", "enabled", "pending" ] }, "MoveAddressToVpcRequest":{ "type":"structure", "required":["PublicIp"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIp":{ "shape":"String", "locationName":"publicIp" } } }, "MoveAddressToVpcResult":{ "type":"structure", "members":{ "AllocationId":{ "shape":"String", "locationName":"allocationId" }, "Status":{ "shape":"Status", "locationName":"status" } } }, "MoveStatus":{ "type":"string", "enum":[ "movingToVpc", "restoringToClassic" ] }, "MovingAddressStatus":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "MoveStatus":{ "shape":"MoveStatus", "locationName":"moveStatus" } } }, "MovingAddressStatusSet":{ "type":"list", "member":{ "shape":"MovingAddressStatus", "locationName":"item" } }, "NatGateway":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "NatGatewayId":{ "shape":"String", "locationName":"natGatewayId" }, "CreateTime":{ "shape":"DateTime", "locationName":"createTime" }, "DeleteTime":{ "shape":"DateTime", "locationName":"deleteTime" }, "NatGatewayAddresses":{ "shape":"NatGatewayAddressList", "locationName":"natGatewayAddressSet" }, "State":{ "shape":"NatGatewayState", "locationName":"state" }, "FailureCode":{ "shape":"String", "locationName":"failureCode" }, "FailureMessage":{ "shape":"String", "locationName":"failureMessage" }, "ProvisionedBandwidth":{ "shape":"ProvisionedBandwidth", "locationName":"provisionedBandwidth" } } }, "NatGatewayAddress":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "AllocationId":{ "shape":"String", "locationName":"allocationId" }, "PrivateIp":{ "shape":"String", "locationName":"privateIp" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" } } }, "NatGatewayAddressList":{ "type":"list", "member":{ "shape":"NatGatewayAddress", "locationName":"item" } }, "NatGatewayList":{ "type":"list", "member":{ "shape":"NatGateway", "locationName":"item" } }, "NatGatewayState":{ "type":"string", "enum":[ "pending", "failed", "available", "deleting", "deleted" ] }, "NetworkAcl":{ "type":"structure", "members":{ "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "IsDefault":{ "shape":"Boolean", "locationName":"default" }, "Entries":{ "shape":"NetworkAclEntryList", "locationName":"entrySet" }, "Associations":{ "shape":"NetworkAclAssociationList", "locationName":"associationSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "NetworkAclAssociation":{ "type":"structure", "members":{ "NetworkAclAssociationId":{ "shape":"String", "locationName":"networkAclAssociationId" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" } } }, "NetworkAclAssociationList":{ "type":"list", "member":{ "shape":"NetworkAclAssociation", "locationName":"item" } }, "NetworkAclEntry":{ "type":"structure", "members":{ "RuleNumber":{ "shape":"Integer", "locationName":"ruleNumber" }, "Protocol":{ "shape":"String", "locationName":"protocol" }, "RuleAction":{ "shape":"RuleAction", "locationName":"ruleAction" }, "Egress":{ "shape":"Boolean", "locationName":"egress" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "IcmpTypeCode":{ "shape":"IcmpTypeCode", "locationName":"icmpTypeCode" }, "PortRange":{ "shape":"PortRange", "locationName":"portRange" } } }, "NetworkAclEntryList":{ "type":"list", "member":{ "shape":"NetworkAclEntry", "locationName":"item" } }, "NetworkAclList":{ "type":"list", "member":{ "shape":"NetworkAcl", "locationName":"item" } }, "NetworkInterface":{ "type":"structure", "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Description":{ "shape":"String", "locationName":"description" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "RequesterId":{ "shape":"String", "locationName":"requesterId" }, "RequesterManaged":{ "shape":"Boolean", "locationName":"requesterManaged" }, "Status":{ "shape":"NetworkInterfaceStatus", "locationName":"status" }, "MacAddress":{ "shape":"String", "locationName":"macAddress" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "SourceDestCheck":{ "shape":"Boolean", "locationName":"sourceDestCheck" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Attachment":{ "shape":"NetworkInterfaceAttachment", "locationName":"attachment" }, "Association":{ "shape":"NetworkInterfaceAssociation", "locationName":"association" }, "TagSet":{ "shape":"TagList", "locationName":"tagSet" }, "PrivateIpAddresses":{ "shape":"NetworkInterfacePrivateIpAddressList", "locationName":"privateIpAddressesSet" }, "InterfaceType":{ "shape":"NetworkInterfaceType", "locationName":"interfaceType" } } }, "NetworkInterfaceAssociation":{ "type":"structure", "members":{ "PublicIp":{ "shape":"String", "locationName":"publicIp" }, "PublicDnsName":{ "shape":"String", "locationName":"publicDnsName" }, "IpOwnerId":{ "shape":"String", "locationName":"ipOwnerId" }, "AllocationId":{ "shape":"String", "locationName":"allocationId" }, "AssociationId":{ "shape":"String", "locationName":"associationId" } } }, "NetworkInterfaceAttachment":{ "type":"structure", "members":{ "AttachmentId":{ "shape":"String", "locationName":"attachmentId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "InstanceOwnerId":{ "shape":"String", "locationName":"instanceOwnerId" }, "DeviceIndex":{ "shape":"Integer", "locationName":"deviceIndex" }, "Status":{ "shape":"AttachmentStatus", "locationName":"status" }, "AttachTime":{ "shape":"DateTime", "locationName":"attachTime" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "NetworkInterfaceAttachmentChanges":{ "type":"structure", "members":{ "AttachmentId":{ "shape":"String", "locationName":"attachmentId" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "NetworkInterfaceAttribute":{ "type":"string", "enum":[ "description", "groupSet", "sourceDestCheck", "attachment" ] }, "NetworkInterfaceIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "NetworkInterfaceList":{ "type":"list", "member":{ "shape":"NetworkInterface", "locationName":"item" } }, "NetworkInterfacePrivateIpAddress":{ "type":"structure", "members":{ "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "PrivateDnsName":{ "shape":"String", "locationName":"privateDnsName" }, "Primary":{ "shape":"Boolean", "locationName":"primary" }, "Association":{ "shape":"NetworkInterfaceAssociation", "locationName":"association" } } }, "NetworkInterfacePrivateIpAddressList":{ "type":"list", "member":{ "shape":"NetworkInterfacePrivateIpAddress", "locationName":"item" } }, "NetworkInterfaceStatus":{ "type":"string", "enum":[ "available", "attaching", "in-use", "detaching" ] }, "NetworkInterfaceType":{ "type":"string", "enum":[ "interface", "natGateway" ] }, "NewDhcpConfiguration":{ "type":"structure", "members":{ "Key":{ "shape":"String", "locationName":"key" }, "Values":{ "shape":"ValueStringList", "locationName":"Value" } } }, "NewDhcpConfigurationList":{ "type":"list", "member":{ "shape":"NewDhcpConfiguration", "locationName":"item" } }, "NextToken":{ "type":"string", "max":1024, "min":1 }, "OccurrenceDayRequestSet":{ "type":"list", "member":{ "shape":"Integer", "locationName":"OccurenceDay" } }, "OccurrenceDaySet":{ "type":"list", "member":{ "shape":"Integer", "locationName":"item" } }, "OfferingClassType":{ "type":"string", "enum":[ "standard", "convertible" ] }, "OfferingTypeValues":{ "type":"string", "enum":[ "Heavy Utilization", "Medium Utilization", "Light Utilization", "No Upfront", "Partial Upfront", "All Upfront" ] }, "OperationType":{ "type":"string", "enum":[ "add", "remove" ] }, "OwnerStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"Owner" } }, "PaymentOption":{ "type":"string", "enum":[ "AllUpfront", "PartialUpfront", "NoUpfront" ] }, "PeeringConnectionOptions":{ "type":"structure", "members":{ "AllowEgressFromLocalClassicLinkToRemoteVpc":{ "shape":"Boolean", "locationName":"allowEgressFromLocalClassicLinkToRemoteVpc" }, "AllowEgressFromLocalVpcToRemoteClassicLink":{ "shape":"Boolean", "locationName":"allowEgressFromLocalVpcToRemoteClassicLink" }, "AllowDnsResolutionFromRemoteVpc":{ "shape":"Boolean", "locationName":"allowDnsResolutionFromRemoteVpc" } } }, "PeeringConnectionOptionsRequest":{ "type":"structure", "members":{ "AllowEgressFromLocalClassicLinkToRemoteVpc":{"shape":"Boolean"}, "AllowEgressFromLocalVpcToRemoteClassicLink":{"shape":"Boolean"}, "AllowDnsResolutionFromRemoteVpc":{"shape":"Boolean"} } }, "PermissionGroup":{ "type":"string", "enum":["all"] }, "Placement":{ "type":"structure", "members":{ "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "Tenancy":{ "shape":"Tenancy", "locationName":"tenancy" }, "HostId":{ "shape":"String", "locationName":"hostId" }, "Affinity":{ "shape":"String", "locationName":"affinity" } } }, "PlacementGroup":{ "type":"structure", "members":{ "GroupName":{ "shape":"String", "locationName":"groupName" }, "Strategy":{ "shape":"PlacementStrategy", "locationName":"strategy" }, "State":{ "shape":"PlacementGroupState", "locationName":"state" } } }, "PlacementGroupList":{ "type":"list", "member":{ "shape":"PlacementGroup", "locationName":"item" } }, "PlacementGroupState":{ "type":"string", "enum":[ "pending", "available", "deleting", "deleted" ] }, "PlacementGroupStringList":{ "type":"list", "member":{"shape":"String"} }, "PlacementStrategy":{ "type":"string", "enum":["cluster"] }, "PlatformValues":{ "type":"string", "enum":["Windows"] }, "PortRange":{ "type":"structure", "members":{ "From":{ "shape":"Integer", "locationName":"from" }, "To":{ "shape":"Integer", "locationName":"to" } } }, "PrefixList":{ "type":"structure", "members":{ "PrefixListId":{ "shape":"String", "locationName":"prefixListId" }, "PrefixListName":{ "shape":"String", "locationName":"prefixListName" }, "Cidrs":{ "shape":"ValueStringList", "locationName":"cidrSet" } } }, "PrefixListId":{ "type":"structure", "members":{ "PrefixListId":{ "shape":"String", "locationName":"prefixListId" } } }, "PrefixListIdList":{ "type":"list", "member":{ "shape":"PrefixListId", "locationName":"item" } }, "PrefixListIdSet":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "PrefixListSet":{ "type":"list", "member":{ "shape":"PrefixList", "locationName":"item" } }, "PriceSchedule":{ "type":"structure", "members":{ "Term":{ "shape":"Long", "locationName":"term" }, "Price":{ "shape":"Double", "locationName":"price" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "Active":{ "shape":"Boolean", "locationName":"active" } } }, "PriceScheduleList":{ "type":"list", "member":{ "shape":"PriceSchedule", "locationName":"item" } }, "PriceScheduleSpecification":{ "type":"structure", "members":{ "Term":{ "shape":"Long", "locationName":"term" }, "Price":{ "shape":"Double", "locationName":"price" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" } } }, "PriceScheduleSpecificationList":{ "type":"list", "member":{ "shape":"PriceScheduleSpecification", "locationName":"item" } }, "PricingDetail":{ "type":"structure", "members":{ "Price":{ "shape":"Double", "locationName":"price" }, "Count":{ "shape":"Integer", "locationName":"count" } } }, "PricingDetailsList":{ "type":"list", "member":{ "shape":"PricingDetail", "locationName":"item" } }, "PrivateIpAddressConfigSet":{ "type":"list", "member":{ "shape":"ScheduledInstancesPrivateIpAddressConfig", "locationName":"PrivateIpAddressConfigSet" } }, "PrivateIpAddressSpecification":{ "type":"structure", "required":["PrivateIpAddress"], "members":{ "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "Primary":{ "shape":"Boolean", "locationName":"primary" } } }, "PrivateIpAddressSpecificationList":{ "type":"list", "member":{ "shape":"PrivateIpAddressSpecification", "locationName":"item" } }, "PrivateIpAddressStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"PrivateIpAddress" } }, "ProductCode":{ "type":"structure", "members":{ "ProductCodeId":{ "shape":"String", "locationName":"productCode" }, "ProductCodeType":{ "shape":"ProductCodeValues", "locationName":"type" } } }, "ProductCodeList":{ "type":"list", "member":{ "shape":"ProductCode", "locationName":"item" } }, "ProductCodeStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ProductCode" } }, "ProductCodeValues":{ "type":"string", "enum":[ "devpay", "marketplace" ] }, "ProductDescriptionList":{ "type":"list", "member":{"shape":"String"} }, "PropagatingVgw":{ "type":"structure", "members":{ "GatewayId":{ "shape":"String", "locationName":"gatewayId" } } }, "PropagatingVgwList":{ "type":"list", "member":{ "shape":"PropagatingVgw", "locationName":"item" } }, "ProvisionedBandwidth":{ "type":"structure", "members":{ "Provisioned":{ "shape":"String", "locationName":"provisioned" }, "Requested":{ "shape":"String", "locationName":"requested" }, "RequestTime":{ "shape":"DateTime", "locationName":"requestTime" }, "ProvisionTime":{ "shape":"DateTime", "locationName":"provisionTime" }, "Status":{ "shape":"String", "locationName":"status" } } }, "PublicIpStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"PublicIp" } }, "Purchase":{ "type":"structure", "members":{ "HostReservationId":{ "shape":"String", "locationName":"hostReservationId" }, "HostIdSet":{ "shape":"ResponseHostIdSet", "locationName":"hostIdSet" }, "InstanceFamily":{ "shape":"String", "locationName":"instanceFamily" }, "PaymentOption":{ "shape":"PaymentOption", "locationName":"paymentOption" }, "UpfrontPrice":{ "shape":"String", "locationName":"upfrontPrice" }, "HourlyPrice":{ "shape":"String", "locationName":"hourlyPrice" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "Duration":{ "shape":"Integer", "locationName":"duration" } } }, "PurchaseHostReservationRequest":{ "type":"structure", "required":[ "OfferingId", "HostIdSet" ], "members":{ "OfferingId":{"shape":"String"}, "HostIdSet":{"shape":"RequestHostIdSet"}, "LimitPrice":{"shape":"String"}, "CurrencyCode":{"shape":"CurrencyCodeValues"}, "ClientToken":{"shape":"String"} } }, "PurchaseHostReservationResult":{ "type":"structure", "members":{ "Purchase":{ "shape":"PurchaseSet", "locationName":"purchase" }, "TotalUpfrontPrice":{ "shape":"String", "locationName":"totalUpfrontPrice" }, "TotalHourlyPrice":{ "shape":"String", "locationName":"totalHourlyPrice" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "PurchaseRequest":{ "type":"structure", "required":[ "PurchaseToken", "InstanceCount" ], "members":{ "PurchaseToken":{"shape":"String"}, "InstanceCount":{"shape":"Integer"} } }, "PurchaseRequestSet":{ "type":"list", "member":{ "shape":"PurchaseRequest", "locationName":"PurchaseRequest" }, "min":1 }, "PurchaseReservedInstancesOfferingRequest":{ "type":"structure", "required":[ "ReservedInstancesOfferingId", "InstanceCount" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ReservedInstancesOfferingId":{"shape":"String"}, "InstanceCount":{"shape":"Integer"}, "LimitPrice":{ "shape":"ReservedInstanceLimitPrice", "locationName":"limitPrice" } } }, "PurchaseReservedInstancesOfferingResult":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" } } }, "PurchaseScheduledInstancesRequest":{ "type":"structure", "required":["PurchaseRequests"], "members":{ "DryRun":{"shape":"Boolean"}, "ClientToken":{ "shape":"String", "idempotencyToken":true }, "PurchaseRequests":{ "shape":"PurchaseRequestSet", "locationName":"PurchaseRequest" } } }, "PurchaseScheduledInstancesResult":{ "type":"structure", "members":{ "ScheduledInstanceSet":{ "shape":"PurchasedScheduledInstanceSet", "locationName":"scheduledInstanceSet" } } }, "PurchaseSet":{ "type":"list", "member":{"shape":"Purchase"} }, "PurchasedScheduledInstanceSet":{ "type":"list", "member":{ "shape":"ScheduledInstance", "locationName":"item" } }, "RIProductDescription":{ "type":"string", "enum":[ "Linux/UNIX", "Linux/UNIX (Amazon VPC)", "Windows", "Windows (Amazon VPC)" ] }, "ReasonCodesList":{ "type":"list", "member":{ "shape":"ReportInstanceReasonCodes", "locationName":"item" } }, "RebootInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" } } }, "RecurringCharge":{ "type":"structure", "members":{ "Frequency":{ "shape":"RecurringChargeFrequency", "locationName":"frequency" }, "Amount":{ "shape":"Double", "locationName":"amount" } } }, "RecurringChargeFrequency":{ "type":"string", "enum":["Hourly"] }, "RecurringChargesList":{ "type":"list", "member":{ "shape":"RecurringCharge", "locationName":"item" } }, "Region":{ "type":"structure", "members":{ "RegionName":{ "shape":"String", "locationName":"regionName" }, "Endpoint":{ "shape":"String", "locationName":"regionEndpoint" } } }, "RegionList":{ "type":"list", "member":{ "shape":"Region", "locationName":"item" } }, "RegionNameStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"RegionName" } }, "RegisterImageRequest":{ "type":"structure", "required":["Name"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageLocation":{"shape":"String"}, "Name":{ "shape":"String", "locationName":"name" }, "Description":{ "shape":"String", "locationName":"description" }, "Architecture":{ "shape":"ArchitectureValues", "locationName":"architecture" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "RootDeviceName":{ "shape":"String", "locationName":"rootDeviceName" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingRequestList", "locationName":"BlockDeviceMapping" }, "VirtualizationType":{ "shape":"String", "locationName":"virtualizationType" }, "SriovNetSupport":{ "shape":"String", "locationName":"sriovNetSupport" }, "EnaSupport":{ "shape":"Boolean", "locationName":"enaSupport" } } }, "RegisterImageResult":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" } } }, "RejectVpcPeeringConnectionRequest":{ "type":"structure", "required":["VpcPeeringConnectionId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "RejectVpcPeeringConnectionResult":{ "type":"structure", "members":{ "Return":{ "shape":"Boolean", "locationName":"return" } } }, "ReleaseAddressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIp":{"shape":"String"}, "AllocationId":{"shape":"String"} } }, "ReleaseHostsRequest":{ "type":"structure", "required":["HostIds"], "members":{ "HostIds":{ "shape":"RequestHostIdList", "locationName":"hostId" } } }, "ReleaseHostsResult":{ "type":"structure", "members":{ "Successful":{ "shape":"ResponseHostIdList", "locationName":"successful" }, "Unsuccessful":{ "shape":"UnsuccessfulItemList", "locationName":"unsuccessful" } } }, "ReplaceNetworkAclAssociationRequest":{ "type":"structure", "required":[ "AssociationId", "NetworkAclId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AssociationId":{ "shape":"String", "locationName":"associationId" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" } } }, "ReplaceNetworkAclAssociationResult":{ "type":"structure", "members":{ "NewAssociationId":{ "shape":"String", "locationName":"newAssociationId" } } }, "ReplaceNetworkAclEntryRequest":{ "type":"structure", "required":[ "NetworkAclId", "RuleNumber", "Protocol", "RuleAction", "Egress", "CidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkAclId":{ "shape":"String", "locationName":"networkAclId" }, "RuleNumber":{ "shape":"Integer", "locationName":"ruleNumber" }, "Protocol":{ "shape":"String", "locationName":"protocol" }, "RuleAction":{ "shape":"RuleAction", "locationName":"ruleAction" }, "Egress":{ "shape":"Boolean", "locationName":"egress" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "IcmpTypeCode":{ "shape":"IcmpTypeCode", "locationName":"Icmp" }, "PortRange":{ "shape":"PortRange", "locationName":"portRange" } } }, "ReplaceRouteRequest":{ "type":"structure", "required":[ "RouteTableId", "DestinationCidrBlock" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" }, "GatewayId":{ "shape":"String", "locationName":"gatewayId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" }, "NatGatewayId":{ "shape":"String", "locationName":"natGatewayId" } } }, "ReplaceRouteTableAssociationRequest":{ "type":"structure", "required":[ "AssociationId", "RouteTableId" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "AssociationId":{ "shape":"String", "locationName":"associationId" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" } } }, "ReplaceRouteTableAssociationResult":{ "type":"structure", "members":{ "NewAssociationId":{ "shape":"String", "locationName":"newAssociationId" } } }, "ReportInstanceReasonCodes":{ "type":"string", "enum":[ "instance-stuck-in-state", "unresponsive", "not-accepting-credentials", "password-not-available", "performance-network", "performance-instance-store", "performance-ebs-volume", "performance-other", "other" ] }, "ReportInstanceStatusRequest":{ "type":"structure", "required":[ "Instances", "Status", "ReasonCodes" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "Instances":{ "shape":"InstanceIdStringList", "locationName":"instanceId" }, "Status":{ "shape":"ReportStatusType", "locationName":"status" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "EndTime":{ "shape":"DateTime", "locationName":"endTime" }, "ReasonCodes":{ "shape":"ReasonCodesList", "locationName":"reasonCode" }, "Description":{ "shape":"String", "locationName":"description" } } }, "ReportStatusType":{ "type":"string", "enum":[ "ok", "impaired" ] }, "RequestHostIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "RequestHostIdSet":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "RequestSpotFleetRequest":{ "type":"structure", "required":["SpotFleetRequestConfig"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotFleetRequestConfig":{ "shape":"SpotFleetRequestConfigData", "locationName":"spotFleetRequestConfig" } } }, "RequestSpotFleetResponse":{ "type":"structure", "required":["SpotFleetRequestId"], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" } } }, "RequestSpotInstancesRequest":{ "type":"structure", "required":["SpotPrice"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "Type":{ "shape":"SpotInstanceType", "locationName":"type" }, "ValidFrom":{ "shape":"DateTime", "locationName":"validFrom" }, "ValidUntil":{ "shape":"DateTime", "locationName":"validUntil" }, "LaunchGroup":{ "shape":"String", "locationName":"launchGroup" }, "AvailabilityZoneGroup":{ "shape":"String", "locationName":"availabilityZoneGroup" }, "BlockDurationMinutes":{ "shape":"Integer", "locationName":"blockDurationMinutes" }, "LaunchSpecification":{"shape":"RequestSpotLaunchSpecification"} } }, "RequestSpotInstancesResult":{ "type":"structure", "members":{ "SpotInstanceRequests":{ "shape":"SpotInstanceRequestList", "locationName":"spotInstanceRequestSet" } } }, "RequestSpotLaunchSpecification":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "SecurityGroups":{ "shape":"ValueStringList", "locationName":"SecurityGroup" }, "UserData":{ "shape":"String", "locationName":"userData" }, "AddressingType":{ "shape":"String", "locationName":"addressingType" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "Placement":{ "shape":"SpotPlacement", "locationName":"placement" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceSpecificationList", "locationName":"NetworkInterface" }, "IamInstanceProfile":{ "shape":"IamInstanceProfileSpecification", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" }, "Monitoring":{ "shape":"RunInstancesMonitoringEnabled", "locationName":"monitoring" }, "SecurityGroupIds":{ "shape":"ValueStringList", "locationName":"SecurityGroupId" } } }, "Reservation":{ "type":"structure", "members":{ "ReservationId":{ "shape":"String", "locationName":"reservationId" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "RequesterId":{ "shape":"String", "locationName":"requesterId" }, "Groups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "Instances":{ "shape":"InstanceList", "locationName":"instancesSet" } } }, "ReservationList":{ "type":"list", "member":{ "shape":"Reservation", "locationName":"item" } }, "ReservationState":{ "type":"string", "enum":[ "payment-pending", "payment-failed", "active", "retired" ] }, "ReservationValue":{ "type":"structure", "members":{ "RemainingTotalValue":{ "shape":"String", "locationName":"remainingTotalValue" }, "RemainingUpfrontValue":{ "shape":"String", "locationName":"remainingUpfrontValue" }, "HourlyPrice":{ "shape":"String", "locationName":"hourlyPrice" } } }, "ReservedInstanceIdSet":{ "type":"list", "member":{ "shape":"String", "locationName":"ReservedInstanceId" } }, "ReservedInstanceLimitPrice":{ "type":"structure", "members":{ "Amount":{ "shape":"Double", "locationName":"amount" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" } } }, "ReservedInstanceReservationValue":{ "type":"structure", "members":{ "ReservedInstanceId":{ "shape":"String", "locationName":"reservedInstanceId" }, "ReservationValue":{ "shape":"ReservationValue", "locationName":"reservationValue" } } }, "ReservedInstanceReservationValueSet":{ "type":"list", "member":{ "shape":"ReservedInstanceReservationValue", "locationName":"item" } }, "ReservedInstanceState":{ "type":"string", "enum":[ "payment-pending", "active", "payment-failed", "retired" ] }, "ReservedInstances":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Start":{ "shape":"DateTime", "locationName":"start" }, "End":{ "shape":"DateTime", "locationName":"end" }, "Duration":{ "shape":"Long", "locationName":"duration" }, "UsagePrice":{ "shape":"Float", "locationName":"usagePrice" }, "FixedPrice":{ "shape":"Float", "locationName":"fixedPrice" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "ProductDescription":{ "shape":"RIProductDescription", "locationName":"productDescription" }, "State":{ "shape":"ReservedInstanceState", "locationName":"state" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "OfferingType":{ "shape":"OfferingTypeValues", "locationName":"offeringType" }, "RecurringCharges":{ "shape":"RecurringChargesList", "locationName":"recurringCharges" }, "OfferingClass":{ "shape":"OfferingClassType", "locationName":"offeringClass" }, "Scope":{ "shape":"scope", "locationName":"scope" } } }, "ReservedInstancesConfiguration":{ "type":"structure", "members":{ "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Platform":{ "shape":"String", "locationName":"platform" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "Scope":{ "shape":"scope", "locationName":"scope" } } }, "ReservedInstancesConfigurationList":{ "type":"list", "member":{ "shape":"ReservedInstancesConfiguration", "locationName":"item" } }, "ReservedInstancesId":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" } } }, "ReservedInstancesIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ReservedInstancesId" } }, "ReservedInstancesList":{ "type":"list", "member":{ "shape":"ReservedInstances", "locationName":"item" } }, "ReservedInstancesListing":{ "type":"structure", "members":{ "ReservedInstancesListingId":{ "shape":"String", "locationName":"reservedInstancesListingId" }, "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "CreateDate":{ "shape":"DateTime", "locationName":"createDate" }, "UpdateDate":{ "shape":"DateTime", "locationName":"updateDate" }, "Status":{ "shape":"ListingStatus", "locationName":"status" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "InstanceCounts":{ "shape":"InstanceCountList", "locationName":"instanceCounts" }, "PriceSchedules":{ "shape":"PriceScheduleList", "locationName":"priceSchedules" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "ReservedInstancesListingList":{ "type":"list", "member":{ "shape":"ReservedInstancesListing", "locationName":"item" } }, "ReservedInstancesModification":{ "type":"structure", "members":{ "ReservedInstancesModificationId":{ "shape":"String", "locationName":"reservedInstancesModificationId" }, "ReservedInstancesIds":{ "shape":"ReservedIntancesIds", "locationName":"reservedInstancesSet" }, "ModificationResults":{ "shape":"ReservedInstancesModificationResultList", "locationName":"modificationResultSet" }, "CreateDate":{ "shape":"DateTime", "locationName":"createDate" }, "UpdateDate":{ "shape":"DateTime", "locationName":"updateDate" }, "EffectiveDate":{ "shape":"DateTime", "locationName":"effectiveDate" }, "Status":{ "shape":"String", "locationName":"status" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" } } }, "ReservedInstancesModificationIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ReservedInstancesModificationId" } }, "ReservedInstancesModificationList":{ "type":"list", "member":{ "shape":"ReservedInstancesModification", "locationName":"item" } }, "ReservedInstancesModificationResult":{ "type":"structure", "members":{ "ReservedInstancesId":{ "shape":"String", "locationName":"reservedInstancesId" }, "TargetConfiguration":{ "shape":"ReservedInstancesConfiguration", "locationName":"targetConfiguration" } } }, "ReservedInstancesModificationResultList":{ "type":"list", "member":{ "shape":"ReservedInstancesModificationResult", "locationName":"item" } }, "ReservedInstancesOffering":{ "type":"structure", "members":{ "ReservedInstancesOfferingId":{ "shape":"String", "locationName":"reservedInstancesOfferingId" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "Duration":{ "shape":"Long", "locationName":"duration" }, "UsagePrice":{ "shape":"Float", "locationName":"usagePrice" }, "FixedPrice":{ "shape":"Float", "locationName":"fixedPrice" }, "ProductDescription":{ "shape":"RIProductDescription", "locationName":"productDescription" }, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" }, "CurrencyCode":{ "shape":"CurrencyCodeValues", "locationName":"currencyCode" }, "OfferingType":{ "shape":"OfferingTypeValues", "locationName":"offeringType" }, "RecurringCharges":{ "shape":"RecurringChargesList", "locationName":"recurringCharges" }, "Marketplace":{ "shape":"Boolean", "locationName":"marketplace" }, "PricingDetails":{ "shape":"PricingDetailsList", "locationName":"pricingDetailsSet" }, "OfferingClass":{ "shape":"OfferingClassType", "locationName":"offeringClass" }, "Scope":{ "shape":"scope", "locationName":"scope" } } }, "ReservedInstancesOfferingIdStringList":{ "type":"list", "member":{"shape":"String"} }, "ReservedInstancesOfferingList":{ "type":"list", "member":{ "shape":"ReservedInstancesOffering", "locationName":"item" } }, "ReservedIntancesIds":{ "type":"list", "member":{ "shape":"ReservedInstancesId", "locationName":"item" } }, "ResetImageAttributeName":{ "type":"string", "enum":["launchPermission"] }, "ResetImageAttributeRequest":{ "type":"structure", "required":[ "ImageId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"}, "Attribute":{"shape":"ResetImageAttributeName"} } }, "ResetInstanceAttributeRequest":{ "type":"structure", "required":[ "InstanceId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Attribute":{ "shape":"InstanceAttributeName", "locationName":"attribute" } } }, "ResetNetworkInterfaceAttributeRequest":{ "type":"structure", "required":["NetworkInterfaceId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "SourceDestCheck":{ "shape":"String", "locationName":"sourceDestCheck" } } }, "ResetSnapshotAttributeRequest":{ "type":"structure", "required":[ "SnapshotId", "Attribute" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "SnapshotId":{"shape":"String"}, "Attribute":{"shape":"SnapshotAttributeName"} } }, "ResourceIdList":{ "type":"list", "member":{"shape":"String"} }, "ResourceType":{ "type":"string", "enum":[ "customer-gateway", "dhcp-options", "image", "instance", "internet-gateway", "network-acl", "network-interface", "reserved-instances", "route-table", "snapshot", "spot-instances-request", "subnet", "security-group", "volume", "vpc", "vpn-connection", "vpn-gateway" ] }, "ResponseHostIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "ResponseHostIdSet":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "RestorableByStringList":{ "type":"list", "member":{"shape":"String"} }, "RestoreAddressToClassicRequest":{ "type":"structure", "required":["PublicIp"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "PublicIp":{ "shape":"String", "locationName":"publicIp" } } }, "RestoreAddressToClassicResult":{ "type":"structure", "members":{ "Status":{ "shape":"Status", "locationName":"status" }, "PublicIp":{ "shape":"String", "locationName":"publicIp" } } }, "RevokeSecurityGroupEgressRequest":{ "type":"structure", "required":["GroupId"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupId":{ "shape":"String", "locationName":"groupId" }, "SourceSecurityGroupName":{ "shape":"String", "locationName":"sourceSecurityGroupName" }, "SourceSecurityGroupOwnerId":{ "shape":"String", "locationName":"sourceSecurityGroupOwnerId" }, "IpProtocol":{ "shape":"String", "locationName":"ipProtocol" }, "FromPort":{ "shape":"Integer", "locationName":"fromPort" }, "ToPort":{ "shape":"Integer", "locationName":"toPort" }, "CidrIp":{ "shape":"String", "locationName":"cidrIp" }, "IpPermissions":{ "shape":"IpPermissionList", "locationName":"ipPermissions" } } }, "RevokeSecurityGroupIngressRequest":{ "type":"structure", "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "GroupName":{"shape":"String"}, "GroupId":{"shape":"String"}, "SourceSecurityGroupName":{"shape":"String"}, "SourceSecurityGroupOwnerId":{"shape":"String"}, "IpProtocol":{"shape":"String"}, "FromPort":{"shape":"Integer"}, "ToPort":{"shape":"Integer"}, "CidrIp":{"shape":"String"}, "IpPermissions":{"shape":"IpPermissionList"} } }, "Route":{ "type":"structure", "members":{ "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" }, "DestinationPrefixListId":{ "shape":"String", "locationName":"destinationPrefixListId" }, "GatewayId":{ "shape":"String", "locationName":"gatewayId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "InstanceOwnerId":{ "shape":"String", "locationName":"instanceOwnerId" }, "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" }, "NatGatewayId":{ "shape":"String", "locationName":"natGatewayId" }, "State":{ "shape":"RouteState", "locationName":"state" }, "Origin":{ "shape":"RouteOrigin", "locationName":"origin" } } }, "RouteList":{ "type":"list", "member":{ "shape":"Route", "locationName":"item" } }, "RouteOrigin":{ "type":"string", "enum":[ "CreateRouteTable", "CreateRoute", "EnableVgwRoutePropagation" ] }, "RouteState":{ "type":"string", "enum":[ "active", "blackhole" ] }, "RouteTable":{ "type":"structure", "members":{ "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Routes":{ "shape":"RouteList", "locationName":"routeSet" }, "Associations":{ "shape":"RouteTableAssociationList", "locationName":"associationSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "PropagatingVgws":{ "shape":"PropagatingVgwList", "locationName":"propagatingVgwSet" } } }, "RouteTableAssociation":{ "type":"structure", "members":{ "RouteTableAssociationId":{ "shape":"String", "locationName":"routeTableAssociationId" }, "RouteTableId":{ "shape":"String", "locationName":"routeTableId" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "Main":{ "shape":"Boolean", "locationName":"main" } } }, "RouteTableAssociationList":{ "type":"list", "member":{ "shape":"RouteTableAssociation", "locationName":"item" } }, "RouteTableList":{ "type":"list", "member":{ "shape":"RouteTable", "locationName":"item" } }, "RuleAction":{ "type":"string", "enum":[ "allow", "deny" ] }, "RunInstancesMonitoringEnabled":{ "type":"structure", "required":["Enabled"], "members":{ "Enabled":{ "shape":"Boolean", "locationName":"enabled" } } }, "RunInstancesRequest":{ "type":"structure", "required":[ "ImageId", "MinCount", "MaxCount" ], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "ImageId":{"shape":"String"}, "MinCount":{"shape":"Integer"}, "MaxCount":{"shape":"Integer"}, "KeyName":{"shape":"String"}, "SecurityGroups":{ "shape":"SecurityGroupStringList", "locationName":"SecurityGroup" }, "SecurityGroupIds":{ "shape":"SecurityGroupIdStringList", "locationName":"SecurityGroupId" }, "UserData":{"shape":"String"}, "InstanceType":{"shape":"InstanceType"}, "Placement":{"shape":"Placement"}, "KernelId":{"shape":"String"}, "RamdiskId":{"shape":"String"}, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingRequestList", "locationName":"BlockDeviceMapping" }, "Monitoring":{"shape":"RunInstancesMonitoringEnabled"}, "SubnetId":{"shape":"String"}, "DisableApiTermination":{ "shape":"Boolean", "locationName":"disableApiTermination" }, "InstanceInitiatedShutdownBehavior":{ "shape":"ShutdownBehavior", "locationName":"instanceInitiatedShutdownBehavior" }, "PrivateIpAddress":{ "shape":"String", "locationName":"privateIpAddress" }, "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "AdditionalInfo":{ "shape":"String", "locationName":"additionalInfo" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceSpecificationList", "locationName":"networkInterface" }, "IamInstanceProfile":{ "shape":"IamInstanceProfileSpecification", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" } } }, "RunScheduledInstancesRequest":{ "type":"structure", "required":[ "ScheduledInstanceId", "LaunchSpecification" ], "members":{ "DryRun":{"shape":"Boolean"}, "ClientToken":{ "shape":"String", "idempotencyToken":true }, "InstanceCount":{"shape":"Integer"}, "ScheduledInstanceId":{"shape":"String"}, "LaunchSpecification":{"shape":"ScheduledInstancesLaunchSpecification"} } }, "RunScheduledInstancesResult":{ "type":"structure", "members":{ "InstanceIdSet":{ "shape":"InstanceIdSet", "locationName":"instanceIdSet" } } }, "S3Storage":{ "type":"structure", "members":{ "Bucket":{ "shape":"String", "locationName":"bucket" }, "Prefix":{ "shape":"String", "locationName":"prefix" }, "AWSAccessKeyId":{"shape":"String"}, "UploadPolicy":{ "shape":"Blob", "locationName":"uploadPolicy" }, "UploadPolicySignature":{ "shape":"String", "locationName":"uploadPolicySignature" } } }, "ScheduledInstance":{ "type":"structure", "members":{ "ScheduledInstanceId":{ "shape":"String", "locationName":"scheduledInstanceId" }, "InstanceType":{ "shape":"String", "locationName":"instanceType" }, "Platform":{ "shape":"String", "locationName":"platform" }, "NetworkPlatform":{ "shape":"String", "locationName":"networkPlatform" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "SlotDurationInHours":{ "shape":"Integer", "locationName":"slotDurationInHours" }, "Recurrence":{ "shape":"ScheduledInstanceRecurrence", "locationName":"recurrence" }, "PreviousSlotEndTime":{ "shape":"DateTime", "locationName":"previousSlotEndTime" }, "NextSlotStartTime":{ "shape":"DateTime", "locationName":"nextSlotStartTime" }, "HourlyPrice":{ "shape":"String", "locationName":"hourlyPrice" }, "TotalScheduledInstanceHours":{ "shape":"Integer", "locationName":"totalScheduledInstanceHours" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" }, "TermStartDate":{ "shape":"DateTime", "locationName":"termStartDate" }, "TermEndDate":{ "shape":"DateTime", "locationName":"termEndDate" }, "CreateDate":{ "shape":"DateTime", "locationName":"createDate" } } }, "ScheduledInstanceAvailability":{ "type":"structure", "members":{ "InstanceType":{ "shape":"String", "locationName":"instanceType" }, "Platform":{ "shape":"String", "locationName":"platform" }, "NetworkPlatform":{ "shape":"String", "locationName":"networkPlatform" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "PurchaseToken":{ "shape":"String", "locationName":"purchaseToken" }, "SlotDurationInHours":{ "shape":"Integer", "locationName":"slotDurationInHours" }, "Recurrence":{ "shape":"ScheduledInstanceRecurrence", "locationName":"recurrence" }, "FirstSlotStartTime":{ "shape":"DateTime", "locationName":"firstSlotStartTime" }, "HourlyPrice":{ "shape":"String", "locationName":"hourlyPrice" }, "TotalScheduledInstanceHours":{ "shape":"Integer", "locationName":"totalScheduledInstanceHours" }, "AvailableInstanceCount":{ "shape":"Integer", "locationName":"availableInstanceCount" }, "MinTermDurationInDays":{ "shape":"Integer", "locationName":"minTermDurationInDays" }, "MaxTermDurationInDays":{ "shape":"Integer", "locationName":"maxTermDurationInDays" } } }, "ScheduledInstanceAvailabilitySet":{ "type":"list", "member":{ "shape":"ScheduledInstanceAvailability", "locationName":"item" } }, "ScheduledInstanceIdRequestSet":{ "type":"list", "member":{ "shape":"String", "locationName":"ScheduledInstanceId" } }, "ScheduledInstanceRecurrence":{ "type":"structure", "members":{ "Frequency":{ "shape":"String", "locationName":"frequency" }, "Interval":{ "shape":"Integer", "locationName":"interval" }, "OccurrenceDaySet":{ "shape":"OccurrenceDaySet", "locationName":"occurrenceDaySet" }, "OccurrenceRelativeToEnd":{ "shape":"Boolean", "locationName":"occurrenceRelativeToEnd" }, "OccurrenceUnit":{ "shape":"String", "locationName":"occurrenceUnit" } } }, "ScheduledInstanceRecurrenceRequest":{ "type":"structure", "members":{ "Frequency":{"shape":"String"}, "Interval":{"shape":"Integer"}, "OccurrenceDays":{ "shape":"OccurrenceDayRequestSet", "locationName":"OccurrenceDay" }, "OccurrenceRelativeToEnd":{"shape":"Boolean"}, "OccurrenceUnit":{"shape":"String"} } }, "ScheduledInstanceSet":{ "type":"list", "member":{ "shape":"ScheduledInstance", "locationName":"item" } }, "ScheduledInstancesBlockDeviceMapping":{ "type":"structure", "members":{ "DeviceName":{"shape":"String"}, "NoDevice":{"shape":"String"}, "VirtualName":{"shape":"String"}, "Ebs":{"shape":"ScheduledInstancesEbs"} } }, "ScheduledInstancesBlockDeviceMappingSet":{ "type":"list", "member":{ "shape":"ScheduledInstancesBlockDeviceMapping", "locationName":"BlockDeviceMapping" } }, "ScheduledInstancesEbs":{ "type":"structure", "members":{ "SnapshotId":{"shape":"String"}, "VolumeSize":{"shape":"Integer"}, "DeleteOnTermination":{"shape":"Boolean"}, "VolumeType":{"shape":"String"}, "Iops":{"shape":"Integer"}, "Encrypted":{"shape":"Boolean"} } }, "ScheduledInstancesIamInstanceProfile":{ "type":"structure", "members":{ "Arn":{"shape":"String"}, "Name":{"shape":"String"} } }, "ScheduledInstancesLaunchSpecification":{ "type":"structure", "required":["ImageId"], "members":{ "ImageId":{"shape":"String"}, "KeyName":{"shape":"String"}, "SecurityGroupIds":{ "shape":"ScheduledInstancesSecurityGroupIdSet", "locationName":"SecurityGroupId" }, "UserData":{"shape":"String"}, "Placement":{"shape":"ScheduledInstancesPlacement"}, "KernelId":{"shape":"String"}, "InstanceType":{"shape":"String"}, "RamdiskId":{"shape":"String"}, "BlockDeviceMappings":{ "shape":"ScheduledInstancesBlockDeviceMappingSet", "locationName":"BlockDeviceMapping" }, "Monitoring":{"shape":"ScheduledInstancesMonitoring"}, "SubnetId":{"shape":"String"}, "NetworkInterfaces":{ "shape":"ScheduledInstancesNetworkInterfaceSet", "locationName":"NetworkInterface" }, "IamInstanceProfile":{"shape":"ScheduledInstancesIamInstanceProfile"}, "EbsOptimized":{"shape":"Boolean"} } }, "ScheduledInstancesMonitoring":{ "type":"structure", "members":{ "Enabled":{"shape":"Boolean"} } }, "ScheduledInstancesNetworkInterface":{ "type":"structure", "members":{ "NetworkInterfaceId":{"shape":"String"}, "DeviceIndex":{"shape":"Integer"}, "SubnetId":{"shape":"String"}, "Description":{"shape":"String"}, "PrivateIpAddress":{"shape":"String"}, "PrivateIpAddressConfigs":{ "shape":"PrivateIpAddressConfigSet", "locationName":"PrivateIpAddressConfig" }, "SecondaryPrivateIpAddressCount":{"shape":"Integer"}, "AssociatePublicIpAddress":{"shape":"Boolean"}, "Groups":{ "shape":"ScheduledInstancesSecurityGroupIdSet", "locationName":"Group" }, "DeleteOnTermination":{"shape":"Boolean"} } }, "ScheduledInstancesNetworkInterfaceSet":{ "type":"list", "member":{ "shape":"ScheduledInstancesNetworkInterface", "locationName":"NetworkInterface" } }, "ScheduledInstancesPlacement":{ "type":"structure", "members":{ "AvailabilityZone":{"shape":"String"}, "GroupName":{"shape":"String"} } }, "ScheduledInstancesPrivateIpAddressConfig":{ "type":"structure", "members":{ "PrivateIpAddress":{"shape":"String"}, "Primary":{"shape":"Boolean"} } }, "ScheduledInstancesSecurityGroupIdSet":{ "type":"list", "member":{ "shape":"String", "locationName":"SecurityGroupId" } }, "SecurityGroup":{ "type":"structure", "members":{ "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "GroupId":{ "shape":"String", "locationName":"groupId" }, "Description":{ "shape":"String", "locationName":"groupDescription" }, "IpPermissions":{ "shape":"IpPermissionList", "locationName":"ipPermissions" }, "IpPermissionsEgress":{ "shape":"IpPermissionList", "locationName":"ipPermissionsEgress" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "SecurityGroupIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"SecurityGroupId" } }, "SecurityGroupList":{ "type":"list", "member":{ "shape":"SecurityGroup", "locationName":"item" } }, "SecurityGroupReference":{ "type":"structure", "required":[ "GroupId", "ReferencingVpcId" ], "members":{ "GroupId":{ "shape":"String", "locationName":"groupId" }, "ReferencingVpcId":{ "shape":"String", "locationName":"referencingVpcId" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "SecurityGroupReferences":{ "type":"list", "member":{ "shape":"SecurityGroupReference", "locationName":"item" } }, "SecurityGroupStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"SecurityGroup" } }, "ShutdownBehavior":{ "type":"string", "enum":[ "stop", "terminate" ] }, "SlotDateTimeRangeRequest":{ "type":"structure", "required":[ "EarliestTime", "LatestTime" ], "members":{ "EarliestTime":{"shape":"DateTime"}, "LatestTime":{"shape":"DateTime"} } }, "SlotStartTimeRangeRequest":{ "type":"structure", "members":{ "EarliestTime":{"shape":"DateTime"}, "LatestTime":{"shape":"DateTime"} } }, "Snapshot":{ "type":"structure", "members":{ "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "State":{ "shape":"SnapshotState", "locationName":"status" }, "StateMessage":{ "shape":"String", "locationName":"statusMessage" }, "StartTime":{ "shape":"DateTime", "locationName":"startTime" }, "Progress":{ "shape":"String", "locationName":"progress" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "Description":{ "shape":"String", "locationName":"description" }, "VolumeSize":{ "shape":"Integer", "locationName":"volumeSize" }, "OwnerAlias":{ "shape":"String", "locationName":"ownerAlias" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{ "shape":"String", "locationName":"kmsKeyId" }, "DataEncryptionKeyId":{ "shape":"String", "locationName":"dataEncryptionKeyId" } } }, "SnapshotAttributeName":{ "type":"string", "enum":[ "productCodes", "createVolumePermission" ] }, "SnapshotDetail":{ "type":"structure", "members":{ "DiskImageSize":{ "shape":"Double", "locationName":"diskImageSize" }, "Description":{ "shape":"String", "locationName":"description" }, "Format":{ "shape":"String", "locationName":"format" }, "Url":{ "shape":"String", "locationName":"url" }, "UserBucket":{ "shape":"UserBucketDetails", "locationName":"userBucket" }, "DeviceName":{ "shape":"String", "locationName":"deviceName" }, "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "Progress":{ "shape":"String", "locationName":"progress" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Status":{ "shape":"String", "locationName":"status" } } }, "SnapshotDetailList":{ "type":"list", "member":{ "shape":"SnapshotDetail", "locationName":"item" } }, "SnapshotDiskContainer":{ "type":"structure", "members":{ "Description":{"shape":"String"}, "Format":{"shape":"String"}, "Url":{"shape":"String"}, "UserBucket":{"shape":"UserBucket"} } }, "SnapshotIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"SnapshotId" } }, "SnapshotList":{ "type":"list", "member":{ "shape":"Snapshot", "locationName":"item" } }, "SnapshotState":{ "type":"string", "enum":[ "pending", "completed", "error" ] }, "SnapshotTaskDetail":{ "type":"structure", "members":{ "DiskImageSize":{ "shape":"Double", "locationName":"diskImageSize" }, "Description":{ "shape":"String", "locationName":"description" }, "Format":{ "shape":"String", "locationName":"format" }, "Url":{ "shape":"String", "locationName":"url" }, "UserBucket":{ "shape":"UserBucketDetails", "locationName":"userBucket" }, "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "Progress":{ "shape":"String", "locationName":"progress" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "Status":{ "shape":"String", "locationName":"status" } } }, "SpotDatafeedSubscription":{ "type":"structure", "members":{ "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "Bucket":{ "shape":"String", "locationName":"bucket" }, "Prefix":{ "shape":"String", "locationName":"prefix" }, "State":{ "shape":"DatafeedSubscriptionState", "locationName":"state" }, "Fault":{ "shape":"SpotInstanceStateFault", "locationName":"fault" } } }, "SpotFleetLaunchSpecification":{ "type":"structure", "members":{ "ImageId":{ "shape":"String", "locationName":"imageId" }, "KeyName":{ "shape":"String", "locationName":"keyName" }, "SecurityGroups":{ "shape":"GroupIdentifierList", "locationName":"groupSet" }, "UserData":{ "shape":"String", "locationName":"userData" }, "AddressingType":{ "shape":"String", "locationName":"addressingType" }, "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "Placement":{ "shape":"SpotPlacement", "locationName":"placement" }, "KernelId":{ "shape":"String", "locationName":"kernelId" }, "RamdiskId":{ "shape":"String", "locationName":"ramdiskId" }, "BlockDeviceMappings":{ "shape":"BlockDeviceMappingList", "locationName":"blockDeviceMapping" }, "Monitoring":{ "shape":"SpotFleetMonitoring", "locationName":"monitoring" }, "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "NetworkInterfaces":{ "shape":"InstanceNetworkInterfaceSpecificationList", "locationName":"networkInterfaceSet" }, "IamInstanceProfile":{ "shape":"IamInstanceProfileSpecification", "locationName":"iamInstanceProfile" }, "EbsOptimized":{ "shape":"Boolean", "locationName":"ebsOptimized" }, "WeightedCapacity":{ "shape":"Double", "locationName":"weightedCapacity" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" } } }, "SpotFleetMonitoring":{ "type":"structure", "members":{ "Enabled":{ "shape":"Boolean", "locationName":"enabled" } } }, "SpotFleetRequestConfig":{ "type":"structure", "required":[ "SpotFleetRequestId", "SpotFleetRequestState", "SpotFleetRequestConfig", "CreateTime" ], "members":{ "SpotFleetRequestId":{ "shape":"String", "locationName":"spotFleetRequestId" }, "SpotFleetRequestState":{ "shape":"BatchState", "locationName":"spotFleetRequestState" }, "SpotFleetRequestConfig":{ "shape":"SpotFleetRequestConfigData", "locationName":"spotFleetRequestConfig" }, "CreateTime":{ "shape":"DateTime", "locationName":"createTime" }, "ActivityStatus":{ "shape":"ActivityStatus", "locationName":"activityStatus" } } }, "SpotFleetRequestConfigData":{ "type":"structure", "required":[ "SpotPrice", "TargetCapacity", "IamFleetRole", "LaunchSpecifications" ], "members":{ "ClientToken":{ "shape":"String", "locationName":"clientToken" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" }, "TargetCapacity":{ "shape":"Integer", "locationName":"targetCapacity" }, "ValidFrom":{ "shape":"DateTime", "locationName":"validFrom" }, "ValidUntil":{ "shape":"DateTime", "locationName":"validUntil" }, "TerminateInstancesWithExpiration":{ "shape":"Boolean", "locationName":"terminateInstancesWithExpiration" }, "IamFleetRole":{ "shape":"String", "locationName":"iamFleetRole" }, "LaunchSpecifications":{ "shape":"LaunchSpecsList", "locationName":"launchSpecifications" }, "ExcessCapacityTerminationPolicy":{ "shape":"ExcessCapacityTerminationPolicy", "locationName":"excessCapacityTerminationPolicy" }, "AllocationStrategy":{ "shape":"AllocationStrategy", "locationName":"allocationStrategy" }, "FulfilledCapacity":{ "shape":"Double", "locationName":"fulfilledCapacity" }, "Type":{ "shape":"FleetType", "locationName":"type" } } }, "SpotFleetRequestConfigSet":{ "type":"list", "member":{ "shape":"SpotFleetRequestConfig", "locationName":"item" } }, "SpotInstanceRequest":{ "type":"structure", "members":{ "SpotInstanceRequestId":{ "shape":"String", "locationName":"spotInstanceRequestId" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" }, "Type":{ "shape":"SpotInstanceType", "locationName":"type" }, "State":{ "shape":"SpotInstanceState", "locationName":"state" }, "Fault":{ "shape":"SpotInstanceStateFault", "locationName":"fault" }, "Status":{ "shape":"SpotInstanceStatus", "locationName":"status" }, "ValidFrom":{ "shape":"DateTime", "locationName":"validFrom" }, "ValidUntil":{ "shape":"DateTime", "locationName":"validUntil" }, "LaunchGroup":{ "shape":"String", "locationName":"launchGroup" }, "AvailabilityZoneGroup":{ "shape":"String", "locationName":"availabilityZoneGroup" }, "LaunchSpecification":{ "shape":"LaunchSpecification", "locationName":"launchSpecification" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "CreateTime":{ "shape":"DateTime", "locationName":"createTime" }, "ProductDescription":{ "shape":"RIProductDescription", "locationName":"productDescription" }, "BlockDurationMinutes":{ "shape":"Integer", "locationName":"blockDurationMinutes" }, "ActualBlockHourlyPrice":{ "shape":"String", "locationName":"actualBlockHourlyPrice" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "LaunchedAvailabilityZone":{ "shape":"String", "locationName":"launchedAvailabilityZone" } } }, "SpotInstanceRequestIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"SpotInstanceRequestId" } }, "SpotInstanceRequestList":{ "type":"list", "member":{ "shape":"SpotInstanceRequest", "locationName":"item" } }, "SpotInstanceState":{ "type":"string", "enum":[ "open", "active", "closed", "cancelled", "failed" ] }, "SpotInstanceStateFault":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "SpotInstanceStatus":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "UpdateTime":{ "shape":"DateTime", "locationName":"updateTime" }, "Message":{ "shape":"String", "locationName":"message" } } }, "SpotInstanceType":{ "type":"string", "enum":[ "one-time", "persistent" ] }, "SpotPlacement":{ "type":"structure", "members":{ "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "GroupName":{ "shape":"String", "locationName":"groupName" } } }, "SpotPrice":{ "type":"structure", "members":{ "InstanceType":{ "shape":"InstanceType", "locationName":"instanceType" }, "ProductDescription":{ "shape":"RIProductDescription", "locationName":"productDescription" }, "SpotPrice":{ "shape":"String", "locationName":"spotPrice" }, "Timestamp":{ "shape":"DateTime", "locationName":"timestamp" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" } } }, "SpotPriceHistoryList":{ "type":"list", "member":{ "shape":"SpotPrice", "locationName":"item" } }, "StaleIpPermission":{ "type":"structure", "members":{ "FromPort":{ "shape":"Integer", "locationName":"fromPort" }, "IpProtocol":{ "shape":"String", "locationName":"ipProtocol" }, "IpRanges":{ "shape":"IpRanges", "locationName":"ipRanges" }, "PrefixListIds":{ "shape":"PrefixListIdSet", "locationName":"prefixListIds" }, "ToPort":{ "shape":"Integer", "locationName":"toPort" }, "UserIdGroupPairs":{ "shape":"UserIdGroupPairSet", "locationName":"groups" } } }, "StaleIpPermissionSet":{ "type":"list", "member":{ "shape":"StaleIpPermission", "locationName":"item" } }, "StaleSecurityGroup":{ "type":"structure", "required":["GroupId"], "members":{ "GroupId":{ "shape":"String", "locationName":"groupId" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "Description":{ "shape":"String", "locationName":"description" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "StaleIpPermissions":{ "shape":"StaleIpPermissionSet", "locationName":"staleIpPermissions" }, "StaleIpPermissionsEgress":{ "shape":"StaleIpPermissionSet", "locationName":"staleIpPermissionsEgress" } } }, "StaleSecurityGroupSet":{ "type":"list", "member":{ "shape":"StaleSecurityGroup", "locationName":"item" } }, "StartInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "AdditionalInfo":{ "shape":"String", "locationName":"additionalInfo" }, "DryRun":{ "shape":"Boolean", "locationName":"dryRun" } } }, "StartInstancesResult":{ "type":"structure", "members":{ "StartingInstances":{ "shape":"InstanceStateChangeList", "locationName":"instancesSet" } } }, "State":{ "type":"string", "enum":[ "Pending", "Available", "Deleting", "Deleted" ] }, "StateReason":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "Status":{ "type":"string", "enum":[ "MoveInProgress", "InVpc", "InClassic" ] }, "StatusName":{ "type":"string", "enum":["reachability"] }, "StatusType":{ "type":"string", "enum":[ "passed", "failed", "insufficient-data", "initializing" ] }, "StopInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" }, "Force":{ "shape":"Boolean", "locationName":"force" } } }, "StopInstancesResult":{ "type":"structure", "members":{ "StoppingInstances":{ "shape":"InstanceStateChangeList", "locationName":"instancesSet" } } }, "Storage":{ "type":"structure", "members":{ "S3":{"shape":"S3Storage"} } }, "String":{"type":"string"}, "Subnet":{ "type":"structure", "members":{ "SubnetId":{ "shape":"String", "locationName":"subnetId" }, "State":{ "shape":"SubnetState", "locationName":"state" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "AvailableIpAddressCount":{ "shape":"Integer", "locationName":"availableIpAddressCount" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "DefaultForAz":{ "shape":"Boolean", "locationName":"defaultForAz" }, "MapPublicIpOnLaunch":{ "shape":"Boolean", "locationName":"mapPublicIpOnLaunch" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "SubnetIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"SubnetId" } }, "SubnetList":{ "type":"list", "member":{ "shape":"Subnet", "locationName":"item" } }, "SubnetState":{ "type":"string", "enum":[ "pending", "available" ] }, "SummaryStatus":{ "type":"string", "enum":[ "ok", "impaired", "insufficient-data", "not-applicable", "initializing" ] }, "Tag":{ "type":"structure", "members":{ "Key":{ "shape":"String", "locationName":"key" }, "Value":{ "shape":"String", "locationName":"value" } } }, "TagDescription":{ "type":"structure", "members":{ "ResourceId":{ "shape":"String", "locationName":"resourceId" }, "ResourceType":{ "shape":"ResourceType", "locationName":"resourceType" }, "Key":{ "shape":"String", "locationName":"key" }, "Value":{ "shape":"String", "locationName":"value" } } }, "TagDescriptionList":{ "type":"list", "member":{ "shape":"TagDescription", "locationName":"item" } }, "TagList":{ "type":"list", "member":{ "shape":"Tag", "locationName":"item" } }, "TargetConfiguration":{ "type":"structure", "members":{ "OfferingId":{ "shape":"String", "locationName":"offeringId" }, "InstanceCount":{ "shape":"Integer", "locationName":"instanceCount" } } }, "TargetConfigurationRequest":{ "type":"structure", "required":["OfferingId"], "members":{ "OfferingId":{"shape":"String"}, "InstanceCount":{"shape":"Integer"} } }, "TargetConfigurationRequestSet":{ "type":"list", "member":{ "shape":"TargetConfigurationRequest", "locationName":"TargetConfigurationRequest" } }, "TargetReservationValue":{ "type":"structure", "members":{ "TargetConfiguration":{ "shape":"TargetConfiguration", "locationName":"targetConfiguration" }, "ReservationValue":{ "shape":"ReservationValue", "locationName":"reservationValue" } } }, "TargetReservationValueSet":{ "type":"list", "member":{ "shape":"TargetReservationValue", "locationName":"item" } }, "TelemetryStatus":{ "type":"string", "enum":[ "UP", "DOWN" ] }, "Tenancy":{ "type":"string", "enum":[ "default", "dedicated", "host" ] }, "TerminateInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" } } }, "TerminateInstancesResult":{ "type":"structure", "members":{ "TerminatingInstances":{ "shape":"InstanceStateChangeList", "locationName":"instancesSet" } } }, "TrafficType":{ "type":"string", "enum":[ "ACCEPT", "REJECT", "ALL" ] }, "UnassignPrivateIpAddressesRequest":{ "type":"structure", "required":[ "NetworkInterfaceId", "PrivateIpAddresses" ], "members":{ "NetworkInterfaceId":{ "shape":"String", "locationName":"networkInterfaceId" }, "PrivateIpAddresses":{ "shape":"PrivateIpAddressStringList", "locationName":"privateIpAddress" } } }, "UnmonitorInstancesRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "DryRun":{ "shape":"Boolean", "locationName":"dryRun" }, "InstanceIds":{ "shape":"InstanceIdStringList", "locationName":"InstanceId" } } }, "UnmonitorInstancesResult":{ "type":"structure", "members":{ "InstanceMonitorings":{ "shape":"InstanceMonitoringList", "locationName":"instancesSet" } } }, "UnsuccessfulItem":{ "type":"structure", "required":["Error"], "members":{ "Error":{ "shape":"UnsuccessfulItemError", "locationName":"error" }, "ResourceId":{ "shape":"String", "locationName":"resourceId" } } }, "UnsuccessfulItemError":{ "type":"structure", "required":[ "Code", "Message" ], "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "UnsuccessfulItemList":{ "type":"list", "member":{ "shape":"UnsuccessfulItem", "locationName":"item" } }, "UnsuccessfulItemSet":{ "type":"list", "member":{ "shape":"UnsuccessfulItem", "locationName":"item" } }, "UserBucket":{ "type":"structure", "members":{ "S3Bucket":{"shape":"String"}, "S3Key":{"shape":"String"} } }, "UserBucketDetails":{ "type":"structure", "members":{ "S3Bucket":{ "shape":"String", "locationName":"s3Bucket" }, "S3Key":{ "shape":"String", "locationName":"s3Key" } } }, "UserData":{ "type":"structure", "members":{ "Data":{ "shape":"String", "locationName":"data" } } }, "UserGroupStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"UserGroup" } }, "UserIdGroupPair":{ "type":"structure", "members":{ "UserId":{ "shape":"String", "locationName":"userId" }, "GroupName":{ "shape":"String", "locationName":"groupName" }, "GroupId":{ "shape":"String", "locationName":"groupId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" }, "PeeringStatus":{ "shape":"String", "locationName":"peeringStatus" } } }, "UserIdGroupPairList":{ "type":"list", "member":{ "shape":"UserIdGroupPair", "locationName":"item" } }, "UserIdGroupPairSet":{ "type":"list", "member":{ "shape":"UserIdGroupPair", "locationName":"item" } }, "UserIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"UserId" } }, "ValueStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"item" } }, "VgwTelemetry":{ "type":"structure", "members":{ "OutsideIpAddress":{ "shape":"String", "locationName":"outsideIpAddress" }, "Status":{ "shape":"TelemetryStatus", "locationName":"status" }, "LastStatusChange":{ "shape":"DateTime", "locationName":"lastStatusChange" }, "StatusMessage":{ "shape":"String", "locationName":"statusMessage" }, "AcceptedRouteCount":{ "shape":"Integer", "locationName":"acceptedRouteCount" } } }, "VgwTelemetryList":{ "type":"list", "member":{ "shape":"VgwTelemetry", "locationName":"item" } }, "VirtualizationType":{ "type":"string", "enum":[ "hvm", "paravirtual" ] }, "Volume":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "Size":{ "shape":"Integer", "locationName":"size" }, "SnapshotId":{ "shape":"String", "locationName":"snapshotId" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "State":{ "shape":"VolumeState", "locationName":"status" }, "CreateTime":{ "shape":"DateTime", "locationName":"createTime" }, "Attachments":{ "shape":"VolumeAttachmentList", "locationName":"attachmentSet" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "VolumeType":{ "shape":"VolumeType", "locationName":"volumeType" }, "Iops":{ "shape":"Integer", "locationName":"iops" }, "Encrypted":{ "shape":"Boolean", "locationName":"encrypted" }, "KmsKeyId":{ "shape":"String", "locationName":"kmsKeyId" } } }, "VolumeAttachment":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "InstanceId":{ "shape":"String", "locationName":"instanceId" }, "Device":{ "shape":"String", "locationName":"device" }, "State":{ "shape":"VolumeAttachmentState", "locationName":"status" }, "AttachTime":{ "shape":"DateTime", "locationName":"attachTime" }, "DeleteOnTermination":{ "shape":"Boolean", "locationName":"deleteOnTermination" } } }, "VolumeAttachmentList":{ "type":"list", "member":{ "shape":"VolumeAttachment", "locationName":"item" } }, "VolumeAttachmentState":{ "type":"string", "enum":[ "attaching", "attached", "detaching", "detached" ] }, "VolumeAttributeName":{ "type":"string", "enum":[ "autoEnableIO", "productCodes" ] }, "VolumeDetail":{ "type":"structure", "required":["Size"], "members":{ "Size":{ "shape":"Long", "locationName":"size" } } }, "VolumeIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"VolumeId" } }, "VolumeList":{ "type":"list", "member":{ "shape":"Volume", "locationName":"item" } }, "VolumeState":{ "type":"string", "enum":[ "creating", "available", "in-use", "deleting", "deleted", "error" ] }, "VolumeStatusAction":{ "type":"structure", "members":{ "Code":{ "shape":"String", "locationName":"code" }, "Description":{ "shape":"String", "locationName":"description" }, "EventType":{ "shape":"String", "locationName":"eventType" }, "EventId":{ "shape":"String", "locationName":"eventId" } } }, "VolumeStatusActionsList":{ "type":"list", "member":{ "shape":"VolumeStatusAction", "locationName":"item" } }, "VolumeStatusDetails":{ "type":"structure", "members":{ "Name":{ "shape":"VolumeStatusName", "locationName":"name" }, "Status":{ "shape":"String", "locationName":"status" } } }, "VolumeStatusDetailsList":{ "type":"list", "member":{ "shape":"VolumeStatusDetails", "locationName":"item" } }, "VolumeStatusEvent":{ "type":"structure", "members":{ "EventType":{ "shape":"String", "locationName":"eventType" }, "Description":{ "shape":"String", "locationName":"description" }, "NotBefore":{ "shape":"DateTime", "locationName":"notBefore" }, "NotAfter":{ "shape":"DateTime", "locationName":"notAfter" }, "EventId":{ "shape":"String", "locationName":"eventId" } } }, "VolumeStatusEventsList":{ "type":"list", "member":{ "shape":"VolumeStatusEvent", "locationName":"item" } }, "VolumeStatusInfo":{ "type":"structure", "members":{ "Status":{ "shape":"VolumeStatusInfoStatus", "locationName":"status" }, "Details":{ "shape":"VolumeStatusDetailsList", "locationName":"details" } } }, "VolumeStatusInfoStatus":{ "type":"string", "enum":[ "ok", "impaired", "insufficient-data" ] }, "VolumeStatusItem":{ "type":"structure", "members":{ "VolumeId":{ "shape":"String", "locationName":"volumeId" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "VolumeStatus":{ "shape":"VolumeStatusInfo", "locationName":"volumeStatus" }, "Events":{ "shape":"VolumeStatusEventsList", "locationName":"eventsSet" }, "Actions":{ "shape":"VolumeStatusActionsList", "locationName":"actionsSet" } } }, "VolumeStatusList":{ "type":"list", "member":{ "shape":"VolumeStatusItem", "locationName":"item" } }, "VolumeStatusName":{ "type":"string", "enum":[ "io-enabled", "io-performance" ] }, "VolumeType":{ "type":"string", "enum":[ "standard", "io1", "gp2", "sc1", "st1" ] }, "Vpc":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "State":{ "shape":"VpcState", "locationName":"state" }, "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "DhcpOptionsId":{ "shape":"String", "locationName":"dhcpOptionsId" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "InstanceTenancy":{ "shape":"Tenancy", "locationName":"instanceTenancy" }, "IsDefault":{ "shape":"Boolean", "locationName":"isDefault" } } }, "VpcAttachment":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "State":{ "shape":"AttachmentStatus", "locationName":"state" } } }, "VpcAttachmentList":{ "type":"list", "member":{ "shape":"VpcAttachment", "locationName":"item" } }, "VpcAttributeName":{ "type":"string", "enum":[ "enableDnsSupport", "enableDnsHostnames" ] }, "VpcClassicLink":{ "type":"structure", "members":{ "VpcId":{ "shape":"String", "locationName":"vpcId" }, "ClassicLinkEnabled":{ "shape":"Boolean", "locationName":"classicLinkEnabled" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "VpcClassicLinkIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpcId" } }, "VpcClassicLinkList":{ "type":"list", "member":{ "shape":"VpcClassicLink", "locationName":"item" } }, "VpcEndpoint":{ "type":"structure", "members":{ "VpcEndpointId":{ "shape":"String", "locationName":"vpcEndpointId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "ServiceName":{ "shape":"String", "locationName":"serviceName" }, "State":{ "shape":"State", "locationName":"state" }, "PolicyDocument":{ "shape":"String", "locationName":"policyDocument" }, "RouteTableIds":{ "shape":"ValueStringList", "locationName":"routeTableIdSet" }, "CreationTimestamp":{ "shape":"DateTime", "locationName":"creationTimestamp" } } }, "VpcEndpointSet":{ "type":"list", "member":{ "shape":"VpcEndpoint", "locationName":"item" } }, "VpcIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpcId" } }, "VpcList":{ "type":"list", "member":{ "shape":"Vpc", "locationName":"item" } }, "VpcPeeringConnection":{ "type":"structure", "members":{ "AccepterVpcInfo":{ "shape":"VpcPeeringConnectionVpcInfo", "locationName":"accepterVpcInfo" }, "ExpirationTime":{ "shape":"DateTime", "locationName":"expirationTime" }, "RequesterVpcInfo":{ "shape":"VpcPeeringConnectionVpcInfo", "locationName":"requesterVpcInfo" }, "Status":{ "shape":"VpcPeeringConnectionStateReason", "locationName":"status" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "VpcPeeringConnectionId":{ "shape":"String", "locationName":"vpcPeeringConnectionId" } } }, "VpcPeeringConnectionList":{ "type":"list", "member":{ "shape":"VpcPeeringConnection", "locationName":"item" } }, "VpcPeeringConnectionOptionsDescription":{ "type":"structure", "members":{ "AllowEgressFromLocalClassicLinkToRemoteVpc":{ "shape":"Boolean", "locationName":"allowEgressFromLocalClassicLinkToRemoteVpc" }, "AllowEgressFromLocalVpcToRemoteClassicLink":{ "shape":"Boolean", "locationName":"allowEgressFromLocalVpcToRemoteClassicLink" }, "AllowDnsResolutionFromRemoteVpc":{ "shape":"Boolean", "locationName":"allowDnsResolutionFromRemoteVpc" } } }, "VpcPeeringConnectionStateReason":{ "type":"structure", "members":{ "Code":{ "shape":"VpcPeeringConnectionStateReasonCode", "locationName":"code" }, "Message":{ "shape":"String", "locationName":"message" } } }, "VpcPeeringConnectionStateReasonCode":{ "type":"string", "enum":[ "initiating-request", "pending-acceptance", "active", "deleted", "rejected", "failed", "expired", "provisioning", "deleting" ] }, "VpcPeeringConnectionVpcInfo":{ "type":"structure", "members":{ "CidrBlock":{ "shape":"String", "locationName":"cidrBlock" }, "OwnerId":{ "shape":"String", "locationName":"ownerId" }, "VpcId":{ "shape":"String", "locationName":"vpcId" }, "PeeringOptions":{ "shape":"VpcPeeringConnectionOptionsDescription", "locationName":"peeringOptions" } } }, "VpcState":{ "type":"string", "enum":[ "pending", "available" ] }, "VpnConnection":{ "type":"structure", "members":{ "VpnConnectionId":{ "shape":"String", "locationName":"vpnConnectionId" }, "State":{ "shape":"VpnState", "locationName":"state" }, "CustomerGatewayConfiguration":{ "shape":"String", "locationName":"customerGatewayConfiguration" }, "Type":{ "shape":"GatewayType", "locationName":"type" }, "CustomerGatewayId":{ "shape":"String", "locationName":"customerGatewayId" }, "VpnGatewayId":{ "shape":"String", "locationName":"vpnGatewayId" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" }, "VgwTelemetry":{ "shape":"VgwTelemetryList", "locationName":"vgwTelemetry" }, "Options":{ "shape":"VpnConnectionOptions", "locationName":"options" }, "Routes":{ "shape":"VpnStaticRouteList", "locationName":"routes" } } }, "VpnConnectionIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpnConnectionId" } }, "VpnConnectionList":{ "type":"list", "member":{ "shape":"VpnConnection", "locationName":"item" } }, "VpnConnectionOptions":{ "type":"structure", "members":{ "StaticRoutesOnly":{ "shape":"Boolean", "locationName":"staticRoutesOnly" } } }, "VpnConnectionOptionsSpecification":{ "type":"structure", "members":{ "StaticRoutesOnly":{ "shape":"Boolean", "locationName":"staticRoutesOnly" } } }, "VpnGateway":{ "type":"structure", "members":{ "VpnGatewayId":{ "shape":"String", "locationName":"vpnGatewayId" }, "State":{ "shape":"VpnState", "locationName":"state" }, "Type":{ "shape":"GatewayType", "locationName":"type" }, "AvailabilityZone":{ "shape":"String", "locationName":"availabilityZone" }, "VpcAttachments":{ "shape":"VpcAttachmentList", "locationName":"attachments" }, "Tags":{ "shape":"TagList", "locationName":"tagSet" } } }, "VpnGatewayIdStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpnGatewayId" } }, "VpnGatewayList":{ "type":"list", "member":{ "shape":"VpnGateway", "locationName":"item" } }, "VpnState":{ "type":"string", "enum":[ "pending", "available", "deleting", "deleted" ] }, "VpnStaticRoute":{ "type":"structure", "members":{ "DestinationCidrBlock":{ "shape":"String", "locationName":"destinationCidrBlock" }, "Source":{ "shape":"VpnStaticRouteSource", "locationName":"source" }, "State":{ "shape":"VpnState", "locationName":"state" } } }, "VpnStaticRouteList":{ "type":"list", "member":{ "shape":"VpnStaticRoute", "locationName":"item" } }, "VpnStaticRouteSource":{ "type":"string", "enum":["Static"] }, "ZoneNameStringList":{ "type":"list", "member":{ "shape":"String", "locationName":"ZoneName" } }, "scope":{ "type":"string", "enum":[ "Availability Zone", "Region" ] } } } aws-sdk-go-1.4.22/models/apis/ec2/2016-09-15/docs-2.json000077500000000000000000023377111300374646400215170ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon Elastic Compute Cloud

        Amazon Elastic Compute Cloud (Amazon EC2) provides resizable computing capacity in the Amazon Web Services (AWS) cloud. Using Amazon EC2 eliminates your need to invest in hardware up front, so you can develop and deploy applications faster.

        ", "operations": { "AcceptReservedInstancesExchangeQuote": "

        Purchases Convertible Reserved Instance offerings described in the GetReservedInstancesExchangeQuote call.

        ", "AcceptVpcPeeringConnection": "

        Accept a VPC peering connection request. To accept a request, the VPC peering connection must be in the pending-acceptance state, and you must be the owner of the peer VPC. Use the DescribeVpcPeeringConnections request to view your outstanding VPC peering connection requests.

        ", "AllocateAddress": "

        Acquires an Elastic IP address.

        An Elastic IP address is for use either in the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        ", "AllocateHosts": "

        Allocates a Dedicated Host to your account. At minimum you need to specify the instance size type, Availability Zone, and quantity of hosts you want to allocate.

        ", "AssignPrivateIpAddresses": "

        Assigns one or more secondary private IP addresses to the specified network interface. You can specify one or more specific secondary IP addresses, or you can specify the number of secondary IP addresses to be automatically assigned within the subnet's CIDR block range. The number of secondary IP addresses that you can assign to an instance varies by instance type. For information about instance types, see Instance Types in the Amazon Elastic Compute Cloud User Guide. For more information about Elastic IP addresses, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        AssignPrivateIpAddresses is available only in EC2-VPC.

        ", "AssociateAddress": "

        Associates an Elastic IP address with an instance or a network interface.

        An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        [EC2-Classic, VPC in an EC2-VPC-only account] If the Elastic IP address is already associated with a different instance, it is disassociated from that instance and associated with the specified instance.

        [VPC in an EC2-Classic account] If you don't specify a private IP address, the Elastic IP address is associated with the primary IP address. If the Elastic IP address is already associated with a different instance or a network interface, you get an error unless you allow reassociation.

        This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error, and you may be charged for each time the Elastic IP address is remapped to the same instance. For more information, see the Elastic IP Addresses section of Amazon EC2 Pricing.

        ", "AssociateDhcpOptions": "

        Associates a set of DHCP options (that you've previously created) with the specified VPC, or associates no DHCP options with the VPC.

        After you associate the options with the VPC, any existing instances and all new instances that you launch in that VPC use the options. You don't need to restart or relaunch the instances. They automatically pick up the changes within a few hours, depending on how frequently the instance renews its DHCP lease. You can explicitly renew the lease using the operating system on the instance.

        For more information, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.

        ", "AssociateRouteTable": "

        Associates a subnet with a route table. The subnet and route table must be in the same VPC. This association causes traffic originating from the subnet to be routed according to the routes in the route table. The action returns an association ID, which you need in order to disassociate the route table from the subnet later. A route table can be associated with multiple subnets.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "AttachClassicLinkVpc": "

        Links an EC2-Classic instance to a ClassicLink-enabled VPC through one or more of the VPC's security groups. You cannot link an EC2-Classic instance to more than one VPC at a time. You can only link an instance that's in the running state. An instance is automatically unlinked from a VPC when it's stopped - you can link it to the VPC again when you restart it.

        After you've linked an instance, you cannot change the VPC security groups that are associated with it. To change the security groups, you must first unlink the instance, and then link it again.

        Linking your instance to a VPC is sometimes referred to as attaching your instance.

        ", "AttachInternetGateway": "

        Attaches an Internet gateway to a VPC, enabling connectivity between the Internet and the VPC. For more information about your VPC and Internet gateway, see the Amazon Virtual Private Cloud User Guide.

        ", "AttachNetworkInterface": "

        Attaches a network interface to an instance.

        ", "AttachVolume": "

        Attaches an EBS volume to a running or stopped instance and exposes it to the instance with the specified device name.

        Encrypted EBS volumes may only be attached to instances that support Amazon EBS encryption. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        For a list of supported device names, see Attaching an EBS Volume to an Instance. Any device names that aren't reserved for instance store volumes can be used for EBS volumes. For more information, see Amazon EC2 Instance Store in the Amazon Elastic Compute Cloud User Guide.

        If a volume has an AWS Marketplace product code:

        • The volume can be attached only to a stopped instance.

        • AWS Marketplace product codes are copied from the volume to the instance.

        • You must be subscribed to the product.

        • The instance type and operating system of the instance must support the product. For example, you can't detach a volume from a Windows instance and attach it to a Linux instance.

        For an overview of the AWS Marketplace, see Introducing AWS Marketplace.

        For more information about EBS volumes, see Attaching Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.

        ", "AttachVpnGateway": "

        Attaches a virtual private gateway to a VPC. For more information, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "AuthorizeSecurityGroupEgress": "

        [EC2-VPC only] Adds one or more egress rules to a security group for use with a VPC. Specifically, this action permits instances to send traffic to one or more destination CIDR IP address ranges, or to one or more destination security groups for the same VPC. This action doesn't apply to security groups for use in EC2-Classic. For more information, see Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.

        You can have up to 50 rules per security group (covering both ingress and egress rules).

        Each rule consists of the protocol (for example, TCP), plus either a CIDR range or a source group. For the TCP and UDP protocols, you must also specify the destination port or port range. For the ICMP protocol, you must also specify the ICMP type and code. You can use -1 for the type or code to mean all types or all codes.

        Rule changes are propagated to affected instances as quickly as possible. However, a small delay might occur.

        ", "AuthorizeSecurityGroupIngress": "

        Adds one or more ingress rules to a security group.

        EC2-Classic: You can have up to 100 rules per group.

        EC2-VPC: You can have up to 50 rules per group (covering both ingress and egress rules).

        Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

        [EC2-Classic] This action gives one or more CIDR IP address ranges permission to access a security group in your account, or gives one or more security groups (called the source groups) permission to access a security group for your account. A source group can be for your own AWS account, or another.

        [EC2-VPC] This action gives one or more CIDR IP address ranges permission to access a security group in your VPC, or gives one or more other security groups (called the source groups) permission to access a security group for your VPC. The security groups must all be for the same VPC.

        ", "BundleInstance": "

        Bundles an Amazon instance store-backed Windows instance.

        During bundling, only the root device volume (C:\\) is bundled. Data on other instance store volumes is not preserved.

        This action is not applicable for Linux/Unix instances or Windows instances that are backed by Amazon EBS.

        For more information, see Creating an Instance Store-Backed Windows AMI.

        ", "CancelBundleTask": "

        Cancels a bundling operation for an instance store-backed Windows instance.

        ", "CancelConversionTask": "

        Cancels an active conversion task. The task can be the import of an instance or volume. The action removes all artifacts of the conversion, including a partially uploaded volume or instance. If the conversion is complete or is in the process of transferring the final disk image, the command fails and returns an exception.

        For more information, see Importing a Virtual Machine Using the Amazon EC2 CLI.

        ", "CancelExportTask": "

        Cancels an active export task. The request removes all artifacts of the export, including any partially-created Amazon S3 objects. If the export task is complete or is in the process of transferring the final disk image, the command fails and returns an error.

        ", "CancelImportTask": "

        Cancels an in-process import virtual machine or import snapshot task.

        ", "CancelReservedInstancesListing": "

        Cancels the specified Reserved Instance listing in the Reserved Instance Marketplace.

        For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "CancelSpotFleetRequests": "

        Cancels the specified Spot fleet requests.

        After you cancel a Spot fleet request, the Spot fleet launches no new Spot instances. You must specify whether the Spot fleet should also terminate its Spot instances. If you terminate the instances, the Spot fleet request enters the cancelled_terminating state. Otherwise, the Spot fleet request enters the cancelled_running state and the instances continue to run until they are interrupted or you terminate them manually.

        ", "CancelSpotInstanceRequests": "

        Cancels one or more Spot instance requests. Spot instances are instances that Amazon EC2 starts on your behalf when the bid price that you specify exceeds the current Spot price. Amazon EC2 periodically sets the Spot price based on available Spot instance capacity and current Spot instance requests. For more information, see Spot Instance Requests in the Amazon Elastic Compute Cloud User Guide.

        Canceling a Spot instance request does not terminate running Spot instances associated with the request.

        ", "ConfirmProductInstance": "

        Determines whether a product code is associated with an instance. This action can only be used by the owner of the product code. It is useful when a product code owner needs to verify whether another user's instance is eligible for support.

        ", "CopyImage": "

        Initiates the copy of an AMI from the specified source region to the current region. You specify the destination region by using its endpoint when making the request.

        For more information, see Copying AMIs in the Amazon Elastic Compute Cloud User Guide.

        ", "CopySnapshot": "

        Copies a point-in-time snapshot of an EBS volume and stores it in Amazon S3. You can copy the snapshot within the same region or from one region to another. You can use the snapshot to create EBS volumes or Amazon Machine Images (AMIs). The snapshot is copied to the regional endpoint that you send the HTTP request to.

        Copies of encrypted EBS snapshots remain encrypted. Copies of unencrypted snapshots remain unencrypted, unless the Encrypted flag is specified during the snapshot copy operation. By default, encrypted snapshot copies use the default AWS Key Management Service (AWS KMS) customer master key (CMK); however, you can specify a non-default CMK with the KmsKeyId parameter.

        To copy an encrypted snapshot that has been shared from another account, you must have permissions for the CMK used to encrypt the snapshot.

        Snapshots created by the CopySnapshot action have an arbitrary volume ID that should not be used for any purpose.

        For more information, see Copying an Amazon EBS Snapshot in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateCustomerGateway": "

        Provides information to AWS about your VPN customer gateway device. The customer gateway is the appliance at your end of the VPN connection. (The device on the AWS side of the VPN connection is the virtual private gateway.) You must provide the Internet-routable IP address of the customer gateway's external interface. The IP address must be static and may be behind a device performing network address translation (NAT).

        For devices that use Border Gateway Protocol (BGP), you can also provide the device's BGP Autonomous System Number (ASN). You can use an existing ASN assigned to your network. If you don't have an ASN already, you can use a private ASN (in the 64512 - 65534 range).

        Amazon EC2 supports all 2-byte ASN numbers in the range of 1 - 65534, with the exception of 7224, which is reserved in the us-east-1 region, and 9059, which is reserved in the eu-west-1 region.

        For more information about VPN customer gateways, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        You cannot create more than one customer gateway with the same VPN type, IP address, and BGP ASN parameter values. If you run an identical request more than one time, the first request creates the customer gateway, and subsequent requests return information about the existing customer gateway. The subsequent requests do not create new customer gateway resources.

        ", "CreateDhcpOptions": "

        Creates a set of DHCP options for your VPC. After creating the set, you must associate it with the VPC, causing all existing and new instances that you launch in the VPC to use this set of DHCP options. The following are the individual DHCP options you can specify. For more information about the options, see RFC 2132.

        • domain-name-servers - The IP addresses of up to four domain name servers, or AmazonProvidedDNS. The default DHCP option set specifies AmazonProvidedDNS. If specifying more than one domain name server, specify the IP addresses in a single parameter, separated by commas. If you want your instance to receive a custom DNS hostname as specified in domain-name, you must set domain-name-servers to a custom DNS server.

        • domain-name - If you're using AmazonProvidedDNS in \"us-east-1\", specify \"ec2.internal\". If you're using AmazonProvidedDNS in another region, specify \"region.compute.internal\" (for example, \"ap-northeast-1.compute.internal\"). Otherwise, specify a domain name (for example, \"MyCompany.com\"). This value is used to complete unqualified DNS hostnames. Important: Some Linux operating systems accept multiple domain names separated by spaces. However, Windows and other Linux operating systems treat the value as a single domain, which results in unexpected behavior. If your DHCP options set is associated with a VPC that has instances with multiple operating systems, specify only one domain name.

        • ntp-servers - The IP addresses of up to four Network Time Protocol (NTP) servers.

        • netbios-name-servers - The IP addresses of up to four NetBIOS name servers.

        • netbios-node-type - The NetBIOS node type (1, 2, 4, or 8). We recommend that you specify 2 (broadcast and multicast are not currently supported). For more information about these node types, see RFC 2132.

        Your VPC automatically starts out with a set of DHCP options that includes only a DNS server that we provide (AmazonProvidedDNS). If you create a set of options, and if your VPC has an Internet gateway, make sure to set the domain-name-servers option either to AmazonProvidedDNS or to a domain name server of your choice. For more information about DHCP options, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.

        ", "CreateFlowLogs": "

        Creates one or more flow logs to capture IP traffic for a specific network interface, subnet, or VPC. Flow logs are delivered to a specified log group in Amazon CloudWatch Logs. If you specify a VPC or subnet in the request, a log stream is created in CloudWatch Logs for each network interface in the subnet or VPC. Log streams can include information about accepted and rejected traffic to a network interface. You can view the data in your log streams using Amazon CloudWatch Logs.

        In your request, you must also specify an IAM role that has permission to publish logs to CloudWatch Logs.

        ", "CreateImage": "

        Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance that is either running or stopped.

        If you customized your instance with instance store volumes or EBS volumes in addition to the root device volume, the new AMI contains block device mapping information for those volumes. When you launch an instance from this new AMI, the instance automatically launches with those additional volumes.

        For more information, see Creating Amazon EBS-Backed Linux AMIs in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateInstanceExportTask": "

        Exports a running or stopped instance to an S3 bucket.

        For information about the supported operating systems, image formats, and known limitations for the types of instances you can export, see Exporting an Instance as a VM Using VM Import/Export in the VM Import/Export User Guide.

        ", "CreateInternetGateway": "

        Creates an Internet gateway for use with a VPC. After creating the Internet gateway, you attach it to a VPC using AttachInternetGateway.

        For more information about your VPC and Internet gateway, see the Amazon Virtual Private Cloud User Guide.

        ", "CreateKeyPair": "

        Creates a 2048-bit RSA key pair with the specified name. Amazon EC2 stores the public key and displays the private key for you to save to a file. The private key is returned as an unencrypted PEM encoded PKCS#8 private key. If a key with the specified name already exists, Amazon EC2 returns an error.

        You can have up to five thousand key pairs per region.

        The key pair returned to you is available only in the region in which you create it. To create a key pair that is available in all regions, use ImportKeyPair.

        For more information about key pairs, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateNatGateway": "

        Creates a NAT gateway in the specified subnet. A NAT gateway can be used to enable instances in a private subnet to connect to the Internet. This action creates a network interface in the specified subnet with a private IP address from the IP address range of the subnet. For more information, see NAT Gateways in the Amazon Virtual Private Cloud User Guide.

        ", "CreateNetworkAcl": "

        Creates a network ACL in a VPC. Network ACLs provide an optional layer of security (in addition to security groups) for the instances in your VPC.

        For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "CreateNetworkAclEntry": "

        Creates an entry (a rule) in a network ACL with the specified rule number. Each network ACL has a set of numbered ingress rules and a separate set of numbered egress rules. When determining whether a packet should be allowed in or out of a subnet associated with the ACL, we process the entries in the ACL according to the rule numbers, in ascending order. Each network ACL has a set of ingress rules and a separate set of egress rules.

        We recommend that you leave room between the rule numbers (for example, 100, 110, 120, ...), and not number them one right after the other (for example, 101, 102, 103, ...). This makes it easier to add a rule between existing ones without having to renumber the rules.

        After you add an entry, you can't modify it; you must either replace it, or create an entry and delete the old one.

        For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "CreateNetworkInterface": "

        Creates a network interface in the specified subnet.

        For more information about network interfaces, see Elastic Network Interfaces in the Amazon Elastic Compute Cloud User Guide.

        ", "CreatePlacementGroup": "

        Creates a placement group that you launch cluster instances into. You must give the group a name that's unique within the scope of your account.

        For more information about placement groups and cluster instances, see Cluster Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateReservedInstancesListing": "

        Creates a listing for Amazon EC2 Standard Reserved Instances to be sold in the Reserved Instance Marketplace. You can submit one Standard Reserved Instance listing at a time. To get a list of your Standard Reserved Instances, you can use the DescribeReservedInstances operation.

        The Reserved Instance Marketplace matches sellers who want to resell Standard Reserved Instance capacity that they no longer need with buyers who want to purchase additional capacity. Reserved Instances bought and sold through the Reserved Instance Marketplace work like any other Reserved Instances.

        To sell your Standard Reserved Instances, you must first register as a seller in the Reserved Instance Marketplace. After completing the registration process, you can create a Reserved Instance Marketplace listing of some or all of your Standard Reserved Instances, and specify the upfront price to receive for them. Your Standard Reserved Instance listings then become available for purchase. To view the details of your Standard Reserved Instance listing, you can use the DescribeReservedInstancesListings operation.

        For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateRoute": "

        Creates a route in a route table within a VPC.

        You must specify one of the following targets: Internet gateway or virtual private gateway, NAT instance, NAT gateway, VPC peering connection, or network interface.

        When determining how to route traffic, we use the route with the most specific match. For example, let's say the traffic is destined for 192.0.2.3, and the route table includes the following two routes:

        • 192.0.2.0/24 (goes to some target A)

        • 192.0.2.0/28 (goes to some target B)

        Both routes apply to the traffic destined for 192.0.2.3. However, the second route in the list covers a smaller number of IP addresses and is therefore more specific, so we use that route to determine where to target the traffic.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "CreateRouteTable": "

        Creates a route table for the specified VPC. After you create a route table, you can add routes and associate the table with a subnet.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "CreateSecurityGroup": "

        Creates a security group.

        A security group is for use with instances either in the EC2-Classic platform or in a specific VPC. For more information, see Amazon EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide and Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.

        EC2-Classic: You can have up to 500 security groups.

        EC2-VPC: You can create up to 500 security groups per VPC.

        When you create a security group, you specify a friendly name of your choice. You can have a security group for use in EC2-Classic with the same name as a security group for use in a VPC. However, you can't have two security groups for use in EC2-Classic with the same name or two security groups for use in a VPC with the same name.

        You have a default security group for use in EC2-Classic and a default security group for use in your VPC. If you don't specify a security group when you launch an instance, the instance is launched into the appropriate default security group. A default security group includes a default rule that grants instances unrestricted network access to each other.

        You can add or remove rules from your security groups using AuthorizeSecurityGroupIngress, AuthorizeSecurityGroupEgress, RevokeSecurityGroupIngress, and RevokeSecurityGroupEgress.

        ", "CreateSnapshot": "

        Creates a snapshot of an EBS volume and stores it in Amazon S3. You can use snapshots for backups, to make copies of EBS volumes, and to save data before shutting down an instance.

        When a snapshot is created, any AWS Marketplace product codes that are associated with the source volume are propagated to the snapshot.

        You can take a snapshot of an attached volume that is in use. However, snapshots only capture data that has been written to your EBS volume at the time the snapshot command is issued; this may exclude any data that has been cached by any applications or the operating system. If you can pause any file systems on the volume long enough to take a snapshot, your snapshot should be complete. However, if you cannot pause all file writes to the volume, you should unmount the volume from within the instance, issue the snapshot command, and then remount the volume to ensure a consistent and complete snapshot. You may remount and use your volume while the snapshot status is pending.

        To create a snapshot for EBS volumes that serve as root devices, you should stop the instance before taking the snapshot.

        Snapshots that are taken from encrypted volumes are automatically encrypted. Volumes that are created from encrypted snapshots are also automatically encrypted. Your encrypted volumes and any associated snapshots always remain protected.

        For more information, see Amazon Elastic Block Store and Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateSpotDatafeedSubscription": "

        Creates a data feed for Spot instances, enabling you to view Spot instance usage logs. You can create one data feed per AWS account. For more information, see Spot Instance Data Feed in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateSubnet": "

        Creates a subnet in an existing VPC.

        When you create each subnet, you provide the VPC ID and the CIDR block you want for the subnet. After you create a subnet, you can't change its CIDR block. The subnet's CIDR block can be the same as the VPC's CIDR block (assuming you want only a single subnet in the VPC), or a subset of the VPC's CIDR block. If you create more than one subnet in a VPC, the subnets' CIDR blocks must not overlap. The smallest subnet (and VPC) you can create uses a /28 netmask (16 IP addresses), and the largest uses a /16 netmask (65,536 IP addresses).

        AWS reserves both the first four and the last IP address in each subnet's CIDR block. They're not available for use.

        If you add more than one subnet to a VPC, they're set up in a star topology with a logical router in the middle.

        If you launch an instance in a VPC using an Amazon EBS-backed AMI, the IP address doesn't change if you stop and restart the instance (unlike a similar instance launched outside a VPC, which gets a new IP address when restarted). It's therefore possible to have a subnet with no running instances (they're all stopped), but no remaining IP addresses available.

        For more information about subnets, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide.

        ", "CreateTags": "

        Adds or overwrites one or more tags for the specified Amazon EC2 resource or resources. Each resource can have a maximum of 50 tags. Each tag consists of a key and optional value. Tag keys must be unique per resource.

        For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide. For more information about creating IAM policies that control users' access to resources based on tags, see Supported Resource-Level Permissions for Amazon EC2 API Actions in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateVolume": "

        Creates an EBS volume that can be attached to an instance in the same Availability Zone. The volume is created in the regional endpoint that you send the HTTP request to. For more information see Regions and Endpoints.

        You can create a new empty volume or restore a volume from an EBS snapshot. Any AWS Marketplace product codes from the snapshot are propagated to the volume.

        You can create encrypted volumes with the Encrypted parameter. Encrypted volumes may only be attached to instances that support Amazon EBS encryption. Volumes that are created from encrypted snapshots are also automatically encrypted. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        For more information, see Creating or Restoring an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateVpc": "

        Creates a VPC with the specified CIDR block.

        The smallest VPC you can create uses a /28 netmask (16 IP addresses), and the largest uses a /16 netmask (65,536 IP addresses). To help you decide how big to make your VPC, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide.

        By default, each instance you launch in the VPC has the default DHCP options, which includes only a default DNS server that we provide (AmazonProvidedDNS). For more information about DHCP options, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.

        You can specify the instance tenancy value for the VPC when you create it. You can't change this value for the VPC after you create it. For more information, see Dedicated Instances in the Amazon Virtual Private Cloud User Guide.

        ", "CreateVpcEndpoint": "

        Creates a VPC endpoint for a specified AWS service. An endpoint enables you to create a private connection between your VPC and another AWS service in your account. You can specify an endpoint policy to attach to the endpoint that will control access to the service from your VPC. You can also specify the VPC route tables that use the endpoint.

        Currently, only endpoints to Amazon S3 are supported.

        ", "CreateVpcPeeringConnection": "

        Requests a VPC peering connection between two VPCs: a requester VPC that you own and a peer VPC with which to create the connection. The peer VPC can belong to another AWS account. The requester VPC and peer VPC cannot have overlapping CIDR blocks.

        The owner of the peer VPC must accept the peering request to activate the peering connection. The VPC peering connection request expires after 7 days, after which it cannot be accepted or rejected.

        A CreateVpcPeeringConnection request between VPCs with overlapping CIDR blocks results in the VPC peering connection having a status of failed.

        ", "CreateVpnConnection": "

        Creates a VPN connection between an existing virtual private gateway and a VPN customer gateway. The only supported connection type is ipsec.1.

        The response includes information that you need to give to your network administrator to configure your customer gateway.

        We strongly recommend that you use HTTPS when calling this operation because the response contains sensitive cryptographic information for configuring your customer gateway.

        If you decide to shut down your VPN connection for any reason and later create a new VPN connection, you must reconfigure your customer gateway with the new information returned from this call.

        This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error.

        For more information about VPN connections, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "CreateVpnConnectionRoute": "

        Creates a static route associated with a VPN connection between an existing virtual private gateway and a VPN customer gateway. The static route allows traffic to be routed from the virtual private gateway to the VPN customer gateway.

        For more information about VPN connections, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "CreateVpnGateway": "

        Creates a virtual private gateway. A virtual private gateway is the endpoint on the VPC side of your VPN connection. You can create a virtual private gateway before creating the VPC itself.

        For more information about virtual private gateways, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DeleteCustomerGateway": "

        Deletes the specified customer gateway. You must delete the VPN connection before you can delete the customer gateway.

        ", "DeleteDhcpOptions": "

        Deletes the specified set of DHCP options. You must disassociate the set of DHCP options before you can delete it. You can disassociate the set of DHCP options by associating either a new set of options or the default set of options with the VPC.

        ", "DeleteFlowLogs": "

        Deletes one or more flow logs.

        ", "DeleteInternetGateway": "

        Deletes the specified Internet gateway. You must detach the Internet gateway from the VPC before you can delete it.

        ", "DeleteKeyPair": "

        Deletes the specified key pair, by removing the public key from Amazon EC2.

        ", "DeleteNatGateway": "

        Deletes the specified NAT gateway. Deleting a NAT gateway disassociates its Elastic IP address, but does not release the address from your account. Deleting a NAT gateway does not delete any NAT gateway routes in your route tables.

        ", "DeleteNetworkAcl": "

        Deletes the specified network ACL. You can't delete the ACL if it's associated with any subnets. You can't delete the default network ACL.

        ", "DeleteNetworkAclEntry": "

        Deletes the specified ingress or egress entry (rule) from the specified network ACL.

        ", "DeleteNetworkInterface": "

        Deletes the specified network interface. You must detach the network interface before you can delete it.

        ", "DeletePlacementGroup": "

        Deletes the specified placement group. You must terminate all instances in the placement group before you can delete the placement group. For more information about placement groups and cluster instances, see Cluster Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "DeleteRoute": "

        Deletes the specified route from the specified route table.

        ", "DeleteRouteTable": "

        Deletes the specified route table. You must disassociate the route table from any subnets before you can delete it. You can't delete the main route table.

        ", "DeleteSecurityGroup": "

        Deletes a security group.

        If you attempt to delete a security group that is associated with an instance, or is referenced by another security group, the operation fails with InvalidGroup.InUse in EC2-Classic or DependencyViolation in EC2-VPC.

        ", "DeleteSnapshot": "

        Deletes the specified snapshot.

        When you make periodic snapshots of a volume, the snapshots are incremental, and only the blocks on the device that have changed since your last snapshot are saved in the new snapshot. When you delete a snapshot, only the data not needed for any other snapshot is removed. So regardless of which prior snapshots have been deleted, all active snapshots will have access to all the information needed to restore the volume.

        You cannot delete a snapshot of the root device of an EBS volume used by a registered AMI. You must first de-register the AMI before you can delete the snapshot.

        For more information, see Deleting an Amazon EBS Snapshot in the Amazon Elastic Compute Cloud User Guide.

        ", "DeleteSpotDatafeedSubscription": "

        Deletes the data feed for Spot instances.

        ", "DeleteSubnet": "

        Deletes the specified subnet. You must terminate all running instances in the subnet before you can delete the subnet.

        ", "DeleteTags": "

        Deletes the specified set of tags from the specified set of resources. This call is designed to follow a DescribeTags request.

        For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide.

        ", "DeleteVolume": "

        Deletes the specified EBS volume. The volume must be in the available state (not attached to an instance).

        The volume may remain in the deleting state for several minutes.

        For more information, see Deleting an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide.

        ", "DeleteVpc": "

        Deletes the specified VPC. You must detach or delete all gateways and resources that are associated with the VPC before you can delete it. For example, you must terminate all instances running in the VPC, delete all security groups associated with the VPC (except the default one), delete all route tables associated with the VPC (except the default one), and so on.

        ", "DeleteVpcEndpoints": "

        Deletes one or more specified VPC endpoints. Deleting the endpoint also deletes the endpoint routes in the route tables that were associated with the endpoint.

        ", "DeleteVpcPeeringConnection": "

        Deletes a VPC peering connection. Either the owner of the requester VPC or the owner of the peer VPC can delete the VPC peering connection if it's in the active state. The owner of the requester VPC can delete a VPC peering connection in the pending-acceptance state.

        ", "DeleteVpnConnection": "

        Deletes the specified VPN connection.

        If you're deleting the VPC and its associated components, we recommend that you detach the virtual private gateway from the VPC and delete the VPC before deleting the VPN connection. If you believe that the tunnel credentials for your VPN connection have been compromised, you can delete the VPN connection and create a new one that has new keys, without needing to delete the VPC or virtual private gateway. If you create a new VPN connection, you must reconfigure the customer gateway using the new configuration information returned with the new VPN connection ID.

        ", "DeleteVpnConnectionRoute": "

        Deletes the specified static route associated with a VPN connection between an existing virtual private gateway and a VPN customer gateway. The static route allows traffic to be routed from the virtual private gateway to the VPN customer gateway.

        ", "DeleteVpnGateway": "

        Deletes the specified virtual private gateway. We recommend that before you delete a virtual private gateway, you detach it from the VPC and delete the VPN connection. Note that you don't need to delete the virtual private gateway if you plan to delete and recreate the VPN connection between your VPC and your network.

        ", "DeregisterImage": "

        Deregisters the specified AMI. After you deregister an AMI, it can't be used to launch new instances.

        This command does not delete the AMI.

        ", "DescribeAccountAttributes": "

        Describes attributes of your AWS account. The following are the supported account attributes:

        • supported-platforms: Indicates whether your account can launch instances into EC2-Classic and EC2-VPC, or only into EC2-VPC.

        • default-vpc: The ID of the default VPC for your account, or none.

        • max-instances: The maximum number of On-Demand instances that you can run.

        • vpc-max-security-groups-per-interface: The maximum number of security groups that you can assign to a network interface.

        • max-elastic-ips: The maximum number of Elastic IP addresses that you can allocate for use with EC2-Classic.

        • vpc-max-elastic-ips: The maximum number of Elastic IP addresses that you can allocate for use with EC2-VPC.

        ", "DescribeAddresses": "

        Describes one or more of your Elastic IP addresses.

        An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeAvailabilityZones": "

        Describes one or more of the Availability Zones that are available to you. The results include zones only for the region you're currently using. If there is an event impacting an Availability Zone, you can use this request to view the state and any provided message for that Availability Zone.

        For more information, see Regions and Availability Zones in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeBundleTasks": "

        Describes one or more of your bundling tasks.

        Completed bundle tasks are listed for only a limited time. If your bundle task is no longer in the list, you can still register an AMI from it. Just use RegisterImage with the Amazon S3 bucket name and image manifest name you provided to the bundle task.

        ", "DescribeClassicLinkInstances": "

        Describes one or more of your linked EC2-Classic instances. This request only returns information about EC2-Classic instances linked to a VPC through ClassicLink; you cannot use this request to return information about other instances.

        ", "DescribeConversionTasks": "

        Describes one or more of your conversion tasks. For more information, see the VM Import/Export User Guide.

        For information about the import manifest referenced by this API action, see VM Import Manifest.

        ", "DescribeCustomerGateways": "

        Describes one or more of your VPN customer gateways.

        For more information about VPN customer gateways, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeDhcpOptions": "

        Describes one or more of your DHCP options sets.

        For more information about DHCP options sets, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeExportTasks": "

        Describes one or more of your export tasks.

        ", "DescribeFlowLogs": "

        Describes one or more flow logs. To view the information in your flow logs (the log streams for the network interfaces), you must use the CloudWatch Logs console or the CloudWatch Logs API.

        ", "DescribeHostReservationOfferings": "

        Describes the Dedicated Host Reservations that are available to purchase.

        The results describe all the Dedicated Host Reservation offerings, including offerings that may not match the instance family and region of your Dedicated Hosts. When purchasing an offering, ensure that the the instance family and region of the offering matches that of the Dedicated Host/s it will be associated with. For an overview of supported instance types, see Dedicated Hosts Overview in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeHostReservations": "

        Describes Dedicated Host Reservations which are associated with Dedicated Hosts in your account.

        ", "DescribeHosts": "

        Describes one or more of your Dedicated Hosts.

        The results describe only the Dedicated Hosts in the region you're currently using. All listed instances consume capacity on your Dedicated Host. Dedicated Hosts that have recently been released will be listed with the state released.

        ", "DescribeIdFormat": "

        Describes the ID format settings for your resources on a per-region basis, for example, to view which resource types are enabled for longer IDs. This request only returns information about resource types whose ID formats can be modified; it does not return information about other resource types.

        The following resource types support longer IDs: instance | reservation | snapshot | volume.

        These settings apply to the IAM user who makes the request; they do not apply to the entire AWS account. By default, an IAM user defaults to the same settings as the root user, unless they explicitly override the settings by running the ModifyIdFormat command. Resources created with longer IDs are visible to all IAM users, regardless of these settings and provided that they have permission to use the relevant Describe command for the resource type.

        ", "DescribeIdentityIdFormat": "

        Describes the ID format settings for resources for the specified IAM user, IAM role, or root user. For example, you can view the resource types that are enabled for longer IDs. This request only returns information about resource types whose ID formats can be modified; it does not return information about other resource types. For more information, see Resource IDs in the Amazon Elastic Compute Cloud User Guide.

        The following resource types support longer IDs: instance | reservation | snapshot | volume.

        These settings apply to the principal specified in the request. They do not apply to the principal that makes the request.

        ", "DescribeImageAttribute": "

        Describes the specified attribute of the specified AMI. You can specify only one attribute at a time.

        ", "DescribeImages": "

        Describes one or more of the images (AMIs, AKIs, and ARIs) available to you. Images available to you include public images, private images that you own, and private images owned by other AWS accounts but for which you have explicit launch permissions.

        Deregistered images are included in the returned results for an unspecified interval after deregistration.

        ", "DescribeImportImageTasks": "

        Displays details about an import virtual machine or import snapshot tasks that are already created.

        ", "DescribeImportSnapshotTasks": "

        Describes your import snapshot tasks.

        ", "DescribeInstanceAttribute": "

        Describes the specified attribute of the specified instance. You can specify only one attribute at a time. Valid attribute values are: instanceType | kernel | ramdisk | userData | disableApiTermination | instanceInitiatedShutdownBehavior | rootDeviceName | blockDeviceMapping | productCodes | sourceDestCheck | groupSet | ebsOptimized | sriovNetSupport

        ", "DescribeInstanceStatus": "

        Describes the status of one or more instances. By default, only running instances are described, unless specified otherwise.

        Instance status includes the following components:

        • Status checks - Amazon EC2 performs status checks on running EC2 instances to identify hardware and software issues. For more information, see Status Checks for Your Instances and Troubleshooting Instances with Failed Status Checks in the Amazon Elastic Compute Cloud User Guide.

        • Scheduled events - Amazon EC2 can schedule events (such as reboot, stop, or terminate) for your instances related to hardware issues, software updates, or system maintenance. For more information, see Scheduled Events for Your Instances in the Amazon Elastic Compute Cloud User Guide.

        • Instance state - You can manage your instances from the moment you launch them through their termination. For more information, see Instance Lifecycle in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeInstances": "

        Describes one or more of your instances.

        If you specify one or more instance IDs, Amazon EC2 returns information for those instances. If you do not specify instance IDs, Amazon EC2 returns information for all relevant instances. If you specify an instance ID that is not valid, an error is returned. If you specify an instance that you do not own, it is not included in the returned results.

        Recently terminated instances might appear in the returned results. This interval is usually less than one hour.

        If you describe instances in the rare case where an Availability Zone is experiencing a service disruption and you specify instance IDs that are in the affected zone, or do not specify any instance IDs at all, the call fails. If you describe instances and specify only instance IDs that are in an unaffected zone, the call works normally.

        ", "DescribeInternetGateways": "

        Describes one or more of your Internet gateways.

        ", "DescribeKeyPairs": "

        Describes one or more of your key pairs.

        For more information about key pairs, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeMovingAddresses": "

        Describes your Elastic IP addresses that are being moved to the EC2-VPC platform, or that are being restored to the EC2-Classic platform. This request does not return information about any other Elastic IP addresses in your account.

        ", "DescribeNatGateways": "

        Describes one or more of the your NAT gateways.

        ", "DescribeNetworkAcls": "

        Describes one or more of your network ACLs.

        For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeNetworkInterfaceAttribute": "

        Describes a network interface attribute. You can specify only one attribute at a time.

        ", "DescribeNetworkInterfaces": "

        Describes one or more of your network interfaces.

        ", "DescribePlacementGroups": "

        Describes one or more of your placement groups. For more information about placement groups and cluster instances, see Cluster Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribePrefixLists": "

        Describes available AWS services in a prefix list format, which includes the prefix list name and prefix list ID of the service and the IP address range for the service. A prefix list ID is required for creating an outbound security group rule that allows traffic from a VPC to access an AWS service through a VPC endpoint.

        ", "DescribeRegions": "

        Describes one or more regions that are currently available to you.

        For a list of the regions supported by Amazon EC2, see Regions and Endpoints.

        ", "DescribeReservedInstances": "

        Describes one or more of the Reserved Instances that you purchased.

        For more information about Reserved Instances, see Reserved Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeReservedInstancesListings": "

        Describes your account's Reserved Instance listings in the Reserved Instance Marketplace.

        The Reserved Instance Marketplace matches sellers who want to resell Reserved Instance capacity that they no longer need with buyers who want to purchase additional capacity. Reserved Instances bought and sold through the Reserved Instance Marketplace work like any other Reserved Instances.

        As a seller, you choose to list some or all of your Reserved Instances, and you specify the upfront price to receive for them. Your Reserved Instances are then listed in the Reserved Instance Marketplace and are available for purchase.

        As a buyer, you specify the configuration of the Reserved Instance to purchase, and the Marketplace matches what you're searching for with what's available. The Marketplace first sells the lowest priced Reserved Instances to you, and continues to sell available Reserved Instance listings to you until your demand is met. You are charged based on the total price of all of the listings that you purchase.

        For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeReservedInstancesModifications": "

        Describes the modifications made to your Reserved Instances. If no parameter is specified, information about all your Reserved Instances modification requests is returned. If a modification ID is specified, only information about the specific modification is returned.

        For more information, see Modifying Reserved Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeReservedInstancesOfferings": "

        Describes Reserved Instance offerings that are available for purchase. With Reserved Instances, you purchase the right to launch instances for a period of time. During that time period, you do not receive insufficient capacity errors, and you pay a lower usage rate than the rate charged for On-Demand instances for the actual time used.

        If you have listed your own Reserved Instances for sale in the Reserved Instance Marketplace, they will be excluded from these results. This is to ensure that you do not purchase your own Reserved Instances.

        For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeRouteTables": "

        Describes one or more of your route tables.

        Each subnet in your VPC must be associated with a route table. If a subnet is not explicitly associated with any route table, it is implicitly associated with the main route table. This command does not return the subnet ID for implicit associations.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeScheduledInstanceAvailability": "

        Finds available schedules that meet the specified criteria.

        You can search for an available schedule no more than 3 months in advance. You must meet the minimum required duration of 1,200 hours per year. For example, the minimum daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the minimum monthly schedule is 100 hours.

        After you find a schedule that meets your needs, call PurchaseScheduledInstances to purchase Scheduled Instances with that schedule.

        ", "DescribeScheduledInstances": "

        Describes one or more of your Scheduled Instances.

        ", "DescribeSecurityGroupReferences": "

        [EC2-VPC only] Describes the VPCs on the other side of a VPC peering connection that are referencing the security groups you've specified in this request.

        ", "DescribeSecurityGroups": "

        Describes one or more of your security groups.

        A security group is for use with instances either in the EC2-Classic platform or in a specific VPC. For more information, see Amazon EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide and Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeSnapshotAttribute": "

        Describes the specified attribute of the specified snapshot. You can specify only one attribute at a time.

        For more information about EBS snapshots, see Amazon EBS Snapshots in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeSnapshots": "

        Describes one or more of the EBS snapshots available to you. Available snapshots include public snapshots available for any AWS account to launch, private snapshots that you own, and private snapshots owned by another AWS account but for which you've been given explicit create volume permissions.

        The create volume permissions fall into the following categories:

        • public: The owner of the snapshot granted create volume permissions for the snapshot to the all group. All AWS accounts have create volume permissions for these snapshots.

        • explicit: The owner of the snapshot granted create volume permissions to a specific AWS account.

        • implicit: An AWS account has implicit create volume permissions for all snapshots it owns.

        The list of snapshots returned can be modified by specifying snapshot IDs, snapshot owners, or AWS accounts with create volume permissions. If no options are specified, Amazon EC2 returns all snapshots for which you have create volume permissions.

        If you specify one or more snapshot IDs, only snapshots that have the specified IDs are returned. If you specify an invalid snapshot ID, an error is returned. If you specify a snapshot ID for which you do not have access, it is not included in the returned results.

        If you specify one or more snapshot owners using the OwnerIds option, only snapshots from the specified owners and for which you have access are returned. The results can include the AWS account IDs of the specified owners, amazon for snapshots owned by Amazon, or self for snapshots that you own.

        If you specify a list of restorable users, only snapshots with create snapshot permissions for those users are returned. You can specify AWS account IDs (if you own the snapshots), self for snapshots for which you own or have explicit permissions, or all for public snapshots.

        If you are describing a long list of snapshots, you can paginate the output to make the list more manageable. The MaxResults parameter sets the maximum number of results returned in a single page. If the list of results exceeds your MaxResults value, then that number of results is returned along with a NextToken value that can be passed to a subsequent DescribeSnapshots request to retrieve the remaining results.

        For more information about EBS snapshots, see Amazon EBS Snapshots in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeSpotDatafeedSubscription": "

        Describes the data feed for Spot instances. For more information, see Spot Instance Data Feed in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeSpotFleetInstances": "

        Describes the running instances for the specified Spot fleet.

        ", "DescribeSpotFleetRequestHistory": "

        Describes the events for the specified Spot fleet request during the specified time.

        Spot fleet events are delayed by up to 30 seconds before they can be described. This ensures that you can query by the last evaluated time and not miss a recorded event.

        ", "DescribeSpotFleetRequests": "

        Describes your Spot fleet requests.

        Spot fleet requests are deleted 48 hours after they are canceled and their instances are terminated.

        ", "DescribeSpotInstanceRequests": "

        Describes the Spot instance requests that belong to your account. Spot instances are instances that Amazon EC2 launches when the bid price that you specify exceeds the current Spot price. Amazon EC2 periodically sets the Spot price based on available Spot instance capacity and current Spot instance requests. For more information, see Spot Instance Requests in the Amazon Elastic Compute Cloud User Guide.

        You can use DescribeSpotInstanceRequests to find a running Spot instance by examining the response. If the status of the Spot instance is fulfilled, the instance ID appears in the response and contains the identifier of the instance. Alternatively, you can use DescribeInstances with a filter to look for instances where the instance lifecycle is spot.

        Spot instance requests are deleted 4 hours after they are canceled and their instances are terminated.

        ", "DescribeSpotPriceHistory": "

        Describes the Spot price history. The prices returned are listed in chronological order, from the oldest to the most recent, for up to the past 90 days. For more information, see Spot Instance Pricing History in the Amazon Elastic Compute Cloud User Guide.

        When you specify a start and end time, this operation returns the prices of the instance types within the time range that you specified and the time when the price changed. The price is valid within the time period that you specified; the response merely indicates the last time that the price changed.

        ", "DescribeStaleSecurityGroups": "

        [EC2-VPC only] Describes the stale security group rules for security groups in a specified VPC. Rules are stale when they reference a deleted security group in a peer VPC, or a security group in a peer VPC for which the VPC peering connection has been deleted.

        ", "DescribeSubnets": "

        Describes one or more of your subnets.

        For more information about subnets, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeTags": "

        Describes one or more of the tags for your EC2 resources.

        For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeVolumeAttribute": "

        Describes the specified attribute of the specified volume. You can specify only one attribute at a time.

        For more information about EBS volumes, see Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeVolumeStatus": "

        Describes the status of the specified volumes. Volume status provides the result of the checks performed on your volumes to determine events that can impair the performance of your volumes. The performance of a volume can be affected if an issue occurs on the volume's underlying host. If the volume's underlying host experiences a power outage or system issue, after the system is restored, there could be data inconsistencies on the volume. Volume events notify you if this occurs. Volume actions notify you if any action needs to be taken in response to the event.

        The DescribeVolumeStatus operation provides the following information about the specified volumes:

        Status: Reflects the current status of the volume. The possible values are ok, impaired , warning, or insufficient-data. If all checks pass, the overall status of the volume is ok. If the check fails, the overall status is impaired. If the status is insufficient-data, then the checks may still be taking place on your volume at the time. We recommend that you retry the request. For more information on volume status, see Monitoring the Status of Your Volumes.

        Events: Reflect the cause of a volume status and may require you to take action. For example, if your volume returns an impaired status, then the volume event might be potential-data-inconsistency. This means that your volume has been affected by an issue with the underlying host, has all I/O operations disabled, and may have inconsistent data.

        Actions: Reflect the actions you may have to take in response to an event. For example, if the status of the volume is impaired and the volume event shows potential-data-inconsistency, then the action shows enable-volume-io. This means that you may want to enable the I/O operations for the volume by calling the EnableVolumeIO action and then check the volume for data consistency.

        Volume status is based on the volume status checks, and does not reflect the volume state. Therefore, volume status does not indicate volumes in the error state (for example, when a volume is incapable of accepting I/O.)

        ", "DescribeVolumes": "

        Describes the specified EBS volumes.

        If you are describing a long list of volumes, you can paginate the output to make the list more manageable. The MaxResults parameter sets the maximum number of results returned in a single page. If the list of results exceeds your MaxResults value, then that number of results is returned along with a NextToken value that can be passed to a subsequent DescribeVolumes request to retrieve the remaining results.

        For more information about EBS volumes, see Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeVpcAttribute": "

        Describes the specified attribute of the specified VPC. You can specify only one attribute at a time.

        ", "DescribeVpcClassicLink": "

        Describes the ClassicLink status of one or more VPCs.

        ", "DescribeVpcClassicLinkDnsSupport": "

        Describes the ClassicLink DNS support status of one or more VPCs. If enabled, the DNS hostname of a linked EC2-Classic instance resolves to its private IP address when addressed from an instance in the VPC to which it's linked. Similarly, the DNS hostname of an instance in a VPC resolves to its private IP address when addressed from a linked EC2-Classic instance. For more information about ClassicLink, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

        ", "DescribeVpcEndpointServices": "

        Describes all supported AWS services that can be specified when creating a VPC endpoint.

        ", "DescribeVpcEndpoints": "

        Describes one or more of your VPC endpoints.

        ", "DescribeVpcPeeringConnections": "

        Describes one or more of your VPC peering connections.

        ", "DescribeVpcs": "

        Describes one or more of your VPCs.

        ", "DescribeVpnConnections": "

        Describes one or more of your VPN connections.

        For more information about VPN connections, see Adding a Hardware Virtual Private Gateway to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DescribeVpnGateways": "

        Describes one or more of your virtual private gateways.

        For more information about virtual private gateways, see Adding an IPsec Hardware VPN to Your VPC in the Amazon Virtual Private Cloud User Guide.

        ", "DetachClassicLinkVpc": "

        Unlinks (detaches) a linked EC2-Classic instance from a VPC. After the instance has been unlinked, the VPC security groups are no longer associated with it. An instance is automatically unlinked from a VPC when it's stopped.

        ", "DetachInternetGateway": "

        Detaches an Internet gateway from a VPC, disabling connectivity between the Internet and the VPC. The VPC must not contain any running instances with Elastic IP addresses.

        ", "DetachNetworkInterface": "

        Detaches a network interface from an instance.

        ", "DetachVolume": "

        Detaches an EBS volume from an instance. Make sure to unmount any file systems on the device within your operating system before detaching the volume. Failure to do so can result in the volume becoming stuck in the busy state while detaching. If this happens, detachment can be delayed indefinitely until you unmount the volume, force detachment, reboot the instance, or all three. If an EBS volume is the root device of an instance, it can't be detached while the instance is running. To detach the root volume, stop the instance first.

        When a volume with an AWS Marketplace product code is detached from an instance, the product code is no longer associated with the instance.

        For more information, see Detaching an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide.

        ", "DetachVpnGateway": "

        Detaches a virtual private gateway from a VPC. You do this if you're planning to turn off the VPC and not use it anymore. You can confirm a virtual private gateway has been completely detached from a VPC by describing the virtual private gateway (any attachments to the virtual private gateway are also described).

        You must wait for the attachment's state to switch to detached before you can delete the VPC or attach a different VPC to the virtual private gateway.

        ", "DisableVgwRoutePropagation": "

        Disables a virtual private gateway (VGW) from propagating routes to a specified route table of a VPC.

        ", "DisableVpcClassicLink": "

        Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC that has EC2-Classic instances linked to it.

        ", "DisableVpcClassicLinkDnsSupport": "

        Disables ClassicLink DNS support for a VPC. If disabled, DNS hostnames resolve to public IP addresses when addressed between a linked EC2-Classic instance and instances in the VPC to which it's linked. For more information about ClassicLink, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

        ", "DisassociateAddress": "

        Disassociates an Elastic IP address from the instance or network interface it's associated with.

        An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

        This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error.

        ", "DisassociateRouteTable": "

        Disassociates a subnet from a route table.

        After you perform this action, the subnet no longer uses the routes in the route table. Instead, it uses the routes in the VPC's main route table. For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "EnableVgwRoutePropagation": "

        Enables a virtual private gateway (VGW) to propagate routes to the specified route table of a VPC.

        ", "EnableVolumeIO": "

        Enables I/O operations for a volume that had I/O operations disabled because the data on the volume was potentially inconsistent.

        ", "EnableVpcClassicLink": "

        Enables a VPC for ClassicLink. You can then link EC2-Classic instances to your ClassicLink-enabled VPC to allow communication over private IP addresses. You cannot enable your VPC for ClassicLink if any of your VPC's route tables have existing routes for address ranges within the 10.0.0.0/8 IP address range, excluding local routes for VPCs in the 10.0.0.0/16 and 10.1.0.0/16 IP address ranges. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

        ", "EnableVpcClassicLinkDnsSupport": "

        Enables a VPC to support DNS hostname resolution for ClassicLink. If enabled, the DNS hostname of a linked EC2-Classic instance resolves to its private IP address when addressed from an instance in the VPC to which it's linked. Similarly, the DNS hostname of an instance in a VPC resolves to its private IP address when addressed from a linked EC2-Classic instance. For more information about ClassicLink, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

        ", "GetConsoleOutput": "

        Gets the console output for the specified instance.

        Instances do not have a physical monitor through which you can view their console output. They also lack physical controls that allow you to power up, reboot, or shut them down. To allow these actions, we provide them through the Amazon EC2 API and command line interface.

        Instance console output is buffered and posted shortly after instance boot, reboot, and termination. Amazon EC2 preserves the most recent 64 KB output which is available for at least one hour after the most recent post.

        For Linux instances, the instance console output displays the exact console output that would normally be displayed on a physical monitor attached to a computer. This output is buffered because the instance produces it and then posts it to a store where the instance's owner can retrieve it.

        For Windows instances, the instance console output includes output from the EC2Config service.

        ", "GetConsoleScreenshot": "

        Retrieve a JPG-format screenshot of a running instance to help with troubleshooting.

        The returned content is Base64-encoded.

        ", "GetHostReservationPurchasePreview": "

        Preview a reservation purchase with configurations that match those of your Dedicated Host. You must have active Dedicated Hosts in your account before you purchase a reservation.

        This is a preview of the PurchaseHostReservation action and does not result in the offering being purchased.

        ", "GetPasswordData": "

        Retrieves the encrypted administrator password for an instance running Windows.

        The Windows password is generated at boot if the EC2Config service plugin, Ec2SetPassword, is enabled. This usually only happens the first time an AMI is launched, and then Ec2SetPassword is automatically disabled. The password is not generated for rebundled AMIs unless Ec2SetPassword is enabled before bundling.

        The password is encrypted using the key pair that you specified when you launched the instance. You must provide the corresponding key pair file.

        Password generation and encryption takes a few moments. We recommend that you wait up to 15 minutes after launching an instance before trying to retrieve the generated password.

        ", "GetReservedInstancesExchangeQuote": "

        Returns details about the values and term of your specified Convertible Reserved Instances. When an offering ID is specified it returns information about whether the exchange is valid and can be performed.

        ", "ImportImage": "

        Import single or multi-volume disk images or EBS snapshots into an Amazon Machine Image (AMI). For more information, see Importing a VM as an Image Using VM Import/Export in the VM Import/Export User Guide.

        ", "ImportInstance": "

        Creates an import instance task using metadata from the specified disk image. ImportInstance only supports single-volume VMs. To import multi-volume VMs, use ImportImage. For more information, see Importing a Virtual Machine Using the Amazon EC2 CLI.

        For information about the import manifest referenced by this API action, see VM Import Manifest.

        ", "ImportKeyPair": "

        Imports the public key from an RSA key pair that you created with a third-party tool. Compare this with CreateKeyPair, in which AWS creates the key pair and gives the keys to you (AWS keeps a copy of the public key). With ImportKeyPair, you create the key pair and give AWS just the public key. The private key is never transferred between you and AWS.

        For more information about key pairs, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.

        ", "ImportSnapshot": "

        Imports a disk into an EBS snapshot.

        ", "ImportVolume": "

        Creates an import volume task using metadata from the specified disk image.For more information, see Importing Disks to Amazon EBS.

        For information about the import manifest referenced by this API action, see VM Import Manifest.

        ", "ModifyHosts": "

        Modify the auto-placement setting of a Dedicated Host. When auto-placement is enabled, AWS will place instances that you launch with a tenancy of host, but without targeting a specific host ID, onto any available Dedicated Host in your account which has auto-placement enabled. When auto-placement is disabled, you need to provide a host ID if you want the instance to launch onto a specific host. If no host ID is provided, the instance will be launched onto a suitable host which has auto-placement enabled.

        ", "ModifyIdFormat": "

        Modifies the ID format for the specified resource on a per-region basis. You can specify that resources should receive longer IDs (17-character IDs) when they are created. The following resource types support longer IDs: instance | reservation | snapshot | volume.

        This setting applies to the IAM user who makes the request; it does not apply to the entire AWS account. By default, an IAM user defaults to the same settings as the root user. If you're using this action as the root user, then these settings apply to the entire account, unless an IAM user explicitly overrides these settings for themselves. For more information, see Resource IDs in the Amazon Elastic Compute Cloud User Guide.

        Resources created with longer IDs are visible to all IAM roles and users, regardless of these settings and provided that they have permission to use the relevant Describe command for the resource type.

        ", "ModifyIdentityIdFormat": "

        Modifies the ID format of a resource for a specified IAM user, IAM role, or the root user for an account; or all IAM users, IAM roles, and the root user for an account. You can specify that resources should receive longer IDs (17-character IDs) when they are created.

        The following resource types support longer IDs: instance | reservation | snapshot | volume. For more information, see Resource IDs in the Amazon Elastic Compute Cloud User Guide.

        This setting applies to the principal specified in the request; it does not apply to the principal that makes the request.

        Resources created with longer IDs are visible to all IAM roles and users, regardless of these settings and provided that they have permission to use the relevant Describe command for the resource type.

        ", "ModifyImageAttribute": "

        Modifies the specified attribute of the specified AMI. You can specify only one attribute at a time.

        AWS Marketplace product codes cannot be modified. Images with an AWS Marketplace product code cannot be made public.

        The SriovNetSupport enhanced networking attribute cannot be changed using this command. Instead, enable SriovNetSupport on an instance and create an AMI from the instance. This will result in an image with SriovNetSupport enabled.

        ", "ModifyInstanceAttribute": "

        Modifies the specified attribute of the specified instance. You can specify only one attribute at a time.

        To modify some attributes, the instance must be stopped. For more information, see Modifying Attributes of a Stopped Instance in the Amazon Elastic Compute Cloud User Guide.

        ", "ModifyInstancePlacement": "

        Set the instance affinity value for a specific stopped instance and modify the instance tenancy setting.

        Instance affinity is disabled by default. When instance affinity is host and it is not associated with a specific Dedicated Host, the next time it is launched it will automatically be associated with the host it lands on. This relationship will persist if the instance is stopped/started, or rebooted.

        You can modify the host ID associated with a stopped instance. If a stopped instance has a new host ID association, the instance will target that host when restarted.

        You can modify the tenancy of a stopped instance with a tenancy of host or dedicated.

        Affinity, hostID, and tenancy are not required parameters, but at least one of them must be specified in the request. Affinity and tenancy can be modified in the same request, but tenancy can only be modified on instances that are stopped.

        ", "ModifyNetworkInterfaceAttribute": "

        Modifies the specified network interface attribute. You can specify only one attribute at a time.

        ", "ModifyReservedInstances": "

        Modifies the Availability Zone, instance count, instance type, or network platform (EC2-Classic or EC2-VPC) of your Standard Reserved Instances. The Reserved Instances to be modified must be identical, except for Availability Zone, network platform, and instance type.

        For more information, see Modifying Reserved Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "ModifySnapshotAttribute": "

        Adds or removes permission settings for the specified snapshot. You may add or remove specified AWS account IDs from a snapshot's list of create volume permissions, but you cannot do both in a single API call. If you need to both add and remove account IDs for a snapshot, you must use multiple API calls.

        Encrypted snapshots and snapshots with AWS Marketplace product codes cannot be made public. Snapshots encrypted with your default CMK cannot be shared with other accounts.

        For more information on modifying snapshot permissions, see Sharing Snapshots in the Amazon Elastic Compute Cloud User Guide.

        ", "ModifySpotFleetRequest": "

        Modifies the specified Spot fleet request.

        While the Spot fleet request is being modified, it is in the modifying state.

        To scale up your Spot fleet, increase its target capacity. The Spot fleet launches the additional Spot instances according to the allocation strategy for the Spot fleet request. If the allocation strategy is lowestPrice, the Spot fleet launches instances using the Spot pool with the lowest price. If the allocation strategy is diversified, the Spot fleet distributes the instances across the Spot pools.

        To scale down your Spot fleet, decrease its target capacity. First, the Spot fleet cancels any open bids that exceed the new target capacity. You can request that the Spot fleet terminate Spot instances until the size of the fleet no longer exceeds the new target capacity. If the allocation strategy is lowestPrice, the Spot fleet terminates the instances with the highest price per unit. If the allocation strategy is diversified, the Spot fleet terminates instances across the Spot pools. Alternatively, you can request that the Spot fleet keep the fleet at its current size, but not replace any Spot instances that are interrupted or that you terminate manually.

        ", "ModifySubnetAttribute": "

        Modifies a subnet attribute.

        ", "ModifyVolumeAttribute": "

        Modifies a volume attribute.

        By default, all I/O operations for the volume are suspended when the data on the volume is determined to be potentially inconsistent, to prevent undetectable, latent data corruption. The I/O access to the volume can be resumed by first enabling I/O access and then checking the data consistency on your volume.

        You can change the default behavior to resume I/O operations. We recommend that you change this only for boot volumes or for volumes that are stateless or disposable.

        ", "ModifyVpcAttribute": "

        Modifies the specified attribute of the specified VPC.

        ", "ModifyVpcEndpoint": "

        Modifies attributes of a specified VPC endpoint. You can modify the policy associated with the endpoint, and you can add and remove route tables associated with the endpoint.

        ", "ModifyVpcPeeringConnectionOptions": "

        Modifies the VPC peering connection options on one side of a VPC peering connection. You can do the following:

        • Enable/disable communication over the peering connection between an EC2-Classic instance that's linked to your VPC (using ClassicLink) and instances in the peer VPC.

        • Enable/disable communication over the peering connection between instances in your VPC and an EC2-Classic instance that's linked to the peer VPC.

        • Enable/disable a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC.

        If the peered VPCs are in different accounts, each owner must initiate a separate request to modify the peering connection options, depending on whether their VPC was the requester or accepter for the VPC peering connection. If the peered VPCs are in the same account, you can modify the requester and accepter options in the same request. To confirm which VPC is the accepter and requester for a VPC peering connection, use the DescribeVpcPeeringConnections command.

        ", "MonitorInstances": "

        Enables monitoring for a running instance. For more information about monitoring instances, see Monitoring Your Instances and Volumes in the Amazon Elastic Compute Cloud User Guide.

        ", "MoveAddressToVpc": "

        Moves an Elastic IP address from the EC2-Classic platform to the EC2-VPC platform. The Elastic IP address must be allocated to your account for more than 24 hours, and it must not be associated with an instance. After the Elastic IP address is moved, it is no longer available for use in the EC2-Classic platform, unless you move it back using the RestoreAddressToClassic request. You cannot move an Elastic IP address that was originally allocated for use in the EC2-VPC platform to the EC2-Classic platform.

        ", "PurchaseHostReservation": "

        Purchase a reservation with configurations that match those of your Dedicated Host. You must have active Dedicated Hosts in your account before you purchase a reservation. This action results in the specified reservation being purchased and charged to your account.

        ", "PurchaseReservedInstancesOffering": "

        Purchases a Reserved Instance for use with your account. With Reserved Instances, you pay a lower hourly rate compared to On-Demand instance pricing.

        Use DescribeReservedInstancesOfferings to get a list of Reserved Instance offerings that match your specifications. After you've purchased a Reserved Instance, you can check for your new Reserved Instance with DescribeReservedInstances.

        For more information, see Reserved Instances and Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.

        ", "PurchaseScheduledInstances": "

        Purchases one or more Scheduled Instances with the specified schedule.

        Scheduled Instances enable you to purchase Amazon EC2 compute capacity by the hour for a one-year term. Before you can purchase a Scheduled Instance, you must call DescribeScheduledInstanceAvailability to check for available schedules and obtain a purchase token. After you purchase a Scheduled Instance, you must call RunScheduledInstances during each scheduled time period.

        After you purchase a Scheduled Instance, you can't cancel, modify, or resell your purchase.

        ", "RebootInstances": "

        Requests a reboot of one or more instances. This operation is asynchronous; it only queues a request to reboot the specified instances. The operation succeeds if the instances are valid and belong to you. Requests to reboot terminated instances are ignored.

        If an instance does not cleanly shut down within four minutes, Amazon EC2 performs a hard reboot.

        For more information about troubleshooting, see Getting Console Output and Rebooting Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "RegisterImage": "

        Registers an AMI. When you're creating an AMI, this is the final step you must complete before you can launch an instance from the AMI. For more information about creating AMIs, see Creating Your Own AMIs in the Amazon Elastic Compute Cloud User Guide.

        For Amazon EBS-backed instances, CreateImage creates and registers the AMI in a single request, so you don't have to register the AMI yourself.

        You can also use RegisterImage to create an Amazon EBS-backed Linux AMI from a snapshot of a root device volume. For more information, see Launching an Instance from a Snapshot in the Amazon Elastic Compute Cloud User Guide.

        Some Linux distributions, such as Red Hat Enterprise Linux (RHEL) and SUSE Linux Enterprise Server (SLES), use the EC2 billingProduct code associated with an AMI to verify subscription status for package updates. Creating an AMI from an EBS snapshot does not maintain this billing code, and subsequent instances launched from such an AMI will not be able to connect to package update infrastructure.

        Similarly, although you can create a Windows AMI from a snapshot, you can't successfully launch an instance from the AMI.

        To create Windows AMIs or to create AMIs for Linux operating systems that must retain AMI billing codes to work properly, see CreateImage.

        If needed, you can deregister an AMI at any time. Any modifications you make to an AMI backed by an instance store volume invalidates its registration. If you make changes to an image, deregister the previous image and register the new image.

        You can't register an image where a secondary (non-root) snapshot has AWS Marketplace product codes.

        ", "RejectVpcPeeringConnection": "

        Rejects a VPC peering connection request. The VPC peering connection must be in the pending-acceptance state. Use the DescribeVpcPeeringConnections request to view your outstanding VPC peering connection requests. To delete an active VPC peering connection, or to delete a VPC peering connection request that you initiated, use DeleteVpcPeeringConnection.

        ", "ReleaseAddress": "

        Releases the specified Elastic IP address.

        After releasing an Elastic IP address, it is released to the IP address pool and might be unavailable to you. Be sure to update your DNS records and any servers or devices that communicate with the address. If you attempt to release an Elastic IP address that you already released, you'll get an AuthFailure error if the address is already allocated to another AWS account.

        [EC2-Classic, default VPC] Releasing an Elastic IP address automatically disassociates it from any instance that it's associated with. To disassociate an Elastic IP address without releasing it, use DisassociateAddress.

        [Nondefault VPC] You must use DisassociateAddress to disassociate the Elastic IP address before you try to release it. Otherwise, Amazon EC2 returns an error (InvalidIPAddress.InUse).

        ", "ReleaseHosts": "

        When you no longer want to use an On-Demand Dedicated Host it can be released. On-Demand billing is stopped and the host goes into released state. The host ID of Dedicated Hosts that have been released can no longer be specified in another request, e.g., ModifyHosts. You must stop or terminate all instances on a host before it can be released.

        When Dedicated Hosts are released, it make take some time for them to stop counting toward your limit and you may receive capacity errors when trying to allocate new Dedicated hosts. Try waiting a few minutes, and then try again.

        Released hosts will still appear in a DescribeHosts response.

        ", "ReplaceNetworkAclAssociation": "

        Changes which network ACL a subnet is associated with. By default when you create a subnet, it's automatically associated with the default network ACL. For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "ReplaceNetworkAclEntry": "

        Replaces an entry (rule) in a network ACL. For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

        ", "ReplaceRoute": "

        Replaces an existing route within a route table in a VPC. You must provide only one of the following: Internet gateway or virtual private gateway, NAT instance, NAT gateway, VPC peering connection, or network interface.

        For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        ", "ReplaceRouteTableAssociation": "

        Changes the route table associated with a given subnet in a VPC. After the operation completes, the subnet uses the routes in the new route table it's associated with. For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.

        You can also use ReplaceRouteTableAssociation to change which table is the main route table in the VPC. You just specify the main route table's association ID and the route table to be the new main route table.

        ", "ReportInstanceStatus": "

        Submits feedback about the status of an instance. The instance must be in the running state. If your experience with the instance differs from the instance status returned by DescribeInstanceStatus, use ReportInstanceStatus to report your experience with the instance. Amazon EC2 collects this information to improve the accuracy of status checks.

        Use of this action does not change the value returned by DescribeInstanceStatus.

        ", "RequestSpotFleet": "

        Creates a Spot fleet request.

        You can submit a single request that includes multiple launch specifications that vary by instance type, AMI, Availability Zone, or subnet.

        By default, the Spot fleet requests Spot instances in the Spot pool where the price per unit is the lowest. Each launch specification can include its own instance weighting that reflects the value of the instance type to your application workload.

        Alternatively, you can specify that the Spot fleet distribute the target capacity across the Spot pools included in its launch specifications. By ensuring that the Spot instances in your Spot fleet are in different Spot pools, you can improve the availability of your fleet.

        For more information, see Spot Fleet Requests in the Amazon Elastic Compute Cloud User Guide.

        ", "RequestSpotInstances": "

        Creates a Spot instance request. Spot instances are instances that Amazon EC2 launches when the bid price that you specify exceeds the current Spot price. Amazon EC2 periodically sets the Spot price based on available Spot Instance capacity and current Spot instance requests. For more information, see Spot Instance Requests in the Amazon Elastic Compute Cloud User Guide.

        ", "ResetImageAttribute": "

        Resets an attribute of an AMI to its default value.

        The productCodes attribute can't be reset.

        ", "ResetInstanceAttribute": "

        Resets an attribute of an instance to its default value. To reset the kernel or ramdisk, the instance must be in a stopped state. To reset the sourceDestCheck, the instance can be either running or stopped.

        The sourceDestCheck attribute controls whether source/destination checking is enabled. The default value is true, which means checking is enabled. This value must be false for a NAT instance to perform NAT. For more information, see NAT Instances in the Amazon Virtual Private Cloud User Guide.

        ", "ResetNetworkInterfaceAttribute": "

        Resets a network interface attribute. You can specify only one attribute at a time.

        ", "ResetSnapshotAttribute": "

        Resets permission settings for the specified snapshot.

        For more information on modifying snapshot permissions, see Sharing Snapshots in the Amazon Elastic Compute Cloud User Guide.

        ", "RestoreAddressToClassic": "

        Restores an Elastic IP address that was previously moved to the EC2-VPC platform back to the EC2-Classic platform. You cannot move an Elastic IP address that was originally allocated for use in EC2-VPC. The Elastic IP address must not be associated with an instance or network interface.

        ", "RevokeSecurityGroupEgress": "

        [EC2-VPC only] Removes one or more egress rules from a security group for EC2-VPC. This action doesn't apply to security groups for use in EC2-Classic. The values that you specify in the revoke request (for example, ports) must match the existing rule's values for the rule to be revoked.

        Each rule consists of the protocol and the CIDR range or source security group. For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code.

        Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

        ", "RevokeSecurityGroupIngress": "

        Removes one or more ingress rules from a security group. The values that you specify in the revoke request (for example, ports) must match the existing rule's values for the rule to be removed.

        Each rule consists of the protocol and the CIDR range or source security group. For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code.

        Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

        ", "RunInstances": "

        Launches the specified number of instances using an AMI for which you have permissions.

        When you launch an instance, it enters the pending state. After the instance is ready for you, it enters the running state. To check the state of your instance, call DescribeInstances.

        To ensure faster instance launches, break up large requests into smaller batches. For example, create five separate launch requests for 100 instances each instead of one launch request for 500 instances.

        To tag your instance, ensure that it is running as CreateTags requires a resource ID. For more information about tagging, see Tagging Your Amazon EC2 Resources.

        If you don't specify a security group when launching an instance, Amazon EC2 uses the default security group. For more information, see Security Groups in the Amazon Elastic Compute Cloud User Guide.

        [EC2-VPC only accounts] If you don't specify a subnet in the request, we choose a default subnet from your default VPC for you.

        [EC2-Classic accounts] If you're launching into EC2-Classic and you don't specify an Availability Zone, we choose one for you.

        Linux instances have access to the public key of the key pair at boot. You can use this key to provide secure access to the instance. Amazon EC2 public images use this feature to provide secure access without passwords. For more information, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.

        You can provide optional user data when launching an instance. For more information, see Instance Metadata in the Amazon Elastic Compute Cloud User Guide.

        If any of the AMIs have a product code attached for which the user has not subscribed, RunInstances fails.

        Some instance types can only be launched into a VPC. If you do not have a default VPC, or if you do not specify a subnet ID in the request, RunInstances fails. For more information, see Instance Types Available Only in a VPC.

        For more information about troubleshooting, see What To Do If An Instance Immediately Terminates, and Troubleshooting Connecting to Your Instance in the Amazon Elastic Compute Cloud User Guide.

        ", "RunScheduledInstances": "

        Launches the specified Scheduled Instances.

        Before you can launch a Scheduled Instance, you must purchase it and obtain an identifier using PurchaseScheduledInstances.

        You must launch a Scheduled Instance during its scheduled time period. You can't stop or reboot a Scheduled Instance, but you can terminate it as needed. If you terminate a Scheduled Instance before the current scheduled time period ends, you can launch it again after a few minutes. For more information, see Scheduled Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "StartInstances": "

        Starts an Amazon EBS-backed AMI that you've previously stopped.

        Instances that use Amazon EBS volumes as their root devices can be quickly stopped and started. When an instance is stopped, the compute resources are released and you are not billed for hourly instance usage. However, your root partition Amazon EBS volume remains, continues to persist your data, and you are charged for Amazon EBS volume usage. You can restart your instance at any time. Each time you transition an instance from stopped to started, Amazon EC2 charges a full instance hour, even if transitions happen multiple times within a single hour.

        Before stopping an instance, make sure it is in a state from which it can be restarted. Stopping an instance does not preserve data stored in RAM.

        Performing this operation on an instance that uses an instance store as its root device returns an error.

        For more information, see Stopping Instances in the Amazon Elastic Compute Cloud User Guide.

        ", "StopInstances": "

        Stops an Amazon EBS-backed instance.

        We don't charge hourly usage for a stopped instance, or data transfer fees; however, your root partition Amazon EBS volume remains, continues to persist your data, and you are charged for Amazon EBS volume usage. Each time you transition an instance from stopped to started, Amazon EC2 charges a full instance hour, even if transitions happen multiple times within a single hour.

        You can't start or stop Spot instances, and you can't stop instance store-backed instances.

        When you stop an instance, we shut it down. You can restart your instance at any time. Before stopping an instance, make sure it is in a state from which it can be restarted. Stopping an instance does not preserve data stored in RAM.

        Stopping an instance is different to rebooting or terminating it. For example, when you stop an instance, the root device and any other devices attached to the instance persist. When you terminate an instance, the root device and any other devices attached during the instance launch are automatically deleted. For more information about the differences between rebooting, stopping, and terminating instances, see Instance Lifecycle in the Amazon Elastic Compute Cloud User Guide.

        When you stop an instance, we attempt to shut it down forcibly after a short while. If your instance appears stuck in the stopping state after a period of time, there may be an issue with the underlying host computer. For more information, see Troubleshooting Stopping Your Instance in the Amazon Elastic Compute Cloud User Guide.

        ", "TerminateInstances": "

        Shuts down one or more instances. This operation is idempotent; if you terminate an instance more than once, each call succeeds.

        If you specify multiple instances and the request fails (for example, because of a single incorrect instance ID), none of the instances are terminated.

        Terminated instances remain visible after termination (for approximately one hour).

        By default, Amazon EC2 deletes all EBS volumes that were attached when the instance launched. Volumes attached after instance launch continue running.

        You can stop, start, and terminate EBS-backed instances. You can only terminate instance store-backed instances. What happens to an instance differs if you stop it or terminate it. For example, when you stop an instance, the root device and any other devices attached to the instance persist. When you terminate an instance, any attached EBS volumes with the DeleteOnTermination block device mapping parameter set to true are automatically deleted. For more information about the differences between stopping and terminating instances, see Instance Lifecycle in the Amazon Elastic Compute Cloud User Guide.

        For more information about troubleshooting, see Troubleshooting Terminating Your Instance in the Amazon Elastic Compute Cloud User Guide.

        ", "UnassignPrivateIpAddresses": "

        Unassigns one or more secondary private IP addresses from a network interface.

        ", "UnmonitorInstances": "

        Disables monitoring for a running instance. For more information about monitoring instances, see Monitoring Your Instances and Volumes in the Amazon Elastic Compute Cloud User Guide.

        " }, "shapes": { "AcceptReservedInstancesExchangeQuoteRequest": { "base": "

        Contains the parameters for accepting the quote.

        ", "refs": { } }, "AcceptReservedInstancesExchangeQuoteResult": { "base": "

        The result of the exchange and whether it was successful.

        ", "refs": { } }, "AcceptVpcPeeringConnectionRequest": { "base": "

        Contains the parameters for AcceptVpcPeeringConnection.

        ", "refs": { } }, "AcceptVpcPeeringConnectionResult": { "base": "

        Contains the output of AcceptVpcPeeringConnection.

        ", "refs": { } }, "AccountAttribute": { "base": "

        Describes an account attribute.

        ", "refs": { "AccountAttributeList$member": null } }, "AccountAttributeList": { "base": null, "refs": { "DescribeAccountAttributesResult$AccountAttributes": "

        Information about one or more account attributes.

        " } }, "AccountAttributeName": { "base": null, "refs": { "AccountAttributeNameStringList$member": null } }, "AccountAttributeNameStringList": { "base": null, "refs": { "DescribeAccountAttributesRequest$AttributeNames": "

        One or more account attribute names.

        " } }, "AccountAttributeValue": { "base": "

        Describes a value of an account attribute.

        ", "refs": { "AccountAttributeValueList$member": null } }, "AccountAttributeValueList": { "base": null, "refs": { "AccountAttribute$AttributeValues": "

        One or more values for the account attribute.

        " } }, "ActiveInstance": { "base": "

        Describes a running instance in a Spot fleet.

        ", "refs": { "ActiveInstanceSet$member": null } }, "ActiveInstanceSet": { "base": null, "refs": { "DescribeSpotFleetInstancesResponse$ActiveInstances": "

        The running instances. Note that this list is refreshed periodically and might be out of date.

        " } }, "ActivityStatus": { "base": null, "refs": { "SpotFleetRequestConfig$ActivityStatus": "

        The progress of the Spot fleet request. If there is an error, the status is error. After all bids are placed, the status is pending_fulfillment. If the size of the fleet is equal to or greater than its target capacity, the status is fulfilled. If the size of the fleet is decreased, the status is pending_termination while Spot instances are terminating.

        " } }, "Address": { "base": "

        Describes an Elastic IP address.

        ", "refs": { "AddressList$member": null } }, "AddressList": { "base": null, "refs": { "DescribeAddressesResult$Addresses": "

        Information about one or more Elastic IP addresses.

        " } }, "Affinity": { "base": null, "refs": { "ModifyInstancePlacementRequest$Affinity": "

        The new affinity setting for the instance.

        " } }, "AllocateAddressRequest": { "base": "

        Contains the parameters for AllocateAddress.

        ", "refs": { } }, "AllocateAddressResult": { "base": "

        Contains the output of AllocateAddress.

        ", "refs": { } }, "AllocateHostsRequest": { "base": "

        Contains the parameters for AllocateHosts.

        ", "refs": { } }, "AllocateHostsResult": { "base": "

        Contains the output of AllocateHosts.

        ", "refs": { } }, "AllocationIdList": { "base": null, "refs": { "DescribeAddressesRequest$AllocationIds": "

        [EC2-VPC] One or more allocation IDs.

        Default: Describes all your Elastic IP addresses.

        " } }, "AllocationState": { "base": null, "refs": { "Host$State": "

        The Dedicated Host's state.

        " } }, "AllocationStrategy": { "base": null, "refs": { "SpotFleetRequestConfigData$AllocationStrategy": "

        Indicates how to allocate the target capacity across the Spot pools specified by the Spot fleet request. The default is lowestPrice.

        " } }, "ArchitectureValues": { "base": null, "refs": { "Image$Architecture": "

        The architecture of the image.

        ", "ImportInstanceLaunchSpecification$Architecture": "

        The architecture of the instance.

        ", "Instance$Architecture": "

        The architecture of the image.

        ", "RegisterImageRequest$Architecture": "

        The architecture of the AMI.

        Default: For Amazon EBS-backed AMIs, i386. For instance store-backed AMIs, the architecture specified in the manifest file.

        " } }, "AssignPrivateIpAddressesRequest": { "base": "

        Contains the parameters for AssignPrivateIpAddresses.

        ", "refs": { } }, "AssociateAddressRequest": { "base": "

        Contains the parameters for AssociateAddress.

        ", "refs": { } }, "AssociateAddressResult": { "base": "

        Contains the output of AssociateAddress.

        ", "refs": { } }, "AssociateDhcpOptionsRequest": { "base": "

        Contains the parameters for AssociateDhcpOptions.

        ", "refs": { } }, "AssociateRouteTableRequest": { "base": "

        Contains the parameters for AssociateRouteTable.

        ", "refs": { } }, "AssociateRouteTableResult": { "base": "

        Contains the output of AssociateRouteTable.

        ", "refs": { } }, "AttachClassicLinkVpcRequest": { "base": "

        Contains the parameters for AttachClassicLinkVpc.

        ", "refs": { } }, "AttachClassicLinkVpcResult": { "base": "

        Contains the output of AttachClassicLinkVpc.

        ", "refs": { } }, "AttachInternetGatewayRequest": { "base": "

        Contains the parameters for AttachInternetGateway.

        ", "refs": { } }, "AttachNetworkInterfaceRequest": { "base": "

        Contains the parameters for AttachNetworkInterface.

        ", "refs": { } }, "AttachNetworkInterfaceResult": { "base": "

        Contains the output of AttachNetworkInterface.

        ", "refs": { } }, "AttachVolumeRequest": { "base": "

        Contains the parameters for AttachVolume.

        ", "refs": { } }, "AttachVpnGatewayRequest": { "base": "

        Contains the parameters for AttachVpnGateway.

        ", "refs": { } }, "AttachVpnGatewayResult": { "base": "

        Contains the output of AttachVpnGateway.

        ", "refs": { } }, "AttachmentStatus": { "base": null, "refs": { "EbsInstanceBlockDevice$Status": "

        The attachment state.

        ", "InstanceNetworkInterfaceAttachment$Status": "

        The attachment state.

        ", "InternetGatewayAttachment$State": "

        The current state of the attachment.

        ", "NetworkInterfaceAttachment$Status": "

        The attachment state.

        ", "VpcAttachment$State": "

        The current state of the attachment.

        " } }, "AttributeBooleanValue": { "base": "

        Describes a value for a resource attribute that is a Boolean value.

        ", "refs": { "DescribeNetworkInterfaceAttributeResult$SourceDestCheck": "

        Indicates whether source/destination checking is enabled.

        ", "DescribeVolumeAttributeResult$AutoEnableIO": "

        The state of autoEnableIO attribute.

        ", "DescribeVpcAttributeResult$EnableDnsSupport": "

        Indicates whether DNS resolution is enabled for the VPC. If this attribute is true, the Amazon DNS server resolves DNS hostnames for your instances to their corresponding IP addresses; otherwise, it does not.

        ", "DescribeVpcAttributeResult$EnableDnsHostnames": "

        Indicates whether the instances launched in the VPC get DNS hostnames. If this attribute is true, instances in the VPC get DNS hostnames; otherwise, they do not.

        ", "InstanceAttribute$DisableApiTermination": "

        If the value is true, you can't terminate the instance through the Amazon EC2 console, CLI, or API; otherwise, you can.

        ", "InstanceAttribute$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O.

        ", "InstanceAttribute$EnaSupport": "

        Indicates whether enhanced networking with ENA is enabled.

        ", "InstanceAttribute$SourceDestCheck": "

        Indicates whether source/destination checking is enabled. A value of true means checking is enabled, and false means checking is disabled. This value must be false for a NAT instance to perform NAT.

        ", "ModifyInstanceAttributeRequest$SourceDestCheck": "

        Specifies whether source/destination checking is enabled. A value of true means that checking is enabled, and false means checking is disabled. This value must be false for a NAT instance to perform NAT.

        ", "ModifyInstanceAttributeRequest$DisableApiTermination": "

        If the value is true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. You cannot use this paramater for Spot Instances.

        ", "ModifyInstanceAttributeRequest$EbsOptimized": "

        Specifies whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        ", "ModifyInstanceAttributeRequest$EnaSupport": "

        Set to true to enable enhanced networking with ENA for the instance.

        This option is supported only for HVM instances. Specifying this option with a PV instance can make it unreachable.

        ", "ModifyNetworkInterfaceAttributeRequest$SourceDestCheck": "

        Indicates whether source/destination checking is enabled. A value of true means checking is enabled, and false means checking is disabled. This value must be false for a NAT instance to perform NAT. For more information, see NAT Instances in the Amazon Virtual Private Cloud User Guide.

        ", "ModifySubnetAttributeRequest$MapPublicIpOnLaunch": "

        Specify true to indicate that instances launched into the specified subnet should be assigned public IP address.

        ", "ModifyVolumeAttributeRequest$AutoEnableIO": "

        Indicates whether the volume should be auto-enabled for I/O operations.

        ", "ModifyVpcAttributeRequest$EnableDnsSupport": "

        Indicates whether the DNS resolution is supported for the VPC. If enabled, queries to the Amazon provided DNS server at the 169.254.169.253 IP address, or the reserved IP address at the base of the VPC network range \"plus two\" will succeed. If disabled, the Amazon provided DNS service in the VPC that resolves public DNS hostnames to IP addresses is not enabled.

        You cannot modify the DNS resolution and DNS hostnames attributes in the same request. Use separate requests for each attribute.

        ", "ModifyVpcAttributeRequest$EnableDnsHostnames": "

        Indicates whether the instances launched in the VPC get DNS hostnames. If enabled, instances in the VPC get DNS hostnames; otherwise, they do not.

        You cannot modify the DNS resolution and DNS hostnames attributes in the same request. Use separate requests for each attribute. You can only enable DNS hostnames if you've enabled DNS support.

        " } }, "AttributeValue": { "base": "

        Describes a value for a resource attribute that is a String.

        ", "refs": { "DescribeNetworkInterfaceAttributeResult$Description": "

        The description of the network interface.

        ", "DhcpConfigurationValueList$member": null, "ImageAttribute$KernelId": "

        The kernel ID.

        ", "ImageAttribute$RamdiskId": "

        The RAM disk ID.

        ", "ImageAttribute$Description": "

        A description for the AMI.

        ", "ImageAttribute$SriovNetSupport": "

        Indicates whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.

        ", "InstanceAttribute$InstanceType": "

        The instance type.

        ", "InstanceAttribute$KernelId": "

        The kernel ID.

        ", "InstanceAttribute$RamdiskId": "

        The RAM disk ID.

        ", "InstanceAttribute$UserData": "

        The user data.

        ", "InstanceAttribute$InstanceInitiatedShutdownBehavior": "

        Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

        ", "InstanceAttribute$RootDeviceName": "

        The name of the root device (for example, /dev/sda1 or /dev/xvda).

        ", "InstanceAttribute$SriovNetSupport": "

        Indicates whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.

        ", "ModifyImageAttributeRequest$Description": "

        A description for the AMI.

        ", "ModifyInstanceAttributeRequest$InstanceType": "

        Changes the instance type to the specified value. For more information, see Instance Types. If the instance type is not valid, the error returned is InvalidInstanceAttributeValue.

        ", "ModifyInstanceAttributeRequest$Kernel": "

        Changes the instance's kernel to the specified value. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB.

        ", "ModifyInstanceAttributeRequest$Ramdisk": "

        Changes the instance's RAM disk to the specified value. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB.

        ", "ModifyInstanceAttributeRequest$InstanceInitiatedShutdownBehavior": "

        Specifies whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

        ", "ModifyInstanceAttributeRequest$SriovNetSupport": "

        Set to simple to enable enhanced networking with the Intel 82599 Virtual Function interface for the instance.

        There is no way to disable enhanced networking with the Intel 82599 Virtual Function interface at this time.

        This option is supported only for HVM instances. Specifying this option with a PV instance can make it unreachable.

        ", "ModifyNetworkInterfaceAttributeRequest$Description": "

        A description for the network interface.

        " } }, "AuthorizeSecurityGroupEgressRequest": { "base": "

        Contains the parameters for AuthorizeSecurityGroupEgress.

        ", "refs": { } }, "AuthorizeSecurityGroupIngressRequest": { "base": "

        Contains the parameters for AuthorizeSecurityGroupIngress.

        ", "refs": { } }, "AutoPlacement": { "base": null, "refs": { "AllocateHostsRequest$AutoPlacement": "

        This is enabled by default. This property allows instances to be automatically placed onto available Dedicated Hosts, when you are launching instances without specifying a host ID.

        Default: Enabled

        ", "Host$AutoPlacement": "

        Whether auto-placement is on or off.

        ", "ModifyHostsRequest$AutoPlacement": "

        Specify whether to enable or disable auto-placement.

        " } }, "AvailabilityZone": { "base": "

        Describes an Availability Zone.

        ", "refs": { "AvailabilityZoneList$member": null } }, "AvailabilityZoneList": { "base": null, "refs": { "DescribeAvailabilityZonesResult$AvailabilityZones": "

        Information about one or more Availability Zones.

        " } }, "AvailabilityZoneMessage": { "base": "

        Describes a message about an Availability Zone.

        ", "refs": { "AvailabilityZoneMessageList$member": null } }, "AvailabilityZoneMessageList": { "base": null, "refs": { "AvailabilityZone$Messages": "

        Any messages about the Availability Zone.

        " } }, "AvailabilityZoneState": { "base": null, "refs": { "AvailabilityZone$State": "

        The state of the Availability Zone.

        " } }, "AvailableCapacity": { "base": "

        The capacity information for instances launched onto the Dedicated Host.

        ", "refs": { "Host$AvailableCapacity": "

        The number of new instances that can be launched onto the Dedicated Host.

        " } }, "AvailableInstanceCapacityList": { "base": null, "refs": { "AvailableCapacity$AvailableInstanceCapacity": "

        The total number of instances that the Dedicated Host supports.

        " } }, "BatchState": { "base": null, "refs": { "CancelSpotFleetRequestsSuccessItem$CurrentSpotFleetRequestState": "

        The current state of the Spot fleet request.

        ", "CancelSpotFleetRequestsSuccessItem$PreviousSpotFleetRequestState": "

        The previous state of the Spot fleet request.

        ", "SpotFleetRequestConfig$SpotFleetRequestState": "

        The state of the Spot fleet request.

        " } }, "Blob": { "base": null, "refs": { "BlobAttributeValue$Value": null, "ImportKeyPairRequest$PublicKeyMaterial": "

        The public key. For API calls, the text must be base64-encoded. For command line tools, base64 encoding is performed for you.

        ", "S3Storage$UploadPolicy": "

        An Amazon S3 upload policy that gives Amazon EC2 permission to upload items into Amazon S3 on your behalf.

        " } }, "BlobAttributeValue": { "base": null, "refs": { "ModifyInstanceAttributeRequest$UserData": "

        Changes the instance's user data to the specified value. If you are using an AWS SDK or command line tool, Base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide Base64-encoded text.

        " } }, "BlockDeviceMapping": { "base": "

        Describes a block device mapping.

        ", "refs": { "BlockDeviceMappingList$member": null, "BlockDeviceMappingRequestList$member": null } }, "BlockDeviceMappingList": { "base": null, "refs": { "Image$BlockDeviceMappings": "

        Any block device mapping entries.

        ", "ImageAttribute$BlockDeviceMappings": "

        One or more block device mapping entries.

        ", "LaunchSpecification$BlockDeviceMappings": "

        One or more block device mapping entries.

        Although you can specify encrypted EBS volumes in this block device mapping for your Spot Instances, these volumes are not encrypted.

        ", "RequestSpotLaunchSpecification$BlockDeviceMappings": "

        One or more block device mapping entries.

        Although you can specify encrypted EBS volumes in this block device mapping for your Spot Instances, these volumes are not encrypted.

        ", "SpotFleetLaunchSpecification$BlockDeviceMappings": "

        One or more block device mapping entries.

        " } }, "BlockDeviceMappingRequestList": { "base": null, "refs": { "CreateImageRequest$BlockDeviceMappings": "

        Information about one or more block device mappings.

        ", "RegisterImageRequest$BlockDeviceMappings": "

        One or more block device mapping entries.

        ", "RunInstancesRequest$BlockDeviceMappings": "

        The block device mapping.

        Supplying both a snapshot ID and an encryption value as arguments for block-device mapping results in an error. This is because only blank volumes can be encrypted on start, and these are not created from a snapshot. If a snapshot is the basis for the volume, it contains data by definition and its encryption status cannot be changed using this action.

        " } }, "Boolean": { "base": null, "refs": { "AcceptReservedInstancesExchangeQuoteRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AcceptVpcPeeringConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AllocateAddressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AssignPrivateIpAddressesRequest$AllowReassignment": "

        Indicates whether to allow an IP address that is already assigned to another network interface or instance to be reassigned to the specified network interface.

        ", "AssociateAddressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AssociateAddressRequest$AllowReassociation": "

        [EC2-VPC] For a VPC in an EC2-Classic account, specify true to allow an Elastic IP address that is already associated with an instance or network interface to be reassociated with the specified instance or network interface. Otherwise, the operation fails. In a VPC in an EC2-VPC-only account, reassociation is automatic, therefore you can specify false to ensure the operation fails if the Elastic IP address is already associated with another resource.

        ", "AssociateDhcpOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AssociateRouteTableRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachClassicLinkVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachClassicLinkVpcResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "AttachInternetGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachNetworkInterfaceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttachVpnGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AttributeBooleanValue$Value": "

        The attribute value. The valid values are true or false.

        ", "AuthorizeSecurityGroupEgressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "AuthorizeSecurityGroupIngressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "BundleInstanceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelBundleTaskRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelConversionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelImportTaskRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelSpotFleetRequestsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CancelSpotFleetRequestsRequest$TerminateInstances": "

        Indicates whether to terminate instances for a Spot fleet request if it is canceled successfully.

        ", "CancelSpotInstanceRequestsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ClassicLinkDnsSupport$ClassicLinkDnsSupported": "

        Indicates whether ClassicLink DNS support is enabled for the VPC.

        ", "ConfirmProductInstanceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ConfirmProductInstanceResult$Return": "

        The return value of the request. Returns true if the specified product code is owned by the requester and associated with the specified instance.

        ", "CopyImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CopyImageRequest$Encrypted": "

        Specifies whether the destination snapshots of the copied image should be encrypted. The default CMK for EBS is used unless a non-default AWS Key Management Service (AWS KMS) CMK is specified with KmsKeyId. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        ", "CopySnapshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CopySnapshotRequest$Encrypted": "

        Specifies whether the destination snapshot should be encrypted. You can encrypt a copy of an unencrypted snapshot using this flag, but you cannot use it to create an unencrypted copy from an encrypted snapshot. Your default CMK for EBS is used unless a non-default AWS Key Management Service (AWS KMS) CMK is specified with KmsKeyId. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateCustomerGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateDhcpOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateImageRequest$NoReboot": "

        By default, Amazon EC2 attempts to shut down and reboot the instance before creating the image. If the 'No Reboot' option is set, Amazon EC2 doesn't shut down the instance before creating the image. When this option is used, file system integrity on the created image can't be guaranteed.

        ", "CreateInternetGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateKeyPairRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateNetworkAclEntryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateNetworkAclEntryRequest$Egress": "

        Indicates whether this is an egress rule (rule is applied to traffic leaving the subnet).

        ", "CreateNetworkAclRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateNetworkInterfaceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreatePlacementGroupRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateRouteRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateRouteResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "CreateRouteTableRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateSecurityGroupRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateSnapshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateSpotDatafeedSubscriptionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateSubnetRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateTagsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVolumeRequest$Encrypted": "

        Specifies whether the volume should be encrypted. Encrypted Amazon EBS volumes may only be attached to instances that support Amazon EBS encryption. Volumes that are created from encrypted snapshots are automatically encrypted. There is no way to create an encrypted volume from an unencrypted snapshot or vice versa. If your AMI uses encrypted volumes, you can only launch it on supported instance types. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateVpcEndpointRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVpcPeeringConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVpnConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "CreateVpnGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteCustomerGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteDhcpOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteInternetGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteKeyPairRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteNetworkAclEntryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteNetworkAclEntryRequest$Egress": "

        Indicates whether the rule is an egress rule.

        ", "DeleteNetworkAclRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteNetworkInterfaceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeletePlacementGroupRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteRouteRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteRouteTableRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteSecurityGroupRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteSnapshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteSpotDatafeedSubscriptionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteSubnetRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteTagsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpcEndpointsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpcPeeringConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpcPeeringConnectionResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "DeleteVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpnConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeleteVpnGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DeregisterImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeAccountAttributesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeAddressesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeAvailabilityZonesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeBundleTasksRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeClassicLinkInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeConversionTasksRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeCustomerGatewaysRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeDhcpOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeImageAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeImagesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeImportImageTasksRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeImportSnapshotTasksRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeInstanceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeInstanceStatusRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeInstanceStatusRequest$IncludeAllInstances": "

        When true, includes the health status for all instances. When false, includes the health status for running instances only.

        Default: false

        ", "DescribeInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeInternetGatewaysRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeKeyPairsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeMovingAddressesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeNetworkAclsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeNetworkInterfaceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeNetworkInterfacesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribePlacementGroupsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribePrefixListsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeRegionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeReservedInstancesOfferingsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeReservedInstancesOfferingsRequest$IncludeMarketplace": "

        Include Reserved Instance Marketplace offerings in the response.

        ", "DescribeReservedInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeRouteTablesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeScheduledInstanceAvailabilityRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeScheduledInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSecurityGroupReferencesRequest$DryRun": "

        Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSecurityGroupsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSnapshotAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSnapshotsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotDatafeedSubscriptionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotFleetInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotFleetRequestHistoryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotFleetRequestsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotInstanceRequestsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSpotPriceHistoryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeStaleSecurityGroupsRequest$DryRun": "

        Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeSubnetsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeTagsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVolumeAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVolumeStatusRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVolumesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcClassicLinkRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcEndpointServicesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcEndpointsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcPeeringConnectionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpcsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpnConnectionsRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DescribeVpnGatewaysRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachClassicLinkVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachClassicLinkVpcResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "DetachInternetGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachNetworkInterfaceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachNetworkInterfaceRequest$Force": "

        Specifies whether to force a detachment.

        ", "DetachVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DetachVolumeRequest$Force": "

        Forces detachment if the previous detachment attempt did not occur cleanly (for example, logging into an instance, unmounting the volume, and detaching normally). This option can lead to data loss or a corrupted file system. Use this option only as a last resort to detach a volume from a failed instance. The instance won't have an opportunity to flush file system caches or file system metadata. If you use this option, you must perform file system check and repair procedures.

        ", "DetachVpnGatewayRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DisableVpcClassicLinkDnsSupportResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "DisableVpcClassicLinkRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DisableVpcClassicLinkResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "DisassociateAddressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "DisassociateRouteTableRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "EbsBlockDevice$DeleteOnTermination": "

        Indicates whether the EBS volume is deleted on instance termination.

        ", "EbsBlockDevice$Encrypted": "

        Indicates whether the EBS volume is encrypted. Encrypted Amazon EBS volumes may only be attached to instances that support Amazon EBS encryption.

        ", "EbsInstanceBlockDevice$DeleteOnTermination": "

        Indicates whether the volume is deleted on instance termination.

        ", "EbsInstanceBlockDeviceSpecification$DeleteOnTermination": "

        Indicates whether the volume is deleted on instance termination.

        ", "EnableVolumeIORequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "EnableVpcClassicLinkDnsSupportResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "EnableVpcClassicLinkRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "EnableVpcClassicLinkResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "GetConsoleOutputRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "GetConsoleScreenshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "GetConsoleScreenshotRequest$WakeUp": "

        When set to true, acts as keystroke input and wakes up an instance that's in standby or \"sleep\" mode.

        ", "GetPasswordDataRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "GetReservedInstancesExchangeQuoteRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "GetReservedInstancesExchangeQuoteResult$IsValidExchange": "

        If true, the exchange is valid. If false, the exchange cannot be performed.

        ", "IdFormat$UseLongIds": "

        Indicates whether longer IDs (17-character IDs) are enabled for the resource.

        ", "Image$Public": "

        Indicates whether the image has public launch permissions. The value is true if this image has public launch permissions or false if it has only implicit and explicit launch permissions.

        ", "Image$EnaSupport": "

        Specifies whether enhanced networking with ENA is enabled.

        ", "ImportImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ImportInstanceLaunchSpecification$Monitoring": "

        Indicates whether monitoring is enabled.

        ", "ImportInstanceRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ImportKeyPairRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ImportSnapshotRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ImportVolumeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "Instance$SourceDestCheck": "

        Specifies whether to enable an instance launched in a VPC to perform NAT. This controls whether source/destination checking is enabled on the instance. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the instance to perform NAT. For more information, see NAT Instances in the Amazon Virtual Private Cloud User Guide.

        ", "Instance$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        ", "Instance$EnaSupport": "

        Specifies whether enhanced networking with ENA is enabled.

        ", "InstanceNetworkInterface$SourceDestCheck": "

        Indicates whether to validate network traffic to or from this network interface.

        ", "InstanceNetworkInterfaceAttachment$DeleteOnTermination": "

        Indicates whether the network interface is deleted when the instance is terminated.

        ", "InstanceNetworkInterfaceSpecification$DeleteOnTermination": "

        If set to true, the interface is deleted when the instance is terminated. You can specify true only if creating a new network interface when launching an instance.

        ", "InstanceNetworkInterfaceSpecification$AssociatePublicIpAddress": "

        Indicates whether to assign a public IP address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is true.

        ", "InstancePrivateIpAddress$Primary": "

        Indicates whether this IP address is the primary private IP address of the network interface.

        ", "LaunchSpecification$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        Default: false

        ", "ModifyIdFormatRequest$UseLongIds": "

        Indicate whether the resource should use longer IDs (17-character IDs).

        ", "ModifyIdentityIdFormatRequest$UseLongIds": "

        Indicates whether the resource should use longer IDs (17-character IDs)

        ", "ModifyImageAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifyInstanceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifyInstancePlacementResult$Return": "

        Is true if the request succeeds, and an error otherwise.

        ", "ModifyNetworkInterfaceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifySnapshotAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifySpotFleetRequestResponse$Return": "

        Is true if the request succeeds, and an error otherwise.

        ", "ModifyVolumeAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifyVpcEndpointRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ModifyVpcEndpointRequest$ResetPolicy": "

        Specify true to reset the policy document to the default policy. The default policy allows access to the service.

        ", "ModifyVpcEndpointResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "ModifyVpcPeeringConnectionOptionsRequest$DryRun": "

        Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "MonitorInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "MoveAddressToVpcRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "NetworkAcl$IsDefault": "

        Indicates whether this is the default network ACL for the VPC.

        ", "NetworkAclEntry$Egress": "

        Indicates whether the rule is an egress rule (applied to traffic leaving the subnet).

        ", "NetworkInterface$RequesterManaged": "

        Indicates whether the network interface is being managed by AWS.

        ", "NetworkInterface$SourceDestCheck": "

        Indicates whether traffic to or from the instance is validated.

        ", "NetworkInterfaceAttachment$DeleteOnTermination": "

        Indicates whether the network interface is deleted when the instance is terminated.

        ", "NetworkInterfaceAttachmentChanges$DeleteOnTermination": "

        Indicates whether the network interface is deleted when the instance is terminated.

        ", "NetworkInterfacePrivateIpAddress$Primary": "

        Indicates whether this IP address is the primary private IP address of the network interface.

        ", "PeeringConnectionOptions$AllowEgressFromLocalClassicLinkToRemoteVpc": "

        If true, enables outbound communication from an EC2-Classic instance that's linked to a local VPC via ClassicLink to instances in a peer VPC.

        ", "PeeringConnectionOptions$AllowEgressFromLocalVpcToRemoteClassicLink": "

        If true, enables outbound communication from instances in a local VPC to an EC2-Classic instance that's linked to a peer VPC via ClassicLink.

        ", "PeeringConnectionOptions$AllowDnsResolutionFromRemoteVpc": "

        If true, enables a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC.

        ", "PeeringConnectionOptionsRequest$AllowEgressFromLocalClassicLinkToRemoteVpc": "

        If true, enables outbound communication from an EC2-Classic instance that's linked to a local VPC via ClassicLink to instances in a peer VPC.

        ", "PeeringConnectionOptionsRequest$AllowEgressFromLocalVpcToRemoteClassicLink": "

        If true, enables outbound communication from instances in a local VPC to an EC2-Classic instance that's linked to a peer VPC via ClassicLink.

        ", "PeeringConnectionOptionsRequest$AllowDnsResolutionFromRemoteVpc": "

        If true, enables a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC.

        ", "PriceSchedule$Active": "

        The current price schedule, as determined by the term remaining for the Reserved Instance in the listing.

        A specific price schedule is always in effect, but only one price schedule can be active at any time. Take, for example, a Reserved Instance listing that has five months remaining in its term. When you specify price schedules for five months and two months, this means that schedule 1, covering the first three months of the remaining term, will be active during months 5, 4, and 3. Then schedule 2, covering the last two months of the term, will be active for months 2 and 1.

        ", "PrivateIpAddressSpecification$Primary": "

        Indicates whether the private IP address is the primary private IP address. Only one IP address can be designated as primary.

        ", "PurchaseReservedInstancesOfferingRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "PurchaseScheduledInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RebootInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RegisterImageRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RegisterImageRequest$EnaSupport": "

        Set to true to enable enhanced networking with ENA for the AMI and any instances that you launch from the AMI.

        This option is supported only for HVM AMIs. Specifying this option with a PV AMI can make instances launched from the AMI unreachable.

        ", "RejectVpcPeeringConnectionRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RejectVpcPeeringConnectionResult$Return": "

        Returns true if the request succeeds; otherwise, it returns an error.

        ", "ReleaseAddressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReplaceNetworkAclAssociationRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReplaceNetworkAclEntryRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReplaceNetworkAclEntryRequest$Egress": "

        Indicates whether to replace the egress rule.

        Default: If no value is specified, we replace the ingress rule.

        ", "ReplaceRouteRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReplaceRouteTableAssociationRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ReportInstanceStatusRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RequestSpotFleetRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RequestSpotInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RequestSpotLaunchSpecification$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        Default: false

        ", "ReservedInstancesOffering$Marketplace": "

        Indicates whether the offering is available through the Reserved Instance Marketplace (resale) or AWS. If it's a Reserved Instance Marketplace offering, this is true.

        ", "ResetImageAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ResetInstanceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ResetNetworkInterfaceAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ResetSnapshotAttributeRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RestoreAddressToClassicRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RevokeSecurityGroupEgressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RevokeSecurityGroupIngressRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RouteTableAssociation$Main": "

        Indicates whether this is the main route table.

        ", "RunInstancesMonitoringEnabled$Enabled": "

        Indicates whether monitoring is enabled for the instance.

        ", "RunInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "RunInstancesRequest$DisableApiTermination": "

        If you set this parameter to true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. If you set this parameter to true and then later want to be able to terminate the instance, you must first change the value of the disableApiTermination attribute to false using ModifyInstanceAttribute. Alternatively, if you set InstanceInitiatedShutdownBehavior to terminate, you can terminate the instance by running the shutdown command from the instance.

        Default: false

        ", "RunInstancesRequest$EbsOptimized": "

        Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.

        Default: false

        ", "RunScheduledInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "ScheduledInstanceRecurrence$OccurrenceRelativeToEnd": "

        Indicates whether the occurrence is relative to the end of the specified week or month.

        ", "ScheduledInstanceRecurrenceRequest$OccurrenceRelativeToEnd": "

        Indicates whether the occurrence is relative to the end of the specified week or month. You can't specify this value with a daily schedule.

        ", "ScheduledInstancesEbs$DeleteOnTermination": "

        Indicates whether the volume is deleted on instance termination.

        ", "ScheduledInstancesEbs$Encrypted": "

        Indicates whether the volume is encrypted. You can attached encrypted volumes only to instances that support them.

        ", "ScheduledInstancesLaunchSpecification$EbsOptimized": "

        Indicates whether the instances are optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.

        Default: false

        ", "ScheduledInstancesMonitoring$Enabled": "

        Indicates whether monitoring is enabled.

        ", "ScheduledInstancesNetworkInterface$AssociatePublicIpAddress": "

        Indicates whether to assign a public IP address to instances launched in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is true.

        ", "ScheduledInstancesNetworkInterface$DeleteOnTermination": "

        Indicates whether to delete the interface when the instance is terminated.

        ", "ScheduledInstancesPrivateIpAddressConfig$Primary": "

        Indicates whether this is a primary IP address. Otherwise, this is a secondary IP address.

        ", "Snapshot$Encrypted": "

        Indicates whether the snapshot is encrypted.

        ", "SpotFleetLaunchSpecification$EbsOptimized": "

        Indicates whether the instances are optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

        Default: false

        ", "SpotFleetMonitoring$Enabled": "

        Enables monitoring for the instance.

        Default: false

        ", "SpotFleetRequestConfigData$TerminateInstancesWithExpiration": "

        Indicates whether running Spot instances should be terminated when the Spot fleet request expires.

        ", "StartInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "StopInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "StopInstancesRequest$Force": "

        Forces the instances to stop. The instances do not have an opportunity to flush file system caches or file system metadata. If you use this option, you must perform file system check and repair procedures. This option is not recommended for Windows instances.

        Default: false

        ", "Subnet$DefaultForAz": "

        Indicates whether this is the default subnet for the Availability Zone.

        ", "Subnet$MapPublicIpOnLaunch": "

        Indicates whether instances launched in this subnet receive a public IP address.

        ", "TerminateInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "UnmonitorInstancesRequest$DryRun": "

        Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

        ", "Volume$Encrypted": "

        Indicates whether the volume will be encrypted.

        ", "VolumeAttachment$DeleteOnTermination": "

        Indicates whether the EBS volume is deleted on instance termination.

        ", "Vpc$IsDefault": "

        Indicates whether the VPC is the default VPC.

        ", "VpcClassicLink$ClassicLinkEnabled": "

        Indicates whether the VPC is enabled for ClassicLink.

        ", "VpcPeeringConnectionOptionsDescription$AllowEgressFromLocalClassicLinkToRemoteVpc": "

        Indicates whether a local ClassicLink connection can communicate with the peer VPC over the VPC peering connection.

        ", "VpcPeeringConnectionOptionsDescription$AllowEgressFromLocalVpcToRemoteClassicLink": "

        Indicates whether a local VPC can communicate with a ClassicLink connection in the peer VPC over the VPC peering connection.

        ", "VpcPeeringConnectionOptionsDescription$AllowDnsResolutionFromRemoteVpc": "

        Indicates whether a local VPC can resolve public DNS hostnames to private IP addresses when queried from instances in a peer VPC.

        ", "VpnConnectionOptions$StaticRoutesOnly": "

        Indicates whether the VPN connection uses static routes only. Static routes must be used for devices that don't support BGP.

        ", "VpnConnectionOptionsSpecification$StaticRoutesOnly": "

        Indicates whether the VPN connection uses static routes only. Static routes must be used for devices that don't support BGP.

        " } }, "BundleIdStringList": { "base": null, "refs": { "DescribeBundleTasksRequest$BundleIds": "

        One or more bundle task IDs.

        Default: Describes all your bundle tasks.

        " } }, "BundleInstanceRequest": { "base": "

        Contains the parameters for BundleInstance.

        ", "refs": { } }, "BundleInstanceResult": { "base": "

        Contains the output of BundleInstance.

        ", "refs": { } }, "BundleTask": { "base": "

        Describes a bundle task.

        ", "refs": { "BundleInstanceResult$BundleTask": "

        Information about the bundle task.

        ", "BundleTaskList$member": null, "CancelBundleTaskResult$BundleTask": "

        Information about the bundle task.

        " } }, "BundleTaskError": { "base": "

        Describes an error for BundleInstance.

        ", "refs": { "BundleTask$BundleTaskError": "

        If the task fails, a description of the error.

        " } }, "BundleTaskList": { "base": null, "refs": { "DescribeBundleTasksResult$BundleTasks": "

        Information about one or more bundle tasks.

        " } }, "BundleTaskState": { "base": null, "refs": { "BundleTask$State": "

        The state of the task.

        " } }, "CancelBatchErrorCode": { "base": null, "refs": { "CancelSpotFleetRequestsError$Code": "

        The error code.

        " } }, "CancelBundleTaskRequest": { "base": "

        Contains the parameters for CancelBundleTask.

        ", "refs": { } }, "CancelBundleTaskResult": { "base": "

        Contains the output of CancelBundleTask.

        ", "refs": { } }, "CancelConversionRequest": { "base": "

        Contains the parameters for CancelConversionTask.

        ", "refs": { } }, "CancelExportTaskRequest": { "base": "

        Contains the parameters for CancelExportTask.

        ", "refs": { } }, "CancelImportTaskRequest": { "base": "

        Contains the parameters for CancelImportTask.

        ", "refs": { } }, "CancelImportTaskResult": { "base": "

        Contains the output for CancelImportTask.

        ", "refs": { } }, "CancelReservedInstancesListingRequest": { "base": "

        Contains the parameters for CancelReservedInstancesListing.

        ", "refs": { } }, "CancelReservedInstancesListingResult": { "base": "

        Contains the output of CancelReservedInstancesListing.

        ", "refs": { } }, "CancelSpotFleetRequestsError": { "base": "

        Describes a Spot fleet error.

        ", "refs": { "CancelSpotFleetRequestsErrorItem$Error": "

        The error.

        " } }, "CancelSpotFleetRequestsErrorItem": { "base": "

        Describes a Spot fleet request that was not successfully canceled.

        ", "refs": { "CancelSpotFleetRequestsErrorSet$member": null } }, "CancelSpotFleetRequestsErrorSet": { "base": null, "refs": { "CancelSpotFleetRequestsResponse$UnsuccessfulFleetRequests": "

        Information about the Spot fleet requests that are not successfully canceled.

        " } }, "CancelSpotFleetRequestsRequest": { "base": "

        Contains the parameters for CancelSpotFleetRequests.

        ", "refs": { } }, "CancelSpotFleetRequestsResponse": { "base": "

        Contains the output of CancelSpotFleetRequests.

        ", "refs": { } }, "CancelSpotFleetRequestsSuccessItem": { "base": "

        Describes a Spot fleet request that was successfully canceled.

        ", "refs": { "CancelSpotFleetRequestsSuccessSet$member": null } }, "CancelSpotFleetRequestsSuccessSet": { "base": null, "refs": { "CancelSpotFleetRequestsResponse$SuccessfulFleetRequests": "

        Information about the Spot fleet requests that are successfully canceled.

        " } }, "CancelSpotInstanceRequestState": { "base": null, "refs": { "CancelledSpotInstanceRequest$State": "

        The state of the Spot instance request.

        " } }, "CancelSpotInstanceRequestsRequest": { "base": "

        Contains the parameters for CancelSpotInstanceRequests.

        ", "refs": { } }, "CancelSpotInstanceRequestsResult": { "base": "

        Contains the output of CancelSpotInstanceRequests.

        ", "refs": { } }, "CancelledSpotInstanceRequest": { "base": "

        Describes a request to cancel a Spot instance.

        ", "refs": { "CancelledSpotInstanceRequestList$member": null } }, "CancelledSpotInstanceRequestList": { "base": null, "refs": { "CancelSpotInstanceRequestsResult$CancelledSpotInstanceRequests": "

        One or more Spot instance requests.

        " } }, "ClassicLinkDnsSupport": { "base": "

        Describes the ClassicLink DNS support status of a VPC.

        ", "refs": { "ClassicLinkDnsSupportList$member": null } }, "ClassicLinkDnsSupportList": { "base": null, "refs": { "DescribeVpcClassicLinkDnsSupportResult$Vpcs": "

        Information about the ClassicLink DNS support status of the VPCs.

        " } }, "ClassicLinkInstance": { "base": "

        Describes a linked EC2-Classic instance.

        ", "refs": { "ClassicLinkInstanceList$member": null } }, "ClassicLinkInstanceList": { "base": null, "refs": { "DescribeClassicLinkInstancesResult$Instances": "

        Information about one or more linked EC2-Classic instances.

        " } }, "ClientData": { "base": "

        Describes the client-specific data.

        ", "refs": { "ImportImageRequest$ClientData": "

        The client-specific data.

        ", "ImportSnapshotRequest$ClientData": "

        The client-specific data.

        " } }, "ConfirmProductInstanceRequest": { "base": "

        Contains the parameters for ConfirmProductInstance.

        ", "refs": { } }, "ConfirmProductInstanceResult": { "base": "

        Contains the output of ConfirmProductInstance.

        ", "refs": { } }, "ContainerFormat": { "base": null, "refs": { "ExportToS3Task$ContainerFormat": "

        The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is exported.

        ", "ExportToS3TaskSpecification$ContainerFormat": "

        The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is exported.

        " } }, "ConversionIdStringList": { "base": null, "refs": { "DescribeConversionTasksRequest$ConversionTaskIds": "

        One or more conversion task IDs.

        " } }, "ConversionTask": { "base": "

        Describes a conversion task.

        ", "refs": { "DescribeConversionTaskList$member": null, "ImportInstanceResult$ConversionTask": "

        Information about the conversion task.

        ", "ImportVolumeResult$ConversionTask": "

        Information about the conversion task.

        " } }, "ConversionTaskState": { "base": null, "refs": { "ConversionTask$State": "

        The state of the conversion task.

        " } }, "CopyImageRequest": { "base": "

        Contains the parameters for CopyImage.

        ", "refs": { } }, "CopyImageResult": { "base": "

        Contains the output of CopyImage.

        ", "refs": { } }, "CopySnapshotRequest": { "base": "

        Contains the parameters for CopySnapshot.

        ", "refs": { } }, "CopySnapshotResult": { "base": "

        Contains the output of CopySnapshot.

        ", "refs": { } }, "CreateCustomerGatewayRequest": { "base": "

        Contains the parameters for CreateCustomerGateway.

        ", "refs": { } }, "CreateCustomerGatewayResult": { "base": "

        Contains the output of CreateCustomerGateway.

        ", "refs": { } }, "CreateDhcpOptionsRequest": { "base": "

        Contains the parameters for CreateDhcpOptions.

        ", "refs": { } }, "CreateDhcpOptionsResult": { "base": "

        Contains the output of CreateDhcpOptions.

        ", "refs": { } }, "CreateFlowLogsRequest": { "base": "

        Contains the parameters for CreateFlowLogs.

        ", "refs": { } }, "CreateFlowLogsResult": { "base": "

        Contains the output of CreateFlowLogs.

        ", "refs": { } }, "CreateImageRequest": { "base": "

        Contains the parameters for CreateImage.

        ", "refs": { } }, "CreateImageResult": { "base": "

        Contains the output of CreateImage.

        ", "refs": { } }, "CreateInstanceExportTaskRequest": { "base": "

        Contains the parameters for CreateInstanceExportTask.

        ", "refs": { } }, "CreateInstanceExportTaskResult": { "base": "

        Contains the output for CreateInstanceExportTask.

        ", "refs": { } }, "CreateInternetGatewayRequest": { "base": "

        Contains the parameters for CreateInternetGateway.

        ", "refs": { } }, "CreateInternetGatewayResult": { "base": "

        Contains the output of CreateInternetGateway.

        ", "refs": { } }, "CreateKeyPairRequest": { "base": "

        Contains the parameters for CreateKeyPair.

        ", "refs": { } }, "CreateNatGatewayRequest": { "base": "

        Contains the parameters for CreateNatGateway.

        ", "refs": { } }, "CreateNatGatewayResult": { "base": "

        Contains the output of CreateNatGateway.

        ", "refs": { } }, "CreateNetworkAclEntryRequest": { "base": "

        Contains the parameters for CreateNetworkAclEntry.

        ", "refs": { } }, "CreateNetworkAclRequest": { "base": "

        Contains the parameters for CreateNetworkAcl.

        ", "refs": { } }, "CreateNetworkAclResult": { "base": "

        Contains the output of CreateNetworkAcl.

        ", "refs": { } }, "CreateNetworkInterfaceRequest": { "base": "

        Contains the parameters for CreateNetworkInterface.

        ", "refs": { } }, "CreateNetworkInterfaceResult": { "base": "

        Contains the output of CreateNetworkInterface.

        ", "refs": { } }, "CreatePlacementGroupRequest": { "base": "

        Contains the parameters for CreatePlacementGroup.

        ", "refs": { } }, "CreateReservedInstancesListingRequest": { "base": "

        Contains the parameters for CreateReservedInstancesListing.

        ", "refs": { } }, "CreateReservedInstancesListingResult": { "base": "

        Contains the output of CreateReservedInstancesListing.

        ", "refs": { } }, "CreateRouteRequest": { "base": "

        Contains the parameters for CreateRoute.

        ", "refs": { } }, "CreateRouteResult": { "base": "

        Contains the output of CreateRoute.

        ", "refs": { } }, "CreateRouteTableRequest": { "base": "

        Contains the parameters for CreateRouteTable.

        ", "refs": { } }, "CreateRouteTableResult": { "base": "

        Contains the output of CreateRouteTable.

        ", "refs": { } }, "CreateSecurityGroupRequest": { "base": "

        Contains the parameters for CreateSecurityGroup.

        ", "refs": { } }, "CreateSecurityGroupResult": { "base": "

        Contains the output of CreateSecurityGroup.

        ", "refs": { } }, "CreateSnapshotRequest": { "base": "

        Contains the parameters for CreateSnapshot.

        ", "refs": { } }, "CreateSpotDatafeedSubscriptionRequest": { "base": "

        Contains the parameters for CreateSpotDatafeedSubscription.

        ", "refs": { } }, "CreateSpotDatafeedSubscriptionResult": { "base": "

        Contains the output of CreateSpotDatafeedSubscription.

        ", "refs": { } }, "CreateSubnetRequest": { "base": "

        Contains the parameters for CreateSubnet.

        ", "refs": { } }, "CreateSubnetResult": { "base": "

        Contains the output of CreateSubnet.

        ", "refs": { } }, "CreateTagsRequest": { "base": "

        Contains the parameters for CreateTags.

        ", "refs": { } }, "CreateVolumePermission": { "base": "

        Describes the user or group to be added or removed from the permissions for a volume.

        ", "refs": { "CreateVolumePermissionList$member": null } }, "CreateVolumePermissionList": { "base": null, "refs": { "CreateVolumePermissionModifications$Add": "

        Adds a specific AWS account ID or group to a volume's list of create volume permissions.

        ", "CreateVolumePermissionModifications$Remove": "

        Removes a specific AWS account ID or group from a volume's list of create volume permissions.

        ", "DescribeSnapshotAttributeResult$CreateVolumePermissions": "

        A list of permissions for creating volumes from the snapshot.

        " } }, "CreateVolumePermissionModifications": { "base": "

        Describes modifications to the permissions for a volume.

        ", "refs": { "ModifySnapshotAttributeRequest$CreateVolumePermission": "

        A JSON representation of the snapshot attribute modification.

        " } }, "CreateVolumeRequest": { "base": "

        Contains the parameters for CreateVolume.

        ", "refs": { } }, "CreateVpcEndpointRequest": { "base": "

        Contains the parameters for CreateVpcEndpoint.

        ", "refs": { } }, "CreateVpcEndpointResult": { "base": "

        Contains the output of CreateVpcEndpoint.

        ", "refs": { } }, "CreateVpcPeeringConnectionRequest": { "base": "

        Contains the parameters for CreateVpcPeeringConnection.

        ", "refs": { } }, "CreateVpcPeeringConnectionResult": { "base": "

        Contains the output of CreateVpcPeeringConnection.

        ", "refs": { } }, "CreateVpcRequest": { "base": "

        Contains the parameters for CreateVpc.

        ", "refs": { } }, "CreateVpcResult": { "base": "

        Contains the output of CreateVpc.

        ", "refs": { } }, "CreateVpnConnectionRequest": { "base": "

        Contains the parameters for CreateVpnConnection.

        ", "refs": { } }, "CreateVpnConnectionResult": { "base": "

        Contains the output of CreateVpnConnection.

        ", "refs": { } }, "CreateVpnConnectionRouteRequest": { "base": "

        Contains the parameters for CreateVpnConnectionRoute.

        ", "refs": { } }, "CreateVpnGatewayRequest": { "base": "

        Contains the parameters for CreateVpnGateway.

        ", "refs": { } }, "CreateVpnGatewayResult": { "base": "

        Contains the output of CreateVpnGateway.

        ", "refs": { } }, "CurrencyCodeValues": { "base": null, "refs": { "GetHostReservationPurchasePreviewResult$CurrencyCode": "

        The currency in which the totalUpfrontPrice and totalHourlyPrice amounts are specified. At this time, the only supported currency is USD.

        ", "HostOffering$CurrencyCode": "

        The currency of the offering.

        ", "HostReservation$CurrencyCode": "

        The currency in which the upfrontPrice and hourlyPrice amounts are specified. At this time, the only supported currency is USD.

        ", "PriceSchedule$CurrencyCode": "

        The currency for transacting the Reserved Instance resale. At this time, the only supported currency is USD.

        ", "PriceScheduleSpecification$CurrencyCode": "

        The currency for transacting the Reserved Instance resale. At this time, the only supported currency is USD.

        ", "Purchase$CurrencyCode": "

        The currency in which the UpfrontPrice and HourlyPrice amounts are specified. At this time, the only supported currency is USD.

        ", "PurchaseHostReservationRequest$CurrencyCode": "

        The currency in which the totalUpfrontPrice, LimitPrice, and totalHourlyPrice amounts are specified. At this time, the only supported currency is USD.

        ", "PurchaseHostReservationResult$CurrencyCode": "

        The currency in which the totalUpfrontPrice and totalHourlyPrice amounts are specified. At this time, the only supported currency is USD.

        ", "ReservedInstanceLimitPrice$CurrencyCode": "

        The currency in which the limitPrice amount is specified. At this time, the only supported currency is USD.

        ", "ReservedInstances$CurrencyCode": "

        The currency of the Reserved Instance. It's specified using ISO 4217 standard currency codes. At this time, the only supported currency is USD.

        ", "ReservedInstancesOffering$CurrencyCode": "

        The currency of the Reserved Instance offering you are purchasing. It's specified using ISO 4217 standard currency codes. At this time, the only supported currency is USD.

        " } }, "CustomerGateway": { "base": "

        Describes a customer gateway.

        ", "refs": { "CreateCustomerGatewayResult$CustomerGateway": "

        Information about the customer gateway.

        ", "CustomerGatewayList$member": null } }, "CustomerGatewayIdStringList": { "base": null, "refs": { "DescribeCustomerGatewaysRequest$CustomerGatewayIds": "

        One or more customer gateway IDs.

        Default: Describes all your customer gateways.

        " } }, "CustomerGatewayList": { "base": null, "refs": { "DescribeCustomerGatewaysResult$CustomerGateways": "

        Information about one or more customer gateways.

        " } }, "DatafeedSubscriptionState": { "base": null, "refs": { "SpotDatafeedSubscription$State": "

        The state of the Spot instance data feed subscription.

        " } }, "DateTime": { "base": null, "refs": { "BundleTask$StartTime": "

        The time this task started.

        ", "BundleTask$UpdateTime": "

        The time of the most recent update for the task.

        ", "ClientData$UploadStart": "

        The time that the disk upload starts.

        ", "ClientData$UploadEnd": "

        The time that the disk upload ends.

        ", "DescribeSpotFleetRequestHistoryRequest$StartTime": "

        The starting date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "DescribeSpotFleetRequestHistoryResponse$StartTime": "

        The starting date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "DescribeSpotFleetRequestHistoryResponse$LastEvaluatedTime": "

        The last date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). All records up to this time were retrieved.

        If nextToken indicates that there are more results, this value is not present.

        ", "DescribeSpotPriceHistoryRequest$StartTime": "

        The date and time, up to the past 90 days, from which to start retrieving the price history data, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "DescribeSpotPriceHistoryRequest$EndTime": "

        The date and time, up to the current date, from which to stop retrieving the price history data, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "EbsInstanceBlockDevice$AttachTime": "

        The time stamp when the attachment initiated.

        ", "FlowLog$CreationTime": "

        The date and time the flow log was created.

        ", "GetConsoleOutputResult$Timestamp": "

        The time the output was last updated.

        ", "GetPasswordDataResult$Timestamp": "

        The time the data was last updated.

        ", "GetReservedInstancesExchangeQuoteResult$OutputReservedInstancesWillExpireAt": "

        The new end date of the reservation term.

        ", "HistoryRecord$Timestamp": "

        The date and time of the event, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "HostReservation$End": "

        The date and time that the reservation ends.

        ", "HostReservation$Start": "

        The date and time that the reservation started.

        ", "IdFormat$Deadline": "

        The date in UTC at which you are permanently switched over to using longer IDs. If a deadline is not yet available for this resource type, this field is not returned.

        ", "Instance$LaunchTime": "

        The time the instance was launched.

        ", "InstanceNetworkInterfaceAttachment$AttachTime": "

        The time stamp when the attachment initiated.

        ", "InstanceStatusDetails$ImpairedSince": "

        The time when a status check failed. For an instance that was launched and impaired, this is the time when the instance was launched.

        ", "InstanceStatusEvent$NotBefore": "

        The earliest scheduled start time for the event.

        ", "InstanceStatusEvent$NotAfter": "

        The latest scheduled end time for the event.

        ", "NatGateway$CreateTime": "

        The date and time the NAT gateway was created.

        ", "NatGateway$DeleteTime": "

        The date and time the NAT gateway was deleted, if applicable.

        ", "NetworkInterfaceAttachment$AttachTime": "

        The timestamp indicating when the attachment initiated.

        ", "ProvisionedBandwidth$RequestTime": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        ", "ProvisionedBandwidth$ProvisionTime": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        ", "ReportInstanceStatusRequest$StartTime": "

        The time at which the reported instance health state began.

        ", "ReportInstanceStatusRequest$EndTime": "

        The time at which the reported instance health state ended.

        ", "RequestSpotInstancesRequest$ValidFrom": "

        The start date of the request. If this is a one-time request, the request becomes active at this date and time and remains active until all instances launch, the request expires, or the request is canceled. If the request is persistent, the request becomes active at this date and time and remains active until it expires or is canceled.

        Default: The request is effective indefinitely.

        ", "RequestSpotInstancesRequest$ValidUntil": "

        The end date of the request. If this is a one-time request, the request remains active until all instances launch, the request is canceled, or this date is reached. If the request is persistent, it remains active until it is canceled or this date and time is reached.

        Default: The request is effective indefinitely.

        ", "ReservedInstances$Start": "

        The date and time the Reserved Instance started.

        ", "ReservedInstances$End": "

        The time when the Reserved Instance expires.

        ", "ReservedInstancesListing$CreateDate": "

        The time the listing was created.

        ", "ReservedInstancesListing$UpdateDate": "

        The last modified timestamp of the listing.

        ", "ReservedInstancesModification$CreateDate": "

        The time when the modification request was created.

        ", "ReservedInstancesModification$UpdateDate": "

        The time when the modification request was last updated.

        ", "ReservedInstancesModification$EffectiveDate": "

        The time for the modification to become effective.

        ", "ScheduledInstance$PreviousSlotEndTime": "

        The time that the previous schedule ended or will end.

        ", "ScheduledInstance$NextSlotStartTime": "

        The time for the next schedule to start.

        ", "ScheduledInstance$TermStartDate": "

        The start date for the Scheduled Instance.

        ", "ScheduledInstance$TermEndDate": "

        The end date for the Scheduled Instance.

        ", "ScheduledInstance$CreateDate": "

        The date when the Scheduled Instance was purchased.

        ", "ScheduledInstanceAvailability$FirstSlotStartTime": "

        The time period for the first schedule to start.

        ", "SlotDateTimeRangeRequest$EarliestTime": "

        The earliest date and time, in UTC, for the Scheduled Instance to start.

        ", "SlotDateTimeRangeRequest$LatestTime": "

        The latest date and time, in UTC, for the Scheduled Instance to start. This value must be later than or equal to the earliest date and at most three months in the future.

        ", "SlotStartTimeRangeRequest$EarliestTime": "

        The earliest date and time, in UTC, for the Scheduled Instance to start.

        ", "SlotStartTimeRangeRequest$LatestTime": "

        The latest date and time, in UTC, for the Scheduled Instance to start.

        ", "Snapshot$StartTime": "

        The time stamp when the snapshot was initiated.

        ", "SpotFleetRequestConfig$CreateTime": "

        The creation date and time of the request.

        ", "SpotFleetRequestConfigData$ValidFrom": "

        The start date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.

        ", "SpotFleetRequestConfigData$ValidUntil": "

        The end date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request.

        ", "SpotInstanceRequest$ValidFrom": "

        The start date of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). The request becomes active at this date and time.

        ", "SpotInstanceRequest$ValidUntil": "

        The end date of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). If this is a one-time request, it remains active until all instances launch, the request is canceled, or this date is reached. If the request is persistent, it remains active until it is canceled or this date is reached.

        ", "SpotInstanceRequest$CreateTime": "

        The date and time when the Spot instance request was created, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "SpotInstanceStatus$UpdateTime": "

        The date and time of the most recent status update, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "SpotPrice$Timestamp": "

        The date and time the request was created, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

        ", "VgwTelemetry$LastStatusChange": "

        The date and time of the last change in status.

        ", "Volume$CreateTime": "

        The time stamp when volume creation was initiated.

        ", "VolumeAttachment$AttachTime": "

        The time stamp when the attachment initiated.

        ", "VolumeStatusEvent$NotBefore": "

        The earliest start time of the event.

        ", "VolumeStatusEvent$NotAfter": "

        The latest end time of the event.

        ", "VpcEndpoint$CreationTimestamp": "

        The date and time the VPC endpoint was created.

        ", "VpcPeeringConnection$ExpirationTime": "

        The time that an unaccepted VPC peering connection will expire.

        " } }, "DeleteCustomerGatewayRequest": { "base": "

        Contains the parameters for DeleteCustomerGateway.

        ", "refs": { } }, "DeleteDhcpOptionsRequest": { "base": "

        Contains the parameters for DeleteDhcpOptions.

        ", "refs": { } }, "DeleteFlowLogsRequest": { "base": "

        Contains the parameters for DeleteFlowLogs.

        ", "refs": { } }, "DeleteFlowLogsResult": { "base": "

        Contains the output of DeleteFlowLogs.

        ", "refs": { } }, "DeleteInternetGatewayRequest": { "base": "

        Contains the parameters for DeleteInternetGateway.

        ", "refs": { } }, "DeleteKeyPairRequest": { "base": "

        Contains the parameters for DeleteKeyPair.

        ", "refs": { } }, "DeleteNatGatewayRequest": { "base": "

        Contains the parameters for DeleteNatGateway.

        ", "refs": { } }, "DeleteNatGatewayResult": { "base": "

        Contains the output of DeleteNatGateway.

        ", "refs": { } }, "DeleteNetworkAclEntryRequest": { "base": "

        Contains the parameters for DeleteNetworkAclEntry.

        ", "refs": { } }, "DeleteNetworkAclRequest": { "base": "

        Contains the parameters for DeleteNetworkAcl.

        ", "refs": { } }, "DeleteNetworkInterfaceRequest": { "base": "

        Contains the parameters for DeleteNetworkInterface.

        ", "refs": { } }, "DeletePlacementGroupRequest": { "base": "

        Contains the parameters for DeletePlacementGroup.

        ", "refs": { } }, "DeleteRouteRequest": { "base": "

        Contains the parameters for DeleteRoute.

        ", "refs": { } }, "DeleteRouteTableRequest": { "base": "

        Contains the parameters for DeleteRouteTable.

        ", "refs": { } }, "DeleteSecurityGroupRequest": { "base": "

        Contains the parameters for DeleteSecurityGroup.

        ", "refs": { } }, "DeleteSnapshotRequest": { "base": "

        Contains the parameters for DeleteSnapshot.

        ", "refs": { } }, "DeleteSpotDatafeedSubscriptionRequest": { "base": "

        Contains the parameters for DeleteSpotDatafeedSubscription.

        ", "refs": { } }, "DeleteSubnetRequest": { "base": "

        Contains the parameters for DeleteSubnet.

        ", "refs": { } }, "DeleteTagsRequest": { "base": "

        Contains the parameters for DeleteTags.

        ", "refs": { } }, "DeleteVolumeRequest": { "base": "

        Contains the parameters for DeleteVolume.

        ", "refs": { } }, "DeleteVpcEndpointsRequest": { "base": "

        Contains the parameters for DeleteVpcEndpoints.

        ", "refs": { } }, "DeleteVpcEndpointsResult": { "base": "

        Contains the output of DeleteVpcEndpoints.

        ", "refs": { } }, "DeleteVpcPeeringConnectionRequest": { "base": "

        Contains the parameters for DeleteVpcPeeringConnection.

        ", "refs": { } }, "DeleteVpcPeeringConnectionResult": { "base": "

        Contains the output of DeleteVpcPeeringConnection.

        ", "refs": { } }, "DeleteVpcRequest": { "base": "

        Contains the parameters for DeleteVpc.

        ", "refs": { } }, "DeleteVpnConnectionRequest": { "base": "

        Contains the parameters for DeleteVpnConnection.

        ", "refs": { } }, "DeleteVpnConnectionRouteRequest": { "base": "

        Contains the parameters for DeleteVpnConnectionRoute.

        ", "refs": { } }, "DeleteVpnGatewayRequest": { "base": "

        Contains the parameters for DeleteVpnGateway.

        ", "refs": { } }, "DeregisterImageRequest": { "base": "

        Contains the parameters for DeregisterImage.

        ", "refs": { } }, "DescribeAccountAttributesRequest": { "base": "

        Contains the parameters for DescribeAccountAttributes.

        ", "refs": { } }, "DescribeAccountAttributesResult": { "base": "

        Contains the output of DescribeAccountAttributes.

        ", "refs": { } }, "DescribeAddressesRequest": { "base": "

        Contains the parameters for DescribeAddresses.

        ", "refs": { } }, "DescribeAddressesResult": { "base": "

        Contains the output of DescribeAddresses.

        ", "refs": { } }, "DescribeAvailabilityZonesRequest": { "base": "

        Contains the parameters for DescribeAvailabilityZones.

        ", "refs": { } }, "DescribeAvailabilityZonesResult": { "base": "

        Contains the output of DescribeAvailabiltyZones.

        ", "refs": { } }, "DescribeBundleTasksRequest": { "base": "

        Contains the parameters for DescribeBundleTasks.

        ", "refs": { } }, "DescribeBundleTasksResult": { "base": "

        Contains the output of DescribeBundleTasks.

        ", "refs": { } }, "DescribeClassicLinkInstancesRequest": { "base": "

        Contains the parameters for DescribeClassicLinkInstances.

        ", "refs": { } }, "DescribeClassicLinkInstancesResult": { "base": "

        Contains the output of DescribeClassicLinkInstances.

        ", "refs": { } }, "DescribeConversionTaskList": { "base": null, "refs": { "DescribeConversionTasksResult$ConversionTasks": "

        Information about the conversion tasks.

        " } }, "DescribeConversionTasksRequest": { "base": "

        Contains the parameters for DescribeConversionTasks.

        ", "refs": { } }, "DescribeConversionTasksResult": { "base": "

        Contains the output for DescribeConversionTasks.

        ", "refs": { } }, "DescribeCustomerGatewaysRequest": { "base": "

        Contains the parameters for DescribeCustomerGateways.

        ", "refs": { } }, "DescribeCustomerGatewaysResult": { "base": "

        Contains the output of DescribeCustomerGateways.

        ", "refs": { } }, "DescribeDhcpOptionsRequest": { "base": "

        Contains the parameters for DescribeDhcpOptions.

        ", "refs": { } }, "DescribeDhcpOptionsResult": { "base": "

        Contains the output of DescribeDhcpOptions.

        ", "refs": { } }, "DescribeExportTasksRequest": { "base": "

        Contains the parameters for DescribeExportTasks.

        ", "refs": { } }, "DescribeExportTasksResult": { "base": "

        Contains the output for DescribeExportTasks.

        ", "refs": { } }, "DescribeFlowLogsRequest": { "base": "

        Contains the parameters for DescribeFlowLogs.

        ", "refs": { } }, "DescribeFlowLogsResult": { "base": "

        Contains the output of DescribeFlowLogs.

        ", "refs": { } }, "DescribeHostReservationOfferingsRequest": { "base": null, "refs": { } }, "DescribeHostReservationOfferingsResult": { "base": null, "refs": { } }, "DescribeHostReservationsRequest": { "base": null, "refs": { } }, "DescribeHostReservationsResult": { "base": null, "refs": { } }, "DescribeHostsRequest": { "base": "

        Contains the parameters for DescribeHosts.

        ", "refs": { } }, "DescribeHostsResult": { "base": "

        Contains the output of DescribeHosts.

        ", "refs": { } }, "DescribeIdFormatRequest": { "base": "

        Contains the parameters for DescribeIdFormat.

        ", "refs": { } }, "DescribeIdFormatResult": { "base": "

        Contains the output of DescribeIdFormat.

        ", "refs": { } }, "DescribeIdentityIdFormatRequest": { "base": "

        Contains the parameters for DescribeIdentityIdFormat.

        ", "refs": { } }, "DescribeIdentityIdFormatResult": { "base": "

        Contains the output of DescribeIdentityIdFormat.

        ", "refs": { } }, "DescribeImageAttributeRequest": { "base": "

        Contains the parameters for DescribeImageAttribute.

        ", "refs": { } }, "DescribeImagesRequest": { "base": "

        Contains the parameters for DescribeImages.

        ", "refs": { } }, "DescribeImagesResult": { "base": "

        Contains the output of DescribeImages.

        ", "refs": { } }, "DescribeImportImageTasksRequest": { "base": "

        Contains the parameters for DescribeImportImageTasks.

        ", "refs": { } }, "DescribeImportImageTasksResult": { "base": "

        Contains the output for DescribeImportImageTasks.

        ", "refs": { } }, "DescribeImportSnapshotTasksRequest": { "base": "

        Contains the parameters for DescribeImportSnapshotTasks.

        ", "refs": { } }, "DescribeImportSnapshotTasksResult": { "base": "

        Contains the output for DescribeImportSnapshotTasks.

        ", "refs": { } }, "DescribeInstanceAttributeRequest": { "base": "

        Contains the parameters for DescribeInstanceAttribute.

        ", "refs": { } }, "DescribeInstanceStatusRequest": { "base": "

        Contains the parameters for DescribeInstanceStatus.

        ", "refs": { } }, "DescribeInstanceStatusResult": { "base": "

        Contains the output of DescribeInstanceStatus.

        ", "refs": { } }, "DescribeInstancesRequest": { "base": "

        Contains the parameters for DescribeInstances.

        ", "refs": { } }, "DescribeInstancesResult": { "base": "

        Contains the output of DescribeInstances.

        ", "refs": { } }, "DescribeInternetGatewaysRequest": { "base": "

        Contains the parameters for DescribeInternetGateways.

        ", "refs": { } }, "DescribeInternetGatewaysResult": { "base": "

        Contains the output of DescribeInternetGateways.

        ", "refs": { } }, "DescribeKeyPairsRequest": { "base": "

        Contains the parameters for DescribeKeyPairs.

        ", "refs": { } }, "DescribeKeyPairsResult": { "base": "

        Contains the output of DescribeKeyPairs.

        ", "refs": { } }, "DescribeMovingAddressesRequest": { "base": "

        Contains the parameters for DescribeMovingAddresses.

        ", "refs": { } }, "DescribeMovingAddressesResult": { "base": "

        Contains the output of DescribeMovingAddresses.

        ", "refs": { } }, "DescribeNatGatewaysRequest": { "base": "

        Contains the parameters for DescribeNatGateways.

        ", "refs": { } }, "DescribeNatGatewaysResult": { "base": "

        Contains the output of DescribeNatGateways.

        ", "refs": { } }, "DescribeNetworkAclsRequest": { "base": "

        Contains the parameters for DescribeNetworkAcls.

        ", "refs": { } }, "DescribeNetworkAclsResult": { "base": "

        Contains the output of DescribeNetworkAcls.

        ", "refs": { } }, "DescribeNetworkInterfaceAttributeRequest": { "base": "

        Contains the parameters for DescribeNetworkInterfaceAttribute.

        ", "refs": { } }, "DescribeNetworkInterfaceAttributeResult": { "base": "

        Contains the output of DescribeNetworkInterfaceAttribute.

        ", "refs": { } }, "DescribeNetworkInterfacesRequest": { "base": "

        Contains the parameters for DescribeNetworkInterfaces.

        ", "refs": { } }, "DescribeNetworkInterfacesResult": { "base": "

        Contains the output of DescribeNetworkInterfaces.

        ", "refs": { } }, "DescribePlacementGroupsRequest": { "base": "

        Contains the parameters for DescribePlacementGroups.

        ", "refs": { } }, "DescribePlacementGroupsResult": { "base": "

        Contains the output of DescribePlacementGroups.

        ", "refs": { } }, "DescribePrefixListsRequest": { "base": "

        Contains the parameters for DescribePrefixLists.

        ", "refs": { } }, "DescribePrefixListsResult": { "base": "

        Contains the output of DescribePrefixLists.

        ", "refs": { } }, "DescribeRegionsRequest": { "base": "

        Contains the parameters for DescribeRegions.

        ", "refs": { } }, "DescribeRegionsResult": { "base": "

        Contains the output of DescribeRegions.

        ", "refs": { } }, "DescribeReservedInstancesListingsRequest": { "base": "

        Contains the parameters for DescribeReservedInstancesListings.

        ", "refs": { } }, "DescribeReservedInstancesListingsResult": { "base": "

        Contains the output of DescribeReservedInstancesListings.

        ", "refs": { } }, "DescribeReservedInstancesModificationsRequest": { "base": "

        Contains the parameters for DescribeReservedInstancesModifications.

        ", "refs": { } }, "DescribeReservedInstancesModificationsResult": { "base": "

        Contains the output of DescribeReservedInstancesModifications.

        ", "refs": { } }, "DescribeReservedInstancesOfferingsRequest": { "base": "

        Contains the parameters for DescribeReservedInstancesOfferings.

        ", "refs": { } }, "DescribeReservedInstancesOfferingsResult": { "base": "

        Contains the output of DescribeReservedInstancesOfferings.

        ", "refs": { } }, "DescribeReservedInstancesRequest": { "base": "

        Contains the parameters for DescribeReservedInstances.

        ", "refs": { } }, "DescribeReservedInstancesResult": { "base": "

        Contains the output for DescribeReservedInstances.

        ", "refs": { } }, "DescribeRouteTablesRequest": { "base": "

        Contains the parameters for DescribeRouteTables.

        ", "refs": { } }, "DescribeRouteTablesResult": { "base": "

        Contains the output of DescribeRouteTables.

        ", "refs": { } }, "DescribeScheduledInstanceAvailabilityRequest": { "base": "

        Contains the parameters for DescribeScheduledInstanceAvailability.

        ", "refs": { } }, "DescribeScheduledInstanceAvailabilityResult": { "base": "

        Contains the output of DescribeScheduledInstanceAvailability.

        ", "refs": { } }, "DescribeScheduledInstancesRequest": { "base": "

        Contains the parameters for DescribeScheduledInstances.

        ", "refs": { } }, "DescribeScheduledInstancesResult": { "base": "

        Contains the output of DescribeScheduledInstances.

        ", "refs": { } }, "DescribeSecurityGroupReferencesRequest": { "base": null, "refs": { } }, "DescribeSecurityGroupReferencesResult": { "base": null, "refs": { } }, "DescribeSecurityGroupsRequest": { "base": "

        Contains the parameters for DescribeSecurityGroups.

        ", "refs": { } }, "DescribeSecurityGroupsResult": { "base": "

        Contains the output of DescribeSecurityGroups.

        ", "refs": { } }, "DescribeSnapshotAttributeRequest": { "base": "

        Contains the parameters for DescribeSnapshotAttribute.

        ", "refs": { } }, "DescribeSnapshotAttributeResult": { "base": "

        Contains the output of DescribeSnapshotAttribute.

        ", "refs": { } }, "DescribeSnapshotsRequest": { "base": "

        Contains the parameters for DescribeSnapshots.

        ", "refs": { } }, "DescribeSnapshotsResult": { "base": "

        Contains the output of DescribeSnapshots.

        ", "refs": { } }, "DescribeSpotDatafeedSubscriptionRequest": { "base": "

        Contains the parameters for DescribeSpotDatafeedSubscription.

        ", "refs": { } }, "DescribeSpotDatafeedSubscriptionResult": { "base": "

        Contains the output of DescribeSpotDatafeedSubscription.

        ", "refs": { } }, "DescribeSpotFleetInstancesRequest": { "base": "

        Contains the parameters for DescribeSpotFleetInstances.

        ", "refs": { } }, "DescribeSpotFleetInstancesResponse": { "base": "

        Contains the output of DescribeSpotFleetInstances.

        ", "refs": { } }, "DescribeSpotFleetRequestHistoryRequest": { "base": "

        Contains the parameters for DescribeSpotFleetRequestHistory.

        ", "refs": { } }, "DescribeSpotFleetRequestHistoryResponse": { "base": "

        Contains the output of DescribeSpotFleetRequestHistory.

        ", "refs": { } }, "DescribeSpotFleetRequestsRequest": { "base": "

        Contains the parameters for DescribeSpotFleetRequests.

        ", "refs": { } }, "DescribeSpotFleetRequestsResponse": { "base": "

        Contains the output of DescribeSpotFleetRequests.

        ", "refs": { } }, "DescribeSpotInstanceRequestsRequest": { "base": "

        Contains the parameters for DescribeSpotInstanceRequests.

        ", "refs": { } }, "DescribeSpotInstanceRequestsResult": { "base": "

        Contains the output of DescribeSpotInstanceRequests.

        ", "refs": { } }, "DescribeSpotPriceHistoryRequest": { "base": "

        Contains the parameters for DescribeSpotPriceHistory.

        ", "refs": { } }, "DescribeSpotPriceHistoryResult": { "base": "

        Contains the output of DescribeSpotPriceHistory.

        ", "refs": { } }, "DescribeStaleSecurityGroupsRequest": { "base": null, "refs": { } }, "DescribeStaleSecurityGroupsResult": { "base": null, "refs": { } }, "DescribeSubnetsRequest": { "base": "

        Contains the parameters for DescribeSubnets.

        ", "refs": { } }, "DescribeSubnetsResult": { "base": "

        Contains the output of DescribeSubnets.

        ", "refs": { } }, "DescribeTagsRequest": { "base": "

        Contains the parameters for DescribeTags.

        ", "refs": { } }, "DescribeTagsResult": { "base": "

        Contains the output of DescribeTags.

        ", "refs": { } }, "DescribeVolumeAttributeRequest": { "base": "

        Contains the parameters for DescribeVolumeAttribute.

        ", "refs": { } }, "DescribeVolumeAttributeResult": { "base": "

        Contains the output of DescribeVolumeAttribute.

        ", "refs": { } }, "DescribeVolumeStatusRequest": { "base": "

        Contains the parameters for DescribeVolumeStatus.

        ", "refs": { } }, "DescribeVolumeStatusResult": { "base": "

        Contains the output of DescribeVolumeStatus.

        ", "refs": { } }, "DescribeVolumesRequest": { "base": "

        Contains the parameters for DescribeVolumes.

        ", "refs": { } }, "DescribeVolumesResult": { "base": "

        Contains the output of DescribeVolumes.

        ", "refs": { } }, "DescribeVpcAttributeRequest": { "base": "

        Contains the parameters for DescribeVpcAttribute.

        ", "refs": { } }, "DescribeVpcAttributeResult": { "base": "

        Contains the output of DescribeVpcAttribute.

        ", "refs": { } }, "DescribeVpcClassicLinkDnsSupportRequest": { "base": "

        Contains the parameters for DescribeVpcClassicLinkDnsSupport.

        ", "refs": { } }, "DescribeVpcClassicLinkDnsSupportResult": { "base": "

        Contains the output of DescribeVpcClassicLinkDnsSupport.

        ", "refs": { } }, "DescribeVpcClassicLinkRequest": { "base": "

        Contains the parameters for DescribeVpcClassicLink.

        ", "refs": { } }, "DescribeVpcClassicLinkResult": { "base": "

        Contains the output of DescribeVpcClassicLink.

        ", "refs": { } }, "DescribeVpcEndpointServicesRequest": { "base": "

        Contains the parameters for DescribeVpcEndpointServices.

        ", "refs": { } }, "DescribeVpcEndpointServicesResult": { "base": "

        Contains the output of DescribeVpcEndpointServices.

        ", "refs": { } }, "DescribeVpcEndpointsRequest": { "base": "

        Contains the parameters for DescribeVpcEndpoints.

        ", "refs": { } }, "DescribeVpcEndpointsResult": { "base": "

        Contains the output of DescribeVpcEndpoints.

        ", "refs": { } }, "DescribeVpcPeeringConnectionsRequest": { "base": "

        Contains the parameters for DescribeVpcPeeringConnections.

        ", "refs": { } }, "DescribeVpcPeeringConnectionsResult": { "base": "

        Contains the output of DescribeVpcPeeringConnections.

        ", "refs": { } }, "DescribeVpcsRequest": { "base": "

        Contains the parameters for DescribeVpcs.

        ", "refs": { } }, "DescribeVpcsResult": { "base": "

        Contains the output of DescribeVpcs.

        ", "refs": { } }, "DescribeVpnConnectionsRequest": { "base": "

        Contains the parameters for DescribeVpnConnections.

        ", "refs": { } }, "DescribeVpnConnectionsResult": { "base": "

        Contains the output of DescribeVpnConnections.

        ", "refs": { } }, "DescribeVpnGatewaysRequest": { "base": "

        Contains the parameters for DescribeVpnGateways.

        ", "refs": { } }, "DescribeVpnGatewaysResult": { "base": "

        Contains the output of DescribeVpnGateways.

        ", "refs": { } }, "DetachClassicLinkVpcRequest": { "base": "

        Contains the parameters for DetachClassicLinkVpc.

        ", "refs": { } }, "DetachClassicLinkVpcResult": { "base": "

        Contains the output of DetachClassicLinkVpc.

        ", "refs": { } }, "DetachInternetGatewayRequest": { "base": "

        Contains the parameters for DetachInternetGateway.

        ", "refs": { } }, "DetachNetworkInterfaceRequest": { "base": "

        Contains the parameters for DetachNetworkInterface.

        ", "refs": { } }, "DetachVolumeRequest": { "base": "

        Contains the parameters for DetachVolume.

        ", "refs": { } }, "DetachVpnGatewayRequest": { "base": "

        Contains the parameters for DetachVpnGateway.

        ", "refs": { } }, "DeviceType": { "base": null, "refs": { "Image$RootDeviceType": "

        The type of root device used by the AMI. The AMI can use an EBS volume or an instance store volume.

        ", "Instance$RootDeviceType": "

        The root device type used by the AMI. The AMI can use an EBS volume or an instance store volume.

        " } }, "DhcpConfiguration": { "base": "

        Describes a DHCP configuration option.

        ", "refs": { "DhcpConfigurationList$member": null } }, "DhcpConfigurationList": { "base": null, "refs": { "DhcpOptions$DhcpConfigurations": "

        One or more DHCP options in the set.

        " } }, "DhcpConfigurationValueList": { "base": null, "refs": { "DhcpConfiguration$Values": "

        One or more values for the DHCP option.

        " } }, "DhcpOptions": { "base": "

        Describes a set of DHCP options.

        ", "refs": { "CreateDhcpOptionsResult$DhcpOptions": "

        A set of DHCP options.

        ", "DhcpOptionsList$member": null } }, "DhcpOptionsIdStringList": { "base": null, "refs": { "DescribeDhcpOptionsRequest$DhcpOptionsIds": "

        The IDs of one or more DHCP options sets.

        Default: Describes all your DHCP options sets.

        " } }, "DhcpOptionsList": { "base": null, "refs": { "DescribeDhcpOptionsResult$DhcpOptions": "

        Information about one or more DHCP options sets.

        " } }, "DisableVgwRoutePropagationRequest": { "base": "

        Contains the parameters for DisableVgwRoutePropagation.

        ", "refs": { } }, "DisableVpcClassicLinkDnsSupportRequest": { "base": "

        Contains the parameters for DisableVpcClassicLinkDnsSupport.

        ", "refs": { } }, "DisableVpcClassicLinkDnsSupportResult": { "base": "

        Contains the output of DisableVpcClassicLinkDnsSupport.

        ", "refs": { } }, "DisableVpcClassicLinkRequest": { "base": "

        Contains the parameters for DisableVpcClassicLink.

        ", "refs": { } }, "DisableVpcClassicLinkResult": { "base": "

        Contains the output of DisableVpcClassicLink.

        ", "refs": { } }, "DisassociateAddressRequest": { "base": "

        Contains the parameters for DisassociateAddress.

        ", "refs": { } }, "DisassociateRouteTableRequest": { "base": "

        Contains the parameters for DisassociateRouteTable.

        ", "refs": { } }, "DiskImage": { "base": "

        Describes a disk image.

        ", "refs": { "DiskImageList$member": null } }, "DiskImageDescription": { "base": "

        Describes a disk image.

        ", "refs": { "ImportInstanceVolumeDetailItem$Image": "

        The image.

        ", "ImportVolumeTaskDetails$Image": "

        The image.

        " } }, "DiskImageDetail": { "base": "

        Describes a disk image.

        ", "refs": { "DiskImage$Image": "

        Information about the disk image.

        ", "ImportVolumeRequest$Image": "

        The disk image.

        " } }, "DiskImageFormat": { "base": null, "refs": { "DiskImageDescription$Format": "

        The disk image format.

        ", "DiskImageDetail$Format": "

        The disk image format.

        ", "ExportToS3Task$DiskImageFormat": "

        The format for the exported image.

        ", "ExportToS3TaskSpecification$DiskImageFormat": "

        The format for the exported image.

        " } }, "DiskImageList": { "base": null, "refs": { "ImportInstanceRequest$DiskImages": "

        The disk image.

        " } }, "DiskImageVolumeDescription": { "base": "

        Describes a disk image volume.

        ", "refs": { "ImportInstanceVolumeDetailItem$Volume": "

        The volume.

        ", "ImportVolumeTaskDetails$Volume": "

        The volume.

        " } }, "DomainType": { "base": null, "refs": { "Address$Domain": "

        Indicates whether this Elastic IP address is for use with instances in EC2-Classic (standard) or instances in a VPC (vpc).

        ", "AllocateAddressRequest$Domain": "

        Set to vpc to allocate the address for use with instances in a VPC.

        Default: The address is for use with instances in EC2-Classic.

        ", "AllocateAddressResult$Domain": "

        Indicates whether this Elastic IP address is for use with instances in EC2-Classic (standard) or instances in a VPC (vpc).

        " } }, "Double": { "base": null, "refs": { "ClientData$UploadSize": "

        The size of the uploaded disk image, in GiB.

        ", "PriceSchedule$Price": "

        The fixed price for the term.

        ", "PriceScheduleSpecification$Price": "

        The fixed price for the term.

        ", "PricingDetail$Price": "

        The price per instance.

        ", "RecurringCharge$Amount": "

        The amount of the recurring charge.

        ", "ReservedInstanceLimitPrice$Amount": "

        Used for Reserved Instance Marketplace offerings. Specifies the limit price on the total order (instanceCount * price).

        ", "SnapshotDetail$DiskImageSize": "

        The size of the disk in the snapshot, in GiB.

        ", "SnapshotTaskDetail$DiskImageSize": "

        The size of the disk in the snapshot, in GiB.

        ", "SpotFleetLaunchSpecification$WeightedCapacity": "

        The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms (instances or a performance characteristic such as vCPUs, memory, or I/O).

        If the target capacity divided by this value is not a whole number, we round the number of instances to the next whole number. If this value is not specified, the default is 1.

        ", "SpotFleetRequestConfigData$FulfilledCapacity": "

        The number of units fulfilled by this request compared to the set target capacity.

        " } }, "EbsBlockDevice": { "base": "

        Describes a block device for an EBS volume.

        ", "refs": { "BlockDeviceMapping$Ebs": "

        Parameters used to automatically set up EBS volumes when the instance is launched.

        " } }, "EbsInstanceBlockDevice": { "base": "

        Describes a parameter used to set up an EBS volume in a block device mapping.

        ", "refs": { "InstanceBlockDeviceMapping$Ebs": "

        Parameters used to automatically set up EBS volumes when the instance is launched.

        " } }, "EbsInstanceBlockDeviceSpecification": { "base": "

        Describes information used to set up an EBS volume specified in a block device mapping.

        ", "refs": { "InstanceBlockDeviceMappingSpecification$Ebs": "

        Parameters used to automatically set up EBS volumes when the instance is launched.

        " } }, "EnableVgwRoutePropagationRequest": { "base": "

        Contains the parameters for EnableVgwRoutePropagation.

        ", "refs": { } }, "EnableVolumeIORequest": { "base": "

        Contains the parameters for EnableVolumeIO.

        ", "refs": { } }, "EnableVpcClassicLinkDnsSupportRequest": { "base": "

        Contains the parameters for EnableVpcClassicLinkDnsSupport.

        ", "refs": { } }, "EnableVpcClassicLinkDnsSupportResult": { "base": "

        Contains the output of EnableVpcClassicLinkDnsSupport.

        ", "refs": { } }, "EnableVpcClassicLinkRequest": { "base": "

        Contains the parameters for EnableVpcClassicLink.

        ", "refs": { } }, "EnableVpcClassicLinkResult": { "base": "

        Contains the output of EnableVpcClassicLink.

        ", "refs": { } }, "EventCode": { "base": null, "refs": { "InstanceStatusEvent$Code": "

        The event code.

        " } }, "EventInformation": { "base": "

        Describes a Spot fleet event.

        ", "refs": { "HistoryRecord$EventInformation": "

        Information about the event.

        " } }, "EventType": { "base": null, "refs": { "DescribeSpotFleetRequestHistoryRequest$EventType": "

        The type of events to describe. By default, all events are described.

        ", "HistoryRecord$EventType": "

        The event type.

        • error - Indicates an error with the Spot fleet request.

        • fleetRequestChange - Indicates a change in the status or configuration of the Spot fleet request.

        • instanceChange - Indicates that an instance was launched or terminated.

        " } }, "ExcessCapacityTerminationPolicy": { "base": null, "refs": { "ModifySpotFleetRequestRequest$ExcessCapacityTerminationPolicy": "

        Indicates whether running Spot instances should be terminated if the target capacity of the Spot fleet request is decreased below the current size of the Spot fleet.

        ", "SpotFleetRequestConfigData$ExcessCapacityTerminationPolicy": "

        Indicates whether running Spot instances should be terminated if the target capacity of the Spot fleet request is decreased below the current size of the Spot fleet.

        " } }, "ExecutableByStringList": { "base": null, "refs": { "DescribeImagesRequest$ExecutableUsers": "

        Scopes the images by users with explicit launch permissions. Specify an AWS account ID, self (the sender of the request), or all (public AMIs).

        " } }, "ExportEnvironment": { "base": null, "refs": { "CreateInstanceExportTaskRequest$TargetEnvironment": "

        The target virtualization environment.

        ", "InstanceExportDetails$TargetEnvironment": "

        The target virtualization environment.

        " } }, "ExportTask": { "base": "

        Describes an instance export task.

        ", "refs": { "CreateInstanceExportTaskResult$ExportTask": "

        Information about the instance export task.

        ", "ExportTaskList$member": null } }, "ExportTaskIdStringList": { "base": null, "refs": { "DescribeExportTasksRequest$ExportTaskIds": "

        One or more export task IDs.

        " } }, "ExportTaskList": { "base": null, "refs": { "DescribeExportTasksResult$ExportTasks": "

        Information about the export tasks.

        " } }, "ExportTaskState": { "base": null, "refs": { "ExportTask$State": "

        The state of the export task.

        " } }, "ExportToS3Task": { "base": "

        Describes the format and location for an instance export task.

        ", "refs": { "ExportTask$ExportToS3Task": "

        Information about the export task.

        " } }, "ExportToS3TaskSpecification": { "base": "

        Describes an instance export task.

        ", "refs": { "CreateInstanceExportTaskRequest$ExportToS3Task": "

        The format and location for an instance export task.

        " } }, "Filter": { "base": "

        A filter name and value pair that is used to return a more specific list of results. Filters can be used to match a set of resources by various criteria, such as tags, attributes, or IDs.

        ", "refs": { "FilterList$member": null } }, "FilterList": { "base": null, "refs": { "DescribeAddressesRequest$Filters": "

        One or more filters. Filter names and values are case-sensitive.

        • allocation-id - [EC2-VPC] The allocation ID for the address.

        • association-id - [EC2-VPC] The association ID for the address.

        • domain - Indicates whether the address is for use in EC2-Classic (standard) or in a VPC (vpc).

        • instance-id - The ID of the instance the address is associated with, if any.

        • network-interface-id - [EC2-VPC] The ID of the network interface that the address is associated with, if any.

        • network-interface-owner-id - The AWS account ID of the owner.

        • private-ip-address - [EC2-VPC] The private IP address associated with the Elastic IP address.

        • public-ip - The Elastic IP address.

        ", "DescribeAvailabilityZonesRequest$Filters": "

        One or more filters.

        • message - Information about the Availability Zone.

        • region-name - The name of the region for the Availability Zone (for example, us-east-1).

        • state - The state of the Availability Zone (available | information | impaired | unavailable).

        • zone-name - The name of the Availability Zone (for example, us-east-1a).

        ", "DescribeBundleTasksRequest$Filters": "

        One or more filters.

        • bundle-id - The ID of the bundle task.

        • error-code - If the task failed, the error code returned.

        • error-message - If the task failed, the error message returned.

        • instance-id - The ID of the instance.

        • progress - The level of task completion, as a percentage (for example, 20%).

        • s3-bucket - The Amazon S3 bucket to store the AMI.

        • s3-prefix - The beginning of the AMI name.

        • start-time - The time the task started (for example, 2013-09-15T17:15:20.000Z).

        • state - The state of the task (pending | waiting-for-shutdown | bundling | storing | cancelling | complete | failed).

        • update-time - The time of the most recent update for the task.

        ", "DescribeClassicLinkInstancesRequest$Filters": "

        One or more filters.

        • group-id - The ID of a VPC security group that's associated with the instance.

        • instance-id - The ID of the instance.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC that the instance is linked to.

        ", "DescribeCustomerGatewaysRequest$Filters": "

        One or more filters.

        • bgp-asn - The customer gateway's Border Gateway Protocol (BGP) Autonomous System Number (ASN).

        • customer-gateway-id - The ID of the customer gateway.

        • ip-address - The IP address of the customer gateway's Internet-routable external interface.

        • state - The state of the customer gateway (pending | available | deleting | deleted).

        • type - The type of customer gateway. Currently, the only supported type is ipsec.1.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        ", "DescribeDhcpOptionsRequest$Filters": "

        One or more filters.

        • dhcp-options-id - The ID of a set of DHCP options.

        • key - The key for one of the options (for example, domain-name).

        • value - The value for one of the options.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        ", "DescribeFlowLogsRequest$Filter": "

        One or more filters.

        • deliver-log-status - The status of the logs delivery (SUCCESS | FAILED).

        • flow-log-id - The ID of the flow log.

        • log-group-name - The name of the log group.

        • resource-id - The ID of the VPC, subnet, or network interface.

        • traffic-type - The type of traffic (ACCEPT | REJECT | ALL)

        ", "DescribeHostReservationOfferingsRequest$Filter": "

        One or more filters.

        • instance-family - The instance family of the offering (e.g., m4).

        • payment-option - The payment option (No Upfront | Partial Upfront | All Upfront).

        ", "DescribeHostReservationsRequest$Filter": "

        One or more filters.

        • instance-family - The instance family (e.g., m4).

        • payment-option - The payment option (No Upfront | Partial Upfront | All Upfront).

        • state - The state of the reservation (payment-pending | payment-failed | active | retired).

        ", "DescribeHostsRequest$Filter": "

        One or more filters.

        • instance-type - The instance type size that the Dedicated Host is configured to support.

        • auto-placement - Whether auto-placement is enabled or disabled (on | off).

        • host-reservation-id - The ID of the reservation assigned to this host.

        • client-token - The idempotency token you provided when you launched the instance

        • state- The allocation state of the Dedicated Host (available | under-assessment | permanent-failure | released | released-permanent-failure).

        • availability-zone - The Availability Zone of the host.

        ", "DescribeImagesRequest$Filters": "

        One or more filters.

        • architecture - The image architecture (i386 | x86_64).

        • block-device-mapping.delete-on-termination - A Boolean value that indicates whether the Amazon EBS volume is deleted on instance termination.

        • block-device-mapping.device-name - The device name for the EBS volume (for example, /dev/sdh).

        • block-device-mapping.snapshot-id - The ID of the snapshot used for the EBS volume.

        • block-device-mapping.volume-size - The volume size of the EBS volume, in GiB.

        • block-device-mapping.volume-type - The volume type of the EBS volume (gp2 | io1 | st1 | sc1 | standard).

        • description - The description of the image (provided during image creation).

        • hypervisor - The hypervisor type (ovm | xen).

        • image-id - The ID of the image.

        • image-type - The image type (machine | kernel | ramdisk).

        • is-public - A Boolean that indicates whether the image is public.

        • kernel-id - The kernel ID.

        • manifest-location - The location of the image manifest.

        • name - The name of the AMI (provided during image creation).

        • owner-alias - String value from an Amazon-maintained list (amazon | aws-marketplace | microsoft) of snapshot owners. Not to be confused with the user-configured AWS account alias, which is set from the IAM console.

        • owner-id - The AWS account ID of the image owner.

        • platform - The platform. To only list Windows-based AMIs, use windows.

        • product-code - The product code.

        • product-code.type - The type of the product code (devpay | marketplace).

        • ramdisk-id - The RAM disk ID.

        • root-device-name - The name of the root device volume (for example, /dev/sda1).

        • root-device-type - The type of the root device volume (ebs | instance-store).

        • state - The state of the image (available | pending | failed).

        • state-reason-code - The reason code for the state change.

        • state-reason-message - The message for the state change.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • virtualization-type - The virtualization type (paravirtual | hvm).

        ", "DescribeImportImageTasksRequest$Filters": "

        Filter tasks using the task-state filter and one of the following values: active, completed, deleting, deleted.

        ", "DescribeImportSnapshotTasksRequest$Filters": "

        One or more filters.

        ", "DescribeInstanceStatusRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone of the instance.

        • event.code - The code for the scheduled event (instance-reboot | system-reboot | system-maintenance | instance-retirement | instance-stop).

        • event.description - A description of the event.

        • event.not-after - The latest end time for the scheduled event (for example, 2014-09-15T17:15:20.000Z).

        • event.not-before - The earliest start time for the scheduled event (for example, 2014-09-15T17:15:20.000Z).

        • instance-state-code - The code for the instance state, as a 16-bit unsigned integer. The high byte is an opaque internal value and should be ignored. The low byte is set based on the state represented. The valid values are 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64 (stopping), and 80 (stopped).

        • instance-state-name - The state of the instance (pending | running | shutting-down | terminated | stopping | stopped).

        • instance-status.reachability - Filters on instance status where the name is reachability (passed | failed | initializing | insufficient-data).

        • instance-status.status - The status of the instance (ok | impaired | initializing | insufficient-data | not-applicable).

        • system-status.reachability - Filters on system status where the name is reachability (passed | failed | initializing | insufficient-data).

        • system-status.status - The system status of the instance (ok | impaired | initializing | insufficient-data | not-applicable).

        ", "DescribeInstancesRequest$Filters": "

        One or more filters.

        • affinity - The affinity setting for an instance running on a Dedicated Host (default | host).

        • architecture - The instance architecture (i386 | x86_64).

        • availability-zone - The Availability Zone of the instance.

        • block-device-mapping.attach-time - The attach time for an EBS volume mapped to the instance, for example, 2010-09-15T17:15:20.000Z.

        • block-device-mapping.delete-on-termination - A Boolean that indicates whether the EBS volume is deleted on instance termination.

        • block-device-mapping.device-name - The device name for the EBS volume (for example, /dev/sdh or xvdh).

        • block-device-mapping.status - The status for the EBS volume (attaching | attached | detaching | detached).

        • block-device-mapping.volume-id - The volume ID of the EBS volume.

        • client-token - The idempotency token you provided when you launched the instance.

        • dns-name - The public DNS name of the instance.

        • group-id - The ID of the security group for the instance. EC2-Classic only.

        • group-name - The name of the security group for the instance. EC2-Classic only.

        • host-id - The ID of the Dedicated Host on which the instance is running, if applicable.

        • hypervisor - The hypervisor type of the instance (ovm | xen).

        • iam-instance-profile.arn - The instance profile associated with the instance. Specified as an ARN.

        • image-id - The ID of the image used to launch the instance.

        • instance-id - The ID of the instance.

        • instance-lifecycle - Indicates whether this is a Spot Instance or a Scheduled Instance (spot | scheduled).

        • instance-state-code - The state of the instance, as a 16-bit unsigned integer. The high byte is an opaque internal value and should be ignored. The low byte is set based on the state represented. The valid values are: 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64 (stopping), and 80 (stopped).

        • instance-state-name - The state of the instance (pending | running | shutting-down | terminated | stopping | stopped).

        • instance-type - The type of instance (for example, t2.micro).

        • instance.group-id - The ID of the security group for the instance.

        • instance.group-name - The name of the security group for the instance.

        • ip-address - The public IP address of the instance.

        • kernel-id - The kernel ID.

        • key-name - The name of the key pair used when the instance was launched.

        • launch-index - When launching multiple instances, this is the index for the instance in the launch group (for example, 0, 1, 2, and so on).

        • launch-time - The time when the instance was launched.

        • monitoring-state - Indicates whether monitoring is enabled for the instance (disabled | enabled).

        • owner-id - The AWS account ID of the instance owner.

        • placement-group-name - The name of the placement group for the instance.

        • platform - The platform. Use windows if you have Windows instances; otherwise, leave blank.

        • private-dns-name - The private DNS name of the instance.

        • private-ip-address - The private IP address of the instance.

        • product-code - The product code associated with the AMI used to launch the instance.

        • product-code.type - The type of product code (devpay | marketplace).

        • ramdisk-id - The RAM disk ID.

        • reason - The reason for the current state of the instance (for example, shows \"User Initiated [date]\" when you stop or terminate the instance). Similar to the state-reason-code filter.

        • requester-id - The ID of the entity that launched the instance on your behalf (for example, AWS Management Console, Auto Scaling, and so on).

        • reservation-id - The ID of the instance's reservation. A reservation ID is created any time you launch an instance. A reservation ID has a one-to-one relationship with an instance launch request, but can be associated with more than one instance if you launch multiple instances using the same launch request. For example, if you launch one instance, you'll get one reservation ID. If you launch ten instances using the same launch request, you'll also get one reservation ID.

        • root-device-name - The name of the root device for the instance (for example, /dev/sda1 or /dev/xvda).

        • root-device-type - The type of root device that the instance uses (ebs | instance-store).

        • source-dest-check - Indicates whether the instance performs source/destination checking. A value of true means that checking is enabled, and false means checking is disabled. The value must be false for the instance to perform network address translation (NAT) in your VPC.

        • spot-instance-request-id - The ID of the Spot instance request.

        • state-reason-code - The reason code for the state change.

        • state-reason-message - A message that describes the state change.

        • subnet-id - The ID of the subnet for the instance.

        • tag:key=value - The key/value combination of a tag assigned to the resource, where tag:key is the tag's key.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • tenancy - The tenancy of an instance (dedicated | default | host).

        • virtualization-type - The virtualization type of the instance (paravirtual | hvm).

        • vpc-id - The ID of the VPC that the instance is running in.

        • network-interface.description - The description of the network interface.

        • network-interface.subnet-id - The ID of the subnet for the network interface.

        • network-interface.vpc-id - The ID of the VPC for the network interface.

        • network-interface.network-interface-id - The ID of the network interface.

        • network-interface.owner-id - The ID of the owner of the network interface.

        • network-interface.availability-zone - The Availability Zone for the network interface.

        • network-interface.requester-id - The requester ID for the network interface.

        • network-interface.requester-managed - Indicates whether the network interface is being managed by AWS.

        • network-interface.status - The status of the network interface (available) | in-use).

        • network-interface.mac-address - The MAC address of the network interface.

        • network-interface.private-dns-name - The private DNS name of the network interface.

        • network-interface.source-dest-check - Whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

        • network-interface.group-id - The ID of a security group associated with the network interface.

        • network-interface.group-name - The name of a security group associated with the network interface.

        • network-interface.attachment.attachment-id - The ID of the interface attachment.

        • network-interface.attachment.instance-id - The ID of the instance to which the network interface is attached.

        • network-interface.attachment.instance-owner-id - The owner ID of the instance to which the network interface is attached.

        • network-interface.addresses.private-ip-address - The private IP address associated with the network interface.

        • network-interface.attachment.device-index - The device index to which the network interface is attached.

        • network-interface.attachment.status - The status of the attachment (attaching | attached | detaching | detached).

        • network-interface.attachment.attach-time - The time that the network interface was attached to an instance.

        • network-interface.attachment.delete-on-termination - Specifies whether the attachment is deleted when an instance is terminated.

        • network-interface.addresses.primary - Specifies whether the IP address of the network interface is the primary private IP address.

        • network-interface.addresses.association.public-ip - The ID of the association of an Elastic IP address with a network interface.

        • network-interface.addresses.association.ip-owner-id - The owner ID of the private IP address associated with the network interface.

        • association.public-ip - The address of the Elastic IP address bound to the network interface.

        • association.ip-owner-id - The owner of the Elastic IP address associated with the network interface.

        • association.allocation-id - The allocation ID returned when you allocated the Elastic IP address for your network interface.

        • association.association-id - The association ID returned when the network interface was associated with an IP address.

        ", "DescribeInternetGatewaysRequest$Filters": "

        One or more filters.

        • attachment.state - The current state of the attachment between the gateway and the VPC (available). Present only if a VPC is attached.

        • attachment.vpc-id - The ID of an attached VPC.

        • internet-gateway-id - The ID of the Internet gateway.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        ", "DescribeKeyPairsRequest$Filters": "

        One or more filters.

        • fingerprint - The fingerprint of the key pair.

        • key-name - The name of the key pair.

        ", "DescribeMovingAddressesRequest$Filters": "

        One or more filters.

        • moving-status - The status of the Elastic IP address (MovingToVpc | RestoringToClassic).

        ", "DescribeNatGatewaysRequest$Filter": "

        One or more filters.

        • nat-gateway-id - The ID of the NAT gateway.

        • state - The state of the NAT gateway (pending | failed | available | deleting | deleted).

        • subnet-id - The ID of the subnet in which the NAT gateway resides.

        • vpc-id - The ID of the VPC in which the NAT gateway resides.

        ", "DescribeNetworkAclsRequest$Filters": "

        One or more filters.

        • association.association-id - The ID of an association ID for the ACL.

        • association.network-acl-id - The ID of the network ACL involved in the association.

        • association.subnet-id - The ID of the subnet involved in the association.

        • default - Indicates whether the ACL is the default network ACL for the VPC.

        • entry.cidr - The CIDR range specified in the entry.

        • entry.egress - Indicates whether the entry applies to egress traffic.

        • entry.icmp.code - The ICMP code specified in the entry, if any.

        • entry.icmp.type - The ICMP type specified in the entry, if any.

        • entry.port-range.from - The start of the port range specified in the entry.

        • entry.port-range.to - The end of the port range specified in the entry.

        • entry.protocol - The protocol specified in the entry (tcp | udp | icmp or a protocol number).

        • entry.rule-action - Allows or denies the matching traffic (allow | deny).

        • entry.rule-number - The number of an entry (in other words, rule) in the ACL's set of entries.

        • network-acl-id - The ID of the network ACL.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC for the network ACL.

        ", "DescribeNetworkInterfacesRequest$Filters": "

        One or more filters.

        • addresses.private-ip-address - The private IP addresses associated with the network interface.

        • addresses.primary - Whether the private IP address is the primary IP address associated with the network interface.

        • addresses.association.public-ip - The association ID returned when the network interface was associated with the Elastic IP address.

        • addresses.association.owner-id - The owner ID of the addresses associated with the network interface.

        • association.association-id - The association ID returned when the network interface was associated with an IP address.

        • association.allocation-id - The allocation ID returned when you allocated the Elastic IP address for your network interface.

        • association.ip-owner-id - The owner of the Elastic IP address associated with the network interface.

        • association.public-ip - The address of the Elastic IP address bound to the network interface.

        • association.public-dns-name - The public DNS name for the network interface.

        • attachment.attachment-id - The ID of the interface attachment.

        • attachment.attach.time - The time that the network interface was attached to an instance.

        • attachment.delete-on-termination - Indicates whether the attachment is deleted when an instance is terminated.

        • attachment.device-index - The device index to which the network interface is attached.

        • attachment.instance-id - The ID of the instance to which the network interface is attached.

        • attachment.instance-owner-id - The owner ID of the instance to which the network interface is attached.

        • attachment.nat-gateway-id - The ID of the NAT gateway to which the network interface is attached.

        • attachment.status - The status of the attachment (attaching | attached | detaching | detached).

        • availability-zone - The Availability Zone of the network interface.

        • description - The description of the network interface.

        • group-id - The ID of a security group associated with the network interface.

        • group-name - The name of a security group associated with the network interface.

        • mac-address - The MAC address of the network interface.

        • network-interface-id - The ID of the network interface.

        • owner-id - The AWS account ID of the network interface owner.

        • private-ip-address - The private IP address or addresses of the network interface.

        • private-dns-name - The private DNS name of the network interface.

        • requester-id - The ID of the entity that launched the instance on your behalf (for example, AWS Management Console, Auto Scaling, and so on).

        • requester-managed - Indicates whether the network interface is being managed by an AWS service (for example, AWS Management Console, Auto Scaling, and so on).

        • source-desk-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

        • status - The status of the network interface. If the network interface is not attached to an instance, the status is available; if a network interface is attached to an instance the status is in-use.

        • subnet-id - The ID of the subnet for the network interface.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC for the network interface.

        ", "DescribePlacementGroupsRequest$Filters": "

        One or more filters.

        • group-name - The name of the placement group.

        • state - The state of the placement group (pending | available | deleting | deleted).

        • strategy - The strategy of the placement group (cluster).

        ", "DescribePrefixListsRequest$Filters": "

        One or more filters.

        • prefix-list-id: The ID of a prefix list.

        • prefix-list-name: The name of a prefix list.

        ", "DescribeRegionsRequest$Filters": "

        One or more filters.

        • endpoint - The endpoint of the region (for example, ec2.us-east-1.amazonaws.com).

        • region-name - The name of the region (for example, us-east-1).

        ", "DescribeReservedInstancesListingsRequest$Filters": "

        One or more filters.

        • reserved-instances-id - The ID of the Reserved Instances.

        • reserved-instances-listing-id - The ID of the Reserved Instances listing.

        • status - The status of the Reserved Instance listing (pending | active | cancelled | closed).

        • status-message - The reason for the status.

        ", "DescribeReservedInstancesModificationsRequest$Filters": "

        One or more filters.

        • client-token - The idempotency token for the modification request.

        • create-date - The time when the modification request was created.

        • effective-date - The time when the modification becomes effective.

        • modification-result.reserved-instances-id - The ID for the Reserved Instances created as part of the modification request. This ID is only available when the status of the modification is fulfilled.

        • modification-result.target-configuration.availability-zone - The Availability Zone for the new Reserved Instances.

        • modification-result.target-configuration.instance-count - The number of new Reserved Instances.

        • modification-result.target-configuration.instance-type - The instance type of the new Reserved Instances.

        • modification-result.target-configuration.platform - The network platform of the new Reserved Instances (EC2-Classic | EC2-VPC).

        • reserved-instances-id - The ID of the Reserved Instances modified.

        • reserved-instances-modification-id - The ID of the modification request.

        • status - The status of the Reserved Instances modification request (processing | fulfilled | failed).

        • status-message - The reason for the status.

        • update-date - The time when the modification request was last updated.

        ", "DescribeReservedInstancesOfferingsRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone where the Reserved Instance can be used.

        • duration - The duration of the Reserved Instance (for example, one year or three years), in seconds (31536000 | 94608000).

        • fixed-price - The purchase price of the Reserved Instance (for example, 9800.0).

        • instance-type - The instance type that is covered by the reservation.

        • marketplace - Set to true to show only Reserved Instance Marketplace offerings. When this filter is not used, which is the default behavior, all offerings from both AWS and the Reserved Instance Marketplace are listed.

        • product-description - The Reserved Instance product platform description. Instances that include (Amazon VPC) in the product platform description will only be displayed to EC2-Classic account holders and are for use with Amazon VPC. (Linux/UNIX | Linux/UNIX (Amazon VPC) | SUSE Linux | SUSE Linux (Amazon VPC) | Red Hat Enterprise Linux | Red Hat Enterprise Linux (Amazon VPC) | Windows | Windows (Amazon VPC) | Windows with SQL Server Standard | Windows with SQL Server Standard (Amazon VPC) | Windows with SQL Server Web | Windows with SQL Server Web (Amazon VPC) | Windows with SQL Server Enterprise | Windows with SQL Server Enterprise (Amazon VPC))

        • reserved-instances-offering-id - The Reserved Instances offering ID.

        • scope - The scope of the Reserved Instance (Availability Zone or Region).

        • usage-price - The usage price of the Reserved Instance, per hour (for example, 0.84).

        ", "DescribeReservedInstancesRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone where the Reserved Instance can be used.

        • duration - The duration of the Reserved Instance (one year or three years), in seconds (31536000 | 94608000).

        • end - The time when the Reserved Instance expires (for example, 2015-08-07T11:54:42.000Z).

        • fixed-price - The purchase price of the Reserved Instance (for example, 9800.0).

        • instance-type - The instance type that is covered by the reservation.

        • scope - The scope of the Reserved Instance (Region or Availability Zone).

        • product-description - The Reserved Instance product platform description. Instances that include (Amazon VPC) in the product platform description will only be displayed to EC2-Classic account holders and are for use with Amazon VPC (Linux/UNIX | Linux/UNIX (Amazon VPC) | SUSE Linux | SUSE Linux (Amazon VPC) | Red Hat Enterprise Linux | Red Hat Enterprise Linux (Amazon VPC) | Windows | Windows (Amazon VPC) | Windows with SQL Server Standard | Windows with SQL Server Standard (Amazon VPC) | Windows with SQL Server Web | Windows with SQL Server Web (Amazon VPC) | Windows with SQL Server Enterprise | Windows with SQL Server Enterprise (Amazon VPC)).

        • reserved-instances-id - The ID of the Reserved Instance.

        • start - The time at which the Reserved Instance purchase request was placed (for example, 2014-08-07T11:54:42.000Z).

        • state - The state of the Reserved Instance (payment-pending | active | payment-failed | retired).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • usage-price - The usage price of the Reserved Instance, per hour (for example, 0.84).

        ", "DescribeRouteTablesRequest$Filters": "

        One or more filters.

        • association.route-table-association-id - The ID of an association ID for the route table.

        • association.route-table-id - The ID of the route table involved in the association.

        • association.subnet-id - The ID of the subnet involved in the association.

        • association.main - Indicates whether the route table is the main route table for the VPC (true | false).

        • route-table-id - The ID of the route table.

        • route.destination-cidr-block - The CIDR range specified in a route in the table.

        • route.destination-prefix-list-id - The ID (prefix) of the AWS service specified in a route in the table.

        • route.gateway-id - The ID of a gateway specified in a route in the table.

        • route.instance-id - The ID of an instance specified in a route in the table.

        • route.nat-gateway-id - The ID of a NAT gateway.

        • route.origin - Describes how the route was created. CreateRouteTable indicates that the route was automatically created when the route table was created; CreateRoute indicates that the route was manually added to the route table; EnableVgwRoutePropagation indicates that the route was propagated by route propagation.

        • route.state - The state of a route in the route table (active | blackhole). The blackhole state indicates that the route's target isn't available (for example, the specified gateway isn't attached to the VPC, the specified NAT instance has been terminated, and so on).

        • route.vpc-peering-connection-id - The ID of a VPC peering connection specified in a route in the table.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC for the route table.

        ", "DescribeScheduledInstanceAvailabilityRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone (for example, us-west-2a).

        • instance-type - The instance type (for example, c4.large).

        • network-platform - The network platform (EC2-Classic or EC2-VPC).

        • platform - The platform (Linux/UNIX or Windows).

        ", "DescribeScheduledInstancesRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone (for example, us-west-2a).

        • instance-type - The instance type (for example, c4.large).

        • network-platform - The network platform (EC2-Classic or EC2-VPC).

        • platform - The platform (Linux/UNIX or Windows).

        ", "DescribeSecurityGroupsRequest$Filters": "

        One or more filters. If using multiple filters for rules, the results include security groups for which any combination of rules - not necessarily a single rule - match all filters.

        • description - The description of the security group.

        • egress.ip-permission.prefix-list-id - The ID (prefix) of the AWS service to which the security group allows access.

        • group-id - The ID of the security group.

        • group-name - The name of the security group.

        • ip-permission.cidr - A CIDR range that has been granted permission.

        • ip-permission.from-port - The start of port range for the TCP and UDP protocols, or an ICMP type number.

        • ip-permission.group-id - The ID of a security group that has been granted permission.

        • ip-permission.group-name - The name of a security group that has been granted permission.

        • ip-permission.protocol - The IP protocol for the permission (tcp | udp | icmp or a protocol number).

        • ip-permission.to-port - The end of port range for the TCP and UDP protocols, or an ICMP code.

        • ip-permission.user-id - The ID of an AWS account that has been granted permission.

        • owner-id - The AWS account ID of the owner of the security group.

        • tag-key - The key of a tag assigned to the security group.

        • tag-value - The value of a tag assigned to the security group.

        • vpc-id - The ID of the VPC specified when the security group was created.

        ", "DescribeSnapshotsRequest$Filters": "

        One or more filters.

        • description - A description of the snapshot.

        • owner-alias - Value from an Amazon-maintained list (amazon | aws-marketplace | microsoft) of snapshot owners. Not to be confused with the user-configured AWS account alias, which is set from the IAM consolew.

        • owner-id - The ID of the AWS account that owns the snapshot.

        • progress - The progress of the snapshot, as a percentage (for example, 80%).

        • snapshot-id - The snapshot ID.

        • start-time - The time stamp when the snapshot was initiated.

        • status - The status of the snapshot (pending | completed | error).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • volume-id - The ID of the volume the snapshot is for.

        • volume-size - The size of the volume, in GiB.

        ", "DescribeSpotInstanceRequestsRequest$Filters": "

        One or more filters.

        • availability-zone-group - The Availability Zone group.

        • create-time - The time stamp when the Spot instance request was created.

        • fault-code - The fault code related to the request.

        • fault-message - The fault message related to the request.

        • instance-id - The ID of the instance that fulfilled the request.

        • launch-group - The Spot instance launch group.

        • launch.block-device-mapping.delete-on-termination - Indicates whether the Amazon EBS volume is deleted on instance termination.

        • launch.block-device-mapping.device-name - The device name for the Amazon EBS volume (for example, /dev/sdh).

        • launch.block-device-mapping.snapshot-id - The ID of the snapshot used for the Amazon EBS volume.

        • launch.block-device-mapping.volume-size - The size of the Amazon EBS volume, in GiB.

        • launch.block-device-mapping.volume-type - The type of the Amazon EBS volume: gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1for Cold HDD, or standard for Magnetic.

        • launch.group-id - The security group for the instance.

        • launch.image-id - The ID of the AMI.

        • launch.instance-type - The type of instance (for example, m3.medium).

        • launch.kernel-id - The kernel ID.

        • launch.key-name - The name of the key pair the instance launched with.

        • launch.monitoring-enabled - Whether monitoring is enabled for the Spot instance.

        • launch.ramdisk-id - The RAM disk ID.

        • network-interface.network-interface-id - The ID of the network interface.

        • network-interface.device-index - The index of the device for the network interface attachment on the instance.

        • network-interface.subnet-id - The ID of the subnet for the instance.

        • network-interface.description - A description of the network interface.

        • network-interface.private-ip-address - The primary private IP address of the network interface.

        • network-interface.delete-on-termination - Indicates whether the network interface is deleted when the instance is terminated.

        • network-interface.group-id - The ID of the security group associated with the network interface.

        • network-interface.group-name - The name of the security group associated with the network interface.

        • network-interface.addresses.primary - Indicates whether the IP address is the primary private IP address.

        • product-description - The product description associated with the instance (Linux/UNIX | Windows).

        • spot-instance-request-id - The Spot instance request ID.

        • spot-price - The maximum hourly price for any Spot instance launched to fulfill the request.

        • state - The state of the Spot instance request (open | active | closed | cancelled | failed). Spot bid status information can help you track your Amazon EC2 Spot instance requests. For more information, see Spot Bid Status in the Amazon Elastic Compute Cloud User Guide.

        • status-code - The short code describing the most recent evaluation of your Spot instance request.

        • status-message - The message explaining the status of the Spot instance request.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • type - The type of Spot instance request (one-time | persistent).

        • launched-availability-zone - The Availability Zone in which the bid is launched.

        • valid-from - The start date of the request.

        • valid-until - The end date of the request.

        ", "DescribeSpotPriceHistoryRequest$Filters": "

        One or more filters.

        • availability-zone - The Availability Zone for which prices should be returned.

        • instance-type - The type of instance (for example, m3.medium).

        • product-description - The product description for the Spot price (Linux/UNIX | SUSE Linux | Windows | Linux/UNIX (Amazon VPC) | SUSE Linux (Amazon VPC) | Windows (Amazon VPC)).

        • spot-price - The Spot price. The value must match exactly (or use wildcards; greater than or less than comparison is not supported).

        • timestamp - The timestamp of the Spot price history, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). You can use wildcards (* and ?). Greater than or less than comparison is not supported.

        ", "DescribeSubnetsRequest$Filters": "

        One or more filters.

        • availabilityZone - The Availability Zone for the subnet. You can also use availability-zone as the filter name.

        • available-ip-address-count - The number of IP addresses in the subnet that are available.

        • cidrBlock - The CIDR block of the subnet. The CIDR block you specify must exactly match the subnet's CIDR block for information to be returned for the subnet. You can also use cidr or cidr-block as the filter names.

        • defaultForAz - Indicates whether this is the default subnet for the Availability Zone. You can also use default-for-az as the filter name.

        • state - The state of the subnet (pending | available).

        • subnet-id - The ID of the subnet.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC for the subnet.

        ", "DescribeTagsRequest$Filters": "

        One or more filters.

        • key - The tag key.

        • resource-id - The resource ID.

        • resource-type - The resource type (customer-gateway | dhcp-options | image | instance | internet-gateway | network-acl | network-interface | reserved-instances | route-table | security-group | snapshot | spot-instances-request | subnet | volume | vpc | vpn-connection | vpn-gateway).

        • value - The tag value.

        ", "DescribeVolumeStatusRequest$Filters": "

        One or more filters.

        • action.code - The action code for the event (for example, enable-volume-io).

        • action.description - A description of the action.

        • action.event-id - The event ID associated with the action.

        • availability-zone - The Availability Zone of the instance.

        • event.description - A description of the event.

        • event.event-id - The event ID.

        • event.event-type - The event type (for io-enabled: passed | failed; for io-performance: io-performance:degraded | io-performance:severely-degraded | io-performance:stalled).

        • event.not-after - The latest end time for the event.

        • event.not-before - The earliest start time for the event.

        • volume-status.details-name - The cause for volume-status.status (io-enabled | io-performance).

        • volume-status.details-status - The status of volume-status.details-name (for io-enabled: passed | failed; for io-performance: normal | degraded | severely-degraded | stalled).

        • volume-status.status - The status of the volume (ok | impaired | warning | insufficient-data).

        ", "DescribeVolumesRequest$Filters": "

        One or more filters.

        • attachment.attach-time - The time stamp when the attachment initiated.

        • attachment.delete-on-termination - Whether the volume is deleted on instance termination.

        • attachment.device - The device name that is exposed to the instance (for example, /dev/sda1).

        • attachment.instance-id - The ID of the instance the volume is attached to.

        • attachment.status - The attachment state (attaching | attached | detaching | detached).

        • availability-zone - The Availability Zone in which the volume was created.

        • create-time - The time stamp when the volume was created.

        • encrypted - The encryption status of the volume.

        • size - The size of the volume, in GiB.

        • snapshot-id - The snapshot from which the volume was created.

        • status - The status of the volume (creating | available | in-use | deleting | deleted | error).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • volume-id - The volume ID.

        • volume-type - The Amazon EBS volume type. This can be gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, or standard for Magnetic volumes.

        ", "DescribeVpcClassicLinkRequest$Filters": "

        One or more filters.

        • is-classic-link-enabled - Whether the VPC is enabled for ClassicLink (true | false).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        ", "DescribeVpcEndpointsRequest$Filters": "

        One or more filters.

        • service-name: The name of the AWS service.

        • vpc-id: The ID of the VPC in which the endpoint resides.

        • vpc-endpoint-id: The ID of the endpoint.

        • vpc-endpoint-state: The state of the endpoint. (pending | available | deleting | deleted)

        ", "DescribeVpcPeeringConnectionsRequest$Filters": "

        One or more filters.

        • accepter-vpc-info.cidr-block - The CIDR block of the peer VPC.

        • accepter-vpc-info.owner-id - The AWS account ID of the owner of the peer VPC.

        • accepter-vpc-info.vpc-id - The ID of the peer VPC.

        • expiration-time - The expiration date and time for the VPC peering connection.

        • requester-vpc-info.cidr-block - The CIDR block of the requester's VPC.

        • requester-vpc-info.owner-id - The AWS account ID of the owner of the requester VPC.

        • requester-vpc-info.vpc-id - The ID of the requester VPC.

        • status-code - The status of the VPC peering connection (pending-acceptance | failed | expired | provisioning | active | deleted | rejected).

        • status-message - A message that provides more information about the status of the VPC peering connection, if applicable.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-peering-connection-id - The ID of the VPC peering connection.

        ", "DescribeVpcsRequest$Filters": "

        One or more filters.

        • cidr - The CIDR block of the VPC. The CIDR block you specify must exactly match the VPC's CIDR block for information to be returned for the VPC. Must contain the slash followed by one or two digits (for example, /28).

        • dhcp-options-id - The ID of a set of DHCP options.

        • isDefault - Indicates whether the VPC is the default VPC.

        • state - The state of the VPC (pending | available).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • vpc-id - The ID of the VPC.

        ", "DescribeVpnConnectionsRequest$Filters": "

        One or more filters.

        • customer-gateway-configuration - The configuration information for the customer gateway.

        • customer-gateway-id - The ID of a customer gateway associated with the VPN connection.

        • state - The state of the VPN connection (pending | available | deleting | deleted).

        • option.static-routes-only - Indicates whether the connection has static routes only. Used for devices that do not support Border Gateway Protocol (BGP).

        • route.destination-cidr-block - The destination CIDR block. This corresponds to the subnet used in a customer data center.

        • bgp-asn - The BGP Autonomous System Number (ASN) associated with a BGP device.

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • type - The type of VPN connection. Currently the only supported type is ipsec.1.

        • vpn-connection-id - The ID of the VPN connection.

        • vpn-gateway-id - The ID of a virtual private gateway associated with the VPN connection.

        ", "DescribeVpnGatewaysRequest$Filters": "

        One or more filters.

        • attachment.state - The current state of the attachment between the gateway and the VPC (attaching | attached | detaching | detached).

        • attachment.vpc-id - The ID of an attached VPC.

        • availability-zone - The Availability Zone for the virtual private gateway (if applicable).

        • state - The state of the virtual private gateway (pending | available | deleting | deleted).

        • tag:key=value - The key/value combination of a tag assigned to the resource.

        • tag-key - The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter \"tag-key=Purpose\" and the filter \"tag-value=X\", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key=value filter.

        • tag-value - The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

        • type - The type of virtual private gateway. Currently the only supported type is ipsec.1.

        • vpn-gateway-id - The ID of the virtual private gateway.

        " } }, "FleetType": { "base": null, "refs": { "SpotFleetRequestConfigData$Type": "

        The type of request. Indicates whether the fleet will only request the target capacity or also attempt to maintain it. When you request a certain target capacity, the fleet will only place the required bids. It will not attempt to replenish Spot instances if capacity is diminished, nor will it submit bids in alternative Spot pools if capacity is not available. When you want to maintain a certain target capacity, fleet will place the required bids to meet this target capacity. It will also automatically replenish any interrupted instances. Default: maintain.

        " } }, "Float": { "base": null, "refs": { "ReservedInstances$UsagePrice": "

        The usage price of the Reserved Instance, per hour.

        ", "ReservedInstances$FixedPrice": "

        The purchase price of the Reserved Instance.

        ", "ReservedInstancesOffering$UsagePrice": "

        The usage price of the Reserved Instance, per hour.

        ", "ReservedInstancesOffering$FixedPrice": "

        The purchase price of the Reserved Instance.

        " } }, "FlowLog": { "base": "

        Describes a flow log.

        ", "refs": { "FlowLogSet$member": null } }, "FlowLogSet": { "base": null, "refs": { "DescribeFlowLogsResult$FlowLogs": "

        Information about the flow logs.

        " } }, "FlowLogsResourceType": { "base": null, "refs": { "CreateFlowLogsRequest$ResourceType": "

        The type of resource on which to create the flow log.

        " } }, "GatewayType": { "base": null, "refs": { "CreateCustomerGatewayRequest$Type": "

        The type of VPN connection that this customer gateway supports (ipsec.1).

        ", "CreateVpnGatewayRequest$Type": "

        The type of VPN connection this virtual private gateway supports.

        ", "VpnConnection$Type": "

        The type of VPN connection.

        ", "VpnGateway$Type": "

        The type of VPN connection the virtual private gateway supports.

        " } }, "GetConsoleOutputRequest": { "base": "

        Contains the parameters for GetConsoleOutput.

        ", "refs": { } }, "GetConsoleOutputResult": { "base": "

        Contains the output of GetConsoleOutput.

        ", "refs": { } }, "GetConsoleScreenshotRequest": { "base": "

        Contains the parameters for the request.

        ", "refs": { } }, "GetConsoleScreenshotResult": { "base": "

        Contains the output of the request.

        ", "refs": { } }, "GetHostReservationPurchasePreviewRequest": { "base": null, "refs": { } }, "GetHostReservationPurchasePreviewResult": { "base": null, "refs": { } }, "GetPasswordDataRequest": { "base": "

        Contains the parameters for GetPasswordData.

        ", "refs": { } }, "GetPasswordDataResult": { "base": "

        Contains the output of GetPasswordData.

        ", "refs": { } }, "GetReservedInstancesExchangeQuoteRequest": { "base": "

        Contains the parameters for GetReservedInstanceExchangeQuote.

        ", "refs": { } }, "GetReservedInstancesExchangeQuoteResult": { "base": "

        Contains the output of GetReservedInstancesExchangeQuote.

        ", "refs": { } }, "GroupIdStringList": { "base": null, "refs": { "AttachClassicLinkVpcRequest$Groups": "

        The ID of one or more of the VPC's security groups. You cannot specify security groups from a different VPC.

        ", "DescribeSecurityGroupsRequest$GroupIds": "

        One or more security group IDs. Required for security groups in a nondefault VPC.

        Default: Describes all your security groups.

        ", "ModifyInstanceAttributeRequest$Groups": "

        [EC2-VPC] Changes the security groups of the instance. You must specify at least one security group, even if it's just the default security group for the VPC. You must specify the security group ID, not the security group name.

        " } }, "GroupIdentifier": { "base": "

        Describes a security group.

        ", "refs": { "GroupIdentifierList$member": null } }, "GroupIdentifierList": { "base": null, "refs": { "ClassicLinkInstance$Groups": "

        A list of security groups.

        ", "DescribeNetworkInterfaceAttributeResult$Groups": "

        The security groups associated with the network interface.

        ", "Instance$SecurityGroups": "

        One or more security groups for the instance.

        ", "InstanceAttribute$Groups": "

        The security groups associated with the instance.

        ", "InstanceNetworkInterface$Groups": "

        One or more security groups.

        ", "LaunchSpecification$SecurityGroups": "

        One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.

        ", "NetworkInterface$Groups": "

        Any security groups for the network interface.

        ", "Reservation$Groups": "

        [EC2-Classic only] One or more security groups.

        ", "SpotFleetLaunchSpecification$SecurityGroups": "

        One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.

        " } }, "GroupIds": { "base": null, "refs": { "DescribeSecurityGroupReferencesRequest$GroupId": "

        One or more security group IDs in your account.

        " } }, "GroupNameStringList": { "base": null, "refs": { "DescribeSecurityGroupsRequest$GroupNames": "

        [EC2-Classic and default VPC only] One or more security group names. You can specify either the security group name or the security group ID. For security groups in a nondefault VPC, use the group-name filter to describe security groups by name.

        Default: Describes all your security groups.

        ", "ModifySnapshotAttributeRequest$GroupNames": "

        The group to modify for the snapshot.

        " } }, "HistoryRecord": { "base": "

        Describes an event in the history of the Spot fleet request.

        ", "refs": { "HistoryRecords$member": null } }, "HistoryRecords": { "base": null, "refs": { "DescribeSpotFleetRequestHistoryResponse$HistoryRecords": "

        Information about the events in the history of the Spot fleet request.

        " } }, "Host": { "base": "

        Describes the properties of the Dedicated Host.

        ", "refs": { "HostList$member": null } }, "HostInstance": { "base": "

        Describes an instance running on a Dedicated Host.

        ", "refs": { "HostInstanceList$member": null } }, "HostInstanceList": { "base": null, "refs": { "Host$Instances": "

        The IDs and instance type that are currently running on the Dedicated Host.

        " } }, "HostList": { "base": null, "refs": { "DescribeHostsResult$Hosts": "

        Information about the Dedicated Hosts.

        " } }, "HostOffering": { "base": "

        Details about the Dedicated Host Reservation offering.

        ", "refs": { "HostOfferingSet$member": null } }, "HostOfferingSet": { "base": null, "refs": { "DescribeHostReservationOfferingsResult$OfferingSet": "

        Information about the offerings.

        " } }, "HostProperties": { "base": "

        Describes properties of a Dedicated Host.

        ", "refs": { "Host$HostProperties": "

        The hardware specifications of the Dedicated Host.

        " } }, "HostReservation": { "base": "

        Details about the Dedicated Host Reservation and associated Dedicated Hosts.

        ", "refs": { "HostReservationSet$member": null } }, "HostReservationIdSet": { "base": null, "refs": { "DescribeHostReservationsRequest$HostReservationIdSet": "

        One or more host reservation IDs.

        " } }, "HostReservationSet": { "base": null, "refs": { "DescribeHostReservationsResult$HostReservationSet": "

        Details about the reservation's configuration.

        " } }, "HostTenancy": { "base": null, "refs": { "ModifyInstancePlacementRequest$Tenancy": "

        The tenancy of the instance that you are modifying.

        " } }, "HypervisorType": { "base": null, "refs": { "Image$Hypervisor": "

        The hypervisor type of the image.

        ", "Instance$Hypervisor": "

        The hypervisor type of the instance.

        " } }, "IamInstanceProfile": { "base": "

        Describes an IAM instance profile.

        ", "refs": { "Instance$IamInstanceProfile": "

        The IAM instance profile associated with the instance, if applicable.

        " } }, "IamInstanceProfileSpecification": { "base": "

        Describes an IAM instance profile.

        ", "refs": { "LaunchSpecification$IamInstanceProfile": "

        The IAM instance profile.

        ", "RequestSpotLaunchSpecification$IamInstanceProfile": "

        The IAM instance profile.

        ", "RunInstancesRequest$IamInstanceProfile": "

        The IAM instance profile.

        ", "SpotFleetLaunchSpecification$IamInstanceProfile": "

        The IAM instance profile.

        " } }, "IcmpTypeCode": { "base": "

        Describes the ICMP type and code.

        ", "refs": { "CreateNetworkAclEntryRequest$IcmpTypeCode": "

        ICMP protocol: The ICMP type and code. Required if specifying ICMP for the protocol.

        ", "NetworkAclEntry$IcmpTypeCode": "

        ICMP protocol: The ICMP type and code.

        ", "ReplaceNetworkAclEntryRequest$IcmpTypeCode": "

        ICMP protocol: The ICMP type and code. Required if specifying 1 (ICMP) for the protocol.

        " } }, "IdFormat": { "base": "

        Describes the ID format for a resource.

        ", "refs": { "IdFormatList$member": null } }, "IdFormatList": { "base": null, "refs": { "DescribeIdFormatResult$Statuses": "

        Information about the ID format for the resource.

        ", "DescribeIdentityIdFormatResult$Statuses": "

        Information about the ID format for the resources.

        " } }, "Image": { "base": "

        Describes an image.

        ", "refs": { "ImageList$member": null } }, "ImageAttribute": { "base": "

        Describes an image attribute.

        ", "refs": { } }, "ImageAttributeName": { "base": null, "refs": { "DescribeImageAttributeRequest$Attribute": "

        The AMI attribute.

        Note: Depending on your account privileges, the blockDeviceMapping attribute may return a Client.AuthFailure error. If this happens, use DescribeImages to get information about the block device mapping for the AMI.

        " } }, "ImageDiskContainer": { "base": "

        Describes the disk container object for an import image task.

        ", "refs": { "ImageDiskContainerList$member": null } }, "ImageDiskContainerList": { "base": null, "refs": { "ImportImageRequest$DiskContainers": "

        Information about the disk containers.

        " } }, "ImageIdStringList": { "base": null, "refs": { "DescribeImagesRequest$ImageIds": "

        One or more image IDs.

        Default: Describes all images available to you.

        " } }, "ImageList": { "base": null, "refs": { "DescribeImagesResult$Images": "

        Information about one or more images.

        " } }, "ImageState": { "base": null, "refs": { "Image$State": "

        The current state of the AMI. If the state is available, the image is successfully registered and can be used to launch an instance.

        " } }, "ImageTypeValues": { "base": null, "refs": { "Image$ImageType": "

        The type of image.

        " } }, "ImportImageRequest": { "base": "

        Contains the parameters for ImportImage.

        ", "refs": { } }, "ImportImageResult": { "base": "

        Contains the output for ImportImage.

        ", "refs": { } }, "ImportImageTask": { "base": "

        Describes an import image task.

        ", "refs": { "ImportImageTaskList$member": null } }, "ImportImageTaskList": { "base": null, "refs": { "DescribeImportImageTasksResult$ImportImageTasks": "

        A list of zero or more import image tasks that are currently active or were completed or canceled in the previous 7 days.

        " } }, "ImportInstanceLaunchSpecification": { "base": "

        Describes the launch specification for VM import.

        ", "refs": { "ImportInstanceRequest$LaunchSpecification": "

        The launch specification.

        " } }, "ImportInstanceRequest": { "base": "

        Contains the parameters for ImportInstance.

        ", "refs": { } }, "ImportInstanceResult": { "base": "

        Contains the output for ImportInstance.

        ", "refs": { } }, "ImportInstanceTaskDetails": { "base": "

        Describes an import instance task.

        ", "refs": { "ConversionTask$ImportInstance": "

        If the task is for importing an instance, this contains information about the import instance task.

        " } }, "ImportInstanceVolumeDetailItem": { "base": "

        Describes an import volume task.

        ", "refs": { "ImportInstanceVolumeDetailSet$member": null } }, "ImportInstanceVolumeDetailSet": { "base": null, "refs": { "ImportInstanceTaskDetails$Volumes": "

        One or more volumes.

        " } }, "ImportKeyPairRequest": { "base": "

        Contains the parameters for ImportKeyPair.

        ", "refs": { } }, "ImportKeyPairResult": { "base": "

        Contains the output of ImportKeyPair.

        ", "refs": { } }, "ImportSnapshotRequest": { "base": "

        Contains the parameters for ImportSnapshot.

        ", "refs": { } }, "ImportSnapshotResult": { "base": "

        Contains the output for ImportSnapshot.

        ", "refs": { } }, "ImportSnapshotTask": { "base": "

        Describes an import snapshot task.

        ", "refs": { "ImportSnapshotTaskList$member": null } }, "ImportSnapshotTaskList": { "base": null, "refs": { "DescribeImportSnapshotTasksResult$ImportSnapshotTasks": "

        A list of zero or more import snapshot tasks that are currently active or were completed or canceled in the previous 7 days.

        " } }, "ImportTaskIdList": { "base": null, "refs": { "DescribeImportImageTasksRequest$ImportTaskIds": "

        A list of import image task IDs.

        ", "DescribeImportSnapshotTasksRequest$ImportTaskIds": "

        A list of import snapshot task IDs.

        " } }, "ImportVolumeRequest": { "base": "

        Contains the parameters for ImportVolume.

        ", "refs": { } }, "ImportVolumeResult": { "base": "

        Contains the output for ImportVolume.

        ", "refs": { } }, "ImportVolumeTaskDetails": { "base": "

        Describes an import volume task.

        ", "refs": { "ConversionTask$ImportVolume": "

        If the task is for importing a volume, this contains information about the import volume task.

        " } }, "Instance": { "base": "

        Describes an instance.

        ", "refs": { "InstanceList$member": null } }, "InstanceAttribute": { "base": "

        Describes an instance attribute.

        ", "refs": { } }, "InstanceAttributeName": { "base": null, "refs": { "DescribeInstanceAttributeRequest$Attribute": "

        The instance attribute.

        Note: The enaSupport attribute is not supported at this time.

        ", "ModifyInstanceAttributeRequest$Attribute": "

        The name of the attribute.

        ", "ResetInstanceAttributeRequest$Attribute": "

        The attribute to reset.

        You can only reset the following attributes: kernel | ramdisk | sourceDestCheck. To change an instance attribute, use ModifyInstanceAttribute.

        " } }, "InstanceBlockDeviceMapping": { "base": "

        Describes a block device mapping.

        ", "refs": { "InstanceBlockDeviceMappingList$member": null } }, "InstanceBlockDeviceMappingList": { "base": null, "refs": { "Instance$BlockDeviceMappings": "

        Any block device mapping entries for the instance.

        ", "InstanceAttribute$BlockDeviceMappings": "

        The block device mapping of the instance.

        " } }, "InstanceBlockDeviceMappingSpecification": { "base": "

        Describes a block device mapping entry.

        ", "refs": { "InstanceBlockDeviceMappingSpecificationList$member": null } }, "InstanceBlockDeviceMappingSpecificationList": { "base": null, "refs": { "ModifyInstanceAttributeRequest$BlockDeviceMappings": "

        Modifies the DeleteOnTermination attribute for volumes that are currently attached. The volume must be owned by the caller. If no value is specified for DeleteOnTermination, the default is true and the volume is deleted when the instance is terminated.

        To add instance store volumes to an Amazon EBS-backed instance, you must add them when you launch the instance. For more information, see Updating the Block Device Mapping when Launching an Instance in the Amazon Elastic Compute Cloud User Guide.

        " } }, "InstanceCapacity": { "base": "

        Information about the instance type that the Dedicated Host supports.

        ", "refs": { "AvailableInstanceCapacityList$member": null } }, "InstanceCount": { "base": "

        Describes a Reserved Instance listing state.

        ", "refs": { "InstanceCountList$member": null } }, "InstanceCountList": { "base": null, "refs": { "ReservedInstancesListing$InstanceCounts": "

        The number of instances in this state.

        " } }, "InstanceExportDetails": { "base": "

        Describes an instance to export.

        ", "refs": { "ExportTask$InstanceExportDetails": "

        Information about the instance to export.

        " } }, "InstanceIdSet": { "base": null, "refs": { "RunScheduledInstancesResult$InstanceIdSet": "

        The IDs of the newly launched instances.

        " } }, "InstanceIdStringList": { "base": null, "refs": { "DescribeClassicLinkInstancesRequest$InstanceIds": "

        One or more instance IDs. Must be instances linked to a VPC through ClassicLink.

        ", "DescribeInstanceStatusRequest$InstanceIds": "

        One or more instance IDs.

        Default: Describes all your instances.

        Constraints: Maximum 100 explicitly specified instance IDs.

        ", "DescribeInstancesRequest$InstanceIds": "

        One or more instance IDs.

        Default: Describes all your instances.

        ", "MonitorInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "RebootInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "ReportInstanceStatusRequest$Instances": "

        One or more instances.

        ", "StartInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "StopInstancesRequest$InstanceIds": "

        One or more instance IDs.

        ", "TerminateInstancesRequest$InstanceIds": "

        One or more instance IDs.

        Constraints: Up to 1000 instance IDs. We recommend breaking up this request into smaller batches.

        ", "UnmonitorInstancesRequest$InstanceIds": "

        One or more instance IDs.

        " } }, "InstanceLifecycleType": { "base": null, "refs": { "Instance$InstanceLifecycle": "

        Indicates whether this is a Spot instance or a Scheduled Instance.

        " } }, "InstanceList": { "base": null, "refs": { "Reservation$Instances": "

        One or more instances.

        " } }, "InstanceMonitoring": { "base": "

        Describes the monitoring information of the instance.

        ", "refs": { "InstanceMonitoringList$member": null } }, "InstanceMonitoringList": { "base": null, "refs": { "MonitorInstancesResult$InstanceMonitorings": "

        Monitoring information for one or more instances.

        ", "UnmonitorInstancesResult$InstanceMonitorings": "

        Monitoring information for one or more instances.

        " } }, "InstanceNetworkInterface": { "base": "

        Describes a network interface.

        ", "refs": { "InstanceNetworkInterfaceList$member": null } }, "InstanceNetworkInterfaceAssociation": { "base": "

        Describes association information for an Elastic IP address.

        ", "refs": { "InstanceNetworkInterface$Association": "

        The association information for an Elastic IP associated with the network interface.

        ", "InstancePrivateIpAddress$Association": "

        The association information for an Elastic IP address for the network interface.

        " } }, "InstanceNetworkInterfaceAttachment": { "base": "

        Describes a network interface attachment.

        ", "refs": { "InstanceNetworkInterface$Attachment": "

        The network interface attachment.

        " } }, "InstanceNetworkInterfaceList": { "base": null, "refs": { "Instance$NetworkInterfaces": "

        [EC2-VPC] One or more network interfaces for the instance.

        " } }, "InstanceNetworkInterfaceSpecification": { "base": "

        Describes a network interface.

        ", "refs": { "InstanceNetworkInterfaceSpecificationList$member": null } }, "InstanceNetworkInterfaceSpecificationList": { "base": null, "refs": { "LaunchSpecification$NetworkInterfaces": "

        One or more network interfaces.

        ", "RequestSpotLaunchSpecification$NetworkInterfaces": "

        One or more network interfaces.

        ", "RunInstancesRequest$NetworkInterfaces": "

        One or more network interfaces.

        ", "SpotFleetLaunchSpecification$NetworkInterfaces": "

        One or more network interfaces.

        " } }, "InstancePrivateIpAddress": { "base": "

        Describes a private IP address.

        ", "refs": { "InstancePrivateIpAddressList$member": null } }, "InstancePrivateIpAddressList": { "base": null, "refs": { "InstanceNetworkInterface$PrivateIpAddresses": "

        The private IP addresses associated with the network interface.

        " } }, "InstanceState": { "base": "

        Describes the current state of the instance.

        ", "refs": { "Instance$State": "

        The current state of the instance.

        ", "InstanceStateChange$CurrentState": "

        The current state of the instance.

        ", "InstanceStateChange$PreviousState": "

        The previous state of the instance.

        ", "InstanceStatus$InstanceState": "

        The intended state of the instance. DescribeInstanceStatus requires that an instance be in the running state.

        " } }, "InstanceStateChange": { "base": "

        Describes an instance state change.

        ", "refs": { "InstanceStateChangeList$member": null } }, "InstanceStateChangeList": { "base": null, "refs": { "StartInstancesResult$StartingInstances": "

        Information about one or more started instances.

        ", "StopInstancesResult$StoppingInstances": "

        Information about one or more stopped instances.

        ", "TerminateInstancesResult$TerminatingInstances": "

        Information about one or more terminated instances.

        " } }, "InstanceStateName": { "base": null, "refs": { "InstanceState$Name": "

        The current state of the instance.

        " } }, "InstanceStatus": { "base": "

        Describes the status of an instance.

        ", "refs": { "InstanceStatusList$member": null } }, "InstanceStatusDetails": { "base": "

        Describes the instance status.

        ", "refs": { "InstanceStatusDetailsList$member": null } }, "InstanceStatusDetailsList": { "base": null, "refs": { "InstanceStatusSummary$Details": "

        The system instance health or application instance health.

        " } }, "InstanceStatusEvent": { "base": "

        Describes a scheduled event for an instance.

        ", "refs": { "InstanceStatusEventList$member": null } }, "InstanceStatusEventList": { "base": null, "refs": { "InstanceStatus$Events": "

        Any scheduled events associated with the instance.

        " } }, "InstanceStatusList": { "base": null, "refs": { "DescribeInstanceStatusResult$InstanceStatuses": "

        One or more instance status descriptions.

        " } }, "InstanceStatusSummary": { "base": "

        Describes the status of an instance.

        ", "refs": { "InstanceStatus$SystemStatus": "

        Reports impaired functionality that stems from issues related to the systems that support an instance, such as hardware failures and network connectivity problems.

        ", "InstanceStatus$InstanceStatus": "

        Reports impaired functionality that stems from issues internal to the instance, such as impaired reachability.

        " } }, "InstanceType": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$InstanceType": "

        The instance type that the reservation will cover (for example, m1.small). For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide.

        ", "ImportInstanceLaunchSpecification$InstanceType": "

        The instance type. For more information about the instance types that you can import, see Instance Types in the VM Import/Export User Guide.

        ", "Instance$InstanceType": "

        The instance type.

        ", "InstanceTypeList$member": null, "LaunchSpecification$InstanceType": "

        The instance type.

        ", "RequestSpotLaunchSpecification$InstanceType": "

        The instance type.

        ", "ReservedInstances$InstanceType": "

        The instance type on which the Reserved Instance can be used.

        ", "ReservedInstancesConfiguration$InstanceType": "

        The instance type for the modified Reserved Instances.

        ", "ReservedInstancesOffering$InstanceType": "

        The instance type on which the Reserved Instance can be used.

        ", "RunInstancesRequest$InstanceType": "

        The instance type. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide.

        Default: m1.small

        ", "SpotFleetLaunchSpecification$InstanceType": "

        The instance type.

        ", "SpotPrice$InstanceType": "

        The instance type.

        " } }, "InstanceTypeList": { "base": null, "refs": { "DescribeSpotPriceHistoryRequest$InstanceTypes": "

        Filters the results by the specified instance types.

        " } }, "Integer": { "base": null, "refs": { "AllocateHostsRequest$Quantity": "

        The number of Dedicated Hosts you want to allocate to your account with these parameters.

        ", "AssignPrivateIpAddressesRequest$SecondaryPrivateIpAddressCount": "

        The number of secondary IP addresses to assign to the network interface. You can't specify this parameter when also specifying private IP addresses.

        ", "AttachNetworkInterfaceRequest$DeviceIndex": "

        The index of the device for the network interface attachment.

        ", "AuthorizeSecurityGroupEgressRequest$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. We recommend that you specify the port range in a set of IP permissions instead.

        ", "AuthorizeSecurityGroupEgressRequest$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP type number. We recommend that you specify the port range in a set of IP permissions instead.

        ", "AuthorizeSecurityGroupIngressRequest$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. For the ICMP type number, use -1 to specify all ICMP types.

        ", "AuthorizeSecurityGroupIngressRequest$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP code number. For the ICMP code number, use -1 to specify all ICMP codes for the ICMP type.

        ", "AvailableCapacity$AvailableVCpus": "

        The number of vCPUs available on the Dedicated Host.

        ", "CreateCustomerGatewayRequest$BgpAsn": "

        For devices that support BGP, the customer gateway's BGP ASN.

        Default: 65000

        ", "CreateNetworkAclEntryRequest$RuleNumber": "

        The rule number for the entry (for example, 100). ACL entries are processed in ascending order by rule number.

        Constraints: Positive integer from 1 to 32766. The range 32767 to 65535 is reserved for internal use.

        ", "CreateNetworkInterfaceRequest$SecondaryPrivateIpAddressCount": "

        The number of secondary private IP addresses to assign to a network interface. When you specify a number of secondary IP addresses, Amazon EC2 selects these IP addresses within the subnet range. You can't specify this option and specify more than one private IP address using privateIpAddresses.

        The number of IP addresses you can assign to a network interface varies by instance type. For more information, see Private IP Addresses Per ENI Per Instance Type in the Amazon Elastic Compute Cloud User Guide.

        ", "CreateReservedInstancesListingRequest$InstanceCount": "

        The number of instances that are a part of a Reserved Instance account to be listed in the Reserved Instance Marketplace. This number should be less than or equal to the instance count associated with the Reserved Instance ID specified in this call.

        ", "CreateVolumeRequest$Size": "

        The size of the volume, in GiBs.

        Constraints: 1-16384 for gp2, 4-16384 for io1, 500-16384 for st1, 500-16384 for sc1, and 1-1024 for standard. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size.

        Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

        ", "CreateVolumeRequest$Iops": "

        Only valid for Provisioned IOPS SSD volumes. The number of I/O operations per second (IOPS) to provision for the volume, with a maximum ratio of 30 IOPS/GiB.

        Constraint: Range is 100 to 20000 for Provisioned IOPS SSD volumes

        ", "DeleteNetworkAclEntryRequest$RuleNumber": "

        The rule number of the entry to delete.

        ", "DescribeClassicLinkInstancesRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. You cannot specify this parameter and the instance IDs parameter in the same request.

        Constraint: If the value is greater than 1000, we return only 1000 items.

        ", "DescribeFlowLogsRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. You cannot specify this parameter and the flow log IDs parameter in the same request.

        ", "DescribeHostReservationOfferingsRequest$MinDuration": "

        This is the minimum duration of the reservation you'd like to purchase, specified in seconds. Reservations are available in one-year and three-year terms. The number of seconds specified must be the number of seconds in a year (365x24x60x60) times one of the supported durations (1 or 3). For example, specify 31536000 for one year.

        ", "DescribeHostReservationOfferingsRequest$MaxDuration": "

        This is the maximum duration of the reservation you'd like to purchase, specified in seconds. Reservations are available in one-year and three-year terms. The number of seconds specified must be the number of seconds in a year (365x24x60x60) times one of the supported durations (1 or 3). For example, specify 94608000 for three years.

        ", "DescribeHostReservationOfferingsRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500; if maxResults is given a larger value than 500, you will receive an error.

        ", "DescribeHostReservationsRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500; if maxResults is given a larger value than 500, you will receive an error.

        ", "DescribeHostsRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500; if maxResults is given a larger value than 500, you will receive an error. You cannot specify this parameter and the host IDs parameter in the same request.

        ", "DescribeImportImageTasksRequest$MaxResults": "

        The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeImportSnapshotTasksRequest$MaxResults": "

        The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeInstanceStatusRequest$MaxResults": "

        The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. This value can be between 5 and 1000. You cannot specify this parameter and the instance IDs parameter in the same call.

        ", "DescribeInstancesRequest$MaxResults": "

        The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. This value can be between 5 and 1000. You cannot specify this parameter and the instance IDs parameter or tag filters in the same call.

        ", "DescribeMovingAddressesRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value outside of this range, an error is returned.

        Default: If no value is provided, the default is 1000.

        ", "DescribeNatGatewaysRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        Constraint: If the value specified is greater than 1000, we return only 1000 items.

        ", "DescribePrefixListsRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        Constraint: If the value specified is greater than 1000, we return only 1000 items.

        ", "DescribeReservedInstancesOfferingsRequest$MaxResults": "

        The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. The maximum is 100.

        Default: 100

        ", "DescribeReservedInstancesOfferingsRequest$MaxInstanceCount": "

        The maximum number of instances to filter when searching for offerings.

        Default: 20

        ", "DescribeScheduledInstanceAvailabilityRequest$MinSlotDurationInHours": "

        The minimum available duration, in hours. The minimum required duration is 1,200 hours per year. For example, the minimum daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the minimum monthly schedule is 100 hours.

        ", "DescribeScheduledInstanceAvailabilityRequest$MaxSlotDurationInHours": "

        The maximum available duration, in hours. This value must be greater than MinSlotDurationInHours and less than 1,720.

        ", "DescribeScheduledInstanceAvailabilityRequest$MaxResults": "

        The maximum number of results to return in a single call. This value can be between 5 and 300. The default value is 300. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeScheduledInstancesRequest$MaxResults": "

        The maximum number of results to return in a single call. This value can be between 5 and 300. The default value is 100. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeSnapshotsRequest$MaxResults": "

        The maximum number of snapshot results returned by DescribeSnapshots in paginated output. When this parameter is used, DescribeSnapshots only returns MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another DescribeSnapshots request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. If this parameter is not used, then DescribeSnapshots returns all results. You cannot specify this parameter and the snapshot IDs parameter in the same request.

        ", "DescribeSpotFleetInstancesRequest$MaxResults": "

        The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeSpotFleetRequestHistoryRequest$MaxResults": "

        The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeSpotFleetRequestsRequest$MaxResults": "

        The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeSpotPriceHistoryRequest$MaxResults": "

        The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeTagsRequest$MaxResults": "

        The maximum number of results to return in a single call. This value can be between 5 and 1000. To retrieve the remaining results, make another call with the returned NextToken value.

        ", "DescribeVolumeStatusRequest$MaxResults": "

        The maximum number of volume results returned by DescribeVolumeStatus in paginated output. When this parameter is used, the request only returns MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. If this parameter is not used, then DescribeVolumeStatus returns all results. You cannot specify this parameter and the volume IDs parameter in the same request.

        ", "DescribeVolumesRequest$MaxResults": "

        The maximum number of volume results returned by DescribeVolumes in paginated output. When this parameter is used, DescribeVolumes only returns MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another DescribeVolumes request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. If this parameter is not used, then DescribeVolumes returns all results. You cannot specify this parameter and the volume IDs parameter in the same request.

        ", "DescribeVpcEndpointServicesRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        Constraint: If the value is greater than 1000, we return only 1000 items.

        ", "DescribeVpcEndpointsRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        Constraint: If the value is greater than 1000, we return only 1000 items.

        ", "EbsBlockDevice$VolumeSize": "

        The size of the volume, in GiB.

        Constraints: 1-16384 for General Purpose SSD (gp2), 4-16384 for Provisioned IOPS SSD (io1), 500-16384 for Throughput Optimized HDD (st1), 500-16384 for Cold HDD (sc1), and 1-1024 for Magnetic (standard) volumes. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size.

        Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

        ", "EbsBlockDevice$Iops": "

        The number of I/O operations per second (IOPS) that the volume supports. For io1, this represents the number of IOPS that are provisioned for the volume. For gp2, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information about General Purpose SSD baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

        Constraint: Range is 100-20000 IOPS for io1 volumes and 100-10000 IOPS for gp2 volumes.

        Condition: This parameter is required for requests to create io1 volumes; it is not used in requests to create gp2, st1, sc1, or standard volumes.

        ", "HostOffering$Duration": "

        The duration of the offering (in seconds).

        ", "HostProperties$Sockets": "

        The number of sockets on the Dedicated Host.

        ", "HostProperties$Cores": "

        The number of cores on the Dedicated Host.

        ", "HostProperties$TotalVCpus": "

        The number of vCPUs on the Dedicated Host.

        ", "HostReservation$Count": "

        The number of Dedicated Hosts the reservation is associated with.

        ", "HostReservation$Duration": "

        The length of the reservation's term, specified in seconds. Can be 31536000 (1 year) | 94608000 (3 years).

        ", "IcmpTypeCode$Type": "

        The ICMP code. A value of -1 means all codes for the specified ICMP type.

        ", "IcmpTypeCode$Code": "

        The ICMP type. A value of -1 means all types.

        ", "Instance$AmiLaunchIndex": "

        The AMI launch index, which can be used to find this instance in the launch group.

        ", "InstanceCapacity$AvailableCapacity": "

        The number of instances that can still be launched onto the Dedicated Host.

        ", "InstanceCapacity$TotalCapacity": "

        The total number of instances that can be launched onto the Dedicated Host.

        ", "InstanceCount$InstanceCount": "

        The number of listed Reserved Instances in the state specified by the state.

        ", "InstanceNetworkInterfaceAttachment$DeviceIndex": "

        The index of the device on the instance for the network interface attachment.

        ", "InstanceNetworkInterfaceSpecification$DeviceIndex": "

        The index of the device on the instance for the network interface attachment. If you are specifying a network interface in a RunInstances request, you must provide the device index.

        ", "InstanceNetworkInterfaceSpecification$SecondaryPrivateIpAddressCount": "

        The number of secondary private IP addresses. You can't specify this option and specify more than one private IP address using the private IP addresses option. You cannot specify this option if you're launching more than one instance in a RunInstances request.

        ", "InstanceState$Code": "

        The low byte represents the state. The high byte is an opaque internal value and should be ignored.

        • 0 : pending

        • 16 : running

        • 32 : shutting-down

        • 48 : terminated

        • 64 : stopping

        • 80 : stopped

        ", "IpPermission$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. A value of -1 indicates all ICMP types.

        ", "IpPermission$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP code. A value of -1 indicates all ICMP codes for the specified ICMP type.

        ", "ModifySpotFleetRequestRequest$TargetCapacity": "

        The size of the fleet.

        ", "NetworkAclEntry$RuleNumber": "

        The rule number for the entry. ACL entries are processed in ascending order by rule number.

        ", "NetworkInterfaceAttachment$DeviceIndex": "

        The device index of the network interface attachment on the instance.

        ", "OccurrenceDayRequestSet$member": null, "OccurrenceDaySet$member": null, "PortRange$From": "

        The first port in the range.

        ", "PortRange$To": "

        The last port in the range.

        ", "PricingDetail$Count": "

        The number of reservations available for the price.

        ", "Purchase$Duration": "

        The duration of the reservation's term in seconds.

        ", "PurchaseRequest$InstanceCount": "

        The number of instances.

        ", "PurchaseReservedInstancesOfferingRequest$InstanceCount": "

        The number of Reserved Instances to purchase.

        ", "ReplaceNetworkAclEntryRequest$RuleNumber": "

        The rule number of the entry to replace.

        ", "RequestSpotInstancesRequest$InstanceCount": "

        The maximum number of Spot instances to launch.

        Default: 1

        ", "RequestSpotInstancesRequest$BlockDurationMinutes": "

        The required duration for the Spot instances (also known as Spot blocks), in minutes. This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360).

        The duration period starts as soon as your Spot instance receives its instance ID. At the end of the duration period, Amazon EC2 marks the Spot instance for termination and provides a Spot instance termination notice, which gives the instance a two-minute warning before it terminates.

        Note that you can't specify an Availability Zone group or a launch group if you specify a duration.

        ", "ReservedInstances$InstanceCount": "

        The number of reservations purchased.

        ", "ReservedInstancesConfiguration$InstanceCount": "

        The number of modified Reserved Instances.

        ", "RevokeSecurityGroupEgressRequest$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. We recommend that you specify the port range in a set of IP permissions instead.

        ", "RevokeSecurityGroupEgressRequest$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP type number. We recommend that you specify the port range in a set of IP permissions instead.

        ", "RevokeSecurityGroupIngressRequest$FromPort": "

        The start of port range for the TCP and UDP protocols, or an ICMP type number. For the ICMP type number, use -1 to specify all ICMP types.

        ", "RevokeSecurityGroupIngressRequest$ToPort": "

        The end of port range for the TCP and UDP protocols, or an ICMP code number. For the ICMP code number, use -1 to specify all ICMP codes for the ICMP type.

        ", "RunInstancesRequest$MinCount": "

        The minimum number of instances to launch. If you specify a minimum that is more instances than Amazon EC2 can launch in the target Availability Zone, Amazon EC2 launches no instances.

        Constraints: Between 1 and the maximum number you're allowed for the specified instance type. For more information about the default limits, and how to request an increase, see How many instances can I run in Amazon EC2 in the Amazon EC2 General FAQ.

        ", "RunInstancesRequest$MaxCount": "

        The maximum number of instances to launch. If you specify more instances than Amazon EC2 can launch in the target Availability Zone, Amazon EC2 launches the largest possible number of instances above MinCount.

        Constraints: Between 1 and the maximum number you're allowed for the specified instance type. For more information about the default limits, and how to request an increase, see How many instances can I run in Amazon EC2 in the Amazon EC2 FAQ.

        ", "RunScheduledInstancesRequest$InstanceCount": "

        The number of instances.

        Default: 1

        ", "ScheduledInstance$SlotDurationInHours": "

        The number of hours in the schedule.

        ", "ScheduledInstance$TotalScheduledInstanceHours": "

        The total number of hours for a single instance for the entire term.

        ", "ScheduledInstance$InstanceCount": "

        The number of instances.

        ", "ScheduledInstanceAvailability$SlotDurationInHours": "

        The number of hours in the schedule.

        ", "ScheduledInstanceAvailability$TotalScheduledInstanceHours": "

        The total number of hours for a single instance for the entire term.

        ", "ScheduledInstanceAvailability$AvailableInstanceCount": "

        The number of available instances.

        ", "ScheduledInstanceAvailability$MinTermDurationInDays": "

        The minimum term. The only possible value is 365 days.

        ", "ScheduledInstanceAvailability$MaxTermDurationInDays": "

        The maximum term. The only possible value is 365 days.

        ", "ScheduledInstanceRecurrence$Interval": "

        The interval quantity. The interval unit depends on the value of frequency. For example, every 2 weeks or every 2 months.

        ", "ScheduledInstanceRecurrenceRequest$Interval": "

        The interval quantity. The interval unit depends on the value of Frequency. For example, every 2 weeks or every 2 months.

        ", "ScheduledInstancesEbs$VolumeSize": "

        The size of the volume, in GiB.

        Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

        ", "ScheduledInstancesEbs$Iops": "

        The number of I/O operations per second (IOPS) that the volume supports. For io1 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information about gp2 baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

        Constraint: Range is 100-20000 IOPS for io1 volumes and 100-10000 IOPS for gp2 volumes.

        Condition: This parameter is required for requests to create io1volumes; it is not used in requests to create gp2, st1, sc1, or standard volumes.

        ", "ScheduledInstancesNetworkInterface$DeviceIndex": "

        The index of the device for the network interface attachment.

        ", "ScheduledInstancesNetworkInterface$SecondaryPrivateIpAddressCount": "

        The number of secondary private IP addresses.

        ", "Snapshot$VolumeSize": "

        The size of the volume, in GiB.

        ", "SpotFleetRequestConfigData$TargetCapacity": "

        The number of units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O.

        ", "SpotInstanceRequest$BlockDurationMinutes": "

        The duration for the Spot instance, in minutes.

        ", "StaleIpPermission$FromPort": "

        The start of the port range for the TCP and UDP protocols, or an ICMP type number. A value of -1 indicates all ICMP types.

        ", "StaleIpPermission$ToPort": "

        The end of the port range for the TCP and UDP protocols, or an ICMP type number. A value of -1 indicates all ICMP types.

        ", "Subnet$AvailableIpAddressCount": "

        The number of unused IP addresses in the subnet. Note that the IP addresses for any stopped instances are considered unavailable.

        ", "TargetConfiguration$InstanceCount": "

        The number of instances the Convertible Reserved Instance offering can be applied to. This parameter is reserved and cannot be specified in a request

        ", "TargetConfigurationRequest$InstanceCount": "

        The number of instances the Covertible Reserved Instance offering can be applied to. This parameter is reserved and cannot be specified in a request

        ", "VgwTelemetry$AcceptedRouteCount": "

        The number of accepted routes.

        ", "Volume$Size": "

        The size of the volume, in GiBs.

        ", "Volume$Iops": "

        The number of I/O operations per second (IOPS) that the volume supports. For Provisioned IOPS SSD volumes, this represents the number of IOPS that are provisioned for the volume. For General Purpose SSD volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information on General Purpose SSD baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

        Constraint: Range is 100-20000 IOPS for io1 volumes and 100-10000 IOPS for gp2 volumes.

        Condition: This parameter is required for requests to create io1 volumes; it is not used in requests to create gp2, st1, sc1, or standard volumes.

        " } }, "InternetGateway": { "base": "

        Describes an Internet gateway.

        ", "refs": { "CreateInternetGatewayResult$InternetGateway": "

        Information about the Internet gateway.

        ", "InternetGatewayList$member": null } }, "InternetGatewayAttachment": { "base": "

        Describes the attachment of a VPC to an Internet gateway.

        ", "refs": { "InternetGatewayAttachmentList$member": null } }, "InternetGatewayAttachmentList": { "base": null, "refs": { "InternetGateway$Attachments": "

        Any VPCs attached to the Internet gateway.

        " } }, "InternetGatewayList": { "base": null, "refs": { "DescribeInternetGatewaysResult$InternetGateways": "

        Information about one or more Internet gateways.

        " } }, "IpPermission": { "base": "

        Describes a security group rule.

        ", "refs": { "IpPermissionList$member": null } }, "IpPermissionList": { "base": null, "refs": { "AuthorizeSecurityGroupEgressRequest$IpPermissions": "

        A set of IP permissions. You can't specify a destination security group and a CIDR IP address range.

        ", "AuthorizeSecurityGroupIngressRequest$IpPermissions": "

        A set of IP permissions. Can be used to specify multiple rules in a single command.

        ", "RevokeSecurityGroupEgressRequest$IpPermissions": "

        A set of IP permissions. You can't specify a destination security group and a CIDR IP address range.

        ", "RevokeSecurityGroupIngressRequest$IpPermissions": "

        A set of IP permissions. You can't specify a source security group and a CIDR IP address range.

        ", "SecurityGroup$IpPermissions": "

        One or more inbound rules associated with the security group.

        ", "SecurityGroup$IpPermissionsEgress": "

        [EC2-VPC] One or more outbound rules associated with the security group.

        " } }, "IpRange": { "base": "

        Describes an IP range.

        ", "refs": { "IpRangeList$member": null } }, "IpRangeList": { "base": null, "refs": { "IpPermission$IpRanges": "

        One or more IP ranges.

        " } }, "IpRanges": { "base": null, "refs": { "StaleIpPermission$IpRanges": "

        One or more IP ranges. Not applicable for stale security group rules.

        " } }, "KeyNameStringList": { "base": null, "refs": { "DescribeKeyPairsRequest$KeyNames": "

        One or more key pair names.

        Default: Describes all your key pairs.

        " } }, "KeyPair": { "base": "

        Describes a key pair.

        ", "refs": { } }, "KeyPairInfo": { "base": "

        Describes a key pair.

        ", "refs": { "KeyPairList$member": null } }, "KeyPairList": { "base": null, "refs": { "DescribeKeyPairsResult$KeyPairs": "

        Information about one or more key pairs.

        " } }, "LaunchPermission": { "base": "

        Describes a launch permission.

        ", "refs": { "LaunchPermissionList$member": null } }, "LaunchPermissionList": { "base": null, "refs": { "ImageAttribute$LaunchPermissions": "

        One or more launch permissions.

        ", "LaunchPermissionModifications$Add": "

        The AWS account ID to add to the list of launch permissions for the AMI.

        ", "LaunchPermissionModifications$Remove": "

        The AWS account ID to remove from the list of launch permissions for the AMI.

        " } }, "LaunchPermissionModifications": { "base": "

        Describes a launch permission modification.

        ", "refs": { "ModifyImageAttributeRequest$LaunchPermission": "

        A launch permission modification.

        " } }, "LaunchSpecification": { "base": "

        Describes the launch specification for an instance.

        ", "refs": { "SpotInstanceRequest$LaunchSpecification": "

        Additional information for launching instances.

        " } }, "LaunchSpecsList": { "base": null, "refs": { "SpotFleetRequestConfigData$LaunchSpecifications": "

        Information about the launch specifications for the Spot fleet request.

        " } }, "ListingState": { "base": null, "refs": { "InstanceCount$State": "

        The states of the listed Reserved Instances.

        " } }, "ListingStatus": { "base": null, "refs": { "ReservedInstancesListing$Status": "

        The status of the Reserved Instance listing.

        " } }, "Long": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$MinDuration": "

        The minimum duration (in seconds) to filter when searching for offerings.

        Default: 2592000 (1 month)

        ", "DescribeReservedInstancesOfferingsRequest$MaxDuration": "

        The maximum duration (in seconds) to filter when searching for offerings.

        Default: 94608000 (3 years)

        ", "DiskImageDescription$Size": "

        The size of the disk image, in GiB.

        ", "DiskImageDetail$Bytes": "

        The size of the disk image, in GiB.

        ", "DiskImageVolumeDescription$Size": "

        The size of the volume, in GiB.

        ", "ImportInstanceVolumeDetailItem$BytesConverted": "

        The number of bytes converted so far.

        ", "ImportVolumeTaskDetails$BytesConverted": "

        The number of bytes converted so far.

        ", "PriceSchedule$Term": "

        The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.

        ", "PriceScheduleSpecification$Term": "

        The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.

        ", "ReservedInstances$Duration": "

        The duration of the Reserved Instance, in seconds.

        ", "ReservedInstancesOffering$Duration": "

        The duration of the Reserved Instance, in seconds.

        ", "VolumeDetail$Size": "

        The size of the volume, in GiB.

        " } }, "MaxResults": { "base": null, "refs": { "DescribeStaleSecurityGroupsRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        ", "DescribeVpcClassicLinkDnsSupportRequest$MaxResults": "

        The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

        " } }, "ModifyHostsRequest": { "base": "

        Contains the parameters for ModifyHosts.

        ", "refs": { } }, "ModifyHostsResult": { "base": "

        Contains the output of ModifyHosts.

        ", "refs": { } }, "ModifyIdFormatRequest": { "base": "

        Contains the parameters of ModifyIdFormat.

        ", "refs": { } }, "ModifyIdentityIdFormatRequest": { "base": "

        Contains the parameters of ModifyIdentityIdFormat.

        ", "refs": { } }, "ModifyImageAttributeRequest": { "base": "

        Contains the parameters for ModifyImageAttribute.

        ", "refs": { } }, "ModifyInstanceAttributeRequest": { "base": "

        Contains the parameters for ModifyInstanceAttribute.

        ", "refs": { } }, "ModifyInstancePlacementRequest": { "base": "

        Contains the parameters for ModifyInstancePlacement.

        ", "refs": { } }, "ModifyInstancePlacementResult": { "base": "

        Contains the output of ModifyInstancePlacement.

        ", "refs": { } }, "ModifyNetworkInterfaceAttributeRequest": { "base": "

        Contains the parameters for ModifyNetworkInterfaceAttribute.

        ", "refs": { } }, "ModifyReservedInstancesRequest": { "base": "

        Contains the parameters for ModifyReservedInstances.

        ", "refs": { } }, "ModifyReservedInstancesResult": { "base": "

        Contains the output of ModifyReservedInstances.

        ", "refs": { } }, "ModifySnapshotAttributeRequest": { "base": "

        Contains the parameters for ModifySnapshotAttribute.

        ", "refs": { } }, "ModifySpotFleetRequestRequest": { "base": "

        Contains the parameters for ModifySpotFleetRequest.

        ", "refs": { } }, "ModifySpotFleetRequestResponse": { "base": "

        Contains the output of ModifySpotFleetRequest.

        ", "refs": { } }, "ModifySubnetAttributeRequest": { "base": "

        Contains the parameters for ModifySubnetAttribute.

        ", "refs": { } }, "ModifyVolumeAttributeRequest": { "base": "

        Contains the parameters for ModifyVolumeAttribute.

        ", "refs": { } }, "ModifyVpcAttributeRequest": { "base": "

        Contains the parameters for ModifyVpcAttribute.

        ", "refs": { } }, "ModifyVpcEndpointRequest": { "base": "

        Contains the parameters for ModifyVpcEndpoint.

        ", "refs": { } }, "ModifyVpcEndpointResult": { "base": "

        Contains the output of ModifyVpcEndpoint.

        ", "refs": { } }, "ModifyVpcPeeringConnectionOptionsRequest": { "base": null, "refs": { } }, "ModifyVpcPeeringConnectionOptionsResult": { "base": null, "refs": { } }, "MonitorInstancesRequest": { "base": "

        Contains the parameters for MonitorInstances.

        ", "refs": { } }, "MonitorInstancesResult": { "base": "

        Contains the output of MonitorInstances.

        ", "refs": { } }, "Monitoring": { "base": "

        Describes the monitoring for the instance.

        ", "refs": { "Instance$Monitoring": "

        The monitoring information for the instance.

        ", "InstanceMonitoring$Monitoring": "

        The monitoring information.

        " } }, "MonitoringState": { "base": null, "refs": { "Monitoring$State": "

        Indicates whether monitoring is enabled for the instance.

        " } }, "MoveAddressToVpcRequest": { "base": "

        Contains the parameters for MoveAddressToVpc.

        ", "refs": { } }, "MoveAddressToVpcResult": { "base": "

        Contains the output of MoveAddressToVpc.

        ", "refs": { } }, "MoveStatus": { "base": null, "refs": { "MovingAddressStatus$MoveStatus": "

        The status of the Elastic IP address that's being moved to the EC2-VPC platform, or restored to the EC2-Classic platform.

        " } }, "MovingAddressStatus": { "base": "

        Describes the status of a moving Elastic IP address.

        ", "refs": { "MovingAddressStatusSet$member": null } }, "MovingAddressStatusSet": { "base": null, "refs": { "DescribeMovingAddressesResult$MovingAddressStatuses": "

        The status for each Elastic IP address.

        " } }, "NatGateway": { "base": "

        Describes a NAT gateway.

        ", "refs": { "CreateNatGatewayResult$NatGateway": "

        Information about the NAT gateway.

        ", "NatGatewayList$member": null } }, "NatGatewayAddress": { "base": "

        Describes the IP addresses and network interface associated with a NAT gateway.

        ", "refs": { "NatGatewayAddressList$member": null } }, "NatGatewayAddressList": { "base": null, "refs": { "NatGateway$NatGatewayAddresses": "

        Information about the IP addresses and network interface associated with the NAT gateway.

        " } }, "NatGatewayList": { "base": null, "refs": { "DescribeNatGatewaysResult$NatGateways": "

        Information about the NAT gateways.

        " } }, "NatGatewayState": { "base": null, "refs": { "NatGateway$State": "

        The state of the NAT gateway.

        • pending: The NAT gateway is being created and is not ready to process traffic.

        • failed: The NAT gateway could not be created. Check the failureCode and failureMessage fields for the reason.

        • available: The NAT gateway is able to process traffic. This status remains until you delete the NAT gateway, and does not indicate the health of the NAT gateway.

        • deleting: The NAT gateway is in the process of being terminated and may still be processing traffic.

        • deleted: The NAT gateway has been terminated and is no longer processing traffic.

        " } }, "NetworkAcl": { "base": "

        Describes a network ACL.

        ", "refs": { "CreateNetworkAclResult$NetworkAcl": "

        Information about the network ACL.

        ", "NetworkAclList$member": null } }, "NetworkAclAssociation": { "base": "

        Describes an association between a network ACL and a subnet.

        ", "refs": { "NetworkAclAssociationList$member": null } }, "NetworkAclAssociationList": { "base": null, "refs": { "NetworkAcl$Associations": "

        Any associations between the network ACL and one or more subnets

        " } }, "NetworkAclEntry": { "base": "

        Describes an entry in a network ACL.

        ", "refs": { "NetworkAclEntryList$member": null } }, "NetworkAclEntryList": { "base": null, "refs": { "NetworkAcl$Entries": "

        One or more entries (rules) in the network ACL.

        " } }, "NetworkAclList": { "base": null, "refs": { "DescribeNetworkAclsResult$NetworkAcls": "

        Information about one or more network ACLs.

        " } }, "NetworkInterface": { "base": "

        Describes a network interface.

        ", "refs": { "CreateNetworkInterfaceResult$NetworkInterface": "

        Information about the network interface.

        ", "NetworkInterfaceList$member": null } }, "NetworkInterfaceAssociation": { "base": "

        Describes association information for an Elastic IP address.

        ", "refs": { "NetworkInterface$Association": "

        The association information for an Elastic IP associated with the network interface.

        ", "NetworkInterfacePrivateIpAddress$Association": "

        The association information for an Elastic IP address associated with the network interface.

        " } }, "NetworkInterfaceAttachment": { "base": "

        Describes a network interface attachment.

        ", "refs": { "DescribeNetworkInterfaceAttributeResult$Attachment": "

        The attachment (if any) of the network interface.

        ", "NetworkInterface$Attachment": "

        The network interface attachment.

        " } }, "NetworkInterfaceAttachmentChanges": { "base": "

        Describes an attachment change.

        ", "refs": { "ModifyNetworkInterfaceAttributeRequest$Attachment": "

        Information about the interface attachment. If modifying the 'delete on termination' attribute, you must specify the ID of the interface attachment.

        " } }, "NetworkInterfaceAttribute": { "base": null, "refs": { "DescribeNetworkInterfaceAttributeRequest$Attribute": "

        The attribute of the network interface.

        " } }, "NetworkInterfaceIdList": { "base": null, "refs": { "DescribeNetworkInterfacesRequest$NetworkInterfaceIds": "

        One or more network interface IDs.

        Default: Describes all your network interfaces.

        " } }, "NetworkInterfaceList": { "base": null, "refs": { "DescribeNetworkInterfacesResult$NetworkInterfaces": "

        Information about one or more network interfaces.

        " } }, "NetworkInterfacePrivateIpAddress": { "base": "

        Describes the private IP address of a network interface.

        ", "refs": { "NetworkInterfacePrivateIpAddressList$member": null } }, "NetworkInterfacePrivateIpAddressList": { "base": null, "refs": { "NetworkInterface$PrivateIpAddresses": "

        The private IP addresses associated with the network interface.

        " } }, "NetworkInterfaceStatus": { "base": null, "refs": { "InstanceNetworkInterface$Status": "

        The status of the network interface.

        ", "NetworkInterface$Status": "

        The status of the network interface.

        " } }, "NetworkInterfaceType": { "base": null, "refs": { "NetworkInterface$InterfaceType": "

        The type of interface.

        " } }, "NewDhcpConfiguration": { "base": null, "refs": { "NewDhcpConfigurationList$member": null } }, "NewDhcpConfigurationList": { "base": null, "refs": { "CreateDhcpOptionsRequest$DhcpConfigurations": "

        A DHCP configuration option.

        " } }, "NextToken": { "base": null, "refs": { "DescribeStaleSecurityGroupsRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a prior call.)

        ", "DescribeVpcClassicLinkDnsSupportRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a prior call.)

        ", "DescribeVpcClassicLinkDnsSupportResult$NextToken": "

        The token to use when requesting the next set of items.

        " } }, "OccurrenceDayRequestSet": { "base": null, "refs": { "ScheduledInstanceRecurrenceRequest$OccurrenceDays": "

        The days. For a monthly schedule, this is one or more days of the month (1-31). For a weekly schedule, this is one or more days of the week (1-7, where 1 is Sunday). You can't specify this value with a daily schedule. If the occurrence is relative to the end of the month, you can specify only a single day.

        " } }, "OccurrenceDaySet": { "base": null, "refs": { "ScheduledInstanceRecurrence$OccurrenceDaySet": "

        The days. For a monthly schedule, this is one or more days of the month (1-31). For a weekly schedule, this is one or more days of the week (1-7, where 1 is Sunday).

        " } }, "OfferingClassType": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$OfferingClass": "

        The offering class of the Reserved Instance. Can be standard or convertible.

        ", "DescribeReservedInstancesRequest$OfferingClass": "

        Describes whether the Reserved Instance is Standard or Convertible.

        ", "ReservedInstances$OfferingClass": "

        The offering class of the Reserved Instance.

        ", "ReservedInstancesOffering$OfferingClass": "

        If convertible it can be exchanged for Reserved Instances of the same or higher monetary value, with different configurations. If standard, it is not possible to perform an exchange.

        " } }, "OfferingTypeValues": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$OfferingType": "

        The Reserved Instance offering type. If you are using tools that predate the 2011-11-01 API version, you only have access to the Medium Utilization Reserved Instance offering type.

        ", "DescribeReservedInstancesRequest$OfferingType": "

        The Reserved Instance offering type. If you are using tools that predate the 2011-11-01 API version, you only have access to the Medium Utilization Reserved Instance offering type.

        ", "ReservedInstances$OfferingType": "

        The Reserved Instance offering type.

        ", "ReservedInstancesOffering$OfferingType": "

        The Reserved Instance offering type.

        " } }, "OperationType": { "base": null, "refs": { "ModifyImageAttributeRequest$OperationType": "

        The operation type.

        ", "ModifySnapshotAttributeRequest$OperationType": "

        The type of operation to perform to the attribute.

        " } }, "OwnerStringList": { "base": null, "refs": { "DescribeImagesRequest$Owners": "

        Filters the images by the owner. Specify an AWS account ID, self (owner is the sender of the request), or an AWS owner alias (valid values are amazon | aws-marketplace | microsoft). Omitting this option returns all images for which you have launch permissions, regardless of ownership.

        ", "DescribeSnapshotsRequest$OwnerIds": "

        Returns the snapshots owned by the specified owner. Multiple owners can be specified.

        " } }, "PaymentOption": { "base": null, "refs": { "HostOffering$PaymentOption": "

        The available payment option.

        ", "HostReservation$PaymentOption": "

        The payment option selected for this reservation.

        ", "Purchase$PaymentOption": "

        The payment option for the reservation.

        " } }, "PeeringConnectionOptions": { "base": "

        Describes the VPC peering connection options.

        ", "refs": { "ModifyVpcPeeringConnectionOptionsResult$RequesterPeeringConnectionOptions": "

        Information about the VPC peering connection options for the requester VPC.

        ", "ModifyVpcPeeringConnectionOptionsResult$AccepterPeeringConnectionOptions": "

        Information about the VPC peering connection options for the accepter VPC.

        " } }, "PeeringConnectionOptionsRequest": { "base": "

        The VPC peering connection options.

        ", "refs": { "ModifyVpcPeeringConnectionOptionsRequest$RequesterPeeringConnectionOptions": "

        The VPC peering connection options for the requester VPC.

        ", "ModifyVpcPeeringConnectionOptionsRequest$AccepterPeeringConnectionOptions": "

        The VPC peering connection options for the accepter VPC.

        " } }, "PermissionGroup": { "base": null, "refs": { "CreateVolumePermission$Group": "

        The specific group that is to be added or removed from a volume's list of create volume permissions.

        ", "LaunchPermission$Group": "

        The name of the group.

        " } }, "Placement": { "base": "

        Describes the placement for the instance.

        ", "refs": { "ImportInstanceLaunchSpecification$Placement": "

        The placement information for the instance.

        ", "Instance$Placement": "

        The location where the instance launched, if applicable.

        ", "RunInstancesRequest$Placement": "

        The placement for the instance.

        " } }, "PlacementGroup": { "base": "

        Describes a placement group.

        ", "refs": { "PlacementGroupList$member": null } }, "PlacementGroupList": { "base": null, "refs": { "DescribePlacementGroupsResult$PlacementGroups": "

        One or more placement groups.

        " } }, "PlacementGroupState": { "base": null, "refs": { "PlacementGroup$State": "

        The state of the placement group.

        " } }, "PlacementGroupStringList": { "base": null, "refs": { "DescribePlacementGroupsRequest$GroupNames": "

        One or more placement group names.

        Default: Describes all your placement groups, or only those otherwise specified.

        " } }, "PlacementStrategy": { "base": null, "refs": { "CreatePlacementGroupRequest$Strategy": "

        The placement strategy.

        ", "PlacementGroup$Strategy": "

        The placement strategy.

        " } }, "PlatformValues": { "base": null, "refs": { "Image$Platform": "

        The value is Windows for Windows AMIs; otherwise blank.

        ", "ImportInstanceRequest$Platform": "

        The instance operating system.

        ", "ImportInstanceTaskDetails$Platform": "

        The instance operating system.

        ", "Instance$Platform": "

        The value is Windows for Windows instances; otherwise blank.

        " } }, "PortRange": { "base": "

        Describes a range of ports.

        ", "refs": { "CreateNetworkAclEntryRequest$PortRange": "

        TCP or UDP protocols: The range of ports the rule applies to.

        ", "NetworkAclEntry$PortRange": "

        TCP or UDP protocols: The range of ports the rule applies to.

        ", "ReplaceNetworkAclEntryRequest$PortRange": "

        TCP or UDP protocols: The range of ports the rule applies to. Required if specifying 6 (TCP) or 17 (UDP) for the protocol.

        " } }, "PrefixList": { "base": "

        Describes prefixes for AWS services.

        ", "refs": { "PrefixListSet$member": null } }, "PrefixListId": { "base": "

        The ID of the prefix.

        ", "refs": { "PrefixListIdList$member": null } }, "PrefixListIdList": { "base": null, "refs": { "IpPermission$PrefixListIds": "

        (Valid for AuthorizeSecurityGroupEgress, RevokeSecurityGroupEgress and DescribeSecurityGroups only) One or more prefix list IDs for an AWS service. In an AuthorizeSecurityGroupEgress request, this is the AWS service that you want to access through a VPC endpoint from instances associated with the security group.

        " } }, "PrefixListIdSet": { "base": null, "refs": { "StaleIpPermission$PrefixListIds": "

        One or more prefix list IDs for an AWS service. Not applicable for stale security group rules.

        " } }, "PrefixListSet": { "base": null, "refs": { "DescribePrefixListsResult$PrefixLists": "

        All available prefix lists.

        " } }, "PriceSchedule": { "base": "

        Describes the price for a Reserved Instance.

        ", "refs": { "PriceScheduleList$member": null } }, "PriceScheduleList": { "base": null, "refs": { "ReservedInstancesListing$PriceSchedules": "

        The price of the Reserved Instance listing.

        " } }, "PriceScheduleSpecification": { "base": "

        Describes the price for a Reserved Instance.

        ", "refs": { "PriceScheduleSpecificationList$member": null } }, "PriceScheduleSpecificationList": { "base": null, "refs": { "CreateReservedInstancesListingRequest$PriceSchedules": "

        A list specifying the price of the Standard Reserved Instance for each month remaining in the Reserved Instance term.

        " } }, "PricingDetail": { "base": "

        Describes a Reserved Instance offering.

        ", "refs": { "PricingDetailsList$member": null } }, "PricingDetailsList": { "base": null, "refs": { "ReservedInstancesOffering$PricingDetails": "

        The pricing details of the Reserved Instance offering.

        " } }, "PrivateIpAddressConfigSet": { "base": null, "refs": { "ScheduledInstancesNetworkInterface$PrivateIpAddressConfigs": "

        The private IP addresses.

        " } }, "PrivateIpAddressSpecification": { "base": "

        Describes a secondary private IP address for a network interface.

        ", "refs": { "PrivateIpAddressSpecificationList$member": null } }, "PrivateIpAddressSpecificationList": { "base": null, "refs": { "CreateNetworkInterfaceRequest$PrivateIpAddresses": "

        One or more private IP addresses.

        ", "InstanceNetworkInterfaceSpecification$PrivateIpAddresses": "

        One or more private IP addresses to assign to the network interface. Only one private IP address can be designated as primary. You cannot specify this option if you're launching more than one instance in a RunInstances request.

        " } }, "PrivateIpAddressStringList": { "base": null, "refs": { "AssignPrivateIpAddressesRequest$PrivateIpAddresses": "

        One or more IP addresses to be assigned as a secondary private IP address to the network interface. You can't specify this parameter when also specifying a number of secondary IP addresses.

        If you don't specify an IP address, Amazon EC2 automatically selects an IP address within the subnet range.

        ", "UnassignPrivateIpAddressesRequest$PrivateIpAddresses": "

        The secondary private IP addresses to unassign from the network interface. You can specify this option multiple times to unassign more than one IP address.

        " } }, "ProductCode": { "base": "

        Describes a product code.

        ", "refs": { "ProductCodeList$member": null } }, "ProductCodeList": { "base": null, "refs": { "DescribeSnapshotAttributeResult$ProductCodes": "

        A list of product codes.

        ", "DescribeVolumeAttributeResult$ProductCodes": "

        A list of product codes.

        ", "Image$ProductCodes": "

        Any product codes associated with the AMI.

        ", "ImageAttribute$ProductCodes": "

        One or more product codes.

        ", "Instance$ProductCodes": "

        The product codes attached to this instance, if applicable.

        ", "InstanceAttribute$ProductCodes": "

        A list of product codes.

        " } }, "ProductCodeStringList": { "base": null, "refs": { "ModifyImageAttributeRequest$ProductCodes": "

        One or more product codes. After you add a product code to an AMI, it can't be removed. This is only valid when modifying the productCodes attribute.

        " } }, "ProductCodeValues": { "base": null, "refs": { "ProductCode$ProductCodeType": "

        The type of product code.

        " } }, "ProductDescriptionList": { "base": null, "refs": { "DescribeSpotPriceHistoryRequest$ProductDescriptions": "

        Filters the results by the specified basic product descriptions.

        " } }, "PropagatingVgw": { "base": "

        Describes a virtual private gateway propagating route.

        ", "refs": { "PropagatingVgwList$member": null } }, "PropagatingVgwList": { "base": null, "refs": { "RouteTable$PropagatingVgws": "

        Any virtual private gateway (VGW) propagating routes.

        " } }, "ProvisionedBandwidth": { "base": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        ", "refs": { "NatGateway$ProvisionedBandwidth": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        " } }, "PublicIpStringList": { "base": null, "refs": { "DescribeAddressesRequest$PublicIps": "

        [EC2-Classic] One or more Elastic IP addresses.

        Default: Describes all your Elastic IP addresses.

        " } }, "Purchase": { "base": "

        Describes the result of the purchase.

        ", "refs": { "PurchaseSet$member": null } }, "PurchaseHostReservationRequest": { "base": null, "refs": { } }, "PurchaseHostReservationResult": { "base": null, "refs": { } }, "PurchaseRequest": { "base": "

        Describes a request to purchase Scheduled Instances.

        ", "refs": { "PurchaseRequestSet$member": null } }, "PurchaseRequestSet": { "base": null, "refs": { "PurchaseScheduledInstancesRequest$PurchaseRequests": "

        One or more purchase requests.

        " } }, "PurchaseReservedInstancesOfferingRequest": { "base": "

        Contains the parameters for PurchaseReservedInstancesOffering.

        ", "refs": { } }, "PurchaseReservedInstancesOfferingResult": { "base": "

        Contains the output of PurchaseReservedInstancesOffering.

        ", "refs": { } }, "PurchaseScheduledInstancesRequest": { "base": "

        Contains the parameters for PurchaseScheduledInstances.

        ", "refs": { } }, "PurchaseScheduledInstancesResult": { "base": "

        Contains the output of PurchaseScheduledInstances.

        ", "refs": { } }, "PurchaseSet": { "base": null, "refs": { "GetHostReservationPurchasePreviewResult$Purchase": "

        The purchase information of the Dedicated Host Reservation and the Dedicated Hosts associated with it.

        ", "PurchaseHostReservationResult$Purchase": "

        Describes the details of the purchase.

        " } }, "PurchasedScheduledInstanceSet": { "base": null, "refs": { "PurchaseScheduledInstancesResult$ScheduledInstanceSet": "

        Information about the Scheduled Instances.

        " } }, "RIProductDescription": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$ProductDescription": "

        The Reserved Instance product platform description. Instances that include (Amazon VPC) in the description are for use with Amazon VPC.

        ", "ReservedInstances$ProductDescription": "

        The Reserved Instance product platform description.

        ", "ReservedInstancesOffering$ProductDescription": "

        The Reserved Instance product platform description.

        ", "SpotInstanceRequest$ProductDescription": "

        The product description associated with the Spot instance.

        ", "SpotPrice$ProductDescription": "

        A general description of the AMI.

        " } }, "ReasonCodesList": { "base": null, "refs": { "ReportInstanceStatusRequest$ReasonCodes": "

        One or more reason codes that describes the health state of your instance.

        • instance-stuck-in-state: My instance is stuck in a state.

        • unresponsive: My instance is unresponsive.

        • not-accepting-credentials: My instance is not accepting my credentials.

        • password-not-available: A password is not available for my instance.

        • performance-network: My instance is experiencing performance problems which I believe are network related.

        • performance-instance-store: My instance is experiencing performance problems which I believe are related to the instance stores.

        • performance-ebs-volume: My instance is experiencing performance problems which I believe are related to an EBS volume.

        • performance-other: My instance is experiencing performance problems.

        • other: [explain using the description parameter]

        " } }, "RebootInstancesRequest": { "base": "

        Contains the parameters for RebootInstances.

        ", "refs": { } }, "RecurringCharge": { "base": "

        Describes a recurring charge.

        ", "refs": { "RecurringChargesList$member": null } }, "RecurringChargeFrequency": { "base": null, "refs": { "RecurringCharge$Frequency": "

        The frequency of the recurring charge.

        " } }, "RecurringChargesList": { "base": null, "refs": { "ReservedInstances$RecurringCharges": "

        The recurring charge tag assigned to the resource.

        ", "ReservedInstancesOffering$RecurringCharges": "

        The recurring charge tag assigned to the resource.

        " } }, "Region": { "base": "

        Describes a region.

        ", "refs": { "RegionList$member": null } }, "RegionList": { "base": null, "refs": { "DescribeRegionsResult$Regions": "

        Information about one or more regions.

        " } }, "RegionNameStringList": { "base": null, "refs": { "DescribeRegionsRequest$RegionNames": "

        The names of one or more regions.

        " } }, "RegisterImageRequest": { "base": "

        Contains the parameters for RegisterImage.

        ", "refs": { } }, "RegisterImageResult": { "base": "

        Contains the output of RegisterImage.

        ", "refs": { } }, "RejectVpcPeeringConnectionRequest": { "base": "

        Contains the parameters for RejectVpcPeeringConnection.

        ", "refs": { } }, "RejectVpcPeeringConnectionResult": { "base": "

        Contains the output of RejectVpcPeeringConnection.

        ", "refs": { } }, "ReleaseAddressRequest": { "base": "

        Contains the parameters for ReleaseAddress.

        ", "refs": { } }, "ReleaseHostsRequest": { "base": "

        Contains the parameters for ReleaseHosts.

        ", "refs": { } }, "ReleaseHostsResult": { "base": "

        Contains the output of ReleaseHosts.

        ", "refs": { } }, "ReplaceNetworkAclAssociationRequest": { "base": "

        Contains the parameters for ReplaceNetworkAclAssociation.

        ", "refs": { } }, "ReplaceNetworkAclAssociationResult": { "base": "

        Contains the output of ReplaceNetworkAclAssociation.

        ", "refs": { } }, "ReplaceNetworkAclEntryRequest": { "base": "

        Contains the parameters for ReplaceNetworkAclEntry.

        ", "refs": { } }, "ReplaceRouteRequest": { "base": "

        Contains the parameters for ReplaceRoute.

        ", "refs": { } }, "ReplaceRouteTableAssociationRequest": { "base": "

        Contains the parameters for ReplaceRouteTableAssociation.

        ", "refs": { } }, "ReplaceRouteTableAssociationResult": { "base": "

        Contains the output of ReplaceRouteTableAssociation.

        ", "refs": { } }, "ReportInstanceReasonCodes": { "base": null, "refs": { "ReasonCodesList$member": null } }, "ReportInstanceStatusRequest": { "base": "

        Contains the parameters for ReportInstanceStatus.

        ", "refs": { } }, "ReportStatusType": { "base": null, "refs": { "ReportInstanceStatusRequest$Status": "

        The status of all instances listed.

        " } }, "RequestHostIdList": { "base": null, "refs": { "DescribeHostsRequest$HostIds": "

        The IDs of the Dedicated Hosts. The IDs are used for targeted instance launches.

        ", "ModifyHostsRequest$HostIds": "

        The host IDs of the Dedicated Hosts you want to modify.

        ", "ReleaseHostsRequest$HostIds": "

        The IDs of the Dedicated Hosts you want to release.

        " } }, "RequestHostIdSet": { "base": null, "refs": { "GetHostReservationPurchasePreviewRequest$HostIdSet": "

        The ID/s of the Dedicated Host/s that the reservation will be associated with.

        ", "PurchaseHostReservationRequest$HostIdSet": "

        The ID/s of the Dedicated Host/s that the reservation will be associated with.

        " } }, "RequestSpotFleetRequest": { "base": "

        Contains the parameters for RequestSpotFleet.

        ", "refs": { } }, "RequestSpotFleetResponse": { "base": "

        Contains the output of RequestSpotFleet.

        ", "refs": { } }, "RequestSpotInstancesRequest": { "base": "

        Contains the parameters for RequestSpotInstances.

        ", "refs": { } }, "RequestSpotInstancesResult": { "base": "

        Contains the output of RequestSpotInstances.

        ", "refs": { } }, "RequestSpotLaunchSpecification": { "base": "

        Describes the launch specification for an instance.

        ", "refs": { "RequestSpotInstancesRequest$LaunchSpecification": null } }, "Reservation": { "base": "

        Describes a reservation.

        ", "refs": { "ReservationList$member": null } }, "ReservationList": { "base": null, "refs": { "DescribeInstancesResult$Reservations": "

        Zero or more reservations.

        " } }, "ReservationState": { "base": null, "refs": { "HostReservation$State": "

        The state of the reservation.

        " } }, "ReservationValue": { "base": "

        The cost associated with the Reserved Instance.

        ", "refs": { "GetReservedInstancesExchangeQuoteResult$ReservedInstanceValueRollup": null, "GetReservedInstancesExchangeQuoteResult$TargetConfigurationValueRollup": null, "ReservedInstanceReservationValue$ReservationValue": "

        The total value of the Convertible Reserved Instance that you are exchanging.

        ", "TargetReservationValue$ReservationValue": "

        The total value of the Convertible Reserved Instances that make up the exchange. This is the sum of the list value, remaining upfront price, and additional upfront cost of the exchange.

        " } }, "ReservedInstanceIdSet": { "base": null, "refs": { "AcceptReservedInstancesExchangeQuoteRequest$ReservedInstanceIds": "

        The IDs of the Convertible Reserved Instances that you want to exchange for other Convertible Reserved Instances of the same or higher value.

        ", "GetReservedInstancesExchangeQuoteRequest$ReservedInstanceIds": "

        The ID/s of the Convertible Reserved Instances you want to exchange.

        " } }, "ReservedInstanceLimitPrice": { "base": "

        Describes the limit price of a Reserved Instance offering.

        ", "refs": { "PurchaseReservedInstancesOfferingRequest$LimitPrice": "

        Specified for Reserved Instance Marketplace offerings to limit the total order and ensure that the Reserved Instances are not purchased at unexpected prices.

        " } }, "ReservedInstanceReservationValue": { "base": "

        The total value of the Convertible Reserved Instance.

        ", "refs": { "ReservedInstanceReservationValueSet$member": null } }, "ReservedInstanceReservationValueSet": { "base": null, "refs": { "GetReservedInstancesExchangeQuoteResult$ReservedInstanceValueSet": "

        The configuration of your Convertible Reserved Instances.

        " } }, "ReservedInstanceState": { "base": null, "refs": { "ReservedInstances$State": "

        The state of the Reserved Instance purchase.

        " } }, "ReservedInstances": { "base": "

        Describes a Reserved Instance.

        ", "refs": { "ReservedInstancesList$member": null } }, "ReservedInstancesConfiguration": { "base": "

        Describes the configuration settings for the modified Reserved Instances.

        ", "refs": { "ReservedInstancesConfigurationList$member": null, "ReservedInstancesModificationResult$TargetConfiguration": "

        The target Reserved Instances configurations supplied as part of the modification request.

        " } }, "ReservedInstancesConfigurationList": { "base": null, "refs": { "ModifyReservedInstancesRequest$TargetConfigurations": "

        The configuration settings for the Reserved Instances to modify.

        " } }, "ReservedInstancesId": { "base": "

        Describes the ID of a Reserved Instance.

        ", "refs": { "ReservedIntancesIds$member": null } }, "ReservedInstancesIdStringList": { "base": null, "refs": { "DescribeReservedInstancesRequest$ReservedInstancesIds": "

        One or more Reserved Instance IDs.

        Default: Describes all your Reserved Instances, or only those otherwise specified.

        ", "ModifyReservedInstancesRequest$ReservedInstancesIds": "

        The IDs of the Reserved Instances to modify.

        " } }, "ReservedInstancesList": { "base": null, "refs": { "DescribeReservedInstancesResult$ReservedInstances": "

        A list of Reserved Instances.

        " } }, "ReservedInstancesListing": { "base": "

        Describes a Reserved Instance listing.

        ", "refs": { "ReservedInstancesListingList$member": null } }, "ReservedInstancesListingList": { "base": null, "refs": { "CancelReservedInstancesListingResult$ReservedInstancesListings": "

        The Reserved Instance listing.

        ", "CreateReservedInstancesListingResult$ReservedInstancesListings": "

        Information about the Standard Reserved Instance listing.

        ", "DescribeReservedInstancesListingsResult$ReservedInstancesListings": "

        Information about the Reserved Instance listing.

        " } }, "ReservedInstancesModification": { "base": "

        Describes a Reserved Instance modification.

        ", "refs": { "ReservedInstancesModificationList$member": null } }, "ReservedInstancesModificationIdStringList": { "base": null, "refs": { "DescribeReservedInstancesModificationsRequest$ReservedInstancesModificationIds": "

        IDs for the submitted modification request.

        " } }, "ReservedInstancesModificationList": { "base": null, "refs": { "DescribeReservedInstancesModificationsResult$ReservedInstancesModifications": "

        The Reserved Instance modification information.

        " } }, "ReservedInstancesModificationResult": { "base": "

        Describes the modification request/s.

        ", "refs": { "ReservedInstancesModificationResultList$member": null } }, "ReservedInstancesModificationResultList": { "base": null, "refs": { "ReservedInstancesModification$ModificationResults": "

        Contains target configurations along with their corresponding new Reserved Instance IDs.

        " } }, "ReservedInstancesOffering": { "base": "

        Describes a Reserved Instance offering.

        ", "refs": { "ReservedInstancesOfferingList$member": null } }, "ReservedInstancesOfferingIdStringList": { "base": null, "refs": { "DescribeReservedInstancesOfferingsRequest$ReservedInstancesOfferingIds": "

        One or more Reserved Instances offering IDs.

        " } }, "ReservedInstancesOfferingList": { "base": null, "refs": { "DescribeReservedInstancesOfferingsResult$ReservedInstancesOfferings": "

        A list of Reserved Instances offerings.

        " } }, "ReservedIntancesIds": { "base": null, "refs": { "ReservedInstancesModification$ReservedInstancesIds": "

        The IDs of one or more Reserved Instances.

        " } }, "ResetImageAttributeName": { "base": null, "refs": { "ResetImageAttributeRequest$Attribute": "

        The attribute to reset (currently you can only reset the launch permission attribute).

        " } }, "ResetImageAttributeRequest": { "base": "

        Contains the parameters for ResetImageAttribute.

        ", "refs": { } }, "ResetInstanceAttributeRequest": { "base": "

        Contains the parameters for ResetInstanceAttribute.

        ", "refs": { } }, "ResetNetworkInterfaceAttributeRequest": { "base": "

        Contains the parameters for ResetNetworkInterfaceAttribute.

        ", "refs": { } }, "ResetSnapshotAttributeRequest": { "base": "

        Contains the parameters for ResetSnapshotAttribute.

        ", "refs": { } }, "ResourceIdList": { "base": null, "refs": { "CreateTagsRequest$Resources": "

        The IDs of one or more resources to tag. For example, ami-1a2b3c4d.

        ", "DeleteTagsRequest$Resources": "

        The ID of the resource. For example, ami-1a2b3c4d. You can specify more than one resource ID.

        " } }, "ResourceType": { "base": null, "refs": { "TagDescription$ResourceType": "

        The resource type.

        " } }, "ResponseHostIdList": { "base": null, "refs": { "AllocateHostsResult$HostIds": "

        The ID of the allocated Dedicated Host. This is used when you want to launch an instance onto a specific host.

        ", "ModifyHostsResult$Successful": "

        The IDs of the Dedicated Hosts that were successfully modified.

        ", "ReleaseHostsResult$Successful": "

        The IDs of the Dedicated Hosts that were successfully released.

        " } }, "ResponseHostIdSet": { "base": null, "refs": { "HostReservation$HostIdSet": "

        The IDs of the Dedicated Hosts associated with the reservation.

        ", "Purchase$HostIdSet": "

        The IDs of the Dedicated Hosts associated with the reservation.

        " } }, "RestorableByStringList": { "base": null, "refs": { "DescribeSnapshotsRequest$RestorableByUserIds": "

        One or more AWS accounts IDs that can create volumes from the snapshot.

        " } }, "RestoreAddressToClassicRequest": { "base": "

        Contains the parameters for RestoreAddressToClassic.

        ", "refs": { } }, "RestoreAddressToClassicResult": { "base": "

        Contains the output of RestoreAddressToClassic.

        ", "refs": { } }, "RevokeSecurityGroupEgressRequest": { "base": "

        Contains the parameters for RevokeSecurityGroupEgress.

        ", "refs": { } }, "RevokeSecurityGroupIngressRequest": { "base": "

        Contains the parameters for RevokeSecurityGroupIngress.

        ", "refs": { } }, "Route": { "base": "

        Describes a route in a route table.

        ", "refs": { "RouteList$member": null } }, "RouteList": { "base": null, "refs": { "RouteTable$Routes": "

        The routes in the route table.

        " } }, "RouteOrigin": { "base": null, "refs": { "Route$Origin": "

        Describes how the route was created.

        • CreateRouteTable - The route was automatically created when the route table was created.

        • CreateRoute - The route was manually added to the route table.

        • EnableVgwRoutePropagation - The route was propagated by route propagation.

        " } }, "RouteState": { "base": null, "refs": { "Route$State": "

        The state of the route. The blackhole state indicates that the route's target isn't available (for example, the specified gateway isn't attached to the VPC, or the specified NAT instance has been terminated).

        " } }, "RouteTable": { "base": "

        Describes a route table.

        ", "refs": { "CreateRouteTableResult$RouteTable": "

        Information about the route table.

        ", "RouteTableList$member": null } }, "RouteTableAssociation": { "base": "

        Describes an association between a route table and a subnet.

        ", "refs": { "RouteTableAssociationList$member": null } }, "RouteTableAssociationList": { "base": null, "refs": { "RouteTable$Associations": "

        The associations between the route table and one or more subnets.

        " } }, "RouteTableList": { "base": null, "refs": { "DescribeRouteTablesResult$RouteTables": "

        Information about one or more route tables.

        " } }, "RuleAction": { "base": null, "refs": { "CreateNetworkAclEntryRequest$RuleAction": "

        Indicates whether to allow or deny the traffic that matches the rule.

        ", "NetworkAclEntry$RuleAction": "

        Indicates whether to allow or deny the traffic that matches the rule.

        ", "ReplaceNetworkAclEntryRequest$RuleAction": "

        Indicates whether to allow or deny the traffic that matches the rule.

        " } }, "RunInstancesMonitoringEnabled": { "base": "

        Describes the monitoring for the instance.

        ", "refs": { "LaunchSpecification$Monitoring": null, "RequestSpotLaunchSpecification$Monitoring": null, "RunInstancesRequest$Monitoring": "

        The monitoring for the instance.

        " } }, "RunInstancesRequest": { "base": "

        Contains the parameters for RunInstances.

        ", "refs": { } }, "RunScheduledInstancesRequest": { "base": "

        Contains the parameters for RunScheduledInstances.

        ", "refs": { } }, "RunScheduledInstancesResult": { "base": "

        Contains the output of RunScheduledInstances.

        ", "refs": { } }, "S3Storage": { "base": "

        Describes the storage parameters for S3 and S3 buckets for an instance store-backed AMI.

        ", "refs": { "Storage$S3": "

        An Amazon S3 storage location.

        " } }, "ScheduledInstance": { "base": "

        Describes a Scheduled Instance.

        ", "refs": { "PurchasedScheduledInstanceSet$member": null, "ScheduledInstanceSet$member": null } }, "ScheduledInstanceAvailability": { "base": "

        Describes a schedule that is available for your Scheduled Instances.

        ", "refs": { "ScheduledInstanceAvailabilitySet$member": null } }, "ScheduledInstanceAvailabilitySet": { "base": null, "refs": { "DescribeScheduledInstanceAvailabilityResult$ScheduledInstanceAvailabilitySet": "

        Information about the available Scheduled Instances.

        " } }, "ScheduledInstanceIdRequestSet": { "base": null, "refs": { "DescribeScheduledInstancesRequest$ScheduledInstanceIds": "

        One or more Scheduled Instance IDs.

        " } }, "ScheduledInstanceRecurrence": { "base": "

        Describes the recurring schedule for a Scheduled Instance.

        ", "refs": { "ScheduledInstance$Recurrence": "

        The schedule recurrence.

        ", "ScheduledInstanceAvailability$Recurrence": "

        The schedule recurrence.

        " } }, "ScheduledInstanceRecurrenceRequest": { "base": "

        Describes the recurring schedule for a Scheduled Instance.

        ", "refs": { "DescribeScheduledInstanceAvailabilityRequest$Recurrence": "

        The schedule recurrence.

        " } }, "ScheduledInstanceSet": { "base": null, "refs": { "DescribeScheduledInstancesResult$ScheduledInstanceSet": "

        Information about the Scheduled Instances.

        " } }, "ScheduledInstancesBlockDeviceMapping": { "base": "

        Describes a block device mapping for a Scheduled Instance.

        ", "refs": { "ScheduledInstancesBlockDeviceMappingSet$member": null } }, "ScheduledInstancesBlockDeviceMappingSet": { "base": null, "refs": { "ScheduledInstancesLaunchSpecification$BlockDeviceMappings": "

        One or more block device mapping entries.

        " } }, "ScheduledInstancesEbs": { "base": "

        Describes an EBS volume for a Scheduled Instance.

        ", "refs": { "ScheduledInstancesBlockDeviceMapping$Ebs": "

        Parameters used to set up EBS volumes automatically when the instance is launched.

        " } }, "ScheduledInstancesIamInstanceProfile": { "base": "

        Describes an IAM instance profile for a Scheduled Instance.

        ", "refs": { "ScheduledInstancesLaunchSpecification$IamInstanceProfile": "

        The IAM instance profile.

        " } }, "ScheduledInstancesLaunchSpecification": { "base": "

        Describes the launch specification for a Scheduled Instance.

        If you are launching the Scheduled Instance in EC2-VPC, you must specify the ID of the subnet. You can specify the subnet using either SubnetId or NetworkInterface.

        ", "refs": { "RunScheduledInstancesRequest$LaunchSpecification": "

        The launch specification. You must match the instance type, Availability Zone, network, and platform of the schedule that you purchased.

        " } }, "ScheduledInstancesMonitoring": { "base": "

        Describes whether monitoring is enabled for a Scheduled Instance.

        ", "refs": { "ScheduledInstancesLaunchSpecification$Monitoring": "

        Enable or disable monitoring for the instances.

        " } }, "ScheduledInstancesNetworkInterface": { "base": "

        Describes a network interface for a Scheduled Instance.

        ", "refs": { "ScheduledInstancesNetworkInterfaceSet$member": null } }, "ScheduledInstancesNetworkInterfaceSet": { "base": null, "refs": { "ScheduledInstancesLaunchSpecification$NetworkInterfaces": "

        One or more network interfaces.

        " } }, "ScheduledInstancesPlacement": { "base": "

        Describes the placement for a Scheduled Instance.

        ", "refs": { "ScheduledInstancesLaunchSpecification$Placement": "

        The placement information.

        " } }, "ScheduledInstancesPrivateIpAddressConfig": { "base": "

        Describes a private IP address for a Scheduled Instance.

        ", "refs": { "PrivateIpAddressConfigSet$member": null } }, "ScheduledInstancesSecurityGroupIdSet": { "base": null, "refs": { "ScheduledInstancesLaunchSpecification$SecurityGroupIds": "

        The IDs of one or more security groups.

        ", "ScheduledInstancesNetworkInterface$Groups": "

        The IDs of one or more security groups.

        " } }, "SecurityGroup": { "base": "

        Describes a security group

        ", "refs": { "SecurityGroupList$member": null } }, "SecurityGroupIdStringList": { "base": null, "refs": { "CreateNetworkInterfaceRequest$Groups": "

        The IDs of one or more security groups.

        ", "ImportInstanceLaunchSpecification$GroupIds": "

        One or more security group IDs.

        ", "InstanceNetworkInterfaceSpecification$Groups": "

        The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.

        ", "ModifyNetworkInterfaceAttributeRequest$Groups": "

        Changes the security groups for the network interface. The new set of groups you specify replaces the current set. You must specify at least one group, even if it's just the default security group in the VPC. You must specify the ID of the security group, not the name.

        ", "RunInstancesRequest$SecurityGroupIds": "

        One or more security group IDs. You can create a security group using CreateSecurityGroup.

        Default: Amazon EC2 uses the default security group.

        " } }, "SecurityGroupList": { "base": null, "refs": { "DescribeSecurityGroupsResult$SecurityGroups": "

        Information about one or more security groups.

        " } }, "SecurityGroupReference": { "base": "

        Describes a VPC with a security group that references your security group.

        ", "refs": { "SecurityGroupReferences$member": null } }, "SecurityGroupReferences": { "base": null, "refs": { "DescribeSecurityGroupReferencesResult$SecurityGroupReferenceSet": "

        Information about the VPCs with the referencing security groups.

        " } }, "SecurityGroupStringList": { "base": null, "refs": { "ImportInstanceLaunchSpecification$GroupNames": "

        One or more security group names.

        ", "RunInstancesRequest$SecurityGroups": "

        [EC2-Classic, default VPC] One or more security group names. For a nondefault VPC, you must use security group IDs instead.

        Default: Amazon EC2 uses the default security group.

        " } }, "ShutdownBehavior": { "base": null, "refs": { "ImportInstanceLaunchSpecification$InstanceInitiatedShutdownBehavior": "

        Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

        ", "RunInstancesRequest$InstanceInitiatedShutdownBehavior": "

        Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

        Default: stop

        " } }, "SlotDateTimeRangeRequest": { "base": "

        Describes the time period for a Scheduled Instance to start its first schedule. The time period must span less than one day.

        ", "refs": { "DescribeScheduledInstanceAvailabilityRequest$FirstSlotStartTimeRange": "

        The time period for the first schedule to start.

        " } }, "SlotStartTimeRangeRequest": { "base": "

        Describes the time period for a Scheduled Instance to start its first schedule.

        ", "refs": { "DescribeScheduledInstancesRequest$SlotStartTimeRange": "

        The time period for the first schedule to start.

        " } }, "Snapshot": { "base": "

        Describes a snapshot.

        ", "refs": { "SnapshotList$member": null } }, "SnapshotAttributeName": { "base": null, "refs": { "DescribeSnapshotAttributeRequest$Attribute": "

        The snapshot attribute you would like to view.

        ", "ModifySnapshotAttributeRequest$Attribute": "

        The snapshot attribute to modify.

        Only volume creation permissions may be modified at the customer level.

        ", "ResetSnapshotAttributeRequest$Attribute": "

        The attribute to reset. Currently, only the attribute for permission to create volumes can be reset.

        " } }, "SnapshotDetail": { "base": "

        Describes the snapshot created from the imported disk.

        ", "refs": { "SnapshotDetailList$member": null } }, "SnapshotDetailList": { "base": null, "refs": { "ImportImageResult$SnapshotDetails": "

        Information about the snapshots.

        ", "ImportImageTask$SnapshotDetails": "

        Information about the snapshots.

        " } }, "SnapshotDiskContainer": { "base": "

        The disk container object for the import snapshot request.

        ", "refs": { "ImportSnapshotRequest$DiskContainer": "

        Information about the disk container.

        " } }, "SnapshotIdStringList": { "base": null, "refs": { "DescribeSnapshotsRequest$SnapshotIds": "

        One or more snapshot IDs.

        Default: Describes snapshots for which you have launch permissions.

        " } }, "SnapshotList": { "base": null, "refs": { "DescribeSnapshotsResult$Snapshots": "

        Information about the snapshots.

        " } }, "SnapshotState": { "base": null, "refs": { "Snapshot$State": "

        The snapshot state.

        " } }, "SnapshotTaskDetail": { "base": "

        Details about the import snapshot task.

        ", "refs": { "ImportSnapshotResult$SnapshotTaskDetail": "

        Information about the import snapshot task.

        ", "ImportSnapshotTask$SnapshotTaskDetail": "

        Describes an import snapshot task.

        " } }, "SpotDatafeedSubscription": { "base": "

        Describes the data feed for a Spot instance.

        ", "refs": { "CreateSpotDatafeedSubscriptionResult$SpotDatafeedSubscription": "

        The Spot instance data feed subscription.

        ", "DescribeSpotDatafeedSubscriptionResult$SpotDatafeedSubscription": "

        The Spot instance data feed subscription.

        " } }, "SpotFleetLaunchSpecification": { "base": "

        Describes the launch specification for one or more Spot instances.

        ", "refs": { "LaunchSpecsList$member": null } }, "SpotFleetMonitoring": { "base": "

        Describes whether monitoring is enabled.

        ", "refs": { "SpotFleetLaunchSpecification$Monitoring": "

        Enable or disable monitoring for the instances.

        " } }, "SpotFleetRequestConfig": { "base": "

        Describes a Spot fleet request.

        ", "refs": { "SpotFleetRequestConfigSet$member": null } }, "SpotFleetRequestConfigData": { "base": "

        Describes the configuration of a Spot fleet request.

        ", "refs": { "RequestSpotFleetRequest$SpotFleetRequestConfig": "

        The configuration for the Spot fleet request.

        ", "SpotFleetRequestConfig$SpotFleetRequestConfig": "

        Information about the configuration of the Spot fleet request.

        " } }, "SpotFleetRequestConfigSet": { "base": null, "refs": { "DescribeSpotFleetRequestsResponse$SpotFleetRequestConfigs": "

        Information about the configuration of your Spot fleet.

        " } }, "SpotInstanceRequest": { "base": "

        Describes a Spot instance request.

        ", "refs": { "SpotInstanceRequestList$member": null } }, "SpotInstanceRequestIdList": { "base": null, "refs": { "CancelSpotInstanceRequestsRequest$SpotInstanceRequestIds": "

        One or more Spot instance request IDs.

        ", "DescribeSpotInstanceRequestsRequest$SpotInstanceRequestIds": "

        One or more Spot instance request IDs.

        " } }, "SpotInstanceRequestList": { "base": null, "refs": { "DescribeSpotInstanceRequestsResult$SpotInstanceRequests": "

        One or more Spot instance requests.

        ", "RequestSpotInstancesResult$SpotInstanceRequests": "

        One or more Spot instance requests.

        " } }, "SpotInstanceState": { "base": null, "refs": { "SpotInstanceRequest$State": "

        The state of the Spot instance request. Spot bid status information can help you track your Spot instance requests. For more information, see Spot Bid Status in the Amazon Elastic Compute Cloud User Guide.

        " } }, "SpotInstanceStateFault": { "base": "

        Describes a Spot instance state change.

        ", "refs": { "SpotDatafeedSubscription$Fault": "

        The fault codes for the Spot instance request, if any.

        ", "SpotInstanceRequest$Fault": "

        The fault codes for the Spot instance request, if any.

        " } }, "SpotInstanceStatus": { "base": "

        Describes the status of a Spot instance request.

        ", "refs": { "SpotInstanceRequest$Status": "

        The status code and status message describing the Spot instance request.

        " } }, "SpotInstanceType": { "base": null, "refs": { "RequestSpotInstancesRequest$Type": "

        The Spot instance request type.

        Default: one-time

        ", "SpotInstanceRequest$Type": "

        The Spot instance request type.

        " } }, "SpotPlacement": { "base": "

        Describes Spot instance placement.

        ", "refs": { "LaunchSpecification$Placement": "

        The placement information for the instance.

        ", "RequestSpotLaunchSpecification$Placement": "

        The placement information for the instance.

        ", "SpotFleetLaunchSpecification$Placement": "

        The placement information.

        " } }, "SpotPrice": { "base": "

        Describes the maximum hourly price (bid) for any Spot instance launched to fulfill the request.

        ", "refs": { "SpotPriceHistoryList$member": null } }, "SpotPriceHistoryList": { "base": null, "refs": { "DescribeSpotPriceHistoryResult$SpotPriceHistory": "

        The historical Spot prices.

        " } }, "StaleIpPermission": { "base": "

        Describes a stale rule in a security group.

        ", "refs": { "StaleIpPermissionSet$member": null } }, "StaleIpPermissionSet": { "base": null, "refs": { "StaleSecurityGroup$StaleIpPermissions": "

        Information about the stale inbound rules in the security group.

        ", "StaleSecurityGroup$StaleIpPermissionsEgress": "

        Information about the stale outbound rules in the security group.

        " } }, "StaleSecurityGroup": { "base": "

        Describes a stale security group (a security group that contains stale rules).

        ", "refs": { "StaleSecurityGroupSet$member": null } }, "StaleSecurityGroupSet": { "base": null, "refs": { "DescribeStaleSecurityGroupsResult$StaleSecurityGroupSet": "

        Information about the stale security groups.

        " } }, "StartInstancesRequest": { "base": "

        Contains the parameters for StartInstances.

        ", "refs": { } }, "StartInstancesResult": { "base": "

        Contains the output of StartInstances.

        ", "refs": { } }, "State": { "base": null, "refs": { "VpcEndpoint$State": "

        The state of the VPC endpoint.

        " } }, "StateReason": { "base": "

        Describes a state change.

        ", "refs": { "Image$StateReason": "

        The reason for the state change.

        ", "Instance$StateReason": "

        The reason for the most recent state transition.

        " } }, "Status": { "base": null, "refs": { "MoveAddressToVpcResult$Status": "

        The status of the move of the IP address.

        ", "RestoreAddressToClassicResult$Status": "

        The move status for the IP address.

        " } }, "StatusName": { "base": null, "refs": { "InstanceStatusDetails$Name": "

        The type of instance status.

        " } }, "StatusType": { "base": null, "refs": { "InstanceStatusDetails$Status": "

        The status.

        " } }, "StopInstancesRequest": { "base": "

        Contains the parameters for StopInstances.

        ", "refs": { } }, "StopInstancesResult": { "base": "

        Contains the output of StopInstances.

        ", "refs": { } }, "Storage": { "base": "

        Describes the storage location for an instance store-backed AMI.

        ", "refs": { "BundleInstanceRequest$Storage": "

        The bucket in which to store the AMI. You can specify a bucket that you already own or a new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone else, Amazon EC2 returns an error.

        ", "BundleTask$Storage": "

        The Amazon S3 storage locations.

        " } }, "String": { "base": null, "refs": { "AcceptReservedInstancesExchangeQuoteResult$ExchangeId": "

        The ID of the successful exchange.

        ", "AcceptVpcPeeringConnectionRequest$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "AccountAttribute$AttributeName": "

        The name of the account attribute.

        ", "AccountAttributeValue$AttributeValue": "

        The value of the attribute.

        ", "ActiveInstance$InstanceType": "

        The instance type.

        ", "ActiveInstance$InstanceId": "

        The ID of the instance.

        ", "ActiveInstance$SpotInstanceRequestId": "

        The ID of the Spot instance request.

        ", "Address$InstanceId": "

        The ID of the instance that the address is associated with (if any).

        ", "Address$PublicIp": "

        The Elastic IP address.

        ", "Address$AllocationId": "

        The ID representing the allocation of the address for use with EC2-VPC.

        ", "Address$AssociationId": "

        The ID representing the association of the address with an instance in a VPC.

        ", "Address$NetworkInterfaceId": "

        The ID of the network interface.

        ", "Address$NetworkInterfaceOwnerId": "

        The ID of the AWS account that owns the network interface.

        ", "Address$PrivateIpAddress": "

        The private IP address associated with the Elastic IP address.

        ", "AllocateAddressResult$PublicIp": "

        The Elastic IP address.

        ", "AllocateAddressResult$AllocationId": "

        [EC2-VPC] The ID that AWS assigns to represent the allocation of the Elastic IP address for use with instances in a VPC.

        ", "AllocateHostsRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.

        ", "AllocateHostsRequest$InstanceType": "

        Specify the instance type that you want your Dedicated Hosts to be configured for. When you specify the instance type, that is the only instance type that you can launch onto that host.

        ", "AllocateHostsRequest$AvailabilityZone": "

        The Availability Zone for the Dedicated Hosts.

        ", "AllocationIdList$member": null, "AssignPrivateIpAddressesRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "AssociateAddressRequest$InstanceId": "

        The ID of the instance. This is required for EC2-Classic. For EC2-VPC, you can specify either the instance ID or the network interface ID, but not both. The operation fails if you specify an instance ID unless exactly one network interface is attached.

        ", "AssociateAddressRequest$PublicIp": "

        The Elastic IP address. This is required for EC2-Classic.

        ", "AssociateAddressRequest$AllocationId": "

        [EC2-VPC] The allocation ID. This is required for EC2-VPC.

        ", "AssociateAddressRequest$NetworkInterfaceId": "

        [EC2-VPC] The ID of the network interface. If the instance has more than one network interface, you must specify a network interface ID.

        ", "AssociateAddressRequest$PrivateIpAddress": "

        [EC2-VPC] The primary or secondary private IP address to associate with the Elastic IP address. If no private IP address is specified, the Elastic IP address is associated with the primary private IP address.

        ", "AssociateAddressResult$AssociationId": "

        [EC2-VPC] The ID that represents the association of the Elastic IP address with an instance.

        ", "AssociateDhcpOptionsRequest$DhcpOptionsId": "

        The ID of the DHCP options set, or default to associate no DHCP options with the VPC.

        ", "AssociateDhcpOptionsRequest$VpcId": "

        The ID of the VPC.

        ", "AssociateRouteTableRequest$SubnetId": "

        The ID of the subnet.

        ", "AssociateRouteTableRequest$RouteTableId": "

        The ID of the route table.

        ", "AssociateRouteTableResult$AssociationId": "

        The route table association ID (needed to disassociate the route table).

        ", "AttachClassicLinkVpcRequest$InstanceId": "

        The ID of an EC2-Classic instance to link to the ClassicLink-enabled VPC.

        ", "AttachClassicLinkVpcRequest$VpcId": "

        The ID of a ClassicLink-enabled VPC.

        ", "AttachInternetGatewayRequest$InternetGatewayId": "

        The ID of the Internet gateway.

        ", "AttachInternetGatewayRequest$VpcId": "

        The ID of the VPC.

        ", "AttachNetworkInterfaceRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "AttachNetworkInterfaceRequest$InstanceId": "

        The ID of the instance.

        ", "AttachNetworkInterfaceResult$AttachmentId": "

        The ID of the network interface attachment.

        ", "AttachVolumeRequest$VolumeId": "

        The ID of the EBS volume. The volume and instance must be within the same Availability Zone.

        ", "AttachVolumeRequest$InstanceId": "

        The ID of the instance.

        ", "AttachVolumeRequest$Device": "

        The device name to expose to the instance (for example, /dev/sdh or xvdh).

        ", "AttachVpnGatewayRequest$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "AttachVpnGatewayRequest$VpcId": "

        The ID of the VPC.

        ", "AttributeValue$Value": "

        The attribute value. Note that the value is case-sensitive.

        ", "AuthorizeSecurityGroupEgressRequest$GroupId": "

        The ID of the security group.

        ", "AuthorizeSecurityGroupEgressRequest$SourceSecurityGroupName": "

        The name of a destination security group. To authorize outbound access to a destination security group, we recommend that you use a set of IP permissions instead.

        ", "AuthorizeSecurityGroupEgressRequest$SourceSecurityGroupOwnerId": "

        The AWS account number for a destination security group. To authorize outbound access to a destination security group, we recommend that you use a set of IP permissions instead.

        ", "AuthorizeSecurityGroupEgressRequest$IpProtocol": "

        The IP protocol name or number. We recommend that you specify the protocol in a set of IP permissions instead.

        ", "AuthorizeSecurityGroupEgressRequest$CidrIp": "

        The CIDR IP address range. We recommend that you specify the CIDR range in a set of IP permissions instead.

        ", "AuthorizeSecurityGroupIngressRequest$GroupName": "

        [EC2-Classic, default VPC] The name of the security group.

        ", "AuthorizeSecurityGroupIngressRequest$GroupId": "

        The ID of the security group. Required for a nondefault VPC.

        ", "AuthorizeSecurityGroupIngressRequest$SourceSecurityGroupName": "

        [EC2-Classic, default VPC] The name of the source security group. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the start of the port range, the IP protocol, and the end of the port range. Creates rules that grant full ICMP, UDP, and TCP access. To create a rule with a specific IP protocol and port range, use a set of IP permissions instead. For EC2-VPC, the source security group must be in the same VPC.

        ", "AuthorizeSecurityGroupIngressRequest$SourceSecurityGroupOwnerId": "

        [EC2-Classic] The AWS account number for the source security group, if the source security group is in a different account. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the IP protocol, the start of the port range, and the end of the port range. Creates rules that grant full ICMP, UDP, and TCP access. To create a rule with a specific IP protocol and port range, use a set of IP permissions instead.

        ", "AuthorizeSecurityGroupIngressRequest$IpProtocol": "

        The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). (VPC only) Use -1 to specify all traffic. If you specify -1, traffic on all ports is allowed, regardless of any ports you specify.

        ", "AuthorizeSecurityGroupIngressRequest$CidrIp": "

        The CIDR IP address range. You can't specify this parameter when specifying a source security group.

        ", "AvailabilityZone$ZoneName": "

        The name of the Availability Zone.

        ", "AvailabilityZone$RegionName": "

        The name of the region.

        ", "AvailabilityZoneMessage$Message": "

        The message about the Availability Zone.

        ", "BlockDeviceMapping$VirtualName": "

        The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with 2 available instance store volumes can specify mappings for ephemeral0 and ephemeral1.The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.

        Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.

        ", "BlockDeviceMapping$DeviceName": "

        The device name exposed to the instance (for example, /dev/sdh or xvdh).

        ", "BlockDeviceMapping$NoDevice": "

        Suppresses the specified device included in the block device mapping of the AMI.

        ", "BundleIdStringList$member": null, "BundleInstanceRequest$InstanceId": "

        The ID of the instance to bundle.

        Type: String

        Default: None

        Required: Yes

        ", "BundleTask$InstanceId": "

        The ID of the instance associated with this bundle task.

        ", "BundleTask$BundleId": "

        The ID of the bundle task.

        ", "BundleTask$Progress": "

        The level of task completion, as a percent (for example, 20%).

        ", "BundleTaskError$Code": "

        The error code.

        ", "BundleTaskError$Message": "

        The error message.

        ", "CancelBundleTaskRequest$BundleId": "

        The ID of the bundle task.

        ", "CancelConversionRequest$ConversionTaskId": "

        The ID of the conversion task.

        ", "CancelConversionRequest$ReasonMessage": "

        The reason for canceling the conversion task.

        ", "CancelExportTaskRequest$ExportTaskId": "

        The ID of the export task. This is the ID returned by CreateInstanceExportTask.

        ", "CancelImportTaskRequest$ImportTaskId": "

        The ID of the import image or import snapshot task to be canceled.

        ", "CancelImportTaskRequest$CancelReason": "

        The reason for canceling the task.

        ", "CancelImportTaskResult$ImportTaskId": "

        The ID of the task being canceled.

        ", "CancelImportTaskResult$State": "

        The current state of the task being canceled.

        ", "CancelImportTaskResult$PreviousState": "

        The current state of the task being canceled.

        ", "CancelReservedInstancesListingRequest$ReservedInstancesListingId": "

        The ID of the Reserved Instance listing.

        ", "CancelSpotFleetRequestsError$Message": "

        The description for the error code.

        ", "CancelSpotFleetRequestsErrorItem$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "CancelSpotFleetRequestsSuccessItem$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "CancelledSpotInstanceRequest$SpotInstanceRequestId": "

        The ID of the Spot instance request.

        ", "ClassicLinkDnsSupport$VpcId": "

        The ID of the VPC.

        ", "ClassicLinkInstance$InstanceId": "

        The ID of the instance.

        ", "ClassicLinkInstance$VpcId": "

        The ID of the VPC.

        ", "ClientData$Comment": "

        A user-defined comment about the disk upload.

        ", "ConfirmProductInstanceRequest$ProductCode": "

        The product code. This must be a product code that you own.

        ", "ConfirmProductInstanceRequest$InstanceId": "

        The ID of the instance.

        ", "ConfirmProductInstanceResult$OwnerId": "

        The AWS account ID of the instance owner. This is only present if the product code is attached to the instance.

        ", "ConversionIdStringList$member": null, "ConversionTask$ConversionTaskId": "

        The ID of the conversion task.

        ", "ConversionTask$ExpirationTime": "

        The time when the task expires. If the upload isn't complete before the expiration time, we automatically cancel the task.

        ", "ConversionTask$StatusMessage": "

        The status message related to the conversion task.

        ", "CopyImageRequest$SourceRegion": "

        The name of the region that contains the AMI to copy.

        ", "CopyImageRequest$SourceImageId": "

        The ID of the AMI to copy.

        ", "CopyImageRequest$Name": "

        The name of the new AMI in the destination region.

        ", "CopyImageRequest$Description": "

        A description for the new AMI in the destination region.

        ", "CopyImageRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.

        ", "CopyImageRequest$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) CMK to use when encrypting the snapshots of an image during a copy operation. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used. The ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the key namespace, and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. The specified CMK must exist in the region that the snapshot is being copied to. If a KmsKeyId is specified, the Encrypted flag must also be set.

        ", "CopyImageResult$ImageId": "

        The ID of the new AMI.

        ", "CopySnapshotRequest$SourceRegion": "

        The ID of the region that contains the snapshot to be copied.

        ", "CopySnapshotRequest$SourceSnapshotId": "

        The ID of the EBS snapshot to copy.

        ", "CopySnapshotRequest$Description": "

        A description for the EBS snapshot.

        ", "CopySnapshotRequest$DestinationRegion": "

        The destination region to use in the PresignedUrl parameter of a snapshot copy operation. This parameter is only valid for specifying the destination region in a PresignedUrl parameter, where it is required.

        CopySnapshot sends the snapshot copy to the regional endpoint that you send the HTTP request to, such as ec2.us-east-1.amazonaws.com (in the AWS CLI, this is specified with the --region parameter or the default region in your AWS configuration file).

        ", "CopySnapshotRequest$PresignedUrl": "

        The pre-signed URL that facilitates copying an encrypted snapshot. This parameter is only required when copying an encrypted snapshot with the Amazon EC2 Query API; it is available as an optional parameter in all other cases. The PresignedUrl should use the snapshot source endpoint, the CopySnapshot action, and include the SourceRegion, SourceSnapshotId, and DestinationRegion parameters. The PresignedUrl must be signed using AWS Signature Version 4. Because EBS snapshots are stored in Amazon S3, the signing algorithm for this parameter uses the same logic that is described in Authenticating Requests by Using Query Parameters (AWS Signature Version 4) in the Amazon Simple Storage Service API Reference. An invalid or improperly signed PresignedUrl will cause the copy operation to fail asynchronously, and the snapshot will move to an error state.

        ", "CopySnapshotRequest$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) CMK to use when creating the snapshot copy. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used. The ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the key namespace, and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. The specified CMK must exist in the region that the snapshot is being copied to. If a KmsKeyId is specified, the Encrypted flag must also be set.

        ", "CopySnapshotResult$SnapshotId": "

        The ID of the new snapshot.

        ", "CreateCustomerGatewayRequest$PublicIp": "

        The Internet-routable IP address for the customer gateway's outside interface. The address must be static.

        ", "CreateFlowLogsRequest$LogGroupName": "

        The name of the CloudWatch log group.

        ", "CreateFlowLogsRequest$DeliverLogsPermissionArn": "

        The ARN for the IAM role that's used to post flow logs to a CloudWatch Logs log group.

        ", "CreateFlowLogsRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

        ", "CreateFlowLogsResult$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request.

        ", "CreateImageRequest$InstanceId": "

        The ID of the instance.

        ", "CreateImageRequest$Name": "

        A name for the new image.

        Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)

        ", "CreateImageRequest$Description": "

        A description for the new image.

        ", "CreateImageResult$ImageId": "

        The ID of the new AMI.

        ", "CreateInstanceExportTaskRequest$Description": "

        A description for the conversion task or the resource being exported. The maximum length is 255 bytes.

        ", "CreateInstanceExportTaskRequest$InstanceId": "

        The ID of the instance.

        ", "CreateKeyPairRequest$KeyName": "

        A unique name for the key pair.

        Constraints: Up to 255 ASCII characters

        ", "CreateNatGatewayRequest$SubnetId": "

        The subnet in which to create the NAT gateway.

        ", "CreateNatGatewayRequest$AllocationId": "

        The allocation ID of an Elastic IP address to associate with the NAT gateway. If the Elastic IP address is associated with another resource, you must first disassociate it.

        ", "CreateNatGatewayRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

        Constraint: Maximum 64 ASCII characters.

        ", "CreateNatGatewayResult$ClientToken": "

        Unique, case-sensitive identifier to ensure the idempotency of the request. Only returned if a client token was provided in the request.

        ", "CreateNetworkAclEntryRequest$NetworkAclId": "

        The ID of the network ACL.

        ", "CreateNetworkAclEntryRequest$Protocol": "

        The protocol. A value of -1 means all protocols.

        ", "CreateNetworkAclEntryRequest$CidrBlock": "

        The network range to allow or deny, in CIDR notation (for example 172.16.0.0/24).

        ", "CreateNetworkAclRequest$VpcId": "

        The ID of the VPC.

        ", "CreateNetworkInterfaceRequest$SubnetId": "

        The ID of the subnet to associate with the network interface.

        ", "CreateNetworkInterfaceRequest$Description": "

        A description for the network interface.

        ", "CreateNetworkInterfaceRequest$PrivateIpAddress": "

        The primary private IP address of the network interface. If you don't specify an IP address, Amazon EC2 selects one for you from the subnet range. If you specify an IP address, you cannot indicate any IP addresses specified in privateIpAddresses as primary (only one IP address can be designated as primary).

        ", "CreatePlacementGroupRequest$GroupName": "

        A name for the placement group.

        Constraints: Up to 255 ASCII characters

        ", "CreateReservedInstancesListingRequest$ReservedInstancesId": "

        The ID of the active Standard Reserved Instance.

        ", "CreateReservedInstancesListingRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure idempotency of your listings. This helps avoid duplicate listings. For more information, see Ensuring Idempotency.

        ", "CreateRouteRequest$RouteTableId": "

        The ID of the route table for the route.

        ", "CreateRouteRequest$DestinationCidrBlock": "

        The CIDR address block used for the destination match. Routing decisions are based on the most specific match.

        ", "CreateRouteRequest$GatewayId": "

        The ID of an Internet gateway or virtual private gateway attached to your VPC.

        ", "CreateRouteRequest$InstanceId": "

        The ID of a NAT instance in your VPC. The operation fails if you specify an instance ID unless exactly one network interface is attached.

        ", "CreateRouteRequest$NetworkInterfaceId": "

        The ID of a network interface.

        ", "CreateRouteRequest$VpcPeeringConnectionId": "

        The ID of a VPC peering connection.

        ", "CreateRouteRequest$NatGatewayId": "

        The ID of a NAT gateway.

        ", "CreateRouteTableRequest$VpcId": "

        The ID of the VPC.

        ", "CreateSecurityGroupRequest$GroupName": "

        The name of the security group.

        Constraints: Up to 255 characters in length

        Constraints for EC2-Classic: ASCII characters

        Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

        ", "CreateSecurityGroupRequest$Description": "

        A description for the security group. This is informational only.

        Constraints: Up to 255 characters in length

        Constraints for EC2-Classic: ASCII characters

        Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

        ", "CreateSecurityGroupRequest$VpcId": "

        [EC2-VPC] The ID of the VPC. Required for EC2-VPC.

        ", "CreateSecurityGroupResult$GroupId": "

        The ID of the security group.

        ", "CreateSnapshotRequest$VolumeId": "

        The ID of the EBS volume.

        ", "CreateSnapshotRequest$Description": "

        A description for the snapshot.

        ", "CreateSpotDatafeedSubscriptionRequest$Bucket": "

        The Amazon S3 bucket in which to store the Spot instance data feed.

        ", "CreateSpotDatafeedSubscriptionRequest$Prefix": "

        A prefix for the data feed file names.

        ", "CreateSubnetRequest$VpcId": "

        The ID of the VPC.

        ", "CreateSubnetRequest$CidrBlock": "

        The network range for the subnet, in CIDR notation. For example, 10.0.0.0/24.

        ", "CreateSubnetRequest$AvailabilityZone": "

        The Availability Zone for the subnet.

        Default: AWS selects one for you. If you create more than one subnet in your VPC, we may not necessarily select a different zone for each subnet.

        ", "CreateVolumePermission$UserId": "

        The specific AWS account ID that is to be added or removed from a volume's list of create volume permissions.

        ", "CreateVolumeRequest$SnapshotId": "

        The snapshot from which to create the volume.

        ", "CreateVolumeRequest$AvailabilityZone": "

        The Availability Zone in which to create the volume. Use DescribeAvailabilityZones to list the Availability Zones that are currently available to you.

        ", "CreateVolumeRequest$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use when creating the encrypted volume. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used. The ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the key namespace, and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. If a KmsKeyId is specified, the Encrypted flag must also be set.

        ", "CreateVpcEndpointRequest$VpcId": "

        The ID of the VPC in which the endpoint will be used.

        ", "CreateVpcEndpointRequest$ServiceName": "

        The AWS service name, in the form com.amazonaws.region.service . To get a list of available services, use the DescribeVpcEndpointServices request.

        ", "CreateVpcEndpointRequest$PolicyDocument": "

        A policy to attach to the endpoint that controls access to the service. The policy must be in valid JSON format. If this parameter is not specified, we attach a default policy that allows full access to the service.

        ", "CreateVpcEndpointRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

        ", "CreateVpcEndpointResult$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request.

        ", "CreateVpcPeeringConnectionRequest$VpcId": "

        The ID of the requester VPC.

        ", "CreateVpcPeeringConnectionRequest$PeerVpcId": "

        The ID of the VPC with which you are creating the VPC peering connection.

        ", "CreateVpcPeeringConnectionRequest$PeerOwnerId": "

        The AWS account ID of the owner of the peer VPC.

        Default: Your AWS account ID

        ", "CreateVpcRequest$CidrBlock": "

        The network range for the VPC, in CIDR notation. For example, 10.0.0.0/16.

        ", "CreateVpnConnectionRequest$Type": "

        The type of VPN connection (ipsec.1).

        ", "CreateVpnConnectionRequest$CustomerGatewayId": "

        The ID of the customer gateway.

        ", "CreateVpnConnectionRequest$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "CreateVpnConnectionRouteRequest$VpnConnectionId": "

        The ID of the VPN connection.

        ", "CreateVpnConnectionRouteRequest$DestinationCidrBlock": "

        The CIDR block associated with the local subnet of the customer network.

        ", "CreateVpnGatewayRequest$AvailabilityZone": "

        The Availability Zone for the virtual private gateway.

        ", "CustomerGateway$CustomerGatewayId": "

        The ID of the customer gateway.

        ", "CustomerGateway$State": "

        The current state of the customer gateway (pending | available | deleting | deleted).

        ", "CustomerGateway$Type": "

        The type of VPN connection the customer gateway supports (ipsec.1).

        ", "CustomerGateway$IpAddress": "

        The Internet-routable IP address of the customer gateway's outside interface.

        ", "CustomerGateway$BgpAsn": "

        The customer gateway's Border Gateway Protocol (BGP) Autonomous System Number (ASN).

        ", "CustomerGatewayIdStringList$member": null, "DeleteCustomerGatewayRequest$CustomerGatewayId": "

        The ID of the customer gateway.

        ", "DeleteDhcpOptionsRequest$DhcpOptionsId": "

        The ID of the DHCP options set.

        ", "DeleteInternetGatewayRequest$InternetGatewayId": "

        The ID of the Internet gateway.

        ", "DeleteKeyPairRequest$KeyName": "

        The name of the key pair.

        ", "DeleteNatGatewayRequest$NatGatewayId": "

        The ID of the NAT gateway.

        ", "DeleteNatGatewayResult$NatGatewayId": "

        The ID of the NAT gateway.

        ", "DeleteNetworkAclEntryRequest$NetworkAclId": "

        The ID of the network ACL.

        ", "DeleteNetworkAclRequest$NetworkAclId": "

        The ID of the network ACL.

        ", "DeleteNetworkInterfaceRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "DeletePlacementGroupRequest$GroupName": "

        The name of the placement group.

        ", "DeleteRouteRequest$RouteTableId": "

        The ID of the route table.

        ", "DeleteRouteRequest$DestinationCidrBlock": "

        The CIDR range for the route. The value you specify must match the CIDR for the route exactly.

        ", "DeleteRouteTableRequest$RouteTableId": "

        The ID of the route table.

        ", "DeleteSecurityGroupRequest$GroupName": "

        [EC2-Classic, default VPC] The name of the security group. You can specify either the security group name or the security group ID.

        ", "DeleteSecurityGroupRequest$GroupId": "

        The ID of the security group. Required for a nondefault VPC.

        ", "DeleteSnapshotRequest$SnapshotId": "

        The ID of the EBS snapshot.

        ", "DeleteSubnetRequest$SubnetId": "

        The ID of the subnet.

        ", "DeleteVolumeRequest$VolumeId": "

        The ID of the volume.

        ", "DeleteVpcPeeringConnectionRequest$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "DeleteVpcRequest$VpcId": "

        The ID of the VPC.

        ", "DeleteVpnConnectionRequest$VpnConnectionId": "

        The ID of the VPN connection.

        ", "DeleteVpnConnectionRouteRequest$VpnConnectionId": "

        The ID of the VPN connection.

        ", "DeleteVpnConnectionRouteRequest$DestinationCidrBlock": "

        The CIDR block associated with the local subnet of the customer network.

        ", "DeleteVpnGatewayRequest$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "DeregisterImageRequest$ImageId": "

        The ID of the AMI.

        ", "DescribeClassicLinkInstancesRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeClassicLinkInstancesResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeFlowLogsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeFlowLogsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeHostReservationOfferingsRequest$OfferingId": "

        The ID of the reservation offering.

        ", "DescribeHostReservationOfferingsRequest$NextToken": "

        The token to use to retrieve the next page of results.

        ", "DescribeHostReservationOfferingsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeHostReservationsRequest$NextToken": "

        The token to use to retrieve the next page of results.

        ", "DescribeHostReservationsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeHostsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeHostsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeIdFormatRequest$Resource": "

        The type of resource: instance | reservation | snapshot | volume

        ", "DescribeIdentityIdFormatRequest$Resource": "

        The type of resource: instance | reservation | snapshot | volume

        ", "DescribeIdentityIdFormatRequest$PrincipalArn": "

        The ARN of the principal, which can be an IAM role, IAM user, or the root user.

        ", "DescribeImageAttributeRequest$ImageId": "

        The ID of the AMI.

        ", "DescribeImportImageTasksRequest$NextToken": "

        A token that indicates the next page of results.

        ", "DescribeImportImageTasksResult$NextToken": "

        The token to use to get the next page of results. This value is null when there are no more results to return.

        ", "DescribeImportSnapshotTasksRequest$NextToken": "

        A token that indicates the next page of results.

        ", "DescribeImportSnapshotTasksResult$NextToken": "

        The token to use to get the next page of results. This value is null when there are no more results to return.

        ", "DescribeInstanceAttributeRequest$InstanceId": "

        The ID of the instance.

        ", "DescribeInstanceStatusRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeInstanceStatusResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeInstancesRequest$NextToken": "

        The token to request the next page of results.

        ", "DescribeInstancesResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeMovingAddressesRequest$NextToken": "

        The token to use to retrieve the next page of results.

        ", "DescribeMovingAddressesResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeNatGatewaysRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeNatGatewaysResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeNetworkInterfaceAttributeRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "DescribeNetworkInterfaceAttributeResult$NetworkInterfaceId": "

        The ID of the network interface.

        ", "DescribePrefixListsRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a prior call.)

        ", "DescribePrefixListsResult$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DescribeReservedInstancesListingsRequest$ReservedInstancesId": "

        One or more Reserved Instance IDs.

        ", "DescribeReservedInstancesListingsRequest$ReservedInstancesListingId": "

        One or more Reserved Instance listing IDs.

        ", "DescribeReservedInstancesModificationsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeReservedInstancesModificationsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeReservedInstancesOfferingsRequest$AvailabilityZone": "

        The Availability Zone in which the Reserved Instance can be used.

        ", "DescribeReservedInstancesOfferingsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeReservedInstancesOfferingsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeScheduledInstanceAvailabilityRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeScheduledInstanceAvailabilityResult$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeScheduledInstancesRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeScheduledInstancesResult$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeSnapshotAttributeRequest$SnapshotId": "

        The ID of the EBS snapshot.

        ", "DescribeSnapshotAttributeResult$SnapshotId": "

        The ID of the EBS snapshot.

        ", "DescribeSnapshotsRequest$NextToken": "

        The NextToken value returned from a previous paginated DescribeSnapshots request where MaxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the NextToken value. This value is null when there are no more results to return.

        ", "DescribeSnapshotsResult$NextToken": "

        The NextToken value to include in a future DescribeSnapshots request. When the results of a DescribeSnapshots request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeSpotFleetInstancesRequest$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "DescribeSpotFleetInstancesRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeSpotFleetInstancesResponse$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "DescribeSpotFleetInstancesResponse$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeSpotFleetRequestHistoryRequest$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "DescribeSpotFleetRequestHistoryRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeSpotFleetRequestHistoryResponse$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "DescribeSpotFleetRequestHistoryResponse$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeSpotFleetRequestsRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeSpotFleetRequestsResponse$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeSpotPriceHistoryRequest$AvailabilityZone": "

        Filters the results by the specified Availability Zone.

        ", "DescribeSpotPriceHistoryRequest$NextToken": "

        The token for the next set of results.

        ", "DescribeSpotPriceHistoryResult$NextToken": "

        The token required to retrieve the next set of results. This value is null when there are no more results to return.

        ", "DescribeStaleSecurityGroupsRequest$VpcId": "

        The ID of the VPC.

        ", "DescribeStaleSecurityGroupsResult$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DescribeTagsRequest$NextToken": "

        The token to retrieve the next page of results.

        ", "DescribeTagsResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return..

        ", "DescribeVolumeAttributeRequest$VolumeId": "

        The ID of the volume.

        ", "DescribeVolumeAttributeResult$VolumeId": "

        The ID of the volume.

        ", "DescribeVolumeStatusRequest$NextToken": "

        The NextToken value to include in a future DescribeVolumeStatus request. When the results of the request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeVolumeStatusResult$NextToken": "

        The token to use to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeVolumesRequest$NextToken": "

        The NextToken value returned from a previous paginated DescribeVolumes request where MaxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the NextToken value. This value is null when there are no more results to return.

        ", "DescribeVolumesResult$NextToken": "

        The NextToken value to include in a future DescribeVolumes request. When the results of a DescribeVolumes request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeVpcAttributeRequest$VpcId": "

        The ID of the VPC.

        ", "DescribeVpcAttributeResult$VpcId": "

        The ID of the VPC.

        ", "DescribeVpcEndpointServicesRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a prior call.)

        ", "DescribeVpcEndpointServicesResult$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DescribeVpcEndpointsRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a prior call.)

        ", "DescribeVpcEndpointsResult$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "DetachClassicLinkVpcRequest$InstanceId": "

        The ID of the instance to unlink from the VPC.

        ", "DetachClassicLinkVpcRequest$VpcId": "

        The ID of the VPC to which the instance is linked.

        ", "DetachInternetGatewayRequest$InternetGatewayId": "

        The ID of the Internet gateway.

        ", "DetachInternetGatewayRequest$VpcId": "

        The ID of the VPC.

        ", "DetachNetworkInterfaceRequest$AttachmentId": "

        The ID of the attachment.

        ", "DetachVolumeRequest$VolumeId": "

        The ID of the volume.

        ", "DetachVolumeRequest$InstanceId": "

        The ID of the instance.

        ", "DetachVolumeRequest$Device": "

        The device name.

        ", "DetachVpnGatewayRequest$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "DetachVpnGatewayRequest$VpcId": "

        The ID of the VPC.

        ", "DhcpConfiguration$Key": "

        The name of a DHCP option.

        ", "DhcpOptions$DhcpOptionsId": "

        The ID of the set of DHCP options.

        ", "DhcpOptionsIdStringList$member": null, "DisableVgwRoutePropagationRequest$RouteTableId": "

        The ID of the route table.

        ", "DisableVgwRoutePropagationRequest$GatewayId": "

        The ID of the virtual private gateway.

        ", "DisableVpcClassicLinkDnsSupportRequest$VpcId": "

        The ID of the VPC.

        ", "DisableVpcClassicLinkRequest$VpcId": "

        The ID of the VPC.

        ", "DisassociateAddressRequest$PublicIp": "

        [EC2-Classic] The Elastic IP address. Required for EC2-Classic.

        ", "DisassociateAddressRequest$AssociationId": "

        [EC2-VPC] The association ID. Required for EC2-VPC.

        ", "DisassociateRouteTableRequest$AssociationId": "

        The association ID representing the current association between the route table and subnet.

        ", "DiskImage$Description": "

        A description of the disk image.

        ", "DiskImageDescription$ImportManifestUrl": "

        A presigned URL for the import manifest stored in Amazon S3. For information about creating a presigned URL for an Amazon S3 object, read the \"Query String Request Authentication Alternative\" section of the Authenticating REST Requests topic in the Amazon Simple Storage Service Developer Guide.

        For information about the import manifest referenced by this API action, see VM Import Manifest.

        ", "DiskImageDescription$Checksum": "

        The checksum computed for the disk image.

        ", "DiskImageDetail$ImportManifestUrl": "

        A presigned URL for the import manifest stored in Amazon S3 and presented here as an Amazon S3 presigned URL. For information about creating a presigned URL for an Amazon S3 object, read the \"Query String Request Authentication Alternative\" section of the Authenticating REST Requests topic in the Amazon Simple Storage Service Developer Guide.

        For information about the import manifest referenced by this API action, see VM Import Manifest.

        ", "DiskImageVolumeDescription$Id": "

        The volume identifier.

        ", "EbsBlockDevice$SnapshotId": "

        The ID of the snapshot.

        ", "EbsInstanceBlockDevice$VolumeId": "

        The ID of the EBS volume.

        ", "EbsInstanceBlockDeviceSpecification$VolumeId": "

        The ID of the EBS volume.

        ", "EnableVgwRoutePropagationRequest$RouteTableId": "

        The ID of the route table.

        ", "EnableVgwRoutePropagationRequest$GatewayId": "

        The ID of the virtual private gateway.

        ", "EnableVolumeIORequest$VolumeId": "

        The ID of the volume.

        ", "EnableVpcClassicLinkDnsSupportRequest$VpcId": "

        The ID of the VPC.

        ", "EnableVpcClassicLinkRequest$VpcId": "

        The ID of the VPC.

        ", "EventInformation$InstanceId": "

        The ID of the instance. This information is available only for instanceChange events.

        ", "EventInformation$EventSubType": "

        The event.

        The following are the error events.

        • iamFleetRoleInvalid - The Spot fleet did not have the required permissions either to launch or terminate an instance.

        • launchSpecTemporarilyBlacklisted - The configuration is not valid and several attempts to launch instances have failed. For more information, see the description of the event.

        • spotFleetRequestConfigurationInvalid - The configuration is not valid. For more information, see the description of the event.

        • spotInstanceCountLimitExceeded - You've reached the limit on the number of Spot instances that you can launch.

        The following are the fleetRequestChange events.

        • active - The Spot fleet has been validated and Amazon EC2 is attempting to maintain the target number of running Spot instances.

        • cancelled - The Spot fleet is canceled and has no running Spot instances. The Spot fleet will be deleted two days after its instances were terminated.

        • cancelled_running - The Spot fleet is canceled and will not launch additional Spot instances, but its existing Spot instances continue to run until they are interrupted or terminated.

        • cancelled_terminating - The Spot fleet is canceled and its Spot instances are terminating.

        • expired - The Spot fleet request has expired. A subsequent event indicates that the instances were terminated, if the request was created with TerminateInstancesWithExpiration set.

        • modify_in_progress - A request to modify the Spot fleet request was accepted and is in progress.

        • modify_successful - The Spot fleet request was modified.

        • price_update - The bid price for a launch configuration was adjusted because it was too high. This change is permanent.

        • submitted - The Spot fleet request is being evaluated and Amazon EC2 is preparing to launch the target number of Spot instances.

        The following are the instanceChange events.

        • launched - A bid was fulfilled and a new instance was launched.

        • terminated - An instance was terminated by the user.

        ", "EventInformation$EventDescription": "

        The description of the event.

        ", "ExecutableByStringList$member": null, "ExportTask$ExportTaskId": "

        The ID of the export task.

        ", "ExportTask$Description": "

        A description of the resource being exported.

        ", "ExportTask$StatusMessage": "

        The status message related to the export task.

        ", "ExportTaskIdStringList$member": null, "ExportToS3Task$S3Bucket": "

        The S3 bucket for the destination image. The destination bucket must exist and grant WRITE and READ_ACP permissions to the AWS account vm-import-export@amazon.com.

        ", "ExportToS3Task$S3Key": "

        The encryption key for your S3 bucket.

        ", "ExportToS3TaskSpecification$S3Bucket": "

        The S3 bucket for the destination image. The destination bucket must exist and grant WRITE and READ_ACP permissions to the AWS account vm-import-export@amazon.com.

        ", "ExportToS3TaskSpecification$S3Prefix": "

        The image is written to a single object in the S3 bucket at the S3 key s3prefix + exportTaskId + '.' + diskImageFormat.

        ", "Filter$Name": "

        The name of the filter. Filter names are case-sensitive.

        ", "FlowLog$FlowLogId": "

        The flow log ID.

        ", "FlowLog$FlowLogStatus": "

        The status of the flow log (ACTIVE).

        ", "FlowLog$ResourceId": "

        The ID of the resource on which the flow log was created.

        ", "FlowLog$LogGroupName": "

        The name of the flow log group.

        ", "FlowLog$DeliverLogsStatus": "

        The status of the logs delivery (SUCCESS | FAILED).

        ", "FlowLog$DeliverLogsErrorMessage": "

        Information about the error that occurred. Rate limited indicates that CloudWatch logs throttling has been applied for one or more network interfaces, or that you've reached the limit on the number of CloudWatch Logs log groups that you can create. Access error indicates that the IAM role associated with the flow log does not have sufficient permissions to publish to CloudWatch Logs. Unknown error indicates an internal error.

        ", "FlowLog$DeliverLogsPermissionArn": "

        The ARN of the IAM role that posts logs to CloudWatch Logs.

        ", "GetConsoleOutputRequest$InstanceId": "

        The ID of the instance.

        ", "GetConsoleOutputResult$InstanceId": "

        The ID of the instance.

        ", "GetConsoleOutputResult$Output": "

        The console output, Base64-encoded. If using a command line tool, the tool decodes the output for you.

        ", "GetConsoleScreenshotRequest$InstanceId": "

        The ID of the instance.

        ", "GetConsoleScreenshotResult$InstanceId": "

        The ID of the instance.

        ", "GetConsoleScreenshotResult$ImageData": "

        The data that comprises the image.

        ", "GetHostReservationPurchasePreviewRequest$OfferingId": "

        The offering ID of the reservation.

        ", "GetHostReservationPurchasePreviewResult$TotalUpfrontPrice": "

        The potential total upfront price. This is billed immediately.

        ", "GetHostReservationPurchasePreviewResult$TotalHourlyPrice": "

        The potential total hourly price of the reservation per hour.

        ", "GetPasswordDataRequest$InstanceId": "

        The ID of the Windows instance.

        ", "GetPasswordDataResult$InstanceId": "

        The ID of the Windows instance.

        ", "GetPasswordDataResult$PasswordData": "

        The password of the instance.

        ", "GetReservedInstancesExchangeQuoteResult$PaymentDue": "

        The total true upfront charge for the exchange.

        ", "GetReservedInstancesExchangeQuoteResult$CurrencyCode": "

        The currency of the transaction.

        ", "GetReservedInstancesExchangeQuoteResult$ValidationFailureReason": "

        Describes the reason why the exchange can not be completed.

        ", "GroupIdStringList$member": null, "GroupIdentifier$GroupName": "

        The name of the security group.

        ", "GroupIdentifier$GroupId": "

        The ID of the security group.

        ", "GroupIds$member": null, "GroupNameStringList$member": null, "Host$HostId": "

        The ID of the Dedicated Host.

        ", "Host$HostReservationId": "

        The reservation ID of the Dedicated Host. This returns a null response if the Dedicated Host doesn't have an associated reservation.

        ", "Host$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.

        ", "Host$AvailabilityZone": "

        The Availability Zone of the Dedicated Host.

        ", "HostInstance$InstanceId": "

        the IDs of instances that are running on the Dedicated Host.

        ", "HostInstance$InstanceType": "

        The instance type size (for example, m3.medium) of the running instance.

        ", "HostOffering$OfferingId": "

        The ID of the offering.

        ", "HostOffering$InstanceFamily": "

        The instance family of the offering.

        ", "HostOffering$UpfrontPrice": "

        The upfront price of the offering. Does not apply to No Upfront offerings.

        ", "HostOffering$HourlyPrice": "

        The hourly price of the offering.

        ", "HostProperties$InstanceType": "

        The instance type size that the Dedicated Host supports (for example, m3.medium).

        ", "HostReservation$HostReservationId": "

        The ID of the reservation that specifies the associated Dedicated Hosts.

        ", "HostReservation$OfferingId": "

        The ID of the reservation. This remains the same regardless of which Dedicated Hosts are associated with it.

        ", "HostReservation$InstanceFamily": "

        The instance family of the Dedicated Host Reservation. The instance family on the Dedicated Host must be the same in order for it to benefit from the reservation.

        ", "HostReservation$HourlyPrice": "

        The hourly price of the reservation.

        ", "HostReservation$UpfrontPrice": "

        The upfront price of the reservation.

        ", "HostReservationIdSet$member": null, "IamInstanceProfile$Arn": "

        The Amazon Resource Name (ARN) of the instance profile.

        ", "IamInstanceProfile$Id": "

        The ID of the instance profile.

        ", "IamInstanceProfileSpecification$Arn": "

        The Amazon Resource Name (ARN) of the instance profile.

        ", "IamInstanceProfileSpecification$Name": "

        The name of the instance profile.

        ", "IdFormat$Resource": "

        The type of resource.

        ", "Image$ImageId": "

        The ID of the AMI.

        ", "Image$ImageLocation": "

        The location of the AMI.

        ", "Image$OwnerId": "

        The AWS account ID of the image owner.

        ", "Image$CreationDate": "

        The date and time the image was created.

        ", "Image$KernelId": "

        The kernel associated with the image, if any. Only applicable for machine images.

        ", "Image$RamdiskId": "

        The RAM disk associated with the image, if any. Only applicable for machine images.

        ", "Image$SriovNetSupport": "

        Specifies whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.

        ", "Image$ImageOwnerAlias": "

        The AWS account alias (for example, amazon, self) or the AWS account ID of the AMI owner.

        ", "Image$Name": "

        The name of the AMI that was provided during image creation.

        ", "Image$Description": "

        The description of the AMI that was provided during image creation.

        ", "Image$RootDeviceName": "

        The device name of the root device (for example, /dev/sda1 or /dev/xvda).

        ", "ImageAttribute$ImageId": "

        The ID of the AMI.

        ", "ImageDiskContainer$Description": "

        The description of the disk image.

        ", "ImageDiskContainer$Format": "

        The format of the disk image being imported.

        Valid values: RAW | VHD | VMDK | OVA

        ", "ImageDiskContainer$Url": "

        The URL to the Amazon S3-based disk image being imported. The URL can either be a https URL (https://..) or an Amazon S3 URL (s3://..)

        ", "ImageDiskContainer$DeviceName": "

        The block device mapping for the disk.

        ", "ImageDiskContainer$SnapshotId": "

        The ID of the EBS snapshot to be used for importing the snapshot.

        ", "ImageIdStringList$member": null, "ImportImageRequest$Description": "

        A description string for the import image task.

        ", "ImportImageRequest$LicenseType": "

        The license type to be used for the Amazon Machine Image (AMI) after importing.

        Note: You may only use BYOL if you have existing licenses with rights to use these licenses in a third party cloud like AWS. For more information, see Prerequisites in the VM Import/Export User Guide.

        Valid values: AWS | BYOL

        ", "ImportImageRequest$Hypervisor": "

        The target hypervisor platform.

        Valid values: xen

        ", "ImportImageRequest$Architecture": "

        The architecture of the virtual machine.

        Valid values: i386 | x86_64

        ", "ImportImageRequest$Platform": "

        The operating system of the virtual machine.

        Valid values: Windows | Linux

        ", "ImportImageRequest$ClientToken": "

        The token to enable idempotency for VM import requests.

        ", "ImportImageRequest$RoleName": "

        The name of the role to use when not using the default role, 'vmimport'.

        ", "ImportImageResult$ImportTaskId": "

        The task ID of the import image task.

        ", "ImportImageResult$Architecture": "

        The architecture of the virtual machine.

        ", "ImportImageResult$LicenseType": "

        The license type of the virtual machine.

        ", "ImportImageResult$Platform": "

        The operating system of the virtual machine.

        ", "ImportImageResult$Hypervisor": "

        The target hypervisor of the import task.

        ", "ImportImageResult$Description": "

        A description of the import task.

        ", "ImportImageResult$ImageId": "

        The ID of the Amazon Machine Image (AMI) created by the import task.

        ", "ImportImageResult$Progress": "

        The progress of the task.

        ", "ImportImageResult$StatusMessage": "

        A detailed status message of the import task.

        ", "ImportImageResult$Status": "

        A brief status of the task.

        ", "ImportImageTask$ImportTaskId": "

        The ID of the import image task.

        ", "ImportImageTask$Architecture": "

        The architecture of the virtual machine.

        Valid values: i386 | x86_64

        ", "ImportImageTask$LicenseType": "

        The license type of the virtual machine.

        ", "ImportImageTask$Platform": "

        The description string for the import image task.

        ", "ImportImageTask$Hypervisor": "

        The target hypervisor for the import task.

        Valid values: xen

        ", "ImportImageTask$Description": "

        A description of the import task.

        ", "ImportImageTask$ImageId": "

        The ID of the Amazon Machine Image (AMI) of the imported virtual machine.

        ", "ImportImageTask$Progress": "

        The percentage of progress of the import image task.

        ", "ImportImageTask$StatusMessage": "

        A descriptive status message for the import image task.

        ", "ImportImageTask$Status": "

        A brief status for the import image task.

        ", "ImportInstanceLaunchSpecification$AdditionalInfo": "

        Reserved.

        ", "ImportInstanceLaunchSpecification$SubnetId": "

        [EC2-VPC] The ID of the subnet in which to launch the instance.

        ", "ImportInstanceLaunchSpecification$PrivateIpAddress": "

        [EC2-VPC] An available IP address from the IP address range of the subnet.

        ", "ImportInstanceRequest$Description": "

        A description for the instance being imported.

        ", "ImportInstanceTaskDetails$InstanceId": "

        The ID of the instance.

        ", "ImportInstanceTaskDetails$Description": "

        A description of the task.

        ", "ImportInstanceVolumeDetailItem$AvailabilityZone": "

        The Availability Zone where the resulting instance will reside.

        ", "ImportInstanceVolumeDetailItem$Status": "

        The status of the import of this particular disk image.

        ", "ImportInstanceVolumeDetailItem$StatusMessage": "

        The status information or errors related to the disk image.

        ", "ImportInstanceVolumeDetailItem$Description": "

        A description of the task.

        ", "ImportKeyPairRequest$KeyName": "

        A unique name for the key pair.

        ", "ImportKeyPairResult$KeyName": "

        The key pair name you provided.

        ", "ImportKeyPairResult$KeyFingerprint": "

        The MD5 public key fingerprint as specified in section 4 of RFC 4716.

        ", "ImportSnapshotRequest$Description": "

        The description string for the import snapshot task.

        ", "ImportSnapshotRequest$ClientToken": "

        Token to enable idempotency for VM import requests.

        ", "ImportSnapshotRequest$RoleName": "

        The name of the role to use when not using the default role, 'vmimport'.

        ", "ImportSnapshotResult$ImportTaskId": "

        The ID of the import snapshot task.

        ", "ImportSnapshotResult$Description": "

        A description of the import snapshot task.

        ", "ImportSnapshotTask$ImportTaskId": "

        The ID of the import snapshot task.

        ", "ImportSnapshotTask$Description": "

        A description of the import snapshot task.

        ", "ImportTaskIdList$member": null, "ImportVolumeRequest$AvailabilityZone": "

        The Availability Zone for the resulting EBS volume.

        ", "ImportVolumeRequest$Description": "

        A description of the volume.

        ", "ImportVolumeTaskDetails$AvailabilityZone": "

        The Availability Zone where the resulting volume will reside.

        ", "ImportVolumeTaskDetails$Description": "

        The description you provided when starting the import volume task.

        ", "Instance$InstanceId": "

        The ID of the instance.

        ", "Instance$ImageId": "

        The ID of the AMI used to launch the instance.

        ", "Instance$PrivateDnsName": "

        The private DNS name assigned to the instance. This DNS name can only be used inside the Amazon EC2 network. This name is not available until the instance enters the running state. For EC2-VPC, this name is only available if you've enabled DNS hostnames for your VPC.

        ", "Instance$PublicDnsName": "

        The public DNS name assigned to the instance. This name is not available until the instance enters the running state. For EC2-VPC, this name is only available if you've enabled DNS hostnames for your VPC.

        ", "Instance$StateTransitionReason": "

        The reason for the most recent state transition. This might be an empty string.

        ", "Instance$KeyName": "

        The name of the key pair, if this instance was launched with an associated key pair.

        ", "Instance$KernelId": "

        The kernel associated with this instance, if applicable.

        ", "Instance$RamdiskId": "

        The RAM disk associated with this instance, if applicable.

        ", "Instance$SubnetId": "

        [EC2-VPC] The ID of the subnet in which the instance is running.

        ", "Instance$VpcId": "

        [EC2-VPC] The ID of the VPC in which the instance is running.

        ", "Instance$PrivateIpAddress": "

        The private IP address assigned to the instance.

        ", "Instance$PublicIpAddress": "

        The public IP address assigned to the instance, if applicable.

        ", "Instance$RootDeviceName": "

        The root device name (for example, /dev/sda1 or /dev/xvda).

        ", "Instance$SpotInstanceRequestId": "

        If the request is a Spot instance request, the ID of the request.

        ", "Instance$ClientToken": "

        The idempotency token you provided when you launched the instance, if applicable.

        ", "Instance$SriovNetSupport": "

        Specifies whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.

        ", "InstanceAttribute$InstanceId": "

        The ID of the instance.

        ", "InstanceBlockDeviceMapping$DeviceName": "

        The device name exposed to the instance (for example, /dev/sdh or xvdh).

        ", "InstanceBlockDeviceMappingSpecification$DeviceName": "

        The device name exposed to the instance (for example, /dev/sdh or xvdh).

        ", "InstanceBlockDeviceMappingSpecification$VirtualName": "

        The virtual device name.

        ", "InstanceBlockDeviceMappingSpecification$NoDevice": "

        suppress the specified device included in the block device mapping.

        ", "InstanceCapacity$InstanceType": "

        The instance type size supported by the Dedicated Host.

        ", "InstanceExportDetails$InstanceId": "

        The ID of the resource being exported.

        ", "InstanceIdSet$member": null, "InstanceIdStringList$member": null, "InstanceMonitoring$InstanceId": "

        The ID of the instance.

        ", "InstanceNetworkInterface$NetworkInterfaceId": "

        The ID of the network interface.

        ", "InstanceNetworkInterface$SubnetId": "

        The ID of the subnet.

        ", "InstanceNetworkInterface$VpcId": "

        The ID of the VPC.

        ", "InstanceNetworkInterface$Description": "

        The description.

        ", "InstanceNetworkInterface$OwnerId": "

        The ID of the AWS account that created the network interface.

        ", "InstanceNetworkInterface$MacAddress": "

        The MAC address.

        ", "InstanceNetworkInterface$PrivateIpAddress": "

        The IP address of the network interface within the subnet.

        ", "InstanceNetworkInterface$PrivateDnsName": "

        The private DNS name.

        ", "InstanceNetworkInterfaceAssociation$PublicIp": "

        The public IP address or Elastic IP address bound to the network interface.

        ", "InstanceNetworkInterfaceAssociation$PublicDnsName": "

        The public DNS name.

        ", "InstanceNetworkInterfaceAssociation$IpOwnerId": "

        The ID of the owner of the Elastic IP address.

        ", "InstanceNetworkInterfaceAttachment$AttachmentId": "

        The ID of the network interface attachment.

        ", "InstanceNetworkInterfaceSpecification$NetworkInterfaceId": "

        The ID of the network interface.

        ", "InstanceNetworkInterfaceSpecification$SubnetId": "

        The ID of the subnet associated with the network string. Applies only if creating a network interface when launching an instance.

        ", "InstanceNetworkInterfaceSpecification$Description": "

        The description of the network interface. Applies only if creating a network interface when launching an instance.

        ", "InstanceNetworkInterfaceSpecification$PrivateIpAddress": "

        The private IP address of the network interface. Applies only if creating a network interface when launching an instance. You cannot specify this option if you're launching more than one instance in a RunInstances request.

        ", "InstancePrivateIpAddress$PrivateIpAddress": "

        The private IP address of the network interface.

        ", "InstancePrivateIpAddress$PrivateDnsName": "

        The private DNS name.

        ", "InstanceStateChange$InstanceId": "

        The ID of the instance.

        ", "InstanceStatus$InstanceId": "

        The ID of the instance.

        ", "InstanceStatus$AvailabilityZone": "

        The Availability Zone of the instance.

        ", "InstanceStatusEvent$Description": "

        A description of the event.

        After a scheduled event is completed, it can still be described for up to a week. If the event has been completed, this description starts with the following text: [Completed].

        ", "InternetGateway$InternetGatewayId": "

        The ID of the Internet gateway.

        ", "InternetGatewayAttachment$VpcId": "

        The ID of the VPC.

        ", "IpPermission$IpProtocol": "

        The IP protocol name (for tcp, udp, and icmp) or number (see Protocol Numbers).

        [EC2-VPC only] When you authorize or revoke security group rules, you can use -1 to specify all.

        ", "IpRange$CidrIp": "

        The CIDR range. You can either specify a CIDR range or a source security group, not both.

        ", "IpRanges$member": null, "KeyNameStringList$member": null, "KeyPair$KeyName": "

        The name of the key pair.

        ", "KeyPair$KeyFingerprint": "

        The SHA-1 digest of the DER encoded private key.

        ", "KeyPair$KeyMaterial": "

        An unencrypted PEM encoded RSA private key.

        ", "KeyPairInfo$KeyName": "

        The name of the key pair.

        ", "KeyPairInfo$KeyFingerprint": "

        If you used CreateKeyPair to create the key pair, this is the SHA-1 digest of the DER encoded private key. If you used ImportKeyPair to provide AWS the public key, this is the MD5 public key fingerprint as specified in section 4 of RFC4716.

        ", "LaunchPermission$UserId": "

        The AWS account ID.

        ", "LaunchSpecification$ImageId": "

        The ID of the AMI.

        ", "LaunchSpecification$KeyName": "

        The name of the key pair.

        ", "LaunchSpecification$UserData": "

        The user data to make available to the instances. If you are using an AWS SDK or command line tool, Base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide Base64-encoded text.

        ", "LaunchSpecification$AddressingType": "

        Deprecated.

        ", "LaunchSpecification$KernelId": "

        The ID of the kernel.

        ", "LaunchSpecification$RamdiskId": "

        The ID of the RAM disk.

        ", "LaunchSpecification$SubnetId": "

        The ID of the subnet in which to launch the instance.

        ", "ModifyIdFormatRequest$Resource": "

        The type of resource: instance | reservation | snapshot | volume

        ", "ModifyIdentityIdFormatRequest$Resource": "

        The type of resource: instance | reservation | snapshot | volume

        ", "ModifyIdentityIdFormatRequest$PrincipalArn": "

        The ARN of the principal, which can be an IAM user, IAM role, or the root user. Specify all to modify the ID format for all IAM users, IAM roles, and the root user of the account.

        ", "ModifyImageAttributeRequest$ImageId": "

        The ID of the AMI.

        ", "ModifyImageAttributeRequest$Attribute": "

        The name of the attribute to modify.

        ", "ModifyImageAttributeRequest$Value": "

        The value of the attribute being modified. This is only valid when modifying the description attribute.

        ", "ModifyInstanceAttributeRequest$InstanceId": "

        The ID of the instance.

        ", "ModifyInstanceAttributeRequest$Value": "

        A new value for the attribute. Use only with the kernel, ramdisk, userData, disableApiTermination, or instanceInitiatedShutdownBehavior attribute.

        ", "ModifyInstancePlacementRequest$InstanceId": "

        The ID of the instance that you are modifying.

        ", "ModifyInstancePlacementRequest$HostId": "

        The ID of the Dedicated Host that the instance will have affinity with.

        ", "ModifyNetworkInterfaceAttributeRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "ModifyReservedInstancesRequest$ClientToken": "

        A unique, case-sensitive token you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

        ", "ModifyReservedInstancesResult$ReservedInstancesModificationId": "

        The ID for the modification.

        ", "ModifySnapshotAttributeRequest$SnapshotId": "

        The ID of the snapshot.

        ", "ModifySpotFleetRequestRequest$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "ModifySubnetAttributeRequest$SubnetId": "

        The ID of the subnet.

        ", "ModifyVolumeAttributeRequest$VolumeId": "

        The ID of the volume.

        ", "ModifyVpcAttributeRequest$VpcId": "

        The ID of the VPC.

        ", "ModifyVpcEndpointRequest$VpcEndpointId": "

        The ID of the endpoint.

        ", "ModifyVpcEndpointRequest$PolicyDocument": "

        A policy document to attach to the endpoint. The policy must be in valid JSON format.

        ", "ModifyVpcPeeringConnectionOptionsRequest$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "MoveAddressToVpcRequest$PublicIp": "

        The Elastic IP address.

        ", "MoveAddressToVpcResult$AllocationId": "

        The allocation ID for the Elastic IP address.

        ", "MovingAddressStatus$PublicIp": "

        The Elastic IP address.

        ", "NatGateway$VpcId": "

        The ID of the VPC in which the NAT gateway is located.

        ", "NatGateway$SubnetId": "

        The ID of the subnet in which the NAT gateway is located.

        ", "NatGateway$NatGatewayId": "

        The ID of the NAT gateway.

        ", "NatGateway$FailureCode": "

        If the NAT gateway could not be created, specifies the error code for the failure. (InsufficientFreeAddressesInSubnet | Gateway.NotAttached | InvalidAllocationID.NotFound | Resource.AlreadyAssociated | InternalError | InvalidSubnetID.NotFound)

        ", "NatGateway$FailureMessage": "

        If the NAT gateway could not be created, specifies the error message for the failure, that corresponds to the error code.

        • For InsufficientFreeAddressesInSubnet: \"Subnet has insufficient free addresses to create this NAT gateway\"

        • For Gateway.NotAttached: \"Network vpc-xxxxxxxx has no Internet gateway attached\"

        • For InvalidAllocationID.NotFound: \"Elastic IP address eipalloc-xxxxxxxx could not be associated with this NAT gateway\"

        • For Resource.AlreadyAssociated: \"Elastic IP address eipalloc-xxxxxxxx is already associated\"

        • For InternalError: \"Network interface eni-xxxxxxxx, created and used internally by this NAT gateway is in an invalid state. Please try again.\"

        • For InvalidSubnetID.NotFound: \"The specified subnet subnet-xxxxxxxx does not exist or could not be found.\"

        ", "NatGatewayAddress$PublicIp": "

        The Elastic IP address associated with the NAT gateway.

        ", "NatGatewayAddress$AllocationId": "

        The allocation ID of the Elastic IP address that's associated with the NAT gateway.

        ", "NatGatewayAddress$PrivateIp": "

        The private IP address associated with the Elastic IP address.

        ", "NatGatewayAddress$NetworkInterfaceId": "

        The ID of the network interface associated with the NAT gateway.

        ", "NetworkAcl$NetworkAclId": "

        The ID of the network ACL.

        ", "NetworkAcl$VpcId": "

        The ID of the VPC for the network ACL.

        ", "NetworkAclAssociation$NetworkAclAssociationId": "

        The ID of the association between a network ACL and a subnet.

        ", "NetworkAclAssociation$NetworkAclId": "

        The ID of the network ACL.

        ", "NetworkAclAssociation$SubnetId": "

        The ID of the subnet.

        ", "NetworkAclEntry$Protocol": "

        The protocol. A value of -1 means all protocols.

        ", "NetworkAclEntry$CidrBlock": "

        The network range to allow or deny, in CIDR notation.

        ", "NetworkInterface$NetworkInterfaceId": "

        The ID of the network interface.

        ", "NetworkInterface$SubnetId": "

        The ID of the subnet.

        ", "NetworkInterface$VpcId": "

        The ID of the VPC.

        ", "NetworkInterface$AvailabilityZone": "

        The Availability Zone.

        ", "NetworkInterface$Description": "

        A description.

        ", "NetworkInterface$OwnerId": "

        The AWS account ID of the owner of the network interface.

        ", "NetworkInterface$RequesterId": "

        The ID of the entity that launched the instance on your behalf (for example, AWS Management Console or Auto Scaling).

        ", "NetworkInterface$MacAddress": "

        The MAC address.

        ", "NetworkInterface$PrivateIpAddress": "

        The IP address of the network interface within the subnet.

        ", "NetworkInterface$PrivateDnsName": "

        The private DNS name.

        ", "NetworkInterfaceAssociation$PublicIp": "

        The address of the Elastic IP address bound to the network interface.

        ", "NetworkInterfaceAssociation$PublicDnsName": "

        The public DNS name.

        ", "NetworkInterfaceAssociation$IpOwnerId": "

        The ID of the Elastic IP address owner.

        ", "NetworkInterfaceAssociation$AllocationId": "

        The allocation ID.

        ", "NetworkInterfaceAssociation$AssociationId": "

        The association ID.

        ", "NetworkInterfaceAttachment$AttachmentId": "

        The ID of the network interface attachment.

        ", "NetworkInterfaceAttachment$InstanceId": "

        The ID of the instance.

        ", "NetworkInterfaceAttachment$InstanceOwnerId": "

        The AWS account ID of the owner of the instance.

        ", "NetworkInterfaceAttachmentChanges$AttachmentId": "

        The ID of the network interface attachment.

        ", "NetworkInterfaceIdList$member": null, "NetworkInterfacePrivateIpAddress$PrivateIpAddress": "

        The private IP address.

        ", "NetworkInterfacePrivateIpAddress$PrivateDnsName": "

        The private DNS name.

        ", "NewDhcpConfiguration$Key": null, "OwnerStringList$member": null, "Placement$AvailabilityZone": "

        The Availability Zone of the instance.

        ", "Placement$GroupName": "

        The name of the placement group the instance is in (for cluster compute instances).

        ", "Placement$HostId": "

        The ID of the Dedicted host on which the instance resides. This parameter is not support for the ImportInstance command.

        ", "Placement$Affinity": "

        The affinity setting for the instance on the Dedicated Host. This parameter is not supported for the ImportInstance command.

        ", "PlacementGroup$GroupName": "

        The name of the placement group.

        ", "PlacementGroupStringList$member": null, "PrefixList$PrefixListId": "

        The ID of the prefix.

        ", "PrefixList$PrefixListName": "

        The name of the prefix.

        ", "PrefixListId$PrefixListId": "

        The ID of the prefix.

        ", "PrefixListIdSet$member": null, "PrivateIpAddressSpecification$PrivateIpAddress": "

        The private IP addresses.

        ", "PrivateIpAddressStringList$member": null, "ProductCode$ProductCodeId": "

        The product code.

        ", "ProductCodeStringList$member": null, "ProductDescriptionList$member": null, "PropagatingVgw$GatewayId": "

        The ID of the virtual private gateway (VGW).

        ", "ProvisionedBandwidth$Provisioned": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        ", "ProvisionedBandwidth$Requested": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        ", "ProvisionedBandwidth$Status": "

        Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

        ", "PublicIpStringList$member": null, "Purchase$HostReservationId": "

        The ID of the reservation.

        ", "Purchase$InstanceFamily": "

        The instance family on the Dedicated Host that the reservation can be associated with.

        ", "Purchase$UpfrontPrice": "

        The upfront price of the reservation.

        ", "Purchase$HourlyPrice": "

        The hourly price of the reservation per hour.

        ", "PurchaseHostReservationRequest$OfferingId": "

        The ID of the offering.

        ", "PurchaseHostReservationRequest$LimitPrice": "

        The specified limit is checked against the total upfront cost of the reservation (calculated as the offering's upfront cost multiplied by the host count). If the total upfront cost is greater than the specified price limit, the request will fail. This is used to ensure that the purchase does not exceed the expected upfront cost of the purchase. At this time, the only supported currency is USD. For example, to indicate a limit price of USD 100, specify 100.00.

        ", "PurchaseHostReservationRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.

        ", "PurchaseHostReservationResult$TotalUpfrontPrice": "

        The total amount that will be charged to your account when you purchase the reservation.

        ", "PurchaseHostReservationResult$TotalHourlyPrice": "

        The total hourly price of the reservation calculated per hour.

        ", "PurchaseHostReservationResult$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide

        ", "PurchaseRequest$PurchaseToken": "

        The purchase token.

        ", "PurchaseReservedInstancesOfferingRequest$ReservedInstancesOfferingId": "

        The ID of the Reserved Instance offering to purchase.

        ", "PurchaseReservedInstancesOfferingResult$ReservedInstancesId": "

        The IDs of the purchased Reserved Instances.

        ", "PurchaseScheduledInstancesRequest$ClientToken": "

        Unique, case-sensitive identifier that ensures the idempotency of the request. For more information, see Ensuring Idempotency.

        ", "Region$RegionName": "

        The name of the region.

        ", "Region$Endpoint": "

        The region service endpoint.

        ", "RegionNameStringList$member": null, "RegisterImageRequest$ImageLocation": "

        The full path to your AMI manifest in Amazon S3 storage.

        ", "RegisterImageRequest$Name": "

        A name for your AMI.

        Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)

        ", "RegisterImageRequest$Description": "

        A description for your AMI.

        ", "RegisterImageRequest$KernelId": "

        The ID of the kernel.

        ", "RegisterImageRequest$RamdiskId": "

        The ID of the RAM disk.

        ", "RegisterImageRequest$RootDeviceName": "

        The name of the root device (for example, /dev/sda1, or /dev/xvda).

        ", "RegisterImageRequest$VirtualizationType": "

        The type of virtualization.

        Default: paravirtual

        ", "RegisterImageRequest$SriovNetSupport": "

        Set to simple to enable enhanced networking with the Intel 82599 Virtual Function interface for the AMI and any instances that you launch from the AMI.

        There is no way to disable sriovNetSupport at this time.

        This option is supported only for HVM AMIs. Specifying this option with a PV AMI can make instances launched from the AMI unreachable.

        ", "RegisterImageResult$ImageId": "

        The ID of the newly registered AMI.

        ", "RejectVpcPeeringConnectionRequest$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "ReleaseAddressRequest$PublicIp": "

        [EC2-Classic] The Elastic IP address. Required for EC2-Classic.

        ", "ReleaseAddressRequest$AllocationId": "

        [EC2-VPC] The allocation ID. Required for EC2-VPC.

        ", "ReplaceNetworkAclAssociationRequest$AssociationId": "

        The ID of the current association between the original network ACL and the subnet.

        ", "ReplaceNetworkAclAssociationRequest$NetworkAclId": "

        The ID of the new network ACL to associate with the subnet.

        ", "ReplaceNetworkAclAssociationResult$NewAssociationId": "

        The ID of the new association.

        ", "ReplaceNetworkAclEntryRequest$NetworkAclId": "

        The ID of the ACL.

        ", "ReplaceNetworkAclEntryRequest$Protocol": "

        The IP protocol. You can specify all or -1 to mean all protocols.

        ", "ReplaceNetworkAclEntryRequest$CidrBlock": "

        The network range to allow or deny, in CIDR notation.

        ", "ReplaceRouteRequest$RouteTableId": "

        The ID of the route table.

        ", "ReplaceRouteRequest$DestinationCidrBlock": "

        The CIDR address block used for the destination match. The value you provide must match the CIDR of an existing route in the table.

        ", "ReplaceRouteRequest$GatewayId": "

        The ID of an Internet gateway or virtual private gateway.

        ", "ReplaceRouteRequest$InstanceId": "

        The ID of a NAT instance in your VPC.

        ", "ReplaceRouteRequest$NetworkInterfaceId": "

        The ID of a network interface.

        ", "ReplaceRouteRequest$VpcPeeringConnectionId": "

        The ID of a VPC peering connection.

        ", "ReplaceRouteRequest$NatGatewayId": "

        The ID of a NAT gateway.

        ", "ReplaceRouteTableAssociationRequest$AssociationId": "

        The association ID.

        ", "ReplaceRouteTableAssociationRequest$RouteTableId": "

        The ID of the new route table to associate with the subnet.

        ", "ReplaceRouteTableAssociationResult$NewAssociationId": "

        The ID of the new association.

        ", "ReportInstanceStatusRequest$Description": "

        Descriptive text about the health state of your instance.

        ", "RequestHostIdList$member": null, "RequestHostIdSet$member": null, "RequestSpotFleetResponse$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "RequestSpotInstancesRequest$SpotPrice": "

        The maximum hourly price (bid) for any Spot instance launched to fulfill the request.

        ", "RequestSpotInstancesRequest$ClientToken": "

        Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.

        ", "RequestSpotInstancesRequest$LaunchGroup": "

        The instance launch group. Launch groups are Spot instances that launch together and terminate together.

        Default: Instances are launched and terminated individually

        ", "RequestSpotInstancesRequest$AvailabilityZoneGroup": "

        The user-specified name for a logical grouping of bids.

        When you specify an Availability Zone group in a Spot Instance request, all Spot instances in the request are launched in the same Availability Zone. Instance proximity is maintained with this parameter, but the choice of Availability Zone is not. The group applies only to bids for Spot Instances of the same instance type. Any additional Spot instance requests that are specified with the same Availability Zone group name are launched in that same Availability Zone, as long as at least one instance from the group is still active.

        If there is no active instance running in the Availability Zone group that you specify for a new Spot instance request (all instances are terminated, the bid is expired, or the bid falls below current market), then Amazon EC2 launches the instance in any Availability Zone where the constraint can be met. Consequently, the subsequent set of Spot instances could be placed in a different zone from the original request, even if you specified the same Availability Zone group.

        Default: Instances are launched in any available Availability Zone.

        ", "RequestSpotLaunchSpecification$ImageId": "

        The ID of the AMI.

        ", "RequestSpotLaunchSpecification$KeyName": "

        The name of the key pair.

        ", "RequestSpotLaunchSpecification$UserData": "

        The user data to make available to the instances. If you are using an AWS SDK or command line tool, Base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide Base64-encoded text.

        ", "RequestSpotLaunchSpecification$AddressingType": "

        Deprecated.

        ", "RequestSpotLaunchSpecification$KernelId": "

        The ID of the kernel.

        ", "RequestSpotLaunchSpecification$RamdiskId": "

        The ID of the RAM disk.

        ", "RequestSpotLaunchSpecification$SubnetId": "

        The ID of the subnet in which to launch the instance.

        ", "Reservation$ReservationId": "

        The ID of the reservation.

        ", "Reservation$OwnerId": "

        The ID of the AWS account that owns the reservation.

        ", "Reservation$RequesterId": "

        The ID of the requester that launched the instances on your behalf (for example, AWS Management Console or Auto Scaling).

        ", "ReservationValue$RemainingTotalValue": "

        The balance of the total value (the sum of remainingUpfrontValue + hourlyPrice * number of hours remaining).

        ", "ReservationValue$RemainingUpfrontValue": "

        The remaining upfront cost of the reservation.

        ", "ReservationValue$HourlyPrice": "

        The hourly rate of the reservation.

        ", "ReservedInstanceIdSet$member": null, "ReservedInstanceReservationValue$ReservedInstanceId": "

        The ID of the Convertible Reserved Instance that you are exchanging.

        ", "ReservedInstances$ReservedInstancesId": "

        The ID of the Reserved Instance.

        ", "ReservedInstances$AvailabilityZone": "

        The Availability Zone in which the Reserved Instance can be used.

        ", "ReservedInstancesConfiguration$AvailabilityZone": "

        The Availability Zone for the modified Reserved Instances.

        ", "ReservedInstancesConfiguration$Platform": "

        The network platform of the modified Reserved Instances, which is either EC2-Classic or EC2-VPC.

        ", "ReservedInstancesId$ReservedInstancesId": "

        The ID of the Reserved Instance.

        ", "ReservedInstancesIdStringList$member": null, "ReservedInstancesListing$ReservedInstancesListingId": "

        The ID of the Reserved Instance listing.

        ", "ReservedInstancesListing$ReservedInstancesId": "

        The ID of the Reserved Instance.

        ", "ReservedInstancesListing$StatusMessage": "

        The reason for the current status of the Reserved Instance listing. The response can be blank.

        ", "ReservedInstancesListing$ClientToken": "

        A unique, case-sensitive key supplied by the client to ensure that the request is idempotent. For more information, see Ensuring Idempotency.

        ", "ReservedInstancesModification$ReservedInstancesModificationId": "

        A unique ID for the Reserved Instance modification.

        ", "ReservedInstancesModification$Status": "

        The status of the Reserved Instances modification request.

        ", "ReservedInstancesModification$StatusMessage": "

        The reason for the status.

        ", "ReservedInstancesModification$ClientToken": "

        A unique, case-sensitive key supplied by the client to ensure that the request is idempotent. For more information, see Ensuring Idempotency.

        ", "ReservedInstancesModificationIdStringList$member": null, "ReservedInstancesModificationResult$ReservedInstancesId": "

        The ID for the Reserved Instances that were created as part of the modification request. This field is only available when the modification is fulfilled.

        ", "ReservedInstancesOffering$ReservedInstancesOfferingId": "

        The ID of the Reserved Instance offering. This is the offering ID used in GetReservedInstancesExchangeQuote to confirm that an exchange can be made.

        ", "ReservedInstancesOffering$AvailabilityZone": "

        The Availability Zone in which the Reserved Instance can be used.

        ", "ReservedInstancesOfferingIdStringList$member": null, "ResetImageAttributeRequest$ImageId": "

        The ID of the AMI.

        ", "ResetInstanceAttributeRequest$InstanceId": "

        The ID of the instance.

        ", "ResetNetworkInterfaceAttributeRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "ResetNetworkInterfaceAttributeRequest$SourceDestCheck": "

        The source/destination checking attribute. Resets the value to true.

        ", "ResetSnapshotAttributeRequest$SnapshotId": "

        The ID of the snapshot.

        ", "ResourceIdList$member": null, "ResponseHostIdList$member": null, "ResponseHostIdSet$member": null, "RestorableByStringList$member": null, "RestoreAddressToClassicRequest$PublicIp": "

        The Elastic IP address.

        ", "RestoreAddressToClassicResult$PublicIp": "

        The Elastic IP address.

        ", "RevokeSecurityGroupEgressRequest$GroupId": "

        The ID of the security group.

        ", "RevokeSecurityGroupEgressRequest$SourceSecurityGroupName": "

        The name of a destination security group. To revoke outbound access to a destination security group, we recommend that you use a set of IP permissions instead.

        ", "RevokeSecurityGroupEgressRequest$SourceSecurityGroupOwnerId": "

        The AWS account number for a destination security group. To revoke outbound access to a destination security group, we recommend that you use a set of IP permissions instead.

        ", "RevokeSecurityGroupEgressRequest$IpProtocol": "

        The IP protocol name or number. We recommend that you specify the protocol in a set of IP permissions instead.

        ", "RevokeSecurityGroupEgressRequest$CidrIp": "

        The CIDR IP address range. We recommend that you specify the CIDR range in a set of IP permissions instead.

        ", "RevokeSecurityGroupIngressRequest$GroupName": "

        [EC2-Classic, default VPC] The name of the security group.

        ", "RevokeSecurityGroupIngressRequest$GroupId": "

        The ID of the security group. Required for a security group in a nondefault VPC.

        ", "RevokeSecurityGroupIngressRequest$SourceSecurityGroupName": "

        [EC2-Classic, default VPC] The name of the source security group. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the start of the port range, the IP protocol, and the end of the port range. For EC2-VPC, the source security group must be in the same VPC. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.

        ", "RevokeSecurityGroupIngressRequest$SourceSecurityGroupOwnerId": "

        [EC2-Classic] The AWS account ID of the source security group, if the source security group is in a different account. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the IP protocol, the start of the port range, and the end of the port range. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.

        ", "RevokeSecurityGroupIngressRequest$IpProtocol": "

        The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). Use -1 to specify all.

        ", "RevokeSecurityGroupIngressRequest$CidrIp": "

        The CIDR IP address range. You can't specify this parameter when specifying a source security group.

        ", "Route$DestinationCidrBlock": "

        The CIDR block used for the destination match.

        ", "Route$DestinationPrefixListId": "

        The prefix of the AWS service.

        ", "Route$GatewayId": "

        The ID of a gateway attached to your VPC.

        ", "Route$InstanceId": "

        The ID of a NAT instance in your VPC.

        ", "Route$InstanceOwnerId": "

        The AWS account ID of the owner of the instance.

        ", "Route$NetworkInterfaceId": "

        The ID of the network interface.

        ", "Route$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "Route$NatGatewayId": "

        The ID of a NAT gateway.

        ", "RouteTable$RouteTableId": "

        The ID of the route table.

        ", "RouteTable$VpcId": "

        The ID of the VPC.

        ", "RouteTableAssociation$RouteTableAssociationId": "

        The ID of the association between a route table and a subnet.

        ", "RouteTableAssociation$RouteTableId": "

        The ID of the route table.

        ", "RouteTableAssociation$SubnetId": "

        The ID of the subnet. A subnet ID is not returned for an implicit association.

        ", "RunInstancesRequest$ImageId": "

        The ID of the AMI, which you can get by calling DescribeImages.

        ", "RunInstancesRequest$KeyName": "

        The name of the key pair. You can create a key pair using CreateKeyPair or ImportKeyPair.

        If you do not specify a key pair, you can't connect to the instance unless you choose an AMI that is configured to allow users another way to log in.

        ", "RunInstancesRequest$UserData": "

        The user data to make available to the instance. For more information, see Running Commands on Your Linux Instance at Launch (Linux) and Adding User Data (Windows). If you are using an AWS SDK or command line tool, Base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide Base64-encoded text.

        ", "RunInstancesRequest$KernelId": "

        The ID of the kernel.

        We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB in the Amazon Elastic Compute Cloud User Guide.

        ", "RunInstancesRequest$RamdiskId": "

        The ID of the RAM disk.

        We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB in the Amazon Elastic Compute Cloud User Guide.

        ", "RunInstancesRequest$SubnetId": "

        [EC2-VPC] The ID of the subnet to launch the instance into.

        ", "RunInstancesRequest$PrivateIpAddress": "

        [EC2-VPC] The primary IP address. You must specify a value from the IP address range of the subnet.

        Only one private IP address can be designated as primary. Therefore, you can't specify this parameter if PrivateIpAddresses.n.Primary is set to true and PrivateIpAddresses.n.PrivateIpAddress is set to an IP address.

        You cannot specify this option if you're launching more than one instance in the request.

        Default: We select an IP address from the IP address range of the subnet.

        ", "RunInstancesRequest$ClientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

        Constraints: Maximum 64 ASCII characters

        ", "RunInstancesRequest$AdditionalInfo": "

        Reserved.

        ", "RunScheduledInstancesRequest$ClientToken": "

        Unique, case-sensitive identifier that ensures the idempotency of the request. For more information, see Ensuring Idempotency.

        ", "RunScheduledInstancesRequest$ScheduledInstanceId": "

        The Scheduled Instance ID.

        ", "S3Storage$Bucket": "

        The bucket in which to store the AMI. You can specify a bucket that you already own or a new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone else, Amazon EC2 returns an error.

        ", "S3Storage$Prefix": "

        The beginning of the file name of the AMI.

        ", "S3Storage$AWSAccessKeyId": "

        The access key ID of the owner of the bucket. Before you specify a value for your access key ID, review and follow the guidance in Best Practices for Managing AWS Access Keys.

        ", "S3Storage$UploadPolicySignature": "

        The signature of the JSON document.

        ", "ScheduledInstance$ScheduledInstanceId": "

        The Scheduled Instance ID.

        ", "ScheduledInstance$InstanceType": "

        The instance type.

        ", "ScheduledInstance$Platform": "

        The platform (Linux/UNIX or Windows).

        ", "ScheduledInstance$NetworkPlatform": "

        The network platform (EC2-Classic or EC2-VPC).

        ", "ScheduledInstance$AvailabilityZone": "

        The Availability Zone.

        ", "ScheduledInstance$HourlyPrice": "

        The hourly price for a single instance.

        ", "ScheduledInstanceAvailability$InstanceType": "

        The instance type. You can specify one of the C3, C4, M4, or R3 instance types.

        ", "ScheduledInstanceAvailability$Platform": "

        The platform (Linux/UNIX or Windows).

        ", "ScheduledInstanceAvailability$NetworkPlatform": "

        The network platform (EC2-Classic or EC2-VPC).

        ", "ScheduledInstanceAvailability$AvailabilityZone": "

        The Availability Zone.

        ", "ScheduledInstanceAvailability$PurchaseToken": "

        The purchase token. This token expires in two hours.

        ", "ScheduledInstanceAvailability$HourlyPrice": "

        The hourly price for a single instance.

        ", "ScheduledInstanceIdRequestSet$member": null, "ScheduledInstanceRecurrence$Frequency": "

        The frequency (Daily, Weekly, or Monthly).

        ", "ScheduledInstanceRecurrence$OccurrenceUnit": "

        The unit for occurrenceDaySet (DayOfWeek or DayOfMonth).

        ", "ScheduledInstanceRecurrenceRequest$Frequency": "

        The frequency (Daily, Weekly, or Monthly).

        ", "ScheduledInstanceRecurrenceRequest$OccurrenceUnit": "

        The unit for OccurrenceDays (DayOfWeek or DayOfMonth). This value is required for a monthly schedule. You can't specify DayOfWeek with a weekly schedule. You can't specify this value with a daily schedule.

        ", "ScheduledInstancesBlockDeviceMapping$DeviceName": "

        The device name exposed to the instance (for example, /dev/sdh or xvdh).

        ", "ScheduledInstancesBlockDeviceMapping$NoDevice": "

        Suppresses the specified device included in the block device mapping of the AMI.

        ", "ScheduledInstancesBlockDeviceMapping$VirtualName": "

        The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with two available instance store volumes can specify mappings for ephemeral0 and ephemeral1.The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.

        Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.

        ", "ScheduledInstancesEbs$SnapshotId": "

        The ID of the snapshot.

        ", "ScheduledInstancesEbs$VolumeType": "

        The volume type. gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, Throughput Optimized HDD for st1, Cold HDD for sc1, or standard for Magnetic.

        Default: standard

        ", "ScheduledInstancesIamInstanceProfile$Arn": "

        The Amazon Resource Name (ARN).

        ", "ScheduledInstancesIamInstanceProfile$Name": "

        The name.

        ", "ScheduledInstancesLaunchSpecification$ImageId": "

        The ID of the Amazon Machine Image (AMI).

        ", "ScheduledInstancesLaunchSpecification$KeyName": "

        The name of the key pair.

        ", "ScheduledInstancesLaunchSpecification$UserData": "

        The base64-encoded MIME user data.

        ", "ScheduledInstancesLaunchSpecification$KernelId": "

        The ID of the kernel.

        ", "ScheduledInstancesLaunchSpecification$InstanceType": "

        The instance type.

        ", "ScheduledInstancesLaunchSpecification$RamdiskId": "

        The ID of the RAM disk.

        ", "ScheduledInstancesLaunchSpecification$SubnetId": "

        The ID of the subnet in which to launch the instances.

        ", "ScheduledInstancesNetworkInterface$NetworkInterfaceId": "

        The ID of the network interface.

        ", "ScheduledInstancesNetworkInterface$SubnetId": "

        The ID of the subnet.

        ", "ScheduledInstancesNetworkInterface$Description": "

        The description.

        ", "ScheduledInstancesNetworkInterface$PrivateIpAddress": "

        The IP address of the network interface within the subnet.

        ", "ScheduledInstancesPlacement$AvailabilityZone": "

        The Availability Zone.

        ", "ScheduledInstancesPlacement$GroupName": "

        The name of the placement group.

        ", "ScheduledInstancesPrivateIpAddressConfig$PrivateIpAddress": "

        The IP address.

        ", "ScheduledInstancesSecurityGroupIdSet$member": null, "SecurityGroup$OwnerId": "

        The AWS account ID of the owner of the security group.

        ", "SecurityGroup$GroupName": "

        The name of the security group.

        ", "SecurityGroup$GroupId": "

        The ID of the security group.

        ", "SecurityGroup$Description": "

        A description of the security group.

        ", "SecurityGroup$VpcId": "

        [EC2-VPC] The ID of the VPC for the security group.

        ", "SecurityGroupIdStringList$member": null, "SecurityGroupReference$GroupId": "

        The ID of your security group.

        ", "SecurityGroupReference$ReferencingVpcId": "

        The ID of the VPC with the referencing security group.

        ", "SecurityGroupReference$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "SecurityGroupStringList$member": null, "Snapshot$SnapshotId": "

        The ID of the snapshot. Each snapshot receives a unique identifier when it is created.

        ", "Snapshot$VolumeId": "

        The ID of the volume that was used to create the snapshot. Snapshots created by the CopySnapshot action have an arbitrary volume ID that should not be used for any purpose.

        ", "Snapshot$StateMessage": "

        Encrypted Amazon EBS snapshots are copied asynchronously. If a snapshot copy operation fails (for example, if the proper AWS Key Management Service (AWS KMS) permissions are not obtained) this field displays error state details to help you diagnose why the error occurred. This parameter is only returned by the DescribeSnapshots API operation.

        ", "Snapshot$Progress": "

        The progress of the snapshot, as a percentage.

        ", "Snapshot$OwnerId": "

        The AWS account ID of the EBS snapshot owner.

        ", "Snapshot$Description": "

        The description for the snapshot.

        ", "Snapshot$OwnerAlias": "

        Value from an Amazon-maintained list (amazon | aws-marketplace | microsoft) of snapshot owners. Not to be confused with the user-configured AWS account alias, which is set from the IAM console.

        ", "Snapshot$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) that was used to protect the volume encryption key for the parent volume.

        ", "Snapshot$DataEncryptionKeyId": "

        The data encryption key identifier for the snapshot. This value is a unique identifier that corresponds to the data encryption key that was used to encrypt the original volume or snapshot copy. Because data encryption keys are inherited by volumes created from snapshots, and vice versa, if snapshots share the same data encryption key identifier, then they belong to the same volume/snapshot lineage. This parameter is only returned by the DescribeSnapshots API operation.

        ", "SnapshotDetail$Description": "

        A description for the snapshot.

        ", "SnapshotDetail$Format": "

        The format of the disk image from which the snapshot is created.

        ", "SnapshotDetail$Url": "

        The URL used to access the disk image.

        ", "SnapshotDetail$DeviceName": "

        The block device mapping for the snapshot.

        ", "SnapshotDetail$SnapshotId": "

        The snapshot ID of the disk being imported.

        ", "SnapshotDetail$Progress": "

        The percentage of progress for the task.

        ", "SnapshotDetail$StatusMessage": "

        A detailed status message for the snapshot creation.

        ", "SnapshotDetail$Status": "

        A brief status of the snapshot creation.

        ", "SnapshotDiskContainer$Description": "

        The description of the disk image being imported.

        ", "SnapshotDiskContainer$Format": "

        The format of the disk image being imported.

        Valid values: RAW | VHD | VMDK | OVA

        ", "SnapshotDiskContainer$Url": "

        The URL to the Amazon S3-based disk image being imported. It can either be a https URL (https://..) or an Amazon S3 URL (s3://..).

        ", "SnapshotIdStringList$member": null, "SnapshotTaskDetail$Description": "

        The description of the snapshot.

        ", "SnapshotTaskDetail$Format": "

        The format of the disk image from which the snapshot is created.

        ", "SnapshotTaskDetail$Url": "

        The URL of the disk image from which the snapshot is created.

        ", "SnapshotTaskDetail$SnapshotId": "

        The snapshot ID of the disk being imported.

        ", "SnapshotTaskDetail$Progress": "

        The percentage of completion for the import snapshot task.

        ", "SnapshotTaskDetail$StatusMessage": "

        A detailed status message for the import snapshot task.

        ", "SnapshotTaskDetail$Status": "

        A brief status for the import snapshot task.

        ", "SpotDatafeedSubscription$OwnerId": "

        The AWS account ID of the account.

        ", "SpotDatafeedSubscription$Bucket": "

        The Amazon S3 bucket where the Spot instance data feed is located.

        ", "SpotDatafeedSubscription$Prefix": "

        The prefix that is prepended to data feed files.

        ", "SpotFleetLaunchSpecification$ImageId": "

        The ID of the AMI.

        ", "SpotFleetLaunchSpecification$KeyName": "

        The name of the key pair.

        ", "SpotFleetLaunchSpecification$UserData": "

        The user data to make available to the instances. If you are using an AWS SDK or command line tool, Base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide Base64-encoded text.

        ", "SpotFleetLaunchSpecification$AddressingType": "

        Deprecated.

        ", "SpotFleetLaunchSpecification$KernelId": "

        The ID of the kernel.

        ", "SpotFleetLaunchSpecification$RamdiskId": "

        The ID of the RAM disk.

        ", "SpotFleetLaunchSpecification$SubnetId": "

        The ID of the subnet in which to launch the instances. To specify multiple subnets, separate them using commas; for example, \"subnet-a61dafcf, subnet-65ea5f08\".

        ", "SpotFleetLaunchSpecification$SpotPrice": "

        The bid price per unit hour for the specified instance type. If this value is not specified, the default is the Spot bid price specified for the fleet. To determine the bid price per unit hour, divide the Spot bid price by the value of WeightedCapacity.

        ", "SpotFleetRequestConfig$SpotFleetRequestId": "

        The ID of the Spot fleet request.

        ", "SpotFleetRequestConfigData$ClientToken": "

        A unique, case-sensitive identifier you provide to ensure idempotency of your listings. This helps avoid duplicate listings. For more information, see Ensuring Idempotency.

        ", "SpotFleetRequestConfigData$SpotPrice": "

        The bid price per unit hour.

        ", "SpotFleetRequestConfigData$IamFleetRole": "

        Grants the Spot fleet permission to terminate Spot instances on your behalf when you cancel its Spot fleet request using CancelSpotFleetRequests or when the Spot fleet request expires, if you set terminateInstancesWithExpiration.

        ", "SpotInstanceRequest$SpotInstanceRequestId": "

        The ID of the Spot instance request.

        ", "SpotInstanceRequest$SpotPrice": "

        The maximum hourly price (bid) for the Spot instance launched to fulfill the request.

        ", "SpotInstanceRequest$LaunchGroup": "

        The instance launch group. Launch groups are Spot instances that launch together and terminate together.

        ", "SpotInstanceRequest$AvailabilityZoneGroup": "

        The Availability Zone group. If you specify the same Availability Zone group for all Spot instance requests, all Spot instances are launched in the same Availability Zone.

        ", "SpotInstanceRequest$InstanceId": "

        The instance ID, if an instance has been launched to fulfill the Spot instance request.

        ", "SpotInstanceRequest$ActualBlockHourlyPrice": "

        If you specified a duration and your Spot instance request was fulfilled, this is the fixed hourly price in effect for the Spot instance while it runs.

        ", "SpotInstanceRequest$LaunchedAvailabilityZone": "

        The Availability Zone in which the bid is launched.

        ", "SpotInstanceRequestIdList$member": null, "SpotInstanceStateFault$Code": "

        The reason code for the Spot instance state change.

        ", "SpotInstanceStateFault$Message": "

        The message for the Spot instance state change.

        ", "SpotInstanceStatus$Code": "

        The status code. For a list of status codes, see Spot Bid Status Codes in the Amazon Elastic Compute Cloud User Guide.

        ", "SpotInstanceStatus$Message": "

        The description for the status code.

        ", "SpotPlacement$AvailabilityZone": "

        The Availability Zone.

        [Spot fleet only] To specify multiple Availability Zones, separate them using commas; for example, \"us-west-2a, us-west-2b\".

        ", "SpotPlacement$GroupName": "

        The name of the placement group (for cluster instances).

        ", "SpotPrice$SpotPrice": "

        The maximum price (bid) that you are willing to pay for a Spot instance.

        ", "SpotPrice$AvailabilityZone": "

        The Availability Zone.

        ", "StaleIpPermission$IpProtocol": "

        The IP protocol name (for tcp, udp, and icmp) or number (see Protocol Numbers).

        ", "StaleSecurityGroup$GroupId": "

        The ID of the security group.

        ", "StaleSecurityGroup$GroupName": "

        The name of the security group.

        ", "StaleSecurityGroup$Description": "

        The description of the security group.

        ", "StaleSecurityGroup$VpcId": "

        The ID of the VPC for the security group.

        ", "StartInstancesRequest$AdditionalInfo": "

        Reserved.

        ", "StateReason$Code": "

        The reason code for the state change.

        ", "StateReason$Message": "

        The message for the state change.

        • Server.SpotInstanceTermination: A Spot instance was terminated due to an increase in the market price.

        • Server.InternalError: An internal error occurred during instance launch, resulting in termination.

        • Server.InsufficientInstanceCapacity: There was insufficient instance capacity to satisfy the launch request.

        • Client.InternalError: A client error caused the instance to terminate on launch.

        • Client.InstanceInitiatedShutdown: The instance was shut down using the shutdown -h command from the instance.

        • Client.UserInitiatedShutdown: The instance was shut down using the Amazon EC2 API.

        • Client.VolumeLimitExceeded: The limit on the number of EBS volumes or total storage was exceeded. Decrease usage or request an increase in your limits.

        • Client.InvalidSnapshot.NotFound: The specified snapshot was not found.

        ", "Subnet$SubnetId": "

        The ID of the subnet.

        ", "Subnet$VpcId": "

        The ID of the VPC the subnet is in.

        ", "Subnet$CidrBlock": "

        The CIDR block assigned to the subnet.

        ", "Subnet$AvailabilityZone": "

        The Availability Zone of the subnet.

        ", "SubnetIdStringList$member": null, "Tag$Key": "

        The key of the tag.

        Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with aws:

        ", "Tag$Value": "

        The value of the tag.

        Constraints: Tag values are case-sensitive and accept a maximum of 255 Unicode characters.

        ", "TagDescription$ResourceId": "

        The ID of the resource. For example, ami-1a2b3c4d.

        ", "TagDescription$Key": "

        The tag key.

        ", "TagDescription$Value": "

        The tag value.

        ", "TargetConfiguration$OfferingId": "

        The ID of the Convertible Reserved Instance offering.

        ", "TargetConfigurationRequest$OfferingId": "

        The Convertible Reserved Instance offering ID. If this isn't included in the request, the response lists your current Convertible Reserved Instance/s and their value/s.

        ", "UnassignPrivateIpAddressesRequest$NetworkInterfaceId": "

        The ID of the network interface.

        ", "UnsuccessfulItem$ResourceId": "

        The ID of the resource.

        ", "UnsuccessfulItemError$Code": "

        The error code.

        ", "UnsuccessfulItemError$Message": "

        The error message accompanying the error code.

        ", "UserBucket$S3Bucket": "

        The name of the S3 bucket where the disk image is located.

        ", "UserBucket$S3Key": "

        The file name of the disk image.

        ", "UserBucketDetails$S3Bucket": "

        The S3 bucket from which the disk image was created.

        ", "UserBucketDetails$S3Key": "

        The file name of the disk image.

        ", "UserData$Data": "

        The user data. If you are using an AWS SDK or command line tool, Base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide Base64-encoded text.

        ", "UserGroupStringList$member": null, "UserIdGroupPair$UserId": "

        The ID of an AWS account. For a referenced security group in another VPC, the account ID of the referenced security group is returned.

        [EC2-Classic] Required when adding or removing rules that reference a security group in another AWS account.

        ", "UserIdGroupPair$GroupName": "

        The name of the security group. In a request, use this parameter for a security group in EC2-Classic or a default VPC only. For a security group in a nondefault VPC, use the security group ID.

        ", "UserIdGroupPair$GroupId": "

        The ID of the security group.

        ", "UserIdGroupPair$VpcId": "

        The ID of the VPC for the referenced security group, if applicable.

        ", "UserIdGroupPair$VpcPeeringConnectionId": "

        The ID of the VPC peering connection, if applicable.

        ", "UserIdGroupPair$PeeringStatus": "

        The status of a VPC peering connection, if applicable.

        ", "UserIdStringList$member": null, "ValueStringList$member": null, "VgwTelemetry$OutsideIpAddress": "

        The Internet-routable IP address of the virtual private gateway's outside interface.

        ", "VgwTelemetry$StatusMessage": "

        If an error occurs, a description of the error.

        ", "Volume$VolumeId": "

        The ID of the volume.

        ", "Volume$SnapshotId": "

        The snapshot from which the volume was created, if applicable.

        ", "Volume$AvailabilityZone": "

        The Availability Zone for the volume.

        ", "Volume$KmsKeyId": "

        The full ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) that was used to protect the volume encryption key for the volume.

        ", "VolumeAttachment$VolumeId": "

        The ID of the volume.

        ", "VolumeAttachment$InstanceId": "

        The ID of the instance.

        ", "VolumeAttachment$Device": "

        The device name.

        ", "VolumeIdStringList$member": null, "VolumeStatusAction$Code": "

        The code identifying the operation, for example, enable-volume-io.

        ", "VolumeStatusAction$Description": "

        A description of the operation.

        ", "VolumeStatusAction$EventType": "

        The event type associated with this operation.

        ", "VolumeStatusAction$EventId": "

        The ID of the event associated with this operation.

        ", "VolumeStatusDetails$Status": "

        The intended status of the volume status.

        ", "VolumeStatusEvent$EventType": "

        The type of this event.

        ", "VolumeStatusEvent$Description": "

        A description of the event.

        ", "VolumeStatusEvent$EventId": "

        The ID of this event.

        ", "VolumeStatusItem$VolumeId": "

        The volume ID.

        ", "VolumeStatusItem$AvailabilityZone": "

        The Availability Zone of the volume.

        ", "Vpc$VpcId": "

        The ID of the VPC.

        ", "Vpc$CidrBlock": "

        The CIDR block for the VPC.

        ", "Vpc$DhcpOptionsId": "

        The ID of the set of DHCP options you've associated with the VPC (or default if the default options are associated with the VPC).

        ", "VpcAttachment$VpcId": "

        The ID of the VPC.

        ", "VpcClassicLink$VpcId": "

        The ID of the VPC.

        ", "VpcClassicLinkIdList$member": null, "VpcEndpoint$VpcEndpointId": "

        The ID of the VPC endpoint.

        ", "VpcEndpoint$VpcId": "

        The ID of the VPC to which the endpoint is associated.

        ", "VpcEndpoint$ServiceName": "

        The name of the AWS service to which the endpoint is associated.

        ", "VpcEndpoint$PolicyDocument": "

        The policy document associated with the endpoint.

        ", "VpcIdStringList$member": null, "VpcPeeringConnection$VpcPeeringConnectionId": "

        The ID of the VPC peering connection.

        ", "VpcPeeringConnectionStateReason$Message": "

        A message that provides more information about the status, if applicable.

        ", "VpcPeeringConnectionVpcInfo$CidrBlock": "

        The CIDR block for the VPC.

        ", "VpcPeeringConnectionVpcInfo$OwnerId": "

        The AWS account ID of the VPC owner.

        ", "VpcPeeringConnectionVpcInfo$VpcId": "

        The ID of the VPC.

        ", "VpnConnection$VpnConnectionId": "

        The ID of the VPN connection.

        ", "VpnConnection$CustomerGatewayConfiguration": "

        The configuration information for the VPN connection's customer gateway (in the native XML format). This element is always present in the CreateVpnConnection response; however, it's present in the DescribeVpnConnections response only if the VPN connection is in the pending or available state.

        ", "VpnConnection$CustomerGatewayId": "

        The ID of the customer gateway at your end of the VPN connection.

        ", "VpnConnection$VpnGatewayId": "

        The ID of the virtual private gateway at the AWS side of the VPN connection.

        ", "VpnConnectionIdStringList$member": null, "VpnGateway$VpnGatewayId": "

        The ID of the virtual private gateway.

        ", "VpnGateway$AvailabilityZone": "

        The Availability Zone where the virtual private gateway was created, if applicable. This field may be empty or not returned.

        ", "VpnGatewayIdStringList$member": null, "VpnStaticRoute$DestinationCidrBlock": "

        The CIDR block associated with the local subnet of the customer data center.

        ", "ZoneNameStringList$member": null } }, "Subnet": { "base": "

        Describes a subnet.

        ", "refs": { "CreateSubnetResult$Subnet": "

        Information about the subnet.

        ", "SubnetList$member": null } }, "SubnetIdStringList": { "base": null, "refs": { "DescribeSubnetsRequest$SubnetIds": "

        One or more subnet IDs.

        Default: Describes all your subnets.

        " } }, "SubnetList": { "base": null, "refs": { "DescribeSubnetsResult$Subnets": "

        Information about one or more subnets.

        " } }, "SubnetState": { "base": null, "refs": { "Subnet$State": "

        The current state of the subnet.

        " } }, "SummaryStatus": { "base": null, "refs": { "InstanceStatusSummary$Status": "

        The status.

        " } }, "Tag": { "base": "

        Describes a tag.

        ", "refs": { "TagList$member": null } }, "TagDescription": { "base": "

        Describes a tag.

        ", "refs": { "TagDescriptionList$member": null } }, "TagDescriptionList": { "base": null, "refs": { "DescribeTagsResult$Tags": "

        A list of tags.

        " } }, "TagList": { "base": null, "refs": { "ClassicLinkInstance$Tags": "

        Any tags assigned to the instance.

        ", "ConversionTask$Tags": "

        Any tags assigned to the task.

        ", "CreateTagsRequest$Tags": "

        One or more tags. The value parameter is required, but if you don't want the tag to have a value, specify the parameter with no value, and we set the value to an empty string.

        ", "CustomerGateway$Tags": "

        Any tags assigned to the customer gateway.

        ", "DeleteTagsRequest$Tags": "

        One or more tags to delete. If you omit the value parameter, we delete the tag regardless of its value. If you specify this parameter with an empty string as the value, we delete the key only if its value is an empty string.

        ", "DhcpOptions$Tags": "

        Any tags assigned to the DHCP options set.

        ", "Image$Tags": "

        Any tags assigned to the image.

        ", "Instance$Tags": "

        Any tags assigned to the instance.

        ", "InternetGateway$Tags": "

        Any tags assigned to the Internet gateway.

        ", "NetworkAcl$Tags": "

        Any tags assigned to the network ACL.

        ", "NetworkInterface$TagSet": "

        Any tags assigned to the network interface.

        ", "ReservedInstances$Tags": "

        Any tags assigned to the resource.

        ", "ReservedInstancesListing$Tags": "

        Any tags assigned to the resource.

        ", "RouteTable$Tags": "

        Any tags assigned to the route table.

        ", "SecurityGroup$Tags": "

        Any tags assigned to the security group.

        ", "Snapshot$Tags": "

        Any tags assigned to the snapshot.

        ", "SpotInstanceRequest$Tags": "

        Any tags assigned to the resource.

        ", "Subnet$Tags": "

        Any tags assigned to the subnet.

        ", "Volume$Tags": "

        Any tags assigned to the volume.

        ", "Vpc$Tags": "

        Any tags assigned to the VPC.

        ", "VpcClassicLink$Tags": "

        Any tags assigned to the VPC.

        ", "VpcPeeringConnection$Tags": "

        Any tags assigned to the resource.

        ", "VpnConnection$Tags": "

        Any tags assigned to the VPN connection.

        ", "VpnGateway$Tags": "

        Any tags assigned to the virtual private gateway.

        " } }, "TargetConfiguration": { "base": "

        Information about the Convertible Reserved Instance offering.

        ", "refs": { "TargetReservationValue$TargetConfiguration": "

        The configuration of the Convertible Reserved Instances that make up the exchange.

        " } }, "TargetConfigurationRequest": { "base": "

        Details about the target configuration.

        ", "refs": { "TargetConfigurationRequestSet$member": null } }, "TargetConfigurationRequestSet": { "base": null, "refs": { "AcceptReservedInstancesExchangeQuoteRequest$TargetConfigurations": "

        The configurations of the Convertible Reserved Instance offerings you are purchasing in this exchange.

        ", "GetReservedInstancesExchangeQuoteRequest$TargetConfigurations": "

        The configuration requirements of the Convertible Reserved Instances you want in exchange for your current Convertible Reserved Instances.

        " } }, "TargetReservationValue": { "base": "

        The total value of the new Convertible Reserved Instances.

        ", "refs": { "TargetReservationValueSet$member": null } }, "TargetReservationValueSet": { "base": null, "refs": { "GetReservedInstancesExchangeQuoteResult$TargetConfigurationValueSet": "

        The values of the target Convertible Reserved Instances.

        " } }, "TelemetryStatus": { "base": null, "refs": { "VgwTelemetry$Status": "

        The status of the VPN tunnel.

        " } }, "Tenancy": { "base": null, "refs": { "CreateVpcRequest$InstanceTenancy": "

        The tenancy options for instances launched into the VPC. For default, instances are launched with shared tenancy by default. You can launch instances with any tenancy into a shared tenancy VPC. For dedicated, instances are launched as dedicated tenancy instances by default. You can only launch instances with a tenancy of dedicated or host into a dedicated tenancy VPC.

        Important: The host value cannot be used with this parameter. Use the default or dedicated values only.

        Default: default

        ", "DescribeReservedInstancesOfferingsRequest$InstanceTenancy": "

        The tenancy of the instances covered by the reservation. A Reserved Instance with a tenancy of dedicated is applied to instances that run in a VPC on single-tenant hardware (i.e., Dedicated Instances).

        Default: default

        ", "Placement$Tenancy": "

        The tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for the ImportInstance command.

        ", "ReservedInstances$InstanceTenancy": "

        The tenancy of the instance.

        ", "ReservedInstancesOffering$InstanceTenancy": "

        The tenancy of the instance.

        ", "Vpc$InstanceTenancy": "

        The allowed tenancy of instances launched into the VPC.

        " } }, "TerminateInstancesRequest": { "base": "

        Contains the parameters for TerminateInstances.

        ", "refs": { } }, "TerminateInstancesResult": { "base": "

        Contains the output of TerminateInstances.

        ", "refs": { } }, "TrafficType": { "base": null, "refs": { "CreateFlowLogsRequest$TrafficType": "

        The type of traffic to log.

        ", "FlowLog$TrafficType": "

        The type of traffic captured for the flow log.

        " } }, "UnassignPrivateIpAddressesRequest": { "base": "

        Contains the parameters for UnassignPrivateIpAddresses.

        ", "refs": { } }, "UnmonitorInstancesRequest": { "base": "

        Contains the parameters for UnmonitorInstances.

        ", "refs": { } }, "UnmonitorInstancesResult": { "base": "

        Contains the output of UnmonitorInstances.

        ", "refs": { } }, "UnsuccessfulItem": { "base": "

        Information about items that were not successfully processed in a batch call.

        ", "refs": { "UnsuccessfulItemList$member": null, "UnsuccessfulItemSet$member": null } }, "UnsuccessfulItemError": { "base": "

        Information about the error that occurred. For more information about errors, see Error Codes.

        ", "refs": { "UnsuccessfulItem$Error": "

        Information about the error.

        " } }, "UnsuccessfulItemList": { "base": null, "refs": { "ModifyHostsResult$Unsuccessful": "

        The IDs of the Dedicated Hosts that could not be modified. Check whether the setting you requested can be used.

        ", "ReleaseHostsResult$Unsuccessful": "

        The IDs of the Dedicated Hosts that could not be released, including an error message.

        " } }, "UnsuccessfulItemSet": { "base": null, "refs": { "CreateFlowLogsResult$Unsuccessful": "

        Information about the flow logs that could not be created successfully.

        ", "DeleteFlowLogsResult$Unsuccessful": "

        Information about the flow logs that could not be deleted successfully.

        ", "DeleteVpcEndpointsResult$Unsuccessful": "

        Information about the endpoints that were not successfully deleted.

        " } }, "UserBucket": { "base": "

        Describes the S3 bucket for the disk image.

        ", "refs": { "ImageDiskContainer$UserBucket": "

        The S3 bucket for the disk image.

        ", "SnapshotDiskContainer$UserBucket": "

        The S3 bucket for the disk image.

        " } }, "UserBucketDetails": { "base": "

        Describes the S3 bucket for the disk image.

        ", "refs": { "SnapshotDetail$UserBucket": "

        The S3 bucket for the disk image.

        ", "SnapshotTaskDetail$UserBucket": "

        The S3 bucket for the disk image.

        " } }, "UserData": { "base": "

        Describes the user data for an instance.

        ", "refs": { "ImportInstanceLaunchSpecification$UserData": "

        The user data to make available to the instance. If you are using an AWS SDK or command line tool, Base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide Base64-encoded text.

        " } }, "UserGroupStringList": { "base": null, "refs": { "ModifyImageAttributeRequest$UserGroups": "

        One or more user groups. This is only valid when modifying the launchPermission attribute.

        " } }, "UserIdGroupPair": { "base": "

        Describes a security group and AWS account ID pair.

        ", "refs": { "UserIdGroupPairList$member": null, "UserIdGroupPairSet$member": null } }, "UserIdGroupPairList": { "base": null, "refs": { "IpPermission$UserIdGroupPairs": "

        One or more security group and AWS account ID pairs.

        " } }, "UserIdGroupPairSet": { "base": null, "refs": { "StaleIpPermission$UserIdGroupPairs": "

        One or more security group pairs. Returns the ID of the referenced security group and VPC, and the ID and status of the VPC peering connection.

        " } }, "UserIdStringList": { "base": null, "refs": { "ModifyImageAttributeRequest$UserIds": "

        One or more AWS account IDs. This is only valid when modifying the launchPermission attribute.

        ", "ModifySnapshotAttributeRequest$UserIds": "

        The account ID to modify for the snapshot.

        " } }, "ValueStringList": { "base": null, "refs": { "CancelSpotFleetRequestsRequest$SpotFleetRequestIds": "

        The IDs of the Spot fleet requests.

        ", "CreateFlowLogsRequest$ResourceIds": "

        One or more subnet, network interface, or VPC IDs.

        Constraints: Maximum of 1000 resources

        ", "CreateFlowLogsResult$FlowLogIds": "

        The IDs of the flow logs.

        ", "CreateVpcEndpointRequest$RouteTableIds": "

        One or more route table IDs.

        ", "DeleteFlowLogsRequest$FlowLogIds": "

        One or more flow log IDs.

        ", "DeleteVpcEndpointsRequest$VpcEndpointIds": "

        One or more endpoint IDs.

        ", "DescribeFlowLogsRequest$FlowLogIds": "

        One or more flow log IDs.

        ", "DescribeInternetGatewaysRequest$InternetGatewayIds": "

        One or more Internet gateway IDs.

        Default: Describes all your Internet gateways.

        ", "DescribeMovingAddressesRequest$PublicIps": "

        One or more Elastic IP addresses.

        ", "DescribeNatGatewaysRequest$NatGatewayIds": "

        One or more NAT gateway IDs.

        ", "DescribeNetworkAclsRequest$NetworkAclIds": "

        One or more network ACL IDs.

        Default: Describes all your network ACLs.

        ", "DescribePrefixListsRequest$PrefixListIds": "

        One or more prefix list IDs.

        ", "DescribeRouteTablesRequest$RouteTableIds": "

        One or more route table IDs.

        Default: Describes all your route tables.

        ", "DescribeSpotFleetRequestsRequest$SpotFleetRequestIds": "

        The IDs of the Spot fleet requests.

        ", "DescribeVpcEndpointServicesResult$ServiceNames": "

        A list of supported AWS services.

        ", "DescribeVpcEndpointsRequest$VpcEndpointIds": "

        One or more endpoint IDs.

        ", "DescribeVpcPeeringConnectionsRequest$VpcPeeringConnectionIds": "

        One or more VPC peering connection IDs.

        Default: Describes all your VPC peering connections.

        ", "Filter$Values": "

        One or more filter values. Filter values are case-sensitive.

        ", "ModifyVpcEndpointRequest$AddRouteTableIds": "

        One or more route tables IDs to associate with the endpoint.

        ", "ModifyVpcEndpointRequest$RemoveRouteTableIds": "

        One or more route table IDs to disassociate from the endpoint.

        ", "NewDhcpConfiguration$Values": null, "PrefixList$Cidrs": "

        The IP address range of the AWS service.

        ", "RequestSpotLaunchSpecification$SecurityGroups": null, "RequestSpotLaunchSpecification$SecurityGroupIds": null, "VpcEndpoint$RouteTableIds": "

        One or more route tables associated with the endpoint.

        " } }, "VgwTelemetry": { "base": "

        Describes telemetry for a VPN tunnel.

        ", "refs": { "VgwTelemetryList$member": null } }, "VgwTelemetryList": { "base": null, "refs": { "VpnConnection$VgwTelemetry": "

        Information about the VPN tunnel.

        " } }, "VirtualizationType": { "base": null, "refs": { "Image$VirtualizationType": "

        The type of virtualization of the AMI.

        ", "Instance$VirtualizationType": "

        The virtualization type of the instance.

        " } }, "Volume": { "base": "

        Describes a volume.

        ", "refs": { "VolumeList$member": null } }, "VolumeAttachment": { "base": "

        Describes volume attachment details.

        ", "refs": { "VolumeAttachmentList$member": null } }, "VolumeAttachmentList": { "base": null, "refs": { "Volume$Attachments": "

        Information about the volume attachments.

        " } }, "VolumeAttachmentState": { "base": null, "refs": { "VolumeAttachment$State": "

        The attachment state of the volume.

        " } }, "VolumeAttributeName": { "base": null, "refs": { "DescribeVolumeAttributeRequest$Attribute": "

        The instance attribute.

        " } }, "VolumeDetail": { "base": "

        Describes an EBS volume.

        ", "refs": { "DiskImage$Volume": "

        Information about the volume.

        ", "ImportVolumeRequest$Volume": "

        The volume size.

        " } }, "VolumeIdStringList": { "base": null, "refs": { "DescribeVolumeStatusRequest$VolumeIds": "

        One or more volume IDs.

        Default: Describes all your volumes.

        ", "DescribeVolumesRequest$VolumeIds": "

        One or more volume IDs.

        " } }, "VolumeList": { "base": null, "refs": { "DescribeVolumesResult$Volumes": "

        Information about the volumes.

        " } }, "VolumeState": { "base": null, "refs": { "Volume$State": "

        The volume state.

        " } }, "VolumeStatusAction": { "base": "

        Describes a volume status operation code.

        ", "refs": { "VolumeStatusActionsList$member": null } }, "VolumeStatusActionsList": { "base": null, "refs": { "VolumeStatusItem$Actions": "

        The details of the operation.

        " } }, "VolumeStatusDetails": { "base": "

        Describes a volume status.

        ", "refs": { "VolumeStatusDetailsList$member": null } }, "VolumeStatusDetailsList": { "base": null, "refs": { "VolumeStatusInfo$Details": "

        The details of the volume status.

        " } }, "VolumeStatusEvent": { "base": "

        Describes a volume status event.

        ", "refs": { "VolumeStatusEventsList$member": null } }, "VolumeStatusEventsList": { "base": null, "refs": { "VolumeStatusItem$Events": "

        A list of events associated with the volume.

        " } }, "VolumeStatusInfo": { "base": "

        Describes the status of a volume.

        ", "refs": { "VolumeStatusItem$VolumeStatus": "

        The volume status.

        " } }, "VolumeStatusInfoStatus": { "base": null, "refs": { "VolumeStatusInfo$Status": "

        The status of the volume.

        " } }, "VolumeStatusItem": { "base": "

        Describes the volume status.

        ", "refs": { "VolumeStatusList$member": null } }, "VolumeStatusList": { "base": null, "refs": { "DescribeVolumeStatusResult$VolumeStatuses": "

        A list of volumes.

        " } }, "VolumeStatusName": { "base": null, "refs": { "VolumeStatusDetails$Name": "

        The name of the volume status.

        " } }, "VolumeType": { "base": null, "refs": { "CreateVolumeRequest$VolumeType": "

        The volume type. This can be gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, or standard for Magnetic volumes.

        Default: standard

        ", "EbsBlockDevice$VolumeType": "

        The volume type: gp2, io1, st1, sc1, or standard.

        Default: standard

        ", "Volume$VolumeType": "

        The volume type. This can be gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, or standard for Magnetic volumes.

        " } }, "Vpc": { "base": "

        Describes a VPC.

        ", "refs": { "CreateVpcResult$Vpc": "

        Information about the VPC.

        ", "VpcList$member": null } }, "VpcAttachment": { "base": "

        Describes an attachment between a virtual private gateway and a VPC.

        ", "refs": { "AttachVpnGatewayResult$VpcAttachment": "

        Information about the attachment.

        ", "VpcAttachmentList$member": null } }, "VpcAttachmentList": { "base": null, "refs": { "VpnGateway$VpcAttachments": "

        Any VPCs attached to the virtual private gateway.

        " } }, "VpcAttributeName": { "base": null, "refs": { "DescribeVpcAttributeRequest$Attribute": "

        The VPC attribute.

        " } }, "VpcClassicLink": { "base": "

        Describes whether a VPC is enabled for ClassicLink.

        ", "refs": { "VpcClassicLinkList$member": null } }, "VpcClassicLinkIdList": { "base": null, "refs": { "DescribeVpcClassicLinkDnsSupportRequest$VpcIds": "

        One or more VPC IDs.

        ", "DescribeVpcClassicLinkRequest$VpcIds": "

        One or more VPCs for which you want to describe the ClassicLink status.

        " } }, "VpcClassicLinkList": { "base": null, "refs": { "DescribeVpcClassicLinkResult$Vpcs": "

        The ClassicLink status of one or more VPCs.

        " } }, "VpcEndpoint": { "base": "

        Describes a VPC endpoint.

        ", "refs": { "CreateVpcEndpointResult$VpcEndpoint": "

        Information about the endpoint.

        ", "VpcEndpointSet$member": null } }, "VpcEndpointSet": { "base": null, "refs": { "DescribeVpcEndpointsResult$VpcEndpoints": "

        Information about the endpoints.

        " } }, "VpcIdStringList": { "base": null, "refs": { "DescribeVpcsRequest$VpcIds": "

        One or more VPC IDs.

        Default: Describes all your VPCs.

        " } }, "VpcList": { "base": null, "refs": { "DescribeVpcsResult$Vpcs": "

        Information about one or more VPCs.

        " } }, "VpcPeeringConnection": { "base": "

        Describes a VPC peering connection.

        ", "refs": { "AcceptVpcPeeringConnectionResult$VpcPeeringConnection": "

        Information about the VPC peering connection.

        ", "CreateVpcPeeringConnectionResult$VpcPeeringConnection": "

        Information about the VPC peering connection.

        ", "VpcPeeringConnectionList$member": null } }, "VpcPeeringConnectionList": { "base": null, "refs": { "DescribeVpcPeeringConnectionsResult$VpcPeeringConnections": "

        Information about the VPC peering connections.

        " } }, "VpcPeeringConnectionOptionsDescription": { "base": "

        Describes the VPC peering connection options.

        ", "refs": { "VpcPeeringConnectionVpcInfo$PeeringOptions": "

        Information about the VPC peering connection options for the accepter or requester VPC.

        " } }, "VpcPeeringConnectionStateReason": { "base": "

        Describes the status of a VPC peering connection.

        ", "refs": { "VpcPeeringConnection$Status": "

        The status of the VPC peering connection.

        " } }, "VpcPeeringConnectionStateReasonCode": { "base": null, "refs": { "VpcPeeringConnectionStateReason$Code": "

        The status of the VPC peering connection.

        " } }, "VpcPeeringConnectionVpcInfo": { "base": "

        Describes a VPC in a VPC peering connection.

        ", "refs": { "VpcPeeringConnection$AccepterVpcInfo": "

        Information about the accepter VPC. CIDR block information is not returned when creating a VPC peering connection, or when describing a VPC peering connection that's in the initiating-request or pending-acceptance state.

        ", "VpcPeeringConnection$RequesterVpcInfo": "

        Information about the requester VPC.

        " } }, "VpcState": { "base": null, "refs": { "Vpc$State": "

        The current state of the VPC.

        " } }, "VpnConnection": { "base": "

        Describes a VPN connection.

        ", "refs": { "CreateVpnConnectionResult$VpnConnection": "

        Information about the VPN connection.

        ", "VpnConnectionList$member": null } }, "VpnConnectionIdStringList": { "base": null, "refs": { "DescribeVpnConnectionsRequest$VpnConnectionIds": "

        One or more VPN connection IDs.

        Default: Describes your VPN connections.

        " } }, "VpnConnectionList": { "base": null, "refs": { "DescribeVpnConnectionsResult$VpnConnections": "

        Information about one or more VPN connections.

        " } }, "VpnConnectionOptions": { "base": "

        Describes VPN connection options.

        ", "refs": { "VpnConnection$Options": "

        The VPN connection options.

        " } }, "VpnConnectionOptionsSpecification": { "base": "

        Describes VPN connection options.

        ", "refs": { "CreateVpnConnectionRequest$Options": "

        Indicates whether the VPN connection requires static routes. If you are creating a VPN connection for a device that does not support BGP, you must specify true.

        Default: false

        " } }, "VpnGateway": { "base": "

        Describes a virtual private gateway.

        ", "refs": { "CreateVpnGatewayResult$VpnGateway": "

        Information about the virtual private gateway.

        ", "VpnGatewayList$member": null } }, "VpnGatewayIdStringList": { "base": null, "refs": { "DescribeVpnGatewaysRequest$VpnGatewayIds": "

        One or more virtual private gateway IDs.

        Default: Describes all your virtual private gateways.

        " } }, "VpnGatewayList": { "base": null, "refs": { "DescribeVpnGatewaysResult$VpnGateways": "

        Information about one or more virtual private gateways.

        " } }, "VpnState": { "base": null, "refs": { "VpnConnection$State": "

        The current state of the VPN connection.

        ", "VpnGateway$State": "

        The current state of the virtual private gateway.

        ", "VpnStaticRoute$State": "

        The current state of the static route.

        " } }, "VpnStaticRoute": { "base": "

        Describes a static route for a VPN connection.

        ", "refs": { "VpnStaticRouteList$member": null } }, "VpnStaticRouteList": { "base": null, "refs": { "VpnConnection$Routes": "

        The static routes associated with the VPN connection.

        " } }, "VpnStaticRouteSource": { "base": null, "refs": { "VpnStaticRoute$Source": "

        Indicates how the routes were provided.

        " } }, "ZoneNameStringList": { "base": null, "refs": { "DescribeAvailabilityZonesRequest$ZoneNames": "

        The names of one or more Availability Zones.

        " } }, "scope": { "base": null, "refs": { "ReservedInstances$Scope": "

        The scope of the Reserved Instance.

        ", "ReservedInstancesConfiguration$Scope": "

        Whether the Reserved Instance is standard or convertible.

        ", "ReservedInstancesOffering$Scope": "

        Whether the Reserved Instance is applied to instances in a region or an Availability Zone.

        " } } } } aws-sdk-go-1.4.22/models/apis/ec2/2016-09-15/examples-1.json000077500000000000000000003271361300374646400224020ustar00rootroot00000000000000{ "version": "1.0", "examples": { "AllocateAddress": [ { "input": { "Domain": "vpc" }, "output": { "AllocationId": "eipalloc-64d5890a", "Domain": "vpc", "PublicIp": "203.0.113.0" }, "comments": { "input": { }, "output": { } }, "description": "This example allocates an Elastic IP address to use with an instance in a VPC.", "id": "ec2-allocate-address-1", "title": "To allocate an Elastic IP address for EC2-VPC" }, { "output": { "Domain": "standard", "PublicIp": "198.51.100.0" }, "comments": { "input": { }, "output": { } }, "description": "This example allocates an Elastic IP address to use with an instance in EC2-Classic.", "id": "ec2-allocate-address-2", "title": "To allocate an Elastic IP address for EC2-Classic" } ], "AssignPrivateIpAddresses": [ { "input": { "NetworkInterfaceId": "eni-e5aa89a3", "PrivateIpAddresses": [ "10.0.0.82" ] }, "comments": { "input": { }, "output": { } }, "description": "This example assigns the specified secondary private IP address to the specified network interface.", "id": "ec2-assign-private-ip-addresses-1", "title": "To assign a specific secondary private IP address to an interface" }, { "input": { "NetworkInterfaceId": "eni-e5aa89a3", "SecondaryPrivateIpAddressCount": 2 }, "comments": { "input": { }, "output": { } }, "description": "This example assigns two secondary private IP addresses to the specified network interface. Amazon EC2 automatically assigns these IP addresses from the available IP addresses in the CIDR block range of the subnet the network interface is associated with.", "id": "ec2-assign-private-ip-addresses-2", "title": "To assign secondary private IP addresses that Amazon EC2 selects to an interface" } ], "AssociateAddress": [ { "input": { "AllocationId": "eipalloc-64d5890a", "InstanceId": "i-0b263919b6498b123" }, "output": { "AssociationId": "eipassoc-2bebb745" }, "comments": { "input": { }, "output": { } }, "description": "This example associates the specified Elastic IP address with the specified instance in a VPC.", "id": "ec2-associate-address-1", "title": "To associate an Elastic IP address in EC2-VPC" }, { "input": { "AllocationId": "eipalloc-64d5890a", "NetworkInterfaceId": "eni-1a2b3c4d" }, "output": { "AssociationId": "eipassoc-2bebb745" }, "comments": { "input": { }, "output": { } }, "description": "This example associates the specified Elastic IP address with the specified network interface.", "id": "ec2-associate-address-2", "title": "To associate an Elastic IP address with a network interface" }, { "input": { "InstanceId": "i-07ffe74c7330ebf53", "PublicIp": "198.51.100.0" }, "comments": { "input": { }, "output": { } }, "description": "This example associates an Elastic IP address with an instance in EC2-Classic.", "id": "ec2-associate-address-3", "title": "To associate an Elastic IP address in EC2-Classic" } ], "AssociateDhcpOptions": [ { "input": { "DhcpOptionsId": "dopt-d9070ebb", "VpcId": "vpc-a01106c2" }, "comments": { "input": { }, "output": { } }, "description": "This example associates the specified DHCP options set with the specified VPC.", "id": "ec2-associate-dhcp-options-1", "title": "To associate a DHCP options set with a VPC" }, { "input": { "DhcpOptionsId": "default", "VpcId": "vpc-a01106c2" }, "comments": { "input": { }, "output": { } }, "description": "This example associates the default DHCP options set with the specified VPC.", "id": "ec2-associate-dhcp-options-2", "title": "To associate the default DHCP options set with a VPC" } ], "AssociateRouteTable": [ { "input": { "RouteTableId": "rtb-22574640", "SubnetId": "subnet-9d4a7b6" }, "output": { "AssociationId": "rtbassoc-781d0d1a" }, "comments": { "input": { }, "output": { } }, "description": "This example associates the specified route table with the specified subnet.", "id": "ec2-associate-route-table-1", "title": "To associate a route table with a subnet" } ], "AttachInternetGateway": [ { "input": { "InternetGatewayId": "igw-c0a643a9", "VpcId": "vpc-a01106c2" }, "comments": { "input": { }, "output": { } }, "description": "This example attaches the specified Internet gateway to the specified VPC.", "id": "ec2-attach-internet-gateway-1", "title": "To attach an Internet gateway to a VPC" } ], "AttachNetworkInterface": [ { "input": { "DeviceIndex": 1, "InstanceId": "i-1234567890abcdef0", "NetworkInterfaceId": "eni-e5aa89a3" }, "output": { "AttachmentId": "eni-attach-66c4350a" }, "comments": { "input": { }, "output": { } }, "description": "This example attaches the specified network interface to the specified instance.", "id": "ec2-attach-network-interface-1", "title": "To attach a network interface to an instance" } ], "AttachVolume": [ { "input": { "Device": "/dev/sdf", "InstanceId": "i-01474ef662b89480", "VolumeId": "vol-1234567890abcdef0" }, "output": { "AttachTime": "2016-08-29T18:52:32.724Z", "Device": "/dev/sdf", "InstanceId": "i-01474ef662b89480", "State": "attaching", "VolumeId": "vol-1234567890abcdef0" }, "comments": { "input": { }, "output": { } }, "description": "This example attaches a volume (``vol-1234567890abcdef0``) to an instance (``i-01474ef662b89480``) as ``/dev/sdf``.", "id": "to-attach-a-volume-to-an-instance-1472499213109", "title": "To attach a volume to an instance" } ], "CancelSpotFleetRequests": [ { "input": { "SpotFleetRequestIds": [ "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" ], "TerminateInstances": true }, "output": { "SuccessfulFleetRequests": [ { "CurrentSpotFleetRequestState": "cancelled_running", "PreviousSpotFleetRequestState": "active", "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example cancels the specified Spot fleet request and terminates its associated Spot Instances.", "id": "ec2-cancel-spot-fleet-requests-1", "title": "To cancel a Spot fleet request" }, { "input": { "SpotFleetRequestIds": [ "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" ], "TerminateInstances": false }, "output": { "SuccessfulFleetRequests": [ { "CurrentSpotFleetRequestState": "cancelled_terminating", "PreviousSpotFleetRequestState": "active", "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example cancels the specified Spot fleet request without terminating its associated Spot Instances.", "id": "ec2-cancel-spot-fleet-requests-2", "title": "To cancel a Spot fleet request without terminating its Spot Instances" } ], "CancelSpotInstanceRequests": [ { "input": { "SpotInstanceRequestIds": [ "sir-08b93456" ] }, "output": { "CancelledSpotInstanceRequests": [ { "SpotInstanceRequestId": "sir-08b93456", "State": "cancelled" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example cancels a Spot Instance request.", "id": "ec2-cancel-spot-instance-requests-1", "title": "To cancel Spot Instance requests" } ], "ConfirmProductInstance": [ { "input": { "InstanceId": "i-1234567890abcdef0", "ProductCode": "774F4FF8" }, "output": { "OwnerId": "123456789012" }, "comments": { "input": { }, "output": { } }, "description": "This example determines whether the specified product code is associated with the specified instance.", "id": "to-confirm-the-product-instance-1472712108494", "title": "To confirm the product instance" } ], "CopySnapshot": [ { "input": { "Description": "This is my copied snapshot.", "DestinationRegion": "us-east-1", "SourceRegion": "us-west-2", "SourceSnapshotId": "snap-066877671789bd71b" }, "output": { "SnapshotId": "snap-066877671789bd71b" }, "comments": { "input": { }, "output": { } }, "description": "This example copies a snapshot with the snapshot ID of ``snap-066877671789bd71b`` from the ``us-west-2`` region to the ``us-east-1`` region and adds a short description to identify the snapshot.", "id": "to-copy-a-snapshot-1472502259774", "title": "To copy a snapshot" } ], "CreateCustomerGateway": [ { "input": { "BgpAsn": 65534, "PublicIp": "12.1.2.3", "Type": "ipsec.1" }, "output": { "CustomerGateway": { "BgpAsn": "65534", "CustomerGatewayId": "cgw-0e11f167", "IpAddress": "12.1.2.3", "State": "available", "Type": "ipsec.1" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a customer gateway with the specified IP address for its outside interface.", "id": "ec2-create-customer-gateway-1", "title": "To create a customer gateway" } ], "CreateDhcpOptions": [ { "input": { "DhcpConfigurations": [ { "Key": "domain-name-servers", "Values": [ "10.2.5.1", "10.2.5.2" ] } ] }, "output": { "DhcpOptions": { "DhcpConfigurations": [ { "Key": "domain-name-servers", "Values": [ { "Value": "10.2.5.2" }, { "Value": "10.2.5.1" } ] } ], "DhcpOptionsId": "dopt-d9070ebb" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a DHCP options set.", "id": "ec2-create-dhcp-options-1", "title": "To create a DHCP options set" } ], "CreateInternetGateway": [ { "output": { "InternetGateway": { "Attachments": [ ], "InternetGatewayId": "igw-c0a643a9", "Tags": [ ] } }, "comments": { "input": { }, "output": { } }, "description": "This example creates an Internet gateway.", "id": "ec2-create-internet-gateway-1", "title": "To create an Internet gateway" } ], "CreateKeyPair": [ { "input": { "KeyName": "my-key-pair" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a key pair named my-key-pair.", "id": "ec2-create-key-pair-1", "title": "To create a key pair" } ], "CreateNatGateway": [ { "input": { "AllocationId": "eipalloc-37fc1a52", "SubnetId": "subnet-1a2b3c4d" }, "output": { "NatGateway": { "CreateTime": "2015-12-17T12:45:26.732Z", "NatGatewayAddresses": [ { "AllocationId": "eipalloc-37fc1a52" } ], "NatGatewayId": "nat-08d48af2a8e83edfd", "State": "pending", "SubnetId": "subnet-1a2b3c4d", "VpcId": "vpc-1122aabb" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a NAT gateway in subnet subnet-1a2b3c4d and associates an Elastic IP address with the allocation ID eipalloc-37fc1a52 with the NAT gateway.", "id": "ec2-create-nat-gateway-1", "title": "To create a NAT gateway" } ], "CreateNetworkAcl": [ { "input": { "VpcId": "vpc-a01106c2" }, "output": { "NetworkAcl": { "Associations": [ ], "Entries": [ { "CidrBlock": "0.0.0.0/0", "Egress": true, "Protocol": "-1", "RuleAction": "deny", "RuleNumber": 32767 }, { "CidrBlock": "0.0.0.0/0", "Egress": false, "Protocol": "-1", "RuleAction": "deny", "RuleNumber": 32767 } ], "IsDefault": false, "NetworkAclId": "acl-5fb85d36", "Tags": [ ], "VpcId": "vpc-a01106c2" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a network ACL for the specified VPC.", "id": "ec2-create-network-acl-1", "title": "To create a network ACL" } ], "CreateNetworkAclEntry": [ { "input": { "CidrBlock": "0.0.0.0/0", "Egress": false, "NetworkAclId": "acl-5fb85d36", "PortRange": { "From": 53, "To": 53 }, "Protocol": "udp", "RuleAction": "allow", "RuleNumber": 100 }, "comments": { "input": { }, "output": { } }, "description": "This example creates an entry for the specified network ACL. The rule allows ingress traffic from anywhere (0.0.0.0/0) on UDP port 53 (DNS) into any associated subnet.", "id": "ec2-create-network-acl-entry-1", "title": "To create a network ACL entry" } ], "CreateNetworkInterface": [ { "input": { "Description": "my network interface", "Groups": [ "sg-903004f8" ], "PrivateIpAddress": "10.0.2.17", "SubnetId": "subnet-9d4a7b6c" }, "output": { "NetworkInterface": { "AvailabilityZone": "us-east-1d", "Description": "my network interface", "Groups": [ { "GroupId": "sg-903004f8", "GroupName": "default" } ], "MacAddress": "02:1a:80:41:52:9c", "NetworkInterfaceId": "eni-e5aa89a3", "OwnerId": "123456789012", "PrivateIpAddress": "10.0.2.17", "PrivateIpAddresses": [ { "Primary": true, "PrivateIpAddress": "10.0.2.17" } ], "RequesterManaged": false, "SourceDestCheck": true, "Status": "pending", "SubnetId": "subnet-9d4a7b6c", "TagSet": [ ], "VpcId": "vpc-a01106c2" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a network interface for the specified subnet.", "id": "ec2-create-network-interface-1", "title": "To create a network interface" } ], "CreatePlacementGroup": [ { "input": { "GroupName": "my-cluster", "Strategy": "cluster" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example creates a placement group with the specified name.", "id": "to-create-a-placement-group-1472712245768", "title": "To create a placement group" } ], "CreateRoute": [ { "input": { "DestinationCidrBlock": "0.0.0.0/0", "GatewayId": "igw-c0a643a9", "RouteTableId": "rtb-22574640" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a route for the specified route table. The route matches all traffic (0.0.0.0/0) and routes it to the specified Internet gateway.", "id": "ec2-create-route-1", "title": "To create a route" } ], "CreateRouteTable": [ { "input": { "VpcId": "vpc-a01106c2" }, "output": { "RouteTable": { "Associations": [ ], "PropagatingVgws": [ ], "RouteTableId": "rtb-22574640", "Routes": [ { "DestinationCidrBlock": "10.0.0.0/16", "GatewayId": "local", "State": "active" } ], "Tags": [ ], "VpcId": "vpc-a01106c2" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a route table for the specified VPC.", "id": "ec2-create-route-table-1", "title": "To create a route table" } ], "CreateSnapshot": [ { "input": { "Description": "This is my root volume snapshot.", "VolumeId": "vol-1234567890abcdef0" }, "output": { "Description": "This is my root volume snapshot.", "OwnerId": "012345678910", "SnapshotId": "snap-066877671789bd71b", "StartTime": "2014-02-28T21:06:01.000Z", "State": "pending", "Tags": [ ], "VolumeId": "vol-1234567890abcdef0", "VolumeSize": 8 }, "comments": { "input": { }, "output": { } }, "description": "This example creates a snapshot of the volume with a volume ID of ``vol-1234567890abcdef0`` and a short description to identify the snapshot.", "id": "to-create-a-snapshot-1472502529790", "title": "To create a snapshot" } ], "CreateSpotDatafeedSubscription": [ { "input": { "Bucket": "my-s3-bucket", "Prefix": "spotdata" }, "output": { "SpotDatafeedSubscription": { "Bucket": "my-s3-bucket", "OwnerId": "123456789012", "Prefix": "spotdata", "State": "Active" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a Spot Instance data feed for your AWS account.", "id": "ec2-create-spot-datafeed-subscription-1", "title": "To create a Spot Instance datafeed" } ], "CreateSubnet": [ { "input": { "CidrBlock": "10.0.1.0/24", "VpcId": "vpc-a01106c2" }, "output": { "Subnet": { "AvailabilityZone": "us-west-2c", "AvailableIpAddressCount": 251, "CidrBlock": "10.0.1.0/24", "State": "pending", "SubnetId": "subnet-9d4a7b6c", "VpcId": "vpc-a01106c2" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a subnet in the specified VPC with the specified CIDR block. We recommend that you let us select an Availability Zone for you.", "id": "ec2-create-subnet-1", "title": "To create a subnet" } ], "CreateTags": [ { "input": { "Resources": [ "ami-78a54011" ], "Tags": [ { "Key": "Stack", "Value": "production" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example adds the tag Stack=production to the specified image, or overwrites an existing tag for the AMI where the tag key is Stack.", "id": "ec2-create-tags-1", "title": "To add a tag to a resource" } ], "CreateVolume": [ { "input": { "AvailabilityZone": "us-east-1a", "Size": 80, "VolumeType": "gp2" }, "output": { "AvailabilityZone": "us-east-1a", "CreateTime": "2016-08-29T18:52:32.724Z", "Encrypted": false, "Iops": 240, "Size": 80, "SnapshotId": "", "State": "creating", "VolumeId": "vol-6b60b7c7", "VolumeType": "gp2" }, "comments": { "input": { }, "output": { } }, "description": "This example creates an 80 GiB General Purpose (SSD) volume in the Availability Zone ``us-east-1a``.", "id": "to-create-a-new-volume-1472496724296", "title": "To create a new volume" }, { "input": { "AvailabilityZone": "us-east-1a", "Iops": 1000, "SnapshotId": "snap-066877671789bd71b", "VolumeType": "io1" }, "output": { "Attachments": [ ], "AvailabilityZone": "us-east-1a", "CreateTime": "2016-08-29T18:52:32.724Z", "Iops": 1000, "Size": 500, "SnapshotId": "snap-066877671789bd71b", "State": "creating", "Tags": [ ], "VolumeId": "vol-1234567890abcdef0", "VolumeType": "io1" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a new Provisioned IOPS (SSD) volume with 1000 provisioned IOPS from a snapshot in the Availability Zone ``us-east-1a``.", "id": "to-create-a-new-provisioned-iops-ssd-volume-from-a-snapshot-1472498975176", "title": "To create a new Provisioned IOPS (SSD) volume from a snapshot" } ], "CreateVpc": [ { "input": { "CidrBlock": "10.0.0.0/16" }, "output": { "Vpc": { "CidrBlock": "10.0.0.0/16", "DhcpOptionsId": "dopt-7a8b9c2d", "InstanceTenancy": "default", "State": "pending", "VpcId": "vpc-a01106c2" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a VPC with the specified CIDR block.", "id": "ec2-create-vpc-1", "title": "To create a VPC" } ], "DeleteCustomerGateway": [ { "input": { "CustomerGatewayId": "cgw-0e11f167" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified customer gateway.", "id": "ec2-delete-customer-gateway-1", "title": "To delete a customer gateway" } ], "DeleteDhcpOptions": [ { "input": { "DhcpOptionsId": "dopt-d9070ebb" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified DHCP options set.", "id": "ec2-delete-dhcp-options-1", "title": "To delete a DHCP options set" } ], "DeleteInternetGateway": [ { "input": { "InternetGatewayId": "igw-c0a643a9" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified Internet gateway.", "id": "ec2-delete-internet-gateway-1", "title": "To delete an Internet gateway" } ], "DeleteKeyPair": [ { "input": { "KeyName": "my-key-pair" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified key pair.", "id": "ec2-delete-key-pair-1", "title": "To delete a key pair" } ], "DeleteNatGateway": [ { "input": { "NatGatewayId": "nat-04ae55e711cec5680" }, "output": { "NatGatewayId": "nat-04ae55e711cec5680" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified NAT gateway.", "id": "ec2-delete-nat-gateway-1", "title": "To delete a NAT gateway" } ], "DeleteNetworkAcl": [ { "input": { "NetworkAclId": "acl-5fb85d36" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified network ACL.", "id": "ec2-delete-network-acl-1", "title": "To delete a network ACL" } ], "DeleteNetworkAclEntry": [ { "input": { "Egress": true, "NetworkAclId": "acl-5fb85d36", "RuleNumber": 100 }, "comments": { "input": { }, "output": { } }, "description": "This example deletes ingress rule number 100 from the specified network ACL.", "id": "ec2-delete-network-acl-entry-1", "title": "To delete a network ACL entry" } ], "DeleteNetworkInterface": [ { "input": { "NetworkInterfaceId": "eni-e5aa89a3" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified network interface.", "id": "ec2-delete-network-interface-1", "title": "To delete a network interface" } ], "DeletePlacementGroup": [ { "input": { "GroupName": "my-cluster" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified placement group.\n", "id": "to-delete-a-placement-group-1472712349959", "title": "To delete a placement group" } ], "DeleteRoute": [ { "input": { "DestinationCidrBlock": "0.0.0.0/0", "RouteTableId": "rtb-22574640" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified route from the specified route table.", "id": "ec2-delete-route-1", "title": "To delete a route" } ], "DeleteRouteTable": [ { "input": { "RouteTableId": "rtb-22574640" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified route table.", "id": "ec2-delete-route-table-1", "title": "To delete a route table" } ], "DeleteSnapshot": [ { "input": { "SnapshotId": "snap-1234567890abcdef0" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example deletes a snapshot with the snapshot ID of ``snap-1234567890abcdef0``. If the command succeeds, no output is returned.", "id": "to-delete-a-snapshot-1472503042567", "title": "To delete a snapshot" } ], "DeleteSpotDatafeedSubscription": [ { "comments": { "input": { }, "output": { } }, "description": "This example deletes a Spot data feed subscription for the account.", "id": "ec2-delete-spot-datafeed-subscription-1", "title": "To cancel a Spot Instance data feed subscription" } ], "DeleteSubnet": [ { "input": { "SubnetId": "subnet-9d4a7b6c" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified subnet.", "id": "ec2-delete-subnet-1", "title": "To delete a subnet" } ], "DeleteTags": [ { "input": { "Resources": [ "ami-78a54011" ], "Tags": [ { "Key": "Stack", "Value": "test" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the tag Stack=test from the specified image.", "id": "ec2-delete-tags-1", "title": "To delete a tag from a resource" } ], "DeleteVolume": [ { "input": { "VolumeId": "vol-049df61146c4d7901" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example deletes an available volume with the volume ID of ``vol-049df61146c4d7901``. If the command succeeds, no output is returned.", "id": "to-delete-a-volume-1472503111160", "title": "To delete a volume" } ], "DeleteVpc": [ { "input": { "VpcId": "vpc-a01106c2" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified VPC.", "id": "ec2-delete-vpc-1", "title": "To delete a VPC" } ], "DescribeAccountAttributes": [ { "input": { "AttributeNames": [ "supported-platforms" ] }, "output": { "AccountAttributes": [ { "AttributeName": "supported-platforms", "AttributeValues": [ { "AttributeValue": "EC2" }, { "AttributeValue": "VPC" } ] } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the supported-platforms attribute for your AWS account.", "id": "ec2-describe-account-attributes-1", "title": "To describe a single attribute for your AWS account" }, { "output": { "AccountAttributes": [ { "AttributeName": "supported-platforms", "AttributeValues": [ { "AttributeValue": "EC2" }, { "AttributeValue": "VPC" } ] }, { "AttributeName": "vpc-max-security-groups-per-interface", "AttributeValues": [ { "AttributeValue": "5" } ] }, { "AttributeName": "max-elastic-ips", "AttributeValues": [ { "AttributeValue": "5" } ] }, { "AttributeName": "max-instances", "AttributeValues": [ { "AttributeValue": "20" } ] }, { "AttributeName": "vpc-max-elastic-ips", "AttributeValues": [ { "AttributeValue": "5" } ] }, { "AttributeName": "default-vpc", "AttributeValues": [ { "AttributeValue": "none" } ] } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the attributes for your AWS account.", "id": "ec2-describe-account-attributes-2", "title": "To describe all attributes for your AWS account" } ], "DescribeAddresses": [ { "output": { "Addresses": [ { "Domain": "standard", "InstanceId": "i-1234567890abcdef0", "PublicIp": "198.51.100.0" }, { "AllocationId": "eipalloc-12345678", "AssociationId": "eipassoc-12345678", "Domain": "vpc", "InstanceId": "i-1234567890abcdef0", "NetworkInterfaceId": "eni-12345678", "NetworkInterfaceOwnerId": "123456789012", "PrivateIpAddress": "10.0.1.241", "PublicIp": "203.0.113.0" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes your Elastic IP addresses.", "id": "ec2-describe-addresses-1", "title": "To describe your Elastic IP addresses" }, { "input": { "Filters": [ { "Name": "domain", "Values": [ "vpc" ] } ] }, "output": { "Addresses": [ { "AllocationId": "eipalloc-12345678", "AssociationId": "eipassoc-12345678", "Domain": "vpc", "InstanceId": "i-1234567890abcdef0", "NetworkInterfaceId": "eni-12345678", "NetworkInterfaceOwnerId": "123456789012", "PrivateIpAddress": "10.0.1.241", "PublicIp": "203.0.113.0" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes your Elastic IP addresses for use with instances in a VPC.", "id": "ec2-describe-addresses-2", "title": "To describe your Elastic IP addresses for EC2-VPC" }, { "input": { "Filters": [ { "Name": "domain", "Values": [ "standard" ] } ] }, "output": { "Addresses": [ { "Domain": "standard", "InstanceId": "i-1234567890abcdef0", "PublicIp": "198.51.100.0" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes your Elastic IP addresses for use with instances in EC2-Classic.", "id": "ec2-describe-addresses-3", "title": "To describe your Elastic IP addresses for EC2-Classic" } ], "DescribeAvailabilityZones": [ { "output": { "AvailabilityZones": [ { "Messages": [ ], "RegionName": "us-east-1", "State": "available", "ZoneName": "us-east-1b" }, { "Messages": [ ], "RegionName": "us-east-1", "State": "available", "ZoneName": "us-east-1c" }, { "Messages": [ ], "RegionName": "us-east-1", "State": "available", "ZoneName": "us-east-1d" }, { "Messages": [ ], "RegionName": "us-east-1", "State": "available", "ZoneName": "us-east-1e" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the Availability Zones that are available to you. The response includes Availability Zones only for the current region.", "id": "ec2-describe-availability-zones-1", "title": "To describe your Availability Zones" } ], "DescribeCustomerGateways": [ { "input": { "CustomerGatewayIds": [ "cgw-0e11f167" ] }, "output": { "CustomerGateways": [ { "BgpAsn": "65534", "CustomerGatewayId": "cgw-0e11f167", "IpAddress": "12.1.2.3", "State": "available", "Type": "ipsec.1" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified customer gateway.", "id": "ec2-describe-customer-gateways-1", "title": "To describe a customer gateway" } ], "DescribeDhcpOptions": [ { "input": { "DhcpOptionsIds": [ "dopt-d9070ebb" ] }, "output": { "DhcpOptions": [ { "DhcpConfigurations": [ { "Key": "domain-name-servers", "Values": [ { "Value": "10.2.5.2" }, { "Value": "10.2.5.1" } ] } ], "DhcpOptionsId": "dopt-d9070ebb" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified DHCP options set.", "id": "ec2-describe-dhcp-options-1", "title": "To describe a DHCP options set" } ], "DescribeInstanceAttribute": [ { "input": { "Attribute": "instanceType", "InstanceId": "i-1234567890abcdef0" }, "output": { "InstanceId": "i-1234567890abcdef0", "InstanceType": { "Value": "t1.micro" } }, "comments": { "input": { }, "output": { } }, "description": "This example describes the instance type of the specified instance.\n", "id": "to-describe-the-instance-type-1472712432132", "title": "To describe the instance type" }, { "input": { "Attribute": "disableApiTermination", "InstanceId": "i-1234567890abcdef0" }, "output": { "DisableApiTermination": { "Value": "false" }, "InstanceId": "i-1234567890abcdef0" }, "comments": { "input": { }, "output": { } }, "description": "This example describes the ``disableApiTermination`` attribute of the specified instance.\n", "id": "to-describe-the-disableapitermination-attribute-1472712533466", "title": "To describe the disableApiTermination attribute" }, { "input": { "Attribute": "blockDeviceMapping", "InstanceId": "i-1234567890abcdef0" }, "output": { "BlockDeviceMappings": [ { "DeviceName": "/dev/sda1", "Ebs": { "AttachTime": "2013-05-17T22:42:34.000Z", "DeleteOnTermination": true, "Status": "attached", "VolumeId": "vol-049df61146c4d7901" } }, { "DeviceName": "/dev/sdf", "Ebs": { "AttachTime": "2013-09-10T23:07:00.000Z", "DeleteOnTermination": false, "Status": "attached", "VolumeId": "vol-049df61146c4d7901" } } ], "InstanceId": "i-1234567890abcdef0" }, "comments": { "input": { }, "output": { } }, "description": "This example describes the ``blockDeviceMapping`` attribute of the specified instance.\n", "id": "to-describe-the-block-device-mapping-for-an-instance-1472712645423", "title": "To describe the block device mapping for an instance" } ], "DescribeInternetGateways": [ { "input": { "Filters": [ { "Name": "attachment.vpc-id", "Values": [ "vpc-a01106c2" ] } ] }, "output": { "InternetGateways": [ { "Attachments": [ { "State": "available", "VpcId": "vpc-a01106c2" } ], "InternetGatewayId": "igw-c0a643a9", "Tags": [ ] } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the Internet gateway for the specified VPC.", "id": "ec2-describe-internet-gateways-1", "title": "To describe the Internet gateway for a VPC" } ], "DescribeKeyPairs": [ { "input": { "KeyNames": [ "my-key-pair" ] }, "output": { "KeyPairs": [ { "KeyFingerprint": "1f:51:ae:28:bf:89:e9:d8:1f:25:5d:37:2d:7d:b8:ca:9f:f5:f1:6f", "KeyName": "my-key-pair" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example displays the fingerprint for the specified key.", "id": "ec2-describe-key-pairs-1", "title": "To display a key pair" } ], "DescribeMovingAddresses": [ { "output": { "MovingAddressStatuses": [ { "MoveStatus": "MovingToVpc", "PublicIp": "198.51.100.0" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes all of your moving Elastic IP addresses.", "id": "ec2-describe-moving-addresses-1", "title": "To describe your moving addresses" } ], "DescribeNatGateways": [ { "input": { "Filter": [ { "Name": "vpc-id", "Values": [ "vpc-1a2b3c4d" ] } ] }, "output": { "NatGateways": [ { "CreateTime": "2015-12-01T12:26:55.983Z", "NatGatewayAddresses": [ { "AllocationId": "eipalloc-89c620ec", "NetworkInterfaceId": "eni-9dec76cd", "PrivateIp": "10.0.0.149", "PublicIp": "198.11.222.333" } ], "NatGatewayId": "nat-05dba92075d71c408", "State": "available", "SubnetId": "subnet-847e4dc2", "VpcId": "vpc-1a2b3c4d" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the NAT gateway for the specified VPC.", "id": "ec2-describe-nat-gateways-1", "title": "To describe a NAT gateway" } ], "DescribeNetworkAcls": [ { "input": { "NetworkAclIds": [ "acl-5fb85d36" ] }, "output": { "NetworkAcls": [ { "Associations": [ { "NetworkAclAssociationId": "aclassoc-66ea5f0b", "NetworkAclId": "acl-9aeb5ef7", "SubnetId": "subnet-65ea5f08" } ], "Entries": [ { "CidrBlock": "0.0.0.0/0", "Egress": true, "Protocol": "-1", "RuleAction": "deny", "RuleNumber": 32767 }, { "CidrBlock": "0.0.0.0/0", "Egress": false, "Protocol": "-1", "RuleAction": "deny", "RuleNumber": 32767 } ], "IsDefault": false, "NetworkAclId": "acl-5fb85d36", "Tags": [ ], "VpcId": "vpc-a01106c2" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified network ACL.", "id": "ec2-", "title": "To describe a network ACL" } ], "DescribeNetworkInterfaceAttribute": [ { "input": { "Attribute": "attachment", "NetworkInterfaceId": "eni-686ea200" }, "output": { "Attachment": { "AttachTime": "2015-05-21T20:02:20.000Z", "AttachmentId": "eni-attach-43348162", "DeleteOnTermination": true, "DeviceIndex": 0, "InstanceId": "i-1234567890abcdef0", "InstanceOwnerId": "123456789012", "Status": "attached" }, "NetworkInterfaceId": "eni-686ea200" }, "comments": { "input": { }, "output": { } }, "description": "This example describes the attachment attribute of the specified network interface.", "id": "ec2-describe-network-interface-attribute-1", "title": "To describe the attachment attribute of a network interface" }, { "input": { "Attribute": "description", "NetworkInterfaceId": "eni-686ea200" }, "output": { "Description": { "Value": "My description" }, "NetworkInterfaceId": "eni-686ea200" }, "comments": { "input": { }, "output": { } }, "description": "This example describes the description attribute of the specified network interface.", "id": "ec2-describe-network-interface-attribute-2", "title": "To describe the description attribute of a network interface" }, { "input": { "Attribute": "groupSet", "NetworkInterfaceId": "eni-686ea200" }, "output": { "Groups": [ { "GroupId": "sg-903004f8", "GroupName": "my-security-group" } ], "NetworkInterfaceId": "eni-686ea200" }, "comments": { "input": { }, "output": { } }, "description": "This example describes the groupSet attribute of the specified network interface.", "id": "ec2-describe-network-interface-attribute-3", "title": "To describe the groupSet attribute of a network interface" }, { "input": { "Attribute": "sourceDestCheck", "NetworkInterfaceId": "eni-686ea200" }, "output": { "NetworkInterfaceId": "eni-686ea200", "SourceDestCheck": { "Value": true } }, "comments": { "input": { }, "output": { } }, "description": "This example describes the sourceDestCheck attribute of the specified network interface.", "id": "ec2-describe-network-interface-attribute-4", "title": "To describe the sourceDestCheck attribute of a network interface" } ], "DescribeNetworkInterfaces": [ { "input": { "NetworkInterfaceIds": [ "eni-e5aa89a3" ] }, "output": { "NetworkInterfaces": [ { "Association": { "AssociationId": "eipassoc-0fbb766a", "IpOwnerId": "123456789012", "PublicDnsName": "ec2-203-0-113-12.compute-1.amazonaws.com", "PublicIp": "203.0.113.12" }, "Attachment": { "AttachTime": "2013-11-30T23:36:42.000Z", "AttachmentId": "eni-attach-66c4350a", "DeleteOnTermination": false, "DeviceIndex": 1, "InstanceId": "i-1234567890abcdef0", "InstanceOwnerId": "123456789012", "Status": "attached" }, "AvailabilityZone": "us-east-1d", "Description": "my network interface", "Groups": [ { "GroupId": "sg-8637d3e3", "GroupName": "default" } ], "MacAddress": "02:2f:8f:b0:cf:75", "NetworkInterfaceId": "eni-e5aa89a3", "OwnerId": "123456789012", "PrivateDnsName": "ip-10-0-1-17.ec2.internal", "PrivateIpAddress": "10.0.1.17", "PrivateIpAddresses": [ { "Association": { "AssociationId": "eipassoc-0fbb766a", "IpOwnerId": "123456789012", "PublicDnsName": "ec2-203-0-113-12.compute-1.amazonaws.com", "PublicIp": "203.0.113.12" }, "Primary": true, "PrivateDnsName": "ip-10-0-1-17.ec2.internal", "PrivateIpAddress": "10.0.1.17" } ], "RequesterManaged": false, "SourceDestCheck": true, "Status": "in-use", "SubnetId": "subnet-b61f49f0", "TagSet": [ ], "VpcId": "vpc-a01106c2" } ] }, "comments": { "input": { }, "output": { } }, "description": "", "id": "ec2-describe-network-interfaces-1", "title": "To describe a network interface" } ], "DescribeRegions": [ { "output": { "Regions": [ { "Endpoint": "ec2.ap-south-1.amazonaws.com", "RegionName": "ap-south-1" }, { "Endpoint": "ec2.eu-west-1.amazonaws.com", "RegionName": "eu-west-1" }, { "Endpoint": "ec2.ap-southeast-1.amazonaws.com", "RegionName": "ap-southeast-1" }, { "Endpoint": "ec2.ap-southeast-2.amazonaws.com", "RegionName": "ap-southeast-2" }, { "Endpoint": "ec2.eu-central-1.amazonaws.com", "RegionName": "eu-central-1" }, { "Endpoint": "ec2.ap-northeast-2.amazonaws.com", "RegionName": "ap-northeast-2" }, { "Endpoint": "ec2.ap-northeast-1.amazonaws.com", "RegionName": "ap-northeast-1" }, { "Endpoint": "ec2.us-east-1.amazonaws.com", "RegionName": "us-east-1" }, { "Endpoint": "ec2.sa-east-1.amazonaws.com", "RegionName": "sa-east-1" }, { "Endpoint": "ec2.us-west-1.amazonaws.com", "RegionName": "us-west-1" }, { "Endpoint": "ec2.us-west-2.amazonaws.com", "RegionName": "us-west-2" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes all the regions that are available to you.", "id": "ec2-describe-regions-1", "title": "To describe your regions" } ], "DescribeRouteTables": [ { "input": { "RouteTableIds": [ "rtb-1f382e7d" ] }, "output": { "RouteTables": [ { "Associations": [ { "Main": true, "RouteTableAssociationId": "rtbassoc-d8ccddba", "RouteTableId": "rtb-1f382e7d" } ], "PropagatingVgws": [ ], "RouteTableId": "rtb-1f382e7d", "Routes": [ { "DestinationCidrBlock": "10.0.0.0/16", "GatewayId": "local", "State": "active" } ], "Tags": [ ], "VpcId": "vpc-a01106c2" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified route table.", "id": "ec2-describe-route-tables-1", "title": "To describe a route table" } ], "DescribeScheduledInstanceAvailability": [ { "input": { "FirstSlotStartTimeRange": { "EarliestTime": "2016-01-31T00:00:00Z", "LatestTime": "2016-01-31T04:00:00Z" }, "Recurrence": { "Frequency": "Weekly", "Interval": 1, "OccurrenceDays": [ 1 ] } }, "output": { "ScheduledInstanceAvailabilitySet": [ { "AvailabilityZone": "us-west-2b", "AvailableInstanceCount": 20, "FirstSlotStartTime": "2016-01-31T00:00:00Z", "HourlyPrice": "0.095", "InstanceType": "c4.large", "MaxTermDurationInDays": 366, "MinTermDurationInDays": 366, "NetworkPlatform": "EC2-VPC", "Platform": "Linux/UNIX", "PurchaseToken": "eyJ2IjoiMSIsInMiOjEsImMiOi...", "Recurrence": { "Frequency": "Weekly", "Interval": 1, "OccurrenceDaySet": [ 1 ], "OccurrenceRelativeToEnd": false }, "SlotDurationInHours": 23, "TotalScheduledInstanceHours": 1219 } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes a schedule that occurs every week on Sunday, starting on the specified date. Note that the output contains a single schedule as an example.", "id": "ec2-describe-scheduled-instance-availability-1", "title": "To describe an available schedule" } ], "DescribeScheduledInstances": [ { "input": { "ScheduledInstanceIds": [ "sci-1234-1234-1234-1234-123456789012" ] }, "output": { "ScheduledInstanceSet": [ { "AvailabilityZone": "us-west-2b", "CreateDate": "2016-01-25T21:43:38.612Z", "HourlyPrice": "0.095", "InstanceCount": 1, "InstanceType": "c4.large", "NetworkPlatform": "EC2-VPC", "NextSlotStartTime": "2016-01-31T09:00:00Z", "Platform": "Linux/UNIX", "Recurrence": { "Frequency": "Weekly", "Interval": 1, "OccurrenceDaySet": [ 1 ], "OccurrenceRelativeToEnd": false, "OccurrenceUnit": "" }, "ScheduledInstanceId": "sci-1234-1234-1234-1234-123456789012", "SlotDurationInHours": 32, "TermEndDate": "2017-01-31T09:00:00Z", "TermStartDate": "2016-01-31T09:00:00Z", "TotalScheduledInstanceHours": 1696 } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified Scheduled Instance.", "id": "ec2-describe-scheduled-instances-1", "title": "To describe your Scheduled Instances" } ], "DescribeSnapshotAttribute": [ { "input": { "Attribute": "createVolumePermission", "SnapshotId": "snap-066877671789bd71b" }, "output": { "CreateVolumePermissions": [ ], "SnapshotId": "snap-066877671789bd71b" }, "comments": { "input": { }, "output": { } }, "description": "This example describes the ``createVolumePermission`` attribute on a snapshot with the snapshot ID of ``snap-066877671789bd71b``.", "id": "to-describe-snapshot-attributes-1472503199736", "title": "To describe snapshot attributes" } ], "DescribeSnapshots": [ { "input": { "SnapshotIds": [ "snap-1234567890abcdef0" ] }, "output": { "NextToken": "", "Snapshots": [ { "Description": "This is my snapshot.", "OwnerId": "012345678910", "Progress": "100%", "SnapshotId": "snap-1234567890abcdef0", "StartTime": "2014-02-28T21:28:32.000Z", "State": "completed", "VolumeId": "vol-049df61146c4d7901", "VolumeSize": 8 } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes a snapshot with the snapshot ID of ``snap-1234567890abcdef0``.", "id": "to-describe-a-snapshot-1472503807850", "title": "To describe a snapshot" }, { "input": { "Filters": [ { "Name": "status", "Values": [ "pending" ] } ], "OwnerIds": [ "012345678910" ] }, "output": { "NextToken": "", "Snapshots": [ { "Description": "This is my copied snapshot.", "OwnerId": "012345678910", "Progress": "87%", "SnapshotId": "snap-066877671789bd71b", "StartTime": "2014-02-28T21:37:27.000Z", "State": "pending", "VolumeId": "vol-1234567890abcdef0", "VolumeSize": 8 } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes all snapshots owned by the ID 012345678910 that are in the ``pending`` status.", "id": "to-describe-snapshots-using-filters-1472503929793", "title": "To describe snapshots using filters" } ], "DescribeSpotDatafeedSubscription": [ { "output": { "SpotDatafeedSubscription": { "Bucket": "my-s3-bucket", "OwnerId": "123456789012", "Prefix": "spotdata", "State": "Active" } }, "comments": { "input": { }, "output": { } }, "description": "This example describes the Spot Instance datafeed subscription for your AWS account.", "id": "ec2-describe-spot-datafeed-subscription-1", "title": "To describe the datafeed for your AWS account" } ], "DescribeSpotFleetInstances": [ { "input": { "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" }, "output": { "ActiveInstances": [ { "InstanceId": "i-1234567890abcdef0", "InstanceType": "m3.medium", "SpotInstanceRequestId": "sir-08b93456" } ], "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" }, "comments": { "input": { }, "output": { } }, "description": "This example lists the Spot Instances associated with the specified Spot fleet.", "id": "ec2-describe-spot-fleet-instances-1", "title": "To describe the Spot Instances associated with a Spot fleet" } ], "DescribeSpotFleetRequestHistory": [ { "input": { "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", "StartTime": "2015-05-26T00:00:00Z" }, "output": { "HistoryRecords": [ { "EventInformation": { "EventSubType": "submitted" }, "EventType": "fleetRequestChange", "Timestamp": "2015-05-26T23:17:20.697Z" }, { "EventInformation": { "EventSubType": "active" }, "EventType": "fleetRequestChange", "Timestamp": "2015-05-26T23:17:20.873Z" }, { "EventInformation": { "EventSubType": "launched", "InstanceId": "i-1234567890abcdef0" }, "EventType": "instanceChange", "Timestamp": "2015-05-26T23:21:21.712Z" }, { "EventInformation": { "EventSubType": "launched", "InstanceId": "i-1234567890abcdef1" }, "EventType": "instanceChange", "Timestamp": "2015-05-26T23:21:21.816Z" } ], "NextToken": "CpHNsscimcV5oH7bSbub03CI2Qms5+ypNpNm+53MNlR0YcXAkp0xFlfKf91yVxSExmbtma3awYxMFzNA663ZskT0AHtJ6TCb2Z8bQC2EnZgyELbymtWPfpZ1ZbauVg+P+TfGlWxWWB/Vr5dk5d4LfdgA/DRAHUrYgxzrEXAMPLE=", "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", "StartTime": "2015-05-26T00:00:00Z" }, "comments": { "input": { }, "output": { } }, "description": "This example returns the history for the specified Spot fleet starting at the specified time.", "id": "ec2-describe-spot-fleet-request-history-1", "title": "To describe Spot fleet history" } ], "DescribeSpotFleetRequests": [ { "input": { "SpotFleetRequestIds": [ "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" ] }, "output": { "SpotFleetRequestConfigs": [ { "SpotFleetRequestConfig": { "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", "LaunchSpecifications": [ { "EbsOptimized": false, "ImageId": "ami-1a2b3c4d", "InstanceType": "cc2.8xlarge", "NetworkInterfaces": [ { "AssociatePublicIpAddress": true, "DeleteOnTermination": false, "DeviceIndex": 0, "SecondaryPrivateIpAddressCount": 0, "SubnetId": "subnet-a61dafcf" } ] }, { "EbsOptimized": false, "ImageId": "ami-1a2b3c4d", "InstanceType": "r3.8xlarge", "NetworkInterfaces": [ { "AssociatePublicIpAddress": true, "DeleteOnTermination": false, "DeviceIndex": 0, "SecondaryPrivateIpAddressCount": 0, "SubnetId": "subnet-a61dafcf" } ] } ], "SpotPrice": "0.05", "TargetCapacity": 20 }, "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", "SpotFleetRequestState": "active" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified Spot fleet request.", "id": "ec2-describe-spot-fleet-requests-1", "title": "To describe a Spot fleet request" } ], "DescribeSpotInstanceRequests": [ { "input": { "SpotInstanceRequestIds": [ "sir-08b93456" ] }, "output": { "SpotInstanceRequests": [ { "CreateTime": "2014-04-30T18:14:55.000Z", "InstanceId": "i-1234567890abcdef0", "LaunchSpecification": { "BlockDeviceMappings": [ { "DeviceName": "/dev/sda1", "Ebs": { "DeleteOnTermination": true, "VolumeSize": 8, "VolumeType": "standard" } } ], "EbsOptimized": false, "ImageId": "ami-7aba833f", "InstanceType": "m1.small", "KeyName": "my-key-pair", "SecurityGroups": [ { "GroupId": "sg-e38f24a7", "GroupName": "my-security-group" } ] }, "LaunchedAvailabilityZone": "us-west-1b", "ProductDescription": "Linux/UNIX", "SpotInstanceRequestId": "sir-08b93456", "SpotPrice": "0.010000", "State": "active", "Status": { "Code": "fulfilled", "Message": "Your Spot request is fulfilled.", "UpdateTime": "2014-04-30T18:16:21.000Z" }, "Type": "one-time" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified Spot Instance request.", "id": "ec2-describe-spot-instance-requests-1", "title": "To describe a Spot Instance request" } ], "DescribeSpotPriceHistory": [ { "input": { "EndTime": "2014-01-06T08:09:10", "InstanceTypes": [ "m1.xlarge" ], "ProductDescriptions": [ "Linux/UNIX (Amazon VPC)" ], "StartTime": "2014-01-06T07:08:09" }, "output": { "SpotPriceHistory": [ { "AvailabilityZone": "us-west-1a", "InstanceType": "m1.xlarge", "ProductDescription": "Linux/UNIX (Amazon VPC)", "SpotPrice": "0.080000", "Timestamp": "2014-01-06T04:32:53.000Z" }, { "AvailabilityZone": "us-west-1c", "InstanceType": "m1.xlarge", "ProductDescription": "Linux/UNIX (Amazon VPC)", "SpotPrice": "0.080000", "Timestamp": "2014-01-05T11:28:26.000Z" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example returns the Spot Price history for m1.xlarge, Linux/UNIX (Amazon VPC) instances for a particular day in January.", "id": "ec2-describe-spot-price-history-1", "title": "To describe Spot price history for Linux/UNIX (Amazon VPC)" } ], "DescribeSubnets": [ { "input": { "Filters": [ { "Name": "vpc-id", "Values": [ "vpc-a01106c2" ] } ] }, "output": { "Subnets": [ { "AvailabilityZone": "us-east-1c", "AvailableIpAddressCount": 251, "CidrBlock": "10.0.1.0/24", "DefaultForAz": false, "MapPublicIpOnLaunch": false, "State": "available", "SubnetId": "subnet-9d4a7b6c", "VpcId": "vpc-a01106c2" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the subnets for the specified VPC.", "id": "ec2-describe-subnets-1", "title": "To describe the subnets for a VPC" } ], "DescribeTags": [ { "input": { "Filters": [ { "Name": "resource-id", "Values": [ "i-1234567890abcdef8" ] } ] }, "output": { "Tags": [ { "Key": "Stack", "ResourceId": "i-1234567890abcdef8", "ResourceType": "instance", "Value": "test" }, { "Key": "Name", "ResourceId": "i-1234567890abcdef8", "ResourceType": "instance", "Value": "Beta Server" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the tags for the specified instance.", "id": "ec2-describe-tags-1", "title": "To describe the tags for a single resource" } ], "DescribeVolumeAttribute": [ { "input": { "Attribute": "autoEnableIO", "VolumeId": "vol-049df61146c4d7901" }, "output": { "AutoEnableIO": { "Value": false }, "VolumeId": "vol-049df61146c4d7901" }, "comments": { "input": { }, "output": { } }, "description": "This example describes the ``autoEnableIo`` attribute of the volume with the ID ``vol-049df61146c4d7901``.", "id": "to-describe-a-volume-attribute-1472505773492", "title": "To describe a volume attribute" } ], "DescribeVolumeStatus": [ { "input": { "VolumeIds": [ "vol-1234567890abcdef0" ] }, "output": { "VolumeStatuses": [ { "Actions": [ ], "AvailabilityZone": "us-east-1a", "Events": [ ], "VolumeId": "vol-1234567890abcdef0", "VolumeStatus": { "Details": [ { "Name": "io-enabled", "Status": "passed" }, { "Name": "io-performance", "Status": "not-applicable" } ], "Status": "ok" } } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the status for the volume ``vol-1234567890abcdef0``.", "id": "to-describe-the-status-of-a-single-volume-1472507016193", "title": "To describe the status of a single volume" }, { "input": { "Filters": [ { "Name": "volume-status.status", "Values": [ "impaired" ] } ] }, "output": { "VolumeStatuses": [ ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the status for all volumes that are impaired. In this example output, there are no impaired volumes.", "id": "to-describe-the-status-of-impaired-volumes-1472507239821", "title": "To describe the status of impaired volumes" } ], "DescribeVolumes": [ { "input": { }, "output": { "NextToken": "", "Volumes": [ { "Attachments": [ { "AttachTime": "2013-12-18T22:35:00.000Z", "DeleteOnTermination": true, "Device": "/dev/sda1", "InstanceId": "i-1234567890abcdef0", "State": "attached", "VolumeId": "vol-049df61146c4d7901" } ], "AvailabilityZone": "us-east-1a", "CreateTime": "2013-12-18T22:35:00.084Z", "Size": 8, "SnapshotId": "snap-1234567890abcdef0", "State": "in-use", "VolumeId": "vol-049df61146c4d7901", "VolumeType": "standard" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes all of your volumes in the default region.", "id": "to-describe-all-volumes-1472506358883", "title": "To describe all volumes" }, { "input": { "Filters": [ { "Name": "attachment.instance-id", "Values": [ "i-1234567890abcdef0" ] }, { "Name": "attachment.delete-on-termination", "Values": [ "true" ] } ] }, "output": { "Volumes": [ { "Attachments": [ { "AttachTime": "2013-12-18T22:35:00.000Z", "DeleteOnTermination": true, "Device": "/dev/sda1", "InstanceId": "i-1234567890abcdef0", "State": "attached", "VolumeId": "vol-049df61146c4d7901" } ], "AvailabilityZone": "us-east-1a", "CreateTime": "2013-12-18T22:35:00.084Z", "Size": 8, "SnapshotId": "snap-1234567890abcdef0", "State": "in-use", "VolumeId": "vol-049df61146c4d7901", "VolumeType": "standard" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes all volumes that are both attached to the instance with the ID i-1234567890abcdef0 and set to delete when the instance terminates.", "id": "to-describe-volumes-that-are-attached-to-a-specific-instance-1472506613578", "title": "To describe volumes that are attached to a specific instance" } ], "DescribeVpcAttribute": [ { "input": { "Attribute": "enableDnsSupport", "VpcId": "vpc-a01106c2" }, "output": { "EnableDnsSupport": { "Value": true }, "VpcId": "vpc-a01106c2" }, "comments": { "input": { }, "output": { } }, "description": "This example describes the enableDnsSupport attribute. This attribute indicates whether DNS resolution is enabled for the VPC. If this attribute is true, the Amazon DNS server resolves DNS hostnames for your instances to their corresponding IP addresses; otherwise, it does not.", "id": "ec2-describe-vpc-attribute-1", "title": "To describe the enableDnsSupport attribute" }, { "input": { "Attribute": "enableDnsHostnames", "VpcId": "vpc-a01106c2" }, "output": { "EnableDnsHostnames": { "Value": true }, "VpcId": "vpc-a01106c2" }, "comments": { "input": { }, "output": { } }, "description": "This example describes the enableDnsHostnames attribute. This attribute indicates whether the instances launched in the VPC get DNS hostnames. If this attribute is true, instances in the VPC get DNS hostnames; otherwise, they do not.", "id": "ec2-describe-vpc-attribute-2", "title": "To describe the enableDnsHostnames attribute" } ], "DescribeVpcs": [ { "input": { "VpcIds": [ "vpc-a01106c2" ] }, "output": { "Vpcs": [ { "CidrBlock": "10.0.0.0/16", "DhcpOptionsId": "dopt-7a8b9c2d", "InstanceTenancy": "default", "IsDefault": false, "State": "available", "Tags": [ { "Key": "Name", "Value": "MyVPC" } ], "VpcId": "vpc-a01106c2" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified VPC.", "id": "ec2-describe-vpcs-1", "title": "To describe a VPC" } ], "DetachInternetGateway": [ { "input": { "InternetGatewayId": "igw-c0a643a9", "VpcId": "vpc-a01106c2" }, "comments": { "input": { }, "output": { } }, "description": "This example detaches the specified Internet gateway from the specified VPC.", "id": "ec2-detach-internet-gateway-1", "title": "To detach an Internet gateway from a VPC" } ], "DetachNetworkInterface": [ { "input": { "AttachmentId": "eni-attach-66c4350a" }, "comments": { "input": { }, "output": { } }, "description": "This example detaches the specified network interface from its attached instance.", "id": "ec2-detach-network-interface-1", "title": "To detach a network interface from an instance" } ], "DetachVolume": [ { "input": { "VolumeId": "vol-1234567890abcdef0" }, "output": { "AttachTime": "2014-02-27T19:23:06.000Z", "Device": "/dev/sdb", "InstanceId": "i-1234567890abcdef0", "State": "detaching", "VolumeId": "vol-049df61146c4d7901" }, "comments": { "input": { }, "output": { } }, "description": "This example detaches the volume (``vol-049df61146c4d7901``) from the instance it is attached to.", "id": "to-detach-a-volume-from-an-instance-1472507977694", "title": "To detach a volume from an instance" } ], "DisableVgwRoutePropagation": [ { "input": { "GatewayId": "vgw-9a4cacf3", "RouteTableId": "rtb-22574640" }, "comments": { "input": { }, "output": { } }, "description": "This example disables the specified virtual private gateway from propagating static routes to the specified route table.", "id": "ec2-disable-vgw-route-propagation-1", "title": "To disable route propagation" } ], "DisassociateAddress": [ { "input": { "AssociationId": "eipassoc-2bebb745" }, "comments": { "input": { }, "output": { } }, "description": "This example disassociates an Elastic IP address from an instance in a VPC.", "id": "ec2-disassociate-address-1", "title": "To disassociate an Elastic IP address in EC2-VPC" }, { "input": { "PublicIp": "198.51.100.0" }, "comments": { "input": { }, "output": { } }, "description": "This example disassociates an Elastic IP address from an instance in EC2-Classic.", "id": "ec2-disassociate-address-2", "title": "To disassociate an Elastic IP addresses in EC2-Classic" } ], "DisassociateRouteTable": [ { "input": { "AssociationId": "rtbassoc-781d0d1a" }, "comments": { "input": { }, "output": { } }, "description": "This example disassociates the specified route table from its associated subnet.", "id": "ec2-disassociate-route-table-1", "title": "To disassociate a route table" } ], "EnableVgwRoutePropagation": [ { "input": { "GatewayId": "vgw-9a4cacf3", "RouteTableId": "rtb-22574640" }, "comments": { "input": { }, "output": { } }, "description": "This example enables the specified virtual private gateway to propagate static routes to the specified route table.", "id": "ec2-enable-vgw-route-propagation-1", "title": "To enable route propagation" } ], "EnableVolumeIO": [ { "input": { "VolumeId": "vol-1234567890abcdef0" }, "comments": { "input": { }, "output": { } }, "description": "This example enables I/O on volume ``vol-1234567890abcdef0``.", "id": "to-enable-io-for-a-volume-1472508114867", "title": "To enable I/O for a volume" } ], "ModifyNetworkInterfaceAttribute": [ { "input": { "Attachment": { "AttachmentId": "eni-attach-43348162", "DeleteOnTermination": false }, "NetworkInterfaceId": "eni-686ea200" }, "comments": { "input": { }, "output": { } }, "description": "This example modifies the attachment attribute of the specified network interface.", "id": "ec2-modify-network-interface-attribute-1", "title": "To modify the attachment attribute of a network interface" }, { "input": { "Description": { "Value": "My description" }, "NetworkInterfaceId": "eni-686ea200" }, "comments": { "input": { }, "output": { } }, "description": "This example modifies the description attribute of the specified network interface.", "id": "ec2-modify-network-interface-attribute-2", "title": "To modify the description attribute of a network interface" }, { "input": { "Groups": [ "sg-903004f8", "sg-1a2b3c4d" ], "NetworkInterfaceId": "eni-686ea200" }, "comments": { "input": { }, "output": { } }, "description": "This example command modifies the groupSet attribute of the specified network interface.", "id": "ec2-modify-network-interface-attribute-3", "title": "To modify the groupSet attribute of a network interface" }, { "input": { "NetworkInterfaceId": "eni-686ea200", "SourceDestCheck": { "Value": false } }, "comments": { "input": { }, "output": { } }, "description": "This example command modifies the sourceDestCheck attribute of the specified network interface.", "id": "ec2-modify-network-interface-attribute-4", "title": "To modify the sourceDestCheck attribute of a network interface" } ], "ModifySnapshotAttribute": [ { "input": { "Attribute": "createVolumePermission", "OperationType": "remove", "SnapshotId": "snap-1234567890abcdef0", "UserIds": [ "123456789012" ] }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example modifies snapshot ``snap-1234567890abcdef0`` to remove the create volume permission for a user with the account ID ``123456789012``. If the command succeeds, no output is returned.", "id": "to-modify-a-snapshot-attribute-1472508385907", "title": "To modify a snapshot attribute" }, { "input": { "Attribute": "createVolumePermission", "GroupNames": [ "all" ], "OperationType": "add", "SnapshotId": "snap-1234567890abcdef0" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example makes the snapshot ``snap-1234567890abcdef0`` public.", "id": "to-make-a-snapshot-public-1472508470529", "title": "To make a snapshot public" } ], "ModifySpotFleetRequest": [ { "input": { "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", "TargetCapacity": 20 }, "output": { "Return": true }, "comments": { "input": { }, "output": { } }, "description": "This example increases the target capacity of the specified Spot fleet request.", "id": "ec2-modify-spot-fleet-request-1", "title": "To increase the target capacity of a Spot fleet request" }, { "input": { "ExcessCapacityTerminationPolicy": "NoTermination ", "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", "TargetCapacity": 10 }, "output": { "Return": true }, "comments": { "input": { }, "output": { } }, "description": "This example decreases the target capacity of the specified Spot fleet request without terminating any Spot Instances as a result.", "id": "ec2-modify-spot-fleet-request-2", "title": "To decrease the target capacity of a Spot fleet request" } ], "ModifySubnetAttribute": [ { "input": { "MapPublicIpOnLaunch": { "Value": true }, "SubnetId": "subnet-1a2b3c4d" }, "comments": { "input": { }, "output": { } }, "description": "This example modifies the specified subnet so that all instances launched into this subnet are assigned a public IP address.", "id": "ec2-modify-subnet-attribute-1", "title": "To change a subnet's public IP addressing behavior" } ], "ModifyVolumeAttribute": [ { "input": { "AutoEnableIO": { "Value": true }, "DryRun": true, "VolumeId": "vol-1234567890abcdef0" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example sets the ``autoEnableIo`` attribute of the volume with the ID ``vol-1234567890abcdef0`` to ``true``. If the command succeeds, no output is returned.", "id": "to-modify-a-volume-attribute-1472508596749", "title": "To modify a volume attribute" } ], "ModifyVpcAttribute": [ { "input": { "EnableDnsSupport": { "Value": false }, "VpcId": "vpc-a01106c2" }, "comments": { "input": { }, "output": { } }, "description": "This example modifies the enableDnsSupport attribute. This attribute indicates whether DNS resolution is enabled for the VPC. If this attribute is true, the Amazon DNS server resolves DNS hostnames for instances in the VPC to their corresponding IP addresses; otherwise, it does not.", "id": "ec2-modify-vpc-attribute-1", "title": "To modify the enableDnsSupport attribute" }, { "input": { "EnableDnsHostnames": { "Value": false }, "VpcId": "vpc-a01106c2" }, "comments": { "input": { }, "output": { } }, "description": "This example modifies the enableDnsHostnames attribute. This attribute indicates whether instances launched in the VPC get DNS hostnames. If this attribute is true, instances in the VPC get DNS hostnames; otherwise, they do not.", "id": "ec2-modify-vpc-attribute-2", "title": "To modify the enableDnsHostnames attribute" } ], "MoveAddressToVpc": [ { "input": { "PublicIp": "54.123.4.56" }, "output": { "Status": "MoveInProgress" }, "comments": { "input": { }, "output": { } }, "description": "This example moves the specified Elastic IP address to the EC2-VPC platform.", "id": "ec2-move-address-to-vpc-1", "title": "To move an address to EC2-VPC" } ], "PurchaseScheduledInstances": [ { "input": { "PurchaseRequests": [ { "InstanceCount": 1, "PurchaseToken": "eyJ2IjoiMSIsInMiOjEsImMiOi..." } ] }, "output": { "ScheduledInstanceSet": [ { "AvailabilityZone": "us-west-2b", "CreateDate": "2016-01-25T21:43:38.612Z", "HourlyPrice": "0.095", "InstanceCount": 1, "InstanceType": "c4.large", "NetworkPlatform": "EC2-VPC", "NextSlotStartTime": "2016-01-31T09:00:00Z", "Platform": "Linux/UNIX", "Recurrence": { "Frequency": "Weekly", "Interval": 1, "OccurrenceDaySet": [ 1 ], "OccurrenceRelativeToEnd": false, "OccurrenceUnit": "" }, "ScheduledInstanceId": "sci-1234-1234-1234-1234-123456789012", "SlotDurationInHours": 32, "TermEndDate": "2017-01-31T09:00:00Z", "TermStartDate": "2016-01-31T09:00:00Z", "TotalScheduledInstanceHours": 1696 } ] }, "comments": { "input": { }, "output": { } }, "description": "This example purchases a Scheduled Instance.", "id": "ec2-purchase-scheduled-instances-1", "title": "To purchase a Scheduled Instance" } ], "ReleaseAddress": [ { "input": { "AllocationId": "eipalloc-64d5890a" }, "comments": { "input": { }, "output": { } }, "description": "This example releases an Elastic IP address for use with instances in a VPC.", "id": "ec2-release-address-1", "title": "To release an Elastic IP address for EC2-VPC" }, { "input": { "PublicIp": "198.51.100.0" }, "comments": { "input": { }, "output": { } }, "description": "This example releases an Elastic IP address for use with instances in EC2-Classic.", "id": "ec2-release-address-2", "title": "To release an Elastic IP addresses for EC2-Classic" } ], "ReplaceNetworkAclAssociation": [ { "input": { "AssociationId": "aclassoc-e5b95c8c", "NetworkAclId": "acl-5fb85d36" }, "output": { "NewAssociationId": "aclassoc-3999875b" }, "comments": { "input": { }, "output": { } }, "description": "This example associates the specified network ACL with the subnet for the specified network ACL association.", "id": "ec2-replace-network-acl-association-1", "title": "To replace the network ACL associated with a subnet" } ], "ReplaceNetworkAclEntry": [ { "input": { "CidrBlock": "203.0.113.12/24", "Egress": false, "NetworkAclId": "acl-5fb85d36", "PortRange": { "From": 53, "To": 53 }, "Protocol": "udp", "RuleAction": "allow", "RuleNumber": 100 }, "comments": { "input": { }, "output": { } }, "description": "This example replaces an entry for the specified network ACL. The new rule 100 allows ingress traffic from 203.0.113.12/24 on UDP port 53 (DNS) into any associated subnet.", "id": "ec2-replace-network-acl-entry-1", "title": "To replace a network ACL entry" } ], "ReplaceRoute": [ { "input": { "DestinationCidrBlock": "10.0.0.0/16", "GatewayId": "vgw-9a4cacf3", "RouteTableId": "rtb-22574640" }, "comments": { "input": { }, "output": { } }, "description": "This example replaces the specified route in the specified table table. The new route matches the specified CIDR and sends the traffic to the specified virtual private gateway.", "id": "ec2-replace-route-1", "title": "To replace a route" } ], "ReplaceRouteTableAssociation": [ { "input": { "AssociationId": "rtbassoc-781d0d1a", "RouteTableId": "rtb-22574640" }, "output": { "NewAssociationId": "rtbassoc-3a1f0f58" }, "comments": { "input": { }, "output": { } }, "description": "This example associates the specified route table with the subnet for the specified route table association.", "id": "ec2-replace-route-table-association-1", "title": "To replace the route table associated with a subnet" } ], "RequestSpotFleet": [ { "input": { "SpotFleetRequestConfig": { "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", "LaunchSpecifications": [ { "IamInstanceProfile": { "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" }, "ImageId": "ami-1a2b3c4d", "InstanceType": "m3.medium", "KeyName": "my-key-pair", "SecurityGroups": [ { "GroupId": "sg-1a2b3c4d" } ], "SubnetId": "subnet-1a2b3c4d, subnet-3c4d5e6f" } ], "SpotPrice": "0.04", "TargetCapacity": 2 } }, "output": { "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a Spot fleet request with two launch specifications that differ only by subnet. The Spot fleet launches the instances in the specified subnet with the lowest price. If the instances are launched in a default VPC, they receive a public IP address by default. If the instances are launched in a nondefault VPC, they do not receive a public IP address by default. Note that you can't specify different subnets from the same Availability Zone in a Spot fleet request.", "id": "ec2-request-spot-fleet-1", "title": "To request a Spot fleet in the subnet with the lowest price" }, { "input": { "SpotFleetRequestConfig": { "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", "LaunchSpecifications": [ { "IamInstanceProfile": { "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" }, "ImageId": "ami-1a2b3c4d", "InstanceType": "m3.medium", "KeyName": "my-key-pair", "Placement": { "AvailabilityZone": "us-west-2a, us-west-2b" }, "SecurityGroups": [ { "GroupId": "sg-1a2b3c4d" } ] } ], "SpotPrice": "0.04", "TargetCapacity": 2 } }, "output": { "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a Spot fleet request with two launch specifications that differ only by Availability Zone. The Spot fleet launches the instances in the specified Availability Zone with the lowest price. If your account supports EC2-VPC only, Amazon EC2 launches the Spot instances in the default subnet of the Availability Zone. If your account supports EC2-Classic, Amazon EC2 launches the instances in EC2-Classic in the Availability Zone.", "id": "ec2-request-spot-fleet-2", "title": "To request a Spot fleet in the Availability Zone with the lowest price" }, { "input": { "SpotFleetRequestConfig": { "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", "LaunchSpecifications": [ { "IamInstanceProfile": { "Arn": "arn:aws:iam::880185128111:instance-profile/my-iam-role" }, "ImageId": "ami-1a2b3c4d", "InstanceType": "m3.medium", "KeyName": "my-key-pair", "NetworkInterfaces": [ { "AssociatePublicIpAddress": true, "DeviceIndex": 0, "Groups": [ "sg-1a2b3c4d" ], "SubnetId": "subnet-1a2b3c4d" } ] } ], "SpotPrice": "0.04", "TargetCapacity": 2 } }, "output": { "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" }, "comments": { "input": { }, "output": { } }, "description": "This example assigns public addresses to instances launched in a nondefault VPC. Note that when you specify a network interface, you must include the subnet ID and security group ID using the network interface.", "id": "ec2-request-spot-fleet-3", "title": "To launch Spot instances in a subnet and assign them public IP addresses" }, { "input": { "SpotFleetRequestConfig": { "AllocationStrategy": "diversified", "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "InstanceType": "c4.2xlarge", "SubnetId": "subnet-1a2b3c4d" }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "m3.2xlarge", "SubnetId": "subnet-1a2b3c4d" }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "r3.2xlarge", "SubnetId": "subnet-1a2b3c4d" } ], "SpotPrice": "0.70", "TargetCapacity": 30 } }, "output": { "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a Spot fleet request that launches 30 instances using the diversified allocation strategy. The launch specifications differ by instance type. The Spot fleet distributes the instances across the launch specifications such that there are 10 instances of each type.", "id": "ec2-request-spot-fleet-4", "title": "To request a Spot fleet using the diversified allocation strategy" } ], "RequestSpotInstances": [ { "input": { "InstanceCount": 5, "LaunchSpecification": { "IamInstanceProfile": { "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" }, "ImageId": "ami-1a2b3c4d", "InstanceType": "m3.medium", "KeyName": "my-key-pair", "Placement": { "AvailabilityZone": "us-west-2a" }, "SecurityGroupIds": [ "sg-1a2b3c4d" ] }, "SpotPrice": "0.03", "Type": "one-time" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a one-time Spot Instance request for five instances in the specified Availability Zone. If your account supports EC2-VPC only, Amazon EC2 launches the instances in the default subnet of the specified Availability Zone. If your account supports EC2-Classic, Amazon EC2 launches the instances in EC2-Classic in the specified Availability Zone.", "id": "ec2-request-spot-instances-1", "title": "To create a one-time Spot Instance request" }, { "input": { "InstanceCount": 5, "LaunchSpecification": { "IamInstanceProfile": { "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" }, "ImageId": "ami-1a2b3c4d", "InstanceType": "m3.medium", "SecurityGroupIds": [ "sg-1a2b3c4d" ], "SubnetId": "subnet-1a2b3c4d" }, "SpotPrice": "0.050", "Type": "one-time" }, "comments": { "input": { }, "output": { } }, "description": "This example command creates a one-time Spot Instance request for five instances in the specified subnet. Amazon EC2 launches the instances in the specified subnet. If the VPC is a nondefault VPC, the instances do not receive a public IP address by default.", "id": "ec2-request-spot-instances-2", "title": "To create a one-time Spot Instance request" } ], "ResetSnapshotAttribute": [ { "input": { "Attribute": "createVolumePermission", "SnapshotId": "snap-1234567890abcdef0" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example resets the create volume permissions for snapshot ``snap-1234567890abcdef0``. If the command succeeds, no output is returned.", "id": "to-reset-a-snapshot-attribute-1472508825735", "title": "To reset a snapshot attribute" } ], "RestoreAddressToClassic": [ { "input": { "PublicIp": "198.51.100.0" }, "output": { "PublicIp": "198.51.100.0", "Status": "MoveInProgress" }, "comments": { "input": { }, "output": { } }, "description": "This example restores the specified Elastic IP address to the EC2-Classic platform.", "id": "ec2-restore-address-to-classic-1", "title": "To restore an address to EC2-Classic" } ], "RunScheduledInstances": [ { "input": { "InstanceCount": 1, "LaunchSpecification": { "IamInstanceProfile": { "Name": "my-iam-role" }, "ImageId": "ami-12345678", "InstanceType": "c4.large", "KeyName": "my-key-pair", "NetworkInterfaces": [ { "AssociatePublicIpAddress": true, "DeviceIndex": 0, "Groups": [ "sg-12345678" ], "SubnetId": "subnet-12345678" } ] }, "ScheduledInstanceId": "sci-1234-1234-1234-1234-123456789012" }, "output": { "InstanceIdSet": [ "i-1234567890abcdef0" ] }, "comments": { "input": { }, "output": { } }, "description": "This example launches the specified Scheduled Instance in a VPC.", "id": "ec2-run-scheduled-instances-1", "title": "To launch a Scheduled Instance in a VPC" }, { "input": { "InstanceCount": 1, "LaunchSpecification": { "IamInstanceProfile": { "Name": "my-iam-role" }, "ImageId": "ami-12345678", "InstanceType": "c4.large", "KeyName": "my-key-pair", "Placement": { "AvailabilityZone": "us-west-2b" }, "SecurityGroupIds": [ "sg-12345678" ] }, "ScheduledInstanceId": "sci-1234-1234-1234-1234-123456789012" }, "output": { "InstanceIdSet": [ "i-1234567890abcdef0" ] }, "comments": { "input": { }, "output": { } }, "description": "This example launches the specified Scheduled Instance in EC2-Classic.", "id": "ec2-run-scheduled-instances-2", "title": "To launch a Scheduled Instance in EC2-Classic" } ], "UnassignPrivateIpAddresses": [ { "input": { "NetworkInterfaceId": "eni-e5aa89a3", "PrivateIpAddresses": [ "10.0.0.82" ] }, "comments": { "input": { }, "output": { } }, "description": "This example unassigns the specified private IP address from the specified network interface.", "id": "ec2-unassign-private-ip-addresses-1", "title": "To unassign a secondary private IP address from a network interface" } ] } } aws-sdk-go-1.4.22/models/apis/ec2/2016-09-15/paginators-1.json000077500000000000000000000071071300374646400227240ustar00rootroot00000000000000{ "pagination": { "DescribeAccountAttributes": { "result_key": "AccountAttributes" }, "DescribeAddresses": { "result_key": "Addresses" }, "DescribeAvailabilityZones": { "result_key": "AvailabilityZones" }, "DescribeBundleTasks": { "result_key": "BundleTasks" }, "DescribeConversionTasks": { "result_key": "ConversionTasks" }, "DescribeCustomerGateways": { "result_key": "CustomerGateways" }, "DescribeDhcpOptions": { "result_key": "DhcpOptions" }, "DescribeExportTasks": { "result_key": "ExportTasks" }, "DescribeImages": { "result_key": "Images" }, "DescribeInstanceStatus": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "InstanceStatuses" }, "DescribeInstances": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "Reservations" }, "DescribeInternetGateways": { "result_key": "InternetGateways" }, "DescribeKeyPairs": { "result_key": "KeyPairs" }, "DescribeNetworkAcls": { "result_key": "NetworkAcls" }, "DescribeNetworkInterfaces": { "result_key": "NetworkInterfaces" }, "DescribePlacementGroups": { "result_key": "PlacementGroups" }, "DescribeRegions": { "result_key": "Regions" }, "DescribeReservedInstances": { "result_key": "ReservedInstances" }, "DescribeReservedInstancesListings": { "result_key": "ReservedInstancesListings" }, "DescribeReservedInstancesOfferings": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "ReservedInstancesOfferings" }, "DescribeReservedInstancesModifications": { "input_token": "NextToken", "output_token": "NextToken", "result_key": "ReservedInstancesModifications" }, "DescribeRouteTables": { "result_key": "RouteTables" }, "DescribeSecurityGroups": { "result_key": "SecurityGroups" }, "DescribeSnapshots": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "Snapshots" }, "DescribeSpotInstanceRequests": { "result_key": "SpotInstanceRequests" }, "DescribeSpotFleetRequests": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "SpotFleetRequestConfigs" }, "DescribeSpotPriceHistory": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "SpotPriceHistory" }, "DescribeSubnets": { "result_key": "Subnets" }, "DescribeTags": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "Tags" }, "DescribeVolumeStatus": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "VolumeStatuses" }, "DescribeVolumes": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "Volumes" }, "DescribeVpcs": { "result_key": "Vpcs" }, "DescribeVpcPeeringConnections": { "result_key": "VpcPeeringConnections" }, "DescribeVpnConnections": { "result_key": "VpnConnections" }, "DescribeVpnGateways": { "result_key": "VpnGateways" } } } aws-sdk-go-1.4.22/models/apis/ec2/2016-09-15/waiters-2.json000077500000000000000000000350361300374646400222360ustar00rootroot00000000000000{ "version": 2, "waiters": { "InstanceExists": { "delay": 5, "maxAttempts": 40, "operation": "DescribeInstances", "acceptors": [ { "matcher": "path", "expected": true, "argument": "length(Reservations[]) > `0`", "state": "success" }, { "matcher": "error", "expected": "InvalidInstanceID.NotFound", "state": "retry" } ] }, "BundleTaskComplete": { "delay": 15, "operation": "DescribeBundleTasks", "maxAttempts": 40, "acceptors": [ { "expected": "complete", "matcher": "pathAll", "state": "success", "argument": "BundleTasks[].State" }, { "expected": "failed", "matcher": "pathAny", "state": "failure", "argument": "BundleTasks[].State" } ] }, "ConversionTaskCancelled": { "delay": 15, "operation": "DescribeConversionTasks", "maxAttempts": 40, "acceptors": [ { "expected": "cancelled", "matcher": "pathAll", "state": "success", "argument": "ConversionTasks[].State" } ] }, "ConversionTaskCompleted": { "delay": 15, "operation": "DescribeConversionTasks", "maxAttempts": 40, "acceptors": [ { "expected": "completed", "matcher": "pathAll", "state": "success", "argument": "ConversionTasks[].State" }, { "expected": "cancelled", "matcher": "pathAny", "state": "failure", "argument": "ConversionTasks[].State" }, { "expected": "cancelling", "matcher": "pathAny", "state": "failure", "argument": "ConversionTasks[].State" } ] }, "ConversionTaskDeleted": { "delay": 15, "operation": "DescribeConversionTasks", "maxAttempts": 40, "acceptors": [ { "expected": "deleted", "matcher": "pathAll", "state": "success", "argument": "ConversionTasks[].State" } ] }, "CustomerGatewayAvailable": { "delay": 15, "operation": "DescribeCustomerGateways", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "CustomerGateways[].State" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "CustomerGateways[].State" }, { "expected": "deleting", "matcher": "pathAny", "state": "failure", "argument": "CustomerGateways[].State" } ] }, "ExportTaskCancelled": { "delay": 15, "operation": "DescribeExportTasks", "maxAttempts": 40, "acceptors": [ { "expected": "cancelled", "matcher": "pathAll", "state": "success", "argument": "ExportTasks[].State" } ] }, "ExportTaskCompleted": { "delay": 15, "operation": "DescribeExportTasks", "maxAttempts": 40, "acceptors": [ { "expected": "completed", "matcher": "pathAll", "state": "success", "argument": "ExportTasks[].State" } ] }, "ImageExists": { "operation": "DescribeImages", "maxAttempts": 40, "delay": 15, "acceptors": [ { "matcher": "path", "expected": true, "argument": "length(Images[]) > `0`", "state": "success" }, { "matcher": "error", "expected": "InvalidAMIID.NotFound", "state": "retry" } ] }, "ImageAvailable": { "operation": "DescribeImages", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "Images[].State", "expected": "available" }, { "state": "failure", "matcher": "pathAny", "argument": "Images[].State", "expected": "failed" } ] }, "InstanceRunning": { "delay": 15, "operation": "DescribeInstances", "maxAttempts": 40, "acceptors": [ { "expected": "running", "matcher": "pathAll", "state": "success", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "shutting-down", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "terminated", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "stopping", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "matcher": "error", "expected": "InvalidInstanceID.NotFound", "state": "retry" } ] }, "InstanceStatusOk": { "operation": "DescribeInstanceStatus", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "InstanceStatuses[].InstanceStatus.Status", "expected": "ok" }, { "matcher": "error", "expected": "InvalidInstanceID.NotFound", "state": "retry" } ] }, "InstanceStopped": { "delay": 15, "operation": "DescribeInstances", "maxAttempts": 40, "acceptors": [ { "expected": "stopped", "matcher": "pathAll", "state": "success", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "pending", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "terminated", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" } ] }, "InstanceTerminated": { "delay": 15, "operation": "DescribeInstances", "maxAttempts": 40, "acceptors": [ { "expected": "terminated", "matcher": "pathAll", "state": "success", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "pending", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" }, { "expected": "stopping", "matcher": "pathAny", "state": "failure", "argument": "Reservations[].Instances[].State.Name" } ] }, "KeyPairExists": { "operation": "DescribeKeyPairs", "delay": 5, "maxAttempts": 6, "acceptors": [ { "expected": true, "matcher": "pathAll", "state": "success", "argument": "length(KeyPairs[].KeyName) > `0`" }, { "expected": "InvalidKeyPair.NotFound", "matcher": "error", "state": "retry" } ] }, "NatGatewayAvailable": { "operation": "DescribeNatGateways", "delay": 15, "maxAttempts": 40, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "NatGateways[].State", "expected": "available" }, { "state": "failure", "matcher": "pathAny", "argument": "NatGateways[].State", "expected": "failed" }, { "state": "failure", "matcher": "pathAny", "argument": "NatGateways[].State", "expected": "deleting" }, { "state": "failure", "matcher": "pathAny", "argument": "NatGateways[].State", "expected": "deleted" }, { "state": "retry", "matcher": "error", "expected": "NatGatewayNotFound" } ] }, "NetworkInterfaceAvailable": { "operation": "DescribeNetworkInterfaces", "delay": 20, "maxAttempts": 10, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "NetworkInterfaces[].Status" }, { "expected": "InvalidNetworkInterfaceID.NotFound", "matcher": "error", "state": "failure" } ] }, "PasswordDataAvailable": { "operation": "GetPasswordData", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "path", "argument": "length(PasswordData) > `0`", "expected": true } ] }, "SnapshotCompleted": { "delay": 15, "operation": "DescribeSnapshots", "maxAttempts": 40, "acceptors": [ { "expected": "completed", "matcher": "pathAll", "state": "success", "argument": "Snapshots[].State" } ] }, "SpotInstanceRequestFulfilled": { "operation": "DescribeSpotInstanceRequests", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "SpotInstanceRequests[].Status.Code", "expected": "fulfilled" }, { "state": "failure", "matcher": "pathAny", "argument": "SpotInstanceRequests[].Status.Code", "expected": "schedule-expired" }, { "state": "failure", "matcher": "pathAny", "argument": "SpotInstanceRequests[].Status.Code", "expected": "canceled-before-fulfillment" }, { "state": "failure", "matcher": "pathAny", "argument": "SpotInstanceRequests[].Status.Code", "expected": "bad-parameters" }, { "state": "failure", "matcher": "pathAny", "argument": "SpotInstanceRequests[].Status.Code", "expected": "system-error" } ] }, "SubnetAvailable": { "delay": 15, "operation": "DescribeSubnets", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "Subnets[].State" } ] }, "SystemStatusOk": { "operation": "DescribeInstanceStatus", "maxAttempts": 40, "delay": 15, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "InstanceStatuses[].SystemStatus.Status", "expected": "ok" } ] }, "VolumeAvailable": { "delay": 15, "operation": "DescribeVolumes", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "Volumes[].State" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "Volumes[].State" } ] }, "VolumeDeleted": { "delay": 15, "operation": "DescribeVolumes", "maxAttempts": 40, "acceptors": [ { "expected": "deleted", "matcher": "pathAll", "state": "success", "argument": "Volumes[].State" }, { "matcher": "error", "expected": "InvalidVolume.NotFound", "state": "success" } ] }, "VolumeInUse": { "delay": 15, "operation": "DescribeVolumes", "maxAttempts": 40, "acceptors": [ { "expected": "in-use", "matcher": "pathAll", "state": "success", "argument": "Volumes[].State" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "Volumes[].State" } ] }, "VpcAvailable": { "delay": 15, "operation": "DescribeVpcs", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "Vpcs[].State" } ] }, "VpcExists": { "operation": "DescribeVpcs", "delay": 1, "maxAttempts": 5, "acceptors": [ { "matcher": "status", "expected": 200, "state": "success" }, { "matcher": "error", "expected": "InvalidVpcID.NotFound", "state": "retry" } ] }, "VpnConnectionAvailable": { "delay": 15, "operation": "DescribeVpnConnections", "maxAttempts": 40, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "VpnConnections[].State" }, { "expected": "deleting", "matcher": "pathAny", "state": "failure", "argument": "VpnConnections[].State" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "VpnConnections[].State" } ] }, "VpnConnectionDeleted": { "delay": 15, "operation": "DescribeVpnConnections", "maxAttempts": 40, "acceptors": [ { "expected": "deleted", "matcher": "pathAll", "state": "success", "argument": "VpnConnections[].State" }, { "expected": "pending", "matcher": "pathAny", "state": "failure", "argument": "VpnConnections[].State" } ] }, "VpcPeeringConnectionExists": { "delay": 15, "operation": "DescribeVpcPeeringConnections", "maxAttempts": 40, "acceptors": [ { "matcher": "status", "expected": 200, "state": "success" }, { "matcher": "error", "expected": "InvalidVpcPeeringConnectionID.NotFound", "state": "retry" } ] } } } aws-sdk-go-1.4.22/models/apis/ecr/000077500000000000000000000000001300374646400165535ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/ecr/2015-09-21/000077500000000000000000000000001300374646400176105ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/ecr/2015-09-21/api-2.json000066400000000000000000000615401300374646400214210ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-09-21", "endpointPrefix":"ecr", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"Amazon ECR", "serviceFullName":"Amazon EC2 Container Registry", "signatureVersion":"v4", "targetPrefix":"AmazonEC2ContainerRegistry_V20150921" }, "operations":{ "BatchCheckLayerAvailability":{ "name":"BatchCheckLayerAvailability", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BatchCheckLayerAvailabilityRequest"}, "output":{"shape":"BatchCheckLayerAvailabilityResponse"}, "errors":[ {"shape":"RepositoryNotFoundException"}, {"shape":"InvalidParameterException"}, {"shape":"ServerException"} ] }, "BatchDeleteImage":{ "name":"BatchDeleteImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BatchDeleteImageRequest"}, "output":{"shape":"BatchDeleteImageResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"InvalidParameterException"}, {"shape":"RepositoryNotFoundException"} ] }, "BatchGetImage":{ "name":"BatchGetImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BatchGetImageRequest"}, "output":{"shape":"BatchGetImageResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"InvalidParameterException"}, {"shape":"RepositoryNotFoundException"} ] }, "CompleteLayerUpload":{ "name":"CompleteLayerUpload", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CompleteLayerUploadRequest"}, "output":{"shape":"CompleteLayerUploadResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"InvalidParameterException"}, {"shape":"RepositoryNotFoundException"}, {"shape":"UploadNotFoundException"}, {"shape":"InvalidLayerException"}, {"shape":"LayerPartTooSmallException"}, {"shape":"LayerAlreadyExistsException"}, {"shape":"EmptyUploadException"} ] }, "CreateRepository":{ "name":"CreateRepository", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateRepositoryRequest"}, "output":{"shape":"CreateRepositoryResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"InvalidParameterException"}, {"shape":"RepositoryAlreadyExistsException"}, {"shape":"LimitExceededException"} ] }, "DeleteRepository":{ "name":"DeleteRepository", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRepositoryRequest"}, "output":{"shape":"DeleteRepositoryResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"InvalidParameterException"}, {"shape":"RepositoryNotFoundException"}, {"shape":"RepositoryNotEmptyException"} ] }, "DeleteRepositoryPolicy":{ "name":"DeleteRepositoryPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRepositoryPolicyRequest"}, "output":{"shape":"DeleteRepositoryPolicyResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"InvalidParameterException"}, {"shape":"RepositoryNotFoundException"}, {"shape":"RepositoryPolicyNotFoundException"} ] }, "DescribeImages":{ "name":"DescribeImages", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeImagesRequest"}, "output":{"shape":"DescribeImagesResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"InvalidParameterException"}, {"shape":"RepositoryNotFoundException"}, {"shape":"ImageNotFoundException"} ] }, "DescribeRepositories":{ "name":"DescribeRepositories", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRepositoriesRequest"}, "output":{"shape":"DescribeRepositoriesResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"InvalidParameterException"}, {"shape":"RepositoryNotFoundException"} ] }, "GetAuthorizationToken":{ "name":"GetAuthorizationToken", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetAuthorizationTokenRequest"}, "output":{"shape":"GetAuthorizationTokenResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"InvalidParameterException"} ] }, "GetDownloadUrlForLayer":{ "name":"GetDownloadUrlForLayer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetDownloadUrlForLayerRequest"}, "output":{"shape":"GetDownloadUrlForLayerResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"InvalidParameterException"}, {"shape":"LayersNotFoundException"}, {"shape":"LayerInaccessibleException"}, {"shape":"RepositoryNotFoundException"} ] }, "GetRepositoryPolicy":{ "name":"GetRepositoryPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetRepositoryPolicyRequest"}, "output":{"shape":"GetRepositoryPolicyResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"InvalidParameterException"}, {"shape":"RepositoryNotFoundException"}, {"shape":"RepositoryPolicyNotFoundException"} ] }, "InitiateLayerUpload":{ "name":"InitiateLayerUpload", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"InitiateLayerUploadRequest"}, "output":{"shape":"InitiateLayerUploadResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"InvalidParameterException"}, {"shape":"RepositoryNotFoundException"} ] }, "ListImages":{ "name":"ListImages", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListImagesRequest"}, "output":{"shape":"ListImagesResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"InvalidParameterException"}, {"shape":"RepositoryNotFoundException"} ] }, "PutImage":{ "name":"PutImage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutImageRequest"}, "output":{"shape":"PutImageResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"InvalidParameterException"}, {"shape":"RepositoryNotFoundException"}, {"shape":"ImageAlreadyExistsException"}, {"shape":"LayersNotFoundException"}, {"shape":"LimitExceededException"} ] }, "SetRepositoryPolicy":{ "name":"SetRepositoryPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetRepositoryPolicyRequest"}, "output":{"shape":"SetRepositoryPolicyResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"InvalidParameterException"}, {"shape":"RepositoryNotFoundException"} ] }, "UploadLayerPart":{ "name":"UploadLayerPart", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UploadLayerPartRequest"}, "output":{"shape":"UploadLayerPartResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"InvalidParameterException"}, {"shape":"InvalidLayerPartException"}, {"shape":"RepositoryNotFoundException"}, {"shape":"UploadNotFoundException"}, {"shape":"LimitExceededException"} ] } }, "shapes":{ "Arn":{"type":"string"}, "AuthorizationData":{ "type":"structure", "members":{ "authorizationToken":{"shape":"Base64"}, "expiresAt":{"shape":"ExpirationTimestamp"}, "proxyEndpoint":{"shape":"ProxyEndpoint"} } }, "AuthorizationDataList":{ "type":"list", "member":{"shape":"AuthorizationData"} }, "Base64":{ "type":"string", "pattern":"^\\S+$" }, "BatchCheckLayerAvailabilityRequest":{ "type":"structure", "required":[ "repositoryName", "layerDigests" ], "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "layerDigests":{"shape":"BatchedOperationLayerDigestList"} } }, "BatchCheckLayerAvailabilityResponse":{ "type":"structure", "members":{ "layers":{"shape":"LayerList"}, "failures":{"shape":"LayerFailureList"} } }, "BatchDeleteImageRequest":{ "type":"structure", "required":[ "repositoryName", "imageIds" ], "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "imageIds":{"shape":"ImageIdentifierList"} } }, "BatchDeleteImageResponse":{ "type":"structure", "members":{ "imageIds":{"shape":"ImageIdentifierList"}, "failures":{"shape":"ImageFailureList"} } }, "BatchGetImageRequest":{ "type":"structure", "required":[ "repositoryName", "imageIds" ], "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "imageIds":{"shape":"ImageIdentifierList"} } }, "BatchGetImageResponse":{ "type":"structure", "members":{ "images":{"shape":"ImageList"}, "failures":{"shape":"ImageFailureList"} } }, "BatchedOperationLayerDigest":{ "type":"string", "max":1000, "min":0 }, "BatchedOperationLayerDigestList":{ "type":"list", "member":{"shape":"BatchedOperationLayerDigest"}, "max":100, "min":1 }, "CompleteLayerUploadRequest":{ "type":"structure", "required":[ "repositoryName", "uploadId", "layerDigests" ], "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "uploadId":{"shape":"UploadId"}, "layerDigests":{"shape":"LayerDigestList"} } }, "CompleteLayerUploadResponse":{ "type":"structure", "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "uploadId":{"shape":"UploadId"}, "layerDigest":{"shape":"LayerDigest"} } }, "CreateRepositoryRequest":{ "type":"structure", "required":["repositoryName"], "members":{ "repositoryName":{"shape":"RepositoryName"} } }, "CreateRepositoryResponse":{ "type":"structure", "members":{ "repository":{"shape":"Repository"} } }, "CreationTimestamp":{"type":"timestamp"}, "DeleteRepositoryPolicyRequest":{ "type":"structure", "required":["repositoryName"], "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"} } }, "DeleteRepositoryPolicyResponse":{ "type":"structure", "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "policyText":{"shape":"RepositoryPolicyText"} } }, "DeleteRepositoryRequest":{ "type":"structure", "required":["repositoryName"], "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "force":{"shape":"ForceFlag"} } }, "DeleteRepositoryResponse":{ "type":"structure", "members":{ "repository":{"shape":"Repository"} } }, "DescribeImagesFilter":{ "type":"structure", "members":{ "tagStatus":{"shape":"TagStatus"} } }, "DescribeImagesRequest":{ "type":"structure", "required":["repositoryName"], "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "imageIds":{"shape":"ImageIdentifierList"}, "nextToken":{"shape":"NextToken"}, "maxResults":{"shape":"MaxResults"}, "filter":{"shape":"DescribeImagesFilter"} } }, "DescribeImagesResponse":{ "type":"structure", "members":{ "imageDetails":{"shape":"ImageDetailList"}, "nextToken":{"shape":"NextToken"} } }, "DescribeRepositoriesRequest":{ "type":"structure", "members":{ "registryId":{"shape":"RegistryId"}, "repositoryNames":{"shape":"RepositoryNameList"}, "nextToken":{"shape":"NextToken"}, "maxResults":{"shape":"MaxResults"} } }, "DescribeRepositoriesResponse":{ "type":"structure", "members":{ "repositories":{"shape":"RepositoryList"}, "nextToken":{"shape":"NextToken"} } }, "EmptyUploadException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "ExceptionMessage":{"type":"string"}, "ExpirationTimestamp":{"type":"timestamp"}, "ForceFlag":{"type":"boolean"}, "GetAuthorizationTokenRegistryIdList":{ "type":"list", "member":{"shape":"RegistryId"}, "max":10, "min":1 }, "GetAuthorizationTokenRequest":{ "type":"structure", "members":{ "registryIds":{"shape":"GetAuthorizationTokenRegistryIdList"} } }, "GetAuthorizationTokenResponse":{ "type":"structure", "members":{ "authorizationData":{"shape":"AuthorizationDataList"} } }, "GetDownloadUrlForLayerRequest":{ "type":"structure", "required":[ "repositoryName", "layerDigest" ], "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "layerDigest":{"shape":"LayerDigest"} } }, "GetDownloadUrlForLayerResponse":{ "type":"structure", "members":{ "downloadUrl":{"shape":"Url"}, "layerDigest":{"shape":"LayerDigest"} } }, "GetRepositoryPolicyRequest":{ "type":"structure", "required":["repositoryName"], "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"} } }, "GetRepositoryPolicyResponse":{ "type":"structure", "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "policyText":{"shape":"RepositoryPolicyText"} } }, "Image":{ "type":"structure", "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "imageId":{"shape":"ImageIdentifier"}, "imageManifest":{"shape":"ImageManifest"} } }, "ImageAlreadyExistsException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "ImageDetail":{ "type":"structure", "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "imageDigest":{"shape":"ImageDigest"}, "imageTags":{"shape":"ImageTagList"}, "imageSizeInBytes":{"shape":"ImageSizeInBytes"}, "imagePushedAt":{"shape":"PushTimestamp"} } }, "ImageDetailList":{ "type":"list", "member":{"shape":"ImageDetail"} }, "ImageDigest":{"type":"string"}, "ImageFailure":{ "type":"structure", "members":{ "imageId":{"shape":"ImageIdentifier"}, "failureCode":{"shape":"ImageFailureCode"}, "failureReason":{"shape":"ImageFailureReason"} } }, "ImageFailureCode":{ "type":"string", "enum":[ "InvalidImageDigest", "InvalidImageTag", "ImageTagDoesNotMatchDigest", "ImageNotFound", "MissingDigestAndTag" ] }, "ImageFailureList":{ "type":"list", "member":{"shape":"ImageFailure"} }, "ImageFailureReason":{"type":"string"}, "ImageIdentifier":{ "type":"structure", "members":{ "imageDigest":{"shape":"ImageDigest"}, "imageTag":{"shape":"ImageTag"} } }, "ImageIdentifierList":{ "type":"list", "member":{"shape":"ImageIdentifier"}, "max":100, "min":1 }, "ImageList":{ "type":"list", "member":{"shape":"Image"} }, "ImageManifest":{"type":"string"}, "ImageNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "ImageSizeInBytes":{"type":"long"}, "ImageTag":{"type":"string"}, "ImageTagList":{ "type":"list", "member":{"shape":"ImageTag"} }, "InitiateLayerUploadRequest":{ "type":"structure", "required":["repositoryName"], "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"} } }, "InitiateLayerUploadResponse":{ "type":"structure", "members":{ "uploadId":{"shape":"UploadId"}, "partSize":{"shape":"PartSize"} } }, "InvalidLayerException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "InvalidLayerPartException":{ "type":"structure", "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "uploadId":{"shape":"UploadId"}, "lastValidByteReceived":{"shape":"PartSize"}, "message":{"shape":"ExceptionMessage"} }, "exception":true }, "InvalidParameterException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "Layer":{ "type":"structure", "members":{ "layerDigest":{"shape":"LayerDigest"}, "layerAvailability":{"shape":"LayerAvailability"}, "layerSize":{"shape":"LayerSizeInBytes"} } }, "LayerAlreadyExistsException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "LayerAvailability":{ "type":"string", "enum":[ "AVAILABLE", "UNAVAILABLE" ] }, "LayerDigest":{ "type":"string", "pattern":"[a-zA-Z0-9-_+.]+:[a-fA-F0-9]+" }, "LayerDigestList":{ "type":"list", "member":{"shape":"LayerDigest"}, "max":100, "min":1 }, "LayerFailure":{ "type":"structure", "members":{ "layerDigest":{"shape":"BatchedOperationLayerDigest"}, "failureCode":{"shape":"LayerFailureCode"}, "failureReason":{"shape":"LayerFailureReason"} } }, "LayerFailureCode":{ "type":"string", "enum":[ "InvalidLayerDigest", "MissingLayerDigest" ] }, "LayerFailureList":{ "type":"list", "member":{"shape":"LayerFailure"} }, "LayerFailureReason":{"type":"string"}, "LayerInaccessibleException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "LayerList":{ "type":"list", "member":{"shape":"Layer"} }, "LayerPartBlob":{"type":"blob"}, "LayerPartTooSmallException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "LayerSizeInBytes":{"type":"long"}, "LayersNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "LimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "ListImagesFilter":{ "type":"structure", "members":{ "tagStatus":{"shape":"TagStatus"} } }, "ListImagesRequest":{ "type":"structure", "required":["repositoryName"], "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "nextToken":{"shape":"NextToken"}, "maxResults":{"shape":"MaxResults"}, "filter":{"shape":"ListImagesFilter"} } }, "ListImagesResponse":{ "type":"structure", "members":{ "imageIds":{"shape":"ImageIdentifierList"}, "nextToken":{"shape":"NextToken"} } }, "MaxResults":{ "type":"integer", "max":100, "min":1 }, "NextToken":{"type":"string"}, "PartSize":{ "type":"long", "min":0 }, "ProxyEndpoint":{"type":"string"}, "PushTimestamp":{"type":"timestamp"}, "PutImageRequest":{ "type":"structure", "required":[ "repositoryName", "imageManifest" ], "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "imageManifest":{"shape":"ImageManifest"} } }, "PutImageResponse":{ "type":"structure", "members":{ "image":{"shape":"Image"} } }, "RegistryId":{ "type":"string", "pattern":"[0-9]{12}" }, "Repository":{ "type":"structure", "members":{ "repositoryArn":{"shape":"Arn"}, "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "repositoryUri":{"shape":"Url"}, "createdAt":{"shape":"CreationTimestamp"} } }, "RepositoryAlreadyExistsException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "RepositoryList":{ "type":"list", "member":{"shape":"Repository"} }, "RepositoryName":{ "type":"string", "max":256, "min":2, "pattern":"(?:[a-z0-9]+(?:[._-][a-z0-9]+)*/)*[a-z0-9]+(?:[._-][a-z0-9]+)*" }, "RepositoryNameList":{ "type":"list", "member":{"shape":"RepositoryName"}, "max":100, "min":1 }, "RepositoryNotEmptyException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "RepositoryNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "RepositoryPolicyNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "RepositoryPolicyText":{ "type":"string", "max":10240, "min":0 }, "ServerException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true, "fault":true }, "SetRepositoryPolicyRequest":{ "type":"structure", "required":[ "repositoryName", "policyText" ], "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "policyText":{"shape":"RepositoryPolicyText"}, "force":{"shape":"ForceFlag"} } }, "SetRepositoryPolicyResponse":{ "type":"structure", "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "policyText":{"shape":"RepositoryPolicyText"} } }, "TagStatus":{ "type":"string", "enum":[ "TAGGED", "UNTAGGED" ] }, "UploadId":{ "type":"string", "pattern":"[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}" }, "UploadLayerPartRequest":{ "type":"structure", "required":[ "repositoryName", "uploadId", "partFirstByte", "partLastByte", "layerPartBlob" ], "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "uploadId":{"shape":"UploadId"}, "partFirstByte":{"shape":"PartSize"}, "partLastByte":{"shape":"PartSize"}, "layerPartBlob":{"shape":"LayerPartBlob"} } }, "UploadLayerPartResponse":{ "type":"structure", "members":{ "registryId":{"shape":"RegistryId"}, "repositoryName":{"shape":"RepositoryName"}, "uploadId":{"shape":"UploadId"}, "lastByteReceived":{"shape":"PartSize"} } }, "UploadNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "Url":{"type":"string"} } } aws-sdk-go-1.4.22/models/apis/ecr/2015-09-21/docs-2.json000066400000000000000000001163401300374646400215770ustar00rootroot00000000000000{ "version": "2.0", "service": "

        Amazon EC2 Container Registry (Amazon ECR) is a managed AWS Docker registry service. Customers can use the familiar Docker CLI to push, pull, and manage images. Amazon ECR provides a secure, scalable, and reliable registry. Amazon ECR supports private Docker repositories with resource-based permissions using AWS IAM so that specific users or Amazon EC2 instances can access repositories and images. Developers can use the Docker CLI to author and manage images.

        ", "operations": { "BatchCheckLayerAvailability": "

        Check the availability of multiple image layers in a specified registry and repository.

        This operation is used by the Amazon ECR proxy, and it is not intended for general use by customers. Use the docker CLI to pull, tag, and push images.

        ", "BatchDeleteImage": "

        Deletes a list of specified images within a specified repository. Images are specified with either imageTag or imageDigest.

        ", "BatchGetImage": "

        Gets detailed information for specified images within a specified repository. Images are specified with either imageTag or imageDigest.

        ", "CompleteLayerUpload": "

        Inform Amazon ECR that the image layer upload for a specified registry, repository name, and upload ID, has completed. You can optionally provide a sha256 digest of the image layer for data validation purposes.

        This operation is used by the Amazon ECR proxy, and it is not intended for general use by customers. Use the docker CLI to pull, tag, and push images.

        ", "CreateRepository": "

        Creates an image repository.

        ", "DeleteRepository": "

        Deletes an existing image repository. If a repository contains images, you must use the force option to delete it.

        ", "DeleteRepositoryPolicy": "

        Deletes the repository policy from a specified repository.

        ", "DescribeImages": "

        Returns metadata about the images in a repository, including image size and creation date.

        Beginning with Docker version 1.9, the Docker client compresses image layers before pushing them to a V2 Docker registry. The output of the docker images command shows the uncompressed image size, so it may return a larger image size than the image sizes returned by DescribeImages.

        ", "DescribeRepositories": "

        Describes image repositories in a registry.

        ", "GetAuthorizationToken": "

        Retrieves a token that is valid for a specified registry for 12 hours. This command allows you to use the docker CLI to push and pull images with Amazon ECR. If you do not specify a registry, the default registry is assumed.

        The authorizationToken returned for each registry specified is a base64 encoded string that can be decoded and used in a docker login command to authenticate to a registry. The AWS CLI offers an aws ecr get-login command that simplifies the login process.

        ", "GetDownloadUrlForLayer": "

        Retrieves the pre-signed Amazon S3 download URL corresponding to an image layer. You can only get URLs for image layers that are referenced in an image.

        This operation is used by the Amazon ECR proxy, and it is not intended for general use by customers. Use the docker CLI to pull, tag, and push images.

        ", "GetRepositoryPolicy": "

        Retrieves the repository policy for a specified repository.

        ", "InitiateLayerUpload": "

        Notify Amazon ECR that you intend to upload an image layer.

        This operation is used by the Amazon ECR proxy, and it is not intended for general use by customers. Use the docker CLI to pull, tag, and push images.

        ", "ListImages": "

        Lists all the image IDs for a given repository.

        You can filter images based on whether or not they are tagged by setting the tagStatus parameter to TAGGED or UNTAGGED. For example, you can filter your results to return only UNTAGGED images and then pipe that result to a BatchDeleteImage operation to delete them. Or, you can filter your results to return only TAGGED images to list all of the tags in your repository.

        ", "PutImage": "

        Creates or updates the image manifest associated with an image.

        This operation is used by the Amazon ECR proxy, and it is not intended for general use by customers. Use the docker CLI to pull, tag, and push images.

        ", "SetRepositoryPolicy": "

        Applies a repository policy on a specified repository to control access permissions.

        ", "UploadLayerPart": "

        Uploads an image layer part to Amazon ECR.

        This operation is used by the Amazon ECR proxy, and it is not intended for general use by customers. Use the docker CLI to pull, tag, and push images.

        " }, "shapes": { "Arn": { "base": null, "refs": { "Repository$repositoryArn": "

        The Amazon Resource Name (ARN) that identifies the repository. The ARN contains the arn:aws:ecr namespace, followed by the region of the repository, the AWS account ID of the repository owner, the repository namespace, and then the repository name. For example, arn:aws:ecr:region:012345678910:repository/test.

        " } }, "AuthorizationData": { "base": "

        An object representing authorization data for an Amazon ECR registry.

        ", "refs": { "AuthorizationDataList$member": null } }, "AuthorizationDataList": { "base": null, "refs": { "GetAuthorizationTokenResponse$authorizationData": "

        A list of authorization token data objects that correspond to the registryIds values in the request.

        " } }, "Base64": { "base": null, "refs": { "AuthorizationData$authorizationToken": "

        A base64-encoded string that contains authorization data for the specified Amazon ECR registry. When the string is decoded, it is presented in the format user:password for private registry authentication using docker login.

        " } }, "BatchCheckLayerAvailabilityRequest": { "base": null, "refs": { } }, "BatchCheckLayerAvailabilityResponse": { "base": null, "refs": { } }, "BatchDeleteImageRequest": { "base": "

        Deletes specified images within a specified repository. Images are specified with either the imageTag or imageDigest.

        ", "refs": { } }, "BatchDeleteImageResponse": { "base": null, "refs": { } }, "BatchGetImageRequest": { "base": null, "refs": { } }, "BatchGetImageResponse": { "base": null, "refs": { } }, "BatchedOperationLayerDigest": { "base": null, "refs": { "BatchedOperationLayerDigestList$member": null, "LayerFailure$layerDigest": "

        The layer digest associated with the failure.

        " } }, "BatchedOperationLayerDigestList": { "base": null, "refs": { "BatchCheckLayerAvailabilityRequest$layerDigests": "

        The digests of the image layers to check.

        " } }, "CompleteLayerUploadRequest": { "base": null, "refs": { } }, "CompleteLayerUploadResponse": { "base": null, "refs": { } }, "CreateRepositoryRequest": { "base": null, "refs": { } }, "CreateRepositoryResponse": { "base": null, "refs": { } }, "CreationTimestamp": { "base": null, "refs": { "Repository$createdAt": "

        The date and time, in JavaScript date/time format, when the repository was created.

        " } }, "DeleteRepositoryPolicyRequest": { "base": null, "refs": { } }, "DeleteRepositoryPolicyResponse": { "base": null, "refs": { } }, "DeleteRepositoryRequest": { "base": null, "refs": { } }, "DeleteRepositoryResponse": { "base": null, "refs": { } }, "DescribeImagesFilter": { "base": "

        An object representing a filter on a DescribeImages operation.

        ", "refs": { "DescribeImagesRequest$filter": "

        The filter key and value with which to filter your DescribeImages results.

        " } }, "DescribeImagesRequest": { "base": null, "refs": { } }, "DescribeImagesResponse": { "base": null, "refs": { } }, "DescribeRepositoriesRequest": { "base": null, "refs": { } }, "DescribeRepositoriesResponse": { "base": null, "refs": { } }, "EmptyUploadException": { "base": "

        The specified layer upload does not contain any layer parts.

        ", "refs": { } }, "ExceptionMessage": { "base": null, "refs": { "EmptyUploadException$message": "

        The error message associated with the exception.

        ", "ImageAlreadyExistsException$message": "

        The error message associated with the exception.

        ", "ImageNotFoundException$message": null, "InvalidLayerException$message": "

        The error message associated with the exception.

        ", "InvalidLayerPartException$message": "

        The error message associated with the exception.

        ", "InvalidParameterException$message": "

        The error message associated with the exception.

        ", "LayerAlreadyExistsException$message": "

        The error message associated with the exception.

        ", "LayerInaccessibleException$message": "

        The error message associated with the exception.

        ", "LayerPartTooSmallException$message": "

        The error message associated with the exception.

        ", "LayersNotFoundException$message": "

        The error message associated with the exception.

        ", "LimitExceededException$message": "

        The error message associated with the exception.

        ", "RepositoryAlreadyExistsException$message": "

        The error message associated with the exception.

        ", "RepositoryNotEmptyException$message": "

        The error message associated with the exception.

        ", "RepositoryNotFoundException$message": "

        The error message associated with the exception.

        ", "RepositoryPolicyNotFoundException$message": "

        The error message associated with the exception.

        ", "ServerException$message": "

        The error message associated with the exception.

        ", "UploadNotFoundException$message": "

        The error message associated with the exception.

        " } }, "ExpirationTimestamp": { "base": null, "refs": { "AuthorizationData$expiresAt": "

        The Unix time in seconds and milliseconds when the authorization token expires. Authorization tokens are valid for 12 hours.

        " } }, "ForceFlag": { "base": null, "refs": { "DeleteRepositoryRequest$force": "

        Force the deletion of the repository if it contains images.

        ", "SetRepositoryPolicyRequest$force": "

        If the policy you are attempting to set on a repository policy would prevent you from setting another policy in the future, you must force the SetRepositoryPolicy operation. This is intended to prevent accidental repository lock outs.

        " } }, "GetAuthorizationTokenRegistryIdList": { "base": null, "refs": { "GetAuthorizationTokenRequest$registryIds": "

        A list of AWS account IDs that are associated with the registries for which to get authorization tokens. If you do not specify a registry, the default registry is assumed.

        " } }, "GetAuthorizationTokenRequest": { "base": null, "refs": { } }, "GetAuthorizationTokenResponse": { "base": null, "refs": { } }, "GetDownloadUrlForLayerRequest": { "base": null, "refs": { } }, "GetDownloadUrlForLayerResponse": { "base": null, "refs": { } }, "GetRepositoryPolicyRequest": { "base": null, "refs": { } }, "GetRepositoryPolicyResponse": { "base": null, "refs": { } }, "Image": { "base": "

        An object representing an Amazon ECR image.

        ", "refs": { "ImageList$member": null, "PutImageResponse$image": "

        Details of the image uploaded.

        " } }, "ImageAlreadyExistsException": { "base": "

        The specified image has already been pushed, and there are no changes to the manifest or image tag since the last push.

        ", "refs": { } }, "ImageDetail": { "base": "

        An object that describes an image returned by a DescribeImages operation.

        ", "refs": { "ImageDetailList$member": null } }, "ImageDetailList": { "base": null, "refs": { "DescribeImagesResponse$imageDetails": "

        A list of ImageDetail objects that contain data about the image.

        " } }, "ImageDigest": { "base": null, "refs": { "ImageDetail$imageDigest": "

        The sha256 digest of the image manifest.

        ", "ImageIdentifier$imageDigest": "

        The sha256 digest of the image manifest.

        " } }, "ImageFailure": { "base": "

        An object representing an Amazon ECR image failure.

        ", "refs": { "ImageFailureList$member": null } }, "ImageFailureCode": { "base": null, "refs": { "ImageFailure$failureCode": "

        The code associated with the failure.

        " } }, "ImageFailureList": { "base": null, "refs": { "BatchDeleteImageResponse$failures": "

        Any failures associated with the call.

        ", "BatchGetImageResponse$failures": "

        Any failures associated with the call.

        " } }, "ImageFailureReason": { "base": null, "refs": { "ImageFailure$failureReason": "

        The reason for the failure.

        " } }, "ImageIdentifier": { "base": "

        An object with identifying information for an Amazon ECR image.

        ", "refs": { "Image$imageId": "

        An object containing the image tag and image digest associated with an image.

        ", "ImageFailure$imageId": "

        The image ID associated with the failure.

        ", "ImageIdentifierList$member": null } }, "ImageIdentifierList": { "base": null, "refs": { "BatchDeleteImageRequest$imageIds": "

        A list of image ID references that correspond to images to delete. The format of the imageIds reference is imageTag=tag or imageDigest=digest.

        ", "BatchDeleteImageResponse$imageIds": "

        The image IDs of the deleted images.

        ", "BatchGetImageRequest$imageIds": "

        A list of image ID references that correspond to images to describe. The format of the imageIds reference is imageTag=tag or imageDigest=digest.

        ", "DescribeImagesRequest$imageIds": "

        The list of image IDs for the requested repository.

        ", "ListImagesResponse$imageIds": "

        The list of image IDs for the requested repository.

        " } }, "ImageList": { "base": null, "refs": { "BatchGetImageResponse$images": "

        A list of image objects corresponding to the image references in the request.

        " } }, "ImageManifest": { "base": null, "refs": { "Image$imageManifest": "

        The image manifest associated with the image.

        ", "PutImageRequest$imageManifest": "

        The image manifest corresponding to the image to be uploaded.

        " } }, "ImageNotFoundException": { "base": "

        The image requested does not exist in the specified repository.

        ", "refs": { } }, "ImageSizeInBytes": { "base": null, "refs": { "ImageDetail$imageSizeInBytes": "

        The size, in bytes, of the image in the repository.

        Beginning with Docker version 1.9, the Docker client compresses image layers before pushing them to a V2 Docker registry. The output of the docker images command shows the uncompressed image size, so it may return a larger image size than the image sizes returned by DescribeImages.

        " } }, "ImageTag": { "base": null, "refs": { "ImageIdentifier$imageTag": "

        The tag used for the image.

        ", "ImageTagList$member": null } }, "ImageTagList": { "base": null, "refs": { "ImageDetail$imageTags": "

        The list of tags associated with this image.

        " } }, "InitiateLayerUploadRequest": { "base": null, "refs": { } }, "InitiateLayerUploadResponse": { "base": null, "refs": { } }, "InvalidLayerException": { "base": "

        The layer digest calculation performed by Amazon ECR upon receipt of the image layer does not match the digest specified.

        ", "refs": { } }, "InvalidLayerPartException": { "base": "

        The layer part size is not valid, or the first byte specified is not consecutive to the last byte of a previous layer part upload.

        ", "refs": { } }, "InvalidParameterException": { "base": "

        The specified parameter is invalid. Review the available parameters for the API request.

        ", "refs": { } }, "Layer": { "base": "

        An object representing an Amazon ECR image layer.

        ", "refs": { "LayerList$member": null } }, "LayerAlreadyExistsException": { "base": "

        The image layer already exists in the associated repository.

        ", "refs": { } }, "LayerAvailability": { "base": null, "refs": { "Layer$layerAvailability": "

        The availability status of the image layer. Valid values are AVAILABLE and UNAVAILABLE.

        " } }, "LayerDigest": { "base": null, "refs": { "CompleteLayerUploadResponse$layerDigest": "

        The sha256 digest of the image layer.

        ", "GetDownloadUrlForLayerRequest$layerDigest": "

        The digest of the image layer to download.

        ", "GetDownloadUrlForLayerResponse$layerDigest": "

        The digest of the image layer to download.

        ", "Layer$layerDigest": "

        The sha256 digest of the image layer.

        ", "LayerDigestList$member": null } }, "LayerDigestList": { "base": null, "refs": { "CompleteLayerUploadRequest$layerDigests": "

        The sha256 digest of the image layer.

        " } }, "LayerFailure": { "base": "

        An object representing an Amazon ECR image layer failure.

        ", "refs": { "LayerFailureList$member": null } }, "LayerFailureCode": { "base": null, "refs": { "LayerFailure$failureCode": "

        The failure code associated with the failure.

        " } }, "LayerFailureList": { "base": null, "refs": { "BatchCheckLayerAvailabilityResponse$failures": "

        Any failures associated with the call.

        " } }, "LayerFailureReason": { "base": null, "refs": { "LayerFailure$failureReason": "

        The reason for the failure.

        " } }, "LayerInaccessibleException": { "base": "

        The specified layer is not available because it is not associated with an image. Unassociated image layers may be cleaned up at any time.

        ", "refs": { } }, "LayerList": { "base": null, "refs": { "BatchCheckLayerAvailabilityResponse$layers": "

        A list of image layer objects corresponding to the image layer references in the request.

        " } }, "LayerPartBlob": { "base": null, "refs": { "UploadLayerPartRequest$layerPartBlob": "

        The base64-encoded layer part payload.

        " } }, "LayerPartTooSmallException": { "base": "

        Layer parts must be at least 5 MiB in size.

        ", "refs": { } }, "LayerSizeInBytes": { "base": null, "refs": { "Layer$layerSize": "

        The size, in bytes, of the image layer.

        " } }, "LayersNotFoundException": { "base": "

        The specified layers could not be found, or the specified layer is not valid for this repository.

        ", "refs": { } }, "LimitExceededException": { "base": "

        The operation did not succeed because it would have exceeded a service limit for your account. For more information, see Amazon ECR Default Service Limits in the Amazon EC2 Container Registry User Guide.

        ", "refs": { } }, "ListImagesFilter": { "base": "

        An object representing a filter on a ListImages operation.

        ", "refs": { "ListImagesRequest$filter": "

        The filter key and value with which to filter your ListImages results.

        " } }, "ListImagesRequest": { "base": null, "refs": { } }, "ListImagesResponse": { "base": null, "refs": { } }, "MaxResults": { "base": null, "refs": { "DescribeImagesRequest$maxResults": "

        The maximum number of repository results returned by DescribeImages in paginated output. When this parameter is used, DescribeImages only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another DescribeImages request with the returned nextToken value. This value can be between 1 and 100. If this parameter is not used, then DescribeImages returns up to 100 results and a nextToken value, if applicable.

        ", "DescribeRepositoriesRequest$maxResults": "

        The maximum number of repository results returned by DescribeRepositories in paginated output. When this parameter is used, DescribeRepositories only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another DescribeRepositories request with the returned nextToken value. This value can be between 1 and 100. If this parameter is not used, then DescribeRepositories returns up to 100 results and a nextToken value, if applicable.

        ", "ListImagesRequest$maxResults": "

        The maximum number of image results returned by ListImages in paginated output. When this parameter is used, ListImages only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another ListImages request with the returned nextToken value. This value can be between 1 and 100. If this parameter is not used, then ListImages returns up to 100 results and a nextToken value, if applicable.

        " } }, "NextToken": { "base": null, "refs": { "DescribeImagesRequest$nextToken": "

        The nextToken value returned from a previous paginated DescribeImages request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return.

        ", "DescribeImagesResponse$nextToken": "

        The nextToken value to include in a future DescribeImages request. When the results of a DescribeImages request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "DescribeRepositoriesRequest$nextToken": "

        The nextToken value returned from a previous paginated DescribeRepositories request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return.

        This token should be treated as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.

        ", "DescribeRepositoriesResponse$nextToken": "

        The nextToken value to include in a future DescribeRepositories request. When the results of a DescribeRepositories request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "ListImagesRequest$nextToken": "

        The nextToken value returned from a previous paginated ListImages request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return.

        This token should be treated as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.

        ", "ListImagesResponse$nextToken": "

        The nextToken value to include in a future ListImages request. When the results of a ListImages request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        " } }, "PartSize": { "base": null, "refs": { "InitiateLayerUploadResponse$partSize": "

        The size, in bytes, that Amazon ECR expects future layer part uploads to be.

        ", "InvalidLayerPartException$lastValidByteReceived": "

        The last valid byte received from the layer part upload that is associated with the exception.

        ", "UploadLayerPartRequest$partFirstByte": "

        The integer value of the first byte of the layer part.

        ", "UploadLayerPartRequest$partLastByte": "

        The integer value of the last byte of the layer part.

        ", "UploadLayerPartResponse$lastByteReceived": "

        The integer value of the last byte received in the request.

        " } }, "ProxyEndpoint": { "base": null, "refs": { "AuthorizationData$proxyEndpoint": "

        The registry URL to use for this authorization token in a docker login command. The Amazon ECR registry URL format is https://aws_account_id.dkr.ecr.region.amazonaws.com. For example, https://012345678910.dkr.ecr.us-east-1.amazonaws.com..

        " } }, "PushTimestamp": { "base": null, "refs": { "ImageDetail$imagePushedAt": "

        The date and time, expressed in standard JavaScript date format, at which the current image was pushed to the repository.

        " } }, "PutImageRequest": { "base": null, "refs": { } }, "PutImageResponse": { "base": null, "refs": { } }, "RegistryId": { "base": null, "refs": { "BatchCheckLayerAvailabilityRequest$registryId": "

        The AWS account ID associated with the registry that contains the image layers to check. If you do not specify a registry, the default registry is assumed.

        ", "BatchDeleteImageRequest$registryId": "

        The AWS account ID associated with the registry that contains the image to delete. If you do not specify a registry, the default registry is assumed.

        ", "BatchGetImageRequest$registryId": "

        The AWS account ID associated with the registry that contains the images to describe. If you do not specify a registry, the default registry is assumed.

        ", "CompleteLayerUploadRequest$registryId": "

        The AWS account ID associated with the registry to which to upload layers. If you do not specify a registry, the default registry is assumed.

        ", "CompleteLayerUploadResponse$registryId": "

        The registry ID associated with the request.

        ", "DeleteRepositoryPolicyRequest$registryId": "

        The AWS account ID associated with the registry that contains the repository policy to delete. If you do not specify a registry, the default registry is assumed.

        ", "DeleteRepositoryPolicyResponse$registryId": "

        The registry ID associated with the request.

        ", "DeleteRepositoryRequest$registryId": "

        The AWS account ID associated with the registry that contains the repository to delete. If you do not specify a registry, the default registry is assumed.

        ", "DescribeImagesRequest$registryId": "

        The AWS account ID associated with the registry that contains the repository in which to list images. If you do not specify a registry, the default registry is assumed.

        ", "DescribeRepositoriesRequest$registryId": "

        The AWS account ID associated with the registry that contains the repositories to be described. If you do not specify a registry, the default registry is assumed.

        ", "GetAuthorizationTokenRegistryIdList$member": null, "GetDownloadUrlForLayerRequest$registryId": "

        The AWS account ID associated with the registry that contains the image layer to download. If you do not specify a registry, the default registry is assumed.

        ", "GetRepositoryPolicyRequest$registryId": "

        The AWS account ID associated with the registry that contains the repository. If you do not specify a registry, the default registry is assumed.

        ", "GetRepositoryPolicyResponse$registryId": "

        The registry ID associated with the request.

        ", "Image$registryId": "

        The AWS account ID associated with the registry containing the image.

        ", "ImageDetail$registryId": "

        The AWS account ID associated with the registry to which this image belongs.

        ", "InitiateLayerUploadRequest$registryId": "

        The AWS account ID associated with the registry that you intend to upload layers to. If you do not specify a registry, the default registry is assumed.

        ", "InvalidLayerPartException$registryId": "

        The registry ID associated with the exception.

        ", "ListImagesRequest$registryId": "

        The AWS account ID associated with the registry that contains the repository to list images in. If you do not specify a registry, the default registry is assumed.

        ", "PutImageRequest$registryId": "

        The AWS account ID associated with the registry that contains the repository in which to put the image. If you do not specify a registry, the default registry is assumed.

        ", "Repository$registryId": "

        The AWS account ID associated with the registry that contains the repository.

        ", "SetRepositoryPolicyRequest$registryId": "

        The AWS account ID associated with the registry that contains the repository. If you do not specify a registry, the default registry is assumed.

        ", "SetRepositoryPolicyResponse$registryId": "

        The registry ID associated with the request.

        ", "UploadLayerPartRequest$registryId": "

        The AWS account ID associated with the registry that you are uploading layer parts to. If you do not specify a registry, the default registry is assumed.

        ", "UploadLayerPartResponse$registryId": "

        The registry ID associated with the request.

        " } }, "Repository": { "base": "

        An object representing a repository.

        ", "refs": { "CreateRepositoryResponse$repository": "

        The repository that was created.

        ", "DeleteRepositoryResponse$repository": "

        The repository that was deleted.

        ", "RepositoryList$member": null } }, "RepositoryAlreadyExistsException": { "base": "

        The specified repository already exists in the specified registry.

        ", "refs": { } }, "RepositoryList": { "base": null, "refs": { "DescribeRepositoriesResponse$repositories": "

        A list of repository objects corresponding to valid repositories.

        " } }, "RepositoryName": { "base": null, "refs": { "BatchCheckLayerAvailabilityRequest$repositoryName": "

        The name of the repository that is associated with the image layers to check.

        ", "BatchDeleteImageRequest$repositoryName": "

        The repository that contains the image to delete.

        ", "BatchGetImageRequest$repositoryName": "

        The repository that contains the images to describe.

        ", "CompleteLayerUploadRequest$repositoryName": "

        The name of the repository to associate with the image layer.

        ", "CompleteLayerUploadResponse$repositoryName": "

        The repository name associated with the request.

        ", "CreateRepositoryRequest$repositoryName": "

        The name to use for the repository. The repository name may be specified on its own (such as nginx-web-app) or it can be prepended with a namespace to group the repository into a category (such as project-a/nginx-web-app).

        ", "DeleteRepositoryPolicyRequest$repositoryName": "

        The name of the repository that is associated with the repository policy to delete.

        ", "DeleteRepositoryPolicyResponse$repositoryName": "

        The repository name associated with the request.

        ", "DeleteRepositoryRequest$repositoryName": "

        The name of the repository to delete.

        ", "DescribeImagesRequest$repositoryName": "

        A list of repositories to describe. If this parameter is omitted, then all repositories in a registry are described.

        ", "GetDownloadUrlForLayerRequest$repositoryName": "

        The name of the repository that is associated with the image layer to download.

        ", "GetRepositoryPolicyRequest$repositoryName": "

        The name of the repository whose policy you want to retrieve.

        ", "GetRepositoryPolicyResponse$repositoryName": "

        The repository name associated with the request.

        ", "Image$repositoryName": "

        The name of the repository associated with the image.

        ", "ImageDetail$repositoryName": "

        The name of the repository to which this image belongs.

        ", "InitiateLayerUploadRequest$repositoryName": "

        The name of the repository that you intend to upload layers to.

        ", "InvalidLayerPartException$repositoryName": "

        The repository name associated with the exception.

        ", "ListImagesRequest$repositoryName": "

        The repository whose image IDs are to be listed.

        ", "PutImageRequest$repositoryName": "

        The name of the repository in which to put the image.

        ", "Repository$repositoryName": "

        The name of the repository.

        ", "RepositoryNameList$member": null, "SetRepositoryPolicyRequest$repositoryName": "

        The name of the repository to receive the policy.

        ", "SetRepositoryPolicyResponse$repositoryName": "

        The repository name associated with the request.

        ", "UploadLayerPartRequest$repositoryName": "

        The name of the repository that you are uploading layer parts to.

        ", "UploadLayerPartResponse$repositoryName": "

        The repository name associated with the request.

        " } }, "RepositoryNameList": { "base": null, "refs": { "DescribeRepositoriesRequest$repositoryNames": "

        A list of repositories to describe. If this parameter is omitted, then all repositories in a registry are described.

        " } }, "RepositoryNotEmptyException": { "base": "

        The specified repository contains images. To delete a repository that contains images, you must force the deletion with the force parameter.

        ", "refs": { } }, "RepositoryNotFoundException": { "base": "

        The specified repository could not be found. Check the spelling of the specified repository and ensure that you are performing operations on the correct registry.

        ", "refs": { } }, "RepositoryPolicyNotFoundException": { "base": "

        The specified repository and registry combination does not have an associated repository policy.

        ", "refs": { } }, "RepositoryPolicyText": { "base": null, "refs": { "DeleteRepositoryPolicyResponse$policyText": "

        The JSON repository policy that was deleted from the repository.

        ", "GetRepositoryPolicyResponse$policyText": "

        The JSON repository policy text associated with the repository.

        ", "SetRepositoryPolicyRequest$policyText": "

        The JSON repository policy text to apply to the repository.

        ", "SetRepositoryPolicyResponse$policyText": "

        The JSON repository policy text applied to the repository.

        " } }, "ServerException": { "base": "

        These errors are usually caused by a server-side issue.

        ", "refs": { } }, "SetRepositoryPolicyRequest": { "base": null, "refs": { } }, "SetRepositoryPolicyResponse": { "base": null, "refs": { } }, "TagStatus": { "base": null, "refs": { "DescribeImagesFilter$tagStatus": "

        The tag status with which to filter your DescribeImages results. You can filter results based on whether they are TAGGED or UNTAGGED.

        ", "ListImagesFilter$tagStatus": "

        The tag status with which to filter your ListImages results. You can filter results based on whether they are TAGGED or UNTAGGED.

        " } }, "UploadId": { "base": null, "refs": { "CompleteLayerUploadRequest$uploadId": "

        The upload ID from a previous InitiateLayerUpload operation to associate with the image layer.

        ", "CompleteLayerUploadResponse$uploadId": "

        The upload ID associated with the layer.

        ", "InitiateLayerUploadResponse$uploadId": "

        The upload ID for the layer upload. This parameter is passed to further UploadLayerPart and CompleteLayerUpload operations.

        ", "InvalidLayerPartException$uploadId": "

        The upload ID associated with the exception.

        ", "UploadLayerPartRequest$uploadId": "

        The upload ID from a previous InitiateLayerUpload operation to associate with the layer part upload.

        ", "UploadLayerPartResponse$uploadId": "

        The upload ID associated with the request.

        " } }, "UploadLayerPartRequest": { "base": null, "refs": { } }, "UploadLayerPartResponse": { "base": null, "refs": { } }, "UploadNotFoundException": { "base": "

        The upload could not be found, or the specified upload id is not valid for this repository.

        ", "refs": { } }, "Url": { "base": null, "refs": { "GetDownloadUrlForLayerResponse$downloadUrl": "

        The pre-signed Amazon S3 download URL for the requested layer.

        ", "Repository$repositoryUri": "

        The URI for the repository. You can use this URI for Docker push and pull operations.

        " } } } } aws-sdk-go-1.4.22/models/apis/ecr/2015-09-21/examples-1.json000066400000000000000000000160531300374646400224640ustar00rootroot00000000000000{ "version": "1.0", "examples": { "BatchDeleteImage": [ { "input": { "imageIds": [ { "imageTag": "precise" } ], "repositoryName": "ubuntu" }, "output": { "failures": [ ], "imageIds": [ { "imageDigest": "sha256:examplee6d1e504117a17000003d3753086354a38375961f2e665416ef4b1b2f", "imageTag": "precise" } ] }, "comments": { }, "description": "This example deletes images with the tags precise and trusty in a repository called ubuntu in the default registry for an account.", "id": "batchdeleteimages-example-1470860541707", "title": "To delete multiple images" } ], "BatchGetImage": [ { "input": { "imageIds": [ { "imageTag": "precise" } ], "repositoryName": "ubuntu" }, "output": { "failures": [ ], "images": [ { "imageId": { "imageDigest": "sha256:example76bdff6d83a09ba2a818f0d00000063724a9ac3ba5019c56f74ebf42a", "imageTag": "precise" }, "imageManifest": "{\n \"schemaVersion\": 1,\n \"name\": \"ubuntu\",\n \"tag\": \"precise\",\n...", "registryId": "244698725403", "repositoryName": "ubuntu" } ] }, "comments": { "output": { "imageManifest": "In this example, the imageManifest in the output JSON has been truncated." } }, "description": "This example obtains information for an image with a specified image digest ID from the repository named ubuntu in the current account.", "id": "batchgetimage-example-1470862771437", "title": "To obtain multiple images in a single request" } ], "CreateRepository": [ { "input": { "repositoryName": "project-a/nginx-web-app" }, "output": { "repository": { "registryId": "012345678901", "repositoryArn": "arn:aws:ecr:us-west-2:012345678901:repository/project-a/nginx-web-app", "repositoryName": "project-a/nginx-web-app" } }, "comments": { "output": { "imageManifest": "In this example, the imageManifest in the output JSON has been truncated." } }, "description": "This example creates a repository called nginx-web-app inside the project-a namespace in the default registry for an account.", "id": "createrepository-example-1470863688724", "title": "To create a new repository" } ], "DeleteRepository": [ { "input": { "force": true, "repositoryName": "ubuntu" }, "output": { "repository": { "registryId": "012345678901", "repositoryArn": "arn:aws:ecr:us-west-2:012345678901:repository/ubuntu", "repositoryName": "ubuntu" } }, "comments": { "output": { "imageManifest": "In this example, the imageManifest in the output JSON has been truncated." } }, "description": "This example force deletes a repository named ubuntu in the default registry for an account. The force parameter is required if the repository contains images.", "id": "deleterepository-example-1470863805703", "title": "To force delete a repository" } ], "DeleteRepositoryPolicy": [ { "input": { "repositoryName": "ubuntu" }, "output": { "policyText": "{ ... }", "registryId": "012345678901", "repositoryName": "ubuntu" }, "comments": { }, "description": "This example deletes the policy associated with the repository named ubuntu in the current account.", "id": "deleterepositorypolicy-example-1470866943748", "title": "To delete the policy associated with a repository" } ], "DescribeRepositories": [ { "input": { }, "output": { "repositories": [ { "registryId": "012345678910", "repositoryArn": "arn:aws:ecr:us-west-2:012345678910:repository/ubuntu", "repositoryName": "ubuntu" }, { "registryId": "012345678910", "repositoryArn": "arn:aws:ecr:us-west-2:012345678910:repository/test", "repositoryName": "test" } ] }, "comments": { "output": { } }, "description": "The following example obtains a list and description of all repositories in the default registry to which the current user has access.", "id": "describe-repositories-1470856017467", "title": "To describe all repositories in the current account" } ], "GetAuthorizationToken": [ { "input": { }, "output": { "authorizationData": [ { "authorizationToken": "QVdTOkN...", "expiresAt": "1470951892432", "proxyEndpoint": "https://012345678901.dkr.ecr.us-west-2.amazonaws.com" } ] }, "comments": { }, "description": "This example gets an authorization token for your default registry.", "id": "getauthorizationtoken-example-1470867047084", "title": "To obtain an authorization token" } ], "GetRepositoryPolicy": [ { "input": { "repositoryName": "ubuntu" }, "output": { "policyText": "{\n \"Version\" : \"2008-10-17\",\n \"Statement\" : [ {\n \"Sid\" : \"new statement\",\n \"Effect\" : \"Allow\",\n \"Principal\" : {\n \"AWS\" : \"arn:aws:iam::012345678901:role/CodeDeployDemo\"\n },\n\"Action\" : [ \"ecr:GetDownloadUrlForLayer\", \"ecr:BatchGetImage\", \"ecr:BatchCheckLayerAvailability\" ]\n } ]\n}", "registryId": "012345678901", "repositoryName": "ubuntu" }, "comments": { }, "description": "This example obtains the repository policy for the repository named ubuntu.", "id": "getrepositorypolicy-example-1470867669211", "title": "To get the current policy for a repository" } ], "ListImages": [ { "input": { "repositoryName": "ubuntu" }, "output": { "imageIds": [ { "imageDigest": "sha256:764f63476bdff6d83a09ba2a818f0d35757063724a9ac3ba5019c56f74ebf42a", "imageTag": "precise" } ] }, "comments": { }, "description": "This example lists all of the images in the repository named ubuntu in the default registry in the current account. ", "id": "listimages-example-1470868161594", "title": "To list all images in a repository" } ] } } aws-sdk-go-1.4.22/models/apis/ecs/000077500000000000000000000000001300374646400165545ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/ecs/2014-11-13/000077500000000000000000000000001300374646400176025ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/ecs/2014-11-13/api-2.json000066400000000000000000001115231300374646400214100ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2014-11-13", "endpointPrefix":"ecs", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"Amazon ECS", "serviceFullName":"Amazon EC2 Container Service", "signatureVersion":"v4", "targetPrefix":"AmazonEC2ContainerServiceV20141113" }, "operations":{ "CreateCluster":{ "name":"CreateCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateClusterRequest"}, "output":{"shape":"CreateClusterResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"} ] }, "CreateService":{ "name":"CreateService", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateServiceRequest"}, "output":{"shape":"CreateServiceResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"}, {"shape":"ClusterNotFoundException"} ] }, "DeleteCluster":{ "name":"DeleteCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteClusterRequest"}, "output":{"shape":"DeleteClusterResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"}, {"shape":"ClusterNotFoundException"}, {"shape":"ClusterContainsContainerInstancesException"}, {"shape":"ClusterContainsServicesException"} ] }, "DeleteService":{ "name":"DeleteService", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteServiceRequest"}, "output":{"shape":"DeleteServiceResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"}, {"shape":"ClusterNotFoundException"}, {"shape":"ServiceNotFoundException"} ] }, "DeregisterContainerInstance":{ "name":"DeregisterContainerInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeregisterContainerInstanceRequest"}, "output":{"shape":"DeregisterContainerInstanceResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"}, {"shape":"ClusterNotFoundException"} ] }, "DeregisterTaskDefinition":{ "name":"DeregisterTaskDefinition", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeregisterTaskDefinitionRequest"}, "output":{"shape":"DeregisterTaskDefinitionResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"} ] }, "DescribeClusters":{ "name":"DescribeClusters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeClustersRequest"}, "output":{"shape":"DescribeClustersResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"} ] }, "DescribeContainerInstances":{ "name":"DescribeContainerInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeContainerInstancesRequest"}, "output":{"shape":"DescribeContainerInstancesResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"}, {"shape":"ClusterNotFoundException"} ] }, "DescribeServices":{ "name":"DescribeServices", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeServicesRequest"}, "output":{"shape":"DescribeServicesResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"}, {"shape":"ClusterNotFoundException"} ] }, "DescribeTaskDefinition":{ "name":"DescribeTaskDefinition", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTaskDefinitionRequest"}, "output":{"shape":"DescribeTaskDefinitionResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"} ] }, "DescribeTasks":{ "name":"DescribeTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTasksRequest"}, "output":{"shape":"DescribeTasksResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"}, {"shape":"ClusterNotFoundException"} ] }, "DiscoverPollEndpoint":{ "name":"DiscoverPollEndpoint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DiscoverPollEndpointRequest"}, "output":{"shape":"DiscoverPollEndpointResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"} ] }, "ListClusters":{ "name":"ListClusters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListClustersRequest"}, "output":{"shape":"ListClustersResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"} ] }, "ListContainerInstances":{ "name":"ListContainerInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListContainerInstancesRequest"}, "output":{"shape":"ListContainerInstancesResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"}, {"shape":"ClusterNotFoundException"} ] }, "ListServices":{ "name":"ListServices", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListServicesRequest"}, "output":{"shape":"ListServicesResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"}, {"shape":"ClusterNotFoundException"} ] }, "ListTaskDefinitionFamilies":{ "name":"ListTaskDefinitionFamilies", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTaskDefinitionFamiliesRequest"}, "output":{"shape":"ListTaskDefinitionFamiliesResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"} ] }, "ListTaskDefinitions":{ "name":"ListTaskDefinitions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTaskDefinitionsRequest"}, "output":{"shape":"ListTaskDefinitionsResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"} ] }, "ListTasks":{ "name":"ListTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTasksRequest"}, "output":{"shape":"ListTasksResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"}, {"shape":"ClusterNotFoundException"}, {"shape":"ServiceNotFoundException"} ] }, "RegisterContainerInstance":{ "name":"RegisterContainerInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterContainerInstanceRequest"}, "output":{"shape":"RegisterContainerInstanceResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"} ] }, "RegisterTaskDefinition":{ "name":"RegisterTaskDefinition", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterTaskDefinitionRequest"}, "output":{"shape":"RegisterTaskDefinitionResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"} ] }, "RunTask":{ "name":"RunTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RunTaskRequest"}, "output":{"shape":"RunTaskResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"}, {"shape":"ClusterNotFoundException"} ] }, "StartTask":{ "name":"StartTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartTaskRequest"}, "output":{"shape":"StartTaskResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"}, {"shape":"ClusterNotFoundException"} ] }, "StopTask":{ "name":"StopTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopTaskRequest"}, "output":{"shape":"StopTaskResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"}, {"shape":"ClusterNotFoundException"} ] }, "SubmitContainerStateChange":{ "name":"SubmitContainerStateChange", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SubmitContainerStateChangeRequest"}, "output":{"shape":"SubmitContainerStateChangeResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"} ] }, "SubmitTaskStateChange":{ "name":"SubmitTaskStateChange", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SubmitTaskStateChangeRequest"}, "output":{"shape":"SubmitTaskStateChangeResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"} ] }, "UpdateContainerAgent":{ "name":"UpdateContainerAgent", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateContainerAgentRequest"}, "output":{"shape":"UpdateContainerAgentResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"}, {"shape":"ClusterNotFoundException"}, {"shape":"UpdateInProgressException"}, {"shape":"NoUpdateAvailableException"}, {"shape":"MissingVersionException"} ] }, "UpdateService":{ "name":"UpdateService", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateServiceRequest"}, "output":{"shape":"UpdateServiceResponse"}, "errors":[ {"shape":"ServerException"}, {"shape":"ClientException"}, {"shape":"InvalidParameterException"}, {"shape":"ClusterNotFoundException"}, {"shape":"ServiceNotFoundException"}, {"shape":"ServiceNotActiveException"} ] } }, "shapes":{ "AgentUpdateStatus":{ "type":"string", "enum":[ "PENDING", "STAGING", "STAGED", "UPDATING", "UPDATED", "FAILED" ] }, "Attribute":{ "type":"structure", "required":["name"], "members":{ "name":{"shape":"String"}, "value":{"shape":"String"} } }, "Attributes":{ "type":"list", "member":{"shape":"Attribute"} }, "Boolean":{"type":"boolean"}, "BoxedBoolean":{ "type":"boolean", "box":true }, "BoxedInteger":{ "type":"integer", "box":true }, "ClientException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "Cluster":{ "type":"structure", "members":{ "clusterArn":{"shape":"String"}, "clusterName":{"shape":"String"}, "status":{"shape":"String"}, "registeredContainerInstancesCount":{"shape":"Integer"}, "runningTasksCount":{"shape":"Integer"}, "pendingTasksCount":{"shape":"Integer"}, "activeServicesCount":{"shape":"Integer"} } }, "ClusterContainsContainerInstancesException":{ "type":"structure", "members":{ }, "exception":true }, "ClusterContainsServicesException":{ "type":"structure", "members":{ }, "exception":true }, "ClusterNotFoundException":{ "type":"structure", "members":{ }, "exception":true }, "Clusters":{ "type":"list", "member":{"shape":"Cluster"} }, "Container":{ "type":"structure", "members":{ "containerArn":{"shape":"String"}, "taskArn":{"shape":"String"}, "name":{"shape":"String"}, "lastStatus":{"shape":"String"}, "exitCode":{"shape":"BoxedInteger"}, "reason":{"shape":"String"}, "networkBindings":{"shape":"NetworkBindings"} } }, "ContainerDefinition":{ "type":"structure", "members":{ "name":{"shape":"String"}, "image":{"shape":"String"}, "cpu":{"shape":"Integer"}, "memory":{"shape":"BoxedInteger"}, "memoryReservation":{"shape":"BoxedInteger"}, "links":{"shape":"StringList"}, "portMappings":{"shape":"PortMappingList"}, "essential":{"shape":"BoxedBoolean"}, "entryPoint":{"shape":"StringList"}, "command":{"shape":"StringList"}, "environment":{"shape":"EnvironmentVariables"}, "mountPoints":{"shape":"MountPointList"}, "volumesFrom":{"shape":"VolumeFromList"}, "hostname":{"shape":"String"}, "user":{"shape":"String"}, "workingDirectory":{"shape":"String"}, "disableNetworking":{"shape":"BoxedBoolean"}, "privileged":{"shape":"BoxedBoolean"}, "readonlyRootFilesystem":{"shape":"BoxedBoolean"}, "dnsServers":{"shape":"StringList"}, "dnsSearchDomains":{"shape":"StringList"}, "extraHosts":{"shape":"HostEntryList"}, "dockerSecurityOptions":{"shape":"StringList"}, "dockerLabels":{"shape":"DockerLabelsMap"}, "ulimits":{"shape":"UlimitList"}, "logConfiguration":{"shape":"LogConfiguration"} } }, "ContainerDefinitions":{ "type":"list", "member":{"shape":"ContainerDefinition"} }, "ContainerInstance":{ "type":"structure", "members":{ "containerInstanceArn":{"shape":"String"}, "ec2InstanceId":{"shape":"String"}, "versionInfo":{"shape":"VersionInfo"}, "remainingResources":{"shape":"Resources"}, "registeredResources":{"shape":"Resources"}, "status":{"shape":"String"}, "agentConnected":{"shape":"Boolean"}, "runningTasksCount":{"shape":"Integer"}, "pendingTasksCount":{"shape":"Integer"}, "agentUpdateStatus":{"shape":"AgentUpdateStatus"}, "attributes":{"shape":"Attributes"} } }, "ContainerInstances":{ "type":"list", "member":{"shape":"ContainerInstance"} }, "ContainerOverride":{ "type":"structure", "members":{ "name":{"shape":"String"}, "command":{"shape":"StringList"}, "environment":{"shape":"EnvironmentVariables"} } }, "ContainerOverrides":{ "type":"list", "member":{"shape":"ContainerOverride"} }, "Containers":{ "type":"list", "member":{"shape":"Container"} }, "CreateClusterRequest":{ "type":"structure", "members":{ "clusterName":{"shape":"String"} } }, "CreateClusterResponse":{ "type":"structure", "members":{ "cluster":{"shape":"Cluster"} } }, "CreateServiceRequest":{ "type":"structure", "required":[ "serviceName", "taskDefinition", "desiredCount" ], "members":{ "cluster":{"shape":"String"}, "serviceName":{"shape":"String"}, "taskDefinition":{"shape":"String"}, "loadBalancers":{"shape":"LoadBalancers"}, "desiredCount":{"shape":"BoxedInteger"}, "clientToken":{"shape":"String"}, "role":{"shape":"String"}, "deploymentConfiguration":{"shape":"DeploymentConfiguration"} } }, "CreateServiceResponse":{ "type":"structure", "members":{ "service":{"shape":"Service"} } }, "DeleteClusterRequest":{ "type":"structure", "required":["cluster"], "members":{ "cluster":{"shape":"String"} } }, "DeleteClusterResponse":{ "type":"structure", "members":{ "cluster":{"shape":"Cluster"} } }, "DeleteServiceRequest":{ "type":"structure", "required":["service"], "members":{ "cluster":{"shape":"String"}, "service":{"shape":"String"} } }, "DeleteServiceResponse":{ "type":"structure", "members":{ "service":{"shape":"Service"} } }, "Deployment":{ "type":"structure", "members":{ "id":{"shape":"String"}, "status":{"shape":"String"}, "taskDefinition":{"shape":"String"}, "desiredCount":{"shape":"Integer"}, "pendingCount":{"shape":"Integer"}, "runningCount":{"shape":"Integer"}, "createdAt":{"shape":"Timestamp"}, "updatedAt":{"shape":"Timestamp"} } }, "DeploymentConfiguration":{ "type":"structure", "members":{ "maximumPercent":{"shape":"BoxedInteger"}, "minimumHealthyPercent":{"shape":"BoxedInteger"} } }, "Deployments":{ "type":"list", "member":{"shape":"Deployment"} }, "DeregisterContainerInstanceRequest":{ "type":"structure", "required":["containerInstance"], "members":{ "cluster":{"shape":"String"}, "containerInstance":{"shape":"String"}, "force":{"shape":"BoxedBoolean"} } }, "DeregisterContainerInstanceResponse":{ "type":"structure", "members":{ "containerInstance":{"shape":"ContainerInstance"} } }, "DeregisterTaskDefinitionRequest":{ "type":"structure", "required":["taskDefinition"], "members":{ "taskDefinition":{"shape":"String"} } }, "DeregisterTaskDefinitionResponse":{ "type":"structure", "members":{ "taskDefinition":{"shape":"TaskDefinition"} } }, "DescribeClustersRequest":{ "type":"structure", "members":{ "clusters":{"shape":"StringList"} } }, "DescribeClustersResponse":{ "type":"structure", "members":{ "clusters":{"shape":"Clusters"}, "failures":{"shape":"Failures"} } }, "DescribeContainerInstancesRequest":{ "type":"structure", "required":["containerInstances"], "members":{ "cluster":{"shape":"String"}, "containerInstances":{"shape":"StringList"} } }, "DescribeContainerInstancesResponse":{ "type":"structure", "members":{ "containerInstances":{"shape":"ContainerInstances"}, "failures":{"shape":"Failures"} } }, "DescribeServicesRequest":{ "type":"structure", "required":["services"], "members":{ "cluster":{"shape":"String"}, "services":{"shape":"StringList"} } }, "DescribeServicesResponse":{ "type":"structure", "members":{ "services":{"shape":"Services"}, "failures":{"shape":"Failures"} } }, "DescribeTaskDefinitionRequest":{ "type":"structure", "required":["taskDefinition"], "members":{ "taskDefinition":{"shape":"String"} } }, "DescribeTaskDefinitionResponse":{ "type":"structure", "members":{ "taskDefinition":{"shape":"TaskDefinition"} } }, "DescribeTasksRequest":{ "type":"structure", "required":["tasks"], "members":{ "cluster":{"shape":"String"}, "tasks":{"shape":"StringList"} } }, "DescribeTasksResponse":{ "type":"structure", "members":{ "tasks":{"shape":"Tasks"}, "failures":{"shape":"Failures"} } }, "DesiredStatus":{ "type":"string", "enum":[ "RUNNING", "PENDING", "STOPPED" ] }, "DiscoverPollEndpointRequest":{ "type":"structure", "members":{ "containerInstance":{"shape":"String"}, "cluster":{"shape":"String"} } }, "DiscoverPollEndpointResponse":{ "type":"structure", "members":{ "endpoint":{"shape":"String"}, "telemetryEndpoint":{"shape":"String"} } }, "DockerLabelsMap":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"String"} }, "Double":{"type":"double"}, "EnvironmentVariables":{ "type":"list", "member":{"shape":"KeyValuePair"} }, "Failure":{ "type":"structure", "members":{ "arn":{"shape":"String"}, "reason":{"shape":"String"} } }, "Failures":{ "type":"list", "member":{"shape":"Failure"} }, "HostEntry":{ "type":"structure", "required":[ "hostname", "ipAddress" ], "members":{ "hostname":{"shape":"String"}, "ipAddress":{"shape":"String"} } }, "HostEntryList":{ "type":"list", "member":{"shape":"HostEntry"} }, "HostVolumeProperties":{ "type":"structure", "members":{ "sourcePath":{"shape":"String"} } }, "Integer":{"type":"integer"}, "InvalidParameterException":{ "type":"structure", "members":{ }, "exception":true }, "KeyValuePair":{ "type":"structure", "members":{ "name":{"shape":"String"}, "value":{"shape":"String"} } }, "ListClustersRequest":{ "type":"structure", "members":{ "nextToken":{"shape":"String"}, "maxResults":{"shape":"BoxedInteger"} } }, "ListClustersResponse":{ "type":"structure", "members":{ "clusterArns":{"shape":"StringList"}, "nextToken":{"shape":"String"} } }, "ListContainerInstancesRequest":{ "type":"structure", "members":{ "cluster":{"shape":"String"}, "nextToken":{"shape":"String"}, "maxResults":{"shape":"BoxedInteger"} } }, "ListContainerInstancesResponse":{ "type":"structure", "members":{ "containerInstanceArns":{"shape":"StringList"}, "nextToken":{"shape":"String"} } }, "ListServicesRequest":{ "type":"structure", "members":{ "cluster":{"shape":"String"}, "nextToken":{"shape":"String"}, "maxResults":{"shape":"BoxedInteger"} } }, "ListServicesResponse":{ "type":"structure", "members":{ "serviceArns":{"shape":"StringList"}, "nextToken":{"shape":"String"} } }, "ListTaskDefinitionFamiliesRequest":{ "type":"structure", "members":{ "familyPrefix":{"shape":"String"}, "status":{"shape":"TaskDefinitionFamilyStatus"}, "nextToken":{"shape":"String"}, "maxResults":{"shape":"BoxedInteger"} } }, "ListTaskDefinitionFamiliesResponse":{ "type":"structure", "members":{ "families":{"shape":"StringList"}, "nextToken":{"shape":"String"} } }, "ListTaskDefinitionsRequest":{ "type":"structure", "members":{ "familyPrefix":{"shape":"String"}, "status":{"shape":"TaskDefinitionStatus"}, "sort":{"shape":"SortOrder"}, "nextToken":{"shape":"String"}, "maxResults":{"shape":"BoxedInteger"} } }, "ListTaskDefinitionsResponse":{ "type":"structure", "members":{ "taskDefinitionArns":{"shape":"StringList"}, "nextToken":{"shape":"String"} } }, "ListTasksRequest":{ "type":"structure", "members":{ "cluster":{"shape":"String"}, "containerInstance":{"shape":"String"}, "family":{"shape":"String"}, "nextToken":{"shape":"String"}, "maxResults":{"shape":"BoxedInteger"}, "startedBy":{"shape":"String"}, "serviceName":{"shape":"String"}, "desiredStatus":{"shape":"DesiredStatus"} } }, "ListTasksResponse":{ "type":"structure", "members":{ "taskArns":{"shape":"StringList"}, "nextToken":{"shape":"String"} } }, "LoadBalancer":{ "type":"structure", "members":{ "targetGroupArn":{"shape":"String"}, "loadBalancerName":{"shape":"String"}, "containerName":{"shape":"String"}, "containerPort":{"shape":"BoxedInteger"} } }, "LoadBalancers":{ "type":"list", "member":{"shape":"LoadBalancer"} }, "LogConfiguration":{ "type":"structure", "required":["logDriver"], "members":{ "logDriver":{"shape":"LogDriver"}, "options":{"shape":"LogConfigurationOptionsMap"} } }, "LogConfigurationOptionsMap":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"String"} }, "LogDriver":{ "type":"string", "enum":[ "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk" ] }, "Long":{"type":"long"}, "MissingVersionException":{ "type":"structure", "members":{ }, "exception":true }, "MountPoint":{ "type":"structure", "members":{ "sourceVolume":{"shape":"String"}, "containerPath":{"shape":"String"}, "readOnly":{"shape":"BoxedBoolean"} } }, "MountPointList":{ "type":"list", "member":{"shape":"MountPoint"} }, "NetworkBinding":{ "type":"structure", "members":{ "bindIP":{"shape":"String"}, "containerPort":{"shape":"BoxedInteger"}, "hostPort":{"shape":"BoxedInteger"}, "protocol":{"shape":"TransportProtocol"} } }, "NetworkBindings":{ "type":"list", "member":{"shape":"NetworkBinding"} }, "NetworkMode":{ "type":"string", "enum":[ "bridge", "host", "none" ] }, "NoUpdateAvailableException":{ "type":"structure", "members":{ }, "exception":true }, "PortMapping":{ "type":"structure", "members":{ "containerPort":{"shape":"BoxedInteger"}, "hostPort":{"shape":"BoxedInteger"}, "protocol":{"shape":"TransportProtocol"} } }, "PortMappingList":{ "type":"list", "member":{"shape":"PortMapping"} }, "RegisterContainerInstanceRequest":{ "type":"structure", "members":{ "cluster":{"shape":"String"}, "instanceIdentityDocument":{"shape":"String"}, "instanceIdentityDocumentSignature":{"shape":"String"}, "totalResources":{"shape":"Resources"}, "versionInfo":{"shape":"VersionInfo"}, "containerInstanceArn":{"shape":"String"}, "attributes":{"shape":"Attributes"} } }, "RegisterContainerInstanceResponse":{ "type":"structure", "members":{ "containerInstance":{"shape":"ContainerInstance"} } }, "RegisterTaskDefinitionRequest":{ "type":"structure", "required":[ "family", "containerDefinitions" ], "members":{ "family":{"shape":"String"}, "taskRoleArn":{"shape":"String"}, "networkMode":{"shape":"NetworkMode"}, "containerDefinitions":{"shape":"ContainerDefinitions"}, "volumes":{"shape":"VolumeList"} } }, "RegisterTaskDefinitionResponse":{ "type":"structure", "members":{ "taskDefinition":{"shape":"TaskDefinition"} } }, "RequiresAttributes":{ "type":"list", "member":{"shape":"Attribute"} }, "Resource":{ "type":"structure", "members":{ "name":{"shape":"String"}, "type":{"shape":"String"}, "doubleValue":{"shape":"Double"}, "longValue":{"shape":"Long"}, "integerValue":{"shape":"Integer"}, "stringSetValue":{"shape":"StringList"} } }, "Resources":{ "type":"list", "member":{"shape":"Resource"} }, "RunTaskRequest":{ "type":"structure", "required":["taskDefinition"], "members":{ "cluster":{"shape":"String"}, "taskDefinition":{"shape":"String"}, "overrides":{"shape":"TaskOverride"}, "count":{"shape":"BoxedInteger"}, "startedBy":{"shape":"String"} } }, "RunTaskResponse":{ "type":"structure", "members":{ "tasks":{"shape":"Tasks"}, "failures":{"shape":"Failures"} } }, "ServerException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true, "fault":true }, "Service":{ "type":"structure", "members":{ "serviceArn":{"shape":"String"}, "serviceName":{"shape":"String"}, "clusterArn":{"shape":"String"}, "loadBalancers":{"shape":"LoadBalancers"}, "status":{"shape":"String"}, "desiredCount":{"shape":"Integer"}, "runningCount":{"shape":"Integer"}, "pendingCount":{"shape":"Integer"}, "taskDefinition":{"shape":"String"}, "deploymentConfiguration":{"shape":"DeploymentConfiguration"}, "deployments":{"shape":"Deployments"}, "roleArn":{"shape":"String"}, "events":{"shape":"ServiceEvents"}, "createdAt":{"shape":"Timestamp"} } }, "ServiceEvent":{ "type":"structure", "members":{ "id":{"shape":"String"}, "createdAt":{"shape":"Timestamp"}, "message":{"shape":"String"} } }, "ServiceEvents":{ "type":"list", "member":{"shape":"ServiceEvent"} }, "ServiceNotActiveException":{ "type":"structure", "members":{ }, "exception":true }, "ServiceNotFoundException":{ "type":"structure", "members":{ }, "exception":true }, "Services":{ "type":"list", "member":{"shape":"Service"} }, "SortOrder":{ "type":"string", "enum":[ "ASC", "DESC" ] }, "StartTaskRequest":{ "type":"structure", "required":[ "taskDefinition", "containerInstances" ], "members":{ "cluster":{"shape":"String"}, "taskDefinition":{"shape":"String"}, "overrides":{"shape":"TaskOverride"}, "containerInstances":{"shape":"StringList"}, "startedBy":{"shape":"String"} } }, "StartTaskResponse":{ "type":"structure", "members":{ "tasks":{"shape":"Tasks"}, "failures":{"shape":"Failures"} } }, "StopTaskRequest":{ "type":"structure", "required":["task"], "members":{ "cluster":{"shape":"String"}, "task":{"shape":"String"}, "reason":{"shape":"String"} } }, "StopTaskResponse":{ "type":"structure", "members":{ "task":{"shape":"Task"} } }, "String":{"type":"string"}, "StringList":{ "type":"list", "member":{"shape":"String"} }, "SubmitContainerStateChangeRequest":{ "type":"structure", "members":{ "cluster":{"shape":"String"}, "task":{"shape":"String"}, "containerName":{"shape":"String"}, "status":{"shape":"String"}, "exitCode":{"shape":"BoxedInteger"}, "reason":{"shape":"String"}, "networkBindings":{"shape":"NetworkBindings"} } }, "SubmitContainerStateChangeResponse":{ "type":"structure", "members":{ "acknowledgment":{"shape":"String"} } }, "SubmitTaskStateChangeRequest":{ "type":"structure", "members":{ "cluster":{"shape":"String"}, "task":{"shape":"String"}, "status":{"shape":"String"}, "reason":{"shape":"String"} } }, "SubmitTaskStateChangeResponse":{ "type":"structure", "members":{ "acknowledgment":{"shape":"String"} } }, "Task":{ "type":"structure", "members":{ "taskArn":{"shape":"String"}, "clusterArn":{"shape":"String"}, "taskDefinitionArn":{"shape":"String"}, "containerInstanceArn":{"shape":"String"}, "overrides":{"shape":"TaskOverride"}, "lastStatus":{"shape":"String"}, "desiredStatus":{"shape":"String"}, "containers":{"shape":"Containers"}, "startedBy":{"shape":"String"}, "stoppedReason":{"shape":"String"}, "createdAt":{"shape":"Timestamp"}, "startedAt":{"shape":"Timestamp"}, "stoppedAt":{"shape":"Timestamp"} } }, "TaskDefinition":{ "type":"structure", "members":{ "taskDefinitionArn":{"shape":"String"}, "containerDefinitions":{"shape":"ContainerDefinitions"}, "family":{"shape":"String"}, "taskRoleArn":{"shape":"String"}, "networkMode":{"shape":"NetworkMode"}, "revision":{"shape":"Integer"}, "volumes":{"shape":"VolumeList"}, "status":{"shape":"TaskDefinitionStatus"}, "requiresAttributes":{"shape":"RequiresAttributes"} } }, "TaskDefinitionFamilyStatus":{ "type":"string", "enum":[ "ACTIVE", "INACTIVE", "ALL" ] }, "TaskDefinitionStatus":{ "type":"string", "enum":[ "ACTIVE", "INACTIVE" ] }, "TaskOverride":{ "type":"structure", "members":{ "containerOverrides":{"shape":"ContainerOverrides"}, "taskRoleArn":{"shape":"String"} } }, "Tasks":{ "type":"list", "member":{"shape":"Task"} }, "Timestamp":{"type":"timestamp"}, "TransportProtocol":{ "type":"string", "enum":[ "tcp", "udp" ] }, "Ulimit":{ "type":"structure", "required":[ "name", "softLimit", "hardLimit" ], "members":{ "name":{"shape":"UlimitName"}, "softLimit":{"shape":"Integer"}, "hardLimit":{"shape":"Integer"} } }, "UlimitList":{ "type":"list", "member":{"shape":"Ulimit"} }, "UlimitName":{ "type":"string", "enum":[ "core", "cpu", "data", "fsize", "locks", "memlock", "msgqueue", "nice", "nofile", "nproc", "rss", "rtprio", "rttime", "sigpending", "stack" ] }, "UpdateContainerAgentRequest":{ "type":"structure", "required":["containerInstance"], "members":{ "cluster":{"shape":"String"}, "containerInstance":{"shape":"String"} } }, "UpdateContainerAgentResponse":{ "type":"structure", "members":{ "containerInstance":{"shape":"ContainerInstance"} } }, "UpdateInProgressException":{ "type":"structure", "members":{ }, "exception":true }, "UpdateServiceRequest":{ "type":"structure", "required":["service"], "members":{ "cluster":{"shape":"String"}, "service":{"shape":"String"}, "desiredCount":{"shape":"BoxedInteger"}, "taskDefinition":{"shape":"String"}, "deploymentConfiguration":{"shape":"DeploymentConfiguration"} } }, "UpdateServiceResponse":{ "type":"structure", "members":{ "service":{"shape":"Service"} } }, "VersionInfo":{ "type":"structure", "members":{ "agentVersion":{"shape":"String"}, "agentHash":{"shape":"String"}, "dockerVersion":{"shape":"String"} } }, "Volume":{ "type":"structure", "members":{ "name":{"shape":"String"}, "host":{"shape":"HostVolumeProperties"} } }, "VolumeFrom":{ "type":"structure", "members":{ "sourceContainer":{"shape":"String"}, "readOnly":{"shape":"BoxedBoolean"} } }, "VolumeFromList":{ "type":"list", "member":{"shape":"VolumeFrom"} }, "VolumeList":{ "type":"list", "member":{"shape":"Volume"} } } } aws-sdk-go-1.4.22/models/apis/ecs/2014-11-13/docs-2.json000066400000000000000000003545571300374646400216070ustar00rootroot00000000000000{ "version": "2.0", "service": "

        Amazon EC2 Container Service (Amazon ECS) is a highly scalable, fast, container management service that makes it easy to run, stop, and manage Docker containers on a cluster of EC2 instances. Amazon ECS lets you launch and stop container-enabled applications with simple API calls, allows you to get the state of your cluster from a centralized service, and gives you access to many familiar Amazon EC2 features like security groups, Amazon EBS volumes, and IAM roles.

        You can use Amazon ECS to schedule the placement of containers across your cluster based on your resource needs, isolation policies, and availability requirements. Amazon EC2 Container Service eliminates the need for you to operate your own cluster management and configuration management systems or worry about scaling your management infrastructure.

        ", "operations": { "CreateCluster": "

        Creates a new Amazon ECS cluster. By default, your account receives a default cluster when you launch your first container instance. However, you can create your own cluster with a unique name with the CreateCluster action.

        ", "CreateService": "

        Runs and maintains a desired number of tasks from a specified task definition. If the number of tasks running in a service drops below desiredCount, Amazon ECS spawns another copy of the task in the specified cluster. To update an existing service, see UpdateService.

        In addition to maintaining the desired count of tasks in your service, you can optionally run your service behind a load balancer. The load balancer distributes traffic across the tasks that are associated with the service. For more information, see Service Load Balancing in the Amazon EC2 Container Service Developer Guide.

        You can optionally specify a deployment configuration for your service. During a deployment (which is triggered by changing the task definition or the desired count of a service with an UpdateService operation), the service scheduler uses the minimumHealthyPercent and maximumPercent parameters to determine the deployment strategy.

        The minimumHealthyPercent represents a lower limit on the number of your service's tasks that must remain in the RUNNING state during a deployment, as a percentage of the desiredCount (rounded up to the nearest integer). This parameter enables you to deploy without using additional cluster capacity. For example, if your service has a desiredCount of four tasks and a minimumHealthyPercent of 50%, the scheduler may stop two existing tasks to free up cluster capacity before starting two new tasks. Tasks for services that do not use a load balancer are considered healthy if they are in the RUNNING state; tasks for services that do use a load balancer are considered healthy if they are in the RUNNING state and the container instance it is hosted on is reported as healthy by the load balancer. The default value for minimumHealthyPercent is 50% in the console and 100% for the AWS CLI, the AWS SDKs, and the APIs.

        The maximumPercent parameter represents an upper limit on the number of your service's tasks that are allowed in the RUNNING or PENDING state during a deployment, as a percentage of the desiredCount (rounded down to the nearest integer). This parameter enables you to define the deployment batch size. For example, if your service has a desiredCount of four tasks and a maximumPercent value of 200%, the scheduler may start four new tasks before stopping the four older tasks (provided that the cluster resources required to do this are available). The default value for maximumPercent is 200%.

        When the service scheduler launches new tasks, it attempts to balance them across the Availability Zones in your cluster with the following logic:

        • Determine which of the container instances in your cluster can support your service's task definition (for example, they have the required CPU, memory, ports, and container instance attributes).

        • Sort the valid container instances by the fewest number of running tasks for this service in the same Availability Zone as the instance. For example, if zone A has one running service task and zones B and C each have zero, valid container instances in either zone B or C are considered optimal for placement.

        • Place the new service task on a valid container instance in an optimal Availability Zone (based on the previous steps), favoring container instances with the fewest number of running tasks for this service.

        ", "DeleteCluster": "

        Deletes the specified cluster. You must deregister all container instances from this cluster before you may delete it. You can list the container instances in a cluster with ListContainerInstances and deregister them with DeregisterContainerInstance.

        ", "DeleteService": "

        Deletes a specified service within a cluster. You can delete a service if you have no running tasks in it and the desired task count is zero. If the service is actively maintaining tasks, you cannot delete it, and you must update the service to a desired task count of zero. For more information, see UpdateService.

        When you delete a service, if there are still running tasks that require cleanup, the service status moves from ACTIVE to DRAINING, and the service is no longer visible in the console or in ListServices API operations. After the tasks have stopped, then the service status moves from DRAINING to INACTIVE. Services in the DRAINING or INACTIVE status can still be viewed with DescribeServices API operations; however, in the future, INACTIVE services may be cleaned up and purged from Amazon ECS record keeping, and DescribeServices API operations on those services will return a ServiceNotFoundException error.

        ", "DeregisterContainerInstance": "

        Deregisters an Amazon ECS container instance from the specified cluster. This instance is no longer available to run tasks.

        If you intend to use the container instance for some other purpose after deregistration, you should stop all of the tasks running on the container instance before deregistration to avoid any orphaned tasks from consuming resources.

        Deregistering a container instance removes the instance from a cluster, but it does not terminate the EC2 instance; if you are finished using the instance, be sure to terminate it in the Amazon EC2 console to stop billing.

        If you terminate a running container instance, Amazon ECS automatically deregisters the instance from your cluster (stopped container instances or instances with disconnected agents are not automatically deregistered when terminated).

        ", "DeregisterTaskDefinition": "

        Deregisters the specified task definition by family and revision. Upon deregistration, the task definition is marked as INACTIVE. Existing tasks and services that reference an INACTIVE task definition continue to run without disruption. Existing services that reference an INACTIVE task definition can still scale up or down by modifying the service's desired count.

        You cannot use an INACTIVE task definition to run new tasks or create new services, and you cannot update an existing service to reference an INACTIVE task definition (although there may be up to a 10 minute window following deregistration where these restrictions have not yet taken effect).

        ", "DescribeClusters": "

        Describes one or more of your clusters.

        ", "DescribeContainerInstances": "

        Describes Amazon EC2 Container Service container instances. Returns metadata about registered and remaining resources on each container instance requested.

        ", "DescribeServices": "

        Describes the specified services running in your cluster.

        ", "DescribeTaskDefinition": "

        Describes a task definition. You can specify a family and revision to find information about a specific task definition, or you can simply specify the family to find the latest ACTIVE revision in that family.

        You can only describe INACTIVE task definitions while an active task or service references them.

        ", "DescribeTasks": "

        Describes a specified task or tasks.

        ", "DiscoverPollEndpoint": "

        This action is only used by the Amazon EC2 Container Service agent, and it is not intended for use outside of the agent.

        Returns an endpoint for the Amazon EC2 Container Service agent to poll for updates.

        ", "ListClusters": "

        Returns a list of existing clusters.

        ", "ListContainerInstances": "

        Returns a list of container instances in a specified cluster.

        ", "ListServices": "

        Lists the services that are running in a specified cluster.

        ", "ListTaskDefinitionFamilies": "

        Returns a list of task definition families that are registered to your account (which may include task definition families that no longer have any ACTIVE task definition revisions).

        You can filter out task definition families that do not contain any ACTIVE task definition revisions by setting the status parameter to ACTIVE. You can also filter the results with the familyPrefix parameter.

        ", "ListTaskDefinitions": "

        Returns a list of task definitions that are registered to your account. You can filter the results by family name with the familyPrefix parameter or by status with the status parameter.

        ", "ListTasks": "

        Returns a list of tasks for a specified cluster. You can filter the results by family name, by a particular container instance, or by the desired status of the task with the family, containerInstance, and desiredStatus parameters.

        Recently-stopped tasks might appear in the returned results. Currently, stopped tasks appear in the returned results for at least one hour.

        ", "RegisterContainerInstance": "

        This action is only used by the Amazon EC2 Container Service agent, and it is not intended for use outside of the agent.

        Registers an EC2 instance into the specified cluster. This instance becomes available to place containers on.

        ", "RegisterTaskDefinition": "

        Registers a new task definition from the supplied family and containerDefinitions. Optionally, you can add data volumes to your containers with the volumes parameter. For more information about task definition parameters and defaults, see Amazon ECS Task Definitions in the Amazon EC2 Container Service Developer Guide.

        You can specify an IAM role for your task with the taskRoleArn parameter. When you specify an IAM role for a task, its containers can then use the latest versions of the AWS CLI or SDKs to make API requests to the AWS services that are specified in the IAM policy associated with the role. For more information, see IAM Roles for Tasks in the Amazon EC2 Container Service Developer Guide.

        You can specify a Docker networking mode for the containers in your task definition with the networkMode parameter. The available network modes correspond to those described in Network settings in the Docker run reference.

        ", "RunTask": "

        Start a task using random placement and the default Amazon ECS scheduler. To use your own scheduler or place a task on a specific container instance, use StartTask instead.

        The count parameter is limited to 10 tasks per call.

        ", "StartTask": "

        Starts a new task from the specified task definition on the specified container instance or instances. To use the default Amazon ECS scheduler to place your task, use RunTask instead.

        The list of container instances to start tasks on is limited to 10.

        ", "StopTask": "

        Stops a running task.

        When StopTask is called on a task, the equivalent of docker stop is issued to the containers running in the task. This results in a SIGTERM and a 30-second timeout, after which SIGKILL is sent and the containers are forcibly stopped. If the container handles the SIGTERM gracefully and exits within 30 seconds from receiving it, no SIGKILL is sent.

        ", "SubmitContainerStateChange": "

        This action is only used by the Amazon EC2 Container Service agent, and it is not intended for use outside of the agent.

        Sent to acknowledge that a container changed states.

        ", "SubmitTaskStateChange": "

        This action is only used by the Amazon EC2 Container Service agent, and it is not intended for use outside of the agent.

        Sent to acknowledge that a task changed states.

        ", "UpdateContainerAgent": "

        Updates the Amazon ECS container agent on a specified container instance. Updating the Amazon ECS container agent does not interrupt running tasks or services on the container instance. The process for updating the agent differs depending on whether your container instance was launched with the Amazon ECS-optimized AMI or another operating system.

        UpdateContainerAgent requires the Amazon ECS-optimized AMI or Amazon Linux with the ecs-init service installed and running. For help updating the Amazon ECS container agent on other operating systems, see Manually Updating the Amazon ECS Container Agent in the Amazon EC2 Container Service Developer Guide.

        ", "UpdateService": "

        Modifies the desired count, deployment configuration, or task definition used in a service.

        You can add to or subtract from the number of instantiations of a task definition in a service by specifying the cluster that the service is running in and a new desiredCount parameter.

        You can use UpdateService to modify your task definition and deploy a new version of your service.

        You can also update the deployment configuration of a service. When a deployment is triggered by updating the task definition of a service, the service scheduler uses the deployment configuration parameters, minimumHealthyPercent and maximumPercent, to determine the deployment strategy.

        If the minimumHealthyPercent is below 100%, the scheduler can ignore the desiredCount temporarily during a deployment. For example, if your service has a desiredCount of four tasks, a minimumHealthyPercent of 50% allows the scheduler to stop two existing tasks before starting two new tasks. Tasks for services that do not use a load balancer are considered healthy if they are in the RUNNING state; tasks for services that do use a load balancer are considered healthy if they are in the RUNNING state and the container instance it is hosted on is reported as healthy by the load balancer.

        The maximumPercent parameter represents an upper limit on the number of running tasks during a deployment, which enables you to define the deployment batch size. For example, if your service has a desiredCount of four tasks, a maximumPercent value of 200% starts four new tasks before stopping the four older tasks (provided that the cluster resources required to do this are available).

        When UpdateService stops a task during a deployment, the equivalent of docker stop is issued to the containers running in the task. This results in a SIGTERM and a 30-second timeout, after which SIGKILL is sent and the containers are forcibly stopped. If the container handles the SIGTERM gracefully and exits within 30 seconds from receiving it, no SIGKILL is sent.

        When the service scheduler launches new tasks, it attempts to balance them across the Availability Zones in your cluster with the following logic:

        • Determine which of the container instances in your cluster can support your service's task definition (for example, they have the required CPU, memory, ports, and container instance attributes).

        • Sort the valid container instances by the fewest number of running tasks for this service in the same Availability Zone as the instance. For example, if zone A has one running service task and zones B and C each have zero, valid container instances in either zone B or C are considered optimal for placement.

        • Place the new service task on a valid container instance in an optimal Availability Zone (based on the previous steps), favoring container instances with the fewest number of running tasks for this service.

        " }, "shapes": { "AgentUpdateStatus": { "base": null, "refs": { "ContainerInstance$agentUpdateStatus": "

        The status of the most recent agent update. If an update has never been requested, this value is NULL.

        " } }, "Attribute": { "base": "

        The attributes applicable to a container instance when it is registered.

        ", "refs": { "Attributes$member": null, "RequiresAttributes$member": null } }, "Attributes": { "base": null, "refs": { "ContainerInstance$attributes": "

        The attributes set for the container instance by the Amazon ECS container agent at instance registration.

        ", "RegisterContainerInstanceRequest$attributes": "

        The container instance attributes that this container instance supports.

        " } }, "Boolean": { "base": null, "refs": { "ContainerInstance$agentConnected": "

        This parameter returns true if the agent is actually connected to Amazon ECS. Registered instances with an agent that may be unhealthy or stopped return false, and instances without a connected agent cannot accept placement requests.

        " } }, "BoxedBoolean": { "base": null, "refs": { "ContainerDefinition$essential": "

        If the essential parameter of a container is marked as true, and that container fails or stops for any reason, all other containers that are part of the task are stopped. If the essential parameter of a container is marked as false, then its failure does not affect the rest of the containers in a task. If this parameter is omitted, a container is assumed to be essential.

        All tasks must have at least one essential container. If you have an application that is composed of multiple containers, you should group containers that are used for a common purpose into components, and separate the different components into multiple task definitions. For more information, see Application Architecture in the Amazon EC2 Container Service Developer Guide.

        ", "ContainerDefinition$disableNetworking": "

        When this parameter is true, networking is disabled within the container. This parameter maps to NetworkDisabled in the Create a container section of the Docker Remote API.

        ", "ContainerDefinition$privileged": "

        When this parameter is true, the container is given elevated privileges on the host container instance (similar to the root user). This parameter maps to Privileged in the Create a container section of the Docker Remote API and the --privileged option to docker run.

        ", "ContainerDefinition$readonlyRootFilesystem": "

        When this parameter is true, the container is given read-only access to its root file system. This parameter maps to ReadonlyRootfs in the Create a container section of the Docker Remote API and the --read-only option to docker run.

        ", "DeregisterContainerInstanceRequest$force": "

        Forces the deregistration of the container instance. If you have tasks running on the container instance when you deregister it with the force option, these tasks remain running until you terminate the instance or the tasks stop through some other means, but they are orphaned (no longer monitored or accounted for by Amazon ECS). If an orphaned task on your container instance is part of an Amazon ECS service, then the service scheduler starts another copy of that task, on a different container instance if possible.

        Any containers in orphaned service tasks that are registered with a Classic load balancer or an Application load balancer target group are deregistered, and they will begin connection draining according to the settings on the load balancer or target group.

        ", "MountPoint$readOnly": "

        If this value is true, the container has read-only access to the volume. If this value is false, then the container can write to the volume. The default value is false.

        ", "VolumeFrom$readOnly": "

        If this value is true, the container has read-only access to the volume. If this value is false, then the container can write to the volume. The default value is false.

        " } }, "BoxedInteger": { "base": null, "refs": { "Container$exitCode": "

        The exit code returned from the container.

        ", "ContainerDefinition$memory": "

        The hard limit (in MiB) of memory to present to the container. If your container attempts to exceed the memory specified here, the container is killed. This parameter maps to Memory in the Create a container section of the Docker Remote API and the --memory option to docker run.

        You must specify a non-zero integer for one or both of memory or memoryReservation in container definitions. If you specify both, memory must be greater than memoryReservation. If you specify memoryReservation, then that value is subtracted from the available memory resources for the container instance on which the container is placed; otherwise, the value of memory is used.

        The Docker daemon reserves a minimum of 4 MiB of memory for a container, so you should not specify fewer than 4 MiB of memory for your containers.

        ", "ContainerDefinition$memoryReservation": "

        The soft limit (in MiB) of memory to reserve for the container. When system memory is under heavy contention, Docker attempts to keep the container memory to this soft limit; however, your container can consume more memory when it needs to, up to either the hard limit specified with the memory parameter (if applicable), or all of the available memory on the container instance, whichever comes first. This parameter maps to MemoryReservation in the Create a container section of the Docker Remote API and the --memory-reservation option to docker run.

        You must specify a non-zero integer for one or both of memory or memoryReservation in container definitions. If you specify both, memory must be greater than memoryReservation. If you specify memoryReservation, then that value is subtracted from the available memory resources for the container instance on which the container is placed; otherwise, the value of memory is used.

        For example, if your container normally uses 128 MiB of memory, but occasionally bursts to 256 MiB of memory for short periods of time, you can set a memoryReservation of 128 MiB, and a memory hard limit of 300 MiB. This configuration would allow the container to only reserve 128 MiB of memory from the remaining resources on the container instance, but also allow the container to consume more memory resources when needed.

        ", "CreateServiceRequest$desiredCount": "

        The number of instantiations of the specified task definition to place and keep running on your cluster.

        ", "DeploymentConfiguration$maximumPercent": "

        The upper limit (as a percentage of the service's desiredCount) of the number of tasks that are allowed in the RUNNING or PENDING state in a service during a deployment. The maximum number of tasks during a deployment is the desiredCount multiplied by the maximumPercent/100, rounded down to the nearest integer value.

        ", "DeploymentConfiguration$minimumHealthyPercent": "

        The lower limit (as a percentage of the service's desiredCount) of the number of running tasks that must remain in the RUNNING state in a service during a deployment. The minimum healthy tasks during a deployment is the desiredCount multiplied by the minimumHealthyPercent/100, rounded up to the nearest integer value.

        ", "ListClustersRequest$maxResults": "

        The maximum number of cluster results returned by ListClusters in paginated output. When this parameter is used, ListClusters only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another ListClusters request with the returned nextToken value. This value can be between 1 and 100. If this parameter is not used, then ListClusters returns up to 100 results and a nextToken value if applicable.

        ", "ListContainerInstancesRequest$maxResults": "

        The maximum number of container instance results returned by ListContainerInstances in paginated output. When this parameter is used, ListContainerInstances only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another ListContainerInstances request with the returned nextToken value. This value can be between 1 and 100. If this parameter is not used, then ListContainerInstances returns up to 100 results and a nextToken value if applicable.

        ", "ListServicesRequest$maxResults": "

        The maximum number of container instance results returned by ListServices in paginated output. When this parameter is used, ListServices only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another ListServices request with the returned nextToken value. This value can be between 1 and 10. If this parameter is not used, then ListServices returns up to 10 results and a nextToken value if applicable.

        ", "ListTaskDefinitionFamiliesRequest$maxResults": "

        The maximum number of task definition family results returned by ListTaskDefinitionFamilies in paginated output. When this parameter is used, ListTaskDefinitions only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another ListTaskDefinitionFamilies request with the returned nextToken value. This value can be between 1 and 100. If this parameter is not used, then ListTaskDefinitionFamilies returns up to 100 results and a nextToken value if applicable.

        ", "ListTaskDefinitionsRequest$maxResults": "

        The maximum number of task definition results returned by ListTaskDefinitions in paginated output. When this parameter is used, ListTaskDefinitions only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another ListTaskDefinitions request with the returned nextToken value. This value can be between 1 and 100. If this parameter is not used, then ListTaskDefinitions returns up to 100 results and a nextToken value if applicable.

        ", "ListTasksRequest$maxResults": "

        The maximum number of task results returned by ListTasks in paginated output. When this parameter is used, ListTasks only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another ListTasks request with the returned nextToken value. This value can be between 1 and 100. If this parameter is not used, then ListTasks returns up to 100 results and a nextToken value if applicable.

        ", "LoadBalancer$containerPort": "

        The port on the container to associate with the load balancer. This port must correspond to a containerPort in the service's task definition. Your container instances must allow ingress traffic on the hostPort of the port mapping.

        ", "NetworkBinding$containerPort": "

        The port number on the container that is be used with the network binding.

        ", "NetworkBinding$hostPort": "

        The port number on the host that is used with the network binding.

        ", "PortMapping$containerPort": "

        The port number on the container that is bound to the user-specified or automatically assigned host port. If you specify a container port and not a host port, your container automatically receives a host port in the ephemeral port range (for more information, see hostPort). Port mappings that are automatically assigned in this way do not count toward the 100 reserved ports limit of a container instance.

        ", "PortMapping$hostPort": "

        The port number on the container instance to reserve for your container. You can specify a non-reserved host port for your container port mapping, or you can omit the hostPort (or set it to 0) while specifying a containerPort and your container automatically receives a port in the ephemeral port range for your container instance operating system and Docker version.

        The default ephemeral port range is 49153 to 65535, and this range is used for Docker versions prior to 1.6.0. For Docker version 1.6.0 and later, the Docker daemon tries to read the ephemeral port range from /proc/sys/net/ipv4/ip_local_port_range; if this kernel parameter is unavailable, the default ephemeral port range is used. You should not attempt to specify a host port in the ephemeral port range, because these are reserved for automatic assignment. In general, ports below 32768 are outside of the ephemeral port range.

        The default reserved ports are 22 for SSH, the Docker ports 2375 and 2376, and the Amazon ECS container agent ports 51678 and 51679. Any host port that was previously specified in a running task is also reserved while the task is running (after a task stops, the host port is released).The current reserved ports are displayed in the remainingResources of DescribeContainerInstances output, and a container instance may have up to 100 reserved ports at a time, including the default reserved ports (automatically assigned ports do not count toward the 100 reserved ports limit).

        ", "RunTaskRequest$count": "

        The number of instantiations of the specified task to place on your cluster.

        The count parameter is limited to 10 tasks per call.

        ", "SubmitContainerStateChangeRequest$exitCode": "

        The exit code returned for the state change request.

        ", "UpdateServiceRequest$desiredCount": "

        The number of instantiations of the task to place and keep running in your service.

        " } }, "ClientException": { "base": "

        These errors are usually caused by a client action, such as using an action or resource on behalf of a user that doesn't have permission to use the action or resource, or specifying an identifier that is not valid.

        ", "refs": { } }, "Cluster": { "base": "

        A regional grouping of one or more container instances on which you can run task requests. Each account receives a default cluster the first time you use the Amazon ECS service, but you may also create other clusters. Clusters may contain more than one instance type simultaneously.

        ", "refs": { "Clusters$member": null, "CreateClusterResponse$cluster": "

        The full description of your new cluster.

        ", "DeleteClusterResponse$cluster": "

        The full description of the deleted cluster.

        " } }, "ClusterContainsContainerInstancesException": { "base": "

        You cannot delete a cluster that has registered container instances. You must first deregister the container instances before you can delete the cluster. For more information, see DeregisterContainerInstance.

        ", "refs": { } }, "ClusterContainsServicesException": { "base": "

        You cannot delete a cluster that contains services. You must first update the service to reduce its desired task count to 0 and then delete the service. For more information, see UpdateService and DeleteService.

        ", "refs": { } }, "ClusterNotFoundException": { "base": "

        The specified cluster could not be found. You can view your available clusters with ListClusters. Amazon ECS clusters are region-specific.

        ", "refs": { } }, "Clusters": { "base": null, "refs": { "DescribeClustersResponse$clusters": "

        The list of clusters.

        " } }, "Container": { "base": "

        A Docker container that is part of a task.

        ", "refs": { "Containers$member": null } }, "ContainerDefinition": { "base": "

        Container definitions are used in task definitions to describe the different containers that are launched as part of a task.

        ", "refs": { "ContainerDefinitions$member": null } }, "ContainerDefinitions": { "base": null, "refs": { "RegisterTaskDefinitionRequest$containerDefinitions": "

        A list of container definitions in JSON format that describe the different containers that make up your task.

        ", "TaskDefinition$containerDefinitions": "

        A list of container definitions in JSON format that describe the different containers that make up your task. For more information about container definition parameters and defaults, see Amazon ECS Task Definitions in the Amazon EC2 Container Service Developer Guide.

        " } }, "ContainerInstance": { "base": "

        An EC2 instance that is running the Amazon ECS agent and has been registered with a cluster.

        ", "refs": { "ContainerInstances$member": null, "DeregisterContainerInstanceResponse$containerInstance": null, "RegisterContainerInstanceResponse$containerInstance": null, "UpdateContainerAgentResponse$containerInstance": null } }, "ContainerInstances": { "base": null, "refs": { "DescribeContainerInstancesResponse$containerInstances": "

        The list of container instances.

        " } }, "ContainerOverride": { "base": "

        The overrides that should be sent to a container.

        ", "refs": { "ContainerOverrides$member": null } }, "ContainerOverrides": { "base": null, "refs": { "TaskOverride$containerOverrides": "

        One or more container overrides sent to a task.

        " } }, "Containers": { "base": null, "refs": { "Task$containers": "

        The containers associated with the task.

        " } }, "CreateClusterRequest": { "base": null, "refs": { } }, "CreateClusterResponse": { "base": null, "refs": { } }, "CreateServiceRequest": { "base": null, "refs": { } }, "CreateServiceResponse": { "base": null, "refs": { } }, "DeleteClusterRequest": { "base": null, "refs": { } }, "DeleteClusterResponse": { "base": null, "refs": { } }, "DeleteServiceRequest": { "base": null, "refs": { } }, "DeleteServiceResponse": { "base": null, "refs": { } }, "Deployment": { "base": "

        The details of an Amazon ECS service deployment.

        ", "refs": { "Deployments$member": null } }, "DeploymentConfiguration": { "base": "

        Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks.

        ", "refs": { "CreateServiceRequest$deploymentConfiguration": "

        Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks.

        ", "Service$deploymentConfiguration": "

        Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks.

        ", "UpdateServiceRequest$deploymentConfiguration": "

        Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks.

        " } }, "Deployments": { "base": null, "refs": { "Service$deployments": "

        The current state of deployments for the service.

        " } }, "DeregisterContainerInstanceRequest": { "base": null, "refs": { } }, "DeregisterContainerInstanceResponse": { "base": null, "refs": { } }, "DeregisterTaskDefinitionRequest": { "base": null, "refs": { } }, "DeregisterTaskDefinitionResponse": { "base": null, "refs": { } }, "DescribeClustersRequest": { "base": null, "refs": { } }, "DescribeClustersResponse": { "base": null, "refs": { } }, "DescribeContainerInstancesRequest": { "base": null, "refs": { } }, "DescribeContainerInstancesResponse": { "base": null, "refs": { } }, "DescribeServicesRequest": { "base": null, "refs": { } }, "DescribeServicesResponse": { "base": null, "refs": { } }, "DescribeTaskDefinitionRequest": { "base": null, "refs": { } }, "DescribeTaskDefinitionResponse": { "base": null, "refs": { } }, "DescribeTasksRequest": { "base": null, "refs": { } }, "DescribeTasksResponse": { "base": null, "refs": { } }, "DesiredStatus": { "base": null, "refs": { "ListTasksRequest$desiredStatus": "

        The task desired status with which to filter the ListTasks results. Specifying a desiredStatus of STOPPED limits the results to tasks that ECS has set the desired status to STOPPED, which can be useful for debugging tasks that are not starting properly or have died or finished. The default status filter is RUNNING, which shows tasks that ECS has set the desired status to RUNNING.

        Although you can filter results based on a desired status of PENDING, this will not return any results because ECS never sets the desired status of a task to that value (only a task's lastStatus may have a value of PENDING).

        " } }, "DiscoverPollEndpointRequest": { "base": null, "refs": { } }, "DiscoverPollEndpointResponse": { "base": null, "refs": { } }, "DockerLabelsMap": { "base": null, "refs": { "ContainerDefinition$dockerLabels": "

        A key/value map of labels to add to the container. This parameter maps to Labels in the Create a container section of the Docker Remote API and the --label option to docker run. This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log into your container instance and run the following command: sudo docker version | grep \"Server API version\"

        " } }, "Double": { "base": null, "refs": { "Resource$doubleValue": "

        When the doubleValue type is set, the value of the resource must be a double precision floating-point type.

        " } }, "EnvironmentVariables": { "base": null, "refs": { "ContainerDefinition$environment": "

        The environment variables to pass to a container. This parameter maps to Env in the Create a container section of the Docker Remote API and the --env option to docker run.

        We do not recommend using plain text environment variables for sensitive information, such as credential data.

        ", "ContainerOverride$environment": "

        The environment variables to send to the container. You can add new environment variables, which are added to the container at launch, or you can override the existing environment variables from the Docker image or the task definition.

        " } }, "Failure": { "base": "

        A failed resource.

        ", "refs": { "Failures$member": null } }, "Failures": { "base": null, "refs": { "DescribeClustersResponse$failures": "

        Any failures associated with the call.

        ", "DescribeContainerInstancesResponse$failures": "

        Any failures associated with the call.

        ", "DescribeServicesResponse$failures": "

        Any failures associated with the call.

        ", "DescribeTasksResponse$failures": "

        Any failures associated with the call.

        ", "RunTaskResponse$failures": "

        Any failures associated with the call.

        ", "StartTaskResponse$failures": "

        Any failures associated with the call.

        " } }, "HostEntry": { "base": "

        Hostnames and IP address entries that are added to the /etc/hosts file of a container via the extraHosts parameter of its ContainerDefinition.

        ", "refs": { "HostEntryList$member": null } }, "HostEntryList": { "base": null, "refs": { "ContainerDefinition$extraHosts": "

        A list of hostnames and IP address mappings to append to the /etc/hosts file on the container. This parameter maps to ExtraHosts in the Create a container section of the Docker Remote API and the --add-host option to docker run.

        " } }, "HostVolumeProperties": { "base": "

        Details on a container instance host volume.

        ", "refs": { "Volume$host": "

        The contents of the host parameter determine whether your data volume persists on the host container instance and where it is stored. If the host parameter is empty, then the Docker daemon assigns a host path for your data volume, but the data is not guaranteed to persist after the containers associated with it stop running.

        " } }, "Integer": { "base": null, "refs": { "Cluster$registeredContainerInstancesCount": "

        The number of container instances registered into the cluster.

        ", "Cluster$runningTasksCount": "

        The number of tasks in the cluster that are in the RUNNING state.

        ", "Cluster$pendingTasksCount": "

        The number of tasks in the cluster that are in the PENDING state.

        ", "Cluster$activeServicesCount": "

        The number of services that are running on the cluster in an ACTIVE state. You can view these services with ListServices.

        ", "ContainerDefinition$cpu": "

        The number of cpu units reserved for the container. A container instance has 1,024 cpu units for every CPU core. This parameter specifies the minimum amount of CPU to reserve for a container, and containers share unallocated CPU units with other containers on the instance with the same ratio as their allocated amount. This parameter maps to CpuShares in the Create a container section of the Docker Remote API and the --cpu-shares option to docker run.

        You can determine the number of CPU units that are available per EC2 instance type by multiplying the vCPUs listed for that instance type on the Amazon EC2 Instances detail page by 1,024.

        For example, if you run a single-container task on a single-core instance type with 512 CPU units specified for that container, and that is the only task running on the container instance, that container could use the full 1,024 CPU unit share at any given time. However, if you launched another copy of the same task on that container instance, each task would be guaranteed a minimum of 512 CPU units when needed, and each container could float to higher CPU usage if the other container was not using it, but if both tasks were 100% active all of the time, they would be limited to 512 CPU units.

        The Docker daemon on the container instance uses the CPU value to calculate the relative CPU share ratios for running containers. For more information, see CPU share constraint in the Docker documentation. The minimum valid CPU share value that the Linux kernel allows is 2; however, the CPU parameter is not required, and you can use CPU values below 2 in your container definitions. For CPU values below 2 (including null), the behavior varies based on your Amazon ECS container agent version:

        • Agent versions less than or equal to 1.1.0: Null and zero CPU values are passed to Docker as 0, which Docker then converts to 1,024 CPU shares. CPU values of 1 are passed to Docker as 1, which the Linux kernel converts to 2 CPU shares.

        • Agent versions greater than or equal to 1.2.0: Null, zero, and CPU values of 1 are passed to Docker as 2.

        ", "ContainerInstance$runningTasksCount": "

        The number of tasks on the container instance that are in the RUNNING status.

        ", "ContainerInstance$pendingTasksCount": "

        The number of tasks on the container instance that are in the PENDING status.

        ", "Deployment$desiredCount": "

        The most recent desired count of tasks that was specified for the service to deploy or maintain.

        ", "Deployment$pendingCount": "

        The number of tasks in the deployment that are in the PENDING status.

        ", "Deployment$runningCount": "

        The number of tasks in the deployment that are in the RUNNING status.

        ", "Resource$integerValue": "

        When the integerValue type is set, the value of the resource must be an integer.

        ", "Service$desiredCount": "

        The desired number of instantiations of the task definition to keep running on the service. This value is specified when the service is created with CreateService, and it can be modified with UpdateService.

        ", "Service$runningCount": "

        The number of tasks in the cluster that are in the RUNNING state.

        ", "Service$pendingCount": "

        The number of tasks in the cluster that are in the PENDING state.

        ", "TaskDefinition$revision": "

        The revision of the task in a particular family. The revision is a version number of a task definition in a family. When you register a task definition for the first time, the revision is 1; each time you register a new revision of a task definition in the same family, the revision value always increases by one (even if you have deregistered previous revisions in this family).

        ", "Ulimit$softLimit": "

        The soft limit for the ulimit type.

        ", "Ulimit$hardLimit": "

        The hard limit for the ulimit type.

        " } }, "InvalidParameterException": { "base": "

        The specified parameter is invalid. Review the available parameters for the API request.

        ", "refs": { } }, "KeyValuePair": { "base": "

        A key and value pair object.

        ", "refs": { "EnvironmentVariables$member": null } }, "ListClustersRequest": { "base": null, "refs": { } }, "ListClustersResponse": { "base": null, "refs": { } }, "ListContainerInstancesRequest": { "base": null, "refs": { } }, "ListContainerInstancesResponse": { "base": null, "refs": { } }, "ListServicesRequest": { "base": null, "refs": { } }, "ListServicesResponse": { "base": null, "refs": { } }, "ListTaskDefinitionFamiliesRequest": { "base": null, "refs": { } }, "ListTaskDefinitionFamiliesResponse": { "base": null, "refs": { } }, "ListTaskDefinitionsRequest": { "base": null, "refs": { } }, "ListTaskDefinitionsResponse": { "base": null, "refs": { } }, "ListTasksRequest": { "base": null, "refs": { } }, "ListTasksResponse": { "base": null, "refs": { } }, "LoadBalancer": { "base": "

        Details on a load balancer that is used with a service.

        ", "refs": { "LoadBalancers$member": null } }, "LoadBalancers": { "base": null, "refs": { "CreateServiceRequest$loadBalancers": "

        A load balancer object representing the load balancer to use with your service. Currently, you are limited to one load balancer per service. After you create a service, the load balancer name, container name, and container port specified in the service definition are immutable.

        For Elastic Load Balancing Classic load balancers, this object must contain the load balancer name, the container name (as it appears in a container definition), and the container port to access from the load balancer. When a task from this service is placed on a container instance, the container instance is registered with the load balancer specified here.

        For Elastic Load Balancing Application load balancers, this object must contain the load balancer target group ARN, the container name (as it appears in a container definition), and the container port to access from the load balancer. When a task from this service is placed on a container instance, the container instance and port combination is registered as a target in the target group specified here.

        ", "Service$loadBalancers": "

        A list of Elastic Load Balancing load balancer objects, containing the load balancer name, the container name (as it appears in a container definition), and the container port to access from the load balancer.

        " } }, "LogConfiguration": { "base": "

        Log configuration options to send to a custom log driver for the container.

        ", "refs": { "ContainerDefinition$logConfiguration": "

        The log configuration specification for the container. This parameter maps to LogConfig in the Create a container section of the Docker Remote API and the --log-driver option to docker run. By default, containers use the same logging driver that the Docker daemon uses; however the container may use a different logging driver than the Docker daemon by specifying a log driver with this parameter in the container definition. To use a different logging driver for a container, the log system must be configured properly on the container instance (or on a different log server for remote logging options). For more information on the options for different supported log drivers, see Configure logging drivers in the Docker documentation.

        Amazon ECS currently supports a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration data type). Currently unsupported log drivers may be available in future releases of the Amazon ECS container agent.

        This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log into your container instance and run the following command: sudo docker version | grep \"Server API version\"

        The Amazon ECS container agent running on a container instance must register the logging drivers available on that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before containers placed on that instance can use these log configuration options. For more information, see Amazon ECS Container Agent Configuration in the Amazon EC2 Container Service Developer Guide.

        " } }, "LogConfigurationOptionsMap": { "base": null, "refs": { "LogConfiguration$options": "

        The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log into your container instance and run the following command: sudo docker version | grep \"Server API version\"

        " } }, "LogDriver": { "base": null, "refs": { "LogConfiguration$logDriver": "

        The log driver to use for the container. The valid values listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default.

        If you have a custom driver that is not listed above that you would like to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that is available on GitHub and customize it to work with that driver. We encourage you to submit pull requests for changes that you would like to have included. However, Amazon Web Services does not currently provide support for running modified copies of this software.

        This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log into your container instance and run the following command: sudo docker version | grep \"Server API version\"

        " } }, "Long": { "base": null, "refs": { "Resource$longValue": "

        When the longValue type is set, the value of the resource must be an extended precision floating-point type.

        " } }, "MissingVersionException": { "base": "

        Amazon ECS is unable to determine the current version of the Amazon ECS container agent on the container instance and does not have enough information to proceed with an update. This could be because the agent running on the container instance is an older or custom version that does not use our version information.

        ", "refs": { } }, "MountPoint": { "base": "

        Details on a volume mount point that is used in a container definition.

        ", "refs": { "MountPointList$member": null } }, "MountPointList": { "base": null, "refs": { "ContainerDefinition$mountPoints": "

        The mount points for data volumes in your container. This parameter maps to Volumes in the Create a container section of the Docker Remote API and the --volume option to docker run.

        " } }, "NetworkBinding": { "base": "

        Details on the network bindings between a container and its host container instance. After a task reaches the RUNNING status, manual and automatic host and container port assignments are visible in the networkBindings section of DescribeTasks API responses.

        ", "refs": { "NetworkBindings$member": null } }, "NetworkBindings": { "base": null, "refs": { "Container$networkBindings": "

        The network bindings associated with the container.

        ", "SubmitContainerStateChangeRequest$networkBindings": "

        The network bindings of the container.

        " } }, "NetworkMode": { "base": null, "refs": { "RegisterTaskDefinitionRequest$networkMode": "

        The Docker networking mode to use for the containers in the task. The valid values are none, bridge, and host.

        The default Docker network mode is bridge. If the network mode is set to none, you cannot specify port mappings in your container definitions, and the task's containers do not have external connectivity. The host network mode offers the highest networking performance for containers because they use the host network stack instead of the virtualized network stack provided by the bridge mode; however, exposed container ports are mapped directly to the corresponding host port, so you cannot take advantage of dynamic host port mappings or run multiple instantiations of the same task on a single container instance if port mappings are used.

        For more information, see Network settings in the Docker run reference.

        ", "TaskDefinition$networkMode": "

        The Docker networking mode to use for the containers in the task. The valid values are none, bridge, and host.

        If the network mode is none, the containers do not have external connectivity. The default Docker network mode is bridge. The host network mode offers the highest networking performance for containers because it uses the host network stack instead of the virtualized network stack provided by the bridge mode.

        For more information, see Network settings in the Docker run reference.

        " } }, "NoUpdateAvailableException": { "base": "

        There is no update available for this Amazon ECS container agent. This could be because the agent is already running the latest version, or it is so old that there is no update path to the current version.

        ", "refs": { } }, "PortMapping": { "base": "

        Port mappings allow containers to access ports on the host container instance to send or receive traffic. Port mappings are specified as part of the container definition. After a task reaches the RUNNING status, manual and automatic host and container port assignments are visible in the networkBindings section of DescribeTasks API responses.

        ", "refs": { "PortMappingList$member": null } }, "PortMappingList": { "base": null, "refs": { "ContainerDefinition$portMappings": "

        The list of port mappings for the container. Port mappings allow containers to access ports on the host container instance to send or receive traffic. This parameter maps to PortBindings in the Create a container section of the Docker Remote API and the --publish option to docker run. If the network mode of a task definition is set to none, then you cannot specify port mappings. If the network mode of a task definition is set to host, then host ports must either be undefined or they must match the container port in the port mapping.

        After a task reaches the RUNNING status, manual and automatic host and container port assignments are visible in the Network Bindings section of a container description of a selected task in the Amazon ECS console, or the networkBindings section DescribeTasks responses.

        " } }, "RegisterContainerInstanceRequest": { "base": null, "refs": { } }, "RegisterContainerInstanceResponse": { "base": null, "refs": { } }, "RegisterTaskDefinitionRequest": { "base": null, "refs": { } }, "RegisterTaskDefinitionResponse": { "base": null, "refs": { } }, "RequiresAttributes": { "base": null, "refs": { "TaskDefinition$requiresAttributes": "

        The container instance attributes required by your task.

        " } }, "Resource": { "base": "

        Describes the resources available for a container instance.

        ", "refs": { "Resources$member": null } }, "Resources": { "base": null, "refs": { "ContainerInstance$remainingResources": "

        For most resource types, this parameter describes the remaining resources of the container instance that are available for new tasks. For port resource types, this parameter describes the ports that are reserved by the Amazon ECS container agent and any containers that have reserved port mappings; any port that is not specified here is available for new tasks.

        ", "ContainerInstance$registeredResources": "

        For most resource types, this parameter describes the registered resources on the container instance that are in use by current tasks. For port resource types, this parameter describes the ports that were reserved by the Amazon ECS container agent when it registered the container instance with Amazon ECS.

        ", "RegisterContainerInstanceRequest$totalResources": "

        The resources available on the instance.

        " } }, "RunTaskRequest": { "base": null, "refs": { } }, "RunTaskResponse": { "base": null, "refs": { } }, "ServerException": { "base": "

        These errors are usually caused by a server issue.

        ", "refs": { } }, "Service": { "base": "

        Details on a service within a cluster

        ", "refs": { "CreateServiceResponse$service": "

        The full description of your service following the create call.

        ", "DeleteServiceResponse$service": "

        The full description of the deleted service.

        ", "Services$member": null, "UpdateServiceResponse$service": "

        The full description of your service following the update call.

        " } }, "ServiceEvent": { "base": "

        Details on an event associated with a service.

        ", "refs": { "ServiceEvents$member": null } }, "ServiceEvents": { "base": null, "refs": { "Service$events": "

        The event stream for your service. A maximum of 100 of the latest events are displayed.

        " } }, "ServiceNotActiveException": { "base": "

        The specified service is not active. You cannot update a service that is not active. If you have previously deleted a service, you can re-create it with CreateService.

        ", "refs": { } }, "ServiceNotFoundException": { "base": "

        The specified service could not be found. You can view your available services with ListServices. Amazon ECS services are cluster-specific and region-specific.

        ", "refs": { } }, "Services": { "base": null, "refs": { "DescribeServicesResponse$services": "

        The list of services described.

        " } }, "SortOrder": { "base": null, "refs": { "ListTaskDefinitionsRequest$sort": "

        The order in which to sort the results. Valid values are ASC and DESC. By default (ASC), task definitions are listed lexicographically by family name and in ascending numerical order by revision so that the newest task definitions in a family are listed last. Setting this parameter to DESC reverses the sort order on family name and revision so that the newest task definitions in a family are listed first.

        " } }, "StartTaskRequest": { "base": null, "refs": { } }, "StartTaskResponse": { "base": null, "refs": { } }, "StopTaskRequest": { "base": null, "refs": { } }, "StopTaskResponse": { "base": null, "refs": { } }, "String": { "base": null, "refs": { "Attribute$name": "

        The name of the container instance attribute.

        ", "Attribute$value": "

        The value of the container instance attribute (at this time, the value here is Null, but this could change in future revisions for expandability).

        ", "ClientException$message": null, "Cluster$clusterArn": "

        The Amazon Resource Name (ARN) that identifies the cluster. The ARN contains the arn:aws:ecs namespace, followed by the region of the cluster, the AWS account ID of the cluster owner, the cluster namespace, and then the cluster name. For example, arn:aws:ecs:region:012345678910:cluster/test ..

        ", "Cluster$clusterName": "

        A user-generated string that you use to identify your cluster.

        ", "Cluster$status": "

        The status of the cluster. The valid values are ACTIVE or INACTIVE. ACTIVE indicates that you can register container instances with the cluster and the associated instances can accept tasks.

        ", "Container$containerArn": "

        The Amazon Resource Name (ARN) of the container.

        ", "Container$taskArn": "

        The Amazon Resource Name (ARN) of the task.

        ", "Container$name": "

        The name of the container.

        ", "Container$lastStatus": "

        The last known status of the container.

        ", "Container$reason": "

        A short (255 max characters) human-readable string to provide additional detail about a running or stopped container.

        ", "ContainerDefinition$name": "

        The name of a container. If you are linking multiple containers together in a task definition, the name of one container can be entered in the links of another container to connect the containers. Up to 255 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed. This parameter maps to name in the Create a container section of the Docker Remote API and the --name option to docker run.

        ", "ContainerDefinition$image": "

        The image used to start a container. This string is passed directly to the Docker daemon. Images in the Docker Hub registry are available by default. Other repositories are specified with repository-url/image:tag . Up to 255 letters (uppercase and lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and number signs are allowed. This parameter maps to Image in the Create a container section of the Docker Remote API and the IMAGE parameter of docker run.

        • Images in official repositories on Docker Hub use a single name (for example, ubuntu or mongo).

        • Images in other repositories on Docker Hub are qualified with an organization name (for example, amazon/amazon-ecs-agent).

        • Images in other online repositories are qualified further by a domain name (for example, quay.io/assemblyline/ubuntu).

        ", "ContainerDefinition$hostname": "

        The hostname to use for your container. This parameter maps to Hostname in the Create a container section of the Docker Remote API and the --hostname option to docker run.

        ", "ContainerDefinition$user": "

        The user name to use inside the container. This parameter maps to User in the Create a container section of the Docker Remote API and the --user option to docker run.

        ", "ContainerDefinition$workingDirectory": "

        The working directory in which to run commands inside the container. This parameter maps to WorkingDir in the Create a container section of the Docker Remote API and the --workdir option to docker run.

        ", "ContainerInstance$containerInstanceArn": "

        The Amazon Resource Name (ARN) of the container instance. The ARN contains the arn:aws:ecs namespace, followed by the region of the container instance, the AWS account ID of the container instance owner, the container-instance namespace, and then the container instance ID. For example, arn:aws:ecs:region:aws_account_id:container-instance/container_instance_ID .

        ", "ContainerInstance$ec2InstanceId": "

        The EC2 instance ID of the container instance.

        ", "ContainerInstance$status": "

        The status of the container instance. The valid values are ACTIVE or INACTIVE. ACTIVE indicates that the container instance can accept tasks.

        ", "ContainerOverride$name": "

        The name of the container that receives the override.

        ", "CreateClusterRequest$clusterName": "

        The name of your cluster. If you do not specify a name for your cluster, you create a cluster named default. Up to 255 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed.

        ", "CreateServiceRequest$cluster": "

        The short name or full Amazon Resource Name (ARN) of the cluster on which to run your service. If you do not specify a cluster, the default cluster is assumed.

        ", "CreateServiceRequest$serviceName": "

        The name of your service. Up to 255 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed. Service names must be unique within a cluster, but you can have similarly named services in multiple clusters within a region or across multiple regions.

        ", "CreateServiceRequest$taskDefinition": "

        The family and revision (family:revision) or full Amazon Resource Name (ARN) of the task definition to run in your service. If a revision is not specified, the latest ACTIVE revision is used.

        ", "CreateServiceRequest$clientToken": "

        Unique, case-sensitive identifier you provide to ensure the idempotency of the request. Up to 32 ASCII characters are allowed.

        ", "CreateServiceRequest$role": "

        The name or full Amazon Resource Name (ARN) of the IAM role that allows Amazon ECS to make calls to your load balancer on your behalf. This parameter is required if you are using a load balancer with your service. If you specify the role parameter, you must also specify a load balancer object with the loadBalancers parameter.

        If your specified role has a path other than /, then you must either specify the full role ARN (this is recommended) or prefix the role name with the path. For example, if a role with the name bar has a path of /foo/ then you would specify /foo/bar as the role name. For more information, see Friendly Names and Paths in the IAM User Guide.

        ", "DeleteClusterRequest$cluster": "

        The short name or full Amazon Resource Name (ARN) of the cluster to delete.

        ", "DeleteServiceRequest$cluster": "

        The name of the cluster that hosts the service to delete. If you do not specify a cluster, the default cluster is assumed.

        ", "DeleteServiceRequest$service": "

        The name of the service to delete.

        ", "Deployment$id": "

        The ID of the deployment.

        ", "Deployment$status": "

        The status of the deployment. Valid values are PRIMARY (for the most recent deployment), ACTIVE (for previous deployments that still have tasks running, but are being replaced with the PRIMARY deployment), and INACTIVE (for deployments that have been completely replaced).

        ", "Deployment$taskDefinition": "

        The most recent task definition that was specified for the service to use.

        ", "DeregisterContainerInstanceRequest$cluster": "

        The short name or full Amazon Resource Name (ARN) of the cluster that hosts the container instance to deregister. If you do not specify a cluster, the default cluster is assumed.

        ", "DeregisterContainerInstanceRequest$containerInstance": "

        The container instance ID or full Amazon Resource Name (ARN) of the container instance to deregister. The ARN contains the arn:aws:ecs namespace, followed by the region of the container instance, the AWS account ID of the container instance owner, the container-instance namespace, and then the container instance ID. For example, arn:aws:ecs:region:aws_account_id:container-instance/container_instance_ID .

        ", "DeregisterTaskDefinitionRequest$taskDefinition": "

        The family and revision (family:revision) or full Amazon Resource Name (ARN) of the task definition to deregister. You must specify a revision.

        ", "DescribeContainerInstancesRequest$cluster": "

        The short name or full Amazon Resource Name (ARN) of the cluster that hosts the container instances to describe. If you do not specify a cluster, the default cluster is assumed.

        ", "DescribeServicesRequest$cluster": "

        The name of the cluster that hosts the service to describe. If you do not specify a cluster, the default cluster is assumed.

        ", "DescribeTaskDefinitionRequest$taskDefinition": "

        The family for the latest ACTIVE revision, family and revision (family:revision) for a specific revision in the family, or full Amazon Resource Name (ARN) of the task definition to describe.

        ", "DescribeTasksRequest$cluster": "

        The short name or full Amazon Resource Name (ARN) of the cluster that hosts the task to describe. If you do not specify a cluster, the default cluster is assumed.

        ", "DiscoverPollEndpointRequest$containerInstance": "

        The container instance ID or full Amazon Resource Name (ARN) of the container instance. The ARN contains the arn:aws:ecs namespace, followed by the region of the container instance, the AWS account ID of the container instance owner, the container-instance namespace, and then the container instance ID. For example, arn:aws:ecs:region:aws_account_id:container-instance/container_instance_ID .

        ", "DiscoverPollEndpointRequest$cluster": "

        The cluster that the container instance belongs to.

        ", "DiscoverPollEndpointResponse$endpoint": "

        The endpoint for the Amazon ECS agent to poll.

        ", "DiscoverPollEndpointResponse$telemetryEndpoint": "

        The telemetry endpoint for the Amazon ECS agent.

        ", "DockerLabelsMap$key": null, "DockerLabelsMap$value": null, "Failure$arn": "

        The Amazon Resource Name (ARN) of the failed resource.

        ", "Failure$reason": "

        The reason for the failure.

        ", "HostEntry$hostname": "

        The hostname to use in the /etc/hosts entry.

        ", "HostEntry$ipAddress": "

        The IP address to use in the /etc/hosts entry.

        ", "HostVolumeProperties$sourcePath": "

        The path on the host container instance that is presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If the host parameter contains a sourcePath file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the sourcePath value does not exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported.

        ", "KeyValuePair$name": "

        The name of the key value pair. For environment variables, this is the name of the environment variable.

        ", "KeyValuePair$value": "

        The value of the key value pair. For environment variables, this is the value of the environment variable.

        ", "ListClustersRequest$nextToken": "

        The nextToken value returned from a previous paginated ListClusters request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return.

        This token should be treated as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.

        ", "ListClustersResponse$nextToken": "

        The nextToken value to include in a future ListClusters request. When the results of a ListClusters request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "ListContainerInstancesRequest$cluster": "

        The short name or full Amazon Resource Name (ARN) of the cluster that hosts the container instances to list. If you do not specify a cluster, the default cluster is assumed.

        ", "ListContainerInstancesRequest$nextToken": "

        The nextToken value returned from a previous paginated ListContainerInstances request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return.

        This token should be treated as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.

        ", "ListContainerInstancesResponse$nextToken": "

        The nextToken value to include in a future ListContainerInstances request. When the results of a ListContainerInstances request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "ListServicesRequest$cluster": "

        The short name or full Amazon Resource Name (ARN) of the cluster that hosts the services to list. If you do not specify a cluster, the default cluster is assumed.

        ", "ListServicesRequest$nextToken": "

        The nextToken value returned from a previous paginated ListServices request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return.

        This token should be treated as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.

        ", "ListServicesResponse$nextToken": "

        The nextToken value to include in a future ListServices request. When the results of a ListServices request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "ListTaskDefinitionFamiliesRequest$familyPrefix": "

        The familyPrefix is a string that is used to filter the results of ListTaskDefinitionFamilies. If you specify a familyPrefix, only task definition family names that begin with the familyPrefix string are returned.

        ", "ListTaskDefinitionFamiliesRequest$nextToken": "

        The nextToken value returned from a previous paginated ListTaskDefinitionFamilies request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return.

        This token should be treated as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.

        ", "ListTaskDefinitionFamiliesResponse$nextToken": "

        The nextToken value to include in a future ListTaskDefinitionFamilies request. When the results of a ListTaskDefinitionFamilies request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "ListTaskDefinitionsRequest$familyPrefix": "

        The full family name with which to filter the ListTaskDefinitions results. Specifying a familyPrefix limits the listed task definitions to task definition revisions that belong to that family.

        ", "ListTaskDefinitionsRequest$nextToken": "

        The nextToken value returned from a previous paginated ListTaskDefinitions request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return.

        This token should be treated as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.

        ", "ListTaskDefinitionsResponse$nextToken": "

        The nextToken value to include in a future ListTaskDefinitions request. When the results of a ListTaskDefinitions request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "ListTasksRequest$cluster": "

        The short name or full Amazon Resource Name (ARN) of the cluster that hosts the tasks to list. If you do not specify a cluster, the default cluster is assumed.

        ", "ListTasksRequest$containerInstance": "

        The container instance ID or full Amazon Resource Name (ARN) of the container instance with which to filter the ListTasks results. Specifying a containerInstance limits the results to tasks that belong to that container instance.

        ", "ListTasksRequest$family": "

        The name of the family with which to filter the ListTasks results. Specifying a family limits the results to tasks that belong to that family.

        ", "ListTasksRequest$nextToken": "

        The nextToken value returned from a previous paginated ListTasks request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return.

        This token should be treated as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.

        ", "ListTasksRequest$startedBy": "

        The startedBy value with which to filter the task results. Specifying a startedBy value limits the results to tasks that were started with that value.

        ", "ListTasksRequest$serviceName": "

        The name of the service with which to filter the ListTasks results. Specifying a serviceName limits the results to tasks that belong to that service.

        ", "ListTasksResponse$nextToken": "

        The nextToken value to include in a future ListTasks request. When the results of a ListTasks request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

        ", "LoadBalancer$targetGroupArn": "

        The full Amazon Resource Name (ARN) of the Elastic Load Balancing target group associated with a service.

        ", "LoadBalancer$loadBalancerName": "

        The name of the load balancer.

        ", "LoadBalancer$containerName": "

        The name of the container (as it appears in a container definition) to associate with the load balancer.

        ", "LogConfigurationOptionsMap$key": null, "LogConfigurationOptionsMap$value": null, "MountPoint$sourceVolume": "

        The name of the volume to mount.

        ", "MountPoint$containerPath": "

        The path on the container to mount the host volume at.

        ", "NetworkBinding$bindIP": "

        The IP address that the container is bound to on the container instance.

        ", "RegisterContainerInstanceRequest$cluster": "

        The short name or full Amazon Resource Name (ARN) of the cluster with which to register your container instance. If you do not specify a cluster, the default cluster is assumed.

        ", "RegisterContainerInstanceRequest$instanceIdentityDocument": "

        The instance identity document for the EC2 instance to register. This document can be found by running the following command from the instance: curl http://169.254.169.254/latest/dynamic/instance-identity/document/

        ", "RegisterContainerInstanceRequest$instanceIdentityDocumentSignature": "

        The instance identity document signature for the EC2 instance to register. This signature can be found by running the following command from the instance: curl http://169.254.169.254/latest/dynamic/instance-identity/signature/

        ", "RegisterContainerInstanceRequest$containerInstanceArn": "

        The Amazon Resource Name (ARN) of the container instance (if it was previously registered).

        ", "RegisterTaskDefinitionRequest$family": "

        You must specify a family for a task definition, which allows you to track multiple versions of the same task definition. The family is used as a name for your task definition. Up to 255 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed.

        ", "RegisterTaskDefinitionRequest$taskRoleArn": "

        The short name or full Amazon Resource Name (ARN) of the IAM role that containers in this task can assume. All containers in this task are granted the permissions that are specified in this role. For more information, see IAM Roles for Tasks in the Amazon EC2 Container Service Developer Guide.

        ", "Resource$name": "

        The name of the resource, such as CPU, MEMORY, PORTS, or a user-defined resource.

        ", "Resource$type": "

        The type of the resource, such as INTEGER, DOUBLE, LONG, or STRINGSET.

        ", "RunTaskRequest$cluster": "

        The short name or full Amazon Resource Name (ARN) of the cluster on which to run your task. If you do not specify a cluster, the default cluster is assumed.

        ", "RunTaskRequest$taskDefinition": "

        The family and revision (family:revision) or full Amazon Resource Name (ARN) of the task definition to run. If a revision is not specified, the latest ACTIVE revision is used.

        ", "RunTaskRequest$startedBy": "

        An optional tag specified when a task is started. For example if you automatically trigger a task to run a batch process job, you could apply a unique identifier for that job to your task with the startedBy parameter. You can then identify which tasks belong to that job by filtering the results of a ListTasks call with the startedBy value. Up to 36 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed.

        If a task is started by an Amazon ECS service, then the startedBy parameter contains the deployment ID of the service that starts it.

        ", "ServerException$message": null, "Service$serviceArn": "

        The Amazon Resource Name (ARN) that identifies the service. The ARN contains the arn:aws:ecs namespace, followed by the region of the service, the AWS account ID of the service owner, the service namespace, and then the service name. For example, arn:aws:ecs:region:012345678910:service/my-service .

        ", "Service$serviceName": "

        The name of your service. Up to 255 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed. Service names must be unique within a cluster, but you can have similarly named services in multiple clusters within a region or across multiple regions.

        ", "Service$clusterArn": "

        The Amazon Resource Name (ARN) of the cluster that hosts the service.

        ", "Service$status": "

        The status of the service. The valid values are ACTIVE, DRAINING, or INACTIVE.

        ", "Service$taskDefinition": "

        The task definition to use for tasks in the service. This value is specified when the service is created with CreateService, and it can be modified with UpdateService.

        ", "Service$roleArn": "

        The Amazon Resource Name (ARN) of the IAM role associated with the service that allows the Amazon ECS container agent to register container instances with an Elastic Load Balancing load balancer.

        ", "ServiceEvent$id": "

        The ID string of the event.

        ", "ServiceEvent$message": "

        The event message.

        ", "StartTaskRequest$cluster": "

        The short name or full Amazon Resource Name (ARN) of the cluster on which to start your task. If you do not specify a cluster, the default cluster is assumed.

        ", "StartTaskRequest$taskDefinition": "

        The family and revision (family:revision) or full Amazon Resource Name (ARN) of the task definition to start. If a revision is not specified, the latest ACTIVE revision is used.

        ", "StartTaskRequest$startedBy": "

        An optional tag specified when a task is started. For example if you automatically trigger a task to run a batch process job, you could apply a unique identifier for that job to your task with the startedBy parameter. You can then identify which tasks belong to that job by filtering the results of a ListTasks call with the startedBy value. Up to 36 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed.

        If a task is started by an Amazon ECS service, then the startedBy parameter contains the deployment ID of the service that starts it.

        ", "StopTaskRequest$cluster": "

        The short name or full Amazon Resource Name (ARN) of the cluster that hosts the task to stop. If you do not specify a cluster, the default cluster is assumed.

        ", "StopTaskRequest$task": "

        The task ID or full Amazon Resource Name (ARN) entry of the task to stop.

        ", "StopTaskRequest$reason": "

        An optional message specified when a task is stopped. For example, if you are using a custom scheduler, you can use this parameter to specify the reason for stopping the task here, and the message will appear in subsequent DescribeTasks API operations on this task. Up to 255 characters are allowed in this message.

        ", "StringList$member": null, "SubmitContainerStateChangeRequest$cluster": "

        The short name or full Amazon Resource Name (ARN) of the cluster that hosts the container.

        ", "SubmitContainerStateChangeRequest$task": "

        The task ID or full Amazon Resource Name (ARN) of the task that hosts the container.

        ", "SubmitContainerStateChangeRequest$containerName": "

        The name of the container.

        ", "SubmitContainerStateChangeRequest$status": "

        The status of the state change request.

        ", "SubmitContainerStateChangeRequest$reason": "

        The reason for the state change request.

        ", "SubmitContainerStateChangeResponse$acknowledgment": "

        Acknowledgement of the state change.

        ", "SubmitTaskStateChangeRequest$cluster": "

        The short name or full Amazon Resource Name (ARN) of the cluster that hosts the task.

        ", "SubmitTaskStateChangeRequest$task": "

        The task ID or full Amazon Resource Name (ARN) of the task in the state change request.

        ", "SubmitTaskStateChangeRequest$status": "

        The status of the state change request.

        ", "SubmitTaskStateChangeRequest$reason": "

        The reason for the state change request.

        ", "SubmitTaskStateChangeResponse$acknowledgment": "

        Acknowledgement of the state change.

        ", "Task$taskArn": "

        The Amazon Resource Name (ARN) of the task.

        ", "Task$clusterArn": "

        The Amazon Resource Name (ARN) of the cluster that hosts the task.

        ", "Task$taskDefinitionArn": "

        The Amazon Resource Name (ARN) of the task definition that creates the task.

        ", "Task$containerInstanceArn": "

        The Amazon Resource Name (ARN) of the container instances that host the task.

        ", "Task$lastStatus": "

        The last known status of the task.

        ", "Task$desiredStatus": "

        The desired status of the task.

        ", "Task$startedBy": "

        The tag specified when a task is started. If the task is started by an Amazon ECS service, then the startedBy parameter contains the deployment ID of the service that starts it.

        ", "Task$stoppedReason": "

        The reason the task was stopped.

        ", "TaskDefinition$taskDefinitionArn": "

        The full Amazon Resource Name (ARN) of the task definition.

        ", "TaskDefinition$family": "

        The family of your task definition, used as the definition name.

        ", "TaskDefinition$taskRoleArn": "

        The Amazon Resource Name (ARN) of the IAM role that containers in this task can assume. All containers in this task are granted the permissions that are specified in this role.

        ", "TaskOverride$taskRoleArn": "

        The Amazon Resource Name (ARN) of the IAM role that containers in this task can assume. All containers in this task are granted the permissions that are specified in this role.

        ", "UpdateContainerAgentRequest$cluster": "

        The short name or full Amazon Resource Name (ARN) of the cluster that your container instance is running on. If you do not specify a cluster, the default cluster is assumed.

        ", "UpdateContainerAgentRequest$containerInstance": "

        The container instance ID or full Amazon Resource Name (ARN) entries for the container instance on which you would like to update the Amazon ECS container agent.

        ", "UpdateServiceRequest$cluster": "

        The short name or full Amazon Resource Name (ARN) of the cluster that your service is running on. If you do not specify a cluster, the default cluster is assumed.

        ", "UpdateServiceRequest$service": "

        The name of the service to update.

        ", "UpdateServiceRequest$taskDefinition": "

        The family and revision (family:revision) or full Amazon Resource Name (ARN) of the task definition to run in your service. If a revision is not specified, the latest ACTIVE revision is used. If you modify the task definition with UpdateService, Amazon ECS spawns a task with the new version of the task definition and then stops an old task after the new version is running.

        ", "VersionInfo$agentVersion": "

        The version number of the Amazon ECS container agent.

        ", "VersionInfo$agentHash": "

        The Git commit hash for the Amazon ECS container agent build on the amazon-ecs-agent GitHub repository.

        ", "VersionInfo$dockerVersion": "

        The Docker version running on the container instance.

        ", "Volume$name": "

        The name of the volume. Up to 255 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed. This name is referenced in the sourceVolume parameter of container definition mountPoints.

        ", "VolumeFrom$sourceContainer": "

        The name of the container to mount volumes from.

        " } }, "StringList": { "base": null, "refs": { "ContainerDefinition$links": "

        The link parameter allows containers to communicate with each other without the need for port mappings, using the name parameter and optionally, an alias for the link. This construct is analogous to name:alias in Docker links. Up to 255 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed for each name and alias. For more information on linking Docker containers, see https://docs.docker.com/engine/userguide/networking/default_network/dockerlinks/. This parameter maps to Links in the Create a container section of the Docker Remote API and the --link option to docker run.

        Containers that are collocated on a single container instance may be able to communicate with each other without requiring links or host port mappings. Network isolation is achieved on the container instance using security groups and VPC settings.

        ", "ContainerDefinition$entryPoint": "

        Early versions of the Amazon ECS container agent do not properly handle entryPoint parameters. If you have problems using entryPoint, update your container agent or enter your commands and arguments as command array items instead.

        The entry point that is passed to the container. This parameter maps to Entrypoint in the Create a container section of the Docker Remote API and the --entrypoint option to docker run. For more information, see https://docs.docker.com/engine/reference/builder/#entrypoint.

        ", "ContainerDefinition$command": "

        The command that is passed to the container. This parameter maps to Cmd in the Create a container section of the Docker Remote API and the COMMAND parameter to docker run. For more information, see https://docs.docker.com/engine/reference/builder/#cmd.

        ", "ContainerDefinition$dnsServers": "

        A list of DNS servers that are presented to the container. This parameter maps to Dns in the Create a container section of the Docker Remote API and the --dns option to docker run.

        ", "ContainerDefinition$dnsSearchDomains": "

        A list of DNS search domains that are presented to the container. This parameter maps to DnsSearch in the Create a container section of the Docker Remote API and the --dns-search option to docker run.

        ", "ContainerDefinition$dockerSecurityOptions": "

        A list of strings to provide custom labels for SELinux and AppArmor multi-level security systems. This parameter maps to SecurityOpt in the Create a container section of the Docker Remote API and the --security-opt option to docker run.

        The Amazon ECS container agent running on a container instance must register with the ECS_SELINUX_CAPABLE=true or ECS_APPARMOR_CAPABLE=true environment variables before containers placed on that instance can use these security options. For more information, see Amazon ECS Container Agent Configuration in the Amazon EC2 Container Service Developer Guide.

        ", "ContainerOverride$command": "

        The command to send to the container that overrides the default command from the Docker image or the task definition.

        ", "DescribeClustersRequest$clusters": "

        A space-separated list of up to 100 cluster names or full cluster Amazon Resource Name (ARN) entries. If you do not specify a cluster, the default cluster is assumed.

        ", "DescribeContainerInstancesRequest$containerInstances": "

        A space-separated list of container instance IDs or full Amazon Resource Name (ARN) entries.

        ", "DescribeServicesRequest$services": "

        A list of services to describe. You may specify up to 10 services to describe in a single operation.

        ", "DescribeTasksRequest$tasks": "

        A space-separated list of task IDs or full Amazon Resource Name (ARN) entries.

        ", "ListClustersResponse$clusterArns": "

        The list of full Amazon Resource Name (ARN) entries for each cluster associated with your account.

        ", "ListContainerInstancesResponse$containerInstanceArns": "

        The list of container instances with full Amazon Resource Name (ARN) entries for each container instance associated with the specified cluster.

        ", "ListServicesResponse$serviceArns": "

        The list of full Amazon Resource Name (ARN) entries for each service associated with the specified cluster.

        ", "ListTaskDefinitionFamiliesResponse$families": "

        The list of task definition family names that match the ListTaskDefinitionFamilies request.

        ", "ListTaskDefinitionsResponse$taskDefinitionArns": "

        The list of task definition Amazon Resource Name (ARN) entries for the ListTaskDefinitions request.

        ", "ListTasksResponse$taskArns": "

        The list of task Amazon Resource Name (ARN) entries for the ListTasks request.

        ", "Resource$stringSetValue": "

        When the stringSetValue type is set, the value of the resource must be a string type.

        ", "StartTaskRequest$containerInstances": "

        The container instance IDs or full Amazon Resource Name (ARN) entries for the container instances on which you would like to place your task.

        The list of container instances to start tasks on is limited to 10.

        " } }, "SubmitContainerStateChangeRequest": { "base": null, "refs": { } }, "SubmitContainerStateChangeResponse": { "base": null, "refs": { } }, "SubmitTaskStateChangeRequest": { "base": null, "refs": { } }, "SubmitTaskStateChangeResponse": { "base": null, "refs": { } }, "Task": { "base": "

        Details on a task in a cluster.

        ", "refs": { "StopTaskResponse$task": null, "Tasks$member": null } }, "TaskDefinition": { "base": "

        Details of a task definition.

        ", "refs": { "DeregisterTaskDefinitionResponse$taskDefinition": "

        The full description of the deregistered task.

        ", "DescribeTaskDefinitionResponse$taskDefinition": "

        The full task definition description.

        ", "RegisterTaskDefinitionResponse$taskDefinition": "

        The full description of the registered task definition.

        " } }, "TaskDefinitionFamilyStatus": { "base": null, "refs": { "ListTaskDefinitionFamiliesRequest$status": "

        The task definition family status with which to filter the ListTaskDefinitionFamilies results. By default, both ACTIVE and INACTIVE task definition families are listed. If this parameter is set to ACTIVE, only task definition families that have an ACTIVE task definition revision are returned. If this parameter is set to INACTIVE, only task definition families that do not have any ACTIVE task definition revisions are returned. If you paginate the resulting output, be sure to keep the status value constant in each subsequent request.

        " } }, "TaskDefinitionStatus": { "base": null, "refs": { "ListTaskDefinitionsRequest$status": "

        The task definition status with which to filter the ListTaskDefinitions results. By default, only ACTIVE task definitions are listed. By setting this parameter to INACTIVE, you can view task definitions that are INACTIVE as long as an active task or service still references them. If you paginate the resulting output, be sure to keep the status value constant in each subsequent request.

        ", "TaskDefinition$status": "

        The status of the task definition.

        " } }, "TaskOverride": { "base": "

        The overrides associated with a task.

        ", "refs": { "RunTaskRequest$overrides": "

        A list of container overrides in JSON format that specify the name of a container in the specified task definition and the overrides it should receive. You can override the default command for a container (that is specified in the task definition or Docker image) with a command override. You can also override existing environment variables (that are specified in the task definition or Docker image) on a container or add new environment variables to it with an environment override.

        A total of 8192 characters are allowed for overrides. This limit includes the JSON formatting characters of the override structure.

        ", "StartTaskRequest$overrides": "

        A list of container overrides in JSON format that specify the name of a container in the specified task definition and the overrides it should receive. You can override the default command for a container (that is specified in the task definition or Docker image) with a command override. You can also override existing environment variables (that are specified in the task definition or Docker image) on a container or add new environment variables to it with an environment override.

        A total of 8192 characters are allowed for overrides. This limit includes the JSON formatting characters of the override structure.

        ", "Task$overrides": "

        One or more container overrides.

        " } }, "Tasks": { "base": null, "refs": { "DescribeTasksResponse$tasks": "

        The list of tasks.

        ", "RunTaskResponse$tasks": "

        A full description of the tasks that were run. Each task that was successfully placed on your cluster are described here.

        ", "StartTaskResponse$tasks": "

        A full description of the tasks that were started. Each task that was successfully placed on your container instances are described here.

        " } }, "Timestamp": { "base": null, "refs": { "Deployment$createdAt": "

        The Unix timestamp for when the service was created.

        ", "Deployment$updatedAt": "

        The Unix timestamp for when the service was last updated.

        ", "Service$createdAt": "

        The Unix timestamp for when the service was created.

        ", "ServiceEvent$createdAt": "

        The Unix timestamp for when the event was triggered.

        ", "Task$createdAt": "

        The Unix timestamp for when the task was created (the task entered the PENDING state).

        ", "Task$startedAt": "

        The Unix timestamp for when the task was started (the task transitioned from the PENDING state to the RUNNING state).

        ", "Task$stoppedAt": "

        The Unix timestamp for when the task was stopped (the task transitioned from the RUNNING state to the STOPPED state).

        " } }, "TransportProtocol": { "base": null, "refs": { "NetworkBinding$protocol": "

        The protocol used for the network binding.

        ", "PortMapping$protocol": "

        The protocol used for the port mapping. Valid values are tcp and udp. The default is tcp.

        " } }, "Ulimit": { "base": "

        The ulimit settings to pass to the container.

        ", "refs": { "UlimitList$member": null } }, "UlimitList": { "base": null, "refs": { "ContainerDefinition$ulimits": "

        A list of ulimits to set in the container. This parameter maps to Ulimits in the Create a container section of the Docker Remote API and the --ulimit option to docker run. Valid naming values are displayed in the Ulimit data type. This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log into your container instance and run the following command: sudo docker version | grep \"Server API version\"

        " } }, "UlimitName": { "base": null, "refs": { "Ulimit$name": "

        The type of the ulimit.

        " } }, "UpdateContainerAgentRequest": { "base": null, "refs": { } }, "UpdateContainerAgentResponse": { "base": null, "refs": { } }, "UpdateInProgressException": { "base": "

        There is already a current Amazon ECS container agent update in progress on the specified container instance. If the container agent becomes disconnected while it is in a transitional stage, such as PENDING or STAGING, the update process can get stuck in that state. However, when the agent reconnects, it resumes where it stopped previously.

        ", "refs": { } }, "UpdateServiceRequest": { "base": null, "refs": { } }, "UpdateServiceResponse": { "base": null, "refs": { } }, "VersionInfo": { "base": "

        The Docker and Amazon ECS container agent version information about a container instance.

        ", "refs": { "ContainerInstance$versionInfo": "

        The version information for the Amazon ECS container agent and Docker daemon running on the container instance.

        ", "RegisterContainerInstanceRequest$versionInfo": "

        The version information for the Amazon ECS container agent and Docker daemon running on the container instance.

        " } }, "Volume": { "base": "

        A data volume used in a task definition.

        ", "refs": { "VolumeList$member": null } }, "VolumeFrom": { "base": "

        Details on a data volume from another container.

        ", "refs": { "VolumeFromList$member": null } }, "VolumeFromList": { "base": null, "refs": { "ContainerDefinition$volumesFrom": "

        Data volumes to mount from another container. This parameter maps to VolumesFrom in the Create a container section of the Docker Remote API and the --volumes-from option to docker run.

        " } }, "VolumeList": { "base": null, "refs": { "RegisterTaskDefinitionRequest$volumes": "

        A list of volume definitions in JSON format that containers in your task may use.

        ", "TaskDefinition$volumes": "

        The list of volumes in a task. For more information about volume definition parameters and defaults, see Amazon ECS Task Definitions in the Amazon EC2 Container Service Developer Guide.

        " } } } } aws-sdk-go-1.4.22/models/apis/ecs/2014-11-13/examples-1.json000066400000000000000000000665231300374646400224650ustar00rootroot00000000000000{ "version": "1.0", "examples": { "CreateCluster": [ { "input": { "clusterName": "my_cluster" }, "output": { "cluster": { "activeServicesCount": 0, "clusterArn": "arn:aws:ecs:us-east-1:012345678910:cluster/my_cluster", "clusterName": "my_cluster", "pendingTasksCount": 0, "registeredContainerInstancesCount": 0, "runningTasksCount": 0, "status": "ACTIVE" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a cluster in your default region.", "id": "to-create-a-new-cluster-1472514079365", "title": "To create a new cluster" } ], "CreateService": [ { "input": { "desiredCount": 10, "serviceName": "ecs-simple-service", "taskDefinition": "hello_world" }, "output": { "service": { "clusterArn": "arn:aws:ecs:us-east-1:012345678910:cluster/default", "createdAt": "2016-08-29T16:13:47.298Z", "deploymentConfiguration": { "maximumPercent": 200, "minimumHealthyPercent": 100 }, "deployments": [ { "createdAt": "2016-08-29T16:13:47.298Z", "desiredCount": 10, "id": "ecs-svc/9223370564342348388", "pendingCount": 0, "runningCount": 0, "status": "PRIMARY", "taskDefinition": "arn:aws:ecs:us-east-1:012345678910:task-definition/hello_world:6", "updatedAt": "2016-08-29T16:13:47.298Z" }, { "createdAt": "2016-08-29T15:52:44.481Z", "desiredCount": 0, "id": "ecs-svc/9223370564343611322", "pendingCount": 0, "runningCount": 0, "status": "ACTIVE", "taskDefinition": "arn:aws:ecs:us-east-1:012345678910:task-definition/hello_world:6", "updatedAt": "2016-08-29T16:11:38.941Z" } ], "desiredCount": 10, "events": [ ], "loadBalancers": [ ], "pendingCount": 0, "runningCount": 0, "serviceArn": "arn:aws:ecs:us-east-1:012345678910:service/ecs-simple-service", "serviceName": "ecs-simple-service", "status": "ACTIVE", "taskDefinition": "arn:aws:ecs:us-east-1:012345678910:task-definition/hello_world:6" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a service in your default region called ``ecs-simple-service``. The service uses the ``hello_world`` task definition and it maintains 10 copies of that task.", "id": "to-create-a-new-service-1472512584282", "title": "To create a new service" }, { "input": { "desiredCount": 10, "loadBalancers": [ { "containerName": "simple-app", "containerPort": 80, "loadBalancerName": "EC2Contai-EcsElast-15DCDAURT3ZO2" } ], "role": "ecsServiceRole", "serviceName": "ecs-simple-service-elb", "taskDefinition": "console-sample-app-static" }, "output": { "service": { "clusterArn": "arn:aws:ecs:us-east-1:012345678910:cluster/default", "createdAt": "2016-08-29T16:02:54.884Z", "deploymentConfiguration": { "maximumPercent": 200, "minimumHealthyPercent": 100 }, "deployments": [ { "createdAt": "2016-08-29T16:02:54.884Z", "desiredCount": 10, "id": "ecs-svc/9223370564343000923", "pendingCount": 0, "runningCount": 0, "status": "PRIMARY", "taskDefinition": "arn:aws:ecs:us-east-1:012345678910:task-definition/console-sample-app-static:6", "updatedAt": "2016-08-29T16:02:54.884Z" } ], "desiredCount": 10, "events": [ ], "loadBalancers": [ { "containerName": "simple-app", "containerPort": 80, "loadBalancerName": "EC2Contai-EcsElast-15DCDAURT3ZO2" } ], "pendingCount": 0, "roleArn": "arn:aws:iam::012345678910:role/ecsServiceRole", "runningCount": 0, "serviceArn": "arn:aws:ecs:us-east-1:012345678910:service/ecs-simple-service-elb", "serviceName": "ecs-simple-service-elb", "status": "ACTIVE", "taskDefinition": "arn:aws:ecs:us-east-1:012345678910:task-definition/console-sample-app-static:6" } }, "comments": { "input": { }, "output": { } }, "description": "This example creates a service in your default region called ``ecs-simple-service-elb``. The service uses the ``ecs-demo`` task definition and it maintains 10 copies of that task. You must reference an existing load balancer in the same region by its name.", "id": "to-create-a-new-service-behind-a-load-balancer-1472512484823", "title": "To create a new service behind a load balancer" } ], "DeleteCluster": [ { "input": { "cluster": "my_cluster" }, "output": { "cluster": { "activeServicesCount": 0, "clusterArn": "arn:aws:ecs:us-east-1:012345678910:cluster/my_cluster", "clusterName": "my_cluster", "pendingTasksCount": 0, "registeredContainerInstancesCount": 0, "runningTasksCount": 0, "status": "INACTIVE" } }, "comments": { "input": { }, "output": { } }, "description": "This example deletes an empty cluster in your default region.", "id": "to-delete-an-empty-cluster-1472512705352", "title": "To delete an empty cluster" } ], "DeleteService": [ { "input": { "service": "my-http-service" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the my-http-service service. The service must have a desired count and running count of 0 before you can delete it.", "id": "e8183e38-f86e-4390-b811-f74f30a6007d", "title": "To delete a service" } ], "DeregisterContainerInstance": [ { "input": { "cluster": "default", "containerInstance": "container_instance_UUID", "force": true }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example deregisters a container instance from the specified cluster in your default region. If there are still tasks running on the container instance, you must either stop those tasks before deregistering, or use the force option.", "id": "bf624927-cf64-4f4b-8b7e-c024a4e682f6", "title": "To deregister a container instance from a cluster" } ], "DescribeClusters": [ { "input": { "clusters": [ "default" ] }, "output": { "clusters": [ { "clusterArn": "arn:aws:ecs:us-east-1:aws_account_id:cluster/default", "clusterName": "default", "status": "ACTIVE" } ], "failures": [ ] }, "comments": { "input": { }, "output": { } }, "description": "This example provides a description of the specified cluster in your default region.", "id": "ba88d100-9672-4231-80da-a4bd210bf728", "title": "To describe a cluster" } ], "DescribeContainerInstances": [ { "input": { "cluster": "default", "containerInstances": [ "f2756532-8f13-4d53-87c9-aed50dc94cd7" ] }, "output": { "containerInstances": [ { "agentConnected": true, "containerInstanceArn": "arn:aws:ecs:us-east-1:012345678910:container-instance/f2756532-8f13-4d53-87c9-aed50dc94cd7", "ec2InstanceId": "i-807f3249", "pendingTasksCount": 0, "registeredResources": [ { "name": "CPU", "type": "INTEGER", "doubleValue": 0.0, "integerValue": 2048, "longValue": 0 }, { "name": "MEMORY", "type": "INTEGER", "doubleValue": 0.0, "integerValue": 3768, "longValue": 0 }, { "name": "PORTS", "type": "STRINGSET", "doubleValue": 0.0, "integerValue": 0, "longValue": 0, "stringSetValue": [ "2376", "22", "51678", "2375" ] } ], "remainingResources": [ { "name": "CPU", "type": "INTEGER", "doubleValue": 0.0, "integerValue": 1948, "longValue": 0 }, { "name": "MEMORY", "type": "INTEGER", "doubleValue": 0.0, "integerValue": 3668, "longValue": 0 }, { "name": "PORTS", "type": "STRINGSET", "doubleValue": 0.0, "integerValue": 0, "longValue": 0, "stringSetValue": [ "2376", "22", "80", "51678", "2375" ] } ], "runningTasksCount": 1, "status": "ACTIVE" } ], "failures": [ ] }, "comments": { "input": { }, "output": { } }, "description": "This example provides a description of the specified container instance in your default region, using the container instance UUID as an identifier.", "id": "c8f439de-eb27-4269-8ca7-2c0a7ba75ab0", "title": "To describe container instance" } ], "DescribeServices": [ { "input": { "services": [ "ecs-simple-service" ] }, "output": { "failures": [ ], "services": [ { "clusterArn": "arn:aws:ecs:us-east-1:012345678910:cluster/default", "createdAt": "2016-08-29T16:25:52.130Z", "deploymentConfiguration": { "maximumPercent": 200, "minimumHealthyPercent": 100 }, "deployments": [ { "createdAt": "2016-08-29T16:25:52.130Z", "desiredCount": 1, "id": "ecs-svc/9223370564341623665", "pendingCount": 0, "runningCount": 0, "status": "PRIMARY", "taskDefinition": "arn:aws:ecs:us-east-1:012345678910:task-definition/hello_world:6", "updatedAt": "2016-08-29T16:25:52.130Z" } ], "desiredCount": 1, "events": [ { "createdAt": "2016-08-29T16:25:58.520Z", "id": "38c285e5-d335-4b68-8b15-e46dedc8e88d", "message": "(service ecs-simple-service) was unable to place a task because no container instance met all of its requirements. The closest matching (container-instance 3f4de1c5-ffdd-4954-af7e-75b4be0c8841) is already using a port required by your task. For more information, see the Troubleshooting section of the Amazon ECS Developer Guide." } ], "loadBalancers": [ ], "pendingCount": 0, "runningCount": 0, "serviceArn": "arn:aws:ecs:us-east-1:012345678910:service/ecs-simple-service", "serviceName": "ecs-simple-service", "status": "ACTIVE", "taskDefinition": "arn:aws:ecs:us-east-1:012345678910:task-definition/hello_world:6" } ] }, "comments": { "input": { }, "output": { "services[0].events[0].message": "In this example, there is a service event that shows unavailable cluster resources." } }, "description": "This example provides descriptive information about the service named ``ecs-simple-service``.", "id": "to-describe-a-service-1472513256350", "title": "To describe a service" } ], "DescribeTaskDefinition": [ { "input": { "taskDefinition": "hello_world:8" }, "output": { "taskDefinition": { "containerDefinitions": [ { "name": "wordpress", "cpu": 10, "environment": [ ], "essential": true, "image": "wordpress", "links": [ "mysql" ], "memory": 500, "mountPoints": [ ], "portMappings": [ { "containerPort": 80, "hostPort": 80 } ], "volumesFrom": [ ] }, { "name": "mysql", "cpu": 10, "environment": [ { "name": "MYSQL_ROOT_PASSWORD", "value": "password" } ], "essential": true, "image": "mysql", "memory": 500, "mountPoints": [ ], "portMappings": [ ], "volumesFrom": [ ] } ], "family": "hello_world", "revision": 8, "taskDefinitionArn": "arn:aws:ecs:us-east-1::task-definition/hello_world:8", "volumes": [ ] } }, "comments": { "input": { }, "output": { } }, "description": "This example provides a description of the specified task definition.", "id": "4c21eeb1-f1da-4a08-8c44-297fc8d0ea88", "title": "To describe a task definition" } ], "DescribeTasks": [ { "input": { "tasks": [ "c5cba4eb-5dad-405e-96db-71ef8eefe6a8" ] }, "output": { "failures": [ ], "tasks": [ { "clusterArn": "arn:aws:ecs:::cluster/default", "containerInstanceArn": "arn:aws:ecs:::container-instance/18f9eda5-27d7-4c19-b133-45adc516e8fb", "containers": [ { "name": "ecs-demo", "containerArn": "arn:aws:ecs:::container/7c01765b-c588-45b3-8290-4ba38bd6c5a6", "lastStatus": "RUNNING", "networkBindings": [ { "bindIP": "0.0.0.0", "containerPort": 80, "hostPort": 80 } ], "taskArn": "arn:aws:ecs:::task/c5cba4eb-5dad-405e-96db-71ef8eefe6a8" } ], "desiredStatus": "RUNNING", "lastStatus": "RUNNING", "overrides": { "containerOverrides": [ { "name": "ecs-demo" } ] }, "startedBy": "ecs-svc/9223370608528463088", "taskArn": "arn:aws:ecs:::task/c5cba4eb-5dad-405e-96db-71ef8eefe6a8", "taskDefinitionArn": "arn:aws:ecs:::task-definition/amazon-ecs-sample:1" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example provides a description of the specified task, using the task UUID as an identifier.", "id": "a90b0cde-f965-4946-b55e-cfd8cc54e827", "title": "To describe a task" } ], "ListClusters": [ { "input": { }, "output": { "clusterArns": [ "arn:aws:ecs:us-east-1::cluster/test", "arn:aws:ecs:us-east-1::cluster/default" ] }, "comments": { "input": { }, "output": { } }, "description": "This example lists all of your available clusters in your default region.", "id": "e337d059-134f-4125-ba8e-4f499139facf", "title": "To list your available clusters" } ], "ListContainerInstances": [ { "input": { "cluster": "default" }, "output": { "containerInstanceArns": [ "arn:aws:ecs:us-east-1::container-instance/f6bbb147-5370-4ace-8c73-c7181ded911f", "arn:aws:ecs:us-east-1::container-instance/ffe3d344-77e2-476c-a4d0-bf560ad50acb" ] }, "comments": { "input": { }, "output": { } }, "description": "This example lists all of your available container instances in the specified cluster in your default region.", "id": "62a82a94-713c-4e18-8420-1d2b2ba9d484", "title": "To list your available container instances in a cluster" } ], "ListServices": [ { "input": { }, "output": { "serviceArns": [ "arn:aws:ecs:us-east-1:012345678910:service/my-http-service" ] }, "comments": { "input": { }, "output": { } }, "description": "This example lists the services running in the default cluster for an account.", "id": "1d9a8037-4e0e-4234-a528-609656809a3a", "title": "To list the services in a cluster" } ], "ListTaskDefinitionFamilies": [ { "input": { }, "output": { "families": [ "node-js-app", "web-timer", "hpcc", "hpcc-c4-8xlarge" ] }, "comments": { "input": { }, "output": { } }, "description": "This example lists all of your registered task definition families.", "id": "b5c89769-1d94-4ca2-a79e-8069103c7f75", "title": "To list your registered task definition families" }, { "input": { "familyPrefix": "hpcc" }, "output": { "families": [ "hpcc", "hpcc-c4-8xlarge" ] }, "comments": { "input": { }, "output": { } }, "description": "This example lists the task definition revisions that start with \"hpcc\".", "id": "8a4cf9a6-42c1-4fe3-852d-99ac8968e11b", "title": "To filter your registered task definition families" } ], "ListTaskDefinitions": [ { "input": { }, "output": { "taskDefinitionArns": [ "arn:aws:ecs:us-east-1::task-definition/sleep300:2", "arn:aws:ecs:us-east-1::task-definition/sleep360:1", "arn:aws:ecs:us-east-1::task-definition/wordpress:3", "arn:aws:ecs:us-east-1::task-definition/wordpress:4", "arn:aws:ecs:us-east-1::task-definition/wordpress:5", "arn:aws:ecs:us-east-1::task-definition/wordpress:6" ] }, "comments": { "input": { }, "output": { } }, "description": "This example lists all of your registered task definitions.", "id": "b381ebaf-7eba-4d60-b99b-7f6ae49d3d60", "title": "To list your registered task definitions" }, { "input": { "familyPrefix": "wordpress" }, "output": { "taskDefinitionArns": [ "arn:aws:ecs:us-east-1::task-definition/wordpress:3", "arn:aws:ecs:us-east-1::task-definition/wordpress:4", "arn:aws:ecs:us-east-1::task-definition/wordpress:5", "arn:aws:ecs:us-east-1::task-definition/wordpress:6" ] }, "comments": { "input": { }, "output": { } }, "description": "This example lists the task definition revisions of a specified family.", "id": "734e7afd-753a-4bc2-85d0-badddce10910", "title": "To list the registered task definitions in a family" } ], "ListTasks": [ { "input": { "cluster": "default" }, "output": { "taskArns": [ "arn:aws:ecs:us-east-1:012345678910:task/0cc43cdb-3bee-4407-9c26-c0e6ea5bee84", "arn:aws:ecs:us-east-1:012345678910:task/6b809ef6-c67e-4467-921f-ee261c15a0a1" ] }, "comments": { "input": { }, "output": { } }, "description": "This example lists all of the tasks in a cluster.", "id": "9a6ec707-1a77-45d0-b2eb-516b5dd9e924", "title": "To list the tasks in a cluster" }, { "input": { "cluster": "default", "containerInstance": "f6bbb147-5370-4ace-8c73-c7181ded911f" }, "output": { "taskArns": [ "arn:aws:ecs:us-east-1:012345678910:task/0cc43cdb-3bee-4407-9c26-c0e6ea5bee84" ] }, "comments": { "input": { }, "output": { } }, "description": "This example lists the tasks of a specified container instance. Specifying a ``containerInstance`` value limits the results to tasks that belong to that container instance.", "id": "024bf3b7-9cbb-44e3-848f-9d074e1fecce", "title": "To list the tasks on a particular container instance" } ], "RegisterTaskDefinition": [ { "input": { "containerDefinitions": [ { "name": "sleep", "command": [ "sleep", "360" ], "cpu": 10, "essential": true, "image": "busybox", "memory": 10 } ], "family": "sleep360", "taskRoleArn": "", "volumes": [ ] }, "output": { "taskDefinition": { "containerDefinitions": [ { "name": "sleep", "command": [ "sleep", "360" ], "cpu": 10, "environment": [ ], "essential": true, "image": "busybox", "memory": 10, "mountPoints": [ ], "portMappings": [ ], "volumesFrom": [ ] } ], "family": "sleep360", "revision": 1, "taskDefinitionArn": "arn:aws:ecs:us-east-1::task-definition/sleep360:19", "volumes": [ ] } }, "comments": { "input": { }, "output": { } }, "description": "This example registers a task definition to the specified family.", "id": "to-register-a-task-definition-1470764550877", "title": "To register a task definition" } ], "RunTask": [ { "input": { "cluster": "default", "taskDefinition": "sleep360:1" }, "output": { "tasks": [ { "containerInstanceArn": "arn:aws:ecs:us-east-1::container-instance/ffe3d344-77e2-476c-a4d0-bf560ad50acb", "containers": [ { "name": "sleep", "containerArn": "arn:aws:ecs:us-east-1::container/58591c8e-be29-4ddf-95aa-ee459d4c59fd", "lastStatus": "PENDING", "taskArn": "arn:aws:ecs:us-east-1::task/a9f21ea7-c9f5-44b1-b8e6-b31f50ed33c0" } ], "desiredStatus": "RUNNING", "lastStatus": "PENDING", "overrides": { "containerOverrides": [ { "name": "sleep" } ] }, "taskArn": "arn:aws:ecs:us-east-1::task/a9f21ea7-c9f5-44b1-b8e6-b31f50ed33c0", "taskDefinitionArn": "arn:aws:ecs:us-east-1::task-definition/sleep360:1" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example runs the specified task definition on your default cluster.", "id": "6f238c83-a133-42cd-ab3d-abeca0560445", "title": "To run a task on your default cluster" } ], "UpdateService": [ { "input": { "service": "my-http-service", "taskDefinition": "amazon-ecs-sample" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example updates the my-http-service service to use the amazon-ecs-sample task definition.", "id": "cc9e8900-0cc2-44d2-8491-64d1d3d37887", "title": "To change the task definition used in a service" }, { "input": { "desiredCount": 10, "service": "my-http-service" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example updates the desired count of the my-http-service service to 10.", "id": "9581d6c5-02e3-4140-8cc1-5a4301586633", "title": "To change the number of tasks in a service" } ] } } aws-sdk-go-1.4.22/models/apis/ecs/2014-11-13/paginators-1.json000066400000000000000000000016741300374646400230120ustar00rootroot00000000000000{ "pagination": { "ListClusters": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults", "result_key": "clusterArns" }, "ListContainerInstances": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults", "result_key": "containerInstanceArns" }, "ListTaskDefinitions": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults", "result_key": "taskDefinitionArns" }, "ListTaskDefinitionFamilies": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults", "result_key": "families" }, "ListTasks": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults", "result_key": "taskArns" }, "ListServices": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults", "result_key": "serviceArns" } } } aws-sdk-go-1.4.22/models/apis/ecs/2014-11-13/waiters-2.json000066400000000000000000000043061300374646400223150ustar00rootroot00000000000000{ "version": 2, "waiters": { "TasksRunning": { "delay": 6, "operation": "DescribeTasks", "maxAttempts": 100, "acceptors": [ { "expected": "STOPPED", "matcher": "pathAny", "state": "failure", "argument": "tasks[].lastStatus" }, { "expected": "MISSING", "matcher": "pathAny", "state": "failure", "argument": "failures[].reason" }, { "expected": "RUNNING", "matcher": "pathAll", "state": "success", "argument": "tasks[].lastStatus" } ] }, "TasksStopped": { "delay": 6, "operation": "DescribeTasks", "maxAttempts": 100, "acceptors": [ { "expected": "STOPPED", "matcher": "pathAll", "state": "success", "argument": "tasks[].lastStatus" } ] }, "ServicesStable": { "delay": 15, "operation": "DescribeServices", "maxAttempts": 40, "acceptors": [ { "expected": "MISSING", "matcher": "pathAny", "state": "failure", "argument": "failures[].reason" }, { "expected": "DRAINING", "matcher": "pathAny", "state": "failure", "argument": "services[].status" }, { "expected": "INACTIVE", "matcher": "pathAny", "state": "failure", "argument": "services[].status" }, { "expected": true, "matcher": "path", "state": "success", "argument": "length(services[?!(length(deployments) == `1` && runningCount == desiredCount)]) == `0`" } ] }, "ServicesInactive": { "delay": 15, "operation": "DescribeServices", "maxAttempts": 40, "acceptors": [ { "expected": "MISSING", "matcher": "pathAny", "state": "failure", "argument": "failures[].reason" }, { "expected": "INACTIVE", "matcher": "pathAny", "state": "success", "argument": "services[].status" } ] } } } aws-sdk-go-1.4.22/models/apis/elasticache/000077500000000000000000000000001300374646400202475ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/elasticache/2015-02-02/000077500000000000000000000000001300374646400212745ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/elasticache/2015-02-02/api-2.json000066400000000000000000002151431300374646400231050ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-02-02", "endpointPrefix":"elasticache", "protocol":"query", "serviceFullName":"Amazon ElastiCache", "signatureVersion":"v4", "xmlNamespace":"http://elasticache.amazonaws.com/doc/2015-02-02/" }, "operations":{ "AddTagsToResource":{ "name":"AddTagsToResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsToResourceMessage"}, "output":{ "shape":"TagListMessage", "resultWrapper":"AddTagsToResourceResult" }, "errors":[ {"shape":"CacheClusterNotFoundFault"}, {"shape":"SnapshotNotFoundFault"}, {"shape":"TagQuotaPerResourceExceeded"}, {"shape":"InvalidARNFault"} ] }, "AuthorizeCacheSecurityGroupIngress":{ "name":"AuthorizeCacheSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AuthorizeCacheSecurityGroupIngressMessage"}, "output":{ "shape":"AuthorizeCacheSecurityGroupIngressResult", "resultWrapper":"AuthorizeCacheSecurityGroupIngressResult" }, "errors":[ {"shape":"CacheSecurityGroupNotFoundFault"}, {"shape":"InvalidCacheSecurityGroupStateFault"}, {"shape":"AuthorizationAlreadyExistsFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "CopySnapshot":{ "name":"CopySnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopySnapshotMessage"}, "output":{ "shape":"CopySnapshotResult", "resultWrapper":"CopySnapshotResult" }, "errors":[ {"shape":"SnapshotAlreadyExistsFault"}, {"shape":"SnapshotNotFoundFault"}, {"shape":"SnapshotQuotaExceededFault"}, {"shape":"InvalidSnapshotStateFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "CreateCacheCluster":{ "name":"CreateCacheCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateCacheClusterMessage"}, "output":{ "shape":"CreateCacheClusterResult", "resultWrapper":"CreateCacheClusterResult" }, "errors":[ {"shape":"ReplicationGroupNotFoundFault"}, {"shape":"InvalidReplicationGroupStateFault"}, {"shape":"CacheClusterAlreadyExistsFault"}, {"shape":"InsufficientCacheClusterCapacityFault"}, {"shape":"CacheSecurityGroupNotFoundFault"}, {"shape":"CacheSubnetGroupNotFoundFault"}, {"shape":"ClusterQuotaForCustomerExceededFault"}, {"shape":"NodeQuotaForClusterExceededFault"}, {"shape":"NodeQuotaForCustomerExceededFault"}, {"shape":"CacheParameterGroupNotFoundFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"TagQuotaPerResourceExceeded"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "CreateCacheParameterGroup":{ "name":"CreateCacheParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateCacheParameterGroupMessage"}, "output":{ "shape":"CreateCacheParameterGroupResult", "resultWrapper":"CreateCacheParameterGroupResult" }, "errors":[ {"shape":"CacheParameterGroupQuotaExceededFault"}, {"shape":"CacheParameterGroupAlreadyExistsFault"}, {"shape":"InvalidCacheParameterGroupStateFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "CreateCacheSecurityGroup":{ "name":"CreateCacheSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateCacheSecurityGroupMessage"}, "output":{ "shape":"CreateCacheSecurityGroupResult", "resultWrapper":"CreateCacheSecurityGroupResult" }, "errors":[ {"shape":"CacheSecurityGroupAlreadyExistsFault"}, {"shape":"CacheSecurityGroupQuotaExceededFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "CreateCacheSubnetGroup":{ "name":"CreateCacheSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateCacheSubnetGroupMessage"}, "output":{ "shape":"CreateCacheSubnetGroupResult", "resultWrapper":"CreateCacheSubnetGroupResult" }, "errors":[ {"shape":"CacheSubnetGroupAlreadyExistsFault"}, {"shape":"CacheSubnetGroupQuotaExceededFault"}, {"shape":"CacheSubnetQuotaExceededFault"}, {"shape":"InvalidSubnet"} ] }, "CreateReplicationGroup":{ "name":"CreateReplicationGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateReplicationGroupMessage"}, "output":{ "shape":"CreateReplicationGroupResult", "resultWrapper":"CreateReplicationGroupResult" }, "errors":[ {"shape":"CacheClusterNotFoundFault"}, {"shape":"InvalidCacheClusterStateFault"}, {"shape":"ReplicationGroupAlreadyExistsFault"}, {"shape":"InsufficientCacheClusterCapacityFault"}, {"shape":"CacheSecurityGroupNotFoundFault"}, {"shape":"CacheSubnetGroupNotFoundFault"}, {"shape":"ClusterQuotaForCustomerExceededFault"}, {"shape":"NodeQuotaForClusterExceededFault"}, {"shape":"NodeQuotaForCustomerExceededFault"}, {"shape":"CacheParameterGroupNotFoundFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"TagQuotaPerResourceExceeded"}, {"shape":"NodeGroupsPerReplicationGroupQuotaExceededFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "CreateSnapshot":{ "name":"CreateSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSnapshotMessage"}, "output":{ "shape":"CreateSnapshotResult", "resultWrapper":"CreateSnapshotResult" }, "errors":[ {"shape":"SnapshotAlreadyExistsFault"}, {"shape":"CacheClusterNotFoundFault"}, {"shape":"ReplicationGroupNotFoundFault"}, {"shape":"InvalidCacheClusterStateFault"}, {"shape":"InvalidReplicationGroupStateFault"}, {"shape":"SnapshotQuotaExceededFault"}, {"shape":"SnapshotFeatureNotSupportedFault"}, {"shape":"InvalidParameterCombinationException"}, {"shape":"InvalidParameterValueException"} ] }, "DeleteCacheCluster":{ "name":"DeleteCacheCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteCacheClusterMessage"}, "output":{ "shape":"DeleteCacheClusterResult", "resultWrapper":"DeleteCacheClusterResult" }, "errors":[ {"shape":"CacheClusterNotFoundFault"}, {"shape":"InvalidCacheClusterStateFault"}, {"shape":"SnapshotAlreadyExistsFault"}, {"shape":"SnapshotFeatureNotSupportedFault"}, {"shape":"SnapshotQuotaExceededFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "DeleteCacheParameterGroup":{ "name":"DeleteCacheParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteCacheParameterGroupMessage"}, "errors":[ {"shape":"InvalidCacheParameterGroupStateFault"}, {"shape":"CacheParameterGroupNotFoundFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "DeleteCacheSecurityGroup":{ "name":"DeleteCacheSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteCacheSecurityGroupMessage"}, "errors":[ {"shape":"InvalidCacheSecurityGroupStateFault"}, {"shape":"CacheSecurityGroupNotFoundFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "DeleteCacheSubnetGroup":{ "name":"DeleteCacheSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteCacheSubnetGroupMessage"}, "errors":[ {"shape":"CacheSubnetGroupInUse"}, {"shape":"CacheSubnetGroupNotFoundFault"} ] }, "DeleteReplicationGroup":{ "name":"DeleteReplicationGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteReplicationGroupMessage"}, "output":{ "shape":"DeleteReplicationGroupResult", "resultWrapper":"DeleteReplicationGroupResult" }, "errors":[ {"shape":"ReplicationGroupNotFoundFault"}, {"shape":"InvalidReplicationGroupStateFault"}, {"shape":"SnapshotAlreadyExistsFault"}, {"shape":"SnapshotFeatureNotSupportedFault"}, {"shape":"SnapshotQuotaExceededFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "DeleteSnapshot":{ "name":"DeleteSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSnapshotMessage"}, "output":{ "shape":"DeleteSnapshotResult", "resultWrapper":"DeleteSnapshotResult" }, "errors":[ {"shape":"SnapshotNotFoundFault"}, {"shape":"InvalidSnapshotStateFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "DescribeCacheClusters":{ "name":"DescribeCacheClusters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeCacheClustersMessage"}, "output":{ "shape":"CacheClusterMessage", "resultWrapper":"DescribeCacheClustersResult" }, "errors":[ {"shape":"CacheClusterNotFoundFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "DescribeCacheEngineVersions":{ "name":"DescribeCacheEngineVersions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeCacheEngineVersionsMessage"}, "output":{ "shape":"CacheEngineVersionMessage", "resultWrapper":"DescribeCacheEngineVersionsResult" } }, "DescribeCacheParameterGroups":{ "name":"DescribeCacheParameterGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeCacheParameterGroupsMessage"}, "output":{ "shape":"CacheParameterGroupsMessage", "resultWrapper":"DescribeCacheParameterGroupsResult" }, "errors":[ {"shape":"CacheParameterGroupNotFoundFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "DescribeCacheParameters":{ "name":"DescribeCacheParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeCacheParametersMessage"}, "output":{ "shape":"CacheParameterGroupDetails", "resultWrapper":"DescribeCacheParametersResult" }, "errors":[ {"shape":"CacheParameterGroupNotFoundFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "DescribeCacheSecurityGroups":{ "name":"DescribeCacheSecurityGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeCacheSecurityGroupsMessage"}, "output":{ "shape":"CacheSecurityGroupMessage", "resultWrapper":"DescribeCacheSecurityGroupsResult" }, "errors":[ {"shape":"CacheSecurityGroupNotFoundFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "DescribeCacheSubnetGroups":{ "name":"DescribeCacheSubnetGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeCacheSubnetGroupsMessage"}, "output":{ "shape":"CacheSubnetGroupMessage", "resultWrapper":"DescribeCacheSubnetGroupsResult" }, "errors":[ {"shape":"CacheSubnetGroupNotFoundFault"} ] }, "DescribeEngineDefaultParameters":{ "name":"DescribeEngineDefaultParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEngineDefaultParametersMessage"}, "output":{ "shape":"DescribeEngineDefaultParametersResult", "resultWrapper":"DescribeEngineDefaultParametersResult" }, "errors":[ {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "DescribeEvents":{ "name":"DescribeEvents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventsMessage"}, "output":{ "shape":"EventsMessage", "resultWrapper":"DescribeEventsResult" }, "errors":[ {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "DescribeReplicationGroups":{ "name":"DescribeReplicationGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReplicationGroupsMessage"}, "output":{ "shape":"ReplicationGroupMessage", "resultWrapper":"DescribeReplicationGroupsResult" }, "errors":[ {"shape":"ReplicationGroupNotFoundFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "DescribeReservedCacheNodes":{ "name":"DescribeReservedCacheNodes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedCacheNodesMessage"}, "output":{ "shape":"ReservedCacheNodeMessage", "resultWrapper":"DescribeReservedCacheNodesResult" }, "errors":[ {"shape":"ReservedCacheNodeNotFoundFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "DescribeReservedCacheNodesOfferings":{ "name":"DescribeReservedCacheNodesOfferings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedCacheNodesOfferingsMessage"}, "output":{ "shape":"ReservedCacheNodesOfferingMessage", "resultWrapper":"DescribeReservedCacheNodesOfferingsResult" }, "errors":[ {"shape":"ReservedCacheNodesOfferingNotFoundFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "DescribeSnapshots":{ "name":"DescribeSnapshots", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSnapshotsMessage"}, "output":{ "shape":"DescribeSnapshotsListMessage", "resultWrapper":"DescribeSnapshotsResult" }, "errors":[ {"shape":"CacheClusterNotFoundFault"}, {"shape":"SnapshotNotFoundFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "ListAllowedNodeTypeModifications":{ "name":"ListAllowedNodeTypeModifications", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListAllowedNodeTypeModificationsMessage"}, "output":{ "shape":"AllowedNodeTypeModificationsMessage", "resultWrapper":"ListAllowedNodeTypeModificationsResult" }, "errors":[ {"shape":"CacheClusterNotFoundFault"}, {"shape":"ReplicationGroupNotFoundFault"}, {"shape":"InvalidParameterCombinationException"}, {"shape":"InvalidParameterValueException"} ] }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTagsForResourceMessage"}, "output":{ "shape":"TagListMessage", "resultWrapper":"ListTagsForResourceResult" }, "errors":[ {"shape":"CacheClusterNotFoundFault"}, {"shape":"SnapshotNotFoundFault"}, {"shape":"InvalidARNFault"} ] }, "ModifyCacheCluster":{ "name":"ModifyCacheCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyCacheClusterMessage"}, "output":{ "shape":"ModifyCacheClusterResult", "resultWrapper":"ModifyCacheClusterResult" }, "errors":[ {"shape":"InvalidCacheClusterStateFault"}, {"shape":"InvalidCacheSecurityGroupStateFault"}, {"shape":"InsufficientCacheClusterCapacityFault"}, {"shape":"CacheClusterNotFoundFault"}, {"shape":"NodeQuotaForClusterExceededFault"}, {"shape":"NodeQuotaForCustomerExceededFault"}, {"shape":"CacheSecurityGroupNotFoundFault"}, {"shape":"CacheParameterGroupNotFoundFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "ModifyCacheParameterGroup":{ "name":"ModifyCacheParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyCacheParameterGroupMessage"}, "output":{ "shape":"CacheParameterGroupNameMessage", "resultWrapper":"ModifyCacheParameterGroupResult" }, "errors":[ {"shape":"CacheParameterGroupNotFoundFault"}, {"shape":"InvalidCacheParameterGroupStateFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "ModifyCacheSubnetGroup":{ "name":"ModifyCacheSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyCacheSubnetGroupMessage"}, "output":{ "shape":"ModifyCacheSubnetGroupResult", "resultWrapper":"ModifyCacheSubnetGroupResult" }, "errors":[ {"shape":"CacheSubnetGroupNotFoundFault"}, {"shape":"CacheSubnetQuotaExceededFault"}, {"shape":"SubnetInUse"}, {"shape":"InvalidSubnet"} ] }, "ModifyReplicationGroup":{ "name":"ModifyReplicationGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyReplicationGroupMessage"}, "output":{ "shape":"ModifyReplicationGroupResult", "resultWrapper":"ModifyReplicationGroupResult" }, "errors":[ {"shape":"ReplicationGroupNotFoundFault"}, {"shape":"InvalidReplicationGroupStateFault"}, {"shape":"InvalidCacheClusterStateFault"}, {"shape":"InvalidCacheSecurityGroupStateFault"}, {"shape":"InsufficientCacheClusterCapacityFault"}, {"shape":"CacheClusterNotFoundFault"}, {"shape":"NodeQuotaForClusterExceededFault"}, {"shape":"NodeQuotaForCustomerExceededFault"}, {"shape":"CacheSecurityGroupNotFoundFault"}, {"shape":"CacheParameterGroupNotFoundFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "PurchaseReservedCacheNodesOffering":{ "name":"PurchaseReservedCacheNodesOffering", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PurchaseReservedCacheNodesOfferingMessage"}, "output":{ "shape":"PurchaseReservedCacheNodesOfferingResult", "resultWrapper":"PurchaseReservedCacheNodesOfferingResult" }, "errors":[ {"shape":"ReservedCacheNodesOfferingNotFoundFault"}, {"shape":"ReservedCacheNodeAlreadyExistsFault"}, {"shape":"ReservedCacheNodeQuotaExceededFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "RebootCacheCluster":{ "name":"RebootCacheCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RebootCacheClusterMessage"}, "output":{ "shape":"RebootCacheClusterResult", "resultWrapper":"RebootCacheClusterResult" }, "errors":[ {"shape":"InvalidCacheClusterStateFault"}, {"shape":"CacheClusterNotFoundFault"} ] }, "RemoveTagsFromResource":{ "name":"RemoveTagsFromResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsFromResourceMessage"}, "output":{ "shape":"TagListMessage", "resultWrapper":"RemoveTagsFromResourceResult" }, "errors":[ {"shape":"CacheClusterNotFoundFault"}, {"shape":"SnapshotNotFoundFault"}, {"shape":"InvalidARNFault"}, {"shape":"TagNotFoundFault"} ] }, "ResetCacheParameterGroup":{ "name":"ResetCacheParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetCacheParameterGroupMessage"}, "output":{ "shape":"CacheParameterGroupNameMessage", "resultWrapper":"ResetCacheParameterGroupResult" }, "errors":[ {"shape":"InvalidCacheParameterGroupStateFault"}, {"shape":"CacheParameterGroupNotFoundFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] }, "RevokeCacheSecurityGroupIngress":{ "name":"RevokeCacheSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RevokeCacheSecurityGroupIngressMessage"}, "output":{ "shape":"RevokeCacheSecurityGroupIngressResult", "resultWrapper":"RevokeCacheSecurityGroupIngressResult" }, "errors":[ {"shape":"CacheSecurityGroupNotFoundFault"}, {"shape":"AuthorizationNotFoundFault"}, {"shape":"InvalidCacheSecurityGroupStateFault"}, {"shape":"InvalidParameterValueException"}, {"shape":"InvalidParameterCombinationException"} ] } }, "shapes":{ "AZMode":{ "type":"string", "enum":[ "single-az", "cross-az" ] }, "AddTagsToResourceMessage":{ "type":"structure", "required":[ "ResourceName", "Tags" ], "members":{ "ResourceName":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "AllowedNodeTypeModificationsMessage":{ "type":"structure", "members":{ "ScaleUpModifications":{"shape":"NodeTypeList"} } }, "AuthorizationAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "AuthorizationNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "AuthorizeCacheSecurityGroupIngressMessage":{ "type":"structure", "required":[ "CacheSecurityGroupName", "EC2SecurityGroupName", "EC2SecurityGroupOwnerId" ], "members":{ "CacheSecurityGroupName":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "AuthorizeCacheSecurityGroupIngressResult":{ "type":"structure", "members":{ "CacheSecurityGroup":{"shape":"CacheSecurityGroup"} } }, "AutomaticFailoverStatus":{ "type":"string", "enum":[ "enabled", "disabled", "enabling", "disabling" ] }, "AvailabilityZone":{ "type":"structure", "members":{ "Name":{"shape":"String"} }, "wrapper":true }, "AvailabilityZonesList":{ "type":"list", "member":{ "shape":"String", "locationName":"AvailabilityZone" } }, "AwsQueryErrorMessage":{"type":"string"}, "Boolean":{"type":"boolean"}, "BooleanOptional":{"type":"boolean"}, "CacheCluster":{ "type":"structure", "members":{ "CacheClusterId":{"shape":"String"}, "ConfigurationEndpoint":{"shape":"Endpoint"}, "ClientDownloadLandingPage":{"shape":"String"}, "CacheNodeType":{"shape":"String"}, "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "CacheClusterStatus":{"shape":"String"}, "NumCacheNodes":{"shape":"IntegerOptional"}, "PreferredAvailabilityZone":{"shape":"String"}, "CacheClusterCreateTime":{"shape":"TStamp"}, "PreferredMaintenanceWindow":{"shape":"String"}, "PendingModifiedValues":{"shape":"PendingModifiedValues"}, "NotificationConfiguration":{"shape":"NotificationConfiguration"}, "CacheSecurityGroups":{"shape":"CacheSecurityGroupMembershipList"}, "CacheParameterGroup":{"shape":"CacheParameterGroupStatus"}, "CacheSubnetGroupName":{"shape":"String"}, "CacheNodes":{"shape":"CacheNodeList"}, "AutoMinorVersionUpgrade":{"shape":"Boolean"}, "SecurityGroups":{"shape":"SecurityGroupMembershipList"}, "ReplicationGroupId":{"shape":"String"}, "SnapshotRetentionLimit":{"shape":"IntegerOptional"}, "SnapshotWindow":{"shape":"String"} }, "wrapper":true }, "CacheClusterAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"CacheClusterAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "CacheClusterList":{ "type":"list", "member":{ "shape":"CacheCluster", "locationName":"CacheCluster" } }, "CacheClusterMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "CacheClusters":{"shape":"CacheClusterList"} } }, "CacheClusterNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"CacheClusterNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "CacheEngineVersion":{ "type":"structure", "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "CacheParameterGroupFamily":{"shape":"String"}, "CacheEngineDescription":{"shape":"String"}, "CacheEngineVersionDescription":{"shape":"String"} } }, "CacheEngineVersionList":{ "type":"list", "member":{ "shape":"CacheEngineVersion", "locationName":"CacheEngineVersion" } }, "CacheEngineVersionMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "CacheEngineVersions":{"shape":"CacheEngineVersionList"} } }, "CacheNode":{ "type":"structure", "members":{ "CacheNodeId":{"shape":"String"}, "CacheNodeStatus":{"shape":"String"}, "CacheNodeCreateTime":{"shape":"TStamp"}, "Endpoint":{"shape":"Endpoint"}, "ParameterGroupStatus":{"shape":"String"}, "SourceCacheNodeId":{"shape":"String"}, "CustomerAvailabilityZone":{"shape":"String"} } }, "CacheNodeIdsList":{ "type":"list", "member":{ "shape":"String", "locationName":"CacheNodeId" } }, "CacheNodeList":{ "type":"list", "member":{ "shape":"CacheNode", "locationName":"CacheNode" } }, "CacheNodeTypeSpecificParameter":{ "type":"structure", "members":{ "ParameterName":{"shape":"String"}, "Description":{"shape":"String"}, "Source":{"shape":"String"}, "DataType":{"shape":"String"}, "AllowedValues":{"shape":"String"}, "IsModifiable":{"shape":"Boolean"}, "MinimumEngineVersion":{"shape":"String"}, "CacheNodeTypeSpecificValues":{"shape":"CacheNodeTypeSpecificValueList"}, "ChangeType":{"shape":"ChangeType"} } }, "CacheNodeTypeSpecificParametersList":{ "type":"list", "member":{ "shape":"CacheNodeTypeSpecificParameter", "locationName":"CacheNodeTypeSpecificParameter" } }, "CacheNodeTypeSpecificValue":{ "type":"structure", "members":{ "CacheNodeType":{"shape":"String"}, "Value":{"shape":"String"} } }, "CacheNodeTypeSpecificValueList":{ "type":"list", "member":{ "shape":"CacheNodeTypeSpecificValue", "locationName":"CacheNodeTypeSpecificValue" } }, "CacheParameterGroup":{ "type":"structure", "members":{ "CacheParameterGroupName":{"shape":"String"}, "CacheParameterGroupFamily":{"shape":"String"}, "Description":{"shape":"String"} }, "wrapper":true }, "CacheParameterGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"CacheParameterGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "CacheParameterGroupDetails":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "Parameters":{"shape":"ParametersList"}, "CacheNodeTypeSpecificParameters":{"shape":"CacheNodeTypeSpecificParametersList"} } }, "CacheParameterGroupList":{ "type":"list", "member":{ "shape":"CacheParameterGroup", "locationName":"CacheParameterGroup" } }, "CacheParameterGroupNameMessage":{ "type":"structure", "members":{ "CacheParameterGroupName":{"shape":"String"} } }, "CacheParameterGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"CacheParameterGroupNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "CacheParameterGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"CacheParameterGroupQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "CacheParameterGroupStatus":{ "type":"structure", "members":{ "CacheParameterGroupName":{"shape":"String"}, "ParameterApplyStatus":{"shape":"String"}, "CacheNodeIdsToReboot":{"shape":"CacheNodeIdsList"} } }, "CacheParameterGroupsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "CacheParameterGroups":{"shape":"CacheParameterGroupList"} } }, "CacheSecurityGroup":{ "type":"structure", "members":{ "OwnerId":{"shape":"String"}, "CacheSecurityGroupName":{"shape":"String"}, "Description":{"shape":"String"}, "EC2SecurityGroups":{"shape":"EC2SecurityGroupList"} }, "wrapper":true }, "CacheSecurityGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"CacheSecurityGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "CacheSecurityGroupMembership":{ "type":"structure", "members":{ "CacheSecurityGroupName":{"shape":"String"}, "Status":{"shape":"String"} } }, "CacheSecurityGroupMembershipList":{ "type":"list", "member":{ "shape":"CacheSecurityGroupMembership", "locationName":"CacheSecurityGroup" } }, "CacheSecurityGroupMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "CacheSecurityGroups":{"shape":"CacheSecurityGroups"} } }, "CacheSecurityGroupNameList":{ "type":"list", "member":{ "shape":"String", "locationName":"CacheSecurityGroupName" } }, "CacheSecurityGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"CacheSecurityGroupNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "CacheSecurityGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"QuotaExceeded.CacheSecurityGroup", "httpStatusCode":400, "senderFault":true }, "exception":true }, "CacheSecurityGroups":{ "type":"list", "member":{ "shape":"CacheSecurityGroup", "locationName":"CacheSecurityGroup" } }, "CacheSubnetGroup":{ "type":"structure", "members":{ "CacheSubnetGroupName":{"shape":"String"}, "CacheSubnetGroupDescription":{"shape":"String"}, "VpcId":{"shape":"String"}, "Subnets":{"shape":"SubnetList"} }, "wrapper":true }, "CacheSubnetGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"CacheSubnetGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "CacheSubnetGroupInUse":{ "type":"structure", "members":{ }, "error":{ "code":"CacheSubnetGroupInUse", "httpStatusCode":400, "senderFault":true }, "exception":true }, "CacheSubnetGroupMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "CacheSubnetGroups":{"shape":"CacheSubnetGroups"} } }, "CacheSubnetGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"CacheSubnetGroupNotFoundFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "CacheSubnetGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"CacheSubnetGroupQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "CacheSubnetGroups":{ "type":"list", "member":{ "shape":"CacheSubnetGroup", "locationName":"CacheSubnetGroup" } }, "CacheSubnetQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"CacheSubnetQuotaExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ChangeType":{ "type":"string", "enum":[ "immediate", "requires-reboot" ] }, "ClusterIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"ClusterId" } }, "ClusterQuotaForCustomerExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"ClusterQuotaForCustomerExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "CopySnapshotMessage":{ "type":"structure", "required":[ "SourceSnapshotName", "TargetSnapshotName" ], "members":{ "SourceSnapshotName":{"shape":"String"}, "TargetSnapshotName":{"shape":"String"}, "TargetBucket":{"shape":"String"} } }, "CopySnapshotResult":{ "type":"structure", "members":{ "Snapshot":{"shape":"Snapshot"} } }, "CreateCacheClusterMessage":{ "type":"structure", "required":["CacheClusterId"], "members":{ "CacheClusterId":{"shape":"String"}, "ReplicationGroupId":{"shape":"String"}, "AZMode":{"shape":"AZMode"}, "PreferredAvailabilityZone":{"shape":"String"}, "PreferredAvailabilityZones":{"shape":"PreferredAvailabilityZoneList"}, "NumCacheNodes":{"shape":"IntegerOptional"}, "CacheNodeType":{"shape":"String"}, "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "CacheParameterGroupName":{"shape":"String"}, "CacheSubnetGroupName":{"shape":"String"}, "CacheSecurityGroupNames":{"shape":"CacheSecurityGroupNameList"}, "SecurityGroupIds":{"shape":"SecurityGroupIdsList"}, "Tags":{"shape":"TagList"}, "SnapshotArns":{"shape":"SnapshotArnsList"}, "SnapshotName":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "NotificationTopicArn":{"shape":"String"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "SnapshotRetentionLimit":{"shape":"IntegerOptional"}, "SnapshotWindow":{"shape":"String"} } }, "CreateCacheClusterResult":{ "type":"structure", "members":{ "CacheCluster":{"shape":"CacheCluster"} } }, "CreateCacheParameterGroupMessage":{ "type":"structure", "required":[ "CacheParameterGroupName", "CacheParameterGroupFamily", "Description" ], "members":{ "CacheParameterGroupName":{"shape":"String"}, "CacheParameterGroupFamily":{"shape":"String"}, "Description":{"shape":"String"} } }, "CreateCacheParameterGroupResult":{ "type":"structure", "members":{ "CacheParameterGroup":{"shape":"CacheParameterGroup"} } }, "CreateCacheSecurityGroupMessage":{ "type":"structure", "required":[ "CacheSecurityGroupName", "Description" ], "members":{ "CacheSecurityGroupName":{"shape":"String"}, "Description":{"shape":"String"} } }, "CreateCacheSecurityGroupResult":{ "type":"structure", "members":{ "CacheSecurityGroup":{"shape":"CacheSecurityGroup"} } }, "CreateCacheSubnetGroupMessage":{ "type":"structure", "required":[ "CacheSubnetGroupName", "CacheSubnetGroupDescription", "SubnetIds" ], "members":{ "CacheSubnetGroupName":{"shape":"String"}, "CacheSubnetGroupDescription":{"shape":"String"}, "SubnetIds":{"shape":"SubnetIdentifierList"} } }, "CreateCacheSubnetGroupResult":{ "type":"structure", "members":{ "CacheSubnetGroup":{"shape":"CacheSubnetGroup"} } }, "CreateReplicationGroupMessage":{ "type":"structure", "required":[ "ReplicationGroupId", "ReplicationGroupDescription" ], "members":{ "ReplicationGroupId":{"shape":"String"}, "ReplicationGroupDescription":{"shape":"String"}, "PrimaryClusterId":{"shape":"String"}, "AutomaticFailoverEnabled":{"shape":"BooleanOptional"}, "NumCacheClusters":{"shape":"IntegerOptional"}, "PreferredCacheClusterAZs":{"shape":"AvailabilityZonesList"}, "NumNodeGroups":{"shape":"IntegerOptional"}, "ReplicasPerNodeGroup":{"shape":"IntegerOptional"}, "NodeGroupConfiguration":{"shape":"NodeGroupConfigurationList"}, "CacheNodeType":{"shape":"String"}, "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "CacheParameterGroupName":{"shape":"String"}, "CacheSubnetGroupName":{"shape":"String"}, "CacheSecurityGroupNames":{"shape":"CacheSecurityGroupNameList"}, "SecurityGroupIds":{"shape":"SecurityGroupIdsList"}, "Tags":{"shape":"TagList"}, "SnapshotArns":{"shape":"SnapshotArnsList"}, "SnapshotName":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "NotificationTopicArn":{"shape":"String"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "SnapshotRetentionLimit":{"shape":"IntegerOptional"}, "SnapshotWindow":{"shape":"String"} } }, "CreateReplicationGroupResult":{ "type":"structure", "members":{ "ReplicationGroup":{"shape":"ReplicationGroup"} } }, "CreateSnapshotMessage":{ "type":"structure", "required":["SnapshotName"], "members":{ "ReplicationGroupId":{"shape":"String"}, "CacheClusterId":{"shape":"String"}, "SnapshotName":{"shape":"String"} } }, "CreateSnapshotResult":{ "type":"structure", "members":{ "Snapshot":{"shape":"Snapshot"} } }, "DeleteCacheClusterMessage":{ "type":"structure", "required":["CacheClusterId"], "members":{ "CacheClusterId":{"shape":"String"}, "FinalSnapshotIdentifier":{"shape":"String"} } }, "DeleteCacheClusterResult":{ "type":"structure", "members":{ "CacheCluster":{"shape":"CacheCluster"} } }, "DeleteCacheParameterGroupMessage":{ "type":"structure", "required":["CacheParameterGroupName"], "members":{ "CacheParameterGroupName":{"shape":"String"} } }, "DeleteCacheSecurityGroupMessage":{ "type":"structure", "required":["CacheSecurityGroupName"], "members":{ "CacheSecurityGroupName":{"shape":"String"} } }, "DeleteCacheSubnetGroupMessage":{ "type":"structure", "required":["CacheSubnetGroupName"], "members":{ "CacheSubnetGroupName":{"shape":"String"} } }, "DeleteReplicationGroupMessage":{ "type":"structure", "required":["ReplicationGroupId"], "members":{ "ReplicationGroupId":{"shape":"String"}, "RetainPrimaryCluster":{"shape":"BooleanOptional"}, "FinalSnapshotIdentifier":{"shape":"String"} } }, "DeleteReplicationGroupResult":{ "type":"structure", "members":{ "ReplicationGroup":{"shape":"ReplicationGroup"} } }, "DeleteSnapshotMessage":{ "type":"structure", "required":["SnapshotName"], "members":{ "SnapshotName":{"shape":"String"} } }, "DeleteSnapshotResult":{ "type":"structure", "members":{ "Snapshot":{"shape":"Snapshot"} } }, "DescribeCacheClustersMessage":{ "type":"structure", "members":{ "CacheClusterId":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "ShowCacheNodeInfo":{"shape":"BooleanOptional"} } }, "DescribeCacheEngineVersionsMessage":{ "type":"structure", "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "CacheParameterGroupFamily":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "DefaultOnly":{"shape":"Boolean"} } }, "DescribeCacheParameterGroupsMessage":{ "type":"structure", "members":{ "CacheParameterGroupName":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeCacheParametersMessage":{ "type":"structure", "required":["CacheParameterGroupName"], "members":{ "CacheParameterGroupName":{"shape":"String"}, "Source":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeCacheSecurityGroupsMessage":{ "type":"structure", "members":{ "CacheSecurityGroupName":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeCacheSubnetGroupsMessage":{ "type":"structure", "members":{ "CacheSubnetGroupName":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEngineDefaultParametersMessage":{ "type":"structure", "required":["CacheParameterGroupFamily"], "members":{ "CacheParameterGroupFamily":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEngineDefaultParametersResult":{ "type":"structure", "members":{ "EngineDefaults":{"shape":"EngineDefaults"} } }, "DescribeEventsMessage":{ "type":"structure", "members":{ "SourceIdentifier":{"shape":"String"}, "SourceType":{"shape":"SourceType"}, "StartTime":{"shape":"TStamp"}, "EndTime":{"shape":"TStamp"}, "Duration":{"shape":"IntegerOptional"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeReplicationGroupsMessage":{ "type":"structure", "members":{ "ReplicationGroupId":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeReservedCacheNodesMessage":{ "type":"structure", "members":{ "ReservedCacheNodeId":{"shape":"String"}, "ReservedCacheNodesOfferingId":{"shape":"String"}, "CacheNodeType":{"shape":"String"}, "Duration":{"shape":"String"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeReservedCacheNodesOfferingsMessage":{ "type":"structure", "members":{ "ReservedCacheNodesOfferingId":{"shape":"String"}, "CacheNodeType":{"shape":"String"}, "Duration":{"shape":"String"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeSnapshotsListMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "Snapshots":{"shape":"SnapshotList"} } }, "DescribeSnapshotsMessage":{ "type":"structure", "members":{ "ReplicationGroupId":{"shape":"String"}, "CacheClusterId":{"shape":"String"}, "SnapshotName":{"shape":"String"}, "SnapshotSource":{"shape":"String"}, "Marker":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "ShowNodeGroupConfig":{"shape":"BooleanOptional"} } }, "Double":{"type":"double"}, "EC2SecurityGroup":{ "type":"structure", "members":{ "Status":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "EC2SecurityGroupList":{ "type":"list", "member":{ "shape":"EC2SecurityGroup", "locationName":"EC2SecurityGroup" } }, "Endpoint":{ "type":"structure", "members":{ "Address":{"shape":"String"}, "Port":{"shape":"Integer"} } }, "EngineDefaults":{ "type":"structure", "members":{ "CacheParameterGroupFamily":{"shape":"String"}, "Marker":{"shape":"String"}, "Parameters":{"shape":"ParametersList"}, "CacheNodeTypeSpecificParameters":{"shape":"CacheNodeTypeSpecificParametersList"} }, "wrapper":true }, "Event":{ "type":"structure", "members":{ "SourceIdentifier":{"shape":"String"}, "SourceType":{"shape":"SourceType"}, "Message":{"shape":"String"}, "Date":{"shape":"TStamp"} } }, "EventList":{ "type":"list", "member":{ "shape":"Event", "locationName":"Event" } }, "EventsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "Events":{"shape":"EventList"} } }, "InsufficientCacheClusterCapacityFault":{ "type":"structure", "members":{ }, "error":{ "code":"InsufficientCacheClusterCapacity", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Integer":{"type":"integer"}, "IntegerOptional":{"type":"integer"}, "InvalidARNFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidARN", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidCacheClusterStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidCacheClusterState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidCacheParameterGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidCacheParameterGroupState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidCacheSecurityGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidCacheSecurityGroupState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidParameterCombinationException":{ "type":"structure", "members":{ "message":{"shape":"AwsQueryErrorMessage"} }, "error":{ "code":"InvalidParameterCombination", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidParameterValueException":{ "type":"structure", "members":{ "message":{"shape":"AwsQueryErrorMessage"} }, "error":{ "code":"InvalidParameterValue", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidReplicationGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidReplicationGroupState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidSnapshotStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidSnapshotState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidSubnet":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidSubnet", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidVPCNetworkStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidVPCNetworkStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "KeyList":{ "type":"list", "member":{"shape":"String"} }, "ListAllowedNodeTypeModificationsMessage":{ "type":"structure", "members":{ "CacheClusterId":{"shape":"String"}, "ReplicationGroupId":{"shape":"String"} } }, "ListTagsForResourceMessage":{ "type":"structure", "required":["ResourceName"], "members":{ "ResourceName":{"shape":"String"} } }, "ModifyCacheClusterMessage":{ "type":"structure", "required":["CacheClusterId"], "members":{ "CacheClusterId":{"shape":"String"}, "NumCacheNodes":{"shape":"IntegerOptional"}, "CacheNodeIdsToRemove":{"shape":"CacheNodeIdsList"}, "AZMode":{"shape":"AZMode"}, "NewAvailabilityZones":{"shape":"PreferredAvailabilityZoneList"}, "CacheSecurityGroupNames":{"shape":"CacheSecurityGroupNameList"}, "SecurityGroupIds":{"shape":"SecurityGroupIdsList"}, "PreferredMaintenanceWindow":{"shape":"String"}, "NotificationTopicArn":{"shape":"String"}, "CacheParameterGroupName":{"shape":"String"}, "NotificationTopicStatus":{"shape":"String"}, "ApplyImmediately":{"shape":"Boolean"}, "EngineVersion":{"shape":"String"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "SnapshotRetentionLimit":{"shape":"IntegerOptional"}, "SnapshotWindow":{"shape":"String"}, "CacheNodeType":{"shape":"String"} } }, "ModifyCacheClusterResult":{ "type":"structure", "members":{ "CacheCluster":{"shape":"CacheCluster"} } }, "ModifyCacheParameterGroupMessage":{ "type":"structure", "required":[ "CacheParameterGroupName", "ParameterNameValues" ], "members":{ "CacheParameterGroupName":{"shape":"String"}, "ParameterNameValues":{"shape":"ParameterNameValueList"} } }, "ModifyCacheSubnetGroupMessage":{ "type":"structure", "required":["CacheSubnetGroupName"], "members":{ "CacheSubnetGroupName":{"shape":"String"}, "CacheSubnetGroupDescription":{"shape":"String"}, "SubnetIds":{"shape":"SubnetIdentifierList"} } }, "ModifyCacheSubnetGroupResult":{ "type":"structure", "members":{ "CacheSubnetGroup":{"shape":"CacheSubnetGroup"} } }, "ModifyReplicationGroupMessage":{ "type":"structure", "required":["ReplicationGroupId"], "members":{ "ReplicationGroupId":{"shape":"String"}, "ReplicationGroupDescription":{"shape":"String"}, "PrimaryClusterId":{"shape":"String"}, "SnapshottingClusterId":{"shape":"String"}, "AutomaticFailoverEnabled":{"shape":"BooleanOptional"}, "CacheSecurityGroupNames":{"shape":"CacheSecurityGroupNameList"}, "SecurityGroupIds":{"shape":"SecurityGroupIdsList"}, "PreferredMaintenanceWindow":{"shape":"String"}, "NotificationTopicArn":{"shape":"String"}, "CacheParameterGroupName":{"shape":"String"}, "NotificationTopicStatus":{"shape":"String"}, "ApplyImmediately":{"shape":"Boolean"}, "EngineVersion":{"shape":"String"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "SnapshotRetentionLimit":{"shape":"IntegerOptional"}, "SnapshotWindow":{"shape":"String"}, "CacheNodeType":{"shape":"String"} } }, "ModifyReplicationGroupResult":{ "type":"structure", "members":{ "ReplicationGroup":{"shape":"ReplicationGroup"} } }, "NodeGroup":{ "type":"structure", "members":{ "NodeGroupId":{"shape":"String"}, "Status":{"shape":"String"}, "PrimaryEndpoint":{"shape":"Endpoint"}, "Slots":{"shape":"String"}, "NodeGroupMembers":{"shape":"NodeGroupMemberList"} } }, "NodeGroupConfiguration":{ "type":"structure", "members":{ "Slots":{"shape":"String"}, "ReplicaCount":{"shape":"IntegerOptional"}, "PrimaryAvailabilityZone":{"shape":"String"}, "ReplicaAvailabilityZones":{"shape":"AvailabilityZonesList"} } }, "NodeGroupConfigurationList":{ "type":"list", "member":{ "shape":"NodeGroupConfiguration", "locationName":"NodeGroupConfiguration" } }, "NodeGroupList":{ "type":"list", "member":{ "shape":"NodeGroup", "locationName":"NodeGroup" } }, "NodeGroupMember":{ "type":"structure", "members":{ "CacheClusterId":{"shape":"String"}, "CacheNodeId":{"shape":"String"}, "ReadEndpoint":{"shape":"Endpoint"}, "PreferredAvailabilityZone":{"shape":"String"}, "CurrentRole":{"shape":"String"} } }, "NodeGroupMemberList":{ "type":"list", "member":{ "shape":"NodeGroupMember", "locationName":"NodeGroupMember" } }, "NodeGroupsPerReplicationGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"NodeGroupsPerReplicationGroupQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "NodeQuotaForClusterExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"NodeQuotaForClusterExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "NodeQuotaForCustomerExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"NodeQuotaForCustomerExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "NodeSnapshot":{ "type":"structure", "members":{ "CacheClusterId":{"shape":"String"}, "NodeGroupId":{"shape":"String"}, "CacheNodeId":{"shape":"String"}, "NodeGroupConfiguration":{"shape":"NodeGroupConfiguration"}, "CacheSize":{"shape":"String"}, "CacheNodeCreateTime":{"shape":"TStamp"}, "SnapshotCreateTime":{"shape":"TStamp"} }, "wrapper":true }, "NodeSnapshotList":{ "type":"list", "member":{ "shape":"NodeSnapshot", "locationName":"NodeSnapshot" } }, "NodeTypeList":{ "type":"list", "member":{"shape":"String"} }, "NotificationConfiguration":{ "type":"structure", "members":{ "TopicArn":{"shape":"String"}, "TopicStatus":{"shape":"String"} } }, "Parameter":{ "type":"structure", "members":{ "ParameterName":{"shape":"String"}, "ParameterValue":{"shape":"String"}, "Description":{"shape":"String"}, "Source":{"shape":"String"}, "DataType":{"shape":"String"}, "AllowedValues":{"shape":"String"}, "IsModifiable":{"shape":"Boolean"}, "MinimumEngineVersion":{"shape":"String"}, "ChangeType":{"shape":"ChangeType"} } }, "ParameterNameValue":{ "type":"structure", "members":{ "ParameterName":{"shape":"String"}, "ParameterValue":{"shape":"String"} } }, "ParameterNameValueList":{ "type":"list", "member":{ "shape":"ParameterNameValue", "locationName":"ParameterNameValue" } }, "ParametersList":{ "type":"list", "member":{ "shape":"Parameter", "locationName":"Parameter" } }, "PendingAutomaticFailoverStatus":{ "type":"string", "enum":[ "enabled", "disabled" ] }, "PendingModifiedValues":{ "type":"structure", "members":{ "NumCacheNodes":{"shape":"IntegerOptional"}, "CacheNodeIdsToRemove":{"shape":"CacheNodeIdsList"}, "EngineVersion":{"shape":"String"}, "CacheNodeType":{"shape":"String"} } }, "PreferredAvailabilityZoneList":{ "type":"list", "member":{ "shape":"String", "locationName":"PreferredAvailabilityZone" } }, "PurchaseReservedCacheNodesOfferingMessage":{ "type":"structure", "required":["ReservedCacheNodesOfferingId"], "members":{ "ReservedCacheNodesOfferingId":{"shape":"String"}, "ReservedCacheNodeId":{"shape":"String"}, "CacheNodeCount":{"shape":"IntegerOptional"} } }, "PurchaseReservedCacheNodesOfferingResult":{ "type":"structure", "members":{ "ReservedCacheNode":{"shape":"ReservedCacheNode"} } }, "RebootCacheClusterMessage":{ "type":"structure", "required":[ "CacheClusterId", "CacheNodeIdsToReboot" ], "members":{ "CacheClusterId":{"shape":"String"}, "CacheNodeIdsToReboot":{"shape":"CacheNodeIdsList"} } }, "RebootCacheClusterResult":{ "type":"structure", "members":{ "CacheCluster":{"shape":"CacheCluster"} } }, "RecurringCharge":{ "type":"structure", "members":{ "RecurringChargeAmount":{"shape":"Double"}, "RecurringChargeFrequency":{"shape":"String"} }, "wrapper":true }, "RecurringChargeList":{ "type":"list", "member":{ "shape":"RecurringCharge", "locationName":"RecurringCharge" } }, "RemoveTagsFromResourceMessage":{ "type":"structure", "required":[ "ResourceName", "TagKeys" ], "members":{ "ResourceName":{"shape":"String"}, "TagKeys":{"shape":"KeyList"} } }, "ReplicationGroup":{ "type":"structure", "members":{ "ReplicationGroupId":{"shape":"String"}, "Description":{"shape":"String"}, "Status":{"shape":"String"}, "PendingModifiedValues":{"shape":"ReplicationGroupPendingModifiedValues"}, "MemberClusters":{"shape":"ClusterIdList"}, "NodeGroups":{"shape":"NodeGroupList"}, "SnapshottingClusterId":{"shape":"String"}, "AutomaticFailover":{"shape":"AutomaticFailoverStatus"}, "ConfigurationEndpoint":{"shape":"Endpoint"}, "SnapshotRetentionLimit":{"shape":"IntegerOptional"}, "SnapshotWindow":{"shape":"String"} }, "wrapper":true }, "ReplicationGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReplicationGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ReplicationGroupList":{ "type":"list", "member":{ "shape":"ReplicationGroup", "locationName":"ReplicationGroup" } }, "ReplicationGroupMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ReplicationGroups":{"shape":"ReplicationGroupList"} } }, "ReplicationGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReplicationGroupNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ReplicationGroupPendingModifiedValues":{ "type":"structure", "members":{ "PrimaryClusterId":{"shape":"String"}, "AutomaticFailoverStatus":{"shape":"PendingAutomaticFailoverStatus"} } }, "ReservedCacheNode":{ "type":"structure", "members":{ "ReservedCacheNodeId":{"shape":"String"}, "ReservedCacheNodesOfferingId":{"shape":"String"}, "CacheNodeType":{"shape":"String"}, "StartTime":{"shape":"TStamp"}, "Duration":{"shape":"Integer"}, "FixedPrice":{"shape":"Double"}, "UsagePrice":{"shape":"Double"}, "CacheNodeCount":{"shape":"Integer"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "State":{"shape":"String"}, "RecurringCharges":{"shape":"RecurringChargeList"} }, "wrapper":true }, "ReservedCacheNodeAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedCacheNodeAlreadyExists", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ReservedCacheNodeList":{ "type":"list", "member":{ "shape":"ReservedCacheNode", "locationName":"ReservedCacheNode" } }, "ReservedCacheNodeMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ReservedCacheNodes":{"shape":"ReservedCacheNodeList"} } }, "ReservedCacheNodeNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedCacheNodeNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ReservedCacheNodeQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedCacheNodeQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ReservedCacheNodesOffering":{ "type":"structure", "members":{ "ReservedCacheNodesOfferingId":{"shape":"String"}, "CacheNodeType":{"shape":"String"}, "Duration":{"shape":"Integer"}, "FixedPrice":{"shape":"Double"}, "UsagePrice":{"shape":"Double"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "RecurringCharges":{"shape":"RecurringChargeList"} }, "wrapper":true }, "ReservedCacheNodesOfferingList":{ "type":"list", "member":{ "shape":"ReservedCacheNodesOffering", "locationName":"ReservedCacheNodesOffering" } }, "ReservedCacheNodesOfferingMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ReservedCacheNodesOfferings":{"shape":"ReservedCacheNodesOfferingList"} } }, "ReservedCacheNodesOfferingNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedCacheNodesOfferingNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ResetCacheParameterGroupMessage":{ "type":"structure", "required":["CacheParameterGroupName"], "members":{ "CacheParameterGroupName":{"shape":"String"}, "ResetAllParameters":{"shape":"Boolean"}, "ParameterNameValues":{"shape":"ParameterNameValueList"} } }, "RevokeCacheSecurityGroupIngressMessage":{ "type":"structure", "required":[ "CacheSecurityGroupName", "EC2SecurityGroupName", "EC2SecurityGroupOwnerId" ], "members":{ "CacheSecurityGroupName":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "RevokeCacheSecurityGroupIngressResult":{ "type":"structure", "members":{ "CacheSecurityGroup":{"shape":"CacheSecurityGroup"} } }, "SecurityGroupIdsList":{ "type":"list", "member":{ "shape":"String", "locationName":"SecurityGroupId" } }, "SecurityGroupMembership":{ "type":"structure", "members":{ "SecurityGroupId":{"shape":"String"}, "Status":{"shape":"String"} } }, "SecurityGroupMembershipList":{ "type":"list", "member":{"shape":"SecurityGroupMembership"} }, "Snapshot":{ "type":"structure", "members":{ "SnapshotName":{"shape":"String"}, "ReplicationGroupId":{"shape":"String"}, "ReplicationGroupDescription":{"shape":"String"}, "CacheClusterId":{"shape":"String"}, "SnapshotStatus":{"shape":"String"}, "SnapshotSource":{"shape":"String"}, "CacheNodeType":{"shape":"String"}, "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "NumCacheNodes":{"shape":"IntegerOptional"}, "PreferredAvailabilityZone":{"shape":"String"}, "CacheClusterCreateTime":{"shape":"TStamp"}, "PreferredMaintenanceWindow":{"shape":"String"}, "TopicArn":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "CacheParameterGroupName":{"shape":"String"}, "CacheSubnetGroupName":{"shape":"String"}, "VpcId":{"shape":"String"}, "AutoMinorVersionUpgrade":{"shape":"Boolean"}, "SnapshotRetentionLimit":{"shape":"IntegerOptional"}, "SnapshotWindow":{"shape":"String"}, "NumNodeGroups":{"shape":"IntegerOptional"}, "AutomaticFailover":{"shape":"AutomaticFailoverStatus"}, "NodeSnapshots":{"shape":"NodeSnapshotList"} }, "wrapper":true }, "SnapshotAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"SnapshotAlreadyExistsFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SnapshotArnsList":{ "type":"list", "member":{ "shape":"String", "locationName":"SnapshotArn" } }, "SnapshotFeatureNotSupportedFault":{ "type":"structure", "members":{ }, "error":{ "code":"SnapshotFeatureNotSupportedFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SnapshotList":{ "type":"list", "member":{ "shape":"Snapshot", "locationName":"Snapshot" } }, "SnapshotNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SnapshotNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SnapshotQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"SnapshotQuotaExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SourceType":{ "type":"string", "enum":[ "cache-cluster", "cache-parameter-group", "cache-security-group", "cache-subnet-group", "replication-group" ] }, "String":{"type":"string"}, "Subnet":{ "type":"structure", "members":{ "SubnetIdentifier":{"shape":"String"}, "SubnetAvailabilityZone":{"shape":"AvailabilityZone"} } }, "SubnetIdentifierList":{ "type":"list", "member":{ "shape":"String", "locationName":"SubnetIdentifier" } }, "SubnetInUse":{ "type":"structure", "members":{ }, "error":{ "code":"SubnetInUse", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SubnetList":{ "type":"list", "member":{ "shape":"Subnet", "locationName":"Subnet" } }, "TStamp":{"type":"timestamp"}, "Tag":{ "type":"structure", "members":{ "Key":{"shape":"String"}, "Value":{"shape":"String"} } }, "TagList":{ "type":"list", "member":{ "shape":"Tag", "locationName":"Tag" } }, "TagListMessage":{ "type":"structure", "members":{ "TagList":{"shape":"TagList"} } }, "TagNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"TagNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "TagQuotaPerResourceExceeded":{ "type":"structure", "members":{ }, "error":{ "code":"TagQuotaPerResourceExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true } } } aws-sdk-go-1.4.22/models/apis/elasticache/2015-02-02/docs-2.json000066400000000000000000004735251300374646400232760ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon ElastiCache

        Amazon ElastiCache is a web service that makes it easier to set up, operate, and scale a distributed cache in the cloud.

        With ElastiCache, customers get all of the benefits of a high-performance, in-memory cache with less of the administrative burden involved in launching and managing a distributed cache. The service makes setup, scaling, and cluster failure handling much simpler than in a self-managed cache deployment.

        In addition, through integration with Amazon CloudWatch, customers get enhanced visibility into the key performance statistics associated with their cache and can receive alarms if a part of their cache runs hot.

        ", "operations": { "AddTagsToResource": "

        Adds up to 10 cost allocation tags to the named resource. A cost allocation tag is a key-value pair where the key and value are case-sensitive. You can use cost allocation tags to categorize and track your AWS costs.

        When you apply tags to your ElastiCache resources, AWS generates a cost allocation report as a comma-separated value (CSV) file with your usage and costs aggregated by your tags. You can apply tags that represent business categories (such as cost centers, application names, or owners) to organize your costs across multiple services. For more information, see Using Cost Allocation Tags in Amazon ElastiCache in the ElastiCache User Guide.

        ", "AuthorizeCacheSecurityGroupIngress": "

        Allows network ingress to a cache security group. Applications using ElastiCache must be running on Amazon EC2, and Amazon EC2 security groups are used as the authorization mechanism.

        You cannot authorize ingress from an Amazon EC2 security group in one region to an ElastiCache cluster in another region.

        ", "CopySnapshot": "

        Makes a copy of an existing snapshot.

        This operation is valid for Redis only.

        Users or groups that have permissions to use the CopySnapshot operation can create their own Amazon S3 buckets and copy snapshots to it. To control access to your snapshots, use an IAM policy to control who has the ability to use the CopySnapshot operation. For more information about using IAM to control the use of ElastiCache operations, see Exporting Snapshots and Authentication & Access Control.

        You could receive the following error messages.

        Error Messages

        • Error Message: The S3 bucket %s is outside of the region.

          Solution: Create an Amazon S3 bucket in the same region as your snapshot. For more information, see Step 1: Create an Amazon S3 Bucket in the ElastiCache User Guide.

        • Error Message: The S3 bucket %s does not exist.

          Solution: Create an Amazon S3 bucket in the same region as your snapshot. For more information, see Step 1: Create an Amazon S3 Bucket in the ElastiCache User Guide.

        • Error Message: The S3 bucket %s is not owned by the authenticated user.

          Solution: Create an Amazon S3 bucket in the same region as your snapshot. For more information, see Step 1: Create an Amazon S3 Bucket in the ElastiCache User Guide.

        • Error Message: The authenticated user does not have sufficient permissions to perform the desired activity.

          Solution: Contact your system administrator to get the needed permissions.

        • Error Message: The S3 bucket %s already contains an object with key %s.

          Solution: Give the TargetSnapshotName a new and unique value. If exporting a snapshot, you could alternatively create a new Amazon S3 bucket and use this same value for TargetSnapshotName.

        • Error Message: ElastiCache has not been granted READ permissions %s on the S3 Bucket.

          Solution: Add List and Read permissions on the bucket. For more information, see Step 2: Grant ElastiCache Access to Your Amazon S3 Bucket in the ElastiCache User Guide.

        • Error Message: ElastiCache has not been granted WRITE permissions %s on the S3 Bucket.

          Solution: Add Upload/Delete permissions on the bucket. For more information, see Step 2: Grant ElastiCache Access to Your Amazon S3 Bucket in the ElastiCache User Guide.

        • Error Message: ElastiCache has not been granted READ_ACP permissions %s on the S3 Bucket.

          Solution: Add View Permissions on the bucket. For more information, see Step 2: Grant ElastiCache Access to Your Amazon S3 Bucket in the ElastiCache User Guide.

        ", "CreateCacheCluster": "

        Creates a cache cluster. All nodes in the cache cluster run the same protocol-compliant cache engine software, either Memcached or Redis.

        Due to current limitations on Redis (cluster mode disabled), this operation or parameter is not supported on Redis (cluster mode enabled) replication groups.

        ", "CreateCacheParameterGroup": "

        Creates a new cache parameter group. A cache parameter group is a collection of parameters that you apply to all of the nodes in a cache cluster.

        ", "CreateCacheSecurityGroup": "

        Creates a new cache security group. Use a cache security group to control access to one or more cache clusters.

        Cache security groups are only used when you are creating a cache cluster outside of an Amazon Virtual Private Cloud (Amazon VPC). If you are creating a cache cluster inside of a VPC, use a cache subnet group instead. For more information, see CreateCacheSubnetGroup.

        ", "CreateCacheSubnetGroup": "

        Creates a new cache subnet group.

        Use this parameter only when you are creating a cluster in an Amazon Virtual Private Cloud (Amazon VPC).

        ", "CreateReplicationGroup": "

        Creates a Redis (cluster mode disabled) or a Redis (cluster mode enabled) replication group.

        A Redis (cluster mode disabled) replication group is a collection of cache clusters, where one of the cache clusters is a read/write primary and the others are read-only replicas. Writes to the primary are asynchronously propagated to the replicas.

        A Redis (cluster mode enabled) replication group is a collection of 1 to 15 node groups (shards). Each node group (shard) has one read/write primary node and up to 5 read-only replica nodes. Writes to the primary are asynchronously propagated to the replicas. Redis (cluster mode enabled) replication groups partition the data across node groups (shards).

        When a Redis (cluster mode disabled) replication group has been successfully created, you can add one or more read replicas to it, up to a total of 5 read replicas. You cannot alter a Redis (cluster mode enabled) replication group once it has been created.

        This operation is valid for Redis only.

        ", "CreateSnapshot": "

        Creates a copy of an entire cache cluster or replication group at a specific moment in time.

        This operation is valid for Redis only.

        ", "DeleteCacheCluster": "

        Deletes a previously provisioned cache cluster. DeleteCacheCluster deletes all associated cache nodes, node endpoints and the cache cluster itself. When you receive a successful response from this operation, Amazon ElastiCache immediately begins deleting the cache cluster; you cannot cancel or revert this operation.

        This operation cannot be used to delete a cache cluster that is the last read replica of a replication group or node group (shard) that has Multi-AZ mode enabled or a cache cluster from a Redis (cluster mode enabled) replication group.

        Due to current limitations on Redis (cluster mode disabled), this operation or parameter is not supported on Redis (cluster mode enabled) replication groups.

        ", "DeleteCacheParameterGroup": "

        Deletes the specified cache parameter group. You cannot delete a cache parameter group if it is associated with any cache clusters.

        ", "DeleteCacheSecurityGroup": "

        Deletes a cache security group.

        You cannot delete a cache security group if it is associated with any cache clusters.

        ", "DeleteCacheSubnetGroup": "

        Deletes a cache subnet group.

        You cannot delete a cache subnet group if it is associated with any cache clusters.

        ", "DeleteReplicationGroup": "

        Deletes an existing replication group. By default, this operation deletes the entire replication group, including the primary/primaries and all of the read replicas. If the replication group has only one primary, you can optionally delete only the read replicas, while retaining the primary by setting RetainPrimaryCluster=true.

        When you receive a successful response from this operation, Amazon ElastiCache immediately begins deleting the selected resources; you cannot cancel or revert this operation.

        This operation is valid for Redis only.

        ", "DeleteSnapshot": "

        Deletes an existing snapshot. When you receive a successful response from this operation, ElastiCache immediately begins deleting the snapshot; you cannot cancel or revert this operation.

        This operation is valid for Redis only.

        ", "DescribeCacheClusters": "

        Returns information about all provisioned cache clusters if no cache cluster identifier is specified, or about a specific cache cluster if a cache cluster identifier is supplied.

        By default, abbreviated information about the cache clusters are returned. You can use the optional ShowDetails flag to retrieve detailed information about the cache nodes associated with the cache clusters. These details include the DNS address and port for the cache node endpoint.

        If the cluster is in the CREATING state, only cluster-level information is displayed until all of the nodes are successfully provisioned.

        If the cluster is in the DELETING state, only cluster-level information is displayed.

        If cache nodes are currently being added to the cache cluster, node endpoint information and creation time for the additional nodes are not displayed until they are completely provisioned. When the cache cluster state is available, the cluster is ready for use.

        If cache nodes are currently being removed from the cache cluster, no endpoint information for the removed nodes is displayed.

        ", "DescribeCacheEngineVersions": "

        Returns a list of the available cache engines and their versions.

        ", "DescribeCacheParameterGroups": "

        Returns a list of cache parameter group descriptions. If a cache parameter group name is specified, the list contains only the descriptions for that group.

        ", "DescribeCacheParameters": "

        Returns the detailed parameter list for a particular cache parameter group.

        ", "DescribeCacheSecurityGroups": "

        Returns a list of cache security group descriptions. If a cache security group name is specified, the list contains only the description of that group.

        ", "DescribeCacheSubnetGroups": "

        Returns a list of cache subnet group descriptions. If a subnet group name is specified, the list contains only the description of that group.

        ", "DescribeEngineDefaultParameters": "

        Returns the default engine and system parameter information for the specified cache engine.

        ", "DescribeEvents": "

        Returns events related to cache clusters, cache security groups, and cache parameter groups. You can obtain events specific to a particular cache cluster, cache security group, or cache parameter group by providing the name as a parameter.

        By default, only the events occurring within the last hour are returned; however, you can retrieve up to 14 days' worth of events if necessary.

        ", "DescribeReplicationGroups": "

        Returns information about a particular replication group. If no identifier is specified, DescribeReplicationGroups returns information about all replication groups.

        This operation is valid for Redis only.

        ", "DescribeReservedCacheNodes": "

        Returns information about reserved cache nodes for this account, or about a specified reserved cache node.

        ", "DescribeReservedCacheNodesOfferings": "

        Lists available reserved cache node offerings.

        ", "DescribeSnapshots": "

        Returns information about cache cluster or replication group snapshots. By default, DescribeSnapshots lists all of your snapshots; it can optionally describe a single snapshot, or just the snapshots associated with a particular cache cluster.

        This operation is valid for Redis only.

        ", "ListAllowedNodeTypeModifications": "

        Lists all available node types that you can scale your Redis cluster's or replication group's current node type up to.

        When you use the ModifyCacheCluster or ModifyReplicationGroup operations to scale up your cluster or replication group, the value of the CacheNodeType parameter must be one of the node types returned by this operation.

        ", "ListTagsForResource": "

        Lists all cost allocation tags currently on the named resource. A cost allocation tag is a key-value pair where the key is case-sensitive and the value is optional. You can use cost allocation tags to categorize and track your AWS costs.

        You can have a maximum of 10 cost allocation tags on an ElastiCache resource. For more information, see Using Cost Allocation Tags in Amazon ElastiCache.

        ", "ModifyCacheCluster": "

        Modifies the settings for a cache cluster. You can use this operation to change one or more cluster configuration parameters by specifying the parameters and the new values.

        ", "ModifyCacheParameterGroup": "

        Modifies the parameters of a cache parameter group. You can modify up to 20 parameters in a single request by submitting a list parameter name and value pairs.

        ", "ModifyCacheSubnetGroup": "

        Modifies an existing cache subnet group.

        ", "ModifyReplicationGroup": "

        Modifies the settings for a replication group.

        Due to current limitations on Redis (cluster mode disabled), this operation or parameter is not supported on Redis (cluster mode enabled) replication groups.

        This operation is valid for Redis only.

        ", "PurchaseReservedCacheNodesOffering": "

        Allows you to purchase a reserved cache node offering.

        ", "RebootCacheCluster": "

        Reboots some, or all, of the cache nodes within a provisioned cache cluster. This operation applies any modified cache parameter groups to the cache cluster. The reboot operation takes place as soon as possible, and results in a momentary outage to the cache cluster. During the reboot, the cache cluster status is set to REBOOTING.

        The reboot causes the contents of the cache (for each cache node being rebooted) to be lost.

        When the reboot is complete, a cache cluster event is created.

        ", "RemoveTagsFromResource": "

        Removes the tags identified by the TagKeys list from the named resource.

        ", "ResetCacheParameterGroup": "

        Modifies the parameters of a cache parameter group to the engine or system default value. You can reset specific parameters by submitting a list of parameter names. To reset the entire cache parameter group, specify the ResetAllParameters and CacheParameterGroupName parameters.

        ", "RevokeCacheSecurityGroupIngress": "

        Revokes ingress from a cache security group. Use this operation to disallow access from an Amazon EC2 security group that had been previously authorized.

        " }, "shapes": { "AZMode": { "base": null, "refs": { "CreateCacheClusterMessage$AZMode": "

        Specifies whether the nodes in this Memcached cluster are created in a single Availability Zone or created across multiple Availability Zones in the cluster's region.

        This parameter is only supported for Memcached cache clusters.

        If the AZMode and PreferredAvailabilityZones are not specified, ElastiCache assumes single-az mode.

        ", "ModifyCacheClusterMessage$AZMode": "

        Specifies whether the new nodes in this Memcached cache cluster are all created in a single Availability Zone or created across multiple Availability Zones.

        Valid values: single-az | cross-az.

        This option is only supported for Memcached cache clusters.

        You cannot specify single-az if the Memcached cache cluster already has cache nodes in different Availability Zones. If cross-az is specified, existing Memcached nodes remain in their current Availability Zone.

        Only newly created nodes are located in different Availability Zones. For instructions on how to move existing Memcached nodes to different Availability Zones, see the Availability Zone Considerations section of Cache Node Considerations for Memcached.

        " } }, "AddTagsToResourceMessage": { "base": "

        Represents the input of an AddTagsToResource operation.

        ", "refs": { } }, "AllowedNodeTypeModificationsMessage": { "base": null, "refs": { } }, "AuthorizationAlreadyExistsFault": { "base": "

        The specified Amazon EC2 security group is already authorized for the specified cache security group.

        ", "refs": { } }, "AuthorizationNotFoundFault": { "base": "

        The specified Amazon EC2 security group is not authorized for the specified cache security group.

        ", "refs": { } }, "AuthorizeCacheSecurityGroupIngressMessage": { "base": "

        Represents the input of an AuthorizeCacheSecurityGroupIngress operation.

        ", "refs": { } }, "AuthorizeCacheSecurityGroupIngressResult": { "base": null, "refs": { } }, "AutomaticFailoverStatus": { "base": null, "refs": { "ReplicationGroup$AutomaticFailover": "

        Indicates the status of Multi-AZ for this replication group.

        ElastiCache Multi-AZ replication groups are not supported on:

        • Redis versions earlier than 2.8.6.

        • Redis (cluster mode disabled):T1 and T2 cache node types.

          Redis (cluster mode enabled): T1 node types.

        ", "Snapshot$AutomaticFailover": "

        Indicates the status of Multi-AZ for the source replication group.

        ElastiCache Multi-AZ replication groups are not supported on:

        • Redis versions earlier than 2.8.6.

        • Redis (cluster mode disabled):T1 and T2 cache node types.

          Redis (cluster mode enabled): T1 node types.

        " } }, "AvailabilityZone": { "base": "

        Describes an Availability Zone in which the cache cluster is launched.

        ", "refs": { "Subnet$SubnetAvailabilityZone": "

        The Availability Zone associated with the subnet.

        " } }, "AvailabilityZonesList": { "base": null, "refs": { "CreateReplicationGroupMessage$PreferredCacheClusterAZs": "

        A list of EC2 Availability Zones in which the replication group's cache clusters are created. The order of the Availability Zones in the list is the order in which clusters are allocated. The primary cluster is created in the first AZ in the list.

        This parameter is not used if there is more than one node group (shard). You should use NodeGroupConfiguration instead.

        If you are creating your replication group in an Amazon VPC (recommended), you can only locate cache clusters in Availability Zones associated with the subnets in the selected subnet group.

        The number of Availability Zones listed must equal the value of NumCacheClusters.

        Default: system chosen Availability Zones.

        ", "NodeGroupConfiguration$ReplicaAvailabilityZones": "

        A list of Availability Zones to be used for the read replicas. The number of Availability Zones in this list must match the value of ReplicaCount or ReplicasPerNodeGroup if not specified.

        " } }, "AwsQueryErrorMessage": { "base": null, "refs": { "InvalidParameterCombinationException$message": "

        Two or more parameters that must not be used together were used together.

        ", "InvalidParameterValueException$message": "

        A parameter value is invalid.

        " } }, "Boolean": { "base": null, "refs": { "CacheCluster$AutoMinorVersionUpgrade": "

        This parameter is currently disabled.

        ", "CacheNodeTypeSpecificParameter$IsModifiable": "

        Indicates whether (true) or not (false) the parameter can be modified. Some parameters have security or operational implications that prevent them from being changed.

        ", "DescribeCacheEngineVersionsMessage$DefaultOnly": "

        If true, specifies that only the default version of the specified engine or engine and major version combination is to be returned.

        ", "ModifyCacheClusterMessage$ApplyImmediately": "

        If true, this parameter causes the modifications in this request and any pending modifications to be applied, asynchronously and as soon as possible, regardless of the PreferredMaintenanceWindow setting for the cache cluster.

        If false, changes to the cache cluster are applied on the next maintenance reboot, or the next failure reboot, whichever occurs first.

        If you perform a ModifyCacheCluster before a pending modification is applied, the pending modification is replaced by the newer modification.

        Valid values: true | false

        Default: false

        ", "ModifyReplicationGroupMessage$ApplyImmediately": "

        If true, this parameter causes the modifications in this request and any pending modifications to be applied, asynchronously and as soon as possible, regardless of the PreferredMaintenanceWindow setting for the replication group.

        If false, changes to the nodes in the replication group are applied on the next maintenance reboot, or the next failure reboot, whichever occurs first.

        Valid values: true | false

        Default: false

        ", "Parameter$IsModifiable": "

        Indicates whether (true) or not (false) the parameter can be modified. Some parameters have security or operational implications that prevent them from being changed.

        ", "ResetCacheParameterGroupMessage$ResetAllParameters": "

        If true, all parameters in the cache parameter group are reset to their default values. If false, only the parameters listed by ParameterNameValues are reset to their default values.

        Valid values: true | false

        ", "Snapshot$AutoMinorVersionUpgrade": "

        This parameter is currently disabled.

        " } }, "BooleanOptional": { "base": null, "refs": { "CreateCacheClusterMessage$AutoMinorVersionUpgrade": "

        This parameter is currently disabled.

        ", "CreateReplicationGroupMessage$AutomaticFailoverEnabled": "

        Specifies whether a read-only replica is automatically promoted to read/write primary if the existing primary fails.

        If true, Multi-AZ is enabled for this replication group. If false, Multi-AZ is disabled for this replication group.

        AutomaticFailoverEnabled must be enabled for Redis (cluster mode enabled) replication groups.

        Default: false

        ElastiCache Multi-AZ replication groups is not supported on:

        • Redis versions earlier than 2.8.6.

        • Redis (cluster mode disabled): T1 and T2 node types.

          Redis (cluster mode enabled): T2 node types.

        ", "CreateReplicationGroupMessage$AutoMinorVersionUpgrade": "

        This parameter is currently disabled.

        ", "DeleteReplicationGroupMessage$RetainPrimaryCluster": "

        If set to true, all of the read replicas are deleted, but the primary node is retained.

        ", "DescribeCacheClustersMessage$ShowCacheNodeInfo": "

        An optional flag that can be included in the DescribeCacheCluster request to retrieve information about the individual cache nodes.

        ", "DescribeSnapshotsMessage$ShowNodeGroupConfig": "

        A boolean value which if true, the node group (shard) configuration is included in the snapshot description.

        ", "ModifyCacheClusterMessage$AutoMinorVersionUpgrade": "

        This parameter is currently disabled.

        ", "ModifyReplicationGroupMessage$AutomaticFailoverEnabled": "

        Determines whether a read replica is automatically promoted to read/write primary if the existing primary encounters a failure.

        Valid values: true | false

        ElastiCache Multi-AZ replication groups are not supported on:

        • Redis versions earlier than 2.8.6.

        • Redis (cluster mode disabled):T1 and T2 cache node types.

          Redis (cluster mode enabled): T1 node types.

        ", "ModifyReplicationGroupMessage$AutoMinorVersionUpgrade": "

        This parameter is currently disabled.

        " } }, "CacheCluster": { "base": "

        Contains all of the attributes of a specific cache cluster.

        ", "refs": { "CacheClusterList$member": null, "CreateCacheClusterResult$CacheCluster": null, "DeleteCacheClusterResult$CacheCluster": null, "ModifyCacheClusterResult$CacheCluster": null, "RebootCacheClusterResult$CacheCluster": null } }, "CacheClusterAlreadyExistsFault": { "base": "

        You already have a cache cluster with the given identifier.

        ", "refs": { } }, "CacheClusterList": { "base": null, "refs": { "CacheClusterMessage$CacheClusters": "

        A list of cache clusters. Each item in the list contains detailed information about one cache cluster.

        " } }, "CacheClusterMessage": { "base": "

        Represents the output of a DescribeCacheClusters operation.

        ", "refs": { } }, "CacheClusterNotFoundFault": { "base": "

        The requested cache cluster ID does not refer to an existing cache cluster.

        ", "refs": { } }, "CacheEngineVersion": { "base": "

        Provides all of the details about a particular cache engine version.

        ", "refs": { "CacheEngineVersionList$member": null } }, "CacheEngineVersionList": { "base": null, "refs": { "CacheEngineVersionMessage$CacheEngineVersions": "

        A list of cache engine version details. Each element in the list contains detailed information about one cache engine version.

        " } }, "CacheEngineVersionMessage": { "base": "

        Represents the output of a DescribeCacheEngineVersions operation.

        ", "refs": { } }, "CacheNode": { "base": "

        Represents an individual cache node within a cache cluster. Each cache node runs its own instance of the cluster's protocol-compliant caching software - either Memcached or Redis.

        Valid node types are as follows:

        • General purpose:

          • Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge, cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

          • Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

        • Compute optimized: cache.c1.xlarge

        • Memory optimized:

          • Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

          • Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

        Notes:

        • All T2 instances are created in an Amazon Virtual Private Cloud (Amazon VPC).

        • Redis backup/restore is not supported for Redis (cluster mode disabled) T1 and T2 instances. Backup/restore is supported on Redis (cluster mode enabled) T2 instances.

        • Redis Append-only files (AOF) functionality is not supported for T1 or T2 instances.

        For a complete listing of node types and specifications, see Amazon ElastiCache Product Features and Details and either Cache Node Type-Specific Parameters for Memcached or Cache Node Type-Specific Parameters for Redis.

        ", "refs": { "CacheNodeList$member": null } }, "CacheNodeIdsList": { "base": null, "refs": { "CacheParameterGroupStatus$CacheNodeIdsToReboot": "

        A list of the cache node IDs which need to be rebooted for parameter changes to be applied. A node ID is a numeric identifier (0001, 0002, etc.).

        ", "ModifyCacheClusterMessage$CacheNodeIdsToRemove": "

        A list of cache node IDs to be removed. A node ID is a numeric identifier (0001, 0002, etc.). This parameter is only valid when NumCacheNodes is less than the existing number of cache nodes. The number of cache node IDs supplied in this parameter must match the difference between the existing number of cache nodes in the cluster or pending cache nodes, whichever is greater, and the value of NumCacheNodes in the request.

        For example: If you have 3 active cache nodes, 7 pending cache nodes, and the number of cache nodes in this ModifyCacheCluser call is 5, you must list 2 (7 - 5) cache node IDs to remove.

        ", "PendingModifiedValues$CacheNodeIdsToRemove": "

        A list of cache node IDs that are being removed (or will be removed) from the cache cluster. A node ID is a numeric identifier (0001, 0002, etc.).

        ", "RebootCacheClusterMessage$CacheNodeIdsToReboot": "

        A list of cache node IDs to reboot. A node ID is a numeric identifier (0001, 0002, etc.). To reboot an entire cache cluster, specify all of the cache node IDs.

        " } }, "CacheNodeList": { "base": null, "refs": { "CacheCluster$CacheNodes": "

        A list of cache nodes that are members of the cache cluster.

        " } }, "CacheNodeTypeSpecificParameter": { "base": "

        A parameter that has a different value for each cache node type it is applied to. For example, in a Redis cache cluster, a cache.m1.large cache node type would have a larger maxmemory value than a cache.m1.small type.

        ", "refs": { "CacheNodeTypeSpecificParametersList$member": null } }, "CacheNodeTypeSpecificParametersList": { "base": null, "refs": { "CacheParameterGroupDetails$CacheNodeTypeSpecificParameters": "

        A list of parameters specific to a particular cache node type. Each element in the list contains detailed information about one parameter.

        ", "EngineDefaults$CacheNodeTypeSpecificParameters": "

        A list of parameters specific to a particular cache node type. Each element in the list contains detailed information about one parameter.

        " } }, "CacheNodeTypeSpecificValue": { "base": "

        A value that applies only to a certain cache node type.

        ", "refs": { "CacheNodeTypeSpecificValueList$member": null } }, "CacheNodeTypeSpecificValueList": { "base": null, "refs": { "CacheNodeTypeSpecificParameter$CacheNodeTypeSpecificValues": "

        A list of cache node types and their corresponding values for this parameter.

        " } }, "CacheParameterGroup": { "base": "

        Represents the output of a CreateCacheParameterGroup operation.

        ", "refs": { "CacheParameterGroupList$member": null, "CreateCacheParameterGroupResult$CacheParameterGroup": null } }, "CacheParameterGroupAlreadyExistsFault": { "base": "

        A cache parameter group with the requested name already exists.

        ", "refs": { } }, "CacheParameterGroupDetails": { "base": "

        Represents the output of a DescribeCacheParameters operation.

        ", "refs": { } }, "CacheParameterGroupList": { "base": null, "refs": { "CacheParameterGroupsMessage$CacheParameterGroups": "

        A list of cache parameter groups. Each element in the list contains detailed information about one cache parameter group.

        " } }, "CacheParameterGroupNameMessage": { "base": "

        Represents the output of one of the following operations:

        • ModifyCacheParameterGroup

        • ResetCacheParameterGroup

        ", "refs": { } }, "CacheParameterGroupNotFoundFault": { "base": "

        The requested cache parameter group name does not refer to an existing cache parameter group.

        ", "refs": { } }, "CacheParameterGroupQuotaExceededFault": { "base": "

        The request cannot be processed because it would exceed the maximum number of cache security groups.

        ", "refs": { } }, "CacheParameterGroupStatus": { "base": "

        Status of the cache parameter group.

        ", "refs": { "CacheCluster$CacheParameterGroup": null } }, "CacheParameterGroupsMessage": { "base": "

        Represents the output of a DescribeCacheParameterGroups operation.

        ", "refs": { } }, "CacheSecurityGroup": { "base": "

        Represents the output of one of the following operations:

        • AuthorizeCacheSecurityGroupIngress

        • CreateCacheSecurityGroup

        • RevokeCacheSecurityGroupIngress

        ", "refs": { "AuthorizeCacheSecurityGroupIngressResult$CacheSecurityGroup": null, "CacheSecurityGroups$member": null, "CreateCacheSecurityGroupResult$CacheSecurityGroup": null, "RevokeCacheSecurityGroupIngressResult$CacheSecurityGroup": null } }, "CacheSecurityGroupAlreadyExistsFault": { "base": "

        A cache security group with the specified name already exists.

        ", "refs": { } }, "CacheSecurityGroupMembership": { "base": "

        Represents a cache cluster's status within a particular cache security group.

        ", "refs": { "CacheSecurityGroupMembershipList$member": null } }, "CacheSecurityGroupMembershipList": { "base": null, "refs": { "CacheCluster$CacheSecurityGroups": "

        A list of cache security group elements, composed of name and status sub-elements.

        " } }, "CacheSecurityGroupMessage": { "base": "

        Represents the output of a DescribeCacheSecurityGroups operation.

        ", "refs": { } }, "CacheSecurityGroupNameList": { "base": null, "refs": { "CreateCacheClusterMessage$CacheSecurityGroupNames": "

        A list of security group names to associate with this cache cluster.

        Use this parameter only when you are creating a cache cluster outside of an Amazon Virtual Private Cloud (Amazon VPC).

        ", "CreateReplicationGroupMessage$CacheSecurityGroupNames": "

        A list of cache security group names to associate with this replication group.

        ", "ModifyCacheClusterMessage$CacheSecurityGroupNames": "

        A list of cache security group names to authorize on this cache cluster. This change is asynchronously applied as soon as possible.

        You can use this parameter only with clusters that are created outside of an Amazon Virtual Private Cloud (Amazon VPC).

        Constraints: Must contain no more than 255 alphanumeric characters. Must not be \"Default\".

        ", "ModifyReplicationGroupMessage$CacheSecurityGroupNames": "

        A list of cache security group names to authorize for the clusters in this replication group. This change is asynchronously applied as soon as possible.

        This parameter can be used only with replication group containing cache clusters running outside of an Amazon Virtual Private Cloud (Amazon VPC).

        Constraints: Must contain no more than 255 alphanumeric characters. Must not be Default.

        " } }, "CacheSecurityGroupNotFoundFault": { "base": "

        The requested cache security group name does not refer to an existing cache security group.

        ", "refs": { } }, "CacheSecurityGroupQuotaExceededFault": { "base": "

        The request cannot be processed because it would exceed the allowed number of cache security groups.

        ", "refs": { } }, "CacheSecurityGroups": { "base": null, "refs": { "CacheSecurityGroupMessage$CacheSecurityGroups": "

        A list of cache security groups. Each element in the list contains detailed information about one group.

        " } }, "CacheSubnetGroup": { "base": "

        Represents the output of one of the following operations:

        • CreateCacheSubnetGroup

        • ModifyCacheSubnetGroup

        ", "refs": { "CacheSubnetGroups$member": null, "CreateCacheSubnetGroupResult$CacheSubnetGroup": null, "ModifyCacheSubnetGroupResult$CacheSubnetGroup": null } }, "CacheSubnetGroupAlreadyExistsFault": { "base": "

        The requested cache subnet group name is already in use by an existing cache subnet group.

        ", "refs": { } }, "CacheSubnetGroupInUse": { "base": "

        The requested cache subnet group is currently in use.

        ", "refs": { } }, "CacheSubnetGroupMessage": { "base": "

        Represents the output of a DescribeCacheSubnetGroups operation.

        ", "refs": { } }, "CacheSubnetGroupNotFoundFault": { "base": "

        The requested cache subnet group name does not refer to an existing cache subnet group.

        ", "refs": { } }, "CacheSubnetGroupQuotaExceededFault": { "base": "

        The request cannot be processed because it would exceed the allowed number of cache subnet groups.

        ", "refs": { } }, "CacheSubnetGroups": { "base": null, "refs": { "CacheSubnetGroupMessage$CacheSubnetGroups": "

        A list of cache subnet groups. Each element in the list contains detailed information about one group.

        " } }, "CacheSubnetQuotaExceededFault": { "base": "

        The request cannot be processed because it would exceed the allowed number of subnets in a cache subnet group.

        ", "refs": { } }, "ChangeType": { "base": null, "refs": { "CacheNodeTypeSpecificParameter$ChangeType": "

        Indicates whether a change to the parameter is applied immediately or requires a reboot for the change to be applied. You can force a reboot or wait until the next maintenance window's reboot. For more information, see Rebooting a Cluster.

        ", "Parameter$ChangeType": "

        Indicates whether a change to the parameter is applied immediately or requires a reboot for the change to be applied. You can force a reboot or wait until the next maintenance window's reboot. For more information, see Rebooting a Cluster.

        " } }, "ClusterIdList": { "base": null, "refs": { "ReplicationGroup$MemberClusters": "

        The names of all the cache clusters that are part of this replication group.

        " } }, "ClusterQuotaForCustomerExceededFault": { "base": "

        The request cannot be processed because it would exceed the allowed number of cache clusters per customer.

        ", "refs": { } }, "CopySnapshotMessage": { "base": "

        Represents the input of a CopySnapshotMessage operation.

        ", "refs": { } }, "CopySnapshotResult": { "base": null, "refs": { } }, "CreateCacheClusterMessage": { "base": "

        Represents the input of a CreateCacheCluster operation.

        ", "refs": { } }, "CreateCacheClusterResult": { "base": null, "refs": { } }, "CreateCacheParameterGroupMessage": { "base": "

        Represents the input of a CreateCacheParameterGroup operation.

        ", "refs": { } }, "CreateCacheParameterGroupResult": { "base": null, "refs": { } }, "CreateCacheSecurityGroupMessage": { "base": "

        Represents the input of a CreateCacheSecurityGroup operation.

        ", "refs": { } }, "CreateCacheSecurityGroupResult": { "base": null, "refs": { } }, "CreateCacheSubnetGroupMessage": { "base": "

        Represents the input of a CreateCacheSubnetGroup operation.

        ", "refs": { } }, "CreateCacheSubnetGroupResult": { "base": null, "refs": { } }, "CreateReplicationGroupMessage": { "base": "

        Represents the input of a CreateReplicationGroup operation.

        ", "refs": { } }, "CreateReplicationGroupResult": { "base": null, "refs": { } }, "CreateSnapshotMessage": { "base": "

        Represents the input of a CreateSnapshot operation.

        ", "refs": { } }, "CreateSnapshotResult": { "base": null, "refs": { } }, "DeleteCacheClusterMessage": { "base": "

        Represents the input of a DeleteCacheCluster operation.

        ", "refs": { } }, "DeleteCacheClusterResult": { "base": null, "refs": { } }, "DeleteCacheParameterGroupMessage": { "base": "

        Represents the input of a DeleteCacheParameterGroup operation.

        ", "refs": { } }, "DeleteCacheSecurityGroupMessage": { "base": "

        Represents the input of a DeleteCacheSecurityGroup operation.

        ", "refs": { } }, "DeleteCacheSubnetGroupMessage": { "base": "

        Represents the input of a DeleteCacheSubnetGroup operation.

        ", "refs": { } }, "DeleteReplicationGroupMessage": { "base": "

        Represents the input of a DeleteReplicationGroup operation.

        ", "refs": { } }, "DeleteReplicationGroupResult": { "base": null, "refs": { } }, "DeleteSnapshotMessage": { "base": "

        Represents the input of a DeleteSnapshot operation.

        ", "refs": { } }, "DeleteSnapshotResult": { "base": null, "refs": { } }, "DescribeCacheClustersMessage": { "base": "

        Represents the input of a DescribeCacheClusters operation.

        ", "refs": { } }, "DescribeCacheEngineVersionsMessage": { "base": "

        Represents the input of a DescribeCacheEngineVersions operation.

        ", "refs": { } }, "DescribeCacheParameterGroupsMessage": { "base": "

        Represents the input of a DescribeCacheParameterGroups operation.

        ", "refs": { } }, "DescribeCacheParametersMessage": { "base": "

        Represents the input of a DescribeCacheParameters operation.

        ", "refs": { } }, "DescribeCacheSecurityGroupsMessage": { "base": "

        Represents the input of a DescribeCacheSecurityGroups operation.

        ", "refs": { } }, "DescribeCacheSubnetGroupsMessage": { "base": "

        Represents the input of a DescribeCacheSubnetGroups operation.

        ", "refs": { } }, "DescribeEngineDefaultParametersMessage": { "base": "

        Represents the input of a DescribeEngineDefaultParameters operation.

        ", "refs": { } }, "DescribeEngineDefaultParametersResult": { "base": null, "refs": { } }, "DescribeEventsMessage": { "base": "

        Represents the input of a DescribeEvents operation.

        ", "refs": { } }, "DescribeReplicationGroupsMessage": { "base": "

        Represents the input of a DescribeReplicationGroups operation.

        ", "refs": { } }, "DescribeReservedCacheNodesMessage": { "base": "

        Represents the input of a DescribeReservedCacheNodes operation.

        ", "refs": { } }, "DescribeReservedCacheNodesOfferingsMessage": { "base": "

        Represents the input of a DescribeReservedCacheNodesOfferings operation.

        ", "refs": { } }, "DescribeSnapshotsListMessage": { "base": "

        Represents the output of a DescribeSnapshots operation.

        ", "refs": { } }, "DescribeSnapshotsMessage": { "base": "

        Represents the input of a DescribeSnapshotsMessage operation.

        ", "refs": { } }, "Double": { "base": null, "refs": { "RecurringCharge$RecurringChargeAmount": "

        The monetary amount of the recurring charge.

        ", "ReservedCacheNode$FixedPrice": "

        The fixed price charged for this reserved cache node.

        ", "ReservedCacheNode$UsagePrice": "

        The hourly price charged for this reserved cache node.

        ", "ReservedCacheNodesOffering$FixedPrice": "

        The fixed price charged for this offering.

        ", "ReservedCacheNodesOffering$UsagePrice": "

        The hourly price charged for this offering.

        " } }, "EC2SecurityGroup": { "base": "

        Provides ownership and status information for an Amazon EC2 security group.

        ", "refs": { "EC2SecurityGroupList$member": null } }, "EC2SecurityGroupList": { "base": null, "refs": { "CacheSecurityGroup$EC2SecurityGroups": "

        A list of Amazon EC2 security groups that are associated with this cache security group.

        " } }, "Endpoint": { "base": "

        Represents the information required for client programs to connect to a cache node.

        ", "refs": { "CacheCluster$ConfigurationEndpoint": null, "CacheNode$Endpoint": "

        The hostname for connecting to this cache node.

        ", "NodeGroup$PrimaryEndpoint": "

        The endpoint of the primary node in this node group (shard).

        ", "NodeGroupMember$ReadEndpoint": null, "ReplicationGroup$ConfigurationEndpoint": "

        The configuration endpoint for this replicaiton group. Use the configuration endpoint to connect to this replication group.

        " } }, "EngineDefaults": { "base": "

        Represents the output of a DescribeEngineDefaultParameters operation.

        ", "refs": { "DescribeEngineDefaultParametersResult$EngineDefaults": null } }, "Event": { "base": "

        Represents a single occurrence of something interesting within the system. Some examples of events are creating a cache cluster, adding or removing a cache node, or rebooting a node.

        ", "refs": { "EventList$member": null } }, "EventList": { "base": null, "refs": { "EventsMessage$Events": "

        A list of events. Each element in the list contains detailed information about one event.

        " } }, "EventsMessage": { "base": "

        Represents the output of a DescribeEvents operation.

        ", "refs": { } }, "InsufficientCacheClusterCapacityFault": { "base": "

        The requested cache node type is not available in the specified Availability Zone.

        ", "refs": { } }, "Integer": { "base": null, "refs": { "Endpoint$Port": "

        The port number that the cache engine is listening on.

        ", "ReservedCacheNode$Duration": "

        The duration of the reservation in seconds.

        ", "ReservedCacheNode$CacheNodeCount": "

        The number of cache nodes that have been reserved.

        ", "ReservedCacheNodesOffering$Duration": "

        The duration of the offering. in seconds.

        " } }, "IntegerOptional": { "base": null, "refs": { "CacheCluster$NumCacheNodes": "

        The number of cache nodes in the cache cluster.

        For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 20.

        ", "CacheCluster$SnapshotRetentionLimit": "

        The number of days for which ElastiCache retains automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.

        If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.

        ", "CreateCacheClusterMessage$NumCacheNodes": "

        The initial number of cache nodes that the cache cluster has.

        For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 20.

        If you need more than 20 nodes for your Memcached cluster, please fill out the ElastiCache Limit Increase Request form at http://aws.amazon.com/contact-us/elasticache-node-limit-request/.

        ", "CreateCacheClusterMessage$Port": "

        The port number on which each of the cache nodes accepts connections.

        ", "CreateCacheClusterMessage$SnapshotRetentionLimit": "

        The number of days for which ElastiCache retains automatic snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot taken today is retained for 5 days before being deleted.

        This parameter is only valid if the Engine parameter is redis.

        Default: 0 (i.e., automatic backups are disabled for this cache cluster).

        ", "CreateReplicationGroupMessage$NumCacheClusters": "

        The number of clusters this replication group initially has.

        This parameter is not used if there is more than one node group (shard). You should use ReplicasPerNodeGroup instead.

        If Multi-AZ is enabled, the value of this parameter must be at least 2.

        The maximum permitted value for NumCacheClusters is 6 (primary plus 5 replicas). If you need to exceed this limit, fill out the ElastiCache Limit Increase Request form at http://aws.amazon.com/contact-us/elasticache-node-limit-request/.

        ", "CreateReplicationGroupMessage$NumNodeGroups": "

        An optional parameter that specifies the number of node groups (shards) for this Redis (cluster mode enabled) replication group. For Redis (cluster mode disabled) either omit this parameter or set it to 1.

        Default: 1

        ", "CreateReplicationGroupMessage$ReplicasPerNodeGroup": "

        An optional parameter that specifies the number of replica nodes in each node group (shard). Valid values are 0 to 5.

        ", "CreateReplicationGroupMessage$Port": "

        The port number on which each member of the replication group accepts connections.

        ", "CreateReplicationGroupMessage$SnapshotRetentionLimit": "

        The number of days for which ElastiCache retains automatic snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.

        This parameter is only valid if the Engine parameter is redis.

        Default: 0 (i.e., automatic backups are disabled for this cache cluster).

        ", "DescribeCacheClustersMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20; maximum 100.

        ", "DescribeCacheEngineVersionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20; maximum 100.

        ", "DescribeCacheParameterGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20; maximum 100.

        ", "DescribeCacheParametersMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20; maximum 100.

        ", "DescribeCacheSecurityGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20; maximum 100.

        ", "DescribeCacheSubnetGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20; maximum 100.

        ", "DescribeEngineDefaultParametersMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20; maximum 100.

        ", "DescribeEventsMessage$Duration": "

        The number of minutes' worth of events to retrieve.

        ", "DescribeEventsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20; maximum 100.

        ", "DescribeReplicationGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20; maximum 100.

        ", "DescribeReservedCacheNodesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20; maximum 100.

        ", "DescribeReservedCacheNodesOfferingsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20; maximum 100.

        ", "DescribeSnapshotsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

        Default: 50

        Constraints: minimum 20; maximum 50.

        ", "ModifyCacheClusterMessage$NumCacheNodes": "

        The number of cache nodes that the cache cluster should have. If the value for NumCacheNodes is greater than the sum of the number of current cache nodes and the number of cache nodes pending creation (which may be zero), more nodes are added. If the value is less than the number of existing cache nodes, nodes are removed. If the value is equal to the number of current cache nodes, any pending add or remove requests are canceled.

        If you are removing cache nodes, you must use the CacheNodeIdsToRemove parameter to provide the IDs of the specific cache nodes to remove.

        For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 20.

        Adding or removing Memcached cache nodes can be applied immediately or as a pending operation (see ApplyImmediately).

        A pending operation to modify the number of cache nodes in a cluster during its maintenance window, whether by adding or removing nodes in accordance with the scale out architecture, is not queued. The customer's latest request to add or remove nodes to the cluster overrides any previous pending operations to modify the number of cache nodes in the cluster. For example, a request to remove 2 nodes would override a previous pending operation to remove 3 nodes. Similarly, a request to add 2 nodes would override a previous pending operation to remove 3 nodes and vice versa. As Memcached cache nodes may now be provisioned in different Availability Zones with flexible cache node placement, a request to add nodes does not automatically override a previous pending operation to add nodes. The customer can modify the previous pending operation to add more nodes or explicitly cancel the pending request and retry the new request. To cancel pending operations to modify the number of cache nodes in a cluster, use the ModifyCacheCluster request and set NumCacheNodes equal to the number of cache nodes currently in the cache cluster.

        ", "ModifyCacheClusterMessage$SnapshotRetentionLimit": "

        The number of days for which ElastiCache retains automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.

        If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.

        ", "ModifyReplicationGroupMessage$SnapshotRetentionLimit": "

        The number of days for which ElastiCache retains automatic node group (shard) snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.

        Important If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.

        ", "NodeGroupConfiguration$ReplicaCount": "

        The number of read replica nodes in this node group (shard).

        ", "PendingModifiedValues$NumCacheNodes": "

        The new number of cache nodes for the cache cluster.

        For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 20.

        ", "PurchaseReservedCacheNodesOfferingMessage$CacheNodeCount": "

        The number of cache node instances to reserve.

        Default: 1

        ", "ReplicationGroup$SnapshotRetentionLimit": "

        The number of days for which ElastiCache retains automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.

        If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.

        ", "Snapshot$NumCacheNodes": "

        The number of cache nodes in the source cache cluster.

        For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 20.

        ", "Snapshot$Port": "

        The port number used by each cache nodes in the source cache cluster.

        ", "Snapshot$SnapshotRetentionLimit": "

        For an automatic snapshot, the number of days for which ElastiCache retains the snapshot before deleting it.

        For manual snapshots, this field reflects the SnapshotRetentionLimit for the source cache cluster when the snapshot was created. This field is otherwise ignored: Manual snapshots do not expire, and can only be deleted using the DeleteSnapshot operation.

        Important If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.

        ", "Snapshot$NumNodeGroups": "

        The number of node groups (shards) in this snapshot. When restoring from a snapshot, the number of node groups (shards) in the snapshot and in the restored replication group must be the same.

        " } }, "InvalidARNFault": { "base": "

        The requested Amazon Resource Name (ARN) does not refer to an existing resource.

        ", "refs": { } }, "InvalidCacheClusterStateFault": { "base": "

        The requested cache cluster is not in the available state.

        ", "refs": { } }, "InvalidCacheParameterGroupStateFault": { "base": "

        The current state of the cache parameter group does not allow the requested operation to occur.

        ", "refs": { } }, "InvalidCacheSecurityGroupStateFault": { "base": "

        The current state of the cache security group does not allow deletion.

        ", "refs": { } }, "InvalidParameterCombinationException": { "base": "

        Two or more incompatible parameters were specified.

        ", "refs": { } }, "InvalidParameterValueException": { "base": "

        The value for a parameter is invalid.

        ", "refs": { } }, "InvalidReplicationGroupStateFault": { "base": "

        The requested replication group is not in the available state.

        ", "refs": { } }, "InvalidSnapshotStateFault": { "base": "

        The current state of the snapshot does not allow the requested operation to occur.

        ", "refs": { } }, "InvalidSubnet": { "base": "

        An invalid subnet identifier was specified.

        ", "refs": { } }, "InvalidVPCNetworkStateFault": { "base": "

        The VPC network is in an invalid state.

        ", "refs": { } }, "KeyList": { "base": null, "refs": { "RemoveTagsFromResourceMessage$TagKeys": "

        A list of TagKeys identifying the tags you want removed from the named resource.

        " } }, "ListAllowedNodeTypeModificationsMessage": { "base": "

        The input parameters for the ListAllowedNodeTypeModifications operation.

        ", "refs": { } }, "ListTagsForResourceMessage": { "base": "

        The input parameters for the ListTagsForResource operation.

        ", "refs": { } }, "ModifyCacheClusterMessage": { "base": "

        Represents the input of a ModifyCacheCluster operation.

        ", "refs": { } }, "ModifyCacheClusterResult": { "base": null, "refs": { } }, "ModifyCacheParameterGroupMessage": { "base": "

        Represents the input of a ModifyCacheParameterGroup operation.

        ", "refs": { } }, "ModifyCacheSubnetGroupMessage": { "base": "

        Represents the input of a ModifyCacheSubnetGroup operation.

        ", "refs": { } }, "ModifyCacheSubnetGroupResult": { "base": null, "refs": { } }, "ModifyReplicationGroupMessage": { "base": "

        Represents the input of a ModifyReplicationGroups operation.

        ", "refs": { } }, "ModifyReplicationGroupResult": { "base": null, "refs": { } }, "NodeGroup": { "base": "

        Represents a collection of cache nodes in a replication group. One node in the node group is the read/write Primary node. All the other nodes are read-only Replica nodes.

        ", "refs": { "NodeGroupList$member": null } }, "NodeGroupConfiguration": { "base": "

        node group (shard) configuration options. Each node group (shard) configuration has the following: Slots, PrimaryAvailabilityZone, ReplicaAvailabilityZones, ReplicaCount.

        ", "refs": { "NodeGroupConfigurationList$member": null, "NodeSnapshot$NodeGroupConfiguration": "

        The configuration for the source node group (shard).

        " } }, "NodeGroupConfigurationList": { "base": null, "refs": { "CreateReplicationGroupMessage$NodeGroupConfiguration": "

        A list of node group (shard) configuration options. Each node group (shard) configuration has the following: Slots, PrimaryAvailabilityZone, ReplicaAvailabilityZones, ReplicaCount.

        If you're creating a Redis (cluster mode disabled) or a Redis (cluster mode enabled) replication group, you can use this parameter to configure one node group (shard) or you can omit this parameter.

        " } }, "NodeGroupList": { "base": null, "refs": { "ReplicationGroup$NodeGroups": "

        A single element list with information about the nodes in the replication group.

        " } }, "NodeGroupMember": { "base": "

        Represents a single node within a node group (shard).

        ", "refs": { "NodeGroupMemberList$member": null } }, "NodeGroupMemberList": { "base": null, "refs": { "NodeGroup$NodeGroupMembers": "

        A list containing information about individual nodes within the node group (shard).

        " } }, "NodeGroupsPerReplicationGroupQuotaExceededFault": { "base": "

        The request cannot be processed because it would exceed the maximum of 15 node groups (shards) in a single replication group.

        ", "refs": { } }, "NodeQuotaForClusterExceededFault": { "base": "

        The request cannot be processed because it would exceed the allowed number of cache nodes in a single cache cluster.

        ", "refs": { } }, "NodeQuotaForCustomerExceededFault": { "base": "

        The request cannot be processed because it would exceed the allowed number of cache nodes per customer.

        ", "refs": { } }, "NodeSnapshot": { "base": "

        Represents an individual cache node in a snapshot of a cache cluster.

        ", "refs": { "NodeSnapshotList$member": null } }, "NodeSnapshotList": { "base": null, "refs": { "Snapshot$NodeSnapshots": "

        A list of the cache nodes in the source cache cluster.

        " } }, "NodeTypeList": { "base": null, "refs": { "AllowedNodeTypeModificationsMessage$ScaleUpModifications": null } }, "NotificationConfiguration": { "base": "

        Describes a notification topic and its status. Notification topics are used for publishing ElastiCache events to subscribers using Amazon Simple Notification Service (SNS).

        ", "refs": { "CacheCluster$NotificationConfiguration": null } }, "Parameter": { "base": "

        Describes an individual setting that controls some aspect of ElastiCache behavior.

        ", "refs": { "ParametersList$member": null } }, "ParameterNameValue": { "base": "

        Describes a name-value pair that is used to update the value of a parameter.

        ", "refs": { "ParameterNameValueList$member": null } }, "ParameterNameValueList": { "base": null, "refs": { "ModifyCacheParameterGroupMessage$ParameterNameValues": "

        An array of parameter names and values for the parameter update. You must supply at least one parameter name and value; subsequent arguments are optional. A maximum of 20 parameters may be modified per request.

        ", "ResetCacheParameterGroupMessage$ParameterNameValues": "

        An array of parameter names to reset to their default values. If ResetAllParameters is true, do not use ParameterNameValues. If ResetAllParameters is false, you must specify the name of at least one parameter to reset.

        " } }, "ParametersList": { "base": null, "refs": { "CacheParameterGroupDetails$Parameters": "

        A list of Parameter instances.

        ", "EngineDefaults$Parameters": "

        Contains a list of engine default parameters.

        " } }, "PendingAutomaticFailoverStatus": { "base": null, "refs": { "ReplicationGroupPendingModifiedValues$AutomaticFailoverStatus": "

        Indicates the status of Multi-AZ for this Redis replication group.

        ElastiCache Multi-AZ replication groups are not supported on:

        • Redis versions earlier than 2.8.6.

        • Redis (cluster mode disabled):T1 and T2 cache node types.

          Redis (cluster mode enabled): T1 node types.

        " } }, "PendingModifiedValues": { "base": "

        A group of settings that are applied to the cache cluster in the future, or that are currently being applied.

        ", "refs": { "CacheCluster$PendingModifiedValues": null } }, "PreferredAvailabilityZoneList": { "base": null, "refs": { "CreateCacheClusterMessage$PreferredAvailabilityZones": "

        A list of the Availability Zones in which cache nodes are created. The order of the zones in the list is not important.

        This option is only supported on Memcached.

        If you are creating your cache cluster in an Amazon VPC (recommended) you can only locate nodes in Availability Zones that are associated with the subnets in the selected subnet group.

        The number of Availability Zones listed must equal the value of NumCacheNodes.

        If you want all the nodes in the same Availability Zone, use PreferredAvailabilityZone instead, or repeat the Availability Zone multiple times in the list.

        Default: System chosen Availability Zones.

        ", "ModifyCacheClusterMessage$NewAvailabilityZones": "

        The list of Availability Zones where the new Memcached cache nodes are created.

        This parameter is only valid when NumCacheNodes in the request is greater than the sum of the number of active cache nodes and the number of cache nodes pending creation (which may be zero). The number of Availability Zones supplied in this list must match the cache nodes being added in this request.

        This option is only supported on Memcached clusters.

        Scenarios:

        • Scenario 1: You have 3 active nodes and wish to add 2 nodes. Specify NumCacheNodes=5 (3 + 2) and optionally specify two Availability Zones for the two new nodes.

        • Scenario 2: You have 3 active nodes and 2 nodes pending creation (from the scenario 1 call) and want to add 1 more node. Specify NumCacheNodes=6 ((3 + 2) + 1) and optionally specify an Availability Zone for the new node.

        • Scenario 3: You want to cancel all pending operations. Specify NumCacheNodes=3 to cancel all pending operations.

        The Availability Zone placement of nodes pending creation cannot be modified. If you wish to cancel any nodes pending creation, add 0 nodes by setting NumCacheNodes to the number of current nodes.

        If cross-az is specified, existing Memcached nodes remain in their current Availability Zone. Only newly created nodes can be located in different Availability Zones. For guidance on how to move existing Memcached nodes to different Availability Zones, see the Availability Zone Considerations section of Cache Node Considerations for Memcached.

        Impact of new add/remove requests upon pending requests

        • Scenario-1

          • Pending Action: Delete

          • New Request: Delete

          • Result: The new delete, pending or immediate, replaces the pending delete.

        • Scenario-2

          • Pending Action: Delete

          • New Request: Create

          • Result: The new create, pending or immediate, replaces the pending delete.

        • Scenario-3

          • Pending Action: Create

          • New Request: Delete

          • Result: The new delete, pending or immediate, replaces the pending create.

        • Scenario-4

          • Pending Action: Create

          • New Request: Create

          • Result: The new create is added to the pending create.

            Important: If the new create request is Apply Immediately - Yes, all creates are performed immediately. If the new create request is Apply Immediately - No, all creates are pending.

        " } }, "PurchaseReservedCacheNodesOfferingMessage": { "base": "

        Represents the input of a PurchaseReservedCacheNodesOffering operation.

        ", "refs": { } }, "PurchaseReservedCacheNodesOfferingResult": { "base": null, "refs": { } }, "RebootCacheClusterMessage": { "base": "

        Represents the input of a RebootCacheCluster operation.

        ", "refs": { } }, "RebootCacheClusterResult": { "base": null, "refs": { } }, "RecurringCharge": { "base": "

        Contains the specific price and frequency of a recurring charges for a reserved cache node, or for a reserved cache node offering.

        ", "refs": { "RecurringChargeList$member": null } }, "RecurringChargeList": { "base": null, "refs": { "ReservedCacheNode$RecurringCharges": "

        The recurring price charged to run this reserved cache node.

        ", "ReservedCacheNodesOffering$RecurringCharges": "

        The recurring price charged to run this reserved cache node.

        " } }, "RemoveTagsFromResourceMessage": { "base": "

        Represents the input of a RemoveTagsFromResource operation.

        ", "refs": { } }, "ReplicationGroup": { "base": "

        Contains all of the attributes of a specific Redis replication group.

        ", "refs": { "CreateReplicationGroupResult$ReplicationGroup": null, "DeleteReplicationGroupResult$ReplicationGroup": null, "ModifyReplicationGroupResult$ReplicationGroup": null, "ReplicationGroupList$member": null } }, "ReplicationGroupAlreadyExistsFault": { "base": "

        The specified replication group already exists.

        ", "refs": { } }, "ReplicationGroupList": { "base": null, "refs": { "ReplicationGroupMessage$ReplicationGroups": "

        A list of replication groups. Each item in the list contains detailed information about one replication group.

        " } }, "ReplicationGroupMessage": { "base": "

        Represents the output of a DescribeReplicationGroups operation.

        ", "refs": { } }, "ReplicationGroupNotFoundFault": { "base": "

        The specified replication group does not exist.

        ", "refs": { } }, "ReplicationGroupPendingModifiedValues": { "base": "

        The settings to be applied to the Redis replication group, either immediately or during the next maintenance window.

        ", "refs": { "ReplicationGroup$PendingModifiedValues": "

        A group of settings to be applied to the replication group, either immediately or during the next maintenance window.

        " } }, "ReservedCacheNode": { "base": "

        Represents the output of a PurchaseReservedCacheNodesOffering operation.

        ", "refs": { "PurchaseReservedCacheNodesOfferingResult$ReservedCacheNode": null, "ReservedCacheNodeList$member": null } }, "ReservedCacheNodeAlreadyExistsFault": { "base": "

        You already have a reservation with the given identifier.

        ", "refs": { } }, "ReservedCacheNodeList": { "base": null, "refs": { "ReservedCacheNodeMessage$ReservedCacheNodes": "

        A list of reserved cache nodes. Each element in the list contains detailed information about one node.

        " } }, "ReservedCacheNodeMessage": { "base": "

        Represents the output of a DescribeReservedCacheNodes operation.

        ", "refs": { } }, "ReservedCacheNodeNotFoundFault": { "base": "

        The requested reserved cache node was not found.

        ", "refs": { } }, "ReservedCacheNodeQuotaExceededFault": { "base": "

        The request cannot be processed because it would exceed the user's cache node quota.

        ", "refs": { } }, "ReservedCacheNodesOffering": { "base": "

        Describes all of the attributes of a reserved cache node offering.

        ", "refs": { "ReservedCacheNodesOfferingList$member": null } }, "ReservedCacheNodesOfferingList": { "base": null, "refs": { "ReservedCacheNodesOfferingMessage$ReservedCacheNodesOfferings": "

        A list of reserved cache node offerings. Each element in the list contains detailed information about one offering.

        " } }, "ReservedCacheNodesOfferingMessage": { "base": "

        Represents the output of a DescribeReservedCacheNodesOfferings operation.

        ", "refs": { } }, "ReservedCacheNodesOfferingNotFoundFault": { "base": "

        The requested cache node offering does not exist.

        ", "refs": { } }, "ResetCacheParameterGroupMessage": { "base": "

        Represents the input of a ResetCacheParameterGroup operation.

        ", "refs": { } }, "RevokeCacheSecurityGroupIngressMessage": { "base": "

        Represents the input of a RevokeCacheSecurityGroupIngress operation.

        ", "refs": { } }, "RevokeCacheSecurityGroupIngressResult": { "base": null, "refs": { } }, "SecurityGroupIdsList": { "base": null, "refs": { "CreateCacheClusterMessage$SecurityGroupIds": "

        One or more VPC security groups associated with the cache cluster.

        Use this parameter only when you are creating a cache cluster in an Amazon Virtual Private Cloud (Amazon VPC).

        ", "CreateReplicationGroupMessage$SecurityGroupIds": "

        One or more Amazon VPC security groups associated with this replication group.

        Use this parameter only when you are creating a replication group in an Amazon Virtual Private Cloud (Amazon VPC).

        ", "ModifyCacheClusterMessage$SecurityGroupIds": "

        Specifies the VPC Security Groups associated with the cache cluster.

        This parameter can be used only with clusters that are created in an Amazon Virtual Private Cloud (Amazon VPC).

        ", "ModifyReplicationGroupMessage$SecurityGroupIds": "

        Specifies the VPC Security Groups associated with the cache clusters in the replication group.

        This parameter can be used only with replication group containing cache clusters running in an Amazon Virtual Private Cloud (Amazon VPC).

        " } }, "SecurityGroupMembership": { "base": "

        Represents a single cache security group and its status.

        ", "refs": { "SecurityGroupMembershipList$member": null } }, "SecurityGroupMembershipList": { "base": null, "refs": { "CacheCluster$SecurityGroups": "

        A list of VPC Security Groups associated with the cache cluster.

        " } }, "Snapshot": { "base": "

        Represents a copy of an entire Redis cache cluster as of the time when the snapshot was taken.

        ", "refs": { "CopySnapshotResult$Snapshot": null, "CreateSnapshotResult$Snapshot": null, "DeleteSnapshotResult$Snapshot": null, "SnapshotList$member": null } }, "SnapshotAlreadyExistsFault": { "base": "

        You already have a snapshot with the given name.

        ", "refs": { } }, "SnapshotArnsList": { "base": null, "refs": { "CreateCacheClusterMessage$SnapshotArns": "

        A single-element string list containing an Amazon Resource Name (ARN) that uniquely identifies a Redis RDB snapshot file stored in Amazon S3. The snapshot file is used to populate the node group (shard). The Amazon S3 object name in the ARN cannot contain any commas.

        This parameter is only valid if the Engine parameter is redis.

        Example of an Amazon S3 ARN: arn:aws:s3:::my_bucket/snapshot1.rdb

        ", "CreateReplicationGroupMessage$SnapshotArns": "

        A list of Amazon Resource Names (ARN) that uniquely identify the Redis RDB snapshot files stored in Amazon S3. The snapshot files are used to populate the replication group. The Amazon S3 object name in the ARN cannot contain any commas. The list must match the number of node groups (shards) in the replication group, which means you cannot repartition.

        This parameter is only valid if the Engine parameter is redis.

        Example of an Amazon S3 ARN: arn:aws:s3:::my_bucket/snapshot1.rdb

        " } }, "SnapshotFeatureNotSupportedFault": { "base": "

        You attempted one of the following operations:

        • Creating a snapshot of a Redis cache cluster running on a cache.t1.micro cache node.

        • Creating a snapshot of a cache cluster that is running Memcached rather than Redis.

        Neither of these are supported by ElastiCache.

        ", "refs": { } }, "SnapshotList": { "base": null, "refs": { "DescribeSnapshotsListMessage$Snapshots": "

        A list of snapshots. Each item in the list contains detailed information about one snapshot.

        " } }, "SnapshotNotFoundFault": { "base": "

        The requested snapshot name does not refer to an existing snapshot.

        ", "refs": { } }, "SnapshotQuotaExceededFault": { "base": "

        The request cannot be processed because it would exceed the maximum number of snapshots.

        ", "refs": { } }, "SourceType": { "base": null, "refs": { "DescribeEventsMessage$SourceType": "

        The event source to retrieve events for. If no value is specified, all events are returned.

        ", "Event$SourceType": "

        Specifies the origin of this event - a cache cluster, a parameter group, a security group, etc.

        " } }, "String": { "base": null, "refs": { "AddTagsToResourceMessage$ResourceName": "

        The Amazon Resource Name (ARN) of the resource to which the tags are to be added, for example arn:aws:elasticache:us-west-2:0123456789:cluster:myCluster or arn:aws:elasticache:us-west-2:0123456789:snapshot:mySnapshot.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces.

        ", "AuthorizeCacheSecurityGroupIngressMessage$CacheSecurityGroupName": "

        The cache security group that allows network ingress.

        ", "AuthorizeCacheSecurityGroupIngressMessage$EC2SecurityGroupName": "

        The Amazon EC2 security group to be authorized for ingress to the cache security group.

        ", "AuthorizeCacheSecurityGroupIngressMessage$EC2SecurityGroupOwnerId": "

        The AWS account number of the Amazon EC2 security group owner. Note that this is not the same thing as an AWS access key ID - you must provide a valid AWS account number for this parameter.

        ", "AvailabilityZone$Name": "

        The name of the Availability Zone.

        ", "AvailabilityZonesList$member": null, "CacheCluster$CacheClusterId": "

        The user-supplied identifier of the cache cluster. This identifier is a unique key that identifies a cache cluster.

        ", "CacheCluster$ClientDownloadLandingPage": "

        The URL of the web page where you can download the latest ElastiCache client library.

        ", "CacheCluster$CacheNodeType": "

        The name of the compute and memory capacity node type for the cache cluster.

        Valid node types are as follows:

        • General purpose:

          • Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge, cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

          • Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

        • Compute optimized: cache.c1.xlarge

        • Memory optimized:

          • Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

          • Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

        Notes:

        • All T2 instances are created in an Amazon Virtual Private Cloud (Amazon VPC).

        • Redis backup/restore is not supported for Redis (cluster mode disabled) T1 and T2 instances. Backup/restore is supported on Redis (cluster mode enabled) T2 instances.

        • Redis Append-only files (AOF) functionality is not supported for T1 or T2 instances.

        For a complete listing of node types and specifications, see Amazon ElastiCache Product Features and Details and either Cache Node Type-Specific Parameters for Memcached or Cache Node Type-Specific Parameters for Redis.

        ", "CacheCluster$Engine": "

        The name of the cache engine (memcached or redis) to be used for this cache cluster.

        ", "CacheCluster$EngineVersion": "

        The version of the cache engine that is used in this cache cluster.

        ", "CacheCluster$CacheClusterStatus": "

        The current state of this cache cluster, one of the following values: available, creating, deleted, deleting, incompatible-network, modifying, rebooting cache cluster nodes, restore-failed, or snapshotting.

        ", "CacheCluster$PreferredAvailabilityZone": "

        The name of the Availability Zone in which the cache cluster is located or \"Multiple\" if the cache nodes are located in different Availability Zones.

        ", "CacheCluster$PreferredMaintenanceWindow": "

        Specifies the weekly time range during which maintenance on the cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period.

        Valid values for ddd are:

        • sun

        • mon

        • tue

        • wed

        • thu

        • fri

        • sat

        Example: sun:23:00-mon:01:30

        ", "CacheCluster$CacheSubnetGroupName": "

        The name of the cache subnet group associated with the cache cluster.

        ", "CacheCluster$ReplicationGroupId": "

        The replication group to which this cache cluster belongs. If this field is empty, the cache cluster is not associated with any replication group.

        ", "CacheCluster$SnapshotWindow": "

        The daily time range (in UTC) during which ElastiCache begins taking a daily snapshot of your cache cluster.

        Example: 05:00-09:00

        ", "CacheClusterMessage$Marker": "

        Provides an identifier to allow retrieval of paginated results.

        ", "CacheEngineVersion$Engine": "

        The name of the cache engine.

        ", "CacheEngineVersion$EngineVersion": "

        The version number of the cache engine.

        ", "CacheEngineVersion$CacheParameterGroupFamily": "

        The name of the cache parameter group family associated with this cache engine.

        Valid values are: memcached1.4 | redis2.6 | redis2.8 | redis3.2

        ", "CacheEngineVersion$CacheEngineDescription": "

        The description of the cache engine.

        ", "CacheEngineVersion$CacheEngineVersionDescription": "

        The description of the cache engine version.

        ", "CacheEngineVersionMessage$Marker": "

        Provides an identifier to allow retrieval of paginated results.

        ", "CacheNode$CacheNodeId": "

        The cache node identifier. A node ID is a numeric identifier (0001, 0002, etc.). The combination of cluster ID and node ID uniquely identifies every cache node used in a customer's AWS account.

        ", "CacheNode$CacheNodeStatus": "

        The current state of this cache node.

        ", "CacheNode$ParameterGroupStatus": "

        The status of the parameter group applied to this cache node.

        ", "CacheNode$SourceCacheNodeId": "

        The ID of the primary node to which this read replica node is synchronized. If this field is empty, this node is not associated with a primary cache cluster.

        ", "CacheNode$CustomerAvailabilityZone": "

        The Availability Zone where this node was created and now resides.

        ", "CacheNodeIdsList$member": null, "CacheNodeTypeSpecificParameter$ParameterName": "

        The name of the parameter.

        ", "CacheNodeTypeSpecificParameter$Description": "

        A description of the parameter.

        ", "CacheNodeTypeSpecificParameter$Source": "

        The source of the parameter value.

        ", "CacheNodeTypeSpecificParameter$DataType": "

        The valid data type for the parameter.

        ", "CacheNodeTypeSpecificParameter$AllowedValues": "

        The valid range of values for the parameter.

        ", "CacheNodeTypeSpecificParameter$MinimumEngineVersion": "

        The earliest cache engine version to which the parameter can apply.

        ", "CacheNodeTypeSpecificValue$CacheNodeType": "

        The cache node type for which this value applies.

        ", "CacheNodeTypeSpecificValue$Value": "

        The value for the cache node type.

        ", "CacheParameterGroup$CacheParameterGroupName": "

        The name of the cache parameter group.

        ", "CacheParameterGroup$CacheParameterGroupFamily": "

        The name of the cache parameter group family that this cache parameter group is compatible with.

        Valid values are: memcached1.4 | redis2.6 | redis2.8 | redis3.2

        ", "CacheParameterGroup$Description": "

        The description for this cache parameter group.

        ", "CacheParameterGroupDetails$Marker": "

        Provides an identifier to allow retrieval of paginated results.

        ", "CacheParameterGroupNameMessage$CacheParameterGroupName": "

        The name of the cache parameter group.

        ", "CacheParameterGroupStatus$CacheParameterGroupName": "

        The name of the cache parameter group.

        ", "CacheParameterGroupStatus$ParameterApplyStatus": "

        The status of parameter updates.

        ", "CacheParameterGroupsMessage$Marker": "

        Provides an identifier to allow retrieval of paginated results.

        ", "CacheSecurityGroup$OwnerId": "

        The AWS account ID of the cache security group owner.

        ", "CacheSecurityGroup$CacheSecurityGroupName": "

        The name of the cache security group.

        ", "CacheSecurityGroup$Description": "

        The description of the cache security group.

        ", "CacheSecurityGroupMembership$CacheSecurityGroupName": "

        The name of the cache security group.

        ", "CacheSecurityGroupMembership$Status": "

        The membership status in the cache security group. The status changes when a cache security group is modified, or when the cache security groups assigned to a cache cluster are modified.

        ", "CacheSecurityGroupMessage$Marker": "

        Provides an identifier to allow retrieval of paginated results.

        ", "CacheSecurityGroupNameList$member": null, "CacheSubnetGroup$CacheSubnetGroupName": "

        The name of the cache subnet group.

        ", "CacheSubnetGroup$CacheSubnetGroupDescription": "

        The description of the cache subnet group.

        ", "CacheSubnetGroup$VpcId": "

        The Amazon Virtual Private Cloud identifier (VPC ID) of the cache subnet group.

        ", "CacheSubnetGroupMessage$Marker": "

        Provides an identifier to allow retrieval of paginated results.

        ", "ClusterIdList$member": null, "CopySnapshotMessage$SourceSnapshotName": "

        The name of an existing snapshot from which to make a copy.

        ", "CopySnapshotMessage$TargetSnapshotName": "

        A name for the snapshot copy. ElastiCache does not permit overwriting a snapshot, therefore this name must be unique within its context - ElastiCache or an Amazon S3 bucket if exporting.

        ", "CopySnapshotMessage$TargetBucket": "

        The Amazon S3 bucket to which the snapshot is exported. This parameter is used only when exporting a snapshot for external access.

        When using this parameter to export a snapshot, be sure Amazon ElastiCache has the needed permissions to this S3 bucket. For more information, see Step 2: Grant ElastiCache Access to Your Amazon S3 Bucket in the Amazon ElastiCache User Guide.

        For more information, see Exporting a Snapshot in the Amazon ElastiCache User Guide.

        ", "CreateCacheClusterMessage$CacheClusterId": "

        The node group (shard) identifier. This parameter is stored as a lowercase string.

        Constraints:

        • A name must contain from 1 to 20 alphanumeric characters or hyphens.

        • The first character must be a letter.

        • A name cannot end with a hyphen or contain two consecutive hyphens.

        ", "CreateCacheClusterMessage$ReplicationGroupId": "

        Due to current limitations on Redis (cluster mode disabled), this operation or parameter is not supported on Redis (cluster mode enabled) replication groups.

        The ID of the replication group to which this cache cluster should belong. If this parameter is specified, the cache cluster is added to the specified replication group as a read replica; otherwise, the cache cluster is a standalone primary that is not part of any replication group.

        If the specified replication group is Multi-AZ enabled and the Availability Zone is not specified, the cache cluster is created in Availability Zones that provide the best spread of read replicas across Availability Zones.

        This parameter is only valid if the Engine parameter is redis.

        ", "CreateCacheClusterMessage$PreferredAvailabilityZone": "

        The EC2 Availability Zone in which the cache cluster is created.

        All nodes belonging to this Memcached cache cluster are placed in the preferred Availability Zone. If you want to create your nodes across multiple Availability Zones, use PreferredAvailabilityZones.

        Default: System chosen Availability Zone.

        ", "CreateCacheClusterMessage$CacheNodeType": "

        The compute and memory capacity of the nodes in the node group (shard).

        Valid node types are as follows:

        • General purpose:

          • Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge, cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

          • Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

        • Compute optimized: cache.c1.xlarge

        • Memory optimized:

          • Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

          • Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

        Notes:

        • All T2 instances are created in an Amazon Virtual Private Cloud (Amazon VPC).

        • Redis backup/restore is not supported for Redis (cluster mode disabled) T1 and T2 instances. Backup/restore is supported on Redis (cluster mode enabled) T2 instances.

        • Redis Append-only files (AOF) functionality is not supported for T1 or T2 instances.

        For a complete listing of node types and specifications, see Amazon ElastiCache Product Features and Details and either Cache Node Type-Specific Parameters for Memcached or Cache Node Type-Specific Parameters for Redis.

        ", "CreateCacheClusterMessage$Engine": "

        The name of the cache engine to be used for this cache cluster.

        Valid values for this parameter are: memcached | redis

        ", "CreateCacheClusterMessage$EngineVersion": "

        The version number of the cache engine to be used for this cache cluster. To view the supported cache engine versions, use the DescribeCacheEngineVersions operation.

        Important: You can upgrade to a newer engine version (see Selecting a Cache Engine and Version), but you cannot downgrade to an earlier engine version. If you want to use an earlier engine version, you must delete the existing cache cluster or replication group and create it anew with the earlier engine version.

        ", "CreateCacheClusterMessage$CacheParameterGroupName": "

        The name of the parameter group to associate with this cache cluster. If this argument is omitted, the default parameter group for the specified engine is used. You cannot use any parameter group which has cluster-enabled='yes' when creating a cluster.

        ", "CreateCacheClusterMessage$CacheSubnetGroupName": "

        The name of the subnet group to be used for the cache cluster.

        Use this parameter only when you are creating a cache cluster in an Amazon Virtual Private Cloud (Amazon VPC).

        If you're going to launch your cluster in an Amazon VPC, you need to create a subnet group before you start creating a cluster. For more information, see Subnets and Subnet Groups.

        ", "CreateCacheClusterMessage$SnapshotName": "

        The name of a Redis snapshot from which to restore data into the new node group (shard). The snapshot status changes to restoring while the new node group (shard) is being created.

        This parameter is only valid if the Engine parameter is redis.

        ", "CreateCacheClusterMessage$PreferredMaintenanceWindow": "

        Specifies the weekly time range during which maintenance on the cache cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period. Valid values for ddd are:

        Specifies the weekly time range during which maintenance on the cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period.

        Valid values for ddd are:

        • sun

        • mon

        • tue

        • wed

        • thu

        • fri

        • sat

        Example: sun:23:00-mon:01:30

        ", "CreateCacheClusterMessage$NotificationTopicArn": "

        The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (SNS) topic to which notifications are sent.

        The Amazon SNS topic owner must be the same as the cache cluster owner.

        ", "CreateCacheClusterMessage$SnapshotWindow": "

        The daily time range (in UTC) during which ElastiCache begins taking a daily snapshot of your node group (shard).

        Example: 05:00-09:00

        If you do not specify this parameter, ElastiCache automatically chooses an appropriate time range.

        Note: This parameter is only valid if the Engine parameter is redis.

        ", "CreateCacheParameterGroupMessage$CacheParameterGroupName": "

        A user-specified name for the cache parameter group.

        ", "CreateCacheParameterGroupMessage$CacheParameterGroupFamily": "

        The name of the cache parameter group family that the cache parameter group can be used with.

        Valid values are: memcached1.4 | redis2.6 | redis2.8 | redis3.2

        ", "CreateCacheParameterGroupMessage$Description": "

        A user-specified description for the cache parameter group.

        ", "CreateCacheSecurityGroupMessage$CacheSecurityGroupName": "

        A name for the cache security group. This value is stored as a lowercase string.

        Constraints: Must contain no more than 255 alphanumeric characters. Cannot be the word \"Default\".

        Example: mysecuritygroup

        ", "CreateCacheSecurityGroupMessage$Description": "

        A description for the cache security group.

        ", "CreateCacheSubnetGroupMessage$CacheSubnetGroupName": "

        A name for the cache subnet group. This value is stored as a lowercase string.

        Constraints: Must contain no more than 255 alphanumeric characters or hyphens.

        Example: mysubnetgroup

        ", "CreateCacheSubnetGroupMessage$CacheSubnetGroupDescription": "

        A description for the cache subnet group.

        ", "CreateReplicationGroupMessage$ReplicationGroupId": "

        The replication group identifier. This parameter is stored as a lowercase string.

        Constraints:

        • A name must contain from 1 to 20 alphanumeric characters or hyphens.

        • The first character must be a letter.

        • A name cannot end with a hyphen or contain two consecutive hyphens.

        ", "CreateReplicationGroupMessage$ReplicationGroupDescription": "

        A user-created description for the replication group.

        ", "CreateReplicationGroupMessage$PrimaryClusterId": "

        The identifier of the cache cluster that serves as the primary for this replication group. This cache cluster must already exist and have a status of available.

        This parameter is not required if NumCacheClusters, NumNodeGroups, or ReplicasPerNodeGroup is specified.

        ", "CreateReplicationGroupMessage$CacheNodeType": "

        The compute and memory capacity of the nodes in the node group (shard).

        Valid node types are as follows:

        • General purpose:

          • Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge, cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

          • Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

        • Compute optimized: cache.c1.xlarge

        • Memory optimized:

          • Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

          • Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

        Notes:

        • All T2 instances are created in an Amazon Virtual Private Cloud (Amazon VPC).

        • Redis backup/restore is not supported for Redis (cluster mode disabled) T1 and T2 instances. Backup/restore is supported on Redis (cluster mode enabled) T2 instances.

        • Redis Append-only files (AOF) functionality is not supported for T1 or T2 instances.

        For a complete listing of node types and specifications, see Amazon ElastiCache Product Features and Details and either Cache Node Type-Specific Parameters for Memcached or Cache Node Type-Specific Parameters for Redis.

        ", "CreateReplicationGroupMessage$Engine": "

        The name of the cache engine to be used for the cache clusters in this replication group.

        ", "CreateReplicationGroupMessage$EngineVersion": "

        The version number of the cache engine to be used for the cache clusters in this replication group. To view the supported cache engine versions, use the DescribeCacheEngineVersions operation.

        Important: You can upgrade to a newer engine version (see Selecting a Cache Engine and Version) in the ElastiCache User Guide, but you cannot downgrade to an earlier engine version. If you want to use an earlier engine version, you must delete the existing cache cluster or replication group and create it anew with the earlier engine version.

        ", "CreateReplicationGroupMessage$CacheParameterGroupName": "

        The name of the parameter group to associate with this replication group. If this argument is omitted, the default cache parameter group for the specified engine is used.

        If you are running Redis version 3.2.4 or later, only one node group (shard), and want to use a default parameter group, we recommend that you specify the parameter group by name.

        • To create a Redis (cluster mode disabled) replication group, use CacheParameterGroupName=default.redis3.2.

        • To create a Redis (cluster mode enabled) replication group, use CacheParameterGroupName=default.redis3.2.cluster.on.

        ", "CreateReplicationGroupMessage$CacheSubnetGroupName": "

        The name of the cache subnet group to be used for the replication group.

        If you're going to launch your cluster in an Amazon VPC, you need to create a subnet group before you start creating a cluster. For more information, see Subnets and Subnet Groups.

        ", "CreateReplicationGroupMessage$SnapshotName": "

        The name of a snapshot from which to restore data into the new replication group. The snapshot status changes to restoring while the new replication group is being created.

        This parameter is only valid if the Engine parameter is redis.

        ", "CreateReplicationGroupMessage$PreferredMaintenanceWindow": "

        Specifies the weekly time range during which maintenance on the cache cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period. Valid values for ddd are:

        Specifies the weekly time range during which maintenance on the cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period.

        Valid values for ddd are:

        • sun

        • mon

        • tue

        • wed

        • thu

        • fri

        • sat

        Example: sun:23:00-mon:01:30

        ", "CreateReplicationGroupMessage$NotificationTopicArn": "

        The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (SNS) topic to which notifications are sent.

        The Amazon SNS topic owner must be the same as the cache cluster owner.

        ", "CreateReplicationGroupMessage$SnapshotWindow": "

        The daily time range (in UTC) during which ElastiCache begins taking a daily snapshot of your node group (shard).

        Example: 05:00-09:00

        If you do not specify this parameter, ElastiCache automatically chooses an appropriate time range.

        This parameter is only valid if the Engine parameter is redis.

        ", "CreateSnapshotMessage$ReplicationGroupId": "

        The identifier of an existing replication group. The snapshot is created from this replication group.

        ", "CreateSnapshotMessage$CacheClusterId": "

        The identifier of an existing cache cluster. The snapshot is created from this cache cluster.

        ", "CreateSnapshotMessage$SnapshotName": "

        A name for the snapshot being created.

        ", "DeleteCacheClusterMessage$CacheClusterId": "

        The cache cluster identifier for the cluster to be deleted. This parameter is not case sensitive.

        ", "DeleteCacheClusterMessage$FinalSnapshotIdentifier": "

        The user-supplied name of a final cache cluster snapshot. This is the unique name that identifies the snapshot. ElastiCache creates the snapshot, and then deletes the cache cluster immediately afterward.

        ", "DeleteCacheParameterGroupMessage$CacheParameterGroupName": "

        The name of the cache parameter group to delete.

        The specified cache security group must not be associated with any cache clusters.

        ", "DeleteCacheSecurityGroupMessage$CacheSecurityGroupName": "

        The name of the cache security group to delete.

        You cannot delete the default security group.

        ", "DeleteCacheSubnetGroupMessage$CacheSubnetGroupName": "

        The name of the cache subnet group to delete.

        Constraints: Must contain no more than 255 alphanumeric characters or hyphens.

        ", "DeleteReplicationGroupMessage$ReplicationGroupId": "

        The identifier for the cluster to be deleted. This parameter is not case sensitive.

        ", "DeleteReplicationGroupMessage$FinalSnapshotIdentifier": "

        The name of a final node group (shard) snapshot. ElastiCache creates the snapshot from the primary node in the cluster, rather than one of the replicas; this is to ensure that it captures the freshest data. After the final snapshot is taken, the replication group is immediately deleted.

        ", "DeleteSnapshotMessage$SnapshotName": "

        The name of the snapshot to be deleted.

        ", "DescribeCacheClustersMessage$CacheClusterId": "

        The user-supplied cluster identifier. If this parameter is specified, only information about that specific cache cluster is returned. This parameter isn't case sensitive.

        ", "DescribeCacheClustersMessage$Marker": "

        An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeCacheEngineVersionsMessage$Engine": "

        The cache engine to return. Valid values: memcached | redis

        ", "DescribeCacheEngineVersionsMessage$EngineVersion": "

        The cache engine version to return.

        Example: 1.4.14

        ", "DescribeCacheEngineVersionsMessage$CacheParameterGroupFamily": "

        The name of a specific cache parameter group family to return details for.

        Valid values are: memcached1.4 | redis2.6 | redis2.8 | redis3.2

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "DescribeCacheEngineVersionsMessage$Marker": "

        An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeCacheParameterGroupsMessage$CacheParameterGroupName": "

        The name of a specific cache parameter group to return details for.

        ", "DescribeCacheParameterGroupsMessage$Marker": "

        An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeCacheParametersMessage$CacheParameterGroupName": "

        The name of a specific cache parameter group to return details for.

        ", "DescribeCacheParametersMessage$Source": "

        The parameter types to return.

        Valid values: user | system | engine-default

        ", "DescribeCacheParametersMessage$Marker": "

        An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeCacheSecurityGroupsMessage$CacheSecurityGroupName": "

        The name of the cache security group to return details for.

        ", "DescribeCacheSecurityGroupsMessage$Marker": "

        An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeCacheSubnetGroupsMessage$CacheSubnetGroupName": "

        The name of the cache subnet group to return details for.

        ", "DescribeCacheSubnetGroupsMessage$Marker": "

        An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeEngineDefaultParametersMessage$CacheParameterGroupFamily": "

        The name of the cache parameter group family.

        Valid values are: memcached1.4 | redis2.6 | redis2.8 | redis3.2

        ", "DescribeEngineDefaultParametersMessage$Marker": "

        An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeEventsMessage$SourceIdentifier": "

        The identifier of the event source for which events are returned. If not specified, all sources are included in the response.

        ", "DescribeEventsMessage$Marker": "

        An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeReplicationGroupsMessage$ReplicationGroupId": "

        The identifier for the replication group to be described. This parameter is not case sensitive.

        If you do not specify this parameter, information about all replication groups is returned.

        ", "DescribeReplicationGroupsMessage$Marker": "

        An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeReservedCacheNodesMessage$ReservedCacheNodeId": "

        The reserved cache node identifier filter value. Use this parameter to show only the reservation that matches the specified reservation ID.

        ", "DescribeReservedCacheNodesMessage$ReservedCacheNodesOfferingId": "

        The offering identifier filter value. Use this parameter to show only purchased reservations matching the specified offering identifier.

        ", "DescribeReservedCacheNodesMessage$CacheNodeType": "

        The cache node type filter value. Use this parameter to show only those reservations matching the specified cache node type.

        Valid node types are as follows:

        • General purpose:

          • Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge, cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

          • Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

        • Compute optimized: cache.c1.xlarge

        • Memory optimized:

          • Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

          • Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

        Notes:

        • All T2 instances are created in an Amazon Virtual Private Cloud (Amazon VPC).

        • Redis backup/restore is not supported for Redis (cluster mode disabled) T1 and T2 instances. Backup/restore is supported on Redis (cluster mode enabled) T2 instances.

        • Redis Append-only files (AOF) functionality is not supported for T1 or T2 instances.

        For a complete listing of node types and specifications, see Amazon ElastiCache Product Features and Details and either Cache Node Type-Specific Parameters for Memcached or Cache Node Type-Specific Parameters for Redis.

        ", "DescribeReservedCacheNodesMessage$Duration": "

        The duration filter value, specified in years or seconds. Use this parameter to show only reservations for this duration.

        Valid Values: 1 | 3 | 31536000 | 94608000

        ", "DescribeReservedCacheNodesMessage$ProductDescription": "

        The product description filter value. Use this parameter to show only those reservations matching the specified product description.

        ", "DescribeReservedCacheNodesMessage$OfferingType": "

        The offering type filter value. Use this parameter to show only the available offerings matching the specified offering type.

        Valid values: \"Light Utilization\"|\"Medium Utilization\"|\"Heavy Utilization\"

        ", "DescribeReservedCacheNodesMessage$Marker": "

        An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeReservedCacheNodesOfferingsMessage$ReservedCacheNodesOfferingId": "

        The offering identifier filter value. Use this parameter to show only the available offering that matches the specified reservation identifier.

        Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706

        ", "DescribeReservedCacheNodesOfferingsMessage$CacheNodeType": "

        The cache node type filter value. Use this parameter to show only the available offerings matching the specified cache node type.

        Valid node types are as follows:

        • General purpose:

          • Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge, cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

          • Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

        • Compute optimized: cache.c1.xlarge

        • Memory optimized:

          • Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

          • Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

        Notes:

        • All T2 instances are created in an Amazon Virtual Private Cloud (Amazon VPC).

        • Redis backup/restore is not supported for Redis (cluster mode disabled) T1 and T2 instances. Backup/restore is supported on Redis (cluster mode enabled) T2 instances.

        • Redis Append-only files (AOF) functionality is not supported for T1 or T2 instances.

        For a complete listing of node types and specifications, see Amazon ElastiCache Product Features and Details and either Cache Node Type-Specific Parameters for Memcached or Cache Node Type-Specific Parameters for Redis.

        ", "DescribeReservedCacheNodesOfferingsMessage$Duration": "

        Duration filter value, specified in years or seconds. Use this parameter to show only reservations for a given duration.

        Valid Values: 1 | 3 | 31536000 | 94608000

        ", "DescribeReservedCacheNodesOfferingsMessage$ProductDescription": "

        The product description filter value. Use this parameter to show only the available offerings matching the specified product description.

        ", "DescribeReservedCacheNodesOfferingsMessage$OfferingType": "

        The offering type filter value. Use this parameter to show only the available offerings matching the specified offering type.

        Valid Values: \"Light Utilization\"|\"Medium Utilization\"|\"Heavy Utilization\"

        ", "DescribeReservedCacheNodesOfferingsMessage$Marker": "

        An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeSnapshotsListMessage$Marker": "

        An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeSnapshotsMessage$ReplicationGroupId": "

        A user-supplied replication group identifier. If this parameter is specified, only snapshots associated with that specific replication group are described.

        ", "DescribeSnapshotsMessage$CacheClusterId": "

        A user-supplied cluster identifier. If this parameter is specified, only snapshots associated with that specific cache cluster are described.

        ", "DescribeSnapshotsMessage$SnapshotName": "

        A user-supplied name of the snapshot. If this parameter is specified, only this snapshot are described.

        ", "DescribeSnapshotsMessage$SnapshotSource": "

        If set to system, the output shows snapshots that were automatically created by ElastiCache. If set to user the output shows snapshots that were manually created. If omitted, the output shows both automatically and manually created snapshots.

        ", "DescribeSnapshotsMessage$Marker": "

        An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "EC2SecurityGroup$Status": "

        The status of the Amazon EC2 security group.

        ", "EC2SecurityGroup$EC2SecurityGroupName": "

        The name of the Amazon EC2 security group.

        ", "EC2SecurityGroup$EC2SecurityGroupOwnerId": "

        The AWS account ID of the Amazon EC2 security group owner.

        ", "Endpoint$Address": "

        The DNS hostname of the cache node.

        ", "EngineDefaults$CacheParameterGroupFamily": "

        Specifies the name of the cache parameter group family to which the engine default parameters apply.

        Valid values are: memcached1.4 | redis2.6 | redis2.8 | redis3.2

        ", "EngineDefaults$Marker": "

        Provides an identifier to allow retrieval of paginated results.

        ", "Event$SourceIdentifier": "

        The identifier for the source of the event. For example, if the event occurred at the cache cluster level, the identifier would be the name of the cache cluster.

        ", "Event$Message": "

        The text of the event.

        ", "EventsMessage$Marker": "

        Provides an identifier to allow retrieval of paginated results.

        ", "KeyList$member": null, "ListAllowedNodeTypeModificationsMessage$CacheClusterId": "

        The name of the cache cluster you want to scale up to a larger node instanced type. ElastiCache uses the cluster id to identify the current node type of this cluster and from that to create a list of node types you can scale up to.

        You must provide a value for either the CacheClusterId or the ReplicationGroupId.

        ", "ListAllowedNodeTypeModificationsMessage$ReplicationGroupId": "

        The name of the replication group want to scale up to a larger node type. ElastiCache uses the replication group id to identify the current node type being used by this replication group, and from that to create a list of node types you can scale up to.

        You must provide a value for either the CacheClusterId or the ReplicationGroupId.

        ", "ListTagsForResourceMessage$ResourceName": "

        The Amazon Resource Name (ARN) of the resource for which you want the list of tags, for example arn:aws:elasticache:us-west-2:0123456789:cluster:myCluster or arn:aws:elasticache:us-west-2:0123456789:snapshot:mySnapshot.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces.

        ", "ModifyCacheClusterMessage$CacheClusterId": "

        The cache cluster identifier. This value is stored as a lowercase string.

        ", "ModifyCacheClusterMessage$PreferredMaintenanceWindow": "

        Specifies the weekly time range during which maintenance on the cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period.

        Valid values for ddd are:

        • sun

        • mon

        • tue

        • wed

        • thu

        • fri

        • sat

        Example: sun:23:00-mon:01:30

        ", "ModifyCacheClusterMessage$NotificationTopicArn": "

        The Amazon Resource Name (ARN) of the Amazon SNS topic to which notifications are sent.

        The Amazon SNS topic owner must be same as the cache cluster owner.

        ", "ModifyCacheClusterMessage$CacheParameterGroupName": "

        The name of the cache parameter group to apply to this cache cluster. This change is asynchronously applied as soon as possible for parameters when the ApplyImmediately parameter is specified as true for this request.

        ", "ModifyCacheClusterMessage$NotificationTopicStatus": "

        The status of the Amazon SNS notification topic. Notifications are sent only if the status is active.

        Valid values: active | inactive

        ", "ModifyCacheClusterMessage$EngineVersion": "

        The upgraded version of the cache engine to be run on the cache nodes.

        Important: You can upgrade to a newer engine version (see Selecting a Cache Engine and Version), but you cannot downgrade to an earlier engine version. If you want to use an earlier engine version, you must delete the existing cache cluster and create it anew with the earlier engine version.

        ", "ModifyCacheClusterMessage$SnapshotWindow": "

        The daily time range (in UTC) during which ElastiCache begins taking a daily snapshot of your cache cluster.

        ", "ModifyCacheClusterMessage$CacheNodeType": "

        A valid cache node type that you want to scale this cache cluster up to.

        ", "ModifyCacheParameterGroupMessage$CacheParameterGroupName": "

        The name of the cache parameter group to modify.

        ", "ModifyCacheSubnetGroupMessage$CacheSubnetGroupName": "

        The name for the cache subnet group. This value is stored as a lowercase string.

        Constraints: Must contain no more than 255 alphanumeric characters or hyphens.

        Example: mysubnetgroup

        ", "ModifyCacheSubnetGroupMessage$CacheSubnetGroupDescription": "

        A description of the cache subnet group.

        ", "ModifyReplicationGroupMessage$ReplicationGroupId": "

        The identifier of the replication group to modify.

        ", "ModifyReplicationGroupMessage$ReplicationGroupDescription": "

        A description for the replication group. Maximum length is 255 characters.

        ", "ModifyReplicationGroupMessage$PrimaryClusterId": "

        For replication groups with a single primary, if this parameter is specified, ElastiCache promotes the specified cluster in the specified replication group to the primary role. The nodes of all other clusters in the replication group are read replicas.

        ", "ModifyReplicationGroupMessage$SnapshottingClusterId": "

        The cache cluster ID that is used as the daily snapshot source for the replication group. This parameter cannot be set for Redis (cluster mode enabled) replication groups.

        ", "ModifyReplicationGroupMessage$PreferredMaintenanceWindow": "

        Specifies the weekly time range during which maintenance on the cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period.

        Valid values for ddd are:

        • sun

        • mon

        • tue

        • wed

        • thu

        • fri

        • sat

        Example: sun:23:00-mon:01:30

        ", "ModifyReplicationGroupMessage$NotificationTopicArn": "

        The Amazon Resource Name (ARN) of the Amazon SNS topic to which notifications are sent.

        The Amazon SNS topic owner must be same as the replication group owner.

        ", "ModifyReplicationGroupMessage$CacheParameterGroupName": "

        The name of the cache parameter group to apply to all of the clusters in this replication group. This change is asynchronously applied as soon as possible for parameters when the ApplyImmediately parameter is specified as true for this request.

        ", "ModifyReplicationGroupMessage$NotificationTopicStatus": "

        The status of the Amazon SNS notification topic for the replication group. Notifications are sent only if the status is active.

        Valid values: active | inactive

        ", "ModifyReplicationGroupMessage$EngineVersion": "

        The upgraded version of the cache engine to be run on the cache clusters in the replication group.

        Important: You can upgrade to a newer engine version (see Selecting a Cache Engine and Version), but you cannot downgrade to an earlier engine version. If you want to use an earlier engine version, you must delete the existing replication group and create it anew with the earlier engine version.

        ", "ModifyReplicationGroupMessage$SnapshotWindow": "

        The daily time range (in UTC) during which ElastiCache begins taking a daily snapshot of the node group (shard) specified by SnapshottingClusterId.

        Example: 05:00-09:00

        If you do not specify this parameter, ElastiCache automatically chooses an appropriate time range.

        ", "ModifyReplicationGroupMessage$CacheNodeType": "

        A valid cache node type that you want to scale this replication group to.

        ", "NodeGroup$NodeGroupId": "

        The identifier for the node group (shard). A Redis (cluster mode disabled) replication group contains only 1 node group; therefore, the node group ID is 0001. A Redis (cluster mode enabled) replication group contains 1 to 15 node groups numbered 0001 to 0015.

        ", "NodeGroup$Status": "

        The current state of this replication group - creating, available, etc.

        ", "NodeGroup$Slots": "

        The keyspace for this node group (shard).

        ", "NodeGroupConfiguration$Slots": "

        A string that specifies the keyspaces as a series of comma separated values. Keyspaces are 0 to 16,383. The string is in the format startkey-endkey.

        Example: \"0-3999\"

        ", "NodeGroupConfiguration$PrimaryAvailabilityZone": "

        The Availability Zone where the primary node of this node group (shard) is launched.

        ", "NodeGroupMember$CacheClusterId": "

        The ID of the cache cluster to which the node belongs.

        ", "NodeGroupMember$CacheNodeId": "

        The ID of the node within its cache cluster. A node ID is a numeric identifier (0001, 0002, etc.).

        ", "NodeGroupMember$PreferredAvailabilityZone": "

        The name of the Availability Zone in which the node is located.

        ", "NodeGroupMember$CurrentRole": "

        The role that is currently assigned to the node - primary or replica.

        ", "NodeSnapshot$CacheClusterId": "

        A unique identifier for the source cache cluster.

        ", "NodeSnapshot$NodeGroupId": "

        A unique identifier for the source node group (shard).

        ", "NodeSnapshot$CacheNodeId": "

        The cache node identifier for the node in the source cache cluster.

        ", "NodeSnapshot$CacheSize": "

        The size of the cache on the source cache node.

        ", "NodeTypeList$member": null, "NotificationConfiguration$TopicArn": "

        The Amazon Resource Name (ARN) that identifies the topic.

        ", "NotificationConfiguration$TopicStatus": "

        The current state of the topic.

        ", "Parameter$ParameterName": "

        The name of the parameter.

        ", "Parameter$ParameterValue": "

        The value of the parameter.

        ", "Parameter$Description": "

        A description of the parameter.

        ", "Parameter$Source": "

        The source of the parameter.

        ", "Parameter$DataType": "

        The valid data type for the parameter.

        ", "Parameter$AllowedValues": "

        The valid range of values for the parameter.

        ", "Parameter$MinimumEngineVersion": "

        The earliest cache engine version to which the parameter can apply.

        ", "ParameterNameValue$ParameterName": "

        The name of the parameter.

        ", "ParameterNameValue$ParameterValue": "

        The value of the parameter.

        ", "PendingModifiedValues$EngineVersion": "

        The new cache engine version that the cache cluster runs.

        ", "PendingModifiedValues$CacheNodeType": "

        The cache node type that this cache cluster or replication group is scaled to.

        ", "PreferredAvailabilityZoneList$member": null, "PurchaseReservedCacheNodesOfferingMessage$ReservedCacheNodesOfferingId": "

        The ID of the reserved cache node offering to purchase.

        Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706

        ", "PurchaseReservedCacheNodesOfferingMessage$ReservedCacheNodeId": "

        A customer-specified identifier to track this reservation.

        The Reserved Cache Node ID is an unique customer-specified identifier to track this reservation. If this parameter is not specified, ElastiCache automatically generates an identifier for the reservation.

        Example: myreservationID

        ", "RebootCacheClusterMessage$CacheClusterId": "

        The cache cluster identifier. This parameter is stored as a lowercase string.

        ", "RecurringCharge$RecurringChargeFrequency": "

        The frequency of the recurring charge.

        ", "RemoveTagsFromResourceMessage$ResourceName": "

        The Amazon Resource Name (ARN) of the resource from which you want the tags removed, for example arn:aws:elasticache:us-west-2:0123456789:cluster:myCluster or arn:aws:elasticache:us-west-2:0123456789:snapshot:mySnapshot.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces.

        ", "ReplicationGroup$ReplicationGroupId": "

        The identifier for the replication group.

        ", "ReplicationGroup$Description": "

        The description of the replication group.

        ", "ReplicationGroup$Status": "

        The current state of this replication group - creating, available, etc.

        ", "ReplicationGroup$SnapshottingClusterId": "

        The cache cluster ID that is used as the daily snapshot source for the replication group.

        ", "ReplicationGroup$SnapshotWindow": "

        The daily time range (in UTC) during which ElastiCache begins taking a daily snapshot of your node group (shard).

        Example: 05:00-09:00

        If you do not specify this parameter, ElastiCache automatically chooses an appropriate time range.

        Note: This parameter is only valid if the Engine parameter is redis.

        ", "ReplicationGroupMessage$Marker": "

        Provides an identifier to allow retrieval of paginated results.

        ", "ReplicationGroupPendingModifiedValues$PrimaryClusterId": "

        The primary cluster ID that is applied immediately (if --apply-immediately was specified), or during the next maintenance window.

        ", "ReservedCacheNode$ReservedCacheNodeId": "

        The unique identifier for the reservation.

        ", "ReservedCacheNode$ReservedCacheNodesOfferingId": "

        The offering identifier.

        ", "ReservedCacheNode$CacheNodeType": "

        The cache node type for the reserved cache nodes.

        Valid node types are as follows:

        • General purpose:

          • Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge, cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

          • Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

        • Compute optimized: cache.c1.xlarge

        • Memory optimized:

          • Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

          • Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

        Notes:

        • All T2 instances are created in an Amazon Virtual Private Cloud (Amazon VPC).

        • Redis backup/restore is not supported for Redis (cluster mode disabled) T1 and T2 instances. Backup/restore is supported on Redis (cluster mode enabled) T2 instances.

        • Redis Append-only files (AOF) functionality is not supported for T1 or T2 instances.

        For a complete listing of node types and specifications, see Amazon ElastiCache Product Features and Details and either Cache Node Type-Specific Parameters for Memcached or Cache Node Type-Specific Parameters for Redis.

        ", "ReservedCacheNode$ProductDescription": "

        The description of the reserved cache node.

        ", "ReservedCacheNode$OfferingType": "

        The offering type of this reserved cache node.

        ", "ReservedCacheNode$State": "

        The state of the reserved cache node.

        ", "ReservedCacheNodeMessage$Marker": "

        Provides an identifier to allow retrieval of paginated results.

        ", "ReservedCacheNodesOffering$ReservedCacheNodesOfferingId": "

        A unique identifier for the reserved cache node offering.

        ", "ReservedCacheNodesOffering$CacheNodeType": "

        The cache node type for the reserved cache node.

        Valid node types are as follows:

        • General purpose:

          • Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge, cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

          • Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

        • Compute optimized: cache.c1.xlarge

        • Memory optimized:

          • Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

          • Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

        Notes:

        • All T2 instances are created in an Amazon Virtual Private Cloud (Amazon VPC).

        • Redis backup/restore is not supported for Redis (cluster mode disabled) T1 and T2 instances. Backup/restore is supported on Redis (cluster mode enabled) T2 instances.

        • Redis Append-only files (AOF) functionality is not supported for T1 or T2 instances.

        For a complete listing of node types and specifications, see Amazon ElastiCache Product Features and Details and either Cache Node Type-Specific Parameters for Memcached or Cache Node Type-Specific Parameters for Redis.

        ", "ReservedCacheNodesOffering$ProductDescription": "

        The cache engine used by the offering.

        ", "ReservedCacheNodesOffering$OfferingType": "

        The offering type.

        ", "ReservedCacheNodesOfferingMessage$Marker": "

        Provides an identifier to allow retrieval of paginated results.

        ", "ResetCacheParameterGroupMessage$CacheParameterGroupName": "

        The name of the cache parameter group to reset.

        ", "RevokeCacheSecurityGroupIngressMessage$CacheSecurityGroupName": "

        The name of the cache security group to revoke ingress from.

        ", "RevokeCacheSecurityGroupIngressMessage$EC2SecurityGroupName": "

        The name of the Amazon EC2 security group to revoke access from.

        ", "RevokeCacheSecurityGroupIngressMessage$EC2SecurityGroupOwnerId": "

        The AWS account number of the Amazon EC2 security group owner. Note that this is not the same thing as an AWS access key ID - you must provide a valid AWS account number for this parameter.

        ", "SecurityGroupIdsList$member": null, "SecurityGroupMembership$SecurityGroupId": "

        The identifier of the cache security group.

        ", "SecurityGroupMembership$Status": "

        The status of the cache security group membership. The status changes whenever a cache security group is modified, or when the cache security groups assigned to a cache cluster are modified.

        ", "Snapshot$SnapshotName": "

        The name of a snapshot. For an automatic snapshot, the name is system-generated. For a manual snapshot, this is the user-provided name.

        ", "Snapshot$ReplicationGroupId": "

        The unique identifier of the source replication group.

        ", "Snapshot$ReplicationGroupDescription": "

        A description of the source replication group.

        ", "Snapshot$CacheClusterId": "

        The user-supplied identifier of the source cache cluster.

        ", "Snapshot$SnapshotStatus": "

        The status of the snapshot. Valid values: creating | available | restoring | copying | deleting.

        ", "Snapshot$SnapshotSource": "

        Indicates whether the snapshot is from an automatic backup (automated) or was created manually (manual).

        ", "Snapshot$CacheNodeType": "

        The name of the compute and memory capacity node type for the source cache cluster.

        Valid node types are as follows:

        • General purpose:

          • Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge, cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

          • Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

        • Compute optimized: cache.c1.xlarge

        • Memory optimized:

          • Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

          • Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

        Notes:

        • All T2 instances are created in an Amazon Virtual Private Cloud (Amazon VPC).

        • Redis backup/restore is not supported for Redis (cluster mode disabled) T1 and T2 instances. Backup/restore is supported on Redis (cluster mode enabled) T2 instances.

        • Redis Append-only files (AOF) functionality is not supported for T1 or T2 instances.

        For a complete listing of node types and specifications, see Amazon ElastiCache Product Features and Details and either Cache Node Type-Specific Parameters for Memcached or Cache Node Type-Specific Parameters for Redis.

        ", "Snapshot$Engine": "

        The name of the cache engine (memcached or redis) used by the source cache cluster.

        ", "Snapshot$EngineVersion": "

        The version of the cache engine version that is used by the source cache cluster.

        ", "Snapshot$PreferredAvailabilityZone": "

        The name of the Availability Zone in which the source cache cluster is located.

        ", "Snapshot$PreferredMaintenanceWindow": "

        Specifies the weekly time range during which maintenance on the cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period.

        Valid values for ddd are:

        • sun

        • mon

        • tue

        • wed

        • thu

        • fri

        • sat

        Example: sun:23:00-mon:01:30

        ", "Snapshot$TopicArn": "

        The Amazon Resource Name (ARN) for the topic used by the source cache cluster for publishing notifications.

        ", "Snapshot$CacheParameterGroupName": "

        The cache parameter group that is associated with the source cache cluster.

        ", "Snapshot$CacheSubnetGroupName": "

        The name of the cache subnet group associated with the source cache cluster.

        ", "Snapshot$VpcId": "

        The Amazon Virtual Private Cloud identifier (VPC ID) of the cache subnet group for the source cache cluster.

        ", "Snapshot$SnapshotWindow": "

        The daily time range during which ElastiCache takes daily snapshots of the source cache cluster.

        ", "SnapshotArnsList$member": null, "Subnet$SubnetIdentifier": "

        The unique identifier for the subnet.

        ", "SubnetIdentifierList$member": null, "Tag$Key": "

        The key for the tag.

        ", "Tag$Value": "

        The tag's value. May not be null.

        " } }, "Subnet": { "base": "

        Represents the subnet associated with a cache cluster. This parameter refers to subnets defined in Amazon Virtual Private Cloud (Amazon VPC) and used with ElastiCache.

        ", "refs": { "SubnetList$member": null } }, "SubnetIdentifierList": { "base": null, "refs": { "CreateCacheSubnetGroupMessage$SubnetIds": "

        A list of VPC subnet IDs for the cache subnet group.

        ", "ModifyCacheSubnetGroupMessage$SubnetIds": "

        The EC2 subnet IDs for the cache subnet group.

        " } }, "SubnetInUse": { "base": "

        The requested subnet is being used by another cache subnet group.

        ", "refs": { } }, "SubnetList": { "base": null, "refs": { "CacheSubnetGroup$Subnets": "

        A list of subnets associated with the cache subnet group.

        " } }, "TStamp": { "base": null, "refs": { "CacheCluster$CacheClusterCreateTime": "

        The date and time when the cache cluster was created.

        ", "CacheNode$CacheNodeCreateTime": "

        The date and time when the cache node was created.

        ", "DescribeEventsMessage$StartTime": "

        The beginning of the time interval to retrieve events for, specified in ISO 8601 format.

        ", "DescribeEventsMessage$EndTime": "

        The end of the time interval for which to retrieve events, specified in ISO 8601 format.

        ", "Event$Date": "

        The date and time when the event occurred.

        ", "NodeSnapshot$CacheNodeCreateTime": "

        The date and time when the cache node was created in the source cache cluster.

        ", "NodeSnapshot$SnapshotCreateTime": "

        The date and time when the source node's metadata and cache data set was obtained for the snapshot.

        ", "ReservedCacheNode$StartTime": "

        The time the reservation started.

        ", "Snapshot$CacheClusterCreateTime": "

        The date and time when the source cache cluster was created.

        " } }, "Tag": { "base": "

        A cost allocation Tag that can be added to an ElastiCache cluster or replication group. Tags are composed of a Key/Value pair. A tag with a null Value is permitted.

        ", "refs": { "TagList$member": null } }, "TagList": { "base": null, "refs": { "AddTagsToResourceMessage$Tags": "

        A list of cost allocation tags to be added to this resource. A tag is a key-value pair. A tag key must be accompanied by a tag value.

        ", "CreateCacheClusterMessage$Tags": "

        A list of cost allocation tags to be added to this resource. A tag is a key-value pair. A tag key must be accompanied by a tag value.

        ", "CreateReplicationGroupMessage$Tags": "

        A list of cost allocation tags to be added to this resource. A tag is a key-value pair. A tag key must be accompanied by a tag value.

        ", "TagListMessage$TagList": "

        A list of cost allocation tags as key-value pairs.

        " } }, "TagListMessage": { "base": "

        Represents the output from the AddTagsToResource, ListTagsOnResource, and RemoveTagsFromResource operations.

        ", "refs": { } }, "TagNotFoundFault": { "base": "

        The requested tag was not found on this resource.

        ", "refs": { } }, "TagQuotaPerResourceExceeded": { "base": "

        The request cannot be processed because it would cause the resource to have more than the allowed number of tags. The maximum number of tags permitted on a resource is 10.

        ", "refs": { } } } } aws-sdk-go-1.4.22/models/apis/elasticache/2015-02-02/examples-1.json000066400000000000000000000000541300374646400241420ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/elasticache/2015-02-02/paginators-1.json000066400000000000000000000041731300374646400245010ustar00rootroot00000000000000{ "pagination": { "DescribeCacheClusters": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "CacheClusters" }, "DescribeCacheEngineVersions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "CacheEngineVersions" }, "DescribeCacheParameterGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "CacheParameterGroups" }, "DescribeCacheParameters": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "Parameters" }, "DescribeCacheSecurityGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "CacheSecurityGroups" }, "DescribeCacheSubnetGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "CacheSubnetGroups" }, "DescribeEngineDefaultParameters": { "input_token": "Marker", "output_token": "EngineDefaults.Marker", "limit_key": "MaxRecords", "result_key": "EngineDefaults.Parameters" }, "DescribeEvents": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "Events" }, "DescribeReservedCacheNodes": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "ReservedCacheNodes" }, "DescribeReservedCacheNodesOfferings": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "ReservedCacheNodesOfferings" }, "DescribeReplicationGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "ReplicationGroups" }, "DescribeSnapshots": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "Snapshots" } } } aws-sdk-go-1.4.22/models/apis/elasticache/2015-02-02/waiters-2.json000066400000000000000000000117761300374646400240200ustar00rootroot00000000000000{ "version":2, "waiters":{ "CacheClusterAvailable":{ "acceptors":[ { "argument":"CacheClusters[].CacheClusterStatus", "expected":"available", "matcher":"pathAll", "state":"success" }, { "argument":"CacheClusters[].CacheClusterStatus", "expected":"deleted", "matcher":"pathAny", "state":"failure" }, { "argument":"CacheClusters[].CacheClusterStatus", "expected":"deleting", "matcher":"pathAny", "state":"failure" }, { "argument":"CacheClusters[].CacheClusterStatus", "expected":"incompatible-network", "matcher":"pathAny", "state":"failure" }, { "argument":"CacheClusters[].CacheClusterStatus", "expected":"restore-failed", "matcher":"pathAny", "state":"failure" } ], "delay":15, "description":"Wait until ElastiCache cluster is available.", "maxAttempts":40, "operation":"DescribeCacheClusters" }, "CacheClusterDeleted":{ "acceptors":[ { "argument":"CacheClusters[].CacheClusterStatus", "expected":"deleted", "matcher":"pathAll", "state":"success" }, { "expected":"CacheClusterNotFound", "matcher":"error", "state":"success" }, { "argument":"CacheClusters[].CacheClusterStatus", "expected":"available", "matcher":"pathAny", "state":"failure" }, { "argument":"CacheClusters[].CacheClusterStatus", "expected":"creating", "matcher":"pathAny", "state":"failure" }, { "argument":"CacheClusters[].CacheClusterStatus", "expected":"incompatible-network", "matcher":"pathAny", "state":"failure" }, { "argument":"CacheClusters[].CacheClusterStatus", "expected":"modifying", "matcher":"pathAny", "state":"failure" }, { "argument":"CacheClusters[].CacheClusterStatus", "expected":"restore-failed", "matcher":"pathAny", "state":"failure" }, { "argument":"CacheClusters[].CacheClusterStatus", "expected":"snapshotting", "matcher":"pathAny", "state":"failure" } ], "delay":15, "description":"Wait until ElastiCache cluster is deleted.", "maxAttempts":40, "operation":"DescribeCacheClusters" }, "ReplicationGroupAvailable":{ "acceptors":[ { "argument":"ReplicationGroups[].Status", "expected":"available", "matcher":"pathAll", "state":"success" }, { "argument":"ReplicationGroups[].Status", "expected":"deleted", "matcher":"pathAny", "state":"failure" } ], "delay":15, "description":"Wait until ElastiCache replication group is available.", "maxAttempts":40, "operation":"DescribeReplicationGroups" }, "ReplicationGroupDeleted":{ "acceptors":[ { "argument":"ReplicationGroups[].Status", "expected":"deleted", "matcher":"pathAll", "state":"success" }, { "argument":"ReplicationGroups[].Status", "expected":"available", "matcher":"pathAny", "state":"failure" }, { "expected":"ReplicationGroupNotFoundFault", "matcher":"error", "state":"success" } ], "delay":15, "description":"Wait until ElastiCache replication group is deleted.", "maxAttempts":40, "operation":"DescribeReplicationGroups" } } } aws-sdk-go-1.4.22/models/apis/elasticbeanstalk/000077500000000000000000000000001300374646400213135ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/elasticbeanstalk/2010-12-01/000077500000000000000000000000001300374646400223335ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/elasticbeanstalk/2010-12-01/api-2.json000066400000000000000000001532351300374646400241470ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2010-12-01", "endpointPrefix":"elasticbeanstalk", "protocol":"query", "serviceAbbreviation":"Elastic Beanstalk", "serviceFullName":"AWS Elastic Beanstalk", "signatureVersion":"v4", "xmlNamespace":"http://elasticbeanstalk.amazonaws.com/docs/2010-12-01/" }, "operations":{ "AbortEnvironmentUpdate":{ "name":"AbortEnvironmentUpdate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AbortEnvironmentUpdateMessage"}, "errors":[ {"shape":"InsufficientPrivilegesException"} ] }, "ApplyEnvironmentManagedAction":{ "name":"ApplyEnvironmentManagedAction", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ApplyEnvironmentManagedActionRequest"}, "output":{ "shape":"ApplyEnvironmentManagedActionResult", "resultWrapper":"ApplyEnvironmentManagedActionResult" }, "errors":[ {"shape":"ElasticBeanstalkServiceException"}, {"shape":"ManagedActionInvalidStateException"} ] }, "CheckDNSAvailability":{ "name":"CheckDNSAvailability", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CheckDNSAvailabilityMessage"}, "output":{ "shape":"CheckDNSAvailabilityResultMessage", "resultWrapper":"CheckDNSAvailabilityResult" } }, "ComposeEnvironments":{ "name":"ComposeEnvironments", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ComposeEnvironmentsMessage"}, "output":{ "shape":"EnvironmentDescriptionsMessage", "resultWrapper":"ComposeEnvironmentsResult" }, "errors":[ {"shape":"TooManyEnvironmentsException"}, {"shape":"InsufficientPrivilegesException"} ] }, "CreateApplication":{ "name":"CreateApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateApplicationMessage"}, "output":{ "shape":"ApplicationDescriptionMessage", "resultWrapper":"CreateApplicationResult" }, "errors":[ {"shape":"TooManyApplicationsException"} ] }, "CreateApplicationVersion":{ "name":"CreateApplicationVersion", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateApplicationVersionMessage"}, "output":{ "shape":"ApplicationVersionDescriptionMessage", "resultWrapper":"CreateApplicationVersionResult" }, "errors":[ {"shape":"TooManyApplicationsException"}, {"shape":"TooManyApplicationVersionsException"}, {"shape":"InsufficientPrivilegesException"}, {"shape":"S3LocationNotInServiceRegionException"} ] }, "CreateConfigurationTemplate":{ "name":"CreateConfigurationTemplate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateConfigurationTemplateMessage"}, "output":{ "shape":"ConfigurationSettingsDescription", "resultWrapper":"CreateConfigurationTemplateResult" }, "errors":[ {"shape":"InsufficientPrivilegesException"}, {"shape":"TooManyBucketsException"}, {"shape":"TooManyConfigurationTemplatesException"} ] }, "CreateEnvironment":{ "name":"CreateEnvironment", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateEnvironmentMessage"}, "output":{ "shape":"EnvironmentDescription", "resultWrapper":"CreateEnvironmentResult" }, "errors":[ {"shape":"TooManyEnvironmentsException"}, {"shape":"InsufficientPrivilegesException"} ] }, "CreateStorageLocation":{ "name":"CreateStorageLocation", "http":{ "method":"POST", "requestUri":"/" }, "output":{ "shape":"CreateStorageLocationResultMessage", "resultWrapper":"CreateStorageLocationResult" }, "errors":[ {"shape":"TooManyBucketsException"}, {"shape":"S3SubscriptionRequiredException"}, {"shape":"InsufficientPrivilegesException"} ] }, "DeleteApplication":{ "name":"DeleteApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteApplicationMessage"}, "errors":[ {"shape":"OperationInProgressException"} ] }, "DeleteApplicationVersion":{ "name":"DeleteApplicationVersion", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteApplicationVersionMessage"}, "errors":[ {"shape":"SourceBundleDeletionException"}, {"shape":"InsufficientPrivilegesException"}, {"shape":"OperationInProgressException"}, {"shape":"S3LocationNotInServiceRegionException"} ] }, "DeleteConfigurationTemplate":{ "name":"DeleteConfigurationTemplate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteConfigurationTemplateMessage"}, "errors":[ {"shape":"OperationInProgressException"} ] }, "DeleteEnvironmentConfiguration":{ "name":"DeleteEnvironmentConfiguration", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteEnvironmentConfigurationMessage"} }, "DescribeApplicationVersions":{ "name":"DescribeApplicationVersions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeApplicationVersionsMessage"}, "output":{ "shape":"ApplicationVersionDescriptionsMessage", "resultWrapper":"DescribeApplicationVersionsResult" } }, "DescribeApplications":{ "name":"DescribeApplications", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeApplicationsMessage"}, "output":{ "shape":"ApplicationDescriptionsMessage", "resultWrapper":"DescribeApplicationsResult" } }, "DescribeConfigurationOptions":{ "name":"DescribeConfigurationOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeConfigurationOptionsMessage"}, "output":{ "shape":"ConfigurationOptionsDescription", "resultWrapper":"DescribeConfigurationOptionsResult" }, "errors":[ {"shape":"TooManyBucketsException"} ] }, "DescribeConfigurationSettings":{ "name":"DescribeConfigurationSettings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeConfigurationSettingsMessage"}, "output":{ "shape":"ConfigurationSettingsDescriptions", "resultWrapper":"DescribeConfigurationSettingsResult" }, "errors":[ {"shape":"TooManyBucketsException"} ] }, "DescribeEnvironmentHealth":{ "name":"DescribeEnvironmentHealth", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEnvironmentHealthRequest"}, "output":{ "shape":"DescribeEnvironmentHealthResult", "resultWrapper":"DescribeEnvironmentHealthResult" }, "errors":[ {"shape":"InvalidRequestException"}, {"shape":"ElasticBeanstalkServiceException"} ] }, "DescribeEnvironmentManagedActionHistory":{ "name":"DescribeEnvironmentManagedActionHistory", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEnvironmentManagedActionHistoryRequest"}, "output":{ "shape":"DescribeEnvironmentManagedActionHistoryResult", "resultWrapper":"DescribeEnvironmentManagedActionHistoryResult" }, "errors":[ {"shape":"ElasticBeanstalkServiceException"} ] }, "DescribeEnvironmentManagedActions":{ "name":"DescribeEnvironmentManagedActions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEnvironmentManagedActionsRequest"}, "output":{ "shape":"DescribeEnvironmentManagedActionsResult", "resultWrapper":"DescribeEnvironmentManagedActionsResult" }, "errors":[ {"shape":"ElasticBeanstalkServiceException"} ] }, "DescribeEnvironmentResources":{ "name":"DescribeEnvironmentResources", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEnvironmentResourcesMessage"}, "output":{ "shape":"EnvironmentResourceDescriptionsMessage", "resultWrapper":"DescribeEnvironmentResourcesResult" }, "errors":[ {"shape":"InsufficientPrivilegesException"} ] }, "DescribeEnvironments":{ "name":"DescribeEnvironments", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEnvironmentsMessage"}, "output":{ "shape":"EnvironmentDescriptionsMessage", "resultWrapper":"DescribeEnvironmentsResult" } }, "DescribeEvents":{ "name":"DescribeEvents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventsMessage"}, "output":{ "shape":"EventDescriptionsMessage", "resultWrapper":"DescribeEventsResult" } }, "DescribeInstancesHealth":{ "name":"DescribeInstancesHealth", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInstancesHealthRequest"}, "output":{ "shape":"DescribeInstancesHealthResult", "resultWrapper":"DescribeInstancesHealthResult" }, "errors":[ {"shape":"InvalidRequestException"}, {"shape":"ElasticBeanstalkServiceException"} ] }, "ListAvailableSolutionStacks":{ "name":"ListAvailableSolutionStacks", "http":{ "method":"POST", "requestUri":"/" }, "output":{ "shape":"ListAvailableSolutionStacksResultMessage", "resultWrapper":"ListAvailableSolutionStacksResult" } }, "RebuildEnvironment":{ "name":"RebuildEnvironment", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RebuildEnvironmentMessage"}, "errors":[ {"shape":"InsufficientPrivilegesException"} ] }, "RequestEnvironmentInfo":{ "name":"RequestEnvironmentInfo", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RequestEnvironmentInfoMessage"} }, "RestartAppServer":{ "name":"RestartAppServer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestartAppServerMessage"} }, "RetrieveEnvironmentInfo":{ "name":"RetrieveEnvironmentInfo", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RetrieveEnvironmentInfoMessage"}, "output":{ "shape":"RetrieveEnvironmentInfoResultMessage", "resultWrapper":"RetrieveEnvironmentInfoResult" } }, "SwapEnvironmentCNAMEs":{ "name":"SwapEnvironmentCNAMEs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SwapEnvironmentCNAMEsMessage"} }, "TerminateEnvironment":{ "name":"TerminateEnvironment", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"TerminateEnvironmentMessage"}, "output":{ "shape":"EnvironmentDescription", "resultWrapper":"TerminateEnvironmentResult" }, "errors":[ {"shape":"InsufficientPrivilegesException"} ] }, "UpdateApplication":{ "name":"UpdateApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateApplicationMessage"}, "output":{ "shape":"ApplicationDescriptionMessage", "resultWrapper":"UpdateApplicationResult" } }, "UpdateApplicationVersion":{ "name":"UpdateApplicationVersion", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateApplicationVersionMessage"}, "output":{ "shape":"ApplicationVersionDescriptionMessage", "resultWrapper":"UpdateApplicationVersionResult" } }, "UpdateConfigurationTemplate":{ "name":"UpdateConfigurationTemplate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateConfigurationTemplateMessage"}, "output":{ "shape":"ConfigurationSettingsDescription", "resultWrapper":"UpdateConfigurationTemplateResult" }, "errors":[ {"shape":"InsufficientPrivilegesException"}, {"shape":"TooManyBucketsException"} ] }, "UpdateEnvironment":{ "name":"UpdateEnvironment", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateEnvironmentMessage"}, "output":{ "shape":"EnvironmentDescription", "resultWrapper":"UpdateEnvironmentResult" }, "errors":[ {"shape":"InsufficientPrivilegesException"}, {"shape":"TooManyBucketsException"} ] }, "ValidateConfigurationSettings":{ "name":"ValidateConfigurationSettings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ValidateConfigurationSettingsMessage"}, "output":{ "shape":"ConfigurationSettingsValidationMessages", "resultWrapper":"ValidateConfigurationSettingsResult" }, "errors":[ {"shape":"InsufficientPrivilegesException"}, {"shape":"TooManyBucketsException"} ] } }, "shapes":{ "AbortEnvironmentUpdateMessage":{ "type":"structure", "members":{ "EnvironmentId":{"shape":"EnvironmentId"}, "EnvironmentName":{"shape":"EnvironmentName"} } }, "AbortableOperationInProgress":{"type":"boolean"}, "ActionHistoryStatus":{ "type":"string", "enum":[ "Completed", "Failed", "Unknown" ] }, "ActionStatus":{ "type":"string", "enum":[ "Scheduled", "Pending", "Running", "Unknown" ] }, "ActionType":{ "type":"string", "enum":[ "InstanceRefresh", "PlatformUpdate", "Unknown" ] }, "ApplicationDescription":{ "type":"structure", "members":{ "ApplicationName":{"shape":"ApplicationName"}, "Description":{"shape":"Description"}, "DateCreated":{"shape":"CreationDate"}, "DateUpdated":{"shape":"UpdateDate"}, "Versions":{"shape":"VersionLabelsList"}, "ConfigurationTemplates":{"shape":"ConfigurationTemplateNamesList"} } }, "ApplicationDescriptionList":{ "type":"list", "member":{"shape":"ApplicationDescription"} }, "ApplicationDescriptionMessage":{ "type":"structure", "members":{ "Application":{"shape":"ApplicationDescription"} } }, "ApplicationDescriptionsMessage":{ "type":"structure", "members":{ "Applications":{"shape":"ApplicationDescriptionList"} } }, "ApplicationMetrics":{ "type":"structure", "members":{ "Duration":{"shape":"NullableInteger"}, "RequestCount":{"shape":"RequestCount"}, "StatusCodes":{"shape":"StatusCodes"}, "Latency":{"shape":"Latency"} } }, "ApplicationName":{ "type":"string", "max":100, "min":1 }, "ApplicationNamesList":{ "type":"list", "member":{"shape":"ApplicationName"} }, "ApplicationVersionDescription":{ "type":"structure", "members":{ "ApplicationName":{"shape":"ApplicationName"}, "Description":{"shape":"Description"}, "VersionLabel":{"shape":"VersionLabel"}, "SourceBuildInformation":{"shape":"SourceBuildInformation"}, "SourceBundle":{"shape":"S3Location"}, "DateCreated":{"shape":"CreationDate"}, "DateUpdated":{"shape":"UpdateDate"}, "Status":{"shape":"ApplicationVersionStatus"} } }, "ApplicationVersionDescriptionList":{ "type":"list", "member":{"shape":"ApplicationVersionDescription"} }, "ApplicationVersionDescriptionMessage":{ "type":"structure", "members":{ "ApplicationVersion":{"shape":"ApplicationVersionDescription"} } }, "ApplicationVersionDescriptionsMessage":{ "type":"structure", "members":{ "ApplicationVersions":{"shape":"ApplicationVersionDescriptionList"}, "NextToken":{"shape":"Token"} } }, "ApplicationVersionProccess":{"type":"boolean"}, "ApplicationVersionStatus":{ "type":"string", "enum":[ "Processed", "Unprocessed", "Failed", "Processing" ] }, "ApplyEnvironmentManagedActionRequest":{ "type":"structure", "required":["ActionId"], "members":{ "EnvironmentName":{"shape":"String"}, "EnvironmentId":{"shape":"String"}, "ActionId":{"shape":"String"} } }, "ApplyEnvironmentManagedActionResult":{ "type":"structure", "members":{ "ActionId":{"shape":"String"}, "ActionDescription":{"shape":"String"}, "ActionType":{"shape":"ActionType"}, "Status":{"shape":"String"} } }, "AutoCreateApplication":{"type":"boolean"}, "AutoScalingGroup":{ "type":"structure", "members":{ "Name":{"shape":"ResourceId"} } }, "AutoScalingGroupList":{ "type":"list", "member":{"shape":"AutoScalingGroup"} }, "AvailableSolutionStackDetailsList":{ "type":"list", "member":{"shape":"SolutionStackDescription"} }, "AvailableSolutionStackNamesList":{ "type":"list", "member":{"shape":"SolutionStackName"} }, "CPUUtilization":{ "type":"structure", "members":{ "User":{"shape":"NullableDouble"}, "Nice":{"shape":"NullableDouble"}, "System":{"shape":"NullableDouble"}, "Idle":{"shape":"NullableDouble"}, "IOWait":{"shape":"NullableDouble"}, "IRQ":{"shape":"NullableDouble"}, "SoftIRQ":{"shape":"NullableDouble"} } }, "Cause":{ "type":"string", "max":255, "min":1 }, "Causes":{ "type":"list", "member":{"shape":"Cause"} }, "CheckDNSAvailabilityMessage":{ "type":"structure", "required":["CNAMEPrefix"], "members":{ "CNAMEPrefix":{"shape":"DNSCnamePrefix"} } }, "CheckDNSAvailabilityResultMessage":{ "type":"structure", "members":{ "Available":{"shape":"CnameAvailability"}, "FullyQualifiedCNAME":{"shape":"DNSCname"} } }, "CnameAvailability":{"type":"boolean"}, "ComposeEnvironmentsMessage":{ "type":"structure", "members":{ "ApplicationName":{"shape":"ApplicationName"}, "GroupName":{"shape":"GroupName"}, "VersionLabels":{"shape":"VersionLabels"} } }, "ConfigurationDeploymentStatus":{ "type":"string", "enum":[ "deployed", "pending", "failed" ] }, "ConfigurationOptionDefaultValue":{"type":"string"}, "ConfigurationOptionDescription":{ "type":"structure", "members":{ "Namespace":{"shape":"OptionNamespace"}, "Name":{"shape":"ConfigurationOptionName"}, "DefaultValue":{"shape":"ConfigurationOptionDefaultValue"}, "ChangeSeverity":{"shape":"ConfigurationOptionSeverity"}, "UserDefined":{"shape":"UserDefinedOption"}, "ValueType":{"shape":"ConfigurationOptionValueType"}, "ValueOptions":{"shape":"ConfigurationOptionPossibleValues"}, "MinValue":{"shape":"OptionRestrictionMinValue"}, "MaxValue":{"shape":"OptionRestrictionMaxValue"}, "MaxLength":{"shape":"OptionRestrictionMaxLength"}, "Regex":{"shape":"OptionRestrictionRegex"} } }, "ConfigurationOptionDescriptionsList":{ "type":"list", "member":{"shape":"ConfigurationOptionDescription"} }, "ConfigurationOptionName":{"type":"string"}, "ConfigurationOptionPossibleValue":{"type":"string"}, "ConfigurationOptionPossibleValues":{ "type":"list", "member":{"shape":"ConfigurationOptionPossibleValue"} }, "ConfigurationOptionSetting":{ "type":"structure", "members":{ "ResourceName":{"shape":"ResourceName"}, "Namespace":{"shape":"OptionNamespace"}, "OptionName":{"shape":"ConfigurationOptionName"}, "Value":{"shape":"ConfigurationOptionValue"} } }, "ConfigurationOptionSettingsList":{ "type":"list", "member":{"shape":"ConfigurationOptionSetting"} }, "ConfigurationOptionSeverity":{"type":"string"}, "ConfigurationOptionValue":{"type":"string"}, "ConfigurationOptionValueType":{ "type":"string", "enum":[ "Scalar", "List" ] }, "ConfigurationOptionsDescription":{ "type":"structure", "members":{ "SolutionStackName":{"shape":"SolutionStackName"}, "Options":{"shape":"ConfigurationOptionDescriptionsList"} } }, "ConfigurationSettingsDescription":{ "type":"structure", "members":{ "SolutionStackName":{"shape":"SolutionStackName"}, "ApplicationName":{"shape":"ApplicationName"}, "TemplateName":{"shape":"ConfigurationTemplateName"}, "Description":{"shape":"Description"}, "EnvironmentName":{"shape":"EnvironmentName"}, "DeploymentStatus":{"shape":"ConfigurationDeploymentStatus"}, "DateCreated":{"shape":"CreationDate"}, "DateUpdated":{"shape":"UpdateDate"}, "OptionSettings":{"shape":"ConfigurationOptionSettingsList"} } }, "ConfigurationSettingsDescriptionList":{ "type":"list", "member":{"shape":"ConfigurationSettingsDescription"} }, "ConfigurationSettingsDescriptions":{ "type":"structure", "members":{ "ConfigurationSettings":{"shape":"ConfigurationSettingsDescriptionList"} } }, "ConfigurationSettingsValidationMessages":{ "type":"structure", "members":{ "Messages":{"shape":"ValidationMessagesList"} } }, "ConfigurationTemplateName":{ "type":"string", "max":100, "min":1 }, "ConfigurationTemplateNamesList":{ "type":"list", "member":{"shape":"ConfigurationTemplateName"} }, "CreateApplicationMessage":{ "type":"structure", "required":["ApplicationName"], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "Description":{"shape":"Description"} } }, "CreateApplicationVersionMessage":{ "type":"structure", "required":[ "ApplicationName", "VersionLabel" ], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "VersionLabel":{"shape":"VersionLabel"}, "Description":{"shape":"Description"}, "SourceBuildInformation":{"shape":"SourceBuildInformation"}, "SourceBundle":{"shape":"S3Location"}, "AutoCreateApplication":{"shape":"AutoCreateApplication"}, "Process":{"shape":"ApplicationVersionProccess"} } }, "CreateConfigurationTemplateMessage":{ "type":"structure", "required":[ "ApplicationName", "TemplateName" ], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "TemplateName":{"shape":"ConfigurationTemplateName"}, "SolutionStackName":{"shape":"SolutionStackName"}, "SourceConfiguration":{"shape":"SourceConfiguration"}, "EnvironmentId":{"shape":"EnvironmentId"}, "Description":{"shape":"Description"}, "OptionSettings":{"shape":"ConfigurationOptionSettingsList"} } }, "CreateEnvironmentMessage":{ "type":"structure", "required":["ApplicationName"], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "EnvironmentName":{"shape":"EnvironmentName"}, "GroupName":{"shape":"GroupName"}, "Description":{"shape":"Description"}, "CNAMEPrefix":{"shape":"DNSCnamePrefix"}, "Tier":{"shape":"EnvironmentTier"}, "Tags":{"shape":"Tags"}, "VersionLabel":{"shape":"VersionLabel"}, "TemplateName":{"shape":"ConfigurationTemplateName"}, "SolutionStackName":{"shape":"SolutionStackName"}, "OptionSettings":{"shape":"ConfigurationOptionSettingsList"}, "OptionsToRemove":{"shape":"OptionsSpecifierList"} } }, "CreateStorageLocationResultMessage":{ "type":"structure", "members":{ "S3Bucket":{"shape":"S3Bucket"} } }, "CreationDate":{"type":"timestamp"}, "DNSCname":{ "type":"string", "max":255, "min":1 }, "DNSCnamePrefix":{ "type":"string", "max":63, "min":4 }, "DeleteApplicationMessage":{ "type":"structure", "required":["ApplicationName"], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "TerminateEnvByForce":{"shape":"TerminateEnvForce"} } }, "DeleteApplicationVersionMessage":{ "type":"structure", "required":[ "ApplicationName", "VersionLabel" ], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "VersionLabel":{"shape":"VersionLabel"}, "DeleteSourceBundle":{"shape":"DeleteSourceBundle"} } }, "DeleteConfigurationTemplateMessage":{ "type":"structure", "required":[ "ApplicationName", "TemplateName" ], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "TemplateName":{"shape":"ConfigurationTemplateName"} } }, "DeleteEnvironmentConfigurationMessage":{ "type":"structure", "required":[ "ApplicationName", "EnvironmentName" ], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "EnvironmentName":{"shape":"EnvironmentName"} } }, "DeleteSourceBundle":{"type":"boolean"}, "Deployment":{ "type":"structure", "members":{ "VersionLabel":{"shape":"String"}, "DeploymentId":{"shape":"NullableLong"}, "Status":{"shape":"String"}, "DeploymentTime":{"shape":"DeploymentTimestamp"} } }, "DeploymentTimestamp":{"type":"timestamp"}, "DescribeApplicationVersionsMessage":{ "type":"structure", "members":{ "ApplicationName":{"shape":"ApplicationName"}, "VersionLabels":{"shape":"VersionLabelsList"}, "MaxRecords":{"shape":"MaxRecords"}, "NextToken":{"shape":"Token"} } }, "DescribeApplicationsMessage":{ "type":"structure", "members":{ "ApplicationNames":{"shape":"ApplicationNamesList"} } }, "DescribeConfigurationOptionsMessage":{ "type":"structure", "members":{ "ApplicationName":{"shape":"ApplicationName"}, "TemplateName":{"shape":"ConfigurationTemplateName"}, "EnvironmentName":{"shape":"EnvironmentName"}, "SolutionStackName":{"shape":"SolutionStackName"}, "Options":{"shape":"OptionsSpecifierList"} } }, "DescribeConfigurationSettingsMessage":{ "type":"structure", "required":["ApplicationName"], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "TemplateName":{"shape":"ConfigurationTemplateName"}, "EnvironmentName":{"shape":"EnvironmentName"} } }, "DescribeEnvironmentHealthRequest":{ "type":"structure", "members":{ "EnvironmentName":{"shape":"EnvironmentName"}, "EnvironmentId":{"shape":"EnvironmentId"}, "AttributeNames":{"shape":"EnvironmentHealthAttributes"} } }, "DescribeEnvironmentHealthResult":{ "type":"structure", "members":{ "EnvironmentName":{"shape":"EnvironmentName"}, "HealthStatus":{"shape":"String"}, "Status":{"shape":"EnvironmentHealth"}, "Color":{"shape":"String"}, "Causes":{"shape":"Causes"}, "ApplicationMetrics":{"shape":"ApplicationMetrics"}, "InstancesHealth":{"shape":"InstanceHealthSummary"}, "RefreshedAt":{"shape":"RefreshedAt"} } }, "DescribeEnvironmentManagedActionHistoryRequest":{ "type":"structure", "members":{ "EnvironmentId":{"shape":"EnvironmentId"}, "EnvironmentName":{"shape":"EnvironmentName"}, "NextToken":{"shape":"String"}, "MaxItems":{"shape":"Integer"} } }, "DescribeEnvironmentManagedActionHistoryResult":{ "type":"structure", "members":{ "ManagedActionHistoryItems":{"shape":"ManagedActionHistoryItems"}, "NextToken":{"shape":"String"} } }, "DescribeEnvironmentManagedActionsRequest":{ "type":"structure", "members":{ "EnvironmentName":{"shape":"String"}, "EnvironmentId":{"shape":"String"}, "Status":{"shape":"ActionStatus"} } }, "DescribeEnvironmentManagedActionsResult":{ "type":"structure", "members":{ "ManagedActions":{"shape":"ManagedActions"} } }, "DescribeEnvironmentResourcesMessage":{ "type":"structure", "members":{ "EnvironmentId":{"shape":"EnvironmentId"}, "EnvironmentName":{"shape":"EnvironmentName"} } }, "DescribeEnvironmentsMessage":{ "type":"structure", "members":{ "ApplicationName":{"shape":"ApplicationName"}, "VersionLabel":{"shape":"VersionLabel"}, "EnvironmentIds":{"shape":"EnvironmentIdList"}, "EnvironmentNames":{"shape":"EnvironmentNamesList"}, "IncludeDeleted":{"shape":"IncludeDeleted"}, "IncludedDeletedBackTo":{"shape":"IncludeDeletedBackTo"} } }, "DescribeEventsMessage":{ "type":"structure", "members":{ "ApplicationName":{"shape":"ApplicationName"}, "VersionLabel":{"shape":"VersionLabel"}, "TemplateName":{"shape":"ConfigurationTemplateName"}, "EnvironmentId":{"shape":"EnvironmentId"}, "EnvironmentName":{"shape":"EnvironmentName"}, "RequestId":{"shape":"RequestId"}, "Severity":{"shape":"EventSeverity"}, "StartTime":{"shape":"TimeFilterStart"}, "EndTime":{"shape":"TimeFilterEnd"}, "MaxRecords":{"shape":"MaxRecords"}, "NextToken":{"shape":"Token"} } }, "DescribeInstancesHealthRequest":{ "type":"structure", "members":{ "EnvironmentName":{"shape":"EnvironmentName"}, "EnvironmentId":{"shape":"EnvironmentId"}, "AttributeNames":{"shape":"InstancesHealthAttributes"}, "NextToken":{"shape":"NextToken"} } }, "DescribeInstancesHealthResult":{ "type":"structure", "members":{ "InstanceHealthList":{"shape":"InstanceHealthList"}, "RefreshedAt":{"shape":"RefreshedAt"}, "NextToken":{"shape":"NextToken"} } }, "Description":{ "type":"string", "max":200 }, "Ec2InstanceId":{"type":"string"}, "ElasticBeanstalkServiceException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "EndpointURL":{"type":"string"}, "EnvironmentDescription":{ "type":"structure", "members":{ "EnvironmentName":{"shape":"EnvironmentName"}, "EnvironmentId":{"shape":"EnvironmentId"}, "ApplicationName":{"shape":"ApplicationName"}, "VersionLabel":{"shape":"VersionLabel"}, "SolutionStackName":{"shape":"SolutionStackName"}, "TemplateName":{"shape":"ConfigurationTemplateName"}, "Description":{"shape":"Description"}, "EndpointURL":{"shape":"EndpointURL"}, "CNAME":{"shape":"DNSCname"}, "DateCreated":{"shape":"CreationDate"}, "DateUpdated":{"shape":"UpdateDate"}, "Status":{"shape":"EnvironmentStatus"}, "AbortableOperationInProgress":{"shape":"AbortableOperationInProgress"}, "Health":{"shape":"EnvironmentHealth"}, "HealthStatus":{"shape":"EnvironmentHealthStatus"}, "Resources":{"shape":"EnvironmentResourcesDescription"}, "Tier":{"shape":"EnvironmentTier"}, "EnvironmentLinks":{"shape":"EnvironmentLinks"} } }, "EnvironmentDescriptionsList":{ "type":"list", "member":{"shape":"EnvironmentDescription"} }, "EnvironmentDescriptionsMessage":{ "type":"structure", "members":{ "Environments":{"shape":"EnvironmentDescriptionsList"} } }, "EnvironmentHealth":{ "type":"string", "enum":[ "Green", "Yellow", "Red", "Grey" ] }, "EnvironmentHealthAttribute":{ "type":"string", "enum":[ "Status", "Color", "Causes", "ApplicationMetrics", "InstancesHealth", "All", "HealthStatus", "RefreshedAt" ] }, "EnvironmentHealthAttributes":{ "type":"list", "member":{"shape":"EnvironmentHealthAttribute"} }, "EnvironmentHealthStatus":{ "type":"string", "enum":[ "NoData", "Unknown", "Pending", "Ok", "Info", "Warning", "Degraded", "Severe" ] }, "EnvironmentId":{"type":"string"}, "EnvironmentIdList":{ "type":"list", "member":{"shape":"EnvironmentId"} }, "EnvironmentInfoDescription":{ "type":"structure", "members":{ "InfoType":{"shape":"EnvironmentInfoType"}, "Ec2InstanceId":{"shape":"Ec2InstanceId"}, "SampleTimestamp":{"shape":"SampleTimestamp"}, "Message":{"shape":"Message"} } }, "EnvironmentInfoDescriptionList":{ "type":"list", "member":{"shape":"EnvironmentInfoDescription"} }, "EnvironmentInfoType":{ "type":"string", "enum":[ "tail", "bundle" ] }, "EnvironmentLink":{ "type":"structure", "members":{ "LinkName":{"shape":"String"}, "EnvironmentName":{"shape":"String"} } }, "EnvironmentLinks":{ "type":"list", "member":{"shape":"EnvironmentLink"} }, "EnvironmentName":{ "type":"string", "max":40, "min":4 }, "EnvironmentNamesList":{ "type":"list", "member":{"shape":"EnvironmentName"} }, "EnvironmentResourceDescription":{ "type":"structure", "members":{ "EnvironmentName":{"shape":"EnvironmentName"}, "AutoScalingGroups":{"shape":"AutoScalingGroupList"}, "Instances":{"shape":"InstanceList"}, "LaunchConfigurations":{"shape":"LaunchConfigurationList"}, "LoadBalancers":{"shape":"LoadBalancerList"}, "Triggers":{"shape":"TriggerList"}, "Queues":{"shape":"QueueList"} } }, "EnvironmentResourceDescriptionsMessage":{ "type":"structure", "members":{ "EnvironmentResources":{"shape":"EnvironmentResourceDescription"} } }, "EnvironmentResourcesDescription":{ "type":"structure", "members":{ "LoadBalancer":{"shape":"LoadBalancerDescription"} } }, "EnvironmentStatus":{ "type":"string", "enum":[ "Launching", "Updating", "Ready", "Terminating", "Terminated" ] }, "EnvironmentTier":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "Type":{"shape":"String"}, "Version":{"shape":"String"} } }, "EventDate":{"type":"timestamp"}, "EventDescription":{ "type":"structure", "members":{ "EventDate":{"shape":"EventDate"}, "Message":{"shape":"EventMessage"}, "ApplicationName":{"shape":"ApplicationName"}, "VersionLabel":{"shape":"VersionLabel"}, "TemplateName":{"shape":"ConfigurationTemplateName"}, "EnvironmentName":{"shape":"EnvironmentName"}, "RequestId":{"shape":"RequestId"}, "Severity":{"shape":"EventSeverity"} } }, "EventDescriptionList":{ "type":"list", "member":{"shape":"EventDescription"} }, "EventDescriptionsMessage":{ "type":"structure", "members":{ "Events":{"shape":"EventDescriptionList"}, "NextToken":{"shape":"Token"} } }, "EventMessage":{"type":"string"}, "EventSeverity":{ "type":"string", "enum":[ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "FATAL" ] }, "ExceptionMessage":{"type":"string"}, "FailureType":{ "type":"string", "enum":[ "UpdateCancelled", "CancellationFailed", "RollbackFailed", "RollbackSuccessful", "InternalFailure", "InvalidEnvironmentState", "PermissionsError" ] }, "FileTypeExtension":{ "type":"string", "max":100, "min":1 }, "ForceTerminate":{"type":"boolean"}, "GroupName":{ "type":"string", "max":19, "min":1 }, "IncludeDeleted":{"type":"boolean"}, "IncludeDeletedBackTo":{"type":"timestamp"}, "Instance":{ "type":"structure", "members":{ "Id":{"shape":"ResourceId"} } }, "InstanceHealthList":{ "type":"list", "member":{"shape":"SingleInstanceHealth"} }, "InstanceHealthSummary":{ "type":"structure", "members":{ "NoData":{"shape":"NullableInteger"}, "Unknown":{"shape":"NullableInteger"}, "Pending":{"shape":"NullableInteger"}, "Ok":{"shape":"NullableInteger"}, "Info":{"shape":"NullableInteger"}, "Warning":{"shape":"NullableInteger"}, "Degraded":{"shape":"NullableInteger"}, "Severe":{"shape":"NullableInteger"} } }, "InstanceId":{ "type":"string", "max":255, "min":1 }, "InstanceList":{ "type":"list", "member":{"shape":"Instance"} }, "InstancesHealthAttribute":{ "type":"string", "enum":[ "HealthStatus", "Color", "Causes", "ApplicationMetrics", "RefreshedAt", "LaunchedAt", "System", "Deployment", "AvailabilityZone", "InstanceType", "All" ] }, "InstancesHealthAttributes":{ "type":"list", "member":{"shape":"InstancesHealthAttribute"} }, "InsufficientPrivilegesException":{ "type":"structure", "members":{ }, "error":{ "code":"InsufficientPrivilegesException", "httpStatusCode":403, "senderFault":true }, "exception":true }, "Integer":{"type":"integer"}, "InvalidRequestException":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidRequestException", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Latency":{ "type":"structure", "members":{ "P999":{"shape":"NullableDouble"}, "P99":{"shape":"NullableDouble"}, "P95":{"shape":"NullableDouble"}, "P90":{"shape":"NullableDouble"}, "P85":{"shape":"NullableDouble"}, "P75":{"shape":"NullableDouble"}, "P50":{"shape":"NullableDouble"}, "P10":{"shape":"NullableDouble"} } }, "LaunchConfiguration":{ "type":"structure", "members":{ "Name":{"shape":"ResourceId"} } }, "LaunchConfigurationList":{ "type":"list", "member":{"shape":"LaunchConfiguration"} }, "LaunchedAt":{"type":"timestamp"}, "ListAvailableSolutionStacksResultMessage":{ "type":"structure", "members":{ "SolutionStacks":{"shape":"AvailableSolutionStackNamesList"}, "SolutionStackDetails":{"shape":"AvailableSolutionStackDetailsList"} } }, "Listener":{ "type":"structure", "members":{ "Protocol":{"shape":"String"}, "Port":{"shape":"Integer"} } }, "LoadAverage":{ "type":"list", "member":{"shape":"LoadAverageValue"} }, "LoadAverageValue":{"type":"double"}, "LoadBalancer":{ "type":"structure", "members":{ "Name":{"shape":"ResourceId"} } }, "LoadBalancerDescription":{ "type":"structure", "members":{ "LoadBalancerName":{"shape":"String"}, "Domain":{"shape":"String"}, "Listeners":{"shape":"LoadBalancerListenersDescription"} } }, "LoadBalancerList":{ "type":"list", "member":{"shape":"LoadBalancer"} }, "LoadBalancerListenersDescription":{ "type":"list", "member":{"shape":"Listener"} }, "ManagedAction":{ "type":"structure", "members":{ "ActionId":{"shape":"String"}, "ActionDescription":{"shape":"String"}, "ActionType":{"shape":"ActionType"}, "Status":{"shape":"ActionStatus"}, "WindowStartTime":{"shape":"Timestamp"} } }, "ManagedActionHistoryItem":{ "type":"structure", "members":{ "ActionId":{"shape":"String"}, "ActionType":{"shape":"ActionType"}, "ActionDescription":{"shape":"String"}, "FailureType":{"shape":"FailureType"}, "Status":{"shape":"ActionHistoryStatus"}, "FailureDescription":{"shape":"String"}, "ExecutedTime":{"shape":"Timestamp"}, "FinishedTime":{"shape":"Timestamp"} } }, "ManagedActionHistoryItems":{ "type":"list", "member":{"shape":"ManagedActionHistoryItem"}, "max":100, "min":1 }, "ManagedActionInvalidStateException":{ "type":"structure", "members":{ }, "error":{ "code":"ManagedActionInvalidStateException", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ManagedActions":{ "type":"list", "member":{"shape":"ManagedAction"}, "max":100, "min":1 }, "MaxRecords":{ "type":"integer", "max":1000, "min":1 }, "Message":{"type":"string"}, "NextToken":{ "type":"string", "max":100, "min":1 }, "NullableDouble":{"type":"double"}, "NullableInteger":{"type":"integer"}, "NullableLong":{"type":"long"}, "OperationInProgressException":{ "type":"structure", "members":{ }, "error":{ "code":"OperationInProgressFailure", "httpStatusCode":400, "senderFault":true }, "exception":true }, "OptionNamespace":{"type":"string"}, "OptionRestrictionMaxLength":{"type":"integer"}, "OptionRestrictionMaxValue":{"type":"integer"}, "OptionRestrictionMinValue":{"type":"integer"}, "OptionRestrictionRegex":{ "type":"structure", "members":{ "Pattern":{"shape":"RegexPattern"}, "Label":{"shape":"RegexLabel"} } }, "OptionSpecification":{ "type":"structure", "members":{ "ResourceName":{"shape":"ResourceName"}, "Namespace":{"shape":"OptionNamespace"}, "OptionName":{"shape":"ConfigurationOptionName"} } }, "OptionsSpecifierList":{ "type":"list", "member":{"shape":"OptionSpecification"} }, "Queue":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "URL":{"shape":"String"} } }, "QueueList":{ "type":"list", "member":{"shape":"Queue"} }, "RebuildEnvironmentMessage":{ "type":"structure", "members":{ "EnvironmentId":{"shape":"EnvironmentId"}, "EnvironmentName":{"shape":"EnvironmentName"} } }, "RefreshedAt":{"type":"timestamp"}, "RegexLabel":{"type":"string"}, "RegexPattern":{"type":"string"}, "RequestCount":{"type":"integer"}, "RequestEnvironmentInfoMessage":{ "type":"structure", "required":["InfoType"], "members":{ "EnvironmentId":{"shape":"EnvironmentId"}, "EnvironmentName":{"shape":"EnvironmentName"}, "InfoType":{"shape":"EnvironmentInfoType"} } }, "RequestId":{"type":"string"}, "ResourceId":{"type":"string"}, "ResourceName":{ "type":"string", "max":256, "min":1 }, "RestartAppServerMessage":{ "type":"structure", "members":{ "EnvironmentId":{"shape":"EnvironmentId"}, "EnvironmentName":{"shape":"EnvironmentName"} } }, "RetrieveEnvironmentInfoMessage":{ "type":"structure", "required":["InfoType"], "members":{ "EnvironmentId":{"shape":"EnvironmentId"}, "EnvironmentName":{"shape":"EnvironmentName"}, "InfoType":{"shape":"EnvironmentInfoType"} } }, "RetrieveEnvironmentInfoResultMessage":{ "type":"structure", "members":{ "EnvironmentInfo":{"shape":"EnvironmentInfoDescriptionList"} } }, "S3Bucket":{ "type":"string", "max":255 }, "S3Key":{ "type":"string", "max":1024 }, "S3Location":{ "type":"structure", "members":{ "S3Bucket":{"shape":"S3Bucket"}, "S3Key":{"shape":"S3Key"} } }, "S3LocationNotInServiceRegionException":{ "type":"structure", "members":{ }, "error":{ "code":"S3LocationNotInServiceRegionException", "httpStatusCode":400, "senderFault":true }, "exception":true }, "S3SubscriptionRequiredException":{ "type":"structure", "members":{ }, "error":{ "code":"S3SubscriptionRequiredException", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SampleTimestamp":{"type":"timestamp"}, "SingleInstanceHealth":{ "type":"structure", "members":{ "InstanceId":{"shape":"InstanceId"}, "HealthStatus":{"shape":"String"}, "Color":{"shape":"String"}, "Causes":{"shape":"Causes"}, "LaunchedAt":{"shape":"LaunchedAt"}, "ApplicationMetrics":{"shape":"ApplicationMetrics"}, "System":{"shape":"SystemStatus"}, "Deployment":{"shape":"Deployment"}, "AvailabilityZone":{"shape":"String"}, "InstanceType":{"shape":"String"} } }, "SolutionStackDescription":{ "type":"structure", "members":{ "SolutionStackName":{"shape":"SolutionStackName"}, "PermittedFileTypes":{"shape":"SolutionStackFileTypeList"} } }, "SolutionStackFileTypeList":{ "type":"list", "member":{"shape":"FileTypeExtension"} }, "SolutionStackName":{ "type":"string", "max":100 }, "SourceBuildInformation":{ "type":"structure", "required":[ "SourceType", "SourceRepository", "SourceLocation" ], "members":{ "SourceType":{"shape":"SourceType"}, "SourceRepository":{"shape":"SourceRepository"}, "SourceLocation":{"shape":"SourceLocation"} } }, "SourceBundleDeletionException":{ "type":"structure", "members":{ }, "error":{ "code":"SourceBundleDeletionFailure", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SourceConfiguration":{ "type":"structure", "members":{ "ApplicationName":{"shape":"ApplicationName"}, "TemplateName":{"shape":"ConfigurationTemplateName"} } }, "SourceLocation":{ "type":"string", "max":255, "min":3, "pattern":".+/.+" }, "SourceRepository":{ "type":"string", "enum":["CodeCommit"] }, "SourceType":{ "type":"string", "enum":["Git"] }, "StatusCodes":{ "type":"structure", "members":{ "Status2xx":{"shape":"NullableInteger"}, "Status3xx":{"shape":"NullableInteger"}, "Status4xx":{"shape":"NullableInteger"}, "Status5xx":{"shape":"NullableInteger"} } }, "String":{"type":"string"}, "SwapEnvironmentCNAMEsMessage":{ "type":"structure", "members":{ "SourceEnvironmentId":{"shape":"EnvironmentId"}, "SourceEnvironmentName":{"shape":"EnvironmentName"}, "DestinationEnvironmentId":{"shape":"EnvironmentId"}, "DestinationEnvironmentName":{"shape":"EnvironmentName"} } }, "SystemStatus":{ "type":"structure", "members":{ "CPUUtilization":{"shape":"CPUUtilization"}, "LoadAverage":{"shape":"LoadAverage"} } }, "Tag":{ "type":"structure", "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{ "type":"string", "max":128, "min":1 }, "TagValue":{ "type":"string", "max":256, "min":1 }, "Tags":{ "type":"list", "member":{"shape":"Tag"} }, "TerminateEnvForce":{"type":"boolean"}, "TerminateEnvironmentMessage":{ "type":"structure", "members":{ "EnvironmentId":{"shape":"EnvironmentId"}, "EnvironmentName":{"shape":"EnvironmentName"}, "TerminateResources":{"shape":"TerminateEnvironmentResources"}, "ForceTerminate":{"shape":"ForceTerminate"} } }, "TerminateEnvironmentResources":{"type":"boolean"}, "TimeFilterEnd":{"type":"timestamp"}, "TimeFilterStart":{"type":"timestamp"}, "Timestamp":{"type":"timestamp"}, "Token":{"type":"string"}, "TooManyApplicationVersionsException":{ "type":"structure", "members":{ }, "exception":true }, "TooManyApplicationsException":{ "type":"structure", "members":{ }, "error":{ "code":"TooManyApplicationsException", "httpStatusCode":400, "senderFault":true }, "exception":true }, "TooManyBucketsException":{ "type":"structure", "members":{ }, "error":{ "code":"TooManyBucketsException", "httpStatusCode":400, "senderFault":true }, "exception":true }, "TooManyConfigurationTemplatesException":{ "type":"structure", "members":{ }, "error":{ "code":"TooManyConfigurationTemplatesException", "httpStatusCode":400, "senderFault":true }, "exception":true }, "TooManyEnvironmentsException":{ "type":"structure", "members":{ }, "error":{ "code":"TooManyEnvironmentsException", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Trigger":{ "type":"structure", "members":{ "Name":{"shape":"ResourceId"} } }, "TriggerList":{ "type":"list", "member":{"shape":"Trigger"} }, "UpdateApplicationMessage":{ "type":"structure", "required":["ApplicationName"], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "Description":{"shape":"Description"} } }, "UpdateApplicationVersionMessage":{ "type":"structure", "required":[ "ApplicationName", "VersionLabel" ], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "VersionLabel":{"shape":"VersionLabel"}, "Description":{"shape":"Description"} } }, "UpdateConfigurationTemplateMessage":{ "type":"structure", "required":[ "ApplicationName", "TemplateName" ], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "TemplateName":{"shape":"ConfigurationTemplateName"}, "Description":{"shape":"Description"}, "OptionSettings":{"shape":"ConfigurationOptionSettingsList"}, "OptionsToRemove":{"shape":"OptionsSpecifierList"} } }, "UpdateDate":{"type":"timestamp"}, "UpdateEnvironmentMessage":{ "type":"structure", "members":{ "ApplicationName":{"shape":"ApplicationName"}, "EnvironmentId":{"shape":"EnvironmentId"}, "EnvironmentName":{"shape":"EnvironmentName"}, "GroupName":{"shape":"GroupName"}, "Description":{"shape":"Description"}, "Tier":{"shape":"EnvironmentTier"}, "VersionLabel":{"shape":"VersionLabel"}, "TemplateName":{"shape":"ConfigurationTemplateName"}, "SolutionStackName":{"shape":"SolutionStackName"}, "OptionSettings":{"shape":"ConfigurationOptionSettingsList"}, "OptionsToRemove":{"shape":"OptionsSpecifierList"} } }, "UserDefinedOption":{"type":"boolean"}, "ValidateConfigurationSettingsMessage":{ "type":"structure", "required":[ "ApplicationName", "OptionSettings" ], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "TemplateName":{"shape":"ConfigurationTemplateName"}, "EnvironmentName":{"shape":"EnvironmentName"}, "OptionSettings":{"shape":"ConfigurationOptionSettingsList"} } }, "ValidationMessage":{ "type":"structure", "members":{ "Message":{"shape":"ValidationMessageString"}, "Severity":{"shape":"ValidationSeverity"}, "Namespace":{"shape":"OptionNamespace"}, "OptionName":{"shape":"ConfigurationOptionName"} } }, "ValidationMessageString":{"type":"string"}, "ValidationMessagesList":{ "type":"list", "member":{"shape":"ValidationMessage"} }, "ValidationSeverity":{ "type":"string", "enum":[ "error", "warning" ] }, "VersionLabel":{ "type":"string", "max":100, "min":1 }, "VersionLabels":{ "type":"list", "member":{"shape":"VersionLabel"} }, "VersionLabelsList":{ "type":"list", "member":{"shape":"VersionLabel"} } } } aws-sdk-go-1.4.22/models/apis/elasticbeanstalk/2010-12-01/docs-2.json000066400000000000000000003047601300374646400243270ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS Elastic Beanstalk

        AWS Elastic Beanstalk makes it easy for you to create, deploy, and manage scalable, fault-tolerant applications running on the Amazon Web Services cloud.

        For more information about this product, go to the AWS Elastic Beanstalk details page. The location of the latest AWS Elastic Beanstalk WSDL is http://elasticbeanstalk.s3.amazonaws.com/doc/2010-12-01/AWSElasticBeanstalk.wsdl. To install the Software Development Kits (SDKs), Integrated Development Environment (IDE) Toolkits, and command line tools that enable you to access the API, go to Tools for Amazon Web Services.

        Endpoints

        For a list of region-specific endpoints that AWS Elastic Beanstalk supports, go to Regions and Endpoints in the Amazon Web Services Glossary.

        ", "operations": { "AbortEnvironmentUpdate": "

        Cancels in-progress environment configuration update or application version deployment.

        ", "ApplyEnvironmentManagedAction": "

        Applies a scheduled managed action immediately. A managed action can be applied only if its status is Scheduled. Get the status and action ID of a managed action with DescribeEnvironmentManagedActions.

        ", "CheckDNSAvailability": "

        Checks if the specified CNAME is available.

        ", "ComposeEnvironments": "

        Create or update a group of environments that each run a separate component of a single application. Takes a list of version labels that specify application source bundles for each of the environments to create or update. The name of each environment and other required information must be included in the source bundles in an environment manifest named env.yaml. See Compose Environments for details.

        ", "CreateApplication": "

        Creates an application that has one configuration template named default and no application versions.

        ", "CreateApplicationVersion": "

        Creates an application version for the specified application.

        Once you create an application version with a specified Amazon S3 bucket and key location, you cannot change that Amazon S3 location. If you change the Amazon S3 location, you receive an exception when you attempt to launch an environment from the application version.

        ", "CreateConfigurationTemplate": "

        Creates a configuration template. Templates are associated with a specific application and are used to deploy different versions of the application with the same configuration settings.

        Related Topics

        ", "CreateEnvironment": "

        Launches an environment for the specified application using the specified configuration.

        ", "CreateStorageLocation": "

        Creates the Amazon S3 storage location for the account.

        This location is used to store user log files.

        ", "DeleteApplication": "

        Deletes the specified application along with all associated versions and configurations. The application versions will not be deleted from your Amazon S3 bucket.

        You cannot delete an application that has a running environment.

        ", "DeleteApplicationVersion": "

        Deletes the specified version from the specified application.

        You cannot delete an application version that is associated with a running environment.

        ", "DeleteConfigurationTemplate": "

        Deletes the specified configuration template.

        When you launch an environment using a configuration template, the environment gets a copy of the template. You can delete or modify the environment's copy of the template without affecting the running environment.

        ", "DeleteEnvironmentConfiguration": "

        Deletes the draft configuration associated with the running environment.

        Updating a running environment with any configuration changes creates a draft configuration set. You can get the draft configuration using DescribeConfigurationSettings while the update is in progress or if the update fails. The DeploymentStatus for the draft configuration indicates whether the deployment is in process or has failed. The draft configuration remains in existence until it is deleted with this action.

        ", "DescribeApplicationVersions": "

        Retrieve a list of application versions stored in your AWS Elastic Beanstalk storage bucket.

        ", "DescribeApplications": "

        Returns the descriptions of existing applications.

        ", "DescribeConfigurationOptions": "

        Describes the configuration options that are used in a particular configuration template or environment, or that a specified solution stack defines. The description includes the values the options, their default values, and an indication of the required action on a running environment if an option value is changed.

        ", "DescribeConfigurationSettings": "

        Returns a description of the settings for the specified configuration set, that is, either a configuration template or the configuration set associated with a running environment.

        When describing the settings for the configuration set associated with a running environment, it is possible to receive two sets of setting descriptions. One is the deployed configuration set, and the other is a draft configuration of an environment that is either in the process of deployment or that failed to deploy.

        Related Topics

        ", "DescribeEnvironmentHealth": "

        Returns information about the overall health of the specified environment. The DescribeEnvironmentHealth operation is only available with AWS Elastic Beanstalk Enhanced Health.

        ", "DescribeEnvironmentManagedActionHistory": "

        Lists an environment's completed and failed managed actions.

        ", "DescribeEnvironmentManagedActions": "

        Lists an environment's upcoming and in-progress managed actions.

        ", "DescribeEnvironmentResources": "

        Returns AWS resources for this environment.

        ", "DescribeEnvironments": "

        Returns descriptions for existing environments.

        ", "DescribeEvents": "

        Returns list of event descriptions matching criteria up to the last 6 weeks.

        This action returns the most recent 1,000 events from the specified NextToken.

        ", "DescribeInstancesHealth": "

        Returns more detailed information about the health of the specified instances (for example, CPU utilization, load average, and causes). The DescribeInstancesHealth operation is only available with AWS Elastic Beanstalk Enhanced Health.

        ", "ListAvailableSolutionStacks": "

        Returns a list of the available solution stack names.

        ", "RebuildEnvironment": "

        Deletes and recreates all of the AWS resources (for example: the Auto Scaling group, load balancer, etc.) for a specified environment and forces a restart.

        ", "RequestEnvironmentInfo": "

        Initiates a request to compile the specified type of information of the deployed environment.

        Setting the InfoType to tail compiles the last lines from the application server log files of every Amazon EC2 instance in your environment.

        Setting the InfoType to bundle compresses the application server log files for every Amazon EC2 instance into a .zip file. Legacy and .NET containers do not support bundle logs.

        Use RetrieveEnvironmentInfo to obtain the set of logs.

        Related Topics

        ", "RestartAppServer": "

        Causes the environment to restart the application container server running on each Amazon EC2 instance.

        ", "RetrieveEnvironmentInfo": "

        Retrieves the compiled information from a RequestEnvironmentInfo request.

        Related Topics

        ", "SwapEnvironmentCNAMEs": "

        Swaps the CNAMEs of two environments.

        ", "TerminateEnvironment": "

        Terminates the specified environment.

        ", "UpdateApplication": "

        Updates the specified application to have the specified properties.

        If a property (for example, description) is not provided, the value remains unchanged. To clear these properties, specify an empty string.

        ", "UpdateApplicationVersion": "

        Updates the specified application version to have the specified properties.

        If a property (for example, description) is not provided, the value remains unchanged. To clear properties, specify an empty string.

        ", "UpdateConfigurationTemplate": "

        Updates the specified configuration template to have the specified properties or configuration option values.

        If a property (for example, ApplicationName) is not provided, its value remains unchanged. To clear such properties, specify an empty string.

        Related Topics

        ", "UpdateEnvironment": "

        Updates the environment description, deploys a new application version, updates the configuration settings to an entirely new configuration template, or updates select configuration option values in the running environment.

        Attempting to update both the release and configuration is not allowed and AWS Elastic Beanstalk returns an InvalidParameterCombination error.

        When updating the configuration settings to a new template or individual settings, a draft configuration is created and DescribeConfigurationSettings for this environment returns two setting descriptions with different DeploymentStatus values.

        ", "ValidateConfigurationSettings": "

        Takes a set of configuration settings and either a configuration template or environment, and determines whether those values are valid.

        This action returns a list of messages indicating any errors or warnings associated with the selection of option values.

        " }, "shapes": { "AbortEnvironmentUpdateMessage": { "base": "

        ", "refs": { } }, "AbortableOperationInProgress": { "base": null, "refs": { "EnvironmentDescription$AbortableOperationInProgress": "

        Indicates if there is an in-progress environment configuration update or application version deployment that you can cancel.

        true: There is an update in progress.

        false: There are no updates currently in progress.

        " } }, "ActionHistoryStatus": { "base": null, "refs": { "ManagedActionHistoryItem$Status": "

        The status of the action.

        " } }, "ActionStatus": { "base": null, "refs": { "DescribeEnvironmentManagedActionsRequest$Status": "

        To show only actions with a particular status, specify a status.

        ", "ManagedAction$Status": "

        The status of the managed action. If the action is Scheduled, you can apply it immediately with ApplyEnvironmentManagedAction.

        " } }, "ActionType": { "base": null, "refs": { "ApplyEnvironmentManagedActionResult$ActionType": "

        The type of managed action.

        ", "ManagedAction$ActionType": "

        The type of managed action.

        ", "ManagedActionHistoryItem$ActionType": "

        The type of the managed action.

        " } }, "ApplicationDescription": { "base": "

        Describes the properties of an application.

        ", "refs": { "ApplicationDescriptionList$member": null, "ApplicationDescriptionMessage$Application": "

        The ApplicationDescription of the application.

        " } }, "ApplicationDescriptionList": { "base": null, "refs": { "ApplicationDescriptionsMessage$Applications": "

        This parameter contains a list of ApplicationDescription.

        " } }, "ApplicationDescriptionMessage": { "base": "

        Result message containing a single description of an application.

        ", "refs": { } }, "ApplicationDescriptionsMessage": { "base": "

        Result message containing a list of application descriptions.

        ", "refs": { } }, "ApplicationMetrics": { "base": "

        Represents the application metrics for a specified environment.

        ", "refs": { "DescribeEnvironmentHealthResult$ApplicationMetrics": null, "SingleInstanceHealth$ApplicationMetrics": null } }, "ApplicationName": { "base": null, "refs": { "ApplicationDescription$ApplicationName": "

        The name of the application.

        ", "ApplicationNamesList$member": null, "ApplicationVersionDescription$ApplicationName": "

        The name of the application associated with this release.

        ", "ComposeEnvironmentsMessage$ApplicationName": "

        The name of the application to which the specified source bundles belong.

        ", "ConfigurationSettingsDescription$ApplicationName": "

        The name of the application associated with this configuration set.

        ", "CreateApplicationMessage$ApplicationName": "

        The name of the application.

        Constraint: This name must be unique within your account. If the specified name already exists, the action returns an InvalidParameterValue error.

        ", "CreateApplicationVersionMessage$ApplicationName": "

        The name of the application. If no application is found with this name, and AutoCreateApplication is false, returns an InvalidParameterValue error.

        ", "CreateConfigurationTemplateMessage$ApplicationName": "

        The name of the application to associate with this configuration template. If no application is found with this name, AWS Elastic Beanstalk returns an InvalidParameterValue error.

        ", "CreateEnvironmentMessage$ApplicationName": "

        The name of the application that contains the version to be deployed.

        If no application is found with this name, CreateEnvironment returns an InvalidParameterValue error.

        ", "DeleteApplicationMessage$ApplicationName": "

        The name of the application to delete.

        ", "DeleteApplicationVersionMessage$ApplicationName": "

        The name of the application to delete releases from.

        ", "DeleteConfigurationTemplateMessage$ApplicationName": "

        The name of the application to delete the configuration template from.

        ", "DeleteEnvironmentConfigurationMessage$ApplicationName": "

        The name of the application the environment is associated with.

        ", "DescribeApplicationVersionsMessage$ApplicationName": "

        If specified, AWS Elastic Beanstalk restricts the returned descriptions to only include ones that are associated with the specified application.

        ", "DescribeConfigurationOptionsMessage$ApplicationName": "

        The name of the application associated with the configuration template or environment. Only needed if you want to describe the configuration options associated with either the configuration template or environment.

        ", "DescribeConfigurationSettingsMessage$ApplicationName": "

        The application for the environment or configuration template.

        ", "DescribeEnvironmentsMessage$ApplicationName": "

        If specified, AWS Elastic Beanstalk restricts the returned descriptions to include only those that are associated with this application.

        ", "DescribeEventsMessage$ApplicationName": "

        If specified, AWS Elastic Beanstalk restricts the returned descriptions to include only those associated with this application.

        ", "EnvironmentDescription$ApplicationName": "

        The name of the application associated with this environment.

        ", "EventDescription$ApplicationName": "

        The application associated with the event.

        ", "SourceConfiguration$ApplicationName": "

        The name of the application associated with the configuration.

        ", "UpdateApplicationMessage$ApplicationName": "

        The name of the application to update. If no such application is found, UpdateApplication returns an InvalidParameterValue error.

        ", "UpdateApplicationVersionMessage$ApplicationName": "

        The name of the application associated with this version.

        If no application is found with this name, UpdateApplication returns an InvalidParameterValue error.

        ", "UpdateConfigurationTemplateMessage$ApplicationName": "

        The name of the application associated with the configuration template to update.

        If no application is found with this name, UpdateConfigurationTemplate returns an InvalidParameterValue error.

        ", "UpdateEnvironmentMessage$ApplicationName": "

        The name of the application with which the environment is associated.

        ", "ValidateConfigurationSettingsMessage$ApplicationName": "

        The name of the application that the configuration template or environment belongs to.

        " } }, "ApplicationNamesList": { "base": null, "refs": { "DescribeApplicationsMessage$ApplicationNames": "

        If specified, AWS Elastic Beanstalk restricts the returned descriptions to only include those with the specified names.

        " } }, "ApplicationVersionDescription": { "base": "

        Describes the properties of an application version.

        ", "refs": { "ApplicationVersionDescriptionList$member": null, "ApplicationVersionDescriptionMessage$ApplicationVersion": "

        The ApplicationVersionDescription of the application version.

        " } }, "ApplicationVersionDescriptionList": { "base": null, "refs": { "ApplicationVersionDescriptionsMessage$ApplicationVersions": "

        List of ApplicationVersionDescription objects sorted by order of creation.

        " } }, "ApplicationVersionDescriptionMessage": { "base": "

        Result message wrapping a single description of an application version.

        ", "refs": { } }, "ApplicationVersionDescriptionsMessage": { "base": "

        Result message wrapping a list of application version descriptions.

        ", "refs": { } }, "ApplicationVersionProccess": { "base": null, "refs": { "CreateApplicationVersionMessage$Process": "

        Preprocesses and validates the environment manifest and configuration files in the source bundle. Validating configuration files can identify issues prior to deploying the application version to an environment.

        " } }, "ApplicationVersionStatus": { "base": null, "refs": { "ApplicationVersionDescription$Status": "

        The processing status of the application version.

        " } }, "ApplyEnvironmentManagedActionRequest": { "base": "

        Request to execute a scheduled managed action immediately.

        ", "refs": { } }, "ApplyEnvironmentManagedActionResult": { "base": "

        The result message containing information about the managed action.

        ", "refs": { } }, "AutoCreateApplication": { "base": null, "refs": { "CreateApplicationVersionMessage$AutoCreateApplication": "

        Determines how the system behaves if the specified application for this version does not already exist:

        • true : Automatically creates the specified application for this release if it does not already exist.

        • false : Throws an InvalidParameterValue if the specified application for this release does not already exist.

        Default: false

        Valid Values: true | false

        " } }, "AutoScalingGroup": { "base": "

        Describes an Auto Scaling launch configuration.

        ", "refs": { "AutoScalingGroupList$member": null } }, "AutoScalingGroupList": { "base": null, "refs": { "EnvironmentResourceDescription$AutoScalingGroups": "

        The AutoScalingGroups used by this environment.

        " } }, "AvailableSolutionStackDetailsList": { "base": null, "refs": { "ListAvailableSolutionStacksResultMessage$SolutionStackDetails": "

        A list of available solution stacks and their SolutionStackDescription.

        " } }, "AvailableSolutionStackNamesList": { "base": null, "refs": { "ListAvailableSolutionStacksResultMessage$SolutionStacks": "

        A list of available solution stacks.

        " } }, "CPUUtilization": { "base": "

        Represents CPU utilization information from the specified instance that belongs to the AWS Elastic Beanstalk environment. Use the instanceId property to specify the application instance for which you'd like to return data.

        ", "refs": { "SystemStatus$CPUUtilization": null } }, "Cause": { "base": null, "refs": { "Causes$member": null } }, "Causes": { "base": null, "refs": { "DescribeEnvironmentHealthResult$Causes": "

        Returns potential causes for the reported status.

        ", "SingleInstanceHealth$Causes": "

        Represents the causes, which provide more information about the current health status.

        " } }, "CheckDNSAvailabilityMessage": { "base": "

        Results message indicating whether a CNAME is available.

        ", "refs": { } }, "CheckDNSAvailabilityResultMessage": { "base": "

        Indicates if the specified CNAME is available.

        ", "refs": { } }, "CnameAvailability": { "base": null, "refs": { "CheckDNSAvailabilityResultMessage$Available": "

        Indicates if the specified CNAME is available:

        • true : The CNAME is available.

        • false : The CNAME is not available.

        " } }, "ComposeEnvironmentsMessage": { "base": "

        Request to create or update a group of environments.

        ", "refs": { } }, "ConfigurationDeploymentStatus": { "base": null, "refs": { "ConfigurationSettingsDescription$DeploymentStatus": "

        If this configuration set is associated with an environment, the DeploymentStatus parameter indicates the deployment status of this configuration set:

        • null: This configuration is not associated with a running environment.

        • pending: This is a draft configuration that is not deployed to the associated environment but is in the process of deploying.

        • deployed: This is the configuration that is currently deployed to the associated running environment.

        • failed: This is a draft configuration that failed to successfully deploy.

        " } }, "ConfigurationOptionDefaultValue": { "base": null, "refs": { "ConfigurationOptionDescription$DefaultValue": "

        The default value for this configuration option.

        " } }, "ConfigurationOptionDescription": { "base": "

        Describes the possible values for a configuration option.

        ", "refs": { "ConfigurationOptionDescriptionsList$member": null } }, "ConfigurationOptionDescriptionsList": { "base": null, "refs": { "ConfigurationOptionsDescription$Options": "

        A list of ConfigurationOptionDescription.

        " } }, "ConfigurationOptionName": { "base": null, "refs": { "ConfigurationOptionDescription$Name": "

        The name of the configuration option.

        ", "ConfigurationOptionSetting$OptionName": "

        The name of the configuration option.

        ", "OptionSpecification$OptionName": "

        The name of the configuration option.

        ", "ValidationMessage$OptionName": "

        " } }, "ConfigurationOptionPossibleValue": { "base": null, "refs": { "ConfigurationOptionPossibleValues$member": null } }, "ConfigurationOptionPossibleValues": { "base": null, "refs": { "ConfigurationOptionDescription$ValueOptions": "

        If specified, values for the configuration option are selected from this list.

        " } }, "ConfigurationOptionSetting": { "base": "

        A specification identifying an individual configuration option along with its current value. For a list of possible option values, go to Option Values in the AWS Elastic Beanstalk Developer Guide.

        ", "refs": { "ConfigurationOptionSettingsList$member": null } }, "ConfigurationOptionSettingsList": { "base": null, "refs": { "ConfigurationSettingsDescription$OptionSettings": "

        A list of the configuration options and their values in this configuration set.

        ", "CreateConfigurationTemplateMessage$OptionSettings": "

        If specified, AWS Elastic Beanstalk sets the specified configuration option to the requested value. The new value overrides the value obtained from the solution stack or the source configuration template.

        ", "CreateEnvironmentMessage$OptionSettings": "

        If specified, AWS Elastic Beanstalk sets the specified configuration options to the requested value in the configuration set for the new environment. These override the values obtained from the solution stack or the configuration template.

        ", "UpdateConfigurationTemplateMessage$OptionSettings": "

        A list of configuration option settings to update with the new specified option value.

        ", "UpdateEnvironmentMessage$OptionSettings": "

        If specified, AWS Elastic Beanstalk updates the configuration set associated with the running environment and sets the specified configuration options to the requested value.

        ", "ValidateConfigurationSettingsMessage$OptionSettings": "

        A list of the options and desired values to evaluate.

        " } }, "ConfigurationOptionSeverity": { "base": null, "refs": { "ConfigurationOptionDescription$ChangeSeverity": "

        An indication of which action is required if the value for this configuration option changes:

        • NoInterruption : There is no interruption to the environment or application availability.

        • RestartEnvironment : The environment is entirely restarted, all AWS resources are deleted and recreated, and the environment is unavailable during the process.

        • RestartApplicationServer : The environment is available the entire time. However, a short application outage occurs when the application servers on the running Amazon EC2 instances are restarted.

        " } }, "ConfigurationOptionValue": { "base": null, "refs": { "ConfigurationOptionSetting$Value": "

        The current value for the configuration option.

        " } }, "ConfigurationOptionValueType": { "base": null, "refs": { "ConfigurationOptionDescription$ValueType": "

        An indication of which type of values this option has and whether it is allowable to select one or more than one of the possible values:

        • Scalar : Values for this option are a single selection from the possible values, or an unformatted string, or numeric value governed by the MIN/MAX/Regex constraints.

        • List : Values for this option are multiple selections from the possible values.

        • Boolean : Values for this option are either true or false .

        • Json : Values for this option are a JSON representation of a ConfigDocument.

        " } }, "ConfigurationOptionsDescription": { "base": "

        Describes the settings for a specified configuration set.

        ", "refs": { } }, "ConfigurationSettingsDescription": { "base": "

        Describes the settings for a configuration set.

        ", "refs": { "ConfigurationSettingsDescriptionList$member": null } }, "ConfigurationSettingsDescriptionList": { "base": null, "refs": { "ConfigurationSettingsDescriptions$ConfigurationSettings": "

        A list of ConfigurationSettingsDescription.

        " } }, "ConfigurationSettingsDescriptions": { "base": "

        The results from a request to change the configuration settings of an environment.

        ", "refs": { } }, "ConfigurationSettingsValidationMessages": { "base": "

        Provides a list of validation messages.

        ", "refs": { } }, "ConfigurationTemplateName": { "base": null, "refs": { "ConfigurationSettingsDescription$TemplateName": "

        If not null, the name of the configuration template for this configuration set.

        ", "ConfigurationTemplateNamesList$member": null, "CreateConfigurationTemplateMessage$TemplateName": "

        The name of the configuration template.

        Constraint: This name must be unique per application.

        Default: If a configuration template already exists with this name, AWS Elastic Beanstalk returns an InvalidParameterValue error.

        ", "CreateEnvironmentMessage$TemplateName": "

        The name of the configuration template to use in deployment. If no configuration template is found with this name, AWS Elastic Beanstalk returns an InvalidParameterValue error.

        Condition: You must specify either this parameter or a SolutionStackName, but not both. If you specify both, AWS Elastic Beanstalk returns an InvalidParameterCombination error. If you do not specify either, AWS Elastic Beanstalk returns a MissingRequiredParameter error.

        ", "DeleteConfigurationTemplateMessage$TemplateName": "

        The name of the configuration template to delete.

        ", "DescribeConfigurationOptionsMessage$TemplateName": "

        The name of the configuration template whose configuration options you want to describe.

        ", "DescribeConfigurationSettingsMessage$TemplateName": "

        The name of the configuration template to describe.

        Conditional: You must specify either this parameter or an EnvironmentName, but not both. If you specify both, AWS Elastic Beanstalk returns an InvalidParameterCombination error. If you do not specify either, AWS Elastic Beanstalk returns a MissingRequiredParameter error.

        ", "DescribeEventsMessage$TemplateName": "

        If specified, AWS Elastic Beanstalk restricts the returned descriptions to those that are associated with this environment configuration.

        ", "EnvironmentDescription$TemplateName": "

        The name of the configuration template used to originally launch this environment.

        ", "EventDescription$TemplateName": "

        The name of the configuration associated with this event.

        ", "SourceConfiguration$TemplateName": "

        The name of the configuration template.

        ", "UpdateConfigurationTemplateMessage$TemplateName": "

        The name of the configuration template to update.

        If no configuration template is found with this name, UpdateConfigurationTemplate returns an InvalidParameterValue error.

        ", "UpdateEnvironmentMessage$TemplateName": "

        If this parameter is specified, AWS Elastic Beanstalk deploys this configuration template to the environment. If no such configuration template is found, AWS Elastic Beanstalk returns an InvalidParameterValue error.

        ", "ValidateConfigurationSettingsMessage$TemplateName": "

        The name of the configuration template to validate the settings against.

        Condition: You cannot specify both this and an environment name.

        " } }, "ConfigurationTemplateNamesList": { "base": null, "refs": { "ApplicationDescription$ConfigurationTemplates": "

        The names of the configuration templates associated with this application.

        " } }, "CreateApplicationMessage": { "base": "

        Request to create an application.

        ", "refs": { } }, "CreateApplicationVersionMessage": { "base": "

        ", "refs": { } }, "CreateConfigurationTemplateMessage": { "base": "

        Request to create a configuration template.

        ", "refs": { } }, "CreateEnvironmentMessage": { "base": "

        ", "refs": { } }, "CreateStorageLocationResultMessage": { "base": "

        Results of a CreateStorageLocationResult call.

        ", "refs": { } }, "CreationDate": { "base": null, "refs": { "ApplicationDescription$DateCreated": "

        The date when the application was created.

        ", "ApplicationVersionDescription$DateCreated": "

        The creation date of the application version.

        ", "ConfigurationSettingsDescription$DateCreated": "

        The date (in UTC time) when this configuration set was created.

        ", "EnvironmentDescription$DateCreated": "

        The creation date for this environment.

        " } }, "DNSCname": { "base": null, "refs": { "CheckDNSAvailabilityResultMessage$FullyQualifiedCNAME": "

        The fully qualified CNAME to reserve when CreateEnvironment is called with the provided prefix.

        ", "EnvironmentDescription$CNAME": "

        The URL to the CNAME for this environment.

        " } }, "DNSCnamePrefix": { "base": null, "refs": { "CheckDNSAvailabilityMessage$CNAMEPrefix": "

        The prefix used when this CNAME is reserved.

        ", "CreateEnvironmentMessage$CNAMEPrefix": "

        If specified, the environment attempts to use this value as the prefix for the CNAME. If not specified, the CNAME is generated automatically by appending a random alphanumeric string to the environment name.

        " } }, "DeleteApplicationMessage": { "base": "

        Request to delete an application.

        ", "refs": { } }, "DeleteApplicationVersionMessage": { "base": "

        Request to delete an application version.

        ", "refs": { } }, "DeleteConfigurationTemplateMessage": { "base": "

        Request to delete a configuration template.

        ", "refs": { } }, "DeleteEnvironmentConfigurationMessage": { "base": "

        Request to delete a draft environment configuration.

        ", "refs": { } }, "DeleteSourceBundle": { "base": null, "refs": { "DeleteApplicationVersionMessage$DeleteSourceBundle": "

        Indicates whether to delete the associated source bundle from Amazon S3:

        • true: An attempt is made to delete the associated Amazon S3 source bundle specified at time of creation.

        • false: No action is taken on the Amazon S3 source bundle specified at time of creation.

        Valid Values: true | false

        " } }, "Deployment": { "base": "

        Information about an application version deployment.

        ", "refs": { "SingleInstanceHealth$Deployment": "

        Information about the most recent deployment to an instance.

        " } }, "DeploymentTimestamp": { "base": null, "refs": { "Deployment$DeploymentTime": "

        For in-progress deployments, the time that the deloyment started.

        For completed deployments, the time that the deployment ended.

        " } }, "DescribeApplicationVersionsMessage": { "base": "

        Result message containing a list of configuration descriptions.

        ", "refs": { } }, "DescribeApplicationsMessage": { "base": "

        Request to describe one or more applications.

        ", "refs": { } }, "DescribeConfigurationOptionsMessage": { "base": "

        Result message containig a list of application version descriptions.

        ", "refs": { } }, "DescribeConfigurationSettingsMessage": { "base": "

        Result message containing all of the configuration settings for a specified solution stack or configuration template.

        ", "refs": { } }, "DescribeEnvironmentHealthRequest": { "base": "

        See the example below to learn how to create a request body.

        ", "refs": { } }, "DescribeEnvironmentHealthResult": { "base": "

        See the example below for a sample response.

        ", "refs": { } }, "DescribeEnvironmentManagedActionHistoryRequest": { "base": "

        Request to list completed and failed managed actions.

        ", "refs": { } }, "DescribeEnvironmentManagedActionHistoryResult": { "base": "

        A result message containing a list of completed and failed managed actions.

        ", "refs": { } }, "DescribeEnvironmentManagedActionsRequest": { "base": "

        Request to list an environment's upcoming and in-progress managed actions.

        ", "refs": { } }, "DescribeEnvironmentManagedActionsResult": { "base": "

        The result message containing a list of managed actions.

        ", "refs": { } }, "DescribeEnvironmentResourcesMessage": { "base": "

        Request to describe the resources in an environment.

        ", "refs": { } }, "DescribeEnvironmentsMessage": { "base": "

        Request to describe one or more environments.

        ", "refs": { } }, "DescribeEventsMessage": { "base": "

        Request to retrieve a list of events for an environment.

        ", "refs": { } }, "DescribeInstancesHealthRequest": { "base": "

        See the example below to learn how to create a request body.

        ", "refs": { } }, "DescribeInstancesHealthResult": { "base": "

        See the example below for a sample response.

        ", "refs": { } }, "Description": { "base": null, "refs": { "ApplicationDescription$Description": "

        User-defined description of the application.

        ", "ApplicationVersionDescription$Description": "

        The description of this application version.

        ", "ConfigurationSettingsDescription$Description": "

        Describes this configuration set.

        ", "CreateApplicationMessage$Description": "

        Describes the application.

        ", "CreateApplicationVersionMessage$Description": "

        Describes this version.

        ", "CreateConfigurationTemplateMessage$Description": "

        Describes this configuration.

        ", "CreateEnvironmentMessage$Description": "

        Describes this environment.

        ", "EnvironmentDescription$Description": "

        Describes this environment.

        ", "UpdateApplicationMessage$Description": "

        A new description for the application.

        Default: If not specified, AWS Elastic Beanstalk does not update the description.

        ", "UpdateApplicationVersionMessage$Description": "

        A new description for this release.

        ", "UpdateConfigurationTemplateMessage$Description": "

        A new description for the configuration.

        ", "UpdateEnvironmentMessage$Description": "

        If this parameter is specified, AWS Elastic Beanstalk updates the description of this environment.

        " } }, "Ec2InstanceId": { "base": null, "refs": { "EnvironmentInfoDescription$Ec2InstanceId": "

        The Amazon EC2 Instance ID for this information.

        " } }, "ElasticBeanstalkServiceException": { "base": "

        A generic service exception has occurred.

        ", "refs": { } }, "EndpointURL": { "base": null, "refs": { "EnvironmentDescription$EndpointURL": "

        For load-balanced, autoscaling environments, the URL to the LoadBalancer. For single-instance environments, the IP address of the instance.

        " } }, "EnvironmentDescription": { "base": "

        Describes the properties of an environment.

        ", "refs": { "EnvironmentDescriptionsList$member": null } }, "EnvironmentDescriptionsList": { "base": null, "refs": { "EnvironmentDescriptionsMessage$Environments": "

        Returns an EnvironmentDescription list.

        " } }, "EnvironmentDescriptionsMessage": { "base": "

        Result message containing a list of environment descriptions.

        ", "refs": { } }, "EnvironmentHealth": { "base": null, "refs": { "DescribeEnvironmentHealthResult$Status": "

        Returns the health status value of the environment. For more information, see Health Colors and Statuses.

        ", "EnvironmentDescription$Health": "

        Describes the health status of the environment. AWS Elastic Beanstalk indicates the failure levels for a running environment:

        • Red: Indicates the environment is not responsive. Occurs when three or more consecutive failures occur for an environment.

        • Yellow: Indicates that something is wrong. Occurs when two consecutive failures occur for an environment.

        • Green: Indicates the environment is healthy and fully functional.

        • Grey: Default health for a new environment. The environment is not fully launched and health checks have not started or health checks are suspended during an UpdateEnvironment or RestartEnvironement request.

        Default: Grey

        " } }, "EnvironmentHealthAttribute": { "base": null, "refs": { "EnvironmentHealthAttributes$member": null } }, "EnvironmentHealthAttributes": { "base": null, "refs": { "DescribeEnvironmentHealthRequest$AttributeNames": "

        Specifies the response elements you wish to receive. If no attribute names are specified, AWS Elastic Beanstalk only returns the name of the environment.

        " } }, "EnvironmentHealthStatus": { "base": null, "refs": { "EnvironmentDescription$HealthStatus": "

        Returns the health status of the application running in your environment. For more information, see Health Colors and Statuses.

        " } }, "EnvironmentId": { "base": null, "refs": { "AbortEnvironmentUpdateMessage$EnvironmentId": "

        This specifies the ID of the environment with the in-progress update that you want to cancel.

        ", "CreateConfigurationTemplateMessage$EnvironmentId": "

        The ID of the environment used with this configuration template.

        ", "DescribeEnvironmentHealthRequest$EnvironmentId": "

        Specifies the AWS Elastic Beanstalk environment ID.

        Condition: You must specify either this or an EnvironmentName, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

        ", "DescribeEnvironmentManagedActionHistoryRequest$EnvironmentId": "

        The environment ID of the target environment.

        ", "DescribeEnvironmentResourcesMessage$EnvironmentId": "

        The ID of the environment to retrieve AWS resource usage data.

        Condition: You must specify either this or an EnvironmentName, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

        ", "DescribeEventsMessage$EnvironmentId": "

        If specified, AWS Elastic Beanstalk restricts the returned descriptions to those associated with this environment.

        ", "DescribeInstancesHealthRequest$EnvironmentId": "

        Specifies the AWS Elastic Beanstalk environment ID.

        ", "EnvironmentDescription$EnvironmentId": "

        The ID of this environment.

        ", "EnvironmentIdList$member": null, "RebuildEnvironmentMessage$EnvironmentId": "

        The ID of the environment to rebuild.

        Condition: You must specify either this or an EnvironmentName, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

        ", "RequestEnvironmentInfoMessage$EnvironmentId": "

        The ID of the environment of the requested data.

        If no such environment is found, RequestEnvironmentInfo returns an InvalidParameterValue error.

        Condition: You must specify either this or an EnvironmentName, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

        ", "RestartAppServerMessage$EnvironmentId": "

        The ID of the environment to restart the server for.

        Condition: You must specify either this or an EnvironmentName, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

        ", "RetrieveEnvironmentInfoMessage$EnvironmentId": "

        The ID of the data's environment.

        If no such environment is found, returns an InvalidParameterValue error.

        Condition: You must specify either this or an EnvironmentName, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

        ", "SwapEnvironmentCNAMEsMessage$SourceEnvironmentId": "

        The ID of the source environment.

        Condition: You must specify at least the SourceEnvironmentID or the SourceEnvironmentName. You may also specify both. If you specify the SourceEnvironmentId, you must specify the DestinationEnvironmentId.

        ", "SwapEnvironmentCNAMEsMessage$DestinationEnvironmentId": "

        The ID of the destination environment.

        Condition: You must specify at least the DestinationEnvironmentID or the DestinationEnvironmentName. You may also specify both. You must specify the SourceEnvironmentId with the DestinationEnvironmentId.

        ", "TerminateEnvironmentMessage$EnvironmentId": "

        The ID of the environment to terminate.

        Condition: You must specify either this or an EnvironmentName, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

        ", "UpdateEnvironmentMessage$EnvironmentId": "

        The ID of the environment to update.

        If no environment with this ID exists, AWS Elastic Beanstalk returns an InvalidParameterValue error.

        Condition: You must specify either this or an EnvironmentName, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

        " } }, "EnvironmentIdList": { "base": null, "refs": { "DescribeEnvironmentsMessage$EnvironmentIds": "

        If specified, AWS Elastic Beanstalk restricts the returned descriptions to include only those that have the specified IDs.

        " } }, "EnvironmentInfoDescription": { "base": "

        The information retrieved from the Amazon EC2 instances.

        ", "refs": { "EnvironmentInfoDescriptionList$member": null } }, "EnvironmentInfoDescriptionList": { "base": null, "refs": { "RetrieveEnvironmentInfoResultMessage$EnvironmentInfo": "

        The EnvironmentInfoDescription of the environment.

        " } }, "EnvironmentInfoType": { "base": null, "refs": { "EnvironmentInfoDescription$InfoType": "

        The type of information retrieved.

        ", "RequestEnvironmentInfoMessage$InfoType": "

        The type of information to request.

        ", "RetrieveEnvironmentInfoMessage$InfoType": "

        The type of information to retrieve.

        " } }, "EnvironmentLink": { "base": "

        A link to another environment, defined in the environment's manifest. Links provide connection information in system properties that can be used to connect to another environment in the same group. See Environment Manifest (env.yaml) for details.

        ", "refs": { "EnvironmentLinks$member": null } }, "EnvironmentLinks": { "base": null, "refs": { "EnvironmentDescription$EnvironmentLinks": "

        A list of links to other environments in the same group.

        " } }, "EnvironmentName": { "base": null, "refs": { "AbortEnvironmentUpdateMessage$EnvironmentName": "

        This specifies the name of the environment with the in-progress update that you want to cancel.

        ", "ConfigurationSettingsDescription$EnvironmentName": "

        If not null, the name of the environment for this configuration set.

        ", "CreateEnvironmentMessage$EnvironmentName": "

        A unique name for the deployment environment. Used in the application URL.

        Constraint: Must be from 4 to 40 characters in length. The name can contain only letters, numbers, and hyphens. It cannot start or end with a hyphen. This name must be unique in your account. If the specified name already exists, AWS Elastic Beanstalk returns an InvalidParameterValue error.

        Default: If the CNAME parameter is not specified, the environment name becomes part of the CNAME, and therefore part of the visible URL for your application.

        ", "DeleteEnvironmentConfigurationMessage$EnvironmentName": "

        The name of the environment to delete the draft configuration from.

        ", "DescribeConfigurationOptionsMessage$EnvironmentName": "

        The name of the environment whose configuration options you want to describe.

        ", "DescribeConfigurationSettingsMessage$EnvironmentName": "

        The name of the environment to describe.

        Condition: You must specify either this or a TemplateName, but not both. If you specify both, AWS Elastic Beanstalk returns an InvalidParameterCombination error. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

        ", "DescribeEnvironmentHealthRequest$EnvironmentName": "

        Specifies the AWS Elastic Beanstalk environment name.

        Condition: You must specify either this or an EnvironmentId, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

        ", "DescribeEnvironmentHealthResult$EnvironmentName": "

        The AWS Elastic Beanstalk environment name.

        ", "DescribeEnvironmentManagedActionHistoryRequest$EnvironmentName": "

        The name of the target environment.

        ", "DescribeEnvironmentResourcesMessage$EnvironmentName": "

        The name of the environment to retrieve AWS resource usage data.

        Condition: You must specify either this or an EnvironmentId, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

        ", "DescribeEventsMessage$EnvironmentName": "

        If specified, AWS Elastic Beanstalk restricts the returned descriptions to those associated with this environment.

        ", "DescribeInstancesHealthRequest$EnvironmentName": "

        Specifies the AWS Elastic Beanstalk environment name.

        ", "EnvironmentDescription$EnvironmentName": "

        The name of this environment.

        ", "EnvironmentNamesList$member": null, "EnvironmentResourceDescription$EnvironmentName": "

        The name of the environment.

        ", "EventDescription$EnvironmentName": "

        The name of the environment associated with this event.

        ", "RebuildEnvironmentMessage$EnvironmentName": "

        The name of the environment to rebuild.

        Condition: You must specify either this or an EnvironmentId, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

        ", "RequestEnvironmentInfoMessage$EnvironmentName": "

        The name of the environment of the requested data.

        If no such environment is found, RequestEnvironmentInfo returns an InvalidParameterValue error.

        Condition: You must specify either this or an EnvironmentId, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

        ", "RestartAppServerMessage$EnvironmentName": "

        The name of the environment to restart the server for.

        Condition: You must specify either this or an EnvironmentId, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

        ", "RetrieveEnvironmentInfoMessage$EnvironmentName": "

        The name of the data's environment.

        If no such environment is found, returns an InvalidParameterValue error.

        Condition: You must specify either this or an EnvironmentId, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

        ", "SwapEnvironmentCNAMEsMessage$SourceEnvironmentName": "

        The name of the source environment.

        Condition: You must specify at least the SourceEnvironmentID or the SourceEnvironmentName. You may also specify both. If you specify the SourceEnvironmentName, you must specify the DestinationEnvironmentName.

        ", "SwapEnvironmentCNAMEsMessage$DestinationEnvironmentName": "

        The name of the destination environment.

        Condition: You must specify at least the DestinationEnvironmentID or the DestinationEnvironmentName. You may also specify both. You must specify the SourceEnvironmentName with the DestinationEnvironmentName.

        ", "TerminateEnvironmentMessage$EnvironmentName": "

        The name of the environment to terminate.

        Condition: You must specify either this or an EnvironmentId, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

        ", "UpdateEnvironmentMessage$EnvironmentName": "

        The name of the environment to update. If no environment with this name exists, AWS Elastic Beanstalk returns an InvalidParameterValue error.

        Condition: You must specify either this or an EnvironmentId, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

        ", "ValidateConfigurationSettingsMessage$EnvironmentName": "

        The name of the environment to validate the settings against.

        Condition: You cannot specify both this and a configuration template name.

        " } }, "EnvironmentNamesList": { "base": null, "refs": { "DescribeEnvironmentsMessage$EnvironmentNames": "

        If specified, AWS Elastic Beanstalk restricts the returned descriptions to include only those that have the specified names.

        " } }, "EnvironmentResourceDescription": { "base": "

        Describes the AWS resources in use by this environment. This data is live.

        ", "refs": { "EnvironmentResourceDescriptionsMessage$EnvironmentResources": "

        A list of EnvironmentResourceDescription.

        " } }, "EnvironmentResourceDescriptionsMessage": { "base": "

        Result message containing a list of environment resource descriptions.

        ", "refs": { } }, "EnvironmentResourcesDescription": { "base": "

        Describes the AWS resources in use by this environment. This data is not live data.

        ", "refs": { "EnvironmentDescription$Resources": "

        The description of the AWS resources used by this environment.

        " } }, "EnvironmentStatus": { "base": null, "refs": { "EnvironmentDescription$Status": "

        The current operational status of the environment:

        • Launching: Environment is in the process of initial deployment.

        • Updating: Environment is in the process of updating its configuration settings or application version.

        • Ready: Environment is available to have an action performed on it, such as update or terminate.

        • Terminating: Environment is in the shut-down process.

        • Terminated: Environment is not running.

        " } }, "EnvironmentTier": { "base": "

        Describes the properties of an environment tier

        ", "refs": { "CreateEnvironmentMessage$Tier": "

        This specifies the tier to use for creating this environment.

        ", "EnvironmentDescription$Tier": "

        Describes the current tier of this environment.

        ", "UpdateEnvironmentMessage$Tier": "

        This specifies the tier to use to update the environment.

        Condition: At this time, if you change the tier version, name, or type, AWS Elastic Beanstalk returns InvalidParameterValue error.

        " } }, "EventDate": { "base": null, "refs": { "EventDescription$EventDate": "

        The date when the event occurred.

        " } }, "EventDescription": { "base": "

        Describes an event.

        ", "refs": { "EventDescriptionList$member": null } }, "EventDescriptionList": { "base": null, "refs": { "EventDescriptionsMessage$Events": "

        A list of EventDescription.

        " } }, "EventDescriptionsMessage": { "base": "

        Result message wrapping a list of event descriptions.

        ", "refs": { } }, "EventMessage": { "base": null, "refs": { "EventDescription$Message": "

        The event message.

        " } }, "EventSeverity": { "base": null, "refs": { "DescribeEventsMessage$Severity": "

        If specified, limits the events returned from this call to include only those with the specified severity or higher.

        ", "EventDescription$Severity": "

        The severity level of this event.

        " } }, "ExceptionMessage": { "base": null, "refs": { "ElasticBeanstalkServiceException$message": "

        The exception error message.

        " } }, "FailureType": { "base": null, "refs": { "ManagedActionHistoryItem$FailureType": "

        If the action failed, the type of failure.

        " } }, "FileTypeExtension": { "base": null, "refs": { "SolutionStackFileTypeList$member": null } }, "ForceTerminate": { "base": null, "refs": { "TerminateEnvironmentMessage$ForceTerminate": "

        Terminates the target environment even if another environment in the same group is dependent on it.

        " } }, "GroupName": { "base": null, "refs": { "ComposeEnvironmentsMessage$GroupName": "

        The name of the group to which the target environments belong. Specify a group name only if the environment name defined in each target environment's manifest ends with a + (plus) character. See Environment Manifest (env.yaml) for details.

        ", "CreateEnvironmentMessage$GroupName": "

        The name of the group to which the target environment belongs. Specify a group name only if the environment's name is specified in an environment manifest and not with the environment name parameter. See Environment Manifest (env.yaml) for details.

        ", "UpdateEnvironmentMessage$GroupName": "

        The name of the group to which the target environment belongs. Specify a group name only if the environment's name is specified in an environment manifest and not with the environment name or environment ID parameters. See Environment Manifest (env.yaml) for details.

        " } }, "IncludeDeleted": { "base": null, "refs": { "DescribeEnvironmentsMessage$IncludeDeleted": "

        Indicates whether to include deleted environments:

        true: Environments that have been deleted after IncludedDeletedBackTo are displayed.

        false: Do not include deleted environments.

        " } }, "IncludeDeletedBackTo": { "base": null, "refs": { "DescribeEnvironmentsMessage$IncludedDeletedBackTo": "

        If specified when IncludeDeleted is set to true, then environments deleted after this date are displayed.

        " } }, "Instance": { "base": "

        The description of an Amazon EC2 instance.

        ", "refs": { "InstanceList$member": null } }, "InstanceHealthList": { "base": null, "refs": { "DescribeInstancesHealthResult$InstanceHealthList": "

        Contains the response body with information about the health of the instance.

        " } }, "InstanceHealthSummary": { "base": "

        Represents summary information about the health of an instance. For more information, see Health Colors and Statuses.

        ", "refs": { "DescribeEnvironmentHealthResult$InstancesHealth": null } }, "InstanceId": { "base": null, "refs": { "SingleInstanceHealth$InstanceId": "

        The ID of the Amazon EC2 instance.

        " } }, "InstanceList": { "base": null, "refs": { "EnvironmentResourceDescription$Instances": "

        The Amazon EC2 instances used by this environment.

        " } }, "InstancesHealthAttribute": { "base": null, "refs": { "InstancesHealthAttributes$member": null } }, "InstancesHealthAttributes": { "base": null, "refs": { "DescribeInstancesHealthRequest$AttributeNames": "

        Specifies the response elements you wish to receive. If no attribute names are specified, AWS Elastic Beanstalk only returns a list of instances.

        " } }, "InsufficientPrivilegesException": { "base": "

        The specified account does not have sufficient privileges for one of more AWS services.

        ", "refs": { } }, "Integer": { "base": null, "refs": { "DescribeEnvironmentManagedActionHistoryRequest$MaxItems": "

        The maximum number of items to return for a single request.

        ", "Listener$Port": "

        The port that is used by the Listener.

        " } }, "InvalidRequestException": { "base": "

        One or more input parameters is not valid. Please correct the input parameters and try the operation again.

        ", "refs": { } }, "Latency": { "base": "

        Represents the average latency for the slowest X percent of requests over the last 10 seconds.

        ", "refs": { "ApplicationMetrics$Latency": "

        Represents the average latency for the slowest X percent of requests over the last 10 seconds. Latencies are in seconds with one milisecond resolution.

        " } }, "LaunchConfiguration": { "base": "

        Describes an Auto Scaling launch configuration.

        ", "refs": { "LaunchConfigurationList$member": null } }, "LaunchConfigurationList": { "base": null, "refs": { "EnvironmentResourceDescription$LaunchConfigurations": "

        The Auto Scaling launch configurations in use by this environment.

        " } }, "LaunchedAt": { "base": null, "refs": { "SingleInstanceHealth$LaunchedAt": "

        The time at which the EC2 instance was launched.

        " } }, "ListAvailableSolutionStacksResultMessage": { "base": "

        A list of available AWS Elastic Beanstalk solution stacks.

        ", "refs": { } }, "Listener": { "base": "

        Describes the properties of a Listener for the LoadBalancer.

        ", "refs": { "LoadBalancerListenersDescription$member": null } }, "LoadAverage": { "base": null, "refs": { "SystemStatus$LoadAverage": "

        Load average in the last 1-minute and 5-minute periods. For more information, see Operating System Metrics.

        " } }, "LoadAverageValue": { "base": null, "refs": { "LoadAverage$member": null } }, "LoadBalancer": { "base": "

        Describes a LoadBalancer.

        ", "refs": { "LoadBalancerList$member": null } }, "LoadBalancerDescription": { "base": "

        Describes the details of a LoadBalancer.

        ", "refs": { "EnvironmentResourcesDescription$LoadBalancer": "

        Describes the LoadBalancer.

        " } }, "LoadBalancerList": { "base": null, "refs": { "EnvironmentResourceDescription$LoadBalancers": "

        The LoadBalancers in use by this environment.

        " } }, "LoadBalancerListenersDescription": { "base": null, "refs": { "LoadBalancerDescription$Listeners": "

        A list of Listeners used by the LoadBalancer.

        " } }, "ManagedAction": { "base": "

        The record of an upcoming or in-progress managed action.

        ", "refs": { "ManagedActions$member": null } }, "ManagedActionHistoryItem": { "base": "

        The record of a completed or failed managed action.

        ", "refs": { "ManagedActionHistoryItems$member": null } }, "ManagedActionHistoryItems": { "base": null, "refs": { "DescribeEnvironmentManagedActionHistoryResult$ManagedActionHistoryItems": "

        A list of completed and failed managed actions.

        " } }, "ManagedActionInvalidStateException": { "base": "

        Cannot modify the managed action in its current state.

        ", "refs": { } }, "ManagedActions": { "base": null, "refs": { "DescribeEnvironmentManagedActionsResult$ManagedActions": "

        A list of upcoming and in-progress managed actions.

        " } }, "MaxRecords": { "base": null, "refs": { "DescribeApplicationVersionsMessage$MaxRecords": "

        Specify a maximum number of application versions to paginate in the request.

        ", "DescribeEventsMessage$MaxRecords": "

        Specifies the maximum number of events that can be returned, beginning with the most recent event.

        " } }, "Message": { "base": null, "refs": { "EnvironmentInfoDescription$Message": "

        The retrieved information.

        " } }, "NextToken": { "base": null, "refs": { "DescribeInstancesHealthRequest$NextToken": "

        Specifies the next token of the request.

        ", "DescribeInstancesHealthResult$NextToken": "

        The next token.

        " } }, "NullableDouble": { "base": null, "refs": { "CPUUtilization$User": "

        Percentage of time that the CPU has spent in the User state over the last 10 seconds.

        ", "CPUUtilization$Nice": "

        Percentage of time that the CPU has spent in the Nice state over the last 10 seconds.

        ", "CPUUtilization$System": "

        Percentage of time that the CPU has spent in the System state over the last 10 seconds.

        ", "CPUUtilization$Idle": "

        Percentage of time that the CPU has spent in the Idle state over the last 10 seconds.

        ", "CPUUtilization$IOWait": "

        Percentage of time that the CPU has spent in the I/O Wait state over the last 10 seconds.

        ", "CPUUtilization$IRQ": "

        Percentage of time that the CPU has spent in the IRQ state over the last 10 seconds.

        ", "CPUUtilization$SoftIRQ": "

        Percentage of time that the CPU has spent in the SoftIRQ state over the last 10 seconds.

        ", "Latency$P999": "

        The average latency for the slowest 0.1 percent of requests over the last 10 seconds.

        ", "Latency$P99": "

        The average latency for the slowest 1 percent of requests over the last 10 seconds.

        ", "Latency$P95": "

        The average latency for the slowest 5 percent of requests over the last 10 seconds.

        ", "Latency$P90": "

        The average latency for the slowest 10 percent of requests over the last 10 seconds.

        ", "Latency$P85": "

        The average latency for the slowest 15 percent of requests over the last 10 seconds.

        ", "Latency$P75": "

        The average latency for the slowest 25 percent of requests over the last 10 seconds.

        ", "Latency$P50": "

        The average latency for the slowest 50 percent of requests over the last 10 seconds.

        ", "Latency$P10": "

        The average latency for the slowest 90 percent of requests over the last 10 seconds.

        " } }, "NullableInteger": { "base": null, "refs": { "ApplicationMetrics$Duration": "

        The amount of time that the metrics cover (usually 10 seconds). For example, you might have 5 requests (request_count) within the most recent time slice of 10 seconds (duration).

        ", "InstanceHealthSummary$NoData": "

        Grey. AWS Elastic Beanstalk and the health agent are reporting no data on an instance.

        ", "InstanceHealthSummary$Unknown": "

        Grey. AWS Elastic Beanstalk and the health agent are reporting an insufficient amount of data on an instance.

        ", "InstanceHealthSummary$Pending": "

        Grey. An operation is in progress on an instance within the command timeout.

        ", "InstanceHealthSummary$Ok": "

        Green. An instance is passing health checks and the health agent is not reporting any problems.

        ", "InstanceHealthSummary$Info": "

        Green. An operation is in progress on an instance.

        ", "InstanceHealthSummary$Warning": "

        Yellow. The health agent is reporting a moderate number of request failures or other issues for an instance or environment.

        ", "InstanceHealthSummary$Degraded": "

        Red. The health agent is reporting a high number of request failures or other issues for an instance or environment.

        ", "InstanceHealthSummary$Severe": "

        Red. The health agent is reporting a very high number of request failures or other issues for an instance or environment.

        ", "StatusCodes$Status2xx": "

        The percentage of requests over the last 10 seconds that resulted in a 2xx (200, 201, etc.) status code.

        ", "StatusCodes$Status3xx": "

        The percentage of requests over the last 10 seconds that resulted in a 3xx (300, 301, etc.) status code.

        ", "StatusCodes$Status4xx": "

        The percentage of requests over the last 10 seconds that resulted in a 4xx (400, 401, etc.) status code.

        ", "StatusCodes$Status5xx": "

        The percentage of requests over the last 10 seconds that resulted in a 5xx (500, 501, etc.) status code.

        " } }, "NullableLong": { "base": null, "refs": { "Deployment$DeploymentId": "

        The ID of the deployment. This number increases by one each time that you deploy source code or change instance configuration settings.

        " } }, "OperationInProgressException": { "base": "

        Unable to perform the specified operation because another operation that effects an element in this activity is already in progress.

        ", "refs": { } }, "OptionNamespace": { "base": null, "refs": { "ConfigurationOptionDescription$Namespace": "

        A unique namespace identifying the option's associated AWS resource.

        ", "ConfigurationOptionSetting$Namespace": "

        A unique namespace identifying the option's associated AWS resource.

        ", "OptionSpecification$Namespace": "

        A unique namespace identifying the option's associated AWS resource.

        ", "ValidationMessage$Namespace": "

        " } }, "OptionRestrictionMaxLength": { "base": null, "refs": { "ConfigurationOptionDescription$MaxLength": "

        If specified, the configuration option must be a string value no longer than this value.

        " } }, "OptionRestrictionMaxValue": { "base": null, "refs": { "ConfigurationOptionDescription$MaxValue": "

        If specified, the configuration option must be a numeric value less than this value.

        " } }, "OptionRestrictionMinValue": { "base": null, "refs": { "ConfigurationOptionDescription$MinValue": "

        If specified, the configuration option must be a numeric value greater than this value.

        " } }, "OptionRestrictionRegex": { "base": "

        A regular expression representing a restriction on a string configuration option value.

        ", "refs": { "ConfigurationOptionDescription$Regex": "

        If specified, the configuration option must be a string value that satisfies this regular expression.

        " } }, "OptionSpecification": { "base": "

        A specification identifying an individual configuration option.

        ", "refs": { "OptionsSpecifierList$member": null } }, "OptionsSpecifierList": { "base": null, "refs": { "CreateEnvironmentMessage$OptionsToRemove": "

        A list of custom user-defined configuration options to remove from the configuration set for this new environment.

        ", "DescribeConfigurationOptionsMessage$Options": "

        If specified, restricts the descriptions to only the specified options.

        ", "UpdateConfigurationTemplateMessage$OptionsToRemove": "

        A list of configuration options to remove from the configuration set.

        Constraint: You can remove only UserDefined configuration options.

        ", "UpdateEnvironmentMessage$OptionsToRemove": "

        A list of custom user-defined configuration options to remove from the configuration set for this environment.

        " } }, "Queue": { "base": "

        Describes a queue.

        ", "refs": { "QueueList$member": null } }, "QueueList": { "base": null, "refs": { "EnvironmentResourceDescription$Queues": "

        The queues used by this environment.

        " } }, "RebuildEnvironmentMessage": { "base": "

        ", "refs": { } }, "RefreshedAt": { "base": null, "refs": { "DescribeEnvironmentHealthResult$RefreshedAt": "

        The date and time the information was last refreshed.

        ", "DescribeInstancesHealthResult$RefreshedAt": "

        The date and time the information was last refreshed.

        " } }, "RegexLabel": { "base": null, "refs": { "OptionRestrictionRegex$Label": "

        A unique name representing this regular expression.

        " } }, "RegexPattern": { "base": null, "refs": { "OptionRestrictionRegex$Pattern": "

        The regular expression pattern that a string configuration option value with this restriction must match.

        " } }, "RequestCount": { "base": null, "refs": { "ApplicationMetrics$RequestCount": "

        Average number of requests handled by the web server per second over the last 10 seconds.

        " } }, "RequestEnvironmentInfoMessage": { "base": "

        Request to retrieve logs from an environment and store them in your Elastic Beanstalk storage bucket.

        ", "refs": { } }, "RequestId": { "base": null, "refs": { "DescribeEventsMessage$RequestId": "

        If specified, AWS Elastic Beanstalk restricts the described events to include only those associated with this request ID.

        ", "EventDescription$RequestId": "

        The web service request ID for the activity of this event.

        " } }, "ResourceId": { "base": null, "refs": { "AutoScalingGroup$Name": "

        The name of the AutoScalingGroup .

        ", "Instance$Id": "

        The ID of the Amazon EC2 instance.

        ", "LaunchConfiguration$Name": "

        The name of the launch configuration.

        ", "LoadBalancer$Name": "

        The name of the LoadBalancer.

        ", "Trigger$Name": "

        The name of the trigger.

        " } }, "ResourceName": { "base": null, "refs": { "ConfigurationOptionSetting$ResourceName": "

        A unique resource name for a time-based scaling configuration option.

        ", "OptionSpecification$ResourceName": "

        A unique resource name for a time-based scaling configuration option.

        " } }, "RestartAppServerMessage": { "base": "

        ", "refs": { } }, "RetrieveEnvironmentInfoMessage": { "base": "

        Request to download logs retrieved with RequestEnvironmentInfo.

        ", "refs": { } }, "RetrieveEnvironmentInfoResultMessage": { "base": "

        Result message containing a description of the requested environment info.

        ", "refs": { } }, "S3Bucket": { "base": null, "refs": { "CreateStorageLocationResultMessage$S3Bucket": "

        The name of the Amazon S3 bucket created.

        ", "S3Location$S3Bucket": "

        The Amazon S3 bucket where the data is located.

        " } }, "S3Key": { "base": null, "refs": { "S3Location$S3Key": "

        The Amazon S3 key where the data is located.

        " } }, "S3Location": { "base": "

        A specification of a location in Amazon S3.

        ", "refs": { "ApplicationVersionDescription$SourceBundle": "

        The location where the source bundle is located for this version.

        ", "CreateApplicationVersionMessage$SourceBundle": "

        The Amazon S3 bucket and key that identify the location of the source bundle for this version.

        If data found at the Amazon S3 location exceeds the maximum allowed source bundle size, AWS Elastic Beanstalk returns an InvalidParameterValue error. The maximum size allowed is 512 MB.

        Default: If not specified, AWS Elastic Beanstalk uses a sample application. If only partially specified (for example, a bucket is provided but not the key) or if no data is found at the Amazon S3 location, AWS Elastic Beanstalk returns an InvalidParameterCombination error.

        " } }, "S3LocationNotInServiceRegionException": { "base": "

        The specified S3 bucket does not belong to the S3 region in which the service is running.

        ", "refs": { } }, "S3SubscriptionRequiredException": { "base": "

        The specified account does not have a subscription to Amazon S3.

        ", "refs": { } }, "SampleTimestamp": { "base": null, "refs": { "EnvironmentInfoDescription$SampleTimestamp": "

        The time stamp when this information was retrieved.

        " } }, "SingleInstanceHealth": { "base": "

        Represents health information from the specified instance that belongs to the AWS Elastic Beanstalk environment. Use the InstanceId property to specify the application instance for which you'd like to return data.

        ", "refs": { "InstanceHealthList$member": null } }, "SolutionStackDescription": { "base": "

        Describes the solution stack.

        ", "refs": { "AvailableSolutionStackDetailsList$member": null } }, "SolutionStackFileTypeList": { "base": null, "refs": { "SolutionStackDescription$PermittedFileTypes": "

        The permitted file types allowed for a solution stack.

        " } }, "SolutionStackName": { "base": null, "refs": { "AvailableSolutionStackNamesList$member": null, "ConfigurationOptionsDescription$SolutionStackName": "

        The name of the solution stack these configuration options belong to.

        ", "ConfigurationSettingsDescription$SolutionStackName": "

        The name of the solution stack this configuration set uses.

        ", "CreateConfigurationTemplateMessage$SolutionStackName": "

        The name of the solution stack used by this configuration. The solution stack specifies the operating system, architecture, and application server for a configuration template. It determines the set of configuration options as well as the possible and default values.

        Use ListAvailableSolutionStacks to obtain a list of available solution stacks.

        A solution stack name or a source configuration parameter must be specified, otherwise AWS Elastic Beanstalk returns an InvalidParameterValue error.

        If a solution stack name is not specified and the source configuration parameter is specified, AWS Elastic Beanstalk uses the same solution stack as the source configuration template.

        ", "CreateEnvironmentMessage$SolutionStackName": "

        This is an alternative to specifying a template name. If specified, AWS Elastic Beanstalk sets the configuration values to the default values associated with the specified solution stack.

        Condition: You must specify either this or a TemplateName, but not both. If you specify both, AWS Elastic Beanstalk returns an InvalidParameterCombination error. If you do not specify either, AWS Elastic Beanstalk returns a MissingRequiredParameter error.

        ", "DescribeConfigurationOptionsMessage$SolutionStackName": "

        The name of the solution stack whose configuration options you want to describe.

        ", "EnvironmentDescription$SolutionStackName": "

        The name of the SolutionStack deployed with this environment.

        ", "SolutionStackDescription$SolutionStackName": "

        The name of the solution stack.

        ", "UpdateEnvironmentMessage$SolutionStackName": "

        This specifies the platform version that the environment will run after the environment is updated.

        " } }, "SourceBuildInformation": { "base": null, "refs": { "ApplicationVersionDescription$SourceBuildInformation": null, "CreateApplicationVersionMessage$SourceBuildInformation": null } }, "SourceBundleDeletionException": { "base": "

        Unable to delete the Amazon S3 source bundle associated with the application version. The application version was deleted successfully.

        ", "refs": { } }, "SourceConfiguration": { "base": "

        A specification for an environment configuration

        ", "refs": { "CreateConfigurationTemplateMessage$SourceConfiguration": "

        If specified, AWS Elastic Beanstalk uses the configuration values from the specified configuration template to create a new configuration.

        Values specified in the OptionSettings parameter of this call overrides any values obtained from the SourceConfiguration.

        If no configuration template is found, returns an InvalidParameterValue error.

        Constraint: If both the solution stack name parameter and the source configuration parameters are specified, the solution stack of the source configuration template must match the specified solution stack name or else AWS Elastic Beanstalk returns an InvalidParameterCombination error.

        " } }, "SourceLocation": { "base": null, "refs": { "SourceBuildInformation$SourceLocation": null } }, "SourceRepository": { "base": null, "refs": { "SourceBuildInformation$SourceRepository": null } }, "SourceType": { "base": null, "refs": { "SourceBuildInformation$SourceType": null } }, "StatusCodes": { "base": "

        Represents the percentage of requests over the last 10 seconds that resulted in each type of status code response. For more information, see Status Code Definitions.

        ", "refs": { "ApplicationMetrics$StatusCodes": "

        Represents the percentage of requests over the last 10 seconds that resulted in each type of status code response.

        " } }, "String": { "base": null, "refs": { "ApplyEnvironmentManagedActionRequest$EnvironmentName": "

        The name of the target environment.

        ", "ApplyEnvironmentManagedActionRequest$EnvironmentId": "

        The environment ID of the target environment.

        ", "ApplyEnvironmentManagedActionRequest$ActionId": "

        The action ID of the scheduled managed action to execute.

        ", "ApplyEnvironmentManagedActionResult$ActionId": "

        The action ID of the managed action.

        ", "ApplyEnvironmentManagedActionResult$ActionDescription": "

        A description of the managed action.

        ", "ApplyEnvironmentManagedActionResult$Status": "

        The status of the managed action.

        ", "Deployment$VersionLabel": "

        The version label of the application version in the deployment.

        ", "Deployment$Status": "

        The status of the deployment:

        • In Progress : The deployment is in progress.

        • Deployed : The deployment succeeded.

        • Failed : The deployment failed.

        ", "DescribeEnvironmentHealthResult$HealthStatus": "

        Contains the response body with information about the health of the environment.

        ", "DescribeEnvironmentHealthResult$Color": "

        Returns the color indicator that tells you information about the health of the environment. For more information, see Health Colors and Statuses.

        ", "DescribeEnvironmentManagedActionHistoryRequest$NextToken": "

        The pagination token returned by a previous request.

        ", "DescribeEnvironmentManagedActionHistoryResult$NextToken": "

        A pagination token that you pass to DescribeEnvironmentManagedActionHistory to get the next page of results.

        ", "DescribeEnvironmentManagedActionsRequest$EnvironmentName": "

        The name of the target environment.

        ", "DescribeEnvironmentManagedActionsRequest$EnvironmentId": "

        The environment ID of the target environment.

        ", "EnvironmentLink$LinkName": "

        The name of the link.

        ", "EnvironmentLink$EnvironmentName": "

        The name of the linked environment (the dependency).

        ", "EnvironmentTier$Name": "

        The name of this environment tier.

        ", "EnvironmentTier$Type": "

        The type of this environment tier.

        ", "EnvironmentTier$Version": "

        The version of this environment tier.

        ", "Listener$Protocol": "

        The protocol that is used by the Listener.

        ", "LoadBalancerDescription$LoadBalancerName": "

        The name of the LoadBalancer.

        ", "LoadBalancerDescription$Domain": "

        The domain name of the LoadBalancer.

        ", "ManagedAction$ActionId": "

        A unique identifier for the managed action.

        ", "ManagedAction$ActionDescription": "

        A description of the managed action.

        ", "ManagedActionHistoryItem$ActionId": "

        A unique identifier for the managed action.

        ", "ManagedActionHistoryItem$ActionDescription": "

        A description of the managed action.

        ", "ManagedActionHistoryItem$FailureDescription": "

        If the action failed, a description of the failure.

        ", "Queue$Name": "

        The name of the queue.

        ", "Queue$URL": "

        The URL of the queue.

        ", "SingleInstanceHealth$HealthStatus": "

        Returns the health status of the specified instance. For more information, see Health Colors and Statuses.

        ", "SingleInstanceHealth$Color": "

        Represents the color indicator that gives you information about the health of the EC2 instance. For more information, see Health Colors and Statuses.

        ", "SingleInstanceHealth$AvailabilityZone": "

        The availability zone in which the instance runs.

        ", "SingleInstanceHealth$InstanceType": "

        The instance's type.

        " } }, "SwapEnvironmentCNAMEsMessage": { "base": "

        Swaps the CNAMEs of two environments.

        ", "refs": { } }, "SystemStatus": { "base": "

        Represents CPU utilization and load average information for applications running in the specified environment.

        ", "refs": { "SingleInstanceHealth$System": null } }, "Tag": { "base": "

        Describes a tag applied to a resource in an environment.

        ", "refs": { "Tags$member": null } }, "TagKey": { "base": null, "refs": { "Tag$Key": "

        The key of the tag.

        " } }, "TagValue": { "base": null, "refs": { "Tag$Value": "

        The value of the tag.

        " } }, "Tags": { "base": null, "refs": { "CreateEnvironmentMessage$Tags": "

        This specifies the tags applied to resources in the environment.

        " } }, "TerminateEnvForce": { "base": null, "refs": { "DeleteApplicationMessage$TerminateEnvByForce": "

        When set to true, running environments will be terminated before deleting the application.

        " } }, "TerminateEnvironmentMessage": { "base": "

        Request to terminate an environment.

        ", "refs": { } }, "TerminateEnvironmentResources": { "base": null, "refs": { "TerminateEnvironmentMessage$TerminateResources": "

        Indicates whether the associated AWS resources should shut down when the environment is terminated:

        • true: The specified environment as well as the associated AWS resources, such as Auto Scaling group and LoadBalancer, are terminated.

        • false: AWS Elastic Beanstalk resource management is removed from the environment, but the AWS resources continue to operate.

        For more information, see the AWS Elastic Beanstalk User Guide.

        Default: true

        Valid Values: true | false

        " } }, "TimeFilterEnd": { "base": null, "refs": { "DescribeEventsMessage$EndTime": "

        If specified, AWS Elastic Beanstalk restricts the returned descriptions to those that occur up to, but not including, the EndTime.

        " } }, "TimeFilterStart": { "base": null, "refs": { "DescribeEventsMessage$StartTime": "

        If specified, AWS Elastic Beanstalk restricts the returned descriptions to those that occur on or after this time.

        " } }, "Timestamp": { "base": null, "refs": { "ManagedAction$WindowStartTime": "

        The start time of the maintenance window in which the managed action will execute.

        ", "ManagedActionHistoryItem$ExecutedTime": "

        The date and time that the action started executing.

        ", "ManagedActionHistoryItem$FinishedTime": "

        The date and time that the action finished executing.

        " } }, "Token": { "base": null, "refs": { "ApplicationVersionDescriptionsMessage$NextToken": "

        For a paginated request, the token that you can pass in a subsequent request to get the next page.

        ", "DescribeApplicationVersionsMessage$NextToken": "

        Specify a next token to retrieve the next page in a paginated request.

        ", "DescribeEventsMessage$NextToken": "

        Pagination token. If specified, the events return the next batch of results.

        ", "EventDescriptionsMessage$NextToken": "

        If returned, this indicates that there are more results to obtain. Use this token in the next DescribeEvents call to get the next batch of events.

        " } }, "TooManyApplicationVersionsException": { "base": "

        The specified account has reached its limit of application versions.

        ", "refs": { } }, "TooManyApplicationsException": { "base": "

        The specified account has reached its limit of applications.

        ", "refs": { } }, "TooManyBucketsException": { "base": "

        The specified account has reached its limit of Amazon S3 buckets.

        ", "refs": { } }, "TooManyConfigurationTemplatesException": { "base": "

        The specified account has reached its limit of configuration templates.

        ", "refs": { } }, "TooManyEnvironmentsException": { "base": "

        The specified account has reached its limit of environments.

        ", "refs": { } }, "Trigger": { "base": "

        Describes a trigger.

        ", "refs": { "TriggerList$member": null } }, "TriggerList": { "base": null, "refs": { "EnvironmentResourceDescription$Triggers": "

        The AutoScaling triggers in use by this environment.

        " } }, "UpdateApplicationMessage": { "base": "

        Request to update an application.

        ", "refs": { } }, "UpdateApplicationVersionMessage": { "base": "

        ", "refs": { } }, "UpdateConfigurationTemplateMessage": { "base": "

        The result message containing the options for the specified solution stack.

        ", "refs": { } }, "UpdateDate": { "base": null, "refs": { "ApplicationDescription$DateUpdated": "

        The date when the application was last modified.

        ", "ApplicationVersionDescription$DateUpdated": "

        The last modified date of the application version.

        ", "ConfigurationSettingsDescription$DateUpdated": "

        The date (in UTC time) when this configuration set was last modified.

        ", "EnvironmentDescription$DateUpdated": "

        The last modified date for this environment.

        " } }, "UpdateEnvironmentMessage": { "base": "

        Request to update an environment.

        ", "refs": { } }, "UserDefinedOption": { "base": null, "refs": { "ConfigurationOptionDescription$UserDefined": "

        An indication of whether the user defined this configuration option:

        • true : This configuration option was defined by the user. It is a valid choice for specifying if this as an Option to Remove when updating configuration settings.

        • false : This configuration was not defined by the user.

        Constraint: You can remove only UserDefined options from a configuration.

        Valid Values: true | false

        " } }, "ValidateConfigurationSettingsMessage": { "base": "

        A list of validation messages for a specified configuration template.

        ", "refs": { } }, "ValidationMessage": { "base": "

        An error or warning for a desired configuration option value.

        ", "refs": { "ValidationMessagesList$member": null } }, "ValidationMessageString": { "base": null, "refs": { "ValidationMessage$Message": "

        A message describing the error or warning.

        " } }, "ValidationMessagesList": { "base": null, "refs": { "ConfigurationSettingsValidationMessages$Messages": "

        A list of ValidationMessage.

        " } }, "ValidationSeverity": { "base": null, "refs": { "ValidationMessage$Severity": "

        An indication of the severity of this message:

        • error: This message indicates that this is not a valid setting for an option.

        • warning: This message is providing information you should take into account.

        " } }, "VersionLabel": { "base": null, "refs": { "ApplicationVersionDescription$VersionLabel": "

        A label uniquely identifying the version for the associated application.

        ", "CreateApplicationVersionMessage$VersionLabel": "

        A label identifying this version.

        Constraint: Must be unique per application. If an application version already exists with this label for the specified application, AWS Elastic Beanstalk returns an InvalidParameterValue error.

        ", "CreateEnvironmentMessage$VersionLabel": "

        The name of the application version to deploy.

        If the specified application has no associated application versions, AWS Elastic Beanstalk UpdateEnvironment returns an InvalidParameterValue error.

        Default: If not specified, AWS Elastic Beanstalk attempts to launch the sample application in the container.

        ", "DeleteApplicationVersionMessage$VersionLabel": "

        The label of the version to delete.

        ", "DescribeEnvironmentsMessage$VersionLabel": "

        If specified, AWS Elastic Beanstalk restricts the returned descriptions to include only those that are associated with this application version.

        ", "DescribeEventsMessage$VersionLabel": "

        If specified, AWS Elastic Beanstalk restricts the returned descriptions to those associated with this application version.

        ", "EnvironmentDescription$VersionLabel": "

        The application version deployed in this environment.

        ", "EventDescription$VersionLabel": "

        The release label for the application version associated with this event.

        ", "UpdateApplicationVersionMessage$VersionLabel": "

        The name of the version to update.

        If no application version is found with this label, UpdateApplication returns an InvalidParameterValue error.

        ", "UpdateEnvironmentMessage$VersionLabel": "

        If this parameter is specified, AWS Elastic Beanstalk deploys the named application version to the environment. If no such application version is found, returns an InvalidParameterValue error.

        ", "VersionLabels$member": null, "VersionLabelsList$member": null } }, "VersionLabels": { "base": null, "refs": { "ComposeEnvironmentsMessage$VersionLabels": "

        A list of version labels, specifying one or more application source bundles that belong to the target application. Each source bundle must include an environment manifest that specifies the name of the environment and the name of the solution stack to use, and optionally can specify environment links to create.

        " } }, "VersionLabelsList": { "base": null, "refs": { "ApplicationDescription$Versions": "

        The names of the versions for this application.

        ", "DescribeApplicationVersionsMessage$VersionLabels": "

        If specified, restricts the returned descriptions to only include ones that have the specified version labels.

        " } } } } aws-sdk-go-1.4.22/models/apis/elasticbeanstalk/2010-12-01/examples-1.json000066400000000000000000001111111300374646400251760ustar00rootroot00000000000000{ "version": "1.0", "examples": { "AbortEnvironmentUpdate": [ { "input": { "EnvironmentName": "my-env" }, "comments": { "input": { }, "output": { } }, "description": "The following code aborts a running application version deployment for an environment named my-env:", "id": "to-abort-a-deployment-1456267848227", "title": "To abort a deployment" } ], "CheckDNSAvailability": [ { "input": { "CNAMEPrefix": "my-cname" }, "output": { "Available": true, "FullyQualifiedCNAME": "my-cname.us-west-2.elasticbeanstalk.com" }, "comments": { "input": { }, "output": { } }, "description": "The following operation checks the availability of the subdomain my-cname:", "id": "to-check-the-availability-of-a-cname-1456268589537", "title": "To check the availability of a CNAME" } ], "CreateApplication": [ { "input": { "ApplicationName": "my-app", "Description": "my application" }, "output": { "Application": { "ApplicationName": "my-app", "ConfigurationTemplates": [ ], "DateCreated": "2015-02-12T18:32:21.181Z", "DateUpdated": "2015-02-12T18:32:21.181Z", "Description": "my application" } }, "comments": { "input": { }, "output": { } }, "description": "The following operation creates a new application named my-app:", "id": "to-create-a-new-application-1456268895683", "title": "To create a new application" } ], "CreateApplicationVersion": [ { "input": { "ApplicationName": "my-app", "AutoCreateApplication": true, "Description": "my-app-v1", "Process": true, "SourceBundle": { "S3Bucket": "my-bucket", "S3Key": "sample.war" }, "VersionLabel": "v1" }, "output": { "ApplicationVersion": { "ApplicationName": "my-app", "DateCreated": "2015-02-03T23:01:25.412Z", "DateUpdated": "2015-02-03T23:01:25.412Z", "Description": "my-app-v1", "SourceBundle": { "S3Bucket": "my-bucket", "S3Key": "sample.war" }, "VersionLabel": "v1" } }, "comments": { "input": { }, "output": { } }, "description": "The following operation creates a new version (v1) of an application named my-app:", "id": "to-create-a-new-application-1456268895683", "title": "To create a new application" } ], "CreateConfigurationTemplate": [ { "input": { "ApplicationName": "my-app", "EnvironmentId": "e-rpqsewtp2j", "TemplateName": "my-app-v1" }, "output": { "ApplicationName": "my-app", "DateCreated": "2015-08-12T18:40:39Z", "DateUpdated": "2015-08-12T18:40:39Z", "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8", "TemplateName": "my-app-v1" }, "comments": { "input": { }, "output": { } }, "description": "The following operation creates a configuration template named my-app-v1 from the settings applied to an environment with the id e-rpqsewtp2j:", "id": "to-create-a-configuration-template-1456269283586", "title": "To create a configuration template" } ], "CreateEnvironment": [ { "input": { "ApplicationName": "my-app", "CNAMEPrefix": "my-app", "EnvironmentName": "my-env", "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8", "VersionLabel": "v1" }, "output": { "ApplicationName": "my-app", "CNAME": "my-app.elasticbeanstalk.com", "DateCreated": "2015-02-03T23:04:54.479Z", "DateUpdated": "2015-02-03T23:04:54.479Z", "EnvironmentId": "e-izqpassy4h", "EnvironmentName": "my-env", "Health": "Grey", "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8", "Status": "Launching", "Tier": { "Name": "WebServer", "Type": "Standard", "Version": " " }, "VersionLabel": "v1" }, "comments": { "input": { }, "output": { } }, "description": "The following operation creates a new environment for version v1 of a java application named my-app:", "id": "to-create-a-new-environment-for-an-application-1456269380396", "title": "To create a new environment for an application" } ], "CreateStorageLocation": [ { "output": { "S3Bucket": "elasticbeanstalk-us-west-2-0123456789012" }, "comments": { "input": { }, "output": { } }, "description": "The following operation creates a new environment for version v1 of a java application named my-app:", "id": "to-create-a-new-environment-for-an-application-1456269380396", "title": "To create a new environment for an application" } ], "DeleteApplication": [ { "input": { "ApplicationName": "my-app" }, "comments": { "input": { }, "output": { } }, "description": "The following operation deletes an application named my-app:", "id": "to-delete-an-application-1456269699366", "title": "To delete an application" } ], "DeleteApplicationVersion": [ { "input": { "ApplicationName": "my-app", "DeleteSourceBundle": true, "VersionLabel": "22a0-stage-150819_182129" }, "comments": { "input": { }, "output": { } }, "description": "The following operation deletes an application version named 22a0-stage-150819_182129 for an application named my-app:", "id": "to-delete-an-application-version-1456269792956", "title": "To delete an application version" } ], "DeleteConfigurationTemplate": [ { "input": { "ApplicationName": "my-app", "TemplateName": "my-template" }, "comments": { "input": { }, "output": { } }, "description": "The following operation deletes a configuration template named my-template for an application named my-app:", "id": "to-delete-a-configuration-template-1456269836701", "title": "To delete a configuration template" } ], "DeleteEnvironmentConfiguration": [ { "input": { "ApplicationName": "my-app", "EnvironmentName": "my-env" }, "comments": { "input": { }, "output": { } }, "description": "The following operation deletes a draft configuration for an environment named my-env:", "id": "to-delete-a-draft-configuration-1456269886654", "title": "To delete a draft configuration" } ], "DescribeApplicationVersions": [ { "input": { "ApplicationName": "my-app", "VersionLabels": [ "v2" ] }, "output": { "ApplicationVersions": [ { "ApplicationName": "my-app", "DateCreated": "2015-07-23T01:32:26.079Z", "DateUpdated": "2015-07-23T01:32:26.079Z", "Description": "update cover page", "SourceBundle": { "S3Bucket": "elasticbeanstalk-us-west-2-015321684451", "S3Key": "my-app/5026-stage-150723_224258.war" }, "VersionLabel": "v2" }, { "ApplicationName": "my-app", "DateCreated": "2015-07-23T22:26:10.816Z", "DateUpdated": "2015-07-23T22:26:10.816Z", "Description": "initial version", "SourceBundle": { "S3Bucket": "elasticbeanstalk-us-west-2-015321684451", "S3Key": "my-app/5026-stage-150723_222618.war" }, "VersionLabel": "v1" } ] }, "comments": { "input": { }, "output": { } }, "description": "The following operation retrieves information about an application version labeled v2:", "id": "to-view-information-about-an-application-version-1456269947428", "title": "To view information about an application version" } ], "DescribeApplications": [ { "input": { }, "output": { "Applications": [ { "ApplicationName": "ruby", "ConfigurationTemplates": [ ], "DateCreated": "2015-08-13T21:05:44.376Z", "DateUpdated": "2015-08-13T21:05:44.376Z", "Versions": [ "Sample Application" ] }, { "ApplicationName": "pythonsample", "ConfigurationTemplates": [ ], "DateCreated": "2015-08-13T19:05:43.637Z", "DateUpdated": "2015-08-13T19:05:43.637Z", "Description": "Application created from the EB CLI using \"eb init\"", "Versions": [ "Sample Application" ] }, { "ApplicationName": "nodejs-example", "ConfigurationTemplates": [ ], "DateCreated": "2015-08-06T17:50:02.486Z", "DateUpdated": "2015-08-06T17:50:02.486Z", "Versions": [ "add elasticache", "First Release" ] } ] }, "comments": { "input": { }, "output": { } }, "description": "The following operation retrieves information about applications in the current region:", "id": "to-view-a-list-of-applications-1456270027373", "title": "To view a list of applications" } ], "DescribeConfigurationOptions": [ { "input": { "ApplicationName": "my-app", "EnvironmentName": "my-env" }, "output": { "Options": [ { "ChangeSeverity": "NoInterruption", "DefaultValue": "30", "MaxValue": 300, "MinValue": 5, "Name": "Interval", "Namespace": "aws:elb:healthcheck", "UserDefined": false, "ValueType": "Scalar" }, { "ChangeSeverity": "NoInterruption", "DefaultValue": "2000000", "MinValue": 0, "Name": "LowerThreshold", "Namespace": "aws:autoscaling:trigger", "UserDefined": false, "ValueType": "Scalar" } ] }, "comments": { "input": { }, "output": { } }, "description": "The following operation retrieves descriptions of all available configuration options for an environment named my-env:", "id": "to-view-configuration-options-for-an-environment-1456276763917", "title": "To view configuration options for an environment" } ], "DescribeConfigurationSettings": [ { "input": { "ApplicationName": "my-app", "EnvironmentName": "my-env" }, "output": { "ConfigurationSettings": [ { "ApplicationName": "my-app", "DateCreated": "2015-08-13T19:16:25Z", "DateUpdated": "2015-08-13T23:30:07Z", "DeploymentStatus": "deployed", "Description": "Environment created from the EB CLI using \"eb create\"", "EnvironmentName": "my-env", "OptionSettings": [ { "Namespace": "aws:autoscaling:asg", "OptionName": "Availability Zones", "ResourceName": "AWSEBAutoScalingGroup", "Value": "Any" }, { "Namespace": "aws:autoscaling:asg", "OptionName": "Cooldown", "ResourceName": "AWSEBAutoScalingGroup", "Value": "360" }, { "Namespace": "aws:elb:policies", "OptionName": "ConnectionDrainingTimeout", "ResourceName": "AWSEBLoadBalancer", "Value": "20" }, { "Namespace": "aws:elb:policies", "OptionName": "ConnectionSettingIdleTimeout", "ResourceName": "AWSEBLoadBalancer", "Value": "60" } ], "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8" } ] }, "comments": { "input": { }, "output": { "abbreviated": "Output is abbreviated" } }, "description": "The following operation retrieves configuration settings for an environment named my-env:", "id": "to-view-configurations-settings-for-an-environment-1456276924537", "title": "To view configurations settings for an environment" } ], "DescribeEnvironmentHealth": [ { "input": { "AttributeNames": [ "All" ], "EnvironmentName": "my-env" }, "output": { "ApplicationMetrics": { "Duration": 10, "Latency": { "P10": 0.001, "P50": 0.001, "P75": 0.002, "P85": 0.003, "P90": 0.003, "P95": 0.004, "P99": 0.004, "P999": 0.004 }, "RequestCount": 45, "StatusCodes": { "Status2xx": 45, "Status3xx": 0, "Status4xx": 0, "Status5xx": 0 } }, "Causes": [ ], "Color": "Green", "EnvironmentName": "my-env", "HealthStatus": "Ok", "InstancesHealth": { "Degraded": 0, "Info": 0, "NoData": 0, "Ok": 1, "Pending": 0, "Severe": 0, "Unknown": 0, "Warning": 0 }, "RefreshedAt": "2015-08-20T21:09:18Z" }, "comments": { "input": { }, "output": { } }, "description": "The following operation retrieves overall health information for an environment named my-env:", "id": "to-view-environment-health-1456277109510", "title": "To view environment health" } ], "DescribeEnvironmentResources": [ { "input": { "EnvironmentName": "my-env" }, "output": { "EnvironmentResources": { "AutoScalingGroups": [ { "Name": "awseb-e-qu3fyyjyjs-stack-AWSEBAutoScalingGroup-QSB2ZO88SXZT" } ], "EnvironmentName": "my-env", "Instances": [ { "Id": "i-0c91c786" } ], "LaunchConfigurations": [ { "Name": "awseb-e-qu3fyyjyjs-stack-AWSEBAutoScalingLaunchConfiguration-1UUVQIBC96TQ2" } ], "LoadBalancers": [ { "Name": "awseb-e-q-AWSEBLoa-1EEPZ0K98BIF0" } ], "Queues": [ ], "Triggers": [ ] } }, "comments": { "input": { }, "output": { } }, "description": "The following operation retrieves information about resources in an environment named my-env:", "id": "to-view-information-about-the-aws-resources-in-your-environment-1456277206232", "title": "To view information about the AWS resources in your environment" } ], "DescribeEnvironments": [ { "input": { "EnvironmentNames": [ "my-env" ] }, "output": { "Environments": [ { "AbortableOperationInProgress": false, "ApplicationName": "my-app", "CNAME": "my-env.elasticbeanstalk.com", "DateCreated": "2015-08-07T20:48:49.599Z", "DateUpdated": "2015-08-12T18:16:55.019Z", "EndpointURL": "awseb-e-w-AWSEBLoa-1483140XB0Q4L-109QXY8121.us-west-2.elb.amazonaws.com", "EnvironmentId": "e-rpqsewtp2j", "EnvironmentName": "my-env", "Health": "Green", "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8", "Status": "Ready", "Tier": { "Name": "WebServer", "Type": "Standard", "Version": " " }, "VersionLabel": "7f58-stage-150812_025409" } ] }, "comments": { "input": { }, "output": { } }, "description": "The following operation retrieves information about an environment named my-env:", "id": "to-view-information-about-an-environment-1456277288662", "title": "To view information about an environment" } ], "DescribeEvents": [ { "input": { "EnvironmentName": "my-env" }, "output": { "Events": [ { "ApplicationName": "my-app", "EnvironmentName": "my-env", "EventDate": "2015-08-20T07:06:53.535Z", "Message": "Environment health has transitioned from Info to Ok.", "Severity": "INFO" }, { "ApplicationName": "my-app", "EnvironmentName": "my-env", "EventDate": "2015-08-20T07:06:02.049Z", "Message": "Environment update completed successfully.", "RequestId": "b7f3960b-4709-11e5-ba1e-07e16200da41", "Severity": "INFO" }, { "ApplicationName": "my-app", "EnvironmentName": "my-env", "EventDate": "2015-08-13T19:16:27.561Z", "Message": "Using elasticbeanstalk-us-west-2-012445113685 as Amazon S3 storage bucket for environment data.", "RequestId": "ca8dfbf6-41ef-11e5-988b-651aa638f46b", "Severity": "INFO" }, { "ApplicationName": "my-app", "EnvironmentName": "my-env", "EventDate": "2015-08-13T19:16:26.581Z", "Message": "createEnvironment is starting.", "RequestId": "cdfba8f6-41ef-11e5-988b-65638f41aa6b", "Severity": "INFO" } ] }, "comments": { "input": { }, "output": { } }, "description": "The following operation retrieves events for an environment named my-env:", "id": "to-view-events-for-an-environment-1456277367589", "title": "To view events for an environment" } ], "DescribeInstancesHealth": [ { "input": { "AttributeNames": [ "All" ], "EnvironmentName": "my-env" }, "output": { "InstanceHealthList": [ { "ApplicationMetrics": { "Duration": 10, "Latency": { "P10": 0, "P50": 0.001, "P75": 0.002, "P85": 0.003, "P90": 0.004, "P95": 0.005, "P99": 0.006, "P999": 0.006 }, "RequestCount": 48, "StatusCodes": { "Status2xx": 47, "Status3xx": 0, "Status4xx": 1, "Status5xx": 0 } }, "Causes": [ ], "Color": "Green", "HealthStatus": "Ok", "InstanceId": "i-08691cc7", "LaunchedAt": "2015-08-13T19:17:09Z", "System": { "CPUUtilization": { "IOWait": 0.2, "IRQ": 0, "Idle": 97.8, "Nice": 0.1, "SoftIRQ": 0.1, "System": 0.3, "User": 1.5 }, "LoadAverage": [ 0, 0.02, 0.05 ] } } ], "RefreshedAt": "2015-08-20T21:09:08Z" }, "comments": { "input": { }, "output": { } }, "description": "The following operation retrieves health information for instances in an environment named my-env:", "id": "to-view-environment-health-1456277424757", "title": "To view environment health" } ], "ListAvailableSolutionStacks": [ { "output": { "SolutionStackDetails": [ { "PermittedFileTypes": [ "zip" ], "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.0 running Node.js" } ], "SolutionStacks": [ "64bit Amazon Linux 2015.03 v2.0.0 running Node.js", "64bit Amazon Linux 2015.03 v2.0.0 running PHP 5.6", "64bit Amazon Linux 2015.03 v2.0.0 running PHP 5.5", "64bit Amazon Linux 2015.03 v2.0.0 running PHP 5.4", "64bit Amazon Linux 2015.03 v2.0.0 running Python 3.4", "64bit Amazon Linux 2015.03 v2.0.0 running Python 2.7", "64bit Amazon Linux 2015.03 v2.0.0 running Python", "64bit Amazon Linux 2015.03 v2.0.0 running Ruby 2.2 (Puma)", "64bit Amazon Linux 2015.03 v2.0.0 running Ruby 2.2 (Passenger Standalone)", "64bit Amazon Linux 2015.03 v2.0.0 running Ruby 2.1 (Puma)", "64bit Amazon Linux 2015.03 v2.0.0 running Ruby 2.1 (Passenger Standalone)", "64bit Amazon Linux 2015.03 v2.0.0 running Ruby 2.0 (Puma)", "64bit Amazon Linux 2015.03 v2.0.0 running Ruby 2.0 (Passenger Standalone)", "64bit Amazon Linux 2015.03 v2.0.0 running Ruby 1.9.3", "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8", "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 7 Java 7", "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 7 Java 6", "64bit Windows Server Core 2012 R2 running IIS 8.5", "64bit Windows Server 2012 R2 running IIS 8.5", "64bit Windows Server 2012 running IIS 8", "64bit Windows Server 2008 R2 running IIS 7.5", "64bit Amazon Linux 2015.03 v2.0.0 running Docker 1.6.2", "64bit Amazon Linux 2015.03 v2.0.0 running Multi-container Docker 1.6.2 (Generic)", "64bit Debian jessie v2.0.0 running GlassFish 4.1 Java 8 (Preconfigured - Docker)", "64bit Debian jessie v2.0.0 running GlassFish 4.0 Java 7 (Preconfigured - Docker)", "64bit Debian jessie v2.0.0 running Go 1.4 (Preconfigured - Docker)", "64bit Debian jessie v2.0.0 running Go 1.3 (Preconfigured - Docker)", "64bit Debian jessie v2.0.0 running Python 3.4 (Preconfigured - Docker)" ] }, "comments": { "input": { }, "output": { } }, "description": "The following operation lists solution stacks for all currently available platform configurations and any that you have used in the past:", "id": "to-view-solution-stacks-1456277504811", "title": "To view solution stacks" } ], "RebuildEnvironment": [ { "input": { "EnvironmentName": "my-env" }, "comments": { "input": { }, "output": { } }, "description": "The following operation terminates and recreates the resources in an environment named my-env:", "id": "to-rebuild-an-environment-1456277600918", "title": "To rebuild an environment" } ], "RequestEnvironmentInfo": [ { "input": { "EnvironmentName": "my-env", "InfoType": "tail" }, "comments": { "input": { }, "output": { } }, "description": "The following operation requests logs from an environment named my-env:", "id": "to-request-tailed-logs-1456277657045", "title": "To request tailed logs" } ], "RestartAppServer": [ { "input": { "EnvironmentName": "my-env" }, "comments": { "input": { }, "output": { } }, "description": "The following operation restarts application servers on all instances in an environment named my-env:", "id": "to-restart-application-servers-1456277739302", "title": "To restart application servers" } ], "RetrieveEnvironmentInfo": [ { "input": { "EnvironmentName": "my-env", "InfoType": "tail" }, "output": { "EnvironmentInfo": [ { "Ec2InstanceId": "i-09c1c867", "InfoType": "tail", "Message": "https://elasticbeanstalk-us-west-2-0123456789012.s3.amazonaws.com/resources/environments/logs/tail/e-fyqyju3yjs/i-09c1c867/TailLogs-1440109397703.out?AWSAccessKeyId=AKGPT4J56IAJ2EUBL5CQ&Expires=1440195891&Signature=n%2BEalOV6A2HIOx4Rcfb7LT16bBM%3D", "SampleTimestamp": "2015-08-20T22:23:17.703Z" } ] }, "comments": { "input": { }, "output": { } }, "description": "The following operation retrieves a link to logs from an environment named my-env:", "id": "to-retrieve-tailed-logs-1456277792734", "title": "To retrieve tailed logs" } ], "SwapEnvironmentCNAMEs": [ { "input": { "DestinationEnvironmentName": "my-env-green", "SourceEnvironmentName": "my-env-blue" }, "comments": { "input": { }, "output": { } }, "description": "The following operation swaps the assigned subdomains of two environments:", "id": "to-swap-environment-cnames-1456277839438", "title": "To swap environment CNAMES" } ], "TerminateEnvironment": [ { "input": { "EnvironmentName": "my-env" }, "output": { "AbortableOperationInProgress": false, "ApplicationName": "my-app", "CNAME": "my-env.elasticbeanstalk.com", "DateCreated": "2015-08-12T18:52:53.622Z", "DateUpdated": "2015-08-12T19:05:54.744Z", "EndpointURL": "awseb-e-f-AWSEBLoa-1I9XUMP4-8492WNUP202574.us-west-2.elb.amazonaws.com", "EnvironmentId": "e-fh2eravpns", "EnvironmentName": "my-env", "Health": "Grey", "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8", "Status": "Terminating", "Tier": { "Name": "WebServer", "Type": "Standard", "Version": " " } }, "comments": { "input": { }, "output": { } }, "description": "The following operation terminates an Elastic Beanstalk environment named my-env:", "id": "to-terminate-an-environment-1456277888556", "title": "To terminate an environment" } ], "UpdateApplication": [ { "input": { "ApplicationName": "my-app", "Description": "my Elastic Beanstalk application" }, "output": { "Application": { "ApplicationName": "my-app", "ConfigurationTemplates": [ ], "DateCreated": "2015-08-13T19:15:50.449Z", "DateUpdated": "2015-08-20T22:34:56.195Z", "Description": "my Elastic Beanstalk application", "Versions": [ "2fba-stage-150819_234450", "bf07-stage-150820_214945", "93f8", "fd7c-stage-150820_000431", "22a0-stage-150819_185942" ] } }, "comments": { "input": { }, "output": { } }, "description": "The following operation updates the description of an application named my-app:", "id": "to-change-an-applications-description-1456277957075", "title": "To change an application's description" } ], "UpdateApplicationVersion": [ { "input": { "ApplicationName": "my-app", "Description": "new description", "VersionLabel": "22a0-stage-150819_185942" }, "output": { "ApplicationVersion": { "ApplicationName": "my-app", "DateCreated": "2015-08-19T18:59:17.646Z", "DateUpdated": "2015-08-20T22:53:28.871Z", "Description": "new description", "SourceBundle": { "S3Bucket": "elasticbeanstalk-us-west-2-0123456789012", "S3Key": "my-app/22a0-stage-150819_185942.war" }, "VersionLabel": "22a0-stage-150819_185942" } }, "comments": { "input": { }, "output": { } }, "description": "The following operation updates the description of an application version named 22a0-stage-150819_185942:", "id": "to-change-an-application-versions-description-1456278019237", "title": "To change an application version's description" } ], "UpdateConfigurationTemplate": [ { "input": { "ApplicationName": "my-app", "OptionsToRemove": [ { "Namespace": "aws:elasticbeanstalk:healthreporting:system", "OptionName": "ConfigDocument" } ], "TemplateName": "my-template" }, "output": { "ApplicationName": "my-app", "DateCreated": "2015-08-20T22:39:31Z", "DateUpdated": "2015-08-20T22:43:11Z", "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8", "TemplateName": "my-template" }, "comments": { "input": { }, "output": { } }, "description": "The following operation removes the configured CloudWatch custom health metrics configuration ConfigDocument from a saved configuration template named my-template:", "id": "to-update-a-configuration-template-1456278075300", "title": "To update a configuration template" } ], "UpdateEnvironment": [ { "input": { "EnvironmentName": "my-env", "VersionLabel": "v2" }, "output": { "ApplicationName": "my-app", "CNAME": "my-env.elasticbeanstalk.com", "DateCreated": "2015-02-03T23:04:54.453Z", "DateUpdated": "2015-02-03T23:12:29.119Z", "EndpointURL": "awseb-e-i-AWSEBLoa-1RDLX6TC9VUAO-0123456789.us-west-2.elb.amazonaws.com", "EnvironmentId": "e-szqipays4h", "EnvironmentName": "my-env", "Health": "Grey", "SolutionStackName": "64bit Amazon Linux running Tomcat 7", "Status": "Updating", "Tier": { "Name": "WebServer", "Type": "Standard", "Version": " " }, "VersionLabel": "v2" }, "comments": { "input": { }, "output": { } }, "description": "The following operation updates an environment named \"my-env\" to version \"v2\" of the application to which it belongs:", "id": "to-update-an-environment-to-a-new-version-1456278210718", "title": "To update an environment to a new version" }, { "input": { "EnvironmentName": "my-env", "OptionSettings": [ { "Namespace": "aws:elb:healthcheck", "OptionName": "Interval", "Value": "15" }, { "Namespace": "aws:elb:healthcheck", "OptionName": "Timeout", "Value": "8" }, { "Namespace": "aws:elb:healthcheck", "OptionName": "HealthyThreshold", "Value": "2" }, { "Namespace": "aws:elb:healthcheck", "OptionName": "UnhealthyThreshold", "Value": "3" } ] }, "output": { "AbortableOperationInProgress": true, "ApplicationName": "my-app", "CNAME": "my-env.elasticbeanstalk.com", "DateCreated": "2015-08-07T20:48:49.599Z", "DateUpdated": "2015-08-12T18:15:23.804Z", "EndpointURL": "awseb-e-w-AWSEBLoa-14XB83101Q4L-104QXY80921.sa-east-1.elb.amazonaws.com", "EnvironmentId": "e-wtp2rpqsej", "EnvironmentName": "my-env", "Health": "Grey", "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8", "Status": "Updating", "Tier": { "Name": "WebServer", "Type": "Standard", "Version": " " }, "VersionLabel": "7f58-stage-150812_025409" }, "comments": { "input": { }, "output": { } }, "description": "The following operation configures several options in the aws:elb:loadbalancer namespace:", "id": "to-configure-option-settings-1456278286349", "title": "To configure option settings" } ], "ValidateConfigurationSettings": [ { "input": { "ApplicationName": "my-app", "EnvironmentName": "my-env", "OptionSettings": [ { "Namespace": "aws:elasticbeanstalk:healthreporting:system", "OptionName": "ConfigDocument", "Value": "{\"CloudWatchMetrics\": {\"Environment\": {\"ApplicationLatencyP99.9\": null,\"InstancesSevere\": 60,\"ApplicationLatencyP90\": 60,\"ApplicationLatencyP99\": null,\"ApplicationLatencyP95\": 60,\"InstancesUnknown\": 60,\"ApplicationLatencyP85\": 60,\"InstancesInfo\": null,\"ApplicationRequests2xx\": null,\"InstancesDegraded\": null,\"InstancesWarning\": 60,\"ApplicationLatencyP50\": 60,\"ApplicationRequestsTotal\": null,\"InstancesNoData\": null,\"InstancesPending\": 60,\"ApplicationLatencyP10\": null,\"ApplicationRequests5xx\": null,\"ApplicationLatencyP75\": null,\"InstancesOk\": 60,\"ApplicationRequests3xx\": null,\"ApplicationRequests4xx\": null},\"Instance\": {\"ApplicationLatencyP99.9\": null,\"ApplicationLatencyP90\": 60,\"ApplicationLatencyP99\": null,\"ApplicationLatencyP95\": null,\"ApplicationLatencyP85\": null,\"CPUUser\": 60,\"ApplicationRequests2xx\": null,\"CPUIdle\": null,\"ApplicationLatencyP50\": null,\"ApplicationRequestsTotal\": 60,\"RootFilesystemUtil\": null,\"LoadAverage1min\": null,\"CPUIrq\": null,\"CPUNice\": 60,\"CPUIowait\": 60,\"ApplicationLatencyP10\": null,\"LoadAverage5min\": null,\"ApplicationRequests5xx\": null,\"ApplicationLatencyP75\": 60,\"CPUSystem\": 60,\"ApplicationRequests3xx\": 60,\"ApplicationRequests4xx\": null,\"InstanceHealth\": null,\"CPUSoftirq\": 60}},\"Version\": 1}" } ] }, "output": { "Messages": [ ] }, "comments": { "input": { }, "output": { } }, "description": "The following operation validates a CloudWatch custom metrics config document:", "id": "to-validate-configuration-settings-1456278393654", "title": "To validate configuration settings" } ] } } aws-sdk-go-1.4.22/models/apis/elasticbeanstalk/2010-12-01/paginators-1.json000066400000000000000000000010751300374646400255360ustar00rootroot00000000000000{ "pagination": { "DescribeApplicationVersions": { "result_key": "ApplicationVersions" }, "DescribeApplications": { "result_key": "Applications" }, "DescribeConfigurationOptions": { "result_key": "Options" }, "DescribeEnvironments": { "result_key": "Environments" }, "DescribeEvents": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxRecords", "result_key": "Events" }, "ListAvailableSolutionStacks": { "result_key": "SolutionStacks" } } } aws-sdk-go-1.4.22/models/apis/elasticfilesystem/000077500000000000000000000000001300374646400215335ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/elasticfilesystem/2015-02-01/000077500000000000000000000000001300374646400225575ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/elasticfilesystem/2015-02-01/api-2.json000066400000000000000000000452321300374646400243700ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-02-01", "endpointPrefix":"elasticfilesystem", "protocol":"rest-json", "serviceAbbreviation":"EFS", "serviceFullName":"Amazon Elastic File System", "signatureVersion":"v4" }, "operations":{ "CreateFileSystem":{ "name":"CreateFileSystem", "http":{ "method":"POST", "requestUri":"/2015-02-01/file-systems", "responseCode":201 }, "input":{"shape":"CreateFileSystemRequest"}, "output":{"shape":"FileSystemDescription"}, "errors":[ {"shape":"BadRequest"}, {"shape":"InternalServerError"}, {"shape":"FileSystemAlreadyExists"}, {"shape":"FileSystemLimitExceeded"} ] }, "CreateMountTarget":{ "name":"CreateMountTarget", "http":{ "method":"POST", "requestUri":"/2015-02-01/mount-targets", "responseCode":200 }, "input":{"shape":"CreateMountTargetRequest"}, "output":{"shape":"MountTargetDescription"}, "errors":[ {"shape":"BadRequest"}, {"shape":"InternalServerError"}, {"shape":"FileSystemNotFound"}, {"shape":"IncorrectFileSystemLifeCycleState"}, {"shape":"MountTargetConflict"}, {"shape":"SubnetNotFound"}, {"shape":"NoFreeAddressesInSubnet"}, {"shape":"IpAddressInUse"}, {"shape":"NetworkInterfaceLimitExceeded"}, {"shape":"SecurityGroupLimitExceeded"}, {"shape":"SecurityGroupNotFound"}, {"shape":"UnsupportedAvailabilityZone"} ] }, "CreateTags":{ "name":"CreateTags", "http":{ "method":"POST", "requestUri":"/2015-02-01/create-tags/{FileSystemId}", "responseCode":204 }, "input":{"shape":"CreateTagsRequest"}, "errors":[ {"shape":"BadRequest"}, {"shape":"InternalServerError"}, {"shape":"FileSystemNotFound"} ] }, "DeleteFileSystem":{ "name":"DeleteFileSystem", "http":{ "method":"DELETE", "requestUri":"/2015-02-01/file-systems/{FileSystemId}", "responseCode":204 }, "input":{"shape":"DeleteFileSystemRequest"}, "errors":[ {"shape":"BadRequest"}, {"shape":"InternalServerError"}, {"shape":"FileSystemNotFound"}, {"shape":"FileSystemInUse"} ] }, "DeleteMountTarget":{ "name":"DeleteMountTarget", "http":{ "method":"DELETE", "requestUri":"/2015-02-01/mount-targets/{MountTargetId}", "responseCode":204 }, "input":{"shape":"DeleteMountTargetRequest"}, "errors":[ {"shape":"BadRequest"}, {"shape":"InternalServerError"}, {"shape":"DependencyTimeout"}, {"shape":"MountTargetNotFound"} ] }, "DeleteTags":{ "name":"DeleteTags", "http":{ "method":"POST", "requestUri":"/2015-02-01/delete-tags/{FileSystemId}", "responseCode":204 }, "input":{"shape":"DeleteTagsRequest"}, "errors":[ {"shape":"BadRequest"}, {"shape":"InternalServerError"}, {"shape":"FileSystemNotFound"} ] }, "DescribeFileSystems":{ "name":"DescribeFileSystems", "http":{ "method":"GET", "requestUri":"/2015-02-01/file-systems", "responseCode":200 }, "input":{"shape":"DescribeFileSystemsRequest"}, "output":{"shape":"DescribeFileSystemsResponse"}, "errors":[ {"shape":"BadRequest"}, {"shape":"InternalServerError"}, {"shape":"FileSystemNotFound"} ] }, "DescribeMountTargetSecurityGroups":{ "name":"DescribeMountTargetSecurityGroups", "http":{ "method":"GET", "requestUri":"/2015-02-01/mount-targets/{MountTargetId}/security-groups", "responseCode":200 }, "input":{"shape":"DescribeMountTargetSecurityGroupsRequest"}, "output":{"shape":"DescribeMountTargetSecurityGroupsResponse"}, "errors":[ {"shape":"BadRequest"}, {"shape":"InternalServerError"}, {"shape":"MountTargetNotFound"}, {"shape":"IncorrectMountTargetState"} ] }, "DescribeMountTargets":{ "name":"DescribeMountTargets", "http":{ "method":"GET", "requestUri":"/2015-02-01/mount-targets", "responseCode":200 }, "input":{"shape":"DescribeMountTargetsRequest"}, "output":{"shape":"DescribeMountTargetsResponse"}, "errors":[ {"shape":"BadRequest"}, {"shape":"InternalServerError"}, {"shape":"FileSystemNotFound"}, {"shape":"MountTargetNotFound"} ] }, "DescribeTags":{ "name":"DescribeTags", "http":{ "method":"GET", "requestUri":"/2015-02-01/tags/{FileSystemId}/", "responseCode":200 }, "input":{"shape":"DescribeTagsRequest"}, "output":{"shape":"DescribeTagsResponse"}, "errors":[ {"shape":"BadRequest"}, {"shape":"InternalServerError"}, {"shape":"FileSystemNotFound"} ] }, "ModifyMountTargetSecurityGroups":{ "name":"ModifyMountTargetSecurityGroups", "http":{ "method":"PUT", "requestUri":"/2015-02-01/mount-targets/{MountTargetId}/security-groups", "responseCode":204 }, "input":{"shape":"ModifyMountTargetSecurityGroupsRequest"}, "errors":[ {"shape":"BadRequest"}, {"shape":"InternalServerError"}, {"shape":"MountTargetNotFound"}, {"shape":"IncorrectMountTargetState"}, {"shape":"SecurityGroupLimitExceeded"}, {"shape":"SecurityGroupNotFound"} ] } }, "shapes":{ "AwsAccountId":{"type":"string"}, "BadRequest":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "CreateFileSystemRequest":{ "type":"structure", "required":["CreationToken"], "members":{ "CreationToken":{"shape":"CreationToken"}, "PerformanceMode":{"shape":"PerformanceMode"} } }, "CreateMountTargetRequest":{ "type":"structure", "required":[ "FileSystemId", "SubnetId" ], "members":{ "FileSystemId":{"shape":"FileSystemId"}, "SubnetId":{"shape":"SubnetId"}, "IpAddress":{"shape":"IpAddress"}, "SecurityGroups":{"shape":"SecurityGroups"} } }, "CreateTagsRequest":{ "type":"structure", "required":[ "FileSystemId", "Tags" ], "members":{ "FileSystemId":{ "shape":"FileSystemId", "location":"uri", "locationName":"FileSystemId" }, "Tags":{"shape":"Tags"} } }, "CreationToken":{ "type":"string", "max":64, "min":1 }, "DeleteFileSystemRequest":{ "type":"structure", "required":["FileSystemId"], "members":{ "FileSystemId":{ "shape":"FileSystemId", "location":"uri", "locationName":"FileSystemId" } } }, "DeleteMountTargetRequest":{ "type":"structure", "required":["MountTargetId"], "members":{ "MountTargetId":{ "shape":"MountTargetId", "location":"uri", "locationName":"MountTargetId" } } }, "DeleteTagsRequest":{ "type":"structure", "required":[ "FileSystemId", "TagKeys" ], "members":{ "FileSystemId":{ "shape":"FileSystemId", "location":"uri", "locationName":"FileSystemId" }, "TagKeys":{"shape":"TagKeys"} } }, "DependencyTimeout":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":504}, "exception":true }, "DescribeFileSystemsRequest":{ "type":"structure", "members":{ "MaxItems":{ "shape":"MaxItems", "location":"querystring", "locationName":"MaxItems" }, "Marker":{ "shape":"Marker", "location":"querystring", "locationName":"Marker" }, "CreationToken":{ "shape":"CreationToken", "location":"querystring", "locationName":"CreationToken" }, "FileSystemId":{ "shape":"FileSystemId", "location":"querystring", "locationName":"FileSystemId" } } }, "DescribeFileSystemsResponse":{ "type":"structure", "members":{ "Marker":{"shape":"Marker"}, "FileSystems":{"shape":"FileSystemDescriptions"}, "NextMarker":{"shape":"Marker"} } }, "DescribeMountTargetSecurityGroupsRequest":{ "type":"structure", "required":["MountTargetId"], "members":{ "MountTargetId":{ "shape":"MountTargetId", "location":"uri", "locationName":"MountTargetId" } } }, "DescribeMountTargetSecurityGroupsResponse":{ "type":"structure", "required":["SecurityGroups"], "members":{ "SecurityGroups":{"shape":"SecurityGroups"} } }, "DescribeMountTargetsRequest":{ "type":"structure", "members":{ "MaxItems":{ "shape":"MaxItems", "location":"querystring", "locationName":"MaxItems" }, "Marker":{ "shape":"Marker", "location":"querystring", "locationName":"Marker" }, "FileSystemId":{ "shape":"FileSystemId", "location":"querystring", "locationName":"FileSystemId" }, "MountTargetId":{ "shape":"MountTargetId", "location":"querystring", "locationName":"MountTargetId" } } }, "DescribeMountTargetsResponse":{ "type":"structure", "members":{ "Marker":{"shape":"Marker"}, "MountTargets":{"shape":"MountTargetDescriptions"}, "NextMarker":{"shape":"Marker"} } }, "DescribeTagsRequest":{ "type":"structure", "required":["FileSystemId"], "members":{ "MaxItems":{ "shape":"MaxItems", "location":"querystring", "locationName":"MaxItems" }, "Marker":{ "shape":"Marker", "location":"querystring", "locationName":"Marker" }, "FileSystemId":{ "shape":"FileSystemId", "location":"uri", "locationName":"FileSystemId" } } }, "DescribeTagsResponse":{ "type":"structure", "required":["Tags"], "members":{ "Marker":{"shape":"Marker"}, "Tags":{"shape":"Tags"}, "NextMarker":{"shape":"Marker"} } }, "ErrorCode":{ "type":"string", "min":1 }, "ErrorMessage":{"type":"string"}, "FileSystemAlreadyExists":{ "type":"structure", "required":[ "ErrorCode", "FileSystemId" ], "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"}, "FileSystemId":{"shape":"FileSystemId"} }, "error":{"httpStatusCode":409}, "exception":true }, "FileSystemDescription":{ "type":"structure", "required":[ "OwnerId", "CreationToken", "FileSystemId", "CreationTime", "LifeCycleState", "NumberOfMountTargets", "SizeInBytes", "PerformanceMode" ], "members":{ "OwnerId":{"shape":"AwsAccountId"}, "CreationToken":{"shape":"CreationToken"}, "FileSystemId":{"shape":"FileSystemId"}, "CreationTime":{"shape":"Timestamp"}, "LifeCycleState":{"shape":"LifeCycleState"}, "Name":{"shape":"TagValue"}, "NumberOfMountTargets":{"shape":"MountTargetCount"}, "SizeInBytes":{"shape":"FileSystemSize"}, "PerformanceMode":{"shape":"PerformanceMode"} } }, "FileSystemDescriptions":{ "type":"list", "member":{"shape":"FileSystemDescription"} }, "FileSystemId":{"type":"string"}, "FileSystemInUse":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":409}, "exception":true }, "FileSystemLimitExceeded":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":403}, "exception":true }, "FileSystemNotFound":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":404}, "exception":true }, "FileSystemSize":{ "type":"structure", "required":["Value"], "members":{ "Value":{"shape":"FileSystemSizeValue"}, "Timestamp":{"shape":"Timestamp"} } }, "FileSystemSizeValue":{ "type":"long", "min":0 }, "IncorrectFileSystemLifeCycleState":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":409}, "exception":true }, "IncorrectMountTargetState":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":409}, "exception":true }, "InternalServerError":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":500}, "exception":true }, "IpAddress":{"type":"string"}, "IpAddressInUse":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":409}, "exception":true }, "LifeCycleState":{ "type":"string", "enum":[ "creating", "available", "deleting", "deleted" ] }, "Marker":{"type":"string"}, "MaxItems":{ "type":"integer", "min":1 }, "ModifyMountTargetSecurityGroupsRequest":{ "type":"structure", "required":["MountTargetId"], "members":{ "MountTargetId":{ "shape":"MountTargetId", "location":"uri", "locationName":"MountTargetId" }, "SecurityGroups":{"shape":"SecurityGroups"} } }, "MountTargetConflict":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":409}, "exception":true }, "MountTargetCount":{ "type":"integer", "min":0 }, "MountTargetDescription":{ "type":"structure", "required":[ "MountTargetId", "FileSystemId", "SubnetId", "LifeCycleState" ], "members":{ "OwnerId":{"shape":"AwsAccountId"}, "MountTargetId":{"shape":"MountTargetId"}, "FileSystemId":{"shape":"FileSystemId"}, "SubnetId":{"shape":"SubnetId"}, "LifeCycleState":{"shape":"LifeCycleState"}, "IpAddress":{"shape":"IpAddress"}, "NetworkInterfaceId":{"shape":"NetworkInterfaceId"} } }, "MountTargetDescriptions":{ "type":"list", "member":{"shape":"MountTargetDescription"} }, "MountTargetId":{"type":"string"}, "MountTargetNotFound":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":404}, "exception":true }, "NetworkInterfaceId":{"type":"string"}, "NetworkInterfaceLimitExceeded":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":409}, "exception":true }, "NoFreeAddressesInSubnet":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":409}, "exception":true }, "PerformanceMode":{ "type":"string", "enum":[ "generalPurpose", "maxIO" ] }, "SecurityGroup":{"type":"string"}, "SecurityGroupLimitExceeded":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "SecurityGroupNotFound":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "SecurityGroups":{ "type":"list", "member":{"shape":"SecurityGroup"}, "max":5 }, "SubnetId":{"type":"string"}, "SubnetNotFound":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "Tag":{ "type":"structure", "required":[ "Key", "Value" ], "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{ "type":"string", "max":128, "min":1 }, "TagKeys":{ "type":"list", "member":{"shape":"TagKey"} }, "TagValue":{ "type":"string", "max":256 }, "Tags":{ "type":"list", "member":{"shape":"Tag"} }, "Timestamp":{"type":"timestamp"}, "UnsupportedAvailabilityZone":{ "type":"structure", "required":["ErrorCode"], "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true } } } aws-sdk-go-1.4.22/models/apis/elasticfilesystem/2015-02-01/docs-2.json000066400000000000000000001051261300374646400245460ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon Elastic File System

        Amazon Elastic File System (Amazon EFS) provides simple, scalable file storage for use with Amazon EC2 instances in the AWS Cloud. With Amazon EFS, storage capacity is elastic, growing and shrinking automatically as you add and remove files, so your applications have the storage they need, when they need it. For more information, see the User Guide.

        ", "operations": { "CreateFileSystem": "

        Creates a new, empty file system. The operation requires a creation token in the request that Amazon EFS uses to ensure idempotent creation (calling the operation with same creation token has no effect). If a file system does not currently exist that is owned by the caller's AWS account with the specified creation token, this operation does the following:

        • Creates a new, empty file system. The file system will have an Amazon EFS assigned ID, and an initial lifecycle state creating.

        • Returns with the description of the created file system.

        Otherwise, this operation returns a FileSystemAlreadyExists error with the ID of the existing file system.

        For basic use cases, you can use a randomly generated UUID for the creation token.

        The idempotent operation allows you to retry a CreateFileSystem call without risk of creating an extra file system. This can happen when an initial call fails in a way that leaves it uncertain whether or not a file system was actually created. An example might be that a transport level timeout occurred or your connection was reset. As long as you use the same creation token, if the initial call had succeeded in creating a file system, the client can learn of its existence from the FileSystemAlreadyExists error.

        The CreateFileSystem call returns while the file system's lifecycle state is still creating. You can check the file system creation status by calling the DescribeFileSystems operation, which among other things returns the file system state.

        This operation also takes an optional PerformanceMode parameter that you choose for your file system. We recommend generalPurpose performance mode for most file systems. File systems using the maxIO performance mode can scale to higher levels of aggregate throughput and operations per second with a tradeoff of slightly higher latencies for most file operations. The performance mode can't be changed after the file system has been created. For more information, see Amazon EFS: Performance Modes.

        After the file system is fully created, Amazon EFS sets its lifecycle state to available, at which point you can create one or more mount targets for the file system in your VPC. For more information, see CreateMountTarget. You mount your Amazon EFS file system on an EC2 instances in your VPC via the mount target. For more information, see Amazon EFS: How it Works.

        This operation requires permissions for the elasticfilesystem:CreateFileSystem action.

        ", "CreateMountTarget": "

        Creates a mount target for a file system. You can then mount the file system on EC2 instances via the mount target.

        You can create one mount target in each Availability Zone in your VPC. All EC2 instances in a VPC within a given Availability Zone share a single mount target for a given file system. If you have multiple subnets in an Availability Zone, you create a mount target in one of the subnets. EC2 instances do not need to be in the same subnet as the mount target in order to access their file system. For more information, see Amazon EFS: How it Works.

        In the request, you also specify a file system ID for which you are creating the mount target and the file system's lifecycle state must be available. For more information, see DescribeFileSystems.

        In the request, you also provide a subnet ID, which determines the following:

        • VPC in which Amazon EFS creates the mount target

        • Availability Zone in which Amazon EFS creates the mount target

        • IP address range from which Amazon EFS selects the IP address of the mount target (if you don't specify an IP address in the request)

        After creating the mount target, Amazon EFS returns a response that includes, a MountTargetId and an IpAddress. You use this IP address when mounting the file system in an EC2 instance. You can also use the mount target's DNS name when mounting the file system. The EC2 instance on which you mount the file system via the mount target can resolve the mount target's DNS name to its IP address. For more information, see How it Works: Implementation Overview.

        Note that you can create mount targets for a file system in only one VPC, and there can be only one mount target per Availability Zone. That is, if the file system already has one or more mount targets created for it, the subnet specified in the request to add another mount target must meet the following requirements:

        • Must belong to the same VPC as the subnets of the existing mount targets

        • Must not be in the same Availability Zone as any of the subnets of the existing mount targets

        If the request satisfies the requirements, Amazon EFS does the following:

        • Creates a new mount target in the specified subnet.

        • Also creates a new network interface in the subnet as follows:

          • If the request provides an IpAddress, Amazon EFS assigns that IP address to the network interface. Otherwise, Amazon EFS assigns a free address in the subnet (in the same way that the Amazon EC2 CreateNetworkInterface call does when a request does not specify a primary private IP address).

          • If the request provides SecurityGroups, this network interface is associated with those security groups. Otherwise, it belongs to the default security group for the subnet's VPC.

          • Assigns the description Mount target fsmt-id for file system fs-id where fsmt-id is the mount target ID, and fs-id is the FileSystemId.

          • Sets the requesterManaged property of the network interface to true, and the requesterId value to EFS.

          Each Amazon EFS mount target has one corresponding requestor-managed EC2 network interface. After the network interface is created, Amazon EFS sets the NetworkInterfaceId field in the mount target's description to the network interface ID, and the IpAddress field to its address. If network interface creation fails, the entire CreateMountTarget operation fails.

        The CreateMountTarget call returns only after creating the network interface, but while the mount target state is still creating. You can check the mount target creation status by calling the DescribeFileSystems operation, which among other things returns the mount target state.

        We recommend you create a mount target in each of the Availability Zones. There are cost considerations for using a file system in an Availability Zone through a mount target created in another Availability Zone. For more information, see Amazon EFS. In addition, by always using a mount target local to the instance's Availability Zone, you eliminate a partial failure scenario. If the Availability Zone in which your mount target is created goes down, then you won't be able to access your file system through that mount target.

        This operation requires permissions for the following action on the file system:

        • elasticfilesystem:CreateMountTarget

        This operation also requires permissions for the following Amazon EC2 actions:

        • ec2:DescribeSubnets

        • ec2:DescribeNetworkInterfaces

        • ec2:CreateNetworkInterface

        ", "CreateTags": "

        Creates or overwrites tags associated with a file system. Each tag is a key-value pair. If a tag key specified in the request already exists on the file system, this operation overwrites its value with the value provided in the request. If you add the Name tag to your file system, Amazon EFS returns it in the response to the DescribeFileSystems operation.

        This operation requires permission for the elasticfilesystem:CreateTags action.

        ", "DeleteFileSystem": "

        Deletes a file system, permanently severing access to its contents. Upon return, the file system no longer exists and you can't access any contents of the deleted file system.

        You can't delete a file system that is in use. That is, if the file system has any mount targets, you must first delete them. For more information, see DescribeMountTargets and DeleteMountTarget.

        The DeleteFileSystem call returns while the file system state is still deleting. You can check the file system deletion status by calling the DescribeFileSystems operation, which returns a list of file systems in your account. If you pass file system ID or creation token for the deleted file system, the DescribeFileSystems returns a 404 FileSystemNotFound error.

        This operation requires permissions for the elasticfilesystem:DeleteFileSystem action.

        ", "DeleteMountTarget": "

        Deletes the specified mount target.

        This operation forcibly breaks any mounts of the file system via the mount target that is being deleted, which might disrupt instances or applications using those mounts. To avoid applications getting cut off abruptly, you might consider unmounting any mounts of the mount target, if feasible. The operation also deletes the associated network interface. Uncommitted writes may be lost, but breaking a mount target using this operation does not corrupt the file system itself. The file system you created remains. You can mount an EC2 instance in your VPC via another mount target.

        This operation requires permissions for the following action on the file system:

        • elasticfilesystem:DeleteMountTarget

        The DeleteMountTarget call returns while the mount target state is still deleting. You can check the mount target deletion by calling the DescribeMountTargets operation, which returns a list of mount target descriptions for the given file system.

        The operation also requires permissions for the following Amazon EC2 action on the mount target's network interface:

        • ec2:DeleteNetworkInterface

        ", "DeleteTags": "

        Deletes the specified tags from a file system. If the DeleteTags request includes a tag key that does not exist, Amazon EFS ignores it and doesn't cause an error. For more information about tags and related restrictions, see Tag Restrictions in the AWS Billing and Cost Management User Guide.

        This operation requires permissions for the elasticfilesystem:DeleteTags action.

        ", "DescribeFileSystems": "

        Returns the description of a specific Amazon EFS file system if either the file system CreationToken or the FileSystemId is provided. Otherwise, it returns descriptions of all file systems owned by the caller's AWS account in the AWS Region of the endpoint that you're calling.

        When retrieving all file system descriptions, you can optionally specify the MaxItems parameter to limit the number of descriptions in a response. If more file system descriptions remain, Amazon EFS returns a NextMarker, an opaque token, in the response. In this case, you should send a subsequent request with the Marker request parameter set to the value of NextMarker.

        To retrieve a list of your file system descriptions, this operation is used in an iterative process, where DescribeFileSystems is called first without the Marker and then the operation continues to call it with the Marker parameter set to the value of the NextMarker from the previous response until the response has no NextMarker.

        The implementation may return fewer than MaxItems file system descriptions while still including a NextMarker value.

        The order of file systems returned in the response of one DescribeFileSystems call and the order of file systems returned across the responses of a multi-call iteration is unspecified.

        This operation requires permissions for the elasticfilesystem:DescribeFileSystems action.

        ", "DescribeMountTargetSecurityGroups": "

        Returns the security groups currently in effect for a mount target. This operation requires that the network interface of the mount target has been created and the lifecycle state of the mount target is not deleted.

        This operation requires permissions for the following actions:

        • elasticfilesystem:DescribeMountTargetSecurityGroups action on the mount target's file system.

        • ec2:DescribeNetworkInterfaceAttribute action on the mount target's network interface.

        ", "DescribeMountTargets": "

        Returns the descriptions of all the current mount targets, or a specific mount target, for a file system. When requesting all of the current mount targets, the order of mount targets returned in the response is unspecified.

        This operation requires permissions for the elasticfilesystem:DescribeMountTargets action, on either the file system ID that you specify in FileSystemId, or on the file system of the mount target that you specify in MountTargetId.

        ", "DescribeTags": "

        Returns the tags associated with a file system. The order of tags returned in the response of one DescribeTags call and the order of tags returned across the responses of a multi-call iteration (when using pagination) is unspecified.

        This operation requires permissions for the elasticfilesystem:DescribeTags action.

        ", "ModifyMountTargetSecurityGroups": "

        Modifies the set of security groups in effect for a mount target.

        When you create a mount target, Amazon EFS also creates a new network interface. For more information, see CreateMountTarget. This operation replaces the security groups in effect for the network interface associated with a mount target, with the SecurityGroups provided in the request. This operation requires that the network interface of the mount target has been created and the lifecycle state of the mount target is not deleted.

        The operation requires permissions for the following actions:

        • elasticfilesystem:ModifyMountTargetSecurityGroups action on the mount target's file system.

        • ec2:ModifyNetworkInterfaceAttribute action on the mount target's network interface.

        " }, "shapes": { "AwsAccountId": { "base": null, "refs": { "FileSystemDescription$OwnerId": "

        AWS account that created the file system. If the file system was created by an IAM user, the parent account to which the user belongs is the owner.

        ", "MountTargetDescription$OwnerId": "

        AWS account ID that owns the resource.

        " } }, "BadRequest": { "base": "

        Returned if the request is malformed or contains an error such as an invalid parameter value or a missing required parameter.

        ", "refs": { } }, "CreateFileSystemRequest": { "base": null, "refs": { } }, "CreateMountTargetRequest": { "base": "

        ", "refs": { } }, "CreateTagsRequest": { "base": "

        ", "refs": { } }, "CreationToken": { "base": null, "refs": { "CreateFileSystemRequest$CreationToken": "

        String of up to 64 ASCII characters. Amazon EFS uses this to ensure idempotent creation.

        ", "DescribeFileSystemsRequest$CreationToken": "

        (Optional) Restricts the list to the file system with this creation token (String). You specify a creation token when you create an Amazon EFS file system.

        ", "FileSystemDescription$CreationToken": "

        Opaque string specified in the request.

        " } }, "DeleteFileSystemRequest": { "base": "

        ", "refs": { } }, "DeleteMountTargetRequest": { "base": "

        ", "refs": { } }, "DeleteTagsRequest": { "base": "

        ", "refs": { } }, "DependencyTimeout": { "base": "

        The service timed out trying to fulfill the request, and the client should try the call again.

        ", "refs": { } }, "DescribeFileSystemsRequest": { "base": "

        ", "refs": { } }, "DescribeFileSystemsResponse": { "base": null, "refs": { } }, "DescribeMountTargetSecurityGroupsRequest": { "base": "

        ", "refs": { } }, "DescribeMountTargetSecurityGroupsResponse": { "base": null, "refs": { } }, "DescribeMountTargetsRequest": { "base": "

        ", "refs": { } }, "DescribeMountTargetsResponse": { "base": "

        ", "refs": { } }, "DescribeTagsRequest": { "base": "

        ", "refs": { } }, "DescribeTagsResponse": { "base": "

        ", "refs": { } }, "ErrorCode": { "base": null, "refs": { "BadRequest$ErrorCode": null, "DependencyTimeout$ErrorCode": null, "FileSystemAlreadyExists$ErrorCode": null, "FileSystemInUse$ErrorCode": null, "FileSystemLimitExceeded$ErrorCode": null, "FileSystemNotFound$ErrorCode": null, "IncorrectFileSystemLifeCycleState$ErrorCode": null, "IncorrectMountTargetState$ErrorCode": null, "InternalServerError$ErrorCode": null, "IpAddressInUse$ErrorCode": null, "MountTargetConflict$ErrorCode": null, "MountTargetNotFound$ErrorCode": null, "NetworkInterfaceLimitExceeded$ErrorCode": null, "NoFreeAddressesInSubnet$ErrorCode": null, "SecurityGroupLimitExceeded$ErrorCode": null, "SecurityGroupNotFound$ErrorCode": null, "SubnetNotFound$ErrorCode": null, "UnsupportedAvailabilityZone$ErrorCode": null } }, "ErrorMessage": { "base": null, "refs": { "BadRequest$Message": null, "DependencyTimeout$Message": null, "FileSystemAlreadyExists$Message": null, "FileSystemInUse$Message": null, "FileSystemLimitExceeded$Message": null, "FileSystemNotFound$Message": null, "IncorrectFileSystemLifeCycleState$Message": null, "IncorrectMountTargetState$Message": null, "InternalServerError$Message": null, "IpAddressInUse$Message": null, "MountTargetConflict$Message": null, "MountTargetNotFound$Message": null, "NetworkInterfaceLimitExceeded$Message": null, "NoFreeAddressesInSubnet$Message": null, "SecurityGroupLimitExceeded$Message": null, "SecurityGroupNotFound$Message": null, "SubnetNotFound$Message": null, "UnsupportedAvailabilityZone$Message": null } }, "FileSystemAlreadyExists": { "base": "

        Returned if the file system you are trying to create already exists, with the creation token you provided.

        ", "refs": { } }, "FileSystemDescription": { "base": "

        Description of the file system.

        ", "refs": { "FileSystemDescriptions$member": null } }, "FileSystemDescriptions": { "base": null, "refs": { "DescribeFileSystemsResponse$FileSystems": "

        Array of file system descriptions.

        " } }, "FileSystemId": { "base": null, "refs": { "CreateMountTargetRequest$FileSystemId": "

        ID of the file system for which to create the mount target.

        ", "CreateTagsRequest$FileSystemId": "

        ID of the file system whose tags you want to modify (String). This operation modifies the tags only, not the file system.

        ", "DeleteFileSystemRequest$FileSystemId": "

        ID of the file system you want to delete.

        ", "DeleteTagsRequest$FileSystemId": "

        ID of the file system whose tags you want to delete (String).

        ", "DescribeFileSystemsRequest$FileSystemId": "

        (Optional) ID of the file system whose description you want to retrieve (String).

        ", "DescribeMountTargetsRequest$FileSystemId": "

        (Optional) ID of the file system whose mount targets you want to list (String). It must be included in your request if MountTargetId is not included.

        ", "DescribeTagsRequest$FileSystemId": "

        ID of the file system whose tag set you want to retrieve.

        ", "FileSystemAlreadyExists$FileSystemId": null, "FileSystemDescription$FileSystemId": "

        ID of the file system, assigned by Amazon EFS.

        ", "MountTargetDescription$FileSystemId": "

        ID of the file system for which the mount target is intended.

        " } }, "FileSystemInUse": { "base": "

        Returned if a file system has mount targets.

        ", "refs": { } }, "FileSystemLimitExceeded": { "base": "

        Returned if the AWS account has already created maximum number of file systems allowed per account.

        ", "refs": { } }, "FileSystemNotFound": { "base": "

        Returned if the specified FileSystemId does not exist in the requester's AWS account.

        ", "refs": { } }, "FileSystemSize": { "base": "

        Latest known metered size (in bytes) of data stored in the file system, in its Value field, and the time at which that size was determined in its Timestamp field. Note that the value does not represent the size of a consistent snapshot of the file system, but it is eventually consistent when there are no writes to the file system. That is, the value will represent the actual size only if the file system is not modified for a period longer than a couple of hours. Otherwise, the value is not necessarily the exact size the file system was at any instant in time.

        ", "refs": { "FileSystemDescription$SizeInBytes": "

        Latest known metered size (in bytes) of data stored in the file system, in bytes, in its Value field, and the time at which that size was determined in its Timestamp field. The Timestamp value is the integer number of seconds since 1970-01-01T00:00:00Z. Note that the value does not represent the size of a consistent snapshot of the file system, but it is eventually consistent when there are no writes to the file system. That is, the value will represent actual size only if the file system is not modified for a period longer than a couple of hours. Otherwise, the value is not the exact size the file system was at any instant in time.

        " } }, "FileSystemSizeValue": { "base": null, "refs": { "FileSystemSize$Value": "

        Latest known metered size (in bytes) of data stored in the file system.

        " } }, "IncorrectFileSystemLifeCycleState": { "base": "

        Returned if the file system's life cycle state is not \"created\".

        ", "refs": { } }, "IncorrectMountTargetState": { "base": "

        Returned if the mount target is not in the correct state for the operation.

        ", "refs": { } }, "InternalServerError": { "base": "

        Returned if an error occurred on the server side.

        ", "refs": { } }, "IpAddress": { "base": null, "refs": { "CreateMountTargetRequest$IpAddress": "

        Valid IPv4 address within the address range of the specified subnet.

        ", "MountTargetDescription$IpAddress": "

        Address at which the file system may be mounted via the mount target.

        " } }, "IpAddressInUse": { "base": "

        Returned if the request specified an IpAddress that is already in use in the subnet.

        ", "refs": { } }, "LifeCycleState": { "base": null, "refs": { "FileSystemDescription$LifeCycleState": "

        Lifecycle phase of the file system.

        ", "MountTargetDescription$LifeCycleState": "

        Lifecycle state of the mount target.

        " } }, "Marker": { "base": null, "refs": { "DescribeFileSystemsRequest$Marker": "

        (Optional) Opaque pagination token returned from a previous DescribeFileSystems operation (String). If present, specifies to continue the list from where the returning call had left off.

        ", "DescribeFileSystemsResponse$Marker": "

        Present if provided by caller in the request (String).

        ", "DescribeFileSystemsResponse$NextMarker": "

        Present if there are more file systems than returned in the response (String). You can use the NextMarker in the subsequent request to fetch the descriptions.

        ", "DescribeMountTargetsRequest$Marker": "

        (Optional) Opaque pagination token returned from a previous DescribeMountTargets operation (String). If present, it specifies to continue the list from where the previous returning call left off.

        ", "DescribeMountTargetsResponse$Marker": "

        If the request included the Marker, the response returns that value in this field.

        ", "DescribeMountTargetsResponse$NextMarker": "

        If a value is present, there are more mount targets to return. In a subsequent request, you can provide Marker in your request with this value to retrieve the next set of mount targets.

        ", "DescribeTagsRequest$Marker": "

        (Optional) Opaque pagination token returned from a previous DescribeTags operation (String). If present, it specifies to continue the list from where the previous call left off.

        ", "DescribeTagsResponse$Marker": "

        If the request included a Marker, the response returns that value in this field.

        ", "DescribeTagsResponse$NextMarker": "

        If a value is present, there are more tags to return. In a subsequent request, you can provide the value of NextMarker as the value of the Marker parameter in your next request to retrieve the next set of tags.

        " } }, "MaxItems": { "base": null, "refs": { "DescribeFileSystemsRequest$MaxItems": "

        (Optional) Specifies the maximum number of file systems to return in the response (integer). This parameter value must be greater than 0. The number of items that Amazon EFS returns is the minimum of the MaxItems parameter specified in the request and the service's internal maximum number of items per page.

        ", "DescribeMountTargetsRequest$MaxItems": "

        (Optional) Maximum number of mount targets to return in the response. It must be an integer with a value greater than zero.

        ", "DescribeTagsRequest$MaxItems": "

        (Optional) Maximum number of file system tags to return in the response. It must be an integer with a value greater than zero.

        " } }, "ModifyMountTargetSecurityGroupsRequest": { "base": "

        ", "refs": { } }, "MountTargetConflict": { "base": "

        Returned if the mount target would violate one of the specified restrictions based on the file system's existing mount targets.

        ", "refs": { } }, "MountTargetCount": { "base": null, "refs": { "FileSystemDescription$NumberOfMountTargets": "

        Current number of mount targets that the file system has. For more information, see CreateMountTarget.

        " } }, "MountTargetDescription": { "base": "

        Provides a description of a mount target.

        ", "refs": { "MountTargetDescriptions$member": null } }, "MountTargetDescriptions": { "base": null, "refs": { "DescribeMountTargetsResponse$MountTargets": "

        Returns the file system's mount targets as an array of MountTargetDescription objects.

        " } }, "MountTargetId": { "base": null, "refs": { "DeleteMountTargetRequest$MountTargetId": "

        ID of the mount target to delete (String).

        ", "DescribeMountTargetSecurityGroupsRequest$MountTargetId": "

        ID of the mount target whose security groups you want to retrieve.

        ", "DescribeMountTargetsRequest$MountTargetId": "

        (Optional) ID of the mount target that you want to have described (String). It must be included in your request if FileSystemId is not included.

        ", "ModifyMountTargetSecurityGroupsRequest$MountTargetId": "

        ID of the mount target whose security groups you want to modify.

        ", "MountTargetDescription$MountTargetId": "

        System-assigned mount target ID.

        " } }, "MountTargetNotFound": { "base": "

        Returned if there is no mount target with the specified ID found in the caller's account.

        ", "refs": { } }, "NetworkInterfaceId": { "base": null, "refs": { "MountTargetDescription$NetworkInterfaceId": "

        ID of the network interface that Amazon EFS created when it created the mount target.

        " } }, "NetworkInterfaceLimitExceeded": { "base": "

        The calling account has reached the ENI limit for the specific AWS region. Client should try to delete some ENIs or get its account limit raised. For more information, see Amazon VPC Limits in the Amazon Virtual Private Cloud User Guide (see the Network interfaces per VPC entry in the table).

        ", "refs": { } }, "NoFreeAddressesInSubnet": { "base": "

        Returned if IpAddress was not specified in the request and there are no free IP addresses in the subnet.

        ", "refs": { } }, "PerformanceMode": { "base": null, "refs": { "CreateFileSystemRequest$PerformanceMode": "

        The PerformanceMode of the file system. We recommend generalPurpose performance mode for most file systems. File systems using the maxIO performance mode can scale to higher levels of aggregate throughput and operations per second with a tradeoff of slightly higher latencies for most file operations. This can't be changed after the file system has been created.

        ", "FileSystemDescription$PerformanceMode": "

        The PerformanceMode of the file system.

        " } }, "SecurityGroup": { "base": null, "refs": { "SecurityGroups$member": null } }, "SecurityGroupLimitExceeded": { "base": "

        Returned if the size of SecurityGroups specified in the request is greater than five.

        ", "refs": { } }, "SecurityGroupNotFound": { "base": "

        Returned if one of the specified security groups does not exist in the subnet's VPC.

        ", "refs": { } }, "SecurityGroups": { "base": null, "refs": { "CreateMountTargetRequest$SecurityGroups": "

        Up to five VPC security group IDs, of the form sg-xxxxxxxx. These must be for the same VPC as subnet specified.

        ", "DescribeMountTargetSecurityGroupsResponse$SecurityGroups": "

        Array of security groups.

        ", "ModifyMountTargetSecurityGroupsRequest$SecurityGroups": "

        Array of up to five VPC security group IDs.

        " } }, "SubnetId": { "base": null, "refs": { "CreateMountTargetRequest$SubnetId": "

        ID of the subnet to add the mount target in.

        ", "MountTargetDescription$SubnetId": "

        ID of the mount target's subnet.

        " } }, "SubnetNotFound": { "base": "

        Returned if there is no subnet with ID SubnetId provided in the request.

        ", "refs": { } }, "Tag": { "base": "

        A tag is a key-value pair. Allowed characters: letters, whitespace, and numbers, representable in UTF-8, and the following characters: + - = . _ : /

        ", "refs": { "Tags$member": null } }, "TagKey": { "base": null, "refs": { "Tag$Key": "

        Tag key (String). The key can't start with aws:.

        ", "TagKeys$member": null } }, "TagKeys": { "base": null, "refs": { "DeleteTagsRequest$TagKeys": "

        List of tag keys to delete.

        " } }, "TagValue": { "base": null, "refs": { "FileSystemDescription$Name": "

        You can add tags to a file system, including a Name tag. For more information, see CreateTags. If the file system has a Name tag, Amazon EFS returns the value in this field.

        ", "Tag$Value": "

        Value of the tag key.

        " } }, "Tags": { "base": null, "refs": { "CreateTagsRequest$Tags": "

        Array of Tag objects to add. Each Tag object is a key-value pair.

        ", "DescribeTagsResponse$Tags": "

        Returns tags associated with the file system as an array of Tag objects.

        " } }, "Timestamp": { "base": null, "refs": { "FileSystemDescription$CreationTime": "

        Time that the file system was created, in seconds (since 1970-01-01T00:00:00Z).

        ", "FileSystemSize$Timestamp": "

        Time at which the size of data, returned in the Value field, was determined. The value is the integer number of seconds since 1970-01-01T00:00:00Z.

        " } }, "UnsupportedAvailabilityZone": { "base": null, "refs": { } } } } aws-sdk-go-1.4.22/models/apis/elasticfilesystem/2015-02-01/examples-1.json000066400000000000000000000000541300374646400254250ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/elasticloadbalancing/000077500000000000000000000000001300374646400221255ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/elasticloadbalancing/2012-06-01/000077500000000000000000000000001300374646400231525ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/elasticloadbalancing/2012-06-01/api-2.json000066400000000000000000001242641300374646400247660ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2012-06-01", "endpointPrefix":"elasticloadbalancing", "protocol":"query", "serviceFullName":"Elastic Load Balancing", "signatureVersion":"v4", "xmlNamespace":"http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/" }, "operations":{ "AddTags":{ "name":"AddTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsInput"}, "output":{ "shape":"AddTagsOutput", "resultWrapper":"AddTagsResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"TooManyTagsException"}, {"shape":"DuplicateTagKeysException"} ] }, "ApplySecurityGroupsToLoadBalancer":{ "name":"ApplySecurityGroupsToLoadBalancer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ApplySecurityGroupsToLoadBalancerInput"}, "output":{ "shape":"ApplySecurityGroupsToLoadBalancerOutput", "resultWrapper":"ApplySecurityGroupsToLoadBalancerResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"InvalidConfigurationRequestException"}, {"shape":"InvalidSecurityGroupException"} ] }, "AttachLoadBalancerToSubnets":{ "name":"AttachLoadBalancerToSubnets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachLoadBalancerToSubnetsInput"}, "output":{ "shape":"AttachLoadBalancerToSubnetsOutput", "resultWrapper":"AttachLoadBalancerToSubnetsResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"InvalidConfigurationRequestException"}, {"shape":"SubnetNotFoundException"}, {"shape":"InvalidSubnetException"} ] }, "ConfigureHealthCheck":{ "name":"ConfigureHealthCheck", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ConfigureHealthCheckInput"}, "output":{ "shape":"ConfigureHealthCheckOutput", "resultWrapper":"ConfigureHealthCheckResult" }, "errors":[ {"shape":"AccessPointNotFoundException"} ] }, "CreateAppCookieStickinessPolicy":{ "name":"CreateAppCookieStickinessPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateAppCookieStickinessPolicyInput"}, "output":{ "shape":"CreateAppCookieStickinessPolicyOutput", "resultWrapper":"CreateAppCookieStickinessPolicyResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"DuplicatePolicyNameException"}, {"shape":"TooManyPoliciesException"}, {"shape":"InvalidConfigurationRequestException"} ] }, "CreateLBCookieStickinessPolicy":{ "name":"CreateLBCookieStickinessPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateLBCookieStickinessPolicyInput"}, "output":{ "shape":"CreateLBCookieStickinessPolicyOutput", "resultWrapper":"CreateLBCookieStickinessPolicyResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"DuplicatePolicyNameException"}, {"shape":"TooManyPoliciesException"}, {"shape":"InvalidConfigurationRequestException"} ] }, "CreateLoadBalancer":{ "name":"CreateLoadBalancer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateAccessPointInput"}, "output":{ "shape":"CreateAccessPointOutput", "resultWrapper":"CreateLoadBalancerResult" }, "errors":[ {"shape":"DuplicateAccessPointNameException"}, {"shape":"TooManyAccessPointsException"}, {"shape":"CertificateNotFoundException"}, {"shape":"InvalidConfigurationRequestException"}, {"shape":"SubnetNotFoundException"}, {"shape":"InvalidSubnetException"}, {"shape":"InvalidSecurityGroupException"}, {"shape":"InvalidSchemeException"}, {"shape":"TooManyTagsException"}, {"shape":"DuplicateTagKeysException"}, {"shape":"UnsupportedProtocolException"} ] }, "CreateLoadBalancerListeners":{ "name":"CreateLoadBalancerListeners", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateLoadBalancerListenerInput"}, "output":{ "shape":"CreateLoadBalancerListenerOutput", "resultWrapper":"CreateLoadBalancerListenersResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"DuplicateListenerException"}, {"shape":"CertificateNotFoundException"}, {"shape":"InvalidConfigurationRequestException"}, {"shape":"UnsupportedProtocolException"} ] }, "CreateLoadBalancerPolicy":{ "name":"CreateLoadBalancerPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateLoadBalancerPolicyInput"}, "output":{ "shape":"CreateLoadBalancerPolicyOutput", "resultWrapper":"CreateLoadBalancerPolicyResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"PolicyTypeNotFoundException"}, {"shape":"DuplicatePolicyNameException"}, {"shape":"TooManyPoliciesException"}, {"shape":"InvalidConfigurationRequestException"} ] }, "DeleteLoadBalancer":{ "name":"DeleteLoadBalancer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteAccessPointInput"}, "output":{ "shape":"DeleteAccessPointOutput", "resultWrapper":"DeleteLoadBalancerResult" } }, "DeleteLoadBalancerListeners":{ "name":"DeleteLoadBalancerListeners", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteLoadBalancerListenerInput"}, "output":{ "shape":"DeleteLoadBalancerListenerOutput", "resultWrapper":"DeleteLoadBalancerListenersResult" }, "errors":[ {"shape":"AccessPointNotFoundException"} ] }, "DeleteLoadBalancerPolicy":{ "name":"DeleteLoadBalancerPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteLoadBalancerPolicyInput"}, "output":{ "shape":"DeleteLoadBalancerPolicyOutput", "resultWrapper":"DeleteLoadBalancerPolicyResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"InvalidConfigurationRequestException"} ] }, "DeregisterInstancesFromLoadBalancer":{ "name":"DeregisterInstancesFromLoadBalancer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeregisterEndPointsInput"}, "output":{ "shape":"DeregisterEndPointsOutput", "resultWrapper":"DeregisterInstancesFromLoadBalancerResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"InvalidEndPointException"} ] }, "DescribeInstanceHealth":{ "name":"DescribeInstanceHealth", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEndPointStateInput"}, "output":{ "shape":"DescribeEndPointStateOutput", "resultWrapper":"DescribeInstanceHealthResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"InvalidEndPointException"} ] }, "DescribeLoadBalancerAttributes":{ "name":"DescribeLoadBalancerAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeLoadBalancerAttributesInput"}, "output":{ "shape":"DescribeLoadBalancerAttributesOutput", "resultWrapper":"DescribeLoadBalancerAttributesResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"LoadBalancerAttributeNotFoundException"} ] }, "DescribeLoadBalancerPolicies":{ "name":"DescribeLoadBalancerPolicies", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeLoadBalancerPoliciesInput"}, "output":{ "shape":"DescribeLoadBalancerPoliciesOutput", "resultWrapper":"DescribeLoadBalancerPoliciesResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"PolicyNotFoundException"} ] }, "DescribeLoadBalancerPolicyTypes":{ "name":"DescribeLoadBalancerPolicyTypes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeLoadBalancerPolicyTypesInput"}, "output":{ "shape":"DescribeLoadBalancerPolicyTypesOutput", "resultWrapper":"DescribeLoadBalancerPolicyTypesResult" }, "errors":[ {"shape":"PolicyTypeNotFoundException"} ] }, "DescribeLoadBalancers":{ "name":"DescribeLoadBalancers", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAccessPointsInput"}, "output":{ "shape":"DescribeAccessPointsOutput", "resultWrapper":"DescribeLoadBalancersResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"DependencyThrottleException"} ] }, "DescribeTags":{ "name":"DescribeTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTagsInput"}, "output":{ "shape":"DescribeTagsOutput", "resultWrapper":"DescribeTagsResult" }, "errors":[ {"shape":"AccessPointNotFoundException"} ] }, "DetachLoadBalancerFromSubnets":{ "name":"DetachLoadBalancerFromSubnets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachLoadBalancerFromSubnetsInput"}, "output":{ "shape":"DetachLoadBalancerFromSubnetsOutput", "resultWrapper":"DetachLoadBalancerFromSubnetsResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"InvalidConfigurationRequestException"} ] }, "DisableAvailabilityZonesForLoadBalancer":{ "name":"DisableAvailabilityZonesForLoadBalancer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveAvailabilityZonesInput"}, "output":{ "shape":"RemoveAvailabilityZonesOutput", "resultWrapper":"DisableAvailabilityZonesForLoadBalancerResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"InvalidConfigurationRequestException"} ] }, "EnableAvailabilityZonesForLoadBalancer":{ "name":"EnableAvailabilityZonesForLoadBalancer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddAvailabilityZonesInput"}, "output":{ "shape":"AddAvailabilityZonesOutput", "resultWrapper":"EnableAvailabilityZonesForLoadBalancerResult" }, "errors":[ {"shape":"AccessPointNotFoundException"} ] }, "ModifyLoadBalancerAttributes":{ "name":"ModifyLoadBalancerAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyLoadBalancerAttributesInput"}, "output":{ "shape":"ModifyLoadBalancerAttributesOutput", "resultWrapper":"ModifyLoadBalancerAttributesResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"LoadBalancerAttributeNotFoundException"}, {"shape":"InvalidConfigurationRequestException"} ] }, "RegisterInstancesWithLoadBalancer":{ "name":"RegisterInstancesWithLoadBalancer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterEndPointsInput"}, "output":{ "shape":"RegisterEndPointsOutput", "resultWrapper":"RegisterInstancesWithLoadBalancerResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"InvalidEndPointException"} ] }, "RemoveTags":{ "name":"RemoveTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsInput"}, "output":{ "shape":"RemoveTagsOutput", "resultWrapper":"RemoveTagsResult" }, "errors":[ {"shape":"AccessPointNotFoundException"} ] }, "SetLoadBalancerListenerSSLCertificate":{ "name":"SetLoadBalancerListenerSSLCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetLoadBalancerListenerSSLCertificateInput"}, "output":{ "shape":"SetLoadBalancerListenerSSLCertificateOutput", "resultWrapper":"SetLoadBalancerListenerSSLCertificateResult" }, "errors":[ {"shape":"CertificateNotFoundException"}, {"shape":"AccessPointNotFoundException"}, {"shape":"ListenerNotFoundException"}, {"shape":"InvalidConfigurationRequestException"}, {"shape":"UnsupportedProtocolException"} ] }, "SetLoadBalancerPoliciesForBackendServer":{ "name":"SetLoadBalancerPoliciesForBackendServer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetLoadBalancerPoliciesForBackendServerInput"}, "output":{ "shape":"SetLoadBalancerPoliciesForBackendServerOutput", "resultWrapper":"SetLoadBalancerPoliciesForBackendServerResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"PolicyNotFoundException"}, {"shape":"InvalidConfigurationRequestException"} ] }, "SetLoadBalancerPoliciesOfListener":{ "name":"SetLoadBalancerPoliciesOfListener", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetLoadBalancerPoliciesOfListenerInput"}, "output":{ "shape":"SetLoadBalancerPoliciesOfListenerOutput", "resultWrapper":"SetLoadBalancerPoliciesOfListenerResult" }, "errors":[ {"shape":"AccessPointNotFoundException"}, {"shape":"PolicyNotFoundException"}, {"shape":"ListenerNotFoundException"}, {"shape":"InvalidConfigurationRequestException"} ] } }, "shapes":{ "AccessLog":{ "type":"structure", "required":["Enabled"], "members":{ "Enabled":{"shape":"AccessLogEnabled"}, "S3BucketName":{"shape":"S3BucketName"}, "EmitInterval":{"shape":"AccessLogInterval"}, "S3BucketPrefix":{"shape":"AccessLogPrefix"} } }, "AccessLogEnabled":{"type":"boolean"}, "AccessLogInterval":{"type":"integer"}, "AccessLogPrefix":{"type":"string"}, "AccessPointName":{"type":"string"}, "AccessPointNotFoundException":{ "type":"structure", "members":{ }, "error":{ "code":"LoadBalancerNotFound", "httpStatusCode":400, "senderFault":true }, "exception":true }, "AccessPointPort":{"type":"integer"}, "AddAvailabilityZonesInput":{ "type":"structure", "required":[ "LoadBalancerName", "AvailabilityZones" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "AvailabilityZones":{"shape":"AvailabilityZones"} } }, "AddAvailabilityZonesOutput":{ "type":"structure", "members":{ "AvailabilityZones":{"shape":"AvailabilityZones"} } }, "AddTagsInput":{ "type":"structure", "required":[ "LoadBalancerNames", "Tags" ], "members":{ "LoadBalancerNames":{"shape":"LoadBalancerNames"}, "Tags":{"shape":"TagList"} } }, "AddTagsOutput":{ "type":"structure", "members":{ } }, "AdditionalAttribute":{ "type":"structure", "members":{ "Key":{"shape":"AdditionalAttributeKey"}, "Value":{"shape":"AdditionalAttributeValue"} } }, "AdditionalAttributeKey":{ "type":"string", "max":256, "pattern":"^[a-zA-Z0-9.]+$" }, "AdditionalAttributeValue":{ "type":"string", "max":256, "pattern":"^[a-zA-Z0-9.]+$" }, "AdditionalAttributes":{ "type":"list", "member":{"shape":"AdditionalAttribute"}, "max":10 }, "AppCookieStickinessPolicies":{ "type":"list", "member":{"shape":"AppCookieStickinessPolicy"} }, "AppCookieStickinessPolicy":{ "type":"structure", "members":{ "PolicyName":{"shape":"PolicyName"}, "CookieName":{"shape":"CookieName"} } }, "ApplySecurityGroupsToLoadBalancerInput":{ "type":"structure", "required":[ "LoadBalancerName", "SecurityGroups" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "SecurityGroups":{"shape":"SecurityGroups"} } }, "ApplySecurityGroupsToLoadBalancerOutput":{ "type":"structure", "members":{ "SecurityGroups":{"shape":"SecurityGroups"} } }, "AttachLoadBalancerToSubnetsInput":{ "type":"structure", "required":[ "LoadBalancerName", "Subnets" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "Subnets":{"shape":"Subnets"} } }, "AttachLoadBalancerToSubnetsOutput":{ "type":"structure", "members":{ "Subnets":{"shape":"Subnets"} } }, "AttributeName":{"type":"string"}, "AttributeType":{"type":"string"}, "AttributeValue":{"type":"string"}, "AvailabilityZone":{"type":"string"}, "AvailabilityZones":{ "type":"list", "member":{"shape":"AvailabilityZone"} }, "BackendServerDescription":{ "type":"structure", "members":{ "InstancePort":{"shape":"InstancePort"}, "PolicyNames":{"shape":"PolicyNames"} } }, "BackendServerDescriptions":{ "type":"list", "member":{"shape":"BackendServerDescription"} }, "Cardinality":{"type":"string"}, "CertificateNotFoundException":{ "type":"structure", "members":{ }, "error":{ "code":"CertificateNotFound", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ConfigureHealthCheckInput":{ "type":"structure", "required":[ "LoadBalancerName", "HealthCheck" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "HealthCheck":{"shape":"HealthCheck"} } }, "ConfigureHealthCheckOutput":{ "type":"structure", "members":{ "HealthCheck":{"shape":"HealthCheck"} } }, "ConnectionDraining":{ "type":"structure", "required":["Enabled"], "members":{ "Enabled":{"shape":"ConnectionDrainingEnabled"}, "Timeout":{"shape":"ConnectionDrainingTimeout"} } }, "ConnectionDrainingEnabled":{"type":"boolean"}, "ConnectionDrainingTimeout":{"type":"integer"}, "ConnectionSettings":{ "type":"structure", "required":["IdleTimeout"], "members":{ "IdleTimeout":{"shape":"IdleTimeout"} } }, "CookieExpirationPeriod":{"type":"long"}, "CookieName":{"type":"string"}, "CreateAccessPointInput":{ "type":"structure", "required":[ "LoadBalancerName", "Listeners" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "Listeners":{"shape":"Listeners"}, "AvailabilityZones":{"shape":"AvailabilityZones"}, "Subnets":{"shape":"Subnets"}, "SecurityGroups":{"shape":"SecurityGroups"}, "Scheme":{"shape":"LoadBalancerScheme"}, "Tags":{"shape":"TagList"} } }, "CreateAccessPointOutput":{ "type":"structure", "members":{ "DNSName":{"shape":"DNSName"} } }, "CreateAppCookieStickinessPolicyInput":{ "type":"structure", "required":[ "LoadBalancerName", "PolicyName", "CookieName" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "PolicyName":{"shape":"PolicyName"}, "CookieName":{"shape":"CookieName"} } }, "CreateAppCookieStickinessPolicyOutput":{ "type":"structure", "members":{ } }, "CreateLBCookieStickinessPolicyInput":{ "type":"structure", "required":[ "LoadBalancerName", "PolicyName" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "PolicyName":{"shape":"PolicyName"}, "CookieExpirationPeriod":{"shape":"CookieExpirationPeriod"} } }, "CreateLBCookieStickinessPolicyOutput":{ "type":"structure", "members":{ } }, "CreateLoadBalancerListenerInput":{ "type":"structure", "required":[ "LoadBalancerName", "Listeners" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "Listeners":{"shape":"Listeners"} } }, "CreateLoadBalancerListenerOutput":{ "type":"structure", "members":{ } }, "CreateLoadBalancerPolicyInput":{ "type":"structure", "required":[ "LoadBalancerName", "PolicyName", "PolicyTypeName" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "PolicyName":{"shape":"PolicyName"}, "PolicyTypeName":{"shape":"PolicyTypeName"}, "PolicyAttributes":{"shape":"PolicyAttributes"} } }, "CreateLoadBalancerPolicyOutput":{ "type":"structure", "members":{ } }, "CreatedTime":{"type":"timestamp"}, "CrossZoneLoadBalancing":{ "type":"structure", "required":["Enabled"], "members":{ "Enabled":{"shape":"CrossZoneLoadBalancingEnabled"} } }, "CrossZoneLoadBalancingEnabled":{"type":"boolean"}, "DNSName":{"type":"string"}, "DefaultValue":{"type":"string"}, "DeleteAccessPointInput":{ "type":"structure", "required":["LoadBalancerName"], "members":{ "LoadBalancerName":{"shape":"AccessPointName"} } }, "DeleteAccessPointOutput":{ "type":"structure", "members":{ } }, "DeleteLoadBalancerListenerInput":{ "type":"structure", "required":[ "LoadBalancerName", "LoadBalancerPorts" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "LoadBalancerPorts":{"shape":"Ports"} } }, "DeleteLoadBalancerListenerOutput":{ "type":"structure", "members":{ } }, "DeleteLoadBalancerPolicyInput":{ "type":"structure", "required":[ "LoadBalancerName", "PolicyName" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "PolicyName":{"shape":"PolicyName"} } }, "DeleteLoadBalancerPolicyOutput":{ "type":"structure", "members":{ } }, "DependencyThrottleException":{ "type":"structure", "members":{ }, "error":{ "code":"DependencyThrottle", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DeregisterEndPointsInput":{ "type":"structure", "required":[ "LoadBalancerName", "Instances" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "Instances":{"shape":"Instances"} } }, "DeregisterEndPointsOutput":{ "type":"structure", "members":{ "Instances":{"shape":"Instances"} } }, "DescribeAccessPointsInput":{ "type":"structure", "members":{ "LoadBalancerNames":{"shape":"LoadBalancerNames"}, "Marker":{"shape":"Marker"}, "PageSize":{"shape":"PageSize"} } }, "DescribeAccessPointsOutput":{ "type":"structure", "members":{ "LoadBalancerDescriptions":{"shape":"LoadBalancerDescriptions"}, "NextMarker":{"shape":"Marker"} } }, "DescribeEndPointStateInput":{ "type":"structure", "required":["LoadBalancerName"], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "Instances":{"shape":"Instances"} } }, "DescribeEndPointStateOutput":{ "type":"structure", "members":{ "InstanceStates":{"shape":"InstanceStates"} } }, "DescribeLoadBalancerAttributesInput":{ "type":"structure", "required":["LoadBalancerName"], "members":{ "LoadBalancerName":{"shape":"AccessPointName"} } }, "DescribeLoadBalancerAttributesOutput":{ "type":"structure", "members":{ "LoadBalancerAttributes":{"shape":"LoadBalancerAttributes"} } }, "DescribeLoadBalancerPoliciesInput":{ "type":"structure", "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "PolicyNames":{"shape":"PolicyNames"} } }, "DescribeLoadBalancerPoliciesOutput":{ "type":"structure", "members":{ "PolicyDescriptions":{"shape":"PolicyDescriptions"} } }, "DescribeLoadBalancerPolicyTypesInput":{ "type":"structure", "members":{ "PolicyTypeNames":{"shape":"PolicyTypeNames"} } }, "DescribeLoadBalancerPolicyTypesOutput":{ "type":"structure", "members":{ "PolicyTypeDescriptions":{"shape":"PolicyTypeDescriptions"} } }, "DescribeTagsInput":{ "type":"structure", "required":["LoadBalancerNames"], "members":{ "LoadBalancerNames":{"shape":"LoadBalancerNamesMax20"} } }, "DescribeTagsOutput":{ "type":"structure", "members":{ "TagDescriptions":{"shape":"TagDescriptions"} } }, "Description":{"type":"string"}, "DetachLoadBalancerFromSubnetsInput":{ "type":"structure", "required":[ "LoadBalancerName", "Subnets" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "Subnets":{"shape":"Subnets"} } }, "DetachLoadBalancerFromSubnetsOutput":{ "type":"structure", "members":{ "Subnets":{"shape":"Subnets"} } }, "DuplicateAccessPointNameException":{ "type":"structure", "members":{ }, "error":{ "code":"DuplicateLoadBalancerName", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DuplicateListenerException":{ "type":"structure", "members":{ }, "error":{ "code":"DuplicateListener", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DuplicatePolicyNameException":{ "type":"structure", "members":{ }, "error":{ "code":"DuplicatePolicyName", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DuplicateTagKeysException":{ "type":"structure", "members":{ }, "error":{ "code":"DuplicateTagKeys", "httpStatusCode":400, "senderFault":true }, "exception":true }, "EndPointPort":{"type":"integer"}, "HealthCheck":{ "type":"structure", "required":[ "Target", "Interval", "Timeout", "UnhealthyThreshold", "HealthyThreshold" ], "members":{ "Target":{"shape":"HealthCheckTarget"}, "Interval":{"shape":"HealthCheckInterval"}, "Timeout":{"shape":"HealthCheckTimeout"}, "UnhealthyThreshold":{"shape":"UnhealthyThreshold"}, "HealthyThreshold":{"shape":"HealthyThreshold"} } }, "HealthCheckInterval":{ "type":"integer", "max":300, "min":5 }, "HealthCheckTarget":{"type":"string"}, "HealthCheckTimeout":{ "type":"integer", "max":60, "min":2 }, "HealthyThreshold":{ "type":"integer", "max":10, "min":2 }, "IdleTimeout":{ "type":"integer", "max":3600, "min":1 }, "Instance":{ "type":"structure", "members":{ "InstanceId":{"shape":"InstanceId"} } }, "InstanceId":{"type":"string"}, "InstancePort":{ "type":"integer", "max":65535, "min":1 }, "InstanceState":{ "type":"structure", "members":{ "InstanceId":{"shape":"InstanceId"}, "State":{"shape":"State"}, "ReasonCode":{"shape":"ReasonCode"}, "Description":{"shape":"Description"} } }, "InstanceStates":{ "type":"list", "member":{"shape":"InstanceState"} }, "Instances":{ "type":"list", "member":{"shape":"Instance"} }, "InvalidConfigurationRequestException":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidConfigurationRequest", "httpStatusCode":409, "senderFault":true }, "exception":true }, "InvalidEndPointException":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidInstance", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidSchemeException":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidScheme", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidSecurityGroupException":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidSecurityGroup", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidSubnetException":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidSubnet", "httpStatusCode":400, "senderFault":true }, "exception":true }, "LBCookieStickinessPolicies":{ "type":"list", "member":{"shape":"LBCookieStickinessPolicy"} }, "LBCookieStickinessPolicy":{ "type":"structure", "members":{ "PolicyName":{"shape":"PolicyName"}, "CookieExpirationPeriod":{"shape":"CookieExpirationPeriod"} } }, "Listener":{ "type":"structure", "required":[ "Protocol", "LoadBalancerPort", "InstancePort" ], "members":{ "Protocol":{"shape":"Protocol"}, "LoadBalancerPort":{"shape":"AccessPointPort"}, "InstanceProtocol":{"shape":"Protocol"}, "InstancePort":{"shape":"InstancePort"}, "SSLCertificateId":{"shape":"SSLCertificateId"} } }, "ListenerDescription":{ "type":"structure", "members":{ "Listener":{"shape":"Listener"}, "PolicyNames":{"shape":"PolicyNames"} } }, "ListenerDescriptions":{ "type":"list", "member":{"shape":"ListenerDescription"} }, "ListenerNotFoundException":{ "type":"structure", "members":{ }, "error":{ "code":"ListenerNotFound", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Listeners":{ "type":"list", "member":{"shape":"Listener"} }, "LoadBalancerAttributeNotFoundException":{ "type":"structure", "members":{ }, "error":{ "code":"LoadBalancerAttributeNotFound", "httpStatusCode":400, "senderFault":true }, "exception":true }, "LoadBalancerAttributes":{ "type":"structure", "members":{ "CrossZoneLoadBalancing":{"shape":"CrossZoneLoadBalancing"}, "AccessLog":{"shape":"AccessLog"}, "ConnectionDraining":{"shape":"ConnectionDraining"}, "ConnectionSettings":{"shape":"ConnectionSettings"}, "AdditionalAttributes":{"shape":"AdditionalAttributes"} } }, "LoadBalancerDescription":{ "type":"structure", "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "DNSName":{"shape":"DNSName"}, "CanonicalHostedZoneName":{"shape":"DNSName"}, "CanonicalHostedZoneNameID":{"shape":"DNSName"}, "ListenerDescriptions":{"shape":"ListenerDescriptions"}, "Policies":{"shape":"Policies"}, "BackendServerDescriptions":{"shape":"BackendServerDescriptions"}, "AvailabilityZones":{"shape":"AvailabilityZones"}, "Subnets":{"shape":"Subnets"}, "VPCId":{"shape":"VPCId"}, "Instances":{"shape":"Instances"}, "HealthCheck":{"shape":"HealthCheck"}, "SourceSecurityGroup":{"shape":"SourceSecurityGroup"}, "SecurityGroups":{"shape":"SecurityGroups"}, "CreatedTime":{"shape":"CreatedTime"}, "Scheme":{"shape":"LoadBalancerScheme"} } }, "LoadBalancerDescriptions":{ "type":"list", "member":{"shape":"LoadBalancerDescription"} }, "LoadBalancerNames":{ "type":"list", "member":{"shape":"AccessPointName"} }, "LoadBalancerNamesMax20":{ "type":"list", "member":{"shape":"AccessPointName"}, "max":20, "min":1 }, "LoadBalancerScheme":{"type":"string"}, "Marker":{"type":"string"}, "ModifyLoadBalancerAttributesInput":{ "type":"structure", "required":[ "LoadBalancerName", "LoadBalancerAttributes" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "LoadBalancerAttributes":{"shape":"LoadBalancerAttributes"} } }, "ModifyLoadBalancerAttributesOutput":{ "type":"structure", "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "LoadBalancerAttributes":{"shape":"LoadBalancerAttributes"} } }, "PageSize":{ "type":"integer", "max":400, "min":1 }, "Policies":{ "type":"structure", "members":{ "AppCookieStickinessPolicies":{"shape":"AppCookieStickinessPolicies"}, "LBCookieStickinessPolicies":{"shape":"LBCookieStickinessPolicies"}, "OtherPolicies":{"shape":"PolicyNames"} } }, "PolicyAttribute":{ "type":"structure", "members":{ "AttributeName":{"shape":"AttributeName"}, "AttributeValue":{"shape":"AttributeValue"} } }, "PolicyAttributeDescription":{ "type":"structure", "members":{ "AttributeName":{"shape":"AttributeName"}, "AttributeValue":{"shape":"AttributeValue"} } }, "PolicyAttributeDescriptions":{ "type":"list", "member":{"shape":"PolicyAttributeDescription"} }, "PolicyAttributeTypeDescription":{ "type":"structure", "members":{ "AttributeName":{"shape":"AttributeName"}, "AttributeType":{"shape":"AttributeType"}, "Description":{"shape":"Description"}, "DefaultValue":{"shape":"DefaultValue"}, "Cardinality":{"shape":"Cardinality"} } }, "PolicyAttributeTypeDescriptions":{ "type":"list", "member":{"shape":"PolicyAttributeTypeDescription"} }, "PolicyAttributes":{ "type":"list", "member":{"shape":"PolicyAttribute"} }, "PolicyDescription":{ "type":"structure", "members":{ "PolicyName":{"shape":"PolicyName"}, "PolicyTypeName":{"shape":"PolicyTypeName"}, "PolicyAttributeDescriptions":{"shape":"PolicyAttributeDescriptions"} } }, "PolicyDescriptions":{ "type":"list", "member":{"shape":"PolicyDescription"} }, "PolicyName":{"type":"string"}, "PolicyNames":{ "type":"list", "member":{"shape":"PolicyName"} }, "PolicyNotFoundException":{ "type":"structure", "members":{ }, "error":{ "code":"PolicyNotFound", "httpStatusCode":400, "senderFault":true }, "exception":true }, "PolicyTypeDescription":{ "type":"structure", "members":{ "PolicyTypeName":{"shape":"PolicyTypeName"}, "Description":{"shape":"Description"}, "PolicyAttributeTypeDescriptions":{"shape":"PolicyAttributeTypeDescriptions"} } }, "PolicyTypeDescriptions":{ "type":"list", "member":{"shape":"PolicyTypeDescription"} }, "PolicyTypeName":{"type":"string"}, "PolicyTypeNames":{ "type":"list", "member":{"shape":"PolicyTypeName"} }, "PolicyTypeNotFoundException":{ "type":"structure", "members":{ }, "error":{ "code":"PolicyTypeNotFound", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Ports":{ "type":"list", "member":{"shape":"AccessPointPort"} }, "Protocol":{"type":"string"}, "ReasonCode":{"type":"string"}, "RegisterEndPointsInput":{ "type":"structure", "required":[ "LoadBalancerName", "Instances" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "Instances":{"shape":"Instances"} } }, "RegisterEndPointsOutput":{ "type":"structure", "members":{ "Instances":{"shape":"Instances"} } }, "RemoveAvailabilityZonesInput":{ "type":"structure", "required":[ "LoadBalancerName", "AvailabilityZones" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "AvailabilityZones":{"shape":"AvailabilityZones"} } }, "RemoveAvailabilityZonesOutput":{ "type":"structure", "members":{ "AvailabilityZones":{"shape":"AvailabilityZones"} } }, "RemoveTagsInput":{ "type":"structure", "required":[ "LoadBalancerNames", "Tags" ], "members":{ "LoadBalancerNames":{"shape":"LoadBalancerNames"}, "Tags":{"shape":"TagKeyList"} } }, "RemoveTagsOutput":{ "type":"structure", "members":{ } }, "S3BucketName":{"type":"string"}, "SSLCertificateId":{"type":"string"}, "SecurityGroupId":{"type":"string"}, "SecurityGroupName":{"type":"string"}, "SecurityGroupOwnerAlias":{"type":"string"}, "SecurityGroups":{ "type":"list", "member":{"shape":"SecurityGroupId"} }, "SetLoadBalancerListenerSSLCertificateInput":{ "type":"structure", "required":[ "LoadBalancerName", "LoadBalancerPort", "SSLCertificateId" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "LoadBalancerPort":{"shape":"AccessPointPort"}, "SSLCertificateId":{"shape":"SSLCertificateId"} } }, "SetLoadBalancerListenerSSLCertificateOutput":{ "type":"structure", "members":{ } }, "SetLoadBalancerPoliciesForBackendServerInput":{ "type":"structure", "required":[ "LoadBalancerName", "InstancePort", "PolicyNames" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "InstancePort":{"shape":"EndPointPort"}, "PolicyNames":{"shape":"PolicyNames"} } }, "SetLoadBalancerPoliciesForBackendServerOutput":{ "type":"structure", "members":{ } }, "SetLoadBalancerPoliciesOfListenerInput":{ "type":"structure", "required":[ "LoadBalancerName", "LoadBalancerPort", "PolicyNames" ], "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "LoadBalancerPort":{"shape":"AccessPointPort"}, "PolicyNames":{"shape":"PolicyNames"} } }, "SetLoadBalancerPoliciesOfListenerOutput":{ "type":"structure", "members":{ } }, "SourceSecurityGroup":{ "type":"structure", "members":{ "OwnerAlias":{"shape":"SecurityGroupOwnerAlias"}, "GroupName":{"shape":"SecurityGroupName"} } }, "State":{"type":"string"}, "SubnetId":{"type":"string"}, "SubnetNotFoundException":{ "type":"structure", "members":{ }, "error":{ "code":"SubnetNotFound", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Subnets":{ "type":"list", "member":{"shape":"SubnetId"} }, "Tag":{ "type":"structure", "required":["Key"], "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagDescription":{ "type":"structure", "members":{ "LoadBalancerName":{"shape":"AccessPointName"}, "Tags":{"shape":"TagList"} } }, "TagDescriptions":{ "type":"list", "member":{"shape":"TagDescription"} }, "TagKey":{ "type":"string", "max":128, "min":1, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "TagKeyList":{ "type":"list", "member":{"shape":"TagKeyOnly"}, "min":1 }, "TagKeyOnly":{ "type":"structure", "members":{ "Key":{"shape":"TagKey"} } }, "TagList":{ "type":"list", "member":{"shape":"Tag"}, "min":1 }, "TagValue":{ "type":"string", "max":256, "min":0, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "TooManyAccessPointsException":{ "type":"structure", "members":{ }, "error":{ "code":"TooManyLoadBalancers", "httpStatusCode":400, "senderFault":true }, "exception":true }, "TooManyPoliciesException":{ "type":"structure", "members":{ }, "error":{ "code":"TooManyPolicies", "httpStatusCode":400, "senderFault":true }, "exception":true }, "TooManyTagsException":{ "type":"structure", "members":{ }, "error":{ "code":"TooManyTags", "httpStatusCode":400, "senderFault":true }, "exception":true }, "UnhealthyThreshold":{ "type":"integer", "max":10, "min":2 }, "UnsupportedProtocolException":{ "type":"structure", "members":{ }, "error":{ "code":"UnsupportedProtocol", "httpStatusCode":400, "senderFault":true }, "exception":true }, "VPCId":{"type":"string"} } } aws-sdk-go-1.4.22/models/apis/elasticloadbalancing/2012-06-01/docs-2.json000066400000000000000000001765351300374646400251550ustar00rootroot00000000000000{ "version": "2.0", "service": "Elastic Load Balancing

        A load balancer distributes incoming traffic across your EC2 instances. This enables you to increase the availability of your application. The load balancer also monitors the health of its registered instances and ensures that it routes traffic only to healthy instances. You configure your load balancer to accept incoming traffic by specifying one or more listeners, which are configured with a protocol and port number for connections from clients to the load balancer and a protocol and port number for connections from the load balancer to the instances.

        Elastic Load Balancing supports two types of load balancers: Classic load balancers and Application load balancers (new). A Classic load balancer makes routing and load balancing decisions either at the transport layer (TCP/SSL) or the application layer (HTTP/HTTPS), and supports either EC2-Classic or a VPC. An Application load balancer makes routing and load balancing decisions at the application layer (HTTP/HTTPS), supports path-based routing, and can route requests to one or more ports on each EC2 instance or container instance in your virtual private cloud (VPC). For more information, see the .

        This reference covers the 2012-06-01 API, which supports Classic load balancers. The 2015-12-01 API supports Application load balancers.

        To get started, create a load balancer with one or more listeners using CreateLoadBalancer. Register your instances with the load balancer using RegisterInstancesWithLoadBalancer.

        All Elastic Load Balancing operations are idempotent, which means that they complete at most one time. If you repeat an operation, it succeeds with a 200 OK response code.

        ", "operations": { "AddTags": "

        Adds the specified tags to the specified load balancer. Each load balancer can have a maximum of 10 tags.

        Each tag consists of a key and an optional value. If a tag with the same key is already associated with the load balancer, AddTags updates its value.

        For more information, see Tag Your Classic Load Balancer in the Classic Load Balancers Guide.

        ", "ApplySecurityGroupsToLoadBalancer": "

        Associates one or more security groups with your load balancer in a virtual private cloud (VPC). The specified security groups override the previously associated security groups.

        For more information, see Security Groups for Load Balancers in a VPC in the Classic Load Balancers Guide.

        ", "AttachLoadBalancerToSubnets": "

        Adds one or more subnets to the set of configured subnets for the specified load balancer.

        The load balancer evenly distributes requests across all registered subnets. For more information, see Add or Remove Subnets for Your Load Balancer in a VPC in the Classic Load Balancers Guide.

        ", "ConfigureHealthCheck": "

        Specifies the health check settings to use when evaluating the health state of your EC2 instances.

        For more information, see Configure Health Checks for Your Load Balancer in the Classic Load Balancers Guide.

        ", "CreateAppCookieStickinessPolicy": "

        Generates a stickiness policy with sticky session lifetimes that follow that of an application-generated cookie. This policy can be associated only with HTTP/HTTPS listeners.

        This policy is similar to the policy created by CreateLBCookieStickinessPolicy, except that the lifetime of the special Elastic Load Balancing cookie, AWSELB, follows the lifetime of the application-generated cookie specified in the policy configuration. The load balancer only inserts a new stickiness cookie when the application response includes a new application cookie.

        If the application cookie is explicitly removed or expires, the session stops being sticky until a new application cookie is issued.

        For more information, see Application-Controlled Session Stickiness in the Classic Load Balancers Guide.

        ", "CreateLBCookieStickinessPolicy": "

        Generates a stickiness policy with sticky session lifetimes controlled by the lifetime of the browser (user-agent) or a specified expiration period. This policy can be associated only with HTTP/HTTPS listeners.

        When a load balancer implements this policy, the load balancer uses a special cookie to track the instance for each request. When the load balancer receives a request, it first checks to see if this cookie is present in the request. If so, the load balancer sends the request to the application server specified in the cookie. If not, the load balancer sends the request to a server that is chosen based on the existing load-balancing algorithm.

        A cookie is inserted into the response for binding subsequent requests from the same user to that server. The validity of the cookie is based on the cookie expiration time, which is specified in the policy configuration.

        For more information, see Duration-Based Session Stickiness in the Classic Load Balancers Guide.

        ", "CreateLoadBalancer": "

        Creates a Classic load balancer.

        You can add listeners, security groups, subnets, and tags when you create your load balancer, or you can add them later using CreateLoadBalancerListeners, ApplySecurityGroupsToLoadBalancer, AttachLoadBalancerToSubnets, and AddTags.

        To describe your current load balancers, see DescribeLoadBalancers. When you are finished with a load balancer, you can delete it using DeleteLoadBalancer.

        You can create up to 20 load balancers per region per account. You can request an increase for the number of load balancers for your account. For more information, see Limits for Your Classic Load Balancer in the Classic Load Balancers Guide.

        ", "CreateLoadBalancerListeners": "

        Creates one or more listeners for the specified load balancer. If a listener with the specified port does not already exist, it is created; otherwise, the properties of the new listener must match the properties of the existing listener.

        For more information, see Listeners for Your Classic Load Balancer in the Classic Load Balancers Guide.

        ", "CreateLoadBalancerPolicy": "

        Creates a policy with the specified attributes for the specified load balancer.

        Policies are settings that are saved for your load balancer and that can be applied to the listener or the application server, depending on the policy type.

        ", "DeleteLoadBalancer": "

        Deletes the specified load balancer.

        If you are attempting to recreate a load balancer, you must reconfigure all settings. The DNS name associated with a deleted load balancer are no longer usable. The name and associated DNS record of the deleted load balancer no longer exist and traffic sent to any of its IP addresses is no longer delivered to your instances.

        If the load balancer does not exist or has already been deleted, the call to DeleteLoadBalancer still succeeds.

        ", "DeleteLoadBalancerListeners": "

        Deletes the specified listeners from the specified load balancer.

        ", "DeleteLoadBalancerPolicy": "

        Deletes the specified policy from the specified load balancer. This policy must not be enabled for any listeners.

        ", "DeregisterInstancesFromLoadBalancer": "

        Deregisters the specified instances from the specified load balancer. After the instance is deregistered, it no longer receives traffic from the load balancer.

        You can use DescribeLoadBalancers to verify that the instance is deregistered from the load balancer.

        For more information, see Register or De-Register EC2 Instances in the Classic Load Balancers Guide.

        ", "DescribeInstanceHealth": "

        Describes the state of the specified instances with respect to the specified load balancer. If no instances are specified, the call describes the state of all instances that are currently registered with the load balancer. If instances are specified, their state is returned even if they are no longer registered with the load balancer. The state of terminated instances is not returned.

        ", "DescribeLoadBalancerAttributes": "

        Describes the attributes for the specified load balancer.

        ", "DescribeLoadBalancerPolicies": "

        Describes the specified policies.

        If you specify a load balancer name, the action returns the descriptions of all policies created for the load balancer. If you specify a policy name associated with your load balancer, the action returns the description of that policy. If you don't specify a load balancer name, the action returns descriptions of the specified sample policies, or descriptions of all sample policies. The names of the sample policies have the ELBSample- prefix.

        ", "DescribeLoadBalancerPolicyTypes": "

        Describes the specified load balancer policy types or all load balancer policy types.

        The description of each type indicates how it can be used. For example, some policies can be used only with layer 7 listeners, some policies can be used only with layer 4 listeners, and some policies can be used only with your EC2 instances.

        You can use CreateLoadBalancerPolicy to create a policy configuration for any of these policy types. Then, depending on the policy type, use either SetLoadBalancerPoliciesOfListener or SetLoadBalancerPoliciesForBackendServer to set the policy.

        ", "DescribeLoadBalancers": "

        Describes the specified the load balancers. If no load balancers are specified, the call describes all of your load balancers.

        ", "DescribeTags": "

        Describes the tags associated with the specified load balancers.

        ", "DetachLoadBalancerFromSubnets": "

        Removes the specified subnets from the set of configured subnets for the load balancer.

        After a subnet is removed, all EC2 instances registered with the load balancer in the removed subnet go into the OutOfService state. Then, the load balancer balances the traffic among the remaining routable subnets.

        ", "DisableAvailabilityZonesForLoadBalancer": "

        Removes the specified Availability Zones from the set of Availability Zones for the specified load balancer.

        There must be at least one Availability Zone registered with a load balancer at all times. After an Availability Zone is removed, all instances registered with the load balancer that are in the removed Availability Zone go into the OutOfService state. Then, the load balancer attempts to equally balance the traffic among its remaining Availability Zones.

        For more information, see Add or Remove Availability Zones in the Classic Load Balancers Guide.

        ", "EnableAvailabilityZonesForLoadBalancer": "

        Adds the specified Availability Zones to the set of Availability Zones for the specified load balancer.

        The load balancer evenly distributes requests across all its registered Availability Zones that contain instances.

        For more information, see Add or Remove Availability Zones in the Classic Load Balancers Guide.

        ", "ModifyLoadBalancerAttributes": "

        Modifies the attributes of the specified load balancer.

        You can modify the load balancer attributes, such as AccessLogs, ConnectionDraining, and CrossZoneLoadBalancing by either enabling or disabling them. Or, you can modify the load balancer attribute ConnectionSettings by specifying an idle connection timeout value for your load balancer.

        For more information, see the following in the Classic Load Balancers Guide:

        ", "RegisterInstancesWithLoadBalancer": "

        Adds the specified instances to the specified load balancer.

        The instance must be a running instance in the same network as the load balancer (EC2-Classic or the same VPC). If you have EC2-Classic instances and a load balancer in a VPC with ClassicLink enabled, you can link the EC2-Classic instances to that VPC and then register the linked EC2-Classic instances with the load balancer in the VPC.

        Note that RegisterInstanceWithLoadBalancer completes when the request has been registered. Instance registration takes a little time to complete. To check the state of the registered instances, use DescribeLoadBalancers or DescribeInstanceHealth.

        After the instance is registered, it starts receiving traffic and requests from the load balancer. Any instance that is not in one of the Availability Zones registered for the load balancer is moved to the OutOfService state. If an Availability Zone is added to the load balancer later, any instances registered with the load balancer move to the InService state.

        To deregister instances from a load balancer, use DeregisterInstancesFromLoadBalancer.

        For more information, see Register or De-Register EC2 Instances in the Classic Load Balancers Guide.

        ", "RemoveTags": "

        Removes one or more tags from the specified load balancer.

        ", "SetLoadBalancerListenerSSLCertificate": "

        Sets the certificate that terminates the specified listener's SSL connections. The specified certificate replaces any prior certificate that was used on the same load balancer and port.

        For more information about updating your SSL certificate, see Replace the SSL Certificate for Your Load Balancer in the Classic Load Balancers Guide.

        ", "SetLoadBalancerPoliciesForBackendServer": "

        Replaces the set of policies associated with the specified port on which the EC2 instance is listening with a new set of policies. At this time, only the back-end server authentication policy type can be applied to the instance ports; this policy type is composed of multiple public key policies.

        Each time you use SetLoadBalancerPoliciesForBackendServer to enable the policies, use the PolicyNames parameter to list the policies that you want to enable.

        You can use DescribeLoadBalancers or DescribeLoadBalancerPolicies to verify that the policy is associated with the EC2 instance.

        For more information about enabling back-end instance authentication, see Configure Back-end Instance Authentication in the Classic Load Balancers Guide. For more information about Proxy Protocol, see Configure Proxy Protocol Support in the Classic Load Balancers Guide.

        ", "SetLoadBalancerPoliciesOfListener": "

        Replaces the current set of policies for the specified load balancer port with the specified set of policies.

        To enable back-end server authentication, use SetLoadBalancerPoliciesForBackendServer.

        For more information about setting policies, see Update the SSL Negotiation Configuration, Duration-Based Session Stickiness, and Application-Controlled Session Stickiness in the Classic Load Balancers Guide.

        " }, "shapes": { "AccessLog": { "base": "

        Information about the AccessLog attribute.

        ", "refs": { "LoadBalancerAttributes$AccessLog": "

        If enabled, the load balancer captures detailed information of all requests and delivers the information to the Amazon S3 bucket that you specify.

        For more information, see Enable Access Logs in the Classic Load Balancers Guide.

        " } }, "AccessLogEnabled": { "base": null, "refs": { "AccessLog$Enabled": "

        Specifies whether access logs are enabled for the load balancer.

        " } }, "AccessLogInterval": { "base": null, "refs": { "AccessLog$EmitInterval": "

        The interval for publishing the access logs. You can specify an interval of either 5 minutes or 60 minutes.

        Default: 60 minutes

        " } }, "AccessLogPrefix": { "base": null, "refs": { "AccessLog$S3BucketPrefix": "

        The logical hierarchy you created for your Amazon S3 bucket, for example my-bucket-prefix/prod. If the prefix is not provided, the log is placed at the root level of the bucket.

        " } }, "AccessPointName": { "base": null, "refs": { "AddAvailabilityZonesInput$LoadBalancerName": "

        The name of the load balancer.

        ", "ApplySecurityGroupsToLoadBalancerInput$LoadBalancerName": "

        The name of the load balancer.

        ", "AttachLoadBalancerToSubnetsInput$LoadBalancerName": "

        The name of the load balancer.

        ", "ConfigureHealthCheckInput$LoadBalancerName": "

        The name of the load balancer.

        ", "CreateAccessPointInput$LoadBalancerName": "

        The name of the load balancer.

        This name must be unique within your set of load balancers for the region, must have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and cannot begin or end with a hyphen.

        ", "CreateAppCookieStickinessPolicyInput$LoadBalancerName": "

        The name of the load balancer.

        ", "CreateLBCookieStickinessPolicyInput$LoadBalancerName": "

        The name of the load balancer.

        ", "CreateLoadBalancerListenerInput$LoadBalancerName": "

        The name of the load balancer.

        ", "CreateLoadBalancerPolicyInput$LoadBalancerName": "

        The name of the load balancer.

        ", "DeleteAccessPointInput$LoadBalancerName": "

        The name of the load balancer.

        ", "DeleteLoadBalancerListenerInput$LoadBalancerName": "

        The name of the load balancer.

        ", "DeleteLoadBalancerPolicyInput$LoadBalancerName": "

        The name of the load balancer.

        ", "DeregisterEndPointsInput$LoadBalancerName": "

        The name of the load balancer.

        ", "DescribeEndPointStateInput$LoadBalancerName": "

        The name of the load balancer.

        ", "DescribeLoadBalancerAttributesInput$LoadBalancerName": "

        The name of the load balancer.

        ", "DescribeLoadBalancerPoliciesInput$LoadBalancerName": "

        The name of the load balancer.

        ", "DetachLoadBalancerFromSubnetsInput$LoadBalancerName": "

        The name of the load balancer.

        ", "LoadBalancerDescription$LoadBalancerName": "

        The name of the load balancer.

        ", "LoadBalancerNames$member": null, "LoadBalancerNamesMax20$member": null, "ModifyLoadBalancerAttributesInput$LoadBalancerName": "

        The name of the load balancer.

        ", "ModifyLoadBalancerAttributesOutput$LoadBalancerName": "

        The name of the load balancer.

        ", "RegisterEndPointsInput$LoadBalancerName": "

        The name of the load balancer.

        ", "RemoveAvailabilityZonesInput$LoadBalancerName": "

        The name of the load balancer.

        ", "SetLoadBalancerListenerSSLCertificateInput$LoadBalancerName": "

        The name of the load balancer.

        ", "SetLoadBalancerPoliciesForBackendServerInput$LoadBalancerName": "

        The name of the load balancer.

        ", "SetLoadBalancerPoliciesOfListenerInput$LoadBalancerName": "

        The name of the load balancer.

        ", "TagDescription$LoadBalancerName": "

        The name of the load balancer.

        " } }, "AccessPointNotFoundException": { "base": "

        The specified load balancer does not exist.

        ", "refs": { } }, "AccessPointPort": { "base": null, "refs": { "Listener$LoadBalancerPort": "

        The port on which the load balancer is listening. On EC2-VPC, you can specify any port from the range 1-65535. On EC2-Classic, you can specify any port from the following list: 25, 80, 443, 465, 587, 1024-65535.

        ", "Ports$member": null, "SetLoadBalancerListenerSSLCertificateInput$LoadBalancerPort": "

        The port that uses the specified SSL certificate.

        ", "SetLoadBalancerPoliciesOfListenerInput$LoadBalancerPort": "

        The external port of the load balancer.

        " } }, "AddAvailabilityZonesInput": { "base": "

        Contains the parameters for EnableAvailabilityZonesForLoadBalancer.

        ", "refs": { } }, "AddAvailabilityZonesOutput": { "base": "

        Contains the output of EnableAvailabilityZonesForLoadBalancer.

        ", "refs": { } }, "AddTagsInput": { "base": "

        Contains the parameters for AddTags.

        ", "refs": { } }, "AddTagsOutput": { "base": "

        Contains the output of AddTags.

        ", "refs": { } }, "AdditionalAttribute": { "base": "

        This data type is reserved.

        ", "refs": { "AdditionalAttributes$member": null } }, "AdditionalAttributeKey": { "base": null, "refs": { "AdditionalAttribute$Key": "

        This parameter is reserved.

        " } }, "AdditionalAttributeValue": { "base": null, "refs": { "AdditionalAttribute$Value": "

        This parameter is reserved.

        " } }, "AdditionalAttributes": { "base": null, "refs": { "LoadBalancerAttributes$AdditionalAttributes": "

        This parameter is reserved.

        " } }, "AppCookieStickinessPolicies": { "base": null, "refs": { "Policies$AppCookieStickinessPolicies": "

        The stickiness policies created using CreateAppCookieStickinessPolicy.

        " } }, "AppCookieStickinessPolicy": { "base": "

        Information about a policy for application-controlled session stickiness.

        ", "refs": { "AppCookieStickinessPolicies$member": null } }, "ApplySecurityGroupsToLoadBalancerInput": { "base": "

        Contains the parameters for ApplySecurityGroupsToLoadBalancer.

        ", "refs": { } }, "ApplySecurityGroupsToLoadBalancerOutput": { "base": "

        Contains the output of ApplySecurityGroupsToLoadBalancer.

        ", "refs": { } }, "AttachLoadBalancerToSubnetsInput": { "base": "

        Contains the parameters for AttachLoaBalancerToSubnets.

        ", "refs": { } }, "AttachLoadBalancerToSubnetsOutput": { "base": "

        Contains the output of AttachLoadBalancerToSubnets.

        ", "refs": { } }, "AttributeName": { "base": null, "refs": { "PolicyAttribute$AttributeName": "

        The name of the attribute.

        ", "PolicyAttributeDescription$AttributeName": "

        The name of the attribute.

        ", "PolicyAttributeTypeDescription$AttributeName": "

        The name of the attribute.

        " } }, "AttributeType": { "base": null, "refs": { "PolicyAttributeTypeDescription$AttributeType": "

        The type of the attribute. For example, Boolean or Integer.

        " } }, "AttributeValue": { "base": null, "refs": { "PolicyAttribute$AttributeValue": "

        The value of the attribute.

        ", "PolicyAttributeDescription$AttributeValue": "

        The value of the attribute.

        " } }, "AvailabilityZone": { "base": null, "refs": { "AvailabilityZones$member": null } }, "AvailabilityZones": { "base": null, "refs": { "AddAvailabilityZonesInput$AvailabilityZones": "

        The Availability Zones. These must be in the same region as the load balancer.

        ", "AddAvailabilityZonesOutput$AvailabilityZones": "

        The updated list of Availability Zones for the load balancer.

        ", "CreateAccessPointInput$AvailabilityZones": "

        One or more Availability Zones from the same region as the load balancer.

        You must specify at least one Availability Zone.

        You can add more Availability Zones after you create the load balancer using EnableAvailabilityZonesForLoadBalancer.

        ", "LoadBalancerDescription$AvailabilityZones": "

        The Availability Zones for the load balancer.

        ", "RemoveAvailabilityZonesInput$AvailabilityZones": "

        The Availability Zones.

        ", "RemoveAvailabilityZonesOutput$AvailabilityZones": "

        The remaining Availability Zones for the load balancer.

        " } }, "BackendServerDescription": { "base": "

        Information about the configuration of an EC2 instance.

        ", "refs": { "BackendServerDescriptions$member": null } }, "BackendServerDescriptions": { "base": null, "refs": { "LoadBalancerDescription$BackendServerDescriptions": "

        Information about your EC2 instances.

        " } }, "Cardinality": { "base": null, "refs": { "PolicyAttributeTypeDescription$Cardinality": "

        The cardinality of the attribute.

        Valid values:

        • ONE(1) : Single value required

        • ZERO_OR_ONE(0..1) : Up to one value is allowed

        • ZERO_OR_MORE(0..*) : Optional. Multiple values are allowed

        • ONE_OR_MORE(1..*0) : Required. Multiple values are allowed

        " } }, "CertificateNotFoundException": { "base": "

        The specified ARN does not refer to a valid SSL certificate in AWS Identity and Access Management (IAM) or AWS Certificate Manager (ACM). Note that if you recently uploaded the certificate to IAM, this error might indicate that the certificate is not fully available yet.

        ", "refs": { } }, "ConfigureHealthCheckInput": { "base": "

        Contains the parameters for ConfigureHealthCheck.

        ", "refs": { } }, "ConfigureHealthCheckOutput": { "base": "

        Contains the output of ConfigureHealthCheck.

        ", "refs": { } }, "ConnectionDraining": { "base": "

        Information about the ConnectionDraining attribute.

        ", "refs": { "LoadBalancerAttributes$ConnectionDraining": "

        If enabled, the load balancer allows existing requests to complete before the load balancer shifts traffic away from a deregistered or unhealthy instance.

        For more information, see Configure Connection Draining in the Classic Load Balancers Guide.

        " } }, "ConnectionDrainingEnabled": { "base": null, "refs": { "ConnectionDraining$Enabled": "

        Specifies whether connection draining is enabled for the load balancer.

        " } }, "ConnectionDrainingTimeout": { "base": null, "refs": { "ConnectionDraining$Timeout": "

        The maximum time, in seconds, to keep the existing connections open before deregistering the instances.

        " } }, "ConnectionSettings": { "base": "

        Information about the ConnectionSettings attribute.

        ", "refs": { "LoadBalancerAttributes$ConnectionSettings": "

        If enabled, the load balancer allows the connections to remain idle (no data is sent over the connection) for the specified duration.

        By default, Elastic Load Balancing maintains a 60-second idle connection timeout for both front-end and back-end connections of your load balancer. For more information, see Configure Idle Connection Timeout in the Classic Load Balancers Guide.

        " } }, "CookieExpirationPeriod": { "base": null, "refs": { "CreateLBCookieStickinessPolicyInput$CookieExpirationPeriod": "

        The time period, in seconds, after which the cookie should be considered stale. If you do not specify this parameter, the default value is 0, which indicates that the sticky session should last for the duration of the browser session.

        ", "LBCookieStickinessPolicy$CookieExpirationPeriod": "

        The time period, in seconds, after which the cookie should be considered stale. If this parameter is not specified, the stickiness session lasts for the duration of the browser session.

        " } }, "CookieName": { "base": null, "refs": { "AppCookieStickinessPolicy$CookieName": "

        The name of the application cookie used for stickiness.

        ", "CreateAppCookieStickinessPolicyInput$CookieName": "

        The name of the application cookie used for stickiness.

        " } }, "CreateAccessPointInput": { "base": "

        Contains the parameters for CreateLoadBalancer.

        ", "refs": { } }, "CreateAccessPointOutput": { "base": "

        Contains the output for CreateLoadBalancer.

        ", "refs": { } }, "CreateAppCookieStickinessPolicyInput": { "base": "

        Contains the parameters for CreateAppCookieStickinessPolicy.

        ", "refs": { } }, "CreateAppCookieStickinessPolicyOutput": { "base": "

        Contains the output for CreateAppCookieStickinessPolicy.

        ", "refs": { } }, "CreateLBCookieStickinessPolicyInput": { "base": "

        Contains the parameters for CreateLBCookieStickinessPolicy.

        ", "refs": { } }, "CreateLBCookieStickinessPolicyOutput": { "base": "

        Contains the output for CreateLBCookieStickinessPolicy.

        ", "refs": { } }, "CreateLoadBalancerListenerInput": { "base": "

        Contains the parameters for CreateLoadBalancerListeners.

        ", "refs": { } }, "CreateLoadBalancerListenerOutput": { "base": "

        Contains the parameters for CreateLoadBalancerListener.

        ", "refs": { } }, "CreateLoadBalancerPolicyInput": { "base": "

        Contains the parameters for CreateLoadBalancerPolicy.

        ", "refs": { } }, "CreateLoadBalancerPolicyOutput": { "base": "

        Contains the output of CreateLoadBalancerPolicy.

        ", "refs": { } }, "CreatedTime": { "base": null, "refs": { "LoadBalancerDescription$CreatedTime": "

        The date and time the load balancer was created.

        " } }, "CrossZoneLoadBalancing": { "base": "

        Information about the CrossZoneLoadBalancing attribute.

        ", "refs": { "LoadBalancerAttributes$CrossZoneLoadBalancing": "

        If enabled, the load balancer routes the request traffic evenly across all instances regardless of the Availability Zones.

        For more information, see Configure Cross-Zone Load Balancing in the Classic Load Balancers Guide.

        " } }, "CrossZoneLoadBalancingEnabled": { "base": null, "refs": { "CrossZoneLoadBalancing$Enabled": "

        Specifies whether cross-zone load balancing is enabled for the load balancer.

        " } }, "DNSName": { "base": null, "refs": { "CreateAccessPointOutput$DNSName": "

        The DNS name of the load balancer.

        ", "LoadBalancerDescription$DNSName": "

        The DNS name of the load balancer.

        ", "LoadBalancerDescription$CanonicalHostedZoneName": "

        The DNS name of the load balancer.

        For more information, see Configure a Custom Domain Name in the Classic Load Balancers Guide.

        ", "LoadBalancerDescription$CanonicalHostedZoneNameID": "

        The ID of the Amazon Route 53 hosted zone for the load balancer.

        " } }, "DefaultValue": { "base": null, "refs": { "PolicyAttributeTypeDescription$DefaultValue": "

        The default value of the attribute, if applicable.

        " } }, "DeleteAccessPointInput": { "base": "

        Contains the parameters for DeleteLoadBalancer.

        ", "refs": { } }, "DeleteAccessPointOutput": { "base": "

        Contains the output of DeleteLoadBalancer.

        ", "refs": { } }, "DeleteLoadBalancerListenerInput": { "base": "

        Contains the parameters for DeleteLoadBalancerListeners.

        ", "refs": { } }, "DeleteLoadBalancerListenerOutput": { "base": "

        Contains the output of DeleteLoadBalancerListeners.

        ", "refs": { } }, "DeleteLoadBalancerPolicyInput": { "base": "

        Contains the parameters for DeleteLoadBalancerPolicy.

        ", "refs": { } }, "DeleteLoadBalancerPolicyOutput": { "base": "

        Contains the output of DeleteLoadBalancerPolicy.

        ", "refs": { } }, "DependencyThrottleException": { "base": null, "refs": { } }, "DeregisterEndPointsInput": { "base": "

        Contains the parameters for DeregisterInstancesFromLoadBalancer.

        ", "refs": { } }, "DeregisterEndPointsOutput": { "base": "

        Contains the output of DeregisterInstancesFromLoadBalancer.

        ", "refs": { } }, "DescribeAccessPointsInput": { "base": "

        Contains the parameters for DescribeLoadBalancers.

        ", "refs": { } }, "DescribeAccessPointsOutput": { "base": "

        Contains the parameters for DescribeLoadBalancers.

        ", "refs": { } }, "DescribeEndPointStateInput": { "base": "

        Contains the parameters for DescribeInstanceHealth.

        ", "refs": { } }, "DescribeEndPointStateOutput": { "base": "

        Contains the output for DescribeInstanceHealth.

        ", "refs": { } }, "DescribeLoadBalancerAttributesInput": { "base": "

        Contains the parameters for DescribeLoadBalancerAttributes.

        ", "refs": { } }, "DescribeLoadBalancerAttributesOutput": { "base": "

        Contains the output of DescribeLoadBalancerAttributes.

        ", "refs": { } }, "DescribeLoadBalancerPoliciesInput": { "base": "

        Contains the parameters for DescribeLoadBalancerPolicies.

        ", "refs": { } }, "DescribeLoadBalancerPoliciesOutput": { "base": "

        Contains the output of DescribeLoadBalancerPolicies.

        ", "refs": { } }, "DescribeLoadBalancerPolicyTypesInput": { "base": "

        Contains the parameters for DescribeLoadBalancerPolicyTypes.

        ", "refs": { } }, "DescribeLoadBalancerPolicyTypesOutput": { "base": "

        Contains the output of DescribeLoadBalancerPolicyTypes.

        ", "refs": { } }, "DescribeTagsInput": { "base": "

        Contains the parameters for DescribeTags.

        ", "refs": { } }, "DescribeTagsOutput": { "base": "

        Contains the output for DescribeTags.

        ", "refs": { } }, "Description": { "base": null, "refs": { "InstanceState$Description": "

        A description of the instance state. This string can contain one or more of the following messages.

        • N/A

        • A transient error occurred. Please try again later.

        • Instance has failed at least the UnhealthyThreshold number of health checks consecutively.

        • Instance has not passed the configured HealthyThreshold number of health checks consecutively.

        • Instance registration is still in progress.

        • Instance is in the EC2 Availability Zone for which LoadBalancer is not configured to route traffic to.

        • Instance is not currently registered with the LoadBalancer.

        • Instance deregistration currently in progress.

        • Disable Availability Zone is currently in progress.

        • Instance is in pending state.

        • Instance is in stopped state.

        • Instance is in terminated state.

        ", "PolicyAttributeTypeDescription$Description": "

        A description of the attribute.

        ", "PolicyTypeDescription$Description": "

        A description of the policy type.

        " } }, "DetachLoadBalancerFromSubnetsInput": { "base": "

        Contains the parameters for DetachLoadBalancerFromSubnets.

        ", "refs": { } }, "DetachLoadBalancerFromSubnetsOutput": { "base": "

        Contains the output of DetachLoadBalancerFromSubnets.

        ", "refs": { } }, "DuplicateAccessPointNameException": { "base": "

        The specified load balancer name already exists for this account.

        ", "refs": { } }, "DuplicateListenerException": { "base": "

        A listener already exists for the specified load balancer name and port, but with a different instance port, protocol, or SSL certificate.

        ", "refs": { } }, "DuplicatePolicyNameException": { "base": "

        A policy with the specified name already exists for this load balancer.

        ", "refs": { } }, "DuplicateTagKeysException": { "base": "

        A tag key was specified more than once.

        ", "refs": { } }, "EndPointPort": { "base": null, "refs": { "SetLoadBalancerPoliciesForBackendServerInput$InstancePort": "

        The port number associated with the EC2 instance.

        " } }, "HealthCheck": { "base": "

        Information about a health check.

        ", "refs": { "ConfigureHealthCheckInput$HealthCheck": "

        The configuration information.

        ", "ConfigureHealthCheckOutput$HealthCheck": "

        The updated health check.

        ", "LoadBalancerDescription$HealthCheck": "

        Information about the health checks conducted on the load balancer.

        " } }, "HealthCheckInterval": { "base": null, "refs": { "HealthCheck$Interval": "

        The approximate interval, in seconds, between health checks of an individual instance.

        " } }, "HealthCheckTarget": { "base": null, "refs": { "HealthCheck$Target": "

        The instance being checked. The protocol is either TCP, HTTP, HTTPS, or SSL. The range of valid ports is one (1) through 65535.

        TCP is the default, specified as a TCP: port pair, for example \"TCP:5000\". In this case, a health check simply attempts to open a TCP connection to the instance on the specified port. Failure to connect within the configured timeout is considered unhealthy.

        SSL is also specified as SSL: port pair, for example, SSL:5000.

        For HTTP/HTTPS, you must include a ping path in the string. HTTP is specified as a HTTP:port;/;PathToPing; grouping, for example \"HTTP:80/weather/us/wa/seattle\". In this case, a HTTP GET request is issued to the instance on the given port and path. Any answer other than \"200 OK\" within the timeout period is considered unhealthy.

        The total length of the HTTP ping target must be 1024 16-bit Unicode characters or less.

        " } }, "HealthCheckTimeout": { "base": null, "refs": { "HealthCheck$Timeout": "

        The amount of time, in seconds, during which no response means a failed health check.

        This value must be less than the Interval value.

        " } }, "HealthyThreshold": { "base": null, "refs": { "HealthCheck$HealthyThreshold": "

        The number of consecutive health checks successes required before moving the instance to the Healthy state.

        " } }, "IdleTimeout": { "base": null, "refs": { "ConnectionSettings$IdleTimeout": "

        The time, in seconds, that the connection is allowed to be idle (no data has been sent over the connection) before it is closed by the load balancer.

        " } }, "Instance": { "base": "

        The ID of an EC2 instance.

        ", "refs": { "Instances$member": null } }, "InstanceId": { "base": null, "refs": { "Instance$InstanceId": "

        The instance ID.

        ", "InstanceState$InstanceId": "

        The ID of the instance.

        " } }, "InstancePort": { "base": null, "refs": { "BackendServerDescription$InstancePort": "

        The port on which the EC2 instance is listening.

        ", "Listener$InstancePort": "

        The port on which the instance is listening.

        " } }, "InstanceState": { "base": "

        Information about the state of an EC2 instance.

        ", "refs": { "InstanceStates$member": null } }, "InstanceStates": { "base": null, "refs": { "DescribeEndPointStateOutput$InstanceStates": "

        Information about the health of the instances.

        " } }, "Instances": { "base": null, "refs": { "DeregisterEndPointsInput$Instances": "

        The IDs of the instances.

        ", "DeregisterEndPointsOutput$Instances": "

        The remaining instances registered with the load balancer.

        ", "DescribeEndPointStateInput$Instances": "

        The IDs of the instances.

        ", "LoadBalancerDescription$Instances": "

        The IDs of the instances for the load balancer.

        ", "RegisterEndPointsInput$Instances": "

        The IDs of the instances.

        ", "RegisterEndPointsOutput$Instances": "

        The updated list of instances for the load balancer.

        " } }, "InvalidConfigurationRequestException": { "base": "

        The requested configuration change is not valid.

        ", "refs": { } }, "InvalidEndPointException": { "base": "

        The specified endpoint is not valid.

        ", "refs": { } }, "InvalidSchemeException": { "base": "

        The specified value for the schema is not valid. You can only specify a scheme for load balancers in a VPC.

        ", "refs": { } }, "InvalidSecurityGroupException": { "base": "

        One or more of the specified security groups do not exist.

        ", "refs": { } }, "InvalidSubnetException": { "base": "

        The specified VPC has no associated Internet gateway.

        ", "refs": { } }, "LBCookieStickinessPolicies": { "base": null, "refs": { "Policies$LBCookieStickinessPolicies": "

        The stickiness policies created using CreateLBCookieStickinessPolicy.

        " } }, "LBCookieStickinessPolicy": { "base": "

        Information about a policy for duration-based session stickiness.

        ", "refs": { "LBCookieStickinessPolicies$member": null } }, "Listener": { "base": "

        Information about a listener.

        For information about the protocols and the ports supported by Elastic Load Balancing, see Listeners for Your Classic Load Balancer in the Classic Load Balancers Guide.

        ", "refs": { "ListenerDescription$Listener": null, "Listeners$member": null } }, "ListenerDescription": { "base": "

        The policies enabled for a listener.

        ", "refs": { "ListenerDescriptions$member": null } }, "ListenerDescriptions": { "base": null, "refs": { "LoadBalancerDescription$ListenerDescriptions": "

        The listeners for the load balancer.

        " } }, "ListenerNotFoundException": { "base": "

        The load balancer does not have a listener configured at the specified port.

        ", "refs": { } }, "Listeners": { "base": null, "refs": { "CreateAccessPointInput$Listeners": "

        The listeners.

        For more information, see Listeners for Your Classic Load Balancer in the Classic Load Balancers Guide.

        ", "CreateLoadBalancerListenerInput$Listeners": "

        The listeners.

        " } }, "LoadBalancerAttributeNotFoundException": { "base": "

        The specified load balancer attribute does not exist.

        ", "refs": { } }, "LoadBalancerAttributes": { "base": "

        The attributes for a load balancer.

        ", "refs": { "DescribeLoadBalancerAttributesOutput$LoadBalancerAttributes": "

        Information about the load balancer attributes.

        ", "ModifyLoadBalancerAttributesInput$LoadBalancerAttributes": "

        The attributes of the load balancer.

        ", "ModifyLoadBalancerAttributesOutput$LoadBalancerAttributes": null } }, "LoadBalancerDescription": { "base": "

        Information about a load balancer.

        ", "refs": { "LoadBalancerDescriptions$member": null } }, "LoadBalancerDescriptions": { "base": null, "refs": { "DescribeAccessPointsOutput$LoadBalancerDescriptions": "

        Information about the load balancers.

        " } }, "LoadBalancerNames": { "base": null, "refs": { "AddTagsInput$LoadBalancerNames": "

        The name of the load balancer. You can specify one load balancer only.

        ", "DescribeAccessPointsInput$LoadBalancerNames": "

        The names of the load balancers.

        ", "RemoveTagsInput$LoadBalancerNames": "

        The name of the load balancer. You can specify a maximum of one load balancer name.

        " } }, "LoadBalancerNamesMax20": { "base": null, "refs": { "DescribeTagsInput$LoadBalancerNames": "

        The names of the load balancers.

        " } }, "LoadBalancerScheme": { "base": null, "refs": { "CreateAccessPointInput$Scheme": "

        The type of a load balancer. Valid only for load balancers in a VPC.

        By default, Elastic Load Balancing creates an Internet-facing load balancer with a DNS name that resolves to public IP addresses. For more information about Internet-facing and Internal load balancers, see Load Balancer Scheme in the Elastic Load Balancing User Guide.

        Specify internal to create a load balancer with a DNS name that resolves to private IP addresses.

        ", "LoadBalancerDescription$Scheme": "

        The type of load balancer. Valid only for load balancers in a VPC.

        If Scheme is internet-facing, the load balancer has a public DNS name that resolves to a public IP address.

        If Scheme is internal, the load balancer has a public DNS name that resolves to a private IP address.

        " } }, "Marker": { "base": null, "refs": { "DescribeAccessPointsInput$Marker": "

        The marker for the next set of results. (You received this marker from a previous call.)

        ", "DescribeAccessPointsOutput$NextMarker": "

        The marker to use when requesting the next set of results. If there are no additional results, the string is empty.

        " } }, "ModifyLoadBalancerAttributesInput": { "base": "

        Contains the parameters for ModifyLoadBalancerAttributes.

        ", "refs": { } }, "ModifyLoadBalancerAttributesOutput": { "base": "

        Contains the output of ModifyLoadBalancerAttributes.

        ", "refs": { } }, "PageSize": { "base": null, "refs": { "DescribeAccessPointsInput$PageSize": "

        The maximum number of results to return with this call (a number from 1 to 400). The default is 400.

        " } }, "Policies": { "base": "

        The policies for a load balancer.

        ", "refs": { "LoadBalancerDescription$Policies": "

        The policies defined for the load balancer.

        " } }, "PolicyAttribute": { "base": "

        Information about a policy attribute.

        ", "refs": { "PolicyAttributes$member": null } }, "PolicyAttributeDescription": { "base": "

        Information about a policy attribute.

        ", "refs": { "PolicyAttributeDescriptions$member": null } }, "PolicyAttributeDescriptions": { "base": null, "refs": { "PolicyDescription$PolicyAttributeDescriptions": "

        The policy attributes.

        " } }, "PolicyAttributeTypeDescription": { "base": "

        Information about a policy attribute type.

        ", "refs": { "PolicyAttributeTypeDescriptions$member": null } }, "PolicyAttributeTypeDescriptions": { "base": null, "refs": { "PolicyTypeDescription$PolicyAttributeTypeDescriptions": "

        The description of the policy attributes associated with the policies defined by Elastic Load Balancing.

        " } }, "PolicyAttributes": { "base": null, "refs": { "CreateLoadBalancerPolicyInput$PolicyAttributes": "

        The policy attributes.

        " } }, "PolicyDescription": { "base": "

        Information about a policy.

        ", "refs": { "PolicyDescriptions$member": null } }, "PolicyDescriptions": { "base": null, "refs": { "DescribeLoadBalancerPoliciesOutput$PolicyDescriptions": "

        Information about the policies.

        " } }, "PolicyName": { "base": null, "refs": { "AppCookieStickinessPolicy$PolicyName": "

        The mnemonic name for the policy being created. The name must be unique within a set of policies for this load balancer.

        ", "CreateAppCookieStickinessPolicyInput$PolicyName": "

        The name of the policy being created. Policy names must consist of alphanumeric characters and dashes (-). This name must be unique within the set of policies for this load balancer.

        ", "CreateLBCookieStickinessPolicyInput$PolicyName": "

        The name of the policy being created. Policy names must consist of alphanumeric characters and dashes (-). This name must be unique within the set of policies for this load balancer.

        ", "CreateLoadBalancerPolicyInput$PolicyName": "

        The name of the load balancer policy to be created. This name must be unique within the set of policies for this load balancer.

        ", "DeleteLoadBalancerPolicyInput$PolicyName": "

        The name of the policy.

        ", "LBCookieStickinessPolicy$PolicyName": "

        The name of the policy. This name must be unique within the set of policies for this load balancer.

        ", "PolicyDescription$PolicyName": "

        The name of the policy.

        ", "PolicyNames$member": null } }, "PolicyNames": { "base": null, "refs": { "BackendServerDescription$PolicyNames": "

        The names of the policies enabled for the EC2 instance.

        ", "DescribeLoadBalancerPoliciesInput$PolicyNames": "

        The names of the policies.

        ", "ListenerDescription$PolicyNames": "

        The policies. If there are no policies enabled, the list is empty.

        ", "Policies$OtherPolicies": "

        The policies other than the stickiness policies.

        ", "SetLoadBalancerPoliciesForBackendServerInput$PolicyNames": "

        The names of the policies. If the list is empty, then all current polices are removed from the EC2 instance.

        ", "SetLoadBalancerPoliciesOfListenerInput$PolicyNames": "

        The names of the policies. This list must include all policies to be enabled. If you omit a policy that is currently enabled, it is disabled. If the list is empty, all current policies are disabled.

        " } }, "PolicyNotFoundException": { "base": "

        One or more of the specified policies do not exist.

        ", "refs": { } }, "PolicyTypeDescription": { "base": "

        Information about a policy type.

        ", "refs": { "PolicyTypeDescriptions$member": null } }, "PolicyTypeDescriptions": { "base": null, "refs": { "DescribeLoadBalancerPolicyTypesOutput$PolicyTypeDescriptions": "

        Information about the policy types.

        " } }, "PolicyTypeName": { "base": null, "refs": { "CreateLoadBalancerPolicyInput$PolicyTypeName": "

        The name of the base policy type. To get the list of policy types, use DescribeLoadBalancerPolicyTypes.

        ", "PolicyDescription$PolicyTypeName": "

        The name of the policy type.

        ", "PolicyTypeDescription$PolicyTypeName": "

        The name of the policy type.

        ", "PolicyTypeNames$member": null } }, "PolicyTypeNames": { "base": null, "refs": { "DescribeLoadBalancerPolicyTypesInput$PolicyTypeNames": "

        The names of the policy types. If no names are specified, describes all policy types defined by Elastic Load Balancing.

        " } }, "PolicyTypeNotFoundException": { "base": "

        One or more of the specified policy types do not exist.

        ", "refs": { } }, "Ports": { "base": null, "refs": { "DeleteLoadBalancerListenerInput$LoadBalancerPorts": "

        The client port numbers of the listeners.

        " } }, "Protocol": { "base": null, "refs": { "Listener$Protocol": "

        The load balancer transport protocol to use for routing: HTTP, HTTPS, TCP, or SSL.

        ", "Listener$InstanceProtocol": "

        The protocol to use for routing traffic to instances: HTTP, HTTPS, TCP, or SSL.

        If the front-end protocol is HTTP, HTTPS, TCP, or SSL, InstanceProtocol must be at the same protocol.

        If there is another listener with the same InstancePort whose InstanceProtocol is secure, (HTTPS or SSL), the listener's InstanceProtocol must also be secure.

        If there is another listener with the same InstancePort whose InstanceProtocol is HTTP or TCP, the listener's InstanceProtocol must be HTTP or TCP.

        " } }, "ReasonCode": { "base": null, "refs": { "InstanceState$ReasonCode": "

        Information about the cause of OutOfService instances. Specifically, whether the cause is Elastic Load Balancing or the instance.

        Valid values: ELB | Instance | N/A

        " } }, "RegisterEndPointsInput": { "base": "

        Contains the parameters for RegisterInstancesWithLoadBalancer.

        ", "refs": { } }, "RegisterEndPointsOutput": { "base": "

        Contains the output of RegisterInstancesWithLoadBalancer.

        ", "refs": { } }, "RemoveAvailabilityZonesInput": { "base": "

        Contains the parameters for DisableAvailabilityZonesForLoadBalancer.

        ", "refs": { } }, "RemoveAvailabilityZonesOutput": { "base": "

        Contains the output for DisableAvailabilityZonesForLoadBalancer.

        ", "refs": { } }, "RemoveTagsInput": { "base": "

        Contains the parameters for RemoveTags.

        ", "refs": { } }, "RemoveTagsOutput": { "base": "

        Contains the output of RemoveTags.

        ", "refs": { } }, "S3BucketName": { "base": null, "refs": { "AccessLog$S3BucketName": "

        The name of the Amazon S3 bucket where the access logs are stored.

        " } }, "SSLCertificateId": { "base": null, "refs": { "Listener$SSLCertificateId": "

        The Amazon Resource Name (ARN) of the server certificate.

        ", "SetLoadBalancerListenerSSLCertificateInput$SSLCertificateId": "

        The Amazon Resource Name (ARN) of the SSL certificate.

        " } }, "SecurityGroupId": { "base": null, "refs": { "SecurityGroups$member": null } }, "SecurityGroupName": { "base": null, "refs": { "SourceSecurityGroup$GroupName": "

        The name of the security group.

        " } }, "SecurityGroupOwnerAlias": { "base": null, "refs": { "SourceSecurityGroup$OwnerAlias": "

        The owner of the security group.

        " } }, "SecurityGroups": { "base": null, "refs": { "ApplySecurityGroupsToLoadBalancerInput$SecurityGroups": "

        The IDs of the security groups to associate with the load balancer. Note that you cannot specify the name of the security group.

        ", "ApplySecurityGroupsToLoadBalancerOutput$SecurityGroups": "

        The IDs of the security groups associated with the load balancer.

        ", "CreateAccessPointInput$SecurityGroups": "

        The IDs of the security groups to assign to the load balancer.

        ", "LoadBalancerDescription$SecurityGroups": "

        The security groups for the load balancer. Valid only for load balancers in a VPC.

        " } }, "SetLoadBalancerListenerSSLCertificateInput": { "base": "

        Contains the parameters for SetLoadBalancerListenerSSLCertificate.

        ", "refs": { } }, "SetLoadBalancerListenerSSLCertificateOutput": { "base": "

        Contains the output of SetLoadBalancerListenerSSLCertificate.

        ", "refs": { } }, "SetLoadBalancerPoliciesForBackendServerInput": { "base": "

        Contains the parameters for SetLoadBalancerPoliciesForBackendServer.

        ", "refs": { } }, "SetLoadBalancerPoliciesForBackendServerOutput": { "base": "

        Contains the output of SetLoadBalancerPoliciesForBackendServer.

        ", "refs": { } }, "SetLoadBalancerPoliciesOfListenerInput": { "base": "

        Contains the parameters for SetLoadBalancePoliciesOfListener.

        ", "refs": { } }, "SetLoadBalancerPoliciesOfListenerOutput": { "base": "

        Contains the output of SetLoadBalancePoliciesOfListener.

        ", "refs": { } }, "SourceSecurityGroup": { "base": "

        Information about a source security group.

        ", "refs": { "LoadBalancerDescription$SourceSecurityGroup": "

        The security group for the load balancer, which you can use as part of your inbound rules for your registered instances. To only allow traffic from load balancers, add a security group rule that specifies this source security group as the inbound source.

        " } }, "State": { "base": null, "refs": { "InstanceState$State": "

        The current state of the instance.

        Valid values: InService | OutOfService | Unknown

        " } }, "SubnetId": { "base": null, "refs": { "Subnets$member": null } }, "SubnetNotFoundException": { "base": "

        One or more of the specified subnets do not exist.

        ", "refs": { } }, "Subnets": { "base": null, "refs": { "AttachLoadBalancerToSubnetsInput$Subnets": "

        The IDs of the subnets to add. You can add only one subnet per Availability Zone.

        ", "AttachLoadBalancerToSubnetsOutput$Subnets": "

        The IDs of the subnets attached to the load balancer.

        ", "CreateAccessPointInput$Subnets": "

        The IDs of the subnets in your VPC to attach to the load balancer. Specify one subnet per Availability Zone specified in AvailabilityZones.

        ", "DetachLoadBalancerFromSubnetsInput$Subnets": "

        The IDs of the subnets.

        ", "DetachLoadBalancerFromSubnetsOutput$Subnets": "

        The IDs of the remaining subnets for the load balancer.

        ", "LoadBalancerDescription$Subnets": "

        The IDs of the subnets for the load balancer.

        " } }, "Tag": { "base": "

        Information about a tag.

        ", "refs": { "TagList$member": null } }, "TagDescription": { "base": "

        The tags associated with a load balancer.

        ", "refs": { "TagDescriptions$member": null } }, "TagDescriptions": { "base": null, "refs": { "DescribeTagsOutput$TagDescriptions": "

        Information about the tags.

        " } }, "TagKey": { "base": null, "refs": { "Tag$Key": "

        The key of the tag.

        ", "TagKeyOnly$Key": "

        The name of the key.

        " } }, "TagKeyList": { "base": null, "refs": { "RemoveTagsInput$Tags": "

        The list of tag keys to remove.

        " } }, "TagKeyOnly": { "base": "

        The key of a tag.

        ", "refs": { "TagKeyList$member": null } }, "TagList": { "base": null, "refs": { "AddTagsInput$Tags": "

        The tags.

        ", "CreateAccessPointInput$Tags": "

        A list of tags to assign to the load balancer.

        For more information about tagging your load balancer, see Tag Your Classic Load Balancer in the Classic Load Balancers Guide.

        ", "TagDescription$Tags": "

        The tags.

        " } }, "TagValue": { "base": null, "refs": { "Tag$Value": "

        The value of the tag.

        " } }, "TooManyAccessPointsException": { "base": "

        The quota for the number of load balancers has been reached.

        ", "refs": { } }, "TooManyPoliciesException": { "base": "

        The quota for the number of policies for this load balancer has been reached.

        ", "refs": { } }, "TooManyTagsException": { "base": "

        The quota for the number of tags that can be assigned to a load balancer has been reached.

        ", "refs": { } }, "UnhealthyThreshold": { "base": null, "refs": { "HealthCheck$UnhealthyThreshold": "

        The number of consecutive health check failures required before moving the instance to the Unhealthy state.

        " } }, "UnsupportedProtocolException": { "base": null, "refs": { } }, "VPCId": { "base": null, "refs": { "LoadBalancerDescription$VPCId": "

        The ID of the VPC for the load balancer.

        " } } } } aws-sdk-go-1.4.22/models/apis/elasticloadbalancing/2012-06-01/examples-1.json000066400000000000000000000733561300374646400260370ustar00rootroot00000000000000{ "version": "1.0", "examples": { "AddTags": [ { "input": { "LoadBalancerNames": [ "my-load-balancer" ], "Tags": [ { "Key": "project", "Value": "lima" }, { "Key": "department", "Value": "digital-media" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example adds two tags to the specified load balancer.", "id": "elb-add-tags-1", "title": "To add tags to a load balancer" } ], "ApplySecurityGroupsToLoadBalancer": [ { "input": { "LoadBalancerName": "my-load-balancer", "SecurityGroups": [ "sg-fc448899" ] }, "output": { "SecurityGroups": [ "sg-fc448899" ] }, "comments": { "input": { }, "output": { } }, "description": "This example associates a security group with the specified load balancer in a VPC.", "id": "elb-apply-security-groups-to-load-balancer-1", "title": "To associate a security group with a load balancer in a VPC" } ], "AttachLoadBalancerToSubnets": [ { "input": { "LoadBalancerName": "my-load-balancer", "Subnets": [ "subnet-0ecac448" ] }, "output": { "Subnets": [ "subnet-15aaab61", "subnet-0ecac448" ] }, "comments": { "input": { }, "output": { } }, "description": "This example adds the specified subnet to the set of configured subnets for the specified load balancer.", "id": "elb-attach-load-balancer-to-subnets-1", "title": "To attach subnets to a load balancer" } ], "ConfigureHealthCheck": [ { "input": { "HealthCheck": { "HealthyThreshold": 2, "Interval": 30, "Target": "HTTP:80/png", "Timeout": 3, "UnhealthyThreshold": 2 }, "LoadBalancerName": "my-load-balancer" }, "output": { "HealthCheck": { "HealthyThreshold": 2, "Interval": 30, "Target": "HTTP:80/png", "Timeout": 3, "UnhealthyThreshold": 2 } }, "comments": { "input": { }, "output": { } }, "description": "This example specifies the health check settings used to evaluate the health of your backend EC2 instances.", "id": "elb-configure-health-check-1", "title": "To specify the health check settings for your backend EC2 instances" } ], "CreateAppCookieStickinessPolicy": [ { "input": { "CookieName": "my-app-cookie", "LoadBalancerName": "my-load-balancer", "PolicyName": "my-app-cookie-policy" }, "comments": { "input": { }, "output": { } }, "description": "This example generates a stickiness policy that follows the sticky session lifetimes of the application-generated cookie.", "id": "elb-create-app-cookie-stickiness-policy-1", "title": "To generate a stickiness policy for your load balancer" } ], "CreateLBCookieStickinessPolicy": [ { "input": { "CookieExpirationPeriod": 60, "LoadBalancerName": "my-load-balancer", "PolicyName": "my-duration-cookie-policy" }, "comments": { "input": { }, "output": { } }, "description": "This example generates a stickiness policy with sticky session lifetimes controlled by the specified expiration period.", "id": "elb-create-lb-cookie-stickiness-policy-1", "title": "To generate a duration-based stickiness policy for your load balancer" } ], "CreateLoadBalancer": [ { "input": { "Listeners": [ { "InstancePort": 80, "InstanceProtocol": "HTTP", "LoadBalancerPort": 80, "Protocol": "HTTP" } ], "LoadBalancerName": "my-load-balancer", "SecurityGroups": [ "sg-a61988c3" ], "Subnets": [ "subnet-15aaab61" ] }, "output": { "DNSName": "my-load-balancer-1234567890.us-west-2.elb.amazonaws.com" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a load balancer with an HTTP listener in a VPC.", "id": "elb-create-load-balancer-1", "title": "To create an HTTP load balancer in a VPC" }, { "input": { "AvailabilityZones": [ "us-west-2a" ], "Listeners": [ { "InstancePort": 80, "InstanceProtocol": "HTTP", "LoadBalancerPort": 80, "Protocol": "HTTP" } ], "LoadBalancerName": "my-load-balancer" }, "output": { "DNSName": "my-load-balancer-123456789.us-west-2.elb.amazonaws.com" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a load balancer with an HTTP listener in EC2-Classic.", "id": "elb-create-load-balancer-2", "title": "To create an HTTP load balancer in EC2-Classic" }, { "input": { "Listeners": [ { "InstancePort": 80, "InstanceProtocol": "HTTP", "LoadBalancerPort": 80, "Protocol": "HTTP" }, { "InstancePort": 80, "InstanceProtocol": "HTTP", "LoadBalancerPort": 443, "Protocol": "HTTPS", "SSLCertificateId": "arn:aws:iam::123456789012:server-certificate/my-server-cert" } ], "LoadBalancerName": "my-load-balancer", "SecurityGroups": [ "sg-a61988c3" ], "Subnets": [ "subnet-15aaab61" ] }, "output": { "DNSName": "my-load-balancer-1234567890.us-west-2.elb.amazonaws.com" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a load balancer with an HTTPS listener in a VPC.", "id": "elb-create-load-balancer-3", "title": "To create an HTTPS load balancer in a VPC" }, { "input": { "AvailabilityZones": [ "us-west-2a" ], "Listeners": [ { "InstancePort": 80, "InstanceProtocol": "HTTP", "LoadBalancerPort": 80, "Protocol": "HTTP" }, { "InstancePort": 80, "InstanceProtocol": "HTTP", "LoadBalancerPort": 443, "Protocol": "HTTPS", "SSLCertificateId": "arn:aws:iam::123456789012:server-certificate/my-server-cert" } ], "LoadBalancerName": "my-load-balancer" }, "output": { "DNSName": "my-load-balancer-123456789.us-west-2.elb.amazonaws.com" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a load balancer with an HTTPS listener in EC2-Classic.", "id": "elb-create-load-balancer-4", "title": "To create an HTTPS load balancer in EC2-Classic" }, { "input": { "Listeners": [ { "InstancePort": 80, "InstanceProtocol": "HTTP", "LoadBalancerPort": 80, "Protocol": "HTTP" } ], "LoadBalancerName": "my-load-balancer", "Scheme": "internal", "SecurityGroups": [ "sg-a61988c3" ], "Subnets": [ "subnet-15aaab61" ] }, "output": { "DNSName": "internal-my-load-balancer-123456789.us-west-2.elb.amazonaws.com" }, "comments": { "input": { }, "output": { } }, "description": "This example creates an internal load balancer with an HTTP listener in a VPC.", "id": "elb-create-load-balancer-5", "title": "To create an internal load balancer" } ], "CreateLoadBalancerListeners": [ { "input": { "Listeners": [ { "InstancePort": 80, "InstanceProtocol": "HTTP", "LoadBalancerPort": 80, "Protocol": "HTTP" } ], "LoadBalancerName": "my-load-balancer" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a listener for your load balancer at port 80 using the HTTP protocol.", "id": "elb-create-load-balancer-listeners-1", "title": "To create an HTTP listener for a load balancer" }, { "input": { "Listeners": [ { "InstancePort": 80, "InstanceProtocol": "HTTP", "LoadBalancerPort": 443, "Protocol": "HTTPS", "SSLCertificateId": "arn:aws:iam::123456789012:server-certificate/my-server-cert" } ], "LoadBalancerName": "my-load-balancer" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a listener for your load balancer at port 443 using the HTTPS protocol.", "id": "elb-create-load-balancer-listeners-2", "title": "To create an HTTPS listener for a load balancer" } ], "CreateLoadBalancerPolicy": [ { "input": { "LoadBalancerName": "my-load-balancer", "PolicyAttributes": [ { "AttributeName": "ProxyProtocol", "AttributeValue": "true" } ], "PolicyName": "my-ProxyProtocol-policy", "PolicyTypeName": "ProxyProtocolPolicyType" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a policy that enables Proxy Protocol on the specified load balancer.", "id": "elb-create-load-balancer-policy-1", "title": "To create a policy that enables Proxy Protocol on a load balancer" }, { "input": { "LoadBalancerName": "my-load-balancer", "PolicyAttributes": [ { "AttributeName": "PublicKey", "AttributeValue": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwAYUjnfyEyXr1pxjhFWBpMlggUcqoi3kl+dS74kj//c6x7ROtusUaeQCTgIUkayttRDWchuqo1pHC1u+n5xxXnBBe2ejbb2WRsKIQ5rXEeixsjFpFsojpSQKkzhVGI6mJVZBJDVKSHmswnwLBdofLhzvllpovBPTHe+o4haAWvDBALJU0pkSI1FecPHcs2hwxf14zHoXy1e2k36A64nXW43wtfx5qcVSIxtCEOjnYRg7RPvybaGfQ+v6Iaxb/+7J5kEvZhTFQId+bSiJImF1FSUT1W1xwzBZPUbcUkkXDj45vC2s3Z8E+Lk7a3uZhvsQHLZnrfuWjBWGWvZ/MhZYgEXAMPLE" } ], "PolicyName": "my-PublicKey-policy", "PolicyTypeName": "PublicKeyPolicyType" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a public key policy.", "id": "elb-create-load-balancer-policy-2", "title": "To create a public key policy" }, { "input": { "LoadBalancerName": "my-load-balancer", "PolicyAttributes": [ { "AttributeName": "PublicKeyPolicyName", "AttributeValue": "my-PublicKey-policy" } ], "PolicyName": "my-authentication-policy", "PolicyTypeName": "BackendServerAuthenticationPolicyType" }, "comments": { "input": { }, "output": { } }, "description": "This example creates a backend server authentication policy that enables authentication on your backend instance using a public key policy.", "id": "elb-create-load-balancer-policy-3", "title": "To create a backend server authentication policy" } ], "DeleteLoadBalancer": [ { "input": { "LoadBalancerName": "my-load-balancer" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified load balancer.", "id": "elb-delete-load-balancer-1", "title": "To delete a load balancer" } ], "DeleteLoadBalancerListeners": [ { "input": { "LoadBalancerName": "my-load-balancer", "LoadBalancerPorts": [ 80 ] }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the listener for the specified port from the specified load balancer.", "id": "elb-delete-load-balancer-listeners-1", "title": "To delete a listener from your load balancer" } ], "DeleteLoadBalancerPolicy": [ { "input": { "LoadBalancerName": "my-load-balancer", "PolicyName": "my-duration-cookie-policy" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified policy from the specified load balancer. The policy must not be enabled on any listener.", "id": "elb-delete-load-balancer-policy-1", "title": "To delete a policy from your load balancer" } ], "DeregisterInstancesFromLoadBalancer": [ { "input": { "Instances": [ { "InstanceId": "i-d6f6fae3" } ], "LoadBalancerName": "my-load-balancer" }, "output": { "Instances": [ { "InstanceId": "i-207d9717" }, { "InstanceId": "i-afefb49b" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example deregisters the specified instance from the specified load balancer.", "id": "elb-deregister-instances-from-load-balancer-1", "title": "To deregister instances from a load balancer" } ], "DescribeInstanceHealth": [ { "input": { "LoadBalancerName": "my-load-balancer" }, "output": { "InstanceStates": [ { "Description": "N/A", "InstanceId": "i-207d9717", "ReasonCode": "N/A", "State": "InService" }, { "Description": "N/A", "InstanceId": "i-afefb49b", "ReasonCode": "N/A", "State": "InService" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the health of the instances for the specified load balancer.", "id": "elb-describe-instance-health-1", "title": "To describe the health of the instances for a load balancer" } ], "DescribeLoadBalancerAttributes": [ { "input": { "LoadBalancerName": "my-load-balancer" }, "output": { "LoadBalancerAttributes": { "AccessLog": { "Enabled": false }, "ConnectionDraining": { "Enabled": false, "Timeout": 300 }, "ConnectionSettings": { "IdleTimeout": 60 }, "CrossZoneLoadBalancing": { "Enabled": false } } }, "comments": { "input": { }, "output": { } }, "description": "This example describes the attributes of the specified load balancer.", "id": "elb-describe-load-balancer-attributes-1", "title": "To describe the attributes of a load balancer" } ], "DescribeLoadBalancerPolicies": [ { "input": { "LoadBalancerName": "my-load-balancer", "PolicyNames": [ "my-authentication-policy" ] }, "output": { "PolicyDescriptions": [ { "PolicyAttributeDescriptions": [ { "AttributeName": "PublicKeyPolicyName", "AttributeValue": "my-PublicKey-policy" } ], "PolicyName": "my-authentication-policy", "PolicyTypeName": "BackendServerAuthenticationPolicyType" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified policy associated with the specified load balancer.", "id": "elb-describe-load-balancer-policies-1", "title": "To describe a policy associated with a load balancer" } ], "DescribeLoadBalancerPolicyTypes": [ { "input": { "PolicyTypeNames": [ "ProxyProtocolPolicyType" ] }, "output": { "PolicyTypeDescriptions": [ { "Description": "Policy that controls whether to include the IP address and port of the originating request for TCP messages. This policy operates on TCP listeners only.", "PolicyAttributeTypeDescriptions": [ { "AttributeName": "ProxyProtocol", "AttributeType": "Boolean", "Cardinality": "ONE" } ], "PolicyTypeName": "ProxyProtocolPolicyType" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified load balancer policy type.", "id": "elb-describe-load-balancer-policy-types-1", "title": "To describe a load balancer policy type defined by Elastic Load Balancing" } ], "DescribeLoadBalancers": [ { "input": { "LoadBalancerNames": [ "my-load-balancer" ] }, "output": { "LoadBalancerDescriptions": [ { "AvailabilityZones": [ "us-west-2a" ], "BackendServerDescriptions": [ { "InstancePort": 80, "PolicyNames": [ "my-ProxyProtocol-policy" ] } ], "CanonicalHostedZoneName": "my-load-balancer-1234567890.us-west-2.elb.amazonaws.com", "CanonicalHostedZoneNameID": "Z3DZXE0EXAMPLE", "CreatedTime": "2015-03-19T03:24:02.650Z", "DNSName": "my-load-balancer-1234567890.us-west-2.elb.amazonaws.com", "HealthCheck": { "HealthyThreshold": 2, "Interval": 30, "Target": "HTTP:80/png", "Timeout": 3, "UnhealthyThreshold": 2 }, "Instances": [ { "InstanceId": "i-207d9717" }, { "InstanceId": "i-afefb49b" } ], "ListenerDescriptions": [ { "Listener": { "InstancePort": 80, "InstanceProtocol": "HTTP", "LoadBalancerPort": 80, "Protocol": "HTTP" }, "PolicyNames": [ ] }, { "Listener": { "InstancePort": 443, "InstanceProtocol": "HTTPS", "LoadBalancerPort": 443, "Protocol": "HTTPS", "SSLCertificateId": "arn:aws:iam::123456789012:server-certificate/my-server-cert" }, "PolicyNames": [ "ELBSecurityPolicy-2015-03" ] } ], "LoadBalancerName": "my-load-balancer", "Policies": { "AppCookieStickinessPolicies": [ ], "LBCookieStickinessPolicies": [ { "CookieExpirationPeriod": 60, "PolicyName": "my-duration-cookie-policy" } ], "OtherPolicies": [ "my-PublicKey-policy", "my-authentication-policy", "my-SSLNegotiation-policy", "my-ProxyProtocol-policy", "ELBSecurityPolicy-2015-03" ] }, "Scheme": "internet-facing", "SecurityGroups": [ "sg-a61988c3" ], "SourceSecurityGroup": { "GroupName": "my-elb-sg", "OwnerAlias": "123456789012" }, "Subnets": [ "subnet-15aaab61" ], "VPCId": "vpc-a01106c2" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified load balancer.", "id": "elb-describe-load-balancers-1", "title": "To describe one of your load balancers" } ], "DescribeTags": [ { "input": { "LoadBalancerNames": [ "my-load-balancer" ] }, "output": { "TagDescriptions": [ { "LoadBalancerName": "my-load-balancer", "Tags": [ { "Key": "project", "Value": "lima" }, { "Key": "department", "Value": "digital-media" } ] } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the tags for the specified load balancer.", "id": "elb-describe-tags-1", "title": "To describe the tags for a load balancer" } ], "DetachLoadBalancerFromSubnets": [ { "input": { "LoadBalancerName": "my-load-balancer", "Subnets": [ "subnet-0ecac448" ] }, "output": { "Subnets": [ "subnet-15aaab61" ] }, "comments": { "input": { }, "output": { } }, "description": "This example detaches the specified load balancer from the specified subnet.", "id": "elb-detach-load-balancer-from-subnets-1", "title": "To detach a load balancer from a subnet" } ], "DisableAvailabilityZonesForLoadBalancer": [ { "input": { "AvailabilityZones": [ "us-west-2a" ], "LoadBalancerName": "my-load-balancer" }, "output": { "AvailabilityZones": [ "us-west-2b" ] }, "comments": { "input": { }, "output": { } }, "description": "This example removes the specified Availability Zone from the set of Availability Zones for the specified load balancer.", "id": "elb-disable-availability-zones-for-load-balancer-1", "title": "To disable an Availability Zone for a load balancer" } ], "EnableAvailabilityZonesForLoadBalancer": [ { "input": { "AvailabilityZones": [ "us-west-2b" ], "LoadBalancerName": "my-load-balancer" }, "output": { "AvailabilityZones": [ "us-west-2a", "us-west-2b" ] }, "comments": { "input": { }, "output": { } }, "description": "This example adds the specified Availability Zone to the specified load balancer.", "id": "elb-enable-availability-zones-for-load-balancer-1", "title": "To enable an Availability Zone for a load balancer" } ], "ModifyLoadBalancerAttributes": [ { "input": { "LoadBalancerAttributes": { "CrossZoneLoadBalancing": { "Enabled": true } }, "LoadBalancerName": "my-load-balancer" }, "output": { "LoadBalancerAttributes": { "CrossZoneLoadBalancing": { "Enabled": true } }, "LoadBalancerName": "my-load-balancer" }, "comments": { "input": { }, "output": { } }, "description": "This example enables cross-zone load balancing for the specified load balancer.", "id": "elb-modify-load-balancer-attributes-1", "title": "To enable cross-zone load balancing" }, { "input": { "LoadBalancerAttributes": { "ConnectionDraining": { "Enabled": true, "Timeout": 300 } }, "LoadBalancerName": "my-load-balancer" }, "output": { "LoadBalancerAttributes": { "ConnectionDraining": { "Enabled": true, "Timeout": 300 } }, "LoadBalancerName": "my-load-balancer" }, "comments": { "input": { }, "output": { } }, "description": "This example enables connection draining for the specified load balancer.", "id": "elb-modify-load-balancer-attributes-2", "title": "To enable connection draining" } ], "RegisterInstancesWithLoadBalancer": [ { "input": { "Instances": [ { "InstanceId": "i-d6f6fae3" } ], "LoadBalancerName": "my-load-balancer" }, "output": { "Instances": [ { "InstanceId": "i-d6f6fae3" }, { "InstanceId": "i-207d9717" }, { "InstanceId": "i-afefb49b" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example registers the specified instance with the specified load balancer.", "id": "elb-register-instances-with-load-balancer-1", "title": "To register instances with a load balancer" } ], "RemoveTags": [ { "input": { "LoadBalancerNames": [ "my-load-balancer" ], "Tags": [ { "Key": "project" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example removes the specified tag from the specified load balancer.", "id": "elb-remove-tags-1", "title": "To remove tags from a load balancer" } ], "SetLoadBalancerListenerSSLCertificate": [ { "input": { "LoadBalancerName": "my-load-balancer", "LoadBalancerPort": 443, "SSLCertificateId": "arn:aws:iam::123456789012:server-certificate/new-server-cert" }, "comments": { "input": { }, "output": { } }, "description": "This example replaces the existing SSL certificate for the specified HTTPS listener.", "id": "elb-set-load-balancer-listener-ssl-certificate-1", "title": "To update the SSL certificate for an HTTPS listener" } ], "SetLoadBalancerPoliciesForBackendServer": [ { "input": { "InstancePort": 80, "LoadBalancerName": "my-load-balancer", "PolicyNames": [ "my-ProxyProtocol-policy" ] }, "comments": { "input": { }, "output": { } }, "description": "This example replaces the policies that are currently associated with the specified port.", "id": "elb-set-load-balancer-policies-for-backend-server-1", "title": "To replace the policies associated with a port for a backend instance" } ], "SetLoadBalancerPoliciesOfListener": [ { "input": { "LoadBalancerName": "my-load-balancer", "LoadBalancerPort": 80, "PolicyNames": [ "my-SSLNegotiation-policy" ] }, "comments": { "input": { }, "output": { } }, "description": "This example replaces the policies that are currently associated with the specified listener.", "id": "elb-set-load-balancer-policies-of-listener-1", "title": "To replace the policies associated with a listener" } ] } } aws-sdk-go-1.4.22/models/apis/elasticloadbalancing/2012-06-01/paginators-1.json000066400000000000000000000006601300374646400263540ustar00rootroot00000000000000{ "pagination": { "DescribeInstanceHealth": { "result_key": "InstanceStates" }, "DescribeLoadBalancerPolicies": { "result_key": "PolicyDescriptions" }, "DescribeLoadBalancerPolicyTypes": { "result_key": "PolicyTypeDescriptions" }, "DescribeLoadBalancers": { "input_token": "Marker", "output_token": "NextMarker", "result_key": "LoadBalancerDescriptions" } } } aws-sdk-go-1.4.22/models/apis/elasticloadbalancing/2012-06-01/waiters-2.json000066400000000000000000000025221300374646400256630ustar00rootroot00000000000000{ "version":2, "waiters":{ "InstanceDeregistered": { "delay": 15, "operation": "DescribeInstanceHealth", "maxAttempts": 40, "acceptors": [ { "expected": "OutOfService", "matcher": "pathAll", "state": "success", "argument": "InstanceStates[].State" }, { "matcher": "error", "expected": "InvalidInstance", "state": "success" } ] }, "AnyInstanceInService":{ "acceptors":[ { "argument":"InstanceStates[].State", "expected":"InService", "matcher":"pathAny", "state":"success" } ], "delay":15, "maxAttempts":40, "operation":"DescribeInstanceHealth" }, "InstanceInService":{ "acceptors":[ { "argument":"InstanceStates[].State", "expected":"InService", "matcher":"pathAll", "state":"success" } ], "delay":15, "maxAttempts":40, "operation":"DescribeInstanceHealth" } } } aws-sdk-go-1.4.22/models/apis/elasticloadbalancingv2/000077500000000000000000000000001300374646400223755ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/elasticloadbalancingv2/2015-12-01/000077500000000000000000000000001300374646400234225ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/elasticloadbalancingv2/2015-12-01/api-2.json000066400000000000000000001314411300374646400252310ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-12-01", "endpointPrefix":"elasticloadbalancing", "protocol":"query", "serviceAbbreviation":"Elastic Load Balancing v2", "serviceFullName":"Elastic Load Balancing", "signatureVersion":"v4", "xmlNamespace":"http://elasticloadbalancing.amazonaws.com/doc/2015-12-01/" }, "operations":{ "AddTags":{ "name":"AddTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsInput"}, "output":{ "shape":"AddTagsOutput", "resultWrapper":"AddTagsResult" }, "errors":[ {"shape":"DuplicateTagKeysException"}, {"shape":"TooManyTagsException"}, {"shape":"LoadBalancerNotFoundException"}, {"shape":"TargetGroupNotFoundException"} ] }, "CreateListener":{ "name":"CreateListener", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateListenerInput"}, "output":{ "shape":"CreateListenerOutput", "resultWrapper":"CreateListenerResult" }, "errors":[ {"shape":"DuplicateListenerException"}, {"shape":"TooManyListenersException"}, {"shape":"TooManyCertificatesException"}, {"shape":"LoadBalancerNotFoundException"}, {"shape":"TargetGroupNotFoundException"}, {"shape":"TargetGroupAssociationLimitException"}, {"shape":"InvalidConfigurationRequestException"}, {"shape":"IncompatibleProtocolsException"}, {"shape":"SSLPolicyNotFoundException"}, {"shape":"CertificateNotFoundException"}, {"shape":"UnsupportedProtocolException"}, {"shape":"TooManyRegistrationsForTargetIdException"} ] }, "CreateLoadBalancer":{ "name":"CreateLoadBalancer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateLoadBalancerInput"}, "output":{ "shape":"CreateLoadBalancerOutput", "resultWrapper":"CreateLoadBalancerResult" }, "errors":[ {"shape":"DuplicateLoadBalancerNameException"}, {"shape":"TooManyLoadBalancersException"}, {"shape":"InvalidConfigurationRequestException"}, {"shape":"SubnetNotFoundException"}, {"shape":"InvalidSubnetException"}, {"shape":"InvalidSecurityGroupException"}, {"shape":"InvalidSchemeException"}, {"shape":"TooManyTagsException"}, {"shape":"DuplicateTagKeysException"} ] }, "CreateRule":{ "name":"CreateRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateRuleInput"}, "output":{ "shape":"CreateRuleOutput", "resultWrapper":"CreateRuleResult" }, "errors":[ {"shape":"PriorityInUseException"}, {"shape":"TooManyTargetGroupsException"}, {"shape":"TooManyRulesException"}, {"shape":"TargetGroupAssociationLimitException"}, {"shape":"ListenerNotFoundException"}, {"shape":"TargetGroupNotFoundException"}, {"shape":"InvalidConfigurationRequestException"}, {"shape":"TooManyRegistrationsForTargetIdException"} ] }, "CreateTargetGroup":{ "name":"CreateTargetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateTargetGroupInput"}, "output":{ "shape":"CreateTargetGroupOutput", "resultWrapper":"CreateTargetGroupResult" }, "errors":[ {"shape":"DuplicateTargetGroupNameException"}, {"shape":"TooManyTargetGroupsException"} ] }, "DeleteListener":{ "name":"DeleteListener", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteListenerInput"}, "output":{ "shape":"DeleteListenerOutput", "resultWrapper":"DeleteListenerResult" }, "errors":[ {"shape":"ListenerNotFoundException"} ] }, "DeleteLoadBalancer":{ "name":"DeleteLoadBalancer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteLoadBalancerInput"}, "output":{ "shape":"DeleteLoadBalancerOutput", "resultWrapper":"DeleteLoadBalancerResult" }, "errors":[ {"shape":"LoadBalancerNotFoundException"}, {"shape":"OperationNotPermittedException"} ] }, "DeleteRule":{ "name":"DeleteRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRuleInput"}, "output":{ "shape":"DeleteRuleOutput", "resultWrapper":"DeleteRuleResult" }, "errors":[ {"shape":"RuleNotFoundException"}, {"shape":"OperationNotPermittedException"} ] }, "DeleteTargetGroup":{ "name":"DeleteTargetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteTargetGroupInput"}, "output":{ "shape":"DeleteTargetGroupOutput", "resultWrapper":"DeleteTargetGroupResult" }, "errors":[ {"shape":"ResourceInUseException"} ] }, "DeregisterTargets":{ "name":"DeregisterTargets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeregisterTargetsInput"}, "output":{ "shape":"DeregisterTargetsOutput", "resultWrapper":"DeregisterTargetsResult" }, "errors":[ {"shape":"TargetGroupNotFoundException"}, {"shape":"InvalidTargetException"} ] }, "DescribeListeners":{ "name":"DescribeListeners", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeListenersInput"}, "output":{ "shape":"DescribeListenersOutput", "resultWrapper":"DescribeListenersResult" }, "errors":[ {"shape":"ListenerNotFoundException"}, {"shape":"LoadBalancerNotFoundException"} ] }, "DescribeLoadBalancerAttributes":{ "name":"DescribeLoadBalancerAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeLoadBalancerAttributesInput"}, "output":{ "shape":"DescribeLoadBalancerAttributesOutput", "resultWrapper":"DescribeLoadBalancerAttributesResult" }, "errors":[ {"shape":"LoadBalancerNotFoundException"} ] }, "DescribeLoadBalancers":{ "name":"DescribeLoadBalancers", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeLoadBalancersInput"}, "output":{ "shape":"DescribeLoadBalancersOutput", "resultWrapper":"DescribeLoadBalancersResult" }, "errors":[ {"shape":"LoadBalancerNotFoundException"} ] }, "DescribeRules":{ "name":"DescribeRules", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRulesInput"}, "output":{ "shape":"DescribeRulesOutput", "resultWrapper":"DescribeRulesResult" }, "errors":[ {"shape":"ListenerNotFoundException"}, {"shape":"RuleNotFoundException"} ] }, "DescribeSSLPolicies":{ "name":"DescribeSSLPolicies", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSSLPoliciesInput"}, "output":{ "shape":"DescribeSSLPoliciesOutput", "resultWrapper":"DescribeSSLPoliciesResult" }, "errors":[ {"shape":"SSLPolicyNotFoundException"} ] }, "DescribeTags":{ "name":"DescribeTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTagsInput"}, "output":{ "shape":"DescribeTagsOutput", "resultWrapper":"DescribeTagsResult" }, "errors":[ {"shape":"LoadBalancerNotFoundException"}, {"shape":"TargetGroupNotFoundException"}, {"shape":"ListenerNotFoundException"}, {"shape":"RuleNotFoundException"} ] }, "DescribeTargetGroupAttributes":{ "name":"DescribeTargetGroupAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTargetGroupAttributesInput"}, "output":{ "shape":"DescribeTargetGroupAttributesOutput", "resultWrapper":"DescribeTargetGroupAttributesResult" }, "errors":[ {"shape":"TargetGroupNotFoundException"} ] }, "DescribeTargetGroups":{ "name":"DescribeTargetGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTargetGroupsInput"}, "output":{ "shape":"DescribeTargetGroupsOutput", "resultWrapper":"DescribeTargetGroupsResult" }, "errors":[ {"shape":"LoadBalancerNotFoundException"}, {"shape":"TargetGroupNotFoundException"} ] }, "DescribeTargetHealth":{ "name":"DescribeTargetHealth", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTargetHealthInput"}, "output":{ "shape":"DescribeTargetHealthOutput", "resultWrapper":"DescribeTargetHealthResult" }, "errors":[ {"shape":"InvalidTargetException"}, {"shape":"TargetGroupNotFoundException"}, {"shape":"HealthUnavailableException"} ] }, "ModifyListener":{ "name":"ModifyListener", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyListenerInput"}, "output":{ "shape":"ModifyListenerOutput", "resultWrapper":"ModifyListenerResult" }, "errors":[ {"shape":"DuplicateListenerException"}, {"shape":"TooManyListenersException"}, {"shape":"TooManyCertificatesException"}, {"shape":"ListenerNotFoundException"}, {"shape":"TargetGroupNotFoundException"}, {"shape":"TargetGroupAssociationLimitException"}, {"shape":"IncompatibleProtocolsException"}, {"shape":"SSLPolicyNotFoundException"}, {"shape":"CertificateNotFoundException"}, {"shape":"InvalidConfigurationRequestException"}, {"shape":"UnsupportedProtocolException"}, {"shape":"TooManyRegistrationsForTargetIdException"} ] }, "ModifyLoadBalancerAttributes":{ "name":"ModifyLoadBalancerAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyLoadBalancerAttributesInput"}, "output":{ "shape":"ModifyLoadBalancerAttributesOutput", "resultWrapper":"ModifyLoadBalancerAttributesResult" }, "errors":[ {"shape":"LoadBalancerNotFoundException"}, {"shape":"InvalidConfigurationRequestException"} ] }, "ModifyRule":{ "name":"ModifyRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyRuleInput"}, "output":{ "shape":"ModifyRuleOutput", "resultWrapper":"ModifyRuleResult" }, "errors":[ {"shape":"TargetGroupAssociationLimitException"}, {"shape":"RuleNotFoundException"}, {"shape":"OperationNotPermittedException"}, {"shape":"TooManyRegistrationsForTargetIdException"} ] }, "ModifyTargetGroup":{ "name":"ModifyTargetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyTargetGroupInput"}, "output":{ "shape":"ModifyTargetGroupOutput", "resultWrapper":"ModifyTargetGroupResult" }, "errors":[ {"shape":"TargetGroupNotFoundException"} ] }, "ModifyTargetGroupAttributes":{ "name":"ModifyTargetGroupAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyTargetGroupAttributesInput"}, "output":{ "shape":"ModifyTargetGroupAttributesOutput", "resultWrapper":"ModifyTargetGroupAttributesResult" }, "errors":[ {"shape":"TargetGroupNotFoundException"} ] }, "RegisterTargets":{ "name":"RegisterTargets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterTargetsInput"}, "output":{ "shape":"RegisterTargetsOutput", "resultWrapper":"RegisterTargetsResult" }, "errors":[ {"shape":"TargetGroupNotFoundException"}, {"shape":"TooManyTargetsException"}, {"shape":"InvalidTargetException"}, {"shape":"TooManyRegistrationsForTargetIdException"} ] }, "RemoveTags":{ "name":"RemoveTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsInput"}, "output":{ "shape":"RemoveTagsOutput", "resultWrapper":"RemoveTagsResult" }, "errors":[ {"shape":"LoadBalancerNotFoundException"}, {"shape":"TargetGroupNotFoundException"}, {"shape":"ListenerNotFoundException"}, {"shape":"RuleNotFoundException"}, {"shape":"TooManyTagsException"} ] }, "SetRulePriorities":{ "name":"SetRulePriorities", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetRulePrioritiesInput"}, "output":{ "shape":"SetRulePrioritiesOutput", "resultWrapper":"SetRulePrioritiesResult" }, "errors":[ {"shape":"RuleNotFoundException"}, {"shape":"PriorityInUseException"}, {"shape":"OperationNotPermittedException"} ] }, "SetSecurityGroups":{ "name":"SetSecurityGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetSecurityGroupsInput"}, "output":{ "shape":"SetSecurityGroupsOutput", "resultWrapper":"SetSecurityGroupsResult" }, "errors":[ {"shape":"LoadBalancerNotFoundException"}, {"shape":"InvalidConfigurationRequestException"}, {"shape":"InvalidSecurityGroupException"} ] }, "SetSubnets":{ "name":"SetSubnets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetSubnetsInput"}, "output":{ "shape":"SetSubnetsOutput", "resultWrapper":"SetSubnetsResult" }, "errors":[ {"shape":"LoadBalancerNotFoundException"}, {"shape":"InvalidConfigurationRequestException"}, {"shape":"SubnetNotFoundException"}, {"shape":"InvalidSubnetException"} ] } }, "shapes":{ "Action":{ "type":"structure", "required":[ "Type", "TargetGroupArn" ], "members":{ "Type":{"shape":"ActionTypeEnum"}, "TargetGroupArn":{"shape":"TargetGroupArn"} } }, "ActionTypeEnum":{ "type":"string", "enum":["forward"] }, "Actions":{ "type":"list", "member":{"shape":"Action"} }, "AddTagsInput":{ "type":"structure", "required":[ "ResourceArns", "Tags" ], "members":{ "ResourceArns":{"shape":"ResourceArns"}, "Tags":{"shape":"TagList"} } }, "AddTagsOutput":{ "type":"structure", "members":{ } }, "AvailabilityZone":{ "type":"structure", "members":{ "ZoneName":{"shape":"ZoneName"}, "SubnetId":{"shape":"SubnetId"} } }, "AvailabilityZones":{ "type":"list", "member":{"shape":"AvailabilityZone"} }, "CanonicalHostedZoneId":{"type":"string"}, "Certificate":{ "type":"structure", "members":{ "CertificateArn":{"shape":"CertificateArn"} } }, "CertificateArn":{"type":"string"}, "CertificateList":{ "type":"list", "member":{"shape":"Certificate"} }, "CertificateNotFoundException":{ "type":"structure", "members":{ }, "error":{ "code":"CertificateNotFound", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Cipher":{ "type":"structure", "members":{ "Name":{"shape":"CipherName"}, "Priority":{"shape":"CipherPriority"} } }, "CipherName":{"type":"string"}, "CipherPriority":{"type":"integer"}, "Ciphers":{ "type":"list", "member":{"shape":"Cipher"} }, "ConditionFieldName":{ "type":"string", "max":64 }, "CreateListenerInput":{ "type":"structure", "required":[ "LoadBalancerArn", "Protocol", "Port", "DefaultActions" ], "members":{ "LoadBalancerArn":{"shape":"LoadBalancerArn"}, "Protocol":{"shape":"ProtocolEnum"}, "Port":{"shape":"Port"}, "SslPolicy":{"shape":"SslPolicyName"}, "Certificates":{"shape":"CertificateList"}, "DefaultActions":{"shape":"Actions"} } }, "CreateListenerOutput":{ "type":"structure", "members":{ "Listeners":{"shape":"Listeners"} } }, "CreateLoadBalancerInput":{ "type":"structure", "required":[ "Name", "Subnets" ], "members":{ "Name":{"shape":"LoadBalancerName"}, "Subnets":{"shape":"Subnets"}, "SecurityGroups":{"shape":"SecurityGroups"}, "Scheme":{"shape":"LoadBalancerSchemeEnum"}, "Tags":{"shape":"TagList"} } }, "CreateLoadBalancerOutput":{ "type":"structure", "members":{ "LoadBalancers":{"shape":"LoadBalancers"} } }, "CreateRuleInput":{ "type":"structure", "required":[ "ListenerArn", "Conditions", "Priority", "Actions" ], "members":{ "ListenerArn":{"shape":"ListenerArn"}, "Conditions":{"shape":"RuleConditionList"}, "Priority":{"shape":"RulePriority"}, "Actions":{"shape":"Actions"} } }, "CreateRuleOutput":{ "type":"structure", "members":{ "Rules":{"shape":"Rules"} } }, "CreateTargetGroupInput":{ "type":"structure", "required":[ "Name", "Protocol", "Port", "VpcId" ], "members":{ "Name":{"shape":"TargetGroupName"}, "Protocol":{"shape":"ProtocolEnum"}, "Port":{"shape":"Port"}, "VpcId":{"shape":"VpcId"}, "HealthCheckProtocol":{"shape":"ProtocolEnum"}, "HealthCheckPort":{"shape":"HealthCheckPort"}, "HealthCheckPath":{"shape":"Path"}, "HealthCheckIntervalSeconds":{"shape":"HealthCheckIntervalSeconds"}, "HealthCheckTimeoutSeconds":{"shape":"HealthCheckTimeoutSeconds"}, "HealthyThresholdCount":{"shape":"HealthCheckThresholdCount"}, "UnhealthyThresholdCount":{"shape":"HealthCheckThresholdCount"}, "Matcher":{"shape":"Matcher"} } }, "CreateTargetGroupOutput":{ "type":"structure", "members":{ "TargetGroups":{"shape":"TargetGroups"} } }, "CreatedTime":{"type":"timestamp"}, "DNSName":{"type":"string"}, "DeleteListenerInput":{ "type":"structure", "required":["ListenerArn"], "members":{ "ListenerArn":{"shape":"ListenerArn"} } }, "DeleteListenerOutput":{ "type":"structure", "members":{ } }, "DeleteLoadBalancerInput":{ "type":"structure", "required":["LoadBalancerArn"], "members":{ "LoadBalancerArn":{"shape":"LoadBalancerArn"} } }, "DeleteLoadBalancerOutput":{ "type":"structure", "members":{ } }, "DeleteRuleInput":{ "type":"structure", "required":["RuleArn"], "members":{ "RuleArn":{"shape":"RuleArn"} } }, "DeleteRuleOutput":{ "type":"structure", "members":{ } }, "DeleteTargetGroupInput":{ "type":"structure", "required":["TargetGroupArn"], "members":{ "TargetGroupArn":{"shape":"TargetGroupArn"} } }, "DeleteTargetGroupOutput":{ "type":"structure", "members":{ } }, "DeregisterTargetsInput":{ "type":"structure", "required":[ "TargetGroupArn", "Targets" ], "members":{ "TargetGroupArn":{"shape":"TargetGroupArn"}, "Targets":{"shape":"TargetDescriptions"} } }, "DeregisterTargetsOutput":{ "type":"structure", "members":{ } }, "DescribeListenersInput":{ "type":"structure", "members":{ "LoadBalancerArn":{"shape":"LoadBalancerArn"}, "ListenerArns":{"shape":"ListenerArns"}, "Marker":{"shape":"Marker"}, "PageSize":{"shape":"PageSize"} } }, "DescribeListenersOutput":{ "type":"structure", "members":{ "Listeners":{"shape":"Listeners"}, "NextMarker":{"shape":"Marker"} } }, "DescribeLoadBalancerAttributesInput":{ "type":"structure", "required":["LoadBalancerArn"], "members":{ "LoadBalancerArn":{"shape":"LoadBalancerArn"} } }, "DescribeLoadBalancerAttributesOutput":{ "type":"structure", "members":{ "Attributes":{"shape":"LoadBalancerAttributes"} } }, "DescribeLoadBalancersInput":{ "type":"structure", "members":{ "LoadBalancerArns":{"shape":"LoadBalancerArns"}, "Names":{"shape":"LoadBalancerNames"}, "Marker":{"shape":"Marker"}, "PageSize":{"shape":"PageSize"} } }, "DescribeLoadBalancersOutput":{ "type":"structure", "members":{ "LoadBalancers":{"shape":"LoadBalancers"}, "NextMarker":{"shape":"Marker"} } }, "DescribeRulesInput":{ "type":"structure", "members":{ "ListenerArn":{"shape":"ListenerArn"}, "RuleArns":{"shape":"RuleArns"} } }, "DescribeRulesOutput":{ "type":"structure", "members":{ "Rules":{"shape":"Rules"} } }, "DescribeSSLPoliciesInput":{ "type":"structure", "members":{ "Names":{"shape":"SslPolicyNames"}, "Marker":{"shape":"Marker"}, "PageSize":{"shape":"PageSize"} } }, "DescribeSSLPoliciesOutput":{ "type":"structure", "members":{ "SslPolicies":{"shape":"SslPolicies"}, "NextMarker":{"shape":"Marker"} } }, "DescribeTagsInput":{ "type":"structure", "required":["ResourceArns"], "members":{ "ResourceArns":{"shape":"ResourceArns"} } }, "DescribeTagsOutput":{ "type":"structure", "members":{ "TagDescriptions":{"shape":"TagDescriptions"} } }, "DescribeTargetGroupAttributesInput":{ "type":"structure", "required":["TargetGroupArn"], "members":{ "TargetGroupArn":{"shape":"TargetGroupArn"} } }, "DescribeTargetGroupAttributesOutput":{ "type":"structure", "members":{ "Attributes":{"shape":"TargetGroupAttributes"} } }, "DescribeTargetGroupsInput":{ "type":"structure", "members":{ "LoadBalancerArn":{"shape":"LoadBalancerArn"}, "TargetGroupArns":{"shape":"TargetGroupArns"}, "Names":{"shape":"TargetGroupNames"}, "Marker":{"shape":"Marker"}, "PageSize":{"shape":"PageSize"} } }, "DescribeTargetGroupsOutput":{ "type":"structure", "members":{ "TargetGroups":{"shape":"TargetGroups"}, "NextMarker":{"shape":"Marker"} } }, "DescribeTargetHealthInput":{ "type":"structure", "required":["TargetGroupArn"], "members":{ "TargetGroupArn":{"shape":"TargetGroupArn"}, "Targets":{"shape":"TargetDescriptions"} } }, "DescribeTargetHealthOutput":{ "type":"structure", "members":{ "TargetHealthDescriptions":{"shape":"TargetHealthDescriptions"} } }, "Description":{"type":"string"}, "DuplicateListenerException":{ "type":"structure", "members":{ }, "error":{ "code":"DuplicateListener", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DuplicateLoadBalancerNameException":{ "type":"structure", "members":{ }, "error":{ "code":"DuplicateLoadBalancerName", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DuplicateTagKeysException":{ "type":"structure", "members":{ }, "error":{ "code":"DuplicateTagKeys", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DuplicateTargetGroupNameException":{ "type":"structure", "members":{ }, "error":{ "code":"DuplicateTargetGroupName", "httpStatusCode":400, "senderFault":true }, "exception":true }, "HealthCheckIntervalSeconds":{ "type":"integer", "max":300, "min":5 }, "HealthCheckPort":{"type":"string"}, "HealthCheckThresholdCount":{ "type":"integer", "max":10, "min":2 }, "HealthCheckTimeoutSeconds":{ "type":"integer", "max":60, "min":2 }, "HealthUnavailableException":{ "type":"structure", "members":{ }, "error":{ "code":"HealthUnavailable", "httpStatusCode":500 }, "exception":true }, "HttpCode":{"type":"string"}, "IncompatibleProtocolsException":{ "type":"structure", "members":{ }, "error":{ "code":"IncompatibleProtocols", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidConfigurationRequestException":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidConfigurationRequest", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidSchemeException":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidScheme", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidSecurityGroupException":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidSecurityGroup", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidSubnetException":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidSubnet", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidTargetException":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidTarget", "httpStatusCode":400, "senderFault":true }, "exception":true }, "IsDefault":{"type":"boolean"}, "ListOfString":{ "type":"list", "member":{"shape":"StringValue"} }, "Listener":{ "type":"structure", "members":{ "ListenerArn":{"shape":"ListenerArn"}, "LoadBalancerArn":{"shape":"LoadBalancerArn"}, "Port":{"shape":"Port"}, "Protocol":{"shape":"ProtocolEnum"}, "Certificates":{"shape":"CertificateList"}, "SslPolicy":{"shape":"SslPolicyName"}, "DefaultActions":{"shape":"Actions"} } }, "ListenerArn":{"type":"string"}, "ListenerArns":{ "type":"list", "member":{"shape":"ListenerArn"} }, "ListenerNotFoundException":{ "type":"structure", "members":{ }, "error":{ "code":"ListenerNotFound", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Listeners":{ "type":"list", "member":{"shape":"Listener"} }, "LoadBalancer":{ "type":"structure", "members":{ "LoadBalancerArn":{"shape":"LoadBalancerArn"}, "DNSName":{"shape":"DNSName"}, "CanonicalHostedZoneId":{"shape":"CanonicalHostedZoneId"}, "CreatedTime":{"shape":"CreatedTime"}, "LoadBalancerName":{"shape":"LoadBalancerName"}, "Scheme":{"shape":"LoadBalancerSchemeEnum"}, "VpcId":{"shape":"VpcId"}, "State":{"shape":"LoadBalancerState"}, "Type":{"shape":"LoadBalancerTypeEnum"}, "AvailabilityZones":{"shape":"AvailabilityZones"}, "SecurityGroups":{"shape":"SecurityGroups"} } }, "LoadBalancerArn":{"type":"string"}, "LoadBalancerArns":{ "type":"list", "member":{"shape":"LoadBalancerArn"} }, "LoadBalancerAttribute":{ "type":"structure", "members":{ "Key":{"shape":"LoadBalancerAttributeKey"}, "Value":{"shape":"LoadBalancerAttributeValue"} } }, "LoadBalancerAttributeKey":{ "type":"string", "max":256, "pattern":"^[a-zA-Z0-9._]+$" }, "LoadBalancerAttributeValue":{ "type":"string", "max":1024 }, "LoadBalancerAttributes":{ "type":"list", "member":{"shape":"LoadBalancerAttribute"}, "max":20 }, "LoadBalancerName":{"type":"string"}, "LoadBalancerNames":{ "type":"list", "member":{"shape":"LoadBalancerName"} }, "LoadBalancerNotFoundException":{ "type":"structure", "members":{ }, "error":{ "code":"LoadBalancerNotFound", "httpStatusCode":400, "senderFault":true }, "exception":true }, "LoadBalancerSchemeEnum":{ "type":"string", "enum":[ "internet-facing", "internal" ] }, "LoadBalancerState":{ "type":"structure", "members":{ "Code":{"shape":"LoadBalancerStateEnum"}, "Reason":{"shape":"StateReason"} } }, "LoadBalancerStateEnum":{ "type":"string", "enum":[ "active", "provisioning", "failed" ] }, "LoadBalancerTypeEnum":{ "type":"string", "enum":["application"] }, "LoadBalancers":{ "type":"list", "member":{"shape":"LoadBalancer"} }, "Marker":{"type":"string"}, "Matcher":{ "type":"structure", "required":["HttpCode"], "members":{ "HttpCode":{"shape":"HttpCode"} } }, "ModifyListenerInput":{ "type":"structure", "required":["ListenerArn"], "members":{ "ListenerArn":{"shape":"ListenerArn"}, "Port":{"shape":"Port"}, "Protocol":{"shape":"ProtocolEnum"}, "SslPolicy":{"shape":"SslPolicyName"}, "Certificates":{"shape":"CertificateList"}, "DefaultActions":{"shape":"Actions"} } }, "ModifyListenerOutput":{ "type":"structure", "members":{ "Listeners":{"shape":"Listeners"} } }, "ModifyLoadBalancerAttributesInput":{ "type":"structure", "required":[ "LoadBalancerArn", "Attributes" ], "members":{ "LoadBalancerArn":{"shape":"LoadBalancerArn"}, "Attributes":{"shape":"LoadBalancerAttributes"} } }, "ModifyLoadBalancerAttributesOutput":{ "type":"structure", "members":{ "Attributes":{"shape":"LoadBalancerAttributes"} } }, "ModifyRuleInput":{ "type":"structure", "required":["RuleArn"], "members":{ "RuleArn":{"shape":"RuleArn"}, "Conditions":{"shape":"RuleConditionList"}, "Actions":{"shape":"Actions"} } }, "ModifyRuleOutput":{ "type":"structure", "members":{ "Rules":{"shape":"Rules"} } }, "ModifyTargetGroupAttributesInput":{ "type":"structure", "required":[ "TargetGroupArn", "Attributes" ], "members":{ "TargetGroupArn":{"shape":"TargetGroupArn"}, "Attributes":{"shape":"TargetGroupAttributes"} } }, "ModifyTargetGroupAttributesOutput":{ "type":"structure", "members":{ "Attributes":{"shape":"TargetGroupAttributes"} } }, "ModifyTargetGroupInput":{ "type":"structure", "required":["TargetGroupArn"], "members":{ "TargetGroupArn":{"shape":"TargetGroupArn"}, "HealthCheckProtocol":{"shape":"ProtocolEnum"}, "HealthCheckPort":{"shape":"HealthCheckPort"}, "HealthCheckPath":{"shape":"Path"}, "HealthCheckIntervalSeconds":{"shape":"HealthCheckIntervalSeconds"}, "HealthCheckTimeoutSeconds":{"shape":"HealthCheckTimeoutSeconds"}, "HealthyThresholdCount":{"shape":"HealthCheckThresholdCount"}, "UnhealthyThresholdCount":{"shape":"HealthCheckThresholdCount"}, "Matcher":{"shape":"Matcher"} } }, "ModifyTargetGroupOutput":{ "type":"structure", "members":{ "TargetGroups":{"shape":"TargetGroups"} } }, "OperationNotPermittedException":{ "type":"structure", "members":{ }, "error":{ "code":"OperationNotPermitted", "httpStatusCode":400, "senderFault":true }, "exception":true }, "PageSize":{ "type":"integer", "max":400, "min":1 }, "Path":{ "type":"string", "max":1024, "min":1 }, "Port":{ "type":"integer", "max":65535, "min":1 }, "PriorityInUseException":{ "type":"structure", "members":{ }, "error":{ "code":"PriorityInUse", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ProtocolEnum":{ "type":"string", "enum":[ "HTTP", "HTTPS" ] }, "RegisterTargetsInput":{ "type":"structure", "required":[ "TargetGroupArn", "Targets" ], "members":{ "TargetGroupArn":{"shape":"TargetGroupArn"}, "Targets":{"shape":"TargetDescriptions"} } }, "RegisterTargetsOutput":{ "type":"structure", "members":{ } }, "RemoveTagsInput":{ "type":"structure", "required":[ "ResourceArns", "TagKeys" ], "members":{ "ResourceArns":{"shape":"ResourceArns"}, "TagKeys":{"shape":"TagKeys"} } }, "RemoveTagsOutput":{ "type":"structure", "members":{ } }, "ResourceArn":{"type":"string"}, "ResourceArns":{ "type":"list", "member":{"shape":"ResourceArn"} }, "ResourceInUseException":{ "type":"structure", "members":{ }, "error":{ "code":"ResourceInUse", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Rule":{ "type":"structure", "members":{ "RuleArn":{"shape":"RuleArn"}, "Priority":{"shape":"String"}, "Conditions":{"shape":"RuleConditionList"}, "Actions":{"shape":"Actions"}, "IsDefault":{"shape":"IsDefault"} } }, "RuleArn":{"type":"string"}, "RuleArns":{ "type":"list", "member":{"shape":"RuleArn"} }, "RuleCondition":{ "type":"structure", "members":{ "Field":{"shape":"ConditionFieldName"}, "Values":{"shape":"ListOfString"} } }, "RuleConditionList":{ "type":"list", "member":{"shape":"RuleCondition"} }, "RuleNotFoundException":{ "type":"structure", "members":{ }, "error":{ "code":"RuleNotFound", "httpStatusCode":400, "senderFault":true }, "exception":true }, "RulePriority":{ "type":"integer", "max":99999, "min":1 }, "RulePriorityList":{ "type":"list", "member":{"shape":"RulePriorityPair"} }, "RulePriorityPair":{ "type":"structure", "members":{ "RuleArn":{"shape":"RuleArn"}, "Priority":{"shape":"RulePriority"} } }, "Rules":{ "type":"list", "member":{"shape":"Rule"} }, "SSLPolicyNotFoundException":{ "type":"structure", "members":{ }, "error":{ "code":"SSLPolicyNotFound", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SecurityGroupId":{"type":"string"}, "SecurityGroups":{ "type":"list", "member":{"shape":"SecurityGroupId"} }, "SetRulePrioritiesInput":{ "type":"structure", "required":["RulePriorities"], "members":{ "RulePriorities":{"shape":"RulePriorityList"} } }, "SetRulePrioritiesOutput":{ "type":"structure", "members":{ "Rules":{"shape":"Rules"} } }, "SetSecurityGroupsInput":{ "type":"structure", "required":[ "LoadBalancerArn", "SecurityGroups" ], "members":{ "LoadBalancerArn":{"shape":"LoadBalancerArn"}, "SecurityGroups":{"shape":"SecurityGroups"} } }, "SetSecurityGroupsOutput":{ "type":"structure", "members":{ "SecurityGroupIds":{"shape":"SecurityGroups"} } }, "SetSubnetsInput":{ "type":"structure", "required":[ "LoadBalancerArn", "Subnets" ], "members":{ "LoadBalancerArn":{"shape":"LoadBalancerArn"}, "Subnets":{"shape":"Subnets"} } }, "SetSubnetsOutput":{ "type":"structure", "members":{ "AvailabilityZones":{"shape":"AvailabilityZones"} } }, "SslPolicies":{ "type":"list", "member":{"shape":"SslPolicy"} }, "SslPolicy":{ "type":"structure", "members":{ "SslProtocols":{"shape":"SslProtocols"}, "Ciphers":{"shape":"Ciphers"}, "Name":{"shape":"SslPolicyName"} } }, "SslPolicyName":{"type":"string"}, "SslPolicyNames":{ "type":"list", "member":{"shape":"SslPolicyName"} }, "SslProtocol":{"type":"string"}, "SslProtocols":{ "type":"list", "member":{"shape":"SslProtocol"} }, "StateReason":{"type":"string"}, "String":{"type":"string"}, "StringValue":{"type":"string"}, "SubnetId":{"type":"string"}, "SubnetNotFoundException":{ "type":"structure", "members":{ }, "error":{ "code":"SubnetNotFound", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Subnets":{ "type":"list", "member":{"shape":"SubnetId"} }, "Tag":{ "type":"structure", "required":["Key"], "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagDescription":{ "type":"structure", "members":{ "ResourceArn":{"shape":"ResourceArn"}, "Tags":{"shape":"TagList"} } }, "TagDescriptions":{ "type":"list", "member":{"shape":"TagDescription"} }, "TagKey":{ "type":"string", "max":128, "min":1, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "TagKeys":{ "type":"list", "member":{"shape":"TagKey"} }, "TagList":{ "type":"list", "member":{"shape":"Tag"}, "min":1 }, "TagValue":{ "type":"string", "max":256, "min":0, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "TargetDescription":{ "type":"structure", "required":["Id"], "members":{ "Id":{"shape":"TargetId"}, "Port":{"shape":"Port"} } }, "TargetDescriptions":{ "type":"list", "member":{"shape":"TargetDescription"} }, "TargetGroup":{ "type":"structure", "members":{ "TargetGroupArn":{"shape":"TargetGroupArn"}, "TargetGroupName":{"shape":"TargetGroupName"}, "Protocol":{"shape":"ProtocolEnum"}, "Port":{"shape":"Port"}, "VpcId":{"shape":"VpcId"}, "HealthCheckProtocol":{"shape":"ProtocolEnum"}, "HealthCheckPort":{"shape":"HealthCheckPort"}, "HealthCheckIntervalSeconds":{"shape":"HealthCheckIntervalSeconds"}, "HealthCheckTimeoutSeconds":{"shape":"HealthCheckTimeoutSeconds"}, "HealthyThresholdCount":{"shape":"HealthCheckThresholdCount"}, "UnhealthyThresholdCount":{"shape":"HealthCheckThresholdCount"}, "HealthCheckPath":{"shape":"Path"}, "Matcher":{"shape":"Matcher"}, "LoadBalancerArns":{"shape":"LoadBalancerArns"} } }, "TargetGroupArn":{"type":"string"}, "TargetGroupArns":{ "type":"list", "member":{"shape":"TargetGroupArn"} }, "TargetGroupAssociationLimitException":{ "type":"structure", "members":{ }, "error":{ "code":"TargetGroupAssociationLimit", "httpStatusCode":400, "senderFault":true }, "exception":true }, "TargetGroupAttribute":{ "type":"structure", "members":{ "Key":{"shape":"TargetGroupAttributeKey"}, "Value":{"shape":"TargetGroupAttributeValue"} } }, "TargetGroupAttributeKey":{ "type":"string", "max":256, "pattern":"^[a-zA-Z0-9._]+$" }, "TargetGroupAttributeValue":{"type":"string"}, "TargetGroupAttributes":{ "type":"list", "member":{"shape":"TargetGroupAttribute"} }, "TargetGroupName":{"type":"string"}, "TargetGroupNames":{ "type":"list", "member":{"shape":"TargetGroupName"} }, "TargetGroupNotFoundException":{ "type":"structure", "members":{ }, "error":{ "code":"TargetGroupNotFound", "httpStatusCode":400, "senderFault":true }, "exception":true }, "TargetGroups":{ "type":"list", "member":{"shape":"TargetGroup"} }, "TargetHealth":{ "type":"structure", "members":{ "State":{"shape":"TargetHealthStateEnum"}, "Reason":{"shape":"TargetHealthReasonEnum"}, "Description":{"shape":"Description"} } }, "TargetHealthDescription":{ "type":"structure", "members":{ "Target":{"shape":"TargetDescription"}, "HealthCheckPort":{"shape":"HealthCheckPort"}, "TargetHealth":{"shape":"TargetHealth"} } }, "TargetHealthDescriptions":{ "type":"list", "member":{"shape":"TargetHealthDescription"} }, "TargetHealthReasonEnum":{ "type":"string", "enum":[ "Elb.RegistrationInProgress", "Elb.InitialHealthChecking", "Target.ResponseCodeMismatch", "Target.Timeout", "Target.FailedHealthChecks", "Target.NotRegistered", "Target.NotInUse", "Target.DeregistrationInProgress", "Target.InvalidState", "Elb.InternalError" ] }, "TargetHealthStateEnum":{ "type":"string", "enum":[ "initial", "healthy", "unhealthy", "unused", "draining" ] }, "TargetId":{"type":"string"}, "TooManyCertificatesException":{ "type":"structure", "members":{ }, "error":{ "code":"TooManyCertificates", "httpStatusCode":400, "senderFault":true }, "exception":true }, "TooManyListenersException":{ "type":"structure", "members":{ }, "error":{ "code":"TooManyListeners", "httpStatusCode":400, "senderFault":true }, "exception":true }, "TooManyLoadBalancersException":{ "type":"structure", "members":{ }, "error":{ "code":"TooManyLoadBalancers", "httpStatusCode":400, "senderFault":true }, "exception":true }, "TooManyRegistrationsForTargetIdException":{ "type":"structure", "members":{ }, "error":{ "code":"TooManyRegistrationsForTargetId", "httpStatusCode":400, "senderFault":true }, "exception":true }, "TooManyRulesException":{ "type":"structure", "members":{ }, "error":{ "code":"TooManyRules", "httpStatusCode":400, "senderFault":true }, "exception":true }, "TooManyTagsException":{ "type":"structure", "members":{ }, "error":{ "code":"TooManyTags", "httpStatusCode":400, "senderFault":true }, "exception":true }, "TooManyTargetGroupsException":{ "type":"structure", "members":{ }, "error":{ "code":"TooManyTargetGroups", "httpStatusCode":400, "senderFault":true }, "exception":true }, "TooManyTargetsException":{ "type":"structure", "members":{ }, "error":{ "code":"TooManyTargets", "httpStatusCode":400, "senderFault":true }, "exception":true }, "UnsupportedProtocolException":{ "type":"structure", "members":{ }, "error":{ "code":"UnsupportedProtocol", "httpStatusCode":400, "senderFault":true }, "exception":true }, "VpcId":{"type":"string"}, "ZoneName":{"type":"string"} } } aws-sdk-go-1.4.22/models/apis/elasticloadbalancingv2/2015-12-01/docs-2.json000066400000000000000000001642501300374646400254140ustar00rootroot00000000000000{ "version": "2.0", "service": "Elastic Load Balancing

        A load balancer distributes incoming traffic across targets, such as your EC2 instances. This enables you to increase the availability of your application. The load balancer also monitors the health of its registered targets and ensures that it routes traffic only to healthy targets. You configure your load balancer to accept incoming traffic by specifying one or more listeners, which are configured with a protocol and port number for connections from clients to the load balancer. You configure a target group with a protocol and port number for connections from the load balancer to the targets, and with health check settings to be used when checking the health status of the targets.

        Elastic Load Balancing supports two types of load balancers: Classic Load Balancers and Application Load Balancers. A Classic Load Balancer makes routing and load balancing decisions either at the transport layer (TCP/SSL) or the application layer (HTTP/HTTPS), and supports either EC2-Classic or a VPC. An Application Load Balancer makes routing and load balancing decisions at the application layer (HTTP/HTTPS), supports path-based routing, and can route requests to one or more ports on each EC2 instance or container instance in your virtual private cloud (VPC). For more information, see the Elastic Load Balancing User Guide.

        This reference covers the 2015-12-01 API, which supports Application Load Balancers. The 2012-06-01 API supports Classic Load Balancers.

        To get started, complete the following tasks:

        1. Create an Application Load Balancer using CreateLoadBalancer.

        2. Create a target group using CreateTargetGroup.

        3. Register targets for the target group using RegisterTargets.

        4. Create one or more listeners for your load balancer using CreateListener.

        5. (Optional) Create one or more rules for content routing based on URL using CreateRule.

        To delete an Application Load Balancer and its related resources, complete the following tasks:

        1. Delete the load balancer using DeleteLoadBalancer.

        2. Delete the target group using DeleteTargetGroup.

        All Elastic Load Balancing operations are idempotent, which means that they complete at most one time. If you repeat an operation, it succeeds.

        ", "operations": { "AddTags": "

        Adds the specified tags to the specified resource. You can tag your Application Load Balancers and your target groups.

        Each tag consists of a key and an optional value. If a resource already has a tag with the same key, AddTags updates its value.

        To list the current tags for your resources, use DescribeTags. To remove tags from your resources, use RemoveTags.

        ", "CreateListener": "

        Creates a listener for the specified Application Load Balancer.

        You can create up to 10 listeners per load balancer.

        To update a listener, use ModifyListener. When you are finished with a listener, you can delete it using DeleteListener. If you are finished with both the listener and the load balancer, you can delete them both using DeleteLoadBalancer.

        For more information, see Listeners for Your Application Load Balancers in the Application Load Balancers Guide.

        ", "CreateLoadBalancer": "

        Creates an Application Load Balancer.

        To create listeners for your load balancer, use CreateListener. You can add security groups, subnets, and tags when you create your load balancer, or you can add them later using SetSecurityGroups, SetSubnets, and AddTags.

        To describe your current load balancers, see DescribeLoadBalancers. When you are finished with a load balancer, you can delete it using DeleteLoadBalancer.

        You can create up to 20 load balancers per region per account. You can request an increase for the number of load balancers for your account. For more information, see Limits for Your Application Load Balancer in the Application Load Balancers Guide.

        For more information, see Application Load Balancers in the Application Load Balancers Guide.

        ", "CreateRule": "

        Creates a rule for the specified listener.

        Each rule can have one action and one condition. Rules are evaluated in priority order, from the lowest value to the highest value. When the condition for a rule is met, the specified action is taken. If no conditions are met, the default action for the default rule is taken. For more information, see Listener Rules in the Application Load Balancers Guide.

        To view your current rules, use DescribeRules. To update a rule, use ModifyRule. To set the priorities of your rules, use SetRulePriorities. To delete a rule, use DeleteRule.

        ", "CreateTargetGroup": "

        Creates a target group.

        To register targets with the target group, use RegisterTargets. To update the health check settings for the target group, use ModifyTargetGroup. To monitor the health of targets in the target group, use DescribeTargetHealth.

        To route traffic to the targets in a target group, specify the target group in an action using CreateListener or CreateRule.

        To delete a target group, use DeleteTargetGroup.

        For more information, see Target Groups for Your Application Load Balancers in the Application Load Balancers Guide.

        ", "DeleteListener": "

        Deletes the specified listener.

        Alternatively, your listener is deleted when you delete the load balancer it is attached to using DeleteLoadBalancer.

        ", "DeleteLoadBalancer": "

        Deletes the specified Application Load Balancer and its attached listeners.

        You can't delete a load balancer if deletion protection is enabled. If the load balancer does not exist or has already been deleted, the call succeeds.

        Deleting a load balancer does not affect its registered targets. For example, your EC2 instances continue to run and are still registered to their target groups. If you no longer need these EC2 instances, you can stop or terminate them.

        ", "DeleteRule": "

        Deletes the specified rule.

        ", "DeleteTargetGroup": "

        Deletes the specified target group.

        You can delete a target group if it is not referenced by any actions. Deleting a target group also deletes any associated health checks.

        ", "DeregisterTargets": "

        Deregisters the specified targets from the specified target group. After the targets are deregistered, they no longer receive traffic from the load balancer.

        ", "DescribeListeners": "

        Describes the specified listeners or the listeners for the specified Application Load Balancer. You must specify either a load balancer or one or more listeners.

        ", "DescribeLoadBalancerAttributes": "

        Describes the attributes for the specified Application Load Balancer.

        ", "DescribeLoadBalancers": "

        Describes the specified Application Load Balancers or all of your Application Load Balancers.

        To describe the listeners for a load balancer, use DescribeListeners. To describe the attributes for a load balancer, use DescribeLoadBalancerAttributes.

        ", "DescribeRules": "

        Describes the specified rules or the rules for the specified listener. You must specify either a listener or one or more rules.

        ", "DescribeSSLPolicies": "

        Describes the specified policies or all policies used for SSL negotiation.

        Note that the only supported policy at this time is ELBSecurityPolicy-2015-05.

        ", "DescribeTags": "

        Describes the tags for the specified resources.

        ", "DescribeTargetGroupAttributes": "

        Describes the attributes for the specified target group.

        ", "DescribeTargetGroups": "

        Describes the specified target groups or all of your target groups. By default, all target groups are described. Alternatively, you can specify one of the following to filter the results: the ARN of the load balancer, the names of one or more target groups, or the ARNs of one or more target groups.

        To describe the targets for a target group, use DescribeTargetHealth. To describe the attributes of a target group, use DescribeTargetGroupAttributes.

        ", "DescribeTargetHealth": "

        Describes the health of the specified targets or all of your targets.

        ", "ModifyListener": "

        Modifies the specified properties of the specified listener.

        Any properties that you do not specify retain their current values. However, changing the protocol from HTTPS to HTTP removes the security policy and SSL certificate properties. If you change the protocol from HTTP to HTTPS, you must add the security policy.

        ", "ModifyLoadBalancerAttributes": "

        Modifies the specified attributes of the specified Application Load Balancer.

        If any of the specified attributes can't be modified as requested, the call fails. Any existing attributes that you do not modify retain their current values.

        ", "ModifyRule": "

        Modifies the specified rule.

        Any existing properties that you do not modify retain their current values.

        To modify the default action, use ModifyListener.

        ", "ModifyTargetGroup": "

        Modifies the health checks used when evaluating the health state of the targets in the specified target group.

        To monitor the health of the targets, use DescribeTargetHealth.

        ", "ModifyTargetGroupAttributes": "

        Modifies the specified attributes of the specified target group.

        ", "RegisterTargets": "

        Registers the specified targets with the specified target group.

        By default, the load balancer routes requests to registered targets using the protocol and port number for the target group. Alternatively, you can override the port for a target when you register it.

        The target must be in the virtual private cloud (VPC) that you specified for the target group. If the target is an EC2 instance, it can't be in the stopped or running state when you register it.

        To remove a target from a target group, use DeregisterTargets.

        ", "RemoveTags": "

        Removes the specified tags from the specified resource.

        To list the current tags for your resources, use DescribeTags.

        ", "SetRulePriorities": "

        Sets the priorities of the specified rules.

        You can reorder the rules as long as there are no priority conflicts in the new order. Any existing rules that you do not specify retain their current priority.

        ", "SetSecurityGroups": "

        Associates the specified security groups with the specified load balancer. The specified security groups override the previously associated security groups.

        ", "SetSubnets": "

        Enables the Availability Zone for the specified subnets for the specified load balancer. The specified subnets replace the previously enabled subnets.

        " }, "shapes": { "Action": { "base": "

        Information about an action.

        ", "refs": { "Actions$member": null } }, "ActionTypeEnum": { "base": null, "refs": { "Action$Type": "

        The type of action.

        " } }, "Actions": { "base": null, "refs": { "CreateListenerInput$DefaultActions": "

        The default action for the listener.

        ", "CreateRuleInput$Actions": "

        An action. Each action has the type forward and specifies a target group.

        ", "Listener$DefaultActions": "

        The default actions for the listener.

        ", "ModifyListenerInput$DefaultActions": "

        The default actions.

        ", "ModifyRuleInput$Actions": "

        The actions.

        ", "Rule$Actions": "

        The actions.

        " } }, "AddTagsInput": { "base": "

        Contains the parameters for AddTags.

        ", "refs": { } }, "AddTagsOutput": { "base": "

        Contains the output of AddTags.

        ", "refs": { } }, "AvailabilityZone": { "base": "

        Information about an Availability Zone.

        ", "refs": { "AvailabilityZones$member": null } }, "AvailabilityZones": { "base": null, "refs": { "LoadBalancer$AvailabilityZones": "

        The Availability Zones for the load balancer.

        ", "SetSubnetsOutput$AvailabilityZones": "

        Information about the subnet and Availability Zone.

        " } }, "CanonicalHostedZoneId": { "base": null, "refs": { "LoadBalancer$CanonicalHostedZoneId": "

        The ID of the Amazon Route 53 hosted zone associated with the load balancer.

        " } }, "Certificate": { "base": "

        Information about an SSL server certificate deployed on a load balancer.

        ", "refs": { "CertificateList$member": null } }, "CertificateArn": { "base": null, "refs": { "Certificate$CertificateArn": "

        The Amazon Resource Name (ARN) of the certificate.

        " } }, "CertificateList": { "base": null, "refs": { "CreateListenerInput$Certificates": "

        The SSL server certificate. You must provide exactly one certificate if the protocol is HTTPS.

        ", "Listener$Certificates": "

        The SSL server certificate. You must provide a certificate if the protocol is HTTPS.

        ", "ModifyListenerInput$Certificates": "

        The SSL server certificate.

        " } }, "CertificateNotFoundException": { "base": "

        The specified certificate does not exist.

        ", "refs": { } }, "Cipher": { "base": "

        Information about a cipher used in a policy.

        ", "refs": { "Ciphers$member": null } }, "CipherName": { "base": null, "refs": { "Cipher$Name": "

        The name of the cipher.

        " } }, "CipherPriority": { "base": null, "refs": { "Cipher$Priority": "

        The priority of the cipher.

        " } }, "Ciphers": { "base": null, "refs": { "SslPolicy$Ciphers": "

        The ciphers.

        " } }, "ConditionFieldName": { "base": null, "refs": { "RuleCondition$Field": "

        The only possible value is path-pattern.

        " } }, "CreateListenerInput": { "base": "

        Contains the parameters for CreateListener.

        ", "refs": { } }, "CreateListenerOutput": { "base": "

        Contains the output of CreateListener.

        ", "refs": { } }, "CreateLoadBalancerInput": { "base": "

        Contains the parameters for CreateLoadBalancer.

        ", "refs": { } }, "CreateLoadBalancerOutput": { "base": "

        Contains the output of CreateLoadBalancer.

        ", "refs": { } }, "CreateRuleInput": { "base": "

        Contains the parameters for CreateRule.

        ", "refs": { } }, "CreateRuleOutput": { "base": "

        Contains the output of CreateRule.

        ", "refs": { } }, "CreateTargetGroupInput": { "base": "

        Contains the parameters for CreateTargetGroup.

        ", "refs": { } }, "CreateTargetGroupOutput": { "base": "

        Contains the output of CreateTargetGroup.

        ", "refs": { } }, "CreatedTime": { "base": null, "refs": { "LoadBalancer$CreatedTime": "

        The date and time the load balancer was created.

        " } }, "DNSName": { "base": null, "refs": { "LoadBalancer$DNSName": "

        The public DNS name of the load balancer.

        " } }, "DeleteListenerInput": { "base": "

        Contains the parameters for DeleteListener.

        ", "refs": { } }, "DeleteListenerOutput": { "base": "

        Contains the output of DeleteListener.

        ", "refs": { } }, "DeleteLoadBalancerInput": { "base": "

        Contains the parameters for DeleteLoadBalancer.

        ", "refs": { } }, "DeleteLoadBalancerOutput": { "base": "

        Contains the output of DeleteLoadBalancer.

        ", "refs": { } }, "DeleteRuleInput": { "base": "

        Contains the parameters for DeleteRule.

        ", "refs": { } }, "DeleteRuleOutput": { "base": "

        Contains the output of DeleteRule.

        ", "refs": { } }, "DeleteTargetGroupInput": { "base": "

        Contains the parameters for DeleteTargetGroup.

        ", "refs": { } }, "DeleteTargetGroupOutput": { "base": "

        Contains the output of DeleteTargetGroup.

        ", "refs": { } }, "DeregisterTargetsInput": { "base": "

        Contains the parameters for DeregisterTargets.

        ", "refs": { } }, "DeregisterTargetsOutput": { "base": "

        Contains the output of DeregisterTargets.

        ", "refs": { } }, "DescribeListenersInput": { "base": "

        Contains the parameters for DescribeListeners.

        ", "refs": { } }, "DescribeListenersOutput": { "base": "

        Contains the output of DescribeListeners.

        ", "refs": { } }, "DescribeLoadBalancerAttributesInput": { "base": "

        Contains the parameters for DescribeLoadBalancerAttributes.

        ", "refs": { } }, "DescribeLoadBalancerAttributesOutput": { "base": "

        Contains the output of DescribeLoadBalancerAttributes.

        ", "refs": { } }, "DescribeLoadBalancersInput": { "base": "

        Contains the parameters for DescribeLoadBalancers.

        ", "refs": { } }, "DescribeLoadBalancersOutput": { "base": "

        Contains the output of DescribeLoadBalancers.

        ", "refs": { } }, "DescribeRulesInput": { "base": "

        Contains the parameters for DescribeRules.

        ", "refs": { } }, "DescribeRulesOutput": { "base": "

        Contains the output of DescribeRules.

        ", "refs": { } }, "DescribeSSLPoliciesInput": { "base": "

        Contains the parameters for DescribeSSLPolicies.

        ", "refs": { } }, "DescribeSSLPoliciesOutput": { "base": "

        Contains the output of DescribeSSLPolicies.

        ", "refs": { } }, "DescribeTagsInput": { "base": "

        Contains the parameters for DescribeTags.

        ", "refs": { } }, "DescribeTagsOutput": { "base": "

        Contains the output of DescribeTags.

        ", "refs": { } }, "DescribeTargetGroupAttributesInput": { "base": "

        Contains the parameters for DescribeTargetGroupAttributes.

        ", "refs": { } }, "DescribeTargetGroupAttributesOutput": { "base": "

        Contains the output of DescribeTargetGroupAttributes.

        ", "refs": { } }, "DescribeTargetGroupsInput": { "base": "

        Contains the parameters for DescribeTargetGroups.

        ", "refs": { } }, "DescribeTargetGroupsOutput": { "base": "

        Contains the output of DescribeTargetGroups.

        ", "refs": { } }, "DescribeTargetHealthInput": { "base": "

        Contains the parameters for DescribeTargetHealth.

        ", "refs": { } }, "DescribeTargetHealthOutput": { "base": "

        Contains the output of DescribeTargetHealth.

        ", "refs": { } }, "Description": { "base": null, "refs": { "TargetHealth$Description": "

        A description of the target health that provides additional details. If the state is healthy, a description is not provided.

        " } }, "DuplicateListenerException": { "base": "

        A listener with the specified port already exists.

        ", "refs": { } }, "DuplicateLoadBalancerNameException": { "base": "

        A load balancer with the specified name already exists for this account.

        ", "refs": { } }, "DuplicateTagKeysException": { "base": "

        A tag key was specified more than once.

        ", "refs": { } }, "DuplicateTargetGroupNameException": { "base": "

        A target group with the specified name already exists.

        ", "refs": { } }, "HealthCheckIntervalSeconds": { "base": null, "refs": { "CreateTargetGroupInput$HealthCheckIntervalSeconds": "

        The approximate amount of time, in seconds, between health checks of an individual target. The default is 30 seconds.

        ", "ModifyTargetGroupInput$HealthCheckIntervalSeconds": "

        The approximate amount of time, in seconds, between health checks of an individual target.

        ", "TargetGroup$HealthCheckIntervalSeconds": "

        The approximate amount of time, in seconds, between health checks of an individual target.

        " } }, "HealthCheckPort": { "base": null, "refs": { "CreateTargetGroupInput$HealthCheckPort": "

        The port the load balancer uses when performing health checks on targets. The default is traffic-port, which indicates the port on which each target receives traffic from the load balancer.

        ", "ModifyTargetGroupInput$HealthCheckPort": "

        The port to use to connect with the target.

        ", "TargetGroup$HealthCheckPort": "

        The port to use to connect with the target.

        ", "TargetHealthDescription$HealthCheckPort": "

        The port to use to connect with the target.

        " } }, "HealthCheckThresholdCount": { "base": null, "refs": { "CreateTargetGroupInput$HealthyThresholdCount": "

        The number of consecutive health checks successes required before considering an unhealthy target healthy. The default is 5.

        ", "CreateTargetGroupInput$UnhealthyThresholdCount": "

        The number of consecutive health check failures required before considering a target unhealthy. The default is 2.

        ", "ModifyTargetGroupInput$HealthyThresholdCount": "

        The number of consecutive health checks successes required before considering an unhealthy target healthy.

        ", "ModifyTargetGroupInput$UnhealthyThresholdCount": "

        The number of consecutive health check failures required before considering the target unhealthy.

        ", "TargetGroup$HealthyThresholdCount": "

        The number of consecutive health checks successes required before considering an unhealthy target healthy.

        ", "TargetGroup$UnhealthyThresholdCount": "

        The number of consecutive health check failures required before considering the target unhealthy.

        " } }, "HealthCheckTimeoutSeconds": { "base": null, "refs": { "CreateTargetGroupInput$HealthCheckTimeoutSeconds": "

        The amount of time, in seconds, during which no response from a target means a failed health check. The default is 5 seconds.

        ", "ModifyTargetGroupInput$HealthCheckTimeoutSeconds": "

        The amount of time, in seconds, during which no response means a failed health check.

        ", "TargetGroup$HealthCheckTimeoutSeconds": "

        The amount of time, in seconds, during which no response means a failed health check.

        " } }, "HealthUnavailableException": { "base": "

        The health of the specified targets could not be retrieved due to an internal error.

        ", "refs": { } }, "HttpCode": { "base": null, "refs": { "Matcher$HttpCode": "

        The HTTP codes. The default value is 200. You can specify multiple values (for example, \"200,202\") or a range of values (for example, \"200-299\").

        " } }, "IncompatibleProtocolsException": { "base": "

        The specified configuration is not valid with this protocol.

        ", "refs": { } }, "InvalidConfigurationRequestException": { "base": "

        The requested configuration is not valid.

        ", "refs": { } }, "InvalidSchemeException": { "base": "

        The requested scheme is not valid.

        ", "refs": { } }, "InvalidSecurityGroupException": { "base": "

        The specified security group does not exist.

        ", "refs": { } }, "InvalidSubnetException": { "base": "

        The specified subnet is out of available addresses.

        ", "refs": { } }, "InvalidTargetException": { "base": "

        The specified target does not exist or is not in the same VPC as the target group.

        ", "refs": { } }, "IsDefault": { "base": null, "refs": { "Rule$IsDefault": "

        Indicates whether this is the default rule.

        " } }, "ListOfString": { "base": null, "refs": { "RuleCondition$Values": "

        The path pattern. You can specify a single path pattern.

        A path pattern is case sensitive, can be up to 255 characters in length, and can contain any of the following characters:

        • A-Z, a-z, 0-9

        • _ - . $ / ~ \" ' @ : +

        • & (using &amp;)

        • * (matches 0 or more characters)

        • ? (matches exactly 1 character)

        " } }, "Listener": { "base": "

        Information about a listener.

        ", "refs": { "Listeners$member": null } }, "ListenerArn": { "base": null, "refs": { "CreateRuleInput$ListenerArn": "

        The Amazon Resource Name (ARN) of the listener.

        ", "DeleteListenerInput$ListenerArn": "

        The Amazon Resource Name (ARN) of the listener.

        ", "DescribeRulesInput$ListenerArn": "

        The Amazon Resource Name (ARN) of the listener.

        ", "Listener$ListenerArn": "

        The Amazon Resource Name (ARN) of the listener.

        ", "ListenerArns$member": null, "ModifyListenerInput$ListenerArn": "

        The Amazon Resource Name (ARN) of the listener.

        " } }, "ListenerArns": { "base": null, "refs": { "DescribeListenersInput$ListenerArns": "

        The Amazon Resource Names (ARN) of the listeners.

        " } }, "ListenerNotFoundException": { "base": "

        The specified listener does not exist.

        ", "refs": { } }, "Listeners": { "base": null, "refs": { "CreateListenerOutput$Listeners": "

        Information about the listener.

        ", "DescribeListenersOutput$Listeners": "

        Information about the listeners.

        ", "ModifyListenerOutput$Listeners": "

        Information about the modified listeners.

        " } }, "LoadBalancer": { "base": "

        Information about a load balancer.

        ", "refs": { "LoadBalancers$member": null } }, "LoadBalancerArn": { "base": null, "refs": { "CreateListenerInput$LoadBalancerArn": "

        The Amazon Resource Name (ARN) of the load balancer.

        ", "DeleteLoadBalancerInput$LoadBalancerArn": "

        The Amazon Resource Name (ARN) of the load balancer.

        ", "DescribeListenersInput$LoadBalancerArn": "

        The Amazon Resource Name (ARN) of the load balancer.

        ", "DescribeLoadBalancerAttributesInput$LoadBalancerArn": "

        The Amazon Resource Name (ARN) of the load balancer.

        ", "DescribeTargetGroupsInput$LoadBalancerArn": "

        The Amazon Resource Name (ARN) of the load balancer.

        ", "Listener$LoadBalancerArn": "

        The Amazon Resource Name (ARN) of the load balancer.

        ", "LoadBalancer$LoadBalancerArn": "

        The Amazon Resource Name (ARN) of the load balancer.

        ", "LoadBalancerArns$member": null, "ModifyLoadBalancerAttributesInput$LoadBalancerArn": "

        The Amazon Resource Name (ARN) of the load balancer.

        ", "SetSecurityGroupsInput$LoadBalancerArn": "

        The Amazon Resource Name (ARN) of the load balancer.

        ", "SetSubnetsInput$LoadBalancerArn": "

        The Amazon Resource Name (ARN) of the load balancer.

        " } }, "LoadBalancerArns": { "base": null, "refs": { "DescribeLoadBalancersInput$LoadBalancerArns": "

        The Amazon Resource Names (ARN) of the load balancers.

        ", "TargetGroup$LoadBalancerArns": "

        The Amazon Resource Names (ARN) of the load balancers that route traffic to this target group.

        " } }, "LoadBalancerAttribute": { "base": "

        Information about a load balancer attribute.

        ", "refs": { "LoadBalancerAttributes$member": null } }, "LoadBalancerAttributeKey": { "base": null, "refs": { "LoadBalancerAttribute$Key": "

        The name of the attribute.

        • access_logs.s3.enabled - Indicates whether access logs stored in Amazon S3 are enabled. The value is true or false.

        • access_logs.s3.bucket - The name of the S3 bucket for the access logs. This attribute is required if access logs in Amazon S3 are enabled. The bucket must exist in the same region as the load balancer and have a bucket policy that grants Elastic Load Balancing permission to write to the bucket.

        • access_logs.s3.prefix - The prefix for the location in the S3 bucket. If you don't specify a prefix, the access logs are stored in the root of the bucket.

        • deletion_protection.enabled - Indicates whether deletion protection is enabled. The value is true or false.

        • idle_timeout.timeout_seconds - The idle timeout value, in seconds. The valid range is 1-3600. The default is 60 seconds.

        " } }, "LoadBalancerAttributeValue": { "base": null, "refs": { "LoadBalancerAttribute$Value": "

        The value of the attribute.

        " } }, "LoadBalancerAttributes": { "base": null, "refs": { "DescribeLoadBalancerAttributesOutput$Attributes": "

        Information about the load balancer attributes.

        ", "ModifyLoadBalancerAttributesInput$Attributes": "

        The load balancer attributes.

        ", "ModifyLoadBalancerAttributesOutput$Attributes": "

        Information about the load balancer attributes.

        " } }, "LoadBalancerName": { "base": null, "refs": { "CreateLoadBalancerInput$Name": "

        The name of the load balancer.

        This name must be unique within your AWS account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen.

        ", "LoadBalancer$LoadBalancerName": "

        The name of the load balancer.

        ", "LoadBalancerNames$member": null } }, "LoadBalancerNames": { "base": null, "refs": { "DescribeLoadBalancersInput$Names": "

        The names of the load balancers.

        " } }, "LoadBalancerNotFoundException": { "base": "

        The specified load balancer does not exist.

        ", "refs": { } }, "LoadBalancerSchemeEnum": { "base": null, "refs": { "CreateLoadBalancerInput$Scheme": "

        The nodes of an Internet-facing load balancer have public IP addresses. The DNS name of an Internet-facing load balancer is publicly resolvable to the public IP addresses of the nodes. Therefore, Internet-facing load balancers can route requests from clients over the Internet.

        The nodes of an internal load balancer have only private IP addresses. The DNS name of an internal load balancer is publicly resolvable to the private IP addresses of the nodes. Therefore, internal load balancers can only route requests from clients with access to the VPC for the load balancer.

        The default is an Internet-facing load balancer.

        ", "LoadBalancer$Scheme": "

        The nodes of an Internet-facing load balancer have public IP addresses. The DNS name of an Internet-facing load balancer is publicly resolvable to the public IP addresses of the nodes. Therefore, Internet-facing load balancers can route requests from clients over the Internet.

        The nodes of an internal load balancer have only private IP addresses. The DNS name of an internal load balancer is publicly resolvable to the private IP addresses of the nodes. Therefore, internal load balancers can only route requests from clients with access to the VPC for the load balancer.

        " } }, "LoadBalancerState": { "base": "

        Information about the state of the load balancer.

        ", "refs": { "LoadBalancer$State": "

        The state of the load balancer.

        " } }, "LoadBalancerStateEnum": { "base": null, "refs": { "LoadBalancerState$Code": "

        The state code. The initial state of the load balancer is provisioning. After the load balancer is fully set up and ready to route traffic, its state is active. If the load balancer could not be set up, its state is failed.

        " } }, "LoadBalancerTypeEnum": { "base": null, "refs": { "LoadBalancer$Type": "

        The type of load balancer.

        " } }, "LoadBalancers": { "base": null, "refs": { "CreateLoadBalancerOutput$LoadBalancers": "

        Information about the load balancer.

        ", "DescribeLoadBalancersOutput$LoadBalancers": "

        Information about the load balancers.

        " } }, "Marker": { "base": null, "refs": { "DescribeListenersInput$Marker": "

        The marker for the next set of results. (You received this marker from a previous call.)

        ", "DescribeListenersOutput$NextMarker": "

        The marker to use when requesting the next set of results. If there are no additional results, the string is empty.

        ", "DescribeLoadBalancersInput$Marker": "

        The marker for the next set of results. (You received this marker from a previous call.)

        ", "DescribeLoadBalancersOutput$NextMarker": "

        The marker to use when requesting the next set of results. If there are no additional results, the string is empty.

        ", "DescribeSSLPoliciesInput$Marker": "

        The marker for the next set of results. (You received this marker from a previous call.)

        ", "DescribeSSLPoliciesOutput$NextMarker": "

        The marker to use when requesting the next set of results. If there are no additional results, the string is empty.

        ", "DescribeTargetGroupsInput$Marker": "

        The marker for the next set of results. (You received this marker from a previous call.)

        ", "DescribeTargetGroupsOutput$NextMarker": "

        The marker to use when requesting the next set of results. If there are no additional results, the string is empty.

        " } }, "Matcher": { "base": "

        Information to use when checking for a successful response from a target.

        ", "refs": { "CreateTargetGroupInput$Matcher": "

        The HTTP codes to use when checking for a successful response from a target. The default is 200.

        ", "ModifyTargetGroupInput$Matcher": "

        The HTTP codes to use when checking for a successful response from a target.

        ", "TargetGroup$Matcher": "

        The HTTP codes to use when checking for a successful response from a target.

        " } }, "ModifyListenerInput": { "base": "

        Contains the parameters for ModifyListener.

        ", "refs": { } }, "ModifyListenerOutput": { "base": "

        Contains the output of ModifyListener.

        ", "refs": { } }, "ModifyLoadBalancerAttributesInput": { "base": "

        Contains the parameters for ModifyLoadBalancerAttributes.

        ", "refs": { } }, "ModifyLoadBalancerAttributesOutput": { "base": "

        Contains the output of ModifyLoadBalancerAttributes.

        ", "refs": { } }, "ModifyRuleInput": { "base": "

        Contains the parameters for ModifyRules.

        ", "refs": { } }, "ModifyRuleOutput": { "base": "

        Contains the output of ModifyRules.

        ", "refs": { } }, "ModifyTargetGroupAttributesInput": { "base": "

        Contains the parameters for ModifyTargetGroupAttributes.

        ", "refs": { } }, "ModifyTargetGroupAttributesOutput": { "base": "

        Contains the output of ModifyTargetGroupAttributes.

        ", "refs": { } }, "ModifyTargetGroupInput": { "base": "

        Contains the parameters for ModifyTargetGroup.

        ", "refs": { } }, "ModifyTargetGroupOutput": { "base": "

        Contains the output of ModifyTargetGroup.

        ", "refs": { } }, "OperationNotPermittedException": { "base": "

        This operation is not allowed.

        ", "refs": { } }, "PageSize": { "base": null, "refs": { "DescribeListenersInput$PageSize": "

        The maximum number of results to return with this call.

        ", "DescribeLoadBalancersInput$PageSize": "

        The maximum number of results to return with this call.

        ", "DescribeSSLPoliciesInput$PageSize": "

        The maximum number of results to return with this call.

        ", "DescribeTargetGroupsInput$PageSize": "

        The maximum number of results to return with this call.

        " } }, "Path": { "base": null, "refs": { "CreateTargetGroupInput$HealthCheckPath": "

        The ping path that is the destination on the targets for health checks. The default is /.

        ", "ModifyTargetGroupInput$HealthCheckPath": "

        The ping path that is the destination for the health check request.

        ", "TargetGroup$HealthCheckPath": "

        The destination for the health check request.

        " } }, "Port": { "base": null, "refs": { "CreateListenerInput$Port": "

        The port on which the load balancer is listening.

        ", "CreateTargetGroupInput$Port": "

        The port on which the targets receive traffic. This port is used unless you specify a port override when registering the target.

        ", "Listener$Port": "

        The port on which the load balancer is listening.

        ", "ModifyListenerInput$Port": "

        The port for connections from clients to the load balancer.

        ", "TargetDescription$Port": "

        The port on which the target is listening.

        ", "TargetGroup$Port": "

        The port on which the targets are listening.

        " } }, "PriorityInUseException": { "base": "

        The specified priority is in use.

        ", "refs": { } }, "ProtocolEnum": { "base": null, "refs": { "CreateListenerInput$Protocol": "

        The protocol for connections from clients to the load balancer.

        ", "CreateTargetGroupInput$Protocol": "

        The protocol to use for routing traffic to the targets.

        ", "CreateTargetGroupInput$HealthCheckProtocol": "

        The protocol the load balancer uses when performing health checks on targets. The default is the HTTP protocol.

        ", "Listener$Protocol": "

        The protocol for connections from clients to the load balancer.

        ", "ModifyListenerInput$Protocol": "

        The protocol for connections from clients to the load balancer.

        ", "ModifyTargetGroupInput$HealthCheckProtocol": "

        The protocol to use to connect with the target.

        ", "TargetGroup$Protocol": "

        The protocol to use for routing traffic to the targets.

        ", "TargetGroup$HealthCheckProtocol": "

        The protocol to use to connect with the target.

        " } }, "RegisterTargetsInput": { "base": "

        Contains the parameters for RegisterTargets.

        ", "refs": { } }, "RegisterTargetsOutput": { "base": "

        Contains the output of RegisterTargets.

        ", "refs": { } }, "RemoveTagsInput": { "base": "

        Contains the parameters for RemoveTags.

        ", "refs": { } }, "RemoveTagsOutput": { "base": "

        Contains the output of RemoveTags.

        ", "refs": { } }, "ResourceArn": { "base": null, "refs": { "ResourceArns$member": null, "TagDescription$ResourceArn": "

        The Amazon Resource Name (ARN) of the resource.

        " } }, "ResourceArns": { "base": null, "refs": { "AddTagsInput$ResourceArns": "

        The Amazon Resource Name (ARN) of the resource.

        ", "DescribeTagsInput$ResourceArns": "

        The Amazon Resource Names (ARN) of the resources.

        ", "RemoveTagsInput$ResourceArns": "

        The Amazon Resource Name (ARN) of the resource.

        " } }, "ResourceInUseException": { "base": "

        A specified resource is in use.

        ", "refs": { } }, "Rule": { "base": "

        Information about a rule.

        ", "refs": { "Rules$member": null } }, "RuleArn": { "base": null, "refs": { "DeleteRuleInput$RuleArn": "

        The Amazon Resource Name (ARN) of the rule.

        ", "ModifyRuleInput$RuleArn": "

        The Amazon Resource Name (ARN) of the rule.

        ", "Rule$RuleArn": "

        The Amazon Resource Name (ARN) of the rule.

        ", "RuleArns$member": null, "RulePriorityPair$RuleArn": "

        The Amazon Resource Name (ARN) of the rule.

        " } }, "RuleArns": { "base": null, "refs": { "DescribeRulesInput$RuleArns": "

        The Amazon Resource Names (ARN) of the rules.

        " } }, "RuleCondition": { "base": "

        Information about a condition for a rule.

        ", "refs": { "RuleConditionList$member": null } }, "RuleConditionList": { "base": null, "refs": { "CreateRuleInput$Conditions": "

        A condition. Each condition has the field path-pattern and specifies one path pattern. A path pattern is case sensitive, can be up to 255 characters in length, and can contain any of the following characters:

        • A-Z, a-z, 0-9

        • _ - . $ / ~ \" ' @ : +

        • & (using &amp;)

        • * (matches 0 or more characters)

        • ? (matches exactly 1 character)

        ", "ModifyRuleInput$Conditions": "

        The conditions.

        ", "Rule$Conditions": "

        The conditions.

        " } }, "RuleNotFoundException": { "base": "

        The specified rule does not exist.

        ", "refs": { } }, "RulePriority": { "base": null, "refs": { "CreateRuleInput$Priority": "

        The priority for the rule. A listener can't have multiple rules with the same priority.

        ", "RulePriorityPair$Priority": "

        The rule priority.

        " } }, "RulePriorityList": { "base": null, "refs": { "SetRulePrioritiesInput$RulePriorities": "

        The rule priorities.

        " } }, "RulePriorityPair": { "base": "

        Information about the priorities for the rules for a listener.

        ", "refs": { "RulePriorityList$member": null } }, "Rules": { "base": null, "refs": { "CreateRuleOutput$Rules": "

        Information about the rule.

        ", "DescribeRulesOutput$Rules": "

        Information about the rules.

        ", "ModifyRuleOutput$Rules": "

        Information about the rule.

        ", "SetRulePrioritiesOutput$Rules": "

        Information about the rules.

        " } }, "SSLPolicyNotFoundException": { "base": "

        The specified SSL policy does not exist.

        ", "refs": { } }, "SecurityGroupId": { "base": null, "refs": { "SecurityGroups$member": null } }, "SecurityGroups": { "base": null, "refs": { "CreateLoadBalancerInput$SecurityGroups": "

        The IDs of the security groups to assign to the load balancer.

        ", "LoadBalancer$SecurityGroups": "

        The IDs of the security groups for the load balancer.

        ", "SetSecurityGroupsInput$SecurityGroups": "

        The IDs of the security groups.

        ", "SetSecurityGroupsOutput$SecurityGroupIds": "

        The IDs of the security groups associated with the load balancer.

        " } }, "SetRulePrioritiesInput": { "base": "

        Contains the parameters for SetRulePriorities.

        ", "refs": { } }, "SetRulePrioritiesOutput": { "base": "

        Contains the output of SetRulePriorities.

        ", "refs": { } }, "SetSecurityGroupsInput": { "base": "

        Contains the parameters for SetSecurityGroups.

        ", "refs": { } }, "SetSecurityGroupsOutput": { "base": "

        Contains the output of SetSecurityGroups.

        ", "refs": { } }, "SetSubnetsInput": { "base": "

        Contains the parameters for SetSubnets.

        ", "refs": { } }, "SetSubnetsOutput": { "base": "

        Contains the output of SetSubnets.

        ", "refs": { } }, "SslPolicies": { "base": null, "refs": { "DescribeSSLPoliciesOutput$SslPolicies": "

        Information about the policies.

        " } }, "SslPolicy": { "base": "

        Information about a policy used for SSL negotiation.

        ", "refs": { "SslPolicies$member": null } }, "SslPolicyName": { "base": null, "refs": { "CreateListenerInput$SslPolicy": "

        The security policy that defines which ciphers and protocols are supported. The default is the current predefined security policy.

        ", "Listener$SslPolicy": "

        The security policy that defines which ciphers and protocols are supported. The default is the current predefined security policy.

        ", "ModifyListenerInput$SslPolicy": "

        The security policy that defines which ciphers and protocols are supported.

        ", "SslPolicy$Name": "

        The name of the policy.

        ", "SslPolicyNames$member": null } }, "SslPolicyNames": { "base": null, "refs": { "DescribeSSLPoliciesInput$Names": "

        The names of the policies.

        " } }, "SslProtocol": { "base": null, "refs": { "SslProtocols$member": null } }, "SslProtocols": { "base": null, "refs": { "SslPolicy$SslProtocols": "

        The protocols.

        " } }, "StateReason": { "base": null, "refs": { "LoadBalancerState$Reason": "

        A description of the state.

        " } }, "String": { "base": null, "refs": { "Rule$Priority": "

        The priority.

        " } }, "StringValue": { "base": null, "refs": { "ListOfString$member": null } }, "SubnetId": { "base": null, "refs": { "AvailabilityZone$SubnetId": "

        The ID of the subnet.

        ", "Subnets$member": null } }, "SubnetNotFoundException": { "base": "

        The specified subnet does not exist.

        ", "refs": { } }, "Subnets": { "base": null, "refs": { "CreateLoadBalancerInput$Subnets": "

        The IDs of the subnets to attach to the load balancer. You can specify only one subnet per Availability Zone. You must specify subnets from at least two Availability Zones.

        ", "SetSubnetsInput$Subnets": "

        The IDs of the subnets. You must specify at least two subnets. You can add only one subnet per Availability Zone.

        " } }, "Tag": { "base": "

        Information about a tag.

        ", "refs": { "TagList$member": null } }, "TagDescription": { "base": "

        The tags associated with a resource.

        ", "refs": { "TagDescriptions$member": null } }, "TagDescriptions": { "base": null, "refs": { "DescribeTagsOutput$TagDescriptions": "

        Information about the tags.

        " } }, "TagKey": { "base": null, "refs": { "Tag$Key": "

        The key of the tag.

        ", "TagKeys$member": null } }, "TagKeys": { "base": null, "refs": { "RemoveTagsInput$TagKeys": "

        The tag keys for the tags to remove.

        " } }, "TagList": { "base": null, "refs": { "AddTagsInput$Tags": "

        The tags. Each resource can have a maximum of 10 tags.

        ", "CreateLoadBalancerInput$Tags": "

        One or more tags to assign to the load balancer.

        ", "TagDescription$Tags": "

        Information about the tags.

        " } }, "TagValue": { "base": null, "refs": { "Tag$Value": "

        The value of the tag.

        " } }, "TargetDescription": { "base": "

        Information about a target.

        ", "refs": { "TargetDescriptions$member": null, "TargetHealthDescription$Target": "

        The description of the target.

        " } }, "TargetDescriptions": { "base": null, "refs": { "DeregisterTargetsInput$Targets": "

        The targets. If you specified a port override when you registered a target, you must specify both the target ID and the port when you deregister it.

        ", "DescribeTargetHealthInput$Targets": "

        The targets.

        ", "RegisterTargetsInput$Targets": "

        The targets. The default port for a target is the port for the target group. You can specify a port override. If a target is already registered, you can register it again using a different port.

        " } }, "TargetGroup": { "base": "

        Information about a target group.

        ", "refs": { "TargetGroups$member": null } }, "TargetGroupArn": { "base": null, "refs": { "Action$TargetGroupArn": "

        The Amazon Resource Name (ARN) of the target group.

        ", "DeleteTargetGroupInput$TargetGroupArn": "

        The Amazon Resource Name (ARN) of the target group.

        ", "DeregisterTargetsInput$TargetGroupArn": "

        The Amazon Resource Name (ARN) of the target group.

        ", "DescribeTargetGroupAttributesInput$TargetGroupArn": "

        The Amazon Resource Name (ARN) of the target group.

        ", "DescribeTargetHealthInput$TargetGroupArn": "

        The Amazon Resource Name (ARN) of the target group.

        ", "ModifyTargetGroupAttributesInput$TargetGroupArn": "

        The Amazon Resource Name (ARN) of the target group.

        ", "ModifyTargetGroupInput$TargetGroupArn": "

        The Amazon Resource Name (ARN) of the target group.

        ", "RegisterTargetsInput$TargetGroupArn": "

        The Amazon Resource Name (ARN) of the target group.

        ", "TargetGroup$TargetGroupArn": "

        The Amazon Resource Name (ARN) of the target group.

        ", "TargetGroupArns$member": null } }, "TargetGroupArns": { "base": null, "refs": { "DescribeTargetGroupsInput$TargetGroupArns": "

        The Amazon Resource Names (ARN) of the target groups.

        " } }, "TargetGroupAssociationLimitException": { "base": "

        You've reached the limit on the number of load balancers per target group.

        ", "refs": { } }, "TargetGroupAttribute": { "base": "

        Information about a target group attribute.

        ", "refs": { "TargetGroupAttributes$member": null } }, "TargetGroupAttributeKey": { "base": null, "refs": { "TargetGroupAttribute$Key": "

        The name of the attribute.

        • deregistration_delay.timeout_seconds - The amount time for Elastic Load Balancing to wait before changing the state of a deregistering target from draining to unused. The range is 0-3600 seconds. The default value is 300 seconds.

        • stickiness.enabled - Indicates whether sticky sessions are enabled. The value is true or false.

        • stickiness.type - The type of sticky sessions. The possible value is lb_cookie.

        • stickiness.lb_cookie.duration_seconds - The time period, in seconds, during which requests from a client should be routed to the same target. After this time period expires, the load balancer-generated cookie is considered stale. The range is 1 second to 1 week (604800 seconds). The default value is 1 day (86400 seconds).

        " } }, "TargetGroupAttributeValue": { "base": null, "refs": { "TargetGroupAttribute$Value": "

        The value of the attribute.

        " } }, "TargetGroupAttributes": { "base": null, "refs": { "DescribeTargetGroupAttributesOutput$Attributes": "

        Information about the target group attributes

        ", "ModifyTargetGroupAttributesInput$Attributes": "

        The attributes.

        ", "ModifyTargetGroupAttributesOutput$Attributes": "

        Information about the attributes.

        " } }, "TargetGroupName": { "base": null, "refs": { "CreateTargetGroupInput$Name": "

        The name of the target group.

        ", "TargetGroup$TargetGroupName": "

        The name of the target group.

        ", "TargetGroupNames$member": null } }, "TargetGroupNames": { "base": null, "refs": { "DescribeTargetGroupsInput$Names": "

        The names of the target groups.

        " } }, "TargetGroupNotFoundException": { "base": "

        The specified target group does not exist.

        ", "refs": { } }, "TargetGroups": { "base": null, "refs": { "CreateTargetGroupOutput$TargetGroups": "

        Information about the target group.

        ", "DescribeTargetGroupsOutput$TargetGroups": "

        Information about the target groups.

        ", "ModifyTargetGroupOutput$TargetGroups": "

        Information about the target group.

        " } }, "TargetHealth": { "base": "

        Information about the current health of a target.

        ", "refs": { "TargetHealthDescription$TargetHealth": "

        The health information for the target.

        " } }, "TargetHealthDescription": { "base": "

        Information about the health of a target.

        ", "refs": { "TargetHealthDescriptions$member": null } }, "TargetHealthDescriptions": { "base": null, "refs": { "DescribeTargetHealthOutput$TargetHealthDescriptions": "

        Information about the health of the targets.

        " } }, "TargetHealthReasonEnum": { "base": null, "refs": { "TargetHealth$Reason": "

        The reason code. If the target state is healthy, a reason code is not provided.

        If the target state is initial, the reason code can be one of the following values:

        • Elb.RegistrationInProgress - The target is in the process of being registered with the load balancer.

        • Elb.InitialHealthChecking - The load balancer is still sending the target the minimum number of health checks required to determine its health status.

        If the target state is unhealthy, the reason code can be one of the following values:

        • Target.ResponseCodeMismatch - The health checks did not return an expected HTTP code.

        • Target.Timeout - The health check requests timed out.

        • Target.FailedHealthChecks - The health checks failed because the connection to the target timed out, the target response was malformed, or the target failed the health check for an unknown reason.

        • Elb.InternalError - The health checks failed due to an internal error.

        If the target state is unused, the reason code can be one of the following values:

        • Target.NotRegistered - The target is not registered with the target group.

        • Target.NotInUse - The target group is not used by any load balancer or the target is in an Availability Zone that is not enabled for its load balancer.

        • Target.InvalidState - The target is in the stopped or terminated state.

        If the target state is draining, the reason code can be the following value:

        • Target.DeregistrationInProgress - The target is in the process of being deregistered and the deregistration delay period has not expired.

        " } }, "TargetHealthStateEnum": { "base": null, "refs": { "TargetHealth$State": "

        The state of the target.

        " } }, "TargetId": { "base": null, "refs": { "TargetDescription$Id": "

        The ID of the target.

        " } }, "TooManyCertificatesException": { "base": "

        You've reached the limit on the number of certificates per listener.

        ", "refs": { } }, "TooManyListenersException": { "base": "

        You've reached the limit on the number of listeners per load balancer.

        ", "refs": { } }, "TooManyLoadBalancersException": { "base": "

        You've reached the limit on the number of load balancers for your AWS account.

        ", "refs": { } }, "TooManyRegistrationsForTargetIdException": { "base": "

        You've reached the limit on the number of times a target can be registered with a load balancer.

        ", "refs": { } }, "TooManyRulesException": { "base": "

        You've reached the limit on the number of rules per load balancer.

        ", "refs": { } }, "TooManyTagsException": { "base": "

        You've reached the limit on the number of tags per load balancer.

        ", "refs": { } }, "TooManyTargetGroupsException": { "base": "

        You've reached the limit on the number of target groups for your AWS account.

        ", "refs": { } }, "TooManyTargetsException": { "base": "

        You've reached the limit on the number of targets.

        ", "refs": { } }, "UnsupportedProtocolException": { "base": "

        The specified protocol is not supported.

        ", "refs": { } }, "VpcId": { "base": null, "refs": { "CreateTargetGroupInput$VpcId": "

        The identifier of the virtual private cloud (VPC).

        ", "LoadBalancer$VpcId": "

        The ID of the VPC for the load balancer.

        ", "TargetGroup$VpcId": "

        The ID of the VPC for the targets.

        " } }, "ZoneName": { "base": null, "refs": { "AvailabilityZone$ZoneName": "

        The name of the Availability Zone.

        " } } } } aws-sdk-go-1.4.22/models/apis/elasticloadbalancingv2/2015-12-01/examples-1.json000066400000000000000000001263711300374646400263030ustar00rootroot00000000000000{ "version": "1.0", "examples": { "AddTags": [ { "input": { "ResourceArns": [ "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" ], "Tags": [ { "Key": "project", "Value": "lima" }, { "Key": "department", "Value": "digital-media" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example adds the specified tags to the specified load balancer.", "id": "elbv2-add-tags-1", "title": "To add tags to a load balancer" } ], "CreateListener": [ { "input": { "DefaultActions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ], "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "Port": 80, "Protocol": "HTTP" }, "output": { "Listeners": [ { "DefaultActions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ], "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2", "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "Port": 80, "Protocol": "HTTP" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example creates an HTTP listener for the specified load balancer that forwards requests to the specified target group.", "id": "elbv2-create-listener-1", "title": "To create an HTTP listener" }, { "input": { "Certificates": [ { "CertificateArn": "arn:aws:iam::123456789012:server-certificate/my-server-cert" } ], "DefaultActions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ], "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "Port": 443, "Protocol": "HTTPS", "SslPolicy": "ELBSecurityPolicy-2015-05" }, "output": { "Listeners": [ { "Certificates": [ { "CertificateArn": "arn:aws:iam::123456789012:server-certificate/my-server-cert" } ], "DefaultActions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ], "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2", "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "Port": 443, "Protocol": "HTTPS", "SslPolicy": "ELBSecurityPolicy-2015-05" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example creates an HTTPS listener for the specified load balancer that forwards requests to the specified target group. Note that you must specify an SSL certificate for an HTTPS listener. You can create and manage certificates using AWS Certificate Manager (ACM). Alternatively, you can create a certificate using SSL/TLS tools, get the certificate signed by a certificate authority (CA), and upload the certificate to AWS Identity and Access Management (IAM).", "id": "elbv2-create-listener-2", "title": "To create an HTTPS listener" } ], "CreateLoadBalancer": [ { "input": { "Name": "my-load-balancer", "Subnets": [ "subnet-b7d581c0", "subnet-8360a9e7" ] }, "output": { "LoadBalancers": [ { "AvailabilityZones": [ { "SubnetId": "subnet-8360a9e7", "ZoneName": "us-west-2a" }, { "SubnetId": "subnet-b7d581c0", "ZoneName": "us-west-2b" } ], "CanonicalHostedZoneId": "Z2P70J7EXAMPLE", "CreatedTime": "2016-03-25T21:26:12.920Z", "DNSName": "my-load-balancer-424835706.us-west-2.elb.amazonaws.com", "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "LoadBalancerName": "my-load-balancer", "Scheme": "internet-facing", "SecurityGroups": [ "sg-5943793c" ], "State": { "Code": "provisioning" }, "Type": "application", "VpcId": "vpc-3ac0fb5f" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example creates an Internet-facing load balancer and enables the Availability Zones for the specified subnets.", "id": "elbv2-create-load-balancer-1", "title": "To create an Internet-facing load balancer" }, { "input": { "Name": "my-internal-load-balancer", "Scheme": "internal", "SecurityGroups": [ ], "Subnets": [ "subnet-b7d581c0", "subnet-8360a9e7" ] }, "output": { "LoadBalancers": [ { "AvailabilityZones": [ { "SubnetId": "subnet-8360a9e7", "ZoneName": "us-west-2a" }, { "SubnetId": "subnet-b7d581c0", "ZoneName": "us-west-2b" } ], "CanonicalHostedZoneId": "Z2P70J7EXAMPLE", "CreatedTime": "2016-03-25T21:29:48.850Z", "DNSName": "internal-my-internal-load-balancer-1529930873.us-west-2.elb.amazonaws.com", "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-internal-load-balancer/5b49b8d4303115c2", "LoadBalancerName": "my-internal-load-balancer", "Scheme": "internal", "SecurityGroups": [ "sg-5943793c" ], "State": { "Code": "provisioning" }, "Type": "application", "VpcId": "vpc-3ac0fb5f" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example creates an internal load balancer and enables the Availability Zones for the specified subnets.", "id": "elbv2-create-load-balancer-2", "title": "To create an internal load balancer" } ], "CreateRule": [ { "input": { "Actions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ], "Conditions": [ { "Field": "path-pattern", "Values": [ "/img/*" ] } ], "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2", "Priority": 10 }, "output": { "Rules": [ { "Actions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ], "Conditions": [ { "Field": "path-pattern", "Values": [ "/img/*" ] } ], "IsDefault": false, "Priority": "10", "RuleArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/9683b2d02a6cabee" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example creates a rule that forwards requests to the specified target group if the URL contains the specified pattern (for example, /img/*).", "id": "elbv2-create-rule-1", "title": "To create a rule" } ], "CreateTargetGroup": [ { "input": { "Name": "my-targets", "Port": 80, "Protocol": "HTTP", "VpcId": "vpc-3ac0fb5f" }, "output": { "TargetGroups": [ { "HealthCheckIntervalSeconds": 30, "HealthCheckPath": "/", "HealthCheckPort": "traffic-port", "HealthCheckProtocol": "HTTP", "HealthCheckTimeoutSeconds": 5, "HealthyThresholdCount": 5, "Matcher": { "HttpCode": "200" }, "Port": 80, "Protocol": "HTTP", "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "TargetGroupName": "my-targets", "UnhealthyThresholdCount": 2, "VpcId": "vpc-3ac0fb5f" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example creates a target group that you can use to route traffic to targets using HTTP on port 80. This target group uses the default health check configuration.", "id": "elbv2-create-target-group-1", "title": "To create a target group" } ], "DeleteListener": [ { "input": { "ListenerArn": "arn:aws:elasticloadbalancing:ua-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified listener.", "id": "elbv2-delete-listener-1", "title": "To delete a listener" } ], "DeleteLoadBalancer": [ { "input": { "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified load balancer.", "id": "elbv2-delete-load-balancer-1", "title": "To delete a load balancer" } ], "DeleteRule": [ { "input": { "RuleArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/1291d13826f405c3" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified rule.", "id": "elbv2-delete-rule-1", "title": "To delete a rule" } ], "DeleteTargetGroup": [ { "input": { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified target group.", "id": "elbv2-delete-target-group-1", "title": "To delete a target group" } ], "DeregisterTargets": [ { "input": { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Targets": [ { "Id": "i-0f76fade" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example deregisters the specified instance from the specified target group.", "id": "elbv2-deregister-targets-1", "title": "To deregister a target from a target group" } ], "DescribeListeners": [ { "input": { "ListenerArns": [ "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2" ] }, "output": { "Listeners": [ { "DefaultActions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ], "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2", "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "Port": 80, "Protocol": "HTTP" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified listener.", "id": "elbv2-describe-listeners-1", "title": "To describe a listener" } ], "DescribeLoadBalancerAttributes": [ { "input": { "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" }, "output": { "Attributes": [ { "Key": "access_logs.s3.enabled", "Value": "false" }, { "Key": "idle_timeout.timeout_seconds", "Value": "60" }, { "Key": "access_logs.s3.prefix", "Value": "" }, { "Key": "deletion_protection.enabled", "Value": "false" }, { "Key": "access_logs.s3.bucket", "Value": "" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the attributes of the specified load balancer.", "id": "elbv2-describe-load-balancer-attributes-1", "title": "To describe load balancer attributes" } ], "DescribeLoadBalancers": [ { "input": { "LoadBalancerArns": [ "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" ] }, "output": { "LoadBalancers": [ { "AvailabilityZones": [ { "SubnetId": "subnet-8360a9e7", "ZoneName": "us-west-2a" }, { "SubnetId": "subnet-b7d581c0", "ZoneName": "us-west-2b" } ], "CanonicalHostedZoneId": "Z2P70J7EXAMPLE", "CreatedTime": "2016-03-25T21:26:12.920Z", "DNSName": "my-load-balancer-424835706.us-west-2.elb.amazonaws.com", "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "LoadBalancerName": "my-load-balancer", "Scheme": "internet-facing", "SecurityGroups": [ "sg-5943793c" ], "State": { "Code": "active" }, "Type": "application", "VpcId": "vpc-3ac0fb5f" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified load balancer.", "id": "elbv2-describe-load-balancers-1", "title": "To describe a load balancer" } ], "DescribeRules": [ { "input": { "RuleArns": [ "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/9683b2d02a6cabee" ] }, "output": { "Rules": [ { "Actions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ], "Conditions": [ { "Field": "path-pattern", "Values": [ "/img/*" ] } ], "IsDefault": false, "Priority": "10", "RuleArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/9683b2d02a6cabee" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified rule.", "id": "elbv2-describe-rules-1", "title": "To describe a rule" } ], "DescribeSSLPolicies": [ { "input": { "Names": [ "ELBSecurityPolicy-2015-05" ] }, "output": { "SslPolicies": [ { "Ciphers": [ { "Name": "ECDHE-ECDSA-AES128-GCM-SHA256", "Priority": 1 }, { "Name": "ECDHE-RSA-AES128-GCM-SHA256", "Priority": 2 }, { "Name": "ECDHE-ECDSA-AES128-SHA256", "Priority": 3 }, { "Name": "ECDHE-RSA-AES128-SHA256", "Priority": 4 }, { "Name": "ECDHE-ECDSA-AES128-SHA", "Priority": 5 }, { "Name": "ECDHE-RSA-AES128-SHA", "Priority": 6 }, { "Name": "DHE-RSA-AES128-SHA", "Priority": 7 }, { "Name": "ECDHE-ECDSA-AES256-GCM-SHA384", "Priority": 8 }, { "Name": "ECDHE-RSA-AES256-GCM-SHA384", "Priority": 9 }, { "Name": "ECDHE-ECDSA-AES256-SHA384", "Priority": 10 }, { "Name": "ECDHE-RSA-AES256-SHA384", "Priority": 11 }, { "Name": "ECDHE-RSA-AES256-SHA", "Priority": 12 }, { "Name": "ECDHE-ECDSA-AES256-SHA", "Priority": 13 }, { "Name": "AES128-GCM-SHA256", "Priority": 14 }, { "Name": "AES128-SHA256", "Priority": 15 }, { "Name": "AES128-SHA", "Priority": 16 }, { "Name": "AES256-GCM-SHA384", "Priority": 17 }, { "Name": "AES256-SHA256", "Priority": 18 }, { "Name": "AES256-SHA", "Priority": 19 } ], "Name": "ELBSecurityPolicy-2015-05", "SslProtocols": [ "TLSv1", "TLSv1.1", "TLSv1.2" ] } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified policy used for SSL negotiation.", "id": "elbv2-describe-ssl-policies-1", "title": "To describe a policy used for SSL negotiation" } ], "DescribeTags": [ { "input": { "ResourceArns": [ "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" ] }, "output": { "TagDescriptions": [ { "ResourceArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "Tags": [ { "Key": "project", "Value": "lima" }, { "Key": "department", "Value": "digital-media" } ] } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the tags assigned to the specified load balancer.", "id": "elbv2-describe-tags-1", "title": "To describe the tags assigned to a load balancer" } ], "DescribeTargetGroupAttributes": [ { "input": { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067" }, "output": { "Attributes": [ { "Key": "stickiness.enabled", "Value": "false" }, { "Key": "deregistration_delay.timeout_seconds", "Value": "300" }, { "Key": "stickiness.type", "Value": "lb_cookie" }, { "Key": "stickiness.lb_cookie.duration_seconds", "Value": "86400" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the attributes of the specified target group.", "id": "elbv2-describe-target-group-attributes-1", "title": "To describe target group attributes" } ], "DescribeTargetGroups": [ { "input": { "TargetGroupArns": [ "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067" ] }, "output": { "TargetGroups": [ { "HealthCheckIntervalSeconds": 30, "HealthCheckPath": "/", "HealthCheckPort": "traffic-port", "HealthCheckProtocol": "HTTP", "HealthCheckTimeoutSeconds": 5, "HealthyThresholdCount": 5, "LoadBalancerArns": [ "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" ], "Matcher": { "HttpCode": "200" }, "Port": 80, "Protocol": "HTTP", "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "TargetGroupName": "my-targets", "UnhealthyThresholdCount": 2, "VpcId": "vpc-3ac0fb5f" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the specified target group.", "id": "elbv2-describe-target-groups-1", "title": "To describe a target group" } ], "DescribeTargetHealth": [ { "input": { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067" }, "output": { "TargetHealthDescriptions": [ { "Target": { "Id": "i-0f76fade", "Port": 80 }, "TargetHealth": { "Description": "Given target group is not configured to receive traffic from ELB", "Reason": "Target.NotInUse", "State": "unused" } }, { "HealthCheckPort": "80", "Target": { "Id": "i-0f76fade", "Port": 80 }, "TargetHealth": { "State": "healthy" } } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the health of the targets for the specified target group. One target is healthy but the other is not specified in an action, so it can't receive traffic from the load balancer.", "id": "elbv2-describe-target-health-1", "title": "To describe the health of the targets for a target group" }, { "input": { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Targets": [ { "Id": "i-0f76fade", "Port": 80 } ] }, "output": { "TargetHealthDescriptions": [ { "HealthCheckPort": "80", "Target": { "Id": "i-0f76fade", "Port": 80 }, "TargetHealth": { "State": "healthy" } } ] }, "comments": { "input": { }, "output": { } }, "description": "This example describes the health of the specified target. This target is healthy.", "id": "elbv2-describe-target-health-2", "title": "To describe the health of a target" } ], "ModifyListener": [ { "input": { "DefaultActions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-new-targets/2453ed029918f21f", "Type": "forward" } ], "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2" }, "output": { "Listeners": [ { "DefaultActions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-new-targets/2453ed029918f21f", "Type": "forward" } ], "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2", "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "Port": 80, "Protocol": "HTTP" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example changes the default action for the specified listener.", "id": "elbv2-modify-listener-1", "title": "To change the default action for a listener" }, { "input": { "Certificates": [ { "CertificateArn": "arn:aws:iam::123456789012:server-certificate/my-new-server-cert" } ], "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/0467ef3c8400ae65" }, "output": { "Listeners": [ { "Certificates": [ { "CertificateArn": "arn:aws:iam::123456789012:server-certificate/my-new-server-cert" } ], "DefaultActions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ], "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/0467ef3c8400ae65", "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "Port": 443, "Protocol": "HTTPS", "SslPolicy": "ELBSecurityPolicy-2015-05" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example changes the server certificate for the specified HTTPS listener.", "id": "elbv2-modify-listener-2", "title": "To change the server certificate" } ], "ModifyLoadBalancerAttributes": [ { "input": { "Attributes": [ { "Key": "deletion_protection.enabled", "Value": "true" } ], "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" }, "output": { "Attributes": [ { "Key": "deletion_protection.enabled", "Value": "true" }, { "Key": "access_logs.s3.enabled", "Value": "false" }, { "Key": "idle_timeout.timeout_seconds", "Value": "60" }, { "Key": "access_logs.s3.prefix", "Value": "" }, { "Key": "access_logs.s3.bucket", "Value": "" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example enables deletion protection for the specified load balancer.", "id": "elbv2-modify-load-balancer-attributes-1", "title": "To enable deletion protection" }, { "input": { "Attributes": [ { "Key": "idle_timeout.timeout_seconds", "Value": "30" } ], "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" }, "output": { "Attributes": [ { "Key": "idle_timeout.timeout_seconds", "Value": "30" }, { "Key": "access_logs.s3.enabled", "Value": "false" }, { "Key": "access_logs.s3.prefix", "Value": "" }, { "Key": "deletion_protection.enabled", "Value": "true" }, { "Key": "access_logs.s3.bucket", "Value": "" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example changes the idle timeout value for the specified load balancer.", "id": "elbv2-modify-load-balancer-attributes-2", "title": "To change the idle timeout" }, { "input": { "Attributes": [ { "Key": "access_logs.s3.enabled", "Value": "true" }, { "Key": "access_logs.s3.bucket", "Value": "my-loadbalancer-logs" }, { "Key": "access_logs.s3.prefix", "Value": "myapp" } ], "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" }, "output": { "Attributes": [ { "Key": "access_logs.s3.enabled", "Value": "true" }, { "Key": "access_logs.s3.bucket", "Value": "my-load-balancer-logs" }, { "Key": "access_logs.s3.prefix", "Value": "myapp" }, { "Key": "idle_timeout.timeout_seconds", "Value": "60" }, { "Key": "deletion_protection.enabled", "Value": "false" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example enables access logs for the specified load balancer. Note that the S3 bucket must exist in the same region as the load balancer and must have a policy attached that grants access to the Elastic Load Balancing service.", "id": "elbv2-modify-load-balancer-attributes-3", "title": "To enable access logs" } ], "ModifyRule": [ { "input": { "Conditions": [ { "Field": "path-pattern", "Values": [ "/images/*" ] } ], "RuleArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/9683b2d02a6cabee" }, "output": { "Rules": [ { "Actions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ], "Conditions": [ { "Field": "path-pattern", "Values": [ "/images/*" ] } ], "IsDefault": false, "Priority": "10", "RuleArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/9683b2d02a6cabee" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example modifies the condition for the specified rule.", "id": "elbv2-modify-rule-1", "title": "To modify a rule" } ], "ModifyTargetGroup": [ { "input": { "HealthCheckPort": "443", "HealthCheckProtocol": "HTTPS", "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-https-targets/2453ed029918f21f" }, "output": { "TargetGroups": [ { "HealthCheckIntervalSeconds": 30, "HealthCheckPort": "443", "HealthCheckProtocol": "HTTPS", "HealthCheckTimeoutSeconds": 5, "HealthyThresholdCount": 5, "LoadBalancerArns": [ "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" ], "Matcher": { "HttpCode": "200" }, "Port": 443, "Protocol": "HTTPS", "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-https-targets/2453ed029918f21f", "TargetGroupName": "my-https-targets", "UnhealthyThresholdCount": 2, "VpcId": "vpc-3ac0fb5f" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example changes the configuration of the health checks used to evaluate the health of the targets for the specified target group.", "id": "elbv2-modify-target-group-1", "title": "To modify the health check configuration for a target group" } ], "ModifyTargetGroupAttributes": [ { "input": { "Attributes": [ { "Key": "deregistration_delay.timeout_seconds", "Value": "600" } ], "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067" }, "output": { "Attributes": [ { "Key": "stickiness.enabled", "Value": "false" }, { "Key": "deregistration_delay.timeout_seconds", "Value": "600" }, { "Key": "stickiness.type", "Value": "lb_cookie" }, { "Key": "stickiness.lb_cookie.duration_seconds", "Value": "86400" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example sets the deregistration delay timeout to the specified value for the specified target group.", "id": "elbv2-modify-target-group-attributes-1", "title": "To modify the deregistration delay timeout" } ], "RegisterTargets": [ { "input": { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Targets": [ { "Id": "i-80c8dd94" }, { "Id": "i-ceddcd4d" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example registers the specified instances with the specified target group.", "id": "elbv2-register-targets-1", "title": "To register targets with a target group" }, { "input": { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-new-targets/3bb63f11dfb0faf9", "Targets": [ { "Id": "i-80c8dd94", "Port": 80 }, { "Id": "i-80c8dd94", "Port": 766 } ] }, "comments": { "input": { }, "output": { } }, "description": "This example registers the specified instance with the specified target group using multiple ports. This enables you to register ECS containers on the same instance as targets in the target group.", "id": "elbv2-register-targets-2", "title": "To register targets with a target group using port overrides" } ], "RemoveTags": [ { "input": { "ResourceArns": [ "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" ], "TagKeys": [ "project", "department" ] }, "comments": { "input": { }, "output": { } }, "description": "This example removes the specified tags from the specified load balancer.", "id": "elbv2-remove-tags-1", "title": "To remove tags from a load balancer" } ], "SetRulePriorities": [ { "input": { "RulePriorities": [ { "Priority": 5, "RuleArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/1291d13826f405c3" } ] }, "output": { "Rules": [ { "Actions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ], "Conditions": [ { "Field": "path-pattern", "Values": [ "/img/*" ] } ], "IsDefault": false, "Priority": "5", "RuleArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/1291d13826f405c3" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example sets the priority of the specified rule.", "id": "elbv2-set-rule-priorities-1", "title": "To set the rule priority" } ], "SetSecurityGroups": [ { "input": { "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "SecurityGroups": [ "sg-5943793c" ] }, "output": { "SecurityGroupIds": [ "sg-5943793c" ] }, "comments": { "input": { }, "output": { } }, "description": "This example associates the specified security group with the specified load balancer.", "id": "elbv2-set-security-groups-1", "title": "To associate a security group with a load balancer" } ], "SetSubnets": [ { "input": { "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "Subnets": [ "subnet-8360a9e7", "subnet-b7d581c0" ] }, "output": { "AvailabilityZones": [ { "SubnetId": "subnet-8360a9e7", "ZoneName": "us-west-2a" }, { "SubnetId": "subnet-b7d581c0", "ZoneName": "us-west-2b" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example enables the Availability Zones for the specified subnets for the specified load balancer.", "id": "elbv2-set-subnets-1", "title": "To enable Availability Zones for a load balancer" } ] } } aws-sdk-go-1.4.22/models/apis/elasticloadbalancingv2/2015-12-01/paginators-1.json000066400000000000000000000006671300374646400266330ustar00rootroot00000000000000{ "pagination": { "DescribeTargetGroups": { "input_token": "Marker", "output_token": "NextMarker", "result_key": "TargetGroups" }, "DescribeListeners": { "input_token": "Marker", "output_token": "NextMarker", "result_key": "Listeners" }, "DescribeLoadBalancers": { "input_token": "Marker", "output_token": "NextMarker", "result_key": "LoadBalancers" } } } aws-sdk-go-1.4.22/models/apis/elasticmapreduce/000077500000000000000000000000001300374646400213145ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/elasticmapreduce/2009-03-31/000077500000000000000000000000001300374646400223475ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/elasticmapreduce/2009-03-31/api-2.json000066400000000000000000001157261300374646400241660ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2009-03-31", "endpointPrefix":"elasticmapreduce", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"Amazon EMR", "serviceFullName":"Amazon Elastic MapReduce", "signatureVersion":"v4", "targetPrefix":"ElasticMapReduce", "timestampFormat":"unixTimestamp" }, "operations":{ "AddInstanceGroups":{ "name":"AddInstanceGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddInstanceGroupsInput"}, "output":{"shape":"AddInstanceGroupsOutput"}, "errors":[ {"shape":"InternalServerError"} ] }, "AddJobFlowSteps":{ "name":"AddJobFlowSteps", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddJobFlowStepsInput"}, "output":{"shape":"AddJobFlowStepsOutput"}, "errors":[ {"shape":"InternalServerError"} ] }, "AddTags":{ "name":"AddTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsInput"}, "output":{"shape":"AddTagsOutput"}, "errors":[ {"shape":"InternalServerException"}, {"shape":"InvalidRequestException"} ] }, "CreateSecurityConfiguration":{ "name":"CreateSecurityConfiguration", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSecurityConfigurationInput"}, "output":{"shape":"CreateSecurityConfigurationOutput"}, "errors":[ {"shape":"InternalServerException"}, {"shape":"InvalidRequestException"} ] }, "DeleteSecurityConfiguration":{ "name":"DeleteSecurityConfiguration", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSecurityConfigurationInput"}, "output":{"shape":"DeleteSecurityConfigurationOutput"}, "errors":[ {"shape":"InternalServerException"}, {"shape":"InvalidRequestException"} ] }, "DescribeCluster":{ "name":"DescribeCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeClusterInput"}, "output":{"shape":"DescribeClusterOutput"}, "errors":[ {"shape":"InternalServerException"}, {"shape":"InvalidRequestException"} ] }, "DescribeJobFlows":{ "name":"DescribeJobFlows", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeJobFlowsInput"}, "output":{"shape":"DescribeJobFlowsOutput"}, "errors":[ {"shape":"InternalServerError"} ], "deprecated":true }, "DescribeSecurityConfiguration":{ "name":"DescribeSecurityConfiguration", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSecurityConfigurationInput"}, "output":{"shape":"DescribeSecurityConfigurationOutput"}, "errors":[ {"shape":"InternalServerException"}, {"shape":"InvalidRequestException"} ] }, "DescribeStep":{ "name":"DescribeStep", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeStepInput"}, "output":{"shape":"DescribeStepOutput"}, "errors":[ {"shape":"InternalServerException"}, {"shape":"InvalidRequestException"} ] }, "ListBootstrapActions":{ "name":"ListBootstrapActions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListBootstrapActionsInput"}, "output":{"shape":"ListBootstrapActionsOutput"}, "errors":[ {"shape":"InternalServerException"}, {"shape":"InvalidRequestException"} ] }, "ListClusters":{ "name":"ListClusters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListClustersInput"}, "output":{"shape":"ListClustersOutput"}, "errors":[ {"shape":"InternalServerException"}, {"shape":"InvalidRequestException"} ] }, "ListInstanceGroups":{ "name":"ListInstanceGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListInstanceGroupsInput"}, "output":{"shape":"ListInstanceGroupsOutput"}, "errors":[ {"shape":"InternalServerException"}, {"shape":"InvalidRequestException"} ] }, "ListInstances":{ "name":"ListInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListInstancesInput"}, "output":{"shape":"ListInstancesOutput"}, "errors":[ {"shape":"InternalServerException"}, {"shape":"InvalidRequestException"} ] }, "ListSecurityConfigurations":{ "name":"ListSecurityConfigurations", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListSecurityConfigurationsInput"}, "output":{"shape":"ListSecurityConfigurationsOutput"}, "errors":[ {"shape":"InternalServerException"}, {"shape":"InvalidRequestException"} ] }, "ListSteps":{ "name":"ListSteps", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListStepsInput"}, "output":{"shape":"ListStepsOutput"}, "errors":[ {"shape":"InternalServerException"}, {"shape":"InvalidRequestException"} ] }, "ModifyInstanceGroups":{ "name":"ModifyInstanceGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyInstanceGroupsInput"}, "errors":[ {"shape":"InternalServerError"} ] }, "RemoveTags":{ "name":"RemoveTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsInput"}, "output":{"shape":"RemoveTagsOutput"}, "errors":[ {"shape":"InternalServerException"}, {"shape":"InvalidRequestException"} ] }, "RunJobFlow":{ "name":"RunJobFlow", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RunJobFlowInput"}, "output":{"shape":"RunJobFlowOutput"}, "errors":[ {"shape":"InternalServerError"} ] }, "SetTerminationProtection":{ "name":"SetTerminationProtection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetTerminationProtectionInput"}, "errors":[ {"shape":"InternalServerError"} ] }, "SetVisibleToAllUsers":{ "name":"SetVisibleToAllUsers", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetVisibleToAllUsersInput"}, "errors":[ {"shape":"InternalServerError"} ] }, "TerminateJobFlows":{ "name":"TerminateJobFlows", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"TerminateJobFlowsInput"}, "errors":[ {"shape":"InternalServerError"} ] } }, "shapes":{ "ActionOnFailure":{ "type":"string", "enum":[ "TERMINATE_JOB_FLOW", "TERMINATE_CLUSTER", "CANCEL_AND_WAIT", "CONTINUE" ] }, "AddInstanceGroupsInput":{ "type":"structure", "required":[ "InstanceGroups", "JobFlowId" ], "members":{ "InstanceGroups":{"shape":"InstanceGroupConfigList"}, "JobFlowId":{"shape":"XmlStringMaxLen256"} } }, "AddInstanceGroupsOutput":{ "type":"structure", "members":{ "JobFlowId":{"shape":"XmlStringMaxLen256"}, "InstanceGroupIds":{"shape":"InstanceGroupIdsList"} } }, "AddJobFlowStepsInput":{ "type":"structure", "required":[ "JobFlowId", "Steps" ], "members":{ "JobFlowId":{"shape":"XmlStringMaxLen256"}, "Steps":{"shape":"StepConfigList"} } }, "AddJobFlowStepsOutput":{ "type":"structure", "members":{ "StepIds":{"shape":"StepIdsList"} } }, "AddTagsInput":{ "type":"structure", "required":[ "ResourceId", "Tags" ], "members":{ "ResourceId":{"shape":"ResourceId"}, "Tags":{"shape":"TagList"} } }, "AddTagsOutput":{ "type":"structure", "members":{ } }, "Application":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "Version":{"shape":"String"}, "Args":{"shape":"StringList"}, "AdditionalInfo":{"shape":"StringMap"} } }, "ApplicationList":{ "type":"list", "member":{"shape":"Application"} }, "Boolean":{"type":"boolean"}, "BooleanObject":{"type":"boolean"}, "BootstrapActionConfig":{ "type":"structure", "required":[ "Name", "ScriptBootstrapAction" ], "members":{ "Name":{"shape":"XmlStringMaxLen256"}, "ScriptBootstrapAction":{"shape":"ScriptBootstrapActionConfig"} } }, "BootstrapActionConfigList":{ "type":"list", "member":{"shape":"BootstrapActionConfig"} }, "BootstrapActionDetail":{ "type":"structure", "members":{ "BootstrapActionConfig":{"shape":"BootstrapActionConfig"} } }, "BootstrapActionDetailList":{ "type":"list", "member":{"shape":"BootstrapActionDetail"} }, "Cluster":{ "type":"structure", "members":{ "Id":{"shape":"ClusterId"}, "Name":{"shape":"String"}, "Status":{"shape":"ClusterStatus"}, "Ec2InstanceAttributes":{"shape":"Ec2InstanceAttributes"}, "LogUri":{"shape":"String"}, "RequestedAmiVersion":{"shape":"String"}, "RunningAmiVersion":{"shape":"String"}, "ReleaseLabel":{"shape":"String"}, "AutoTerminate":{"shape":"Boolean"}, "TerminationProtected":{"shape":"Boolean"}, "VisibleToAllUsers":{"shape":"Boolean"}, "Applications":{"shape":"ApplicationList"}, "Tags":{"shape":"TagList"}, "ServiceRole":{"shape":"String"}, "NormalizedInstanceHours":{"shape":"Integer"}, "MasterPublicDnsName":{"shape":"String"}, "Configurations":{"shape":"ConfigurationList"}, "SecurityConfiguration":{"shape":"XmlString"} } }, "ClusterId":{"type":"string"}, "ClusterState":{ "type":"string", "enum":[ "STARTING", "BOOTSTRAPPING", "RUNNING", "WAITING", "TERMINATING", "TERMINATED", "TERMINATED_WITH_ERRORS" ] }, "ClusterStateChangeReason":{ "type":"structure", "members":{ "Code":{"shape":"ClusterStateChangeReasonCode"}, "Message":{"shape":"String"} } }, "ClusterStateChangeReasonCode":{ "type":"string", "enum":[ "INTERNAL_ERROR", "VALIDATION_ERROR", "INSTANCE_FAILURE", "BOOTSTRAP_FAILURE", "USER_REQUEST", "STEP_FAILURE", "ALL_STEPS_COMPLETED" ] }, "ClusterStateList":{ "type":"list", "member":{"shape":"ClusterState"} }, "ClusterStatus":{ "type":"structure", "members":{ "State":{"shape":"ClusterState"}, "StateChangeReason":{"shape":"ClusterStateChangeReason"}, "Timeline":{"shape":"ClusterTimeline"} } }, "ClusterSummary":{ "type":"structure", "members":{ "Id":{"shape":"ClusterId"}, "Name":{"shape":"String"}, "Status":{"shape":"ClusterStatus"}, "NormalizedInstanceHours":{"shape":"Integer"} } }, "ClusterSummaryList":{ "type":"list", "member":{"shape":"ClusterSummary"} }, "ClusterTimeline":{ "type":"structure", "members":{ "CreationDateTime":{"shape":"Date"}, "ReadyDateTime":{"shape":"Date"}, "EndDateTime":{"shape":"Date"} } }, "Command":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "ScriptPath":{"shape":"String"}, "Args":{"shape":"StringList"} } }, "CommandList":{ "type":"list", "member":{"shape":"Command"} }, "Configuration":{ "type":"structure", "members":{ "Classification":{"shape":"String"}, "Configurations":{"shape":"ConfigurationList"}, "Properties":{"shape":"StringMap"} } }, "ConfigurationList":{ "type":"list", "member":{"shape":"Configuration"} }, "CreateSecurityConfigurationInput":{ "type":"structure", "required":[ "Name", "SecurityConfiguration" ], "members":{ "Name":{"shape":"XmlString"}, "SecurityConfiguration":{"shape":"String"} } }, "CreateSecurityConfigurationOutput":{ "type":"structure", "required":[ "Name", "CreationDateTime" ], "members":{ "Name":{"shape":"XmlString"}, "CreationDateTime":{"shape":"Date"} } }, "Date":{"type":"timestamp"}, "DeleteSecurityConfigurationInput":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"XmlString"} } }, "DeleteSecurityConfigurationOutput":{ "type":"structure", "members":{ } }, "DescribeClusterInput":{ "type":"structure", "required":["ClusterId"], "members":{ "ClusterId":{"shape":"ClusterId"} } }, "DescribeClusterOutput":{ "type":"structure", "members":{ "Cluster":{"shape":"Cluster"} } }, "DescribeJobFlowsInput":{ "type":"structure", "members":{ "CreatedAfter":{"shape":"Date"}, "CreatedBefore":{"shape":"Date"}, "JobFlowIds":{"shape":"XmlStringList"}, "JobFlowStates":{"shape":"JobFlowExecutionStateList"} } }, "DescribeJobFlowsOutput":{ "type":"structure", "members":{ "JobFlows":{"shape":"JobFlowDetailList"} } }, "DescribeSecurityConfigurationInput":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"XmlString"} } }, "DescribeSecurityConfigurationOutput":{ "type":"structure", "members":{ "Name":{"shape":"XmlString"}, "SecurityConfiguration":{"shape":"String"}, "CreationDateTime":{"shape":"Date"} } }, "DescribeStepInput":{ "type":"structure", "required":[ "ClusterId", "StepId" ], "members":{ "ClusterId":{"shape":"ClusterId"}, "StepId":{"shape":"StepId"} } }, "DescribeStepOutput":{ "type":"structure", "members":{ "Step":{"shape":"Step"} } }, "EC2InstanceIdsList":{ "type":"list", "member":{"shape":"InstanceId"} }, "EC2InstanceIdsToTerminateList":{ "type":"list", "member":{"shape":"InstanceId"} }, "EbsBlockDevice":{ "type":"structure", "members":{ "VolumeSpecification":{"shape":"VolumeSpecification"}, "Device":{"shape":"String"} } }, "EbsBlockDeviceConfig":{ "type":"structure", "required":["VolumeSpecification"], "members":{ "VolumeSpecification":{"shape":"VolumeSpecification"}, "VolumesPerInstance":{"shape":"Integer"} } }, "EbsBlockDeviceConfigList":{ "type":"list", "member":{"shape":"EbsBlockDeviceConfig"} }, "EbsBlockDeviceList":{ "type":"list", "member":{"shape":"EbsBlockDevice"} }, "EbsConfiguration":{ "type":"structure", "members":{ "EbsBlockDeviceConfigs":{"shape":"EbsBlockDeviceConfigList"}, "EbsOptimized":{"shape":"BooleanObject"} } }, "EbsVolume":{ "type":"structure", "members":{ "Device":{"shape":"String"}, "VolumeId":{"shape":"String"} } }, "EbsVolumeList":{ "type":"list", "member":{"shape":"EbsVolume"} }, "Ec2InstanceAttributes":{ "type":"structure", "members":{ "Ec2KeyName":{"shape":"String"}, "Ec2SubnetId":{"shape":"String"}, "Ec2AvailabilityZone":{"shape":"String"}, "IamInstanceProfile":{"shape":"String"}, "EmrManagedMasterSecurityGroup":{"shape":"String"}, "EmrManagedSlaveSecurityGroup":{"shape":"String"}, "ServiceAccessSecurityGroup":{"shape":"String"}, "AdditionalMasterSecurityGroups":{"shape":"StringList"}, "AdditionalSlaveSecurityGroups":{"shape":"StringList"} } }, "ErrorCode":{ "type":"string", "max":256, "min":1 }, "ErrorMessage":{"type":"string"}, "FailureDetails":{ "type":"structure", "members":{ "Reason":{"shape":"String"}, "Message":{"shape":"String"}, "LogFile":{"shape":"String"} } }, "HadoopJarStepConfig":{ "type":"structure", "required":["Jar"], "members":{ "Properties":{"shape":"KeyValueList"}, "Jar":{"shape":"XmlString"}, "MainClass":{"shape":"XmlString"}, "Args":{"shape":"XmlStringList"} } }, "HadoopStepConfig":{ "type":"structure", "members":{ "Jar":{"shape":"String"}, "Properties":{"shape":"StringMap"}, "MainClass":{"shape":"String"}, "Args":{"shape":"StringList"} } }, "Instance":{ "type":"structure", "members":{ "Id":{"shape":"InstanceId"}, "Ec2InstanceId":{"shape":"InstanceId"}, "PublicDnsName":{"shape":"String"}, "PublicIpAddress":{"shape":"String"}, "PrivateDnsName":{"shape":"String"}, "PrivateIpAddress":{"shape":"String"}, "Status":{"shape":"InstanceStatus"}, "InstanceGroupId":{"shape":"String"}, "EbsVolumes":{"shape":"EbsVolumeList"} } }, "InstanceGroup":{ "type":"structure", "members":{ "Id":{"shape":"InstanceGroupId"}, "Name":{"shape":"String"}, "Market":{"shape":"MarketType"}, "InstanceGroupType":{"shape":"InstanceGroupType"}, "BidPrice":{"shape":"String"}, "InstanceType":{"shape":"InstanceType"}, "RequestedInstanceCount":{"shape":"Integer"}, "RunningInstanceCount":{"shape":"Integer"}, "Status":{"shape":"InstanceGroupStatus"}, "Configurations":{"shape":"ConfigurationList"}, "EbsBlockDevices":{"shape":"EbsBlockDeviceList"}, "EbsOptimized":{"shape":"BooleanObject"}, "ShrinkPolicy":{"shape":"ShrinkPolicy"} } }, "InstanceGroupConfig":{ "type":"structure", "required":[ "InstanceRole", "InstanceType", "InstanceCount" ], "members":{ "Name":{"shape":"XmlStringMaxLen256"}, "Market":{"shape":"MarketType"}, "InstanceRole":{"shape":"InstanceRoleType"}, "BidPrice":{"shape":"XmlStringMaxLen256"}, "InstanceType":{"shape":"InstanceType"}, "InstanceCount":{"shape":"Integer"}, "Configurations":{"shape":"ConfigurationList"}, "EbsConfiguration":{"shape":"EbsConfiguration"} } }, "InstanceGroupConfigList":{ "type":"list", "member":{"shape":"InstanceGroupConfig"} }, "InstanceGroupDetail":{ "type":"structure", "required":[ "Market", "InstanceRole", "InstanceType", "InstanceRequestCount", "InstanceRunningCount", "State", "CreationDateTime" ], "members":{ "InstanceGroupId":{"shape":"XmlStringMaxLen256"}, "Name":{"shape":"XmlStringMaxLen256"}, "Market":{"shape":"MarketType"}, "InstanceRole":{"shape":"InstanceRoleType"}, "BidPrice":{"shape":"XmlStringMaxLen256"}, "InstanceType":{"shape":"InstanceType"}, "InstanceRequestCount":{"shape":"Integer"}, "InstanceRunningCount":{"shape":"Integer"}, "State":{"shape":"InstanceGroupState"}, "LastStateChangeReason":{"shape":"XmlString"}, "CreationDateTime":{"shape":"Date"}, "StartDateTime":{"shape":"Date"}, "ReadyDateTime":{"shape":"Date"}, "EndDateTime":{"shape":"Date"} } }, "InstanceGroupDetailList":{ "type":"list", "member":{"shape":"InstanceGroupDetail"} }, "InstanceGroupId":{"type":"string"}, "InstanceGroupIdsList":{ "type":"list", "member":{"shape":"XmlStringMaxLen256"} }, "InstanceGroupList":{ "type":"list", "member":{"shape":"InstanceGroup"} }, "InstanceGroupModifyConfig":{ "type":"structure", "required":["InstanceGroupId"], "members":{ "InstanceGroupId":{"shape":"XmlStringMaxLen256"}, "InstanceCount":{"shape":"Integer"}, "EC2InstanceIdsToTerminate":{"shape":"EC2InstanceIdsToTerminateList"}, "ShrinkPolicy":{"shape":"ShrinkPolicy"} } }, "InstanceGroupModifyConfigList":{ "type":"list", "member":{"shape":"InstanceGroupModifyConfig"} }, "InstanceGroupState":{ "type":"string", "enum":[ "PROVISIONING", "BOOTSTRAPPING", "RUNNING", "RESIZING", "SUSPENDED", "TERMINATING", "TERMINATED", "ARRESTED", "SHUTTING_DOWN", "ENDED" ] }, "InstanceGroupStateChangeReason":{ "type":"structure", "members":{ "Code":{"shape":"InstanceGroupStateChangeReasonCode"}, "Message":{"shape":"String"} } }, "InstanceGroupStateChangeReasonCode":{ "type":"string", "enum":[ "INTERNAL_ERROR", "VALIDATION_ERROR", "INSTANCE_FAILURE", "CLUSTER_TERMINATED" ] }, "InstanceGroupStatus":{ "type":"structure", "members":{ "State":{"shape":"InstanceGroupState"}, "StateChangeReason":{"shape":"InstanceGroupStateChangeReason"}, "Timeline":{"shape":"InstanceGroupTimeline"} } }, "InstanceGroupTimeline":{ "type":"structure", "members":{ "CreationDateTime":{"shape":"Date"}, "ReadyDateTime":{"shape":"Date"}, "EndDateTime":{"shape":"Date"} } }, "InstanceGroupType":{ "type":"string", "enum":[ "MASTER", "CORE", "TASK" ] }, "InstanceGroupTypeList":{ "type":"list", "member":{"shape":"InstanceGroupType"} }, "InstanceId":{"type":"string"}, "InstanceList":{ "type":"list", "member":{"shape":"Instance"} }, "InstanceResizePolicy":{ "type":"structure", "members":{ "InstancesToTerminate":{"shape":"EC2InstanceIdsList"}, "InstancesToProtect":{"shape":"EC2InstanceIdsList"}, "InstanceTerminationTimeout":{"shape":"Integer"} } }, "InstanceRoleType":{ "type":"string", "enum":[ "MASTER", "CORE", "TASK" ] }, "InstanceState":{ "type":"string", "enum":[ "AWAITING_FULFILLMENT", "PROVISIONING", "BOOTSTRAPPING", "RUNNING", "TERMINATED" ] }, "InstanceStateChangeReason":{ "type":"structure", "members":{ "Code":{"shape":"InstanceStateChangeReasonCode"}, "Message":{"shape":"String"} } }, "InstanceStateChangeReasonCode":{ "type":"string", "enum":[ "INTERNAL_ERROR", "VALIDATION_ERROR", "INSTANCE_FAILURE", "BOOTSTRAP_FAILURE", "CLUSTER_TERMINATED" ] }, "InstanceStateList":{ "type":"list", "member":{"shape":"InstanceState"} }, "InstanceStatus":{ "type":"structure", "members":{ "State":{"shape":"InstanceState"}, "StateChangeReason":{"shape":"InstanceStateChangeReason"}, "Timeline":{"shape":"InstanceTimeline"} } }, "InstanceTimeline":{ "type":"structure", "members":{ "CreationDateTime":{"shape":"Date"}, "ReadyDateTime":{"shape":"Date"}, "EndDateTime":{"shape":"Date"} } }, "InstanceType":{ "type":"string", "max":256, "min":1, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "Integer":{"type":"integer"}, "InternalServerError":{ "type":"structure", "members":{ }, "exception":true }, "InternalServerException":{ "type":"structure", "members":{ "Message":{"shape":"ErrorMessage"} }, "exception":true, "fault":true }, "InvalidRequestException":{ "type":"structure", "members":{ "ErrorCode":{"shape":"ErrorCode"}, "Message":{"shape":"ErrorMessage"} }, "exception":true }, "JobFlowDetail":{ "type":"structure", "required":[ "JobFlowId", "Name", "ExecutionStatusDetail", "Instances" ], "members":{ "JobFlowId":{"shape":"XmlStringMaxLen256"}, "Name":{"shape":"XmlStringMaxLen256"}, "LogUri":{"shape":"XmlString"}, "AmiVersion":{"shape":"XmlStringMaxLen256"}, "ExecutionStatusDetail":{"shape":"JobFlowExecutionStatusDetail"}, "Instances":{"shape":"JobFlowInstancesDetail"}, "Steps":{"shape":"StepDetailList"}, "BootstrapActions":{"shape":"BootstrapActionDetailList"}, "SupportedProducts":{"shape":"SupportedProductsList"}, "VisibleToAllUsers":{"shape":"Boolean"}, "JobFlowRole":{"shape":"XmlString"}, "ServiceRole":{"shape":"XmlString"} } }, "JobFlowDetailList":{ "type":"list", "member":{"shape":"JobFlowDetail"} }, "JobFlowExecutionState":{ "type":"string", "enum":[ "STARTING", "BOOTSTRAPPING", "RUNNING", "WAITING", "SHUTTING_DOWN", "TERMINATED", "COMPLETED", "FAILED" ] }, "JobFlowExecutionStateList":{ "type":"list", "member":{"shape":"JobFlowExecutionState"} }, "JobFlowExecutionStatusDetail":{ "type":"structure", "required":[ "State", "CreationDateTime" ], "members":{ "State":{"shape":"JobFlowExecutionState"}, "CreationDateTime":{"shape":"Date"}, "StartDateTime":{"shape":"Date"}, "ReadyDateTime":{"shape":"Date"}, "EndDateTime":{"shape":"Date"}, "LastStateChangeReason":{"shape":"XmlString"} } }, "JobFlowInstancesConfig":{ "type":"structure", "members":{ "MasterInstanceType":{"shape":"InstanceType"}, "SlaveInstanceType":{"shape":"InstanceType"}, "InstanceCount":{"shape":"Integer"}, "InstanceGroups":{"shape":"InstanceGroupConfigList"}, "Ec2KeyName":{"shape":"XmlStringMaxLen256"}, "Placement":{"shape":"PlacementType"}, "KeepJobFlowAliveWhenNoSteps":{"shape":"Boolean"}, "TerminationProtected":{"shape":"Boolean"}, "HadoopVersion":{"shape":"XmlStringMaxLen256"}, "Ec2SubnetId":{"shape":"XmlStringMaxLen256"}, "EmrManagedMasterSecurityGroup":{"shape":"XmlStringMaxLen256"}, "EmrManagedSlaveSecurityGroup":{"shape":"XmlStringMaxLen256"}, "ServiceAccessSecurityGroup":{"shape":"XmlStringMaxLen256"}, "AdditionalMasterSecurityGroups":{"shape":"SecurityGroupsList"}, "AdditionalSlaveSecurityGroups":{"shape":"SecurityGroupsList"} } }, "JobFlowInstancesDetail":{ "type":"structure", "required":[ "MasterInstanceType", "SlaveInstanceType", "InstanceCount" ], "members":{ "MasterInstanceType":{"shape":"InstanceType"}, "MasterPublicDnsName":{"shape":"XmlString"}, "MasterInstanceId":{"shape":"XmlString"}, "SlaveInstanceType":{"shape":"InstanceType"}, "InstanceCount":{"shape":"Integer"}, "InstanceGroups":{"shape":"InstanceGroupDetailList"}, "NormalizedInstanceHours":{"shape":"Integer"}, "Ec2KeyName":{"shape":"XmlStringMaxLen256"}, "Ec2SubnetId":{"shape":"XmlStringMaxLen256"}, "Placement":{"shape":"PlacementType"}, "KeepJobFlowAliveWhenNoSteps":{"shape":"Boolean"}, "TerminationProtected":{"shape":"Boolean"}, "HadoopVersion":{"shape":"XmlStringMaxLen256"} } }, "KeyValue":{ "type":"structure", "members":{ "Key":{"shape":"XmlString"}, "Value":{"shape":"XmlString"} } }, "KeyValueList":{ "type":"list", "member":{"shape":"KeyValue"} }, "ListBootstrapActionsInput":{ "type":"structure", "required":["ClusterId"], "members":{ "ClusterId":{"shape":"ClusterId"}, "Marker":{"shape":"Marker"} } }, "ListBootstrapActionsOutput":{ "type":"structure", "members":{ "BootstrapActions":{"shape":"CommandList"}, "Marker":{"shape":"Marker"} } }, "ListClustersInput":{ "type":"structure", "members":{ "CreatedAfter":{"shape":"Date"}, "CreatedBefore":{"shape":"Date"}, "ClusterStates":{"shape":"ClusterStateList"}, "Marker":{"shape":"Marker"} } }, "ListClustersOutput":{ "type":"structure", "members":{ "Clusters":{"shape":"ClusterSummaryList"}, "Marker":{"shape":"Marker"} } }, "ListInstanceGroupsInput":{ "type":"structure", "required":["ClusterId"], "members":{ "ClusterId":{"shape":"ClusterId"}, "Marker":{"shape":"Marker"} } }, "ListInstanceGroupsOutput":{ "type":"structure", "members":{ "InstanceGroups":{"shape":"InstanceGroupList"}, "Marker":{"shape":"Marker"} } }, "ListInstancesInput":{ "type":"structure", "required":["ClusterId"], "members":{ "ClusterId":{"shape":"ClusterId"}, "InstanceGroupId":{"shape":"InstanceGroupId"}, "InstanceGroupTypes":{"shape":"InstanceGroupTypeList"}, "InstanceStates":{"shape":"InstanceStateList"}, "Marker":{"shape":"Marker"} } }, "ListInstancesOutput":{ "type":"structure", "members":{ "Instances":{"shape":"InstanceList"}, "Marker":{"shape":"Marker"} } }, "ListSecurityConfigurationsInput":{ "type":"structure", "members":{ "Marker":{"shape":"Marker"} } }, "ListSecurityConfigurationsOutput":{ "type":"structure", "members":{ "SecurityConfigurations":{"shape":"SecurityConfigurationList"}, "Marker":{"shape":"Marker"} } }, "ListStepsInput":{ "type":"structure", "required":["ClusterId"], "members":{ "ClusterId":{"shape":"ClusterId"}, "StepStates":{"shape":"StepStateList"}, "StepIds":{"shape":"XmlStringList"}, "Marker":{"shape":"Marker"} } }, "ListStepsOutput":{ "type":"structure", "members":{ "Steps":{"shape":"StepSummaryList"}, "Marker":{"shape":"Marker"} } }, "Marker":{"type":"string"}, "MarketType":{ "type":"string", "enum":[ "ON_DEMAND", "SPOT" ] }, "ModifyInstanceGroupsInput":{ "type":"structure", "members":{ "InstanceGroups":{"shape":"InstanceGroupModifyConfigList"} } }, "NewSupportedProductsList":{ "type":"list", "member":{"shape":"SupportedProductConfig"} }, "PlacementType":{ "type":"structure", "required":["AvailabilityZone"], "members":{ "AvailabilityZone":{"shape":"XmlString"} } }, "RemoveTagsInput":{ "type":"structure", "required":[ "ResourceId", "TagKeys" ], "members":{ "ResourceId":{"shape":"ResourceId"}, "TagKeys":{"shape":"StringList"} } }, "RemoveTagsOutput":{ "type":"structure", "members":{ } }, "ResourceId":{"type":"string"}, "RunJobFlowInput":{ "type":"structure", "required":[ "Name", "Instances" ], "members":{ "Name":{"shape":"XmlStringMaxLen256"}, "LogUri":{"shape":"XmlString"}, "AdditionalInfo":{"shape":"XmlString"}, "AmiVersion":{"shape":"XmlStringMaxLen256"}, "ReleaseLabel":{"shape":"XmlStringMaxLen256"}, "Instances":{"shape":"JobFlowInstancesConfig"}, "Steps":{"shape":"StepConfigList"}, "BootstrapActions":{"shape":"BootstrapActionConfigList"}, "SupportedProducts":{"shape":"SupportedProductsList"}, "NewSupportedProducts":{"shape":"NewSupportedProductsList"}, "Applications":{"shape":"ApplicationList"}, "Configurations":{"shape":"ConfigurationList"}, "VisibleToAllUsers":{"shape":"Boolean"}, "JobFlowRole":{"shape":"XmlString"}, "ServiceRole":{"shape":"XmlString"}, "Tags":{"shape":"TagList"}, "SecurityConfiguration":{"shape":"XmlString"} } }, "RunJobFlowOutput":{ "type":"structure", "members":{ "JobFlowId":{"shape":"XmlStringMaxLen256"} } }, "ScriptBootstrapActionConfig":{ "type":"structure", "required":["Path"], "members":{ "Path":{"shape":"XmlString"}, "Args":{"shape":"XmlStringList"} } }, "SecurityConfigurationList":{ "type":"list", "member":{"shape":"SecurityConfigurationSummary"} }, "SecurityConfigurationSummary":{ "type":"structure", "members":{ "Name":{"shape":"XmlString"}, "CreationDateTime":{"shape":"Date"} } }, "SecurityGroupsList":{ "type":"list", "member":{"shape":"XmlStringMaxLen256"} }, "SetTerminationProtectionInput":{ "type":"structure", "required":[ "JobFlowIds", "TerminationProtected" ], "members":{ "JobFlowIds":{"shape":"XmlStringList"}, "TerminationProtected":{"shape":"Boolean"} } }, "SetVisibleToAllUsersInput":{ "type":"structure", "required":[ "JobFlowIds", "VisibleToAllUsers" ], "members":{ "JobFlowIds":{"shape":"XmlStringList"}, "VisibleToAllUsers":{"shape":"Boolean"} } }, "ShrinkPolicy":{ "type":"structure", "members":{ "DecommissionTimeout":{"shape":"Integer"}, "InstanceResizePolicy":{"shape":"InstanceResizePolicy"} } }, "Step":{ "type":"structure", "members":{ "Id":{"shape":"StepId"}, "Name":{"shape":"String"}, "Config":{"shape":"HadoopStepConfig"}, "ActionOnFailure":{"shape":"ActionOnFailure"}, "Status":{"shape":"StepStatus"} } }, "StepConfig":{ "type":"structure", "required":[ "Name", "HadoopJarStep" ], "members":{ "Name":{"shape":"XmlStringMaxLen256"}, "ActionOnFailure":{"shape":"ActionOnFailure"}, "HadoopJarStep":{"shape":"HadoopJarStepConfig"} } }, "StepConfigList":{ "type":"list", "member":{"shape":"StepConfig"} }, "StepDetail":{ "type":"structure", "required":[ "StepConfig", "ExecutionStatusDetail" ], "members":{ "StepConfig":{"shape":"StepConfig"}, "ExecutionStatusDetail":{"shape":"StepExecutionStatusDetail"} } }, "StepDetailList":{ "type":"list", "member":{"shape":"StepDetail"} }, "StepExecutionState":{ "type":"string", "enum":[ "PENDING", "RUNNING", "CONTINUE", "COMPLETED", "CANCELLED", "FAILED", "INTERRUPTED" ] }, "StepExecutionStatusDetail":{ "type":"structure", "required":[ "State", "CreationDateTime" ], "members":{ "State":{"shape":"StepExecutionState"}, "CreationDateTime":{"shape":"Date"}, "StartDateTime":{"shape":"Date"}, "EndDateTime":{"shape":"Date"}, "LastStateChangeReason":{"shape":"XmlString"} } }, "StepId":{"type":"string"}, "StepIdsList":{ "type":"list", "member":{"shape":"XmlStringMaxLen256"} }, "StepState":{ "type":"string", "enum":[ "PENDING", "RUNNING", "COMPLETED", "CANCELLED", "FAILED", "INTERRUPTED" ] }, "StepStateChangeReason":{ "type":"structure", "members":{ "Code":{"shape":"StepStateChangeReasonCode"}, "Message":{"shape":"String"} } }, "StepStateChangeReasonCode":{ "type":"string", "enum":["NONE"] }, "StepStateList":{ "type":"list", "member":{"shape":"StepState"} }, "StepStatus":{ "type":"structure", "members":{ "State":{"shape":"StepState"}, "StateChangeReason":{"shape":"StepStateChangeReason"}, "FailureDetails":{"shape":"FailureDetails"}, "Timeline":{"shape":"StepTimeline"} } }, "StepSummary":{ "type":"structure", "members":{ "Id":{"shape":"StepId"}, "Name":{"shape":"String"}, "Config":{"shape":"HadoopStepConfig"}, "ActionOnFailure":{"shape":"ActionOnFailure"}, "Status":{"shape":"StepStatus"} } }, "StepSummaryList":{ "type":"list", "member":{"shape":"StepSummary"} }, "StepTimeline":{ "type":"structure", "members":{ "CreationDateTime":{"shape":"Date"}, "StartDateTime":{"shape":"Date"}, "EndDateTime":{"shape":"Date"} } }, "String":{"type":"string"}, "StringList":{ "type":"list", "member":{"shape":"String"} }, "StringMap":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"String"} }, "SupportedProductConfig":{ "type":"structure", "members":{ "Name":{"shape":"XmlStringMaxLen256"}, "Args":{"shape":"XmlStringList"} } }, "SupportedProductsList":{ "type":"list", "member":{"shape":"XmlStringMaxLen256"} }, "Tag":{ "type":"structure", "members":{ "Key":{"shape":"String"}, "Value":{"shape":"String"} } }, "TagList":{ "type":"list", "member":{"shape":"Tag"} }, "TerminateJobFlowsInput":{ "type":"structure", "required":["JobFlowIds"], "members":{ "JobFlowIds":{"shape":"XmlStringList"} } }, "VolumeSpecification":{ "type":"structure", "required":[ "VolumeType", "SizeInGB" ], "members":{ "VolumeType":{"shape":"String"}, "Iops":{"shape":"Integer"}, "SizeInGB":{"shape":"Integer"} } }, "XmlString":{ "type":"string", "max":10280, "min":0, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" }, "XmlStringList":{ "type":"list", "member":{"shape":"XmlString"} }, "XmlStringMaxLen256":{ "type":"string", "max":256, "min":0, "pattern":"[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*" } } } aws-sdk-go-1.4.22/models/apis/elasticmapreduce/2009-03-31/docs-2.json000066400000000000000000002250071300374646400243370ustar00rootroot00000000000000{ "version": "2.0", "service": "

        Amazon Elastic MapReduce (Amazon EMR) is a web service that makes it easy to process large amounts of data efficiently. Amazon EMR uses Hadoop processing combined with several AWS products to do tasks such as web indexing, data mining, log file analysis, machine learning, scientific simulation, and data warehousing.

        ", "operations": { "AddInstanceGroups": "

        AddInstanceGroups adds an instance group to a running cluster.

        ", "AddJobFlowSteps": "

        AddJobFlowSteps adds new steps to a running job flow. A maximum of 256 steps are allowed in each job flow.

        If your job flow is long-running (such as a Hive data warehouse) or complex, you may require more than 256 steps to process your data. You can bypass the 256-step limitation in various ways, including using the SSH shell to connect to the master node and submitting queries directly to the software running on the master node, such as Hive and Hadoop. For more information on how to do this, go to Add More than 256 Steps to a Job Flow in the Amazon Elastic MapReduce Developer's Guide.

        A step specifies the location of a JAR file stored either on the master node of the job flow or in Amazon S3. Each step is performed by the main function of the main class of the JAR file. The main class can be specified either in the manifest of the JAR or by using the MainFunction parameter of the step.

        Elastic MapReduce executes each step in the order listed. For a step to be considered complete, the main function must exit with a zero exit code and all Hadoop jobs started while the step was running must have completed and run successfully.

        You can only add steps to a job flow that is in one of the following states: STARTING, BOOTSTRAPPING, RUNNING, or WAITING.

        ", "AddTags": "

        Adds tags to an Amazon EMR resource. Tags make it easier to associate clusters in various ways, such as grouping clusters to track your Amazon EMR resource allocation costs. For more information, see Tagging Amazon EMR Resources.

        ", "CreateSecurityConfiguration": "

        Creates a security configuration using EMR Security Configurations, which are stored in the service. Security Configurations enable you to more easily create a configuration, reuse it, and apply it whenever a cluster is created.

        ", "DeleteSecurityConfiguration": "

        Deletes a security configuration.

        ", "DescribeCluster": "

        Provides cluster-level details including status, hardware and software configuration, VPC settings, and so on. For information about the cluster steps, see ListSteps.

        ", "DescribeJobFlows": "

        This API is deprecated and will eventually be removed. We recommend you use ListClusters, DescribeCluster, ListSteps, ListInstanceGroups and ListBootstrapActions instead.

        DescribeJobFlows returns a list of job flows that match all of the supplied parameters. The parameters can include a list of job flow IDs, job flow states, and restrictions on job flow creation date and time.

        Regardless of supplied parameters, only job flows created within the last two months are returned.

        If no parameters are supplied, then job flows matching either of the following criteria are returned:

        • Job flows created and completed in the last two weeks

        • Job flows created within the last two months that are in one of the following states: RUNNING, WAITING, SHUTTING_DOWN, STARTING

        Amazon Elastic MapReduce can return a maximum of 512 job flow descriptions.

        ", "DescribeSecurityConfiguration": "

        Provides the details of a security configuration by returning the configuration JSON.

        ", "DescribeStep": "

        Provides more detail about the cluster step.

        ", "ListBootstrapActions": "

        Provides information about the bootstrap actions associated with a cluster.

        ", "ListClusters": "

        Provides the status of all clusters visible to this AWS account. Allows you to filter the list of clusters based on certain criteria; for example, filtering by cluster creation date and time or by status. This call returns a maximum of 50 clusters per call, but returns a marker to track the paging of the cluster list across multiple ListClusters calls.

        ", "ListInstanceGroups": "

        Provides all available details about the instance groups in a cluster.

        ", "ListInstances": "

        Provides information about the cluster instances that Amazon EMR provisions on behalf of a user when it creates the cluster. For example, this operation indicates when the EC2 instances reach the Ready state, when instances become available to Amazon EMR to use for jobs, and the IP addresses for cluster instances, etc.

        ", "ListSecurityConfigurations": "

        Lists all the security configurations visible to this account, providing their creation dates and times, and their names. This call returns a maximum of 50 clusters per call, but returns a marker to track the paging of the cluster list across multiple ListSecurityConfigurations calls.

        ", "ListSteps": "

        Provides a list of steps for the cluster.

        ", "ModifyInstanceGroups": "

        ModifyInstanceGroups modifies the number of nodes and configuration settings of an instance group. The input parameters include the new target instance count for the group and the instance group ID. The call will either succeed or fail atomically.

        ", "RemoveTags": "

        Removes tags from an Amazon EMR resource. Tags make it easier to associate clusters in various ways, such as grouping clusters to track your Amazon EMR resource allocation costs. For more information, see Tagging Amazon EMR Resources.

        The following example removes the stack tag with value Prod from a cluster:

        ", "RunJobFlow": "

        RunJobFlow creates and starts running a new job flow. The job flow will run the steps specified. Once the job flow completes, the cluster is stopped and the HDFS partition is lost. To prevent loss of data, configure the last step of the job flow to store results in Amazon S3. If the JobFlowInstancesConfig KeepJobFlowAliveWhenNoSteps parameter is set to TRUE, the job flow will transition to the WAITING state rather than shutting down once the steps have completed.

        For additional protection, you can set the JobFlowInstancesConfig TerminationProtected parameter to TRUE to lock the job flow and prevent it from being terminated by API call, user intervention, or in the event of a job flow error.

        A maximum of 256 steps are allowed in each job flow.

        If your job flow is long-running (such as a Hive data warehouse) or complex, you may require more than 256 steps to process your data. You can bypass the 256-step limitation in various ways, including using the SSH shell to connect to the master node and submitting queries directly to the software running on the master node, such as Hive and Hadoop. For more information on how to do this, go to Add More than 256 Steps to a Job Flow in the Amazon Elastic MapReduce Developer's Guide.

        For long running job flows, we recommend that you periodically store your results.

        ", "SetTerminationProtection": "

        SetTerminationProtection locks a job flow so the Amazon EC2 instances in the cluster cannot be terminated by user intervention, an API call, or in the event of a job-flow error. The cluster still terminates upon successful completion of the job flow. Calling SetTerminationProtection on a job flow is analogous to calling the Amazon EC2 DisableAPITermination API on all of the EC2 instances in a cluster.

        SetTerminationProtection is used to prevent accidental termination of a job flow and to ensure that in the event of an error, the instances will persist so you can recover any data stored in their ephemeral instance storage.

        To terminate a job flow that has been locked by setting SetTerminationProtection to true, you must first unlock the job flow by a subsequent call to SetTerminationProtection in which you set the value to false.

        For more information, go to Protecting a Job Flow from Termination in the Amazon Elastic MapReduce Developer's Guide.

        ", "SetVisibleToAllUsers": "

        Sets whether all AWS Identity and Access Management (IAM) users under your account can access the specified job flows. This action works on running job flows. You can also set the visibility of a job flow when you launch it using the VisibleToAllUsers parameter of RunJobFlow. The SetVisibleToAllUsers action can be called only by an IAM user who created the job flow or the AWS account that owns the job flow.

        ", "TerminateJobFlows": "

        TerminateJobFlows shuts a list of job flows down. When a job flow is shut down, any step not yet completed is canceled and the EC2 instances on which the job flow is running are stopped. Any log files not already saved are uploaded to Amazon S3 if a LogUri was specified when the job flow was created.

        The maximum number of JobFlows allowed is 10. The call to TerminateJobFlows is asynchronous. Depending on the configuration of the job flow, it may take up to 5-20 minutes for the job flow to completely terminate and release allocated resources, such as Amazon EC2 instances.

        " }, "shapes": { "ActionOnFailure": { "base": null, "refs": { "Step$ActionOnFailure": "

        This specifies what action to take when the cluster step fails. Possible values are TERMINATE_CLUSTER, CANCEL_AND_WAIT, and CONTINUE.

        ", "StepConfig$ActionOnFailure": "

        The action to take if the job flow step fails.

        ", "StepSummary$ActionOnFailure": "

        This specifies what action to take when the cluster step fails. Possible values are TERMINATE_CLUSTER, CANCEL_AND_WAIT, and CONTINUE.

        " } }, "AddInstanceGroupsInput": { "base": "

        Input to an AddInstanceGroups call.

        ", "refs": { } }, "AddInstanceGroupsOutput": { "base": "

        Output from an AddInstanceGroups call.

        ", "refs": { } }, "AddJobFlowStepsInput": { "base": "

        The input argument to the AddJobFlowSteps operation.

        ", "refs": { } }, "AddJobFlowStepsOutput": { "base": "

        The output for the AddJobFlowSteps operation.

        ", "refs": { } }, "AddTagsInput": { "base": "

        This input identifies a cluster and a list of tags to attach.

        ", "refs": { } }, "AddTagsOutput": { "base": "

        This output indicates the result of adding tags to a resource.

        ", "refs": { } }, "Application": { "base": "

        An application is any Amazon or third-party software that you can add to the cluster. This structure contains a list of strings that indicates the software to use with the cluster and accepts a user argument list. Amazon EMR accepts and forwards the argument list to the corresponding installation script as bootstrap action argument. For more information, see Launch a Job Flow on the MapR Distribution for Hadoop. Currently supported values are:

        • \"mapr-m3\" - launch the job flow using MapR M3 Edition.

        • \"mapr-m5\" - launch the job flow using MapR M5 Edition.

        • \"mapr\" with the user arguments specifying \"--edition,m3\" or \"--edition,m5\" - launch the job flow using MapR M3 or M5 Edition, respectively.

        In Amazon EMR releases 4.0 and greater, the only accepted parameter is the application name. To pass arguments to applications, you supply a configuration for each application.

        ", "refs": { "ApplicationList$member": null } }, "ApplicationList": { "base": null, "refs": { "Cluster$Applications": "

        The applications installed on this cluster.

        ", "RunJobFlowInput$Applications": "

        Amazon EMR releases 4.x or later.

        A list of applications for the cluster. Valid values are: \"Hadoop\", \"Hive\", \"Mahout\", \"Pig\", and \"Spark.\" They are case insensitive.

        " } }, "Boolean": { "base": null, "refs": { "Cluster$AutoTerminate": "

        Specifies whether the cluster should terminate after completing all steps.

        ", "Cluster$TerminationProtected": "

        Indicates whether Amazon EMR will lock the cluster to prevent the EC2 instances from being terminated by an API call or user intervention, or in the event of a cluster error.

        ", "Cluster$VisibleToAllUsers": "

        Indicates whether the job flow is visible to all IAM users of the AWS account associated with the job flow. If this value is set to true, all IAM users of that AWS account can view and manage the job flow if they have the proper policy permissions set. If this value is false, only the IAM user that created the cluster can view and manage it. This value can be changed using the SetVisibleToAllUsers action.

        ", "JobFlowDetail$VisibleToAllUsers": "

        Specifies whether the job flow is visible to all IAM users of the AWS account associated with the job flow. If this value is set to true, all IAM users of that AWS account can view and (if they have the proper policy permissions set) manage the job flow. If it is set to false, only the IAM user that created the job flow can view and manage it. This value can be changed using the SetVisibleToAllUsers action.

        ", "JobFlowInstancesConfig$KeepJobFlowAliveWhenNoSteps": "

        Specifies whether the job flow should be kept alive after completing all steps.

        ", "JobFlowInstancesConfig$TerminationProtected": "

        Specifies whether to lock the job flow to prevent the Amazon EC2 instances from being terminated by API call, user intervention, or in the event of a job flow error.

        ", "JobFlowInstancesDetail$KeepJobFlowAliveWhenNoSteps": "

        Specifies whether the job flow should terminate after completing all steps.

        ", "JobFlowInstancesDetail$TerminationProtected": "

        Specifies whether the Amazon EC2 instances in the cluster are protected from termination by API calls, user intervention, or in the event of a job flow error.

        ", "RunJobFlowInput$VisibleToAllUsers": "

        Whether the job flow is visible to all IAM users of the AWS account associated with the job flow. If this value is set to true, all IAM users of that AWS account can view and (if they have the proper policy permissions set) manage the job flow. If it is set to false, only the IAM user that created the job flow can view and manage it.

        ", "SetTerminationProtectionInput$TerminationProtected": "

        A Boolean that indicates whether to protect the job flow and prevent the Amazon EC2 instances in the cluster from shutting down due to API calls, user intervention, or job-flow error.

        ", "SetVisibleToAllUsersInput$VisibleToAllUsers": "

        Whether the specified job flows are visible to all IAM users of the AWS account associated with the job flow. If this value is set to True, all IAM users of that AWS account can view and, if they have the proper IAM policy permissions set, manage the job flows. If it is set to False, only the IAM user that created a job flow can view and manage it.

        " } }, "BooleanObject": { "base": null, "refs": { "EbsConfiguration$EbsOptimized": null, "InstanceGroup$EbsOptimized": "

        If the instance group is EBS-optimized. An Amazon EBS-optimized instance uses an optimized configuration stack and provides additional, dedicated capacity for Amazon EBS I/O.

        " } }, "BootstrapActionConfig": { "base": null, "refs": { "BootstrapActionConfigList$member": null, "BootstrapActionDetail$BootstrapActionConfig": "

        A description of the bootstrap action.

        " } }, "BootstrapActionConfigList": { "base": null, "refs": { "RunJobFlowInput$BootstrapActions": "

        A list of bootstrap actions that will be run before Hadoop is started on the cluster nodes.

        " } }, "BootstrapActionDetail": { "base": "

        Reports the configuration of a bootstrap action in a job flow.

        ", "refs": { "BootstrapActionDetailList$member": null } }, "BootstrapActionDetailList": { "base": null, "refs": { "JobFlowDetail$BootstrapActions": "

        A list of the bootstrap actions run by the job flow.

        " } }, "Cluster": { "base": "

        The detailed description of the cluster.

        ", "refs": { "DescribeClusterOutput$Cluster": "

        This output contains the details for the requested cluster.

        " } }, "ClusterId": { "base": null, "refs": { "Cluster$Id": "

        The unique identifier for the cluster.

        ", "ClusterSummary$Id": "

        The unique identifier for the cluster.

        ", "DescribeClusterInput$ClusterId": "

        The identifier of the cluster to describe.

        ", "DescribeStepInput$ClusterId": "

        The identifier of the cluster with steps to describe.

        ", "ListBootstrapActionsInput$ClusterId": "

        The cluster identifier for the bootstrap actions to list .

        ", "ListInstanceGroupsInput$ClusterId": "

        The identifier of the cluster for which to list the instance groups.

        ", "ListInstancesInput$ClusterId": "

        The identifier of the cluster for which to list the instances.

        ", "ListStepsInput$ClusterId": "

        The identifier of the cluster for which to list the steps.

        " } }, "ClusterState": { "base": null, "refs": { "ClusterStateList$member": null, "ClusterStatus$State": "

        The current state of the cluster.

        " } }, "ClusterStateChangeReason": { "base": "

        The reason that the cluster changed to its current state.

        ", "refs": { "ClusterStatus$StateChangeReason": "

        The reason for the cluster status change.

        " } }, "ClusterStateChangeReasonCode": { "base": null, "refs": { "ClusterStateChangeReason$Code": "

        The programmatic code for the state change reason.

        " } }, "ClusterStateList": { "base": null, "refs": { "ListClustersInput$ClusterStates": "

        The cluster state filters to apply when listing clusters.

        " } }, "ClusterStatus": { "base": "

        The detailed status of the cluster.

        ", "refs": { "Cluster$Status": "

        The current status details about the cluster.

        ", "ClusterSummary$Status": "

        The details about the current status of the cluster.

        " } }, "ClusterSummary": { "base": "

        The summary description of the cluster.

        ", "refs": { "ClusterSummaryList$member": null } }, "ClusterSummaryList": { "base": null, "refs": { "ListClustersOutput$Clusters": "

        The list of clusters for the account based on the given filters.

        " } }, "ClusterTimeline": { "base": "

        Represents the timeline of the cluster's lifecycle.

        ", "refs": { "ClusterStatus$Timeline": "

        A timeline that represents the status of a cluster over the lifetime of the cluster.

        " } }, "Command": { "base": "

        An entity describing an executable that runs on a cluster.

        ", "refs": { "CommandList$member": null } }, "CommandList": { "base": null, "refs": { "ListBootstrapActionsOutput$BootstrapActions": "

        The bootstrap actions associated with the cluster .

        " } }, "Configuration": { "base": "

        Amazon EMR releases 4.x or later.

        Specifies a hardware and software configuration of the EMR cluster. This includes configurations for applications and software bundled with Amazon EMR. The Configuration object is a JSON object which is defined by a classification and a set of properties. Configurations can be nested, so a configuration may have its own Configuration objects listed.

        ", "refs": { "ConfigurationList$member": null } }, "ConfigurationList": { "base": null, "refs": { "Cluster$Configurations": "

        Amazon EMR releases 4.x or later.

        The list of Configurations supplied to the EMR cluster.

        ", "Configuration$Configurations": "

        A list of configurations you apply to this configuration object.

        ", "InstanceGroup$Configurations": "

        Amazon EMR releases 4.x or later.

        The list of configurations supplied for an EMR cluster instance group. You can specify a separate configuration for each instance group (master, core, and task).

        ", "InstanceGroupConfig$Configurations": "

        Amazon EMR releases 4.x or later.

        The list of configurations supplied for an EMR cluster instance group. You can specify a separate configuration for each instance group (master, core, and task).

        ", "RunJobFlowInput$Configurations": "

        Amazon EMR releases 4.x or later.

        The list of configurations supplied for the EMR cluster you are creating.

        " } }, "CreateSecurityConfigurationInput": { "base": null, "refs": { } }, "CreateSecurityConfigurationOutput": { "base": null, "refs": { } }, "Date": { "base": null, "refs": { "ClusterTimeline$CreationDateTime": "

        The creation date and time of the cluster.

        ", "ClusterTimeline$ReadyDateTime": "

        The date and time when the cluster was ready to execute steps.

        ", "ClusterTimeline$EndDateTime": "

        The date and time when the cluster was terminated.

        ", "CreateSecurityConfigurationOutput$CreationDateTime": "

        The date and time the security configuration was created.

        ", "DescribeJobFlowsInput$CreatedAfter": "

        Return only job flows created after this date and time.

        ", "DescribeJobFlowsInput$CreatedBefore": "

        Return only job flows created before this date and time.

        ", "DescribeSecurityConfigurationOutput$CreationDateTime": "

        The date and time the security configuration was created

        ", "InstanceGroupDetail$CreationDateTime": "

        The date/time the instance group was created.

        ", "InstanceGroupDetail$StartDateTime": "

        The date/time the instance group was started.

        ", "InstanceGroupDetail$ReadyDateTime": "

        The date/time the instance group was available to the cluster.

        ", "InstanceGroupDetail$EndDateTime": "

        The date/time the instance group was terminated.

        ", "InstanceGroupTimeline$CreationDateTime": "

        The creation date and time of the instance group.

        ", "InstanceGroupTimeline$ReadyDateTime": "

        The date and time when the instance group became ready to perform tasks.

        ", "InstanceGroupTimeline$EndDateTime": "

        The date and time when the instance group terminated.

        ", "InstanceTimeline$CreationDateTime": "

        The creation date and time of the instance.

        ", "InstanceTimeline$ReadyDateTime": "

        The date and time when the instance was ready to perform tasks.

        ", "InstanceTimeline$EndDateTime": "

        The date and time when the instance was terminated.

        ", "JobFlowExecutionStatusDetail$CreationDateTime": "

        The creation date and time of the job flow.

        ", "JobFlowExecutionStatusDetail$StartDateTime": "

        The start date and time of the job flow.

        ", "JobFlowExecutionStatusDetail$ReadyDateTime": "

        The date and time when the job flow was ready to start running bootstrap actions.

        ", "JobFlowExecutionStatusDetail$EndDateTime": "

        The completion date and time of the job flow.

        ", "ListClustersInput$CreatedAfter": "

        The creation date and time beginning value filter for listing clusters .

        ", "ListClustersInput$CreatedBefore": "

        The creation date and time end value filter for listing clusters .

        ", "SecurityConfigurationSummary$CreationDateTime": "

        The date and time the security configuration was created.

        ", "StepExecutionStatusDetail$CreationDateTime": "

        The creation date and time of the step.

        ", "StepExecutionStatusDetail$StartDateTime": "

        The start date and time of the step.

        ", "StepExecutionStatusDetail$EndDateTime": "

        The completion date and time of the step.

        ", "StepTimeline$CreationDateTime": "

        The date and time when the cluster step was created.

        ", "StepTimeline$StartDateTime": "

        The date and time when the cluster step execution started.

        ", "StepTimeline$EndDateTime": "

        The date and time when the cluster step execution completed or failed.

        " } }, "DeleteSecurityConfigurationInput": { "base": null, "refs": { } }, "DeleteSecurityConfigurationOutput": { "base": null, "refs": { } }, "DescribeClusterInput": { "base": "

        This input determines which cluster to describe.

        ", "refs": { } }, "DescribeClusterOutput": { "base": "

        This output contains the description of the cluster.

        ", "refs": { } }, "DescribeJobFlowsInput": { "base": "

        The input for the DescribeJobFlows operation.

        ", "refs": { } }, "DescribeJobFlowsOutput": { "base": "

        The output for the DescribeJobFlows operation.

        ", "refs": { } }, "DescribeSecurityConfigurationInput": { "base": null, "refs": { } }, "DescribeSecurityConfigurationOutput": { "base": null, "refs": { } }, "DescribeStepInput": { "base": "

        This input determines which step to describe.

        ", "refs": { } }, "DescribeStepOutput": { "base": "

        This output contains the description of the cluster step.

        ", "refs": { } }, "EC2InstanceIdsList": { "base": null, "refs": { "InstanceResizePolicy$InstancesToTerminate": "

        Specific list of instances to be terminated when shrinking an instance group.

        ", "InstanceResizePolicy$InstancesToProtect": "

        Specific list of instances to be protected when shrinking an instance group.

        " } }, "EC2InstanceIdsToTerminateList": { "base": null, "refs": { "InstanceGroupModifyConfig$EC2InstanceIdsToTerminate": "

        The EC2 InstanceIds to terminate. Once you terminate the instances, the instance group will not return to its original requested size.

        " } }, "EbsBlockDevice": { "base": "

        Configuration of requested EBS block device associated with the instance group.

        ", "refs": { "EbsBlockDeviceList$member": null } }, "EbsBlockDeviceConfig": { "base": "

        Configuration of requested EBS block device associated with the instance group with count of volumes that will be associated to every instance.

        ", "refs": { "EbsBlockDeviceConfigList$member": null } }, "EbsBlockDeviceConfigList": { "base": null, "refs": { "EbsConfiguration$EbsBlockDeviceConfigs": null } }, "EbsBlockDeviceList": { "base": null, "refs": { "InstanceGroup$EbsBlockDevices": "

        The EBS block devices that are mapped to this instance group.

        " } }, "EbsConfiguration": { "base": null, "refs": { "InstanceGroupConfig$EbsConfiguration": "

        EBS configurations that will be attached to each Amazon EC2 instance in the instance group.

        " } }, "EbsVolume": { "base": "

        EBS block device that's attached to an EC2 instance.

        ", "refs": { "EbsVolumeList$member": null } }, "EbsVolumeList": { "base": null, "refs": { "Instance$EbsVolumes": "

        The list of EBS volumes that are attached to this instance.

        " } }, "Ec2InstanceAttributes": { "base": "

        Provides information about the EC2 instances in a cluster grouped by category. For example, key name, subnet ID, IAM instance profile, and so on.

        ", "refs": { "Cluster$Ec2InstanceAttributes": null } }, "ErrorCode": { "base": null, "refs": { "InvalidRequestException$ErrorCode": "

        The error code associated with the exception.

        " } }, "ErrorMessage": { "base": null, "refs": { "InternalServerException$Message": "

        The message associated with the exception.

        ", "InvalidRequestException$Message": "

        The message associated with the exception.

        " } }, "FailureDetails": { "base": "

        The details of the step failure. The service attempts to detect the root cause for many common failures.

        ", "refs": { "StepStatus$FailureDetails": "

        The details for the step failure including reason, message, and log file path where the root cause was identified.

        " } }, "HadoopJarStepConfig": { "base": "

        A job flow step consisting of a JAR file whose main function will be executed. The main function submits a job for Hadoop to execute and waits for the job to finish or fail.

        ", "refs": { "StepConfig$HadoopJarStep": "

        The JAR file used for the job flow step.

        " } }, "HadoopStepConfig": { "base": "

        A cluster step consisting of a JAR file whose main function will be executed. The main function submits a job for Hadoop to execute and waits for the job to finish or fail.

        ", "refs": { "Step$Config": "

        The Hadoop job configuration of the cluster step.

        ", "StepSummary$Config": "

        The Hadoop job configuration of the cluster step.

        " } }, "Instance": { "base": "

        Represents an EC2 instance provisioned as part of cluster.

        ", "refs": { "InstanceList$member": null } }, "InstanceGroup": { "base": "

        This entity represents an instance group, which is a group of instances that have common purpose. For example, CORE instance group is used for HDFS.

        ", "refs": { "InstanceGroupList$member": null } }, "InstanceGroupConfig": { "base": "

        Configuration defining a new instance group.

        ", "refs": { "InstanceGroupConfigList$member": null } }, "InstanceGroupConfigList": { "base": null, "refs": { "AddInstanceGroupsInput$InstanceGroups": "

        Instance Groups to add.

        ", "JobFlowInstancesConfig$InstanceGroups": "

        Configuration for the job flow's instance groups.

        " } }, "InstanceGroupDetail": { "base": "

        Detailed information about an instance group.

        ", "refs": { "InstanceGroupDetailList$member": null } }, "InstanceGroupDetailList": { "base": null, "refs": { "JobFlowInstancesDetail$InstanceGroups": "

        Details about the job flow's instance groups.

        " } }, "InstanceGroupId": { "base": null, "refs": { "InstanceGroup$Id": "

        The identifier of the instance group.

        ", "ListInstancesInput$InstanceGroupId": "

        The identifier of the instance group for which to list the instances.

        " } }, "InstanceGroupIdsList": { "base": null, "refs": { "AddInstanceGroupsOutput$InstanceGroupIds": "

        Instance group IDs of the newly created instance groups.

        " } }, "InstanceGroupList": { "base": null, "refs": { "ListInstanceGroupsOutput$InstanceGroups": "

        The list of instance groups for the cluster and given filters.

        " } }, "InstanceGroupModifyConfig": { "base": "

        Modify an instance group size.

        ", "refs": { "InstanceGroupModifyConfigList$member": null } }, "InstanceGroupModifyConfigList": { "base": null, "refs": { "ModifyInstanceGroupsInput$InstanceGroups": "

        Instance groups to change.

        " } }, "InstanceGroupState": { "base": null, "refs": { "InstanceGroupDetail$State": "

        State of instance group. The following values are deprecated: STARTING, TERMINATED, and FAILED.

        ", "InstanceGroupStatus$State": "

        The current state of the instance group.

        " } }, "InstanceGroupStateChangeReason": { "base": "

        The status change reason details for the instance group.

        ", "refs": { "InstanceGroupStatus$StateChangeReason": "

        The status change reason details for the instance group.

        " } }, "InstanceGroupStateChangeReasonCode": { "base": null, "refs": { "InstanceGroupStateChangeReason$Code": "

        The programmable code for the state change reason.

        " } }, "InstanceGroupStatus": { "base": "

        The details of the instance group status.

        ", "refs": { "InstanceGroup$Status": "

        The current status of the instance group.

        " } }, "InstanceGroupTimeline": { "base": "

        The timeline of the instance group lifecycle.

        ", "refs": { "InstanceGroupStatus$Timeline": "

        The timeline of the instance group status over time.

        " } }, "InstanceGroupType": { "base": null, "refs": { "InstanceGroup$InstanceGroupType": "

        The type of the instance group. Valid values are MASTER, CORE or TASK.

        ", "InstanceGroupTypeList$member": null } }, "InstanceGroupTypeList": { "base": null, "refs": { "ListInstancesInput$InstanceGroupTypes": "

        The type of instance group for which to list the instances.

        " } }, "InstanceId": { "base": null, "refs": { "EC2InstanceIdsList$member": null, "EC2InstanceIdsToTerminateList$member": null, "Instance$Id": "

        The unique identifier for the instance in Amazon EMR.

        ", "Instance$Ec2InstanceId": "

        The unique identifier of the instance in Amazon EC2.

        " } }, "InstanceList": { "base": null, "refs": { "ListInstancesOutput$Instances": "

        The list of instances for the cluster and given filters.

        " } }, "InstanceResizePolicy": { "base": "

        Custom policy for requesting termination protection or termination of specific instances when shrinking an instance group.

        ", "refs": { "ShrinkPolicy$InstanceResizePolicy": "

        Custom policy for requesting termination protection or termination of specific instances when shrinking an instance group.

        " } }, "InstanceRoleType": { "base": null, "refs": { "InstanceGroupConfig$InstanceRole": "

        The role of the instance group in the cluster.

        ", "InstanceGroupDetail$InstanceRole": "

        Instance group role in the cluster

        " } }, "InstanceState": { "base": null, "refs": { "InstanceStateList$member": null, "InstanceStatus$State": "

        The current state of the instance.

        " } }, "InstanceStateChangeReason": { "base": "

        The details of the status change reason for the instance.

        ", "refs": { "InstanceStatus$StateChangeReason": "

        The details of the status change reason for the instance.

        " } }, "InstanceStateChangeReasonCode": { "base": null, "refs": { "InstanceStateChangeReason$Code": "

        The programmable code for the state change reason.

        " } }, "InstanceStateList": { "base": null, "refs": { "ListInstancesInput$InstanceStates": "

        A list of instance states that will filter the instances returned with this request.

        " } }, "InstanceStatus": { "base": "

        The instance status details.

        ", "refs": { "Instance$Status": "

        The current status of the instance.

        " } }, "InstanceTimeline": { "base": "

        The timeline of the instance lifecycle.

        ", "refs": { "InstanceStatus$Timeline": "

        The timeline of the instance status over time.

        " } }, "InstanceType": { "base": null, "refs": { "InstanceGroup$InstanceType": "

        The EC2 instance type for all instances in the instance group.

        ", "InstanceGroupConfig$InstanceType": "

        The Amazon EC2 instance type for all instances in the instance group.

        ", "InstanceGroupDetail$InstanceType": "

        Amazon EC2 Instance type.

        ", "JobFlowInstancesConfig$MasterInstanceType": "

        The EC2 instance type of the master node.

        ", "JobFlowInstancesConfig$SlaveInstanceType": "

        The EC2 instance type of the slave nodes.

        ", "JobFlowInstancesDetail$MasterInstanceType": "

        The Amazon EC2 master node instance type.

        ", "JobFlowInstancesDetail$SlaveInstanceType": "

        The Amazon EC2 slave node instance type.

        " } }, "Integer": { "base": null, "refs": { "Cluster$NormalizedInstanceHours": "

        An approximation of the cost of the job flow, represented in m1.small/hours. This value is incremented one time for every hour an m1.small instance runs. Larger instances are weighted more, so an EC2 instance that is roughly four times more expensive would result in the normalized instance hours being incremented by four. This result is only an approximation and does not reflect the actual billing rate.

        ", "ClusterSummary$NormalizedInstanceHours": "

        An approximation of the cost of the job flow, represented in m1.small/hours. This value is incremented one time for every hour an m1.small instance runs. Larger instances are weighted more, so an EC2 instance that is roughly four times more expensive would result in the normalized instance hours being incremented by four. This result is only an approximation and does not reflect the actual billing rate.

        ", "EbsBlockDeviceConfig$VolumesPerInstance": "

        Number of EBS volumes with specific volume configuration, that will be associated with every instance in the instance group

        ", "InstanceGroup$RequestedInstanceCount": "

        The target number of instances for the instance group.

        ", "InstanceGroup$RunningInstanceCount": "

        The number of instances currently running in this instance group.

        ", "InstanceGroupConfig$InstanceCount": "

        Target number of instances for the instance group.

        ", "InstanceGroupDetail$InstanceRequestCount": "

        Target number of instances to run in the instance group.

        ", "InstanceGroupDetail$InstanceRunningCount": "

        Actual count of running instances.

        ", "InstanceGroupModifyConfig$InstanceCount": "

        Target size for the instance group.

        ", "InstanceResizePolicy$InstanceTerminationTimeout": "

        Decommissioning timeout override for the specific list of instances to be terminated.

        ", "JobFlowInstancesConfig$InstanceCount": "

        The number of Amazon EC2 instances used to execute the job flow.

        ", "JobFlowInstancesDetail$InstanceCount": "

        The number of Amazon EC2 instances in the cluster. If the value is 1, the same instance serves as both the master and slave node. If the value is greater than 1, one instance is the master node and all others are slave nodes.

        ", "JobFlowInstancesDetail$NormalizedInstanceHours": "

        An approximation of the cost of the job flow, represented in m1.small/hours. This value is incremented once for every hour an m1.small runs. Larger instances are weighted more, so an Amazon EC2 instance that is roughly four times more expensive would result in the normalized instance hours being incremented by four. This result is only an approximation and does not reflect the actual billing rate.

        ", "ShrinkPolicy$DecommissionTimeout": "

        The desired timeout for decommissioning an instance. Overrides the default YARN decommissioning timeout.

        ", "VolumeSpecification$Iops": "

        The number of I/O operations per second (IOPS) that the volume supports.

        ", "VolumeSpecification$SizeInGB": "

        The volume size, in gibibytes (GiB). This can be a number from 1 - 1024. If the volume type is EBS-optimized, the minimum value is 10.

        " } }, "InternalServerError": { "base": "

        Indicates that an error occurred while processing the request and that the request was not completed.

        ", "refs": { } }, "InternalServerException": { "base": "

        This exception occurs when there is an internal failure in the EMR service.

        ", "refs": { } }, "InvalidRequestException": { "base": "

        This exception occurs when there is something wrong with user input.

        ", "refs": { } }, "JobFlowDetail": { "base": "

        A description of a job flow.

        ", "refs": { "JobFlowDetailList$member": null } }, "JobFlowDetailList": { "base": null, "refs": { "DescribeJobFlowsOutput$JobFlows": "

        A list of job flows matching the parameters supplied.

        " } }, "JobFlowExecutionState": { "base": "

        The type of instance.

        ", "refs": { "JobFlowExecutionStateList$member": null, "JobFlowExecutionStatusDetail$State": "

        The state of the job flow.

        " } }, "JobFlowExecutionStateList": { "base": null, "refs": { "DescribeJobFlowsInput$JobFlowStates": "

        Return only job flows whose state is contained in this list.

        " } }, "JobFlowExecutionStatusDetail": { "base": "

        Describes the status of the job flow.

        ", "refs": { "JobFlowDetail$ExecutionStatusDetail": "

        Describes the execution status of the job flow.

        " } }, "JobFlowInstancesConfig": { "base": "

        A description of the Amazon EC2 instance running the job flow. A valid JobFlowInstancesConfig must contain at least InstanceGroups, which is the recommended configuration. However, a valid alternative is to have MasterInstanceType, SlaveInstanceType, and InstanceCount (all three must be present).

        ", "refs": { "RunJobFlowInput$Instances": "

        A specification of the number and type of Amazon EC2 instances on which to run the job flow.

        " } }, "JobFlowInstancesDetail": { "base": "

        Specify the type of Amazon EC2 instances to run the job flow on.

        ", "refs": { "JobFlowDetail$Instances": "

        Describes the Amazon EC2 instances of the job flow.

        " } }, "KeyValue": { "base": "

        A key value pair.

        ", "refs": { "KeyValueList$member": null } }, "KeyValueList": { "base": null, "refs": { "HadoopJarStepConfig$Properties": "

        A list of Java properties that are set when the step runs. You can use these properties to pass key value pairs to your main function.

        " } }, "ListBootstrapActionsInput": { "base": "

        This input determines which bootstrap actions to retrieve.

        ", "refs": { } }, "ListBootstrapActionsOutput": { "base": "

        This output contains the boostrap actions detail .

        ", "refs": { } }, "ListClustersInput": { "base": "

        This input determines how the ListClusters action filters the list of clusters that it returns.

        ", "refs": { } }, "ListClustersOutput": { "base": "

        This contains a ClusterSummaryList with the cluster details; for example, the cluster IDs, names, and status.

        ", "refs": { } }, "ListInstanceGroupsInput": { "base": "

        This input determines which instance groups to retrieve.

        ", "refs": { } }, "ListInstanceGroupsOutput": { "base": "

        This input determines which instance groups to retrieve.

        ", "refs": { } }, "ListInstancesInput": { "base": "

        This input determines which instances to list.

        ", "refs": { } }, "ListInstancesOutput": { "base": "

        This output contains the list of instances.

        ", "refs": { } }, "ListSecurityConfigurationsInput": { "base": null, "refs": { } }, "ListSecurityConfigurationsOutput": { "base": null, "refs": { } }, "ListStepsInput": { "base": "

        This input determines which steps to list.

        ", "refs": { } }, "ListStepsOutput": { "base": "

        This output contains the list of steps returned in reverse order. This means that the last step is the first element in the list.

        ", "refs": { } }, "Marker": { "base": null, "refs": { "ListBootstrapActionsInput$Marker": "

        The pagination token that indicates the next set of results to retrieve.

        ", "ListBootstrapActionsOutput$Marker": "

        The pagination token that indicates the next set of results to retrieve.

        ", "ListClustersInput$Marker": "

        The pagination token that indicates the next set of results to retrieve.

        ", "ListClustersOutput$Marker": "

        The pagination token that indicates the next set of results to retrieve.

        ", "ListInstanceGroupsInput$Marker": "

        The pagination token that indicates the next set of results to retrieve.

        ", "ListInstanceGroupsOutput$Marker": "

        The pagination token that indicates the next set of results to retrieve.

        ", "ListInstancesInput$Marker": "

        The pagination token that indicates the next set of results to retrieve.

        ", "ListInstancesOutput$Marker": "

        The pagination token that indicates the next set of results to retrieve.

        ", "ListSecurityConfigurationsInput$Marker": "

        The pagination token that indicates the set of results to retrieve.

        ", "ListSecurityConfigurationsOutput$Marker": "

        A pagination token that indicates the next set of results to retrieve. Include the marker in the next ListSecurityConfiguration call to retrieve the next page of results, if required.

        ", "ListStepsInput$Marker": "

        The pagination token that indicates the next set of results to retrieve.

        ", "ListStepsOutput$Marker": "

        The pagination token that indicates the next set of results to retrieve.

        " } }, "MarketType": { "base": null, "refs": { "InstanceGroup$Market": "

        The marketplace to provision instances for this group. Valid values are ON_DEMAND or SPOT.

        ", "InstanceGroupConfig$Market": "

        Market type of the Amazon EC2 instances used to create a cluster node.

        ", "InstanceGroupDetail$Market": "

        Market type of the Amazon EC2 instances used to create a cluster node.

        " } }, "ModifyInstanceGroupsInput": { "base": "

        Change the size of some instance groups.

        ", "refs": { } }, "NewSupportedProductsList": { "base": null, "refs": { "RunJobFlowInput$NewSupportedProducts": "

        For Amazon EMR releases 3.x and 2.x. For Amazon EMR releases 4.x and greater, use Applications.

        A list of strings that indicates third-party software to use with the job flow that accepts a user argument list. EMR accepts and forwards the argument list to the corresponding installation script as bootstrap action arguments. For more information, see Launch a Job Flow on the MapR Distribution for Hadoop. Currently supported values are:

        • \"mapr-m3\" - launch the cluster using MapR M3 Edition.

        • \"mapr-m5\" - launch the cluster using MapR M5 Edition.

        • \"mapr\" with the user arguments specifying \"--edition,m3\" or \"--edition,m5\" - launch the job flow using MapR M3 or M5 Edition respectively.

        • \"mapr-m7\" - launch the cluster using MapR M7 Edition.

        • \"hunk\" - launch the cluster with the Hunk Big Data Analtics Platform.

        • \"hue\"- launch the cluster with Hue installed.

        • \"spark\" - launch the cluster with Apache Spark installed.

        • \"ganglia\" - launch the cluster with the Ganglia Monitoring System installed.

        " } }, "PlacementType": { "base": "

        The Amazon EC2 location for the job flow.

        ", "refs": { "JobFlowInstancesConfig$Placement": "

        The Availability Zone the job flow will run in.

        ", "JobFlowInstancesDetail$Placement": "

        The Amazon EC2 Availability Zone for the job flow.

        " } }, "RemoveTagsInput": { "base": "

        This input identifies a cluster and a list of tags to remove.

        ", "refs": { } }, "RemoveTagsOutput": { "base": "

        This output indicates the result of removing tags from a resource.

        ", "refs": { } }, "ResourceId": { "base": null, "refs": { "AddTagsInput$ResourceId": "

        The Amazon EMR resource identifier to which tags will be added. This value must be a cluster identifier.

        ", "RemoveTagsInput$ResourceId": "

        The Amazon EMR resource identifier from which tags will be removed. This value must be a cluster identifier.

        " } }, "RunJobFlowInput": { "base": "

        Input to the RunJobFlow operation.

        ", "refs": { } }, "RunJobFlowOutput": { "base": "

        The result of the RunJobFlow operation.

        ", "refs": { } }, "ScriptBootstrapActionConfig": { "base": null, "refs": { "BootstrapActionConfig$ScriptBootstrapAction": null } }, "SecurityConfigurationList": { "base": null, "refs": { "ListSecurityConfigurationsOutput$SecurityConfigurations": "

        The creation date and time, and name, of each security configuration.

        " } }, "SecurityConfigurationSummary": { "base": "

        The creation date and time, and name, of a security configuration.

        ", "refs": { "SecurityConfigurationList$member": null } }, "SecurityGroupsList": { "base": null, "refs": { "JobFlowInstancesConfig$AdditionalMasterSecurityGroups": "

        A list of additional Amazon EC2 security group IDs for the master node.

        ", "JobFlowInstancesConfig$AdditionalSlaveSecurityGroups": "

        A list of additional Amazon EC2 security group IDs for the slave nodes.

        " } }, "SetTerminationProtectionInput": { "base": "

        The input argument to the TerminationProtection operation.

        ", "refs": { } }, "SetVisibleToAllUsersInput": { "base": "

        The input to the SetVisibleToAllUsers action.

        ", "refs": { } }, "ShrinkPolicy": { "base": "

        Policy for customizing shrink operations. Allows configuration of decommissioning timeout and targeted instance shrinking.

        ", "refs": { "InstanceGroup$ShrinkPolicy": "

        Policy for customizing shrink operations.

        ", "InstanceGroupModifyConfig$ShrinkPolicy": "

        Policy for customizing shrink operations.

        " } }, "Step": { "base": "

        This represents a step in a cluster.

        ", "refs": { "DescribeStepOutput$Step": "

        The step details for the requested step identifier.

        " } }, "StepConfig": { "base": "

        Specification of a job flow step.

        ", "refs": { "StepConfigList$member": null, "StepDetail$StepConfig": "

        The step configuration.

        " } }, "StepConfigList": { "base": null, "refs": { "AddJobFlowStepsInput$Steps": "

        A list of StepConfig to be executed by the job flow.

        ", "RunJobFlowInput$Steps": "

        A list of steps to be executed by the job flow.

        " } }, "StepDetail": { "base": "

        Combines the execution state and configuration of a step.

        ", "refs": { "StepDetailList$member": null } }, "StepDetailList": { "base": null, "refs": { "JobFlowDetail$Steps": "

        A list of steps run by the job flow.

        " } }, "StepExecutionState": { "base": null, "refs": { "StepExecutionStatusDetail$State": "

        The state of the job flow step.

        " } }, "StepExecutionStatusDetail": { "base": "

        The execution state of a step.

        ", "refs": { "StepDetail$ExecutionStatusDetail": "

        The description of the step status.

        " } }, "StepId": { "base": null, "refs": { "DescribeStepInput$StepId": "

        The identifier of the step to describe.

        ", "Step$Id": "

        The identifier of the cluster step.

        ", "StepSummary$Id": "

        The identifier of the cluster step.

        " } }, "StepIdsList": { "base": null, "refs": { "AddJobFlowStepsOutput$StepIds": "

        The identifiers of the list of steps added to the job flow.

        " } }, "StepState": { "base": null, "refs": { "StepStateList$member": null, "StepStatus$State": "

        The execution state of the cluster step.

        " } }, "StepStateChangeReason": { "base": "

        The details of the step state change reason.

        ", "refs": { "StepStatus$StateChangeReason": "

        The reason for the step execution status change.

        " } }, "StepStateChangeReasonCode": { "base": null, "refs": { "StepStateChangeReason$Code": "

        The programmable code for the state change reason. Note: Currently, the service provides no code for the state change.

        " } }, "StepStateList": { "base": null, "refs": { "ListStepsInput$StepStates": "

        The filter to limit the step list based on certain states.

        " } }, "StepStatus": { "base": "

        The execution status details of the cluster step.

        ", "refs": { "Step$Status": "

        The current execution status details of the cluster step.

        ", "StepSummary$Status": "

        The current execution status details of the cluster step.

        " } }, "StepSummary": { "base": "

        The summary of the cluster step.

        ", "refs": { "StepSummaryList$member": null } }, "StepSummaryList": { "base": null, "refs": { "ListStepsOutput$Steps": "

        The filtered list of steps for the cluster.

        " } }, "StepTimeline": { "base": "

        The timeline of the cluster step lifecycle.

        ", "refs": { "StepStatus$Timeline": "

        The timeline of the cluster step status over time.

        " } }, "String": { "base": null, "refs": { "Application$Name": "

        The name of the application.

        ", "Application$Version": "

        The version of the application.

        ", "Cluster$Name": "

        The name of the cluster.

        ", "Cluster$LogUri": "

        The path to the Amazon S3 location where logs for this cluster are stored.

        ", "Cluster$RequestedAmiVersion": "

        The AMI version requested for this cluster.

        ", "Cluster$RunningAmiVersion": "

        The AMI version running on this cluster.

        ", "Cluster$ReleaseLabel": "

        The release label for the Amazon EMR release. For Amazon EMR 3.x and 2.x AMIs, use amiVersion instead instead of ReleaseLabel.

        ", "Cluster$ServiceRole": "

        The IAM role that will be assumed by the Amazon EMR service to access AWS resources on your behalf.

        ", "Cluster$MasterPublicDnsName": "

        The public DNS name of the master EC2 instance.

        ", "ClusterStateChangeReason$Message": "

        The descriptive message for the state change reason.

        ", "ClusterSummary$Name": "

        The name of the cluster.

        ", "Command$Name": "

        The name of the command.

        ", "Command$ScriptPath": "

        The Amazon S3 location of the command script.

        ", "Configuration$Classification": "

        The classification of a configuration. For more information see, Amazon EMR Configurations.

        ", "CreateSecurityConfigurationInput$SecurityConfiguration": "

        The security configuration details in JSON format.

        ", "DescribeSecurityConfigurationOutput$SecurityConfiguration": "

        The security configuration details in JSON format.

        ", "EbsBlockDevice$Device": "

        The device name that is exposed to the instance, such as /dev/sdh.

        ", "EbsVolume$Device": "

        The device name that is exposed to the instance, such as /dev/sdh.

        ", "EbsVolume$VolumeId": "

        The volume identifier of the EBS volume.

        ", "Ec2InstanceAttributes$Ec2KeyName": "

        The name of the Amazon EC2 key pair to use when connecting with SSH into the master node as a user named \"hadoop\".

        ", "Ec2InstanceAttributes$Ec2SubnetId": "

        To launch the job flow in Amazon VPC, set this parameter to the identifier of the Amazon VPC subnet where you want the job flow to launch. If you do not specify this value, the job flow is launched in the normal AWS cloud, outside of a VPC.

        Amazon VPC currently does not support cluster compute quadruple extra large (cc1.4xlarge) instances. Thus, you cannot specify the cc1.4xlarge instance type for nodes of a job flow launched in a VPC.

        ", "Ec2InstanceAttributes$Ec2AvailabilityZone": "

        The Availability Zone in which the cluster will run.

        ", "Ec2InstanceAttributes$IamInstanceProfile": "

        The IAM role that was specified when the job flow was launched. The EC2 instances of the job flow assume this role.

        ", "Ec2InstanceAttributes$EmrManagedMasterSecurityGroup": "

        The identifier of the Amazon EC2 security group for the master node.

        ", "Ec2InstanceAttributes$EmrManagedSlaveSecurityGroup": "

        The identifier of the Amazon EC2 security group for the slave nodes.

        ", "Ec2InstanceAttributes$ServiceAccessSecurityGroup": "

        The identifier of the Amazon EC2 security group for the Amazon EMR service to access clusters in VPC private subnets.

        ", "FailureDetails$Reason": "

        The reason for the step failure. In the case where the service cannot successfully determine the root cause of the failure, it returns \"Unknown Error\" as a reason.

        ", "FailureDetails$Message": "

        The descriptive message including the error the EMR service has identified as the cause of step failure. This is text from an error log that describes the root cause of the failure.

        ", "FailureDetails$LogFile": "

        The path to the log file where the step failure root cause was originally recorded.

        ", "HadoopStepConfig$Jar": "

        The path to the JAR file that runs during the step.

        ", "HadoopStepConfig$MainClass": "

        The name of the main class in the specified Java file. If not specified, the JAR file should specify a main class in its manifest file.

        ", "Instance$PublicDnsName": "

        The public DNS name of the instance.

        ", "Instance$PublicIpAddress": "

        The public IP address of the instance.

        ", "Instance$PrivateDnsName": "

        The private DNS name of the instance.

        ", "Instance$PrivateIpAddress": "

        The private IP address of the instance.

        ", "Instance$InstanceGroupId": "

        The identifier of the instance group to which this instance belongs.

        ", "InstanceGroup$Name": "

        The name of the instance group.

        ", "InstanceGroup$BidPrice": "

        The bid price for each EC2 instance in the instance group when launching nodes as Spot Instances, expressed in USD.

        ", "InstanceGroupStateChangeReason$Message": "

        The status change reason description.

        ", "InstanceStateChangeReason$Message": "

        The status change reason description.

        ", "Step$Name": "

        The name of the cluster step.

        ", "StepStateChangeReason$Message": "

        The descriptive message for the state change reason.

        ", "StepSummary$Name": "

        The name of the cluster step.

        ", "StringList$member": null, "StringMap$key": null, "StringMap$value": null, "Tag$Key": "

        A user-defined key, which is the minimum required information for a valid tag. For more information, see Tagging Amazon EMR Resources.

        ", "Tag$Value": "

        A user-defined value, which is optional in a tag. For more information, see Tagging Amazon EMR Resources.

        ", "VolumeSpecification$VolumeType": "

        The volume type. Volume types supported are gp2, io1, standard.

        " } }, "StringList": { "base": null, "refs": { "Application$Args": "

        Arguments for Amazon EMR to pass to the application.

        ", "Command$Args": "

        Arguments for Amazon EMR to pass to the command for execution.

        ", "Ec2InstanceAttributes$AdditionalMasterSecurityGroups": "

        A list of additional Amazon EC2 security group IDs for the master node.

        ", "Ec2InstanceAttributes$AdditionalSlaveSecurityGroups": "

        A list of additional Amazon EC2 security group IDs for the slave nodes.

        ", "HadoopStepConfig$Args": "

        The list of command line arguments to pass to the JAR file's main function for execution.

        ", "RemoveTagsInput$TagKeys": "

        A list of tag keys to remove from a resource.

        " } }, "StringMap": { "base": null, "refs": { "Application$AdditionalInfo": "

        This option is for advanced users only. This is meta information about third-party applications that third-party vendors use for testing purposes.

        ", "Configuration$Properties": "

        A set of properties supplied to the Configuration object.

        ", "HadoopStepConfig$Properties": "

        The list of Java properties that are set when the step runs. You can use these properties to pass key value pairs to your main function.

        " } }, "SupportedProductConfig": { "base": "

        The list of supported product configurations which allow user-supplied arguments. EMR accepts these arguments and forwards them to the corresponding installation script as bootstrap action arguments.

        ", "refs": { "NewSupportedProductsList$member": null } }, "SupportedProductsList": { "base": null, "refs": { "JobFlowDetail$SupportedProducts": "

        A list of strings set by third party software when the job flow is launched. If you are not using third party software to manage the job flow this value is empty.

        ", "RunJobFlowInput$SupportedProducts": "

        For Amazon EMR releases 3.x and 2.x. For Amazon EMR releases 4.x and greater, use Applications.

        A list of strings that indicates third-party software to use with the job flow. For more information, go to Use Third Party Applications with Amazon EMR. Currently supported values are:

        • \"mapr-m3\" - launch the job flow using MapR M3 Edition.

        • \"mapr-m5\" - launch the job flow using MapR M5 Edition.

        " } }, "Tag": { "base": "

        A key/value pair containing user-defined metadata that you can associate with an Amazon EMR resource. Tags make it easier to associate clusters in various ways, such as grouping clu\\ sters to track your Amazon EMR resource allocation costs. For more information, see Tagging Amazon EMR Resources.

        ", "refs": { "TagList$member": null } }, "TagList": { "base": null, "refs": { "AddTagsInput$Tags": "

        A list of tags to associate with a cluster and propagate to Amazon EC2 instances. Tags are user-defined key/value pairs that consist of a required key string with a maximum of 128 characters, and an optional value string with a maximum of 256 characters.

        ", "Cluster$Tags": "

        A list of tags associated with a cluster.

        ", "RunJobFlowInput$Tags": "

        A list of tags to associate with a cluster and propagate to Amazon EC2 instances.

        " } }, "TerminateJobFlowsInput": { "base": "

        Input to the TerminateJobFlows operation.

        ", "refs": { } }, "VolumeSpecification": { "base": "

        EBS volume specifications such as volume type, IOPS, and size(GiB) that will be requested for the EBS volume attached to an EC2 instance in the cluster.

        ", "refs": { "EbsBlockDevice$VolumeSpecification": "

        EBS volume specifications such as volume type, IOPS, and size(GiB) that will be requested for the EBS volume attached to an EC2 instance in the cluster.

        ", "EbsBlockDeviceConfig$VolumeSpecification": "

        EBS volume specifications such as volume type, IOPS, and size(GiB) that will be requested for the EBS volume attached to an EC2 instance in the cluster.

        " } }, "XmlString": { "base": null, "refs": { "Cluster$SecurityConfiguration": "

        The name of the security configuration applied to the cluster.

        ", "CreateSecurityConfigurationInput$Name": "

        The name of the security configuration.

        ", "CreateSecurityConfigurationOutput$Name": "

        The name of the security configuration.

        ", "DeleteSecurityConfigurationInput$Name": "

        The name of the security configuration.

        ", "DescribeSecurityConfigurationInput$Name": "

        The name of the security configuration.

        ", "DescribeSecurityConfigurationOutput$Name": "

        The name of the security configuration.

        ", "HadoopJarStepConfig$Jar": "

        A path to a JAR file run during the step.

        ", "HadoopJarStepConfig$MainClass": "

        The name of the main class in the specified Java file. If not specified, the JAR file should specify a Main-Class in its manifest file.

        ", "InstanceGroupDetail$LastStateChangeReason": "

        Details regarding the state of the instance group.

        ", "JobFlowDetail$LogUri": "

        The location in Amazon S3 where log files for the job are stored.

        ", "JobFlowDetail$JobFlowRole": "

        The IAM role that was specified when the job flow was launched. The EC2 instances of the job flow assume this role.

        ", "JobFlowDetail$ServiceRole": "

        The IAM role that will be assumed by the Amazon EMR service to access AWS resources on your behalf.

        ", "JobFlowExecutionStatusDetail$LastStateChangeReason": "

        Description of the job flow last changed state.

        ", "JobFlowInstancesDetail$MasterPublicDnsName": "

        The DNS name of the master node.

        ", "JobFlowInstancesDetail$MasterInstanceId": "

        The Amazon EC2 instance identifier of the master node.

        ", "KeyValue$Key": "

        The unique identifier of a key value pair.

        ", "KeyValue$Value": "

        The value part of the identified key.

        ", "PlacementType$AvailabilityZone": "

        The Amazon EC2 Availability Zone for the job flow.

        ", "RunJobFlowInput$LogUri": "

        The location in Amazon S3 to write the log files of the job flow. If a value is not provided, logs are not created.

        ", "RunJobFlowInput$AdditionalInfo": "

        A JSON string for selecting additional features.

        ", "RunJobFlowInput$JobFlowRole": "

        Also called instance profile and EC2 role. An IAM role for an EMR cluster. The EC2 instances of the cluster assume this role. The default role is EMR_EC2_DefaultRole. In order to use the default role, you must have already created it using the CLI or console.

        ", "RunJobFlowInput$ServiceRole": "

        The IAM role that will be assumed by the Amazon EMR service to access AWS resources on your behalf.

        ", "RunJobFlowInput$SecurityConfiguration": "

        The name of a security configuration to apply to the cluster.

        ", "ScriptBootstrapActionConfig$Path": null, "SecurityConfigurationSummary$Name": "

        The name of the security configuration.

        ", "StepExecutionStatusDetail$LastStateChangeReason": "

        A description of the step's current state.

        ", "XmlStringList$member": null } }, "XmlStringList": { "base": null, "refs": { "DescribeJobFlowsInput$JobFlowIds": "

        Return only job flows whose job flow ID is contained in this list.

        ", "HadoopJarStepConfig$Args": "

        A list of command line arguments passed to the JAR file's main function when executed.

        ", "ListStepsInput$StepIds": "

        The filter to limit the step list based on the identifier of the steps.

        ", "ScriptBootstrapActionConfig$Args": null, "SetTerminationProtectionInput$JobFlowIds": "

        A list of strings that uniquely identify the job flows to protect. This identifier is returned by RunJobFlow and can also be obtained from DescribeJobFlows .

        ", "SetVisibleToAllUsersInput$JobFlowIds": "

        Identifiers of the job flows to receive the new visibility setting.

        ", "SupportedProductConfig$Args": "

        The list of user-supplied arguments.

        ", "TerminateJobFlowsInput$JobFlowIds": "

        A list of job flows to be shutdown.

        " } }, "XmlStringMaxLen256": { "base": null, "refs": { "AddInstanceGroupsInput$JobFlowId": "

        Job flow in which to add the instance groups.

        ", "AddInstanceGroupsOutput$JobFlowId": "

        The job flow ID in which the instance groups are added.

        ", "AddJobFlowStepsInput$JobFlowId": "

        A string that uniquely identifies the job flow. This identifier is returned by RunJobFlow and can also be obtained from ListClusters.

        ", "BootstrapActionConfig$Name": null, "InstanceGroupConfig$Name": "

        Friendly name given to the instance group.

        ", "InstanceGroupConfig$BidPrice": "

        Bid price for each Amazon EC2 instance in the instance group when launching nodes as Spot Instances, expressed in USD.

        ", "InstanceGroupDetail$InstanceGroupId": "

        Unique identifier for the instance group.

        ", "InstanceGroupDetail$Name": "

        Friendly name for the instance group.

        ", "InstanceGroupDetail$BidPrice": "

        Bid price for EC2 Instances when launching nodes as Spot Instances, expressed in USD.

        ", "InstanceGroupIdsList$member": null, "InstanceGroupModifyConfig$InstanceGroupId": "

        Unique ID of the instance group to expand or shrink.

        ", "JobFlowDetail$JobFlowId": "

        The job flow identifier.

        ", "JobFlowDetail$Name": "

        The name of the job flow.

        ", "JobFlowDetail$AmiVersion": "

        The version of the AMI used to initialize Amazon EC2 instances in the job flow. For a list of AMI versions currently supported by Amazon ElasticMapReduce, go to AMI Versions Supported in Elastic MapReduce in the Amazon Elastic MapReduce Developer Guide.

        ", "JobFlowInstancesConfig$Ec2KeyName": "

        The name of the Amazon EC2 key pair that can be used to ssh to the master node as the user called \"hadoop.\"

        ", "JobFlowInstancesConfig$HadoopVersion": "

        The Hadoop version for the job flow. Valid inputs are \"0.18\" (deprecated), \"0.20\" (deprecated), \"0.20.205\" (deprecated), \"1.0.3\", \"2.2.0\", or \"2.4.0\". If you do not set this value, the default of 0.18 is used, unless the AmiVersion parameter is set in the RunJobFlow call, in which case the default version of Hadoop for that AMI version is used.

        ", "JobFlowInstancesConfig$Ec2SubnetId": "

        To launch the job flow in Amazon Virtual Private Cloud (Amazon VPC), set this parameter to the identifier of the Amazon VPC subnet where you want the job flow to launch. If you do not specify this value, the job flow is launched in the normal Amazon Web Services cloud, outside of an Amazon VPC.

        Amazon VPC currently does not support cluster compute quadruple extra large (cc1.4xlarge) instances. Thus you cannot specify the cc1.4xlarge instance type for nodes of a job flow launched in a Amazon VPC.

        ", "JobFlowInstancesConfig$EmrManagedMasterSecurityGroup": "

        The identifier of the Amazon EC2 security group for the master node.

        ", "JobFlowInstancesConfig$EmrManagedSlaveSecurityGroup": "

        The identifier of the Amazon EC2 security group for the slave nodes.

        ", "JobFlowInstancesConfig$ServiceAccessSecurityGroup": "

        The identifier of the Amazon EC2 security group for the Amazon EMR service to access clusters in VPC private subnets.

        ", "JobFlowInstancesDetail$Ec2KeyName": "

        The name of an Amazon EC2 key pair that can be used to ssh to the master node of job flow.

        ", "JobFlowInstancesDetail$Ec2SubnetId": "

        For job flows launched within Amazon Virtual Private Cloud, this value specifies the identifier of the subnet where the job flow was launched.

        ", "JobFlowInstancesDetail$HadoopVersion": "

        The Hadoop version for the job flow.

        ", "RunJobFlowInput$Name": "

        The name of the job flow.

        ", "RunJobFlowInput$AmiVersion": "

        For Amazon EMR releases 3.x and 2.x. For Amazon EMR releases 4.x and greater, use ReleaseLabel.

        The version of the Amazon Machine Image (AMI) to use when launching Amazon EC2 instances in the job flow. The following values are valid:

        • The version number of the AMI to use, for example, \"2.0.\"

        If the AMI supports multiple versions of Hadoop (for example, AMI 1.0 supports both Hadoop 0.18 and 0.20) you can use the JobFlowInstancesConfig HadoopVersion parameter to modify the version of Hadoop from the defaults shown above.

        For details about the AMI versions currently supported by Amazon Elastic MapReduce, go to AMI Versions Supported in Elastic MapReduce in the Amazon Elastic MapReduce Developer's Guide.

        ", "RunJobFlowInput$ReleaseLabel": "

        Amazon EMR releases 4.x or later.

        The release label for the Amazon EMR release. For Amazon EMR 3.x and 2.x AMIs, use amiVersion instead instead of ReleaseLabel.

        ", "RunJobFlowOutput$JobFlowId": "

        An unique identifier for the job flow.

        ", "SecurityGroupsList$member": null, "StepConfig$Name": "

        The name of the job flow step.

        ", "StepIdsList$member": null, "SupportedProductConfig$Name": "

        The name of the product configuration.

        ", "SupportedProductsList$member": null } } } } aws-sdk-go-1.4.22/models/apis/elasticmapreduce/2009-03-31/examples-1.json000066400000000000000000000000541300374646400252150ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/elasticmapreduce/2009-03-31/paginators-1.json000066400000000000000000000013301300374646400255440ustar00rootroot00000000000000{ "pagination": { "DescribeJobFlows": { "result_key": "JobFlows" }, "ListBootstrapActions": { "input_token": "Marker", "output_token": "Marker", "result_key": "BootstrapActions" }, "ListClusters": { "input_token": "Marker", "output_token": "Marker", "result_key": "Clusters" }, "ListInstanceGroups": { "input_token": "Marker", "output_token": "Marker", "result_key": "InstanceGroups" }, "ListInstances": { "input_token": "Marker", "output_token": "Marker", "result_key": "Instances" }, "ListSteps": { "input_token": "Marker", "output_token": "Marker", "result_key": "Steps" } } } aws-sdk-go-1.4.22/models/apis/elasticmapreduce/2009-03-31/waiters-2.json000066400000000000000000000030731300374646400250620ustar00rootroot00000000000000{ "version": 2, "waiters": { "ClusterRunning": { "delay": 30, "operation": "DescribeCluster", "maxAttempts": 60, "acceptors": [ { "state": "success", "matcher": "path", "argument": "Cluster.Status.State", "expected": "RUNNING" }, { "state": "success", "matcher": "path", "argument": "Cluster.Status.State", "expected": "WAITING" }, { "state": "failure", "matcher": "path", "argument": "Cluster.Status.State", "expected": "TERMINATING" }, { "state": "failure", "matcher": "path", "argument": "Cluster.Status.State", "expected": "TERMINATED" }, { "state": "failure", "matcher": "path", "argument": "Cluster.Status.State", "expected": "TERMINATED_WITH_ERRORS" } ] }, "StepComplete": { "delay": 30, "operation": "DescribeStep", "maxAttempts": 60, "acceptors": [ { "state": "success", "matcher": "path", "argument": "Step.Status.State", "expected": "COMPLETED" }, { "state": "failure", "matcher": "path", "argument": "Step.Status.State", "expected": "FAILED" }, { "state": "failure", "matcher": "path", "argument": "Step.Status.State", "expected": "CANCELLED" } ] } } } aws-sdk-go-1.4.22/models/apis/elastictranscoder/000077500000000000000000000000001300374646400215135ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/elastictranscoder/2012-09-25/000077500000000000000000000000001300374646400225515ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/elastictranscoder/2012-09-25/api-2.json000066400000000000000000001156231300374646400243640ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2012-09-25", "endpointPrefix":"elastictranscoder", "protocol":"rest-json", "serviceFullName":"Amazon Elastic Transcoder", "signatureVersion":"v4" }, "operations":{ "CancelJob":{ "name":"CancelJob", "http":{ "method":"DELETE", "requestUri":"/2012-09-25/jobs/{Id}", "responseCode":202 }, "input":{"shape":"CancelJobRequest"}, "output":{"shape":"CancelJobResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"IncompatibleVersionException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServiceException"} ] }, "CreateJob":{ "name":"CreateJob", "http":{ "method":"POST", "requestUri":"/2012-09-25/jobs", "responseCode":201 }, "input":{"shape":"CreateJobRequest"}, "output":{"shape":"CreateJobResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"IncompatibleVersionException"}, {"shape":"ResourceNotFoundException"}, {"shape":"AccessDeniedException"}, {"shape":"LimitExceededException"}, {"shape":"InternalServiceException"} ] }, "CreatePipeline":{ "name":"CreatePipeline", "http":{ "method":"POST", "requestUri":"/2012-09-25/pipelines", "responseCode":201 }, "input":{"shape":"CreatePipelineRequest"}, "output":{"shape":"CreatePipelineResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"IncompatibleVersionException"}, {"shape":"AccessDeniedException"}, {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"InternalServiceException"} ] }, "CreatePreset":{ "name":"CreatePreset", "http":{ "method":"POST", "requestUri":"/2012-09-25/presets", "responseCode":201 }, "input":{"shape":"CreatePresetRequest"}, "output":{"shape":"CreatePresetResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"IncompatibleVersionException"}, {"shape":"AccessDeniedException"}, {"shape":"LimitExceededException"}, {"shape":"InternalServiceException"} ] }, "DeletePipeline":{ "name":"DeletePipeline", "http":{ "method":"DELETE", "requestUri":"/2012-09-25/pipelines/{Id}", "responseCode":202 }, "input":{"shape":"DeletePipelineRequest"}, "output":{"shape":"DeletePipelineResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"IncompatibleVersionException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServiceException"} ] }, "DeletePreset":{ "name":"DeletePreset", "http":{ "method":"DELETE", "requestUri":"/2012-09-25/presets/{Id}", "responseCode":202 }, "input":{"shape":"DeletePresetRequest"}, "output":{"shape":"DeletePresetResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"IncompatibleVersionException"}, {"shape":"ResourceNotFoundException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServiceException"} ] }, "ListJobsByPipeline":{ "name":"ListJobsByPipeline", "http":{ "method":"GET", "requestUri":"/2012-09-25/jobsByPipeline/{PipelineId}" }, "input":{"shape":"ListJobsByPipelineRequest"}, "output":{"shape":"ListJobsByPipelineResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"IncompatibleVersionException"}, {"shape":"ResourceNotFoundException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServiceException"} ] }, "ListJobsByStatus":{ "name":"ListJobsByStatus", "http":{ "method":"GET", "requestUri":"/2012-09-25/jobsByStatus/{Status}" }, "input":{"shape":"ListJobsByStatusRequest"}, "output":{"shape":"ListJobsByStatusResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"IncompatibleVersionException"}, {"shape":"ResourceNotFoundException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServiceException"} ] }, "ListPipelines":{ "name":"ListPipelines", "http":{ "method":"GET", "requestUri":"/2012-09-25/pipelines" }, "input":{"shape":"ListPipelinesRequest"}, "output":{"shape":"ListPipelinesResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"IncompatibleVersionException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServiceException"} ] }, "ListPresets":{ "name":"ListPresets", "http":{ "method":"GET", "requestUri":"/2012-09-25/presets" }, "input":{"shape":"ListPresetsRequest"}, "output":{"shape":"ListPresetsResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"IncompatibleVersionException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServiceException"} ] }, "ReadJob":{ "name":"ReadJob", "http":{ "method":"GET", "requestUri":"/2012-09-25/jobs/{Id}" }, "input":{"shape":"ReadJobRequest"}, "output":{"shape":"ReadJobResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"IncompatibleVersionException"}, {"shape":"ResourceNotFoundException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServiceException"} ] }, "ReadPipeline":{ "name":"ReadPipeline", "http":{ "method":"GET", "requestUri":"/2012-09-25/pipelines/{Id}" }, "input":{"shape":"ReadPipelineRequest"}, "output":{"shape":"ReadPipelineResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"IncompatibleVersionException"}, {"shape":"ResourceNotFoundException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServiceException"} ] }, "ReadPreset":{ "name":"ReadPreset", "http":{ "method":"GET", "requestUri":"/2012-09-25/presets/{Id}" }, "input":{"shape":"ReadPresetRequest"}, "output":{"shape":"ReadPresetResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"IncompatibleVersionException"}, {"shape":"ResourceNotFoundException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServiceException"} ] }, "TestRole":{ "name":"TestRole", "http":{ "method":"POST", "requestUri":"/2012-09-25/roleTests", "responseCode":200 }, "input":{"shape":"TestRoleRequest"}, "output":{"shape":"TestRoleResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"IncompatibleVersionException"}, {"shape":"ResourceNotFoundException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServiceException"} ] }, "UpdatePipeline":{ "name":"UpdatePipeline", "http":{ "method":"PUT", "requestUri":"/2012-09-25/pipelines/{Id}", "responseCode":200 }, "input":{"shape":"UpdatePipelineRequest"}, "output":{"shape":"UpdatePipelineResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"IncompatibleVersionException"}, {"shape":"AccessDeniedException"}, {"shape":"ResourceInUseException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InternalServiceException"} ] }, "UpdatePipelineNotifications":{ "name":"UpdatePipelineNotifications", "http":{ "method":"POST", "requestUri":"/2012-09-25/pipelines/{Id}/notifications" }, "input":{"shape":"UpdatePipelineNotificationsRequest"}, "output":{"shape":"UpdatePipelineNotificationsResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"IncompatibleVersionException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServiceException"} ] }, "UpdatePipelineStatus":{ "name":"UpdatePipelineStatus", "http":{ "method":"POST", "requestUri":"/2012-09-25/pipelines/{Id}/status" }, "input":{"shape":"UpdatePipelineStatusRequest"}, "output":{"shape":"UpdatePipelineStatusResponse"}, "errors":[ {"shape":"ValidationException"}, {"shape":"IncompatibleVersionException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServiceException"} ] } }, "shapes":{ "AccessControl":{ "type":"string", "pattern":"(^FullControl$)|(^Read$)|(^ReadAcp$)|(^WriteAcp$)" }, "AccessControls":{ "type":"list", "member":{"shape":"AccessControl"}, "max":30 }, "AccessDeniedException":{ "type":"structure", "members":{ }, "error":{"httpStatusCode":403}, "exception":true }, "Artwork":{ "type":"structure", "members":{ "InputKey":{"shape":"WatermarkKey"}, "MaxWidth":{"shape":"DigitsOrAuto"}, "MaxHeight":{"shape":"DigitsOrAuto"}, "SizingPolicy":{"shape":"SizingPolicy"}, "PaddingPolicy":{"shape":"PaddingPolicy"}, "AlbumArtFormat":{"shape":"JpgOrPng"}, "Encryption":{"shape":"Encryption"} } }, "Artworks":{ "type":"list", "member":{"shape":"Artwork"} }, "Ascending":{ "type":"string", "pattern":"(^true$)|(^false$)" }, "AspectRatio":{ "type":"string", "pattern":"(^auto$)|(^1:1$)|(^4:3$)|(^3:2$)|(^16:9$)" }, "AudioBitDepth":{ "type":"string", "pattern":"(^8$)|(^16$)|(^24$)|(^32$)" }, "AudioBitOrder":{ "type":"string", "pattern":"(^LittleEndian$)" }, "AudioBitRate":{ "type":"string", "pattern":"^\\d{1,3}$" }, "AudioChannels":{ "type":"string", "pattern":"(^auto$)|(^0$)|(^1$)|(^2$)" }, "AudioCodec":{ "type":"string", "pattern":"(^AAC$)|(^vorbis$)|(^mp3$)|(^mp2$)|(^pcm$)|(^flac$)" }, "AudioCodecOptions":{ "type":"structure", "members":{ "Profile":{"shape":"AudioCodecProfile"}, "BitDepth":{"shape":"AudioBitDepth"}, "BitOrder":{"shape":"AudioBitOrder"}, "Signed":{"shape":"AudioSigned"} } }, "AudioCodecProfile":{ "type":"string", "pattern":"(^auto$)|(^AAC-LC$)|(^HE-AAC$)|(^HE-AACv2$)" }, "AudioPackingMode":{ "type":"string", "pattern":"(^SingleTrack$)|(^OneChannelPerTrack$)|(^OneChannelPerTrackWithMosTo8Tracks$)" }, "AudioParameters":{ "type":"structure", "members":{ "Codec":{"shape":"AudioCodec"}, "SampleRate":{"shape":"AudioSampleRate"}, "BitRate":{"shape":"AudioBitRate"}, "Channels":{"shape":"AudioChannels"}, "AudioPackingMode":{"shape":"AudioPackingMode"}, "CodecOptions":{"shape":"AudioCodecOptions"} } }, "AudioSampleRate":{ "type":"string", "pattern":"(^auto$)|(^22050$)|(^32000$)|(^44100$)|(^48000$)|(^96000$)|(^192000$)" }, "AudioSigned":{ "type":"string", "pattern":"(^Unsigned$)|(^Signed$)" }, "Base64EncodedString":{ "type":"string", "pattern":"^$|(^(?:[A-Za-z0-9\\+/]{4})*(?:[A-Za-z0-9\\+/]{2}==|[A-Za-z0-9\\+/]{3}=)?$)" }, "BucketName":{ "type":"string", "pattern":"^(\\w|\\.|-){1,255}$" }, "CancelJobRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"Id", "location":"uri", "locationName":"Id" } } }, "CancelJobResponse":{ "type":"structure", "members":{ } }, "CaptionFormat":{ "type":"structure", "members":{ "Format":{"shape":"CaptionFormatFormat"}, "Pattern":{"shape":"CaptionFormatPattern"}, "Encryption":{"shape":"Encryption"} } }, "CaptionFormatFormat":{ "type":"string", "pattern":"(^mov-text$)|(^srt$)|(^scc$)|(^webvtt$)|(^dfxp$)|(^cea-708$)" }, "CaptionFormatPattern":{ "type":"string", "pattern":"(^$)|(^.*\\{language\\}.*$)" }, "CaptionFormats":{ "type":"list", "member":{"shape":"CaptionFormat"}, "max":4 }, "CaptionMergePolicy":{ "type":"string", "pattern":"(^MergeOverride$)|(^MergeRetain$)|(^Override$)" }, "CaptionSource":{ "type":"structure", "members":{ "Key":{"shape":"LongKey"}, "Language":{"shape":"Key"}, "TimeOffset":{"shape":"TimeOffset"}, "Label":{"shape":"Name"}, "Encryption":{"shape":"Encryption"} } }, "CaptionSources":{ "type":"list", "member":{"shape":"CaptionSource"}, "max":20 }, "Captions":{ "type":"structure", "members":{ "MergePolicy":{"shape":"CaptionMergePolicy"}, "CaptionSources":{"shape":"CaptionSources"}, "CaptionFormats":{"shape":"CaptionFormats"} } }, "Clip":{ "type":"structure", "members":{ "TimeSpan":{"shape":"TimeSpan"} } }, "CodecOption":{ "type":"string", "max":255, "min":1 }, "CodecOptions":{ "type":"map", "key":{"shape":"CodecOption"}, "value":{"shape":"CodecOption"}, "max":30 }, "Composition":{ "type":"list", "member":{"shape":"Clip"} }, "CreateJobOutput":{ "type":"structure", "members":{ "Key":{"shape":"Key"}, "ThumbnailPattern":{"shape":"ThumbnailPattern"}, "ThumbnailEncryption":{"shape":"Encryption"}, "Rotate":{"shape":"Rotate"}, "PresetId":{"shape":"Id"}, "SegmentDuration":{"shape":"FloatString"}, "Watermarks":{"shape":"JobWatermarks"}, "AlbumArt":{"shape":"JobAlbumArt"}, "Composition":{"shape":"Composition"}, "Captions":{"shape":"Captions"}, "Encryption":{"shape":"Encryption"} } }, "CreateJobOutputs":{ "type":"list", "member":{"shape":"CreateJobOutput"}, "max":30 }, "CreateJobPlaylist":{ "type":"structure", "members":{ "Name":{"shape":"Filename"}, "Format":{"shape":"PlaylistFormat"}, "OutputKeys":{"shape":"OutputKeys"}, "HlsContentProtection":{"shape":"HlsContentProtection"}, "PlayReadyDrm":{"shape":"PlayReadyDrm"} } }, "CreateJobPlaylists":{ "type":"list", "member":{"shape":"CreateJobPlaylist"}, "max":30 }, "CreateJobRequest":{ "type":"structure", "required":[ "PipelineId", "Input" ], "members":{ "PipelineId":{"shape":"Id"}, "Input":{"shape":"JobInput"}, "Output":{"shape":"CreateJobOutput"}, "Outputs":{"shape":"CreateJobOutputs"}, "OutputKeyPrefix":{"shape":"Key"}, "Playlists":{"shape":"CreateJobPlaylists"}, "UserMetadata":{"shape":"UserMetadata"} } }, "CreateJobResponse":{ "type":"structure", "members":{ "Job":{"shape":"Job"} } }, "CreatePipelineRequest":{ "type":"structure", "required":[ "Name", "InputBucket", "Role" ], "members":{ "Name":{"shape":"Name"}, "InputBucket":{"shape":"BucketName"}, "OutputBucket":{"shape":"BucketName"}, "Role":{"shape":"Role"}, "AwsKmsKeyArn":{"shape":"KeyArn"}, "Notifications":{"shape":"Notifications"}, "ContentConfig":{"shape":"PipelineOutputConfig"}, "ThumbnailConfig":{"shape":"PipelineOutputConfig"} } }, "CreatePipelineResponse":{ "type":"structure", "members":{ "Pipeline":{"shape":"Pipeline"}, "Warnings":{"shape":"Warnings"} } }, "CreatePresetRequest":{ "type":"structure", "required":[ "Name", "Container" ], "members":{ "Name":{"shape":"Name"}, "Description":{"shape":"Description"}, "Container":{"shape":"PresetContainer"}, "Video":{"shape":"VideoParameters"}, "Audio":{"shape":"AudioParameters"}, "Thumbnails":{"shape":"Thumbnails"} } }, "CreatePresetResponse":{ "type":"structure", "members":{ "Preset":{"shape":"Preset"}, "Warning":{"shape":"String"} } }, "DeletePipelineRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"Id", "location":"uri", "locationName":"Id" } } }, "DeletePipelineResponse":{ "type":"structure", "members":{ } }, "DeletePresetRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"Id", "location":"uri", "locationName":"Id" } } }, "DeletePresetResponse":{ "type":"structure", "members":{ } }, "Description":{ "type":"string", "max":255, "min":0 }, "DetectedProperties":{ "type":"structure", "members":{ "Width":{"shape":"NullableInteger"}, "Height":{"shape":"NullableInteger"}, "FrameRate":{"shape":"FloatString"}, "FileSize":{"shape":"NullableLong"}, "DurationMillis":{"shape":"NullableLong"} } }, "Digits":{ "type":"string", "pattern":"^\\d{1,5}$" }, "DigitsOrAuto":{ "type":"string", "pattern":"(^auto$)|(^\\d{2,4}$)" }, "Encryption":{ "type":"structure", "members":{ "Mode":{"shape":"EncryptionMode"}, "Key":{"shape":"Base64EncodedString"}, "KeyMd5":{"shape":"Base64EncodedString"}, "InitializationVector":{"shape":"ZeroTo255String"} } }, "EncryptionMode":{ "type":"string", "pattern":"(^s3$)|(^s3-aws-kms$)|(^aes-cbc-pkcs7$)|(^aes-ctr$)|(^aes-gcm$)" }, "ExceptionMessages":{ "type":"list", "member":{"shape":"String"} }, "Filename":{ "type":"string", "max":255, "min":1 }, "FixedGOP":{ "type":"string", "pattern":"(^true$)|(^false$)" }, "FloatString":{ "type":"string", "pattern":"^\\d{1,5}(\\.\\d{0,5})?$" }, "FrameRate":{ "type":"string", "pattern":"(^auto$)|(^10$)|(^15$)|(^23.97$)|(^24$)|(^25$)|(^29.97$)|(^30$)|(^50$)|(^60$)" }, "Grantee":{ "type":"string", "max":255, "min":1 }, "GranteeType":{ "type":"string", "pattern":"(^Canonical$)|(^Email$)|(^Group$)" }, "HlsContentProtection":{ "type":"structure", "members":{ "Method":{"shape":"HlsContentProtectionMethod"}, "Key":{"shape":"Base64EncodedString"}, "KeyMd5":{"shape":"Base64EncodedString"}, "InitializationVector":{"shape":"ZeroTo255String"}, "LicenseAcquisitionUrl":{"shape":"ZeroTo512String"}, "KeyStoragePolicy":{"shape":"KeyStoragePolicy"} } }, "HlsContentProtectionMethod":{ "type":"string", "pattern":"(^aes-128$)" }, "HorizontalAlign":{ "type":"string", "pattern":"(^Left$)|(^Right$)|(^Center$)" }, "Id":{ "type":"string", "pattern":"^\\d{13}-\\w{6}$" }, "IncompatibleVersionException":{ "type":"structure", "members":{ }, "error":{"httpStatusCode":400}, "exception":true }, "Interlaced":{ "type":"string", "pattern":"(^auto$)|(^true$)|(^false$)" }, "InternalServiceException":{ "type":"structure", "members":{ }, "exception":true, "fault":true }, "Job":{ "type":"structure", "members":{ "Id":{"shape":"Id"}, "Arn":{"shape":"String"}, "PipelineId":{"shape":"Id"}, "Input":{"shape":"JobInput"}, "Output":{"shape":"JobOutput"}, "Outputs":{"shape":"JobOutputs"}, "OutputKeyPrefix":{"shape":"Key"}, "Playlists":{"shape":"Playlists"}, "Status":{"shape":"JobStatus"}, "UserMetadata":{"shape":"UserMetadata"}, "Timing":{"shape":"Timing"} } }, "JobAlbumArt":{ "type":"structure", "members":{ "MergePolicy":{"shape":"MergePolicy"}, "Artwork":{"shape":"Artworks"} } }, "JobContainer":{ "type":"string", "pattern":"(^auto$)|(^3gp$)|(^asf$)|(^avi$)|(^divx$)|(^flv$)|(^mkv$)|(^mov$)|(^mp4$)|(^mpeg$)|(^mpeg-ps$)|(^mpeg-ts$)|(^mxf$)|(^ogg$)|(^ts$)|(^vob$)|(^wav$)|(^webm$)|(^mp3$)|(^m4a$)|(^aac$)" }, "JobInput":{ "type":"structure", "members":{ "Key":{"shape":"LongKey"}, "FrameRate":{"shape":"FrameRate"}, "Resolution":{"shape":"Resolution"}, "AspectRatio":{"shape":"AspectRatio"}, "Interlaced":{"shape":"Interlaced"}, "Container":{"shape":"JobContainer"}, "Encryption":{"shape":"Encryption"}, "DetectedProperties":{"shape":"DetectedProperties"} } }, "JobOutput":{ "type":"structure", "members":{ "Id":{"shape":"String"}, "Key":{"shape":"Key"}, "ThumbnailPattern":{"shape":"ThumbnailPattern"}, "ThumbnailEncryption":{"shape":"Encryption"}, "Rotate":{"shape":"Rotate"}, "PresetId":{"shape":"Id"}, "SegmentDuration":{"shape":"FloatString"}, "Status":{"shape":"JobStatus"}, "StatusDetail":{"shape":"Description"}, "Duration":{"shape":"NullableLong"}, "Width":{"shape":"NullableInteger"}, "Height":{"shape":"NullableInteger"}, "FrameRate":{"shape":"FloatString"}, "FileSize":{"shape":"NullableLong"}, "DurationMillis":{"shape":"NullableLong"}, "Watermarks":{"shape":"JobWatermarks"}, "AlbumArt":{"shape":"JobAlbumArt"}, "Composition":{"shape":"Composition"}, "Captions":{"shape":"Captions"}, "Encryption":{"shape":"Encryption"}, "AppliedColorSpaceConversion":{"shape":"String"} } }, "JobOutputs":{ "type":"list", "member":{"shape":"JobOutput"} }, "JobStatus":{ "type":"string", "pattern":"(^Submitted$)|(^Progressing$)|(^Complete$)|(^Canceled$)|(^Error$)" }, "JobWatermark":{ "type":"structure", "members":{ "PresetWatermarkId":{"shape":"PresetWatermarkId"}, "InputKey":{"shape":"WatermarkKey"}, "Encryption":{"shape":"Encryption"} } }, "JobWatermarks":{ "type":"list", "member":{"shape":"JobWatermark"} }, "Jobs":{ "type":"list", "member":{"shape":"Job"} }, "JpgOrPng":{ "type":"string", "pattern":"(^jpg$)|(^png$)" }, "Key":{ "type":"string", "max":255, "min":1 }, "KeyArn":{ "type":"string", "max":255, "min":0 }, "KeyIdGuid":{ "type":"string", "pattern":"(^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$)|(^[0-9A-Fa-f]{32}$)" }, "KeyStoragePolicy":{ "type":"string", "pattern":"(^NoStore$)|(^WithVariantPlaylists$)" }, "KeyframesMaxDist":{ "type":"string", "pattern":"^\\d{1,6}$" }, "LimitExceededException":{ "type":"structure", "members":{ }, "error":{"httpStatusCode":429}, "exception":true }, "ListJobsByPipelineRequest":{ "type":"structure", "required":["PipelineId"], "members":{ "PipelineId":{ "shape":"Id", "location":"uri", "locationName":"PipelineId" }, "Ascending":{ "shape":"Ascending", "location":"querystring", "locationName":"Ascending" }, "PageToken":{ "shape":"Id", "location":"querystring", "locationName":"PageToken" } } }, "ListJobsByPipelineResponse":{ "type":"structure", "members":{ "Jobs":{"shape":"Jobs"}, "NextPageToken":{"shape":"Id"} } }, "ListJobsByStatusRequest":{ "type":"structure", "required":["Status"], "members":{ "Status":{ "shape":"JobStatus", "location":"uri", "locationName":"Status" }, "Ascending":{ "shape":"Ascending", "location":"querystring", "locationName":"Ascending" }, "PageToken":{ "shape":"Id", "location":"querystring", "locationName":"PageToken" } } }, "ListJobsByStatusResponse":{ "type":"structure", "members":{ "Jobs":{"shape":"Jobs"}, "NextPageToken":{"shape":"Id"} } }, "ListPipelinesRequest":{ "type":"structure", "members":{ "Ascending":{ "shape":"Ascending", "location":"querystring", "locationName":"Ascending" }, "PageToken":{ "shape":"Id", "location":"querystring", "locationName":"PageToken" } } }, "ListPipelinesResponse":{ "type":"structure", "members":{ "Pipelines":{"shape":"Pipelines"}, "NextPageToken":{"shape":"Id"} } }, "ListPresetsRequest":{ "type":"structure", "members":{ "Ascending":{ "shape":"Ascending", "location":"querystring", "locationName":"Ascending" }, "PageToken":{ "shape":"Id", "location":"querystring", "locationName":"PageToken" } } }, "ListPresetsResponse":{ "type":"structure", "members":{ "Presets":{"shape":"Presets"}, "NextPageToken":{"shape":"Id"} } }, "LongKey":{ "type":"string", "max":1024, "min":1 }, "MaxFrameRate":{ "type":"string", "pattern":"(^10$)|(^15$)|(^23.97$)|(^24$)|(^25$)|(^29.97$)|(^30$)|(^50$)|(^60$)" }, "MergePolicy":{ "type":"string", "pattern":"(^Replace$)|(^Prepend$)|(^Append$)|(^Fallback$)" }, "Name":{ "type":"string", "max":40, "min":1 }, "NonEmptyBase64EncodedString":{ "type":"string", "pattern":"(^(?:[A-Za-z0-9\\+/]{4})*(?:[A-Za-z0-9\\+/]{2}==|[A-Za-z0-9\\+/]{3}=)?$)" }, "Notifications":{ "type":"structure", "members":{ "Progressing":{"shape":"SnsTopic"}, "Completed":{"shape":"SnsTopic"}, "Warning":{"shape":"SnsTopic"}, "Error":{"shape":"SnsTopic"} } }, "NullableInteger":{"type":"integer"}, "NullableLong":{"type":"long"}, "OneTo512String":{ "type":"string", "max":512, "min":1 }, "Opacity":{ "type":"string", "pattern":"^\\d{1,3}(\\.\\d{0,20})?$" }, "OutputKeys":{ "type":"list", "member":{"shape":"Key"}, "max":30 }, "PaddingPolicy":{ "type":"string", "pattern":"(^Pad$)|(^NoPad$)" }, "Permission":{ "type":"structure", "members":{ "GranteeType":{"shape":"GranteeType"}, "Grantee":{"shape":"Grantee"}, "Access":{"shape":"AccessControls"} } }, "Permissions":{ "type":"list", "member":{"shape":"Permission"}, "max":30 }, "Pipeline":{ "type":"structure", "members":{ "Id":{"shape":"Id"}, "Arn":{"shape":"String"}, "Name":{"shape":"Name"}, "Status":{"shape":"PipelineStatus"}, "InputBucket":{"shape":"BucketName"}, "OutputBucket":{"shape":"BucketName"}, "Role":{"shape":"Role"}, "AwsKmsKeyArn":{"shape":"KeyArn"}, "Notifications":{"shape":"Notifications"}, "ContentConfig":{"shape":"PipelineOutputConfig"}, "ThumbnailConfig":{"shape":"PipelineOutputConfig"} } }, "PipelineOutputConfig":{ "type":"structure", "members":{ "Bucket":{"shape":"BucketName"}, "StorageClass":{"shape":"StorageClass"}, "Permissions":{"shape":"Permissions"} } }, "PipelineStatus":{ "type":"string", "pattern":"(^Active$)|(^Paused$)" }, "Pipelines":{ "type":"list", "member":{"shape":"Pipeline"} }, "PixelsOrPercent":{ "type":"string", "pattern":"(^\\d{1,3}(\\.\\d{0,5})?%$)|(^\\d{1,4}?px$)" }, "PlayReadyDrm":{ "type":"structure", "members":{ "Format":{"shape":"PlayReadyDrmFormatString"}, "Key":{"shape":"NonEmptyBase64EncodedString"}, "KeyMd5":{"shape":"NonEmptyBase64EncodedString"}, "KeyId":{"shape":"KeyIdGuid"}, "InitializationVector":{"shape":"ZeroTo255String"}, "LicenseAcquisitionUrl":{"shape":"OneTo512String"} } }, "PlayReadyDrmFormatString":{ "type":"string", "pattern":"(^microsoft$)|(^discretix-3.0$)" }, "Playlist":{ "type":"structure", "members":{ "Name":{"shape":"Filename"}, "Format":{"shape":"PlaylistFormat"}, "OutputKeys":{"shape":"OutputKeys"}, "HlsContentProtection":{"shape":"HlsContentProtection"}, "PlayReadyDrm":{"shape":"PlayReadyDrm"}, "Status":{"shape":"JobStatus"}, "StatusDetail":{"shape":"Description"} } }, "PlaylistFormat":{ "type":"string", "pattern":"(^HLSv3$)|(^HLSv4$)|(^Smooth$)|(^MPEG-DASH$)" }, "Playlists":{ "type":"list", "member":{"shape":"Playlist"} }, "Preset":{ "type":"structure", "members":{ "Id":{"shape":"Id"}, "Arn":{"shape":"String"}, "Name":{"shape":"Name"}, "Description":{"shape":"Description"}, "Container":{"shape":"PresetContainer"}, "Audio":{"shape":"AudioParameters"}, "Video":{"shape":"VideoParameters"}, "Thumbnails":{"shape":"Thumbnails"}, "Type":{"shape":"PresetType"} } }, "PresetContainer":{ "type":"string", "pattern":"(^mp4$)|(^ts$)|(^webm$)|(^mp3$)|(^flac$)|(^oga$)|(^ogg$)|(^fmp4$)|(^mpg$)|(^flv$)|(^gif$)|(^mxf$)|(^wav$)" }, "PresetType":{ "type":"string", "pattern":"(^System$)|(^Custom$)" }, "PresetWatermark":{ "type":"structure", "members":{ "Id":{"shape":"PresetWatermarkId"}, "MaxWidth":{"shape":"PixelsOrPercent"}, "MaxHeight":{"shape":"PixelsOrPercent"}, "SizingPolicy":{"shape":"WatermarkSizingPolicy"}, "HorizontalAlign":{"shape":"HorizontalAlign"}, "HorizontalOffset":{"shape":"PixelsOrPercent"}, "VerticalAlign":{"shape":"VerticalAlign"}, "VerticalOffset":{"shape":"PixelsOrPercent"}, "Opacity":{"shape":"Opacity"}, "Target":{"shape":"Target"} } }, "PresetWatermarkId":{ "type":"string", "max":40, "min":1 }, "PresetWatermarks":{ "type":"list", "member":{"shape":"PresetWatermark"} }, "Presets":{ "type":"list", "member":{"shape":"Preset"} }, "ReadJobRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"Id", "location":"uri", "locationName":"Id" } } }, "ReadJobResponse":{ "type":"structure", "members":{ "Job":{"shape":"Job"} } }, "ReadPipelineRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"Id", "location":"uri", "locationName":"Id" } } }, "ReadPipelineResponse":{ "type":"structure", "members":{ "Pipeline":{"shape":"Pipeline"}, "Warnings":{"shape":"Warnings"} } }, "ReadPresetRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"Id", "location":"uri", "locationName":"Id" } } }, "ReadPresetResponse":{ "type":"structure", "members":{ "Preset":{"shape":"Preset"} } }, "Resolution":{ "type":"string", "pattern":"(^auto$)|(^\\d{1,5}x\\d{1,5}$)" }, "ResourceInUseException":{ "type":"structure", "members":{ }, "error":{"httpStatusCode":409}, "exception":true }, "ResourceNotFoundException":{ "type":"structure", "members":{ }, "error":{"httpStatusCode":404}, "exception":true }, "Role":{ "type":"string", "pattern":"^arn:aws:iam::\\w{12}:role/.+$" }, "Rotate":{ "type":"string", "pattern":"(^auto$)|(^0$)|(^90$)|(^180$)|(^270$)" }, "SizingPolicy":{ "type":"string", "pattern":"(^Fit$)|(^Fill$)|(^Stretch$)|(^Keep$)|(^ShrinkToFit$)|(^ShrinkToFill$)" }, "SnsTopic":{ "type":"string", "pattern":"(^$)|(^arn:aws:sns:.*:\\w{12}:.+$)" }, "SnsTopics":{ "type":"list", "member":{"shape":"SnsTopic"}, "max":30 }, "StorageClass":{ "type":"string", "pattern":"(^ReducedRedundancy$)|(^Standard$)" }, "String":{"type":"string"}, "Success":{ "type":"string", "pattern":"(^true$)|(^false$)" }, "Target":{ "type":"string", "pattern":"(^Content$)|(^Frame$)" }, "TestRoleRequest":{ "type":"structure", "required":[ "Role", "InputBucket", "OutputBucket", "Topics" ], "members":{ "Role":{"shape":"Role"}, "InputBucket":{"shape":"BucketName"}, "OutputBucket":{"shape":"BucketName"}, "Topics":{"shape":"SnsTopics"} } }, "TestRoleResponse":{ "type":"structure", "members":{ "Success":{"shape":"Success"}, "Messages":{"shape":"ExceptionMessages"} } }, "ThumbnailPattern":{ "type":"string", "pattern":"(^$)|(^.*\\{count\\}.*$)" }, "ThumbnailResolution":{ "type":"string", "pattern":"^\\d{1,5}x\\d{1,5}$" }, "Thumbnails":{ "type":"structure", "members":{ "Format":{"shape":"JpgOrPng"}, "Interval":{"shape":"Digits"}, "Resolution":{"shape":"ThumbnailResolution"}, "AspectRatio":{"shape":"AspectRatio"}, "MaxWidth":{"shape":"DigitsOrAuto"}, "MaxHeight":{"shape":"DigitsOrAuto"}, "SizingPolicy":{"shape":"SizingPolicy"}, "PaddingPolicy":{"shape":"PaddingPolicy"} } }, "Time":{ "type":"string", "pattern":"(^\\d{1,5}(\\.\\d{0,3})?$)|(^([0-1]?[0-9]:|2[0-3]:)?([0-5]?[0-9]:)?[0-5]?[0-9](\\.\\d{0,3})?$)" }, "TimeOffset":{ "type":"string", "pattern":"(^[+-]?\\d{1,5}(\\.\\d{0,3})?$)|(^[+-]?([0-1]?[0-9]:|2[0-3]:)?([0-5]?[0-9]:)?[0-5]?[0-9](\\.\\d{0,3})?$)" }, "TimeSpan":{ "type":"structure", "members":{ "StartTime":{"shape":"Time"}, "Duration":{"shape":"Time"} } }, "Timing":{ "type":"structure", "members":{ "SubmitTimeMillis":{"shape":"NullableLong"}, "StartTimeMillis":{"shape":"NullableLong"}, "FinishTimeMillis":{"shape":"NullableLong"} } }, "UpdatePipelineNotificationsRequest":{ "type":"structure", "required":[ "Id", "Notifications" ], "members":{ "Id":{ "shape":"Id", "location":"uri", "locationName":"Id" }, "Notifications":{"shape":"Notifications"} } }, "UpdatePipelineNotificationsResponse":{ "type":"structure", "members":{ "Pipeline":{"shape":"Pipeline"} } }, "UpdatePipelineRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"Id", "location":"uri", "locationName":"Id" }, "Name":{"shape":"Name"}, "InputBucket":{"shape":"BucketName"}, "Role":{"shape":"Role"}, "AwsKmsKeyArn":{"shape":"KeyArn"}, "Notifications":{"shape":"Notifications"}, "ContentConfig":{"shape":"PipelineOutputConfig"}, "ThumbnailConfig":{"shape":"PipelineOutputConfig"} } }, "UpdatePipelineResponse":{ "type":"structure", "members":{ "Pipeline":{"shape":"Pipeline"}, "Warnings":{"shape":"Warnings"} } }, "UpdatePipelineStatusRequest":{ "type":"structure", "required":[ "Id", "Status" ], "members":{ "Id":{ "shape":"Id", "location":"uri", "locationName":"Id" }, "Status":{"shape":"PipelineStatus"} } }, "UpdatePipelineStatusResponse":{ "type":"structure", "members":{ "Pipeline":{"shape":"Pipeline"} } }, "UserMetadata":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"String"} }, "ValidationException":{ "type":"structure", "members":{ }, "error":{"httpStatusCode":400}, "exception":true }, "VerticalAlign":{ "type":"string", "pattern":"(^Top$)|(^Bottom$)|(^Center$)" }, "VideoBitRate":{ "type":"string", "pattern":"(^\\d{2,5}$)|(^auto$)" }, "VideoCodec":{ "type":"string", "pattern":"(^H\\.264$)|(^vp8$)|(^vp9$)|(^mpeg2$)|(^gif$)" }, "VideoParameters":{ "type":"structure", "members":{ "Codec":{"shape":"VideoCodec"}, "CodecOptions":{"shape":"CodecOptions"}, "KeyframesMaxDist":{"shape":"KeyframesMaxDist"}, "FixedGOP":{"shape":"FixedGOP"}, "BitRate":{"shape":"VideoBitRate"}, "FrameRate":{"shape":"FrameRate"}, "MaxFrameRate":{"shape":"MaxFrameRate"}, "Resolution":{"shape":"Resolution"}, "AspectRatio":{"shape":"AspectRatio"}, "MaxWidth":{"shape":"DigitsOrAuto"}, "MaxHeight":{"shape":"DigitsOrAuto"}, "DisplayAspectRatio":{"shape":"AspectRatio"}, "SizingPolicy":{"shape":"SizingPolicy"}, "PaddingPolicy":{"shape":"PaddingPolicy"}, "Watermarks":{"shape":"PresetWatermarks"} } }, "Warning":{ "type":"structure", "members":{ "Code":{"shape":"String"}, "Message":{"shape":"String"} } }, "Warnings":{ "type":"list", "member":{"shape":"Warning"} }, "WatermarkKey":{ "type":"string", "max":1024, "min":1, "pattern":"(^.{1,1020}.jpg$)|(^.{1,1019}.jpeg$)|(^.{1,1020}.png$)" }, "WatermarkSizingPolicy":{ "type":"string", "pattern":"(^Fit$)|(^Stretch$)|(^ShrinkToFit$)" }, "ZeroTo255String":{ "type":"string", "max":255, "min":0 }, "ZeroTo512String":{ "type":"string", "max":512, "min":0 } } } aws-sdk-go-1.4.22/models/apis/elastictranscoder/2012-09-25/docs-2.json000066400000000000000000004722531300374646400245500ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS Elastic Transcoder Service

        The AWS Elastic Transcoder Service.

        ", "operations": { "CancelJob": "

        The CancelJob operation cancels an unfinished job.

        You can only cancel a job that has a status of Submitted. To prevent a pipeline from starting to process a job while you're getting the job identifier, use UpdatePipelineStatus to temporarily pause the pipeline.", "CreateJob": "

        When you create a job, Elastic Transcoder returns JSON data that includes the values that you specified plus information about the job that is created.

        If you have specified more than one output for your jobs (for example, one output for the Kindle Fire and another output for the Apple iPhone 4s), you currently must use the Elastic Transcoder API to list the jobs (as opposed to the AWS Console).

        ", "CreatePipeline": "

        The CreatePipeline operation creates a pipeline with settings that you specify.

        ", "CreatePreset": "

        The CreatePreset operation creates a preset with settings that you specify.

        Elastic Transcoder checks the CreatePreset settings to ensure that they meet Elastic Transcoder requirements and to determine whether they comply with H.264 standards. If your settings are not valid for Elastic Transcoder, Elastic Transcoder returns an HTTP 400 response (ValidationException) and does not create the preset. If the settings are valid for Elastic Transcoder but aren't strictly compliant with the H.264 standard, Elastic Transcoder creates the preset and returns a warning message in the response. This helps you determine whether your settings comply with the H.264 standard while giving you greater flexibility with respect to the video that Elastic Transcoder produces.

        Elastic Transcoder uses the H.264 video-compression format. For more information, see the International Telecommunication Union publication Recommendation ITU-T H.264: Advanced video coding for generic audiovisual services.

        ", "DeletePipeline": "

        The DeletePipeline operation removes a pipeline.

        You can only delete a pipeline that has never been used or that is not currently in use (doesn't contain any active jobs). If the pipeline is currently in use, DeletePipeline returns an error.

        ", "DeletePreset": "

        The DeletePreset operation removes a preset that you've added in an AWS region.

        You can't delete the default presets that are included with Elastic Transcoder.

        ", "ListJobsByPipeline": "

        The ListJobsByPipeline operation gets a list of the jobs currently in a pipeline.

        Elastic Transcoder returns all of the jobs currently in the specified pipeline. The response body contains one element for each job that satisfies the search criteria.

        ", "ListJobsByStatus": "

        The ListJobsByStatus operation gets a list of jobs that have a specified status. The response body contains one element for each job that satisfies the search criteria.

        ", "ListPipelines": "

        The ListPipelines operation gets a list of the pipelines associated with the current AWS account.

        ", "ListPresets": "

        The ListPresets operation gets a list of the default presets included with Elastic Transcoder and the presets that you've added in an AWS region.

        ", "ReadJob": "

        The ReadJob operation returns detailed information about a job.

        ", "ReadPipeline": "

        The ReadPipeline operation gets detailed information about a pipeline.

        ", "ReadPreset": "

        The ReadPreset operation gets detailed information about a preset.

        ", "TestRole": "

        The TestRole operation tests the IAM role used to create the pipeline.

        The TestRole action lets you determine whether the IAM role you are using has sufficient permissions to let Elastic Transcoder perform tasks associated with the transcoding process. The action attempts to assume the specified IAM role, checks read access to the input and output buckets, and tries to send a test notification to Amazon SNS topics that you specify.

        ", "UpdatePipeline": "

        Use the UpdatePipeline operation to update settings for a pipeline. When you change pipeline settings, your changes take effect immediately. Jobs that you have already submitted and that Elastic Transcoder has not started to process are affected in addition to jobs that you submit after you change settings.

        ", "UpdatePipelineNotifications": "

        With the UpdatePipelineNotifications operation, you can update Amazon Simple Notification Service (Amazon SNS) notifications for a pipeline.

        When you update notifications for a pipeline, Elastic Transcoder returns the values that you specified in the request.

        ", "UpdatePipelineStatus": "

        The UpdatePipelineStatus operation pauses or reactivates a pipeline, so that the pipeline stops or restarts the processing of jobs.

        Changing the pipeline status is useful if you want to cancel one or more jobs. You can't cancel jobs after Elastic Transcoder has started processing them; if you pause the pipeline to which you submitted the jobs, you have more time to get the job IDs for the jobs that you want to cancel, and to send a CancelJob request.

        " }, "shapes": { "AccessControl": { "base": null, "refs": { "AccessControls$member": null } }, "AccessControls": { "base": null, "refs": { "Permission$Access": "

        The permission that you want to give to the AWS user that is listed in Grantee. Valid values include:

        • READ: The grantee can read the thumbnails and metadata for thumbnails that Elastic Transcoder adds to the Amazon S3 bucket.
        • READ_ACP: The grantee can read the object ACL for thumbnails that Elastic Transcoder adds to the Amazon S3 bucket.
        • WRITE_ACP: The grantee can write the ACL for the thumbnails that Elastic Transcoder adds to the Amazon S3 bucket.
        • FULL_CONTROL: The grantee has READ, READ_ACP, and WRITE_ACP permissions for the thumbnails that Elastic Transcoder adds to the Amazon S3 bucket.

        " } }, "AccessDeniedException": { "base": "

        General authentication failure. The request was not signed correctly.

        ", "refs": { } }, "Artwork": { "base": "

        The file to be used as album art. There can be multiple artworks associated with an audio file, to a maximum of 20.

        To remove artwork or leave the artwork empty, you can either set Artwork to null, or set the Merge Policy to \"Replace\" and use an empty Artwork array.

        To pass through existing artwork unchanged, set the Merge Policy to \"Prepend\", \"Append\", or \"Fallback\", and use an empty Artwork array.

        ", "refs": { "Artworks$member": null } }, "Artworks": { "base": null, "refs": { "JobAlbumArt$Artwork": "

        The file to be used as album art. There can be multiple artworks associated with an audio file, to a maximum of 20. Valid formats are .jpg and .png

        " } }, "Ascending": { "base": null, "refs": { "ListJobsByPipelineRequest$Ascending": "

        To list jobs in chronological order by the date and time that they were submitted, enter true. To list jobs in reverse chronological order, enter false.

        ", "ListJobsByStatusRequest$Ascending": "

        To list jobs in chronological order by the date and time that they were submitted, enter true. To list jobs in reverse chronological order, enter false.

        ", "ListPipelinesRequest$Ascending": "

        To list pipelines in chronological order by the date and time that they were created, enter true. To list pipelines in reverse chronological order, enter false.

        ", "ListPresetsRequest$Ascending": "

        To list presets in chronological order by the date and time that they were created, enter true. To list presets in reverse chronological order, enter false.

        " } }, "AspectRatio": { "base": null, "refs": { "JobInput$AspectRatio": "

        The aspect ratio of the input file. If you want Elastic Transcoder to automatically detect the aspect ratio of the input file, specify auto. If you want to specify the aspect ratio for the output file, enter one of the following values:

        1:1, 4:3, 3:2, 16:9

        If you specify a value other than auto, Elastic Transcoder disables automatic detection of the aspect ratio.

        ", "Thumbnails$AspectRatio": "

        To better control resolution and aspect ratio of thumbnails, we recommend that you use the values MaxWidth, MaxHeight, SizingPolicy, and PaddingPolicy instead of Resolution and AspectRatio. The two groups of settings are mutually exclusive. Do not use them together.

        The aspect ratio of thumbnails. Valid values include:

        auto, 1:1, 4:3, 3:2, 16:9

        If you specify auto, Elastic Transcoder tries to preserve the aspect ratio of the video in the output file.

        ", "VideoParameters$AspectRatio": "

        To better control resolution and aspect ratio of output videos, we recommend that you use the values MaxWidth, MaxHeight, SizingPolicy, PaddingPolicy, and DisplayAspectRatio instead of Resolution and AspectRatio. The two groups of settings are mutually exclusive. Do not use them together.

        The display aspect ratio of the video in the output file. Valid values include:

        auto, 1:1, 4:3, 3:2, 16:9

        If you specify auto, Elastic Transcoder tries to preserve the aspect ratio of the input file.

        If you specify an aspect ratio for the output file that differs from aspect ratio of the input file, Elastic Transcoder adds pillarboxing (black bars on the sides) or letterboxing (black bars on the top and bottom) to maintain the aspect ratio of the active region of the video.

        ", "VideoParameters$DisplayAspectRatio": "

        The value that Elastic Transcoder adds to the metadata in the output file.

        " } }, "AudioBitDepth": { "base": null, "refs": { "AudioCodecOptions$BitDepth": "

        You can only choose an audio bit depth when you specify flac or pcm for the value of Audio:Codec.

        The bit depth of a sample is how many bits of information are included in the audio samples. The higher the bit depth, the better the audio, but the larger the file.

        Valid values are 16 and 24.

        The most common bit depth is 24.

        " } }, "AudioBitOrder": { "base": null, "refs": { "AudioCodecOptions$BitOrder": "

        You can only choose an audio bit order when you specify pcm for the value of Audio:Codec.

        The order the bits of a PCM sample are stored in.

        The supported value is LittleEndian.

        " } }, "AudioBitRate": { "base": null, "refs": { "AudioParameters$BitRate": "

        The bit rate of the audio stream in the output file, in kilobits/second. Enter an integer between 64 and 320, inclusive.

        " } }, "AudioChannels": { "base": null, "refs": { "AudioParameters$Channels": "

        The number of audio channels in the output file. The following values are valid:

        auto, 0, 1, 2

        One channel carries the information played by a single speaker. For example, a stereo track with two channels sends one channel to the left speaker, and the other channel to the right speaker. The output channels are organized into tracks. If you want Elastic Transcoder to automatically detect the number of audio channels in the input file and use that value for the output file, select auto.

        The output of a specific channel value and inputs are as follows:

        • auto channel specified, with any input: Pass through up to eight input channels.
        • 0 channels specified, with any input: Audio omitted from the output.
        • 1 channel specified, with at least one input channel: Mono sound.
        • 2 channels specified, with any input: Two identical mono channels or stereo. For more information about tracks, see Audio:AudioPackingMode.

        For more information about how Elastic Transcoder organizes channels and tracks, see Audio:AudioPackingMode.

        " } }, "AudioCodec": { "base": null, "refs": { "AudioParameters$Codec": "

        The audio codec for the output file. Valid values include aac, flac, mp2, mp3, pcm, and vorbis.

        " } }, "AudioCodecOptions": { "base": "

        Options associated with your audio codec.

        ", "refs": { "AudioParameters$CodecOptions": "

        If you specified AAC for Audio:Codec, this is the AAC compression profile to use. Valid values include:

        auto, AAC-LC, HE-AAC, HE-AACv2

        If you specify auto, Elastic Transcoder chooses a profile based on the bit rate of the output file.

        " } }, "AudioCodecProfile": { "base": null, "refs": { "AudioCodecOptions$Profile": "

        You can only choose an audio profile when you specify AAC for the value of Audio:Codec.

        Specify the AAC profile for the output file. Elastic Transcoder supports the following profiles:

        • auto: If you specify auto, Elastic Transcoder will select the profile based on the bit rate selected for the output file.
        • AAC-LC: The most common AAC profile. Use for bit rates larger than 64 kbps.
        • HE-AAC: Not supported on some older players and devices. Use for bit rates between 40 and 80 kbps.
        • HE-AACv2: Not supported on some players and devices. Use for bit rates less than 48 kbps.

        All outputs in a Smooth playlist must have the same value for Profile.

        If you created any presets before AAC profiles were added, Elastic Transcoder automatically updated your presets to use AAC-LC. You can change the value as required.

        " } }, "AudioPackingMode": { "base": null, "refs": { "AudioParameters$AudioPackingMode": "

        The method of organizing audio channels and tracks. Use Audio:Channels to specify the number of channels in your output, and Audio:AudioPackingMode to specify the number of tracks and their relation to the channels. If you do not specify an Audio:AudioPackingMode, Elastic Transcoder uses SingleTrack.

        The following values are valid:

        SingleTrack, OneChannelPerTrack, and OneChannelPerTrackWithMosTo8Tracks

        When you specify SingleTrack, Elastic Transcoder creates a single track for your output. The track can have up to eight channels. Use SingleTrack for all non-mxf containers.

        The outputs of SingleTrack for a specific channel value and inputs are as follows:

        • 0 channels with any input: Audio omitted from the output
        • 1, 2, or auto channels with no audio input: Audio omitted from the output
        • 1 channel with any input with audio: One track with one channel, downmixed if necessary
        • 2 channels with one track with one channel: One track with two identical channels
        • 2 or auto channels with two tracks with one channel each: One track with two channels
        • 2 or auto channels with one track with two channels: One track with two channels
        • 2 channels with one track with multiple channels: One track with two channels
        • auto channels with one track with one channel: One track with one channel
        • auto channels with one track with multiple channels: One track with multiple channels

        When you specify OneChannelPerTrack, Elastic Transcoder creates a new track for every channel in your output. Your output can have up to eight single-channel tracks.

        The outputs of OneChannelPerTrack for a specific channel value and inputs are as follows:

        • 0 channels with any input: Audio omitted from the output
        • 1, 2, or auto channels with no audio input: Audio omitted from the output
        • 1 channel with any input with audio: One track with one channel, downmixed if necessary
        • 2 channels with one track with one channel: Two tracks with one identical channel each
        • 2 or auto channels with two tracks with one channel each: Two tracks with one channel each
        • 2 or auto channels with one track with two channels: Two tracks with one channel each
        • 2 channels with one track with multiple channels: Two tracks with one channel each
        • auto channels with one track with one channel: One track with one channel
        • auto channels with one track with multiple channels: Up to eight tracks with one channel each

        When you specify OneChannelPerTrackWithMosTo8Tracks, Elastic Transcoder creates eight single-channel tracks for your output. All tracks that do not contain audio data from an input channel are MOS, or Mit Out Sound, tracks.

        The outputs of OneChannelPerTrackWithMosTo8Tracks for a specific channel value and inputs are as follows:

        • 0 channels with any input: Audio omitted from the output
        • 1, 2, or auto channels with no audio input: Audio omitted from the output
        • 1 channel with any input with audio: One track with one channel, downmixed if necessary, plus six MOS tracks
        • 2 channels with one track with one channel: Two tracks with one identical channel each, plus six MOS tracks
        • 2 or auto channels with two tracks with one channel each: Two tracks with one channel each, plus six MOS tracks
        • 2 or auto channels with one track with two channels: Two tracks with one channel each, plus six MOS tracks
        • 2 channels with one track with multiple channels: Two tracks with one channel each, plus six MOS tracks
        • auto channels with one track with one channel: One track with one channel, plus seven MOS tracks
        • auto channels with one track with multiple channels: Up to eight tracks with one channel each, plus MOS tracks until there are eight tracks in all
        " } }, "AudioParameters": { "base": "

        Parameters required for transcoding audio.

        ", "refs": { "CreatePresetRequest$Audio": "

        A section of the request body that specifies the audio parameters.

        ", "Preset$Audio": "

        A section of the response body that provides information about the audio preset values.

        " } }, "AudioSampleRate": { "base": null, "refs": { "AudioParameters$SampleRate": "

        The sample rate of the audio stream in the output file, in Hertz. Valid values include:

        auto, 22050, 32000, 44100, 48000, 96000

        If you specify auto, Elastic Transcoder automatically detects the sample rate.

        " } }, "AudioSigned": { "base": null, "refs": { "AudioCodecOptions$Signed": "

        You can only choose whether an audio sample is signed when you specify pcm for the value of Audio:Codec.

        Whether audio samples are represented with negative and positive numbers (signed) or only positive numbers (unsigned).

        The supported value is Signed.

        " } }, "Base64EncodedString": { "base": null, "refs": { "Encryption$Key": "

        The data encryption key that you want Elastic Transcoder to use to encrypt your output file, or that was used to encrypt your input file. The key must be base64-encoded and it must be one of the following bit lengths before being base64-encoded:

        128, 192, or 256.

        The key must also be encrypted by using the Amazon Key Management Service.

        ", "Encryption$KeyMd5": "

        The MD5 digest of the key that you used to encrypt your input file, or that you want Elastic Transcoder to use to encrypt your output file. Elastic Transcoder uses the key digest as a checksum to make sure your key was not corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes long before being base64-encoded.

        ", "HlsContentProtection$Key": "

        If you want Elastic Transcoder to generate a key for you, leave this field blank.

        If you choose to supply your own key, you must encrypt the key by using AWS KMS. The key must be base64-encoded, and it must be one of the following bit lengths before being base64-encoded:

        128, 192, or 256.

        ", "HlsContentProtection$KeyMd5": "

        If Elastic Transcoder is generating your key for you, you must leave this field blank.

        The MD5 digest of the key that you want Elastic Transcoder to use to encrypt your output file, and that you want Elastic Transcoder to use as a checksum to make sure your key was not corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes before being base64- encoded.

        " } }, "BucketName": { "base": null, "refs": { "CreatePipelineRequest$InputBucket": "

        The Amazon S3 bucket in which you saved the media files that you want to transcode.

        ", "CreatePipelineRequest$OutputBucket": "

        The Amazon S3 bucket in which you want Elastic Transcoder to save the transcoded files. (Use this, or use ContentConfig:Bucket plus ThumbnailConfig:Bucket.)

        Specify this value when all of the following are true:

        • You want to save transcoded files, thumbnails (if any), and playlists (if any) together in one bucket.
        • You do not want to specify the users or groups who have access to the transcoded files, thumbnails, and playlists.
        • You do not want to specify the permissions that Elastic Transcoder grants to the files. When Elastic Transcoder saves files in OutputBucket, it grants full control over the files only to the AWS account that owns the role that is specified by Role.
        • You want to associate the transcoded files and thumbnails with the Amazon S3 Standard storage class.

        If you want to save transcoded files and playlists in one bucket and thumbnails in another bucket, specify which users can access the transcoded files or the permissions the users have, or change the Amazon S3 storage class, omit OutputBucket and specify values for ContentConfig and ThumbnailConfig instead.

        ", "Pipeline$InputBucket": "

        The Amazon S3 bucket from which Elastic Transcoder gets media files for transcoding and the graphics files, if any, that you want to use for watermarks.

        ", "Pipeline$OutputBucket": "

        The Amazon S3 bucket in which you want Elastic Transcoder to save transcoded files, thumbnails, and playlists. Either you specify this value, or you specify both ContentConfig and ThumbnailConfig.

        ", "PipelineOutputConfig$Bucket": "

        The Amazon S3 bucket in which you want Elastic Transcoder to save the transcoded files. Specify this value when all of the following are true:

        • You want to save transcoded files, thumbnails (if any), and playlists (if any) together in one bucket.
        • You do not want to specify the users or groups who have access to the transcoded files, thumbnails, and playlists.
        • You do not want to specify the permissions that Elastic Transcoder grants to the files.
        • You want to associate the transcoded files and thumbnails with the Amazon S3 Standard storage class.
        If you want to save transcoded files and playlists in one bucket and thumbnails in another bucket, specify which users can access the transcoded files or the permissions the users have, or change the Amazon S3 storage class, omit OutputBucket and specify values for ContentConfig and ThumbnailConfig instead.

        ", "TestRoleRequest$InputBucket": "

        The Amazon S3 bucket that contains media files to be transcoded. The action attempts to read from this bucket.

        ", "TestRoleRequest$OutputBucket": "

        The Amazon S3 bucket that Elastic Transcoder will write transcoded media files to. The action attempts to read from this bucket.

        ", "UpdatePipelineRequest$InputBucket": "

        The Amazon S3 bucket in which you saved the media files that you want to transcode and the graphics that you want to use as watermarks.

        " } }, "CancelJobRequest": { "base": "

        The CancelJobRequest structure.

        ", "refs": { } }, "CancelJobResponse": { "base": "

        The response body contains a JSON object. If the job is successfully canceled, the value of Success is true.

        ", "refs": { } }, "CaptionFormat": { "base": "

        The file format of the output captions. If you leave this value blank, Elastic Transcoder returns an error.

        ", "refs": { "CaptionFormats$member": null } }, "CaptionFormatFormat": { "base": null, "refs": { "CaptionFormat$Format": "

        The format you specify determines whether Elastic Transcoder generates an embedded or sidecar caption for this output.

        • Valid Embedded Caption Formats:

          • for FLAC: None

          • For MP3: None

          • For MP4: mov-text

          • For MPEG-TS: None

          • For ogg: None

          • For webm: None

        • Valid Sidecar Caption Formats: Elastic Transcoder supports dfxp (first div element only), scc, srt, and webvtt. If you want ttml or smpte-tt compatible captions, specify dfxp as your output format.

          • For FMP4: dfxp

          • Non-FMP4 outputs: All sidecar types

          fmp4 captions have an extension of .ismt

        " } }, "CaptionFormatPattern": { "base": null, "refs": { "CaptionFormat$Pattern": "

        The prefix for caption filenames, in the form description-{language}, where:

        • description is a description of the video.
        • {language} is a literal value that Elastic Transcoder replaces with the two- or three-letter code for the language of the caption in the output file names.

        If you don't include {language} in the file name pattern, Elastic Transcoder automatically appends \"{language}\" to the value that you specify for the description. In addition, Elastic Transcoder automatically appends the count to the end of the segment files.

        For example, suppose you're transcoding into srt format. When you enter \"Sydney-{language}-sunrise\", and the language of the captions is English (en), the name of the first caption file will be Sydney-en-sunrise00000.srt.

        " } }, "CaptionFormats": { "base": null, "refs": { "Captions$CaptionFormats": "

        The array of file formats for the output captions. If you leave this value blank, Elastic Transcoder returns an error.

        " } }, "CaptionMergePolicy": { "base": null, "refs": { "Captions$MergePolicy": "

        A policy that determines how Elastic Transcoder handles the existence of multiple captions.

        • MergeOverride: Elastic Transcoder transcodes both embedded and sidecar captions into outputs. If captions for a language are embedded in the input file and also appear in a sidecar file, Elastic Transcoder uses the sidecar captions and ignores the embedded captions for that language.

        • MergeRetain: Elastic Transcoder transcodes both embedded and sidecar captions into outputs. If captions for a language are embedded in the input file and also appear in a sidecar file, Elastic Transcoder uses the embedded captions and ignores the sidecar captions for that language. If CaptionSources is empty, Elastic Transcoder omits all sidecar captions from the output files.

        • Override: Elastic Transcoder transcodes only the sidecar captions that you specify in CaptionSources.

        MergePolicy cannot be null.

        " } }, "CaptionSource": { "base": "

        A source file for the input sidecar captions used during the transcoding process.

        ", "refs": { "CaptionSources$member": null } }, "CaptionSources": { "base": null, "refs": { "Captions$CaptionSources": "

        Source files for the input sidecar captions used during the transcoding process. To omit all sidecar captions, leave CaptionSources blank.

        " } }, "Captions": { "base": "

        The captions to be created, if any.

        ", "refs": { "CreateJobOutput$Captions": "

        You can configure Elastic Transcoder to transcode captions, or subtitles, from one format to another. All captions must be in UTF-8. Elastic Transcoder supports two types of captions:

        • Embedded: Embedded captions are included in the same file as the audio and video. Elastic Transcoder supports only one embedded caption per language, to a maximum of 300 embedded captions per file.

          Valid input values include: CEA-608 (EIA-608, first non-empty channel only), CEA-708 (EIA-708, first non-empty channel only), and mov-text

          Valid outputs include: mov-text

          Elastic Transcoder supports a maximum of one embedded format per output.

        • Sidecar: Sidecar captions are kept in a separate metadata file from the audio and video data. Sidecar captions require a player that is capable of understanding the relationship between the video file and the sidecar file. Elastic Transcoder supports only one sidecar caption per language, to a maximum of 20 sidecar captions per file.

          Valid input values include: dfxp (first div element only), ebu-tt, scc, smpt, srt, ttml (first div element only), and webvtt

          Valid outputs include: dfxp (first div element only), scc, srt, and webvtt.

        If you want ttml or smpte-tt compatible captions, specify dfxp as your output format.

        Elastic Transcoder does not support OCR (Optical Character Recognition), does not accept pictures as a valid input for captions, and is not available for audio-only transcoding. Elastic Transcoder does not preserve text formatting (for example, italics) during the transcoding process.

        To remove captions or leave the captions empty, set Captions to null. To pass through existing captions unchanged, set the MergePolicy to MergeRetain, and pass in a null CaptionSources array.

        For more information on embedded files, see the Subtitles Wikipedia page.

        For more information on sidecar files, see the Extensible Metadata Platform and Sidecar file Wikipedia pages.

        ", "JobOutput$Captions": "

        You can configure Elastic Transcoder to transcode captions, or subtitles, from one format to another. All captions must be in UTF-8. Elastic Transcoder supports two types of captions:

        • Embedded: Embedded captions are included in the same file as the audio and video. Elastic Transcoder supports only one embedded caption per language, to a maximum of 300 embedded captions per file.

          Valid input values include: CEA-608 (EIA-608, first non-empty channel only), CEA-708 (EIA-708, first non-empty channel only), and mov-text

          Valid outputs include: mov-text

          Elastic Transcoder supports a maximum of one embedded format per output.

        • Sidecar: Sidecar captions are kept in a separate metadata file from the audio and video data. Sidecar captions require a player that is capable of understanding the relationship between the video file and the sidecar file. Elastic Transcoder supports only one sidecar caption per language, to a maximum of 20 sidecar captions per file.

          Valid input values include: dfxp (first div element only), ebu-tt, scc, smpt, srt, ttml (first div element only), and webvtt

          Valid outputs include: dfxp (first div element only), scc, srt, and webvtt.

        If you want ttml or smpte-tt compatible captions, specify dfxp as your output format.

        Elastic Transcoder does not support OCR (Optical Character Recognition), does not accept pictures as a valid input for captions, and is not available for audio-only transcoding. Elastic Transcoder does not preserve text formatting (for example, italics) during the transcoding process.

        To remove captions or leave the captions empty, set Captions to null. To pass through existing captions unchanged, set the MergePolicy to MergeRetain, and pass in a null CaptionSources array.

        For more information on embedded files, see the Subtitles Wikipedia page.

        For more information on sidecar files, see the Extensible Metadata Platform and Sidecar file Wikipedia pages.

        " } }, "Clip": { "base": "

        Settings for one clip in a composition. All jobs in a playlist must have the same clip settings.

        ", "refs": { "Composition$member": null } }, "CodecOption": { "base": null, "refs": { "CodecOptions$key": null, "CodecOptions$value": null } }, "CodecOptions": { "base": null, "refs": { "VideoParameters$CodecOptions": "

        Profile (H.264/VP8 Only)

        The H.264 profile that you want to use for the output file. Elastic Transcoder supports the following profiles:

        • baseline: The profile most commonly used for videoconferencing and for mobile applications.
        • main: The profile used for standard-definition digital TV broadcasts.
        • high: The profile used for high-definition digital TV broadcasts and for Blu-ray discs.

        Level (H.264 Only)

        The H.264 level that you want to use for the output file. Elastic Transcoder supports the following levels:

        1, 1b, 1.1, 1.2, 1.3, 2, 2.1, 2.2, 3, 3.1, 3.2, 4, 4.1

        MaxReferenceFrames (H.264 Only)

        Applicable only when the value of Video:Codec is H.264. The maximum number of previously decoded frames to use as a reference for decoding future frames. Valid values are integers 0 through 16, but we recommend that you not use a value greater than the following:

        Min(Floor(Maximum decoded picture buffer in macroblocks * 256 / (Width in pixels * Height in pixels)), 16)

        where Width in pixels and Height in pixels represent either MaxWidth and MaxHeight, or Resolution. Maximum decoded picture buffer in macroblocks depends on the value of the Level object. See the list below. (A macroblock is a block of pixels measuring 16x16.)

        • 1 - 396
        • 1b - 396
        • 1.1 - 900
        • 1.2 - 2376
        • 1.3 - 2376
        • 2 - 2376
        • 2.1 - 4752
        • 2.2 - 8100
        • 3 - 8100
        • 3.1 - 18000
        • 3.2 - 20480
        • 4 - 32768
        • 4.1 - 32768

        MaxBitRate (Optional, H.264/MPEG2/VP8 only)

        The maximum number of bits per second in a video buffer; the size of the buffer is specified by BufferSize. Specify a value between 16 and 62,500. You can reduce the bandwidth required to stream a video by reducing the maximum bit rate, but this also reduces the quality of the video.

        BufferSize (Optional, H.264/MPEG2/VP8 only)

        The maximum number of bits in any x seconds of the output video. This window is commonly 10 seconds, the standard segment duration when you're using FMP4 or MPEG-TS for the container type of the output video. Specify an integer greater than 0. If you specify MaxBitRate and omit BufferSize, Elastic Transcoder sets BufferSize to 10 times the value of MaxBitRate.

        InterlacedMode (Optional, H.264/MPEG2 Only)

        The interlace mode for the output video.

        Interlaced video is used to double the perceived frame rate for a video by interlacing two fields (one field on every other line, the other field on the other lines) so that the human eye registers multiple pictures per frame. Interlacing reduces the bandwidth required for transmitting a video, but can result in blurred images and flickering.

        Valid values include Progressive (no interlacing, top to bottom), TopFirst (top field first), BottomFirst (bottom field first), and Auto.

        If InterlaceMode is not specified, Elastic Transcoder uses Progressive for the output. If Auto is specified, Elastic Transcoder interlaces the output.

        ColorSpaceConversionMode (Optional, H.264/MPEG2 Only)

        The color space conversion Elastic Transcoder applies to the output video. Color spaces are the algorithms used by the computer to store information about how to render color. Bt.601 is the standard for standard definition video, while Bt.709 is the standard for high definition video.

        Valid values include None, Bt709toBt601, Bt601toBt709, and Auto.

        If you chose Auto for ColorSpaceConversionMode and your output is interlaced, your frame rate is one of 23.97, 24, 25, 29.97, 50, or 60, your SegmentDuration is null, and you are using one of the resolution changes from the list below, Elastic Transcoder applies the following color space conversions:

        • Standard to HD, 720x480 to 1920x1080 - Elastic Transcoder applies Bt601ToBt709
        • Standard to HD, 720x576 to 1920x1080 - Elastic Transcoder applies Bt601ToBt709
        • HD to Standard, 1920x1080 to 720x480 - Elastic Transcoder applies Bt709ToBt601
        • HD to Standard, 1920x1080 to 720x576 - Elastic Transcoder applies Bt709ToBt601
        Elastic Transcoder may change the behavior of the ColorspaceConversionMode Auto mode in the future. All outputs in a playlist must use the same ColorSpaceConversionMode.

        If you do not specify a ColorSpaceConversionMode, Elastic Transcoder does not change the color space of a file. If you are unsure what ColorSpaceConversionMode was applied to your output file, you can check the AppliedColorSpaceConversion parameter included in your job response. If your job does not have an AppliedColorSpaceConversion in its response, no ColorSpaceConversionMode was applied.

        ChromaSubsampling

        The sampling pattern for the chroma (color) channels of the output video. Valid values include yuv420p and yuv422p.

        yuv420p samples the chroma information of every other horizontal and every other vertical line, yuv422p samples the color information of every horizontal line and every other vertical line.

        LoopCount (Gif Only)

        The number of times you want the output gif to loop. Valid values include Infinite and integers between 0 and 100, inclusive.

        " } }, "Composition": { "base": null, "refs": { "CreateJobOutput$Composition": "

        You can create an output file that contains an excerpt from the input file. This excerpt, called a clip, can come from the beginning, middle, or end of the file. The Composition object contains settings for the clips that make up an output file. For the current release, you can only specify settings for a single clip per output file. The Composition object cannot be null.

        ", "JobOutput$Composition": "

        You can create an output file that contains an excerpt from the input file. This excerpt, called a clip, can come from the beginning, middle, or end of the file. The Composition object contains settings for the clips that make up an output file. For the current release, you can only specify settings for a single clip per output file. The Composition object cannot be null.

        " } }, "CreateJobOutput": { "base": "

        The CreateJobOutput structure.

        ", "refs": { "CreateJobOutputs$member": null, "CreateJobRequest$Output": null } }, "CreateJobOutputs": { "base": null, "refs": { "CreateJobRequest$Outputs": "

        A section of the request body that provides information about the transcoded (target) files. We recommend that you use the Outputs syntax instead of the Output syntax.

        " } }, "CreateJobPlaylist": { "base": "

        Information about the master playlist.

        ", "refs": { "CreateJobPlaylists$member": null } }, "CreateJobPlaylists": { "base": null, "refs": { "CreateJobRequest$Playlists": "

        If you specify a preset in PresetId for which the value of Container is fmp4 (Fragmented MP4) or ts (MPEG-TS), Playlists contains information about the master playlists that you want Elastic Transcoder to create.

        The maximum number of master playlists in a job is 30.

        " } }, "CreateJobRequest": { "base": "

        The CreateJobRequest structure.

        ", "refs": { } }, "CreateJobResponse": { "base": "

        The CreateJobResponse structure.

        ", "refs": { } }, "CreatePipelineRequest": { "base": "

        The CreatePipelineRequest structure.

        ", "refs": { } }, "CreatePipelineResponse": { "base": "

        When you create a pipeline, Elastic Transcoder returns the values that you specified in the request.

        ", "refs": { } }, "CreatePresetRequest": { "base": "

        The CreatePresetRequest structure.

        ", "refs": { } }, "CreatePresetResponse": { "base": "

        The CreatePresetResponse structure.

        ", "refs": { } }, "DeletePipelineRequest": { "base": "

        The DeletePipelineRequest structure.

        ", "refs": { } }, "DeletePipelineResponse": { "base": "

        The DeletePipelineResponse structure.

        ", "refs": { } }, "DeletePresetRequest": { "base": "

        The DeletePresetRequest structure.

        ", "refs": { } }, "DeletePresetResponse": { "base": "

        The DeletePresetResponse structure.

        ", "refs": { } }, "Description": { "base": null, "refs": { "CreatePresetRequest$Description": "

        A description of the preset.

        ", "JobOutput$StatusDetail": "

        Information that further explains Status.

        ", "Playlist$StatusDetail": "

        Information that further explains the status.

        ", "Preset$Description": "

        A description of the preset.

        " } }, "DetectedProperties": { "base": "

        The detected properties of the input file. Elastic Transcoder identifies these values from the input file.

        ", "refs": { "JobInput$DetectedProperties": "

        The detected properties of the input file.

        " } }, "Digits": { "base": null, "refs": { "Thumbnails$Interval": "

        The approximate number of seconds between thumbnails. Specify an integer value.

        " } }, "DigitsOrAuto": { "base": null, "refs": { "Artwork$MaxWidth": "

        The maximum width of the output album art in pixels. If you specify auto, Elastic Transcoder uses 600 as the default value. If you specify a numeric value, enter an even integer between 32 and 4096, inclusive.

        ", "Artwork$MaxHeight": "

        The maximum height of the output album art in pixels. If you specify auto, Elastic Transcoder uses 600 as the default value. If you specify a numeric value, enter an even integer between 32 and 3072, inclusive.

        ", "Thumbnails$MaxWidth": "

        The maximum width of thumbnails in pixels. If you specify auto, Elastic Transcoder uses 1920 (Full HD) as the default value. If you specify a numeric value, enter an even integer between 32 and 4096.

        ", "Thumbnails$MaxHeight": "

        The maximum height of thumbnails in pixels. If you specify auto, Elastic Transcoder uses 1080 (Full HD) as the default value. If you specify a numeric value, enter an even integer between 32 and 3072.

        ", "VideoParameters$MaxWidth": "

        The maximum width of the output video in pixels. If you specify auto, Elastic Transcoder uses 1920 (Full HD) as the default value. If you specify a numeric value, enter an even integer between 128 and 4096.

        ", "VideoParameters$MaxHeight": "

        The maximum height of the output video in pixels. If you specify auto, Elastic Transcoder uses 1080 (Full HD) as the default value. If you specify a numeric value, enter an even integer between 96 and 3072.

        " } }, "Encryption": { "base": "

        The encryption settings, if any, that are used for decrypting your input files or encrypting your output files. If your input file is encrypted, you must specify the mode that Elastic Transcoder will use to decrypt your file, otherwise you must specify the mode you want Elastic Transcoder to use to encrypt your output files.

        ", "refs": { "Artwork$Encryption": "

        The encryption settings, if any, that you want Elastic Transcoder to apply to your artwork.

        ", "CaptionFormat$Encryption": "

        The encryption settings, if any, that you want Elastic Transcoder to apply to your caption formats.

        ", "CaptionSource$Encryption": "

        The encryption settings, if any, that you want Elastic Transcoder to apply to your caption sources.

        ", "CreateJobOutput$ThumbnailEncryption": "

        The encryption settings, if any, that you want Elastic Transcoder to apply to your thumbnail.

        ", "CreateJobOutput$Encryption": "

        You can specify encryption settings for any output files that you want to use for a transcoding job. This includes the output file and any watermarks, thumbnails, album art, or captions that you want to use. You must specify encryption settings for each file individually.

        ", "JobInput$Encryption": "

        The encryption settings, if any, that are used for decrypting your input files. If your input file is encrypted, you must specify the mode that Elastic Transcoder will use to decrypt your file.

        ", "JobOutput$ThumbnailEncryption": "

        The encryption settings, if any, that you want Elastic Transcoder to apply to your thumbnail.

        ", "JobOutput$Encryption": "

        The encryption settings, if any, that you want Elastic Transcoder to apply to your output files. If you choose to use encryption, you must specify a mode to use. If you choose not to use encryption, Elastic Transcoder will write an unencrypted file to your Amazon S3 bucket.

        ", "JobWatermark$Encryption": "

        The encryption settings, if any, that you want Elastic Transcoder to apply to your watermarks.

        " } }, "EncryptionMode": { "base": null, "refs": { "Encryption$Mode": "

        The specific server-side encryption mode that you want Elastic Transcoder to use when decrypting your input files or encrypting your output files. Elastic Transcoder supports the following options:

        • S3: Amazon S3 creates and manages the keys used for encrypting your files.

        • S3-AWS-KMS: Amazon S3 calls the Amazon Key Management Service, which creates and manages the keys that are used for encrypting your files. If you specify S3-AWS-KMS and you don't want to use the default key, you must add the AWS-KMS key that you want to use to your pipeline.

        • AES-CBC-PKCS7: A padded cipher-block mode of operation originally used for HLS files.

        • AES-CTR: AES Counter Mode.

        • AES-GCM: AES Galois Counter Mode, a mode of operation that is an authenticated encryption format, meaning that a file, key, or initialization vector that has been tampered with will fail the decryption process.

        For all three AES options, you must provide the following settings, which must be base64-encoded:

        • Key

        • Key MD5

        • Initialization Vector

        For the AES modes, your private encryption keys and your unencrypted data are never stored by AWS; therefore, it is important that you safely manage your encryption keys. If you lose them, you won't be able to unencrypt your data.

        " } }, "ExceptionMessages": { "base": null, "refs": { "TestRoleResponse$Messages": "

        If the Success element contains false, this value is an array of one or more error messages that were generated during the test process.

        " } }, "Filename": { "base": null, "refs": { "CreateJobPlaylist$Name": "

        The name that you want Elastic Transcoder to assign to the master playlist, for example, nyc-vacation.m3u8. If the name includes a / character, the section of the name before the last / must be identical for all Name objects. If you create more than one master playlist, the values of all Name objects must be unique.

        Note: Elastic Transcoder automatically appends the relevant file extension to the file name (.m3u8 for HLSv3 and HLSv4 playlists, and .ism and .ismc for Smooth playlists). If you include a file extension in Name, the file name will have two extensions.

        ", "Playlist$Name": "

        The name that you want Elastic Transcoder to assign to the master playlist, for example, nyc-vacation.m3u8. If the name includes a / character, the section of the name before the last / must be identical for all Name objects. If you create more than one master playlist, the values of all Name objects must be unique.

        Note: Elastic Transcoder automatically appends the relevant file extension to the file name (.m3u8 for HLSv3 and HLSv4 playlists, and .ism and .ismc for Smooth playlists). If you include a file extension in Name, the file name will have two extensions.

        " } }, "FixedGOP": { "base": null, "refs": { "VideoParameters$FixedGOP": "

        Applicable only when the value of Video:Codec is one of H.264, MPEG2, or VP8.

        Whether to use a fixed value for FixedGOP. Valid values are true and false:

        • true: Elastic Transcoder uses the value of KeyframesMaxDist for the distance between key frames (the number of frames in a group of pictures, or GOP).
        • false: The distance between key frames can vary.

        FixedGOP must be set to true for fmp4 containers.

        " } }, "FloatString": { "base": null, "refs": { "CreateJobOutput$SegmentDuration": "

        (Outputs in Fragmented MP4 or MPEG-TS format only.If you specify a preset in PresetId for which the value of Container is fmp4 (Fragmented MP4) or ts (MPEG-TS), SegmentDuration is the target maximum duration of each segment in seconds. For HLSv3 format playlists, each media segment is stored in a separate .ts file. For HLSv4 and Smooth playlists, all media segments for an output are stored in a single file. Each segment is approximately the length of the SegmentDuration, though individual segments might be shorter or longer.

        The range of valid values is 1 to 60 seconds. If the duration of the video is not evenly divisible by SegmentDuration, the duration of the last segment is the remainder of total length/SegmentDuration.

        Elastic Transcoder creates an output-specific playlist for each output HLS output that you specify in OutputKeys. To add an output to the master playlist for this job, include it in the OutputKeys of the associated playlist.

        ", "DetectedProperties$FrameRate": "

        The detected frame rate of the input file, in frames per second.

        ", "JobOutput$SegmentDuration": "

        (Outputs in Fragmented MP4 or MPEG-TS format only.If you specify a preset in PresetId for which the value of Container is fmp4 (Fragmented MP4) or ts (MPEG-TS), SegmentDuration is the target maximum duration of each segment in seconds. For HLSv3 format playlists, each media segment is stored in a separate .ts file. For HLSv4 and Smooth playlists, all media segments for an output are stored in a single file. Each segment is approximately the length of the SegmentDuration, though individual segments might be shorter or longer.

        The range of valid values is 1 to 60 seconds. If the duration of the video is not evenly divisible by SegmentDuration, the duration of the last segment is the remainder of total length/SegmentDuration.

        Elastic Transcoder creates an output-specific playlist for each output HLS output that you specify in OutputKeys. To add an output to the master playlist for this job, include it in the OutputKeys of the associated playlist.

        ", "JobOutput$FrameRate": "

        Frame rate of the output file, in frames per second.

        " } }, "FrameRate": { "base": null, "refs": { "JobInput$FrameRate": "

        The frame rate of the input file. If you want Elastic Transcoder to automatically detect the frame rate of the input file, specify auto. If you want to specify the frame rate for the input file, enter one of the following values:

        10, 15, 23.97, 24, 25, 29.97, 30, 60

        If you specify a value other than auto, Elastic Transcoder disables automatic detection of the frame rate.

        ", "VideoParameters$FrameRate": "

        The frames per second for the video stream in the output file. Valid values include:

        auto, 10, 15, 23.97, 24, 25, 29.97, 30, 60

        If you specify auto, Elastic Transcoder uses the detected frame rate of the input source. If you specify a frame rate, we recommend that you perform the following calculation:

        Frame rate = maximum recommended decoding speed in luma samples/second / (width in pixels * height in pixels)

        where:

        • width in pixels and height in pixels represent the Resolution of the output video.
        • maximum recommended decoding speed in Luma samples/second is less than or equal to the maximum value listed in the following table, based on the value that you specified for Level.

        The maximum recommended decoding speed in Luma samples/second for each level is described in the following list (Level - Decoding speed):

        • 1 - 380160
        • 1b - 380160
        • 1.1 - 76800
        • 1.2 - 1536000
        • 1.3 - 3041280
        • 2 - 3041280
        • 2.1 - 5068800
        • 2.2 - 5184000
        • 3 - 10368000
        • 3.1 - 27648000
        • 3.2 - 55296000
        • 4 - 62914560
        • 4.1 - 62914560
        " } }, "Grantee": { "base": null, "refs": { "Permission$Grantee": "

        The AWS user or group that you want to have access to transcoded files and playlists. To identify the user or group, you can specify the canonical user ID for an AWS account, an origin access identity for a CloudFront distribution, the registered email address of an AWS account, or a predefined Amazon S3 group.

        " } }, "GranteeType": { "base": null, "refs": { "Permission$GranteeType": "

        The type of value that appears in the Grantee object:

        • Canonical: Either the canonical user ID for an AWS account or an origin access identity for an Amazon CloudFront distribution. A canonical user ID is not the same as an AWS account number.
        • Email: The registered email address of an AWS account.
        • Group: One of the following predefined Amazon S3 groups: AllUsers, AuthenticatedUsers, or LogDelivery.

        " } }, "HlsContentProtection": { "base": "

        The HLS content protection settings, if any, that you want Elastic Transcoder to apply to your output files.

        ", "refs": { "CreateJobPlaylist$HlsContentProtection": "

        The HLS content protection settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

        ", "Playlist$HlsContentProtection": "

        The HLS content protection settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

        " } }, "HlsContentProtectionMethod": { "base": null, "refs": { "HlsContentProtection$Method": "

        The content protection method for your output. The only valid value is: aes-128.

        This value will be written into the method attribute of the EXT-X-KEY metadata tag in the output playlist.

        " } }, "HorizontalAlign": { "base": null, "refs": { "PresetWatermark$HorizontalAlign": "

        The horizontal position of the watermark unless you specify a non-zero value for HorizontalOffset:

        • Left: The left edge of the watermark is aligned with the left border of the video.
        • Right: The right edge of the watermark is aligned with the right border of the video.
        • Center: The watermark is centered between the left and right borders.

        " } }, "Id": { "base": null, "refs": { "CancelJobRequest$Id": "

        The identifier of the job that you want to cancel.

        To get a list of the jobs (including their jobId) that have a status of Submitted, use the ListJobsByStatus API action.

        ", "CreateJobOutput$PresetId": "

        The Id of the preset to use for this job. The preset determines the audio, video, and thumbnail settings that Elastic Transcoder uses for transcoding.

        ", "CreateJobRequest$PipelineId": "

        The Id of the pipeline that you want Elastic Transcoder to use for transcoding. The pipeline determines several settings, including the Amazon S3 bucket from which Elastic Transcoder gets the files to transcode and the bucket into which Elastic Transcoder puts the transcoded files.

        ", "DeletePipelineRequest$Id": "

        The identifier of the pipeline that you want to delete.

        ", "DeletePresetRequest$Id": "

        The identifier of the preset for which you want to get detailed information.

        ", "Job$Id": "

        The identifier that Elastic Transcoder assigned to the job. You use this value to get settings for the job or to delete the job.

        ", "Job$PipelineId": "

        The Id of the pipeline that you want Elastic Transcoder to use for transcoding. The pipeline determines several settings, including the Amazon S3 bucket from which Elastic Transcoder gets the files to transcode and the bucket into which Elastic Transcoder puts the transcoded files.

        ", "JobOutput$PresetId": "

        The value of the Id object for the preset that you want to use for this job. The preset determines the audio, video, and thumbnail settings that Elastic Transcoder uses for transcoding. To use a preset that you created, specify the preset ID that Elastic Transcoder returned in the response when you created the preset. You can also use the Elastic Transcoder system presets, which you can get with ListPresets.

        ", "ListJobsByPipelineRequest$PipelineId": "

        The ID of the pipeline for which you want to get job information.

        ", "ListJobsByPipelineRequest$PageToken": "

        When Elastic Transcoder returns more than one page of results, use pageToken in subsequent GET requests to get each successive page of results.

        ", "ListJobsByPipelineResponse$NextPageToken": "

        A value that you use to access the second and subsequent pages of results, if any. When the jobs in the specified pipeline fit on one page or when you've reached the last page of results, the value of NextPageToken is null.

        ", "ListJobsByStatusRequest$PageToken": "

        When Elastic Transcoder returns more than one page of results, use pageToken in subsequent GET requests to get each successive page of results.

        ", "ListJobsByStatusResponse$NextPageToken": "

        A value that you use to access the second and subsequent pages of results, if any. When the jobs in the specified pipeline fit on one page or when you've reached the last page of results, the value of NextPageToken is null.

        ", "ListPipelinesRequest$PageToken": "

        When Elastic Transcoder returns more than one page of results, use pageToken in subsequent GET requests to get each successive page of results.

        ", "ListPipelinesResponse$NextPageToken": "

        A value that you use to access the second and subsequent pages of results, if any. When the pipelines fit on one page or when you've reached the last page of results, the value of NextPageToken is null.

        ", "ListPresetsRequest$PageToken": "

        When Elastic Transcoder returns more than one page of results, use pageToken in subsequent GET requests to get each successive page of results.

        ", "ListPresetsResponse$NextPageToken": "

        A value that you use to access the second and subsequent pages of results, if any. When the presets fit on one page or when you've reached the last page of results, the value of NextPageToken is null.

        ", "Pipeline$Id": "

        The identifier for the pipeline. You use this value to identify the pipeline in which you want to perform a variety of operations, such as creating a job or a preset.

        ", "Preset$Id": "

        Identifier for the new preset. You use this value to get settings for the preset or to delete it.

        ", "ReadJobRequest$Id": "

        The identifier of the job for which you want to get detailed information.

        ", "ReadPipelineRequest$Id": "

        The identifier of the pipeline to read.

        ", "ReadPresetRequest$Id": "

        The identifier of the preset for which you want to get detailed information.

        ", "UpdatePipelineNotificationsRequest$Id": "

        The identifier of the pipeline for which you want to change notification settings.

        ", "UpdatePipelineRequest$Id": "

        The ID of the pipeline that you want to update.

        ", "UpdatePipelineStatusRequest$Id": "

        The identifier of the pipeline to update.

        " } }, "IncompatibleVersionException": { "base": null, "refs": { } }, "Interlaced": { "base": null, "refs": { "JobInput$Interlaced": "

        Whether the input file is interlaced. If you want Elastic Transcoder to automatically detect whether the input file is interlaced, specify auto. If you want to specify whether the input file is interlaced, enter one of the following values:

        true, false

        If you specify a value other than auto, Elastic Transcoder disables automatic detection of interlacing.

        " } }, "InternalServiceException": { "base": "

        Elastic Transcoder encountered an unexpected exception while trying to fulfill the request.

        ", "refs": { } }, "Job": { "base": "

        A section of the response body that provides information about the job that is created.

        ", "refs": { "CreateJobResponse$Job": "

        A section of the response body that provides information about the job that is created.

        ", "Jobs$member": null, "ReadJobResponse$Job": "

        A section of the response body that provides information about the job.

        " } }, "JobAlbumArt": { "base": "

        The .jpg or .png file associated with an audio file.

        ", "refs": { "CreateJobOutput$AlbumArt": "

        Information about the album art that you want Elastic Transcoder to add to the file during transcoding. You can specify up to twenty album artworks for each output. Settings for each artwork must be defined in the job for the current output.

        ", "JobOutput$AlbumArt": "

        The album art to be associated with the output file, if any.

        " } }, "JobContainer": { "base": null, "refs": { "JobInput$Container": "

        The container type for the input file. If you want Elastic Transcoder to automatically detect the container type of the input file, specify auto. If you want to specify the container type for the input file, enter one of the following values:

        3gp, aac, asf, avi, divx, flv, m4a, mkv, mov, mp3, mp4, mpeg, mpeg-ps, mpeg-ts, mxf, ogg, vob, wav, webm

        " } }, "JobInput": { "base": "

        Information about the file that you're transcoding.

        ", "refs": { "CreateJobRequest$Input": "

        A section of the request body that provides information about the file that is being transcoded.

        ", "Job$Input": "

        A section of the request or response body that provides information about the file that is being transcoded.

        " } }, "JobOutput": { "base": "

        Outputs recommended instead.If you specified one output for a job, information about that output. If you specified multiple outputs for a job, the Output object lists information about the first output. This duplicates the information that is listed for the first output in the Outputs object.

        ", "refs": { "Job$Output": "

        If you specified one output for a job, information about that output. If you specified multiple outputs for a job, the Output object lists information about the first output. This duplicates the information that is listed for the first output in the Outputs object.

        Outputs recommended instead. A section of the request or response body that provides information about the transcoded (target) file.

        ", "JobOutputs$member": null } }, "JobOutputs": { "base": null, "refs": { "Job$Outputs": "

        Information about the output files. We recommend that you use the Outputs syntax for all jobs, even when you want Elastic Transcoder to transcode a file into only one format. Do not use both the Outputs and Output syntaxes in the same request. You can create a maximum of 30 outputs per job.

        If you specify more than one output for a job, Elastic Transcoder creates the files for each output in the order in which you specify them in the job.

        " } }, "JobStatus": { "base": null, "refs": { "Job$Status": "

        The status of the job: Submitted, Progressing, Complete, Canceled, or Error.

        ", "JobOutput$Status": "

        The status of one output in a job. If you specified only one output for the job, Outputs:Status is always the same as Job:Status. If you specified more than one output:

        • Job:Status and Outputs:Status for all of the outputs is Submitted until Elastic Transcoder starts to process the first output.
        • When Elastic Transcoder starts to process the first output, Outputs:Status for that output and Job:Status both change to Progressing. For each output, the value of Outputs:Status remains Submitted until Elastic Transcoder starts to process the output.
        • Job:Status remains Progressing until all of the outputs reach a terminal status, either Complete or Error.
        • When all of the outputs reach a terminal status, Job:Status changes to Complete only if Outputs:Status for all of the outputs is Complete. If Outputs:Status for one or more outputs is Error, the terminal status for Job:Status is also Error.
        The value of Status is one of the following: Submitted, Progressing, Complete, Canceled, or Error.

        ", "ListJobsByStatusRequest$Status": "

        To get information about all of the jobs associated with the current AWS account that have a given status, specify the following status: Submitted, Progressing, Complete, Canceled, or Error.

        ", "Playlist$Status": "

        The status of the job with which the playlist is associated.

        " } }, "JobWatermark": { "base": "

        Watermarks can be in .png or .jpg format. If you want to display a watermark that is not rectangular, use the .png format, which supports transparency.

        ", "refs": { "JobWatermarks$member": null } }, "JobWatermarks": { "base": null, "refs": { "CreateJobOutput$Watermarks": "

        Information about the watermarks that you want Elastic Transcoder to add to the video during transcoding. You can specify up to four watermarks for each output. Settings for each watermark must be defined in the preset for the current output.

        ", "JobOutput$Watermarks": "

        Information about the watermarks that you want Elastic Transcoder to add to the video during transcoding. You can specify up to four watermarks for each output. Settings for each watermark must be defined in the preset that you specify in Preset for the current output.

        Watermarks are added to the output video in the sequence in which you list them in the job output—the first watermark in the list is added to the output video first, the second watermark in the list is added next, and so on. As a result, if the settings in a preset cause Elastic Transcoder to place all watermarks in the same location, the second watermark that you add will cover the first one, the third one will cover the second, and the fourth one will cover the third.

        " } }, "Jobs": { "base": null, "refs": { "ListJobsByPipelineResponse$Jobs": "

        An array of Job objects that are in the specified pipeline.

        ", "ListJobsByStatusResponse$Jobs": "

        An array of Job objects that have the specified status.

        " } }, "JpgOrPng": { "base": null, "refs": { "Artwork$AlbumArtFormat": "

        The format of album art, if any. Valid formats are .jpg and .png.

        ", "Thumbnails$Format": "

        The format of thumbnails, if any. Valid values are jpg and png.

        You specify whether you want Elastic Transcoder to create thumbnails when you create a job.

        " } }, "Key": { "base": null, "refs": { "CaptionSource$Language": "

        A string that specifies the language of the caption. Specify this as one of:

        • 2-character ISO 639-1 code

        • 3-character ISO 639-2 code

        For more information on ISO language codes and language names, see the List of ISO 639-1 codes.

        ", "CreateJobOutput$Key": "

        The name to assign to the transcoded file. Elastic Transcoder saves the file in the Amazon S3 bucket specified by the OutputBucket object in the pipeline that is specified by the pipeline ID. If a file with the specified name already exists in the output bucket, the job fails.

        ", "CreateJobRequest$OutputKeyPrefix": "

        The value, if any, that you want Elastic Transcoder to prepend to the names of all files that this job creates, including output files, thumbnails, and playlists.

        ", "Job$OutputKeyPrefix": "

        The value, if any, that you want Elastic Transcoder to prepend to the names of all files that this job creates, including output files, thumbnails, and playlists. We recommend that you add a / or some other delimiter to the end of the OutputKeyPrefix.

        ", "JobOutput$Key": "

        The name to assign to the transcoded file. Elastic Transcoder saves the file in the Amazon S3 bucket specified by the OutputBucket object in the pipeline that is specified by the pipeline ID.

        ", "OutputKeys$member": null } }, "KeyArn": { "base": null, "refs": { "CreatePipelineRequest$AwsKmsKeyArn": "

        The AWS Key Management Service (AWS KMS) key that you want to use with this pipeline.

        If you use either S3 or S3-AWS-KMS as your Encryption:Mode, you don't need to provide a key with your job because a default key, known as an AWS-KMS key, is created for you automatically. You need to provide an AWS-KMS key only if you want to use a non-default AWS-KMS key, or if you are using an Encryption:Mode of AES-PKCS7, AES-CTR, or AES-GCM.

        ", "Pipeline$AwsKmsKeyArn": "

        The AWS Key Management Service (AWS KMS) key that you want to use with this pipeline.

        If you use either S3 or S3-AWS-KMS as your Encryption:Mode, you don't need to provide a key with your job because a default key, known as an AWS-KMS key, is created for you automatically. You need to provide an AWS-KMS key only if you want to use a non-default AWS-KMS key, or if you are using an Encryption:Mode of AES-PKCS7, AES-CTR, or AES-GCM.

        ", "UpdatePipelineRequest$AwsKmsKeyArn": "

        The AWS Key Management Service (AWS KMS) key that you want to use with this pipeline.

        If you use either S3 or S3-AWS-KMS as your Encryption:Mode, you don't need to provide a key with your job because a default key, known as an AWS-KMS key, is created for you automatically. You need to provide an AWS-KMS key only if you want to use a non-default AWS-KMS key, or if you are using an Encryption:Mode of AES-PKCS7, AES-CTR, or AES-GCM.

        " } }, "KeyIdGuid": { "base": null, "refs": { "PlayReadyDrm$KeyId": "

        The ID for your DRM key, so that your DRM license provider knows which key to provide.

        The key ID must be provided in big endian, and Elastic Transcoder will convert it to little endian before inserting it into the PlayReady DRM headers. If you are unsure whether your license server provides your key ID in big or little endian, check with your DRM provider.

        " } }, "KeyStoragePolicy": { "base": null, "refs": { "HlsContentProtection$KeyStoragePolicy": "

        Specify whether you want Elastic Transcoder to write your HLS license key to an Amazon S3 bucket. If you choose WithVariantPlaylists, LicenseAcquisitionUrl must be left blank and Elastic Transcoder writes your data key into the same bucket as the associated playlist.

        " } }, "KeyframesMaxDist": { "base": null, "refs": { "VideoParameters$KeyframesMaxDist": "

        Applicable only when the value of Video:Codec is one of H.264, MPEG2, or VP8.

        The maximum number of frames between key frames. Key frames are fully encoded frames; the frames between key frames are encoded based, in part, on the content of the key frames. The value is an integer formatted as a string; valid values are between 1 (every frame is a key frame) and 100000, inclusive. A higher value results in higher compression but may also discernibly decrease video quality.

        For Smooth outputs, the FrameRate must have a constant ratio to the KeyframesMaxDist. This allows Smooth playlists to switch between different quality levels while the file is being played.

        For example, an input file can have a FrameRate of 30 with a KeyframesMaxDist of 90. The output file then needs to have a ratio of 1:3. Valid outputs would have FrameRate of 30, 25, and 10, and KeyframesMaxDist of 90, 75, and 30, respectively.

        Alternately, this can be achieved by setting FrameRate to auto and having the same values for MaxFrameRate and KeyframesMaxDist.

        " } }, "LimitExceededException": { "base": "

        Too many operations for a given AWS account. For example, the number of pipelines exceeds the maximum allowed.

        ", "refs": { } }, "ListJobsByPipelineRequest": { "base": "

        The ListJobsByPipelineRequest structure.

        ", "refs": { } }, "ListJobsByPipelineResponse": { "base": "

        The ListJobsByPipelineResponse structure.

        ", "refs": { } }, "ListJobsByStatusRequest": { "base": "

        The ListJobsByStatusRequest structure.

        ", "refs": { } }, "ListJobsByStatusResponse": { "base": "

        The ListJobsByStatusResponse structure.

        ", "refs": { } }, "ListPipelinesRequest": { "base": "

        The ListPipelineRequest structure.

        ", "refs": { } }, "ListPipelinesResponse": { "base": "

        A list of the pipelines associated with the current AWS account.

        ", "refs": { } }, "ListPresetsRequest": { "base": "

        The ListPresetsRequest structure.

        ", "refs": { } }, "ListPresetsResponse": { "base": "

        The ListPresetsResponse structure.

        ", "refs": { } }, "LongKey": { "base": null, "refs": { "CaptionSource$Key": "

        The name of the sidecar caption file that you want Elastic Transcoder to include in the output file.

        ", "JobInput$Key": "

        The name of the file to transcode. Elsewhere in the body of the JSON block is the the ID of the pipeline to use for processing the job. The InputBucket object in that pipeline tells Elastic Transcoder which Amazon S3 bucket to get the file from.

        If the file name includes a prefix, such as cooking/lasagna.mpg, include the prefix in the key. If the file isn't in the specified bucket, Elastic Transcoder returns an error.

        " } }, "MaxFrameRate": { "base": null, "refs": { "VideoParameters$MaxFrameRate": "

        If you specify auto for FrameRate, Elastic Transcoder uses the frame rate of the input video for the frame rate of the output video. Specify the maximum frame rate that you want Elastic Transcoder to use when the frame rate of the input video is greater than the desired maximum frame rate of the output video. Valid values include: 10, 15, 23.97, 24, 25, 29.97, 30, 60.

        " } }, "MergePolicy": { "base": null, "refs": { "JobAlbumArt$MergePolicy": "

        A policy that determines how Elastic Transcoder will handle the existence of multiple album artwork files.

        • Replace: The specified album art will replace any existing album art.
        • Prepend: The specified album art will be placed in front of any existing album art.
        • Append: The specified album art will be placed after any existing album art.
        • Fallback: If the original input file contains artwork, Elastic Transcoder will use that artwork for the output. If the original input does not contain artwork, Elastic Transcoder will use the specified album art file.

        " } }, "Name": { "base": null, "refs": { "CaptionSource$Label": "

        The label of the caption shown in the player when choosing a language. We recommend that you put the caption language name here, in the language of the captions.

        ", "CreatePipelineRequest$Name": "

        The name of the pipeline. We recommend that the name be unique within the AWS account, but uniqueness is not enforced.

        Constraints: Maximum 40 characters.

        ", "CreatePresetRequest$Name": "

        The name of the preset. We recommend that the name be unique within the AWS account, but uniqueness is not enforced.

        ", "Pipeline$Name": "

        The name of the pipeline. We recommend that the name be unique within the AWS account, but uniqueness is not enforced.

        Constraints: Maximum 40 characters

        ", "Preset$Name": "

        The name of the preset.

        ", "UpdatePipelineRequest$Name": "

        The name of the pipeline. We recommend that the name be unique within the AWS account, but uniqueness is not enforced.

        Constraints: Maximum 40 characters

        " } }, "NonEmptyBase64EncodedString": { "base": null, "refs": { "PlayReadyDrm$Key": "

        The DRM key for your file, provided by your DRM license provider. The key must be base64-encoded, and it must be one of the following bit lengths before being base64-encoded:

        128, 192, or 256.

        The key must also be encrypted by using AWS KMS.

        ", "PlayReadyDrm$KeyMd5": "

        The MD5 digest of the key used for DRM on your file, and that you want Elastic Transcoder to use as a checksum to make sure your key was not corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes before being base64-encoded.

        " } }, "Notifications": { "base": "

        The Amazon Simple Notification Service (Amazon SNS) topic or topics to notify in order to report job status.

        To receive notifications, you must also subscribe to the new topic in the Amazon SNS console.", "refs": { "CreatePipelineRequest$Notifications": "

        The Amazon Simple Notification Service (Amazon SNS) topic that you want to notify to report job status.

        To receive notifications, you must also subscribe to the new topic in the Amazon SNS console.
        • Progressing: The topic ARN for the Amazon Simple Notification Service (Amazon SNS) topic that you want to notify when Elastic Transcoder has started to process a job in this pipeline. This is the ARN that Amazon SNS returned when you created the topic. For more information, see Create a Topic in the Amazon Simple Notification Service Developer Guide.
        • Completed: The topic ARN for the Amazon SNS topic that you want to notify when Elastic Transcoder has finished processing a job in this pipeline. This is the ARN that Amazon SNS returned when you created the topic.
        • Warning: The topic ARN for the Amazon SNS topic that you want to notify when Elastic Transcoder encounters a warning condition while processing a job in this pipeline. This is the ARN that Amazon SNS returned when you created the topic.
        • Error: The topic ARN for the Amazon SNS topic that you want to notify when Elastic Transcoder encounters an error condition while processing a job in this pipeline. This is the ARN that Amazon SNS returned when you created the topic.
        ", "Pipeline$Notifications": "

        The Amazon Simple Notification Service (Amazon SNS) topic that you want to notify to report job status.

        To receive notifications, you must also subscribe to the new topic in the Amazon SNS console.
        • Progressing (optional): The Amazon Simple Notification Service (Amazon SNS) topic that you want to notify when Elastic Transcoder has started to process the job.
        • Completed (optional): The Amazon SNS topic that you want to notify when Elastic Transcoder has finished processing the job.
        • Warning (optional): The Amazon SNS topic that you want to notify when Elastic Transcoder encounters a warning condition.
        • Error (optional): The Amazon SNS topic that you want to notify when Elastic Transcoder encounters an error condition.
        ", "UpdatePipelineNotificationsRequest$Notifications": "

        The topic ARN for the Amazon Simple Notification Service (Amazon SNS) topic that you want to notify to report job status.

        To receive notifications, you must also subscribe to the new topic in the Amazon SNS console.
        • Progressing: The topic ARN for the Amazon Simple Notification Service (Amazon SNS) topic that you want to notify when Elastic Transcoder has started to process jobs that are added to this pipeline. This is the ARN that Amazon SNS returned when you created the topic.
        • Completed: The topic ARN for the Amazon SNS topic that you want to notify when Elastic Transcoder has finished processing a job. This is the ARN that Amazon SNS returned when you created the topic.
        • Warning: The topic ARN for the Amazon SNS topic that you want to notify when Elastic Transcoder encounters a warning condition. This is the ARN that Amazon SNS returned when you created the topic.
        • Error: The topic ARN for the Amazon SNS topic that you want to notify when Elastic Transcoder encounters an error condition. This is the ARN that Amazon SNS returned when you created the topic.
        ", "UpdatePipelineRequest$Notifications": null } }, "NullableInteger": { "base": null, "refs": { "DetectedProperties$Width": "

        The detected width of the input file, in pixels.

        ", "DetectedProperties$Height": "

        The detected height of the input file, in pixels.

        ", "JobOutput$Width": "

        Specifies the width of the output file in pixels.

        ", "JobOutput$Height": "

        Height of the output file, in pixels.

        " } }, "NullableLong": { "base": null, "refs": { "DetectedProperties$FileSize": "

        The detected file size of the input file, in bytes.

        ", "DetectedProperties$DurationMillis": "

        The detected duration of the input file, in milliseconds.

        ", "JobOutput$Duration": "

        Duration of the output file, in seconds.

        ", "JobOutput$FileSize": "

        File size of the output file, in bytes.

        ", "JobOutput$DurationMillis": "

        Duration of the output file, in milliseconds.

        ", "Timing$SubmitTimeMillis": "

        The time the job was submitted to Elastic Transcoder, in epoch milliseconds.

        ", "Timing$StartTimeMillis": "

        The time the job began transcoding, in epoch milliseconds.

        ", "Timing$FinishTimeMillis": "

        The time the job finished transcoding, in epoch milliseconds.

        " } }, "OneTo512String": { "base": null, "refs": { "PlayReadyDrm$LicenseAcquisitionUrl": "

        The location of the license key required to play DRM content. The URL must be an absolute path, and is referenced by the PlayReady header. The PlayReady header is referenced in the protection header of the client manifest for Smooth Streaming outputs, and in the EXT-X-DXDRM and EXT-XDXDRMINFO metadata tags for HLS playlist outputs. An example URL looks like this: https://www.example.com/exampleKey/

        " } }, "Opacity": { "base": null, "refs": { "PresetWatermark$Opacity": "

        A percentage that indicates how much you want a watermark to obscure the video in the location where it appears. Valid values are 0 (the watermark is invisible) to 100 (the watermark completely obscures the video in the specified location). The datatype of Opacity is float.

        Elastic Transcoder supports transparent .png graphics. If you use a transparent .png, the transparent portion of the video appears as if you had specified a value of 0 for Opacity. The .jpg file format doesn't support transparency.

        " } }, "OutputKeys": { "base": null, "refs": { "CreateJobPlaylist$OutputKeys": "

        For each output in this job that you want to include in a master playlist, the value of the Outputs:Key object.

        • If your output is not HLS or does not have a segment duration set, the name of the output file is a concatenation of OutputKeyPrefix and Outputs:Key:

          OutputKeyPrefixOutputs:Key

        • If your output is HLSv3 and has a segment duration set, or is not included in a playlist, Elastic Transcoder creates an output playlist file with a file extension of .m3u8, and a series of .ts files that include a five-digit sequential counter beginning with 00000:

          OutputKeyPrefixOutputs:Key.m3u8

          OutputKeyPrefixOutputs:Key00000.ts

        • If your output is HLSv4, has a segment duration set, and is included in an HLSv4 playlist, Elastic Transcoder creates an output playlist file with a file extension of _v4.m3u8. If the output is video, Elastic Transcoder also creates an output file with an extension of _iframe.m3u8:

          OutputKeyPrefixOutputs:Key_v4.m3u8

          OutputKeyPrefixOutputs:Key_iframe.m3u8

          OutputKeyPrefixOutputs:Key.ts

        Elastic Transcoder automatically appends the relevant file extension to the file name. If you include a file extension in Output Key, the file name will have two extensions.

        If you include more than one output in a playlist, any segment duration settings, clip settings, or caption settings must be the same for all outputs in the playlist. For Smooth playlists, the Audio:Profile, Video:Profile, and Video:FrameRate to Video:KeyframesMaxDist ratio must be the same for all outputs.

        ", "Playlist$OutputKeys": "

        For each output in this job that you want to include in a master playlist, the value of the Outputs:Key object.

        • If your output is not HLS or does not have a segment duration set, the name of the output file is a concatenation of OutputKeyPrefix and Outputs:Key:

          OutputKeyPrefixOutputs:Key

        • If your output is HLSv3 and has a segment duration set, or is not included in a playlist, Elastic Transcoder creates an output playlist file with a file extension of .m3u8, and a series of .ts files that include a five-digit sequential counter beginning with 00000:

          OutputKeyPrefixOutputs:Key.m3u8

          OutputKeyPrefixOutputs:Key00000.ts

        • If your output is HLSv4, has a segment duration set, and is included in an HLSv4 playlist, Elastic Transcoder creates an output playlist file with a file extension of _v4.m3u8. If the output is video, Elastic Transcoder also creates an output file with an extension of _iframe.m3u8:

          OutputKeyPrefixOutputs:Key_v4.m3u8

          OutputKeyPrefixOutputs:Key_iframe.m3u8

          OutputKeyPrefixOutputs:Key.ts

        Elastic Transcoder automatically appends the relevant file extension to the file name. If you include a file extension in Output Key, the file name will have two extensions.

        If you include more than one output in a playlist, any segment duration settings, clip settings, or caption settings must be the same for all outputs in the playlist. For Smooth playlists, the Audio:Profile, Video:Profile, and Video:FrameRate to Video:KeyframesMaxDist ratio must be the same for all outputs.

        " } }, "PaddingPolicy": { "base": null, "refs": { "Artwork$PaddingPolicy": "

        When you set PaddingPolicy to Pad, Elastic Transcoder may add white bars to the top and bottom and/or left and right sides of the output album art to make the total size of the output art match the values that you specified for MaxWidth and MaxHeight.

        ", "Thumbnails$PaddingPolicy": "

        When you set PaddingPolicy to Pad, Elastic Transcoder may add black bars to the top and bottom and/or left and right sides of thumbnails to make the total size of the thumbnails match the values that you specified for thumbnail MaxWidth and MaxHeight settings.

        ", "VideoParameters$PaddingPolicy": "

        When you set PaddingPolicy to Pad, Elastic Transcoder may add black bars to the top and bottom and/or left and right sides of the output video to make the total size of the output video match the values that you specified for MaxWidth and MaxHeight.

        " } }, "Permission": { "base": "

        The Permission structure.

        ", "refs": { "Permissions$member": null } }, "Permissions": { "base": null, "refs": { "PipelineOutputConfig$Permissions": "

        Optional. The Permissions object specifies which users and/or predefined Amazon S3 groups you want to have access to transcoded files and playlists, and the type of access you want them to have. You can grant permissions to a maximum of 30 users and/or predefined Amazon S3 groups.

        If you include Permissions, Elastic Transcoder grants only the permissions that you specify. It does not grant full permissions to the owner of the role specified by Role. If you want that user to have full control, you must explicitly grant full control to the user.

        If you omit Permissions, Elastic Transcoder grants full control over the transcoded files and playlists to the owner of the role specified by Role, and grants no other permissions to any other user or group.

        " } }, "Pipeline": { "base": "

        The pipeline (queue) that is used to manage jobs.

        ", "refs": { "CreatePipelineResponse$Pipeline": "

        A section of the response body that provides information about the pipeline that is created.

        ", "Pipelines$member": null, "ReadPipelineResponse$Pipeline": "

        A section of the response body that provides information about the pipeline.

        ", "UpdatePipelineNotificationsResponse$Pipeline": "

        A section of the response body that provides information about the pipeline.

        ", "UpdatePipelineResponse$Pipeline": null, "UpdatePipelineStatusResponse$Pipeline": "

        A section of the response body that provides information about the pipeline.

        " } }, "PipelineOutputConfig": { "base": "

        The PipelineOutputConfig structure.

        ", "refs": { "CreatePipelineRequest$ContentConfig": "

        The optional ContentConfig object specifies information about the Amazon S3 bucket in which you want Elastic Transcoder to save transcoded files and playlists: which bucket to use, which users you want to have access to the files, the type of access you want users to have, and the storage class that you want to assign to the files.

        If you specify values for ContentConfig, you must also specify values for ThumbnailConfig.

        If you specify values for ContentConfig and ThumbnailConfig, omit the OutputBucket object.

        • Bucket: The Amazon S3 bucket in which you want Elastic Transcoder to save transcoded files and playlists.
        • Permissions (Optional): The Permissions object specifies which users you want to have access to transcoded files and the type of access you want them to have. You can grant permissions to a maximum of 30 users and/or predefined Amazon S3 groups.
        • Grantee Type: Specify the type of value that appears in the Grantee object:
          • Canonical: The value in the Grantee object is either the canonical user ID for an AWS account or an origin access identity for an Amazon CloudFront distribution. For more information about canonical user IDs, see Access Control List (ACL) Overview in the Amazon Simple Storage Service Developer Guide. For more information about using CloudFront origin access identities to require that users use CloudFront URLs instead of Amazon S3 URLs, see Using an Origin Access Identity to Restrict Access to Your Amazon S3 Content. A canonical user ID is not the same as an AWS account number.
          • Email: The value in the Grantee object is the registered email address of an AWS account.
          • Group: The value in the Grantee object is one of the following predefined Amazon S3 groups: AllUsers, AuthenticatedUsers, or LogDelivery.
        • Grantee: The AWS user or group that you want to have access to transcoded files and playlists. To identify the user or group, you can specify the canonical user ID for an AWS account, an origin access identity for a CloudFront distribution, the registered email address of an AWS account, or a predefined Amazon S3 group
        • Access: The permission that you want to give to the AWS user that you specified in Grantee. Permissions are granted on the files that Elastic Transcoder adds to the bucket, including playlists and video files. Valid values include:
          • READ: The grantee can read the objects and metadata for objects that Elastic Transcoder adds to the Amazon S3 bucket.
          • READ_ACP: The grantee can read the object ACL for objects that Elastic Transcoder adds to the Amazon S3 bucket.
          • WRITE_ACP: The grantee can write the ACL for the objects that Elastic Transcoder adds to the Amazon S3 bucket.
          • FULL_CONTROL: The grantee has READ, READ_ACP, and WRITE_ACP permissions for the objects that Elastic Transcoder adds to the Amazon S3 bucket.
        • StorageClass: The Amazon S3 storage class, Standard or ReducedRedundancy, that you want Elastic Transcoder to assign to the video files and playlists that it stores in your Amazon S3 bucket.
        ", "CreatePipelineRequest$ThumbnailConfig": "

        The ThumbnailConfig object specifies several values, including the Amazon S3 bucket in which you want Elastic Transcoder to save thumbnail files, which users you want to have access to the files, the type of access you want users to have, and the storage class that you want to assign to the files.

        If you specify values for ContentConfig, you must also specify values for ThumbnailConfig even if you don't want to create thumbnails.

        If you specify values for ContentConfig and ThumbnailConfig, omit the OutputBucket object.

        • Bucket: The Amazon S3 bucket in which you want Elastic Transcoder to save thumbnail files.
        • Permissions (Optional): The Permissions object specifies which users and/or predefined Amazon S3 groups you want to have access to thumbnail files, and the type of access you want them to have. You can grant permissions to a maximum of 30 users and/or predefined Amazon S3 groups.
        • GranteeType: Specify the type of value that appears in the Grantee object:
          • Canonical: The value in the Grantee object is either the canonical user ID for an AWS account or an origin access identity for an Amazon CloudFront distribution. A canonical user ID is not the same as an AWS account number.
          • Email: The value in the Grantee object is the registered email address of an AWS account.
          • Group: The value in the Grantee object is one of the following predefined Amazon S3 groups: AllUsers, AuthenticatedUsers, or LogDelivery.
        • Grantee: The AWS user or group that you want to have access to thumbnail files. To identify the user or group, you can specify the canonical user ID for an AWS account, an origin access identity for a CloudFront distribution, the registered email address of an AWS account, or a predefined Amazon S3 group.
        • Access: The permission that you want to give to the AWS user that you specified in Grantee. Permissions are granted on the thumbnail files that Elastic Transcoder adds to the bucket. Valid values include:
          • READ: The grantee can read the thumbnails and metadata for objects that Elastic Transcoder adds to the Amazon S3 bucket.
          • READ_ACP: The grantee can read the object ACL for thumbnails that Elastic Transcoder adds to the Amazon S3 bucket.
          • WRITE_ACP: The grantee can write the ACL for the thumbnails that Elastic Transcoder adds to the Amazon S3 bucket.
          • FULL_CONTROL: The grantee has READ, READ_ACP, and WRITE_ACP permissions for the thumbnails that Elastic Transcoder adds to the Amazon S3 bucket.
        • StorageClass: The Amazon S3 storage class, Standard or ReducedRedundancy, that you want Elastic Transcoder to assign to the thumbnails that it stores in your Amazon S3 bucket.
        ", "Pipeline$ContentConfig": "

        Information about the Amazon S3 bucket in which you want Elastic Transcoder to save transcoded files and playlists. Either you specify both ContentConfig and ThumbnailConfig, or you specify OutputBucket.

        • Bucket: The Amazon S3 bucket in which you want Elastic Transcoder to save transcoded files and playlists.
        • Permissions: A list of the users and/or predefined Amazon S3 groups you want to have access to transcoded files and playlists, and the type of access that you want them to have.
          • GranteeType: The type of value that appears in the Grantee object:
            • Canonical: Either the canonical user ID for an AWS account or an origin access identity for an Amazon CloudFront distribution.
            • Email: The registered email address of an AWS account.
            • Group: One of the following predefined Amazon S3 groups: AllUsers, AuthenticatedUsers, or LogDelivery.
          • Grantee: The AWS user or group that you want to have access to transcoded files and playlists.
          • Access: The permission that you want to give to the AWS user that is listed in Grantee. Valid values include:
            • READ: The grantee can read the objects and metadata for objects that Elastic Transcoder adds to the Amazon S3 bucket.
            • READ_ACP: The grantee can read the object ACL for objects that Elastic Transcoder adds to the Amazon S3 bucket.
            • WRITE_ACP: The grantee can write the ACL for the objects that Elastic Transcoder adds to the Amazon S3 bucket.
            • FULL_CONTROL: The grantee has READ, READ_ACP, and WRITE_ACP permissions for the objects that Elastic Transcoder adds to the Amazon S3 bucket.
        • StorageClass: The Amazon S3 storage class, Standard or ReducedRedundancy, that you want Elastic Transcoder to assign to the video files and playlists that it stores in your Amazon S3 bucket.
        ", "Pipeline$ThumbnailConfig": "

        Information about the Amazon S3 bucket in which you want Elastic Transcoder to save thumbnail files. Either you specify both ContentConfig and ThumbnailConfig, or you specify OutputBucket.

        • Bucket: The Amazon S3 bucket in which you want Elastic Transcoder to save thumbnail files.
        • Permissions: A list of the users and/or predefined Amazon S3 groups you want to have access to thumbnail files, and the type of access that you want them to have.
          • GranteeType: The type of value that appears in the Grantee object:
            • Canonical: Either the canonical user ID for an AWS account or an origin access identity for an Amazon CloudFront distribution. A canonical user ID is not the same as an AWS account number.
            • Email: The registered email address of an AWS account.
            • Group: One of the following predefined Amazon S3 groups: AllUsers, AuthenticatedUsers, or LogDelivery.
          • Grantee: The AWS user or group that you want to have access to thumbnail files.
          • Access: The permission that you want to give to the AWS user that is listed in Grantee. Valid values include:
            • READ: The grantee can read the thumbnails and metadata for thumbnails that Elastic Transcoder adds to the Amazon S3 bucket.
            • READ_ACP: The grantee can read the object ACL for thumbnails that Elastic Transcoder adds to the Amazon S3 bucket.
            • WRITE_ACP: The grantee can write the ACL for the thumbnails that Elastic Transcoder adds to the Amazon S3 bucket.
            • FULL_CONTROL: The grantee has READ, READ_ACP, and WRITE_ACP permissions for the thumbnails that Elastic Transcoder adds to the Amazon S3 bucket.
        • StorageClass: The Amazon S3 storage class, Standard or ReducedRedundancy, that you want Elastic Transcoder to assign to the thumbnails that it stores in your Amazon S3 bucket.
        ", "UpdatePipelineRequest$ContentConfig": "

        The optional ContentConfig object specifies information about the Amazon S3 bucket in which you want Elastic Transcoder to save transcoded files and playlists: which bucket to use, which users you want to have access to the files, the type of access you want users to have, and the storage class that you want to assign to the files.

        If you specify values for ContentConfig, you must also specify values for ThumbnailConfig.

        If you specify values for ContentConfig and ThumbnailConfig, omit the OutputBucket object.

        • Bucket: The Amazon S3 bucket in which you want Elastic Transcoder to save transcoded files and playlists.
        • Permissions (Optional): The Permissions object specifies which users you want to have access to transcoded files and the type of access you want them to have. You can grant permissions to a maximum of 30 users and/or predefined Amazon S3 groups.
        • Grantee Type: Specify the type of value that appears in the Grantee object:
          • Canonical: The value in the Grantee object is either the canonical user ID for an AWS account or an origin access identity for an Amazon CloudFront distribution. For more information about canonical user IDs, see Access Control List (ACL) Overview in the Amazon Simple Storage Service Developer Guide. For more information about using CloudFront origin access identities to require that users use CloudFront URLs instead of Amazon S3 URLs, see Using an Origin Access Identity to Restrict Access to Your Amazon S3 Content. A canonical user ID is not the same as an AWS account number.
          • Email: The value in the Grantee object is the registered email address of an AWS account.
          • Group: The value in the Grantee object is one of the following predefined Amazon S3 groups: AllUsers, AuthenticatedUsers, or LogDelivery.
        • Grantee: The AWS user or group that you want to have access to transcoded files and playlists. To identify the user or group, you can specify the canonical user ID for an AWS account, an origin access identity for a CloudFront distribution, the registered email address of an AWS account, or a predefined Amazon S3 group
        • Access: The permission that you want to give to the AWS user that you specified in Grantee. Permissions are granted on the files that Elastic Transcoder adds to the bucket, including playlists and video files. Valid values include:
          • READ: The grantee can read the objects and metadata for objects that Elastic Transcoder adds to the Amazon S3 bucket.
          • READ_ACP: The grantee can read the object ACL for objects that Elastic Transcoder adds to the Amazon S3 bucket.
          • WRITE_ACP: The grantee can write the ACL for the objects that Elastic Transcoder adds to the Amazon S3 bucket.
          • FULL_CONTROL: The grantee has READ, READ_ACP, and WRITE_ACP permissions for the objects that Elastic Transcoder adds to the Amazon S3 bucket.
        • StorageClass: The Amazon S3 storage class, Standard or ReducedRedundancy, that you want Elastic Transcoder to assign to the video files and playlists that it stores in your Amazon S3 bucket.
        ", "UpdatePipelineRequest$ThumbnailConfig": "

        The ThumbnailConfig object specifies several values, including the Amazon S3 bucket in which you want Elastic Transcoder to save thumbnail files, which users you want to have access to the files, the type of access you want users to have, and the storage class that you want to assign to the files.

        If you specify values for ContentConfig, you must also specify values for ThumbnailConfig even if you don't want to create thumbnails.

        If you specify values for ContentConfig and ThumbnailConfig, omit the OutputBucket object.

        • Bucket: The Amazon S3 bucket in which you want Elastic Transcoder to save thumbnail files.
        • Permissions (Optional): The Permissions object specifies which users and/or predefined Amazon S3 groups you want to have access to thumbnail files, and the type of access you want them to have. You can grant permissions to a maximum of 30 users and/or predefined Amazon S3 groups.
        • GranteeType: Specify the type of value that appears in the Grantee object:
          • Canonical: The value in the Grantee object is either the canonical user ID for an AWS account or an origin access identity for an Amazon CloudFront distribution. A canonical user ID is not the same as an AWS account number.
          • Email: The value in the Grantee object is the registered email address of an AWS account.
          • Group: The value in the Grantee object is one of the following predefined Amazon S3 groups: AllUsers, AuthenticatedUsers, or LogDelivery.
        • Grantee: The AWS user or group that you want to have access to thumbnail files. To identify the user or group, you can specify the canonical user ID for an AWS account, an origin access identity for a CloudFront distribution, the registered email address of an AWS account, or a predefined Amazon S3 group.
        • Access: The permission that you want to give to the AWS user that you specified in Grantee. Permissions are granted on the thumbnail files that Elastic Transcoder adds to the bucket. Valid values include:
          • READ: The grantee can read the thumbnails and metadata for objects that Elastic Transcoder adds to the Amazon S3 bucket.
          • READ_ACP: The grantee can read the object ACL for thumbnails that Elastic Transcoder adds to the Amazon S3 bucket.
          • WRITE_ACP: The grantee can write the ACL for the thumbnails that Elastic Transcoder adds to the Amazon S3 bucket.
          • FULL_CONTROL: The grantee has READ, READ_ACP, and WRITE_ACP permissions for the thumbnails that Elastic Transcoder adds to the Amazon S3 bucket.
        • StorageClass: The Amazon S3 storage class, Standard or ReducedRedundancy, that you want Elastic Transcoder to assign to the thumbnails that it stores in your Amazon S3 bucket.
        " } }, "PipelineStatus": { "base": null, "refs": { "Pipeline$Status": "

        The current status of the pipeline:

        • Active: The pipeline is processing jobs.
        • Paused: The pipeline is not currently processing jobs.
        ", "UpdatePipelineStatusRequest$Status": "

        The desired status of the pipeline:

        • Active: The pipeline is processing jobs.
        • Paused: The pipeline is not currently processing jobs.
        " } }, "Pipelines": { "base": null, "refs": { "ListPipelinesResponse$Pipelines": "

        An array of Pipeline objects.

        " } }, "PixelsOrPercent": { "base": null, "refs": { "PresetWatermark$MaxWidth": "

        The maximum width of the watermark in one of the following formats:

        • number of pixels (px): The minimum value is 16 pixels, and the maximum value is the value of MaxWidth.
        • integer percentage (%): The range of valid values is 0 to 100. Use the value of Target to specify whether you want Elastic Transcoder to include the black bars that are added by Elastic Transcoder, if any, in the calculation.
        • If you specify the value in pixels, it must be less than or equal to the value of MaxWidth.

        ", "PresetWatermark$MaxHeight": "

        The maximum height of the watermark in one of the following formats:

        • number of pixels (px): The minimum value is 16 pixels, and the maximum value is the value of MaxHeight.
        • integer percentage (%): The range of valid values is 0 to 100. Use the value of Target to specify whether you want Elastic Transcoder to include the black bars that are added by Elastic Transcoder, if any, in the calculation.
        If you specify the value in pixels, it must be less than or equal to the value of MaxHeight.

        ", "PresetWatermark$HorizontalOffset": "

        The amount by which you want the horizontal position of the watermark to be offset from the position specified by HorizontalAlign:

        • number of pixels (px): The minimum value is 0 pixels, and the maximum value is the value of MaxWidth.
        • integer percentage (%): The range of valid values is 0 to 100.
        For example, if you specify Left for HorizontalAlign and 5px for HorizontalOffset, the left side of the watermark appears 5 pixels from the left border of the output video.

        HorizontalOffset is only valid when the value of HorizontalAlign is Left or Right. If you specify an offset that causes the watermark to extend beyond the left or right border and Elastic Transcoder has not added black bars, the watermark is cropped. If Elastic Transcoder has added black bars, the watermark extends into the black bars. If the watermark extends beyond the black bars, it is cropped.

        Use the value of Target to specify whether you want to include the black bars that are added by Elastic Transcoder, if any, in the offset calculation.

        ", "PresetWatermark$VerticalOffset": "VerticalOffset

        The amount by which you want the vertical position of the watermark to be offset from the position specified by VerticalAlign:

        • number of pixels (px): The minimum value is 0 pixels, and the maximum value is the value of MaxHeight.
        • integer percentage (%): The range of valid values is 0 to 100.
        For example, if you specify Top for VerticalAlign and 5px for VerticalOffset, the top of the watermark appears 5 pixels from the top border of the output video.

        VerticalOffset is only valid when the value of VerticalAlign is Top or Bottom.

        If you specify an offset that causes the watermark to extend beyond the top or bottom border and Elastic Transcoder has not added black bars, the watermark is cropped. If Elastic Transcoder has added black bars, the watermark extends into the black bars. If the watermark extends beyond the black bars, it is cropped.

        Use the value of Target to specify whether you want Elastic Transcoder to include the black bars that are added by Elastic Transcoder, if any, in the offset calculation.

        " } }, "PlayReadyDrm": { "base": "

        The PlayReady DRM settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

        PlayReady DRM encrypts your media files using AES-CTR encryption.

        If you use DRM for an HLSv3 playlist, your outputs must have a master playlist.

        ", "refs": { "CreateJobPlaylist$PlayReadyDrm": "

        The DRM settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

        ", "Playlist$PlayReadyDrm": "

        The DRM settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

        " } }, "PlayReadyDrmFormatString": { "base": null, "refs": { "PlayReadyDrm$Format": "

        The type of DRM, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

        " } }, "Playlist": { "base": "

        Use Only for Fragmented MP4 or MPEG-TS Outputs. If you specify a preset for which the value of Container is fmp4 (Fragmented MP4) or ts (MPEG-TS), Playlists contains information about the master playlists that you want Elastic Transcoder to create. We recommend that you create only one master playlist per output format. The maximum number of master playlists in a job is 30.

        ", "refs": { "Playlists$member": null } }, "PlaylistFormat": { "base": null, "refs": { "CreateJobPlaylist$Format": "

        The format of the output playlist. Valid formats include HLSv3, HLSv4, and Smooth.

        ", "Playlist$Format": "

        The format of the output playlist. Valid formats include HLSv3, HLSv4, and Smooth.

        " } }, "Playlists": { "base": null, "refs": { "Job$Playlists": "

        Outputs in Fragmented MP4 or MPEG-TS format only.If you specify a preset in PresetId for which the value of Container is fmp4 (Fragmented MP4) or ts (MPEG-TS), Playlists contains information about the master playlists that you want Elastic Transcoder to create.

        The maximum number of master playlists in a job is 30.

        " } }, "Preset": { "base": "

        Presets are templates that contain most of the settings for transcoding media files from one format to another. Elastic Transcoder includes some default presets for common formats, for example, several iPod and iPhone versions. You can also create your own presets for formats that aren't included among the default presets. You specify which preset you want to use when you create a job.

        ", "refs": { "CreatePresetResponse$Preset": "

        A section of the response body that provides information about the preset that is created.

        ", "Presets$member": null, "ReadPresetResponse$Preset": "

        A section of the response body that provides information about the preset.

        " } }, "PresetContainer": { "base": null, "refs": { "CreatePresetRequest$Container": "

        The container type for the output file. Valid values include flac, flv, fmp4, gif, mp3, mp4, mpg, mxf, oga, ogg, ts, and webm.

        ", "Preset$Container": "

        The container type for the output file. Valid values include flac, flv, fmp4, gif, mp3, mp4, mpg, mxf, oga, ogg, ts, and webm.

        " } }, "PresetType": { "base": null, "refs": { "Preset$Type": "

        Whether the preset is a default preset provided by Elastic Transcoder (System) or a preset that you have defined (Custom).

        " } }, "PresetWatermark": { "base": "

        Settings for the size, location, and opacity of graphics that you want Elastic Transcoder to overlay over videos that are transcoded using this preset. You can specify settings for up to four watermarks. Watermarks appear in the specified size and location, and with the specified opacity for the duration of the transcoded video.

        Watermarks can be in .png or .jpg format. If you want to display a watermark that is not rectangular, use the .png format, which supports transparency.

        When you create a job that uses this preset, you specify the .png or .jpg graphics that you want Elastic Transcoder to include in the transcoded videos. You can specify fewer graphics in the job than you specify watermark settings in the preset, which allows you to use the same preset for up to four watermarks that have different dimensions.

        ", "refs": { "PresetWatermarks$member": null } }, "PresetWatermarkId": { "base": null, "refs": { "JobWatermark$PresetWatermarkId": "

        The ID of the watermark settings that Elastic Transcoder uses to add watermarks to the video during transcoding. The settings are in the preset specified by Preset for the current output. In that preset, the value of Watermarks Id tells Elastic Transcoder which settings to use.

        ", "PresetWatermark$Id": "A unique identifier for the settings for one watermark. The value of Id can be up to 40 characters long." } }, "PresetWatermarks": { "base": null, "refs": { "VideoParameters$Watermarks": "

        Settings for the size, location, and opacity of graphics that you want Elastic Transcoder to overlay over videos that are transcoded using this preset. You can specify settings for up to four watermarks. Watermarks appear in the specified size and location, and with the specified opacity for the duration of the transcoded video.

        Watermarks can be in .png or .jpg format. If you want to display a watermark that is not rectangular, use the .png format, which supports transparency.

        When you create a job that uses this preset, you specify the .png or .jpg graphics that you want Elastic Transcoder to include in the transcoded videos. You can specify fewer graphics in the job than you specify watermark settings in the preset, which allows you to use the same preset for up to four watermarks that have different dimensions.

        " } }, "Presets": { "base": null, "refs": { "ListPresetsResponse$Presets": "

        An array of Preset objects.

        " } }, "ReadJobRequest": { "base": "

        The ReadJobRequest structure.

        ", "refs": { } }, "ReadJobResponse": { "base": "

        The ReadJobResponse structure.

        ", "refs": { } }, "ReadPipelineRequest": { "base": "

        The ReadPipelineRequest structure.

        ", "refs": { } }, "ReadPipelineResponse": { "base": "

        The ReadPipelineResponse structure.

        ", "refs": { } }, "ReadPresetRequest": { "base": "

        The ReadPresetRequest structure.

        ", "refs": { } }, "ReadPresetResponse": { "base": "

        The ReadPresetResponse structure.

        ", "refs": { } }, "Resolution": { "base": null, "refs": { "JobInput$Resolution": "

        This value must be auto, which causes Elastic Transcoder to automatically detect the resolution of the input file.

        ", "VideoParameters$Resolution": "

        To better control resolution and aspect ratio of output videos, we recommend that you use the values MaxWidth, MaxHeight, SizingPolicy, PaddingPolicy, and DisplayAspectRatio instead of Resolution and AspectRatio. The two groups of settings are mutually exclusive. Do not use them together.

        The width and height of the video in the output file, in pixels. Valid values are auto and width x height:

        • auto: Elastic Transcoder attempts to preserve the width and height of the input file, subject to the following rules.
        • width x height: The width and height of the output video in pixels.

        Note the following about specifying the width and height:

        • The width must be an even integer between 128 and 4096, inclusive.
        • The height must be an even integer between 96 and 3072, inclusive.
        • If you specify a resolution that is less than the resolution of the input file, Elastic Transcoder rescales the output file to the lower resolution.
        • If you specify a resolution that is greater than the resolution of the input file, Elastic Transcoder rescales the output to the higher resolution.
        • We recommend that you specify a resolution for which the product of width and height is less than or equal to the applicable value in the following list (List - Max width x height value):
          • 1 - 25344
          • 1b - 25344
          • 1.1 - 101376
          • 1.2 - 101376
          • 1.3 - 101376
          • 2 - 101376
          • 2.1 - 202752
          • 2.2 - 404720
          • 3 - 404720
          • 3.1 - 921600
          • 3.2 - 1310720
          • 4 - 2097152
          • 4.1 - 2097152
        " } }, "ResourceInUseException": { "base": "

        The resource you are attempting to change is in use. For example, you are attempting to delete a pipeline that is currently in use.

        ", "refs": { } }, "ResourceNotFoundException": { "base": "

        The requested resource does not exist or is not available. For example, the pipeline to which you're trying to add a job doesn't exist or is still being created.

        ", "refs": { } }, "Role": { "base": null, "refs": { "CreatePipelineRequest$Role": "

        The IAM Amazon Resource Name (ARN) for the role that you want Elastic Transcoder to use to create the pipeline.

        ", "Pipeline$Role": "

        The IAM Amazon Resource Name (ARN) for the role that Elastic Transcoder uses to transcode jobs for this pipeline.

        ", "TestRoleRequest$Role": "

        The IAM Amazon Resource Name (ARN) for the role that you want Elastic Transcoder to test.

        ", "UpdatePipelineRequest$Role": "

        The IAM Amazon Resource Name (ARN) for the role that you want Elastic Transcoder to use to transcode jobs for this pipeline.

        " } }, "Rotate": { "base": null, "refs": { "CreateJobOutput$Rotate": "

        The number of degrees clockwise by which you want Elastic Transcoder to rotate the output relative to the input. Enter one of the following values: auto, 0, 90, 180, 270. The value auto generally works only if the file that you're transcoding contains rotation metadata.

        ", "JobOutput$Rotate": "

        The number of degrees clockwise by which you want Elastic Transcoder to rotate the output relative to the input. Enter one of the following values:

        auto, 0, 90, 180, 270

        The value auto generally works only if the file that you're transcoding contains rotation metadata.

        " } }, "SizingPolicy": { "base": null, "refs": { "Artwork$SizingPolicy": "

        Specify one of the following values to control scaling of the output album art:

        • Fit: Elastic Transcoder scales the output art so it matches the value that you specified in either MaxWidth or MaxHeight without exceeding the other value.
        • Fill: Elastic Transcoder scales the output art so it matches the value that you specified in either MaxWidth or MaxHeight and matches or exceeds the other value. Elastic Transcoder centers the output art and then crops it in the dimension (if any) that exceeds the maximum value.
        • Stretch: Elastic Transcoder stretches the output art to match the values that you specified for MaxWidth and MaxHeight. If the relative proportions of the input art and the output art are different, the output art will be distorted.
        • Keep: Elastic Transcoder does not scale the output art. If either dimension of the input art exceeds the values that you specified for MaxWidth and MaxHeight, Elastic Transcoder crops the output art.
        • ShrinkToFit: Elastic Transcoder scales the output art down so that its dimensions match the values that you specified for at least one of MaxWidth and MaxHeight without exceeding either value. If you specify this option, Elastic Transcoder does not scale the art up.
        • ShrinkToFill Elastic Transcoder scales the output art down so that its dimensions match the values that you specified for at least one of MaxWidth and MaxHeight without dropping below either value. If you specify this option, Elastic Transcoder does not scale the art up.

        ", "Thumbnails$SizingPolicy": "

        Specify one of the following values to control scaling of thumbnails:

        • Fit: Elastic Transcoder scales thumbnails so they match the value that you specified in thumbnail MaxWidth or MaxHeight settings without exceeding the other value.
        • Fill: Elastic Transcoder scales thumbnails so they match the value that you specified in thumbnail MaxWidth or MaxHeight settings and matches or exceeds the other value. Elastic Transcoder centers the image in thumbnails and then crops in the dimension (if any) that exceeds the maximum value.
        • Stretch: Elastic Transcoder stretches thumbnails to match the values that you specified for thumbnail MaxWidth and MaxHeight settings. If the relative proportions of the input video and thumbnails are different, the thumbnails will be distorted.
        • Keep: Elastic Transcoder does not scale thumbnails. If either dimension of the input video exceeds the values that you specified for thumbnail MaxWidth and MaxHeight settings, Elastic Transcoder crops the thumbnails.
        • ShrinkToFit: Elastic Transcoder scales thumbnails down so that their dimensions match the values that you specified for at least one of thumbnail MaxWidth and MaxHeight without exceeding either value. If you specify this option, Elastic Transcoder does not scale thumbnails up.
        • ShrinkToFill: Elastic Transcoder scales thumbnails down so that their dimensions match the values that you specified for at least one of MaxWidth and MaxHeight without dropping below either value. If you specify this option, Elastic Transcoder does not scale thumbnails up.

        ", "VideoParameters$SizingPolicy": "

        Specify one of the following values to control scaling of the output video:

        • Fit: Elastic Transcoder scales the output video so it matches the value that you specified in either MaxWidth or MaxHeight without exceeding the other value.
        • Fill: Elastic Transcoder scales the output video so it matches the value that you specified in either MaxWidth or MaxHeight and matches or exceeds the other value. Elastic Transcoder centers the output video and then crops it in the dimension (if any) that exceeds the maximum value.
        • Stretch: Elastic Transcoder stretches the output video to match the values that you specified for MaxWidth and MaxHeight. If the relative proportions of the input video and the output video are different, the output video will be distorted.
        • Keep: Elastic Transcoder does not scale the output video. If either dimension of the input video exceeds the values that you specified for MaxWidth and MaxHeight, Elastic Transcoder crops the output video.
        • ShrinkToFit: Elastic Transcoder scales the output video down so that its dimensions match the values that you specified for at least one of MaxWidth and MaxHeight without exceeding either value. If you specify this option, Elastic Transcoder does not scale the video up.
        • ShrinkToFill: Elastic Transcoder scales the output video down so that its dimensions match the values that you specified for at least one of MaxWidth and MaxHeight without dropping below either value. If you specify this option, Elastic Transcoder does not scale the video up.

        " } }, "SnsTopic": { "base": null, "refs": { "Notifications$Progressing": "

        The Amazon Simple Notification Service (Amazon SNS) topic that you want to notify when Elastic Transcoder has started to process the job.

        ", "Notifications$Completed": "

        The Amazon SNS topic that you want to notify when Elastic Transcoder has finished processing the job.

        ", "Notifications$Warning": "

        The Amazon SNS topic that you want to notify when Elastic Transcoder encounters a warning condition.

        ", "Notifications$Error": "

        The Amazon SNS topic that you want to notify when Elastic Transcoder encounters an error condition.

        ", "SnsTopics$member": null } }, "SnsTopics": { "base": null, "refs": { "TestRoleRequest$Topics": "

        The ARNs of one or more Amazon Simple Notification Service (Amazon SNS) topics that you want the action to send a test notification to.

        " } }, "StorageClass": { "base": null, "refs": { "PipelineOutputConfig$StorageClass": "

        The Amazon S3 storage class, Standard or ReducedRedundancy, that you want Elastic Transcoder to assign to the video files and playlists that it stores in your Amazon S3 bucket.

        " } }, "String": { "base": null, "refs": { "CreatePresetResponse$Warning": "

        If the preset settings don't comply with the standards for the video codec but Elastic Transcoder created the preset, this message explains the reason the preset settings don't meet the standard. Elastic Transcoder created the preset because the settings might produce acceptable output.

        ", "ExceptionMessages$member": null, "Job$Arn": "

        The Amazon Resource Name (ARN) for the job.

        ", "JobOutput$Id": "

        A sequential counter, starting with 1, that identifies an output among the outputs from the current job. In the Output syntax, this value is always 1.

        ", "JobOutput$AppliedColorSpaceConversion": "

        If Elastic Transcoder used a preset with a ColorSpaceConversionMode to transcode the output file, the AppliedColorSpaceConversion parameter shows the conversion used. If no ColorSpaceConversionMode was defined in the preset, this parameter will not be included in the job response.

        ", "Pipeline$Arn": "

        The Amazon Resource Name (ARN) for the pipeline.

        ", "Preset$Arn": "

        The Amazon Resource Name (ARN) for the preset.

        ", "UserMetadata$key": null, "UserMetadata$value": null, "Warning$Code": "

        The code of the cross-regional warning.

        ", "Warning$Message": "

        The message explaining what resources are in a different region from the pipeline.

        Note: AWS KMS keys must be in the same region as the pipeline.

        " } }, "Success": { "base": null, "refs": { "TestRoleResponse$Success": "

        If the operation is successful, this value is true; otherwise, the value is false.

        " } }, "Target": { "base": null, "refs": { "PresetWatermark$Target": "

        A value that determines how Elastic Transcoder interprets values that you specified for HorizontalOffset, VerticalOffset, MaxWidth, and MaxHeight:

        • Content: HorizontalOffset and VerticalOffset values are calculated based on the borders of the video excluding black bars added by Elastic Transcoder, if any. In addition, MaxWidth and MaxHeight, if specified as a percentage, are calculated based on the borders of the video excluding black bars added by Elastic Transcoder, if any.
        • Frame: HorizontalOffset and VerticalOffset values are calculated based on the borders of the video including black bars added by Elastic Transcoder, if any.
        • In addition, MaxWidth and MaxHeight, if specified as a percentage, are calculated based on the borders of the video including black bars added by Elastic Transcoder, if any.

        " } }, "TestRoleRequest": { "base": "

        The TestRoleRequest structure.

        ", "refs": { } }, "TestRoleResponse": { "base": "

        The TestRoleResponse structure.

        ", "refs": { } }, "ThumbnailPattern": { "base": null, "refs": { "CreateJobOutput$ThumbnailPattern": "

        Whether you want Elastic Transcoder to create thumbnails for your videos and, if so, how you want Elastic Transcoder to name the files.

        If you don't want Elastic Transcoder to create thumbnails, specify \"\".

        If you do want Elastic Transcoder to create thumbnails, specify the information that you want to include in the file name for each thumbnail. You can specify the following values in any sequence:

        • {count} (Required): If you want to create thumbnails, you must include {count} in the ThumbnailPattern object. Wherever you specify {count}, Elastic Transcoder adds a five-digit sequence number (beginning with 00001) to thumbnail file names. The number indicates where a given thumbnail appears in the sequence of thumbnails for a transcoded file.

          If you specify a literal value and/or {resolution} but you omit {count}, Elastic Transcoder returns a validation error and does not create the job.
        • Literal values (Optional): You can specify literal values anywhere in the ThumbnailPattern object. For example, you can include them as a file name prefix or as a delimiter between {resolution} and {count}.

        • {resolution} (Optional): If you want Elastic Transcoder to include the resolution in the file name, include {resolution} in the ThumbnailPattern object.

        When creating thumbnails, Elastic Transcoder automatically saves the files in the format (.jpg or .png) that appears in the preset that you specified in the PresetID value of CreateJobOutput. Elastic Transcoder also appends the applicable file name extension.

        ", "JobOutput$ThumbnailPattern": "

        Whether you want Elastic Transcoder to create thumbnails for your videos and, if so, how you want Elastic Transcoder to name the files.

        If you don't want Elastic Transcoder to create thumbnails, specify \"\".

        If you do want Elastic Transcoder to create thumbnails, specify the information that you want to include in the file name for each thumbnail. You can specify the following values in any sequence:

        • {count} (Required): If you want to create thumbnails, you must include {count} in the ThumbnailPattern object. Wherever you specify {count}, Elastic Transcoder adds a five-digit sequence number (beginning with 00001) to thumbnail file names. The number indicates where a given thumbnail appears in the sequence of thumbnails for a transcoded file.

          If you specify a literal value and/or {resolution} but you omit {count}, Elastic Transcoder returns a validation error and does not create the job.
        • Literal values (Optional): You can specify literal values anywhere in the ThumbnailPattern object. For example, you can include them as a file name prefix or as a delimiter between {resolution} and {count}.

        • {resolution} (Optional): If you want Elastic Transcoder to include the resolution in the file name, include {resolution} in the ThumbnailPattern object.

        When creating thumbnails, Elastic Transcoder automatically saves the files in the format (.jpg or .png) that appears in the preset that you specified in the PresetID value of CreateJobOutput. Elastic Transcoder also appends the applicable file name extension.

        " } }, "ThumbnailResolution": { "base": null, "refs": { "Thumbnails$Resolution": "

        To better control resolution and aspect ratio of thumbnails, we recommend that you use the values MaxWidth, MaxHeight, SizingPolicy, and PaddingPolicy instead of Resolution and AspectRatio. The two groups of settings are mutually exclusive. Do not use them together.

        The width and height of thumbnail files in pixels. Specify a value in the format width x height where both values are even integers. The values cannot exceed the width and height that you specified in the Video:Resolution object.

        " } }, "Thumbnails": { "base": "

        Thumbnails for videos.

        ", "refs": { "CreatePresetRequest$Thumbnails": "

        A section of the request body that specifies the thumbnail parameters, if any.

        ", "Preset$Thumbnails": "

        A section of the response body that provides information about the thumbnail preset values, if any.

        " } }, "Time": { "base": null, "refs": { "TimeSpan$StartTime": "

        The place in the input file where you want a clip to start. The format can be either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum value: 86399.999). If you don't specify a value, Elastic Transcoder starts at the beginning of the input file.

        ", "TimeSpan$Duration": "

        The duration of the clip. The format can be either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum value: 86399.999). If you don't specify a value, Elastic Transcoder creates an output file from StartTime to the end of the file.

        If you specify a value longer than the duration of the input file, Elastic Transcoder transcodes the file and returns a warning message.

        " } }, "TimeOffset": { "base": null, "refs": { "CaptionSource$TimeOffset": "

        For clip generation or captions that do not start at the same time as the associated video file, the TimeOffset tells Elastic Transcoder how much of the video to encode before including captions.

        Specify the TimeOffset in the form [+-]SS.sss or [+-]HH:mm:SS.ss.

        " } }, "TimeSpan": { "base": "

        Settings that determine when a clip begins and how long it lasts.

        ", "refs": { "Clip$TimeSpan": "

        Settings that determine when a clip begins and how long it lasts.

        " } }, "Timing": { "base": "

        Details about the timing of a job.

        ", "refs": { "Job$Timing": "

        Details about the timing of a job.

        " } }, "UpdatePipelineNotificationsRequest": { "base": "

        The UpdatePipelineNotificationsRequest structure.

        ", "refs": { } }, "UpdatePipelineNotificationsResponse": { "base": "

        The UpdatePipelineNotificationsResponse structure.

        ", "refs": { } }, "UpdatePipelineRequest": { "base": "

        The UpdatePipelineRequest structure.

        ", "refs": { } }, "UpdatePipelineResponse": { "base": "

        When you update a pipeline, Elastic Transcoder returns the values that you specified in the request.

        ", "refs": { } }, "UpdatePipelineStatusRequest": { "base": "

        The UpdatePipelineStatusRequest structure.

        ", "refs": { } }, "UpdatePipelineStatusResponse": { "base": "When you update status for a pipeline, Elastic Transcoder returns the values that you specified in the request.", "refs": { } }, "UserMetadata": { "base": null, "refs": { "CreateJobRequest$UserMetadata": "

        User-defined metadata that you want to associate with an Elastic Transcoder job. You specify metadata in key/value pairs, and you can add up to 10 key/value pairs per job. Elastic Transcoder does not guarantee that key/value pairs will be returned in the same order in which you specify them.

        ", "Job$UserMetadata": "

        User-defined metadata that you want to associate with an Elastic Transcoder job. You specify metadata in key/value pairs, and you can add up to 10 key/value pairs per job. Elastic Transcoder does not guarantee that key/value pairs will be returned in the same order in which you specify them.

        Metadata keys and values must use characters from the following list:

        • 0-9

        • A-Z and a-z

        • Space

        • The following symbols: _.:/=+-%@

        " } }, "ValidationException": { "base": "

        One or more required parameter values were not provided in the request.

        ", "refs": { } }, "VerticalAlign": { "base": null, "refs": { "PresetWatermark$VerticalAlign": "

        The vertical position of the watermark unless you specify a non-zero value for VerticalOffset:

        • Top: The top edge of the watermark is aligned with the top border of the video.
        • Bottom: The bottom edge of the watermark is aligned with the bottom border of the video.
        • Center: The watermark is centered between the top and bottom borders.

        " } }, "VideoBitRate": { "base": null, "refs": { "VideoParameters$BitRate": "

        The bit rate of the video stream in the output file, in kilobits/second. Valid values depend on the values of Level and Profile. If you specify auto, Elastic Transcoder uses the detected bit rate of the input source. If you specify a value other than auto, we recommend that you specify a value less than or equal to the maximum H.264-compliant value listed for your level and profile:

        Level - Maximum video bit rate in kilobits/second (baseline and main Profile) : maximum video bit rate in kilobits/second (high Profile)

        • 1 - 64 : 80
        • 1b - 128 : 160
        • 1.1 - 192 : 240
        • 1.2 - 384 : 480
        • 1.3 - 768 : 960
        • 2 - 2000 : 2500
        • 3 - 10000 : 12500
        • 3.1 - 14000 : 17500
        • 3.2 - 20000 : 25000
        • 4 - 20000 : 25000
        • 4.1 - 50000 : 62500
        " } }, "VideoCodec": { "base": null, "refs": { "VideoParameters$Codec": "

        The video codec for the output file. Valid values include gif, H.264, mpeg2, and vp8. You can only specify vp8 when the container type is webm, gif when the container type is gif, and mpeg2 when the container type is mpg.

        " } }, "VideoParameters": { "base": "

        The VideoParameters structure.

        ", "refs": { "CreatePresetRequest$Video": "

        A section of the request body that specifies the video parameters.

        ", "Preset$Video": "

        A section of the response body that provides information about the video preset values.

        " } }, "Warning": { "base": "

        Elastic Transcoder returns a warning if the resources used by your pipeline are not in the same region as the pipeline.

        Using resources in the same region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS KMS key, reduces processing time and prevents cross-regional charges.

        ", "refs": { "Warnings$member": null } }, "Warnings": { "base": null, "refs": { "CreatePipelineResponse$Warnings": "

        Elastic Transcoder returns a warning if the resources used by your pipeline are not in the same region as the pipeline.

        Using resources in the same region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS KMS key, reduces processing time and prevents cross-regional charges.

        ", "ReadPipelineResponse$Warnings": "

        Elastic Transcoder returns a warning if the resources used by your pipeline are not in the same region as the pipeline.

        Using resources in the same region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS KMS key, reduces processing time and prevents cross-regional charges.

        ", "UpdatePipelineResponse$Warnings": "

        Elastic Transcoder returns a warning if the resources used by your pipeline are not in the same region as the pipeline.

        Using resources in the same region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS KMS key, reduces processing time and prevents cross-regional charges.

        " } }, "WatermarkKey": { "base": null, "refs": { "Artwork$InputKey": "

        The name of the file to be used as album art. To determine which Amazon S3 bucket contains the specified file, Elastic Transcoder checks the pipeline specified by PipelineId; the InputBucket object in that pipeline identifies the bucket.

        If the file name includes a prefix, for example, cooking/pie.jpg, include the prefix in the key. If the file isn't in the specified bucket, Elastic Transcoder returns an error.

        ", "JobWatermark$InputKey": "

        The name of the .png or .jpg file that you want to use for the watermark. To determine which Amazon S3 bucket contains the specified file, Elastic Transcoder checks the pipeline specified by Pipeline; the Input Bucket object in that pipeline identifies the bucket.

        If the file name includes a prefix, for example, logos/128x64.png, include the prefix in the key. If the file isn't in the specified bucket, Elastic Transcoder returns an error.

        " } }, "WatermarkSizingPolicy": { "base": null, "refs": { "PresetWatermark$SizingPolicy": "

        A value that controls scaling of the watermark:

        • Fit: Elastic Transcoder scales the watermark so it matches the value that you specified in either MaxWidth or MaxHeight without exceeding the other value.
        • Stretch: Elastic Transcoder stretches the watermark to match the values that you specified for MaxWidth and MaxHeight. If the relative proportions of the watermark and the values of MaxWidth and MaxHeight are different, the watermark will be distorted.
        • ShrinkToFit: Elastic Transcoder scales the watermark down so that its dimensions match the values that you specified for at least one of MaxWidth and MaxHeight without exceeding either value. If you specify this option, Elastic Transcoder does not scale the watermark up.

        " } }, "ZeroTo255String": { "base": null, "refs": { "Encryption$InitializationVector": "

        The series of random bits created by a random bit generator, unique for every encryption operation, that you used to encrypt your input files or that you want Elastic Transcoder to use to encrypt your output files. The initialization vector must be base64-encoded, and it must be exactly 16 bytes long before being base64-encoded.

        ", "HlsContentProtection$InitializationVector": "

        If Elastic Transcoder is generating your key for you, you must leave this field blank.

        The series of random bits created by a random bit generator, unique for every encryption operation, that you want Elastic Transcoder to use to encrypt your output files. The initialization vector must be base64-encoded, and it must be exactly 16 bytes before being base64-encoded.

        ", "PlayReadyDrm$InitializationVector": "

        The series of random bits created by a random bit generator, unique for every encryption operation, that you want Elastic Transcoder to use to encrypt your files. The initialization vector must be base64-encoded, and it must be exactly 8 bytes long before being base64-encoded. If no initialization vector is provided, Elastic Transcoder generates one for you.

        " } }, "ZeroTo512String": { "base": null, "refs": { "HlsContentProtection$LicenseAcquisitionUrl": "

        The location of the license key required to decrypt your HLS playlist. The URL must be an absolute path, and is referenced in the URI attribute of the EXT-X-KEY metadata tag in the playlist file.

        " } } } } aws-sdk-go-1.4.22/models/apis/elastictranscoder/2012-09-25/paginators-1.json000066400000000000000000000010571300374646400257540ustar00rootroot00000000000000{ "pagination": { "ListJobsByPipeline": { "input_token": "PageToken", "output_token": "NextPageToken", "result_key": "Jobs" }, "ListJobsByStatus": { "input_token": "PageToken", "output_token": "NextPageToken", "result_key": "Jobs" }, "ListPipelines": { "input_token": "PageToken", "output_token": "NextPageToken", "result_key": "Pipelines" }, "ListPresets": { "input_token": "PageToken", "output_token": "NextPageToken", "result_key": "Presets" } } } aws-sdk-go-1.4.22/models/apis/elastictranscoder/2012-09-25/waiters-2.json000066400000000000000000000011451300374646400252620ustar00rootroot00000000000000{ "version": 2, "waiters": { "JobComplete": { "delay": 30, "operation": "ReadJob", "maxAttempts": 120, "acceptors": [ { "expected": "Complete", "matcher": "path", "state": "success", "argument": "Job.Status" }, { "expected": "Canceled", "matcher": "path", "state": "failure", "argument": "Job.Status" }, { "expected": "Error", "matcher": "path", "state": "failure", "argument": "Job.Status" } ] } } } aws-sdk-go-1.4.22/models/apis/email/000077500000000000000000000000001300374646400170715ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/email/2010-12-01/000077500000000000000000000000001300374646400201115ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/email/2010-12-01/api-2.json000066400000000000000000001326261300374646400217260ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2010-12-01", "endpointPrefix":"email", "protocol":"query", "serviceAbbreviation":"Amazon SES", "serviceFullName":"Amazon Simple Email Service", "signatureVersion":"v4", "signingName":"ses", "xmlNamespace":"http://ses.amazonaws.com/doc/2010-12-01/" }, "operations":{ "CloneReceiptRuleSet":{ "name":"CloneReceiptRuleSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CloneReceiptRuleSetRequest"}, "output":{ "shape":"CloneReceiptRuleSetResponse", "resultWrapper":"CloneReceiptRuleSetResult" }, "errors":[ {"shape":"RuleSetDoesNotExistException"}, {"shape":"AlreadyExistsException"}, {"shape":"LimitExceededException"} ] }, "CreateReceiptFilter":{ "name":"CreateReceiptFilter", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateReceiptFilterRequest"}, "output":{ "shape":"CreateReceiptFilterResponse", "resultWrapper":"CreateReceiptFilterResult" }, "errors":[ {"shape":"LimitExceededException"}, {"shape":"AlreadyExistsException"} ] }, "CreateReceiptRule":{ "name":"CreateReceiptRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateReceiptRuleRequest"}, "output":{ "shape":"CreateReceiptRuleResponse", "resultWrapper":"CreateReceiptRuleResult" }, "errors":[ {"shape":"InvalidSnsTopicException"}, {"shape":"InvalidS3ConfigurationException"}, {"shape":"InvalidLambdaFunctionException"}, {"shape":"AlreadyExistsException"}, {"shape":"RuleDoesNotExistException"}, {"shape":"RuleSetDoesNotExistException"}, {"shape":"LimitExceededException"} ] }, "CreateReceiptRuleSet":{ "name":"CreateReceiptRuleSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateReceiptRuleSetRequest"}, "output":{ "shape":"CreateReceiptRuleSetResponse", "resultWrapper":"CreateReceiptRuleSetResult" }, "errors":[ {"shape":"AlreadyExistsException"}, {"shape":"LimitExceededException"} ] }, "DeleteIdentity":{ "name":"DeleteIdentity", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteIdentityRequest"}, "output":{ "shape":"DeleteIdentityResponse", "resultWrapper":"DeleteIdentityResult" } }, "DeleteIdentityPolicy":{ "name":"DeleteIdentityPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteIdentityPolicyRequest"}, "output":{ "shape":"DeleteIdentityPolicyResponse", "resultWrapper":"DeleteIdentityPolicyResult" } }, "DeleteReceiptFilter":{ "name":"DeleteReceiptFilter", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteReceiptFilterRequest"}, "output":{ "shape":"DeleteReceiptFilterResponse", "resultWrapper":"DeleteReceiptFilterResult" } }, "DeleteReceiptRule":{ "name":"DeleteReceiptRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteReceiptRuleRequest"}, "output":{ "shape":"DeleteReceiptRuleResponse", "resultWrapper":"DeleteReceiptRuleResult" }, "errors":[ {"shape":"RuleSetDoesNotExistException"} ] }, "DeleteReceiptRuleSet":{ "name":"DeleteReceiptRuleSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteReceiptRuleSetRequest"}, "output":{ "shape":"DeleteReceiptRuleSetResponse", "resultWrapper":"DeleteReceiptRuleSetResult" }, "errors":[ {"shape":"CannotDeleteException"} ] }, "DeleteVerifiedEmailAddress":{ "name":"DeleteVerifiedEmailAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVerifiedEmailAddressRequest"} }, "DescribeActiveReceiptRuleSet":{ "name":"DescribeActiveReceiptRuleSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeActiveReceiptRuleSetRequest"}, "output":{ "shape":"DescribeActiveReceiptRuleSetResponse", "resultWrapper":"DescribeActiveReceiptRuleSetResult" } }, "DescribeReceiptRule":{ "name":"DescribeReceiptRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReceiptRuleRequest"}, "output":{ "shape":"DescribeReceiptRuleResponse", "resultWrapper":"DescribeReceiptRuleResult" }, "errors":[ {"shape":"RuleDoesNotExistException"}, {"shape":"RuleSetDoesNotExistException"} ] }, "DescribeReceiptRuleSet":{ "name":"DescribeReceiptRuleSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReceiptRuleSetRequest"}, "output":{ "shape":"DescribeReceiptRuleSetResponse", "resultWrapper":"DescribeReceiptRuleSetResult" }, "errors":[ {"shape":"RuleSetDoesNotExistException"} ] }, "GetIdentityDkimAttributes":{ "name":"GetIdentityDkimAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetIdentityDkimAttributesRequest"}, "output":{ "shape":"GetIdentityDkimAttributesResponse", "resultWrapper":"GetIdentityDkimAttributesResult" } }, "GetIdentityMailFromDomainAttributes":{ "name":"GetIdentityMailFromDomainAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetIdentityMailFromDomainAttributesRequest"}, "output":{ "shape":"GetIdentityMailFromDomainAttributesResponse", "resultWrapper":"GetIdentityMailFromDomainAttributesResult" } }, "GetIdentityNotificationAttributes":{ "name":"GetIdentityNotificationAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetIdentityNotificationAttributesRequest"}, "output":{ "shape":"GetIdentityNotificationAttributesResponse", "resultWrapper":"GetIdentityNotificationAttributesResult" } }, "GetIdentityPolicies":{ "name":"GetIdentityPolicies", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetIdentityPoliciesRequest"}, "output":{ "shape":"GetIdentityPoliciesResponse", "resultWrapper":"GetIdentityPoliciesResult" } }, "GetIdentityVerificationAttributes":{ "name":"GetIdentityVerificationAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetIdentityVerificationAttributesRequest"}, "output":{ "shape":"GetIdentityVerificationAttributesResponse", "resultWrapper":"GetIdentityVerificationAttributesResult" } }, "GetSendQuota":{ "name":"GetSendQuota", "http":{ "method":"POST", "requestUri":"/" }, "output":{ "shape":"GetSendQuotaResponse", "resultWrapper":"GetSendQuotaResult" } }, "GetSendStatistics":{ "name":"GetSendStatistics", "http":{ "method":"POST", "requestUri":"/" }, "output":{ "shape":"GetSendStatisticsResponse", "resultWrapper":"GetSendStatisticsResult" } }, "ListIdentities":{ "name":"ListIdentities", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListIdentitiesRequest"}, "output":{ "shape":"ListIdentitiesResponse", "resultWrapper":"ListIdentitiesResult" } }, "ListIdentityPolicies":{ "name":"ListIdentityPolicies", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListIdentityPoliciesRequest"}, "output":{ "shape":"ListIdentityPoliciesResponse", "resultWrapper":"ListIdentityPoliciesResult" } }, "ListReceiptFilters":{ "name":"ListReceiptFilters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListReceiptFiltersRequest"}, "output":{ "shape":"ListReceiptFiltersResponse", "resultWrapper":"ListReceiptFiltersResult" } }, "ListReceiptRuleSets":{ "name":"ListReceiptRuleSets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListReceiptRuleSetsRequest"}, "output":{ "shape":"ListReceiptRuleSetsResponse", "resultWrapper":"ListReceiptRuleSetsResult" } }, "ListVerifiedEmailAddresses":{ "name":"ListVerifiedEmailAddresses", "http":{ "method":"POST", "requestUri":"/" }, "output":{ "shape":"ListVerifiedEmailAddressesResponse", "resultWrapper":"ListVerifiedEmailAddressesResult" } }, "PutIdentityPolicy":{ "name":"PutIdentityPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutIdentityPolicyRequest"}, "output":{ "shape":"PutIdentityPolicyResponse", "resultWrapper":"PutIdentityPolicyResult" }, "errors":[ {"shape":"InvalidPolicyException"} ] }, "ReorderReceiptRuleSet":{ "name":"ReorderReceiptRuleSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReorderReceiptRuleSetRequest"}, "output":{ "shape":"ReorderReceiptRuleSetResponse", "resultWrapper":"ReorderReceiptRuleSetResult" }, "errors":[ {"shape":"RuleSetDoesNotExistException"}, {"shape":"RuleDoesNotExistException"} ] }, "SendBounce":{ "name":"SendBounce", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SendBounceRequest"}, "output":{ "shape":"SendBounceResponse", "resultWrapper":"SendBounceResult" }, "errors":[ {"shape":"MessageRejected"} ] }, "SendEmail":{ "name":"SendEmail", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SendEmailRequest"}, "output":{ "shape":"SendEmailResponse", "resultWrapper":"SendEmailResult" }, "errors":[ {"shape":"MessageRejected"}, {"shape":"MailFromDomainNotVerifiedException"} ] }, "SendRawEmail":{ "name":"SendRawEmail", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SendRawEmailRequest"}, "output":{ "shape":"SendRawEmailResponse", "resultWrapper":"SendRawEmailResult" }, "errors":[ {"shape":"MessageRejected"}, {"shape":"MailFromDomainNotVerifiedException"} ] }, "SetActiveReceiptRuleSet":{ "name":"SetActiveReceiptRuleSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetActiveReceiptRuleSetRequest"}, "output":{ "shape":"SetActiveReceiptRuleSetResponse", "resultWrapper":"SetActiveReceiptRuleSetResult" }, "errors":[ {"shape":"RuleSetDoesNotExistException"} ] }, "SetIdentityDkimEnabled":{ "name":"SetIdentityDkimEnabled", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetIdentityDkimEnabledRequest"}, "output":{ "shape":"SetIdentityDkimEnabledResponse", "resultWrapper":"SetIdentityDkimEnabledResult" } }, "SetIdentityFeedbackForwardingEnabled":{ "name":"SetIdentityFeedbackForwardingEnabled", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetIdentityFeedbackForwardingEnabledRequest"}, "output":{ "shape":"SetIdentityFeedbackForwardingEnabledResponse", "resultWrapper":"SetIdentityFeedbackForwardingEnabledResult" } }, "SetIdentityHeadersInNotificationsEnabled":{ "name":"SetIdentityHeadersInNotificationsEnabled", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetIdentityHeadersInNotificationsEnabledRequest"}, "output":{ "shape":"SetIdentityHeadersInNotificationsEnabledResponse", "resultWrapper":"SetIdentityHeadersInNotificationsEnabledResult" } }, "SetIdentityMailFromDomain":{ "name":"SetIdentityMailFromDomain", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetIdentityMailFromDomainRequest"}, "output":{ "shape":"SetIdentityMailFromDomainResponse", "resultWrapper":"SetIdentityMailFromDomainResult" } }, "SetIdentityNotificationTopic":{ "name":"SetIdentityNotificationTopic", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetIdentityNotificationTopicRequest"}, "output":{ "shape":"SetIdentityNotificationTopicResponse", "resultWrapper":"SetIdentityNotificationTopicResult" } }, "SetReceiptRulePosition":{ "name":"SetReceiptRulePosition", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetReceiptRulePositionRequest"}, "output":{ "shape":"SetReceiptRulePositionResponse", "resultWrapper":"SetReceiptRulePositionResult" }, "errors":[ {"shape":"RuleSetDoesNotExistException"}, {"shape":"RuleDoesNotExistException"} ] }, "UpdateReceiptRule":{ "name":"UpdateReceiptRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateReceiptRuleRequest"}, "output":{ "shape":"UpdateReceiptRuleResponse", "resultWrapper":"UpdateReceiptRuleResult" }, "errors":[ {"shape":"InvalidSnsTopicException"}, {"shape":"InvalidS3ConfigurationException"}, {"shape":"InvalidLambdaFunctionException"}, {"shape":"RuleSetDoesNotExistException"}, {"shape":"RuleDoesNotExistException"}, {"shape":"LimitExceededException"} ] }, "VerifyDomainDkim":{ "name":"VerifyDomainDkim", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"VerifyDomainDkimRequest"}, "output":{ "shape":"VerifyDomainDkimResponse", "resultWrapper":"VerifyDomainDkimResult" } }, "VerifyDomainIdentity":{ "name":"VerifyDomainIdentity", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"VerifyDomainIdentityRequest"}, "output":{ "shape":"VerifyDomainIdentityResponse", "resultWrapper":"VerifyDomainIdentityResult" } }, "VerifyEmailAddress":{ "name":"VerifyEmailAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"VerifyEmailAddressRequest"} }, "VerifyEmailIdentity":{ "name":"VerifyEmailIdentity", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"VerifyEmailIdentityRequest"}, "output":{ "shape":"VerifyEmailIdentityResponse", "resultWrapper":"VerifyEmailIdentityResult" } } }, "shapes":{ "AddHeaderAction":{ "type":"structure", "required":[ "HeaderName", "HeaderValue" ], "members":{ "HeaderName":{"shape":"HeaderName"}, "HeaderValue":{"shape":"HeaderValue"} } }, "Address":{"type":"string"}, "AddressList":{ "type":"list", "member":{"shape":"Address"} }, "AlreadyExistsException":{ "type":"structure", "members":{ "Name":{"shape":"RuleOrRuleSetName"} }, "error":{ "code":"AlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "AmazonResourceName":{"type":"string"}, "ArrivalDate":{"type":"timestamp"}, "BehaviorOnMXFailure":{ "type":"string", "enum":[ "UseDefaultValue", "RejectMessage" ] }, "Body":{ "type":"structure", "members":{ "Text":{"shape":"Content"}, "Html":{"shape":"Content"} } }, "BounceAction":{ "type":"structure", "required":[ "SmtpReplyCode", "Message", "Sender" ], "members":{ "TopicArn":{"shape":"AmazonResourceName"}, "SmtpReplyCode":{"shape":"BounceSmtpReplyCode"}, "StatusCode":{"shape":"BounceStatusCode"}, "Message":{"shape":"BounceMessage"}, "Sender":{"shape":"Address"} } }, "BounceMessage":{"type":"string"}, "BounceSmtpReplyCode":{"type":"string"}, "BounceStatusCode":{"type":"string"}, "BounceType":{ "type":"string", "enum":[ "DoesNotExist", "MessageTooLarge", "ExceededQuota", "ContentRejected", "Undefined", "TemporaryFailure" ] }, "BouncedRecipientInfo":{ "type":"structure", "required":["Recipient"], "members":{ "Recipient":{"shape":"Address"}, "RecipientArn":{"shape":"AmazonResourceName"}, "BounceType":{"shape":"BounceType"}, "RecipientDsnFields":{"shape":"RecipientDsnFields"} } }, "BouncedRecipientInfoList":{ "type":"list", "member":{"shape":"BouncedRecipientInfo"} }, "CannotDeleteException":{ "type":"structure", "members":{ "Name":{"shape":"RuleOrRuleSetName"} }, "error":{ "code":"CannotDelete", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Charset":{"type":"string"}, "Cidr":{"type":"string"}, "CloneReceiptRuleSetRequest":{ "type":"structure", "required":[ "RuleSetName", "OriginalRuleSetName" ], "members":{ "RuleSetName":{"shape":"ReceiptRuleSetName"}, "OriginalRuleSetName":{"shape":"ReceiptRuleSetName"} } }, "CloneReceiptRuleSetResponse":{ "type":"structure", "members":{ } }, "Content":{ "type":"structure", "required":["Data"], "members":{ "Data":{"shape":"MessageData"}, "Charset":{"shape":"Charset"} } }, "Counter":{"type":"long"}, "CreateReceiptFilterRequest":{ "type":"structure", "required":["Filter"], "members":{ "Filter":{"shape":"ReceiptFilter"} } }, "CreateReceiptFilterResponse":{ "type":"structure", "members":{ } }, "CreateReceiptRuleRequest":{ "type":"structure", "required":[ "RuleSetName", "Rule" ], "members":{ "RuleSetName":{"shape":"ReceiptRuleSetName"}, "After":{"shape":"ReceiptRuleName"}, "Rule":{"shape":"ReceiptRule"} } }, "CreateReceiptRuleResponse":{ "type":"structure", "members":{ } }, "CreateReceiptRuleSetRequest":{ "type":"structure", "required":["RuleSetName"], "members":{ "RuleSetName":{"shape":"ReceiptRuleSetName"} } }, "CreateReceiptRuleSetResponse":{ "type":"structure", "members":{ } }, "CustomMailFromStatus":{ "type":"string", "enum":[ "Pending", "Success", "Failed", "TemporaryFailure" ] }, "DeleteIdentityPolicyRequest":{ "type":"structure", "required":[ "Identity", "PolicyName" ], "members":{ "Identity":{"shape":"Identity"}, "PolicyName":{"shape":"PolicyName"} } }, "DeleteIdentityPolicyResponse":{ "type":"structure", "members":{ } }, "DeleteIdentityRequest":{ "type":"structure", "required":["Identity"], "members":{ "Identity":{"shape":"Identity"} } }, "DeleteIdentityResponse":{ "type":"structure", "members":{ } }, "DeleteReceiptFilterRequest":{ "type":"structure", "required":["FilterName"], "members":{ "FilterName":{"shape":"ReceiptFilterName"} } }, "DeleteReceiptFilterResponse":{ "type":"structure", "members":{ } }, "DeleteReceiptRuleRequest":{ "type":"structure", "required":[ "RuleSetName", "RuleName" ], "members":{ "RuleSetName":{"shape":"ReceiptRuleSetName"}, "RuleName":{"shape":"ReceiptRuleName"} } }, "DeleteReceiptRuleResponse":{ "type":"structure", "members":{ } }, "DeleteReceiptRuleSetRequest":{ "type":"structure", "required":["RuleSetName"], "members":{ "RuleSetName":{"shape":"ReceiptRuleSetName"} } }, "DeleteReceiptRuleSetResponse":{ "type":"structure", "members":{ } }, "DeleteVerifiedEmailAddressRequest":{ "type":"structure", "required":["EmailAddress"], "members":{ "EmailAddress":{"shape":"Address"} } }, "DescribeActiveReceiptRuleSetRequest":{ "type":"structure", "members":{ } }, "DescribeActiveReceiptRuleSetResponse":{ "type":"structure", "members":{ "Metadata":{"shape":"ReceiptRuleSetMetadata"}, "Rules":{"shape":"ReceiptRulesList"} } }, "DescribeReceiptRuleRequest":{ "type":"structure", "required":[ "RuleSetName", "RuleName" ], "members":{ "RuleSetName":{"shape":"ReceiptRuleSetName"}, "RuleName":{"shape":"ReceiptRuleName"} } }, "DescribeReceiptRuleResponse":{ "type":"structure", "members":{ "Rule":{"shape":"ReceiptRule"} } }, "DescribeReceiptRuleSetRequest":{ "type":"structure", "required":["RuleSetName"], "members":{ "RuleSetName":{"shape":"ReceiptRuleSetName"} } }, "DescribeReceiptRuleSetResponse":{ "type":"structure", "members":{ "Metadata":{"shape":"ReceiptRuleSetMetadata"}, "Rules":{"shape":"ReceiptRulesList"} } }, "Destination":{ "type":"structure", "members":{ "ToAddresses":{"shape":"AddressList"}, "CcAddresses":{"shape":"AddressList"}, "BccAddresses":{"shape":"AddressList"} } }, "DiagnosticCode":{"type":"string"}, "DkimAttributes":{ "type":"map", "key":{"shape":"Identity"}, "value":{"shape":"IdentityDkimAttributes"} }, "Domain":{"type":"string"}, "DsnAction":{ "type":"string", "enum":[ "failed", "delayed", "delivered", "relayed", "expanded" ] }, "DsnStatus":{"type":"string"}, "Enabled":{"type":"boolean"}, "Explanation":{"type":"string"}, "ExtensionField":{ "type":"structure", "required":[ "Name", "Value" ], "members":{ "Name":{"shape":"ExtensionFieldName"}, "Value":{"shape":"ExtensionFieldValue"} } }, "ExtensionFieldList":{ "type":"list", "member":{"shape":"ExtensionField"} }, "ExtensionFieldName":{"type":"string"}, "ExtensionFieldValue":{"type":"string"}, "GetIdentityDkimAttributesRequest":{ "type":"structure", "required":["Identities"], "members":{ "Identities":{"shape":"IdentityList"} } }, "GetIdentityDkimAttributesResponse":{ "type":"structure", "required":["DkimAttributes"], "members":{ "DkimAttributes":{"shape":"DkimAttributes"} } }, "GetIdentityMailFromDomainAttributesRequest":{ "type":"structure", "required":["Identities"], "members":{ "Identities":{"shape":"IdentityList"} } }, "GetIdentityMailFromDomainAttributesResponse":{ "type":"structure", "required":["MailFromDomainAttributes"], "members":{ "MailFromDomainAttributes":{"shape":"MailFromDomainAttributes"} } }, "GetIdentityNotificationAttributesRequest":{ "type":"structure", "required":["Identities"], "members":{ "Identities":{"shape":"IdentityList"} } }, "GetIdentityNotificationAttributesResponse":{ "type":"structure", "required":["NotificationAttributes"], "members":{ "NotificationAttributes":{"shape":"NotificationAttributes"} } }, "GetIdentityPoliciesRequest":{ "type":"structure", "required":[ "Identity", "PolicyNames" ], "members":{ "Identity":{"shape":"Identity"}, "PolicyNames":{"shape":"PolicyNameList"} } }, "GetIdentityPoliciesResponse":{ "type":"structure", "required":["Policies"], "members":{ "Policies":{"shape":"PolicyMap"} } }, "GetIdentityVerificationAttributesRequest":{ "type":"structure", "required":["Identities"], "members":{ "Identities":{"shape":"IdentityList"} } }, "GetIdentityVerificationAttributesResponse":{ "type":"structure", "required":["VerificationAttributes"], "members":{ "VerificationAttributes":{"shape":"VerificationAttributes"} } }, "GetSendQuotaResponse":{ "type":"structure", "members":{ "Max24HourSend":{"shape":"Max24HourSend"}, "MaxSendRate":{"shape":"MaxSendRate"}, "SentLast24Hours":{"shape":"SentLast24Hours"} } }, "GetSendStatisticsResponse":{ "type":"structure", "members":{ "SendDataPoints":{"shape":"SendDataPointList"} } }, "HeaderName":{"type":"string"}, "HeaderValue":{"type":"string"}, "Identity":{"type":"string"}, "IdentityDkimAttributes":{ "type":"structure", "required":[ "DkimEnabled", "DkimVerificationStatus" ], "members":{ "DkimEnabled":{"shape":"Enabled"}, "DkimVerificationStatus":{"shape":"VerificationStatus"}, "DkimTokens":{"shape":"VerificationTokenList"} } }, "IdentityList":{ "type":"list", "member":{"shape":"Identity"} }, "IdentityMailFromDomainAttributes":{ "type":"structure", "required":[ "MailFromDomain", "MailFromDomainStatus", "BehaviorOnMXFailure" ], "members":{ "MailFromDomain":{"shape":"MailFromDomainName"}, "MailFromDomainStatus":{"shape":"CustomMailFromStatus"}, "BehaviorOnMXFailure":{"shape":"BehaviorOnMXFailure"} } }, "IdentityNotificationAttributes":{ "type":"structure", "required":[ "BounceTopic", "ComplaintTopic", "DeliveryTopic", "ForwardingEnabled" ], "members":{ "BounceTopic":{"shape":"NotificationTopic"}, "ComplaintTopic":{"shape":"NotificationTopic"}, "DeliveryTopic":{"shape":"NotificationTopic"}, "ForwardingEnabled":{"shape":"Enabled"}, "HeadersInBounceNotificationsEnabled":{"shape":"Enabled"}, "HeadersInComplaintNotificationsEnabled":{"shape":"Enabled"}, "HeadersInDeliveryNotificationsEnabled":{"shape":"Enabled"} } }, "IdentityType":{ "type":"string", "enum":[ "EmailAddress", "Domain" ] }, "IdentityVerificationAttributes":{ "type":"structure", "required":["VerificationStatus"], "members":{ "VerificationStatus":{"shape":"VerificationStatus"}, "VerificationToken":{"shape":"VerificationToken"} } }, "InvalidLambdaFunctionException":{ "type":"structure", "members":{ "FunctionArn":{"shape":"AmazonResourceName"} }, "error":{ "code":"InvalidLambdaFunction", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidPolicyException":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidPolicy", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidS3ConfigurationException":{ "type":"structure", "members":{ "Bucket":{"shape":"S3BucketName"} }, "error":{ "code":"InvalidS3Configuration", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidSnsTopicException":{ "type":"structure", "members":{ "Topic":{"shape":"AmazonResourceName"} }, "error":{ "code":"InvalidSnsTopic", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvocationType":{ "type":"string", "enum":[ "Event", "RequestResponse" ] }, "LambdaAction":{ "type":"structure", "required":["FunctionArn"], "members":{ "TopicArn":{"shape":"AmazonResourceName"}, "FunctionArn":{"shape":"AmazonResourceName"}, "InvocationType":{"shape":"InvocationType"} } }, "LastAttemptDate":{"type":"timestamp"}, "LimitExceededException":{ "type":"structure", "members":{ }, "error":{ "code":"LimitExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ListIdentitiesRequest":{ "type":"structure", "members":{ "IdentityType":{"shape":"IdentityType"}, "NextToken":{"shape":"NextToken"}, "MaxItems":{"shape":"MaxItems"} } }, "ListIdentitiesResponse":{ "type":"structure", "required":["Identities"], "members":{ "Identities":{"shape":"IdentityList"}, "NextToken":{"shape":"NextToken"} } }, "ListIdentityPoliciesRequest":{ "type":"structure", "required":["Identity"], "members":{ "Identity":{"shape":"Identity"} } }, "ListIdentityPoliciesResponse":{ "type":"structure", "required":["PolicyNames"], "members":{ "PolicyNames":{"shape":"PolicyNameList"} } }, "ListReceiptFiltersRequest":{ "type":"structure", "members":{ } }, "ListReceiptFiltersResponse":{ "type":"structure", "members":{ "Filters":{"shape":"ReceiptFilterList"} } }, "ListReceiptRuleSetsRequest":{ "type":"structure", "members":{ "NextToken":{"shape":"NextToken"} } }, "ListReceiptRuleSetsResponse":{ "type":"structure", "members":{ "RuleSets":{"shape":"ReceiptRuleSetsLists"}, "NextToken":{"shape":"NextToken"} } }, "ListVerifiedEmailAddressesResponse":{ "type":"structure", "members":{ "VerifiedEmailAddresses":{"shape":"AddressList"} } }, "MailFromDomainAttributes":{ "type":"map", "key":{"shape":"Identity"}, "value":{"shape":"IdentityMailFromDomainAttributes"} }, "MailFromDomainName":{"type":"string"}, "MailFromDomainNotVerifiedException":{ "type":"structure", "members":{ }, "error":{ "code":"MailFromDomainNotVerifiedException", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Max24HourSend":{"type":"double"}, "MaxItems":{"type":"integer"}, "MaxSendRate":{"type":"double"}, "Message":{ "type":"structure", "required":[ "Subject", "Body" ], "members":{ "Subject":{"shape":"Content"}, "Body":{"shape":"Body"} } }, "MessageData":{"type":"string"}, "MessageDsn":{ "type":"structure", "required":["ReportingMta"], "members":{ "ReportingMta":{"shape":"ReportingMta"}, "ArrivalDate":{"shape":"ArrivalDate"}, "ExtensionFields":{"shape":"ExtensionFieldList"} } }, "MessageId":{"type":"string"}, "MessageRejected":{ "type":"structure", "members":{ }, "error":{ "code":"MessageRejected", "httpStatusCode":400, "senderFault":true }, "exception":true }, "NextToken":{"type":"string"}, "NotificationAttributes":{ "type":"map", "key":{"shape":"Identity"}, "value":{"shape":"IdentityNotificationAttributes"} }, "NotificationTopic":{"type":"string"}, "NotificationType":{ "type":"string", "enum":[ "Bounce", "Complaint", "Delivery" ] }, "Policy":{ "type":"string", "min":1 }, "PolicyMap":{ "type":"map", "key":{"shape":"PolicyName"}, "value":{"shape":"Policy"} }, "PolicyName":{ "type":"string", "max":64, "min":1 }, "PolicyNameList":{ "type":"list", "member":{"shape":"PolicyName"} }, "PutIdentityPolicyRequest":{ "type":"structure", "required":[ "Identity", "PolicyName", "Policy" ], "members":{ "Identity":{"shape":"Identity"}, "PolicyName":{"shape":"PolicyName"}, "Policy":{"shape":"Policy"} } }, "PutIdentityPolicyResponse":{ "type":"structure", "members":{ } }, "RawMessage":{ "type":"structure", "required":["Data"], "members":{ "Data":{"shape":"RawMessageData"} } }, "RawMessageData":{"type":"blob"}, "ReceiptAction":{ "type":"structure", "members":{ "S3Action":{"shape":"S3Action"}, "BounceAction":{"shape":"BounceAction"}, "WorkmailAction":{"shape":"WorkmailAction"}, "LambdaAction":{"shape":"LambdaAction"}, "StopAction":{"shape":"StopAction"}, "AddHeaderAction":{"shape":"AddHeaderAction"}, "SNSAction":{"shape":"SNSAction"} } }, "ReceiptActionsList":{ "type":"list", "member":{"shape":"ReceiptAction"} }, "ReceiptFilter":{ "type":"structure", "required":[ "Name", "IpFilter" ], "members":{ "Name":{"shape":"ReceiptFilterName"}, "IpFilter":{"shape":"ReceiptIpFilter"} } }, "ReceiptFilterList":{ "type":"list", "member":{"shape":"ReceiptFilter"} }, "ReceiptFilterName":{"type":"string"}, "ReceiptFilterPolicy":{ "type":"string", "enum":[ "Block", "Allow" ] }, "ReceiptIpFilter":{ "type":"structure", "required":[ "Policy", "Cidr" ], "members":{ "Policy":{"shape":"ReceiptFilterPolicy"}, "Cidr":{"shape":"Cidr"} } }, "ReceiptRule":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"ReceiptRuleName"}, "Enabled":{"shape":"Enabled"}, "TlsPolicy":{"shape":"TlsPolicy"}, "Recipients":{"shape":"RecipientsList"}, "Actions":{"shape":"ReceiptActionsList"}, "ScanEnabled":{"shape":"Enabled"} } }, "ReceiptRuleName":{"type":"string"}, "ReceiptRuleNamesList":{ "type":"list", "member":{"shape":"ReceiptRuleName"} }, "ReceiptRuleSetMetadata":{ "type":"structure", "members":{ "Name":{"shape":"ReceiptRuleSetName"}, "CreatedTimestamp":{"shape":"Timestamp"} } }, "ReceiptRuleSetName":{"type":"string"}, "ReceiptRuleSetsLists":{ "type":"list", "member":{"shape":"ReceiptRuleSetMetadata"} }, "ReceiptRulesList":{ "type":"list", "member":{"shape":"ReceiptRule"} }, "Recipient":{"type":"string"}, "RecipientDsnFields":{ "type":"structure", "required":[ "Action", "Status" ], "members":{ "FinalRecipient":{"shape":"Address"}, "Action":{"shape":"DsnAction"}, "RemoteMta":{"shape":"RemoteMta"}, "Status":{"shape":"DsnStatus"}, "DiagnosticCode":{"shape":"DiagnosticCode"}, "LastAttemptDate":{"shape":"LastAttemptDate"}, "ExtensionFields":{"shape":"ExtensionFieldList"} } }, "RecipientsList":{ "type":"list", "member":{"shape":"Recipient"} }, "RemoteMta":{"type":"string"}, "ReorderReceiptRuleSetRequest":{ "type":"structure", "required":[ "RuleSetName", "RuleNames" ], "members":{ "RuleSetName":{"shape":"ReceiptRuleSetName"}, "RuleNames":{"shape":"ReceiptRuleNamesList"} } }, "ReorderReceiptRuleSetResponse":{ "type":"structure", "members":{ } }, "ReportingMta":{"type":"string"}, "RuleDoesNotExistException":{ "type":"structure", "members":{ "Name":{"shape":"RuleOrRuleSetName"} }, "error":{ "code":"RuleDoesNotExist", "httpStatusCode":400, "senderFault":true }, "exception":true }, "RuleOrRuleSetName":{"type":"string"}, "RuleSetDoesNotExistException":{ "type":"structure", "members":{ "Name":{"shape":"RuleOrRuleSetName"} }, "error":{ "code":"RuleSetDoesNotExist", "httpStatusCode":400, "senderFault":true }, "exception":true }, "S3Action":{ "type":"structure", "required":["BucketName"], "members":{ "TopicArn":{"shape":"AmazonResourceName"}, "BucketName":{"shape":"S3BucketName"}, "ObjectKeyPrefix":{"shape":"S3KeyPrefix"}, "KmsKeyArn":{"shape":"AmazonResourceName"} } }, "S3BucketName":{"type":"string"}, "S3KeyPrefix":{"type":"string"}, "SNSAction":{ "type":"structure", "required":["TopicArn"], "members":{ "TopicArn":{"shape":"AmazonResourceName"}, "Encoding":{"shape":"SNSActionEncoding"} } }, "SNSActionEncoding":{ "type":"string", "enum":[ "UTF-8", "Base64" ] }, "SendBounceRequest":{ "type":"structure", "required":[ "OriginalMessageId", "BounceSender", "BouncedRecipientInfoList" ], "members":{ "OriginalMessageId":{"shape":"MessageId"}, "BounceSender":{"shape":"Address"}, "Explanation":{"shape":"Explanation"}, "MessageDsn":{"shape":"MessageDsn"}, "BouncedRecipientInfoList":{"shape":"BouncedRecipientInfoList"}, "BounceSenderArn":{"shape":"AmazonResourceName"} } }, "SendBounceResponse":{ "type":"structure", "members":{ "MessageId":{"shape":"MessageId"} } }, "SendDataPoint":{ "type":"structure", "members":{ "Timestamp":{"shape":"Timestamp"}, "DeliveryAttempts":{"shape":"Counter"}, "Bounces":{"shape":"Counter"}, "Complaints":{"shape":"Counter"}, "Rejects":{"shape":"Counter"} } }, "SendDataPointList":{ "type":"list", "member":{"shape":"SendDataPoint"} }, "SendEmailRequest":{ "type":"structure", "required":[ "Source", "Destination", "Message" ], "members":{ "Source":{"shape":"Address"}, "Destination":{"shape":"Destination"}, "Message":{"shape":"Message"}, "ReplyToAddresses":{"shape":"AddressList"}, "ReturnPath":{"shape":"Address"}, "SourceArn":{"shape":"AmazonResourceName"}, "ReturnPathArn":{"shape":"AmazonResourceName"} } }, "SendEmailResponse":{ "type":"structure", "required":["MessageId"], "members":{ "MessageId":{"shape":"MessageId"} } }, "SendRawEmailRequest":{ "type":"structure", "required":["RawMessage"], "members":{ "Source":{"shape":"Address"}, "Destinations":{"shape":"AddressList"}, "RawMessage":{"shape":"RawMessage"}, "FromArn":{"shape":"AmazonResourceName"}, "SourceArn":{"shape":"AmazonResourceName"}, "ReturnPathArn":{"shape":"AmazonResourceName"} } }, "SendRawEmailResponse":{ "type":"structure", "required":["MessageId"], "members":{ "MessageId":{"shape":"MessageId"} } }, "SentLast24Hours":{"type":"double"}, "SetActiveReceiptRuleSetRequest":{ "type":"structure", "members":{ "RuleSetName":{"shape":"ReceiptRuleSetName"} } }, "SetActiveReceiptRuleSetResponse":{ "type":"structure", "members":{ } }, "SetIdentityDkimEnabledRequest":{ "type":"structure", "required":[ "Identity", "DkimEnabled" ], "members":{ "Identity":{"shape":"Identity"}, "DkimEnabled":{"shape":"Enabled"} } }, "SetIdentityDkimEnabledResponse":{ "type":"structure", "members":{ } }, "SetIdentityFeedbackForwardingEnabledRequest":{ "type":"structure", "required":[ "Identity", "ForwardingEnabled" ], "members":{ "Identity":{"shape":"Identity"}, "ForwardingEnabled":{"shape":"Enabled"} } }, "SetIdentityFeedbackForwardingEnabledResponse":{ "type":"structure", "members":{ } }, "SetIdentityHeadersInNotificationsEnabledRequest":{ "type":"structure", "required":[ "Identity", "NotificationType", "Enabled" ], "members":{ "Identity":{"shape":"Identity"}, "NotificationType":{"shape":"NotificationType"}, "Enabled":{"shape":"Enabled"} } }, "SetIdentityHeadersInNotificationsEnabledResponse":{ "type":"structure", "members":{ } }, "SetIdentityMailFromDomainRequest":{ "type":"structure", "required":["Identity"], "members":{ "Identity":{"shape":"Identity"}, "MailFromDomain":{"shape":"MailFromDomainName"}, "BehaviorOnMXFailure":{"shape":"BehaviorOnMXFailure"} } }, "SetIdentityMailFromDomainResponse":{ "type":"structure", "members":{ } }, "SetIdentityNotificationTopicRequest":{ "type":"structure", "required":[ "Identity", "NotificationType" ], "members":{ "Identity":{"shape":"Identity"}, "NotificationType":{"shape":"NotificationType"}, "SnsTopic":{"shape":"NotificationTopic"} } }, "SetIdentityNotificationTopicResponse":{ "type":"structure", "members":{ } }, "SetReceiptRulePositionRequest":{ "type":"structure", "required":[ "RuleSetName", "RuleName" ], "members":{ "RuleSetName":{"shape":"ReceiptRuleSetName"}, "RuleName":{"shape":"ReceiptRuleName"}, "After":{"shape":"ReceiptRuleName"} } }, "SetReceiptRulePositionResponse":{ "type":"structure", "members":{ } }, "StopAction":{ "type":"structure", "required":["Scope"], "members":{ "Scope":{"shape":"StopScope"}, "TopicArn":{"shape":"AmazonResourceName"} } }, "StopScope":{ "type":"string", "enum":["RuleSet"] }, "Timestamp":{"type":"timestamp"}, "TlsPolicy":{ "type":"string", "enum":[ "Require", "Optional" ] }, "UpdateReceiptRuleRequest":{ "type":"structure", "required":[ "RuleSetName", "Rule" ], "members":{ "RuleSetName":{"shape":"ReceiptRuleSetName"}, "Rule":{"shape":"ReceiptRule"} } }, "UpdateReceiptRuleResponse":{ "type":"structure", "members":{ } }, "VerificationAttributes":{ "type":"map", "key":{"shape":"Identity"}, "value":{"shape":"IdentityVerificationAttributes"} }, "VerificationStatus":{ "type":"string", "enum":[ "Pending", "Success", "Failed", "TemporaryFailure", "NotStarted" ] }, "VerificationToken":{"type":"string"}, "VerificationTokenList":{ "type":"list", "member":{"shape":"VerificationToken"} }, "VerifyDomainDkimRequest":{ "type":"structure", "required":["Domain"], "members":{ "Domain":{"shape":"Domain"} } }, "VerifyDomainDkimResponse":{ "type":"structure", "required":["DkimTokens"], "members":{ "DkimTokens":{"shape":"VerificationTokenList"} } }, "VerifyDomainIdentityRequest":{ "type":"structure", "required":["Domain"], "members":{ "Domain":{"shape":"Domain"} } }, "VerifyDomainIdentityResponse":{ "type":"structure", "required":["VerificationToken"], "members":{ "VerificationToken":{"shape":"VerificationToken"} } }, "VerifyEmailAddressRequest":{ "type":"structure", "required":["EmailAddress"], "members":{ "EmailAddress":{"shape":"Address"} } }, "VerifyEmailIdentityRequest":{ "type":"structure", "required":["EmailAddress"], "members":{ "EmailAddress":{"shape":"Address"} } }, "VerifyEmailIdentityResponse":{ "type":"structure", "members":{ } }, "WorkmailAction":{ "type":"structure", "required":["OrganizationArn"], "members":{ "TopicArn":{"shape":"AmazonResourceName"}, "OrganizationArn":{"shape":"AmazonResourceName"} } } } } aws-sdk-go-1.4.22/models/apis/email/2010-12-01/docs-2.json000066400000000000000000003450671300374646400221120ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon Simple Email Service

        This is the API Reference for Amazon Simple Email Service (Amazon SES). This documentation is intended to be used in conjunction with the Amazon SES Developer Guide.

        For a list of Amazon SES endpoints to use in service requests, see Regions and Amazon SES in the Amazon SES Developer Guide.

        ", "operations": { "CloneReceiptRuleSet": "

        Creates a receipt rule set by cloning an existing one. All receipt rules and configurations are copied to the new receipt rule set and are completely independent of the source rule set.

        For information about setting up rule sets, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "CreateReceiptFilter": "

        Creates a new IP address filter.

        For information about setting up IP address filters, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "CreateReceiptRule": "

        Creates a receipt rule.

        For information about setting up receipt rules, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "CreateReceiptRuleSet": "

        Creates an empty receipt rule set.

        For information about setting up receipt rule sets, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "DeleteIdentity": "

        Deletes the specified identity (an email address or a domain) from the list of verified identities.

        This action is throttled at one request per second.

        ", "DeleteIdentityPolicy": "

        Deletes the specified sending authorization policy for the given identity (an email address or a domain). This API returns successfully even if a policy with the specified name does not exist.

        This API is for the identity owner only. If you have not verified the identity, this API will return an error.

        Sending authorization is a feature that enables an identity owner to authorize other senders to use its identities. For information about using sending authorization, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "DeleteReceiptFilter": "

        Deletes the specified IP address filter.

        For information about managing IP address filters, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "DeleteReceiptRule": "

        Deletes the specified receipt rule.

        For information about managing receipt rules, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "DeleteReceiptRuleSet": "

        Deletes the specified receipt rule set and all of the receipt rules it contains.

        The currently active rule set cannot be deleted.

        For information about managing receipt rule sets, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "DeleteVerifiedEmailAddress": "

        Deletes the specified email address from the list of verified addresses.

        The DeleteVerifiedEmailAddress action is deprecated as of the May 15, 2012 release of Domain Verification. The DeleteIdentity action is now preferred.

        This action is throttled at one request per second.

        ", "DescribeActiveReceiptRuleSet": "

        Returns the metadata and receipt rules for the receipt rule set that is currently active.

        For information about setting up receipt rule sets, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "DescribeReceiptRule": "

        Returns the details of the specified receipt rule.

        For information about setting up receipt rules, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "DescribeReceiptRuleSet": "

        Returns the details of the specified receipt rule set.

        For information about managing receipt rule sets, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "GetIdentityDkimAttributes": "

        Returns the current status of Easy DKIM signing for an entity. For domain name identities, this action also returns the DKIM tokens that are required for Easy DKIM signing, and whether Amazon SES has successfully verified that these tokens have been published.

        This action takes a list of identities as input and returns the following information for each:

        • Whether Easy DKIM signing is enabled or disabled.

        • A set of DKIM tokens that represent the identity. If the identity is an email address, the tokens represent the domain of that address.

        • Whether Amazon SES has successfully verified the DKIM tokens published in the domain's DNS. This information is only returned for domain name identities, not for email addresses.

        This action is throttled at one request per second and can only get DKIM attributes for up to 100 identities at a time.

        For more information about creating DNS records using DKIM tokens, go to the Amazon SES Developer Guide.

        ", "GetIdentityMailFromDomainAttributes": "

        Returns the custom MAIL FROM attributes for a list of identities (email addresses and/or domains).

        This action is throttled at one request per second and can only get custom MAIL FROM attributes for up to 100 identities at a time.

        ", "GetIdentityNotificationAttributes": "

        Given a list of verified identities (email addresses and/or domains), returns a structure describing identity notification attributes.

        This action is throttled at one request per second and can only get notification attributes for up to 100 identities at a time.

        For more information about using notifications with Amazon SES, see the Amazon SES Developer Guide.

        ", "GetIdentityPolicies": "

        Returns the requested sending authorization policies for the given identity (an email address or a domain). The policies are returned as a map of policy names to policy contents. You can retrieve a maximum of 20 policies at a time.

        This API is for the identity owner only. If you have not verified the identity, this API will return an error.

        Sending authorization is a feature that enables an identity owner to authorize other senders to use its identities. For information about using sending authorization, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "GetIdentityVerificationAttributes": "

        Given a list of identities (email addresses and/or domains), returns the verification status and (for domain identities) the verification token for each identity.

        This action is throttled at one request per second and can only get verification attributes for up to 100 identities at a time.

        ", "GetSendQuota": "

        Returns the user's current sending limits.

        This action is throttled at one request per second.

        ", "GetSendStatistics": "

        Returns the user's sending statistics. The result is a list of data points, representing the last two weeks of sending activity.

        Each data point in the list contains statistics for a 15-minute interval.

        This action is throttled at one request per second.

        ", "ListIdentities": "

        Returns a list containing all of the identities (email addresses and domains) for your AWS account, regardless of verification status.

        This action is throttled at one request per second.

        ", "ListIdentityPolicies": "

        Returns a list of sending authorization policies that are attached to the given identity (an email address or a domain). This API returns only a list. If you want the actual policy content, you can use GetIdentityPolicies.

        This API is for the identity owner only. If you have not verified the identity, this API will return an error.

        Sending authorization is a feature that enables an identity owner to authorize other senders to use its identities. For information about using sending authorization, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "ListReceiptFilters": "

        Lists the IP address filters associated with your AWS account.

        For information about managing IP address filters, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "ListReceiptRuleSets": "

        Lists the receipt rule sets that exist under your AWS account. If there are additional receipt rule sets to be retrieved, you will receive a NextToken that you can provide to the next call to ListReceiptRuleSets to retrieve the additional entries.

        For information about managing receipt rule sets, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "ListVerifiedEmailAddresses": "

        Returns a list containing all of the email addresses that have been verified.

        The ListVerifiedEmailAddresses action is deprecated as of the May 15, 2012 release of Domain Verification. The ListIdentities action is now preferred.

        This action is throttled at one request per second.

        ", "PutIdentityPolicy": "

        Adds or updates a sending authorization policy for the specified identity (an email address or a domain).

        This API is for the identity owner only. If you have not verified the identity, this API will return an error.

        Sending authorization is a feature that enables an identity owner to authorize other senders to use its identities. For information about using sending authorization, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "ReorderReceiptRuleSet": "

        Reorders the receipt rules within a receipt rule set.

        All of the rules in the rule set must be represented in this request. That is, this API will return an error if the reorder request doesn't explicitly position all of the rules.

        For information about managing receipt rule sets, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "SendBounce": "

        Generates and sends a bounce message to the sender of an email you received through Amazon SES. You can only use this API on an email up to 24 hours after you receive it.

        You cannot use this API to send generic bounces for mail that was not received by Amazon SES.

        For information about receiving email through Amazon SES, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "SendEmail": "

        Composes an email message based on input data, and then immediately queues the message for sending.

        There are several important points to know about SendEmail:

        • You can only send email from verified email addresses and domains; otherwise, you will get an \"Email address not verified\" error. If your account is still in the Amazon SES sandbox, you must also verify every recipient email address except for the recipients provided by the Amazon SES mailbox simulator. For more information, go to the Amazon SES Developer Guide.

        • The total size of the message cannot exceed 10 MB. This includes any attachments that are part of the message.

        • Amazon SES has a limit on the total number of recipients per message. The combined number of To:, CC: and BCC: email addresses cannot exceed 50. If you need to send an email message to a larger audience, you can divide your recipient list into groups of 50 or fewer, and then call Amazon SES repeatedly to send the message to each group.

        • For every message that you send, the total number of recipients (To:, CC: and BCC:) is counted against your sending quota - the maximum number of emails you can send in a 24-hour period. For information about your sending quota, go to the Amazon SES Developer Guide.

        ", "SendRawEmail": "

        Sends an email message, with header and content specified by the client. The SendRawEmail action is useful for sending multipart MIME emails. The raw text of the message must comply with Internet email standards; otherwise, the message cannot be sent.

        There are several important points to know about SendRawEmail:

        • You can only send email from verified email addresses and domains; otherwise, you will get an \"Email address not verified\" error. If your account is still in the Amazon SES sandbox, you must also verify every recipient email address except for the recipients provided by the Amazon SES mailbox simulator. For more information, go to the Amazon SES Developer Guide.

        • The total size of the message cannot exceed 10 MB. This includes any attachments that are part of the message.

        • Amazon SES has a limit on the total number of recipients per message. The combined number of To:, CC: and BCC: email addresses cannot exceed 50. If you need to send an email message to a larger audience, you can divide your recipient list into groups of 50 or fewer, and then call Amazon SES repeatedly to send the message to each group.

        • The To:, CC:, and BCC: headers in the raw message can contain a group list. Note that each recipient in a group list counts towards the 50-recipient limit.

        • Amazon SES overrides any Message-ID and Date headers you provide.

        • For every message that you send, the total number of recipients (To:, CC: and BCC:) is counted against your sending quota - the maximum number of emails you can send in a 24-hour period. For information about your sending quota, go to the Amazon SES Developer Guide.

        • If you are using sending authorization to send on behalf of another user, SendRawEmail enables you to specify the cross-account identity for the email's \"Source,\" \"From,\" and \"Return-Path\" parameters in one of two ways: you can pass optional parameters SourceArn, FromArn, and/or ReturnPathArn to the API, or you can include the following X-headers in the header of your raw email:

          • X-SES-SOURCE-ARN

          • X-SES-FROM-ARN

          • X-SES-RETURN-PATH-ARN

          Do not include these X-headers in the DKIM signature, because they are removed by Amazon SES before sending the email.

          For the most common sending authorization use case, we recommend that you specify the SourceIdentityArn and do not specify either the FromIdentityArn or ReturnPathIdentityArn. (The same note applies to the corresponding X-headers.) If you only specify the SourceIdentityArn, Amazon SES will simply set the \"From\" address and the \"Return Path\" address to the identity specified in SourceIdentityArn. For more information about sending authorization, see the Amazon SES Developer Guide.

        ", "SetActiveReceiptRuleSet": "

        Sets the specified receipt rule set as the active receipt rule set.

        To disable your email-receiving through Amazon SES completely, you can call this API with RuleSetName set to null.

        For information about managing receipt rule sets, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "SetIdentityDkimEnabled": "

        Enables or disables Easy DKIM signing of email sent from an identity:

        • If Easy DKIM signing is enabled for a domain name identity (e.g., example.com), then Amazon SES will DKIM-sign all email sent by addresses under that domain name (e.g., user@example.com).

        • If Easy DKIM signing is enabled for an email address, then Amazon SES will DKIM-sign all email sent by that email address.

        For email addresses (e.g., user@example.com), you can only enable Easy DKIM signing if the corresponding domain (e.g., example.com) has been set up for Easy DKIM using the AWS Console or the VerifyDomainDkim action.

        This action is throttled at one request per second.

        For more information about Easy DKIM signing, go to the Amazon SES Developer Guide.

        ", "SetIdentityFeedbackForwardingEnabled": "

        Given an identity (an email address or a domain), enables or disables whether Amazon SES forwards bounce and complaint notifications as email. Feedback forwarding can only be disabled when Amazon Simple Notification Service (Amazon SNS) topics are specified for both bounces and complaints.

        Feedback forwarding does not apply to delivery notifications. Delivery notifications are only available through Amazon SNS.

        This action is throttled at one request per second.

        For more information about using notifications with Amazon SES, see the Amazon SES Developer Guide.

        ", "SetIdentityHeadersInNotificationsEnabled": "

        Given an identity (an email address or a domain), sets whether Amazon SES includes the original email headers in the Amazon Simple Notification Service (Amazon SNS) notifications of a specified type.

        This action is throttled at one request per second.

        For more information about using notifications with Amazon SES, see the Amazon SES Developer Guide.

        ", "SetIdentityMailFromDomain": "

        Enables or disables the custom MAIL FROM domain setup for a verified identity (an email address or a domain).

        To send emails using the specified MAIL FROM domain, you must add an MX record to your MAIL FROM domain's DNS settings. If you want your emails to pass Sender Policy Framework (SPF) checks, you must also add or update an SPF record. For more information, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "SetIdentityNotificationTopic": "

        Given an identity (an email address or a domain), sets the Amazon Simple Notification Service (Amazon SNS) topic to which Amazon SES will publish bounce, complaint, and/or delivery notifications for emails sent with that identity as the Source.

        Unless feedback forwarding is enabled, you must specify Amazon SNS topics for bounce and complaint notifications. For more information, see SetIdentityFeedbackForwardingEnabled.

        This action is throttled at one request per second.

        For more information about feedback notification, see the Amazon SES Developer Guide.

        ", "SetReceiptRulePosition": "

        Sets the position of the specified receipt rule in the receipt rule set.

        For information about managing receipt rules, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "UpdateReceiptRule": "

        Updates a receipt rule.

        For information about managing receipt rules, see the Amazon SES Developer Guide.

        This action is throttled at one request per second.

        ", "VerifyDomainDkim": "

        Returns a set of DKIM tokens for a domain. DKIM tokens are character strings that represent your domain's identity. Using these tokens, you will need to create DNS CNAME records that point to DKIM public keys hosted by Amazon SES. Amazon Web Services will eventually detect that you have updated your DNS records; this detection process may take up to 72 hours. Upon successful detection, Amazon SES will be able to DKIM-sign email originating from that domain.

        This action is throttled at one request per second.

        To enable or disable Easy DKIM signing for a domain, use the SetIdentityDkimEnabled action.

        For more information about creating DNS records using DKIM tokens, go to the Amazon SES Developer Guide.

        ", "VerifyDomainIdentity": "

        Verifies a domain.

        This action is throttled at one request per second.

        ", "VerifyEmailAddress": "

        Verifies an email address. This action causes a confirmation email message to be sent to the specified address.

        The VerifyEmailAddress action is deprecated as of the May 15, 2012 release of Domain Verification. The VerifyEmailIdentity action is now preferred.

        This action is throttled at one request per second.

        ", "VerifyEmailIdentity": "

        Verifies an email address. This action causes a confirmation email message to be sent to the specified address.

        This action is throttled at one request per second.

        " }, "shapes": { "AddHeaderAction": { "base": "

        When included in a receipt rule, this action adds a header to the received email.

        For information about adding a header using a receipt rule, see the Amazon SES Developer Guide.

        ", "refs": { "ReceiptAction$AddHeaderAction": "

        Adds a header to the received email.

        " } }, "Address": { "base": null, "refs": { "AddressList$member": null, "BounceAction$Sender": "

        The email address of the sender of the bounced email. This is the address from which the bounce message will be sent.

        ", "BouncedRecipientInfo$Recipient": "

        The email address of the recipient of the bounced email.

        ", "DeleteVerifiedEmailAddressRequest$EmailAddress": "

        An email address to be removed from the list of verified addresses.

        ", "RecipientDsnFields$FinalRecipient": "

        The email address to which the message was ultimately delivered. This corresponds to the Final-Recipient in the DSN. If not specified, FinalRecipient will be set to the Recipient specified in the BouncedRecipientInfo structure. Either FinalRecipient or the recipient in BouncedRecipientInfo must be a recipient of the original bounced message.

        Do not prepend the FinalRecipient email address with rfc 822;, as described in RFC 3798.

        ", "SendBounceRequest$BounceSender": "

        The address to use in the \"From\" header of the bounce message. This must be an identity that you have verified with Amazon SES.

        ", "SendEmailRequest$Source": "

        The email address that is sending the email. This email address must be either individually verified with Amazon SES, or from a domain that has been verified with Amazon SES. For information about verifying identities, see the Amazon SES Developer Guide.

        If you are sending on behalf of another user and have been permitted to do so by a sending authorization policy, then you must also specify the SourceArn parameter. For more information about sending authorization, see the Amazon SES Developer Guide.

        In all cases, the email address must be 7-bit ASCII. If the text must contain any other characters, then you must use MIME encoded-word syntax (RFC 2047) instead of a literal string. MIME encoded-word syntax uses the following form: =?charset?encoding?encoded-text?=. For more information, see RFC 2047.

        ", "SendEmailRequest$ReturnPath": "

        The email address to which bounces and complaints are to be forwarded when feedback forwarding is enabled. If the message cannot be delivered to the recipient, then an error message will be returned from the recipient's ISP; this message will then be forwarded to the email address specified by the ReturnPath parameter. The ReturnPath parameter is never overwritten. This email address must be either individually verified with Amazon SES, or from a domain that has been verified with Amazon SES.

        ", "SendRawEmailRequest$Source": "

        The identity's email address. If you do not provide a value for this parameter, you must specify a \"From\" address in the raw text of the message. (You can also specify both.)

        By default, the string must be 7-bit ASCII. If the text must contain any other characters, then you must use MIME encoded-word syntax (RFC 2047) instead of a literal string. MIME encoded-word syntax uses the following form: =?charset?encoding?encoded-text?=. For more information, see RFC 2047.

        If you specify the Source parameter and have feedback forwarding enabled, then bounces and complaints will be sent to this email address. This takes precedence over any Return-Path header that you might include in the raw text of the message.

        ", "VerifyEmailAddressRequest$EmailAddress": "

        The email address to be verified.

        ", "VerifyEmailIdentityRequest$EmailAddress": "

        The email address to be verified.

        " } }, "AddressList": { "base": null, "refs": { "Destination$ToAddresses": "

        The To: field(s) of the message.

        ", "Destination$CcAddresses": "

        The CC: field(s) of the message.

        ", "Destination$BccAddresses": "

        The BCC: field(s) of the message.

        ", "ListVerifiedEmailAddressesResponse$VerifiedEmailAddresses": "

        A list of email addresses that have been verified.

        ", "SendEmailRequest$ReplyToAddresses": "

        The reply-to email address(es) for the message. If the recipient replies to the message, each reply-to address will receive the reply.

        ", "SendRawEmailRequest$Destinations": "

        A list of destinations for the message, consisting of To:, CC:, and BCC: addresses.

        " } }, "AlreadyExistsException": { "base": "

        Indicates that a resource could not be created due to a naming conflict.

        ", "refs": { } }, "AmazonResourceName": { "base": null, "refs": { "BounceAction$TopicArn": "

        The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the bounce action is taken. An example of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic. For more information about Amazon SNS topics, see the Amazon SNS Developer Guide.

        ", "BouncedRecipientInfo$RecipientArn": "

        This parameter is used only for sending authorization. It is the ARN of the identity that is associated with the sending authorization policy that permits you to receive email for the recipient of the bounced email. For more information about sending authorization, see the Amazon SES Developer Guide.

        ", "InvalidLambdaFunctionException$FunctionArn": null, "InvalidSnsTopicException$Topic": null, "LambdaAction$TopicArn": "

        The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the Lambda action is taken. An example of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic. For more information about Amazon SNS topics, see the Amazon SNS Developer Guide.

        ", "LambdaAction$FunctionArn": "

        The Amazon Resource Name (ARN) of the AWS Lambda function. An example of an AWS Lambda function ARN is arn:aws:lambda:us-west-2:account-id:function:MyFunction. For more information about AWS Lambda, see the AWS Lambda Developer Guide.

        ", "S3Action$TopicArn": "

        The ARN of the Amazon SNS topic to notify when the message is saved to the Amazon S3 bucket. An example of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic. For more information about Amazon SNS topics, see the Amazon SNS Developer Guide.

        ", "S3Action$KmsKeyArn": "

        The customer master key that Amazon SES should use to encrypt your emails before saving them to the Amazon S3 bucket. You can use the default master key or a custom master key you created in AWS KMS as follows:

        • To use the default master key, provide an ARN in the form of arn:aws:kms:REGION:ACCOUNT-ID-WITHOUT-HYPHENS:alias/aws/ses. For example, if your AWS account ID is 123456789012 and you want to use the default master key in the US West (Oregon) region, the ARN of the default master key would be arn:aws:kms:us-west-2:123456789012:alias/aws/ses. If you use the default master key, you don't need to perform any extra steps to give Amazon SES permission to use the key.

        • To use a custom master key you created in AWS KMS, provide the ARN of the master key and ensure that you add a statement to your key's policy to give Amazon SES permission to use it. For more information about giving permissions, see the Amazon SES Developer Guide.

        For more information about key policies, see the AWS KMS Developer Guide. If you do not specify a master key, Amazon SES will not encrypt your emails.

        Your mail is encrypted by Amazon SES using the Amazon S3 encryption client before the mail is submitted to Amazon S3 for storage. It is not encrypted using Amazon S3 server-side encryption. This means that you must use the Amazon S3 encryption client to decrypt the email after retrieving it from Amazon S3, as the service has no access to use your AWS KMS keys for decryption. This encryption client is currently available with the AWS Java SDK and AWS Ruby SDK only. For more information about client-side encryption using AWS KMS master keys, see the Amazon S3 Developer Guide.

        ", "SNSAction$TopicArn": "

        The Amazon Resource Name (ARN) of the Amazon SNS topic to notify. An example of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic. For more information about Amazon SNS topics, see the Amazon SNS Developer Guide.

        ", "SendBounceRequest$BounceSenderArn": "

        This parameter is used only for sending authorization. It is the ARN of the identity that is associated with the sending authorization policy that permits you to use the address in the \"From\" header of the bounce. For more information about sending authorization, see the Amazon SES Developer Guide.

        ", "SendEmailRequest$SourceArn": "

        This parameter is used only for sending authorization. It is the ARN of the identity that is associated with the sending authorization policy that permits you to send for the email address specified in the Source parameter.

        For example, if the owner of example.com (which has ARN arn:aws:ses:us-east-1:123456789012:identity/example.com) attaches a policy to it that authorizes you to send from user@example.com, then you would specify the SourceArn to be arn:aws:ses:us-east-1:123456789012:identity/example.com, and the Source to be user@example.com.

        For more information about sending authorization, see the Amazon SES Developer Guide.

        ", "SendEmailRequest$ReturnPathArn": "

        This parameter is used only for sending authorization. It is the ARN of the identity that is associated with the sending authorization policy that permits you to use the email address specified in the ReturnPath parameter.

        For example, if the owner of example.com (which has ARN arn:aws:ses:us-east-1:123456789012:identity/example.com) attaches a policy to it that authorizes you to use feedback@example.com, then you would specify the ReturnPathArn to be arn:aws:ses:us-east-1:123456789012:identity/example.com, and the ReturnPath to be feedback@example.com.

        For more information about sending authorization, see the Amazon SES Developer Guide.

        ", "SendRawEmailRequest$FromArn": "

        This parameter is used only for sending authorization. It is the ARN of the identity that is associated with the sending authorization policy that permits you to specify a particular \"From\" address in the header of the raw email.

        Instead of using this parameter, you can use the X-header X-SES-FROM-ARN in the raw message of the email. If you use both the FromArn parameter and the corresponding X-header, Amazon SES uses the value of the FromArn parameter.

        For information about when to use this parameter, see the description of SendRawEmail in this guide, or see the Amazon SES Developer Guide.

        ", "SendRawEmailRequest$SourceArn": "

        This parameter is used only for sending authorization. It is the ARN of the identity that is associated with the sending authorization policy that permits you to send for the email address specified in the Source parameter.

        For example, if the owner of example.com (which has ARN arn:aws:ses:us-east-1:123456789012:identity/example.com) attaches a policy to it that authorizes you to send from user@example.com, then you would specify the SourceArn to be arn:aws:ses:us-east-1:123456789012:identity/example.com, and the Source to be user@example.com.

        Instead of using this parameter, you can use the X-header X-SES-SOURCE-ARN in the raw message of the email. If you use both the SourceArn parameter and the corresponding X-header, Amazon SES uses the value of the SourceArn parameter.

        For information about when to use this parameter, see the description of SendRawEmail in this guide, or see the Amazon SES Developer Guide.

        ", "SendRawEmailRequest$ReturnPathArn": "

        This parameter is used only for sending authorization. It is the ARN of the identity that is associated with the sending authorization policy that permits you to use the email address specified in the ReturnPath parameter.

        For example, if the owner of example.com (which has ARN arn:aws:ses:us-east-1:123456789012:identity/example.com) attaches a policy to it that authorizes you to use feedback@example.com, then you would specify the ReturnPathArn to be arn:aws:ses:us-east-1:123456789012:identity/example.com, and the ReturnPath to be feedback@example.com.

        Instead of using this parameter, you can use the X-header X-SES-RETURN-PATH-ARN in the raw message of the email. If you use both the ReturnPathArn parameter and the corresponding X-header, Amazon SES uses the value of the ReturnPathArn parameter.

        For information about when to use this parameter, see the description of SendRawEmail in this guide, or see the Amazon SES Developer Guide.

        ", "StopAction$TopicArn": "

        The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the stop action is taken. An example of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic. For more information about Amazon SNS topics, see the Amazon SNS Developer Guide.

        ", "WorkmailAction$TopicArn": "

        The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the WorkMail action is called. An example of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic. For more information about Amazon SNS topics, see the Amazon SNS Developer Guide.

        ", "WorkmailAction$OrganizationArn": "

        The ARN of the Amazon WorkMail organization. An example of an Amazon WorkMail organization ARN is arn:aws:workmail:us-west-2:123456789012:organization/m-68755160c4cb4e29a2b2f8fb58f359d7. For information about Amazon WorkMail organizations, see the Amazon WorkMail Administrator Guide.

        " } }, "ArrivalDate": { "base": null, "refs": { "MessageDsn$ArrivalDate": "

        When the message was received by the reporting mail transfer agent (MTA), in RFC 822 date-time format.

        " } }, "BehaviorOnMXFailure": { "base": null, "refs": { "IdentityMailFromDomainAttributes$BehaviorOnMXFailure": "

        The action that Amazon SES takes if it cannot successfully read the required MX record when you send an email. A value of UseDefaultValue indicates that if Amazon SES cannot read the required MX record, it uses amazonses.com (or a subdomain of that) as the MAIL FROM domain. A value of RejectMessage indicates that if Amazon SES cannot read the required MX record, Amazon SES returns a MailFromDomainNotVerified error and does not send the email.

        The custom MAIL FROM setup states that result in this behavior are Pending, Failed, and TemporaryFailure.

        ", "SetIdentityMailFromDomainRequest$BehaviorOnMXFailure": "

        The action that you want Amazon SES to take if it cannot successfully read the required MX record when you send an email. If you choose UseDefaultValue, Amazon SES will use amazonses.com (or a subdomain of that) as the MAIL FROM domain. If you choose RejectMessage, Amazon SES will return a MailFromDomainNotVerified error and not send the email.

        The action specified in BehaviorOnMXFailure is taken when the custom MAIL FROM domain setup is in the Pending, Failed, and TemporaryFailure states.

        " } }, "Body": { "base": "

        Represents the body of the message. You can specify text, HTML, or both. If you use both, then the message should display correctly in the widest variety of email clients.

        ", "refs": { "Message$Body": "

        The message body.

        " } }, "BounceAction": { "base": "

        When included in a receipt rule, this action rejects the received email by returning a bounce response to the sender and, optionally, publishes a notification to Amazon Simple Notification Service (Amazon SNS).

        For information about sending a bounce message in response to a received email, see the Amazon SES Developer Guide.

        ", "refs": { "ReceiptAction$BounceAction": "

        Rejects the received email by returning a bounce response to the sender and, optionally, publishes a notification to Amazon Simple Notification Service (Amazon SNS).

        " } }, "BounceMessage": { "base": null, "refs": { "BounceAction$Message": "

        Human-readable text to include in the bounce message.

        " } }, "BounceSmtpReplyCode": { "base": null, "refs": { "BounceAction$SmtpReplyCode": "

        The SMTP reply code, as defined by RFC 5321.

        " } }, "BounceStatusCode": { "base": null, "refs": { "BounceAction$StatusCode": "

        The SMTP enhanced status code, as defined by RFC 3463.

        " } }, "BounceType": { "base": null, "refs": { "BouncedRecipientInfo$BounceType": "

        The reason for the bounce. You must provide either this parameter or RecipientDsnFields.

        " } }, "BouncedRecipientInfo": { "base": "

        Recipient-related information to include in the Delivery Status Notification (DSN) when an email that Amazon SES receives on your behalf bounces.

        For information about receiving email through Amazon SES, see the Amazon SES Developer Guide.

        ", "refs": { "BouncedRecipientInfoList$member": null } }, "BouncedRecipientInfoList": { "base": null, "refs": { "SendBounceRequest$BouncedRecipientInfoList": "

        A list of recipients of the bounced message, including the information required to create the Delivery Status Notifications (DSNs) for the recipients. You must specify at least one BouncedRecipientInfo in the list.

        " } }, "CannotDeleteException": { "base": "

        Indicates that the delete operation could not be completed.

        ", "refs": { } }, "Charset": { "base": null, "refs": { "Content$Charset": "

        The character set of the content.

        " } }, "Cidr": { "base": null, "refs": { "ReceiptIpFilter$Cidr": "

        A single IP address or a range of IP addresses that you want to block or allow, specified in Classless Inter-Domain Routing (CIDR) notation. An example of a single email address is 10.0.0.1. An example of a range of IP addresses is 10.0.0.1/24. For more information about CIDR notation, see RFC 2317.

        " } }, "CloneReceiptRuleSetRequest": { "base": "

        Represents a request to create a receipt rule set by cloning an existing one. You use receipt rule sets to receive email with Amazon SES. For more information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "CloneReceiptRuleSetResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "Content": { "base": "

        Represents textual data, plus an optional character set specification.

        By default, the text must be 7-bit ASCII, due to the constraints of the SMTP protocol. If the text must contain any other characters, then you must also specify a character set. Examples include UTF-8, ISO-8859-1, and Shift_JIS.

        ", "refs": { "Body$Text": "

        The content of the message, in text format. Use this for text-based email clients, or clients on high-latency networks (such as mobile devices).

        ", "Body$Html": "

        The content of the message, in HTML format. Use this for email clients that can process HTML. You can include clickable links, formatted text, and much more in an HTML message.

        ", "Message$Subject": "

        The subject of the message: A short summary of the content, which will appear in the recipient's inbox.

        " } }, "Counter": { "base": null, "refs": { "SendDataPoint$DeliveryAttempts": "

        Number of emails that have been enqueued for sending.

        ", "SendDataPoint$Bounces": "

        Number of emails that have bounced.

        ", "SendDataPoint$Complaints": "

        Number of unwanted emails that were rejected by recipients.

        ", "SendDataPoint$Rejects": "

        Number of emails rejected by Amazon SES.

        " } }, "CreateReceiptFilterRequest": { "base": "

        Represents a request to create a new IP address filter. You use IP address filters when you receive email with Amazon SES. For more information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "CreateReceiptFilterResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "CreateReceiptRuleRequest": { "base": "

        Represents a request to create a receipt rule. You use receipt rules to receive email with Amazon SES. For more information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "CreateReceiptRuleResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "CreateReceiptRuleSetRequest": { "base": "

        Represents a request to create an empty receipt rule set. You use receipt rule sets to receive email with Amazon SES. For more information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "CreateReceiptRuleSetResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "CustomMailFromStatus": { "base": null, "refs": { "IdentityMailFromDomainAttributes$MailFromDomainStatus": "

        The state that indicates whether Amazon SES has successfully read the MX record required for custom MAIL FROM domain setup. If the state is Success, Amazon SES uses the specified custom MAIL FROM domain when the verified identity sends an email. All other states indicate that Amazon SES takes the action described by BehaviorOnMXFailure.

        " } }, "DeleteIdentityPolicyRequest": { "base": "

        Represents a request to delete a sending authorization policy for an identity. Sending authorization is an Amazon SES feature that enables you to authorize other senders to use your identities. For information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "DeleteIdentityPolicyResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "DeleteIdentityRequest": { "base": "

        Represents a request to delete one of your Amazon SES identities (an email address or domain).

        ", "refs": { } }, "DeleteIdentityResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "DeleteReceiptFilterRequest": { "base": "

        Represents a request to delete an IP address filter. You use IP address filters when you receive email with Amazon SES. For more information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "DeleteReceiptFilterResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "DeleteReceiptRuleRequest": { "base": "

        Represents a request to delete a receipt rule. You use receipt rules to receive email with Amazon SES. For more information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "DeleteReceiptRuleResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "DeleteReceiptRuleSetRequest": { "base": "

        Represents a request to delete a receipt rule set and all of the receipt rules it contains. You use receipt rule sets to receive email with Amazon SES. For more information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "DeleteReceiptRuleSetResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "DeleteVerifiedEmailAddressRequest": { "base": "

        Represents a request to delete an email address from the list of email addresses you have attempted to verify under your AWS account.

        ", "refs": { } }, "DescribeActiveReceiptRuleSetRequest": { "base": "

        Represents a request to return the metadata and receipt rules for the receipt rule set that is currently active. You use receipt rule sets to receive email with Amazon SES. For more information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "DescribeActiveReceiptRuleSetResponse": { "base": "

        Represents the metadata and receipt rules for the receipt rule set that is currently active.

        ", "refs": { } }, "DescribeReceiptRuleRequest": { "base": "

        Represents a request to return the details of a receipt rule. You use receipt rules to receive email with Amazon SES. For more information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "DescribeReceiptRuleResponse": { "base": "

        Represents the details of a receipt rule.

        ", "refs": { } }, "DescribeReceiptRuleSetRequest": { "base": "

        Represents a request to return the details of a receipt rule set. You use receipt rule sets to receive email with Amazon SES. For more information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "DescribeReceiptRuleSetResponse": { "base": "

        Represents the details of the specified receipt rule set.

        ", "refs": { } }, "Destination": { "base": "

        Represents the destination of the message, consisting of To:, CC:, and BCC: fields.

        By default, the string must be 7-bit ASCII. If the text must contain any other characters, then you must use MIME encoded-word syntax (RFC 2047) instead of a literal string. MIME encoded-word syntax uses the following form: =?charset?encoding?encoded-text?=. For more information, see RFC 2047.

        ", "refs": { "SendEmailRequest$Destination": "

        The destination for this email, composed of To:, CC:, and BCC: fields.

        " } }, "DiagnosticCode": { "base": null, "refs": { "RecipientDsnFields$DiagnosticCode": "

        An extended explanation of what went wrong; this is usually an SMTP response. See RFC 3463 for the correct formatting of this parameter.

        " } }, "DkimAttributes": { "base": null, "refs": { "GetIdentityDkimAttributesResponse$DkimAttributes": "

        The DKIM attributes for an email address or a domain.

        " } }, "Domain": { "base": null, "refs": { "VerifyDomainDkimRequest$Domain": "

        The name of the domain to be verified for Easy DKIM signing.

        ", "VerifyDomainIdentityRequest$Domain": "

        The domain to be verified.

        " } }, "DsnAction": { "base": null, "refs": { "RecipientDsnFields$Action": "

        The action performed by the reporting mail transfer agent (MTA) as a result of its attempt to deliver the message to the recipient address. This is required by RFC 3464.

        " } }, "DsnStatus": { "base": null, "refs": { "RecipientDsnFields$Status": "

        The status code that indicates what went wrong. This is required by RFC 3464.

        " } }, "Enabled": { "base": null, "refs": { "IdentityDkimAttributes$DkimEnabled": "

        True if DKIM signing is enabled for email sent from the identity; false otherwise.

        ", "IdentityNotificationAttributes$ForwardingEnabled": "

        Describes whether Amazon SES will forward bounce and complaint notifications as email. true indicates that Amazon SES will forward bounce and complaint notifications as email, while false indicates that bounce and complaint notifications will be published only to the specified bounce and complaint Amazon SNS topics.

        ", "IdentityNotificationAttributes$HeadersInBounceNotificationsEnabled": "

        Describes whether Amazon SES includes the original email headers in Amazon SNS notifications of type Bounce. A value of true specifies that Amazon SES will include headers in bounce notifications, and a value of false specifies that Amazon SES will not include headers in bounce notifications.

        ", "IdentityNotificationAttributes$HeadersInComplaintNotificationsEnabled": "

        Describes whether Amazon SES includes the original email headers in Amazon SNS notifications of type Complaint. A value of true specifies that Amazon SES will include headers in complaint notifications, and a value of false specifies that Amazon SES will not include headers in complaint notifications.

        ", "IdentityNotificationAttributes$HeadersInDeliveryNotificationsEnabled": "

        Describes whether Amazon SES includes the original email headers in Amazon SNS notifications of type Delivery. A value of true specifies that Amazon SES will include headers in delivery notifications, and a value of false specifies that Amazon SES will not include headers in delivery notifications.

        ", "ReceiptRule$Enabled": "

        If true, the receipt rule is active. The default value is false.

        ", "ReceiptRule$ScanEnabled": "

        If true, then messages to which this receipt rule applies are scanned for spam and viruses. The default value is false.

        ", "SetIdentityDkimEnabledRequest$DkimEnabled": "

        Sets whether DKIM signing is enabled for an identity. Set to true to enable DKIM signing for this identity; false to disable it.

        ", "SetIdentityFeedbackForwardingEnabledRequest$ForwardingEnabled": "

        Sets whether Amazon SES will forward bounce and complaint notifications as email. true specifies that Amazon SES will forward bounce and complaint notifications as email, in addition to any Amazon SNS topic publishing otherwise specified. false specifies that Amazon SES will publish bounce and complaint notifications only through Amazon SNS. This value can only be set to false when Amazon SNS topics are set for both Bounce and Complaint notification types.

        ", "SetIdentityHeadersInNotificationsEnabledRequest$Enabled": "

        Sets whether Amazon SES includes the original email headers in Amazon SNS notifications of the specified notification type. A value of true specifies that Amazon SES will include headers in notifications, and a value of false specifies that Amazon SES will not include headers in notifications.

        This value can only be set when NotificationType is already set to use a particular Amazon SNS topic.

        " } }, "Explanation": { "base": null, "refs": { "SendBounceRequest$Explanation": "

        Human-readable text for the bounce message to explain the failure. If not specified, the text will be auto-generated based on the bounced recipient information.

        " } }, "ExtensionField": { "base": "

        Additional X-headers to include in the Delivery Status Notification (DSN) when an email that Amazon SES receives on your behalf bounces.

        For information about receiving email through Amazon SES, see the Amazon SES Developer Guide.

        ", "refs": { "ExtensionFieldList$member": null } }, "ExtensionFieldList": { "base": null, "refs": { "MessageDsn$ExtensionFields": "

        Additional X-headers to include in the DSN.

        ", "RecipientDsnFields$ExtensionFields": "

        Additional X-headers to include in the DSN.

        " } }, "ExtensionFieldName": { "base": null, "refs": { "ExtensionField$Name": "

        The name of the header to add. Must be between 1 and 50 characters, inclusive, and consist of alphanumeric (a-z, A-Z, 0-9) characters and dashes only.

        " } }, "ExtensionFieldValue": { "base": null, "refs": { "ExtensionField$Value": "

        The value of the header to add. Must be less than 2048 characters, and must not contain newline characters (\"\\r\" or \"\\n\").

        " } }, "GetIdentityDkimAttributesRequest": { "base": "

        Represents a request for the status of Amazon SES Easy DKIM signing for an identity. For domain identities, this request also returns the DKIM tokens that are required for Easy DKIM signing, and whether Amazon SES successfully verified that these tokens were published. For more information about Easy DKIM, see the Amazon SES Developer Guide.

        ", "refs": { } }, "GetIdentityDkimAttributesResponse": { "base": "

        Represents the status of Amazon SES Easy DKIM signing for an identity. For domain identities, this response also contains the DKIM tokens that are required for Easy DKIM signing, and whether Amazon SES successfully verified that these tokens were published.

        ", "refs": { } }, "GetIdentityMailFromDomainAttributesRequest": { "base": "

        Represents a request to return the Amazon SES custom MAIL FROM attributes for a list of identities. For information about using a custom MAIL FROM domain, see the Amazon SES Developer Guide.

        ", "refs": { } }, "GetIdentityMailFromDomainAttributesResponse": { "base": "

        Represents the custom MAIL FROM attributes for a list of identities.

        ", "refs": { } }, "GetIdentityNotificationAttributesRequest": { "base": "

        Represents a request to return the notification attributes for a list of identities you verified with Amazon SES. For information about Amazon SES notifications, see the Amazon SES Developer Guide.

        ", "refs": { } }, "GetIdentityNotificationAttributesResponse": { "base": "

        Represents the notification attributes for a list of identities.

        ", "refs": { } }, "GetIdentityPoliciesRequest": { "base": "

        Represents a request to return the requested sending authorization policies for an identity. Sending authorization is an Amazon SES feature that enables you to authorize other senders to use your identities. For information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "GetIdentityPoliciesResponse": { "base": "

        Represents the requested sending authorization policies.

        ", "refs": { } }, "GetIdentityVerificationAttributesRequest": { "base": "

        Represents a request to return the Amazon SES verification status of a list of identities. For domain identities, this request also returns the verification token. For information about verifying identities with Amazon SES, see the Amazon SES Developer Guide.

        ", "refs": { } }, "GetIdentityVerificationAttributesResponse": { "base": "

        The Amazon SES verification status of a list of identities. For domain identities, this response also contains the verification token.

        ", "refs": { } }, "GetSendQuotaResponse": { "base": "

        Represents your Amazon SES daily sending quota, maximum send rate, and the number of emails you have sent in the last 24 hours.

        ", "refs": { } }, "GetSendStatisticsResponse": { "base": "

        Represents a list of data points. This list contains aggregated data from the previous two weeks of your sending activity with Amazon SES.

        ", "refs": { } }, "HeaderName": { "base": null, "refs": { "AddHeaderAction$HeaderName": "

        The name of the header to add. Must be between 1 and 50 characters, inclusive, and consist of alphanumeric (a-z, A-Z, 0-9) characters and dashes only.

        " } }, "HeaderValue": { "base": null, "refs": { "AddHeaderAction$HeaderValue": "

        Must be less than 2048 characters, and must not contain newline characters (\"\\r\" or \"\\n\").

        " } }, "Identity": { "base": null, "refs": { "DeleteIdentityPolicyRequest$Identity": "

        The identity that is associated with the policy that you want to delete. You can specify the identity by using its name or by using its Amazon Resource Name (ARN). Examples: user@example.com, example.com, arn:aws:ses:us-east-1:123456789012:identity/example.com.

        To successfully call this API, you must own the identity.

        ", "DeleteIdentityRequest$Identity": "

        The identity to be removed from the list of identities for the AWS Account.

        ", "DkimAttributes$key": null, "GetIdentityPoliciesRequest$Identity": "

        The identity for which the policies will be retrieved. You can specify an identity by using its name or by using its Amazon Resource Name (ARN). Examples: user@example.com, example.com, arn:aws:ses:us-east-1:123456789012:identity/example.com.

        To successfully call this API, you must own the identity.

        ", "IdentityList$member": null, "ListIdentityPoliciesRequest$Identity": "

        The identity that is associated with the policy for which the policies will be listed. You can specify an identity by using its name or by using its Amazon Resource Name (ARN). Examples: user@example.com, example.com, arn:aws:ses:us-east-1:123456789012:identity/example.com.

        To successfully call this API, you must own the identity.

        ", "MailFromDomainAttributes$key": null, "NotificationAttributes$key": null, "PutIdentityPolicyRequest$Identity": "

        The identity to which the policy will apply. You can specify an identity by using its name or by using its Amazon Resource Name (ARN). Examples: user@example.com, example.com, arn:aws:ses:us-east-1:123456789012:identity/example.com.

        To successfully call this API, you must own the identity.

        ", "SetIdentityDkimEnabledRequest$Identity": "

        The identity for which DKIM signing should be enabled or disabled.

        ", "SetIdentityFeedbackForwardingEnabledRequest$Identity": "

        The identity for which to set bounce and complaint notification forwarding. Examples: user@example.com, example.com.

        ", "SetIdentityHeadersInNotificationsEnabledRequest$Identity": "

        The identity for which to enable or disable headers in notifications. Examples: user@example.com, example.com.

        ", "SetIdentityMailFromDomainRequest$Identity": "

        The verified identity for which you want to enable or disable the specified custom MAIL FROM domain.

        ", "SetIdentityNotificationTopicRequest$Identity": "

        The identity for which the Amazon SNS topic will be set. You can specify an identity by using its name or by using its Amazon Resource Name (ARN). Examples: user@example.com, example.com, arn:aws:ses:us-east-1:123456789012:identity/example.com.

        ", "VerificationAttributes$key": null } }, "IdentityDkimAttributes": { "base": "

        Represents the DKIM attributes of a verified email address or a domain.

        ", "refs": { "DkimAttributes$value": null } }, "IdentityList": { "base": null, "refs": { "GetIdentityDkimAttributesRequest$Identities": "

        A list of one or more verified identities - email addresses, domains, or both.

        ", "GetIdentityMailFromDomainAttributesRequest$Identities": "

        A list of one or more identities.

        ", "GetIdentityNotificationAttributesRequest$Identities": "

        A list of one or more identities. You can specify an identity by using its name or by using its Amazon Resource Name (ARN). Examples: user@example.com, example.com, arn:aws:ses:us-east-1:123456789012:identity/example.com.

        ", "GetIdentityVerificationAttributesRequest$Identities": "

        A list of identities.

        ", "ListIdentitiesResponse$Identities": "

        A list of identities.

        " } }, "IdentityMailFromDomainAttributes": { "base": "

        Represents the custom MAIL FROM domain attributes of a verified identity (email address or domain).

        ", "refs": { "MailFromDomainAttributes$value": null } }, "IdentityNotificationAttributes": { "base": "

        Represents the notification attributes of an identity, including whether an identity has Amazon Simple Notification Service (Amazon SNS) topics set for bounce, complaint, and/or delivery notifications, and whether feedback forwarding is enabled for bounce and complaint notifications.

        ", "refs": { "NotificationAttributes$value": null } }, "IdentityType": { "base": null, "refs": { "ListIdentitiesRequest$IdentityType": "

        The type of the identities to list. Possible values are \"EmailAddress\" and \"Domain\". If this parameter is omitted, then all identities will be listed.

        " } }, "IdentityVerificationAttributes": { "base": "

        Represents the verification attributes of a single identity.

        ", "refs": { "VerificationAttributes$value": null } }, "InvalidLambdaFunctionException": { "base": "

        Indicates that the provided AWS Lambda function is invalid, or that Amazon SES could not execute the provided function, possibly due to permissions issues. For information about giving permissions, see the Amazon SES Developer Guide.

        ", "refs": { } }, "InvalidPolicyException": { "base": "

        Indicates that the provided policy is invalid. Check the error stack for more information about what caused the error.

        ", "refs": { } }, "InvalidS3ConfigurationException": { "base": "

        Indicates that the provided Amazon S3 bucket or AWS KMS encryption key is invalid, or that Amazon SES could not publish to the bucket, possibly due to permissions issues. For information about giving permissions, see the Amazon SES Developer Guide.

        ", "refs": { } }, "InvalidSnsTopicException": { "base": "

        Indicates that the provided Amazon SNS topic is invalid, or that Amazon SES could not publish to the topic, possibly due to permissions issues. For information about giving permissions, see the Amazon SES Developer Guide.

        ", "refs": { } }, "InvocationType": { "base": null, "refs": { "LambdaAction$InvocationType": "

        The invocation type of the AWS Lambda function. An invocation type of RequestResponse means that the execution of the function will immediately result in a response, and a value of Event means that the function will be invoked asynchronously. The default value is Event. For information about AWS Lambda invocation types, see the AWS Lambda Developer Guide.

        There is a 30-second timeout on RequestResponse invocations. You should use Event invocation in most cases. Use RequestResponse only when you want to make a mail flow decision, such as whether to stop the receipt rule or the receipt rule set.

        " } }, "LambdaAction": { "base": "

        When included in a receipt rule, this action calls an AWS Lambda function and, optionally, publishes a notification to Amazon Simple Notification Service (Amazon SNS).

        To enable Amazon SES to call your AWS Lambda function or to publish to an Amazon SNS topic of another account, Amazon SES must have permission to access those resources. For information about giving permissions, see the Amazon SES Developer Guide.

        For information about using AWS Lambda actions in receipt rules, see the Amazon SES Developer Guide.

        ", "refs": { "ReceiptAction$LambdaAction": "

        Calls an AWS Lambda function, and optionally, publishes a notification to Amazon SNS.

        " } }, "LastAttemptDate": { "base": null, "refs": { "RecipientDsnFields$LastAttemptDate": "

        The time the final delivery attempt was made, in RFC 822 date-time format.

        " } }, "LimitExceededException": { "base": "

        Indicates that a resource could not be created due to service limits. For a list of Amazon SES limits, see the Amazon SES Developer Guide.

        ", "refs": { } }, "ListIdentitiesRequest": { "base": "

        Represents a request to return a list of all identities (email addresses and domains) that you have attempted to verify under your AWS account, regardless of verification status.

        ", "refs": { } }, "ListIdentitiesResponse": { "base": "

        A list of all identities that you have attempted to verify under your AWS account, regardless of verification status.

        ", "refs": { } }, "ListIdentityPoliciesRequest": { "base": "

        Represents a request to return a list of sending authorization policies that are attached to an identity. Sending authorization is an Amazon SES feature that enables you to authorize other senders to use your identities. For information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "ListIdentityPoliciesResponse": { "base": "

        A list of names of sending authorization policies that apply to an identity.

        ", "refs": { } }, "ListReceiptFiltersRequest": { "base": "

        : Represents a request to list the IP address filters that exist under your AWS account. You use IP address filters when you receive email with Amazon SES. For more information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "ListReceiptFiltersResponse": { "base": "

        A list of IP address filters that exist under your AWS account.

        ", "refs": { } }, "ListReceiptRuleSetsRequest": { "base": "

        Represents a request to list the receipt rule sets that exist under your AWS account. You use receipt rule sets to receive email with Amazon SES. For more information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "ListReceiptRuleSetsResponse": { "base": "

        A list of receipt rule sets that exist under your AWS account.

        ", "refs": { } }, "ListVerifiedEmailAddressesResponse": { "base": "

        A list of email addresses that you have verified with Amazon SES under your AWS account.

        ", "refs": { } }, "MailFromDomainAttributes": { "base": null, "refs": { "GetIdentityMailFromDomainAttributesResponse$MailFromDomainAttributes": "

        A map of identities to custom MAIL FROM attributes.

        " } }, "MailFromDomainName": { "base": null, "refs": { "IdentityMailFromDomainAttributes$MailFromDomain": "

        The custom MAIL FROM domain that the identity is configured to use.

        ", "SetIdentityMailFromDomainRequest$MailFromDomain": "

        The custom MAIL FROM domain that you want the verified identity to use. The MAIL FROM domain must 1) be a subdomain of the verified identity, 2) not be used in a \"From\" address if the MAIL FROM domain is the destination of email feedback forwarding (for more information, see the Amazon SES Developer Guide), and 3) not be used to receive emails. A value of null disables the custom MAIL FROM setting for the identity.

        " } }, "MailFromDomainNotVerifiedException": { "base": "

        Indicates that the message could not be sent because Amazon SES could not read the MX record required to use the specified MAIL FROM domain. For information about editing the custom MAIL FROM domain settings for an identity, see the Amazon SES Developer Guide.

        ", "refs": { } }, "Max24HourSend": { "base": null, "refs": { "GetSendQuotaResponse$Max24HourSend": "

        The maximum number of emails the user is allowed to send in a 24-hour interval. A value of -1 signifies an unlimited quota.

        " } }, "MaxItems": { "base": null, "refs": { "ListIdentitiesRequest$MaxItems": "

        The maximum number of identities per page. Possible values are 1-1000 inclusive.

        " } }, "MaxSendRate": { "base": null, "refs": { "GetSendQuotaResponse$MaxSendRate": "

        The maximum number of emails that Amazon SES can accept from the user's account per second.

        The rate at which Amazon SES accepts the user's messages might be less than the maximum send rate.

        " } }, "Message": { "base": "

        Represents the message to be sent, composed of a subject and a body.

        ", "refs": { "SendEmailRequest$Message": "

        The message to be sent.

        " } }, "MessageData": { "base": null, "refs": { "Content$Data": "

        The textual data of the content.

        " } }, "MessageDsn": { "base": "

        Message-related information to include in the Delivery Status Notification (DSN) when an email that Amazon SES receives on your behalf bounces.

        For information about receiving email through Amazon SES, see the Amazon SES Developer Guide.

        ", "refs": { "SendBounceRequest$MessageDsn": "

        Message-related DSN fields. If not specified, Amazon SES will choose the values.

        " } }, "MessageId": { "base": null, "refs": { "SendBounceRequest$OriginalMessageId": "

        The message ID of the message to be bounced.

        ", "SendBounceResponse$MessageId": "

        The message ID of the bounce message.

        ", "SendEmailResponse$MessageId": "

        The unique message identifier returned from the SendEmail action.

        ", "SendRawEmailResponse$MessageId": "

        The unique message identifier returned from the SendRawEmail action.

        " } }, "MessageRejected": { "base": "

        Indicates that the action failed, and the message could not be sent. Check the error stack for more information about what caused the error.

        ", "refs": { } }, "NextToken": { "base": null, "refs": { "ListIdentitiesRequest$NextToken": "

        The token to use for pagination.

        ", "ListIdentitiesResponse$NextToken": "

        The token used for pagination.

        ", "ListReceiptRuleSetsRequest$NextToken": "

        A token returned from a previous call to ListReceiptRuleSets to indicate the position in the receipt rule set list.

        ", "ListReceiptRuleSetsResponse$NextToken": "

        A token indicating that there are additional receipt rule sets available to be listed. Pass this token to successive calls of ListReceiptRuleSets to retrieve up to 100 receipt rule sets at a time.

        " } }, "NotificationAttributes": { "base": null, "refs": { "GetIdentityNotificationAttributesResponse$NotificationAttributes": "

        A map of Identity to IdentityNotificationAttributes.

        " } }, "NotificationTopic": { "base": null, "refs": { "IdentityNotificationAttributes$BounceTopic": "

        The Amazon Resource Name (ARN) of the Amazon SNS topic where Amazon SES will publish bounce notifications.

        ", "IdentityNotificationAttributes$ComplaintTopic": "

        The Amazon Resource Name (ARN) of the Amazon SNS topic where Amazon SES will publish complaint notifications.

        ", "IdentityNotificationAttributes$DeliveryTopic": "

        The Amazon Resource Name (ARN) of the Amazon SNS topic where Amazon SES will publish delivery notifications.

        ", "SetIdentityNotificationTopicRequest$SnsTopic": "

        The Amazon Resource Name (ARN) of the Amazon SNS topic. If the parameter is omitted from the request or a null value is passed, SnsTopic is cleared and publishing is disabled.

        " } }, "NotificationType": { "base": null, "refs": { "SetIdentityHeadersInNotificationsEnabledRequest$NotificationType": "

        The notification type for which to enable or disable headers in notifications.

        ", "SetIdentityNotificationTopicRequest$NotificationType": "

        The type of notifications that will be published to the specified Amazon SNS topic.

        " } }, "Policy": { "base": null, "refs": { "PolicyMap$value": null, "PutIdentityPolicyRequest$Policy": "

        The text of the policy in JSON format. The policy cannot exceed 4 KB.

        For information about the syntax of sending authorization policies, see the Amazon SES Developer Guide.

        " } }, "PolicyMap": { "base": null, "refs": { "GetIdentityPoliciesResponse$Policies": "

        A map of policy names to policies.

        " } }, "PolicyName": { "base": null, "refs": { "DeleteIdentityPolicyRequest$PolicyName": "

        The name of the policy to be deleted.

        ", "PolicyMap$key": null, "PolicyNameList$member": null, "PutIdentityPolicyRequest$PolicyName": "

        The name of the policy.

        The policy name cannot exceed 64 characters and can only include alphanumeric characters, dashes, and underscores.

        " } }, "PolicyNameList": { "base": null, "refs": { "GetIdentityPoliciesRequest$PolicyNames": "

        A list of the names of policies to be retrieved. You can retrieve a maximum of 20 policies at a time. If you do not know the names of the policies that are attached to the identity, you can use ListIdentityPolicies.

        ", "ListIdentityPoliciesResponse$PolicyNames": "

        A list of names of policies that apply to the specified identity.

        " } }, "PutIdentityPolicyRequest": { "base": "

        Represents a request to add or update a sending authorization policy for an identity. Sending authorization is an Amazon SES feature that enables you to authorize other senders to use your identities. For information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "PutIdentityPolicyResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "RawMessage": { "base": "

        Represents the raw data of the message.

        ", "refs": { "SendRawEmailRequest$RawMessage": "

        The raw text of the message. The client is responsible for ensuring the following:

        • Message must contain a header and a body, separated by a blank line.

        • All required header fields must be present.

        • Each part of a multipart MIME message must be formatted properly.

        • MIME content types must be among those supported by Amazon SES. For more information, go to the Amazon SES Developer Guide.

        • Must be base64-encoded.

        " } }, "RawMessageData": { "base": null, "refs": { "RawMessage$Data": "

        The raw data of the message. The client must ensure that the message format complies with Internet email standards regarding email header fields, MIME types, MIME encoding, and base64 encoding.

        The To:, CC:, and BCC: headers in the raw message can contain a group list.

        If you are using SendRawEmail with sending authorization, you can include X-headers in the raw message to specify the \"Source,\" \"From,\" and \"Return-Path\" addresses. For more information, see the documentation for SendRawEmail.

        Do not include these X-headers in the DKIM signature, because they are removed by Amazon SES before sending the email.

        For more information, go to the Amazon SES Developer Guide.

        " } }, "ReceiptAction": { "base": "

        An action that Amazon SES can take when it receives an email on behalf of one or more email addresses or domains that you own. An instance of this data type can represent only one action.

        For information about setting up receipt rules, see the Amazon SES Developer Guide.

        ", "refs": { "ReceiptActionsList$member": null } }, "ReceiptActionsList": { "base": null, "refs": { "ReceiptRule$Actions": "

        An ordered list of actions to perform on messages that match at least one of the recipient email addresses or domains specified in the receipt rule.

        " } }, "ReceiptFilter": { "base": "

        A receipt IP address filter enables you to specify whether to accept or reject mail originating from an IP address or range of IP addresses.

        For information about setting up IP address filters, see the Amazon SES Developer Guide.

        ", "refs": { "CreateReceiptFilterRequest$Filter": "

        A data structure that describes the IP address filter to create, which consists of a name, an IP address range, and whether to allow or block mail from it.

        ", "ReceiptFilterList$member": null } }, "ReceiptFilterList": { "base": null, "refs": { "ListReceiptFiltersResponse$Filters": "

        A list of IP address filter data structures, which each consist of a name, an IP address range, and whether to allow or block mail from it.

        " } }, "ReceiptFilterName": { "base": null, "refs": { "DeleteReceiptFilterRequest$FilterName": "

        The name of the IP address filter to delete.

        ", "ReceiptFilter$Name": "

        The name of the IP address filter. The name must:

        • Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores (_), or dashes (-).

        • Start and end with a letter or number.

        • Contain less than 64 characters.

        " } }, "ReceiptFilterPolicy": { "base": null, "refs": { "ReceiptIpFilter$Policy": "

        Indicates whether to block or allow incoming mail from the specified IP addresses.

        " } }, "ReceiptIpFilter": { "base": "

        A receipt IP address filter enables you to specify whether to accept or reject mail originating from an IP address or range of IP addresses.

        For information about setting up IP address filters, see the Amazon SES Developer Guide.

        ", "refs": { "ReceiptFilter$IpFilter": "

        A structure that provides the IP addresses to block or allow, and whether to block or allow incoming mail from them.

        " } }, "ReceiptRule": { "base": "

        Receipt rules enable you to specify which actions Amazon SES should take when it receives mail on behalf of one or more email addresses or domains that you own.

        Each receipt rule defines a set of email addresses or domains to which it applies. If the email addresses or domains match at least one recipient address of the message, Amazon SES executes all of the receipt rule's actions on the message.

        For information about setting up receipt rules, see the Amazon SES Developer Guide.

        ", "refs": { "CreateReceiptRuleRequest$Rule": "

        A data structure that contains the specified rule's name, actions, recipients, domains, enabled status, scan status, and TLS policy.

        ", "DescribeReceiptRuleResponse$Rule": "

        A data structure that contains the specified receipt rule's name, actions, recipients, domains, enabled status, scan status, and Transport Layer Security (TLS) policy.

        ", "ReceiptRulesList$member": null, "UpdateReceiptRuleRequest$Rule": "

        A data structure that contains the updated receipt rule information.

        " } }, "ReceiptRuleName": { "base": null, "refs": { "CreateReceiptRuleRequest$After": "

        The name of an existing rule after which the new rule will be placed. If this parameter is null, the new rule will be inserted at the beginning of the rule list.

        ", "DeleteReceiptRuleRequest$RuleName": "

        The name of the receipt rule to delete.

        ", "DescribeReceiptRuleRequest$RuleName": "

        The name of the receipt rule.

        ", "ReceiptRule$Name": "

        The name of the receipt rule. The name must:

        • Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores (_), or dashes (-).

        • Start and end with a letter or number.

        • Contain less than 64 characters.

        ", "ReceiptRuleNamesList$member": null, "SetReceiptRulePositionRequest$RuleName": "

        The name of the receipt rule to reposition.

        ", "SetReceiptRulePositionRequest$After": "

        The name of the receipt rule after which to place the specified receipt rule.

        " } }, "ReceiptRuleNamesList": { "base": null, "refs": { "ReorderReceiptRuleSetRequest$RuleNames": "

        A list of the specified receipt rule set's receipt rules in the order that you want to put them.

        " } }, "ReceiptRuleSetMetadata": { "base": "

        Information about a receipt rule set.

        A receipt rule set is a collection of rules that specify what Amazon SES should do with mail it receives on behalf of your account's verified domains.

        For information about setting up receipt rule sets, see the Amazon SES Developer Guide.

        ", "refs": { "DescribeActiveReceiptRuleSetResponse$Metadata": "

        The metadata for the currently active receipt rule set. The metadata consists of the rule set name and a timestamp of when the rule set was created.

        ", "DescribeReceiptRuleSetResponse$Metadata": "

        The metadata for the receipt rule set, which consists of the rule set name and the timestamp of when the rule set was created.

        ", "ReceiptRuleSetsLists$member": null } }, "ReceiptRuleSetName": { "base": null, "refs": { "CloneReceiptRuleSetRequest$RuleSetName": "

        The name of the rule set to create. The name must:

        • Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores (_), or dashes (-).

        • Start and end with a letter or number.

        • Contain less than 64 characters.

        ", "CloneReceiptRuleSetRequest$OriginalRuleSetName": "

        The name of the rule set to clone.

        ", "CreateReceiptRuleRequest$RuleSetName": "

        The name of the rule set to which to add the rule.

        ", "CreateReceiptRuleSetRequest$RuleSetName": "

        The name of the rule set to create. The name must:

        • Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores (_), or dashes (-).

        • Start and end with a letter or number.

        • Contain less than 64 characters.

        ", "DeleteReceiptRuleRequest$RuleSetName": "

        The name of the receipt rule set that contains the receipt rule to delete.

        ", "DeleteReceiptRuleSetRequest$RuleSetName": "

        The name of the receipt rule set to delete.

        ", "DescribeReceiptRuleRequest$RuleSetName": "

        The name of the receipt rule set to which the receipt rule belongs.

        ", "DescribeReceiptRuleSetRequest$RuleSetName": "

        The name of the receipt rule set to describe.

        ", "ReceiptRuleSetMetadata$Name": "

        The name of the receipt rule set. The name must:

        • Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores (_), or dashes (-).

        • Start and end with a letter or number.

        • Contain less than 64 characters.

        ", "ReorderReceiptRuleSetRequest$RuleSetName": "

        The name of the receipt rule set to reorder.

        ", "SetActiveReceiptRuleSetRequest$RuleSetName": "

        The name of the receipt rule set to make active. Setting this value to null disables all email receiving.

        ", "SetReceiptRulePositionRequest$RuleSetName": "

        The name of the receipt rule set that contains the receipt rule to reposition.

        ", "UpdateReceiptRuleRequest$RuleSetName": "

        The name of the receipt rule set to which the receipt rule belongs.

        " } }, "ReceiptRuleSetsLists": { "base": null, "refs": { "ListReceiptRuleSetsResponse$RuleSets": "

        The metadata for the currently active receipt rule set. The metadata consists of the rule set name and the timestamp of when the rule set was created.

        " } }, "ReceiptRulesList": { "base": null, "refs": { "DescribeActiveReceiptRuleSetResponse$Rules": "

        The receipt rules that belong to the active rule set.

        ", "DescribeReceiptRuleSetResponse$Rules": "

        A list of the receipt rules that belong to the specified receipt rule set.

        " } }, "Recipient": { "base": null, "refs": { "RecipientsList$member": null } }, "RecipientDsnFields": { "base": "

        Recipient-related information to include in the Delivery Status Notification (DSN) when an email that Amazon SES receives on your behalf bounces.

        For information about receiving email through Amazon SES, see the Amazon SES Developer Guide.

        ", "refs": { "BouncedRecipientInfo$RecipientDsnFields": "

        Recipient-related DSN fields, most of which would normally be filled in automatically when provided with a BounceType. You must provide either this parameter or BounceType.

        " } }, "RecipientsList": { "base": null, "refs": { "ReceiptRule$Recipients": "

        The recipient domains and email addresses to which the receipt rule applies. If this field is not specified, this rule will match all recipients under all verified domains.

        " } }, "RemoteMta": { "base": null, "refs": { "RecipientDsnFields$RemoteMta": "

        The MTA to which the remote MTA attempted to deliver the message, formatted as specified in RFC 3464 (mta-name-type; mta-name). This parameter typically applies only to propagating synchronous bounces.

        " } }, "ReorderReceiptRuleSetRequest": { "base": "

        Represents a request to reorder the receipt rules within a receipt rule set. You use receipt rule sets to receive email with Amazon SES. For more information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "ReorderReceiptRuleSetResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "ReportingMta": { "base": null, "refs": { "MessageDsn$ReportingMta": "

        The reporting MTA that attempted to deliver the message, formatted as specified in RFC 3464 (mta-name-type; mta-name). The default value is dns; inbound-smtp.[region].amazonaws.com.

        " } }, "RuleDoesNotExistException": { "base": "

        Indicates that the provided receipt rule does not exist.

        ", "refs": { } }, "RuleOrRuleSetName": { "base": null, "refs": { "AlreadyExistsException$Name": null, "CannotDeleteException$Name": null, "RuleDoesNotExistException$Name": null, "RuleSetDoesNotExistException$Name": null } }, "RuleSetDoesNotExistException": { "base": "

        Indicates that the provided receipt rule set does not exist.

        ", "refs": { } }, "S3Action": { "base": "

        When included in a receipt rule, this action saves the received message to an Amazon Simple Storage Service (Amazon S3) bucket and, optionally, publishes a notification to Amazon Simple Notification Service (Amazon SNS).

        To enable Amazon SES to write emails to your Amazon S3 bucket, use an AWS KMS key to encrypt your emails, or publish to an Amazon SNS topic of another account, Amazon SES must have permission to access those resources. For information about giving permissions, see the Amazon SES Developer Guide.

        When you save your emails to an Amazon S3 bucket, the maximum email size (including headers) is 30 MB. Emails larger than that will bounce.

        For information about specifying Amazon S3 actions in receipt rules, see the Amazon SES Developer Guide.

        ", "refs": { "ReceiptAction$S3Action": "

        Saves the received message to an Amazon Simple Storage Service (Amazon S3) bucket and, optionally, publishes a notification to Amazon SNS.

        " } }, "S3BucketName": { "base": null, "refs": { "InvalidS3ConfigurationException$Bucket": null, "S3Action$BucketName": "

        The name of the Amazon S3 bucket to which to save the received email.

        " } }, "S3KeyPrefix": { "base": null, "refs": { "S3Action$ObjectKeyPrefix": "

        The key prefix of the Amazon S3 bucket. The key prefix is similar to a directory name that enables you to store similar data under the same directory in a bucket.

        " } }, "SNSAction": { "base": "

        When included in a receipt rule, this action publishes a notification to Amazon Simple Notification Service (Amazon SNS). This action includes a complete copy of the email content in the Amazon SNS notifications. Amazon SNS notifications for all other actions simply provide information about the email. They do not include the email content itself.

        If you own the Amazon SNS topic, you don't need to do anything to give Amazon SES permission to publish emails to it. However, if you don't own the Amazon SNS topic, you need to attach a policy to the topic to give Amazon SES permissions to access it. For information about giving permissions, see the Amazon SES Developer Guide.

        You can only publish emails that are 150 KB or less (including the header) to Amazon SNS. Larger emails will bounce. If you anticipate emails larger than 150 KB, use the S3 action instead.

        For information about using a receipt rule to publish an Amazon SNS notification, see the Amazon SES Developer Guide.

        ", "refs": { "ReceiptAction$SNSAction": "

        Publishes the email content within a notification to Amazon SNS.

        " } }, "SNSActionEncoding": { "base": null, "refs": { "SNSAction$Encoding": "

        The encoding to use for the email within the Amazon SNS notification. UTF-8 is easier to use, but may not preserve all special characters when a message was encoded with a different encoding format. Base64 preserves all special characters. The default value is UTF-8.

        " } }, "SendBounceRequest": { "base": "

        Represents a request to send a bounce message to the sender of an email you received through Amazon SES.

        ", "refs": { } }, "SendBounceResponse": { "base": "

        Represents a unique message ID.

        ", "refs": { } }, "SendDataPoint": { "base": "

        Represents sending statistics data. Each SendDataPoint contains statistics for a 15-minute period of sending activity.

        ", "refs": { "SendDataPointList$member": null } }, "SendDataPointList": { "base": null, "refs": { "GetSendStatisticsResponse$SendDataPoints": "

        A list of data points, each of which represents 15 minutes of activity.

        " } }, "SendEmailRequest": { "base": "

        Represents a request to send a single formatted email using Amazon SES. For more information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "SendEmailResponse": { "base": "

        Represents a unique message ID.

        ", "refs": { } }, "SendRawEmailRequest": { "base": "

        Represents a request to send a single raw email using Amazon SES. For more information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "SendRawEmailResponse": { "base": "

        Represents a unique message ID.

        ", "refs": { } }, "SentLast24Hours": { "base": null, "refs": { "GetSendQuotaResponse$SentLast24Hours": "

        The number of emails sent during the previous 24 hours.

        " } }, "SetActiveReceiptRuleSetRequest": { "base": "

        Represents a request to set a receipt rule set as the active receipt rule set. You use receipt rule sets to receive email with Amazon SES. For more information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "SetActiveReceiptRuleSetResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "SetIdentityDkimEnabledRequest": { "base": "

        Represents a request to enable or disable Amazon SES Easy DKIM signing for an identity. For more information about setting up Easy DKIM, see the Amazon SES Developer Guide.

        ", "refs": { } }, "SetIdentityDkimEnabledResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "SetIdentityFeedbackForwardingEnabledRequest": { "base": "

        Represents a request to enable or disable whether Amazon SES forwards you bounce and complaint notifications through email. For information about email feedback forwarding, see the Amazon SES Developer Guide.

        ", "refs": { } }, "SetIdentityFeedbackForwardingEnabledResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "SetIdentityHeadersInNotificationsEnabledRequest": { "base": "

        Represents a request to set whether Amazon SES includes the original email headers in the Amazon SNS notifications of a specified type. For information about notifications, see the Amazon SES Developer Guide.

        ", "refs": { } }, "SetIdentityHeadersInNotificationsEnabledResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "SetIdentityMailFromDomainRequest": { "base": "

        Represents a request to enable or disable the Amazon SES custom MAIL FROM domain setup for a verified identity. For information about using a custom MAIL FROM domain, see the Amazon SES Developer Guide.

        ", "refs": { } }, "SetIdentityMailFromDomainResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "SetIdentityNotificationTopicRequest": { "base": "

        Represents a request to specify the Amazon SNS topic to which Amazon SES will publish bounce, complaint, or delivery notifications for emails sent with that identity as the Source. For information about Amazon SES notifications, see the Amazon SES Developer Guide.

        ", "refs": { } }, "SetIdentityNotificationTopicResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "SetReceiptRulePositionRequest": { "base": "

        Represents a request to set the position of a receipt rule in a receipt rule set. You use receipt rule sets to receive email with Amazon SES. For more information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "SetReceiptRulePositionResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "StopAction": { "base": "

        When included in a receipt rule, this action terminates the evaluation of the receipt rule set and, optionally, publishes a notification to Amazon Simple Notification Service (Amazon SNS).

        For information about setting a stop action in a receipt rule, see the Amazon SES Developer Guide.

        ", "refs": { "ReceiptAction$StopAction": "

        Terminates the evaluation of the receipt rule set and optionally publishes a notification to Amazon SNS.

        " } }, "StopScope": { "base": null, "refs": { "StopAction$Scope": "

        The scope to which the Stop action applies. That is, what is being stopped.

        " } }, "Timestamp": { "base": null, "refs": { "ReceiptRuleSetMetadata$CreatedTimestamp": "

        The date and time the receipt rule set was created.

        ", "SendDataPoint$Timestamp": "

        Time of the data point.

        " } }, "TlsPolicy": { "base": null, "refs": { "ReceiptRule$TlsPolicy": "

        Specifies whether Amazon SES should require that incoming email is delivered over a connection encrypted with Transport Layer Security (TLS). If this parameter is set to Require, Amazon SES will bounce emails that are not received over TLS. The default is Optional.

        " } }, "UpdateReceiptRuleRequest": { "base": "

        Represents a request to update a receipt rule. You use receipt rules to receive email with Amazon SES. For more information, see the Amazon SES Developer Guide.

        ", "refs": { } }, "UpdateReceiptRuleResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "VerificationAttributes": { "base": null, "refs": { "GetIdentityVerificationAttributesResponse$VerificationAttributes": "

        A map of Identities to IdentityVerificationAttributes objects.

        " } }, "VerificationStatus": { "base": null, "refs": { "IdentityDkimAttributes$DkimVerificationStatus": "

        Describes whether Amazon SES has successfully verified the DKIM DNS records (tokens) published in the domain name's DNS. (This only applies to domain identities, not email address identities.)

        ", "IdentityVerificationAttributes$VerificationStatus": "

        The verification status of the identity: \"Pending\", \"Success\", \"Failed\", or \"TemporaryFailure\".

        " } }, "VerificationToken": { "base": null, "refs": { "IdentityVerificationAttributes$VerificationToken": "

        The verification token for a domain identity. Null for email address identities.

        ", "VerificationTokenList$member": null, "VerifyDomainIdentityResponse$VerificationToken": "

        A TXT record that must be placed in the DNS settings for the domain, in order to complete domain verification.

        " } }, "VerificationTokenList": { "base": null, "refs": { "IdentityDkimAttributes$DkimTokens": "

        A set of character strings that represent the domain's identity. Using these tokens, you will need to create DNS CNAME records that point to DKIM public keys hosted by Amazon SES. Amazon Web Services will eventually detect that you have updated your DNS records; this detection process may take up to 72 hours. Upon successful detection, Amazon SES will be able to DKIM-sign email originating from that domain. (This only applies to domain identities, not email address identities.)

        For more information about creating DNS records using DKIM tokens, go to the Amazon SES Developer Guide.

        ", "VerifyDomainDkimResponse$DkimTokens": "

        A set of character strings that represent the domain's identity. If the identity is an email address, the tokens represent the domain of that address.

        Using these tokens, you will need to create DNS CNAME records that point to DKIM public keys hosted by Amazon SES. Amazon Web Services will eventually detect that you have updated your DNS records; this detection process may take up to 72 hours. Upon successful detection, Amazon SES will be able to DKIM-sign emails originating from that domain.

        For more information about creating DNS records using DKIM tokens, go to the Amazon SES Developer Guide.

        " } }, "VerifyDomainDkimRequest": { "base": "

        Represents a request to generate the CNAME records needed to set up Easy DKIM with Amazon SES. For more information about setting up Easy DKIM, see the Amazon SES Developer Guide.

        ", "refs": { } }, "VerifyDomainDkimResponse": { "base": "

        Returns CNAME records that you must publish to the DNS server of your domain to set up Easy DKIM with Amazon SES.

        ", "refs": { } }, "VerifyDomainIdentityRequest": { "base": "

        Represents a request to begin Amazon SES domain verification and to generate the TXT records that you must publish to the DNS server of your domain to complete the verification. For information about domain verification, see the Amazon SES Developer Guide.

        ", "refs": { } }, "VerifyDomainIdentityResponse": { "base": "

        Returns a TXT record that you must publish to the DNS server of your domain to complete domain verification with Amazon SES.

        ", "refs": { } }, "VerifyEmailAddressRequest": { "base": "

        Represents a request to begin email address verification with Amazon SES. For information about email address verification, see the Amazon SES Developer Guide.

        ", "refs": { } }, "VerifyEmailIdentityRequest": { "base": "

        Represents a request to begin email address verification with Amazon SES. For information about email address verification, see the Amazon SES Developer Guide.

        ", "refs": { } }, "VerifyEmailIdentityResponse": { "base": "

        An empty element returned on a successful request.

        ", "refs": { } }, "WorkmailAction": { "base": "

        When included in a receipt rule, this action calls Amazon WorkMail and, optionally, publishes a notification to Amazon Simple Notification Service (Amazon SNS). You will typically not use this action directly because Amazon WorkMail adds the rule automatically during its setup procedure.

        For information using a receipt rule to call Amazon WorkMail, see the Amazon SES Developer Guide.

        ", "refs": { "ReceiptAction$WorkmailAction": "

        Calls Amazon WorkMail and, optionally, publishes a notification to Amazon SNS.

        " } } } } aws-sdk-go-1.4.22/models/apis/email/2010-12-01/examples-1.json000066400000000000000000000642741300374646400227750ustar00rootroot00000000000000{ "version": "1.0", "examples": { "CloneReceiptRuleSet": [ { "input": { "OriginalRuleSetName": "RuleSetToClone", "RuleSetName": "RuleSetToCreate" }, "comments": { "input": { }, "output": { } }, "description": "The following example creates a receipt rule set by cloning an existing one:", "id": "clonereceiptruleset-1469055039770", "title": "CloneReceiptRuleSet" } ], "CreateReceiptFilter": [ { "input": { "Filter": { "IpFilter": { "Cidr": "1.2.3.4/24", "Policy": "Allow" }, "Name": "MyFilter" } }, "comments": { "input": { }, "output": { } }, "description": "The following example creates a new IP address filter:", "id": "createreceiptfilter-1469122681253", "title": "CreateReceiptFilter" } ], "CreateReceiptRule": [ { "input": { "After": "", "Rule": { "Actions": [ { "S3Action": { "BucketName": "MyBucket", "ObjectKeyPrefix": "email" } } ], "Enabled": true, "Name": "MyRule", "ScanEnabled": true, "TlsPolicy": "Optional" }, "RuleSetName": "MyRuleSet" }, "comments": { "input": { }, "output": { } }, "description": "The following example creates a new receipt rule:", "id": "createreceiptrule-1469122946515", "title": "CreateReceiptRule" } ], "CreateReceiptRuleSet": [ { "input": { "RuleSetName": "MyRuleSet" }, "comments": { "input": { }, "output": { } }, "description": "The following example creates an empty receipt rule set:", "id": "createreceiptruleset-1469058761646", "title": "CreateReceiptRuleSet" } ], "DeleteIdentity": [ { "input": { "Identity": "user@example.com" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes an identity from the list of identities that have been submitted for verification with Amazon SES:", "id": "deleteidentity-1469047858906", "title": "DeleteIdentity" } ], "DeleteIdentityPolicy": [ { "input": { "Identity": "user@example.com", "PolicyName": "MyPolicy" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes a sending authorization policy for an identity:", "id": "deleteidentitypolicy-1469055282499", "title": "DeleteIdentityPolicy" } ], "DeleteReceiptFilter": [ { "input": { "FilterName": "MyFilter" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes an IP address filter:", "id": "deletereceiptfilter-1469055456835", "title": "DeleteReceiptFilter" } ], "DeleteReceiptRule": [ { "input": { "RuleName": "MyRule", "RuleSetName": "MyRuleSet" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes a receipt rule:", "id": "deletereceiptrule-1469055563599", "title": "DeleteReceiptRule" } ], "DeleteReceiptRuleSet": [ { "input": { "RuleSetName": "MyRuleSet" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes a receipt rule set:", "id": "deletereceiptruleset-1469055713690", "title": "DeleteReceiptRuleSet" } ], "DeleteVerifiedEmailAddress": [ { "input": { "EmailAddress": "user@example.com" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes an email address from the list of identities that have been submitted for verification with Amazon SES:", "id": "deleteverifiedemailaddress-1469051086444", "title": "DeleteVerifiedEmailAddress" } ], "DescribeActiveReceiptRuleSet": [ { "input": { }, "output": { "Metadata": { "CreatedTimestamp": "2016-07-15T16:25:59.607Z", "Name": "default-rule-set" }, "Rules": [ { "Actions": [ { "S3Action": { "BucketName": "MyBucket", "ObjectKeyPrefix": "email" } } ], "Enabled": true, "Name": "MyRule", "ScanEnabled": true, "TlsPolicy": "Optional" } ] }, "comments": { "input": { }, "output": { } }, "description": "The following example returns the metadata and receipt rules for the receipt rule set that is currently active:", "id": "describeactivereceiptruleset-1469121611502", "title": "DescribeActiveReceiptRuleSet" } ], "DescribeReceiptRule": [ { "input": { "RuleName": "MyRule", "RuleSetName": "MyRuleSet" }, "output": { "Rule": { "Actions": [ { "S3Action": { "BucketName": "MyBucket", "ObjectKeyPrefix": "email" } } ], "Enabled": true, "Name": "MyRule", "ScanEnabled": true, "TlsPolicy": "Optional" } }, "comments": { "input": { }, "output": { } }, "description": "The following example returns the details of a receipt rule:", "id": "describereceiptrule-1469055813118", "title": "DescribeReceiptRule" } ], "DescribeReceiptRuleSet": [ { "input": { "RuleSetName": "MyRuleSet" }, "output": { "Metadata": { "CreatedTimestamp": "2016-07-15T16:25:59.607Z", "Name": "MyRuleSet" }, "Rules": [ { "Actions": [ { "S3Action": { "BucketName": "MyBucket", "ObjectKeyPrefix": "email" } } ], "Enabled": true, "Name": "MyRule", "ScanEnabled": true, "TlsPolicy": "Optional" } ] }, "comments": { "input": { }, "output": { } }, "description": "The following example returns the metadata and receipt rules of a receipt rule set:", "id": "describereceiptruleset-1469121240385", "title": "DescribeReceiptRuleSet" } ], "GetIdentityDkimAttributes": [ { "input": { "Identities": [ "example.com", "user@example.com" ] }, "output": { "DkimAttributes": { "example.com": { "DkimEnabled": true, "DkimTokens": [ "EXAMPLEjcs5xoyqytjsotsijas7236gr", "EXAMPLEjr76cvoc6mysspnioorxsn6ep", "EXAMPLEkbmkqkhlm2lyz77ppkulerm4k" ], "DkimVerificationStatus": "Success" }, "user@example.com": { "DkimEnabled": false, "DkimVerificationStatus": "NotStarted" } } }, "comments": { "input": { }, "output": { } }, "description": "The following example retrieves the Amazon SES Easy DKIM attributes for a list of identities:", "id": "getidentitydkimattributes-1469050695628", "title": "GetIdentityDkimAttributes" } ], "GetIdentityMailFromDomainAttributes": [ { "input": { "Identities": [ "example.com" ] }, "output": { "MailFromDomainAttributes": { "example.com": { "BehaviorOnMXFailure": "UseDefaultValue", "MailFromDomain": "bounces.example.com", "MailFromDomainStatus": "Success" } } }, "comments": { "input": { }, "output": { } }, "description": "The following example returns the custom MAIL FROM attributes for an identity:", "id": "getidentitymailfromdomainattributes-1469123114860", "title": "GetIdentityMailFromDomainAttributes" } ], "GetIdentityNotificationAttributes": [ { "input": { "Identities": [ "example.com" ] }, "output": { "NotificationAttributes": { "example.com": { "BounceTopic": "arn:aws:sns:us-east-1:EXAMPLE65304:ExampleTopic", "ForwardingEnabled": true, "HeadersInBounceNotificationsEnabled": false, "HeadersInComplaintNotificationsEnabled": false, "HeadersInDeliveryNotificationsEnabled": false } } }, "comments": { "input": { }, "output": { } }, "description": "The following example returns the notification attributes for an identity:", "id": "getidentitynotificationattributes-1469123466947", "title": "GetIdentityNotificationAttributes" } ], "GetIdentityPolicies": [ { "input": { "Identity": "example.com", "PolicyNames": [ "MyPolicy" ] }, "output": { "Policies": { "MyPolicy": "{\"Version\":\"2008-10-17\",\"Statement\":[{\"Sid\":\"stmt1469123904194\",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"arn:aws:iam::123456789012:root\"},\"Action\":[\"ses:SendEmail\",\"ses:SendRawEmail\"],\"Resource\":\"arn:aws:ses:us-east-1:EXAMPLE65304:identity/example.com\"}]}" } }, "comments": { "input": { }, "output": { } }, "description": "The following example returns a sending authorization policy for an identity:", "id": "getidentitypolicies-1469123949351", "title": "GetIdentityPolicies" } ], "GetIdentityVerificationAttributes": [ { "input": { "Identities": [ "example.com" ] }, "output": { "VerificationAttributes": { "example.com": { "VerificationStatus": "Success", "VerificationToken": "EXAMPLE3VYb9EDI2nTOQRi/Tf6MI/6bD6THIGiP1MVY=" } } }, "comments": { "input": { }, "output": { } }, "description": "The following example returns the verification status and the verification token for a domain identity:", "id": "getidentityverificationattributes-1469124205897", "title": "GetIdentityVerificationAttributes" } ], "GetSendQuota": [ { "output": { "Max24HourSend": 200, "MaxSendRate": 1, "SentLast24Hours": 1 }, "comments": { "input": { }, "output": { } }, "description": "The following example returns the Amazon SES sending limits for an AWS account:", "id": "getsendquota-1469047324508", "title": "GetSendQuota" } ], "GetSendStatistics": [ { "output": { "SendDataPoints": [ { "Bounces": 0, "Complaints": 0, "DeliveryAttempts": 5, "Rejects": 0, "Timestamp": "2016-07-13T22:43:00Z" }, { "Bounces": 0, "Complaints": 0, "DeliveryAttempts": 3, "Rejects": 0, "Timestamp": "2016-07-13T23:13:00Z" }, { "Bounces": 0, "Complaints": 0, "DeliveryAttempts": 1, "Rejects": 0, "Timestamp": "2016-07-13T21:13:00Z" } ] }, "comments": { "input": { }, "output": { } }, "description": "The following example returns Amazon SES sending statistics:", "id": "getsendstatistics-1469047741329", "title": "GetSendStatistics" } ], "ListIdentities": [ { "input": { "IdentityType": "EmailAddress", "MaxItems": 123, "NextToken": "" }, "output": { "Identities": [ "user@example.com" ], "NextToken": "" }, "comments": { "input": { }, "output": { } }, "description": "The following example lists the email address identities that have been submitted for verification with Amazon SES:", "id": "listidentities-1469048638493", "title": "ListIdentities" } ], "ListIdentityPolicies": [ { "input": { "Identity": "example.com" }, "output": { "PolicyNames": [ "MyPolicy" ] }, "comments": { "input": { }, "output": { } }, "description": "The following example returns a list of sending authorization policies that are attached to an identity:", "id": "listidentitypolicies-1469124417674", "title": "ListIdentityPolicies" } ], "ListReceiptFilters": [ { "output": { "Filters": [ { "IpFilter": { "Cidr": "1.2.3.4/24", "Policy": "Block" }, "Name": "MyFilter" } ] }, "comments": { "input": { }, "output": { } }, "description": "The following example lists the IP address filters that are associated with an AWS account:", "id": "listreceiptfilters-1469120786789", "title": "ListReceiptFilters" } ], "ListReceiptRuleSets": [ { "input": { "NextToken": "" }, "output": { "NextToken": "", "RuleSets": [ { "CreatedTimestamp": "2016-07-15T16:25:59.607Z", "Name": "MyRuleSet" } ] }, "comments": { "input": { }, "output": { } }, "description": "The following example lists the receipt rule sets that exist under an AWS account:", "id": "listreceiptrulesets-1469121037235", "title": "ListReceiptRuleSets" } ], "ListVerifiedEmailAddresses": [ { "output": { "VerifiedEmailAddresses": [ "user1@example.com", "user2@example.com" ] }, "comments": { "input": { }, "output": { } }, "description": "The following example lists all email addresses that have been submitted for verification with Amazon SES:", "id": "listverifiedemailaddresses-1469051402570", "title": "ListVerifiedEmailAddresses" } ], "PutIdentityPolicy": [ { "input": { "Identity": "example.com", "Policy": "{\"Version\":\"2008-10-17\",\"Statement\":[{\"Sid\":\"stmt1469123904194\",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"arn:aws:iam::123456789012:root\"},\"Action\":[\"ses:SendEmail\",\"ses:SendRawEmail\"],\"Resource\":\"arn:aws:ses:us-east-1:EXAMPLE65304:identity/example.com\"}]}", "PolicyName": "MyPolicy" }, "comments": { "input": { }, "output": { } }, "description": "The following example adds a sending authorization policy to an identity:", "id": "putidentitypolicy-1469124560016", "title": "PutIdentityPolicy" } ], "ReorderReceiptRuleSet": [ { "input": { "RuleNames": [ "MyRule", "MyOtherRule" ], "RuleSetName": "MyRuleSet" }, "comments": { "input": { }, "output": { } }, "description": "The following example reorders the receipt rules within a receipt rule set:", "id": "reorderreceiptruleset-1469058156806", "title": "ReorderReceiptRuleSet" } ], "SendEmail": [ { "input": { "Destination": { "BccAddresses": [ ], "CcAddresses": [ "recipient3@example.com" ], "ToAddresses": [ "recipient1@example.com", "recipient2@example.com" ] }, "Message": { "Body": { "Html": { "Charset": "UTF-8", "Data": "This message body contains HTML formatting. It can, for example, contain links like this one: Amazon SES Developer Guide." }, "Text": { "Charset": "UTF-8", "Data": "This is the message body in text format." } }, "Subject": { "Charset": "UTF-8", "Data": "Test email" } }, "ReplyToAddresses": [ ], "ReturnPath": "", "ReturnPathArn": "", "Source": "sender@example.com", "SourceArn": "" }, "output": { "MessageId": "EXAMPLE78603177f-7a5433e7-8edb-42ae-af10-f0181f34d6ee-000000" }, "comments": { "input": { }, "output": { } }, "description": "The following example sends a formatted email:", "id": "sendemail-1469049656296", "title": "SendEmail" } ], "SendRawEmail": [ { "input": { "Destinations": [ ], "FromArn": "", "RawMessage": { "Data": "From: sender@example.com\\nTo: recipient@example.com\\nSubject: Test email (contains an attachment)\\nMIME-Version: 1.0\\nContent-type: Multipart/Mixed; boundary=\"NextPart\"\\n\\n--NextPart\\nContent-Type: text/plain\\n\\nThis is the message body.\\n\\n--NextPart\\nContent-Type: text/plain;\\nContent-Disposition: attachment; filename=\"attachment.txt\"\\n\\nThis is the text in the attachment.\\n\\n--NextPart--" }, "ReturnPathArn": "", "Source": "", "SourceArn": "" }, "output": { "MessageId": "EXAMPLEf3f73d99b-c63fb06f-d263-41f8-a0fb-d0dc67d56c07-000000" }, "comments": { "input": { }, "output": { } }, "description": "The following example sends an email with an attachment:", "id": "sendrawemail-1469118548649", "title": "SendRawEmail" } ], "SetActiveReceiptRuleSet": [ { "input": { "RuleSetName": "RuleSetToActivate" }, "comments": { "input": { }, "output": { } }, "description": "The following example sets the active receipt rule set:", "id": "setactivereceiptruleset-1469058391329", "title": "SetActiveReceiptRuleSet" } ], "SetIdentityDkimEnabled": [ { "input": { "DkimEnabled": true, "Identity": "user@example.com" }, "comments": { "input": { }, "output": { } }, "description": "The following example configures Amazon SES to Easy DKIM-sign the email sent from an identity:", "id": "setidentitydkimenabled-1469057485202", "title": "SetIdentityDkimEnabled" } ], "SetIdentityFeedbackForwardingEnabled": [ { "input": { "ForwardingEnabled": true, "Identity": "user@example.com" }, "comments": { "input": { }, "output": { } }, "description": "The following example configures Amazon SES to forward an identity's bounces and complaints via email:", "id": "setidentityfeedbackforwardingenabled-1469056811329", "title": "SetIdentityFeedbackForwardingEnabled" } ], "SetIdentityHeadersInNotificationsEnabled": [ { "input": { "Enabled": true, "Identity": "user@example.com", "NotificationType": "Bounce" }, "comments": { "input": { }, "output": { } }, "description": "The following example configures Amazon SES to include the original email headers in the Amazon SNS bounce notifications for an identity:", "id": "setidentityheadersinnotificationsenabled-1469057295001", "title": "SetIdentityHeadersInNotificationsEnabled" } ], "SetIdentityMailFromDomain": [ { "input": { "BehaviorOnMXFailure": "UseDefaultValue", "Identity": "user@example.com", "MailFromDomain": "bounces.example.com" }, "comments": { "input": { }, "output": { } }, "description": "The following example configures Amazon SES to use a custom MAIL FROM domain for an identity:", "id": "setidentitymailfromdomain-1469057693908", "title": "SetIdentityMailFromDomain" } ], "SetIdentityNotificationTopic": [ { "input": { "Identity": "user@example.com", "NotificationType": "Bounce", "SnsTopic": "arn:aws:sns:us-west-2:111122223333:MyTopic" }, "comments": { "input": { }, "output": { } }, "description": "The following example sets the Amazon SNS topic to which Amazon SES will publish bounce, complaint, and/or delivery notifications for emails sent with the specified identity as the Source:", "id": "setidentitynotificationtopic-1469057854966", "title": "SetIdentityNotificationTopic" } ], "SetReceiptRulePosition": [ { "input": { "After": "PutRuleAfterThisRule", "RuleName": "RuleToReposition", "RuleSetName": "MyRuleSet" }, "comments": { "input": { }, "output": { } }, "description": "The following example sets the position of a receipt rule in a receipt rule set:", "id": "setreceiptruleposition-1469058530550", "title": "SetReceiptRulePosition" } ], "UpdateReceiptRule": [ { "input": { "Rule": { "Actions": [ { "S3Action": { "BucketName": "MyBucket", "ObjectKeyPrefix": "email" } } ], "Enabled": true, "Name": "MyRule", "ScanEnabled": true, "TlsPolicy": "Optional" }, "RuleSetName": "MyRuleSet" }, "comments": { "input": { }, "output": { } }, "description": "The following example updates a receipt rule to use an Amazon S3 action:", "id": "updatereceiptrule-1469051756940", "title": "UpdateReceiptRule" } ], "VerifyDomainDkim": [ { "input": { "Domain": "example.com" }, "output": { "DkimTokens": [ "EXAMPLEq76owjnks3lnluwg65scbemvw", "EXAMPLEi3dnsj67hstzaj673klariwx2", "EXAMPLEwfbtcukvimehexktmdtaz6naj" ] }, "comments": { "input": { }, "output": { } }, "description": "The following example generates DKIM tokens for a domain that has been verified with Amazon SES:", "id": "verifydomaindkim-1469049503083", "title": "VerifyDomainDkim" } ], "VerifyDomainIdentity": [ { "input": { "Domain": "example.com" }, "output": { "VerificationToken": "eoEmxw+YaYhb3h3iVJHuXMJXqeu1q1/wwmvjuEXAMPLE" }, "comments": { "input": { }, "output": { } }, "description": "The following example starts the domain verification process with Amazon SES:", "id": "verifydomainidentity-1469049165936", "title": "VerifyDomainIdentity" } ], "VerifyEmailAddress": [ { "input": { "EmailAddress": "user@example.com" }, "comments": { "input": { }, "output": { } }, "description": "The following example starts the email address verification process with Amazon SES:", "id": "verifyemailaddress-1469048849187", "title": "VerifyEmailAddress" } ], "VerifyEmailIdentity": [ { "input": { "EmailAddress": "user@example.com" }, "comments": { "input": { }, "output": { } }, "description": "The following example starts the email address verification process with Amazon SES:", "id": "verifyemailidentity-1469049068623", "title": "VerifyEmailIdentity" } ] } } aws-sdk-go-1.4.22/models/apis/email/2010-12-01/paginators-1.json000066400000000000000000000004251300374646400233120ustar00rootroot00000000000000{ "pagination": { "ListIdentities": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxItems", "result_key": "Identities" }, "ListVerifiedEmailAddresses": { "result_key": "VerifiedEmailAddresses" } } } aws-sdk-go-1.4.22/models/apis/email/2010-12-01/waiters-2.json000066400000000000000000000005741300374646400226270ustar00rootroot00000000000000{ "version": 2, "waiters": { "IdentityExists": { "delay": 3, "operation": "GetIdentityVerificationAttributes", "maxAttempts": 20, "acceptors": [ { "expected": "Success", "matcher": "pathAll", "state": "success", "argument": "VerificationAttributes.*.VerificationStatus" } ] } } } aws-sdk-go-1.4.22/models/apis/es/000077500000000000000000000000001300374646400164115ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/es/2015-01-01/000077500000000000000000000000001300374646400174345ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/es/2015-01-01/api-2.json000066400000000000000000000410761300374646400212470ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-01-01", "endpointPrefix":"es", "protocol":"rest-json", "serviceFullName":"Amazon Elasticsearch Service", "signatureVersion":"v4" }, "operations":{ "AddTags":{ "name":"AddTags", "http":{ "method":"POST", "requestUri":"/2015-01-01/tags" }, "input":{"shape":"AddTagsRequest"}, "errors":[ {"shape":"BaseException"}, {"shape":"LimitExceededException"}, {"shape":"ValidationException"}, {"shape":"InternalException"} ] }, "CreateElasticsearchDomain":{ "name":"CreateElasticsearchDomain", "http":{ "method":"POST", "requestUri":"/2015-01-01/es/domain" }, "input":{"shape":"CreateElasticsearchDomainRequest"}, "output":{"shape":"CreateElasticsearchDomainResponse"}, "errors":[ {"shape":"BaseException"}, {"shape":"DisabledOperationException"}, {"shape":"InternalException"}, {"shape":"InvalidTypeException"}, {"shape":"LimitExceededException"}, {"shape":"ResourceAlreadyExistsException"}, {"shape":"ValidationException"} ] }, "DeleteElasticsearchDomain":{ "name":"DeleteElasticsearchDomain", "http":{ "method":"DELETE", "requestUri":"/2015-01-01/es/domain/{DomainName}" }, "input":{"shape":"DeleteElasticsearchDomainRequest"}, "output":{"shape":"DeleteElasticsearchDomainResponse"}, "errors":[ {"shape":"BaseException"}, {"shape":"InternalException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ValidationException"} ] }, "DescribeElasticsearchDomain":{ "name":"DescribeElasticsearchDomain", "http":{ "method":"GET", "requestUri":"/2015-01-01/es/domain/{DomainName}" }, "input":{"shape":"DescribeElasticsearchDomainRequest"}, "output":{"shape":"DescribeElasticsearchDomainResponse"}, "errors":[ {"shape":"BaseException"}, {"shape":"InternalException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ValidationException"} ] }, "DescribeElasticsearchDomainConfig":{ "name":"DescribeElasticsearchDomainConfig", "http":{ "method":"GET", "requestUri":"/2015-01-01/es/domain/{DomainName}/config" }, "input":{"shape":"DescribeElasticsearchDomainConfigRequest"}, "output":{"shape":"DescribeElasticsearchDomainConfigResponse"}, "errors":[ {"shape":"BaseException"}, {"shape":"InternalException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ValidationException"} ] }, "DescribeElasticsearchDomains":{ "name":"DescribeElasticsearchDomains", "http":{ "method":"POST", "requestUri":"/2015-01-01/es/domain-info" }, "input":{"shape":"DescribeElasticsearchDomainsRequest"}, "output":{"shape":"DescribeElasticsearchDomainsResponse"}, "errors":[ {"shape":"BaseException"}, {"shape":"InternalException"}, {"shape":"ValidationException"} ] }, "ListDomainNames":{ "name":"ListDomainNames", "http":{ "method":"GET", "requestUri":"/2015-01-01/domain" }, "output":{"shape":"ListDomainNamesResponse"}, "errors":[ {"shape":"BaseException"}, {"shape":"ValidationException"} ] }, "ListTags":{ "name":"ListTags", "http":{ "method":"GET", "requestUri":"/2015-01-01/tags/" }, "input":{"shape":"ListTagsRequest"}, "output":{"shape":"ListTagsResponse"}, "errors":[ {"shape":"BaseException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ValidationException"}, {"shape":"InternalException"} ] }, "RemoveTags":{ "name":"RemoveTags", "http":{ "method":"POST", "requestUri":"/2015-01-01/tags-removal" }, "input":{"shape":"RemoveTagsRequest"}, "errors":[ {"shape":"BaseException"}, {"shape":"ValidationException"}, {"shape":"InternalException"} ] }, "UpdateElasticsearchDomainConfig":{ "name":"UpdateElasticsearchDomainConfig", "http":{ "method":"POST", "requestUri":"/2015-01-01/es/domain/{DomainName}/config" }, "input":{"shape":"UpdateElasticsearchDomainConfigRequest"}, "output":{"shape":"UpdateElasticsearchDomainConfigResponse"}, "errors":[ {"shape":"BaseException"}, {"shape":"InternalException"}, {"shape":"InvalidTypeException"}, {"shape":"LimitExceededException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ValidationException"} ] } }, "shapes":{ "ARN":{"type":"string"}, "AccessPoliciesStatus":{ "type":"structure", "required":[ "Options", "Status" ], "members":{ "Options":{"shape":"PolicyDocument"}, "Status":{"shape":"OptionStatus"} } }, "AddTagsRequest":{ "type":"structure", "required":[ "ARN", "TagList" ], "members":{ "ARN":{"shape":"ARN"}, "TagList":{"shape":"TagList"} } }, "AdvancedOptions":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"String"} }, "AdvancedOptionsStatus":{ "type":"structure", "required":[ "Options", "Status" ], "members":{ "Options":{"shape":"AdvancedOptions"}, "Status":{"shape":"OptionStatus"} } }, "BaseException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "Boolean":{"type":"boolean"}, "CreateElasticsearchDomainRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"}, "ElasticsearchVersion":{"shape":"ElasticsearchVersionString"}, "ElasticsearchClusterConfig":{"shape":"ElasticsearchClusterConfig"}, "EBSOptions":{"shape":"EBSOptions"}, "AccessPolicies":{"shape":"PolicyDocument"}, "SnapshotOptions":{"shape":"SnapshotOptions"}, "AdvancedOptions":{"shape":"AdvancedOptions"} } }, "CreateElasticsearchDomainResponse":{ "type":"structure", "members":{ "DomainStatus":{"shape":"ElasticsearchDomainStatus"} } }, "DeleteElasticsearchDomainRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{ "shape":"DomainName", "location":"uri", "locationName":"DomainName" } } }, "DeleteElasticsearchDomainResponse":{ "type":"structure", "members":{ "DomainStatus":{"shape":"ElasticsearchDomainStatus"} } }, "DescribeElasticsearchDomainConfigRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{ "shape":"DomainName", "location":"uri", "locationName":"DomainName" } } }, "DescribeElasticsearchDomainConfigResponse":{ "type":"structure", "required":["DomainConfig"], "members":{ "DomainConfig":{"shape":"ElasticsearchDomainConfig"} } }, "DescribeElasticsearchDomainRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{ "shape":"DomainName", "location":"uri", "locationName":"DomainName" } } }, "DescribeElasticsearchDomainResponse":{ "type":"structure", "required":["DomainStatus"], "members":{ "DomainStatus":{"shape":"ElasticsearchDomainStatus"} } }, "DescribeElasticsearchDomainsRequest":{ "type":"structure", "required":["DomainNames"], "members":{ "DomainNames":{"shape":"DomainNameList"} } }, "DescribeElasticsearchDomainsResponse":{ "type":"structure", "required":["DomainStatusList"], "members":{ "DomainStatusList":{"shape":"ElasticsearchDomainStatusList"} } }, "DisabledOperationException":{ "type":"structure", "members":{ }, "error":{"httpStatusCode":409}, "exception":true }, "DomainId":{ "type":"string", "max":64, "min":1 }, "DomainInfo":{ "type":"structure", "members":{ "DomainName":{"shape":"DomainName"} } }, "DomainInfoList":{ "type":"list", "member":{"shape":"DomainInfo"} }, "DomainName":{ "type":"string", "max":28, "min":3, "pattern":"[a-z][a-z0-9\\-]+" }, "DomainNameList":{ "type":"list", "member":{"shape":"DomainName"} }, "EBSOptions":{ "type":"structure", "members":{ "EBSEnabled":{"shape":"Boolean"}, "VolumeType":{"shape":"VolumeType"}, "VolumeSize":{"shape":"IntegerClass"}, "Iops":{"shape":"IntegerClass"} } }, "EBSOptionsStatus":{ "type":"structure", "required":[ "Options", "Status" ], "members":{ "Options":{"shape":"EBSOptions"}, "Status":{"shape":"OptionStatus"} } }, "ESPartitionInstanceType":{ "type":"string", "enum":[ "m3.medium.elasticsearch", "m3.large.elasticsearch", "m3.xlarge.elasticsearch", "m3.2xlarge.elasticsearch", "m4.large.elasticsearch", "m4.xlarge.elasticsearch", "m4.2xlarge.elasticsearch", "m4.4xlarge.elasticsearch", "m4.10xlarge.elasticsearch", "t2.micro.elasticsearch", "t2.small.elasticsearch", "t2.medium.elasticsearch", "r3.large.elasticsearch", "r3.xlarge.elasticsearch", "r3.2xlarge.elasticsearch", "r3.4xlarge.elasticsearch", "r3.8xlarge.elasticsearch", "i2.xlarge.elasticsearch", "i2.2xlarge.elasticsearch" ] }, "ElasticsearchClusterConfig":{ "type":"structure", "members":{ "InstanceType":{"shape":"ESPartitionInstanceType"}, "InstanceCount":{"shape":"IntegerClass"}, "DedicatedMasterEnabled":{"shape":"Boolean"}, "ZoneAwarenessEnabled":{"shape":"Boolean"}, "DedicatedMasterType":{"shape":"ESPartitionInstanceType"}, "DedicatedMasterCount":{"shape":"IntegerClass"} } }, "ElasticsearchClusterConfigStatus":{ "type":"structure", "required":[ "Options", "Status" ], "members":{ "Options":{"shape":"ElasticsearchClusterConfig"}, "Status":{"shape":"OptionStatus"} } }, "ElasticsearchDomainConfig":{ "type":"structure", "members":{ "ElasticsearchVersion":{"shape":"ElasticsearchVersionStatus"}, "ElasticsearchClusterConfig":{"shape":"ElasticsearchClusterConfigStatus"}, "EBSOptions":{"shape":"EBSOptionsStatus"}, "AccessPolicies":{"shape":"AccessPoliciesStatus"}, "SnapshotOptions":{"shape":"SnapshotOptionsStatus"}, "AdvancedOptions":{"shape":"AdvancedOptionsStatus"} } }, "ElasticsearchDomainStatus":{ "type":"structure", "required":[ "DomainId", "DomainName", "ARN", "ElasticsearchClusterConfig" ], "members":{ "DomainId":{"shape":"DomainId"}, "DomainName":{"shape":"DomainName"}, "ARN":{"shape":"ARN"}, "Created":{"shape":"Boolean"}, "Deleted":{"shape":"Boolean"}, "Endpoint":{"shape":"ServiceUrl"}, "Processing":{"shape":"Boolean"}, "ElasticsearchVersion":{"shape":"ElasticsearchVersionString"}, "ElasticsearchClusterConfig":{"shape":"ElasticsearchClusterConfig"}, "EBSOptions":{"shape":"EBSOptions"}, "AccessPolicies":{"shape":"PolicyDocument"}, "SnapshotOptions":{"shape":"SnapshotOptions"}, "AdvancedOptions":{"shape":"AdvancedOptions"} } }, "ElasticsearchDomainStatusList":{ "type":"list", "member":{"shape":"ElasticsearchDomainStatus"} }, "ElasticsearchVersionStatus":{ "type":"structure", "required":[ "Options", "Status" ], "members":{ "Options":{"shape":"ElasticsearchVersionString"}, "Status":{"shape":"OptionStatus"} } }, "ElasticsearchVersionString":{"type":"string"}, "ErrorMessage":{"type":"string"}, "IntegerClass":{"type":"integer"}, "InternalException":{ "type":"structure", "members":{ }, "error":{"httpStatusCode":500}, "exception":true }, "InvalidTypeException":{ "type":"structure", "members":{ }, "error":{"httpStatusCode":409}, "exception":true }, "LimitExceededException":{ "type":"structure", "members":{ }, "error":{"httpStatusCode":409}, "exception":true }, "ListDomainNamesResponse":{ "type":"structure", "members":{ "DomainNames":{"shape":"DomainInfoList"} } }, "ListTagsRequest":{ "type":"structure", "required":["ARN"], "members":{ "ARN":{ "shape":"ARN", "location":"querystring", "locationName":"arn" } } }, "ListTagsResponse":{ "type":"structure", "members":{ "TagList":{"shape":"TagList"} } }, "OptionState":{ "type":"string", "enum":[ "RequiresIndexDocuments", "Processing", "Active" ] }, "OptionStatus":{ "type":"structure", "required":[ "CreationDate", "UpdateDate", "State" ], "members":{ "CreationDate":{"shape":"UpdateTimestamp"}, "UpdateDate":{"shape":"UpdateTimestamp"}, "UpdateVersion":{"shape":"UIntValue"}, "State":{"shape":"OptionState"}, "PendingDeletion":{"shape":"Boolean"} } }, "PolicyDocument":{"type":"string"}, "RemoveTagsRequest":{ "type":"structure", "required":[ "ARN", "TagKeys" ], "members":{ "ARN":{"shape":"ARN"}, "TagKeys":{"shape":"StringList"} } }, "ResourceAlreadyExistsException":{ "type":"structure", "members":{ }, "error":{"httpStatusCode":409}, "exception":true }, "ResourceNotFoundException":{ "type":"structure", "members":{ }, "error":{"httpStatusCode":409}, "exception":true }, "ServiceUrl":{"type":"string"}, "SnapshotOptions":{ "type":"structure", "members":{ "AutomatedSnapshotStartHour":{"shape":"IntegerClass"} } }, "SnapshotOptionsStatus":{ "type":"structure", "required":[ "Options", "Status" ], "members":{ "Options":{"shape":"SnapshotOptions"}, "Status":{"shape":"OptionStatus"} } }, "String":{"type":"string"}, "StringList":{ "type":"list", "member":{"shape":"String"} }, "Tag":{ "type":"structure", "required":[ "Key", "Value" ], "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{ "type":"string", "max":128, "min":1 }, "TagList":{ "type":"list", "member":{"shape":"Tag"} }, "TagValue":{ "type":"string", "max":256, "min":0 }, "UIntValue":{ "type":"integer", "min":0 }, "UpdateElasticsearchDomainConfigRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{ "shape":"DomainName", "location":"uri", "locationName":"DomainName" }, "ElasticsearchClusterConfig":{"shape":"ElasticsearchClusterConfig"}, "EBSOptions":{"shape":"EBSOptions"}, "SnapshotOptions":{"shape":"SnapshotOptions"}, "AdvancedOptions":{"shape":"AdvancedOptions"}, "AccessPolicies":{"shape":"PolicyDocument"} } }, "UpdateElasticsearchDomainConfigResponse":{ "type":"structure", "required":["DomainConfig"], "members":{ "DomainConfig":{"shape":"ElasticsearchDomainConfig"} } }, "UpdateTimestamp":{"type":"timestamp"}, "ValidationException":{ "type":"structure", "members":{ }, "error":{"httpStatusCode":400}, "exception":true }, "VolumeType":{ "type":"string", "enum":[ "standard", "gp2", "io1" ] } } } aws-sdk-go-1.4.22/models/apis/es/2015-01-01/docs-2.json000066400000000000000000000731671300374646400214340ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon Elasticsearch Configuration Service

        Use the Amazon Elasticsearch configuration API to create, configure, and manage Elasticsearch domains.

        The endpoint for configuration service requests is region-specific: es.region.amazonaws.com. For example, es.us-east-1.amazonaws.com. For a current list of supported regions and endpoints, see Regions and Endpoints.

        ", "operations": { "AddTags": "

        Attaches tags to an existing Elasticsearch domain. Tags are a set of case-sensitive key value pairs. An Elasticsearch domain may have up to 10 tags. See Tagging Amazon Elasticsearch Service Domains for more information.

        ", "CreateElasticsearchDomain": "

        Creates a new Elasticsearch domain. For more information, see Creating Elasticsearch Domains in the Amazon Elasticsearch Service Developer Guide.

        ", "DeleteElasticsearchDomain": "

        Permanently deletes the specified Elasticsearch domain and all of its data. Once a domain is deleted, it cannot be recovered.

        ", "DescribeElasticsearchDomain": "

        Returns domain configuration information about the specified Elasticsearch domain, including the domain ID, domain endpoint, and domain ARN.

        ", "DescribeElasticsearchDomainConfig": "

        Provides cluster configuration information about the specified Elasticsearch domain, such as the state, creation date, update version, and update date for cluster options.

        ", "DescribeElasticsearchDomains": "

        Returns domain configuration information about the specified Elasticsearch domains, including the domain ID, domain endpoint, and domain ARN.

        ", "ListDomainNames": "

        Returns the name of all Elasticsearch domains owned by the current user's account.

        ", "ListTags": "

        Returns all tags for the given Elasticsearch domain.

        ", "RemoveTags": "

        Removes the specified set of tags from the specified Elasticsearch domain.

        ", "UpdateElasticsearchDomainConfig": "

        Modifies the cluster configuration of the specified Elasticsearch domain, setting as setting the instance type and the number of instances.

        " }, "shapes": { "ARN": { "base": "

        The Amazon Resource Name (ARN) of the Elasticsearch domain. See Identifiers for IAM Entities in Using AWS Identity and Access Management for more information.

        ", "refs": { "AddTagsRequest$ARN": "

        Specify the ARN for which you want to add the tags.

        ", "ElasticsearchDomainStatus$ARN": "

        The Amazon resource name (ARN) of an Elasticsearch domain. See Identifiers for IAM Entities in Using AWS Identity and Access Management for more information.

        ", "ListTagsRequest$ARN": "

        Specify the ARN for the Elasticsearch domain to which the tags are attached that you want to view.

        ", "RemoveTagsRequest$ARN": "

        Specifies the ARN for the Elasticsearch domain from which you want to delete the specified tags.

        " } }, "AccessPoliciesStatus": { "base": "

        The configured access rules for the domain's document and search endpoints, and the current status of those rules.

        ", "refs": { "ElasticsearchDomainConfig$AccessPolicies": "

        IAM access policy as a JSON-formatted string.

        " } }, "AddTagsRequest": { "base": "

        Container for the parameters to the AddTags operation. Specify the tags that you want to attach to the Elasticsearch domain.

        ", "refs": { } }, "AdvancedOptions": { "base": "

        Exposes select native Elasticsearch configuration values from elasticsearch.yml. Currently, the following advanced options are available:

        • Option to allow references to indices in an HTTP request body. Must be false when configuring access to individual sub-resources. By default, the value is true. See Configuration Advanced Options for more information.
        • Option to specify the percentage of heap space that is allocated to field data. By default, this setting is unbounded.

        For more information, see Configuring Advanced Options.

        ", "refs": { "AdvancedOptionsStatus$Options": "

        Specifies the status of advanced options for the specified Elasticsearch domain.

        ", "CreateElasticsearchDomainRequest$AdvancedOptions": "

        Option to allow references to indices in an HTTP request body. Must be false when configuring access to individual sub-resources. By default, the value is true. See Configuration Advanced Options for more information.

        ", "ElasticsearchDomainStatus$AdvancedOptions": "

        Specifies the status of the AdvancedOptions

        ", "UpdateElasticsearchDomainConfigRequest$AdvancedOptions": "

        Modifies the advanced option to allow references to indices in an HTTP request body. Must be false when configuring access to individual sub-resources. By default, the value is true. See Configuration Advanced Options for more information.

        " } }, "AdvancedOptionsStatus": { "base": "

        Status of the advanced options for the specified Elasticsearch domain. Currently, the following advanced options are available:

        • Option to allow references to indices in an HTTP request body. Must be false when configuring access to individual sub-resources. By default, the value is true. See Configuration Advanced Options for more information.
        • Option to specify the percentage of heap space that is allocated to field data. By default, this setting is unbounded.

        For more information, see Configuring Advanced Options.

        ", "refs": { "ElasticsearchDomainConfig$AdvancedOptions": "

        Specifies the AdvancedOptions for the domain. See Configuring Advanced Options for more information.

        " } }, "BaseException": { "base": "

        An error occurred while processing the request.

        ", "refs": { } }, "Boolean": { "base": null, "refs": { "EBSOptions$EBSEnabled": "

        Specifies whether EBS-based storage is enabled.

        ", "ElasticsearchClusterConfig$DedicatedMasterEnabled": "

        A boolean value to indicate whether a dedicated master node is enabled. See About Dedicated Master Nodes for more information.

        ", "ElasticsearchClusterConfig$ZoneAwarenessEnabled": "

        A boolean value to indicate whether zone awareness is enabled. See About Zone Awareness for more information.

        ", "ElasticsearchDomainStatus$Created": "

        The domain creation status. True if the creation of an Elasticsearch domain is complete. False if domain creation is still in progress.

        ", "ElasticsearchDomainStatus$Deleted": "

        The domain deletion status. True if a delete request has been received for the domain but resource cleanup is still in progress. False if the domain has not been deleted. Once domain deletion is complete, the status of the domain is no longer returned.

        ", "ElasticsearchDomainStatus$Processing": "

        The status of the Elasticsearch domain configuration. True if Amazon Elasticsearch Service is processing configuration changes. False if the configuration is active.

        ", "OptionStatus$PendingDeletion": "

        Indicates whether the Elasticsearch domain is being deleted.

        " } }, "CreateElasticsearchDomainRequest": { "base": null, "refs": { } }, "CreateElasticsearchDomainResponse": { "base": "

        The result of a CreateElasticsearchDomain operation. Contains the status of the newly created Elasticsearch domain.

        ", "refs": { } }, "DeleteElasticsearchDomainRequest": { "base": "

        Container for the parameters to the DeleteElasticsearchDomain operation. Specifies the name of the Elasticsearch domain that you want to delete.

        ", "refs": { } }, "DeleteElasticsearchDomainResponse": { "base": "

        The result of a DeleteElasticsearchDomain request. Contains the status of the pending deletion, or no status if the domain and all of its resources have been deleted.

        ", "refs": { } }, "DescribeElasticsearchDomainConfigRequest": { "base": "

        Container for the parameters to the DescribeElasticsearchDomainConfig operation. Specifies the domain name for which you want configuration information.

        ", "refs": { } }, "DescribeElasticsearchDomainConfigResponse": { "base": "

        The result of a DescribeElasticsearchDomainConfig request. Contains the configuration information of the requested domain.

        ", "refs": { } }, "DescribeElasticsearchDomainRequest": { "base": "

        Container for the parameters to the DescribeElasticsearchDomain operation.

        ", "refs": { } }, "DescribeElasticsearchDomainResponse": { "base": "

        The result of a DescribeElasticsearchDomain request. Contains the status of the domain specified in the request.

        ", "refs": { } }, "DescribeElasticsearchDomainsRequest": { "base": "

        Container for the parameters to the DescribeElasticsearchDomains operation. By default, the API returns the status of all Elasticsearch domains.

        ", "refs": { } }, "DescribeElasticsearchDomainsResponse": { "base": "

        The result of a DescribeElasticsearchDomains request. Contains the status of the specified domains or all domains owned by the account.

        ", "refs": { } }, "DisabledOperationException": { "base": "

        An error occured because the client wanted to access a not supported operation. Gives http status code of 409.

        ", "refs": { } }, "DomainId": { "base": "

        Unique identifier for an Elasticsearch domain.

        ", "refs": { "ElasticsearchDomainStatus$DomainId": "

        The unique identifier for the specified Elasticsearch domain.

        " } }, "DomainInfo": { "base": null, "refs": { "DomainInfoList$member": null } }, "DomainInfoList": { "base": "

        Contains the list of Elasticsearch domain information.

        ", "refs": { "ListDomainNamesResponse$DomainNames": "

        List of Elasticsearch domain names.

        " } }, "DomainName": { "base": "

        The name of an Elasticsearch domain. Domain names are unique across the domains owned by an account within an AWS region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, and - (hyphen).

        ", "refs": { "CreateElasticsearchDomainRequest$DomainName": "

        The name of the Elasticsearch domain that you are creating. Domain names are unique across the domains owned by an account within an AWS region. Domain names must start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, and - (hyphen).

        ", "DeleteElasticsearchDomainRequest$DomainName": "

        The name of the Elasticsearch domain that you want to permanently delete.

        ", "DescribeElasticsearchDomainConfigRequest$DomainName": "

        The Elasticsearch domain that you want to get information about.

        ", "DescribeElasticsearchDomainRequest$DomainName": "

        The name of the Elasticsearch domain for which you want information.

        ", "DomainInfo$DomainName": "

        Specifies the DomainName.

        ", "DomainNameList$member": null, "ElasticsearchDomainStatus$DomainName": "

        The name of an Elasticsearch domain. Domain names are unique across the domains owned by an account within an AWS region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, and - (hyphen).

        ", "UpdateElasticsearchDomainConfigRequest$DomainName": "

        The name of the Elasticsearch domain that you are updating.

        " } }, "DomainNameList": { "base": "

        A list of Elasticsearch domain names.

        ", "refs": { "DescribeElasticsearchDomainsRequest$DomainNames": "

        The Elasticsearch domains for which you want information.

        " } }, "EBSOptions": { "base": "

        Options to enable, disable, and specify the properties of EBS storage volumes. For more information, see Configuring EBS-based Storage.

        ", "refs": { "CreateElasticsearchDomainRequest$EBSOptions": "

        Options to enable, disable and specify the type and size of EBS storage volumes.

        ", "EBSOptionsStatus$Options": "

        Specifies the EBS options for the specified Elasticsearch domain.

        ", "ElasticsearchDomainStatus$EBSOptions": "

        The EBSOptions for the specified domain. See Configuring EBS-based Storage for more information.

        ", "UpdateElasticsearchDomainConfigRequest$EBSOptions": "

        Specify the type and size of the EBS volume that you want to use.

        " } }, "EBSOptionsStatus": { "base": "

        Status of the EBS options for the specified Elasticsearch domain.

        ", "refs": { "ElasticsearchDomainConfig$EBSOptions": "

        Specifies the EBSOptions for the Elasticsearch domain.

        " } }, "ESPartitionInstanceType": { "base": null, "refs": { "ElasticsearchClusterConfig$InstanceType": "

        The instance type for an Elasticsearch cluster.

        ", "ElasticsearchClusterConfig$DedicatedMasterType": "

        The instance type for a dedicated master node.

        " } }, "ElasticsearchClusterConfig": { "base": "

        Specifies the configuration for the domain cluster, such as the type and number of instances.

        ", "refs": { "CreateElasticsearchDomainRequest$ElasticsearchClusterConfig": "

        Configuration options for an Elasticsearch domain. Specifies the instance type and number of instances in the domain cluster.

        ", "ElasticsearchClusterConfigStatus$Options": "

        Specifies the cluster configuration for the specified Elasticsearch domain.

        ", "ElasticsearchDomainStatus$ElasticsearchClusterConfig": "

        The type and number of instances in the domain cluster.

        ", "UpdateElasticsearchDomainConfigRequest$ElasticsearchClusterConfig": "

        The type and number of instances to instantiate for the domain cluster.

        " } }, "ElasticsearchClusterConfigStatus": { "base": "

        Specifies the configuration status for the specified Elasticsearch domain.

        ", "refs": { "ElasticsearchDomainConfig$ElasticsearchClusterConfig": "

        Specifies the ElasticsearchClusterConfig for the Elasticsearch domain.

        " } }, "ElasticsearchDomainConfig": { "base": "

        The configuration of an Elasticsearch domain.

        ", "refs": { "DescribeElasticsearchDomainConfigResponse$DomainConfig": "

        The configuration information of the domain requested in the DescribeElasticsearchDomainConfig request.

        ", "UpdateElasticsearchDomainConfigResponse$DomainConfig": "

        The status of the updated Elasticsearch domain.

        " } }, "ElasticsearchDomainStatus": { "base": "

        The current status of an Elasticsearch domain.

        ", "refs": { "CreateElasticsearchDomainResponse$DomainStatus": "

        The status of the newly created Elasticsearch domain.

        ", "DeleteElasticsearchDomainResponse$DomainStatus": "

        The status of the Elasticsearch domain being deleted.

        ", "DescribeElasticsearchDomainResponse$DomainStatus": "

        The current status of the Elasticsearch domain.

        ", "ElasticsearchDomainStatusList$member": null } }, "ElasticsearchDomainStatusList": { "base": "

        A list that contains the status of each requested Elasticsearch domain.

        ", "refs": { "DescribeElasticsearchDomainsResponse$DomainStatusList": "

        The status of the domains requested in the DescribeElasticsearchDomains request.

        " } }, "ElasticsearchVersionStatus": { "base": "

        Status of the Elasticsearch version options for the specified Elasticsearch domain.

        ", "refs": { "ElasticsearchDomainConfig$ElasticsearchVersion": "

        String of format X.Y to specify version for the Elasticsearch domain.

        " } }, "ElasticsearchVersionString": { "base": null, "refs": { "CreateElasticsearchDomainRequest$ElasticsearchVersion": "

        String of format X.Y to specify version for the Elasticsearch domain eg. \"1.5\" or \"2.3\". For more information, see Creating Elasticsearch Domains in the Amazon Elasticsearch Service Developer Guide.

        ", "ElasticsearchDomainStatus$ElasticsearchVersion": null, "ElasticsearchVersionStatus$Options": "

        Specifies the Elasticsearch version for the specified Elasticsearch domain.

        " } }, "ErrorMessage": { "base": null, "refs": { "BaseException$message": "

        A description of the error.

        " } }, "IntegerClass": { "base": null, "refs": { "EBSOptions$VolumeSize": "

        Integer to specify the size of an EBS volume.

        ", "EBSOptions$Iops": "

        Specifies the IOPD for a Provisioned IOPS EBS volume (SSD).

        ", "ElasticsearchClusterConfig$InstanceCount": "

        The number of instances in the specified domain cluster.

        ", "ElasticsearchClusterConfig$DedicatedMasterCount": "

        Total number of dedicated master nodes, active and on standby, for the cluster.

        ", "SnapshotOptions$AutomatedSnapshotStartHour": "

        Specifies the time, in UTC format, when the service takes a daily automated snapshot of the specified Elasticsearch domain. Default value is 0 hours.

        " } }, "InternalException": { "base": "

        The request processing has failed because of an unknown error, exception or failure (the failure is internal to the service) . Gives http status code of 500.

        ", "refs": { } }, "InvalidTypeException": { "base": "

        An exception for trying to create or access sub-resource that is either invalid or not supported. Gives http status code of 409.

        ", "refs": { } }, "LimitExceededException": { "base": "

        An exception for trying to create more than allowed resources or sub-resources. Gives http status code of 409.

        ", "refs": { } }, "ListDomainNamesResponse": { "base": "

        The result of a ListDomainNames operation. Contains the names of all Elasticsearch domains owned by this account.

        ", "refs": { } }, "ListTagsRequest": { "base": "

        Container for the parameters to the ListTags operation. Specify the ARN for the Elasticsearch domain to which the tags are attached that you want to view are attached.

        ", "refs": { } }, "ListTagsResponse": { "base": "

        The result of a ListTags operation. Contains tags for all requested Elasticsearch domains.

        ", "refs": { } }, "OptionState": { "base": "

        The state of a requested change. One of the following:

        • Processing: The request change is still in-process.
        • Active: The request change is processed and deployed to the Elasticsearch domain.
        ", "refs": { "OptionStatus$State": "

        Provides the OptionState for the Elasticsearch domain.

        " } }, "OptionStatus": { "base": "

        Provides the current status of the entity.

        ", "refs": { "AccessPoliciesStatus$Status": "

        The status of the access policy for the Elasticsearch domain. See OptionStatus for the status information that's included.

        ", "AdvancedOptionsStatus$Status": "

        Specifies the status of OptionStatus for advanced options for the specified Elasticsearch domain.

        ", "EBSOptionsStatus$Status": "

        Specifies the status of the EBS options for the specified Elasticsearch domain.

        ", "ElasticsearchClusterConfigStatus$Status": "

        Specifies the status of the configuration for the specified Elasticsearch domain.

        ", "ElasticsearchVersionStatus$Status": "

        Specifies the status of the Elasticsearch version options for the specified Elasticsearch domain.

        ", "SnapshotOptionsStatus$Status": "

        Specifies the status of a daily automated snapshot.

        " } }, "PolicyDocument": { "base": "

        Access policy rules for an Elasticsearch domain service endpoints. For more information, see Configuring Access Policies in the Amazon Elasticsearch Service Developer Guide. The maximum size of a policy document is 100 KB.

        ", "refs": { "AccessPoliciesStatus$Options": "

        The access policy configured for the Elasticsearch domain. Access policies may be resource-based, IP-based, or IAM-based. See Configuring Access Policiesfor more information.

        ", "CreateElasticsearchDomainRequest$AccessPolicies": "

        IAM access policy as a JSON-formatted string.

        ", "ElasticsearchDomainStatus$AccessPolicies": "

        IAM access policy as a JSON-formatted string.

        ", "UpdateElasticsearchDomainConfigRequest$AccessPolicies": "

        IAM access policy as a JSON-formatted string.

        " } }, "RemoveTagsRequest": { "base": "

        Container for the parameters to the RemoveTags operation. Specify the ARN for the Elasticsearch domain from which you want to remove the specified TagKey.

        ", "refs": { } }, "ResourceAlreadyExistsException": { "base": "

        An exception for creating a resource that already exists. Gives http status code of 400.

        ", "refs": { } }, "ResourceNotFoundException": { "base": "

        An exception for accessing or deleting a resource that does not exist. Gives http status code of 400.

        ", "refs": { } }, "ServiceUrl": { "base": "

        The endpoint to which service requests are submitted. For example, search-imdb-movies-oopcnjfn6ugofer3zx5iadxxca.eu-west-1.es.amazonaws.com or doc-imdb-movies-oopcnjfn6ugofer3zx5iadxxca.eu-west-1.es.amazonaws.com.

        ", "refs": { "ElasticsearchDomainStatus$Endpoint": "

        The Elasticsearch domain endpoint that you use to submit index and search requests.

        " } }, "SnapshotOptions": { "base": "

        Specifies the time, in UTC format, when the service takes a daily automated snapshot of the specified Elasticsearch domain. Default value is 0 hours.

        ", "refs": { "CreateElasticsearchDomainRequest$SnapshotOptions": "

        Option to set time, in UTC format, of the daily automated snapshot. Default value is 0 hours.

        ", "ElasticsearchDomainStatus$SnapshotOptions": "

        Specifies the status of the SnapshotOptions

        ", "SnapshotOptionsStatus$Options": "

        Specifies the daily snapshot options specified for the Elasticsearch domain.

        ", "UpdateElasticsearchDomainConfigRequest$SnapshotOptions": "

        Option to set the time, in UTC format, for the daily automated snapshot. Default value is 0 hours.

        " } }, "SnapshotOptionsStatus": { "base": "

        Status of a daily automated snapshot.

        ", "refs": { "ElasticsearchDomainConfig$SnapshotOptions": "

        Specifies the SnapshotOptions for the Elasticsearch domain.

        " } }, "String": { "base": null, "refs": { "AdvancedOptions$key": null, "AdvancedOptions$value": null, "StringList$member": null } }, "StringList": { "base": null, "refs": { "RemoveTagsRequest$TagKeys": "

        Specifies the TagKey list which you want to remove from the Elasticsearch domain.

        " } }, "Tag": { "base": "

        Specifies a key value pair for a resource tag.

        ", "refs": { "TagList$member": null } }, "TagKey": { "base": "

        A string of length from 1 to 128 characters that specifies the key for a Tag. Tag keys must be unique for the Elasticsearch domain to which they are attached.

        ", "refs": { "Tag$Key": "

        Specifies the TagKey, the name of the tag. Tag keys must be unique for the Elasticsearch domain to which they are attached.

        " } }, "TagList": { "base": "

        A list of Tag

        ", "refs": { "AddTagsRequest$TagList": "

        List of Tag that need to be added for the Elasticsearch domain.

        ", "ListTagsResponse$TagList": "

        List of Tag for the requested Elasticsearch domain.

        " } }, "TagValue": { "base": "

        A string of length from 0 to 256 characters that specifies the value for a Tag. Tag values can be null and do not have to be unique in a tag set.

        ", "refs": { "Tag$Value": "

        Specifies the TagValue, the value assigned to the corresponding tag key. Tag values can be null and do not have to be unique in a tag set. For example, you can have a key value pair in a tag set of project : Trinity and cost-center : Trinity

        " } }, "UIntValue": { "base": null, "refs": { "OptionStatus$UpdateVersion": "

        Specifies the latest version for the entity.

        " } }, "UpdateElasticsearchDomainConfigRequest": { "base": "

        Container for the parameters to the UpdateElasticsearchDomain operation. Specifies the type and number of instances in the domain cluster.

        ", "refs": { } }, "UpdateElasticsearchDomainConfigResponse": { "base": "

        The result of an UpdateElasticsearchDomain request. Contains the status of the Elasticsearch domain being updated.

        ", "refs": { } }, "UpdateTimestamp": { "base": null, "refs": { "OptionStatus$CreationDate": "

        Timestamp which tells the creation date for the entity.

        ", "OptionStatus$UpdateDate": "

        Timestamp which tells the last updated time for the entity.

        " } }, "ValidationException": { "base": "

        An exception for missing / invalid input fields. Gives http status code of 400.

        ", "refs": { } }, "VolumeType": { "base": "

        The type of EBS volume, standard, gp2, or io1. See Configuring EBS-based Storagefor more information.

        ", "refs": { "EBSOptions$VolumeType": "

        Specifies the volume type for EBS-based storage.

        " } } } } aws-sdk-go-1.4.22/models/apis/events/000077500000000000000000000000001300374646400173065ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/events/2014-02-03/000077500000000000000000000000001300374646400203335ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/events/2014-02-03/api-2.json000066400000000000000000000351041300374646400221410ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2014-02-03", "endpointPrefix":"events", "jsonVersion":"1.1", "serviceFullName":"Amazon CloudWatch Events", "signatureVersion":"v4", "targetPrefix":"AWSEvents", "protocol":"json" }, "operations":{ "DeleteRule":{ "name":"DeleteRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRuleRequest"}, "errors":[ { "shape":"ConcurrentModificationException", "exception":true }, { "shape":"InternalException", "exception":true, "fault":true } ] }, "DescribeRule":{ "name":"DescribeRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRuleRequest"}, "output":{"shape":"DescribeRuleResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "exception":true }, { "shape":"InternalException", "exception":true, "fault":true } ] }, "DisableRule":{ "name":"DisableRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableRuleRequest"}, "errors":[ { "shape":"ResourceNotFoundException", "exception":true }, { "shape":"ConcurrentModificationException", "exception":true }, { "shape":"InternalException", "exception":true, "fault":true } ] }, "EnableRule":{ "name":"EnableRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableRuleRequest"}, "errors":[ { "shape":"ResourceNotFoundException", "exception":true }, { "shape":"ConcurrentModificationException", "exception":true }, { "shape":"InternalException", "exception":true, "fault":true } ] }, "ListRuleNamesByTarget":{ "name":"ListRuleNamesByTarget", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListRuleNamesByTargetRequest"}, "output":{"shape":"ListRuleNamesByTargetResponse"}, "errors":[ { "shape":"InternalException", "exception":true, "fault":true } ] }, "ListRules":{ "name":"ListRules", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListRulesRequest"}, "output":{"shape":"ListRulesResponse"}, "errors":[ { "shape":"InternalException", "exception":true, "fault":true } ] }, "ListTargetsByRule":{ "name":"ListTargetsByRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTargetsByRuleRequest"}, "output":{"shape":"ListTargetsByRuleResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "exception":true }, { "shape":"InternalException", "exception":true, "fault":true } ] }, "PutEvents":{ "name":"PutEvents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutEventsRequest"}, "output":{"shape":"PutEventsResponse"}, "errors":[ { "shape":"InternalException", "exception":true, "fault":true } ] }, "PutRule":{ "name":"PutRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutRuleRequest"}, "output":{"shape":"PutRuleResponse"}, "errors":[ { "shape":"InvalidEventPatternException", "exception":true }, { "shape":"LimitExceededException", "exception":true }, { "shape":"ConcurrentModificationException", "exception":true }, { "shape":"InternalException", "exception":true, "fault":true } ] }, "PutTargets":{ "name":"PutTargets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutTargetsRequest"}, "output":{"shape":"PutTargetsResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "exception":true }, { "shape":"ConcurrentModificationException", "exception":true }, { "shape":"LimitExceededException", "exception":true }, { "shape":"InternalException", "exception":true, "fault":true } ] }, "RemoveTargets":{ "name":"RemoveTargets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTargetsRequest"}, "output":{"shape":"RemoveTargetsResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "exception":true }, { "shape":"ConcurrentModificationException", "exception":true }, { "shape":"InternalException", "exception":true, "fault":true } ] }, "TestEventPattern":{ "name":"TestEventPattern", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"TestEventPatternRequest"}, "output":{"shape":"TestEventPatternResponse"}, "errors":[ { "shape":"InvalidEventPatternException", "exception":true }, { "shape":"InternalException", "exception":true, "fault":true } ] } }, "shapes":{ "Boolean":{"type":"boolean"}, "ConcurrentModificationException":{ "type":"structure", "members":{ }, "exception":true }, "DeleteRuleRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"RuleName"} } }, "DescribeRuleRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"RuleName"} } }, "DescribeRuleResponse":{ "type":"structure", "members":{ "Name":{"shape":"RuleName"}, "Arn":{"shape":"RuleArn"}, "EventPattern":{"shape":"EventPattern"}, "ScheduleExpression":{"shape":"ScheduleExpression"}, "State":{"shape":"RuleState"}, "Description":{"shape":"RuleDescription"}, "RoleArn":{"shape":"RoleArn"} } }, "DisableRuleRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"RuleName"} } }, "EnableRuleRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"RuleName"} } }, "ErrorCode":{"type":"string"}, "ErrorMessage":{"type":"string"}, "EventId":{"type":"string"}, "EventPattern":{ "type":"string", "max":2048 }, "EventResource":{"type":"string"}, "EventResourceList":{ "type":"list", "member":{"shape":"EventResource"} }, "EventTime":{"type":"timestamp"}, "Integer":{"type":"integer"}, "InternalException":{ "type":"structure", "members":{ }, "exception":true, "fault":true }, "InvalidEventPatternException":{ "type":"structure", "members":{ }, "exception":true }, "LimitExceededException":{ "type":"structure", "members":{ }, "exception":true }, "LimitMax100":{ "type":"integer", "min":1, "max":100 }, "ListRuleNamesByTargetRequest":{ "type":"structure", "required":["TargetArn"], "members":{ "TargetArn":{"shape":"TargetArn"}, "NextToken":{"shape":"NextToken"}, "Limit":{"shape":"LimitMax100"} } }, "ListRuleNamesByTargetResponse":{ "type":"structure", "members":{ "RuleNames":{"shape":"RuleNameList"}, "NextToken":{"shape":"NextToken"} } }, "ListRulesRequest":{ "type":"structure", "members":{ "NamePrefix":{"shape":"RuleName"}, "NextToken":{"shape":"NextToken"}, "Limit":{"shape":"LimitMax100"} } }, "ListRulesResponse":{ "type":"structure", "members":{ "Rules":{"shape":"RuleResponseList"}, "NextToken":{"shape":"NextToken"} } }, "ListTargetsByRuleRequest":{ "type":"structure", "required":["Rule"], "members":{ "Rule":{"shape":"RuleName"}, "NextToken":{"shape":"NextToken"}, "Limit":{"shape":"LimitMax100"} } }, "ListTargetsByRuleResponse":{ "type":"structure", "members":{ "Targets":{"shape":"TargetList"}, "NextToken":{"shape":"NextToken"} } }, "NextToken":{ "type":"string", "min":1, "max":2048 }, "PutEventsRequest":{ "type":"structure", "required":["Entries"], "members":{ "Entries":{"shape":"PutEventsRequestEntryList"} } }, "PutEventsRequestEntry":{ "type":"structure", "members":{ "Time":{"shape":"EventTime"}, "Source":{"shape":"String"}, "Resources":{"shape":"EventResourceList"}, "DetailType":{"shape":"String"}, "Detail":{"shape":"String"} } }, "PutEventsRequestEntryList":{ "type":"list", "member":{"shape":"PutEventsRequestEntry"}, "min":1, "max":10 }, "PutEventsResponse":{ "type":"structure", "members":{ "FailedEntryCount":{"shape":"Integer"}, "Entries":{"shape":"PutEventsResultEntryList"} } }, "PutEventsResultEntry":{ "type":"structure", "members":{ "EventId":{"shape":"EventId"}, "ErrorCode":{"shape":"ErrorCode"}, "ErrorMessage":{"shape":"ErrorMessage"} } }, "PutEventsResultEntryList":{ "type":"list", "member":{"shape":"PutEventsResultEntry"} }, "PutRuleRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"RuleName"}, "ScheduleExpression":{"shape":"ScheduleExpression"}, "EventPattern":{"shape":"EventPattern"}, "State":{"shape":"RuleState"}, "Description":{"shape":"RuleDescription"}, "RoleArn":{"shape":"RoleArn"} } }, "PutRuleResponse":{ "type":"structure", "members":{ "RuleArn":{"shape":"RuleArn"} } }, "PutTargetsRequest":{ "type":"structure", "required":[ "Rule", "Targets" ], "members":{ "Rule":{"shape":"RuleName"}, "Targets":{"shape":"TargetList"} } }, "PutTargetsResponse":{ "type":"structure", "members":{ "FailedEntryCount":{"shape":"Integer"}, "FailedEntries":{"shape":"PutTargetsResultEntryList"} } }, "PutTargetsResultEntry":{ "type":"structure", "members":{ "TargetId":{"shape":"TargetId"}, "ErrorCode":{"shape":"ErrorCode"}, "ErrorMessage":{"shape":"ErrorMessage"} } }, "PutTargetsResultEntryList":{ "type":"list", "member":{"shape":"PutTargetsResultEntry"} }, "RemoveTargetsRequest":{ "type":"structure", "required":[ "Rule", "Ids" ], "members":{ "Rule":{"shape":"RuleName"}, "Ids":{"shape":"TargetIdList"} } }, "RemoveTargetsResponse":{ "type":"structure", "members":{ "FailedEntryCount":{"shape":"Integer"}, "FailedEntries":{"shape":"RemoveTargetsResultEntryList"} } }, "RemoveTargetsResultEntry":{ "type":"structure", "members":{ "TargetId":{"shape":"TargetId"}, "ErrorCode":{"shape":"ErrorCode"}, "ErrorMessage":{"shape":"ErrorMessage"} } }, "RemoveTargetsResultEntryList":{ "type":"list", "member":{"shape":"RemoveTargetsResultEntry"} }, "ResourceNotFoundException":{ "type":"structure", "members":{ }, "exception":true }, "RoleArn":{ "type":"string", "min":1, "max":1600 }, "Rule":{ "type":"structure", "members":{ "Name":{"shape":"RuleName"}, "Arn":{"shape":"RuleArn"}, "EventPattern":{"shape":"EventPattern"}, "State":{"shape":"RuleState"}, "Description":{"shape":"RuleDescription"}, "ScheduleExpression":{"shape":"ScheduleExpression"}, "RoleArn":{"shape":"RoleArn"} } }, "RuleArn":{ "type":"string", "min":1, "max":1600 }, "RuleDescription":{ "type":"string", "max":512 }, "RuleName":{ "type":"string", "min":1, "max":64, "pattern":"[\\.\\-_A-Za-z0-9]+" }, "RuleNameList":{ "type":"list", "member":{"shape":"RuleName"} }, "RuleResponseList":{ "type":"list", "member":{"shape":"Rule"} }, "RuleState":{ "type":"string", "enum":[ "ENABLED", "DISABLED" ] }, "ScheduleExpression":{ "type":"string", "max":256 }, "String":{"type":"string"}, "Target":{ "type":"structure", "required":[ "Id", "Arn" ], "members":{ "Id":{"shape":"TargetId"}, "Arn":{"shape":"TargetArn"}, "Input":{"shape":"TargetInput"}, "InputPath":{"shape":"TargetInputPath"} } }, "TargetArn":{ "type":"string", "min":1, "max":1600 }, "TargetId":{ "type":"string", "min":1, "max":64, "pattern":"[\\.\\-_A-Za-z0-9]+" }, "TargetIdList":{ "type":"list", "member":{"shape":"TargetId"}, "min":1, "max":100 }, "TargetInput":{ "type":"string", "max":8192 }, "TargetInputPath":{ "type":"string", "max":256 }, "TargetList":{ "type":"list", "member":{"shape":"Target"} }, "TestEventPatternRequest":{ "type":"structure", "required":[ "EventPattern", "Event" ], "members":{ "EventPattern":{"shape":"EventPattern"}, "Event":{"shape":"String"} } }, "TestEventPatternResponse":{ "type":"structure", "members":{ "Result":{"shape":"Boolean"} } } } } aws-sdk-go-1.4.22/models/apis/events/2014-02-03/docs-2.json000066400000000000000000000523401300374646400223210ustar00rootroot00000000000000{ "version": "2.0", "operations": { "DeleteRule": "

        Deletes a rule. You must remove all targets from a rule using RemoveTargets before you can delete the rule.

        Note: When you make a change with this action, incoming events might still continue to match to the deleted rule. Please allow a short period of time for changes to take effect.

        ", "DescribeRule": "

        Describes the details of the specified rule.

        ", "DisableRule": "

        Disables a rule. A disabled rule won't match any events, and won't self-trigger if it has a schedule expression.

        Note: When you make a change with this action, incoming events might still continue to match to the disabled rule. Please allow a short period of time for changes to take effect.

        ", "EnableRule": "

        Enables a rule. If the rule does not exist, the operation fails.

        Note: When you make a change with this action, incoming events might not immediately start matching to a newly enabled rule. Please allow a short period of time for changes to take effect.

        ", "ListRuleNamesByTarget": "

        Lists the names of the rules that the given target is put to. Using this action, you can find out which of the rules in Amazon CloudWatch Events can invoke a specific target in your account. If you have more rules in your account than the given limit, the results will be paginated. In that case, use the next token returned in the response and repeat the ListRulesByTarget action until the NextToken in the response is returned as null.

        ", "ListRules": "

        Lists the Amazon CloudWatch Events rules in your account. You can either list all the rules or you can provide a prefix to match to the rule names. If you have more rules in your account than the given limit, the results will be paginated. In that case, use the next token returned in the response and repeat the ListRules action until the NextToken in the response is returned as null.

        ", "ListTargetsByRule": "

        Lists of targets assigned to the rule.

        ", "PutEvents": "

        Sends custom events to Amazon CloudWatch Events so that they can be matched to rules.

        ", "PutRule": "

        Creates or updates a rule. Rules are enabled by default, or based on value of the State parameter. You can disable a rule using DisableRule.

        Note: When you make a change with this action, incoming events might not immediately start matching to new or updated rules. Please allow a short period of time for changes to take effect.

        A rule must contain at least an EventPattern or ScheduleExpression. Rules with EventPatterns are triggered when a matching event is observed. Rules with ScheduleExpressions self-trigger based on the given schedule. A rule can have both an EventPattern and a ScheduleExpression, in which case the rule will trigger on matching events as well as on a schedule.

        Note: Most services in AWS treat : or / as the same character in Amazon Resource Names (ARNs). However, CloudWatch Events uses an exact match in event patterns and rules. Be sure to use the correct ARN characters when creating event patterns so that they match the ARN syntax in the event you want to match.

        ", "PutTargets": "

        Adds target(s) to a rule. Updates the target(s) if they are already associated with the role. In other words, if there is already a target with the given target ID, then the target associated with that ID is updated.

        Note: When you make a change with this action, when the associated rule triggers, new or updated targets might not be immediately invoked. Please allow a short period of time for changes to take effect.

        ", "RemoveTargets": "

        Removes target(s) from a rule so that when the rule is triggered, those targets will no longer be invoked.

        Note: When you make a change with this action, when the associated rule triggers, removed targets might still continue to be invoked. Please allow a short period of time for changes to take effect.

        ", "TestEventPattern": "

        Tests whether an event pattern matches the provided event.

        Note: Most services in AWS treat : or / as the same character in Amazon Resource Names (ARNs). However, CloudWatch Events uses an exact match in event patterns and rules. Be sure to use the correct ARN characters when creating event patterns so that they match the ARN syntax in the event you want to match.

        " }, "service": "

        Amazon CloudWatch Events helps you to respond to state changes in your AWS resources. When your resources change state they automatically send events into an event stream. You can create rules that match selected events in the stream and route them to targets to take action. You can also use rules to take action on a pre-determined schedule. For example, you can configure rules to:

        • Automatically invoke an AWS Lambda function to update DNS entries when an event notifies you that Amazon EC2 instance enters the running state.
        • Direct specific API records from CloudTrail to an Amazon Kinesis stream for detailed analysis of potential security or availability risks.
        • Periodically invoke a built-in target to create a snapshot of an Amazon EBS volume.

        For more information about Amazon CloudWatch Events features, see the Amazon CloudWatch Developer Guide.

        ", "shapes": { "Boolean": { "base": null, "refs": { "TestEventPatternResponse$Result": "

        Indicates whether the event matches the event pattern.

        " } }, "ConcurrentModificationException": { "base": "

        This exception occurs if there is concurrent modification on rule or target.

        ", "refs": { } }, "DeleteRuleRequest": { "base": "

        Container for the parameters to the DeleteRule operation.

        ", "refs": { } }, "DescribeRuleRequest": { "base": "

        Container for the parameters to the DescribeRule operation.

        ", "refs": { } }, "DescribeRuleResponse": { "base": "

        The result of the DescribeRule operation.

        ", "refs": { } }, "DisableRuleRequest": { "base": "

        Container for the parameters to the DisableRule operation.

        ", "refs": { } }, "EnableRuleRequest": { "base": "

        Container for the parameters to the EnableRule operation.

        ", "refs": { } }, "ErrorCode": { "base": null, "refs": { "PutEventsResultEntry$ErrorCode": "

        The error code representing why the event submission failed on this entry.

        ", "PutTargetsResultEntry$ErrorCode": "

        The error code representing why the target submission failed on this entry.

        ", "RemoveTargetsResultEntry$ErrorCode": "

        The error code representing why the target removal failed on this entry.

        " } }, "ErrorMessage": { "base": null, "refs": { "PutEventsResultEntry$ErrorMessage": "

        The error message explaining why the event submission failed on this entry.

        ", "PutTargetsResultEntry$ErrorMessage": "

        The error message explaining why the target submission failed on this entry.

        ", "RemoveTargetsResultEntry$ErrorMessage": "

        The error message explaining why the target removal failed on this entry.

        " } }, "EventId": { "base": null, "refs": { "PutEventsResultEntry$EventId": "

        The ID of the event submitted to Amazon CloudWatch Events.

        " } }, "EventPattern": { "base": null, "refs": { "DescribeRuleResponse$EventPattern": "

        The event pattern.

        ", "PutRuleRequest$EventPattern": "

        The event pattern.

        ", "Rule$EventPattern": "

        The event pattern of the rule.

        ", "TestEventPatternRequest$EventPattern": "

        The event pattern you want to test.

        " } }, "EventResource": { "base": null, "refs": { "EventResourceList$member": null } }, "EventResourceList": { "base": null, "refs": { "PutEventsRequestEntry$Resources": "

        AWS resources, identified by Amazon Resource Name (ARN), which the event primarily concerns. Any number, including zero, may be present.

        " } }, "EventTime": { "base": null, "refs": { "PutEventsRequestEntry$Time": "

        Timestamp of event, per RFC3339. If no timestamp is provided, the timestamp of the PutEvents call will be used.

        " } }, "Integer": { "base": null, "refs": { "PutEventsResponse$FailedEntryCount": "

        The number of failed entries.

        ", "PutTargetsResponse$FailedEntryCount": "

        The number of failed entries.

        ", "RemoveTargetsResponse$FailedEntryCount": "

        The number of failed entries.

        " } }, "InternalException": { "base": "

        This exception occurs due to unexpected causes.

        ", "refs": { } }, "InvalidEventPatternException": { "base": "

        The event pattern is invalid.

        ", "refs": { } }, "LimitExceededException": { "base": "

        This exception occurs if you try to create more rules or add more targets to a rule than allowed by default.

        ", "refs": { } }, "LimitMax100": { "base": null, "refs": { "ListRuleNamesByTargetRequest$Limit": "

        The maximum number of results to return.

        ", "ListRulesRequest$Limit": "

        The maximum number of results to return.

        ", "ListTargetsByRuleRequest$Limit": "

        The maximum number of results to return.

        " } }, "ListRuleNamesByTargetRequest": { "base": "

        Container for the parameters to the ListRuleNamesByTarget operation.

        ", "refs": { } }, "ListRuleNamesByTargetResponse": { "base": "

        The result of the ListRuleNamesByTarget operation.

        ", "refs": { } }, "ListRulesRequest": { "base": "

        Container for the parameters to the ListRules operation.

        ", "refs": { } }, "ListRulesResponse": { "base": "

        The result of the ListRules operation.

        ", "refs": { } }, "ListTargetsByRuleRequest": { "base": "

        Container for the parameters to the ListTargetsByRule operation.

        ", "refs": { } }, "ListTargetsByRuleResponse": { "base": "

        The result of the ListTargetsByRule operation.

        ", "refs": { } }, "NextToken": { "base": null, "refs": { "ListRuleNamesByTargetRequest$NextToken": "

        The token returned by a previous call to indicate that there is more data available.

        ", "ListRuleNamesByTargetResponse$NextToken": "

        Indicates that there are additional results to retrieve.

        ", "ListRulesRequest$NextToken": "

        The token returned by a previous call to indicate that there is more data available.

        ", "ListRulesResponse$NextToken": "

        Indicates that there are additional results to retrieve.

        ", "ListTargetsByRuleRequest$NextToken": "

        The token returned by a previous call to indicate that there is more data available.

        ", "ListTargetsByRuleResponse$NextToken": "

        Indicates that there are additional results to retrieve.

        " } }, "PutEventsRequest": { "base": "

        Container for the parameters to the PutEvents operation.

        ", "refs": { } }, "PutEventsRequestEntry": { "base": "

        Contains information about the event to be used in the PutEvents action.

        ", "refs": { "PutEventsRequestEntryList$member": null } }, "PutEventsRequestEntryList": { "base": null, "refs": { "PutEventsRequest$Entries": "

        The entry that defines an event in your system. You can specify several parameters for the entry such as the source and type of the event, resources associated with the event, and so on.

        " } }, "PutEventsResponse": { "base": "

        The result of the PutEvents operation.

        ", "refs": { } }, "PutEventsResultEntry": { "base": "

        A PutEventsResult contains a list of PutEventsResultEntry.

        ", "refs": { "PutEventsResultEntryList$member": null } }, "PutEventsResultEntryList": { "base": null, "refs": { "PutEventsResponse$Entries": "

        A list of successfully and unsuccessfully ingested events results. If the ingestion was successful, the entry will have the event ID in it. If not, then the ErrorCode and ErrorMessage can be used to identify the problem with the entry.

        " } }, "PutRuleRequest": { "base": "

        Container for the parameters to the PutRule operation.

        ", "refs": { } }, "PutRuleResponse": { "base": "

        The result of the PutRule operation.

        ", "refs": { } }, "PutTargetsRequest": { "base": "

        Container for the parameters to the PutTargets operation.

        ", "refs": { } }, "PutTargetsResponse": { "base": "

        The result of the PutTargets operation.

        ", "refs": { } }, "PutTargetsResultEntry": { "base": "

        A PutTargetsResult contains a list of PutTargetsResultEntry.

        ", "refs": { "PutTargetsResultEntryList$member": null } }, "PutTargetsResultEntryList": { "base": null, "refs": { "PutTargetsResponse$FailedEntries": "

        An array of failed target entries.

        " } }, "RemoveTargetsRequest": { "base": "

        Container for the parameters to the RemoveTargets operation.

        ", "refs": { } }, "RemoveTargetsResponse": { "base": "

        The result of the RemoveTargets operation.

        ", "refs": { } }, "RemoveTargetsResultEntry": { "base": "

        The ID of the target requested to be removed from the rule by Amazon CloudWatch Events.

        ", "refs": { "RemoveTargetsResultEntryList$member": null } }, "RemoveTargetsResultEntryList": { "base": null, "refs": { "RemoveTargetsResponse$FailedEntries": "

        An array of failed target entries.

        " } }, "ResourceNotFoundException": { "base": "

        The rule does not exist.

        ", "refs": { } }, "RoleArn": { "base": null, "refs": { "DescribeRuleResponse$RoleArn": "

        The Amazon Resource Name (ARN) of the IAM role associated with the rule.

        ", "PutRuleRequest$RoleArn": "

        The Amazon Resource Name (ARN) of the IAM role associated with the rule.

        ", "Rule$RoleArn": "

        The Amazon Resource Name (ARN) associated with the role that is used for target invocation.

        " } }, "Rule": { "base": "

        Contains information about a rule in Amazon CloudWatch Events. A ListRulesResult contains a list of Rules.

        ", "refs": { "RuleResponseList$member": null } }, "RuleArn": { "base": null, "refs": { "DescribeRuleResponse$Arn": "

        The Amazon Resource Name (ARN) associated with the rule.

        ", "PutRuleResponse$RuleArn": "

        The Amazon Resource Name (ARN) that identifies the rule.

        ", "Rule$Arn": "

        The Amazon Resource Name (ARN) of the rule.

        " } }, "RuleDescription": { "base": null, "refs": { "DescribeRuleResponse$Description": "

        The rule's description.

        ", "PutRuleRequest$Description": "

        A description of the rule.

        ", "Rule$Description": "

        The description of the rule.

        " } }, "RuleName": { "base": null, "refs": { "DeleteRuleRequest$Name": "

        The name of the rule to be deleted.

        ", "DescribeRuleRequest$Name": "

        The name of the rule you want to describe details for.

        ", "DescribeRuleResponse$Name": "

        The rule's name.

        ", "DisableRuleRequest$Name": "

        The name of the rule you want to disable.

        ", "EnableRuleRequest$Name": "

        The name of the rule that you want to enable.

        ", "ListRulesRequest$NamePrefix": "

        The prefix matching the rule name.

        ", "ListTargetsByRuleRequest$Rule": "

        The name of the rule whose targets you want to list.

        ", "PutRuleRequest$Name": "

        The name of the rule that you are creating or updating.

        ", "PutTargetsRequest$Rule": "

        The name of the rule you want to add targets to.

        ", "RemoveTargetsRequest$Rule": "

        The name of the rule you want to remove targets from.

        ", "Rule$Name": "

        The rule's name.

        ", "RuleNameList$member": null } }, "RuleNameList": { "base": null, "refs": { "ListRuleNamesByTargetResponse$RuleNames": "

        List of rules names that can invoke the given target.

        " } }, "RuleResponseList": { "base": null, "refs": { "ListRulesResponse$Rules": "

        List of rules matching the specified criteria.

        " } }, "RuleState": { "base": null, "refs": { "DescribeRuleResponse$State": "

        Specifies whether the rule is enabled or disabled.

        ", "PutRuleRequest$State": "

        Indicates whether the rule is enabled or disabled.

        ", "Rule$State": "

        The rule's state.

        " } }, "ScheduleExpression": { "base": null, "refs": { "DescribeRuleResponse$ScheduleExpression": "

        The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\".

        ", "PutRuleRequest$ScheduleExpression": "

        The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\".

        ", "Rule$ScheduleExpression": "

        The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\".

        " } }, "String": { "base": null, "refs": { "PutEventsRequestEntry$Source": "

        The source of the event.

        ", "PutEventsRequestEntry$DetailType": "

        Free-form string used to decide what fields to expect in the event detail.

        ", "PutEventsRequestEntry$Detail": "

        In the JSON sense, an object containing fields, which may also contain nested sub-objects. No constraints are imposed on its contents.

        ", "TestEventPatternRequest$Event": "

        The event in the JSON format to test against the event pattern.

        " } }, "Target": { "base": "

        Targets are the resources that can be invoked when a rule is triggered. For example, AWS Lambda functions, Amazon Kinesis streams, and built-in targets.

        Input and InputPath are mutually-exclusive and optional parameters of a target. When a rule is triggered due to a matched event, if for a target:

        • Neither Input nor InputPath is specified, then the entire event is passed to the target in JSON form.
        • InputPath is specified in the form of JSONPath (e.g. $.detail), then only the part of the event specified in the path is passed to the target (e.g. only the detail part of the event is passed).
        • Input is specified in the form of a valid JSON, then the matched event is overridden with this constant.
        ", "refs": { "TargetList$member": null } }, "TargetArn": { "base": null, "refs": { "ListRuleNamesByTargetRequest$TargetArn": "

        The Amazon Resource Name (ARN) of the target resource that you want to list the rules for.

        ", "Target$Arn": "

        The Amazon Resource Name (ARN) associated of the target.

        " } }, "TargetId": { "base": null, "refs": { "PutTargetsResultEntry$TargetId": "

        The ID of the target submitted to Amazon CloudWatch Events.

        ", "RemoveTargetsResultEntry$TargetId": "

        The ID of the target requested to be removed by Amazon CloudWatch Events.

        ", "Target$Id": "

        The unique target assignment ID.

        ", "TargetIdList$member": null } }, "TargetIdList": { "base": null, "refs": { "RemoveTargetsRequest$Ids": "

        The list of target IDs to remove from the rule.

        " } }, "TargetInput": { "base": null, "refs": { "Target$Input": "

        Valid JSON text passed to the target. For more information about JSON text, see The JavaScript Object Notation (JSON) Data Interchange Format.

        " } }, "TargetInputPath": { "base": null, "refs": { "Target$InputPath": "

        The value of the JSONPath that is used for extracting part of the matched event when passing it to the target. For more information about JSON paths, see JSONPath.

        " } }, "TargetList": { "base": null, "refs": { "ListTargetsByRuleResponse$Targets": "

        Lists the targets assigned to the rule.

        ", "PutTargetsRequest$Targets": "

        List of targets you want to update or add to the rule.

        " } }, "TestEventPatternRequest": { "base": "

        Container for the parameters to the TestEventPattern operation.

        ", "refs": { } }, "TestEventPatternResponse": { "base": "

        The result of the TestEventPattern operation.

        ", "refs": { } } } } aws-sdk-go-1.4.22/models/apis/events/2014-02-03/examples-1.json000066400000000000000000000000521300374646400231770ustar00rootroot00000000000000{ "version":"1.0", "examples":{ } } aws-sdk-go-1.4.22/models/apis/events/2015-10-07/000077500000000000000000000000001300374646400203375ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/events/2015-10-07/api-2.json000066400000000000000000000351041300374646400221450ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-10-07", "endpointPrefix":"events", "jsonVersion":"1.1", "serviceFullName":"Amazon CloudWatch Events", "signatureVersion":"v4", "targetPrefix":"AWSEvents", "protocol":"json" }, "operations":{ "DeleteRule":{ "name":"DeleteRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRuleRequest"}, "errors":[ { "shape":"ConcurrentModificationException", "exception":true }, { "shape":"InternalException", "exception":true, "fault":true } ] }, "DescribeRule":{ "name":"DescribeRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRuleRequest"}, "output":{"shape":"DescribeRuleResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "exception":true }, { "shape":"InternalException", "exception":true, "fault":true } ] }, "DisableRule":{ "name":"DisableRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableRuleRequest"}, "errors":[ { "shape":"ResourceNotFoundException", "exception":true }, { "shape":"ConcurrentModificationException", "exception":true }, { "shape":"InternalException", "exception":true, "fault":true } ] }, "EnableRule":{ "name":"EnableRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableRuleRequest"}, "errors":[ { "shape":"ResourceNotFoundException", "exception":true }, { "shape":"ConcurrentModificationException", "exception":true }, { "shape":"InternalException", "exception":true, "fault":true } ] }, "ListRuleNamesByTarget":{ "name":"ListRuleNamesByTarget", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListRuleNamesByTargetRequest"}, "output":{"shape":"ListRuleNamesByTargetResponse"}, "errors":[ { "shape":"InternalException", "exception":true, "fault":true } ] }, "ListRules":{ "name":"ListRules", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListRulesRequest"}, "output":{"shape":"ListRulesResponse"}, "errors":[ { "shape":"InternalException", "exception":true, "fault":true } ] }, "ListTargetsByRule":{ "name":"ListTargetsByRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTargetsByRuleRequest"}, "output":{"shape":"ListTargetsByRuleResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "exception":true }, { "shape":"InternalException", "exception":true, "fault":true } ] }, "PutEvents":{ "name":"PutEvents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutEventsRequest"}, "output":{"shape":"PutEventsResponse"}, "errors":[ { "shape":"InternalException", "exception":true, "fault":true } ] }, "PutRule":{ "name":"PutRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutRuleRequest"}, "output":{"shape":"PutRuleResponse"}, "errors":[ { "shape":"InvalidEventPatternException", "exception":true }, { "shape":"LimitExceededException", "exception":true }, { "shape":"ConcurrentModificationException", "exception":true }, { "shape":"InternalException", "exception":true, "fault":true } ] }, "PutTargets":{ "name":"PutTargets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutTargetsRequest"}, "output":{"shape":"PutTargetsResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "exception":true }, { "shape":"ConcurrentModificationException", "exception":true }, { "shape":"LimitExceededException", "exception":true }, { "shape":"InternalException", "exception":true, "fault":true } ] }, "RemoveTargets":{ "name":"RemoveTargets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTargetsRequest"}, "output":{"shape":"RemoveTargetsResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "exception":true }, { "shape":"ConcurrentModificationException", "exception":true }, { "shape":"InternalException", "exception":true, "fault":true } ] }, "TestEventPattern":{ "name":"TestEventPattern", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"TestEventPatternRequest"}, "output":{"shape":"TestEventPatternResponse"}, "errors":[ { "shape":"InvalidEventPatternException", "exception":true }, { "shape":"InternalException", "exception":true, "fault":true } ] } }, "shapes":{ "Boolean":{"type":"boolean"}, "ConcurrentModificationException":{ "type":"structure", "members":{ }, "exception":true }, "DeleteRuleRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"RuleName"} } }, "DescribeRuleRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"RuleName"} } }, "DescribeRuleResponse":{ "type":"structure", "members":{ "Name":{"shape":"RuleName"}, "Arn":{"shape":"RuleArn"}, "EventPattern":{"shape":"EventPattern"}, "ScheduleExpression":{"shape":"ScheduleExpression"}, "State":{"shape":"RuleState"}, "Description":{"shape":"RuleDescription"}, "RoleArn":{"shape":"RoleArn"} } }, "DisableRuleRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"RuleName"} } }, "EnableRuleRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"RuleName"} } }, "ErrorCode":{"type":"string"}, "ErrorMessage":{"type":"string"}, "EventId":{"type":"string"}, "EventPattern":{ "type":"string", "max":2048 }, "EventResource":{"type":"string"}, "EventResourceList":{ "type":"list", "member":{"shape":"EventResource"} }, "EventTime":{"type":"timestamp"}, "Integer":{"type":"integer"}, "InternalException":{ "type":"structure", "members":{ }, "exception":true, "fault":true }, "InvalidEventPatternException":{ "type":"structure", "members":{ }, "exception":true }, "LimitExceededException":{ "type":"structure", "members":{ }, "exception":true }, "LimitMax100":{ "type":"integer", "min":1, "max":100 }, "ListRuleNamesByTargetRequest":{ "type":"structure", "required":["TargetArn"], "members":{ "TargetArn":{"shape":"TargetArn"}, "NextToken":{"shape":"NextToken"}, "Limit":{"shape":"LimitMax100"} } }, "ListRuleNamesByTargetResponse":{ "type":"structure", "members":{ "RuleNames":{"shape":"RuleNameList"}, "NextToken":{"shape":"NextToken"} } }, "ListRulesRequest":{ "type":"structure", "members":{ "NamePrefix":{"shape":"RuleName"}, "NextToken":{"shape":"NextToken"}, "Limit":{"shape":"LimitMax100"} } }, "ListRulesResponse":{ "type":"structure", "members":{ "Rules":{"shape":"RuleResponseList"}, "NextToken":{"shape":"NextToken"} } }, "ListTargetsByRuleRequest":{ "type":"structure", "required":["Rule"], "members":{ "Rule":{"shape":"RuleName"}, "NextToken":{"shape":"NextToken"}, "Limit":{"shape":"LimitMax100"} } }, "ListTargetsByRuleResponse":{ "type":"structure", "members":{ "Targets":{"shape":"TargetList"}, "NextToken":{"shape":"NextToken"} } }, "NextToken":{ "type":"string", "min":1, "max":2048 }, "PutEventsRequest":{ "type":"structure", "required":["Entries"], "members":{ "Entries":{"shape":"PutEventsRequestEntryList"} } }, "PutEventsRequestEntry":{ "type":"structure", "members":{ "Time":{"shape":"EventTime"}, "Source":{"shape":"String"}, "Resources":{"shape":"EventResourceList"}, "DetailType":{"shape":"String"}, "Detail":{"shape":"String"} } }, "PutEventsRequestEntryList":{ "type":"list", "member":{"shape":"PutEventsRequestEntry"}, "min":1, "max":10 }, "PutEventsResponse":{ "type":"structure", "members":{ "FailedEntryCount":{"shape":"Integer"}, "Entries":{"shape":"PutEventsResultEntryList"} } }, "PutEventsResultEntry":{ "type":"structure", "members":{ "EventId":{"shape":"EventId"}, "ErrorCode":{"shape":"ErrorCode"}, "ErrorMessage":{"shape":"ErrorMessage"} } }, "PutEventsResultEntryList":{ "type":"list", "member":{"shape":"PutEventsResultEntry"} }, "PutRuleRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"RuleName"}, "ScheduleExpression":{"shape":"ScheduleExpression"}, "EventPattern":{"shape":"EventPattern"}, "State":{"shape":"RuleState"}, "Description":{"shape":"RuleDescription"}, "RoleArn":{"shape":"RoleArn"} } }, "PutRuleResponse":{ "type":"structure", "members":{ "RuleArn":{"shape":"RuleArn"} } }, "PutTargetsRequest":{ "type":"structure", "required":[ "Rule", "Targets" ], "members":{ "Rule":{"shape":"RuleName"}, "Targets":{"shape":"TargetList"} } }, "PutTargetsResponse":{ "type":"structure", "members":{ "FailedEntryCount":{"shape":"Integer"}, "FailedEntries":{"shape":"PutTargetsResultEntryList"} } }, "PutTargetsResultEntry":{ "type":"structure", "members":{ "TargetId":{"shape":"TargetId"}, "ErrorCode":{"shape":"ErrorCode"}, "ErrorMessage":{"shape":"ErrorMessage"} } }, "PutTargetsResultEntryList":{ "type":"list", "member":{"shape":"PutTargetsResultEntry"} }, "RemoveTargetsRequest":{ "type":"structure", "required":[ "Rule", "Ids" ], "members":{ "Rule":{"shape":"RuleName"}, "Ids":{"shape":"TargetIdList"} } }, "RemoveTargetsResponse":{ "type":"structure", "members":{ "FailedEntryCount":{"shape":"Integer"}, "FailedEntries":{"shape":"RemoveTargetsResultEntryList"} } }, "RemoveTargetsResultEntry":{ "type":"structure", "members":{ "TargetId":{"shape":"TargetId"}, "ErrorCode":{"shape":"ErrorCode"}, "ErrorMessage":{"shape":"ErrorMessage"} } }, "RemoveTargetsResultEntryList":{ "type":"list", "member":{"shape":"RemoveTargetsResultEntry"} }, "ResourceNotFoundException":{ "type":"structure", "members":{ }, "exception":true }, "RoleArn":{ "type":"string", "min":1, "max":1600 }, "Rule":{ "type":"structure", "members":{ "Name":{"shape":"RuleName"}, "Arn":{"shape":"RuleArn"}, "EventPattern":{"shape":"EventPattern"}, "State":{"shape":"RuleState"}, "Description":{"shape":"RuleDescription"}, "ScheduleExpression":{"shape":"ScheduleExpression"}, "RoleArn":{"shape":"RoleArn"} } }, "RuleArn":{ "type":"string", "min":1, "max":1600 }, "RuleDescription":{ "type":"string", "max":512 }, "RuleName":{ "type":"string", "min":1, "max":64, "pattern":"[\\.\\-_A-Za-z0-9]+" }, "RuleNameList":{ "type":"list", "member":{"shape":"RuleName"} }, "RuleResponseList":{ "type":"list", "member":{"shape":"Rule"} }, "RuleState":{ "type":"string", "enum":[ "ENABLED", "DISABLED" ] }, "ScheduleExpression":{ "type":"string", "max":256 }, "String":{"type":"string"}, "Target":{ "type":"structure", "required":[ "Id", "Arn" ], "members":{ "Id":{"shape":"TargetId"}, "Arn":{"shape":"TargetArn"}, "Input":{"shape":"TargetInput"}, "InputPath":{"shape":"TargetInputPath"} } }, "TargetArn":{ "type":"string", "min":1, "max":1600 }, "TargetId":{ "type":"string", "min":1, "max":64, "pattern":"[\\.\\-_A-Za-z0-9]+" }, "TargetIdList":{ "type":"list", "member":{"shape":"TargetId"}, "min":1, "max":100 }, "TargetInput":{ "type":"string", "max":8192 }, "TargetInputPath":{ "type":"string", "max":256 }, "TargetList":{ "type":"list", "member":{"shape":"Target"} }, "TestEventPatternRequest":{ "type":"structure", "required":[ "EventPattern", "Event" ], "members":{ "EventPattern":{"shape":"EventPattern"}, "Event":{"shape":"String"} } }, "TestEventPatternResponse":{ "type":"structure", "members":{ "Result":{"shape":"Boolean"} } } } } aws-sdk-go-1.4.22/models/apis/events/2015-10-07/docs-2.json000066400000000000000000000546071300374646400223350ustar00rootroot00000000000000{ "version": "2.0", "operations": { "DeleteRule": "

        Deletes a rule. You must remove all targets from a rule using RemoveTargets before you can delete the rule.

        Note: When you delete a rule, incoming events might still continue to match to the deleted rule. Please allow a short period of time for changes to take effect.

        ", "DescribeRule": "

        Describes the details of the specified rule.

        ", "DisableRule": "

        Disables a rule. A disabled rule won't match any events, and won't self-trigger if it has a schedule expression.

        Note: When you disable a rule, incoming events might still continue to match to the disabled rule. Please allow a short period of time for changes to take effect.

        ", "EnableRule": "

        Enables a rule. If the rule does not exist, the operation fails.

        Note: When you enable a rule, incoming events might not immediately start matching to a newly enabled rule. Please allow a short period of time for changes to take effect.

        ", "ListRuleNamesByTarget": "

        Lists the names of the rules that the given target is put to. You can see which of the rules in Amazon CloudWatch Events can invoke a specific target in your account. If you have more rules in your account than the given limit, the results will be paginated. In that case, use the next token returned in the response and repeat ListRulesByTarget until the NextToken in the response is returned as null.

        ", "ListRules": "

        Lists the Amazon CloudWatch Events rules in your account. You can either list all the rules or you can provide a prefix to match to the rule names. If you have more rules in your account than the given limit, the results will be paginated. In that case, use the next token returned in the response and repeat ListRules until the NextToken in the response is returned as null.

        ", "ListTargetsByRule": "

        Lists of targets assigned to the rule.

        ", "PutEvents": "

        Sends custom events to Amazon CloudWatch Events so that they can be matched to rules.

        ", "PutRule": "

        Creates or updates a rule. Rules are enabled by default, or based on value of the State parameter. You can disable a rule using DisableRule.

        Note: When you create or update a rule, incoming events might not immediately start matching to new or updated rules. Please allow a short period of time for changes to take effect.

        A rule must contain at least an EventPattern or ScheduleExpression. Rules with EventPatterns are triggered when a matching event is observed. Rules with ScheduleExpressions self-trigger based on the given schedule. A rule can have both an EventPattern and a ScheduleExpression, in which case the rule will trigger on matching events as well as on a schedule.

        Note: Most services in AWS treat : or / as the same character in Amazon Resource Names (ARNs). However, CloudWatch Events uses an exact match in event patterns and rules. Be sure to use the correct ARN characters when creating event patterns so that they match the ARN syntax in the event you want to match.

        ", "PutTargets": "

        Adds target(s) to a rule. Targets are the resources that can be invoked when a rule is triggered. For example, AWS Lambda functions, Amazon Kinesis streams, and built-in targets. Updates the target(s) if they are already associated with the role. In other words, if there is already a target with the given target ID, then the target associated with that ID is updated.

        In order to be able to make API calls against the resources you own, Amazon CloudWatch Events needs the appropriate permissions. For AWS Lambda and Amazon SNS resources, CloudWatch Events relies on resource-based policies. For Amazon Kinesis streams, CloudWatch Events relies on IAM roles. For more information, see Permissions for Sending Events to Targets in the Amazon CloudWatch Developer Guide.

        Input and InputPath are mutually-exclusive and optional parameters of a target. When a rule is triggered due to a matched event, if for a target:

        • Neither Input nor InputPath is specified, then the entire event is passed to the target in JSON form.
        • InputPath is specified in the form of JSONPath (e.g. $.detail), then only the part of the event specified in the path is passed to the target (e.g. only the detail part of the event is passed).
        • Input is specified in the form of a valid JSON, then the matched event is overridden with this constant.

        Note: When you add targets to a rule, when the associated rule triggers, new or updated targets might not be immediately invoked. Please allow a short period of time for changes to take effect.

        ", "RemoveTargets": "

        Removes target(s) from a rule so that when the rule is triggered, those targets will no longer be invoked.

        Note: When you remove a target, when the associated rule triggers, removed targets might still continue to be invoked. Please allow a short period of time for changes to take effect.

        ", "TestEventPattern": "

        Tests whether an event pattern matches the provided event.

        Note: Most services in AWS treat : or / as the same character in Amazon Resource Names (ARNs). However, CloudWatch Events uses an exact match in event patterns and rules. Be sure to use the correct ARN characters when creating event patterns so that they match the ARN syntax in the event you want to match.

        " }, "service": "

        Amazon CloudWatch Events helps you to respond to state changes in your AWS resources. When your resources change state they automatically send events into an event stream. You can create rules that match selected events in the stream and route them to targets to take action. You can also use rules to take action on a pre-determined schedule. For example, you can configure rules to:

        • Automatically invoke an AWS Lambda function to update DNS entries when an event notifies you that Amazon EC2 instance enters the running state.
        • Direct specific API records from CloudTrail to an Amazon Kinesis stream for detailed analysis of potential security or availability risks.
        • Periodically invoke a built-in target to create a snapshot of an Amazon EBS volume.

        For more information about Amazon CloudWatch Events features, see the Amazon CloudWatch Developer Guide.

        ", "shapes": { "Boolean": { "base": null, "refs": { "TestEventPatternResponse$Result": "

        Indicates whether the event matches the event pattern.

        " } }, "ConcurrentModificationException": { "base": "

        This exception occurs if there is concurrent modification on rule or target.

        ", "refs": { } }, "DeleteRuleRequest": { "base": "

        Container for the parameters to the DeleteRule operation.

        ", "refs": { } }, "DescribeRuleRequest": { "base": "

        Container for the parameters to the DescribeRule operation.

        ", "refs": { } }, "DescribeRuleResponse": { "base": "

        The result of the DescribeRule operation.

        ", "refs": { } }, "DisableRuleRequest": { "base": "

        Container for the parameters to the DisableRule operation.

        ", "refs": { } }, "EnableRuleRequest": { "base": "

        Container for the parameters to the EnableRule operation.

        ", "refs": { } }, "ErrorCode": { "base": null, "refs": { "PutEventsResultEntry$ErrorCode": "

        The error code representing why the event submission failed on this entry.

        ", "PutTargetsResultEntry$ErrorCode": "

        The error code representing why the target submission failed on this entry.

        ", "RemoveTargetsResultEntry$ErrorCode": "

        The error code representing why the target removal failed on this entry.

        " } }, "ErrorMessage": { "base": null, "refs": { "PutEventsResultEntry$ErrorMessage": "

        The error message explaining why the event submission failed on this entry.

        ", "PutTargetsResultEntry$ErrorMessage": "

        The error message explaining why the target submission failed on this entry.

        ", "RemoveTargetsResultEntry$ErrorMessage": "

        The error message explaining why the target removal failed on this entry.

        " } }, "EventId": { "base": null, "refs": { "PutEventsResultEntry$EventId": "

        The ID of the event submitted to Amazon CloudWatch Events.

        " } }, "EventPattern": { "base": null, "refs": { "DescribeRuleResponse$EventPattern": "

        The event pattern.

        ", "PutRuleRequest$EventPattern": "

        The event pattern.

        ", "Rule$EventPattern": "

        The event pattern of the rule.

        ", "TestEventPatternRequest$EventPattern": "

        The event pattern you want to test.

        " } }, "EventResource": { "base": null, "refs": { "EventResourceList$member": null } }, "EventResourceList": { "base": null, "refs": { "PutEventsRequestEntry$Resources": "

        AWS resources, identified by Amazon Resource Name (ARN), which the event primarily concerns. Any number, including zero, may be present.

        " } }, "EventTime": { "base": null, "refs": { "PutEventsRequestEntry$Time": "

        Timestamp of event, per RFC3339. If no timestamp is provided, the timestamp of the PutEvents call will be used.

        " } }, "Integer": { "base": null, "refs": { "PutEventsResponse$FailedEntryCount": "

        The number of failed entries.

        ", "PutTargetsResponse$FailedEntryCount": "

        The number of failed entries.

        ", "RemoveTargetsResponse$FailedEntryCount": "

        The number of failed entries.

        " } }, "InternalException": { "base": "

        This exception occurs due to unexpected causes.

        ", "refs": { } }, "InvalidEventPatternException": { "base": "

        The event pattern is invalid.

        ", "refs": { } }, "LimitExceededException": { "base": "

        This exception occurs if you try to create more rules or add more targets to a rule than allowed by default.

        ", "refs": { } }, "LimitMax100": { "base": null, "refs": { "ListRuleNamesByTargetRequest$Limit": "

        The maximum number of results to return.

        ", "ListRulesRequest$Limit": "

        The maximum number of results to return.

        ", "ListTargetsByRuleRequest$Limit": "

        The maximum number of results to return.

        " } }, "ListRuleNamesByTargetRequest": { "base": "

        Container for the parameters to the ListRuleNamesByTarget operation.

        ", "refs": { } }, "ListRuleNamesByTargetResponse": { "base": "

        The result of the ListRuleNamesByTarget operation.

        ", "refs": { } }, "ListRulesRequest": { "base": "

        Container for the parameters to the ListRules operation.

        ", "refs": { } }, "ListRulesResponse": { "base": "

        The result of the ListRules operation.

        ", "refs": { } }, "ListTargetsByRuleRequest": { "base": "

        Container for the parameters to the ListTargetsByRule operation.

        ", "refs": { } }, "ListTargetsByRuleResponse": { "base": "

        The result of the ListTargetsByRule operation.

        ", "refs": { } }, "NextToken": { "base": null, "refs": { "ListRuleNamesByTargetRequest$NextToken": "

        The token returned by a previous call to indicate that there is more data available.

        ", "ListRuleNamesByTargetResponse$NextToken": "

        Indicates that there are additional results to retrieve.

        ", "ListRulesRequest$NextToken": "

        The token returned by a previous call to indicate that there is more data available.

        ", "ListRulesResponse$NextToken": "

        Indicates that there are additional results to retrieve.

        ", "ListTargetsByRuleRequest$NextToken": "

        The token returned by a previous call to indicate that there is more data available.

        ", "ListTargetsByRuleResponse$NextToken": "

        Indicates that there are additional results to retrieve.

        " } }, "PutEventsRequest": { "base": "

        Container for the parameters to the PutEvents operation.

        ", "refs": { } }, "PutEventsRequestEntry": { "base": "

        Contains information about the event to be used in PutEvents.

        ", "refs": { "PutEventsRequestEntryList$member": null } }, "PutEventsRequestEntryList": { "base": null, "refs": { "PutEventsRequest$Entries": "

        The entry that defines an event in your system. You can specify several parameters for the entry such as the source and type of the event, resources associated with the event, and so on.

        " } }, "PutEventsResponse": { "base": "

        The result of the PutEvents operation.

        ", "refs": { } }, "PutEventsResultEntry": { "base": "

        A PutEventsResult contains a list of PutEventsResultEntry.

        ", "refs": { "PutEventsResultEntryList$member": null } }, "PutEventsResultEntryList": { "base": null, "refs": { "PutEventsResponse$Entries": "

        A list of successfully and unsuccessfully ingested events results. If the ingestion was successful, the entry will have the event ID in it. If not, then the ErrorCode and ErrorMessage can be used to identify the problem with the entry.

        " } }, "PutRuleRequest": { "base": "

        Container for the parameters to the PutRule operation.

        ", "refs": { } }, "PutRuleResponse": { "base": "

        The result of the PutRule operation.

        ", "refs": { } }, "PutTargetsRequest": { "base": "

        Container for the parameters to the PutTargets operation.

        ", "refs": { } }, "PutTargetsResponse": { "base": "

        The result of the PutTargets operation.

        ", "refs": { } }, "PutTargetsResultEntry": { "base": "

        A PutTargetsResult contains a list of PutTargetsResultEntry.

        ", "refs": { "PutTargetsResultEntryList$member": null } }, "PutTargetsResultEntryList": { "base": null, "refs": { "PutTargetsResponse$FailedEntries": "

        An array of failed target entries.

        " } }, "RemoveTargetsRequest": { "base": "

        Container for the parameters to the RemoveTargets operation.

        ", "refs": { } }, "RemoveTargetsResponse": { "base": "

        The result of the RemoveTargets operation.

        ", "refs": { } }, "RemoveTargetsResultEntry": { "base": "

        The ID of the target requested to be removed from the rule by Amazon CloudWatch Events.

        ", "refs": { "RemoveTargetsResultEntryList$member": null } }, "RemoveTargetsResultEntryList": { "base": null, "refs": { "RemoveTargetsResponse$FailedEntries": "

        An array of failed target entries.

        " } }, "ResourceNotFoundException": { "base": "

        The rule does not exist.

        ", "refs": { } }, "RoleArn": { "base": null, "refs": { "DescribeRuleResponse$RoleArn": "

        The Amazon Resource Name (ARN) of the IAM role associated with the rule.

        ", "PutRuleRequest$RoleArn": "

        The Amazon Resource Name (ARN) of the IAM role associated with the rule.

        ", "Rule$RoleArn": "

        The Amazon Resource Name (ARN) associated with the role that is used for target invocation.

        " } }, "Rule": { "base": "

        Contains information about a rule in Amazon CloudWatch Events. A ListRulesResult contains a list of Rules.

        ", "refs": { "RuleResponseList$member": null } }, "RuleArn": { "base": null, "refs": { "DescribeRuleResponse$Arn": "

        The Amazon Resource Name (ARN) associated with the rule.

        ", "PutRuleResponse$RuleArn": "

        The Amazon Resource Name (ARN) that identifies the rule.

        ", "Rule$Arn": "

        The Amazon Resource Name (ARN) of the rule.

        " } }, "RuleDescription": { "base": null, "refs": { "DescribeRuleResponse$Description": "

        The rule's description.

        ", "PutRuleRequest$Description": "

        A description of the rule.

        ", "Rule$Description": "

        The description of the rule.

        " } }, "RuleName": { "base": null, "refs": { "DeleteRuleRequest$Name": "

        The name of the rule to be deleted.

        ", "DescribeRuleRequest$Name": "

        The name of the rule you want to describe details for.

        ", "DescribeRuleResponse$Name": "

        The rule's name.

        ", "DisableRuleRequest$Name": "

        The name of the rule you want to disable.

        ", "EnableRuleRequest$Name": "

        The name of the rule that you want to enable.

        ", "ListRulesRequest$NamePrefix": "

        The prefix matching the rule name.

        ", "ListTargetsByRuleRequest$Rule": "

        The name of the rule whose targets you want to list.

        ", "PutRuleRequest$Name": "

        The name of the rule that you are creating or updating.

        ", "PutTargetsRequest$Rule": "

        The name of the rule you want to add targets to.

        ", "RemoveTargetsRequest$Rule": "

        The name of the rule you want to remove targets from.

        ", "Rule$Name": "

        The rule's name.

        ", "RuleNameList$member": null } }, "RuleNameList": { "base": null, "refs": { "ListRuleNamesByTargetResponse$RuleNames": "

        List of rules names that can invoke the given target.

        " } }, "RuleResponseList": { "base": null, "refs": { "ListRulesResponse$Rules": "

        List of rules matching the specified criteria.

        " } }, "RuleState": { "base": null, "refs": { "DescribeRuleResponse$State": "

        Specifies whether the rule is enabled or disabled.

        ", "PutRuleRequest$State": "

        Indicates whether the rule is enabled or disabled.

        ", "Rule$State": "

        The rule's state.

        " } }, "ScheduleExpression": { "base": null, "refs": { "DescribeRuleResponse$ScheduleExpression": "

        The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\".

        ", "PutRuleRequest$ScheduleExpression": "

        The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\".

        ", "Rule$ScheduleExpression": "

        The scheduling expression. For example, \"cron(0 20 * * ? *)\", \"rate(5 minutes)\".

        " } }, "String": { "base": null, "refs": { "PutEventsRequestEntry$Source": "

        The source of the event.

        ", "PutEventsRequestEntry$DetailType": "

        Free-form string used to decide what fields to expect in the event detail.

        ", "PutEventsRequestEntry$Detail": "

        In the JSON sense, an object containing fields, which may also contain nested sub-objects. No constraints are imposed on its contents.

        ", "TestEventPatternRequest$Event": "

        The event in the JSON format to test against the event pattern.

        " } }, "Target": { "base": "

        Targets are the resources that can be invoked when a rule is triggered. For example, AWS Lambda functions, Amazon Kinesis streams, and built-in targets.

        Input and InputPath are mutually-exclusive and optional parameters of a target. When a rule is triggered due to a matched event, if for a target:

        • Neither Input nor InputPath is specified, then the entire event is passed to the target in JSON form.
        • InputPath is specified in the form of JSONPath (e.g. $.detail), then only the part of the event specified in the path is passed to the target (e.g. only the detail part of the event is passed).
        • Input is specified in the form of a valid JSON, then the matched event is overridden with this constant.
        ", "refs": { "TargetList$member": null } }, "TargetArn": { "base": null, "refs": { "ListRuleNamesByTargetRequest$TargetArn": "

        The Amazon Resource Name (ARN) of the target resource that you want to list the rules for.

        ", "Target$Arn": "

        The Amazon Resource Name (ARN) associated of the target.

        " } }, "TargetId": { "base": null, "refs": { "PutTargetsResultEntry$TargetId": "

        The ID of the target submitted to Amazon CloudWatch Events.

        ", "RemoveTargetsResultEntry$TargetId": "

        The ID of the target requested to be removed by Amazon CloudWatch Events.

        ", "Target$Id": "

        The unique target assignment ID.

        ", "TargetIdList$member": null } }, "TargetIdList": { "base": null, "refs": { "RemoveTargetsRequest$Ids": "

        The list of target IDs to remove from the rule.

        " } }, "TargetInput": { "base": null, "refs": { "Target$Input": "

        Valid JSON text passed to the target. For more information about JSON text, see The JavaScript Object Notation (JSON) Data Interchange Format.

        " } }, "TargetInputPath": { "base": null, "refs": { "Target$InputPath": "

        The value of the JSONPath that is used for extracting part of the matched event when passing it to the target. For more information about JSON paths, see JSONPath.

        " } }, "TargetList": { "base": null, "refs": { "ListTargetsByRuleResponse$Targets": "

        Lists the targets assigned to the rule.

        ", "PutTargetsRequest$Targets": "

        List of targets you want to update or add to the rule.

        " } }, "TestEventPatternRequest": { "base": "

        Container for the parameters to the TestEventPattern operation.

        ", "refs": { } }, "TestEventPatternResponse": { "base": "

        The result of the TestEventPattern operation.

        ", "refs": { } } } } aws-sdk-go-1.4.22/models/apis/events/2015-10-07/examples-1.json000066400000000000000000000000521300374646400232030ustar00rootroot00000000000000{ "version":"1.0", "examples":{ } } aws-sdk-go-1.4.22/models/apis/firehose/000077500000000000000000000000001300374646400176065ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/firehose/2015-08-04/000077500000000000000000000000001300374646400206435ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/firehose/2015-08-04/api-2.json000066400000000000000000000477231300374646400224630ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-08-04", "endpointPrefix":"firehose", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"Firehose", "serviceFullName":"Amazon Kinesis Firehose", "signatureVersion":"v4", "targetPrefix":"Firehose_20150804" }, "operations":{ "CreateDeliveryStream":{ "name":"CreateDeliveryStream", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDeliveryStreamInput"}, "output":{"shape":"CreateDeliveryStreamOutput"}, "errors":[ {"shape":"InvalidArgumentException"}, {"shape":"LimitExceededException"}, {"shape":"ResourceInUseException"} ] }, "DeleteDeliveryStream":{ "name":"DeleteDeliveryStream", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDeliveryStreamInput"}, "output":{"shape":"DeleteDeliveryStreamOutput"}, "errors":[ {"shape":"ResourceInUseException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeDeliveryStream":{ "name":"DescribeDeliveryStream", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDeliveryStreamInput"}, "output":{"shape":"DescribeDeliveryStreamOutput"}, "errors":[ {"shape":"ResourceNotFoundException"} ] }, "ListDeliveryStreams":{ "name":"ListDeliveryStreams", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListDeliveryStreamsInput"}, "output":{"shape":"ListDeliveryStreamsOutput"} }, "PutRecord":{ "name":"PutRecord", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutRecordInput"}, "output":{"shape":"PutRecordOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArgumentException"}, {"shape":"ServiceUnavailableException"} ] }, "PutRecordBatch":{ "name":"PutRecordBatch", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutRecordBatchInput"}, "output":{"shape":"PutRecordBatchOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArgumentException"}, {"shape":"ServiceUnavailableException"} ] }, "UpdateDestination":{ "name":"UpdateDestination", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateDestinationInput"}, "output":{"shape":"UpdateDestinationOutput"}, "errors":[ {"shape":"InvalidArgumentException"}, {"shape":"ResourceInUseException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ConcurrentModificationException"} ] } }, "shapes":{ "AWSKMSKeyARN":{ "type":"string", "max":512, "min":1, "pattern":"arn:.*" }, "BooleanObject":{"type":"boolean"}, "BucketARN":{ "type":"string", "max":2048, "min":1, "pattern":"arn:.*" }, "BufferingHints":{ "type":"structure", "members":{ "SizeInMBs":{"shape":"SizeInMBs"}, "IntervalInSeconds":{"shape":"IntervalInSeconds"} } }, "CloudWatchLoggingOptions":{ "type":"structure", "members":{ "Enabled":{"shape":"BooleanObject"}, "LogGroupName":{"shape":"LogGroupName"}, "LogStreamName":{"shape":"LogStreamName"} } }, "ClusterJDBCURL":{ "type":"string", "min":1, "pattern":"jdbc:(redshift|postgresql)://((?!-)[A-Za-z0-9-]{1,63}(?Amazon Kinesis Firehose API Reference

        Amazon Kinesis Firehose is a fully-managed service that delivers real-time streaming data to destinations such as Amazon Simple Storage Service (Amazon S3), Amazon Elasticsearch Service (Amazon ES), and Amazon Redshift.

        ", "operations": { "CreateDeliveryStream": "

        Creates a delivery stream.

        CreateDeliveryStream is an asynchronous operation that immediately returns. The initial status of the delivery stream is CREATING. After the delivery stream is created, its status is ACTIVE and it now accepts data. Attempts to send data to a delivery stream that is not in the ACTIVE state cause an exception. To check the state of a delivery stream, use DescribeDeliveryStream.

        The name of a delivery stream identifies it. You can't have two delivery streams with the same name in the same region. Two delivery streams in different AWS accounts or different regions in the same AWS account can have the same name.

        By default, you can create up to 20 delivery streams per region.

        A delivery stream can only be configured with a single destination, Amazon S3, Amazon Elasticsearch Service, or Amazon Redshift. For correct CreateDeliveryStream request syntax, specify only one destination configuration parameter: either S3DestinationConfiguration, ElasticsearchDestinationConfiguration, or RedshiftDestinationConfiguration.

        As part of S3DestinationConfiguration, optional values BufferingHints, EncryptionConfiguration, and CompressionFormat can be provided. By default, if no BufferingHints value is provided, Firehose buffers data up to 5 MB or for 5 minutes, whichever condition is satisfied first. Note that BufferingHints is a hint, so there are some cases where the service cannot adhere to these conditions strictly; for example, record boundaries are such that the size is a little over or under the configured buffering size. By default, no encryption is performed. We strongly recommend that you enable encryption to ensure secure data storage in Amazon S3.

        A few notes about RedshiftDestinationConfiguration:

        • An Amazon Redshift destination requires an S3 bucket as intermediate location, as Firehose first delivers data to S3 and then uses COPY syntax to load data into an Amazon Redshift table. This is specified in the RedshiftDestinationConfiguration.S3Configuration parameter element.

        • The compression formats SNAPPY or ZIP cannot be specified in RedshiftDestinationConfiguration.S3Configuration because the Amazon Redshift COPY operation that reads from the S3 bucket doesn't support these compression formats.

        • We strongly recommend that the username and password provided is used exclusively for Firehose purposes, and that the permissions for the account are restricted for Amazon Redshift INSERT permissions.

        Firehose assumes the IAM role that is configured as part of destinations. The IAM role should allow the Firehose principal to assume the role, and the role should have permissions that allows the service to deliver the data. For more information, see Amazon S3 Bucket Access in the Amazon Kinesis Firehose Developer Guide.

        ", "DeleteDeliveryStream": "

        Deletes a delivery stream and its data.

        You can delete a delivery stream only if it is in ACTIVE or DELETING state, and not in the CREATING state. While the deletion request is in process, the delivery stream is in the DELETING state.

        To check the state of a delivery stream, use DescribeDeliveryStream.

        While the delivery stream is DELETING state, the service may continue to accept the records, but the service doesn't make any guarantees with respect to delivering the data. Therefore, as a best practice, you should first stop any applications that are sending records before deleting a delivery stream.

        ", "DescribeDeliveryStream": "

        Describes the specified delivery stream and gets the status. For example, after your delivery stream is created, call DescribeDeliveryStream to see if the delivery stream is ACTIVE and therefore ready for data to be sent to it.

        ", "ListDeliveryStreams": "

        Lists your delivery streams.

        The number of delivery streams might be too large to return using a single call to ListDeliveryStreams. You can limit the number of delivery streams returned, using the Limit parameter. To determine whether there are more delivery streams to list, check the value of HasMoreDeliveryStreams in the output. If there are more delivery streams to list, you can request them by specifying the name of the last delivery stream returned in the call in the ExclusiveStartDeliveryStreamName parameter of a subsequent call.

        ", "PutRecord": "

        Writes a single data record into an Amazon Kinesis Firehose delivery stream. To write multiple data records into a delivery stream, use PutRecordBatch. Applications using these operations are referred to as producers.

        By default, each delivery stream can take in up to 2,000 transactions per second, 5,000 records per second, or 5 MB per second. Note that if you use PutRecord and PutRecordBatch, the limits are an aggregate across these two operations for each delivery stream. For more information about limits and how to request an increase, see Amazon Kinesis Firehose Limits.

        You must specify the name of the delivery stream and the data record when using PutRecord. The data record consists of a data blob that can be up to 1,000 KB in size, and any kind of data, for example, a segment from a log file, geographic location data, web site clickstream data, etc.

        Firehose buffers records before delivering them to the destination. To disambiguate the data blobs at the destination, a common solution is to use delimiters in the data, such as a newline (\\n) or some other character unique within the data. This allows the consumer application(s) to parse individual data items when reading the data from the destination.

        The PutRecord operation returns a RecordId, which is a unique string assigned to each record. Producer applications can use this ID for purposes such as auditability and investigation.

        If the PutRecord operation throws a ServiceUnavailableException, back off and retry. If the exception persists, it is possible that the throughput limits have been exceeded for the delivery stream.

        Data records sent to Firehose are stored for 24 hours from the time they are added to a delivery stream as it attempts to send the records to the destination. If the destination is unreachable for more than 24 hours, the data is no longer available.

        ", "PutRecordBatch": "

        Writes multiple data records into a delivery stream in a single call, which can achieve higher throughput per producer than when writing single records. To write single data records into a delivery stream, use PutRecord. Applications using these operations are referred to as producers.

        Each PutRecordBatch request supports up to 500 records. Each record in the request can be as large as 1,000 KB (before 64-bit encoding), up to a limit of 4 MB for the entire request. By default, each delivery stream can take in up to 2,000 transactions per second, 5,000 records per second, or 5 MB per second. Note that if you use PutRecord and PutRecordBatch, the limits are an aggregate across these two operations for each delivery stream. For more information about limits and how to request an increase, see Amazon Kinesis Firehose Limits.

        You must specify the name of the delivery stream and the data record when using PutRecord. The data record consists of a data blob that can be up to 1,000 KB in size, and any kind of data, for example, a segment from a log file, geographic location data, web site clickstream data, and so on.

        Firehose buffers records before delivering them to the destination. To disambiguate the data blobs at the destination, a common solution is to use delimiters in the data, such as a newline (\\n) or some other character unique within the data. This allows the consumer application(s) to parse individual data items when reading the data from the destination.

        The PutRecordBatch response includes a count of any failed records, FailedPutCount, and an array of responses, RequestResponses. The FailedPutCount value is a count of records that failed. Each entry in the RequestResponses array gives additional information of the processed record. Each entry in RequestResponses directly correlates with a record in the request array using the same ordering, from the top to the bottom of the request and response. RequestResponses always includes the same number of records as the request array. RequestResponses both successfully and unsuccessfully processed records. Firehose attempts to process all records in each PutRecordBatch request. A single record failure does not stop the processing of subsequent records.

        A successfully processed record includes a RecordId value, which is a unique value identified for the record. An unsuccessfully processed record includes ErrorCode and ErrorMessage values. ErrorCode reflects the type of error and is one of the following values: ServiceUnavailable or InternalFailure. ErrorMessage provides more detailed information about the error.

        If FailedPutCount is greater than 0 (zero), retry the request. A retry of the entire batch of records is possible; however, we strongly recommend that you inspect the entire response and resend only those records that failed processing. This minimizes duplicate records and also reduces the total bytes sent (and corresponding charges).

        If the PutRecordBatch operation throws a ServiceUnavailableException, back off and retry. If the exception persists, it is possible that the throughput limits have been exceeded for the delivery stream.

        Data records sent to Firehose are stored for 24 hours from the time they are added to a delivery stream as it attempts to send the records to the destination. If the destination is unreachable for more than 24 hours, the data is no longer available.

        ", "UpdateDestination": "

        Updates the specified destination of the specified delivery stream. Note: Switching between Elasticsearch and other services is not supported. For Elasticsearch destination, you can only update an existing Elasticsearch destination with this operation.

        This operation can be used to change the destination type (for example, to replace the Amazon S3 destination with Amazon Redshift) or change the parameters associated with a given destination (for example, to change the bucket name of the Amazon S3 destination). The update may not occur immediately. The target delivery stream remains active while the configurations are updated, so data writes to the delivery stream can continue during this process. The updated configurations are normally effective within a few minutes.

        If the destination type is the same, Firehose merges the configuration parameters specified in the UpdateDestination request with the destination configuration that already exists on the delivery stream. If any of the parameters are not specified in the update request, then the existing configuration parameters are retained. For example, in the Amazon S3 destination, if EncryptionConfiguration is not specified then the existing EncryptionConfiguration is maintained on the destination.

        If the destination type is not the same, for example, changing the destination from Amazon S3 to Amazon Redshift, Firehose does not merge any parameters. In this case, all parameters must be specified.

        Firehose uses the CurrentDeliveryStreamVersionId to avoid race conditions and conflicting merges. This is a required field in every request and the service only updates the configuration if the existing configuration matches the VersionId. After the update is applied successfully, the VersionId is updated, which can be retrieved with the DescribeDeliveryStream operation. The new VersionId should be uses to set CurrentDeliveryStreamVersionId in the next UpdateDestination operation.

        " }, "shapes": { "AWSKMSKeyARN": { "base": null, "refs": { "KMSEncryptionConfig$AWSKMSKeyARN": "

        The ARN of the encryption key. Must belong to the same region as the destination Amazon S3 bucket.

        " } }, "BooleanObject": { "base": null, "refs": { "CloudWatchLoggingOptions$Enabled": "

        Enables or disables CloudWatch logging.

        ", "DeliveryStreamDescription$HasMoreDestinations": "

        Indicates whether there are more destinations available to list.

        ", "ListDeliveryStreamsOutput$HasMoreDeliveryStreams": "

        Indicates whether there are more delivery streams available to list.

        " } }, "BucketARN": { "base": null, "refs": { "S3DestinationConfiguration$BucketARN": "

        The ARN of the S3 bucket.

        ", "S3DestinationDescription$BucketARN": "

        The ARN of the S3 bucket.

        ", "S3DestinationUpdate$BucketARN": "

        The ARN of the S3 bucket.

        " } }, "BufferingHints": { "base": "

        Describes hints for the buffering to perform before delivering data to the destination. Please note that these options are treated as hints, and therefore Firehose may choose to use different values when it is optimal.

        ", "refs": { "S3DestinationConfiguration$BufferingHints": "

        The buffering option. If no value is specified, BufferingHints object default values are used.

        ", "S3DestinationDescription$BufferingHints": "

        The buffering option. If no value is specified, BufferingHints object default values are used.

        ", "S3DestinationUpdate$BufferingHints": "

        The buffering option. If no value is specified, BufferingHints object default values are used.

        " } }, "CloudWatchLoggingOptions": { "base": "

        Describes CloudWatch logging options for your delivery stream.

        ", "refs": { "ElasticsearchDestinationConfiguration$CloudWatchLoggingOptions": "

        Describes CloudWatch logging options for your delivery stream.

        ", "ElasticsearchDestinationDescription$CloudWatchLoggingOptions": "

        CloudWatch logging options.

        ", "ElasticsearchDestinationUpdate$CloudWatchLoggingOptions": "

        Describes CloudWatch logging options for your delivery stream.

        ", "RedshiftDestinationConfiguration$CloudWatchLoggingOptions": "

        Describes CloudWatch logging options for your delivery stream.

        ", "RedshiftDestinationDescription$CloudWatchLoggingOptions": "

        Describes CloudWatch logging options for your delivery stream.

        ", "RedshiftDestinationUpdate$CloudWatchLoggingOptions": "

        Describes CloudWatch logging options for your delivery stream.

        ", "S3DestinationConfiguration$CloudWatchLoggingOptions": "

        Describes CloudWatch logging options for your delivery stream.

        ", "S3DestinationDescription$CloudWatchLoggingOptions": "

        Describes CloudWatch logging options for your delivery stream.

        ", "S3DestinationUpdate$CloudWatchLoggingOptions": "

        Describes CloudWatch logging options for your delivery stream.

        " } }, "ClusterJDBCURL": { "base": null, "refs": { "RedshiftDestinationConfiguration$ClusterJDBCURL": "

        The database connection string.

        ", "RedshiftDestinationDescription$ClusterJDBCURL": "

        The database connection string.

        ", "RedshiftDestinationUpdate$ClusterJDBCURL": "

        The database connection string.

        " } }, "CompressionFormat": { "base": null, "refs": { "S3DestinationConfiguration$CompressionFormat": "

        The compression format. If no value is specified, the default is UNCOMPRESSED.

        The compression formats SNAPPY or ZIP cannot be specified for Amazon Redshift destinations because they are not supported by the Amazon Redshift COPY operation that reads from the S3 bucket.

        ", "S3DestinationDescription$CompressionFormat": "

        The compression format. If no value is specified, the default is NOCOMPRESSION.

        ", "S3DestinationUpdate$CompressionFormat": "

        The compression format. If no value is specified, the default is NOCOMPRESSION.

        The compression formats SNAPPY or ZIP cannot be specified for Amazon Redshift destinations because they are not supported by the Amazon Redshift COPY operation that reads from the S3 bucket.

        " } }, "ConcurrentModificationException": { "base": "

        Another modification has already happened. Fetch VersionId again and use it to update the destination.

        ", "refs": { } }, "CopyCommand": { "base": "

        Describes a COPY command for Amazon Redshift.

        ", "refs": { "RedshiftDestinationConfiguration$CopyCommand": "

        The COPY command.

        ", "RedshiftDestinationDescription$CopyCommand": "

        The COPY command.

        ", "RedshiftDestinationUpdate$CopyCommand": "

        The COPY command.

        " } }, "CopyOptions": { "base": null, "refs": { "CopyCommand$CopyOptions": "

        Optional parameters to use with the Amazon Redshift COPY command. For more information, see the \"Optional Parameters\" section of Amazon Redshift COPY command. Some possible examples that would apply to Firehose are as follows.

        delimiter '\\t' lzop; - fields are delimited with \"\\t\" (TAB character) and compressed using lzop.

        delimiter '| - fields are delimited with \"|\" (this is the default delimiter).

        delimiter '|' escape - the delimiter should be escaped.

        fixedwidth 'venueid:3,venuename:25,venuecity:12,venuestate:2,venueseats:6' - fields are fixed width in the source, with each width specified after every column in the table.

        JSON 's3://mybucket/jsonpaths.txt' - data is in JSON format, and the path specified is the format of the data.

        For more examples, see Amazon Redshift COPY command examples.

        " } }, "CreateDeliveryStreamInput": { "base": "

        Contains the parameters for CreateDeliveryStream.

        ", "refs": { } }, "CreateDeliveryStreamOutput": { "base": "

        Contains the output of CreateDeliveryStream.

        ", "refs": { } }, "Data": { "base": null, "refs": { "Record$Data": "

        The data blob, which is base64-encoded when the blob is serialized. The maximum size of the data blob, before base64-encoding, is 1,000 KB.

        " } }, "DataTableColumns": { "base": null, "refs": { "CopyCommand$DataTableColumns": "

        A comma-separated list of column names.

        " } }, "DataTableName": { "base": null, "refs": { "CopyCommand$DataTableName": "

        The name of the target table. The table must already exist in the database.

        " } }, "DeleteDeliveryStreamInput": { "base": "

        Contains the parameters for DeleteDeliveryStream.

        ", "refs": { } }, "DeleteDeliveryStreamOutput": { "base": "

        Contains the output of DeleteDeliveryStream.

        ", "refs": { } }, "DeliveryStreamARN": { "base": null, "refs": { "CreateDeliveryStreamOutput$DeliveryStreamARN": "

        The ARN of the delivery stream.

        ", "DeliveryStreamDescription$DeliveryStreamARN": "

        The Amazon Resource Name (ARN) of the delivery stream.

        " } }, "DeliveryStreamDescription": { "base": "

        Contains information about a delivery stream.

        ", "refs": { "DescribeDeliveryStreamOutput$DeliveryStreamDescription": "

        Information about the delivery stream.

        " } }, "DeliveryStreamName": { "base": null, "refs": { "CreateDeliveryStreamInput$DeliveryStreamName": "

        The name of the delivery stream.

        ", "DeleteDeliveryStreamInput$DeliveryStreamName": "

        The name of the delivery stream.

        ", "DeliveryStreamDescription$DeliveryStreamName": "

        The name of the delivery stream.

        ", "DeliveryStreamNameList$member": null, "DescribeDeliveryStreamInput$DeliveryStreamName": "

        The name of the delivery stream.

        ", "ListDeliveryStreamsInput$ExclusiveStartDeliveryStreamName": "

        The name of the delivery stream to start the list with.

        ", "PutRecordBatchInput$DeliveryStreamName": "

        The name of the delivery stream.

        ", "PutRecordInput$DeliveryStreamName": "

        The name of the delivery stream.

        ", "UpdateDestinationInput$DeliveryStreamName": "

        The name of the delivery stream.

        " } }, "DeliveryStreamNameList": { "base": null, "refs": { "ListDeliveryStreamsOutput$DeliveryStreamNames": "

        The names of the delivery streams.

        " } }, "DeliveryStreamStatus": { "base": null, "refs": { "DeliveryStreamDescription$DeliveryStreamStatus": "

        The status of the delivery stream.

        " } }, "DeliveryStreamVersionId": { "base": null, "refs": { "DeliveryStreamDescription$VersionId": "

        Used when calling the UpdateDestination operation. Each time the destination is updated for the delivery stream, the VersionId is changed, and the current VersionId is required when updating the destination. This is so that the service knows it is applying the changes to the correct version of the delivery stream.

        ", "UpdateDestinationInput$CurrentDeliveryStreamVersionId": "

        Obtain this value from the VersionId result of the DeliveryStreamDescription operation. This value is required, and helps the service to perform conditional operations. For example, if there is a interleaving update and this value is null, then the update destination fails. After the update is successful, the VersionId value is updated. The service then performs a merge of the old configuration with the new configuration.

        " } }, "DescribeDeliveryStreamInput": { "base": "

        Contains the parameters for DescribeDeliveryStream.

        ", "refs": { } }, "DescribeDeliveryStreamInputLimit": { "base": null, "refs": { "DescribeDeliveryStreamInput$Limit": "

        The limit on the number of destinations to return. Currently, you can have one destination per delivery stream.

        " } }, "DescribeDeliveryStreamOutput": { "base": "

        Contains the output of DescribeDeliveryStream.

        ", "refs": { } }, "DestinationDescription": { "base": "

        Describes the destination for a delivery stream.

        ", "refs": { "DestinationDescriptionList$member": null } }, "DestinationDescriptionList": { "base": null, "refs": { "DeliveryStreamDescription$Destinations": "

        The destinations.

        " } }, "DestinationId": { "base": null, "refs": { "DescribeDeliveryStreamInput$ExclusiveStartDestinationId": "

        Specifies the destination ID to start returning the destination information. Currently Firehose supports one destination per delivery stream.

        ", "DestinationDescription$DestinationId": "

        The ID of the destination.

        ", "UpdateDestinationInput$DestinationId": "

        The ID of the destination.

        " } }, "ElasticsearchBufferingHints": { "base": "

        Describes the buffering to perform before delivering data to the Amazon ES destination.

        ", "refs": { "ElasticsearchDestinationConfiguration$BufferingHints": "

        Buffering options. If no value is specified, ElasticsearchBufferingHints object default values are used.

        ", "ElasticsearchDestinationDescription$BufferingHints": "

        Buffering options.

        ", "ElasticsearchDestinationUpdate$BufferingHints": "

        Buffering options. If no value is specified, ElasticsearchBufferingHints object default values are used.

        " } }, "ElasticsearchBufferingIntervalInSeconds": { "base": null, "refs": { "ElasticsearchBufferingHints$IntervalInSeconds": "

        Buffer incoming data for the specified period of time, in seconds, before delivering it to the destination. The default value is 300 (5 minutes).

        " } }, "ElasticsearchBufferingSizeInMBs": { "base": null, "refs": { "ElasticsearchBufferingHints$SizeInMBs": "

        Buffer incoming data to the specified size, in MBs, before delivering it to the destination. The default value is 5.

        We recommend setting SizeInMBs to a value greater than the amount of data you typically ingest into the delivery stream in 10 seconds. For example, if you typically ingest data at 1 MB/sec, set SizeInMBs to be 10 MB or higher.

        " } }, "ElasticsearchDestinationConfiguration": { "base": "

        Describes the configuration of a destination in Amazon ES.

        ", "refs": { "CreateDeliveryStreamInput$ElasticsearchDestinationConfiguration": "

        The destination in Amazon ES. This value cannot be specified if Amazon S3 or Amazon Redshift is the desired destination (see restrictions listed above).

        " } }, "ElasticsearchDestinationDescription": { "base": "

        The destination description in Amazon ES.

        ", "refs": { "DestinationDescription$ElasticsearchDestinationDescription": "

        The destination in Amazon ES.

        " } }, "ElasticsearchDestinationUpdate": { "base": "

        Describes an update for a destination in Amazon ES.

        ", "refs": { "UpdateDestinationInput$ElasticsearchDestinationUpdate": "

        Describes an update for a destination in Amazon ES.

        " } }, "ElasticsearchDomainARN": { "base": null, "refs": { "ElasticsearchDestinationConfiguration$DomainARN": "

        The ARN of the Amazon ES domain. The IAM role must have permission for DescribeElasticsearchDomain, DescribeElasticsearchDomains , and DescribeElasticsearchDomainConfig after assuming RoleARN.

        ", "ElasticsearchDestinationDescription$DomainARN": "

        The ARN of the Amazon ES domain.

        ", "ElasticsearchDestinationUpdate$DomainARN": "

        The ARN of the Amazon ES domain. The IAM role must have permission for DescribeElasticsearchDomain, DescribeElasticsearchDomains , and DescribeElasticsearchDomainConfig after assuming RoleARN.

        " } }, "ElasticsearchIndexName": { "base": null, "refs": { "ElasticsearchDestinationConfiguration$IndexName": "

        The Elasticsearch index name.

        ", "ElasticsearchDestinationDescription$IndexName": "

        The Elasticsearch index name.

        ", "ElasticsearchDestinationUpdate$IndexName": "

        The Elasticsearch index name.

        " } }, "ElasticsearchIndexRotationPeriod": { "base": null, "refs": { "ElasticsearchDestinationConfiguration$IndexRotationPeriod": "

        The Elasticsearch index rotation period. Index rotation appends a timestamp to the IndexName to facilitate expiration of old data. For more information, see Index Rotation for Amazon Elasticsearch Service Destination. Default value is OneDay.

        ", "ElasticsearchDestinationDescription$IndexRotationPeriod": "

        The Elasticsearch index rotation period

        ", "ElasticsearchDestinationUpdate$IndexRotationPeriod": "

        The Elasticsearch index rotation period. Index rotation appends a timestamp to the IndexName to facilitate the expiration of old data. For more information, see Index Rotation for Amazon Elasticsearch Service Destination. Default value is OneDay.

        " } }, "ElasticsearchRetryDurationInSeconds": { "base": null, "refs": { "ElasticsearchRetryOptions$DurationInSeconds": "

        After an initial failure to deliver to Amazon ES, the total amount of time during which Firehose re-attempts delivery (including the first attempt). After this time has elapsed, the failed documents are written to Amazon S3. Default value is 300 seconds (5 minutes). A value of 0 (zero) results in no retries.

        " } }, "ElasticsearchRetryOptions": { "base": "

        Configures retry behavior in the event that Firehose is unable to deliver documents to Amazon ES.

        ", "refs": { "ElasticsearchDestinationConfiguration$RetryOptions": "

        Configures retry behavior in the event that Firehose is unable to deliver documents to Amazon ES. Default value is 300 (5 minutes).

        ", "ElasticsearchDestinationDescription$RetryOptions": "

        Elasticsearch retry options.

        ", "ElasticsearchDestinationUpdate$RetryOptions": "

        Configures retry behavior in the event that Firehose is unable to deliver documents to Amazon ES. Default value is 300 (5 minutes).

        " } }, "ElasticsearchS3BackupMode": { "base": null, "refs": { "ElasticsearchDestinationConfiguration$S3BackupMode": "

        Defines how documents should be delivered to Amazon S3. When set to FailedDocumentsOnly, Firehose writes any documents that could not be indexed to the configured Amazon S3 destination, with elasticsearch-failed/ appended to the key prefix. When set to AllDocuments, Firehose delivers all incoming records to Amazon S3, and also writes failed documents with elasticsearch-failed/ appended to the prefix. For more information, see Amazon S3 Backup for Amazon Elasticsearch Service Destination. Default value is FailedDocumentsOnly.

        ", "ElasticsearchDestinationDescription$S3BackupMode": "

        Amazon S3 backup mode.

        " } }, "ElasticsearchTypeName": { "base": null, "refs": { "ElasticsearchDestinationConfiguration$TypeName": "

        The Elasticsearch type name.

        ", "ElasticsearchDestinationDescription$TypeName": "

        The Elasticsearch type name.

        ", "ElasticsearchDestinationUpdate$TypeName": "

        The Elasticsearch type name.

        " } }, "EncryptionConfiguration": { "base": "

        Describes the encryption for a destination in Amazon S3.

        ", "refs": { "S3DestinationConfiguration$EncryptionConfiguration": "

        The encryption configuration. If no value is specified, the default is no encryption.

        ", "S3DestinationDescription$EncryptionConfiguration": "

        The encryption configuration. If no value is specified, the default is no encryption.

        ", "S3DestinationUpdate$EncryptionConfiguration": "

        The encryption configuration. If no value is specified, the default is no encryption.

        " } }, "ErrorCode": { "base": null, "refs": { "PutRecordBatchResponseEntry$ErrorCode": "

        The error code for an individual record result.

        " } }, "ErrorMessage": { "base": null, "refs": { "ConcurrentModificationException$message": "

        A message that provides information about the error.

        ", "InvalidArgumentException$message": "

        A message that provides information about the error.

        ", "LimitExceededException$message": "

        A message that provides information about the error.

        ", "PutRecordBatchResponseEntry$ErrorMessage": "

        The error message for an individual record result.

        ", "ResourceInUseException$message": "

        A message that provides information about the error.

        ", "ResourceNotFoundException$message": "

        A message that provides information about the error.

        ", "ServiceUnavailableException$message": "

        A message that provides information about the error.

        " } }, "IntervalInSeconds": { "base": null, "refs": { "BufferingHints$IntervalInSeconds": "

        Buffer incoming data for the specified period of time, in seconds, before delivering it to the destination. The default value is 300.

        " } }, "InvalidArgumentException": { "base": "

        The specified input parameter has an value that is not valid.

        ", "refs": { } }, "KMSEncryptionConfig": { "base": "

        Describes an encryption key for a destination in Amazon S3.

        ", "refs": { "EncryptionConfiguration$KMSEncryptionConfig": "

        The encryption key.

        " } }, "LimitExceededException": { "base": "

        You have already reached the limit for a requested resource.

        ", "refs": { } }, "ListDeliveryStreamsInput": { "base": "

        Contains the parameters for ListDeliveryStreams.

        ", "refs": { } }, "ListDeliveryStreamsInputLimit": { "base": null, "refs": { "ListDeliveryStreamsInput$Limit": "

        The maximum number of delivery streams to list.

        " } }, "ListDeliveryStreamsOutput": { "base": "

        Contains the output of ListDeliveryStreams.

        ", "refs": { } }, "LogGroupName": { "base": null, "refs": { "CloudWatchLoggingOptions$LogGroupName": "

        The CloudWatch group name for logging. This value is required if Enabled is true.

        " } }, "LogStreamName": { "base": null, "refs": { "CloudWatchLoggingOptions$LogStreamName": "

        The CloudWatch log stream name for logging. This value is required if Enabled is true.

        " } }, "NoEncryptionConfig": { "base": null, "refs": { "EncryptionConfiguration$NoEncryptionConfig": "

        Specifically override existing encryption information to ensure no encryption is used.

        " } }, "NonNegativeIntegerObject": { "base": null, "refs": { "PutRecordBatchOutput$FailedPutCount": "

        The number of unsuccessfully written records.

        " } }, "Password": { "base": null, "refs": { "RedshiftDestinationConfiguration$Password": "

        The user password.

        ", "RedshiftDestinationUpdate$Password": "

        The user password.

        " } }, "Prefix": { "base": null, "refs": { "S3DestinationConfiguration$Prefix": "

        The \"YYYY/MM/DD/HH\" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket. For more information, see Amazon S3 Object Name Format in the Amazon Kinesis Firehose Developer Guide.

        ", "S3DestinationDescription$Prefix": "

        The \"YYYY/MM/DD/HH\" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket. For more information, see Amazon S3 Object Name Format in the Amazon Kinesis Firehose Developer Guide.

        ", "S3DestinationUpdate$Prefix": "

        The \"YYYY/MM/DD/HH\" time format prefix is automatically used for delivered S3 files. You can specify an extra prefix to be added in front of the time format prefix. Note that if the prefix ends with a slash, it appears as a folder in the S3 bucket. For more information, see Amazon S3 Object Name Format in the Amazon Kinesis Firehose Developer Guide.

        " } }, "PutRecordBatchInput": { "base": "

        Contains the parameters for PutRecordBatch.

        ", "refs": { } }, "PutRecordBatchOutput": { "base": "

        Contains the output of PutRecordBatch.

        ", "refs": { } }, "PutRecordBatchRequestEntryList": { "base": null, "refs": { "PutRecordBatchInput$Records": "

        One or more records.

        " } }, "PutRecordBatchResponseEntry": { "base": "

        Contains the result for an individual record from a PutRecordBatch request. If the record is successfully added to your delivery stream, it receives a record ID. If the record fails to be added to your delivery stream, the result includes an error code and an error message.

        ", "refs": { "PutRecordBatchResponseEntryList$member": null } }, "PutRecordBatchResponseEntryList": { "base": null, "refs": { "PutRecordBatchOutput$RequestResponses": "

        The results for the individual records. The index of each element matches the same index in which records were sent.

        " } }, "PutRecordInput": { "base": "

        Contains the parameters for PutRecord.

        ", "refs": { } }, "PutRecordOutput": { "base": "

        Contains the output of PutRecord.

        ", "refs": { } }, "PutResponseRecordId": { "base": null, "refs": { "PutRecordBatchResponseEntry$RecordId": "

        The ID of the record.

        ", "PutRecordOutput$RecordId": "

        The ID of the record.

        " } }, "Record": { "base": "

        The unit of data in a delivery stream.

        ", "refs": { "PutRecordBatchRequestEntryList$member": null, "PutRecordInput$Record": "

        The record.

        " } }, "RedshiftDestinationConfiguration": { "base": "

        Describes the configuration of a destination in Amazon Redshift.

        ", "refs": { "CreateDeliveryStreamInput$RedshiftDestinationConfiguration": "

        The destination in Amazon Redshift. This value cannot be specified if Amazon S3 or Amazon Elasticsearch is the desired destination (see restrictions listed above).

        " } }, "RedshiftDestinationDescription": { "base": "

        Describes a destination in Amazon Redshift.

        ", "refs": { "DestinationDescription$RedshiftDestinationDescription": "

        The destination in Amazon Redshift.

        " } }, "RedshiftDestinationUpdate": { "base": "

        Describes an update for a destination in Amazon Redshift.

        ", "refs": { "UpdateDestinationInput$RedshiftDestinationUpdate": "

        Describes an update for a destination in Amazon Redshift.

        " } }, "RedshiftRetryDurationInSeconds": { "base": null, "refs": { "RedshiftRetryOptions$DurationInSeconds": "

        The length of time during which Firehose retries delivery after a failure, starting from the initial request and including the first attempt. The default value is 3600 seconds (60 minutes). Firehose does not retry if the value of DurationInSeconds is 0 (zero) or if the first delivery attempt takes longer than the current value.

        " } }, "RedshiftRetryOptions": { "base": "

        Configures retry behavior in the event that Firehose is unable to deliver documents to Amazon Redshift.

        ", "refs": { "RedshiftDestinationConfiguration$RetryOptions": "

        Configures retry behavior in the event that Firehose is unable to deliver documents to Amazon Redshift. Default value is 3600 (60 minutes).

        ", "RedshiftDestinationDescription$RetryOptions": "

        Configures retry behavior in the event that Firehose is unable to deliver documents to Amazon Redshift. Default value is 3600 (60 minutes).

        ", "RedshiftDestinationUpdate$RetryOptions": "

        Configures retry behavior in the event that Firehose is unable to deliver documents to Amazon Redshift. Default value is 3600 (60 minutes).

        " } }, "ResourceInUseException": { "base": "

        The resource is already in use and not available for this operation.

        ", "refs": { } }, "ResourceNotFoundException": { "base": "

        The specified resource could not be found.

        ", "refs": { } }, "RoleARN": { "base": null, "refs": { "ElasticsearchDestinationConfiguration$RoleARN": "

        The ARN of the IAM role to be assumed by Firehose for calling the Amazon ES Configuration API and for indexing documents. For more information, see Amazon S3 Bucket Access.

        ", "ElasticsearchDestinationDescription$RoleARN": "

        The ARN of the AWS credentials.

        ", "ElasticsearchDestinationUpdate$RoleARN": "

        The ARN of the IAM role to be assumed by Firehose for calling the Amazon ES Configuration API and for indexing documents. For more information, see Amazon S3 Bucket Access.

        ", "RedshiftDestinationConfiguration$RoleARN": "

        The ARN of the AWS credentials.

        ", "RedshiftDestinationDescription$RoleARN": "

        The ARN of the AWS credentials.

        ", "RedshiftDestinationUpdate$RoleARN": "

        The ARN of the AWS credentials.

        ", "S3DestinationConfiguration$RoleARN": "

        The ARN of the AWS credentials.

        ", "S3DestinationDescription$RoleARN": "

        The ARN of the AWS credentials.

        ", "S3DestinationUpdate$RoleARN": "

        The ARN of the AWS credentials.

        " } }, "S3DestinationConfiguration": { "base": "

        Describes the configuration of a destination in Amazon S3.

        ", "refs": { "CreateDeliveryStreamInput$S3DestinationConfiguration": "

        The destination in Amazon S3. This value must be specified if ElasticsearchDestinationConfiguration or RedshiftDestinationConfiguration is specified (see restrictions listed above).

        ", "ElasticsearchDestinationConfiguration$S3Configuration": null, "RedshiftDestinationConfiguration$S3Configuration": "

        The S3 configuration for the intermediate location from which Amazon Redshift obtains data. Restrictions are described in the topic for CreateDeliveryStream.

        The compression formats SNAPPY or ZIP cannot be specified in RedshiftDestinationConfiguration.S3Configuration because the Amazon Redshift COPY operation that reads from the S3 bucket doesn't support these compression formats.

        " } }, "S3DestinationDescription": { "base": "

        Describes a destination in Amazon S3.

        ", "refs": { "DestinationDescription$S3DestinationDescription": "

        The Amazon S3 destination.

        ", "ElasticsearchDestinationDescription$S3DestinationDescription": null, "RedshiftDestinationDescription$S3DestinationDescription": "

        The Amazon S3 destination.

        " } }, "S3DestinationUpdate": { "base": "

        Describes an update for a destination in Amazon S3.

        ", "refs": { "ElasticsearchDestinationUpdate$S3Update": null, "RedshiftDestinationUpdate$S3Update": "

        The Amazon S3 destination.

        The compression formats SNAPPY or ZIP cannot be specified in RedshiftDestinationUpdate.S3Update because the Amazon Redshift COPY operation that reads from the S3 bucket doesn't support these compression formats.

        ", "UpdateDestinationInput$S3DestinationUpdate": "

        Describes an update for a destination in Amazon S3.

        " } }, "ServiceUnavailableException": { "base": "

        The service is unavailable, back off and retry the operation. If you continue to see the exception, throughput limits for the delivery stream may have been exceeded. For more information about limits and how to request an increase, see Amazon Kinesis Firehose Limits.

        ", "refs": { } }, "SizeInMBs": { "base": null, "refs": { "BufferingHints$SizeInMBs": "

        Buffer incoming data to the specified size, in MBs, before delivering it to the destination. The default value is 5.

        We recommend setting SizeInMBs to a value greater than the amount of data you typically ingest into the delivery stream in 10 seconds. For example, if you typically ingest data at 1 MB/sec set SizeInMBs to be 10 MB or higher.

        " } }, "Timestamp": { "base": null, "refs": { "DeliveryStreamDescription$CreateTimestamp": "

        The date and time that the delivery stream was created.

        ", "DeliveryStreamDescription$LastUpdateTimestamp": "

        The date and time that the delivery stream was last updated.

        " } }, "UpdateDestinationInput": { "base": "

        Contains the parameters for UpdateDestination.

        ", "refs": { } }, "UpdateDestinationOutput": { "base": "

        Contains the output of UpdateDestination.

        ", "refs": { } }, "Username": { "base": null, "refs": { "RedshiftDestinationConfiguration$Username": "

        The name of the user.

        ", "RedshiftDestinationDescription$Username": "

        The name of the user.

        ", "RedshiftDestinationUpdate$Username": "

        The name of the user.

        " } } } } aws-sdk-go-1.4.22/models/apis/gamelift/000077500000000000000000000000001300374646400175725ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/gamelift/2015-10-01/000077500000000000000000000000001300374646400206155ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/gamelift/2015-10-01/api-2.json000066400000000000000000001461731300374646400224340ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-10-01", "endpointPrefix":"gamelift", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"Amazon GameLift", "signatureVersion":"v4", "targetPrefix":"GameLift" }, "operations":{ "CreateAlias":{ "name":"CreateAlias", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateAliasInput"}, "output":{"shape":"CreateAliasOutput"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"InvalidRequestException"}, {"shape":"ConflictException"}, {"shape":"InternalServiceException"}, {"shape":"LimitExceededException"} ] }, "CreateBuild":{ "name":"CreateBuild", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateBuildInput"}, "output":{"shape":"CreateBuildOutput"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"InvalidRequestException"}, {"shape":"ConflictException"}, {"shape":"InternalServiceException"} ] }, "CreateFleet":{ "name":"CreateFleet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateFleetInput"}, "output":{"shape":"CreateFleetOutput"}, "errors":[ {"shape":"InternalServiceException"}, {"shape":"NotFoundException"}, {"shape":"ConflictException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidRequestException"}, {"shape":"UnauthorizedException"} ] }, "CreateGameSession":{ "name":"CreateGameSession", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateGameSessionInput"}, "output":{"shape":"CreateGameSessionOutput"}, "errors":[ {"shape":"ConflictException"}, {"shape":"InternalServiceException"}, {"shape":"UnauthorizedException"}, {"shape":"InvalidFleetStatusException"}, {"shape":"TerminalRoutingStrategyException"}, {"shape":"InvalidRequestException"}, {"shape":"NotFoundException"}, {"shape":"FleetCapacityExceededException"}, {"shape":"LimitExceededException"}, {"shape":"IdempotentParameterMismatchException"} ] }, "CreatePlayerSession":{ "name":"CreatePlayerSession", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreatePlayerSessionInput"}, "output":{"shape":"CreatePlayerSessionOutput"}, "errors":[ {"shape":"InternalServiceException"}, {"shape":"UnauthorizedException"}, {"shape":"InvalidGameSessionStatusException"}, {"shape":"GameSessionFullException"}, {"shape":"TerminalRoutingStrategyException"}, {"shape":"InvalidRequestException"}, {"shape":"NotFoundException"} ] }, "CreatePlayerSessions":{ "name":"CreatePlayerSessions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreatePlayerSessionsInput"}, "output":{"shape":"CreatePlayerSessionsOutput"}, "errors":[ {"shape":"InternalServiceException"}, {"shape":"UnauthorizedException"}, {"shape":"InvalidGameSessionStatusException"}, {"shape":"GameSessionFullException"}, {"shape":"TerminalRoutingStrategyException"}, {"shape":"InvalidRequestException"}, {"shape":"NotFoundException"} ] }, "DeleteAlias":{ "name":"DeleteAlias", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteAliasInput"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"InvalidRequestException"}, {"shape":"InternalServiceException"} ] }, "DeleteBuild":{ "name":"DeleteBuild", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteBuildInput"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"InternalServiceException"}, {"shape":"InvalidRequestException"} ] }, "DeleteFleet":{ "name":"DeleteFleet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteFleetInput"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"InternalServiceException"}, {"shape":"InvalidFleetStatusException"}, {"shape":"UnauthorizedException"}, {"shape":"InvalidRequestException"} ] }, "DeleteScalingPolicy":{ "name":"DeleteScalingPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteScalingPolicyInput"}, "errors":[ {"shape":"InternalServiceException"}, {"shape":"InvalidRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"} ] }, "DescribeAlias":{ "name":"DescribeAlias", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAliasInput"}, "output":{"shape":"DescribeAliasOutput"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"InvalidRequestException"}, {"shape":"NotFoundException"}, {"shape":"InternalServiceException"} ] }, "DescribeBuild":{ "name":"DescribeBuild", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeBuildInput"}, "output":{"shape":"DescribeBuildOutput"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"InvalidRequestException"}, {"shape":"NotFoundException"}, {"shape":"InternalServiceException"} ] }, "DescribeEC2InstanceLimits":{ "name":"DescribeEC2InstanceLimits", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEC2InstanceLimitsInput"}, "output":{"shape":"DescribeEC2InstanceLimitsOutput"}, "errors":[ {"shape":"InvalidRequestException"}, {"shape":"InternalServiceException"}, {"shape":"UnauthorizedException"} ] }, "DescribeFleetAttributes":{ "name":"DescribeFleetAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeFleetAttributesInput"}, "output":{"shape":"DescribeFleetAttributesOutput"}, "errors":[ {"shape":"InternalServiceException"}, {"shape":"NotFoundException"}, {"shape":"InvalidRequestException"}, {"shape":"UnauthorizedException"} ] }, "DescribeFleetCapacity":{ "name":"DescribeFleetCapacity", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeFleetCapacityInput"}, "output":{"shape":"DescribeFleetCapacityOutput"}, "errors":[ {"shape":"InternalServiceException"}, {"shape":"NotFoundException"}, {"shape":"InvalidRequestException"}, {"shape":"UnauthorizedException"} ] }, "DescribeFleetEvents":{ "name":"DescribeFleetEvents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeFleetEventsInput"}, "output":{"shape":"DescribeFleetEventsOutput"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"InternalServiceException"}, {"shape":"UnauthorizedException"}, {"shape":"InvalidRequestException"} ] }, "DescribeFleetPortSettings":{ "name":"DescribeFleetPortSettings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeFleetPortSettingsInput"}, "output":{"shape":"DescribeFleetPortSettingsOutput"}, "errors":[ {"shape":"InternalServiceException"}, {"shape":"NotFoundException"}, {"shape":"InvalidRequestException"}, {"shape":"UnauthorizedException"} ] }, "DescribeFleetUtilization":{ "name":"DescribeFleetUtilization", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeFleetUtilizationInput"}, "output":{"shape":"DescribeFleetUtilizationOutput"}, "errors":[ {"shape":"InternalServiceException"}, {"shape":"NotFoundException"}, {"shape":"InvalidRequestException"}, {"shape":"UnauthorizedException"} ] }, "DescribeGameSessionDetails":{ "name":"DescribeGameSessionDetails", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeGameSessionDetailsInput"}, "output":{"shape":"DescribeGameSessionDetailsOutput"}, "errors":[ {"shape":"InternalServiceException"}, {"shape":"NotFoundException"}, {"shape":"InvalidRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"TerminalRoutingStrategyException"} ] }, "DescribeGameSessions":{ "name":"DescribeGameSessions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeGameSessionsInput"}, "output":{"shape":"DescribeGameSessionsOutput"}, "errors":[ {"shape":"InternalServiceException"}, {"shape":"NotFoundException"}, {"shape":"InvalidRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"TerminalRoutingStrategyException"} ] }, "DescribeInstances":{ "name":"DescribeInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInstancesInput"}, "output":{"shape":"DescribeInstancesOutput"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"InvalidRequestException"}, {"shape":"NotFoundException"}, {"shape":"InternalServiceException"} ] }, "DescribePlayerSessions":{ "name":"DescribePlayerSessions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribePlayerSessionsInput"}, "output":{"shape":"DescribePlayerSessionsOutput"}, "errors":[ {"shape":"InternalServiceException"}, {"shape":"NotFoundException"}, {"shape":"InvalidRequestException"}, {"shape":"UnauthorizedException"} ] }, "DescribeRuntimeConfiguration":{ "name":"DescribeRuntimeConfiguration", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRuntimeConfigurationInput"}, "output":{"shape":"DescribeRuntimeConfigurationOutput"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"InternalServiceException"}, {"shape":"InvalidRequestException"} ] }, "DescribeScalingPolicies":{ "name":"DescribeScalingPolicies", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeScalingPoliciesInput"}, "output":{"shape":"DescribeScalingPoliciesOutput"}, "errors":[ {"shape":"InternalServiceException"}, {"shape":"InvalidRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"} ] }, "GetGameSessionLogUrl":{ "name":"GetGameSessionLogUrl", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetGameSessionLogUrlInput"}, "output":{"shape":"GetGameSessionLogUrlOutput"}, "errors":[ {"shape":"InternalServiceException"}, {"shape":"NotFoundException"}, {"shape":"UnauthorizedException"}, {"shape":"InvalidRequestException"} ] }, "ListAliases":{ "name":"ListAliases", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListAliasesInput"}, "output":{"shape":"ListAliasesOutput"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"InvalidRequestException"}, {"shape":"InternalServiceException"} ] }, "ListBuilds":{ "name":"ListBuilds", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListBuildsInput"}, "output":{"shape":"ListBuildsOutput"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"InvalidRequestException"}, {"shape":"InternalServiceException"} ] }, "ListFleets":{ "name":"ListFleets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListFleetsInput"}, "output":{"shape":"ListFleetsOutput"}, "errors":[ {"shape":"InternalServiceException"}, {"shape":"NotFoundException"}, {"shape":"InvalidRequestException"}, {"shape":"UnauthorizedException"} ] }, "PutScalingPolicy":{ "name":"PutScalingPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutScalingPolicyInput"}, "output":{"shape":"PutScalingPolicyOutput"}, "errors":[ {"shape":"InternalServiceException"}, {"shape":"InvalidRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"} ] }, "RequestUploadCredentials":{ "name":"RequestUploadCredentials", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RequestUploadCredentialsInput"}, "output":{"shape":"RequestUploadCredentialsOutput"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"InvalidRequestException"}, {"shape":"NotFoundException"}, {"shape":"InternalServiceException"} ] }, "ResolveAlias":{ "name":"ResolveAlias", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResolveAliasInput"}, "output":{"shape":"ResolveAliasOutput"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"InvalidRequestException"}, {"shape":"NotFoundException"}, {"shape":"TerminalRoutingStrategyException"}, {"shape":"InternalServiceException"} ] }, "SearchGameSessions":{ "name":"SearchGameSessions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SearchGameSessionsInput"}, "output":{"shape":"SearchGameSessionsOutput"}, "errors":[ {"shape":"InternalServiceException"}, {"shape":"NotFoundException"}, {"shape":"InvalidRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"TerminalRoutingStrategyException"} ] }, "UpdateAlias":{ "name":"UpdateAlias", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateAliasInput"}, "output":{"shape":"UpdateAliasOutput"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"InvalidRequestException"}, {"shape":"NotFoundException"}, {"shape":"InternalServiceException"} ] }, "UpdateBuild":{ "name":"UpdateBuild", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateBuildInput"}, "output":{"shape":"UpdateBuildOutput"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"InvalidRequestException"}, {"shape":"NotFoundException"}, {"shape":"InternalServiceException"} ] }, "UpdateFleetAttributes":{ "name":"UpdateFleetAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateFleetAttributesInput"}, "output":{"shape":"UpdateFleetAttributesOutput"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"ConflictException"}, {"shape":"InvalidFleetStatusException"}, {"shape":"LimitExceededException"}, {"shape":"InternalServiceException"}, {"shape":"InvalidRequestException"}, {"shape":"UnauthorizedException"} ] }, "UpdateFleetCapacity":{ "name":"UpdateFleetCapacity", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateFleetCapacityInput"}, "output":{"shape":"UpdateFleetCapacityOutput"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"ConflictException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidFleetStatusException"}, {"shape":"InternalServiceException"}, {"shape":"InvalidRequestException"}, {"shape":"UnauthorizedException"} ] }, "UpdateFleetPortSettings":{ "name":"UpdateFleetPortSettings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateFleetPortSettingsInput"}, "output":{"shape":"UpdateFleetPortSettingsOutput"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"ConflictException"}, {"shape":"InvalidFleetStatusException"}, {"shape":"LimitExceededException"}, {"shape":"InternalServiceException"}, {"shape":"InvalidRequestException"}, {"shape":"UnauthorizedException"} ] }, "UpdateGameSession":{ "name":"UpdateGameSession", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateGameSessionInput"}, "output":{"shape":"UpdateGameSessionOutput"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"ConflictException"}, {"shape":"InternalServiceException"}, {"shape":"UnauthorizedException"}, {"shape":"InvalidGameSessionStatusException"}, {"shape":"InvalidRequestException"} ] }, "UpdateRuntimeConfiguration":{ "name":"UpdateRuntimeConfiguration", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateRuntimeConfigurationInput"}, "output":{"shape":"UpdateRuntimeConfigurationOutput"}, "errors":[ {"shape":"UnauthorizedException"}, {"shape":"NotFoundException"}, {"shape":"InternalServiceException"}, {"shape":"InvalidRequestException"}, {"shape":"InvalidFleetStatusException"} ] } }, "shapes":{ "Alias":{ "type":"structure", "members":{ "AliasId":{"shape":"AliasId"}, "Name":{"shape":"NonBlankAndLengthConstraintString"}, "Description":{"shape":"FreeText"}, "RoutingStrategy":{"shape":"RoutingStrategy"}, "CreationTime":{"shape":"Timestamp"}, "LastUpdatedTime":{"shape":"Timestamp"} } }, "AliasId":{ "type":"string", "pattern":"^alias-\\S+" }, "AliasList":{ "type":"list", "member":{"shape":"Alias"} }, "ArnStringModel":{ "type":"string", "max":256, "min":1, "pattern":"[a-zA-Z0-9:/-]+" }, "AwsCredentials":{ "type":"structure", "members":{ "AccessKeyId":{"shape":"NonEmptyString"}, "SecretAccessKey":{"shape":"NonEmptyString"}, "SessionToken":{"shape":"NonEmptyString"} }, "sensitive":true }, "Build":{ "type":"structure", "members":{ "BuildId":{"shape":"BuildId"}, "Name":{"shape":"FreeText"}, "Version":{"shape":"FreeText"}, "Status":{"shape":"BuildStatus"}, "SizeOnDisk":{"shape":"PositiveLong"}, "OperatingSystem":{"shape":"OperatingSystem"}, "CreationTime":{"shape":"Timestamp"} } }, "BuildId":{ "type":"string", "pattern":"^build-\\S+" }, "BuildList":{ "type":"list", "member":{"shape":"Build"} }, "BuildStatus":{ "type":"string", "enum":[ "INITIALIZED", "READY", "FAILED" ] }, "ComparisonOperatorType":{ "type":"string", "enum":[ "GreaterThanOrEqualToThreshold", "GreaterThanThreshold", "LessThanThreshold", "LessThanOrEqualToThreshold" ] }, "ConflictException":{ "type":"structure", "members":{ "Message":{"shape":"NonEmptyString"} }, "exception":true }, "CreateAliasInput":{ "type":"structure", "required":[ "Name", "RoutingStrategy" ], "members":{ "Name":{"shape":"NonBlankAndLengthConstraintString"}, "Description":{"shape":"NonZeroAndMaxString"}, "RoutingStrategy":{"shape":"RoutingStrategy"} } }, "CreateAliasOutput":{ "type":"structure", "members":{ "Alias":{"shape":"Alias"} } }, "CreateBuildInput":{ "type":"structure", "members":{ "Name":{"shape":"NonZeroAndMaxString"}, "Version":{"shape":"NonZeroAndMaxString"}, "StorageLocation":{"shape":"S3Location"}, "OperatingSystem":{"shape":"OperatingSystem"} } }, "CreateBuildOutput":{ "type":"structure", "members":{ "Build":{"shape":"Build"}, "UploadCredentials":{"shape":"AwsCredentials"}, "StorageLocation":{"shape":"S3Location"} } }, "CreateFleetInput":{ "type":"structure", "required":[ "Name", "BuildId", "EC2InstanceType" ], "members":{ "Name":{"shape":"NonZeroAndMaxString"}, "Description":{"shape":"NonZeroAndMaxString"}, "BuildId":{"shape":"BuildId"}, "ServerLaunchPath":{"shape":"NonZeroAndMaxString"}, "ServerLaunchParameters":{"shape":"NonZeroAndMaxString"}, "LogPaths":{"shape":"StringList"}, "EC2InstanceType":{"shape":"EC2InstanceType"}, "EC2InboundPermissions":{"shape":"IpPermissionsList"}, "NewGameSessionProtectionPolicy":{"shape":"ProtectionPolicy"}, "RuntimeConfiguration":{"shape":"RuntimeConfiguration"}, "ResourceCreationLimitPolicy":{"shape":"ResourceCreationLimitPolicy"} } }, "CreateFleetOutput":{ "type":"structure", "members":{ "FleetAttributes":{"shape":"FleetAttributes"} } }, "CreateGameSessionInput":{ "type":"structure", "required":["MaximumPlayerSessionCount"], "members":{ "FleetId":{"shape":"FleetId"}, "AliasId":{"shape":"AliasId"}, "MaximumPlayerSessionCount":{"shape":"WholeNumber"}, "Name":{"shape":"NonZeroAndMaxString"}, "GameProperties":{"shape":"GamePropertyList"}, "CreatorId":{"shape":"NonZeroAndMaxString"}, "GameSessionId":{"shape":"IdStringModel"} } }, "CreateGameSessionOutput":{ "type":"structure", "members":{ "GameSession":{"shape":"GameSession"} } }, "CreatePlayerSessionInput":{ "type":"structure", "required":[ "GameSessionId", "PlayerId" ], "members":{ "GameSessionId":{"shape":"ArnStringModel"}, "PlayerId":{"shape":"NonZeroAndMaxString"} } }, "CreatePlayerSessionOutput":{ "type":"structure", "members":{ "PlayerSession":{"shape":"PlayerSession"} } }, "CreatePlayerSessionsInput":{ "type":"structure", "required":[ "GameSessionId", "PlayerIds" ], "members":{ "GameSessionId":{"shape":"ArnStringModel"}, "PlayerIds":{"shape":"PlayerIdList"} } }, "CreatePlayerSessionsOutput":{ "type":"structure", "members":{ "PlayerSessions":{"shape":"PlayerSessionList"} } }, "DeleteAliasInput":{ "type":"structure", "required":["AliasId"], "members":{ "AliasId":{"shape":"AliasId"} } }, "DeleteBuildInput":{ "type":"structure", "required":["BuildId"], "members":{ "BuildId":{"shape":"BuildId"} } }, "DeleteFleetInput":{ "type":"structure", "required":["FleetId"], "members":{ "FleetId":{"shape":"FleetId"} } }, "DeleteScalingPolicyInput":{ "type":"structure", "required":[ "Name", "FleetId" ], "members":{ "Name":{"shape":"NonZeroAndMaxString"}, "FleetId":{"shape":"FleetId"} } }, "DescribeAliasInput":{ "type":"structure", "required":["AliasId"], "members":{ "AliasId":{"shape":"AliasId"} } }, "DescribeAliasOutput":{ "type":"structure", "members":{ "Alias":{"shape":"Alias"} } }, "DescribeBuildInput":{ "type":"structure", "required":["BuildId"], "members":{ "BuildId":{"shape":"BuildId"} } }, "DescribeBuildOutput":{ "type":"structure", "members":{ "Build":{"shape":"Build"} } }, "DescribeEC2InstanceLimitsInput":{ "type":"structure", "members":{ "EC2InstanceType":{"shape":"EC2InstanceType"} } }, "DescribeEC2InstanceLimitsOutput":{ "type":"structure", "members":{ "EC2InstanceLimits":{"shape":"EC2InstanceLimitList"} } }, "DescribeFleetAttributesInput":{ "type":"structure", "members":{ "FleetIds":{"shape":"FleetIdList"}, "Limit":{"shape":"PositiveInteger"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "DescribeFleetAttributesOutput":{ "type":"structure", "members":{ "FleetAttributes":{"shape":"FleetAttributesList"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "DescribeFleetCapacityInput":{ "type":"structure", "members":{ "FleetIds":{"shape":"FleetIdList"}, "Limit":{"shape":"PositiveInteger"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "DescribeFleetCapacityOutput":{ "type":"structure", "members":{ "FleetCapacity":{"shape":"FleetCapacityList"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "DescribeFleetEventsInput":{ "type":"structure", "required":["FleetId"], "members":{ "FleetId":{"shape":"FleetId"}, "StartTime":{"shape":"Timestamp"}, "EndTime":{"shape":"Timestamp"}, "Limit":{"shape":"PositiveInteger"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "DescribeFleetEventsOutput":{ "type":"structure", "members":{ "Events":{"shape":"EventList"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "DescribeFleetPortSettingsInput":{ "type":"structure", "required":["FleetId"], "members":{ "FleetId":{"shape":"FleetId"} } }, "DescribeFleetPortSettingsOutput":{ "type":"structure", "members":{ "InboundPermissions":{"shape":"IpPermissionsList"} } }, "DescribeFleetUtilizationInput":{ "type":"structure", "members":{ "FleetIds":{"shape":"FleetIdList"}, "Limit":{"shape":"PositiveInteger"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "DescribeFleetUtilizationOutput":{ "type":"structure", "members":{ "FleetUtilization":{"shape":"FleetUtilizationList"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "DescribeGameSessionDetailsInput":{ "type":"structure", "members":{ "FleetId":{"shape":"FleetId"}, "GameSessionId":{"shape":"ArnStringModel"}, "AliasId":{"shape":"AliasId"}, "StatusFilter":{"shape":"NonZeroAndMaxString"}, "Limit":{"shape":"PositiveInteger"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "DescribeGameSessionDetailsOutput":{ "type":"structure", "members":{ "GameSessionDetails":{"shape":"GameSessionDetailList"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "DescribeGameSessionsInput":{ "type":"structure", "members":{ "FleetId":{"shape":"FleetId"}, "GameSessionId":{"shape":"ArnStringModel"}, "AliasId":{"shape":"AliasId"}, "StatusFilter":{"shape":"NonZeroAndMaxString"}, "Limit":{"shape":"PositiveInteger"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "DescribeGameSessionsOutput":{ "type":"structure", "members":{ "GameSessions":{"shape":"GameSessionList"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "DescribeInstancesInput":{ "type":"structure", "required":["FleetId"], "members":{ "FleetId":{"shape":"FleetId"}, "InstanceId":{"shape":"InstanceId"}, "Limit":{"shape":"PositiveInteger"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "DescribeInstancesOutput":{ "type":"structure", "members":{ "Instances":{"shape":"InstanceList"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "DescribePlayerSessionsInput":{ "type":"structure", "members":{ "GameSessionId":{"shape":"ArnStringModel"}, "PlayerId":{"shape":"NonZeroAndMaxString"}, "PlayerSessionId":{"shape":"PlayerSessionId"}, "PlayerSessionStatusFilter":{"shape":"NonZeroAndMaxString"}, "Limit":{"shape":"PositiveInteger"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "DescribePlayerSessionsOutput":{ "type":"structure", "members":{ "PlayerSessions":{"shape":"PlayerSessionList"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "DescribeRuntimeConfigurationInput":{ "type":"structure", "required":["FleetId"], "members":{ "FleetId":{"shape":"FleetId"} } }, "DescribeRuntimeConfigurationOutput":{ "type":"structure", "members":{ "RuntimeConfiguration":{"shape":"RuntimeConfiguration"} } }, "DescribeScalingPoliciesInput":{ "type":"structure", "required":["FleetId"], "members":{ "FleetId":{"shape":"FleetId"}, "StatusFilter":{"shape":"ScalingStatusType"}, "Limit":{"shape":"PositiveInteger"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "DescribeScalingPoliciesOutput":{ "type":"structure", "members":{ "ScalingPolicies":{"shape":"ScalingPolicyList"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "Double":{"type":"double"}, "EC2InstanceCounts":{ "type":"structure", "members":{ "DESIRED":{"shape":"WholeNumber"}, "MINIMUM":{"shape":"WholeNumber"}, "MAXIMUM":{"shape":"WholeNumber"}, "PENDING":{"shape":"WholeNumber"}, "ACTIVE":{"shape":"WholeNumber"}, "IDLE":{"shape":"WholeNumber"}, "TERMINATING":{"shape":"WholeNumber"} } }, "EC2InstanceLimit":{ "type":"structure", "members":{ "EC2InstanceType":{"shape":"EC2InstanceType"}, "CurrentInstances":{"shape":"WholeNumber"}, "InstanceLimit":{"shape":"WholeNumber"} } }, "EC2InstanceLimitList":{ "type":"list", "member":{"shape":"EC2InstanceLimit"} }, "EC2InstanceType":{ "type":"string", "enum":[ "t2.micro", "t2.small", "t2.medium", "t2.large", "c3.large", "c3.xlarge", "c3.2xlarge", "c3.4xlarge", "c3.8xlarge", "c4.large", "c4.xlarge", "c4.2xlarge", "c4.4xlarge", "c4.8xlarge", "r3.large", "r3.xlarge", "r3.2xlarge", "r3.4xlarge", "r3.8xlarge", "m3.medium", "m3.large", "m3.xlarge", "m3.2xlarge", "m4.large", "m4.xlarge", "m4.2xlarge", "m4.4xlarge", "m4.10xlarge" ] }, "Event":{ "type":"structure", "members":{ "EventId":{"shape":"NonZeroAndMaxString"}, "ResourceId":{"shape":"NonZeroAndMaxString"}, "EventCode":{"shape":"EventCode"}, "Message":{"shape":"NonEmptyString"}, "EventTime":{"shape":"Timestamp"} } }, "EventCode":{ "type":"string", "enum":[ "GENERIC_EVENT", "FLEET_CREATED", "FLEET_DELETED", "FLEET_SCALING_EVENT", "FLEET_STATE_DOWNLOADING", "FLEET_STATE_VALIDATING", "FLEET_STATE_BUILDING", "FLEET_STATE_ACTIVATING", "FLEET_STATE_ACTIVE", "FLEET_STATE_ERROR", "FLEET_INITIALIZATION_FAILED", "FLEET_BINARY_DOWNLOAD_FAILED", "FLEET_VALIDATION_LAUNCH_PATH_NOT_FOUND", "FLEET_VALIDATION_EXECUTABLE_RUNTIME_FAILURE", "FLEET_VALIDATION_TIMED_OUT", "FLEET_ACTIVATION_FAILED", "FLEET_ACTIVATION_FAILED_NO_INSTANCES", "FLEET_NEW_GAME_SESSION_PROTECTION_POLICY_UPDATED" ] }, "EventList":{ "type":"list", "member":{"shape":"Event"} }, "FleetAttributes":{ "type":"structure", "members":{ "FleetId":{"shape":"FleetId"}, "Description":{"shape":"NonZeroAndMaxString"}, "Name":{"shape":"NonZeroAndMaxString"}, "CreationTime":{"shape":"Timestamp"}, "TerminationTime":{"shape":"Timestamp"}, "Status":{"shape":"FleetStatus"}, "BuildId":{"shape":"BuildId"}, "ServerLaunchPath":{"shape":"NonZeroAndMaxString"}, "ServerLaunchParameters":{"shape":"NonZeroAndMaxString"}, "LogPaths":{"shape":"StringList"}, "NewGameSessionProtectionPolicy":{"shape":"ProtectionPolicy"}, "OperatingSystem":{"shape":"OperatingSystem"}, "ResourceCreationLimitPolicy":{"shape":"ResourceCreationLimitPolicy"} } }, "FleetAttributesList":{ "type":"list", "member":{"shape":"FleetAttributes"} }, "FleetCapacity":{ "type":"structure", "members":{ "FleetId":{"shape":"FleetId"}, "InstanceType":{"shape":"EC2InstanceType"}, "InstanceCounts":{"shape":"EC2InstanceCounts"} } }, "FleetCapacityExceededException":{ "type":"structure", "members":{ "Message":{"shape":"NonEmptyString"} }, "exception":true }, "FleetCapacityList":{ "type":"list", "member":{"shape":"FleetCapacity"} }, "FleetId":{ "type":"string", "pattern":"^fleet-\\S+" }, "FleetIdList":{ "type":"list", "member":{"shape":"FleetId"}, "min":1 }, "FleetStatus":{ "type":"string", "enum":[ "NEW", "DOWNLOADING", "VALIDATING", "BUILDING", "ACTIVATING", "ACTIVE", "DELETING", "ERROR", "TERMINATED" ] }, "FleetUtilization":{ "type":"structure", "members":{ "FleetId":{"shape":"FleetId"}, "ActiveServerProcessCount":{"shape":"WholeNumber"}, "ActiveGameSessionCount":{"shape":"WholeNumber"}, "CurrentPlayerSessionCount":{"shape":"WholeNumber"}, "MaximumPlayerSessionCount":{"shape":"WholeNumber"} } }, "FleetUtilizationList":{ "type":"list", "member":{"shape":"FleetUtilization"} }, "FreeText":{"type":"string"}, "GameProperty":{ "type":"structure", "required":[ "Key", "Value" ], "members":{ "Key":{"shape":"GamePropertyKey"}, "Value":{"shape":"GamePropertyValue"} } }, "GamePropertyKey":{ "type":"string", "max":32 }, "GamePropertyList":{ "type":"list", "member":{"shape":"GameProperty"}, "max":16 }, "GamePropertyValue":{ "type":"string", "max":96 }, "GameSession":{ "type":"structure", "members":{ "GameSessionId":{"shape":"NonZeroAndMaxString"}, "Name":{"shape":"NonZeroAndMaxString"}, "FleetId":{"shape":"FleetId"}, "CreationTime":{"shape":"Timestamp"}, "TerminationTime":{"shape":"Timestamp"}, "CurrentPlayerSessionCount":{"shape":"WholeNumber"}, "MaximumPlayerSessionCount":{"shape":"WholeNumber"}, "Status":{"shape":"GameSessionStatus"}, "GameProperties":{"shape":"GamePropertyList"}, "IpAddress":{"shape":"IpAddress"}, "Port":{"shape":"PortNumber"}, "PlayerSessionCreationPolicy":{"shape":"PlayerSessionCreationPolicy"}, "CreatorId":{"shape":"NonZeroAndMaxString"} } }, "GameSessionDetail":{ "type":"structure", "members":{ "GameSession":{"shape":"GameSession"}, "ProtectionPolicy":{"shape":"ProtectionPolicy"} } }, "GameSessionDetailList":{ "type":"list", "member":{"shape":"GameSessionDetail"} }, "GameSessionFullException":{ "type":"structure", "members":{ "Message":{"shape":"NonEmptyString"} }, "exception":true }, "GameSessionList":{ "type":"list", "member":{"shape":"GameSession"} }, "GameSessionStatus":{ "type":"string", "enum":[ "ACTIVE", "ACTIVATING", "TERMINATED", "TERMINATING", "ERROR" ] }, "GetGameSessionLogUrlInput":{ "type":"structure", "required":["GameSessionId"], "members":{ "GameSessionId":{"shape":"ArnStringModel"} } }, "GetGameSessionLogUrlOutput":{ "type":"structure", "members":{ "PreSignedUrl":{"shape":"NonZeroAndMaxString"} } }, "IdStringModel":{ "type":"string", "max":48, "min":1, "pattern":"[a-zA-Z0-9-]+" }, "IdempotentParameterMismatchException":{ "type":"structure", "members":{ "Message":{"shape":"NonEmptyString"} }, "exception":true }, "Instance":{ "type":"structure", "members":{ "FleetId":{"shape":"FleetId"}, "InstanceId":{"shape":"InstanceId"}, "IpAddress":{"shape":"IpAddress"}, "OperatingSystem":{"shape":"OperatingSystem"}, "Type":{"shape":"EC2InstanceType"}, "Status":{"shape":"InstanceStatus"}, "CreationTime":{"shape":"Timestamp"} } }, "InstanceId":{ "type":"string", "pattern":"[a-zA-Z0-9\\.-]+" }, "InstanceList":{ "type":"list", "member":{"shape":"Instance"} }, "InstanceStatus":{ "type":"string", "enum":[ "PENDING", "ACTIVE", "TERMINATING" ] }, "Integer":{"type":"integer"}, "InternalServiceException":{ "type":"structure", "members":{ "Message":{"shape":"NonEmptyString"} }, "exception":true, "fault":true }, "InvalidFleetStatusException":{ "type":"structure", "members":{ "Message":{"shape":"NonEmptyString"} }, "exception":true }, "InvalidGameSessionStatusException":{ "type":"structure", "members":{ "Message":{"shape":"NonEmptyString"} }, "exception":true }, "InvalidRequestException":{ "type":"structure", "members":{ "Message":{"shape":"NonEmptyString"} }, "exception":true }, "IpAddress":{"type":"string"}, "IpPermission":{ "type":"structure", "required":[ "FromPort", "ToPort", "IpRange", "Protocol" ], "members":{ "FromPort":{"shape":"PortNumber"}, "ToPort":{"shape":"PortNumber"}, "IpRange":{"shape":"NonBlankString"}, "Protocol":{"shape":"IpProtocol"} } }, "IpPermissionsList":{ "type":"list", "member":{"shape":"IpPermission"}, "max":50 }, "IpProtocol":{ "type":"string", "enum":[ "TCP", "UDP" ] }, "LimitExceededException":{ "type":"structure", "members":{ "Message":{"shape":"NonEmptyString"} }, "exception":true }, "ListAliasesInput":{ "type":"structure", "members":{ "RoutingStrategyType":{"shape":"RoutingStrategyType"}, "Name":{"shape":"NonEmptyString"}, "Limit":{"shape":"PositiveInteger"}, "NextToken":{"shape":"NonEmptyString"} } }, "ListAliasesOutput":{ "type":"structure", "members":{ "Aliases":{"shape":"AliasList"}, "NextToken":{"shape":"NonEmptyString"} } }, "ListBuildsInput":{ "type":"structure", "members":{ "Status":{"shape":"BuildStatus"}, "Limit":{"shape":"PositiveInteger"}, "NextToken":{"shape":"NonEmptyString"} } }, "ListBuildsOutput":{ "type":"structure", "members":{ "Builds":{"shape":"BuildList"}, "NextToken":{"shape":"NonEmptyString"} } }, "ListFleetsInput":{ "type":"structure", "members":{ "BuildId":{"shape":"BuildId"}, "Limit":{"shape":"PositiveInteger"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "ListFleetsOutput":{ "type":"structure", "members":{ "FleetIds":{"shape":"FleetIdList"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "MetricName":{ "type":"string", "enum":[ "ActivatingGameSessions", "ActiveGameSessions", "ActiveInstances", "AvailablePlayerSessions", "CurrentPlayerSessions", "IdleInstances" ] }, "NonBlankAndLengthConstraintString":{ "type":"string", "max":1024, "min":1, "pattern":".*\\S.*" }, "NonBlankString":{ "type":"string", "pattern":"[^\\s]+" }, "NonEmptyString":{ "type":"string", "min":1 }, "NonZeroAndMaxString":{ "type":"string", "max":1024, "min":1 }, "NotFoundException":{ "type":"structure", "members":{ "Message":{"shape":"NonEmptyString"} }, "exception":true }, "OperatingSystem":{ "type":"string", "enum":[ "WINDOWS_2012", "AMAZON_LINUX" ] }, "PlayerIdList":{ "type":"list", "member":{"shape":"NonZeroAndMaxString"}, "max":25, "min":1 }, "PlayerSession":{ "type":"structure", "members":{ "PlayerSessionId":{"shape":"PlayerSessionId"}, "PlayerId":{"shape":"NonZeroAndMaxString"}, "GameSessionId":{"shape":"NonZeroAndMaxString"}, "FleetId":{"shape":"FleetId"}, "CreationTime":{"shape":"Timestamp"}, "TerminationTime":{"shape":"Timestamp"}, "Status":{"shape":"PlayerSessionStatus"}, "IpAddress":{"shape":"IpAddress"}, "Port":{"shape":"PortNumber"} } }, "PlayerSessionCreationPolicy":{ "type":"string", "enum":[ "ACCEPT_ALL", "DENY_ALL" ] }, "PlayerSessionId":{ "type":"string", "pattern":"^psess-\\S+" }, "PlayerSessionList":{ "type":"list", "member":{"shape":"PlayerSession"} }, "PlayerSessionStatus":{ "type":"string", "enum":[ "RESERVED", "ACTIVE", "COMPLETED", "TIMEDOUT" ] }, "PortNumber":{ "type":"integer", "max":60000, "min":1 }, "PositiveInteger":{ "type":"integer", "min":1 }, "PositiveLong":{ "type":"long", "min":1 }, "ProtectionPolicy":{ "type":"string", "enum":[ "NoProtection", "FullProtection" ] }, "PutScalingPolicyInput":{ "type":"structure", "required":[ "Name", "FleetId", "ScalingAdjustment", "ScalingAdjustmentType", "Threshold", "ComparisonOperator", "EvaluationPeriods", "MetricName" ], "members":{ "Name":{"shape":"NonZeroAndMaxString"}, "FleetId":{"shape":"FleetId"}, "ScalingAdjustment":{"shape":"Integer"}, "ScalingAdjustmentType":{"shape":"ScalingAdjustmentType"}, "Threshold":{"shape":"Double"}, "ComparisonOperator":{"shape":"ComparisonOperatorType"}, "EvaluationPeriods":{"shape":"PositiveInteger"}, "MetricName":{"shape":"MetricName"} } }, "PutScalingPolicyOutput":{ "type":"structure", "members":{ "Name":{"shape":"NonZeroAndMaxString"} } }, "RequestUploadCredentialsInput":{ "type":"structure", "required":["BuildId"], "members":{ "BuildId":{"shape":"BuildId"} } }, "RequestUploadCredentialsOutput":{ "type":"structure", "members":{ "UploadCredentials":{"shape":"AwsCredentials"}, "StorageLocation":{"shape":"S3Location"} } }, "ResolveAliasInput":{ "type":"structure", "required":["AliasId"], "members":{ "AliasId":{"shape":"AliasId"} } }, "ResolveAliasOutput":{ "type":"structure", "members":{ "FleetId":{"shape":"FleetId"} } }, "ResourceCreationLimitPolicy":{ "type":"structure", "members":{ "NewGameSessionsPerCreator":{"shape":"WholeNumber"}, "PolicyPeriodInMinutes":{"shape":"WholeNumber"} } }, "RoutingStrategy":{ "type":"structure", "members":{ "Type":{"shape":"RoutingStrategyType"}, "FleetId":{"shape":"FleetId"}, "Message":{"shape":"FreeText"} } }, "RoutingStrategyType":{ "type":"string", "enum":[ "SIMPLE", "TERMINAL" ] }, "RuntimeConfiguration":{ "type":"structure", "members":{ "ServerProcesses":{"shape":"ServerProcessList"} } }, "S3Location":{ "type":"structure", "members":{ "Bucket":{"shape":"NonEmptyString"}, "Key":{"shape":"NonEmptyString"}, "RoleArn":{"shape":"NonEmptyString"} } }, "ScalingAdjustmentType":{ "type":"string", "enum":[ "ChangeInCapacity", "ExactCapacity", "PercentChangeInCapacity" ] }, "ScalingPolicy":{ "type":"structure", "members":{ "FleetId":{"shape":"FleetId"}, "Name":{"shape":"NonZeroAndMaxString"}, "Status":{"shape":"ScalingStatusType"}, "ScalingAdjustment":{"shape":"Integer"}, "ScalingAdjustmentType":{"shape":"ScalingAdjustmentType"}, "ComparisonOperator":{"shape":"ComparisonOperatorType"}, "Threshold":{"shape":"Double"}, "EvaluationPeriods":{"shape":"PositiveInteger"}, "MetricName":{"shape":"MetricName"} } }, "ScalingPolicyList":{ "type":"list", "member":{"shape":"ScalingPolicy"} }, "ScalingStatusType":{ "type":"string", "enum":[ "ACTIVE", "UPDATE_REQUESTED", "UPDATING", "DELETE_REQUESTED", "DELETING", "DELETED", "ERROR" ] }, "SearchGameSessionsInput":{ "type":"structure", "members":{ "FleetId":{"shape":"FleetId"}, "AliasId":{"shape":"AliasId"}, "FilterExpression":{"shape":"NonZeroAndMaxString"}, "SortExpression":{"shape":"NonZeroAndMaxString"}, "Limit":{"shape":"PositiveInteger"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "SearchGameSessionsOutput":{ "type":"structure", "members":{ "GameSessions":{"shape":"GameSessionList"}, "NextToken":{"shape":"NonZeroAndMaxString"} } }, "ServerProcess":{ "type":"structure", "required":[ "LaunchPath", "ConcurrentExecutions" ], "members":{ "LaunchPath":{"shape":"NonZeroAndMaxString"}, "Parameters":{"shape":"NonZeroAndMaxString"}, "ConcurrentExecutions":{"shape":"PositiveInteger"} } }, "ServerProcessList":{ "type":"list", "member":{"shape":"ServerProcess"}, "max":50, "min":1 }, "StringList":{ "type":"list", "member":{"shape":"NonZeroAndMaxString"} }, "TerminalRoutingStrategyException":{ "type":"structure", "members":{ "Message":{"shape":"NonEmptyString"} }, "exception":true }, "Timestamp":{"type":"timestamp"}, "UnauthorizedException":{ "type":"structure", "members":{ "Message":{"shape":"NonEmptyString"} }, "exception":true }, "UpdateAliasInput":{ "type":"structure", "required":["AliasId"], "members":{ "AliasId":{"shape":"AliasId"}, "Name":{"shape":"NonBlankAndLengthConstraintString"}, "Description":{"shape":"NonZeroAndMaxString"}, "RoutingStrategy":{"shape":"RoutingStrategy"} } }, "UpdateAliasOutput":{ "type":"structure", "members":{ "Alias":{"shape":"Alias"} } }, "UpdateBuildInput":{ "type":"structure", "required":["BuildId"], "members":{ "BuildId":{"shape":"BuildId"}, "Name":{"shape":"NonZeroAndMaxString"}, "Version":{"shape":"NonZeroAndMaxString"} } }, "UpdateBuildOutput":{ "type":"structure", "members":{ "Build":{"shape":"Build"} } }, "UpdateFleetAttributesInput":{ "type":"structure", "required":["FleetId"], "members":{ "FleetId":{"shape":"FleetId"}, "Name":{"shape":"NonZeroAndMaxString"}, "Description":{"shape":"NonZeroAndMaxString"}, "NewGameSessionProtectionPolicy":{"shape":"ProtectionPolicy"}, "ResourceCreationLimitPolicy":{"shape":"ResourceCreationLimitPolicy"} } }, "UpdateFleetAttributesOutput":{ "type":"structure", "members":{ "FleetId":{"shape":"FleetId"} } }, "UpdateFleetCapacityInput":{ "type":"structure", "required":["FleetId"], "members":{ "FleetId":{"shape":"FleetId"}, "DesiredInstances":{"shape":"WholeNumber"}, "MinSize":{"shape":"WholeNumber"}, "MaxSize":{"shape":"WholeNumber"} } }, "UpdateFleetCapacityOutput":{ "type":"structure", "members":{ "FleetId":{"shape":"FleetId"} } }, "UpdateFleetPortSettingsInput":{ "type":"structure", "required":["FleetId"], "members":{ "FleetId":{"shape":"FleetId"}, "InboundPermissionAuthorizations":{"shape":"IpPermissionsList"}, "InboundPermissionRevocations":{"shape":"IpPermissionsList"} } }, "UpdateFleetPortSettingsOutput":{ "type":"structure", "members":{ "FleetId":{"shape":"FleetId"} } }, "UpdateGameSessionInput":{ "type":"structure", "required":["GameSessionId"], "members":{ "GameSessionId":{"shape":"ArnStringModel"}, "MaximumPlayerSessionCount":{"shape":"WholeNumber"}, "Name":{"shape":"NonZeroAndMaxString"}, "PlayerSessionCreationPolicy":{"shape":"PlayerSessionCreationPolicy"}, "ProtectionPolicy":{"shape":"ProtectionPolicy"} } }, "UpdateGameSessionOutput":{ "type":"structure", "members":{ "GameSession":{"shape":"GameSession"} } }, "UpdateRuntimeConfigurationInput":{ "type":"structure", "required":[ "FleetId", "RuntimeConfiguration" ], "members":{ "FleetId":{"shape":"FleetId"}, "RuntimeConfiguration":{"shape":"RuntimeConfiguration"} } }, "UpdateRuntimeConfigurationOutput":{ "type":"structure", "members":{ "RuntimeConfiguration":{"shape":"RuntimeConfiguration"} } }, "WholeNumber":{ "type":"integer", "min":0 } } } aws-sdk-go-1.4.22/models/apis/gamelift/2015-10-01/docs-2.json000066400000000000000000003522231300374646400226060ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon GameLift Service

        Welcome to the Amazon GameLift API Reference. Amazon GameLift is a managed Amazon Web Services (AWS) service for developers who need a scalable, server-based solution for multiplayer games. Amazon GameLift provides setup and deployment of game servers, and handles infrastructure scaling and session management.

        This reference describes the low-level service API for GameLift. You can call this API directly or use the AWS SDK for your preferred language. The AWS SDK includes a set of high-level GameLift actions multiplayer game sessions. Alternatively, you can use the AWS command-line interface (CLI) tool, which includes commands for GameLift. For administrative actions, you can also use the Amazon GameLift console.

        More Resources

        Manage Games and Players Through GameLift

        Call these actions from your game clients and/or services to create and manage multiplayer game sessions and player sessions.

        Set Up and Manage Game Servers

        Use these administrative actions to configure GameLift to host your game servers. When setting up GameLift, you will need to (1) configure a build for your game and upload build files, and (2) set up one or more fleets to host game sessions. Once you've created and activated a fleet, you can assign aliases to it, scale capacity, track performance and utilization, etc.

        To view changes to the API, see the GameLift Document History page.

        ", "operations": { "CreateAlias": "

        Creates an alias for a fleet. You can use an alias to anonymize your fleet by referencing an alias instead of a specific fleet when you create game sessions. Amazon GameLift supports two types of routing strategies for aliases: simple and terminal. Use a simple alias to point to an active fleet. Use a terminal alias to display a message to incoming traffic instead of routing players to an active fleet. This option is useful when a game server is no longer supported but you want to provide better messaging than a standard 404 error.

        To create a fleet alias, specify an alias name, routing strategy, and optional description. If successful, a new alias record is returned, including an alias ID, which you can reference when creating a game session. To reassign the alias to another fleet ID, call UpdateAlias.

        ", "CreateBuild": "

        Initializes a new build record and generates information required to upload a game build to Amazon GameLift. Once the build record has been created and its status is INITIALIZED, you can upload your game build.

        Do not use this API action unless you are using your own Amazon Simple Storage Service (Amazon S3) client and need to manually upload your build files. Instead, to create a build, use the CLI command upload-build, which creates a new build record and uploads the build files in one step. (See the Amazon GameLift Developer Guide help on packaging and uploading your build.)

        To create a new build, identify the operating system of the game server binaries. All game servers in a build must use the same operating system. Optionally, specify a build name and version; this metadata is stored with other properties in the build record and is displayed in the GameLift console (it is not visible to players). If successful, this action returns the newly created build record along with the Amazon S3 storage location and AWS account credentials. Use the location and credentials to upload your game build.

        ", "CreateFleet": "

        Creates a new fleet to run your game servers. A fleet is a set of Amazon Elastic Compute Cloud (Amazon EC2) instances, each of which can run multiple server processes to host game sessions. You configure a fleet to create instances with certain hardware specifications (see Amazon EC2 Instance Types for more information), and deploy a specified game build to each instance. A newly created fleet passes through several statuses; once it reaches the ACTIVE status, it can begin hosting game sessions.

        To create a new fleet, provide a fleet name, an EC2 instance type, and a build ID of the game build to deploy. You can also configure the new fleet with the following settings: (1) a runtime configuration describing what server processes to run on each instance in the fleet (required to create fleet), (2) access permissions for inbound traffic, (3) fleet-wide game session protection, and (4) the location of default log files for GameLift to upload and store.

        If the CreateFleet call is successful, Amazon GameLift performs the following tasks:

        • Creates a fleet record and sets the status to NEW (followed by other statuses as the fleet is activated).

        • Sets the fleet's capacity to 1 \"desired\", which causes GameLift to start one new EC2 instance.

        • Starts launching server processes on the instance. If the fleet is configured to run multiple server processes per instance, GameLift staggers each launch by a few seconds.

        • Begins writing events to the fleet event log, which can be accessed in the GameLift console.

        • Sets the fleet's status to ACTIVE once one server process in the fleet is ready to host a game session.

        After a fleet is created, use the following actions to change fleet properties and configuration:

        • UpdateFleetAttributes -- Update fleet metadata, including name and description.

        • UpdateFleetCapacity -- Increase or decrease the number of instances you want the fleet to maintain.

        • UpdateFleetPortSettings -- Change the IP address and port ranges that allow access to incoming traffic.

        • UpdateRuntimeConfiguration -- Change how server processes are launched in the fleet, including launch path, launch parameters, and the number of concurrent processes.

        ", "CreateGameSession": "

        Creates a multiplayer game session for players. This action creates a game session record and assigns the new session to an instance in the specified fleet, which initializes a new server process to host the game session. A fleet must be in an ACTIVE status before a game session can be created in it.

        To create a game session, specify either a fleet ID or an alias ID and indicate the maximum number of players the game session allows. You can also provide a name and a set of properties for your game (optional). If successful, a GameSession object is returned containing session properties, including an IP address. By default, newly created game sessions are set to accept adding any new players to the game session. Use UpdateGameSession to change the creation policy.

        ", "CreatePlayerSession": "

        Adds a player to a game session and creates a player session record. A game session must be in an ACTIVE status, have a creation policy of ALLOW_ALL, and have an open player slot before players can be added to the session.

        To create a player session, specify a game session ID and player ID. If successful, the player is added to the game session and a new PlayerSession object is returned.

        ", "CreatePlayerSessions": "

        Adds a group of players to a game session. Similar to CreatePlayerSession, this action allows you to add multiple players in a single call, which is useful for games that provide party and/or matchmaking features. A game session must be in an ACTIVE status, have a creation policy of ALLOW_ALL, and have an open player slot before players can be added to the session.

        To create player sessions, specify a game session ID and a list of player IDs. If successful, the players are added to the game session and a set of new PlayerSession objects is returned.

        ", "DeleteAlias": "

        Deletes an alias. This action removes all record of the alias; game clients attempting to access a server process using the deleted alias receive an error. To delete an alias, specify the alias ID to be deleted.

        ", "DeleteBuild": "

        Deletes a build. This action permanently deletes the build record and any uploaded build files.

        To delete a build, specify its ID. Deleting a build does not affect the status of any active fleets using the build, but you can no longer create new fleets with the deleted build.

        ", "DeleteFleet": "

        Deletes everything related to a fleet. Before deleting a fleet, you must set the fleet's desired capacity to zero. See UpdateFleetCapacity.

        This action removes the fleet's resources and the fleet record. Once a fleet is deleted, you can no longer use that fleet.

        ", "DeleteScalingPolicy": "

        Deletes a fleet scaling policy. This action means that the policy is no longer in force and removes all record of it. To delete a scaling policy, specify both the scaling policy name and the fleet ID it is associated with.

        ", "DescribeAlias": "

        Retrieves properties for a specified alias. To get the alias, specify an alias ID. If successful, an Alias object is returned.

        ", "DescribeBuild": "

        Retrieves properties for a build. To get a build record, specify a build ID. If successful, an object containing the build properties is returned.

        ", "DescribeEC2InstanceLimits": "

        Retrieves the following information for the specified EC2 instance type:

        • maximum number of instances allowed per AWS account (service limit)

        • current usage level for the AWS account

        Service limits vary depending on region. Available regions for GameLift can be found in the AWS Management Console for GameLift (see the drop-down list in the upper right corner).

        ", "DescribeFleetAttributes": "

        Retrieves fleet properties, including metadata, status, and configuration, for one or more fleets. You can request attributes for all fleets, or specify a list of one or more fleet IDs. When requesting multiple fleets, use the pagination parameters to retrieve results as a set of sequential pages. If successful, a FleetAttributes object is returned for each requested fleet ID. When specifying a list of fleet IDs, attribute objects are returned only for fleets that currently exist.

        Some API actions may limit the number of fleet IDs allowed in one request. If a request exceeds this limit, the request fails and the error message includes the maximum allowed.

        ", "DescribeFleetCapacity": "

        Retrieves the current status of fleet capacity for one or more fleets. This information includes the number of instances that have been requested for the fleet and the number currently active. You can request capacity for all fleets, or specify a list of one or more fleet IDs. When requesting multiple fleets, use the pagination parameters to retrieve results as a set of sequential pages. If successful, a FleetCapacity object is returned for each requested fleet ID. When specifying a list of fleet IDs, attribute objects are returned only for fleets that currently exist.

        Some API actions may limit the number of fleet IDs allowed in one request. If a request exceeds this limit, the request fails and the error message includes the maximum allowed.

        ", "DescribeFleetEvents": "

        Retrieves entries from the specified fleet's event log. You can specify a time range to limit the result set. Use the pagination parameters to retrieve results as a set of sequential pages. If successful, a collection of event log entries matching the request are returned.

        ", "DescribeFleetPortSettings": "

        Retrieves the inbound connection permissions for a fleet. Connection permissions include a range of IP addresses and port settings that incoming traffic can use to access server processes in the fleet. To get a fleet's inbound connection permissions, specify a fleet ID. If successful, a collection of IpPermission objects is returned for the requested fleet ID. If the requested fleet has been deleted, the result set is empty.

        ", "DescribeFleetUtilization": "

        Retrieves utilization statistics for one or more fleets. You can request utilization data for all fleets, or specify a list of one or more fleet IDs. When requesting multiple fleets, use the pagination parameters to retrieve results as a set of sequential pages. If successful, a FleetUtilization object is returned for each requested fleet ID. When specifying a list of fleet IDs, utilization objects are returned only for fleets that currently exist.

        Some API actions may limit the number of fleet IDs allowed in one request. If a request exceeds this limit, the request fails and the error message includes the maximum allowed.

        ", "DescribeGameSessionDetails": "

        Retrieves properties, including the protection policy in force, for one or more game sessions. This action can be used in several ways: (1) provide a GameSessionId to request details for a specific game session; (2) provide either a FleetId or an AliasId to request properties for all game sessions running on a fleet.

        To get game session record(s), specify just one of the following: game session ID, fleet ID, or alias ID. You can filter this request by game session status. Use the pagination parameters to retrieve results as a set of sequential pages. If successful, a GameSessionDetail object is returned for each session matching the request.

        ", "DescribeGameSessions": "

        Retrieves a set of one or more game sessions and properties. This action can be used in several ways: (1) provide a GameSessionId to request properties for a specific game session; (2) provide a FleetId or an AliasId to request properties for all game sessions running on a fleet. You can also use SearchGameSessions, which allows you to retrieve all game sessions or filter on certain criteria, but only returns game sessions with a status of ACTIVE. If you need to retrieve the protection policy for each game session, use DescribeGameSessionDetails.

        To get game session record(s), specify just one of the following: game session ID, fleet ID, or alias ID. You can filter this request by game session status. Use the pagination parameters to retrieve results as a set of sequential pages. If successful, a GameSession object is returned for each session matching the request.

        ", "DescribeInstances": "

        Retrieves information about instances in a fleet.

        To get information on a specific instance, specify both a fleet ID and instance ID. To get information for all instances in a fleet, specify a fleet ID only. Use the pagination parameters to retrieve results as a set of sequential pages. If successful, an Instance object is returned for each result.

        ", "DescribePlayerSessions": "

        Retrieves properties for one or more player sessions. This action can be used in several ways: (1) provide a PlayerSessionId parameter to request properties for a specific player session; (2) provide a GameSessionId parameter to request properties for all player sessions in the specified game session; (3) provide a PlayerId parameter to request properties for all player sessions of a specified player.

        To get game session record(s), specify only one of the following: a player session ID, a game session ID, or a player ID. You can filter this request by player session status. Use the pagination parameters to retrieve results as a set of sequential pages. If successful, a PlayerSession object is returned for each session matching the request.

        ", "DescribeRuntimeConfiguration": "

        Retrieves the current runtime configuration for the specified fleet. The runtime configuration tells GameLift how to launch server processes on instances in the fleet.

        ", "DescribeScalingPolicies": "

        Retrieves all scaling policies applied to a fleet.

        To get a fleet's scaling policies, specify the fleet ID. You can filter this request by policy status, such as to retrieve only active scaling policies. Use the pagination parameters to retrieve results as a set of sequential pages. If successful, set of ScalingPolicy objects is returned for the fleet.

        ", "GetGameSessionLogUrl": "

        Retrieves the location of stored game session logs for a specified game session. When a game session is terminated, Amazon GameLift automatically stores the logs in Amazon S3. Use this URL to download the logs.

        See the AWS Service Limits page for maximum log file sizes. Log files that exceed this limit are not saved.

        ", "ListAliases": "

        Retrieves a collection of alias records for this AWS account. You can filter the result set by alias name and/or routing strategy type. Use the pagination parameters to retrieve results in sequential pages.

        Aliases are not listed in any particular order.

        ", "ListBuilds": "

        Retrieves build records for all builds associated with the AWS account in use. You can limit results to builds that are in a specific status by using the Status parameter. Use the pagination parameters to retrieve results in a set of sequential pages.

        Build records are not listed in any particular order.

        ", "ListFleets": "

        Retrieves a collection of fleet records for this AWS account. You can filter the result set by build ID. Use the pagination parameters to retrieve results in sequential pages.

        Fleet records are not listed in any particular order.

        ", "PutScalingPolicy": "

        Creates or updates a scaling policy for a fleet. An active scaling policy prompts Amazon GameLift to track a certain metric for a fleet and automatically change the fleet's capacity in specific circumstances. Each scaling policy contains one rule statement. Fleets can have multiple scaling policies in force simultaneously.

        A scaling policy rule statement has the following structure:

        If [MetricName] is [ComparisonOperator] [Threshold] for [EvaluationPeriods] minutes, then [ScalingAdjustmentType] to/by [ScalingAdjustment].

        For example, this policy: \"If the number of idle instances exceeds 20 for more than 15 minutes, then reduce the fleet capacity by 10 instances\" could be implemented as the following rule statement:

        If [IdleInstances] is [GreaterThanOrEqualToThreshold] [20] for [15] minutes, then [ChangeInCapacity] by [-10].

        To create or update a scaling policy, specify a unique combination of name and fleet ID, and set the rule values. All parameters for this action are required. If successful, the policy name is returned. Scaling policies cannot be suspended or made inactive. To stop enforcing a scaling policy, call DeleteScalingPolicy.

        ", "RequestUploadCredentials": "

        Retrieves a fresh set of upload credentials and the assigned Amazon S3 storage location for a specific build. Valid credentials are required to upload your game build files to Amazon S3.

        Call this action only if you need credentials for a build created with CreateBuild . This is a rare situation; in most cases, builds are created using the CLI command upload-build, which creates a build record and also uploads build files.

        Upload credentials are returned when you create the build, but they have a limited lifespan. You can get fresh credentials and use them to re-upload game files until the status of that build changes to READY. Once this happens, you must create a brand new build.

        ", "ResolveAlias": "

        Retrieves the fleet ID that a specified alias is currently pointing to.

        ", "SearchGameSessions": "

        Retrieves a set of game sessions that match a set of search criteria and sorts them in a specified order. Currently a game session search is limited to a single fleet. Search results include only game sessions that are in ACTIVE status. If you need to retrieve game sessions with a status other than active, use DescribeGameSessions. If you need to retrieve the protection policy for each game session, use DescribeGameSessionDetails.

        You can search or sort by the following game session attributes:

        • gameSessionId -- ID value assigned to a game session. This unique value is returned in a GameSession object when a new game session is created.

        • gameSessionName -- Name assigned to a game session. This value is set when requesting a new game session with CreateGameSession or updating with UpdateGameSession. Game session names do not need to be unique to a game session.

        • creationTimeMillis -- Value indicating when a game session was created. It is expressed in Unix time as milliseconds.

        • playerSessionCount -- Number of players currently connected to a game session. This value changes rapidly as players join the session or drop out.

        • maximumSessions -- Maximum number of player sessions allowed for a game session. This value is set when requesting a new game session with CreateGameSession or updating with UpdateGameSession.

        • hasAvailablePlayerSessions -- Boolean value indicating whether or not a game session has reached its maximum number of players. When searching with this attribute, the search value must be true or false. It is highly recommended that all search requests include this filter attribute to optimize search performance and return only sessions that players can join.

        To search or sort, specify either a fleet ID or an alias ID, and provide a search filter expression, a sort expression, or both. Use the pagination parameters to retrieve results as a set of sequential pages. If successful, a collection of GameSession objects matching the request is returned.

        Returned values for playerSessionCount and hasAvailablePlayerSessions change quickly as players join sessions and others drop out. Results should be considered a snapshot in time. Be sure to refresh search results often, and handle sessions that fill up before a player can join.

        ", "UpdateAlias": "

        Updates properties for an alias. To update properties, specify the alias ID to be updated and provide the information to be changed. To reassign an alias to another fleet, provide an updated routing strategy. If successful, the updated alias record is returned.

        ", "UpdateBuild": "

        Updates metadata in a build record, including the build name and version. To update the metadata, specify the build ID to update and provide the new values. If successful, a build object containing the updated metadata is returned.

        ", "UpdateFleetAttributes": "

        Updates fleet properties, including name and description, for a fleet. To update metadata, specify the fleet ID and the property values you want to change. If successful, the fleet ID for the updated fleet is returned.

        ", "UpdateFleetCapacity": "

        Updates capacity settings for a fleet. Use this action to specify the number of EC2 instances (hosts) that you want this fleet to contain. Before calling this action, you may want to call DescribeEC2InstanceLimits to get the maximum capacity based on the fleet's EC2 instance type.

        If you're using autoscaling (see PutScalingPolicy), you may want to specify a minimum and/or maximum capacity. If you don't provide these, autoscaling can set capacity anywhere between zero and the service limits.

        To update fleet capacity, specify the fleet ID and the number of instances you want the fleet to host. If successful, Amazon GameLift starts or terminates instances so that the fleet's active instance count matches the desired instance count. You can view a fleet's current capacity information by calling DescribeFleetCapacity. If the desired instance count is higher than the instance type's limit, the \"Limit Exceeded\" exception occurs.

        ", "UpdateFleetPortSettings": "

        Updates port settings for a fleet. To update settings, specify the fleet ID to be updated and list the permissions you want to update. List the permissions you want to add in InboundPermissionAuthorizations, and permissions you want to remove in InboundPermissionRevocations. Permissions to be removed must match existing fleet permissions. If successful, the fleet ID for the updated fleet is returned.

        ", "UpdateGameSession": "

        Updates game session properties. This includes the session name, maximum player count, protection policy, which controls whether or not an active game session can be terminated during a scale-down event, and the player session creation policy, which controls whether or not new players can join the session. To update a game session, specify the game session ID and the values you want to change. If successful, an updated GameSession object is returned.

        ", "UpdateRuntimeConfiguration": "

        Updates the current runtime configuration for the specified fleet, which tells GameLift how to launch server processes on instances in the fleet. You can update a fleet's runtime configuration at any time after the fleet is created; it does not need to be in an ACTIVE status.

        To update runtime configuration, specify the fleet ID and provide a RuntimeConfiguration object with the updated collection of server process configurations.

        Each instance in a GameLift fleet checks regularly for an updated runtime configuration and changes how it launches server processes to comply with the latest version. Existing server processes are not affected by the update; they continue to run until they end, while GameLift simply adds new server processes to fit the current runtime configuration. As a result, the runtime configuration changes are applied gradually as existing processes shut down and new processes are launched in GameLift's normal process recycling activity.

        " }, "shapes": { "Alias": { "base": "

        Properties describing a fleet alias.

        ", "refs": { "AliasList$member": null, "CreateAliasOutput$Alias": "

        Object containing the newly created alias record.

        ", "DescribeAliasOutput$Alias": "

        Object containing the requested alias.

        ", "UpdateAliasOutput$Alias": "

        Object containing the updated alias configuration.

        " } }, "AliasId": { "base": null, "refs": { "Alias$AliasId": "

        Unique identifier for a fleet alias.

        ", "CreateGameSessionInput$AliasId": "

        Unique identifier for a fleet alias. Each request must reference either a fleet ID or alias ID, but not both.

        ", "DeleteAliasInput$AliasId": "

        Unique identifier for a fleet alias. Specify the alias you want to delete.

        ", "DescribeAliasInput$AliasId": "

        Unique identifier for a fleet alias. Specify the alias you want to retrieve.

        ", "DescribeGameSessionDetailsInput$AliasId": "

        Unique identifier for a fleet alias. Specify an alias to retrieve information on all game sessions active on the fleet.

        ", "DescribeGameSessionsInput$AliasId": "

        Unique identifier for a fleet alias. Specify an alias to retrieve information on all game sessions active on the fleet.

        ", "ResolveAliasInput$AliasId": "

        Unique identifier for the alias you want to resolve.

        ", "SearchGameSessionsInput$AliasId": "

        Unique identifier for a fleet alias. Each request must reference either a fleet ID or alias ID, but not both.

        ", "UpdateAliasInput$AliasId": "

        Unique identifier for a fleet alias. Specify the alias you want to update.

        " } }, "AliasList": { "base": null, "refs": { "ListAliasesOutput$Aliases": "

        Collection of alias records that match the list request.

        " } }, "ArnStringModel": { "base": null, "refs": { "CreatePlayerSessionInput$GameSessionId": "

        Unique identifier for the game session to add a player to. Game session ID format is as follows: \"arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>\". The value of <ID string> is either a custom ID string (if one was specified when the game session was created) an auto-generated string.

        ", "CreatePlayerSessionsInput$GameSessionId": "

        Unique identifier for the game session to add players to. Game session ID format is as follows: \"arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>\". The value of <ID string> is either a custom ID string (if one was specified when the game session was created) an auto-generated string.

        ", "DescribeGameSessionDetailsInput$GameSessionId": "

        Unique identifier for the game session to retrieve information on. Game session ID format is as follows: \"arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>\". The value of <ID string> is either a custom ID string (if one was specified when the game session was created) an auto-generated string.

        ", "DescribeGameSessionsInput$GameSessionId": "

        Unique identifier for the game session to retrieve information on. Game session ID format is as follows: \"arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>\". The value of <ID string> is either a custom ID string (if one was specified when the game session was created) an auto-generated string.

        ", "DescribePlayerSessionsInput$GameSessionId": "

        Unique identifier for the game session to get player sessions for.Game session ID format is as follows: \"arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>\". The value of <ID string> is either a custom ID string (if one was specified when the game session was created) an auto-generated string.

        ", "GetGameSessionLogUrlInput$GameSessionId": "

        Unique identifier for the game session to get logs for. Game session ID format is as follows: \"arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>\". The value of <ID string> is either a custom ID string (if one was specified when the game session was created) an auto-generated string.

        ", "UpdateGameSessionInput$GameSessionId": "

        Unique identifier for the game session to update. Game session ID format is as follows: \"arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>\". The value of <ID string> is either a custom ID string (if one was specified when the game session was created) an auto-generated string.

        " } }, "AwsCredentials": { "base": "

        AWS access credentials required to upload game build files to Amazon GameLift. These credentials are generated with CreateBuild, and are valid for a limited time. If they expire before you upload your game build, get a new set by calling RequestUploadCredentials.

        ", "refs": { "CreateBuildOutput$UploadCredentials": "

        AWS credentials required when uploading a game build to the storage location. These credentials have a limited lifespan and are valid only for the build they were issued for. If you need to get fresh credentials, call RequestUploadCredentials .

        ", "RequestUploadCredentialsOutput$UploadCredentials": "

        AWS credentials required when uploading a game build to the storage location. These credentials have a limited lifespan and are valid only for the build they were issued for.

        " } }, "Build": { "base": "

        Properties describing a game build.

        ", "refs": { "BuildList$member": null, "CreateBuildOutput$Build": "

        Set of properties for the newly created build.

        ", "DescribeBuildOutput$Build": "

        Set of properties describing the requested build.

        ", "UpdateBuildOutput$Build": "

        Object containing the updated build record.

        " } }, "BuildId": { "base": null, "refs": { "Build$BuildId": "

        Unique identifier for a build.

        ", "CreateFleetInput$BuildId": "

        Unique identifier of the build to be deployed on the new fleet. The build must have been successfully uploaded to GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created.

        ", "DeleteBuildInput$BuildId": "

        Unique identifier for the build you want to delete.

        ", "DescribeBuildInput$BuildId": "

        Unique identifier of the build that you want to retrieve properties for.

        ", "FleetAttributes$BuildId": "

        Unique identifier for a build.

        ", "ListFleetsInput$BuildId": "

        Unique identifier of the build to return fleets for. Use this parameter to return only fleets using the specified build. To retrieve all fleets, leave this parameter empty.

        ", "RequestUploadCredentialsInput$BuildId": "

        Unique identifier for the build you want to get credentials for.

        ", "UpdateBuildInput$BuildId": "

        Unique identifier of the build you want to update.

        " } }, "BuildList": { "base": null, "refs": { "ListBuildsOutput$Builds": "

        Collection of build records that match the request.

        " } }, "BuildStatus": { "base": null, "refs": { "Build$Status": "

        Current status of the build.

        Possible build statuses include the following:

        • INITIALIZED – A new build has been defined, but no files have been uploaded. You cannot create fleets for builds that are in this status. When a build is successfully created, the build status is set to this value.

        • READY – The game build has been successfully uploaded. You can now create new fleets for this build.

        • FAILED – The game build upload failed. You cannot create new fleets for this build.

        ", "ListBuildsInput$Status": "

        Build status to filter results by. To retrieve all builds, leave this parameter empty.

        Possible build statuses include the following:

        • INITIALIZED – A new build has been defined, but no files have been uploaded. You cannot create fleets for builds that are in this status. When a build is successfully created, the build status is set to this value.

        • READY – The game build has been successfully uploaded. You can now create new fleets for this build.

        • FAILED – The game build upload failed. You cannot create new fleets for this build.

        " } }, "ComparisonOperatorType": { "base": null, "refs": { "PutScalingPolicyInput$ComparisonOperator": "

        Comparison operator to use when measuring the metric against the threshold value.

        ", "ScalingPolicy$ComparisonOperator": "

        Comparison operator to use when measuring a metric against the threshold value.

        " } }, "ConflictException": { "base": "

        The requested operation would cause a conflict with the current state of a service resource associated with the request. Resolve the conflict before retrying this request.

        ", "refs": { } }, "CreateAliasInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "CreateAliasOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "CreateBuildInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "CreateBuildOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "CreateFleetInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "CreateFleetOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "CreateGameSessionInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "CreateGameSessionOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "CreatePlayerSessionInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "CreatePlayerSessionOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "CreatePlayerSessionsInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "CreatePlayerSessionsOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "DeleteAliasInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "DeleteBuildInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "DeleteFleetInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "DeleteScalingPolicyInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "DescribeAliasInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "DescribeAliasOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "DescribeBuildInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "DescribeBuildOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "DescribeEC2InstanceLimitsInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "DescribeEC2InstanceLimitsOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "DescribeFleetAttributesInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "DescribeFleetAttributesOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "DescribeFleetCapacityInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "DescribeFleetCapacityOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "DescribeFleetEventsInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "DescribeFleetEventsOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "DescribeFleetPortSettingsInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "DescribeFleetPortSettingsOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "DescribeFleetUtilizationInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "DescribeFleetUtilizationOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "DescribeGameSessionDetailsInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "DescribeGameSessionDetailsOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "DescribeGameSessionsInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "DescribeGameSessionsOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "DescribeInstancesInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "DescribeInstancesOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "DescribePlayerSessionsInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "DescribePlayerSessionsOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "DescribeRuntimeConfigurationInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "DescribeRuntimeConfigurationOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "DescribeScalingPoliciesInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "DescribeScalingPoliciesOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "Double": { "base": null, "refs": { "PutScalingPolicyInput$Threshold": "

        Metric value used to trigger a scaling event.

        ", "ScalingPolicy$Threshold": "

        Metric value used to trigger a scaling event.

        " } }, "EC2InstanceCounts": { "base": "

        Current status of fleet capacity. The number of active instances should match or be in the process of matching the number of desired instances. Pending and terminating counts are non-zero only if fleet capacity is adjusting to an UpdateFleetCapacity request, or if access to resources is temporarily affected.

        ", "refs": { "FleetCapacity$InstanceCounts": "

        Current status of fleet capacity.

        " } }, "EC2InstanceLimit": { "base": "

        Maximum number of instances allowed based on the Amazon Elastic Compute Cloud (Amazon EC2) instance type. Instance limits can be retrieved by calling DescribeEC2InstanceLimits.

        ", "refs": { "EC2InstanceLimitList$member": null } }, "EC2InstanceLimitList": { "base": null, "refs": { "DescribeEC2InstanceLimitsOutput$EC2InstanceLimits": "

        Object containing the maximum number of instances for the specified instance type.

        " } }, "EC2InstanceType": { "base": null, "refs": { "CreateFleetInput$EC2InstanceType": "

        Name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions.

        ", "DescribeEC2InstanceLimitsInput$EC2InstanceType": "

        Name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions. Leave this parameter blank to retrieve limits for all types.

        ", "EC2InstanceLimit$EC2InstanceType": "

        Name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions.

        ", "FleetCapacity$InstanceType": "

        Name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions.

        ", "Instance$Type": "

        EC2 instance type that defines the computing resources of this instance.

        " } }, "Event": { "base": "

        Log entry describing an event involving an Amazon GameLift resource (such as a fleet).

        ", "refs": { "EventList$member": null } }, "EventCode": { "base": null, "refs": { "Event$EventCode": "

        Type of event being logged.

        " } }, "EventList": { "base": null, "refs": { "DescribeFleetEventsOutput$Events": "

        Collection of objects containing event log entries for the specified fleet.

        " } }, "FleetAttributes": { "base": "

        General properties describing a fleet.

        ", "refs": { "CreateFleetOutput$FleetAttributes": "

        Properties for the newly created fleet.

        ", "FleetAttributesList$member": null } }, "FleetAttributesList": { "base": null, "refs": { "DescribeFleetAttributesOutput$FleetAttributes": "

        Collection of objects containing attribute metadata for each requested fleet ID.

        " } }, "FleetCapacity": { "base": "

        Information about the fleet's capacity. Fleet capacity is measured in EC2 instances. By default, new fleets have a capacity of one instance, but can be updated as needed. The maximum number of instances for a fleet is determined by the fleet's instance type.

        ", "refs": { "FleetCapacityList$member": null } }, "FleetCapacityExceededException": { "base": "

        The specified fleet has no available instances to fulfill a CreateGameSession request. Clients can retry such requests immediately or after a waiting period.

        ", "refs": { } }, "FleetCapacityList": { "base": null, "refs": { "DescribeFleetCapacityOutput$FleetCapacity": "

        Collection of objects containing capacity information for each requested fleet ID. Leave this parameter empty to retrieve capacity information for all fleets.

        " } }, "FleetId": { "base": null, "refs": { "CreateGameSessionInput$FleetId": "

        Unique identifier for a fleet. Each request must reference either a fleet ID or alias ID, but not both.

        ", "DeleteFleetInput$FleetId": "

        Unique identifier for the fleet you want to delete.

        ", "DeleteScalingPolicyInput$FleetId": "

        Unique identifier for a fleet.

        ", "DescribeFleetEventsInput$FleetId": "

        Unique identifier for the fleet to get event logs for.

        ", "DescribeFleetPortSettingsInput$FleetId": "

        Unique identifier for the fleet you want to retrieve port settings for.

        ", "DescribeGameSessionDetailsInput$FleetId": "

        Unique identifier for a fleet. Specify a fleet to retrieve information on all game sessions active on the fleet.

        ", "DescribeGameSessionsInput$FleetId": "

        Unique identifier for a fleet. Specify a fleet to retrieve information on all game sessions active on the fleet.

        ", "DescribeInstancesInput$FleetId": "

        Unique identifier for a fleet. Specify the fleet to retrieve instance information for.

        ", "DescribeRuntimeConfigurationInput$FleetId": "

        Unique identifier of the fleet to get the runtime configuration for.

        ", "DescribeScalingPoliciesInput$FleetId": "

        Unique identifier for a fleet. Specify the fleet to retrieve scaling policies for.

        ", "FleetAttributes$FleetId": "

        Unique identifier for a fleet.

        ", "FleetCapacity$FleetId": "

        Unique identifier for a fleet.

        ", "FleetIdList$member": null, "FleetUtilization$FleetId": "

        Unique identifier for a fleet.

        ", "GameSession$FleetId": "

        Unique identifier for a fleet.

        ", "Instance$FleetId": "

        Unique identifier for the fleet that the instance belongs to.

        ", "PlayerSession$FleetId": "

        Unique identifier for a fleet.

        ", "PutScalingPolicyInput$FleetId": "

        Unique identity for the fleet to scale with this policy.

        ", "ResolveAliasOutput$FleetId": "

        Fleet ID associated with the requested alias.

        ", "RoutingStrategy$FleetId": "

        Unique identifier for a fleet.

        ", "ScalingPolicy$FleetId": "

        Unique identity for the fleet associated with this scaling policy.

        ", "SearchGameSessionsInput$FleetId": "

        Unique identifier for a fleet. Each request must reference either a fleet ID or alias ID, but not both.

        ", "UpdateFleetAttributesInput$FleetId": "

        Unique identifier for the fleet you want to update attribute metadata for.

        ", "UpdateFleetAttributesOutput$FleetId": "

        Unique identifier for the updated fleet.

        ", "UpdateFleetCapacityInput$FleetId": "

        Unique identifier for the fleet you want to update capacity for.

        ", "UpdateFleetCapacityOutput$FleetId": "

        Unique identifier for the updated fleet.

        ", "UpdateFleetPortSettingsInput$FleetId": "

        Unique identifier for the fleet you want to update port settings for.

        ", "UpdateFleetPortSettingsOutput$FleetId": "

        Unique identifier for the updated fleet.

        ", "UpdateRuntimeConfigurationInput$FleetId": "

        Unique identifier of the fleet to update runtime configuration for.

        " } }, "FleetIdList": { "base": null, "refs": { "DescribeFleetAttributesInput$FleetIds": "

        Unique identifiers for the fleet(s) that you want to retrieve attributes for. To request attributes for all fleets, leave this parameter empty.

        ", "DescribeFleetCapacityInput$FleetIds": "

        Unique identifier for the fleet(s) you want to retrieve capacity information for. To request capacity information for all fleets, leave this parameter empty.

        ", "DescribeFleetUtilizationInput$FleetIds": "

        Unique identifier for the fleet(s) you want to retrieve utilization data for. To request utilization data for all fleets, leave this parameter empty.

        ", "ListFleetsOutput$FleetIds": "

        Set of fleet IDs matching the list request. You can retrieve additional information about all returned fleets by passing this result set to a call to DescribeFleetAttributes, DescribeFleetCapacity, and DescribeFleetUtilization.

        " } }, "FleetStatus": { "base": null, "refs": { "FleetAttributes$Status": "

        Current status of the fleet.

        Possible fleet statuses include the following:

        • NEW – A new fleet has been defined and desired instances is set to 1.

        • DOWNLOADING/VALIDATING/BUILDING/ACTIVATING – GameLift is setting up the new fleet, creating new instances with the game build and starting server processes.

        • ACTIVE – Hosts can now accept game sessions.

        • ERROR – An error occurred when downloading, validating, building, or activating the fleet.

        • DELETING – Hosts are responding to a delete fleet request.

        • TERMINATED – The fleet no longer exists.

        " } }, "FleetUtilization": { "base": "

        Current status of fleet utilization, including the number of game and player sessions being hosted.

        ", "refs": { "FleetUtilizationList$member": null } }, "FleetUtilizationList": { "base": null, "refs": { "DescribeFleetUtilizationOutput$FleetUtilization": "

        Collection of objects containing utilization information for each requested fleet ID.

        " } }, "FreeText": { "base": null, "refs": { "Alias$Description": "

        Human-readable description of an alias.

        ", "Build$Name": "

        Descriptive label associated with a build. Build names do not need to be unique. It can be set using CreateBuild or UpdateBuild.

        ", "Build$Version": "

        Version associated with this build. Version strings do not need to be unique to a build. This value can be set using CreateBuild or UpdateBuild.

        ", "RoutingStrategy$Message": "

        Message text to be used with a terminal routing strategy.

        " } }, "GameProperty": { "base": "

        Set of key-value pairs containing information a server process requires to set up a game session. This object allows you to pass in any set of data needed for your game. For more information, see the Amazon GameLift Developer Guide.

        ", "refs": { "GamePropertyList$member": null } }, "GamePropertyKey": { "base": null, "refs": { "GameProperty$Key": "

        TBD

        " } }, "GamePropertyList": { "base": null, "refs": { "CreateGameSessionInput$GameProperties": "

        Set of properties used to administer a game session. These properties are passed to the server process hosting it.

        ", "GameSession$GameProperties": "

        Set of custom properties for the game session.

        " } }, "GamePropertyValue": { "base": null, "refs": { "GameProperty$Value": "

        TBD

        " } }, "GameSession": { "base": "

        Properties describing a game session.

        ", "refs": { "CreateGameSessionOutput$GameSession": "

        Object containing the newly created game session record.

        ", "GameSessionDetail$GameSession": null, "GameSessionList$member": null, "UpdateGameSessionOutput$GameSession": "

        Object containing the updated game session metadata.

        " } }, "GameSessionDetail": { "base": "

        A game session's properties and the protection policy currently in force.

        ", "refs": { "GameSessionDetailList$member": null } }, "GameSessionDetailList": { "base": null, "refs": { "DescribeGameSessionDetailsOutput$GameSessionDetails": "

        Collection of objects containing game session properties and the protection policy currently in force for each session matching the request.

        " } }, "GameSessionFullException": { "base": "

        The game instance is currently full and cannot allow the requested player(s) to join. Clients can retry such requests immediately or after a waiting period.

        ", "refs": { } }, "GameSessionList": { "base": null, "refs": { "DescribeGameSessionsOutput$GameSessions": "

        Collection of objects containing game session properties for each session matching the request.

        ", "SearchGameSessionsOutput$GameSessions": "

        Collection of objects containing game session properties for each session matching the request.

        " } }, "GameSessionStatus": { "base": null, "refs": { "GameSession$Status": "

        Current status of the game session. A game session must be in an ACTIVE status to have player sessions.

        " } }, "GetGameSessionLogUrlInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "GetGameSessionLogUrlOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "IdStringModel": { "base": null, "refs": { "CreateGameSessionInput$GameSessionId": "

        Custom string to include in the game session ID, with a maximum length of 48 characters. If this parameter is set, GameLift creates a game session ID in the following format: \"arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<custom ID string>\". For example, this full game session ID: \"arn:aws:gamelift:us-west-2::gamesession/fleet-2ec2aae5-c2c7-43ca-b19d-8249fe5fddf2/my-game-session\" includes the custom ID string \"my-game-session\". If this parameter is not set, GameLift creates a game session ID in the same format with an auto-generated ID string.

        " } }, "IdempotentParameterMismatchException": { "base": "

        A game session with this custom ID string already exists in this fleet. Resolve this conflict before retrying this request.

        ", "refs": { } }, "Instance": { "base": "

        Properties describing an instance of a virtual computing resource that is hosting game servers. Fleets contain zero or more instances.

        ", "refs": { "InstanceList$member": null } }, "InstanceId": { "base": null, "refs": { "DescribeInstancesInput$InstanceId": "

        Unique identifier for an instance. Specify an instance to retrieve information for or leave blank to get information on all instances in the fleet.

        ", "Instance$InstanceId": "

        Unique identifier for the instance.

        " } }, "InstanceList": { "base": null, "refs": { "DescribeInstancesOutput$Instances": "

        Collection of objects containing properties for each instance returned.

        " } }, "InstanceStatus": { "base": null, "refs": { "Instance$Status": "

        Current status of the instance. Possible statuses include the following:

        • PENDING – The instance is in the process of being created and launching server processes as defined in the fleet's runtime configuration.

        • ACTIVE – The instance has been successfully created and at least one server process has successfully launched and reported back to GameLift that it is ready to host a game session. The instance is now considered ready to host game sessions.

        • TERMINATING – The instance is in the process of shutting down. This may happen to reduce capacity during a scaling down event or to recycle resources in the event of a problem.

        " } }, "Integer": { "base": null, "refs": { "PutScalingPolicyInput$ScalingAdjustment": "

        Amount of adjustment to make, based on the scaling adjustment type.

        ", "ScalingPolicy$ScalingAdjustment": "

        Amount of adjustment to make, based on the scaling adjustment type.

        " } }, "InternalServiceException": { "base": "

        The service encountered an unrecoverable internal failure while processing the request. Clients can retry such requests immediately or after a waiting period.

        ", "refs": { } }, "InvalidFleetStatusException": { "base": "

        The requested operation would cause a conflict with the current state of a resource associated with the request and/or the fleet. Resolve the conflict before retrying.

        ", "refs": { } }, "InvalidGameSessionStatusException": { "base": "

        The requested operation would cause a conflict with the current state of a resource associated with the request and/or the game instance. Resolve the conflict before retrying.

        ", "refs": { } }, "InvalidRequestException": { "base": "

        One or more parameter values in the request are invalid. Correct the invalid parameter values before retrying.

        ", "refs": { } }, "IpAddress": { "base": null, "refs": { "GameSession$IpAddress": "

        IP address of the game session. To connect to a GameLift server process, an app needs both the IP address and port number.

        ", "Instance$IpAddress": "

        IP address assigned to the instance.

        ", "PlayerSession$IpAddress": "

        Game session IP address. All player sessions reference the game session location.

        " } }, "IpPermission": { "base": "

        A range of IP addresses and port settings that allow inbound traffic to connect to server processes on GameLift. Each game session hosted on a fleet is assigned a unique combination of IP address and port number, which must fall into the fleet's allowed ranges. This combination is included in the GameSession object.

        ", "refs": { "IpPermissionsList$member": null } }, "IpPermissionsList": { "base": null, "refs": { "CreateFleetInput$EC2InboundPermissions": "

        Range of IP addresses and port settings that permit inbound traffic to access server processes running on the fleet. If no inbound permissions are set, including both IP address range and port range, the server processes in the fleet cannot accept connections. You can specify one or more sets of permissions for a fleet.

        ", "DescribeFleetPortSettingsOutput$InboundPermissions": "

        Object containing port settings for the requested fleet ID.

        ", "UpdateFleetPortSettingsInput$InboundPermissionAuthorizations": "

        Collection of port settings to be added to the fleet record.

        ", "UpdateFleetPortSettingsInput$InboundPermissionRevocations": "

        Collection of port settings to be removed from the fleet record.

        " } }, "IpProtocol": { "base": null, "refs": { "IpPermission$Protocol": "

        Network communication protocol used by the fleet.

        " } }, "LimitExceededException": { "base": "

        The requested operation would cause the resource to exceed the allowed service limit. Resolve the issue before retrying.

        ", "refs": { } }, "ListAliasesInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "ListAliasesOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "ListBuildsInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "ListBuildsOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "ListFleetsInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "ListFleetsOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "MetricName": { "base": null, "refs": { "PutScalingPolicyInput$MetricName": "

        Name of the Amazon GameLift-defined metric that is used to trigger an adjustment.

        • ActivatingGameSessions – number of game sessions in the process of being created (game session status = ACTIVATING).

        • ActiveGameSessions – number of game sessions currently running (game session status = ACTIVE).

        • CurrentPlayerSessions – number of active or reserved player sessions (player session status = ACTIVE or RESERVED).

        • AvailablePlayerSessions – number of player session slots currently available in active game sessions across the fleet, calculated by subtracting a game session's current player session count from its maximum player session count. This number includes game sessions that are not currently accepting players (game session PlayerSessionCreationPolicy = DENY_ALL).

        • ActiveInstances – number of instances currently running a game session.

        • IdleInstances – number of instances not currently running a game session.

        ", "ScalingPolicy$MetricName": "

        Name of the GameLift-defined metric that is used to trigger an adjustment.

        • ActivatingGameSessions – number of game sessions in the process of being created (game session status = ACTIVATING).

        • ActiveGameSessions – number of game sessions currently running (game session status = ACTIVE).

        • CurrentPlayerSessions – number of active or reserved player sessions (player session status = ACTIVE or RESERVED).

        • AvailablePlayerSessions – number of player session slots currently available in active game sessions across the fleet, calculated by subtracting a game session's current player session count from its maximum player session count. This number does include game sessions that are not currently accepting players (game session PlayerSessionCreationPolicy = DENY_ALL).

        • ActiveInstances – number of instances currently running a game session.

        • IdleInstances – number of instances not currently running a game session.

        " } }, "NonBlankAndLengthConstraintString": { "base": null, "refs": { "Alias$Name": "

        Descriptive label associated with an alias. Alias names do not need to be unique.

        ", "CreateAliasInput$Name": "

        Descriptive label associated with an alias. Alias names do not need to be unique.

        ", "UpdateAliasInput$Name": "

        Descriptive label associated with an alias. Alias names do not need to be unique.

        " } }, "NonBlankString": { "base": null, "refs": { "IpPermission$IpRange": "

        Range of allowed IP addresses. This value must be expressed in CIDR notation. Example: \"000.000.000.000/[subnet mask]\" or optionally the shortened version \"0.0.0.0/[subnet mask]\".

        " } }, "NonEmptyString": { "base": null, "refs": { "AwsCredentials$AccessKeyId": "

        Access key for an AWS account.

        ", "AwsCredentials$SecretAccessKey": "

        Secret key for an AWS account.

        ", "AwsCredentials$SessionToken": "

        Token specific to a build ID.

        ", "ConflictException$Message": null, "Event$Message": "

        Additional information related to the event.

        ", "FleetCapacityExceededException$Message": null, "GameSessionFullException$Message": null, "IdempotentParameterMismatchException$Message": null, "InternalServiceException$Message": null, "InvalidFleetStatusException$Message": null, "InvalidGameSessionStatusException$Message": null, "InvalidRequestException$Message": null, "LimitExceededException$Message": null, "ListAliasesInput$Name": "

        Descriptive label associated with an alias. Alias names do not need to be unique.

        ", "ListAliasesInput$NextToken": "

        Token indicating the start of the next sequential page of results. Use the token that is returned with a previous call to this action. To specify the start of the result set, do not specify a value.

        ", "ListAliasesOutput$NextToken": "

        Token indicating where to resume retrieving results on the next call to this action. If no token is returned, these results represent the end of the list.

        ", "ListBuildsInput$NextToken": "

        Token indicating the start of the next sequential page of results. Use the token that is returned with a previous call to this action. To specify the start of the result set, do not specify a value.

        ", "ListBuildsOutput$NextToken": "

        Token indicating where to resume retrieving results on the next call to this action. If no token is returned, these results represent the end of the list.

        ", "NotFoundException$Message": null, "S3Location$Bucket": "

        Amazon S3 bucket identifier.

        ", "S3Location$Key": "

        Amazon S3 bucket key.

        ", "S3Location$RoleArn": "

        Amazon resource number for the cross-account access role that allows GameLift access to the S3 bucket.

        ", "TerminalRoutingStrategyException$Message": null, "UnauthorizedException$Message": null } }, "NonZeroAndMaxString": { "base": null, "refs": { "CreateAliasInput$Description": "

        Human-readable description of an alias.

        ", "CreateBuildInput$Name": "

        Descriptive label associated with a build. Build names do not need to be unique. A build name can be changed later using UpdateBuild .

        ", "CreateBuildInput$Version": "

        Version associated with this build. Version strings do not need to be unique to a build. A build version can be changed later using UpdateBuild .

        ", "CreateFleetInput$Name": "

        Descriptive label associated with a fleet. Fleet names do not need to be unique.

        ", "CreateFleetInput$Description": "

        Human-readable description of a fleet.

        ", "CreateFleetInput$ServerLaunchPath": "

        This parameter is no longer used. Instead, specify a server launch path using the RuntimeConfiguration parameter. (Requests that specify a server launch path and launch parameters instead of a runtime configuration will continue to work.)

        ", "CreateFleetInput$ServerLaunchParameters": "

        This parameter is no longer used. Instead, specify server launch parameters in the RuntimeConfiguration parameter. (Requests that specify a server launch path and launch parameters instead of a runtime configuration will continue to work.)

        ", "CreateGameSessionInput$Name": "

        Descriptive label associated with a game session. Session names do not need to be unique.

        ", "CreateGameSessionInput$CreatorId": "

        Player ID identifying the person or entity creating the game session. This ID is used to enforce a resource protection policy (if one exists) that limits the number of concurrent active game sessions one player can have.

        ", "CreatePlayerSessionInput$PlayerId": "

        Unique identifier for the player to be added.

        ", "DeleteScalingPolicyInput$Name": "

        Descriptive label associated with a scaling policy. Policy names do not need to be unique.

        ", "DescribeFleetAttributesInput$NextToken": "

        Token indicating the start of the next sequential page of results. Use the token that is returned with a previous call to this action. To specify the start of the result set, do not specify a value. This parameter is ignored when the request specifies one or a list of fleet IDs.

        ", "DescribeFleetAttributesOutput$NextToken": "

        Token indicating where to resume retrieving results on the next call to this action. If no token is returned, these results represent the end of the list.

        ", "DescribeFleetCapacityInput$NextToken": "

        Token indicating the start of the next sequential page of results. Use the token that is returned with a previous call to this action. To specify the start of the result set, do not specify a value. This parameter is ignored when the request specifies one or a list of fleet IDs.

        ", "DescribeFleetCapacityOutput$NextToken": "

        Token indicating where to resume retrieving results on the next call to this action. If no token is returned, these results represent the end of the list.

        ", "DescribeFleetEventsInput$NextToken": "

        Token indicating the start of the next sequential page of results. Use the token that is returned with a previous call to this action. To specify the start of the result set, do not specify a value.

        ", "DescribeFleetEventsOutput$NextToken": "

        Token indicating where to resume retrieving results on the next call to this action. If no token is returned, these results represent the end of the list.

        ", "DescribeFleetUtilizationInput$NextToken": "

        Token indicating the start of the next sequential page of results. Use the token that is returned with a previous call to this action. To specify the start of the result set, do not specify a value. This parameter is ignored when the request specifies one or a list of fleet IDs.

        ", "DescribeFleetUtilizationOutput$NextToken": "

        Token indicating where to resume retrieving results on the next call to this action. If no token is returned, these results represent the end of the list.

        ", "DescribeGameSessionDetailsInput$StatusFilter": "

        Game session status to filter results on. Possible game session statuses include ACTIVE, TERMINATED, ACTIVATING and TERMINATING (the last two are transitory).

        ", "DescribeGameSessionDetailsInput$NextToken": "

        Token indicating the start of the next sequential page of results. Use the token that is returned with a previous call to this action. To specify the start of the result set, do not specify a value.

        ", "DescribeGameSessionDetailsOutput$NextToken": "

        Token indicating where to resume retrieving results on the next call to this action. If no token is returned, these results represent the end of the list.

        ", "DescribeGameSessionsInput$StatusFilter": "

        Game session status to filter results on. Possible game session statuses include ACTIVE, TERMINATED, ACTIVATING, and TERMINATING (the last two are transitory).

        ", "DescribeGameSessionsInput$NextToken": "

        Token indicating the start of the next sequential page of results. Use the token that is returned with a previous call to this action. To specify the start of the result set, do not specify a value.

        ", "DescribeGameSessionsOutput$NextToken": "

        Token indicating where to resume retrieving results on the next call to this action. If no token is returned, these results represent the end of the list.

        ", "DescribeInstancesInput$NextToken": "

        Token indicating the start of the next sequential page of results. Use the token that is returned with a previous call to this action. To specify the start of the result set, do not specify a value.

        ", "DescribeInstancesOutput$NextToken": "

        Token indicating where to resume retrieving results on the next call to this action. If no token is returned, these results represent the end of the list.

        ", "DescribePlayerSessionsInput$PlayerId": "

        Unique identifier for a player.

        ", "DescribePlayerSessionsInput$PlayerSessionStatusFilter": "

        Player session status to filter results on.

        Possible player session statuses include the following:

        • RESERVED – The player session request has been received, but the player has not yet connected to the server process and/or been validated.

        • ACTIVE – The player has been validated by the server process and is currently connected.

        • COMPLETED – The player connection has been dropped.

        • TIMEDOUT – A player session request was received, but the player did not connect and/or was not validated within the time-out limit (60 seconds).

        ", "DescribePlayerSessionsInput$NextToken": "

        Token indicating the start of the next sequential page of results. Use the token that is returned with a previous call to this action. To specify the start of the result set, do not specify a value. If a player session ID is specified, this parameter is ignored.

        ", "DescribePlayerSessionsOutput$NextToken": "

        Token indicating where to resume retrieving results on the next call to this action. If no token is returned, these results represent the end of the list.

        ", "DescribeScalingPoliciesInput$NextToken": "

        Token indicating the start of the next sequential page of results. Use the token that is returned with a previous call to this action. To specify the start of the result set, do not specify a value.

        ", "DescribeScalingPoliciesOutput$NextToken": "

        Token indicating where to resume retrieving results on the next call to this action. If no token is returned, these results represent the end of the list.

        ", "Event$EventId": "

        Unique identifier for a fleet event.

        ", "Event$ResourceId": "

        Unique identifier for the resource, such as a fleet ID.

        ", "FleetAttributes$Description": "

        Human-readable description of the fleet.

        ", "FleetAttributes$Name": "

        Descriptive label associated with a fleet. Fleet names do not need to be unique.

        ", "FleetAttributes$ServerLaunchPath": "

        Path to a game server executable in the fleet's build, specified for fleets created prior to 2016-08-04 (or AWS SDK v. 0.12.16). Server launch paths for fleets created after this date are specified in the fleet's RuntimeConfiguration .

        ", "FleetAttributes$ServerLaunchParameters": "

        Game server launch parameters specified for fleets created prior to 2016-08-04 (or AWS SDK v. 0.12.16). Server launch parameters for fleets created after this date are specified in the fleet's RuntimeConfiguration .

        ", "GameSession$GameSessionId": "

        Unique identifier for a game session. Game session ID format is as follows: \"arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>\". The value of <ID string> is either a custom ID string (if one was specified when the game session was created) an auto-generated string.

        ", "GameSession$Name": "

        Descriptive label associated with a game session. Session names do not need to be unique.

        ", "GameSession$CreatorId": "

        Player ID of the person or entity that created the game session. This ID is used to enforce a resource protection policy (if one exists) that limits the number of concurrent active game sessions one player can have.

        ", "GetGameSessionLogUrlOutput$PreSignedUrl": "

        Location of the requested game session logs, available for download.

        ", "ListFleetsInput$NextToken": "

        Token indicating the start of the next sequential page of results. Use the token that is returned with a previous call to this action. To specify the start of the result set, do not specify a value.

        ", "ListFleetsOutput$NextToken": "

        Token indicating where to resume retrieving results on the next call to this action. If no token is returned, these results represent the end of the list.

        ", "PlayerIdList$member": null, "PlayerSession$PlayerId": "

        Unique identifier for a player.

        ", "PlayerSession$GameSessionId": "

        Unique identifier for the game session that the player session is connected to.

        ", "PutScalingPolicyInput$Name": "

        Descriptive label associated with a scaling policy. Policy names do not need to be unique. A fleet can have only one scaling policy with the same name.

        ", "PutScalingPolicyOutput$Name": "

        Descriptive label associated with a scaling policy. Policy names do not need to be unique.

        ", "ScalingPolicy$Name": "

        Descriptive label associated with a scaling policy. Policy names do not need to be unique.

        ", "SearchGameSessionsInput$FilterExpression": "

        String containing the search criteria for the session search. If no filter expression is included, the request returns results for all game sessions in the fleet that are in ACTIVE status.

        A filter expression can contain one or multiple conditions. Each condition consists of the following:

        • Operand -- Name of a game session attribute. Valid values are gameSessionName, gameSessionId, creationTimeMillis, playerSessionCount, maximumSessions, hasAvailablePlayerSessions.

        • Comparator -- Valid comparators are: =, <>, <, >, <=, >=.

        • Value -- Value to be searched for. Values can be numbers, boolean values (true/false) or strings. String values are case sensitive, enclosed in single quotes. Special characters must be escaped. Boolean and string values can only be used with the comparators = and <>. For example, the following filter expression searches on gameSessionName: \"FilterExpression\": \"gameSessionName = 'Matt\\\\'s Awesome Game 1'\".

        To chain multiple conditions in a single expression, use the logical keywords AND, OR, and NOT and parentheses as needed. For example: x AND y AND NOT z, NOT (x OR y).

        Session search evaluates conditions from left to right using the following precedence rules:

        1. =, <>, <, >, <=, >=

        2. Parentheses

        3. NOT

        4. AND

        5. OR

        For example, this filter expression retrieves game sessions hosting at least ten players that have an open player slot: \"maximumSessions>=10 AND hasAvailablePlayerSessions=true\".

        ", "SearchGameSessionsInput$SortExpression": "

        Instructions on how to sort the search results. If no sort expression is included, the request returns results in random order. A sort expression consists of the following elements:

        • Operand -- Name of a game session attribute. Valid values are gameSessionName, gameSessionId, creationTimeMillis, playerSessionCount, maximumSessions, hasAvailablePlayerSessions.

        • Order -- Valid sort orders are ASC (ascending) and DESC (descending).

        For example, this sort expression returns the oldest active sessions first: \"SortExpression\": \"creationTimeMillis ASC\". Results with a null value for the sort operand are returned at the end of the list.

        ", "SearchGameSessionsInput$NextToken": "

        Token indicating the start of the next sequential page of results. Use the token that is returned with a previous call to this action. To specify the start of the result set, do not specify a value.

        ", "SearchGameSessionsOutput$NextToken": "

        Token indicating where to resume retrieving results on the next call to this action. If no token is returned, these results represent the end of the list.

        ", "ServerProcess$LaunchPath": "

        Location in the game build of the server executable. All game builds are installed on instances at the root C:\\game\\..., so an executable file located at MyGame\\latest\\server.exe has a launch path of \"C:\\game\\MyGame\\latest\\server.exe\".

        ", "ServerProcess$Parameters": "

        Optional list of parameters to pass to the server executable on launch.

        ", "StringList$member": null, "UpdateAliasInput$Description": "

        Human-readable description of an alias.

        ", "UpdateBuildInput$Name": "

        Descriptive label associated with a build. Build names do not need to be unique.

        ", "UpdateBuildInput$Version": "

        Version associated with this build. Version strings do not need to be unique to a build.

        ", "UpdateFleetAttributesInput$Name": "

        Descriptive label associated with a fleet. Fleet names do not need to be unique.

        ", "UpdateFleetAttributesInput$Description": "

        Human-readable description of a fleet.

        ", "UpdateGameSessionInput$Name": "

        Descriptive label associated with a game session. Session names do not need to be unique.

        " } }, "NotFoundException": { "base": "

        A service resource associated with the request could not be found. Clients should not retry such requests.

        ", "refs": { } }, "OperatingSystem": { "base": null, "refs": { "Build$OperatingSystem": "

        Operating system that the game server binaries are built to run on. This value determines the type of fleet resources that you can use for this build.

        ", "CreateBuildInput$OperatingSystem": "

        Operating system that the game server binaries are built to run on. This value determines the type of fleet resources that you can use for this build.

        ", "FleetAttributes$OperatingSystem": "

        Operating system of the fleet's computing resources. A fleet's operating system depends on the OS specified for the build that is deployed on this fleet.

        ", "Instance$OperatingSystem": "

        Operating system being used on this instance.

        " } }, "PlayerIdList": { "base": null, "refs": { "CreatePlayerSessionsInput$PlayerIds": "

        List of unique identifiers for the players to be added.

        " } }, "PlayerSession": { "base": "

        Properties describing a player session.

        ", "refs": { "CreatePlayerSessionOutput$PlayerSession": "

        Object containing the newly created player session record.

        ", "PlayerSessionList$member": null } }, "PlayerSessionCreationPolicy": { "base": null, "refs": { "GameSession$PlayerSessionCreationPolicy": "

        Indicates whether or not the game session is accepting new players.

        ", "UpdateGameSessionInput$PlayerSessionCreationPolicy": "

        Policy determining whether or not the game session accepts new players.

        " } }, "PlayerSessionId": { "base": null, "refs": { "DescribePlayerSessionsInput$PlayerSessionId": "

        Unique identifier for a player session.

        ", "PlayerSession$PlayerSessionId": "

        Unique identifier for a player session.

        " } }, "PlayerSessionList": { "base": null, "refs": { "CreatePlayerSessionsOutput$PlayerSessions": "

        Collection of player session objects created for the added players.

        ", "DescribePlayerSessionsOutput$PlayerSessions": "

        Collection of objects containing properties for each player session that matches the request.

        " } }, "PlayerSessionStatus": { "base": null, "refs": { "PlayerSession$Status": "

        Current status of the player session.

        Possible player session statuses include the following:

        • RESERVED – The player session request has been received, but the player has not yet connected to the server process and/or been validated.

        • ACTIVE – The player has been validated by the server process and is currently connected.

        • COMPLETED – The player connection has been dropped.

        • TIMEDOUT – A player session request was received, but the player did not connect and/or was not validated within the time-out limit (60 seconds).

        " } }, "PortNumber": { "base": null, "refs": { "GameSession$Port": "

        Port number for the game session. To connect to a GameLift server process, an app needs both the IP address and port number.

        ", "IpPermission$FromPort": "

        Starting value for a range of allowed port numbers.

        ", "IpPermission$ToPort": "

        Ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort.

        ", "PlayerSession$Port": "

        Port number for the game session. To connect to a GameLift server process, an app needs both the IP address and port number.

        " } }, "PositiveInteger": { "base": null, "refs": { "DescribeFleetAttributesInput$Limit": "

        Maximum number of results to return. Use this parameter with NextToken to get results as a set of sequential pages. This parameter is ignored when the request specifies one or a list of fleet IDs.

        ", "DescribeFleetCapacityInput$Limit": "

        Maximum number of results to return. Use this parameter with NextToken to get results as a set of sequential pages. This parameter is ignored when the request specifies one or a list of fleet IDs.

        ", "DescribeFleetEventsInput$Limit": "

        Maximum number of results to return. Use this parameter with NextToken to get results as a set of sequential pages.

        ", "DescribeFleetUtilizationInput$Limit": "

        Maximum number of results to return. Use this parameter with NextToken to get results as a set of sequential pages. This parameter is ignored when the request specifies one or a list of fleet IDs.

        ", "DescribeGameSessionDetailsInput$Limit": "

        Maximum number of results to return. Use this parameter with NextToken to get results as a set of sequential pages.

        ", "DescribeGameSessionsInput$Limit": "

        Maximum number of results to return. Use this parameter with NextToken to get results as a set of sequential pages.

        ", "DescribeInstancesInput$Limit": "

        Maximum number of results to return. Use this parameter with NextToken to get results as a set of sequential pages.

        ", "DescribePlayerSessionsInput$Limit": "

        Maximum number of results to return. Use this parameter with NextToken to get results as a set of sequential pages. If a player session ID is specified, this parameter is ignored.

        ", "DescribeScalingPoliciesInput$Limit": "

        Maximum number of results to return. Use this parameter with NextToken to get results as a set of sequential pages.

        ", "ListAliasesInput$Limit": "

        Maximum number of results to return. Use this parameter with NextToken to get results as a set of sequential pages.

        ", "ListBuildsInput$Limit": "

        Maximum number of results to return. Use this parameter with NextToken to get results as a set of sequential pages.

        ", "ListFleetsInput$Limit": "

        Maximum number of results to return. Use this parameter with NextToken to get results as a set of sequential pages.

        ", "PutScalingPolicyInput$EvaluationPeriods": "

        Length of time (in minutes) the metric must be at or beyond the threshold before a scaling event is triggered.

        ", "ScalingPolicy$EvaluationPeriods": "

        Length of time (in minutes) the metric must be at or beyond the threshold before a scaling event is triggered.

        ", "SearchGameSessionsInput$Limit": "

        Maximum number of results to return. Use this parameter with NextToken to get results as a set of sequential pages. The maximum number of results returned is 20, even if this value is not set or is set higher than 20.

        ", "ServerProcess$ConcurrentExecutions": "

        Number of server processes using this configuration to run concurrently on an instance.

        " } }, "PositiveLong": { "base": null, "refs": { "Build$SizeOnDisk": "

        File size of the uploaded game build, expressed in bytes. When the build status is INITIALIZED, this value is 0.

        " } }, "ProtectionPolicy": { "base": null, "refs": { "CreateFleetInput$NewGameSessionProtectionPolicy": "

        Game session protection policy to apply to all instances in this fleet. If this parameter is not set, instances in this fleet default to no protection. You can change a fleet's protection policy using UpdateFleetAttributes, but this change will only affect sessions created after the policy change. You can also set protection for individual instances using UpdateGameSession.

        • NoProtection – The game session can be terminated during a scale-down event.

        • FullProtection – If the game session is in an ACTIVE status, it cannot be terminated during a scale-down event.

        ", "FleetAttributes$NewGameSessionProtectionPolicy": "

        Type of game session protection to set for all new instances started in the fleet.

        • NoProtection – The game session can be terminated during a scale-down event.

        • FullProtection – If the game session is in an ACTIVE status, it cannot be terminated during a scale-down event.

        ", "GameSessionDetail$ProtectionPolicy": "

        Current status of protection for the game session.

        • NoProtection – The game session can be terminated during a scale-down event.

        • FullProtection – If the game session is in an ACTIVE status, it cannot be terminated during a scale-down event.

        ", "UpdateFleetAttributesInput$NewGameSessionProtectionPolicy": "

        Game session protection policy to apply to all new instances created in this fleet. Instances that already exist are not affected. You can set protection for individual instances using UpdateGameSession.

        • NoProtection – The game session can be terminated during a scale-down event.

        • FullProtection – If the game session is in an ACTIVE status, it cannot be terminated during a scale-down event.

        ", "UpdateGameSessionInput$ProtectionPolicy": "

        Game session protection policy to apply to this game session only.

        • NoProtection – The game session can be terminated during a scale-down event.

        • FullProtection – If the game session is in an ACTIVE status, it cannot be terminated during a scale-down event.

        " } }, "PutScalingPolicyInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "PutScalingPolicyOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "RequestUploadCredentialsInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "RequestUploadCredentialsOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "ResolveAliasInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "ResolveAliasOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "ResourceCreationLimitPolicy": { "base": "

        Policy that limits the number of game sessions a player can create on the same fleet. This optional policy gives game owners control over how players can consume available game server resources. A resource creation policy makes the following statement: \"An individual player can create a maximum number of new game sessions within a specified time period\".

        The policy is evaluated when a player tries to create a new game session. For example, with a policy of 10 new game sessions and a time period of 60 minutes, on receiving a CreateGameSession request, GameLift checks that the player (identified by CreatorId) has created fewer than 10 game sessions in the past 60 minutes.

        ", "refs": { "CreateFleetInput$ResourceCreationLimitPolicy": "

        Policy that limits the number of game sessions an individual player can create over a span of time for this fleet.

        ", "FleetAttributes$ResourceCreationLimitPolicy": "

        Fleet policy to limit the number of game sessions an individual player can create over a span of time.

        ", "UpdateFleetAttributesInput$ResourceCreationLimitPolicy": "

        Policy that limits the number of game sessions an individual player can create over a span of time.

        " } }, "RoutingStrategy": { "base": "

        Routing configuration for a fleet alias.

        ", "refs": { "Alias$RoutingStrategy": null, "CreateAliasInput$RoutingStrategy": "

        Object specifying the fleet and routing type to use for the alias.

        ", "UpdateAliasInput$RoutingStrategy": "

        Object specifying the fleet and routing type to use for the alias.

        " } }, "RoutingStrategyType": { "base": null, "refs": { "ListAliasesInput$RoutingStrategyType": "

        Type of routing to filter results on. Use this parameter to retrieve only aliases of a certain type. To retrieve all aliases, leave this parameter empty.

        Possible routing types include the following:

        • SIMPLE – The alias resolves to one specific fleet. Use this type when routing to active fleets.

        • TERMINAL – The alias does not resolve to a fleet but instead can be used to display a message to the user. A terminal alias throws a TerminalRoutingStrategyException with the RoutingStrategy message embedded.

        ", "RoutingStrategy$Type": "

        Type of routing strategy.

        Possible routing types include the following:

        • SIMPLE – The alias resolves to one specific fleet. Use this type when routing to active fleets.

        • TERMINAL – The alias does not resolve to a fleet but instead can be used to display a message to the user. A terminal alias throws a TerminalRoutingStrategyException with the RoutingStrategy message embedded.

        " } }, "RuntimeConfiguration": { "base": "

        Collection of server process configurations that describe what processes should be run on each instance in a fleet. An instance can launch and maintain multiple server processes based on the runtime configuration; it regularly checks for an updated runtime configuration and starts new server processes to match the latest version.

        The key purpose of a runtime configuration with multiple server process configurations is to be able to run more than one kind of game server in a single fleet. You can include configurations for more than one server executable in order to run two or more different programs to run on the same instance. This option might be useful, for example, to run more than one version of your game server on the same fleet. Another option is to specify configurations for the same server executable but with different launch parameters.

        A GameLift instance is limited to 50 processes running simultaneously. To calculate the total number of processes specified in a runtime configuration, add the values of the ConcurrentExecutions parameter for each ServerProcess object in the runtime configuration.

        ", "refs": { "CreateFleetInput$RuntimeConfiguration": "

        Instructions for launching server processes on each instance in the fleet. The runtime configuration for a fleet has a collection of server process configurations, one for each type of server process to run on an instance. A server process configuration specifies the location of the server executable, launch parameters, and the number of concurrent processes with that configuration to maintain on each instance. A CreateFleet request must include a runtime configuration with at least one server process configuration; otherwise the request will fail with an invalid request exception. (This parameter replaces the parameters ServerLaunchPath and ServerLaunchParameters; requests that contain values for these parameters instead of a runtime configuration will continue to work.)

        ", "DescribeRuntimeConfigurationOutput$RuntimeConfiguration": "

        Instructions describing how server processes should be launched and maintained on each instance in the fleet.

        ", "UpdateRuntimeConfigurationInput$RuntimeConfiguration": "

        Instructions for launching server processes on each instance in the fleet. The runtime configuration for a fleet has a collection of server process configurations, one for each type of server process to run on an instance. A server process configuration specifies the location of the server executable, launch parameters, and the number of concurrent processes with that configuration to maintain on each instance.

        ", "UpdateRuntimeConfigurationOutput$RuntimeConfiguration": "

        The runtime configuration currently in force. If the update was successful, this object matches the one in the request.

        " } }, "S3Location": { "base": "

        Location in Amazon Simple Storage Service (Amazon S3) where a build's files are stored. This location is assigned in response to a CreateBuild call, and is always in the same region as the service used to create the build. For more details see the Amazon S3 documentation.

        ", "refs": { "CreateBuildInput$StorageLocation": null, "CreateBuildOutput$StorageLocation": "

        Amazon S3 path and key, identifying where the game build files are stored.

        ", "RequestUploadCredentialsOutput$StorageLocation": "

        Amazon S3 path and key, identifying where the game build files are stored.

        " } }, "ScalingAdjustmentType": { "base": null, "refs": { "PutScalingPolicyInput$ScalingAdjustmentType": "

        Type of adjustment to make to a fleet's instance count (see FleetCapacity):

        • ChangeInCapacity – add (or subtract) the scaling adjustment value from the current instance count. Positive values scale up while negative values scale down.

        • ExactCapacity – set the instance count to the scaling adjustment value.

        • PercentChangeInCapacity – increase or reduce the current instance count by the scaling adjustment, read as a percentage. Positive values scale up while negative values scale down; for example, a value of \"-10\" scales the fleet down by 10%.

        ", "ScalingPolicy$ScalingAdjustmentType": "

        Type of adjustment to make to a fleet's instance count (see FleetCapacity):

        • ChangeInCapacity – add (or subtract) the scaling adjustment value from the current instance count. Positive values scale up while negative values scale down.

        • ExactCapacity – set the instance count to the scaling adjustment value.

        • PercentChangeInCapacity – increase or reduce the current instance count by the scaling adjustment, read as a percentage. Positive values scale up while negative values scale down.

        " } }, "ScalingPolicy": { "base": "

        Rule that controls how a fleet is scaled. Scaling policies are uniquely identified by the combination of name and fleet ID.

        ", "refs": { "ScalingPolicyList$member": null } }, "ScalingPolicyList": { "base": null, "refs": { "DescribeScalingPoliciesOutput$ScalingPolicies": "

        Collection of objects containing the scaling policies matching the request.

        " } }, "ScalingStatusType": { "base": null, "refs": { "DescribeScalingPoliciesInput$StatusFilter": "

        Scaling policy status to filter results on. A scaling policy is only in force when in an ACTIVE status.

        • ACTIVE – The scaling policy is currently in force.

        • UPDATEREQUESTED – A request to update the scaling policy has been received.

        • UPDATING – A change is being made to the scaling policy.

        • DELETEREQUESTED – A request to delete the scaling policy has been received.

        • DELETING – The scaling policy is being deleted.

        • DELETED – The scaling policy has been deleted.

        • ERROR – An error occurred in creating the policy. It should be removed and recreated.

        ", "ScalingPolicy$Status": "

        Current status of the scaling policy. The scaling policy is only in force when in an ACTIVE status.

        • ACTIVE – The scaling policy is currently in force.

        • UPDATE_REQUESTED – A request to update the scaling policy has been received.

        • UPDATING – A change is being made to the scaling policy.

        • DELETE_REQUESTED – A request to delete the scaling policy has been received.

        • DELETING – The scaling policy is being deleted.

        • DELETED – The scaling policy has been deleted.

        • ERROR – An error occurred in creating the policy. It should be removed and recreated.

        " } }, "SearchGameSessionsInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "SearchGameSessionsOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "ServerProcess": { "base": "

        A set of instructions for launching server processes on each instance in a fleet. Each instruction set identifies the location of the server executable, optional launch parameters, and the number of server processes with this configuration to maintain concurrently on the instance. Server process configurations make up a fleet's RuntimeConfiguration .

        ", "refs": { "ServerProcessList$member": null } }, "ServerProcessList": { "base": null, "refs": { "RuntimeConfiguration$ServerProcesses": "

        Collection of server process configurations describing what server processes to run on each instance in a fleet

        " } }, "StringList": { "base": null, "refs": { "CreateFleetInput$LogPaths": "

        Location of default log files. When a server process is shut down, Amazon GameLift captures and stores any log files in this location. These logs are in addition to game session logs; see more on game session logs in the Amazon GameLift Developer Guide. If no default log path for a fleet is specified, GameLift will automatically upload logs stored on each instance at C:\\game\\logs. Use the GameLift console to access stored logs.

        ", "FleetAttributes$LogPaths": "

        Location of default log files. When a server process is shut down, Amazon GameLift captures and stores any log files in this location. These logs are in addition to game session logs; see more on game session logs in the Amazon GameLift Developer Guide. If no default log path for a fleet is specified, GameLift will automatically upload logs stored on each instance at C:\\game\\logs. Use the GameLift console to access stored logs.

        " } }, "TerminalRoutingStrategyException": { "base": "

        The service is unable to resolve the routing for a particular alias because it has a terminal RoutingStrategy associated with it. The message returned in this exception is the message defined in the routing strategy itself. Such requests should only be retried if the routing strategy for the specified alias is modified.

        ", "refs": { } }, "Timestamp": { "base": null, "refs": { "Alias$CreationTime": "

        Time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (ex: \"1469498468.057\".

        ", "Alias$LastUpdatedTime": "

        Time stamp indicating when this data object was last modified. Format is a number expressed in Unix time as milliseconds (ex: \"1469498468.057\".

        ", "Build$CreationTime": "

        Time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (ex: \"1469498468.057\".

        ", "DescribeFleetEventsInput$StartTime": "

        Earliest date to retrieve event logs for. If no start time is specified, this call returns entries starting from when the fleet was created to the specified end time. Format is a number expressed in Unix time as milliseconds (ex: \"1469498468.057\".

        ", "DescribeFleetEventsInput$EndTime": "

        Most recent date to retrieve event logs for. If no end time is specified, this call returns entries from the specified start time up to the present. Format is a number expressed in Unix time as milliseconds (ex: \"1469498468.057\".

        ", "Event$EventTime": "

        Time stamp indicating when this event occurred. Format is a number expressed in Unix time as milliseconds (ex: \"1469498468.057\".

        ", "FleetAttributes$CreationTime": "

        Time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (ex: \"1469498468.057\".

        ", "FleetAttributes$TerminationTime": "

        Time stamp indicating when this data object was terminated. Format is a number expressed in Unix time as milliseconds (ex: \"1469498468.057\".

        ", "GameSession$CreationTime": "

        Time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (ex: \"1469498468.057\".

        ", "GameSession$TerminationTime": "

        Time stamp indicating when this data object was terminated. Format is a number expressed in Unix time as milliseconds (ex: \"1469498468.057\".

        ", "Instance$CreationTime": "

        Time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (ex: \"1469498468.057\").

        ", "PlayerSession$CreationTime": "

        Time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (ex: \"1469498468.057\".

        ", "PlayerSession$TerminationTime": "

        Time stamp indicating when this data object was terminated. Format is a number expressed in Unix time as milliseconds (ex: \"1469498468.057\".

        " } }, "UnauthorizedException": { "base": "

        The client failed authentication. Clients should not retry such requests.

        ", "refs": { } }, "UpdateAliasInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "UpdateAliasOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "UpdateBuildInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "UpdateBuildOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "UpdateFleetAttributesInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "UpdateFleetAttributesOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "UpdateFleetCapacityInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "UpdateFleetCapacityOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "UpdateFleetPortSettingsInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "UpdateFleetPortSettingsOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "UpdateGameSessionInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "UpdateGameSessionOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "UpdateRuntimeConfigurationInput": { "base": "

        Represents the input for a request action.

        ", "refs": { } }, "UpdateRuntimeConfigurationOutput": { "base": "

        Represents the returned data in response to a request action.

        ", "refs": { } }, "WholeNumber": { "base": null, "refs": { "CreateGameSessionInput$MaximumPlayerSessionCount": "

        Maximum number of players that can be connected simultaneously to the game session.

        ", "EC2InstanceCounts$DESIRED": "

        Ideal number of active instances in the fleet.

        ", "EC2InstanceCounts$MINIMUM": "

        Minimum value allowed for the fleet's instance count.

        ", "EC2InstanceCounts$MAXIMUM": "

        Maximum value allowed for the fleet's instance count.

        ", "EC2InstanceCounts$PENDING": "

        Number of instances in the fleet that are starting but not yet active.

        ", "EC2InstanceCounts$ACTIVE": "

        Actual number of active instances in the fleet.

        ", "EC2InstanceCounts$IDLE": "

        Number of active instances in the fleet that are not currently hosting a game session.

        ", "EC2InstanceCounts$TERMINATING": "

        Number of instances in the fleet that are no longer active but haven't yet been terminated.

        ", "EC2InstanceLimit$CurrentInstances": "

        Number of instances of the specified type that are currently in use by this AWS account.

        ", "EC2InstanceLimit$InstanceLimit": "

        Number of instances allowed.

        ", "FleetUtilization$ActiveServerProcessCount": "

        Number of server processes in an ACTIVE status currently running across all instances in the fleet

        ", "FleetUtilization$ActiveGameSessionCount": "

        Number of active game sessions currently being hosted on all instances in the fleet.

        ", "FleetUtilization$CurrentPlayerSessionCount": "

        Number of active player sessions currently being hosted on all instances in the fleet.

        ", "FleetUtilization$MaximumPlayerSessionCount": "

        Maximum players allowed across all game sessions currently being hosted on all instances in the fleet.

        ", "GameSession$CurrentPlayerSessionCount": "

        Number of players currently in the game session.

        ", "GameSession$MaximumPlayerSessionCount": "

        Maximum number of players allowed in the game session.

        ", "ResourceCreationLimitPolicy$NewGameSessionsPerCreator": "

        Maximum number of game sessions an individual can create during the policy period.

        ", "ResourceCreationLimitPolicy$PolicyPeriodInMinutes": "

        Time span used to evaluate the resource creation limit policy.

        ", "UpdateFleetCapacityInput$DesiredInstances": "

        Number of EC2 instances you want this fleet to host.

        ", "UpdateFleetCapacityInput$MinSize": "

        Minimum value allowed for the fleet's instance count. Default if not set is 0.

        ", "UpdateFleetCapacityInput$MaxSize": "

        Maximum value allowed for the fleet's instance count. Default if not set is 1.

        ", "UpdateGameSessionInput$MaximumPlayerSessionCount": "

        Maximum number of players that can be simultaneously connected to the game session.

        " } } } } aws-sdk-go-1.4.22/models/apis/gamelift/2015-10-01/examples-1.json000066400000000000000000000000541300374646400234630ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/glacier/000077500000000000000000000000001300374646400174105ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/glacier/2012-06-01/000077500000000000000000000000001300374646400204355ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/glacier/2012-06-01/api-2.json000066400000000000000000001532711300374646400222510ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2012-06-01", "checksumFormat":"sha256", "endpointPrefix":"glacier", "serviceFullName":"Amazon Glacier", "signatureVersion":"v4", "protocol":"rest-json" }, "operations":{ "AbortMultipartUpload":{ "name":"AbortMultipartUpload", "http":{ "method":"DELETE", "requestUri":"/{accountId}/vaults/{vaultName}/multipart-uploads/{uploadId}", "responseCode":204 }, "input":{"shape":"AbortMultipartUploadInput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "AbortVaultLock":{ "name":"AbortVaultLock", "http":{ "method":"DELETE", "requestUri":"/{accountId}/vaults/{vaultName}/lock-policy", "responseCode":204 }, "input":{"shape":"AbortVaultLockInput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "AddTagsToVault":{ "name":"AddTagsToVault", "http":{ "method":"POST", "requestUri":"/{accountId}/vaults/{vaultName}/tags?operation=add", "responseCode":204 }, "input":{"shape":"AddTagsToVaultInput"}, "errors":[ { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"LimitExceededException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "CompleteMultipartUpload":{ "name":"CompleteMultipartUpload", "http":{ "method":"POST", "requestUri":"/{accountId}/vaults/{vaultName}/multipart-uploads/{uploadId}", "responseCode":201 }, "input":{"shape":"CompleteMultipartUploadInput"}, "output":{"shape":"ArchiveCreationOutput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "CompleteVaultLock":{ "name":"CompleteVaultLock", "http":{ "method":"POST", "requestUri":"/{accountId}/vaults/{vaultName}/lock-policy/{lockId}", "responseCode":204 }, "input":{"shape":"CompleteVaultLockInput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "CreateVault":{ "name":"CreateVault", "http":{ "method":"PUT", "requestUri":"/{accountId}/vaults/{vaultName}", "responseCode":201 }, "input":{"shape":"CreateVaultInput"}, "output":{"shape":"CreateVaultOutput"}, "errors":[ { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true }, { "shape":"LimitExceededException", "error":{"httpStatusCode":400}, "exception":true } ] }, "DeleteArchive":{ "name":"DeleteArchive", "http":{ "method":"DELETE", "requestUri":"/{accountId}/vaults/{vaultName}/archives/{archiveId}", "responseCode":204 }, "input":{"shape":"DeleteArchiveInput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "DeleteVault":{ "name":"DeleteVault", "http":{ "method":"DELETE", "requestUri":"/{accountId}/vaults/{vaultName}", "responseCode":204 }, "input":{"shape":"DeleteVaultInput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "DeleteVaultAccessPolicy":{ "name":"DeleteVaultAccessPolicy", "http":{ "method":"DELETE", "requestUri":"/{accountId}/vaults/{vaultName}/access-policy", "responseCode":204 }, "input":{"shape":"DeleteVaultAccessPolicyInput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "DeleteVaultNotifications":{ "name":"DeleteVaultNotifications", "http":{ "method":"DELETE", "requestUri":"/{accountId}/vaults/{vaultName}/notification-configuration", "responseCode":204 }, "input":{"shape":"DeleteVaultNotificationsInput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "DescribeJob":{ "name":"DescribeJob", "http":{ "method":"GET", "requestUri":"/{accountId}/vaults/{vaultName}/jobs/{jobId}" }, "input":{"shape":"DescribeJobInput"}, "output":{"shape":"GlacierJobDescription"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "DescribeVault":{ "name":"DescribeVault", "http":{ "method":"GET", "requestUri":"/{accountId}/vaults/{vaultName}" }, "input":{"shape":"DescribeVaultInput"}, "output":{"shape":"DescribeVaultOutput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "GetDataRetrievalPolicy":{ "name":"GetDataRetrievalPolicy", "http":{ "method":"GET", "requestUri":"/{accountId}/policies/data-retrieval" }, "input":{"shape":"GetDataRetrievalPolicyInput"}, "output":{"shape":"GetDataRetrievalPolicyOutput"}, "errors":[ { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "GetJobOutput":{ "name":"GetJobOutput", "http":{ "method":"GET", "requestUri":"/{accountId}/vaults/{vaultName}/jobs/{jobId}/output" }, "input":{"shape":"GetJobOutputInput"}, "output":{"shape":"GetJobOutputOutput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "GetVaultAccessPolicy":{ "name":"GetVaultAccessPolicy", "http":{ "method":"GET", "requestUri":"/{accountId}/vaults/{vaultName}/access-policy" }, "input":{"shape":"GetVaultAccessPolicyInput"}, "output":{"shape":"GetVaultAccessPolicyOutput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "GetVaultLock":{ "name":"GetVaultLock", "http":{ "method":"GET", "requestUri":"/{accountId}/vaults/{vaultName}/lock-policy" }, "input":{"shape":"GetVaultLockInput"}, "output":{"shape":"GetVaultLockOutput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "GetVaultNotifications":{ "name":"GetVaultNotifications", "http":{ "method":"GET", "requestUri":"/{accountId}/vaults/{vaultName}/notification-configuration" }, "input":{"shape":"GetVaultNotificationsInput"}, "output":{"shape":"GetVaultNotificationsOutput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "InitiateJob":{ "name":"InitiateJob", "http":{ "method":"POST", "requestUri":"/{accountId}/vaults/{vaultName}/jobs", "responseCode":202 }, "input":{"shape":"InitiateJobInput"}, "output":{"shape":"InitiateJobOutput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"PolicyEnforcedException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "InitiateMultipartUpload":{ "name":"InitiateMultipartUpload", "http":{ "method":"POST", "requestUri":"/{accountId}/vaults/{vaultName}/multipart-uploads", "responseCode":201 }, "input":{"shape":"InitiateMultipartUploadInput"}, "output":{"shape":"InitiateMultipartUploadOutput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "InitiateVaultLock":{ "name":"InitiateVaultLock", "http":{ "method":"POST", "requestUri":"/{accountId}/vaults/{vaultName}/lock-policy", "responseCode":201 }, "input":{"shape":"InitiateVaultLockInput"}, "output":{"shape":"InitiateVaultLockOutput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "ListJobs":{ "name":"ListJobs", "http":{ "method":"GET", "requestUri":"/{accountId}/vaults/{vaultName}/jobs" }, "input":{"shape":"ListJobsInput"}, "output":{"shape":"ListJobsOutput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "ListMultipartUploads":{ "name":"ListMultipartUploads", "http":{ "method":"GET", "requestUri":"/{accountId}/vaults/{vaultName}/multipart-uploads" }, "input":{"shape":"ListMultipartUploadsInput"}, "output":{"shape":"ListMultipartUploadsOutput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "ListParts":{ "name":"ListParts", "http":{ "method":"GET", "requestUri":"/{accountId}/vaults/{vaultName}/multipart-uploads/{uploadId}" }, "input":{"shape":"ListPartsInput"}, "output":{"shape":"ListPartsOutput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "ListTagsForVault":{ "name":"ListTagsForVault", "http":{ "method":"GET", "requestUri":"/{accountId}/vaults/{vaultName}/tags" }, "input":{"shape":"ListTagsForVaultInput"}, "output":{"shape":"ListTagsForVaultOutput"}, "errors":[ { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "ListVaults":{ "name":"ListVaults", "http":{ "method":"GET", "requestUri":"/{accountId}/vaults" }, "input":{"shape":"ListVaultsInput"}, "output":{"shape":"ListVaultsOutput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "RemoveTagsFromVault":{ "name":"RemoveTagsFromVault", "http":{ "method":"POST", "requestUri":"/{accountId}/vaults/{vaultName}/tags?operation=remove", "responseCode":204 }, "input":{"shape":"RemoveTagsFromVaultInput"}, "errors":[ { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "SetDataRetrievalPolicy":{ "name":"SetDataRetrievalPolicy", "http":{ "method":"PUT", "requestUri":"/{accountId}/policies/data-retrieval", "responseCode":204 }, "input":{"shape":"SetDataRetrievalPolicyInput"}, "errors":[ { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "SetVaultAccessPolicy":{ "name":"SetVaultAccessPolicy", "http":{ "method":"PUT", "requestUri":"/{accountId}/vaults/{vaultName}/access-policy", "responseCode":204 }, "input":{"shape":"SetVaultAccessPolicyInput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "SetVaultNotifications":{ "name":"SetVaultNotifications", "http":{ "method":"PUT", "requestUri":"/{accountId}/vaults/{vaultName}/notification-configuration", "responseCode":204 }, "input":{"shape":"SetVaultNotificationsInput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "UploadArchive":{ "name":"UploadArchive", "http":{ "method":"POST", "requestUri":"/{accountId}/vaults/{vaultName}/archives", "responseCode":201 }, "input":{"shape":"UploadArchiveInput"}, "output":{"shape":"ArchiveCreationOutput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"RequestTimeoutException", "error":{"httpStatusCode":408}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] }, "UploadMultipartPart":{ "name":"UploadMultipartPart", "http":{ "method":"PUT", "requestUri":"/{accountId}/vaults/{vaultName}/multipart-uploads/{uploadId}", "responseCode":204 }, "input":{"shape":"UploadMultipartPartInput"}, "output":{"shape":"UploadMultipartPartOutput"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"MissingParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"RequestTimeoutException", "error":{"httpStatusCode":408}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":500}, "exception":true } ] } }, "shapes":{ "AbortMultipartUploadInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" }, "uploadId":{ "shape":"string", "location":"uri", "locationName":"uploadId" } }, "required":[ "accountId", "vaultName", "uploadId" ] }, "AbortVaultLockInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" } }, "required":[ "accountId", "vaultName" ] }, "ActionCode":{ "type":"string", "enum":[ "ArchiveRetrieval", "InventoryRetrieval" ] }, "AddTagsToVaultInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" }, "Tags":{"shape":"TagMap"} }, "required":[ "accountId", "vaultName" ] }, "ArchiveCreationOutput":{ "type":"structure", "members":{ "location":{ "shape":"string", "location":"header", "locationName":"Location" }, "checksum":{ "shape":"string", "location":"header", "locationName":"x-amz-sha256-tree-hash" }, "archiveId":{ "shape":"string", "location":"header", "locationName":"x-amz-archive-id" } } }, "CompleteMultipartUploadInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" }, "uploadId":{ "shape":"string", "location":"uri", "locationName":"uploadId" }, "archiveSize":{ "shape":"string", "location":"header", "locationName":"x-amz-archive-size" }, "checksum":{ "shape":"string", "location":"header", "locationName":"x-amz-sha256-tree-hash" } }, "required":[ "accountId", "vaultName", "uploadId" ] }, "CompleteVaultLockInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" }, "lockId":{ "shape":"string", "location":"uri", "locationName":"lockId" } }, "required":[ "accountId", "vaultName", "lockId" ] }, "CreateVaultInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" } }, "required":[ "accountId", "vaultName" ] }, "CreateVaultOutput":{ "type":"structure", "members":{ "location":{ "shape":"string", "location":"header", "locationName":"Location" } } }, "DataRetrievalPolicy":{ "type":"structure", "members":{ "Rules":{"shape":"DataRetrievalRulesList"} } }, "DataRetrievalRule":{ "type":"structure", "members":{ "Strategy":{"shape":"string"}, "BytesPerHour":{"shape":"NullableLong"} } }, "DataRetrievalRulesList":{ "type":"list", "member":{"shape":"DataRetrievalRule"} }, "DateTime":{"type":"string"}, "DeleteArchiveInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" }, "archiveId":{ "shape":"string", "location":"uri", "locationName":"archiveId" } }, "required":[ "accountId", "vaultName", "archiveId" ] }, "DeleteVaultAccessPolicyInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" } }, "required":[ "accountId", "vaultName" ] }, "DeleteVaultInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" } }, "required":[ "accountId", "vaultName" ] }, "DeleteVaultNotificationsInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" } }, "required":[ "accountId", "vaultName" ] }, "DescribeJobInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" }, "jobId":{ "shape":"string", "location":"uri", "locationName":"jobId" } }, "required":[ "accountId", "vaultName", "jobId" ] }, "DescribeVaultInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" } }, "required":[ "accountId", "vaultName" ] }, "DescribeVaultOutput":{ "type":"structure", "members":{ "VaultARN":{"shape":"string"}, "VaultName":{"shape":"string"}, "CreationDate":{"shape":"string"}, "LastInventoryDate":{"shape":"string"}, "NumberOfArchives":{"shape":"long"}, "SizeInBytes":{"shape":"long"} } }, "GetDataRetrievalPolicyInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" } }, "required":["accountId"] }, "GetDataRetrievalPolicyOutput":{ "type":"structure", "members":{ "Policy":{"shape":"DataRetrievalPolicy"} } }, "GetJobOutputInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" }, "jobId":{ "shape":"string", "location":"uri", "locationName":"jobId" }, "range":{ "shape":"string", "location":"header", "locationName":"Range" } }, "required":[ "accountId", "vaultName", "jobId" ] }, "GetJobOutputOutput":{ "type":"structure", "members":{ "body":{"shape":"Stream"}, "checksum":{ "shape":"string", "location":"header", "locationName":"x-amz-sha256-tree-hash" }, "status":{ "shape":"httpstatus", "location":"statusCode" }, "contentRange":{ "shape":"string", "location":"header", "locationName":"Content-Range" }, "acceptRanges":{ "shape":"string", "location":"header", "locationName":"Accept-Ranges" }, "contentType":{ "shape":"string", "location":"header", "locationName":"Content-Type" }, "archiveDescription":{ "shape":"string", "location":"header", "locationName":"x-amz-archive-description" } }, "payload":"body" }, "GetVaultAccessPolicyInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" } }, "required":[ "accountId", "vaultName" ] }, "GetVaultAccessPolicyOutput":{ "type":"structure", "members":{ "policy":{"shape":"VaultAccessPolicy"} }, "payload":"policy" }, "GetVaultLockInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" } }, "required":[ "accountId", "vaultName" ] }, "GetVaultLockOutput":{ "type":"structure", "members":{ "Policy":{"shape":"string"}, "State":{"shape":"string"}, "ExpirationDate":{"shape":"string"}, "CreationDate":{"shape":"string"} } }, "GetVaultNotificationsInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" } }, "required":[ "accountId", "vaultName" ] }, "GetVaultNotificationsOutput":{ "type":"structure", "members":{ "vaultNotificationConfig":{"shape":"VaultNotificationConfig"} }, "payload":"vaultNotificationConfig" }, "GlacierJobDescription":{ "type":"structure", "members":{ "JobId":{"shape":"string"}, "JobDescription":{"shape":"string"}, "Action":{"shape":"ActionCode"}, "ArchiveId":{"shape":"string"}, "VaultARN":{"shape":"string"}, "CreationDate":{"shape":"string"}, "Completed":{"shape":"boolean"}, "StatusCode":{"shape":"StatusCode"}, "StatusMessage":{"shape":"string"}, "ArchiveSizeInBytes":{"shape":"Size"}, "InventorySizeInBytes":{"shape":"Size"}, "SNSTopic":{"shape":"string"}, "CompletionDate":{"shape":"string"}, "SHA256TreeHash":{"shape":"string"}, "ArchiveSHA256TreeHash":{"shape":"string"}, "RetrievalByteRange":{"shape":"string"}, "InventoryRetrievalParameters":{"shape":"InventoryRetrievalJobDescription"} } }, "InitiateJobInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" }, "jobParameters":{"shape":"JobParameters"} }, "required":[ "accountId", "vaultName" ], "payload":"jobParameters" }, "InitiateJobOutput":{ "type":"structure", "members":{ "location":{ "shape":"string", "location":"header", "locationName":"Location" }, "jobId":{ "shape":"string", "location":"header", "locationName":"x-amz-job-id" } } }, "InitiateMultipartUploadInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" }, "archiveDescription":{ "shape":"string", "location":"header", "locationName":"x-amz-archive-description" }, "partSize":{ "shape":"string", "location":"header", "locationName":"x-amz-part-size" } }, "required":[ "accountId", "vaultName" ] }, "InitiateMultipartUploadOutput":{ "type":"structure", "members":{ "location":{ "shape":"string", "location":"header", "locationName":"Location" }, "uploadId":{ "shape":"string", "location":"header", "locationName":"x-amz-multipart-upload-id" } } }, "InitiateVaultLockInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" }, "policy":{"shape":"VaultLockPolicy"} }, "required":[ "accountId", "vaultName" ], "payload":"policy" }, "InitiateVaultLockOutput":{ "type":"structure", "members":{ "lockId":{ "shape":"string", "location":"header", "locationName":"x-amz-lock-id" } } }, "InvalidParameterValueException":{ "type":"structure", "members":{ "type":{"shape":"string"}, "code":{"shape":"string"}, "message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "InventoryRetrievalJobDescription":{ "type":"structure", "members":{ "Format":{"shape":"string"}, "StartDate":{"shape":"DateTime"}, "EndDate":{"shape":"DateTime"}, "Limit":{"shape":"string"}, "Marker":{"shape":"string"} } }, "InventoryRetrievalJobInput":{ "type":"structure", "members":{ "StartDate":{"shape":"string"}, "EndDate":{"shape":"string"}, "Limit":{"shape":"string"}, "Marker":{"shape":"string"} } }, "JobList":{ "type":"list", "member":{"shape":"GlacierJobDescription"} }, "JobParameters":{ "type":"structure", "members":{ "Format":{"shape":"string"}, "Type":{"shape":"string"}, "ArchiveId":{"shape":"string"}, "Description":{"shape":"string"}, "SNSTopic":{"shape":"string"}, "RetrievalByteRange":{"shape":"string"}, "InventoryRetrievalParameters":{"shape":"InventoryRetrievalJobInput"} } }, "LimitExceededException":{ "type":"structure", "members":{ "type":{"shape":"string"}, "code":{"shape":"string"}, "message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "ListJobsInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" }, "limit":{ "shape":"string", "location":"querystring", "locationName":"limit" }, "marker":{ "shape":"string", "location":"querystring", "locationName":"marker" }, "statuscode":{ "shape":"string", "location":"querystring", "locationName":"statuscode" }, "completed":{ "shape":"string", "location":"querystring", "locationName":"completed" } }, "required":[ "accountId", "vaultName" ] }, "ListJobsOutput":{ "type":"structure", "members":{ "JobList":{"shape":"JobList"}, "Marker":{"shape":"string"} } }, "ListMultipartUploadsInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" }, "marker":{ "shape":"string", "location":"querystring", "locationName":"marker" }, "limit":{ "shape":"string", "location":"querystring", "locationName":"limit" } }, "required":[ "accountId", "vaultName" ] }, "ListMultipartUploadsOutput":{ "type":"structure", "members":{ "UploadsList":{"shape":"UploadsList"}, "Marker":{"shape":"string"} } }, "ListPartsInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" }, "uploadId":{ "shape":"string", "location":"uri", "locationName":"uploadId" }, "marker":{ "shape":"string", "location":"querystring", "locationName":"marker" }, "limit":{ "shape":"string", "location":"querystring", "locationName":"limit" } }, "required":[ "accountId", "vaultName", "uploadId" ] }, "ListPartsOutput":{ "type":"structure", "members":{ "MultipartUploadId":{"shape":"string"}, "VaultARN":{"shape":"string"}, "ArchiveDescription":{"shape":"string"}, "PartSizeInBytes":{"shape":"long"}, "CreationDate":{"shape":"string"}, "Parts":{"shape":"PartList"}, "Marker":{"shape":"string"} } }, "ListTagsForVaultInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" } }, "required":[ "accountId", "vaultName" ] }, "ListTagsForVaultOutput":{ "type":"structure", "members":{ "Tags":{"shape":"TagMap"} } }, "ListVaultsInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "marker":{ "shape":"string", "location":"querystring", "locationName":"marker" }, "limit":{ "shape":"string", "location":"querystring", "locationName":"limit" } }, "required":["accountId"] }, "ListVaultsOutput":{ "type":"structure", "members":{ "VaultList":{"shape":"VaultList"}, "Marker":{"shape":"string"} } }, "MissingParameterValueException":{ "type":"structure", "members":{ "type":{"shape":"string"}, "code":{"shape":"string"}, "message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "NotificationEventList":{ "type":"list", "member":{"shape":"string"} }, "NullableLong":{"type":"long"}, "PartList":{ "type":"list", "member":{"shape":"PartListElement"} }, "PartListElement":{ "type":"structure", "members":{ "RangeInBytes":{"shape":"string"}, "SHA256TreeHash":{"shape":"string"} } }, "PolicyEnforcedException":{ "type":"structure", "members":{ "type":{"shape":"string"}, "code":{"shape":"string"}, "message":{"shape":"string"} }, "error":{"httpStatusCode":400}, "exception":true }, "RemoveTagsFromVaultInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" }, "TagKeys":{"shape":"TagKeyList"} }, "required":[ "accountId", "vaultName" ] }, "RequestTimeoutException":{ "type":"structure", "members":{ "type":{"shape":"string"}, "code":{"shape":"string"}, "message":{"shape":"string"} }, "error":{"httpStatusCode":408}, "exception":true }, "ResourceNotFoundException":{ "type":"structure", "members":{ "type":{"shape":"string"}, "code":{"shape":"string"}, "message":{"shape":"string"} }, "error":{"httpStatusCode":404}, "exception":true }, "ServiceUnavailableException":{ "type":"structure", "members":{ "type":{"shape":"string"}, "code":{"shape":"string"}, "message":{"shape":"string"} }, "error":{"httpStatusCode":500}, "exception":true }, "SetDataRetrievalPolicyInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "Policy":{"shape":"DataRetrievalPolicy"} }, "required":["accountId"] }, "SetVaultAccessPolicyInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" }, "policy":{"shape":"VaultAccessPolicy"} }, "required":[ "accountId", "vaultName" ], "payload":"policy" }, "SetVaultNotificationsInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" }, "vaultNotificationConfig":{"shape":"VaultNotificationConfig"} }, "required":[ "accountId", "vaultName" ], "payload":"vaultNotificationConfig" }, "Size":{"type":"long"}, "StatusCode":{ "type":"string", "enum":[ "InProgress", "Succeeded", "Failed" ] }, "Stream":{ "type":"blob", "streaming":true }, "TagKey":{"type":"string"}, "TagKeyList":{ "type":"list", "member":{"shape":"string"} }, "TagMap":{ "type":"map", "key":{"shape":"TagKey"}, "value":{"shape":"TagValue"} }, "TagValue":{"type":"string"}, "UploadArchiveInput":{ "type":"structure", "members":{ "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" }, "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "archiveDescription":{ "shape":"string", "location":"header", "locationName":"x-amz-archive-description" }, "checksum":{ "shape":"string", "location":"header", "locationName":"x-amz-sha256-tree-hash" }, "body":{"shape":"Stream"} }, "required":[ "vaultName", "accountId" ], "payload":"body" }, "UploadListElement":{ "type":"structure", "members":{ "MultipartUploadId":{"shape":"string"}, "VaultARN":{"shape":"string"}, "ArchiveDescription":{"shape":"string"}, "PartSizeInBytes":{"shape":"long"}, "CreationDate":{"shape":"string"} } }, "UploadMultipartPartInput":{ "type":"structure", "members":{ "accountId":{ "shape":"string", "location":"uri", "locationName":"accountId" }, "vaultName":{ "shape":"string", "location":"uri", "locationName":"vaultName" }, "uploadId":{ "shape":"string", "location":"uri", "locationName":"uploadId" }, "checksum":{ "shape":"string", "location":"header", "locationName":"x-amz-sha256-tree-hash" }, "range":{ "shape":"string", "location":"header", "locationName":"Content-Range" }, "body":{"shape":"Stream"} }, "required":[ "accountId", "vaultName", "uploadId" ], "payload":"body" }, "UploadMultipartPartOutput":{ "type":"structure", "members":{ "checksum":{ "shape":"string", "location":"header", "locationName":"x-amz-sha256-tree-hash" } } }, "UploadsList":{ "type":"list", "member":{"shape":"UploadListElement"} }, "VaultAccessPolicy":{ "type":"structure", "members":{ "Policy":{"shape":"string"} } }, "VaultList":{ "type":"list", "member":{"shape":"DescribeVaultOutput"} }, "VaultLockPolicy":{ "type":"structure", "members":{ "Policy":{"shape":"string"} } }, "VaultNotificationConfig":{ "type":"structure", "members":{ "SNSTopic":{"shape":"string"}, "Events":{"shape":"NotificationEventList"} } }, "boolean":{"type":"boolean"}, "httpstatus":{"type":"integer"}, "long":{"type":"long"}, "string":{"type":"string"} } } aws-sdk-go-1.4.22/models/apis/glacier/2012-06-01/docs-2.json000066400000000000000000003216631300374646400224320ustar00rootroot00000000000000{ "version": "2.0", "operations": { "AbortMultipartUpload": "

        This operation aborts a multipart upload identified by the upload ID.

        After the Abort Multipart Upload request succeeds, you cannot upload any more parts to the multipart upload or complete the multipart upload. Aborting a completed upload fails. However, aborting an already-aborted upload will succeed, for a short time. For more information about uploading a part and completing a multipart upload, see UploadMultipartPart and CompleteMultipartUpload.

        This operation is idempotent.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For conceptual information and underlying REST API, go to Working with Archives in Amazon Glacier and Abort Multipart Upload in the Amazon Glacier Developer Guide.

        ", "AbortVaultLock": "

        This operation aborts the vault locking process if the vault lock is not in the Locked state. If the vault lock is in the Locked state when this operation is requested, the operation returns an AccessDeniedException error. Aborting the vault locking process removes the vault lock policy from the specified vault.

        A vault lock is put into the InProgress state by calling InitiateVaultLock. A vault lock is put into the Locked state by calling CompleteVaultLock. You can get the state of a vault lock by calling GetVaultLock. For more information about the vault locking process, see Amazon Glacier Vault Lock. For more information about vault lock policies, see Amazon Glacier Access Control with Vault Lock Policies.

        This operation is idempotent. You can successfully invoke this operation multiple times, if the vault lock is in the InProgress state or if there is no policy associated with the vault.

        ", "AddTagsToVault": "

        This operation adds the specified tags to a vault. Each tag is composed of a key and a value. Each vault can have up to 10 tags. If your request would cause the tag limit for the vault to be exceeded, the operation throws the LimitExceededException error. If a tag already exists on the vault under a specified key, the existing key value will be overwritten. For more information about tags, see Tagging Amazon Glacier Resources.

        ", "CompleteMultipartUpload": "

        You call this operation to inform Amazon Glacier that all the archive parts have been uploaded and that Amazon Glacier can now assemble the archive from the uploaded parts. After assembling and saving the archive to the vault, Amazon Glacier returns the URI path of the newly created archive resource. Using the URI path, you can then access the archive. After you upload an archive, you should save the archive ID returned to retrieve the archive at a later point. You can also get the vault inventory to obtain a list of archive IDs in a vault. For more information, see InitiateJob.

        In the request, you must include the computed SHA256 tree hash of the entire archive you have uploaded. For information about computing a SHA256 tree hash, see Computing Checksums. On the server side, Amazon Glacier also constructs the SHA256 tree hash of the assembled archive. If the values match, Amazon Glacier saves the archive to the vault; otherwise, it returns an error, and the operation fails. The ListParts operation returns a list of parts uploaded for a specific multipart upload. It includes checksum information for each uploaded part that can be used to debug a bad checksum issue.

        Additionally, Amazon Glacier also checks for any missing content ranges when assembling the archive, if missing content ranges are found, Amazon Glacier returns an error and the operation fails.

        Complete Multipart Upload is an idempotent operation. After your first successful complete multipart upload, if you call the operation again within a short period, the operation will succeed and return the same archive ID. This is useful in the event you experience a network issue that causes an aborted connection or receive a 500 server error, in which case you can repeat your Complete Multipart Upload request and get the same archive ID without creating duplicate archives. Note, however, that after the multipart upload completes, you cannot call the List Parts operation and the multipart upload will not appear in List Multipart Uploads response, even if idempotent complete is possible.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For conceptual information and underlying REST API, go to Uploading Large Archives in Parts (Multipart Upload) and Complete Multipart Upload in the Amazon Glacier Developer Guide.

        ", "CompleteVaultLock": "

        This operation completes the vault locking process by transitioning the vault lock from the InProgress state to the Locked state, which causes the vault lock policy to become unchangeable. A vault lock is put into the InProgress state by calling InitiateVaultLock. You can obtain the state of the vault lock by calling GetVaultLock. For more information about the vault locking process, Amazon Glacier Vault Lock.

        This operation is idempotent. This request is always successful if the vault lock is in the Locked state and the provided lock ID matches the lock ID originally used to lock the vault.

        If an invalid lock ID is passed in the request when the vault lock is in the Locked state, the operation returns an AccessDeniedException error. If an invalid lock ID is passed in the request when the vault lock is in the InProgress state, the operation throws an InvalidParameter error.

        ", "CreateVault": "

        This operation creates a new vault with the specified name. The name of the vault must be unique within a region for an AWS account. You can create up to 1,000 vaults per account. If you need to create more vaults, contact Amazon Glacier.

        You must use the following guidelines when naming a vault.

        • Names can be between 1 and 255 characters long.

        • Allowed characters are a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), and '.' (period).

        This operation is idempotent.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For conceptual information and underlying REST API, go to Creating a Vault in Amazon Glacier and Create Vault in the Amazon Glacier Developer Guide.

        ", "DeleteArchive": "

        This operation deletes an archive from a vault. Subsequent requests to initiate a retrieval of this archive will fail. Archive retrievals that are in progress for this archive ID may or may not succeed according to the following scenarios:

        • If the archive retrieval job is actively preparing the data for download when Amazon Glacier receives the delete archive request, the archival retrieval operation might fail.
        • If the archive retrieval job has successfully prepared the archive for download when Amazon Glacier receives the delete archive request, you will be able to download the output.

        This operation is idempotent. Attempting to delete an already-deleted archive does not result in an error.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For conceptual information and underlying REST API, go to Deleting an Archive in Amazon Glacier and Delete Archive in the Amazon Glacier Developer Guide.

        ", "DeleteVault": "

        This operation deletes a vault. Amazon Glacier will delete a vault only if there are no archives in the vault as of the last inventory and there have been no writes to the vault since the last inventory. If either of these conditions is not satisfied, the vault deletion fails (that is, the vault is not removed) and Amazon Glacier returns an error. You can use DescribeVault to return the number of archives in a vault, and you can use Initiate a Job (POST jobs) to initiate a new inventory retrieval for a vault. The inventory contains the archive IDs you use to delete archives using Delete Archive (DELETE archive).

        This operation is idempotent.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For conceptual information and underlying REST API, go to Deleting a Vault in Amazon Glacier and Delete Vault in the Amazon Glacier Developer Guide.

        ", "DeleteVaultAccessPolicy": "

        This operation deletes the access policy associated with the specified vault. The operation is eventually consistent; that is, it might take some time for Amazon Glacier to completely remove the access policy, and you might still see the effect of the policy for a short time after you send the delete request.

        This operation is idempotent. You can invoke delete multiple times, even if there is no policy associated with the vault. For more information about vault access policies, see Amazon Glacier Access Control with Vault Access Policies.

        ", "DeleteVaultNotifications": "

        This operation deletes the notification configuration set for a vault. The operation is eventually consistent; that is, it might take some time for Amazon Glacier to completely disable the notifications and you might still receive some notifications for a short time after you send the delete request.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For conceptual information and underlying REST API, go to Configuring Vault Notifications in Amazon Glacier and Delete Vault Notification Configuration in the Amazon Glacier Developer Guide.

        ", "DescribeJob": "

        This operation returns information about a job you previously initiated, including the job initiation date, the user who initiated the job, the job status code/message and the Amazon SNS topic to notify after Amazon Glacier completes the job. For more information about initiating a job, see InitiateJob.

        This operation enables you to check the status of your job. However, it is strongly recommended that you set up an Amazon SNS topic and specify it in your initiate job request so that Amazon Glacier can notify the topic after it completes the job.

        A job ID will not expire for at least 24 hours after Amazon Glacier completes the job.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For information about the underlying REST API, go to Working with Archives in Amazon Glacier in the Amazon Glacier Developer Guide.

        ", "DescribeVault": "

        This operation returns information about a vault, including the vault's Amazon Resource Name (ARN), the date the vault was created, the number of archives it contains, and the total size of all the archives in the vault. The number of archives and their total size are as of the last inventory generation. This means that if you add or remove an archive from a vault, and then immediately use Describe Vault, the change in contents will not be immediately reflected. If you want to retrieve the latest inventory of the vault, use InitiateJob. Amazon Glacier generates vault inventories approximately daily. For more information, see Downloading a Vault Inventory in Amazon Glacier.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For conceptual information and underlying REST API, go to Retrieving Vault Metadata in Amazon Glacier and Describe Vault in the Amazon Glacier Developer Guide.

        ", "GetDataRetrievalPolicy": "

        This operation returns the current data retrieval policy for the account and region specified in the GET request. For more information about data retrieval policies, see Amazon Glacier Data Retrieval Policies.

        ", "GetJobOutput": "

        This operation downloads the output of the job you initiated using InitiateJob. Depending on the job type you specified when you initiated the job, the output will be either the content of an archive or a vault inventory.

        A job ID will not expire for at least 24 hours after Amazon Glacier completes the job. That is, you can download the job output within the 24 hours period after Amazon Glacier completes the job.

        If the job output is large, then you can use the Range request header to retrieve a portion of the output. This allows you to download the entire output in smaller chunks of bytes. For example, suppose you have 1 GB of job output you want to download and you decide to download 128 MB chunks of data at a time, which is a total of eight Get Job Output requests. You use the following process to download the job output:

        1. Download a 128 MB chunk of output by specifying the appropriate byte range using the Range header.

        2. Along with the data, the response includes a SHA256 tree hash of the payload. You compute the checksum of the payload on the client and compare it with the checksum you received in the response to ensure you received all the expected data.

        3. Repeat steps 1 and 2 for all the eight 128 MB chunks of output data, each time specifying the appropriate byte range.

        4. After downloading all the parts of the job output, you have a list of eight checksum values. Compute the tree hash of these values to find the checksum of the entire output. Using the DescribeJob API, obtain job information of the job that provided you the output. The response includes the checksum of the entire archive stored in Amazon Glacier. You compare this value with the checksum you computed to ensure you have downloaded the entire archive content with no errors.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For conceptual information and the underlying REST API, go to Downloading a Vault Inventory, Downloading an Archive, and Get Job Output

        ", "GetVaultAccessPolicy": "

        This operation retrieves the access-policy subresource set on the vault; for more information on setting this subresource, see Set Vault Access Policy (PUT access-policy). If there is no access policy set on the vault, the operation returns a 404 Not found error. For more information about vault access policies, see Amazon Glacier Access Control with Vault Access Policies.

        ", "GetVaultLock": "

        This operation retrieves the following attributes from the lock-policy subresource set on the specified vault:

        • The vault lock policy set on the vault.

        • The state of the vault lock, which is either InProgess or Locked.

        • When the lock ID expires. The lock ID is used to complete the vault locking process.

        • When the vault lock was initiated and put into the InProgress state.

        A vault lock is put into the InProgress state by calling InitiateVaultLock. A vault lock is put into the Locked state by calling CompleteVaultLock. You can abort the vault locking process by calling AbortVaultLock. For more information about the vault locking process, Amazon Glacier Vault Lock.

        If there is no vault lock policy set on the vault, the operation returns a 404 Not found error. For more information about vault lock policies, Amazon Glacier Access Control with Vault Lock Policies.

        ", "GetVaultNotifications": "

        This operation retrieves the notification-configuration subresource of the specified vault.

        For information about setting a notification configuration on a vault, see SetVaultNotifications. If a notification configuration for a vault is not set, the operation returns a 404 Not Found error. For more information about vault notifications, see Configuring Vault Notifications in Amazon Glacier.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For conceptual information and underlying REST API, go to Configuring Vault Notifications in Amazon Glacier and Get Vault Notification Configuration in the Amazon Glacier Developer Guide.

        ", "InitiateJob": "

        This operation initiates a job of the specified type. In this release, you can initiate a job to retrieve either an archive or a vault inventory (a list of archives in a vault).

        Retrieving data from Amazon Glacier is a two-step process:

        1. Initiate a retrieval job.

          A data retrieval policy can cause your initiate retrieval job request to fail with a PolicyEnforcedException exception. For more information about data retrieval policies, see Amazon Glacier Data Retrieval Policies. For more information about the PolicyEnforcedException exception, see Error Responses.

        2. After the job completes, download the bytes.

        The retrieval request is executed asynchronously. When you initiate a retrieval job, Amazon Glacier creates a job and returns a job ID in the response. When Amazon Glacier completes the job, you can get the job output (archive or inventory data). For information about getting job output, see GetJobOutput operation.

        The job must complete before you can get its output. To determine when a job is complete, you have the following options:

        • Use Amazon SNS Notification You can specify an Amazon Simple Notification Service (Amazon SNS) topic to which Amazon Glacier can post a notification after the job is completed. You can specify an SNS topic per job request. The notification is sent only after Amazon Glacier completes the job. In addition to specifying an SNS topic per job request, you can configure vault notifications for a vault so that job notifications are always sent. For more information, see SetVaultNotifications.

        • Get job details You can make a DescribeJob request to obtain job status information while a job is in progress. However, it is more efficient to use an Amazon SNS notification to determine when a job is complete.

        The information you get via notification is same that you get by calling DescribeJob.

        If for a specific event, you add both the notification configuration on the vault and also specify an SNS topic in your initiate job request, Amazon Glacier sends both notifications. For more information, see SetVaultNotifications.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        About the Vault Inventory

        Amazon Glacier prepares an inventory for each vault periodically, every 24 hours. When you initiate a job for a vault inventory, Amazon Glacier returns the last inventory for the vault. The inventory data you get might be up to a day or two days old. Also, the initiate inventory job might take some time to complete before you can download the vault inventory. So you do not want to retrieve a vault inventory for each vault operation. However, in some scenarios, you might find the vault inventory useful. For example, when you upload an archive, you can provide an archive description but not an archive name. Amazon Glacier provides you a unique archive ID, an opaque string of characters. So, you might maintain your own database that maps archive names to their corresponding Amazon Glacier assigned archive IDs. You might find the vault inventory useful in the event you need to reconcile information in your database with the actual vault inventory.

        Range Inventory Retrieval

        You can limit the number of inventory items retrieved by filtering on the archive creation date or by setting a limit.

        Filtering by Archive Creation Date

        You can retrieve inventory items for archives created between StartDate and EndDate by specifying values for these parameters in the InitiateJob request. Archives created on or after the StartDate and before the EndDate will be returned. If you only provide the StartDate without the EndDate, you will retrieve the inventory for all archives created on or after the StartDate. If you only provide the EndDate without the StartDate, you will get back the inventory for all archives created before the EndDate.

        Limiting Inventory Items per Retrieval

        You can limit the number of inventory items returned by setting the Limit parameter in the InitiateJob request. The inventory job output will contain inventory items up to the specified Limit. If there are more inventory items available, the result is paginated. After a job is complete you can use the DescribeJob operation to get a marker that you use in a subsequent InitiateJob request. The marker will indicate the starting point to retrieve the next set of inventory items. You can page through your entire inventory by repeatedly making InitiateJob requests with the marker from the previous DescribeJob output, until you get a marker from DescribeJob that returns null, indicating that there are no more inventory items available.

        You can use the Limit parameter together with the date range parameters.

        About Ranged Archive Retrieval

        You can initiate an archive retrieval for the whole archive or a range of the archive. In the case of ranged archive retrieval, you specify a byte range to return or the whole archive. The range specified must be megabyte (MB) aligned, that is the range start value must be divisible by 1 MB and range end value plus 1 must be divisible by 1 MB or equal the end of the archive. If the ranged archive retrieval is not megabyte aligned, this operation returns a 400 response. Furthermore, to ensure you get checksum values for data you download using Get Job Output API, the range must be tree hash aligned.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For conceptual information and the underlying REST API, go to Initiate a Job and Downloading a Vault Inventory

        ", "InitiateMultipartUpload": "

        This operation initiates a multipart upload. Amazon Glacier creates a multipart upload resource and returns its ID in the response. The multipart upload ID is used in subsequent requests to upload parts of an archive (see UploadMultipartPart).

        When you initiate a multipart upload, you specify the part size in number of bytes. The part size must be a megabyte (1024 KB) multiplied by a power of 2-for example, 1048576 (1 MB), 2097152 (2 MB), 4194304 (4 MB), 8388608 (8 MB), and so on. The minimum allowable part size is 1 MB, and the maximum is 4 GB.

        Every part you upload to this resource (see UploadMultipartPart), except the last one, must have the same size. The last one can be the same size or smaller. For example, suppose you want to upload a 16.2 MB file. If you initiate the multipart upload with a part size of 4 MB, you will upload four parts of 4 MB each and one part of 0.2 MB.

        You don't need to know the size of the archive when you start a multipart upload because Amazon Glacier does not require you to specify the overall archive size.

        After you complete the multipart upload, Amazon Glacier removes the multipart upload resource referenced by the ID. Amazon Glacier also removes the multipart upload resource if you cancel the multipart upload or it may be removed if there is no activity for a period of 24 hours.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For conceptual information and underlying REST API, go to Uploading Large Archives in Parts (Multipart Upload) and Initiate Multipart Upload in the Amazon Glacier Developer Guide.

        ", "InitiateVaultLock": "

        This operation initiates the vault locking process by doing the following:

        • Installing a vault lock policy on the specified vault.

        • Setting the lock state of vault lock to InProgress.

        • Returning a lock ID, which is used to complete the vault locking process.

        You can set one vault lock policy for each vault and this policy can be up to 20 KB in size. For more information about vault lock policies, see Amazon Glacier Access Control with Vault Lock Policies.

        You must complete the vault locking process within 24 hours after the vault lock enters the InProgress state. After the 24 hour window ends, the lock ID expires, the vault automatically exits the InProgress state, and the vault lock policy is removed from the vault. You call CompleteVaultLock to complete the vault locking process by setting the state of the vault lock to Locked.

        After a vault lock is in the Locked state, you cannot initiate a new vault lock for the vault.

        You can abort the vault locking process by calling AbortVaultLock. You can get the state of the vault lock by calling GetVaultLock. For more information about the vault locking process, Amazon Glacier Vault Lock.

        If this operation is called when the vault lock is in the InProgress state, the operation returns an AccessDeniedException error. When the vault lock is in the InProgress state you must call AbortVaultLock before you can initiate a new vault lock policy.

        ", "ListJobs": "

        This operation lists jobs for a vault, including jobs that are in-progress and jobs that have recently finished.

        Amazon Glacier retains recently completed jobs for a period before deleting them; however, it eventually removes completed jobs. The output of completed jobs can be retrieved. Retaining completed jobs for a period of time after they have completed enables you to get a job output in the event you miss the job completion notification or your first attempt to download it fails. For example, suppose you start an archive retrieval job to download an archive. After the job completes, you start to download the archive but encounter a network error. In this scenario, you can retry and download the archive while the job exists.

        To retrieve an archive or retrieve a vault inventory from Amazon Glacier, you first initiate a job, and after the job completes, you download the data. For an archive retrieval, the output is the archive data, and for an inventory retrieval, it is the inventory list. The List Job operation returns a list of these jobs sorted by job initiation time.

        This List Jobs operation supports pagination. By default, this operation returns up to 1,000 jobs in the response. You should always check the response for a marker at which to continue the list; if there are no more items the marker is null. To return a list of jobs that begins at a specific job, set the marker request parameter to the value you obtained from a previous List Jobs request. You can also limit the number of jobs returned in the response by specifying the limit parameter in the request.

        Additionally, you can filter the jobs list returned by specifying an optional statuscode (InProgress, Succeeded, or Failed) and completed (true, false) parameter. The statuscode allows you to specify that only jobs that match a specified status are returned. The completed parameter allows you to specify that only jobs in a specific completion state are returned.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For the underlying REST API, go to List Jobs

        ", "ListMultipartUploads": "

        This operation lists in-progress multipart uploads for the specified vault. An in-progress multipart upload is a multipart upload that has been initiated by an InitiateMultipartUpload request, but has not yet been completed or aborted. The list returned in the List Multipart Upload response has no guaranteed order.

        The List Multipart Uploads operation supports pagination. By default, this operation returns up to 1,000 multipart uploads in the response. You should always check the response for a marker at which to continue the list; if there are no more items the marker is null. To return a list of multipart uploads that begins at a specific upload, set the marker request parameter to the value you obtained from a previous List Multipart Upload request. You can also limit the number of uploads returned in the response by specifying the limit parameter in the request.

        Note the difference between this operation and listing parts (ListParts). The List Multipart Uploads operation lists all multipart uploads for a vault and does not require a multipart upload ID. The List Parts operation requires a multipart upload ID since parts are associated with a single upload.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For conceptual information and the underlying REST API, go to Working with Archives in Amazon Glacier and List Multipart Uploads in the Amazon Glacier Developer Guide.

        ", "ListParts": "

        This operation lists the parts of an archive that have been uploaded in a specific multipart upload. You can make this request at any time during an in-progress multipart upload before you complete the upload (see CompleteMultipartUpload. List Parts returns an error for completed uploads. The list returned in the List Parts response is sorted by part range.

        The List Parts operation supports pagination. By default, this operation returns up to 1,000 uploaded parts in the response. You should always check the response for a marker at which to continue the list; if there are no more items the marker is null. To return a list of parts that begins at a specific part, set the marker request parameter to the value you obtained from a previous List Parts request. You can also limit the number of parts returned in the response by specifying the limit parameter in the request.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For conceptual information and the underlying REST API, go to Working with Archives in Amazon Glacier and List Parts in the Amazon Glacier Developer Guide.

        ", "ListTagsForVault": "

        This operation lists all the tags attached to a vault. The operation returns an empty map if there are no tags. For more information about tags, see Tagging Amazon Glacier Resources.

        ", "ListVaults": "

        This operation lists all vaults owned by the calling user's account. The list returned in the response is ASCII-sorted by vault name.

        By default, this operation returns up to 1,000 items. If there are more vaults to list, the response marker field contains the vault Amazon Resource Name (ARN) at which to continue the list with a new List Vaults request; otherwise, the marker field is null. To return a list of vaults that begins at a specific vault, set the marker request parameter to the vault ARN you obtained from a previous List Vaults request. You can also limit the number of vaults returned in the response by specifying the limit parameter in the request.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For conceptual information and underlying REST API, go to Retrieving Vault Metadata in Amazon Glacier and List Vaults in the Amazon Glacier Developer Guide.

        ", "RemoveTagsFromVault": "

        This operation removes one or more tags from the set of tags attached to a vault. For more information about tags, see Tagging Amazon Glacier Resources. This operation is idempotent. The operation will be successful, even if there are no tags attached to the vault.

        ", "SetDataRetrievalPolicy": "

        This operation sets and then enacts a data retrieval policy in the region specified in the PUT request. You can set one policy per region for an AWS account. The policy is enacted within a few minutes of a successful PUT operation.

        The set policy operation does not affect retrieval jobs that were in progress before the policy was enacted. For more information about data retrieval policies, see Amazon Glacier Data Retrieval Policies.

        ", "SetVaultAccessPolicy": "

        This operation configures an access policy for a vault and will overwrite an existing policy. To configure a vault access policy, send a PUT request to the access-policy subresource of the vault. An access policy is specific to a vault and is also called a vault subresource. You can set one access policy per vault and the policy can be up to 20 KB in size. For more information about vault access policies, see Amazon Glacier Access Control with Vault Access Policies.

        ", "SetVaultNotifications": "

        This operation configures notifications that will be sent when specific events happen to a vault. By default, you don't get any notifications.

        To configure vault notifications, send a PUT request to the notification-configuration subresource of the vault. The request should include a JSON document that provides an Amazon SNS topic and specific events for which you want Amazon Glacier to send notifications to the topic.

        Amazon SNS topics must grant permission to the vault to be allowed to publish notifications to the topic. You can configure a vault to publish a notification for the following vault events:

        • ArchiveRetrievalCompleted This event occurs when a job that was initiated for an archive retrieval is completed (InitiateJob). The status of the completed job can be \"Succeeded\" or \"Failed\". The notification sent to the SNS topic is the same output as returned from DescribeJob.
        • InventoryRetrievalCompleted This event occurs when a job that was initiated for an inventory retrieval is completed (InitiateJob). The status of the completed job can be \"Succeeded\" or \"Failed\". The notification sent to the SNS topic is the same output as returned from DescribeJob.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For conceptual information and underlying REST API, go to Configuring Vault Notifications in Amazon Glacier and Set Vault Notification Configuration in the Amazon Glacier Developer Guide.

        ", "UploadArchive": "

        This operation adds an archive to a vault. This is a synchronous operation, and for a successful upload, your data is durably persisted. Amazon Glacier returns the archive ID in the x-amz-archive-id header of the response.

        You must use the archive ID to access your data in Amazon Glacier. After you upload an archive, you should save the archive ID returned so that you can retrieve or delete the archive later. Besides saving the archive ID, you can also index it and give it a friendly name to allow for better searching. You can also use the optional archive description field to specify how the archive is referred to in an external index of archives, such as you might create in Amazon DynamoDB. You can also get the vault inventory to obtain a list of archive IDs in a vault. For more information, see InitiateJob.

        You must provide a SHA256 tree hash of the data you are uploading. For information about computing a SHA256 tree hash, see Computing Checksums.

        You can optionally specify an archive description of up to 1,024 printable ASCII characters. You can get the archive description when you either retrieve the archive or get the vault inventory. For more information, see InitiateJob. Amazon Glacier does not interpret the description in any way. An archive description does not need to be unique. You cannot use the description to retrieve or sort the archive list.

        Archives are immutable. After you upload an archive, you cannot edit the archive or its description.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For conceptual information and underlying REST API, go to Uploading an Archive in Amazon Glacier and Upload Archive in the Amazon Glacier Developer Guide.

        ", "UploadMultipartPart": "

        This operation uploads a part of an archive. You can upload archive parts in any order. You can also upload them in parallel. You can upload up to 10,000 parts for a multipart upload.

        Amazon Glacier rejects your upload part request if any of the following conditions is true:

        • SHA256 tree hash does not matchTo ensure that part data is not corrupted in transmission, you compute a SHA256 tree hash of the part and include it in your request. Upon receiving the part data, Amazon Glacier also computes a SHA256 tree hash. If these hash values don't match, the operation fails. For information about computing a SHA256 tree hash, see Computing Checksums.

        • Part size does not matchThe size of each part except the last must match the size specified in the corresponding InitiateMultipartUpload request. The size of the last part must be the same size as, or smaller than, the specified size.

          If you upload a part whose size is smaller than the part size you specified in your initiate multipart upload request and that part is not the last part, then the upload part request will succeed. However, the subsequent Complete Multipart Upload request will fail.

        • Range does not alignThe byte range value in the request does not align with the part size specified in the corresponding initiate request. For example, if you specify a part size of 4194304 bytes (4 MB), then 0 to 4194303 bytes (4 MB - 1) and 4194304 (4 MB) to 8388607 (8 MB - 1) are valid part ranges. However, if you set a range value of 2 MB to 6 MB, the range does not align with the part size and the upload will fail.

        This operation is idempotent. If you upload the same part multiple times, the data included in the most recent request overwrites the previously uploaded data.

        An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

        For conceptual information and underlying REST API, go to Uploading Large Archives in Parts (Multipart Upload) and Upload Part in the Amazon Glacier Developer Guide.

        " }, "service": "

        Amazon Glacier is a storage solution for \"cold data.\"

        Amazon Glacier is an extremely low-cost storage service that provides secure, durable, and easy-to-use storage for data backup and archival. With Amazon Glacier, customers can store their data cost effectively for months, years, or decades. Amazon Glacier also enables customers to offload the administrative burdens of operating and scaling storage to AWS, so they don't have to worry about capacity planning, hardware provisioning, data replication, hardware failure and recovery, or time-consuming hardware migrations.

        Amazon Glacier is a great storage choice when low storage cost is paramount, your data is rarely retrieved, and retrieval latency of several hours is acceptable. If your application requires fast or frequent access to your data, consider using Amazon S3. For more information, go to Amazon Simple Storage Service (Amazon S3).

        You can store any kind of data in any format. There is no maximum limit on the total amount of data you can store in Amazon Glacier.

        If you are a first-time user of Amazon Glacier, we recommend that you begin by reading the following sections in the Amazon Glacier Developer Guide:

        • What is Amazon Glacier - This section of the Developer Guide describes the underlying data model, the operations it supports, and the AWS SDKs that you can use to interact with the service.

        • Getting Started with Amazon Glacier - The Getting Started section walks you through the process of creating a vault, uploading archives, creating jobs to download archives, retrieving the job output, and deleting archives.

        ", "shapes": { "AbortMultipartUploadInput": { "base": "

        Provides options to abort a multipart upload identified by the upload ID.

        For information about the underlying REST API, go to Abort Multipart Upload. For conceptual information, go to Working with Archives in Amazon Glacier.

        ", "refs": { } }, "AbortVaultLockInput": { "base": "

        The input values for AbortVaultLock.

        ", "refs": { } }, "ActionCode": { "base": null, "refs": { "GlacierJobDescription$Action": "

        The job type. It is either ArchiveRetrieval or InventoryRetrieval.

        " } }, "AddTagsToVaultInput": { "base": "

        The input values for AddTagsToVault.

        ", "refs": { } }, "ArchiveCreationOutput": { "base": "

        Contains the Amazon Glacier response to your request.

        For information about the underlying REST API, go to Upload Archive. For conceptual information, go to Working with Archives in Amazon Glacier.

        ", "refs": { } }, "CompleteMultipartUploadInput": { "base": "

        Provides options to complete a multipart upload operation. This informs Amazon Glacier that all the archive parts have been uploaded and Amazon Glacier can now assemble the archive from the uploaded parts. After assembling and saving the archive to the vault, Amazon Glacier returns the URI path of the newly created archive resource.

        ", "refs": { } }, "CompleteVaultLockInput": { "base": "

        The input values for CompleteVaultLock.

        ", "refs": { } }, "CreateVaultInput": { "base": "

        Provides options to create a vault.

        ", "refs": { } }, "CreateVaultOutput": { "base": "

        Contains the Amazon Glacier response to your request.

        ", "refs": { } }, "DataRetrievalPolicy": { "base": "

        Data retrieval policy.

        ", "refs": { "GetDataRetrievalPolicyOutput$Policy": "

        Contains the returned data retrieval policy in JSON format.

        ", "SetDataRetrievalPolicyInput$Policy": "

        The data retrieval policy in JSON format.

        " } }, "DataRetrievalRule": { "base": "

        Data retrieval policy rule.

        ", "refs": { "DataRetrievalRulesList$member": null } }, "DataRetrievalRulesList": { "base": null, "refs": { "DataRetrievalPolicy$Rules": "

        The policy rule. Although this is a list type, currently there must be only one rule, which contains a Strategy field and optionally a BytesPerHour field.

        " } }, "DateTime": { "base": null, "refs": { "InventoryRetrievalJobDescription$StartDate": "

        The start of the date range in UTC for vault inventory retrieval that includes archives created on or after this date. A string representation of ISO 8601 date format, for example, 2013-03-20T17:03:43Z.

        ", "InventoryRetrievalJobDescription$EndDate": "

        The end of the date range in UTC for vault inventory retrieval that includes archives created before this date. A string representation of ISO 8601 date format, for example, 2013-03-20T17:03:43Z.

        " } }, "DeleteArchiveInput": { "base": "

        Provides options for deleting an archive from an Amazon Glacier vault.

        ", "refs": { } }, "DeleteVaultAccessPolicyInput": { "base": "

        DeleteVaultAccessPolicy input.

        ", "refs": { } }, "DeleteVaultInput": { "base": "

        Provides options for deleting a vault from Amazon Glacier.

        ", "refs": { } }, "DeleteVaultNotificationsInput": { "base": "

        Provides options for deleting a vault notification configuration from an Amazon Glacier vault.

        ", "refs": { } }, "DescribeJobInput": { "base": "

        Provides options for retrieving a job description.

        ", "refs": { } }, "DescribeVaultInput": { "base": "

        Provides options for retrieving metadata for a specific vault in Amazon Glacier.

        ", "refs": { } }, "DescribeVaultOutput": { "base": "

        Contains the Amazon Glacier response to your request.

        ", "refs": { "VaultList$member": null } }, "GetDataRetrievalPolicyInput": { "base": "

        Input for GetDataRetrievalPolicy.

        ", "refs": { } }, "GetDataRetrievalPolicyOutput": { "base": "

        Contains the Amazon Glacier response to the GetDataRetrievalPolicy request.

        ", "refs": { } }, "GetJobOutputInput": { "base": "

        Provides options for downloading output of an Amazon Glacier job.

        ", "refs": { } }, "GetJobOutputOutput": { "base": "

        Contains the Amazon Glacier response to your request.

        ", "refs": { } }, "GetVaultAccessPolicyInput": { "base": "

        Input for GetVaultAccessPolicy.

        ", "refs": { } }, "GetVaultAccessPolicyOutput": { "base": "

        Output for GetVaultAccessPolicy.

        ", "refs": { } }, "GetVaultLockInput": { "base": "

        The input values for GetVaultLock.

        ", "refs": { } }, "GetVaultLockOutput": { "base": "

        Contains the Amazon Glacier response to your request.

        ", "refs": { } }, "GetVaultNotificationsInput": { "base": "

        Provides options for retrieving the notification configuration set on an Amazon Glacier vault.

        ", "refs": { } }, "GetVaultNotificationsOutput": { "base": "

        Contains the Amazon Glacier response to your request.

        ", "refs": { } }, "GlacierJobDescription": { "base": "

        Describes an Amazon Glacier job.

        ", "refs": { "JobList$member": null } }, "InitiateJobInput": { "base": "

        Provides options for initiating an Amazon Glacier job.

        ", "refs": { } }, "InitiateJobOutput": { "base": "

        Contains the Amazon Glacier response to your request.

        ", "refs": { } }, "InitiateMultipartUploadInput": { "base": "

        Provides options for initiating a multipart upload to an Amazon Glacier vault.

        ", "refs": { } }, "InitiateMultipartUploadOutput": { "base": "

        The Amazon Glacier response to your request.

        ", "refs": { } }, "InitiateVaultLockInput": { "base": "

        The input values for InitiateVaultLock.

        ", "refs": { } }, "InitiateVaultLockOutput": { "base": "

        Contains the Amazon Glacier response to your request.

        ", "refs": { } }, "InvalidParameterValueException": { "base": "

        Returned if a parameter of the request is incorrectly specified.

        ", "refs": { } }, "InventoryRetrievalJobDescription": { "base": "

        Describes the options for a range inventory retrieval job.

        ", "refs": { "GlacierJobDescription$InventoryRetrievalParameters": "

        Parameters used for range inventory retrieval.

        " } }, "InventoryRetrievalJobInput": { "base": "

        Provides options for specifying a range inventory retrieval job.

        ", "refs": { "JobParameters$InventoryRetrievalParameters": "

        Input parameters used for range inventory retrieval.

        " } }, "JobList": { "base": null, "refs": { "ListJobsOutput$JobList": "

        A list of job objects. Each job object contains metadata describing the job.

        " } }, "JobParameters": { "base": "

        Provides options for defining a job.

        ", "refs": { "InitiateJobInput$jobParameters": "

        Provides options for specifying job information.

        " } }, "LimitExceededException": { "base": "

        Returned if the request results in a vault or account limit being exceeded.

        ", "refs": { } }, "ListJobsInput": { "base": "

        Provides options for retrieving a job list for an Amazon Glacier vault.

        ", "refs": { } }, "ListJobsOutput": { "base": "

        Contains the Amazon Glacier response to your request.

        ", "refs": { } }, "ListMultipartUploadsInput": { "base": "

        Provides options for retrieving list of in-progress multipart uploads for an Amazon Glacier vault.

        ", "refs": { } }, "ListMultipartUploadsOutput": { "base": "

        Contains the Amazon Glacier response to your request.

        ", "refs": { } }, "ListPartsInput": { "base": "

        Provides options for retrieving a list of parts of an archive that have been uploaded in a specific multipart upload.

        ", "refs": { } }, "ListPartsOutput": { "base": "

        Contains the Amazon Glacier response to your request.

        ", "refs": { } }, "ListTagsForVaultInput": { "base": "

        The input value for ListTagsForVaultInput.

        ", "refs": { } }, "ListTagsForVaultOutput": { "base": "

        Contains the Amazon Glacier response to your request.

        ", "refs": { } }, "ListVaultsInput": { "base": "

        Provides options to retrieve the vault list owned by the calling user's account. The list provides metadata information for each vault.

        ", "refs": { } }, "ListVaultsOutput": { "base": "

        Contains the Amazon Glacier response to your request.

        ", "refs": { } }, "MissingParameterValueException": { "base": "

        Returned if a required header or parameter is missing from the request.

        ", "refs": { } }, "NotificationEventList": { "base": null, "refs": { "VaultNotificationConfig$Events": "

        A list of one or more events for which Amazon Glacier will send a notification to the specified Amazon SNS topic.

        " } }, "NullableLong": { "base": null, "refs": { "DataRetrievalRule$BytesPerHour": "

        The maximum number of bytes that can be retrieved in an hour.

        This field is required only if the value of the Strategy field is BytesPerHour. Your PUT operation will be rejected if the Strategy field is not set to BytesPerHour and you set this field.

        " } }, "PartList": { "base": null, "refs": { "ListPartsOutput$Parts": "

        A list of the part sizes of the multipart upload.

        " } }, "PartListElement": { "base": "

        A list of the part sizes of the multipart upload.

        ", "refs": { "PartList$member": null } }, "PolicyEnforcedException": { "base": "

        Returned if a retrieval job would exceed the current data policy's retrieval rate limit. For more information about data retrieval policies,

        ", "refs": { } }, "RemoveTagsFromVaultInput": { "base": "

        The input value for RemoveTagsFromVaultInput.

        ", "refs": { } }, "RequestTimeoutException": { "base": "

        Returned if, when uploading an archive, Amazon Glacier times out while receiving the upload.

        ", "refs": { } }, "ResourceNotFoundException": { "base": "

        Returned if the specified resource, such as a vault, upload ID, or job ID, does not exist.

        ", "refs": { } }, "ServiceUnavailableException": { "base": "

        Returned if the service cannot complete the request.

        ", "refs": { } }, "SetDataRetrievalPolicyInput": { "base": "

        SetDataRetrievalPolicy input.

        ", "refs": { } }, "SetVaultAccessPolicyInput": { "base": "

        SetVaultAccessPolicy input.

        ", "refs": { } }, "SetVaultNotificationsInput": { "base": "

        Provides options to configure notifications that will be sent when specific events happen to a vault.

        ", "refs": { } }, "Size": { "base": null, "refs": { "GlacierJobDescription$ArchiveSizeInBytes": "

        For an ArchiveRetrieval job, this is the size in bytes of the archive being requested for download. For the InventoryRetrieval job, the value is null.

        ", "GlacierJobDescription$InventorySizeInBytes": "

        For an InventoryRetrieval job, this is the size in bytes of the inventory requested for download. For the ArchiveRetrieval job, the value is null.

        " } }, "StatusCode": { "base": null, "refs": { "GlacierJobDescription$StatusCode": "

        The status code can be InProgress, Succeeded, or Failed, and indicates the status of the job.

        " } }, "Stream": { "base": null, "refs": { "GetJobOutputOutput$body": "

        The job data, either archive data or inventory data.

        ", "UploadArchiveInput$body": "

        The data to upload.

        ", "UploadMultipartPartInput$body": "

        The data to upload.

        " } }, "TagKey": { "base": null, "refs": { "TagMap$key": null } }, "TagKeyList": { "base": null, "refs": { "RemoveTagsFromVaultInput$TagKeys": "

        A list of tag keys. Each corresponding tag is removed from the vault.

        " } }, "TagMap": { "base": null, "refs": { "AddTagsToVaultInput$Tags": "

        The tags to add to the vault. Each tag is composed of a key and a value. The value can be an empty string.

        ", "ListTagsForVaultOutput$Tags": "

        The tags attached to the vault. Each tag is composed of a key and a value.

        " } }, "TagValue": { "base": null, "refs": { "TagMap$value": null } }, "UploadArchiveInput": { "base": "

        Provides options to add an archive to a vault.

        ", "refs": { } }, "UploadListElement": { "base": "

        A list of in-progress multipart uploads for a vault.

        ", "refs": { "UploadsList$member": null } }, "UploadMultipartPartInput": { "base": "

        Provides options to upload a part of an archive in a multipart upload operation.

        ", "refs": { } }, "UploadMultipartPartOutput": { "base": "

        Contains the Amazon Glacier response to your request.

        ", "refs": { } }, "UploadsList": { "base": null, "refs": { "ListMultipartUploadsOutput$UploadsList": "

        A list of in-progress multipart uploads.

        " } }, "VaultAccessPolicy": { "base": "

        Contains the vault access policy.

        ", "refs": { "GetVaultAccessPolicyOutput$policy": "

        Contains the returned vault access policy as a JSON string.

        ", "SetVaultAccessPolicyInput$policy": "

        The vault access policy as a JSON string.

        " } }, "VaultList": { "base": null, "refs": { "ListVaultsOutput$VaultList": "

        List of vaults.

        " } }, "VaultLockPolicy": { "base": "

        Contains the vault lock policy.

        ", "refs": { "InitiateVaultLockInput$policy": "

        The vault lock policy as a JSON string, which uses \"\\\" as an escape character.

        " } }, "VaultNotificationConfig": { "base": "

        Represents a vault's notification configuration.

        ", "refs": { "GetVaultNotificationsOutput$vaultNotificationConfig": "

        Returns the notification configuration set on the vault.

        ", "SetVaultNotificationsInput$vaultNotificationConfig": "

        Provides options for specifying notification configuration.

        " } }, "boolean": { "base": null, "refs": { "GlacierJobDescription$Completed": "

        The job status. When a job is completed, you get the job's output.

        " } }, "httpstatus": { "base": null, "refs": { "GetJobOutputOutput$status": "

        The HTTP response code for a job output request. The value depends on whether a range was specified in the request.

        " } }, "long": { "base": null, "refs": { "DescribeVaultOutput$NumberOfArchives": "

        The number of archives in the vault as of the last inventory date. This field will return null if an inventory has not yet run on the vault, for example, if you just created the vault.

        ", "DescribeVaultOutput$SizeInBytes": "

        Total size, in bytes, of the archives in the vault as of the last inventory date. This field will return null if an inventory has not yet run on the vault, for example, if you just created the vault.

        ", "ListPartsOutput$PartSizeInBytes": "

        The part size in bytes.

        ", "UploadListElement$PartSizeInBytes": "

        The part size, in bytes, specified in the Initiate Multipart Upload request. This is the size of all the parts in the upload except the last part, which may be smaller than this size.

        " } }, "string": { "base": null, "refs": { "AbortMultipartUploadInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "AbortMultipartUploadInput$vaultName": "

        The name of the vault.

        ", "AbortMultipartUploadInput$uploadId": "

        The upload ID of the multipart upload to delete.

        ", "AbortVaultLockInput$accountId": "

        The AccountId value is the AWS account ID. This value must match the AWS account ID associated with the credentials used to sign the request. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you specify your account ID, do not include any hyphens (apos-apos) in the ID.

        ", "AbortVaultLockInput$vaultName": "

        The name of the vault.

        ", "AddTagsToVaultInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "AddTagsToVaultInput$vaultName": "

        The name of the vault.

        ", "ArchiveCreationOutput$location": "

        The relative URI path of the newly added archive resource.

        ", "ArchiveCreationOutput$checksum": "

        The checksum of the archive computed by Amazon Glacier.

        ", "ArchiveCreationOutput$archiveId": "

        The ID of the archive. This value is also included as part of the location.

        ", "CompleteMultipartUploadInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "CompleteMultipartUploadInput$vaultName": "

        The name of the vault.

        ", "CompleteMultipartUploadInput$uploadId": "

        The upload ID of the multipart upload.

        ", "CompleteMultipartUploadInput$archiveSize": "

        The total size, in bytes, of the entire archive. This value should be the sum of all the sizes of the individual parts that you uploaded.

        ", "CompleteMultipartUploadInput$checksum": "

        The SHA256 tree hash of the entire archive. It is the tree hash of SHA256 tree hash of the individual parts. If the value you specify in the request does not match the SHA256 tree hash of the final assembled archive as computed by Amazon Glacier, Amazon Glacier returns an error and the request fails.

        ", "CompleteVaultLockInput$accountId": "

        The AccountId value is the AWS account ID. This value must match the AWS account ID associated with the credentials used to sign the request. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you specify your account ID, do not include any hyphens (apos-apos) in the ID.

        ", "CompleteVaultLockInput$vaultName": "

        The name of the vault.

        ", "CompleteVaultLockInput$lockId": "

        The lockId value is the lock ID obtained from a InitiateVaultLock request.

        ", "CreateVaultInput$accountId": "

        The AccountId value is the AWS account ID. This value must match the AWS account ID associated with the credentials used to sign the request. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you specify your account ID, do not include any hyphens (apos-apos) in the ID.

        ", "CreateVaultInput$vaultName": "

        The name of the vault.

        ", "CreateVaultOutput$location": "

        The URI of the vault that was created.

        ", "DataRetrievalRule$Strategy": "

        The type of data retrieval policy to set.

        Valid values: BytesPerHour|FreeTier|None

        ", "DeleteArchiveInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "DeleteArchiveInput$vaultName": "

        The name of the vault.

        ", "DeleteArchiveInput$archiveId": "

        The ID of the archive to delete.

        ", "DeleteVaultAccessPolicyInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "DeleteVaultAccessPolicyInput$vaultName": "

        The name of the vault.

        ", "DeleteVaultInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "DeleteVaultInput$vaultName": "

        The name of the vault.

        ", "DeleteVaultNotificationsInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "DeleteVaultNotificationsInput$vaultName": "

        The name of the vault.

        ", "DescribeJobInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "DescribeJobInput$vaultName": "

        The name of the vault.

        ", "DescribeJobInput$jobId": "

        The ID of the job to describe.

        ", "DescribeVaultInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "DescribeVaultInput$vaultName": "

        The name of the vault.

        ", "DescribeVaultOutput$VaultARN": "

        The Amazon Resource Name (ARN) of the vault.

        ", "DescribeVaultOutput$VaultName": "

        The name of the vault.

        ", "DescribeVaultOutput$CreationDate": "

        The UTC date when the vault was created. A string representation of ISO 8601 date format, for example, \"2012-03-20T17:03:43.221Z\".

        ", "DescribeVaultOutput$LastInventoryDate": "

        The UTC date when Amazon Glacier completed the last vault inventory. A string representation of ISO 8601 date format, for example, \"2012-03-20T17:03:43.221Z\".

        ", "GetDataRetrievalPolicyInput$accountId": "

        The AccountId value is the AWS account ID. This value must match the AWS account ID associated with the credentials used to sign the request. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you specify your account ID, do not include any hyphens (apos-apos) in the ID.

        ", "GetJobOutputInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "GetJobOutputInput$vaultName": "

        The name of the vault.

        ", "GetJobOutputInput$jobId": "

        The job ID whose data is downloaded.

        ", "GetJobOutputInput$range": "

        The range of bytes to retrieve from the output. For example, if you want to download the first 1,048,576 bytes, specify \"Range: bytes=0-1048575\". By default, this operation downloads the entire output.

        ", "GetJobOutputOutput$checksum": "

        The checksum of the data in the response. This header is returned only when retrieving the output for an archive retrieval job. Furthermore, this header appears only under the following conditions:

        • You get the entire range of the archive.
        • You request a range to return of the archive that starts and ends on a multiple of 1 MB. For example, if you have an 3.1 MB archive and you specify a range to return that starts at 1 MB and ends at 2 MB, then the x-amz-sha256-tree-hash is returned as a response header.
        • You request a range of the archive to return that starts on a multiple of 1 MB and goes to the end of the archive. For example, if you have a 3.1 MB archive and you specify a range that starts at 2 MB and ends at 3.1 MB (the end of the archive), then the x-amz-sha256-tree-hash is returned as a response header.

        ", "GetJobOutputOutput$contentRange": "

        The range of bytes returned by Amazon Glacier. If only partial output is downloaded, the response provides the range of bytes Amazon Glacier returned. For example, bytes 0-1048575/8388608 returns the first 1 MB from 8 MB.

        ", "GetJobOutputOutput$acceptRanges": "

        Indicates the range units accepted. For more information, go to RFC2616.

        ", "GetJobOutputOutput$contentType": "

        The Content-Type depends on whether the job output is an archive or a vault inventory. For archive data, the Content-Type is application/octet-stream. For vault inventory, if you requested CSV format when you initiated the job, the Content-Type is text/csv. Otherwise, by default, vault inventory is returned as JSON, and the Content-Type is application/json.

        ", "GetJobOutputOutput$archiveDescription": "

        The description of an archive.

        ", "GetVaultAccessPolicyInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "GetVaultAccessPolicyInput$vaultName": "

        The name of the vault.

        ", "GetVaultLockInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "GetVaultLockInput$vaultName": "

        The name of the vault.

        ", "GetVaultLockOutput$Policy": "

        The vault lock policy as a JSON string, which uses \"\\\" as an escape character.

        ", "GetVaultLockOutput$State": "

        The state of the vault lock. InProgress or Locked.

        ", "GetVaultLockOutput$ExpirationDate": "

        The UTC date and time at which the lock ID expires. This value can be null if the vault lock is in a Locked state.

        ", "GetVaultLockOutput$CreationDate": "

        The UTC date and time at which the vault lock was put into the InProgress state.

        ", "GetVaultNotificationsInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "GetVaultNotificationsInput$vaultName": "

        The name of the vault.

        ", "GlacierJobDescription$JobId": "

        An opaque string that identifies an Amazon Glacier job.

        ", "GlacierJobDescription$JobDescription": "

        The job description you provided when you initiated the job.

        ", "GlacierJobDescription$ArchiveId": "

        For an ArchiveRetrieval job, this is the archive ID requested for download. Otherwise, this field is null.

        ", "GlacierJobDescription$VaultARN": "

        The Amazon Resource Name (ARN) of the vault from which the archive retrieval was requested.

        ", "GlacierJobDescription$CreationDate": "

        The UTC date when the job was created. A string representation of ISO 8601 date format, for example, \"2012-03-20T17:03:43.221Z\".

        ", "GlacierJobDescription$StatusMessage": "

        A friendly message that describes the job status.

        ", "GlacierJobDescription$SNSTopic": "

        An Amazon Simple Notification Service (Amazon SNS) topic that receives notification.

        ", "GlacierJobDescription$CompletionDate": "

        The UTC time that the archive retrieval request completed. While the job is in progress, the value will be null.

        ", "GlacierJobDescription$SHA256TreeHash": "

        For an ArchiveRetrieval job, it is the checksum of the archive. Otherwise, the value is null.

        The SHA256 tree hash value for the requested range of an archive. If the Initiate a Job request for an archive specified a tree-hash aligned range, then this field returns a value.

        For the specific case when the whole archive is retrieved, this value is the same as the ArchiveSHA256TreeHash value.

        This field is null in the following situations:

        • Archive retrieval jobs that specify a range that is not tree-hash aligned.

        • Archival jobs that specify a range that is equal to the whole archive and the job status is InProgress.

        • Inventory jobs.

        ", "GlacierJobDescription$ArchiveSHA256TreeHash": "

        The SHA256 tree hash of the entire archive for an archive retrieval. For inventory retrieval jobs, this field is null.

        ", "GlacierJobDescription$RetrievalByteRange": "

        The retrieved byte range for archive retrieval jobs in the form \"StartByteValue-EndByteValue\" If no range was specified in the archive retrieval, then the whole archive is retrieved and StartByteValue equals 0 and EndByteValue equals the size of the archive minus 1. For inventory retrieval jobs this field is null.

        ", "InitiateJobInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "InitiateJobInput$vaultName": "

        The name of the vault.

        ", "InitiateJobOutput$location": "

        The relative URI path of the job.

        ", "InitiateJobOutput$jobId": "

        The ID of the job.

        ", "InitiateMultipartUploadInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "InitiateMultipartUploadInput$vaultName": "

        The name of the vault.

        ", "InitiateMultipartUploadInput$archiveDescription": "

        The archive description that you are uploading in parts.

        The part size must be a megabyte (1024 KB) multiplied by a power of 2, for example 1048576 (1 MB), 2097152 (2 MB), 4194304 (4 MB), 8388608 (8 MB), and so on. The minimum allowable part size is 1 MB, and the maximum is 4 GB (4096 MB).

        ", "InitiateMultipartUploadInput$partSize": "

        The size of each part except the last, in bytes. The last part can be smaller than this part size.

        ", "InitiateMultipartUploadOutput$location": "

        The relative URI path of the multipart upload ID Amazon Glacier created.

        ", "InitiateMultipartUploadOutput$uploadId": "

        The ID of the multipart upload. This value is also included as part of the location.

        ", "InitiateVaultLockInput$accountId": "

        The AccountId value is the AWS account ID. This value must match the AWS account ID associated with the credentials used to sign the request. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you specify your account ID, do not include any hyphens (apos-apos) in the ID.

        ", "InitiateVaultLockInput$vaultName": "

        The name of the vault.

        ", "InitiateVaultLockOutput$lockId": "

        The lock ID, which is used to complete the vault locking process.

        ", "InvalidParameterValueException$type": "

        Client

        ", "InvalidParameterValueException$code": "

        400 Bad Request

        ", "InvalidParameterValueException$message": null, "InventoryRetrievalJobDescription$Format": "

        The output format for the vault inventory list, which is set by the InitiateJob request when initiating a job to retrieve a vault inventory. Valid values are \"CSV\" and \"JSON\".

        ", "InventoryRetrievalJobDescription$Limit": "

        Specifies the maximum number of inventory items returned per vault inventory retrieval request. This limit is set when initiating the job with the a InitiateJob request.

        ", "InventoryRetrievalJobDescription$Marker": "

        An opaque string that represents where to continue pagination of the vault inventory retrieval results. You use the marker in a new InitiateJob request to obtain additional inventory items. If there are no more inventory items, this value is null. For more information, see Range Inventory Retrieval.

        ", "InventoryRetrievalJobInput$StartDate": "

        The start of the date range in UTC for vault inventory retrieval that includes archives created on or after this date. A string representation of ISO 8601 date format, for example, 2013-03-20T17:03:43Z.

        ", "InventoryRetrievalJobInput$EndDate": "

        The end of the date range in UTC for vault inventory retrieval that includes archives created before this date. A string representation of ISO 8601 date format, for example, 2013-03-20T17:03:43Z.

        ", "InventoryRetrievalJobInput$Limit": "

        Specifies the maximum number of inventory items returned per vault inventory retrieval request. Valid values are greater than or equal to 1.

        ", "InventoryRetrievalJobInput$Marker": "

        An opaque string that represents where to continue pagination of the vault inventory retrieval results. You use the marker in a new InitiateJob request to obtain additional inventory items. If there are no more inventory items, this value is null.

        ", "JobParameters$Format": "

        When initiating a job to retrieve a vault inventory, you can optionally add this parameter to your request to specify the output format. If you are initiating an inventory job and do not specify a Format field, JSON is the default format. Valid values are \"CSV\" and \"JSON\".

        ", "JobParameters$Type": "

        The job type. You can initiate a job to retrieve an archive or get an inventory of a vault. Valid values are \"archive-retrieval\" and \"inventory-retrieval\".

        ", "JobParameters$ArchiveId": "

        The ID of the archive that you want to retrieve. This field is required only if Type is set to archive-retrieval. An error occurs if you specify this request parameter for an inventory retrieval job request.

        ", "JobParameters$Description": "

        The optional description for the job. The description must be less than or equal to 1,024 bytes. The allowable characters are 7-bit ASCII without control codes-specifically, ASCII values 32-126 decimal or 0x20-0x7E hexadecimal.

        ", "JobParameters$SNSTopic": "

        The Amazon SNS topic ARN to which Amazon Glacier sends a notification when the job is completed and the output is ready for you to download. The specified topic publishes the notification to its subscribers. The SNS topic must exist.

        ", "JobParameters$RetrievalByteRange": "

        The byte range to retrieve for an archive retrieval. in the form \"StartByteValue-EndByteValue\" If not specified, the whole archive is retrieved. If specified, the byte range must be megabyte (1024*1024) aligned which means that StartByteValue must be divisible by 1 MB and EndByteValue plus 1 must be divisible by 1 MB or be the end of the archive specified as the archive byte size value minus 1. If RetrievalByteRange is not megabyte aligned, this operation returns a 400 response.

        An error occurs if you specify this field for an inventory retrieval job request.

        ", "LimitExceededException$type": "

        Client

        ", "LimitExceededException$code": "

        400 Bad Request

        ", "LimitExceededException$message": null, "ListJobsInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "ListJobsInput$vaultName": "

        The name of the vault.

        ", "ListJobsInput$limit": "

        Specifies that the response be limited to the specified number of items or fewer. If not specified, the List Jobs operation returns up to 1,000 jobs.

        ", "ListJobsInput$marker": "

        An opaque string used for pagination. This value specifies the job at which the listing of jobs should begin. Get the marker value from a previous List Jobs response. You need only include the marker if you are continuing the pagination of results started in a previous List Jobs request.

        ", "ListJobsInput$statuscode": "

        Specifies the type of job status to return. You can specify the following values: \"InProgress\", \"Succeeded\", or \"Failed\".

        ", "ListJobsInput$completed": "

        Specifies the state of the jobs to return. You can specify true or false.

        ", "ListJobsOutput$Marker": "

        An opaque string that represents where to continue pagination of the results. You use this value in a new List Jobs request to obtain more jobs in the list. If there are no more jobs, this value is null.

        ", "ListMultipartUploadsInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "ListMultipartUploadsInput$vaultName": "

        The name of the vault.

        ", "ListMultipartUploadsInput$marker": "

        An opaque string used for pagination. This value specifies the upload at which the listing of uploads should begin. Get the marker value from a previous List Uploads response. You need only include the marker if you are continuing the pagination of results started in a previous List Uploads request.

        ", "ListMultipartUploadsInput$limit": "

        Specifies the maximum number of uploads returned in the response body. If this value is not specified, the List Uploads operation returns up to 1,000 uploads.

        ", "ListMultipartUploadsOutput$Marker": "

        An opaque string that represents where to continue pagination of the results. You use the marker in a new List Multipart Uploads request to obtain more uploads in the list. If there are no more uploads, this value is null.

        ", "ListPartsInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "ListPartsInput$vaultName": "

        The name of the vault.

        ", "ListPartsInput$uploadId": "

        The upload ID of the multipart upload.

        ", "ListPartsInput$marker": "

        An opaque string used for pagination. This value specifies the part at which the listing of parts should begin. Get the marker value from the response of a previous List Parts response. You need only include the marker if you are continuing the pagination of results started in a previous List Parts request.

        ", "ListPartsInput$limit": "

        Specifies the maximum number of parts returned in the response body. If this value is not specified, the List Parts operation returns up to 1,000 uploads.

        ", "ListPartsOutput$MultipartUploadId": "

        The ID of the upload to which the parts are associated.

        ", "ListPartsOutput$VaultARN": "

        The Amazon Resource Name (ARN) of the vault to which the multipart upload was initiated.

        ", "ListPartsOutput$ArchiveDescription": "

        The description of the archive that was specified in the Initiate Multipart Upload request.

        ", "ListPartsOutput$CreationDate": "

        The UTC time at which the multipart upload was initiated.

        ", "ListPartsOutput$Marker": "

        An opaque string that represents where to continue pagination of the results. You use the marker in a new List Parts request to obtain more jobs in the list. If there are no more parts, this value is null.

        ", "ListTagsForVaultInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "ListTagsForVaultInput$vaultName": "

        The name of the vault.

        ", "ListVaultsInput$accountId": "

        The AccountId value is the AWS account ID. This value must match the AWS account ID associated with the credentials used to sign the request. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you specify your account ID, do not include any hyphens (apos-apos) in the ID.

        ", "ListVaultsInput$marker": "

        A string used for pagination. The marker specifies the vault ARN after which the listing of vaults should begin.

        ", "ListVaultsInput$limit": "

        The maximum number of items returned in the response. If you don't specify a value, the List Vaults operation returns up to 1,000 items.

        ", "ListVaultsOutput$Marker": "

        The vault ARN at which to continue pagination of the results. You use the marker in another List Vaults request to obtain more vaults in the list.

        ", "MissingParameterValueException$type": "

        Client.

        ", "MissingParameterValueException$code": "

        400 Bad Request

        ", "MissingParameterValueException$message": null, "NotificationEventList$member": null, "PartListElement$RangeInBytes": "

        The byte range of a part, inclusive of the upper value of the range.

        ", "PartListElement$SHA256TreeHash": "

        The SHA256 tree hash value that Amazon Glacier calculated for the part. This field is never null.

        ", "PolicyEnforcedException$type": "

        Client

        ", "PolicyEnforcedException$code": "

        PolicyEnforcedException

        ", "PolicyEnforcedException$message": "

        InitiateJob request denied by current data retrieval policy.

        ", "RemoveTagsFromVaultInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "RemoveTagsFromVaultInput$vaultName": "

        The name of the vault.

        ", "RequestTimeoutException$type": "

        Client

        ", "RequestTimeoutException$code": "

        408 Request Timeout

        ", "RequestTimeoutException$message": null, "ResourceNotFoundException$type": "

        Client

        ", "ResourceNotFoundException$code": "

        404 Not Found

        ", "ResourceNotFoundException$message": null, "ServiceUnavailableException$type": "

        Server

        ", "ServiceUnavailableException$code": "

        500 Internal Server Error

        ", "ServiceUnavailableException$message": null, "SetDataRetrievalPolicyInput$accountId": "

        The AccountId value is the AWS account ID. This value must match the AWS account ID associated with the credentials used to sign the request. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you specify your account ID, do not include any hyphens (apos-apos) in the ID.

        ", "SetVaultAccessPolicyInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "SetVaultAccessPolicyInput$vaultName": "

        The name of the vault.

        ", "SetVaultNotificationsInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "SetVaultNotificationsInput$vaultName": "

        The name of the vault.

        ", "TagKeyList$member": null, "UploadArchiveInput$vaultName": "

        The name of the vault.

        ", "UploadArchiveInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "UploadArchiveInput$archiveDescription": "

        The optional description of the archive you are uploading.

        ", "UploadArchiveInput$checksum": "

        The SHA256 tree hash of the data being uploaded.

        ", "UploadListElement$MultipartUploadId": "

        The ID of a multipart upload.

        ", "UploadListElement$VaultARN": "

        The Amazon Resource Name (ARN) of the vault that contains the archive.

        ", "UploadListElement$ArchiveDescription": "

        The description of the archive that was specified in the Initiate Multipart Upload request.

        ", "UploadListElement$CreationDate": "

        The UTC time at which the multipart upload was initiated.

        ", "UploadMultipartPartInput$accountId": "

        The AccountId value is the AWS account ID of the account that owns the vault. You can either specify an AWS account ID or optionally a single apos-apos (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you use an account ID, do not include any hyphens (apos-apos) in the ID.

        ", "UploadMultipartPartInput$vaultName": "

        The name of the vault.

        ", "UploadMultipartPartInput$uploadId": "

        The upload ID of the multipart upload.

        ", "UploadMultipartPartInput$checksum": "

        The SHA256 tree hash of the data being uploaded.

        ", "UploadMultipartPartInput$range": "

        Identifies the range of bytes in the assembled archive that will be uploaded in this part. Amazon Glacier uses this information to assemble the archive in the proper sequence. The format of this header follows RFC 2616. An example header is Content-Range:bytes 0-4194303/*.

        ", "UploadMultipartPartOutput$checksum": "

        The SHA256 tree hash that Amazon Glacier computed for the uploaded part.

        ", "VaultAccessPolicy$Policy": "

        The vault access policy.

        ", "VaultLockPolicy$Policy": "

        The vault lock policy.

        ", "VaultNotificationConfig$SNSTopic": "

        The Amazon Simple Notification Service (Amazon SNS) topic Amazon Resource Name (ARN).

        " } } } } aws-sdk-go-1.4.22/models/apis/glacier/2012-06-01/paginators-1.json000066400000000000000000000011641300374646400236370ustar00rootroot00000000000000{ "pagination": { "ListJobs": { "input_token": "marker", "output_token": "Marker", "limit_key": "limit", "result_key": "JobList" }, "ListMultipartUploads": { "input_token": "marker", "output_token": "Marker", "limit_key": "limit", "result_key": "UploadsList" }, "ListParts": { "input_token": "marker", "output_token": "Marker", "limit_key": "limit", "result_key": "Parts" }, "ListVaults": { "input_token": "marker", "output_token": "Marker", "limit_key": "limit", "result_key": "VaultList" } } } aws-sdk-go-1.4.22/models/apis/glacier/2012-06-01/waiters-2.json000066400000000000000000000014211300374646400231430ustar00rootroot00000000000000{ "version": 2, "waiters": { "VaultExists": { "operation": "DescribeVault", "delay": 3, "maxAttempts": 15, "acceptors": [ { "state": "success", "matcher": "status", "expected": 200 }, { "state": "retry", "matcher": "error", "expected": "ResourceNotFoundException" } ] }, "VaultNotExists": { "operation": "DescribeVault", "delay": 3, "maxAttempts": 15, "acceptors": [ { "state": "retry", "matcher": "status", "expected": 200 }, { "state": "success", "matcher": "error", "expected": "ResourceNotFoundException" } ] } } } aws-sdk-go-1.4.22/models/apis/iam/000077500000000000000000000000001300374646400165505ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/iam/2010-05-08/000077500000000000000000000000001300374646400176015ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/iam/2010-05-08/api-2.json000066400000000000000000003572701300374646400214220ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2010-05-08", "endpointPrefix":"iam", "globalEndpoint":"iam.amazonaws.com", "protocol":"query", "serviceAbbreviation":"IAM", "serviceFullName":"AWS Identity and Access Management", "signatureVersion":"v4", "xmlNamespace":"https://iam.amazonaws.com/doc/2010-05-08/" }, "operations":{ "AddClientIDToOpenIDConnectProvider":{ "name":"AddClientIDToOpenIDConnectProvider", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddClientIDToOpenIDConnectProviderRequest"}, "errors":[ {"shape":"InvalidInputException"}, {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "AddRoleToInstanceProfile":{ "name":"AddRoleToInstanceProfile", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddRoleToInstanceProfileRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"EntityAlreadyExistsException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "AddUserToGroup":{ "name":"AddUserToGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddUserToGroupRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "AttachGroupPolicy":{ "name":"AttachGroupPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachGroupPolicyRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidInputException"}, {"shape":"ServiceFailureException"} ] }, "AttachRolePolicy":{ "name":"AttachRolePolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachRolePolicyRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidInputException"}, {"shape":"ServiceFailureException"} ] }, "AttachUserPolicy":{ "name":"AttachUserPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachUserPolicyRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidInputException"}, {"shape":"ServiceFailureException"} ] }, "ChangePassword":{ "name":"ChangePassword", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ChangePasswordRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"InvalidUserTypeException"}, {"shape":"LimitExceededException"}, {"shape":"EntityTemporarilyUnmodifiableException"}, {"shape":"PasswordPolicyViolationException"}, {"shape":"ServiceFailureException"} ] }, "CreateAccessKey":{ "name":"CreateAccessKey", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateAccessKeyRequest"}, "output":{ "shape":"CreateAccessKeyResponse", "resultWrapper":"CreateAccessKeyResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "CreateAccountAlias":{ "name":"CreateAccountAlias", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateAccountAliasRequest"}, "errors":[ {"shape":"EntityAlreadyExistsException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "CreateGroup":{ "name":"CreateGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateGroupRequest"}, "output":{ "shape":"CreateGroupResponse", "resultWrapper":"CreateGroupResult" }, "errors":[ {"shape":"LimitExceededException"}, {"shape":"EntityAlreadyExistsException"}, {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "CreateInstanceProfile":{ "name":"CreateInstanceProfile", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateInstanceProfileRequest"}, "output":{ "shape":"CreateInstanceProfileResponse", "resultWrapper":"CreateInstanceProfileResult" }, "errors":[ {"shape":"EntityAlreadyExistsException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "CreateLoginProfile":{ "name":"CreateLoginProfile", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateLoginProfileRequest"}, "output":{ "shape":"CreateLoginProfileResponse", "resultWrapper":"CreateLoginProfileResult" }, "errors":[ {"shape":"EntityAlreadyExistsException"}, {"shape":"NoSuchEntityException"}, {"shape":"PasswordPolicyViolationException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "CreateOpenIDConnectProvider":{ "name":"CreateOpenIDConnectProvider", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateOpenIDConnectProviderRequest"}, "output":{ "shape":"CreateOpenIDConnectProviderResponse", "resultWrapper":"CreateOpenIDConnectProviderResult" }, "errors":[ {"shape":"InvalidInputException"}, {"shape":"EntityAlreadyExistsException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "CreatePolicy":{ "name":"CreatePolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreatePolicyRequest"}, "output":{ "shape":"CreatePolicyResponse", "resultWrapper":"CreatePolicyResult" }, "errors":[ {"shape":"InvalidInputException"}, {"shape":"LimitExceededException"}, {"shape":"EntityAlreadyExistsException"}, {"shape":"MalformedPolicyDocumentException"}, {"shape":"ServiceFailureException"} ] }, "CreatePolicyVersion":{ "name":"CreatePolicyVersion", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreatePolicyVersionRequest"}, "output":{ "shape":"CreatePolicyVersionResponse", "resultWrapper":"CreatePolicyVersionResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"MalformedPolicyDocumentException"}, {"shape":"InvalidInputException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "CreateRole":{ "name":"CreateRole", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateRoleRequest"}, "output":{ "shape":"CreateRoleResponse", "resultWrapper":"CreateRoleResult" }, "errors":[ {"shape":"LimitExceededException"}, {"shape":"EntityAlreadyExistsException"}, {"shape":"MalformedPolicyDocumentException"}, {"shape":"ServiceFailureException"} ] }, "CreateSAMLProvider":{ "name":"CreateSAMLProvider", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSAMLProviderRequest"}, "output":{ "shape":"CreateSAMLProviderResponse", "resultWrapper":"CreateSAMLProviderResult" }, "errors":[ {"shape":"InvalidInputException"}, {"shape":"EntityAlreadyExistsException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "CreateUser":{ "name":"CreateUser", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateUserRequest"}, "output":{ "shape":"CreateUserResponse", "resultWrapper":"CreateUserResult" }, "errors":[ {"shape":"LimitExceededException"}, {"shape":"EntityAlreadyExistsException"}, {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "CreateVirtualMFADevice":{ "name":"CreateVirtualMFADevice", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateVirtualMFADeviceRequest"}, "output":{ "shape":"CreateVirtualMFADeviceResponse", "resultWrapper":"CreateVirtualMFADeviceResult" }, "errors":[ {"shape":"LimitExceededException"}, {"shape":"EntityAlreadyExistsException"}, {"shape":"ServiceFailureException"} ] }, "DeactivateMFADevice":{ "name":"DeactivateMFADevice", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeactivateMFADeviceRequest"}, "errors":[ {"shape":"EntityTemporarilyUnmodifiableException"}, {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "DeleteAccessKey":{ "name":"DeleteAccessKey", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteAccessKeyRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "DeleteAccountAlias":{ "name":"DeleteAccountAlias", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteAccountAliasRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "DeleteAccountPasswordPolicy":{ "name":"DeleteAccountPasswordPolicy", "http":{ "method":"POST", "requestUri":"/" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "DeleteGroup":{ "name":"DeleteGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteGroupRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"DeleteConflictException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "DeleteGroupPolicy":{ "name":"DeleteGroupPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteGroupPolicyRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "DeleteInstanceProfile":{ "name":"DeleteInstanceProfile", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteInstanceProfileRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"DeleteConflictException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "DeleteLoginProfile":{ "name":"DeleteLoginProfile", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteLoginProfileRequest"}, "errors":[ {"shape":"EntityTemporarilyUnmodifiableException"}, {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "DeleteOpenIDConnectProvider":{ "name":"DeleteOpenIDConnectProvider", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteOpenIDConnectProviderRequest"}, "errors":[ {"shape":"InvalidInputException"}, {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "DeletePolicy":{ "name":"DeletePolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeletePolicyRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidInputException"}, {"shape":"DeleteConflictException"}, {"shape":"ServiceFailureException"} ] }, "DeletePolicyVersion":{ "name":"DeletePolicyVersion", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeletePolicyVersionRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidInputException"}, {"shape":"DeleteConflictException"}, {"shape":"ServiceFailureException"} ] }, "DeleteRole":{ "name":"DeleteRole", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRoleRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"DeleteConflictException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "DeleteRolePolicy":{ "name":"DeleteRolePolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRolePolicyRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "DeleteSAMLProvider":{ "name":"DeleteSAMLProvider", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSAMLProviderRequest"}, "errors":[ {"shape":"InvalidInputException"}, {"shape":"LimitExceededException"}, {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "DeleteSSHPublicKey":{ "name":"DeleteSSHPublicKey", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSSHPublicKeyRequest"}, "errors":[ {"shape":"NoSuchEntityException"} ] }, "DeleteServerCertificate":{ "name":"DeleteServerCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteServerCertificateRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"DeleteConflictException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "DeleteSigningCertificate":{ "name":"DeleteSigningCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSigningCertificateRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "DeleteUser":{ "name":"DeleteUser", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteUserRequest"}, "errors":[ {"shape":"LimitExceededException"}, {"shape":"NoSuchEntityException"}, {"shape":"DeleteConflictException"}, {"shape":"ServiceFailureException"} ] }, "DeleteUserPolicy":{ "name":"DeleteUserPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteUserPolicyRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "DeleteVirtualMFADevice":{ "name":"DeleteVirtualMFADevice", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVirtualMFADeviceRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"DeleteConflictException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "DetachGroupPolicy":{ "name":"DetachGroupPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachGroupPolicyRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidInputException"}, {"shape":"ServiceFailureException"} ] }, "DetachRolePolicy":{ "name":"DetachRolePolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachRolePolicyRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidInputException"}, {"shape":"ServiceFailureException"} ] }, "DetachUserPolicy":{ "name":"DetachUserPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachUserPolicyRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidInputException"}, {"shape":"ServiceFailureException"} ] }, "EnableMFADevice":{ "name":"EnableMFADevice", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableMFADeviceRequest"}, "errors":[ {"shape":"EntityAlreadyExistsException"}, {"shape":"EntityTemporarilyUnmodifiableException"}, {"shape":"InvalidAuthenticationCodeException"}, {"shape":"LimitExceededException"}, {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "GenerateCredentialReport":{ "name":"GenerateCredentialReport", "http":{ "method":"POST", "requestUri":"/" }, "output":{ "shape":"GenerateCredentialReportResponse", "resultWrapper":"GenerateCredentialReportResult" }, "errors":[ {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "GetAccessKeyLastUsed":{ "name":"GetAccessKeyLastUsed", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetAccessKeyLastUsedRequest"}, "output":{ "shape":"GetAccessKeyLastUsedResponse", "resultWrapper":"GetAccessKeyLastUsedResult" }, "errors":[ {"shape":"NoSuchEntityException"} ] }, "GetAccountAuthorizationDetails":{ "name":"GetAccountAuthorizationDetails", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetAccountAuthorizationDetailsRequest"}, "output":{ "shape":"GetAccountAuthorizationDetailsResponse", "resultWrapper":"GetAccountAuthorizationDetailsResult" }, "errors":[ {"shape":"ServiceFailureException"} ] }, "GetAccountPasswordPolicy":{ "name":"GetAccountPasswordPolicy", "http":{ "method":"POST", "requestUri":"/" }, "output":{ "shape":"GetAccountPasswordPolicyResponse", "resultWrapper":"GetAccountPasswordPolicyResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "GetAccountSummary":{ "name":"GetAccountSummary", "http":{ "method":"POST", "requestUri":"/" }, "output":{ "shape":"GetAccountSummaryResponse", "resultWrapper":"GetAccountSummaryResult" }, "errors":[ {"shape":"ServiceFailureException"} ] }, "GetContextKeysForCustomPolicy":{ "name":"GetContextKeysForCustomPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetContextKeysForCustomPolicyRequest"}, "output":{ "shape":"GetContextKeysForPolicyResponse", "resultWrapper":"GetContextKeysForCustomPolicyResult" }, "errors":[ {"shape":"InvalidInputException"} ] }, "GetContextKeysForPrincipalPolicy":{ "name":"GetContextKeysForPrincipalPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetContextKeysForPrincipalPolicyRequest"}, "output":{ "shape":"GetContextKeysForPolicyResponse", "resultWrapper":"GetContextKeysForPrincipalPolicyResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"InvalidInputException"} ] }, "GetCredentialReport":{ "name":"GetCredentialReport", "http":{ "method":"POST", "requestUri":"/" }, "output":{ "shape":"GetCredentialReportResponse", "resultWrapper":"GetCredentialReportResult" }, "errors":[ {"shape":"CredentialReportNotPresentException"}, {"shape":"CredentialReportExpiredException"}, {"shape":"CredentialReportNotReadyException"}, {"shape":"ServiceFailureException"} ] }, "GetGroup":{ "name":"GetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetGroupRequest"}, "output":{ "shape":"GetGroupResponse", "resultWrapper":"GetGroupResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "GetGroupPolicy":{ "name":"GetGroupPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetGroupPolicyRequest"}, "output":{ "shape":"GetGroupPolicyResponse", "resultWrapper":"GetGroupPolicyResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "GetInstanceProfile":{ "name":"GetInstanceProfile", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetInstanceProfileRequest"}, "output":{ "shape":"GetInstanceProfileResponse", "resultWrapper":"GetInstanceProfileResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "GetLoginProfile":{ "name":"GetLoginProfile", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetLoginProfileRequest"}, "output":{ "shape":"GetLoginProfileResponse", "resultWrapper":"GetLoginProfileResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "GetOpenIDConnectProvider":{ "name":"GetOpenIDConnectProvider", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetOpenIDConnectProviderRequest"}, "output":{ "shape":"GetOpenIDConnectProviderResponse", "resultWrapper":"GetOpenIDConnectProviderResult" }, "errors":[ {"shape":"InvalidInputException"}, {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "GetPolicy":{ "name":"GetPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetPolicyRequest"}, "output":{ "shape":"GetPolicyResponse", "resultWrapper":"GetPolicyResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"InvalidInputException"}, {"shape":"ServiceFailureException"} ] }, "GetPolicyVersion":{ "name":"GetPolicyVersion", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetPolicyVersionRequest"}, "output":{ "shape":"GetPolicyVersionResponse", "resultWrapper":"GetPolicyVersionResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"InvalidInputException"}, {"shape":"ServiceFailureException"} ] }, "GetRole":{ "name":"GetRole", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetRoleRequest"}, "output":{ "shape":"GetRoleResponse", "resultWrapper":"GetRoleResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "GetRolePolicy":{ "name":"GetRolePolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetRolePolicyRequest"}, "output":{ "shape":"GetRolePolicyResponse", "resultWrapper":"GetRolePolicyResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "GetSAMLProvider":{ "name":"GetSAMLProvider", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetSAMLProviderRequest"}, "output":{ "shape":"GetSAMLProviderResponse", "resultWrapper":"GetSAMLProviderResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"InvalidInputException"}, {"shape":"ServiceFailureException"} ] }, "GetSSHPublicKey":{ "name":"GetSSHPublicKey", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetSSHPublicKeyRequest"}, "output":{ "shape":"GetSSHPublicKeyResponse", "resultWrapper":"GetSSHPublicKeyResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"UnrecognizedPublicKeyEncodingException"} ] }, "GetServerCertificate":{ "name":"GetServerCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetServerCertificateRequest"}, "output":{ "shape":"GetServerCertificateResponse", "resultWrapper":"GetServerCertificateResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "GetUser":{ "name":"GetUser", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetUserRequest"}, "output":{ "shape":"GetUserResponse", "resultWrapper":"GetUserResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "GetUserPolicy":{ "name":"GetUserPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetUserPolicyRequest"}, "output":{ "shape":"GetUserPolicyResponse", "resultWrapper":"GetUserPolicyResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "ListAccessKeys":{ "name":"ListAccessKeys", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListAccessKeysRequest"}, "output":{ "shape":"ListAccessKeysResponse", "resultWrapper":"ListAccessKeysResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "ListAccountAliases":{ "name":"ListAccountAliases", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListAccountAliasesRequest"}, "output":{ "shape":"ListAccountAliasesResponse", "resultWrapper":"ListAccountAliasesResult" }, "errors":[ {"shape":"ServiceFailureException"} ] }, "ListAttachedGroupPolicies":{ "name":"ListAttachedGroupPolicies", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListAttachedGroupPoliciesRequest"}, "output":{ "shape":"ListAttachedGroupPoliciesResponse", "resultWrapper":"ListAttachedGroupPoliciesResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"InvalidInputException"}, {"shape":"ServiceFailureException"} ] }, "ListAttachedRolePolicies":{ "name":"ListAttachedRolePolicies", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListAttachedRolePoliciesRequest"}, "output":{ "shape":"ListAttachedRolePoliciesResponse", "resultWrapper":"ListAttachedRolePoliciesResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"InvalidInputException"}, {"shape":"ServiceFailureException"} ] }, "ListAttachedUserPolicies":{ "name":"ListAttachedUserPolicies", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListAttachedUserPoliciesRequest"}, "output":{ "shape":"ListAttachedUserPoliciesResponse", "resultWrapper":"ListAttachedUserPoliciesResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"InvalidInputException"}, {"shape":"ServiceFailureException"} ] }, "ListEntitiesForPolicy":{ "name":"ListEntitiesForPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListEntitiesForPolicyRequest"}, "output":{ "shape":"ListEntitiesForPolicyResponse", "resultWrapper":"ListEntitiesForPolicyResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"InvalidInputException"}, {"shape":"ServiceFailureException"} ] }, "ListGroupPolicies":{ "name":"ListGroupPolicies", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListGroupPoliciesRequest"}, "output":{ "shape":"ListGroupPoliciesResponse", "resultWrapper":"ListGroupPoliciesResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "ListGroups":{ "name":"ListGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListGroupsRequest"}, "output":{ "shape":"ListGroupsResponse", "resultWrapper":"ListGroupsResult" }, "errors":[ {"shape":"ServiceFailureException"} ] }, "ListGroupsForUser":{ "name":"ListGroupsForUser", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListGroupsForUserRequest"}, "output":{ "shape":"ListGroupsForUserResponse", "resultWrapper":"ListGroupsForUserResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "ListInstanceProfiles":{ "name":"ListInstanceProfiles", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListInstanceProfilesRequest"}, "output":{ "shape":"ListInstanceProfilesResponse", "resultWrapper":"ListInstanceProfilesResult" }, "errors":[ {"shape":"ServiceFailureException"} ] }, "ListInstanceProfilesForRole":{ "name":"ListInstanceProfilesForRole", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListInstanceProfilesForRoleRequest"}, "output":{ "shape":"ListInstanceProfilesForRoleResponse", "resultWrapper":"ListInstanceProfilesForRoleResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "ListMFADevices":{ "name":"ListMFADevices", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListMFADevicesRequest"}, "output":{ "shape":"ListMFADevicesResponse", "resultWrapper":"ListMFADevicesResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "ListOpenIDConnectProviders":{ "name":"ListOpenIDConnectProviders", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListOpenIDConnectProvidersRequest"}, "output":{ "shape":"ListOpenIDConnectProvidersResponse", "resultWrapper":"ListOpenIDConnectProvidersResult" }, "errors":[ {"shape":"ServiceFailureException"} ] }, "ListPolicies":{ "name":"ListPolicies", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListPoliciesRequest"}, "output":{ "shape":"ListPoliciesResponse", "resultWrapper":"ListPoliciesResult" }, "errors":[ {"shape":"ServiceFailureException"} ] }, "ListPolicyVersions":{ "name":"ListPolicyVersions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListPolicyVersionsRequest"}, "output":{ "shape":"ListPolicyVersionsResponse", "resultWrapper":"ListPolicyVersionsResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"InvalidInputException"}, {"shape":"ServiceFailureException"} ] }, "ListRolePolicies":{ "name":"ListRolePolicies", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListRolePoliciesRequest"}, "output":{ "shape":"ListRolePoliciesResponse", "resultWrapper":"ListRolePoliciesResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "ListRoles":{ "name":"ListRoles", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListRolesRequest"}, "output":{ "shape":"ListRolesResponse", "resultWrapper":"ListRolesResult" }, "errors":[ {"shape":"ServiceFailureException"} ] }, "ListSAMLProviders":{ "name":"ListSAMLProviders", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListSAMLProvidersRequest"}, "output":{ "shape":"ListSAMLProvidersResponse", "resultWrapper":"ListSAMLProvidersResult" }, "errors":[ {"shape":"ServiceFailureException"} ] }, "ListSSHPublicKeys":{ "name":"ListSSHPublicKeys", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListSSHPublicKeysRequest"}, "output":{ "shape":"ListSSHPublicKeysResponse", "resultWrapper":"ListSSHPublicKeysResult" }, "errors":[ {"shape":"NoSuchEntityException"} ] }, "ListServerCertificates":{ "name":"ListServerCertificates", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListServerCertificatesRequest"}, "output":{ "shape":"ListServerCertificatesResponse", "resultWrapper":"ListServerCertificatesResult" }, "errors":[ {"shape":"ServiceFailureException"} ] }, "ListSigningCertificates":{ "name":"ListSigningCertificates", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListSigningCertificatesRequest"}, "output":{ "shape":"ListSigningCertificatesResponse", "resultWrapper":"ListSigningCertificatesResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "ListUserPolicies":{ "name":"ListUserPolicies", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListUserPoliciesRequest"}, "output":{ "shape":"ListUserPoliciesResponse", "resultWrapper":"ListUserPoliciesResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "ListUsers":{ "name":"ListUsers", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListUsersRequest"}, "output":{ "shape":"ListUsersResponse", "resultWrapper":"ListUsersResult" }, "errors":[ {"shape":"ServiceFailureException"} ] }, "ListVirtualMFADevices":{ "name":"ListVirtualMFADevices", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListVirtualMFADevicesRequest"}, "output":{ "shape":"ListVirtualMFADevicesResponse", "resultWrapper":"ListVirtualMFADevicesResult" } }, "PutGroupPolicy":{ "name":"PutGroupPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutGroupPolicyRequest"}, "errors":[ {"shape":"LimitExceededException"}, {"shape":"MalformedPolicyDocumentException"}, {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "PutRolePolicy":{ "name":"PutRolePolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutRolePolicyRequest"}, "errors":[ {"shape":"LimitExceededException"}, {"shape":"MalformedPolicyDocumentException"}, {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "PutUserPolicy":{ "name":"PutUserPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutUserPolicyRequest"}, "errors":[ {"shape":"LimitExceededException"}, {"shape":"MalformedPolicyDocumentException"}, {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "RemoveClientIDFromOpenIDConnectProvider":{ "name":"RemoveClientIDFromOpenIDConnectProvider", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveClientIDFromOpenIDConnectProviderRequest"}, "errors":[ {"shape":"InvalidInputException"}, {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "RemoveRoleFromInstanceProfile":{ "name":"RemoveRoleFromInstanceProfile", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveRoleFromInstanceProfileRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "RemoveUserFromGroup":{ "name":"RemoveUserFromGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveUserFromGroupRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "ResyncMFADevice":{ "name":"ResyncMFADevice", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResyncMFADeviceRequest"}, "errors":[ {"shape":"InvalidAuthenticationCodeException"}, {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "SetDefaultPolicyVersion":{ "name":"SetDefaultPolicyVersion", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetDefaultPolicyVersionRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"InvalidInputException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "SimulateCustomPolicy":{ "name":"SimulateCustomPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SimulateCustomPolicyRequest"}, "output":{ "shape":"SimulatePolicyResponse", "resultWrapper":"SimulateCustomPolicyResult" }, "errors":[ {"shape":"InvalidInputException"}, {"shape":"PolicyEvaluationException"} ] }, "SimulatePrincipalPolicy":{ "name":"SimulatePrincipalPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SimulatePrincipalPolicyRequest"}, "output":{ "shape":"SimulatePolicyResponse", "resultWrapper":"SimulatePrincipalPolicyResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"InvalidInputException"}, {"shape":"PolicyEvaluationException"} ] }, "UpdateAccessKey":{ "name":"UpdateAccessKey", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateAccessKeyRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "UpdateAccountPasswordPolicy":{ "name":"UpdateAccountPasswordPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateAccountPasswordPolicyRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"MalformedPolicyDocumentException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "UpdateAssumeRolePolicy":{ "name":"UpdateAssumeRolePolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateAssumeRolePolicyRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"MalformedPolicyDocumentException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "UpdateGroup":{ "name":"UpdateGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateGroupRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"EntityAlreadyExistsException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "UpdateLoginProfile":{ "name":"UpdateLoginProfile", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateLoginProfileRequest"}, "errors":[ {"shape":"EntityTemporarilyUnmodifiableException"}, {"shape":"NoSuchEntityException"}, {"shape":"PasswordPolicyViolationException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "UpdateOpenIDConnectProviderThumbprint":{ "name":"UpdateOpenIDConnectProviderThumbprint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateOpenIDConnectProviderThumbprintRequest"}, "errors":[ {"shape":"InvalidInputException"}, {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] }, "UpdateSAMLProvider":{ "name":"UpdateSAMLProvider", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateSAMLProviderRequest"}, "output":{ "shape":"UpdateSAMLProviderResponse", "resultWrapper":"UpdateSAMLProviderResult" }, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"InvalidInputException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "UpdateSSHPublicKey":{ "name":"UpdateSSHPublicKey", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateSSHPublicKeyRequest"}, "errors":[ {"shape":"NoSuchEntityException"} ] }, "UpdateServerCertificate":{ "name":"UpdateServerCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateServerCertificateRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"EntityAlreadyExistsException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "UpdateSigningCertificate":{ "name":"UpdateSigningCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateSigningCertificateRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceFailureException"} ] }, "UpdateUser":{ "name":"UpdateUser", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateUserRequest"}, "errors":[ {"shape":"NoSuchEntityException"}, {"shape":"LimitExceededException"}, {"shape":"EntityAlreadyExistsException"}, {"shape":"EntityTemporarilyUnmodifiableException"}, {"shape":"ServiceFailureException"} ] }, "UploadSSHPublicKey":{ "name":"UploadSSHPublicKey", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UploadSSHPublicKeyRequest"}, "output":{ "shape":"UploadSSHPublicKeyResponse", "resultWrapper":"UploadSSHPublicKeyResult" }, "errors":[ {"shape":"LimitExceededException"}, {"shape":"NoSuchEntityException"}, {"shape":"InvalidPublicKeyException"}, {"shape":"DuplicateSSHPublicKeyException"}, {"shape":"UnrecognizedPublicKeyEncodingException"} ] }, "UploadServerCertificate":{ "name":"UploadServerCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UploadServerCertificateRequest"}, "output":{ "shape":"UploadServerCertificateResponse", "resultWrapper":"UploadServerCertificateResult" }, "errors":[ {"shape":"LimitExceededException"}, {"shape":"EntityAlreadyExistsException"}, {"shape":"MalformedCertificateException"}, {"shape":"KeyPairMismatchException"}, {"shape":"ServiceFailureException"} ] }, "UploadSigningCertificate":{ "name":"UploadSigningCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UploadSigningCertificateRequest"}, "output":{ "shape":"UploadSigningCertificateResponse", "resultWrapper":"UploadSigningCertificateResult" }, "errors":[ {"shape":"LimitExceededException"}, {"shape":"EntityAlreadyExistsException"}, {"shape":"MalformedCertificateException"}, {"shape":"InvalidCertificateException"}, {"shape":"DuplicateCertificateException"}, {"shape":"NoSuchEntityException"}, {"shape":"ServiceFailureException"} ] } }, "shapes":{ "AccessKey":{ "type":"structure", "required":[ "UserName", "AccessKeyId", "Status", "SecretAccessKey" ], "members":{ "UserName":{"shape":"userNameType"}, "AccessKeyId":{"shape":"accessKeyIdType"}, "Status":{"shape":"statusType"}, "SecretAccessKey":{"shape":"accessKeySecretType"}, "CreateDate":{"shape":"dateType"} } }, "AccessKeyLastUsed":{ "type":"structure", "required":[ "LastUsedDate", "ServiceName", "Region" ], "members":{ "LastUsedDate":{"shape":"dateType"}, "ServiceName":{"shape":"stringType"}, "Region":{"shape":"stringType"} } }, "AccessKeyMetadata":{ "type":"structure", "members":{ "UserName":{"shape":"userNameType"}, "AccessKeyId":{"shape":"accessKeyIdType"}, "Status":{"shape":"statusType"}, "CreateDate":{"shape":"dateType"} } }, "ActionNameListType":{ "type":"list", "member":{"shape":"ActionNameType"} }, "ActionNameType":{ "type":"string", "max":128, "min":3 }, "AddClientIDToOpenIDConnectProviderRequest":{ "type":"structure", "required":[ "OpenIDConnectProviderArn", "ClientID" ], "members":{ "OpenIDConnectProviderArn":{"shape":"arnType"}, "ClientID":{"shape":"clientIDType"} } }, "AddRoleToInstanceProfileRequest":{ "type":"structure", "required":[ "InstanceProfileName", "RoleName" ], "members":{ "InstanceProfileName":{"shape":"instanceProfileNameType"}, "RoleName":{"shape":"roleNameType"} } }, "AddUserToGroupRequest":{ "type":"structure", "required":[ "GroupName", "UserName" ], "members":{ "GroupName":{"shape":"groupNameType"}, "UserName":{"shape":"existingUserNameType"} } }, "AttachGroupPolicyRequest":{ "type":"structure", "required":[ "GroupName", "PolicyArn" ], "members":{ "GroupName":{"shape":"groupNameType"}, "PolicyArn":{"shape":"arnType"} } }, "AttachRolePolicyRequest":{ "type":"structure", "required":[ "RoleName", "PolicyArn" ], "members":{ "RoleName":{"shape":"roleNameType"}, "PolicyArn":{"shape":"arnType"} } }, "AttachUserPolicyRequest":{ "type":"structure", "required":[ "UserName", "PolicyArn" ], "members":{ "UserName":{"shape":"userNameType"}, "PolicyArn":{"shape":"arnType"} } }, "AttachedPolicy":{ "type":"structure", "members":{ "PolicyName":{"shape":"policyNameType"}, "PolicyArn":{"shape":"arnType"} } }, "BootstrapDatum":{ "type":"blob", "sensitive":true }, "ChangePasswordRequest":{ "type":"structure", "required":[ "OldPassword", "NewPassword" ], "members":{ "OldPassword":{"shape":"passwordType"}, "NewPassword":{"shape":"passwordType"} } }, "ColumnNumber":{"type":"integer"}, "ContextEntry":{ "type":"structure", "members":{ "ContextKeyName":{"shape":"ContextKeyNameType"}, "ContextKeyValues":{"shape":"ContextKeyValueListType"}, "ContextKeyType":{"shape":"ContextKeyTypeEnum"} } }, "ContextEntryListType":{ "type":"list", "member":{"shape":"ContextEntry"} }, "ContextKeyNameType":{ "type":"string", "max":256, "min":5 }, "ContextKeyNamesResultListType":{ "type":"list", "member":{"shape":"ContextKeyNameType"} }, "ContextKeyTypeEnum":{ "type":"string", "enum":[ "string", "stringList", "numeric", "numericList", "boolean", "booleanList", "ip", "ipList", "binary", "binaryList", "date", "dateList" ] }, "ContextKeyValueListType":{ "type":"list", "member":{"shape":"ContextKeyValueType"} }, "ContextKeyValueType":{"type":"string"}, "CreateAccessKeyRequest":{ "type":"structure", "members":{ "UserName":{"shape":"existingUserNameType"} } }, "CreateAccessKeyResponse":{ "type":"structure", "required":["AccessKey"], "members":{ "AccessKey":{"shape":"AccessKey"} } }, "CreateAccountAliasRequest":{ "type":"structure", "required":["AccountAlias"], "members":{ "AccountAlias":{"shape":"accountAliasType"} } }, "CreateGroupRequest":{ "type":"structure", "required":["GroupName"], "members":{ "Path":{"shape":"pathType"}, "GroupName":{"shape":"groupNameType"} } }, "CreateGroupResponse":{ "type":"structure", "required":["Group"], "members":{ "Group":{"shape":"Group"} } }, "CreateInstanceProfileRequest":{ "type":"structure", "required":["InstanceProfileName"], "members":{ "InstanceProfileName":{"shape":"instanceProfileNameType"}, "Path":{"shape":"pathType"} } }, "CreateInstanceProfileResponse":{ "type":"structure", "required":["InstanceProfile"], "members":{ "InstanceProfile":{"shape":"InstanceProfile"} } }, "CreateLoginProfileRequest":{ "type":"structure", "required":[ "UserName", "Password" ], "members":{ "UserName":{"shape":"userNameType"}, "Password":{"shape":"passwordType"}, "PasswordResetRequired":{"shape":"booleanType"} } }, "CreateLoginProfileResponse":{ "type":"structure", "required":["LoginProfile"], "members":{ "LoginProfile":{"shape":"LoginProfile"} } }, "CreateOpenIDConnectProviderRequest":{ "type":"structure", "required":[ "Url", "ThumbprintList" ], "members":{ "Url":{"shape":"OpenIDConnectProviderUrlType"}, "ClientIDList":{"shape":"clientIDListType"}, "ThumbprintList":{"shape":"thumbprintListType"} } }, "CreateOpenIDConnectProviderResponse":{ "type":"structure", "members":{ "OpenIDConnectProviderArn":{"shape":"arnType"} } }, "CreatePolicyRequest":{ "type":"structure", "required":[ "PolicyName", "PolicyDocument" ], "members":{ "PolicyName":{"shape":"policyNameType"}, "Path":{"shape":"policyPathType"}, "PolicyDocument":{"shape":"policyDocumentType"}, "Description":{"shape":"policyDescriptionType"} } }, "CreatePolicyResponse":{ "type":"structure", "members":{ "Policy":{"shape":"Policy"} } }, "CreatePolicyVersionRequest":{ "type":"structure", "required":[ "PolicyArn", "PolicyDocument" ], "members":{ "PolicyArn":{"shape":"arnType"}, "PolicyDocument":{"shape":"policyDocumentType"}, "SetAsDefault":{"shape":"booleanType"} } }, "CreatePolicyVersionResponse":{ "type":"structure", "members":{ "PolicyVersion":{"shape":"PolicyVersion"} } }, "CreateRoleRequest":{ "type":"structure", "required":[ "RoleName", "AssumeRolePolicyDocument" ], "members":{ "Path":{"shape":"pathType"}, "RoleName":{"shape":"roleNameType"}, "AssumeRolePolicyDocument":{"shape":"policyDocumentType"} } }, "CreateRoleResponse":{ "type":"structure", "required":["Role"], "members":{ "Role":{"shape":"Role"} } }, "CreateSAMLProviderRequest":{ "type":"structure", "required":[ "SAMLMetadataDocument", "Name" ], "members":{ "SAMLMetadataDocument":{"shape":"SAMLMetadataDocumentType"}, "Name":{"shape":"SAMLProviderNameType"} } }, "CreateSAMLProviderResponse":{ "type":"structure", "members":{ "SAMLProviderArn":{"shape":"arnType"} } }, "CreateUserRequest":{ "type":"structure", "required":["UserName"], "members":{ "Path":{"shape":"pathType"}, "UserName":{"shape":"userNameType"} } }, "CreateUserResponse":{ "type":"structure", "members":{ "User":{"shape":"User"} } }, "CreateVirtualMFADeviceRequest":{ "type":"structure", "required":["VirtualMFADeviceName"], "members":{ "Path":{"shape":"pathType"}, "VirtualMFADeviceName":{"shape":"virtualMFADeviceName"} } }, "CreateVirtualMFADeviceResponse":{ "type":"structure", "required":["VirtualMFADevice"], "members":{ "VirtualMFADevice":{"shape":"VirtualMFADevice"} } }, "CredentialReportExpiredException":{ "type":"structure", "members":{ "message":{"shape":"credentialReportExpiredExceptionMessage"} }, "error":{ "code":"ReportExpired", "httpStatusCode":410, "senderFault":true }, "exception":true }, "CredentialReportNotPresentException":{ "type":"structure", "members":{ "message":{"shape":"credentialReportNotPresentExceptionMessage"} }, "error":{ "code":"ReportNotPresent", "httpStatusCode":410, "senderFault":true }, "exception":true }, "CredentialReportNotReadyException":{ "type":"structure", "members":{ "message":{"shape":"credentialReportNotReadyExceptionMessage"} }, "error":{ "code":"ReportInProgress", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DeactivateMFADeviceRequest":{ "type":"structure", "required":[ "UserName", "SerialNumber" ], "members":{ "UserName":{"shape":"existingUserNameType"}, "SerialNumber":{"shape":"serialNumberType"} } }, "DeleteAccessKeyRequest":{ "type":"structure", "required":["AccessKeyId"], "members":{ "UserName":{"shape":"existingUserNameType"}, "AccessKeyId":{"shape":"accessKeyIdType"} } }, "DeleteAccountAliasRequest":{ "type":"structure", "required":["AccountAlias"], "members":{ "AccountAlias":{"shape":"accountAliasType"} } }, "DeleteConflictException":{ "type":"structure", "members":{ "message":{"shape":"deleteConflictMessage"} }, "error":{ "code":"DeleteConflict", "httpStatusCode":409, "senderFault":true }, "exception":true }, "DeleteGroupPolicyRequest":{ "type":"structure", "required":[ "GroupName", "PolicyName" ], "members":{ "GroupName":{"shape":"groupNameType"}, "PolicyName":{"shape":"policyNameType"} } }, "DeleteGroupRequest":{ "type":"structure", "required":["GroupName"], "members":{ "GroupName":{"shape":"groupNameType"} } }, "DeleteInstanceProfileRequest":{ "type":"structure", "required":["InstanceProfileName"], "members":{ "InstanceProfileName":{"shape":"instanceProfileNameType"} } }, "DeleteLoginProfileRequest":{ "type":"structure", "required":["UserName"], "members":{ "UserName":{"shape":"userNameType"} } }, "DeleteOpenIDConnectProviderRequest":{ "type":"structure", "required":["OpenIDConnectProviderArn"], "members":{ "OpenIDConnectProviderArn":{"shape":"arnType"} } }, "DeletePolicyRequest":{ "type":"structure", "required":["PolicyArn"], "members":{ "PolicyArn":{"shape":"arnType"} } }, "DeletePolicyVersionRequest":{ "type":"structure", "required":[ "PolicyArn", "VersionId" ], "members":{ "PolicyArn":{"shape":"arnType"}, "VersionId":{"shape":"policyVersionIdType"} } }, "DeleteRolePolicyRequest":{ "type":"structure", "required":[ "RoleName", "PolicyName" ], "members":{ "RoleName":{"shape":"roleNameType"}, "PolicyName":{"shape":"policyNameType"} } }, "DeleteRoleRequest":{ "type":"structure", "required":["RoleName"], "members":{ "RoleName":{"shape":"roleNameType"} } }, "DeleteSAMLProviderRequest":{ "type":"structure", "required":["SAMLProviderArn"], "members":{ "SAMLProviderArn":{"shape":"arnType"} } }, "DeleteSSHPublicKeyRequest":{ "type":"structure", "required":[ "UserName", "SSHPublicKeyId" ], "members":{ "UserName":{"shape":"userNameType"}, "SSHPublicKeyId":{"shape":"publicKeyIdType"} } }, "DeleteServerCertificateRequest":{ "type":"structure", "required":["ServerCertificateName"], "members":{ "ServerCertificateName":{"shape":"serverCertificateNameType"} } }, "DeleteSigningCertificateRequest":{ "type":"structure", "required":["CertificateId"], "members":{ "UserName":{"shape":"existingUserNameType"}, "CertificateId":{"shape":"certificateIdType"} } }, "DeleteUserPolicyRequest":{ "type":"structure", "required":[ "UserName", "PolicyName" ], "members":{ "UserName":{"shape":"existingUserNameType"}, "PolicyName":{"shape":"policyNameType"} } }, "DeleteUserRequest":{ "type":"structure", "required":["UserName"], "members":{ "UserName":{"shape":"existingUserNameType"} } }, "DeleteVirtualMFADeviceRequest":{ "type":"structure", "required":["SerialNumber"], "members":{ "SerialNumber":{"shape":"serialNumberType"} } }, "DetachGroupPolicyRequest":{ "type":"structure", "required":[ "GroupName", "PolicyArn" ], "members":{ "GroupName":{"shape":"groupNameType"}, "PolicyArn":{"shape":"arnType"} } }, "DetachRolePolicyRequest":{ "type":"structure", "required":[ "RoleName", "PolicyArn" ], "members":{ "RoleName":{"shape":"roleNameType"}, "PolicyArn":{"shape":"arnType"} } }, "DetachUserPolicyRequest":{ "type":"structure", "required":[ "UserName", "PolicyArn" ], "members":{ "UserName":{"shape":"userNameType"}, "PolicyArn":{"shape":"arnType"} } }, "DuplicateCertificateException":{ "type":"structure", "members":{ "message":{"shape":"duplicateCertificateMessage"} }, "error":{ "code":"DuplicateCertificate", "httpStatusCode":409, "senderFault":true }, "exception":true }, "DuplicateSSHPublicKeyException":{ "type":"structure", "members":{ "message":{"shape":"duplicateSSHPublicKeyMessage"} }, "error":{ "code":"DuplicateSSHPublicKey", "httpStatusCode":400, "senderFault":true }, "exception":true }, "EnableMFADeviceRequest":{ "type":"structure", "required":[ "UserName", "SerialNumber", "AuthenticationCode1", "AuthenticationCode2" ], "members":{ "UserName":{"shape":"existingUserNameType"}, "SerialNumber":{"shape":"serialNumberType"}, "AuthenticationCode1":{"shape":"authenticationCodeType"}, "AuthenticationCode2":{"shape":"authenticationCodeType"} } }, "EntityAlreadyExistsException":{ "type":"structure", "members":{ "message":{"shape":"entityAlreadyExistsMessage"} }, "error":{ "code":"EntityAlreadyExists", "httpStatusCode":409, "senderFault":true }, "exception":true }, "EntityTemporarilyUnmodifiableException":{ "type":"structure", "members":{ "message":{"shape":"entityTemporarilyUnmodifiableMessage"} }, "error":{ "code":"EntityTemporarilyUnmodifiable", "httpStatusCode":409, "senderFault":true }, "exception":true }, "EntityType":{ "type":"string", "enum":[ "User", "Role", "Group", "LocalManagedPolicy", "AWSManagedPolicy" ] }, "EvalDecisionDetailsType":{ "type":"map", "key":{"shape":"EvalDecisionSourceType"}, "value":{"shape":"PolicyEvaluationDecisionType"} }, "EvalDecisionSourceType":{ "type":"string", "max":256, "min":3 }, "EvaluationResult":{ "type":"structure", "required":[ "EvalActionName", "EvalDecision" ], "members":{ "EvalActionName":{"shape":"ActionNameType"}, "EvalResourceName":{"shape":"ResourceNameType"}, "EvalDecision":{"shape":"PolicyEvaluationDecisionType"}, "MatchedStatements":{"shape":"StatementListType"}, "MissingContextValues":{"shape":"ContextKeyNamesResultListType"}, "EvalDecisionDetails":{"shape":"EvalDecisionDetailsType"}, "ResourceSpecificResults":{"shape":"ResourceSpecificResultListType"} } }, "EvaluationResultsListType":{ "type":"list", "member":{"shape":"EvaluationResult"} }, "GenerateCredentialReportResponse":{ "type":"structure", "members":{ "State":{"shape":"ReportStateType"}, "Description":{"shape":"ReportStateDescriptionType"} } }, "GetAccessKeyLastUsedRequest":{ "type":"structure", "required":["AccessKeyId"], "members":{ "AccessKeyId":{"shape":"accessKeyIdType"} } }, "GetAccessKeyLastUsedResponse":{ "type":"structure", "members":{ "UserName":{"shape":"existingUserNameType"}, "AccessKeyLastUsed":{"shape":"AccessKeyLastUsed"} } }, "GetAccountAuthorizationDetailsRequest":{ "type":"structure", "members":{ "Filter":{"shape":"entityListType"}, "MaxItems":{"shape":"maxItemsType"}, "Marker":{"shape":"markerType"} } }, "GetAccountAuthorizationDetailsResponse":{ "type":"structure", "members":{ "UserDetailList":{"shape":"userDetailListType"}, "GroupDetailList":{"shape":"groupDetailListType"}, "RoleDetailList":{"shape":"roleDetailListType"}, "Policies":{"shape":"ManagedPolicyDetailListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "GetAccountPasswordPolicyResponse":{ "type":"structure", "required":["PasswordPolicy"], "members":{ "PasswordPolicy":{"shape":"PasswordPolicy"} } }, "GetAccountSummaryResponse":{ "type":"structure", "members":{ "SummaryMap":{"shape":"summaryMapType"} } }, "GetContextKeysForCustomPolicyRequest":{ "type":"structure", "required":["PolicyInputList"], "members":{ "PolicyInputList":{"shape":"SimulationPolicyListType"} } }, "GetContextKeysForPolicyResponse":{ "type":"structure", "members":{ "ContextKeyNames":{"shape":"ContextKeyNamesResultListType"} } }, "GetContextKeysForPrincipalPolicyRequest":{ "type":"structure", "required":["PolicySourceArn"], "members":{ "PolicySourceArn":{"shape":"arnType"}, "PolicyInputList":{"shape":"SimulationPolicyListType"} } }, "GetCredentialReportResponse":{ "type":"structure", "members":{ "Content":{"shape":"ReportContentType"}, "ReportFormat":{"shape":"ReportFormatType"}, "GeneratedTime":{"shape":"dateType"} } }, "GetGroupPolicyRequest":{ "type":"structure", "required":[ "GroupName", "PolicyName" ], "members":{ "GroupName":{"shape":"groupNameType"}, "PolicyName":{"shape":"policyNameType"} } }, "GetGroupPolicyResponse":{ "type":"structure", "required":[ "GroupName", "PolicyName", "PolicyDocument" ], "members":{ "GroupName":{"shape":"groupNameType"}, "PolicyName":{"shape":"policyNameType"}, "PolicyDocument":{"shape":"policyDocumentType"} } }, "GetGroupRequest":{ "type":"structure", "required":["GroupName"], "members":{ "GroupName":{"shape":"groupNameType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "GetGroupResponse":{ "type":"structure", "required":[ "Group", "Users" ], "members":{ "Group":{"shape":"Group"}, "Users":{"shape":"userListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "GetInstanceProfileRequest":{ "type":"structure", "required":["InstanceProfileName"], "members":{ "InstanceProfileName":{"shape":"instanceProfileNameType"} } }, "GetInstanceProfileResponse":{ "type":"structure", "required":["InstanceProfile"], "members":{ "InstanceProfile":{"shape":"InstanceProfile"} } }, "GetLoginProfileRequest":{ "type":"structure", "required":["UserName"], "members":{ "UserName":{"shape":"userNameType"} } }, "GetLoginProfileResponse":{ "type":"structure", "required":["LoginProfile"], "members":{ "LoginProfile":{"shape":"LoginProfile"} } }, "GetOpenIDConnectProviderRequest":{ "type":"structure", "required":["OpenIDConnectProviderArn"], "members":{ "OpenIDConnectProviderArn":{"shape":"arnType"} } }, "GetOpenIDConnectProviderResponse":{ "type":"structure", "members":{ "Url":{"shape":"OpenIDConnectProviderUrlType"}, "ClientIDList":{"shape":"clientIDListType"}, "ThumbprintList":{"shape":"thumbprintListType"}, "CreateDate":{"shape":"dateType"} } }, "GetPolicyRequest":{ "type":"structure", "required":["PolicyArn"], "members":{ "PolicyArn":{"shape":"arnType"} } }, "GetPolicyResponse":{ "type":"structure", "members":{ "Policy":{"shape":"Policy"} } }, "GetPolicyVersionRequest":{ "type":"structure", "required":[ "PolicyArn", "VersionId" ], "members":{ "PolicyArn":{"shape":"arnType"}, "VersionId":{"shape":"policyVersionIdType"} } }, "GetPolicyVersionResponse":{ "type":"structure", "members":{ "PolicyVersion":{"shape":"PolicyVersion"} } }, "GetRolePolicyRequest":{ "type":"structure", "required":[ "RoleName", "PolicyName" ], "members":{ "RoleName":{"shape":"roleNameType"}, "PolicyName":{"shape":"policyNameType"} } }, "GetRolePolicyResponse":{ "type":"structure", "required":[ "RoleName", "PolicyName", "PolicyDocument" ], "members":{ "RoleName":{"shape":"roleNameType"}, "PolicyName":{"shape":"policyNameType"}, "PolicyDocument":{"shape":"policyDocumentType"} } }, "GetRoleRequest":{ "type":"structure", "required":["RoleName"], "members":{ "RoleName":{"shape":"roleNameType"} } }, "GetRoleResponse":{ "type":"structure", "required":["Role"], "members":{ "Role":{"shape":"Role"} } }, "GetSAMLProviderRequest":{ "type":"structure", "required":["SAMLProviderArn"], "members":{ "SAMLProviderArn":{"shape":"arnType"} } }, "GetSAMLProviderResponse":{ "type":"structure", "members":{ "SAMLMetadataDocument":{"shape":"SAMLMetadataDocumentType"}, "CreateDate":{"shape":"dateType"}, "ValidUntil":{"shape":"dateType"} } }, "GetSSHPublicKeyRequest":{ "type":"structure", "required":[ "UserName", "SSHPublicKeyId", "Encoding" ], "members":{ "UserName":{"shape":"userNameType"}, "SSHPublicKeyId":{"shape":"publicKeyIdType"}, "Encoding":{"shape":"encodingType"} } }, "GetSSHPublicKeyResponse":{ "type":"structure", "members":{ "SSHPublicKey":{"shape":"SSHPublicKey"} } }, "GetServerCertificateRequest":{ "type":"structure", "required":["ServerCertificateName"], "members":{ "ServerCertificateName":{"shape":"serverCertificateNameType"} } }, "GetServerCertificateResponse":{ "type":"structure", "required":["ServerCertificate"], "members":{ "ServerCertificate":{"shape":"ServerCertificate"} } }, "GetUserPolicyRequest":{ "type":"structure", "required":[ "UserName", "PolicyName" ], "members":{ "UserName":{"shape":"existingUserNameType"}, "PolicyName":{"shape":"policyNameType"} } }, "GetUserPolicyResponse":{ "type":"structure", "required":[ "UserName", "PolicyName", "PolicyDocument" ], "members":{ "UserName":{"shape":"existingUserNameType"}, "PolicyName":{"shape":"policyNameType"}, "PolicyDocument":{"shape":"policyDocumentType"} } }, "GetUserRequest":{ "type":"structure", "members":{ "UserName":{"shape":"existingUserNameType"} } }, "GetUserResponse":{ "type":"structure", "required":["User"], "members":{ "User":{"shape":"User"} } }, "Group":{ "type":"structure", "required":[ "Path", "GroupName", "GroupId", "Arn", "CreateDate" ], "members":{ "Path":{"shape":"pathType"}, "GroupName":{"shape":"groupNameType"}, "GroupId":{"shape":"idType"}, "Arn":{"shape":"arnType"}, "CreateDate":{"shape":"dateType"} } }, "GroupDetail":{ "type":"structure", "members":{ "Path":{"shape":"pathType"}, "GroupName":{"shape":"groupNameType"}, "GroupId":{"shape":"idType"}, "Arn":{"shape":"arnType"}, "CreateDate":{"shape":"dateType"}, "GroupPolicyList":{"shape":"policyDetailListType"}, "AttachedManagedPolicies":{"shape":"attachedPoliciesListType"} } }, "InstanceProfile":{ "type":"structure", "required":[ "Path", "InstanceProfileName", "InstanceProfileId", "Arn", "CreateDate", "Roles" ], "members":{ "Path":{"shape":"pathType"}, "InstanceProfileName":{"shape":"instanceProfileNameType"}, "InstanceProfileId":{"shape":"idType"}, "Arn":{"shape":"arnType"}, "CreateDate":{"shape":"dateType"}, "Roles":{"shape":"roleListType"} } }, "InvalidAuthenticationCodeException":{ "type":"structure", "members":{ "message":{"shape":"invalidAuthenticationCodeMessage"} }, "error":{ "code":"InvalidAuthenticationCode", "httpStatusCode":403, "senderFault":true }, "exception":true }, "InvalidCertificateException":{ "type":"structure", "members":{ "message":{"shape":"invalidCertificateMessage"} }, "error":{ "code":"InvalidCertificate", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidInputException":{ "type":"structure", "members":{ "message":{"shape":"invalidInputMessage"} }, "error":{ "code":"InvalidInput", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidPublicKeyException":{ "type":"structure", "members":{ "message":{"shape":"invalidPublicKeyMessage"} }, "error":{ "code":"InvalidPublicKey", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidUserTypeException":{ "type":"structure", "members":{ "message":{"shape":"invalidUserTypeMessage"} }, "error":{ "code":"InvalidUserType", "httpStatusCode":400, "senderFault":true }, "exception":true }, "KeyPairMismatchException":{ "type":"structure", "members":{ "message":{"shape":"keyPairMismatchMessage"} }, "error":{ "code":"KeyPairMismatch", "httpStatusCode":400, "senderFault":true }, "exception":true }, "LimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"limitExceededMessage"} }, "error":{ "code":"LimitExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, "LineNumber":{"type":"integer"}, "ListAccessKeysRequest":{ "type":"structure", "members":{ "UserName":{"shape":"existingUserNameType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListAccessKeysResponse":{ "type":"structure", "required":["AccessKeyMetadata"], "members":{ "AccessKeyMetadata":{"shape":"accessKeyMetadataListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListAccountAliasesRequest":{ "type":"structure", "members":{ "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListAccountAliasesResponse":{ "type":"structure", "required":["AccountAliases"], "members":{ "AccountAliases":{"shape":"accountAliasListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListAttachedGroupPoliciesRequest":{ "type":"structure", "required":["GroupName"], "members":{ "GroupName":{"shape":"groupNameType"}, "PathPrefix":{"shape":"policyPathType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListAttachedGroupPoliciesResponse":{ "type":"structure", "members":{ "AttachedPolicies":{"shape":"attachedPoliciesListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListAttachedRolePoliciesRequest":{ "type":"structure", "required":["RoleName"], "members":{ "RoleName":{"shape":"roleNameType"}, "PathPrefix":{"shape":"policyPathType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListAttachedRolePoliciesResponse":{ "type":"structure", "members":{ "AttachedPolicies":{"shape":"attachedPoliciesListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListAttachedUserPoliciesRequest":{ "type":"structure", "required":["UserName"], "members":{ "UserName":{"shape":"userNameType"}, "PathPrefix":{"shape":"policyPathType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListAttachedUserPoliciesResponse":{ "type":"structure", "members":{ "AttachedPolicies":{"shape":"attachedPoliciesListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListEntitiesForPolicyRequest":{ "type":"structure", "required":["PolicyArn"], "members":{ "PolicyArn":{"shape":"arnType"}, "EntityFilter":{"shape":"EntityType"}, "PathPrefix":{"shape":"pathType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListEntitiesForPolicyResponse":{ "type":"structure", "members":{ "PolicyGroups":{"shape":"PolicyGroupListType"}, "PolicyUsers":{"shape":"PolicyUserListType"}, "PolicyRoles":{"shape":"PolicyRoleListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListGroupPoliciesRequest":{ "type":"structure", "required":["GroupName"], "members":{ "GroupName":{"shape":"groupNameType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListGroupPoliciesResponse":{ "type":"structure", "required":["PolicyNames"], "members":{ "PolicyNames":{"shape":"policyNameListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListGroupsForUserRequest":{ "type":"structure", "required":["UserName"], "members":{ "UserName":{"shape":"existingUserNameType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListGroupsForUserResponse":{ "type":"structure", "required":["Groups"], "members":{ "Groups":{"shape":"groupListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListGroupsRequest":{ "type":"structure", "members":{ "PathPrefix":{"shape":"pathPrefixType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListGroupsResponse":{ "type":"structure", "required":["Groups"], "members":{ "Groups":{"shape":"groupListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListInstanceProfilesForRoleRequest":{ "type":"structure", "required":["RoleName"], "members":{ "RoleName":{"shape":"roleNameType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListInstanceProfilesForRoleResponse":{ "type":"structure", "required":["InstanceProfiles"], "members":{ "InstanceProfiles":{"shape":"instanceProfileListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListInstanceProfilesRequest":{ "type":"structure", "members":{ "PathPrefix":{"shape":"pathPrefixType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListInstanceProfilesResponse":{ "type":"structure", "required":["InstanceProfiles"], "members":{ "InstanceProfiles":{"shape":"instanceProfileListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListMFADevicesRequest":{ "type":"structure", "members":{ "UserName":{"shape":"existingUserNameType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListMFADevicesResponse":{ "type":"structure", "required":["MFADevices"], "members":{ "MFADevices":{"shape":"mfaDeviceListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListOpenIDConnectProvidersRequest":{ "type":"structure", "members":{ } }, "ListOpenIDConnectProvidersResponse":{ "type":"structure", "members":{ "OpenIDConnectProviderList":{"shape":"OpenIDConnectProviderListType"} } }, "ListPoliciesRequest":{ "type":"structure", "members":{ "Scope":{"shape":"policyScopeType"}, "OnlyAttached":{"shape":"booleanType"}, "PathPrefix":{"shape":"policyPathType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListPoliciesResponse":{ "type":"structure", "members":{ "Policies":{"shape":"policyListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListPolicyVersionsRequest":{ "type":"structure", "required":["PolicyArn"], "members":{ "PolicyArn":{"shape":"arnType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListPolicyVersionsResponse":{ "type":"structure", "members":{ "Versions":{"shape":"policyDocumentVersionListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListRolePoliciesRequest":{ "type":"structure", "required":["RoleName"], "members":{ "RoleName":{"shape":"roleNameType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListRolePoliciesResponse":{ "type":"structure", "required":["PolicyNames"], "members":{ "PolicyNames":{"shape":"policyNameListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListRolesRequest":{ "type":"structure", "members":{ "PathPrefix":{"shape":"pathPrefixType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListRolesResponse":{ "type":"structure", "required":["Roles"], "members":{ "Roles":{"shape":"roleListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListSAMLProvidersRequest":{ "type":"structure", "members":{ } }, "ListSAMLProvidersResponse":{ "type":"structure", "members":{ "SAMLProviderList":{"shape":"SAMLProviderListType"} } }, "ListSSHPublicKeysRequest":{ "type":"structure", "members":{ "UserName":{"shape":"userNameType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListSSHPublicKeysResponse":{ "type":"structure", "members":{ "SSHPublicKeys":{"shape":"SSHPublicKeyListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListServerCertificatesRequest":{ "type":"structure", "members":{ "PathPrefix":{"shape":"pathPrefixType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListServerCertificatesResponse":{ "type":"structure", "required":["ServerCertificateMetadataList"], "members":{ "ServerCertificateMetadataList":{"shape":"serverCertificateMetadataListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListSigningCertificatesRequest":{ "type":"structure", "members":{ "UserName":{"shape":"existingUserNameType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListSigningCertificatesResponse":{ "type":"structure", "required":["Certificates"], "members":{ "Certificates":{"shape":"certificateListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListUserPoliciesRequest":{ "type":"structure", "required":["UserName"], "members":{ "UserName":{"shape":"existingUserNameType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListUserPoliciesResponse":{ "type":"structure", "required":["PolicyNames"], "members":{ "PolicyNames":{"shape":"policyNameListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListUsersRequest":{ "type":"structure", "members":{ "PathPrefix":{"shape":"pathPrefixType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListUsersResponse":{ "type":"structure", "required":["Users"], "members":{ "Users":{"shape":"userListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "ListVirtualMFADevicesRequest":{ "type":"structure", "members":{ "AssignmentStatus":{"shape":"assignmentStatusType"}, "Marker":{"shape":"markerType"}, "MaxItems":{"shape":"maxItemsType"} } }, "ListVirtualMFADevicesResponse":{ "type":"structure", "required":["VirtualMFADevices"], "members":{ "VirtualMFADevices":{"shape":"virtualMFADeviceListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "LoginProfile":{ "type":"structure", "required":[ "UserName", "CreateDate" ], "members":{ "UserName":{"shape":"userNameType"}, "CreateDate":{"shape":"dateType"}, "PasswordResetRequired":{"shape":"booleanType"} } }, "MFADevice":{ "type":"structure", "required":[ "UserName", "SerialNumber", "EnableDate" ], "members":{ "UserName":{"shape":"userNameType"}, "SerialNumber":{"shape":"serialNumberType"}, "EnableDate":{"shape":"dateType"} } }, "MalformedCertificateException":{ "type":"structure", "members":{ "message":{"shape":"malformedCertificateMessage"} }, "error":{ "code":"MalformedCertificate", "httpStatusCode":400, "senderFault":true }, "exception":true }, "MalformedPolicyDocumentException":{ "type":"structure", "members":{ "message":{"shape":"malformedPolicyDocumentMessage"} }, "error":{ "code":"MalformedPolicyDocument", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ManagedPolicyDetail":{ "type":"structure", "members":{ "PolicyName":{"shape":"policyNameType"}, "PolicyId":{"shape":"idType"}, "Arn":{"shape":"arnType"}, "Path":{"shape":"policyPathType"}, "DefaultVersionId":{"shape":"policyVersionIdType"}, "AttachmentCount":{"shape":"attachmentCountType"}, "IsAttachable":{"shape":"booleanType"}, "Description":{"shape":"policyDescriptionType"}, "CreateDate":{"shape":"dateType"}, "UpdateDate":{"shape":"dateType"}, "PolicyVersionList":{"shape":"policyDocumentVersionListType"} } }, "ManagedPolicyDetailListType":{ "type":"list", "member":{"shape":"ManagedPolicyDetail"} }, "NoSuchEntityException":{ "type":"structure", "members":{ "message":{"shape":"noSuchEntityMessage"} }, "error":{ "code":"NoSuchEntity", "httpStatusCode":404, "senderFault":true }, "exception":true }, "OpenIDConnectProviderListEntry":{ "type":"structure", "members":{ "Arn":{"shape":"arnType"} } }, "OpenIDConnectProviderListType":{ "type":"list", "member":{"shape":"OpenIDConnectProviderListEntry"} }, "OpenIDConnectProviderUrlType":{ "type":"string", "max":255, "min":1 }, "PasswordPolicy":{ "type":"structure", "members":{ "MinimumPasswordLength":{"shape":"minimumPasswordLengthType"}, "RequireSymbols":{"shape":"booleanType"}, "RequireNumbers":{"shape":"booleanType"}, "RequireUppercaseCharacters":{"shape":"booleanType"}, "RequireLowercaseCharacters":{"shape":"booleanType"}, "AllowUsersToChangePassword":{"shape":"booleanType"}, "ExpirePasswords":{"shape":"booleanType"}, "MaxPasswordAge":{"shape":"maxPasswordAgeType"}, "PasswordReusePrevention":{"shape":"passwordReusePreventionType"}, "HardExpiry":{"shape":"booleanObjectType"} } }, "PasswordPolicyViolationException":{ "type":"structure", "members":{ "message":{"shape":"passwordPolicyViolationMessage"} }, "error":{ "code":"PasswordPolicyViolation", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Policy":{ "type":"structure", "members":{ "PolicyName":{"shape":"policyNameType"}, "PolicyId":{"shape":"idType"}, "Arn":{"shape":"arnType"}, "Path":{"shape":"policyPathType"}, "DefaultVersionId":{"shape":"policyVersionIdType"}, "AttachmentCount":{"shape":"attachmentCountType"}, "IsAttachable":{"shape":"booleanType"}, "Description":{"shape":"policyDescriptionType"}, "CreateDate":{"shape":"dateType"}, "UpdateDate":{"shape":"dateType"} } }, "PolicyDetail":{ "type":"structure", "members":{ "PolicyName":{"shape":"policyNameType"}, "PolicyDocument":{"shape":"policyDocumentType"} } }, "PolicyEvaluationDecisionType":{ "type":"string", "enum":[ "allowed", "explicitDeny", "implicitDeny" ] }, "PolicyEvaluationException":{ "type":"structure", "members":{ "message":{"shape":"policyEvaluationErrorMessage"} }, "error":{ "code":"PolicyEvaluation", "httpStatusCode":500 }, "exception":true }, "PolicyGroup":{ "type":"structure", "members":{ "GroupName":{"shape":"groupNameType"}, "GroupId":{"shape":"idType"} } }, "PolicyGroupListType":{ "type":"list", "member":{"shape":"PolicyGroup"} }, "PolicyIdentifierType":{"type":"string"}, "PolicyRole":{ "type":"structure", "members":{ "RoleName":{"shape":"roleNameType"}, "RoleId":{"shape":"idType"} } }, "PolicyRoleListType":{ "type":"list", "member":{"shape":"PolicyRole"} }, "PolicySourceType":{ "type":"string", "enum":[ "user", "group", "role", "aws-managed", "user-managed", "resource", "none" ] }, "PolicyUser":{ "type":"structure", "members":{ "UserName":{"shape":"userNameType"}, "UserId":{"shape":"idType"} } }, "PolicyUserListType":{ "type":"list", "member":{"shape":"PolicyUser"} }, "PolicyVersion":{ "type":"structure", "members":{ "Document":{"shape":"policyDocumentType"}, "VersionId":{"shape":"policyVersionIdType"}, "IsDefaultVersion":{"shape":"booleanType"}, "CreateDate":{"shape":"dateType"} } }, "Position":{ "type":"structure", "members":{ "Line":{"shape":"LineNumber"}, "Column":{"shape":"ColumnNumber"} } }, "PutGroupPolicyRequest":{ "type":"structure", "required":[ "GroupName", "PolicyName", "PolicyDocument" ], "members":{ "GroupName":{"shape":"groupNameType"}, "PolicyName":{"shape":"policyNameType"}, "PolicyDocument":{"shape":"policyDocumentType"} } }, "PutRolePolicyRequest":{ "type":"structure", "required":[ "RoleName", "PolicyName", "PolicyDocument" ], "members":{ "RoleName":{"shape":"roleNameType"}, "PolicyName":{"shape":"policyNameType"}, "PolicyDocument":{"shape":"policyDocumentType"} } }, "PutUserPolicyRequest":{ "type":"structure", "required":[ "UserName", "PolicyName", "PolicyDocument" ], "members":{ "UserName":{"shape":"existingUserNameType"}, "PolicyName":{"shape":"policyNameType"}, "PolicyDocument":{"shape":"policyDocumentType"} } }, "RemoveClientIDFromOpenIDConnectProviderRequest":{ "type":"structure", "required":[ "OpenIDConnectProviderArn", "ClientID" ], "members":{ "OpenIDConnectProviderArn":{"shape":"arnType"}, "ClientID":{"shape":"clientIDType"} } }, "RemoveRoleFromInstanceProfileRequest":{ "type":"structure", "required":[ "InstanceProfileName", "RoleName" ], "members":{ "InstanceProfileName":{"shape":"instanceProfileNameType"}, "RoleName":{"shape":"roleNameType"} } }, "RemoveUserFromGroupRequest":{ "type":"structure", "required":[ "GroupName", "UserName" ], "members":{ "GroupName":{"shape":"groupNameType"}, "UserName":{"shape":"existingUserNameType"} } }, "ReportContentType":{"type":"blob"}, "ReportFormatType":{ "type":"string", "enum":["text/csv"] }, "ReportStateDescriptionType":{"type":"string"}, "ReportStateType":{ "type":"string", "enum":[ "STARTED", "INPROGRESS", "COMPLETE" ] }, "ResourceHandlingOptionType":{ "type":"string", "max":64, "min":1 }, "ResourceNameListType":{ "type":"list", "member":{"shape":"ResourceNameType"} }, "ResourceNameType":{ "type":"string", "max":2048, "min":1 }, "ResourceSpecificResult":{ "type":"structure", "required":[ "EvalResourceName", "EvalResourceDecision" ], "members":{ "EvalResourceName":{"shape":"ResourceNameType"}, "EvalResourceDecision":{"shape":"PolicyEvaluationDecisionType"}, "MatchedStatements":{"shape":"StatementListType"}, "MissingContextValues":{"shape":"ContextKeyNamesResultListType"}, "EvalDecisionDetails":{"shape":"EvalDecisionDetailsType"} } }, "ResourceSpecificResultListType":{ "type":"list", "member":{"shape":"ResourceSpecificResult"} }, "ResyncMFADeviceRequest":{ "type":"structure", "required":[ "UserName", "SerialNumber", "AuthenticationCode1", "AuthenticationCode2" ], "members":{ "UserName":{"shape":"existingUserNameType"}, "SerialNumber":{"shape":"serialNumberType"}, "AuthenticationCode1":{"shape":"authenticationCodeType"}, "AuthenticationCode2":{"shape":"authenticationCodeType"} } }, "Role":{ "type":"structure", "required":[ "Path", "RoleName", "RoleId", "Arn", "CreateDate" ], "members":{ "Path":{"shape":"pathType"}, "RoleName":{"shape":"roleNameType"}, "RoleId":{"shape":"idType"}, "Arn":{"shape":"arnType"}, "CreateDate":{"shape":"dateType"}, "AssumeRolePolicyDocument":{"shape":"policyDocumentType"} } }, "RoleDetail":{ "type":"structure", "members":{ "Path":{"shape":"pathType"}, "RoleName":{"shape":"roleNameType"}, "RoleId":{"shape":"idType"}, "Arn":{"shape":"arnType"}, "CreateDate":{"shape":"dateType"}, "AssumeRolePolicyDocument":{"shape":"policyDocumentType"}, "InstanceProfileList":{"shape":"instanceProfileListType"}, "RolePolicyList":{"shape":"policyDetailListType"}, "AttachedManagedPolicies":{"shape":"attachedPoliciesListType"} } }, "SAMLMetadataDocumentType":{ "type":"string", "max":10000000, "min":1000 }, "SAMLProviderListEntry":{ "type":"structure", "members":{ "Arn":{"shape":"arnType"}, "ValidUntil":{"shape":"dateType"}, "CreateDate":{"shape":"dateType"} } }, "SAMLProviderListType":{ "type":"list", "member":{"shape":"SAMLProviderListEntry"} }, "SAMLProviderNameType":{ "type":"string", "max":128, "min":1, "pattern":"[\\w._-]+" }, "SSHPublicKey":{ "type":"structure", "required":[ "UserName", "SSHPublicKeyId", "Fingerprint", "SSHPublicKeyBody", "Status" ], "members":{ "UserName":{"shape":"userNameType"}, "SSHPublicKeyId":{"shape":"publicKeyIdType"}, "Fingerprint":{"shape":"publicKeyFingerprintType"}, "SSHPublicKeyBody":{"shape":"publicKeyMaterialType"}, "Status":{"shape":"statusType"}, "UploadDate":{"shape":"dateType"} } }, "SSHPublicKeyListType":{ "type":"list", "member":{"shape":"SSHPublicKeyMetadata"} }, "SSHPublicKeyMetadata":{ "type":"structure", "required":[ "UserName", "SSHPublicKeyId", "Status", "UploadDate" ], "members":{ "UserName":{"shape":"userNameType"}, "SSHPublicKeyId":{"shape":"publicKeyIdType"}, "Status":{"shape":"statusType"}, "UploadDate":{"shape":"dateType"} } }, "ServerCertificate":{ "type":"structure", "required":[ "ServerCertificateMetadata", "CertificateBody" ], "members":{ "ServerCertificateMetadata":{"shape":"ServerCertificateMetadata"}, "CertificateBody":{"shape":"certificateBodyType"}, "CertificateChain":{"shape":"certificateChainType"} } }, "ServerCertificateMetadata":{ "type":"structure", "required":[ "Path", "ServerCertificateName", "ServerCertificateId", "Arn" ], "members":{ "Path":{"shape":"pathType"}, "ServerCertificateName":{"shape":"serverCertificateNameType"}, "ServerCertificateId":{"shape":"idType"}, "Arn":{"shape":"arnType"}, "UploadDate":{"shape":"dateType"}, "Expiration":{"shape":"dateType"} } }, "ServiceFailureException":{ "type":"structure", "members":{ "message":{"shape":"serviceFailureExceptionMessage"} }, "error":{ "code":"ServiceFailure", "httpStatusCode":500 }, "exception":true }, "SetDefaultPolicyVersionRequest":{ "type":"structure", "required":[ "PolicyArn", "VersionId" ], "members":{ "PolicyArn":{"shape":"arnType"}, "VersionId":{"shape":"policyVersionIdType"} } }, "SigningCertificate":{ "type":"structure", "required":[ "UserName", "CertificateId", "CertificateBody", "Status" ], "members":{ "UserName":{"shape":"userNameType"}, "CertificateId":{"shape":"certificateIdType"}, "CertificateBody":{"shape":"certificateBodyType"}, "Status":{"shape":"statusType"}, "UploadDate":{"shape":"dateType"} } }, "SimulateCustomPolicyRequest":{ "type":"structure", "required":[ "PolicyInputList", "ActionNames" ], "members":{ "PolicyInputList":{"shape":"SimulationPolicyListType"}, "ActionNames":{"shape":"ActionNameListType"}, "ResourceArns":{"shape":"ResourceNameListType"}, "ResourcePolicy":{"shape":"policyDocumentType"}, "ResourceOwner":{"shape":"ResourceNameType"}, "CallerArn":{"shape":"ResourceNameType"}, "ContextEntries":{"shape":"ContextEntryListType"}, "ResourceHandlingOption":{"shape":"ResourceHandlingOptionType"}, "MaxItems":{"shape":"maxItemsType"}, "Marker":{"shape":"markerType"} } }, "SimulatePolicyResponse":{ "type":"structure", "members":{ "EvaluationResults":{"shape":"EvaluationResultsListType"}, "IsTruncated":{"shape":"booleanType"}, "Marker":{"shape":"markerType"} } }, "SimulatePrincipalPolicyRequest":{ "type":"structure", "required":[ "PolicySourceArn", "ActionNames" ], "members":{ "PolicySourceArn":{"shape":"arnType"}, "PolicyInputList":{"shape":"SimulationPolicyListType"}, "ActionNames":{"shape":"ActionNameListType"}, "ResourceArns":{"shape":"ResourceNameListType"}, "ResourcePolicy":{"shape":"policyDocumentType"}, "ResourceOwner":{"shape":"ResourceNameType"}, "CallerArn":{"shape":"ResourceNameType"}, "ContextEntries":{"shape":"ContextEntryListType"}, "ResourceHandlingOption":{"shape":"ResourceHandlingOptionType"}, "MaxItems":{"shape":"maxItemsType"}, "Marker":{"shape":"markerType"} } }, "SimulationPolicyListType":{ "type":"list", "member":{"shape":"policyDocumentType"} }, "Statement":{ "type":"structure", "members":{ "SourcePolicyId":{"shape":"PolicyIdentifierType"}, "SourcePolicyType":{"shape":"PolicySourceType"}, "StartPosition":{"shape":"Position"}, "EndPosition":{"shape":"Position"} } }, "StatementListType":{ "type":"list", "member":{"shape":"Statement"} }, "UnrecognizedPublicKeyEncodingException":{ "type":"structure", "members":{ "message":{"shape":"unrecognizedPublicKeyEncodingMessage"} }, "error":{ "code":"UnrecognizedPublicKeyEncoding", "httpStatusCode":400, "senderFault":true }, "exception":true }, "UpdateAccessKeyRequest":{ "type":"structure", "required":[ "AccessKeyId", "Status" ], "members":{ "UserName":{"shape":"existingUserNameType"}, "AccessKeyId":{"shape":"accessKeyIdType"}, "Status":{"shape":"statusType"} } }, "UpdateAccountPasswordPolicyRequest":{ "type":"structure", "members":{ "MinimumPasswordLength":{"shape":"minimumPasswordLengthType"}, "RequireSymbols":{"shape":"booleanType"}, "RequireNumbers":{"shape":"booleanType"}, "RequireUppercaseCharacters":{"shape":"booleanType"}, "RequireLowercaseCharacters":{"shape":"booleanType"}, "AllowUsersToChangePassword":{"shape":"booleanType"}, "MaxPasswordAge":{"shape":"maxPasswordAgeType"}, "PasswordReusePrevention":{"shape":"passwordReusePreventionType"}, "HardExpiry":{"shape":"booleanObjectType"} } }, "UpdateAssumeRolePolicyRequest":{ "type":"structure", "required":[ "RoleName", "PolicyDocument" ], "members":{ "RoleName":{"shape":"roleNameType"}, "PolicyDocument":{"shape":"policyDocumentType"} } }, "UpdateGroupRequest":{ "type":"structure", "required":["GroupName"], "members":{ "GroupName":{"shape":"groupNameType"}, "NewPath":{"shape":"pathType"}, "NewGroupName":{"shape":"groupNameType"} } }, "UpdateLoginProfileRequest":{ "type":"structure", "required":["UserName"], "members":{ "UserName":{"shape":"userNameType"}, "Password":{"shape":"passwordType"}, "PasswordResetRequired":{"shape":"booleanObjectType"} } }, "UpdateOpenIDConnectProviderThumbprintRequest":{ "type":"structure", "required":[ "OpenIDConnectProviderArn", "ThumbprintList" ], "members":{ "OpenIDConnectProviderArn":{"shape":"arnType"}, "ThumbprintList":{"shape":"thumbprintListType"} } }, "UpdateSAMLProviderRequest":{ "type":"structure", "required":[ "SAMLMetadataDocument", "SAMLProviderArn" ], "members":{ "SAMLMetadataDocument":{"shape":"SAMLMetadataDocumentType"}, "SAMLProviderArn":{"shape":"arnType"} } }, "UpdateSAMLProviderResponse":{ "type":"structure", "members":{ "SAMLProviderArn":{"shape":"arnType"} } }, "UpdateSSHPublicKeyRequest":{ "type":"structure", "required":[ "UserName", "SSHPublicKeyId", "Status" ], "members":{ "UserName":{"shape":"userNameType"}, "SSHPublicKeyId":{"shape":"publicKeyIdType"}, "Status":{"shape":"statusType"} } }, "UpdateServerCertificateRequest":{ "type":"structure", "required":["ServerCertificateName"], "members":{ "ServerCertificateName":{"shape":"serverCertificateNameType"}, "NewPath":{"shape":"pathType"}, "NewServerCertificateName":{"shape":"serverCertificateNameType"} } }, "UpdateSigningCertificateRequest":{ "type":"structure", "required":[ "CertificateId", "Status" ], "members":{ "UserName":{"shape":"existingUserNameType"}, "CertificateId":{"shape":"certificateIdType"}, "Status":{"shape":"statusType"} } }, "UpdateUserRequest":{ "type":"structure", "required":["UserName"], "members":{ "UserName":{"shape":"existingUserNameType"}, "NewPath":{"shape":"pathType"}, "NewUserName":{"shape":"userNameType"} } }, "UploadSSHPublicKeyRequest":{ "type":"structure", "required":[ "UserName", "SSHPublicKeyBody" ], "members":{ "UserName":{"shape":"userNameType"}, "SSHPublicKeyBody":{"shape":"publicKeyMaterialType"} } }, "UploadSSHPublicKeyResponse":{ "type":"structure", "members":{ "SSHPublicKey":{"shape":"SSHPublicKey"} } }, "UploadServerCertificateRequest":{ "type":"structure", "required":[ "ServerCertificateName", "CertificateBody", "PrivateKey" ], "members":{ "Path":{"shape":"pathType"}, "ServerCertificateName":{"shape":"serverCertificateNameType"}, "CertificateBody":{"shape":"certificateBodyType"}, "PrivateKey":{"shape":"privateKeyType"}, "CertificateChain":{"shape":"certificateChainType"} } }, "UploadServerCertificateResponse":{ "type":"structure", "members":{ "ServerCertificateMetadata":{"shape":"ServerCertificateMetadata"} } }, "UploadSigningCertificateRequest":{ "type":"structure", "required":["CertificateBody"], "members":{ "UserName":{"shape":"existingUserNameType"}, "CertificateBody":{"shape":"certificateBodyType"} } }, "UploadSigningCertificateResponse":{ "type":"structure", "required":["Certificate"], "members":{ "Certificate":{"shape":"SigningCertificate"} } }, "User":{ "type":"structure", "required":[ "Path", "UserName", "UserId", "Arn", "CreateDate" ], "members":{ "Path":{"shape":"pathType"}, "UserName":{"shape":"userNameType"}, "UserId":{"shape":"idType"}, "Arn":{"shape":"arnType"}, "CreateDate":{"shape":"dateType"}, "PasswordLastUsed":{"shape":"dateType"} } }, "UserDetail":{ "type":"structure", "members":{ "Path":{"shape":"pathType"}, "UserName":{"shape":"userNameType"}, "UserId":{"shape":"idType"}, "Arn":{"shape":"arnType"}, "CreateDate":{"shape":"dateType"}, "UserPolicyList":{"shape":"policyDetailListType"}, "GroupList":{"shape":"groupNameListType"}, "AttachedManagedPolicies":{"shape":"attachedPoliciesListType"} } }, "VirtualMFADevice":{ "type":"structure", "required":["SerialNumber"], "members":{ "SerialNumber":{"shape":"serialNumberType"}, "Base32StringSeed":{"shape":"BootstrapDatum"}, "QRCodePNG":{"shape":"BootstrapDatum"}, "User":{"shape":"User"}, "EnableDate":{"shape":"dateType"} } }, "accessKeyIdType":{ "type":"string", "max":32, "min":16, "pattern":"[\\w]+" }, "accessKeyMetadataListType":{ "type":"list", "member":{"shape":"AccessKeyMetadata"} }, "accessKeySecretType":{ "type":"string", "sensitive":true }, "accountAliasListType":{ "type":"list", "member":{"shape":"accountAliasType"} }, "accountAliasType":{ "type":"string", "max":63, "min":3, "pattern":"^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$" }, "arnType":{ "type":"string", "max":2048, "min":20 }, "assignmentStatusType":{ "type":"string", "enum":[ "Assigned", "Unassigned", "Any" ] }, "attachedPoliciesListType":{ "type":"list", "member":{"shape":"AttachedPolicy"} }, "attachmentCountType":{"type":"integer"}, "authenticationCodeType":{ "type":"string", "max":6, "min":6, "pattern":"[\\d]+" }, "booleanObjectType":{ "type":"boolean", "box":true }, "booleanType":{"type":"boolean"}, "certificateBodyType":{ "type":"string", "max":16384, "min":1, "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+" }, "certificateChainType":{ "type":"string", "max":2097152, "min":1, "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+" }, "certificateIdType":{ "type":"string", "max":128, "min":24, "pattern":"[\\w]+" }, "certificateListType":{ "type":"list", "member":{"shape":"SigningCertificate"} }, "clientIDListType":{ "type":"list", "member":{"shape":"clientIDType"} }, "clientIDType":{ "type":"string", "max":255, "min":1 }, "credentialReportExpiredExceptionMessage":{"type":"string"}, "credentialReportNotPresentExceptionMessage":{"type":"string"}, "credentialReportNotReadyExceptionMessage":{"type":"string"}, "dateType":{"type":"timestamp"}, "deleteConflictMessage":{"type":"string"}, "duplicateCertificateMessage":{"type":"string"}, "duplicateSSHPublicKeyMessage":{"type":"string"}, "encodingType":{ "type":"string", "enum":[ "SSH", "PEM" ] }, "entityAlreadyExistsMessage":{"type":"string"}, "entityListType":{ "type":"list", "member":{"shape":"EntityType"} }, "entityTemporarilyUnmodifiableMessage":{"type":"string"}, "existingUserNameType":{ "type":"string", "max":128, "min":1, "pattern":"[\\w+=,.@-]+" }, "groupDetailListType":{ "type":"list", "member":{"shape":"GroupDetail"} }, "groupListType":{ "type":"list", "member":{"shape":"Group"} }, "groupNameListType":{ "type":"list", "member":{"shape":"groupNameType"} }, "groupNameType":{ "type":"string", "max":128, "min":1, "pattern":"[\\w+=,.@-]+" }, "idType":{ "type":"string", "max":32, "min":16, "pattern":"[\\w]+" }, "instanceProfileListType":{ "type":"list", "member":{"shape":"InstanceProfile"} }, "instanceProfileNameType":{ "type":"string", "max":128, "min":1, "pattern":"[\\w+=,.@-]+" }, "invalidAuthenticationCodeMessage":{"type":"string"}, "invalidCertificateMessage":{"type":"string"}, "invalidInputMessage":{"type":"string"}, "invalidPublicKeyMessage":{"type":"string"}, "invalidUserTypeMessage":{"type":"string"}, "keyPairMismatchMessage":{"type":"string"}, "limitExceededMessage":{"type":"string"}, "malformedCertificateMessage":{"type":"string"}, "malformedPolicyDocumentMessage":{"type":"string"}, "markerType":{ "type":"string", "max":320, "min":1, "pattern":"[\\u0020-\\u00FF]+" }, "maxItemsType":{ "type":"integer", "max":1000, "min":1 }, "maxPasswordAgeType":{ "type":"integer", "box":true, "max":1095, "min":1 }, "mfaDeviceListType":{ "type":"list", "member":{"shape":"MFADevice"} }, "minimumPasswordLengthType":{ "type":"integer", "max":128, "min":6 }, "noSuchEntityMessage":{"type":"string"}, "passwordPolicyViolationMessage":{"type":"string"}, "passwordReusePreventionType":{ "type":"integer", "box":true, "max":24, "min":1 }, "passwordType":{ "type":"string", "max":128, "min":1, "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+", "sensitive":true }, "pathPrefixType":{ "type":"string", "max":512, "min":1, "pattern":"\\u002F[\\u0021-\\u007F]*" }, "pathType":{ "type":"string", "max":512, "min":1, "pattern":"(\\u002F)|(\\u002F[\\u0021-\\u007F]+\\u002F)" }, "policyDescriptionType":{ "type":"string", "max":1000 }, "policyDetailListType":{ "type":"list", "member":{"shape":"PolicyDetail"} }, "policyDocumentType":{ "type":"string", "max":131072, "min":1, "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+" }, "policyDocumentVersionListType":{ "type":"list", "member":{"shape":"PolicyVersion"} }, "policyEvaluationErrorMessage":{"type":"string"}, "policyListType":{ "type":"list", "member":{"shape":"Policy"} }, "policyNameListType":{ "type":"list", "member":{"shape":"policyNameType"} }, "policyNameType":{ "type":"string", "max":128, "min":1, "pattern":"[\\w+=,.@-]+" }, "policyPathType":{ "type":"string", "pattern":"((/[A-Za-z0-9\\.,\\+@=_-]+)*)/" }, "policyScopeType":{ "type":"string", "enum":[ "All", "AWS", "Local" ] }, "policyVersionIdType":{ "type":"string", "pattern":"v[1-9][0-9]*(\\.[A-Za-z0-9-]*)?" }, "privateKeyType":{ "type":"string", "max":16384, "min":1, "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+", "sensitive":true }, "publicKeyFingerprintType":{ "type":"string", "max":48, "min":48, "pattern":"[:\\w]+" }, "publicKeyIdType":{ "type":"string", "max":128, "min":20, "pattern":"[\\w]+" }, "publicKeyMaterialType":{ "type":"string", "max":16384, "min":1, "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+" }, "roleDetailListType":{ "type":"list", "member":{"shape":"RoleDetail"} }, "roleListType":{ "type":"list", "member":{"shape":"Role"} }, "roleNameType":{ "type":"string", "max":64, "min":1, "pattern":"[\\w+=,.@-]+" }, "serialNumberType":{ "type":"string", "max":256, "min":9, "pattern":"[\\w+=/:,.@-]+" }, "serverCertificateMetadataListType":{ "type":"list", "member":{"shape":"ServerCertificateMetadata"} }, "serverCertificateNameType":{ "type":"string", "max":128, "min":1, "pattern":"[\\w+=,.@-]+" }, "serviceFailureExceptionMessage":{"type":"string"}, "statusType":{ "type":"string", "enum":[ "Active", "Inactive" ] }, "stringType":{"type":"string"}, "summaryKeyType":{ "type":"string", "enum":[ "Users", "UsersQuota", "Groups", "GroupsQuota", "ServerCertificates", "ServerCertificatesQuota", "UserPolicySizeQuota", "GroupPolicySizeQuota", "GroupsPerUserQuota", "SigningCertificatesPerUserQuota", "AccessKeysPerUserQuota", "MFADevices", "MFADevicesInUse", "AccountMFAEnabled", "AccountAccessKeysPresent", "AccountSigningCertificatesPresent", "AttachedPoliciesPerGroupQuota", "AttachedPoliciesPerRoleQuota", "AttachedPoliciesPerUserQuota", "Policies", "PoliciesQuota", "PolicySizeQuota", "PolicyVersionsInUse", "PolicyVersionsInUseQuota", "VersionsPerPolicyQuota" ] }, "summaryMapType":{ "type":"map", "key":{"shape":"summaryKeyType"}, "value":{"shape":"summaryValueType"} }, "summaryValueType":{"type":"integer"}, "thumbprintListType":{ "type":"list", "member":{"shape":"thumbprintType"} }, "thumbprintType":{ "type":"string", "max":40, "min":40 }, "unrecognizedPublicKeyEncodingMessage":{"type":"string"}, "userDetailListType":{ "type":"list", "member":{"shape":"UserDetail"} }, "userListType":{ "type":"list", "member":{"shape":"User"} }, "userNameType":{ "type":"string", "max":64, "min":1, "pattern":"[\\w+=,.@-]+" }, "virtualMFADeviceListType":{ "type":"list", "member":{"shape":"VirtualMFADevice"} }, "virtualMFADeviceName":{ "type":"string", "min":1, "pattern":"[\\w+=,.@-]+" } } } aws-sdk-go-1.4.22/models/apis/iam/2010-05-08/docs-2.json000066400000000000000000011107331300374646400215710ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS Identity and Access Management

        AWS Identity and Access Management (IAM) is a web service that you can use to manage users and user permissions under your AWS account. This guide provides descriptions of IAM actions that you can call programmatically. For general information about IAM, see AWS Identity and Access Management (IAM). For the user guide for IAM, see Using IAM.

        AWS provides SDKs that consist of libraries and sample code for various programming languages and platforms (Java, Ruby, .NET, iOS, Android, etc.). The SDKs provide a convenient way to create programmatic access to IAM and AWS. For example, the SDKs take care of tasks such as cryptographically signing requests (see below), managing errors, and retrying requests automatically. For information about the AWS SDKs, including how to download and install them, see the Tools for Amazon Web Services page.

        We recommend that you use the AWS SDKs to make programmatic API calls to IAM. However, you can also use the IAM Query API to make direct calls to the IAM web service. To learn more about the IAM Query API, see Making Query Requests in the Using IAM guide. IAM supports GET and POST requests for all actions. That is, the API does not require you to use GET for some actions and POST for others. However, GET requests are subject to the limitation size of a URL. Therefore, for operations that require larger sizes, use a POST request.

        Signing Requests

        Requests must be signed using an access key ID and a secret access key. We strongly recommend that you do not use your AWS account access key ID and secret access key for everyday work with IAM. You can use the access key ID and secret access key for an IAM user or you can use the AWS Security Token Service to generate temporary security credentials and use those to sign requests.

        To sign requests, we recommend that you use Signature Version 4. If you have an existing application that uses Signature Version 2, you do not have to update it to use Signature Version 4. However, some operations now require Signature Version 4. The documentation for operations that require version 4 indicate this requirement.

        Additional Resources

        For more information, see the following:

        • AWS Security Credentials. This topic provides general information about the types of credentials used for accessing AWS.

        • IAM Best Practices. This topic presents a list of suggestions for using the IAM service to help secure your AWS resources.

        • Signing AWS API Requests. This set of topics walk you through the process of signing a request using an access key ID and secret access key.

        ", "operations": { "AddClientIDToOpenIDConnectProvider": "

        Adds a new client ID (also known as audience) to the list of client IDs already registered for the specified IAM OpenID Connect (OIDC) provider resource.

        This action is idempotent; it does not fail or return an error if you add an existing client ID to the provider.

        ", "AddRoleToInstanceProfile": "

        Adds the specified IAM role to the specified instance profile.

        The caller of this API must be granted the PassRole permission on the IAM role by a permission policy.

        For more information about roles, go to Working with Roles. For more information about instance profiles, go to About Instance Profiles.

        ", "AddUserToGroup": "

        Adds the specified user to the specified group.

        ", "AttachGroupPolicy": "

        Attaches the specified managed policy to the specified IAM group.

        You use this API to attach a managed policy to a group. To embed an inline policy in a group, use PutGroupPolicy.

        For more information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        ", "AttachRolePolicy": "

        Attaches the specified managed policy to the specified IAM role.

        When you attach a managed policy to a role, the managed policy becomes part of the role's permission (access) policy. You cannot use a managed policy as the role's trust policy. The role's trust policy is created at the same time as the role, using CreateRole. You can update a role's trust policy using UpdateAssumeRolePolicy.

        Use this API to attach a managed policy to a role. To embed an inline policy in a role, use PutRolePolicy. For more information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        ", "AttachUserPolicy": "

        Attaches the specified managed policy to the specified user.

        You use this API to attach a managed policy to a user. To embed an inline policy in a user, use PutUserPolicy.

        For more information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        ", "ChangePassword": "

        Changes the password of the IAM user who is calling this action. The root account password is not affected by this action.

        To change the password for a different user, see UpdateLoginProfile. For more information about modifying passwords, see Managing Passwords in the IAM User Guide.

        ", "CreateAccessKey": "

        Creates a new AWS secret access key and corresponding AWS access key ID for the specified user. The default status for new keys is Active.

        If you do not specify a user name, IAM determines the user name implicitly based on the AWS access key ID signing the request. Because this action works for access keys under the AWS account, you can use this action to manage root credentials even if the AWS account has no associated users.

        For information about limits on the number of keys you can create, see Limitations on IAM Entities in the IAM User Guide.

        To ensure the security of your AWS account, the secret access key is accessible only during key and user creation. You must save the key (for example, in a text file) if you want to be able to access it again. If a secret key is lost, you can delete the access keys for the associated user and then create new keys.

        ", "CreateAccountAlias": "

        Creates an alias for your AWS account. For information about using an AWS account alias, see Using an Alias for Your AWS Account ID in the IAM User Guide.

        ", "CreateGroup": "

        Creates a new group.

        For information about the number of groups you can create, see Limitations on IAM Entities in the IAM User Guide.

        ", "CreateInstanceProfile": "

        Creates a new instance profile. For information about instance profiles, go to About Instance Profiles.

        For information about the number of instance profiles you can create, see Limitations on IAM Entities in the IAM User Guide.

        ", "CreateLoginProfile": "

        Creates a password for the specified user, giving the user the ability to access AWS services through the AWS Management Console. For more information about managing passwords, see Managing Passwords in the IAM User Guide.

        ", "CreateOpenIDConnectProvider": "

        Creates an IAM entity to describe an identity provider (IdP) that supports OpenID Connect (OIDC).

        The OIDC provider that you create with this operation can be used as a principal in a role's trust policy to establish a trust relationship between AWS and the OIDC provider.

        When you create the IAM OIDC provider, you specify the URL of the OIDC identity provider (IdP) to trust, a list of client IDs (also known as audiences) that identify the application or applications that are allowed to authenticate using the OIDC provider, and a list of thumbprints of the server certificate(s) that the IdP uses. You get all of this information from the OIDC IdP that you want to use for access to AWS.

        Because trust for the OIDC provider is ultimately derived from the IAM provider that this action creates, it is a best practice to limit access to the CreateOpenIDConnectProvider action to highly-privileged users.

        ", "CreatePolicy": "

        Creates a new managed policy for your AWS account.

        This operation creates a policy version with a version identifier of v1 and sets v1 as the policy's default version. For more information about policy versions, see Versioning for Managed Policies in the IAM User Guide.

        For more information about managed policies in general, see Managed Policies and Inline Policies in the IAM User Guide.

        ", "CreatePolicyVersion": "

        Creates a new version of the specified managed policy. To update a managed policy, you create a new policy version. A managed policy can have up to five versions. If the policy has five versions, you must delete an existing version using DeletePolicyVersion before you create a new version.

        Optionally, you can set the new version as the policy's default version. The default version is the version that is in effect for the IAM users, groups, and roles to which the policy is attached.

        For more information about managed policy versions, see Versioning for Managed Policies in the IAM User Guide.

        ", "CreateRole": "

        Creates a new role for your AWS account. For more information about roles, go to Working with Roles. For information about limitations on role names and the number of roles you can create, go to Limitations on IAM Entities in the IAM User Guide.

        ", "CreateSAMLProvider": "

        Creates an IAM resource that describes an identity provider (IdP) that supports SAML 2.0.

        The SAML provider resource that you create with this operation can be used as a principal in an IAM role's trust policy to enable federated users who sign-in using the SAML IdP to assume the role. You can create an IAM role that supports Web-based single sign-on (SSO) to the AWS Management Console or one that supports API access to AWS.

        When you create the SAML provider resource, you upload an a SAML metadata document that you get from your IdP and that includes the issuer's name, expiration information, and keys that can be used to validate the SAML authentication response (assertions) that the IdP sends. You must generate the metadata document using the identity management software that is used as your organization's IdP.

        This operation requires Signature Version 4.

        For more information, see Enabling SAML 2.0 Federated Users to Access the AWS Management Console and About SAML 2.0-based Federation in the IAM User Guide.

        ", "CreateUser": "

        Creates a new IAM user for your AWS account.

        For information about limitations on the number of IAM users you can create, see Limitations on IAM Entities in the IAM User Guide.

        ", "CreateVirtualMFADevice": "

        Creates a new virtual MFA device for the AWS account. After creating the virtual MFA, use EnableMFADevice to attach the MFA device to an IAM user. For more information about creating and working with virtual MFA devices, go to Using a Virtual MFA Device in the IAM User Guide.

        For information about limits on the number of MFA devices you can create, see Limitations on Entities in the IAM User Guide.

        The seed information contained in the QR code and the Base32 string should be treated like any other secret access information, such as your AWS access keys or your passwords. After you provision your virtual device, you should ensure that the information is destroyed following secure procedures.

        ", "DeactivateMFADevice": "

        Deactivates the specified MFA device and removes it from association with the user name for which it was originally enabled.

        For more information about creating and working with virtual MFA devices, go to Using a Virtual MFA Device in the IAM User Guide.

        ", "DeleteAccessKey": "

        Deletes the access key pair associated with the specified IAM user.

        If you do not specify a user name, IAM determines the user name implicitly based on the AWS access key ID signing the request. Because this action works for access keys under the AWS account, you can use this action to manage root credentials even if the AWS account has no associated users.

        ", "DeleteAccountAlias": "

        Deletes the specified AWS account alias. For information about using an AWS account alias, see Using an Alias for Your AWS Account ID in the IAM User Guide.

        ", "DeleteAccountPasswordPolicy": "

        Deletes the password policy for the AWS account. There are no parameters.

        ", "DeleteGroup": "

        Deletes the specified IAM group. The group must not contain any users or have any attached policies.

        ", "DeleteGroupPolicy": "

        Deletes the specified inline policy that is embedded in the specified IAM group.

        A group can also have managed policies attached to it. To detach a managed policy from a group, use DetachGroupPolicy. For more information about policies, refer to Managed Policies and Inline Policies in the IAM User Guide.

        ", "DeleteInstanceProfile": "

        Deletes the specified instance profile. The instance profile must not have an associated role.

        Make sure you do not have any Amazon EC2 instances running with the instance profile you are about to delete. Deleting a role or instance profile that is associated with a running instance will break any applications running on the instance.

        For more information about instance profiles, go to About Instance Profiles.

        ", "DeleteLoginProfile": "

        Deletes the password for the specified IAM user, which terminates the user's ability to access AWS services through the AWS Management Console.

        Deleting a user's password does not prevent a user from accessing AWS through the command line interface or the API. To prevent all user access you must also either make any access keys inactive or delete them. For more information about making keys inactive or deleting them, see UpdateAccessKey and DeleteAccessKey.

        ", "DeleteOpenIDConnectProvider": "

        Deletes an OpenID Connect identity provider (IdP) resource object in IAM.

        Deleting an IAM OIDC provider resource does not update any roles that reference the provider as a principal in their trust policies. Any attempt to assume a role that references a deleted provider fails.

        This action is idempotent; it does not fail or return an error if you call the action for a provider that does not exist.

        ", "DeletePolicy": "

        Deletes the specified managed policy.

        Before you can delete a managed policy, you must first detach the policy from all users, groups, and roles that it is attached to, and you must delete all of the policy's versions. The following steps describe the process for deleting a managed policy:

        • Detach the policy from all users, groups, and roles that the policy is attached to, using the DetachUserPolicy, DetachGroupPolicy, or DetachRolePolicy APIs. To list all the users, groups, and roles that a policy is attached to, use ListEntitiesForPolicy.

        • Delete all versions of the policy using DeletePolicyVersion. To list the policy's versions, use ListPolicyVersions. You cannot use DeletePolicyVersion to delete the version that is marked as the default version. You delete the policy's default version in the next step of the process.

        • Delete the policy (this automatically deletes the policy's default version) using this API.

        For information about managed policies, see Managed Policies and Inline Policies in the IAM User Guide.

        ", "DeletePolicyVersion": "

        Deletes the specified version from the specified managed policy.

        You cannot delete the default version from a policy using this API. To delete the default version from a policy, use DeletePolicy. To find out which version of a policy is marked as the default version, use ListPolicyVersions.

        For information about versions for managed policies, see Versioning for Managed Policies in the IAM User Guide.

        ", "DeleteRole": "

        Deletes the specified role. The role must not have any policies attached. For more information about roles, go to Working with Roles.

        Make sure you do not have any Amazon EC2 instances running with the role you are about to delete. Deleting a role or instance profile that is associated with a running instance will break any applications running on the instance.

        ", "DeleteRolePolicy": "

        Deletes the specified inline policy that is embedded in the specified IAM role.

        A role can also have managed policies attached to it. To detach a managed policy from a role, use DetachRolePolicy. For more information about policies, refer to Managed Policies and Inline Policies in the IAM User Guide.

        ", "DeleteSAMLProvider": "

        Deletes a SAML provider resource in IAM.

        Deleting the provider resource from IAM does not update any roles that reference the SAML provider resource's ARN as a principal in their trust policies. Any attempt to assume a role that references a non-existent provider resource ARN fails.

        This operation requires Signature Version 4.

        ", "DeleteSSHPublicKey": "

        Deletes the specified SSH public key.

        The SSH public key deleted by this action is used only for authenticating the associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys to authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for SSH Connections in the AWS CodeCommit User Guide.

        ", "DeleteServerCertificate": "

        Deletes the specified server certificate.

        For more information about working with server certificates, including a list of AWS services that can use the server certificates that you manage with IAM, go to Working with Server Certificates in the IAM User Guide.

        If you are using a server certificate with Elastic Load Balancing, deleting the certificate could have implications for your application. If Elastic Load Balancing doesn't detect the deletion of bound certificates, it may continue to use the certificates. This could cause Elastic Load Balancing to stop accepting traffic. We recommend that you remove the reference to the certificate from Elastic Load Balancing before using this command to delete the certificate. For more information, go to DeleteLoadBalancerListeners in the Elastic Load Balancing API Reference.

        ", "DeleteSigningCertificate": "

        Deletes a signing certificate associated with the specified IAM user.

        If you do not specify a user name, IAM determines the user name implicitly based on the AWS access key ID signing the request. Because this action works for access keys under the AWS account, you can use this action to manage root credentials even if the AWS account has no associated IAM users.

        ", "DeleteUser": "

        Deletes the specified IAM user. The user must not belong to any groups or have any access keys, signing certificates, or attached policies.

        ", "DeleteUserPolicy": "

        Deletes the specified inline policy that is embedded in the specified IAM user.

        A user can also have managed policies attached to it. To detach a managed policy from a user, use DetachUserPolicy. For more information about policies, refer to Managed Policies and Inline Policies in the IAM User Guide.

        ", "DeleteVirtualMFADevice": "

        Deletes a virtual MFA device.

        You must deactivate a user's virtual MFA device before you can delete it. For information about deactivating MFA devices, see DeactivateMFADevice.

        ", "DetachGroupPolicy": "

        Removes the specified managed policy from the specified IAM group.

        A group can also have inline policies embedded with it. To delete an inline policy, use the DeleteGroupPolicy API. For information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        ", "DetachRolePolicy": "

        Removes the specified managed policy from the specified role.

        A role can also have inline policies embedded with it. To delete an inline policy, use the DeleteRolePolicy API. For information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        ", "DetachUserPolicy": "

        Removes the specified managed policy from the specified user.

        A user can also have inline policies embedded with it. To delete an inline policy, use the DeleteUserPolicy API. For information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        ", "EnableMFADevice": "

        Enables the specified MFA device and associates it with the specified IAM user. When enabled, the MFA device is required for every subsequent login by the IAM user associated with the device.

        ", "GenerateCredentialReport": "

        Generates a credential report for the AWS account. For more information about the credential report, see Getting Credential Reports in the IAM User Guide.

        ", "GetAccessKeyLastUsed": "

        Retrieves information about when the specified access key was last used. The information includes the date and time of last use, along with the AWS service and region that were specified in the last request made with that key.

        ", "GetAccountAuthorizationDetails": "

        Retrieves information about all IAM users, groups, roles, and policies in your AWS account, including their relationships to one another. Use this API to obtain a snapshot of the configuration of IAM permissions (users, groups, roles, and policies) in your account.

        You can optionally filter the results using the Filter parameter. You can paginate the results using the MaxItems and Marker parameters.

        ", "GetAccountPasswordPolicy": "

        Retrieves the password policy for the AWS account. For more information about using a password policy, go to Managing an IAM Password Policy.

        ", "GetAccountSummary": "

        Retrieves information about IAM entity usage and IAM quotas in the AWS account.

        For information about limitations on IAM entities, see Limitations on IAM Entities in the IAM User Guide.

        ", "GetContextKeysForCustomPolicy": "

        Gets a list of all of the context keys referenced in the input policies. The policies are supplied as a list of one or more strings. To get the context keys from policies associated with an IAM user, group, or role, use GetContextKeysForPrincipalPolicy.

        Context keys are variables maintained by AWS and its services that provide details about the context of an API query request, and can be evaluated by testing against a value specified in an IAM policy. Use GetContextKeysForCustomPolicy to understand what key names and values you must supply when you call SimulateCustomPolicy. Note that all parameters are shown in unencoded form here for clarity, but must be URL encoded to be included as a part of a real HTML request.

        ", "GetContextKeysForPrincipalPolicy": "

        Gets a list of all of the context keys referenced in all of the IAM policies attached to the specified IAM entity. The entity can be an IAM user, group, or role. If you specify a user, then the request also includes all of the policies attached to groups that the user is a member of.

        You can optionally include a list of one or more additional policies, specified as strings. If you want to include only a list of policies by string, use GetContextKeysForCustomPolicy instead.

        Note: This API discloses information about the permissions granted to other users. If you do not want users to see other user's permissions, then consider allowing them to use GetContextKeysForCustomPolicy instead.

        Context keys are variables maintained by AWS and its services that provide details about the context of an API query request, and can be evaluated by testing against a value in an IAM policy. Use GetContextKeysForPrincipalPolicy to understand what key names and values you must supply when you call SimulatePrincipalPolicy.

        ", "GetCredentialReport": "

        Retrieves a credential report for the AWS account. For more information about the credential report, see Getting Credential Reports in the IAM User Guide.

        ", "GetGroup": "

        Returns a list of IAM users that are in the specified IAM group. You can paginate the results using the MaxItems and Marker parameters.

        ", "GetGroupPolicy": "

        Retrieves the specified inline policy document that is embedded in the specified IAM group.

        Policies returned by this API are URL-encoded compliant with RFC 3986. You can use a URL decoding method to convert the policy back to plain JSON text. For example, if you use Java, you can use the decode method of the java.net.URLDecoder utility class in the Java SDK. Other languages and SDKs provide similar functionality.

        An IAM group can also have managed policies attached to it. To retrieve a managed policy document that is attached to a group, use GetPolicy to determine the policy's default version, then use GetPolicyVersion to retrieve the policy document.

        For more information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        ", "GetInstanceProfile": "

        Retrieves information about the specified instance profile, including the instance profile's path, GUID, ARN, and role. For more information about instance profiles, see About Instance Profiles in the IAM User Guide.

        ", "GetLoginProfile": "

        Retrieves the user name and password-creation date for the specified IAM user. If the user has not been assigned a password, the action returns a 404 (NoSuchEntity) error.

        ", "GetOpenIDConnectProvider": "

        Returns information about the specified OpenID Connect (OIDC) provider resource object in IAM.

        ", "GetPolicy": "

        Retrieves information about the specified managed policy, including the policy's default version and the total number of IAM users, groups, and roles to which the policy is attached. To retrieve the list of the specific users, groups, and roles that the policy is attached to, use the ListEntitiesForPolicy API. This API returns metadata about the policy. To retrieve the actual policy document for a specific version of the policy, use GetPolicyVersion.

        This API retrieves information about managed policies. To retrieve information about an inline policy that is embedded with an IAM user, group, or role, use the GetUserPolicy, GetGroupPolicy, or GetRolePolicy API.

        For more information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        ", "GetPolicyVersion": "

        Retrieves information about the specified version of the specified managed policy, including the policy document.

        Policies returned by this API are URL-encoded compliant with RFC 3986. You can use a URL decoding method to convert the policy back to plain JSON text. For example, if you use Java, you can use the decode method of the java.net.URLDecoder utility class in the Java SDK. Other languages and SDKs provide similar functionality.

        To list the available versions for a policy, use ListPolicyVersions.

        This API retrieves information about managed policies. To retrieve information about an inline policy that is embedded in a user, group, or role, use the GetUserPolicy, GetGroupPolicy, or GetRolePolicy API.

        For more information about the types of policies, see Managed Policies and Inline Policies in the IAM User Guide.

        For more information about managed policy versions, see Versioning for Managed Policies in the IAM User Guide.

        ", "GetRole": "

        Retrieves information about the specified role, including the role's path, GUID, ARN, and the role's trust policy that grants permission to assume the role. For more information about roles, see Working with Roles.

        Policies returned by this API are URL-encoded compliant with RFC 3986. You can use a URL decoding method to convert the policy back to plain JSON text. For example, if you use Java, you can use the decode method of the java.net.URLDecoder utility class in the Java SDK. Other languages and SDKs provide similar functionality.

        ", "GetRolePolicy": "

        Retrieves the specified inline policy document that is embedded with the specified IAM role.

        Policies returned by this API are URL-encoded compliant with RFC 3986. You can use a URL decoding method to convert the policy back to plain JSON text. For example, if you use Java, you can use the decode method of the java.net.URLDecoder utility class in the Java SDK. Other languages and SDKs provide similar functionality.

        An IAM role can also have managed policies attached to it. To retrieve a managed policy document that is attached to a role, use GetPolicy to determine the policy's default version, then use GetPolicyVersion to retrieve the policy document.

        For more information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        For more information about roles, see Using Roles to Delegate Permissions and Federate Identities.

        ", "GetSAMLProvider": "

        Returns the SAML provider metadocument that was uploaded when the IAM SAML provider resource object was created or updated.

        This operation requires Signature Version 4.

        ", "GetSSHPublicKey": "

        Retrieves the specified SSH public key, including metadata about the key.

        The SSH public key retrieved by this action is used only for authenticating the associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys to authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for SSH Connections in the AWS CodeCommit User Guide.

        ", "GetServerCertificate": "

        Retrieves information about the specified server certificate stored in IAM.

        For more information about working with server certificates, including a list of AWS services that can use the server certificates that you manage with IAM, go to Working with Server Certificates in the IAM User Guide.

        ", "GetUser": "

        Retrieves information about the specified IAM user, including the user's creation date, path, unique ID, and ARN.

        If you do not specify a user name, IAM determines the user name implicitly based on the AWS access key ID used to sign the request to this API.

        ", "GetUserPolicy": "

        Retrieves the specified inline policy document that is embedded in the specified IAM user.

        Policies returned by this API are URL-encoded compliant with RFC 3986. You can use a URL decoding method to convert the policy back to plain JSON text. For example, if you use Java, you can use the decode method of the java.net.URLDecoder utility class in the Java SDK. Other languages and SDKs provide similar functionality.

        An IAM user can also have managed policies attached to it. To retrieve a managed policy document that is attached to a user, use GetPolicy to determine the policy's default version, then use GetPolicyVersion to retrieve the policy document.

        For more information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        ", "ListAccessKeys": "

        Returns information about the access key IDs associated with the specified IAM user. If there are none, the action returns an empty list.

        Although each user is limited to a small number of keys, you can still paginate the results using the MaxItems and Marker parameters.

        If the UserName field is not specified, the UserName is determined implicitly based on the AWS access key ID used to sign the request. Because this action works for access keys under the AWS account, you can use this action to manage root credentials even if the AWS account has no associated users.

        To ensure the security of your AWS account, the secret access key is accessible only during key and user creation.

        ", "ListAccountAliases": "

        Lists the account alias associated with the AWS account (Note: you can have only one). For information about using an AWS account alias, see Using an Alias for Your AWS Account ID in the IAM User Guide.

        ", "ListAttachedGroupPolicies": "

        Lists all managed policies that are attached to the specified IAM group.

        An IAM group can also have inline policies embedded with it. To list the inline policies for a group, use the ListGroupPolicies API. For information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        You can paginate the results using the MaxItems and Marker parameters. You can use the PathPrefix parameter to limit the list of policies to only those matching the specified path prefix. If there are no policies attached to the specified group (or none that match the specified path prefix), the action returns an empty list.

        ", "ListAttachedRolePolicies": "

        Lists all managed policies that are attached to the specified IAM role.

        An IAM role can also have inline policies embedded with it. To list the inline policies for a role, use the ListRolePolicies API. For information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        You can paginate the results using the MaxItems and Marker parameters. You can use the PathPrefix parameter to limit the list of policies to only those matching the specified path prefix. If there are no policies attached to the specified role (or none that match the specified path prefix), the action returns an empty list.

        ", "ListAttachedUserPolicies": "

        Lists all managed policies that are attached to the specified IAM user.

        An IAM user can also have inline policies embedded with it. To list the inline policies for a user, use the ListUserPolicies API. For information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        You can paginate the results using the MaxItems and Marker parameters. You can use the PathPrefix parameter to limit the list of policies to only those matching the specified path prefix. If there are no policies attached to the specified group (or none that match the specified path prefix), the action returns an empty list.

        ", "ListEntitiesForPolicy": "

        Lists all IAM users, groups, and roles that the specified managed policy is attached to.

        You can use the optional EntityFilter parameter to limit the results to a particular type of entity (users, groups, or roles). For example, to list only the roles that are attached to the specified policy, set EntityFilter to Role.

        You can paginate the results using the MaxItems and Marker parameters.

        ", "ListGroupPolicies": "

        Lists the names of the inline policies that are embedded in the specified IAM group.

        An IAM group can also have managed policies attached to it. To list the managed policies that are attached to a group, use ListAttachedGroupPolicies. For more information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        You can paginate the results using the MaxItems and Marker parameters. If there are no inline policies embedded with the specified group, the action returns an empty list.

        ", "ListGroups": "

        Lists the IAM groups that have the specified path prefix.

        You can paginate the results using the MaxItems and Marker parameters.

        ", "ListGroupsForUser": "

        Lists the IAM groups that the specified IAM user belongs to.

        You can paginate the results using the MaxItems and Marker parameters.

        ", "ListInstanceProfiles": "

        Lists the instance profiles that have the specified path prefix. If there are none, the action returns an empty list. For more information about instance profiles, go to About Instance Profiles.

        You can paginate the results using the MaxItems and Marker parameters.

        ", "ListInstanceProfilesForRole": "

        Lists the instance profiles that have the specified associated IAM role. If there are none, the action returns an empty list. For more information about instance profiles, go to About Instance Profiles.

        You can paginate the results using the MaxItems and Marker parameters.

        ", "ListMFADevices": "

        Lists the MFA devices for an IAM user. If the request includes a IAM user name, then this action lists all the MFA devices associated with the specified user. If you do not specify a user name, IAM determines the user name implicitly based on the AWS access key ID signing the request for this API.

        You can paginate the results using the MaxItems and Marker parameters.

        ", "ListOpenIDConnectProviders": "

        Lists information about the IAM OpenID Connect (OIDC) provider resource objects defined in the AWS account.

        ", "ListPolicies": "

        Lists all the managed policies that are available in your AWS account, including your own customer-defined managed policies and all AWS managed policies.

        You can filter the list of policies that is returned using the optional OnlyAttached, Scope, and PathPrefix parameters. For example, to list only the customer managed policies in your AWS account, set Scope to Local. To list only AWS managed policies, set Scope to AWS.

        You can paginate the results using the MaxItems and Marker parameters.

        For more information about managed policies, see Managed Policies and Inline Policies in the IAM User Guide.

        ", "ListPolicyVersions": "

        Lists information about the versions of the specified managed policy, including the version that is currently set as the policy's default version.

        For more information about managed policies, see Managed Policies and Inline Policies in the IAM User Guide.

        ", "ListRolePolicies": "

        Lists the names of the inline policies that are embedded in the specified IAM role.

        An IAM role can also have managed policies attached to it. To list the managed policies that are attached to a role, use ListAttachedRolePolicies. For more information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        You can paginate the results using the MaxItems and Marker parameters. If there are no inline policies embedded with the specified role, the action returns an empty list.

        ", "ListRoles": "

        Lists the IAM roles that have the specified path prefix. If there are none, the action returns an empty list. For more information about roles, go to Working with Roles.

        You can paginate the results using the MaxItems and Marker parameters.

        ", "ListSAMLProviders": "

        Lists the SAML provider resource objects defined in IAM in the account.

        This operation requires Signature Version 4.

        ", "ListSSHPublicKeys": "

        Returns information about the SSH public keys associated with the specified IAM user. If there are none, the action returns an empty list.

        The SSH public keys returned by this action are used only for authenticating the IAM user to an AWS CodeCommit repository. For more information about using SSH keys to authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for SSH Connections in the AWS CodeCommit User Guide.

        Although each user is limited to a small number of keys, you can still paginate the results using the MaxItems and Marker parameters.

        ", "ListServerCertificates": "

        Lists the server certificates stored in IAM that have the specified path prefix. If none exist, the action returns an empty list.

        You can paginate the results using the MaxItems and Marker parameters.

        For more information about working with server certificates, including a list of AWS services that can use the server certificates that you manage with IAM, go to Working with Server Certificates in the IAM User Guide.

        ", "ListSigningCertificates": "

        Returns information about the signing certificates associated with the specified IAM user. If there are none, the action returns an empty list.

        Although each user is limited to a small number of signing certificates, you can still paginate the results using the MaxItems and Marker parameters.

        If the UserName field is not specified, the user name is determined implicitly based on the AWS access key ID used to sign the request for this API. Because this action works for access keys under the AWS account, you can use this action to manage root credentials even if the AWS account has no associated users.

        ", "ListUserPolicies": "

        Lists the names of the inline policies embedded in the specified IAM user.

        An IAM user can also have managed policies attached to it. To list the managed policies that are attached to a user, use ListAttachedUserPolicies. For more information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        You can paginate the results using the MaxItems and Marker parameters. If there are no inline policies embedded with the specified user, the action returns an empty list.

        ", "ListUsers": "

        Lists the IAM users that have the specified path prefix. If no path prefix is specified, the action returns all users in the AWS account. If there are none, the action returns an empty list.

        You can paginate the results using the MaxItems and Marker parameters.

        ", "ListVirtualMFADevices": "

        Lists the virtual MFA devices defined in the AWS account by assignment status. If you do not specify an assignment status, the action returns a list of all virtual MFA devices. Assignment status can be Assigned, Unassigned, or Any.

        You can paginate the results using the MaxItems and Marker parameters.

        ", "PutGroupPolicy": "

        Adds or updates an inline policy document that is embedded in the specified IAM group.

        A user can also have managed policies attached to it. To attach a managed policy to a group, use AttachGroupPolicy. To create a new managed policy, use CreatePolicy. For information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        For information about limits on the number of inline policies that you can embed in a group, see Limitations on IAM Entities in the IAM User Guide.

        Because policy documents can be large, you should use POST rather than GET when calling PutGroupPolicy. For general information about using the Query API with IAM, go to Making Query Requests in the IAM User Guide.

        ", "PutRolePolicy": "

        Adds or updates an inline policy document that is embedded in the specified IAM role.

        When you embed an inline policy in a role, the inline policy is used as part of the role's access (permissions) policy. The role's trust policy is created at the same time as the role, using CreateRole. You can update a role's trust policy using UpdateAssumeRolePolicy. For more information about IAM roles, go to Using Roles to Delegate Permissions and Federate Identities.

        A role can also have a managed policy attached to it. To attach a managed policy to a role, use AttachRolePolicy. To create a new managed policy, use CreatePolicy. For information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        For information about limits on the number of inline policies that you can embed with a role, see Limitations on IAM Entities in the IAM User Guide.

        Because policy documents can be large, you should use POST rather than GET when calling PutRolePolicy. For general information about using the Query API with IAM, go to Making Query Requests in the IAM User Guide.

        ", "PutUserPolicy": "

        Adds or updates an inline policy document that is embedded in the specified IAM user.

        An IAM user can also have a managed policy attached to it. To attach a managed policy to a user, use AttachUserPolicy. To create a new managed policy, use CreatePolicy. For information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

        For information about limits on the number of inline policies that you can embed in a user, see Limitations on IAM Entities in the IAM User Guide.

        Because policy documents can be large, you should use POST rather than GET when calling PutUserPolicy. For general information about using the Query API with IAM, go to Making Query Requests in the IAM User Guide.

        ", "RemoveClientIDFromOpenIDConnectProvider": "

        Removes the specified client ID (also known as audience) from the list of client IDs registered for the specified IAM OpenID Connect (OIDC) provider resource object.

        This action is idempotent; it does not fail or return an error if you try to remove a client ID that does not exist.

        ", "RemoveRoleFromInstanceProfile": "

        Removes the specified IAM role from the specified EC2 instance profile.

        Make sure you do not have any Amazon EC2 instances running with the role you are about to remove from the instance profile. Removing a role from an instance profile that is associated with a running instance break any applications running on the instance.

        For more information about IAM roles, go to Working with Roles. For more information about instance profiles, go to About Instance Profiles.

        ", "RemoveUserFromGroup": "

        Removes the specified user from the specified group.

        ", "ResyncMFADevice": "

        Synchronizes the specified MFA device with its IAM resource object on the AWS servers.

        For more information about creating and working with virtual MFA devices, go to Using a Virtual MFA Device in the IAM User Guide.

        ", "SetDefaultPolicyVersion": "

        Sets the specified version of the specified policy as the policy's default (operative) version.

        This action affects all users, groups, and roles that the policy is attached to. To list the users, groups, and roles that the policy is attached to, use the ListEntitiesForPolicy API.

        For information about managed policies, see Managed Policies and Inline Policies in the IAM User Guide.

        ", "SimulateCustomPolicy": "

        Simulate how a set of IAM policies and optionally a resource-based policy works with a list of API actions and AWS resources to determine the policies' effective permissions. The policies are provided as strings.

        The simulation does not perform the API actions; it only checks the authorization to determine if the simulated policies allow or deny the actions.

        If you want to simulate existing policies attached to an IAM user, group, or role, use SimulatePrincipalPolicy instead.

        Context keys are variables maintained by AWS and its services that provide details about the context of an API query request. You can use the Condition element of an IAM policy to evaluate context keys. To get the list of context keys that the policies require for correct simulation, use GetContextKeysForCustomPolicy.

        If the output is long, you can use MaxItems and Marker parameters to paginate the results.

        ", "SimulatePrincipalPolicy": "

        Simulate how a set of IAM policies attached to an IAM entity works with a list of API actions and AWS resources to determine the policies' effective permissions. The entity can be an IAM user, group, or role. If you specify a user, then the simulation also includes all of the policies that are attached to groups that the user belongs to .

        You can optionally include a list of one or more additional policies specified as strings to include in the simulation. If you want to simulate only policies specified as strings, use SimulateCustomPolicy instead.

        You can also optionally include one resource-based policy to be evaluated with each of the resources included in the simulation.

        The simulation does not perform the API actions, it only checks the authorization to determine if the simulated policies allow or deny the actions.

        Note: This API discloses information about the permissions granted to other users. If you do not want users to see other user's permissions, then consider allowing them to use SimulateCustomPolicy instead.

        Context keys are variables maintained by AWS and its services that provide details about the context of an API query request. You can use the Condition element of an IAM policy to evaluate context keys. To get the list of context keys that the policies require for correct simulation, use GetContextKeysForPrincipalPolicy.

        If the output is long, you can use the MaxItems and Marker parameters to paginate the results.

        ", "UpdateAccessKey": "

        Changes the status of the specified access key from Active to Inactive, or vice versa. This action can be used to disable a user's key as part of a key rotation work flow.

        If the UserName field is not specified, the UserName is determined implicitly based on the AWS access key ID used to sign the request. Because this action works for access keys under the AWS account, you can use this action to manage root credentials even if the AWS account has no associated users.

        For information about rotating keys, see Managing Keys and Certificates in the IAM User Guide.

        ", "UpdateAccountPasswordPolicy": "

        Updates the password policy settings for the AWS account.

        This action does not support partial updates. No parameters are required, but if you do not specify a parameter, that parameter's value reverts to its default value. See the Request Parameters section for each parameter's default value.

        For more information about using a password policy, see Managing an IAM Password Policy in the IAM User Guide.

        ", "UpdateAssumeRolePolicy": "

        Updates the policy that grants an IAM entity permission to assume a role. This is typically referred to as the \"role trust policy\". For more information about roles, go to Using Roles to Delegate Permissions and Federate Identities.

        ", "UpdateGroup": "

        Updates the name and/or the path of the specified IAM group.

        You should understand the implications of changing a group's path or name. For more information, see Renaming Users and Groups in the IAM User Guide.

        To change an IAM group name the requester must have appropriate permissions on both the source object and the target object. For example, to change \"Managers\" to \"MGRs\", the entity making the request must have permission on both \"Managers\" and \"MGRs\", or must have permission on all (*). For more information about permissions, see Permissions and Policies.

        ", "UpdateLoginProfile": "

        Changes the password for the specified IAM user.

        IAM users can change their own passwords by calling ChangePassword. For more information about modifying passwords, see Managing Passwords in the IAM User Guide.

        ", "UpdateOpenIDConnectProviderThumbprint": "

        Replaces the existing list of server certificate thumbprints associated with an OpenID Connect (OIDC) provider resource object with a new list of thumbprints.

        The list that you pass with this action completely replaces the existing list of thumbprints. (The lists are not merged.)

        Typically, you need to update a thumbprint only when the identity provider's certificate changes, which occurs rarely. However, if the provider's certificate does change, any attempt to assume an IAM role that specifies the OIDC provider as a principal fails until the certificate thumbprint is updated.

        Because trust for the OIDC provider is ultimately derived from the provider's certificate and is validated by the thumbprint, it is a best practice to limit access to the UpdateOpenIDConnectProviderThumbprint action to highly-privileged users.

        ", "UpdateSAMLProvider": "

        Updates the metadata document for an existing SAML provider resource object.

        This operation requires Signature Version 4.

        ", "UpdateSSHPublicKey": "

        Sets the status of an IAM user's SSH public key to active or inactive. SSH public keys that are inactive cannot be used for authentication. This action can be used to disable a user's SSH public key as part of a key rotation work flow.

        The SSH public key affected by this action is used only for authenticating the associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys to authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for SSH Connections in the AWS CodeCommit User Guide.

        ", "UpdateServerCertificate": "

        Updates the name and/or the path of the specified server certificate stored in IAM.

        For more information about working with server certificates, including a list of AWS services that can use the server certificates that you manage with IAM, go to Working with Server Certificates in the IAM User Guide.

        You should understand the implications of changing a server certificate's path or name. For more information, see Renaming a Server Certificate in the IAM User Guide.

        To change a server certificate name the requester must have appropriate permissions on both the source object and the target object. For example, to change the name from \"ProductionCert\" to \"ProdCert\", the entity making the request must have permission on \"ProductionCert\" and \"ProdCert\", or must have permission on all (*). For more information about permissions, see Access Management in the IAM User Guide.

        ", "UpdateSigningCertificate": "

        Changes the status of the specified user signing certificate from active to disabled, or vice versa. This action can be used to disable an IAM user's signing certificate as part of a certificate rotation work flow.

        If the UserName field is not specified, the UserName is determined implicitly based on the AWS access key ID used to sign the request. Because this action works for access keys under the AWS account, you can use this action to manage root credentials even if the AWS account has no associated users.

        ", "UpdateUser": "

        Updates the name and/or the path of the specified IAM user.

        You should understand the implications of changing an IAM user's path or name. For more information, see Renaming an IAM User and Renaming an IAM Group in the IAM User Guide.

        To change a user name the requester must have appropriate permissions on both the source object and the target object. For example, to change Bob to Robert, the entity making the request must have permission on Bob and Robert, or must have permission on all (*). For more information about permissions, see Permissions and Policies.

        ", "UploadSSHPublicKey": "

        Uploads an SSH public key and associates it with the specified IAM user.

        The SSH public key uploaded by this action can be used only for authenticating the associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys to authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for SSH Connections in the AWS CodeCommit User Guide.

        ", "UploadServerCertificate": "

        Uploads a server certificate entity for the AWS account. The server certificate entity includes a public key certificate, a private key, and an optional certificate chain, which should all be PEM-encoded.

        For more information about working with server certificates, including a list of AWS services that can use the server certificates that you manage with IAM, go to Working with Server Certificates in the IAM User Guide.

        For information about the number of server certificates you can upload, see Limitations on IAM Entities and Objects in the IAM User Guide.

        Because the body of the public key certificate, private key, and the certificate chain can be large, you should use POST rather than GET when calling UploadServerCertificate. For information about setting up signatures and authorization through the API, go to Signing AWS API Requests in the AWS General Reference. For general information about using the Query API with IAM, go to Calling the API by Making HTTP Query Requests in the IAM User Guide.

        ", "UploadSigningCertificate": "

        Uploads an X.509 signing certificate and associates it with the specified IAM user. Some AWS services use X.509 signing certificates to validate requests that are signed with a corresponding private key. When you upload the certificate, its default status is Active.

        If the UserName field is not specified, the IAM user name is determined implicitly based on the AWS access key ID used to sign the request. Because this action works for access keys under the AWS account, you can use this action to manage root credentials even if the AWS account has no associated users.

        Because the body of a X.509 certificate can be large, you should use POST rather than GET when calling UploadSigningCertificate. For information about setting up signatures and authorization through the API, go to Signing AWS API Requests in the AWS General Reference. For general information about using the Query API with IAM, go to Making Query Requests in the IAM User Guide.

        " }, "shapes": { "AccessKey": { "base": "

        Contains information about an AWS access key.

        This data type is used as a response element in the CreateAccessKey and ListAccessKeys actions.

        The SecretAccessKey value is returned only in response to CreateAccessKey. You can get a secret access key only when you first create an access key; you cannot recover the secret access key later. If you lose a secret access key, you must create a new access key.

        ", "refs": { "CreateAccessKeyResponse$AccessKey": "

        A structure with details about the access key.

        " } }, "AccessKeyLastUsed": { "base": "

        Contains information about the last time an AWS access key was used.

        This data type is used as a response element in the GetAccessKeyLastUsed action.

        ", "refs": { "GetAccessKeyLastUsedResponse$AccessKeyLastUsed": "

        Contains information about the last time the access key was used.

        " } }, "AccessKeyMetadata": { "base": "

        Contains information about an AWS access key, without its secret key.

        This data type is used as a response element in the ListAccessKeys action.

        ", "refs": { "accessKeyMetadataListType$member": null } }, "ActionNameListType": { "base": null, "refs": { "SimulateCustomPolicyRequest$ActionNames": "

        A list of names of API actions to evaluate in the simulation. Each action is evaluated against each resource. Each action must include the service identifier, such as iam:CreateUser.

        ", "SimulatePrincipalPolicyRequest$ActionNames": "

        A list of names of API actions to evaluate in the simulation. Each action is evaluated for each resource. Each action must include the service identifier, such as iam:CreateUser.

        " } }, "ActionNameType": { "base": null, "refs": { "ActionNameListType$member": null, "EvaluationResult$EvalActionName": "

        The name of the API action tested on the indicated resource.

        " } }, "AddClientIDToOpenIDConnectProviderRequest": { "base": null, "refs": { } }, "AddRoleToInstanceProfileRequest": { "base": null, "refs": { } }, "AddUserToGroupRequest": { "base": null, "refs": { } }, "AttachGroupPolicyRequest": { "base": null, "refs": { } }, "AttachRolePolicyRequest": { "base": null, "refs": { } }, "AttachUserPolicyRequest": { "base": null, "refs": { } }, "AttachedPolicy": { "base": "

        Contains information about an attached policy.

        An attached policy is a managed policy that has been attached to a user, group, or role. This data type is used as a response element in the ListAttachedGroupPolicies, ListAttachedRolePolicies, ListAttachedUserPolicies, and GetAccountAuthorizationDetails actions.

        For more information about managed policies, refer to Managed Policies and Inline Policies in the Using IAM guide.

        ", "refs": { "attachedPoliciesListType$member": null } }, "BootstrapDatum": { "base": null, "refs": { "VirtualMFADevice$Base32StringSeed": "

        The Base32 seed defined as specified in RFC3548. The Base32StringSeed is Base64-encoded.

        ", "VirtualMFADevice$QRCodePNG": "

        A QR code PNG image that encodes otpauth://totp/$virtualMFADeviceName@$AccountName?secret=$Base32String where $virtualMFADeviceName is one of the create call arguments, AccountName is the user name if set (otherwise, the account ID otherwise), and Base32String is the seed in Base32 format. The Base32String value is Base64-encoded.

        " } }, "ChangePasswordRequest": { "base": null, "refs": { } }, "ColumnNumber": { "base": null, "refs": { "Position$Column": "

        The column in the line containing the specified position in the document.

        " } }, "ContextEntry": { "base": "

        Contains information about a condition context key. It includes the name of the key and specifies the value (or values, if the context key supports multiple values) to use in the simulation. This information is used when evaluating the Condition elements of the input policies.

        This data type is used as an input parameter to SimulateCustomPolicy and SimulateCustomPolicy .

        ", "refs": { "ContextEntryListType$member": null } }, "ContextEntryListType": { "base": null, "refs": { "SimulateCustomPolicyRequest$ContextEntries": "

        A list of context keys and corresponding values for the simulation to use. Whenever a context key is evaluated in one of the simulated IAM permission policies, the corresponding value is supplied.

        ", "SimulatePrincipalPolicyRequest$ContextEntries": "

        A list of context keys and corresponding values for the simulation to use. Whenever a context key is evaluated in one of the simulated IAM permission policies, the corresponding value is supplied.

        " } }, "ContextKeyNameType": { "base": null, "refs": { "ContextEntry$ContextKeyName": "

        The full name of a condition context key, including the service prefix. For example, aws:SourceIp or s3:VersionId.

        ", "ContextKeyNamesResultListType$member": null } }, "ContextKeyNamesResultListType": { "base": null, "refs": { "EvaluationResult$MissingContextValues": "

        A list of context keys that are required by the included input policies but that were not provided by one of the input parameters. This list is used when the resource in a simulation is \"*\", either explicitly, or when the ResourceArns parameter blank. If you include a list of resources, then any missing context values are instead included under the ResourceSpecificResults section. To discover the context keys used by a set of policies, you can call GetContextKeysForCustomPolicy or GetContextKeysForPrincipalPolicy.

        ", "GetContextKeysForPolicyResponse$ContextKeyNames": "

        The list of context keys that are referenced in the input policies.

        ", "ResourceSpecificResult$MissingContextValues": "

        A list of context keys that are required by the included input policies but that were not provided by one of the input parameters. This list is used when a list of ARNs is included in the ResourceArns parameter instead of \"*\". If you do not specify individual resources, by setting ResourceArns to \"*\" or by not including the ResourceArns parameter, then any missing context values are instead included under the EvaluationResults section. To discover the context keys used by a set of policies, you can call GetContextKeysForCustomPolicy or GetContextKeysForPrincipalPolicy.

        " } }, "ContextKeyTypeEnum": { "base": null, "refs": { "ContextEntry$ContextKeyType": "

        The data type of the value (or values) specified in the ContextKeyValues parameter.

        " } }, "ContextKeyValueListType": { "base": null, "refs": { "ContextEntry$ContextKeyValues": "

        The value (or values, if the condition context key supports multiple values) to provide to the simulation for use when the key is referenced by a Condition element in an input policy.

        " } }, "ContextKeyValueType": { "base": null, "refs": { "ContextKeyValueListType$member": null } }, "CreateAccessKeyRequest": { "base": null, "refs": { } }, "CreateAccessKeyResponse": { "base": "

        Contains the response to a successful CreateAccessKey request.

        ", "refs": { } }, "CreateAccountAliasRequest": { "base": null, "refs": { } }, "CreateGroupRequest": { "base": null, "refs": { } }, "CreateGroupResponse": { "base": "

        Contains the response to a successful CreateGroup request.

        ", "refs": { } }, "CreateInstanceProfileRequest": { "base": null, "refs": { } }, "CreateInstanceProfileResponse": { "base": "

        Contains the response to a successful CreateInstanceProfile request.

        ", "refs": { } }, "CreateLoginProfileRequest": { "base": null, "refs": { } }, "CreateLoginProfileResponse": { "base": "

        Contains the response to a successful CreateLoginProfile request.

        ", "refs": { } }, "CreateOpenIDConnectProviderRequest": { "base": null, "refs": { } }, "CreateOpenIDConnectProviderResponse": { "base": "

        Contains the response to a successful CreateOpenIDConnectProvider request.

        ", "refs": { } }, "CreatePolicyRequest": { "base": null, "refs": { } }, "CreatePolicyResponse": { "base": "

        Contains the response to a successful CreatePolicy request.

        ", "refs": { } }, "CreatePolicyVersionRequest": { "base": null, "refs": { } }, "CreatePolicyVersionResponse": { "base": "

        Contains the response to a successful CreatePolicyVersion request.

        ", "refs": { } }, "CreateRoleRequest": { "base": null, "refs": { } }, "CreateRoleResponse": { "base": "

        Contains the response to a successful CreateRole request.

        ", "refs": { } }, "CreateSAMLProviderRequest": { "base": null, "refs": { } }, "CreateSAMLProviderResponse": { "base": "

        Contains the response to a successful CreateSAMLProvider request.

        ", "refs": { } }, "CreateUserRequest": { "base": null, "refs": { } }, "CreateUserResponse": { "base": "

        Contains the response to a successful CreateUser request.

        ", "refs": { } }, "CreateVirtualMFADeviceRequest": { "base": null, "refs": { } }, "CreateVirtualMFADeviceResponse": { "base": "

        Contains the response to a successful CreateVirtualMFADevice request.

        ", "refs": { } }, "CredentialReportExpiredException": { "base": "

        The request was rejected because the most recent credential report has expired. To generate a new credential report, use GenerateCredentialReport. For more information about credential report expiration, see Getting Credential Reports in the IAM User Guide.

        ", "refs": { } }, "CredentialReportNotPresentException": { "base": "

        The request was rejected because the credential report does not exist. To generate a credential report, use GenerateCredentialReport.

        ", "refs": { } }, "CredentialReportNotReadyException": { "base": "

        The request was rejected because the credential report is still being generated.

        ", "refs": { } }, "DeactivateMFADeviceRequest": { "base": null, "refs": { } }, "DeleteAccessKeyRequest": { "base": null, "refs": { } }, "DeleteAccountAliasRequest": { "base": null, "refs": { } }, "DeleteConflictException": { "base": "

        The request was rejected because it attempted to delete a resource that has attached subordinate entities. The error message describes these entities.

        ", "refs": { } }, "DeleteGroupPolicyRequest": { "base": null, "refs": { } }, "DeleteGroupRequest": { "base": null, "refs": { } }, "DeleteInstanceProfileRequest": { "base": null, "refs": { } }, "DeleteLoginProfileRequest": { "base": null, "refs": { } }, "DeleteOpenIDConnectProviderRequest": { "base": null, "refs": { } }, "DeletePolicyRequest": { "base": null, "refs": { } }, "DeletePolicyVersionRequest": { "base": null, "refs": { } }, "DeleteRolePolicyRequest": { "base": null, "refs": { } }, "DeleteRoleRequest": { "base": null, "refs": { } }, "DeleteSAMLProviderRequest": { "base": null, "refs": { } }, "DeleteSSHPublicKeyRequest": { "base": null, "refs": { } }, "DeleteServerCertificateRequest": { "base": null, "refs": { } }, "DeleteSigningCertificateRequest": { "base": null, "refs": { } }, "DeleteUserPolicyRequest": { "base": null, "refs": { } }, "DeleteUserRequest": { "base": null, "refs": { } }, "DeleteVirtualMFADeviceRequest": { "base": null, "refs": { } }, "DetachGroupPolicyRequest": { "base": null, "refs": { } }, "DetachRolePolicyRequest": { "base": null, "refs": { } }, "DetachUserPolicyRequest": { "base": null, "refs": { } }, "DuplicateCertificateException": { "base": "

        The request was rejected because the same certificate is associated with an IAM user in the account.

        ", "refs": { } }, "DuplicateSSHPublicKeyException": { "base": "

        The request was rejected because the SSH public key is already associated with the specified IAM user.

        ", "refs": { } }, "EnableMFADeviceRequest": { "base": null, "refs": { } }, "EntityAlreadyExistsException": { "base": "

        The request was rejected because it attempted to create a resource that already exists.

        ", "refs": { } }, "EntityTemporarilyUnmodifiableException": { "base": "

        The request was rejected because it referenced an entity that is temporarily unmodifiable, such as a user name that was deleted and then recreated. The error indicates that the request is likely to succeed if you try again after waiting several minutes. The error message describes the entity.

        ", "refs": { } }, "EntityType": { "base": null, "refs": { "ListEntitiesForPolicyRequest$EntityFilter": "

        The entity type to use for filtering the results.

        For example, when EntityFilter is Role, only the roles that are attached to the specified policy are returned. This parameter is optional. If it is not included, all attached entities (users, groups, and roles) are returned. The argument for this parameter must be one of the valid values listed below.

        ", "entityListType$member": null } }, "EvalDecisionDetailsType": { "base": null, "refs": { "EvaluationResult$EvalDecisionDetails": "

        Additional details about the results of the evaluation decision. When there are both IAM policies and resource policies, this parameter explains how each set of policies contributes to the final evaluation decision. When simulating cross-account access to a resource, both the resource-based policy and the caller's IAM policy must grant access. See How IAM Roles Differ from Resource-based Policies

        ", "ResourceSpecificResult$EvalDecisionDetails": "

        Additional details about the results of the evaluation decision. When there are both IAM policies and resource policies, this parameter explains how each set of policies contributes to the final evaluation decision. When simulating cross-account access to a resource, both the resource-based policy and the caller's IAM policy must grant access.

        " } }, "EvalDecisionSourceType": { "base": null, "refs": { "EvalDecisionDetailsType$key": null } }, "EvaluationResult": { "base": "

        Contains the results of a simulation.

        This data type is used by the return parameter of SimulateCustomPolicy and SimulatePrincipalPolicy .

        ", "refs": { "EvaluationResultsListType$member": null } }, "EvaluationResultsListType": { "base": null, "refs": { "SimulatePolicyResponse$EvaluationResults": "

        The results of the simulation.

        " } }, "GenerateCredentialReportResponse": { "base": "

        Contains the response to a successful GenerateCredentialReport request.

        ", "refs": { } }, "GetAccessKeyLastUsedRequest": { "base": null, "refs": { } }, "GetAccessKeyLastUsedResponse": { "base": "

        Contains the response to a successful GetAccessKeyLastUsed request. It is also returned as a member of the AccessKeyMetaData structure returned by the ListAccessKeys action.

        ", "refs": { } }, "GetAccountAuthorizationDetailsRequest": { "base": null, "refs": { } }, "GetAccountAuthorizationDetailsResponse": { "base": "

        Contains the response to a successful GetAccountAuthorizationDetails request.

        ", "refs": { } }, "GetAccountPasswordPolicyResponse": { "base": "

        Contains the response to a successful GetAccountPasswordPolicy request.

        ", "refs": { } }, "GetAccountSummaryResponse": { "base": "

        Contains the response to a successful GetAccountSummary request.

        ", "refs": { } }, "GetContextKeysForCustomPolicyRequest": { "base": null, "refs": { } }, "GetContextKeysForPolicyResponse": { "base": "

        Contains the response to a successful GetContextKeysForPrincipalPolicy or GetContextKeysForCustomPolicy request.

        ", "refs": { } }, "GetContextKeysForPrincipalPolicyRequest": { "base": null, "refs": { } }, "GetCredentialReportResponse": { "base": "

        Contains the response to a successful GetCredentialReport request.

        ", "refs": { } }, "GetGroupPolicyRequest": { "base": null, "refs": { } }, "GetGroupPolicyResponse": { "base": "

        Contains the response to a successful GetGroupPolicy request.

        ", "refs": { } }, "GetGroupRequest": { "base": null, "refs": { } }, "GetGroupResponse": { "base": "

        Contains the response to a successful GetGroup request.

        ", "refs": { } }, "GetInstanceProfileRequest": { "base": null, "refs": { } }, "GetInstanceProfileResponse": { "base": "

        Contains the response to a successful GetInstanceProfile request.

        ", "refs": { } }, "GetLoginProfileRequest": { "base": null, "refs": { } }, "GetLoginProfileResponse": { "base": "

        Contains the response to a successful GetLoginProfile request.

        ", "refs": { } }, "GetOpenIDConnectProviderRequest": { "base": null, "refs": { } }, "GetOpenIDConnectProviderResponse": { "base": "

        Contains the response to a successful GetOpenIDConnectProvider request.

        ", "refs": { } }, "GetPolicyRequest": { "base": null, "refs": { } }, "GetPolicyResponse": { "base": "

        Contains the response to a successful GetPolicy request.

        ", "refs": { } }, "GetPolicyVersionRequest": { "base": null, "refs": { } }, "GetPolicyVersionResponse": { "base": "

        Contains the response to a successful GetPolicyVersion request.

        ", "refs": { } }, "GetRolePolicyRequest": { "base": null, "refs": { } }, "GetRolePolicyResponse": { "base": "

        Contains the response to a successful GetRolePolicy request.

        ", "refs": { } }, "GetRoleRequest": { "base": null, "refs": { } }, "GetRoleResponse": { "base": "

        Contains the response to a successful GetRole request.

        ", "refs": { } }, "GetSAMLProviderRequest": { "base": null, "refs": { } }, "GetSAMLProviderResponse": { "base": "

        Contains the response to a successful GetSAMLProvider request.

        ", "refs": { } }, "GetSSHPublicKeyRequest": { "base": null, "refs": { } }, "GetSSHPublicKeyResponse": { "base": "

        Contains the response to a successful GetSSHPublicKey request.

        ", "refs": { } }, "GetServerCertificateRequest": { "base": null, "refs": { } }, "GetServerCertificateResponse": { "base": "

        Contains the response to a successful GetServerCertificate request.

        ", "refs": { } }, "GetUserPolicyRequest": { "base": null, "refs": { } }, "GetUserPolicyResponse": { "base": "

        Contains the response to a successful GetUserPolicy request.

        ", "refs": { } }, "GetUserRequest": { "base": null, "refs": { } }, "GetUserResponse": { "base": "

        Contains the response to a successful GetUser request.

        ", "refs": { } }, "Group": { "base": "

        Contains information about an IAM group entity.

        This data type is used as a response element in the following actions:

        ", "refs": { "CreateGroupResponse$Group": "

        A structure containing details about the new group.

        ", "GetGroupResponse$Group": "

        A structure that contains details about the group.

        ", "groupListType$member": null } }, "GroupDetail": { "base": "

        Contains information about an IAM group, including all of the group's policies.

        This data type is used as a response element in the GetAccountAuthorizationDetails action.

        ", "refs": { "groupDetailListType$member": null } }, "InstanceProfile": { "base": "

        Contains information about an instance profile.

        This data type is used as a response element in the following actions:

        ", "refs": { "CreateInstanceProfileResponse$InstanceProfile": "

        A structure containing details about the new instance profile.

        ", "GetInstanceProfileResponse$InstanceProfile": "

        A structure containing details about the instance profile.

        ", "instanceProfileListType$member": null } }, "InvalidAuthenticationCodeException": { "base": "

        The request was rejected because the authentication code was not recognized. The error message describes the specific error.

        ", "refs": { } }, "InvalidCertificateException": { "base": "

        The request was rejected because the certificate is invalid.

        ", "refs": { } }, "InvalidInputException": { "base": "

        The request was rejected because an invalid or out-of-range value was supplied for an input parameter.

        ", "refs": { } }, "InvalidPublicKeyException": { "base": "

        The request was rejected because the public key is malformed or otherwise invalid.

        ", "refs": { } }, "InvalidUserTypeException": { "base": "

        The request was rejected because the type of user for the transaction was incorrect.

        ", "refs": { } }, "KeyPairMismatchException": { "base": "

        The request was rejected because the public key certificate and the private key do not match.

        ", "refs": { } }, "LimitExceededException": { "base": "

        The request was rejected because it attempted to create resources beyond the current AWS account limits. The error message describes the limit exceeded.

        ", "refs": { } }, "LineNumber": { "base": null, "refs": { "Position$Line": "

        The line containing the specified position in the document.

        " } }, "ListAccessKeysRequest": { "base": null, "refs": { } }, "ListAccessKeysResponse": { "base": "

        Contains the response to a successful ListAccessKeys request.

        ", "refs": { } }, "ListAccountAliasesRequest": { "base": null, "refs": { } }, "ListAccountAliasesResponse": { "base": "

        Contains the response to a successful ListAccountAliases request.

        ", "refs": { } }, "ListAttachedGroupPoliciesRequest": { "base": null, "refs": { } }, "ListAttachedGroupPoliciesResponse": { "base": "

        Contains the response to a successful ListAttachedGroupPolicies request.

        ", "refs": { } }, "ListAttachedRolePoliciesRequest": { "base": null, "refs": { } }, "ListAttachedRolePoliciesResponse": { "base": "

        Contains the response to a successful ListAttachedRolePolicies request.

        ", "refs": { } }, "ListAttachedUserPoliciesRequest": { "base": null, "refs": { } }, "ListAttachedUserPoliciesResponse": { "base": "

        Contains the response to a successful ListAttachedUserPolicies request.

        ", "refs": { } }, "ListEntitiesForPolicyRequest": { "base": null, "refs": { } }, "ListEntitiesForPolicyResponse": { "base": "

        Contains the response to a successful ListEntitiesForPolicy request.

        ", "refs": { } }, "ListGroupPoliciesRequest": { "base": null, "refs": { } }, "ListGroupPoliciesResponse": { "base": "

        Contains the response to a successful ListGroupPolicies request.

        ", "refs": { } }, "ListGroupsForUserRequest": { "base": null, "refs": { } }, "ListGroupsForUserResponse": { "base": "

        Contains the response to a successful ListGroupsForUser request.

        ", "refs": { } }, "ListGroupsRequest": { "base": null, "refs": { } }, "ListGroupsResponse": { "base": "

        Contains the response to a successful ListGroups request.

        ", "refs": { } }, "ListInstanceProfilesForRoleRequest": { "base": null, "refs": { } }, "ListInstanceProfilesForRoleResponse": { "base": "

        Contains the response to a successful ListInstanceProfilesForRole request.

        ", "refs": { } }, "ListInstanceProfilesRequest": { "base": null, "refs": { } }, "ListInstanceProfilesResponse": { "base": "

        Contains the response to a successful ListInstanceProfiles request.

        ", "refs": { } }, "ListMFADevicesRequest": { "base": null, "refs": { } }, "ListMFADevicesResponse": { "base": "

        Contains the response to a successful ListMFADevices request.

        ", "refs": { } }, "ListOpenIDConnectProvidersRequest": { "base": null, "refs": { } }, "ListOpenIDConnectProvidersResponse": { "base": "

        Contains the response to a successful ListOpenIDConnectProviders request.

        ", "refs": { } }, "ListPoliciesRequest": { "base": null, "refs": { } }, "ListPoliciesResponse": { "base": "

        Contains the response to a successful ListPolicies request.

        ", "refs": { } }, "ListPolicyVersionsRequest": { "base": null, "refs": { } }, "ListPolicyVersionsResponse": { "base": "

        Contains the response to a successful ListPolicyVersions request.

        ", "refs": { } }, "ListRolePoliciesRequest": { "base": null, "refs": { } }, "ListRolePoliciesResponse": { "base": "

        Contains the response to a successful ListRolePolicies request.

        ", "refs": { } }, "ListRolesRequest": { "base": null, "refs": { } }, "ListRolesResponse": { "base": "

        Contains the response to a successful ListRoles request.

        ", "refs": { } }, "ListSAMLProvidersRequest": { "base": null, "refs": { } }, "ListSAMLProvidersResponse": { "base": "

        Contains the response to a successful ListSAMLProviders request.

        ", "refs": { } }, "ListSSHPublicKeysRequest": { "base": null, "refs": { } }, "ListSSHPublicKeysResponse": { "base": "

        Contains the response to a successful ListSSHPublicKeys request.

        ", "refs": { } }, "ListServerCertificatesRequest": { "base": null, "refs": { } }, "ListServerCertificatesResponse": { "base": "

        Contains the response to a successful ListServerCertificates request.

        ", "refs": { } }, "ListSigningCertificatesRequest": { "base": null, "refs": { } }, "ListSigningCertificatesResponse": { "base": "

        Contains the response to a successful ListSigningCertificates request.

        ", "refs": { } }, "ListUserPoliciesRequest": { "base": null, "refs": { } }, "ListUserPoliciesResponse": { "base": "

        Contains the response to a successful ListUserPolicies request.

        ", "refs": { } }, "ListUsersRequest": { "base": null, "refs": { } }, "ListUsersResponse": { "base": "

        Contains the response to a successful ListUsers request.

        ", "refs": { } }, "ListVirtualMFADevicesRequest": { "base": null, "refs": { } }, "ListVirtualMFADevicesResponse": { "base": "

        Contains the response to a successful ListVirtualMFADevices request.

        ", "refs": { } }, "LoginProfile": { "base": "

        Contains the user name and password create date for a user.

        This data type is used as a response element in the CreateLoginProfile and GetLoginProfile actions.

        ", "refs": { "CreateLoginProfileResponse$LoginProfile": "

        A structure containing the user name and password create date.

        ", "GetLoginProfileResponse$LoginProfile": "

        A structure containing the user name and password create date for the user.

        " } }, "MFADevice": { "base": "

        Contains information about an MFA device.

        This data type is used as a response element in the ListMFADevices action.

        ", "refs": { "mfaDeviceListType$member": null } }, "MalformedCertificateException": { "base": "

        The request was rejected because the certificate was malformed or expired. The error message describes the specific error.

        ", "refs": { } }, "MalformedPolicyDocumentException": { "base": "

        The request was rejected because the policy document was malformed. The error message describes the specific error.

        ", "refs": { } }, "ManagedPolicyDetail": { "base": "

        Contains information about a managed policy, including the policy's ARN, versions, and the number of principal entities (users, groups, and roles) that the policy is attached to.

        This data type is used as a response element in the GetAccountAuthorizationDetails action.

        For more information about managed policies, see Managed Policies and Inline Policies in the Using IAM guide.

        ", "refs": { "ManagedPolicyDetailListType$member": null } }, "ManagedPolicyDetailListType": { "base": null, "refs": { "GetAccountAuthorizationDetailsResponse$Policies": "

        A list containing information about managed policies.

        " } }, "NoSuchEntityException": { "base": "

        The request was rejected because it referenced an entity that does not exist. The error message describes the entity.

        ", "refs": { } }, "OpenIDConnectProviderListEntry": { "base": "

        Contains the Amazon Resource Name (ARN) for an IAM OpenID Connect provider.

        ", "refs": { "OpenIDConnectProviderListType$member": null } }, "OpenIDConnectProviderListType": { "base": "

        Contains a list of IAM OpenID Connect providers.

        ", "refs": { "ListOpenIDConnectProvidersResponse$OpenIDConnectProviderList": "

        The list of IAM OIDC provider resource objects defined in the AWS account.

        " } }, "OpenIDConnectProviderUrlType": { "base": "

        Contains a URL that specifies the endpoint for an OpenID Connect provider.

        ", "refs": { "CreateOpenIDConnectProviderRequest$Url": "

        The URL of the identity provider. The URL must begin with \"https://\" and should correspond to the iss claim in the provider's OpenID Connect ID tokens. Per the OIDC standard, path components are allowed but query parameters are not. Typically the URL consists of only a host name, like \"https://server.example.org\" or \"https://example.com\".

        You cannot register the same provider multiple times in a single AWS account. If you try to submit a URL that has already been used for an OpenID Connect provider in the AWS account, you will get an error.

        ", "GetOpenIDConnectProviderResponse$Url": "

        The URL that the IAM OIDC provider resource object is associated with. For more information, see CreateOpenIDConnectProvider.

        " } }, "PasswordPolicy": { "base": "

        Contains information about the account password policy.

        This data type is used as a response element in the GetAccountPasswordPolicy action.

        ", "refs": { "GetAccountPasswordPolicyResponse$PasswordPolicy": null } }, "PasswordPolicyViolationException": { "base": "

        The request was rejected because the provided password did not meet the requirements imposed by the account password policy.

        ", "refs": { } }, "Policy": { "base": "

        Contains information about a managed policy.

        This data type is used as a response element in the CreatePolicy, GetPolicy, and ListPolicies actions.

        For more information about managed policies, refer to Managed Policies and Inline Policies in the Using IAM guide.

        ", "refs": { "CreatePolicyResponse$Policy": "

        A structure containing details about the new policy.

        ", "GetPolicyResponse$Policy": "

        A structure containing details about the policy.

        ", "policyListType$member": null } }, "PolicyDetail": { "base": "

        Contains information about an IAM policy, including the policy document.

        This data type is used as a response element in the GetAccountAuthorizationDetails action.

        ", "refs": { "policyDetailListType$member": null } }, "PolicyEvaluationDecisionType": { "base": null, "refs": { "EvalDecisionDetailsType$value": null, "EvaluationResult$EvalDecision": "

        The result of the simulation.

        ", "ResourceSpecificResult$EvalResourceDecision": "

        The result of the simulation of the simulated API action on the resource specified in EvalResourceName.

        " } }, "PolicyEvaluationException": { "base": "

        The request failed because a provided policy could not be successfully evaluated. An additional detail message indicates the source of the failure.

        ", "refs": { } }, "PolicyGroup": { "base": "

        Contains information about a group that a managed policy is attached to.

        This data type is used as a response element in the ListEntitiesForPolicy action.

        For more information about managed policies, refer to Managed Policies and Inline Policies in the Using IAM guide.

        ", "refs": { "PolicyGroupListType$member": null } }, "PolicyGroupListType": { "base": null, "refs": { "ListEntitiesForPolicyResponse$PolicyGroups": "

        A list of IAM groups that the policy is attached to.

        " } }, "PolicyIdentifierType": { "base": null, "refs": { "Statement$SourcePolicyId": "

        The identifier of the policy that was provided as an input.

        " } }, "PolicyRole": { "base": "

        Contains information about a role that a managed policy is attached to.

        This data type is used as a response element in the ListEntitiesForPolicy action.

        For more information about managed policies, refer to Managed Policies and Inline Policies in the Using IAM guide.

        ", "refs": { "PolicyRoleListType$member": null } }, "PolicyRoleListType": { "base": null, "refs": { "ListEntitiesForPolicyResponse$PolicyRoles": "

        A list of IAM roles that the policy is attached to.

        " } }, "PolicySourceType": { "base": null, "refs": { "Statement$SourcePolicyType": "

        The type of the policy.

        " } }, "PolicyUser": { "base": "

        Contains information about a user that a managed policy is attached to.

        This data type is used as a response element in the ListEntitiesForPolicy action.

        For more information about managed policies, refer to Managed Policies and Inline Policies in the Using IAM guide.

        ", "refs": { "PolicyUserListType$member": null } }, "PolicyUserListType": { "base": null, "refs": { "ListEntitiesForPolicyResponse$PolicyUsers": "

        A list of IAM users that the policy is attached to.

        " } }, "PolicyVersion": { "base": "

        Contains information about a version of a managed policy.

        This data type is used as a response element in the CreatePolicyVersion, GetPolicyVersion, ListPolicyVersions, and GetAccountAuthorizationDetails actions.

        For more information about managed policies, refer to Managed Policies and Inline Policies in the Using IAM guide.

        ", "refs": { "CreatePolicyVersionResponse$PolicyVersion": "

        A structure containing details about the new policy version.

        ", "GetPolicyVersionResponse$PolicyVersion": "

        A structure containing details about the policy version.

        ", "policyDocumentVersionListType$member": null } }, "Position": { "base": "

        Contains the row and column of a location of a Statement element in a policy document.

        This data type is used as a member of the Statement type.

        ", "refs": { "Statement$StartPosition": "

        The row and column of the beginning of the Statement in an IAM policy.

        ", "Statement$EndPosition": "

        The row and column of the end of a Statement in an IAM policy.

        " } }, "PutGroupPolicyRequest": { "base": null, "refs": { } }, "PutRolePolicyRequest": { "base": null, "refs": { } }, "PutUserPolicyRequest": { "base": null, "refs": { } }, "RemoveClientIDFromOpenIDConnectProviderRequest": { "base": null, "refs": { } }, "RemoveRoleFromInstanceProfileRequest": { "base": null, "refs": { } }, "RemoveUserFromGroupRequest": { "base": null, "refs": { } }, "ReportContentType": { "base": null, "refs": { "GetCredentialReportResponse$Content": "

        Contains the credential report. The report is Base64-encoded.

        " } }, "ReportFormatType": { "base": null, "refs": { "GetCredentialReportResponse$ReportFormat": "

        The format (MIME type) of the credential report.

        " } }, "ReportStateDescriptionType": { "base": null, "refs": { "GenerateCredentialReportResponse$Description": "

        Information about the credential report.

        " } }, "ReportStateType": { "base": null, "refs": { "GenerateCredentialReportResponse$State": "

        Information about the state of the credential report.

        " } }, "ResourceHandlingOptionType": { "base": null, "refs": { "SimulateCustomPolicyRequest$ResourceHandlingOption": "

        Specifies the type of simulation to run. Different APIs that support resource-based policies require different combinations of resources. By specifying the type of simulation to run, you enable the policy simulator to enforce the presence of the required resources to ensure reliable simulation results. If your simulation does not match one of the following scenarios, then you can omit this parameter. The following list shows each of the supported scenario values and the resources that you must define to run the simulation.

        Each of the EC2 scenarios requires that you specify instance, image, and security-group resources. If your scenario includes an EBS volume, then you must specify that volume as a resource. If the EC2 scenario includes VPC, then you must supply the network-interface resource. If it includes an IP subnet, then you must specify the subnet resource. For more information on the EC2 scenario options, see Supported Platforms in the AWS EC2 User Guide.

        • EC2-Classic-InstanceStore

          instance, image, security-group

        • EC2-Classic-EBS

          instance, image, security-group, volume

        • EC2-VPC-InstanceStore

          instance, image, security-group, network-interface

        • EC2-VPC-InstanceStore-Subnet

          instance, image, security-group, network-interface, subnet

        • EC2-VPC-EBS

          instance, image, security-group, network-interface, volume

        • EC2-VPC-EBS-Subnet

          instance, image, security-group, network-interface, subnet, volume

        ", "SimulatePrincipalPolicyRequest$ResourceHandlingOption": "

        Specifies the type of simulation to run. Different APIs that support resource-based policies require different combinations of resources. By specifying the type of simulation to run, you enable the policy simulator to enforce the presence of the required resources to ensure reliable simulation results. If your simulation does not match one of the following scenarios, then you can omit this parameter. The following list shows each of the supported scenario values and the resources that you must define to run the simulation.

        Each of the EC2 scenarios requires that you specify instance, image, and security-group resources. If your scenario includes an EBS volume, then you must specify that volume as a resource. If the EC2 scenario includes VPC, then you must supply the network-interface resource. If it includes an IP subnet, then you must specify the subnet resource. For more information on the EC2 scenario options, see Supported Platforms in the AWS EC2 User Guide.

        • EC2-Classic-InstanceStore

          instance, image, security-group

        • EC2-Classic-EBS

          instance, image, security-group, volume

        • EC2-VPC-InstanceStore

          instance, image, security-group, network-interface

        • EC2-VPC-InstanceStore-Subnet

          instance, image, security-group, network-interface, subnet

        • EC2-VPC-EBS

          instance, image, security-group, network-interface, volume

        • EC2-VPC-EBS-Subnet

          instance, image, security-group, network-interface, subnet, volume

        " } }, "ResourceNameListType": { "base": null, "refs": { "SimulateCustomPolicyRequest$ResourceArns": "

        A list of ARNs of AWS resources to include in the simulation. If this parameter is not provided then the value defaults to * (all resources). Each API in the ActionNames parameter is evaluated for each resource in this list. The simulation determines the access result (allowed or denied) of each combination and reports it in the response.

        The simulation does not automatically retrieve policies for the specified resources. If you want to include a resource policy in the simulation, then you must include the policy as a string in the ResourcePolicy parameter.

        If you include a ResourcePolicy, then it must be applicable to all of the resources included in the simulation or you receive an invalid input error.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "SimulatePrincipalPolicyRequest$ResourceArns": "

        A list of ARNs of AWS resources to include in the simulation. If this parameter is not provided then the value defaults to * (all resources). Each API in the ActionNames parameter is evaluated for each resource in this list. The simulation determines the access result (allowed or denied) of each combination and reports it in the response.

        The simulation does not automatically retrieve policies for the specified resources. If you want to include a resource policy in the simulation, then you must include the policy as a string in the ResourcePolicy parameter.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        " } }, "ResourceNameType": { "base": null, "refs": { "EvaluationResult$EvalResourceName": "

        The ARN of the resource that the indicated API action was tested on.

        ", "ResourceNameListType$member": null, "ResourceSpecificResult$EvalResourceName": "

        The name of the simulated resource, in Amazon Resource Name (ARN) format.

        ", "SimulateCustomPolicyRequest$ResourceOwner": "

        An AWS account ID that specifies the owner of any simulated resource that does not identify its owner in the resource ARN, such as an S3 bucket or object. If ResourceOwner is specified, it is also used as the account owner of any ResourcePolicy included in the simulation. If the ResourceOwner parameter is not specified, then the owner of the resources and the resource policy defaults to the account of the identity provided in CallerArn. This parameter is required only if you specify a resource-based policy and account that owns the resource is different from the account that owns the simulated calling user CallerArn.

        ", "SimulateCustomPolicyRequest$CallerArn": "

        The ARN of the IAM user that you want to use as the simulated caller of the APIs. CallerArn is required if you include a ResourcePolicy so that the policy's Principal element has a value to use in evaluating the policy.

        You can specify only the ARN of an IAM user. You cannot specify the ARN of an assumed role, federated user, or a service principal.

        ", "SimulatePrincipalPolicyRequest$ResourceOwner": "

        An AWS account ID that specifies the owner of any simulated resource that does not identify its owner in the resource ARN, such as an S3 bucket or object. If ResourceOwner is specified, it is also used as the account owner of any ResourcePolicy included in the simulation. If the ResourceOwner parameter is not specified, then the owner of the resources and the resource policy defaults to the account of the identity provided in CallerArn. This parameter is required only if you specify a resource-based policy and account that owns the resource is different from the account that owns the simulated calling user CallerArn.

        ", "SimulatePrincipalPolicyRequest$CallerArn": "

        The ARN of the IAM user that you want to specify as the simulated caller of the APIs. If you do not specify a CallerArn, it defaults to the ARN of the user that you specify in PolicySourceArn, if you specified a user. If you include both a PolicySourceArn (for example, arn:aws:iam::123456789012:user/David) and a CallerArn (for example, arn:aws:iam::123456789012:user/Bob), the result is that you simulate calling the APIs as Bob, as if Bob had David's policies.

        You can specify only the ARN of an IAM user. You cannot specify the ARN of an assumed role, federated user, or a service principal.

        CallerArn is required if you include a ResourcePolicy and the PolicySourceArn is not the ARN for an IAM user. This is required so that the resource-based policy's Principal element has a value to use in evaluating the policy.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        " } }, "ResourceSpecificResult": { "base": "

        Contains the result of the simulation of a single API action call on a single resource.

        This data type is used by a member of the EvaluationResult data type.

        ", "refs": { "ResourceSpecificResultListType$member": null } }, "ResourceSpecificResultListType": { "base": null, "refs": { "EvaluationResult$ResourceSpecificResults": "

        The individual results of the simulation of the API action specified in EvalActionName on each resource.

        " } }, "ResyncMFADeviceRequest": { "base": null, "refs": { } }, "Role": { "base": "

        Contains information about an IAM role.

        This data type is used as a response element in the following actions:

        ", "refs": { "CreateRoleResponse$Role": "

        A structure containing details about the new role.

        ", "GetRoleResponse$Role": "

        A structure containing details about the IAM role.

        ", "roleListType$member": null } }, "RoleDetail": { "base": "

        Contains information about an IAM role, including all of the role's policies.

        This data type is used as a response element in the GetAccountAuthorizationDetails action.

        ", "refs": { "roleDetailListType$member": null } }, "SAMLMetadataDocumentType": { "base": null, "refs": { "CreateSAMLProviderRequest$SAMLMetadataDocument": "

        An XML document generated by an identity provider (IdP) that supports SAML 2.0. The document includes the issuer's name, expiration information, and keys that can be used to validate the SAML authentication response (assertions) that are received from the IdP. You must generate the metadata document using the identity management software that is used as your organization's IdP.

        For more information, see About SAML 2.0-based Federation in the IAM User Guide

        ", "GetSAMLProviderResponse$SAMLMetadataDocument": "

        The XML metadata document that includes information about an identity provider.

        ", "UpdateSAMLProviderRequest$SAMLMetadataDocument": "

        An XML document generated by an identity provider (IdP) that supports SAML 2.0. The document includes the issuer's name, expiration information, and keys that can be used to validate the SAML authentication response (assertions) that are received from the IdP. You must generate the metadata document using the identity management software that is used as your organization's IdP.

        " } }, "SAMLProviderListEntry": { "base": "

        Contains the list of SAML providers for this account.

        ", "refs": { "SAMLProviderListType$member": null } }, "SAMLProviderListType": { "base": null, "refs": { "ListSAMLProvidersResponse$SAMLProviderList": "

        The list of SAML provider resource objects defined in IAM for this AWS account.

        " } }, "SAMLProviderNameType": { "base": null, "refs": { "CreateSAMLProviderRequest$Name": "

        The name of the provider to create.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        " } }, "SSHPublicKey": { "base": "

        Contains information about an SSH public key.

        This data type is used as a response element in the GetSSHPublicKey and UploadSSHPublicKey actions.

        ", "refs": { "GetSSHPublicKeyResponse$SSHPublicKey": "

        A structure containing details about the SSH public key.

        ", "UploadSSHPublicKeyResponse$SSHPublicKey": "

        Contains information about the SSH public key.

        " } }, "SSHPublicKeyListType": { "base": null, "refs": { "ListSSHPublicKeysResponse$SSHPublicKeys": "

        A list of the SSH public keys assigned to IAM user.

        " } }, "SSHPublicKeyMetadata": { "base": "

        Contains information about an SSH public key, without the key's body or fingerprint.

        This data type is used as a response element in the ListSSHPublicKeys action.

        ", "refs": { "SSHPublicKeyListType$member": null } }, "ServerCertificate": { "base": "

        Contains information about a server certificate.

        This data type is used as a response element in the GetServerCertificate action.

        ", "refs": { "GetServerCertificateResponse$ServerCertificate": "

        A structure containing details about the server certificate.

        " } }, "ServerCertificateMetadata": { "base": "

        Contains information about a server certificate without its certificate body, certificate chain, and private key.

        This data type is used as a response element in the UploadServerCertificate and ListServerCertificates actions.

        ", "refs": { "ServerCertificate$ServerCertificateMetadata": "

        The meta information of the server certificate, such as its name, path, ID, and ARN.

        ", "UploadServerCertificateResponse$ServerCertificateMetadata": "

        The meta information of the uploaded server certificate without its certificate body, certificate chain, and private key.

        ", "serverCertificateMetadataListType$member": null } }, "ServiceFailureException": { "base": "

        The request processing has failed because of an unknown error, exception or failure.

        ", "refs": { } }, "SetDefaultPolicyVersionRequest": { "base": null, "refs": { } }, "SigningCertificate": { "base": "

        Contains information about an X.509 signing certificate.

        This data type is used as a response element in the UploadSigningCertificate and ListSigningCertificates actions.

        ", "refs": { "UploadSigningCertificateResponse$Certificate": "

        Information about the certificate.

        ", "certificateListType$member": null } }, "SimulateCustomPolicyRequest": { "base": null, "refs": { } }, "SimulatePolicyResponse": { "base": "

        Contains the response to a successful SimulatePrincipalPolicy or SimulateCustomPolicy request.

        ", "refs": { } }, "SimulatePrincipalPolicyRequest": { "base": null, "refs": { } }, "SimulationPolicyListType": { "base": null, "refs": { "GetContextKeysForCustomPolicyRequest$PolicyInputList": "

        A list of policies for which you want the list of context keys referenced in those policies. Each document is specified as a string containing the complete, valid JSON text of an IAM policy.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D).

        ", "GetContextKeysForPrincipalPolicyRequest$PolicyInputList": "

        An optional list of additional policies for which you want the list of context keys that are referenced.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D).

        ", "SimulateCustomPolicyRequest$PolicyInputList": "

        A list of policy documents to include in the simulation. Each document is specified as a string containing the complete, valid JSON text of an IAM policy. Do not include any resource-based policies in this parameter. Any resource-based policy must be submitted with the ResourcePolicy parameter. The policies cannot be \"scope-down\" policies, such as you could include in a call to GetFederationToken or one of the AssumeRole APIs to restrict what a user can do while using the temporary credentials.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D).

        ", "SimulatePrincipalPolicyRequest$PolicyInputList": "

        An optional list of additional policy documents to include in the simulation. Each document is specified as a string containing the complete, valid JSON text of an IAM policy.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D).

        " } }, "Statement": { "base": "

        Contains a reference to a Statement element in a policy document that determines the result of the simulation.

        This data type is used by the MatchedStatements member of the EvaluationResult type.

        ", "refs": { "StatementListType$member": null } }, "StatementListType": { "base": null, "refs": { "EvaluationResult$MatchedStatements": "

        A list of the statements in the input policies that determine the result for this scenario. Remember that even if multiple statements allow the action on the resource, if only one statement denies that action, then the explicit deny overrides any allow, and the deny statement is the only entry included in the result.

        ", "ResourceSpecificResult$MatchedStatements": "

        A list of the statements in the input policies that determine the result for this part of the simulation. Remember that even if multiple statements allow the action on the resource, if any statement denies that action, then the explicit deny overrides any allow, and the deny statement is the only entry included in the result.

        " } }, "UnrecognizedPublicKeyEncodingException": { "base": "

        The request was rejected because the public key encoding format is unsupported or unrecognized.

        ", "refs": { } }, "UpdateAccessKeyRequest": { "base": null, "refs": { } }, "UpdateAccountPasswordPolicyRequest": { "base": null, "refs": { } }, "UpdateAssumeRolePolicyRequest": { "base": null, "refs": { } }, "UpdateGroupRequest": { "base": null, "refs": { } }, "UpdateLoginProfileRequest": { "base": null, "refs": { } }, "UpdateOpenIDConnectProviderThumbprintRequest": { "base": null, "refs": { } }, "UpdateSAMLProviderRequest": { "base": null, "refs": { } }, "UpdateSAMLProviderResponse": { "base": "

        Contains the response to a successful UpdateSAMLProvider request.

        ", "refs": { } }, "UpdateSSHPublicKeyRequest": { "base": null, "refs": { } }, "UpdateServerCertificateRequest": { "base": null, "refs": { } }, "UpdateSigningCertificateRequest": { "base": null, "refs": { } }, "UpdateUserRequest": { "base": null, "refs": { } }, "UploadSSHPublicKeyRequest": { "base": null, "refs": { } }, "UploadSSHPublicKeyResponse": { "base": "

        Contains the response to a successful UploadSSHPublicKey request.

        ", "refs": { } }, "UploadServerCertificateRequest": { "base": null, "refs": { } }, "UploadServerCertificateResponse": { "base": "

        Contains the response to a successful UploadServerCertificate request.

        ", "refs": { } }, "UploadSigningCertificateRequest": { "base": null, "refs": { } }, "UploadSigningCertificateResponse": { "base": "

        Contains the response to a successful UploadSigningCertificate request.

        ", "refs": { } }, "User": { "base": "

        Contains information about an IAM user entity.

        This data type is used as a response element in the following actions:

        ", "refs": { "CreateUserResponse$User": "

        A structure with details about the new IAM user.

        ", "GetUserResponse$User": "

        A structure containing details about the IAM user.

        ", "VirtualMFADevice$User": null, "userListType$member": null } }, "UserDetail": { "base": "

        Contains information about an IAM user, including all the user's policies and all the IAM groups the user is in.

        This data type is used as a response element in the GetAccountAuthorizationDetails action.

        ", "refs": { "userDetailListType$member": null } }, "VirtualMFADevice": { "base": "

        Contains information about a virtual MFA device.

        ", "refs": { "CreateVirtualMFADeviceResponse$VirtualMFADevice": "

        A structure containing details about the new virtual MFA device.

        ", "virtualMFADeviceListType$member": null } }, "accessKeyIdType": { "base": null, "refs": { "AccessKey$AccessKeyId": "

        The ID for this access key.

        ", "AccessKeyMetadata$AccessKeyId": "

        The ID for this access key.

        ", "DeleteAccessKeyRequest$AccessKeyId": "

        The access key ID for the access key ID and secret access key you want to delete.

        The regex pattern for this parameter is a string of characters that can consist of any upper or lowercased letter or digit.

        ", "GetAccessKeyLastUsedRequest$AccessKeyId": "

        The identifier of an access key.

        The regex pattern for this parameter is a string of characters that can consist of any upper or lowercased letter or digit.

        ", "UpdateAccessKeyRequest$AccessKeyId": "

        The access key ID of the secret access key you want to update.

        The regex pattern for this parameter is a string of characters that can consist of any upper or lowercased letter or digit.

        " } }, "accessKeyMetadataListType": { "base": "

        Contains a list of access key metadata.

        This data type is used as a response element in the ListAccessKeys action.

        ", "refs": { "ListAccessKeysResponse$AccessKeyMetadata": "

        A list of objects containing metadata about the access keys.

        " } }, "accessKeySecretType": { "base": null, "refs": { "AccessKey$SecretAccessKey": "

        The secret key used to sign requests.

        " } }, "accountAliasListType": { "base": null, "refs": { "ListAccountAliasesResponse$AccountAliases": "

        A list of aliases associated with the account. AWS supports only one alias per account.

        " } }, "accountAliasType": { "base": null, "refs": { "CreateAccountAliasRequest$AccountAlias": "

        The account alias to create.

        The regex pattern for this parameter is a string of characters consisting of lowercase letters, digits, and dashes. You cannot start or finish with a dash, nor can you have two dashes in a row.

        ", "DeleteAccountAliasRequest$AccountAlias": "

        The name of the account alias to delete.

        The regex pattern for this parameter is a string of characters consisting of lowercase letters, digits, and dashes. You cannot start or finish with a dash, nor can you have two dashes in a row.

        ", "accountAliasListType$member": null } }, "arnType": { "base": "

        The Amazon Resource Name (ARN). ARNs are unique identifiers for AWS resources.

        For more information about ARNs, go to Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "refs": { "AddClientIDToOpenIDConnectProviderRequest$OpenIDConnectProviderArn": "

        The Amazon Resource Name (ARN) of the IAM OpenID Connect (OIDC) provider resource to add the client ID to. You can get a list of OIDC provider ARNs by using the ListOpenIDConnectProviders action.

        ", "AttachGroupPolicyRequest$PolicyArn": "

        The Amazon Resource Name (ARN) of the IAM policy you want to attach.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "AttachRolePolicyRequest$PolicyArn": "

        The Amazon Resource Name (ARN) of the IAM policy you want to attach.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "AttachUserPolicyRequest$PolicyArn": "

        The Amazon Resource Name (ARN) of the IAM policy you want to attach.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "AttachedPolicy$PolicyArn": null, "CreateOpenIDConnectProviderResponse$OpenIDConnectProviderArn": "

        The Amazon Resource Name (ARN) of the new IAM OpenID Connect provider that is created. For more information, see OpenIDConnectProviderListEntry.

        ", "CreatePolicyVersionRequest$PolicyArn": "

        The Amazon Resource Name (ARN) of the IAM policy to which you want to add a new version.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "CreateSAMLProviderResponse$SAMLProviderArn": "

        The Amazon Resource Name (ARN) of the new SAML provider resource in IAM.

        ", "DeleteOpenIDConnectProviderRequest$OpenIDConnectProviderArn": "

        The Amazon Resource Name (ARN) of the IAM OpenID Connect provider resource object to delete. You can get a list of OpenID Connect provider resource ARNs by using the ListOpenIDConnectProviders action.

        ", "DeletePolicyRequest$PolicyArn": "

        The Amazon Resource Name (ARN) of the IAM policy you want to delete.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "DeletePolicyVersionRequest$PolicyArn": "

        The Amazon Resource Name (ARN) of the IAM policy from which you want to delete a version.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "DeleteSAMLProviderRequest$SAMLProviderArn": "

        The Amazon Resource Name (ARN) of the SAML provider to delete.

        ", "DetachGroupPolicyRequest$PolicyArn": "

        The Amazon Resource Name (ARN) of the IAM policy you want to detach.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "DetachRolePolicyRequest$PolicyArn": "

        The Amazon Resource Name (ARN) of the IAM policy you want to detach.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "DetachUserPolicyRequest$PolicyArn": "

        The Amazon Resource Name (ARN) of the IAM policy you want to detach.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "GetContextKeysForPrincipalPolicyRequest$PolicySourceArn": "

        The ARN of a user, group, or role whose policies contain the context keys that you want listed. If you specify a user, the list includes context keys that are found in all policies attached to the user as well as to all groups that the user is a member of. If you pick a group or a role, then it includes only those context keys that are found in policies attached to that entity. Note that all parameters are shown in unencoded form here for clarity, but must be URL encoded to be included as a part of a real HTML request.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "GetOpenIDConnectProviderRequest$OpenIDConnectProviderArn": "

        The Amazon Resource Name (ARN) of the OIDC provider resource object in IAM to get information for. You can get a list of OIDC provider resource ARNs by using the ListOpenIDConnectProviders action.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "GetPolicyRequest$PolicyArn": "

        The Amazon Resource Name (ARN) of the managed policy that you want information about.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "GetPolicyVersionRequest$PolicyArn": "

        The Amazon Resource Name (ARN) of the managed policy that you want information about.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "GetSAMLProviderRequest$SAMLProviderArn": "

        The Amazon Resource Name (ARN) of the SAML provider resource object in IAM to get information about.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "Group$Arn": "

        The Amazon Resource Name (ARN) specifying the group. For more information about ARNs and how to use them in policies, see IAM Identifiers in the Using IAM guide.

        ", "GroupDetail$Arn": null, "InstanceProfile$Arn": "

        The Amazon Resource Name (ARN) specifying the instance profile. For more information about ARNs and how to use them in policies, see IAM Identifiers in the Using IAM guide.

        ", "ListEntitiesForPolicyRequest$PolicyArn": "

        The Amazon Resource Name (ARN) of the IAM policy for which you want the versions.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "ListPolicyVersionsRequest$PolicyArn": "

        The Amazon Resource Name (ARN) of the IAM policy for which you want the versions.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "ManagedPolicyDetail$Arn": null, "OpenIDConnectProviderListEntry$Arn": null, "Policy$Arn": null, "RemoveClientIDFromOpenIDConnectProviderRequest$OpenIDConnectProviderArn": "

        The Amazon Resource Name (ARN) of the IAM OIDC provider resource to remove the client ID from. You can get a list of OIDC provider ARNs by using the ListOpenIDConnectProviders action.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "Role$Arn": "

        The Amazon Resource Name (ARN) specifying the role. For more information about ARNs and how to use them in policies, see IAM Identifiers in the Using IAM guide.

        ", "RoleDetail$Arn": null, "SAMLProviderListEntry$Arn": "

        The Amazon Resource Name (ARN) of the SAML provider.

        ", "ServerCertificateMetadata$Arn": "

        The Amazon Resource Name (ARN) specifying the server certificate. For more information about ARNs and how to use them in policies, see IAM Identifiers in the Using IAM guide.

        ", "SetDefaultPolicyVersionRequest$PolicyArn": "

        The Amazon Resource Name (ARN) of the IAM policy whose default version you want to set.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "SimulatePrincipalPolicyRequest$PolicySourceArn": "

        The Amazon Resource Name (ARN) of a user, group, or role whose policies you want to include in the simulation. If you specify a user, group, or role, the simulation includes all policies that are associated with that entity. If you specify a user, the simulation also includes all policies that are attached to any groups the user belongs to.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "UpdateOpenIDConnectProviderThumbprintRequest$OpenIDConnectProviderArn": "

        The Amazon Resource Name (ARN) of the IAM OIDC provider resource object for which you want to update the thumbprint. You can get a list of OIDC provider ARNs by using the ListOpenIDConnectProviders action.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "UpdateSAMLProviderRequest$SAMLProviderArn": "

        The Amazon Resource Name (ARN) of the SAML provider to update.

        For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

        ", "UpdateSAMLProviderResponse$SAMLProviderArn": "

        The Amazon Resource Name (ARN) of the SAML provider that was updated.

        ", "User$Arn": "

        The Amazon Resource Name (ARN) that identifies the user. For more information about ARNs and how to use ARNs in policies, see IAM Identifiers in the Using IAM guide.

        ", "UserDetail$Arn": null } }, "assignmentStatusType": { "base": null, "refs": { "ListVirtualMFADevicesRequest$AssignmentStatus": "

        The status (Unassigned or Assigned) of the devices to list. If you do not specify an AssignmentStatus, the action defaults to Any which lists both assigned and unassigned virtual MFA devices.

        " } }, "attachedPoliciesListType": { "base": null, "refs": { "GroupDetail$AttachedManagedPolicies": "

        A list of the managed policies attached to the group.

        ", "ListAttachedGroupPoliciesResponse$AttachedPolicies": "

        A list of the attached policies.

        ", "ListAttachedRolePoliciesResponse$AttachedPolicies": "

        A list of the attached policies.

        ", "ListAttachedUserPoliciesResponse$AttachedPolicies": "

        A list of the attached policies.

        ", "RoleDetail$AttachedManagedPolicies": "

        A list of managed policies attached to the role. These policies are the role's access (permissions) policies.

        ", "UserDetail$AttachedManagedPolicies": "

        A list of the managed policies attached to the user.

        " } }, "attachmentCountType": { "base": null, "refs": { "ManagedPolicyDetail$AttachmentCount": "

        The number of principal entities (users, groups, and roles) that the policy is attached to.

        ", "Policy$AttachmentCount": "

        The number of entities (users, groups, and roles) that the policy is attached to.

        " } }, "authenticationCodeType": { "base": null, "refs": { "EnableMFADeviceRequest$AuthenticationCode1": "

        An authentication code emitted by the device.

        The format for this parameter is a string of 6 digits.

        ", "EnableMFADeviceRequest$AuthenticationCode2": "

        A subsequent authentication code emitted by the device.

        The format for this parameter is a string of 6 digits.

        ", "ResyncMFADeviceRequest$AuthenticationCode1": "

        An authentication code emitted by the device.

        The format for this parameter is a sequence of six digits.

        ", "ResyncMFADeviceRequest$AuthenticationCode2": "

        A subsequent authentication code emitted by the device.

        The format for this parameter is a sequence of six digits.

        " } }, "booleanObjectType": { "base": null, "refs": { "PasswordPolicy$HardExpiry": "

        Specifies whether IAM users are prevented from setting a new password after their password has expired.

        ", "UpdateAccountPasswordPolicyRequest$HardExpiry": "

        Prevents IAM users from setting a new password after their password has expired.

        Default value: false

        ", "UpdateLoginProfileRequest$PasswordResetRequired": "

        Allows this new password to be used only once by requiring the specified IAM user to set a new password on next sign-in.

        " } }, "booleanType": { "base": null, "refs": { "CreateLoginProfileRequest$PasswordResetRequired": "

        Specifies whether the user is required to set a new password on next sign-in.

        ", "CreatePolicyVersionRequest$SetAsDefault": "

        Specifies whether to set this version as the policy's default version.

        When this parameter is true, the new policy version becomes the operative version; that is, the version that is in effect for the IAM users, groups, and roles that the policy is attached to.

        For more information about managed policy versions, see Versioning for Managed Policies in the IAM User Guide.

        ", "GetAccountAuthorizationDetailsResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "GetGroupResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListAccessKeysResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListAccountAliasesResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListAttachedGroupPoliciesResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListAttachedRolePoliciesResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListAttachedUserPoliciesResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListEntitiesForPolicyResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListGroupPoliciesResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListGroupsForUserResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListGroupsResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListInstanceProfilesForRoleResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListInstanceProfilesResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListMFADevicesResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListPoliciesRequest$OnlyAttached": "

        A flag to filter the results to only the attached policies.

        When OnlyAttached is true, the returned list contains only the policies that are attached to an IAM user, group, or role. When OnlyAttached is false, or when the parameter is not included, all policies are returned.

        ", "ListPoliciesResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListPolicyVersionsResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListRolePoliciesResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListRolesResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListSSHPublicKeysResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListServerCertificatesResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListSigningCertificatesResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListUserPoliciesResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListUsersResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "ListVirtualMFADevicesResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "LoginProfile$PasswordResetRequired": "

        Specifies whether the user is required to set a new password on next sign-in.

        ", "ManagedPolicyDetail$IsAttachable": "

        Specifies whether the policy can be attached to an IAM user, group, or role.

        ", "PasswordPolicy$RequireSymbols": "

        Specifies whether to require symbols for IAM user passwords.

        ", "PasswordPolicy$RequireNumbers": "

        Specifies whether to require numbers for IAM user passwords.

        ", "PasswordPolicy$RequireUppercaseCharacters": "

        Specifies whether to require uppercase characters for IAM user passwords.

        ", "PasswordPolicy$RequireLowercaseCharacters": "

        Specifies whether to require lowercase characters for IAM user passwords.

        ", "PasswordPolicy$AllowUsersToChangePassword": "

        Specifies whether IAM users are allowed to change their own password.

        ", "PasswordPolicy$ExpirePasswords": "

        Indicates whether passwords in the account expire. Returns true if MaxPasswordAge is contains a value greater than 0. Returns false if MaxPasswordAge is 0 or not present.

        ", "Policy$IsAttachable": "

        Specifies whether the policy can be attached to an IAM user, group, or role.

        ", "PolicyVersion$IsDefaultVersion": "

        Specifies whether the policy version is set as the policy's default version.

        ", "SimulatePolicyResponse$IsTruncated": "

        A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all of your results.

        ", "UpdateAccountPasswordPolicyRequest$RequireSymbols": "

        Specifies whether IAM user passwords must contain at least one of the following non-alphanumeric characters:

        ! @ # $ % ^ &amp; * ( ) _ + - = [ ] { } | '

        Default value: false

        ", "UpdateAccountPasswordPolicyRequest$RequireNumbers": "

        Specifies whether IAM user passwords must contain at least one numeric character (0 to 9).

        Default value: false

        ", "UpdateAccountPasswordPolicyRequest$RequireUppercaseCharacters": "

        Specifies whether IAM user passwords must contain at least one uppercase character from the ISO basic Latin alphabet (A to Z).

        Default value: false

        ", "UpdateAccountPasswordPolicyRequest$RequireLowercaseCharacters": "

        Specifies whether IAM user passwords must contain at least one lowercase character from the ISO basic Latin alphabet (a to z).

        Default value: false

        ", "UpdateAccountPasswordPolicyRequest$AllowUsersToChangePassword": "

        Allows all IAM users in your account to use the AWS Management Console to change their own passwords. For more information, see Letting IAM Users Change Their Own Passwords in the IAM User Guide.

        Default value: false

        " } }, "certificateBodyType": { "base": null, "refs": { "ServerCertificate$CertificateBody": "

        The contents of the public key certificate.

        ", "SigningCertificate$CertificateBody": "

        The contents of the signing certificate.

        ", "UploadServerCertificateRequest$CertificateBody": "

        The contents of the public key certificate in PEM-encoded format.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D).

        ", "UploadSigningCertificateRequest$CertificateBody": "

        The contents of the signing certificate.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D).

        " } }, "certificateChainType": { "base": null, "refs": { "ServerCertificate$CertificateChain": "

        The contents of the public key certificate chain.

        ", "UploadServerCertificateRequest$CertificateChain": "

        The contents of the certificate chain. This is typically a concatenation of the PEM-encoded public key certificates of the chain.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D).

        " } }, "certificateIdType": { "base": null, "refs": { "DeleteSigningCertificateRequest$CertificateId": "

        The ID of the signing certificate to delete.

        The format of this parameter, as described by its regex pattern, is a string of characters that can be upper- or lower-cased letters or digits.

        ", "SigningCertificate$CertificateId": "

        The ID for the signing certificate.

        ", "UpdateSigningCertificateRequest$CertificateId": "

        The ID of the signing certificate you want to update.

        The regex pattern for this parameter is a string of characters that can consist of any upper or lowercased letter or digit.

        " } }, "certificateListType": { "base": "

        Contains a list of signing certificates.

        This data type is used as a response element in the ListSigningCertificates action.

        ", "refs": { "ListSigningCertificatesResponse$Certificates": "

        A list of the user's signing certificate information.

        " } }, "clientIDListType": { "base": null, "refs": { "CreateOpenIDConnectProviderRequest$ClientIDList": "

        A list of client IDs (also known as audiences). When a mobile or web app registers with an OpenID Connect provider, they establish a value that identifies the application. (This is the value that's sent as the client_id parameter on OAuth requests.)

        You can register multiple client IDs with the same provider. For example, you might have multiple applications that use the same OIDC provider. You cannot register more than 100 client IDs with a single IAM OIDC provider.

        There is no defined format for a client ID. The CreateOpenIDConnectProviderRequest action accepts client IDs up to 255 characters long.

        ", "GetOpenIDConnectProviderResponse$ClientIDList": "

        A list of client IDs (also known as audiences) that are associated with the specified IAM OIDC provider resource object. For more information, see CreateOpenIDConnectProvider.

        " } }, "clientIDType": { "base": null, "refs": { "AddClientIDToOpenIDConnectProviderRequest$ClientID": "

        The client ID (also known as audience) to add to the IAM OpenID Connect provider resource.

        ", "RemoveClientIDFromOpenIDConnectProviderRequest$ClientID": "

        The client ID (also known as audience) to remove from the IAM OIDC provider resource. For more information about client IDs, see CreateOpenIDConnectProvider.

        ", "clientIDListType$member": null } }, "credentialReportExpiredExceptionMessage": { "base": null, "refs": { "CredentialReportExpiredException$message": null } }, "credentialReportNotPresentExceptionMessage": { "base": null, "refs": { "CredentialReportNotPresentException$message": null } }, "credentialReportNotReadyExceptionMessage": { "base": null, "refs": { "CredentialReportNotReadyException$message": null } }, "dateType": { "base": null, "refs": { "AccessKey$CreateDate": "

        The date when the access key was created.

        ", "AccessKeyLastUsed$LastUsedDate": "

        The date and time, in ISO 8601 date-time format, when the access key was most recently used. This field is null when:

        • The user does not have an access key.

        • An access key exists but has never been used, at least not since IAM started tracking this information on April 22nd, 2015.

        • There is no sign-in data associated with the user

        ", "AccessKeyMetadata$CreateDate": "

        The date when the access key was created.

        ", "GetCredentialReportResponse$GeneratedTime": "

        The date and time when the credential report was created, in ISO 8601 date-time format.

        ", "GetOpenIDConnectProviderResponse$CreateDate": "

        The date and time when the IAM OIDC provider resource object was created in the AWS account.

        ", "GetSAMLProviderResponse$CreateDate": "

        The date and time when the SAML provider was created.

        ", "GetSAMLProviderResponse$ValidUntil": "

        The expiration date and time for the SAML provider.

        ", "Group$CreateDate": "

        The date and time, in ISO 8601 date-time format, when the group was created.

        ", "GroupDetail$CreateDate": "

        The date and time, in ISO 8601 date-time format, when the group was created.

        ", "InstanceProfile$CreateDate": "

        The date when the instance profile was created.

        ", "LoginProfile$CreateDate": "

        The date when the password for the user was created.

        ", "MFADevice$EnableDate": "

        The date when the MFA device was enabled for the user.

        ", "ManagedPolicyDetail$CreateDate": "

        The date and time, in ISO 8601 date-time format, when the policy was created.

        ", "ManagedPolicyDetail$UpdateDate": "

        The date and time, in ISO 8601 date-time format, when the policy was last updated.

        When a policy has only one version, this field contains the date and time when the policy was created. When a policy has more than one version, this field contains the date and time when the most recent policy version was created.

        ", "Policy$CreateDate": "

        The date and time, in ISO 8601 date-time format, when the policy was created.

        ", "Policy$UpdateDate": "

        The date and time, in ISO 8601 date-time format, when the policy was last updated.

        When a policy has only one version, this field contains the date and time when the policy was created. When a policy has more than one version, this field contains the date and time when the most recent policy version was created.

        ", "PolicyVersion$CreateDate": "

        The date and time, in ISO 8601 date-time format, when the policy version was created.

        ", "Role$CreateDate": "

        The date and time, in ISO 8601 date-time format, when the role was created.

        ", "RoleDetail$CreateDate": "

        The date and time, in ISO 8601 date-time format, when the role was created.

        ", "SAMLProviderListEntry$ValidUntil": "

        The expiration date and time for the SAML provider.

        ", "SAMLProviderListEntry$CreateDate": "

        The date and time when the SAML provider was created.

        ", "SSHPublicKey$UploadDate": "

        The date and time, in ISO 8601 date-time format, when the SSH public key was uploaded.

        ", "SSHPublicKeyMetadata$UploadDate": "

        The date and time, in ISO 8601 date-time format, when the SSH public key was uploaded.

        ", "ServerCertificateMetadata$UploadDate": "

        The date when the server certificate was uploaded.

        ", "ServerCertificateMetadata$Expiration": "

        The date on which the certificate is set to expire.

        ", "SigningCertificate$UploadDate": "

        The date when the signing certificate was uploaded.

        ", "User$CreateDate": "

        The date and time, in ISO 8601 date-time format, when the user was created.

        ", "User$PasswordLastUsed": "

        The date and time, in ISO 8601 date-time format, when the user's password was last used to sign in to an AWS website. For a list of AWS websites that capture a user's last sign-in time, see the Credential Reports topic in the Using IAM guide. If a password is used more than once in a five-minute span, only the first use is returned in this field. This field is null (not present) when:

        • The user does not have a password

        • The password exists but has never been used (at least not since IAM started tracking this information on October 20th, 2014

        • there is no sign-in data associated with the user

        This value is returned only in the GetUser and ListUsers actions.

        ", "UserDetail$CreateDate": "

        The date and time, in ISO 8601 date-time format, when the user was created.

        ", "VirtualMFADevice$EnableDate": "

        The date and time on which the virtual MFA device was enabled.

        " } }, "deleteConflictMessage": { "base": null, "refs": { "DeleteConflictException$message": null } }, "duplicateCertificateMessage": { "base": null, "refs": { "DuplicateCertificateException$message": null } }, "duplicateSSHPublicKeyMessage": { "base": null, "refs": { "DuplicateSSHPublicKeyException$message": null } }, "encodingType": { "base": null, "refs": { "GetSSHPublicKeyRequest$Encoding": "

        Specifies the public key encoding format to use in the response. To retrieve the public key in ssh-rsa format, use SSH. To retrieve the public key in PEM format, use PEM.

        " } }, "entityAlreadyExistsMessage": { "base": null, "refs": { "EntityAlreadyExistsException$message": null } }, "entityListType": { "base": null, "refs": { "GetAccountAuthorizationDetailsRequest$Filter": "

        A list of entity types used to filter the results. Only the entities that match the types you specify are included in the output. Use the value LocalManagedPolicy to include customer managed policies.

        The format for this parameter is a comma-separated (if more than one) list of strings. Each string value in the list must be one of the valid values listed below.

        " } }, "entityTemporarilyUnmodifiableMessage": { "base": null, "refs": { "EntityTemporarilyUnmodifiableException$message": null } }, "existingUserNameType": { "base": null, "refs": { "AddUserToGroupRequest$UserName": "

        The name of the user to add.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "CreateAccessKeyRequest$UserName": "

        The name of the IAM user that the new key will belong to.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "DeactivateMFADeviceRequest$UserName": "

        The name of the user whose MFA device you want to deactivate.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "DeleteAccessKeyRequest$UserName": "

        The name of the user whose access key pair you want to delete.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "DeleteSigningCertificateRequest$UserName": "

        The name of the user the signing certificate belongs to.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "DeleteUserPolicyRequest$UserName": "

        The name (friendly name, not ARN) identifying the user that the policy is embedded in.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "DeleteUserRequest$UserName": "

        The name of the user to delete.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "EnableMFADeviceRequest$UserName": "

        The name of the IAM user for whom you want to enable the MFA device.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "GetAccessKeyLastUsedResponse$UserName": "

        The name of the AWS IAM user that owns this access key.

        ", "GetUserPolicyRequest$UserName": "

        The name of the user who the policy is associated with.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "GetUserPolicyResponse$UserName": "

        The user the policy is associated with.

        ", "GetUserRequest$UserName": "

        The name of the user to get information about.

        This parameter is optional. If it is not included, it defaults to the user making the request. The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "ListAccessKeysRequest$UserName": "

        The name of the user.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "ListGroupsForUserRequest$UserName": "

        The name of the user to list groups for.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "ListMFADevicesRequest$UserName": "

        The name of the user whose MFA devices you want to list.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "ListSigningCertificatesRequest$UserName": "

        The name of the IAM user whose signing certificates you want to examine.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "ListUserPoliciesRequest$UserName": "

        The name of the user to list policies for.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "PutUserPolicyRequest$UserName": "

        The name of the user to associate the policy with.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "RemoveUserFromGroupRequest$UserName": "

        The name of the user to remove.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "ResyncMFADeviceRequest$UserName": "

        The name of the user whose MFA device you want to resynchronize.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "UpdateAccessKeyRequest$UserName": "

        The name of the user whose key you want to update.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "UpdateSigningCertificateRequest$UserName": "

        The name of the IAM user the signing certificate belongs to.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "UpdateUserRequest$UserName": "

        Name of the user to update. If you're changing the name of the user, this is the original user name.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "UploadSigningCertificateRequest$UserName": "

        The name of the user the signing certificate is for.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        " } }, "groupDetailListType": { "base": null, "refs": { "GetAccountAuthorizationDetailsResponse$GroupDetailList": "

        A list containing information about IAM groups.

        " } }, "groupListType": { "base": "

        Contains a list of IAM groups.

        This data type is used as a response element in the ListGroups action.

        ", "refs": { "ListGroupsForUserResponse$Groups": "

        A list of groups.

        ", "ListGroupsResponse$Groups": "

        A list of groups.

        " } }, "groupNameListType": { "base": null, "refs": { "UserDetail$GroupList": "

        A list of IAM groups that the user is in.

        " } }, "groupNameType": { "base": null, "refs": { "AddUserToGroupRequest$GroupName": "

        The name of the group to update.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "AttachGroupPolicyRequest$GroupName": "

        The name (friendly name, not ARN) of the group to attach the policy to.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "CreateGroupRequest$GroupName": "

        The name of the group to create. Do not include the path in this value.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-. The group name must be unique within the account. Group names are not distinguished by case. For example, you cannot create groups named both \"ADMINS\" and \"admins\".

        ", "DeleteGroupPolicyRequest$GroupName": "

        The name (friendly name, not ARN) identifying the group that the policy is embedded in.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "DeleteGroupRequest$GroupName": "

        The name of the IAM group to delete.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "DetachGroupPolicyRequest$GroupName": "

        The name (friendly name, not ARN) of the IAM group to detach the policy from.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "GetGroupPolicyRequest$GroupName": "

        The name of the group the policy is associated with.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "GetGroupPolicyResponse$GroupName": "

        The group the policy is associated with.

        ", "GetGroupRequest$GroupName": "

        The name of the group.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "Group$GroupName": "

        The friendly name that identifies the group.

        ", "GroupDetail$GroupName": "

        The friendly name that identifies the group.

        ", "ListAttachedGroupPoliciesRequest$GroupName": "

        The name (friendly name, not ARN) of the group to list attached policies for.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "ListGroupPoliciesRequest$GroupName": "

        The name of the group to list policies for.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "PolicyGroup$GroupName": "

        The name (friendly name, not ARN) identifying the group.

        ", "PutGroupPolicyRequest$GroupName": "

        The name of the group to associate the policy with.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "RemoveUserFromGroupRequest$GroupName": "

        The name of the group to update.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "UpdateGroupRequest$GroupName": "

        Name of the IAM group to update. If you're changing the name of the group, this is the original name.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "UpdateGroupRequest$NewGroupName": "

        New name for the IAM group. Only include this if changing the group's name.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "groupNameListType$member": null } }, "idType": { "base": null, "refs": { "Group$GroupId": "

        The stable and unique string identifying the group. For more information about IDs, see IAM Identifiers in the Using IAM guide.

        ", "GroupDetail$GroupId": "

        The stable and unique string identifying the group. For more information about IDs, see IAM Identifiers in the Using IAM guide.

        ", "InstanceProfile$InstanceProfileId": "

        The stable and unique string identifying the instance profile. For more information about IDs, see IAM Identifiers in the Using IAM guide.

        ", "ManagedPolicyDetail$PolicyId": "

        The stable and unique string identifying the policy.

        For more information about IDs, see IAM Identifiers in the Using IAM guide.

        ", "Policy$PolicyId": "

        The stable and unique string identifying the policy.

        For more information about IDs, see IAM Identifiers in the Using IAM guide.

        ", "PolicyGroup$GroupId": "

        The stable and unique string identifying the group. For more information about IDs, see IAM Identifiers in the IAM User Guide.

        ", "PolicyRole$RoleId": "

        The stable and unique string identifying the role. For more information about IDs, see IAM Identifiers in the IAM User Guide.

        ", "PolicyUser$UserId": "

        The stable and unique string identifying the user. For more information about IDs, see IAM Identifiers in the IAM User Guide.

        ", "Role$RoleId": "

        The stable and unique string identifying the role. For more information about IDs, see IAM Identifiers in the Using IAM guide.

        ", "RoleDetail$RoleId": "

        The stable and unique string identifying the role. For more information about IDs, see IAM Identifiers in the Using IAM guide.

        ", "ServerCertificateMetadata$ServerCertificateId": "

        The stable and unique string identifying the server certificate. For more information about IDs, see IAM Identifiers in the Using IAM guide.

        ", "User$UserId": "

        The stable and unique string identifying the user. For more information about IDs, see IAM Identifiers in the Using IAM guide.

        ", "UserDetail$UserId": "

        The stable and unique string identifying the user. For more information about IDs, see IAM Identifiers in the Using IAM guide.

        " } }, "instanceProfileListType": { "base": "

        Contains a list of instance profiles.

        ", "refs": { "ListInstanceProfilesForRoleResponse$InstanceProfiles": "

        A list of instance profiles.

        ", "ListInstanceProfilesResponse$InstanceProfiles": "

        A list of instance profiles.

        ", "RoleDetail$InstanceProfileList": null } }, "instanceProfileNameType": { "base": null, "refs": { "AddRoleToInstanceProfileRequest$InstanceProfileName": "

        The name of the instance profile to update.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "CreateInstanceProfileRequest$InstanceProfileName": "

        The name of the instance profile to create.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "DeleteInstanceProfileRequest$InstanceProfileName": "

        The name of the instance profile to delete.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "GetInstanceProfileRequest$InstanceProfileName": "

        The name of the instance profile to get information about.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "InstanceProfile$InstanceProfileName": "

        The name identifying the instance profile.

        ", "RemoveRoleFromInstanceProfileRequest$InstanceProfileName": "

        The name of the instance profile to update.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        " } }, "invalidAuthenticationCodeMessage": { "base": null, "refs": { "InvalidAuthenticationCodeException$message": null } }, "invalidCertificateMessage": { "base": null, "refs": { "InvalidCertificateException$message": null } }, "invalidInputMessage": { "base": null, "refs": { "InvalidInputException$message": null } }, "invalidPublicKeyMessage": { "base": null, "refs": { "InvalidPublicKeyException$message": null } }, "invalidUserTypeMessage": { "base": null, "refs": { "InvalidUserTypeException$message": null } }, "keyPairMismatchMessage": { "base": null, "refs": { "KeyPairMismatchException$message": null } }, "limitExceededMessage": { "base": null, "refs": { "LimitExceededException$message": null } }, "malformedCertificateMessage": { "base": null, "refs": { "MalformedCertificateException$message": null } }, "malformedPolicyDocumentMessage": { "base": null, "refs": { "MalformedPolicyDocumentException$message": null } }, "markerType": { "base": null, "refs": { "GetAccountAuthorizationDetailsRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "GetAccountAuthorizationDetailsResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "GetGroupRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "GetGroupResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListAccessKeysRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListAccessKeysResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListAccountAliasesRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListAccountAliasesResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListAttachedGroupPoliciesRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListAttachedGroupPoliciesResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListAttachedRolePoliciesRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListAttachedRolePoliciesResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListAttachedUserPoliciesRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListAttachedUserPoliciesResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListEntitiesForPolicyRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListEntitiesForPolicyResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListGroupPoliciesRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListGroupPoliciesResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListGroupsForUserRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListGroupsForUserResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListGroupsRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListGroupsResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListInstanceProfilesForRoleRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListInstanceProfilesForRoleResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListInstanceProfilesRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListInstanceProfilesResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListMFADevicesRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListMFADevicesResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListPoliciesRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListPoliciesResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListPolicyVersionsRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListPolicyVersionsResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListRolePoliciesRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListRolePoliciesResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListRolesRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListRolesResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListSSHPublicKeysRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListSSHPublicKeysResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListServerCertificatesRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListServerCertificatesResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListSigningCertificatesRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListSigningCertificatesResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListUserPoliciesRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListUserPoliciesResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListUsersRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListUsersResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListVirtualMFADevicesRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "ListVirtualMFADevicesResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "SimulateCustomPolicyRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        ", "SimulatePolicyResponse$Marker": "

        When IsTruncated is true, this element is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "SimulatePrincipalPolicyRequest$Marker": "

        Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker element in the response that you received to indicate where the next call should start.

        " } }, "maxItemsType": { "base": null, "refs": { "GetAccountAuthorizationDetailsRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "GetGroupRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListAccessKeysRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListAccountAliasesRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListAttachedGroupPoliciesRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListAttachedRolePoliciesRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListAttachedUserPoliciesRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListEntitiesForPolicyRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListGroupPoliciesRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListGroupsForUserRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListGroupsRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListInstanceProfilesForRoleRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListInstanceProfilesRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListMFADevicesRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListPoliciesRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListPolicyVersionsRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListRolePoliciesRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListRolesRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListSSHPublicKeysRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListServerCertificatesRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListSigningCertificatesRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListUserPoliciesRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListUsersRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "ListVirtualMFADevicesRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "SimulateCustomPolicyRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        ", "SimulatePrincipalPolicyRequest$MaxItems": "

        Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.

        This parameter is optional. If you do not include it, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the IsTruncated response element returns true and Marker contains a value to include in the subsequent call that tells the service where to continue from.

        " } }, "maxPasswordAgeType": { "base": null, "refs": { "PasswordPolicy$MaxPasswordAge": "

        The number of days that an IAM user password is valid.

        ", "UpdateAccountPasswordPolicyRequest$MaxPasswordAge": "

        The number of days that an IAM user password is valid. The default value of 0 means IAM user passwords never expire.

        Default value: 0

        " } }, "mfaDeviceListType": { "base": "

        Contains a list of MFA devices.

        This data type is used as a response element in the ListMFADevices and ListVirtualMFADevices actions.

        ", "refs": { "ListMFADevicesResponse$MFADevices": "

        A list of MFA devices.

        " } }, "minimumPasswordLengthType": { "base": null, "refs": { "PasswordPolicy$MinimumPasswordLength": "

        Minimum length to require for IAM user passwords.

        ", "UpdateAccountPasswordPolicyRequest$MinimumPasswordLength": "

        The minimum number of characters allowed in an IAM user password.

        Default value: 6

        " } }, "noSuchEntityMessage": { "base": null, "refs": { "NoSuchEntityException$message": null } }, "passwordPolicyViolationMessage": { "base": null, "refs": { "PasswordPolicyViolationException$message": null } }, "passwordReusePreventionType": { "base": null, "refs": { "PasswordPolicy$PasswordReusePrevention": "

        Specifies the number of previous passwords that IAM users are prevented from reusing.

        ", "UpdateAccountPasswordPolicyRequest$PasswordReusePrevention": "

        Specifies the number of previous passwords that IAM users are prevented from reusing. The default value of 0 means IAM users are not prevented from reusing previous passwords.

        Default value: 0

        " } }, "passwordType": { "base": null, "refs": { "ChangePasswordRequest$OldPassword": "

        The IAM user's current password.

        ", "ChangePasswordRequest$NewPassword": "

        The new password. The new password must conform to the AWS account's password policy, if one exists.

        The regex pattern for this parameter is a string of characters consisting of almost any printable ASCII character from the space (\\u0020) through the end of the ASCII character range (\\u00FF). You can also include the tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D) characters. Although any of these characters are valid in a password, note that many tools, such as the AWS Management Console, might restrict the ability to enter certain characters because they have special meaning within that tool.

        ", "CreateLoginProfileRequest$Password": "

        The new password for the user.

        The regex pattern for this parameter is a string of characters consisting of almost any printable ASCII character from the space (\\u0020) through the end of the ASCII character range (\\u00FF). You can also include the tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D) characters. Although any of these characters are valid in a password, note that many tools, such as the AWS Management Console, might restrict the ability to enter certain characters because they have special meaning within that tool.

        ", "UpdateLoginProfileRequest$Password": "

        The new password for the specified IAM user.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D). However, the format can be further restricted by the account administrator by setting a password policy on the AWS account. For more information, see UpdateAccountPasswordPolicy.

        " } }, "pathPrefixType": { "base": null, "refs": { "ListGroupsRequest$PathPrefix": "

        The path prefix for filtering the results. For example, the prefix /division_abc/subdivision_xyz/ gets all groups whose path starts with /division_abc/subdivision_xyz/.

        This parameter is optional. If it is not included, it defaults to a slash (/), listing all groups. The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        ", "ListInstanceProfilesRequest$PathPrefix": "

        The path prefix for filtering the results. For example, the prefix /application_abc/component_xyz/ gets all instance profiles whose path starts with /application_abc/component_xyz/.

        This parameter is optional. If it is not included, it defaults to a slash (/), listing all instance profiles. The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        ", "ListRolesRequest$PathPrefix": "

        The path prefix for filtering the results. For example, the prefix /application_abc/component_xyz/ gets all roles whose path starts with /application_abc/component_xyz/.

        This parameter is optional. If it is not included, it defaults to a slash (/), listing all roles. The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        ", "ListServerCertificatesRequest$PathPrefix": "

        The path prefix for filtering the results. For example: /company/servercerts would get all server certificates for which the path starts with /company/servercerts.

        This parameter is optional. If it is not included, it defaults to a slash (/), listing all server certificates. The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        ", "ListUsersRequest$PathPrefix": "

        The path prefix for filtering the results. For example: /division_abc/subdivision_xyz/, which would get all user names whose path starts with /division_abc/subdivision_xyz/.

        This parameter is optional. If it is not included, it defaults to a slash (/), listing all user names. The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        " } }, "pathType": { "base": null, "refs": { "CreateGroupRequest$Path": "

        The path to the group. For more information about paths, see IAM Identifiers in the IAM User Guide.

        This parameter is optional. If it is not included, it defaults to a slash (/).

        The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        ", "CreateInstanceProfileRequest$Path": "

        The path to the instance profile. For more information about paths, see IAM Identifiers in the IAM User Guide.

        This parameter is optional. If it is not included, it defaults to a slash (/).

        The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        ", "CreateRoleRequest$Path": "

        The path to the role. For more information about paths, see IAM Identifiers in the IAM User Guide.

        This parameter is optional. If it is not included, it defaults to a slash (/).

        The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        ", "CreateUserRequest$Path": "

        The path for the user name. For more information about paths, see IAM Identifiers in the IAM User Guide.

        This parameter is optional. If it is not included, it defaults to a slash (/).

        The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        ", "CreateVirtualMFADeviceRequest$Path": "

        The path for the virtual MFA device. For more information about paths, see IAM Identifiers in the IAM User Guide.

        This parameter is optional. If it is not included, it defaults to a slash (/).

        The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        ", "Group$Path": "

        The path to the group. For more information about paths, see IAM Identifiers in the Using IAM guide.

        ", "GroupDetail$Path": "

        The path to the group. For more information about paths, see IAM Identifiers in the Using IAM guide.

        ", "InstanceProfile$Path": "

        The path to the instance profile. For more information about paths, see IAM Identifiers in the Using IAM guide.

        ", "ListEntitiesForPolicyRequest$PathPrefix": "

        The path prefix for filtering the results. This parameter is optional. If it is not included, it defaults to a slash (/), listing all entities.

        The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        ", "Role$Path": "

        The path to the role. For more information about paths, see IAM Identifiers in the Using IAM guide.

        ", "RoleDetail$Path": "

        The path to the role. For more information about paths, see IAM Identifiers in the Using IAM guide.

        ", "ServerCertificateMetadata$Path": "

        The path to the server certificate. For more information about paths, see IAM Identifiers in the Using IAM guide.

        ", "UpdateGroupRequest$NewPath": "

        New path for the IAM group. Only include this if changing the group's path.

        The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        ", "UpdateServerCertificateRequest$NewPath": "

        The new path for the server certificate. Include this only if you are updating the server certificate's path.

        The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        ", "UpdateUserRequest$NewPath": "

        New path for the IAM user. Include this parameter only if you're changing the user's path.

        The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        ", "UploadServerCertificateRequest$Path": "

        The path for the server certificate. For more information about paths, see IAM Identifiers in the IAM User Guide.

        This parameter is optional. If it is not included, it defaults to a slash (/). The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        If you are uploading a server certificate specifically for use with Amazon CloudFront distributions, you must specify a path using the --path option. The path must begin with /cloudfront and must include a trailing slash (for example, /cloudfront/test/).

        ", "User$Path": "

        The path to the user. For more information about paths, see IAM Identifiers in the Using IAM guide.

        ", "UserDetail$Path": "

        The path to the user. For more information about paths, see IAM Identifiers in the Using IAM guide.

        " } }, "policyDescriptionType": { "base": null, "refs": { "CreatePolicyRequest$Description": "

        A friendly description of the policy.

        Typically used to store information about the permissions defined in the policy. For example, \"Grants access to production DynamoDB tables.\"

        The policy description is immutable. After a value is assigned, it cannot be changed.

        ", "ManagedPolicyDetail$Description": "

        A friendly description of the policy.

        ", "Policy$Description": "

        A friendly description of the policy.

        This element is included in the response to the GetPolicy operation. It is not included in the response to the ListPolicies operation.

        " } }, "policyDetailListType": { "base": null, "refs": { "GroupDetail$GroupPolicyList": "

        A list of the inline policies embedded in the group.

        ", "RoleDetail$RolePolicyList": "

        A list of inline policies embedded in the role. These policies are the role's access (permissions) policies.

        ", "UserDetail$UserPolicyList": "

        A list of the inline policies embedded in the user.

        " } }, "policyDocumentType": { "base": null, "refs": { "CreatePolicyRequest$PolicyDocument": "

        The JSON policy document that you want to use as the content for the new policy.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D).

        ", "CreatePolicyVersionRequest$PolicyDocument": "

        The JSON policy document that you want to use as the content for this new version of the policy.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D).

        ", "CreateRoleRequest$AssumeRolePolicyDocument": "

        The trust relationship policy document that grants an entity permission to assume the role.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D).

        ", "GetGroupPolicyResponse$PolicyDocument": "

        The policy document.

        ", "GetRolePolicyResponse$PolicyDocument": "

        The policy document.

        ", "GetUserPolicyResponse$PolicyDocument": "

        The policy document.

        ", "PolicyDetail$PolicyDocument": "

        The policy document.

        ", "PolicyVersion$Document": "

        The policy document.

        The policy document is returned in the response to the GetPolicyVersion and GetAccountAuthorizationDetails operations. It is not returned in the response to the CreatePolicyVersion or ListPolicyVersions operations.

        ", "PutGroupPolicyRequest$PolicyDocument": "

        The policy document.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D).

        ", "PutRolePolicyRequest$PolicyDocument": "

        The policy document.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D).

        ", "PutUserPolicyRequest$PolicyDocument": "

        The policy document.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D).

        ", "Role$AssumeRolePolicyDocument": "

        The policy that grants an entity permission to assume the role.

        ", "RoleDetail$AssumeRolePolicyDocument": "

        The trust policy that grants permission to assume the role.

        ", "SimulateCustomPolicyRequest$ResourcePolicy": "

        A resource-based policy to include in the simulation provided as a string. Each resource in the simulation is treated as if it had this policy attached. You can include only one resource-based policy in a simulation.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D).

        ", "SimulatePrincipalPolicyRequest$ResourcePolicy": "

        A resource-based policy to include in the simulation provided as a string. Each resource in the simulation is treated as if it had this policy attached. You can include only one resource-based policy in a simulation.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D).

        ", "SimulationPolicyListType$member": null, "UpdateAssumeRolePolicyRequest$PolicyDocument": "

        The policy that grants an entity permission to assume the role.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D).

        " } }, "policyDocumentVersionListType": { "base": null, "refs": { "ListPolicyVersionsResponse$Versions": "

        A list of policy versions.

        For more information about managed policy versions, see Versioning for Managed Policies in the IAM User Guide.

        ", "ManagedPolicyDetail$PolicyVersionList": "

        A list containing information about the versions of the policy.

        " } }, "policyEvaluationErrorMessage": { "base": null, "refs": { "PolicyEvaluationException$message": null } }, "policyListType": { "base": null, "refs": { "ListPoliciesResponse$Policies": "

        A list of policies.

        " } }, "policyNameListType": { "base": "

        Contains a list of policy names.

        This data type is used as a response element in the ListPolicies action.

        ", "refs": { "ListGroupPoliciesResponse$PolicyNames": "

        A list of policy names.

        ", "ListRolePoliciesResponse$PolicyNames": "

        A list of policy names.

        ", "ListUserPoliciesResponse$PolicyNames": "

        A list of policy names.

        " } }, "policyNameType": { "base": null, "refs": { "AttachedPolicy$PolicyName": "

        The friendly name of the attached policy.

        ", "CreatePolicyRequest$PolicyName": "

        The friendly name of the policy.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "DeleteGroupPolicyRequest$PolicyName": "

        The name identifying the policy document to delete.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "DeleteRolePolicyRequest$PolicyName": "

        The name of the inline policy to delete from the specified IAM role.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "DeleteUserPolicyRequest$PolicyName": "

        The name identifying the policy document to delete.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "GetGroupPolicyRequest$PolicyName": "

        The name of the policy document to get.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "GetGroupPolicyResponse$PolicyName": "

        The name of the policy.

        ", "GetRolePolicyRequest$PolicyName": "

        The name of the policy document to get.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "GetRolePolicyResponse$PolicyName": "

        The name of the policy.

        ", "GetUserPolicyRequest$PolicyName": "

        The name of the policy document to get.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "GetUserPolicyResponse$PolicyName": "

        The name of the policy.

        ", "ManagedPolicyDetail$PolicyName": "

        The friendly name (not ARN) identifying the policy.

        ", "Policy$PolicyName": "

        The friendly name (not ARN) identifying the policy.

        ", "PolicyDetail$PolicyName": "

        The name of the policy.

        ", "PutGroupPolicyRequest$PolicyName": "

        The name of the policy document.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "PutRolePolicyRequest$PolicyName": "

        The name of the policy document.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "PutUserPolicyRequest$PolicyName": "

        The name of the policy document.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "policyNameListType$member": null } }, "policyPathType": { "base": null, "refs": { "CreatePolicyRequest$Path": "

        The path for the policy.

        For more information about paths, see IAM Identifiers in the IAM User Guide.

        This parameter is optional. If it is not included, it defaults to a slash (/).

        The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        ", "ListAttachedGroupPoliciesRequest$PathPrefix": "

        The path prefix for filtering the results. This parameter is optional. If it is not included, it defaults to a slash (/), listing all policies.

        The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        ", "ListAttachedRolePoliciesRequest$PathPrefix": "

        The path prefix for filtering the results. This parameter is optional. If it is not included, it defaults to a slash (/), listing all policies.

        The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        ", "ListAttachedUserPoliciesRequest$PathPrefix": "

        The path prefix for filtering the results. This parameter is optional. If it is not included, it defaults to a slash (/), listing all policies.

        The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        ", "ListPoliciesRequest$PathPrefix": "

        The path prefix for filtering the results. This parameter is optional. If it is not included, it defaults to a slash (/), listing all policies. The regex pattern for this parameter is a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes, containing any ASCII character from the ! (\\u0021) thru the DEL character (\\u007F), including most punctuation characters, digits, and upper and lowercased letters.

        ", "ManagedPolicyDetail$Path": "

        The path to the policy.

        For more information about paths, see IAM Identifiers in the Using IAM guide.

        ", "Policy$Path": "

        The path to the policy.

        For more information about paths, see IAM Identifiers in the Using IAM guide.

        " } }, "policyScopeType": { "base": null, "refs": { "ListPoliciesRequest$Scope": "

        The scope to use for filtering the results.

        To list only AWS managed policies, set Scope to AWS. To list only the customer managed policies in your AWS account, set Scope to Local.

        This parameter is optional. If it is not included, or if it is set to All, all policies are returned.

        " } }, "policyVersionIdType": { "base": null, "refs": { "DeletePolicyVersionRequest$VersionId": "

        The policy version to delete.

        The regex pattern for this parameter is a string of characters that consists of the lowercase letter 'v' followed by one or two digits, and optionally followed by a period '.' and a string of letters and digits.

        For more information about managed policy versions, see Versioning for Managed Policies in the IAM User Guide.

        ", "GetPolicyVersionRequest$VersionId": "

        Identifies the policy version to retrieve.

        The regex pattern for this parameter is a string of characters that consists of the lowercase letter 'v' followed by one or two digits, and optionally followed by a period '.' and a string of letters and digits.

        ", "ManagedPolicyDetail$DefaultVersionId": "

        The identifier for the version of the policy that is set as the default (operative) version.

        For more information about policy versions, see Versioning for Managed Policies in the Using IAM guide.

        ", "Policy$DefaultVersionId": "

        The identifier for the version of the policy that is set as the default version.

        ", "PolicyVersion$VersionId": "

        The identifier for the policy version.

        Policy version identifiers always begin with v (always lowercase). When a policy is created, the first policy version is v1.

        ", "SetDefaultPolicyVersionRequest$VersionId": "

        The version of the policy to set as the default (operative) version.

        For more information about managed policy versions, see Versioning for Managed Policies in the IAM User Guide.

        " } }, "privateKeyType": { "base": null, "refs": { "UploadServerCertificateRequest$PrivateKey": "

        The contents of the private key in PEM-encoded format.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D).

        " } }, "publicKeyFingerprintType": { "base": null, "refs": { "SSHPublicKey$Fingerprint": "

        The MD5 message digest of the SSH public key.

        " } }, "publicKeyIdType": { "base": null, "refs": { "DeleteSSHPublicKeyRequest$SSHPublicKeyId": "

        The unique identifier for the SSH public key.

        The regex pattern for this parameter is a string of characters that can consist of any upper or lowercased letter or digit.

        ", "GetSSHPublicKeyRequest$SSHPublicKeyId": "

        The unique identifier for the SSH public key.

        The regex pattern for this parameter is a string of characters that can consist of any upper or lowercased letter or digit.

        ", "SSHPublicKey$SSHPublicKeyId": "

        The unique identifier for the SSH public key.

        ", "SSHPublicKeyMetadata$SSHPublicKeyId": "

        The unique identifier for the SSH public key.

        ", "UpdateSSHPublicKeyRequest$SSHPublicKeyId": "

        The unique identifier for the SSH public key.

        The regex pattern for this parameter is a string of characters that can consist of any upper or lowercased letter or digit.

        " } }, "publicKeyMaterialType": { "base": null, "refs": { "SSHPublicKey$SSHPublicKeyBody": "

        The SSH public key.

        ", "UploadSSHPublicKeyRequest$SSHPublicKeyBody": "

        The SSH public key. The public key must be encoded in ssh-rsa format or PEM format.

        The regex pattern for this parameter is a string of characters consisting of any printable ASCII character ranging from the space character (\\u0020) through end of the ASCII character range (\\u00FF). It also includes the special characters tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D).

        " } }, "roleDetailListType": { "base": null, "refs": { "GetAccountAuthorizationDetailsResponse$RoleDetailList": "

        A list containing information about IAM roles.

        " } }, "roleListType": { "base": "

        Contains a list of IAM roles.

        This data type is used as a response element in the ListRoles action.

        ", "refs": { "InstanceProfile$Roles": "

        The role associated with the instance profile.

        ", "ListRolesResponse$Roles": "

        A list of roles.

        " } }, "roleNameType": { "base": null, "refs": { "AddRoleToInstanceProfileRequest$RoleName": "

        The name of the role to add.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "AttachRolePolicyRequest$RoleName": "

        The name (friendly name, not ARN) of the role to attach the policy to.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "CreateRoleRequest$RoleName": "

        The name of the role to create.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-. Role names are not distinguished by case. For example, you cannot create roles named both \"PRODROLE\" and \"prodrole\".

        ", "DeleteRolePolicyRequest$RoleName": "

        The name (friendly name, not ARN) identifying the role that the policy is embedded in.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "DeleteRoleRequest$RoleName": "

        The name of the role to delete.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "DetachRolePolicyRequest$RoleName": "

        The name (friendly name, not ARN) of the IAM role to detach the policy from.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "GetRolePolicyRequest$RoleName": "

        The name of the role associated with the policy.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "GetRolePolicyResponse$RoleName": "

        The role the policy is associated with.

        ", "GetRoleRequest$RoleName": "

        The name of the IAM role to get information about.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "ListAttachedRolePoliciesRequest$RoleName": "

        The name (friendly name, not ARN) of the role to list attached policies for.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "ListInstanceProfilesForRoleRequest$RoleName": "

        The name of the role to list instance profiles for.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "ListRolePoliciesRequest$RoleName": "

        The name of the role to list policies for.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "PolicyRole$RoleName": "

        The name (friendly name, not ARN) identifying the role.

        ", "PutRolePolicyRequest$RoleName": "

        The name of the role to associate the policy with.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "RemoveRoleFromInstanceProfileRequest$RoleName": "

        The name of the role to remove.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "Role$RoleName": "

        The friendly name that identifies the role.

        ", "RoleDetail$RoleName": "

        The friendly name that identifies the role.

        ", "UpdateAssumeRolePolicyRequest$RoleName": "

        The name of the role to update with the new policy.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        " } }, "serialNumberType": { "base": null, "refs": { "DeactivateMFADeviceRequest$SerialNumber": "

        The serial number that uniquely identifies the MFA device. For virtual MFA devices, the serial number is the device ARN.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =/:,.@-

        ", "DeleteVirtualMFADeviceRequest$SerialNumber": "

        The serial number that uniquely identifies the MFA device. For virtual MFA devices, the serial number is the same as the ARN.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =/:,.@-

        ", "EnableMFADeviceRequest$SerialNumber": "

        The serial number that uniquely identifies the MFA device. For virtual MFA devices, the serial number is the device ARN.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =/:,.@-

        ", "MFADevice$SerialNumber": "

        The serial number that uniquely identifies the MFA device. For virtual MFA devices, the serial number is the device ARN.

        ", "ResyncMFADeviceRequest$SerialNumber": "

        Serial number that uniquely identifies the MFA device.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "VirtualMFADevice$SerialNumber": "

        The serial number associated with VirtualMFADevice.

        " } }, "serverCertificateMetadataListType": { "base": null, "refs": { "ListServerCertificatesResponse$ServerCertificateMetadataList": "

        A list of server certificates.

        " } }, "serverCertificateNameType": { "base": null, "refs": { "DeleteServerCertificateRequest$ServerCertificateName": "

        The name of the server certificate you want to delete.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "GetServerCertificateRequest$ServerCertificateName": "

        The name of the server certificate you want to retrieve information about.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "ServerCertificateMetadata$ServerCertificateName": "

        The name that identifies the server certificate.

        ", "UpdateServerCertificateRequest$ServerCertificateName": "

        The name of the server certificate that you want to update.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "UpdateServerCertificateRequest$NewServerCertificateName": "

        The new name for the server certificate. Include this only if you are updating the server certificate's name. The name of the certificate cannot contain any spaces.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "UploadServerCertificateRequest$ServerCertificateName": "

        The name for the server certificate. Do not include the path in this value. The name of the certificate cannot contain any spaces.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        " } }, "serviceFailureExceptionMessage": { "base": null, "refs": { "ServiceFailureException$message": null } }, "statusType": { "base": null, "refs": { "AccessKey$Status": "

        The status of the access key. Active means the key is valid for API calls, while Inactive means it is not.

        ", "AccessKeyMetadata$Status": "

        The status of the access key. Active means the key is valid for API calls; Inactive means it is not.

        ", "SSHPublicKey$Status": "

        The status of the SSH public key. Active means the key can be used for authentication with an AWS CodeCommit repository. Inactive means the key cannot be used.

        ", "SSHPublicKeyMetadata$Status": "

        The status of the SSH public key. Active means the key can be used for authentication with an AWS CodeCommit repository. Inactive means the key cannot be used.

        ", "SigningCertificate$Status": "

        The status of the signing certificate. Active means the key is valid for API calls, while Inactive means it is not.

        ", "UpdateAccessKeyRequest$Status": "

        The status you want to assign to the secret access key. Active means the key can be used for API calls to AWS, while Inactive means the key cannot be used.

        ", "UpdateSSHPublicKeyRequest$Status": "

        The status to assign to the SSH public key. Active means the key can be used for authentication with an AWS CodeCommit repository. Inactive means the key cannot be used.

        ", "UpdateSigningCertificateRequest$Status": "

        The status you want to assign to the certificate. Active means the certificate can be used for API calls to AWS, while Inactive means the certificate cannot be used.

        " } }, "stringType": { "base": null, "refs": { "AccessKeyLastUsed$ServiceName": "

        The name of the AWS service with which this access key was most recently used. This field is null when:

        • The user does not have an access key.

        • An access key exists but has never been used, at least not since IAM started tracking this information on April 22nd, 2015.

        • There is no sign-in data associated with the user

        ", "AccessKeyLastUsed$Region": "

        The AWS region where this access key was most recently used. This field is null when:

        • The user does not have an access key.

        • An access key exists but has never been used, at least not since IAM started tracking this information on April 22nd, 2015.

        • There is no sign-in data associated with the user

        For more information about AWS regions, see Regions and Endpoints in the Amazon Web Services General Reference.

        " } }, "summaryKeyType": { "base": null, "refs": { "summaryMapType$key": null } }, "summaryMapType": { "base": null, "refs": { "GetAccountSummaryResponse$SummaryMap": "

        A set of key value pairs containing information about IAM entity usage and IAM quotas.

        " } }, "summaryValueType": { "base": null, "refs": { "summaryMapType$value": null } }, "thumbprintListType": { "base": "

        Contains a list of thumbprints of identity provider server certificates.

        ", "refs": { "CreateOpenIDConnectProviderRequest$ThumbprintList": "

        A list of server certificate thumbprints for the OpenID Connect (OIDC) identity provider's server certificate(s). Typically this list includes only one entry. However, IAM lets you have up to five thumbprints for an OIDC provider. This lets you maintain multiple thumbprints if the identity provider is rotating certificates.

        The server certificate thumbprint is the hex-encoded SHA-1 hash value of the X.509 certificate used by the domain where the OpenID Connect provider makes its keys available. It is always a 40-character string.

        You must provide at least one thumbprint when creating an IAM OIDC provider. For example, if the OIDC provider is server.example.com and the provider stores its keys at \"https://keys.server.example.com/openid-connect\", the thumbprint string would be the hex-encoded SHA-1 hash value of the certificate used by https://keys.server.example.com.

        For more information about obtaining the OIDC provider's thumbprint, see Obtaining the Thumbprint for an OpenID Connect Provider in the IAM User Guide.

        ", "GetOpenIDConnectProviderResponse$ThumbprintList": "

        A list of certificate thumbprints that are associated with the specified IAM OIDC provider resource object. For more information, see CreateOpenIDConnectProvider.

        ", "UpdateOpenIDConnectProviderThumbprintRequest$ThumbprintList": "

        A list of certificate thumbprints that are associated with the specified IAM OpenID Connect provider. For more information, see CreateOpenIDConnectProvider.

        " } }, "thumbprintType": { "base": "

        Contains a thumbprint for an identity provider's server certificate.

        The identity provider's server certificate thumbprint is the hex-encoded SHA-1 hash value of the self-signed X.509 certificate used by the domain where the OpenID Connect provider makes its keys available. It is always a 40-character string.

        ", "refs": { "thumbprintListType$member": null } }, "unrecognizedPublicKeyEncodingMessage": { "base": null, "refs": { "UnrecognizedPublicKeyEncodingException$message": null } }, "userDetailListType": { "base": null, "refs": { "GetAccountAuthorizationDetailsResponse$UserDetailList": "

        A list containing information about IAM users.

        " } }, "userListType": { "base": "

        Contains a list of users.

        This data type is used as a response element in the GetGroup and ListUsers actions.

        ", "refs": { "GetGroupResponse$Users": "

        A list of users in the group.

        ", "ListUsersResponse$Users": "

        A list of users.

        " } }, "userNameType": { "base": null, "refs": { "AccessKey$UserName": "

        The name of the IAM user that the access key is associated with.

        ", "AccessKeyMetadata$UserName": "

        The name of the IAM user that the key is associated with.

        ", "AttachUserPolicyRequest$UserName": "

        The name (friendly name, not ARN) of the IAM user to attach the policy to.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "CreateLoginProfileRequest$UserName": "

        The name of the IAM user to create a password for. The user must already exist.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "CreateUserRequest$UserName": "

        The name of the user to create.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-. User names are not distinguished by case. For example, you cannot create users named both \"TESTUSER\" and \"testuser\".

        ", "DeleteLoginProfileRequest$UserName": "

        The name of the user whose password you want to delete.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "DeleteSSHPublicKeyRequest$UserName": "

        The name of the IAM user associated with the SSH public key.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "DetachUserPolicyRequest$UserName": "

        The name (friendly name, not ARN) of the IAM user to detach the policy from.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "GetLoginProfileRequest$UserName": "

        The name of the user whose login profile you want to retrieve.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "GetSSHPublicKeyRequest$UserName": "

        The name of the IAM user associated with the SSH public key.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "ListAttachedUserPoliciesRequest$UserName": "

        The name (friendly name, not ARN) of the user to list attached policies for.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "ListSSHPublicKeysRequest$UserName": "

        The name of the IAM user to list SSH public keys for. If none is specified, the UserName field is determined implicitly based on the AWS access key used to sign the request.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "LoginProfile$UserName": "

        The name of the user, which can be used for signing in to the AWS Management Console.

        ", "MFADevice$UserName": "

        The user with whom the MFA device is associated.

        ", "PolicyUser$UserName": "

        The name (friendly name, not ARN) identifying the user.

        ", "SSHPublicKey$UserName": "

        The name of the IAM user associated with the SSH public key.

        ", "SSHPublicKeyMetadata$UserName": "

        The name of the IAM user associated with the SSH public key.

        ", "SigningCertificate$UserName": "

        The name of the user the signing certificate is associated with.

        ", "UpdateLoginProfileRequest$UserName": "

        The name of the user whose password you want to update.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "UpdateSSHPublicKeyRequest$UserName": "

        The name of the IAM user associated with the SSH public key.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "UpdateUserRequest$NewUserName": "

        New name for the user. Include this parameter only if you're changing the user's name.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "UploadSSHPublicKeyRequest$UserName": "

        The name of the IAM user to associate the SSH public key with.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        ", "User$UserName": "

        The friendly name identifying the user.

        ", "UserDetail$UserName": "

        The friendly name identifying the user.

        " } }, "virtualMFADeviceListType": { "base": null, "refs": { "ListVirtualMFADevicesResponse$VirtualMFADevices": "

        The list of virtual MFA devices in the current account that match the AssignmentStatus value that was passed in the request.

        " } }, "virtualMFADeviceName": { "base": null, "refs": { "CreateVirtualMFADeviceRequest$VirtualMFADeviceName": "

        The name of the virtual MFA device. Use with path to uniquely identify a virtual MFA device.

        The regex pattern for this parameter is a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@-

        " } } } } aws-sdk-go-1.4.22/models/apis/iam/2010-05-08/examples-1.json000066400000000000000000000000541300374646400224470ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/iam/2010-05-08/paginators-1.json000066400000000000000000000125751300374646400230130ustar00rootroot00000000000000{ "pagination": { "GetAccountAuthorizationDetails": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": [ "UserDetailList", "GroupDetailList", "RoleDetailList", "Policies" ] }, "GetGroup": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "Users" }, "ListAccessKeys": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "AccessKeyMetadata" }, "ListAccountAliases": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "AccountAliases" }, "ListAttachedGroupPolicies": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "AttachedPolicies" }, "ListAttachedRolePolicies": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "AttachedPolicies" }, "ListAttachedUserPolicies": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "AttachedPolicies" }, "ListEntitiesForPolicy": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": [ "PolicyGroups", "PolicyUsers", "PolicyRoles" ] }, "ListGroupPolicies": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "PolicyNames" }, "ListGroups": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "Groups" }, "ListGroupsForUser": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "Groups" }, "ListInstanceProfiles": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "InstanceProfiles" }, "ListInstanceProfilesForRole": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "InstanceProfiles" }, "ListMFADevices": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "MFADevices" }, "ListPolicies": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "Policies" }, "ListPolicyVersions": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "Versions" }, "ListRolePolicies": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "PolicyNames" }, "ListRoles": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "Roles" }, "ListSAMLProviders": { "result_key": "SAMLProviderList" }, "ListServerCertificates": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "ServerCertificateMetadataList" }, "ListSigningCertificates": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "Certificates" }, "ListSSHPublicKeys": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "SSHPublicKeys" }, "ListUserPolicies": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "PolicyNames" }, "ListUsers": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "Users" }, "ListVirtualMFADevices": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "VirtualMFADevices" }, "SimulateCustomPolicy": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "EvaluationResults" }, "SimulatePrincipalPolicy": { "input_token": "Marker", "limit_key": "MaxItems", "more_results": "IsTruncated", "output_token": "Marker", "result_key": "EvaluationResults" } } }aws-sdk-go-1.4.22/models/apis/iam/2010-05-08/waiters-2.json000066400000000000000000000013621300374646400223130ustar00rootroot00000000000000{ "version": 2, "waiters": { "InstanceProfileExists": { "delay": 1, "operation": "GetInstanceProfile", "maxAttempts": 40, "acceptors": [ { "expected": 200, "matcher": "status", "state": "success" }, { "state": "retry", "matcher": "status", "expected": 404 } ] }, "UserExists": { "delay": 1, "operation": "GetUser", "maxAttempts": 20, "acceptors": [ { "state": "success", "matcher": "status", "expected": 200 }, { "state": "retry", "matcher": "error", "expected": "NoSuchEntity" } ] } } } aws-sdk-go-1.4.22/models/apis/importexport/000077500000000000000000000000001300374646400205565ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/importexport/2010-06-01/000077500000000000000000000000001300374646400216015ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/importexport/2010-06-01/api-2.json000066400000000000000000000404451300374646400234130ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2010-06-01", "endpointPrefix":"importexport", "globalEndpoint":"importexport.amazonaws.com", "serviceFullName":"AWS Import/Export", "signatureVersion":"v2", "xmlNamespace":"http://importexport.amazonaws.com/doc/2010-06-01/", "protocol":"query" }, "operations":{ "CancelJob":{ "name":"CancelJob", "http":{ "method":"POST", "requestUri":"/?Operation=CancelJob" }, "input":{"shape":"CancelJobInput"}, "output":{ "shape":"CancelJobOutput", "resultWrapper":"CancelJobResult" }, "errors":[ { "shape":"InvalidJobIdException", "exception":true }, { "shape":"ExpiredJobIdException", "exception":true }, { "shape":"CanceledJobIdException", "exception":true }, { "shape":"UnableToCancelJobIdException", "exception":true }, { "shape":"InvalidAccessKeyIdException", "exception":true }, { "shape":"InvalidVersionException", "exception":true } ] }, "CreateJob":{ "name":"CreateJob", "http":{ "method":"POST", "requestUri":"/?Operation=CreateJob" }, "input":{"shape":"CreateJobInput"}, "output":{ "shape":"CreateJobOutput", "resultWrapper":"CreateJobResult" }, "errors":[ { "shape":"MissingParameterException", "exception":true }, { "shape":"InvalidParameterException", "exception":true }, { "shape":"InvalidAccessKeyIdException", "exception":true }, { "shape":"InvalidAddressException", "exception":true }, { "shape":"InvalidManifestFieldException", "exception":true }, { "shape":"MissingManifestFieldException", "exception":true }, { "shape":"NoSuchBucketException", "exception":true }, { "shape":"MissingCustomsException", "exception":true }, { "shape":"InvalidCustomsException", "exception":true }, { "shape":"InvalidFileSystemException", "exception":true }, { "shape":"MultipleRegionsException", "exception":true }, { "shape":"BucketPermissionException", "exception":true }, { "shape":"MalformedManifestException", "exception":true }, { "shape":"CreateJobQuotaExceededException", "exception":true }, { "shape":"InvalidJobIdException", "exception":true }, { "shape":"InvalidVersionException", "exception":true } ] }, "GetShippingLabel":{ "name":"GetShippingLabel", "http":{ "method":"POST", "requestUri":"/?Operation=GetShippingLabel" }, "input":{"shape":"GetShippingLabelInput"}, "output":{ "shape":"GetShippingLabelOutput", "resultWrapper":"GetShippingLabelResult" }, "errors":[ { "shape":"InvalidJobIdException", "exception":true }, { "shape":"ExpiredJobIdException", "exception":true }, { "shape":"CanceledJobIdException", "exception":true }, { "shape":"InvalidAccessKeyIdException", "exception":true }, { "shape":"InvalidAddressException", "exception":true }, { "shape":"InvalidVersionException", "exception":true }, { "shape":"InvalidParameterException", "exception":true } ] }, "GetStatus":{ "name":"GetStatus", "http":{ "method":"POST", "requestUri":"/?Operation=GetStatus" }, "input":{"shape":"GetStatusInput"}, "output":{ "shape":"GetStatusOutput", "resultWrapper":"GetStatusResult" }, "errors":[ { "shape":"InvalidJobIdException", "exception":true }, { "shape":"ExpiredJobIdException", "exception":true }, { "shape":"CanceledJobIdException", "exception":true }, { "shape":"InvalidAccessKeyIdException", "exception":true }, { "shape":"InvalidVersionException", "exception":true } ] }, "ListJobs":{ "name":"ListJobs", "http":{ "method":"POST", "requestUri":"/?Operation=ListJobs" }, "input":{"shape":"ListJobsInput"}, "output":{ "shape":"ListJobsOutput", "resultWrapper":"ListJobsResult" }, "errors":[ { "shape":"InvalidParameterException", "exception":true }, { "shape":"InvalidAccessKeyIdException", "exception":true }, { "shape":"InvalidVersionException", "exception":true } ] }, "UpdateJob":{ "name":"UpdateJob", "http":{ "method":"POST", "requestUri":"/?Operation=UpdateJob" }, "input":{"shape":"UpdateJobInput"}, "output":{ "shape":"UpdateJobOutput", "resultWrapper":"UpdateJobResult" }, "errors":[ { "shape":"MissingParameterException", "exception":true }, { "shape":"InvalidParameterException", "exception":true }, { "shape":"InvalidAccessKeyIdException", "exception":true }, { "shape":"InvalidAddressException", "exception":true }, { "shape":"InvalidManifestFieldException", "exception":true }, { "shape":"InvalidJobIdException", "exception":true }, { "shape":"MissingManifestFieldException", "exception":true }, { "shape":"NoSuchBucketException", "exception":true }, { "shape":"ExpiredJobIdException", "exception":true }, { "shape":"CanceledJobIdException", "exception":true }, { "shape":"MissingCustomsException", "exception":true }, { "shape":"InvalidCustomsException", "exception":true }, { "shape":"InvalidFileSystemException", "exception":true }, { "shape":"MultipleRegionsException", "exception":true }, { "shape":"BucketPermissionException", "exception":true }, { "shape":"MalformedManifestException", "exception":true }, { "shape":"UnableToUpdateJobIdException", "exception":true }, { "shape":"InvalidVersionException", "exception":true } ] } }, "shapes":{ "APIVersion":{"type":"string"}, "Artifact":{ "type":"structure", "members":{ "Description":{"shape":"Description"}, "URL":{"shape":"URL"} } }, "ArtifactList":{ "type":"list", "member":{"shape":"Artifact"} }, "BucketPermissionException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "CancelJobInput":{ "type":"structure", "required":["JobId"], "members":{ "JobId":{"shape":"JobId"}, "APIVersion":{"shape":"APIVersion"} } }, "CancelJobOutput":{ "type":"structure", "members":{ "Success":{"shape":"Success"} } }, "CanceledJobIdException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "Carrier":{"type":"string"}, "CreateJobInput":{ "type":"structure", "required":[ "JobType", "Manifest", "ValidateOnly" ], "members":{ "JobType":{"shape":"JobType"}, "Manifest":{"shape":"Manifest"}, "ManifestAddendum":{"shape":"ManifestAddendum"}, "ValidateOnly":{"shape":"ValidateOnly"}, "APIVersion":{"shape":"APIVersion"} } }, "CreateJobOutput":{ "type":"structure", "members":{ "JobId":{"shape":"JobId"}, "JobType":{"shape":"JobType"}, "Signature":{"shape":"Signature"}, "SignatureFileContents":{"shape":"SignatureFileContents"}, "WarningMessage":{"shape":"WarningMessage"}, "ArtifactList":{"shape":"ArtifactList"} } }, "CreateJobQuotaExceededException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "CreationDate":{"type":"timestamp"}, "CurrentManifest":{"type":"string"}, "Description":{"type":"string"}, "ErrorCount":{"type":"integer"}, "ErrorMessage":{"type":"string"}, "ExpiredJobIdException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "GenericString":{"type":"string"}, "GetShippingLabelInput":{ "type":"structure", "required":["jobIds"], "members":{ "jobIds":{"shape":"JobIdList"}, "name":{"shape":"name"}, "company":{"shape":"company"}, "phoneNumber":{"shape":"phoneNumber"}, "country":{"shape":"country"}, "stateOrProvince":{"shape":"stateOrProvince"}, "city":{"shape":"city"}, "postalCode":{"shape":"postalCode"}, "street1":{"shape":"street1"}, "street2":{"shape":"street2"}, "street3":{"shape":"street3"}, "APIVersion":{"shape":"APIVersion"} } }, "GetShippingLabelOutput":{ "type":"structure", "members":{ "ShippingLabelURL":{"shape":"GenericString"}, "Warning":{"shape":"GenericString"} } }, "GetStatusInput":{ "type":"structure", "required":["JobId"], "members":{ "JobId":{"shape":"JobId"}, "APIVersion":{"shape":"APIVersion"} } }, "GetStatusOutput":{ "type":"structure", "members":{ "JobId":{"shape":"JobId"}, "JobType":{"shape":"JobType"}, "LocationCode":{"shape":"LocationCode"}, "LocationMessage":{"shape":"LocationMessage"}, "ProgressCode":{"shape":"ProgressCode"}, "ProgressMessage":{"shape":"ProgressMessage"}, "Carrier":{"shape":"Carrier"}, "TrackingNumber":{"shape":"TrackingNumber"}, "LogBucket":{"shape":"LogBucket"}, "LogKey":{"shape":"LogKey"}, "ErrorCount":{"shape":"ErrorCount"}, "Signature":{"shape":"Signature"}, "SignatureFileContents":{"shape":"Signature"}, "CurrentManifest":{"shape":"CurrentManifest"}, "CreationDate":{"shape":"CreationDate"}, "ArtifactList":{"shape":"ArtifactList"} } }, "InvalidAccessKeyIdException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "InvalidAddressException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "InvalidCustomsException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "InvalidFileSystemException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "InvalidJobIdException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "InvalidManifestFieldException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "InvalidParameterException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "InvalidVersionException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "IsCanceled":{"type":"boolean"}, "IsTruncated":{"type":"boolean"}, "Job":{ "type":"structure", "members":{ "JobId":{"shape":"JobId"}, "CreationDate":{"shape":"CreationDate"}, "IsCanceled":{"shape":"IsCanceled"}, "JobType":{"shape":"JobType"} } }, "JobId":{"type":"string"}, "JobIdList":{ "type":"list", "member":{"shape":"GenericString"} }, "JobType":{ "type":"string", "enum":[ "Import", "Export" ] }, "JobsList":{ "type":"list", "member":{"shape":"Job"} }, "ListJobsInput":{ "type":"structure", "members":{ "MaxJobs":{"shape":"MaxJobs"}, "Marker":{"shape":"Marker"}, "APIVersion":{"shape":"APIVersion"} } }, "ListJobsOutput":{ "type":"structure", "members":{ "Jobs":{"shape":"JobsList"}, "IsTruncated":{"shape":"IsTruncated"} } }, "LocationCode":{"type":"string"}, "LocationMessage":{"type":"string"}, "LogBucket":{"type":"string"}, "LogKey":{"type":"string"}, "MalformedManifestException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "Manifest":{"type":"string"}, "ManifestAddendum":{"type":"string"}, "Marker":{"type":"string"}, "MaxJobs":{"type":"integer"}, "MissingCustomsException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "MissingManifestFieldException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "MissingParameterException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "MultipleRegionsException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "NoSuchBucketException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ProgressCode":{"type":"string"}, "ProgressMessage":{"type":"string"}, "Signature":{"type":"string"}, "SignatureFileContents":{"type":"string"}, "Success":{"type":"boolean"}, "TrackingNumber":{"type":"string"}, "URL":{"type":"string"}, "UnableToCancelJobIdException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "UnableToUpdateJobIdException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "UpdateJobInput":{ "type":"structure", "required":[ "JobId", "Manifest", "JobType", "ValidateOnly" ], "members":{ "JobId":{"shape":"JobId"}, "Manifest":{"shape":"Manifest"}, "JobType":{"shape":"JobType"}, "ValidateOnly":{"shape":"ValidateOnly"}, "APIVersion":{"shape":"APIVersion"} } }, "UpdateJobOutput":{ "type":"structure", "members":{ "Success":{"shape":"Success"}, "WarningMessage":{"shape":"WarningMessage"}, "ArtifactList":{"shape":"ArtifactList"} } }, "ValidateOnly":{"type":"boolean"}, "WarningMessage":{"type":"string"}, "city":{"type":"string"}, "company":{"type":"string"}, "country":{"type":"string"}, "name":{"type":"string"}, "phoneNumber":{"type":"string"}, "postalCode":{"type":"string"}, "stateOrProvince":{"type":"string"}, "street1":{"type":"string"}, "street2":{"type":"string"}, "street3":{"type":"string"} } } aws-sdk-go-1.4.22/models/apis/importexport/2010-06-01/docs-2.json000066400000000000000000000413341300374646400235700ustar00rootroot00000000000000{ "version": "2.0", "operations": { "CancelJob": "This operation cancels a specified job. Only the job owner can cancel it. The operation fails if the job has already started or is complete.", "CreateJob": "This operation initiates the process of scheduling an upload or download of your data. You include in the request a manifest that describes the data transfer specifics. The response to the request includes a job ID, which you can use in other operations, a signature that you use to identify your storage device, and the address where you should ship your storage device.", "GetShippingLabel": "This operation generates a pre-paid UPS shipping label that you will use to ship your device to AWS for processing.", "GetStatus": "This operation returns information about a job, including where the job is in the processing pipeline, the status of the results, and the signature value associated with the job. You can only return information about jobs you own.", "ListJobs": "This operation returns the jobs associated with the requester. AWS Import/Export lists the jobs in reverse chronological order based on the date of creation. For example if Job Test1 was created 2009Dec30 and Test2 was created 2010Feb05, the ListJobs operation would return Test2 followed by Test1.", "UpdateJob": "You use this operation to change the parameters specified in the original manifest file by supplying a new manifest file. The manifest file attached to this request replaces the original manifest file. You can only use the operation after a CreateJob request but before the data transfer starts and you can only use it on jobs you own." }, "service": "AWS Import/Export Service AWS Import/Export accelerates transferring large amounts of data between the AWS cloud and portable storage devices that you mail to us. AWS Import/Export transfers data directly onto and off of your storage devices using Amazon's high-speed internal network and bypassing the Internet. For large data sets, AWS Import/Export is often faster than Internet transfer and more cost effective than upgrading your connectivity.", "shapes": { "APIVersion": { "base": "Specifies the version of the client tool.", "refs": { "CancelJobInput$APIVersion": null, "CreateJobInput$APIVersion": null, "GetShippingLabelInput$APIVersion": null, "GetStatusInput$APIVersion": null, "ListJobsInput$APIVersion": null, "UpdateJobInput$APIVersion": null } }, "Artifact": { "base": "A discrete item that contains the description and URL of an artifact (such as a PDF).", "refs": { "ArtifactList$member": null } }, "ArtifactList": { "base": "A collection of artifacts.", "refs": { "CreateJobOutput$ArtifactList": null, "GetStatusOutput$ArtifactList": null, "UpdateJobOutput$ArtifactList": null } }, "BucketPermissionException": { "base": "The account specified does not have the appropriate bucket permissions.", "refs": { } }, "CancelJobInput": { "base": "Input structure for the CancelJob operation.", "refs": { } }, "CancelJobOutput": { "base": "Output structure for the CancelJob operation.", "refs": { } }, "CanceledJobIdException": { "base": "The specified job ID has been canceled and is no longer valid.", "refs": { } }, "Carrier": { "base": "Name of the shipping company. This value is included when the LocationCode is \"Returned\".", "refs": { "GetStatusOutput$Carrier": null } }, "CreateJobInput": { "base": "Input structure for the CreateJob operation.", "refs": { } }, "CreateJobOutput": { "base": "Output structure for the CreateJob operation.", "refs": { } }, "CreateJobQuotaExceededException": { "base": "Each account can create only a certain number of jobs per day. If you need to create more than this, please contact awsimportexport@amazon.com to explain your particular use case.", "refs": { } }, "CreationDate": { "base": "Timestamp of the CreateJob request in ISO8601 date format. For example \"2010-03-28T20:27:35Z\".", "refs": { "GetStatusOutput$CreationDate": null, "Job$CreationDate": null } }, "CurrentManifest": { "base": "The last manifest submitted, which will be used to process the job.", "refs": { "GetStatusOutput$CurrentManifest": null } }, "Description": { "base": "The associated description for this object.", "refs": { "Artifact$Description": null } }, "ErrorCount": { "base": "Number of errors. We return this value when the ProgressCode is Success or SuccessWithErrors.", "refs": { "GetStatusOutput$ErrorCount": null } }, "ErrorMessage": { "base": "The human-readable description of a particular error.", "refs": { "BucketPermissionException$message": null, "CanceledJobIdException$message": null, "CreateJobQuotaExceededException$message": null, "ExpiredJobIdException$message": null, "InvalidAccessKeyIdException$message": null, "InvalidAddressException$message": null, "InvalidCustomsException$message": null, "InvalidFileSystemException$message": null, "InvalidJobIdException$message": null, "InvalidManifestFieldException$message": null, "InvalidParameterException$message": null, "InvalidVersionException$message": null, "MalformedManifestException$message": null, "MissingCustomsException$message": null, "MissingManifestFieldException$message": null, "MissingParameterException$message": null, "MultipleRegionsException$message": null, "NoSuchBucketException$message": null, "UnableToCancelJobIdException$message": null, "UnableToUpdateJobIdException$message": null } }, "ExpiredJobIdException": { "base": "Indicates that the specified job has expired out of the system.", "refs": { } }, "GenericString": { "base": null, "refs": { "GetShippingLabelOutput$ShippingLabelURL": null, "GetShippingLabelOutput$Warning": null, "JobIdList$member": null } }, "GetShippingLabelInput": { "base": null, "refs": { } }, "GetShippingLabelOutput": { "base": null, "refs": { } }, "GetStatusInput": { "base": "Input structure for the GetStatus operation.", "refs": { } }, "GetStatusOutput": { "base": "Output structure for the GetStatus operation.", "refs": { } }, "InvalidAccessKeyIdException": { "base": "The AWS Access Key ID specified in the request did not match the manifest's accessKeyId value. The manifest and the request authentication must use the same AWS Access Key ID.", "refs": { } }, "InvalidAddressException": { "base": "The address specified in the manifest is invalid.", "refs": { } }, "InvalidCustomsException": { "base": "One or more customs parameters was invalid. Please correct and resubmit.", "refs": { } }, "InvalidFileSystemException": { "base": "File system specified in export manifest is invalid.", "refs": { } }, "InvalidJobIdException": { "base": "The JOBID was missing, not found, or not associated with the AWS account.", "refs": { } }, "InvalidManifestFieldException": { "base": "One or more manifest fields was invalid. Please correct and resubmit.", "refs": { } }, "InvalidParameterException": { "base": "One or more parameters had an invalid value.", "refs": { } }, "InvalidVersionException": { "base": "The client tool version is invalid.", "refs": { } }, "IsCanceled": { "base": "Indicates whether the job was canceled.", "refs": { "Job$IsCanceled": null } }, "IsTruncated": { "base": "Indicates whether the list of jobs was truncated. If true, then call ListJobs again using the last JobId element as the marker.", "refs": { "ListJobsOutput$IsTruncated": null } }, "Job": { "base": "Representation of a job returned by the ListJobs operation.", "refs": { "JobsList$member": null } }, "JobId": { "base": "A unique identifier which refers to a particular job.", "refs": { "CancelJobInput$JobId": null, "CreateJobOutput$JobId": null, "GetStatusInput$JobId": null, "GetStatusOutput$JobId": null, "Job$JobId": null, "UpdateJobInput$JobId": null } }, "JobIdList": { "base": null, "refs": { "GetShippingLabelInput$jobIds": null } }, "JobType": { "base": "Specifies whether the job to initiate is an import or export job.", "refs": { "CreateJobInput$JobType": null, "CreateJobOutput$JobType": null, "GetStatusOutput$JobType": null, "Job$JobType": null, "UpdateJobInput$JobType": null } }, "JobsList": { "base": "A list container for Jobs returned by the ListJobs operation.", "refs": { "ListJobsOutput$Jobs": null } }, "ListJobsInput": { "base": "Input structure for the ListJobs operation.", "refs": { } }, "ListJobsOutput": { "base": "Output structure for the ListJobs operation.", "refs": { } }, "LocationCode": { "base": "A token representing the location of the storage device, such as \"AtAWS\".", "refs": { "GetStatusOutput$LocationCode": null } }, "LocationMessage": { "base": "A more human readable form of the physical location of the storage device.", "refs": { "GetStatusOutput$LocationMessage": null } }, "LogBucket": { "base": "Amazon S3 bucket for user logs.", "refs": { "GetStatusOutput$LogBucket": null } }, "LogKey": { "base": "The key where the user logs were stored.", "refs": { "GetStatusOutput$LogKey": null } }, "MalformedManifestException": { "base": "Your manifest is not well-formed.", "refs": { } }, "Manifest": { "base": "The UTF-8 encoded text of the manifest file.", "refs": { "CreateJobInput$Manifest": null, "UpdateJobInput$Manifest": null } }, "ManifestAddendum": { "base": "For internal use only.", "refs": { "CreateJobInput$ManifestAddendum": null } }, "Marker": { "base": "Specifies the JOBID to start after when listing the jobs created with your account. AWS Import/Export lists your jobs in reverse chronological order. See MaxJobs.", "refs": { "ListJobsInput$Marker": null } }, "MaxJobs": { "base": "Sets the maximum number of jobs returned in the response. If there are additional jobs that were not returned because MaxJobs was exceeded, the response contains <IsTruncated>true</IsTruncated>. To return the additional jobs, see Marker.", "refs": { "ListJobsInput$MaxJobs": null } }, "MissingCustomsException": { "base": "One or more required customs parameters was missing from the manifest.", "refs": { } }, "MissingManifestFieldException": { "base": "One or more required fields were missing from the manifest file. Please correct and resubmit.", "refs": { } }, "MissingParameterException": { "base": "One or more required parameters was missing from the request.", "refs": { } }, "MultipleRegionsException": { "base": "Your manifest file contained buckets from multiple regions. A job is restricted to buckets from one region. Please correct and resubmit.", "refs": { } }, "NoSuchBucketException": { "base": "The specified bucket does not exist. Create the specified bucket or change the manifest's bucket, exportBucket, or logBucket field to a bucket that the account, as specified by the manifest's Access Key ID, has write permissions to.", "refs": { } }, "ProgressCode": { "base": "A token representing the state of the job, such as \"Started\".", "refs": { "GetStatusOutput$ProgressCode": null } }, "ProgressMessage": { "base": "A more human readable form of the job status.", "refs": { "GetStatusOutput$ProgressMessage": null } }, "Signature": { "base": "An encrypted code used to authenticate the request and response, for example, \"DV+TpDfx1/TdSE9ktyK9k/bDTVI=\". Only use this value is you want to create the signature file yourself. Generally you should use the SignatureFileContents value.", "refs": { "CreateJobOutput$Signature": null, "GetStatusOutput$Signature": null, "GetStatusOutput$SignatureFileContents": null } }, "SignatureFileContents": { "base": "The actual text of the SIGNATURE file to be written to disk.", "refs": { "CreateJobOutput$SignatureFileContents": null } }, "Success": { "base": "Specifies whether (true) or not (false) AWS Import/Export updated your job.", "refs": { "CancelJobOutput$Success": null, "UpdateJobOutput$Success": null } }, "TrackingNumber": { "base": "The shipping tracking number assigned by AWS Import/Export to the storage device when it's returned to you. We return this value when the LocationCode is \"Returned\".", "refs": { "GetStatusOutput$TrackingNumber": null } }, "URL": { "base": "The URL for a given Artifact.", "refs": { "Artifact$URL": null } }, "UnableToCancelJobIdException": { "base": "AWS Import/Export cannot cancel the job", "refs": { } }, "UnableToUpdateJobIdException": { "base": "AWS Import/Export cannot update the job", "refs": { } }, "UpdateJobInput": { "base": "Input structure for the UpateJob operation.", "refs": { } }, "UpdateJobOutput": { "base": "Output structure for the UpateJob operation.", "refs": { } }, "ValidateOnly": { "base": "Validate the manifest and parameter values in the request but do not actually create a job.", "refs": { "CreateJobInput$ValidateOnly": null, "UpdateJobInput$ValidateOnly": null } }, "WarningMessage": { "base": "An optional message notifying you of non-fatal issues with the job, such as use of an incompatible Amazon S3 bucket name.", "refs": { "CreateJobOutput$WarningMessage": null, "UpdateJobOutput$WarningMessage": null } }, "city": { "base": "Specifies the name of your city for the return address.", "refs": { "GetShippingLabelInput$city": null } }, "company": { "base": "Specifies the name of the company that will ship this package.", "refs": { "GetShippingLabelInput$company": null } }, "country": { "base": "Specifies the name of your country for the return address.", "refs": { "GetShippingLabelInput$country": null } }, "name": { "base": "Specifies the name of the person responsible for shipping this package.", "refs": { "GetShippingLabelInput$name": null } }, "phoneNumber": { "base": "Specifies the phone number of the person responsible for shipping this package.", "refs": { "GetShippingLabelInput$phoneNumber": null } }, "postalCode": { "base": "Specifies the postal code for the return address.", "refs": { "GetShippingLabelInput$postalCode": null } }, "stateOrProvince": { "base": "Specifies the name of your state or your province for the return address.", "refs": { "GetShippingLabelInput$stateOrProvince": null } }, "street1": { "base": "Specifies the first part of the street address for the return address, for example 1234 Main Street.", "refs": { "GetShippingLabelInput$street1": null } }, "street2": { "base": "Specifies the optional second part of the street address for the return address, for example Suite 100.", "refs": { "GetShippingLabelInput$street2": null } }, "street3": { "base": "Specifies the optional third part of the street address for the return address, for example c/o Jane Doe.", "refs": { "GetShippingLabelInput$street3": null } } } } aws-sdk-go-1.4.22/models/apis/importexport/2010-06-01/paginators-1.json000066400000000000000000000003271300374646400250030ustar00rootroot00000000000000{ "pagination": { "ListJobs": { "input_token": "Marker", "output_token": "Jobs[-1].JobId", "more_results": "IsTruncated", "limit_key": "MaxJobs", "result_key": "Jobs" } } } aws-sdk-go-1.4.22/models/apis/inspector/000077500000000000000000000000001300374646400200105ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/inspector/2015-08-18/000077500000000000000000000000001300374646400210525ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/inspector/2015-08-18/api-2.json000066400000000000000000001137661300374646400226730ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-08-18", "endpointPrefix":"inspector", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"Amazon Inspector", "signatureVersion":"v4", "targetPrefix":"InspectorService" }, "operations":{ "AddAttributesToFindings":{ "name":"AddAttributesToFindings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddAttributesToFindingsRequest"}, "output":{"shape":"AddAttributesToFindingsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "AttachAssessmentAndRulesPackage":{ "name":"AttachAssessmentAndRulesPackage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachAssessmentAndRulesPackageRequest"}, "output":{"shape":"AttachAssessmentAndRulesPackageResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "CreateApplication":{ "name":"CreateApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateApplicationRequest"}, "output":{"shape":"CreateApplicationResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "CreateAssessment":{ "name":"CreateAssessment", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateAssessmentRequest"}, "output":{"shape":"CreateAssessmentResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "CreateResourceGroup":{ "name":"CreateResourceGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateResourceGroupRequest"}, "output":{"shape":"CreateResourceGroupResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"} ] }, "DeleteApplication":{ "name":"DeleteApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteApplicationRequest"}, "output":{"shape":"DeleteApplicationResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"OperationInProgressException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "DeleteAssessment":{ "name":"DeleteAssessment", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteAssessmentRequest"}, "output":{"shape":"DeleteAssessmentResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"OperationInProgressException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "DeleteRun":{ "name":"DeleteRun", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRunRequest"}, "output":{"shape":"DeleteRunResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "DescribeApplication":{ "name":"DescribeApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeApplicationRequest"}, "output":{"shape":"DescribeApplicationResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "DescribeAssessment":{ "name":"DescribeAssessment", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAssessmentRequest"}, "output":{"shape":"DescribeAssessmentResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "DescribeCrossAccountAccessRole":{ "name":"DescribeCrossAccountAccessRole", "http":{ "method":"POST", "requestUri":"/" }, "output":{"shape":"DescribeCrossAccountAccessRoleResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"AccessDeniedException"} ] }, "DescribeFinding":{ "name":"DescribeFinding", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeFindingRequest"}, "output":{"shape":"DescribeFindingResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "DescribeResourceGroup":{ "name":"DescribeResourceGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeResourceGroupRequest"}, "output":{"shape":"DescribeResourceGroupResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "DescribeRulesPackage":{ "name":"DescribeRulesPackage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRulesPackageRequest"}, "output":{"shape":"DescribeRulesPackageResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "DescribeRun":{ "name":"DescribeRun", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRunRequest"}, "output":{"shape":"DescribeRunResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "DetachAssessmentAndRulesPackage":{ "name":"DetachAssessmentAndRulesPackage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachAssessmentAndRulesPackageRequest"}, "output":{"shape":"DetachAssessmentAndRulesPackageResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "GetAssessmentTelemetry":{ "name":"GetAssessmentTelemetry", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetAssessmentTelemetryRequest"}, "output":{"shape":"GetAssessmentTelemetryResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "ListApplications":{ "name":"ListApplications", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListApplicationsRequest"}, "output":{"shape":"ListApplicationsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"} ] }, "ListAssessmentAgents":{ "name":"ListAssessmentAgents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListAssessmentAgentsRequest"}, "output":{"shape":"ListAssessmentAgentsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "ListAssessments":{ "name":"ListAssessments", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListAssessmentsRequest"}, "output":{"shape":"ListAssessmentsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "ListAttachedAssessments":{ "name":"ListAttachedAssessments", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListAttachedAssessmentsRequest"}, "output":{"shape":"ListAttachedAssessmentsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "ListAttachedRulesPackages":{ "name":"ListAttachedRulesPackages", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListAttachedRulesPackagesRequest"}, "output":{"shape":"ListAttachedRulesPackagesResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "ListFindings":{ "name":"ListFindings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListFindingsRequest"}, "output":{"shape":"ListFindingsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "ListRulesPackages":{ "name":"ListRulesPackages", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListRulesPackagesRequest"}, "output":{"shape":"ListRulesPackagesResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"} ] }, "ListRuns":{ "name":"ListRuns", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListRunsRequest"}, "output":{"shape":"ListRunsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTagsForResourceRequest"}, "output":{"shape":"ListTagsForResourceResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "LocalizeText":{ "name":"LocalizeText", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"LocalizeTextRequest"}, "output":{"shape":"LocalizeTextResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "PreviewAgentsForResourceGroup":{ "name":"PreviewAgentsForResourceGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PreviewAgentsForResourceGroupRequest"}, "output":{"shape":"PreviewAgentsForResourceGroupResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"}, {"shape":"InvalidCrossAccountRoleException"} ] }, "RegisterCrossAccountAccessRole":{ "name":"RegisterCrossAccountAccessRole", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterCrossAccountAccessRoleRequest"}, "output":{"shape":"RegisterCrossAccountAccessRoleResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"InvalidCrossAccountRoleException"} ] }, "RemoveAttributesFromFindings":{ "name":"RemoveAttributesFromFindings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveAttributesFromFindingsRequest"}, "output":{"shape":"RemoveAttributesFromFindingsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "RunAssessment":{ "name":"RunAssessment", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RunAssessmentRequest"}, "output":{"shape":"RunAssessmentResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "SetTagsForResource":{ "name":"SetTagsForResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetTagsForResourceRequest"}, "output":{"shape":"SetTagsForResourceResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "StartDataCollection":{ "name":"StartDataCollection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartDataCollectionRequest"}, "output":{"shape":"StartDataCollectionResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"}, {"shape":"InvalidCrossAccountRoleException"} ] }, "StopDataCollection":{ "name":"StopDataCollection", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopDataCollectionRequest"}, "output":{"shape":"StopDataCollectionResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "UpdateApplication":{ "name":"UpdateApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateApplicationRequest"}, "output":{"shape":"UpdateApplicationResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "UpdateAssessment":{ "name":"UpdateAssessment", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateAssessmentRequest"}, "output":{"shape":"UpdateAssessmentResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] } }, "shapes":{ "AccessDeniedException":{ "type":"structure", "members":{ }, "exception":true }, "AddAttributesToFindingsRequest":{ "type":"structure", "required":[ "findingArns", "attributes" ], "members":{ "findingArns":{"shape":"ArnList"}, "attributes":{"shape":"AttributeList"} } }, "AddAttributesToFindingsResponse":{ "type":"structure", "members":{ "message":{"shape":"Message"} } }, "Agent":{ "type":"structure", "members":{ "agentId":{"shape":"AgentId"}, "assessmentArn":{"shape":"Arn"}, "agentHealth":{"shape":"AgentHealth"}, "agentHealthCode":{"shape":"AgentHealthCode"}, "agentHealthDetails":{"shape":"AgentHealthDetails"}, "autoScalingGroup":{"shape":"AutoScalingGroup"}, "accountId":{"shape":"AwsAccount"}, "telemetry":{"shape":"TelemetryList"} } }, "AgentHealth":{"type":"string"}, "AgentHealthCode":{"type":"string"}, "AgentHealthDetails":{"type":"string"}, "AgentHealthList":{ "type":"list", "member":{"shape":"AgentHealth"} }, "AgentId":{"type":"string"}, "AgentList":{ "type":"list", "member":{"shape":"Agent"} }, "AgentPreview":{ "type":"structure", "members":{ "agentId":{"shape":"AgentId"}, "autoScalingGroup":{"shape":"AutoScalingGroup"} } }, "AgentPreviewList":{ "type":"list", "member":{"shape":"AgentPreview"} }, "AgentsFilter":{ "type":"structure", "members":{ "agentHealthList":{"shape":"AgentHealthList"} } }, "Application":{ "type":"structure", "members":{ "applicationArn":{"shape":"Arn"}, "applicationName":{"shape":"Name"}, "resourceGroupArn":{"shape":"Arn"} } }, "ApplicationsFilter":{ "type":"structure", "members":{ "applicationNamePatterns":{"shape":"NamePatternList"} } }, "Arn":{"type":"string"}, "ArnList":{ "type":"list", "member":{"shape":"Arn"} }, "Assessment":{ "type":"structure", "members":{ "assessmentArn":{"shape":"Arn"}, "assessmentName":{"shape":"Name"}, "applicationArn":{"shape":"Arn"}, "assessmentState":{"shape":"AssessmentState"}, "failureMessage":{"shape":"FailureMessage"}, "dataCollected":{"shape":"Bool"}, "startTime":{"shape":"Timestamp"}, "endTime":{"shape":"Timestamp"}, "durationInSeconds":{"shape":"Duration"}, "userAttributesForFindings":{"shape":"AttributeList"} } }, "AssessmentState":{"type":"string"}, "AssessmentStateList":{ "type":"list", "member":{"shape":"AssessmentState"} }, "AssessmentsFilter":{ "type":"structure", "members":{ "assessmentNamePatterns":{"shape":"NamePatternList"}, "assessmentStates":{"shape":"AssessmentStateList"}, "dataCollected":{"shape":"Bool"}, "startTimeRange":{"shape":"TimestampRange"}, "endTimeRange":{"shape":"TimestampRange"}, "durationRange":{"shape":"DurationRange"} } }, "AttachAssessmentAndRulesPackageRequest":{ "type":"structure", "required":[ "assessmentArn", "rulesPackageArn" ], "members":{ "assessmentArn":{"shape":"Arn"}, "rulesPackageArn":{"shape":"Arn"} } }, "AttachAssessmentAndRulesPackageResponse":{ "type":"structure", "members":{ "message":{"shape":"Message"} } }, "Attribute":{ "type":"structure", "members":{ "key":{"shape":"AttributeKey"}, "value":{"shape":"AttributeValue"} } }, "AttributeKey":{"type":"string"}, "AttributeKeyList":{ "type":"list", "member":{"shape":"AttributeKey"} }, "AttributeList":{ "type":"list", "member":{"shape":"Attribute"} }, "AttributeValue":{"type":"string"}, "AutoScalingGroup":{"type":"string"}, "AwsAccount":{"type":"string"}, "Bool":{"type":"boolean"}, "CreateApplicationRequest":{ "type":"structure", "required":[ "applicationName", "resourceGroupArn" ], "members":{ "applicationName":{"shape":"Name"}, "resourceGroupArn":{"shape":"Arn"} } }, "CreateApplicationResponse":{ "type":"structure", "members":{ "applicationArn":{"shape":"Arn"} } }, "CreateAssessmentRequest":{ "type":"structure", "required":[ "applicationArn", "assessmentName", "durationInSeconds" ], "members":{ "applicationArn":{"shape":"Arn"}, "assessmentName":{"shape":"Name"}, "durationInSeconds":{"shape":"Duration"}, "userAttributesForFindings":{"shape":"AttributeList"} } }, "CreateAssessmentResponse":{ "type":"structure", "members":{ "assessmentArn":{"shape":"Arn"} } }, "CreateResourceGroupRequest":{ "type":"structure", "required":["resourceGroupTags"], "members":{ "resourceGroupTags":{"shape":"ResourceGroupTags"} } }, "CreateResourceGroupResponse":{ "type":"structure", "members":{ "resourceGroupArn":{"shape":"Arn"} } }, "DeleteApplicationRequest":{ "type":"structure", "required":["applicationArn"], "members":{ "applicationArn":{"shape":"Arn"} } }, "DeleteApplicationResponse":{ "type":"structure", "members":{ "message":{"shape":"Message"} } }, "DeleteAssessmentRequest":{ "type":"structure", "required":["assessmentArn"], "members":{ "assessmentArn":{"shape":"Arn"} } }, "DeleteAssessmentResponse":{ "type":"structure", "members":{ "message":{"shape":"Message"} } }, "DeleteRunRequest":{ "type":"structure", "required":["runArn"], "members":{ "runArn":{"shape":"Arn"} } }, "DeleteRunResponse":{ "type":"structure", "members":{ "message":{"shape":"Message"} } }, "DescribeApplicationRequest":{ "type":"structure", "required":["applicationArn"], "members":{ "applicationArn":{"shape":"Arn"} } }, "DescribeApplicationResponse":{ "type":"structure", "members":{ "application":{"shape":"Application"} } }, "DescribeAssessmentRequest":{ "type":"structure", "required":["assessmentArn"], "members":{ "assessmentArn":{"shape":"Arn"} } }, "DescribeAssessmentResponse":{ "type":"structure", "members":{ "assessment":{"shape":"Assessment"} } }, "DescribeCrossAccountAccessRoleResponse":{ "type":"structure", "members":{ "roleArn":{"shape":"Arn"}, "valid":{"shape":"Bool"} } }, "DescribeFindingRequest":{ "type":"structure", "required":["findingArn"], "members":{ "findingArn":{"shape":"Arn"} } }, "DescribeFindingResponse":{ "type":"structure", "members":{ "finding":{"shape":"Finding"} } }, "DescribeResourceGroupRequest":{ "type":"structure", "required":["resourceGroupArn"], "members":{ "resourceGroupArn":{"shape":"Arn"} } }, "DescribeResourceGroupResponse":{ "type":"structure", "members":{ "resourceGroup":{"shape":"ResourceGroup"} } }, "DescribeRulesPackageRequest":{ "type":"structure", "required":["rulesPackageArn"], "members":{ "rulesPackageArn":{"shape":"Arn"} } }, "DescribeRulesPackageResponse":{ "type":"structure", "members":{ "rulesPackage":{"shape":"RulesPackage"} } }, "DescribeRunRequest":{ "type":"structure", "required":["runArn"], "members":{ "runArn":{"shape":"Arn"} } }, "DescribeRunResponse":{ "type":"structure", "members":{ "run":{"shape":"Run"} } }, "DetachAssessmentAndRulesPackageRequest":{ "type":"structure", "required":[ "assessmentArn", "rulesPackageArn" ], "members":{ "assessmentArn":{"shape":"Arn"}, "rulesPackageArn":{"shape":"Arn"} } }, "DetachAssessmentAndRulesPackageResponse":{ "type":"structure", "members":{ "message":{"shape":"Message"} } }, "Duration":{"type":"integer"}, "DurationRange":{ "type":"structure", "members":{ "minimum":{"shape":"Duration"}, "maximum":{"shape":"Duration"} } }, "FailureMessage":{"type":"string"}, "Finding":{ "type":"structure", "members":{ "findingArn":{"shape":"Arn"}, "runArn":{"shape":"Arn"}, "rulesPackageArn":{"shape":"Arn"}, "ruleName":{"shape":"Name"}, "agentId":{"shape":"AgentId"}, "autoScalingGroup":{"shape":"AutoScalingGroup"}, "severity":{"shape":"Severity"}, "finding":{"shape":"LocalizedText"}, "description":{"shape":"LocalizedText"}, "recommendation":{"shape":"LocalizedText"}, "attributes":{"shape":"AttributeList"}, "userAttributes":{"shape":"AttributeList"} } }, "FindingsFilter":{ "type":"structure", "members":{ "rulesPackageArns":{"shape":"ArnList"}, "ruleNames":{"shape":"NameList"}, "severities":{"shape":"SeverityList"}, "attributes":{"shape":"AttributeList"}, "userAttributes":{"shape":"AttributeList"} } }, "GetAssessmentTelemetryRequest":{ "type":"structure", "required":["assessmentArn"], "members":{ "assessmentArn":{"shape":"Arn"} } }, "GetAssessmentTelemetryResponse":{ "type":"structure", "members":{ "telemetry":{"shape":"TelemetryList"} } }, "Integer":{"type":"integer"}, "InternalException":{ "type":"structure", "members":{ }, "exception":true, "fault":true }, "InvalidCrossAccountRoleException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidInputException":{ "type":"structure", "members":{ }, "exception":true }, "ListApplicationsRequest":{ "type":"structure", "members":{ "filter":{"shape":"ApplicationsFilter"}, "nextToken":{"shape":"PaginationToken"}, "maxResults":{"shape":"Integer"} } }, "ListApplicationsResponse":{ "type":"structure", "members":{ "applicationArnList":{"shape":"ArnList"}, "nextToken":{"shape":"PaginationToken"} } }, "ListAssessmentAgentsRequest":{ "type":"structure", "required":["assessmentArn"], "members":{ "assessmentArn":{"shape":"Arn"}, "filter":{"shape":"AgentsFilter"}, "nextToken":{"shape":"PaginationToken"}, "maxResults":{"shape":"Integer"} } }, "ListAssessmentAgentsResponse":{ "type":"structure", "members":{ "agentList":{"shape":"AgentList"}, "nextToken":{"shape":"PaginationToken"} } }, "ListAssessmentsRequest":{ "type":"structure", "members":{ "applicationArns":{"shape":"ArnList"}, "filter":{"shape":"AssessmentsFilter"}, "nextToken":{"shape":"PaginationToken"}, "maxResults":{"shape":"Integer"} } }, "ListAssessmentsResponse":{ "type":"structure", "members":{ "assessmentArnList":{"shape":"ArnList"}, "nextToken":{"shape":"PaginationToken"} } }, "ListAttachedAssessmentsRequest":{ "type":"structure", "required":["rulesPackageArn"], "members":{ "rulesPackageArn":{"shape":"Arn"}, "filter":{"shape":"AssessmentsFilter"}, "nextToken":{"shape":"PaginationToken"}, "maxResults":{"shape":"Integer"} } }, "ListAttachedAssessmentsResponse":{ "type":"structure", "members":{ "assessmentArnList":{"shape":"ArnList"}, "nextToken":{"shape":"PaginationToken"} } }, "ListAttachedRulesPackagesRequest":{ "type":"structure", "required":["assessmentArn"], "members":{ "assessmentArn":{"shape":"Arn"}, "nextToken":{"shape":"PaginationToken"}, "maxResults":{"shape":"Integer"} } }, "ListAttachedRulesPackagesResponse":{ "type":"structure", "members":{ "rulesPackageArnList":{"shape":"ArnList"}, "nextToken":{"shape":"PaginationToken"} } }, "ListFindingsRequest":{ "type":"structure", "members":{ "runArns":{"shape":"ArnList"}, "filter":{"shape":"FindingsFilter"}, "nextToken":{"shape":"PaginationToken"}, "maxResults":{"shape":"Integer"} } }, "ListFindingsResponse":{ "type":"structure", "members":{ "findingArnList":{"shape":"ArnList"}, "nextToken":{"shape":"PaginationToken"} } }, "ListRulesPackagesRequest":{ "type":"structure", "members":{ "nextToken":{"shape":"PaginationToken"}, "maxResults":{"shape":"Integer"} } }, "ListRulesPackagesResponse":{ "type":"structure", "members":{ "rulesPackageArnList":{"shape":"ArnList"}, "nextToken":{"shape":"PaginationToken"} } }, "ListRunsRequest":{ "type":"structure", "members":{ "assessmentArns":{"shape":"ArnList"}, "filter":{"shape":"RunsFilter"}, "nextToken":{"shape":"PaginationToken"}, "maxResults":{"shape":"Integer"} } }, "ListRunsResponse":{ "type":"structure", "members":{ "runArnList":{"shape":"ArnList"}, "nextToken":{"shape":"PaginationToken"} } }, "ListTagsForResourceRequest":{ "type":"structure", "required":["resourceArn"], "members":{ "resourceArn":{"shape":"Arn"} } }, "ListTagsForResourceResponse":{ "type":"structure", "members":{ "tagList":{"shape":"TagList"} } }, "Locale":{"type":"string"}, "LocalizeTextRequest":{ "type":"structure", "required":[ "localizedTexts", "locale" ], "members":{ "localizedTexts":{"shape":"LocalizedTextList"}, "locale":{"shape":"Locale"} } }, "LocalizeTextResponse":{ "type":"structure", "members":{ "message":{"shape":"Message"}, "results":{"shape":"TextList"} } }, "LocalizedFacility":{"type":"string"}, "LocalizedText":{ "type":"structure", "members":{ "key":{"shape":"LocalizedTextKey"}, "parameters":{"shape":"ParameterList"} } }, "LocalizedTextId":{"type":"string"}, "LocalizedTextKey":{ "type":"structure", "members":{ "facility":{"shape":"LocalizedFacility"}, "id":{"shape":"LocalizedTextId"} } }, "LocalizedTextList":{ "type":"list", "member":{"shape":"LocalizedText"} }, "Long":{"type":"long"}, "Message":{"type":"string"}, "MessageType":{"type":"string"}, "MessageTypeTelemetry":{ "type":"structure", "members":{ "messageType":{"shape":"MessageType"}, "count":{"shape":"Long"}, "dataSize":{"shape":"Long"} } }, "MessageTypeTelemetryList":{ "type":"list", "member":{"shape":"MessageTypeTelemetry"} }, "Name":{"type":"string"}, "NameList":{ "type":"list", "member":{"shape":"Name"} }, "NamePattern":{"type":"string"}, "NamePatternList":{ "type":"list", "member":{"shape":"NamePattern"} }, "NoSuchEntityException":{ "type":"structure", "members":{ }, "exception":true }, "OperationInProgressException":{ "type":"structure", "members":{ }, "exception":true }, "PaginationToken":{"type":"string"}, "Parameter":{ "type":"structure", "members":{ "name":{"shape":"ParameterName"}, "value":{"shape":"ParameterValue"} } }, "ParameterList":{ "type":"list", "member":{"shape":"Parameter"} }, "ParameterName":{"type":"string"}, "ParameterValue":{"type":"string"}, "PreviewAgentsForResourceGroupRequest":{ "type":"structure", "required":["resourceGroupArn"], "members":{ "resourceGroupArn":{"shape":"Arn"}, "nextToken":{"shape":"PaginationToken"}, "maxResults":{"shape":"Integer"} } }, "PreviewAgentsForResourceGroupResponse":{ "type":"structure", "members":{ "agentPreviewList":{"shape":"AgentPreviewList"}, "nextToken":{"shape":"PaginationToken"} } }, "RegisterCrossAccountAccessRoleRequest":{ "type":"structure", "required":["roleArn"], "members":{ "roleArn":{"shape":"Arn"} } }, "RegisterCrossAccountAccessRoleResponse":{ "type":"structure", "members":{ "message":{"shape":"Message"} } }, "RemoveAttributesFromFindingsRequest":{ "type":"structure", "required":[ "findingArns", "attributeKeys" ], "members":{ "findingArns":{"shape":"ArnList"}, "attributeKeys":{"shape":"AttributeKeyList"} } }, "RemoveAttributesFromFindingsResponse":{ "type":"structure", "members":{ "message":{"shape":"Message"} } }, "ResourceGroup":{ "type":"structure", "members":{ "resourceGroupArn":{"shape":"Arn"}, "resourceGroupTags":{"shape":"ResourceGroupTags"} } }, "ResourceGroupTags":{"type":"string"}, "RulesPackage":{ "type":"structure", "members":{ "rulesPackageArn":{"shape":"Arn"}, "rulesPackageName":{"shape":"Name"}, "version":{"shape":"Version"}, "provider":{"shape":"Name"}, "description":{"shape":"LocalizedText"} } }, "Run":{ "type":"structure", "members":{ "runArn":{"shape":"Arn"}, "runName":{"shape":"Name"}, "assessmentArn":{"shape":"Arn"}, "runState":{"shape":"RunState"}, "rulesPackages":{"shape":"ArnList"}, "creationTime":{"shape":"Timestamp"}, "completionTime":{"shape":"Timestamp"} } }, "RunAssessmentRequest":{ "type":"structure", "required":[ "assessmentArn", "runName" ], "members":{ "assessmentArn":{"shape":"Arn"}, "runName":{"shape":"Name"} } }, "RunAssessmentResponse":{ "type":"structure", "members":{ "runArn":{"shape":"Arn"} } }, "RunState":{"type":"string"}, "RunStateList":{ "type":"list", "member":{"shape":"RunState"} }, "RunsFilter":{ "type":"structure", "members":{ "runNamePatterns":{"shape":"NamePatternList"}, "runStates":{"shape":"RunStateList"}, "rulesPackages":{"shape":"ArnList"}, "creationTime":{"shape":"TimestampRange"}, "completionTime":{"shape":"TimestampRange"} } }, "SetTagsForResourceRequest":{ "type":"structure", "required":["resourceArn"], "members":{ "resourceArn":{"shape":"Arn"}, "tags":{"shape":"TagList"} } }, "SetTagsForResourceResponse":{ "type":"structure", "members":{ "message":{"shape":"Message"} } }, "Severity":{"type":"string"}, "SeverityList":{ "type":"list", "member":{"shape":"Severity"} }, "StartDataCollectionRequest":{ "type":"structure", "required":["assessmentArn"], "members":{ "assessmentArn":{"shape":"Arn"} } }, "StartDataCollectionResponse":{ "type":"structure", "members":{ "message":{"shape":"Message"} } }, "StopDataCollectionRequest":{ "type":"structure", "required":["assessmentArn"], "members":{ "assessmentArn":{"shape":"Arn"} } }, "StopDataCollectionResponse":{ "type":"structure", "members":{ "message":{"shape":"Message"} } }, "Tag":{ "type":"structure", "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{"type":"string"}, "TagList":{ "type":"list", "member":{"shape":"Tag"} }, "TagValue":{"type":"string"}, "Telemetry":{ "type":"structure", "members":{ "status":{"shape":"TelemetryStatus"}, "messageTypeTelemetries":{"shape":"MessageTypeTelemetryList"} } }, "TelemetryList":{ "type":"list", "member":{"shape":"Telemetry"} }, "TelemetryStatus":{"type":"string"}, "Text":{"type":"string"}, "TextList":{ "type":"list", "member":{"shape":"Text"} }, "Timestamp":{"type":"timestamp"}, "TimestampRange":{ "type":"structure", "members":{ "minimum":{"shape":"Timestamp"}, "maximum":{"shape":"Timestamp"} } }, "UpdateApplicationRequest":{ "type":"structure", "required":[ "applicationArn", "applicationName", "resourceGroupArn" ], "members":{ "applicationArn":{"shape":"Arn"}, "applicationName":{"shape":"Name"}, "resourceGroupArn":{"shape":"Arn"} } }, "UpdateApplicationResponse":{ "type":"structure", "members":{ "message":{"shape":"Message"} } }, "UpdateAssessmentRequest":{ "type":"structure", "required":[ "assessmentArn", "assessmentName", "durationInSeconds" ], "members":{ "assessmentArn":{"shape":"Arn"}, "assessmentName":{"shape":"Name"}, "durationInSeconds":{"shape":"Duration"} } }, "UpdateAssessmentResponse":{ "type":"structure", "members":{ "message":{"shape":"Message"} } }, "Version":{"type":"string"} } } aws-sdk-go-1.4.22/models/apis/inspector/2015-08-18/docs-2.json000066400000000000000000001510171300374646400230410ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon Inspector

        Amazon Inspector enables you to analyze the behavior of the applications you run in AWS and to identify potential security issues. For more information, see Amazon Inspector User Guide.

        ", "operations": { "AddAttributesToFindings": "

        Assigns attributes (key and value pair) to the findings specified by the findings' ARNs.

        ", "AttachAssessmentAndRulesPackage": "

        Attaches the rules package specified by the rules package ARN to the assessment specified by the assessment ARN.

        ", "CreateApplication": "

        Creates a new application using the resource group ARN generated by CreateResourceGroup. You can create up to 50 applications per AWS account. You can run up to 500 concurrent agents per AWS account. For more information, see Inspector Applications.

        ", "CreateAssessment": "

        Creates an assessment for the application specified by the application ARN. You can create up to 500 assessments per AWS account.

        ", "CreateResourceGroup": "

        Creates a resource group using the specified set of tags (key and value pairs) that are used to select the EC2 instances to be included in an Inspector application. The created resource group is then used to create an Inspector application.

        ", "DeleteApplication": "

        Deletes the application specified by the application ARN.

        ", "DeleteAssessment": "

        Deletes the assessment specified by the assessment ARN.

        ", "DeleteRun": "

        Deletes the assessment run specified by the run ARN.

        ", "DescribeApplication": "

        Describes the application specified by the application ARN.

        ", "DescribeAssessment": "

        Describes the assessment specified by the assessment ARN.

        ", "DescribeCrossAccountAccessRole": "

        Describes the IAM role that enables Inspector to access your AWS account.

        ", "DescribeFinding": "

        Describes the finding specified by the finding ARN.

        ", "DescribeResourceGroup": "

        Describes the resource group specified by the resource group ARN.

        ", "DescribeRulesPackage": "

        Describes the rules package specified by the rules package ARN.

        ", "DescribeRun": "

        Describes the assessment run specified by the run ARN.

        ", "DetachAssessmentAndRulesPackage": "

        Detaches the rules package specified by the rules package ARN from the assessment specified by the assessment ARN.

        ", "GetAssessmentTelemetry": "

        Returns the metadata about the telemetry (application behavioral data) for the assessment specified by the assessment ARN.

        ", "ListApplications": "

        Lists the ARNs of the applications within this AWS account. For more information about applications, see Inspector Applications.

        ", "ListAssessmentAgents": "

        Lists the agents of the assessment specified by the assessment ARN.

        ", "ListAssessments": "

        Lists the assessments corresponding to applications specified by the applications' ARNs.

        ", "ListAttachedAssessments": "

        Lists the assessments attached to the rules package specified by the rules package ARN.

        ", "ListAttachedRulesPackages": "

        Lists the rules packages attached to the assessment specified by the assessment ARN.

        ", "ListFindings": "

        Lists findings generated by the assessment run specified by the run ARNs.

        ", "ListRulesPackages": "

        Lists all available Inspector rules packages.

        ", "ListRuns": "

        Lists the assessment runs associated with the assessments specified by the assessment ARNs.

        ", "ListTagsForResource": "

        Lists all tags associated with a resource.

        ", "LocalizeText": "

        Translates a textual identifier into a user-readable text in a specified locale.

        ", "PreviewAgentsForResourceGroup": "

        Previews the agents installed on the EC2 instances that are included in the application created with the specified resource group.

        ", "RegisterCrossAccountAccessRole": "

        Register the role that Inspector uses to list your EC2 instances during the assessment.

        ", "RemoveAttributesFromFindings": "

        Removes the entire attribute (key and value pair) from the findings specified by the finding ARNs where an attribute with the specified key exists.

        ", "RunAssessment": "

        Starts the analysis of the application’s behavior against selected rule packages for the assessment specified by the assessment ARN.

        ", "SetTagsForResource": "

        Sets tags (key and value pairs) to the assessment specified by the assessment ARN.

        ", "StartDataCollection": "

        Starts data collection for the assessment specified by the assessment ARN. For this API to function properly, you must not exceed the limit of running up to 500 concurrent agents per AWS account.

        ", "StopDataCollection": "

        Stop data collection for the assessment specified by the assessment ARN.

        ", "UpdateApplication": "

        Updates application specified by the application ARN.

        ", "UpdateAssessment": "

        Updates the assessment specified by the assessment ARN.

        " }, "shapes": { "AccessDeniedException": { "base": null, "refs": { } }, "AddAttributesToFindingsRequest": { "base": null, "refs": { } }, "AddAttributesToFindingsResponse": { "base": null, "refs": { } }, "Agent": { "base": "

        Contains information about an Inspector agent. This data type is used as a response element in the ListAssessmentAgents action.

        ", "refs": { "AgentList$member": null } }, "AgentHealth": { "base": null, "refs": { "Agent$agentHealth": "

        The current health state of the agent. Values can be set to HEALTHY or UNHEALTHY.

        ", "AgentHealthList$member": null } }, "AgentHealthCode": { "base": null, "refs": { "Agent$agentHealthCode": "

        The detailed health state of the agent. Values can be set to RUNNING, HEALTHY, UNHEALTHY, UNKNOWN, BLACKLISTED, SHUTDOWN, THROTTLED.

        " } }, "AgentHealthDetails": { "base": null, "refs": { "Agent$agentHealthDetails": "

        The description for the agent health code.

        " } }, "AgentHealthList": { "base": null, "refs": { "AgentsFilter$agentHealthList": "

        For a record to match a filter, the value specified for this data type property must be the exact match of the value of the agentHealth property of the Agent data type.

        " } }, "AgentId": { "base": null, "refs": { "Agent$agentId": "

        The EC2 instance ID where the agent is installed.

        ", "AgentPreview$agentId": "

        The id of the EC2 instance where the agent is intalled.

        ", "Finding$agentId": "

        The EC2 instance ID where the agent is installed that is used during the assessment that generates the finding.

        " } }, "AgentList": { "base": null, "refs": { "ListAssessmentAgentsResponse$agentList": "

        A list of ARNs specifying the agents returned by the action.

        " } }, "AgentPreview": { "base": "

        This data type is used as a response element in the PreviewAgentsForResourceGroup action.

        ", "refs": { "AgentPreviewList$member": null } }, "AgentPreviewList": { "base": null, "refs": { "PreviewAgentsForResourceGroupResponse$agentPreviewList": "

        The resulting list of agents.

        " } }, "AgentsFilter": { "base": "

        This data type is used as a response element in the ListAssessmentAgents action.

        ", "refs": { "ListAssessmentAgentsRequest$filter": "

        You can use this parameter to specify a subset of data to be included in the action's response.

        For a record to match a filter, all specified filter attributes must match. When multiple values are specified for a filter attribute, any of the values can match.

        " } }, "Application": { "base": "

        Contains information about an Inspector application.

        This data type is used as the response element in the DescribeApplication action.

        ", "refs": { "DescribeApplicationResponse$application": "

        Information about the application.

        " } }, "ApplicationsFilter": { "base": "

        This data type is used as the request parameter in the ListApplications action.

        ", "refs": { "ListApplicationsRequest$filter": "

        You can use this parameter to specify a subset of data to be included in the action's response.

        For a record to match a filter, all specified filter attributes must match. When multiple values are specified for a filter attribute, any of the values can match.

        " } }, "Arn": { "base": null, "refs": { "Agent$assessmentArn": "

        The ARN of the assessment that is associated with the agent.

        ", "Application$applicationArn": "

        The ARN specifying the Inspector application.

        ", "Application$resourceGroupArn": "

        The ARN specifying the resource group that is associated with the application.

        ", "ArnList$member": null, "Assessment$assessmentArn": "

        The ARN of the assessment.

        ", "Assessment$applicationArn": "

        The ARN of the application that corresponds to this assessment.

        ", "AttachAssessmentAndRulesPackageRequest$assessmentArn": "

        The ARN specifying the assessment to which you want to attach a rules package.

        ", "AttachAssessmentAndRulesPackageRequest$rulesPackageArn": "

        The ARN specifying the rules package that you want to attach to the assessment.

        ", "CreateApplicationRequest$resourceGroupArn": "

        The ARN specifying the resource group that is used to create the application.

        ", "CreateApplicationResponse$applicationArn": "

        The ARN specifying the application that is created.

        ", "CreateAssessmentRequest$applicationArn": "

        The ARN specifying the application for which you want to create an assessment.

        ", "CreateAssessmentResponse$assessmentArn": "

        The ARN specifying the assessment that is created.

        ", "CreateResourceGroupResponse$resourceGroupArn": "

        The ARN specifying the resource group that is created.

        ", "DeleteApplicationRequest$applicationArn": "

        The ARN specifying the application that you want to delete.

        ", "DeleteAssessmentRequest$assessmentArn": "

        The ARN specifying the assessment that you want to delete.

        ", "DeleteRunRequest$runArn": "

        The ARN specifying the assessment run that you want to delete.

        ", "DescribeApplicationRequest$applicationArn": "

        The ARN specifying the application that you want to describe.

        ", "DescribeAssessmentRequest$assessmentArn": "

        The ARN specifying the assessment that you want to describe.

        ", "DescribeCrossAccountAccessRoleResponse$roleArn": "

        The ARN specifying the IAM role that Inspector uses to access your AWS account.

        ", "DescribeFindingRequest$findingArn": "

        The ARN specifying the finding that you want to describe.

        ", "DescribeResourceGroupRequest$resourceGroupArn": "

        The ARN specifying the resource group that you want to describe.

        ", "DescribeRulesPackageRequest$rulesPackageArn": "

        The ARN specifying the rules package that you want to describe.

        ", "DescribeRunRequest$runArn": "

        The ARN specifying the assessment run that you want to describe.

        ", "DetachAssessmentAndRulesPackageRequest$assessmentArn": "

        The ARN specifying the assessment from which you want to detach a rules package.

        ", "DetachAssessmentAndRulesPackageRequest$rulesPackageArn": "

        The ARN specifying the rules package that you want to detach from the assessment.

        ", "Finding$findingArn": "

        The ARN specifying the finding.

        ", "Finding$runArn": "

        The ARN of the assessment run that generated the finding.

        ", "Finding$rulesPackageArn": "

        The ARN of the rules package that is used to generate the finding.

        ", "GetAssessmentTelemetryRequest$assessmentArn": "

        The ARN specifying the assessment the telemetry of which you want to obtain.

        ", "ListAssessmentAgentsRequest$assessmentArn": "

        The ARN specifying the assessment whose agents you want to list.

        ", "ListAttachedAssessmentsRequest$rulesPackageArn": "

        The ARN specifying the rules package whose assessments you want to list.

        ", "ListAttachedRulesPackagesRequest$assessmentArn": "

        The ARN specifying the assessment whose rules packages you want to list.

        ", "ListTagsForResourceRequest$resourceArn": "

        The ARN specifying the resource whose tags you want to list.

        ", "PreviewAgentsForResourceGroupRequest$resourceGroupArn": "

        The ARN of the resource group that is used to create an application.

        ", "RegisterCrossAccountAccessRoleRequest$roleArn": "The ARN of the IAM role that Inspector uses to list your EC2 instances during the assessment.", "ResourceGroup$resourceGroupArn": "

        The ARN of the resource group.

        ", "RulesPackage$rulesPackageArn": "

        The ARN of the rules package.

        ", "Run$runArn": "

        The ARN of the run.

        ", "Run$assessmentArn": "

        The ARN of the assessment that is associated with the run.

        ", "RunAssessmentRequest$assessmentArn": "

        The ARN of the assessment that you want to run.

        ", "RunAssessmentResponse$runArn": "

        The ARN specifying the run of the assessment.

        ", "SetTagsForResourceRequest$resourceArn": "

        The ARN of the assessment that you want to set tags to.

        ", "StartDataCollectionRequest$assessmentArn": "

        The ARN of the assessment for which you want to start the data collection process.

        ", "StopDataCollectionRequest$assessmentArn": "

        The ARN of the assessment for which you want to stop the data collection process.

        ", "UpdateApplicationRequest$applicationArn": "

        Application ARN that you want to update.

        ", "UpdateApplicationRequest$resourceGroupArn": "

        The resource group ARN that you want to update.

        ", "UpdateAssessmentRequest$assessmentArn": "

        Asessment ARN that you want to update.

        " } }, "ArnList": { "base": null, "refs": { "AddAttributesToFindingsRequest$findingArns": "

        The ARNs specifying the findings that you want to assign attributes to.

        ", "FindingsFilter$rulesPackageArns": "

        For a record to match a filter, the value specified for this data type property must be the exact match of the value of the rulesPackageArn property of the Finding data type.

        ", "ListApplicationsResponse$applicationArnList": "

        A list of ARNs specifying the applications returned by the action.

        ", "ListAssessmentsRequest$applicationArns": "

        A list of ARNs specifying the applications the assessments of which you want to list.

        ", "ListAssessmentsResponse$assessmentArnList": "

        A list of ARNs specifying the assessments returned by the action.

        ", "ListAttachedAssessmentsResponse$assessmentArnList": "

        A list of ARNs specifying the assessments returned by the action.

        ", "ListAttachedRulesPackagesResponse$rulesPackageArnList": "

        A list of ARNs specifying the rules packages returned by the action.

        ", "ListFindingsRequest$runArns": "

        The ARNs of the assessment runs that generate the findings that you want to list.

        ", "ListFindingsResponse$findingArnList": "

        A list of ARNs specifying the findings returned by the action.

        ", "ListRulesPackagesResponse$rulesPackageArnList": "

        The list of ARNs specifying the rules packages returned by the action.

        ", "ListRunsRequest$assessmentArns": "

        The ARNs specifying the assessments whose runs you want to list.

        ", "ListRunsResponse$runArnList": "

        A list of ARNs specifying the assessment runs returned by the action.

        ", "RemoveAttributesFromFindingsRequest$findingArns": "

        The ARNs specifying the findings that you want to remove attributes from.

        ", "Run$rulesPackages": "

        Rules packages selected for the run of the assessment.

        ", "RunsFilter$rulesPackages": "

        For a record to match a filter, the value specified for this data type property must match a list of values of the rulesPackages property of the Run data type.

        " } }, "Assessment": { "base": "

        Contains information about an Inspector assessment.

        This data type is used as the response element in the DescribeAssessment action.

        ", "refs": { "DescribeAssessmentResponse$assessment": "

        Information about the assessment.

        " } }, "AssessmentState": { "base": null, "refs": { "Assessment$assessmentState": "

        The state of the assessment. Values can be set to Created, Collecting Data, Stopping, and Completed.

        ", "AssessmentStateList$member": null } }, "AssessmentStateList": { "base": null, "refs": { "AssessmentsFilter$assessmentStates": "

        For a record to match a filter, the value specified for this data type property must be the exact match of the value of the assessmentState property of the Assessment data type.

        " } }, "AssessmentsFilter": { "base": "

        This data type is used as the request parameter in the ListAssessments and ListAttachedAssessments actions.

        ", "refs": { "ListAssessmentsRequest$filter": "

        You can use this parameter to specify a subset of data to be included in the action's response.

        For a record to match a filter, all specified filter attributes must match. When multiple values are specified for a filter attribute, any of the values can match.

        ", "ListAttachedAssessmentsRequest$filter": "

        You can use this parameter to specify a subset of data to be included in the action's response.

        For a record to match a filter, all specified filter attributes must match. When multiple values are specified for a filter attribute, any of the values can match.

        " } }, "AttachAssessmentAndRulesPackageRequest": { "base": null, "refs": { } }, "AttachAssessmentAndRulesPackageResponse": { "base": null, "refs": { } }, "Attribute": { "base": "

        This data type is used as a response element in the AddAttributesToFindings action and a request parameter in the CreateAssessment action.

        ", "refs": { "AttributeList$member": null } }, "AttributeKey": { "base": null, "refs": { "Attribute$key": "

        The attribute key.

        ", "AttributeKeyList$member": null } }, "AttributeKeyList": { "base": null, "refs": { "RemoveAttributesFromFindingsRequest$attributeKeys": "

        The array of attribute keys that you want to remove from specified findings.

        " } }, "AttributeList": { "base": null, "refs": { "AddAttributesToFindingsRequest$attributes": "

        The array of attributes that you want to assign to specified findings.

        ", "Assessment$userAttributesForFindings": "

        The user-defined attributes that are assigned to every generated finding.

        ", "CreateAssessmentRequest$userAttributesForFindings": "

        The user-defined attributes that are assigned to every finding generated by running this assessment.

        ", "Finding$attributes": "

        The system-defined attributes for the finding.

        ", "Finding$userAttributes": "

        The user-defined attributes that are assigned to the finding.

        ", "FindingsFilter$attributes": "

        For a record to match a filter, the value specified for this data type property must be the exact match of the value of the attributes property of the Finding data type.

        ", "FindingsFilter$userAttributes": "

        For a record to match a filter, the value specified for this data type property must be the exact match of the value of the userAttributes property of the Finding data type.

        " } }, "AttributeValue": { "base": null, "refs": { "Attribute$value": "

        The value assigned to the attribute key.

        " } }, "AutoScalingGroup": { "base": null, "refs": { "Agent$autoScalingGroup": "

        This data type property is currently not used.

        ", "AgentPreview$autoScalingGroup": "

        The autoscaling group for the EC2 instance where the agent is installed.

        ", "Finding$autoScalingGroup": "

        The autoscaling group of the EC2 instance where the agent is installed that is used during the assessment that generates the finding.

        " } }, "AwsAccount": { "base": null, "refs": { "Agent$accountId": "

        AWS account of the EC2 instance where the agent is installed.

        " } }, "Bool": { "base": null, "refs": { "Assessment$dataCollected": "

        Boolean value (true or false) specifying whether the data collection process is completed.

        ", "AssessmentsFilter$dataCollected": "

        For a record to match a filter, the value specified for this data type property must be the exact match of the value of the dataCollected property of the Assessment data type.

        ", "DescribeCrossAccountAccessRoleResponse$valid": "

        A Boolean value that specifies whether the IAM role has the necessary policies attached to enable Inspector to access your AWS account.

        " } }, "CreateApplicationRequest": { "base": null, "refs": { } }, "CreateApplicationResponse": { "base": null, "refs": { } }, "CreateAssessmentRequest": { "base": null, "refs": { } }, "CreateAssessmentResponse": { "base": null, "refs": { } }, "CreateResourceGroupRequest": { "base": null, "refs": { } }, "CreateResourceGroupResponse": { "base": null, "refs": { } }, "DeleteApplicationRequest": { "base": null, "refs": { } }, "DeleteApplicationResponse": { "base": null, "refs": { } }, "DeleteAssessmentRequest": { "base": null, "refs": { } }, "DeleteAssessmentResponse": { "base": null, "refs": { } }, "DeleteRunRequest": { "base": null, "refs": { } }, "DeleteRunResponse": { "base": null, "refs": { } }, "DescribeApplicationRequest": { "base": null, "refs": { } }, "DescribeApplicationResponse": { "base": null, "refs": { } }, "DescribeAssessmentRequest": { "base": null, "refs": { } }, "DescribeAssessmentResponse": { "base": null, "refs": { } }, "DescribeCrossAccountAccessRoleResponse": { "base": null, "refs": { } }, "DescribeFindingRequest": { "base": null, "refs": { } }, "DescribeFindingResponse": { "base": null, "refs": { } }, "DescribeResourceGroupRequest": { "base": null, "refs": { } }, "DescribeResourceGroupResponse": { "base": null, "refs": { } }, "DescribeRulesPackageRequest": { "base": null, "refs": { } }, "DescribeRulesPackageResponse": { "base": null, "refs": { } }, "DescribeRunRequest": { "base": null, "refs": { } }, "DescribeRunResponse": { "base": null, "refs": { } }, "DetachAssessmentAndRulesPackageRequest": { "base": null, "refs": { } }, "DetachAssessmentAndRulesPackageResponse": { "base": null, "refs": { } }, "Duration": { "base": null, "refs": { "Assessment$durationInSeconds": "

        The assessment duration in seconds. The default value is 3600 seconds (one hour). The maximum value is 86400 seconds (one day).

        ", "CreateAssessmentRequest$durationInSeconds": "

        The duration of the assessment in seconds. The default value is 3600 seconds (one hour). The maximum value is 86400 seconds (one day).

        ", "DurationRange$minimum": "

        The minimum value of the duration range. Must be greater than zero.

        ", "DurationRange$maximum": "

        The maximum value of the duration range. Must be less than or equal to 604800 seconds (1 week).

        ", "UpdateAssessmentRequest$durationInSeconds": "

        Assessment duration in seconds that you want to update. The default value is 3600 seconds (one hour). The maximum value is 86400 seconds (one day).

        " } }, "DurationRange": { "base": "

        This data type is used in the AssessmentsFilter data type.

        ", "refs": { "AssessmentsFilter$durationRange": "

        For a record to match a filter, the value specified for this data type property must inclusively match any value between the specified minimum and maximum values of the durationInSeconds property of the Assessment data type.

        " } }, "FailureMessage": { "base": null, "refs": { "Assessment$failureMessage": "

        This data type property is not currently used.

        " } }, "Finding": { "base": "

        Contains information about an Inspector finding.

        This data type is used as the response element in the DescribeFinding action.

        ", "refs": { "DescribeFindingResponse$finding": "

        Information about the finding.

        " } }, "FindingsFilter": { "base": "

        This data type is used as a request parameter in the ListFindings action.

        ", "refs": { "ListFindingsRequest$filter": "

        You can use this parameter to specify a subset of data to be included in the action's response.

        For a record to match a filter, all specified filter attributes must match. When multiple values are specified for a filter attribute, any of the values can match.

        " } }, "GetAssessmentTelemetryRequest": { "base": null, "refs": { } }, "GetAssessmentTelemetryResponse": { "base": null, "refs": { } }, "Integer": { "base": null, "refs": { "ListApplicationsRequest$maxResults": "

        You can use this parameter to indicate the maximum number of items you want in the response. The default value is 10. The maximum value is 500.

        ", "ListAssessmentAgentsRequest$maxResults": "

        You can use this parameter to indicate the maximum number of items you want in the response. The default value is 10. The maximum value is 500.

        ", "ListAssessmentsRequest$maxResults": "

        You can use this parameter to indicate the maximum number of items you want in the response. The default value is 10. The maximum value is 500.

        ", "ListAttachedAssessmentsRequest$maxResults": "

        You can use this parameter to indicate the maximum number of items you want in the response. The default value is 10. The maximum value is 500.

        ", "ListAttachedRulesPackagesRequest$maxResults": "

        You can use this parameter to indicate the maximum number of items you want in the response. The default value is 10. The maximum value is 500.

        ", "ListFindingsRequest$maxResults": "

        You can use this parameter to indicate the maximum number of items you want in the response. The default value is 10. The maximum value is 500.

        ", "ListRulesPackagesRequest$maxResults": "

        You can use this parameter to indicate the maximum number of items you want in the response. The default value is 10. The maximum value is 500.

        ", "ListRunsRequest$maxResults": "

        You can use this parameter to indicate the maximum number of items you want in the response. The default value is 10. The maximum value is 500.

        ", "PreviewAgentsForResourceGroupRequest$maxResults": "

        You can use this parameter to indicate the maximum number of items you want in the response. The default value is 10. The maximum value is 500.

        " } }, "InternalException": { "base": null, "refs": { } }, "InvalidCrossAccountRoleException": { "base": null, "refs": { } }, "InvalidInputException": { "base": null, "refs": { } }, "ListApplicationsRequest": { "base": null, "refs": { } }, "ListApplicationsResponse": { "base": null, "refs": { } }, "ListAssessmentAgentsRequest": { "base": null, "refs": { } }, "ListAssessmentAgentsResponse": { "base": null, "refs": { } }, "ListAssessmentsRequest": { "base": null, "refs": { } }, "ListAssessmentsResponse": { "base": null, "refs": { } }, "ListAttachedAssessmentsRequest": { "base": null, "refs": { } }, "ListAttachedAssessmentsResponse": { "base": null, "refs": { } }, "ListAttachedRulesPackagesRequest": { "base": null, "refs": { } }, "ListAttachedRulesPackagesResponse": { "base": null, "refs": { } }, "ListFindingsRequest": { "base": null, "refs": { } }, "ListFindingsResponse": { "base": null, "refs": { } }, "ListRulesPackagesRequest": { "base": null, "refs": { } }, "ListRulesPackagesResponse": { "base": null, "refs": { } }, "ListRunsRequest": { "base": null, "refs": { } }, "ListRunsResponse": { "base": null, "refs": { } }, "ListTagsForResourceRequest": { "base": null, "refs": { } }, "ListTagsForResourceResponse": { "base": null, "refs": { } }, "Locale": { "base": null, "refs": { "LocalizeTextRequest$locale": "

        The locale that you want to translate a textual identifier into.

        " } }, "LocalizeTextRequest": { "base": null, "refs": { } }, "LocalizeTextResponse": { "base": null, "refs": { } }, "LocalizedFacility": { "base": null, "refs": { "LocalizedTextKey$facility": "

        The module response source of the text.

        " } }, "LocalizedText": { "base": "

        The textual identifier. This data type is used as the request parameter in the LocalizeText action.

        ", "refs": { "Finding$finding": "

        A short description that identifies the finding.

        ", "Finding$description": "

        The description of the finding.

        ", "Finding$recommendation": "

        The recommendation for the finding.

        ", "LocalizedTextList$member": null, "RulesPackage$description": "

        The description of the rules package.

        " } }, "LocalizedTextId": { "base": null, "refs": { "LocalizedTextKey$id": "

        Part of the module response source of the text.

        " } }, "LocalizedTextKey": { "base": "

        This data type is used in the LocalizedText data type.

        ", "refs": { "LocalizedText$key": "

        The facility and id properties of the LocalizedTextKey data type.

        " } }, "LocalizedTextList": { "base": null, "refs": { "LocalizeTextRequest$localizedTexts": "

        A list of textual identifiers.

        " } }, "Long": { "base": null, "refs": { "MessageTypeTelemetry$count": "

        The number of times that the behavioral data is collected by the agent during an assessment.

        ", "MessageTypeTelemetry$dataSize": "

        The total size of the behavioral data that is collected by the agent during an assessment.

        " } }, "Message": { "base": null, "refs": { "AddAttributesToFindingsResponse$message": "

        Confirmation details of the action performed.

        ", "AttachAssessmentAndRulesPackageResponse$message": "

        Confirmation details of the action performed.

        ", "DeleteApplicationResponse$message": "

        Confirmation details of the action performed.

        ", "DeleteAssessmentResponse$message": "

        Confirmation details of the action performed.

        ", "DeleteRunResponse$message": "

        Confirmation details of the action performed.

        ", "DetachAssessmentAndRulesPackageResponse$message": "

        Confirmation details of the action performed.

        ", "LocalizeTextResponse$message": "

        Confirmation details of the action performed.

        ", "RegisterCrossAccountAccessRoleResponse$message": "

        Confirmation details of the action performed.

        ", "RemoveAttributesFromFindingsResponse$message": "

        Confirmation details of the action performed.

        ", "SetTagsForResourceResponse$message": "

        Confirmation details of the action performed.

        ", "StartDataCollectionResponse$message": "

        Confirmation details of the action performed.

        ", "StopDataCollectionResponse$message": "

        Confirmation details of the action performed.

        ", "UpdateApplicationResponse$message": "

        Confirmation details of the action performed.

        ", "UpdateAssessmentResponse$message": "

        Confirmation details of the action performed.

        " } }, "MessageType": { "base": null, "refs": { "MessageTypeTelemetry$messageType": "

        A specific type of behavioral data that is collected by the agent.

        " } }, "MessageTypeTelemetry": { "base": "

        This data type is used in the Telemetry data type.

        This is metadata about the behavioral data collected by the Inspector agent on your EC2 instances during an assessment and passed to the Inspector service for analysis.

        ", "refs": { "MessageTypeTelemetryList$member": null } }, "MessageTypeTelemetryList": { "base": null, "refs": { "Telemetry$messageTypeTelemetries": "

        Counts of individual metrics received by Inspector from the agent.

        " } }, "Name": { "base": null, "refs": { "Application$applicationName": "

        The name of the Inspector application.

        ", "Assessment$assessmentName": "

        The name of the assessment.

        ", "CreateApplicationRequest$applicationName": "

        The user-defined name identifying the application that you want to create. The name must be unique within the AWS account.

        ", "CreateAssessmentRequest$assessmentName": "

        The user-defined name identifying the assessment that you want to create. You can create several assessments for an application. The names of the assessments corresponding to a particular application must be unique.

        ", "Finding$ruleName": "

        The rule name that is used to generate the finding.

        ", "NameList$member": null, "RulesPackage$rulesPackageName": "

        The name of the rules package.

        ", "RulesPackage$provider": "

        The provider of the rules package.

        ", "Run$runName": "

        The auto-generated name for the run.

        ", "RunAssessmentRequest$runName": "

        A name specifying the run of the assessment.

        ", "UpdateApplicationRequest$applicationName": "

        Application name that you want to update.

        ", "UpdateAssessmentRequest$assessmentName": "

        Assessment name that you want to update.

        " } }, "NameList": { "base": null, "refs": { "FindingsFilter$ruleNames": "

        For a record to match a filter, the value specified for this data type property must be the exact match of the value of the ruleName property of the Finding data type.

        " } }, "NamePattern": { "base": null, "refs": { "NamePatternList$member": null } }, "NamePatternList": { "base": null, "refs": { "ApplicationsFilter$applicationNamePatterns": "

        For a record to match a filter, an explicit value or a string containing a wildcard specified for this data type property must match the value of the applicationName property of the Application data type.

        ", "AssessmentsFilter$assessmentNamePatterns": "

        For a record to match a filter, an explicit value or a string containing a wildcard specified for this data type property must match the value of the assessmentName property of the Assessment data type.

        ", "RunsFilter$runNamePatterns": "

        For a record to match a filter, an explicit value or a string containing a wildcard specified for this data type property must match the value of the runName property of the Run data type.

        " } }, "NoSuchEntityException": { "base": null, "refs": { } }, "OperationInProgressException": { "base": null, "refs": { } }, "PaginationToken": { "base": null, "refs": { "ListApplicationsRequest$nextToken": "

        You can use this parameter when paginating results. Set the value of this parameter to 'null' on your first call to the ListApplications action. Subsequent calls to the action fill nextToken in the request with the value of NextToken from previous response to continue listing data.

        ", "ListApplicationsResponse$nextToken": "

        When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to 'null'.

        ", "ListAssessmentAgentsRequest$nextToken": "

        You can use this parameter when paginating results. Set the value of this parameter to 'null' on your first call to the ListAssessmentAgents action. Subsequent calls to the action fill nextToken in the request with the value of NextToken from previous response to continue listing data.

        ", "ListAssessmentAgentsResponse$nextToken": "

        When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to 'null'.

        ", "ListAssessmentsRequest$nextToken": "

        You can use this parameter when paginating results. Set the value of this parameter to 'null' on your first call to the ListAssessments action. Subsequent calls to the action fill nextToken in the request with the value of NextToken from previous response to continue listing data.

        ", "ListAssessmentsResponse$nextToken": "

        When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to 'null'.

        ", "ListAttachedAssessmentsRequest$nextToken": "

        You can use this parameter when paginating results. Set the value of this parameter to 'null' on your first call to the ListAttachedAssessments action. Subsequent calls to the action fill nextToken in the request with the value of NextToken from previous response to continue listing data.

        ", "ListAttachedAssessmentsResponse$nextToken": "

        When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to 'null'.

        ", "ListAttachedRulesPackagesRequest$nextToken": "

        You can use this parameter when paginating results. Set the value of this parameter to 'null' on your first call to the ListAttachedRulesPackages action. Subsequent calls to the action fill nextToken in the request with the value of NextToken from previous response to continue listing data.

        ", "ListAttachedRulesPackagesResponse$nextToken": "

        When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to 'null'.

        ", "ListFindingsRequest$nextToken": "

        You can use this parameter when paginating results. Set the value of this parameter to 'null' on your first call to the ListFindings action. Subsequent calls to the action fill nextToken in the request with the value of NextToken from previous response to continue listing data.

        ", "ListFindingsResponse$nextToken": "

        When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to 'null'.

        ", "ListRulesPackagesRequest$nextToken": "

        You can use this parameter when paginating results. Set the value of this parameter to 'null' on your first call to the ListRulesPackages action. Subsequent calls to the action fill nextToken in the request with the value of NextToken from previous response to continue listing data.

        ", "ListRulesPackagesResponse$nextToken": "

        When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to 'null'.

        ", "ListRunsRequest$nextToken": "

        You can use this parameter when paginating results. Set the value of this parameter to 'null' on your first call to the ListRuns action. Subsequent calls to the action fill nextToken in the request with the value of NextToken from previous response to continue listing data.

        ", "ListRunsResponse$nextToken": "

        When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to 'null'.

        ", "PreviewAgentsForResourceGroupRequest$nextToken": "

        You can use this parameter when paginating results. Set the value of this parameter to 'null' on your first call to the PreviewAgentsForResourceGroup action. Subsequent calls to the action fill nextToken in the request with the value of NextToken from previous response to continue listing data.

        ", "PreviewAgentsForResourceGroupResponse$nextToken": "

        When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to 'null'.

        " } }, "Parameter": { "base": "

        This data type is used in the LocalizedText data type.

        ", "refs": { "ParameterList$member": null } }, "ParameterList": { "base": null, "refs": { "LocalizedText$parameters": "

        Values for the dynamic elements of the string specified by the textual identifier.

        " } }, "ParameterName": { "base": null, "refs": { "Parameter$name": "

        The name of the variable that is being replaced.

        " } }, "ParameterValue": { "base": null, "refs": { "Parameter$value": "

        The value assigned to the variable that is being replaced.

        " } }, "PreviewAgentsForResourceGroupRequest": { "base": null, "refs": { } }, "PreviewAgentsForResourceGroupResponse": { "base": null, "refs": { } }, "RegisterCrossAccountAccessRoleRequest": { "base": null, "refs": { } }, "RegisterCrossAccountAccessRoleResponse": { "base": null, "refs": { } }, "RemoveAttributesFromFindingsRequest": { "base": null, "refs": { } }, "RemoveAttributesFromFindingsResponse": { "base": null, "refs": { } }, "ResourceGroup": { "base": "

        Contains information about a resource group. The resource group defines a set of tags that, when queried, identify the AWS resources that comprise the application.

        This data type is used as the response element in the DescribeResourceGroup action.

        ", "refs": { "DescribeResourceGroupResponse$resourceGroup": "

        Information about the resource group.

        " } }, "ResourceGroupTags": { "base": null, "refs": { "CreateResourceGroupRequest$resourceGroupTags": "

        A collection of keys and an array of possible values in JSON format.

        For example, [{ \"key1\" : [\"Value1\",\"Value2\"]},{\"Key2\": [\"Value3\"]}]

        ", "ResourceGroup$resourceGroupTags": "

        The tags (key and value pairs) of the resource group.

        This data type property is used in the CreateResourceGroup action.

        A collection of keys and an array of possible values in JSON format.

        For example, [{ \"key1\" : [\"Value1\",\"Value2\"]},{\"Key2\": [\"Value3\"]}]

        " } }, "RulesPackage": { "base": "

        Contains information about an Inspector rules package.

        This data type is used as the response element in the DescribeRulesPackage action.

        ", "refs": { "DescribeRulesPackageResponse$rulesPackage": "

        Information about the rules package.

        " } }, "Run": { "base": "

        A snapshot of an Inspector assessment that contains the assessment's findings.

        This data type is used as the response element in the DescribeRun action.

        ", "refs": { "DescribeRunResponse$run": "

        Information about the assessment run.

        " } }, "RunAssessmentRequest": { "base": null, "refs": { } }, "RunAssessmentResponse": { "base": null, "refs": { } }, "RunState": { "base": null, "refs": { "Run$runState": "

        The state of the run. Values can be set to DataCollectionComplete, EvaluatingPolicies, EvaluatingPoliciesErrorCanRetry, Completed, Failed, TombStoned.

        ", "RunStateList$member": null } }, "RunStateList": { "base": null, "refs": { "RunsFilter$runStates": "

        For a record to match a filter, the value specified for this data type property must be the exact match of the value of the runState property of the Run data type.

        " } }, "RunsFilter": { "base": "

        This data type is used as the request parameter in the ListRuns action.

        ", "refs": { "ListRunsRequest$filter": "

        You can use this parameter to specify a subset of data to be included in the action's response.

        For a record to match a filter, all specified filter attributes must match. When multiple values are specified for a filter attribute, any of the values can match.

        " } }, "SetTagsForResourceRequest": { "base": null, "refs": { } }, "SetTagsForResourceResponse": { "base": null, "refs": { } }, "Severity": { "base": null, "refs": { "Finding$severity": "

        The finding severity. Values can be set to High, Medium, Low, and Informational.

        ", "SeverityList$member": null } }, "SeverityList": { "base": null, "refs": { "FindingsFilter$severities": "

        For a record to match a filter, the value specified for this data type property must be the exact match of the value of the severity property of the Finding data type.

        " } }, "StartDataCollectionRequest": { "base": null, "refs": { } }, "StartDataCollectionResponse": { "base": null, "refs": { } }, "StopDataCollectionRequest": { "base": null, "refs": { } }, "StopDataCollectionResponse": { "base": null, "refs": { } }, "Tag": { "base": "

        A key and value pair.

        This data type is used as a request parameter in the SetTagsForResource action and a response element in the ListTagsForResource action.

        ", "refs": { "TagList$member": null } }, "TagKey": { "base": null, "refs": { "Tag$Key": "

        The tag key.

        " } }, "TagList": { "base": null, "refs": { "ListTagsForResourceResponse$tagList": "

        A collection of key and value pairs.

        ", "SetTagsForResourceRequest$tags": "

        A collection of key and value pairs that you want to set to an assessment.

        " } }, "TagValue": { "base": null, "refs": { "Tag$Value": "

        The value assigned to a tag key.

        " } }, "Telemetry": { "base": "

        The metadata about the Inspector application data metrics collected by the agent.

        This data type is used as the response element in the GetAssessmentTelemetry action.

        ", "refs": { "TelemetryList$member": null } }, "TelemetryList": { "base": null, "refs": { "Agent$telemetry": "

        The Inspector application data metrics collected by the agent.

        ", "GetAssessmentTelemetryResponse$telemetry": "

        Telemetry details.

        " } }, "TelemetryStatus": { "base": null, "refs": { "Telemetry$status": "

        The category of the individual metrics that together constitute the telemetry that Inspector received from the agent.

        " } }, "Text": { "base": null, "refs": { "TextList$member": null } }, "TextList": { "base": null, "refs": { "LocalizeTextResponse$results": "

        The resulting list of user-readable texts.

        " } }, "Timestamp": { "base": null, "refs": { "Assessment$startTime": "

        The assessment start time.

        ", "Assessment$endTime": "

        The assessment end time.

        ", "Run$creationTime": "

        Run creation time that corresponds to the data collection completion time or failure.

        ", "Run$completionTime": "

        Run completion time that corresponds to the rules packages evaluation completion time or failure.

        ", "TimestampRange$minimum": "

        The minimum value of the timestamp range.

        ", "TimestampRange$maximum": "

        The maximum value of the timestamp range.

        " } }, "TimestampRange": { "base": "

        This data type is used in the AssessmentsFilter and RunsFilter data types.

        ", "refs": { "AssessmentsFilter$startTimeRange": "

        For a record to match a filter, the value specified for this data type property must inclusively match any value between the specified minimum and maximum values of the startTime property of the Assessment data type.

        ", "AssessmentsFilter$endTimeRange": "

        For a record to match a filter, the value specified for this data type property must inclusively match any value between the specified minimum and maximum values of the endTime property of the Assessment data type.

        ", "RunsFilter$creationTime": "

        For a record to match a filter, the value specified for this data type property must inclusively match any value between the specified minimum and maximum values of the creationTime property of the Run data type.

        ", "RunsFilter$completionTime": "

        For a record to match a filter, the value specified for this data type property must inclusively match any value between the specified minimum and maximum values of the completionTime property of the Run data type.

        " } }, "UpdateApplicationRequest": { "base": null, "refs": { } }, "UpdateApplicationResponse": { "base": null, "refs": { } }, "UpdateAssessmentRequest": { "base": null, "refs": { } }, "UpdateAssessmentResponse": { "base": null, "refs": { } }, "Version": { "base": null, "refs": { "RulesPackage$version": "

        The version id of the rules package.

        " } } } } aws-sdk-go-1.4.22/models/apis/inspector/2015-08-18/examples-1.json000066400000000000000000000000541300374646400237200ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/inspector/2016-02-16/000077500000000000000000000000001300374646400210435ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/inspector/2016-02-16/api-2.json000066400000000000000000001462741300374646400226640ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2016-02-16", "endpointPrefix":"inspector", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"Amazon Inspector", "signatureVersion":"v4", "targetPrefix":"InspectorService" }, "operations":{ "AddAttributesToFindings":{ "name":"AddAttributesToFindings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddAttributesToFindingsRequest"}, "output":{"shape":"AddAttributesToFindingsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "CreateAssessmentTarget":{ "name":"CreateAssessmentTarget", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateAssessmentTargetRequest"}, "output":{"shape":"CreateAssessmentTargetResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"LimitExceededException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "CreateAssessmentTemplate":{ "name":"CreateAssessmentTemplate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateAssessmentTemplateRequest"}, "output":{"shape":"CreateAssessmentTemplateResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"LimitExceededException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "CreateResourceGroup":{ "name":"CreateResourceGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateResourceGroupRequest"}, "output":{"shape":"CreateResourceGroupResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"LimitExceededException"}, {"shape":"AccessDeniedException"} ] }, "DeleteAssessmentRun":{ "name":"DeleteAssessmentRun", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteAssessmentRunRequest"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AssessmentRunInProgressException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "DeleteAssessmentTarget":{ "name":"DeleteAssessmentTarget", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteAssessmentTargetRequest"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AssessmentRunInProgressException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "DeleteAssessmentTemplate":{ "name":"DeleteAssessmentTemplate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteAssessmentTemplateRequest"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AssessmentRunInProgressException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "DescribeAssessmentRuns":{ "name":"DescribeAssessmentRuns", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAssessmentRunsRequest"}, "output":{"shape":"DescribeAssessmentRunsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"} ] }, "DescribeAssessmentTargets":{ "name":"DescribeAssessmentTargets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAssessmentTargetsRequest"}, "output":{"shape":"DescribeAssessmentTargetsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"} ] }, "DescribeAssessmentTemplates":{ "name":"DescribeAssessmentTemplates", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAssessmentTemplatesRequest"}, "output":{"shape":"DescribeAssessmentTemplatesResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"} ] }, "DescribeCrossAccountAccessRole":{ "name":"DescribeCrossAccountAccessRole", "http":{ "method":"POST", "requestUri":"/" }, "output":{"shape":"DescribeCrossAccountAccessRoleResponse"}, "errors":[ {"shape":"InternalException"} ] }, "DescribeFindings":{ "name":"DescribeFindings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeFindingsRequest"}, "output":{"shape":"DescribeFindingsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"} ] }, "DescribeResourceGroups":{ "name":"DescribeResourceGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeResourceGroupsRequest"}, "output":{"shape":"DescribeResourceGroupsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"} ] }, "DescribeRulesPackages":{ "name":"DescribeRulesPackages", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRulesPackagesRequest"}, "output":{"shape":"DescribeRulesPackagesResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"} ] }, "GetTelemetryMetadata":{ "name":"GetTelemetryMetadata", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetTelemetryMetadataRequest"}, "output":{"shape":"GetTelemetryMetadataResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "ListAssessmentRunAgents":{ "name":"ListAssessmentRunAgents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListAssessmentRunAgentsRequest"}, "output":{"shape":"ListAssessmentRunAgentsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "ListAssessmentRuns":{ "name":"ListAssessmentRuns", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListAssessmentRunsRequest"}, "output":{"shape":"ListAssessmentRunsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "ListAssessmentTargets":{ "name":"ListAssessmentTargets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListAssessmentTargetsRequest"}, "output":{"shape":"ListAssessmentTargetsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"} ] }, "ListAssessmentTemplates":{ "name":"ListAssessmentTemplates", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListAssessmentTemplatesRequest"}, "output":{"shape":"ListAssessmentTemplatesResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "ListEventSubscriptions":{ "name":"ListEventSubscriptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListEventSubscriptionsRequest"}, "output":{"shape":"ListEventSubscriptionsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "ListFindings":{ "name":"ListFindings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListFindingsRequest"}, "output":{"shape":"ListFindingsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "ListRulesPackages":{ "name":"ListRulesPackages", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListRulesPackagesRequest"}, "output":{"shape":"ListRulesPackagesResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"} ] }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTagsForResourceRequest"}, "output":{"shape":"ListTagsForResourceResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "PreviewAgents":{ "name":"PreviewAgents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PreviewAgentsRequest"}, "output":{"shape":"PreviewAgentsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"}, {"shape":"InvalidCrossAccountRoleException"} ] }, "RegisterCrossAccountAccessRole":{ "name":"RegisterCrossAccountAccessRole", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterCrossAccountAccessRoleRequest"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"InvalidCrossAccountRoleException"} ] }, "RemoveAttributesFromFindings":{ "name":"RemoveAttributesFromFindings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveAttributesFromFindingsRequest"}, "output":{"shape":"RemoveAttributesFromFindingsResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "SetTagsForResource":{ "name":"SetTagsForResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetTagsForResourceRequest"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "StartAssessmentRun":{ "name":"StartAssessmentRun", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartAssessmentRunRequest"}, "output":{"shape":"StartAssessmentRunResponse"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"LimitExceededException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"}, {"shape":"InvalidCrossAccountRoleException"}, {"shape":"AgentsAlreadyRunningAssessmentException"} ] }, "StopAssessmentRun":{ "name":"StopAssessmentRun", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopAssessmentRunRequest"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "SubscribeToEvent":{ "name":"SubscribeToEvent", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SubscribeToEventRequest"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"LimitExceededException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "UnsubscribeFromEvent":{ "name":"UnsubscribeFromEvent", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UnsubscribeFromEventRequest"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] }, "UpdateAssessmentTarget":{ "name":"UpdateAssessmentTarget", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateAssessmentTargetRequest"}, "errors":[ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"AccessDeniedException"}, {"shape":"NoSuchEntityException"} ] } }, "shapes":{ "AccessDeniedErrorCode":{ "type":"string", "enum":[ "ACCESS_DENIED_TO_ASSESSMENT_TARGET", "ACCESS_DENIED_TO_ASSESSMENT_TEMPLATE", "ACCESS_DENIED_TO_ASSESSMENT_RUN", "ACCESS_DENIED_TO_FINDING", "ACCESS_DENIED_TO_RESOURCE_GROUP", "ACCESS_DENIED_TO_RULES_PACKAGE", "ACCESS_DENIED_TO_SNS_TOPIC", "ACCESS_DENIED_TO_IAM_ROLE" ] }, "AccessDeniedException":{ "type":"structure", "required":[ "message", "errorCode", "canRetry" ], "members":{ "message":{"shape":"ErrorMessage"}, "errorCode":{"shape":"AccessDeniedErrorCode"}, "canRetry":{"shape":"Bool"} }, "exception":true }, "AddAttributesToFindingsRequest":{ "type":"structure", "required":[ "findingArns", "attributes" ], "members":{ "findingArns":{"shape":"AddRemoveAttributesFindingArnList"}, "attributes":{"shape":"UserAttributeList"} } }, "AddAttributesToFindingsResponse":{ "type":"structure", "required":["failedItems"], "members":{ "failedItems":{"shape":"FailedItems"} } }, "AddRemoveAttributesFindingArnList":{ "type":"list", "member":{"shape":"Arn"}, "max":10, "min":1 }, "AgentAlreadyRunningAssessment":{ "type":"structure", "required":[ "agentId", "assessmentRunArn" ], "members":{ "agentId":{"shape":"AgentId"}, "assessmentRunArn":{"shape":"Arn"} } }, "AgentAlreadyRunningAssessmentList":{ "type":"list", "member":{"shape":"AgentAlreadyRunningAssessment"}, "max":10, "min":1 }, "AgentFilter":{ "type":"structure", "required":[ "agentHealths", "agentHealthCodes" ], "members":{ "agentHealths":{"shape":"AgentHealthList"}, "agentHealthCodes":{"shape":"AgentHealthCodeList"} } }, "AgentHealth":{ "type":"string", "enum":[ "HEALTHY", "UNHEALTHY" ] }, "AgentHealthCode":{ "type":"string", "enum":[ "IDLE", "RUNNING", "SHUTDOWN", "UNHEALTHY", "THROTTLED", "UNKNOWN" ] }, "AgentHealthCodeList":{ "type":"list", "member":{"shape":"AgentHealthCode"}, "max":10, "min":0 }, "AgentHealthList":{ "type":"list", "member":{"shape":"AgentHealth"}, "max":10, "min":0 }, "AgentId":{ "type":"string", "max":128, "min":1 }, "AgentIdList":{ "type":"list", "member":{"shape":"AgentId"}, "max":500, "min":0 }, "AgentPreview":{ "type":"structure", "required":["agentId"], "members":{ "agentId":{"shape":"AgentId"}, "autoScalingGroup":{"shape":"AutoScalingGroup"} } }, "AgentPreviewList":{ "type":"list", "member":{"shape":"AgentPreview"}, "max":100, "min":0 }, "AgentsAlreadyRunningAssessmentException":{ "type":"structure", "required":[ "message", "agents", "agentsTruncated", "canRetry" ], "members":{ "message":{"shape":"ErrorMessage"}, "agents":{"shape":"AgentAlreadyRunningAssessmentList"}, "agentsTruncated":{"shape":"Bool"}, "canRetry":{"shape":"Bool"} }, "exception":true }, "AmiId":{ "type":"string", "max":256, "min":0 }, "Arn":{ "type":"string", "max":300, "min":1 }, "AssessmentRulesPackageArnList":{ "type":"list", "member":{"shape":"Arn"}, "max":50, "min":1 }, "AssessmentRun":{ "type":"structure", "required":[ "arn", "name", "assessmentTemplateArn", "state", "durationInSeconds", "rulesPackageArns", "userAttributesForFindings", "createdAt", "stateChangedAt", "dataCollected", "stateChanges", "notifications" ], "members":{ "arn":{"shape":"Arn"}, "name":{"shape":"AssessmentRunName"}, "assessmentTemplateArn":{"shape":"Arn"}, "state":{"shape":"AssessmentRunState"}, "durationInSeconds":{"shape":"AssessmentRunDuration"}, "rulesPackageArns":{"shape":"AssessmentRulesPackageArnList"}, "userAttributesForFindings":{"shape":"UserAttributeList"}, "createdAt":{"shape":"Timestamp"}, "startedAt":{"shape":"Timestamp"}, "completedAt":{"shape":"Timestamp"}, "stateChangedAt":{"shape":"Timestamp"}, "dataCollected":{"shape":"Bool"}, "stateChanges":{"shape":"AssessmentRunStateChangeList"}, "notifications":{"shape":"AssessmentRunNotificationList"} } }, "AssessmentRunAgent":{ "type":"structure", "required":[ "agentId", "assessmentRunArn", "agentHealth", "agentHealthCode", "telemetryMetadata" ], "members":{ "agentId":{"shape":"AgentId"}, "assessmentRunArn":{"shape":"Arn"}, "agentHealth":{"shape":"AgentHealth"}, "agentHealthCode":{"shape":"AgentHealthCode"}, "agentHealthDetails":{"shape":"Message"}, "autoScalingGroup":{"shape":"AutoScalingGroup"}, "telemetryMetadata":{"shape":"TelemetryMetadataList"} } }, "AssessmentRunAgentList":{ "type":"list", "member":{"shape":"AssessmentRunAgent"}, "max":500, "min":0 }, "AssessmentRunDuration":{ "type":"integer", "max":86400, "min":180 }, "AssessmentRunFilter":{ "type":"structure", "members":{ "namePattern":{"shape":"NamePattern"}, "states":{"shape":"AssessmentRunStateList"}, "durationRange":{"shape":"DurationRange"}, "rulesPackageArns":{"shape":"FilterRulesPackageArnList"}, "startTimeRange":{"shape":"TimestampRange"}, "completionTimeRange":{"shape":"TimestampRange"}, "stateChangeTimeRange":{"shape":"TimestampRange"} } }, "AssessmentRunInProgressArnList":{ "type":"list", "member":{"shape":"Arn"}, "max":10, "min":1 }, "AssessmentRunInProgressException":{ "type":"structure", "required":[ "message", "assessmentRunArns", "assessmentRunArnsTruncated", "canRetry" ], "members":{ "message":{"shape":"ErrorMessage"}, "assessmentRunArns":{"shape":"AssessmentRunInProgressArnList"}, "assessmentRunArnsTruncated":{"shape":"Bool"}, "canRetry":{"shape":"Bool"} }, "exception":true }, "AssessmentRunList":{ "type":"list", "member":{"shape":"AssessmentRun"}, "max":10, "min":0 }, "AssessmentRunName":{ "type":"string", "max":140, "min":1 }, "AssessmentRunNotification":{ "type":"structure", "required":[ "date", "event", "error" ], "members":{ "date":{"shape":"Timestamp"}, "event":{"shape":"InspectorEvent"}, "message":{"shape":"Message"}, "error":{"shape":"Bool"}, "snsTopicArn":{"shape":"Arn"}, "snsPublishStatusCode":{"shape":"AssessmentRunNotificationSnsStatusCode"} } }, "AssessmentRunNotificationList":{ "type":"list", "member":{"shape":"AssessmentRunNotification"}, "max":50, "min":0 }, "AssessmentRunNotificationSnsStatusCode":{ "type":"string", "enum":[ "SUCCESS", "TOPIC_DOES_NOT_EXIST", "ACCESS_DENIED", "INTERNAL_ERROR" ] }, "AssessmentRunState":{ "type":"string", "enum":[ "CREATED", "START_DATA_COLLECTION_PENDING", "START_DATA_COLLECTION_IN_PROGRESS", "COLLECTING_DATA", "STOP_DATA_COLLECTION_PENDING", "DATA_COLLECTED", "EVALUATING_RULES", "FAILED", "COMPLETED", "COMPLETED_WITH_ERRORS" ] }, "AssessmentRunStateChange":{ "type":"structure", "required":[ "stateChangedAt", "state" ], "members":{ "stateChangedAt":{"shape":"Timestamp"}, "state":{"shape":"AssessmentRunState"} } }, "AssessmentRunStateChangeList":{ "type":"list", "member":{"shape":"AssessmentRunStateChange"}, "max":50, "min":0 }, "AssessmentRunStateList":{ "type":"list", "member":{"shape":"AssessmentRunState"}, "max":50, "min":0 }, "AssessmentTarget":{ "type":"structure", "required":[ "arn", "name", "resourceGroupArn", "createdAt", "updatedAt" ], "members":{ "arn":{"shape":"Arn"}, "name":{"shape":"AssessmentTargetName"}, "resourceGroupArn":{"shape":"Arn"}, "createdAt":{"shape":"Timestamp"}, "updatedAt":{"shape":"Timestamp"} } }, "AssessmentTargetFilter":{ "type":"structure", "members":{ "assessmentTargetNamePattern":{"shape":"NamePattern"} } }, "AssessmentTargetList":{ "type":"list", "member":{"shape":"AssessmentTarget"}, "max":10, "min":0 }, "AssessmentTargetName":{ "type":"string", "max":140, "min":1 }, "AssessmentTemplate":{ "type":"structure", "required":[ "arn", "name", "assessmentTargetArn", "durationInSeconds", "rulesPackageArns", "userAttributesForFindings", "createdAt" ], "members":{ "arn":{"shape":"Arn"}, "name":{"shape":"AssessmentTemplateName"}, "assessmentTargetArn":{"shape":"Arn"}, "durationInSeconds":{"shape":"AssessmentRunDuration"}, "rulesPackageArns":{"shape":"AssessmentTemplateRulesPackageArnList"}, "userAttributesForFindings":{"shape":"UserAttributeList"}, "createdAt":{"shape":"Timestamp"} } }, "AssessmentTemplateFilter":{ "type":"structure", "members":{ "namePattern":{"shape":"NamePattern"}, "durationRange":{"shape":"DurationRange"}, "rulesPackageArns":{"shape":"FilterRulesPackageArnList"} } }, "AssessmentTemplateList":{ "type":"list", "member":{"shape":"AssessmentTemplate"}, "max":10, "min":0 }, "AssessmentTemplateName":{ "type":"string", "max":140, "min":1 }, "AssessmentTemplateRulesPackageArnList":{ "type":"list", "member":{"shape":"Arn"}, "max":50, "min":0 }, "AssetAttributes":{ "type":"structure", "required":["schemaVersion"], "members":{ "schemaVersion":{"shape":"NumericVersion"}, "agentId":{"shape":"AgentId"}, "autoScalingGroup":{"shape":"AutoScalingGroup"}, "amiId":{"shape":"AmiId"}, "hostname":{"shape":"Hostname"}, "ipv4Addresses":{"shape":"Ipv4AddressList"} } }, "AssetType":{ "type":"string", "enum":["ec2-instance"] }, "Attribute":{ "type":"structure", "required":["key"], "members":{ "key":{"shape":"AttributeKey"}, "value":{"shape":"AttributeValue"} } }, "AttributeKey":{ "type":"string", "max":128, "min":1 }, "AttributeList":{ "type":"list", "member":{"shape":"Attribute"}, "max":50, "min":0 }, "AttributeValue":{ "type":"string", "max":256, "min":1 }, "AutoScalingGroup":{ "type":"string", "max":256, "min":1 }, "AutoScalingGroupList":{ "type":"list", "member":{"shape":"AutoScalingGroup"}, "max":20, "min":0 }, "BatchDescribeArnList":{ "type":"list", "member":{"shape":"Arn"}, "max":10, "min":1 }, "Bool":{"type":"boolean"}, "CreateAssessmentTargetRequest":{ "type":"structure", "required":[ "assessmentTargetName", "resourceGroupArn" ], "members":{ "assessmentTargetName":{"shape":"AssessmentTargetName"}, "resourceGroupArn":{"shape":"Arn"} } }, "CreateAssessmentTargetResponse":{ "type":"structure", "required":["assessmentTargetArn"], "members":{ "assessmentTargetArn":{"shape":"Arn"} } }, "CreateAssessmentTemplateRequest":{ "type":"structure", "required":[ "assessmentTargetArn", "assessmentTemplateName", "durationInSeconds", "rulesPackageArns" ], "members":{ "assessmentTargetArn":{"shape":"Arn"}, "assessmentTemplateName":{"shape":"AssessmentTemplateName"}, "durationInSeconds":{"shape":"AssessmentRunDuration"}, "rulesPackageArns":{"shape":"AssessmentTemplateRulesPackageArnList"}, "userAttributesForFindings":{"shape":"UserAttributeList"} } }, "CreateAssessmentTemplateResponse":{ "type":"structure", "required":["assessmentTemplateArn"], "members":{ "assessmentTemplateArn":{"shape":"Arn"} } }, "CreateResourceGroupRequest":{ "type":"structure", "required":["resourceGroupTags"], "members":{ "resourceGroupTags":{"shape":"ResourceGroupTags"} } }, "CreateResourceGroupResponse":{ "type":"structure", "required":["resourceGroupArn"], "members":{ "resourceGroupArn":{"shape":"Arn"} } }, "DeleteAssessmentRunRequest":{ "type":"structure", "required":["assessmentRunArn"], "members":{ "assessmentRunArn":{"shape":"Arn"} } }, "DeleteAssessmentTargetRequest":{ "type":"structure", "required":["assessmentTargetArn"], "members":{ "assessmentTargetArn":{"shape":"Arn"} } }, "DeleteAssessmentTemplateRequest":{ "type":"structure", "required":["assessmentTemplateArn"], "members":{ "assessmentTemplateArn":{"shape":"Arn"} } }, "DescribeAssessmentRunsRequest":{ "type":"structure", "required":["assessmentRunArns"], "members":{ "assessmentRunArns":{"shape":"BatchDescribeArnList"} } }, "DescribeAssessmentRunsResponse":{ "type":"structure", "required":[ "assessmentRuns", "failedItems" ], "members":{ "assessmentRuns":{"shape":"AssessmentRunList"}, "failedItems":{"shape":"FailedItems"} } }, "DescribeAssessmentTargetsRequest":{ "type":"structure", "required":["assessmentTargetArns"], "members":{ "assessmentTargetArns":{"shape":"BatchDescribeArnList"} } }, "DescribeAssessmentTargetsResponse":{ "type":"structure", "required":[ "assessmentTargets", "failedItems" ], "members":{ "assessmentTargets":{"shape":"AssessmentTargetList"}, "failedItems":{"shape":"FailedItems"} } }, "DescribeAssessmentTemplatesRequest":{ "type":"structure", "required":["assessmentTemplateArns"], "members":{ "assessmentTemplateArns":{"shape":"BatchDescribeArnList"} } }, "DescribeAssessmentTemplatesResponse":{ "type":"structure", "required":[ "assessmentTemplates", "failedItems" ], "members":{ "assessmentTemplates":{"shape":"AssessmentTemplateList"}, "failedItems":{"shape":"FailedItems"} } }, "DescribeCrossAccountAccessRoleResponse":{ "type":"structure", "required":[ "roleArn", "valid", "registeredAt" ], "members":{ "roleArn":{"shape":"Arn"}, "valid":{"shape":"Bool"}, "registeredAt":{"shape":"Timestamp"} } }, "DescribeFindingsRequest":{ "type":"structure", "required":["findingArns"], "members":{ "findingArns":{"shape":"BatchDescribeArnList"}, "locale":{"shape":"Locale"} } }, "DescribeFindingsResponse":{ "type":"structure", "required":[ "findings", "failedItems" ], "members":{ "findings":{"shape":"FindingList"}, "failedItems":{"shape":"FailedItems"} } }, "DescribeResourceGroupsRequest":{ "type":"structure", "required":["resourceGroupArns"], "members":{ "resourceGroupArns":{"shape":"BatchDescribeArnList"} } }, "DescribeResourceGroupsResponse":{ "type":"structure", "required":[ "resourceGroups", "failedItems" ], "members":{ "resourceGroups":{"shape":"ResourceGroupList"}, "failedItems":{"shape":"FailedItems"} } }, "DescribeRulesPackagesRequest":{ "type":"structure", "required":["rulesPackageArns"], "members":{ "rulesPackageArns":{"shape":"BatchDescribeArnList"}, "locale":{"shape":"Locale"} } }, "DescribeRulesPackagesResponse":{ "type":"structure", "required":[ "rulesPackages", "failedItems" ], "members":{ "rulesPackages":{"shape":"RulesPackageList"}, "failedItems":{"shape":"FailedItems"} } }, "DurationRange":{ "type":"structure", "members":{ "minSeconds":{"shape":"AssessmentRunDuration"}, "maxSeconds":{"shape":"AssessmentRunDuration"} } }, "ErrorMessage":{ "type":"string", "max":1000, "min":0 }, "EventSubscription":{ "type":"structure", "required":[ "event", "subscribedAt" ], "members":{ "event":{"shape":"InspectorEvent"}, "subscribedAt":{"shape":"Timestamp"} } }, "EventSubscriptionList":{ "type":"list", "member":{"shape":"EventSubscription"}, "max":50, "min":1 }, "FailedItemDetails":{ "type":"structure", "required":[ "failureCode", "retryable" ], "members":{ "failureCode":{"shape":"FailedItemErrorCode"}, "retryable":{"shape":"Bool"} } }, "FailedItemErrorCode":{ "type":"string", "enum":[ "INVALID_ARN", "DUPLICATE_ARN", "ITEM_DOES_NOT_EXIST", "ACCESS_DENIED", "LIMIT_EXCEEDED", "INTERNAL_ERROR" ] }, "FailedItems":{ "type":"map", "key":{"shape":"Arn"}, "value":{"shape":"FailedItemDetails"} }, "FilterRulesPackageArnList":{ "type":"list", "member":{"shape":"Arn"}, "max":50, "min":0 }, "Finding":{ "type":"structure", "required":[ "arn", "attributes", "userAttributes", "createdAt", "updatedAt" ], "members":{ "arn":{"shape":"Arn"}, "schemaVersion":{"shape":"NumericVersion"}, "service":{"shape":"ServiceName"}, "serviceAttributes":{"shape":"InspectorServiceAttributes"}, "assetType":{"shape":"AssetType"}, "assetAttributes":{"shape":"AssetAttributes"}, "id":{"shape":"FindingId"}, "title":{"shape":"Text"}, "description":{"shape":"Text"}, "recommendation":{"shape":"Text"}, "severity":{"shape":"Severity"}, "numericSeverity":{"shape":"NumericSeverity"}, "confidence":{"shape":"IocConfidence"}, "indicatorOfCompromise":{"shape":"Bool"}, "attributes":{"shape":"AttributeList"}, "userAttributes":{"shape":"UserAttributeList"}, "createdAt":{"shape":"Timestamp"}, "updatedAt":{"shape":"Timestamp"} } }, "FindingFilter":{ "type":"structure", "members":{ "agentIds":{"shape":"AgentIdList"}, "autoScalingGroups":{"shape":"AutoScalingGroupList"}, "ruleNames":{"shape":"RuleNameList"}, "severities":{"shape":"SeverityList"}, "rulesPackageArns":{"shape":"FilterRulesPackageArnList"}, "attributes":{"shape":"AttributeList"}, "userAttributes":{"shape":"AttributeList"}, "creationTimeRange":{"shape":"TimestampRange"} } }, "FindingId":{ "type":"string", "max":128, "min":0 }, "FindingList":{ "type":"list", "member":{"shape":"Finding"}, "max":10, "min":0 }, "GetTelemetryMetadataRequest":{ "type":"structure", "required":["assessmentRunArn"], "members":{ "assessmentRunArn":{"shape":"Arn"} } }, "GetTelemetryMetadataResponse":{ "type":"structure", "required":["telemetryMetadata"], "members":{ "telemetryMetadata":{"shape":"TelemetryMetadataList"} } }, "Hostname":{ "type":"string", "max":256, "min":0 }, "InspectorEvent":{ "type":"string", "enum":[ "ASSESSMENT_RUN_STARTED", "ASSESSMENT_RUN_COMPLETED", "ASSESSMENT_RUN_STATE_CHANGED", "FINDING_REPORTED", "OTHER" ] }, "InspectorServiceAttributes":{ "type":"structure", "required":["schemaVersion"], "members":{ "schemaVersion":{"shape":"NumericVersion"}, "assessmentRunArn":{"shape":"Arn"}, "rulesPackageArn":{"shape":"Arn"} } }, "InternalException":{ "type":"structure", "required":[ "message", "canRetry" ], "members":{ "message":{"shape":"ErrorMessage"}, "canRetry":{"shape":"Bool"} }, "exception":true, "fault":true }, "InvalidCrossAccountRoleErrorCode":{ "type":"string", "enum":[ "ROLE_DOES_NOT_EXIST_OR_INVALID_TRUST_RELATIONSHIP", "ROLE_DOES_NOT_HAVE_CORRECT_POLICY" ] }, "InvalidCrossAccountRoleException":{ "type":"structure", "required":[ "message", "errorCode", "canRetry" ], "members":{ "message":{"shape":"ErrorMessage"}, "errorCode":{"shape":"InvalidCrossAccountRoleErrorCode"}, "canRetry":{"shape":"Bool"} }, "exception":true }, "InvalidInputErrorCode":{ "type":"string", "enum":[ "INVALID_ASSESSMENT_TARGET_ARN", "INVALID_ASSESSMENT_TEMPLATE_ARN", "INVALID_ASSESSMENT_RUN_ARN", "INVALID_FINDING_ARN", "INVALID_RESOURCE_GROUP_ARN", "INVALID_RULES_PACKAGE_ARN", "INVALID_RESOURCE_ARN", "INVALID_SNS_TOPIC_ARN", "INVALID_IAM_ROLE_ARN", "INVALID_ASSESSMENT_TARGET_NAME", "INVALID_ASSESSMENT_TARGET_NAME_PATTERN", "INVALID_ASSESSMENT_TEMPLATE_NAME", "INVALID_ASSESSMENT_TEMPLATE_NAME_PATTERN", "INVALID_ASSESSMENT_TEMPLATE_DURATION", "INVALID_ASSESSMENT_TEMPLATE_DURATION_RANGE", "INVALID_ASSESSMENT_RUN_DURATION_RANGE", "INVALID_ASSESSMENT_RUN_START_TIME_RANGE", "INVALID_ASSESSMENT_RUN_COMPLETION_TIME_RANGE", "INVALID_ASSESSMENT_RUN_STATE_CHANGE_TIME_RANGE", "INVALID_ASSESSMENT_RUN_STATE", "INVALID_TAG", "INVALID_TAG_KEY", "INVALID_TAG_VALUE", "INVALID_RESOURCE_GROUP_TAG_KEY", "INVALID_RESOURCE_GROUP_TAG_VALUE", "INVALID_ATTRIBUTE", "INVALID_USER_ATTRIBUTE", "INVALID_USER_ATTRIBUTE_KEY", "INVALID_USER_ATTRIBUTE_VALUE", "INVALID_PAGINATION_TOKEN", "INVALID_MAX_RESULTS", "INVALID_AGENT_ID", "INVALID_AUTO_SCALING_GROUP", "INVALID_RULE_NAME", "INVALID_SEVERITY", "INVALID_LOCALE", "INVALID_EVENT", "ASSESSMENT_TARGET_NAME_ALREADY_TAKEN", "ASSESSMENT_TEMPLATE_NAME_ALREADY_TAKEN", "INVALID_NUMBER_OF_ASSESSMENT_TARGET_ARNS", "INVALID_NUMBER_OF_ASSESSMENT_TEMPLATE_ARNS", "INVALID_NUMBER_OF_ASSESSMENT_RUN_ARNS", "INVALID_NUMBER_OF_FINDING_ARNS", "INVALID_NUMBER_OF_RESOURCE_GROUP_ARNS", "INVALID_NUMBER_OF_RULES_PACKAGE_ARNS", "INVALID_NUMBER_OF_ASSESSMENT_RUN_STATES", "INVALID_NUMBER_OF_TAGS", "INVALID_NUMBER_OF_RESOURCE_GROUP_TAGS", "INVALID_NUMBER_OF_ATTRIBUTES", "INVALID_NUMBER_OF_USER_ATTRIBUTES", "INVALID_NUMBER_OF_AGENT_IDS", "INVALID_NUMBER_OF_AUTO_SCALING_GROUPS", "INVALID_NUMBER_OF_RULE_NAMES", "INVALID_NUMBER_OF_SEVERITIES" ] }, "InvalidInputException":{ "type":"structure", "required":[ "message", "errorCode", "canRetry" ], "members":{ "message":{"shape":"ErrorMessage"}, "errorCode":{"shape":"InvalidInputErrorCode"}, "canRetry":{"shape":"Bool"} }, "exception":true }, "IocConfidence":{ "type":"integer", "max":10, "min":0 }, "Ipv4Address":{ "type":"string", "max":15, "min":7 }, "Ipv4AddressList":{ "type":"list", "member":{"shape":"Ipv4Address"}, "max":50, "min":0 }, "LimitExceededErrorCode":{ "type":"string", "enum":[ "ASSESSMENT_TARGET_LIMIT_EXCEEDED", "ASSESSMENT_TEMPLATE_LIMIT_EXCEEDED", "ASSESSMENT_RUN_LIMIT_EXCEEDED", "RESOURCE_GROUP_LIMIT_EXCEEDED", "EVENT_SUBSCRIPTION_LIMIT_EXCEEDED" ] }, "LimitExceededException":{ "type":"structure", "required":[ "message", "errorCode", "canRetry" ], "members":{ "message":{"shape":"ErrorMessage"}, "errorCode":{"shape":"LimitExceededErrorCode"}, "canRetry":{"shape":"Bool"} }, "exception":true }, "ListAssessmentRunAgentsRequest":{ "type":"structure", "required":["assessmentRunArn"], "members":{ "assessmentRunArn":{"shape":"Arn"}, "filter":{"shape":"AgentFilter"}, "nextToken":{"shape":"PaginationToken"}, "maxResults":{"shape":"ListMaxResults"} } }, "ListAssessmentRunAgentsResponse":{ "type":"structure", "required":["assessmentRunAgents"], "members":{ "assessmentRunAgents":{"shape":"AssessmentRunAgentList"}, "nextToken":{"shape":"PaginationToken"} } }, "ListAssessmentRunsRequest":{ "type":"structure", "members":{ "assessmentTemplateArns":{"shape":"ListParentArnList"}, "filter":{"shape":"AssessmentRunFilter"}, "nextToken":{"shape":"PaginationToken"}, "maxResults":{"shape":"ListMaxResults"} } }, "ListAssessmentRunsResponse":{ "type":"structure", "required":["assessmentRunArns"], "members":{ "assessmentRunArns":{"shape":"ListReturnedArnList"}, "nextToken":{"shape":"PaginationToken"} } }, "ListAssessmentTargetsRequest":{ "type":"structure", "members":{ "filter":{"shape":"AssessmentTargetFilter"}, "nextToken":{"shape":"PaginationToken"}, "maxResults":{"shape":"ListMaxResults"} } }, "ListAssessmentTargetsResponse":{ "type":"structure", "required":["assessmentTargetArns"], "members":{ "assessmentTargetArns":{"shape":"ListReturnedArnList"}, "nextToken":{"shape":"PaginationToken"} } }, "ListAssessmentTemplatesRequest":{ "type":"structure", "members":{ "assessmentTargetArns":{"shape":"ListParentArnList"}, "filter":{"shape":"AssessmentTemplateFilter"}, "nextToken":{"shape":"PaginationToken"}, "maxResults":{"shape":"ListMaxResults"} } }, "ListAssessmentTemplatesResponse":{ "type":"structure", "required":["assessmentTemplateArns"], "members":{ "assessmentTemplateArns":{"shape":"ListReturnedArnList"}, "nextToken":{"shape":"PaginationToken"} } }, "ListEventSubscriptionsMaxResults":{"type":"integer"}, "ListEventSubscriptionsRequest":{ "type":"structure", "members":{ "resourceArn":{"shape":"Arn"}, "nextToken":{"shape":"PaginationToken"}, "maxResults":{"shape":"ListEventSubscriptionsMaxResults"} } }, "ListEventSubscriptionsResponse":{ "type":"structure", "required":["subscriptions"], "members":{ "subscriptions":{"shape":"SubscriptionList"}, "nextToken":{"shape":"PaginationToken"} } }, "ListFindingsRequest":{ "type":"structure", "members":{ "assessmentRunArns":{"shape":"ListParentArnList"}, "filter":{"shape":"FindingFilter"}, "nextToken":{"shape":"PaginationToken"}, "maxResults":{"shape":"ListMaxResults"} } }, "ListFindingsResponse":{ "type":"structure", "required":["findingArns"], "members":{ "findingArns":{"shape":"ListReturnedArnList"}, "nextToken":{"shape":"PaginationToken"} } }, "ListMaxResults":{"type":"integer"}, "ListParentArnList":{ "type":"list", "member":{"shape":"Arn"}, "max":50, "min":0 }, "ListReturnedArnList":{ "type":"list", "member":{"shape":"Arn"}, "max":100, "min":0 }, "ListRulesPackagesRequest":{ "type":"structure", "members":{ "nextToken":{"shape":"PaginationToken"}, "maxResults":{"shape":"ListMaxResults"} } }, "ListRulesPackagesResponse":{ "type":"structure", "required":["rulesPackageArns"], "members":{ "rulesPackageArns":{"shape":"ListReturnedArnList"}, "nextToken":{"shape":"PaginationToken"} } }, "ListTagsForResourceRequest":{ "type":"structure", "required":["resourceArn"], "members":{ "resourceArn":{"shape":"Arn"} } }, "ListTagsForResourceResponse":{ "type":"structure", "required":["tags"], "members":{ "tags":{"shape":"TagList"} } }, "Locale":{ "type":"string", "enum":["EN_US"] }, "Long":{"type":"long"}, "Message":{ "type":"string", "max":1000, "min":0 }, "MessageType":{ "type":"string", "max":300, "min":1 }, "NamePattern":{ "type":"string", "max":140, "min":1 }, "NoSuchEntityErrorCode":{ "type":"string", "enum":[ "ASSESSMENT_TARGET_DOES_NOT_EXIST", "ASSESSMENT_TEMPLATE_DOES_NOT_EXIST", "ASSESSMENT_RUN_DOES_NOT_EXIST", "FINDING_DOES_NOT_EXIST", "RESOURCE_GROUP_DOES_NOT_EXIST", "RULES_PACKAGE_DOES_NOT_EXIST", "SNS_TOPIC_DOES_NOT_EXIST", "IAM_ROLE_DOES_NOT_EXIST" ] }, "NoSuchEntityException":{ "type":"structure", "required":[ "message", "errorCode", "canRetry" ], "members":{ "message":{"shape":"ErrorMessage"}, "errorCode":{"shape":"NoSuchEntityErrorCode"}, "canRetry":{"shape":"Bool"} }, "exception":true }, "NumericSeverity":{ "type":"double", "max":10.0, "min":0.0 }, "NumericVersion":{ "type":"integer", "min":0 }, "PaginationToken":{ "type":"string", "max":300, "min":1 }, "PreviewAgentsMaxResults":{"type":"integer"}, "PreviewAgentsRequest":{ "type":"structure", "required":["previewAgentsArn"], "members":{ "previewAgentsArn":{"shape":"Arn"}, "nextToken":{"shape":"PaginationToken"}, "maxResults":{"shape":"PreviewAgentsMaxResults"} } }, "PreviewAgentsResponse":{ "type":"structure", "required":["agentPreviews"], "members":{ "agentPreviews":{"shape":"AgentPreviewList"}, "nextToken":{"shape":"PaginationToken"} } }, "ProviderName":{ "type":"string", "max":1000, "min":0 }, "RegisterCrossAccountAccessRoleRequest":{ "type":"structure", "required":["roleArn"], "members":{ "roleArn":{"shape":"Arn"} } }, "RemoveAttributesFromFindingsRequest":{ "type":"structure", "required":[ "findingArns", "attributeKeys" ], "members":{ "findingArns":{"shape":"AddRemoveAttributesFindingArnList"}, "attributeKeys":{"shape":"UserAttributeKeyList"} } }, "RemoveAttributesFromFindingsResponse":{ "type":"structure", "required":["failedItems"], "members":{ "failedItems":{"shape":"FailedItems"} } }, "ResourceGroup":{ "type":"structure", "required":[ "arn", "tags", "createdAt" ], "members":{ "arn":{"shape":"Arn"}, "tags":{"shape":"ResourceGroupTags"}, "createdAt":{"shape":"Timestamp"} } }, "ResourceGroupList":{ "type":"list", "member":{"shape":"ResourceGroup"}, "max":10, "min":0 }, "ResourceGroupTag":{ "type":"structure", "required":["key"], "members":{ "key":{"shape":"TagKey"}, "value":{"shape":"TagValue"} } }, "ResourceGroupTags":{ "type":"list", "member":{"shape":"ResourceGroupTag"}, "max":10, "min":1 }, "RuleName":{ "type":"string", "max":1000 }, "RuleNameList":{ "type":"list", "member":{"shape":"RuleName"}, "max":50, "min":0 }, "RulesPackage":{ "type":"structure", "required":[ "arn", "name", "version", "provider" ], "members":{ "arn":{"shape":"Arn"}, "name":{"shape":"RulesPackageName"}, "version":{"shape":"Version"}, "provider":{"shape":"ProviderName"}, "description":{"shape":"Text"} } }, "RulesPackageList":{ "type":"list", "member":{"shape":"RulesPackage"}, "max":10, "min":0 }, "RulesPackageName":{ "type":"string", "max":1000, "min":0 }, "ServiceName":{ "type":"string", "max":128, "min":0 }, "SetTagsForResourceRequest":{ "type":"structure", "required":["resourceArn"], "members":{ "resourceArn":{"shape":"Arn"}, "tags":{"shape":"TagList"} } }, "Severity":{ "type":"string", "enum":[ "Low", "Medium", "High", "Informational", "Undefined" ] }, "SeverityList":{ "type":"list", "member":{"shape":"Severity"}, "max":50, "min":0 }, "StartAssessmentRunRequest":{ "type":"structure", "required":["assessmentTemplateArn"], "members":{ "assessmentTemplateArn":{"shape":"Arn"}, "assessmentRunName":{"shape":"AssessmentRunName"} } }, "StartAssessmentRunResponse":{ "type":"structure", "required":["assessmentRunArn"], "members":{ "assessmentRunArn":{"shape":"Arn"} } }, "StopAssessmentRunRequest":{ "type":"structure", "required":["assessmentRunArn"], "members":{ "assessmentRunArn":{"shape":"Arn"} } }, "SubscribeToEventRequest":{ "type":"structure", "required":[ "resourceArn", "event", "topicArn" ], "members":{ "resourceArn":{"shape":"Arn"}, "event":{"shape":"InspectorEvent"}, "topicArn":{"shape":"Arn"} } }, "Subscription":{ "type":"structure", "required":[ "resourceArn", "topicArn", "eventSubscriptions" ], "members":{ "resourceArn":{"shape":"Arn"}, "topicArn":{"shape":"Arn"}, "eventSubscriptions":{"shape":"EventSubscriptionList"} } }, "SubscriptionList":{ "type":"list", "member":{"shape":"Subscription"}, "max":50, "min":0 }, "Tag":{ "type":"structure", "required":["key"], "members":{ "key":{"shape":"TagKey"}, "value":{"shape":"TagValue"} } }, "TagKey":{ "type":"string", "max":128, "min":1 }, "TagList":{ "type":"list", "member":{"shape":"Tag"}, "max":10, "min":0 }, "TagValue":{ "type":"string", "max":256, "min":1 }, "TelemetryMetadata":{ "type":"structure", "required":[ "messageType", "count" ], "members":{ "messageType":{"shape":"MessageType"}, "count":{"shape":"Long"}, "dataSize":{"shape":"Long"} } }, "TelemetryMetadataList":{ "type":"list", "member":{"shape":"TelemetryMetadata"}, "max":5000, "min":0 }, "Text":{ "type":"string", "max":20000, "min":0 }, "Timestamp":{"type":"timestamp"}, "TimestampRange":{ "type":"structure", "members":{ "beginDate":{"shape":"Timestamp"}, "endDate":{"shape":"Timestamp"} } }, "UnsubscribeFromEventRequest":{ "type":"structure", "required":[ "resourceArn", "event", "topicArn" ], "members":{ "resourceArn":{"shape":"Arn"}, "event":{"shape":"InspectorEvent"}, "topicArn":{"shape":"Arn"} } }, "UpdateAssessmentTargetRequest":{ "type":"structure", "required":[ "assessmentTargetArn", "assessmentTargetName", "resourceGroupArn" ], "members":{ "assessmentTargetArn":{"shape":"Arn"}, "assessmentTargetName":{"shape":"AssessmentTargetName"}, "resourceGroupArn":{"shape":"Arn"} } }, "UserAttributeKeyList":{ "type":"list", "member":{"shape":"AttributeKey"}, "max":10, "min":0 }, "UserAttributeList":{ "type":"list", "member":{"shape":"Attribute"}, "max":10, "min":0 }, "Version":{ "type":"string", "max":1000, "min":0 } } } aws-sdk-go-1.4.22/models/apis/inspector/2016-02-16/docs-2.json000066400000000000000000001751741300374646400230440ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon Inspector

        Amazon Inspector enables you to analyze the behavior of your AWS resources and to identify potential security issues. For more information, see Amazon Inspector User Guide.

        ", "operations": { "AddAttributesToFindings": "

        Assigns attributes (key and value pairs) to the findings that are specified by the ARNs of the findings.

        ", "CreateAssessmentTarget": "

        Creates a new assessment target using the ARN of the resource group that is generated by CreateResourceGroup. You can create up to 50 assessment targets per AWS account. You can run up to 500 concurrent agents per AWS account. For more information, see Amazon Inspector Assessment Targets.

        ", "CreateAssessmentTemplate": "

        Creates an assessment template for the assessment target that is specified by the ARN of the assessment target.

        ", "CreateResourceGroup": "

        Creates a resource group using the specified set of tags (key and value pairs) that are used to select the EC2 instances to be included in an Amazon Inspector assessment target. The created resource group is then used to create an Amazon Inspector assessment target. For more information, see CreateAssessmentTarget.

        ", "DeleteAssessmentRun": "

        Deletes the assessment run that is specified by the ARN of the assessment run.

        ", "DeleteAssessmentTarget": "

        Deletes the assessment target that is specified by the ARN of the assessment target.

        ", "DeleteAssessmentTemplate": "

        Deletes the assessment template that is specified by the ARN of the assessment template.

        ", "DescribeAssessmentRuns": "

        Describes the assessment runs that are specified by the ARNs of the assessment runs.

        ", "DescribeAssessmentTargets": "

        Describes the assessment targets that are specified by the ARNs of the assessment targets.

        ", "DescribeAssessmentTemplates": "

        Describes the assessment templates that are specified by the ARNs of the assessment templates.

        ", "DescribeCrossAccountAccessRole": "

        Describes the IAM role that enables Amazon Inspector to access your AWS account.

        ", "DescribeFindings": "

        Describes the findings that are specified by the ARNs of the findings.

        ", "DescribeResourceGroups": "

        Describes the resource groups that are specified by the ARNs of the resource groups.

        ", "DescribeRulesPackages": "

        Describes the rules packages that are specified by the ARNs of the rules packages.

        ", "GetTelemetryMetadata": "

        Information about the data that is collected for the specified assessment run.

        ", "ListAssessmentRunAgents": "

        Lists the agents of the assessment runs that are specified by the ARNs of the assessment runs.

        ", "ListAssessmentRuns": "

        Lists the assessment runs that correspond to the assessment templates that are specified by the ARNs of the assessment templates.

        ", "ListAssessmentTargets": "

        Lists the ARNs of the assessment targets within this AWS account. For more information about assessment targets, see Amazon Inspector Assessment Targets.

        ", "ListAssessmentTemplates": "

        Lists the assessment templates that correspond to the assessment targets that are specified by the ARNs of the assessment targets.

        ", "ListEventSubscriptions": "

        Lists all the event subscriptions for the assessment template that is specified by the ARN of the assessment template. For more information, see SubscribeToEvent and UnsubscribeFromEvent.

        ", "ListFindings": "

        Lists findings that are generated by the assessment runs that are specified by the ARNs of the assessment runs.

        ", "ListRulesPackages": "

        Lists all available Amazon Inspector rules packages.

        ", "ListTagsForResource": "

        Lists all tags associated with an assessment template.

        ", "PreviewAgents": "

        Previews the agents installed on the EC2 instances that are part of the specified assessment target.

        ", "RegisterCrossAccountAccessRole": "

        Registers the IAM role that Amazon Inspector uses to list your EC2 instances at the start of the assessment run or when you call the PreviewAgents action.

        ", "RemoveAttributesFromFindings": "

        Removes entire attributes (key and value pairs) from the findings that are specified by the ARNs of the findings where an attribute with the specified key exists.

        ", "SetTagsForResource": "

        Sets tags (key and value pairs) to the assessment template that is specified by the ARN of the assessment template.

        ", "StartAssessmentRun": "

        Starts the assessment run specified by the ARN of the assessment template. For this API to function properly, you must not exceed the limit of running up to 500 concurrent agents per AWS account.

        ", "StopAssessmentRun": "

        Stops the assessment run that is specified by the ARN of the assessment run.

        ", "SubscribeToEvent": "

        Enables the process of sending Amazon Simple Notification Service (SNS) notifications about a specified event to a specified SNS topic.

        ", "UnsubscribeFromEvent": "

        Disables the process of sending Amazon Simple Notification Service (SNS) notifications about a specified event to a specified SNS topic.

        ", "UpdateAssessmentTarget": "

        Updates the assessment target that is specified by the ARN of the assessment target.

        " }, "shapes": { "AccessDeniedErrorCode": { "base": null, "refs": { "AccessDeniedException$errorCode": "

        Code that indicates the type of error that is generated.

        " } }, "AccessDeniedException": { "base": "

        You do not have required permissions to access the requested resource.

        ", "refs": { } }, "AddAttributesToFindingsRequest": { "base": null, "refs": { } }, "AddAttributesToFindingsResponse": { "base": null, "refs": { } }, "AddRemoveAttributesFindingArnList": { "base": null, "refs": { "AddAttributesToFindingsRequest$findingArns": "

        The ARNs that specify the findings that you want to assign attributes to.

        ", "RemoveAttributesFromFindingsRequest$findingArns": "

        The ARNs that specify the findings that you want to remove attributes from.

        " } }, "AgentAlreadyRunningAssessment": { "base": "

        Used in the exception error that is thrown if you start an assessment run for an assessment target that includes an EC2 instance that is already participating in another started assessment run.

        ", "refs": { "AgentAlreadyRunningAssessmentList$member": null } }, "AgentAlreadyRunningAssessmentList": { "base": null, "refs": { "AgentsAlreadyRunningAssessmentException$agents": "

        " } }, "AgentFilter": { "base": "

        Contains information about an Amazon Inspector agent. This data type is used as a request parameter in the ListAssessmentRunAgents action.

        ", "refs": { "ListAssessmentRunAgentsRequest$filter": "

        You can use this parameter to specify a subset of data to be included in the action's response.

        For a record to match a filter, all specified filter attributes must match. When multiple values are specified for a filter attribute, any of the values can match.

        " } }, "AgentHealth": { "base": null, "refs": { "AgentHealthList$member": null, "AssessmentRunAgent$agentHealth": "

        The current health state of the agent.

        " } }, "AgentHealthCode": { "base": null, "refs": { "AgentHealthCodeList$member": null, "AssessmentRunAgent$agentHealthCode": "

        The detailed health state of the agent.

        " } }, "AgentHealthCodeList": { "base": null, "refs": { "AgentFilter$agentHealthCodes": "

        The detailed health state of the agent. Values can be set to IDLE, RUNNING, SHUTDOWN, UNHEALTHY, THROTTLED, and UNKNOWN.

        " } }, "AgentHealthList": { "base": null, "refs": { "AgentFilter$agentHealths": "

        The current health state of the agent. Values can be set to HEALTHY or UNHEALTHY.

        " } }, "AgentId": { "base": null, "refs": { "AgentAlreadyRunningAssessment$agentId": "

        ID of the agent that is running on an EC2 instance that is already participating in another started assessment run.

        ", "AgentIdList$member": null, "AgentPreview$agentId": "

        The ID of the EC2 instance where the agent is installed.

        ", "AssessmentRunAgent$agentId": "

        The AWS account of the EC2 instance where the agent is installed.

        ", "AssetAttributes$agentId": "

        The ID of the agent that is installed on the EC2 instance where the finding is generated.

        " } }, "AgentIdList": { "base": null, "refs": { "FindingFilter$agentIds": "

        For a record to match a filter, one of the values that is specified for this data type property must be the exact match of the value of the agentId property of the Finding data type.

        " } }, "AgentPreview": { "base": "

        Used as a response element in the PreviewAgents action.

        ", "refs": { "AgentPreviewList$member": null } }, "AgentPreviewList": { "base": null, "refs": { "PreviewAgentsResponse$agentPreviews": "

        The resulting list of agents.

        " } }, "AgentsAlreadyRunningAssessmentException": { "base": "

        You started an assessment run, but one of the instances is already participating in another assessment run.

        ", "refs": { } }, "AmiId": { "base": null, "refs": { "AssetAttributes$amiId": "

        The ID of the Amazon Machine Image (AMI) that is installed on the EC2 instance where the finding is generated.

        " } }, "Arn": { "base": null, "refs": { "AddRemoveAttributesFindingArnList$member": null, "AgentAlreadyRunningAssessment$assessmentRunArn": "

        The ARN of the assessment run that has already been started.

        ", "AssessmentRulesPackageArnList$member": null, "AssessmentRun$arn": "

        The ARN of the assessment run.

        ", "AssessmentRun$assessmentTemplateArn": "

        The ARN of the assessment template that is associated with the assessment run.

        ", "AssessmentRunAgent$assessmentRunArn": "

        The ARN of the assessment run that is associated with the agent.

        ", "AssessmentRunInProgressArnList$member": null, "AssessmentRunNotification$snsTopicArn": "

        The SNS topic to which the SNS notification is sent.

        ", "AssessmentTarget$arn": "

        The ARN that specifies the Amazon Inspector assessment target.

        ", "AssessmentTarget$resourceGroupArn": "

        The ARN that specifies the resource group that is associated with the assessment target.

        ", "AssessmentTemplate$arn": "

        The ARN of the assessment template.

        ", "AssessmentTemplate$assessmentTargetArn": "

        The ARN of the assessment target that corresponds to this assessment template.

        ", "AssessmentTemplateRulesPackageArnList$member": null, "BatchDescribeArnList$member": null, "CreateAssessmentTargetRequest$resourceGroupArn": "

        The ARN that specifies the resource group that is used to create the assessment target.

        ", "CreateAssessmentTargetResponse$assessmentTargetArn": "

        The ARN that specifies the assessment target that is created.

        ", "CreateAssessmentTemplateRequest$assessmentTargetArn": "

        The ARN that specifies the assessment target for which you want to create the assessment template.

        ", "CreateAssessmentTemplateResponse$assessmentTemplateArn": "

        The ARN that specifies the assessment template that is created.

        ", "CreateResourceGroupResponse$resourceGroupArn": "

        The ARN that specifies the resource group that is created.

        ", "DeleteAssessmentRunRequest$assessmentRunArn": "

        The ARN that specifies the assessment run that you want to delete.

        ", "DeleteAssessmentTargetRequest$assessmentTargetArn": "

        The ARN that specifies the assessment target that you want to delete.

        ", "DeleteAssessmentTemplateRequest$assessmentTemplateArn": "

        The ARN that specifies the assessment template that you want to delete.

        ", "DescribeCrossAccountAccessRoleResponse$roleArn": "

        The ARN that specifies the IAM role that Amazon Inspector uses to access your AWS account.

        ", "FailedItems$key": null, "FilterRulesPackageArnList$member": null, "Finding$arn": "

        The ARN that specifies the finding.

        ", "GetTelemetryMetadataRequest$assessmentRunArn": "

        The ARN that specifies the assessment run that has the telemetry data that you want to obtain.

        ", "InspectorServiceAttributes$assessmentRunArn": "

        The ARN of the assessment run during which the finding is generated.

        ", "InspectorServiceAttributes$rulesPackageArn": "

        The ARN of the rules package that is used to generate the finding.

        ", "ListAssessmentRunAgentsRequest$assessmentRunArn": "

        The ARN that specifies the assessment run whose agents you want to list.

        ", "ListEventSubscriptionsRequest$resourceArn": "

        The ARN of the assessment template for which you want to list the existing event subscriptions.

        ", "ListParentArnList$member": null, "ListReturnedArnList$member": null, "ListTagsForResourceRequest$resourceArn": "

        The ARN that specifies the assessment template whose tags you want to list.

        ", "PreviewAgentsRequest$previewAgentsArn": "

        The ARN of the assessment target whose agents you want to preview.

        ", "RegisterCrossAccountAccessRoleRequest$roleArn": "

        The ARN of the IAM role that Amazon Inspector uses to list your EC2 instances during the assessment run or when you call the PreviewAgents action.

        ", "ResourceGroup$arn": "

        The ARN of the resource group.

        ", "RulesPackage$arn": "

        The ARN of the rules package.

        ", "SetTagsForResourceRequest$resourceArn": "

        The ARN of the assessment template that you want to set tags to.

        ", "StartAssessmentRunRequest$assessmentTemplateArn": "

        The ARN of the assessment template of the assessment run that you want to start.

        ", "StartAssessmentRunResponse$assessmentRunArn": "

        The ARN of the assessment run that has been started.

        ", "StopAssessmentRunRequest$assessmentRunArn": "

        The ARN of the assessment run that you want to stop.

        ", "SubscribeToEventRequest$resourceArn": "

        The ARN of the assessment template that is used during the event for which you want to receive SNS notifications.

        ", "SubscribeToEventRequest$topicArn": "

        The ARN of the SNS topic to which the SNS notifications are sent.

        ", "Subscription$resourceArn": "

        The ARN of the assessment template that is used during the event for which the SNS notification is sent.

        ", "Subscription$topicArn": "

        The ARN of the Amazon Simple Notification Service (SNS) topic to which the SNS notifications are sent.

        ", "UnsubscribeFromEventRequest$resourceArn": "

        The ARN of the assessment template that is used during the event for which you want to stop receiving SNS notifications.

        ", "UnsubscribeFromEventRequest$topicArn": "

        The ARN of the SNS topic to which SNS notifications are sent.

        ", "UpdateAssessmentTargetRequest$assessmentTargetArn": "

        The ARN of the assessment target that you want to update.

        ", "UpdateAssessmentTargetRequest$resourceGroupArn": "

        The ARN of the resource group that is used to specify the new resource group to associate with the assessment target.

        " } }, "AssessmentRulesPackageArnList": { "base": null, "refs": { "AssessmentRun$rulesPackageArns": "

        The rules packages selected for the assessment run.

        " } }, "AssessmentRun": { "base": "

        A snapshot of an Amazon Inspector assessment run that contains the findings of the assessment run .

        Used as the response element in the DescribeAssessmentRuns action.

        ", "refs": { "AssessmentRunList$member": null } }, "AssessmentRunAgent": { "base": "

        Contains information about an Amazon Inspector agent. This data type is used as a response element in the ListAssessmentRunAgents action.

        ", "refs": { "AssessmentRunAgentList$member": null } }, "AssessmentRunAgentList": { "base": null, "refs": { "ListAssessmentRunAgentsResponse$assessmentRunAgents": "

        A list of ARNs that specifies the agents returned by the action.

        " } }, "AssessmentRunDuration": { "base": null, "refs": { "AssessmentRun$durationInSeconds": "

        The duration of the assessment run.

        ", "AssessmentTemplate$durationInSeconds": "

        The duration in seconds specified for this assessment tempate. The default value is 3600 seconds (one hour). The maximum value is 86400 seconds (one day).

        ", "CreateAssessmentTemplateRequest$durationInSeconds": "

        The duration of the assessment run in seconds. The default value is 3600 seconds (one hour).

        ", "DurationRange$minSeconds": "

        The minimum value of the duration range. Must be greater than zero.

        ", "DurationRange$maxSeconds": "

        The maximum value of the duration range. Must be less than or equal to 604800 seconds (1 week).

        " } }, "AssessmentRunFilter": { "base": "

        Used as the request parameter in the ListAssessmentRuns action.

        ", "refs": { "ListAssessmentRunsRequest$filter": "

        You can use this parameter to specify a subset of data to be included in the action's response.

        For a record to match a filter, all specified filter attributes must match. When multiple values are specified for a filter attribute, any of the values can match.

        " } }, "AssessmentRunInProgressArnList": { "base": null, "refs": { "AssessmentRunInProgressException$assessmentRunArns": "

        The ARNs of the assessment runs that are currently in progress.

        " } }, "AssessmentRunInProgressException": { "base": "

        You cannot perform a specified action if an assessment run is currently in progress.

        ", "refs": { } }, "AssessmentRunList": { "base": null, "refs": { "DescribeAssessmentRunsResponse$assessmentRuns": "

        Information about the assessment run.

        " } }, "AssessmentRunName": { "base": null, "refs": { "AssessmentRun$name": "

        The auto-generated name for the assessment run.

        ", "StartAssessmentRunRequest$assessmentRunName": "

        You can specify the name for the assessment run, or you can use the auto-generated name that is based on the assessment template name. The name must be unique for the assessment template.

        " } }, "AssessmentRunNotification": { "base": "

        Used as one of the elements of the AssessmentRun data type.

        ", "refs": { "AssessmentRunNotificationList$member": null } }, "AssessmentRunNotificationList": { "base": null, "refs": { "AssessmentRun$notifications": "

        A list of notifications for the event subscriptions. A notification about a particular generated finding is added to this list only once.

        " } }, "AssessmentRunNotificationSnsStatusCode": { "base": null, "refs": { "AssessmentRunNotification$snsPublishStatusCode": "

        The status code of the SNS notification.

        " } }, "AssessmentRunState": { "base": null, "refs": { "AssessmentRun$state": "

        The state of the assessment run.

        ", "AssessmentRunStateChange$state": "

        The assessment run state.

        ", "AssessmentRunStateList$member": null } }, "AssessmentRunStateChange": { "base": "

        Used as one of the elements of the AssessmentRun data type.

        ", "refs": { "AssessmentRunStateChangeList$member": null } }, "AssessmentRunStateChangeList": { "base": null, "refs": { "AssessmentRun$stateChanges": "

        A list of the assessment run state changes.

        " } }, "AssessmentRunStateList": { "base": null, "refs": { "AssessmentRunFilter$states": "

        For a record to match a filter, one of the values specified for this data type property must be the exact match of the value of the assessmentRunState property of the AssessmentRun data type.

        " } }, "AssessmentTarget": { "base": "

        Contains information about an Amazon Inspector application. This data type is used as the response element in the DescribeAssessmentTargets action.

        ", "refs": { "AssessmentTargetList$member": null } }, "AssessmentTargetFilter": { "base": "

        Used as the request parameter in the ListAssessmentTargets action.

        ", "refs": { "ListAssessmentTargetsRequest$filter": "

        You can use this parameter to specify a subset of data to be included in the action's response.

        For a record to match a filter, all specified filter attributes must match. When multiple values are specified for a filter attribute, any of the values can match.

        " } }, "AssessmentTargetList": { "base": null, "refs": { "DescribeAssessmentTargetsResponse$assessmentTargets": "

        Information about the assessment targets.

        " } }, "AssessmentTargetName": { "base": null, "refs": { "AssessmentTarget$name": "

        The name of the Amazon Inspector assessment target.

        ", "CreateAssessmentTargetRequest$assessmentTargetName": "

        The user-defined name that identifies the assessment target that you want to create. The name must be unique within the AWS account.

        ", "UpdateAssessmentTargetRequest$assessmentTargetName": "

        The name of the assessment target that you want to update.

        " } }, "AssessmentTemplate": { "base": "

        Contains information about an Amazon Inspector assessment template. This data type is used as the response element in the DescribeAssessmentTemplates action.

        ", "refs": { "AssessmentTemplateList$member": null } }, "AssessmentTemplateFilter": { "base": "

        Used as the request parameter in the ListAssessmentTemplates action.

        ", "refs": { "ListAssessmentTemplatesRequest$filter": "

        You can use this parameter to specify a subset of data to be included in the action's response.

        For a record to match a filter, all specified filter attributes must match. When multiple values are specified for a filter attribute, any of the values can match.

        " } }, "AssessmentTemplateList": { "base": null, "refs": { "DescribeAssessmentTemplatesResponse$assessmentTemplates": "

        Information about the assessment templates.

        " } }, "AssessmentTemplateName": { "base": null, "refs": { "AssessmentTemplate$name": "

        The name of the assessment template.

        ", "CreateAssessmentTemplateRequest$assessmentTemplateName": "

        The user-defined name that identifies the assessment template that you want to create. You can create several assessment templates for an assessment target. The names of the assessment templates that correspond to a particular assessment target must be unique.

        " } }, "AssessmentTemplateRulesPackageArnList": { "base": null, "refs": { "AssessmentTemplate$rulesPackageArns": "

        The rules packages that are specified for this assessment template.

        ", "CreateAssessmentTemplateRequest$rulesPackageArns": "

        The ARNs that specify the rules packages that you want to attach to the assessment template.

        " } }, "AssetAttributes": { "base": "

        A collection of attributes of the host from which the finding is generated.

        ", "refs": { "Finding$assetAttributes": "

        A collection of attributes of the host from which the finding is generated.

        " } }, "AssetType": { "base": null, "refs": { "Finding$assetType": "

        The type of the host from which the finding is generated.

        " } }, "Attribute": { "base": "

        This data type is used as a request parameter in the AddAttributesToFindings and CreateAssessmentTemplate actions.

        ", "refs": { "AttributeList$member": null, "UserAttributeList$member": null } }, "AttributeKey": { "base": null, "refs": { "Attribute$key": "

        The attribute key.

        ", "UserAttributeKeyList$member": null } }, "AttributeList": { "base": null, "refs": { "Finding$attributes": "

        The system-defined attributes for the finding.

        ", "FindingFilter$attributes": "

        For a record to match a filter, the list of values that are specified for this data type property must be contained in the list of values of the attributes property of the Finding data type.

        ", "FindingFilter$userAttributes": "

        For a record to match a filter, the value that is specified for this data type property must be contained in the list of values of the userAttributes property of the Finding data type.

        " } }, "AttributeValue": { "base": null, "refs": { "Attribute$value": "

        The value assigned to the attribute key.

        " } }, "AutoScalingGroup": { "base": null, "refs": { "AgentPreview$autoScalingGroup": "

        The Auto Scaling group for the EC2 instance where the agent is installed.

        ", "AssessmentRunAgent$autoScalingGroup": "

        The Auto Scaling group of the EC2 instance that is specified by the agent ID.

        ", "AssetAttributes$autoScalingGroup": "

        The Auto Scaling group of the EC2 instance where the finding is generated.

        ", "AutoScalingGroupList$member": null } }, "AutoScalingGroupList": { "base": null, "refs": { "FindingFilter$autoScalingGroups": "

        For a record to match a filter, one of the values that is specified for this data type property must be the exact match of the value of the autoScalingGroup property of the Finding data type.

        " } }, "BatchDescribeArnList": { "base": null, "refs": { "DescribeAssessmentRunsRequest$assessmentRunArns": "

        The ARN that specifies the assessment run that you want to describe.

        ", "DescribeAssessmentTargetsRequest$assessmentTargetArns": "

        The ARNs that specifies the assessment targets that you want to describe.

        ", "DescribeAssessmentTemplatesRequest$assessmentTemplateArns": "

        The ARN that specifiesthe assessment templates that you want to describe.

        ", "DescribeFindingsRequest$findingArns": "

        The ARN that specifies the finding that you want to describe.

        ", "DescribeResourceGroupsRequest$resourceGroupArns": "

        The ARN that specifies the resource group that you want to describe.

        ", "DescribeRulesPackagesRequest$rulesPackageArns": "

        The ARN that specifies the rules package that you want to describe.

        " } }, "Bool": { "base": null, "refs": { "AccessDeniedException$canRetry": "

        You can immediately retry your request.

        ", "AgentsAlreadyRunningAssessmentException$agentsTruncated": "

        ", "AgentsAlreadyRunningAssessmentException$canRetry": "

        You can immediately retry your request.

        ", "AssessmentRun$dataCollected": "

        A Boolean value (true or false) that specifies whether the process of collecting data from the agents is completed.

        ", "AssessmentRunInProgressException$assessmentRunArnsTruncated": "

        Boolean value that indicates whether the ARN list of the assessment runs is truncated.

        ", "AssessmentRunInProgressException$canRetry": "

        You can immediately retry your request.

        ", "AssessmentRunNotification$error": "

        The Boolean value that specifies whether the notification represents an error.

        ", "DescribeCrossAccountAccessRoleResponse$valid": "

        A Boolean value that specifies whether the IAM role has the necessary policies attached to enable Amazon Inspector to access your AWS account.

        ", "FailedItemDetails$retryable": "

        Indicates whether you can immediately retry a request for this item for a specified resource.

        ", "Finding$indicatorOfCompromise": "

        This data element is currently not used.

        ", "InternalException$canRetry": "

        You can immediately retry your request.

        ", "InvalidCrossAccountRoleException$canRetry": "

        You can immediately retry your request.

        ", "InvalidInputException$canRetry": "

        You can immediately retry your request.

        ", "LimitExceededException$canRetry": "

        You can immediately retry your request.

        ", "NoSuchEntityException$canRetry": "

        You can immediately retry your request.

        " } }, "CreateAssessmentTargetRequest": { "base": null, "refs": { } }, "CreateAssessmentTargetResponse": { "base": null, "refs": { } }, "CreateAssessmentTemplateRequest": { "base": null, "refs": { } }, "CreateAssessmentTemplateResponse": { "base": null, "refs": { } }, "CreateResourceGroupRequest": { "base": null, "refs": { } }, "CreateResourceGroupResponse": { "base": null, "refs": { } }, "DeleteAssessmentRunRequest": { "base": null, "refs": { } }, "DeleteAssessmentTargetRequest": { "base": null, "refs": { } }, "DeleteAssessmentTemplateRequest": { "base": null, "refs": { } }, "DescribeAssessmentRunsRequest": { "base": null, "refs": { } }, "DescribeAssessmentRunsResponse": { "base": null, "refs": { } }, "DescribeAssessmentTargetsRequest": { "base": null, "refs": { } }, "DescribeAssessmentTargetsResponse": { "base": null, "refs": { } }, "DescribeAssessmentTemplatesRequest": { "base": null, "refs": { } }, "DescribeAssessmentTemplatesResponse": { "base": null, "refs": { } }, "DescribeCrossAccountAccessRoleResponse": { "base": null, "refs": { } }, "DescribeFindingsRequest": { "base": null, "refs": { } }, "DescribeFindingsResponse": { "base": null, "refs": { } }, "DescribeResourceGroupsRequest": { "base": null, "refs": { } }, "DescribeResourceGroupsResponse": { "base": null, "refs": { } }, "DescribeRulesPackagesRequest": { "base": null, "refs": { } }, "DescribeRulesPackagesResponse": { "base": null, "refs": { } }, "DurationRange": { "base": "

        This data type is used in the AssessmentTemplateFilter data type.

        ", "refs": { "AssessmentRunFilter$durationRange": "

        For a record to match a filter, the value that is specified for this data type property must inclusively match any value between the specified minimum and maximum values of the durationInSeconds property of the AssessmentRun data type.

        ", "AssessmentTemplateFilter$durationRange": "

        For a record to match a filter, the value specified for this data type property must inclusively match any value between the specified minimum and maximum values of the durationInSeconds property of the AssessmentTemplate data type.

        " } }, "ErrorMessage": { "base": null, "refs": { "AccessDeniedException$message": "

        Details of the exception error.

        ", "AgentsAlreadyRunningAssessmentException$message": "

        Details of the exception error.

        ", "AssessmentRunInProgressException$message": "

        Details of the exception error.

        ", "InternalException$message": "

        Details of the exception error.

        ", "InvalidCrossAccountRoleException$message": "

        Details of the exception error.

        ", "InvalidInputException$message": "

        Details of the exception error.

        ", "LimitExceededException$message": "

        Details of the exception error.

        ", "NoSuchEntityException$message": "

        Details of the exception error.

        " } }, "EventSubscription": { "base": "

        This data type is used in the Subscription data type.

        ", "refs": { "EventSubscriptionList$member": null } }, "EventSubscriptionList": { "base": null, "refs": { "Subscription$eventSubscriptions": "

        The list of existing event subscriptions.

        " } }, "FailedItemDetails": { "base": "

        Includes details about the failed items.

        ", "refs": { "FailedItems$value": null } }, "FailedItemErrorCode": { "base": null, "refs": { "FailedItemDetails$failureCode": "

        The status code of a failed item.

        " } }, "FailedItems": { "base": null, "refs": { "AddAttributesToFindingsResponse$failedItems": "

        Attribute details that cannot be described. An error code is provided for each failed item.

        ", "DescribeAssessmentRunsResponse$failedItems": "

        Assessment run details that cannot be described. An error code is provided for each failed item.

        ", "DescribeAssessmentTargetsResponse$failedItems": "

        Assessment target details that cannot be described. An error code is provided for each failed item.

        ", "DescribeAssessmentTemplatesResponse$failedItems": "

        Assessment template details that cannot be described. An error code is provided for each failed item.

        ", "DescribeFindingsResponse$failedItems": "

        Finding details that cannot be described. An error code is provided for each failed item.

        ", "DescribeResourceGroupsResponse$failedItems": "

        Resource group details that cannot be described. An error code is provided for each failed item.

        ", "DescribeRulesPackagesResponse$failedItems": "

        Rules package details that cannot be described. An error code is provided for each failed item.

        ", "RemoveAttributesFromFindingsResponse$failedItems": "

        Attributes details that cannot be described. An error code is provided for each failed item.

        " } }, "FilterRulesPackageArnList": { "base": null, "refs": { "AssessmentRunFilter$rulesPackageArns": "

        For a record to match a filter, the value that is specified for this data type property must be contained in the list of values of the rulesPackages property of the AssessmentRun data type.

        ", "AssessmentTemplateFilter$rulesPackageArns": "

        For a record to match a filter, the values that are specified for this data type property must be contained in the list of values of the rulesPackageArns property of the AssessmentTemplate data type.

        ", "FindingFilter$rulesPackageArns": "

        For a record to match a filter, one of the values that is specified for this data type property must be the exact match of the value of the rulesPackageArn property of the Finding data type.

        " } }, "Finding": { "base": "

        Contains information about an Amazon Inspector finding. This data type is used as the response element in the DescribeFindings action.

        ", "refs": { "FindingList$member": null } }, "FindingFilter": { "base": "

        This data type is used as a request parameter in the ListFindings action.

        ", "refs": { "ListFindingsRequest$filter": "

        You can use this parameter to specify a subset of data to be included in the action's response.

        For a record to match a filter, all specified filter attributes must match. When multiple values are specified for a filter attribute, any of the values can match.

        " } }, "FindingId": { "base": null, "refs": { "Finding$id": "

        The ID of the finding.

        " } }, "FindingList": { "base": null, "refs": { "DescribeFindingsResponse$findings": "

        Information about the finding.

        " } }, "GetTelemetryMetadataRequest": { "base": null, "refs": { } }, "GetTelemetryMetadataResponse": { "base": null, "refs": { } }, "Hostname": { "base": null, "refs": { "AssetAttributes$hostname": "

        The hostname of the EC2 instance where the finding is generated.

        " } }, "InspectorEvent": { "base": null, "refs": { "AssessmentRunNotification$event": "

        The event for which a notification is sent.

        ", "EventSubscription$event": "

        The event for which Amazon Simple Notification Service (SNS) notifications are sent.

        ", "SubscribeToEventRequest$event": "

        The event for which you want to receive SNS notifications.

        ", "UnsubscribeFromEventRequest$event": "

        The event for which you want to stop receiving SNS notifications.

        " } }, "InspectorServiceAttributes": { "base": "

        This data type is used in the Finding data type.

        ", "refs": { "Finding$serviceAttributes": null } }, "InternalException": { "base": "

        Internal server error.

        ", "refs": { } }, "InvalidCrossAccountRoleErrorCode": { "base": null, "refs": { "InvalidCrossAccountRoleException$errorCode": "

        Code that indicates the type of error that is generated.

        " } }, "InvalidCrossAccountRoleException": { "base": "

        Amazon Inspector cannot assume the cross-account role that it needs to list your EC2 instances during the assessment run.

        ", "refs": { } }, "InvalidInputErrorCode": { "base": null, "refs": { "InvalidInputException$errorCode": "

        Code that indicates the type of error that is generated.

        " } }, "InvalidInputException": { "base": "

        The request was rejected because an invalid or out-of-range value was supplied for an input parameter.

        ", "refs": { } }, "IocConfidence": { "base": null, "refs": { "Finding$confidence": "

        This data element is currently not used.

        " } }, "Ipv4Address": { "base": null, "refs": { "Ipv4AddressList$member": null } }, "Ipv4AddressList": { "base": null, "refs": { "AssetAttributes$ipv4Addresses": "

        The list of IP v4 addresses of the EC2 instance where the finding is generated.

        " } }, "LimitExceededErrorCode": { "base": null, "refs": { "LimitExceededException$errorCode": "

        Code that indicates the type of error that is generated.

        " } }, "LimitExceededException": { "base": "

        The request was rejected because it attempted to create resources beyond the current AWS account limits. The error code describes the limit exceeded.

        ", "refs": { } }, "ListAssessmentRunAgentsRequest": { "base": null, "refs": { } }, "ListAssessmentRunAgentsResponse": { "base": null, "refs": { } }, "ListAssessmentRunsRequest": { "base": null, "refs": { } }, "ListAssessmentRunsResponse": { "base": null, "refs": { } }, "ListAssessmentTargetsRequest": { "base": null, "refs": { } }, "ListAssessmentTargetsResponse": { "base": null, "refs": { } }, "ListAssessmentTemplatesRequest": { "base": null, "refs": { } }, "ListAssessmentTemplatesResponse": { "base": null, "refs": { } }, "ListEventSubscriptionsMaxResults": { "base": null, "refs": { "ListEventSubscriptionsRequest$maxResults": "

        You can use this parameter to indicate the maximum number of items you want in the response. The default value is 10. The maximum value is 500.

        " } }, "ListEventSubscriptionsRequest": { "base": null, "refs": { } }, "ListEventSubscriptionsResponse": { "base": null, "refs": { } }, "ListFindingsRequest": { "base": null, "refs": { } }, "ListFindingsResponse": { "base": null, "refs": { } }, "ListMaxResults": { "base": null, "refs": { "ListAssessmentRunAgentsRequest$maxResults": "

        You can use this parameter to indicate the maximum number of items that you want in the response. The default value is 10. The maximum value is 500.

        ", "ListAssessmentRunsRequest$maxResults": "

        You can use this parameter to indicate the maximum number of items that you want in the response. The default value is 10. The maximum value is 500.

        ", "ListAssessmentTargetsRequest$maxResults": "

        You can use this parameter to indicate the maximum number of items you want in the response. The default value is 10. The maximum value is 500.

        ", "ListAssessmentTemplatesRequest$maxResults": "

        You can use this parameter to indicate the maximum number of items you want in the response. The default value is 10. The maximum value is 500.

        ", "ListFindingsRequest$maxResults": "

        You can use this parameter to indicate the maximum number of items you want in the response. The default value is 10. The maximum value is 500.

        ", "ListRulesPackagesRequest$maxResults": "

        You can use this parameter to indicate the maximum number of items you want in the response. The default value is 10. The maximum value is 500.

        " } }, "ListParentArnList": { "base": null, "refs": { "ListAssessmentRunsRequest$assessmentTemplateArns": "

        The ARNs that specify the assessment templates whose assessment runs you want to list.

        ", "ListAssessmentTemplatesRequest$assessmentTargetArns": "

        A list of ARNs that specifies the assessment targets whose assessment templates you want to list.

        ", "ListFindingsRequest$assessmentRunArns": "

        The ARNs of the assessment runs that generate the findings that you want to list.

        " } }, "ListReturnedArnList": { "base": null, "refs": { "ListAssessmentRunsResponse$assessmentRunArns": "

        A list of ARNs that specifies the assessment runs that are returned by the action.

        ", "ListAssessmentTargetsResponse$assessmentTargetArns": "

        A list of ARNs that specifies the assessment targets that are returned by the action.

        ", "ListAssessmentTemplatesResponse$assessmentTemplateArns": "

        A list of ARNs that specifies the assessment templates returned by the action.

        ", "ListFindingsResponse$findingArns": "

        A list of ARNs that specifies the findings returned by the action.

        ", "ListRulesPackagesResponse$rulesPackageArns": "

        The list of ARNs that specifies the rules packages returned by the action.

        " } }, "ListRulesPackagesRequest": { "base": null, "refs": { } }, "ListRulesPackagesResponse": { "base": null, "refs": { } }, "ListTagsForResourceRequest": { "base": null, "refs": { } }, "ListTagsForResourceResponse": { "base": null, "refs": { } }, "Locale": { "base": null, "refs": { "DescribeFindingsRequest$locale": "

        The locale into which you want to translate a finding description, recommendation, and the short description that identifies the finding.

        ", "DescribeRulesPackagesRequest$locale": "

        The locale that you want to translate a rules package description into.

        " } }, "Long": { "base": null, "refs": { "TelemetryMetadata$count": "

        The count of messages that the agent sends to the Amazon Inspector service.

        ", "TelemetryMetadata$dataSize": "

        The data size of messages that the agent sends to the Amazon Inspector service.

        " } }, "Message": { "base": null, "refs": { "AssessmentRunAgent$agentHealthDetails": "

        The description for the agent health code.

        ", "AssessmentRunNotification$message": null } }, "MessageType": { "base": null, "refs": { "TelemetryMetadata$messageType": "

        A specific type of behavioral data that is collected by the agent.

        " } }, "NamePattern": { "base": null, "refs": { "AssessmentRunFilter$namePattern": "

        For a record to match a filter, an explicit value or a string containing a wildcard that is specified for this data type property must match the value of the assessmentRunName property of the AssessmentRun data type.

        ", "AssessmentTargetFilter$assessmentTargetNamePattern": "

        For a record to match a filter, an explicit value or a string that contains a wildcard that is specified for this data type property must match the value of the assessmentTargetName property of the AssessmentTarget data type.

        ", "AssessmentTemplateFilter$namePattern": "

        For a record to match a filter, an explicit value or a string that contains a wildcard that is specified for this data type property must match the value of the assessmentTemplateName property of the AssessmentTemplate data type.

        " } }, "NoSuchEntityErrorCode": { "base": null, "refs": { "NoSuchEntityException$errorCode": "

        Code that indicates the type of error that is generated.

        " } }, "NoSuchEntityException": { "base": "

        The request was rejected because it referenced an entity that does not exist. The error code describes the entity.

        ", "refs": { } }, "NumericSeverity": { "base": null, "refs": { "Finding$numericSeverity": "

        The numeric value of the finding severity.

        " } }, "NumericVersion": { "base": null, "refs": { "AssetAttributes$schemaVersion": "

        The schema version of this data type.

        ", "Finding$schemaVersion": "

        The schema version of this data type.

        ", "InspectorServiceAttributes$schemaVersion": "

        The schema version of this data type.

        " } }, "PaginationToken": { "base": null, "refs": { "ListAssessmentRunAgentsRequest$nextToken": "

        You can use this parameter when paginating results. Set the value of this parameter to null on your first call to the ListAssessmentRunAgents action. Subsequent calls to the action fill nextToken in the request with the value of NextToken from the previous response to continue listing data.

        ", "ListAssessmentRunAgentsResponse$nextToken": "

        When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to null.

        ", "ListAssessmentRunsRequest$nextToken": "

        You can use this parameter when paginating results. Set the value of this parameter to null on your first call to the ListAssessmentRuns action. Subsequent calls to the action fill nextToken in the request with the value of NextToken from the previous response to continue listing data.

        ", "ListAssessmentRunsResponse$nextToken": "

        When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to null.

        ", "ListAssessmentTargetsRequest$nextToken": "

        You can use this parameter when paginating results. Set the value of this parameter to null on your first call to the ListAssessmentTargets action. Subsequent calls to the action fill nextToken in the request with the value of NextToken from the previous response to continue listing data.

        ", "ListAssessmentTargetsResponse$nextToken": "

        When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to null.

        ", "ListAssessmentTemplatesRequest$nextToken": "

        You can use this parameter when paginating results. Set the value of this parameter to null on your first call to the ListAssessmentTemplates action. Subsequent calls to the action fill nextToken in the request with the value of NextToken from the previous response to continue listing data.

        ", "ListAssessmentTemplatesResponse$nextToken": "

        When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to null.

        ", "ListEventSubscriptionsRequest$nextToken": "

        You can use this parameter when paginating results. Set the value of this parameter to null on your first call to the ListEventSubscriptions action. Subsequent calls to the action fill nextToken in the request with the value of NextToken from the previous response to continue listing data.

        ", "ListEventSubscriptionsResponse$nextToken": "

        When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to null.

        ", "ListFindingsRequest$nextToken": "

        You can use this parameter when paginating results. Set the value of this parameter to null on your first call to the ListFindings action. Subsequent calls to the action fill nextToken in the request with the value of NextToken from the previous response to continue listing data.

        ", "ListFindingsResponse$nextToken": "

        When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to null.

        ", "ListRulesPackagesRequest$nextToken": "

        You can use this parameter when paginating results. Set the value of this parameter to null on your first call to the ListRulesPackages action. Subsequent calls to the action fill nextToken in the request with the value of NextToken from the previous response to continue listing data.

        ", "ListRulesPackagesResponse$nextToken": "

        When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to null.

        ", "PreviewAgentsRequest$nextToken": "

        You can use this parameter when paginating results. Set the value of this parameter to null on your first call to the PreviewAgents action. Subsequent calls to the action fill nextToken in the request with the value of NextToken from the previous response to continue listing data.

        ", "PreviewAgentsResponse$nextToken": "

        When a response is generated, if there is more data to be listed, this parameter is present in the response and contains the value to use for the nextToken parameter in a subsequent pagination request. If there is no more data to be listed, this parameter is set to null.

        " } }, "PreviewAgentsMaxResults": { "base": null, "refs": { "PreviewAgentsRequest$maxResults": "

        You can use this parameter to indicate the maximum number of items you want in the response. The default value is 10. The maximum value is 500.

        " } }, "PreviewAgentsRequest": { "base": null, "refs": { } }, "PreviewAgentsResponse": { "base": null, "refs": { } }, "ProviderName": { "base": null, "refs": { "RulesPackage$provider": "

        The provider of the rules package.

        " } }, "RegisterCrossAccountAccessRoleRequest": { "base": null, "refs": { } }, "RemoveAttributesFromFindingsRequest": { "base": null, "refs": { } }, "RemoveAttributesFromFindingsResponse": { "base": null, "refs": { } }, "ResourceGroup": { "base": "

        Contains information about a resource group. The resource group defines a set of tags that, when queried, identify the AWS resources that make up the assessment target. This data type is used as the response element in the DescribeResourceGroups action.

        ", "refs": { "ResourceGroupList$member": null } }, "ResourceGroupList": { "base": null, "refs": { "DescribeResourceGroupsResponse$resourceGroups": "

        Information about a resource group.

        " } }, "ResourceGroupTag": { "base": "

        This data type is used as one of the elements of the ResourceGroup data type.

        ", "refs": { "ResourceGroupTags$member": null } }, "ResourceGroupTags": { "base": null, "refs": { "CreateResourceGroupRequest$resourceGroupTags": "

        A collection of keys and an array of possible values, '[{\"key\":\"key1\",\"values\":[\"Value1\",\"Value2\"]},{\"key\":\"Key2\",\"values\":[\"Value3\"]}]'.

        For example,'[{\"key\":\"Name\",\"values\":[\"TestEC2Instance\"]}]'.

        ", "ResourceGroup$tags": "

        The tags (key and value pairs) of the resource group. This data type property is used in the CreateResourceGroup action.

        " } }, "RuleName": { "base": null, "refs": { "RuleNameList$member": null } }, "RuleNameList": { "base": null, "refs": { "FindingFilter$ruleNames": "

        For a record to match a filter, one of the values that is specified for this data type property must be the exact match of the value of the ruleName property of the Finding data type.

        " } }, "RulesPackage": { "base": "

        Contains information about an Amazon Inspector rules package. This data type is used as the response element in the DescribeRulesPackages action.

        ", "refs": { "RulesPackageList$member": null } }, "RulesPackageList": { "base": null, "refs": { "DescribeRulesPackagesResponse$rulesPackages": "

        Information about the rules package.

        " } }, "RulesPackageName": { "base": null, "refs": { "RulesPackage$name": "

        The name of the rules package.

        " } }, "ServiceName": { "base": null, "refs": { "Finding$service": "

        The data element is set to \"Inspector\".

        " } }, "SetTagsForResourceRequest": { "base": null, "refs": { } }, "Severity": { "base": null, "refs": { "Finding$severity": "

        The finding severity. Values can be set to High, Medium, Low, and Informational.

        ", "SeverityList$member": null } }, "SeverityList": { "base": null, "refs": { "FindingFilter$severities": "

        For a record to match a filter, one of the values that is specified for this data type property must be the exact match of the value of the severity property of the Finding data type.

        " } }, "StartAssessmentRunRequest": { "base": null, "refs": { } }, "StartAssessmentRunResponse": { "base": null, "refs": { } }, "StopAssessmentRunRequest": { "base": null, "refs": { } }, "SubscribeToEventRequest": { "base": null, "refs": { } }, "Subscription": { "base": "

        This data type is used as a response element in the ListEventSubscriptions action.

        ", "refs": { "SubscriptionList$member": null } }, "SubscriptionList": { "base": null, "refs": { "ListEventSubscriptionsResponse$subscriptions": "

        Details of the returned event subscriptions.

        " } }, "Tag": { "base": "

        A key and value pair. This data type is used as a request parameter in the SetTagsForResource action and a response element in the ListTagsForResource action.

        ", "refs": { "TagList$member": null } }, "TagKey": { "base": null, "refs": { "ResourceGroupTag$key": "

        A tag key.

        ", "Tag$key": "

        A tag key.

        " } }, "TagList": { "base": null, "refs": { "ListTagsForResourceResponse$tags": "

        A collection of key and value pairs.

        ", "SetTagsForResourceRequest$tags": "

        A collection of key and value pairs that you want to set to the assessment template.

        " } }, "TagValue": { "base": null, "refs": { "ResourceGroupTag$value": "

        The value assigned to a tag key.

        ", "Tag$value": "

        A value assigned to a tag key.

        " } }, "TelemetryMetadata": { "base": "

        The metadata about the Amazon Inspector application data metrics collected by the agent. This data type is used as the response element in the GetTelemetryMetadata action.

        ", "refs": { "TelemetryMetadataList$member": null } }, "TelemetryMetadataList": { "base": null, "refs": { "AssessmentRunAgent$telemetryMetadata": "

        The Amazon Inspector application data metrics that are collected by the agent.

        ", "GetTelemetryMetadataResponse$telemetryMetadata": "

        Telemetry details.

        " } }, "Text": { "base": null, "refs": { "Finding$title": "

        The name of the finding.

        ", "Finding$description": "

        The description of the finding.

        ", "Finding$recommendation": "

        The recommendation for the finding.

        ", "RulesPackage$description": "

        The description of the rules package.

        " } }, "Timestamp": { "base": null, "refs": { "AssessmentRun$createdAt": "

        The time when StartAssessmentRun was called.

        ", "AssessmentRun$startedAt": "

        The time when StartAssessmentRun was called.

        ", "AssessmentRun$completedAt": "

        The assessment run completion time that corresponds to the rules packages evaluation completion time or failure.

        ", "AssessmentRun$stateChangedAt": "

        The last time when the assessment run's state changed.

        ", "AssessmentRunNotification$date": "

        The date of the notification.

        ", "AssessmentRunStateChange$stateChangedAt": "

        The last time the assessment run state changed.

        ", "AssessmentTarget$createdAt": "

        The time at which the assessment target is created.

        ", "AssessmentTarget$updatedAt": "

        The time at which UpdateAssessmentTarget is called.

        ", "AssessmentTemplate$createdAt": "

        The time at which the assessment template is created.

        ", "DescribeCrossAccountAccessRoleResponse$registeredAt": "

        The date when the cross-account access role was registered.

        ", "EventSubscription$subscribedAt": "

        The time at which SubscribeToEvent is called.

        ", "Finding$createdAt": "

        The time when the finding was generated.

        ", "Finding$updatedAt": "

        The time when AddAttributesToFindings is called.

        ", "ResourceGroup$createdAt": "

        The time at which resource group is created.

        ", "TimestampRange$beginDate": "

        The minimum value of the timestamp range.

        ", "TimestampRange$endDate": "

        The maximum value of the timestamp range.

        " } }, "TimestampRange": { "base": "

        This data type is used in the AssessmentRunFilter data type.

        ", "refs": { "AssessmentRunFilter$startTimeRange": "

        For a record to match a filter, the value that is specified for this data type property must inclusively match any value between the specified minimum and maximum values of the startTime property of the AssessmentRun data type.

        ", "AssessmentRunFilter$completionTimeRange": "

        For a record to match a filter, the value that is specified for this data type property must inclusively match any value between the specified minimum and maximum values of the completedAt property of the AssessmentRun data type.

        ", "AssessmentRunFilter$stateChangeTimeRange": "

        For a record to match a filter, the value that is specified for this data type property must match the stateChangedAt property of the AssessmentRun data type.

        ", "FindingFilter$creationTimeRange": "

        The time range during which the finding is generated.

        " } }, "UnsubscribeFromEventRequest": { "base": null, "refs": { } }, "UpdateAssessmentTargetRequest": { "base": null, "refs": { } }, "UserAttributeKeyList": { "base": null, "refs": { "RemoveAttributesFromFindingsRequest$attributeKeys": "

        The array of attribute keys that you want to remove from specified findings.

        " } }, "UserAttributeList": { "base": null, "refs": { "AddAttributesToFindingsRequest$attributes": "

        The array of attributes that you want to assign to specified findings.

        ", "AssessmentRun$userAttributesForFindings": "

        The user-defined attributes that are assigned to every generated finding.

        ", "AssessmentTemplate$userAttributesForFindings": "

        The user-defined attributes that are assigned to every generated finding from the assessment run that uses this assessment template.

        ", "CreateAssessmentTemplateRequest$userAttributesForFindings": "

        The user-defined attributes that are assigned to every finding that is generated by the assessment run that uses this assessment template.

        ", "Finding$userAttributes": "

        The user-defined attributes that are assigned to the finding.

        " } }, "Version": { "base": null, "refs": { "RulesPackage$version": "

        The version ID of the rules package.

        " } } } } aws-sdk-go-1.4.22/models/apis/inspector/2016-02-16/examples-1.json000066400000000000000000000000541300374646400237110ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/iot-data/000077500000000000000000000000001300374646400175045ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/iot-data/2015-05-28/000077500000000000000000000000001300374646400205445ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/iot-data/2015-05-28/api-2.json000066400000000000000000000153221300374646400223520ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-05-28", "endpointPrefix":"data.iot", "protocol":"rest-json", "serviceFullName":"AWS IoT Data Plane", "signatureVersion":"v4", "signingName":"iotdata" }, "operations":{ "DeleteThingShadow":{ "name":"DeleteThingShadow", "http":{ "method":"DELETE", "requestUri":"/things/{thingName}/shadow" }, "input":{"shape":"DeleteThingShadowRequest"}, "output":{"shape":"DeleteThingShadowResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"}, {"shape":"ThrottlingException"}, {"shape":"UnauthorizedException"}, {"shape":"ServiceUnavailableException"}, {"shape":"InternalFailureException"}, {"shape":"MethodNotAllowedException"}, {"shape":"UnsupportedDocumentEncodingException"} ] }, "GetThingShadow":{ "name":"GetThingShadow", "http":{ "method":"GET", "requestUri":"/things/{thingName}/shadow" }, "input":{"shape":"GetThingShadowRequest"}, "output":{"shape":"GetThingShadowResponse"}, "errors":[ {"shape":"InvalidRequestException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, {"shape":"UnauthorizedException"}, {"shape":"ServiceUnavailableException"}, {"shape":"InternalFailureException"}, {"shape":"MethodNotAllowedException"}, {"shape":"UnsupportedDocumentEncodingException"} ] }, "Publish":{ "name":"Publish", "http":{ "method":"POST", "requestUri":"/topics/{topic}" }, "input":{"shape":"PublishRequest"}, "errors":[ {"shape":"InternalFailureException"}, {"shape":"InvalidRequestException"}, {"shape":"UnauthorizedException"}, {"shape":"MethodNotAllowedException"} ] }, "UpdateThingShadow":{ "name":"UpdateThingShadow", "http":{ "method":"POST", "requestUri":"/things/{thingName}/shadow" }, "input":{"shape":"UpdateThingShadowRequest"}, "output":{"shape":"UpdateThingShadowResponse"}, "errors":[ {"shape":"ConflictException"}, {"shape":"RequestEntityTooLargeException"}, {"shape":"InvalidRequestException"}, {"shape":"ThrottlingException"}, {"shape":"UnauthorizedException"}, {"shape":"ServiceUnavailableException"}, {"shape":"InternalFailureException"}, {"shape":"MethodNotAllowedException"}, {"shape":"UnsupportedDocumentEncodingException"} ] } }, "shapes":{ "ConflictException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":409}, "exception":true }, "DeleteThingShadowRequest":{ "type":"structure", "required":["thingName"], "members":{ "thingName":{ "shape":"ThingName", "location":"uri", "locationName":"thingName" } } }, "DeleteThingShadowResponse":{ "type":"structure", "required":["payload"], "members":{ "payload":{"shape":"JsonDocument"} }, "payload":"payload" }, "ErrorMessage":{"type":"string"}, "GetThingShadowRequest":{ "type":"structure", "required":["thingName"], "members":{ "thingName":{ "shape":"ThingName", "location":"uri", "locationName":"thingName" } } }, "GetThingShadowResponse":{ "type":"structure", "members":{ "payload":{"shape":"JsonDocument"} }, "payload":"payload" }, "InternalFailureException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":500}, "exception":true, "fault":true }, "InvalidRequestException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "JsonDocument":{"type":"blob"}, "MethodNotAllowedException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":405}, "exception":true }, "Payload":{"type":"blob"}, "PublishRequest":{ "type":"structure", "required":["topic"], "members":{ "topic":{ "shape":"Topic", "location":"uri", "locationName":"topic" }, "qos":{ "shape":"Qos", "location":"querystring", "locationName":"qos" }, "payload":{"shape":"Payload"} }, "payload":"payload" }, "Qos":{ "type":"integer", "max":1, "min":0 }, "RequestEntityTooLargeException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":413}, "exception":true }, "ResourceNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":404}, "exception":true }, "ServiceUnavailableException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":503}, "exception":true, "fault":true }, "ThingName":{ "type":"string", "max":128, "min":1, "pattern":"[a-zA-Z0-9_-]+" }, "ThrottlingException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":429}, "exception":true }, "Topic":{"type":"string"}, "UnauthorizedException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":401}, "exception":true }, "UnsupportedDocumentEncodingException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":415}, "exception":true }, "UpdateThingShadowRequest":{ "type":"structure", "required":[ "thingName", "payload" ], "members":{ "thingName":{ "shape":"ThingName", "location":"uri", "locationName":"thingName" }, "payload":{"shape":"JsonDocument"} }, "payload":"payload" }, "UpdateThingShadowResponse":{ "type":"structure", "members":{ "payload":{"shape":"JsonDocument"} }, "payload":"payload" }, "errorMessage":{"type":"string"} } } aws-sdk-go-1.4.22/models/apis/iot-data/2015-05-28/docs-2.json000066400000000000000000000135461300374646400225370ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS IoT

        AWS IoT-Data enables secure, bi-directional communication between Internet-connected things (such as sensors, actuators, embedded devices, or smart appliances) and the AWS cloud. It implements a broker for applications and things to publish messages over HTTP (Publish) and retrieve, update, and delete thing shadows. A thing shadow is a persistent representation of your things and their state in the AWS cloud.

        ", "operations": { "DeleteThingShadow": "

        Deletes the thing shadow for the specified thing.

        For more information, see DeleteThingShadow in the AWS IoT Developer Guide.

        ", "GetThingShadow": "

        Gets the thing shadow for the specified thing.

        For more information, see GetThingShadow in the AWS IoT Developer Guide.

        ", "Publish": "

        Publishes state information.

        For more information, see HTTP Protocol in the AWS IoT Developer Guide.

        ", "UpdateThingShadow": "

        Updates the thing shadow for the specified thing.

        For more information, see UpdateThingShadow in the AWS IoT Developer Guide.

        " }, "shapes": { "ConflictException": { "base": "

        The specified version does not match the version of the document.

        ", "refs": { } }, "DeleteThingShadowRequest": { "base": "

        The input for the DeleteThingShadow operation.

        ", "refs": { } }, "DeleteThingShadowResponse": { "base": "

        The output from the DeleteThingShadow operation.

        ", "refs": { } }, "ErrorMessage": { "base": null, "refs": { "ConflictException$message": "

        The message for the exception.

        ", "MethodNotAllowedException$message": "

        The message for the exception.

        ", "RequestEntityTooLargeException$message": "

        The message for the exception.

        " } }, "GetThingShadowRequest": { "base": "

        The input for the GetThingShadow operation.

        ", "refs": { } }, "GetThingShadowResponse": { "base": "

        The output from the GetThingShadow operation.

        ", "refs": { } }, "InternalFailureException": { "base": "

        An unexpected error has occurred.

        ", "refs": { } }, "InvalidRequestException": { "base": "

        The request is not valid.

        ", "refs": { } }, "JsonDocument": { "base": null, "refs": { "DeleteThingShadowResponse$payload": "

        The state information, in JSON format.

        ", "GetThingShadowResponse$payload": "

        The state information, in JSON format.

        ", "UpdateThingShadowRequest$payload": "

        The state information, in JSON format.

        ", "UpdateThingShadowResponse$payload": "

        The state information, in JSON format.

        " } }, "MethodNotAllowedException": { "base": "

        The specified combination of HTTP verb and URI is not supported.

        ", "refs": { } }, "Payload": { "base": null, "refs": { "PublishRequest$payload": "

        The state information, in JSON format.

        " } }, "PublishRequest": { "base": "

        The input for the Publish operation.

        ", "refs": { } }, "Qos": { "base": null, "refs": { "PublishRequest$qos": "

        The Quality of Service (QoS) level.

        " } }, "RequestEntityTooLargeException": { "base": "

        The payload exceeds the maximum size allowed.

        ", "refs": { } }, "ResourceNotFoundException": { "base": "

        The specified resource does not exist.

        ", "refs": { } }, "ServiceUnavailableException": { "base": "

        The service is temporarily unavailable.

        ", "refs": { } }, "ThingName": { "base": null, "refs": { "DeleteThingShadowRequest$thingName": "

        The name of the thing.

        ", "GetThingShadowRequest$thingName": "

        The name of the thing.

        ", "UpdateThingShadowRequest$thingName": "

        The name of the thing.

        " } }, "ThrottlingException": { "base": "

        The rate exceeds the limit.

        ", "refs": { } }, "Topic": { "base": null, "refs": { "PublishRequest$topic": "

        The name of the MQTT topic.

        " } }, "UnauthorizedException": { "base": "

        You are not authorized to perform this operation.

        ", "refs": { } }, "UnsupportedDocumentEncodingException": { "base": "

        The document encoding is not supported.

        ", "refs": { } }, "UpdateThingShadowRequest": { "base": "

        The input for the UpdateThingShadow operation.

        ", "refs": { } }, "UpdateThingShadowResponse": { "base": "

        The output from the UpdateThingShadow operation.

        ", "refs": { } }, "errorMessage": { "base": null, "refs": { "InternalFailureException$message": "

        The message for the exception.

        ", "InvalidRequestException$message": "

        The message for the exception.

        ", "ResourceNotFoundException$message": "

        The message for the exception.

        ", "ServiceUnavailableException$message": "

        The message for the exception.

        ", "ThrottlingException$message": "

        The message for the exception.

        ", "UnauthorizedException$message": "

        The message for the exception.

        ", "UnsupportedDocumentEncodingException$message": "

        The message for the exception.

        " } } } } aws-sdk-go-1.4.22/models/apis/iot-data/2015-05-28/examples-1.json000066400000000000000000000000541300374646400234120ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/iot/000077500000000000000000000000001300374646400165755ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/iot/2015-05-28/000077500000000000000000000000001300374646400176355ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/iot/2015-05-28/api-2.json000066400000000000000000003364731300374646400214600ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-05-28", "endpointPrefix":"iot", "serviceFullName":"AWS IoT", "signatureVersion":"v4", "signingName":"execute-api", "protocol":"rest-json" }, "operations":{ "AcceptCertificateTransfer":{ "name":"AcceptCertificateTransfer", "http":{ "method":"PATCH", "requestUri":"/accept-certificate-transfer/{certificateId}" }, "input":{"shape":"AcceptCertificateTransferRequest"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"TransferAlreadyCompletedException", "error":{"httpStatusCode":410}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "AttachPrincipalPolicy":{ "name":"AttachPrincipalPolicy", "http":{ "method":"PUT", "requestUri":"/principal-policies/{policyName}" }, "input":{"shape":"AttachPrincipalPolicyRequest"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"LimitExceededException", "error":{"httpStatusCode":410}, "exception":true } ] }, "AttachThingPrincipal":{ "name":"AttachThingPrincipal", "http":{ "method":"PUT", "requestUri":"/things/{thingName}/principals" }, "input":{"shape":"AttachThingPrincipalRequest"}, "output":{"shape":"AttachThingPrincipalResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "CancelCertificateTransfer":{ "name":"CancelCertificateTransfer", "http":{ "method":"PATCH", "requestUri":"/cancel-certificate-transfer/{certificateId}" }, "input":{"shape":"CancelCertificateTransferRequest"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"TransferAlreadyCompletedException", "error":{"httpStatusCode":410}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "CreateCertificateFromCsr":{ "name":"CreateCertificateFromCsr", "http":{ "method":"POST", "requestUri":"/certificates" }, "input":{"shape":"CreateCertificateFromCsrRequest"}, "output":{"shape":"CreateCertificateFromCsrResponse"}, "errors":[ { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "CreateKeysAndCertificate":{ "name":"CreateKeysAndCertificate", "http":{ "method":"POST", "requestUri":"/keys-and-certificate" }, "input":{"shape":"CreateKeysAndCertificateRequest"}, "output":{"shape":"CreateKeysAndCertificateResponse"}, "errors":[ { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "CreatePolicy":{ "name":"CreatePolicy", "http":{ "method":"POST", "requestUri":"/policies/{policyName}" }, "input":{"shape":"CreatePolicyRequest"}, "output":{"shape":"CreatePolicyResponse"}, "errors":[ { "shape":"ResourceAlreadyExistsException", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"MalformedPolicyException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "CreatePolicyVersion":{ "name":"CreatePolicyVersion", "http":{ "method":"POST", "requestUri":"/policies/{policyName}/version" }, "input":{"shape":"CreatePolicyVersionRequest"}, "output":{"shape":"CreatePolicyVersionResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"MalformedPolicyException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"VersionsLimitExceededException", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "CreateThing":{ "name":"CreateThing", "http":{ "method":"POST", "requestUri":"/things/{thingName}" }, "input":{"shape":"CreateThingRequest"}, "output":{"shape":"CreateThingResponse"}, "errors":[ { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"ResourceAlreadyExistsException", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true } ] }, "CreateThingType":{ "name":"CreateThingType", "http":{ "method":"POST", "requestUri":"/thing-types/{thingTypeName}" }, "input":{"shape":"CreateThingTypeRequest"}, "output":{"shape":"CreateThingTypeResponse"}, "errors":[ { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"ResourceAlreadyExistsException", "error":{"httpStatusCode":409}, "exception":true } ] }, "CreateTopicRule":{ "name":"CreateTopicRule", "http":{ "method":"POST", "requestUri":"/rules/{ruleName}" }, "input":{"shape":"CreateTopicRuleRequest"}, "errors":[ { "shape":"SqlParseException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InternalException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceAlreadyExistsException", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true } ] }, "DeleteCACertificate":{ "name":"DeleteCACertificate", "http":{ "method":"DELETE", "requestUri":"/cacertificate/{caCertificateId}" }, "input":{"shape":"DeleteCACertificateRequest"}, "output":{"shape":"DeleteCACertificateResponse"}, "errors":[ { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"CertificateStateException", "error":{"httpStatusCode":406}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true } ] }, "DeleteCertificate":{ "name":"DeleteCertificate", "http":{ "method":"DELETE", "requestUri":"/certificates/{certificateId}" }, "input":{"shape":"DeleteCertificateRequest"}, "errors":[ { "shape":"CertificateStateException", "error":{"httpStatusCode":406}, "exception":true }, { "shape":"DeleteConflictException", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true } ] }, "DeletePolicy":{ "name":"DeletePolicy", "http":{ "method":"DELETE", "requestUri":"/policies/{policyName}" }, "input":{"shape":"DeletePolicyRequest"}, "errors":[ { "shape":"DeleteConflictException", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DeletePolicyVersion":{ "name":"DeletePolicyVersion", "http":{ "method":"DELETE", "requestUri":"/policies/{policyName}/version/{policyVersionId}" }, "input":{"shape":"DeletePolicyVersionRequest"}, "errors":[ { "shape":"DeleteConflictException", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DeleteRegistrationCode":{ "name":"DeleteRegistrationCode", "http":{ "method":"DELETE", "requestUri":"/registrationcode" }, "input":{"shape":"DeleteRegistrationCodeRequest"}, "output":{"shape":"DeleteRegistrationCodeResponse"}, "errors":[ { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DeleteThing":{ "name":"DeleteThing", "http":{ "method":"DELETE", "requestUri":"/things/{thingName}" }, "input":{"shape":"DeleteThingRequest"}, "output":{"shape":"DeleteThingResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"VersionConflictException", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DeleteThingType":{ "name":"DeleteThingType", "http":{ "method":"DELETE", "requestUri":"/thing-types/{thingTypeName}" }, "input":{"shape":"DeleteThingTypeRequest"}, "output":{"shape":"DeleteThingTypeResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DeleteTopicRule":{ "name":"DeleteTopicRule", "http":{ "method":"DELETE", "requestUri":"/rules/{ruleName}" }, "input":{"shape":"DeleteTopicRuleRequest"}, "errors":[ { "shape":"InternalException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true } ] }, "DeprecateThingType":{ "name":"DeprecateThingType", "http":{ "method":"POST", "requestUri":"/thing-types/{thingTypeName}/deprecate" }, "input":{"shape":"DeprecateThingTypeRequest"}, "output":{"shape":"DeprecateThingTypeResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DescribeCACertificate":{ "name":"DescribeCACertificate", "http":{ "method":"GET", "requestUri":"/cacertificate/{caCertificateId}" }, "input":{"shape":"DescribeCACertificateRequest"}, "output":{"shape":"DescribeCACertificateResponse"}, "errors":[ { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true } ] }, "DescribeCertificate":{ "name":"DescribeCertificate", "http":{ "method":"GET", "requestUri":"/certificates/{certificateId}" }, "input":{"shape":"DescribeCertificateRequest"}, "output":{"shape":"DescribeCertificateResponse"}, "errors":[ { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true } ] }, "DescribeEndpoint":{ "name":"DescribeEndpoint", "http":{ "method":"GET", "requestUri":"/endpoint" }, "input":{"shape":"DescribeEndpointRequest"}, "output":{"shape":"DescribeEndpointResponse"}, "errors":[ { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true } ] }, "DescribeThing":{ "name":"DescribeThing", "http":{ "method":"GET", "requestUri":"/things/{thingName}" }, "input":{"shape":"DescribeThingRequest"}, "output":{"shape":"DescribeThingResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DescribeThingType":{ "name":"DescribeThingType", "http":{ "method":"GET", "requestUri":"/thing-types/{thingTypeName}" }, "input":{"shape":"DescribeThingTypeRequest"}, "output":{"shape":"DescribeThingTypeResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DetachPrincipalPolicy":{ "name":"DetachPrincipalPolicy", "http":{ "method":"DELETE", "requestUri":"/principal-policies/{policyName}" }, "input":{"shape":"DetachPrincipalPolicyRequest"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DetachThingPrincipal":{ "name":"DetachThingPrincipal", "http":{ "method":"DELETE", "requestUri":"/things/{thingName}/principals" }, "input":{"shape":"DetachThingPrincipalRequest"}, "output":{"shape":"DetachThingPrincipalResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DisableTopicRule":{ "name":"DisableTopicRule", "http":{ "method":"POST", "requestUri":"/rules/{ruleName}/disable" }, "input":{"shape":"DisableTopicRuleRequest"}, "errors":[ { "shape":"InternalException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true } ] }, "EnableTopicRule":{ "name":"EnableTopicRule", "http":{ "method":"POST", "requestUri":"/rules/{ruleName}/enable" }, "input":{"shape":"EnableTopicRuleRequest"}, "errors":[ { "shape":"InternalException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true } ] }, "GetLoggingOptions":{ "name":"GetLoggingOptions", "http":{ "method":"GET", "requestUri":"/loggingOptions" }, "input":{"shape":"GetLoggingOptionsRequest"}, "output":{"shape":"GetLoggingOptionsResponse"}, "errors":[ { "shape":"InternalException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true } ] }, "GetPolicy":{ "name":"GetPolicy", "http":{ "method":"GET", "requestUri":"/policies/{policyName}" }, "input":{"shape":"GetPolicyRequest"}, "output":{"shape":"GetPolicyResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "GetPolicyVersion":{ "name":"GetPolicyVersion", "http":{ "method":"GET", "requestUri":"/policies/{policyName}/version/{policyVersionId}" }, "input":{"shape":"GetPolicyVersionRequest"}, "output":{"shape":"GetPolicyVersionResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "GetRegistrationCode":{ "name":"GetRegistrationCode", "http":{ "method":"GET", "requestUri":"/registrationcode" }, "input":{"shape":"GetRegistrationCodeRequest"}, "output":{"shape":"GetRegistrationCodeResponse"}, "errors":[ { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true } ] }, "GetTopicRule":{ "name":"GetTopicRule", "http":{ "method":"GET", "requestUri":"/rules/{ruleName}" }, "input":{"shape":"GetTopicRuleRequest"}, "output":{"shape":"GetTopicRuleResponse"}, "errors":[ { "shape":"InternalException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true } ] }, "ListCACertificates":{ "name":"ListCACertificates", "http":{ "method":"GET", "requestUri":"/cacertificates" }, "input":{"shape":"ListCACertificatesRequest"}, "output":{"shape":"ListCACertificatesResponse"}, "errors":[ { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "ListCertificates":{ "name":"ListCertificates", "http":{ "method":"GET", "requestUri":"/certificates" }, "input":{"shape":"ListCertificatesRequest"}, "output":{"shape":"ListCertificatesResponse"}, "errors":[ { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "ListCertificatesByCA":{ "name":"ListCertificatesByCA", "http":{ "method":"GET", "requestUri":"/certificates-by-ca/{caCertificateId}" }, "input":{"shape":"ListCertificatesByCARequest"}, "output":{"shape":"ListCertificatesByCAResponse"}, "errors":[ { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "ListOutgoingCertificates":{ "name":"ListOutgoingCertificates", "http":{ "method":"GET", "requestUri":"/certificates-out-going" }, "input":{"shape":"ListOutgoingCertificatesRequest"}, "output":{"shape":"ListOutgoingCertificatesResponse"}, "errors":[ { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "ListPolicies":{ "name":"ListPolicies", "http":{ "method":"GET", "requestUri":"/policies" }, "input":{"shape":"ListPoliciesRequest"}, "output":{"shape":"ListPoliciesResponse"}, "errors":[ { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "ListPolicyPrincipals":{ "name":"ListPolicyPrincipals", "http":{ "method":"GET", "requestUri":"/policy-principals" }, "input":{"shape":"ListPolicyPrincipalsRequest"}, "output":{"shape":"ListPolicyPrincipalsResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "ListPolicyVersions":{ "name":"ListPolicyVersions", "http":{ "method":"GET", "requestUri":"/policies/{policyName}/version" }, "input":{"shape":"ListPolicyVersionsRequest"}, "output":{"shape":"ListPolicyVersionsResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "ListPrincipalPolicies":{ "name":"ListPrincipalPolicies", "http":{ "method":"GET", "requestUri":"/principal-policies" }, "input":{"shape":"ListPrincipalPoliciesRequest"}, "output":{"shape":"ListPrincipalPoliciesResponse"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "ListPrincipalThings":{ "name":"ListPrincipalThings", "http":{ "method":"GET", "requestUri":"/principals/things" }, "input":{"shape":"ListPrincipalThingsRequest"}, "output":{"shape":"ListPrincipalThingsResponse"}, "errors":[ { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true } ] }, "ListThingPrincipals":{ "name":"ListThingPrincipals", "http":{ "method":"GET", "requestUri":"/things/{thingName}/principals" }, "input":{"shape":"ListThingPrincipalsRequest"}, "output":{"shape":"ListThingPrincipalsResponse"}, "errors":[ { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true } ] }, "ListThingTypes":{ "name":"ListThingTypes", "http":{ "method":"GET", "requestUri":"/thing-types" }, "input":{"shape":"ListThingTypesRequest"}, "output":{"shape":"ListThingTypesResponse"}, "errors":[ { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "ListThings":{ "name":"ListThings", "http":{ "method":"GET", "requestUri":"/things" }, "input":{"shape":"ListThingsRequest"}, "output":{"shape":"ListThingsResponse"}, "errors":[ { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "ListTopicRules":{ "name":"ListTopicRules", "http":{ "method":"GET", "requestUri":"/rules" }, "input":{"shape":"ListTopicRulesRequest"}, "output":{"shape":"ListTopicRulesResponse"}, "errors":[ { "shape":"InternalException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true } ] }, "RegisterCACertificate":{ "name":"RegisterCACertificate", "http":{ "method":"POST", "requestUri":"/cacertificate" }, "input":{"shape":"RegisterCACertificateRequest"}, "output":{"shape":"RegisterCACertificateResponse"}, "errors":[ { "shape":"ResourceAlreadyExistsException", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"RegistrationCodeValidationException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"CertificateValidationException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"LimitExceededException", "error":{"httpStatusCode":410}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "RegisterCertificate":{ "name":"RegisterCertificate", "http":{ "method":"POST", "requestUri":"/certificate/register" }, "input":{"shape":"RegisterCertificateRequest"}, "output":{"shape":"RegisterCertificateResponse"}, "errors":[ { "shape":"ResourceAlreadyExistsException", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"CertificateValidationException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"CertificateStateException", "error":{"httpStatusCode":406}, "exception":true }, { "shape":"CertificateConflictException", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "RejectCertificateTransfer":{ "name":"RejectCertificateTransfer", "http":{ "method":"PATCH", "requestUri":"/reject-certificate-transfer/{certificateId}" }, "input":{"shape":"RejectCertificateTransferRequest"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"TransferAlreadyCompletedException", "error":{"httpStatusCode":410}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "ReplaceTopicRule":{ "name":"ReplaceTopicRule", "http":{ "method":"PATCH", "requestUri":"/rules/{ruleName}" }, "input":{"shape":"ReplaceTopicRuleRequest"}, "errors":[ { "shape":"SqlParseException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InternalException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true } ] }, "SetDefaultPolicyVersion":{ "name":"SetDefaultPolicyVersion", "http":{ "method":"PATCH", "requestUri":"/policies/{policyName}/version/{policyVersionId}" }, "input":{"shape":"SetDefaultPolicyVersionRequest"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "SetLoggingOptions":{ "name":"SetLoggingOptions", "http":{ "method":"POST", "requestUri":"/loggingOptions" }, "input":{"shape":"SetLoggingOptionsRequest"}, "errors":[ { "shape":"InternalException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true } ] }, "TransferCertificate":{ "name":"TransferCertificate", "http":{ "method":"PATCH", "requestUri":"/transfer-certificate/{certificateId}" }, "input":{"shape":"TransferCertificateRequest"}, "output":{"shape":"TransferCertificateResponse"}, "errors":[ { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"CertificateStateException", "error":{"httpStatusCode":406}, "exception":true }, { "shape":"TransferConflictException", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "UpdateCACertificate":{ "name":"UpdateCACertificate", "http":{ "method":"PUT", "requestUri":"/cacertificate/{caCertificateId}" }, "input":{"shape":"UpdateCACertificateRequest"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "UpdateCertificate":{ "name":"UpdateCertificate", "http":{ "method":"PUT", "requestUri":"/certificates/{certificateId}" }, "input":{"shape":"UpdateCertificateRequest"}, "errors":[ { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"CertificateStateException", "error":{"httpStatusCode":406}, "exception":true }, { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "UpdateThing":{ "name":"UpdateThing", "http":{ "method":"PATCH", "requestUri":"/things/{thingName}" }, "input":{"shape":"UpdateThingRequest"}, "output":{"shape":"UpdateThingResponse"}, "errors":[ { "shape":"InvalidRequestException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"VersionConflictException", "error":{"httpStatusCode":409}, "exception":true }, { "shape":"ThrottlingException", "error":{"httpStatusCode":429}, "exception":true }, { "shape":"UnauthorizedException", "error":{"httpStatusCode":401}, "exception":true }, { "shape":"ServiceUnavailableException", "error":{"httpStatusCode":503}, "exception":true, "fault":true }, { "shape":"InternalFailureException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true } ] } }, "shapes":{ "AcceptCertificateTransferRequest":{ "type":"structure", "required":["certificateId"], "members":{ "certificateId":{ "shape":"CertificateId", "location":"uri", "locationName":"certificateId" }, "setAsActive":{ "shape":"SetAsActive", "location":"querystring", "locationName":"setAsActive" } } }, "Action":{ "type":"structure", "members":{ "dynamoDB":{"shape":"DynamoDBAction"}, "dynamoDBv2":{"shape":"DynamoDBv2Action"}, "lambda":{"shape":"LambdaAction"}, "sns":{"shape":"SnsAction"}, "sqs":{"shape":"SqsAction"}, "kinesis":{"shape":"KinesisAction"}, "republish":{"shape":"RepublishAction"}, "s3":{"shape":"S3Action"}, "firehose":{"shape":"FirehoseAction"}, "cloudwatchMetric":{"shape":"CloudwatchMetricAction"}, "cloudwatchAlarm":{"shape":"CloudwatchAlarmAction"}, "elasticsearch":{"shape":"ElasticsearchAction"} } }, "ActionList":{ "type":"list", "member":{"shape":"Action"}, "min":0, "max":10 }, "AlarmName":{"type":"string"}, "AllowAutoRegistration":{"type":"boolean"}, "AscendingOrder":{"type":"boolean"}, "AttachPrincipalPolicyRequest":{ "type":"structure", "required":[ "policyName", "principal" ], "members":{ "policyName":{ "shape":"PolicyName", "location":"uri", "locationName":"policyName" }, "principal":{ "shape":"Principal", "location":"header", "locationName":"x-amzn-iot-principal" } } }, "AttachThingPrincipalRequest":{ "type":"structure", "required":[ "thingName", "principal" ], "members":{ "thingName":{ "shape":"ThingName", "location":"uri", "locationName":"thingName" }, "principal":{ "shape":"Principal", "location":"header", "locationName":"x-amzn-principal" } } }, "AttachThingPrincipalResponse":{ "type":"structure", "members":{ } }, "AttributeName":{ "type":"string", "max":128, "pattern":"[a-zA-Z0-9_.,@/:#-]+" }, "AttributePayload":{ "type":"structure", "members":{ "attributes":{"shape":"Attributes"}, "merge":{"shape":"Flag"} } }, "AttributeValue":{ "type":"string", "max":800, "pattern":"[a-zA-Z0-9_.,@/:#-]*" }, "Attributes":{ "type":"map", "key":{"shape":"AttributeName"}, "value":{"shape":"AttributeValue"} }, "AutoRegistrationStatus":{ "type":"string", "enum":[ "ENABLE", "DISABLE" ] }, "AwsAccountId":{ "type":"string", "pattern":"[0-9]{12}" }, "AwsArn":{"type":"string"}, "AwsIotSqlVersion":{"type":"string"}, "Boolean":{"type":"boolean"}, "BucketName":{"type":"string"}, "CACertificate":{ "type":"structure", "members":{ "certificateArn":{"shape":"CertificateArn"}, "certificateId":{"shape":"CertificateId"}, "status":{"shape":"CACertificateStatus"}, "creationDate":{"shape":"DateType"} } }, "CACertificateDescription":{ "type":"structure", "members":{ "certificateArn":{"shape":"CertificateArn"}, "certificateId":{"shape":"CertificateId"}, "status":{"shape":"CACertificateStatus"}, "certificatePem":{"shape":"CertificatePem"}, "ownedBy":{"shape":"AwsAccountId"}, "creationDate":{"shape":"DateType"}, "autoRegistrationStatus":{"shape":"AutoRegistrationStatus"} } }, "CACertificateStatus":{ "type":"string", "enum":[ "ACTIVE", "INACTIVE" ] }, "CACertificates":{ "type":"list", "member":{"shape":"CACertificate"} }, "CancelCertificateTransferRequest":{ "type":"structure", "required":["certificateId"], "members":{ "certificateId":{ "shape":"CertificateId", "location":"uri", "locationName":"certificateId" } } }, "CannedAccessControlList":{ "type":"string", "enum":[ "private", "public-read", "public-read-write", "aws-exec-read", "authenticated-read", "bucket-owner-read", "bucket-owner-full-control", "log-delivery-write" ] }, "Certificate":{ "type":"structure", "members":{ "certificateArn":{"shape":"CertificateArn"}, "certificateId":{"shape":"CertificateId"}, "status":{"shape":"CertificateStatus"}, "creationDate":{"shape":"DateType"} } }, "CertificateArn":{"type":"string"}, "CertificateConflictException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":409}, "exception":true }, "CertificateDescription":{ "type":"structure", "members":{ "certificateArn":{"shape":"CertificateArn"}, "certificateId":{"shape":"CertificateId"}, "caCertificateId":{"shape":"CertificateId"}, "status":{"shape":"CertificateStatus"}, "certificatePem":{"shape":"CertificatePem"}, "ownedBy":{"shape":"AwsAccountId"}, "previousOwnedBy":{"shape":"AwsAccountId"}, "creationDate":{"shape":"DateType"}, "lastModifiedDate":{"shape":"DateType"}, "transferData":{"shape":"TransferData"} } }, "CertificateId":{ "type":"string", "min":64, "max":64, "pattern":"(0x)?[a-fA-F0-9]+" }, "CertificatePem":{ "type":"string", "min":1, "max":65536 }, "CertificateSigningRequest":{ "type":"string", "min":1 }, "CertificateStateException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":406}, "exception":true }, "CertificateStatus":{ "type":"string", "enum":[ "ACTIVE", "INACTIVE", "REVOKED", "PENDING_TRANSFER", "REGISTER_INACTIVE", "PENDING_ACTIVATION" ] }, "CertificateValidationException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "Certificates":{ "type":"list", "member":{"shape":"Certificate"} }, "ClientId":{"type":"string"}, "CloudwatchAlarmAction":{ "type":"structure", "required":[ "roleArn", "alarmName", "stateReason", "stateValue" ], "members":{ "roleArn":{"shape":"AwsArn"}, "alarmName":{"shape":"AlarmName"}, "stateReason":{"shape":"StateReason"}, "stateValue":{"shape":"StateValue"} } }, "CloudwatchMetricAction":{ "type":"structure", "required":[ "roleArn", "metricNamespace", "metricName", "metricValue", "metricUnit" ], "members":{ "roleArn":{"shape":"AwsArn"}, "metricNamespace":{"shape":"MetricNamespace"}, "metricName":{"shape":"MetricName"}, "metricValue":{"shape":"MetricValue"}, "metricUnit":{"shape":"MetricUnit"}, "metricTimestamp":{"shape":"MetricTimestamp"} } }, "CreateCertificateFromCsrRequest":{ "type":"structure", "required":["certificateSigningRequest"], "members":{ "certificateSigningRequest":{"shape":"CertificateSigningRequest"}, "setAsActive":{ "shape":"SetAsActive", "location":"querystring", "locationName":"setAsActive" } } }, "CreateCertificateFromCsrResponse":{ "type":"structure", "members":{ "certificateArn":{"shape":"CertificateArn"}, "certificateId":{"shape":"CertificateId"}, "certificatePem":{"shape":"CertificatePem"} } }, "CreateKeysAndCertificateRequest":{ "type":"structure", "members":{ "setAsActive":{ "shape":"SetAsActive", "location":"querystring", "locationName":"setAsActive" } } }, "CreateKeysAndCertificateResponse":{ "type":"structure", "members":{ "certificateArn":{"shape":"CertificateArn"}, "certificateId":{"shape":"CertificateId"}, "certificatePem":{"shape":"CertificatePem"}, "keyPair":{"shape":"KeyPair"} } }, "CreatePolicyRequest":{ "type":"structure", "required":[ "policyName", "policyDocument" ], "members":{ "policyName":{ "shape":"PolicyName", "location":"uri", "locationName":"policyName" }, "policyDocument":{"shape":"PolicyDocument"} } }, "CreatePolicyResponse":{ "type":"structure", "members":{ "policyName":{"shape":"PolicyName"}, "policyArn":{"shape":"PolicyArn"}, "policyDocument":{"shape":"PolicyDocument"}, "policyVersionId":{"shape":"PolicyVersionId"} } }, "CreatePolicyVersionRequest":{ "type":"structure", "required":[ "policyName", "policyDocument" ], "members":{ "policyName":{ "shape":"PolicyName", "location":"uri", "locationName":"policyName" }, "policyDocument":{"shape":"PolicyDocument"}, "setAsDefault":{ "shape":"SetAsDefault", "location":"querystring", "locationName":"setAsDefault" } } }, "CreatePolicyVersionResponse":{ "type":"structure", "members":{ "policyArn":{"shape":"PolicyArn"}, "policyDocument":{"shape":"PolicyDocument"}, "policyVersionId":{"shape":"PolicyVersionId"}, "isDefaultVersion":{"shape":"IsDefaultVersion"} } }, "CreateThingRequest":{ "type":"structure", "required":["thingName"], "members":{ "thingName":{ "shape":"ThingName", "location":"uri", "locationName":"thingName" }, "thingTypeName":{"shape":"ThingTypeName"}, "attributePayload":{"shape":"AttributePayload"} } }, "CreateThingResponse":{ "type":"structure", "members":{ "thingName":{"shape":"ThingName"}, "thingArn":{"shape":"ThingArn"} } }, "CreateThingTypeRequest":{ "type":"structure", "required":["thingTypeName"], "members":{ "thingTypeName":{ "shape":"ThingTypeName", "location":"uri", "locationName":"thingTypeName" }, "thingTypeProperties":{"shape":"ThingTypeProperties"} } }, "CreateThingTypeResponse":{ "type":"structure", "members":{ "thingTypeName":{"shape":"ThingTypeName"}, "thingTypeArn":{"shape":"ThingTypeArn"} } }, "CreateTopicRuleRequest":{ "type":"structure", "required":[ "ruleName", "topicRulePayload" ], "members":{ "ruleName":{ "shape":"RuleName", "location":"uri", "locationName":"ruleName" }, "topicRulePayload":{"shape":"TopicRulePayload"} }, "payload":"topicRulePayload" }, "CreatedAtDate":{"type":"timestamp"}, "CreationDate":{"type":"timestamp"}, "DateType":{"type":"timestamp"}, "DeleteCACertificateRequest":{ "type":"structure", "required":["certificateId"], "members":{ "certificateId":{ "shape":"CertificateId", "location":"uri", "locationName":"caCertificateId" } } }, "DeleteCACertificateResponse":{ "type":"structure", "members":{ } }, "DeleteCertificateRequest":{ "type":"structure", "required":["certificateId"], "members":{ "certificateId":{ "shape":"CertificateId", "location":"uri", "locationName":"certificateId" } } }, "DeleteConflictException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":409}, "exception":true }, "DeletePolicyRequest":{ "type":"structure", "required":["policyName"], "members":{ "policyName":{ "shape":"PolicyName", "location":"uri", "locationName":"policyName" } } }, "DeletePolicyVersionRequest":{ "type":"structure", "required":[ "policyName", "policyVersionId" ], "members":{ "policyName":{ "shape":"PolicyName", "location":"uri", "locationName":"policyName" }, "policyVersionId":{ "shape":"PolicyVersionId", "location":"uri", "locationName":"policyVersionId" } } }, "DeleteRegistrationCodeRequest":{ "type":"structure", "members":{ } }, "DeleteRegistrationCodeResponse":{ "type":"structure", "members":{ } }, "DeleteThingRequest":{ "type":"structure", "required":["thingName"], "members":{ "thingName":{ "shape":"ThingName", "location":"uri", "locationName":"thingName" }, "expectedVersion":{ "shape":"OptionalVersion", "location":"querystring", "locationName":"expectedVersion" } } }, "DeleteThingResponse":{ "type":"structure", "members":{ } }, "DeleteThingTypeRequest":{ "type":"structure", "required":["thingTypeName"], "members":{ "thingTypeName":{ "shape":"ThingTypeName", "location":"uri", "locationName":"thingTypeName" } } }, "DeleteThingTypeResponse":{ "type":"structure", "members":{ } }, "DeleteTopicRuleRequest":{ "type":"structure", "members":{ "ruleName":{ "shape":"RuleName", "location":"uri", "locationName":"ruleName" } }, "required":["ruleName"] }, "DeliveryStreamName":{"type":"string"}, "DeprecateThingTypeRequest":{ "type":"structure", "required":["thingTypeName"], "members":{ "thingTypeName":{ "shape":"ThingTypeName", "location":"uri", "locationName":"thingTypeName" }, "undoDeprecate":{"shape":"UndoDeprecate"} } }, "DeprecateThingTypeResponse":{ "type":"structure", "members":{ } }, "DeprecationDate":{"type":"timestamp"}, "DescribeCACertificateRequest":{ "type":"structure", "required":["certificateId"], "members":{ "certificateId":{ "shape":"CertificateId", "location":"uri", "locationName":"caCertificateId" } } }, "DescribeCACertificateResponse":{ "type":"structure", "members":{ "certificateDescription":{"shape":"CACertificateDescription"} } }, "DescribeCertificateRequest":{ "type":"structure", "required":["certificateId"], "members":{ "certificateId":{ "shape":"CertificateId", "location":"uri", "locationName":"certificateId" } } }, "DescribeCertificateResponse":{ "type":"structure", "members":{ "certificateDescription":{"shape":"CertificateDescription"} } }, "DescribeEndpointRequest":{ "type":"structure", "members":{ } }, "DescribeEndpointResponse":{ "type":"structure", "members":{ "endpointAddress":{"shape":"EndpointAddress"} } }, "DescribeThingRequest":{ "type":"structure", "required":["thingName"], "members":{ "thingName":{ "shape":"ThingName", "location":"uri", "locationName":"thingName" } } }, "DescribeThingResponse":{ "type":"structure", "members":{ "defaultClientId":{"shape":"ClientId"}, "thingName":{"shape":"ThingName"}, "thingTypeName":{"shape":"ThingTypeName"}, "attributes":{"shape":"Attributes"}, "version":{"shape":"Version"} } }, "DescribeThingTypeRequest":{ "type":"structure", "required":["thingTypeName"], "members":{ "thingTypeName":{ "shape":"ThingTypeName", "location":"uri", "locationName":"thingTypeName" } } }, "DescribeThingTypeResponse":{ "type":"structure", "members":{ "thingTypeName":{"shape":"ThingTypeName"}, "thingTypeProperties":{"shape":"ThingTypeProperties"}, "thingTypeMetadata":{"shape":"ThingTypeMetadata"} } }, "Description":{"type":"string"}, "DetachPrincipalPolicyRequest":{ "type":"structure", "required":[ "policyName", "principal" ], "members":{ "policyName":{ "shape":"PolicyName", "location":"uri", "locationName":"policyName" }, "principal":{ "shape":"Principal", "location":"header", "locationName":"x-amzn-iot-principal" } } }, "DetachThingPrincipalRequest":{ "type":"structure", "required":[ "thingName", "principal" ], "members":{ "thingName":{ "shape":"ThingName", "location":"uri", "locationName":"thingName" }, "principal":{ "shape":"Principal", "location":"header", "locationName":"x-amzn-principal" } } }, "DetachThingPrincipalResponse":{ "type":"structure", "members":{ } }, "DisableTopicRuleRequest":{ "type":"structure", "required":["ruleName"], "members":{ "ruleName":{ "shape":"RuleName", "location":"uri", "locationName":"ruleName" } } }, "DynamoDBAction":{ "type":"structure", "required":[ "tableName", "roleArn", "hashKeyField", "hashKeyValue" ], "members":{ "tableName":{"shape":"TableName"}, "roleArn":{"shape":"AwsArn"}, "operation":{"shape":"DynamoOperation"}, "hashKeyField":{"shape":"HashKeyField"}, "hashKeyValue":{"shape":"HashKeyValue"}, "hashKeyType":{"shape":"DynamoKeyType"}, "rangeKeyField":{"shape":"RangeKeyField"}, "rangeKeyValue":{"shape":"RangeKeyValue"}, "rangeKeyType":{"shape":"DynamoKeyType"}, "payloadField":{"shape":"PayloadField"} } }, "DynamoDBv2Action":{ "type":"structure", "members":{ "roleArn":{"shape":"AwsArn"}, "putItem":{"shape":"PutItemInput"} } }, "DynamoKeyType":{ "type":"string", "enum":[ "STRING", "NUMBER" ] }, "DynamoOperation":{"type":"string"}, "ElasticsearchAction":{ "type":"structure", "required":[ "roleArn", "endpoint", "index", "type", "id" ], "members":{ "roleArn":{"shape":"AwsArn"}, "endpoint":{"shape":"ElasticsearchEndpoint"}, "index":{"shape":"ElasticsearchIndex"}, "type":{"shape":"ElasticsearchType"}, "id":{"shape":"ElasticsearchId"} } }, "ElasticsearchEndpoint":{ "type":"string", "pattern":"https?://.*" }, "ElasticsearchId":{"type":"string"}, "ElasticsearchIndex":{"type":"string"}, "ElasticsearchType":{"type":"string"}, "EnableTopicRuleRequest":{ "type":"structure", "required":["ruleName"], "members":{ "ruleName":{ "shape":"RuleName", "location":"uri", "locationName":"ruleName" } } }, "EndpointAddress":{"type":"string"}, "FirehoseAction":{ "type":"structure", "required":[ "roleArn", "deliveryStreamName" ], "members":{ "roleArn":{"shape":"AwsArn"}, "deliveryStreamName":{"shape":"DeliveryStreamName"}, "separator":{"shape":"FirehoseSeparator"} } }, "FirehoseSeparator":{ "type":"string", "pattern":"([\\n\\t])|(\\r\\n)|(,)" }, "Flag":{"type":"boolean"}, "FunctionArn":{"type":"string"}, "GetLoggingOptionsRequest":{ "type":"structure", "members":{ } }, "GetLoggingOptionsResponse":{ "type":"structure", "members":{ "roleArn":{"shape":"AwsArn"}, "logLevel":{"shape":"LogLevel"} } }, "GetPolicyRequest":{ "type":"structure", "required":["policyName"], "members":{ "policyName":{ "shape":"PolicyName", "location":"uri", "locationName":"policyName" } } }, "GetPolicyResponse":{ "type":"structure", "members":{ "policyName":{"shape":"PolicyName"}, "policyArn":{"shape":"PolicyArn"}, "policyDocument":{"shape":"PolicyDocument"}, "defaultVersionId":{"shape":"PolicyVersionId"} } }, "GetPolicyVersionRequest":{ "type":"structure", "required":[ "policyName", "policyVersionId" ], "members":{ "policyName":{ "shape":"PolicyName", "location":"uri", "locationName":"policyName" }, "policyVersionId":{ "shape":"PolicyVersionId", "location":"uri", "locationName":"policyVersionId" } } }, "GetPolicyVersionResponse":{ "type":"structure", "members":{ "policyArn":{"shape":"PolicyArn"}, "policyName":{"shape":"PolicyName"}, "policyDocument":{"shape":"PolicyDocument"}, "policyVersionId":{"shape":"PolicyVersionId"}, "isDefaultVersion":{"shape":"IsDefaultVersion"} } }, "GetRegistrationCodeRequest":{ "type":"structure", "members":{ } }, "GetRegistrationCodeResponse":{ "type":"structure", "members":{ "registrationCode":{"shape":"RegistrationCode"} } }, "GetTopicRuleRequest":{ "type":"structure", "required":["ruleName"], "members":{ "ruleName":{ "shape":"RuleName", "location":"uri", "locationName":"ruleName" } } }, "GetTopicRuleResponse":{ "type":"structure", "members":{ "ruleArn":{"shape":"RuleArn"}, "rule":{"shape":"TopicRule"} } }, "HashKeyField":{"type":"string"}, "HashKeyValue":{"type":"string"}, "InternalException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":500}, "exception":true, "fault":true }, "InternalFailureException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":500}, "exception":true, "fault":true }, "InvalidRequestException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "IsDefaultVersion":{"type":"boolean"}, "IsDisabled":{"type":"boolean"}, "Key":{"type":"string"}, "KeyPair":{ "type":"structure", "members":{ "PublicKey":{"shape":"PublicKey"}, "PrivateKey":{"shape":"PrivateKey"} } }, "KinesisAction":{ "type":"structure", "required":[ "roleArn", "streamName" ], "members":{ "roleArn":{"shape":"AwsArn"}, "streamName":{"shape":"StreamName"}, "partitionKey":{"shape":"PartitionKey"} } }, "LambdaAction":{ "type":"structure", "required":["functionArn"], "members":{ "functionArn":{"shape":"FunctionArn"} } }, "LimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":410}, "exception":true }, "ListCACertificatesRequest":{ "type":"structure", "members":{ "pageSize":{ "shape":"PageSize", "location":"querystring", "locationName":"pageSize" }, "marker":{ "shape":"Marker", "location":"querystring", "locationName":"marker" }, "ascendingOrder":{ "shape":"AscendingOrder", "location":"querystring", "locationName":"isAscendingOrder" } } }, "ListCACertificatesResponse":{ "type":"structure", "members":{ "certificates":{"shape":"CACertificates"}, "nextMarker":{"shape":"Marker"} } }, "ListCertificatesByCARequest":{ "type":"structure", "required":["caCertificateId"], "members":{ "caCertificateId":{ "shape":"CertificateId", "location":"uri", "locationName":"caCertificateId" }, "pageSize":{ "shape":"PageSize", "location":"querystring", "locationName":"pageSize" }, "marker":{ "shape":"Marker", "location":"querystring", "locationName":"marker" }, "ascendingOrder":{ "shape":"AscendingOrder", "location":"querystring", "locationName":"isAscendingOrder" } } }, "ListCertificatesByCAResponse":{ "type":"structure", "members":{ "certificates":{"shape":"Certificates"}, "nextMarker":{"shape":"Marker"} } }, "ListCertificatesRequest":{ "type":"structure", "members":{ "pageSize":{ "shape":"PageSize", "location":"querystring", "locationName":"pageSize" }, "marker":{ "shape":"Marker", "location":"querystring", "locationName":"marker" }, "ascendingOrder":{ "shape":"AscendingOrder", "location":"querystring", "locationName":"isAscendingOrder" } } }, "ListCertificatesResponse":{ "type":"structure", "members":{ "certificates":{"shape":"Certificates"}, "nextMarker":{"shape":"Marker"} } }, "ListOutgoingCertificatesRequest":{ "type":"structure", "members":{ "pageSize":{ "shape":"PageSize", "location":"querystring", "locationName":"pageSize" }, "marker":{ "shape":"Marker", "location":"querystring", "locationName":"marker" }, "ascendingOrder":{ "shape":"AscendingOrder", "location":"querystring", "locationName":"isAscendingOrder" } } }, "ListOutgoingCertificatesResponse":{ "type":"structure", "members":{ "outgoingCertificates":{"shape":"OutgoingCertificates"}, "nextMarker":{"shape":"Marker"} } }, "ListPoliciesRequest":{ "type":"structure", "members":{ "marker":{ "shape":"Marker", "location":"querystring", "locationName":"marker" }, "pageSize":{ "shape":"PageSize", "location":"querystring", "locationName":"pageSize" }, "ascendingOrder":{ "shape":"AscendingOrder", "location":"querystring", "locationName":"isAscendingOrder" } } }, "ListPoliciesResponse":{ "type":"structure", "members":{ "policies":{"shape":"Policies"}, "nextMarker":{"shape":"Marker"} } }, "ListPolicyPrincipalsRequest":{ "type":"structure", "required":["policyName"], "members":{ "policyName":{ "shape":"PolicyName", "location":"header", "locationName":"x-amzn-iot-policy" }, "marker":{ "shape":"Marker", "location":"querystring", "locationName":"marker" }, "pageSize":{ "shape":"PageSize", "location":"querystring", "locationName":"pageSize" }, "ascendingOrder":{ "shape":"AscendingOrder", "location":"querystring", "locationName":"isAscendingOrder" } } }, "ListPolicyPrincipalsResponse":{ "type":"structure", "members":{ "principals":{"shape":"Principals"}, "nextMarker":{"shape":"Marker"} } }, "ListPolicyVersionsRequest":{ "type":"structure", "required":["policyName"], "members":{ "policyName":{ "shape":"PolicyName", "location":"uri", "locationName":"policyName" } } }, "ListPolicyVersionsResponse":{ "type":"structure", "members":{ "policyVersions":{"shape":"PolicyVersions"} } }, "ListPrincipalPoliciesRequest":{ "type":"structure", "required":["principal"], "members":{ "principal":{ "shape":"Principal", "location":"header", "locationName":"x-amzn-iot-principal" }, "marker":{ "shape":"Marker", "location":"querystring", "locationName":"marker" }, "pageSize":{ "shape":"PageSize", "location":"querystring", "locationName":"pageSize" }, "ascendingOrder":{ "shape":"AscendingOrder", "location":"querystring", "locationName":"isAscendingOrder" } } }, "ListPrincipalPoliciesResponse":{ "type":"structure", "members":{ "policies":{"shape":"Policies"}, "nextMarker":{"shape":"Marker"} } }, "ListPrincipalThingsRequest":{ "type":"structure", "required":["principal"], "members":{ "nextToken":{ "shape":"NextToken", "location":"querystring", "locationName":"nextToken" }, "maxResults":{ "shape":"MaxResults", "location":"querystring", "locationName":"maxResults" }, "principal":{ "shape":"Principal", "location":"header", "locationName":"x-amzn-principal" } } }, "ListPrincipalThingsResponse":{ "type":"structure", "members":{ "things":{"shape":"ThingNameList"}, "nextToken":{"shape":"NextToken"} } }, "ListThingPrincipalsRequest":{ "type":"structure", "required":["thingName"], "members":{ "thingName":{ "shape":"ThingName", "location":"uri", "locationName":"thingName" } } }, "ListThingPrincipalsResponse":{ "type":"structure", "members":{ "principals":{"shape":"Principals"} } }, "ListThingTypesRequest":{ "type":"structure", "members":{ "nextToken":{ "shape":"NextToken", "location":"querystring", "locationName":"nextToken" }, "maxResults":{ "shape":"MaxResults", "location":"querystring", "locationName":"maxResults" }, "thingTypeName":{ "shape":"ThingTypeName", "location":"querystring", "locationName":"thingTypeName" } } }, "ListThingTypesResponse":{ "type":"structure", "members":{ "thingTypes":{"shape":"ThingTypeList"}, "nextToken":{"shape":"NextToken"} } }, "ListThingsRequest":{ "type":"structure", "members":{ "nextToken":{ "shape":"NextToken", "location":"querystring", "locationName":"nextToken" }, "maxResults":{ "shape":"MaxResults", "location":"querystring", "locationName":"maxResults" }, "attributeName":{ "shape":"AttributeName", "location":"querystring", "locationName":"attributeName" }, "attributeValue":{ "shape":"AttributeValue", "location":"querystring", "locationName":"attributeValue" }, "thingTypeName":{ "shape":"ThingTypeName", "location":"querystring", "locationName":"thingTypeName" } } }, "ListThingsResponse":{ "type":"structure", "members":{ "things":{"shape":"ThingAttributeList"}, "nextToken":{"shape":"NextToken"} } }, "ListTopicRulesRequest":{ "type":"structure", "members":{ "topic":{ "shape":"Topic", "location":"querystring", "locationName":"topic" }, "maxResults":{ "shape":"MaxResults", "location":"querystring", "locationName":"maxResults" }, "nextToken":{ "shape":"NextToken", "location":"querystring", "locationName":"nextToken" }, "ruleDisabled":{ "shape":"IsDisabled", "location":"querystring", "locationName":"ruleDisabled" } } }, "ListTopicRulesResponse":{ "type":"structure", "members":{ "rules":{"shape":"TopicRuleList"}, "nextToken":{"shape":"NextToken"} } }, "LogLevel":{ "type":"string", "enum":[ "DEBUG", "INFO", "ERROR", "WARN", "DISABLED" ] }, "LoggingOptionsPayload":{ "type":"structure", "required":["roleArn"], "members":{ "roleArn":{"shape":"AwsArn"}, "logLevel":{"shape":"LogLevel"} } }, "MalformedPolicyException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "Marker":{"type":"string"}, "MaxResults":{ "type":"integer", "min":1, "max":10000 }, "Message":{ "type":"string", "max":128 }, "MessageFormat":{ "type":"string", "enum":[ "RAW", "JSON" ] }, "MetricName":{"type":"string"}, "MetricNamespace":{"type":"string"}, "MetricTimestamp":{"type":"string"}, "MetricUnit":{"type":"string"}, "MetricValue":{"type":"string"}, "NextToken":{"type":"string"}, "OptionalVersion":{"type":"long"}, "OutgoingCertificate":{ "type":"structure", "members":{ "certificateArn":{"shape":"CertificateArn"}, "certificateId":{"shape":"CertificateId"}, "transferredTo":{"shape":"AwsAccountId"}, "transferDate":{"shape":"DateType"}, "transferMessage":{"shape":"Message"}, "creationDate":{"shape":"DateType"} } }, "OutgoingCertificates":{ "type":"list", "member":{"shape":"OutgoingCertificate"} }, "PageSize":{ "type":"integer", "min":1, "max":250 }, "PartitionKey":{"type":"string"}, "PayloadField":{"type":"string"}, "Policies":{ "type":"list", "member":{"shape":"Policy"} }, "Policy":{ "type":"structure", "members":{ "policyName":{"shape":"PolicyName"}, "policyArn":{"shape":"PolicyArn"} } }, "PolicyArn":{"type":"string"}, "PolicyDocument":{"type":"string"}, "PolicyName":{ "type":"string", "min":1, "max":128, "pattern":"[\\w+=,.@-]+" }, "PolicyVersion":{ "type":"structure", "members":{ "versionId":{"shape":"PolicyVersionId"}, "isDefaultVersion":{"shape":"IsDefaultVersion"}, "createDate":{"shape":"DateType"} } }, "PolicyVersionId":{ "type":"string", "pattern":"[0-9]+" }, "PolicyVersions":{ "type":"list", "member":{"shape":"PolicyVersion"} }, "Principal":{"type":"string"}, "PrincipalArn":{"type":"string"}, "Principals":{ "type":"list", "member":{"shape":"PrincipalArn"} }, "PrivateKey":{ "type":"string", "min":1, "sensitive":true }, "PublicKey":{ "type":"string", "min":1 }, "PutItemInput":{ "type":"structure", "required":["tableName"], "members":{ "tableName":{"shape":"TableName"} } }, "QueueUrl":{"type":"string"}, "RangeKeyField":{"type":"string"}, "RangeKeyValue":{"type":"string"}, "RegisterCACertificateRequest":{ "type":"structure", "required":[ "caCertificate", "verificationCertificate" ], "members":{ "caCertificate":{"shape":"CertificatePem"}, "verificationCertificate":{"shape":"CertificatePem"}, "setAsActive":{ "shape":"SetAsActive", "location":"querystring", "locationName":"setAsActive" }, "allowAutoRegistration":{ "shape":"AllowAutoRegistration", "location":"querystring", "locationName":"allowAutoRegistration" } } }, "RegisterCACertificateResponse":{ "type":"structure", "members":{ "certificateArn":{"shape":"CertificateArn"}, "certificateId":{"shape":"CertificateId"} } }, "RegisterCertificateRequest":{ "type":"structure", "required":["certificatePem"], "members":{ "certificatePem":{"shape":"CertificatePem"}, "caCertificatePem":{"shape":"CertificatePem"}, "setAsActive":{ "shape":"SetAsActiveFlag", "deprecated":true, "location":"querystring", "locationName":"setAsActive" }, "status":{"shape":"CertificateStatus"} } }, "RegisterCertificateResponse":{ "type":"structure", "members":{ "certificateArn":{"shape":"CertificateArn"}, "certificateId":{"shape":"CertificateId"} } }, "RegistrationCode":{ "type":"string", "min":64, "max":64, "pattern":"(0x)?[a-fA-F0-9]+" }, "RegistrationCodeValidationException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "RejectCertificateTransferRequest":{ "type":"structure", "required":["certificateId"], "members":{ "certificateId":{ "shape":"CertificateId", "location":"uri", "locationName":"certificateId" }, "rejectReason":{"shape":"Message"} } }, "RemoveThingType":{"type":"boolean"}, "ReplaceTopicRuleRequest":{ "type":"structure", "required":[ "ruleName", "topicRulePayload" ], "members":{ "ruleName":{ "shape":"RuleName", "location":"uri", "locationName":"ruleName" }, "topicRulePayload":{"shape":"TopicRulePayload"} }, "payload":"topicRulePayload" }, "RepublishAction":{ "type":"structure", "required":[ "roleArn", "topic" ], "members":{ "roleArn":{"shape":"AwsArn"}, "topic":{"shape":"TopicPattern"} } }, "ResourceAlreadyExistsException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"}, "resourceId":{"shape":"resourceId"}, "resourceArn":{"shape":"resourceArn"} }, "error":{"httpStatusCode":409}, "exception":true }, "ResourceNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":404}, "exception":true }, "RuleArn":{"type":"string"}, "RuleName":{ "type":"string", "min":1, "max":128, "pattern":"^[a-zA-Z0-9_]+$" }, "S3Action":{ "type":"structure", "required":[ "roleArn", "bucketName", "key" ], "members":{ "roleArn":{"shape":"AwsArn"}, "bucketName":{"shape":"BucketName"}, "key":{"shape":"Key"}, "cannedAcl":{"shape":"CannedAccessControlList"} } }, "SQL":{"type":"string"}, "SearchableAttributes":{ "type":"list", "member":{"shape":"AttributeName"} }, "ServiceUnavailableException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":503}, "exception":true, "fault":true }, "SetAsActive":{"type":"boolean"}, "SetAsActiveFlag":{"type":"boolean"}, "SetAsDefault":{"type":"boolean"}, "SetDefaultPolicyVersionRequest":{ "type":"structure", "required":[ "policyName", "policyVersionId" ], "members":{ "policyName":{ "shape":"PolicyName", "location":"uri", "locationName":"policyName" }, "policyVersionId":{ "shape":"PolicyVersionId", "location":"uri", "locationName":"policyVersionId" } } }, "SetLoggingOptionsRequest":{ "type":"structure", "required":["loggingOptionsPayload"], "members":{ "loggingOptionsPayload":{"shape":"LoggingOptionsPayload"} }, "payload":"loggingOptionsPayload" }, "SnsAction":{ "type":"structure", "required":[ "targetArn", "roleArn" ], "members":{ "targetArn":{"shape":"AwsArn"}, "roleArn":{"shape":"AwsArn"}, "messageFormat":{"shape":"MessageFormat"} } }, "SqlParseException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "SqsAction":{ "type":"structure", "required":[ "roleArn", "queueUrl" ], "members":{ "roleArn":{"shape":"AwsArn"}, "queueUrl":{"shape":"QueueUrl"}, "useBase64":{"shape":"UseBase64"} } }, "StateReason":{"type":"string"}, "StateValue":{"type":"string"}, "StreamName":{"type":"string"}, "TableName":{"type":"string"}, "ThingArn":{"type":"string"}, "ThingAttribute":{ "type":"structure", "members":{ "thingName":{"shape":"ThingName"}, "thingTypeName":{"shape":"ThingTypeName"}, "attributes":{"shape":"Attributes"}, "version":{"shape":"Version"} } }, "ThingAttributeList":{ "type":"list", "member":{"shape":"ThingAttribute"} }, "ThingName":{ "type":"string", "min":1, "max":128, "pattern":"[a-zA-Z0-9:_-]+" }, "ThingNameList":{ "type":"list", "member":{"shape":"ThingName"} }, "ThingTypeArn":{"type":"string"}, "ThingTypeDefinition":{ "type":"structure", "members":{ "thingTypeName":{"shape":"ThingTypeName"}, "thingTypeProperties":{"shape":"ThingTypeProperties"}, "thingTypeMetadata":{"shape":"ThingTypeMetadata"} } }, "ThingTypeDescription":{ "type":"string", "max":2028, "pattern":"[\\p{Graph}\\x20]*" }, "ThingTypeList":{ "type":"list", "member":{"shape":"ThingTypeDefinition"} }, "ThingTypeMetadata":{ "type":"structure", "members":{ "deprecated":{"shape":"Boolean"}, "deprecationDate":{"shape":"DeprecationDate"}, "creationDate":{"shape":"CreationDate"} } }, "ThingTypeName":{ "type":"string", "min":1, "max":128, "pattern":"[a-zA-Z0-9:_-]+" }, "ThingTypeProperties":{ "type":"structure", "members":{ "thingTypeDescription":{"shape":"ThingTypeDescription"}, "searchableAttributes":{"shape":"SearchableAttributes"} } }, "ThrottlingException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":429}, "exception":true }, "Topic":{"type":"string"}, "TopicPattern":{"type":"string"}, "TopicRule":{ "type":"structure", "members":{ "ruleName":{"shape":"RuleName"}, "sql":{"shape":"SQL"}, "description":{"shape":"Description"}, "createdAt":{"shape":"CreatedAtDate"}, "actions":{"shape":"ActionList"}, "ruleDisabled":{"shape":"IsDisabled"}, "awsIotSqlVersion":{"shape":"AwsIotSqlVersion"} } }, "TopicRuleList":{ "type":"list", "member":{"shape":"TopicRuleListItem"} }, "TopicRuleListItem":{ "type":"structure", "members":{ "ruleArn":{"shape":"RuleArn"}, "ruleName":{"shape":"RuleName"}, "topicPattern":{"shape":"TopicPattern"}, "createdAt":{"shape":"CreatedAtDate"}, "ruleDisabled":{"shape":"IsDisabled"} } }, "TopicRulePayload":{ "type":"structure", "required":[ "sql", "actions" ], "members":{ "sql":{"shape":"SQL"}, "description":{"shape":"Description"}, "actions":{"shape":"ActionList"}, "ruleDisabled":{"shape":"IsDisabled"}, "awsIotSqlVersion":{"shape":"AwsIotSqlVersion"} } }, "TransferAlreadyCompletedException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":410}, "exception":true }, "TransferCertificateRequest":{ "type":"structure", "required":[ "certificateId", "targetAwsAccount" ], "members":{ "certificateId":{ "shape":"CertificateId", "location":"uri", "locationName":"certificateId" }, "targetAwsAccount":{ "shape":"AwsAccountId", "location":"querystring", "locationName":"targetAwsAccount" }, "transferMessage":{"shape":"Message"} } }, "TransferCertificateResponse":{ "type":"structure", "members":{ "transferredCertificateArn":{"shape":"CertificateArn"} } }, "TransferConflictException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":409}, "exception":true }, "TransferData":{ "type":"structure", "members":{ "transferMessage":{"shape":"Message"}, "rejectReason":{"shape":"Message"}, "transferDate":{"shape":"DateType"}, "acceptDate":{"shape":"DateType"}, "rejectDate":{"shape":"DateType"} } }, "UnauthorizedException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":401}, "exception":true }, "UndoDeprecate":{"type":"boolean"}, "UpdateCACertificateRequest":{ "type":"structure", "required":["certificateId"], "members":{ "certificateId":{ "shape":"CertificateId", "location":"uri", "locationName":"caCertificateId" }, "newStatus":{ "shape":"CACertificateStatus", "location":"querystring", "locationName":"newStatus" }, "newAutoRegistrationStatus":{ "shape":"AutoRegistrationStatus", "location":"querystring", "locationName":"newAutoRegistrationStatus" } } }, "UpdateCertificateRequest":{ "type":"structure", "required":[ "certificateId", "newStatus" ], "members":{ "certificateId":{ "shape":"CertificateId", "location":"uri", "locationName":"certificateId" }, "newStatus":{ "shape":"CertificateStatus", "location":"querystring", "locationName":"newStatus" } } }, "UpdateThingRequest":{ "type":"structure", "required":["thingName"], "members":{ "thingName":{ "shape":"ThingName", "location":"uri", "locationName":"thingName" }, "thingTypeName":{"shape":"ThingTypeName"}, "attributePayload":{"shape":"AttributePayload"}, "expectedVersion":{"shape":"OptionalVersion"}, "removeThingType":{"shape":"RemoveThingType"} } }, "UpdateThingResponse":{ "type":"structure", "members":{ } }, "UseBase64":{"type":"boolean"}, "Version":{"type":"long"}, "VersionConflictException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":409}, "exception":true }, "VersionsLimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":409}, "exception":true }, "errorMessage":{"type":"string"}, "resourceArn":{"type":"string"}, "resourceId":{"type":"string"} } } aws-sdk-go-1.4.22/models/apis/iot/2015-05-28/docs-2.json000066400000000000000000002346651300374646400216370ustar00rootroot00000000000000{ "version": "2.0", "operations": { "AcceptCertificateTransfer": "

        Accepts a pending certificate transfer. The default state of the certificate is INACTIVE.

        To check for pending certificate transfers, call ListCertificates to enumerate your certificates.

        ", "AttachPrincipalPolicy": "

        Attaches the specified policy to the specified principal (certificate or other credential).

        ", "AttachThingPrincipal": "

        Attaches the specified principal to the specified thing.

        ", "CancelCertificateTransfer": "

        Cancels a pending transfer for the specified certificate.

        Note Only the transfer source account can use this operation to cancel a transfer. (Transfer destinations can use RejectCertificateTransfer instead.) After transfer, AWS IoT returns the certificate to the source account in the INACTIVE state. After the destination account has accepted the transfer, the transfer cannot be cancelled.

        After a certificate transfer is cancelled, the status of the certificate changes from PENDING_TRANSFER to INACTIVE.

        ", "CreateCertificateFromCsr": "

        Creates an X.509 certificate using the specified certificate signing request.

        Note Reusing the same certificate signing request (CSR) results in a distinct certificate.

        You can create multiple certificates in a batch by creating a directory, copying multiple .csr files into that directory, and then specifying that directory on the command line. The following commands show how to create a batch of certificates given a batch of CSRs.

        Assuming a set of CSRs are located inside of the directory my-csr-directory:

        On Linux and OS X, the command is:

        $ ls my-csr-directory/ | xargs -I {} aws iot create-certificate-from-csr --certificate-signing-request file://my-csr-directory/{}

        This command lists all of the CSRs in my-csr-directory and pipes each CSR file name to the aws iot create-certificate-from-csr AWS CLI command to create a certificate for the corresponding CSR.

        The aws iot create-certificate-from-csr part of the command can also be run in parallel to speed up the certificate creation process:

        $ ls my-csr-directory/ | xargs -P 10 -I {} aws iot create-certificate-from-csr --certificate-signing-request file://my-csr-directory/{}

        On Windows PowerShell, the command to create certificates for all CSRs in my-csr-directory is:

        > ls -Name my-csr-directory | %{aws iot create-certificate-from-csr --certificate-signing-request file://my-csr-directory/$_}

        On a Windows command prompt, the command to create certificates for all CSRs in my-csr-directory is:

        > forfiles /p my-csr-directory /c \"cmd /c aws iot create-certificate-from-csr --certificate-signing-request file://@path\"

        ", "CreateKeysAndCertificate": "

        Creates a 2048-bit RSA key pair and issues an X.509 certificate using the issued public key.

        Note This is the only time AWS IoT issues the private key for this certificate, so it is important to keep it in a secure location.

        ", "CreatePolicy": "

        Creates an AWS IoT policy.

        The created policy is the default version for the policy. This operation creates a policy version with a version identifier of 1 and sets 1 as the policy's default version.

        ", "CreatePolicyVersion": "

        Creates a new version of the specified AWS IoT policy. To update a policy, create a new policy version. A managed policy can have up to five versions. If the policy has five versions, you must use DeletePolicyVersion to delete an existing version before you create a new one.

        Optionally, you can set the new version as the policy's default version. The default version is the operative version (that is, the version that is in effect for the certificates to which the policy is attached).

        ", "CreateThing": "

        Creates a thing record in the thing registry.

        ", "CreateThingType": "

        Creates a new thing type.

        ", "CreateTopicRule": "

        Creates a rule. Creating rules is an administrator-level action. Any user who has permission to create rules will be able to access data processed by the rule.

        ", "DeleteCACertificate": "

        Deletes a registered CA certificate.

        ", "DeleteCertificate": "

        Deletes the specified certificate.

        A certificate cannot be deleted if it has a policy attached to it or if its status is set to ACTIVE. To delete a certificate, first use the DetachPrincipalPolicy API to detach all policies. Next, use the UpdateCertificate API to set the certificate to the INACTIVE status.

        ", "DeletePolicy": "

        Deletes the specified policy.

        A policy cannot be deleted if it has non-default versions or it is attached to any certificate.

        To delete a policy, use the DeletePolicyVersion API to delete all non-default versions of the policy; use the DetachPrincipalPolicy API to detach the policy from any certificate; and then use the DeletePolicy API to delete the policy.

        When a policy is deleted using DeletePolicy, its default version is deleted with it.

        ", "DeletePolicyVersion": "

        Deletes the specified version of the specified policy. You cannot delete the default version of a policy using this API. To delete the default version of a policy, use DeletePolicy. To find out which version of a policy is marked as the default version, use ListPolicyVersions.

        ", "DeleteRegistrationCode": "

        Deletes a CA certificate registration code.

        ", "DeleteThing": "

        Deletes the specified thing.

        ", "DeleteThingType": "

        Deletes the specified thing type . You cannot delete a thing type if it has things associated with it. To delete a thing type, first mark it as deprecated by calling DeprecateThingType, then remove any associated things by calling UpdateThing to change the thing type on any associated thing, and finally use DeleteThingType to delete the thing type.

        ", "DeleteTopicRule": "

        Deletes the specified rule.

        ", "DeprecateThingType": "

        Deprecates a thing type. You can not associate new things with deprecated thing type.

        ", "DescribeCACertificate": "

        Describes a registered CA certificate.

        ", "DescribeCertificate": "

        Gets information about the specified certificate.

        ", "DescribeEndpoint": "

        Returns a unique endpoint specific to the AWS account making the call.

        ", "DescribeThing": "

        Gets information about the specified thing.

        ", "DescribeThingType": "

        Gets information about the specified thing type.

        ", "DetachPrincipalPolicy": "

        Removes the specified policy from the specified certificate.

        ", "DetachThingPrincipal": "

        Detaches the specified principal from the specified thing.

        ", "DisableTopicRule": "

        Disables the specified rule.

        ", "EnableTopicRule": "

        Enables the specified rule.

        ", "GetLoggingOptions": "

        Gets the logging options.

        ", "GetPolicy": "

        Gets information about the specified policy with the policy document of the default version.

        ", "GetPolicyVersion": "

        Gets information about the specified policy version.

        ", "GetRegistrationCode": "

        Gets a registration code used to register a CA certificate with AWS IoT.

        ", "GetTopicRule": "

        Gets information about the specified rule.

        ", "ListCACertificates": "

        Lists the CA certificates registered for your AWS account.

        The results are paginated with a default page size of 25. You can use the returned marker to retrieve additional results.

        ", "ListCertificates": "

        Lists the certificates registered in your AWS account.

        The results are paginated with a default page size of 25. You can use the returned marker to retrieve additional results.

        ", "ListCertificatesByCA": "

        List the device certificates signed by the specified CA certificate.

        ", "ListOutgoingCertificates": "

        Lists certificates that are being transfered but not yet accepted.

        ", "ListPolicies": "

        Lists your policies.

        ", "ListPolicyPrincipals": "

        Lists the principals associated with the specified policy.

        ", "ListPolicyVersions": "

        Lists the versions of the specified policy and identifies the default version.

        ", "ListPrincipalPolicies": "

        Lists the policies attached to the specified principal. If you use an Cognito identity, the ID must be in AmazonCognito Identity format.

        ", "ListPrincipalThings": "

        Lists the things associated with the specified principal.

        ", "ListThingPrincipals": "

        Lists the principals associated with the specified thing.

        ", "ListThingTypes": "

        Lists the existing thing types.

        ", "ListThings": "

        Lists your things. Use the attributeName and attributeValue parameters to filter your things. For example, calling ListThings with attributeName=Color and attributeValue=Red retrieves all things in the registry that contain an attribute Color with the value Red.

        ", "ListTopicRules": "

        Lists the rules for the specific topic.

        ", "RegisterCACertificate": "

        Registers a CA certificate with AWS IoT. This CA certificate can then be used to sign device certificates, which can be then registered with AWS IoT. You can register up to 10 CA certificates per AWS account that have the same subject field and public key. This enables you to have up to 10 certificate authorities sign your device certificates. If you have more than one CA certificate registered, make sure you pass the CA certificate when you register your device certificates with the RegisterCertificate API.

        ", "RegisterCertificate": "

        Registers a device certificate with AWS IoT. If you have more than one CA certificate that has the same subject field, you must specify the CA certificate that was used to sign the device certificate being registered.

        ", "RejectCertificateTransfer": "

        Rejects a pending certificate transfer. After AWS IoT rejects a certificate transfer, the certificate status changes from PENDING_TRANSFER to INACTIVE.

        To check for pending certificate transfers, call ListCertificates to enumerate your certificates.

        This operation can only be called by the transfer destination. After it is called, the certificate will be returned to the source's account in the INACTIVE state.

        ", "ReplaceTopicRule": "

        Replaces the specified rule. You must specify all parameters for the new rule. Creating rules is an administrator-level action. Any user who has permission to create rules will be able to access data processed by the rule.

        ", "SetDefaultPolicyVersion": "

        Sets the specified version of the specified policy as the policy's default (operative) version. This action affects all certificates to which the policy is attached. To list the principals the policy is attached to, use the ListPrincipalPolicy API.

        ", "SetLoggingOptions": "

        Sets the logging options.

        ", "TransferCertificate": "

        Transfers the specified certificate to the specified AWS account.

        You can cancel the transfer until it is acknowledged by the recipient.

        No notification is sent to the transfer destination's account. It is up to the caller to notify the transfer target.

        The certificate being transferred must not be in the ACTIVE state. You can use the UpdateCertificate API to deactivate it.

        The certificate must not have any policies attached to it. You can use the DetachPrincipalPolicy API to detach them.

        ", "UpdateCACertificate": "

        Updates a registered CA certificate.

        ", "UpdateCertificate": "

        Updates the status of the specified certificate. This operation is idempotent.

        Moving a certificate from the ACTIVE state (including REVOKED) will not disconnect currently connected devices, but these devices will be unable to reconnect.

        The ACTIVE state is required to authenticate devices connecting to AWS IoT using a certificate.

        ", "UpdateThing": "

        Updates the data for a thing.

        " }, "service": "AWS IoT

        AWS IoT provides secure, bi-directional communication between Internet-connected things (such as sensors, actuators, embedded devices, or smart appliances) and the AWS cloud. You can discover your custom IoT-Data endpoint to communicate with, configure rules for data processing and integration with other services, organize resources associated with each thing (Thing Registry), configure logging, and create and manage policies and credentials to authenticate things.

        For more information about how AWS IoT works, see the Developer Guide.

        ", "shapes": { "AcceptCertificateTransferRequest": { "base": "

        The input for the AcceptCertificateTransfer operation.

        ", "refs": { } }, "Action": { "base": "

        Describes the actions associated with a rule.

        ", "refs": { "ActionList$member": null } }, "ActionList": { "base": null, "refs": { "TopicRule$actions": "

        The actions associated with the rule.

        ", "TopicRulePayload$actions": "

        The actions associated with the rule.

        " } }, "AlarmName": { "base": null, "refs": { "CloudwatchAlarmAction$alarmName": "

        The CloudWatch alarm name.

        " } }, "AllowAutoRegistration": { "base": null, "refs": { "RegisterCACertificateRequest$allowAutoRegistration": "

        Allows this CA certificate to be used for auto registration of device certificates.

        " } }, "AscendingOrder": { "base": null, "refs": { "ListCACertificatesRequest$ascendingOrder": "

        Determines the order of the results.

        ", "ListCertificatesByCARequest$ascendingOrder": "

        Specifies the order for results. If True, the results are returned in ascending order, based on the creation date.

        ", "ListCertificatesRequest$ascendingOrder": "

        Specifies the order for results. If True, the results are returned in ascending order, based on the creation date.

        ", "ListOutgoingCertificatesRequest$ascendingOrder": "

        Specifies the order for results. If True, the results are returned in ascending order, based on the creation date.

        ", "ListPoliciesRequest$ascendingOrder": "

        Specifies the order for results. If true, the results are returned in ascending creation order.

        ", "ListPolicyPrincipalsRequest$ascendingOrder": "

        Specifies the order for results. If true, the results are returned in ascending creation order.

        ", "ListPrincipalPoliciesRequest$ascendingOrder": "

        Specifies the order for results. If true, results are returned in ascending creation order.

        " } }, "AttachPrincipalPolicyRequest": { "base": "

        The input for the AttachPrincipalPolicy operation.

        ", "refs": { } }, "AttachThingPrincipalRequest": { "base": "

        The input for the AttachThingPrincipal operation.

        ", "refs": { } }, "AttachThingPrincipalResponse": { "base": "

        The output from the AttachThingPrincipal operation.

        ", "refs": { } }, "AttributeName": { "base": null, "refs": { "Attributes$key": null, "ListThingsRequest$attributeName": "

        The attribute name used to search for things.

        ", "SearchableAttributes$member": null } }, "AttributePayload": { "base": "

        The attribute payload.

        ", "refs": { "CreateThingRequest$attributePayload": "

        The attribute payload, which consists of up to three name/value pairs in a JSON document. For example:

        {\\\"attributes\\\":{\\\"string1\\\":\\\"string2\\\"}})

        ", "UpdateThingRequest$attributePayload": "

        A list of thing attributes, a JSON string containing name-value pairs. For example:

        {\\\"attributes\\\":{\\\"name1\\\":\\\"value2\\\"}})

        This data is used to add new attributes or update existing attributes.

        " } }, "AttributeValue": { "base": "An attribute value for an Thing. An empty or null value in Update means that existing value for that attribute should be deleted. Empty and null values in create are ignored.", "refs": { "Attributes$value": null, "ListThingsRequest$attributeValue": "

        The attribute value used to search for things.

        " } }, "Attributes": { "base": null, "refs": { "AttributePayload$attributes": "

        A JSON string containing up to three key-value pair in JSON format. For example:

        {\\\"attributes\\\":{\\\"string1\\\":\\\"string2\\\"}})

        ", "DescribeThingResponse$attributes": "

        The thing attributes.

        ", "ThingAttribute$attributes": "

        A list of thing attributes which are name-value pairs.

        " } }, "AutoRegistrationStatus": { "base": null, "refs": { "CACertificateDescription$autoRegistrationStatus": "

        Whether the CA certificate configured for auto registration of device certificates. Valid values are \"ENABLE\" and \"DISABLE\"

        ", "UpdateCACertificateRequest$newAutoRegistrationStatus": "

        The new value for the auto registration status. Valid values are: \"ENABLE\" or \"DISABLE\".

        " } }, "AwsAccountId": { "base": null, "refs": { "CACertificateDescription$ownedBy": "

        The owner of the CA certificate.

        ", "CertificateDescription$ownedBy": "

        The ID of the AWS account that owns the certificate.

        ", "CertificateDescription$previousOwnedBy": "

        The ID of the AWS account of the previous owner of the certificate.

        ", "OutgoingCertificate$transferredTo": "

        The AWS account to which the transfer was made.

        ", "TransferCertificateRequest$targetAwsAccount": "

        The AWS account.

        " } }, "AwsArn": { "base": null, "refs": { "CloudwatchAlarmAction$roleArn": "

        The IAM role that allows access to the CloudWatch alarm.

        ", "CloudwatchMetricAction$roleArn": "

        The IAM role that allows access to the CloudWatch metric.

        ", "DynamoDBAction$roleArn": "

        The ARN of the IAM role that grants access to the DynamoDB table.

        ", "DynamoDBv2Action$roleArn": "

        The ARN of the IAM role that grants access to the DynamoDB table.

        ", "ElasticsearchAction$roleArn": "

        The IAM role ARN that has access to Elasticsearch.

        ", "FirehoseAction$roleArn": "

        The IAM role that grants access to the Amazon Kinesis Firehost stream.

        ", "GetLoggingOptionsResponse$roleArn": "

        The ARN of the IAM role that grants access.

        ", "KinesisAction$roleArn": "

        The ARN of the IAM role that grants access to the Amazon Kinesis stream.

        ", "LoggingOptionsPayload$roleArn": "

        The ARN of the IAM role that grants access.

        ", "RepublishAction$roleArn": "

        The ARN of the IAM role that grants access.

        ", "S3Action$roleArn": "

        The ARN of the IAM role that grants access.

        ", "SnsAction$targetArn": "

        The ARN of the SNS topic.

        ", "SnsAction$roleArn": "

        The ARN of the IAM role that grants access.

        ", "SqsAction$roleArn": "

        The ARN of the IAM role that grants access.

        " } }, "AwsIotSqlVersion": { "base": null, "refs": { "TopicRule$awsIotSqlVersion": "

        The version of the SQL rules engine to use when evaluating the rule.

        ", "TopicRulePayload$awsIotSqlVersion": "

        The version of the SQL rules engine to use when evaluating the rule.

        " } }, "Boolean": { "base": null, "refs": { "ThingTypeMetadata$deprecated": "

        Whether the thing type is deprecated. If true, no new things could be associated with this type.

        " } }, "BucketName": { "base": null, "refs": { "S3Action$bucketName": "

        The Amazon S3 bucket.

        " } }, "CACertificate": { "base": "

        A CA certificate.

        ", "refs": { "CACertificates$member": null } }, "CACertificateDescription": { "base": "

        Describes a CA certificate.

        ", "refs": { "DescribeCACertificateResponse$certificateDescription": "

        The CA certificate description.

        " } }, "CACertificateStatus": { "base": null, "refs": { "CACertificate$status": "

        The status of the CA certificate.

        The status value REGISTER_INACTIVE is deprecated and should not be used.

        ", "CACertificateDescription$status": "

        The status of a CA certificate.

        ", "UpdateCACertificateRequest$newStatus": "

        The updated status of the CA certificate.

        Note: The status value REGISTER_INACTIVE is deprecated and should not be used.

        " } }, "CACertificates": { "base": null, "refs": { "ListCACertificatesResponse$certificates": "

        The CA certificates registered in your AWS account.

        " } }, "CancelCertificateTransferRequest": { "base": "

        The input for the CancelCertificateTransfer operation.

        ", "refs": { } }, "CannedAccessControlList": { "base": null, "refs": { "S3Action$cannedAcl": "

        The Amazon S3 canned ACL that controls access to the object identified by the object key. For more information, see S3 canned ACLs.

        " } }, "Certificate": { "base": "

        Information about a certificate.

        ", "refs": { "Certificates$member": null } }, "CertificateArn": { "base": null, "refs": { "CACertificate$certificateArn": "

        The ARN of the CA certificate.

        ", "CACertificateDescription$certificateArn": "

        The CA certificate ARN.

        ", "Certificate$certificateArn": "

        The ARN of the certificate.

        ", "CertificateDescription$certificateArn": "

        The ARN of the certificate.

        ", "CreateCertificateFromCsrResponse$certificateArn": "

        The Amazon Resource Name (ARN) of the certificate. You can use the ARN as a principal for policy operations.

        ", "CreateKeysAndCertificateResponse$certificateArn": "

        The ARN of the certificate.

        ", "OutgoingCertificate$certificateArn": "

        The certificate ARN.

        ", "RegisterCACertificateResponse$certificateArn": "

        The CA certificate ARN.

        ", "RegisterCertificateResponse$certificateArn": "

        The certificate ARN.

        ", "TransferCertificateResponse$transferredCertificateArn": "

        The ARN of the certificate.

        " } }, "CertificateConflictException": { "base": "

        Unable to verify the CA certificate used to sign the device certificate you are attempting to register. This is happens when you have registered more than one CA certificate that has the same subject field and public key.

        ", "refs": { } }, "CertificateDescription": { "base": "

        Describes a certificate.

        ", "refs": { "DescribeCertificateResponse$certificateDescription": "

        The description of the certificate.

        " } }, "CertificateId": { "base": null, "refs": { "AcceptCertificateTransferRequest$certificateId": "

        The ID of the certificate.

        ", "CACertificate$certificateId": "

        The ID of the CA certificate.

        ", "CACertificateDescription$certificateId": "

        The CA certificate ID.

        ", "CancelCertificateTransferRequest$certificateId": "

        The ID of the certificate.

        ", "Certificate$certificateId": "

        The ID of the certificate.

        ", "CertificateDescription$certificateId": "

        The ID of the certificate.

        ", "CertificateDescription$caCertificateId": "

        The certificate ID of the CA certificate used to sign this certificate.

        ", "CreateCertificateFromCsrResponse$certificateId": "

        The ID of the certificate. Certificate management operations only take a certificateId.

        ", "CreateKeysAndCertificateResponse$certificateId": "

        The ID of the certificate. AWS IoT issues a default subject name for the certificate (for example, AWS IoT Certificate).

        ", "DeleteCACertificateRequest$certificateId": "

        The ID of the certificate to delete.

        ", "DeleteCertificateRequest$certificateId": "

        The ID of the certificate.

        ", "DescribeCACertificateRequest$certificateId": "

        The CA certificate identifier.

        ", "DescribeCertificateRequest$certificateId": "

        The ID of the certificate.

        ", "ListCertificatesByCARequest$caCertificateId": "

        The ID of the CA certificate. This operation will list all registered device certificate that were signed by this CA certificate.

        ", "OutgoingCertificate$certificateId": "

        The certificate ID.

        ", "RegisterCACertificateResponse$certificateId": "

        The CA certificate identifier.

        ", "RegisterCertificateResponse$certificateId": "

        The certificate identifier.

        ", "RejectCertificateTransferRequest$certificateId": "

        The ID of the certificate.

        ", "TransferCertificateRequest$certificateId": "

        The ID of the certificate.

        ", "UpdateCACertificateRequest$certificateId": "

        The CA certificate identifier.

        ", "UpdateCertificateRequest$certificateId": "

        The ID of the certificate.

        " } }, "CertificatePem": { "base": null, "refs": { "CACertificateDescription$certificatePem": "

        The CA certificate data, in PEM format.

        ", "CertificateDescription$certificatePem": "

        The certificate data, in PEM format.

        ", "CreateCertificateFromCsrResponse$certificatePem": "

        The certificate data, in PEM format.

        ", "CreateKeysAndCertificateResponse$certificatePem": "

        The certificate data, in PEM format.

        ", "RegisterCACertificateRequest$caCertificate": "

        The CA certificate.

        ", "RegisterCACertificateRequest$verificationCertificate": "

        The private key verification certificate.

        ", "RegisterCertificateRequest$certificatePem": "

        The certificate data, in PEM format.

        ", "RegisterCertificateRequest$caCertificatePem": "

        The CA certificate used to sign the device certificate being registered.

        " } }, "CertificateSigningRequest": { "base": null, "refs": { "CreateCertificateFromCsrRequest$certificateSigningRequest": "

        The certificate signing request (CSR).

        " } }, "CertificateStateException": { "base": "

        The certificate operation is not allowed.

        ", "refs": { } }, "CertificateStatus": { "base": null, "refs": { "Certificate$status": "

        The status of the certificate.

        The status value REGISTER_INACTIVE is deprecated and should not be used.

        ", "CertificateDescription$status": "

        The status of the certificate.

        ", "RegisterCertificateRequest$status": null, "UpdateCertificateRequest$newStatus": "

        The new status.

        Note: Setting the status to PENDING_TRANSFER will result in an exception being thrown. PENDING_TRANSFER is a status used internally by AWS IoT. It is not intended for developer use.

        Note: The status value REGISTER_INACTIVE is deprecated and should not be used.

        " } }, "CertificateValidationException": { "base": "

        The certificate is invalid.

        ", "refs": { } }, "Certificates": { "base": null, "refs": { "ListCertificatesByCAResponse$certificates": "

        The device certificates signed by the specified CA certificate.

        ", "ListCertificatesResponse$certificates": "

        The descriptions of the certificates.

        " } }, "ClientId": { "base": null, "refs": { "DescribeThingResponse$defaultClientId": "

        The default client ID.

        " } }, "CloudwatchAlarmAction": { "base": "

        Describes an action that updates a CloudWatch alarm.

        ", "refs": { "Action$cloudwatchAlarm": "

        Change the state of a CloudWatch alarm.

        " } }, "CloudwatchMetricAction": { "base": "

        Describes an action that captures a CloudWatch metric.

        ", "refs": { "Action$cloudwatchMetric": "

        Capture a CloudWatch metric.

        " } }, "CreateCertificateFromCsrRequest": { "base": "

        The input for the CreateCertificateFromCsr operation.

        ", "refs": { } }, "CreateCertificateFromCsrResponse": { "base": "

        The output from the CreateCertificateFromCsr operation.

        ", "refs": { } }, "CreateKeysAndCertificateRequest": { "base": "

        The input for the CreateKeysAndCertificate operation.

        ", "refs": { } }, "CreateKeysAndCertificateResponse": { "base": "

        The output of the CreateKeysAndCertificate operation.

        ", "refs": { } }, "CreatePolicyRequest": { "base": "

        The input for the CreatePolicy operation.

        ", "refs": { } }, "CreatePolicyResponse": { "base": "

        The output from the CreatePolicy operation.

        ", "refs": { } }, "CreatePolicyVersionRequest": { "base": "

        The input for the CreatePolicyVersion operation.

        ", "refs": { } }, "CreatePolicyVersionResponse": { "base": "

        The output of the CreatePolicyVersion operation.

        ", "refs": { } }, "CreateThingRequest": { "base": "

        The input for the CreateThing operation.

        ", "refs": { } }, "CreateThingResponse": { "base": "

        The output of the CreateThing operation.

        ", "refs": { } }, "CreateThingTypeRequest": { "base": "

        The input for the CreateThingType operation.

        ", "refs": { } }, "CreateThingTypeResponse": { "base": "

        The output of the CreateThingType operation.

        ", "refs": { } }, "CreateTopicRuleRequest": { "base": "

        The input for the CreateTopicRule operation.

        ", "refs": { } }, "CreatedAtDate": { "base": null, "refs": { "TopicRule$createdAt": "

        The date and time the rule was created.

        ", "TopicRuleListItem$createdAt": "

        The date and time the rule was created.

        " } }, "CreationDate": { "base": null, "refs": { "ThingTypeMetadata$creationDate": "

        The date and time when the thing type was created.

        " } }, "DateType": { "base": null, "refs": { "CACertificate$creationDate": "

        The date the CA certificate was created.

        ", "CACertificateDescription$creationDate": "

        The date the CA certificate was created.

        ", "Certificate$creationDate": "

        The date and time the certificate was created.

        ", "CertificateDescription$creationDate": "

        The date and time the certificate was created.

        ", "CertificateDescription$lastModifiedDate": "

        The date and time the certificate was last modified.

        ", "OutgoingCertificate$transferDate": "

        The date the transfer was initiated.

        ", "OutgoingCertificate$creationDate": "

        The certificate creation date.

        ", "PolicyVersion$createDate": "

        The date and time the policy was created.

        ", "TransferData$transferDate": "

        The date the transfer took place.

        ", "TransferData$acceptDate": "

        The date the transfer was accepted.

        ", "TransferData$rejectDate": "

        The date the transfer was rejected.

        " } }, "DeleteCACertificateRequest": { "base": "

        Input for the DeleteCACertificate operation.

        ", "refs": { } }, "DeleteCACertificateResponse": { "base": "

        The output for the DeleteCACertificate operation.

        ", "refs": { } }, "DeleteCertificateRequest": { "base": "

        The input for the DeleteCertificate operation.

        ", "refs": { } }, "DeleteConflictException": { "base": "

        You can't delete the resource because it is attached to one or more resources.

        ", "refs": { } }, "DeletePolicyRequest": { "base": "

        The input for the DeletePolicy operation.

        ", "refs": { } }, "DeletePolicyVersionRequest": { "base": "

        The input for the DeletePolicyVersion operation.

        ", "refs": { } }, "DeleteRegistrationCodeRequest": { "base": "

        The input for the DeleteRegistrationCode operation.

        ", "refs": { } }, "DeleteRegistrationCodeResponse": { "base": "

        The output for the DeleteRegistrationCode operation.

        ", "refs": { } }, "DeleteThingRequest": { "base": "

        The input for the DeleteThing operation.

        ", "refs": { } }, "DeleteThingResponse": { "base": "

        The output of the DeleteThing operation.

        ", "refs": { } }, "DeleteThingTypeRequest": { "base": "

        The input for the DeleteThingType operation.

        ", "refs": { } }, "DeleteThingTypeResponse": { "base": "

        The output for the DeleteThingType operation.

        ", "refs": { } }, "DeleteTopicRuleRequest": { "base": "

        The input for the DeleteTopicRule operation.

        ", "refs": { } }, "DeliveryStreamName": { "base": null, "refs": { "FirehoseAction$deliveryStreamName": "

        The delivery stream name.

        " } }, "DeprecateThingTypeRequest": { "base": "

        The input for the DeprecateThingType operation.

        ", "refs": { } }, "DeprecateThingTypeResponse": { "base": "

        The output for the DeprecateThingType operation.

        ", "refs": { } }, "DeprecationDate": { "base": null, "refs": { "ThingTypeMetadata$deprecationDate": "

        The date and time when the thing type was deprecated.

        " } }, "DescribeCACertificateRequest": { "base": "

        The input for the DescribeCACertificate operation.

        ", "refs": { } }, "DescribeCACertificateResponse": { "base": "

        The output from the DescribeCACertificate operation.

        ", "refs": { } }, "DescribeCertificateRequest": { "base": "

        The input for the DescribeCertificate operation.

        ", "refs": { } }, "DescribeCertificateResponse": { "base": "

        The output of the DescribeCertificate operation.

        ", "refs": { } }, "DescribeEndpointRequest": { "base": "

        The input for the DescribeEndpoint operation.

        ", "refs": { } }, "DescribeEndpointResponse": { "base": "

        The output from the DescribeEndpoint operation.

        ", "refs": { } }, "DescribeThingRequest": { "base": "

        The input for the DescribeThing operation.

        ", "refs": { } }, "DescribeThingResponse": { "base": "

        The output from the DescribeThing operation.

        ", "refs": { } }, "DescribeThingTypeRequest": { "base": "

        The input for the DescribeThingType operation.

        ", "refs": { } }, "DescribeThingTypeResponse": { "base": "

        The output for the DescribeThingType operation.

        ", "refs": { } }, "Description": { "base": null, "refs": { "TopicRule$description": "

        The description of the rule.

        ", "TopicRulePayload$description": "

        The description of the rule.

        " } }, "DetachPrincipalPolicyRequest": { "base": "

        The input for the DetachPrincipalPolicy operation.

        ", "refs": { } }, "DetachThingPrincipalRequest": { "base": "

        The input for the DetachThingPrincipal operation.

        ", "refs": { } }, "DetachThingPrincipalResponse": { "base": "

        The output from the DetachThingPrincipal operation.

        ", "refs": { } }, "DisableTopicRuleRequest": { "base": "

        The input for the DisableTopicRuleRequest operation.

        ", "refs": { } }, "DynamoDBAction": { "base": "

        Describes an action to write to a DynamoDB table.

        The tableName, hashKeyField, and rangeKeyField values must match the values used when you created the table.

        The hashKeyValue and rangeKeyvalue fields use a substitution template syntax. These templates provide data at runtime. The syntax is as follows: ${sql-expression}.

        You can specify any valid expression in a WHERE or SELECT clause, including JSON properties, comparisons, calculations, and functions. For example, the following field uses the third level of the topic:

        \"hashKeyValue\": \"${topic(3)}\"

        The following field uses the timestamp:

        \"rangeKeyValue\": \"${timestamp()}\"

        ", "refs": { "Action$dynamoDB": "

        Write to a DynamoDB table.

        " } }, "DynamoDBv2Action": { "base": "

        Describes an action to write to a DynamoDB table.

        This DynamoDB action writes each attribute in the message payload into it's own column in the DynamoDB table.

        ", "refs": { "Action$dynamoDBv2": "

        Write to a DynamoDB table. This is a new version of the DynamoDB action. It allows you to write each attribute in an MQTT message payload into a separate DynamoDB column.

        " } }, "DynamoKeyType": { "base": null, "refs": { "DynamoDBAction$hashKeyType": "

        The hash key type. Valid values are \"STRING\" or \"NUMBER\"

        ", "DynamoDBAction$rangeKeyType": "

        The range key type. Valid values are \"STRING\" or \"NUMBER\"

        " } }, "DynamoOperation": { "base": null, "refs": { "DynamoDBAction$operation": "

        The type of operation to be performed. This follows the substitution template, so it can be ${operation}, but the substitution must result in one of the following: INSERT, UPDATE, or DELETE.

        " } }, "ElasticsearchAction": { "base": "

        Describes an action that writes data to an Amazon Elasticsearch Service domain.

        ", "refs": { "Action$elasticsearch": "

        Write data to an Amazon Elasticsearch Service domain.

        " } }, "ElasticsearchEndpoint": { "base": null, "refs": { "ElasticsearchAction$endpoint": "

        The endpoint of your Elasticsearch domain.

        " } }, "ElasticsearchId": { "base": null, "refs": { "ElasticsearchAction$id": "

        The unique identifier for the document you are storing.

        " } }, "ElasticsearchIndex": { "base": null, "refs": { "ElasticsearchAction$index": "

        The Elasticsearch index where you want to store your data.

        " } }, "ElasticsearchType": { "base": null, "refs": { "ElasticsearchAction$type": "

        The type of document you are storing.

        " } }, "EnableTopicRuleRequest": { "base": "

        The input for the EnableTopicRuleRequest operation.

        ", "refs": { } }, "EndpointAddress": { "base": null, "refs": { "DescribeEndpointResponse$endpointAddress": "

        The endpoint. The format of the endpoint is as follows: identifier.iot.region.amazonaws.com.

        " } }, "FirehoseAction": { "base": "

        Describes an action that writes data to an Amazon Kinesis Firehose stream.

        ", "refs": { "Action$firehose": "

        Write to an Amazon Kinesis Firehose stream.

        " } }, "FirehoseSeparator": { "base": null, "refs": { "FirehoseAction$separator": "

        A character separator that will be used to separate records written to the Firehose stream. Valid values are: '\\n' (newline), '\\t' (tab), '\\r\\n' (Windows newline), ',' (comma).

        " } }, "Flag": { "base": null, "refs": { "AttributePayload$merge": "

        Specifies whether the list of attributes provided in the AttributePayload is merged with the attributes stored in the registry, instead of overwriting them.

        To remove an attribute, call UpdateThing with an empty attribute value.

        The merge attribute is only valid when calling UpdateThing.

        " } }, "FunctionArn": { "base": null, "refs": { "LambdaAction$functionArn": "

        The ARN of the Lambda function.

        " } }, "GetLoggingOptionsRequest": { "base": "

        The input for the GetLoggingOptions operation.

        ", "refs": { } }, "GetLoggingOptionsResponse": { "base": "

        The output from the GetLoggingOptions operation.

        ", "refs": { } }, "GetPolicyRequest": { "base": "

        The input for the GetPolicy operation.

        ", "refs": { } }, "GetPolicyResponse": { "base": "

        The output from the GetPolicy operation.

        ", "refs": { } }, "GetPolicyVersionRequest": { "base": "

        The input for the GetPolicyVersion operation.

        ", "refs": { } }, "GetPolicyVersionResponse": { "base": "

        The output from the GetPolicyVersion operation.

        ", "refs": { } }, "GetRegistrationCodeRequest": { "base": "

        The input to the GetRegistrationCode operation.

        ", "refs": { } }, "GetRegistrationCodeResponse": { "base": "

        The output from the GetRegistrationCode operation.

        ", "refs": { } }, "GetTopicRuleRequest": { "base": "

        The input for the GetTopicRule operation.

        ", "refs": { } }, "GetTopicRuleResponse": { "base": "

        The output from the GetTopicRule operation.

        ", "refs": { } }, "HashKeyField": { "base": null, "refs": { "DynamoDBAction$hashKeyField": "

        The hash key name.

        " } }, "HashKeyValue": { "base": null, "refs": { "DynamoDBAction$hashKeyValue": "

        The hash key value.

        " } }, "InternalException": { "base": "

        An unexpected error has occurred.

        ", "refs": { } }, "InternalFailureException": { "base": "

        An unexpected error has occurred.

        ", "refs": { } }, "InvalidRequestException": { "base": "

        The request is not valid.

        ", "refs": { } }, "IsDefaultVersion": { "base": null, "refs": { "CreatePolicyVersionResponse$isDefaultVersion": "

        Specifies whether the policy version is the default.

        ", "GetPolicyVersionResponse$isDefaultVersion": "

        Specifies whether the policy version is the default.

        ", "PolicyVersion$isDefaultVersion": "

        Specifies whether the policy version is the default.

        " } }, "IsDisabled": { "base": null, "refs": { "ListTopicRulesRequest$ruleDisabled": "

        Specifies whether the rule is disabled.

        ", "TopicRule$ruleDisabled": "

        Specifies whether the rule is disabled.

        ", "TopicRuleListItem$ruleDisabled": "

        Specifies whether the rule is disabled.

        ", "TopicRulePayload$ruleDisabled": "

        Specifies whether the rule is disabled.

        " } }, "Key": { "base": null, "refs": { "S3Action$key": "

        The object key.

        " } }, "KeyPair": { "base": "

        Describes a key pair.

        ", "refs": { "CreateKeysAndCertificateResponse$keyPair": "

        The generated key pair.

        " } }, "KinesisAction": { "base": "

        Describes an action to write data to an Amazon Kinesis stream.

        ", "refs": { "Action$kinesis": "

        Write data to an Amazon Kinesis stream.

        " } }, "LambdaAction": { "base": "

        Describes an action to invoke a Lambda function.

        ", "refs": { "Action$lambda": "

        Invoke a Lambda function.

        " } }, "LimitExceededException": { "base": "

        The number of attached entities exceeds the limit.

        ", "refs": { } }, "ListCACertificatesRequest": { "base": "

        Input for the ListCACertificates operation.

        ", "refs": { } }, "ListCACertificatesResponse": { "base": "

        The output from the ListCACertificates operation.

        ", "refs": { } }, "ListCertificatesByCARequest": { "base": "

        The input to the ListCertificatesByCA operation.

        ", "refs": { } }, "ListCertificatesByCAResponse": { "base": "

        The output of the ListCertificatesByCA operation.

        ", "refs": { } }, "ListCertificatesRequest": { "base": "

        The input for the ListCertificates operation.

        ", "refs": { } }, "ListCertificatesResponse": { "base": "

        The output of the ListCertificates operation.

        ", "refs": { } }, "ListOutgoingCertificatesRequest": { "base": "

        The input to the ListOutgoingCertificates operation.

        ", "refs": { } }, "ListOutgoingCertificatesResponse": { "base": "

        The output from the ListOutgoingCertificates operation.

        ", "refs": { } }, "ListPoliciesRequest": { "base": "

        The input for the ListPolicies operation.

        ", "refs": { } }, "ListPoliciesResponse": { "base": "

        The output from the ListPolicies operation.

        ", "refs": { } }, "ListPolicyPrincipalsRequest": { "base": "

        The input for the ListPolicyPrincipals operation.

        ", "refs": { } }, "ListPolicyPrincipalsResponse": { "base": "

        The output from the ListPolicyPrincipals operation.

        ", "refs": { } }, "ListPolicyVersionsRequest": { "base": "

        The input for the ListPolicyVersions operation.

        ", "refs": { } }, "ListPolicyVersionsResponse": { "base": "

        The output from the ListPolicyVersions operation.

        ", "refs": { } }, "ListPrincipalPoliciesRequest": { "base": "

        The input for the ListPrincipalPolicies operation.

        ", "refs": { } }, "ListPrincipalPoliciesResponse": { "base": "

        The output from the ListPrincipalPolicies operation.

        ", "refs": { } }, "ListPrincipalThingsRequest": { "base": "

        The input for the ListPrincipalThings operation.

        ", "refs": { } }, "ListPrincipalThingsResponse": { "base": "

        The output from the ListPrincipalThings operation.

        ", "refs": { } }, "ListThingPrincipalsRequest": { "base": "

        The input for the ListThingPrincipal operation.

        ", "refs": { } }, "ListThingPrincipalsResponse": { "base": "

        The output from the ListThingPrincipals operation.

        ", "refs": { } }, "ListThingTypesRequest": { "base": "

        The input for the ListThingTypes operation.

        ", "refs": { } }, "ListThingTypesResponse": { "base": "

        The output for the ListThingTypes operation.

        ", "refs": { } }, "ListThingsRequest": { "base": "

        The input for the ListThings operation.

        ", "refs": { } }, "ListThingsResponse": { "base": "

        The output from the ListThings operation.

        ", "refs": { } }, "ListTopicRulesRequest": { "base": "

        The input for the ListTopicRules operation.

        ", "refs": { } }, "ListTopicRulesResponse": { "base": "

        The output from the ListTopicRules operation.

        ", "refs": { } }, "LogLevel": { "base": null, "refs": { "GetLoggingOptionsResponse$logLevel": "

        The logging level.

        ", "LoggingOptionsPayload$logLevel": "

        The logging level.

        " } }, "LoggingOptionsPayload": { "base": "

        Describes the logging options payload.

        ", "refs": { "SetLoggingOptionsRequest$loggingOptionsPayload": "

        The logging options payload.

        " } }, "MalformedPolicyException": { "base": "

        The policy documentation is not valid.

        ", "refs": { } }, "Marker": { "base": null, "refs": { "ListCACertificatesRequest$marker": "

        The marker for the next set of results.

        ", "ListCACertificatesResponse$nextMarker": "

        The current position within the list of CA certificates.

        ", "ListCertificatesByCARequest$marker": "

        The marker for the next set of results.

        ", "ListCertificatesByCAResponse$nextMarker": "

        The marker for the next set of results, or null if there are no additional results.

        ", "ListCertificatesRequest$marker": "

        The marker for the next set of results.

        ", "ListCertificatesResponse$nextMarker": "

        The marker for the next set of results, or null if there are no additional results.

        ", "ListOutgoingCertificatesRequest$marker": "

        The marker for the next set of results.

        ", "ListOutgoingCertificatesResponse$nextMarker": "

        The marker for the next set of results.

        ", "ListPoliciesRequest$marker": "

        The marker for the next set of results.

        ", "ListPoliciesResponse$nextMarker": "

        The marker for the next set of results, or null if there are no additional results.

        ", "ListPolicyPrincipalsRequest$marker": "

        The marker for the next set of results.

        ", "ListPolicyPrincipalsResponse$nextMarker": "

        The marker for the next set of results, or null if there are no additional results.

        ", "ListPrincipalPoliciesRequest$marker": "

        The marker for the next set of results.

        ", "ListPrincipalPoliciesResponse$nextMarker": "

        The marker for the next set of results, or null if there are no additional results.

        " } }, "MaxResults": { "base": null, "refs": { "ListPrincipalThingsRequest$maxResults": "

        The maximum number of results to return in this operation.

        ", "ListThingTypesRequest$maxResults": "

        The maximum number of results to return in this operation.

        ", "ListThingsRequest$maxResults": "

        The maximum number of results to return in this operation.

        ", "ListTopicRulesRequest$maxResults": "

        The maximum number of results to return.

        " } }, "Message": { "base": null, "refs": { "OutgoingCertificate$transferMessage": "

        The transfer message.

        ", "RejectCertificateTransferRequest$rejectReason": "

        The reason the certificate transfer was rejected.

        ", "TransferCertificateRequest$transferMessage": "

        The transfer message.

        ", "TransferData$transferMessage": "

        The transfer message.

        ", "TransferData$rejectReason": "

        The reason why the transfer was rejected.

        " } }, "MessageFormat": { "base": null, "refs": { "SnsAction$messageFormat": "

        The message format of the message to publish. Optional. Accepted values are \"JSON\" and \"RAW\". The default value of the attribute is \"RAW\". SNS uses this setting to determine if the payload should be parsed and relevant platform-specific bits of the payload should be extracted. To read more about SNS message formats, see refer to their official documentation.

        " } }, "MetricName": { "base": null, "refs": { "CloudwatchMetricAction$metricName": "

        The CloudWatch metric name.

        " } }, "MetricNamespace": { "base": null, "refs": { "CloudwatchMetricAction$metricNamespace": "

        The CloudWatch metric namespace name.

        " } }, "MetricTimestamp": { "base": null, "refs": { "CloudwatchMetricAction$metricTimestamp": "

        An optional Unix timestamp.

        " } }, "MetricUnit": { "base": null, "refs": { "CloudwatchMetricAction$metricUnit": "

        The metric unit supported by CloudWatch.

        " } }, "MetricValue": { "base": null, "refs": { "CloudwatchMetricAction$metricValue": "

        The CloudWatch metric value.

        " } }, "NextToken": { "base": null, "refs": { "ListPrincipalThingsRequest$nextToken": "

        The token for the next set of results, or null if there are no additional results.

        ", "ListPrincipalThingsResponse$nextToken": "

        The token for the next set of results, or null if there are no additional results.

        ", "ListThingTypesRequest$nextToken": "

        The token for the next set of results, or null if there are no additional results.

        ", "ListThingTypesResponse$nextToken": "

        The token for the next set of results, or null if there are no additional results.

        ", "ListThingsRequest$nextToken": "

        The token for the next set of results, or null if there are no additional results.

        ", "ListThingsResponse$nextToken": "

        The token for the next set of results, or null if there are no additional results.

        ", "ListTopicRulesRequest$nextToken": "

        A token used to retrieve the next value.

        ", "ListTopicRulesResponse$nextToken": "

        A token used to retrieve the next value.

        " } }, "OptionalVersion": { "base": null, "refs": { "DeleteThingRequest$expectedVersion": "

        The expected version of the thing record in the registry. If the version of the record in the registry does not match the expected version specified in the request, the DeleteThing request is rejected with a VersionConflictException.

        ", "UpdateThingRequest$expectedVersion": "

        The expected version of the thing record in the registry. If the version of the record in the registry does not match the expected version specified in the request, the UpdateThing request is rejected with a VersionConflictException.

        " } }, "OutgoingCertificate": { "base": "

        A certificate that has been transfered but not yet accepted.

        ", "refs": { "OutgoingCertificates$member": null } }, "OutgoingCertificates": { "base": null, "refs": { "ListOutgoingCertificatesResponse$outgoingCertificates": "

        The certificates that are being transfered but not yet accepted.

        " } }, "PageSize": { "base": null, "refs": { "ListCACertificatesRequest$pageSize": "

        The result page size.

        ", "ListCertificatesByCARequest$pageSize": "

        The result page size.

        ", "ListCertificatesRequest$pageSize": "

        The result page size.

        ", "ListOutgoingCertificatesRequest$pageSize": "

        The result page size.

        ", "ListPoliciesRequest$pageSize": "

        The result page size.

        ", "ListPolicyPrincipalsRequest$pageSize": "

        The result page size.

        ", "ListPrincipalPoliciesRequest$pageSize": "

        The result page size.

        " } }, "PartitionKey": { "base": null, "refs": { "KinesisAction$partitionKey": "

        The partition key.

        " } }, "PayloadField": { "base": null, "refs": { "DynamoDBAction$payloadField": "

        The action payload. This name can be customized.

        " } }, "Policies": { "base": null, "refs": { "ListPoliciesResponse$policies": "

        The descriptions of the policies.

        ", "ListPrincipalPoliciesResponse$policies": "

        The policies.

        " } }, "Policy": { "base": "

        Describes an AWS IoT policy.

        ", "refs": { "Policies$member": null } }, "PolicyArn": { "base": null, "refs": { "CreatePolicyResponse$policyArn": "

        The policy ARN.

        ", "CreatePolicyVersionResponse$policyArn": "

        The policy ARN.

        ", "GetPolicyResponse$policyArn": "

        The policy ARN.

        ", "GetPolicyVersionResponse$policyArn": "

        The policy ARN.

        ", "Policy$policyArn": "

        The policy ARN.

        " } }, "PolicyDocument": { "base": null, "refs": { "CreatePolicyRequest$policyDocument": "

        The JSON document that describes the policy. policyDocument must have a minimum length of 1, with a maximum length of 2048, excluding whitespace.

        ", "CreatePolicyResponse$policyDocument": "

        The JSON document that describes the policy.

        ", "CreatePolicyVersionRequest$policyDocument": "

        The JSON document that describes the policy. Minimum length of 1. Maximum length of 2048, excluding whitespaces

        ", "CreatePolicyVersionResponse$policyDocument": "

        The JSON document that describes the policy.

        ", "GetPolicyResponse$policyDocument": "

        The JSON document that describes the policy.

        ", "GetPolicyVersionResponse$policyDocument": "

        The JSON document that describes the policy.

        " } }, "PolicyName": { "base": null, "refs": { "AttachPrincipalPolicyRequest$policyName": "

        The policy name.

        ", "CreatePolicyRequest$policyName": "

        The policy name.

        ", "CreatePolicyResponse$policyName": "

        The policy name.

        ", "CreatePolicyVersionRequest$policyName": "

        The policy name.

        ", "DeletePolicyRequest$policyName": "

        The name of the policy to delete.

        ", "DeletePolicyVersionRequest$policyName": "

        The name of the policy.

        ", "DetachPrincipalPolicyRequest$policyName": "

        The name of the policy to detach.

        ", "GetPolicyRequest$policyName": "

        The name of the policy.

        ", "GetPolicyResponse$policyName": "

        The policy name.

        ", "GetPolicyVersionRequest$policyName": "

        The name of the policy.

        ", "GetPolicyVersionResponse$policyName": "

        The policy name.

        ", "ListPolicyPrincipalsRequest$policyName": "

        The policy name.

        ", "ListPolicyVersionsRequest$policyName": "

        The policy name.

        ", "Policy$policyName": "

        The policy name.

        ", "SetDefaultPolicyVersionRequest$policyName": "

        The policy name.

        " } }, "PolicyVersion": { "base": "

        Describes a policy version.

        ", "refs": { "PolicyVersions$member": null } }, "PolicyVersionId": { "base": null, "refs": { "CreatePolicyResponse$policyVersionId": "

        The policy version ID.

        ", "CreatePolicyVersionResponse$policyVersionId": "

        The policy version ID.

        ", "DeletePolicyVersionRequest$policyVersionId": "

        The policy version ID.

        ", "GetPolicyResponse$defaultVersionId": "

        The default policy version ID.

        ", "GetPolicyVersionRequest$policyVersionId": "

        The policy version ID.

        ", "GetPolicyVersionResponse$policyVersionId": "

        The policy version ID.

        ", "PolicyVersion$versionId": "

        The policy version ID.

        ", "SetDefaultPolicyVersionRequest$policyVersionId": "

        The policy version ID.

        " } }, "PolicyVersions": { "base": null, "refs": { "ListPolicyVersionsResponse$policyVersions": "

        The policy versions.

        " } }, "Principal": { "base": null, "refs": { "AttachPrincipalPolicyRequest$principal": "

        The principal, which can be a certificate ARN (as returned from the CreateCertificate operation) or an Amazon Cognito ID.

        ", "AttachThingPrincipalRequest$principal": "

        The principal, such as a certificate or other credential.

        ", "DetachPrincipalPolicyRequest$principal": "

        The principal.

        If the principal is a certificate, specify the certificate ARN. If the principal is an Amazon Cognito identity, specify the identity ID.

        ", "DetachThingPrincipalRequest$principal": "

        If the principal is a certificate, this value must be ARN of the certificate. If the principal is an Amazon Cognito identity, this value must be the ID of the Amazon Cognito identity.

        ", "ListPrincipalPoliciesRequest$principal": "

        The principal.

        ", "ListPrincipalThingsRequest$principal": "

        The principal.

        " } }, "PrincipalArn": { "base": null, "refs": { "Principals$member": null } }, "Principals": { "base": null, "refs": { "ListPolicyPrincipalsResponse$principals": "

        The descriptions of the principals.

        ", "ListThingPrincipalsResponse$principals": "

        The principals associated with the thing.

        " } }, "PrivateKey": { "base": null, "refs": { "KeyPair$PrivateKey": "

        The private key.

        " } }, "PublicKey": { "base": null, "refs": { "KeyPair$PublicKey": "

        The public key.

        " } }, "PutItemInput": { "base": "

        The input for the DynamoActionVS action that specifies the DynamoDB table to which the message data will be written.

        ", "refs": { "DynamoDBv2Action$putItem": "

        Specifies the DynamoDB table to which the message data will be written. For example:

        { \"dynamoDBv2\": { \"roleArn\": \"aws:iam:12341251:my-role\" \"putItem\": { \"tableName\": \"my-table\" } } }

        Each attribute in the message payload will be written to a separate column in the DynamoDB database.

        " } }, "QueueUrl": { "base": null, "refs": { "SqsAction$queueUrl": "

        The URL of the Amazon SQS queue.

        " } }, "RangeKeyField": { "base": null, "refs": { "DynamoDBAction$rangeKeyField": "

        The range key name.

        " } }, "RangeKeyValue": { "base": null, "refs": { "DynamoDBAction$rangeKeyValue": "

        The range key value.

        " } }, "RegisterCACertificateRequest": { "base": "

        The input to the RegisterCACertificate operation.

        ", "refs": { } }, "RegisterCACertificateResponse": { "base": "

        The output from the RegisterCACertificateResponse operation.

        ", "refs": { } }, "RegisterCertificateRequest": { "base": "

        The input to the RegisterCertificate operation.

        ", "refs": { } }, "RegisterCertificateResponse": { "base": "

        The output from the RegisterCertificate operation.

        ", "refs": { } }, "RegistrationCode": { "base": null, "refs": { "GetRegistrationCodeResponse$registrationCode": "

        The CA certificate registration code.

        " } }, "RegistrationCodeValidationException": { "base": "

        The registration code is invalid.

        ", "refs": { } }, "RejectCertificateTransferRequest": { "base": "

        The input for the RejectCertificateTransfer operation.

        ", "refs": { } }, "RemoveThingType": { "base": null, "refs": { "UpdateThingRequest$removeThingType": "

        Remove a thing type association. If true, the assocation is removed.

        " } }, "ReplaceTopicRuleRequest": { "base": "

        The input for the ReplaceTopicRule operation.

        ", "refs": { } }, "RepublishAction": { "base": "

        Describes an action to republish to another topic.

        ", "refs": { "Action$republish": "

        Publish to another MQTT topic.

        " } }, "ResourceAlreadyExistsException": { "base": "

        The resource already exists.

        ", "refs": { } }, "ResourceNotFoundException": { "base": "

        The specified resource does not exist.

        ", "refs": { } }, "RuleArn": { "base": null, "refs": { "GetTopicRuleResponse$ruleArn": "

        The rule ARN.

        ", "TopicRuleListItem$ruleArn": "

        The rule ARN.

        " } }, "RuleName": { "base": null, "refs": { "CreateTopicRuleRequest$ruleName": "

        The name of the rule.

        ", "DeleteTopicRuleRequest$ruleName": "

        The name of the rule.

        ", "DisableTopicRuleRequest$ruleName": "

        The name of the rule to disable.

        ", "EnableTopicRuleRequest$ruleName": "

        The name of the topic rule to enable.

        ", "GetTopicRuleRequest$ruleName": "

        The name of the rule.

        ", "ReplaceTopicRuleRequest$ruleName": "

        The name of the rule.

        ", "TopicRule$ruleName": "

        The name of the rule.

        ", "TopicRuleListItem$ruleName": "

        The name of the rule.

        " } }, "S3Action": { "base": "

        Describes an action to write data to an Amazon S3 bucket.

        ", "refs": { "Action$s3": "

        Write to an Amazon S3 bucket.

        " } }, "SQL": { "base": null, "refs": { "TopicRule$sql": "

        The SQL statement used to query the topic. When using a SQL query with multiple lines, be sure to escape the newline characters.

        ", "TopicRulePayload$sql": "

        The SQL statement used to query the topic. For more information, see AWS IoT SQL Reference in the AWS IoT Developer Guide.

        " } }, "SearchableAttributes": { "base": null, "refs": { "ThingTypeProperties$searchableAttributes": "

        A list of searchable thing attribute names.

        " } }, "ServiceUnavailableException": { "base": "

        The service is temporarily unavailable.

        ", "refs": { } }, "SetAsActive": { "base": null, "refs": { "AcceptCertificateTransferRequest$setAsActive": "

        Specifies whether the certificate is active.

        ", "CreateCertificateFromCsrRequest$setAsActive": "

        Specifies whether the certificate is active.

        ", "CreateKeysAndCertificateRequest$setAsActive": "

        Specifies whether the certificate is active.

        ", "RegisterCACertificateRequest$setAsActive": "

        A boolean value that specifies if the CA certificate is set to active.

        " } }, "SetAsActiveFlag": { "base": null, "refs": { "RegisterCertificateRequest$setAsActive": "

        A boolean value that specifies if the CA certificate is set to active.

        " } }, "SetAsDefault": { "base": null, "refs": { "CreatePolicyVersionRequest$setAsDefault": "

        Specifies whether the policy version is set as the default. When this parameter is true, the new policy version becomes the operative version (that is, the version that is in effect for the certificates to which the policy is attached).

        " } }, "SetDefaultPolicyVersionRequest": { "base": "

        The input for the SetDefaultPolicyVersion operation.

        ", "refs": { } }, "SetLoggingOptionsRequest": { "base": "

        The input for the SetLoggingOptions operation.

        ", "refs": { } }, "SnsAction": { "base": "

        Describes an action to publish to an Amazon SNS topic.

        ", "refs": { "Action$sns": "

        Publish to an Amazon SNS topic.

        " } }, "SqlParseException": { "base": "

        The Rule-SQL expression can't be parsed correctly.

        ", "refs": { } }, "SqsAction": { "base": "

        Describes an action to publish data to an Amazon SQS queue.

        ", "refs": { "Action$sqs": "

        Publish to an Amazon SQS queue.

        " } }, "StateReason": { "base": null, "refs": { "CloudwatchAlarmAction$stateReason": "

        The reason for the alarm change.

        " } }, "StateValue": { "base": null, "refs": { "CloudwatchAlarmAction$stateValue": "

        The value of the alarm state. Acceptable values are: OK, ALARM, INSUFFICIENT_DATA.

        " } }, "StreamName": { "base": null, "refs": { "KinesisAction$streamName": "

        The name of the Amazon Kinesis stream.

        " } }, "TableName": { "base": null, "refs": { "DynamoDBAction$tableName": "

        The name of the DynamoDB table.

        ", "PutItemInput$tableName": "

        The table where the message data will be written

        " } }, "ThingArn": { "base": null, "refs": { "CreateThingResponse$thingArn": "

        The ARN of the new thing.

        " } }, "ThingAttribute": { "base": "

        The properties of the thing, including thing name, thing type name, and a list of thing attributes.

        ", "refs": { "ThingAttributeList$member": null } }, "ThingAttributeList": { "base": null, "refs": { "ListThingsResponse$things": "

        The things.

        " } }, "ThingName": { "base": null, "refs": { "AttachThingPrincipalRequest$thingName": "

        The name of the thing.

        ", "CreateThingRequest$thingName": "

        The name of the thing to create.

        ", "CreateThingResponse$thingName": "

        The name of the new thing.

        ", "DeleteThingRequest$thingName": "

        The name of the thing to delete.

        ", "DescribeThingRequest$thingName": "

        The name of the thing.

        ", "DescribeThingResponse$thingName": "

        The name of the thing.

        ", "DetachThingPrincipalRequest$thingName": "

        The name of the thing.

        ", "ListThingPrincipalsRequest$thingName": "

        The name of the thing.

        ", "ThingAttribute$thingName": "

        The name of the thing.

        ", "ThingNameList$member": null, "UpdateThingRequest$thingName": "

        The name of the thing to update.

        " } }, "ThingNameList": { "base": null, "refs": { "ListPrincipalThingsResponse$things": "

        The things.

        " } }, "ThingTypeArn": { "base": null, "refs": { "CreateThingTypeResponse$thingTypeArn": "

        The Amazon Resource Name (ARN) of the thing type.

        " } }, "ThingTypeDefinition": { "base": "

        The definition of the thing type, including thing type name and description.

        ", "refs": { "ThingTypeList$member": null } }, "ThingTypeDescription": { "base": null, "refs": { "ThingTypeProperties$thingTypeDescription": "

        The description of the thing type.

        " } }, "ThingTypeList": { "base": null, "refs": { "ListThingTypesResponse$thingTypes": "

        The thing types.

        " } }, "ThingTypeMetadata": { "base": "

        The ThingTypeMetadata contains additional information about the thing type including: creation date and time, a value indicating whether the thing type is deprecated, and a date and time when time was deprecated.

        ", "refs": { "DescribeThingTypeResponse$thingTypeMetadata": null, "ThingTypeDefinition$thingTypeMetadata": null } }, "ThingTypeName": { "base": null, "refs": { "CreateThingRequest$thingTypeName": "

        The name of the thing type associated with the new thing.

        ", "CreateThingTypeRequest$thingTypeName": "

        The name of the thing type.

        ", "CreateThingTypeResponse$thingTypeName": "

        The name of the thing type.

        ", "DeleteThingTypeRequest$thingTypeName": "

        The name of the thing type.

        ", "DeprecateThingTypeRequest$thingTypeName": "

        The name of the thing type to deprecate.

        ", "DescribeThingResponse$thingTypeName": "

        The thing type name.

        ", "DescribeThingTypeRequest$thingTypeName": "

        The name of the thing type.

        ", "DescribeThingTypeResponse$thingTypeName": "

        The name of the thing type.

        ", "ListThingTypesRequest$thingTypeName": "

        The name of the thing type.

        ", "ListThingsRequest$thingTypeName": "

        The name of the thing type used to search for things.

        ", "ThingAttribute$thingTypeName": "

        The name of the thing type, if the thing has been associated with a type.

        ", "ThingTypeDefinition$thingTypeName": "

        The name of the thing type.

        ", "UpdateThingRequest$thingTypeName": "

        The name of the thing type.

        " } }, "ThingTypeProperties": { "base": "

        The ThingTypeProperties contains information about the thing type including: a thing type description, and a list of searchable thing attribute names.

        ", "refs": { "CreateThingTypeRequest$thingTypeProperties": "

        The ThingTypeProperties for the thing type to create. It contains information about the new thing type including a description, and a list of searchable thing attribute names.

        ", "DescribeThingTypeResponse$thingTypeProperties": "

        The ThingTypeProperties contains information about the thing type including description, and a list of searchable thing attribute names.

        ", "ThingTypeDefinition$thingTypeProperties": "

        The ThingTypeProperties for the thing type.

        " } }, "ThrottlingException": { "base": "

        The rate exceeds the limit.

        ", "refs": { } }, "Topic": { "base": null, "refs": { "ListTopicRulesRequest$topic": "

        The topic.

        " } }, "TopicPattern": { "base": null, "refs": { "RepublishAction$topic": "

        The name of the MQTT topic.

        ", "TopicRuleListItem$topicPattern": "

        The pattern for the topic names that apply.

        " } }, "TopicRule": { "base": "

        Describes a rule.

        ", "refs": { "GetTopicRuleResponse$rule": "

        The rule.

        " } }, "TopicRuleList": { "base": null, "refs": { "ListTopicRulesResponse$rules": "

        The rules.

        " } }, "TopicRuleListItem": { "base": "

        Describes a rule.

        ", "refs": { "TopicRuleList$member": null } }, "TopicRulePayload": { "base": "

        Describes a rule.

        ", "refs": { "CreateTopicRuleRequest$topicRulePayload": "

        The rule payload.

        ", "ReplaceTopicRuleRequest$topicRulePayload": "

        The rule payload.

        " } }, "TransferAlreadyCompletedException": { "base": "

        You can't revert the certificate transfer because the transfer is already complete.

        ", "refs": { } }, "TransferCertificateRequest": { "base": "

        The input for the TransferCertificate operation.

        ", "refs": { } }, "TransferCertificateResponse": { "base": "

        The output from the TransferCertificate operation.

        ", "refs": { } }, "TransferConflictException": { "base": "

        You can't transfer the certificate because authorization policies are still attached.

        ", "refs": { } }, "TransferData": { "base": "

        Data used to transfer a certificate to an AWS account.

        ", "refs": { "CertificateDescription$transferData": "

        The transfer data.

        " } }, "UnauthorizedException": { "base": "

        You are not authorized to perform this operation.

        ", "refs": { } }, "UndoDeprecate": { "base": null, "refs": { "DeprecateThingTypeRequest$undoDeprecate": "

        Whether to undeprecate a deprecated thing type. If true, the thing type will not be deprecated anymore and you can associate it with things.

        " } }, "UpdateCACertificateRequest": { "base": "

        The input to the UpdateCACertificate operation.

        ", "refs": { } }, "UpdateCertificateRequest": { "base": "

        The input for the UpdateCertificate operation.

        ", "refs": { } }, "UpdateThingRequest": { "base": "

        The input for the UpdateThing operation.

        ", "refs": { } }, "UpdateThingResponse": { "base": "

        The output from the UpdateThing operation.

        ", "refs": { } }, "UseBase64": { "base": null, "refs": { "SqsAction$useBase64": "

        Specifies whether to use Base64 encoding.

        " } }, "Version": { "base": null, "refs": { "DescribeThingResponse$version": "

        The current version of the thing record in the registry.

        To avoid unintentional changes to the information in the registry, you can pass the version information in the expectedVersion parameter of the UpdateThing and DeleteThing calls.

        ", "ThingAttribute$version": "

        The version of the thing record in the registry.

        " } }, "VersionConflictException": { "base": "

        An exception thrown when the version of a thing passed to a command is different than the version specified with the --version parameter.

        ", "refs": { } }, "VersionsLimitExceededException": { "base": "

        The number of policy versions exceeds the limit.

        ", "refs": { } }, "errorMessage": { "base": null, "refs": { "CertificateConflictException$message": "

        The message for the exception.

        ", "CertificateStateException$message": "

        The message for the exception.

        ", "CertificateValidationException$message": "

        Additional information about the exception.

        ", "DeleteConflictException$message": "

        The message for the exception.

        ", "InternalException$message": "

        The message for the exception.

        ", "InternalFailureException$message": "

        The message for the exception.

        ", "InvalidRequestException$message": "

        The message for the exception.

        ", "LimitExceededException$message": "

        The message for the exception.

        ", "MalformedPolicyException$message": "

        The message for the exception.

        ", "RegistrationCodeValidationException$message": "

        Additional information about the exception.

        ", "ResourceAlreadyExistsException$message": "

        The message for the exception.

        ", "ResourceNotFoundException$message": "

        The message for the exception.

        ", "ServiceUnavailableException$message": "

        The message for the exception.

        ", "SqlParseException$message": "

        The message for the exception.

        ", "ThrottlingException$message": "

        The message for the exception.

        ", "TransferAlreadyCompletedException$message": "

        The message for the exception.

        ", "TransferConflictException$message": "

        The message for the exception.

        ", "UnauthorizedException$message": "

        The message for the exception.

        ", "VersionConflictException$message": "

        The message for the exception.

        ", "VersionsLimitExceededException$message": "

        The message for the exception.

        " } }, "resourceArn": { "base": null, "refs": { "ResourceAlreadyExistsException$resourceArn": "

        The ARN of the resource that caused the exception.

        " } }, "resourceId": { "base": null, "refs": { "ResourceAlreadyExistsException$resourceId": "

        The ID of the resource that caused the exception.

        " } } } } aws-sdk-go-1.4.22/models/apis/iot/2015-05-28/examples-1.json000066400000000000000000000000521300374646400225010ustar00rootroot00000000000000{ "version":"1.0", "examples":{ } } aws-sdk-go-1.4.22/models/apis/kinesis/000077500000000000000000000000001300374646400174475ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/kinesis/2013-12-02/000077500000000000000000000000001300374646400204735ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/kinesis/2013-12-02/api-2.json000066400000000000000000000504701300374646400223040ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2013-12-02", "endpointPrefix":"kinesis", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"Kinesis", "serviceFullName":"Amazon Kinesis", "signatureVersion":"v4", "targetPrefix":"Kinesis_20131202" }, "operations":{ "AddTagsToStream":{ "name":"AddTagsToStream", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsToStreamInput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"}, {"shape":"InvalidArgumentException"}, {"shape":"LimitExceededException"} ] }, "CreateStream":{ "name":"CreateStream", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateStreamInput"}, "errors":[ {"shape":"ResourceInUseException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidArgumentException"} ] }, "DecreaseStreamRetentionPeriod":{ "name":"DecreaseStreamRetentionPeriod", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DecreaseStreamRetentionPeriodInput"}, "errors":[ {"shape":"ResourceInUseException"}, {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidArgumentException"} ] }, "DeleteStream":{ "name":"DeleteStream", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteStreamInput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"} ] }, "DescribeStream":{ "name":"DescribeStream", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeStreamInput"}, "output":{"shape":"DescribeStreamOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"} ] }, "DisableEnhancedMonitoring":{ "name":"DisableEnhancedMonitoring", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableEnhancedMonitoringInput"}, "output":{"shape":"EnhancedMonitoringOutput"}, "errors":[ {"shape":"InvalidArgumentException"}, {"shape":"LimitExceededException"}, {"shape":"ResourceInUseException"}, {"shape":"ResourceNotFoundException"} ] }, "EnableEnhancedMonitoring":{ "name":"EnableEnhancedMonitoring", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableEnhancedMonitoringInput"}, "output":{"shape":"EnhancedMonitoringOutput"}, "errors":[ {"shape":"InvalidArgumentException"}, {"shape":"LimitExceededException"}, {"shape":"ResourceInUseException"}, {"shape":"ResourceNotFoundException"} ] }, "GetRecords":{ "name":"GetRecords", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetRecordsInput"}, "output":{"shape":"GetRecordsOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArgumentException"}, {"shape":"ProvisionedThroughputExceededException"}, {"shape":"ExpiredIteratorException"} ] }, "GetShardIterator":{ "name":"GetShardIterator", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetShardIteratorInput"}, "output":{"shape":"GetShardIteratorOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArgumentException"}, {"shape":"ProvisionedThroughputExceededException"} ] }, "IncreaseStreamRetentionPeriod":{ "name":"IncreaseStreamRetentionPeriod", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"IncreaseStreamRetentionPeriodInput"}, "errors":[ {"shape":"ResourceInUseException"}, {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidArgumentException"} ] }, "ListStreams":{ "name":"ListStreams", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListStreamsInput"}, "output":{"shape":"ListStreamsOutput"}, "errors":[ {"shape":"LimitExceededException"} ] }, "ListTagsForStream":{ "name":"ListTagsForStream", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTagsForStreamInput"}, "output":{"shape":"ListTagsForStreamOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArgumentException"}, {"shape":"LimitExceededException"} ] }, "MergeShards":{ "name":"MergeShards", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"MergeShardsInput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"}, {"shape":"InvalidArgumentException"}, {"shape":"LimitExceededException"} ] }, "PutRecord":{ "name":"PutRecord", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutRecordInput"}, "output":{"shape":"PutRecordOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArgumentException"}, {"shape":"ProvisionedThroughputExceededException"} ] }, "PutRecords":{ "name":"PutRecords", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutRecordsInput"}, "output":{"shape":"PutRecordsOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArgumentException"}, {"shape":"ProvisionedThroughputExceededException"} ] }, "RemoveTagsFromStream":{ "name":"RemoveTagsFromStream", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsFromStreamInput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"}, {"shape":"InvalidArgumentException"}, {"shape":"LimitExceededException"} ] }, "SplitShard":{ "name":"SplitShard", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SplitShardInput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"}, {"shape":"InvalidArgumentException"}, {"shape":"LimitExceededException"} ] } }, "shapes":{ "AddTagsToStreamInput":{ "type":"structure", "required":[ "StreamName", "Tags" ], "members":{ "StreamName":{"shape":"StreamName"}, "Tags":{"shape":"TagMap"} } }, "ApproximateArrivalTimestamp":{"type":"timestamp"}, "BooleanObject":{"type":"boolean"}, "CreateStreamInput":{ "type":"structure", "required":[ "StreamName", "ShardCount" ], "members":{ "StreamName":{"shape":"StreamName"}, "ShardCount":{"shape":"PositiveIntegerObject"} } }, "Data":{ "type":"blob", "max":1048576, "min":0 }, "DecreaseStreamRetentionPeriodInput":{ "type":"structure", "required":[ "StreamName", "RetentionPeriodHours" ], "members":{ "StreamName":{"shape":"StreamName"}, "RetentionPeriodHours":{"shape":"RetentionPeriodHours"} } }, "DeleteStreamInput":{ "type":"structure", "required":["StreamName"], "members":{ "StreamName":{"shape":"StreamName"} } }, "DescribeStreamInput":{ "type":"structure", "required":["StreamName"], "members":{ "StreamName":{"shape":"StreamName"}, "Limit":{"shape":"DescribeStreamInputLimit"}, "ExclusiveStartShardId":{"shape":"ShardId"} } }, "DescribeStreamInputLimit":{ "type":"integer", "max":10000, "min":1 }, "DescribeStreamOutput":{ "type":"structure", "required":["StreamDescription"], "members":{ "StreamDescription":{"shape":"StreamDescription"} } }, "DisableEnhancedMonitoringInput":{ "type":"structure", "required":[ "StreamName", "ShardLevelMetrics" ], "members":{ "StreamName":{"shape":"StreamName"}, "ShardLevelMetrics":{"shape":"MetricsNameList"} } }, "EnableEnhancedMonitoringInput":{ "type":"structure", "required":[ "StreamName", "ShardLevelMetrics" ], "members":{ "StreamName":{"shape":"StreamName"}, "ShardLevelMetrics":{"shape":"MetricsNameList"} } }, "EnhancedMetrics":{ "type":"structure", "members":{ "ShardLevelMetrics":{"shape":"MetricsNameList"} } }, "EnhancedMonitoringList":{ "type":"list", "member":{"shape":"EnhancedMetrics"} }, "EnhancedMonitoringOutput":{ "type":"structure", "members":{ "StreamName":{"shape":"StreamName"}, "CurrentShardLevelMetrics":{"shape":"MetricsNameList"}, "DesiredShardLevelMetrics":{"shape":"MetricsNameList"} } }, "ErrorCode":{"type":"string"}, "ErrorMessage":{"type":"string"}, "ExpiredIteratorException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "GetRecordsInput":{ "type":"structure", "required":["ShardIterator"], "members":{ "ShardIterator":{"shape":"ShardIterator"}, "Limit":{"shape":"GetRecordsInputLimit"} } }, "GetRecordsInputLimit":{ "type":"integer", "max":10000, "min":1 }, "GetRecordsOutput":{ "type":"structure", "required":["Records"], "members":{ "Records":{"shape":"RecordList"}, "NextShardIterator":{"shape":"ShardIterator"}, "MillisBehindLatest":{"shape":"MillisBehindLatest"} } }, "GetShardIteratorInput":{ "type":"structure", "required":[ "StreamName", "ShardId", "ShardIteratorType" ], "members":{ "StreamName":{"shape":"StreamName"}, "ShardId":{"shape":"ShardId"}, "ShardIteratorType":{"shape":"ShardIteratorType"}, "StartingSequenceNumber":{"shape":"SequenceNumber"}, "Timestamp":{"shape":"Timestamp"} } }, "GetShardIteratorOutput":{ "type":"structure", "members":{ "ShardIterator":{"shape":"ShardIterator"} } }, "HashKey":{ "type":"string", "pattern":"0|([1-9]\\d{0,38})" }, "HashKeyRange":{ "type":"structure", "required":[ "StartingHashKey", "EndingHashKey" ], "members":{ "StartingHashKey":{"shape":"HashKey"}, "EndingHashKey":{"shape":"HashKey"} } }, "IncreaseStreamRetentionPeriodInput":{ "type":"structure", "required":[ "StreamName", "RetentionPeriodHours" ], "members":{ "StreamName":{"shape":"StreamName"}, "RetentionPeriodHours":{"shape":"RetentionPeriodHours"} } }, "InvalidArgumentException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "LimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ListStreamsInput":{ "type":"structure", "members":{ "Limit":{"shape":"ListStreamsInputLimit"}, "ExclusiveStartStreamName":{"shape":"StreamName"} } }, "ListStreamsInputLimit":{ "type":"integer", "max":10000, "min":1 }, "ListStreamsOutput":{ "type":"structure", "required":[ "StreamNames", "HasMoreStreams" ], "members":{ "StreamNames":{"shape":"StreamNameList"}, "HasMoreStreams":{"shape":"BooleanObject"} } }, "ListTagsForStreamInput":{ "type":"structure", "required":["StreamName"], "members":{ "StreamName":{"shape":"StreamName"}, "ExclusiveStartTagKey":{"shape":"TagKey"}, "Limit":{"shape":"ListTagsForStreamInputLimit"} } }, "ListTagsForStreamInputLimit":{ "type":"integer", "max":10, "min":1 }, "ListTagsForStreamOutput":{ "type":"structure", "required":[ "Tags", "HasMoreTags" ], "members":{ "Tags":{"shape":"TagList"}, "HasMoreTags":{"shape":"BooleanObject"} } }, "MergeShardsInput":{ "type":"structure", "required":[ "StreamName", "ShardToMerge", "AdjacentShardToMerge" ], "members":{ "StreamName":{"shape":"StreamName"}, "ShardToMerge":{"shape":"ShardId"}, "AdjacentShardToMerge":{"shape":"ShardId"} } }, "MetricsName":{ "type":"string", "enum":[ "IncomingBytes", "IncomingRecords", "OutgoingBytes", "OutgoingRecords", "WriteProvisionedThroughputExceeded", "ReadProvisionedThroughputExceeded", "IteratorAgeMilliseconds", "ALL" ] }, "MetricsNameList":{ "type":"list", "member":{"shape":"MetricsName"}, "max":7, "min":1 }, "MillisBehindLatest":{ "type":"long", "min":0 }, "PartitionKey":{ "type":"string", "max":256, "min":1 }, "PositiveIntegerObject":{ "type":"integer", "max":100000, "min":1 }, "ProvisionedThroughputExceededException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "PutRecordInput":{ "type":"structure", "required":[ "StreamName", "Data", "PartitionKey" ], "members":{ "StreamName":{"shape":"StreamName"}, "Data":{"shape":"Data"}, "PartitionKey":{"shape":"PartitionKey"}, "ExplicitHashKey":{"shape":"HashKey"}, "SequenceNumberForOrdering":{"shape":"SequenceNumber"} } }, "PutRecordOutput":{ "type":"structure", "required":[ "ShardId", "SequenceNumber" ], "members":{ "ShardId":{"shape":"ShardId"}, "SequenceNumber":{"shape":"SequenceNumber"} } }, "PutRecordsInput":{ "type":"structure", "required":[ "Records", "StreamName" ], "members":{ "Records":{"shape":"PutRecordsRequestEntryList"}, "StreamName":{"shape":"StreamName"} } }, "PutRecordsOutput":{ "type":"structure", "required":["Records"], "members":{ "FailedRecordCount":{"shape":"PositiveIntegerObject"}, "Records":{"shape":"PutRecordsResultEntryList"} } }, "PutRecordsRequestEntry":{ "type":"structure", "required":[ "Data", "PartitionKey" ], "members":{ "Data":{"shape":"Data"}, "ExplicitHashKey":{"shape":"HashKey"}, "PartitionKey":{"shape":"PartitionKey"} } }, "PutRecordsRequestEntryList":{ "type":"list", "member":{"shape":"PutRecordsRequestEntry"}, "max":500, "min":1 }, "PutRecordsResultEntry":{ "type":"structure", "members":{ "SequenceNumber":{"shape":"SequenceNumber"}, "ShardId":{"shape":"ShardId"}, "ErrorCode":{"shape":"ErrorCode"}, "ErrorMessage":{"shape":"ErrorMessage"} } }, "PutRecordsResultEntryList":{ "type":"list", "member":{"shape":"PutRecordsResultEntry"}, "max":500, "min":1 }, "Record":{ "type":"structure", "required":[ "SequenceNumber", "Data", "PartitionKey" ], "members":{ "SequenceNumber":{"shape":"SequenceNumber"}, "ApproximateArrivalTimestamp":{"shape":"ApproximateArrivalTimestamp"}, "Data":{"shape":"Data"}, "PartitionKey":{"shape":"PartitionKey"} } }, "RecordList":{ "type":"list", "member":{"shape":"Record"} }, "RemoveTagsFromStreamInput":{ "type":"structure", "required":[ "StreamName", "TagKeys" ], "members":{ "StreamName":{"shape":"StreamName"}, "TagKeys":{"shape":"TagKeyList"} } }, "ResourceInUseException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ResourceNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "RetentionPeriodHours":{ "type":"integer", "max":168, "min":24 }, "SequenceNumber":{ "type":"string", "pattern":"0|([1-9]\\d{0,128})" }, "SequenceNumberRange":{ "type":"structure", "required":["StartingSequenceNumber"], "members":{ "StartingSequenceNumber":{"shape":"SequenceNumber"}, "EndingSequenceNumber":{"shape":"SequenceNumber"} } }, "Shard":{ "type":"structure", "required":[ "ShardId", "HashKeyRange", "SequenceNumberRange" ], "members":{ "ShardId":{"shape":"ShardId"}, "ParentShardId":{"shape":"ShardId"}, "AdjacentParentShardId":{"shape":"ShardId"}, "HashKeyRange":{"shape":"HashKeyRange"}, "SequenceNumberRange":{"shape":"SequenceNumberRange"} } }, "ShardId":{ "type":"string", "max":128, "min":1, "pattern":"[a-zA-Z0-9_.-]+" }, "ShardIterator":{ "type":"string", "max":512, "min":1 }, "ShardIteratorType":{ "type":"string", "enum":[ "AT_SEQUENCE_NUMBER", "AFTER_SEQUENCE_NUMBER", "TRIM_HORIZON", "LATEST", "AT_TIMESTAMP" ] }, "ShardList":{ "type":"list", "member":{"shape":"Shard"} }, "SplitShardInput":{ "type":"structure", "required":[ "StreamName", "ShardToSplit", "NewStartingHashKey" ], "members":{ "StreamName":{"shape":"StreamName"}, "ShardToSplit":{"shape":"ShardId"}, "NewStartingHashKey":{"shape":"HashKey"} } }, "StreamARN":{"type":"string"}, "StreamDescription":{ "type":"structure", "required":[ "StreamName", "StreamARN", "StreamStatus", "Shards", "HasMoreShards", "RetentionPeriodHours", "EnhancedMonitoring" ], "members":{ "StreamName":{"shape":"StreamName"}, "StreamARN":{"shape":"StreamARN"}, "StreamStatus":{"shape":"StreamStatus"}, "Shards":{"shape":"ShardList"}, "HasMoreShards":{"shape":"BooleanObject"}, "RetentionPeriodHours":{"shape":"RetentionPeriodHours"}, "EnhancedMonitoring":{"shape":"EnhancedMonitoringList"} } }, "StreamName":{ "type":"string", "max":128, "min":1, "pattern":"[a-zA-Z0-9_.-]+" }, "StreamNameList":{ "type":"list", "member":{"shape":"StreamName"} }, "StreamStatus":{ "type":"string", "enum":[ "CREATING", "DELETING", "ACTIVE", "UPDATING" ] }, "Tag":{ "type":"structure", "required":["Key"], "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{ "type":"string", "max":128, "min":1 }, "TagKeyList":{ "type":"list", "member":{"shape":"TagKey"}, "max":10, "min":1 }, "TagList":{ "type":"list", "member":{"shape":"Tag"}, "min":0 }, "TagMap":{ "type":"map", "key":{"shape":"TagKey"}, "value":{"shape":"TagValue"}, "max":10, "min":1 }, "TagValue":{ "type":"string", "max":256, "min":0 }, "Timestamp":{"type":"timestamp"} } } aws-sdk-go-1.4.22/models/apis/kinesis/2013-12-02/docs-2.json000066400000000000000000001573661300374646400224770ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon Kinesis Streams Service API Reference

        Amazon Kinesis Streams is a managed service that scales elastically for real time processing of streaming big data.

        ", "operations": { "AddTagsToStream": "

        Adds or updates tags for the specified Amazon Kinesis stream. Each stream can have up to 10 tags.

        If tags have already been assigned to the stream, AddTagsToStream overwrites any existing tags that correspond to the specified tag keys.

        ", "CreateStream": "

        Creates an Amazon Kinesis stream. A stream captures and transports data records that are continuously emitted from different data sources or producers. Scale-out within a stream is explicitly supported by means of shards, which are uniquely identified groups of data records in a stream.

        You specify and control the number of shards that a stream is composed of. Each shard can support reads up to 5 transactions per second, up to a maximum data read total of 2 MB per second. Each shard can support writes up to 1,000 records per second, up to a maximum data write total of 1 MB per second. You can add shards to a stream if the amount of data input increases and you can remove shards if the amount of data input decreases.

        The stream name identifies the stream. The name is scoped to the AWS account used by the application. It is also scoped by region. That is, two streams in two different accounts can have the same name, and two streams in the same account, but in two different regions, can have the same name.

        CreateStream is an asynchronous operation. Upon receiving a CreateStream request, Amazon Kinesis immediately returns and sets the stream status to CREATING. After the stream is created, Amazon Kinesis sets the stream status to ACTIVE. You should perform read and write operations only on an ACTIVE stream.

        You receive a LimitExceededException when making a CreateStream request if you try to do one of the following:

        • Have more than five streams in the CREATING state at any point in time.
        • Create more shards than are authorized for your account.

        For the default shard limit for an AWS account, see Streams Limits in the Amazon Kinesis Streams Developer Guide. If you need to increase this limit, contact AWS Support.

        You can use DescribeStream to check the stream status, which is returned in StreamStatus.

        CreateStream has a limit of 5 transactions per second per account.

        ", "DecreaseStreamRetentionPeriod": "

        Decreases the Amazon Kinesis stream's retention period, which is the length of time data records are accessible after they are added to the stream. The minimum value of a stream's retention period is 24 hours.

        This operation may result in lost data. For example, if the stream's retention period is 48 hours and is decreased to 24 hours, any data already in the stream that is older than 24 hours is inaccessible.

        ", "DeleteStream": "

        Deletes an Amazon Kinesis stream and all its shards and data. You must shut down any applications that are operating on the stream before you delete the stream. If an application attempts to operate on a deleted stream, it will receive the exception ResourceNotFoundException.

        If the stream is in the ACTIVE state, you can delete it. After a DeleteStream request, the specified stream is in the DELETING state until Amazon Kinesis completes the deletion.

        Note: Amazon Kinesis might continue to accept data read and write operations, such as PutRecord, PutRecords, and GetRecords, on a stream in the DELETING state until the stream deletion is complete.

        When you delete a stream, any shards in that stream are also deleted, and any tags are dissociated from the stream.

        You can use the DescribeStream operation to check the state of the stream, which is returned in StreamStatus.

        DeleteStream has a limit of 5 transactions per second per account.

        ", "DescribeStream": "

        Describes the specified Amazon Kinesis stream.

        The information about the stream includes its current status, its Amazon Resource Name (ARN), and an array of shard objects. For each shard object, there is information about the hash key and sequence number ranges that the shard spans, and the IDs of any earlier shards that played in a role in creating the shard. A sequence number is the identifier associated with every record ingested in the stream. The sequence number is assigned when a record is put into the stream.

        You can limit the number of returned shards using the Limit parameter. The number of shards in a stream may be too large to return from a single call to DescribeStream. You can detect this by using the HasMoreShards flag in the returned output. HasMoreShards is set to true when there is more data available.

        DescribeStream is a paginated operation. If there are more shards available, you can request them using the shard ID of the last shard returned. Specify this ID in the ExclusiveStartShardId parameter in a subsequent request to DescribeStream.

        There are no guarantees about the chronological order shards returned in DescribeStream results. If you want to process shards in chronological order, use ParentShardId to track lineage to the oldest shard.

        DescribeStream has a limit of 10 transactions per second per account.

        ", "DisableEnhancedMonitoring": "

        Disables enhanced monitoring.

        ", "EnableEnhancedMonitoring": "

        Enables enhanced Amazon Kinesis stream monitoring for shard-level metrics.

        ", "GetRecords": "

        Gets data records from an Amazon Kinesis stream's shard.

        Specify a shard iterator using the ShardIterator parameter. The shard iterator specifies the position in the shard from which you want to start reading data records sequentially. If there are no records available in the portion of the shard that the iterator points to, GetRecords returns an empty list. Note that it might take multiple calls to get to a portion of the shard that contains records.

        You can scale by provisioning multiple shards per stream while considering service limits (for more information, see Streams Limits in the Amazon Kinesis Streams Developer Guide). Your application should have one thread per shard, each reading continuously from its stream. To read from a stream continually, call GetRecords in a loop. Use GetShardIterator to get the shard iterator to specify in the first GetRecords call. GetRecords returns a new shard iterator in NextShardIterator. Specify the shard iterator returned in NextShardIterator in subsequent calls to GetRecords. Note that if the shard has been closed, the shard iterator can't return more data and GetRecords returns null in NextShardIterator. You can terminate the loop when the shard is closed, or when the shard iterator reaches the record with the sequence number or other attribute that marks it as the last record to process.

        Each data record can be up to 1 MB in size, and each shard can read up to 2 MB per second. You can ensure that your calls don't exceed the maximum supported size or throughput by using the Limit parameter to specify the maximum number of records that GetRecords can return. Consider your average record size when determining this limit.

        The size of the data returned by GetRecords varies depending on the utilization of the shard. The maximum size of data that GetRecords can return is 10 MB. If a call returns this amount of data, subsequent calls made within the next 5 seconds throw ProvisionedThroughputExceededException. If there is insufficient provisioned throughput on the shard, subsequent calls made within the next 1 second throw ProvisionedThroughputExceededException. Note that GetRecords won't return any data when it throws an exception. For this reason, we recommend that you wait one second between calls to GetRecords; however, it's possible that the application will get exceptions for longer than 1 second.

        To detect whether the application is falling behind in processing, you can use the MillisBehindLatest response attribute. You can also monitor the stream using CloudWatch metrics and other mechanisms (see Monitoring in the Amazon Kinesis Streams Developer Guide).

        Each Amazon Kinesis record includes a value, ApproximateArrivalTimestamp, that is set when a stream successfully receives and stores a record. This is commonly referred to as a server-side timestamp, whereas a client-side timestamp is set when a data producer creates or sends the record to a stream (a data producer is any data source putting data records into a stream, for example with PutRecords). The timestamp has millisecond precision. There are no guarantees about the timestamp accuracy, or that the timestamp is always increasing. For example, records in a shard or across a stream might have timestamps that are out of order.

        ", "GetShardIterator": "

        Gets an Amazon Kinesis shard iterator. A shard iterator expires five minutes after it is returned to the requester.

        A shard iterator specifies the shard position from which to start reading data records sequentially. The position is specified using the sequence number of a data record in a shard. A sequence number is the identifier associated with every record ingested in the stream, and is assigned when a record is put into the stream. Each stream has one or more shards.

        You must specify the shard iterator type. For example, you can set the ShardIteratorType parameter to read exactly from the position denoted by a specific sequence number by using the AT_SEQUENCE_NUMBER shard iterator type, or right after the sequence number by using the AFTER_SEQUENCE_NUMBER shard iterator type, using sequence numbers returned by earlier calls to PutRecord, PutRecords, GetRecords, or DescribeStream. In the request, you can specify the shard iterator type AT_TIMESTAMP to read records from an arbitrary point in time, TRIM_HORIZON to cause ShardIterator to point to the last untrimmed record in the shard in the system (the oldest data record in the shard), or LATEST so that you always read the most recent data in the shard.

        When you read repeatedly from a stream, use a GetShardIterator request to get the first shard iterator for use in your first GetRecords request and for subsequent reads use the shard iterator returned by the GetRecords request in NextShardIterator. A new shard iterator is returned by every GetRecords request in NextShardIterator, which you use in the ShardIterator parameter of the next GetRecords request.

        If a GetShardIterator request is made too often, you receive a ProvisionedThroughputExceededException. For more information about throughput limits, see GetRecords, and Streams Limits in the Amazon Kinesis Streams Developer Guide.

        If the shard is closed, GetShardIterator returns a valid iterator for the last sequence number of the shard. Note that a shard can be closed as a result of using SplitShard or MergeShards.

        GetShardIterator has a limit of 5 transactions per second per account per open shard.

        ", "IncreaseStreamRetentionPeriod": "

        Increases the Amazon Kinesis stream's retention period, which is the length of time data records are accessible after they are added to the stream. The maximum value of a stream's retention period is 168 hours (7 days).

        Upon choosing a longer stream retention period, this operation will increase the time period records are accessible that have not yet expired. However, it will not make previous data that has expired (older than the stream's previous retention period) accessible after the operation has been called. For example, if a stream's retention period is set to 24 hours and is increased to 168 hours, any data that is older than 24 hours will remain inaccessible to consumer applications.

        ", "ListStreams": "

        Lists your Amazon Kinesis streams.

        The number of streams may be too large to return from a single call to ListStreams. You can limit the number of returned streams using the Limit parameter. If you do not specify a value for the Limit parameter, Amazon Kinesis uses the default limit, which is currently 10.

        You can detect if there are more streams available to list by using the HasMoreStreams flag from the returned output. If there are more streams available, you can request more streams by using the name of the last stream returned by the ListStreams request in the ExclusiveStartStreamName parameter in a subsequent request to ListStreams. The group of stream names returned by the subsequent request is then added to the list. You can continue this process until all the stream names have been collected in the list.

        ListStreams has a limit of 5 transactions per second per account.

        ", "ListTagsForStream": "

        Lists the tags for the specified Amazon Kinesis stream.

        ", "MergeShards": "

        Merges two adjacent shards in an Amazon Kinesis stream and combines them into a single shard to reduce the stream's capacity to ingest and transport data. Two shards are considered adjacent if the union of the hash key ranges for the two shards form a contiguous set with no gaps. For example, if you have two shards, one with a hash key range of 276...381 and the other with a hash key range of 382...454, then you could merge these two shards into a single shard that would have a hash key range of 276...454. After the merge, the single child shard receives data for all hash key values covered by the two parent shards.

        MergeShards is called when there is a need to reduce the overall capacity of a stream because of excess capacity that is not being used. You must specify the shard to be merged and the adjacent shard for a stream. For more information about merging shards, see Merge Two Shards in the Amazon Kinesis Streams Developer Guide.

        If the stream is in the ACTIVE state, you can call MergeShards. If a stream is in the CREATING, UPDATING, or DELETING state, MergeShards returns a ResourceInUseException. If the specified stream does not exist, MergeShards returns a ResourceNotFoundException.

        You can use DescribeStream to check the state of the stream, which is returned in StreamStatus.

        MergeShards is an asynchronous operation. Upon receiving a MergeShards request, Amazon Kinesis immediately returns a response and sets the StreamStatus to UPDATING. After the operation is completed, Amazon Kinesis sets the StreamStatus to ACTIVE. Read and write operations continue to work while the stream is in the UPDATING state.

        You use DescribeStream to determine the shard IDs that are specified in the MergeShards request.

        If you try to operate on too many streams in parallel using CreateStream, DeleteStream, MergeShards or SplitShard, you will receive a LimitExceededException.

        MergeShards has limit of 5 transactions per second per account.

        ", "PutRecord": "

        Writes a single data record into an Amazon Kinesis stream. Call PutRecord to send data into the stream for real-time ingestion and subsequent processing, one record at a time. Each shard can support writes up to 1,000 records per second, up to a maximum data write total of 1 MB per second.

        You must specify the name of the stream that captures, stores, and transports the data; a partition key; and the data blob itself.

        The data blob can be any type of data; for example, a segment from a log file, geographic/location data, website clickstream data, and so on.

        The partition key is used by Amazon Kinesis to distribute data across shards. Amazon Kinesis segregates the data records that belong to a stream into multiple shards, using the partition key associated with each data record to determine which shard a given data record belongs to.

        Partition keys are Unicode strings, with a maximum length limit of 256 characters for each key. An MD5 hash function is used to map partition keys to 128-bit integer values and to map associated data records to shards using the hash key ranges of the shards. You can override hashing the partition key to determine the shard by explicitly specifying a hash value using the ExplicitHashKey parameter. For more information, see Adding Data to a Stream in the Amazon Kinesis Streams Developer Guide.

        PutRecord returns the shard ID of where the data record was placed and the sequence number that was assigned to the data record.

        Sequence numbers increase over time and are specific to a shard within a stream, not across all shards within a stream. To guarantee strictly increasing ordering, write serially to a shard and use the SequenceNumberForOrdering parameter. For more information, see Adding Data to a Stream in the Amazon Kinesis Streams Developer Guide.

        If a PutRecord request cannot be processed because of insufficient provisioned throughput on the shard involved in the request, PutRecord throws ProvisionedThroughputExceededException.

        Data records are accessible for only 24 hours from the time that they are added to a stream.

        ", "PutRecords": "

        Writes multiple data records into an Amazon Kinesis stream in a single call (also referred to as a PutRecords request). Use this operation to send data into the stream for data ingestion and processing.

        Each PutRecords request can support up to 500 records. Each record in the request can be as large as 1 MB, up to a limit of 5 MB for the entire request, including partition keys. Each shard can support writes up to 1,000 records per second, up to a maximum data write total of 1 MB per second.

        You must specify the name of the stream that captures, stores, and transports the data; and an array of request Records, with each record in the array requiring a partition key and data blob. The record size limit applies to the total size of the partition key and data blob.

        The data blob can be any type of data; for example, a segment from a log file, geographic/location data, website clickstream data, and so on.

        The partition key is used by Amazon Kinesis as input to a hash function that maps the partition key and associated data to a specific shard. An MD5 hash function is used to map partition keys to 128-bit integer values and to map associated data records to shards. As a result of this hashing mechanism, all data records with the same partition key map to the same shard within the stream. For more information, see Adding Data to a Stream in the Amazon Kinesis Streams Developer Guide.

        Each record in the Records array may include an optional parameter, ExplicitHashKey, which overrides the partition key to shard mapping. This parameter allows a data producer to determine explicitly the shard where the record is stored. For more information, see Adding Multiple Records with PutRecords in the Amazon Kinesis Streams Developer Guide.

        The PutRecords response includes an array of response Records. Each record in the response array directly correlates with a record in the request array using natural ordering, from the top to the bottom of the request and response. The response Records array always includes the same number of records as the request array.

        The response Records array includes both successfully and unsuccessfully processed records. Amazon Kinesis attempts to process all records in each PutRecords request. A single record failure does not stop the processing of subsequent records.

        A successfully-processed record includes ShardId and SequenceNumber values. The ShardId parameter identifies the shard in the stream where the record is stored. The SequenceNumber parameter is an identifier assigned to the put record, unique to all records in the stream.

        An unsuccessfully-processed record includes ErrorCode and ErrorMessage values. ErrorCode reflects the type of error and can be one of the following values: ProvisionedThroughputExceededException or InternalFailure. ErrorMessage provides more detailed information about the ProvisionedThroughputExceededException exception including the account ID, stream name, and shard ID of the record that was throttled. For more information about partially successful responses, see Adding Multiple Records with PutRecords in the Amazon Kinesis Streams Developer Guide.

        By default, data records are accessible for only 24 hours from the time that they are added to an Amazon Kinesis stream. This retention period can be modified using the DecreaseStreamRetentionPeriod and IncreaseStreamRetentionPeriod operations.

        ", "RemoveTagsFromStream": "

        Removes tags from the specified Amazon Kinesis stream. Removed tags are deleted and cannot be recovered after this operation successfully completes.

        If you specify a tag that does not exist, it is ignored.

        ", "SplitShard": "

        Splits a shard into two new shards in the Amazon Kinesis stream to increase the stream's capacity to ingest and transport data. SplitShard is called when there is a need to increase the overall capacity of a stream because of an expected increase in the volume of data records being ingested.

        You can also use SplitShard when a shard appears to be approaching its maximum utilization; for example, the producers sending data into the specific shard are suddenly sending more than previously anticipated. You can also call SplitShard to increase stream capacity, so that more Amazon Kinesis applications can simultaneously read data from the stream for real-time processing.

        You must specify the shard to be split and the new hash key, which is the position in the shard where the shard gets split in two. In many cases, the new hash key might simply be the average of the beginning and ending hash key, but it can be any hash key value in the range being mapped into the shard. For more information about splitting shards, see Split a Shard in the Amazon Kinesis Streams Developer Guide.

        You can use DescribeStream to determine the shard ID and hash key values for the ShardToSplit and NewStartingHashKey parameters that are specified in the SplitShard request.

        SplitShard is an asynchronous operation. Upon receiving a SplitShard request, Amazon Kinesis immediately returns a response and sets the stream status to UPDATING. After the operation is completed, Amazon Kinesis sets the stream status to ACTIVE. Read and write operations continue to work while the stream is in the UPDATING state.

        You can use DescribeStream to check the status of the stream, which is returned in StreamStatus. If the stream is in the ACTIVE state, you can call SplitShard. If a stream is in CREATING or UPDATING or DELETING states, DescribeStream returns a ResourceInUseException.

        If the specified stream does not exist, DescribeStream returns a ResourceNotFoundException. If you try to create more shards than are authorized for your account, you receive a LimitExceededException.

        For the default shard limit for an AWS account, see Streams Limits in the Amazon Kinesis Streams Developer Guide. If you need to increase this limit, contact AWS Support.

        If you try to operate on too many streams simultaneously using CreateStream, DeleteStream, MergeShards, and/or SplitShard, you receive a LimitExceededException.

        SplitShard has limit of 5 transactions per second per account.

        " }, "shapes": { "AddTagsToStreamInput": { "base": "

        Represents the input for AddTagsToStream.

        ", "refs": { } }, "ApproximateArrivalTimestamp": { "base": null, "refs": { "Record$ApproximateArrivalTimestamp": "

        The approximate time that the record was inserted into the stream.

        " } }, "BooleanObject": { "base": null, "refs": { "ListStreamsOutput$HasMoreStreams": "

        If set to true, there are more streams available to list.

        ", "ListTagsForStreamOutput$HasMoreTags": "

        If set to true, more tags are available. To request additional tags, set ExclusiveStartTagKey to the key of the last tag returned.

        ", "StreamDescription$HasMoreShards": "

        If set to true, more shards in the stream are available to describe.

        " } }, "CreateStreamInput": { "base": "

        Represents the input for CreateStream.

        ", "refs": { } }, "Data": { "base": null, "refs": { "PutRecordInput$Data": "

        The data blob to put into the record, which is base64-encoded when the blob is serialized. When the data blob (the payload before base64-encoding) is added to the partition key size, the total size must not exceed the maximum record size (1 MB).

        ", "PutRecordsRequestEntry$Data": "

        The data blob to put into the record, which is base64-encoded when the blob is serialized. When the data blob (the payload before base64-encoding) is added to the partition key size, the total size must not exceed the maximum record size (1 MB).

        ", "Record$Data": "

        The data blob. The data in the blob is both opaque and immutable to the Amazon Kinesis service, which does not inspect, interpret, or change the data in the blob in any way. When the data blob (the payload before base64-encoding) is added to the partition key size, the total size must not exceed the maximum record size (1 MB).

        " } }, "DecreaseStreamRetentionPeriodInput": { "base": "

        Represents the input for DecreaseStreamRetentionPeriod.

        ", "refs": { } }, "DeleteStreamInput": { "base": "

        Represents the input for DeleteStream.

        ", "refs": { } }, "DescribeStreamInput": { "base": "

        Represents the input for DescribeStream.

        ", "refs": { } }, "DescribeStreamInputLimit": { "base": null, "refs": { "DescribeStreamInput$Limit": "

        The maximum number of shards to return.

        " } }, "DescribeStreamOutput": { "base": "

        Represents the output for DescribeStream.

        ", "refs": { } }, "DisableEnhancedMonitoringInput": { "base": "

        Represents the input for DisableEnhancedMonitoring.

        ", "refs": { } }, "EnableEnhancedMonitoringInput": { "base": "

        Represents the input for EnableEnhancedMonitoring.

        ", "refs": { } }, "EnhancedMetrics": { "base": "

        Represents enhanced metrics types.

        ", "refs": { "EnhancedMonitoringList$member": null } }, "EnhancedMonitoringList": { "base": null, "refs": { "StreamDescription$EnhancedMonitoring": "

        Represents the current enhanced monitoring settings of the stream.

        " } }, "EnhancedMonitoringOutput": { "base": "

        Represents the output for EnableEnhancedMonitoring and DisableEnhancedMonitoring.

        ", "refs": { } }, "ErrorCode": { "base": null, "refs": { "PutRecordsResultEntry$ErrorCode": "

        The error code for an individual record result. ErrorCodes can be either ProvisionedThroughputExceededException or InternalFailure.

        " } }, "ErrorMessage": { "base": null, "refs": { "ExpiredIteratorException$message": "

        A message that provides information about the error.

        ", "InvalidArgumentException$message": "

        A message that provides information about the error.

        ", "LimitExceededException$message": "

        A message that provides information about the error.

        ", "ProvisionedThroughputExceededException$message": "

        A message that provides information about the error.

        ", "PutRecordsResultEntry$ErrorMessage": "

        The error message for an individual record result. An ErrorCode value of ProvisionedThroughputExceededException has an error message that includes the account ID, stream name, and shard ID. An ErrorCode value of InternalFailure has the error message \"Internal Service Failure\".

        ", "ResourceInUseException$message": "

        A message that provides information about the error.

        ", "ResourceNotFoundException$message": "

        A message that provides information about the error.

        " } }, "ExpiredIteratorException": { "base": "

        The provided iterator exceeds the maximum age allowed.

        ", "refs": { } }, "GetRecordsInput": { "base": "

        Represents the input for GetRecords.

        ", "refs": { } }, "GetRecordsInputLimit": { "base": null, "refs": { "GetRecordsInput$Limit": "

        The maximum number of records to return. Specify a value of up to 10,000. If you specify a value that is greater than 10,000, GetRecords throws InvalidArgumentException.

        " } }, "GetRecordsOutput": { "base": "

        Represents the output for GetRecords.

        ", "refs": { } }, "GetShardIteratorInput": { "base": "

        Represents the input for GetShardIterator.

        ", "refs": { } }, "GetShardIteratorOutput": { "base": "

        Represents the output for GetShardIterator.

        ", "refs": { } }, "HashKey": { "base": null, "refs": { "HashKeyRange$StartingHashKey": "

        The starting hash key of the hash key range.

        ", "HashKeyRange$EndingHashKey": "

        The ending hash key of the hash key range.

        ", "PutRecordInput$ExplicitHashKey": "

        The hash value used to explicitly determine the shard the data record is assigned to by overriding the partition key hash.

        ", "PutRecordsRequestEntry$ExplicitHashKey": "

        The hash value used to determine explicitly the shard that the data record is assigned to by overriding the partition key hash.

        ", "SplitShardInput$NewStartingHashKey": "

        A hash key value for the starting hash key of one of the child shards created by the split. The hash key range for a given shard constitutes a set of ordered contiguous positive integers. The value for NewStartingHashKey must be in the range of hash keys being mapped into the shard. The NewStartingHashKey hash key value and all higher hash key values in hash key range are distributed to one of the child shards. All the lower hash key values in the range are distributed to the other child shard.

        " } }, "HashKeyRange": { "base": "

        The range of possible hash key values for the shard, which is a set of ordered contiguous positive integers.

        ", "refs": { "Shard$HashKeyRange": "

        The range of possible hash key values for the shard, which is a set of ordered contiguous positive integers.

        " } }, "IncreaseStreamRetentionPeriodInput": { "base": "

        Represents the input for IncreaseStreamRetentionPeriod.

        ", "refs": { } }, "InvalidArgumentException": { "base": "

        A specified parameter exceeds its restrictions, is not supported, or can't be used. For more information, see the returned message.

        ", "refs": { } }, "LimitExceededException": { "base": "

        The requested resource exceeds the maximum number allowed, or the number of concurrent stream requests exceeds the maximum number allowed (5).

        ", "refs": { } }, "ListStreamsInput": { "base": "

        Represents the input for ListStreams.

        ", "refs": { } }, "ListStreamsInputLimit": { "base": null, "refs": { "ListStreamsInput$Limit": "

        The maximum number of streams to list.

        " } }, "ListStreamsOutput": { "base": "

        Represents the output for ListStreams.

        ", "refs": { } }, "ListTagsForStreamInput": { "base": "

        Represents the input for ListTagsForStream.

        ", "refs": { } }, "ListTagsForStreamInputLimit": { "base": null, "refs": { "ListTagsForStreamInput$Limit": "

        The number of tags to return. If this number is less than the total number of tags associated with the stream, HasMoreTags is set to true. To list additional tags, set ExclusiveStartTagKey to the last key in the response.

        " } }, "ListTagsForStreamOutput": { "base": "

        Represents the output for ListTagsForStream.

        ", "refs": { } }, "MergeShardsInput": { "base": "

        Represents the input for MergeShards.

        ", "refs": { } }, "MetricsName": { "base": null, "refs": { "MetricsNameList$member": null } }, "MetricsNameList": { "base": null, "refs": { "DisableEnhancedMonitoringInput$ShardLevelMetrics": "

        List of shard-level metrics to disable.

        The following are the valid shard-level metrics. The value \"ALL\" disables every metric.

        • IncomingBytes
        • IncomingRecords
        • OutgoingBytes
        • OutgoingRecords
        • WriteProvisionedThroughputExceeded
        • ReadProvisionedThroughputExceeded
        • IteratorAgeMilliseconds
        • ALL

        For more information, see Monitoring the Amazon Kinesis Streams Service with Amazon CloudWatch in the Amazon Kinesis Streams Developer Guide.

        ", "EnableEnhancedMonitoringInput$ShardLevelMetrics": "

        List of shard-level metrics to enable.

        The following are the valid shard-level metrics. The value \"ALL\" enables every metric.

        • IncomingBytes
        • IncomingRecords
        • OutgoingBytes
        • OutgoingRecords
        • WriteProvisionedThroughputExceeded
        • ReadProvisionedThroughputExceeded
        • IteratorAgeMilliseconds
        • ALL

        For more information, see Monitoring the Amazon Kinesis Streams Service with Amazon CloudWatch in the Amazon Kinesis Streams Developer Guide.

        ", "EnhancedMetrics$ShardLevelMetrics": "

        List of shard-level metrics.

        The following are the valid shard-level metrics. The value \"ALL\" enhances every metric.

        • IncomingBytes
        • IncomingRecords
        • OutgoingBytes
        • OutgoingRecords
        • WriteProvisionedThroughputExceeded
        • ReadProvisionedThroughputExceeded
        • IteratorAgeMilliseconds
        • ALL

        For more information, see Monitoring the Amazon Kinesis Streams Service with Amazon CloudWatch in the Amazon Kinesis Streams Developer Guide.

        ", "EnhancedMonitoringOutput$CurrentShardLevelMetrics": "

        Represents the current state of the metrics that are in the enhanced state before the operation.

        ", "EnhancedMonitoringOutput$DesiredShardLevelMetrics": "

        Represents the list of all the metrics that would be in the enhanced state after the operation.

        " } }, "MillisBehindLatest": { "base": null, "refs": { "GetRecordsOutput$MillisBehindLatest": "

        The number of milliseconds the GetRecords response is from the tip of the stream, indicating how far behind current time the consumer is. A value of zero indicates record processing is caught up, and there are no new records to process at this moment.

        " } }, "PartitionKey": { "base": null, "refs": { "PutRecordInput$PartitionKey": "

        Determines which shard in the stream the data record is assigned to. Partition keys are Unicode strings with a maximum length limit of 256 characters for each key. Amazon Kinesis uses the partition key as input to a hash function that maps the partition key and associated data to a specific shard. Specifically, an MD5 hash function is used to map partition keys to 128-bit integer values and to map associated data records to shards. As a result of this hashing mechanism, all data records with the same partition key map to the same shard within the stream.

        ", "PutRecordsRequestEntry$PartitionKey": "

        Determines which shard in the stream the data record is assigned to. Partition keys are Unicode strings with a maximum length limit of 256 characters for each key. Amazon Kinesis uses the partition key as input to a hash function that maps the partition key and associated data to a specific shard. Specifically, an MD5 hash function is used to map partition keys to 128-bit integer values and to map associated data records to shards. As a result of this hashing mechanism, all data records with the same partition key map to the same shard within the stream.

        ", "Record$PartitionKey": "

        Identifies which shard in the stream the data record is assigned to.

        " } }, "PositiveIntegerObject": { "base": null, "refs": { "CreateStreamInput$ShardCount": "

        The number of shards that the stream will use. The throughput of the stream is a function of the number of shards; more shards are required for greater provisioned throughput.

        DefaultShardLimit;

        ", "PutRecordsOutput$FailedRecordCount": "

        The number of unsuccessfully processed records in a PutRecords request.

        " } }, "ProvisionedThroughputExceededException": { "base": "

        The request rate for the stream is too high, or the requested data is too large for the available throughput. Reduce the frequency or size of your requests. For more information, see Streams Limits in the Amazon Kinesis Streams Developer Guide, and Error Retries and Exponential Backoff in AWS in the AWS General Reference.

        ", "refs": { } }, "PutRecordInput": { "base": "

        Represents the input for PutRecord.

        ", "refs": { } }, "PutRecordOutput": { "base": "

        Represents the output for PutRecord.

        ", "refs": { } }, "PutRecordsInput": { "base": "

        A PutRecords request.

        ", "refs": { } }, "PutRecordsOutput": { "base": "

        PutRecords results.

        ", "refs": { } }, "PutRecordsRequestEntry": { "base": "

        Represents the output for PutRecords.

        ", "refs": { "PutRecordsRequestEntryList$member": null } }, "PutRecordsRequestEntryList": { "base": null, "refs": { "PutRecordsInput$Records": "

        The records associated with the request.

        " } }, "PutRecordsResultEntry": { "base": "

        Represents the result of an individual record from a PutRecords request. A record that is successfully added to a stream includes SequenceNumber and ShardId in the result. A record that fails to be added to the stream includes ErrorCode and ErrorMessage in the result.

        ", "refs": { "PutRecordsResultEntryList$member": null } }, "PutRecordsResultEntryList": { "base": null, "refs": { "PutRecordsOutput$Records": "

        An array of successfully and unsuccessfully processed record results, correlated with the request by natural ordering. A record that is successfully added to a stream includes SequenceNumber and ShardId in the result. A record that fails to be added to a stream includes ErrorCode and ErrorMessage in the result.

        " } }, "Record": { "base": "

        The unit of data of the Amazon Kinesis stream, which is composed of a sequence number, a partition key, and a data blob.

        ", "refs": { "RecordList$member": null } }, "RecordList": { "base": null, "refs": { "GetRecordsOutput$Records": "

        The data records retrieved from the shard.

        " } }, "RemoveTagsFromStreamInput": { "base": "

        Represents the input for RemoveTagsFromStream.

        ", "refs": { } }, "ResourceInUseException": { "base": "

        The resource is not available for this operation. For successful operation, the resource needs to be in the ACTIVE state.

        ", "refs": { } }, "ResourceNotFoundException": { "base": "

        The requested resource could not be found. The stream might not be specified correctly, or it might not be in the ACTIVE state if the operation requires it.

        ", "refs": { } }, "RetentionPeriodHours": { "base": null, "refs": { "DecreaseStreamRetentionPeriodInput$RetentionPeriodHours": "

        The new retention period of the stream, in hours. Must be less than the current retention period.

        ", "IncreaseStreamRetentionPeriodInput$RetentionPeriodHours": "

        The new retention period of the stream, in hours. Must be more than the current retention period.

        ", "StreamDescription$RetentionPeriodHours": "

        The current retention period, in hours.

        " } }, "SequenceNumber": { "base": null, "refs": { "GetShardIteratorInput$StartingSequenceNumber": "

        The sequence number of the data record in the shard from which to start reading. Used with shard iterator type AT_SEQUENCE_NUMBER and AFTER_SEQUENCE_NUMBER.

        ", "PutRecordInput$SequenceNumberForOrdering": "

        Guarantees strictly increasing sequence numbers, for puts from the same client and to the same partition key. Usage: set the SequenceNumberForOrdering of record n to the sequence number of record n-1 (as returned in the result when putting record n-1). If this parameter is not set, records will be coarsely ordered based on arrival time.

        ", "PutRecordOutput$SequenceNumber": "

        The sequence number identifier that was assigned to the put data record. The sequence number for the record is unique across all records in the stream. A sequence number is the identifier associated with every record put into the stream.

        ", "PutRecordsResultEntry$SequenceNumber": "

        The sequence number for an individual record result.

        ", "Record$SequenceNumber": "

        The unique identifier of the record in the stream.

        ", "SequenceNumberRange$StartingSequenceNumber": "

        The starting sequence number for the range.

        ", "SequenceNumberRange$EndingSequenceNumber": "

        The ending sequence number for the range. Shards that are in the OPEN state have an ending sequence number of null.

        " } }, "SequenceNumberRange": { "base": "

        The range of possible sequence numbers for the shard.

        ", "refs": { "Shard$SequenceNumberRange": "

        The range of possible sequence numbers for the shard.

        " } }, "Shard": { "base": "

        A uniquely identified group of data records in an Amazon Kinesis stream.

        ", "refs": { "ShardList$member": null } }, "ShardId": { "base": null, "refs": { "DescribeStreamInput$ExclusiveStartShardId": "

        The shard ID of the shard to start with.

        ", "GetShardIteratorInput$ShardId": "

        The shard ID of the Amazon Kinesis shard to get the iterator for.

        ", "MergeShardsInput$ShardToMerge": "

        The shard ID of the shard to combine with the adjacent shard for the merge.

        ", "MergeShardsInput$AdjacentShardToMerge": "

        The shard ID of the adjacent shard for the merge.

        ", "PutRecordOutput$ShardId": "

        The shard ID of the shard where the data record was placed.

        ", "PutRecordsResultEntry$ShardId": "

        The shard ID for an individual record result.

        ", "Shard$ShardId": "

        The unique identifier of the shard within the stream.

        ", "Shard$ParentShardId": "

        The shard ID of the shard's parent.

        ", "Shard$AdjacentParentShardId": "

        The shard ID of the shard adjacent to the shard's parent.

        ", "SplitShardInput$ShardToSplit": "

        The shard ID of the shard to split.

        " } }, "ShardIterator": { "base": null, "refs": { "GetRecordsInput$ShardIterator": "

        The position in the shard from which you want to start sequentially reading data records. A shard iterator specifies this position using the sequence number of a data record in the shard.

        ", "GetRecordsOutput$NextShardIterator": "

        The next position in the shard from which to start sequentially reading data records. If set to null, the shard has been closed and the requested iterator will not return any more data.

        ", "GetShardIteratorOutput$ShardIterator": "

        The position in the shard from which to start reading data records sequentially. A shard iterator specifies this position using the sequence number of a data record in a shard.

        " } }, "ShardIteratorType": { "base": null, "refs": { "GetShardIteratorInput$ShardIteratorType": "

        Determines how the shard iterator is used to start reading data records from the shard.

        The following are the valid Amazon Kinesis shard iterator types:

        • AT_SEQUENCE_NUMBER - Start reading from the position denoted by a specific sequence number, provided in the value StartingSequenceNumber.
        • AFTER_SEQUENCE_NUMBER - Start reading right after the position denoted by a specific sequence number, provided in the value StartingSequenceNumber.
        • AT_TIMESTAMP - Start reading from the position denoted by a specific timestamp, provided in the value Timestamp.
        • TRIM_HORIZON - Start reading at the last untrimmed record in the shard in the system, which is the oldest data record in the shard.
        • LATEST - Start reading just after the most recent record in the shard, so that you always read the most recent data in the shard.
        " } }, "ShardList": { "base": null, "refs": { "StreamDescription$Shards": "

        The shards that comprise the stream.

        " } }, "SplitShardInput": { "base": "

        Represents the input for SplitShard.

        ", "refs": { } }, "StreamARN": { "base": null, "refs": { "StreamDescription$StreamARN": "

        The Amazon Resource Name (ARN) for the stream being described.

        " } }, "StreamDescription": { "base": "

        Represents the output for DescribeStream.

        ", "refs": { "DescribeStreamOutput$StreamDescription": "

        The current status of the stream, the stream ARN, an array of shard objects that comprise the stream, and states whether there are more shards available.

        " } }, "StreamName": { "base": null, "refs": { "AddTagsToStreamInput$StreamName": "

        The name of the stream.

        ", "CreateStreamInput$StreamName": "

        A name to identify the stream. The stream name is scoped to the AWS account used by the application that creates the stream. It is also scoped by region. That is, two streams in two different AWS accounts can have the same name, and two streams in the same AWS account but in two different regions can have the same name.

        ", "DecreaseStreamRetentionPeriodInput$StreamName": "

        The name of the stream to modify.

        ", "DeleteStreamInput$StreamName": "

        The name of the stream to delete.

        ", "DescribeStreamInput$StreamName": "

        The name of the stream to describe.

        ", "DisableEnhancedMonitoringInput$StreamName": "

        The name of the Amazon Kinesis stream for which to disable enhanced monitoring.

        ", "EnableEnhancedMonitoringInput$StreamName": "

        The name of the stream for which to enable enhanced monitoring.

        ", "EnhancedMonitoringOutput$StreamName": "

        The name of the Amazon Kinesis stream.

        ", "GetShardIteratorInput$StreamName": "

        The name of the Amazon Kinesis stream.

        ", "IncreaseStreamRetentionPeriodInput$StreamName": "

        The name of the stream to modify.

        ", "ListStreamsInput$ExclusiveStartStreamName": "

        The name of the stream to start the list with.

        ", "ListTagsForStreamInput$StreamName": "

        The name of the stream.

        ", "MergeShardsInput$StreamName": "

        The name of the stream for the merge.

        ", "PutRecordInput$StreamName": "

        The name of the stream to put the data record into.

        ", "PutRecordsInput$StreamName": "

        The stream name associated with the request.

        ", "RemoveTagsFromStreamInput$StreamName": "

        The name of the stream.

        ", "SplitShardInput$StreamName": "

        The name of the stream for the shard split.

        ", "StreamDescription$StreamName": "

        The name of the stream being described.

        ", "StreamNameList$member": null } }, "StreamNameList": { "base": null, "refs": { "ListStreamsOutput$StreamNames": "

        The names of the streams that are associated with the AWS account making the ListStreams request.

        " } }, "StreamStatus": { "base": null, "refs": { "StreamDescription$StreamStatus": "

        The current status of the stream being described. The stream status is one of the following states:

        • CREATING - The stream is being created. Amazon Kinesis immediately returns and sets StreamStatus to CREATING.
        • DELETING - The stream is being deleted. The specified stream is in the DELETING state until Amazon Kinesis completes the deletion.
        • ACTIVE - The stream exists and is ready for read and write operations or deletion. You should perform read and write operations only on an ACTIVE stream.
        • UPDATING - Shards in the stream are being merged or split. Read and write operations continue to work while the stream is in the UPDATING state.
        " } }, "Tag": { "base": "

        Metadata assigned to the stream, consisting of a key-value pair.

        ", "refs": { "TagList$member": null } }, "TagKey": { "base": null, "refs": { "ListTagsForStreamInput$ExclusiveStartTagKey": "

        The key to use as the starting point for the list of tags. If this parameter is set, ListTagsForStream gets all tags that occur after ExclusiveStartTagKey.

        ", "Tag$Key": "

        A unique identifier for the tag. Maximum length: 128 characters. Valid characters: Unicode letters, digits, white space, _ . / = + - % @

        ", "TagKeyList$member": null, "TagMap$key": null } }, "TagKeyList": { "base": null, "refs": { "RemoveTagsFromStreamInput$TagKeys": "

        A list of tag keys. Each corresponding tag is removed from the stream.

        " } }, "TagList": { "base": null, "refs": { "ListTagsForStreamOutput$Tags": "

        A list of tags associated with StreamName, starting with the first tag after ExclusiveStartTagKey and up to the specified Limit.

        " } }, "TagMap": { "base": null, "refs": { "AddTagsToStreamInput$Tags": "

        The set of key-value pairs to use to create the tags.

        " } }, "TagValue": { "base": null, "refs": { "Tag$Value": "

        An optional string, typically used to describe or define the tag. Maximum length: 256 characters. Valid characters: Unicode letters, digits, white space, _ . / = + - % @

        ", "TagMap$value": null } }, "Timestamp": { "base": null, "refs": { "GetShardIteratorInput$Timestamp": "

        The timestamp of the data record from which to start reading. Used with shard iterator type AT_TIMESTAMP. A timestamp is the Unix epoch date with precision in milliseconds. For example, 2016-04-04T19:58:46.480-00:00 or 1459799926.480. If a record with this exact timestamp does not exist, the iterator returned is for the next (later) record. If the timestamp is older than the current trim horizon, the iterator returned is for the oldest untrimmed data record (TRIM_HORIZON).

        " } } } } aws-sdk-go-1.4.22/models/apis/kinesis/2013-12-02/examples-1.json000066400000000000000000000000541300374646400233410ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/kinesis/2013-12-02/paginators-1.json000066400000000000000000000010041300374646400236660ustar00rootroot00000000000000{ "pagination": { "DescribeStream": { "input_token": "ExclusiveStartShardId", "limit_key": "Limit", "more_results": "StreamDescription.HasMoreShards", "output_token": "StreamDescription.Shards[-1].ShardId", "result_key": "StreamDescription.Shards" }, "ListStreams": { "input_token": "ExclusiveStartStreamName", "limit_key": "Limit", "more_results": "HasMoreStreams", "output_token": "StreamNames[-1]", "result_key": "StreamNames" } } } aws-sdk-go-1.4.22/models/apis/kinesis/2013-12-02/waiters-2.json000066400000000000000000000005271300374646400232070ustar00rootroot00000000000000{ "version": 2, "waiters": { "StreamExists": { "delay": 10, "operation": "DescribeStream", "maxAttempts": 18, "acceptors": [ { "expected": "ACTIVE", "matcher": "path", "state": "success", "argument": "StreamDescription.StreamStatus" } ] } } } aws-sdk-go-1.4.22/models/apis/kinesisanalytics/000077500000000000000000000000001300374646400213575ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/kinesisanalytics/2015-08-14/000077500000000000000000000000001300374646400224155ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/kinesisanalytics/2015-08-14/api-2.json000066400000000000000000000705131300374646400242260ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-08-14", "endpointPrefix":"kinesisanalytics", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"Kinesis Analytics", "serviceFullName":"Amazon Kinesis Analytics", "signatureVersion":"v4", "targetPrefix":"KinesisAnalytics_20150814", "timestampFormat":"unixTimestamp" }, "operations":{ "AddApplicationInput":{ "name":"AddApplicationInput", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddApplicationInputRequest"}, "output":{"shape":"AddApplicationInputResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"}, {"shape":"InvalidArgumentException"}, {"shape":"ConcurrentModificationException"} ] }, "AddApplicationOutput":{ "name":"AddApplicationOutput", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddApplicationOutputRequest"}, "output":{"shape":"AddApplicationOutputResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"}, {"shape":"InvalidArgumentException"}, {"shape":"ConcurrentModificationException"} ] }, "AddApplicationReferenceDataSource":{ "name":"AddApplicationReferenceDataSource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddApplicationReferenceDataSourceRequest"}, "output":{"shape":"AddApplicationReferenceDataSourceResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"}, {"shape":"InvalidArgumentException"}, {"shape":"ConcurrentModificationException"} ] }, "CreateApplication":{ "name":"CreateApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateApplicationRequest"}, "output":{"shape":"CreateApplicationResponse"}, "errors":[ {"shape":"CodeValidationException"}, {"shape":"ResourceInUseException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidArgumentException"} ] }, "DeleteApplication":{ "name":"DeleteApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteApplicationRequest"}, "output":{"shape":"DeleteApplicationResponse"}, "errors":[ {"shape":"ConcurrentModificationException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"} ] }, "DeleteApplicationOutput":{ "name":"DeleteApplicationOutput", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteApplicationOutputRequest"}, "output":{"shape":"DeleteApplicationOutputResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"}, {"shape":"ConcurrentModificationException"} ] }, "DeleteApplicationReferenceDataSource":{ "name":"DeleteApplicationReferenceDataSource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteApplicationReferenceDataSourceRequest"}, "output":{"shape":"DeleteApplicationReferenceDataSourceResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"}, {"shape":"InvalidArgumentException"}, {"shape":"ConcurrentModificationException"} ] }, "DescribeApplication":{ "name":"DescribeApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeApplicationRequest"}, "output":{"shape":"DescribeApplicationResponse"}, "errors":[ {"shape":"ResourceNotFoundException"} ] }, "DiscoverInputSchema":{ "name":"DiscoverInputSchema", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DiscoverInputSchemaRequest"}, "output":{"shape":"DiscoverInputSchemaResponse"}, "errors":[ {"shape":"InvalidArgumentException"}, {"shape":"UnableToDetectSchemaException"}, {"shape":"ResourceProvisionedThroughputExceededException"} ] }, "ListApplications":{ "name":"ListApplications", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListApplicationsRequest"}, "output":{"shape":"ListApplicationsResponse"} }, "StartApplication":{ "name":"StartApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartApplicationRequest"}, "output":{"shape":"StartApplicationResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"}, {"shape":"InvalidArgumentException"}, {"shape":"InvalidApplicationConfigurationException"} ] }, "StopApplication":{ "name":"StopApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopApplicationRequest"}, "output":{"shape":"StopApplicationResponse"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"} ] }, "UpdateApplication":{ "name":"UpdateApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateApplicationRequest"}, "output":{"shape":"UpdateApplicationResponse"}, "errors":[ {"shape":"CodeValidationException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ResourceInUseException"}, {"shape":"InvalidArgumentException"}, {"shape":"ConcurrentModificationException"} ] } }, "shapes":{ "AddApplicationInputRequest":{ "type":"structure", "required":[ "ApplicationName", "CurrentApplicationVersionId", "Input" ], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "CurrentApplicationVersionId":{"shape":"ApplicationVersionId"}, "Input":{"shape":"Input"} } }, "AddApplicationInputResponse":{ "type":"structure", "members":{ } }, "AddApplicationOutputRequest":{ "type":"structure", "required":[ "ApplicationName", "CurrentApplicationVersionId", "Output" ], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "CurrentApplicationVersionId":{"shape":"ApplicationVersionId"}, "Output":{"shape":"Output"} } }, "AddApplicationOutputResponse":{ "type":"structure", "members":{ } }, "AddApplicationReferenceDataSourceRequest":{ "type":"structure", "required":[ "ApplicationName", "CurrentApplicationVersionId", "ReferenceDataSource" ], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "CurrentApplicationVersionId":{"shape":"ApplicationVersionId"}, "ReferenceDataSource":{"shape":"ReferenceDataSource"} } }, "AddApplicationReferenceDataSourceResponse":{ "type":"structure", "members":{ } }, "ApplicationCode":{ "type":"string", "max":51200, "min":0 }, "ApplicationDescription":{ "type":"string", "max":1024, "min":0 }, "ApplicationDetail":{ "type":"structure", "required":[ "ApplicationName", "ApplicationARN", "ApplicationStatus", "ApplicationVersionId" ], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "ApplicationDescription":{"shape":"ApplicationDescription"}, "ApplicationARN":{"shape":"ResourceARN"}, "ApplicationStatus":{"shape":"ApplicationStatus"}, "CreateTimestamp":{"shape":"Timestamp"}, "LastUpdateTimestamp":{"shape":"Timestamp"}, "InputDescriptions":{"shape":"InputDescriptions"}, "OutputDescriptions":{"shape":"OutputDescriptions"}, "ReferenceDataSourceDescriptions":{"shape":"ReferenceDataSourceDescriptions"}, "ApplicationCode":{"shape":"ApplicationCode"}, "ApplicationVersionId":{"shape":"ApplicationVersionId"} } }, "ApplicationName":{ "type":"string", "max":128, "min":1, "pattern":"[a-zA-Z0-9_.-]+" }, "ApplicationStatus":{ "type":"string", "enum":[ "DELETING", "STARTING", "STOPPING", "READY", "RUNNING", "UPDATING" ] }, "ApplicationSummaries":{ "type":"list", "member":{"shape":"ApplicationSummary"} }, "ApplicationSummary":{ "type":"structure", "required":[ "ApplicationName", "ApplicationARN", "ApplicationStatus" ], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "ApplicationARN":{"shape":"ResourceARN"}, "ApplicationStatus":{"shape":"ApplicationStatus"} } }, "ApplicationUpdate":{ "type":"structure", "members":{ "InputUpdates":{"shape":"InputUpdates"}, "ApplicationCodeUpdate":{"shape":"ApplicationCode"}, "OutputUpdates":{"shape":"OutputUpdates"}, "ReferenceDataSourceUpdates":{"shape":"ReferenceDataSourceUpdates"} } }, "ApplicationVersionId":{ "type":"long", "max":999999999, "min":1 }, "BooleanObject":{"type":"boolean"}, "BucketARN":{ "type":"string", "max":2048, "min":1, "pattern":"arn:.*" }, "CSVMappingParameters":{ "type":"structure", "required":[ "RecordRowDelimiter", "RecordColumnDelimiter" ], "members":{ "RecordRowDelimiter":{"shape":"RecordRowDelimiter"}, "RecordColumnDelimiter":{"shape":"RecordColumnDelimiter"} } }, "CodeValidationException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ConcurrentModificationException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "CreateApplicationRequest":{ "type":"structure", "required":["ApplicationName"], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "ApplicationDescription":{"shape":"ApplicationDescription"}, "Inputs":{"shape":"Inputs"}, "Outputs":{"shape":"Outputs"}, "ApplicationCode":{"shape":"ApplicationCode"} } }, "CreateApplicationResponse":{ "type":"structure", "required":["ApplicationSummary"], "members":{ "ApplicationSummary":{"shape":"ApplicationSummary"} } }, "DeleteApplicationOutputRequest":{ "type":"structure", "required":[ "ApplicationName", "CurrentApplicationVersionId", "OutputId" ], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "CurrentApplicationVersionId":{"shape":"ApplicationVersionId"}, "OutputId":{"shape":"Id"} } }, "DeleteApplicationOutputResponse":{ "type":"structure", "members":{ } }, "DeleteApplicationReferenceDataSourceRequest":{ "type":"structure", "required":[ "ApplicationName", "CurrentApplicationVersionId", "ReferenceId" ], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "CurrentApplicationVersionId":{"shape":"ApplicationVersionId"}, "ReferenceId":{"shape":"Id"} } }, "DeleteApplicationReferenceDataSourceResponse":{ "type":"structure", "members":{ } }, "DeleteApplicationRequest":{ "type":"structure", "required":[ "ApplicationName", "CreateTimestamp" ], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "CreateTimestamp":{"shape":"Timestamp"} } }, "DeleteApplicationResponse":{ "type":"structure", "members":{ } }, "DescribeApplicationRequest":{ "type":"structure", "required":["ApplicationName"], "members":{ "ApplicationName":{"shape":"ApplicationName"} } }, "DescribeApplicationResponse":{ "type":"structure", "required":["ApplicationDetail"], "members":{ "ApplicationDetail":{"shape":"ApplicationDetail"} } }, "DestinationSchema":{ "type":"structure", "members":{ "RecordFormatType":{"shape":"RecordFormatType"} } }, "DiscoverInputSchemaRequest":{ "type":"structure", "required":[ "ResourceARN", "RoleARN", "InputStartingPositionConfiguration" ], "members":{ "ResourceARN":{"shape":"ResourceARN"}, "RoleARN":{"shape":"RoleARN"}, "InputStartingPositionConfiguration":{"shape":"InputStartingPositionConfiguration"} } }, "DiscoverInputSchemaResponse":{ "type":"structure", "members":{ "InputSchema":{"shape":"SourceSchema"}, "ParsedInputRecords":{"shape":"ParsedInputRecords"}, "RawInputRecords":{"shape":"RawInputRecords"} } }, "ErrorMessage":{"type":"string"}, "FileKey":{"type":"string"}, "Id":{ "type":"string", "max":50, "min":1, "pattern":"[a-zA-Z0-9_.-]+" }, "InAppStreamName":{ "type":"string", "max":32, "min":1, "pattern":"[a-zA-Z][a-zA-Z0-9_]+" }, "InAppStreamNames":{ "type":"list", "member":{"shape":"InAppStreamName"} }, "InAppTableName":{ "type":"string", "max":32, "min":1, "pattern":"[a-zA-Z][a-zA-Z0-9_]+" }, "Input":{ "type":"structure", "required":[ "NamePrefix", "InputSchema" ], "members":{ "NamePrefix":{"shape":"InAppStreamName"}, "KinesisStreamsInput":{"shape":"KinesisStreamsInput"}, "KinesisFirehoseInput":{"shape":"KinesisFirehoseInput"}, "InputParallelism":{"shape":"InputParallelism"}, "InputSchema":{"shape":"SourceSchema"} } }, "InputConfiguration":{ "type":"structure", "required":[ "Id", "InputStartingPositionConfiguration" ], "members":{ "Id":{"shape":"Id"}, "InputStartingPositionConfiguration":{"shape":"InputStartingPositionConfiguration"} } }, "InputConfigurations":{ "type":"list", "member":{"shape":"InputConfiguration"} }, "InputDescription":{ "type":"structure", "members":{ "InputId":{"shape":"Id"}, "NamePrefix":{"shape":"InAppStreamName"}, "InAppStreamNames":{"shape":"InAppStreamNames"}, "KinesisStreamsInputDescription":{"shape":"KinesisStreamsInputDescription"}, "KinesisFirehoseInputDescription":{"shape":"KinesisFirehoseInputDescription"}, "InputSchema":{"shape":"SourceSchema"}, "InputParallelism":{"shape":"InputParallelism"}, "InputStartingPositionConfiguration":{"shape":"InputStartingPositionConfiguration"} } }, "InputDescriptions":{ "type":"list", "member":{"shape":"InputDescription"} }, "InputParallelism":{ "type":"structure", "members":{ "Count":{"shape":"InputParallelismCount"} } }, "InputParallelismCount":{ "type":"integer", "max":10, "min":1 }, "InputParallelismUpdate":{ "type":"structure", "members":{ "CountUpdate":{"shape":"InputParallelismCount"} } }, "InputSchemaUpdate":{ "type":"structure", "members":{ "RecordFormatUpdate":{"shape":"RecordFormat"}, "RecordEncodingUpdate":{"shape":"RecordEncoding"}, "RecordColumnUpdates":{"shape":"RecordColumns"} } }, "InputStartingPosition":{ "type":"string", "enum":[ "NOW", "TRIM_HORIZON", "LAST_STOPPED_POINT" ] }, "InputStartingPositionConfiguration":{ "type":"structure", "members":{ "InputStartingPosition":{"shape":"InputStartingPosition"} } }, "InputUpdate":{ "type":"structure", "required":["InputId"], "members":{ "InputId":{"shape":"Id"}, "NamePrefixUpdate":{"shape":"InAppStreamName"}, "KinesisStreamsInputUpdate":{"shape":"KinesisStreamsInputUpdate"}, "KinesisFirehoseInputUpdate":{"shape":"KinesisFirehoseInputUpdate"}, "InputSchemaUpdate":{"shape":"InputSchemaUpdate"}, "InputParallelismUpdate":{"shape":"InputParallelismUpdate"} } }, "InputUpdates":{ "type":"list", "member":{"shape":"InputUpdate"} }, "Inputs":{ "type":"list", "member":{"shape":"Input"} }, "InvalidApplicationConfigurationException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "InvalidArgumentException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "JSONMappingParameters":{ "type":"structure", "required":["RecordRowPath"], "members":{ "RecordRowPath":{"shape":"RecordRowPath"} } }, "KinesisFirehoseInput":{ "type":"structure", "required":[ "ResourceARN", "RoleARN" ], "members":{ "ResourceARN":{"shape":"ResourceARN"}, "RoleARN":{"shape":"RoleARN"} } }, "KinesisFirehoseInputDescription":{ "type":"structure", "members":{ "ResourceARN":{"shape":"ResourceARN"}, "RoleARN":{"shape":"RoleARN"} } }, "KinesisFirehoseInputUpdate":{ "type":"structure", "members":{ "ResourceARNUpdate":{"shape":"ResourceARN"}, "RoleARNUpdate":{"shape":"RoleARN"} } }, "KinesisFirehoseOutput":{ "type":"structure", "required":[ "ResourceARN", "RoleARN" ], "members":{ "ResourceARN":{"shape":"ResourceARN"}, "RoleARN":{"shape":"RoleARN"} } }, "KinesisFirehoseOutputDescription":{ "type":"structure", "members":{ "ResourceARN":{"shape":"ResourceARN"}, "RoleARN":{"shape":"RoleARN"} } }, "KinesisFirehoseOutputUpdate":{ "type":"structure", "members":{ "ResourceARNUpdate":{"shape":"ResourceARN"}, "RoleARNUpdate":{"shape":"RoleARN"} } }, "KinesisStreamsInput":{ "type":"structure", "required":[ "ResourceARN", "RoleARN" ], "members":{ "ResourceARN":{"shape":"ResourceARN"}, "RoleARN":{"shape":"RoleARN"} } }, "KinesisStreamsInputDescription":{ "type":"structure", "members":{ "ResourceARN":{"shape":"ResourceARN"}, "RoleARN":{"shape":"RoleARN"} } }, "KinesisStreamsInputUpdate":{ "type":"structure", "members":{ "ResourceARNUpdate":{"shape":"ResourceARN"}, "RoleARNUpdate":{"shape":"RoleARN"} } }, "KinesisStreamsOutput":{ "type":"structure", "required":[ "ResourceARN", "RoleARN" ], "members":{ "ResourceARN":{"shape":"ResourceARN"}, "RoleARN":{"shape":"RoleARN"} } }, "KinesisStreamsOutputDescription":{ "type":"structure", "members":{ "ResourceARN":{"shape":"ResourceARN"}, "RoleARN":{"shape":"RoleARN"} } }, "KinesisStreamsOutputUpdate":{ "type":"structure", "members":{ "ResourceARNUpdate":{"shape":"ResourceARN"}, "RoleARNUpdate":{"shape":"RoleARN"} } }, "LimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ListApplicationsInputLimit":{ "type":"integer", "max":50, "min":1 }, "ListApplicationsRequest":{ "type":"structure", "members":{ "Limit":{"shape":"ListApplicationsInputLimit"}, "ExclusiveStartApplicationName":{"shape":"ApplicationName"} } }, "ListApplicationsResponse":{ "type":"structure", "required":[ "ApplicationSummaries", "HasMoreApplications" ], "members":{ "ApplicationSummaries":{"shape":"ApplicationSummaries"}, "HasMoreApplications":{"shape":"BooleanObject"} } }, "MappingParameters":{ "type":"structure", "members":{ "JSONMappingParameters":{"shape":"JSONMappingParameters"}, "CSVMappingParameters":{"shape":"CSVMappingParameters"} } }, "Output":{ "type":"structure", "required":[ "Name", "DestinationSchema" ], "members":{ "Name":{"shape":"InAppStreamName"}, "KinesisStreamsOutput":{"shape":"KinesisStreamsOutput"}, "KinesisFirehoseOutput":{"shape":"KinesisFirehoseOutput"}, "DestinationSchema":{"shape":"DestinationSchema"} } }, "OutputDescription":{ "type":"structure", "members":{ "OutputId":{"shape":"Id"}, "Name":{"shape":"InAppStreamName"}, "KinesisStreamsOutputDescription":{"shape":"KinesisStreamsOutputDescription"}, "KinesisFirehoseOutputDescription":{"shape":"KinesisFirehoseOutputDescription"}, "DestinationSchema":{"shape":"DestinationSchema"} } }, "OutputDescriptions":{ "type":"list", "member":{"shape":"OutputDescription"} }, "OutputUpdate":{ "type":"structure", "required":["OutputId"], "members":{ "OutputId":{"shape":"Id"}, "NameUpdate":{"shape":"InAppStreamName"}, "KinesisStreamsOutputUpdate":{"shape":"KinesisStreamsOutputUpdate"}, "KinesisFirehoseOutputUpdate":{"shape":"KinesisFirehoseOutputUpdate"}, "DestinationSchemaUpdate":{"shape":"DestinationSchema"} } }, "OutputUpdates":{ "type":"list", "member":{"shape":"OutputUpdate"} }, "Outputs":{ "type":"list", "member":{"shape":"Output"} }, "ParsedInputRecord":{ "type":"list", "member":{"shape":"ParsedInputRecordField"} }, "ParsedInputRecordField":{"type":"string"}, "ParsedInputRecords":{ "type":"list", "member":{"shape":"ParsedInputRecord"} }, "RawInputRecord":{"type":"string"}, "RawInputRecords":{ "type":"list", "member":{"shape":"RawInputRecord"} }, "RecordColumn":{ "type":"structure", "required":[ "Name", "SqlType" ], "members":{ "Name":{"shape":"RecordColumnName"}, "Mapping":{"shape":"RecordColumnMapping"}, "SqlType":{"shape":"RecordColumnSqlType"} } }, "RecordColumnDelimiter":{"type":"string"}, "RecordColumnMapping":{"type":"string"}, "RecordColumnName":{ "type":"string", "pattern":"[a-zA-Z][a-zA-Z0-9_]+" }, "RecordColumnSqlType":{"type":"string"}, "RecordColumns":{ "type":"list", "member":{"shape":"RecordColumn"}, "max":1000, "min":1 }, "RecordEncoding":{ "type":"string", "pattern":"UTF-8" }, "RecordFormat":{ "type":"structure", "required":["RecordFormatType"], "members":{ "RecordFormatType":{"shape":"RecordFormatType"}, "MappingParameters":{"shape":"MappingParameters"} } }, "RecordFormatType":{ "type":"string", "enum":[ "JSON", "CSV" ] }, "RecordRowDelimiter":{"type":"string"}, "RecordRowPath":{"type":"string"}, "ReferenceDataSource":{ "type":"structure", "required":[ "TableName", "ReferenceSchema" ], "members":{ "TableName":{"shape":"InAppTableName"}, "S3ReferenceDataSource":{"shape":"S3ReferenceDataSource"}, "ReferenceSchema":{"shape":"SourceSchema"} } }, "ReferenceDataSourceDescription":{ "type":"structure", "required":[ "ReferenceId", "TableName", "S3ReferenceDataSourceDescription" ], "members":{ "ReferenceId":{"shape":"Id"}, "TableName":{"shape":"InAppTableName"}, "S3ReferenceDataSourceDescription":{"shape":"S3ReferenceDataSourceDescription"}, "ReferenceSchema":{"shape":"SourceSchema"} } }, "ReferenceDataSourceDescriptions":{ "type":"list", "member":{"shape":"ReferenceDataSourceDescription"} }, "ReferenceDataSourceUpdate":{ "type":"structure", "required":["ReferenceId"], "members":{ "ReferenceId":{"shape":"Id"}, "TableNameUpdate":{"shape":"InAppTableName"}, "S3ReferenceDataSourceUpdate":{"shape":"S3ReferenceDataSourceUpdate"}, "ReferenceSchemaUpdate":{"shape":"SourceSchema"} } }, "ReferenceDataSourceUpdates":{ "type":"list", "member":{"shape":"ReferenceDataSourceUpdate"} }, "ResourceARN":{ "type":"string", "max":2048, "min":1, "pattern":"arn:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:\\d{12}:[a-zA-Z_0-9+=,.@\\-_/:]+" }, "ResourceInUseException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ResourceNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ResourceProvisionedThroughputExceededException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "RoleARN":{ "type":"string", "max":2048, "min":1, "pattern":"arn:aws:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+" }, "S3ReferenceDataSource":{ "type":"structure", "required":[ "BucketARN", "FileKey", "ReferenceRoleARN" ], "members":{ "BucketARN":{"shape":"BucketARN"}, "FileKey":{"shape":"FileKey"}, "ReferenceRoleARN":{"shape":"RoleARN"} } }, "S3ReferenceDataSourceDescription":{ "type":"structure", "required":[ "BucketARN", "FileKey", "ReferenceRoleARN" ], "members":{ "BucketARN":{"shape":"BucketARN"}, "FileKey":{"shape":"FileKey"}, "ReferenceRoleARN":{"shape":"RoleARN"} } }, "S3ReferenceDataSourceUpdate":{ "type":"structure", "members":{ "BucketARNUpdate":{"shape":"BucketARN"}, "FileKeyUpdate":{"shape":"FileKey"}, "ReferenceRoleARNUpdate":{"shape":"RoleARN"} } }, "SourceSchema":{ "type":"structure", "required":[ "RecordFormat", "RecordColumns" ], "members":{ "RecordFormat":{"shape":"RecordFormat"}, "RecordEncoding":{"shape":"RecordEncoding"}, "RecordColumns":{"shape":"RecordColumns"} } }, "StartApplicationRequest":{ "type":"structure", "required":[ "ApplicationName", "InputConfigurations" ], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "InputConfigurations":{"shape":"InputConfigurations"} } }, "StartApplicationResponse":{ "type":"structure", "members":{ } }, "StopApplicationRequest":{ "type":"structure", "required":["ApplicationName"], "members":{ "ApplicationName":{"shape":"ApplicationName"} } }, "StopApplicationResponse":{ "type":"structure", "members":{ } }, "Timestamp":{"type":"timestamp"}, "UnableToDetectSchemaException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"}, "RawInputRecords":{"shape":"RawInputRecords"} }, "exception":true }, "UpdateApplicationRequest":{ "type":"structure", "required":[ "ApplicationName", "CurrentApplicationVersionId", "ApplicationUpdate" ], "members":{ "ApplicationName":{"shape":"ApplicationName"}, "CurrentApplicationVersionId":{"shape":"ApplicationVersionId"}, "ApplicationUpdate":{"shape":"ApplicationUpdate"} } }, "UpdateApplicationResponse":{ "type":"structure", "members":{ } } } } aws-sdk-go-1.4.22/models/apis/kinesisanalytics/2015-08-14/docs-2.json000066400000000000000000001600621300374646400244040ustar00rootroot00000000000000{ "version": "2.0", "service": null, "operations": { "AddApplicationInput": "

        Adds a streaming source to your Amazon Kinesis application. For conceptual information, see Configuring Application Input.

        You can add a streaming source either when you create an application or you can use this operation to add a streaming source after you create an application. For more information, see CreateApplication.

        Any configuration update, including adding a streaming source using this operation, results in a new version of the application. You can use the DescribeApplication operation to find the current application version.

        This operation requires permissions to perform the kinesisanalytics:AddApplicationInput action.

        ", "AddApplicationOutput": "

        Adds an external destination to your Amazon Kinesis Analytics application.

        If you want Amazon Kinesis Analytics to deliver data from an in-application stream within your application to an external destination (such as an Amazon Kinesis stream or a Firehose delivery stream), you add the relevant configuration to your application using this operation. You can configure one or more outputs for your application. Each output configuration maps an in-application stream and an external destination.

        You can use one of the output configurations to deliver data from your in-application error stream to an external destination so that you can analyze the errors. For conceptual information, see Understanding Application Output (Destination).

        Note that any configuration update, including adding a streaming source using this operation, results in a new version of the application. You can use the DescribeApplication operation to find the current application version.

        For the limits on the number of application inputs and outputs you can configure, see Limits.

        This operation requires permissions to perform the kinesisanalytics:AddApplicationOutput action.

        ", "AddApplicationReferenceDataSource": "

        Adds a reference data source to an existing application.

        Amazon Kinesis Analytics reads reference data (that is, an Amazon S3 object) and creates an in-application table within your application. In the request, you provide the source (S3 bucket name and object key name), name of the in-application table to create, and the necessary mapping information that describes how data in Amazon S3 object maps to columns in the resulting in-application table.

        For conceptual information, see Configuring Application Input. For the limits on data sources you can add to your application, see Limits.

        This operation requires permissions to perform the kinesisanalytics:AddApplicationOutput action.

        ", "CreateApplication": "

        Creates an Amazon Kinesis Analytics application. You can configure each application with one streaming source as input, application code to process the input, and up to five streaming destinations where you want Amazon Kinesis Analytics to write the output data from your application. For an overview, see How it Works.

        In the input configuration, you map the streaming source to an in-application stream, which you can think of as a constantly updating table. In the mapping, you must provide a schema for the in-application stream and map each data column in the in-application stream to a data element in the streaming source, with the option of renaming, casting and dropping columns as desired.

        Your application code is one or more SQL statements that read input data, transform it, and generate output. Your application code can create one or more SQL artifacts like SQL streams or pumps.

        In the output configuration, you can configure the application to write data from in-application streams created in your applications to up to five streaming destinations.

        To read data from your source stream or write data to destination streams, Amazon Kinesis Analytics needs your permissions. You grant these permissions by creating IAM roles. This operation requires permissions to perform the kinesisanalytics:CreateApplication action.

        For introductory exercises to create an Amazon Kinesis Analytics application, see Getting Started.

        ", "DeleteApplication": "

        Deletes the specified application. Amazon Kinesis Analytics halts application execution and deletes the application, including any application artifacts (such as in-application streams, reference table, and application code).

        This operation requires permissions to perform the kinesisanalytics:DeleteApplication action.

        ", "DeleteApplicationOutput": "

        Deletes output destination configuration from your application configuration. Amazon Kinesis Analytics will no longer write data from the corresponding in-application stream to the external output destination.

        This operation requires permissions to perform the kinesisanalytics:DeleteApplicationOutput action.

        ", "DeleteApplicationReferenceDataSource": "

        Deletes a reference data source configuration from the specified application configuration.

        If the application is running, Amazon Kinesis Analytics immediately removes the in-application table that you created using the AddApplicationReferenceDataSource operation.

        This operation requires permissions to perform the kinesisanalytics.DeleteApplicationReferenceDataSource action.

        ", "DescribeApplication": "

        Returns information about a specific Amazon Kinesis Analytics application.

        If you want to retrieve a list of all applications in your account, use the ListApplications operation.

        This operation requires permissions to perform the kinesisanalytics:DescribeApplication action. You can use DescribeApplication to get the current application versionId, which you need to call other operations such as Update.

        ", "DiscoverInputSchema": "

        Infers a schema by evaluating sample records on the specified streaming source (Amazon Kinesis stream or Amazon Kinesis Firehose delivery stream). In the response, the operation returns the inferred schema and also the sample records that the operation used to infer the schema.

        You can use the inferred schema when configuring a streaming source for your application. For conceptual information, see Configuring Application Input. Note that when you create an application using the Amazon Kinesis Analytics console, the console uses this operation to infer a schema and show it in the console user interface.

        This operation requires permissions to perform the kinesisanalytics:DiscoverInputSchema action.

        ", "ListApplications": "

        Returns a list of Amazon Kinesis Analytics applications in your account. For each application, the response includes the application name, Amazon Resource Name (ARN), and status. If the response returns the HasMoreApplications value as true, you can send another request by adding the ExclusiveStartApplicationName in the request body, and set the value of this to the last application name from the previous response.

        If you want detailed information about a specific application, use DescribeApplication.

        This operation requires permissions to perform the kinesisanalytics:ListApplications action.

        ", "StartApplication": "

        Starts the specified Amazon Kinesis Analytics application. After creating an application, you must exclusively call this operation to start your application.

        After the application starts, it begins consuming the input data, processes it, and writes the output to the configured destination.

        The application status must be READY for you to start an application. You can get the application status in the console or using the DescribeApplication operation.

        After you start the application, you can stop the application from processing the input by calling the StopApplication operation.

        This operation requires permissions to perform the kinesisanalytics:StartApplication action.

        ", "StopApplication": "

        Stops the application from processing input data. You can stop an application only if it is in the running state. You can use the DescribeApplication operation to find the application state. After the application is stopped, Amazon Kinesis Analytics stops reading data from the input, the application stops processing data, and there is no output written to the destination.

        This operation requires permissions to perform the kinesisanalytics:StopApplication action.

        ", "UpdateApplication": "

        Updates an existing Kinesis Analytics application. Using this API, you can update application code, input configuration, and output configuration.

        Note that Kinesis Analytics updates the CurrentApplicationVersionId each time you update your application.

        This opeation requires permission for the kinesisanalytics:UpdateApplication action.

        " }, "shapes": { "AddApplicationInputRequest": { "base": "

        ", "refs": { } }, "AddApplicationInputResponse": { "base": "

        ", "refs": { } }, "AddApplicationOutputRequest": { "base": "

        ", "refs": { } }, "AddApplicationOutputResponse": { "base": "

        ", "refs": { } }, "AddApplicationReferenceDataSourceRequest": { "base": "

        ", "refs": { } }, "AddApplicationReferenceDataSourceResponse": { "base": "

        ", "refs": { } }, "ApplicationCode": { "base": null, "refs": { "ApplicationDetail$ApplicationCode": "

        Returns the application code that you provided to perform data analysis on any of the in-application streams in your application.

        ", "ApplicationUpdate$ApplicationCodeUpdate": "

        Describes application code updates.

        ", "CreateApplicationRequest$ApplicationCode": "

        One or more SQL statements that read input data, transform it, and generate output. For example, you can write a SQL statement that reads input data and generates a running average of the number of advertisement clicks by vendor.

        You can also provide a series of SQL statements, where output of one statement can be used as the input for the next statement.

        Note that the application code must create the streams with names specified in the Outputs. For example, if your Outputs defines output streams named ExampleOutputStream1 and ExampleOutputStream2, then your application code must create these streams.

        " } }, "ApplicationDescription": { "base": null, "refs": { "ApplicationDetail$ApplicationDescription": "

        Description of the application.

        ", "CreateApplicationRequest$ApplicationDescription": "

        Summary description of the application.

        " } }, "ApplicationDetail": { "base": "

        Provides a description of the application, including the application Amazon Resource Name (ARN), status, latest version, and input and output configuration.

        ", "refs": { "DescribeApplicationResponse$ApplicationDetail": "

        Provides a description of the application, such as the application Amazon Resource Name (ARN), status, latest version, and input and output configuration details.

        " } }, "ApplicationName": { "base": null, "refs": { "AddApplicationInputRequest$ApplicationName": "

        Name of your existing Amazon Kinesis Analytics application to which you want to add the streaming source.

        ", "AddApplicationOutputRequest$ApplicationName": "

        Name of the application to which you want to add the output configuration.

        ", "AddApplicationReferenceDataSourceRequest$ApplicationName": "

        Name of an existing application.

        ", "ApplicationDetail$ApplicationName": "

        Name of the application.

        ", "ApplicationSummary$ApplicationName": "

        Name of the application.

        ", "CreateApplicationRequest$ApplicationName": "

        Name of your Amazon Kinesis Analytics application (for example, sample-app).

        ", "DeleteApplicationOutputRequest$ApplicationName": "

        Amazon Kinesis Analytics application name.

        ", "DeleteApplicationReferenceDataSourceRequest$ApplicationName": "

        Name of an existing application.

        ", "DeleteApplicationRequest$ApplicationName": "

        Name of the Amazon Kinesis Analytics application to delete.

        ", "DescribeApplicationRequest$ApplicationName": "

        Name of the application.

        ", "ListApplicationsRequest$ExclusiveStartApplicationName": "

        Name of the application to start the list with. When using pagination to retrieve the list, you don't need to specify this parameter in the first request. However, in subsequent requests, you add the last application name from the previous response to get the next page of applications.

        ", "StartApplicationRequest$ApplicationName": "

        Name of the application.

        ", "StopApplicationRequest$ApplicationName": "

        Name of the running application to stop.

        ", "UpdateApplicationRequest$ApplicationName": "

        Name of the Kinesis Analytics application to update.

        " } }, "ApplicationStatus": { "base": null, "refs": { "ApplicationDetail$ApplicationStatus": "

        Status of the application.

        ", "ApplicationSummary$ApplicationStatus": "

        Status of the application.

        " } }, "ApplicationSummaries": { "base": null, "refs": { "ListApplicationsResponse$ApplicationSummaries": "

        List of ApplicationSummary objects.

        " } }, "ApplicationSummary": { "base": "

        Provides application summary information, including the application Amazon Resource Name (ARN), name, and status.

        ", "refs": { "ApplicationSummaries$member": null, "CreateApplicationResponse$ApplicationSummary": "

        In response to your CreateApplication request, Amazon Kinesis Analytics returns a response with a summary of the application it created, including the application Amazon Resource Name (ARN), name, and status.

        " } }, "ApplicationUpdate": { "base": "

        Describes updates to apply to an existing Kinesis Analytics application.

        ", "refs": { "UpdateApplicationRequest$ApplicationUpdate": "

        Describes application updates.

        " } }, "ApplicationVersionId": { "base": null, "refs": { "AddApplicationInputRequest$CurrentApplicationVersionId": "

        Current version of your Amazon Kinesis Analytics application. You can use the DescribeApplication operation to find the current application version.

        ", "AddApplicationOutputRequest$CurrentApplicationVersionId": "

        Version of the application to which you want add the output configuration. You can use the DescribeApplication operation to get the current application version. If the version specified is not the current version, the ConcurrentModificationException is returned.

        ", "AddApplicationReferenceDataSourceRequest$CurrentApplicationVersionId": "

        Version of the application for which you are adding the reference data source. You can use the DescribeApplication operation to get the current application version. If the version specified is not the current version, the ConcurrentModificationException is returned.

        ", "ApplicationDetail$ApplicationVersionId": "

        Provides the current application version.

        ", "DeleteApplicationOutputRequest$CurrentApplicationVersionId": "

        Amazon Kinesis Analytics application version. You can use the DescribeApplication operation to get the current application version. If the version specified is not the current version, the ConcurrentModificationException is returned.

        ", "DeleteApplicationReferenceDataSourceRequest$CurrentApplicationVersionId": "

        Version of the application. You can use the DescribeApplication operation to get the current application version. If the version specified is not the current version, the ConcurrentModificationException is returned.

        ", "UpdateApplicationRequest$CurrentApplicationVersionId": "

        The current application version ID. You can use the DescribeApplication operation to get this value.

        " } }, "BooleanObject": { "base": null, "refs": { "ListApplicationsResponse$HasMoreApplications": "

        Returns true if there are more applications to retrieve.

        " } }, "BucketARN": { "base": null, "refs": { "S3ReferenceDataSource$BucketARN": "

        Amazon Resource Name (ARN) of the S3 bucket.

        ", "S3ReferenceDataSourceDescription$BucketARN": "

        Amazon Resource Name (ARN) of the S3 bucket.

        ", "S3ReferenceDataSourceUpdate$BucketARNUpdate": "

        Amazon Resource Name (ARN) of the S3 bucket.

        " } }, "CSVMappingParameters": { "base": "

        Provides additional mapping information when the record format uses delimiters, such as CSV. For example, the following sample records use CSV format, where the records use the '\\n' as the row delimiter and a comma (\",\") as the column delimiter:

        \"name1\", \"address1\"

        \"name2, \"address2\"

        ", "refs": { "MappingParameters$CSVMappingParameters": "

        Provides additional mapping information when the record format uses delimiters (for example, CSV).

        " } }, "CodeValidationException": { "base": "

        User-provided application code (query) is invalid. This can be a simple syntax error.

        ", "refs": { } }, "ConcurrentModificationException": { "base": "

        Exception thrown as a result of concurrent modification to an application. For example, two individuals attempting to edit the same application at the same time.

        ", "refs": { } }, "CreateApplicationRequest": { "base": "

        TBD

        ", "refs": { } }, "CreateApplicationResponse": { "base": "

        TBD

        ", "refs": { } }, "DeleteApplicationOutputRequest": { "base": "

        ", "refs": { } }, "DeleteApplicationOutputResponse": { "base": "

        ", "refs": { } }, "DeleteApplicationReferenceDataSourceRequest": { "base": null, "refs": { } }, "DeleteApplicationReferenceDataSourceResponse": { "base": null, "refs": { } }, "DeleteApplicationRequest": { "base": "

        ", "refs": { } }, "DeleteApplicationResponse": { "base": "

        ", "refs": { } }, "DescribeApplicationRequest": { "base": "

        ", "refs": { } }, "DescribeApplicationResponse": { "base": "

        ", "refs": { } }, "DestinationSchema": { "base": "

        Describes the data format when records are written to the destination. For more information, see Configuring Application Output.

        ", "refs": { "Output$DestinationSchema": null, "OutputDescription$DestinationSchema": "

        Data format used for writing data to the destination.

        ", "OutputUpdate$DestinationSchemaUpdate": null } }, "DiscoverInputSchemaRequest": { "base": "

        ", "refs": { } }, "DiscoverInputSchemaResponse": { "base": "

        ", "refs": { } }, "ErrorMessage": { "base": null, "refs": { "CodeValidationException$message": "

        Test

        ", "ConcurrentModificationException$message": "

        ", "InvalidApplicationConfigurationException$message": "

        test

        ", "InvalidArgumentException$message": "

        ", "LimitExceededException$message": "

        ", "ResourceInUseException$message": "

        ", "ResourceNotFoundException$message": "

        ", "ResourceProvisionedThroughputExceededException$message": null, "UnableToDetectSchemaException$message": null } }, "FileKey": { "base": null, "refs": { "S3ReferenceDataSource$FileKey": "

        Object key name containing reference data.

        ", "S3ReferenceDataSourceDescription$FileKey": "

        Amazon S3 object key name.

        ", "S3ReferenceDataSourceUpdate$FileKeyUpdate": "

        Object key name.

        " } }, "Id": { "base": null, "refs": { "DeleteApplicationOutputRequest$OutputId": "

        The ID of the configuration to delete. Each output configuration that is added to the application, either when the application is created or later using the AddApplicationOutput operation, has a unique ID. You need to provide the ID to uniquely identify the output configuration that you want to delete from the application configuration. You can use the DescribeApplication operation to get the specific OutputId.

        ", "DeleteApplicationReferenceDataSourceRequest$ReferenceId": "

        ID of the reference data source. When you add a reference data source to your application using the AddApplicationReferenceDataSource, Amazon Kinesis Analytics assigns an ID. You can use the DescribeApplication operation to get the reference ID.

        ", "InputConfiguration$Id": "

        Input source ID. You can get this ID by calling the DescribeApplication operation.

        ", "InputDescription$InputId": "

        Input ID associated with the application input. This is the ID that Amazon Kinesis Analytics assigns to each input configuration you add to your application.

        ", "InputUpdate$InputId": "

        Input ID of the application input to be updated.

        ", "OutputDescription$OutputId": "

        A unique identifier for the output configuration.

        ", "OutputUpdate$OutputId": "

        Identifies the specific output configuration that you want to update.

        ", "ReferenceDataSourceDescription$ReferenceId": "

        ID of the reference data source. This is the ID that Amazon Kinesis Analytics assigns when you add the reference data source to your application using the AddApplicationReferenceDataSource operation.

        ", "ReferenceDataSourceUpdate$ReferenceId": "

        ID of the reference data source being updated. You can use the DescribeApplication operation to get this value.

        " } }, "InAppStreamName": { "base": null, "refs": { "InAppStreamNames$member": null, "Input$NamePrefix": "

        Name prefix to use when creating in-application stream. Suppose you specify a prefix \"MyInApplicationStream\". Kinesis Analytics will then create one or more (as per the InputParallelism count you specified) in-application streams with names \"MyInApplicationStream_001\", \"MyInApplicationStream_002\" and so on.

        ", "InputDescription$NamePrefix": "

        In-application name prefix.

        ", "InputUpdate$NamePrefixUpdate": "

        Name prefix for in-application stream(s) that Kinesis Analytics creates for the specific streaming source.

        ", "Output$Name": "

        Name of the in-application stream.

        ", "OutputDescription$Name": "

        Name of the in-application stream configured as output.

        ", "OutputUpdate$NameUpdate": "

        If you want to specify a different in-application stream for this output configuration, use this field to specify the new in-application stream name.

        " } }, "InAppStreamNames": { "base": null, "refs": { "InputDescription$InAppStreamNames": "

        Returns the in-application stream names that are mapped to the stream source.

        " } }, "InAppTableName": { "base": null, "refs": { "ReferenceDataSource$TableName": "

        Name of the in-application table to create.

        ", "ReferenceDataSourceDescription$TableName": "

        The in-application table name created by the specific reference data source configuration.

        ", "ReferenceDataSourceUpdate$TableNameUpdate": "

        In-application table name that is created by this update.

        " } }, "Input": { "base": "

        When you configure the application input, you specify the streaming source, the in-application stream name that is created, and the mapping between the two. For more information, see Configuring Application Input.

        ", "refs": { "AddApplicationInputRequest$Input": null, "Inputs$member": null } }, "InputConfiguration": { "base": "

        When you start your application, you provide this configuration, which identifies the input source and the point in the input source at which you want the application to start processing records.

        ", "refs": { "InputConfigurations$member": null } }, "InputConfigurations": { "base": null, "refs": { "StartApplicationRequest$InputConfigurations": "

        Identifies the specific input, by ID, that the application starts consuming. Amazon Kinesis Analytics starts reading the streaming source associated with the input. You can also specify where in the streaming source you want Amazon Kinesis Analytics to start reading.

        " } }, "InputDescription": { "base": "

        Describes the application input configuration. For more information, see Configuring Application Input.

        ", "refs": { "InputDescriptions$member": null } }, "InputDescriptions": { "base": null, "refs": { "ApplicationDetail$InputDescriptions": "

        Describes the application input configuration. For more information, see Configuring Application Input.

        " } }, "InputParallelism": { "base": "

        Describes the number of in-application streams to create for a given streaming source. For information about parallellism, see Configuring Application Input.

        ", "refs": { "Input$InputParallelism": "

        Describes the number of in-application streams to create.

        Data from your source will be routed to these in-application input streams.

        (see Configuring Application Input.

        ", "InputDescription$InputParallelism": "

        Describes the configured parallelism (number of in-application streams mapped to the streaming source).

        " } }, "InputParallelismCount": { "base": null, "refs": { "InputParallelism$Count": "

        Number of in-application streams to create. For more information, see Limits.

        ", "InputParallelismUpdate$CountUpdate": "

        Number of in-application streams to create for the specified streaming source.

        " } }, "InputParallelismUpdate": { "base": "

        Provides updates to the parallelism count.

        ", "refs": { "InputUpdate$InputParallelismUpdate": "

        Describes the parallelism updates (the number in-application streams Kinesis Analytics creates for the specific streaming source).

        " } }, "InputSchemaUpdate": { "base": "

        Describes updates for the application's input schema.

        ", "refs": { "InputUpdate$InputSchemaUpdate": "

        Describes the data format on the streaming source, and how record elements on the streaming source map to columns of the in-application stream that is created.

        " } }, "InputStartingPosition": { "base": null, "refs": { "InputStartingPositionConfiguration$InputStartingPosition": "

        The starting position on the stream.

        • LATEST - Start reading just after the most recent record in the stream.

        • TRIM_HORIZON - Start reading at the last untrimmed record in the stream, which is the oldest record available in the stream. This option is not available for an Amazon Kinesis Firehose delivery stream.

        • LAST_STOPPED_POINT - Resume reading from where the application last stopped reading.

        " } }, "InputStartingPositionConfiguration": { "base": "

        Describes the point at which the application reads from the streaming source.

        ", "refs": { "DiscoverInputSchemaRequest$InputStartingPositionConfiguration": "

        Point at which you want Amazon Kinesis Analytics to start reading records from the specified streaming source discovery purposes.

        ", "InputConfiguration$InputStartingPositionConfiguration": "

        Point at which you want the application to start processing records from the streaming source.

        ", "InputDescription$InputStartingPositionConfiguration": "

        Point at which the application is configured to read from the input stream.

        " } }, "InputUpdate": { "base": "

        Describes updates to a specific input configuration (identified by the InputId of an application).

        ", "refs": { "InputUpdates$member": null } }, "InputUpdates": { "base": null, "refs": { "ApplicationUpdate$InputUpdates": "

        Describes application input configuration updates.

        " } }, "Inputs": { "base": null, "refs": { "CreateApplicationRequest$Inputs": "

        Use this parameter to configure the application input.

        You can configure your application to receive input from a single streaming source. In this configuration, you map this streaming source to an in-application stream that is created. Your application code can then query the in-application stream like a table (you can think of it as a constantly updating table).

        For the streaming source, you provide its Amazon Resource Name (ARN) and format of data on the stream (for example, JSON, CSV, etc). You also must provide an IAM role that Amazon Kinesis Analytics can assume to read this stream on your behalf.

        To create the in-application stream, you need to specify a schema to transform your data into a schematized version used in SQL. In the schema, you provide the necessary mapping of the data elements in the streaming source to record columns in the in-app stream.

        " } }, "InvalidApplicationConfigurationException": { "base": "

        User-provided application configuration is not valid.

        ", "refs": { } }, "InvalidArgumentException": { "base": "

        Specified input parameter value is invalid.

        ", "refs": { } }, "JSONMappingParameters": { "base": "

        Provides additional mapping information when JSON is the record format on the streaming source.

        ", "refs": { "MappingParameters$JSONMappingParameters": "

        Provides additional mapping information when JSON is the record format on the streaming source.

        " } }, "KinesisFirehoseInput": { "base": "

        Identifies an Amazon Kinesis Firehose delivery stream as the streaming source. You provide the Firehose delivery stream's Amazon Resource Name (ARN) and an IAM role ARN that enables Amazon Kinesis Analytics to access the stream on your behalf.

        ", "refs": { "Input$KinesisFirehoseInput": "

        If the streaming source is an Amazon Kinesis Firehose delivery stream, identifies the Firehose delivery stream's ARN and an IAM role that enables Amazon Kinesis Analytics to access the stream on your behalf.

        " } }, "KinesisFirehoseInputDescription": { "base": "

        Describes the Amazon Kinesis Firehose delivery stream that is configured as the streaming source in the application input configuration.

        ", "refs": { "InputDescription$KinesisFirehoseInputDescription": "

        If an Amazon Kinesis Firehose delivery stream is configured as a streaming source, provides the Firehose delivery stream's Amazon Resource Name (ARN) and an IAM role that enables Amazon Kinesis Analytics to access the stream on your behalf.

        " } }, "KinesisFirehoseInputUpdate": { "base": "

        When updating application input configuration, provides information about an Amazon Kinesis Firehose delivery stream as the streaming source.

        ", "refs": { "InputUpdate$KinesisFirehoseInputUpdate": "

        If an Amazon Kinesis Firehose delivery stream is the streaming source to be updated, provides an updated stream Amazon Resource Name (ARN) and IAM role ARN.

        " } }, "KinesisFirehoseOutput": { "base": "

        When configuring application output, identifies an Amazon Kinesis Firehose delivery stream as the destination. You provide the stream Amazon Resource Name (ARN) and an IAM role that enables Amazon Kinesis Analytics to write to the stream on your behalf.

        ", "refs": { "Output$KinesisFirehoseOutput": "

        Identifies an Amazon Kinesis Firehose delivery stream as the destination.

        " } }, "KinesisFirehoseOutputDescription": { "base": "

        For an application output, describes the Amazon Kinesis Firehose delivery stream configured as its destination.

        ", "refs": { "OutputDescription$KinesisFirehoseOutputDescription": "

        Describes the Amazon Kinesis Firehose delivery stream configured as the destination where output is written.

        " } }, "KinesisFirehoseOutputUpdate": { "base": "

        When updating an output configuration using the UpdateApplication operation, provides information about an Amazon Kinesis Firehose delivery stream configured as the destination.

        ", "refs": { "OutputUpdate$KinesisFirehoseOutputUpdate": "

        Describes a Amazon Kinesis Firehose delivery stream as the destination for the output.

        " } }, "KinesisStreamsInput": { "base": "

        Identifies an Amazon Kinesis stream as the streaming source. You provide the stream's ARN and an IAM role ARN that enables Amazon Kinesis Analytics to access the stream on your behalf.

        ", "refs": { "Input$KinesisStreamsInput": "

        If the streaming source is an Amazon Kinesis stream, identifies the stream's Amazon Resource Name (ARN) and an IAM role that enables Amazon Kinesis Analytics to access the stream on your behalf.

        " } }, "KinesisStreamsInputDescription": { "base": "

        Describes the Amazon Kinesis stream that is configured as the streaming source in the application input configuration.

        ", "refs": { "InputDescription$KinesisStreamsInputDescription": "

        If an Amazon Kinesis stream is configured as streaming source, provides Amazon Kinesis stream's ARN and an IAM role that enables Amazon Kinesis Analytics to access the stream on your behalf.

        " } }, "KinesisStreamsInputUpdate": { "base": "

        When updating application input configuration, provides information about an Amazon Kinesis stream as the streaming source.

        ", "refs": { "InputUpdate$KinesisStreamsInputUpdate": "

        If a Amazon Kinesis stream is the streaming source to be updated, provides an updated stream ARN and IAM role ARN.

        " } }, "KinesisStreamsOutput": { "base": "

        When configuring application output, identifies a Amazon Kinesis stream as the destination. You provide the stream Amazon Resource Name (ARN) and also an IAM role ARN that Amazon Kinesis Analytics can use to write to the stream on your behalf.

        ", "refs": { "Output$KinesisStreamsOutput": "

        Identifies an Amazon Kinesis stream as the destination.

        " } }, "KinesisStreamsOutputDescription": { "base": "

        For an application output, describes the Amazon Kinesis stream configured as its destination.

        ", "refs": { "OutputDescription$KinesisStreamsOutputDescription": "

        Describes Amazon Kinesis stream configured as the destination where output is written.

        " } }, "KinesisStreamsOutputUpdate": { "base": "

        When updating an output configuration using the UpdateApplication operation, provides information about an Amazon Kinesis stream configured as the destination.

        ", "refs": { "OutputUpdate$KinesisStreamsOutputUpdate": "

        Describes an Amazon Kinesis stream as the destination for the output.

        " } }, "LimitExceededException": { "base": "

        Exceeded the number of applications allowed.

        ", "refs": { } }, "ListApplicationsInputLimit": { "base": null, "refs": { "ListApplicationsRequest$Limit": "

        Maximum number of applications to list.

        " } }, "ListApplicationsRequest": { "base": "

        ", "refs": { } }, "ListApplicationsResponse": { "base": "

        ", "refs": { } }, "MappingParameters": { "base": "

        When configuring application input at the time of creating or updating an application, provides additional mapping information specific to the record format (such as JSON, CSV, or record fields delimited by some delimiter) on the streaming source.

        ", "refs": { "RecordFormat$MappingParameters": null } }, "Output": { "base": "

        Describes application output configuration in which you identify an in-application stream and a destination where you want the in-application stream data to be written. The destination can be an Amazon Kinesis stream or an Amazon Kinesis Firehose delivery stream.

        You can configure your application to write output to up to five destinations.

        ", "refs": { "AddApplicationOutputRequest$Output": "

        An array of objects, each describing one output configuration. In the output configuration, you specify the name of an in-application stream, a destination (that is, an Amazon Kinesis stream or an Amazon Kinesis Firehose delivery stream), and record the formation to use when writing to the destination.

        ", "Outputs$member": null } }, "OutputDescription": { "base": "

        Describes the application output configuration, which includes the in-application stream name and the destination where the stream data is written. The destination can be an Amazon Kinesis stream or an Amazon Kinesis Firehose delivery stream.

        ", "refs": { "OutputDescriptions$member": null } }, "OutputDescriptions": { "base": null, "refs": { "ApplicationDetail$OutputDescriptions": "

        Describes the application output configuration. For more information, see Configuring Application Output.

        " } }, "OutputUpdate": { "base": "

        Describes updates to the output configuration identified by the OutputId.

        ", "refs": { "OutputUpdates$member": null } }, "OutputUpdates": { "base": null, "refs": { "ApplicationUpdate$OutputUpdates": "

        Describes application output configuration updates.

        " } }, "Outputs": { "base": null, "refs": { "CreateApplicationRequest$Outputs": "

        You can configure application output to write data from any of the in-application streams to up to five destinations.

        These destinations can be Amazon Kinesis streams, Amazon Kinesis Firehose delivery streams, or both.

        In the configuration, you specify the in-application stream name, the destination stream Amazon Resource Name (ARN), and the format to use when writing data. You must also provide an IAM role that Amazon Kinesis Analytics can assume to write to the destination stream on your behalf.

        In the output configuration, you also provide the output stream Amazon Resource Name (ARN) and the format of data in the stream (for example, JSON, CSV). You also must provide an IAM role that Amazon Kinesis Analytics can assume to write to this stream on your behalf.

        " } }, "ParsedInputRecord": { "base": null, "refs": { "ParsedInputRecords$member": null } }, "ParsedInputRecordField": { "base": null, "refs": { "ParsedInputRecord$member": null } }, "ParsedInputRecords": { "base": null, "refs": { "DiscoverInputSchemaResponse$ParsedInputRecords": "

        An array of elements, where each element corresponds to a row in a stream record (a stream record can have more than one row).

        " } }, "RawInputRecord": { "base": null, "refs": { "RawInputRecords$member": null } }, "RawInputRecords": { "base": null, "refs": { "DiscoverInputSchemaResponse$RawInputRecords": "

        Raw stream data that was sampled to infer the schema.

        ", "UnableToDetectSchemaException$RawInputRecords": null } }, "RecordColumn": { "base": "

        Describes the mapping of each data element in the streaming source to the corresponding column in the in-application stream.

        Also used to describe the format of the reference data source.

        ", "refs": { "RecordColumns$member": null } }, "RecordColumnDelimiter": { "base": null, "refs": { "CSVMappingParameters$RecordColumnDelimiter": "

        Column delimiter. For example, in a CSV format, a comma (\",\") is the typical column delimiter.

        " } }, "RecordColumnMapping": { "base": null, "refs": { "RecordColumn$Mapping": "

        Reference to the data element in the streaming input of the reference data source.

        " } }, "RecordColumnName": { "base": null, "refs": { "RecordColumn$Name": "

        Name of the column created in the in-application input stream or reference table.

        " } }, "RecordColumnSqlType": { "base": null, "refs": { "RecordColumn$SqlType": "

        Type of column created in the in-application input stream or reference table.

        " } }, "RecordColumns": { "base": null, "refs": { "InputSchemaUpdate$RecordColumnUpdates": "

        A list of RecordColumn objects. Each object describes the mapping of the streaming source element to the corresponding column in the in-application stream.

        ", "SourceSchema$RecordColumns": "

        A list of RecordColumn objects.

        " } }, "RecordEncoding": { "base": null, "refs": { "InputSchemaUpdate$RecordEncodingUpdate": "

        Specifies the encoding of the records in the streaming source. For example, UTF-8.

        ", "SourceSchema$RecordEncoding": "

        Specifies the encoding of the records in the streaming source. For example, UTF-8.

        " } }, "RecordFormat": { "base": "

        Describes the record format and relevant mapping information that should be applied to schematize the records on the stream.

        ", "refs": { "InputSchemaUpdate$RecordFormatUpdate": "

        Specifies the format of the records on the streaming source.

        ", "SourceSchema$RecordFormat": "

        Specifies the format of the records on the streaming source.

        " } }, "RecordFormatType": { "base": null, "refs": { "DestinationSchema$RecordFormatType": "

        Specifies the format of the records on the output stream.

        ", "RecordFormat$RecordFormatType": "

        The type of record format.

        " } }, "RecordRowDelimiter": { "base": null, "refs": { "CSVMappingParameters$RecordRowDelimiter": "

        Row delimiter. For example, in a CSV format, '\\n' is the typical row delimiter.

        " } }, "RecordRowPath": { "base": null, "refs": { "JSONMappingParameters$RecordRowPath": "

        Path to the top-level parent that contains the records.

        For example, consider the following JSON record:

        In the RecordRowPath, \"$\" refers to the root and path \"$.vehicle.Model\" refers to the specific \"Model\" key in the JSON.

        " } }, "ReferenceDataSource": { "base": "

        Describes the reference data source by providing the source information (S3 bucket name and object key name), the resulting in-application table name that is created, and the necessary schema to map the data elements in the Amazon S3 object to the in-application table.

        ", "refs": { "AddApplicationReferenceDataSourceRequest$ReferenceDataSource": "

        The reference data source can be an object in your Amazon S3 bucket. Amazon Kinesis Analytics reads the object and copies the data into the in-application table that is created. You provide an S3 bucket, object key name, and the resulting in-application table that is created. You must also provide an IAM role with the necessary permissions that Amazon Kinesis Analytics can assume to read the object from your S3 bucket on your behalf.

        " } }, "ReferenceDataSourceDescription": { "base": "

        Describes the reference data source configured for an application.

        ", "refs": { "ReferenceDataSourceDescriptions$member": null } }, "ReferenceDataSourceDescriptions": { "base": null, "refs": { "ApplicationDetail$ReferenceDataSourceDescriptions": "

        Describes reference data sources configured for the application. For more information, see Configuring Application Input.

        " } }, "ReferenceDataSourceUpdate": { "base": "

        When you update a reference data source configuration for an application, this object provides all the updated values (such as the source bucket name and object key name), the in-application table name that is created, and updated mapping information that maps the data in the Amazon S3 object to the in-application reference table that is created.

        ", "refs": { "ReferenceDataSourceUpdates$member": null } }, "ReferenceDataSourceUpdates": { "base": null, "refs": { "ApplicationUpdate$ReferenceDataSourceUpdates": "

        Describes application reference data source updates.

        " } }, "ResourceARN": { "base": null, "refs": { "ApplicationDetail$ApplicationARN": "

        ARN of the application.

        ", "ApplicationSummary$ApplicationARN": "

        ARN of the application.

        ", "DiscoverInputSchemaRequest$ResourceARN": "

        Amazon Resource Name (ARN) of the streaming source.

        ", "KinesisFirehoseInput$ResourceARN": "

        ARN of the input Firehose delivery stream.

        ", "KinesisFirehoseInputDescription$ResourceARN": "

        Amazon Resource Name (ARN) of the Amazon Kinesis Firehose delivery stream.

        ", "KinesisFirehoseInputUpdate$ResourceARNUpdate": "

        ARN of the input Amazon Kinesis Firehose delivery stream to read.

        ", "KinesisFirehoseOutput$ResourceARN": "

        ARN of the destination Amazon Kinesis Firehose delivery stream to write to.

        ", "KinesisFirehoseOutputDescription$ResourceARN": "

        Amazon Resource Name (ARN) of the Amazon Kinesis Firehose delivery stream.

        ", "KinesisFirehoseOutputUpdate$ResourceARNUpdate": "

        Amazon Resource Name (ARN) of the Amazon Kinesis Firehose delivery stream to write to.

        ", "KinesisStreamsInput$ResourceARN": "

        ARN of the input Amazon Kinesis stream to read.

        ", "KinesisStreamsInputDescription$ResourceARN": "

        Amazon Resource Name (ARN) of the Amazon Kinesis stream.

        ", "KinesisStreamsInputUpdate$ResourceARNUpdate": "

        Amazon Resource Name (ARN) of the input Amazon Kinesis stream to read.

        ", "KinesisStreamsOutput$ResourceARN": "

        ARN of the destination Amazon Kinesis stream to write to.

        ", "KinesisStreamsOutputDescription$ResourceARN": "

        Amazon Resource Name (ARN) of the Amazon Kinesis stream.

        ", "KinesisStreamsOutputUpdate$ResourceARNUpdate": "

        Amazon Resource Name (ARN) of the Amazon Kinesis stream where you want to write the output.

        " } }, "ResourceInUseException": { "base": "

        Application is not available for this operation.

        ", "refs": { } }, "ResourceNotFoundException": { "base": "

        Specified application can't be found.

        ", "refs": { } }, "ResourceProvisionedThroughputExceededException": { "base": "

        Discovery failed to get a record from the streaming source because of the Kinesis Streams ProvisionedThroughputExceededException.

        ", "refs": { } }, "RoleARN": { "base": null, "refs": { "DiscoverInputSchemaRequest$RoleARN": "

        ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream on your behalf.

        ", "KinesisFirehoseInput$RoleARN": "

        ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream on your behalf. You need to make sure the role has necessary permissions to access the stream.

        ", "KinesisFirehoseInputDescription$RoleARN": "

        ARN of the IAM role that Amazon Kinesis Analytics assumes to access the stream.

        ", "KinesisFirehoseInputUpdate$RoleARNUpdate": "

        Amazon Resource Name (ARN) of the IAM role that Amazon Kinesis Analytics can assume to access the stream on your behalf. You need to grant necessary permissions to this role.

        ", "KinesisFirehoseOutput$RoleARN": "

        ARN of the IAM role that Amazon Kinesis Analytics can assume to write to the destination stream on your behalf. You need to grant the necessary permissions to this role.

        ", "KinesisFirehoseOutputDescription$RoleARN": "

        ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream.

        ", "KinesisFirehoseOutputUpdate$RoleARNUpdate": "

        ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream on your behalf. You need to grant necessary permissions to this role.

        ", "KinesisStreamsInput$RoleARN": "

        ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream on your behalf. You need to grant the necessary permissions to this role.

        ", "KinesisStreamsInputDescription$RoleARN": "

        ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream.

        ", "KinesisStreamsInputUpdate$RoleARNUpdate": "

        ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream on your behalf. You need to grant the necessary permissions to this role.

        ", "KinesisStreamsOutput$RoleARN": "

        ARN of the IAM role that Amazon Kinesis Analytics can assume to write to the destination stream on your behalf. You need to grant the necessary permissions to this role.

        ", "KinesisStreamsOutputDescription$RoleARN": "

        ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream.

        ", "KinesisStreamsOutputUpdate$RoleARNUpdate": "

        ARN of the IAM role that Amazon Kinesis Analytics can assume to access the stream on your behalf. You need to grant the necessary permissions to this role.

        ", "S3ReferenceDataSource$ReferenceRoleARN": "

        ARN of the IAM role that the service can assume to read data on your behalf. This role must have permission for the s3:GetObject action on the object and trust policy that allows Amazon Kinesis Analytics service principal to assume this role.

        ", "S3ReferenceDataSourceDescription$ReferenceRoleARN": "

        ARN of the IAM role that Amazon Kinesis Analytics can assume to read the Amazon S3 object on your behalf to populate the in-application reference table.

        ", "S3ReferenceDataSourceUpdate$ReferenceRoleARNUpdate": "

        ARN of the IAM role that Amazon Kinesis Analytics can assume to read the Amazon S3 object and populate the in-application.

        " } }, "S3ReferenceDataSource": { "base": "

        Identifies the S3 bucket and object that contains the reference data. Also identifies the IAM role Amazon Kinesis Analytics can assume to read this object on your behalf.

        An Amazon Kinesis Analytics application loads reference data only once. If the data changes, you call the UpdateApplication operation to trigger reloading of data into your application.

        ", "refs": { "ReferenceDataSource$S3ReferenceDataSource": null } }, "S3ReferenceDataSourceDescription": { "base": "

        Provides the bucket name and object key name that stores the reference data.

        ", "refs": { "ReferenceDataSourceDescription$S3ReferenceDataSourceDescription": "

        Provides the S3 bucket name, the object key name that contains the reference data. It also provides the Amazon Resource Name (ARN) of the IAM role that Amazon Kinesis Analytics can assume to read the Amazon S3 object and populate the in-application reference table.

        " } }, "S3ReferenceDataSourceUpdate": { "base": "

        Describes the S3 bucket name, object key name, and IAM role that Amazon Kinesis Analytics can assume to read the Amazon S3 object on your behalf and populate the in-application reference table.

        ", "refs": { "ReferenceDataSourceUpdate$S3ReferenceDataSourceUpdate": "

        Describes the S3 bucket name, object key name, and IAM role that Amazon Kinesis Analytics can assume to read the Amazon S3 object on your behalf and populate the in-application reference table.

        " } }, "SourceSchema": { "base": "

        Describes the format of the data in the streaming source, and how each data element maps to corresponding columns created in the in-application stream.

        ", "refs": { "DiscoverInputSchemaResponse$InputSchema": "

        Schema inferred from the streaming source. It identifies the format of the data in the streaming source and how each data element maps to corresponding columns in the in-application stream that you can create.

        ", "Input$InputSchema": "

        Describes the format of the data in the streaming source, and how each data element maps to corresponding columns in the in-application stream that is being created.

        Also used to describe the format of the reference data source.

        ", "InputDescription$InputSchema": null, "ReferenceDataSource$ReferenceSchema": null, "ReferenceDataSourceDescription$ReferenceSchema": null, "ReferenceDataSourceUpdate$ReferenceSchemaUpdate": null } }, "StartApplicationRequest": { "base": "

        ", "refs": { } }, "StartApplicationResponse": { "base": "

        ", "refs": { } }, "StopApplicationRequest": { "base": "

        ", "refs": { } }, "StopApplicationResponse": { "base": "

        ", "refs": { } }, "Timestamp": { "base": null, "refs": { "ApplicationDetail$CreateTimestamp": "

        Timestamp when the application version was created.

        ", "ApplicationDetail$LastUpdateTimestamp": "

        Timestamp when the application was last updated.

        ", "DeleteApplicationRequest$CreateTimestamp": "

        You can use the DescribeApplication operation to get this value.

        " } }, "UnableToDetectSchemaException": { "base": "

        Data format is not valid, Kinesis Analytics is not able to detect schema for the given streaming source.

        ", "refs": { } }, "UpdateApplicationRequest": { "base": null, "refs": { } }, "UpdateApplicationResponse": { "base": null, "refs": { } } } } aws-sdk-go-1.4.22/models/apis/kinesisanalytics/2015-08-14/examples-1.json000066400000000000000000000000541300374646400252630ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/kms/000077500000000000000000000000001300374646400165745ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/kms/2014-11-01/000077500000000000000000000000001300374646400176175ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/kms/2014-11-01/api-2.json000066400000000000000000001076151300374646400214340ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2014-11-01", "endpointPrefix":"kms", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"KMS", "serviceFullName":"AWS Key Management Service", "signatureVersion":"v4", "targetPrefix":"TrentService" }, "operations":{ "CancelKeyDeletion":{ "name":"CancelKeyDeletion", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelKeyDeletionRequest"}, "output":{"shape":"CancelKeyDeletionResponse"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"InvalidArnException"}, {"shape":"DependencyTimeoutException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"} ] }, "CreateAlias":{ "name":"CreateAlias", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateAliasRequest"}, "errors":[ {"shape":"DependencyTimeoutException"}, {"shape":"AlreadyExistsException"}, {"shape":"NotFoundException"}, {"shape":"InvalidAliasNameException"}, {"shape":"KMSInternalException"}, {"shape":"LimitExceededException"}, {"shape":"KMSInvalidStateException"} ] }, "CreateGrant":{ "name":"CreateGrant", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateGrantRequest"}, "output":{"shape":"CreateGrantResponse"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"DisabledException"}, {"shape":"DependencyTimeoutException"}, {"shape":"InvalidArnException"}, {"shape":"KMSInternalException"}, {"shape":"InvalidGrantTokenException"}, {"shape":"LimitExceededException"}, {"shape":"KMSInvalidStateException"} ] }, "CreateKey":{ "name":"CreateKey", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateKeyRequest"}, "output":{"shape":"CreateKeyResponse"}, "errors":[ {"shape":"MalformedPolicyDocumentException"}, {"shape":"DependencyTimeoutException"}, {"shape":"InvalidArnException"}, {"shape":"UnsupportedOperationException"}, {"shape":"KMSInternalException"}, {"shape":"LimitExceededException"} ] }, "Decrypt":{ "name":"Decrypt", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DecryptRequest"}, "output":{"shape":"DecryptResponse"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"DisabledException"}, {"shape":"InvalidCiphertextException"}, {"shape":"KeyUnavailableException"}, {"shape":"DependencyTimeoutException"}, {"shape":"InvalidGrantTokenException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"} ] }, "DeleteAlias":{ "name":"DeleteAlias", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteAliasRequest"}, "errors":[ {"shape":"DependencyTimeoutException"}, {"shape":"NotFoundException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"} ] }, "DeleteImportedKeyMaterial":{ "name":"DeleteImportedKeyMaterial", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteImportedKeyMaterialRequest"}, "errors":[ {"shape":"InvalidArnException"}, {"shape":"UnsupportedOperationException"}, {"shape":"DependencyTimeoutException"}, {"shape":"NotFoundException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"} ] }, "DescribeKey":{ "name":"DescribeKey", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeKeyRequest"}, "output":{"shape":"DescribeKeyResponse"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"InvalidArnException"}, {"shape":"DependencyTimeoutException"}, {"shape":"KMSInternalException"} ] }, "DisableKey":{ "name":"DisableKey", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableKeyRequest"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"InvalidArnException"}, {"shape":"DependencyTimeoutException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"} ] }, "DisableKeyRotation":{ "name":"DisableKeyRotation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableKeyRotationRequest"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"DisabledException"}, {"shape":"InvalidArnException"}, {"shape":"DependencyTimeoutException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"}, {"shape":"UnsupportedOperationException"} ] }, "EnableKey":{ "name":"EnableKey", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableKeyRequest"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"InvalidArnException"}, {"shape":"DependencyTimeoutException"}, {"shape":"KMSInternalException"}, {"shape":"LimitExceededException"}, {"shape":"KMSInvalidStateException"} ] }, "EnableKeyRotation":{ "name":"EnableKeyRotation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableKeyRotationRequest"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"DisabledException"}, {"shape":"InvalidArnException"}, {"shape":"DependencyTimeoutException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"}, {"shape":"UnsupportedOperationException"} ] }, "Encrypt":{ "name":"Encrypt", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EncryptRequest"}, "output":{"shape":"EncryptResponse"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"DisabledException"}, {"shape":"KeyUnavailableException"}, {"shape":"DependencyTimeoutException"}, {"shape":"InvalidKeyUsageException"}, {"shape":"InvalidGrantTokenException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"} ] }, "GenerateDataKey":{ "name":"GenerateDataKey", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GenerateDataKeyRequest"}, "output":{"shape":"GenerateDataKeyResponse"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"DisabledException"}, {"shape":"KeyUnavailableException"}, {"shape":"DependencyTimeoutException"}, {"shape":"InvalidKeyUsageException"}, {"shape":"InvalidGrantTokenException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"} ] }, "GenerateDataKeyWithoutPlaintext":{ "name":"GenerateDataKeyWithoutPlaintext", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GenerateDataKeyWithoutPlaintextRequest"}, "output":{"shape":"GenerateDataKeyWithoutPlaintextResponse"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"DisabledException"}, {"shape":"KeyUnavailableException"}, {"shape":"DependencyTimeoutException"}, {"shape":"InvalidKeyUsageException"}, {"shape":"InvalidGrantTokenException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"} ] }, "GenerateRandom":{ "name":"GenerateRandom", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GenerateRandomRequest"}, "output":{"shape":"GenerateRandomResponse"}, "errors":[ {"shape":"DependencyTimeoutException"}, {"shape":"KMSInternalException"} ] }, "GetKeyPolicy":{ "name":"GetKeyPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetKeyPolicyRequest"}, "output":{"shape":"GetKeyPolicyResponse"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"InvalidArnException"}, {"shape":"DependencyTimeoutException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"} ] }, "GetKeyRotationStatus":{ "name":"GetKeyRotationStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetKeyRotationStatusRequest"}, "output":{"shape":"GetKeyRotationStatusResponse"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"InvalidArnException"}, {"shape":"DependencyTimeoutException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"}, {"shape":"UnsupportedOperationException"} ] }, "GetParametersForImport":{ "name":"GetParametersForImport", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetParametersForImportRequest"}, "output":{"shape":"GetParametersForImportResponse"}, "errors":[ {"shape":"InvalidArnException"}, {"shape":"UnsupportedOperationException"}, {"shape":"DependencyTimeoutException"}, {"shape":"NotFoundException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"} ] }, "ImportKeyMaterial":{ "name":"ImportKeyMaterial", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportKeyMaterialRequest"}, "output":{"shape":"ImportKeyMaterialResponse"}, "errors":[ {"shape":"InvalidArnException"}, {"shape":"UnsupportedOperationException"}, {"shape":"DependencyTimeoutException"}, {"shape":"NotFoundException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"}, {"shape":"InvalidCiphertextException"}, {"shape":"IncorrectKeyMaterialException"}, {"shape":"ExpiredImportTokenException"}, {"shape":"InvalidImportTokenException"} ] }, "ListAliases":{ "name":"ListAliases", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListAliasesRequest"}, "output":{"shape":"ListAliasesResponse"}, "errors":[ {"shape":"DependencyTimeoutException"}, {"shape":"InvalidMarkerException"}, {"shape":"KMSInternalException"} ] }, "ListGrants":{ "name":"ListGrants", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListGrantsRequest"}, "output":{"shape":"ListGrantsResponse"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"DependencyTimeoutException"}, {"shape":"InvalidMarkerException"}, {"shape":"InvalidArnException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"} ] }, "ListKeyPolicies":{ "name":"ListKeyPolicies", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListKeyPoliciesRequest"}, "output":{"shape":"ListKeyPoliciesResponse"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"InvalidArnException"}, {"shape":"DependencyTimeoutException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"} ] }, "ListKeys":{ "name":"ListKeys", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListKeysRequest"}, "output":{"shape":"ListKeysResponse"}, "errors":[ {"shape":"DependencyTimeoutException"}, {"shape":"KMSInternalException"}, {"shape":"InvalidMarkerException"} ] }, "ListRetirableGrants":{ "name":"ListRetirableGrants", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListRetirableGrantsRequest"}, "output":{"shape":"ListGrantsResponse"}, "errors":[ {"shape":"DependencyTimeoutException"}, {"shape":"InvalidMarkerException"}, {"shape":"InvalidArnException"}, {"shape":"NotFoundException"}, {"shape":"KMSInternalException"} ] }, "PutKeyPolicy":{ "name":"PutKeyPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutKeyPolicyRequest"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"InvalidArnException"}, {"shape":"MalformedPolicyDocumentException"}, {"shape":"DependencyTimeoutException"}, {"shape":"UnsupportedOperationException"}, {"shape":"KMSInternalException"}, {"shape":"LimitExceededException"}, {"shape":"KMSInvalidStateException"} ] }, "ReEncrypt":{ "name":"ReEncrypt", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReEncryptRequest"}, "output":{"shape":"ReEncryptResponse"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"DisabledException"}, {"shape":"InvalidCiphertextException"}, {"shape":"KeyUnavailableException"}, {"shape":"DependencyTimeoutException"}, {"shape":"InvalidKeyUsageException"}, {"shape":"InvalidGrantTokenException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"} ] }, "RetireGrant":{ "name":"RetireGrant", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RetireGrantRequest"}, "errors":[ {"shape":"InvalidGrantTokenException"}, {"shape":"InvalidGrantIdException"}, {"shape":"NotFoundException"}, {"shape":"DependencyTimeoutException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"} ] }, "RevokeGrant":{ "name":"RevokeGrant", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RevokeGrantRequest"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"DependencyTimeoutException"}, {"shape":"InvalidArnException"}, {"shape":"InvalidGrantIdException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"} ] }, "ScheduleKeyDeletion":{ "name":"ScheduleKeyDeletion", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ScheduleKeyDeletionRequest"}, "output":{"shape":"ScheduleKeyDeletionResponse"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"InvalidArnException"}, {"shape":"DependencyTimeoutException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"} ] }, "UpdateAlias":{ "name":"UpdateAlias", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateAliasRequest"}, "errors":[ {"shape":"DependencyTimeoutException"}, {"shape":"NotFoundException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"} ] }, "UpdateKeyDescription":{ "name":"UpdateKeyDescription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateKeyDescriptionRequest"}, "errors":[ {"shape":"NotFoundException"}, {"shape":"InvalidArnException"}, {"shape":"DependencyTimeoutException"}, {"shape":"KMSInternalException"}, {"shape":"KMSInvalidStateException"} ] } }, "shapes":{ "AWSAccountIdType":{"type":"string"}, "AlgorithmSpec":{ "type":"string", "enum":[ "RSAES_PKCS1_V1_5", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256" ] }, "AliasList":{ "type":"list", "member":{"shape":"AliasListEntry"} }, "AliasListEntry":{ "type":"structure", "members":{ "AliasName":{"shape":"AliasNameType"}, "AliasArn":{"shape":"ArnType"}, "TargetKeyId":{"shape":"KeyIdType"} } }, "AliasNameType":{ "type":"string", "max":256, "min":1, "pattern":"^[a-zA-Z0-9:/_-]+$" }, "AlreadyExistsException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true }, "ArnType":{ "type":"string", "max":2048, "min":20 }, "BooleanType":{"type":"boolean"}, "CancelKeyDeletionRequest":{ "type":"structure", "required":["KeyId"], "members":{ "KeyId":{"shape":"KeyIdType"} } }, "CancelKeyDeletionResponse":{ "type":"structure", "members":{ "KeyId":{"shape":"KeyIdType"} } }, "CiphertextType":{ "type":"blob", "max":6144, "min":1 }, "CreateAliasRequest":{ "type":"structure", "required":[ "AliasName", "TargetKeyId" ], "members":{ "AliasName":{"shape":"AliasNameType"}, "TargetKeyId":{"shape":"KeyIdType"} } }, "CreateGrantRequest":{ "type":"structure", "required":[ "KeyId", "GranteePrincipal" ], "members":{ "KeyId":{"shape":"KeyIdType"}, "GranteePrincipal":{"shape":"PrincipalIdType"}, "RetiringPrincipal":{"shape":"PrincipalIdType"}, "Operations":{"shape":"GrantOperationList"}, "Constraints":{"shape":"GrantConstraints"}, "GrantTokens":{"shape":"GrantTokenList"}, "Name":{"shape":"GrantNameType"} } }, "CreateGrantResponse":{ "type":"structure", "members":{ "GrantToken":{"shape":"GrantTokenType"}, "GrantId":{"shape":"GrantIdType"} } }, "CreateKeyRequest":{ "type":"structure", "members":{ "Policy":{"shape":"PolicyType"}, "Description":{"shape":"DescriptionType"}, "KeyUsage":{"shape":"KeyUsageType"}, "Origin":{"shape":"OriginType"}, "BypassPolicyLockoutSafetyCheck":{"shape":"BooleanType"} } }, "CreateKeyResponse":{ "type":"structure", "members":{ "KeyMetadata":{"shape":"KeyMetadata"} } }, "DataKeySpec":{ "type":"string", "enum":[ "AES_256", "AES_128" ] }, "DateType":{"type":"timestamp"}, "DecryptRequest":{ "type":"structure", "required":["CiphertextBlob"], "members":{ "CiphertextBlob":{"shape":"CiphertextType"}, "EncryptionContext":{"shape":"EncryptionContextType"}, "GrantTokens":{"shape":"GrantTokenList"} } }, "DecryptResponse":{ "type":"structure", "members":{ "KeyId":{"shape":"KeyIdType"}, "Plaintext":{"shape":"PlaintextType"} } }, "DeleteAliasRequest":{ "type":"structure", "required":["AliasName"], "members":{ "AliasName":{"shape":"AliasNameType"} } }, "DeleteImportedKeyMaterialRequest":{ "type":"structure", "required":["KeyId"], "members":{ "KeyId":{"shape":"KeyIdType"} } }, "DependencyTimeoutException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true, "fault":true }, "DescribeKeyRequest":{ "type":"structure", "required":["KeyId"], "members":{ "KeyId":{"shape":"KeyIdType"}, "GrantTokens":{"shape":"GrantTokenList"} } }, "DescribeKeyResponse":{ "type":"structure", "members":{ "KeyMetadata":{"shape":"KeyMetadata"} } }, "DescriptionType":{ "type":"string", "max":8192, "min":0 }, "DisableKeyRequest":{ "type":"structure", "required":["KeyId"], "members":{ "KeyId":{"shape":"KeyIdType"} } }, "DisableKeyRotationRequest":{ "type":"structure", "required":["KeyId"], "members":{ "KeyId":{"shape":"KeyIdType"} } }, "DisabledException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true }, "EnableKeyRequest":{ "type":"structure", "required":["KeyId"], "members":{ "KeyId":{"shape":"KeyIdType"} } }, "EnableKeyRotationRequest":{ "type":"structure", "required":["KeyId"], "members":{ "KeyId":{"shape":"KeyIdType"} } }, "EncryptRequest":{ "type":"structure", "required":[ "KeyId", "Plaintext" ], "members":{ "KeyId":{"shape":"KeyIdType"}, "Plaintext":{"shape":"PlaintextType"}, "EncryptionContext":{"shape":"EncryptionContextType"}, "GrantTokens":{"shape":"GrantTokenList"} } }, "EncryptResponse":{ "type":"structure", "members":{ "CiphertextBlob":{"shape":"CiphertextType"}, "KeyId":{"shape":"KeyIdType"} } }, "EncryptionContextKey":{"type":"string"}, "EncryptionContextType":{ "type":"map", "key":{"shape":"EncryptionContextKey"}, "value":{"shape":"EncryptionContextValue"} }, "EncryptionContextValue":{"type":"string"}, "ErrorMessageType":{"type":"string"}, "ExpirationModelType":{ "type":"string", "enum":[ "KEY_MATERIAL_EXPIRES", "KEY_MATERIAL_DOES_NOT_EXPIRE" ] }, "ExpiredImportTokenException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true }, "GenerateDataKeyRequest":{ "type":"structure", "required":["KeyId"], "members":{ "KeyId":{"shape":"KeyIdType"}, "EncryptionContext":{"shape":"EncryptionContextType"}, "NumberOfBytes":{"shape":"NumberOfBytesType"}, "KeySpec":{"shape":"DataKeySpec"}, "GrantTokens":{"shape":"GrantTokenList"} } }, "GenerateDataKeyResponse":{ "type":"structure", "members":{ "CiphertextBlob":{"shape":"CiphertextType"}, "Plaintext":{"shape":"PlaintextType"}, "KeyId":{"shape":"KeyIdType"} } }, "GenerateDataKeyWithoutPlaintextRequest":{ "type":"structure", "required":["KeyId"], "members":{ "KeyId":{"shape":"KeyIdType"}, "EncryptionContext":{"shape":"EncryptionContextType"}, "KeySpec":{"shape":"DataKeySpec"}, "NumberOfBytes":{"shape":"NumberOfBytesType"}, "GrantTokens":{"shape":"GrantTokenList"} } }, "GenerateDataKeyWithoutPlaintextResponse":{ "type":"structure", "members":{ "CiphertextBlob":{"shape":"CiphertextType"}, "KeyId":{"shape":"KeyIdType"} } }, "GenerateRandomRequest":{ "type":"structure", "members":{ "NumberOfBytes":{"shape":"NumberOfBytesType"} } }, "GenerateRandomResponse":{ "type":"structure", "members":{ "Plaintext":{"shape":"PlaintextType"} } }, "GetKeyPolicyRequest":{ "type":"structure", "required":[ "KeyId", "PolicyName" ], "members":{ "KeyId":{"shape":"KeyIdType"}, "PolicyName":{"shape":"PolicyNameType"} } }, "GetKeyPolicyResponse":{ "type":"structure", "members":{ "Policy":{"shape":"PolicyType"} } }, "GetKeyRotationStatusRequest":{ "type":"structure", "required":["KeyId"], "members":{ "KeyId":{"shape":"KeyIdType"} } }, "GetKeyRotationStatusResponse":{ "type":"structure", "members":{ "KeyRotationEnabled":{"shape":"BooleanType"} } }, "GetParametersForImportRequest":{ "type":"structure", "required":[ "KeyId", "WrappingAlgorithm", "WrappingKeySpec" ], "members":{ "KeyId":{"shape":"KeyIdType"}, "WrappingAlgorithm":{"shape":"AlgorithmSpec"}, "WrappingKeySpec":{"shape":"WrappingKeySpec"} } }, "GetParametersForImportResponse":{ "type":"structure", "members":{ "KeyId":{"shape":"KeyIdType"}, "ImportToken":{"shape":"CiphertextType"}, "PublicKey":{"shape":"PlaintextType"}, "ParametersValidTo":{"shape":"DateType"} } }, "GrantConstraints":{ "type":"structure", "members":{ "EncryptionContextSubset":{"shape":"EncryptionContextType"}, "EncryptionContextEquals":{"shape":"EncryptionContextType"} } }, "GrantIdType":{ "type":"string", "max":128, "min":1 }, "GrantList":{ "type":"list", "member":{"shape":"GrantListEntry"} }, "GrantListEntry":{ "type":"structure", "members":{ "KeyId":{"shape":"KeyIdType"}, "GrantId":{"shape":"GrantIdType"}, "Name":{"shape":"GrantNameType"}, "CreationDate":{"shape":"DateType"}, "GranteePrincipal":{"shape":"PrincipalIdType"}, "RetiringPrincipal":{"shape":"PrincipalIdType"}, "IssuingAccount":{"shape":"PrincipalIdType"}, "Operations":{"shape":"GrantOperationList"}, "Constraints":{"shape":"GrantConstraints"} } }, "GrantNameType":{ "type":"string", "max":256, "min":1, "pattern":"^[a-zA-Z0-9:/_-]+$" }, "GrantOperation":{ "type":"string", "enum":[ "Decrypt", "Encrypt", "GenerateDataKey", "GenerateDataKeyWithoutPlaintext", "ReEncryptFrom", "ReEncryptTo", "CreateGrant", "RetireGrant", "DescribeKey" ] }, "GrantOperationList":{ "type":"list", "member":{"shape":"GrantOperation"} }, "GrantTokenList":{ "type":"list", "member":{"shape":"GrantTokenType"}, "max":10, "min":0 }, "GrantTokenType":{ "type":"string", "max":8192, "min":1 }, "ImportKeyMaterialRequest":{ "type":"structure", "required":[ "KeyId", "ImportToken", "EncryptedKeyMaterial" ], "members":{ "KeyId":{"shape":"KeyIdType"}, "ImportToken":{"shape":"CiphertextType"}, "EncryptedKeyMaterial":{"shape":"CiphertextType"}, "ValidTo":{"shape":"DateType"}, "ExpirationModel":{"shape":"ExpirationModelType"} } }, "ImportKeyMaterialResponse":{ "type":"structure", "members":{ } }, "IncorrectKeyMaterialException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true }, "InvalidAliasNameException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true }, "InvalidArnException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true }, "InvalidCiphertextException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true }, "InvalidGrantIdException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true }, "InvalidGrantTokenException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true }, "InvalidImportTokenException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true }, "InvalidKeyUsageException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true }, "InvalidMarkerException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true }, "KMSInternalException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true }, "KMSInvalidStateException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true }, "KeyIdType":{ "type":"string", "max":256, "min":1 }, "KeyList":{ "type":"list", "member":{"shape":"KeyListEntry"} }, "KeyListEntry":{ "type":"structure", "members":{ "KeyId":{"shape":"KeyIdType"}, "KeyArn":{"shape":"ArnType"} } }, "KeyMetadata":{ "type":"structure", "required":["KeyId"], "members":{ "AWSAccountId":{"shape":"AWSAccountIdType"}, "KeyId":{"shape":"KeyIdType"}, "Arn":{"shape":"ArnType"}, "CreationDate":{"shape":"DateType"}, "Enabled":{"shape":"BooleanType"}, "Description":{"shape":"DescriptionType"}, "KeyUsage":{"shape":"KeyUsageType"}, "KeyState":{"shape":"KeyState"}, "DeletionDate":{"shape":"DateType"}, "ValidTo":{"shape":"DateType"}, "Origin":{"shape":"OriginType"}, "ExpirationModel":{"shape":"ExpirationModelType"} } }, "KeyState":{ "type":"string", "enum":[ "Enabled", "Disabled", "PendingDeletion", "PendingImport" ] }, "KeyUnavailableException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true, "fault":true }, "KeyUsageType":{ "type":"string", "enum":["ENCRYPT_DECRYPT"] }, "LimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true }, "LimitType":{ "type":"integer", "max":1000, "min":1 }, "ListAliasesRequest":{ "type":"structure", "members":{ "Limit":{"shape":"LimitType"}, "Marker":{"shape":"MarkerType"} } }, "ListAliasesResponse":{ "type":"structure", "members":{ "Aliases":{"shape":"AliasList"}, "NextMarker":{"shape":"MarkerType"}, "Truncated":{"shape":"BooleanType"} } }, "ListGrantsRequest":{ "type":"structure", "required":["KeyId"], "members":{ "Limit":{"shape":"LimitType"}, "Marker":{"shape":"MarkerType"}, "KeyId":{"shape":"KeyIdType"} } }, "ListGrantsResponse":{ "type":"structure", "members":{ "Grants":{"shape":"GrantList"}, "NextMarker":{"shape":"MarkerType"}, "Truncated":{"shape":"BooleanType"} } }, "ListKeyPoliciesRequest":{ "type":"structure", "required":["KeyId"], "members":{ "KeyId":{"shape":"KeyIdType"}, "Limit":{"shape":"LimitType"}, "Marker":{"shape":"MarkerType"} } }, "ListKeyPoliciesResponse":{ "type":"structure", "members":{ "PolicyNames":{"shape":"PolicyNameList"}, "NextMarker":{"shape":"MarkerType"}, "Truncated":{"shape":"BooleanType"} } }, "ListKeysRequest":{ "type":"structure", "members":{ "Limit":{"shape":"LimitType"}, "Marker":{"shape":"MarkerType"} } }, "ListKeysResponse":{ "type":"structure", "members":{ "Keys":{"shape":"KeyList"}, "NextMarker":{"shape":"MarkerType"}, "Truncated":{"shape":"BooleanType"} } }, "ListRetirableGrantsRequest":{ "type":"structure", "required":["RetiringPrincipal"], "members":{ "Limit":{"shape":"LimitType"}, "Marker":{"shape":"MarkerType"}, "RetiringPrincipal":{"shape":"PrincipalIdType"} } }, "MalformedPolicyDocumentException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true }, "MarkerType":{ "type":"string", "max":320, "min":1, "pattern":"[\\u0020-\\u00FF]*" }, "NotFoundException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true }, "NumberOfBytesType":{ "type":"integer", "max":1024, "min":1 }, "OriginType":{ "type":"string", "enum":[ "AWS_KMS", "EXTERNAL" ] }, "PendingWindowInDaysType":{ "type":"integer", "max":365, "min":1 }, "PlaintextType":{ "type":"blob", "max":4096, "min":1, "sensitive":true }, "PolicyNameList":{ "type":"list", "member":{"shape":"PolicyNameType"} }, "PolicyNameType":{ "type":"string", "max":128, "min":1, "pattern":"[\\w]+" }, "PolicyType":{ "type":"string", "max":131072, "min":1, "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+" }, "PrincipalIdType":{ "type":"string", "max":256, "min":1 }, "PutKeyPolicyRequest":{ "type":"structure", "required":[ "KeyId", "PolicyName", "Policy" ], "members":{ "KeyId":{"shape":"KeyIdType"}, "PolicyName":{"shape":"PolicyNameType"}, "Policy":{"shape":"PolicyType"}, "BypassPolicyLockoutSafetyCheck":{"shape":"BooleanType"} } }, "ReEncryptRequest":{ "type":"structure", "required":[ "CiphertextBlob", "DestinationKeyId" ], "members":{ "CiphertextBlob":{"shape":"CiphertextType"}, "SourceEncryptionContext":{"shape":"EncryptionContextType"}, "DestinationKeyId":{"shape":"KeyIdType"}, "DestinationEncryptionContext":{"shape":"EncryptionContextType"}, "GrantTokens":{"shape":"GrantTokenList"} } }, "ReEncryptResponse":{ "type":"structure", "members":{ "CiphertextBlob":{"shape":"CiphertextType"}, "SourceKeyId":{"shape":"KeyIdType"}, "KeyId":{"shape":"KeyIdType"} } }, "RetireGrantRequest":{ "type":"structure", "members":{ "GrantToken":{"shape":"GrantTokenType"}, "KeyId":{"shape":"KeyIdType"}, "GrantId":{"shape":"GrantIdType"} } }, "RevokeGrantRequest":{ "type":"structure", "required":[ "KeyId", "GrantId" ], "members":{ "KeyId":{"shape":"KeyIdType"}, "GrantId":{"shape":"GrantIdType"} } }, "ScheduleKeyDeletionRequest":{ "type":"structure", "required":["KeyId"], "members":{ "KeyId":{"shape":"KeyIdType"}, "PendingWindowInDays":{"shape":"PendingWindowInDaysType"} } }, "ScheduleKeyDeletionResponse":{ "type":"structure", "members":{ "KeyId":{"shape":"KeyIdType"}, "DeletionDate":{"shape":"DateType"} } }, "UnsupportedOperationException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessageType"} }, "exception":true }, "UpdateAliasRequest":{ "type":"structure", "required":[ "AliasName", "TargetKeyId" ], "members":{ "AliasName":{"shape":"AliasNameType"}, "TargetKeyId":{"shape":"KeyIdType"} } }, "UpdateKeyDescriptionRequest":{ "type":"structure", "required":[ "KeyId", "Description" ], "members":{ "KeyId":{"shape":"KeyIdType"}, "Description":{"shape":"DescriptionType"} } }, "WrappingKeySpec":{ "type":"string", "enum":["RSA_2048"] } } } aws-sdk-go-1.4.22/models/apis/kms/2014-11-01/docs-2.json000066400000000000000000002323331300374646400216070ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS Key Management Service

        AWS Key Management Service (AWS KMS) is an encryption and key management web service. This guide describes the AWS KMS operations that you can call programmatically. For general information about AWS KMS, see the AWS Key Management Service Developer Guide.

        AWS provides SDKs that consist of libraries and sample code for various programming languages and platforms (Java, Ruby, .Net, iOS, Android, etc.). The SDKs provide a convenient way to create programmatic access to AWS KMS and other AWS services. For example, the SDKs take care of tasks such as signing requests (see below), managing errors, and retrying requests automatically. For more information about the AWS SDKs, including how to download and install them, see Tools for Amazon Web Services.

        We recommend that you use the AWS SDKs to make programmatic API calls to AWS KMS.

        Clients must support TLS (Transport Layer Security) 1.0. We recommend TLS 1.2. Clients must also support cipher suites with Perfect Forward Secrecy (PFS) such as Ephemeral Diffie-Hellman (DHE) or Elliptic Curve Ephemeral Diffie-Hellman (ECDHE). Most modern systems such as Java 7 and later support these modes.

        Signing Requests

        Requests must be signed by using an access key ID and a secret access key. We strongly recommend that you do not use your AWS account (root) access key ID and secret key for everyday work with AWS KMS. Instead, use the access key ID and secret access key for an IAM user, or you can use the AWS Security Token Service to generate temporary security credentials that you can use to sign requests.

        All AWS KMS operations require Signature Version 4.

        Logging API Requests

        AWS KMS supports AWS CloudTrail, a service that logs AWS API calls and related events for your AWS account and delivers them to an Amazon S3 bucket that you specify. By using the information collected by CloudTrail, you can determine what requests were made to AWS KMS, who made the request, when it was made, and so on. To learn more about CloudTrail, including how to turn it on and find your log files, see the AWS CloudTrail User Guide.

        Additional Resources

        For more information about credentials and request signing, see the following:

        Commonly Used APIs

        Of the APIs discussed in this guide, the following will prove the most useful for most applications. You will likely perform actions other than these, such as creating keys and assigning policies, by using the console.

        ", "operations": { "CancelKeyDeletion": "

        Cancels the deletion of a customer master key (CMK). When this operation is successful, the CMK is set to the Disabled state. To enable a CMK, use EnableKey.

        For more information about scheduling and canceling deletion of a CMK, see Deleting Customer Master Keys in the AWS Key Management Service Developer Guide.

        ", "CreateAlias": "

        Creates a display name for a customer master key. An alias can be used to identify a key and should be unique. The console enforces a one-to-one mapping between the alias and a key. An alias name can contain only alphanumeric characters, forward slashes (/), underscores (_), and dashes (-). An alias must start with the word \"alias\" followed by a forward slash (alias/). An alias that begins with \"aws\" after the forward slash (alias/aws...) is reserved by Amazon Web Services (AWS).

        The alias and the key it is mapped to must be in the same AWS account and the same region.

        To map an alias to a different key, call UpdateAlias.

        ", "CreateGrant": "

        Adds a grant to a key to specify who can use the key and under what conditions. Grants are alternate permission mechanisms to key policies.

        For more information about grants, see Grants in the AWS Key Management Service Developer Guide.

        ", "CreateKey": "

        Creates a customer master key (CMK).

        You can use a CMK to encrypt small amounts of data (4 KiB or less) directly, but CMKs are more commonly used to encrypt data encryption keys (DEKs), which are used to encrypt raw data. For more information about DEKs and the difference between CMKs and DEKs, see the following:

        ", "Decrypt": "

        Decrypts ciphertext. Ciphertext is plaintext that has been previously encrypted by using any of the following functions:

        Note that if a caller has been granted access permissions to all keys (through, for example, IAM user policies that grant Decrypt permission on all resources), then ciphertext encrypted by using keys in other accounts where the key grants access to the caller can be decrypted. To remedy this, we recommend that you do not grant Decrypt access in an IAM user policy. Instead grant Decrypt access only in key policies. If you must grant Decrypt access in an IAM user policy, you should scope the resource to specific keys or to specific trusted accounts.

        ", "DeleteAlias": "

        Deletes the specified alias. To map an alias to a different key, call UpdateAlias.

        ", "DeleteImportedKeyMaterial": "

        Deletes key material that you previously imported and makes the specified customer master key (CMK) unusable. For more information about importing key material into AWS KMS, see Importing Key Material in the AWS Key Management Service Developer Guide.

        When the specified CMK is in the PendingDeletion state, this operation does not change the CMK's state. Otherwise, it changes the CMK's state to PendingImport.

        After you delete key material, you can use ImportKeyMaterial to reimport the same key material into the CMK.

        ", "DescribeKey": "

        Provides detailed information about the specified customer master key.

        ", "DisableKey": "

        Sets the state of a customer master key (CMK) to disabled, thereby preventing its use for cryptographic operations. For more information about how key state affects the use of a CMK, see How Key State Affects the Use of a Customer Master Key in the AWS Key Management Service Developer Guide.

        ", "DisableKeyRotation": "

        Disables rotation of the specified key.

        ", "EnableKey": "

        Marks a key as enabled, thereby permitting its use.

        ", "EnableKeyRotation": "

        Enables rotation of the specified customer master key.

        ", "Encrypt": "

        Encrypts plaintext into ciphertext by using a customer master key. The Encrypt function has two primary use cases:

        • You can encrypt up to 4 KB of arbitrary data such as an RSA key, a database password, or other sensitive customer information.

        • If you are moving encrypted data from one region to another, you can use this API to encrypt in the new region the plaintext data key that was used to encrypt the data in the original region. This provides you with an encrypted copy of the data key that can be decrypted in the new region and used there to decrypt the encrypted data.

        Unless you are moving encrypted data from one region to another, you don't use this function to encrypt a generated data key within a region. You retrieve data keys already encrypted by calling the GenerateDataKey or GenerateDataKeyWithoutPlaintext function. Data keys don't need to be encrypted again by calling Encrypt.

        If you want to encrypt data locally in your application, you can use the GenerateDataKey function to return a plaintext data encryption key and a copy of the key encrypted under the customer master key (CMK) of your choosing.

        ", "GenerateDataKey": "

        Returns a data encryption key that you can use in your application to encrypt data locally.

        You must specify the customer master key (CMK) under which to generate the data key. You must also specify the length of the data key using either the KeySpec or NumberOfBytes field. You must specify one field or the other, but not both. For common key lengths (128-bit and 256-bit symmetric keys), we recommend that you use KeySpec.

        This operation returns a plaintext copy of the data key in the Plaintext field of the response, and an encrypted copy of the data key in the CiphertextBlob field. The data key is encrypted under the CMK specified in the KeyId field of the request.

        We recommend that you use the following pattern to encrypt data locally in your application:

        1. Use this operation (GenerateDataKey) to retrieve a data encryption key.

        2. Use the plaintext data encryption key (returned in the Plaintext field of the response) to encrypt data locally, then erase the plaintext data key from memory.

        3. Store the encrypted data key (returned in the CiphertextBlob field of the response) alongside the locally encrypted data.

        To decrypt data locally:

        1. Use the Decrypt operation to decrypt the encrypted data key into a plaintext copy of the data key.

        2. Use the plaintext data key to decrypt data locally, then erase the plaintext data key from memory.

        To return only an encrypted copy of the data key, use GenerateDataKeyWithoutPlaintext. To return an arbitrary unpredictable byte string, use GenerateRandom.

        If you use the optional EncryptionContext field, you must store at least enough information to be able to reconstruct the full encryption context when you later send the ciphertext to the Decrypt operation. It is a good practice to choose an encryption context that you can reconstruct on the fly to better secure the ciphertext. For more information, see Encryption Context in the AWS Key Management Service Developer Guide.

        ", "GenerateDataKeyWithoutPlaintext": "

        Returns a data encryption key encrypted under a customer master key (CMK). This operation is identical to GenerateDataKey but returns only the encrypted copy of the data key.

        This operation is useful in a system that has multiple components with different degrees of trust. For example, consider a system that stores encrypted data in containers. Each container stores the encrypted data and an encrypted copy of the data key. One component of the system, called the control plane, creates new containers. When it creates a new container, it uses this operation (GenerateDataKeyWithoutPlaintext) to get an encrypted data key and then stores it in the container. Later, a different component of the system, called the data plane, puts encrypted data into the containers. To do this, it passes the encrypted data key to the Decrypt operation, then uses the returned plaintext data key to encrypt data, and finally stores the encrypted data in the container. In this system, the control plane never sees the plaintext data key.

        ", "GenerateRandom": "

        Generates an unpredictable byte string.

        ", "GetKeyPolicy": "

        Retrieves a policy attached to the specified key.

        ", "GetKeyRotationStatus": "

        Retrieves a Boolean value that indicates whether key rotation is enabled for the specified key.

        ", "GetParametersForImport": "

        Returns the items you need in order to import key material into AWS KMS from your existing key management infrastructure. For more information about importing key material into AWS KMS, see Importing Key Material in the AWS Key Management Service Developer Guide.

        You must specify the key ID of the customer master key (CMK) into which you will import key material. This CMK's Origin must be EXTERNAL. You must also specify the wrapping algorithm and type of wrapping key (public key) that you will use to encrypt the key material.

        This operation returns a public key and an import token. Use the public key to encrypt the key material. Store the import token to send with a subsequent ImportKeyMaterial request. The public key and import token from the same response must be used together. These items are valid for 24 hours, after which they cannot be used for a subsequent ImportKeyMaterial request. To retrieve new ones, send another GetParametersForImport request.

        ", "ImportKeyMaterial": "

        Imports key material into an AWS KMS customer master key (CMK) from your existing key management infrastructure. For more information about importing key material into AWS KMS, see Importing Key Material in the AWS Key Management Service Developer Guide.

        You must specify the key ID of the CMK to import the key material into. This CMK's Origin must be EXTERNAL. You must also send an import token and the encrypted key material. Send the import token that you received in the same GetParametersForImport response that contained the public key that you used to encrypt the key material. You must also specify whether the key material expires and if so, when. When the key material expires, AWS KMS deletes the key material and the CMK becomes unusable. To use the CMK again, you can reimport the same key material. If you set an expiration date, you can change it only by reimporting the same key material and specifying a new expiration date.

        When this operation is successful, the specified CMK's key state changes to Enabled, and you can use the CMK.

        After you successfully import key material into a CMK, you can reimport the same key material into that CMK, but you cannot import different key material.

        ", "ListAliases": "

        Lists all of the key aliases in the account.

        ", "ListGrants": "

        List the grants for a specified key.

        ", "ListKeyPolicies": "

        Retrieves a list of policies attached to a key.

        ", "ListKeys": "

        Lists the customer master keys.

        ", "ListRetirableGrants": "

        Returns a list of all grants for which the grant's RetiringPrincipal matches the one specified.

        A typical use is to list all grants that you are able to retire. To retire a grant, use RetireGrant.

        ", "PutKeyPolicy": "

        Attaches a key policy to the specified customer master key (CMK).

        For more information about key policies, see Key Policies in the AWS Key Management Service Developer Guide.

        ", "ReEncrypt": "

        Encrypts data on the server side with a new customer master key without exposing the plaintext of the data on the client side. The data is first decrypted and then encrypted. This operation can also be used to change the encryption context of a ciphertext.

        Unlike other actions, ReEncrypt is authorized twice - once as ReEncryptFrom on the source key and once as ReEncryptTo on the destination key. We therefore recommend that you include the \"action\":\"kms:ReEncrypt*\" statement in your key policies to permit re-encryption from or to the key. The statement is included automatically when you authorize use of the key through the console but must be included manually when you set a policy by using the PutKeyPolicy function.

        ", "RetireGrant": "

        Retires a grant. You can retire a grant when you're done using it to clean up. You should revoke a grant when you intend to actively deny operations that depend on it. The following are permitted to call this API:

        • The account that created the grant

        • The RetiringPrincipal, if present

        • The GranteePrincipal, if RetireGrant is a grantee operation

        The grant to retire must be identified by its grant token or by a combination of the key ARN and the grant ID. A grant token is a unique variable-length base64-encoded string. A grant ID is a 64 character unique identifier of a grant. Both are returned by the CreateGrant function.

        ", "RevokeGrant": "

        Revokes a grant. You can revoke a grant to actively deny operations that depend on it.

        ", "ScheduleKeyDeletion": "

        Schedules the deletion of a customer master key (CMK). You may provide a waiting period, specified in days, before deletion occurs. If you do not provide a waiting period, the default period of 30 days is used. When this operation is successful, the state of the CMK changes to PendingDeletion. Before the waiting period ends, you can use CancelKeyDeletion to cancel the deletion of the CMK. After the waiting period ends, AWS KMS deletes the CMK and all AWS KMS data associated with it, including all aliases that point to it.

        Deleting a CMK is a destructive and potentially dangerous operation. When a CMK is deleted, all data that was encrypted under the CMK is rendered unrecoverable. To restrict the use of a CMK without deleting it, use DisableKey.

        For more information about scheduling a CMK for deletion, see Deleting Customer Master Keys in the AWS Key Management Service Developer Guide.

        ", "UpdateAlias": "

        Updates an alias to map it to a different key.

        An alias is not a property of a key. Therefore, an alias can be mapped to and unmapped from an existing key without changing the properties of the key.

        An alias name can contain only alphanumeric characters, forward slashes (/), underscores (_), and dashes (-). An alias must start with the word \"alias\" followed by a forward slash (alias/). An alias that begins with \"aws\" after the forward slash (alias/aws...) is reserved by Amazon Web Services (AWS).

        The alias and the key it is mapped to must be in the same AWS account and the same region.

        ", "UpdateKeyDescription": "

        Updates the description of a key.

        " }, "shapes": { "AWSAccountIdType": { "base": null, "refs": { "KeyMetadata$AWSAccountId": "

        The twelve-digit account ID of the AWS account that owns the CMK.

        " } }, "AlgorithmSpec": { "base": null, "refs": { "GetParametersForImportRequest$WrappingAlgorithm": "

        The algorithm you will use to encrypt the key material before importing it with ImportKeyMaterial. For more information, see Encrypt the Key Material in the AWS Key Management Service Developer Guide.

        " } }, "AliasList": { "base": null, "refs": { "ListAliasesResponse$Aliases": "

        A list of key aliases in the user's account.

        " } }, "AliasListEntry": { "base": "

        Contains information about an alias.

        ", "refs": { "AliasList$member": null } }, "AliasNameType": { "base": null, "refs": { "AliasListEntry$AliasName": "

        String that contains the alias.

        ", "CreateAliasRequest$AliasName": "

        String that contains the display name. The name must start with the word \"alias\" followed by a forward slash (alias/). Aliases that begin with \"alias/AWS\" are reserved.

        ", "DeleteAliasRequest$AliasName": "

        The alias to be deleted. The name must start with the word \"alias\" followed by a forward slash (alias/). Aliases that begin with \"alias/AWS\" are reserved.

        ", "UpdateAliasRequest$AliasName": "

        String that contains the name of the alias to be modified. The name must start with the word \"alias\" followed by a forward slash (alias/). Aliases that begin with \"alias/aws\" are reserved.

        " } }, "AlreadyExistsException": { "base": "

        The request was rejected because it attempted to create a resource that already exists.

        ", "refs": { } }, "ArnType": { "base": null, "refs": { "AliasListEntry$AliasArn": "

        String that contains the key ARN.

        ", "KeyListEntry$KeyArn": "

        ARN of the key.

        ", "KeyMetadata$Arn": "

        The Amazon Resource Name (ARN) of the CMK. For examples, see AWS Key Management Service (AWS KMS) in the Example ARNs section of the AWS General Reference.

        " } }, "BooleanType": { "base": null, "refs": { "CreateKeyRequest$BypassPolicyLockoutSafetyCheck": "

        A flag to indicate whether to bypass the key policy lockout safety check.

        Setting this value to true increases the likelihood that the CMK becomes unmanageable. Do not set this value to true indiscriminately.

        For more information, refer to the scenario in the Default Key Policy section in the AWS Key Management Service Developer Guide.

        Use this parameter only when you include a policy in the request and you intend to prevent the principal making the request from making a subsequent PutKeyPolicy request on the CMK.

        The default value is false.

        ", "GetKeyRotationStatusResponse$KeyRotationEnabled": "

        A Boolean value that specifies whether key rotation is enabled.

        ", "KeyMetadata$Enabled": "

        Specifies whether the CMK is enabled. When KeyState is Enabled this value is true, otherwise it is false.

        ", "ListAliasesResponse$Truncated": "

        A flag that indicates whether there are more items in the list. If your results were truncated, you can use the Marker parameter to make a subsequent pagination request to retrieve more items in the list.

        ", "ListGrantsResponse$Truncated": "

        A flag that indicates whether there are more items in the list. If your results were truncated, you can use the Marker parameter to make a subsequent pagination request to retrieve more items in the list.

        ", "ListKeyPoliciesResponse$Truncated": "

        A flag that indicates whether there are more items in the list. If your results were truncated, you can use the Marker parameter to make a subsequent pagination request to retrieve more items in the list.

        ", "ListKeysResponse$Truncated": "

        A flag that indicates whether there are more items in the list. If your results were truncated, you can use the Marker parameter to make a subsequent pagination request to retrieve more items in the list.

        ", "PutKeyPolicyRequest$BypassPolicyLockoutSafetyCheck": "

        A flag to indicate whether to bypass the key policy lockout safety check.

        Setting this value to true increases the likelihood that the CMK becomes unmanageable. Do not set this value to true indiscriminately.

        For more information, refer to the scenario in the Default Key Policy section in the AWS Key Management Service Developer Guide.

        Use this parameter only when you intend to prevent the principal making the request from making a subsequent PutKeyPolicy request on the CMK.

        The default value is false.

        " } }, "CancelKeyDeletionRequest": { "base": null, "refs": { } }, "CancelKeyDeletionResponse": { "base": null, "refs": { } }, "CiphertextType": { "base": null, "refs": { "DecryptRequest$CiphertextBlob": "

        Ciphertext to be decrypted. The blob includes metadata.

        ", "EncryptResponse$CiphertextBlob": "

        The encrypted plaintext. If you are using the CLI, the value is Base64 encoded. Otherwise, it is not encoded.

        ", "GenerateDataKeyResponse$CiphertextBlob": "

        The encrypted data encryption key.

        ", "GenerateDataKeyWithoutPlaintextResponse$CiphertextBlob": "

        The encrypted data encryption key.

        ", "GetParametersForImportResponse$ImportToken": "

        The import token to send in a subsequent ImportKeyMaterial request.

        ", "ImportKeyMaterialRequest$ImportToken": "

        The import token that you received in the response to a previous GetParametersForImport request. It must be from the same response that contained the public key that you used to encrypt the key material.

        ", "ImportKeyMaterialRequest$EncryptedKeyMaterial": "

        The encrypted key material to import. It must be encrypted with the public key that you received in the response to a previous GetParametersForImport request, using the wrapping algorithm that you specified in that request.

        ", "ReEncryptRequest$CiphertextBlob": "

        Ciphertext of the data to re-encrypt.

        ", "ReEncryptResponse$CiphertextBlob": "

        The re-encrypted data. If you are using the CLI, the value is Base64 encoded. Otherwise, it is not encoded.

        " } }, "CreateAliasRequest": { "base": null, "refs": { } }, "CreateGrantRequest": { "base": null, "refs": { } }, "CreateGrantResponse": { "base": null, "refs": { } }, "CreateKeyRequest": { "base": null, "refs": { } }, "CreateKeyResponse": { "base": null, "refs": { } }, "DataKeySpec": { "base": null, "refs": { "GenerateDataKeyRequest$KeySpec": "

        The length of the data encryption key. Use AES_128 to generate a 128-bit symmetric key, or AES_256 to generate a 256-bit symmetric key.

        ", "GenerateDataKeyWithoutPlaintextRequest$KeySpec": "

        The length of the data encryption key. Use AES_128 to generate a 128-bit symmetric key, or AES_256 to generate a 256-bit symmetric key.

        " } }, "DateType": { "base": null, "refs": { "GetParametersForImportResponse$ParametersValidTo": "

        The time at which the import token and public key are no longer valid. After this time, you cannot use them to make an ImportKeyMaterial request and you must send another GetParametersForImport request to retrieve new ones.

        ", "GrantListEntry$CreationDate": "

        The date and time when the grant was created.

        ", "ImportKeyMaterialRequest$ValidTo": "

        The time at which the imported key material expires. When the key material expires, AWS KMS deletes the key material and the CMK becomes unusable. You must omit this parameter when the ExpirationModel parameter is set to KEY_MATERIAL_DOES_NOT_EXPIRE. Otherwise it is required.

        ", "KeyMetadata$CreationDate": "

        The date and time when the CMK was created.

        ", "KeyMetadata$DeletionDate": "

        The date and time after which AWS KMS deletes the CMK. This value is present only when KeyState is PendingDeletion, otherwise this value is omitted.

        ", "KeyMetadata$ValidTo": "

        The time at which the imported key material expires. When the key material expires, AWS KMS deletes the key material and the CMK becomes unusable. This value is present only for CMKs whose Origin is EXTERNAL and whose ExpirationModel is KEY_MATERIAL_EXPIRES, otherwise this value is omitted.

        ", "ScheduleKeyDeletionResponse$DeletionDate": "

        The date and time after which AWS KMS deletes the customer master key (CMK).

        " } }, "DecryptRequest": { "base": null, "refs": { } }, "DecryptResponse": { "base": null, "refs": { } }, "DeleteAliasRequest": { "base": null, "refs": { } }, "DeleteImportedKeyMaterialRequest": { "base": null, "refs": { } }, "DependencyTimeoutException": { "base": "

        The system timed out while trying to fulfill the request. The request can be retried.

        ", "refs": { } }, "DescribeKeyRequest": { "base": null, "refs": { } }, "DescribeKeyResponse": { "base": null, "refs": { } }, "DescriptionType": { "base": null, "refs": { "CreateKeyRequest$Description": "

        A description of the CMK.

        Use a description that helps you decide whether the CMK is appropriate for a task.

        ", "KeyMetadata$Description": "

        The description of the CMK.

        ", "UpdateKeyDescriptionRequest$Description": "

        New description for the key.

        " } }, "DisableKeyRequest": { "base": null, "refs": { } }, "DisableKeyRotationRequest": { "base": null, "refs": { } }, "DisabledException": { "base": "

        The request was rejected because the specified CMK is not enabled.

        ", "refs": { } }, "EnableKeyRequest": { "base": null, "refs": { } }, "EnableKeyRotationRequest": { "base": null, "refs": { } }, "EncryptRequest": { "base": null, "refs": { } }, "EncryptResponse": { "base": null, "refs": { } }, "EncryptionContextKey": { "base": null, "refs": { "EncryptionContextType$key": null } }, "EncryptionContextType": { "base": null, "refs": { "DecryptRequest$EncryptionContext": "

        The encryption context. If this was specified in the Encrypt function, it must be specified here or the decryption operation will fail. For more information, see Encryption Context.

        ", "EncryptRequest$EncryptionContext": "

        Name-value pair that specifies the encryption context to be used for authenticated encryption. If used here, the same value must be supplied to the Decrypt API or decryption will fail. For more information, see Encryption Context.

        ", "GenerateDataKeyRequest$EncryptionContext": "

        A set of key-value pairs that represents additional authenticated data.

        For more information, see Encryption Context in the AWS Key Management Service Developer Guide.

        ", "GenerateDataKeyWithoutPlaintextRequest$EncryptionContext": "

        A set of key-value pairs that represents additional authenticated data.

        For more information, see Encryption Context in the AWS Key Management Service Developer Guide.

        ", "GrantConstraints$EncryptionContextSubset": "

        Contains a list of key-value pairs, a subset of which must be present in the encryption context of a subsequent operation permitted by the grant. When a subsequent operation permitted by the grant includes an encryption context that matches this list or is a subset of this list, the grant allows the operation. Otherwise, the operation is not allowed.

        ", "GrantConstraints$EncryptionContextEquals": "

        Contains a list of key-value pairs that must be present in the encryption context of a subsequent operation permitted by the grant. When a subsequent operation permitted by the grant includes an encryption context that matches this list, the grant allows the operation. Otherwise, the operation is not allowed.

        ", "ReEncryptRequest$SourceEncryptionContext": "

        Encryption context used to encrypt and decrypt the data specified in the CiphertextBlob parameter.

        ", "ReEncryptRequest$DestinationEncryptionContext": "

        Encryption context to be used when the data is re-encrypted.

        " } }, "EncryptionContextValue": { "base": null, "refs": { "EncryptionContextType$value": null } }, "ErrorMessageType": { "base": null, "refs": { "AlreadyExistsException$message": null, "DependencyTimeoutException$message": null, "DisabledException$message": null, "ExpiredImportTokenException$message": null, "IncorrectKeyMaterialException$message": null, "InvalidAliasNameException$message": null, "InvalidArnException$message": null, "InvalidCiphertextException$message": null, "InvalidGrantIdException$message": null, "InvalidGrantTokenException$message": null, "InvalidImportTokenException$message": null, "InvalidKeyUsageException$message": null, "InvalidMarkerException$message": null, "KMSInternalException$message": null, "KMSInvalidStateException$message": null, "KeyUnavailableException$message": null, "LimitExceededException$message": null, "MalformedPolicyDocumentException$message": null, "NotFoundException$message": null, "UnsupportedOperationException$message": null } }, "ExpirationModelType": { "base": null, "refs": { "ImportKeyMaterialRequest$ExpirationModel": "

        Specifies whether the key material expires. The default is KEY_MATERIAL_EXPIRES, in which case you must include the ValidTo parameter. When this parameter is set to KEY_MATERIAL_DOES_NOT_EXPIRE, you must omit the ValidTo parameter.

        ", "KeyMetadata$ExpirationModel": "

        Specifies whether the CMK's key material expires. This value is present only when Origin is EXTERNAL, otherwise this value is omitted.

        " } }, "ExpiredImportTokenException": { "base": "

        The request was rejected because the provided import token is expired. Use GetParametersForImport to retrieve a new import token and public key, use the new public key to encrypt the key material, and then try the request again.

        ", "refs": { } }, "GenerateDataKeyRequest": { "base": null, "refs": { } }, "GenerateDataKeyResponse": { "base": null, "refs": { } }, "GenerateDataKeyWithoutPlaintextRequest": { "base": null, "refs": { } }, "GenerateDataKeyWithoutPlaintextResponse": { "base": null, "refs": { } }, "GenerateRandomRequest": { "base": null, "refs": { } }, "GenerateRandomResponse": { "base": null, "refs": { } }, "GetKeyPolicyRequest": { "base": null, "refs": { } }, "GetKeyPolicyResponse": { "base": null, "refs": { } }, "GetKeyRotationStatusRequest": { "base": null, "refs": { } }, "GetKeyRotationStatusResponse": { "base": null, "refs": { } }, "GetParametersForImportRequest": { "base": null, "refs": { } }, "GetParametersForImportResponse": { "base": null, "refs": { } }, "GrantConstraints": { "base": "

        A structure for specifying the conditions under which the operations permitted by the grant are allowed.

        You can use this structure to allow the operations permitted by the grant only when a specified encryption context is present. For more information about encryption context, see Encryption Context in the AWS Key Management Service Developer Guide.

        ", "refs": { "CreateGrantRequest$Constraints": "

        The conditions under which the operations permitted by the grant are allowed.

        You can use this value to allow the operations permitted by the grant only when a specified encryption context is present. For more information, see Encryption Context in the AWS Key Management Service Developer Guide.

        ", "GrantListEntry$Constraints": "

        The conditions under which the grant's operations are allowed.

        " } }, "GrantIdType": { "base": null, "refs": { "CreateGrantResponse$GrantId": "

        The unique identifier for the grant.

        You can use the GrantId in a subsequent RetireGrant or RevokeGrant operation.

        ", "GrantListEntry$GrantId": "

        The unique identifier for the grant.

        ", "RetireGrantRequest$GrantId": "

        Unique identifier of the grant to be retired. The grant ID is returned by the CreateGrant function.

        • Grant ID Example - 0123456789012345678901234567890123456789012345678901234567890123

        ", "RevokeGrantRequest$GrantId": "

        Identifier of the grant to be revoked.

        " } }, "GrantList": { "base": null, "refs": { "ListGrantsResponse$Grants": "

        A list of grants.

        " } }, "GrantListEntry": { "base": "

        Contains information about an entry in a list of grants.

        ", "refs": { "GrantList$member": null } }, "GrantNameType": { "base": null, "refs": { "CreateGrantRequest$Name": "

        A friendly name for identifying the grant. Use this value to prevent unintended creation of duplicate grants when retrying this request.

        When this value is absent, all CreateGrant requests result in a new grant with a unique GrantId even if all the supplied parameters are identical. This can result in unintended duplicates when you retry the CreateGrant request.

        When this value is present, you can retry a CreateGrant request with identical parameters; if the grant already exists, the original GrantId is returned without creating a new grant. Note that the returned grant token is unique with every CreateGrant request, even when a duplicate GrantId is returned. All grant tokens obtained in this way can be used interchangeably.

        ", "GrantListEntry$Name": "

        The friendly name that identifies the grant. If a name was provided in the CreateGrant request, that name is returned. Otherwise this value is null.

        " } }, "GrantOperation": { "base": null, "refs": { "GrantOperationList$member": null } }, "GrantOperationList": { "base": null, "refs": { "CreateGrantRequest$Operations": "

        A list of operations that the grant permits. The list can contain any combination of one or more of the following values:

        ", "GrantListEntry$Operations": "

        The list of operations permitted by the grant.

        " } }, "GrantTokenList": { "base": null, "refs": { "CreateGrantRequest$GrantTokens": "

        A list of grant tokens.

        For more information, see Grant Tokens in the AWS Key Management Service Developer Guide.

        ", "DecryptRequest$GrantTokens": "

        A list of grant tokens.

        For more information, see Grant Tokens in the AWS Key Management Service Developer Guide.

        ", "DescribeKeyRequest$GrantTokens": "

        A list of grant tokens.

        For more information, see Grant Tokens in the AWS Key Management Service Developer Guide.

        ", "EncryptRequest$GrantTokens": "

        A list of grant tokens.

        For more information, see Grant Tokens in the AWS Key Management Service Developer Guide.

        ", "GenerateDataKeyRequest$GrantTokens": "

        A list of grant tokens.

        For more information, see Grant Tokens in the AWS Key Management Service Developer Guide.

        ", "GenerateDataKeyWithoutPlaintextRequest$GrantTokens": "

        A list of grant tokens.

        For more information, see Grant Tokens in the AWS Key Management Service Developer Guide.

        ", "ReEncryptRequest$GrantTokens": "

        A list of grant tokens.

        For more information, see Grant Tokens in the AWS Key Management Service Developer Guide.

        " } }, "GrantTokenType": { "base": null, "refs": { "CreateGrantResponse$GrantToken": "

        The grant token.

        For more information, see Grant Tokens in the AWS Key Management Service Developer Guide.

        ", "GrantTokenList$member": null, "RetireGrantRequest$GrantToken": "

        Token that identifies the grant to be retired.

        " } }, "ImportKeyMaterialRequest": { "base": null, "refs": { } }, "ImportKeyMaterialResponse": { "base": null, "refs": { } }, "IncorrectKeyMaterialException": { "base": "

        The request was rejected because the provided key material is invalid or is not the same key material that was previously imported into this customer master key (CMK).

        ", "refs": { } }, "InvalidAliasNameException": { "base": "

        The request was rejected because the specified alias name is not valid.

        ", "refs": { } }, "InvalidArnException": { "base": "

        The request was rejected because a specified ARN was not valid.

        ", "refs": { } }, "InvalidCiphertextException": { "base": "

        The request was rejected because the specified ciphertext has been corrupted or is otherwise invalid.

        ", "refs": { } }, "InvalidGrantIdException": { "base": "

        The request was rejected because the specified GrantId is not valid.

        ", "refs": { } }, "InvalidGrantTokenException": { "base": "

        The request was rejected because the specified grant token is not valid.

        ", "refs": { } }, "InvalidImportTokenException": { "base": "

        The request was rejected because the provided import token is invalid or is associated with a different customer master key (CMK).

        ", "refs": { } }, "InvalidKeyUsageException": { "base": "

        The request was rejected because the specified KeySpec value is not valid.

        ", "refs": { } }, "InvalidMarkerException": { "base": "

        The request was rejected because the marker that specifies where pagination should next begin is not valid.

        ", "refs": { } }, "KMSInternalException": { "base": "

        The request was rejected because an internal exception occurred. The request can be retried.

        ", "refs": { } }, "KMSInvalidStateException": { "base": "

        The request was rejected because the state of the specified resource is not valid for this request.

        For more information about how key state affects the use of a CMK, see How Key State Affects Use of a Customer Master Key in the AWS Key Management Service Developer Guide.

        ", "refs": { } }, "KeyIdType": { "base": null, "refs": { "AliasListEntry$TargetKeyId": "

        String that contains the key identifier pointed to by the alias.

        ", "CancelKeyDeletionRequest$KeyId": "

        The unique identifier for the customer master key (CMK) for which to cancel deletion.

        To specify this value, use the unique key ID or the Amazon Resource Name (ARN) of the CMK. Examples:

        • Unique key ID: 1234abcd-12ab-34cd-56ef-1234567890ab

        • Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

        To obtain the unique key ID and key ARN for a given CMK, use ListKeys or DescribeKey.

        ", "CancelKeyDeletionResponse$KeyId": "

        The unique identifier of the master key for which deletion is canceled.

        ", "CreateAliasRequest$TargetKeyId": "

        An identifier of the key for which you are creating the alias. This value cannot be another alias but can be a globally unique identifier or a fully specified ARN to a key.

        • Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        • Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012

        ", "CreateGrantRequest$KeyId": "

        The unique identifier for the customer master key (CMK) that the grant applies to.

        To specify this value, use the globally unique key ID or the Amazon Resource Name (ARN) of the key. Examples:

        • Globally unique key ID: 12345678-1234-1234-1234-123456789012

        • Key ARN: arn:aws:kms:us-west-2:123456789012:key/12345678-1234-1234-1234-123456789012

        ", "DecryptResponse$KeyId": "

        ARN of the key used to perform the decryption. This value is returned if no errors are encountered during the operation.

        ", "DeleteImportedKeyMaterialRequest$KeyId": "

        The identifier of the CMK whose key material to delete. The CMK's Origin must be EXTERNAL.

        A valid identifier is the unique key ID or the Amazon Resource Name (ARN) of the CMK. Examples:

        • Unique key ID: 1234abcd-12ab-34cd-56ef-1234567890ab

        • Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

        ", "DescribeKeyRequest$KeyId": "

        A unique identifier for the customer master key. This value can be a globally unique identifier, a fully specified ARN to either an alias or a key, or an alias name prefixed by \"alias/\".

        • Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        • Alias ARN Example - arn:aws:kms:us-east-1:123456789012:alias/MyAliasName

        • Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012

        • Alias Name Example - alias/MyAliasName

        ", "DisableKeyRequest$KeyId": "

        A unique identifier for the CMK.

        Use the CMK's unique identifier or its Amazon Resource Name (ARN). For example:

        • Unique ID: 1234abcd-12ab-34cd-56ef-1234567890ab

        • ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

        ", "DisableKeyRotationRequest$KeyId": "

        A unique identifier for the customer master key. This value can be a globally unique identifier or the fully specified ARN to a key.

        • Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        • Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012

        ", "EnableKeyRequest$KeyId": "

        A unique identifier for the customer master key. This value can be a globally unique identifier or the fully specified ARN to a key.

        • Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        • Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012

        ", "EnableKeyRotationRequest$KeyId": "

        A unique identifier for the customer master key. This value can be a globally unique identifier or the fully specified ARN to a key.

        • Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        • Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012

        ", "EncryptRequest$KeyId": "

        A unique identifier for the customer master key. This value can be a globally unique identifier, a fully specified ARN to either an alias or a key, or an alias name prefixed by \"alias/\".

        • Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        • Alias ARN Example - arn:aws:kms:us-east-1:123456789012:alias/MyAliasName

        • Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012

        • Alias Name Example - alias/MyAliasName

        ", "EncryptResponse$KeyId": "

        The ID of the key used during encryption.

        ", "GenerateDataKeyRequest$KeyId": "

        The identifier of the CMK under which to generate and encrypt the data encryption key.

        A valid identifier is the unique key ID or the Amazon Resource Name (ARN) of the CMK, or the alias name or ARN of an alias that points to the CMK. Examples:

        • Unique key ID: 1234abcd-12ab-34cd-56ef-1234567890ab

        • CMK ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

        • Alias name: alias/ExampleAlias

        • Alias ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias

        ", "GenerateDataKeyResponse$KeyId": "

        The identifier of the CMK under which the data encryption key was generated and encrypted.

        ", "GenerateDataKeyWithoutPlaintextRequest$KeyId": "

        The identifier of the CMK under which to generate and encrypt the data encryption key.

        A valid identifier is the unique key ID or the Amazon Resource Name (ARN) of the CMK, or the alias name or ARN of an alias that points to the CMK. Examples:

        • Unique key ID: 1234abcd-12ab-34cd-56ef-1234567890ab

        • CMK ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

        • Alias name: alias/ExampleAlias

        • Alias ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias

        ", "GenerateDataKeyWithoutPlaintextResponse$KeyId": "

        The identifier of the CMK under which the data encryption key was generated and encrypted.

        ", "GetKeyPolicyRequest$KeyId": "

        A unique identifier for the customer master key. This value can be a globally unique identifier or the fully specified ARN to a key.

        • Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        • Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012

        ", "GetKeyRotationStatusRequest$KeyId": "

        A unique identifier for the customer master key. This value can be a globally unique identifier or the fully specified ARN to a key.

        • Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        • Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012

        ", "GetParametersForImportRequest$KeyId": "

        The identifier of the CMK into which you will import key material. The CMK's Origin must be EXTERNAL.

        A valid identifier is the unique key ID or the Amazon Resource Name (ARN) of the CMK. Examples:

        • Unique key ID: 1234abcd-12ab-34cd-56ef-1234567890ab

        • Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

        ", "GetParametersForImportResponse$KeyId": "

        The identifier of the CMK to use in a subsequent ImportKeyMaterial request. This is the same CMK specified in the GetParametersForImport request.

        ", "GrantListEntry$KeyId": "

        The unique identifier for the customer master key (CMK) to which the grant applies.

        ", "ImportKeyMaterialRequest$KeyId": "

        The identifier of the CMK to import the key material into. The CMK's Origin must be EXTERNAL.

        A valid identifier is the unique key ID or the Amazon Resource Name (ARN) of the CMK. Examples:

        • Unique key ID: 1234abcd-12ab-34cd-56ef-1234567890ab

        • Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

        ", "KeyListEntry$KeyId": "

        Unique identifier of the key.

        ", "KeyMetadata$KeyId": "

        The globally unique identifier for the CMK.

        ", "ListGrantsRequest$KeyId": "

        A unique identifier for the customer master key. This value can be a globally unique identifier or the fully specified ARN to a key.

        • Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        • Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012

        ", "ListKeyPoliciesRequest$KeyId": "

        A unique identifier for the customer master key. This value can be a globally unique identifier, a fully specified ARN to either an alias or a key, or an alias name prefixed by \"alias/\".

        • Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        • Alias ARN Example - arn:aws:kms:us-east-1:123456789012:alias/MyAliasName

        • Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012

        • Alias Name Example - alias/MyAliasName

        ", "PutKeyPolicyRequest$KeyId": "

        A unique identifier for the CMK.

        Use the CMK's unique identifier or its Amazon Resource Name (ARN). For example:

        • Unique ID: 1234abcd-12ab-34cd-56ef-1234567890ab

        • ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

        ", "ReEncryptRequest$DestinationKeyId": "

        A unique identifier for the customer master key used to re-encrypt the data. This value can be a globally unique identifier, a fully specified ARN to either an alias or a key, or an alias name prefixed by \"alias/\".

        • Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        • Alias ARN Example - arn:aws:kms:us-east-1:123456789012:alias/MyAliasName

        • Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012

        • Alias Name Example - alias/MyAliasName

        ", "ReEncryptResponse$SourceKeyId": "

        Unique identifier of the key used to originally encrypt the data.

        ", "ReEncryptResponse$KeyId": "

        Unique identifier of the key used to re-encrypt the data.

        ", "RetireGrantRequest$KeyId": "

        A unique identifier for the customer master key associated with the grant. This value can be a globally unique identifier or a fully specified ARN of the key.

        • Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        • Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012

        ", "RevokeGrantRequest$KeyId": "

        A unique identifier for the customer master key associated with the grant. This value can be a globally unique identifier or the fully specified ARN to a key.

        • Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        • Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012

        ", "ScheduleKeyDeletionRequest$KeyId": "

        The unique identifier for the customer master key (CMK) to delete.

        To specify this value, use the unique key ID or the Amazon Resource Name (ARN) of the CMK. Examples:

        • Unique key ID: 1234abcd-12ab-34cd-56ef-1234567890ab

        • Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

        To obtain the unique key ID and key ARN for a given CMK, use ListKeys or DescribeKey.

        ", "ScheduleKeyDeletionResponse$KeyId": "

        The unique identifier of the customer master key (CMK) for which deletion is scheduled.

        ", "UpdateAliasRequest$TargetKeyId": "

        Unique identifier of the customer master key to be mapped to the alias. This value can be a globally unique identifier or the fully specified ARN of a key.

        • Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        • Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012

        You can call ListAliases to verify that the alias is mapped to the correct TargetKeyId.

        ", "UpdateKeyDescriptionRequest$KeyId": "

        A unique identifier for the customer master key. This value can be a globally unique identifier or the fully specified ARN to a key.

        • Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

        • Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012

        " } }, "KeyList": { "base": null, "refs": { "ListKeysResponse$Keys": "

        A list of keys.

        " } }, "KeyListEntry": { "base": "

        Contains information about each entry in the key list.

        ", "refs": { "KeyList$member": null } }, "KeyMetadata": { "base": "

        Contains metadata about a customer master key (CMK).

        This data type is used as a response element for the CreateKey and DescribeKey operations.

        ", "refs": { "CreateKeyResponse$KeyMetadata": "

        Metadata associated with the CMK.

        ", "DescribeKeyResponse$KeyMetadata": "

        Metadata associated with the key.

        " } }, "KeyState": { "base": null, "refs": { "KeyMetadata$KeyState": "

        The state of the CMK.

        For more information about how key state affects the use of a CMK, see How Key State Affects the Use of a Customer Master Key in the AWS Key Management Service Developer Guide.

        " } }, "KeyUnavailableException": { "base": "

        The request was rejected because the specified CMK was not available. The request can be retried.

        ", "refs": { } }, "KeyUsageType": { "base": null, "refs": { "CreateKeyRequest$KeyUsage": "

        The intended use of the CMK.

        You can use CMKs only for symmetric encryption and decryption.

        ", "KeyMetadata$KeyUsage": "

        The cryptographic operations for which you can use the CMK. Currently the only allowed value is ENCRYPT_DECRYPT, which means you can use the CMK for the Encrypt and Decrypt operations.

        " } }, "LimitExceededException": { "base": "

        The request was rejected because a limit was exceeded. For more information, see Limits in the AWS Key Management Service Developer Guide.

        ", "refs": { } }, "LimitType": { "base": null, "refs": { "ListAliasesRequest$Limit": "

        When paginating results, specify the maximum number of items to return in the response. If additional items exist beyond the number you specify, the Truncated element in the response is set to true.

        This value is optional. If you include a value, it must be between 1 and 100, inclusive. If you do not include a value, it defaults to 50.

        ", "ListGrantsRequest$Limit": "

        When paginating results, specify the maximum number of items to return in the response. If additional items exist beyond the number you specify, the Truncated element in the response is set to true.

        This value is optional. If you include a value, it must be between 1 and 100, inclusive. If you do not include a value, it defaults to 50.

        ", "ListKeyPoliciesRequest$Limit": "

        When paginating results, specify the maximum number of items to return in the response. If additional items exist beyond the number you specify, the Truncated element in the response is set to true.

        This value is optional. If you include a value, it must be between 1 and 1000, inclusive. If you do not include a value, it defaults to 100.

        Currently only 1 policy can be attached to a key.

        ", "ListKeysRequest$Limit": "

        When paginating results, specify the maximum number of items to return in the response. If additional items exist beyond the number you specify, the Truncated element in the response is set to true.

        This value is optional. If you include a value, it must be between 1 and 1000, inclusive. If you do not include a value, it defaults to 100.

        ", "ListRetirableGrantsRequest$Limit": "

        When paginating results, specify the maximum number of items to return in the response. If additional items exist beyond the number you specify, the Truncated element in the response is set to true.

        This value is optional. If you include a value, it must be between 1 and 100, inclusive. If you do not include a value, it defaults to 50.

        " } }, "ListAliasesRequest": { "base": null, "refs": { } }, "ListAliasesResponse": { "base": null, "refs": { } }, "ListGrantsRequest": { "base": null, "refs": { } }, "ListGrantsResponse": { "base": null, "refs": { } }, "ListKeyPoliciesRequest": { "base": null, "refs": { } }, "ListKeyPoliciesResponse": { "base": null, "refs": { } }, "ListKeysRequest": { "base": null, "refs": { } }, "ListKeysResponse": { "base": null, "refs": { } }, "ListRetirableGrantsRequest": { "base": null, "refs": { } }, "MalformedPolicyDocumentException": { "base": "

        The request was rejected because the specified policy is not syntactically or semantically correct.

        ", "refs": { } }, "MarkerType": { "base": null, "refs": { "ListAliasesRequest$Marker": "

        Use this parameter only when paginating results and only in a subsequent request after you receive a response with truncated results. Set it to the value of NextMarker from the response you just received.

        ", "ListAliasesResponse$NextMarker": "

        When Truncated is true, this value is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListGrantsRequest$Marker": "

        Use this parameter only when paginating results and only in a subsequent request after you receive a response with truncated results. Set it to the value of NextMarker from the response you just received.

        ", "ListGrantsResponse$NextMarker": "

        When Truncated is true, this value is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListKeyPoliciesRequest$Marker": "

        Use this parameter only when paginating results and only in a subsequent request after you receive a response with truncated results. Set it to the value of NextMarker from the response you just received.

        ", "ListKeyPoliciesResponse$NextMarker": "

        When Truncated is true, this value is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListKeysRequest$Marker": "

        Use this parameter only when paginating results and only in a subsequent request after you receive a response with truncated results. Set it to the value of NextMarker from the response you just received.

        ", "ListKeysResponse$NextMarker": "

        When Truncated is true, this value is present and contains the value to use for the Marker parameter in a subsequent pagination request.

        ", "ListRetirableGrantsRequest$Marker": "

        Use this parameter only when paginating results and only in a subsequent request after you receive a response with truncated results. Set it to the value of NextMarker from the response you just received.

        " } }, "NotFoundException": { "base": "

        The request was rejected because the specified entity or resource could not be found.

        ", "refs": { } }, "NumberOfBytesType": { "base": null, "refs": { "GenerateDataKeyRequest$NumberOfBytes": "

        The length of the data encryption key in bytes. For example, use the value 64 to generate a 512-bit data key (64 bytes is 512 bits). For common key lengths (128-bit and 256-bit symmetric keys), we recommend that you use the KeySpec field instead of this one.

        ", "GenerateDataKeyWithoutPlaintextRequest$NumberOfBytes": "

        The length of the data encryption key in bytes. For example, use the value 64 to generate a 512-bit data key (64 bytes is 512 bits). For common key lengths (128-bit and 256-bit symmetric keys), we recommend that you use the KeySpec field instead of this one.

        ", "GenerateRandomRequest$NumberOfBytes": "

        The length of the byte string.

        " } }, "OriginType": { "base": null, "refs": { "CreateKeyRequest$Origin": "

        The source of the CMK's key material.

        The default is AWS_KMS, which means AWS KMS creates the key material. When this parameter is set to EXTERNAL, the request creates a CMK without key material so that you can import key material from your existing key management infrastructure. For more information about importing key material into AWS KMS, see Importing Key Material in the AWS Key Management Service Developer Guide.

        The CMK's Origin is immutable and is set when the CMK is created.

        ", "KeyMetadata$Origin": "

        The source of the CMK's key material. When this value is AWS_KMS, AWS KMS created the key material. When this value is EXTERNAL, the key material was imported from your existing key management infrastructure or the CMK lacks key material.

        " } }, "PendingWindowInDaysType": { "base": null, "refs": { "ScheduleKeyDeletionRequest$PendingWindowInDays": "

        The waiting period, specified in number of days. After the waiting period ends, AWS KMS deletes the customer master key (CMK).

        This value is optional. If you include a value, it must be between 7 and 30, inclusive. If you do not include a value, it defaults to 30.

        " } }, "PlaintextType": { "base": null, "refs": { "DecryptResponse$Plaintext": "

        Decrypted plaintext data. This value may not be returned if the customer master key is not available or if you didn't have permission to use it.

        ", "EncryptRequest$Plaintext": "

        Data to be encrypted.

        ", "GenerateDataKeyResponse$Plaintext": "

        The data encryption key. Use this data key for local encryption and decryption, then remove it from memory as soon as possible.

        ", "GenerateRandomResponse$Plaintext": "

        The unpredictable byte string.

        ", "GetParametersForImportResponse$PublicKey": "

        The public key to use to encrypt the key material before importing it with ImportKeyMaterial.

        " } }, "PolicyNameList": { "base": null, "refs": { "ListKeyPoliciesResponse$PolicyNames": "

        A list of policy names. Currently, there is only one policy and it is named \"Default\".

        " } }, "PolicyNameType": { "base": null, "refs": { "GetKeyPolicyRequest$PolicyName": "

        String that contains the name of the policy. Currently, this must be \"default\". Policy names can be discovered by calling ListKeyPolicies.

        ", "PolicyNameList$member": null, "PutKeyPolicyRequest$PolicyName": "

        The name of the key policy.

        This value must be default.

        " } }, "PolicyType": { "base": null, "refs": { "CreateKeyRequest$Policy": "

        The key policy to attach to the CMK.

        If you specify a policy and do not set BypassPolicyLockoutSafetyCheck to true, the policy must meet the following criteria:

        • It must allow the principal making the CreateKey request to make a subsequent PutKeyPolicy request on the CMK. This reduces the likelihood that the CMK becomes unmanageable. For more information, refer to the scenario in the Default Key Policy section in the AWS Key Management Service Developer Guide.

        • The principal(s) specified in the key policy must exist and be visible to AWS KMS. When you create a new AWS principal (for example, an IAM user or role), you might need to enforce a delay before specifying the new principal in a key policy because the new principal might not immediately be visible to AWS KMS. For more information, see Changes that I make are not always immediately visible in the IAM User Guide.

        If you do not specify a policy, AWS KMS attaches a default key policy to the CMK. For more information, see Default Key Policy in the AWS Key Management Service Developer Guide.

        The policy size limit is 32 KiB (32768 bytes).

        ", "GetKeyPolicyResponse$Policy": "

        A policy document in JSON format.

        ", "PutKeyPolicyRequest$Policy": "

        The key policy to attach to the CMK.

        If you do not set BypassPolicyLockoutSafetyCheck to true, the policy must meet the following criteria:

        • It must allow the principal making the PutKeyPolicy request to make a subsequent PutKeyPolicy request on the CMK. This reduces the likelihood that the CMK becomes unmanageable. For more information, refer to the scenario in the Default Key Policy section in the AWS Key Management Service Developer Guide.

        • The principal(s) specified in the key policy must exist and be visible to AWS KMS. When you create a new AWS principal (for example, an IAM user or role), you might need to enforce a delay before specifying the new principal in a key policy because the new principal might not immediately be visible to AWS KMS. For more information, see Changes that I make are not always immediately visible in the IAM User Guide.

        The policy size limit is 32 KiB (32768 bytes).

        " } }, "PrincipalIdType": { "base": null, "refs": { "CreateGrantRequest$GranteePrincipal": "

        The principal that is given permission to perform the operations that the grant permits.

        To specify the principal, use the Amazon Resource Name (ARN) of an AWS principal. Valid AWS principals include AWS accounts (root), IAM users, federated users, and assumed role users. For examples of the ARN syntax to use for specifying a principal, see AWS Identity and Access Management (IAM) in the Example ARNs section of the AWS General Reference.

        ", "CreateGrantRequest$RetiringPrincipal": "

        The principal that is given permission to retire the grant by using RetireGrant operation.

        To specify the principal, use the Amazon Resource Name (ARN) of an AWS principal. Valid AWS principals include AWS accounts (root), IAM users, federated users, and assumed role users. For examples of the ARN syntax to use for specifying a principal, see AWS Identity and Access Management (IAM) in the Example ARNs section of the AWS General Reference.

        ", "GrantListEntry$GranteePrincipal": "

        The principal that receives the grant's permissions.

        ", "GrantListEntry$RetiringPrincipal": "

        The principal that can retire the grant.

        ", "GrantListEntry$IssuingAccount": "

        The AWS account under which the grant was issued.

        ", "ListRetirableGrantsRequest$RetiringPrincipal": "

        The retiring principal for which to list grants.

        To specify the retiring principal, use the Amazon Resource Name (ARN) of an AWS principal. Valid AWS principals include AWS accounts (root), IAM users, federated users, and assumed role users. For examples of the ARN syntax for specifying a principal, see AWS Identity and Access Management (IAM) in the Example ARNs section of the Amazon Web Services General Reference.

        " } }, "PutKeyPolicyRequest": { "base": null, "refs": { } }, "ReEncryptRequest": { "base": null, "refs": { } }, "ReEncryptResponse": { "base": null, "refs": { } }, "RetireGrantRequest": { "base": null, "refs": { } }, "RevokeGrantRequest": { "base": null, "refs": { } }, "ScheduleKeyDeletionRequest": { "base": null, "refs": { } }, "ScheduleKeyDeletionResponse": { "base": null, "refs": { } }, "UnsupportedOperationException": { "base": "

        The request was rejected because a specified parameter is not supported or a specified resource is not valid for this operation.

        ", "refs": { } }, "UpdateAliasRequest": { "base": null, "refs": { } }, "UpdateKeyDescriptionRequest": { "base": null, "refs": { } }, "WrappingKeySpec": { "base": null, "refs": { "GetParametersForImportRequest$WrappingKeySpec": "

        The type of wrapping key (public key) to return in the response. Only 2048-bit RSA public keys are supported.

        " } } } } aws-sdk-go-1.4.22/models/apis/kms/2014-11-01/examples-1.json000066400000000000000000000000541300374646400224650ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/kms/2014-11-01/paginators-1.json000066400000000000000000000014111300374646400230140ustar00rootroot00000000000000{ "pagination": { "ListAliases": { "limit_key": "Limit", "input_token": "Marker", "output_token": "NextMarker", "more_results": "Truncated", "result_key": "Aliases" }, "ListGrants": { "limit_key": "Limit", "input_token": "Marker", "output_token": "NextMarker", "more_results": "Truncated", "result_key": "Grants" }, "ListKeyPolicies": { "limit_key": "Limit", "input_token": "Marker", "output_token": "NextMarker", "more_results": "Truncated", "result_key": "PolicyNames" }, "ListKeys": { "limit_key": "Limit", "input_token": "Marker", "output_token": "NextMarker", "more_results": "Truncated", "result_key": "Keys" } } } aws-sdk-go-1.4.22/models/apis/lambda/000077500000000000000000000000001300374646400172225ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/lambda/2014-11-11/000077500000000000000000000000001300374646400202465ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/lambda/2014-11-11/api-2.json000066400000000000000000000412551300374646400220600ustar00rootroot00000000000000{ "metadata":{ "apiVersion":"2014-11-11", "endpointPrefix":"lambda", "serviceFullName":"AWS Lambda", "signatureVersion":"v4", "protocol":"rest-json" }, "operations":{ "AddEventSource":{ "name":"AddEventSource", "http":{ "method":"POST", "requestUri":"/2014-11-13/event-source-mappings/" }, "input":{"shape":"AddEventSourceRequest"}, "output":{"shape":"EventSourceConfiguration"}, "errors":[ { "shape":"ServiceException", "error":{"httpStatusCode":500}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true } ] }, "DeleteFunction":{ "name":"DeleteFunction", "http":{ "method":"DELETE", "requestUri":"/2014-11-13/functions/{FunctionName}", "responseCode":204 }, "input":{"shape":"DeleteFunctionRequest"}, "errors":[ { "shape":"ServiceException", "error":{"httpStatusCode":500}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true } ] }, "GetEventSource":{ "name":"GetEventSource", "http":{ "method":"GET", "requestUri":"/2014-11-13/event-source-mappings/{UUID}", "responseCode":200 }, "input":{"shape":"GetEventSourceRequest"}, "output":{"shape":"EventSourceConfiguration"}, "errors":[ { "shape":"ServiceException", "error":{"httpStatusCode":500}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true } ] }, "GetFunction":{ "name":"GetFunction", "http":{ "method":"GET", "requestUri":"/2014-11-13/functions/{FunctionName}", "responseCode":200 }, "input":{"shape":"GetFunctionRequest"}, "output":{"shape":"GetFunctionResponse"}, "errors":[ { "shape":"ServiceException", "error":{"httpStatusCode":500}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true } ] }, "GetFunctionConfiguration":{ "name":"GetFunctionConfiguration", "http":{ "method":"GET", "requestUri":"/2014-11-13/functions/{FunctionName}/configuration", "responseCode":200 }, "input":{"shape":"GetFunctionConfigurationRequest"}, "output":{"shape":"FunctionConfiguration"}, "errors":[ { "shape":"ServiceException", "error":{"httpStatusCode":500}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true } ] }, "InvokeAsync":{ "name":"InvokeAsync", "http":{ "method":"POST", "requestUri":"/2014-11-13/functions/{FunctionName}/invoke-async/", "responseCode":202 }, "input":{"shape":"InvokeAsyncRequest"}, "output":{"shape":"InvokeAsyncResponse"}, "errors":[ { "shape":"ServiceException", "error":{"httpStatusCode":500}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidRequestContentException", "error":{"httpStatusCode":400}, "exception":true } ] }, "ListEventSources":{ "name":"ListEventSources", "http":{ "method":"GET", "requestUri":"/2014-11-13/event-source-mappings/", "responseCode":200 }, "input":{"shape":"ListEventSourcesRequest"}, "output":{"shape":"ListEventSourcesResponse"}, "errors":[ { "shape":"ServiceException", "error":{"httpStatusCode":500}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true } ] }, "ListFunctions":{ "name":"ListFunctions", "http":{ "method":"GET", "requestUri":"/2014-11-13/functions/", "responseCode":200 }, "input":{"shape":"ListFunctionsRequest"}, "output":{"shape":"ListFunctionsResponse"}, "errors":[ { "shape":"ServiceException", "error":{"httpStatusCode":500}, "exception":true } ] }, "RemoveEventSource":{ "name":"RemoveEventSource", "http":{ "method":"DELETE", "requestUri":"/2014-11-13/event-source-mappings/{UUID}", "responseCode":204 }, "input":{"shape":"RemoveEventSourceRequest"}, "errors":[ { "shape":"ServiceException", "error":{"httpStatusCode":500}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true } ] }, "UpdateFunctionConfiguration":{ "name":"UpdateFunctionConfiguration", "http":{ "method":"PUT", "requestUri":"/2014-11-13/functions/{FunctionName}/configuration", "responseCode":200 }, "input":{"shape":"UpdateFunctionConfigurationRequest"}, "output":{"shape":"FunctionConfiguration"}, "errors":[ { "shape":"ServiceException", "error":{"httpStatusCode":500}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true } ] }, "UploadFunction":{ "name":"UploadFunction", "http":{ "method":"PUT", "requestUri":"/2014-11-13/functions/{FunctionName}", "responseCode":201 }, "input":{"shape":"UploadFunctionRequest"}, "output":{"shape":"FunctionConfiguration"}, "errors":[ { "shape":"ServiceException", "error":{"httpStatusCode":500}, "exception":true }, { "shape":"InvalidParameterValueException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true } ] } }, "shapes":{ "AddEventSourceRequest":{ "type":"structure", "required":[ "EventSource", "FunctionName", "Role" ], "members":{ "EventSource":{"shape":"String"}, "FunctionName":{"shape":"FunctionName"}, "Role":{"shape":"RoleArn"}, "BatchSize":{"shape":"Integer"}, "Parameters":{"shape":"Map"} } }, "Blob":{ "type":"blob", "streaming":true }, "DeleteFunctionRequest":{ "type":"structure", "required":["FunctionName"], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" } } }, "Description":{ "type":"string", "min":0, "max":256 }, "EventSourceConfiguration":{ "type":"structure", "members":{ "UUID":{"shape":"String"}, "BatchSize":{"shape":"Integer"}, "EventSource":{"shape":"String"}, "FunctionName":{"shape":"FunctionName"}, "Parameters":{"shape":"Map"}, "Role":{"shape":"RoleArn"}, "LastModified":{"shape":"Timestamp"}, "IsActive":{"shape":"Boolean"}, "Status":{"shape":"String"} } }, "EventSourceList":{ "type":"list", "member":{"shape":"EventSourceConfiguration"} }, "FunctionArn":{ "type":"string", "pattern":"arn:aws:lambda:[a-z]{2}-[a-z]+-\\d{1}:\\d{12}:function:[a-zA-Z0-9-_]+(\\/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})?" }, "FunctionCodeLocation":{ "type":"structure", "members":{ "RepositoryType":{"shape":"String"}, "Location":{"shape":"String"} } }, "FunctionConfiguration":{ "type":"structure", "members":{ "FunctionName":{"shape":"FunctionName"}, "FunctionARN":{"shape":"FunctionArn"}, "ConfigurationId":{"shape":"String"}, "Runtime":{"shape":"Runtime"}, "Role":{"shape":"RoleArn"}, "Handler":{"shape":"Handler"}, "Mode":{"shape":"Mode"}, "CodeSize":{"shape":"Long"}, "Description":{"shape":"Description"}, "Timeout":{"shape":"Timeout"}, "MemorySize":{"shape":"MemorySize"}, "LastModified":{"shape":"Timestamp"} } }, "FunctionList":{ "type":"list", "member":{"shape":"FunctionConfiguration"} }, "FunctionName":{ "type":"string", "min":1, "max":64, "pattern":"[a-zA-Z0-9-_]+" }, "GetEventSourceRequest":{ "type":"structure", "required":["UUID"], "members":{ "UUID":{ "shape":"String", "location":"uri", "locationName":"UUID" } } }, "GetFunctionConfigurationRequest":{ "type":"structure", "required":["FunctionName"], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" } } }, "GetFunctionRequest":{ "type":"structure", "required":["FunctionName"], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" } } }, "GetFunctionResponse":{ "type":"structure", "members":{ "Configuration":{"shape":"FunctionConfiguration"}, "Code":{"shape":"FunctionCodeLocation"} } }, "Handler":{ "type":"string", "pattern":"[a-zA-Z0-9./\\-_]+" }, "HttpStatus":{"type":"integer"}, "Integer":{"type":"integer"}, "InvalidParameterValueException":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "message":{"shape":"String"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRequestContentException":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "message":{"shape":"String"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvokeAsyncRequest":{ "type":"structure", "required":[ "FunctionName", "InvokeArgs" ], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" }, "InvokeArgs":{"shape":"Blob"} }, "payload":"InvokeArgs" }, "InvokeAsyncResponse":{ "type":"structure", "members":{ "Status":{ "shape":"HttpStatus", "location":"statusCode" } } }, "ListEventSourcesRequest":{ "type":"structure", "members":{ "EventSourceArn":{ "shape":"String", "location":"querystring", "locationName":"EventSource" }, "FunctionName":{ "shape":"FunctionName", "location":"querystring", "locationName":"FunctionName" }, "Marker":{ "shape":"String", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"MaxListItems", "location":"querystring", "locationName":"MaxItems" } } }, "ListEventSourcesResponse":{ "type":"structure", "members":{ "NextMarker":{"shape":"String"}, "EventSources":{"shape":"EventSourceList"} } }, "ListFunctionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"String", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"MaxListItems", "location":"querystring", "locationName":"MaxItems" } } }, "ListFunctionsResponse":{ "type":"structure", "members":{ "NextMarker":{"shape":"String"}, "Functions":{"shape":"FunctionList"} } }, "Long":{"type":"long"}, "Map":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"String"} }, "MaxListItems":{ "type":"integer", "min":1, "max":10000 }, "MemorySize":{ "type":"integer", "min":128, "max":1024 }, "Mode":{ "type":"string", "enum":["event"] }, "RemoveEventSourceRequest":{ "type":"structure", "required":["UUID"], "members":{ "UUID":{ "shape":"String", "location":"uri", "locationName":"UUID" } } }, "ResourceNotFoundException":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "Message":{"shape":"String"} }, "error":{"httpStatusCode":404}, "exception":true }, "RoleArn":{ "type":"string", "pattern":"arn:aws:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+" }, "Runtime":{ "type":"string", "enum":["nodejs"] }, "ServiceException":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "Message":{"shape":"String"} }, "error":{"httpStatusCode":500}, "exception":true }, "String":{"type":"string"}, "Timeout":{ "type":"integer", "min":1, "max":60 }, "Timestamp":{"type":"string"}, "UpdateFunctionConfigurationRequest":{ "type":"structure", "required":["FunctionName"], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" }, "Role":{ "shape":"RoleArn", "location":"querystring", "locationName":"Role" }, "Handler":{ "shape":"Handler", "location":"querystring", "locationName":"Handler" }, "Description":{ "shape":"Description", "location":"querystring", "locationName":"Description" }, "Timeout":{ "shape":"Timeout", "location":"querystring", "locationName":"Timeout" }, "MemorySize":{ "shape":"MemorySize", "location":"querystring", "locationName":"MemorySize" } } }, "UploadFunctionRequest":{ "type":"structure", "required":[ "FunctionName", "FunctionZip", "Runtime", "Role", "Handler", "Mode" ], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" }, "FunctionZip":{"shape":"Blob"}, "Runtime":{ "shape":"Runtime", "location":"querystring", "locationName":"Runtime" }, "Role":{ "shape":"RoleArn", "location":"querystring", "locationName":"Role" }, "Handler":{ "shape":"Handler", "location":"querystring", "locationName":"Handler" }, "Mode":{ "shape":"Mode", "location":"querystring", "locationName":"Mode" }, "Description":{ "shape":"Description", "location":"querystring", "locationName":"Description" }, "Timeout":{ "shape":"Timeout", "location":"querystring", "locationName":"Timeout" }, "MemorySize":{ "shape":"MemorySize", "location":"querystring", "locationName":"MemorySize" } }, "payload":"FunctionZip" }, "Boolean":{"type":"boolean"} } } aws-sdk-go-1.4.22/models/apis/lambda/2014-11-11/docs-2.json000066400000000000000000000502741300374646400222400ustar00rootroot00000000000000{ "operations": { "AddEventSource": "

        Identifies a stream as an event source for an AWS Lambda function. It can be either an Amazon Kinesis stream or a Amazon DynamoDB stream. AWS Lambda invokes the specified function when records are posted to the stream.

        This is the pull model, where AWS Lambda invokes the function. For more information, go to AWS Lambda: How it Works in the AWS Lambda Developer Guide.

        This association between an Amazon Kinesis stream and an AWS Lambda function is called the event source mapping. You provide the configuration information (for example, which stream to read from and which AWS Lambda function to invoke) for the event source mapping in the request body.

        Each event source, such as a Kinesis stream, can only be associated with one AWS Lambda function. If you call AddEventSource for an event source that is already mapped to another AWS Lambda function, the existing mapping is updated to call the new function instead of the old one.

        This operation requires permission for the iam:PassRole action for the IAM role. It also requires permission for the lambda:AddEventSource action.

        ", "DeleteFunction": "

        Deletes the specified Lambda function code and configuration.

        This operation requires permission for the lambda:DeleteFunction action.

        ", "GetEventSource": "

        Returns configuration information for the specified event source mapping (see AddEventSource).

        This operation requires permission for the lambda:GetEventSource action.

        ", "GetFunction": "

        Returns the configuration information of the Lambda function and a presigned URL link to the .zip file you uploaded with UploadFunction so you can download the .zip file. Note that the URL is valid for up to 10 minutes. The configuration information is the same information you provided as parameters when uploading the function.

        This operation requires permission for the lambda:GetFunction action.

        ", "GetFunctionConfiguration": "

        Returns the configuration information of the Lambda function. This the same information you provided as parameters when uploading the function by using UploadFunction.

        This operation requires permission for the lambda:GetFunctionConfiguration operation.

        ", "InvokeAsync": "

        Submits an invocation request to AWS Lambda. Upon receiving the request, Lambda executes the specified function asynchronously. To see the logs generated by the Lambda function execution, see the CloudWatch logs console.

        This operation requires permission for the lambda:InvokeFunction action.

        ", "ListEventSources": "

        Returns a list of event source mappings you created using the AddEventSource (see AddEventSource), where you identify a stream as event source. This list does not include Amazon S3 event sources.

        For each mapping, the API returns configuration information. You can optionally specify filters to retrieve specific event source mappings.

        This operation requires permission for the lambda:ListEventSources action.

        ", "ListFunctions": "

        Returns a list of your Lambda functions. For each function, the response includes the function configuration information. You must use GetFunction to retrieve the code for your function.

        This operation requires permission for the lambda:ListFunctions action.

        ", "RemoveEventSource": "

        Removes an event source mapping. This means AWS Lambda will no longer invoke the function for events in the associated source.

        This operation requires permission for the lambda:RemoveEventSource action.

        ", "UpdateFunctionConfiguration": "

        Updates the configuration parameters for the specified Lambda function by using the values provided in the request. You provide only the parameters you want to change. This operation must only be used on an existing Lambda function and cannot be used to update the function's code.

        This operation requires permission for the lambda:UpdateFunctionConfiguration action.

        ", "UploadFunction": "

        Creates a new Lambda function or updates an existing function. The function metadata is created from the request parameters, and the code for the function is provided by a .zip file in the request body. If the function name already exists, the existing Lambda function is updated with the new code and metadata.

        This operation requires permission for the lambda:UploadFunction action.

        " }, "service": "AWS Lambda

        Overview

        This is the AWS Lambda API Reference. The AWS Lambda Developer Guide provides additional information. For the service overview, go to What is AWS Lambda, and for information about how the service works, go to AWS LambdaL How it Works in the AWS Lambda Developer Guide.

        ", "shapes": { "AddEventSourceRequest": { "base": null, "refs": { } }, "Blob": { "base": null, "refs": { "InvokeAsyncRequest$InvokeArgs": "

        JSON that you want to provide to your Lambda function as input.

        ", "UploadFunctionRequest$FunctionZip": "

        A .zip file containing your packaged source code. For more information about creating a .zip file, go to AWS LambdaL How it Works in the AWS Lambda Developer Guide.

        " } }, "DeleteFunctionRequest": { "base": null, "refs": { } }, "Description": { "base": null, "refs": { "FunctionConfiguration$Description": "

        The user-provided description.

        ", "UpdateFunctionConfigurationRequest$Description": "

        A short user-defined function description. Lambda does not use this value. Assign a meaningful description as you see fit.

        ", "UploadFunctionRequest$Description": "

        A short, user-defined function description. Lambda does not use this value. Assign a meaningful description as you see fit.

        " } }, "EventSourceConfiguration": { "base": "

        Describes mapping between an Amazon Kinesis stream and a Lambda function.

        ", "refs": { "EventSourceList$member": null } }, "EventSourceList": { "base": null, "refs": { "ListEventSourcesResponse$EventSources": "

        An arrary of EventSourceConfiguration objects.

        " } }, "FunctionArn": { "base": null, "refs": { "FunctionConfiguration$FunctionARN": "

        The Amazon Resource Name (ARN) assigned to the function.

        " } }, "FunctionCodeLocation": { "base": "

        The object for the Lambda function location.

        ", "refs": { "GetFunctionResponse$Code": null } }, "FunctionConfiguration": { "base": "

        A complex type that describes function metadata.

        ", "refs": { "FunctionList$member": null, "GetFunctionResponse$Configuration": null } }, "FunctionList": { "base": null, "refs": { "ListFunctionsResponse$Functions": "

        A list of Lambda functions.

        " } }, "FunctionName": { "base": null, "refs": { "AddEventSourceRequest$FunctionName": "

        The Lambda function to invoke when AWS Lambda detects an event on the stream.

        ", "DeleteFunctionRequest$FunctionName": "

        The Lambda function to delete.

        ", "EventSourceConfiguration$FunctionName": "

        The Lambda function to invoke when AWS Lambda detects an event on the stream.

        ", "FunctionConfiguration$FunctionName": "

        The name of the function.

        ", "GetFunctionConfigurationRequest$FunctionName": "

        The name of the Lambda function for which you want to retrieve the configuration information.

        ", "GetFunctionRequest$FunctionName": "

        The Lambda function name.

        ", "InvokeAsyncRequest$FunctionName": "

        The Lambda function name.

        ", "ListEventSourcesRequest$FunctionName": "

        The name of the AWS Lambda function.

        ", "UpdateFunctionConfigurationRequest$FunctionName": "

        The name of the Lambda function.

        ", "UploadFunctionRequest$FunctionName": "

        The name you want to assign to the function you are uploading. The function names appear in the console and are returned in the ListFunctions API. Function names are used to specify functions to other AWS Lambda APIs, such as InvokeAsync.

        " } }, "GetEventSourceRequest": { "base": null, "refs": { } }, "GetFunctionConfigurationRequest": { "base": null, "refs": { } }, "GetFunctionRequest": { "base": null, "refs": { } }, "GetFunctionResponse": { "base": "

        This response contains the object for AWS Lambda function location (see API_FunctionCodeLocation

        ", "refs": { } }, "Handler": { "base": null, "refs": { "FunctionConfiguration$Handler": "

        The function Lambda calls to begin executing your function.

        ", "UpdateFunctionConfigurationRequest$Handler": "

        The function that Lambda calls to begin executing your function. For Node.js, it is the module-name.export value in your function.

        ", "UploadFunctionRequest$Handler": "

        The function that Lambda calls to begin execution. For Node.js, it is the module-name.export value in your function.

        " } }, "HttpStatus": { "base": null, "refs": { "InvokeAsyncResponse$Status": "

        It will be 202 upon success.

        " } }, "Integer": { "base": null, "refs": { "AddEventSourceRequest$BatchSize": "

        The largest number of records that AWS Lambda will give to your function in a single event. The default is 100 records.

        ", "EventSourceConfiguration$BatchSize": "

        The largest number of records that AWS Lambda will POST in the invocation request to your function.

        " } }, "InvalidParameterValueException": { "base": "

        One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda to assume in the UploadFunction or the UpdateFunctionConfiguration API, that AWS Lambda is unable to assume you will get this exception.

        ", "refs": { } }, "InvalidRequestContentException": { "base": "

        The request body could not be parsed as JSON.

        ", "refs": { } }, "InvokeAsyncRequest": { "base": null, "refs": { } }, "InvokeAsyncResponse": { "base": "

        Upon success, it returns empty response. Otherwise, throws an exception.

        ", "refs": { } }, "ListEventSourcesRequest": { "base": null, "refs": { } }, "ListEventSourcesResponse": { "base": "

        Contains a list of event sources (see API_EventSourceConfiguration)

        ", "refs": { } }, "ListFunctionsRequest": { "base": null, "refs": { } }, "ListFunctionsResponse": { "base": "

        Contains a list of AWS Lambda function configurations (see API_FunctionConfiguration.

        ", "refs": { } }, "Long": { "base": null, "refs": { "FunctionConfiguration$CodeSize": "

        The size, in bytes, of the function .zip file you uploaded.

        " } }, "Map": { "base": null, "refs": { "AddEventSourceRequest$Parameters": "

        A map (key-value pairs) defining the configuration for AWS Lambda to use when reading the event source. Currently, AWS Lambda supports only the InitialPositionInStream key. The valid values are: \"TRIM_HORIZON\" and \"LATEST\". The default value is \"TRIM_HORIZON\". For more information, go to ShardIteratorType in the Amazon Kinesis Service API Reference.

        ", "EventSourceConfiguration$Parameters": "

        The map (key-value pairs) defining the configuration for AWS Lambda to use when reading the event source.

        " } }, "MaxListItems": { "base": null, "refs": { "ListEventSourcesRequest$MaxItems": "

        Optional integer. Specifies the maximum number of event sources to return in response. This value must be greater than 0.

        ", "ListFunctionsRequest$MaxItems": "

        Optional integer. Specifies the maximum number of AWS Lambda functions to return in response. This parameter value must be greater than 0.

        " } }, "MemorySize": { "base": null, "refs": { "FunctionConfiguration$MemorySize": "

        The memory size, in MB, you configured for the function. Must be a multiple of 64 MB.

        ", "UpdateFunctionConfigurationRequest$MemorySize": "

        The amount of memory, in MB, your Lambda function is given. Lambda uses this memory size to infer the amount of CPU allocated to your function. Your function use-case determines your CPU and memory requirements. For example, a database operation might need less memory compared to an image processing function. The default value is 128 MB. The value must be a multiple of 64 MB.

        ", "UploadFunctionRequest$MemorySize": "

        The amount of memory, in MB, your Lambda function is given. Lambda uses this memory size to infer the amount of CPU allocated to your function. Your function use-case determines your CPU and memory requirements. For example, database operation might need less memory compared to image processing function. The default value is 128 MB. The value must be a multiple of 64 MB.

        " } }, "Mode": { "base": null, "refs": { "FunctionConfiguration$Mode": "

        The type of the Lambda function you uploaded.

        ", "UploadFunctionRequest$Mode": "

        How the Lambda function will be invoked. Lambda supports only the \"event\" mode.

        " } }, "RemoveEventSourceRequest": { "base": null, "refs": { } }, "ResourceNotFoundException": { "base": "

        The function or the event source specified in the request does not exist.

        ", "refs": { } }, "RoleArn": { "base": null, "refs": { "AddEventSourceRequest$Role": "

        The ARN of the IAM role (invocation role) that AWS Lambda can assume to read from the stream and invoke the function.

        ", "EventSourceConfiguration$Role": "

        The ARN of the IAM role (invocation role) that AWS Lambda can assume to read from the stream and invoke the function.

        ", "FunctionConfiguration$Role": "

        The Amazon Resource Name (ARN) of the IAM role that Lambda assumes when it executes your function to access any other Amazon Web Services (AWS) resources.

        ", "UpdateFunctionConfigurationRequest$Role": "

        The Amazon Resource Name (ARN) of the IAM role that Lambda will assume when it executes your function.

        ", "UploadFunctionRequest$Role": "

        The Amazon Resource Name (ARN) of the IAM role that Lambda assumes when it executes your function to access any other Amazon Web Services (AWS) resources.

        " } }, "Runtime": { "base": null, "refs": { "FunctionConfiguration$Runtime": "

        The runtime environment for the Lambda function.

        ", "UploadFunctionRequest$Runtime": "

        The runtime environment for the Lambda function you are uploading. Currently, Lambda supports only \"nodejs\" as the runtime.

        " } }, "ServiceException": { "base": "

        The AWS Lambda service encountered an internal error.

        ", "refs": { } }, "String": { "base": null, "refs": { "AddEventSourceRequest$EventSource": "

        The Amazon Resource Name (ARN) of the Amazon Kinesis stream that is the event source. Any record added to this stream causes AWS Lambda to invoke your Lambda function. AWS Lambda POSTs the Amazon Kinesis event, containing records, to your Lambda function as JSON.

        ", "EventSourceConfiguration$UUID": "

        The AWS Lambda assigned opaque identifier for the mapping.

        ", "EventSourceConfiguration$EventSource": "

        The Amazon Resource Name (ARN) of the Amazon Kinesis stream that is the source of events.

        ", "EventSourceConfiguration$Status": "

        The description of the health of the event source mapping. Valid values are: \"PENDING\", \"OK\", and \"PROBLEM:message\". Initially this staus is \"PENDING\". When AWS Lambda begins processing events, it changes the status to \"OK\".

        ", "FunctionCodeLocation$RepositoryType": "

        The repository from which you can download the function.

        ", "FunctionCodeLocation$Location": "

        The presigned URL you can use to download the function's .zip file that you previously uploaded. The URL is valid for up to 10 minutes.

        ", "FunctionConfiguration$ConfigurationId": "

        A Lambda-assigned unique identifier for the current function code and related configuration.

        ", "GetEventSourceRequest$UUID": "

        The AWS Lambda assigned ID of the event source mapping.

        ", "InvalidParameterValueException$Type": null, "InvalidParameterValueException$message": null, "InvalidRequestContentException$Type": null, "InvalidRequestContentException$message": null, "ListEventSourcesRequest$EventSourceArn": "

        The Amazon Resource Name (ARN) of the Amazon Kinesis stream.

        ", "ListEventSourcesRequest$Marker": "

        Optional string. An opaque pagination token returned from a previous ListEventSources operation. If present, specifies to continue the list from where the returning call left off.

        ", "ListEventSourcesResponse$NextMarker": "

        A string, present if there are more event source mappings.

        ", "ListFunctionsRequest$Marker": "

        Optional string. An opaque pagination token returned from a previous ListFunctions operation. If present, indicates where to continue the listing.

        ", "ListFunctionsResponse$NextMarker": "

        A string, present if there are more functions.

        ", "Map$key": null, "Map$value": null, "RemoveEventSourceRequest$UUID": "

        The event source mapping ID.

        ", "ResourceNotFoundException$Type": null, "ResourceNotFoundException$Message": null, "ServiceException$Type": null, "ServiceException$Message": null } }, "Timeout": { "base": null, "refs": { "FunctionConfiguration$Timeout": "

        The function execution time at which Lambda should terminate the function. Because the execution time has cost implications, we recommend you set this value based on your expected execution time. The default is 3 seconds.

        ", "UpdateFunctionConfigurationRequest$Timeout": "

        The function execution time at which Lambda should terminate the function. Because the execution time has cost implications, we recommend you set this value based on your expected execution time. The default is 3 seconds.

        ", "UploadFunctionRequest$Timeout": "

        The function execution time at which Lambda should terminate the function. Because the execution time has cost implications, we recommend you set this value based on your expected execution time. The default is 3 seconds.

        " } }, "Timestamp": { "base": null, "refs": { "EventSourceConfiguration$LastModified": "

        The UTC time string indicating the last time the event mapping was updated.

        ", "FunctionConfiguration$LastModified": "

        The timestamp of the last time you updated the function.

        " } }, "UpdateFunctionConfigurationRequest": { "base": null, "refs": { } }, "UploadFunctionRequest": { "base": null, "refs": { } }, "Boolean": { "base": null, "refs": { "EventSourceConfiguration$IsActive": "

        Indicates whether the event source mapping is currently honored. Events are only processes if IsActive is true.

        " } } } } aws-sdk-go-1.4.22/models/apis/lambda/2014-11-11/paginators-1.json000066400000000000000000000005371300374646400234530ustar00rootroot00000000000000{ "pagination": { "ListEventSources": { "input_token": "Marker", "output_token": "NextMarker", "limit_key": "MaxItems", "result_key": "EventSources" }, "ListFunctions": { "input_token": "Marker", "output_token": "NextMarker", "limit_key": "MaxItems", "result_key": "Functions" } } } aws-sdk-go-1.4.22/models/apis/lambda/2015-03-31/000077500000000000000000000000001300374646400202525ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/lambda/2015-03-31/api-2.json000066400000000000000000001103431300374646400220570ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-03-31", "endpointPrefix":"lambda", "protocol":"rest-json", "serviceFullName":"AWS Lambda", "signatureVersion":"v4" }, "operations":{ "AddPermission":{ "name":"AddPermission", "http":{ "method":"POST", "requestUri":"/2015-03-31/functions/{FunctionName}/policy", "responseCode":201 }, "input":{"shape":"AddPermissionRequest"}, "output":{"shape":"AddPermissionResponse"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ResourceConflictException"}, {"shape":"InvalidParameterValueException"}, {"shape":"PolicyLengthExceededException"}, {"shape":"TooManyRequestsException"} ] }, "CreateAlias":{ "name":"CreateAlias", "http":{ "method":"POST", "requestUri":"/2015-03-31/functions/{FunctionName}/aliases", "responseCode":201 }, "input":{"shape":"CreateAliasRequest"}, "output":{"shape":"AliasConfiguration"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ResourceConflictException"}, {"shape":"InvalidParameterValueException"}, {"shape":"TooManyRequestsException"} ] }, "CreateEventSourceMapping":{ "name":"CreateEventSourceMapping", "http":{ "method":"POST", "requestUri":"/2015-03-31/event-source-mappings/", "responseCode":202 }, "input":{"shape":"CreateEventSourceMappingRequest"}, "output":{"shape":"EventSourceMappingConfiguration"}, "errors":[ {"shape":"ServiceException"}, {"shape":"InvalidParameterValueException"}, {"shape":"ResourceConflictException"}, {"shape":"TooManyRequestsException"}, {"shape":"ResourceNotFoundException"} ] }, "CreateFunction":{ "name":"CreateFunction", "http":{ "method":"POST", "requestUri":"/2015-03-31/functions", "responseCode":201 }, "input":{"shape":"CreateFunctionRequest"}, "output":{"shape":"FunctionConfiguration"}, "errors":[ {"shape":"ServiceException"}, {"shape":"InvalidParameterValueException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ResourceConflictException"}, {"shape":"TooManyRequestsException"}, {"shape":"CodeStorageExceededException"} ] }, "DeleteAlias":{ "name":"DeleteAlias", "http":{ "method":"DELETE", "requestUri":"/2015-03-31/functions/{FunctionName}/aliases/{Name}", "responseCode":204 }, "input":{"shape":"DeleteAliasRequest"}, "errors":[ {"shape":"ServiceException"}, {"shape":"InvalidParameterValueException"}, {"shape":"TooManyRequestsException"} ] }, "DeleteEventSourceMapping":{ "name":"DeleteEventSourceMapping", "http":{ "method":"DELETE", "requestUri":"/2015-03-31/event-source-mappings/{UUID}", "responseCode":202 }, "input":{"shape":"DeleteEventSourceMappingRequest"}, "output":{"shape":"EventSourceMappingConfiguration"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterValueException"}, {"shape":"TooManyRequestsException"} ] }, "DeleteFunction":{ "name":"DeleteFunction", "http":{ "method":"DELETE", "requestUri":"/2015-03-31/functions/{FunctionName}", "responseCode":204 }, "input":{"shape":"DeleteFunctionRequest"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"TooManyRequestsException"}, {"shape":"InvalidParameterValueException"}, {"shape":"ResourceConflictException"} ] }, "GetAlias":{ "name":"GetAlias", "http":{ "method":"GET", "requestUri":"/2015-03-31/functions/{FunctionName}/aliases/{Name}", "responseCode":200 }, "input":{"shape":"GetAliasRequest"}, "output":{"shape":"AliasConfiguration"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterValueException"}, {"shape":"TooManyRequestsException"} ] }, "GetEventSourceMapping":{ "name":"GetEventSourceMapping", "http":{ "method":"GET", "requestUri":"/2015-03-31/event-source-mappings/{UUID}", "responseCode":200 }, "input":{"shape":"GetEventSourceMappingRequest"}, "output":{"shape":"EventSourceMappingConfiguration"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterValueException"}, {"shape":"TooManyRequestsException"} ] }, "GetFunction":{ "name":"GetFunction", "http":{ "method":"GET", "requestUri":"/2015-03-31/functions/{FunctionName}", "responseCode":200 }, "input":{"shape":"GetFunctionRequest"}, "output":{"shape":"GetFunctionResponse"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"TooManyRequestsException"}, {"shape":"InvalidParameterValueException"} ] }, "GetFunctionConfiguration":{ "name":"GetFunctionConfiguration", "http":{ "method":"GET", "requestUri":"/2015-03-31/functions/{FunctionName}/configuration", "responseCode":200 }, "input":{"shape":"GetFunctionConfigurationRequest"}, "output":{"shape":"FunctionConfiguration"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"TooManyRequestsException"}, {"shape":"InvalidParameterValueException"} ] }, "GetPolicy":{ "name":"GetPolicy", "http":{ "method":"GET", "requestUri":"/2015-03-31/functions/{FunctionName}/policy", "responseCode":200 }, "input":{"shape":"GetPolicyRequest"}, "output":{"shape":"GetPolicyResponse"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"TooManyRequestsException"}, {"shape":"InvalidParameterValueException"} ] }, "Invoke":{ "name":"Invoke", "http":{ "method":"POST", "requestUri":"/2015-03-31/functions/{FunctionName}/invocations" }, "input":{"shape":"InvocationRequest"}, "output":{"shape":"InvocationResponse"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestContentException"}, {"shape":"RequestTooLargeException"}, {"shape":"UnsupportedMediaTypeException"}, {"shape":"TooManyRequestsException"}, {"shape":"InvalidParameterValueException"}, {"shape":"EC2UnexpectedException"}, {"shape":"SubnetIPAddressLimitReachedException"}, {"shape":"ENILimitReachedException"}, {"shape":"EC2ThrottledException"}, {"shape":"EC2AccessDeniedException"}, {"shape":"InvalidSubnetIDException"}, {"shape":"InvalidSecurityGroupIDException"}, {"shape":"InvalidZipFileException"} ] }, "InvokeAsync":{ "name":"InvokeAsync", "http":{ "method":"POST", "requestUri":"/2014-11-13/functions/{FunctionName}/invoke-async/", "responseCode":202 }, "input":{"shape":"InvokeAsyncRequest"}, "output":{"shape":"InvokeAsyncResponse"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestContentException"} ], "deprecated":true }, "ListAliases":{ "name":"ListAliases", "http":{ "method":"GET", "requestUri":"/2015-03-31/functions/{FunctionName}/aliases", "responseCode":200 }, "input":{"shape":"ListAliasesRequest"}, "output":{"shape":"ListAliasesResponse"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterValueException"}, {"shape":"TooManyRequestsException"} ] }, "ListEventSourceMappings":{ "name":"ListEventSourceMappings", "http":{ "method":"GET", "requestUri":"/2015-03-31/event-source-mappings/", "responseCode":200 }, "input":{"shape":"ListEventSourceMappingsRequest"}, "output":{"shape":"ListEventSourceMappingsResponse"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterValueException"}, {"shape":"TooManyRequestsException"} ] }, "ListFunctions":{ "name":"ListFunctions", "http":{ "method":"GET", "requestUri":"/2015-03-31/functions/", "responseCode":200 }, "input":{"shape":"ListFunctionsRequest"}, "output":{"shape":"ListFunctionsResponse"}, "errors":[ {"shape":"ServiceException"}, {"shape":"TooManyRequestsException"} ] }, "ListVersionsByFunction":{ "name":"ListVersionsByFunction", "http":{ "method":"GET", "requestUri":"/2015-03-31/functions/{FunctionName}/versions", "responseCode":200 }, "input":{"shape":"ListVersionsByFunctionRequest"}, "output":{"shape":"ListVersionsByFunctionResponse"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterValueException"}, {"shape":"TooManyRequestsException"} ] }, "PublishVersion":{ "name":"PublishVersion", "http":{ "method":"POST", "requestUri":"/2015-03-31/functions/{FunctionName}/versions", "responseCode":201 }, "input":{"shape":"PublishVersionRequest"}, "output":{"shape":"FunctionConfiguration"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterValueException"}, {"shape":"TooManyRequestsException"}, {"shape":"CodeStorageExceededException"} ] }, "RemovePermission":{ "name":"RemovePermission", "http":{ "method":"DELETE", "requestUri":"/2015-03-31/functions/{FunctionName}/policy/{StatementId}", "responseCode":204 }, "input":{"shape":"RemovePermissionRequest"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterValueException"}, {"shape":"TooManyRequestsException"} ] }, "UpdateAlias":{ "name":"UpdateAlias", "http":{ "method":"PUT", "requestUri":"/2015-03-31/functions/{FunctionName}/aliases/{Name}", "responseCode":200 }, "input":{"shape":"UpdateAliasRequest"}, "output":{"shape":"AliasConfiguration"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterValueException"}, {"shape":"TooManyRequestsException"} ] }, "UpdateEventSourceMapping":{ "name":"UpdateEventSourceMapping", "http":{ "method":"PUT", "requestUri":"/2015-03-31/event-source-mappings/{UUID}", "responseCode":202 }, "input":{"shape":"UpdateEventSourceMappingRequest"}, "output":{"shape":"EventSourceMappingConfiguration"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterValueException"}, {"shape":"TooManyRequestsException"}, {"shape":"ResourceConflictException"} ] }, "UpdateFunctionCode":{ "name":"UpdateFunctionCode", "http":{ "method":"PUT", "requestUri":"/2015-03-31/functions/{FunctionName}/code", "responseCode":200 }, "input":{"shape":"UpdateFunctionCodeRequest"}, "output":{"shape":"FunctionConfiguration"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterValueException"}, {"shape":"TooManyRequestsException"}, {"shape":"CodeStorageExceededException"} ] }, "UpdateFunctionConfiguration":{ "name":"UpdateFunctionConfiguration", "http":{ "method":"PUT", "requestUri":"/2015-03-31/functions/{FunctionName}/configuration", "responseCode":200 }, "input":{"shape":"UpdateFunctionConfigurationRequest"}, "output":{"shape":"FunctionConfiguration"}, "errors":[ {"shape":"ServiceException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterValueException"}, {"shape":"TooManyRequestsException"} ] } }, "shapes":{ "Action":{ "type":"string", "pattern":"(lambda:[*]|lambda:[a-zA-Z]+|[*])" }, "AddPermissionRequest":{ "type":"structure", "required":[ "FunctionName", "StatementId", "Action", "Principal" ], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" }, "StatementId":{"shape":"StatementId"}, "Action":{"shape":"Action"}, "Principal":{"shape":"Principal"}, "SourceArn":{"shape":"Arn"}, "SourceAccount":{"shape":"SourceOwner"}, "EventSourceToken":{"shape":"EventSourceToken"}, "Qualifier":{ "shape":"Qualifier", "location":"querystring", "locationName":"Qualifier" } } }, "AddPermissionResponse":{ "type":"structure", "members":{ "Statement":{"shape":"String"} } }, "Alias":{ "type":"string", "max":128, "min":1, "pattern":"(?!^[0-9]+$)([a-zA-Z0-9-_]+)" }, "AliasConfiguration":{ "type":"structure", "members":{ "AliasArn":{"shape":"FunctionArn"}, "Name":{"shape":"Alias"}, "FunctionVersion":{"shape":"Version"}, "Description":{"shape":"Description"} } }, "AliasList":{ "type":"list", "member":{"shape":"AliasConfiguration"} }, "Arn":{ "type":"string", "pattern":"arn:aws:([a-zA-Z0-9\\-])+:([a-z]{2}-[a-z]+-\\d{1})?:(\\d{12})?:(.*)" }, "BatchSize":{ "type":"integer", "max":10000, "min":1 }, "Blob":{"type":"blob"}, "BlobStream":{ "type":"blob", "streaming":true }, "Boolean":{"type":"boolean"}, "CodeStorageExceededException":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "message":{"shape":"String"} }, "error":{"httpStatusCode":400}, "exception":true }, "CreateAliasRequest":{ "type":"structure", "required":[ "FunctionName", "Name", "FunctionVersion" ], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" }, "Name":{"shape":"Alias"}, "FunctionVersion":{"shape":"Version"}, "Description":{"shape":"Description"} } }, "CreateEventSourceMappingRequest":{ "type":"structure", "required":[ "EventSourceArn", "FunctionName", "StartingPosition" ], "members":{ "EventSourceArn":{"shape":"Arn"}, "FunctionName":{"shape":"FunctionName"}, "Enabled":{"shape":"Enabled"}, "BatchSize":{"shape":"BatchSize"}, "StartingPosition":{"shape":"EventSourcePosition"} } }, "CreateFunctionRequest":{ "type":"structure", "required":[ "FunctionName", "Runtime", "Role", "Handler", "Code" ], "members":{ "FunctionName":{"shape":"FunctionName"}, "Runtime":{"shape":"Runtime"}, "Role":{"shape":"RoleArn"}, "Handler":{"shape":"Handler"}, "Code":{"shape":"FunctionCode"}, "Description":{"shape":"Description"}, "Timeout":{"shape":"Timeout"}, "MemorySize":{"shape":"MemorySize"}, "Publish":{"shape":"Boolean"}, "VpcConfig":{"shape":"VpcConfig"} } }, "Date":{"type":"timestamp"}, "DeleteAliasRequest":{ "type":"structure", "required":[ "FunctionName", "Name" ], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" }, "Name":{ "shape":"Alias", "location":"uri", "locationName":"Name" } } }, "DeleteEventSourceMappingRequest":{ "type":"structure", "required":["UUID"], "members":{ "UUID":{ "shape":"String", "location":"uri", "locationName":"UUID" } } }, "DeleteFunctionRequest":{ "type":"structure", "required":["FunctionName"], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" }, "Qualifier":{ "shape":"Qualifier", "location":"querystring", "locationName":"Qualifier" } } }, "Description":{ "type":"string", "max":256, "min":0 }, "EC2AccessDeniedException":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "Message":{"shape":"String"} }, "error":{"httpStatusCode":502}, "exception":true }, "EC2ThrottledException":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "Message":{"shape":"String"} }, "error":{"httpStatusCode":502}, "exception":true }, "EC2UnexpectedException":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "Message":{"shape":"String"}, "EC2ErrorCode":{"shape":"String"} }, "error":{"httpStatusCode":502}, "exception":true }, "ENILimitReachedException":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "Message":{"shape":"String"} }, "error":{"httpStatusCode":502}, "exception":true }, "Enabled":{"type":"boolean"}, "EventSourceMappingConfiguration":{ "type":"structure", "members":{ "UUID":{"shape":"String"}, "BatchSize":{"shape":"BatchSize"}, "EventSourceArn":{"shape":"Arn"}, "FunctionArn":{"shape":"FunctionArn"}, "LastModified":{"shape":"Date"}, "LastProcessingResult":{"shape":"String"}, "State":{"shape":"String"}, "StateTransitionReason":{"shape":"String"} } }, "EventSourceMappingsList":{ "type":"list", "member":{"shape":"EventSourceMappingConfiguration"} }, "EventSourcePosition":{ "type":"string", "enum":[ "TRIM_HORIZON", "LATEST" ] }, "EventSourceToken":{ "type":"string", "max":256, "min":0, "pattern":"[a-zA-Z0-9._\\-]+" }, "FunctionArn":{ "type":"string", "pattern":"arn:aws:lambda:[a-z]{2}-[a-z]+-\\d{1}:\\d{12}:function:[a-zA-Z0-9-_]+(:(\\$LATEST|[a-zA-Z0-9-_]+))?" }, "FunctionCode":{ "type":"structure", "members":{ "ZipFile":{"shape":"Blob"}, "S3Bucket":{"shape":"S3Bucket"}, "S3Key":{"shape":"S3Key"}, "S3ObjectVersion":{"shape":"S3ObjectVersion"} } }, "FunctionCodeLocation":{ "type":"structure", "members":{ "RepositoryType":{"shape":"String"}, "Location":{"shape":"String"} } }, "FunctionConfiguration":{ "type":"structure", "members":{ "FunctionName":{"shape":"FunctionName"}, "FunctionArn":{"shape":"FunctionArn"}, "Runtime":{"shape":"Runtime"}, "Role":{"shape":"RoleArn"}, "Handler":{"shape":"Handler"}, "CodeSize":{"shape":"Long"}, "Description":{"shape":"Description"}, "Timeout":{"shape":"Timeout"}, "MemorySize":{"shape":"MemorySize"}, "LastModified":{"shape":"Timestamp"}, "CodeSha256":{"shape":"String"}, "Version":{"shape":"Version"}, "VpcConfig":{"shape":"VpcConfigResponse"} } }, "FunctionList":{ "type":"list", "member":{"shape":"FunctionConfiguration"} }, "FunctionName":{ "type":"string", "max":140, "min":1, "pattern":"(arn:aws:lambda:)?([a-z]{2}-[a-z]+-\\d{1}:)?(\\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\\$LATEST|[a-zA-Z0-9-_]+))?" }, "GetAliasRequest":{ "type":"structure", "required":[ "FunctionName", "Name" ], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" }, "Name":{ "shape":"Alias", "location":"uri", "locationName":"Name" } } }, "GetEventSourceMappingRequest":{ "type":"structure", "required":["UUID"], "members":{ "UUID":{ "shape":"String", "location":"uri", "locationName":"UUID" } } }, "GetFunctionConfigurationRequest":{ "type":"structure", "required":["FunctionName"], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" }, "Qualifier":{ "shape":"Qualifier", "location":"querystring", "locationName":"Qualifier" } } }, "GetFunctionRequest":{ "type":"structure", "required":["FunctionName"], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" }, "Qualifier":{ "shape":"Qualifier", "location":"querystring", "locationName":"Qualifier" } } }, "GetFunctionResponse":{ "type":"structure", "members":{ "Configuration":{"shape":"FunctionConfiguration"}, "Code":{"shape":"FunctionCodeLocation"} } }, "GetPolicyRequest":{ "type":"structure", "required":["FunctionName"], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" }, "Qualifier":{ "shape":"Qualifier", "location":"querystring", "locationName":"Qualifier" } } }, "GetPolicyResponse":{ "type":"structure", "members":{ "Policy":{"shape":"String"} } }, "Handler":{ "type":"string", "max":128, "pattern":"[^\\s]+" }, "HttpStatus":{"type":"integer"}, "Integer":{"type":"integer"}, "InvalidParameterValueException":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "message":{"shape":"String"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidRequestContentException":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "message":{"shape":"String"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidSecurityGroupIDException":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "Message":{"shape":"String"} }, "error":{"httpStatusCode":502}, "exception":true }, "InvalidSubnetIDException":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "Message":{"shape":"String"} }, "error":{"httpStatusCode":502}, "exception":true }, "InvalidZipFileException":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "Message":{"shape":"String"} }, "error":{"httpStatusCode":502}, "exception":true }, "InvocationRequest":{ "type":"structure", "required":["FunctionName"], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" }, "InvocationType":{ "shape":"InvocationType", "location":"header", "locationName":"X-Amz-Invocation-Type" }, "LogType":{ "shape":"LogType", "location":"header", "locationName":"X-Amz-Log-Type" }, "ClientContext":{ "shape":"String", "location":"header", "locationName":"X-Amz-Client-Context" }, "Payload":{"shape":"Blob"}, "Qualifier":{ "shape":"Qualifier", "location":"querystring", "locationName":"Qualifier" } }, "payload":"Payload" }, "InvocationResponse":{ "type":"structure", "members":{ "StatusCode":{ "shape":"Integer", "location":"statusCode" }, "FunctionError":{ "shape":"String", "location":"header", "locationName":"X-Amz-Function-Error" }, "LogResult":{ "shape":"String", "location":"header", "locationName":"X-Amz-Log-Result" }, "Payload":{"shape":"Blob"} }, "payload":"Payload" }, "InvocationType":{ "type":"string", "enum":[ "Event", "RequestResponse", "DryRun" ] }, "InvokeAsyncRequest":{ "type":"structure", "required":[ "FunctionName", "InvokeArgs" ], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" }, "InvokeArgs":{"shape":"BlobStream"} }, "deprecated":true, "payload":"InvokeArgs" }, "InvokeAsyncResponse":{ "type":"structure", "members":{ "Status":{ "shape":"HttpStatus", "location":"statusCode" } }, "deprecated":true }, "ListAliasesRequest":{ "type":"structure", "required":["FunctionName"], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" }, "FunctionVersion":{ "shape":"Version", "location":"querystring", "locationName":"FunctionVersion" }, "Marker":{ "shape":"String", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"MaxListItems", "location":"querystring", "locationName":"MaxItems" } } }, "ListAliasesResponse":{ "type":"structure", "members":{ "NextMarker":{"shape":"String"}, "Aliases":{"shape":"AliasList"} } }, "ListEventSourceMappingsRequest":{ "type":"structure", "members":{ "EventSourceArn":{ "shape":"Arn", "location":"querystring", "locationName":"EventSourceArn" }, "FunctionName":{ "shape":"FunctionName", "location":"querystring", "locationName":"FunctionName" }, "Marker":{ "shape":"String", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"MaxListItems", "location":"querystring", "locationName":"MaxItems" } } }, "ListEventSourceMappingsResponse":{ "type":"structure", "members":{ "NextMarker":{"shape":"String"}, "EventSourceMappings":{"shape":"EventSourceMappingsList"} } }, "ListFunctionsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"String", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"MaxListItems", "location":"querystring", "locationName":"MaxItems" } } }, "ListFunctionsResponse":{ "type":"structure", "members":{ "NextMarker":{"shape":"String"}, "Functions":{"shape":"FunctionList"} } }, "ListVersionsByFunctionRequest":{ "type":"structure", "required":["FunctionName"], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" }, "Marker":{ "shape":"String", "location":"querystring", "locationName":"Marker" }, "MaxItems":{ "shape":"MaxListItems", "location":"querystring", "locationName":"MaxItems" } } }, "ListVersionsByFunctionResponse":{ "type":"structure", "members":{ "NextMarker":{"shape":"String"}, "Versions":{"shape":"FunctionList"} } }, "LogType":{ "type":"string", "enum":[ "None", "Tail" ] }, "Long":{"type":"long"}, "MaxListItems":{ "type":"integer", "max":10000, "min":1 }, "MemorySize":{ "type":"integer", "max":1536, "min":128 }, "PolicyLengthExceededException":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "message":{"shape":"String"} }, "error":{"httpStatusCode":400}, "exception":true }, "Principal":{ "type":"string", "pattern":".*" }, "PublishVersionRequest":{ "type":"structure", "required":["FunctionName"], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" }, "CodeSha256":{"shape":"String"}, "Description":{"shape":"Description"} } }, "Qualifier":{ "type":"string", "max":128, "min":1, "pattern":"(|[a-zA-Z0-9$_-]+)" }, "RemovePermissionRequest":{ "type":"structure", "required":[ "FunctionName", "StatementId" ], "members":{ "FunctionName":{ "shape":"FunctionName", "location":"uri", "locationName":"FunctionName" }, "StatementId":{ "shape":"StatementId", "location":"uri", "locationName":"StatementId" }, "Qualifier":{ "shape":"Qualifier", "location":"querystring", "locationName":"Qualifier" } } }, "RequestTooLargeException":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "message":{"shape":"String"} }, "error":{"httpStatusCode":413}, "exception":true }, "ResourceConflictException":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "message":{"shape":"String"} }, "error":{"httpStatusCode":409}, "exception":true }, "ResourceNotFoundException":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "Message":{"shape":"String"} }, "error":{"httpStatusCode":404}, "exception":true }, "RoleArn":{ "type":"string", "pattern":"arn:aws:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+" }, "Runtime":{ "type":"string", "enum":[ "nodejs", "nodejs4.3", "java8", "python2.7" ] }, "S3Bucket":{ "type":"string", "max":63, "min":3, "pattern":"^[0-9A-Za-z\\.\\-_]*(?AWS Lambda

        Overview

        This is the AWS Lambda API Reference. The AWS Lambda Developer Guide provides additional information. For the service overview, go to What is AWS Lambda, and for information about how the service works, go to AWS Lambda: How it Works in the AWS Lambda Developer Guide.

        ", "operations": { "AddPermission": "

        Adds a permission to the resource policy associated with the specified AWS Lambda function. You use resource policies to grant permissions to event sources that use push model. In a push model, event sources (such as Amazon S3 and custom applications) invoke your Lambda function. Each permission you add to the resource policy allows an event source, permission to invoke the Lambda function.

        For information about the push model, see AWS Lambda: How it Works.

        If you are using versioning, the permissions you add are specific to the Lambda function version or alias you specify in the AddPermission request via the Qualifier parameter. For more information about versioning, see AWS Lambda Function Versioning and Aliases.

        This operation requires permission for the lambda:AddPermission action.

        ", "CreateAlias": "

        Creates an alias that points to the specified Lambda function version. For more information, see Introduction to AWS Lambda Aliases.

        Alias names are unique for a given function. This requires permission for the lambda:CreateAlias action.

        ", "CreateEventSourceMapping": "

        Identifies a stream as an event source for a Lambda function. It can be either an Amazon Kinesis stream or an Amazon DynamoDB stream. AWS Lambda invokes the specified function when records are posted to the stream.

        This association between a stream source and a Lambda function is called the event source mapping.

        This event source mapping is relevant only in the AWS Lambda pull model, where AWS Lambda invokes the function. For more information, go to AWS Lambda: How it Works in the AWS Lambda Developer Guide.

        You provide mapping information (for example, which stream to read from and which Lambda function to invoke) in the request body.

        Each event source, such as an Amazon Kinesis or a DynamoDB stream, can be associated with multiple AWS Lambda function. A given Lambda function can be associated with multiple AWS event sources.

        If you are using versioning, you can specify a specific function version or an alias via the function name parameter. For more information about versioning, see AWS Lambda Function Versioning and Aliases.

        This operation requires permission for the lambda:CreateEventSourceMapping action.

        ", "CreateFunction": "

        Creates a new Lambda function. The function metadata is created from the request parameters, and the code for the function is provided by a .zip file in the request body. If the function name already exists, the operation will fail. Note that the function name is case-sensitive.

        If you are using versioning, you can also publish a version of the Lambda function you are creating using the Publish parameter. For more information about versioning, see AWS Lambda Function Versioning and Aliases.

        This operation requires permission for the lambda:CreateFunction action.

        ", "DeleteAlias": "

        Deletes the specified Lambda function alias. For more information, see Introduction to AWS Lambda Aliases.

        This requires permission for the lambda:DeleteAlias action.

        ", "DeleteEventSourceMapping": "

        Removes an event source mapping. This means AWS Lambda will no longer invoke the function for events in the associated source.

        This operation requires permission for the lambda:DeleteEventSourceMapping action.

        ", "DeleteFunction": "

        Deletes the specified Lambda function code and configuration.

        If you are using the versioning feature and you don't specify a function version in your DeleteFunction request, AWS Lambda will delete the function, including all its versions, and any aliases pointing to the function versions. To delete a specific function version, you must provide the function version via the Qualifier parameter. For information about function versioning, see AWS Lambda Function Versioning and Aliases.

        When you delete a function the associated resource policy is also deleted. You will need to delete the event source mappings explicitly.

        This operation requires permission for the lambda:DeleteFunction action.

        ", "GetAlias": "

        Returns the specified alias information such as the alias ARN, description, and function version it is pointing to. For more information, see Introduction to AWS Lambda Aliases.

        This requires permission for the lambda:GetAlias action.

        ", "GetEventSourceMapping": "

        Returns configuration information for the specified event source mapping (see CreateEventSourceMapping).

        This operation requires permission for the lambda:GetEventSourceMapping action.

        ", "GetFunction": "

        Returns the configuration information of the Lambda function and a presigned URL link to the .zip file you uploaded with CreateFunction so you can download the .zip file. Note that the URL is valid for up to 10 minutes. The configuration information is the same information you provided as parameters when uploading the function.

        Using the optional Qualifier parameter, you can specify a specific function version for which you want this information. If you don't specify this parameter, the API uses unqualified function ARN which return information about the $LATEST version of the Lambda function. For more information, see AWS Lambda Function Versioning and Aliases.

        This operation requires permission for the lambda:GetFunction action.

        ", "GetFunctionConfiguration": "

        Returns the configuration information of the Lambda function. This the same information you provided as parameters when uploading the function by using CreateFunction.

        If you are using the versioning feature, you can retrieve this information for a specific function version by using the optional Qualifier parameter and specifying the function version or alias that points to it. If you don't provide it, the API returns information about the $LATEST version of the function. For more information about versioning, see AWS Lambda Function Versioning and Aliases.

        This operation requires permission for the lambda:GetFunctionConfiguration operation.

        ", "GetPolicy": "

        Returns the resource policy associated with the specified Lambda function.

        If you are using the versioning feature, you can get the resource policy associated with the specific Lambda function version or alias by specifying the version or alias name using the Qualifier parameter. For more information about versioning, see AWS Lambda Function Versioning and Aliases.

        For information about adding permissions, see AddPermission.

        You need permission for the lambda:GetPolicy action.

        ", "Invoke": "

        Invokes a specific Lambda function.

        If you are using the versioning feature, you can invoke the specific function version by providing function version or alias name that is pointing to the function version using the Qualifier parameter in the request. If you don't provide the Qualifier parameter, the $LATEST version of the Lambda function is invoked. Invocations occur at least once in response to an event and functions must be idempotent to handle this. For information about the versioning feature, see AWS Lambda Function Versioning and Aliases.

        This operation requires permission for the lambda:InvokeFunction action.

        ", "InvokeAsync": "

        This API is deprecated. We recommend you use Invoke API (see Invoke).

        Submits an invocation request to AWS Lambda. Upon receiving the request, Lambda executes the specified function asynchronously. To see the logs generated by the Lambda function execution, see the CloudWatch Logs console.

        This operation requires permission for the lambda:InvokeFunction action.

        ", "ListAliases": "

        Returns list of aliases created for a Lambda function. For each alias, the response includes information such as the alias ARN, description, alias name, and the function version to which it points. For more information, see Introduction to AWS Lambda Aliases.

        This requires permission for the lambda:ListAliases action.

        ", "ListEventSourceMappings": "

        Returns a list of event source mappings you created using the CreateEventSourceMapping (see CreateEventSourceMapping).

        For each mapping, the API returns configuration information. You can optionally specify filters to retrieve specific event source mappings.

        If you are using the versioning feature, you can get list of event source mappings for a specific Lambda function version or an alias as described in the FunctionName parameter. For information about the versioning feature, see AWS Lambda Function Versioning and Aliases.

        This operation requires permission for the lambda:ListEventSourceMappings action.

        ", "ListFunctions": "

        Returns a list of your Lambda functions. For each function, the response includes the function configuration information. You must use GetFunction to retrieve the code for your function.

        This operation requires permission for the lambda:ListFunctions action.

        If you are using versioning feature, the response returns list of $LATEST versions of your functions. For information about the versioning feature, see AWS Lambda Function Versioning and Aliases.

        ", "ListVersionsByFunction": "

        List all versions of a function. For information about the versioning feature, see AWS Lambda Function Versioning and Aliases.

        ", "PublishVersion": "

        Publishes a version of your function from the current snapshot of $LATEST. That is, AWS Lambda takes a snapshot of the function code and configuration information from $LATEST and publishes a new version. The code and configuration cannot be modified after publication. For information about the versioning feature, see AWS Lambda Function Versioning and Aliases.

        ", "RemovePermission": "

        You can remove individual permissions from an resource policy associated with a Lambda function by providing a statement ID that you provided when you added the permission.

        If you are using versioning, the permissions you remove are specific to the Lambda function version or alias you specify in the AddPermission request via the Qualifier parameter. For more information about versioning, see AWS Lambda Function Versioning and Aliases.

        Note that removal of a permission will cause an active event source to lose permission to the function.

        You need permission for the lambda:RemovePermission action.

        ", "UpdateAlias": "

        Using this API you can update the function version to which the alias points and the alias description. For more information, see Introduction to AWS Lambda Aliases.

        This requires permission for the lambda:UpdateAlias action.

        ", "UpdateEventSourceMapping": "

        You can update an event source mapping. This is useful if you want to change the parameters of the existing mapping without losing your position in the stream. You can change which function will receive the stream records, but to change the stream itself, you must create a new mapping.

        If you are using the versioning feature, you can update the event source mapping to map to a specific Lambda function version or alias as described in the FunctionName parameter. For information about the versioning feature, see AWS Lambda Function Versioning and Aliases.

        If you disable the event source mapping, AWS Lambda stops polling. If you enable again, it will resume polling from the time it had stopped polling, so you don't lose processing of any records. However, if you delete event source mapping and create it again, it will reset.

        This operation requires permission for the lambda:UpdateEventSourceMapping action.

        ", "UpdateFunctionCode": "

        Updates the code for the specified Lambda function. This operation must only be used on an existing Lambda function and cannot be used to update the function configuration.

        If you are using the versioning feature, note this API will always update the $LATEST version of your Lambda function. For information about the versioning feature, see AWS Lambda Function Versioning and Aliases.

        This operation requires permission for the lambda:UpdateFunctionCode action.

        ", "UpdateFunctionConfiguration": "

        Updates the configuration parameters for the specified Lambda function by using the values provided in the request. You provide only the parameters you want to change. This operation must only be used on an existing Lambda function and cannot be used to update the function's code.

        If you are using the versioning feature, note this API will always update the $LATEST version of your Lambda function. For information about the versioning feature, see AWS Lambda Function Versioning and Aliases.

        This operation requires permission for the lambda:UpdateFunctionConfiguration action.

        " }, "shapes": { "Action": { "base": null, "refs": { "AddPermissionRequest$Action": "

        The AWS Lambda action you want to allow in this statement. Each Lambda action is a string starting with lambda: followed by the API name . For example, lambda:CreateFunction. You can use wildcard (lambda:*) to grant permission for all AWS Lambda actions.

        " } }, "AddPermissionRequest": { "base": "

        ", "refs": { } }, "AddPermissionResponse": { "base": "

        ", "refs": { } }, "Alias": { "base": null, "refs": { "AliasConfiguration$Name": "

        Alias name.

        ", "CreateAliasRequest$Name": "

        Name for the alias you are creating.

        ", "DeleteAliasRequest$Name": "

        Name of the alias to delete.

        ", "GetAliasRequest$Name": "

        Name of the alias for which you want to retrieve information.

        ", "UpdateAliasRequest$Name": "

        The alias name.

        " } }, "AliasConfiguration": { "base": "

        Provides configuration information about a Lambda function version alias.

        ", "refs": { "AliasList$member": null } }, "AliasList": { "base": null, "refs": { "ListAliasesResponse$Aliases": "

        A list of aliases.

        " } }, "Arn": { "base": null, "refs": { "AddPermissionRequest$SourceArn": "

        This is optional; however, when granting Amazon S3 permission to invoke your function, you should specify this field with the Amazon Resource Name (ARN) as its value. This ensures that only events generated from the specified source can invoke the function.

        If you add a permission for the Amazon S3 principal without providing the source ARN, any AWS account that creates a mapping to your function ARN can send events to invoke your Lambda function from Amazon S3.

        ", "CreateEventSourceMappingRequest$EventSourceArn": "

        The Amazon Resource Name (ARN) of the Amazon Kinesis or the Amazon DynamoDB stream that is the event source. Any record added to this stream could cause AWS Lambda to invoke your Lambda function, it depends on the BatchSize. AWS Lambda POSTs the Amazon Kinesis event, containing records, to your Lambda function as JSON.

        ", "EventSourceMappingConfiguration$EventSourceArn": "

        The Amazon Resource Name (ARN) of the Amazon Kinesis stream that is the source of events.

        ", "ListEventSourceMappingsRequest$EventSourceArn": "

        The Amazon Resource Name (ARN) of the Amazon Kinesis stream. (This parameter is optional.)

        " } }, "BatchSize": { "base": null, "refs": { "CreateEventSourceMappingRequest$BatchSize": "

        The largest number of records that AWS Lambda will retrieve from your event source at the time of invoking your function. Your function receives an event with all the retrieved records. The default is 100 records.

        ", "EventSourceMappingConfiguration$BatchSize": "

        The largest number of records that AWS Lambda will retrieve from your event source at the time of invoking your function. Your function receives an event with all the retrieved records.

        ", "UpdateEventSourceMappingRequest$BatchSize": "

        The maximum number of stream records that can be sent to your Lambda function for a single invocation.

        " } }, "Blob": { "base": null, "refs": { "FunctionCode$ZipFile": "

        The contents of your zip file containing your deployment package. If you are using the web API directly, the contents of the zip file must be base64-encoded. If you are using the AWS SDKs or the AWS CLI, the SDKs or CLI will do the encoding for you. For more information about creating a .zip file, go to Execution Permissions in the AWS Lambda Developer Guide.

        ", "InvocationRequest$Payload": "

        JSON that you want to provide to your Lambda function as input.

        ", "InvocationResponse$Payload": "

        It is the JSON representation of the object returned by the Lambda function. In This is present only if the invocation type is RequestResponse.

        In the event of a function error this field contains a message describing the error. For the Handled errors the Lambda function will report this message. For Unhandled errors AWS Lambda reports the message.

        ", "UpdateFunctionCodeRequest$ZipFile": "

        The contents of your zip file containing your deployment package. If you are using the web API directly, the contents of the zip file must be base64-encoded. If you are using the AWS SDKs or the AWS CLI, the SDKs or CLI will do the encoding for you. For more information about creating a .zip file, go to Execution Permissions in the AWS Lambda Developer Guide.

        " } }, "BlobStream": { "base": null, "refs": { "InvokeAsyncRequest$InvokeArgs": "

        JSON that you want to provide to your Lambda function as input.

        " } }, "Boolean": { "base": null, "refs": { "CreateFunctionRequest$Publish": "

        This boolean parameter can be used to request AWS Lambda to create the Lambda function and publish a version as an atomic operation.

        ", "UpdateFunctionCodeRequest$Publish": "

        This boolean parameter can be used to request AWS Lambda to update the Lambda function and publish a version as an atomic operation.

        " } }, "CodeStorageExceededException": { "base": "

        You have exceeded your maximum total code size per account. Limits

        ", "refs": { } }, "CreateAliasRequest": { "base": null, "refs": { } }, "CreateEventSourceMappingRequest": { "base": "

        ", "refs": { } }, "CreateFunctionRequest": { "base": "

        ", "refs": { } }, "Date": { "base": null, "refs": { "EventSourceMappingConfiguration$LastModified": "

        The UTC time string indicating the last time the event mapping was updated.

        " } }, "DeleteAliasRequest": { "base": null, "refs": { } }, "DeleteEventSourceMappingRequest": { "base": "

        ", "refs": { } }, "DeleteFunctionRequest": { "base": null, "refs": { } }, "Description": { "base": null, "refs": { "AliasConfiguration$Description": "

        Alias description.

        ", "CreateAliasRequest$Description": "

        Description of the alias.

        ", "CreateFunctionRequest$Description": "

        A short, user-defined function description. Lambda does not use this value. Assign a meaningful description as you see fit.

        ", "FunctionConfiguration$Description": "

        The user-provided description.

        ", "PublishVersionRequest$Description": "

        The description for the version you are publishing. If not provided, AWS Lambda copies the description from the $LATEST version.

        ", "UpdateAliasRequest$Description": "

        You can change the description of the alias using this parameter.

        ", "UpdateFunctionConfigurationRequest$Description": "

        A short user-defined function description. AWS Lambda does not use this value. Assign a meaningful description as you see fit.

        " } }, "EC2AccessDeniedException": { "base": "

        ", "refs": { } }, "EC2ThrottledException": { "base": "

        AWS Lambda was throttled by Amazon EC2 during Lambda function initialization using the execution role provided for the Lambda function.

        ", "refs": { } }, "EC2UnexpectedException": { "base": "

        AWS Lambda received an unexpected EC2 client exception while setting up for the Lambda function.

        ", "refs": { } }, "ENILimitReachedException": { "base": "

        AWS Lambda was not able to create an Elastic Network Interface (ENI) in the VPC, specified as part of Lambda function configuration, because the limit for network interfaces has been reached.

        ", "refs": { } }, "Enabled": { "base": null, "refs": { "CreateEventSourceMappingRequest$Enabled": "

        Indicates whether AWS Lambda should begin polling the event source. By default, Enabled is true.

        ", "UpdateEventSourceMappingRequest$Enabled": "

        Specifies whether AWS Lambda should actively poll the stream or not. If disabled, AWS Lambda will not poll the stream.

        " } }, "EventSourceMappingConfiguration": { "base": "

        Describes mapping between an Amazon Kinesis stream and a Lambda function.

        ", "refs": { "EventSourceMappingsList$member": null } }, "EventSourceMappingsList": { "base": null, "refs": { "ListEventSourceMappingsResponse$EventSourceMappings": "

        An array of EventSourceMappingConfiguration objects.

        " } }, "EventSourcePosition": { "base": null, "refs": { "CreateEventSourceMappingRequest$StartingPosition": "

        The position in the stream where AWS Lambda should start reading. For more information, go to ShardIteratorType in the Amazon Kinesis API Reference.

        " } }, "EventSourceToken": { "base": null, "refs": { "AddPermissionRequest$EventSourceToken": "

        A unique token that must be supplied by the principal invoking the function. This is currently only used for Alexa Smart Home functions.

        " } }, "FunctionArn": { "base": null, "refs": { "AliasConfiguration$AliasArn": "

        Lambda function ARN that is qualified using the alias name as the suffix. For example, if you create an alias called BETA that points to a helloworld function version, the ARN is arn:aws:lambda:aws-regions:acct-id:function:helloworld:BETA.

        ", "EventSourceMappingConfiguration$FunctionArn": "

        The Lambda function to invoke when AWS Lambda detects an event on the stream.

        ", "FunctionConfiguration$FunctionArn": "

        The Amazon Resource Name (ARN) assigned to the function.

        " } }, "FunctionCode": { "base": "

        The code for the Lambda function.

        ", "refs": { "CreateFunctionRequest$Code": "

        The code for the Lambda function.

        " } }, "FunctionCodeLocation": { "base": "

        The object for the Lambda function location.

        ", "refs": { "GetFunctionResponse$Code": null } }, "FunctionConfiguration": { "base": "

        A complex type that describes function metadata.

        ", "refs": { "FunctionList$member": null, "GetFunctionResponse$Configuration": null } }, "FunctionList": { "base": null, "refs": { "ListFunctionsResponse$Functions": "

        A list of Lambda functions.

        ", "ListVersionsByFunctionResponse$Versions": "

        A list of Lambda function versions.

        " } }, "FunctionName": { "base": null, "refs": { "AddPermissionRequest$FunctionName": "

        Name of the Lambda function whose resource policy you are updating by adding a new permission.

        You can specify a function name (for example, Thumbnail) or you can specify Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). AWS Lambda also allows you to specify partial ARN (for example, account-id:Thumbnail). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

        ", "CreateAliasRequest$FunctionName": "

        Name of the Lambda function for which you want to create an alias.

        ", "CreateEventSourceMappingRequest$FunctionName": "

        The Lambda function to invoke when AWS Lambda detects an event on the stream.

        You can specify the function name (for example, Thumbnail) or you can specify Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail).

        If you are using versioning, you can also provide a qualified function ARN (ARN that is qualified with function version or alias name as suffix). For more information about versioning, see AWS Lambda Function Versioning and Aliases

        AWS Lambda also allows you to specify only the function name with the account ID qualifier (for example, account-id:Thumbnail).

        Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

        ", "CreateFunctionRequest$FunctionName": "

        The name you want to assign to the function you are uploading. The function names appear in the console and are returned in the ListFunctions API. Function names are used to specify functions to other AWS Lambda APIs, such as Invoke.

        ", "DeleteAliasRequest$FunctionName": "

        The Lambda function name for which the alias is created. Deleting an alias does not delete the function version to which it is pointing.

        ", "DeleteFunctionRequest$FunctionName": "

        The Lambda function to delete.

        You can specify the function name (for example, Thumbnail) or you can specify Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). If you are using versioning, you can also provide a qualified function ARN (ARN that is qualified with function version or alias name as suffix). AWS Lambda also allows you to specify only the function name with the account ID qualifier (for example, account-id:Thumbnail). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

        ", "FunctionConfiguration$FunctionName": "

        The name of the function.

        ", "GetAliasRequest$FunctionName": "

        Function name for which the alias is created. An alias is a subresource that exists only in the context of an existing Lambda function so you must specify the function name.

        ", "GetFunctionConfigurationRequest$FunctionName": "

        The name of the Lambda function for which you want to retrieve the configuration information.

        You can specify a function name (for example, Thumbnail) or you can specify Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

        ", "GetFunctionRequest$FunctionName": "

        The Lambda function name.

        You can specify a function name (for example, Thumbnail) or you can specify Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

        ", "GetPolicyRequest$FunctionName": "

        Function name whose resource policy you want to retrieve.

        You can specify the function name (for example, Thumbnail) or you can specify Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). If you are using versioning, you can also provide a qualified function ARN (ARN that is qualified with function version or alias name as suffix). AWS Lambda also allows you to specify only the function name with the account ID qualifier (for example, account-id:Thumbnail). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

        ", "InvocationRequest$FunctionName": "

        The Lambda function name.

        You can specify a function name (for example, Thumbnail) or you can specify Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

        ", "InvokeAsyncRequest$FunctionName": "

        The Lambda function name.

        ", "ListAliasesRequest$FunctionName": "

        Lambda function name for which the alias is created.

        ", "ListEventSourceMappingsRequest$FunctionName": "

        The name of the Lambda function.

        You can specify the function name (for example, Thumbnail) or you can specify Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). If you are using versioning, you can also provide a qualified function ARN (ARN that is qualified with function version or alias name as suffix). AWS Lambda also allows you to specify only the function name with the account ID qualifier (for example, account-id:Thumbnail). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

        ", "ListVersionsByFunctionRequest$FunctionName": "

        Function name whose versions to list. You can specify a function name (for example, Thumbnail) or you can specify Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

        ", "PublishVersionRequest$FunctionName": "

        The Lambda function name. You can specify a function name (for example, Thumbnail) or you can specify Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

        ", "RemovePermissionRequest$FunctionName": "

        Lambda function whose resource policy you want to remove a permission from.

        You can specify a function name (for example, Thumbnail) or you can specify Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

        ", "UpdateAliasRequest$FunctionName": "

        The function name for which the alias is created.

        ", "UpdateEventSourceMappingRequest$FunctionName": "

        The Lambda function to which you want the stream records sent.

        You can specify a function name (for example, Thumbnail) or you can specify Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail).

        If you are using versioning, you can also provide a qualified function ARN (ARN that is qualified with function version or alias name as suffix). For more information about versioning, see AWS Lambda Function Versioning and Aliases

        Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

        ", "UpdateFunctionCodeRequest$FunctionName": "

        The existing Lambda function name whose code you want to replace.

        You can specify a function name (for example, Thumbnail) or you can specify Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

        ", "UpdateFunctionConfigurationRequest$FunctionName": "

        The name of the Lambda function.

        You can specify a function name (for example, Thumbnail) or you can specify Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

        " } }, "GetAliasRequest": { "base": null, "refs": { } }, "GetEventSourceMappingRequest": { "base": "

        ", "refs": { } }, "GetFunctionConfigurationRequest": { "base": "

        ", "refs": { } }, "GetFunctionRequest": { "base": "

        ", "refs": { } }, "GetFunctionResponse": { "base": "

        This response contains the object for the Lambda function location (see .

        ", "refs": { } }, "GetPolicyRequest": { "base": "

        ", "refs": { } }, "GetPolicyResponse": { "base": "

        ", "refs": { } }, "Handler": { "base": null, "refs": { "CreateFunctionRequest$Handler": "

        The function within your code that Lambda calls to begin execution. For Node.js, it is the module-name.export value in your function. For Java, it can be package.class-name::handler or package.class-name. For more information, see Lambda Function Handler (Java).

        ", "FunctionConfiguration$Handler": "

        The function Lambda calls to begin executing your function.

        ", "UpdateFunctionConfigurationRequest$Handler": "

        The function that Lambda calls to begin executing your function. For Node.js, it is the module-name.export value in your function.

        " } }, "HttpStatus": { "base": null, "refs": { "InvokeAsyncResponse$Status": "

        It will be 202 upon success.

        " } }, "Integer": { "base": null, "refs": { "InvocationResponse$StatusCode": "

        The HTTP status code will be in the 200 range for successful request. For the RequestResonse invocation type this status code will be 200. For the Event invocation type this status code will be 202. For the DryRun invocation type the status code will be 204.

        " } }, "InvalidParameterValueException": { "base": "

        One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration API, that AWS Lambda is unable to assume you will get this exception.

        ", "refs": { } }, "InvalidRequestContentException": { "base": "

        The request body could not be parsed as JSON.

        ", "refs": { } }, "InvalidSecurityGroupIDException": { "base": "

        The Security Group ID provided in the Lambda function VPC configuration is invalid.

        ", "refs": { } }, "InvalidSubnetIDException": { "base": "

        The Subnet ID provided in the Lambda function VPC configuration is invalid.

        ", "refs": { } }, "InvalidZipFileException": { "base": "

        AWS Lambda could not unzip the function zip file.

        ", "refs": { } }, "InvocationRequest": { "base": "

        ", "refs": { } }, "InvocationResponse": { "base": "

        Upon success, returns an empty response. Otherwise, throws an exception.

        ", "refs": { } }, "InvocationType": { "base": null, "refs": { "InvocationRequest$InvocationType": "

        By default, the Invoke API assumes RequestResponse invocation type. You can optionally request asynchronous execution by specifying Event as the InvocationType. You can also use this parameter to request AWS Lambda to not execute the function but do some verification, such as if the caller is authorized to invoke the function and if the inputs are valid. You request this by specifying DryRun as the InvocationType. This is useful in a cross-account scenario when you want to verify access to a function without running it.

        " } }, "InvokeAsyncRequest": { "base": "

        ", "refs": { } }, "InvokeAsyncResponse": { "base": "

        Upon success, it returns empty response. Otherwise, throws an exception.

        ", "refs": { } }, "ListAliasesRequest": { "base": null, "refs": { } }, "ListAliasesResponse": { "base": null, "refs": { } }, "ListEventSourceMappingsRequest": { "base": "

        ", "refs": { } }, "ListEventSourceMappingsResponse": { "base": "

        Contains a list of event sources (see )

        ", "refs": { } }, "ListFunctionsRequest": { "base": "

        ", "refs": { } }, "ListFunctionsResponse": { "base": "

        Contains a list of AWS Lambda function configurations (see FunctionConfiguration.

        ", "refs": { } }, "ListVersionsByFunctionRequest": { "base": "

        ", "refs": { } }, "ListVersionsByFunctionResponse": { "base": "

        ", "refs": { } }, "LogType": { "base": null, "refs": { "InvocationRequest$LogType": "

        You can set this optional parameter to Tail in the request only if you specify the InvocationType parameter with value RequestResponse. In this case, AWS Lambda returns the base64-encoded last 4 KB of log data produced by your Lambda function in the x-amz-log-result header.

        " } }, "Long": { "base": null, "refs": { "FunctionConfiguration$CodeSize": "

        The size, in bytes, of the function .zip file you uploaded.

        " } }, "MaxListItems": { "base": null, "refs": { "ListAliasesRequest$MaxItems": "

        Optional integer. Specifies the maximum number of aliases to return in response. This parameter value must be greater than 0.

        ", "ListEventSourceMappingsRequest$MaxItems": "

        Optional integer. Specifies the maximum number of event sources to return in response. This value must be greater than 0.

        ", "ListFunctionsRequest$MaxItems": "

        Optional integer. Specifies the maximum number of AWS Lambda functions to return in response. This parameter value must be greater than 0.

        ", "ListVersionsByFunctionRequest$MaxItems": "

        Optional integer. Specifies the maximum number of AWS Lambda function versions to return in response. This parameter value must be greater than 0.

        " } }, "MemorySize": { "base": null, "refs": { "CreateFunctionRequest$MemorySize": "

        The amount of memory, in MB, your Lambda function is given. Lambda uses this memory size to infer the amount of CPU and memory allocated to your function. Your function use-case determines your CPU and memory requirements. For example, a database operation might need less memory compared to an image processing function. The default value is 128 MB. The value must be a multiple of 64 MB.

        ", "FunctionConfiguration$MemorySize": "

        The memory size, in MB, you configured for the function. Must be a multiple of 64 MB.

        ", "UpdateFunctionConfigurationRequest$MemorySize": "

        The amount of memory, in MB, your Lambda function is given. AWS Lambda uses this memory size to infer the amount of CPU allocated to your function. Your function use-case determines your CPU and memory requirements. For example, a database operation might need less memory compared to an image processing function. The default value is 128 MB. The value must be a multiple of 64 MB.

        " } }, "PolicyLengthExceededException": { "base": "

        Lambda function access policy is limited to 20 KB.

        ", "refs": { } }, "Principal": { "base": null, "refs": { "AddPermissionRequest$Principal": "

        The principal who is getting this permission. It can be Amazon S3 service Principal (s3.amazonaws.com) if you want Amazon S3 to invoke the function, an AWS account ID if you are granting cross-account permission, or any valid AWS service principal such as sns.amazonaws.com. For example, you might want to allow a custom application in another AWS account to push events to AWS Lambda by invoking your function.

        " } }, "PublishVersionRequest": { "base": "

        ", "refs": { } }, "Qualifier": { "base": null, "refs": { "AddPermissionRequest$Qualifier": "

        You can use this optional query parameter to describe a qualified ARN using a function version or an alias name. The permission will then apply to the specific qualified ARN. For example, if you specify function version 2 as the qualifier, then permission applies only when request is made using qualified function ARN:

        arn:aws:lambda:aws-region:acct-id:function:function-name:2

        If you specify an alias name, for example PROD, then the permission is valid only for requests made using the alias ARN:

        arn:aws:lambda:aws-region:acct-id:function:function-name:PROD

        If the qualifier is not specified, the permission is valid only when requests is made using unqualified function ARN.

        arn:aws:lambda:aws-region:acct-id:function:function-name

        ", "DeleteFunctionRequest$Qualifier": "

        Using this optional parameter you can specify a function version (but not the $LATEST version) to direct AWS Lambda to delete a specific function version. If the function version has one or more aliases pointing to it, you will get an error because you cannot have aliases pointing to it. You can delete any function version but not the $LATEST, that is, you cannot specify $LATEST as the value of this parameter. The $LATEST version can be deleted only when you want to delete all the function versions and aliases.

        You can only specify a function version, not an alias name, using this parameter. You cannot delete a function version using its alias.

        If you don't specify this parameter, AWS Lambda will delete the function, including all of its versions and aliases.

        ", "GetFunctionConfigurationRequest$Qualifier": "

        Using this optional parameter you can specify a function version or an alias name. If you specify function version, the API uses qualified function ARN and returns information about the specific function version. If you specify an alias name, the API uses the alias ARN and returns information about the function version to which the alias points.

        If you don't specify this parameter, the API uses unqualified function ARN, and returns information about the $LATEST function version.

        ", "GetFunctionRequest$Qualifier": "

        Using this optional parameter to specify a function version or an alias name. If you specify function version, the API uses qualified function ARN for the request and returns information about the specific Lambda function version. If you specify an alias name, the API uses the alias ARN and returns information about the function version to which the alias points. If you don't provide this parameter, the API uses unqualified function ARN and returns information about the $LATEST version of the Lambda function.

        ", "GetPolicyRequest$Qualifier": "

        You can specify this optional query parameter to specify a function version or an alias name in which case this API will return all permissions associated with the specific qualified ARN. If you don't provide this parameter, the API will return permissions that apply to the unqualified function ARN.

        ", "InvocationRequest$Qualifier": "

        You can use this optional parameter to specify a Lambda function version or alias name. If you specify a function version, the API uses the qualified function ARN to invoke a specific Lambda function. If you specify an alias name, the API uses the alias ARN to invoke the Lambda function version to which the alias points.

        If you don't provide this parameter, then the API uses unqualified function ARN which results in invocation of the $LATEST version.

        ", "RemovePermissionRequest$Qualifier": "

        You can specify this optional parameter to remove permission associated with a specific function version or function alias. If you don't specify this parameter, the API removes permission associated with the unqualified function ARN.

        " } }, "RemovePermissionRequest": { "base": "

        ", "refs": { } }, "RequestTooLargeException": { "base": "

        The request payload exceeded the Invoke request body JSON input limit. For more information, see Limits.

        ", "refs": { } }, "ResourceConflictException": { "base": "

        The resource already exists.

        ", "refs": { } }, "ResourceNotFoundException": { "base": "

        The resource (for example, a Lambda function or access policy statement) specified in the request does not exist.

        ", "refs": { } }, "RoleArn": { "base": null, "refs": { "CreateFunctionRequest$Role": "

        The Amazon Resource Name (ARN) of the IAM role that Lambda assumes when it executes your function to access any other Amazon Web Services (AWS) resources. For more information, see AWS Lambda: How it Works.

        ", "FunctionConfiguration$Role": "

        The Amazon Resource Name (ARN) of the IAM role that Lambda assumes when it executes your function to access any other Amazon Web Services (AWS) resources.

        ", "UpdateFunctionConfigurationRequest$Role": "

        The Amazon Resource Name (ARN) of the IAM role that Lambda will assume when it executes your function.

        " } }, "Runtime": { "base": null, "refs": { "CreateFunctionRequest$Runtime": "

        The runtime environment for the Lambda function you are uploading.

        To use the Node.js runtime v4.3, set the value to \"nodejs4.3\". To use earlier runtime (v0.10.42), set the value to \"nodejs\".

        ", "FunctionConfiguration$Runtime": "

        The runtime environment for the Lambda function.

        To use the Node.js runtime v4.3, set the value to \"nodejs4.3\". To use earlier runtime (v0.10.42), set the value to \"nodejs\".

        ", "UpdateFunctionConfigurationRequest$Runtime": "

        The runtime environment for the Lambda function.

        To use the Node.js runtime v4.3, set the value to \"nodejs4.3\". To use earlier runtime (v0.10.42), set the value to \"nodejs\".

        " } }, "S3Bucket": { "base": null, "refs": { "FunctionCode$S3Bucket": "

        Amazon S3 bucket name where the .zip file containing your deployment package is stored. This bucket must reside in the same AWS region where you are creating the Lambda function.

        ", "UpdateFunctionCodeRequest$S3Bucket": "

        Amazon S3 bucket name where the .zip file containing your deployment package is stored. This bucket must reside in the same AWS region where you are creating the Lambda function.

        " } }, "S3Key": { "base": null, "refs": { "FunctionCode$S3Key": "

        The Amazon S3 object (the deployment package) key name you want to upload.

        ", "UpdateFunctionCodeRequest$S3Key": "

        The Amazon S3 object (the deployment package) key name you want to upload.

        " } }, "S3ObjectVersion": { "base": null, "refs": { "FunctionCode$S3ObjectVersion": "

        The Amazon S3 object (the deployment package) version you want to upload.

        ", "UpdateFunctionCodeRequest$S3ObjectVersion": "

        The Amazon S3 object (the deployment package) version you want to upload.

        " } }, "SecurityGroupId": { "base": null, "refs": { "SecurityGroupIds$member": null } }, "SecurityGroupIds": { "base": null, "refs": { "VpcConfig$SecurityGroupIds": "

        A list of one or more security groups IDs in your VPC.

        ", "VpcConfigResponse$SecurityGroupIds": "

        A list of security group IDs associated with the Lambda function.

        " } }, "ServiceException": { "base": "

        The AWS Lambda service encountered an internal error.

        ", "refs": { } }, "SourceOwner": { "base": null, "refs": { "AddPermissionRequest$SourceAccount": "

        This parameter is used for S3 and SES only. The AWS account ID (without a hyphen) of the source owner. For example, if the SourceArn identifies a bucket, then this is the bucket owner's account ID. You can use this additional condition to ensure the bucket you specify is owned by a specific account (it is possible the bucket owner deleted the bucket and some other AWS account created the bucket). You can also use this condition to specify all sources (that is, you don't specify the SourceArn) owned by a specific account.

        " } }, "StatementId": { "base": null, "refs": { "AddPermissionRequest$StatementId": "

        A unique statement identifier.

        ", "RemovePermissionRequest$StatementId": "

        Statement ID of the permission to remove.

        " } }, "String": { "base": null, "refs": { "AddPermissionResponse$Statement": "

        The permission statement you specified in the request. The response returns the same as a string using a backslash (\"\\\") as an escape character in the JSON.

        ", "CodeStorageExceededException$Type": "

        ", "CodeStorageExceededException$message": null, "DeleteEventSourceMappingRequest$UUID": "

        The event source mapping ID.

        ", "EC2AccessDeniedException$Type": null, "EC2AccessDeniedException$Message": null, "EC2ThrottledException$Type": null, "EC2ThrottledException$Message": null, "EC2UnexpectedException$Type": null, "EC2UnexpectedException$Message": null, "EC2UnexpectedException$EC2ErrorCode": null, "ENILimitReachedException$Type": null, "ENILimitReachedException$Message": null, "EventSourceMappingConfiguration$UUID": "

        The AWS Lambda assigned opaque identifier for the mapping.

        ", "EventSourceMappingConfiguration$LastProcessingResult": "

        The result of the last AWS Lambda invocation of your Lambda function.

        ", "EventSourceMappingConfiguration$State": "

        The state of the event source mapping. It can be Creating, Enabled, Disabled, Enabling, Disabling, Updating, or Deleting.

        ", "EventSourceMappingConfiguration$StateTransitionReason": "

        The reason the event source mapping is in its current state. It is either user-requested or an AWS Lambda-initiated state transition.

        ", "FunctionCodeLocation$RepositoryType": "

        The repository from which you can download the function.

        ", "FunctionCodeLocation$Location": "

        The presigned URL you can use to download the function's .zip file that you previously uploaded. The URL is valid for up to 10 minutes.

        ", "FunctionConfiguration$CodeSha256": "

        It is the SHA256 hash of your function deployment package.

        ", "GetEventSourceMappingRequest$UUID": "

        The AWS Lambda assigned ID of the event source mapping.

        ", "GetPolicyResponse$Policy": "

        The resource policy associated with the specified function. The response returns the same as a string using a backslash (\"\\\") as an escape character in the JSON.

        ", "InvalidParameterValueException$Type": "

        ", "InvalidParameterValueException$message": "

        ", "InvalidRequestContentException$Type": "

        ", "InvalidRequestContentException$message": "

        ", "InvalidSecurityGroupIDException$Type": null, "InvalidSecurityGroupIDException$Message": null, "InvalidSubnetIDException$Type": null, "InvalidSubnetIDException$Message": null, "InvalidZipFileException$Type": null, "InvalidZipFileException$Message": null, "InvocationRequest$ClientContext": "

        Using the ClientContext you can pass client-specific information to the Lambda function you are invoking. You can then process the client information in your Lambda function as you choose through the context variable. For an example of a ClientContext JSON, see PutEvents in the Amazon Mobile Analytics API Reference and User Guide.

        The ClientContext JSON must be base64-encoded.

        ", "InvocationResponse$FunctionError": "

        Indicates whether an error occurred while executing the Lambda function. If an error occurred this field will have one of two values; Handled or Unhandled. Handled errors are errors that are reported by the function while the Unhandled errors are those detected and reported by AWS Lambda. Unhandled errors include out of memory errors and function timeouts. For information about how to report an Handled error, see Programming Model.

        ", "InvocationResponse$LogResult": "

        It is the base64-encoded logs for the Lambda function invocation. This is present only if the invocation type is RequestResponse and the logs were requested.

        ", "ListAliasesRequest$Marker": "

        Optional string. An opaque pagination token returned from a previous ListAliases operation. If present, indicates where to continue the listing.

        ", "ListAliasesResponse$NextMarker": "

        A string, present if there are more aliases.

        ", "ListEventSourceMappingsRequest$Marker": "

        Optional string. An opaque pagination token returned from a previous ListEventSourceMappings operation. If present, specifies to continue the list from where the returning call left off.

        ", "ListEventSourceMappingsResponse$NextMarker": "

        A string, present if there are more event source mappings.

        ", "ListFunctionsRequest$Marker": "

        Optional string. An opaque pagination token returned from a previous ListFunctions operation. If present, indicates where to continue the listing.

        ", "ListFunctionsResponse$NextMarker": "

        A string, present if there are more functions.

        ", "ListVersionsByFunctionRequest$Marker": "

        Optional string. An opaque pagination token returned from a previous ListVersionsByFunction operation. If present, indicates where to continue the listing.

        ", "ListVersionsByFunctionResponse$NextMarker": "

        A string, present if there are more function versions.

        ", "PolicyLengthExceededException$Type": null, "PolicyLengthExceededException$message": null, "PublishVersionRequest$CodeSha256": "

        The SHA256 hash of the deployment package you want to publish. This provides validation on the code you are publishing. If you provide this parameter value must match the SHA256 of the $LATEST version for the publication to succeed.

        ", "RequestTooLargeException$Type": null, "RequestTooLargeException$message": null, "ResourceConflictException$Type": "

        ", "ResourceConflictException$message": "

        ", "ResourceNotFoundException$Type": null, "ResourceNotFoundException$Message": null, "ServiceException$Type": null, "ServiceException$Message": null, "SubnetIPAddressLimitReachedException$Type": null, "SubnetIPAddressLimitReachedException$Message": null, "TooManyRequestsException$retryAfterSeconds": "

        The number of seconds the caller should wait before retrying.

        ", "TooManyRequestsException$Type": null, "TooManyRequestsException$message": null, "UnsupportedMediaTypeException$Type": null, "UnsupportedMediaTypeException$message": null, "UpdateEventSourceMappingRequest$UUID": "

        The event source mapping identifier.

        " } }, "SubnetIPAddressLimitReachedException": { "base": "

        AWS Lambda was not able to set up VPC access for the Lambda function because one or more configured subnets has no available IP addresses.

        ", "refs": { } }, "SubnetId": { "base": null, "refs": { "SubnetIds$member": null } }, "SubnetIds": { "base": null, "refs": { "VpcConfig$SubnetIds": "

        A list of one or more subnet IDs in your VPC.

        ", "VpcConfigResponse$SubnetIds": "

        A list of subnet IDs associated with the Lambda function.

        " } }, "ThrottleReason": { "base": null, "refs": { "TooManyRequestsException$Reason": null } }, "Timeout": { "base": null, "refs": { "CreateFunctionRequest$Timeout": "

        The function execution time at which Lambda should terminate the function. Because the execution time has cost implications, we recommend you set this value based on your expected execution time. The default is 3 seconds.

        ", "FunctionConfiguration$Timeout": "

        The function execution time at which Lambda should terminate the function. Because the execution time has cost implications, we recommend you set this value based on your expected execution time. The default is 3 seconds.

        ", "UpdateFunctionConfigurationRequest$Timeout": "

        The function execution time at which AWS Lambda should terminate the function. Because the execution time has cost implications, we recommend you set this value based on your expected execution time. The default is 3 seconds.

        " } }, "Timestamp": { "base": null, "refs": { "FunctionConfiguration$LastModified": "

        The time stamp of the last time you updated the function.

        " } }, "TooManyRequestsException": { "base": "

        ", "refs": { } }, "UnsupportedMediaTypeException": { "base": "

        The content type of the Invoke request body is not JSON.

        ", "refs": { } }, "UpdateAliasRequest": { "base": null, "refs": { } }, "UpdateEventSourceMappingRequest": { "base": "

        ", "refs": { } }, "UpdateFunctionCodeRequest": { "base": "

        ", "refs": { } }, "UpdateFunctionConfigurationRequest": { "base": "

        ", "refs": { } }, "Version": { "base": null, "refs": { "AliasConfiguration$FunctionVersion": "

        Function version to which the alias points.

        ", "CreateAliasRequest$FunctionVersion": "

        Lambda function version for which you are creating the alias.

        ", "FunctionConfiguration$Version": "

        The version of the Lambda function.

        ", "ListAliasesRequest$FunctionVersion": "

        If you specify this optional parameter, the API returns only the aliases that are pointing to the specific Lambda function version, otherwise the API returns all of the aliases created for the Lambda function.

        ", "UpdateAliasRequest$FunctionVersion": "

        Using this parameter you can change the Lambda function version to which the alias points.

        " } }, "VpcConfig": { "base": "

        If your Lambda function accesses resources in a VPC, you provide this parameter identifying the list of security group IDs and subnet IDs. These must belong to the same VPC. You must provide at least one security group and one subnet ID.

        ", "refs": { "CreateFunctionRequest$VpcConfig": "

        If your Lambda function accesses resources in a VPC, you provide this parameter identifying the list of security group IDs and subnet IDs. These must belong to the same VPC. You must provide at least one security group and one subnet ID.

        ", "UpdateFunctionConfigurationRequest$VpcConfig": null } }, "VpcConfigResponse": { "base": "

        VPC configuration associated with your Lambda function.

        ", "refs": { "FunctionConfiguration$VpcConfig": "

        VPC configuration associated with your Lambda function.

        " } }, "VpcId": { "base": null, "refs": { "VpcConfigResponse$VpcId": "

        The VPC ID associated with you Lambda function.

        " } } } } aws-sdk-go-1.4.22/models/apis/lambda/2015-03-31/examples-1.json000066400000000000000000000000541300374646400231200ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/lambda/2015-03-31/paginators-1.json000066400000000000000000000005551300374646400234570ustar00rootroot00000000000000{ "pagination": { "ListEventSourceMappings": { "input_token": "Marker", "output_token": "NextMarker", "limit_key": "MaxItems", "result_key": "EventSourceMappings" }, "ListFunctions": { "input_token": "Marker", "output_token": "NextMarker", "limit_key": "MaxItems", "result_key": "Functions" } } } aws-sdk-go-1.4.22/models/apis/logs/000077500000000000000000000000001300374646400167465ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/logs/2014-03-28/000077500000000000000000000000001300374646400200035ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/logs/2014-03-28/api-2.json000066400000000000000000000736161300374646400216230ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2014-03-28", "endpointPrefix":"logs", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"Amazon CloudWatch Logs", "signatureVersion":"v4", "targetPrefix":"Logs_20140328" }, "operations":{ "CancelExportTask":{ "name":"CancelExportTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelExportTaskRequest"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidOperationException"}, {"shape":"ServiceUnavailableException"} ] }, "CreateExportTask":{ "name":"CreateExportTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateExportTaskRequest"}, "output":{"shape":"CreateExportTaskResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"LimitExceededException"}, {"shape":"OperationAbortedException"}, {"shape":"ServiceUnavailableException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ResourceAlreadyExistsException"} ] }, "CreateLogGroup":{ "name":"CreateLogGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateLogGroupRequest"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceAlreadyExistsException"}, {"shape":"LimitExceededException"}, {"shape":"OperationAbortedException"}, {"shape":"ServiceUnavailableException"} ] }, "CreateLogStream":{ "name":"CreateLogStream", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateLogStreamRequest"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceAlreadyExistsException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ServiceUnavailableException"} ] }, "DeleteDestination":{ "name":"DeleteDestination", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDestinationRequest"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"OperationAbortedException"}, {"shape":"ServiceUnavailableException"} ] }, "DeleteLogGroup":{ "name":"DeleteLogGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteLogGroupRequest"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"OperationAbortedException"}, {"shape":"ServiceUnavailableException"} ] }, "DeleteLogStream":{ "name":"DeleteLogStream", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteLogStreamRequest"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"OperationAbortedException"}, {"shape":"ServiceUnavailableException"} ] }, "DeleteMetricFilter":{ "name":"DeleteMetricFilter", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteMetricFilterRequest"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"OperationAbortedException"}, {"shape":"ServiceUnavailableException"} ] }, "DeleteRetentionPolicy":{ "name":"DeleteRetentionPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRetentionPolicyRequest"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"OperationAbortedException"}, {"shape":"ServiceUnavailableException"} ] }, "DeleteSubscriptionFilter":{ "name":"DeleteSubscriptionFilter", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSubscriptionFilterRequest"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"OperationAbortedException"}, {"shape":"ServiceUnavailableException"} ] }, "DescribeDestinations":{ "name":"DescribeDestinations", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDestinationsRequest"}, "output":{"shape":"DescribeDestinationsResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ServiceUnavailableException"} ] }, "DescribeExportTasks":{ "name":"DescribeExportTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeExportTasksRequest"}, "output":{"shape":"DescribeExportTasksResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ServiceUnavailableException"} ] }, "DescribeLogGroups":{ "name":"DescribeLogGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeLogGroupsRequest"}, "output":{"shape":"DescribeLogGroupsResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ServiceUnavailableException"} ] }, "DescribeLogStreams":{ "name":"DescribeLogStreams", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeLogStreamsRequest"}, "output":{"shape":"DescribeLogStreamsResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ServiceUnavailableException"} ] }, "DescribeMetricFilters":{ "name":"DescribeMetricFilters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeMetricFiltersRequest"}, "output":{"shape":"DescribeMetricFiltersResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ServiceUnavailableException"} ] }, "DescribeSubscriptionFilters":{ "name":"DescribeSubscriptionFilters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSubscriptionFiltersRequest"}, "output":{"shape":"DescribeSubscriptionFiltersResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ServiceUnavailableException"} ] }, "FilterLogEvents":{ "name":"FilterLogEvents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"FilterLogEventsRequest"}, "output":{"shape":"FilterLogEventsResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ServiceUnavailableException"} ] }, "GetLogEvents":{ "name":"GetLogEvents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetLogEventsRequest"}, "output":{"shape":"GetLogEventsResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ServiceUnavailableException"} ] }, "PutDestination":{ "name":"PutDestination", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutDestinationRequest"}, "output":{"shape":"PutDestinationResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"OperationAbortedException"}, {"shape":"ServiceUnavailableException"} ] }, "PutDestinationPolicy":{ "name":"PutDestinationPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutDestinationPolicyRequest"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"OperationAbortedException"}, {"shape":"ServiceUnavailableException"} ] }, "PutLogEvents":{ "name":"PutLogEvents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutLogEventsRequest"}, "output":{"shape":"PutLogEventsResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InvalidSequenceTokenException"}, {"shape":"DataAlreadyAcceptedException"}, {"shape":"ResourceNotFoundException"}, {"shape":"ServiceUnavailableException"} ] }, "PutMetricFilter":{ "name":"PutMetricFilter", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutMetricFilterRequest"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"OperationAbortedException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceUnavailableException"} ] }, "PutRetentionPolicy":{ "name":"PutRetentionPolicy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutRetentionPolicyRequest"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"OperationAbortedException"}, {"shape":"ServiceUnavailableException"} ] }, "PutSubscriptionFilter":{ "name":"PutSubscriptionFilter", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutSubscriptionFilterRequest"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ResourceNotFoundException"}, {"shape":"OperationAbortedException"}, {"shape":"LimitExceededException"}, {"shape":"ServiceUnavailableException"} ] }, "TestMetricFilter":{ "name":"TestMetricFilter", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"TestMetricFilterRequest"}, "output":{"shape":"TestMetricFilterResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ServiceUnavailableException"} ] } }, "shapes":{ "AccessPolicy":{ "type":"string", "min":1 }, "Arn":{"type":"string"}, "CancelExportTaskRequest":{ "type":"structure", "required":["taskId"], "members":{ "taskId":{"shape":"ExportTaskId"} } }, "CreateExportTaskRequest":{ "type":"structure", "required":[ "logGroupName", "from", "to", "destination" ], "members":{ "taskName":{"shape":"ExportTaskName"}, "logGroupName":{"shape":"LogGroupName"}, "logStreamNamePrefix":{"shape":"LogStreamName"}, "from":{"shape":"Timestamp"}, "to":{"shape":"Timestamp"}, "destination":{"shape":"ExportDestinationBucket"}, "destinationPrefix":{"shape":"ExportDestinationPrefix"} } }, "CreateExportTaskResponse":{ "type":"structure", "members":{ "taskId":{"shape":"ExportTaskId"} } }, "CreateLogGroupRequest":{ "type":"structure", "required":["logGroupName"], "members":{ "logGroupName":{"shape":"LogGroupName"} } }, "CreateLogStreamRequest":{ "type":"structure", "required":[ "logGroupName", "logStreamName" ], "members":{ "logGroupName":{"shape":"LogGroupName"}, "logStreamName":{"shape":"LogStreamName"} } }, "DataAlreadyAcceptedException":{ "type":"structure", "members":{ "expectedSequenceToken":{"shape":"SequenceToken"} }, "exception":true }, "Days":{"type":"integer"}, "DefaultValue":{"type":"double"}, "DeleteDestinationRequest":{ "type":"structure", "required":["destinationName"], "members":{ "destinationName":{"shape":"DestinationName"} } }, "DeleteLogGroupRequest":{ "type":"structure", "required":["logGroupName"], "members":{ "logGroupName":{"shape":"LogGroupName"} } }, "DeleteLogStreamRequest":{ "type":"structure", "required":[ "logGroupName", "logStreamName" ], "members":{ "logGroupName":{"shape":"LogGroupName"}, "logStreamName":{"shape":"LogStreamName"} } }, "DeleteMetricFilterRequest":{ "type":"structure", "required":[ "logGroupName", "filterName" ], "members":{ "logGroupName":{"shape":"LogGroupName"}, "filterName":{"shape":"FilterName"} } }, "DeleteRetentionPolicyRequest":{ "type":"structure", "required":["logGroupName"], "members":{ "logGroupName":{"shape":"LogGroupName"} } }, "DeleteSubscriptionFilterRequest":{ "type":"structure", "required":[ "logGroupName", "filterName" ], "members":{ "logGroupName":{"shape":"LogGroupName"}, "filterName":{"shape":"FilterName"} } }, "Descending":{"type":"boolean"}, "DescribeDestinationsRequest":{ "type":"structure", "members":{ "DestinationNamePrefix":{"shape":"DestinationName"}, "nextToken":{"shape":"NextToken"}, "limit":{"shape":"DescribeLimit"} } }, "DescribeDestinationsResponse":{ "type":"structure", "members":{ "destinations":{"shape":"Destinations"}, "nextToken":{"shape":"NextToken"} } }, "DescribeExportTasksRequest":{ "type":"structure", "members":{ "taskId":{"shape":"ExportTaskId"}, "statusCode":{"shape":"ExportTaskStatusCode"}, "nextToken":{"shape":"NextToken"}, "limit":{"shape":"DescribeLimit"} } }, "DescribeExportTasksResponse":{ "type":"structure", "members":{ "exportTasks":{"shape":"ExportTasks"}, "nextToken":{"shape":"NextToken"} } }, "DescribeLimit":{ "type":"integer", "max":50, "min":1 }, "DescribeLogGroupsRequest":{ "type":"structure", "members":{ "logGroupNamePrefix":{"shape":"LogGroupName"}, "nextToken":{"shape":"NextToken"}, "limit":{"shape":"DescribeLimit"} } }, "DescribeLogGroupsResponse":{ "type":"structure", "members":{ "logGroups":{"shape":"LogGroups"}, "nextToken":{"shape":"NextToken"} } }, "DescribeLogStreamsRequest":{ "type":"structure", "required":["logGroupName"], "members":{ "logGroupName":{"shape":"LogGroupName"}, "logStreamNamePrefix":{"shape":"LogStreamName"}, "orderBy":{"shape":"OrderBy"}, "descending":{"shape":"Descending"}, "nextToken":{"shape":"NextToken"}, "limit":{"shape":"DescribeLimit"} } }, "DescribeLogStreamsResponse":{ "type":"structure", "members":{ "logStreams":{"shape":"LogStreams"}, "nextToken":{"shape":"NextToken"} } }, "DescribeMetricFiltersRequest":{ "type":"structure", "required":["logGroupName"], "members":{ "logGroupName":{"shape":"LogGroupName"}, "filterNamePrefix":{"shape":"FilterName"}, "nextToken":{"shape":"NextToken"}, "limit":{"shape":"DescribeLimit"} } }, "DescribeMetricFiltersResponse":{ "type":"structure", "members":{ "metricFilters":{"shape":"MetricFilters"}, "nextToken":{"shape":"NextToken"} } }, "DescribeSubscriptionFiltersRequest":{ "type":"structure", "required":["logGroupName"], "members":{ "logGroupName":{"shape":"LogGroupName"}, "filterNamePrefix":{"shape":"FilterName"}, "nextToken":{"shape":"NextToken"}, "limit":{"shape":"DescribeLimit"} } }, "DescribeSubscriptionFiltersResponse":{ "type":"structure", "members":{ "subscriptionFilters":{"shape":"SubscriptionFilters"}, "nextToken":{"shape":"NextToken"} } }, "Destination":{ "type":"structure", "members":{ "destinationName":{"shape":"DestinationName"}, "targetArn":{"shape":"TargetArn"}, "roleArn":{"shape":"RoleArn"}, "accessPolicy":{"shape":"AccessPolicy"}, "arn":{"shape":"Arn"}, "creationTime":{"shape":"Timestamp"} } }, "DestinationArn":{ "type":"string", "min":1 }, "DestinationName":{ "type":"string", "max":512, "min":1, "pattern":"[^:*]*" }, "Destinations":{ "type":"list", "member":{"shape":"Destination"} }, "EventId":{"type":"string"}, "EventMessage":{ "type":"string", "min":1 }, "EventNumber":{"type":"long"}, "EventsLimit":{ "type":"integer", "max":10000, "min":1 }, "ExportDestinationBucket":{ "type":"string", "max":512, "min":1 }, "ExportDestinationPrefix":{"type":"string"}, "ExportTask":{ "type":"structure", "members":{ "taskId":{"shape":"ExportTaskId"}, "taskName":{"shape":"ExportTaskName"}, "logGroupName":{"shape":"LogGroupName"}, "from":{"shape":"Timestamp"}, "to":{"shape":"Timestamp"}, "destination":{"shape":"ExportDestinationBucket"}, "destinationPrefix":{"shape":"ExportDestinationPrefix"}, "status":{"shape":"ExportTaskStatus"}, "executionInfo":{"shape":"ExportTaskExecutionInfo"} } }, "ExportTaskExecutionInfo":{ "type":"structure", "members":{ "creationTime":{"shape":"Timestamp"}, "completionTime":{"shape":"Timestamp"} } }, "ExportTaskId":{ "type":"string", "max":512, "min":1 }, "ExportTaskName":{ "type":"string", "max":512, "min":1 }, "ExportTaskStatus":{ "type":"structure", "members":{ "code":{"shape":"ExportTaskStatusCode"}, "message":{"shape":"ExportTaskStatusMessage"} } }, "ExportTaskStatusCode":{ "type":"string", "enum":[ "CANCELLED", "COMPLETED", "FAILED", "PENDING", "PENDING_CANCEL", "RUNNING" ] }, "ExportTaskStatusMessage":{"type":"string"}, "ExportTasks":{ "type":"list", "member":{"shape":"ExportTask"} }, "ExtractedValues":{ "type":"map", "key":{"shape":"Token"}, "value":{"shape":"Value"} }, "FilterCount":{"type":"integer"}, "FilterLogEventsRequest":{ "type":"structure", "required":["logGroupName"], "members":{ "logGroupName":{"shape":"LogGroupName"}, "logStreamNames":{"shape":"InputLogStreamNames"}, "startTime":{"shape":"Timestamp"}, "endTime":{"shape":"Timestamp"}, "filterPattern":{"shape":"FilterPattern"}, "nextToken":{"shape":"NextToken"}, "limit":{"shape":"EventsLimit"}, "interleaved":{"shape":"Interleaved"} } }, "FilterLogEventsResponse":{ "type":"structure", "members":{ "events":{"shape":"FilteredLogEvents"}, "searchedLogStreams":{"shape":"SearchedLogStreams"}, "nextToken":{"shape":"NextToken"} } }, "FilterName":{ "type":"string", "max":512, "min":1, "pattern":"[^:*]*" }, "FilterPattern":{ "type":"string", "max":1024, "min":0 }, "FilteredLogEvent":{ "type":"structure", "members":{ "logStreamName":{"shape":"LogStreamName"}, "timestamp":{"shape":"Timestamp"}, "message":{"shape":"EventMessage"}, "ingestionTime":{"shape":"Timestamp"}, "eventId":{"shape":"EventId"} } }, "FilteredLogEvents":{ "type":"list", "member":{"shape":"FilteredLogEvent"} }, "GetLogEventsRequest":{ "type":"structure", "required":[ "logGroupName", "logStreamName" ], "members":{ "logGroupName":{"shape":"LogGroupName"}, "logStreamName":{"shape":"LogStreamName"}, "startTime":{"shape":"Timestamp"}, "endTime":{"shape":"Timestamp"}, "nextToken":{"shape":"NextToken"}, "limit":{"shape":"EventsLimit"}, "startFromHead":{"shape":"StartFromHead"} } }, "GetLogEventsResponse":{ "type":"structure", "members":{ "events":{"shape":"OutputLogEvents"}, "nextForwardToken":{"shape":"NextToken"}, "nextBackwardToken":{"shape":"NextToken"} } }, "InputLogEvent":{ "type":"structure", "required":[ "timestamp", "message" ], "members":{ "timestamp":{"shape":"Timestamp"}, "message":{"shape":"EventMessage"} } }, "InputLogEvents":{ "type":"list", "member":{"shape":"InputLogEvent"}, "max":10000, "min":1 }, "InputLogStreamNames":{ "type":"list", "member":{"shape":"LogStreamName"}, "max":100, "min":1 }, "Interleaved":{"type":"boolean"}, "InvalidOperationException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidParameterException":{ "type":"structure", "members":{ }, "exception":true }, "InvalidSequenceTokenException":{ "type":"structure", "members":{ "expectedSequenceToken":{"shape":"SequenceToken"} }, "exception":true }, "LimitExceededException":{ "type":"structure", "members":{ }, "exception":true }, "LogEventIndex":{"type":"integer"}, "LogGroup":{ "type":"structure", "members":{ "logGroupName":{"shape":"LogGroupName"}, "creationTime":{"shape":"Timestamp"}, "retentionInDays":{"shape":"Days"}, "metricFilterCount":{"shape":"FilterCount"}, "arn":{"shape":"Arn"}, "storedBytes":{"shape":"StoredBytes"} } }, "LogGroupName":{ "type":"string", "max":512, "min":1, "pattern":"[\\.\\-_/#A-Za-z0-9]+" }, "LogGroups":{ "type":"list", "member":{"shape":"LogGroup"} }, "LogStream":{ "type":"structure", "members":{ "logStreamName":{"shape":"LogStreamName"}, "creationTime":{"shape":"Timestamp"}, "firstEventTimestamp":{"shape":"Timestamp"}, "lastEventTimestamp":{"shape":"Timestamp"}, "lastIngestionTime":{"shape":"Timestamp"}, "uploadSequenceToken":{"shape":"SequenceToken"}, "arn":{"shape":"Arn"}, "storedBytes":{"shape":"StoredBytes"} } }, "LogStreamName":{ "type":"string", "max":512, "min":1, "pattern":"[^:*]*" }, "LogStreamSearchedCompletely":{"type":"boolean"}, "LogStreams":{ "type":"list", "member":{"shape":"LogStream"} }, "MetricFilter":{ "type":"structure", "members":{ "filterName":{"shape":"FilterName"}, "filterPattern":{"shape":"FilterPattern"}, "metricTransformations":{"shape":"MetricTransformations"}, "creationTime":{"shape":"Timestamp"} } }, "MetricFilterMatchRecord":{ "type":"structure", "members":{ "eventNumber":{"shape":"EventNumber"}, "eventMessage":{"shape":"EventMessage"}, "extractedValues":{"shape":"ExtractedValues"} } }, "MetricFilterMatches":{ "type":"list", "member":{"shape":"MetricFilterMatchRecord"} }, "MetricFilters":{ "type":"list", "member":{"shape":"MetricFilter"} }, "MetricName":{ "type":"string", "max":255, "pattern":"[^:*$]*" }, "MetricNamespace":{ "type":"string", "max":255, "pattern":"[^:*$]*" }, "MetricTransformation":{ "type":"structure", "required":[ "metricName", "metricNamespace", "metricValue" ], "members":{ "metricName":{"shape":"MetricName"}, "metricNamespace":{"shape":"MetricNamespace"}, "metricValue":{"shape":"MetricValue"}, "defaultValue":{"shape":"DefaultValue"} } }, "MetricTransformations":{ "type":"list", "member":{"shape":"MetricTransformation"}, "max":1, "min":1 }, "MetricValue":{ "type":"string", "max":100 }, "NextToken":{ "type":"string", "min":1 }, "OperationAbortedException":{ "type":"structure", "members":{ }, "exception":true }, "OrderBy":{ "type":"string", "enum":[ "LogStreamName", "LastEventTime" ] }, "OutputLogEvent":{ "type":"structure", "members":{ "timestamp":{"shape":"Timestamp"}, "message":{"shape":"EventMessage"}, "ingestionTime":{"shape":"Timestamp"} } }, "OutputLogEvents":{ "type":"list", "member":{"shape":"OutputLogEvent"} }, "PutDestinationPolicyRequest":{ "type":"structure", "required":[ "destinationName", "accessPolicy" ], "members":{ "destinationName":{"shape":"DestinationName"}, "accessPolicy":{"shape":"AccessPolicy"} } }, "PutDestinationRequest":{ "type":"structure", "required":[ "destinationName", "targetArn", "roleArn" ], "members":{ "destinationName":{"shape":"DestinationName"}, "targetArn":{"shape":"TargetArn"}, "roleArn":{"shape":"RoleArn"} } }, "PutDestinationResponse":{ "type":"structure", "members":{ "destination":{"shape":"Destination"} } }, "PutLogEventsRequest":{ "type":"structure", "required":[ "logGroupName", "logStreamName", "logEvents" ], "members":{ "logGroupName":{"shape":"LogGroupName"}, "logStreamName":{"shape":"LogStreamName"}, "logEvents":{"shape":"InputLogEvents"}, "sequenceToken":{"shape":"SequenceToken"} } }, "PutLogEventsResponse":{ "type":"structure", "members":{ "nextSequenceToken":{"shape":"SequenceToken"}, "rejectedLogEventsInfo":{"shape":"RejectedLogEventsInfo"} } }, "PutMetricFilterRequest":{ "type":"structure", "required":[ "logGroupName", "filterName", "filterPattern", "metricTransformations" ], "members":{ "logGroupName":{"shape":"LogGroupName"}, "filterName":{"shape":"FilterName"}, "filterPattern":{"shape":"FilterPattern"}, "metricTransformations":{"shape":"MetricTransformations"} } }, "PutRetentionPolicyRequest":{ "type":"structure", "required":[ "logGroupName", "retentionInDays" ], "members":{ "logGroupName":{"shape":"LogGroupName"}, "retentionInDays":{"shape":"Days"} } }, "PutSubscriptionFilterRequest":{ "type":"structure", "required":[ "logGroupName", "filterName", "filterPattern", "destinationArn" ], "members":{ "logGroupName":{"shape":"LogGroupName"}, "filterName":{"shape":"FilterName"}, "filterPattern":{"shape":"FilterPattern"}, "destinationArn":{"shape":"DestinationArn"}, "roleArn":{"shape":"RoleArn"} } }, "RejectedLogEventsInfo":{ "type":"structure", "members":{ "tooNewLogEventStartIndex":{"shape":"LogEventIndex"}, "tooOldLogEventEndIndex":{"shape":"LogEventIndex"}, "expiredLogEventEndIndex":{"shape":"LogEventIndex"} } }, "ResourceAlreadyExistsException":{ "type":"structure", "members":{ }, "exception":true }, "ResourceNotFoundException":{ "type":"structure", "members":{ }, "exception":true }, "RoleArn":{ "type":"string", "min":1 }, "SearchedLogStream":{ "type":"structure", "members":{ "logStreamName":{"shape":"LogStreamName"}, "searchedCompletely":{"shape":"LogStreamSearchedCompletely"} } }, "SearchedLogStreams":{ "type":"list", "member":{"shape":"SearchedLogStream"} }, "SequenceToken":{ "type":"string", "min":1 }, "ServiceUnavailableException":{ "type":"structure", "members":{ }, "exception":true, "fault":true }, "StartFromHead":{"type":"boolean"}, "StoredBytes":{ "type":"long", "min":0 }, "SubscriptionFilter":{ "type":"structure", "members":{ "filterName":{"shape":"FilterName"}, "logGroupName":{"shape":"LogGroupName"}, "filterPattern":{"shape":"FilterPattern"}, "destinationArn":{"shape":"DestinationArn"}, "roleArn":{"shape":"RoleArn"}, "creationTime":{"shape":"Timestamp"} } }, "SubscriptionFilters":{ "type":"list", "member":{"shape":"SubscriptionFilter"} }, "TargetArn":{ "type":"string", "min":1 }, "TestEventMessages":{ "type":"list", "member":{"shape":"EventMessage"}, "max":50, "min":1 }, "TestMetricFilterRequest":{ "type":"structure", "required":[ "filterPattern", "logEventMessages" ], "members":{ "filterPattern":{"shape":"FilterPattern"}, "logEventMessages":{"shape":"TestEventMessages"} } }, "TestMetricFilterResponse":{ "type":"structure", "members":{ "matches":{"shape":"MetricFilterMatches"} } }, "Timestamp":{ "type":"long", "min":0 }, "Token":{"type":"string"}, "Value":{"type":"string"} } } aws-sdk-go-1.4.22/models/apis/logs/2014-03-28/docs-2.json000066400000000000000000001326641300374646400220010ustar00rootroot00000000000000{ "version": "2.0", "service": "

        You can use Amazon CloudWatch Logs to monitor, store, and access your log files from Amazon Elastic Compute Cloud (Amazon EC2) instances, Amazon CloudTrail, or other sources. You can then retrieve the associated log data from CloudWatch Logs using the Amazon CloudWatch console, the CloudWatch Logs commands in the AWS CLI, the CloudWatch Logs API, or the CloudWatch Logs SDK.

        You can use CloudWatch Logs to:

        • Monitor Logs from Amazon EC2 Instances in Real-time: You can use CloudWatch Logs to monitor applications and systems using log data. For example, CloudWatch Logs can track the number of errors that occur in your application logs and send you a notification whenever the rate of errors exceeds a threshold you specify. CloudWatch Logs uses your log data for monitoring; so, no code changes are required. For example, you can monitor application logs for specific literal terms (such as \"NullReferenceException\") or count the number of occurrences of a literal term at a particular position in log data (such as \"404\" status codes in an Apache access log). When the term you are searching for is found, CloudWatch Logs reports the data to a Amazon CloudWatch metric that you specify.

        • Monitor Amazon CloudTrail Logged Events: You can create alarms in Amazon CloudWatch and receive notifications of particular API activity as captured by CloudTrail and use the notification to perform troubleshooting.

        • Archive Log Data: You can use CloudWatch Logs to store your log data in highly durable storage. You can change the log retention setting so that any log events older than this setting are automatically deleted. The CloudWatch Logs agent makes it easy to quickly send both rotated and non-rotated log data off of a host and into the log service. You can then access the raw log data when you need it.

        ", "operations": { "CancelExportTask": "

        Cancels an export task if it is in PENDING or RUNNING state.

        ", "CreateExportTask": "

        Creates an ExportTask which allows you to efficiently export data from a Log Group to your Amazon S3 bucket.

        This is an asynchronous call. If all the required information is provided, this API will initiate an export task and respond with the task Id. Once started, DescribeExportTasks can be used to get the status of an export task. You can only have one active (RUNNING or PENDING) export task at a time, per account.

        You can export logs from multiple log groups or multiple time ranges to the same Amazon S3 bucket. To separate out log data for each export task, you can specify a prefix that will be used as the Amazon S3 key prefix for all exported objects.

        ", "CreateLogGroup": "

        Creates a new log group with the specified name. The name of the log group must be unique within a region for an AWS account. You can create up to 500 log groups per account.

        You must use the following guidelines when naming a log group:

        • Log group names can be between 1 and 512 characters long.

        • Allowed characters are a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), '/' (forward slash), and '.' (period).

        ", "CreateLogStream": "

        Creates a new log stream in the specified log group. The name of the log stream must be unique within the log group. There is no limit on the number of log streams that can exist in a log group.

        You must use the following guidelines when naming a log stream:

        • Log stream names can be between 1 and 512 characters long.

        • The ':' colon character is not allowed.

        ", "DeleteDestination": "

        Deletes the destination with the specified name and eventually disables all the subscription filters that publish to it. This will not delete the physical resource encapsulated by the destination.

        ", "DeleteLogGroup": "

        Deletes the log group with the specified name and permanently deletes all the archived log events associated with it.

        ", "DeleteLogStream": "

        Deletes a log stream and permanently deletes all the archived log events associated with it.

        ", "DeleteMetricFilter": "

        Deletes a metric filter associated with the specified log group.

        ", "DeleteRetentionPolicy": "

        Deletes the retention policy of the specified log group. Log events would not expire if they belong to log groups without a retention policy.

        ", "DeleteSubscriptionFilter": "

        Deletes a subscription filter associated with the specified log group.

        ", "DescribeDestinations": "

        Returns all the destinations that are associated with the AWS account making the request. The list returned in the response is ASCII-sorted by destination name.

        By default, this operation returns up to 50 destinations. If there are more destinations to list, the response would contain a nextToken value in the response body. You can also limit the number of destinations returned in the response by specifying the limit parameter in the request.

        ", "DescribeExportTasks": "

        Returns all the export tasks that are associated with the AWS account making the request. The export tasks can be filtered based on TaskId or TaskStatus.

        By default, this operation returns up to 50 export tasks that satisfy the specified filters. If there are more export tasks to list, the response would contain a nextToken value in the response body. You can also limit the number of export tasks returned in the response by specifying the limit parameter in the request.

        ", "DescribeLogGroups": "

        Returns all the log groups that are associated with the AWS account making the request. The list returned in the response is ASCII-sorted by log group name.

        By default, this operation returns up to 50 log groups. If there are more log groups to list, the response would contain a nextToken value in the response body. You can also limit the number of log groups returned in the response by specifying the limit parameter in the request.

        ", "DescribeLogStreams": "

        Returns all the log streams that are associated with the specified log group. The list returned in the response is ASCII-sorted by log stream name.

        By default, this operation returns up to 50 log streams. If there are more log streams to list, the response would contain a nextToken value in the response body. You can also limit the number of log streams returned in the response by specifying the limit parameter in the request. This operation has a limit of five transactions per second, after which transactions are throttled.

        ", "DescribeMetricFilters": "

        Returns all the metrics filters associated with the specified log group. The list returned in the response is ASCII-sorted by filter name.

        By default, this operation returns up to 50 metric filters. If there are more metric filters to list, the response would contain a nextToken value in the response body. You can also limit the number of metric filters returned in the response by specifying the limit parameter in the request.

        ", "DescribeSubscriptionFilters": "

        Returns all the subscription filters associated with the specified log group. The list returned in the response is ASCII-sorted by filter name.

        By default, this operation returns up to 50 subscription filters. If there are more subscription filters to list, the response would contain a nextToken value in the response body. You can also limit the number of subscription filters returned in the response by specifying the limit parameter in the request.

        ", "FilterLogEvents": "

        Retrieves log events, optionally filtered by a filter pattern from the specified log group. You can provide an optional time range to filter the results on the event timestamp. You can limit the streams searched to an explicit list of logStreamNames.

        By default, this operation returns as much matching log events as can fit in a response size of 1MB, up to 10,000 log events, or all the events found within a time-bounded scan window. If the response includes a nextToken, then there is more data to search, and the search can be resumed with a new request providing the nextToken. The response will contain a list of searchedLogStreams that contains information about which streams were searched in the request and whether they have been searched completely or require further pagination. The limit parameter in the request can be used to specify the maximum number of events to return in a page.

        ", "GetLogEvents": "

        Retrieves log events from the specified log stream. You can provide an optional time range to filter the results on the event timestamp.

        By default, this operation returns as much log events as can fit in a response size of 1MB, up to 10,000 log events. The response will always include a nextForwardToken and a nextBackwardToken in the response body. You can use any of these tokens in subsequent GetLogEvents requests to paginate through events in either forward or backward direction. You can also limit the number of log events returned in the response by specifying the limit parameter in the request.

        ", "PutDestination": "

        Creates or updates a Destination. A destination encapsulates a physical resource (such as a Kinesis stream) and allows you to subscribe to a real-time stream of log events of a different account, ingested through PutLogEvents requests. Currently, the only supported physical resource is a Amazon Kinesis stream belonging to the same account as the destination.

        A destination controls what is written to its Amazon Kinesis stream through an access policy. By default, PutDestination does not set any access policy with the destination, which means a cross-account user will not be able to call PutSubscriptionFilter against this destination. To enable that, the destination owner must call PutDestinationPolicy after PutDestination.

        ", "PutDestinationPolicy": "

        Creates or updates an access policy associated with an existing Destination. An access policy is an IAM policy document that is used to authorize claims to register a subscription filter against a given destination.

        ", "PutLogEvents": "

        Uploads a batch of log events to the specified log stream.

        Every PutLogEvents request must include the sequenceToken obtained from the response of the previous request. An upload in a newly created log stream does not require a sequenceToken. You can also get the sequenceToken using DescribeLogStreams.

        The batch of events must satisfy the following constraints:

        • The maximum batch size is 1,048,576 bytes, and this size is calculated as the sum of all event messages in UTF-8, plus 26 bytes for each log event.

        • None of the log events in the batch can be more than 2 hours in the future.

        • None of the log events in the batch can be older than 14 days or the retention period of the log group.

        • The log events in the batch must be in chronological ordered by their timestamp.

        • The maximum number of log events in a batch is 10,000.

        • A batch of log events in a single PutLogEvents request cannot span more than 24 hours. Otherwise, the PutLogEvents operation will fail.

        ", "PutMetricFilter": "

        Creates or updates a metric filter and associates it with the specified log group. Metric filters allow you to configure rules to extract metric data from log events ingested through PutLogEvents requests.

        The maximum number of metric filters that can be associated with a log group is 100.

        ", "PutRetentionPolicy": "

        Sets the retention of the specified log group. A retention policy allows you to configure the number of days you want to retain log events in the specified log group.

        ", "PutSubscriptionFilter": "

        Creates or updates a subscription filter and associates it with the specified log group. Subscription filters allow you to subscribe to a real-time stream of log events ingested through PutLogEvents requests and have them delivered to a specific destination. Currently, the supported destinations are:

        • An Amazon Kinesis stream belonging to the same account as the subscription filter, for same-account delivery.

        • A logical destination (used via an ARN of Destination) belonging to a different account, for cross-account delivery.

        • An Amazon Kinesis Firehose stream belonging to the same account as the subscription filter, for same-account delivery.

        • An AWS Lambda function belonging to the same account as the subscription filter, for same-account delivery.

        Currently there can only be one subscription filter associated with a log group.

        ", "TestMetricFilter": "

        Tests the filter pattern of a metric filter against a sample of log event messages. You can use this operation to validate the correctness of a metric filter pattern.

        " }, "shapes": { "AccessPolicy": { "base": null, "refs": { "Destination$accessPolicy": "

        An IAM policy document that governs which AWS accounts can create subscription filters against this destination.

        ", "PutDestinationPolicyRequest$accessPolicy": "

        An IAM policy document that authorizes cross-account users to deliver their log events to associated destination.

        " } }, "Arn": { "base": null, "refs": { "Destination$arn": "

        ARN of this destination.

        ", "LogGroup$arn": null, "LogStream$arn": null } }, "CancelExportTaskRequest": { "base": null, "refs": { } }, "CreateExportTaskRequest": { "base": null, "refs": { } }, "CreateExportTaskResponse": { "base": null, "refs": { } }, "CreateLogGroupRequest": { "base": null, "refs": { } }, "CreateLogStreamRequest": { "base": null, "refs": { } }, "DataAlreadyAcceptedException": { "base": null, "refs": { } }, "Days": { "base": "

        Specifies the number of days you want to retain log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1827, 3653.

        ", "refs": { "LogGroup$retentionInDays": null, "PutRetentionPolicyRequest$retentionInDays": null } }, "DefaultValue": { "base": null, "refs": { "MetricTransformation$defaultValue": "

        (Optional) A default value to emit when a filter pattern does not match a log event. Can be null.

        " } }, "DeleteDestinationRequest": { "base": null, "refs": { } }, "DeleteLogGroupRequest": { "base": null, "refs": { } }, "DeleteLogStreamRequest": { "base": null, "refs": { } }, "DeleteMetricFilterRequest": { "base": null, "refs": { } }, "DeleteRetentionPolicyRequest": { "base": null, "refs": { } }, "DeleteSubscriptionFilterRequest": { "base": null, "refs": { } }, "Descending": { "base": null, "refs": { "DescribeLogStreamsRequest$descending": "

        If set to true, results are returned in descending order. If you don't specify a value or set it to false, results are returned in ascending order.

        " } }, "DescribeDestinationsRequest": { "base": null, "refs": { } }, "DescribeDestinationsResponse": { "base": null, "refs": { } }, "DescribeExportTasksRequest": { "base": null, "refs": { } }, "DescribeExportTasksResponse": { "base": null, "refs": { } }, "DescribeLimit": { "base": "

        The maximum number of results to return.

        ", "refs": { "DescribeDestinationsRequest$limit": null, "DescribeExportTasksRequest$limit": "

        The maximum number of items returned in the response. If you don't specify a value, the request would return up to 50 items.

        ", "DescribeLogGroupsRequest$limit": "

        The maximum number of items returned in the response. If you don't specify a value, the request would return up to 50 items.

        ", "DescribeLogStreamsRequest$limit": "

        The maximum number of items returned in the response. If you don't specify a value, the request would return up to 50 items.

        ", "DescribeMetricFiltersRequest$limit": "

        The maximum number of items returned in the response. If you don't specify a value, the request would return up to 50 items.

        ", "DescribeSubscriptionFiltersRequest$limit": null } }, "DescribeLogGroupsRequest": { "base": null, "refs": { } }, "DescribeLogGroupsResponse": { "base": null, "refs": { } }, "DescribeLogStreamsRequest": { "base": null, "refs": { } }, "DescribeLogStreamsResponse": { "base": null, "refs": { } }, "DescribeMetricFiltersRequest": { "base": null, "refs": { } }, "DescribeMetricFiltersResponse": { "base": null, "refs": { } }, "DescribeSubscriptionFiltersRequest": { "base": null, "refs": { } }, "DescribeSubscriptionFiltersResponse": { "base": null, "refs": { } }, "Destination": { "base": "

        A cross account destination that is the recipient of subscription log events.

        ", "refs": { "Destinations$member": null, "PutDestinationResponse$destination": null } }, "DestinationArn": { "base": null, "refs": { "PutSubscriptionFilterRequest$destinationArn": "

        The ARN of the destination to deliver matching log events to. Currently, the supported destinations are:

        • An Amazon Kinesis stream belonging to the same account as the subscription filter, for same-account delivery.

        • A logical destination (used via an ARN of Destination) belonging to a different account, for cross-account delivery.

        • An Amazon Kinesis Firehose stream belonging to the same account as the subscription filter, for same-account delivery.

        • An AWS Lambda function belonging to the same account as the subscription filter, for same-account delivery.

        ", "SubscriptionFilter$destinationArn": null } }, "DestinationName": { "base": null, "refs": { "DeleteDestinationRequest$destinationName": "

        The name of destination to delete.

        ", "DescribeDestinationsRequest$DestinationNamePrefix": "

        Will only return destinations that match the provided destinationNamePrefix. If you don't specify a value, no prefix is applied.

        ", "Destination$destinationName": "

        Name of the destination.

        ", "PutDestinationPolicyRequest$destinationName": "

        A name for an existing destination.

        ", "PutDestinationRequest$destinationName": "

        A name for the destination.

        " } }, "Destinations": { "base": null, "refs": { "DescribeDestinationsResponse$destinations": null } }, "EventId": { "base": null, "refs": { "FilteredLogEvent$eventId": "

        A unique identifier for this event.

        " } }, "EventMessage": { "base": null, "refs": { "FilteredLogEvent$message": "

        The data contained in the log event.

        ", "InputLogEvent$message": null, "MetricFilterMatchRecord$eventMessage": null, "OutputLogEvent$message": null, "TestEventMessages$member": null } }, "EventNumber": { "base": null, "refs": { "MetricFilterMatchRecord$eventNumber": null } }, "EventsLimit": { "base": "

        The maximum number of events to return.

        ", "refs": { "FilterLogEventsRequest$limit": "

        The maximum number of events to return in a page of results. Default is 10,000 events.

        ", "GetLogEventsRequest$limit": "

        The maximum number of log events returned in the response. If you don't specify a value, the request would return as many log events as can fit in a response size of 1MB, up to 10,000 log events.

        " } }, "ExportDestinationBucket": { "base": null, "refs": { "CreateExportTaskRequest$destination": "

        Name of Amazon S3 bucket to which the log data will be exported.

        Note: Only buckets in the same AWS region are supported.

        ", "ExportTask$destination": "

        Name of Amazon S3 bucket to which the log data was exported.

        " } }, "ExportDestinationPrefix": { "base": null, "refs": { "CreateExportTaskRequest$destinationPrefix": "

        Prefix that will be used as the start of Amazon S3 key for every object exported. If not specified, this defaults to 'exportedlogs'.

        ", "ExportTask$destinationPrefix": "

        Prefix that was used as the start of Amazon S3 key for every object exported.

        " } }, "ExportTask": { "base": "

        Represents an export task.

        ", "refs": { "ExportTasks$member": null } }, "ExportTaskExecutionInfo": { "base": "

        Represents the status of an export task.

        ", "refs": { "ExportTask$executionInfo": "

        Execution info about the export task.

        " } }, "ExportTaskId": { "base": null, "refs": { "CancelExportTaskRequest$taskId": "

        Id of the export task to cancel.

        ", "CreateExportTaskResponse$taskId": "

        Id of the export task that got created.

        ", "DescribeExportTasksRequest$taskId": "

        Export task that matches the specified task Id will be returned. This can result in zero or one export task.

        ", "ExportTask$taskId": "

        Id of the export task.

        " } }, "ExportTaskName": { "base": null, "refs": { "CreateExportTaskRequest$taskName": "

        The name of the export task.

        ", "ExportTask$taskName": "

        The name of the export task.

        " } }, "ExportTaskStatus": { "base": "

        Represents the status of an export task.

        ", "refs": { "ExportTask$status": "

        Status of the export task.

        " } }, "ExportTaskStatusCode": { "base": null, "refs": { "DescribeExportTasksRequest$statusCode": "

        All export tasks that matches the specified status code will be returned. This can return zero or more export tasks.

        ", "ExportTaskStatus$code": "

        Status code of the export task.

        " } }, "ExportTaskStatusMessage": { "base": null, "refs": { "ExportTaskStatus$message": "

        Status message related to the code.

        " } }, "ExportTasks": { "base": "

        A list of export tasks.

        ", "refs": { "DescribeExportTasksResponse$exportTasks": null } }, "ExtractedValues": { "base": null, "refs": { "MetricFilterMatchRecord$extractedValues": null } }, "FilterCount": { "base": "

        The number of metric filters associated with the log group.

        ", "refs": { "LogGroup$metricFilterCount": null } }, "FilterLogEventsRequest": { "base": null, "refs": { } }, "FilterLogEventsResponse": { "base": null, "refs": { } }, "FilterName": { "base": "

        A name for a metric or subscription filter.

        ", "refs": { "DeleteMetricFilterRequest$filterName": "

        The name of the metric filter to delete.

        ", "DeleteSubscriptionFilterRequest$filterName": "

        The name of the subscription filter to delete.

        ", "DescribeMetricFiltersRequest$filterNamePrefix": "

        Will only return metric filters that match the provided filterNamePrefix. If you don't specify a value, no prefix filter is applied.

        ", "DescribeSubscriptionFiltersRequest$filterNamePrefix": "

        Will only return subscription filters that match the provided filterNamePrefix. If you don't specify a value, no prefix filter is applied.

        ", "MetricFilter$filterName": null, "PutMetricFilterRequest$filterName": "

        A name for the metric filter.

        ", "PutSubscriptionFilterRequest$filterName": "

        A name for the subscription filter.

        ", "SubscriptionFilter$filterName": null } }, "FilterPattern": { "base": "

        A symbolic description of how CloudWatch Logs should interpret the data in each log event. For example, a log event may contain timestamps, IP addresses, strings, and so on. You use the filter pattern to specify what to look for in the log event message.

        ", "refs": { "FilterLogEventsRequest$filterPattern": "

        A valid CloudWatch Logs filter pattern to use for filtering the response. If not provided, all the events are matched.

        ", "MetricFilter$filterPattern": null, "PutMetricFilterRequest$filterPattern": "

        A valid CloudWatch Logs filter pattern for extracting metric data out of ingested log events.

        ", "PutSubscriptionFilterRequest$filterPattern": "

        A valid CloudWatch Logs filter pattern for subscribing to a filtered stream of log events.

        ", "SubscriptionFilter$filterPattern": null, "TestMetricFilterRequest$filterPattern": null } }, "FilteredLogEvent": { "base": "

        Represents a matched event from a FilterLogEvents request.

        ", "refs": { "FilteredLogEvents$member": null } }, "FilteredLogEvents": { "base": "

        A list of matched FilteredLogEvent objects returned from a FilterLogEvents request.

        ", "refs": { "FilterLogEventsResponse$events": "

        A list of FilteredLogEvent objects representing the matched events from the request.

        " } }, "GetLogEventsRequest": { "base": null, "refs": { } }, "GetLogEventsResponse": { "base": null, "refs": { } }, "InputLogEvent": { "base": "

        A log event is a record of some activity that was recorded by the application or resource being monitored. The log event record that CloudWatch Logs understands contains two properties: the timestamp of when the event occurred, and the raw event message.

        ", "refs": { "InputLogEvents$member": null } }, "InputLogEvents": { "base": "

        A list of log events belonging to a log stream.

        ", "refs": { "PutLogEventsRequest$logEvents": null } }, "InputLogStreamNames": { "base": "

        A list of log stream names.

        ", "refs": { "FilterLogEventsRequest$logStreamNames": "

        Optional list of log stream names within the specified log group to search. Defaults to all the log streams in the log group.

        " } }, "Interleaved": { "base": null, "refs": { "FilterLogEventsRequest$interleaved": "

        If provided, the API will make a best effort to provide responses that contain events from multiple log streams within the log group interleaved in a single response. If not provided, all the matched log events in the first log stream will be searched first, then those in the next log stream, etc.

        " } }, "InvalidOperationException": { "base": "

        Returned if the operation is not valid on the specified resource

        ", "refs": { } }, "InvalidParameterException": { "base": "

        Returned if a parameter of the request is incorrectly specified.

        ", "refs": { } }, "InvalidSequenceTokenException": { "base": null, "refs": { } }, "LimitExceededException": { "base": "

        Returned if you have reached the maximum number of resources that can be created.

        ", "refs": { } }, "LogEventIndex": { "base": null, "refs": { "RejectedLogEventsInfo$tooNewLogEventStartIndex": null, "RejectedLogEventsInfo$tooOldLogEventEndIndex": null, "RejectedLogEventsInfo$expiredLogEventEndIndex": null } }, "LogGroup": { "base": null, "refs": { "LogGroups$member": null } }, "LogGroupName": { "base": null, "refs": { "CreateExportTaskRequest$logGroupName": "

        The name of the log group to export.

        ", "CreateLogGroupRequest$logGroupName": "

        The name of the log group to create.

        ", "CreateLogStreamRequest$logGroupName": "

        The name of the log group under which the log stream is to be created.

        ", "DeleteLogGroupRequest$logGroupName": "

        The name of the log group to delete.

        ", "DeleteLogStreamRequest$logGroupName": "

        The name of the log group under which the log stream to delete belongs.

        ", "DeleteMetricFilterRequest$logGroupName": "

        The name of the log group that is associated with the metric filter to delete.

        ", "DeleteRetentionPolicyRequest$logGroupName": "

        The name of the log group that is associated with the retention policy to delete.

        ", "DeleteSubscriptionFilterRequest$logGroupName": "

        The name of the log group that is associated with the subscription filter to delete.

        ", "DescribeLogGroupsRequest$logGroupNamePrefix": "

        Will only return log groups that match the provided logGroupNamePrefix. If you don't specify a value, no prefix filter is applied.

        ", "DescribeLogStreamsRequest$logGroupName": "

        The log group name for which log streams are to be listed.

        ", "DescribeMetricFiltersRequest$logGroupName": "

        The log group name for which metric filters are to be listed.

        ", "DescribeSubscriptionFiltersRequest$logGroupName": "

        The log group name for which subscription filters are to be listed.

        ", "ExportTask$logGroupName": "

        The name of the log group from which logs data was exported.

        ", "FilterLogEventsRequest$logGroupName": "

        The name of the log group to query.

        ", "GetLogEventsRequest$logGroupName": "

        The name of the log group to query.

        ", "LogGroup$logGroupName": null, "PutLogEventsRequest$logGroupName": "

        The name of the log group to put log events to.

        ", "PutMetricFilterRequest$logGroupName": "

        The name of the log group to associate the metric filter with.

        ", "PutRetentionPolicyRequest$logGroupName": "

        The name of the log group to associate the retention policy with.

        ", "PutSubscriptionFilterRequest$logGroupName": "

        The name of the log group to associate the subscription filter with.

        ", "SubscriptionFilter$logGroupName": null } }, "LogGroups": { "base": "

        A list of log groups.

        ", "refs": { "DescribeLogGroupsResponse$logGroups": null } }, "LogStream": { "base": "

        A log stream is sequence of log events from a single emitter of logs.

        ", "refs": { "LogStreams$member": null } }, "LogStreamName": { "base": null, "refs": { "CreateExportTaskRequest$logStreamNamePrefix": "

        Will only export log streams that match the provided logStreamNamePrefix. If you don't specify a value, no prefix filter is applied.

        ", "CreateLogStreamRequest$logStreamName": "

        The name of the log stream to create.

        ", "DeleteLogStreamRequest$logStreamName": "

        The name of the log stream to delete.

        ", "DescribeLogStreamsRequest$logStreamNamePrefix": "

        Will only return log streams that match the provided logStreamNamePrefix. If you don't specify a value, no prefix filter is applied.

        ", "FilteredLogEvent$logStreamName": "

        The name of the log stream this event belongs to.

        ", "GetLogEventsRequest$logStreamName": "

        The name of the log stream to query.

        ", "InputLogStreamNames$member": null, "LogStream$logStreamName": null, "PutLogEventsRequest$logStreamName": "

        The name of the log stream to put log events to.

        ", "SearchedLogStream$logStreamName": "

        The name of the log stream.

        " } }, "LogStreamSearchedCompletely": { "base": null, "refs": { "SearchedLogStream$searchedCompletely": "

        Indicates whether all the events in this log stream were searched or more data exists to search by paginating further.

        " } }, "LogStreams": { "base": "

        A list of log streams.

        ", "refs": { "DescribeLogStreamsResponse$logStreams": null } }, "MetricFilter": { "base": "

        Metric filters can be used to express how CloudWatch Logs would extract metric observations from ingested log events and transform them to metric data in a CloudWatch metric.

        ", "refs": { "MetricFilters$member": null } }, "MetricFilterMatchRecord": { "base": null, "refs": { "MetricFilterMatches$member": null } }, "MetricFilterMatches": { "base": null, "refs": { "TestMetricFilterResponse$matches": null } }, "MetricFilters": { "base": null, "refs": { "DescribeMetricFiltersResponse$metricFilters": null } }, "MetricName": { "base": "

        The name of the CloudWatch metric to which the monitored log information should be published. For example, you may publish to a metric called ErrorCount.

        ", "refs": { "MetricTransformation$metricName": "

        Name of the metric.

        " } }, "MetricNamespace": { "base": "

        The destination namespace of the new CloudWatch metric.

        ", "refs": { "MetricTransformation$metricNamespace": "

        Namespace to which the metric belongs.

        " } }, "MetricTransformation": { "base": null, "refs": { "MetricTransformations$member": null } }, "MetricTransformations": { "base": null, "refs": { "MetricFilter$metricTransformations": null, "PutMetricFilterRequest$metricTransformations": "

        A collection of information needed to define how metric data gets emitted.

        " } }, "MetricValue": { "base": "

        What to publish to the metric. For example, if you're counting the occurrences of a particular term like \"Error\", the value will be \"1\" for each occurrence. If you're counting the bytes transferred the published value will be the value in the log event.

        ", "refs": { "MetricTransformation$metricValue": "

        A string representing a value to publish to this metric when a filter pattern matches a log event.

        " } }, "NextToken": { "base": "

        A string token used for pagination that points to the next page of results. It must be a value obtained from the response of the previous request. The token expires after 24 hours.

        ", "refs": { "DescribeDestinationsRequest$nextToken": null, "DescribeDestinationsResponse$nextToken": null, "DescribeExportTasksRequest$nextToken": "

        A string token used for pagination that points to the next page of results. It must be a value obtained from the response of the previous DescribeExportTasks request.

        ", "DescribeExportTasksResponse$nextToken": null, "DescribeLogGroupsRequest$nextToken": "

        A string token used for pagination that points to the next page of results. It must be a value obtained from the response of the previous DescribeLogGroups request.

        ", "DescribeLogGroupsResponse$nextToken": null, "DescribeLogStreamsRequest$nextToken": "

        A string token used for pagination that points to the next page of results. It must be a value obtained from the response of the previous DescribeLogStreams request.

        ", "DescribeLogStreamsResponse$nextToken": null, "DescribeMetricFiltersRequest$nextToken": "

        A string token used for pagination that points to the next page of results. It must be a value obtained from the response of the previous DescribeMetricFilters request.

        ", "DescribeMetricFiltersResponse$nextToken": null, "DescribeSubscriptionFiltersRequest$nextToken": null, "DescribeSubscriptionFiltersResponse$nextToken": null, "FilterLogEventsRequest$nextToken": "

        A pagination token obtained from a FilterLogEvents response to continue paginating the FilterLogEvents results. This token is omitted from the response when there are no other events to display.

        ", "FilterLogEventsResponse$nextToken": "

        A pagination token obtained from a FilterLogEvents response to continue paginating the FilterLogEvents results. This token is omitted from the response when there are no other events to display.

        ", "GetLogEventsRequest$nextToken": "

        A string token used for pagination that points to the next page of results. It must be a value obtained from the nextForwardToken or nextBackwardToken fields in the response of the previous GetLogEvents request.

        ", "GetLogEventsResponse$nextForwardToken": null, "GetLogEventsResponse$nextBackwardToken": null } }, "OperationAbortedException": { "base": "

        Returned if multiple requests to update the same resource were in conflict.

        ", "refs": { } }, "OrderBy": { "base": null, "refs": { "DescribeLogStreamsRequest$orderBy": "

        Specifies what to order the returned log streams by. Valid arguments are 'LogStreamName' or 'LastEventTime'. If you don't specify a value, results are ordered by LogStreamName. If 'LastEventTime' is chosen, the request cannot also contain a logStreamNamePrefix.

        " } }, "OutputLogEvent": { "base": null, "refs": { "OutputLogEvents$member": null } }, "OutputLogEvents": { "base": null, "refs": { "GetLogEventsResponse$events": null } }, "PutDestinationPolicyRequest": { "base": null, "refs": { } }, "PutDestinationRequest": { "base": null, "refs": { } }, "PutDestinationResponse": { "base": null, "refs": { } }, "PutLogEventsRequest": { "base": null, "refs": { } }, "PutLogEventsResponse": { "base": null, "refs": { } }, "PutMetricFilterRequest": { "base": null, "refs": { } }, "PutRetentionPolicyRequest": { "base": null, "refs": { } }, "PutSubscriptionFilterRequest": { "base": null, "refs": { } }, "RejectedLogEventsInfo": { "base": null, "refs": { "PutLogEventsResponse$rejectedLogEventsInfo": null } }, "ResourceAlreadyExistsException": { "base": "

        Returned if the specified resource already exists.

        ", "refs": { } }, "ResourceNotFoundException": { "base": "

        Returned if the specified resource does not exist.

        ", "refs": { } }, "RoleArn": { "base": null, "refs": { "Destination$roleArn": "

        A role for impersonation for delivering log events to the target.

        ", "PutDestinationRequest$roleArn": "

        The ARN of an IAM role that grants CloudWatch Logs permissions to do Amazon Kinesis PutRecord requests on the destination stream.

        ", "PutSubscriptionFilterRequest$roleArn": "

        The ARN of an IAM role that grants CloudWatch Logs permissions to deliver ingested log events to the destination stream. You don't need to provide the ARN when you are working with a logical destination (used via an ARN of Destination) for cross-account delivery.

        ", "SubscriptionFilter$roleArn": null } }, "SearchedLogStream": { "base": "

        An object indicating the search status of a log stream in a FilterLogEvents request.

        ", "refs": { "SearchedLogStreams$member": null } }, "SearchedLogStreams": { "base": "

        A list of SearchedLogStream objects indicating the search status for log streams in a FilterLogEvents request.

        ", "refs": { "FilterLogEventsResponse$searchedLogStreams": "

        A list of SearchedLogStream objects indicating which log streams have been searched in this request and whether each has been searched completely or still has more to be paginated.

        " } }, "SequenceToken": { "base": "

        A string token used for making PutLogEvents requests. A sequenceToken can only be used once, and PutLogEvents requests must include the sequenceToken obtained from the response of the previous request.

        ", "refs": { "DataAlreadyAcceptedException$expectedSequenceToken": null, "InvalidSequenceTokenException$expectedSequenceToken": null, "LogStream$uploadSequenceToken": null, "PutLogEventsRequest$sequenceToken": "

        A string token that must be obtained from the response of the previous PutLogEvents request.

        ", "PutLogEventsResponse$nextSequenceToken": null } }, "ServiceUnavailableException": { "base": "

        Returned if the service cannot complete the request.

        ", "refs": { } }, "StartFromHead": { "base": null, "refs": { "GetLogEventsRequest$startFromHead": "

        If set to true, the earliest log events would be returned first. The default is false (the latest log events are returned first).

        " } }, "StoredBytes": { "base": null, "refs": { "LogGroup$storedBytes": null, "LogStream$storedBytes": null } }, "SubscriptionFilter": { "base": null, "refs": { "SubscriptionFilters$member": null } }, "SubscriptionFilters": { "base": null, "refs": { "DescribeSubscriptionFiltersResponse$subscriptionFilters": null } }, "TargetArn": { "base": null, "refs": { "Destination$targetArn": "

        ARN of the physical target where the log events will be delivered (eg. ARN of a Kinesis stream).

        ", "PutDestinationRequest$targetArn": "

        The ARN of an Amazon Kinesis stream to deliver matching log events to.

        " } }, "TestEventMessages": { "base": null, "refs": { "TestMetricFilterRequest$logEventMessages": "

        A list of log event messages to test.

        " } }, "TestMetricFilterRequest": { "base": null, "refs": { } }, "TestMetricFilterResponse": { "base": null, "refs": { } }, "Timestamp": { "base": "

        A point in time expressed as the number of milliseconds since Jan 1, 1970 00:00:00 UTC.

        ", "refs": { "CreateExportTaskRequest$from": "

        A point in time expressed as the number of milliseconds since Jan 1, 1970 00:00:00 UTC. It indicates the start time of the range for the request. Events with a timestamp prior to this time will not be exported.

        ", "CreateExportTaskRequest$to": "

        A point in time expressed as the number of milliseconds since Jan 1, 1970 00:00:00 UTC. It indicates the end time of the range for the request. Events with a timestamp later than this time will not be exported.

        ", "Destination$creationTime": "

        A point in time expressed as the number of milliseconds since Jan 1, 1970 00:00:00 UTC specifying when this destination was created.

        ", "ExportTask$from": "

        A point in time expressed as the number of milliseconds since Jan 1, 1970 00:00:00 UTC. Events with a timestamp prior to this time are not exported.

        ", "ExportTask$to": "

        A point in time expressed as the number of milliseconds since Jan 1, 1970 00:00:00 UTC. Events with a timestamp later than this time are not exported.

        ", "ExportTaskExecutionInfo$creationTime": "

        A point in time when the export task got created.

        ", "ExportTaskExecutionInfo$completionTime": "

        A point in time when the export task got completed.

        ", "FilterLogEventsRequest$startTime": "

        A point in time expressed as the number of milliseconds since Jan 1, 1970 00:00:00 UTC. If provided, events with a timestamp prior to this time are not returned.

        ", "FilterLogEventsRequest$endTime": "

        A point in time expressed as the number of milliseconds since Jan 1, 1970 00:00:00 UTC. If provided, events with a timestamp later than this time are not returned.

        ", "FilteredLogEvent$timestamp": null, "FilteredLogEvent$ingestionTime": null, "GetLogEventsRequest$startTime": null, "GetLogEventsRequest$endTime": null, "InputLogEvent$timestamp": null, "LogGroup$creationTime": null, "LogStream$creationTime": null, "LogStream$firstEventTimestamp": null, "LogStream$lastEventTimestamp": null, "LogStream$lastIngestionTime": null, "MetricFilter$creationTime": null, "OutputLogEvent$timestamp": null, "OutputLogEvent$ingestionTime": null, "SubscriptionFilter$creationTime": null } }, "Token": { "base": null, "refs": { "ExtractedValues$key": null } }, "Value": { "base": null, "refs": { "ExtractedValues$value": null } } } } aws-sdk-go-1.4.22/models/apis/logs/2014-03-28/examples-1.json000066400000000000000000000000541300374646400226510ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/logs/2014-03-28/paginators-1.json000066400000000000000000000023341300374646400232050ustar00rootroot00000000000000{ "pagination": { "DescribeDestinations": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "limit", "result_key": "destinations" }, "DescribeLogGroups": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "limit", "result_key": "logGroups" }, "DescribeLogStreams": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "limit", "result_key": "logStreams" }, "DescribeMetricFilters": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "limit", "result_key": "metricFilters" }, "DescribeSubscriptionFilters": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "limit", "result_key": "subscriptionFilters" }, "FilterLogEvents": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "limit", "result_key": [ "events", "searchedLogStreams" ] }, "GetLogEvents": { "input_token": "nextToken", "output_token": "nextForwardToken", "limit_key": "limit", "result_key": "events" } } } aws-sdk-go-1.4.22/models/apis/machinelearning/000077500000000000000000000000001300374646400211265ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/machinelearning/2014-12-12/000077500000000000000000000000001300374646400221545ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/machinelearning/2014-12-12/api-2.json000066400000000000000000001466141300374646400237730ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2014-12-12", "endpointPrefix":"machinelearning", "jsonVersion":"1.1", "serviceFullName":"Amazon Machine Learning", "signatureVersion":"v4", "targetPrefix":"AmazonML_20141212", "protocol":"json" }, "operations":{ "AddTags":{ "name":"AddTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsInput"}, "output":{"shape":"AddTagsOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidTagException", "exception":true }, { "shape":"TagLimitExceededException", "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "CreateBatchPrediction":{ "name":"CreateBatchPrediction", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateBatchPredictionInput"}, "output":{"shape":"CreateBatchPredictionOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"IdempotentParameterMismatchException", "error":{"httpStatusCode":400}, "exception":true } ] }, "CreateDataSourceFromRDS":{ "name":"CreateDataSourceFromRDS", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDataSourceFromRDSInput"}, "output":{"shape":"CreateDataSourceFromRDSOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"IdempotentParameterMismatchException", "error":{"httpStatusCode":400}, "exception":true } ] }, "CreateDataSourceFromRedshift":{ "name":"CreateDataSourceFromRedshift", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDataSourceFromRedshiftInput"}, "output":{"shape":"CreateDataSourceFromRedshiftOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"IdempotentParameterMismatchException", "error":{"httpStatusCode":400}, "exception":true } ] }, "CreateDataSourceFromS3":{ "name":"CreateDataSourceFromS3", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDataSourceFromS3Input"}, "output":{"shape":"CreateDataSourceFromS3Output"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"IdempotentParameterMismatchException", "error":{"httpStatusCode":400}, "exception":true } ] }, "CreateEvaluation":{ "name":"CreateEvaluation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateEvaluationInput"}, "output":{"shape":"CreateEvaluationOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"IdempotentParameterMismatchException", "error":{"httpStatusCode":400}, "exception":true } ] }, "CreateMLModel":{ "name":"CreateMLModel", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateMLModelInput"}, "output":{"shape":"CreateMLModelOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"IdempotentParameterMismatchException", "error":{"httpStatusCode":400}, "exception":true } ] }, "CreateRealtimeEndpoint":{ "name":"CreateRealtimeEndpoint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateRealtimeEndpointInput"}, "output":{"shape":"CreateRealtimeEndpointOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DeleteBatchPrediction":{ "name":"DeleteBatchPrediction", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteBatchPredictionInput"}, "output":{"shape":"DeleteBatchPredictionOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DeleteDataSource":{ "name":"DeleteDataSource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDataSourceInput"}, "output":{"shape":"DeleteDataSourceOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DeleteEvaluation":{ "name":"DeleteEvaluation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteEvaluationInput"}, "output":{"shape":"DeleteEvaluationOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DeleteMLModel":{ "name":"DeleteMLModel", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteMLModelInput"}, "output":{"shape":"DeleteMLModelOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DeleteRealtimeEndpoint":{ "name":"DeleteRealtimeEndpoint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRealtimeEndpointInput"}, "output":{"shape":"DeleteRealtimeEndpointOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DeleteTags":{ "name":"DeleteTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteTagsInput"}, "output":{"shape":"DeleteTagsOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InvalidTagException", "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DescribeBatchPredictions":{ "name":"DescribeBatchPredictions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeBatchPredictionsInput"}, "output":{"shape":"DescribeBatchPredictionsOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DescribeDataSources":{ "name":"DescribeDataSources", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDataSourcesInput"}, "output":{"shape":"DescribeDataSourcesOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DescribeEvaluations":{ "name":"DescribeEvaluations", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEvaluationsInput"}, "output":{"shape":"DescribeEvaluationsOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DescribeMLModels":{ "name":"DescribeMLModels", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeMLModelsInput"}, "output":{"shape":"DescribeMLModelsOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "DescribeTags":{ "name":"DescribeTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTagsInput"}, "output":{"shape":"DescribeTagsOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "GetBatchPrediction":{ "name":"GetBatchPrediction", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetBatchPredictionInput"}, "output":{"shape":"GetBatchPredictionOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "GetDataSource":{ "name":"GetDataSource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetDataSourceInput"}, "output":{"shape":"GetDataSourceOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "GetEvaluation":{ "name":"GetEvaluation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetEvaluationInput"}, "output":{"shape":"GetEvaluationOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "GetMLModel":{ "name":"GetMLModel", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetMLModelInput"}, "output":{"shape":"GetMLModelOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "Predict":{ "name":"Predict", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PredictInput"}, "output":{"shape":"PredictOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"LimitExceededException", "error":{"httpStatusCode":417}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, { "shape":"PredictorNotMountedException", "error":{"httpStatusCode":400}, "exception":true } ] }, "UpdateBatchPrediction":{ "name":"UpdateBatchPrediction", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateBatchPredictionInput"}, "output":{"shape":"UpdateBatchPredictionOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "UpdateDataSource":{ "name":"UpdateDataSource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateDataSourceInput"}, "output":{"shape":"UpdateDataSourceOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "UpdateEvaluation":{ "name":"UpdateEvaluation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateEvaluationInput"}, "output":{"shape":"UpdateEvaluationOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] }, "UpdateMLModel":{ "name":"UpdateMLModel", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateMLModelInput"}, "output":{"shape":"UpdateMLModelOutput"}, "errors":[ { "shape":"InvalidInputException", "error":{"httpStatusCode":400}, "exception":true }, { "shape":"ResourceNotFoundException", "error":{"httpStatusCode":404}, "exception":true }, { "shape":"InternalServerException", "error":{"httpStatusCode":500}, "exception":true, "fault":true } ] } }, "shapes":{ "AddTagsInput":{ "type":"structure", "required":[ "Tags", "ResourceId", "ResourceType" ], "members":{ "Tags":{"shape":"TagList"}, "ResourceId":{"shape":"EntityId"}, "ResourceType":{"shape":"TaggableResourceType"} } }, "AddTagsOutput":{ "type":"structure", "members":{ "ResourceId":{"shape":"EntityId"}, "ResourceType":{"shape":"TaggableResourceType"} } }, "Algorithm":{ "type":"string", "enum":["sgd"] }, "AwsUserArn":{ "type":"string", "pattern":"arn:aws:iam::[0-9]+:((user/.+)|(root))" }, "BatchPrediction":{ "type":"structure", "members":{ "BatchPredictionId":{"shape":"EntityId"}, "MLModelId":{"shape":"EntityId"}, "BatchPredictionDataSourceId":{"shape":"EntityId"}, "InputDataLocationS3":{"shape":"S3Url"}, "CreatedByIamUser":{"shape":"AwsUserArn"}, "CreatedAt":{"shape":"EpochTime"}, "LastUpdatedAt":{"shape":"EpochTime"}, "Name":{"shape":"EntityName"}, "Status":{"shape":"EntityStatus"}, "OutputUri":{"shape":"S3Url"}, "Message":{"shape":"Message"}, "ComputeTime":{"shape":"LongType"}, "FinishedAt":{"shape":"EpochTime"}, "StartedAt":{"shape":"EpochTime"}, "TotalRecordCount":{"shape":"LongType"}, "InvalidRecordCount":{"shape":"LongType"} } }, "BatchPredictionFilterVariable":{ "type":"string", "enum":[ "CreatedAt", "LastUpdatedAt", "Status", "Name", "IAMUser", "MLModelId", "DataSourceId", "DataURI" ] }, "BatchPredictions":{ "type":"list", "member":{"shape":"BatchPrediction"} }, "ComparatorValue":{ "type":"string", "max":1024, "pattern":".*\\S.*|^$" }, "ComputeStatistics":{"type":"boolean"}, "CreateBatchPredictionInput":{ "type":"structure", "required":[ "BatchPredictionId", "MLModelId", "BatchPredictionDataSourceId", "OutputUri" ], "members":{ "BatchPredictionId":{"shape":"EntityId"}, "BatchPredictionName":{"shape":"EntityName"}, "MLModelId":{"shape":"EntityId"}, "BatchPredictionDataSourceId":{"shape":"EntityId"}, "OutputUri":{"shape":"S3Url"} } }, "CreateBatchPredictionOutput":{ "type":"structure", "members":{ "BatchPredictionId":{"shape":"EntityId"} } }, "CreateDataSourceFromRDSInput":{ "type":"structure", "required":[ "DataSourceId", "RDSData", "RoleARN" ], "members":{ "DataSourceId":{"shape":"EntityId"}, "DataSourceName":{"shape":"EntityName"}, "RDSData":{"shape":"RDSDataSpec"}, "RoleARN":{"shape":"RoleARN"}, "ComputeStatistics":{"shape":"ComputeStatistics"} } }, "CreateDataSourceFromRDSOutput":{ "type":"structure", "members":{ "DataSourceId":{"shape":"EntityId"} } }, "CreateDataSourceFromRedshiftInput":{ "type":"structure", "required":[ "DataSourceId", "DataSpec", "RoleARN" ], "members":{ "DataSourceId":{"shape":"EntityId"}, "DataSourceName":{"shape":"EntityName"}, "DataSpec":{"shape":"RedshiftDataSpec"}, "RoleARN":{"shape":"RoleARN"}, "ComputeStatistics":{"shape":"ComputeStatistics"} } }, "CreateDataSourceFromRedshiftOutput":{ "type":"structure", "members":{ "DataSourceId":{"shape":"EntityId"} } }, "CreateDataSourceFromS3Input":{ "type":"structure", "required":[ "DataSourceId", "DataSpec" ], "members":{ "DataSourceId":{"shape":"EntityId"}, "DataSourceName":{"shape":"EntityName"}, "DataSpec":{"shape":"S3DataSpec"}, "ComputeStatistics":{"shape":"ComputeStatistics"} } }, "CreateDataSourceFromS3Output":{ "type":"structure", "members":{ "DataSourceId":{"shape":"EntityId"} } }, "CreateEvaluationInput":{ "type":"structure", "required":[ "EvaluationId", "MLModelId", "EvaluationDataSourceId" ], "members":{ "EvaluationId":{"shape":"EntityId"}, "EvaluationName":{"shape":"EntityName"}, "MLModelId":{"shape":"EntityId"}, "EvaluationDataSourceId":{"shape":"EntityId"} } }, "CreateEvaluationOutput":{ "type":"structure", "members":{ "EvaluationId":{"shape":"EntityId"} } }, "CreateMLModelInput":{ "type":"structure", "required":[ "MLModelId", "MLModelType", "TrainingDataSourceId" ], "members":{ "MLModelId":{"shape":"EntityId"}, "MLModelName":{"shape":"EntityName"}, "MLModelType":{"shape":"MLModelType"}, "Parameters":{"shape":"TrainingParameters"}, "TrainingDataSourceId":{"shape":"EntityId"}, "Recipe":{"shape":"Recipe"}, "RecipeUri":{"shape":"S3Url"} } }, "CreateMLModelOutput":{ "type":"structure", "members":{ "MLModelId":{"shape":"EntityId"} } }, "CreateRealtimeEndpointInput":{ "type":"structure", "required":["MLModelId"], "members":{ "MLModelId":{"shape":"EntityId"} } }, "CreateRealtimeEndpointOutput":{ "type":"structure", "members":{ "MLModelId":{"shape":"EntityId"}, "RealtimeEndpointInfo":{"shape":"RealtimeEndpointInfo"} } }, "DataRearrangement":{"type":"string"}, "DataSchema":{ "type":"string", "max":131071 }, "DataSource":{ "type":"structure", "members":{ "DataSourceId":{"shape":"EntityId"}, "DataLocationS3":{"shape":"S3Url"}, "DataRearrangement":{"shape":"DataRearrangement"}, "CreatedByIamUser":{"shape":"AwsUserArn"}, "CreatedAt":{"shape":"EpochTime"}, "LastUpdatedAt":{"shape":"EpochTime"}, "DataSizeInBytes":{"shape":"LongType"}, "NumberOfFiles":{"shape":"LongType"}, "Name":{"shape":"EntityName"}, "Status":{"shape":"EntityStatus"}, "Message":{"shape":"Message"}, "RedshiftMetadata":{"shape":"RedshiftMetadata"}, "RDSMetadata":{"shape":"RDSMetadata"}, "RoleARN":{"shape":"RoleARN"}, "ComputeStatistics":{"shape":"ComputeStatistics"}, "ComputeTime":{"shape":"LongType"}, "FinishedAt":{"shape":"EpochTime"}, "StartedAt":{"shape":"EpochTime"} } }, "DataSourceFilterVariable":{ "type":"string", "enum":[ "CreatedAt", "LastUpdatedAt", "Status", "Name", "DataLocationS3", "IAMUser" ] }, "DataSources":{ "type":"list", "member":{"shape":"DataSource"} }, "DeleteBatchPredictionInput":{ "type":"structure", "required":["BatchPredictionId"], "members":{ "BatchPredictionId":{"shape":"EntityId"} } }, "DeleteBatchPredictionOutput":{ "type":"structure", "members":{ "BatchPredictionId":{"shape":"EntityId"} } }, "DeleteDataSourceInput":{ "type":"structure", "required":["DataSourceId"], "members":{ "DataSourceId":{"shape":"EntityId"} } }, "DeleteDataSourceOutput":{ "type":"structure", "members":{ "DataSourceId":{"shape":"EntityId"} } }, "DeleteEvaluationInput":{ "type":"structure", "required":["EvaluationId"], "members":{ "EvaluationId":{"shape":"EntityId"} } }, "DeleteEvaluationOutput":{ "type":"structure", "members":{ "EvaluationId":{"shape":"EntityId"} } }, "DeleteMLModelInput":{ "type":"structure", "required":["MLModelId"], "members":{ "MLModelId":{"shape":"EntityId"} } }, "DeleteMLModelOutput":{ "type":"structure", "members":{ "MLModelId":{"shape":"EntityId"} } }, "DeleteRealtimeEndpointInput":{ "type":"structure", "required":["MLModelId"], "members":{ "MLModelId":{"shape":"EntityId"} } }, "DeleteRealtimeEndpointOutput":{ "type":"structure", "members":{ "MLModelId":{"shape":"EntityId"}, "RealtimeEndpointInfo":{"shape":"RealtimeEndpointInfo"} } }, "DeleteTagsInput":{ "type":"structure", "required":[ "TagKeys", "ResourceId", "ResourceType" ], "members":{ "TagKeys":{"shape":"TagKeyList"}, "ResourceId":{"shape":"EntityId"}, "ResourceType":{"shape":"TaggableResourceType"} } }, "DeleteTagsOutput":{ "type":"structure", "members":{ "ResourceId":{"shape":"EntityId"}, "ResourceType":{"shape":"TaggableResourceType"} } }, "DescribeBatchPredictionsInput":{ "type":"structure", "members":{ "FilterVariable":{"shape":"BatchPredictionFilterVariable"}, "EQ":{"shape":"ComparatorValue"}, "GT":{"shape":"ComparatorValue"}, "LT":{"shape":"ComparatorValue"}, "GE":{"shape":"ComparatorValue"}, "LE":{"shape":"ComparatorValue"}, "NE":{"shape":"ComparatorValue"}, "Prefix":{"shape":"ComparatorValue"}, "SortOrder":{"shape":"SortOrder"}, "NextToken":{"shape":"StringType"}, "Limit":{"shape":"PageLimit"} } }, "DescribeBatchPredictionsOutput":{ "type":"structure", "members":{ "Results":{"shape":"BatchPredictions"}, "NextToken":{"shape":"StringType"} } }, "DescribeDataSourcesInput":{ "type":"structure", "members":{ "FilterVariable":{"shape":"DataSourceFilterVariable"}, "EQ":{"shape":"ComparatorValue"}, "GT":{"shape":"ComparatorValue"}, "LT":{"shape":"ComparatorValue"}, "GE":{"shape":"ComparatorValue"}, "LE":{"shape":"ComparatorValue"}, "NE":{"shape":"ComparatorValue"}, "Prefix":{"shape":"ComparatorValue"}, "SortOrder":{"shape":"SortOrder"}, "NextToken":{"shape":"StringType"}, "Limit":{"shape":"PageLimit"} } }, "DescribeDataSourcesOutput":{ "type":"structure", "members":{ "Results":{"shape":"DataSources"}, "NextToken":{"shape":"StringType"} } }, "DescribeEvaluationsInput":{ "type":"structure", "members":{ "FilterVariable":{"shape":"EvaluationFilterVariable"}, "EQ":{"shape":"ComparatorValue"}, "GT":{"shape":"ComparatorValue"}, "LT":{"shape":"ComparatorValue"}, "GE":{"shape":"ComparatorValue"}, "LE":{"shape":"ComparatorValue"}, "NE":{"shape":"ComparatorValue"}, "Prefix":{"shape":"ComparatorValue"}, "SortOrder":{"shape":"SortOrder"}, "NextToken":{"shape":"StringType"}, "Limit":{"shape":"PageLimit"} } }, "DescribeEvaluationsOutput":{ "type":"structure", "members":{ "Results":{"shape":"Evaluations"}, "NextToken":{"shape":"StringType"} } }, "DescribeMLModelsInput":{ "type":"structure", "members":{ "FilterVariable":{"shape":"MLModelFilterVariable"}, "EQ":{"shape":"ComparatorValue"}, "GT":{"shape":"ComparatorValue"}, "LT":{"shape":"ComparatorValue"}, "GE":{"shape":"ComparatorValue"}, "LE":{"shape":"ComparatorValue"}, "NE":{"shape":"ComparatorValue"}, "Prefix":{"shape":"ComparatorValue"}, "SortOrder":{"shape":"SortOrder"}, "NextToken":{"shape":"StringType"}, "Limit":{"shape":"PageLimit"} } }, "DescribeMLModelsOutput":{ "type":"structure", "members":{ "Results":{"shape":"MLModels"}, "NextToken":{"shape":"StringType"} } }, "DescribeTagsInput":{ "type":"structure", "required":[ "ResourceId", "ResourceType" ], "members":{ "ResourceId":{"shape":"EntityId"}, "ResourceType":{"shape":"TaggableResourceType"} } }, "DescribeTagsOutput":{ "type":"structure", "members":{ "ResourceId":{"shape":"EntityId"}, "ResourceType":{"shape":"TaggableResourceType"}, "Tags":{"shape":"TagList"} } }, "DetailsAttributes":{ "type":"string", "enum":[ "PredictiveModelType", "Algorithm" ] }, "DetailsMap":{ "type":"map", "key":{"shape":"DetailsAttributes"}, "value":{"shape":"DetailsValue"} }, "DetailsValue":{ "type":"string", "min":1 }, "EDPPipelineId":{ "type":"string", "min":1, "max":1024 }, "EDPResourceRole":{ "type":"string", "min":1, "max":64 }, "EDPSecurityGroupId":{ "type":"string", "min":1, "max":255 }, "EDPSecurityGroupIds":{ "type":"list", "member":{"shape":"EDPSecurityGroupId"} }, "EDPServiceRole":{ "type":"string", "min":1, "max":64 }, "EDPSubnetId":{ "type":"string", "min":1, "max":255 }, "EntityId":{ "type":"string", "min":1, "max":64, "pattern":"[a-zA-Z0-9_.-]+" }, "EntityName":{ "type":"string", "max":1024, "pattern":".*\\S.*|^$" }, "EntityStatus":{ "type":"string", "enum":[ "PENDING", "INPROGRESS", "FAILED", "COMPLETED", "DELETED" ] }, "EpochTime":{"type":"timestamp"}, "ErrorCode":{"type":"integer"}, "ErrorMessage":{ "type":"string", "max":2048 }, "Evaluation":{ "type":"structure", "members":{ "EvaluationId":{"shape":"EntityId"}, "MLModelId":{"shape":"EntityId"}, "EvaluationDataSourceId":{"shape":"EntityId"}, "InputDataLocationS3":{"shape":"S3Url"}, "CreatedByIamUser":{"shape":"AwsUserArn"}, "CreatedAt":{"shape":"EpochTime"}, "LastUpdatedAt":{"shape":"EpochTime"}, "Name":{"shape":"EntityName"}, "Status":{"shape":"EntityStatus"}, "PerformanceMetrics":{"shape":"PerformanceMetrics"}, "Message":{"shape":"Message"}, "ComputeTime":{"shape":"LongType"}, "FinishedAt":{"shape":"EpochTime"}, "StartedAt":{"shape":"EpochTime"} } }, "EvaluationFilterVariable":{ "type":"string", "enum":[ "CreatedAt", "LastUpdatedAt", "Status", "Name", "IAMUser", "MLModelId", "DataSourceId", "DataURI" ] }, "Evaluations":{ "type":"list", "member":{"shape":"Evaluation"} }, "GetBatchPredictionInput":{ "type":"structure", "required":["BatchPredictionId"], "members":{ "BatchPredictionId":{"shape":"EntityId"} } }, "GetBatchPredictionOutput":{ "type":"structure", "members":{ "BatchPredictionId":{"shape":"EntityId"}, "MLModelId":{"shape":"EntityId"}, "BatchPredictionDataSourceId":{"shape":"EntityId"}, "InputDataLocationS3":{"shape":"S3Url"}, "CreatedByIamUser":{"shape":"AwsUserArn"}, "CreatedAt":{"shape":"EpochTime"}, "LastUpdatedAt":{"shape":"EpochTime"}, "Name":{"shape":"EntityName"}, "Status":{"shape":"EntityStatus"}, "OutputUri":{"shape":"S3Url"}, "LogUri":{"shape":"PresignedS3Url"}, "Message":{"shape":"Message"}, "ComputeTime":{"shape":"LongType"}, "FinishedAt":{"shape":"EpochTime"}, "StartedAt":{"shape":"EpochTime"}, "TotalRecordCount":{"shape":"LongType"}, "InvalidRecordCount":{"shape":"LongType"} } }, "GetDataSourceInput":{ "type":"structure", "required":["DataSourceId"], "members":{ "DataSourceId":{"shape":"EntityId"}, "Verbose":{"shape":"Verbose"} } }, "GetDataSourceOutput":{ "type":"structure", "members":{ "DataSourceId":{"shape":"EntityId"}, "DataLocationS3":{"shape":"S3Url"}, "DataRearrangement":{"shape":"DataRearrangement"}, "CreatedByIamUser":{"shape":"AwsUserArn"}, "CreatedAt":{"shape":"EpochTime"}, "LastUpdatedAt":{"shape":"EpochTime"}, "DataSizeInBytes":{"shape":"LongType"}, "NumberOfFiles":{"shape":"LongType"}, "Name":{"shape":"EntityName"}, "Status":{"shape":"EntityStatus"}, "LogUri":{"shape":"PresignedS3Url"}, "Message":{"shape":"Message"}, "RedshiftMetadata":{"shape":"RedshiftMetadata"}, "RDSMetadata":{"shape":"RDSMetadata"}, "RoleARN":{"shape":"RoleARN"}, "ComputeStatistics":{"shape":"ComputeStatistics"}, "ComputeTime":{"shape":"LongType"}, "FinishedAt":{"shape":"EpochTime"}, "StartedAt":{"shape":"EpochTime"}, "DataSourceSchema":{"shape":"DataSchema"} } }, "GetEvaluationInput":{ "type":"structure", "required":["EvaluationId"], "members":{ "EvaluationId":{"shape":"EntityId"} } }, "GetEvaluationOutput":{ "type":"structure", "members":{ "EvaluationId":{"shape":"EntityId"}, "MLModelId":{"shape":"EntityId"}, "EvaluationDataSourceId":{"shape":"EntityId"}, "InputDataLocationS3":{"shape":"S3Url"}, "CreatedByIamUser":{"shape":"AwsUserArn"}, "CreatedAt":{"shape":"EpochTime"}, "LastUpdatedAt":{"shape":"EpochTime"}, "Name":{"shape":"EntityName"}, "Status":{"shape":"EntityStatus"}, "PerformanceMetrics":{"shape":"PerformanceMetrics"}, "LogUri":{"shape":"PresignedS3Url"}, "Message":{"shape":"Message"}, "ComputeTime":{"shape":"LongType"}, "FinishedAt":{"shape":"EpochTime"}, "StartedAt":{"shape":"EpochTime"} } }, "GetMLModelInput":{ "type":"structure", "required":["MLModelId"], "members":{ "MLModelId":{"shape":"EntityId"}, "Verbose":{"shape":"Verbose"} } }, "GetMLModelOutput":{ "type":"structure", "members":{ "MLModelId":{"shape":"EntityId"}, "TrainingDataSourceId":{"shape":"EntityId"}, "CreatedByIamUser":{"shape":"AwsUserArn"}, "CreatedAt":{"shape":"EpochTime"}, "LastUpdatedAt":{"shape":"EpochTime"}, "Name":{"shape":"MLModelName"}, "Status":{"shape":"EntityStatus"}, "SizeInBytes":{"shape":"LongType"}, "EndpointInfo":{"shape":"RealtimeEndpointInfo"}, "TrainingParameters":{"shape":"TrainingParameters"}, "InputDataLocationS3":{"shape":"S3Url"}, "MLModelType":{"shape":"MLModelType"}, "ScoreThreshold":{"shape":"ScoreThreshold"}, "ScoreThresholdLastUpdatedAt":{"shape":"EpochTime"}, "LogUri":{"shape":"PresignedS3Url"}, "Message":{"shape":"Message"}, "ComputeTime":{"shape":"LongType"}, "FinishedAt":{"shape":"EpochTime"}, "StartedAt":{"shape":"EpochTime"}, "Recipe":{"shape":"Recipe"}, "Schema":{"shape":"DataSchema"} } }, "IdempotentParameterMismatchException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"}, "code":{"shape":"ErrorCode"} }, "error":{"httpStatusCode":400}, "exception":true }, "IntegerType":{"type":"integer"}, "InternalServerException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"}, "code":{"shape":"ErrorCode"} }, "error":{"httpStatusCode":500}, "exception":true, "fault":true }, "InvalidInputException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"}, "code":{"shape":"ErrorCode"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidTagException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "Label":{ "type":"string", "min":1 }, "LimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"}, "code":{"shape":"ErrorCode"} }, "error":{"httpStatusCode":417}, "exception":true }, "LongType":{"type":"long"}, "MLModel":{ "type":"structure", "members":{ "MLModelId":{"shape":"EntityId"}, "TrainingDataSourceId":{"shape":"EntityId"}, "CreatedByIamUser":{"shape":"AwsUserArn"}, "CreatedAt":{"shape":"EpochTime"}, "LastUpdatedAt":{"shape":"EpochTime"}, "Name":{"shape":"MLModelName"}, "Status":{"shape":"EntityStatus"}, "SizeInBytes":{"shape":"LongType"}, "EndpointInfo":{"shape":"RealtimeEndpointInfo"}, "TrainingParameters":{"shape":"TrainingParameters"}, "InputDataLocationS3":{"shape":"S3Url"}, "Algorithm":{"shape":"Algorithm"}, "MLModelType":{"shape":"MLModelType"}, "ScoreThreshold":{"shape":"ScoreThreshold"}, "ScoreThresholdLastUpdatedAt":{"shape":"EpochTime"}, "Message":{"shape":"Message"}, "ComputeTime":{"shape":"LongType"}, "FinishedAt":{"shape":"EpochTime"}, "StartedAt":{"shape":"EpochTime"} } }, "MLModelFilterVariable":{ "type":"string", "enum":[ "CreatedAt", "LastUpdatedAt", "Status", "Name", "IAMUser", "TrainingDataSourceId", "RealtimeEndpointStatus", "MLModelType", "Algorithm", "TrainingDataURI" ] }, "MLModelName":{ "type":"string", "max":1024 }, "MLModelType":{ "type":"string", "enum":[ "REGRESSION", "BINARY", "MULTICLASS" ] }, "MLModels":{ "type":"list", "member":{"shape":"MLModel"} }, "Message":{ "type":"string", "max":10240 }, "PageLimit":{ "type":"integer", "min":1, "max":100 }, "PerformanceMetrics":{ "type":"structure", "members":{ "Properties":{"shape":"PerformanceMetricsProperties"} } }, "PerformanceMetricsProperties":{ "type":"map", "key":{"shape":"PerformanceMetricsPropertyKey"}, "value":{"shape":"PerformanceMetricsPropertyValue"} }, "PerformanceMetricsPropertyKey":{"type":"string"}, "PerformanceMetricsPropertyValue":{"type":"string"}, "PredictInput":{ "type":"structure", "required":[ "MLModelId", "Record", "PredictEndpoint" ], "members":{ "MLModelId":{"shape":"EntityId"}, "Record":{"shape":"Record"}, "PredictEndpoint":{"shape":"VipURL"} } }, "PredictOutput":{ "type":"structure", "members":{ "Prediction":{"shape":"Prediction"} } }, "Prediction":{ "type":"structure", "members":{ "predictedLabel":{"shape":"Label"}, "predictedValue":{"shape":"floatLabel"}, "predictedScores":{"shape":"ScoreValuePerLabelMap"}, "details":{"shape":"DetailsMap"} } }, "PredictorNotMountedException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "PresignedS3Url":{"type":"string"}, "RDSDataSpec":{ "type":"structure", "required":[ "DatabaseInformation", "SelectSqlQuery", "DatabaseCredentials", "S3StagingLocation", "ResourceRole", "ServiceRole", "SubnetId", "SecurityGroupIds" ], "members":{ "DatabaseInformation":{"shape":"RDSDatabase"}, "SelectSqlQuery":{"shape":"RDSSelectSqlQuery"}, "DatabaseCredentials":{"shape":"RDSDatabaseCredentials"}, "S3StagingLocation":{"shape":"S3Url"}, "DataRearrangement":{"shape":"DataRearrangement"}, "DataSchema":{"shape":"DataSchema"}, "DataSchemaUri":{"shape":"S3Url"}, "ResourceRole":{"shape":"EDPResourceRole"}, "ServiceRole":{"shape":"EDPServiceRole"}, "SubnetId":{"shape":"EDPSubnetId"}, "SecurityGroupIds":{"shape":"EDPSecurityGroupIds"} } }, "RDSDatabase":{ "type":"structure", "required":[ "InstanceIdentifier", "DatabaseName" ], "members":{ "InstanceIdentifier":{"shape":"RDSInstanceIdentifier"}, "DatabaseName":{"shape":"RDSDatabaseName"} } }, "RDSDatabaseCredentials":{ "type":"structure", "required":[ "Username", "Password" ], "members":{ "Username":{"shape":"RDSDatabaseUsername"}, "Password":{"shape":"RDSDatabasePassword"} } }, "RDSDatabaseName":{ "type":"string", "min":1, "max":64 }, "RDSDatabasePassword":{ "type":"string", "min":8, "max":128 }, "RDSDatabaseUsername":{ "type":"string", "min":1, "max":128 }, "RDSInstanceIdentifier":{ "type":"string", "min":1, "max":63, "pattern":"[a-z0-9-]+" }, "RDSMetadata":{ "type":"structure", "members":{ "Database":{"shape":"RDSDatabase"}, "DatabaseUserName":{"shape":"RDSDatabaseUsername"}, "SelectSqlQuery":{"shape":"RDSSelectSqlQuery"}, "ResourceRole":{"shape":"EDPResourceRole"}, "ServiceRole":{"shape":"EDPServiceRole"}, "DataPipelineId":{"shape":"EDPPipelineId"} } }, "RDSSelectSqlQuery":{ "type":"string", "min":1, "max":16777216 }, "RealtimeEndpointInfo":{ "type":"structure", "members":{ "PeakRequestsPerSecond":{"shape":"IntegerType"}, "CreatedAt":{"shape":"EpochTime"}, "EndpointUrl":{"shape":"VipURL"}, "EndpointStatus":{"shape":"RealtimeEndpointStatus"} } }, "RealtimeEndpointStatus":{ "type":"string", "enum":[ "NONE", "READY", "UPDATING", "FAILED" ] }, "Recipe":{ "type":"string", "max":131071 }, "Record":{ "type":"map", "key":{"shape":"VariableName"}, "value":{"shape":"VariableValue"} }, "RedshiftClusterIdentifier":{ "type":"string", "min":1, "max":63, "pattern":"[a-z0-9-]+" }, "RedshiftDataSpec":{ "type":"structure", "required":[ "DatabaseInformation", "SelectSqlQuery", "DatabaseCredentials", "S3StagingLocation" ], "members":{ "DatabaseInformation":{"shape":"RedshiftDatabase"}, "SelectSqlQuery":{"shape":"RedshiftSelectSqlQuery"}, "DatabaseCredentials":{"shape":"RedshiftDatabaseCredentials"}, "S3StagingLocation":{"shape":"S3Url"}, "DataRearrangement":{"shape":"DataRearrangement"}, "DataSchema":{"shape":"DataSchema"}, "DataSchemaUri":{"shape":"S3Url"} } }, "RedshiftDatabase":{ "type":"structure", "required":[ "DatabaseName", "ClusterIdentifier" ], "members":{ "DatabaseName":{"shape":"RedshiftDatabaseName"}, "ClusterIdentifier":{"shape":"RedshiftClusterIdentifier"} } }, "RedshiftDatabaseCredentials":{ "type":"structure", "required":[ "Username", "Password" ], "members":{ "Username":{"shape":"RedshiftDatabaseUsername"}, "Password":{"shape":"RedshiftDatabasePassword"} } }, "RedshiftDatabaseName":{ "type":"string", "min":1, "max":64, "pattern":"[a-z0-9]+" }, "RedshiftDatabasePassword":{ "type":"string", "min":8, "max":64 }, "RedshiftDatabaseUsername":{ "type":"string", "min":1, "max":128 }, "RedshiftMetadata":{ "type":"structure", "members":{ "RedshiftDatabase":{"shape":"RedshiftDatabase"}, "DatabaseUserName":{"shape":"RedshiftDatabaseUsername"}, "SelectSqlQuery":{"shape":"RedshiftSelectSqlQuery"} } }, "RedshiftSelectSqlQuery":{ "type":"string", "min":1, "max":16777216 }, "ResourceNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"}, "code":{"shape":"ErrorCode"} }, "error":{"httpStatusCode":404}, "exception":true }, "RoleARN":{ "type":"string", "min":1, "max":110 }, "S3DataSpec":{ "type":"structure", "required":["DataLocationS3"], "members":{ "DataLocationS3":{"shape":"S3Url"}, "DataRearrangement":{"shape":"DataRearrangement"}, "DataSchema":{"shape":"DataSchema"}, "DataSchemaLocationS3":{"shape":"S3Url"} } }, "S3Url":{ "type":"string", "max":2048, "pattern":"s3://([^/]+)(/.*)?" }, "ScoreThreshold":{"type":"float"}, "ScoreValue":{"type":"float"}, "ScoreValuePerLabelMap":{ "type":"map", "key":{"shape":"Label"}, "value":{"shape":"ScoreValue"} }, "SortOrder":{ "type":"string", "enum":[ "asc", "dsc" ] }, "StringType":{"type":"string"}, "Tag":{ "type":"structure", "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{ "type":"string", "min":1, "max":128, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "TagKeyList":{ "type":"list", "member":{"shape":"TagKey"}, "max":100 }, "TagLimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "TagList":{ "type":"list", "member":{"shape":"Tag"}, "max":100 }, "TagValue":{ "type":"string", "min":0, "max":256, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "TaggableResourceType":{ "type":"string", "enum":[ "BatchPrediction", "DataSource", "Evaluation", "MLModel" ] }, "TrainingParameters":{ "type":"map", "key":{"shape":"StringType"}, "value":{"shape":"StringType"} }, "UpdateBatchPredictionInput":{ "type":"structure", "required":[ "BatchPredictionId", "BatchPredictionName" ], "members":{ "BatchPredictionId":{"shape":"EntityId"}, "BatchPredictionName":{"shape":"EntityName"} } }, "UpdateBatchPredictionOutput":{ "type":"structure", "members":{ "BatchPredictionId":{"shape":"EntityId"} } }, "UpdateDataSourceInput":{ "type":"structure", "required":[ "DataSourceId", "DataSourceName" ], "members":{ "DataSourceId":{"shape":"EntityId"}, "DataSourceName":{"shape":"EntityName"} } }, "UpdateDataSourceOutput":{ "type":"structure", "members":{ "DataSourceId":{"shape":"EntityId"} } }, "UpdateEvaluationInput":{ "type":"structure", "required":[ "EvaluationId", "EvaluationName" ], "members":{ "EvaluationId":{"shape":"EntityId"}, "EvaluationName":{"shape":"EntityName"} } }, "UpdateEvaluationOutput":{ "type":"structure", "members":{ "EvaluationId":{"shape":"EntityId"} } }, "UpdateMLModelInput":{ "type":"structure", "required":["MLModelId"], "members":{ "MLModelId":{"shape":"EntityId"}, "MLModelName":{"shape":"EntityName"}, "ScoreThreshold":{"shape":"ScoreThreshold"} } }, "UpdateMLModelOutput":{ "type":"structure", "members":{ "MLModelId":{"shape":"EntityId"} } }, "VariableName":{"type":"string"}, "VariableValue":{"type":"string"}, "Verbose":{"type":"boolean"}, "VipURL":{ "type":"string", "max":2048, "pattern":"https://[a-zA-Z0-9-.]*\\.amazon(aws)?\\.com[/]?" }, "floatLabel":{"type":"float"} } } aws-sdk-go-1.4.22/models/apis/machinelearning/2014-12-12/docs-2.json000066400000000000000000004221721300374646400241460ustar00rootroot00000000000000{ "version": "2.0", "operations": { "AddTags": "

        Adds one or more tags to an object, up to a limit of 10. Each tag consists of a key and an optional value. If you add a tag using a key that is already associated with the ML object, AddTags updates the tag's value.

        ", "CreateBatchPrediction": "

        Generates predictions for a group of observations. The observations to process exist in one or more data files referenced by a DataSource. This operation creates a new BatchPrediction, and uses an MLModel and the data files referenced by the DataSource as information sources.

        CreateBatchPrediction is an asynchronous operation. In response to CreateBatchPrediction, Amazon Machine Learning (Amazon ML) immediately returns and sets the BatchPrediction status to PENDING. After the BatchPrediction completes, Amazon ML sets the status to COMPLETED.

        You can poll for status updates by using the GetBatchPrediction operation and checking the Status parameter of the result. After the COMPLETED status appears, the results are available in the location specified by the OutputUri parameter.

        ", "CreateDataSourceFromRDS": "

        Creates a DataSource object from an Amazon Relational Database Service (Amazon RDS). A DataSource references data that can be used to perform CreateMLModel, CreateEvaluation, or CreateBatchPrediction operations.

        CreateDataSourceFromRDS is an asynchronous operation. In response to CreateDataSourceFromRDS, Amazon Machine Learning (Amazon ML) immediately returns and sets the DataSource status to PENDING. After the DataSource is created and ready for use, Amazon ML sets the Status parameter to COMPLETED. DataSource in the COMPLETED or PENDING state can be used only to perform >CreateMLModel>, CreateEvaluation, or CreateBatchPrediction operations.

        If Amazon ML cannot accept the input source, it sets the Status parameter to FAILED and includes an error message in the Message attribute of the GetDataSource operation response.

        ", "CreateDataSourceFromRedshift": "

        Creates a DataSource from a database hosted on an Amazon Redshift cluster. A DataSource references data that can be used to perform either CreateMLModel, CreateEvaluation, or CreateBatchPrediction operations.

        CreateDataSourceFromRedshift is an asynchronous operation. In response to CreateDataSourceFromRedshift, Amazon Machine Learning (Amazon ML) immediately returns and sets the DataSource status to PENDING. After the DataSource is created and ready for use, Amazon ML sets the Status parameter to COMPLETED. DataSource in COMPLETED or PENDING states can be used to perform only CreateMLModel, CreateEvaluation, or CreateBatchPrediction operations.

        If Amazon ML can't accept the input source, it sets the Status parameter to FAILED and includes an error message in the Message attribute of the GetDataSource operation response.

        The observations should be contained in the database hosted on an Amazon Redshift cluster and should be specified by a SelectSqlQuery query. Amazon ML executes an Unload command in Amazon Redshift to transfer the result set of the SelectSqlQuery query to S3StagingLocation.

        After the DataSource has been created, it's ready for use in evaluations and batch predictions. If you plan to use the DataSource to train an MLModel, the DataSource also requires a recipe. A recipe describes how each input variable will be used in training an MLModel. Will the variable be included or excluded from training? Will the variable be manipulated; for example, will it be combined with another variable or will it be split apart into word combinations? The recipe provides answers to these questions.

        You can't change an existing datasource, but you can copy and modify the settings from an existing Amazon Redshift datasource to create a new datasource. To do so, call GetDataSource for an existing datasource and copy the values to a CreateDataSource call. Change the settings that you want to change and make sure that all required fields have the appropriate values.

        ", "CreateDataSourceFromS3": "

        Creates a DataSource object. A DataSource references data that can be used to perform CreateMLModel, CreateEvaluation, or CreateBatchPrediction operations.

        CreateDataSourceFromS3 is an asynchronous operation. In response to CreateDataSourceFromS3, Amazon Machine Learning (Amazon ML) immediately returns and sets the DataSource status to PENDING. After the DataSource has been created and is ready for use, Amazon ML sets the Status parameter to COMPLETED. DataSource in the COMPLETED or PENDING state can be used to perform only CreateMLModel, CreateEvaluation or CreateBatchPrediction operations.

        If Amazon ML can't accept the input source, it sets the Status parameter to FAILED and includes an error message in the Message attribute of the GetDataSource operation response.

        The observation data used in a DataSource should be ready to use; that is, it should have a consistent structure, and missing data values should be kept to a minimum. The observation data must reside in one or more .csv files in an Amazon Simple Storage Service (Amazon S3) location, along with a schema that describes the data items by name and type. The same schema must be used for all of the data files referenced by the DataSource.

        After the DataSource has been created, it's ready to use in evaluations and batch predictions. If you plan to use the DataSource to train an MLModel, the DataSource also needs a recipe. A recipe describes how each input variable will be used in training an MLModel. Will the variable be included or excluded from training? Will the variable be manipulated; for example, will it be combined with another variable or will it be split apart into word combinations? The recipe provides answers to these questions.

        ", "CreateEvaluation": "

        Creates a new Evaluation of an MLModel. An MLModel is evaluated on a set of observations associated to a DataSource. Like a DataSource for an MLModel, the DataSource for an Evaluation contains values for the Target Variable. The Evaluation compares the predicted result for each observation to the actual outcome and provides a summary so that you know how effective the MLModel functions on the test data. Evaluation generates a relevant performance metric, such as BinaryAUC, RegressionRMSE or MulticlassAvgFScore based on the corresponding MLModelType: BINARY, REGRESSION or MULTICLASS.

        CreateEvaluation is an asynchronous operation. In response to CreateEvaluation, Amazon Machine Learning (Amazon ML) immediately returns and sets the evaluation status to PENDING. After the Evaluation is created and ready for use, Amazon ML sets the status to COMPLETED.

        You can use the GetEvaluation operation to check progress of the evaluation during the creation operation.

        ", "CreateMLModel": "

        Creates a new MLModel using the DataSource and the recipe as information sources.

        An MLModel is nearly immutable. Users can update only the MLModelName and the ScoreThreshold in an MLModel without creating a new MLModel.

        CreateMLModel is an asynchronous operation. In response to CreateMLModel, Amazon Machine Learning (Amazon ML) immediately returns and sets the MLModel status to PENDING. After the MLModel has been created and ready is for use, Amazon ML sets the status to COMPLETED.

        You can use the GetMLModel operation to check the progress of the MLModel during the creation operation.

        CreateMLModel requires a DataSource with computed statistics, which can be created by setting ComputeStatistics to true in CreateDataSourceFromRDS, CreateDataSourceFromS3, or CreateDataSourceFromRedshift operations.

        ", "CreateRealtimeEndpoint": "

        Creates a real-time endpoint for the MLModel. The endpoint contains the URI of the MLModel; that is, the location to send real-time prediction requests for the specified MLModel.

        ", "DeleteBatchPrediction": "

        Assigns the DELETED status to a BatchPrediction, rendering it unusable.

        After using the DeleteBatchPrediction operation, you can use the GetBatchPrediction operation to verify that the status of the BatchPrediction changed to DELETED.

        Caution: The result of the DeleteBatchPrediction operation is irreversible.

        ", "DeleteDataSource": "

        Assigns the DELETED status to a DataSource, rendering it unusable.

        After using the DeleteDataSource operation, you can use the GetDataSource operation to verify that the status of the DataSource changed to DELETED.

        Caution: The results of the DeleteDataSource operation are irreversible.

        ", "DeleteEvaluation": "

        Assigns the DELETED status to an Evaluation, rendering it unusable.

        After invoking the DeleteEvaluation operation, you can use the GetEvaluation operation to verify that the status of the Evaluation changed to DELETED.

        Caution

        The results of the DeleteEvaluation operation are irreversible.

        ", "DeleteMLModel": "

        Assigns the DELETED status to an MLModel, rendering it unusable.

        After using the DeleteMLModel operation, you can use the GetMLModel operation to verify that the status of the MLModel changed to DELETED.

        Caution: The result of the DeleteMLModel operation is irreversible.

        ", "DeleteRealtimeEndpoint": "

        Deletes a real time endpoint of an MLModel.

        ", "DeleteTags": "

        Deletes the specified tags associated with an ML object. After this operation is complete, you can't recover deleted tags.

        If you specify a tag that doesn't exist, Amazon ML ignores it.

        ", "DescribeBatchPredictions": "

        Returns a list of BatchPrediction operations that match the search criteria in the request.

        ", "DescribeDataSources": "

        Returns a list of DataSource that match the search criteria in the request.

        ", "DescribeEvaluations": "

        Returns a list of DescribeEvaluations that match the search criteria in the request.

        ", "DescribeMLModels": "

        Returns a list of MLModel that match the search criteria in the request.

        ", "DescribeTags": "

        Describes one or more of the tags for your Amazon ML object.

        ", "GetBatchPrediction": "

        Returns a BatchPrediction that includes detailed metadata, status, and data file information for a Batch Prediction request.

        ", "GetDataSource": "

        Returns a DataSource that includes metadata and data file information, as well as the current status of the DataSource.

        GetDataSource provides results in normal or verbose format. The verbose format adds the schema description and the list of files pointed to by the DataSource to the normal format.

        ", "GetEvaluation": "

        Returns an Evaluation that includes metadata as well as the current status of the Evaluation.

        ", "GetMLModel": "

        Returns an MLModel that includes detailed metadata, data source information, and the current status of the MLModel.

        GetMLModel provides results in normal or verbose format.

        ", "Predict": "

        Generates a prediction for the observation using the specified ML Model.

        Note

        Not all response parameters will be populated. Whether a response parameter is populated depends on the type of model requested.

        ", "UpdateBatchPrediction": "

        Updates the BatchPredictionName of a BatchPrediction.

        You can use the GetBatchPrediction operation to view the contents of the updated data element.

        ", "UpdateDataSource": "

        Updates the DataSourceName of a DataSource.

        You can use the GetDataSource operation to view the contents of the updated data element.

        ", "UpdateEvaluation": "

        Updates the EvaluationName of an Evaluation.

        You can use the GetEvaluation operation to view the contents of the updated data element.

        ", "UpdateMLModel": "

        Updates the MLModelName and the ScoreThreshold of an MLModel.

        You can use the GetMLModel operation to view the contents of the updated data element.

        " }, "service": "Definition of the public APIs exposed by Amazon Machine Learning", "shapes": { "AddTagsInput": { "base": null, "refs": { } }, "AddTagsOutput": { "base": "

        Amazon ML returns the following elements.

        ", "refs": { } }, "Algorithm": { "base": "

        The function used to train an MLModel. Training choices supported by Amazon ML include the following:

        • SGD - Stochastic Gradient Descent.
        • RandomForest - Random forest of decision trees.
        ", "refs": { "MLModel$Algorithm": "

        The algorithm used to train the MLModel. The following algorithm is supported:

        • SGD -- Stochastic gradient descent. The goal of SGD is to minimize the gradient of the loss function.
        " } }, "AwsUserArn": { "base": "

        An Amazon Web Service (AWS) user account identifier. The account identifier can be an AWS root account or an AWS Identity and Access Management (IAM) user.

        ", "refs": { "BatchPrediction$CreatedByIamUser": "

        The AWS user account that invoked the BatchPrediction. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.

        ", "DataSource$CreatedByIamUser": "

        The AWS user account from which the DataSource was created. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.

        ", "Evaluation$CreatedByIamUser": "

        The AWS user account that invoked the evaluation. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.

        ", "GetBatchPredictionOutput$CreatedByIamUser": "

        The AWS user account that invoked the BatchPrediction. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.

        ", "GetDataSourceOutput$CreatedByIamUser": "

        The AWS user account from which the DataSource was created. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.

        ", "GetEvaluationOutput$CreatedByIamUser": "

        The AWS user account that invoked the evaluation. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.

        ", "GetMLModelOutput$CreatedByIamUser": "

        The AWS user account from which the MLModel was created. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.

        ", "MLModel$CreatedByIamUser": "

        The AWS user account from which the MLModel was created. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.

        " } }, "BatchPrediction": { "base": "

        Represents the output of a GetBatchPrediction operation.

        The content consists of the detailed metadata, the status, and the data file information of a Batch Prediction.

        ", "refs": { "BatchPredictions$member": null } }, "BatchPredictionFilterVariable": { "base": "

        A list of the variables to use in searching or filtering BatchPrediction.

        • CreatedAt - Sets the search criteria to BatchPrediction creation date.
        • Status - Sets the search criteria to BatchPrediction status.
        • Name - Sets the search criteria to the contents of BatchPrediction Name.
        • IAMUser - Sets the search criteria to the user account that invoked the BatchPrediction creation.
        • MLModelId - Sets the search criteria to the MLModel used in the BatchPrediction.
        • DataSourceId - Sets the search criteria to the DataSource used in the BatchPrediction.
        • DataURI - Sets the search criteria to the data file(s) used in the BatchPrediction. The URL can identify either a file or an Amazon Simple Storage Service (Amazon S3) bucket or directory.
        ", "refs": { "DescribeBatchPredictionsInput$FilterVariable": "

        Use one of the following variables to filter a list of BatchPrediction:

        • CreatedAt - Sets the search criteria to the BatchPrediction creation date.
        • Status - Sets the search criteria to the BatchPrediction status.
        • Name - Sets the search criteria to the contents of the BatchPrediction Name.
        • IAMUser - Sets the search criteria to the user account that invoked the BatchPrediction creation.
        • MLModelId - Sets the search criteria to the MLModel used in the BatchPrediction.
        • DataSourceId - Sets the search criteria to the DataSource used in the BatchPrediction.
        • DataURI - Sets the search criteria to the data file(s) used in the BatchPrediction. The URL can identify either a file or an Amazon Simple Storage Solution (Amazon S3) bucket or directory.
        " } }, "BatchPredictions": { "base": null, "refs": { "DescribeBatchPredictionsOutput$Results": "

        A list of BatchPrediction objects that meet the search criteria.

        " } }, "ComparatorValue": { "base": "

        The value specified in a filtering condition. The ComparatorValue becomes the reference value when matching or evaluating data values in filtering and searching functions.

        ", "refs": { "DescribeBatchPredictionsInput$EQ": "

        The equal to operator. The BatchPrediction results will have FilterVariable values that exactly match the value specified with EQ.

        ", "DescribeBatchPredictionsInput$GT": "

        The greater than operator. The BatchPrediction results will have FilterVariable values that are greater than the value specified with GT.

        ", "DescribeBatchPredictionsInput$LT": "

        The less than operator. The BatchPrediction results will have FilterVariable values that are less than the value specified with LT.

        ", "DescribeBatchPredictionsInput$GE": "

        The greater than or equal to operator. The BatchPrediction results will have FilterVariable values that are greater than or equal to the value specified with GE.

        ", "DescribeBatchPredictionsInput$LE": "

        The less than or equal to operator. The BatchPrediction results will have FilterVariable values that are less than or equal to the value specified with LE.

        ", "DescribeBatchPredictionsInput$NE": "

        The not equal to operator. The BatchPrediction results will have FilterVariable values not equal to the value specified with NE.

        ", "DescribeBatchPredictionsInput$Prefix": "

        A string that is found at the beginning of a variable, such as Name or Id.

        For example, a Batch Prediction operation could have the Name 2014-09-09-HolidayGiftMailer. To search for this BatchPrediction, select Name for the FilterVariable and any of the following strings for the Prefix:

        • 2014-09

        • 2014-09-09

        • 2014-09-09-Holiday

        ", "DescribeDataSourcesInput$EQ": "

        The equal to operator. The DataSource results will have FilterVariable values that exactly match the value specified with EQ.

        ", "DescribeDataSourcesInput$GT": "

        The greater than operator. The DataSource results will have FilterVariable values that are greater than the value specified with GT.

        ", "DescribeDataSourcesInput$LT": "

        The less than operator. The DataSource results will have FilterVariable values that are less than the value specified with LT.

        ", "DescribeDataSourcesInput$GE": "

        The greater than or equal to operator. The DataSource results will have FilterVariable values that are greater than or equal to the value specified with GE.

        ", "DescribeDataSourcesInput$LE": "

        The less than or equal to operator. The DataSource results will have FilterVariable values that are less than or equal to the value specified with LE.

        ", "DescribeDataSourcesInput$NE": "

        The not equal to operator. The DataSource results will have FilterVariable values not equal to the value specified with NE.

        ", "DescribeDataSourcesInput$Prefix": "

        A string that is found at the beginning of a variable, such as Name or Id.

        For example, a DataSource could have the Name 2014-09-09-HolidayGiftMailer. To search for this DataSource, select Name for the FilterVariable and any of the following strings for the Prefix:

        • 2014-09

        • 2014-09-09

        • 2014-09-09-Holiday

        ", "DescribeEvaluationsInput$EQ": "

        The equal to operator. The Evaluation results will have FilterVariable values that exactly match the value specified with EQ.

        ", "DescribeEvaluationsInput$GT": "

        The greater than operator. The Evaluation results will have FilterVariable values that are greater than the value specified with GT.

        ", "DescribeEvaluationsInput$LT": "

        The less than operator. The Evaluation results will have FilterVariable values that are less than the value specified with LT.

        ", "DescribeEvaluationsInput$GE": "

        The greater than or equal to operator. The Evaluation results will have FilterVariable values that are greater than or equal to the value specified with GE.

        ", "DescribeEvaluationsInput$LE": "

        The less than or equal to operator. The Evaluation results will have FilterVariable values that are less than or equal to the value specified with LE.

        ", "DescribeEvaluationsInput$NE": "

        The not equal to operator. The Evaluation results will have FilterVariable values not equal to the value specified with NE.

        ", "DescribeEvaluationsInput$Prefix": "

        A string that is found at the beginning of a variable, such as Name or Id.

        For example, an Evaluation could have the Name 2014-09-09-HolidayGiftMailer. To search for this Evaluation, select Name for the FilterVariable and any of the following strings for the Prefix:

        • 2014-09

        • 2014-09-09

        • 2014-09-09-Holiday

        ", "DescribeMLModelsInput$EQ": "

        The equal to operator. The MLModel results will have FilterVariable values that exactly match the value specified with EQ.

        ", "DescribeMLModelsInput$GT": "

        The greater than operator. The MLModel results will have FilterVariable values that are greater than the value specified with GT.

        ", "DescribeMLModelsInput$LT": "

        The less than operator. The MLModel results will have FilterVariable values that are less than the value specified with LT.

        ", "DescribeMLModelsInput$GE": "

        The greater than or equal to operator. The MLModel results will have FilterVariable values that are greater than or equal to the value specified with GE.

        ", "DescribeMLModelsInput$LE": "

        The less than or equal to operator. The MLModel results will have FilterVariable values that are less than or equal to the value specified with LE.

        ", "DescribeMLModelsInput$NE": "

        The not equal to operator. The MLModel results will have FilterVariable values not equal to the value specified with NE.

        ", "DescribeMLModelsInput$Prefix": "

        A string that is found at the beginning of a variable, such as Name or Id.

        For example, an MLModel could have the Name 2014-09-09-HolidayGiftMailer. To search for this MLModel, select Name for the FilterVariable and any of the following strings for the Prefix:

        • 2014-09

        • 2014-09-09

        • 2014-09-09-Holiday

        " } }, "ComputeStatistics": { "base": null, "refs": { "CreateDataSourceFromRDSInput$ComputeStatistics": "

        The compute statistics for a DataSource. The statistics are generated from the observation data referenced by a DataSource. Amazon ML uses the statistics internally during MLModel training. This parameter must be set to true if the DataSource needs to be used for MLModel training.

        ", "CreateDataSourceFromRedshiftInput$ComputeStatistics": "

        The compute statistics for a DataSource. The statistics are generated from the observation data referenced by a DataSource. Amazon ML uses the statistics internally during MLModel training. This parameter must be set to true if the DataSource needs to be used for MLModel training.

        ", "CreateDataSourceFromS3Input$ComputeStatistics": "

        The compute statistics for a DataSource. The statistics are generated from the observation data referenced by a DataSource. Amazon ML uses the statistics internally during MLModel training. This parameter must be set to true if the DataSource needs to be used for MLModel training.

        ", "DataSource$ComputeStatistics": "

        The parameter is true if statistics need to be generated from the observation data.

        ", "GetDataSourceOutput$ComputeStatistics": "

        The parameter is true if statistics need to be generated from the observation data.

        " } }, "CreateBatchPredictionInput": { "base": null, "refs": { } }, "CreateBatchPredictionOutput": { "base": "

        Represents the output of a CreateBatchPrediction operation, and is an acknowledgement that Amazon ML received the request.

        The CreateBatchPrediction operation is asynchronous. You can poll for status updates by using the >GetBatchPrediction operation and checking the Status parameter of the result.

        ", "refs": { } }, "CreateDataSourceFromRDSInput": { "base": null, "refs": { } }, "CreateDataSourceFromRDSOutput": { "base": "

        Represents the output of a CreateDataSourceFromRDS operation, and is an acknowledgement that Amazon ML received the request.

        The CreateDataSourceFromRDS> operation is asynchronous. You can poll for updates by using the GetBatchPrediction operation and checking the Status parameter. You can inspect the Message when Status shows up as FAILED. You can also check the progress of the copy operation by going to the DataPipeline console and looking up the pipeline using the pipelineId from the describe call.

        ", "refs": { } }, "CreateDataSourceFromRedshiftInput": { "base": null, "refs": { } }, "CreateDataSourceFromRedshiftOutput": { "base": "

        Represents the output of a CreateDataSourceFromRedshift operation, and is an acknowledgement that Amazon ML received the request.

        The CreateDataSourceFromRedshift operation is asynchronous. You can poll for updates by using the GetBatchPrediction operation and checking the Status parameter.

        ", "refs": { } }, "CreateDataSourceFromS3Input": { "base": null, "refs": { } }, "CreateDataSourceFromS3Output": { "base": "

        Represents the output of a CreateDataSourceFromS3 operation, and is an acknowledgement that Amazon ML received the request.

        The CreateDataSourceFromS3 operation is asynchronous. You can poll for updates by using the GetBatchPrediction operation and checking the Status parameter.

        ", "refs": { } }, "CreateEvaluationInput": { "base": null, "refs": { } }, "CreateEvaluationOutput": { "base": "

        Represents the output of a CreateEvaluation operation, and is an acknowledgement that Amazon ML received the request.

        CreateEvaluation operation is asynchronous. You can poll for status updates by using the GetEvcaluation operation and checking the Status parameter.

        ", "refs": { } }, "CreateMLModelInput": { "base": null, "refs": { } }, "CreateMLModelOutput": { "base": "

        Represents the output of a CreateMLModel operation, and is an acknowledgement that Amazon ML received the request.

        The CreateMLModel operation is asynchronous. You can poll for status updates by using the GetMLModel operation and checking the Status parameter.

        ", "refs": { } }, "CreateRealtimeEndpointInput": { "base": null, "refs": { } }, "CreateRealtimeEndpointOutput": { "base": "

        Represents the output of an CreateRealtimeEndpoint operation.

        The result contains the MLModelId and the endpoint information for the MLModel.

        The endpoint information includes the URI of the MLModel; that is, the location to send online prediction requests for the specified MLModel.

        ", "refs": { } }, "DataRearrangement": { "base": null, "refs": { "DataSource$DataRearrangement": "

        A JSON string that represents the splitting and rearrangement requirement used when this DataSource was created.

        ", "GetDataSourceOutput$DataRearrangement": "

        A JSON string that represents the splitting and rearrangement requirement used when this DataSource was created.

        ", "RDSDataSpec$DataRearrangement": "

        A JSON string that represents the splitting and rearrangement processing to be applied to a DataSource. If the DataRearrangement parameter is not provided, all of the input data is used to create the Datasource.

        There are multiple parameters that control what data is used to create a datasource:

        • percentBegin

          Use percentBegin to indicate the beginning of the range of the data used to create the Datasource. If you do not include percentBegin and percentEnd, Amazon ML includes all of the data when creating the datasource.

        • percentEnd

          Use percentEnd to indicate the end of the range of the data used to create the Datasource. If you do not include percentBegin and percentEnd, Amazon ML includes all of the data when creating the datasource.

        • complement

          The complement parameter instructs Amazon ML to use the data that is not included in the range of percentBegin to percentEnd to create a datasource. The complement parameter is useful if you need to create complementary datasources for training and evaluation. To create a complementary datasource, use the same values for percentBegin and percentEnd, along with the complement parameter.

          For example, the following two datasources do not share any data, and can be used to train and evaluate a model. The first datasource has 25 percent of the data, and the second one has 75 percent of the data.

          Datasource for evaluation: {\"splitting\":{\"percentBegin\":0, \"percentEnd\":25}}

          Datasource for training: {\"splitting\":{\"percentBegin\":0, \"percentEnd\":25, \"complement\":\"true\"}}

        • strategy

          To change how Amazon ML splits the data for a datasource, use the strategy parameter.

          The default value for the strategy parameter is sequential, meaning that Amazon ML takes all of the data records between the percentBegin and percentEnd parameters for the datasource, in the order that the records appear in the input data.

          The following two DataRearrangement lines are examples of sequentially ordered training and evaluation datasources:

          Datasource for evaluation: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"sequential\"}}

          Datasource for training: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"sequential\", \"complement\":\"true\"}}

          To randomly split the input data into the proportions indicated by the percentBegin and percentEnd parameters, set the strategy parameter to random and provide a string that is used as the seed value for the random data splitting (for example, you can use the S3 path to your data as the random seed string). If you choose the random split strategy, Amazon ML assigns each row of data a pseudo-random number between 0 and 100, and then selects the rows that have an assigned number between percentBegin and percentEnd. Pseudo-random numbers are assigned using both the input seed string value and the byte offset as a seed, so changing the data results in a different split. Any existing ordering is preserved. The random splitting strategy ensures that variables in the training and evaluation data are distributed similarly. It is useful in the cases where the input data may have an implicit sort order, which would otherwise result in training and evaluation datasources containing non-similar data records.

          The following two DataRearrangement lines are examples of non-sequentially ordered training and evaluation datasources:

          Datasource for evaluation: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"random\", \"randomSeed\"=\"s3://my_s3_path/bucket/file.csv\"}}

          Datasource for training: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"random\", \"randomSeed\"=\"s3://my_s3_path/bucket/file.csv\", \"complement\":\"true\"}}

        ", "RedshiftDataSpec$DataRearrangement": "

        A JSON string that represents the splitting and rearrangement processing to be applied to a DataSource. If the DataRearrangement parameter is not provided, all of the input data is used to create the Datasource.

        There are multiple parameters that control what data is used to create a datasource:

        • percentBegin

          Use percentBegin to indicate the beginning of the range of the data used to create the Datasource. If you do not include percentBegin and percentEnd, Amazon ML includes all of the data when creating the datasource.

        • percentEnd

          Use percentEnd to indicate the end of the range of the data used to create the Datasource. If you do not include percentBegin and percentEnd, Amazon ML includes all of the data when creating the datasource.

        • complement

          The complement parameter instructs Amazon ML to use the data that is not included in the range of percentBegin to percentEnd to create a datasource. The complement parameter is useful if you need to create complementary datasources for training and evaluation. To create a complementary datasource, use the same values for percentBegin and percentEnd, along with the complement parameter.

          For example, the following two datasources do not share any data, and can be used to train and evaluate a model. The first datasource has 25 percent of the data, and the second one has 75 percent of the data.

          Datasource for evaluation: {\"splitting\":{\"percentBegin\":0, \"percentEnd\":25}}

          Datasource for training: {\"splitting\":{\"percentBegin\":0, \"percentEnd\":25, \"complement\":\"true\"}}

        • strategy

          To change how Amazon ML splits the data for a datasource, use the strategy parameter.

          The default value for the strategy parameter is sequential, meaning that Amazon ML takes all of the data records between the percentBegin and percentEnd parameters for the datasource, in the order that the records appear in the input data.

          The following two DataRearrangement lines are examples of sequentially ordered training and evaluation datasources:

          Datasource for evaluation: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"sequential\"}}

          Datasource for training: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"sequential\", \"complement\":\"true\"}}

          To randomly split the input data into the proportions indicated by the percentBegin and percentEnd parameters, set the strategy parameter to random and provide a string that is used as the seed value for the random data splitting (for example, you can use the S3 path to your data as the random seed string). If you choose the random split strategy, Amazon ML assigns each row of data a pseudo-random number between 0 and 100, and then selects the rows that have an assigned number between percentBegin and percentEnd. Pseudo-random numbers are assigned using both the input seed string value and the byte offset as a seed, so changing the data results in a different split. Any existing ordering is preserved. The random splitting strategy ensures that variables in the training and evaluation data are distributed similarly. It is useful in the cases where the input data may have an implicit sort order, which would otherwise result in training and evaluation datasources containing non-similar data records.

          The following two DataRearrangement lines are examples of non-sequentially ordered training and evaluation datasources:

          Datasource for evaluation: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"random\", \"randomSeed\"=\"s3://my_s3_path/bucket/file.csv\"}}

          Datasource for training: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"random\", \"randomSeed\"=\"s3://my_s3_path/bucket/file.csv\", \"complement\":\"true\"}}

        ", "S3DataSpec$DataRearrangement": "

        A JSON string that represents the splitting and rearrangement processing to be applied to a DataSource. If the DataRearrangement parameter is not provided, all of the input data is used to create the Datasource.

        There are multiple parameters that control what data is used to create a datasource:

        • percentBegin

          Use percentBegin to indicate the beginning of the range of the data used to create the Datasource. If you do not include percentBegin and percentEnd, Amazon ML includes all of the data when creating the datasource.

        • percentEnd

          Use percentEnd to indicate the end of the range of the data used to create the Datasource. If you do not include percentBegin and percentEnd, Amazon ML includes all of the data when creating the datasource.

        • complement

          The complement parameter instructs Amazon ML to use the data that is not included in the range of percentBegin to percentEnd to create a datasource. The complement parameter is useful if you need to create complementary datasources for training and evaluation. To create a complementary datasource, use the same values for percentBegin and percentEnd, along with the complement parameter.

          For example, the following two datasources do not share any data, and can be used to train and evaluate a model. The first datasource has 25 percent of the data, and the second one has 75 percent of the data.

          Datasource for evaluation: {\"splitting\":{\"percentBegin\":0, \"percentEnd\":25}}

          Datasource for training: {\"splitting\":{\"percentBegin\":0, \"percentEnd\":25, \"complement\":\"true\"}}

        • strategy

          To change how Amazon ML splits the data for a datasource, use the strategy parameter.

          The default value for the strategy parameter is sequential, meaning that Amazon ML takes all of the data records between the percentBegin and percentEnd parameters for the datasource, in the order that the records appear in the input data.

          The following two DataRearrangement lines are examples of sequentially ordered training and evaluation datasources:

          Datasource for evaluation: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"sequential\"}}

          Datasource for training: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"sequential\", \"complement\":\"true\"}}

          To randomly split the input data into the proportions indicated by the percentBegin and percentEnd parameters, set the strategy parameter to random and provide a string that is used as the seed value for the random data splitting (for example, you can use the S3 path to your data as the random seed string). If you choose the random split strategy, Amazon ML assigns each row of data a pseudo-random number between 0 and 100, and then selects the rows that have an assigned number between percentBegin and percentEnd. Pseudo-random numbers are assigned using both the input seed string value and the byte offset as a seed, so changing the data results in a different split. Any existing ordering is preserved. The random splitting strategy ensures that variables in the training and evaluation data are distributed similarly. It is useful in the cases where the input data may have an implicit sort order, which would otherwise result in training and evaluation datasources containing non-similar data records.

          The following two DataRearrangement lines are examples of non-sequentially ordered training and evaluation datasources:

          Datasource for evaluation: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"random\", \"randomSeed\"=\"s3://my_s3_path/bucket/file.csv\"}}

          Datasource for training: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"random\", \"randomSeed\"=\"s3://my_s3_path/bucket/file.csv\", \"complement\":\"true\"}}

        " } }, "DataSchema": { "base": "

        The schema of a DataSource. The DataSchema defines the structure of the observation data in the data file(s) referenced in the DataSource. The DataSource schema is expressed in JSON format.

        DataSchema is not required if you specify a DataSchemaUri

        { \"version\": \"1.0\", \"recordAnnotationFieldName\": \"F1\", \"recordWeightFieldName\": \"F2\", \"targetFieldName\": \"F3\", \"dataFormat\": \"CSV\", \"dataFileContainsHeader\": true, \"variables\": [ { \"fieldName\": \"F1\", \"fieldType\": \"TEXT\" }, { \"fieldName\": \"F2\", \"fieldType\": \"NUMERIC\" }, { \"fieldName\": \"F3\", \"fieldType\": \"CATEGORICAL\" }, { \"fieldName\": \"F4\", \"fieldType\": \"NUMERIC\" }, { \"fieldName\": \"F5\", \"fieldType\": \"CATEGORICAL\" }, { \"fieldName\": \"F6\", \"fieldType\": \"TEXT\" }, { \"fieldName\": \"F7\", \"fieldType\": \"WEIGHTED_INT_SEQUENCE\" }, { \"fieldName\": \"F8\", \"fieldType\": \"WEIGHTED_STRING_SEQUENCE\" } ], \"excludedVariableNames\": [ \"F6\" ] }

        ", "refs": { "GetDataSourceOutput$DataSourceSchema": "

        The schema used by all of the data files of this DataSource.

        Note

        This parameter is provided as part of the verbose format.

        ", "GetMLModelOutput$Schema": "

        The schema used by all of the data files referenced by the DataSource.

        Note

        This parameter is provided as part of the verbose format.

        ", "RDSDataSpec$DataSchema": "

        A JSON string that represents the schema for an Amazon RDS DataSource. The DataSchema defines the structure of the observation data in the data file(s) referenced in the DataSource.

        A DataSchema is not required if you specify a DataSchemaUri

        Define your DataSchema as a series of key-value pairs. attributes and excludedVariableNames have an array of key-value pairs for their value. Use the following format to define your DataSchema.

        { \"version\": \"1.0\",

        \"recordAnnotationFieldName\": \"F1\",

        \"recordWeightFieldName\": \"F2\",

        \"targetFieldName\": \"F3\",

        \"dataFormat\": \"CSV\",

        \"dataFileContainsHeader\": true,

        \"attributes\": [

        { \"fieldName\": \"F1\", \"fieldType\": \"TEXT\" }, { \"fieldName\": \"F2\", \"fieldType\": \"NUMERIC\" }, { \"fieldName\": \"F3\", \"fieldType\": \"CATEGORICAL\" }, { \"fieldName\": \"F4\", \"fieldType\": \"NUMERIC\" }, { \"fieldName\": \"F5\", \"fieldType\": \"CATEGORICAL\" }, { \"fieldName\": \"F6\", \"fieldType\": \"TEXT\" }, { \"fieldName\": \"F7\", \"fieldType\": \"WEIGHTED_INT_SEQUENCE\" }, { \"fieldName\": \"F8\", \"fieldType\": \"WEIGHTED_STRING_SEQUENCE\" } ],

        \"excludedVariableNames\": [ \"F6\" ] }

        ", "RedshiftDataSpec$DataSchema": "

        A JSON string that represents the schema for an Amazon Redshift DataSource. The DataSchema defines the structure of the observation data in the data file(s) referenced in the DataSource.

        A DataSchema is not required if you specify a DataSchemaUri.

        Define your DataSchema as a series of key-value pairs. attributes and excludedVariableNames have an array of key-value pairs for their value. Use the following format to define your DataSchema.

        { \"version\": \"1.0\",

        \"recordAnnotationFieldName\": \"F1\",

        \"recordWeightFieldName\": \"F2\",

        \"targetFieldName\": \"F3\",

        \"dataFormat\": \"CSV\",

        \"dataFileContainsHeader\": true,

        \"attributes\": [

        { \"fieldName\": \"F1\", \"fieldType\": \"TEXT\" }, { \"fieldName\": \"F2\", \"fieldType\": \"NUMERIC\" }, { \"fieldName\": \"F3\", \"fieldType\": \"CATEGORICAL\" }, { \"fieldName\": \"F4\", \"fieldType\": \"NUMERIC\" }, { \"fieldName\": \"F5\", \"fieldType\": \"CATEGORICAL\" }, { \"fieldName\": \"F6\", \"fieldType\": \"TEXT\" }, { \"fieldName\": \"F7\", \"fieldType\": \"WEIGHTED_INT_SEQUENCE\" }, { \"fieldName\": \"F8\", \"fieldType\": \"WEIGHTED_STRING_SEQUENCE\" } ],

        \"excludedVariableNames\": [ \"F6\" ] }

        ", "S3DataSpec$DataSchema": "

        A JSON string that represents the schema for an Amazon S3 DataSource. The DataSchema defines the structure of the observation data in the data file(s) referenced in the DataSource.

        You must provide either the DataSchema or the DataSchemaLocationS3.

        Define your DataSchema as a series of key-value pairs. attributes and excludedVariableNames have an array of key-value pairs for their value. Use the following format to define your DataSchema.

        { \"version\": \"1.0\",

        \"recordAnnotationFieldName\": \"F1\",

        \"recordWeightFieldName\": \"F2\",

        \"targetFieldName\": \"F3\",

        \"dataFormat\": \"CSV\",

        \"dataFileContainsHeader\": true,

        \"attributes\": [

        { \"fieldName\": \"F1\", \"fieldType\": \"TEXT\" }, { \"fieldName\": \"F2\", \"fieldType\": \"NUMERIC\" }, { \"fieldName\": \"F3\", \"fieldType\": \"CATEGORICAL\" }, { \"fieldName\": \"F4\", \"fieldType\": \"NUMERIC\" }, { \"fieldName\": \"F5\", \"fieldType\": \"CATEGORICAL\" }, { \"fieldName\": \"F6\", \"fieldType\": \"TEXT\" }, { \"fieldName\": \"F7\", \"fieldType\": \"WEIGHTED_INT_SEQUENCE\" }, { \"fieldName\": \"F8\", \"fieldType\": \"WEIGHTED_STRING_SEQUENCE\" } ],

        \"excludedVariableNames\": [ \"F6\" ] }

        " } }, "DataSource": { "base": "

        Represents the output of the GetDataSource operation.

        The content consists of the detailed metadata and data file information and the current status of the DataSource.

        ", "refs": { "DataSources$member": null } }, "DataSourceFilterVariable": { "base": "

        A list of the variables to use in searching or filtering DataSource.

        • CreatedAt - Sets the search criteria to DataSource creation date.
        • Status - Sets the search criteria to DataSource status.
        • Name - Sets the search criteria to the contents of DataSource Name.
        • DataUri - Sets the search criteria to the URI of data files used to create the DataSource. The URI can identify either a file or an Amazon Simple Storage Service (Amazon S3) bucket or directory.
        • IAMUser - Sets the search criteria to the user account that invoked the DataSource creation.
        Note

        The variable names should match the variable names in the DataSource.

        ", "refs": { "DescribeDataSourcesInput$FilterVariable": "

        Use one of the following variables to filter a list of DataSource:

        • CreatedAt - Sets the search criteria to DataSource creation dates.
        • Status - Sets the search criteria to DataSource statuses.
        • Name - Sets the search criteria to the contents of DataSource Name.
        • DataUri - Sets the search criteria to the URI of data files used to create the DataSource. The URI can identify either a file or an Amazon Simple Storage Service (Amazon S3) bucket or directory.
        • IAMUser - Sets the search criteria to the user account that invoked the DataSource creation.
        " } }, "DataSources": { "base": null, "refs": { "DescribeDataSourcesOutput$Results": "

        A list of DataSource that meet the search criteria.

        " } }, "DeleteBatchPredictionInput": { "base": null, "refs": { } }, "DeleteBatchPredictionOutput": { "base": "

        Represents the output of a DeleteBatchPrediction operation.

        You can use the GetBatchPrediction operation and check the value of the Status parameter to see whether a BatchPrediction is marked as DELETED.

        ", "refs": { } }, "DeleteDataSourceInput": { "base": null, "refs": { } }, "DeleteDataSourceOutput": { "base": "

        Represents the output of a DeleteDataSource operation.

        ", "refs": { } }, "DeleteEvaluationInput": { "base": null, "refs": { } }, "DeleteEvaluationOutput": { "base": "

        Represents the output of a DeleteEvaluation operation. The output indicates that Amazon Machine Learning (Amazon ML) received the request.

        You can use the GetEvaluation operation and check the value of the Status parameter to see whether an Evaluation is marked as DELETED.

        ", "refs": { } }, "DeleteMLModelInput": { "base": null, "refs": { } }, "DeleteMLModelOutput": { "base": "

        Represents the output of a DeleteMLModel operation.

        You can use the GetMLModel operation and check the value of the Status parameter to see whether an MLModel is marked as DELETED.

        ", "refs": { } }, "DeleteRealtimeEndpointInput": { "base": null, "refs": { } }, "DeleteRealtimeEndpointOutput": { "base": "

        Represents the output of an DeleteRealtimeEndpoint operation.

        The result contains the MLModelId and the endpoint information for the MLModel.

        ", "refs": { } }, "DeleteTagsInput": { "base": null, "refs": { } }, "DeleteTagsOutput": { "base": "

        Amazon ML returns the following elements.

        ", "refs": { } }, "DescribeBatchPredictionsInput": { "base": null, "refs": { } }, "DescribeBatchPredictionsOutput": { "base": "

        Represents the output of a DescribeBatchPredictions operation. The content is essentially a list of BatchPredictions.

        ", "refs": { } }, "DescribeDataSourcesInput": { "base": null, "refs": { } }, "DescribeDataSourcesOutput": { "base": "

        Represents the query results from a DescribeDataSources operation. The content is essentially a list of DataSource.

        ", "refs": { } }, "DescribeEvaluationsInput": { "base": null, "refs": { } }, "DescribeEvaluationsOutput": { "base": "

        Represents the query results from a DescribeEvaluations operation. The content is essentially a list of Evaluation.

        ", "refs": { } }, "DescribeMLModelsInput": { "base": null, "refs": { } }, "DescribeMLModelsOutput": { "base": "

        Represents the output of a DescribeMLModels operation. The content is essentially a list of MLModel.

        ", "refs": { } }, "DescribeTagsInput": { "base": null, "refs": { } }, "DescribeTagsOutput": { "base": "

        Amazon ML returns the following elements.

        ", "refs": { } }, "DetailsAttributes": { "base": "Contains the key values of DetailsMap: PredictiveModelType - Indicates the type of the MLModel. Algorithm - Indicates the algorithm that was used for the MLModel.", "refs": { "DetailsMap$key": null } }, "DetailsMap": { "base": "Provides any additional details regarding the prediction.", "refs": { "Prediction$details": null } }, "DetailsValue": { "base": null, "refs": { "DetailsMap$value": null } }, "EDPPipelineId": { "base": null, "refs": { "RDSMetadata$DataPipelineId": "

        The ID of the Data Pipeline instance that is used to carry to copy data from Amazon RDS to Amazon S3. You can use the ID to find details about the instance in the Data Pipeline console.

        " } }, "EDPResourceRole": { "base": null, "refs": { "RDSDataSpec$ResourceRole": "

        The role (DataPipelineDefaultResourceRole) assumed by an Amazon Elastic Compute Cloud (Amazon EC2) instance to carry out the copy operation from Amazon RDS to an Amazon S3 task. For more information, see Role templates for data pipelines.

        ", "RDSMetadata$ResourceRole": "

        The role (DataPipelineDefaultResourceRole) assumed by an Amazon EC2 instance to carry out the copy task from Amazon RDS to Amazon S3. For more information, see Role templates for data pipelines.

        " } }, "EDPSecurityGroupId": { "base": null, "refs": { "EDPSecurityGroupIds$member": null } }, "EDPSecurityGroupIds": { "base": null, "refs": { "RDSDataSpec$SecurityGroupIds": "

        The security group IDs to be used to access a VPC-based RDS DB instance. Ensure that there are appropriate ingress rules set up to allow access to the RDS DB instance. This attribute is used by Data Pipeline to carry out the copy operation from Amazon RDS to an Amazon S3 task.

        " } }, "EDPServiceRole": { "base": null, "refs": { "RDSDataSpec$ServiceRole": "

        The role (DataPipelineDefaultRole) assumed by AWS Data Pipeline service to monitor the progress of the copy task from Amazon RDS to Amazon S3. For more information, see Role templates for data pipelines.

        ", "RDSMetadata$ServiceRole": "

        The role (DataPipelineDefaultRole) assumed by the Data Pipeline service to monitor the progress of the copy task from Amazon RDS to Amazon S3. For more information, see Role templates for data pipelines.

        " } }, "EDPSubnetId": { "base": null, "refs": { "RDSDataSpec$SubnetId": "

        The subnet ID to be used to access a VPC-based RDS DB instance. This attribute is used by Data Pipeline to carry out the copy task from Amazon RDS to Amazon S3.

        " } }, "EntityId": { "base": null, "refs": { "AddTagsInput$ResourceId": "

        The ID of the ML object to tag. For example, exampleModelId.

        ", "AddTagsOutput$ResourceId": "

        The ID of the ML object that was tagged.

        ", "BatchPrediction$BatchPredictionId": "

        The ID assigned to the BatchPrediction at creation. This value should be identical to the value of the BatchPredictionID in the request.

        ", "BatchPrediction$MLModelId": "

        The ID of the MLModel that generated predictions for the BatchPrediction request.

        ", "BatchPrediction$BatchPredictionDataSourceId": "

        The ID of the DataSource that points to the group of observations to predict.

        ", "CreateBatchPredictionInput$BatchPredictionId": "

        A user-supplied ID that uniquely identifies the BatchPrediction.

        ", "CreateBatchPredictionInput$MLModelId": "

        The ID of the MLModel that will generate predictions for the group of observations.

        ", "CreateBatchPredictionInput$BatchPredictionDataSourceId": "

        The ID of the DataSource that points to the group of observations to predict.

        ", "CreateBatchPredictionOutput$BatchPredictionId": "

        A user-supplied ID that uniquely identifies the BatchPrediction. This value is identical to the value of the BatchPredictionId in the request.

        ", "CreateDataSourceFromRDSInput$DataSourceId": "

        A user-supplied ID that uniquely identifies the DataSource. Typically, an Amazon Resource Number (ARN) becomes the ID for a DataSource.

        ", "CreateDataSourceFromRDSOutput$DataSourceId": "

        A user-supplied ID that uniquely identifies the datasource. This value should be identical to the value of the DataSourceID in the request.

        ", "CreateDataSourceFromRedshiftInput$DataSourceId": "

        A user-supplied ID that uniquely identifies the DataSource.

        ", "CreateDataSourceFromRedshiftOutput$DataSourceId": "

        A user-supplied ID that uniquely identifies the datasource. This value should be identical to the value of the DataSourceID in the request.

        ", "CreateDataSourceFromS3Input$DataSourceId": "

        A user-supplied identifier that uniquely identifies the DataSource.

        ", "CreateDataSourceFromS3Output$DataSourceId": "

        A user-supplied ID that uniquely identifies the DataSource. This value should be identical to the value of the DataSourceID in the request.

        ", "CreateEvaluationInput$EvaluationId": "

        A user-supplied ID that uniquely identifies the Evaluation.

        ", "CreateEvaluationInput$MLModelId": "

        The ID of the MLModel to evaluate.

        The schema used in creating the MLModel must match the schema of the DataSource used in the Evaluation.

        ", "CreateEvaluationInput$EvaluationDataSourceId": "

        The ID of the DataSource for the evaluation. The schema of the DataSource must match the schema used to create the MLModel.

        ", "CreateEvaluationOutput$EvaluationId": "

        The user-supplied ID that uniquely identifies the Evaluation. This value should be identical to the value of the EvaluationId in the request.

        ", "CreateMLModelInput$MLModelId": "

        A user-supplied ID that uniquely identifies the MLModel.

        ", "CreateMLModelInput$TrainingDataSourceId": "

        The DataSource that points to the training data.

        ", "CreateMLModelOutput$MLModelId": "

        A user-supplied ID that uniquely identifies the MLModel. This value should be identical to the value of the MLModelId in the request.

        ", "CreateRealtimeEndpointInput$MLModelId": "

        The ID assigned to the MLModel during creation.

        ", "CreateRealtimeEndpointOutput$MLModelId": "

        A user-supplied ID that uniquely identifies the MLModel. This value should be identical to the value of the MLModelId in the request.

        ", "DataSource$DataSourceId": "

        The ID that is assigned to the DataSource during creation.

        ", "DeleteBatchPredictionInput$BatchPredictionId": "

        A user-supplied ID that uniquely identifies the BatchPrediction.

        ", "DeleteBatchPredictionOutput$BatchPredictionId": "

        A user-supplied ID that uniquely identifies the BatchPrediction. This value should be identical to the value of the BatchPredictionID in the request.

        ", "DeleteDataSourceInput$DataSourceId": "

        A user-supplied ID that uniquely identifies the DataSource.

        ", "DeleteDataSourceOutput$DataSourceId": "

        A user-supplied ID that uniquely identifies the DataSource. This value should be identical to the value of the DataSourceID in the request.

        ", "DeleteEvaluationInput$EvaluationId": "

        A user-supplied ID that uniquely identifies the Evaluation to delete.

        ", "DeleteEvaluationOutput$EvaluationId": "

        A user-supplied ID that uniquely identifies the Evaluation. This value should be identical to the value of the EvaluationId in the request.

        ", "DeleteMLModelInput$MLModelId": "

        A user-supplied ID that uniquely identifies the MLModel.

        ", "DeleteMLModelOutput$MLModelId": "

        A user-supplied ID that uniquely identifies the MLModel. This value should be identical to the value of the MLModelID in the request.

        ", "DeleteRealtimeEndpointInput$MLModelId": "

        The ID assigned to the MLModel during creation.

        ", "DeleteRealtimeEndpointOutput$MLModelId": "

        A user-supplied ID that uniquely identifies the MLModel. This value should be identical to the value of the MLModelId in the request.

        ", "DeleteTagsInput$ResourceId": "

        The ID of the tagged ML object. For example, exampleModelId.

        ", "DeleteTagsOutput$ResourceId": "

        The ID of the ML object from which tags were deleted.

        ", "DescribeTagsInput$ResourceId": "

        The ID of the ML object. For example, exampleModelId.

        ", "DescribeTagsOutput$ResourceId": "

        The ID of the tagged ML object.

        ", "Evaluation$EvaluationId": "

        The ID that is assigned to the Evaluation at creation.

        ", "Evaluation$MLModelId": "

        The ID of the MLModel that is the focus of the evaluation.

        ", "Evaluation$EvaluationDataSourceId": "

        The ID of the DataSource that is used to evaluate the MLModel.

        ", "GetBatchPredictionInput$BatchPredictionId": "

        An ID assigned to the BatchPrediction at creation.

        ", "GetBatchPredictionOutput$BatchPredictionId": "

        An ID assigned to the BatchPrediction at creation. This value should be identical to the value of the BatchPredictionID in the request.

        ", "GetBatchPredictionOutput$MLModelId": "

        The ID of the MLModel that generated predictions for the BatchPrediction request.

        ", "GetBatchPredictionOutput$BatchPredictionDataSourceId": "

        The ID of the DataSource that was used to create the BatchPrediction.

        ", "GetDataSourceInput$DataSourceId": "

        The ID assigned to the DataSource at creation.

        ", "GetDataSourceOutput$DataSourceId": "

        The ID assigned to the DataSource at creation. This value should be identical to the value of the DataSourceId in the request.

        ", "GetEvaluationInput$EvaluationId": "

        The ID of the Evaluation to retrieve. The evaluation of each MLModel is recorded and cataloged. The ID provides the means to access the information.

        ", "GetEvaluationOutput$EvaluationId": "

        The evaluation ID which is same as the EvaluationId in the request.

        ", "GetEvaluationOutput$MLModelId": "

        The ID of the MLModel that was the focus of the evaluation.

        ", "GetEvaluationOutput$EvaluationDataSourceId": "

        The DataSource used for this evaluation.

        ", "GetMLModelInput$MLModelId": "

        The ID assigned to the MLModel at creation.

        ", "GetMLModelOutput$MLModelId": "

        The MLModel ID, which is same as the MLModelId in the request.

        ", "GetMLModelOutput$TrainingDataSourceId": "

        The ID of the training DataSource.

        ", "MLModel$MLModelId": "

        The ID assigned to the MLModel at creation.

        ", "MLModel$TrainingDataSourceId": "

        The ID of the training DataSource. The CreateMLModel operation uses the TrainingDataSourceId.

        ", "PredictInput$MLModelId": "

        A unique identifier of the MLModel.

        ", "UpdateBatchPredictionInput$BatchPredictionId": "

        The ID assigned to the BatchPrediction during creation.

        ", "UpdateBatchPredictionOutput$BatchPredictionId": "

        The ID assigned to the BatchPrediction during creation. This value should be identical to the value of the BatchPredictionId in the request.

        ", "UpdateDataSourceInput$DataSourceId": "

        The ID assigned to the DataSource during creation.

        ", "UpdateDataSourceOutput$DataSourceId": "

        The ID assigned to the DataSource during creation. This value should be identical to the value of the DataSourceID in the request.

        ", "UpdateEvaluationInput$EvaluationId": "

        The ID assigned to the Evaluation during creation.

        ", "UpdateEvaluationOutput$EvaluationId": "

        The ID assigned to the Evaluation during creation. This value should be identical to the value of the Evaluation in the request.

        ", "UpdateMLModelInput$MLModelId": "

        The ID assigned to the MLModel during creation.

        ", "UpdateMLModelOutput$MLModelId": "

        The ID assigned to the MLModel during creation. This value should be identical to the value of the MLModelID in the request.

        " } }, "EntityName": { "base": "

        A user-supplied name or description of the Amazon ML resource.

        ", "refs": { "BatchPrediction$Name": "

        A user-supplied name or description of the BatchPrediction.

        ", "CreateBatchPredictionInput$BatchPredictionName": "

        A user-supplied name or description of the BatchPrediction. BatchPredictionName can only use the UTF-8 character set.

        ", "CreateDataSourceFromRDSInput$DataSourceName": "

        A user-supplied name or description of the DataSource.

        ", "CreateDataSourceFromRedshiftInput$DataSourceName": "

        A user-supplied name or description of the DataSource.

        ", "CreateDataSourceFromS3Input$DataSourceName": "

        A user-supplied name or description of the DataSource.

        ", "CreateEvaluationInput$EvaluationName": "

        A user-supplied name or description of the Evaluation.

        ", "CreateMLModelInput$MLModelName": "

        A user-supplied name or description of the MLModel.

        ", "DataSource$Name": "

        A user-supplied name or description of the DataSource.

        ", "Evaluation$Name": "

        A user-supplied name or description of the Evaluation.

        ", "GetBatchPredictionOutput$Name": "

        A user-supplied name or description of the BatchPrediction.

        ", "GetDataSourceOutput$Name": "

        A user-supplied name or description of the DataSource.

        ", "GetEvaluationOutput$Name": "

        A user-supplied name or description of the Evaluation.

        ", "UpdateBatchPredictionInput$BatchPredictionName": "

        A new user-supplied name or description of the BatchPrediction.

        ", "UpdateDataSourceInput$DataSourceName": "

        A new user-supplied name or description of the DataSource that will replace the current description.

        ", "UpdateEvaluationInput$EvaluationName": "

        A new user-supplied name or description of the Evaluation that will replace the current content.

        ", "UpdateMLModelInput$MLModelName": "

        A user-supplied name or description of the MLModel.

        " } }, "EntityStatus": { "base": "

        Object status with the following possible values:

        • PENDING
        • INPROGRESS
        • FAILED
        • COMPLETED
        • DELETED
        ", "refs": { "BatchPrediction$Status": "

        The status of the BatchPrediction. This element can have one of the following values:

        • PENDING - Amazon Machine Learning (Amazon ML) submitted a request to generate predictions for a batch of observations.
        • INPROGRESS - The process is underway.
        • FAILED - The request to perform a batch prediction did not run to completion. It is not usable.
        • COMPLETED - The batch prediction process completed successfully.
        • DELETED - The BatchPrediction is marked as deleted. It is not usable.
        ", "DataSource$Status": "

        The current status of the DataSource. This element can have one of the following values:

        • PENDING - Amazon Machine Learning (Amazon ML) submitted a request to create a DataSource.
        • INPROGRESS - The creation process is underway.
        • FAILED - The request to create a DataSource did not run to completion. It is not usable.
        • COMPLETED - The creation process completed successfully.
        • DELETED - The DataSource is marked as deleted. It is not usable.
        ", "Evaluation$Status": "

        The status of the evaluation. This element can have one of the following values:

        • PENDING - Amazon Machine Learning (Amazon ML) submitted a request to evaluate an MLModel.
        • INPROGRESS - The evaluation is underway.
        • FAILED - The request to evaluate an MLModel did not run to completion. It is not usable.
        • COMPLETED - The evaluation process completed successfully.
        • DELETED - The Evaluation is marked as deleted. It is not usable.
        ", "GetBatchPredictionOutput$Status": "

        The status of the BatchPrediction, which can be one of the following values:

        • PENDING - Amazon Machine Learning (Amazon ML) submitted a request to generate batch predictions.
        • INPROGRESS - The batch predictions are in progress.
        • FAILED - The request to perform a batch prediction did not run to completion. It is not usable.
        • COMPLETED - The batch prediction process completed successfully.
        • DELETED - The BatchPrediction is marked as deleted. It is not usable.
        ", "GetDataSourceOutput$Status": "

        The current status of the DataSource. This element can have one of the following values:

        • PENDING - Amazon ML submitted a request to create a DataSource.
        • INPROGRESS - The creation process is underway.
        • FAILED - The request to create a DataSource did not run to completion. It is not usable.
        • COMPLETED - The creation process completed successfully.
        • DELETED - The DataSource is marked as deleted. It is not usable.
        ", "GetEvaluationOutput$Status": "

        The status of the evaluation. This element can have one of the following values:

        • PENDING - Amazon Machine Language (Amazon ML) submitted a request to evaluate an MLModel.
        • INPROGRESS - The evaluation is underway.
        • FAILED - The request to evaluate an MLModel did not run to completion. It is not usable.
        • COMPLETED - The evaluation process completed successfully.
        • DELETED - The Evaluation is marked as deleted. It is not usable.
        ", "GetMLModelOutput$Status": "

        The current status of the MLModel. This element can have one of the following values:

        • PENDING - Amazon Machine Learning (Amazon ML) submitted a request to describe a MLModel.
        • INPROGRESS - The request is processing.
        • FAILED - The request did not run to completion. The ML model isn't usable.
        • COMPLETED - The request completed successfully.
        • DELETED - The MLModel is marked as deleted. It isn't usable.
        ", "MLModel$Status": "

        The current status of an MLModel. This element can have one of the following values:

        • PENDING - Amazon Machine Learning (Amazon ML) submitted a request to create an MLModel.
        • INPROGRESS - The creation process is underway.
        • FAILED - The request to create an MLModel didn't run to completion. The model isn't usable.
        • COMPLETED - The creation process completed successfully.
        • DELETED - The MLModel is marked as deleted. It isn't usable.
        " } }, "EpochTime": { "base": "

        A timestamp represented in epoch time.

        ", "refs": { "BatchPrediction$CreatedAt": "

        The time that the BatchPrediction was created. The time is expressed in epoch time.

        ", "BatchPrediction$LastUpdatedAt": "

        The time of the most recent edit to the BatchPrediction. The time is expressed in epoch time.

        ", "BatchPrediction$FinishedAt": null, "BatchPrediction$StartedAt": null, "DataSource$CreatedAt": "

        The time that the DataSource was created. The time is expressed in epoch time.

        ", "DataSource$LastUpdatedAt": "

        The time of the most recent edit to the BatchPrediction. The time is expressed in epoch time.

        ", "DataSource$FinishedAt": null, "DataSource$StartedAt": null, "Evaluation$CreatedAt": "

        The time that the Evaluation was created. The time is expressed in epoch time.

        ", "Evaluation$LastUpdatedAt": "

        The time of the most recent edit to the Evaluation. The time is expressed in epoch time.

        ", "Evaluation$FinishedAt": null, "Evaluation$StartedAt": null, "GetBatchPredictionOutput$CreatedAt": "

        The time when the BatchPrediction was created. The time is expressed in epoch time.

        ", "GetBatchPredictionOutput$LastUpdatedAt": "

        The time of the most recent edit to BatchPrediction. The time is expressed in epoch time.

        ", "GetBatchPredictionOutput$FinishedAt": "

        The epoch time when Amazon Machine Learning marked the BatchPrediction as COMPLETED or FAILED. FinishedAt is only available when the BatchPrediction is in the COMPLETED or FAILED state.

        ", "GetBatchPredictionOutput$StartedAt": "

        The epoch time when Amazon Machine Learning marked the BatchPrediction as INPROGRESS. StartedAt isn't available if the BatchPrediction is in the PENDING state.

        ", "GetDataSourceOutput$CreatedAt": "

        The time that the DataSource was created. The time is expressed in epoch time.

        ", "GetDataSourceOutput$LastUpdatedAt": "

        The time of the most recent edit to the DataSource. The time is expressed in epoch time.

        ", "GetDataSourceOutput$FinishedAt": "

        The epoch time when Amazon Machine Learning marked the DataSource as COMPLETED or FAILED. FinishedAt is only available when the DataSource is in the COMPLETED or FAILED state.

        ", "GetDataSourceOutput$StartedAt": "

        The epoch time when Amazon Machine Learning marked the DataSource as INPROGRESS. StartedAt isn't available if the DataSource is in the PENDING state.

        ", "GetEvaluationOutput$CreatedAt": "

        The time that the Evaluation was created. The time is expressed in epoch time.

        ", "GetEvaluationOutput$LastUpdatedAt": "

        The time of the most recent edit to the Evaluation. The time is expressed in epoch time.

        ", "GetEvaluationOutput$FinishedAt": "

        The epoch time when Amazon Machine Learning marked the Evaluation as COMPLETED or FAILED. FinishedAt is only available when the Evaluation is in the COMPLETED or FAILED state.

        ", "GetEvaluationOutput$StartedAt": "

        The epoch time when Amazon Machine Learning marked the Evaluation as INPROGRESS. StartedAt isn't available if the Evaluation is in the PENDING state.

        ", "GetMLModelOutput$CreatedAt": "

        The time that the MLModel was created. The time is expressed in epoch time.

        ", "GetMLModelOutput$LastUpdatedAt": "

        The time of the most recent edit to the MLModel. The time is expressed in epoch time.

        ", "GetMLModelOutput$ScoreThresholdLastUpdatedAt": "

        The time of the most recent edit to the ScoreThreshold. The time is expressed in epoch time.

        ", "GetMLModelOutput$FinishedAt": "

        The epoch time when Amazon Machine Learning marked the MLModel as COMPLETED or FAILED. FinishedAt is only available when the MLModel is in the COMPLETED or FAILED state.

        ", "GetMLModelOutput$StartedAt": "

        The epoch time when Amazon Machine Learning marked the MLModel as INPROGRESS. StartedAt isn't available if the MLModel is in the PENDING state.

        ", "MLModel$CreatedAt": "

        The time that the MLModel was created. The time is expressed in epoch time.

        ", "MLModel$LastUpdatedAt": "

        The time of the most recent edit to the MLModel. The time is expressed in epoch time.

        ", "MLModel$ScoreThresholdLastUpdatedAt": "

        The time of the most recent edit to the ScoreThreshold. The time is expressed in epoch time.

        ", "MLModel$FinishedAt": null, "MLModel$StartedAt": null, "RealtimeEndpointInfo$CreatedAt": "

        The time that the request to create the real-time endpoint for the MLModel was received. The time is expressed in epoch time.

        " } }, "ErrorCode": { "base": null, "refs": { "IdempotentParameterMismatchException$code": null, "InternalServerException$code": null, "InvalidInputException$code": null, "LimitExceededException$code": null, "ResourceNotFoundException$code": null } }, "ErrorMessage": { "base": null, "refs": { "IdempotentParameterMismatchException$message": null, "InternalServerException$message": null, "InvalidInputException$message": null, "InvalidTagException$message": null, "LimitExceededException$message": null, "PredictorNotMountedException$message": null, "ResourceNotFoundException$message": null, "TagLimitExceededException$message": null } }, "Evaluation": { "base": "

        Represents the output of GetEvaluation operation.

        The content consists of the detailed metadata and data file information and the current status of the Evaluation.

        ", "refs": { "Evaluations$member": null } }, "EvaluationFilterVariable": { "base": "

        A list of the variables to use in searching or filtering Evaluation.

        • CreatedAt - Sets the search criteria to Evaluation creation date.
        • Status - Sets the search criteria to Evaluation status.
        • Name - Sets the search criteria to the contents of Evaluation Name.
        • IAMUser - Sets the search criteria to the user account that invoked an evaluation.
        • MLModelId - Sets the search criteria to the Predictor that was evaluated.
        • DataSourceId - Sets the search criteria to the DataSource used in evaluation.
        • DataUri - Sets the search criteria to the data file(s) used in evaluation. The URL can identify either a file or an Amazon Simple Storage Service (Amazon S3) bucket or directory.
        ", "refs": { "DescribeEvaluationsInput$FilterVariable": "

        Use one of the following variable to filter a list of Evaluation objects:

        • CreatedAt - Sets the search criteria to the Evaluation creation date.
        • Status - Sets the search criteria to the Evaluation status.
        • Name - Sets the search criteria to the contents of Evaluation Name.
        • IAMUser - Sets the search criteria to the user account that invoked an Evaluation.
        • MLModelId - Sets the search criteria to the MLModel that was evaluated.
        • DataSourceId - Sets the search criteria to the DataSource used in Evaluation.
        • DataUri - Sets the search criteria to the data file(s) used in Evaluation. The URL can identify either a file or an Amazon Simple Storage Solution (Amazon S3) bucket or directory.
        " } }, "Evaluations": { "base": null, "refs": { "DescribeEvaluationsOutput$Results": "

        A list of Evaluation that meet the search criteria.

        " } }, "GetBatchPredictionInput": { "base": null, "refs": { } }, "GetBatchPredictionOutput": { "base": "

        Represents the output of a GetBatchPrediction operation and describes a BatchPrediction.

        ", "refs": { } }, "GetDataSourceInput": { "base": null, "refs": { } }, "GetDataSourceOutput": { "base": "

        Represents the output of a GetDataSource operation and describes a DataSource.

        ", "refs": { } }, "GetEvaluationInput": { "base": null, "refs": { } }, "GetEvaluationOutput": { "base": "

        Represents the output of a GetEvaluation operation and describes an Evaluation.

        ", "refs": { } }, "GetMLModelInput": { "base": null, "refs": { } }, "GetMLModelOutput": { "base": "

        Represents the output of a GetMLModel operation, and provides detailed information about a MLModel.

        ", "refs": { } }, "IdempotentParameterMismatchException": { "base": "

        A second request to use or change an object was not allowed. This can result from retrying a request using a parameter that was not present in the original request.

        ", "refs": { } }, "IntegerType": { "base": "

        Integer type that is a 32-bit signed number.

        ", "refs": { "RealtimeEndpointInfo$PeakRequestsPerSecond": "

        The maximum processing rate for the real-time endpoint for MLModel, measured in incoming requests per second.

        " } }, "InternalServerException": { "base": "

        An error on the server occurred when trying to process a request.

        ", "refs": { } }, "InvalidInputException": { "base": "

        An error on the client occurred. Typically, the cause is an invalid input value.

        ", "refs": { } }, "InvalidTagException": { "base": null, "refs": { } }, "Label": { "base": null, "refs": { "Prediction$predictedLabel": "

        The prediction label for either a BINARY or MULTICLASS MLModel.

        ", "ScoreValuePerLabelMap$key": null } }, "LimitExceededException": { "base": "

        The subscriber exceeded the maximum number of operations. This exception can occur when listing objects such as DataSource.

        ", "refs": { } }, "LongType": { "base": "

        Long integer type that is a 64-bit signed number.

        ", "refs": { "BatchPrediction$ComputeTime": null, "BatchPrediction$TotalRecordCount": null, "BatchPrediction$InvalidRecordCount": null, "DataSource$DataSizeInBytes": "

        The total number of observations contained in the data files that the DataSource references.

        ", "DataSource$NumberOfFiles": "

        The number of data files referenced by the DataSource.

        ", "DataSource$ComputeTime": null, "Evaluation$ComputeTime": null, "GetBatchPredictionOutput$ComputeTime": "

        The approximate CPU time in milliseconds that Amazon Machine Learning spent processing the BatchPrediction, normalized and scaled on computation resources. ComputeTime is only available if the BatchPrediction is in the COMPLETED state.

        ", "GetBatchPredictionOutput$TotalRecordCount": "

        The number of total records that Amazon Machine Learning saw while processing the BatchPrediction.

        ", "GetBatchPredictionOutput$InvalidRecordCount": "

        The number of invalid records that Amazon Machine Learning saw while processing the BatchPrediction.

        ", "GetDataSourceOutput$DataSizeInBytes": "

        The total size of observations in the data files.

        ", "GetDataSourceOutput$NumberOfFiles": "

        The number of data files referenced by the DataSource.

        ", "GetDataSourceOutput$ComputeTime": "

        The approximate CPU time in milliseconds that Amazon Machine Learning spent processing the DataSource, normalized and scaled on computation resources. ComputeTime is only available if the DataSource is in the COMPLETED state and the ComputeStatistics is set to true.

        ", "GetEvaluationOutput$ComputeTime": "

        The approximate CPU time in milliseconds that Amazon Machine Learning spent processing the Evaluation, normalized and scaled on computation resources. ComputeTime is only available if the Evaluation is in the COMPLETED state.

        ", "GetMLModelOutput$SizeInBytes": null, "GetMLModelOutput$ComputeTime": "

        The approximate CPU time in milliseconds that Amazon Machine Learning spent processing the MLModel, normalized and scaled on computation resources. ComputeTime is only available if the MLModel is in the COMPLETED state.

        ", "MLModel$SizeInBytes": null, "MLModel$ComputeTime": null } }, "MLModel": { "base": "

        Represents the output of a GetMLModel operation.

        The content consists of the detailed metadata and the current status of the MLModel.

        ", "refs": { "MLModels$member": null } }, "MLModelFilterVariable": { "base": null, "refs": { "DescribeMLModelsInput$FilterVariable": "

        Use one of the following variables to filter a list of MLModel:

        • CreatedAt - Sets the search criteria to MLModel creation date.
        • Status - Sets the search criteria to MLModel status.
        • Name - Sets the search criteria to the contents of MLModel Name.
        • IAMUser - Sets the search criteria to the user account that invoked the MLModel creation.
        • TrainingDataSourceId - Sets the search criteria to the DataSource used to train one or more MLModel.
        • RealtimeEndpointStatus - Sets the search criteria to the MLModel real-time endpoint status.
        • MLModelType - Sets the search criteria to MLModel type: binary, regression, or multi-class.
        • Algorithm - Sets the search criteria to the algorithm that the MLModel uses.
        • TrainingDataURI - Sets the search criteria to the data file(s) used in training a MLModel. The URL can identify either a file or an Amazon Simple Storage Service (Amazon S3) bucket or directory.
        " } }, "MLModelName": { "base": null, "refs": { "GetMLModelOutput$Name": "

        A user-supplied name or description of the MLModel.

        ", "MLModel$Name": "

        A user-supplied name or description of the MLModel.

        " } }, "MLModelType": { "base": null, "refs": { "CreateMLModelInput$MLModelType": "

        The category of supervised learning that this MLModel will address. Choose from the following types:

        • Choose REGRESSION if the MLModel will be used to predict a numeric value.
        • Choose BINARY if the MLModel result has two possible values.
        • Choose MULTICLASS if the MLModel result has a limited number of values.

        For more information, see the Amazon Machine Learning Developer Guide.

        ", "GetMLModelOutput$MLModelType": "

        Identifies the MLModel category. The following are the available types:

        • REGRESSION -- Produces a numeric result. For example, \"What price should a house be listed at?\"
        • BINARY -- Produces one of two possible results. For example, \"Is this an e-commerce website?\"
        • MULTICLASS -- Produces one of several possible results. For example, \"Is this a HIGH, LOW or MEDIUM risk trade?\"
        ", "MLModel$MLModelType": "

        Identifies the MLModel category. The following are the available types:

        • REGRESSION - Produces a numeric result. For example, \"What price should a house be listed at?\"
        • BINARY - Produces one of two possible results. For example, \"Is this a child-friendly web site?\".
        • MULTICLASS - Produces one of several possible results. For example, \"Is this a HIGH-, LOW-, or MEDIUM-risk trade?\".
        " } }, "MLModels": { "base": null, "refs": { "DescribeMLModelsOutput$Results": "

        A list of MLModel that meet the search criteria.

        " } }, "Message": { "base": "

        Description of the most recent details about an object.

        ", "refs": { "BatchPrediction$Message": "

        A description of the most recent details about processing the batch prediction request.

        ", "DataSource$Message": "

        A description of the most recent details about creating the DataSource.

        ", "Evaluation$Message": "

        A description of the most recent details about evaluating the MLModel.

        ", "GetBatchPredictionOutput$Message": "

        A description of the most recent details about processing the batch prediction request.

        ", "GetDataSourceOutput$Message": "

        The user-supplied description of the most recent details about creating the DataSource.

        ", "GetEvaluationOutput$Message": "

        A description of the most recent details about evaluating the MLModel.

        ", "GetMLModelOutput$Message": "

        A description of the most recent details about accessing the MLModel.

        ", "MLModel$Message": "

        A description of the most recent details about accessing the MLModel.

        " } }, "PageLimit": { "base": null, "refs": { "DescribeBatchPredictionsInput$Limit": "

        The number of pages of information to include in the result. The range of acceptable values is 1 through 100. The default value is 100.

        ", "DescribeDataSourcesInput$Limit": "

        The maximum number of DataSource to include in the result.

        ", "DescribeEvaluationsInput$Limit": "

        The maximum number of Evaluation to include in the result.

        ", "DescribeMLModelsInput$Limit": "

        The number of pages of information to include in the result. The range of acceptable values is 1 through 100. The default value is 100.

        " } }, "PerformanceMetrics": { "base": "

        Measurements of how well the MLModel performed on known observations. One of the following metrics is returned, based on the type of the MLModel:

        • BinaryAUC: The binary MLModel uses the Area Under the Curve (AUC) technique to measure performance.

        • RegressionRMSE: The regression MLModel uses the Root Mean Square Error (RMSE) technique to measure performance. RMSE measures the difference between predicted and actual values for a single variable.

        • MulticlassAvgFScore: The multiclass MLModel uses the F1 score technique to measure performance.

        For more information about performance metrics, please see the Amazon Machine Learning Developer Guide.

        ", "refs": { "Evaluation$PerformanceMetrics": "

        Measurements of how well the MLModel performed, using observations referenced by the DataSource. One of the following metrics is returned, based on the type of the MLModel:

        • BinaryAUC: A binary MLModel uses the Area Under the Curve (AUC) technique to measure performance.

        • RegressionRMSE: A regression MLModel uses the Root Mean Square Error (RMSE) technique to measure performance. RMSE measures the difference between predicted and actual values for a single variable.

        • MulticlassAvgFScore: A multiclass MLModel uses the F1 score technique to measure performance.

        For more information about performance metrics, please see the Amazon Machine Learning Developer Guide.

        ", "GetEvaluationOutput$PerformanceMetrics": "

        Measurements of how well the MLModel performed using observations referenced by the DataSource. One of the following metric is returned based on the type of the MLModel:

        • BinaryAUC: A binary MLModel uses the Area Under the Curve (AUC) technique to measure performance.

        • RegressionRMSE: A regression MLModel uses the Root Mean Square Error (RMSE) technique to measure performance. RMSE measures the difference between predicted and actual values for a single variable.

        • MulticlassAvgFScore: A multiclass MLModel uses the F1 score technique to measure performance.

        For more information about performance metrics, please see the Amazon Machine Learning Developer Guide.

        " } }, "PerformanceMetricsProperties": { "base": null, "refs": { "PerformanceMetrics$Properties": null } }, "PerformanceMetricsPropertyKey": { "base": null, "refs": { "PerformanceMetricsProperties$key": null } }, "PerformanceMetricsPropertyValue": { "base": null, "refs": { "PerformanceMetricsProperties$value": null } }, "PredictInput": { "base": null, "refs": { } }, "PredictOutput": { "base": null, "refs": { } }, "Prediction": { "base": "

        The output from a Predict operation:

        • Details - Contains the following attributes: DetailsAttributes.PREDICTIVE_MODEL_TYPE - REGRESSION | BINARY | MULTICLASS DetailsAttributes.ALGORITHM - SGD

        • PredictedLabel - Present for either a BINARY or MULTICLASS MLModel request.

        • PredictedScores - Contains the raw classification score corresponding to each label.

        • PredictedValue - Present for a REGRESSION MLModel request.

        ", "refs": { "PredictOutput$Prediction": null } }, "PredictorNotMountedException": { "base": "

        The exception is thrown when a predict request is made to an unmounted MLModel.

        ", "refs": { } }, "PresignedS3Url": { "base": null, "refs": { "GetBatchPredictionOutput$LogUri": "

        A link to the file that contains logs of the CreateBatchPrediction operation.

        ", "GetDataSourceOutput$LogUri": "

        A link to the file containing logs of CreateDataSourceFrom* operations.

        ", "GetEvaluationOutput$LogUri": "

        A link to the file that contains logs of the CreateEvaluation operation.

        ", "GetMLModelOutput$LogUri": "

        A link to the file that contains logs of the CreateMLModel operation.

        " } }, "RDSDataSpec": { "base": "

        The data specification of an Amazon Relational Database Service (Amazon RDS) DataSource.

        ", "refs": { "CreateDataSourceFromRDSInput$RDSData": "

        The data specification of an Amazon RDS DataSource:

        • DatabaseInformation -

          • DatabaseName - The name of the Amazon RDS database.
          • InstanceIdentifier - A unique identifier for the Amazon RDS database instance.

        • DatabaseCredentials - AWS Identity and Access Management (IAM) credentials that are used to connect to the Amazon RDS database.

        • ResourceRole - A role (DataPipelineDefaultResourceRole) assumed by an EC2 instance to carry out the copy task from Amazon RDS to Amazon Simple Storage Service (Amazon S3). For more information, see Role templates for data pipelines.

        • ServiceRole - A role (DataPipelineDefaultRole) assumed by the AWS Data Pipeline service to monitor the progress of the copy task from Amazon RDS to Amazon S3. For more information, see Role templates for data pipelines.

        • SecurityInfo - The security information to use to access an RDS DB instance. You need to set up appropriate ingress rules for the security entity IDs provided to allow access to the Amazon RDS instance. Specify a [SubnetId, SecurityGroupIds] pair for a VPC-based RDS DB instance.

        • SelectSqlQuery - A query that is used to retrieve the observation data for the Datasource.

        • S3StagingLocation - The Amazon S3 location for staging Amazon RDS data. The data retrieved from Amazon RDS using SelectSqlQuery is stored in this location.

        • DataSchemaUri - The Amazon S3 location of the DataSchema.

        • DataSchema - A JSON string representing the schema. This is not required if DataSchemaUri is specified.

        • DataRearrangement - A JSON string that represents the splitting and rearrangement requirements for the Datasource.


          Sample - \"{\\\"splitting\\\":{\\\"percentBegin\\\":10,\\\"percentEnd\\\":60}}\"

        " } }, "RDSDatabase": { "base": "

        The database details of an Amazon RDS database.

        ", "refs": { "RDSDataSpec$DatabaseInformation": "

        Describes the DatabaseName and InstanceIdentifier of an Amazon RDS database.

        ", "RDSMetadata$Database": "

        The database details required to connect to an Amazon RDS.

        " } }, "RDSDatabaseCredentials": { "base": "

        The database credentials to connect to a database on an RDS DB instance.

        ", "refs": { "RDSDataSpec$DatabaseCredentials": "

        The AWS Identity and Access Management (IAM) credentials that are used connect to the Amazon RDS database.

        " } }, "RDSDatabaseName": { "base": "

        The name of a database hosted on an RDS DB instance.

        ", "refs": { "RDSDatabase$DatabaseName": null } }, "RDSDatabasePassword": { "base": "

        The password to be used by Amazon ML to connect to a database on an RDS DB instance. The password should have sufficient permissions to execute the RDSSelectQuery query.

        ", "refs": { "RDSDatabaseCredentials$Password": null } }, "RDSDatabaseUsername": { "base": "

        The username to be used by Amazon ML to connect to database on an Amazon RDS instance. The username should have sufficient permissions to execute an RDSSelectSqlQuery query.

        ", "refs": { "RDSDatabaseCredentials$Username": null, "RDSMetadata$DatabaseUserName": null } }, "RDSInstanceIdentifier": { "base": "Identifier of RDS DB Instances.", "refs": { "RDSDatabase$InstanceIdentifier": "

        The ID of an RDS DB instance.

        " } }, "RDSMetadata": { "base": "

        The datasource details that are specific to Amazon RDS.

        ", "refs": { "DataSource$RDSMetadata": null, "GetDataSourceOutput$RDSMetadata": null } }, "RDSSelectSqlQuery": { "base": "

        The SQL query to be executed against the Amazon RDS database. The SQL query should be valid for the Amazon RDS type being used.

        ", "refs": { "RDSDataSpec$SelectSqlQuery": "

        The query that is used to retrieve the observation data for the DataSource.

        ", "RDSMetadata$SelectSqlQuery": "

        The SQL query that is supplied during CreateDataSourceFromRDS. Returns only if Verbose is true in GetDataSourceInput.

        " } }, "RealtimeEndpointInfo": { "base": "

        Describes the real-time endpoint information for an MLModel.

        ", "refs": { "CreateRealtimeEndpointOutput$RealtimeEndpointInfo": "

        The endpoint information of the MLModel

        ", "DeleteRealtimeEndpointOutput$RealtimeEndpointInfo": "

        The endpoint information of the MLModel

        ", "GetMLModelOutput$EndpointInfo": "

        The current endpoint of the MLModel

        ", "MLModel$EndpointInfo": "

        The current endpoint of the MLModel.

        " } }, "RealtimeEndpointStatus": { "base": null, "refs": { "RealtimeEndpointInfo$EndpointStatus": "

        The current status of the real-time endpoint for the MLModel. This element can have one of the following values:

        • NONE - Endpoint does not exist or was previously deleted.
        • READY - Endpoint is ready to be used for real-time predictions.
        • UPDATING - Updating/creating the endpoint.
        " } }, "Recipe": { "base": null, "refs": { "CreateMLModelInput$Recipe": "

        The data recipe for creating the MLModel. You must specify either the recipe or its URI. If you don't specify a recipe or its URI, Amazon ML creates a default.

        ", "GetMLModelOutput$Recipe": "

        The recipe to use when training the MLModel. The Recipe provides detailed information about the observation data to use during training, and manipulations to perform on the observation data during training.

        Note

        This parameter is provided as part of the verbose format.

        " } }, "Record": { "base": "

        A map of variable name-value pairs that represent an observation.

        ", "refs": { "PredictInput$Record": null } }, "RedshiftClusterIdentifier": { "base": "

        The ID of an Amazon Redshift cluster.

        ", "refs": { "RedshiftDatabase$ClusterIdentifier": null } }, "RedshiftDataSpec": { "base": "

        Describes the data specification of an Amazon Redshift DataSource.

        ", "refs": { "CreateDataSourceFromRedshiftInput$DataSpec": "

        The data specification of an Amazon Redshift DataSource:

        • DatabaseInformation -

          • DatabaseName - The name of the Amazon Redshift database.
          • ClusterIdentifier - The unique ID for the Amazon Redshift cluster.

        • DatabaseCredentials - The AWS Identity and Access Management (IAM) credentials that are used to connect to the Amazon Redshift database.

        • SelectSqlQuery - The query that is used to retrieve the observation data for the Datasource.

        • S3StagingLocation - The Amazon Simple Storage Service (Amazon S3) location for staging Amazon Redshift data. The data retrieved from Amazon Redshift using the SelectSqlQuery query is stored in this location.

        • DataSchemaUri - The Amazon S3 location of the DataSchema.

        • DataSchema - A JSON string representing the schema. This is not required if DataSchemaUri is specified.

        • DataRearrangement - A JSON string that represents the splitting and rearrangement requirements for the DataSource.

          Sample - \"{\\\"splitting\\\":{\\\"percentBegin\\\":10,\\\"percentEnd\\\":60}}\"

        " } }, "RedshiftDatabase": { "base": "

        Describes the database details required to connect to an Amazon Redshift database.

        ", "refs": { "RedshiftDataSpec$DatabaseInformation": "

        Describes the DatabaseName and ClusterIdentifier for an Amazon Redshift DataSource.

        ", "RedshiftMetadata$RedshiftDatabase": null } }, "RedshiftDatabaseCredentials": { "base": "

        Describes the database credentials for connecting to a database on an Amazon Redshift cluster.

        ", "refs": { "RedshiftDataSpec$DatabaseCredentials": "

        Describes AWS Identity and Access Management (IAM) credentials that are used connect to the Amazon Redshift database.

        " } }, "RedshiftDatabaseName": { "base": "

        The name of a database hosted on an Amazon Redshift cluster.

        ", "refs": { "RedshiftDatabase$DatabaseName": null } }, "RedshiftDatabasePassword": { "base": "

        A password to be used by Amazon ML to connect to a database on an Amazon Redshift cluster. The password should have sufficient permissions to execute a RedshiftSelectSqlQuery query. The password should be valid for an Amazon Redshift USER.

        ", "refs": { "RedshiftDatabaseCredentials$Password": null } }, "RedshiftDatabaseUsername": { "base": "

        A username to be used by Amazon Machine Learning (Amazon ML)to connect to a database on an Amazon Redshift cluster. The username should have sufficient permissions to execute the RedshiftSelectSqlQuery query. The username should be valid for an Amazon Redshift USER.

        ", "refs": { "RedshiftDatabaseCredentials$Username": null, "RedshiftMetadata$DatabaseUserName": null } }, "RedshiftMetadata": { "base": "

        Describes the DataSource details specific to Amazon Redshift.

        ", "refs": { "DataSource$RedshiftMetadata": null, "GetDataSourceOutput$RedshiftMetadata": null } }, "RedshiftSelectSqlQuery": { "base": "

        Describes the SQL query to execute on the Amazon Redshift database. The SQL query should be valid for an Amazon Redshift SELECT.

        ", "refs": { "RedshiftDataSpec$SelectSqlQuery": "

        Describes the SQL Query to execute on an Amazon Redshift database for an Amazon Redshift DataSource.

        ", "RedshiftMetadata$SelectSqlQuery": "

        The SQL query that is specified during CreateDataSourceFromRedshift. Returns only if Verbose is true in GetDataSourceInput.

        " } }, "ResourceNotFoundException": { "base": "

        A specified resource cannot be located.

        ", "refs": { } }, "RoleARN": { "base": "

        The Amazon Resource Name (ARN) of an AWS IAM Role, such as the following: arn:aws:iam::account:role/rolename.

        ", "refs": { "CreateDataSourceFromRDSInput$RoleARN": "

        The role that Amazon ML assumes on behalf of the user to create and activate a data pipeline in the user's account and copy data using the SelectSqlQuery query from Amazon RDS to Amazon S3.

        ", "CreateDataSourceFromRedshiftInput$RoleARN": "

        A fully specified role Amazon Resource Name (ARN). Amazon ML assumes the role on behalf of the user to create the following:

        • A security group to allow Amazon ML to execute the SelectSqlQuery query on an Amazon Redshift cluster

        • An Amazon S3 bucket policy to grant Amazon ML read/write permissions on the S3StagingLocation

        ", "DataSource$RoleARN": null, "GetDataSourceOutput$RoleARN": null } }, "S3DataSpec": { "base": "

        Describes the data specification of a DataSource.

        ", "refs": { "CreateDataSourceFromS3Input$DataSpec": "

        The data specification of a DataSource:

        • DataLocationS3 - The Amazon S3 location of the observation data.

        • DataSchemaLocationS3 - The Amazon S3 location of the DataSchema.

        • DataSchema - A JSON string representing the schema. This is not required if DataSchemaUri is specified.

        • DataRearrangement - A JSON string that represents the splitting and rearrangement requirements for the Datasource.

          Sample - \"{\\\"splitting\\\":{\\\"percentBegin\\\":10,\\\"percentEnd\\\":60}}\"

        " } }, "S3Url": { "base": "

        A reference to a file or bucket on Amazon Simple Storage Service (Amazon S3).

        ", "refs": { "BatchPrediction$InputDataLocationS3": "

        The location of the data file or directory in Amazon Simple Storage Service (Amazon S3).

        ", "BatchPrediction$OutputUri": "

        The location of an Amazon S3 bucket or directory to receive the operation results. The following substrings are not allowed in the s3 key portion of the outputURI field: ':', '//', '/./', '/../'.

        ", "CreateBatchPredictionInput$OutputUri": "

        The location of an Amazon Simple Storage Service (Amazon S3) bucket or directory to store the batch prediction results. The following substrings are not allowed in the s3 key portion of the outputURI field: ':', '//', '/./', '/../'.

        Amazon ML needs permissions to store and retrieve the logs on your behalf. For information about how to set permissions, see the Amazon Machine Learning Developer Guide.

        ", "CreateMLModelInput$RecipeUri": "

        The Amazon Simple Storage Service (Amazon S3) location and file name that contains the MLModel recipe. You must specify either the recipe or its URI. If you don't specify a recipe or its URI, Amazon ML creates a default.

        ", "DataSource$DataLocationS3": "

        The location and name of the data in Amazon Simple Storage Service (Amazon S3) that is used by a DataSource.

        ", "Evaluation$InputDataLocationS3": "

        The location and name of the data in Amazon Simple Storage Server (Amazon S3) that is used in the evaluation.

        ", "GetBatchPredictionOutput$InputDataLocationS3": "

        The location of the data file or directory in Amazon Simple Storage Service (Amazon S3).

        ", "GetBatchPredictionOutput$OutputUri": "

        The location of an Amazon S3 bucket or directory to receive the operation results.

        ", "GetDataSourceOutput$DataLocationS3": "

        The location of the data file or directory in Amazon Simple Storage Service (Amazon S3).

        ", "GetEvaluationOutput$InputDataLocationS3": "

        The location of the data file or directory in Amazon Simple Storage Service (Amazon S3).

        ", "GetMLModelOutput$InputDataLocationS3": "

        The location of the data file or directory in Amazon Simple Storage Service (Amazon S3).

        ", "MLModel$InputDataLocationS3": "

        The location of the data file or directory in Amazon Simple Storage Service (Amazon S3).

        ", "RDSDataSpec$S3StagingLocation": "

        The Amazon S3 location for staging Amazon RDS data. The data retrieved from Amazon RDS using SelectSqlQuery is stored in this location.

        ", "RDSDataSpec$DataSchemaUri": "

        The Amazon S3 location of the DataSchema.

        ", "RedshiftDataSpec$S3StagingLocation": "

        Describes an Amazon S3 location to store the result set of the SelectSqlQuery query.

        ", "RedshiftDataSpec$DataSchemaUri": "

        Describes the schema location for an Amazon Redshift DataSource.

        ", "S3DataSpec$DataLocationS3": "

        The location of the data file(s) used by a DataSource. The URI specifies a data file or an Amazon Simple Storage Service (Amazon S3) directory or bucket containing data files.

        ", "S3DataSpec$DataSchemaLocationS3": "

        Describes the schema location in Amazon S3. You must provide either the DataSchema or the DataSchemaLocationS3.

        " } }, "ScoreThreshold": { "base": null, "refs": { "GetMLModelOutput$ScoreThreshold": "

        The scoring threshold is used in binary classification MLModel models. It marks the boundary between a positive prediction and a negative prediction.

        Output values greater than or equal to the threshold receive a positive result from the MLModel, such as true. Output values less than the threshold receive a negative response from the MLModel, such as false.

        ", "MLModel$ScoreThreshold": null, "UpdateMLModelInput$ScoreThreshold": "

        The ScoreThreshold used in binary classification MLModel that marks the boundary between a positive prediction and a negative prediction.

        Output values greater than or equal to the ScoreThreshold receive a positive result from the MLModel, such as true. Output values less than the ScoreThreshold receive a negative response from the MLModel, such as false.

        " } }, "ScoreValue": { "base": null, "refs": { "ScoreValuePerLabelMap$value": null } }, "ScoreValuePerLabelMap": { "base": "Provides the raw classification score corresponding to each label.", "refs": { "Prediction$predictedScores": null } }, "SortOrder": { "base": "

        The sort order specified in a listing condition. Possible values include the following:

        • asc - Present the information in ascending order (from A-Z).
        • dsc - Present the information in descending order (from Z-A).
        ", "refs": { "DescribeBatchPredictionsInput$SortOrder": "

        A two-value parameter that determines the sequence of the resulting list of MLModels.

        • asc - Arranges the list in ascending order (A-Z, 0-9).
        • dsc - Arranges the list in descending order (Z-A, 9-0).

        Results are sorted by FilterVariable.

        ", "DescribeDataSourcesInput$SortOrder": "

        A two-value parameter that determines the sequence of the resulting list of DataSource.

        • asc - Arranges the list in ascending order (A-Z, 0-9).
        • dsc - Arranges the list in descending order (Z-A, 9-0).

        Results are sorted by FilterVariable.

        ", "DescribeEvaluationsInput$SortOrder": "

        A two-value parameter that determines the sequence of the resulting list of Evaluation.

        • asc - Arranges the list in ascending order (A-Z, 0-9).
        • dsc - Arranges the list in descending order (Z-A, 9-0).

        Results are sorted by FilterVariable.

        ", "DescribeMLModelsInput$SortOrder": "

        A two-value parameter that determines the sequence of the resulting list of MLModel.

        • asc - Arranges the list in ascending order (A-Z, 0-9).
        • dsc - Arranges the list in descending order (Z-A, 9-0).

        Results are sorted by FilterVariable.

        " } }, "StringType": { "base": "

        String type.

        ", "refs": { "DescribeBatchPredictionsInput$NextToken": "

        An ID of the page in the paginated results.

        ", "DescribeBatchPredictionsOutput$NextToken": "

        The ID of the next page in the paginated results that indicates at least one more page follows.

        ", "DescribeDataSourcesInput$NextToken": "

        The ID of the page in the paginated results.

        ", "DescribeDataSourcesOutput$NextToken": "

        An ID of the next page in the paginated results that indicates at least one more page follows.

        ", "DescribeEvaluationsInput$NextToken": "

        The ID of the page in the paginated results.

        ", "DescribeEvaluationsOutput$NextToken": "

        The ID of the next page in the paginated results that indicates at least one more page follows.

        ", "DescribeMLModelsInput$NextToken": "

        The ID of the page in the paginated results.

        ", "DescribeMLModelsOutput$NextToken": "

        The ID of the next page in the paginated results that indicates at least one more page follows.

        ", "TrainingParameters$key": null, "TrainingParameters$value": null } }, "Tag": { "base": "

        A custom key-value pair associated with an ML object, such as an ML model.

        ", "refs": { "TagList$member": null } }, "TagKey": { "base": null, "refs": { "Tag$Key": "

        A unique identifier for the tag. Valid characters include Unicode letters, digits, white space, _, ., /, =, +, -, %, and @.

        ", "TagKeyList$member": null } }, "TagKeyList": { "base": null, "refs": { "DeleteTagsInput$TagKeys": "

        One or more tags to delete.

        " } }, "TagLimitExceededException": { "base": null, "refs": { } }, "TagList": { "base": null, "refs": { "AddTagsInput$Tags": "

        The key-value pairs to use to create tags. If you specify a key without specifying a value, Amazon ML creates a tag with the specified key and a value of null.

        ", "DescribeTagsOutput$Tags": "

        A list of tags associated with the ML object.

        " } }, "TagValue": { "base": null, "refs": { "Tag$Value": "

        An optional string, typically used to describe or define the tag. Valid characters include Unicode letters, digits, white space, _, ., /, =, +, -, %, and @.

        " } }, "TaggableResourceType": { "base": null, "refs": { "AddTagsInput$ResourceType": "

        The type of the ML object to tag.

        ", "AddTagsOutput$ResourceType": "

        The type of the ML object that was tagged.

        ", "DeleteTagsInput$ResourceType": "

        The type of the tagged ML object.

        ", "DeleteTagsOutput$ResourceType": "

        The type of the ML object from which tags were deleted.

        ", "DescribeTagsInput$ResourceType": "

        The type of the ML object.

        ", "DescribeTagsOutput$ResourceType": "

        The type of the tagged ML object.

        " } }, "TrainingParameters": { "base": null, "refs": { "CreateMLModelInput$Parameters": "

        A list of the training parameters in the MLModel. The list is implemented as a map of key-value pairs.

        The following is the current set of training parameters:

        • sgd.maxMLModelSizeInBytes - The maximum allowed size of the model. Depending on the input data, the size of the model might affect its performance.

          The value is an integer that ranges from 100000 to 2147483648. The default value is 33554432.

        • sgd.maxPasses - The number of times that the training process traverses the observations to build the MLModel. The value is an integer that ranges from 1 to 10000. The default value is 10.

        • sgd.shuffleType - Whether Amazon ML shuffles the training data. Shuffling the data improves a model's ability to find the optimal solution for a variety of data types. The valid values are auto and none. The default value is none. We strongly recommend that you shuffle your data.

        • sgd.l1RegularizationAmount - The coefficient regularization L1 norm. It controls overfitting the data by penalizing large coefficients. This tends to drive coefficients to zero, resulting in a sparse feature set. If you use this parameter, start by specifying a small value, such as 1.0E-08.

          The value is a double that ranges from 0 to MAX_DOUBLE. The default is to not use L1 normalization. This parameter can't be used when L2 is specified. Use this parameter sparingly.

        • sgd.l2RegularizationAmount - The coefficient regularization L2 norm. It controls overfitting the data by penalizing large coefficients. This tends to drive coefficients to small, nonzero values. If you use this parameter, start by specifying a small value, such as 1.0E-08.

          The value is a double that ranges from 0 to MAX_DOUBLE. The default is to not use L2 normalization. This parameter can't be used when L1 is specified. Use this parameter sparingly.

        ", "GetMLModelOutput$TrainingParameters": "

        A list of the training parameters in the MLModel. The list is implemented as a map of key-value pairs.

        The following is the current set of training parameters:

        • sgd.maxMLModelSizeInBytes - The maximum allowed size of the model. Depending on the input data, the size of the model might affect its performance.

          The value is an integer that ranges from 100000 to 2147483648. The default value is 33554432.

        • sgd.maxPasses - The number of times that the training process traverses the observations to build the MLModel. The value is an integer that ranges from 1 to 10000. The default value is 10.

        • sgd.shuffleType - Whether Amazon ML shuffles the training data. Shuffling data improves a model's ability to find the optimal solution for a variety of data types. The valid values are auto and none. The default value is none. We strongly recommend that you shuffle your data.

        • sgd.l1RegularizationAmount - The coefficient regularization L1 norm. It controls overfitting the data by penalizing large coefficients. This tends to drive coefficients to zero, resulting in a sparse feature set. If you use this parameter, start by specifying a small value, such as 1.0E-08.

          The value is a double that ranges from 0 to MAX_DOUBLE. The default is to not use L1 normalization. This parameter can't be used when L2 is specified. Use this parameter sparingly.

        • sgd.l2RegularizationAmount - The coefficient regularization L2 norm. It controls overfitting the data by penalizing large coefficients. This tends to drive coefficients to small, nonzero values. If you use this parameter, start by specifying a small value, such as 1.0E-08.

          The value is a double that ranges from 0 to MAX_DOUBLE. The default is to not use L2 normalization. This parameter can't be used when L1 is specified. Use this parameter sparingly.

        ", "MLModel$TrainingParameters": "

        A list of the training parameters in the MLModel. The list is implemented as a map of key-value pairs.

        The following is the current set of training parameters:

        • sgd.maxMLModelSizeInBytes - The maximum allowed size of the model. Depending on the input data, the size of the model might affect its performance.

          The value is an integer that ranges from 100000 to 2147483648. The default value is 33554432.

        • sgd.maxPasses - The number of times that the training process traverses the observations to build the MLModel. The value is an integer that ranges from 1 to 10000. The default value is 10.

        • sgd.shuffleType - Whether Amazon ML shuffles the training data. Shuffling the data improves a model's ability to find the optimal solution for a variety of data types. The valid values are auto and none. The default value is none.

        • sgd.l1RegularizationAmount - The coefficient regularization L1 norm, which controls overfitting the data by penalizing large coefficients. This parameter tends to drive coefficients to zero, resulting in sparse feature set. If you use this parameter, start by specifying a small value, such as 1.0E-08.

          The value is a double that ranges from 0 to MAX_DOUBLE. The default is to not use L1 normalization. This parameter can't be used when L2 is specified. Use this parameter sparingly.

        • sgd.l2RegularizationAmount - The coefficient regularization L2 norm, which controls overfitting the data by penalizing large coefficients. This tends to drive coefficients to small, nonzero values. If you use this parameter, start by specifying a small value, such as 1.0E-08.

          The value is a double that ranges from 0 to MAX_DOUBLE. The default is to not use L2 normalization. This parameter can't be used when L1 is specified. Use this parameter sparingly.

        " } }, "UpdateBatchPredictionInput": { "base": null, "refs": { } }, "UpdateBatchPredictionOutput": { "base": "

        Represents the output of an UpdateBatchPrediction operation.

        You can see the updated content by using the GetBatchPrediction operation.

        ", "refs": { } }, "UpdateDataSourceInput": { "base": null, "refs": { } }, "UpdateDataSourceOutput": { "base": "

        Represents the output of an UpdateDataSource operation.

        You can see the updated content by using the GetBatchPrediction operation.

        ", "refs": { } }, "UpdateEvaluationInput": { "base": null, "refs": { } }, "UpdateEvaluationOutput": { "base": "

        Represents the output of an UpdateEvaluation operation.

        You can see the updated content by using the GetEvaluation operation.

        ", "refs": { } }, "UpdateMLModelInput": { "base": null, "refs": { } }, "UpdateMLModelOutput": { "base": "

        Represents the output of an UpdateMLModel operation.

        You can see the updated content by using the GetMLModel operation.

        ", "refs": { } }, "VariableName": { "base": "

        The name of a variable. Currently it's used to specify the name of the target value, label, weight, and tags.

        ", "refs": { "Record$key": null } }, "VariableValue": { "base": "

        The value of a variable. Currently it's used to specify values of the target value, weights, and tag variables and for filtering variable values.

        ", "refs": { "Record$value": null } }, "Verbose": { "base": "

        Specifies whether a describe operation should return exhaustive or abbreviated information.

        ", "refs": { "GetDataSourceInput$Verbose": "

        Specifies whether the GetDataSource operation should return DataSourceSchema.

        If true, DataSourceSchema is returned.

        If false, DataSourceSchema is not returned.

        ", "GetMLModelInput$Verbose": "

        Specifies whether the GetMLModel operation should return Recipe.

        If true, Recipe is returned.

        If false, Recipe is not returned.

        " } }, "VipURL": { "base": null, "refs": { "PredictInput$PredictEndpoint": null, "RealtimeEndpointInfo$EndpointUrl": "

        The URI that specifies where to send real-time prediction requests for the MLModel.

        Note

        The application must wait until the real-time endpoint is ready before using this URI.

        " } }, "floatLabel": { "base": null, "refs": { "Prediction$predictedValue": "The prediction value for REGRESSION MLModel." } } } } aws-sdk-go-1.4.22/models/apis/machinelearning/2014-12-12/examples-1.json000066400000000000000000000000521300374646400250200ustar00rootroot00000000000000{ "version":"1.0", "examples":{ } } aws-sdk-go-1.4.22/models/apis/machinelearning/2014-12-12/paginators-1.json000066400000000000000000000012471300374646400253600ustar00rootroot00000000000000{ "pagination": { "DescribeBatchPredictions": { "limit_key": "Limit", "output_token": "NextToken", "input_token": "NextToken", "result_key": "Results" }, "DescribeDataSources": { "limit_key": "Limit", "output_token": "NextToken", "input_token": "NextToken", "result_key": "Results" }, "DescribeEvaluations": { "limit_key": "Limit", "output_token": "NextToken", "input_token": "NextToken", "result_key": "Results" }, "DescribeMLModels": { "limit_key": "Limit", "output_token": "NextToken", "input_token": "NextToken", "result_key": "Results" } } } aws-sdk-go-1.4.22/models/apis/machinelearning/2014-12-12/waiters-2.json000066400000000000000000000035561300374646400246750ustar00rootroot00000000000000{ "version": 2, "waiters": { "DataSourceAvailable": { "delay": 30, "operation": "DescribeDataSources", "maxAttempts": 60, "acceptors": [ { "expected": "COMPLETED", "matcher": "pathAll", "state": "success", "argument": "Results[].Status" }, { "expected": "FAILED", "matcher": "pathAny", "state": "failure", "argument": "Results[].Status" } ] }, "MLModelAvailable": { "delay": 30, "operation": "DescribeMLModels", "maxAttempts": 60, "acceptors": [ { "expected": "COMPLETED", "matcher": "pathAll", "state": "success", "argument": "Results[].Status" }, { "expected": "FAILED", "matcher": "pathAny", "state": "failure", "argument": "Results[].Status" } ] }, "EvaluationAvailable": { "delay": 30, "operation": "DescribeEvaluations", "maxAttempts": 60, "acceptors": [ { "expected": "COMPLETED", "matcher": "pathAll", "state": "success", "argument": "Results[].Status" }, { "expected": "FAILED", "matcher": "pathAny", "state": "failure", "argument": "Results[].Status" } ] }, "BatchPredictionAvailable": { "delay": 30, "operation": "DescribeBatchPredictions", "maxAttempts": 60, "acceptors": [ { "expected": "COMPLETED", "matcher": "pathAll", "state": "success", "argument": "Results[].Status" }, { "expected": "FAILED", "matcher": "pathAny", "state": "failure", "argument": "Results[].Status" } ] } } } aws-sdk-go-1.4.22/models/apis/marketplacecommerceanalytics/000077500000000000000000000000001300374646400237155ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/marketplacecommerceanalytics/2015-07-01/000077500000000000000000000000001300374646400247465ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/marketplacecommerceanalytics/2015-07-01/api-2.json000066400000000000000000000112621300374646400265530ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-07-01", "endpointPrefix":"marketplacecommerceanalytics", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"AWS Marketplace Commerce Analytics", "signatureVersion":"v4", "signingName":"marketplacecommerceanalytics", "targetPrefix":"MarketplaceCommerceAnalytics20150701" }, "operations":{ "GenerateDataSet":{ "name":"GenerateDataSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GenerateDataSetRequest"}, "output":{"shape":"GenerateDataSetResult"}, "errors":[ {"shape":"MarketplaceCommerceAnalyticsException"} ] }, "StartSupportDataExport":{ "name":"StartSupportDataExport", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartSupportDataExportRequest"}, "output":{"shape":"StartSupportDataExportResult"}, "errors":[ {"shape":"MarketplaceCommerceAnalyticsException"} ] } }, "shapes":{ "CustomerDefinedValues":{ "type":"map", "key":{"shape":"OptionalKey"}, "value":{"shape":"OptionalValue"}, "max":5, "min":1 }, "DataSetPublicationDate":{"type":"timestamp"}, "DataSetRequestId":{"type":"string"}, "DataSetType":{ "type":"string", "enum":[ "customer_subscriber_hourly_monthly_subscriptions", "customer_subscriber_annual_subscriptions", "daily_business_usage_by_instance_type", "daily_business_fees", "daily_business_free_trial_conversions", "daily_business_new_instances", "daily_business_new_product_subscribers", "daily_business_canceled_product_subscribers", "monthly_revenue_billing_and_revenue_data", "monthly_revenue_annual_subscriptions", "disbursed_amount_by_product", "disbursed_amount_by_product_with_uncollected_funds", "disbursed_amount_by_customer_geo", "disbursed_amount_by_age_of_uncollected_funds", "disbursed_amount_by_age_of_disbursed_funds", "customer_profile_by_industry", "customer_profile_by_revenue", "customer_profile_by_geography" ], "max":255, "min":1 }, "DestinationS3BucketName":{ "type":"string", "min":1 }, "DestinationS3Prefix":{"type":"string"}, "ExceptionMessage":{"type":"string"}, "FromDate":{"type":"timestamp"}, "GenerateDataSetRequest":{ "type":"structure", "required":[ "dataSetType", "dataSetPublicationDate", "roleNameArn", "destinationS3BucketName", "snsTopicArn" ], "members":{ "dataSetType":{"shape":"DataSetType"}, "dataSetPublicationDate":{"shape":"DataSetPublicationDate"}, "roleNameArn":{"shape":"RoleNameArn"}, "destinationS3BucketName":{"shape":"DestinationS3BucketName"}, "destinationS3Prefix":{"shape":"DestinationS3Prefix"}, "snsTopicArn":{"shape":"SnsTopicArn"}, "customerDefinedValues":{"shape":"CustomerDefinedValues"} } }, "GenerateDataSetResult":{ "type":"structure", "members":{ "dataSetRequestId":{"shape":"DataSetRequestId"} } }, "MarketplaceCommerceAnalyticsException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true, "fault":true }, "OptionalKey":{ "type":"string", "max":255, "min":1 }, "OptionalValue":{ "type":"string", "max":255, "min":1 }, "RoleNameArn":{ "type":"string", "min":1 }, "SnsTopicArn":{ "type":"string", "min":1 }, "StartSupportDataExportRequest":{ "type":"structure", "required":[ "dataSetType", "fromDate", "roleNameArn", "destinationS3BucketName", "snsTopicArn" ], "members":{ "dataSetType":{"shape":"SupportDataSetType"}, "fromDate":{"shape":"FromDate"}, "roleNameArn":{"shape":"RoleNameArn"}, "destinationS3BucketName":{"shape":"DestinationS3BucketName"}, "destinationS3Prefix":{"shape":"DestinationS3Prefix"}, "snsTopicArn":{"shape":"SnsTopicArn"}, "customerDefinedValues":{"shape":"CustomerDefinedValues"} } }, "StartSupportDataExportResult":{ "type":"structure", "members":{ "dataSetRequestId":{"shape":"DataSetRequestId"} } }, "SupportDataSetType":{ "type":"string", "enum":[ "customer_support_contacts_data", "test_customer_support_contacts_data" ], "max":255, "min":1 } } } aws-sdk-go-1.4.22/models/apis/marketplacecommerceanalytics/2015-07-01/docs-2.json000066400000000000000000000245721300374646400267420ustar00rootroot00000000000000{ "version": "2.0", "service": "Provides AWS Marketplace business intelligence data on-demand.", "operations": { "GenerateDataSet": "Given a data set type and data set publication date, asynchronously publishes the requested data set to the specified S3 bucket and notifies the specified SNS topic once the data is available. Returns a unique request identifier that can be used to correlate requests with notifications from the SNS topic. Data sets will be published in comma-separated values (CSV) format with the file name {data_set_type}_YYYY-MM-DD.csv. If a file with the same name already exists (e.g. if the same data set is requested twice), the original file will be overwritten by the new file. Requires a Role with an attached permissions policy providing Allow permissions for the following actions: s3:PutObject, s3:GetBucketLocation, sns:GetTopicAttributes, sns:Publish, iam:GetRolePolicy.", "StartSupportDataExport": "Given a data set type and a from date, asynchronously publishes the requested customer support data to the specified S3 bucket and notifies the specified SNS topic once the data is available. Returns a unique request identifier that can be used to correlate requests with notifications from the SNS topic. Data sets will be published in comma-separated values (CSV) format with the file name {data_set_type}_YYYY-MM-DD'T'HH-mm-ss'Z'.csv. If a file with the same name already exists (e.g. if the same data set is requested twice), the original file will be overwritten by the new file. Requires a Role with an attached permissions policy providing Allow permissions for the following actions: s3:PutObject, s3:GetBucketLocation, sns:GetTopicAttributes, sns:Publish, iam:GetRolePolicy." }, "shapes": { "CustomerDefinedValues": { "base": null, "refs": { "GenerateDataSetRequest$customerDefinedValues": "(Optional) Key-value pairs which will be returned, unmodified, in the Amazon SNS notification message and the data set metadata file. These key-value pairs can be used to correlated responses with tracking information from other systems.", "StartSupportDataExportRequest$customerDefinedValues": "(Optional) Key-value pairs which will be returned, unmodified, in the Amazon SNS notification message and the data set metadata file." } }, "DataSetPublicationDate": { "base": null, "refs": { "GenerateDataSetRequest$dataSetPublicationDate": "The date a data set was published. For daily data sets, provide a date with day-level granularity for the desired day. For weekly data sets, provide a date with day-level granularity within the desired week (the day value will be ignored). For monthly data sets, provide a date with month-level granularity for the desired month (the day value will be ignored)." } }, "DataSetRequestId": { "base": null, "refs": { "GenerateDataSetResult$dataSetRequestId": "A unique identifier representing a specific request to the GenerateDataSet operation. This identifier can be used to correlate a request with notifications from the SNS topic.", "StartSupportDataExportResult$dataSetRequestId": "A unique identifier representing a specific request to the StartSupportDataExport operation. This identifier can be used to correlate a request with notifications from the SNS topic." } }, "DataSetType": { "base": null, "refs": { "GenerateDataSetRequest$dataSetType": "

        The desired data set type.

        • customer_subscriber_hourly_monthly_subscriptions - Available daily by 5:00 PM Pacific Time since 2014-07-21.
        • customer_subscriber_annual_subscriptions - Available daily by 5:00 PM Pacific Time since 2014-07-21.
        • daily_business_usage_by_instance_type - Available daily by 5:00 PM Pacific Time since 2015-01-26.
        • daily_business_fees - Available daily by 5:00 PM Pacific Time since 2015-01-26.
        • daily_business_free_trial_conversions - Available daily by 5:00 PM Pacific Time since 2015-01-26.
        • daily_business_new_instances - Available daily by 5:00 PM Pacific Time since 2015-01-26.
        • daily_business_new_product_subscribers - Available daily by 5:00 PM Pacific Time since 2015-01-26.
        • daily_business_canceled_product_subscribers - Available daily by 5:00 PM Pacific Time since 2015-01-26.
        • monthly_revenue_billing_and_revenue_data - Available monthly on the 4th day of the month by 5:00 PM Pacific Time since 2015-02.
        • monthly_revenue_annual_subscriptions - Available monthly on the 4th day of the month by 5:00 PM Pacific Time since 2015-02.
        • disbursed_amount_by_product - Available every 30 days by 5:00 PM Pacific Time since 2015-01-26.
        • disbursed_amount_by_product_with_uncollected_funds -This data set is only available from 2012-04-19 until 2015-01-25. After 2015-01-25, this data set was split into three data sets: disbursed_amount_by_product, disbursed_amount_by_age_of_uncollected_funds, and disbursed_amount_by_age_of_disbursed_funds.
        • disbursed_amount_by_customer_geo - Available every 30 days by 5:00 PM Pacific Time since 2012-04-19.
        • disbursed_amount_by_age_of_uncollected_funds - Available every 30 days by 5:00 PM Pacific Time since 2015-01-26.
        • disbursed_amount_by_age_of_disbursed_funds - Available every 30 days by 5:00 PM Pacific Time since 2015-01-26.
        • customer_profile_by_industry - Available daily by 5:00 PM Pacific Time since 2015-10-01.
        • customer_profile_by_revenue - Available daily by 5:00 PM Pacific Time since 2015-10-01.
        • customer_profile_by_geography - Available daily by 5:00 PM Pacific Time since 2015-10-01.

        " } }, "DestinationS3BucketName": { "base": null, "refs": { "GenerateDataSetRequest$destinationS3BucketName": "The name (friendly name, not ARN) of the destination S3 bucket.", "StartSupportDataExportRequest$destinationS3BucketName": "The name (friendly name, not ARN) of the destination S3 bucket." } }, "DestinationS3Prefix": { "base": null, "refs": { "GenerateDataSetRequest$destinationS3Prefix": "(Optional) The desired S3 prefix for the published data set, similar to a directory path in standard file systems. For example, if given the bucket name \"mybucket\" and the prefix \"myprefix/mydatasets\", the output file \"outputfile\" would be published to \"s3://mybucket/myprefix/mydatasets/outputfile\". If the prefix directory structure does not exist, it will be created. If no prefix is provided, the data set will be published to the S3 bucket root.", "StartSupportDataExportRequest$destinationS3Prefix": "(Optional) The desired S3 prefix for the published data set, similar to a directory path in standard file systems. For example, if given the bucket name \"mybucket\" and the prefix \"myprefix/mydatasets\", the output file \"outputfile\" would be published to \"s3://mybucket/myprefix/mydatasets/outputfile\". If the prefix directory structure does not exist, it will be created. If no prefix is provided, the data set will be published to the S3 bucket root." } }, "ExceptionMessage": { "base": null, "refs": { "MarketplaceCommerceAnalyticsException$message": null } }, "FromDate": { "base": null, "refs": { "StartSupportDataExportRequest$fromDate": "The start date from which to retrieve the data set. This parameter only affects the customer_support_contacts_data data set type." } }, "GenerateDataSetRequest": { "base": "Container for the parameters to the GenerateDataSet operation.", "refs": { } }, "GenerateDataSetResult": { "base": "Container for the result of the GenerateDataSet operation.", "refs": { } }, "MarketplaceCommerceAnalyticsException": { "base": "This exception is thrown when an internal service error occurs.", "refs": { } }, "OptionalKey": { "base": null, "refs": { "CustomerDefinedValues$key": null } }, "OptionalValue": { "base": null, "refs": { "CustomerDefinedValues$value": null } }, "RoleNameArn": { "base": null, "refs": { "GenerateDataSetRequest$roleNameArn": "The Amazon Resource Name (ARN) of the Role with an attached permissions policy to interact with the provided AWS services.", "StartSupportDataExportRequest$roleNameArn": "The Amazon Resource Name (ARN) of the Role with an attached permissions policy to interact with the provided AWS services." } }, "SnsTopicArn": { "base": null, "refs": { "GenerateDataSetRequest$snsTopicArn": "Amazon Resource Name (ARN) for the SNS Topic that will be notified when the data set has been published or if an error has occurred.", "StartSupportDataExportRequest$snsTopicArn": "Amazon Resource Name (ARN) for the SNS Topic that will be notified when the data set has been published or if an error has occurred." } }, "StartSupportDataExportRequest": { "base": "Container for the parameters to the StartSupportDataExport operation.", "refs": { } }, "StartSupportDataExportResult": { "base": "Container for the result of the StartSupportDataExport operation.", "refs": { } }, "SupportDataSetType": { "base": null, "refs": { "StartSupportDataExportRequest$dataSetType": "

        Specifies the data set type to be written to the output csv file. The data set types customer_support_contacts_data and test_customer_support_contacts_data both result in a csv file containing the following fields: Product Id, Customer Guid, Subscription Guid, Subscription Start Date, Organization, AWS Account Id, Given Name, Surname, Telephone Number, Email, Title, Country Code, ZIP Code, Operation Type, and Operation Time. Currently, only the test_customer_support_contacts_data value is supported

        • customer_support_contacts_data Customer support contact data. The data set will contain all changes (Creates, Updates, and Deletes) to customer support contact data from the date specified in the from_date parameter.
        • test_customer_support_contacts_data An example data set containing static test data in the same format as customer_support_contacts_data

        " } } } } aws-sdk-go-1.4.22/models/apis/marketplacecommerceanalytics/2015-07-01/examples-1.json000066400000000000000000000000541300374646400276140ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/meteringmarketplace/000077500000000000000000000000001300374646400220255ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/meteringmarketplace/2016-01-14/000077500000000000000000000000001300374646400230555ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/meteringmarketplace/2016-01-14/api-2.json000066400000000000000000000060101300374646400246550ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2016-01-14", "endpointPrefix":"metering.marketplace", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"AWSMarketplace Metering", "signatureVersion":"v4", "signingName":"aws-marketplace", "targetPrefix":"AWSMPMeteringService" }, "operations":{ "MeterUsage":{ "name":"MeterUsage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"MeterUsageRequest"}, "output":{"shape":"MeterUsageResult"}, "errors":[ {"shape":"InternalServiceErrorException"}, {"shape":"InvalidProductCodeException"}, {"shape":"InvalidUsageDimensionException"}, {"shape":"InvalidEndpointRegionException"}, {"shape":"TimestampOutOfBoundsException"}, {"shape":"DuplicateRequestException"}, {"shape":"ThrottlingException"} ] } }, "shapes":{ "Boolean":{"type":"boolean"}, "DuplicateRequestException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true }, "InternalServiceErrorException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true, "fault":true }, "InvalidEndpointRegionException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true }, "InvalidProductCodeException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true }, "InvalidUsageDimensionException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true }, "MeterUsageRequest":{ "type":"structure", "required":[ "ProductCode", "Timestamp", "UsageDimension", "UsageQuantity", "DryRun" ], "members":{ "ProductCode":{"shape":"ProductCode"}, "Timestamp":{"shape":"Timestamp"}, "UsageDimension":{"shape":"UsageDimension"}, "UsageQuantity":{"shape":"UsageQuantity"}, "DryRun":{"shape":"Boolean"} } }, "MeterUsageResult":{ "type":"structure", "members":{ "MeteringRecordId":{"shape":"String"} } }, "ProductCode":{ "type":"string", "max":255, "min":1 }, "String":{"type":"string"}, "ThrottlingException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true }, "Timestamp":{"type":"timestamp"}, "TimestampOutOfBoundsException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true }, "UsageDimension":{ "type":"string", "max":255, "min":1 }, "UsageQuantity":{ "type":"integer", "max":1000000, "min":0 }, "errorMessage":{"type":"string"} } } aws-sdk-go-1.4.22/models/apis/meteringmarketplace/2016-01-14/docs-2.json000066400000000000000000000075261300374646400250510ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS Marketplace Metering Service

        This reference provides descriptions of the low-level AWS Marketplace Metering Service API.

        AWS Marketplace sellers can use this API to submit usage data for custom usage dimensions.

        Submitting Metering Records

        • MeterUsage- Submits the metering record for a Marketplace product.

        ", "operations": { "MeterUsage": "

        API to emit metering records. For identical requests, the API is idempotent. It simply returns the metering record ID.

        " }, "shapes": { "Boolean": { "base": null, "refs": { "MeterUsageRequest$DryRun": "

        Checks whether you have the permissions required for the action, but does not make the request. If you have the permissions, the request returns DryRunOperation; otherwise, it returns UnauthorizedException.

        " } }, "DuplicateRequestException": { "base": "

        A metering record has already been emitted by the same EC2 instance for the given {usageDimension, timestamp} with a different usageQuantity.

        ", "refs": { } }, "InternalServiceErrorException": { "base": "

        An internal error has occurred. Retry your request. If the problem persists, post a message with details on the AWS forums.

        ", "refs": { } }, "InvalidEndpointRegionException": { "base": "

        The endpoint being called is in a region different from your EC2 instance. The region of the Metering service endpoint and the region of the EC2 instance must match.

        ", "refs": { } }, "InvalidProductCodeException": { "base": "

        The product code passed does not match the product code used for publishing the product.

        ", "refs": { } }, "InvalidUsageDimensionException": { "base": "

        The usage dimension does not match one of the UsageDimensions associated with products.

        ", "refs": { } }, "MeterUsageRequest": { "base": null, "refs": { } }, "MeterUsageResult": { "base": null, "refs": { } }, "ProductCode": { "base": null, "refs": { "MeterUsageRequest$ProductCode": "

        Product code is used to uniquely identify a product in AWS Marketplace. The product code should be the same as the one used during the publishing of a new product.

        " } }, "String": { "base": null, "refs": { "MeterUsageResult$MeteringRecordId": null } }, "ThrottlingException": { "base": "

        The calls to the MeterUsage API are throttled.

        ", "refs": { } }, "Timestamp": { "base": null, "refs": { "MeterUsageRequest$Timestamp": "

        Timestamp of the hour, recorded in UTC. The seconds and milliseconds portions of the timestamp will be ignored.

        " } }, "TimestampOutOfBoundsException": { "base": "

        The timestamp value passed in the meterUsage() is out of allowed range.

        ", "refs": { } }, "UsageDimension": { "base": null, "refs": { "MeterUsageRequest$UsageDimension": "

        It will be one of the 'fcp dimension name' provided during the publishing of the product.

        " } }, "UsageQuantity": { "base": null, "refs": { "MeterUsageRequest$UsageQuantity": "

        Consumption value for the hour.

        " } }, "errorMessage": { "base": null, "refs": { "DuplicateRequestException$message": null, "InternalServiceErrorException$message": null, "InvalidEndpointRegionException$message": null, "InvalidProductCodeException$message": null, "InvalidUsageDimensionException$message": null, "ThrottlingException$message": null, "TimestampOutOfBoundsException$message": null } } } } aws-sdk-go-1.4.22/models/apis/meteringmarketplace/2016-01-14/examples-1.json000066400000000000000000000000541300374646400257230ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/mobileanalytics/000077500000000000000000000000001300374646400211615ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/mobileanalytics/2014-06-05/000077500000000000000000000000001300374646400222145ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/mobileanalytics/2014-06-05/api-2.json000066400000000000000000000053661300374646400240310ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2014-06-05", "endpointPrefix":"mobileanalytics", "serviceFullName":"Amazon Mobile Analytics", "signatureVersion":"v4", "protocol":"rest-json" }, "operations":{ "PutEvents":{ "name":"PutEvents", "http":{ "method":"POST", "requestUri":"/2014-06-05/events", "responseCode":202 }, "input":{"shape":"PutEventsInput"}, "errors":[ { "shape":"BadRequestException", "error":{"httpStatusCode":400}, "exception":true } ] } }, "shapes":{ "BadRequestException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "error":{"httpStatusCode":400}, "exception":true }, "Double":{"type":"double"}, "Event":{ "type":"structure", "required":[ "eventType", "timestamp" ], "members":{ "eventType":{"shape":"String50Chars"}, "timestamp":{"shape":"ISO8601Timestamp"}, "session":{"shape":"Session"}, "version":{"shape":"String10Chars"}, "attributes":{"shape":"MapOfStringToString"}, "metrics":{"shape":"MapOfStringToNumber"} } }, "EventListDefinition":{ "type":"list", "member":{"shape":"Event"} }, "ISO8601Timestamp":{"type":"string"}, "Long":{"type":"long"}, "MapOfStringToNumber":{ "type":"map", "key":{"shape":"String50Chars"}, "value":{"shape":"Double"}, "min":0, "max":50 }, "MapOfStringToString":{ "type":"map", "key":{"shape":"String50Chars"}, "value":{"shape":"String0to1000Chars"}, "min":0, "max":50 }, "PutEventsInput":{ "type":"structure", "required":[ "events", "clientContext" ], "members":{ "events":{"shape":"EventListDefinition"}, "clientContext":{ "shape":"String", "location":"header", "locationName":"x-amz-Client-Context" }, "clientContextEncoding":{ "shape":"String", "location":"header", "locationName":"x-amz-Client-Context-Encoding" } } }, "Session":{ "type":"structure", "members":{ "id":{"shape":"String50Chars"}, "duration":{"shape":"Long"}, "startTimestamp":{"shape":"ISO8601Timestamp"}, "stopTimestamp":{"shape":"ISO8601Timestamp"} } }, "String":{"type":"string"}, "String0to1000Chars":{ "type":"string", "min":0, "max":1000 }, "String10Chars":{ "type":"string", "min":1, "max":10 }, "String50Chars":{ "type":"string", "min":1, "max":50 } } } aws-sdk-go-1.4.22/models/apis/mobileanalytics/2014-06-05/docs-2.json000066400000000000000000000072471300374646400242100ustar00rootroot00000000000000{ "version": "2.0", "operations": { "PutEvents": "

        The PutEvents operation records one or more events. You can have up to 1,500 unique custom events per app, any combination of up to 40 attributes and metrics per custom event, and any number of attribute or metric values.

        " }, "service": "

        Amazon Mobile Analytics is a service for collecting, visualizing, and understanding app usage data at scale.

        ", "shapes": { "BadRequestException": { "base": "

        An exception object returned when a request fails.

        ", "refs": { } }, "Double": { "base": null, "refs": { "MapOfStringToNumber$value": null } }, "Event": { "base": "

        A JSON object representing a batch of unique event occurrences in your app.

        ", "refs": { "EventListDefinition$member": null } }, "EventListDefinition": { "base": null, "refs": { "PutEventsInput$events": "

        An array of Event JSON objects

        " } }, "ISO8601Timestamp": { "base": null, "refs": { "Event$timestamp": "

        The time the event occurred in ISO 8601 standard date time format. For example, 2014-06-30T19:07:47.885Z

        ", "Session$startTimestamp": "

        The time the event started in ISO 8601 standard date time format. For example, 2014-06-30T19:07:47.885Z

        ", "Session$stopTimestamp": "

        The time the event terminated in ISO 8601 standard date time format. For example, 2014-06-30T19:07:47.885Z

        " } }, "Long": { "base": null, "refs": { "Session$duration": "

        The duration of the session.

        " } }, "MapOfStringToNumber": { "base": null, "refs": { "Event$metrics": "

        A collection of key-value pairs that gives additional, measurable context to the event. The key-value pairs are specified by the developer.

        This collection can be empty or the attribute object can be omitted.

        " } }, "MapOfStringToString": { "base": null, "refs": { "Event$attributes": "

        A collection of key-value pairs that give additional context to the event. The key-value pairs are specified by the developer.

        This collection can be empty or the attribute object can be omitted.

        " } }, "PutEventsInput": { "base": "

        A container for the data needed for a PutEvent operation

        ", "refs": { } }, "Session": { "base": "

        Describes the session. Session information is required on ALL events.

        ", "refs": { "Event$session": "

        The session the event occured within.

        " } }, "String": { "base": null, "refs": { "BadRequestException$message": "

        A text description associated with the BadRequestException object.

        ", "PutEventsInput$clientContext": "

        The client context including the client ID, app title, app version and package name.

        ", "PutEventsInput$clientContextEncoding": "

        The encoding used for the client context.

        " } }, "String0to1000Chars": { "base": null, "refs": { "MapOfStringToString$value": null } }, "String10Chars": { "base": null, "refs": { "Event$version": "

        The version of the event.

        " } }, "String50Chars": { "base": null, "refs": { "Event$eventType": "

        A name signifying an event that occurred in your app. This is used for grouping and aggregating like events together for reporting purposes.

        ", "MapOfStringToNumber$key": null, "MapOfStringToString$key": null, "Session$id": "

        A unique identifier for the session

        " } } } } aws-sdk-go-1.4.22/models/apis/monitoring/000077500000000000000000000000001300374646400201675ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/monitoring/2010-08-01/000077500000000000000000000000001300374646400212145ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/monitoring/2010-08-01/api-2.json000066400000000000000000000460001300374646400230170ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2010-08-01", "endpointPrefix":"monitoring", "protocol":"query", "serviceAbbreviation":"CloudWatch", "serviceFullName":"Amazon CloudWatch", "signatureVersion":"v4", "xmlNamespace":"http://monitoring.amazonaws.com/doc/2010-08-01/" }, "operations":{ "DeleteAlarms":{ "name":"DeleteAlarms", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteAlarmsInput"}, "errors":[ {"shape":"ResourceNotFound"} ] }, "DescribeAlarmHistory":{ "name":"DescribeAlarmHistory", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAlarmHistoryInput"}, "output":{ "shape":"DescribeAlarmHistoryOutput", "resultWrapper":"DescribeAlarmHistoryResult" }, "errors":[ {"shape":"InvalidNextToken"} ] }, "DescribeAlarms":{ "name":"DescribeAlarms", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAlarmsInput"}, "output":{ "shape":"DescribeAlarmsOutput", "resultWrapper":"DescribeAlarmsResult" }, "errors":[ {"shape":"InvalidNextToken"} ] }, "DescribeAlarmsForMetric":{ "name":"DescribeAlarmsForMetric", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAlarmsForMetricInput"}, "output":{ "shape":"DescribeAlarmsForMetricOutput", "resultWrapper":"DescribeAlarmsForMetricResult" } }, "DisableAlarmActions":{ "name":"DisableAlarmActions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableAlarmActionsInput"} }, "EnableAlarmActions":{ "name":"EnableAlarmActions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableAlarmActionsInput"} }, "GetMetricStatistics":{ "name":"GetMetricStatistics", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetMetricStatisticsInput"}, "output":{ "shape":"GetMetricStatisticsOutput", "resultWrapper":"GetMetricStatisticsResult" }, "errors":[ {"shape":"InvalidParameterValueException"}, {"shape":"MissingRequiredParameterException"}, {"shape":"InvalidParameterCombinationException"}, {"shape":"InternalServiceFault"} ] }, "ListMetrics":{ "name":"ListMetrics", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListMetricsInput"}, "output":{ "shape":"ListMetricsOutput", "resultWrapper":"ListMetricsResult" }, "errors":[ {"shape":"InternalServiceFault"}, {"shape":"InvalidParameterValueException"} ] }, "PutMetricAlarm":{ "name":"PutMetricAlarm", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutMetricAlarmInput"}, "errors":[ {"shape":"LimitExceededFault"} ] }, "PutMetricData":{ "name":"PutMetricData", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutMetricDataInput"}, "errors":[ {"shape":"InvalidParameterValueException"}, {"shape":"MissingRequiredParameterException"}, {"shape":"InvalidParameterCombinationException"}, {"shape":"InternalServiceFault"} ] }, "SetAlarmState":{ "name":"SetAlarmState", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetAlarmStateInput"}, "errors":[ {"shape":"ResourceNotFound"}, {"shape":"InvalidFormatFault"} ] } }, "shapes":{ "ActionPrefix":{ "type":"string", "max":1024, "min":1 }, "ActionsEnabled":{"type":"boolean"}, "AlarmArn":{ "type":"string", "max":1600, "min":1 }, "AlarmDescription":{ "type":"string", "max":1024, "min":0 }, "AlarmHistoryItem":{ "type":"structure", "members":{ "AlarmName":{"shape":"AlarmName"}, "Timestamp":{"shape":"Timestamp"}, "HistoryItemType":{"shape":"HistoryItemType"}, "HistorySummary":{"shape":"HistorySummary"}, "HistoryData":{"shape":"HistoryData"} } }, "AlarmHistoryItems":{ "type":"list", "member":{"shape":"AlarmHistoryItem"} }, "AlarmName":{ "type":"string", "max":255, "min":1 }, "AlarmNamePrefix":{ "type":"string", "max":255, "min":1 }, "AlarmNames":{ "type":"list", "member":{"shape":"AlarmName"}, "max":100 }, "AwsQueryErrorMessage":{"type":"string"}, "ComparisonOperator":{ "type":"string", "enum":[ "GreaterThanOrEqualToThreshold", "GreaterThanThreshold", "LessThanThreshold", "LessThanOrEqualToThreshold" ] }, "Datapoint":{ "type":"structure", "members":{ "Timestamp":{"shape":"Timestamp"}, "SampleCount":{"shape":"DatapointValue"}, "Average":{"shape":"DatapointValue"}, "Sum":{"shape":"DatapointValue"}, "Minimum":{"shape":"DatapointValue"}, "Maximum":{"shape":"DatapointValue"}, "Unit":{"shape":"StandardUnit"} }, "xmlOrder":[ "Timestamp", "SampleCount", "Average", "Sum", "Minimum", "Maximum", "Unit" ] }, "DatapointValue":{"type":"double"}, "Datapoints":{ "type":"list", "member":{"shape":"Datapoint"} }, "DeleteAlarmsInput":{ "type":"structure", "required":["AlarmNames"], "members":{ "AlarmNames":{"shape":"AlarmNames"} } }, "DescribeAlarmHistoryInput":{ "type":"structure", "members":{ "AlarmName":{"shape":"AlarmName"}, "HistoryItemType":{"shape":"HistoryItemType"}, "StartDate":{"shape":"Timestamp"}, "EndDate":{"shape":"Timestamp"}, "MaxRecords":{"shape":"MaxRecords"}, "NextToken":{"shape":"NextToken"} } }, "DescribeAlarmHistoryOutput":{ "type":"structure", "members":{ "AlarmHistoryItems":{"shape":"AlarmHistoryItems"}, "NextToken":{"shape":"NextToken"} } }, "DescribeAlarmsForMetricInput":{ "type":"structure", "required":[ "MetricName", "Namespace" ], "members":{ "MetricName":{"shape":"MetricName"}, "Namespace":{"shape":"Namespace"}, "Statistic":{"shape":"Statistic"}, "Dimensions":{"shape":"Dimensions"}, "Period":{"shape":"Period"}, "Unit":{"shape":"StandardUnit"} } }, "DescribeAlarmsForMetricOutput":{ "type":"structure", "members":{ "MetricAlarms":{"shape":"MetricAlarms"} } }, "DescribeAlarmsInput":{ "type":"structure", "members":{ "AlarmNames":{"shape":"AlarmNames"}, "AlarmNamePrefix":{"shape":"AlarmNamePrefix"}, "StateValue":{"shape":"StateValue"}, "ActionPrefix":{"shape":"ActionPrefix"}, "MaxRecords":{"shape":"MaxRecords"}, "NextToken":{"shape":"NextToken"} } }, "DescribeAlarmsOutput":{ "type":"structure", "members":{ "MetricAlarms":{"shape":"MetricAlarms"}, "NextToken":{"shape":"NextToken"} } }, "Dimension":{ "type":"structure", "required":[ "Name", "Value" ], "members":{ "Name":{"shape":"DimensionName"}, "Value":{"shape":"DimensionValue"} }, "xmlOrder":[ "Name", "Value" ] }, "DimensionFilter":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"DimensionName"}, "Value":{"shape":"DimensionValue"} } }, "DimensionFilters":{ "type":"list", "member":{"shape":"DimensionFilter"}, "max":10 }, "DimensionName":{ "type":"string", "max":255, "min":1 }, "DimensionValue":{ "type":"string", "max":255, "min":1 }, "Dimensions":{ "type":"list", "member":{"shape":"Dimension"}, "max":10 }, "DisableAlarmActionsInput":{ "type":"structure", "required":["AlarmNames"], "members":{ "AlarmNames":{"shape":"AlarmNames"} } }, "EnableAlarmActionsInput":{ "type":"structure", "required":["AlarmNames"], "members":{ "AlarmNames":{"shape":"AlarmNames"} } }, "ErrorMessage":{ "type":"string", "max":255, "min":1 }, "EvaluationPeriods":{ "type":"integer", "min":1 }, "FaultDescription":{"type":"string"}, "GetMetricStatisticsInput":{ "type":"structure", "required":[ "Namespace", "MetricName", "StartTime", "EndTime", "Period", "Statistics" ], "members":{ "Namespace":{"shape":"Namespace"}, "MetricName":{"shape":"MetricName"}, "Dimensions":{"shape":"Dimensions"}, "StartTime":{"shape":"Timestamp"}, "EndTime":{"shape":"Timestamp"}, "Period":{"shape":"Period"}, "Statistics":{"shape":"Statistics"}, "Unit":{"shape":"StandardUnit"} } }, "GetMetricStatisticsOutput":{ "type":"structure", "members":{ "Label":{"shape":"MetricLabel"}, "Datapoints":{"shape":"Datapoints"} } }, "HistoryData":{ "type":"string", "max":4095, "min":1 }, "HistoryItemType":{ "type":"string", "enum":[ "ConfigurationUpdate", "StateUpdate", "Action" ] }, "HistorySummary":{ "type":"string", "max":255, "min":1 }, "InternalServiceFault":{ "type":"structure", "members":{ "Message":{"shape":"FaultDescription"} }, "error":{ "code":"InternalServiceError", "httpStatusCode":500 }, "exception":true, "xmlOrder":["Message"] }, "InvalidFormatFault":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{ "code":"InvalidFormat", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidNextToken":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{ "code":"InvalidNextToken", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidParameterCombinationException":{ "type":"structure", "members":{ "message":{"shape":"AwsQueryErrorMessage"} }, "error":{ "code":"InvalidParameterCombination", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidParameterValueException":{ "type":"structure", "members":{ "message":{"shape":"AwsQueryErrorMessage"} }, "error":{ "code":"InvalidParameterValue", "httpStatusCode":400, "senderFault":true }, "exception":true }, "LimitExceededFault":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{ "code":"LimitExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ListMetricsInput":{ "type":"structure", "members":{ "Namespace":{"shape":"Namespace"}, "MetricName":{"shape":"MetricName"}, "Dimensions":{"shape":"DimensionFilters"}, "NextToken":{"shape":"NextToken"} } }, "ListMetricsOutput":{ "type":"structure", "members":{ "Metrics":{"shape":"Metrics"}, "NextToken":{"shape":"NextToken"} }, "xmlOrder":[ "Metrics", "NextToken" ] }, "MaxRecords":{ "type":"integer", "max":100, "min":1 }, "Metric":{ "type":"structure", "members":{ "Namespace":{"shape":"Namespace"}, "MetricName":{"shape":"MetricName"}, "Dimensions":{"shape":"Dimensions"} }, "xmlOrder":[ "Namespace", "MetricName", "Dimensions" ] }, "MetricAlarm":{ "type":"structure", "members":{ "AlarmName":{"shape":"AlarmName"}, "AlarmArn":{"shape":"AlarmArn"}, "AlarmDescription":{"shape":"AlarmDescription"}, "AlarmConfigurationUpdatedTimestamp":{"shape":"Timestamp"}, "ActionsEnabled":{"shape":"ActionsEnabled"}, "OKActions":{"shape":"ResourceList"}, "AlarmActions":{"shape":"ResourceList"}, "InsufficientDataActions":{"shape":"ResourceList"}, "StateValue":{"shape":"StateValue"}, "StateReason":{"shape":"StateReason"}, "StateReasonData":{"shape":"StateReasonData"}, "StateUpdatedTimestamp":{"shape":"Timestamp"}, "MetricName":{"shape":"MetricName"}, "Namespace":{"shape":"Namespace"}, "Statistic":{"shape":"Statistic"}, "Dimensions":{"shape":"Dimensions"}, "Period":{"shape":"Period"}, "Unit":{"shape":"StandardUnit"}, "EvaluationPeriods":{"shape":"EvaluationPeriods"}, "Threshold":{"shape":"Threshold"}, "ComparisonOperator":{"shape":"ComparisonOperator"} }, "xmlOrder":[ "AlarmName", "AlarmArn", "AlarmDescription", "AlarmConfigurationUpdatedTimestamp", "ActionsEnabled", "OKActions", "AlarmActions", "InsufficientDataActions", "StateValue", "StateReason", "StateReasonData", "StateUpdatedTimestamp", "MetricName", "Namespace", "Statistic", "Dimensions", "Period", "Unit", "EvaluationPeriods", "Threshold", "ComparisonOperator" ] }, "MetricAlarms":{ "type":"list", "member":{"shape":"MetricAlarm"} }, "MetricData":{ "type":"list", "member":{"shape":"MetricDatum"} }, "MetricDatum":{ "type":"structure", "required":["MetricName"], "members":{ "MetricName":{"shape":"MetricName"}, "Dimensions":{"shape":"Dimensions"}, "Timestamp":{"shape":"Timestamp"}, "Value":{"shape":"DatapointValue"}, "StatisticValues":{"shape":"StatisticSet"}, "Unit":{"shape":"StandardUnit"} } }, "MetricLabel":{"type":"string"}, "MetricName":{ "type":"string", "max":255, "min":1 }, "Metrics":{ "type":"list", "member":{"shape":"Metric"} }, "MissingRequiredParameterException":{ "type":"structure", "members":{ "message":{"shape":"AwsQueryErrorMessage"} }, "error":{ "code":"MissingParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Namespace":{ "type":"string", "max":255, "min":1, "pattern":"[^:].*" }, "NextToken":{ "type":"string", "max":1024, "min":0 }, "Period":{ "type":"integer", "min":60 }, "PutMetricAlarmInput":{ "type":"structure", "required":[ "AlarmName", "MetricName", "Namespace", "Statistic", "Period", "EvaluationPeriods", "Threshold", "ComparisonOperator" ], "members":{ "AlarmName":{"shape":"AlarmName"}, "AlarmDescription":{"shape":"AlarmDescription"}, "ActionsEnabled":{"shape":"ActionsEnabled"}, "OKActions":{"shape":"ResourceList"}, "AlarmActions":{"shape":"ResourceList"}, "InsufficientDataActions":{"shape":"ResourceList"}, "MetricName":{"shape":"MetricName"}, "Namespace":{"shape":"Namespace"}, "Statistic":{"shape":"Statistic"}, "Dimensions":{"shape":"Dimensions"}, "Period":{"shape":"Period"}, "Unit":{"shape":"StandardUnit"}, "EvaluationPeriods":{"shape":"EvaluationPeriods"}, "Threshold":{"shape":"Threshold"}, "ComparisonOperator":{"shape":"ComparisonOperator"} } }, "PutMetricDataInput":{ "type":"structure", "required":[ "Namespace", "MetricData" ], "members":{ "Namespace":{"shape":"Namespace"}, "MetricData":{"shape":"MetricData"} } }, "ResourceList":{ "type":"list", "member":{"shape":"ResourceName"}, "max":5 }, "ResourceName":{ "type":"string", "max":1024, "min":1 }, "ResourceNotFound":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{ "code":"ResourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SetAlarmStateInput":{ "type":"structure", "required":[ "AlarmName", "StateValue", "StateReason" ], "members":{ "AlarmName":{"shape":"AlarmName"}, "StateValue":{"shape":"StateValue"}, "StateReason":{"shape":"StateReason"}, "StateReasonData":{"shape":"StateReasonData"} } }, "StandardUnit":{ "type":"string", "enum":[ "Seconds", "Microseconds", "Milliseconds", "Bytes", "Kilobytes", "Megabytes", "Gigabytes", "Terabytes", "Bits", "Kilobits", "Megabits", "Gigabits", "Terabits", "Percent", "Count", "Bytes/Second", "Kilobytes/Second", "Megabytes/Second", "Gigabytes/Second", "Terabytes/Second", "Bits/Second", "Kilobits/Second", "Megabits/Second", "Gigabits/Second", "Terabits/Second", "Count/Second", "None" ] }, "StateReason":{ "type":"string", "max":1023, "min":0 }, "StateReasonData":{ "type":"string", "max":4000, "min":0 }, "StateValue":{ "type":"string", "enum":[ "OK", "ALARM", "INSUFFICIENT_DATA" ] }, "Statistic":{ "type":"string", "enum":[ "SampleCount", "Average", "Sum", "Minimum", "Maximum" ] }, "StatisticSet":{ "type":"structure", "required":[ "SampleCount", "Sum", "Minimum", "Maximum" ], "members":{ "SampleCount":{"shape":"DatapointValue"}, "Sum":{"shape":"DatapointValue"}, "Minimum":{"shape":"DatapointValue"}, "Maximum":{"shape":"DatapointValue"} } }, "Statistics":{ "type":"list", "member":{"shape":"Statistic"}, "max":5, "min":1 }, "Threshold":{"type":"double"}, "Timestamp":{"type":"timestamp"} } } aws-sdk-go-1.4.22/models/apis/monitoring/2010-08-01/docs-2.json000066400000000000000000001061341300374646400232030ustar00rootroot00000000000000{ "version": "2.0", "service": "

        Amazon CloudWatch monitors your Amazon Web Services (AWS) resources and the applications you run on AWS in real-time. You can use CloudWatch to collect and track metrics, which are the variables you want to measure for your resources and applications.

        CloudWatch alarms send notifications or automatically make changes to the resources you are monitoring based on rules that you define. For example, you can monitor the CPU usage and disk reads and writes of your Amazon Elastic Compute Cloud (Amazon EC2) instances and then use this data to determine whether you should launch additional instances to handle increased load. You can also use this data to stop under-used instances to save money.

        In addition to monitoring the built-in metrics that come with AWS, you can monitor your own custom metrics. With CloudWatch, you gain system-wide visibility into resource utilization, application performance, and operational health.

        ", "operations": { "DeleteAlarms": "

        Deletes all specified alarms. In the event of an error, no alarms are deleted.

        ", "DescribeAlarmHistory": "

        Retrieves history for the specified alarm. Filter alarms by date range or item type. If an alarm name is not specified, Amazon CloudWatch returns histories for all of the owner's alarms.

        Amazon CloudWatch retains the history of an alarm for two weeks, whether or not you delete the alarm.

        ", "DescribeAlarms": "

        Retrieves alarms with the specified names. If no name is specified, all alarms for the user are returned. Alarms can be retrieved by using only a prefix for the alarm name, the alarm state, or a prefix for any action.

        ", "DescribeAlarmsForMetric": "

        Retrieves all alarms for a single metric. Specify a statistic, period, or unit to filter the set of alarms further.

        ", "DisableAlarmActions": "

        Disables actions for the specified alarms. When an alarm's actions are disabled the alarm's state may change, but none of the alarm's actions will execute.

        ", "EnableAlarmActions": "

        Enables actions for the specified alarms.

        ", "GetMetricStatistics": "

        Gets statistics for the specified metric.

        The maximum number of data points that can be queried is 50,850, whereas the maximum number of data points returned from a single GetMetricStatistics request is 1,440. If you make a request that generates more than 1,440 data points, Amazon CloudWatch returns an error. In such a case, you can alter the request by narrowing the specified time range or increasing the specified period. A period can be as short as one minute (60 seconds) or as long as one day (86,400 seconds). Alternatively, you can make multiple requests across adjacent time ranges. GetMetricStatistics does not return the data in chronological order.

        Amazon CloudWatch aggregates data points based on the length of the period that you specify. For example, if you request statistics with a one-minute granularity, Amazon CloudWatch aggregates data points with time stamps that fall within the same one-minute period. In such a case, the data points queried can greatly outnumber the data points returned.

        The following examples show various statistics allowed by the data point query maximum of 50,850 when you call GetMetricStatistics on Amazon EC2 instances with detailed (one-minute) monitoring enabled:

        • Statistics for up to 400 instances for a span of one hour

        • Statistics for up to 35 instances over a span of 24 hours

        • Statistics for up to 2 instances over a span of 2 weeks

        For information about the namespace, metric names, and dimensions that other Amazon Web Services products use to send metrics to CloudWatch, go to Amazon CloudWatch Metrics, Namespaces, and Dimensions Reference in the Amazon CloudWatch Developer Guide.

        ", "ListMetrics": "

        Returns a list of valid metrics stored for the AWS account owner. Returned metrics can be used with GetMetricStatistics to obtain statistical data for a given metric.

        Up to 500 results are returned for any one call. To retrieve further results, use returned NextToken values with subsequent ListMetrics operations.

        If you create a metric with PutMetricData, allow up to fifteen minutes for the metric to appear in calls to ListMetrics. Statistics about the metric, however, are available sooner using GetMetricStatistics.

        ", "PutMetricAlarm": "

        Creates or updates an alarm and associates it with the specified Amazon CloudWatch metric. Optionally, this operation can associate one or more Amazon SNS resources with the alarm.

        When this operation creates an alarm, the alarm state is immediately set to INSUFFICIENT_DATA. The alarm is evaluated and its StateValue is set appropriately. Any actions associated with the StateValue are then executed.

        When updating an existing alarm, its StateValue is left unchanged, but it completely overwrites the alarm's previous configuration.

        If you are using an AWS Identity and Access Management (IAM) account to create or modify an alarm, you must have the following Amazon EC2 permissions:

        • ec2:DescribeInstanceStatus and ec2:DescribeInstances for all alarms on Amazon EC2 instance status metrics.

        • ec2:StopInstances for alarms with stop actions.

        • ec2:TerminateInstances for alarms with terminate actions.

        • ec2:DescribeInstanceRecoveryAttribute, and ec2:RecoverInstances for alarms with recover actions.

        If you have read/write permissions for Amazon CloudWatch but not for Amazon EC2, you can still create an alarm but the stop or terminate actions won't be performed on the Amazon EC2 instance. However, if you are later granted permission to use the associated Amazon EC2 APIs, the alarm actions you created earlier will be performed. For more information about IAM permissions, see Permissions and Policies in Using IAM.

        If you are using an IAM role (e.g., an Amazon EC2 instance profile), you cannot stop or terminate the instance using alarm actions. However, you can still see the alarm state and perform any other actions such as Amazon SNS notifications or Auto Scaling policies.

        If you are using temporary security credentials granted using the AWS Security Token Service (AWS STS), you cannot stop or terminate an Amazon EC2 instance using alarm actions.

        ", "PutMetricData": "

        Publishes metric data points to Amazon CloudWatch. Amazon CloudWatch associates the data points with the specified metric. If the specified metric does not exist, Amazon CloudWatch creates the metric. When Amazon CloudWatch creates a metric, it can take up to fifteen minutes for the metric to appear in calls to ListMetrics.

        Each PutMetricData request is limited to 8 KB in size for HTTP GET requests and is limited to 40 KB in size for HTTP POST requests.

        Although the Value parameter accepts numbers of type Double, Amazon CloudWatch rejects values that are either too small or too large. Values must be in the range of 8.515920e-109 to 1.174271e+108 (Base 10) or 2e-360 to 2e360 (Base 2). In addition, special values (e.g., NaN, +Infinity, -Infinity) are not supported.

        Data that is timestamped 24 hours or more in the past may take in excess of 48 hours to become available from submission time using GetMetricStatistics.

        ", "SetAlarmState": "

        Temporarily sets the state of an alarm for testing purposes. When the updated StateValue differs from the previous value, the action configured for the appropriate state is invoked. For example, if your alarm is configured to send an Amazon SNS message when an alarm is triggered, temporarily changing the alarm's state to ALARM sends an Amazon SNS message. The alarm returns to its actual state (often within seconds). Because the alarm state change happens very quickly, it is typically only visible in the alarm's History tab in the Amazon CloudWatch console or through DescribeAlarmHistory.

        " }, "shapes": { "ActionPrefix": { "base": null, "refs": { "DescribeAlarmsInput$ActionPrefix": "

        The action name prefix.

        " } }, "ActionsEnabled": { "base": null, "refs": { "MetricAlarm$ActionsEnabled": "

        Indicates whether actions should be executed during any changes to the alarm's state.

        ", "PutMetricAlarmInput$ActionsEnabled": "

        Indicates whether or not actions should be executed during any changes to the alarm's state.

        " } }, "AlarmArn": { "base": null, "refs": { "MetricAlarm$AlarmArn": "

        The Amazon Resource Name (ARN) of the alarm.

        " } }, "AlarmDescription": { "base": null, "refs": { "MetricAlarm$AlarmDescription": "

        The description for the alarm.

        ", "PutMetricAlarmInput$AlarmDescription": "

        The description for the alarm.

        " } }, "AlarmHistoryItem": { "base": "

        The AlarmHistoryItem data type contains descriptive information about the history of a specific alarm. If you call DescribeAlarmHistory, Amazon CloudWatch returns this data type as part of the DescribeAlarmHistoryResult data type.

        ", "refs": { "AlarmHistoryItems$member": null } }, "AlarmHistoryItems": { "base": null, "refs": { "DescribeAlarmHistoryOutput$AlarmHistoryItems": "

        A list of alarm histories in JSON format.

        " } }, "AlarmName": { "base": null, "refs": { "AlarmHistoryItem$AlarmName": "

        The descriptive name for the alarm.

        ", "AlarmNames$member": null, "DescribeAlarmHistoryInput$AlarmName": "

        The name of the alarm.

        ", "MetricAlarm$AlarmName": "

        The name of the alarm.

        ", "PutMetricAlarmInput$AlarmName": "

        The descriptive name for the alarm. This name must be unique within the user's AWS account

        ", "SetAlarmStateInput$AlarmName": "

        The descriptive name for the alarm. This name must be unique within the user's AWS account. The maximum length is 255 characters.

        " } }, "AlarmNamePrefix": { "base": null, "refs": { "DescribeAlarmsInput$AlarmNamePrefix": "

        The alarm name prefix. AlarmNames cannot be specified if this parameter is specified.

        " } }, "AlarmNames": { "base": null, "refs": { "DeleteAlarmsInput$AlarmNames": "

        A list of alarms to be deleted.

        ", "DescribeAlarmsInput$AlarmNames": "

        A list of alarm names to retrieve information for.

        ", "DisableAlarmActionsInput$AlarmNames": "

        The names of the alarms to disable actions for.

        ", "EnableAlarmActionsInput$AlarmNames": "

        The names of the alarms to enable actions for.

        " } }, "AwsQueryErrorMessage": { "base": null, "refs": { "InvalidParameterCombinationException$message": "

        ", "InvalidParameterValueException$message": "

        ", "MissingRequiredParameterException$message": "

        " } }, "ComparisonOperator": { "base": null, "refs": { "MetricAlarm$ComparisonOperator": "

        The arithmetic operation to use when comparing the specified Statistic and Threshold. The specified Statistic value is used as the first operand.

        ", "PutMetricAlarmInput$ComparisonOperator": "

        The arithmetic operation to use when comparing the specified Statistic and Threshold. The specified Statistic value is used as the first operand.

        " } }, "Datapoint": { "base": "

        The Datapoint data type encapsulates the statistical data that Amazon CloudWatch computes from metric data.

        ", "refs": { "Datapoints$member": null } }, "DatapointValue": { "base": null, "refs": { "Datapoint$SampleCount": "

        The number of metric values that contributed to the aggregate value of this datapoint.

        ", "Datapoint$Average": "

        The average of metric values that correspond to the datapoint.

        ", "Datapoint$Sum": "

        The sum of metric values used for the datapoint.

        ", "Datapoint$Minimum": "

        The minimum metric value used for the datapoint.

        ", "Datapoint$Maximum": "

        The maximum of the metric value used for the datapoint.

        ", "MetricDatum$Value": "

        The value for the metric.

        Although the Value parameter accepts numbers of type Double, Amazon CloudWatch rejects values that are either too small or too large. Values must be in the range of 8.515920e-109 to 1.174271e+108 (Base 10) or 2e-360 to 2e360 (Base 2). In addition, special values (e.g., NaN, +Infinity, -Infinity) are not supported.

        ", "StatisticSet$SampleCount": "

        The number of samples used for the statistic set.

        ", "StatisticSet$Sum": "

        The sum of values for the sample set.

        ", "StatisticSet$Minimum": "

        The minimum value of the sample set.

        ", "StatisticSet$Maximum": "

        The maximum value of the sample set.

        " } }, "Datapoints": { "base": null, "refs": { "GetMetricStatisticsOutput$Datapoints": "

        The datapoints for the specified metric.

        " } }, "DeleteAlarmsInput": { "base": "

        Describes the inputs for DeleteAlarms.

        ", "refs": { } }, "DescribeAlarmHistoryInput": { "base": "

        Describes the inputs for DescribeAlarmHistory.

        ", "refs": { } }, "DescribeAlarmHistoryOutput": { "base": "

        The output for DescribeAlarmHistory.

        ", "refs": { } }, "DescribeAlarmsForMetricInput": { "base": "

        Describes the inputs for DescribeAlarmsForMetric.

        ", "refs": { } }, "DescribeAlarmsForMetricOutput": { "base": "

        The output for DescribeAlarmsForMetric.

        ", "refs": { } }, "DescribeAlarmsInput": { "base": "

        Describes the inputs for DescribeAlarms.

        ", "refs": { } }, "DescribeAlarmsOutput": { "base": "

        The output for DescribeAlarms.

        ", "refs": { } }, "Dimension": { "base": "

        The Dimension data type further expands on the identity of a metric using a Name, Value pair.

        For examples that use one or more dimensions, see PutMetricData.

        ", "refs": { "Dimensions$member": null } }, "DimensionFilter": { "base": "

        The DimensionFilter data type is used to filter ListMetrics results.

        ", "refs": { "DimensionFilters$member": null } }, "DimensionFilters": { "base": null, "refs": { "ListMetricsInput$Dimensions": "

        A list of dimensions to filter against.

        " } }, "DimensionName": { "base": null, "refs": { "Dimension$Name": "

        The name of the dimension.

        ", "DimensionFilter$Name": "

        The dimension name to be matched.

        " } }, "DimensionValue": { "base": null, "refs": { "Dimension$Value": "

        The value representing the dimension measurement

        ", "DimensionFilter$Value": "

        The value of the dimension to be matched.

        Specifying a Name without specifying a Value returns all values associated with that Name.

        " } }, "Dimensions": { "base": null, "refs": { "DescribeAlarmsForMetricInput$Dimensions": "

        The list of dimensions associated with the metric. If the metric has any associated dimensions, you must specify them in order for the DescribeAlarmsForMetric to succeed.

        ", "GetMetricStatisticsInput$Dimensions": "

        A list of dimensions describing qualities of the metric.

        ", "Metric$Dimensions": "

        A list of dimensions associated with the metric.

        ", "MetricAlarm$Dimensions": "

        The list of dimensions associated with the alarm's associated metric.

        ", "MetricDatum$Dimensions": "

        A list of dimensions associated with the metric. Note, when using the Dimensions value in a query, you need to append .member.N to it (e.g., Dimensions.member.N).

        ", "PutMetricAlarmInput$Dimensions": "

        The dimensions for the alarm's associated metric.

        " } }, "DisableAlarmActionsInput": { "base": "

        ", "refs": { } }, "EnableAlarmActionsInput": { "base": "

        Describes the inputs for EnableAlarmActions.

        ", "refs": { } }, "ErrorMessage": { "base": null, "refs": { "InvalidFormatFault$message": "

        ", "InvalidNextToken$message": "

        ", "LimitExceededFault$message": "

        ", "ResourceNotFound$message": "

        " } }, "EvaluationPeriods": { "base": null, "refs": { "MetricAlarm$EvaluationPeriods": "

        The number of periods over which data is compared to the specified threshold.

        ", "PutMetricAlarmInput$EvaluationPeriods": "

        The number of periods over which data is compared to the specified threshold.

        " } }, "FaultDescription": { "base": null, "refs": { "InternalServiceFault$Message": "

        " } }, "GetMetricStatisticsInput": { "base": "

        Describes the inputs for GetMetricStatistics.

        ", "refs": { } }, "GetMetricStatisticsOutput": { "base": "

        The output for GetMetricStatistics.

        ", "refs": { } }, "HistoryData": { "base": null, "refs": { "AlarmHistoryItem$HistoryData": "

        Machine-readable data about the alarm in JSON format.

        " } }, "HistoryItemType": { "base": null, "refs": { "AlarmHistoryItem$HistoryItemType": "

        The type of alarm history item.

        ", "DescribeAlarmHistoryInput$HistoryItemType": "

        The type of alarm histories to retrieve.

        " } }, "HistorySummary": { "base": null, "refs": { "AlarmHistoryItem$HistorySummary": "

        A human-readable summary of the alarm history.

        " } }, "InternalServiceFault": { "base": "

        Indicates that the request processing has failed due to some unknown error, exception, or failure.

        ", "refs": { } }, "InvalidFormatFault": { "base": "

        Data was not syntactically valid JSON.

        ", "refs": { } }, "InvalidNextToken": { "base": "

        The next token specified is invalid.

        ", "refs": { } }, "InvalidParameterCombinationException": { "base": "

        Parameters that must not be used together were used together.

        ", "refs": { } }, "InvalidParameterValueException": { "base": "

        Bad or out-of-range value was supplied for the input parameter.

        ", "refs": { } }, "LimitExceededFault": { "base": "

        The quota for alarms for this customer has already been reached.

        ", "refs": { } }, "ListMetricsInput": { "base": "

        Describes the inputs for ListMetrics.

        ", "refs": { } }, "ListMetricsOutput": { "base": "

        The output for ListMetrics.

        ", "refs": { } }, "MaxRecords": { "base": null, "refs": { "DescribeAlarmHistoryInput$MaxRecords": "

        The maximum number of alarm history records to retrieve.

        ", "DescribeAlarmsInput$MaxRecords": "

        The maximum number of alarm descriptions to retrieve.

        " } }, "Metric": { "base": "

        The Metric data type contains information about a specific metric. If you call ListMetrics, Amazon CloudWatch returns information contained by this data type.

        The example in the Examples section publishes two metrics named buffers and latency. Both metrics are in the examples namespace. Both metrics have two dimensions, InstanceID and InstanceType.

        ", "refs": { "Metrics$member": null } }, "MetricAlarm": { "base": "

        The MetricAlarm data type represents an alarm. You can use PutMetricAlarm to create or update an alarm.

        ", "refs": { "MetricAlarms$member": null } }, "MetricAlarms": { "base": null, "refs": { "DescribeAlarmsForMetricOutput$MetricAlarms": "

        A list of information for each alarm with the specified metric.

        ", "DescribeAlarmsOutput$MetricAlarms": "

        A list of information for the specified alarms.

        " } }, "MetricData": { "base": null, "refs": { "PutMetricDataInput$MetricData": "

        A list of data describing the metric.

        " } }, "MetricDatum": { "base": "

        The MetricDatum data type encapsulates the information sent with PutMetricData to either create a new metric or add new values to be aggregated into an existing metric.

        ", "refs": { "MetricData$member": null } }, "MetricLabel": { "base": null, "refs": { "GetMetricStatisticsOutput$Label": "

        A label describing the specified metric.

        " } }, "MetricName": { "base": null, "refs": { "DescribeAlarmsForMetricInput$MetricName": "

        The name of the metric.

        ", "GetMetricStatisticsInput$MetricName": "

        The name of the metric, with or without spaces.

        ", "ListMetricsInput$MetricName": "

        The name of the metric to filter against.

        ", "Metric$MetricName": "

        The name of the metric.

        ", "MetricAlarm$MetricName": "

        The name of the alarm's metric.

        ", "MetricDatum$MetricName": "

        The name of the metric.

        ", "PutMetricAlarmInput$MetricName": "

        The name for the alarm's associated metric.

        " } }, "Metrics": { "base": null, "refs": { "ListMetricsOutput$Metrics": "

        A list of metrics used to generate statistics for an AWS account.

        " } }, "MissingRequiredParameterException": { "base": "

        An input parameter that is mandatory for processing the request is not supplied.

        ", "refs": { } }, "Namespace": { "base": null, "refs": { "DescribeAlarmsForMetricInput$Namespace": "

        The namespace of the metric.

        ", "GetMetricStatisticsInput$Namespace": "

        The namespace of the metric, with or without spaces.

        ", "ListMetricsInput$Namespace": "

        The namespace to filter against.

        ", "Metric$Namespace": "

        The namespace of the metric.

        ", "MetricAlarm$Namespace": "

        The namespace of alarm's associated metric.

        ", "PutMetricAlarmInput$Namespace": "

        The namespace for the alarm's associated metric.

        ", "PutMetricDataInput$Namespace": "

        The namespace for the metric data.

        You cannot specify a namespace that begins with \"AWS/\". Namespaces that begin with \"AWS/\" are reserved for other Amazon Web Services products that send metrics to Amazon CloudWatch.

        " } }, "NextToken": { "base": null, "refs": { "DescribeAlarmHistoryInput$NextToken": "

        The token returned by a previous call to indicate that there is more data available.

        ", "DescribeAlarmHistoryOutput$NextToken": "

        A string that marks the start of the next batch of returned results.

        ", "DescribeAlarmsInput$NextToken": "

        The token returned by a previous call to indicate that there is more data available.

        ", "DescribeAlarmsOutput$NextToken": "

        A string that marks the start of the next batch of returned results.

        ", "ListMetricsInput$NextToken": "

        The token returned by a previous call to indicate that there is more data available.

        ", "ListMetricsOutput$NextToken": "

        A string that marks the start of the next batch of returned results.

        " } }, "Period": { "base": null, "refs": { "DescribeAlarmsForMetricInput$Period": "

        The period in seconds over which the statistic is applied.

        ", "GetMetricStatisticsInput$Period": "

        The granularity, in seconds, of the returned datapoints. A Period can be as short as one minute (60 seconds) or as long as one day (86,400 seconds), and must be a multiple of 60. The default value is 60.

        ", "MetricAlarm$Period": "

        The period in seconds over which the statistic is applied.

        ", "PutMetricAlarmInput$Period": "

        The period in seconds over which the specified statistic is applied.

        " } }, "PutMetricAlarmInput": { "base": "

        Describes the inputs for PutMetricAlarm.

        ", "refs": { } }, "PutMetricDataInput": { "base": "

        Describes the inputs for PutMetricData.

        ", "refs": { } }, "ResourceList": { "base": null, "refs": { "MetricAlarm$OKActions": "

        The list of actions to execute when this alarm transitions into an OK state from any other state. Each action is specified as an Amazon Resource Name (ARN).

        ", "MetricAlarm$AlarmActions": "

        The list of actions to execute when this alarm transitions into an ALARM state from any other state. Each action is specified as an Amazon Resource Name (ARN).

        ", "MetricAlarm$InsufficientDataActions": "

        The list of actions to execute when this alarm transitions into an INSUFFICIENT_DATA state from any other state. Each action is specified as an Amazon Resource Name (ARN).

        The current WSDL lists this attribute as UnknownActions.

        ", "PutMetricAlarmInput$OKActions": "

        The list of actions to execute when this alarm transitions into an OK state from any other state. Each action is specified as an Amazon Resource Name (ARN).

        Valid Values: arn:aws:automate:region (e.g., us-east-1):ec2:stop | arn:aws:automate:region (e.g., us-east-1):ec2:terminate | arn:aws:automate:region (e.g., us-east-1):ec2:recover

        Valid Values (for use with IAM roles): arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Stop/1.0 | arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Terminate/1.0 | arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Reboot/1.0

        Note: You must create at least one stop, terminate, or reboot alarm using the Amazon EC2 or CloudWatch console to create the EC2ActionsAccess IAM role for the first time. After this IAM role is created, you can create stop, terminate, or reboot alarms using the CLI.

        ", "PutMetricAlarmInput$AlarmActions": "

        The list of actions to execute when this alarm transitions into an ALARM state from any other state. Each action is specified as an Amazon Resource Name (ARN).

        Valid Values: arn:aws:automate:region (e.g., us-east-1):ec2:stop | arn:aws:automate:region (e.g., us-east-1):ec2:terminate | arn:aws:automate:region (e.g., us-east-1):ec2:recover

        Valid Values (for use with IAM roles): arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Stop/1.0 | arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Terminate/1.0 | arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Reboot/1.0

        Note: You must create at least one stop, terminate, or reboot alarm using the Amazon EC2 or CloudWatch console to create the EC2ActionsAccess IAM role for the first time. After this IAM role is created, you can create stop, terminate, or reboot alarms using the CLI.

        ", "PutMetricAlarmInput$InsufficientDataActions": "

        The list of actions to execute when this alarm transitions into an INSUFFICIENT_DATA state from any other state. Each action is specified as an Amazon Resource Name (ARN).

        Valid Values: arn:aws:automate:region (e.g., us-east-1):ec2:stop | arn:aws:automate:region (e.g., us-east-1):ec2:terminate | arn:aws:automate:region (e.g., us-east-1):ec2:recover

        Valid Values (for use with IAM roles): arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Stop/1.0 | arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Terminate/1.0 | arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Reboot/1.0

        Note: You must create at least one stop, terminate, or reboot alarm using the Amazon EC2 or CloudWatch console to create the EC2ActionsAccess IAM role for the first time. After this IAM role is created, you can create stop, terminate, or reboot alarms using the CLI.

        " } }, "ResourceName": { "base": null, "refs": { "ResourceList$member": null } }, "ResourceNotFound": { "base": "

        The named resource does not exist.

        ", "refs": { } }, "SetAlarmStateInput": { "base": "

        Describes the inputs for SetAlarmState.

        ", "refs": { } }, "StandardUnit": { "base": null, "refs": { "Datapoint$Unit": "

        The standard unit used for the datapoint.

        ", "DescribeAlarmsForMetricInput$Unit": "

        The unit for the metric.

        ", "GetMetricStatisticsInput$Unit": "

        The specific unit for a given metric. Metrics may be reported in multiple units. Not supplying a unit results in all units being returned. If the metric only ever reports one unit, specifying a unit will have no effect.

        ", "MetricAlarm$Unit": "

        The unit of the alarm's associated metric.

        ", "MetricDatum$Unit": "

        The unit of the metric.

        ", "PutMetricAlarmInput$Unit": "

        The statistic's unit of measure. For example, the units for the Amazon EC2 NetworkIn metric are Bytes because NetworkIn tracks the number of bytes that an instance receives on all network interfaces. You can also specify a unit when you create a custom metric. Units help provide conceptual meaning to your data. Metric data points that specify a unit of measure, such as Percent, are aggregated separately.

        Note: If you specify a unit, you must use a unit that is appropriate for the metric. Otherwise, this can cause an Amazon CloudWatch alarm to get stuck in the INSUFFICIENT DATA state.

        " } }, "StateReason": { "base": null, "refs": { "MetricAlarm$StateReason": "

        A human-readable explanation for the alarm's state.

        ", "SetAlarmStateInput$StateReason": "

        The reason that this alarm is set to this specific state (in human-readable text format)

        " } }, "StateReasonData": { "base": null, "refs": { "MetricAlarm$StateReasonData": "

        An explanation for the alarm's state in machine-readable JSON format

        ", "SetAlarmStateInput$StateReasonData": "

        The reason that this alarm is set to this specific state (in machine-readable JSON format)

        " } }, "StateValue": { "base": null, "refs": { "DescribeAlarmsInput$StateValue": "

        The state value to be used in matching alarms.

        ", "MetricAlarm$StateValue": "

        The state value for the alarm.

        ", "SetAlarmStateInput$StateValue": "

        The value of the state.

        " } }, "Statistic": { "base": null, "refs": { "DescribeAlarmsForMetricInput$Statistic": "

        The statistic for the metric.

        ", "MetricAlarm$Statistic": "

        The statistic to apply to the alarm's associated metric.

        ", "PutMetricAlarmInput$Statistic": "

        The statistic to apply to the alarm's associated metric.

        ", "Statistics$member": null } }, "StatisticSet": { "base": "

        The StatisticSet data type describes the StatisticValues component of MetricDatum, and represents a set of statistics that describes a specific metric.

        ", "refs": { "MetricDatum$StatisticValues": "

        A set of statistical values describing the metric.

        " } }, "Statistics": { "base": null, "refs": { "GetMetricStatisticsInput$Statistics": "

        The metric statistics to return. For information about specific statistics returned by GetMetricStatistics, see Statistics in the Amazon CloudWatch Developer Guide.

        " } }, "Threshold": { "base": null, "refs": { "MetricAlarm$Threshold": "

        The value against which the specified statistic is compared.

        ", "PutMetricAlarmInput$Threshold": "

        The value against which the specified statistic is compared.

        " } }, "Timestamp": { "base": null, "refs": { "AlarmHistoryItem$Timestamp": "

        The time stamp for the alarm history item.

        ", "Datapoint$Timestamp": "

        The time stamp used for the datapoint.

        ", "DescribeAlarmHistoryInput$StartDate": "

        The starting date to retrieve alarm history.

        ", "DescribeAlarmHistoryInput$EndDate": "

        The ending date to retrieve alarm history.

        ", "GetMetricStatisticsInput$StartTime": "

        The time stamp to use for determining the first datapoint to return. The value specified is inclusive; results include datapoints with the time stamp specified. The time stamp must be in ISO 8601 UTC format (e.g., 2014-09-03T23:00:00Z).

        The specified start time is rounded down to the nearest value. Datapoints are returned for start times up to two weeks in the past. Specified start times that are more than two weeks in the past will not return datapoints for metrics that are older than two weeks.

        Data that is timestamped 24 hours or more in the past may take in excess of 48 hours to become available from submission time using GetMetricStatistics.

        ", "GetMetricStatisticsInput$EndTime": "

        The time stamp to use for determining the last datapoint to return. The value specified is exclusive; results will include datapoints up to the time stamp specified. The time stamp must be in ISO 8601 UTC format (e.g., 2014-09-03T23:00:00Z).

        ", "MetricAlarm$AlarmConfigurationUpdatedTimestamp": "

        The time stamp of the last update to the alarm configuration.

        ", "MetricAlarm$StateUpdatedTimestamp": "

        The time stamp of the last update to the alarm's state.

        ", "MetricDatum$Timestamp": "

        The time stamp used for the metric in ISO 8601 Universal Coordinated Time (UTC) format. If not specified, the default value is set to the time the metric data was received.

        " } } } } aws-sdk-go-1.4.22/models/apis/monitoring/2010-08-01/examples-1.json000066400000000000000000000000541300374646400240620ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/monitoring/2010-08-01/paginators-1.json000066400000000000000000000010761300374646400244200ustar00rootroot00000000000000{ "pagination": { "DescribeAlarmHistory": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxRecords", "result_key": "AlarmHistoryItems" }, "DescribeAlarms": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxRecords", "result_key": "MetricAlarms" }, "DescribeAlarmsForMetric": { "result_key": "MetricAlarms" }, "ListMetrics": { "input_token": "NextToken", "output_token": "NextToken", "result_key": "Metrics" } } } aws-sdk-go-1.4.22/models/apis/monitoring/2010-08-01/waiters-2.json000066400000000000000000000005171300374646400237270ustar00rootroot00000000000000{ "version": 2, "waiters": { "AlarmExists": { "delay": 5, "maxAttempts": 40, "operation": "DescribeAlarms", "acceptors": [ { "matcher": "path", "expected": true, "argument": "length(MetricAlarms[]) > `0`", "state": "success" } ] } } } aws-sdk-go-1.4.22/models/apis/opsworks/000077500000000000000000000000001300374646400176715ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/opsworks/2013-02-18/000077500000000000000000000000001300374646400207235ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/opsworks/2013-02-18/api-2.json000066400000000000000000002125471300374646400225410ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2013-02-18", "endpointPrefix":"opsworks", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"AWS OpsWorks", "signatureVersion":"v4", "targetPrefix":"OpsWorks_20130218" }, "operations":{ "AssignInstance":{ "name":"AssignInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssignInstanceRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "AssignVolume":{ "name":"AssignVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssignVolumeRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "AssociateElasticIp":{ "name":"AssociateElasticIp", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssociateElasticIpRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "AttachElasticLoadBalancer":{ "name":"AttachElasticLoadBalancer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AttachElasticLoadBalancerRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "CloneStack":{ "name":"CloneStack", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CloneStackRequest"}, "output":{"shape":"CloneStackResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "CreateApp":{ "name":"CreateApp", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateAppRequest"}, "output":{"shape":"CreateAppResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "CreateDeployment":{ "name":"CreateDeployment", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDeploymentRequest"}, "output":{"shape":"CreateDeploymentResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "CreateInstance":{ "name":"CreateInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateInstanceRequest"}, "output":{"shape":"CreateInstanceResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "CreateLayer":{ "name":"CreateLayer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateLayerRequest"}, "output":{"shape":"CreateLayerResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "CreateStack":{ "name":"CreateStack", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateStackRequest"}, "output":{"shape":"CreateStackResult"}, "errors":[ {"shape":"ValidationException"} ] }, "CreateUserProfile":{ "name":"CreateUserProfile", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateUserProfileRequest"}, "output":{"shape":"CreateUserProfileResult"}, "errors":[ {"shape":"ValidationException"} ] }, "DeleteApp":{ "name":"DeleteApp", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteAppRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DeleteInstance":{ "name":"DeleteInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteInstanceRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DeleteLayer":{ "name":"DeleteLayer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteLayerRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DeleteStack":{ "name":"DeleteStack", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteStackRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DeleteUserProfile":{ "name":"DeleteUserProfile", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteUserProfileRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DeregisterEcsCluster":{ "name":"DeregisterEcsCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeregisterEcsClusterRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DeregisterElasticIp":{ "name":"DeregisterElasticIp", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeregisterElasticIpRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DeregisterInstance":{ "name":"DeregisterInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeregisterInstanceRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DeregisterRdsDbInstance":{ "name":"DeregisterRdsDbInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeregisterRdsDbInstanceRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DeregisterVolume":{ "name":"DeregisterVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeregisterVolumeRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeAgentVersions":{ "name":"DescribeAgentVersions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAgentVersionsRequest"}, "output":{"shape":"DescribeAgentVersionsResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeApps":{ "name":"DescribeApps", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAppsRequest"}, "output":{"shape":"DescribeAppsResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeCommands":{ "name":"DescribeCommands", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeCommandsRequest"}, "output":{"shape":"DescribeCommandsResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeDeployments":{ "name":"DescribeDeployments", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDeploymentsRequest"}, "output":{"shape":"DescribeDeploymentsResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeEcsClusters":{ "name":"DescribeEcsClusters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEcsClustersRequest"}, "output":{"shape":"DescribeEcsClustersResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeElasticIps":{ "name":"DescribeElasticIps", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeElasticIpsRequest"}, "output":{"shape":"DescribeElasticIpsResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeElasticLoadBalancers":{ "name":"DescribeElasticLoadBalancers", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeElasticLoadBalancersRequest"}, "output":{"shape":"DescribeElasticLoadBalancersResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeInstances":{ "name":"DescribeInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInstancesRequest"}, "output":{"shape":"DescribeInstancesResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeLayers":{ "name":"DescribeLayers", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeLayersRequest"}, "output":{"shape":"DescribeLayersResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeLoadBasedAutoScaling":{ "name":"DescribeLoadBasedAutoScaling", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeLoadBasedAutoScalingRequest"}, "output":{"shape":"DescribeLoadBasedAutoScalingResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeMyUserProfile":{ "name":"DescribeMyUserProfile", "http":{ "method":"POST", "requestUri":"/" }, "output":{"shape":"DescribeMyUserProfileResult"} }, "DescribePermissions":{ "name":"DescribePermissions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribePermissionsRequest"}, "output":{"shape":"DescribePermissionsResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeRaidArrays":{ "name":"DescribeRaidArrays", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRaidArraysRequest"}, "output":{"shape":"DescribeRaidArraysResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeRdsDbInstances":{ "name":"DescribeRdsDbInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRdsDbInstancesRequest"}, "output":{"shape":"DescribeRdsDbInstancesResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeServiceErrors":{ "name":"DescribeServiceErrors", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeServiceErrorsRequest"}, "output":{"shape":"DescribeServiceErrorsResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeStackProvisioningParameters":{ "name":"DescribeStackProvisioningParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeStackProvisioningParametersRequest"}, "output":{"shape":"DescribeStackProvisioningParametersResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeStackSummary":{ "name":"DescribeStackSummary", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeStackSummaryRequest"}, "output":{"shape":"DescribeStackSummaryResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeStacks":{ "name":"DescribeStacks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeStacksRequest"}, "output":{"shape":"DescribeStacksResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeTimeBasedAutoScaling":{ "name":"DescribeTimeBasedAutoScaling", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTimeBasedAutoScalingRequest"}, "output":{"shape":"DescribeTimeBasedAutoScalingResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeUserProfiles":{ "name":"DescribeUserProfiles", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeUserProfilesRequest"}, "output":{"shape":"DescribeUserProfilesResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeVolumes":{ "name":"DescribeVolumes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVolumesRequest"}, "output":{"shape":"DescribeVolumesResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "DetachElasticLoadBalancer":{ "name":"DetachElasticLoadBalancer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DetachElasticLoadBalancerRequest"}, "errors":[ {"shape":"ResourceNotFoundException"} ] }, "DisassociateElasticIp":{ "name":"DisassociateElasticIp", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisassociateElasticIpRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "GetHostnameSuggestion":{ "name":"GetHostnameSuggestion", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetHostnameSuggestionRequest"}, "output":{"shape":"GetHostnameSuggestionResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "GrantAccess":{ "name":"GrantAccess", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GrantAccessRequest"}, "output":{"shape":"GrantAccessResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "RebootInstance":{ "name":"RebootInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RebootInstanceRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "RegisterEcsCluster":{ "name":"RegisterEcsCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterEcsClusterRequest"}, "output":{"shape":"RegisterEcsClusterResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "RegisterElasticIp":{ "name":"RegisterElasticIp", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterElasticIpRequest"}, "output":{"shape":"RegisterElasticIpResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "RegisterInstance":{ "name":"RegisterInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterInstanceRequest"}, "output":{"shape":"RegisterInstanceResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "RegisterRdsDbInstance":{ "name":"RegisterRdsDbInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterRdsDbInstanceRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "RegisterVolume":{ "name":"RegisterVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterVolumeRequest"}, "output":{"shape":"RegisterVolumeResult"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "SetLoadBasedAutoScaling":{ "name":"SetLoadBasedAutoScaling", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetLoadBasedAutoScalingRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "SetPermission":{ "name":"SetPermission", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetPermissionRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "SetTimeBasedAutoScaling":{ "name":"SetTimeBasedAutoScaling", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetTimeBasedAutoScalingRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "StartInstance":{ "name":"StartInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartInstanceRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "StartStack":{ "name":"StartStack", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartStackRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "StopInstance":{ "name":"StopInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopInstanceRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "StopStack":{ "name":"StopStack", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopStackRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "UnassignInstance":{ "name":"UnassignInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UnassignInstanceRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "UnassignVolume":{ "name":"UnassignVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UnassignVolumeRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "UpdateApp":{ "name":"UpdateApp", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateAppRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "UpdateElasticIp":{ "name":"UpdateElasticIp", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateElasticIpRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "UpdateInstance":{ "name":"UpdateInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateInstanceRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "UpdateLayer":{ "name":"UpdateLayer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateLayerRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "UpdateMyUserProfile":{ "name":"UpdateMyUserProfile", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateMyUserProfileRequest"}, "errors":[ {"shape":"ValidationException"} ] }, "UpdateRdsDbInstance":{ "name":"UpdateRdsDbInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateRdsDbInstanceRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "UpdateStack":{ "name":"UpdateStack", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateStackRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "UpdateUserProfile":{ "name":"UpdateUserProfile", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateUserProfileRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] }, "UpdateVolume":{ "name":"UpdateVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateVolumeRequest"}, "errors":[ {"shape":"ValidationException"}, {"shape":"ResourceNotFoundException"} ] } }, "shapes":{ "AgentVersion":{ "type":"structure", "members":{ "Version":{"shape":"String"}, "ConfigurationManager":{"shape":"StackConfigurationManager"} } }, "AgentVersions":{ "type":"list", "member":{"shape":"AgentVersion"} }, "App":{ "type":"structure", "members":{ "AppId":{"shape":"String"}, "StackId":{"shape":"String"}, "Shortname":{"shape":"String"}, "Name":{"shape":"String"}, "Description":{"shape":"String"}, "DataSources":{"shape":"DataSources"}, "Type":{"shape":"AppType"}, "AppSource":{"shape":"Source"}, "Domains":{"shape":"Strings"}, "EnableSsl":{"shape":"Boolean"}, "SslConfiguration":{"shape":"SslConfiguration"}, "Attributes":{"shape":"AppAttributes"}, "CreatedAt":{"shape":"String"}, "Environment":{"shape":"EnvironmentVariables"} } }, "AppAttributes":{ "type":"map", "key":{"shape":"AppAttributesKeys"}, "value":{"shape":"String"} }, "AppAttributesKeys":{ "type":"string", "enum":[ "DocumentRoot", "RailsEnv", "AutoBundleOnDeploy", "AwsFlowRubySettings" ] }, "AppType":{ "type":"string", "enum":[ "aws-flow-ruby", "java", "rails", "php", "nodejs", "static", "other" ] }, "Apps":{ "type":"list", "member":{"shape":"App"} }, "Architecture":{ "type":"string", "enum":[ "x86_64", "i386" ] }, "AssignInstanceRequest":{ "type":"structure", "required":[ "InstanceId", "LayerIds" ], "members":{ "InstanceId":{"shape":"String"}, "LayerIds":{"shape":"Strings"} } }, "AssignVolumeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "VolumeId":{"shape":"String"}, "InstanceId":{"shape":"String"} } }, "AssociateElasticIpRequest":{ "type":"structure", "required":["ElasticIp"], "members":{ "ElasticIp":{"shape":"String"}, "InstanceId":{"shape":"String"} } }, "AttachElasticLoadBalancerRequest":{ "type":"structure", "required":[ "ElasticLoadBalancerName", "LayerId" ], "members":{ "ElasticLoadBalancerName":{"shape":"String"}, "LayerId":{"shape":"String"} } }, "AutoScalingThresholds":{ "type":"structure", "members":{ "InstanceCount":{"shape":"Integer"}, "ThresholdsWaitTime":{"shape":"Minute"}, "IgnoreMetricsTime":{"shape":"Minute"}, "CpuThreshold":{"shape":"Double"}, "MemoryThreshold":{"shape":"Double"}, "LoadThreshold":{"shape":"Double"}, "Alarms":{"shape":"Strings"} } }, "AutoScalingType":{ "type":"string", "enum":[ "load", "timer" ] }, "BlockDeviceMapping":{ "type":"structure", "members":{ "DeviceName":{"shape":"String"}, "NoDevice":{"shape":"String"}, "VirtualName":{"shape":"String"}, "Ebs":{"shape":"EbsBlockDevice"} } }, "BlockDeviceMappings":{ "type":"list", "member":{"shape":"BlockDeviceMapping"} }, "Boolean":{ "type":"boolean", "box":true }, "ChefConfiguration":{ "type":"structure", "members":{ "ManageBerkshelf":{"shape":"Boolean"}, "BerkshelfVersion":{"shape":"String"} } }, "CloneStackRequest":{ "type":"structure", "required":[ "SourceStackId", "ServiceRoleArn" ], "members":{ "SourceStackId":{"shape":"String"}, "Name":{"shape":"String"}, "Region":{"shape":"String"}, "VpcId":{"shape":"String"}, "Attributes":{"shape":"StackAttributes"}, "ServiceRoleArn":{"shape":"String"}, "DefaultInstanceProfileArn":{"shape":"String"}, "DefaultOs":{"shape":"String"}, "HostnameTheme":{"shape":"String"}, "DefaultAvailabilityZone":{"shape":"String"}, "DefaultSubnetId":{"shape":"String"}, "CustomJson":{"shape":"String"}, "ConfigurationManager":{"shape":"StackConfigurationManager"}, "ChefConfiguration":{"shape":"ChefConfiguration"}, "UseCustomCookbooks":{"shape":"Boolean"}, "UseOpsworksSecurityGroups":{"shape":"Boolean"}, "CustomCookbooksSource":{"shape":"Source"}, "DefaultSshKeyName":{"shape":"String"}, "ClonePermissions":{"shape":"Boolean"}, "CloneAppIds":{"shape":"Strings"}, "DefaultRootDeviceType":{"shape":"RootDeviceType"}, "AgentVersion":{"shape":"String"} } }, "CloneStackResult":{ "type":"structure", "members":{ "StackId":{"shape":"String"} } }, "Command":{ "type":"structure", "members":{ "CommandId":{"shape":"String"}, "InstanceId":{"shape":"String"}, "DeploymentId":{"shape":"String"}, "CreatedAt":{"shape":"DateTime"}, "AcknowledgedAt":{"shape":"DateTime"}, "CompletedAt":{"shape":"DateTime"}, "Status":{"shape":"String"}, "ExitCode":{"shape":"Integer"}, "LogUrl":{"shape":"String"}, "Type":{"shape":"String"} } }, "Commands":{ "type":"list", "member":{"shape":"Command"} }, "CreateAppRequest":{ "type":"structure", "required":[ "StackId", "Name", "Type" ], "members":{ "StackId":{"shape":"String"}, "Shortname":{"shape":"String"}, "Name":{"shape":"String"}, "Description":{"shape":"String"}, "DataSources":{"shape":"DataSources"}, "Type":{"shape":"AppType"}, "AppSource":{"shape":"Source"}, "Domains":{"shape":"Strings"}, "EnableSsl":{"shape":"Boolean"}, "SslConfiguration":{"shape":"SslConfiguration"}, "Attributes":{"shape":"AppAttributes"}, "Environment":{"shape":"EnvironmentVariables"} } }, "CreateAppResult":{ "type":"structure", "members":{ "AppId":{"shape":"String"} } }, "CreateDeploymentRequest":{ "type":"structure", "required":[ "StackId", "Command" ], "members":{ "StackId":{"shape":"String"}, "AppId":{"shape":"String"}, "InstanceIds":{"shape":"Strings"}, "LayerIds":{"shape":"Strings"}, "Command":{"shape":"DeploymentCommand"}, "Comment":{"shape":"String"}, "CustomJson":{"shape":"String"} } }, "CreateDeploymentResult":{ "type":"structure", "members":{ "DeploymentId":{"shape":"String"} } }, "CreateInstanceRequest":{ "type":"structure", "required":[ "StackId", "LayerIds", "InstanceType" ], "members":{ "StackId":{"shape":"String"}, "LayerIds":{"shape":"Strings"}, "InstanceType":{"shape":"String"}, "AutoScalingType":{"shape":"AutoScalingType"}, "Hostname":{"shape":"String"}, "Os":{"shape":"String"}, "AmiId":{"shape":"String"}, "SshKeyName":{"shape":"String"}, "AvailabilityZone":{"shape":"String"}, "VirtualizationType":{"shape":"String"}, "SubnetId":{"shape":"String"}, "Architecture":{"shape":"Architecture"}, "RootDeviceType":{"shape":"RootDeviceType"}, "BlockDeviceMappings":{"shape":"BlockDeviceMappings"}, "InstallUpdatesOnBoot":{"shape":"Boolean"}, "EbsOptimized":{"shape":"Boolean"}, "AgentVersion":{"shape":"String"}, "Tenancy":{"shape":"String"} } }, "CreateInstanceResult":{ "type":"structure", "members":{ "InstanceId":{"shape":"String"} } }, "CreateLayerRequest":{ "type":"structure", "required":[ "StackId", "Type", "Name", "Shortname" ], "members":{ "StackId":{"shape":"String"}, "Type":{"shape":"LayerType"}, "Name":{"shape":"String"}, "Shortname":{"shape":"String"}, "Attributes":{"shape":"LayerAttributes"}, "CustomInstanceProfileArn":{"shape":"String"}, "CustomJson":{"shape":"String"}, "CustomSecurityGroupIds":{"shape":"Strings"}, "Packages":{"shape":"Strings"}, "VolumeConfigurations":{"shape":"VolumeConfigurations"}, "EnableAutoHealing":{"shape":"Boolean"}, "AutoAssignElasticIps":{"shape":"Boolean"}, "AutoAssignPublicIps":{"shape":"Boolean"}, "CustomRecipes":{"shape":"Recipes"}, "InstallUpdatesOnBoot":{"shape":"Boolean"}, "UseEbsOptimizedInstances":{"shape":"Boolean"}, "LifecycleEventConfiguration":{"shape":"LifecycleEventConfiguration"} } }, "CreateLayerResult":{ "type":"structure", "members":{ "LayerId":{"shape":"String"} } }, "CreateStackRequest":{ "type":"structure", "required":[ "Name", "Region", "ServiceRoleArn", "DefaultInstanceProfileArn" ], "members":{ "Name":{"shape":"String"}, "Region":{"shape":"String"}, "VpcId":{"shape":"String"}, "Attributes":{"shape":"StackAttributes"}, "ServiceRoleArn":{"shape":"String"}, "DefaultInstanceProfileArn":{"shape":"String"}, "DefaultOs":{"shape":"String"}, "HostnameTheme":{"shape":"String"}, "DefaultAvailabilityZone":{"shape":"String"}, "DefaultSubnetId":{"shape":"String"}, "CustomJson":{"shape":"String"}, "ConfigurationManager":{"shape":"StackConfigurationManager"}, "ChefConfiguration":{"shape":"ChefConfiguration"}, "UseCustomCookbooks":{"shape":"Boolean"}, "UseOpsworksSecurityGroups":{"shape":"Boolean"}, "CustomCookbooksSource":{"shape":"Source"}, "DefaultSshKeyName":{"shape":"String"}, "DefaultRootDeviceType":{"shape":"RootDeviceType"}, "AgentVersion":{"shape":"String"} } }, "CreateStackResult":{ "type":"structure", "members":{ "StackId":{"shape":"String"} } }, "CreateUserProfileRequest":{ "type":"structure", "required":["IamUserArn"], "members":{ "IamUserArn":{"shape":"String"}, "SshUsername":{"shape":"String"}, "SshPublicKey":{"shape":"String"}, "AllowSelfManagement":{"shape":"Boolean"} } }, "CreateUserProfileResult":{ "type":"structure", "members":{ "IamUserArn":{"shape":"String"} } }, "DailyAutoScalingSchedule":{ "type":"map", "key":{"shape":"Hour"}, "value":{"shape":"Switch"} }, "DataSource":{ "type":"structure", "members":{ "Type":{"shape":"String"}, "Arn":{"shape":"String"}, "DatabaseName":{"shape":"String"} } }, "DataSources":{ "type":"list", "member":{"shape":"DataSource"} }, "DateTime":{"type":"string"}, "DeleteAppRequest":{ "type":"structure", "required":["AppId"], "members":{ "AppId":{"shape":"String"} } }, "DeleteInstanceRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "InstanceId":{"shape":"String"}, "DeleteElasticIp":{"shape":"Boolean"}, "DeleteVolumes":{"shape":"Boolean"} } }, "DeleteLayerRequest":{ "type":"structure", "required":["LayerId"], "members":{ "LayerId":{"shape":"String"} } }, "DeleteStackRequest":{ "type":"structure", "required":["StackId"], "members":{ "StackId":{"shape":"String"} } }, "DeleteUserProfileRequest":{ "type":"structure", "required":["IamUserArn"], "members":{ "IamUserArn":{"shape":"String"} } }, "Deployment":{ "type":"structure", "members":{ "DeploymentId":{"shape":"String"}, "StackId":{"shape":"String"}, "AppId":{"shape":"String"}, "CreatedAt":{"shape":"DateTime"}, "CompletedAt":{"shape":"DateTime"}, "Duration":{"shape":"Integer"}, "IamUserArn":{"shape":"String"}, "Comment":{"shape":"String"}, "Command":{"shape":"DeploymentCommand"}, "Status":{"shape":"String"}, "CustomJson":{"shape":"String"}, "InstanceIds":{"shape":"Strings"} } }, "DeploymentCommand":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"DeploymentCommandName"}, "Args":{"shape":"DeploymentCommandArgs"} } }, "DeploymentCommandArgs":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"Strings"} }, "DeploymentCommandName":{ "type":"string", "enum":[ "install_dependencies", "update_dependencies", "update_custom_cookbooks", "execute_recipes", "configure", "setup", "deploy", "rollback", "start", "stop", "restart", "undeploy" ] }, "Deployments":{ "type":"list", "member":{"shape":"Deployment"} }, "DeregisterEcsClusterRequest":{ "type":"structure", "required":["EcsClusterArn"], "members":{ "EcsClusterArn":{"shape":"String"} } }, "DeregisterElasticIpRequest":{ "type":"structure", "required":["ElasticIp"], "members":{ "ElasticIp":{"shape":"String"} } }, "DeregisterInstanceRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "InstanceId":{"shape":"String"} } }, "DeregisterRdsDbInstanceRequest":{ "type":"structure", "required":["RdsDbInstanceArn"], "members":{ "RdsDbInstanceArn":{"shape":"String"} } }, "DeregisterVolumeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "VolumeId":{"shape":"String"} } }, "DescribeAgentVersionsRequest":{ "type":"structure", "members":{ "StackId":{"shape":"String"}, "ConfigurationManager":{"shape":"StackConfigurationManager"} } }, "DescribeAgentVersionsResult":{ "type":"structure", "members":{ "AgentVersions":{"shape":"AgentVersions"} } }, "DescribeAppsRequest":{ "type":"structure", "members":{ "StackId":{"shape":"String"}, "AppIds":{"shape":"Strings"} } }, "DescribeAppsResult":{ "type":"structure", "members":{ "Apps":{"shape":"Apps"} } }, "DescribeCommandsRequest":{ "type":"structure", "members":{ "DeploymentId":{"shape":"String"}, "InstanceId":{"shape":"String"}, "CommandIds":{"shape":"Strings"} } }, "DescribeCommandsResult":{ "type":"structure", "members":{ "Commands":{"shape":"Commands"} } }, "DescribeDeploymentsRequest":{ "type":"structure", "members":{ "StackId":{"shape":"String"}, "AppId":{"shape":"String"}, "DeploymentIds":{"shape":"Strings"} } }, "DescribeDeploymentsResult":{ "type":"structure", "members":{ "Deployments":{"shape":"Deployments"} } }, "DescribeEcsClustersRequest":{ "type":"structure", "members":{ "EcsClusterArns":{"shape":"Strings"}, "StackId":{"shape":"String"}, "NextToken":{"shape":"String"}, "MaxResults":{"shape":"Integer"} } }, "DescribeEcsClustersResult":{ "type":"structure", "members":{ "EcsClusters":{"shape":"EcsClusters"}, "NextToken":{"shape":"String"} } }, "DescribeElasticIpsRequest":{ "type":"structure", "members":{ "InstanceId":{"shape":"String"}, "StackId":{"shape":"String"}, "Ips":{"shape":"Strings"} } }, "DescribeElasticIpsResult":{ "type":"structure", "members":{ "ElasticIps":{"shape":"ElasticIps"} } }, "DescribeElasticLoadBalancersRequest":{ "type":"structure", "members":{ "StackId":{"shape":"String"}, "LayerIds":{"shape":"Strings"} } }, "DescribeElasticLoadBalancersResult":{ "type":"structure", "members":{ "ElasticLoadBalancers":{"shape":"ElasticLoadBalancers"} } }, "DescribeInstancesRequest":{ "type":"structure", "members":{ "StackId":{"shape":"String"}, "LayerId":{"shape":"String"}, "InstanceIds":{"shape":"Strings"} } }, "DescribeInstancesResult":{ "type":"structure", "members":{ "Instances":{"shape":"Instances"} } }, "DescribeLayersRequest":{ "type":"structure", "members":{ "StackId":{"shape":"String"}, "LayerIds":{"shape":"Strings"} } }, "DescribeLayersResult":{ "type":"structure", "members":{ "Layers":{"shape":"Layers"} } }, "DescribeLoadBasedAutoScalingRequest":{ "type":"structure", "required":["LayerIds"], "members":{ "LayerIds":{"shape":"Strings"} } }, "DescribeLoadBasedAutoScalingResult":{ "type":"structure", "members":{ "LoadBasedAutoScalingConfigurations":{"shape":"LoadBasedAutoScalingConfigurations"} } }, "DescribeMyUserProfileResult":{ "type":"structure", "members":{ "UserProfile":{"shape":"SelfUserProfile"} } }, "DescribePermissionsRequest":{ "type":"structure", "members":{ "IamUserArn":{"shape":"String"}, "StackId":{"shape":"String"} } }, "DescribePermissionsResult":{ "type":"structure", "members":{ "Permissions":{"shape":"Permissions"} } }, "DescribeRaidArraysRequest":{ "type":"structure", "members":{ "InstanceId":{"shape":"String"}, "StackId":{"shape":"String"}, "RaidArrayIds":{"shape":"Strings"} } }, "DescribeRaidArraysResult":{ "type":"structure", "members":{ "RaidArrays":{"shape":"RaidArrays"} } }, "DescribeRdsDbInstancesRequest":{ "type":"structure", "required":["StackId"], "members":{ "StackId":{"shape":"String"}, "RdsDbInstanceArns":{"shape":"Strings"} } }, "DescribeRdsDbInstancesResult":{ "type":"structure", "members":{ "RdsDbInstances":{"shape":"RdsDbInstances"} } }, "DescribeServiceErrorsRequest":{ "type":"structure", "members":{ "StackId":{"shape":"String"}, "InstanceId":{"shape":"String"}, "ServiceErrorIds":{"shape":"Strings"} } }, "DescribeServiceErrorsResult":{ "type":"structure", "members":{ "ServiceErrors":{"shape":"ServiceErrors"} } }, "DescribeStackProvisioningParametersRequest":{ "type":"structure", "required":["StackId"], "members":{ "StackId":{"shape":"String"} } }, "DescribeStackProvisioningParametersResult":{ "type":"structure", "members":{ "AgentInstallerUrl":{"shape":"String"}, "Parameters":{"shape":"Parameters"} } }, "DescribeStackSummaryRequest":{ "type":"structure", "required":["StackId"], "members":{ "StackId":{"shape":"String"} } }, "DescribeStackSummaryResult":{ "type":"structure", "members":{ "StackSummary":{"shape":"StackSummary"} } }, "DescribeStacksRequest":{ "type":"structure", "members":{ "StackIds":{"shape":"Strings"} } }, "DescribeStacksResult":{ "type":"structure", "members":{ "Stacks":{"shape":"Stacks"} } }, "DescribeTimeBasedAutoScalingRequest":{ "type":"structure", "required":["InstanceIds"], "members":{ "InstanceIds":{"shape":"Strings"} } }, "DescribeTimeBasedAutoScalingResult":{ "type":"structure", "members":{ "TimeBasedAutoScalingConfigurations":{"shape":"TimeBasedAutoScalingConfigurations"} } }, "DescribeUserProfilesRequest":{ "type":"structure", "members":{ "IamUserArns":{"shape":"Strings"} } }, "DescribeUserProfilesResult":{ "type":"structure", "members":{ "UserProfiles":{"shape":"UserProfiles"} } }, "DescribeVolumesRequest":{ "type":"structure", "members":{ "InstanceId":{"shape":"String"}, "StackId":{"shape":"String"}, "RaidArrayId":{"shape":"String"}, "VolumeIds":{"shape":"Strings"} } }, "DescribeVolumesResult":{ "type":"structure", "members":{ "Volumes":{"shape":"Volumes"} } }, "DetachElasticLoadBalancerRequest":{ "type":"structure", "required":[ "ElasticLoadBalancerName", "LayerId" ], "members":{ "ElasticLoadBalancerName":{"shape":"String"}, "LayerId":{"shape":"String"} } }, "DisassociateElasticIpRequest":{ "type":"structure", "required":["ElasticIp"], "members":{ "ElasticIp":{"shape":"String"} } }, "Double":{ "type":"double", "box":true }, "EbsBlockDevice":{ "type":"structure", "members":{ "SnapshotId":{"shape":"String"}, "Iops":{"shape":"Integer"}, "VolumeSize":{"shape":"Integer"}, "VolumeType":{"shape":"VolumeType"}, "DeleteOnTermination":{"shape":"Boolean"} } }, "EcsCluster":{ "type":"structure", "members":{ "EcsClusterArn":{"shape":"String"}, "EcsClusterName":{"shape":"String"}, "StackId":{"shape":"String"}, "RegisteredAt":{"shape":"DateTime"} } }, "EcsClusters":{ "type":"list", "member":{"shape":"EcsCluster"} }, "ElasticIp":{ "type":"structure", "members":{ "Ip":{"shape":"String"}, "Name":{"shape":"String"}, "Domain":{"shape":"String"}, "Region":{"shape":"String"}, "InstanceId":{"shape":"String"} } }, "ElasticIps":{ "type":"list", "member":{"shape":"ElasticIp"} }, "ElasticLoadBalancer":{ "type":"structure", "members":{ "ElasticLoadBalancerName":{"shape":"String"}, "Region":{"shape":"String"}, "DnsName":{"shape":"String"}, "StackId":{"shape":"String"}, "LayerId":{"shape":"String"}, "VpcId":{"shape":"String"}, "AvailabilityZones":{"shape":"Strings"}, "SubnetIds":{"shape":"Strings"}, "Ec2InstanceIds":{"shape":"Strings"} } }, "ElasticLoadBalancers":{ "type":"list", "member":{"shape":"ElasticLoadBalancer"} }, "EnvironmentVariable":{ "type":"structure", "required":[ "Key", "Value" ], "members":{ "Key":{"shape":"String"}, "Value":{"shape":"String"}, "Secure":{"shape":"Boolean"} } }, "EnvironmentVariables":{ "type":"list", "member":{"shape":"EnvironmentVariable"} }, "GetHostnameSuggestionRequest":{ "type":"structure", "required":["LayerId"], "members":{ "LayerId":{"shape":"String"} } }, "GetHostnameSuggestionResult":{ "type":"structure", "members":{ "LayerId":{"shape":"String"}, "Hostname":{"shape":"String"} } }, "GrantAccessRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "InstanceId":{"shape":"String"}, "ValidForInMinutes":{"shape":"ValidForInMinutes"} } }, "GrantAccessResult":{ "type":"structure", "members":{ "TemporaryCredential":{"shape":"TemporaryCredential"} } }, "Hour":{"type":"string"}, "Instance":{ "type":"structure", "members":{ "AgentVersion":{"shape":"String"}, "AmiId":{"shape":"String"}, "Architecture":{"shape":"Architecture"}, "AutoScalingType":{"shape":"AutoScalingType"}, "AvailabilityZone":{"shape":"String"}, "BlockDeviceMappings":{"shape":"BlockDeviceMappings"}, "CreatedAt":{"shape":"DateTime"}, "EbsOptimized":{"shape":"Boolean"}, "Ec2InstanceId":{"shape":"String"}, "EcsClusterArn":{"shape":"String"}, "EcsContainerInstanceArn":{"shape":"String"}, "ElasticIp":{"shape":"String"}, "Hostname":{"shape":"String"}, "InfrastructureClass":{"shape":"String"}, "InstallUpdatesOnBoot":{"shape":"Boolean"}, "InstanceId":{"shape":"String"}, "InstanceProfileArn":{"shape":"String"}, "InstanceType":{"shape":"String"}, "LastServiceErrorId":{"shape":"String"}, "LayerIds":{"shape":"Strings"}, "Os":{"shape":"String"}, "Platform":{"shape":"String"}, "PrivateDns":{"shape":"String"}, "PrivateIp":{"shape":"String"}, "PublicDns":{"shape":"String"}, "PublicIp":{"shape":"String"}, "RegisteredBy":{"shape":"String"}, "ReportedAgentVersion":{"shape":"String"}, "ReportedOs":{"shape":"ReportedOs"}, "RootDeviceType":{"shape":"RootDeviceType"}, "RootDeviceVolumeId":{"shape":"String"}, "SecurityGroupIds":{"shape":"Strings"}, "SshHostDsaKeyFingerprint":{"shape":"String"}, "SshHostRsaKeyFingerprint":{"shape":"String"}, "SshKeyName":{"shape":"String"}, "StackId":{"shape":"String"}, "Status":{"shape":"String"}, "SubnetId":{"shape":"String"}, "Tenancy":{"shape":"String"}, "VirtualizationType":{"shape":"VirtualizationType"} } }, "InstanceIdentity":{ "type":"structure", "members":{ "Document":{"shape":"String"}, "Signature":{"shape":"String"} } }, "Instances":{ "type":"list", "member":{"shape":"Instance"} }, "InstancesCount":{ "type":"structure", "members":{ "Assigning":{"shape":"Integer"}, "Booting":{"shape":"Integer"}, "ConnectionLost":{"shape":"Integer"}, "Deregistering":{"shape":"Integer"}, "Online":{"shape":"Integer"}, "Pending":{"shape":"Integer"}, "Rebooting":{"shape":"Integer"}, "Registered":{"shape":"Integer"}, "Registering":{"shape":"Integer"}, "Requested":{"shape":"Integer"}, "RunningSetup":{"shape":"Integer"}, "SetupFailed":{"shape":"Integer"}, "ShuttingDown":{"shape":"Integer"}, "StartFailed":{"shape":"Integer"}, "Stopped":{"shape":"Integer"}, "Stopping":{"shape":"Integer"}, "Terminated":{"shape":"Integer"}, "Terminating":{"shape":"Integer"}, "Unassigning":{"shape":"Integer"} } }, "Integer":{ "type":"integer", "box":true }, "Layer":{ "type":"structure", "members":{ "StackId":{"shape":"String"}, "LayerId":{"shape":"String"}, "Type":{"shape":"LayerType"}, "Name":{"shape":"String"}, "Shortname":{"shape":"String"}, "Attributes":{"shape":"LayerAttributes"}, "CustomInstanceProfileArn":{"shape":"String"}, "CustomJson":{"shape":"String"}, "CustomSecurityGroupIds":{"shape":"Strings"}, "DefaultSecurityGroupNames":{"shape":"Strings"}, "Packages":{"shape":"Strings"}, "VolumeConfigurations":{"shape":"VolumeConfigurations"}, "EnableAutoHealing":{"shape":"Boolean"}, "AutoAssignElasticIps":{"shape":"Boolean"}, "AutoAssignPublicIps":{"shape":"Boolean"}, "DefaultRecipes":{"shape":"Recipes"}, "CustomRecipes":{"shape":"Recipes"}, "CreatedAt":{"shape":"DateTime"}, "InstallUpdatesOnBoot":{"shape":"Boolean"}, "UseEbsOptimizedInstances":{"shape":"Boolean"}, "LifecycleEventConfiguration":{"shape":"LifecycleEventConfiguration"} } }, "LayerAttributes":{ "type":"map", "key":{"shape":"LayerAttributesKeys"}, "value":{"shape":"String"} }, "LayerAttributesKeys":{ "type":"string", "enum":[ "EcsClusterArn", "EnableHaproxyStats", "HaproxyStatsUrl", "HaproxyStatsUser", "HaproxyStatsPassword", "HaproxyHealthCheckUrl", "HaproxyHealthCheckMethod", "MysqlRootPassword", "MysqlRootPasswordUbiquitous", "GangliaUrl", "GangliaUser", "GangliaPassword", "MemcachedMemory", "NodejsVersion", "RubyVersion", "RubygemsVersion", "ManageBundler", "BundlerVersion", "RailsStack", "PassengerVersion", "Jvm", "JvmVersion", "JvmOptions", "JavaAppServer", "JavaAppServerVersion" ] }, "LayerType":{ "type":"string", "enum":[ "aws-flow-ruby", "ecs-cluster", "java-app", "lb", "web", "php-app", "rails-app", "nodejs-app", "memcached", "db-master", "monitoring-master", "custom" ] }, "Layers":{ "type":"list", "member":{"shape":"Layer"} }, "LifecycleEventConfiguration":{ "type":"structure", "members":{ "Shutdown":{"shape":"ShutdownEventConfiguration"} } }, "LoadBasedAutoScalingConfiguration":{ "type":"structure", "members":{ "LayerId":{"shape":"String"}, "Enable":{"shape":"Boolean"}, "UpScaling":{"shape":"AutoScalingThresholds"}, "DownScaling":{"shape":"AutoScalingThresholds"} } }, "LoadBasedAutoScalingConfigurations":{ "type":"list", "member":{"shape":"LoadBasedAutoScalingConfiguration"} }, "Minute":{ "type":"integer", "box":true, "max":100, "min":1 }, "Parameters":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"String"} }, "Permission":{ "type":"structure", "members":{ "StackId":{"shape":"String"}, "IamUserArn":{"shape":"String"}, "AllowSsh":{"shape":"Boolean"}, "AllowSudo":{"shape":"Boolean"}, "Level":{"shape":"String"} } }, "Permissions":{ "type":"list", "member":{"shape":"Permission"} }, "RaidArray":{ "type":"structure", "members":{ "RaidArrayId":{"shape":"String"}, "InstanceId":{"shape":"String"}, "Name":{"shape":"String"}, "RaidLevel":{"shape":"Integer"}, "NumberOfDisks":{"shape":"Integer"}, "Size":{"shape":"Integer"}, "Device":{"shape":"String"}, "MountPoint":{"shape":"String"}, "AvailabilityZone":{"shape":"String"}, "CreatedAt":{"shape":"DateTime"}, "StackId":{"shape":"String"}, "VolumeType":{"shape":"String"}, "Iops":{"shape":"Integer"} } }, "RaidArrays":{ "type":"list", "member":{"shape":"RaidArray"} }, "RdsDbInstance":{ "type":"structure", "members":{ "RdsDbInstanceArn":{"shape":"String"}, "DbInstanceIdentifier":{"shape":"String"}, "DbUser":{"shape":"String"}, "DbPassword":{"shape":"String"}, "Region":{"shape":"String"}, "Address":{"shape":"String"}, "Engine":{"shape":"String"}, "StackId":{"shape":"String"}, "MissingOnRds":{"shape":"Boolean"} } }, "RdsDbInstances":{ "type":"list", "member":{"shape":"RdsDbInstance"} }, "RebootInstanceRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "InstanceId":{"shape":"String"} } }, "Recipes":{ "type":"structure", "members":{ "Setup":{"shape":"Strings"}, "Configure":{"shape":"Strings"}, "Deploy":{"shape":"Strings"}, "Undeploy":{"shape":"Strings"}, "Shutdown":{"shape":"Strings"} } }, "RegisterEcsClusterRequest":{ "type":"structure", "required":[ "EcsClusterArn", "StackId" ], "members":{ "EcsClusterArn":{"shape":"String"}, "StackId":{"shape":"String"} } }, "RegisterEcsClusterResult":{ "type":"structure", "members":{ "EcsClusterArn":{"shape":"String"} } }, "RegisterElasticIpRequest":{ "type":"structure", "required":[ "ElasticIp", "StackId" ], "members":{ "ElasticIp":{"shape":"String"}, "StackId":{"shape":"String"} } }, "RegisterElasticIpResult":{ "type":"structure", "members":{ "ElasticIp":{"shape":"String"} } }, "RegisterInstanceRequest":{ "type":"structure", "required":["StackId"], "members":{ "StackId":{"shape":"String"}, "Hostname":{"shape":"String"}, "PublicIp":{"shape":"String"}, "PrivateIp":{"shape":"String"}, "RsaPublicKey":{"shape":"String"}, "RsaPublicKeyFingerprint":{"shape":"String"}, "InstanceIdentity":{"shape":"InstanceIdentity"} } }, "RegisterInstanceResult":{ "type":"structure", "members":{ "InstanceId":{"shape":"String"} } }, "RegisterRdsDbInstanceRequest":{ "type":"structure", "required":[ "StackId", "RdsDbInstanceArn", "DbUser", "DbPassword" ], "members":{ "StackId":{"shape":"String"}, "RdsDbInstanceArn":{"shape":"String"}, "DbUser":{"shape":"String"}, "DbPassword":{"shape":"String"} } }, "RegisterVolumeRequest":{ "type":"structure", "required":["StackId"], "members":{ "Ec2VolumeId":{"shape":"String"}, "StackId":{"shape":"String"} } }, "RegisterVolumeResult":{ "type":"structure", "members":{ "VolumeId":{"shape":"String"} } }, "ReportedOs":{ "type":"structure", "members":{ "Family":{"shape":"String"}, "Name":{"shape":"String"}, "Version":{"shape":"String"} } }, "ResourceNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "RootDeviceType":{ "type":"string", "enum":[ "ebs", "instance-store" ] }, "SelfUserProfile":{ "type":"structure", "members":{ "IamUserArn":{"shape":"String"}, "Name":{"shape":"String"}, "SshUsername":{"shape":"String"}, "SshPublicKey":{"shape":"String"} } }, "ServiceError":{ "type":"structure", "members":{ "ServiceErrorId":{"shape":"String"}, "StackId":{"shape":"String"}, "InstanceId":{"shape":"String"}, "Type":{"shape":"String"}, "Message":{"shape":"String"}, "CreatedAt":{"shape":"DateTime"} } }, "ServiceErrors":{ "type":"list", "member":{"shape":"ServiceError"} }, "SetLoadBasedAutoScalingRequest":{ "type":"structure", "required":["LayerId"], "members":{ "LayerId":{"shape":"String"}, "Enable":{"shape":"Boolean"}, "UpScaling":{"shape":"AutoScalingThresholds"}, "DownScaling":{"shape":"AutoScalingThresholds"} } }, "SetPermissionRequest":{ "type":"structure", "required":[ "StackId", "IamUserArn" ], "members":{ "StackId":{"shape":"String"}, "IamUserArn":{"shape":"String"}, "AllowSsh":{"shape":"Boolean"}, "AllowSudo":{"shape":"Boolean"}, "Level":{"shape":"String"} } }, "SetTimeBasedAutoScalingRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "InstanceId":{"shape":"String"}, "AutoScalingSchedule":{"shape":"WeeklyAutoScalingSchedule"} } }, "ShutdownEventConfiguration":{ "type":"structure", "members":{ "ExecutionTimeout":{"shape":"Integer"}, "DelayUntilElbConnectionsDrained":{"shape":"Boolean"} } }, "Source":{ "type":"structure", "members":{ "Type":{"shape":"SourceType"}, "Url":{"shape":"String"}, "Username":{"shape":"String"}, "Password":{"shape":"String"}, "SshKey":{"shape":"String"}, "Revision":{"shape":"String"} } }, "SourceType":{ "type":"string", "enum":[ "git", "svn", "archive", "s3" ] }, "SslConfiguration":{ "type":"structure", "required":[ "Certificate", "PrivateKey" ], "members":{ "Certificate":{"shape":"String"}, "PrivateKey":{"shape":"String"}, "Chain":{"shape":"String"} } }, "Stack":{ "type":"structure", "members":{ "StackId":{"shape":"String"}, "Name":{"shape":"String"}, "Arn":{"shape":"String"}, "Region":{"shape":"String"}, "VpcId":{"shape":"String"}, "Attributes":{"shape":"StackAttributes"}, "ServiceRoleArn":{"shape":"String"}, "DefaultInstanceProfileArn":{"shape":"String"}, "DefaultOs":{"shape":"String"}, "HostnameTheme":{"shape":"String"}, "DefaultAvailabilityZone":{"shape":"String"}, "DefaultSubnetId":{"shape":"String"}, "CustomJson":{"shape":"String"}, "ConfigurationManager":{"shape":"StackConfigurationManager"}, "ChefConfiguration":{"shape":"ChefConfiguration"}, "UseCustomCookbooks":{"shape":"Boolean"}, "UseOpsworksSecurityGroups":{"shape":"Boolean"}, "CustomCookbooksSource":{"shape":"Source"}, "DefaultSshKeyName":{"shape":"String"}, "CreatedAt":{"shape":"DateTime"}, "DefaultRootDeviceType":{"shape":"RootDeviceType"}, "AgentVersion":{"shape":"String"} } }, "StackAttributes":{ "type":"map", "key":{"shape":"StackAttributesKeys"}, "value":{"shape":"String"} }, "StackAttributesKeys":{ "type":"string", "enum":["Color"] }, "StackConfigurationManager":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "Version":{"shape":"String"} } }, "StackSummary":{ "type":"structure", "members":{ "StackId":{"shape":"String"}, "Name":{"shape":"String"}, "Arn":{"shape":"String"}, "LayersCount":{"shape":"Integer"}, "AppsCount":{"shape":"Integer"}, "InstancesCount":{"shape":"InstancesCount"} } }, "Stacks":{ "type":"list", "member":{"shape":"Stack"} }, "StartInstanceRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "InstanceId":{"shape":"String"} } }, "StartStackRequest":{ "type":"structure", "required":["StackId"], "members":{ "StackId":{"shape":"String"} } }, "StopInstanceRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "InstanceId":{"shape":"String"} } }, "StopStackRequest":{ "type":"structure", "required":["StackId"], "members":{ "StackId":{"shape":"String"} } }, "String":{"type":"string"}, "Strings":{ "type":"list", "member":{"shape":"String"} }, "Switch":{"type":"string"}, "TemporaryCredential":{ "type":"structure", "members":{ "Username":{"shape":"String"}, "Password":{"shape":"String"}, "ValidForInMinutes":{"shape":"Integer"}, "InstanceId":{"shape":"String"} } }, "TimeBasedAutoScalingConfiguration":{ "type":"structure", "members":{ "InstanceId":{"shape":"String"}, "AutoScalingSchedule":{"shape":"WeeklyAutoScalingSchedule"} } }, "TimeBasedAutoScalingConfigurations":{ "type":"list", "member":{"shape":"TimeBasedAutoScalingConfiguration"} }, "UnassignInstanceRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "InstanceId":{"shape":"String"} } }, "UnassignVolumeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "VolumeId":{"shape":"String"} } }, "UpdateAppRequest":{ "type":"structure", "required":["AppId"], "members":{ "AppId":{"shape":"String"}, "Name":{"shape":"String"}, "Description":{"shape":"String"}, "DataSources":{"shape":"DataSources"}, "Type":{"shape":"AppType"}, "AppSource":{"shape":"Source"}, "Domains":{"shape":"Strings"}, "EnableSsl":{"shape":"Boolean"}, "SslConfiguration":{"shape":"SslConfiguration"}, "Attributes":{"shape":"AppAttributes"}, "Environment":{"shape":"EnvironmentVariables"} } }, "UpdateElasticIpRequest":{ "type":"structure", "required":["ElasticIp"], "members":{ "ElasticIp":{"shape":"String"}, "Name":{"shape":"String"} } }, "UpdateInstanceRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "InstanceId":{"shape":"String"}, "LayerIds":{"shape":"Strings"}, "InstanceType":{"shape":"String"}, "AutoScalingType":{"shape":"AutoScalingType"}, "Hostname":{"shape":"String"}, "Os":{"shape":"String"}, "AmiId":{"shape":"String"}, "SshKeyName":{"shape":"String"}, "Architecture":{"shape":"Architecture"}, "InstallUpdatesOnBoot":{"shape":"Boolean"}, "EbsOptimized":{"shape":"Boolean"}, "AgentVersion":{"shape":"String"} } }, "UpdateLayerRequest":{ "type":"structure", "required":["LayerId"], "members":{ "LayerId":{"shape":"String"}, "Name":{"shape":"String"}, "Shortname":{"shape":"String"}, "Attributes":{"shape":"LayerAttributes"}, "CustomInstanceProfileArn":{"shape":"String"}, "CustomJson":{"shape":"String"}, "CustomSecurityGroupIds":{"shape":"Strings"}, "Packages":{"shape":"Strings"}, "VolumeConfigurations":{"shape":"VolumeConfigurations"}, "EnableAutoHealing":{"shape":"Boolean"}, "AutoAssignElasticIps":{"shape":"Boolean"}, "AutoAssignPublicIps":{"shape":"Boolean"}, "CustomRecipes":{"shape":"Recipes"}, "InstallUpdatesOnBoot":{"shape":"Boolean"}, "UseEbsOptimizedInstances":{"shape":"Boolean"}, "LifecycleEventConfiguration":{"shape":"LifecycleEventConfiguration"} } }, "UpdateMyUserProfileRequest":{ "type":"structure", "members":{ "SshPublicKey":{"shape":"String"} } }, "UpdateRdsDbInstanceRequest":{ "type":"structure", "required":["RdsDbInstanceArn"], "members":{ "RdsDbInstanceArn":{"shape":"String"}, "DbUser":{"shape":"String"}, "DbPassword":{"shape":"String"} } }, "UpdateStackRequest":{ "type":"structure", "required":["StackId"], "members":{ "StackId":{"shape":"String"}, "Name":{"shape":"String"}, "Attributes":{"shape":"StackAttributes"}, "ServiceRoleArn":{"shape":"String"}, "DefaultInstanceProfileArn":{"shape":"String"}, "DefaultOs":{"shape":"String"}, "HostnameTheme":{"shape":"String"}, "DefaultAvailabilityZone":{"shape":"String"}, "DefaultSubnetId":{"shape":"String"}, "CustomJson":{"shape":"String"}, "ConfigurationManager":{"shape":"StackConfigurationManager"}, "ChefConfiguration":{"shape":"ChefConfiguration"}, "UseCustomCookbooks":{"shape":"Boolean"}, "CustomCookbooksSource":{"shape":"Source"}, "DefaultSshKeyName":{"shape":"String"}, "DefaultRootDeviceType":{"shape":"RootDeviceType"}, "UseOpsworksSecurityGroups":{"shape":"Boolean"}, "AgentVersion":{"shape":"String"} } }, "UpdateUserProfileRequest":{ "type":"structure", "required":["IamUserArn"], "members":{ "IamUserArn":{"shape":"String"}, "SshUsername":{"shape":"String"}, "SshPublicKey":{"shape":"String"}, "AllowSelfManagement":{"shape":"Boolean"} } }, "UpdateVolumeRequest":{ "type":"structure", "required":["VolumeId"], "members":{ "VolumeId":{"shape":"String"}, "Name":{"shape":"String"}, "MountPoint":{"shape":"String"} } }, "UserProfile":{ "type":"structure", "members":{ "IamUserArn":{"shape":"String"}, "Name":{"shape":"String"}, "SshUsername":{"shape":"String"}, "SshPublicKey":{"shape":"String"}, "AllowSelfManagement":{"shape":"Boolean"} } }, "UserProfiles":{ "type":"list", "member":{"shape":"UserProfile"} }, "ValidForInMinutes":{ "type":"integer", "box":true, "max":1440, "min":60 }, "ValidationException":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "VirtualizationType":{ "type":"string", "enum":[ "paravirtual", "hvm" ] }, "Volume":{ "type":"structure", "members":{ "VolumeId":{"shape":"String"}, "Ec2VolumeId":{"shape":"String"}, "Name":{"shape":"String"}, "RaidArrayId":{"shape":"String"}, "InstanceId":{"shape":"String"}, "Status":{"shape":"String"}, "Size":{"shape":"Integer"}, "Device":{"shape":"String"}, "MountPoint":{"shape":"String"}, "Region":{"shape":"String"}, "AvailabilityZone":{"shape":"String"}, "VolumeType":{"shape":"String"}, "Iops":{"shape":"Integer"} } }, "VolumeConfiguration":{ "type":"structure", "required":[ "MountPoint", "NumberOfDisks", "Size" ], "members":{ "MountPoint":{"shape":"String"}, "RaidLevel":{"shape":"Integer"}, "NumberOfDisks":{"shape":"Integer"}, "Size":{"shape":"Integer"}, "VolumeType":{"shape":"String"}, "Iops":{"shape":"Integer"} } }, "VolumeConfigurations":{ "type":"list", "member":{"shape":"VolumeConfiguration"} }, "VolumeType":{ "type":"string", "enum":[ "gp2", "io1", "standard" ] }, "Volumes":{ "type":"list", "member":{"shape":"Volume"} }, "WeeklyAutoScalingSchedule":{ "type":"structure", "members":{ "Monday":{"shape":"DailyAutoScalingSchedule"}, "Tuesday":{"shape":"DailyAutoScalingSchedule"}, "Wednesday":{"shape":"DailyAutoScalingSchedule"}, "Thursday":{"shape":"DailyAutoScalingSchedule"}, "Friday":{"shape":"DailyAutoScalingSchedule"}, "Saturday":{"shape":"DailyAutoScalingSchedule"}, "Sunday":{"shape":"DailyAutoScalingSchedule"} } } } } aws-sdk-go-1.4.22/models/apis/opsworks/2013-02-18/docs-2.json000066400000000000000000005571131300374646400227210ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS OpsWorks

        Welcome to the AWS OpsWorks API Reference. This guide provides descriptions, syntax, and usage examples for AWS OpsWorks actions and data types, including common parameters and error codes.

        AWS OpsWorks is an application management service that provides an integrated experience for overseeing the complete application lifecycle. For information about this product, go to the AWS OpsWorks details page.

        SDKs and CLI

        The most common way to use the AWS OpsWorks API is by using the AWS Command Line Interface (CLI) or by using one of the AWS SDKs to implement applications in your preferred language. For more information, see:

        Endpoints

        AWS OpsWorks supports the following endpoints, all HTTPS. You must connect to one of the following endpoints. Stacks can only be accessed or managed within the endpoint in which they are created.

        • opsworks.us-east-1.amazonaws.com

        • opsworks.us-west-1.amazonaws.com

        • opsworks.us-west-2.amazonaws.com

        • opsworks.eu-west-1.amazonaws.com

        • opsworks.eu-central-1.amazonaws.com

        • opsworks.ap-northeast-1.amazonaws.com

        • opsworks.ap-northeast-2.amazonaws.com

        • opsworks.ap-south-1.amazonaws.com

        • opsworks.ap-southeast-1.amazonaws.com

        • opsworks.ap-southeast-2.amazonaws.com

        • opsworks.sa-east-1.amazonaws.com

        Chef Versions

        When you call CreateStack, CloneStack, or UpdateStack we recommend you use the ConfigurationManager parameter to specify the Chef version. The recommended and default value for Linux stacks is currently 12. Windows stacks use Chef 12.2. For more information, see Chef Versions.

        You can specify Chef 12, 11.10, or 11.4 for your Linux stack. We recommend migrating your existing Linux stacks to Chef 12 as soon as possible.

        ", "operations": { "AssignInstance": "

        Assign a registered instance to a layer.

        • You can assign registered on-premises instances to any layer type.

        • You can assign registered Amazon EC2 instances only to custom layers.

        • You cannot use this action with instances that were created with AWS OpsWorks.

        Required Permissions: To use this action, an AWS Identity and Access Management (IAM) user must have a Manage permissions level for the stack or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "AssignVolume": "

        Assigns one of the stack's registered Amazon EBS volumes to a specified instance. The volume must first be registered with the stack by calling RegisterVolume. After you register the volume, you must call UpdateVolume to specify a mount point before calling AssignVolume. For more information, see Resource Management.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "AssociateElasticIp": "

        Associates one of the stack's registered Elastic IP addresses with a specified instance. The address must first be registered with the stack by calling RegisterElasticIp. For more information, see Resource Management.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "AttachElasticLoadBalancer": "

        Attaches an Elastic Load Balancing load balancer to a specified layer. For more information, see Elastic Load Balancing.

        You must create the Elastic Load Balancing instance separately, by using the Elastic Load Balancing console, API, or CLI. For more information, see Elastic Load Balancing Developer Guide.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "CloneStack": "

        Creates a clone of a specified stack. For more information, see Clone a Stack. By default, all parameters are set to the values used by the parent stack.

        Required Permissions: To use this action, an IAM user must have an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "CreateApp": "

        Creates an app for a specified stack. For more information, see Creating Apps.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "CreateDeployment": "

        Runs deployment or stack commands. For more information, see Deploying Apps and Run Stack Commands.

        Required Permissions: To use this action, an IAM user must have a Deploy or Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "CreateInstance": "

        Creates an instance in a specified stack. For more information, see Adding an Instance to a Layer.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "CreateLayer": "

        Creates a layer. For more information, see How to Create a Layer.

        You should use CreateLayer for noncustom layer types such as PHP App Server only if the stack does not have an existing layer of that type. A stack can have at most one instance of each noncustom layer; if you attempt to create a second instance, CreateLayer fails. A stack can have an arbitrary number of custom layers, so you can call CreateLayer as many times as you like for that layer type.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "CreateStack": "

        Creates a new stack. For more information, see Create a New Stack.

        Required Permissions: To use this action, an IAM user must have an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "CreateUserProfile": "

        Creates a new user profile.

        Required Permissions: To use this action, an IAM user must have an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DeleteApp": "

        Deletes a specified app.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DeleteInstance": "

        Deletes a specified instance, which terminates the associated Amazon EC2 instance. You must stop an instance before you can delete it.

        For more information, see Deleting Instances.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DeleteLayer": "

        Deletes a specified layer. You must first stop and then delete all associated instances or unassign registered instances. For more information, see How to Delete a Layer.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DeleteStack": "

        Deletes a specified stack. You must first delete all instances, layers, and apps or deregister registered instances. For more information, see Shut Down a Stack.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DeleteUserProfile": "

        Deletes a user profile.

        Required Permissions: To use this action, an IAM user must have an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DeregisterEcsCluster": "

        Deregisters a specified Amazon ECS cluster from a stack. For more information, see Resource Management.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack or an attached policy that explicitly grants permissions. For more information on user permissions, see http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html.

        ", "DeregisterElasticIp": "

        Deregisters a specified Elastic IP address. The address can then be registered by another stack. For more information, see Resource Management.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DeregisterInstance": "

        Deregister a registered Amazon EC2 or on-premises instance. This action removes the instance from the stack and returns it to your control. This action can not be used with instances that were created with AWS OpsWorks.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DeregisterRdsDbInstance": "

        Deregisters an Amazon RDS instance.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DeregisterVolume": "

        Deregisters an Amazon EBS volume. The volume can then be registered by another stack. For more information, see Resource Management.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribeAgentVersions": "

        Describes the available AWS OpsWorks agent versions. You must specify a stack ID or a configuration manager. DescribeAgentVersions returns a list of available agent versions for the specified stack or configuration manager.

        ", "DescribeApps": "

        Requests a description of a specified set of apps.

        You must specify at least one of the parameters.

        Required Permissions: To use this action, an IAM user must have a Show, Deploy, or Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribeCommands": "

        Describes the results of specified commands.

        You must specify at least one of the parameters.

        Required Permissions: To use this action, an IAM user must have a Show, Deploy, or Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribeDeployments": "

        Requests a description of a specified set of deployments.

        You must specify at least one of the parameters.

        Required Permissions: To use this action, an IAM user must have a Show, Deploy, or Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribeEcsClusters": "

        Describes Amazon ECS clusters that are registered with a stack. If you specify only a stack ID, you can use the MaxResults and NextToken parameters to paginate the response. However, AWS OpsWorks currently supports only one cluster per layer, so the result set has a maximum of one element.

        Required Permissions: To use this action, an IAM user must have a Show, Deploy, or Manage permissions level for the stack or an attached policy that explicitly grants permission. For more information on user permissions, see Managing User Permissions.

        ", "DescribeElasticIps": "

        Describes Elastic IP addresses.

        You must specify at least one of the parameters.

        Required Permissions: To use this action, an IAM user must have a Show, Deploy, or Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribeElasticLoadBalancers": "

        Describes a stack's Elastic Load Balancing instances.

        You must specify at least one of the parameters.

        Required Permissions: To use this action, an IAM user must have a Show, Deploy, or Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribeInstances": "

        Requests a description of a set of instances.

        You must specify at least one of the parameters.

        Required Permissions: To use this action, an IAM user must have a Show, Deploy, or Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribeLayers": "

        Requests a description of one or more layers in a specified stack.

        You must specify at least one of the parameters.

        Required Permissions: To use this action, an IAM user must have a Show, Deploy, or Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribeLoadBasedAutoScaling": "

        Describes load-based auto scaling configurations for specified layers.

        You must specify at least one of the parameters.

        Required Permissions: To use this action, an IAM user must have a Show, Deploy, or Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribeMyUserProfile": "

        Describes a user's SSH information.

        Required Permissions: To use this action, an IAM user must have self-management enabled or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribePermissions": "

        Describes the permissions for a specified stack.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribeRaidArrays": "

        Describe an instance's RAID arrays.

        You must specify at least one of the parameters.

        Required Permissions: To use this action, an IAM user must have a Show, Deploy, or Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribeRdsDbInstances": "

        Describes Amazon RDS instances.

        Required Permissions: To use this action, an IAM user must have a Show, Deploy, or Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribeServiceErrors": "

        Describes AWS OpsWorks service errors.

        Required Permissions: To use this action, an IAM user must have a Show, Deploy, or Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribeStackProvisioningParameters": "

        Requests a description of a stack's provisioning parameters.

        Required Permissions: To use this action, an IAM user must have a Show, Deploy, or Manage permissions level for the stack or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribeStackSummary": "

        Describes the number of layers and apps in a specified stack, and the number of instances in each state, such as running_setup or online.

        Required Permissions: To use this action, an IAM user must have a Show, Deploy, or Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribeStacks": "

        Requests a description of one or more stacks.

        Required Permissions: To use this action, an IAM user must have a Show, Deploy, or Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribeTimeBasedAutoScaling": "

        Describes time-based auto scaling configurations for specified instances.

        You must specify at least one of the parameters.

        Required Permissions: To use this action, an IAM user must have a Show, Deploy, or Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribeUserProfiles": "

        Describe specified users.

        Required Permissions: To use this action, an IAM user must have an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DescribeVolumes": "

        Describes an instance's Amazon EBS volumes.

        You must specify at least one of the parameters.

        Required Permissions: To use this action, an IAM user must have a Show, Deploy, or Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DetachElasticLoadBalancer": "

        Detaches a specified Elastic Load Balancing instance from its layer.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "DisassociateElasticIp": "

        Disassociates an Elastic IP address from its instance. The address remains registered with the stack. For more information, see Resource Management.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "GetHostnameSuggestion": "

        Gets a generated host name for the specified layer, based on the current host name theme.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "GrantAccess": "

        This action can be used only with Windows stacks.

        Grants RDP access to a Windows instance for a specified time period.

        ", "RebootInstance": "

        Reboots a specified instance. For more information, see Starting, Stopping, and Rebooting Instances.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "RegisterEcsCluster": "

        Registers a specified Amazon ECS cluster with a stack. You can register only one cluster with a stack. A cluster can be registered with only one stack. For more information, see Resource Management.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "RegisterElasticIp": "

        Registers an Elastic IP address with a specified stack. An address can be registered with only one stack at a time. If the address is already registered, you must first deregister it by calling DeregisterElasticIp. For more information, see Resource Management.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "RegisterInstance": "

        Registers instances with a specified stack that were created outside of AWS OpsWorks.

        We do not recommend using this action to register instances. The complete registration operation has two primary steps, installing the AWS OpsWorks agent on the instance and registering the instance with the stack. RegisterInstance handles only the second step. You should instead use the AWS CLI register command, which performs the entire registration operation. For more information, see Registering an Instance with an AWS OpsWorks Stack.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "RegisterRdsDbInstance": "

        Registers an Amazon RDS instance with a stack.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "RegisterVolume": "

        Registers an Amazon EBS volume with a specified stack. A volume can be registered with only one stack at a time. If the volume is already registered, you must first deregister it by calling DeregisterVolume. For more information, see Resource Management.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "SetLoadBasedAutoScaling": "

        Specify the load-based auto scaling configuration for a specified layer. For more information, see Managing Load with Time-based and Load-based Instances.

        To use load-based auto scaling, you must create a set of load-based auto scaling instances. Load-based auto scaling operates only on the instances from that set, so you must ensure that you have created enough instances to handle the maximum anticipated load.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "SetPermission": "

        Specifies a user's permissions. For more information, see Security and Permissions.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "SetTimeBasedAutoScaling": "

        Specify the time-based auto scaling configuration for a specified instance. For more information, see Managing Load with Time-based and Load-based Instances.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "StartInstance": "

        Starts a specified instance. For more information, see Starting, Stopping, and Rebooting Instances.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "StartStack": "

        Starts a stack's instances.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "StopInstance": "

        Stops a specified instance. When you stop a standard instance, the data disappears and must be reinstalled when you restart the instance. You can stop an Amazon EBS-backed instance without losing data. For more information, see Starting, Stopping, and Rebooting Instances.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "StopStack": "

        Stops a specified stack.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "UnassignInstance": "

        Unassigns a registered instance from all of it's layers. The instance remains in the stack as an unassigned instance and can be assigned to another layer, as needed. You cannot use this action with instances that were created with AWS OpsWorks.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "UnassignVolume": "

        Unassigns an assigned Amazon EBS volume. The volume remains registered with the stack. For more information, see Resource Management.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "UpdateApp": "

        Updates a specified app.

        Required Permissions: To use this action, an IAM user must have a Deploy or Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "UpdateElasticIp": "

        Updates a registered Elastic IP address's name. For more information, see Resource Management.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "UpdateInstance": "

        Updates a specified instance.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "UpdateLayer": "

        Updates a specified layer.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "UpdateMyUserProfile": "

        Updates a user's SSH public key.

        Required Permissions: To use this action, an IAM user must have self-management enabled or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "UpdateRdsDbInstance": "

        Updates an Amazon RDS instance.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "UpdateStack": "

        Updates a specified stack.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "UpdateUserProfile": "

        Updates a specified user profile.

        Required Permissions: To use this action, an IAM user must have an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        ", "UpdateVolume": "

        Updates an Amazon EBS volume's name or mount point. For more information, see Resource Management.

        Required Permissions: To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.

        " }, "shapes": { "AgentVersion": { "base": "

        Describes an agent version.

        ", "refs": { "AgentVersions$member": null } }, "AgentVersions": { "base": null, "refs": { "DescribeAgentVersionsResult$AgentVersions": "

        The agent versions for the specified stack or configuration manager. Note that this value is the complete version number, not the abbreviated number used by the console.

        " } }, "App": { "base": "

        A description of the app.

        ", "refs": { "Apps$member": null } }, "AppAttributes": { "base": null, "refs": { "App$Attributes": "

        The stack attributes.

        ", "CreateAppRequest$Attributes": "

        One or more user-defined key/value pairs to be added to the stack attributes.

        ", "UpdateAppRequest$Attributes": "

        One or more user-defined key/value pairs to be added to the stack attributes.

        " } }, "AppAttributesKeys": { "base": null, "refs": { "AppAttributes$key": null } }, "AppType": { "base": null, "refs": { "App$Type": "

        The app type.

        ", "CreateAppRequest$Type": "

        The app type. Each supported type is associated with a particular layer. For example, PHP applications are associated with a PHP layer. AWS OpsWorks deploys an application to those instances that are members of the corresponding layer. If your app isn't one of the standard types, or you prefer to implement your own Deploy recipes, specify other.

        ", "UpdateAppRequest$Type": "

        The app type.

        " } }, "Apps": { "base": null, "refs": { "DescribeAppsResult$Apps": "

        An array of App objects that describe the specified apps.

        " } }, "Architecture": { "base": null, "refs": { "CreateInstanceRequest$Architecture": "

        The instance architecture. The default option is x86_64. Instance types do not necessarily support both architectures. For a list of the architectures that are supported by the different instance types, see Instance Families and Types.

        ", "Instance$Architecture": "

        The instance architecture: \"i386\" or \"x86_64\".

        ", "UpdateInstanceRequest$Architecture": "

        The instance architecture. Instance types do not necessarily support both architectures. For a list of the architectures that are supported by the different instance types, see Instance Families and Types.

        " } }, "AssignInstanceRequest": { "base": null, "refs": { } }, "AssignVolumeRequest": { "base": null, "refs": { } }, "AssociateElasticIpRequest": { "base": null, "refs": { } }, "AttachElasticLoadBalancerRequest": { "base": null, "refs": { } }, "AutoScalingThresholds": { "base": "

        Describes a load-based auto scaling upscaling or downscaling threshold configuration, which specifies when AWS OpsWorks starts or stops load-based instances.

        ", "refs": { "LoadBasedAutoScalingConfiguration$UpScaling": "

        An AutoScalingThresholds object that describes the upscaling configuration, which defines how and when AWS OpsWorks increases the number of instances.

        ", "LoadBasedAutoScalingConfiguration$DownScaling": "

        An AutoScalingThresholds object that describes the downscaling configuration, which defines how and when AWS OpsWorks reduces the number of instances.

        ", "SetLoadBasedAutoScalingRequest$UpScaling": "

        An AutoScalingThresholds object with the upscaling threshold configuration. If the load exceeds these thresholds for a specified amount of time, AWS OpsWorks starts a specified number of instances.

        ", "SetLoadBasedAutoScalingRequest$DownScaling": "

        An AutoScalingThresholds object with the downscaling threshold configuration. If the load falls below these thresholds for a specified amount of time, AWS OpsWorks stops a specified number of instances.

        " } }, "AutoScalingType": { "base": null, "refs": { "CreateInstanceRequest$AutoScalingType": "

        For load-based or time-based instances, the type. Windows stacks can use only time-based instances.

        ", "Instance$AutoScalingType": "

        For load-based or time-based instances, the type.

        ", "UpdateInstanceRequest$AutoScalingType": "

        For load-based or time-based instances, the type. Windows stacks can use only time-based instances.

        " } }, "BlockDeviceMapping": { "base": "

        Describes a block device mapping. This data type maps directly to the Amazon EC2 BlockDeviceMapping data type.

        ", "refs": { "BlockDeviceMappings$member": null } }, "BlockDeviceMappings": { "base": null, "refs": { "CreateInstanceRequest$BlockDeviceMappings": "

        An array of BlockDeviceMapping objects that specify the instance's block devices. For more information, see Block Device Mapping. Note that block device mappings are not supported for custom AMIs.

        ", "Instance$BlockDeviceMappings": "

        An array of BlockDeviceMapping objects that specify the instance's block device mappings.

        " } }, "Boolean": { "base": null, "refs": { "App$EnableSsl": "

        Whether to enable SSL for the app.

        ", "ChefConfiguration$ManageBerkshelf": "

        Whether to enable Berkshelf.

        ", "CloneStackRequest$UseCustomCookbooks": "

        Whether to use custom cookbooks.

        ", "CloneStackRequest$UseOpsworksSecurityGroups": "

        Whether to associate the AWS OpsWorks built-in security groups with the stack's layers.

        AWS OpsWorks provides a standard set of built-in security groups, one for each layer, which are associated with layers by default. With UseOpsworksSecurityGroups you can instead provide your own custom security groups. UseOpsworksSecurityGroups has the following settings:

        • True - AWS OpsWorks automatically associates the appropriate built-in security group with each layer (default setting). You can associate additional security groups with a layer after you create it but you cannot delete the built-in security group.

        • False - AWS OpsWorks does not associate built-in security groups with layers. You must create appropriate Amazon Elastic Compute Cloud (Amazon EC2) security groups and associate a security group with each layer that you create. However, you can still manually associate a built-in security group with a layer on creation; custom security groups are required only for those layers that need custom settings.

        For more information, see Create a New Stack.

        ", "CloneStackRequest$ClonePermissions": "

        Whether to clone the source stack's permissions.

        ", "CreateAppRequest$EnableSsl": "

        Whether to enable SSL for the app.

        ", "CreateInstanceRequest$InstallUpdatesOnBoot": "

        Whether to install operating system and package updates when the instance boots. The default value is true. To control when updates are installed, set this value to false. You must then update your instances manually by using CreateDeployment to run the update_dependencies stack command or by manually running yum (Amazon Linux) or apt-get (Ubuntu) on the instances.

        We strongly recommend using the default value of true to ensure that your instances have the latest security updates.

        ", "CreateInstanceRequest$EbsOptimized": "

        Whether to create an Amazon EBS-optimized instance.

        ", "CreateLayerRequest$EnableAutoHealing": "

        Whether to disable auto healing for the layer.

        ", "CreateLayerRequest$AutoAssignElasticIps": "

        Whether to automatically assign an Elastic IP address to the layer's instances. For more information, see How to Edit a Layer.

        ", "CreateLayerRequest$AutoAssignPublicIps": "

        For stacks that are running in a VPC, whether to automatically assign a public IP address to the layer's instances. For more information, see How to Edit a Layer.

        ", "CreateLayerRequest$InstallUpdatesOnBoot": "

        Whether to install operating system and package updates when the instance boots. The default value is true. To control when updates are installed, set this value to false. You must then update your instances manually by using CreateDeployment to run the update_dependencies stack command or by manually running yum (Amazon Linux) or apt-get (Ubuntu) on the instances.

        To ensure that your instances have the latest security updates, we strongly recommend using the default value of true.

        ", "CreateLayerRequest$UseEbsOptimizedInstances": "

        Whether to use Amazon EBS-optimized instances.

        ", "CreateStackRequest$UseCustomCookbooks": "

        Whether the stack uses custom cookbooks.

        ", "CreateStackRequest$UseOpsworksSecurityGroups": "

        Whether to associate the AWS OpsWorks built-in security groups with the stack's layers.

        AWS OpsWorks provides a standard set of built-in security groups, one for each layer, which are associated with layers by default. With UseOpsworksSecurityGroups you can instead provide your own custom security groups. UseOpsworksSecurityGroups has the following settings:

        • True - AWS OpsWorks automatically associates the appropriate built-in security group with each layer (default setting). You can associate additional security groups with a layer after you create it, but you cannot delete the built-in security group.

        • False - AWS OpsWorks does not associate built-in security groups with layers. You must create appropriate EC2 security groups and associate a security group with each layer that you create. However, you can still manually associate a built-in security group with a layer on creation; custom security groups are required only for those layers that need custom settings.

        For more information, see Create a New Stack.

        ", "CreateUserProfileRequest$AllowSelfManagement": "

        Whether users can specify their own SSH public key through the My Settings page. For more information, see Setting an IAM User's Public SSH Key.

        ", "DeleteInstanceRequest$DeleteElasticIp": "

        Whether to delete the instance Elastic IP address.

        ", "DeleteInstanceRequest$DeleteVolumes": "

        Whether to delete the instance's Amazon EBS volumes.

        ", "EbsBlockDevice$DeleteOnTermination": "

        Whether the volume is deleted on instance termination.

        ", "EnvironmentVariable$Secure": "

        (Optional) Whether the variable's value will be returned by the DescribeApps action. To conceal an environment variable's value, set Secure to true. DescribeApps then returns *****FILTERED***** instead of the actual value. The default value for Secure is false.

        ", "Instance$EbsOptimized": "

        Whether this is an Amazon EBS-optimized instance.

        ", "Instance$InstallUpdatesOnBoot": "

        Whether to install operating system and package updates when the instance boots. The default value is true. If this value is set to false, you must then update your instances manually by using CreateDeployment to run the update_dependencies stack command or by manually running yum (Amazon Linux) or apt-get (Ubuntu) on the instances.

        We strongly recommend using the default value of true, to ensure that your instances have the latest security updates.

        ", "Layer$EnableAutoHealing": "

        Whether auto healing is disabled for the layer.

        ", "Layer$AutoAssignElasticIps": "

        Whether to automatically assign an Elastic IP address to the layer's instances. For more information, see How to Edit a Layer.

        ", "Layer$AutoAssignPublicIps": "

        For stacks that are running in a VPC, whether to automatically assign a public IP address to the layer's instances. For more information, see How to Edit a Layer.

        ", "Layer$InstallUpdatesOnBoot": "

        Whether to install operating system and package updates when the instance boots. The default value is true. If this value is set to false, you must then update your instances manually by using CreateDeployment to run the update_dependencies stack command or manually running yum (Amazon Linux) or apt-get (Ubuntu) on the instances.

        We strongly recommend using the default value of true, to ensure that your instances have the latest security updates.

        ", "Layer$UseEbsOptimizedInstances": "

        Whether the layer uses Amazon EBS-optimized instances.

        ", "LoadBasedAutoScalingConfiguration$Enable": "

        Whether load-based auto scaling is enabled for the layer.

        ", "Permission$AllowSsh": "

        Whether the user can use SSH.

        ", "Permission$AllowSudo": "

        Whether the user can use sudo.

        ", "RdsDbInstance$MissingOnRds": "

        Set to true if AWS OpsWorks was unable to discover the Amazon RDS instance. AWS OpsWorks attempts to discover the instance only once. If this value is set to true, you must deregister the instance and then register it again.

        ", "SetLoadBasedAutoScalingRequest$Enable": "

        Enables load-based auto scaling for the layer.

        ", "SetPermissionRequest$AllowSsh": "

        The user is allowed to use SSH to communicate with the instance.

        ", "SetPermissionRequest$AllowSudo": "

        The user is allowed to use sudo to elevate privileges.

        ", "ShutdownEventConfiguration$DelayUntilElbConnectionsDrained": "

        Whether to enable Elastic Load Balancing connection draining. For more information, see Connection Draining

        ", "Stack$UseCustomCookbooks": "

        Whether the stack uses custom cookbooks.

        ", "Stack$UseOpsworksSecurityGroups": "

        Whether the stack automatically associates the AWS OpsWorks built-in security groups with the stack's layers.

        ", "UpdateAppRequest$EnableSsl": "

        Whether SSL is enabled for the app.

        ", "UpdateInstanceRequest$InstallUpdatesOnBoot": "

        Whether to install operating system and package updates when the instance boots. The default value is true. To control when updates are installed, set this value to false. You must then update your instances manually by using CreateDeployment to run the update_dependencies stack command or by manually running yum (Amazon Linux) or apt-get (Ubuntu) on the instances.

        We strongly recommend using the default value of true, to ensure that your instances have the latest security updates.

        ", "UpdateInstanceRequest$EbsOptimized": "

        This property cannot be updated.

        ", "UpdateLayerRequest$EnableAutoHealing": "

        Whether to disable auto healing for the layer.

        ", "UpdateLayerRequest$AutoAssignElasticIps": "

        Whether to automatically assign an Elastic IP address to the layer's instances. For more information, see How to Edit a Layer.

        ", "UpdateLayerRequest$AutoAssignPublicIps": "

        For stacks that are running in a VPC, whether to automatically assign a public IP address to the layer's instances. For more information, see How to Edit a Layer.

        ", "UpdateLayerRequest$InstallUpdatesOnBoot": "

        Whether to install operating system and package updates when the instance boots. The default value is true. To control when updates are installed, set this value to false. You must then update your instances manually by using CreateDeployment to run the update_dependencies stack command or manually running yum (Amazon Linux) or apt-get (Ubuntu) on the instances.

        We strongly recommend using the default value of true, to ensure that your instances have the latest security updates.

        ", "UpdateLayerRequest$UseEbsOptimizedInstances": "

        Whether to use Amazon EBS-optimized instances.

        ", "UpdateStackRequest$UseCustomCookbooks": "

        Whether the stack uses custom cookbooks.

        ", "UpdateStackRequest$UseOpsworksSecurityGroups": "

        Whether to associate the AWS OpsWorks built-in security groups with the stack's layers.

        AWS OpsWorks provides a standard set of built-in security groups, one for each layer, which are associated with layers by default. UseOpsworksSecurityGroups allows you to provide your own custom security groups instead of using the built-in groups. UseOpsworksSecurityGroups has the following settings:

        • True - AWS OpsWorks automatically associates the appropriate built-in security group with each layer (default setting). You can associate additional security groups with a layer after you create it, but you cannot delete the built-in security group.

        • False - AWS OpsWorks does not associate built-in security groups with layers. You must create appropriate EC2 security groups and associate a security group with each layer that you create. However, you can still manually associate a built-in security group with a layer on. Custom security groups are required only for those layers that need custom settings.

        For more information, see Create a New Stack.

        ", "UpdateUserProfileRequest$AllowSelfManagement": "

        Whether users can specify their own SSH public key through the My Settings page. For more information, see Managing User Permissions.

        ", "UserProfile$AllowSelfManagement": "

        Whether users can specify their own SSH public key through the My Settings page. For more information, see Managing User Permissions.

        " } }, "ChefConfiguration": { "base": "

        Describes the Chef configuration.

        ", "refs": { "CloneStackRequest$ChefConfiguration": "

        A ChefConfiguration object that specifies whether to enable Berkshelf and the Berkshelf version on Chef 11.10 stacks. For more information, see Create a New Stack.

        ", "CreateStackRequest$ChefConfiguration": "

        A ChefConfiguration object that specifies whether to enable Berkshelf and the Berkshelf version on Chef 11.10 stacks. For more information, see Create a New Stack.

        ", "Stack$ChefConfiguration": "

        A ChefConfiguration object that specifies whether to enable Berkshelf and the Berkshelf version. For more information, see Create a New Stack.

        ", "UpdateStackRequest$ChefConfiguration": "

        A ChefConfiguration object that specifies whether to enable Berkshelf and the Berkshelf version on Chef 11.10 stacks. For more information, see Create a New Stack.

        " } }, "CloneStackRequest": { "base": null, "refs": { } }, "CloneStackResult": { "base": "

        Contains the response to a CloneStack request.

        ", "refs": { } }, "Command": { "base": "

        Describes a command.

        ", "refs": { "Commands$member": null } }, "Commands": { "base": null, "refs": { "DescribeCommandsResult$Commands": "

        An array of Command objects that describe each of the specified commands.

        " } }, "CreateAppRequest": { "base": null, "refs": { } }, "CreateAppResult": { "base": "

        Contains the response to a CreateApp request.

        ", "refs": { } }, "CreateDeploymentRequest": { "base": null, "refs": { } }, "CreateDeploymentResult": { "base": "

        Contains the response to a CreateDeployment request.

        ", "refs": { } }, "CreateInstanceRequest": { "base": null, "refs": { } }, "CreateInstanceResult": { "base": "

        Contains the response to a CreateInstance request.

        ", "refs": { } }, "CreateLayerRequest": { "base": null, "refs": { } }, "CreateLayerResult": { "base": "

        Contains the response to a CreateLayer request.

        ", "refs": { } }, "CreateStackRequest": { "base": null, "refs": { } }, "CreateStackResult": { "base": "

        Contains the response to a CreateStack request.

        ", "refs": { } }, "CreateUserProfileRequest": { "base": null, "refs": { } }, "CreateUserProfileResult": { "base": "

        Contains the response to a CreateUserProfile request.

        ", "refs": { } }, "DailyAutoScalingSchedule": { "base": null, "refs": { "WeeklyAutoScalingSchedule$Monday": "

        The schedule for Monday.

        ", "WeeklyAutoScalingSchedule$Tuesday": "

        The schedule for Tuesday.

        ", "WeeklyAutoScalingSchedule$Wednesday": "

        The schedule for Wednesday.

        ", "WeeklyAutoScalingSchedule$Thursday": "

        The schedule for Thursday.

        ", "WeeklyAutoScalingSchedule$Friday": "

        The schedule for Friday.

        ", "WeeklyAutoScalingSchedule$Saturday": "

        The schedule for Saturday.

        ", "WeeklyAutoScalingSchedule$Sunday": "

        The schedule for Sunday.

        " } }, "DataSource": { "base": "

        Describes an app's data source.

        ", "refs": { "DataSources$member": null } }, "DataSources": { "base": null, "refs": { "App$DataSources": "

        The app's data sources.

        ", "CreateAppRequest$DataSources": "

        The app's data source.

        ", "UpdateAppRequest$DataSources": "

        The app's data sources.

        " } }, "DateTime": { "base": null, "refs": { "Command$CreatedAt": "

        Date and time when the command was run.

        ", "Command$AcknowledgedAt": "

        Date and time when the command was acknowledged.

        ", "Command$CompletedAt": "

        Date when the command completed.

        ", "Deployment$CreatedAt": "

        Date when the deployment was created.

        ", "Deployment$CompletedAt": "

        Date when the deployment completed.

        ", "EcsCluster$RegisteredAt": "

        The time and date that the cluster was registered with the stack.

        ", "Instance$CreatedAt": "

        The time that the instance was created.

        ", "Layer$CreatedAt": "

        Date when the layer was created.

        ", "RaidArray$CreatedAt": "

        When the RAID array was created.

        ", "ServiceError$CreatedAt": "

        When the error occurred.

        ", "Stack$CreatedAt": "

        The date when the stack was created.

        " } }, "DeleteAppRequest": { "base": null, "refs": { } }, "DeleteInstanceRequest": { "base": null, "refs": { } }, "DeleteLayerRequest": { "base": null, "refs": { } }, "DeleteStackRequest": { "base": null, "refs": { } }, "DeleteUserProfileRequest": { "base": null, "refs": { } }, "Deployment": { "base": "

        Describes a deployment of a stack or app.

        ", "refs": { "Deployments$member": null } }, "DeploymentCommand": { "base": "

        Used to specify a stack or deployment command.

        ", "refs": { "CreateDeploymentRequest$Command": "

        A DeploymentCommand object that specifies the deployment command and any associated arguments.

        ", "Deployment$Command": null } }, "DeploymentCommandArgs": { "base": null, "refs": { "DeploymentCommand$Args": "

        The arguments of those commands that take arguments. It should be set to a JSON object with the following format:

        {\"arg_name1\" : [\"value1\", \"value2\", ...], \"arg_name2\" : [\"value1\", \"value2\", ...], ...}

        The update_dependencies command takes two arguments:

        • upgrade_os_to - Specifies the desired Amazon Linux version for instances whose OS you want to upgrade, such as Amazon Linux 2014.09. You must also set the allow_reboot argument to true.

        • allow_reboot - Specifies whether to allow AWS OpsWorks to reboot the instances if necessary, after installing the updates. This argument can be set to either true or false. The default value is false.

        For example, to upgrade an instance to Amazon Linux 2014.09, set Args to the following.

        { \"upgrade_os_to\":[\"Amazon Linux 2014.09\"], \"allow_reboot\":[\"true\"] }

        " } }, "DeploymentCommandName": { "base": null, "refs": { "DeploymentCommand$Name": "

        Specifies the operation. You can specify only one command.

        For stacks, the following commands are available:

        • execute_recipes: Execute one or more recipes. To specify the recipes, set an Args parameter named recipes to the list of recipes to be executed. For example, to execute phpapp::appsetup, set Args to {\"recipes\":[\"phpapp::appsetup\"]}.

        • install_dependencies: Install the stack's dependencies.

        • update_custom_cookbooks: Update the stack's custom cookbooks.

        • update_dependencies: Update the stack's dependencies.

        The update_dependencies and install_dependencies commands are supported only for Linux instances. You can run the commands successfully on Windows instances, but they do nothing.

        For apps, the following commands are available:

        • deploy: Deploy an app. Ruby on Rails apps have an optional Args parameter named migrate. Set Args to {\"migrate\":[\"true\"]} to migrate the database. The default setting is {\"migrate\":[\"false\"]}.

        • rollback Roll the app back to the previous version. When you update an app, AWS OpsWorks stores the previous version, up to a maximum of five versions. You can use this command to roll an app back as many as four versions.

        • start: Start the app's web or application server.

        • stop: Stop the app's web or application server.

        • restart: Restart the app's web or application server.

        • undeploy: Undeploy the app.

        " } }, "Deployments": { "base": null, "refs": { "DescribeDeploymentsResult$Deployments": "

        An array of Deployment objects that describe the deployments.

        " } }, "DeregisterEcsClusterRequest": { "base": null, "refs": { } }, "DeregisterElasticIpRequest": { "base": null, "refs": { } }, "DeregisterInstanceRequest": { "base": null, "refs": { } }, "DeregisterRdsDbInstanceRequest": { "base": null, "refs": { } }, "DeregisterVolumeRequest": { "base": null, "refs": { } }, "DescribeAgentVersionsRequest": { "base": null, "refs": { } }, "DescribeAgentVersionsResult": { "base": "

        Contains the response to a DescribeAgentVersions request.

        ", "refs": { } }, "DescribeAppsRequest": { "base": null, "refs": { } }, "DescribeAppsResult": { "base": "

        Contains the response to a DescribeApps request.

        ", "refs": { } }, "DescribeCommandsRequest": { "base": null, "refs": { } }, "DescribeCommandsResult": { "base": "

        Contains the response to a DescribeCommands request.

        ", "refs": { } }, "DescribeDeploymentsRequest": { "base": null, "refs": { } }, "DescribeDeploymentsResult": { "base": "

        Contains the response to a DescribeDeployments request.

        ", "refs": { } }, "DescribeEcsClustersRequest": { "base": null, "refs": { } }, "DescribeEcsClustersResult": { "base": "

        Contains the response to a DescribeEcsClusters request.

        ", "refs": { } }, "DescribeElasticIpsRequest": { "base": null, "refs": { } }, "DescribeElasticIpsResult": { "base": "

        Contains the response to a DescribeElasticIps request.

        ", "refs": { } }, "DescribeElasticLoadBalancersRequest": { "base": null, "refs": { } }, "DescribeElasticLoadBalancersResult": { "base": "

        Contains the response to a DescribeElasticLoadBalancers request.

        ", "refs": { } }, "DescribeInstancesRequest": { "base": null, "refs": { } }, "DescribeInstancesResult": { "base": "

        Contains the response to a DescribeInstances request.

        ", "refs": { } }, "DescribeLayersRequest": { "base": null, "refs": { } }, "DescribeLayersResult": { "base": "

        Contains the response to a DescribeLayers request.

        ", "refs": { } }, "DescribeLoadBasedAutoScalingRequest": { "base": null, "refs": { } }, "DescribeLoadBasedAutoScalingResult": { "base": "

        Contains the response to a DescribeLoadBasedAutoScaling request.

        ", "refs": { } }, "DescribeMyUserProfileResult": { "base": "

        Contains the response to a DescribeMyUserProfile request.

        ", "refs": { } }, "DescribePermissionsRequest": { "base": null, "refs": { } }, "DescribePermissionsResult": { "base": "

        Contains the response to a DescribePermissions request.

        ", "refs": { } }, "DescribeRaidArraysRequest": { "base": null, "refs": { } }, "DescribeRaidArraysResult": { "base": "

        Contains the response to a DescribeRaidArrays request.

        ", "refs": { } }, "DescribeRdsDbInstancesRequest": { "base": null, "refs": { } }, "DescribeRdsDbInstancesResult": { "base": "

        Contains the response to a DescribeRdsDbInstances request.

        ", "refs": { } }, "DescribeServiceErrorsRequest": { "base": null, "refs": { } }, "DescribeServiceErrorsResult": { "base": "

        Contains the response to a DescribeServiceErrors request.

        ", "refs": { } }, "DescribeStackProvisioningParametersRequest": { "base": null, "refs": { } }, "DescribeStackProvisioningParametersResult": { "base": "

        Contains the response to a DescribeStackProvisioningParameters request.

        ", "refs": { } }, "DescribeStackSummaryRequest": { "base": null, "refs": { } }, "DescribeStackSummaryResult": { "base": "

        Contains the response to a DescribeStackSummary request.

        ", "refs": { } }, "DescribeStacksRequest": { "base": null, "refs": { } }, "DescribeStacksResult": { "base": "

        Contains the response to a DescribeStacks request.

        ", "refs": { } }, "DescribeTimeBasedAutoScalingRequest": { "base": null, "refs": { } }, "DescribeTimeBasedAutoScalingResult": { "base": "

        Contains the response to a DescribeTimeBasedAutoScaling request.

        ", "refs": { } }, "DescribeUserProfilesRequest": { "base": null, "refs": { } }, "DescribeUserProfilesResult": { "base": "

        Contains the response to a DescribeUserProfiles request.

        ", "refs": { } }, "DescribeVolumesRequest": { "base": null, "refs": { } }, "DescribeVolumesResult": { "base": "

        Contains the response to a DescribeVolumes request.

        ", "refs": { } }, "DetachElasticLoadBalancerRequest": { "base": null, "refs": { } }, "DisassociateElasticIpRequest": { "base": null, "refs": { } }, "Double": { "base": null, "refs": { "AutoScalingThresholds$CpuThreshold": "

        The CPU utilization threshold, as a percent of the available CPU. A value of -1 disables the threshold.

        ", "AutoScalingThresholds$MemoryThreshold": "

        The memory utilization threshold, as a percent of the available memory. A value of -1 disables the threshold.

        ", "AutoScalingThresholds$LoadThreshold": "

        The load threshold. A value of -1 disables the threshold. For more information about how load is computed, see Load (computing).

        " } }, "EbsBlockDevice": { "base": "

        Describes an Amazon EBS volume. This data type maps directly to the Amazon EC2 EbsBlockDevice data type.

        ", "refs": { "BlockDeviceMapping$Ebs": "

        An EBSBlockDevice that defines how to configure an Amazon EBS volume when the instance is launched.

        " } }, "EcsCluster": { "base": "

        Describes a registered Amazon ECS cluster.

        ", "refs": { "EcsClusters$member": null } }, "EcsClusters": { "base": null, "refs": { "DescribeEcsClustersResult$EcsClusters": "

        A list of EcsCluster objects containing the cluster descriptions.

        " } }, "ElasticIp": { "base": "

        Describes an Elastic IP address.

        ", "refs": { "ElasticIps$member": null } }, "ElasticIps": { "base": null, "refs": { "DescribeElasticIpsResult$ElasticIps": "

        An ElasticIps object that describes the specified Elastic IP addresses.

        " } }, "ElasticLoadBalancer": { "base": "

        Describes an Elastic Load Balancing instance.

        ", "refs": { "ElasticLoadBalancers$member": null } }, "ElasticLoadBalancers": { "base": null, "refs": { "DescribeElasticLoadBalancersResult$ElasticLoadBalancers": "

        A list of ElasticLoadBalancer objects that describe the specified Elastic Load Balancing instances.

        " } }, "EnvironmentVariable": { "base": "

        Represents an app's environment variable.

        ", "refs": { "EnvironmentVariables$member": null } }, "EnvironmentVariables": { "base": null, "refs": { "App$Environment": "

        An array of EnvironmentVariable objects that specify environment variables to be associated with the app. After you deploy the app, these variables are defined on the associated app server instances. For more information, see Environment Variables.

        There is no specific limit on the number of environment variables. However, the size of the associated data structure - which includes the variable names, values, and protected flag values - cannot exceed 10 KB (10240 Bytes). This limit should accommodate most if not all use cases, but if you do exceed it, you will cause an exception (API) with an \"Environment: is too large (maximum is 10KB)\" message.

        ", "CreateAppRequest$Environment": "

        An array of EnvironmentVariable objects that specify environment variables to be associated with the app. After you deploy the app, these variables are defined on the associated app server instance. For more information, see Environment Variables.

        There is no specific limit on the number of environment variables. However, the size of the associated data structure - which includes the variables' names, values, and protected flag values - cannot exceed 10 KB (10240 Bytes). This limit should accommodate most if not all use cases. Exceeding it will cause an exception with the message, \"Environment: is too large (maximum is 10KB).\"

        This parameter is supported only by Chef 11.10 stacks. If you have specified one or more environment variables, you cannot modify the stack's Chef version.

        ", "UpdateAppRequest$Environment": "

        An array of EnvironmentVariable objects that specify environment variables to be associated with the app. After you deploy the app, these variables are defined on the associated app server instances.For more information, see Environment Variables.

        There is no specific limit on the number of environment variables. However, the size of the associated data structure - which includes the variables' names, values, and protected flag values - cannot exceed 10 KB (10240 Bytes). This limit should accommodate most if not all use cases. Exceeding it will cause an exception with the message, \"Environment: is too large (maximum is 10KB).\"

        This parameter is supported only by Chef 11.10 stacks. If you have specified one or more environment variables, you cannot modify the stack's Chef version.

        " } }, "GetHostnameSuggestionRequest": { "base": null, "refs": { } }, "GetHostnameSuggestionResult": { "base": "

        Contains the response to a GetHostnameSuggestion request.

        ", "refs": { } }, "GrantAccessRequest": { "base": null, "refs": { } }, "GrantAccessResult": { "base": "

        Contains the response to a GrantAccess request.

        ", "refs": { } }, "Hour": { "base": null, "refs": { "DailyAutoScalingSchedule$key": null } }, "Instance": { "base": "

        Describes an instance.

        ", "refs": { "Instances$member": null } }, "InstanceIdentity": { "base": "

        Contains a description of an Amazon EC2 instance from the Amazon EC2 metadata service. For more information, see Instance Metadata and User Data.

        ", "refs": { "RegisterInstanceRequest$InstanceIdentity": "

        An InstanceIdentity object that contains the instance's identity.

        " } }, "Instances": { "base": null, "refs": { "DescribeInstancesResult$Instances": "

        An array of Instance objects that describe the instances.

        " } }, "InstancesCount": { "base": "

        Describes how many instances a stack has for each status.

        ", "refs": { "StackSummary$InstancesCount": "

        An InstancesCount object with the number of instances in each status.

        " } }, "Integer": { "base": null, "refs": { "AutoScalingThresholds$InstanceCount": "

        The number of instances to add or remove when the load exceeds a threshold.

        ", "Command$ExitCode": "

        The command exit code.

        ", "Deployment$Duration": "

        The deployment duration.

        ", "DescribeEcsClustersRequest$MaxResults": "

        To receive a paginated response, use this parameter to specify the maximum number of results to be returned with a single call. If the number of available results exceeds this maximum, the response includes a NextToken value that you can assign to the NextToken request parameter to get the next set of results.

        ", "EbsBlockDevice$Iops": "

        The number of I/O operations per second (IOPS) that the volume supports. For more information, see EbsBlockDevice.

        ", "EbsBlockDevice$VolumeSize": "

        The volume size, in GiB. For more information, see EbsBlockDevice.

        ", "InstancesCount$Assigning": "

        The number of instances in the Assigning state.

        ", "InstancesCount$Booting": "

        The number of instances with booting status.

        ", "InstancesCount$ConnectionLost": "

        The number of instances with connection_lost status.

        ", "InstancesCount$Deregistering": "

        The number of instances in the Deregistering state.

        ", "InstancesCount$Online": "

        The number of instances with online status.

        ", "InstancesCount$Pending": "

        The number of instances with pending status.

        ", "InstancesCount$Rebooting": "

        The number of instances with rebooting status.

        ", "InstancesCount$Registered": "

        The number of instances in the Registered state.

        ", "InstancesCount$Registering": "

        The number of instances in the Registering state.

        ", "InstancesCount$Requested": "

        The number of instances with requested status.

        ", "InstancesCount$RunningSetup": "

        The number of instances with running_setup status.

        ", "InstancesCount$SetupFailed": "

        The number of instances with setup_failed status.

        ", "InstancesCount$ShuttingDown": "

        The number of instances with shutting_down status.

        ", "InstancesCount$StartFailed": "

        The number of instances with start_failed status.

        ", "InstancesCount$Stopped": "

        The number of instances with stopped status.

        ", "InstancesCount$Stopping": "

        The number of instances with stopping status.

        ", "InstancesCount$Terminated": "

        The number of instances with terminated status.

        ", "InstancesCount$Terminating": "

        The number of instances with terminating status.

        ", "InstancesCount$Unassigning": "

        The number of instances in the Unassigning state.

        ", "RaidArray$RaidLevel": "

        The RAID level.

        ", "RaidArray$NumberOfDisks": "

        The number of disks in the array.

        ", "RaidArray$Size": "

        The array's size.

        ", "RaidArray$Iops": "

        For PIOPS volumes, the IOPS per disk.

        ", "ShutdownEventConfiguration$ExecutionTimeout": "

        The time, in seconds, that AWS OpsWorks will wait after triggering a Shutdown event before shutting down an instance.

        ", "StackSummary$LayersCount": "

        The number of layers.

        ", "StackSummary$AppsCount": "

        The number of apps.

        ", "TemporaryCredential$ValidForInMinutes": "

        The length of time (in minutes) that the grant is valid. When the grant expires, at the end of this period, the user will no longer be able to use the credentials to log in. If they are logged in at the time, they will be automatically logged out.

        ", "Volume$Size": "

        The volume size.

        ", "Volume$Iops": "

        For PIOPS volumes, the IOPS per disk.

        ", "VolumeConfiguration$RaidLevel": "

        The volume RAID level.

        ", "VolumeConfiguration$NumberOfDisks": "

        The number of disks in the volume.

        ", "VolumeConfiguration$Size": "

        The volume size.

        ", "VolumeConfiguration$Iops": "

        For PIOPS volumes, the IOPS per disk.

        " } }, "Layer": { "base": "

        Describes a layer.

        ", "refs": { "Layers$member": null } }, "LayerAttributes": { "base": null, "refs": { "CreateLayerRequest$Attributes": "

        One or more user-defined key-value pairs to be added to the stack attributes.

        To create a cluster layer, set the EcsClusterArn attribute to the cluster's ARN.

        ", "Layer$Attributes": "

        The layer attributes.

        For the HaproxyStatsPassword, MysqlRootPassword, and GangliaPassword attributes, AWS OpsWorks returns *****FILTERED***** instead of the actual value

        For an ECS Cluster layer, AWS OpsWorks the EcsClusterArn attribute is set to the cluster's ARN.

        ", "UpdateLayerRequest$Attributes": "

        One or more user-defined key/value pairs to be added to the stack attributes.

        " } }, "LayerAttributesKeys": { "base": null, "refs": { "LayerAttributes$key": null } }, "LayerType": { "base": null, "refs": { "CreateLayerRequest$Type": "

        The layer type. A stack cannot have more than one built-in layer of the same type. It can have any number of custom layers. Built-in layers are not available in Chef 12 stacks.

        ", "Layer$Type": "

        The layer type.

        " } }, "Layers": { "base": null, "refs": { "DescribeLayersResult$Layers": "

        An array of Layer objects that describe the layers.

        " } }, "LifecycleEventConfiguration": { "base": "

        Specifies the lifecycle event configuration

        ", "refs": { "CreateLayerRequest$LifecycleEventConfiguration": "

        A LifeCycleEventConfiguration object that you can use to configure the Shutdown event to specify an execution timeout and enable or disable Elastic Load Balancer connection draining.

        ", "Layer$LifecycleEventConfiguration": "

        A LifeCycleEventConfiguration object that specifies the Shutdown event configuration.

        ", "UpdateLayerRequest$LifecycleEventConfiguration": "

        " } }, "LoadBasedAutoScalingConfiguration": { "base": "

        Describes a layer's load-based auto scaling configuration.

        ", "refs": { "LoadBasedAutoScalingConfigurations$member": null } }, "LoadBasedAutoScalingConfigurations": { "base": null, "refs": { "DescribeLoadBasedAutoScalingResult$LoadBasedAutoScalingConfigurations": "

        An array of LoadBasedAutoScalingConfiguration objects that describe each layer's configuration.

        " } }, "Minute": { "base": null, "refs": { "AutoScalingThresholds$ThresholdsWaitTime": "

        The amount of time, in minutes, that the load must exceed a threshold before more instances are added or removed.

        ", "AutoScalingThresholds$IgnoreMetricsTime": "

        The amount of time (in minutes) after a scaling event occurs that AWS OpsWorks should ignore metrics and suppress additional scaling events. For example, AWS OpsWorks adds new instances following an upscaling event but the instances won't start reducing the load until they have been booted and configured. There is no point in raising additional scaling events during that operation, which typically takes several minutes. IgnoreMetricsTime allows you to direct AWS OpsWorks to suppress scaling events long enough to get the new instances online.

        " } }, "Parameters": { "base": null, "refs": { "DescribeStackProvisioningParametersResult$Parameters": "

        An embedded object that contains the provisioning parameters.

        " } }, "Permission": { "base": "

        Describes stack or user permissions.

        ", "refs": { "Permissions$member": null } }, "Permissions": { "base": null, "refs": { "DescribePermissionsResult$Permissions": "

        An array of Permission objects that describe the stack permissions.

        • If the request object contains only a stack ID, the array contains a Permission object with permissions for each of the stack IAM ARNs.

        • If the request object contains only an IAM ARN, the array contains a Permission object with permissions for each of the user's stack IDs.

        • If the request contains a stack ID and an IAM ARN, the array contains a single Permission object with permissions for the specified stack and IAM ARN.

        " } }, "RaidArray": { "base": "

        Describes an instance's RAID array.

        ", "refs": { "RaidArrays$member": null } }, "RaidArrays": { "base": null, "refs": { "DescribeRaidArraysResult$RaidArrays": "

        A RaidArrays object that describes the specified RAID arrays.

        " } }, "RdsDbInstance": { "base": "

        Describes an Amazon RDS instance.

        ", "refs": { "RdsDbInstances$member": null } }, "RdsDbInstances": { "base": null, "refs": { "DescribeRdsDbInstancesResult$RdsDbInstances": "

        An a array of RdsDbInstance objects that describe the instances.

        " } }, "RebootInstanceRequest": { "base": null, "refs": { } }, "Recipes": { "base": "

        AWS OpsWorks supports five lifecycle events: setup, configuration, deploy, undeploy, and shutdown. For each layer, AWS OpsWorks runs a set of standard recipes for each event. In addition, you can provide custom recipes for any or all layers and events. AWS OpsWorks runs custom event recipes after the standard recipes. LayerCustomRecipes specifies the custom recipes for a particular layer to be run in response to each of the five events.

        To specify a recipe, use the cookbook's directory name in the repository followed by two colons and the recipe name, which is the recipe's file name without the .rb extension. For example: phpapp2::dbsetup specifies the dbsetup.rb recipe in the repository's phpapp2 folder.

        ", "refs": { "CreateLayerRequest$CustomRecipes": "

        A LayerCustomRecipes object that specifies the layer custom recipes.

        ", "Layer$DefaultRecipes": null, "Layer$CustomRecipes": "

        A LayerCustomRecipes object that specifies the layer's custom recipes.

        ", "UpdateLayerRequest$CustomRecipes": "

        A LayerCustomRecipes object that specifies the layer's custom recipes.

        " } }, "RegisterEcsClusterRequest": { "base": null, "refs": { } }, "RegisterEcsClusterResult": { "base": "

        Contains the response to a RegisterEcsCluster request.

        ", "refs": { } }, "RegisterElasticIpRequest": { "base": null, "refs": { } }, "RegisterElasticIpResult": { "base": "

        Contains the response to a RegisterElasticIp request.

        ", "refs": { } }, "RegisterInstanceRequest": { "base": null, "refs": { } }, "RegisterInstanceResult": { "base": "

        Contains the response to a RegisterInstanceResult request.

        ", "refs": { } }, "RegisterRdsDbInstanceRequest": { "base": null, "refs": { } }, "RegisterVolumeRequest": { "base": null, "refs": { } }, "RegisterVolumeResult": { "base": "

        Contains the response to a RegisterVolume request.

        ", "refs": { } }, "ReportedOs": { "base": "

        A registered instance's reported operating system.

        ", "refs": { "Instance$ReportedOs": "

        For registered instances, the reported operating system.

        " } }, "ResourceNotFoundException": { "base": "

        Indicates that a resource was not found.

        ", "refs": { } }, "RootDeviceType": { "base": null, "refs": { "CloneStackRequest$DefaultRootDeviceType": "

        The default root device type. This value is used by default for all instances in the cloned stack, but you can override it when you create an instance. For more information, see Storage for the Root Device.

        ", "CreateInstanceRequest$RootDeviceType": "

        The instance root device type. For more information, see Storage for the Root Device.

        ", "CreateStackRequest$DefaultRootDeviceType": "

        The default root device type. This value is the default for all instances in the stack, but you can override it when you create an instance. The default option is instance-store. For more information, see Storage for the Root Device.

        ", "Instance$RootDeviceType": "

        The instance's root device type. For more information, see Storage for the Root Device.

        ", "Stack$DefaultRootDeviceType": "

        The default root device type. This value is used by default for all instances in the stack, but you can override it when you create an instance. For more information, see Storage for the Root Device.

        ", "UpdateStackRequest$DefaultRootDeviceType": "

        The default root device type. This value is used by default for all instances in the stack, but you can override it when you create an instance. For more information, see Storage for the Root Device.

        " } }, "SelfUserProfile": { "base": "

        Describes a user's SSH information.

        ", "refs": { "DescribeMyUserProfileResult$UserProfile": "

        A UserProfile object that describes the user's SSH information.

        " } }, "ServiceError": { "base": "

        Describes an AWS OpsWorks service error.

        ", "refs": { "ServiceErrors$member": null } }, "ServiceErrors": { "base": null, "refs": { "DescribeServiceErrorsResult$ServiceErrors": "

        An array of ServiceError objects that describe the specified service errors.

        " } }, "SetLoadBasedAutoScalingRequest": { "base": null, "refs": { } }, "SetPermissionRequest": { "base": null, "refs": { } }, "SetTimeBasedAutoScalingRequest": { "base": null, "refs": { } }, "ShutdownEventConfiguration": { "base": "

        The Shutdown event configuration.

        ", "refs": { "LifecycleEventConfiguration$Shutdown": "

        A ShutdownEventConfiguration object that specifies the Shutdown event configuration.

        " } }, "Source": { "base": "

        Contains the information required to retrieve an app or cookbook from a repository. For more information, see Creating Apps or Custom Recipes and Cookbooks.

        ", "refs": { "App$AppSource": "

        A Source object that describes the app repository.

        ", "CloneStackRequest$CustomCookbooksSource": null, "CreateAppRequest$AppSource": "

        A Source object that specifies the app repository.

        ", "CreateStackRequest$CustomCookbooksSource": null, "Stack$CustomCookbooksSource": null, "UpdateAppRequest$AppSource": "

        A Source object that specifies the app repository.

        ", "UpdateStackRequest$CustomCookbooksSource": null } }, "SourceType": { "base": null, "refs": { "Source$Type": "

        The repository type.

        " } }, "SslConfiguration": { "base": "

        Describes an app's SSL configuration.

        ", "refs": { "App$SslConfiguration": "

        An SslConfiguration object with the SSL configuration.

        ", "CreateAppRequest$SslConfiguration": "

        An SslConfiguration object with the SSL configuration.

        ", "UpdateAppRequest$SslConfiguration": "

        An SslConfiguration object with the SSL configuration.

        " } }, "Stack": { "base": "

        Describes a stack.

        ", "refs": { "Stacks$member": null } }, "StackAttributes": { "base": null, "refs": { "CloneStackRequest$Attributes": "

        A list of stack attributes and values as key/value pairs to be added to the cloned stack.

        ", "CreateStackRequest$Attributes": "

        One or more user-defined key-value pairs to be added to the stack attributes.

        ", "Stack$Attributes": "

        The stack's attributes.

        ", "UpdateStackRequest$Attributes": "

        One or more user-defined key-value pairs to be added to the stack attributes.

        " } }, "StackAttributesKeys": { "base": null, "refs": { "StackAttributes$key": null } }, "StackConfigurationManager": { "base": "

        Describes the configuration manager.

        ", "refs": { "AgentVersion$ConfigurationManager": "

        The configuration manager.

        ", "CloneStackRequest$ConfigurationManager": "

        The configuration manager. When you clone a stack we recommend that you use the configuration manager to specify the Chef version: 12, 11.10, or 11.4 for Linux stacks, or 12.2 for Windows stacks. The default value for Linux stacks is currently 12.

        ", "CreateStackRequest$ConfigurationManager": "

        The configuration manager. When you create a stack we recommend that you use the configuration manager to specify the Chef version: 12, 11.10, or 11.4 for Linux stacks, or 12.2 for Windows stacks. The default value for Linux stacks is currently 11.4.

        ", "DescribeAgentVersionsRequest$ConfigurationManager": "

        The configuration manager.

        ", "Stack$ConfigurationManager": "

        The configuration manager.

        ", "UpdateStackRequest$ConfigurationManager": "

        The configuration manager. When you update a stack, we recommend that you use the configuration manager to specify the Chef version: 12, 11.10, or 11.4 for Linux stacks, or 12.2 for Windows stacks. The default value for Linux stacks is currently 11.4.

        " } }, "StackSummary": { "base": "

        Summarizes the number of layers, instances, and apps in a stack.

        ", "refs": { "DescribeStackSummaryResult$StackSummary": "

        A StackSummary object that contains the results.

        " } }, "Stacks": { "base": null, "refs": { "DescribeStacksResult$Stacks": "

        An array of Stack objects that describe the stacks.

        " } }, "StartInstanceRequest": { "base": null, "refs": { } }, "StartStackRequest": { "base": null, "refs": { } }, "StopInstanceRequest": { "base": null, "refs": { } }, "StopStackRequest": { "base": null, "refs": { } }, "String": { "base": null, "refs": { "AgentVersion$Version": "

        The agent version.

        ", "App$AppId": "

        The app ID.

        ", "App$StackId": "

        The app stack ID.

        ", "App$Shortname": "

        The app's short name.

        ", "App$Name": "

        The app name.

        ", "App$Description": "

        A description of the app.

        ", "App$CreatedAt": "

        When the app was created.

        ", "AppAttributes$value": null, "AssignInstanceRequest$InstanceId": "

        The instance ID.

        ", "AssignVolumeRequest$VolumeId": "

        The volume ID.

        ", "AssignVolumeRequest$InstanceId": "

        The instance ID.

        ", "AssociateElasticIpRequest$ElasticIp": "

        The Elastic IP address.

        ", "AssociateElasticIpRequest$InstanceId": "

        The instance ID.

        ", "AttachElasticLoadBalancerRequest$ElasticLoadBalancerName": "

        The Elastic Load Balancing instance's name.

        ", "AttachElasticLoadBalancerRequest$LayerId": "

        The ID of the layer that the Elastic Load Balancing instance is to be attached to.

        ", "BlockDeviceMapping$DeviceName": "

        The device name that is exposed to the instance, such as /dev/sdh. For the root device, you can use the explicit device name or you can set this parameter to ROOT_DEVICE and AWS OpsWorks will provide the correct device name.

        ", "BlockDeviceMapping$NoDevice": "

        Suppresses the specified device included in the AMI's block device mapping.

        ", "BlockDeviceMapping$VirtualName": "

        The virtual device name. For more information, see BlockDeviceMapping.

        ", "ChefConfiguration$BerkshelfVersion": "

        The Berkshelf version.

        ", "CloneStackRequest$SourceStackId": "

        The source stack ID.

        ", "CloneStackRequest$Name": "

        The cloned stack name.

        ", "CloneStackRequest$Region": "

        The cloned stack AWS region, such as \"ap-northeast-2\". For more information about AWS regions, see Regions and Endpoints.

        ", "CloneStackRequest$VpcId": "

        The ID of the VPC that the cloned stack is to be launched into. It must be in the specified region. All instances are launched into this VPC, and you cannot change the ID later.

        • If your account supports EC2 Classic, the default value is no VPC.

        • If your account does not support EC2 Classic, the default value is the default VPC for the specified region.

        If the VPC ID corresponds to a default VPC and you have specified either the DefaultAvailabilityZone or the DefaultSubnetId parameter only, AWS OpsWorks infers the value of the other parameter. If you specify neither parameter, AWS OpsWorks sets these parameters to the first valid Availability Zone for the specified region and the corresponding default VPC subnet ID, respectively.

        If you specify a nondefault VPC ID, note the following:

        • It must belong to a VPC in your account that is in the specified region.

        • You must specify a value for DefaultSubnetId.

        For more information on how to use AWS OpsWorks with a VPC, see Running a Stack in a VPC. For more information on default VPC and EC2 Classic, see Supported Platforms.

        ", "CloneStackRequest$ServiceRoleArn": "

        The stack AWS Identity and Access Management (IAM) role, which allows AWS OpsWorks to work with AWS resources on your behalf. You must set this parameter to the Amazon Resource Name (ARN) for an existing IAM role. If you create a stack by using the AWS OpsWorks console, it creates the role for you. You can obtain an existing stack's IAM ARN programmatically by calling DescribePermissions. For more information about IAM ARNs, see Using Identifiers.

        You must set this parameter to a valid service role ARN or the action will fail; there is no default value. You can specify the source stack's service role ARN, if you prefer, but you must do so explicitly.

        ", "CloneStackRequest$DefaultInstanceProfileArn": "

        The Amazon Resource Name (ARN) of an IAM profile that is the default profile for all of the stack's EC2 instances. For more information about IAM ARNs, see Using Identifiers.

        ", "CloneStackRequest$DefaultOs": "

        The stack's operating system, which must be set to one of the following.

        • A supported Linux operating system: An Amazon Linux version, such as Amazon Linux 2016.03, Amazon Linux 2015.09, or Amazon Linux 2015.03.

        • A supported Ubuntu operating system, such as Ubuntu 16.04 LTS, Ubuntu 14.04 LTS, or Ubuntu 12.04 LTS.

        • CentOS 7

        • Red Hat Enterprise Linux 7

        • Microsoft Windows Server 2012 R2 Base, Microsoft Windows Server 2012 R2 with SQL Server Express, Microsoft Windows Server 2012 R2 with SQL Server Standard, or Microsoft Windows Server 2012 R2 with SQL Server Web.

        • A custom AMI: Custom. You specify the custom AMI you want to use when you create instances. For more information on how to use custom AMIs with OpsWorks, see Using Custom AMIs.

        The default option is the parent stack's operating system. For more information on the supported operating systems, see AWS OpsWorks Operating Systems.

        You can specify a different Linux operating system for the cloned stack, but you cannot change from Linux to Windows or Windows to Linux.

        ", "CloneStackRequest$HostnameTheme": "

        The stack's host name theme, with spaces are replaced by underscores. The theme is used to generate host names for the stack's instances. By default, HostnameTheme is set to Layer_Dependent, which creates host names by appending integers to the layer's short name. The other themes are:

        • Baked_Goods

        • Clouds

        • Europe_Cities

        • Fruits

        • Greek_Deities

        • Legendary_creatures_from_Japan

        • Planets_and_Moons

        • Roman_Deities

        • Scottish_Islands

        • US_Cities

        • Wild_Cats

        To obtain a generated host name, call GetHostNameSuggestion, which returns a host name based on the current theme.

        ", "CloneStackRequest$DefaultAvailabilityZone": "

        The cloned stack's default Availability Zone, which must be in the specified region. For more information, see Regions and Endpoints. If you also specify a value for DefaultSubnetId, the subnet must be in the same zone. For more information, see the VpcId parameter description.

        ", "CloneStackRequest$DefaultSubnetId": "

        The stack's default VPC subnet ID. This parameter is required if you specify a value for the VpcId parameter. All instances are launched into this subnet unless you specify otherwise when you create the instance. If you also specify a value for DefaultAvailabilityZone, the subnet must be in that zone. For information on default values and when this parameter is required, see the VpcId parameter description.

        ", "CloneStackRequest$CustomJson": "

        A string that contains user-defined, custom JSON. It is used to override the corresponding default stack configuration JSON values. The string should be in the following format:

        \"{\\\"key1\\\": \\\"value1\\\", \\\"key2\\\": \\\"value2\\\",...}\"

        For more information on custom JSON, see Use Custom JSON to Modify the Stack Configuration Attributes

        ", "CloneStackRequest$DefaultSshKeyName": "

        A default Amazon EC2 key pair name. The default value is none. If you specify a key pair name, AWS OpsWorks installs the public key on the instance and you can use the private key with an SSH client to log in to the instance. For more information, see Using SSH to Communicate with an Instance and Managing SSH Access. You can override this setting by specifying a different key pair, or no key pair, when you create an instance.

        ", "CloneStackRequest$AgentVersion": "

        The default AWS OpsWorks agent version. You have the following options:

        • Auto-update - Set this parameter to LATEST. AWS OpsWorks automatically installs new agent versions on the stack's instances as soon as they are available.

        • Fixed version - Set this parameter to your preferred agent version. To update the agent version, you must edit the stack configuration and specify a new version. AWS OpsWorks then automatically installs that version on the stack's instances.

        The default setting is LATEST. To specify an agent version, you must use the complete version number, not the abbreviated number shown on the console. For a list of available agent version numbers, call DescribeAgentVersions.

        You can also specify an agent version when you create or update an instance, which overrides the stack's default setting.

        ", "CloneStackResult$StackId": "

        The cloned stack ID.

        ", "Command$CommandId": "

        The command ID.

        ", "Command$InstanceId": "

        The ID of the instance where the command was executed.

        ", "Command$DeploymentId": "

        The command deployment ID.

        ", "Command$Status": "

        The command status:

        • failed

        • successful

        • skipped

        • pending

        ", "Command$LogUrl": "

        The URL of the command log.

        ", "Command$Type": "

        The command type:

        • deploy

        • rollback

        • start

        • stop

        • restart

        • undeploy

        • update_dependencies

        • install_dependencies

        • update_custom_cookbooks

        • execute_recipes

        ", "CreateAppRequest$StackId": "

        The stack ID.

        ", "CreateAppRequest$Shortname": "

        The app's short name.

        ", "CreateAppRequest$Name": "

        The app name.

        ", "CreateAppRequest$Description": "

        A description of the app.

        ", "CreateAppResult$AppId": "

        The app ID.

        ", "CreateDeploymentRequest$StackId": "

        The stack ID.

        ", "CreateDeploymentRequest$AppId": "

        The app ID. This parameter is required for app deployments, but not for other deployment commands.

        ", "CreateDeploymentRequest$Comment": "

        A user-defined comment.

        ", "CreateDeploymentRequest$CustomJson": "

        A string that contains user-defined, custom JSON. It is used to override the corresponding default stack configuration JSON values. The string should be in the following format:

        \"{\\\"key1\\\": \\\"value1\\\", \\\"key2\\\": \\\"value2\\\",...}\"

        For more information on custom JSON, see Use Custom JSON to Modify the Stack Configuration Attributes.

        ", "CreateDeploymentResult$DeploymentId": "

        The deployment ID, which can be used with other requests to identify the deployment.

        ", "CreateInstanceRequest$StackId": "

        The stack ID.

        ", "CreateInstanceRequest$InstanceType": "

        The instance type, such as t2.micro. For a list of supported instance types, open the stack in the console, choose Instances, and choose + Instance. The Size list contains the currently supported types. For more information, see Instance Families and Types. The parameter values that you use to specify the various types are in the API Name column of the Available Instance Types table.

        ", "CreateInstanceRequest$Hostname": "

        The instance host name.

        ", "CreateInstanceRequest$Os": "

        The instance's operating system, which must be set to one of the following.

        • A supported Linux operating system: An Amazon Linux version, such as Amazon Linux 2016.03, Amazon Linux 2015.09, or Amazon Linux 2015.03.

        • A supported Ubuntu operating system, such as Ubuntu 16.04 LTS, Ubuntu 14.04 LTS, or Ubuntu 12.04 LTS.

        • CentOS 7

        • Red Hat Enterprise Linux 7

        • A supported Windows operating system, such as Microsoft Windows Server 2012 R2 Base, Microsoft Windows Server 2012 R2 with SQL Server Express, Microsoft Windows Server 2012 R2 with SQL Server Standard, or Microsoft Windows Server 2012 R2 with SQL Server Web.

        • A custom AMI: Custom.

        For more information on the supported operating systems, see AWS OpsWorks Operating Systems.

        The default option is the current Amazon Linux version. If you set this parameter to Custom, you must use the CreateInstance action's AmiId parameter to specify the custom AMI that you want to use. Block device mappings are not supported if the value is Custom. For more information on the supported operating systems, see Operating SystemsFor more information on how to use custom AMIs with AWS OpsWorks, see Using Custom AMIs.

        ", "CreateInstanceRequest$AmiId": "

        A custom AMI ID to be used to create the instance. The AMI should be based on one of the supported operating systems. For more information, see Using Custom AMIs.

        If you specify a custom AMI, you must set Os to Custom.

        ", "CreateInstanceRequest$SshKeyName": "

        The instance's Amazon EC2 key-pair name.

        ", "CreateInstanceRequest$AvailabilityZone": "

        The instance Availability Zone. For more information, see Regions and Endpoints.

        ", "CreateInstanceRequest$VirtualizationType": "

        The instance's virtualization type, paravirtual or hvm.

        ", "CreateInstanceRequest$SubnetId": "

        The ID of the instance's subnet. If the stack is running in a VPC, you can use this parameter to override the stack's default subnet ID value and direct AWS OpsWorks to launch the instance in a different subnet.

        ", "CreateInstanceRequest$AgentVersion": "

        The default AWS OpsWorks agent version. You have the following options:

        • INHERIT - Use the stack's default agent version setting.

        • version_number - Use the specified agent version. This value overrides the stack's default setting. To update the agent version, edit the instance configuration and specify a new version. AWS OpsWorks then automatically installs that version on the instance.

        The default setting is INHERIT. To specify an agent version, you must use the complete version number, not the abbreviated number shown on the console. For a list of available agent version numbers, call DescribeAgentVersions.

        ", "CreateInstanceRequest$Tenancy": "

        The instance's tenancy option. The default option is no tenancy, or if the instance is running in a VPC, inherit tenancy settings from the VPC. The following are valid values for this parameter: dedicated, default, or host. Because there are costs associated with changes in tenancy options, we recommend that you research tenancy options before choosing them for your instances. For more information about dedicated hosts, see Dedicated Hosts Overview and Amazon EC2 Dedicated Hosts. For more information about dedicated instances, see Dedicated Instances and Amazon EC2 Dedicated Instances.

        ", "CreateInstanceResult$InstanceId": "

        The instance ID.

        ", "CreateLayerRequest$StackId": "

        The layer stack ID.

        ", "CreateLayerRequest$Name": "

        The layer name, which is used by the console.

        ", "CreateLayerRequest$Shortname": "

        For custom layers only, use this parameter to specify the layer's short name, which is used internally by AWS OpsWorks and by Chef recipes. The short name is also used as the name for the directory where your app files are installed. It can have a maximum of 200 characters, which are limited to the alphanumeric characters, '-', '_', and '.'.

        The built-in layers' short names are defined by AWS OpsWorks. For more information, see the Layer Reference.

        ", "CreateLayerRequest$CustomInstanceProfileArn": "

        The ARN of an IAM profile to be used for the layer's EC2 instances. For more information about IAM ARNs, see Using Identifiers.

        ", "CreateLayerRequest$CustomJson": "

        A JSON-formatted string containing custom stack configuration and deployment attributes to be installed on the layer's instances. For more information, see Using Custom JSON. This feature is supported as of version 1.7.42 of the AWS CLI.

        ", "CreateLayerResult$LayerId": "

        The layer ID.

        ", "CreateStackRequest$Name": "

        The stack name.

        ", "CreateStackRequest$Region": "

        The stack's AWS region, such as \"ap-south-1\". For more information about Amazon regions, see Regions and Endpoints.

        ", "CreateStackRequest$VpcId": "

        The ID of the VPC that the stack is to be launched into. The VPC must be in the stack's region. All instances are launched into this VPC. You cannot change the ID later.

        • If your account supports EC2-Classic, the default value is no VPC.

        • If your account does not support EC2-Classic, the default value is the default VPC for the specified region.

        If the VPC ID corresponds to a default VPC and you have specified either the DefaultAvailabilityZone or the DefaultSubnetId parameter only, AWS OpsWorks infers the value of the other parameter. If you specify neither parameter, AWS OpsWorks sets these parameters to the first valid Availability Zone for the specified region and the corresponding default VPC subnet ID, respectively.

        If you specify a nondefault VPC ID, note the following:

        • It must belong to a VPC in your account that is in the specified region.

        • You must specify a value for DefaultSubnetId.

        For more information on how to use AWS OpsWorks with a VPC, see Running a Stack in a VPC. For more information on default VPC and EC2-Classic, see Supported Platforms.

        ", "CreateStackRequest$ServiceRoleArn": "

        The stack's AWS Identity and Access Management (IAM) role, which allows AWS OpsWorks to work with AWS resources on your behalf. You must set this parameter to the Amazon Resource Name (ARN) for an existing IAM role. For more information about IAM ARNs, see Using Identifiers.

        ", "CreateStackRequest$DefaultInstanceProfileArn": "

        The Amazon Resource Name (ARN) of an IAM profile that is the default profile for all of the stack's EC2 instances. For more information about IAM ARNs, see Using Identifiers.

        ", "CreateStackRequest$DefaultOs": "

        The stack's default operating system, which is installed on every instance unless you specify a different operating system when you create the instance. You can specify one of the following.

        • A supported Linux operating system: An Amazon Linux version, such as Amazon Linux 2016.03, Amazon Linux 2015.09, or Amazon Linux 2015.03.

        • A supported Ubuntu operating system, such as Ubuntu 16.04 LTS, Ubuntu 14.04 LTS, or Ubuntu 12.04 LTS.

        • CentOS 7

        • Red Hat Enterprise Linux 7

        • A supported Windows operating system, such as Microsoft Windows Server 2012 R2 Base, Microsoft Windows Server 2012 R2 with SQL Server Express, Microsoft Windows Server 2012 R2 with SQL Server Standard, or Microsoft Windows Server 2012 R2 with SQL Server Web.

        • A custom AMI: Custom. You specify the custom AMI you want to use when you create instances. For more information, see Using Custom AMIs.

        The default option is the current Amazon Linux version. For more information on the supported operating systems, see AWS OpsWorks Operating Systems.

        ", "CreateStackRequest$HostnameTheme": "

        The stack's host name theme, with spaces replaced by underscores. The theme is used to generate host names for the stack's instances. By default, HostnameTheme is set to Layer_Dependent, which creates host names by appending integers to the layer's short name. The other themes are:

        • Baked_Goods

        • Clouds

        • Europe_Cities

        • Fruits

        • Greek_Deities

        • Legendary_creatures_from_Japan

        • Planets_and_Moons

        • Roman_Deities

        • Scottish_Islands

        • US_Cities

        • Wild_Cats

        To obtain a generated host name, call GetHostNameSuggestion, which returns a host name based on the current theme.

        ", "CreateStackRequest$DefaultAvailabilityZone": "

        The stack's default Availability Zone, which must be in the specified region. For more information, see Regions and Endpoints. If you also specify a value for DefaultSubnetId, the subnet must be in the same zone. For more information, see the VpcId parameter description.

        ", "CreateStackRequest$DefaultSubnetId": "

        The stack's default VPC subnet ID. This parameter is required if you specify a value for the VpcId parameter. All instances are launched into this subnet unless you specify otherwise when you create the instance. If you also specify a value for DefaultAvailabilityZone, the subnet must be in that zone. For information on default values and when this parameter is required, see the VpcId parameter description.

        ", "CreateStackRequest$CustomJson": "

        A string that contains user-defined, custom JSON. It can be used to override the corresponding default stack configuration attribute values or to pass data to recipes. The string should be in the following format:

        \"{\\\"key1\\\": \\\"value1\\\", \\\"key2\\\": \\\"value2\\\",...}\"

        For more information on custom JSON, see Use Custom JSON to Modify the Stack Configuration Attributes.

        ", "CreateStackRequest$DefaultSshKeyName": "

        A default Amazon EC2 key pair name. The default value is none. If you specify a key pair name, AWS OpsWorks installs the public key on the instance and you can use the private key with an SSH client to log in to the instance. For more information, see Using SSH to Communicate with an Instance and Managing SSH Access. You can override this setting by specifying a different key pair, or no key pair, when you create an instance.

        ", "CreateStackRequest$AgentVersion": "

        The default AWS OpsWorks agent version. You have the following options:

        • Auto-update - Set this parameter to LATEST. AWS OpsWorks automatically installs new agent versions on the stack's instances as soon as they are available.

        • Fixed version - Set this parameter to your preferred agent version. To update the agent version, you must edit the stack configuration and specify a new version. AWS OpsWorks then automatically installs that version on the stack's instances.

        The default setting is the most recent release of the agent. To specify an agent version, you must use the complete version number, not the abbreviated number shown on the console. For a list of available agent version numbers, call DescribeAgentVersions.

        You can also specify an agent version when you create or update an instance, which overrides the stack's default setting.

        ", "CreateStackResult$StackId": "

        The stack ID, which is an opaque string that you use to identify the stack when performing actions such as DescribeStacks.

        ", "CreateUserProfileRequest$IamUserArn": "

        The user's IAM ARN; this can also be a federated user's ARN.

        ", "CreateUserProfileRequest$SshUsername": "

        The user's SSH user name. The allowable characters are [a-z], [A-Z], [0-9], '-', and '_'. If the specified name includes other punctuation marks, AWS OpsWorks removes them. For example, my.name will be changed to myname. If you do not specify an SSH user name, AWS OpsWorks generates one from the IAM user name.

        ", "CreateUserProfileRequest$SshPublicKey": "

        The user's public SSH key.

        ", "CreateUserProfileResult$IamUserArn": "

        The user's IAM ARN.

        ", "DataSource$Type": "

        The data source's type, AutoSelectOpsworksMysqlInstance, OpsworksMysqlInstance, or RdsDbInstance.

        ", "DataSource$Arn": "

        The data source's ARN.

        ", "DataSource$DatabaseName": "

        The database name.

        ", "DeleteAppRequest$AppId": "

        The app ID.

        ", "DeleteInstanceRequest$InstanceId": "

        The instance ID.

        ", "DeleteLayerRequest$LayerId": "

        The layer ID.

        ", "DeleteStackRequest$StackId": "

        The stack ID.

        ", "DeleteUserProfileRequest$IamUserArn": "

        The user's IAM ARN. This can also be a federated user's ARN.

        ", "Deployment$DeploymentId": "

        The deployment ID.

        ", "Deployment$StackId": "

        The stack ID.

        ", "Deployment$AppId": "

        The app ID.

        ", "Deployment$IamUserArn": "

        The user's IAM ARN.

        ", "Deployment$Comment": "

        A user-defined comment.

        ", "Deployment$Status": "

        The deployment status:

        • running

        • successful

        • failed

        ", "Deployment$CustomJson": "

        A string that contains user-defined custom JSON. It can be used to override the corresponding default stack configuration attribute values for stack or to pass data to recipes. The string should be in the following format:

        \"{\\\"key1\\\": \\\"value1\\\", \\\"key2\\\": \\\"value2\\\",...}\"

        For more information on custom JSON, see Use Custom JSON to Modify the Stack Configuration Attributes.

        ", "DeploymentCommandArgs$key": null, "DeregisterEcsClusterRequest$EcsClusterArn": "

        The cluster's ARN.

        ", "DeregisterElasticIpRequest$ElasticIp": "

        The Elastic IP address.

        ", "DeregisterInstanceRequest$InstanceId": "

        The instance ID.

        ", "DeregisterRdsDbInstanceRequest$RdsDbInstanceArn": "

        The Amazon RDS instance's ARN.

        ", "DeregisterVolumeRequest$VolumeId": "

        The AWS OpsWorks volume ID, which is the GUID that AWS OpsWorks assigned to the instance when you registered the volume with the stack, not the Amazon EC2 volume ID.

        ", "DescribeAgentVersionsRequest$StackId": "

        The stack ID.

        ", "DescribeAppsRequest$StackId": "

        The app stack ID. If you use this parameter, DescribeApps returns a description of the apps in the specified stack.

        ", "DescribeCommandsRequest$DeploymentId": "

        The deployment ID. If you include this parameter, DescribeCommands returns a description of the commands associated with the specified deployment.

        ", "DescribeCommandsRequest$InstanceId": "

        The instance ID. If you include this parameter, DescribeCommands returns a description of the commands associated with the specified instance.

        ", "DescribeDeploymentsRequest$StackId": "

        The stack ID. If you include this parameter, DescribeDeployments returns a description of the commands associated with the specified stack.

        ", "DescribeDeploymentsRequest$AppId": "

        The app ID. If you include this parameter, DescribeDeployments returns a description of the commands associated with the specified app.

        ", "DescribeEcsClustersRequest$StackId": "

        A stack ID. DescribeEcsClusters returns a description of the cluster that is registered with the stack.

        ", "DescribeEcsClustersRequest$NextToken": "

        If the previous paginated request did not return all of the remaining results, the response object'sNextToken parameter value is set to a token. To retrieve the next set of results, call DescribeEcsClusters again and assign that token to the request object's NextToken parameter. If there are no remaining results, the previous response object's NextToken parameter is set to null.

        ", "DescribeEcsClustersResult$NextToken": "

        If a paginated request does not return all of the remaining results, this parameter is set to a token that you can assign to the request object's NextToken parameter to retrieve the next set of results. If the previous paginated request returned all of the remaining results, this parameter is set to null.

        ", "DescribeElasticIpsRequest$InstanceId": "

        The instance ID. If you include this parameter, DescribeElasticIps returns a description of the Elastic IP addresses associated with the specified instance.

        ", "DescribeElasticIpsRequest$StackId": "

        A stack ID. If you include this parameter, DescribeElasticIps returns a description of the Elastic IP addresses that are registered with the specified stack.

        ", "DescribeElasticLoadBalancersRequest$StackId": "

        A stack ID. The action describes the stack's Elastic Load Balancing instances.

        ", "DescribeInstancesRequest$StackId": "

        A stack ID. If you use this parameter, DescribeInstances returns descriptions of the instances associated with the specified stack.

        ", "DescribeInstancesRequest$LayerId": "

        A layer ID. If you use this parameter, DescribeInstances returns descriptions of the instances associated with the specified layer.

        ", "DescribeLayersRequest$StackId": "

        The stack ID.

        ", "DescribePermissionsRequest$IamUserArn": "

        The user's IAM ARN. This can also be a federated user's ARN. For more information about IAM ARNs, see Using Identifiers.

        ", "DescribePermissionsRequest$StackId": "

        The stack ID.

        ", "DescribeRaidArraysRequest$InstanceId": "

        The instance ID. If you use this parameter, DescribeRaidArrays returns descriptions of the RAID arrays associated with the specified instance.

        ", "DescribeRaidArraysRequest$StackId": "

        The stack ID.

        ", "DescribeRdsDbInstancesRequest$StackId": "

        The stack ID that the instances are registered with. The operation returns descriptions of all registered Amazon RDS instances.

        ", "DescribeServiceErrorsRequest$StackId": "

        The stack ID. If you use this parameter, DescribeServiceErrors returns descriptions of the errors associated with the specified stack.

        ", "DescribeServiceErrorsRequest$InstanceId": "

        The instance ID. If you use this parameter, DescribeServiceErrors returns descriptions of the errors associated with the specified instance.

        ", "DescribeStackProvisioningParametersRequest$StackId": "

        The stack ID

        ", "DescribeStackProvisioningParametersResult$AgentInstallerUrl": "

        The AWS OpsWorks agent installer's URL.

        ", "DescribeStackSummaryRequest$StackId": "

        The stack ID.

        ", "DescribeVolumesRequest$InstanceId": "

        The instance ID. If you use this parameter, DescribeVolumes returns descriptions of the volumes associated with the specified instance.

        ", "DescribeVolumesRequest$StackId": "

        A stack ID. The action describes the stack's registered Amazon EBS volumes.

        ", "DescribeVolumesRequest$RaidArrayId": "

        The RAID array ID. If you use this parameter, DescribeVolumes returns descriptions of the volumes associated with the specified RAID array.

        ", "DetachElasticLoadBalancerRequest$ElasticLoadBalancerName": "

        The Elastic Load Balancing instance's name.

        ", "DetachElasticLoadBalancerRequest$LayerId": "

        The ID of the layer that the Elastic Load Balancing instance is attached to.

        ", "DisassociateElasticIpRequest$ElasticIp": "

        The Elastic IP address.

        ", "EbsBlockDevice$SnapshotId": "

        The snapshot ID.

        ", "EcsCluster$EcsClusterArn": "

        The cluster's ARN.

        ", "EcsCluster$EcsClusterName": "

        The cluster name.

        ", "EcsCluster$StackId": "

        The stack ID.

        ", "ElasticIp$Ip": "

        The IP address.

        ", "ElasticIp$Name": "

        The name.

        ", "ElasticIp$Domain": "

        The domain.

        ", "ElasticIp$Region": "

        The AWS region. For more information, see Regions and Endpoints.

        ", "ElasticIp$InstanceId": "

        The ID of the instance that the address is attached to.

        ", "ElasticLoadBalancer$ElasticLoadBalancerName": "

        The Elastic Load Balancing instance's name.

        ", "ElasticLoadBalancer$Region": "

        The instance's AWS region.

        ", "ElasticLoadBalancer$DnsName": "

        The instance's public DNS name.

        ", "ElasticLoadBalancer$StackId": "

        The ID of the stack that the instance is associated with.

        ", "ElasticLoadBalancer$LayerId": "

        The ID of the layer that the instance is attached to.

        ", "ElasticLoadBalancer$VpcId": "

        The VPC ID.

        ", "EnvironmentVariable$Key": "

        (Required) The environment variable's name, which can consist of up to 64 characters and must be specified. The name can contain upper- and lowercase letters, numbers, and underscores (_), but it must start with a letter or underscore.

        ", "EnvironmentVariable$Value": "

        (Optional) The environment variable's value, which can be left empty. If you specify a value, it can contain up to 256 characters, which must all be printable.

        ", "GetHostnameSuggestionRequest$LayerId": "

        The layer ID.

        ", "GetHostnameSuggestionResult$LayerId": "

        The layer ID.

        ", "GetHostnameSuggestionResult$Hostname": "

        The generated host name.

        ", "GrantAccessRequest$InstanceId": "

        The instance's AWS OpsWorks ID.

        ", "Instance$AgentVersion": "

        The agent version. This parameter is set to INHERIT if the instance inherits the default stack setting or to a a version number for a fixed agent version.

        ", "Instance$AmiId": "

        A custom AMI ID to be used to create the instance. For more information, see Instances

        ", "Instance$AvailabilityZone": "

        The instance Availability Zone. For more information, see Regions and Endpoints.

        ", "Instance$Ec2InstanceId": "

        The ID of the associated Amazon EC2 instance.

        ", "Instance$EcsClusterArn": "

        For container instances, the Amazon ECS cluster's ARN.

        ", "Instance$EcsContainerInstanceArn": "

        For container instances, the instance's ARN.

        ", "Instance$ElasticIp": "

        The instance Elastic IP address .

        ", "Instance$Hostname": "

        The instance host name.

        ", "Instance$InfrastructureClass": "

        For registered instances, the infrastructure class: ec2 or on-premises.

        ", "Instance$InstanceId": "

        The instance ID.

        ", "Instance$InstanceProfileArn": "

        The ARN of the instance's IAM profile. For more information about IAM ARNs, see Using Identifiers.

        ", "Instance$InstanceType": "

        The instance type, such as t2.micro.

        ", "Instance$LastServiceErrorId": "

        The ID of the last service error. For more information, call DescribeServiceErrors.

        ", "Instance$Os": "

        The instance's operating system.

        ", "Instance$Platform": "

        The instance's platform.

        ", "Instance$PrivateDns": "

        The The instance's private DNS name.

        ", "Instance$PrivateIp": "

        The instance's private IP address.

        ", "Instance$PublicDns": "

        The instance public DNS name.

        ", "Instance$PublicIp": "

        The instance public IP address.

        ", "Instance$RegisteredBy": "

        For registered instances, who performed the registration.

        ", "Instance$ReportedAgentVersion": "

        The instance's reported AWS OpsWorks agent version.

        ", "Instance$RootDeviceVolumeId": "

        The root device volume ID.

        ", "Instance$SshHostDsaKeyFingerprint": "

        The SSH key's Deep Security Agent (DSA) fingerprint.

        ", "Instance$SshHostRsaKeyFingerprint": "

        The SSH key's RSA fingerprint.

        ", "Instance$SshKeyName": "

        The instance's Amazon EC2 key-pair name.

        ", "Instance$StackId": "

        The stack ID.

        ", "Instance$Status": "

        The instance status:

        • booting

        • connection_lost

        • online

        • pending

        • rebooting

        • requested

        • running_setup

        • setup_failed

        • shutting_down

        • start_failed

        • stop_failed

        • stopped

        • stopping

        • terminated

        • terminating

        ", "Instance$SubnetId": "

        The instance's subnet ID; applicable only if the stack is running in a VPC.

        ", "Instance$Tenancy": "

        The instance's tenancy option, such as dedicated or host.

        ", "InstanceIdentity$Document": "

        A JSON document that contains the metadata.

        ", "InstanceIdentity$Signature": "

        A signature that can be used to verify the document's accuracy and authenticity.

        ", "Layer$StackId": "

        The layer stack ID.

        ", "Layer$LayerId": "

        The layer ID.

        ", "Layer$Name": "

        The layer name.

        ", "Layer$Shortname": "

        The layer short name.

        ", "Layer$CustomInstanceProfileArn": "

        The ARN of the default IAM profile to be used for the layer's EC2 instances. For more information about IAM ARNs, see Using Identifiers.

        ", "Layer$CustomJson": "

        A JSON formatted string containing the layer's custom stack configuration and deployment attributes.

        ", "LayerAttributes$value": null, "LoadBasedAutoScalingConfiguration$LayerId": "

        The layer ID.

        ", "Parameters$key": null, "Parameters$value": null, "Permission$StackId": "

        A stack ID.

        ", "Permission$IamUserArn": "

        The Amazon Resource Name (ARN) for an AWS Identity and Access Management (IAM) role. For more information about IAM ARNs, see Using Identifiers.

        ", "Permission$Level": "

        The user's permission level, which must be the following:

        • deny

        • show

        • deploy

        • manage

        • iam_only

        For more information on the permissions associated with these levels, see Managing User Permissions

        ", "RaidArray$RaidArrayId": "

        The array ID.

        ", "RaidArray$InstanceId": "

        The instance ID.

        ", "RaidArray$Name": "

        The array name.

        ", "RaidArray$Device": "

        The array's Linux device. For example /dev/mdadm0.

        ", "RaidArray$MountPoint": "

        The array's mount point.

        ", "RaidArray$AvailabilityZone": "

        The array's Availability Zone. For more information, see Regions and Endpoints.

        ", "RaidArray$StackId": "

        The stack ID.

        ", "RaidArray$VolumeType": "

        The volume type, standard or PIOPS.

        ", "RdsDbInstance$RdsDbInstanceArn": "

        The instance's ARN.

        ", "RdsDbInstance$DbInstanceIdentifier": "

        The DB instance identifier.

        ", "RdsDbInstance$DbUser": "

        The master user name.

        ", "RdsDbInstance$DbPassword": "

        AWS OpsWorks returns *****FILTERED***** instead of the actual value.

        ", "RdsDbInstance$Region": "

        The instance's AWS region.

        ", "RdsDbInstance$Address": "

        The instance's address.

        ", "RdsDbInstance$Engine": "

        The instance's database engine.

        ", "RdsDbInstance$StackId": "

        The ID of the stack that the instance is registered with.

        ", "RebootInstanceRequest$InstanceId": "

        The instance ID.

        ", "RegisterEcsClusterRequest$EcsClusterArn": "

        The cluster's ARN.

        ", "RegisterEcsClusterRequest$StackId": "

        The stack ID.

        ", "RegisterEcsClusterResult$EcsClusterArn": "

        The cluster's ARN.

        ", "RegisterElasticIpRequest$ElasticIp": "

        The Elastic IP address.

        ", "RegisterElasticIpRequest$StackId": "

        The stack ID.

        ", "RegisterElasticIpResult$ElasticIp": "

        The Elastic IP address.

        ", "RegisterInstanceRequest$StackId": "

        The ID of the stack that the instance is to be registered with.

        ", "RegisterInstanceRequest$Hostname": "

        The instance's hostname.

        ", "RegisterInstanceRequest$PublicIp": "

        The instance's public IP address.

        ", "RegisterInstanceRequest$PrivateIp": "

        The instance's private IP address.

        ", "RegisterInstanceRequest$RsaPublicKey": "

        The instances public RSA key. This key is used to encrypt communication between the instance and the service.

        ", "RegisterInstanceRequest$RsaPublicKeyFingerprint": "

        The instances public RSA key fingerprint.

        ", "RegisterInstanceResult$InstanceId": "

        The registered instance's AWS OpsWorks ID.

        ", "RegisterRdsDbInstanceRequest$StackId": "

        The stack ID.

        ", "RegisterRdsDbInstanceRequest$RdsDbInstanceArn": "

        The Amazon RDS instance's ARN.

        ", "RegisterRdsDbInstanceRequest$DbUser": "

        The database's master user name.

        ", "RegisterRdsDbInstanceRequest$DbPassword": "

        The database password.

        ", "RegisterVolumeRequest$Ec2VolumeId": "

        The Amazon EBS volume ID.

        ", "RegisterVolumeRequest$StackId": "

        The stack ID.

        ", "RegisterVolumeResult$VolumeId": "

        The volume ID.

        ", "ReportedOs$Family": "

        The operating system family.

        ", "ReportedOs$Name": "

        The operating system name.

        ", "ReportedOs$Version": "

        The operating system version.

        ", "ResourceNotFoundException$message": "

        The exception message.

        ", "SelfUserProfile$IamUserArn": "

        The user's IAM ARN.

        ", "SelfUserProfile$Name": "

        The user's name.

        ", "SelfUserProfile$SshUsername": "

        The user's SSH user name.

        ", "SelfUserProfile$SshPublicKey": "

        The user's SSH public key.

        ", "ServiceError$ServiceErrorId": "

        The error ID.

        ", "ServiceError$StackId": "

        The stack ID.

        ", "ServiceError$InstanceId": "

        The instance ID.

        ", "ServiceError$Type": "

        The error type.

        ", "ServiceError$Message": "

        A message that describes the error.

        ", "SetLoadBasedAutoScalingRequest$LayerId": "

        The layer ID.

        ", "SetPermissionRequest$StackId": "

        The stack ID.

        ", "SetPermissionRequest$IamUserArn": "

        The user's IAM ARN. This can also be a federated user's ARN.

        ", "SetPermissionRequest$Level": "

        The user's permission level, which must be set to one of the following strings. You cannot set your own permissions level.

        • deny

        • show

        • deploy

        • manage

        • iam_only

        For more information on the permissions associated with these levels, see Managing User Permissions.

        ", "SetTimeBasedAutoScalingRequest$InstanceId": "

        The instance ID.

        ", "Source$Url": "

        The source URL.

        ", "Source$Username": "

        This parameter depends on the repository type.

        • For Amazon S3 bundles, set Username to the appropriate IAM access key ID.

        • For HTTP bundles, Git repositories, and Subversion repositories, set Username to the user name.

        ", "Source$Password": "

        When included in a request, the parameter depends on the repository type.

        • For Amazon S3 bundles, set Password to the appropriate IAM secret access key.

        • For HTTP bundles and Subversion repositories, set Password to the password.

        For more information on how to safely handle IAM credentials, see http://docs.aws.amazon.com/general/latest/gr/aws-access-keys-best-practices.html.

        In responses, AWS OpsWorks returns *****FILTERED***** instead of the actual value.

        ", "Source$SshKey": "

        In requests, the repository's SSH key.

        In responses, AWS OpsWorks returns *****FILTERED***** instead of the actual value.

        ", "Source$Revision": "

        The application's version. AWS OpsWorks enables you to easily deploy new versions of an application. One of the simplest approaches is to have branches or revisions in your repository that represent different versions that can potentially be deployed.

        ", "SslConfiguration$Certificate": "

        The contents of the certificate's domain.crt file.

        ", "SslConfiguration$PrivateKey": "

        The private key; the contents of the certificate's domain.kex file.

        ", "SslConfiguration$Chain": "

        Optional. Can be used to specify an intermediate certificate authority key or client authentication.

        ", "Stack$StackId": "

        The stack ID.

        ", "Stack$Name": "

        The stack name.

        ", "Stack$Arn": "

        The stack's ARN.

        ", "Stack$Region": "

        The stack AWS region, such as \"ap-northeast-2\". For more information about AWS regions, see Regions and Endpoints.

        ", "Stack$VpcId": "

        The VPC ID; applicable only if the stack is running in a VPC.

        ", "Stack$ServiceRoleArn": "

        The stack AWS Identity and Access Management (IAM) role.

        ", "Stack$DefaultInstanceProfileArn": "

        The ARN of an IAM profile that is the default profile for all of the stack's EC2 instances. For more information about IAM ARNs, see Using Identifiers.

        ", "Stack$DefaultOs": "

        The stack's default operating system.

        ", "Stack$HostnameTheme": "

        The stack host name theme, with spaces replaced by underscores.

        ", "Stack$DefaultAvailabilityZone": "

        The stack's default Availability Zone. For more information, see Regions and Endpoints.

        ", "Stack$DefaultSubnetId": "

        The default subnet ID; applicable only if the stack is running in a VPC.

        ", "Stack$CustomJson": "

        A JSON object that contains user-defined attributes to be added to the stack configuration and deployment attributes. You can use custom JSON to override the corresponding default stack configuration attribute values or to pass data to recipes. The string should be in the following format:

        \"{\\\"key1\\\": \\\"value1\\\", \\\"key2\\\": \\\"value2\\\",...}\"

        For more information on custom JSON, see Use Custom JSON to Modify the Stack Configuration Attributes.

        ", "Stack$DefaultSshKeyName": "

        A default Amazon EC2 key pair for the stack's instances. You can override this value when you create or update an instance.

        ", "Stack$AgentVersion": "

        The agent version. This parameter is set to LATEST for auto-update. or a version number for a fixed agent version.

        ", "StackAttributes$value": null, "StackConfigurationManager$Name": "

        The name. This parameter must be set to \"Chef\".

        ", "StackConfigurationManager$Version": "

        The Chef version. This parameter must be set to 12, 11.10, or 11.4 for Linux stacks, and to 12.2 for Windows stacks. The default value for Linux stacks is 11.4.

        ", "StackSummary$StackId": "

        The stack ID.

        ", "StackSummary$Name": "

        The stack name.

        ", "StackSummary$Arn": "

        The stack's ARN.

        ", "StartInstanceRequest$InstanceId": "

        The instance ID.

        ", "StartStackRequest$StackId": "

        The stack ID.

        ", "StopInstanceRequest$InstanceId": "

        The instance ID.

        ", "StopStackRequest$StackId": "

        The stack ID.

        ", "Strings$member": null, "TemporaryCredential$Username": "

        The user name.

        ", "TemporaryCredential$Password": "

        The password.

        ", "TemporaryCredential$InstanceId": "

        The instance's AWS OpsWorks ID.

        ", "TimeBasedAutoScalingConfiguration$InstanceId": "

        The instance ID.

        ", "UnassignInstanceRequest$InstanceId": "

        The instance ID.

        ", "UnassignVolumeRequest$VolumeId": "

        The volume ID.

        ", "UpdateAppRequest$AppId": "

        The app ID.

        ", "UpdateAppRequest$Name": "

        The app name.

        ", "UpdateAppRequest$Description": "

        A description of the app.

        ", "UpdateElasticIpRequest$ElasticIp": "

        The address.

        ", "UpdateElasticIpRequest$Name": "

        The new name.

        ", "UpdateInstanceRequest$InstanceId": "

        The instance ID.

        ", "UpdateInstanceRequest$InstanceType": "

        The instance type, such as t2.micro. For a list of supported instance types, open the stack in the console, choose Instances, and choose + Instance. The Size list contains the currently supported types. For more information, see Instance Families and Types. The parameter values that you use to specify the various types are in the API Name column of the Available Instance Types table.

        ", "UpdateInstanceRequest$Hostname": "

        The instance host name.

        ", "UpdateInstanceRequest$Os": "

        The instance's operating system, which must be set to one of the following. You cannot update an instance that is using a custom AMI.

        • A supported Linux operating system: An Amazon Linux version, such as Amazon Linux 2016.03, Amazon Linux 2015.09, or Amazon Linux 2015.03.

        • A supported Ubuntu operating system, such as Ubuntu 16.04 LTS, Ubuntu 14.04 LTS, or Ubuntu 12.04 LTS.

        • CentOS 7

        • Red Hat Enterprise Linux 7

        • A supported Windows operating system, such as Microsoft Windows Server 2012 R2 Base, Microsoft Windows Server 2012 R2 with SQL Server Express, Microsoft Windows Server 2012 R2 with SQL Server Standard, or Microsoft Windows Server 2012 R2 with SQL Server Web.

        For more information on the supported operating systems, see AWS OpsWorks Operating Systems.

        The default option is the current Amazon Linux version. If you set this parameter to Custom, you must use the AmiId parameter to specify the custom AMI that you want to use. For more information on the supported operating systems, see Operating Systems. For more information on how to use custom AMIs with OpsWorks, see Using Custom AMIs.

        You can specify a different Linux operating system for the updated stack, but you cannot change from Linux to Windows or Windows to Linux.

        ", "UpdateInstanceRequest$AmiId": "

        The ID of the AMI that was used to create the instance. The value of this parameter must be the same AMI ID that the instance is already using. You cannot apply a new AMI to an instance by running UpdateInstance. UpdateInstance does not work on instances that are using custom AMIs.

        ", "UpdateInstanceRequest$SshKeyName": "

        The instance's Amazon EC2 key name.

        ", "UpdateInstanceRequest$AgentVersion": "

        The default AWS OpsWorks agent version. You have the following options:

        • INHERIT - Use the stack's default agent version setting.

        • version_number - Use the specified agent version. This value overrides the stack's default setting. To update the agent version, you must edit the instance configuration and specify a new version. AWS OpsWorks then automatically installs that version on the instance.

        The default setting is INHERIT. To specify an agent version, you must use the complete version number, not the abbreviated number shown on the console. For a list of available agent version numbers, call DescribeAgentVersions.

        ", "UpdateLayerRequest$LayerId": "

        The layer ID.

        ", "UpdateLayerRequest$Name": "

        The layer name, which is used by the console.

        ", "UpdateLayerRequest$Shortname": "

        For custom layers only, use this parameter to specify the layer's short name, which is used internally by AWS OpsWorksand by Chef. The short name is also used as the name for the directory where your app files are installed. It can have a maximum of 200 characters and must be in the following format: /\\A[a-z0-9\\-\\_\\.]+\\Z/.

        The built-in layers' short names are defined by AWS OpsWorks. For more information, see the Layer Reference

        ", "UpdateLayerRequest$CustomInstanceProfileArn": "

        The ARN of an IAM profile to be used for all of the layer's EC2 instances. For more information about IAM ARNs, see Using Identifiers.

        ", "UpdateLayerRequest$CustomJson": "

        A JSON-formatted string containing custom stack configuration and deployment attributes to be installed on the layer's instances. For more information, see Using Custom JSON.

        ", "UpdateMyUserProfileRequest$SshPublicKey": "

        The user's SSH public key.

        ", "UpdateRdsDbInstanceRequest$RdsDbInstanceArn": "

        The Amazon RDS instance's ARN.

        ", "UpdateRdsDbInstanceRequest$DbUser": "

        The master user name.

        ", "UpdateRdsDbInstanceRequest$DbPassword": "

        The database password.

        ", "UpdateStackRequest$StackId": "

        The stack ID.

        ", "UpdateStackRequest$Name": "

        The stack's new name.

        ", "UpdateStackRequest$ServiceRoleArn": "

        Do not use this parameter. You cannot update a stack's service role.

        ", "UpdateStackRequest$DefaultInstanceProfileArn": "

        The ARN of an IAM profile that is the default profile for all of the stack's EC2 instances. For more information about IAM ARNs, see Using Identifiers.

        ", "UpdateStackRequest$DefaultOs": "

        The stack's operating system, which must be set to one of the following:

        • A supported Linux operating system: An Amazon Linux version, such as Amazon Linux 2016.03, Amazon Linux 2015.09, or Amazon Linux 2015.03.

        • A supported Ubuntu operating system, such as Ubuntu 16.04 LTS, Ubuntu 14.04 LTS, or Ubuntu 12.04 LTS.

        • CentOS 7

        • Red Hat Enterprise Linux 7

        • A supported Windows operating system, such as Microsoft Windows Server 2012 R2 Base, Microsoft Windows Server 2012 R2 with SQL Server Express, Microsoft Windows Server 2012 R2 with SQL Server Standard, or Microsoft Windows Server 2012 R2 with SQL Server Web.

        • A custom AMI: Custom. You specify the custom AMI you want to use when you create instances. For more information on how to use custom AMIs with OpsWorks, see Using Custom AMIs.

        The default option is the stack's current operating system. For more information on the supported operating systems, see AWS OpsWorks Operating Systems.

        ", "UpdateStackRequest$HostnameTheme": "

        The stack's new host name theme, with spaces replaced by underscores. The theme is used to generate host names for the stack's instances. By default, HostnameTheme is set to Layer_Dependent, which creates host names by appending integers to the layer's short name. The other themes are:

        • Baked_Goods

        • Clouds

        • Europe_Cities

        • Fruits

        • Greek_Deities

        • Legendary_creatures_from_Japan

        • Planets_and_Moons

        • Roman_Deities

        • Scottish_Islands

        • US_Cities

        • Wild_Cats

        To obtain a generated host name, call GetHostNameSuggestion, which returns a host name based on the current theme.

        ", "UpdateStackRequest$DefaultAvailabilityZone": "

        The stack's default Availability Zone, which must be in the stack's region. For more information, see Regions and Endpoints. If you also specify a value for DefaultSubnetId, the subnet must be in the same zone. For more information, see CreateStack.

        ", "UpdateStackRequest$DefaultSubnetId": "

        The stack's default VPC subnet ID. This parameter is required if you specify a value for the VpcId parameter. All instances are launched into this subnet unless you specify otherwise when you create the instance. If you also specify a value for DefaultAvailabilityZone, the subnet must be in that zone. For information on default values and when this parameter is required, see the VpcId parameter description.

        ", "UpdateStackRequest$CustomJson": "

        A string that contains user-defined, custom JSON. It can be used to override the corresponding default stack configuration JSON values or to pass data to recipes. The string should be in the following format:

        \"{\\\"key1\\\": \\\"value1\\\", \\\"key2\\\": \\\"value2\\\",...}\"

        For more information on custom JSON, see Use Custom JSON to Modify the Stack Configuration Attributes.

        ", "UpdateStackRequest$DefaultSshKeyName": "

        A default Amazon EC2 key-pair name. The default value is none. If you specify a key-pair name, AWS OpsWorks installs the public key on the instance and you can use the private key with an SSH client to log in to the instance. For more information, see Using SSH to Communicate with an Instance and Managing SSH Access. You can override this setting by specifying a different key pair, or no key pair, when you create an instance.

        ", "UpdateStackRequest$AgentVersion": "

        The default AWS OpsWorks agent version. You have the following options:

        • Auto-update - Set this parameter to LATEST. AWS OpsWorks automatically installs new agent versions on the stack's instances as soon as they are available.

        • Fixed version - Set this parameter to your preferred agent version. To update the agent version, you must edit the stack configuration and specify a new version. AWS OpsWorks then automatically installs that version on the stack's instances.

        The default setting is LATEST. To specify an agent version, you must use the complete version number, not the abbreviated number shown on the console. For a list of available agent version numbers, call DescribeAgentVersions.

        You can also specify an agent version when you create or update an instance, which overrides the stack's default setting.

        ", "UpdateUserProfileRequest$IamUserArn": "

        The user IAM ARN. This can also be a federated user's ARN.

        ", "UpdateUserProfileRequest$SshUsername": "

        The user's SSH user name. The allowable characters are [a-z], [A-Z], [0-9], '-', and '_'. If the specified name includes other punctuation marks, AWS OpsWorks removes them. For example, my.name will be changed to myname. If you do not specify an SSH user name, AWS OpsWorks generates one from the IAM user name.

        ", "UpdateUserProfileRequest$SshPublicKey": "

        The user's new SSH public key.

        ", "UpdateVolumeRequest$VolumeId": "

        The volume ID.

        ", "UpdateVolumeRequest$Name": "

        The new name.

        ", "UpdateVolumeRequest$MountPoint": "

        The new mount point.

        ", "UserProfile$IamUserArn": "

        The user's IAM ARN.

        ", "UserProfile$Name": "

        The user's name.

        ", "UserProfile$SshUsername": "

        The user's SSH user name.

        ", "UserProfile$SshPublicKey": "

        The user's SSH public key.

        ", "ValidationException$message": "

        The exception message.

        ", "Volume$VolumeId": "

        The volume ID.

        ", "Volume$Ec2VolumeId": "

        The Amazon EC2 volume ID.

        ", "Volume$Name": "

        The volume name.

        ", "Volume$RaidArrayId": "

        The RAID array ID.

        ", "Volume$InstanceId": "

        The instance ID.

        ", "Volume$Status": "

        The value returned by DescribeVolumes.

        ", "Volume$Device": "

        The device name.

        ", "Volume$MountPoint": "

        The volume mount point. For example, \"/mnt/disk1\".

        ", "Volume$Region": "

        The AWS region. For more information about AWS regions, see Regions and Endpoints.

        ", "Volume$AvailabilityZone": "

        The volume Availability Zone. For more information, see Regions and Endpoints.

        ", "Volume$VolumeType": "

        The volume type, standard or PIOPS.

        ", "VolumeConfiguration$MountPoint": "

        The volume mount point. For example \"/dev/sdh\".

        ", "VolumeConfiguration$VolumeType": "

        The volume type:

        • standard - Magnetic

        • io1 - Provisioned IOPS (SSD)

        • gp2 - General Purpose (SSD)

        " } }, "Strings": { "base": null, "refs": { "App$Domains": "

        The app vhost settings with multiple domains separated by commas. For example: 'www.example.com, example.com'

        ", "AssignInstanceRequest$LayerIds": "

        The layer ID, which must correspond to a custom layer. You cannot assign a registered instance to a built-in layer.

        ", "AutoScalingThresholds$Alarms": "

        Custom Cloudwatch auto scaling alarms, to be used as thresholds. This parameter takes a list of up to five alarm names, which are case sensitive and must be in the same region as the stack.

        To use custom alarms, you must update your service role to allow cloudwatch:DescribeAlarms. You can either have AWS OpsWorks update the role for you when you first use this feature or you can edit the role manually. For more information, see Allowing AWS OpsWorks to Act on Your Behalf.

        ", "CloneStackRequest$CloneAppIds": "

        A list of source stack app IDs to be included in the cloned stack.

        ", "CreateAppRequest$Domains": "

        The app virtual host settings, with multiple domains separated by commas. For example: 'www.example.com, example.com'

        ", "CreateDeploymentRequest$InstanceIds": "

        The instance IDs for the deployment targets.

        ", "CreateDeploymentRequest$LayerIds": "

        The layer IDs for the deployment targets.

        ", "CreateInstanceRequest$LayerIds": "

        An array that contains the instance's layer IDs.

        ", "CreateLayerRequest$CustomSecurityGroupIds": "

        An array containing the layer custom security group IDs.

        ", "CreateLayerRequest$Packages": "

        An array of Package objects that describes the layer packages.

        ", "Deployment$InstanceIds": "

        The IDs of the target instances.

        ", "DeploymentCommandArgs$value": null, "DescribeAppsRequest$AppIds": "

        An array of app IDs for the apps to be described. If you use this parameter, DescribeApps returns a description of the specified apps. Otherwise, it returns a description of every app.

        ", "DescribeCommandsRequest$CommandIds": "

        An array of command IDs. If you include this parameter, DescribeCommands returns a description of the specified commands. Otherwise, it returns a description of every command.

        ", "DescribeDeploymentsRequest$DeploymentIds": "

        An array of deployment IDs to be described. If you include this parameter, DescribeDeployments returns a description of the specified deployments. Otherwise, it returns a description of every deployment.

        ", "DescribeEcsClustersRequest$EcsClusterArns": "

        A list of ARNs, one for each cluster to be described.

        ", "DescribeElasticIpsRequest$Ips": "

        An array of Elastic IP addresses to be described. If you include this parameter, DescribeElasticIps returns a description of the specified Elastic IP addresses. Otherwise, it returns a description of every Elastic IP address.

        ", "DescribeElasticLoadBalancersRequest$LayerIds": "

        A list of layer IDs. The action describes the Elastic Load Balancing instances for the specified layers.

        ", "DescribeInstancesRequest$InstanceIds": "

        An array of instance IDs to be described. If you use this parameter, DescribeInstances returns a description of the specified instances. Otherwise, it returns a description of every instance.

        ", "DescribeLayersRequest$LayerIds": "

        An array of layer IDs that specify the layers to be described. If you omit this parameter, DescribeLayers returns a description of every layer in the specified stack.

        ", "DescribeLoadBasedAutoScalingRequest$LayerIds": "

        An array of layer IDs.

        ", "DescribeRaidArraysRequest$RaidArrayIds": "

        An array of RAID array IDs. If you use this parameter, DescribeRaidArrays returns descriptions of the specified arrays. Otherwise, it returns a description of every array.

        ", "DescribeRdsDbInstancesRequest$RdsDbInstanceArns": "

        An array containing the ARNs of the instances to be described.

        ", "DescribeServiceErrorsRequest$ServiceErrorIds": "

        An array of service error IDs. If you use this parameter, DescribeServiceErrors returns descriptions of the specified errors. Otherwise, it returns a description of every error.

        ", "DescribeStacksRequest$StackIds": "

        An array of stack IDs that specify the stacks to be described. If you omit this parameter, DescribeStacks returns a description of every stack.

        ", "DescribeTimeBasedAutoScalingRequest$InstanceIds": "

        An array of instance IDs.

        ", "DescribeUserProfilesRequest$IamUserArns": "

        An array of IAM or federated user ARNs that identify the users to be described.

        ", "DescribeVolumesRequest$VolumeIds": "

        Am array of volume IDs. If you use this parameter, DescribeVolumes returns descriptions of the specified volumes. Otherwise, it returns a description of every volume.

        ", "ElasticLoadBalancer$AvailabilityZones": "

        A list of Availability Zones.

        ", "ElasticLoadBalancer$SubnetIds": "

        A list of subnet IDs, if the stack is running in a VPC.

        ", "ElasticLoadBalancer$Ec2InstanceIds": "

        A list of the EC2 instances that the Elastic Load Balancing instance is managing traffic for.

        ", "Instance$LayerIds": "

        An array containing the instance layer IDs.

        ", "Instance$SecurityGroupIds": "

        An array containing the instance security group IDs.

        ", "Layer$CustomSecurityGroupIds": "

        An array containing the layer's custom security group IDs.

        ", "Layer$DefaultSecurityGroupNames": "

        An array containing the layer's security group names.

        ", "Layer$Packages": "

        An array of Package objects that describe the layer's packages.

        ", "Recipes$Setup": "

        An array of custom recipe names to be run following a setup event.

        ", "Recipes$Configure": "

        An array of custom recipe names to be run following a configure event.

        ", "Recipes$Deploy": "

        An array of custom recipe names to be run following a deploy event.

        ", "Recipes$Undeploy": "

        An array of custom recipe names to be run following a undeploy event.

        ", "Recipes$Shutdown": "

        An array of custom recipe names to be run following a shutdown event.

        ", "UpdateAppRequest$Domains": "

        The app's virtual host settings, with multiple domains separated by commas. For example: 'www.example.com, example.com'

        ", "UpdateInstanceRequest$LayerIds": "

        The instance's layer IDs.

        ", "UpdateLayerRequest$CustomSecurityGroupIds": "

        An array containing the layer's custom security group IDs.

        ", "UpdateLayerRequest$Packages": "

        An array of Package objects that describe the layer's packages.

        " } }, "Switch": { "base": null, "refs": { "DailyAutoScalingSchedule$value": null } }, "TemporaryCredential": { "base": "

        Contains the data needed by RDP clients such as the Microsoft Remote Desktop Connection to log in to the instance.

        ", "refs": { "GrantAccessResult$TemporaryCredential": "

        A TemporaryCredential object that contains the data needed to log in to the instance by RDP clients, such as the Microsoft Remote Desktop Connection.

        " } }, "TimeBasedAutoScalingConfiguration": { "base": "

        Describes an instance's time-based auto scaling configuration.

        ", "refs": { "TimeBasedAutoScalingConfigurations$member": null } }, "TimeBasedAutoScalingConfigurations": { "base": null, "refs": { "DescribeTimeBasedAutoScalingResult$TimeBasedAutoScalingConfigurations": "

        An array of TimeBasedAutoScalingConfiguration objects that describe the configuration for the specified instances.

        " } }, "UnassignInstanceRequest": { "base": null, "refs": { } }, "UnassignVolumeRequest": { "base": null, "refs": { } }, "UpdateAppRequest": { "base": null, "refs": { } }, "UpdateElasticIpRequest": { "base": null, "refs": { } }, "UpdateInstanceRequest": { "base": null, "refs": { } }, "UpdateLayerRequest": { "base": null, "refs": { } }, "UpdateMyUserProfileRequest": { "base": null, "refs": { } }, "UpdateRdsDbInstanceRequest": { "base": null, "refs": { } }, "UpdateStackRequest": { "base": null, "refs": { } }, "UpdateUserProfileRequest": { "base": null, "refs": { } }, "UpdateVolumeRequest": { "base": null, "refs": { } }, "UserProfile": { "base": "

        Describes a user's SSH information.

        ", "refs": { "UserProfiles$member": null } }, "UserProfiles": { "base": null, "refs": { "DescribeUserProfilesResult$UserProfiles": "

        A Users object that describes the specified users.

        " } }, "ValidForInMinutes": { "base": null, "refs": { "GrantAccessRequest$ValidForInMinutes": "

        The length of time (in minutes) that the grant is valid. When the grant expires at the end of this period, the user will no longer be able to use the credentials to log in. If the user is logged in at the time, he or she automatically will be logged out.

        " } }, "ValidationException": { "base": "

        Indicates that a request was not valid.

        ", "refs": { } }, "VirtualizationType": { "base": null, "refs": { "Instance$VirtualizationType": "

        The instance's virtualization type: paravirtual or hvm.

        " } }, "Volume": { "base": "

        Describes an instance's Amazon EBS volume.

        ", "refs": { "Volumes$member": null } }, "VolumeConfiguration": { "base": "

        Describes an Amazon EBS volume configuration.

        ", "refs": { "VolumeConfigurations$member": null } }, "VolumeConfigurations": { "base": null, "refs": { "CreateLayerRequest$VolumeConfigurations": "

        A VolumeConfigurations object that describes the layer's Amazon EBS volumes.

        ", "Layer$VolumeConfigurations": "

        A VolumeConfigurations object that describes the layer's Amazon EBS volumes.

        ", "UpdateLayerRequest$VolumeConfigurations": "

        A VolumeConfigurations object that describes the layer's Amazon EBS volumes.

        " } }, "VolumeType": { "base": null, "refs": { "EbsBlockDevice$VolumeType": "

        The volume type. gp2 for General Purpose (SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, and standard for Magnetic volumes.

        " } }, "Volumes": { "base": null, "refs": { "DescribeVolumesResult$Volumes": "

        An array of volume IDs.

        " } }, "WeeklyAutoScalingSchedule": { "base": "

        Describes a time-based instance's auto scaling schedule. The schedule consists of a set of key-value pairs.

        • The key is the time period (a UTC hour) and must be an integer from 0 - 23.

        • The value indicates whether the instance should be online or offline for the specified period, and must be set to \"on\" or \"off\"

        The default setting for all time periods is off, so you use the following parameters primarily to specify the online periods. You don't have to explicitly specify offline periods unless you want to change an online period to an offline period.

        The following example specifies that the instance should be online for four hours, from UTC 1200 - 1600. It will be off for the remainder of the day.

        { \"12\":\"on\", \"13\":\"on\", \"14\":\"on\", \"15\":\"on\" }

        ", "refs": { "SetTimeBasedAutoScalingRequest$AutoScalingSchedule": "

        An AutoScalingSchedule with the instance schedule.

        ", "TimeBasedAutoScalingConfiguration$AutoScalingSchedule": "

        A WeeklyAutoScalingSchedule object with the instance schedule.

        " } } } } aws-sdk-go-1.4.22/models/apis/opsworks/2013-02-18/examples-1.json000066400000000000000000000000541300374646400235710ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/opsworks/2013-02-18/paginators-1.json000066400000000000000000000023771300374646400241340ustar00rootroot00000000000000{ "pagination": { "DescribeApps": { "result_key": "Apps" }, "DescribeCommands": { "result_key": "Commands" }, "DescribeDeployments": { "result_key": "Deployments" }, "DescribeEcsClusters": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "EcsClusters" }, "DescribeElasticIps": { "result_key": "ElasticIps" }, "DescribeElasticLoadBalancers": { "result_key": "ElasticLoadBalancers" }, "DescribeInstances": { "result_key": "Instances" }, "DescribeLayers": { "result_key": "Layers" }, "DescribeLoadBasedAutoScaling": { "result_key": "LoadBasedAutoScalingConfigurations" }, "DescribePermissions": { "result_key": "Permissions" }, "DescribeRaidArrays": { "result_key": "RaidArrays" }, "DescribeServiceErrors": { "result_key": "ServiceErrors" }, "DescribeStacks": { "result_key": "Stacks" }, "DescribeTimeBasedAutoScaling": { "result_key": "TimeBasedAutoScalingConfigurations" }, "DescribeUserProfiles": { "result_key": "UserProfiles" }, "DescribeVolumes": { "result_key": "Volumes" } } } aws-sdk-go-1.4.22/models/apis/opsworks/2013-02-18/waiters-2.json000066400000000000000000000170671300374646400234460ustar00rootroot00000000000000{ "version": 2, "waiters": { "AppExists": { "delay": 1, "operation": "DescribeApps", "maxAttempts": 40, "acceptors": [ { "expected": 200, "matcher": "status", "state": "success" }, { "matcher": "status", "expected": 400, "state": "failure" } ] }, "DeploymentSuccessful": { "delay": 15, "operation": "DescribeDeployments", "maxAttempts": 40, "description": "Wait until a deployment has completed successfully", "acceptors": [ { "expected": "successful", "matcher": "pathAll", "state": "success", "argument": "Deployments[].Status" }, { "expected": "failed", "matcher": "pathAny", "state": "failure", "argument": "Deployments[].Status" } ] }, "InstanceOnline": { "delay": 15, "operation": "DescribeInstances", "maxAttempts": 40, "description": "Wait until OpsWorks instance is online.", "acceptors": [ { "expected": "online", "matcher": "pathAll", "state": "success", "argument": "Instances[].Status" }, { "expected": "setup_failed", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "shutting_down", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "start_failed", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "stopped", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "stopping", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "terminating", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "terminated", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "stop_failed", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" } ] }, "InstanceRegistered": { "delay": 15, "operation": "DescribeInstances", "maxAttempts": 40, "description": "Wait until OpsWorks instance is registered.", "acceptors": [ { "expected": "registered", "matcher": "pathAll", "state": "success", "argument": "Instances[].Status" }, { "expected": "setup_failed", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "shutting_down", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "stopped", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "stopping", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "terminating", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "terminated", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "stop_failed", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" } ] }, "InstanceStopped": { "delay": 15, "operation": "DescribeInstances", "maxAttempts": 40, "description": "Wait until OpsWorks instance is stopped.", "acceptors": [ { "expected": "stopped", "matcher": "pathAll", "state": "success", "argument": "Instances[].Status" }, { "expected": "booting", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "online", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "pending", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "rebooting", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "requested", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "running_setup", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "setup_failed", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "start_failed", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "stop_failed", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" } ] }, "InstanceTerminated": { "delay": 15, "operation": "DescribeInstances", "maxAttempts": 40, "description": "Wait until OpsWorks instance is terminated.", "acceptors": [ { "expected": "terminated", "matcher": "pathAll", "state": "success", "argument": "Instances[].Status" }, { "expected": "ResourceNotFoundException", "matcher": "error", "state": "success" }, { "expected": "booting", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "online", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "pending", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "rebooting", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "requested", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "running_setup", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "setup_failed", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" }, { "expected": "start_failed", "matcher": "pathAny", "state": "failure", "argument": "Instances[].Status" } ] } } } aws-sdk-go-1.4.22/models/apis/rds/000077500000000000000000000000001300374646400165725ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/rds/2013-01-10/000077500000000000000000000000001300374646400176135ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/rds/2013-01-10/api-2.json000066400000000000000000002376451300374646400214370ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2013-01-10", "endpointPrefix":"rds", "protocol":"query", "serviceAbbreviation":"Amazon RDS", "serviceFullName":"Amazon Relational Database Service", "signatureVersion":"v4", "xmlNamespace":"http://rds.amazonaws.com/doc/2013-01-10/" }, "operations":{ "AddSourceIdentifierToSubscription":{ "name":"AddSourceIdentifierToSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddSourceIdentifierToSubscriptionMessage"}, "output":{ "shape":"AddSourceIdentifierToSubscriptionResult", "resultWrapper":"AddSourceIdentifierToSubscriptionResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"}, {"shape":"SourceNotFoundFault"} ] }, "AddTagsToResource":{ "name":"AddTagsToResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsToResourceMessage"}, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "AuthorizeDBSecurityGroupIngress":{ "name":"AuthorizeDBSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AuthorizeDBSecurityGroupIngressMessage"}, "output":{ "shape":"AuthorizeDBSecurityGroupIngressResult", "resultWrapper":"AuthorizeDBSecurityGroupIngressResult" }, "errors":[ {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"InvalidDBSecurityGroupStateFault"}, {"shape":"AuthorizationAlreadyExistsFault"}, {"shape":"AuthorizationQuotaExceededFault"} ] }, "CopyDBSnapshot":{ "name":"CopyDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopyDBSnapshotMessage"}, "output":{ "shape":"CopyDBSnapshotResult", "resultWrapper":"CopyDBSnapshotResult" }, "errors":[ {"shape":"DBSnapshotAlreadyExistsFault"}, {"shape":"DBSnapshotNotFoundFault"}, {"shape":"InvalidDBSnapshotStateFault"}, {"shape":"SnapshotQuotaExceededFault"} ] }, "CreateDBInstance":{ "name":"CreateDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBInstanceMessage"}, "output":{ "shape":"CreateDBInstanceResult", "resultWrapper":"CreateDBInstanceResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"} ] }, "CreateDBInstanceReadReplica":{ "name":"CreateDBInstanceReadReplica", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBInstanceReadReplicaMessage"}, "output":{ "shape":"CreateDBInstanceReadReplicaResult", "resultWrapper":"CreateDBInstanceReadReplicaResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"} ] }, "CreateDBParameterGroup":{ "name":"CreateDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBParameterGroupMessage"}, "output":{ "shape":"CreateDBParameterGroupResult", "resultWrapper":"CreateDBParameterGroupResult" }, "errors":[ {"shape":"DBParameterGroupQuotaExceededFault"}, {"shape":"DBParameterGroupAlreadyExistsFault"} ] }, "CreateDBSecurityGroup":{ "name":"CreateDBSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBSecurityGroupMessage"}, "output":{ "shape":"CreateDBSecurityGroupResult", "resultWrapper":"CreateDBSecurityGroupResult" }, "errors":[ {"shape":"DBSecurityGroupAlreadyExistsFault"}, {"shape":"DBSecurityGroupQuotaExceededFault"}, {"shape":"DBSecurityGroupNotSupportedFault"} ] }, "CreateDBSnapshot":{ "name":"CreateDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBSnapshotMessage"}, "output":{ "shape":"CreateDBSnapshotResult", "resultWrapper":"CreateDBSnapshotResult" }, "errors":[ {"shape":"DBSnapshotAlreadyExistsFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"SnapshotQuotaExceededFault"} ] }, "CreateDBSubnetGroup":{ "name":"CreateDBSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBSubnetGroupMessage"}, "output":{ "shape":"CreateDBSubnetGroupResult", "resultWrapper":"CreateDBSubnetGroupResult" }, "errors":[ {"shape":"DBSubnetGroupAlreadyExistsFault"}, {"shape":"DBSubnetGroupQuotaExceededFault"}, {"shape":"DBSubnetQuotaExceededFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"} ] }, "CreateEventSubscription":{ "name":"CreateEventSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateEventSubscriptionMessage"}, "output":{ "shape":"CreateEventSubscriptionResult", "resultWrapper":"CreateEventSubscriptionResult" }, "errors":[ {"shape":"EventSubscriptionQuotaExceededFault"}, {"shape":"SubscriptionAlreadyExistFault"}, {"shape":"SNSInvalidTopicFault"}, {"shape":"SNSNoAuthorizationFault"}, {"shape":"SNSTopicArnNotFoundFault"}, {"shape":"SubscriptionCategoryNotFoundFault"}, {"shape":"SourceNotFoundFault"} ] }, "CreateOptionGroup":{ "name":"CreateOptionGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateOptionGroupMessage"}, "output":{ "shape":"CreateOptionGroupResult", "resultWrapper":"CreateOptionGroupResult" }, "errors":[ {"shape":"OptionGroupAlreadyExistsFault"}, {"shape":"OptionGroupQuotaExceededFault"} ] }, "DeleteDBInstance":{ "name":"DeleteDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBInstanceMessage"}, "output":{ "shape":"DeleteDBInstanceResult", "resultWrapper":"DeleteDBInstanceResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBSnapshotAlreadyExistsFault"}, {"shape":"SnapshotQuotaExceededFault"} ] }, "DeleteDBParameterGroup":{ "name":"DeleteDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBParameterGroupMessage"}, "errors":[ {"shape":"InvalidDBParameterGroupStateFault"}, {"shape":"DBParameterGroupNotFoundFault"} ] }, "DeleteDBSecurityGroup":{ "name":"DeleteDBSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBSecurityGroupMessage"}, "errors":[ {"shape":"InvalidDBSecurityGroupStateFault"}, {"shape":"DBSecurityGroupNotFoundFault"} ] }, "DeleteDBSnapshot":{ "name":"DeleteDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBSnapshotMessage"}, "output":{ "shape":"DeleteDBSnapshotResult", "resultWrapper":"DeleteDBSnapshotResult" }, "errors":[ {"shape":"InvalidDBSnapshotStateFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "DeleteDBSubnetGroup":{ "name":"DeleteDBSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBSubnetGroupMessage"}, "errors":[ {"shape":"InvalidDBSubnetGroupStateFault"}, {"shape":"InvalidDBSubnetStateFault"}, {"shape":"DBSubnetGroupNotFoundFault"} ] }, "DeleteEventSubscription":{ "name":"DeleteEventSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteEventSubscriptionMessage"}, "output":{ "shape":"DeleteEventSubscriptionResult", "resultWrapper":"DeleteEventSubscriptionResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"}, {"shape":"InvalidEventSubscriptionStateFault"} ] }, "DeleteOptionGroup":{ "name":"DeleteOptionGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteOptionGroupMessage"}, "errors":[ {"shape":"OptionGroupNotFoundFault"}, {"shape":"InvalidOptionGroupStateFault"} ] }, "DescribeDBEngineVersions":{ "name":"DescribeDBEngineVersions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBEngineVersionsMessage"}, "output":{ "shape":"DBEngineVersionMessage", "resultWrapper":"DescribeDBEngineVersionsResult" } }, "DescribeDBInstances":{ "name":"DescribeDBInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBInstancesMessage"}, "output":{ "shape":"DBInstanceMessage", "resultWrapper":"DescribeDBInstancesResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"} ] }, "DescribeDBParameterGroups":{ "name":"DescribeDBParameterGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBParameterGroupsMessage"}, "output":{ "shape":"DBParameterGroupsMessage", "resultWrapper":"DescribeDBParameterGroupsResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"} ] }, "DescribeDBParameters":{ "name":"DescribeDBParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBParametersMessage"}, "output":{ "shape":"DBParameterGroupDetails", "resultWrapper":"DescribeDBParametersResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"} ] }, "DescribeDBSecurityGroups":{ "name":"DescribeDBSecurityGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBSecurityGroupsMessage"}, "output":{ "shape":"DBSecurityGroupMessage", "resultWrapper":"DescribeDBSecurityGroupsResult" }, "errors":[ {"shape":"DBSecurityGroupNotFoundFault"} ] }, "DescribeDBSnapshots":{ "name":"DescribeDBSnapshots", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBSnapshotsMessage"}, "output":{ "shape":"DBSnapshotMessage", "resultWrapper":"DescribeDBSnapshotsResult" }, "errors":[ {"shape":"DBSnapshotNotFoundFault"} ] }, "DescribeDBSubnetGroups":{ "name":"DescribeDBSubnetGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBSubnetGroupsMessage"}, "output":{ "shape":"DBSubnetGroupMessage", "resultWrapper":"DescribeDBSubnetGroupsResult" }, "errors":[ {"shape":"DBSubnetGroupNotFoundFault"} ] }, "DescribeEngineDefaultParameters":{ "name":"DescribeEngineDefaultParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEngineDefaultParametersMessage"}, "output":{ "shape":"DescribeEngineDefaultParametersResult", "resultWrapper":"DescribeEngineDefaultParametersResult" } }, "DescribeEventCategories":{ "name":"DescribeEventCategories", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventCategoriesMessage"}, "output":{ "shape":"EventCategoriesMessage", "resultWrapper":"DescribeEventCategoriesResult" } }, "DescribeEventSubscriptions":{ "name":"DescribeEventSubscriptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventSubscriptionsMessage"}, "output":{ "shape":"EventSubscriptionsMessage", "resultWrapper":"DescribeEventSubscriptionsResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"} ] }, "DescribeEvents":{ "name":"DescribeEvents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventsMessage"}, "output":{ "shape":"EventsMessage", "resultWrapper":"DescribeEventsResult" } }, "DescribeOptionGroupOptions":{ "name":"DescribeOptionGroupOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeOptionGroupOptionsMessage"}, "output":{ "shape":"OptionGroupOptionsMessage", "resultWrapper":"DescribeOptionGroupOptionsResult" } }, "DescribeOptionGroups":{ "name":"DescribeOptionGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeOptionGroupsMessage"}, "output":{ "shape":"OptionGroups", "resultWrapper":"DescribeOptionGroupsResult" }, "errors":[ {"shape":"OptionGroupNotFoundFault"} ] }, "DescribeOrderableDBInstanceOptions":{ "name":"DescribeOrderableDBInstanceOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeOrderableDBInstanceOptionsMessage"}, "output":{ "shape":"OrderableDBInstanceOptionsMessage", "resultWrapper":"DescribeOrderableDBInstanceOptionsResult" } }, "DescribeReservedDBInstances":{ "name":"DescribeReservedDBInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedDBInstancesMessage"}, "output":{ "shape":"ReservedDBInstanceMessage", "resultWrapper":"DescribeReservedDBInstancesResult" }, "errors":[ {"shape":"ReservedDBInstanceNotFoundFault"} ] }, "DescribeReservedDBInstancesOfferings":{ "name":"DescribeReservedDBInstancesOfferings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedDBInstancesOfferingsMessage"}, "output":{ "shape":"ReservedDBInstancesOfferingMessage", "resultWrapper":"DescribeReservedDBInstancesOfferingsResult" }, "errors":[ {"shape":"ReservedDBInstancesOfferingNotFoundFault"} ] }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTagsForResourceMessage"}, "output":{ "shape":"TagListMessage", "resultWrapper":"ListTagsForResourceResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "ModifyDBInstance":{ "name":"ModifyDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBInstanceMessage"}, "output":{ "shape":"ModifyDBInstanceResult", "resultWrapper":"ModifyDBInstanceResult" }, "errors":[ {"shape":"InvalidDBInstanceStateFault"}, {"shape":"InvalidDBSecurityGroupStateFault"}, {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"}, {"shape":"DBUpgradeDependencyFailureFault"} ] }, "ModifyDBParameterGroup":{ "name":"ModifyDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBParameterGroupMessage"}, "output":{ "shape":"DBParameterGroupNameMessage", "resultWrapper":"ModifyDBParameterGroupResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"InvalidDBParameterGroupStateFault"} ] }, "ModifyDBSubnetGroup":{ "name":"ModifyDBSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBSubnetGroupMessage"}, "output":{ "shape":"ModifyDBSubnetGroupResult", "resultWrapper":"ModifyDBSubnetGroupResult" }, "errors":[ {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetQuotaExceededFault"}, {"shape":"SubnetAlreadyInUse"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"} ] }, "ModifyEventSubscription":{ "name":"ModifyEventSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyEventSubscriptionMessage"}, "output":{ "shape":"ModifyEventSubscriptionResult", "resultWrapper":"ModifyEventSubscriptionResult" }, "errors":[ {"shape":"EventSubscriptionQuotaExceededFault"}, {"shape":"SubscriptionNotFoundFault"}, {"shape":"SNSInvalidTopicFault"}, {"shape":"SNSNoAuthorizationFault"}, {"shape":"SNSTopicArnNotFoundFault"}, {"shape":"SubscriptionCategoryNotFoundFault"} ] }, "ModifyOptionGroup":{ "name":"ModifyOptionGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyOptionGroupMessage"}, "output":{ "shape":"ModifyOptionGroupResult", "resultWrapper":"ModifyOptionGroupResult" }, "errors":[ {"shape":"InvalidOptionGroupStateFault"}, {"shape":"OptionGroupNotFoundFault"} ] }, "PromoteReadReplica":{ "name":"PromoteReadReplica", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PromoteReadReplicaMessage"}, "output":{ "shape":"PromoteReadReplicaResult", "resultWrapper":"PromoteReadReplicaResult" }, "errors":[ {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBInstanceNotFoundFault"} ] }, "PurchaseReservedDBInstancesOffering":{ "name":"PurchaseReservedDBInstancesOffering", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PurchaseReservedDBInstancesOfferingMessage"}, "output":{ "shape":"PurchaseReservedDBInstancesOfferingResult", "resultWrapper":"PurchaseReservedDBInstancesOfferingResult" }, "errors":[ {"shape":"ReservedDBInstancesOfferingNotFoundFault"}, {"shape":"ReservedDBInstanceAlreadyExistsFault"}, {"shape":"ReservedDBInstanceQuotaExceededFault"} ] }, "RebootDBInstance":{ "name":"RebootDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RebootDBInstanceMessage"}, "output":{ "shape":"RebootDBInstanceResult", "resultWrapper":"RebootDBInstanceResult" }, "errors":[ {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBInstanceNotFoundFault"} ] }, "RemoveSourceIdentifierFromSubscription":{ "name":"RemoveSourceIdentifierFromSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveSourceIdentifierFromSubscriptionMessage"}, "output":{ "shape":"RemoveSourceIdentifierFromSubscriptionResult", "resultWrapper":"RemoveSourceIdentifierFromSubscriptionResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"}, {"shape":"SourceNotFoundFault"} ] }, "RemoveTagsFromResource":{ "name":"RemoveTagsFromResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsFromResourceMessage"}, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "ResetDBParameterGroup":{ "name":"ResetDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetDBParameterGroupMessage"}, "output":{ "shape":"DBParameterGroupNameMessage", "resultWrapper":"ResetDBParameterGroupResult" }, "errors":[ {"shape":"InvalidDBParameterGroupStateFault"}, {"shape":"DBParameterGroupNotFoundFault"} ] }, "RestoreDBInstanceFromDBSnapshot":{ "name":"RestoreDBInstanceFromDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreDBInstanceFromDBSnapshotMessage"}, "output":{ "shape":"RestoreDBInstanceFromDBSnapshotResult", "resultWrapper":"RestoreDBInstanceFromDBSnapshotResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"DBSnapshotNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"InvalidDBSnapshotStateFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidRestoreFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"} ] }, "RestoreDBInstanceToPointInTime":{ "name":"RestoreDBInstanceToPointInTime", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreDBInstanceToPointInTimeMessage"}, "output":{ "shape":"RestoreDBInstanceToPointInTimeResult", "resultWrapper":"RestoreDBInstanceToPointInTimeResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"PointInTimeRestoreNotEnabledFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidRestoreFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"} ] }, "RevokeDBSecurityGroupIngress":{ "name":"RevokeDBSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RevokeDBSecurityGroupIngressMessage"}, "output":{ "shape":"RevokeDBSecurityGroupIngressResult", "resultWrapper":"RevokeDBSecurityGroupIngressResult" }, "errors":[ {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"AuthorizationNotFoundFault"}, {"shape":"InvalidDBSecurityGroupStateFault"} ] } }, "shapes":{ "AddSourceIdentifierToSubscriptionMessage":{ "type":"structure", "required":[ "SubscriptionName", "SourceIdentifier" ], "members":{ "SubscriptionName":{"shape":"String"}, "SourceIdentifier":{"shape":"String"} } }, "AddSourceIdentifierToSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "AddTagsToResourceMessage":{ "type":"structure", "required":[ "ResourceName", "Tags" ], "members":{ "ResourceName":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "ApplyMethod":{ "type":"string", "enum":[ "immediate", "pending-reboot" ] }, "AuthorizationAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "AuthorizationNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "AuthorizationQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "AuthorizeDBSecurityGroupIngressMessage":{ "type":"structure", "required":["DBSecurityGroupName"], "members":{ "DBSecurityGroupName":{"shape":"String"}, "CIDRIP":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupId":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "AuthorizeDBSecurityGroupIngressResult":{ "type":"structure", "members":{ "DBSecurityGroup":{"shape":"DBSecurityGroup"} } }, "AvailabilityZone":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "ProvisionedIopsCapable":{"shape":"Boolean"} }, "wrapper":true }, "AvailabilityZoneList":{ "type":"list", "member":{ "shape":"AvailabilityZone", "locationName":"AvailabilityZone" } }, "Boolean":{"type":"boolean"}, "BooleanOptional":{"type":"boolean"}, "CharacterSet":{ "type":"structure", "members":{ "CharacterSetName":{"shape":"String"}, "CharacterSetDescription":{"shape":"String"} } }, "CopyDBSnapshotMessage":{ "type":"structure", "required":[ "SourceDBSnapshotIdentifier", "TargetDBSnapshotIdentifier" ], "members":{ "SourceDBSnapshotIdentifier":{"shape":"String"}, "TargetDBSnapshotIdentifier":{"shape":"String"} } }, "CopyDBSnapshotResult":{ "type":"structure", "members":{ "DBSnapshot":{"shape":"DBSnapshot"} } }, "CreateDBInstanceMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "AllocatedStorage", "DBInstanceClass", "Engine", "MasterUsername", "MasterUserPassword" ], "members":{ "DBName":{"shape":"String"}, "DBInstanceIdentifier":{"shape":"String"}, "AllocatedStorage":{"shape":"IntegerOptional"}, "DBInstanceClass":{"shape":"String"}, "Engine":{"shape":"String"}, "MasterUsername":{"shape":"String"}, "MasterUserPassword":{"shape":"String"}, "DBSecurityGroups":{"shape":"DBSecurityGroupNameList"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroupName":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"}, "DBParameterGroupName":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "PreferredBackupWindow":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "MultiAZ":{"shape":"BooleanOptional"}, "EngineVersion":{"shape":"String"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "LicenseModel":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "CharacterSetName":{"shape":"String"}, "PubliclyAccessible":{"shape":"BooleanOptional"} } }, "CreateDBInstanceReadReplicaMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "SourceDBInstanceIdentifier" ], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "SourceDBInstanceIdentifier":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "AvailabilityZone":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "PubliclyAccessible":{"shape":"BooleanOptional"} } }, "CreateDBInstanceReadReplicaResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "CreateDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "CreateDBParameterGroupMessage":{ "type":"structure", "required":[ "DBParameterGroupName", "DBParameterGroupFamily", "Description" ], "members":{ "DBParameterGroupName":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "Description":{"shape":"String"} } }, "CreateDBParameterGroupResult":{ "type":"structure", "members":{ "DBParameterGroup":{"shape":"DBParameterGroup"} } }, "CreateDBSecurityGroupMessage":{ "type":"structure", "required":[ "DBSecurityGroupName", "DBSecurityGroupDescription" ], "members":{ "DBSecurityGroupName":{"shape":"String"}, "DBSecurityGroupDescription":{"shape":"String"} } }, "CreateDBSecurityGroupResult":{ "type":"structure", "members":{ "DBSecurityGroup":{"shape":"DBSecurityGroup"} } }, "CreateDBSnapshotMessage":{ "type":"structure", "required":[ "DBSnapshotIdentifier", "DBInstanceIdentifier" ], "members":{ "DBSnapshotIdentifier":{"shape":"String"}, "DBInstanceIdentifier":{"shape":"String"} } }, "CreateDBSnapshotResult":{ "type":"structure", "members":{ "DBSnapshot":{"shape":"DBSnapshot"} } }, "CreateDBSubnetGroupMessage":{ "type":"structure", "required":[ "DBSubnetGroupName", "DBSubnetGroupDescription", "SubnetIds" ], "members":{ "DBSubnetGroupName":{"shape":"String"}, "DBSubnetGroupDescription":{"shape":"String"}, "SubnetIds":{"shape":"SubnetIdentifierList"} } }, "CreateDBSubnetGroupResult":{ "type":"structure", "members":{ "DBSubnetGroup":{"shape":"DBSubnetGroup"} } }, "CreateEventSubscriptionMessage":{ "type":"structure", "required":[ "SubscriptionName", "SnsTopicArn" ], "members":{ "SubscriptionName":{"shape":"String"}, "SnsTopicArn":{"shape":"String"}, "SourceType":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"}, "SourceIds":{"shape":"SourceIdsList"}, "Enabled":{"shape":"BooleanOptional"} } }, "CreateEventSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "CreateOptionGroupMessage":{ "type":"structure", "required":[ "OptionGroupName", "EngineName", "MajorEngineVersion", "OptionGroupDescription" ], "members":{ "OptionGroupName":{"shape":"String"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "OptionGroupDescription":{"shape":"String"} } }, "CreateOptionGroupResult":{ "type":"structure", "members":{ "OptionGroup":{"shape":"OptionGroup"} } }, "DBEngineVersion":{ "type":"structure", "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "DBEngineDescription":{"shape":"String"}, "DBEngineVersionDescription":{"shape":"String"}, "DefaultCharacterSet":{"shape":"CharacterSet"}, "SupportedCharacterSets":{"shape":"SupportedCharacterSetsList"} } }, "DBEngineVersionList":{ "type":"list", "member":{ "shape":"DBEngineVersion", "locationName":"DBEngineVersion" } }, "DBEngineVersionMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBEngineVersions":{"shape":"DBEngineVersionList"} } }, "DBInstance":{ "type":"structure", "members":{ "DBInstanceIdentifier":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Engine":{"shape":"String"}, "DBInstanceStatus":{"shape":"String"}, "MasterUsername":{"shape":"String"}, "DBName":{"shape":"String"}, "Endpoint":{"shape":"Endpoint"}, "AllocatedStorage":{"shape":"Integer"}, "InstanceCreateTime":{"shape":"TStamp"}, "PreferredBackupWindow":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"Integer"}, "DBSecurityGroups":{"shape":"DBSecurityGroupMembershipList"}, "VpcSecurityGroups":{"shape":"VpcSecurityGroupMembershipList"}, "DBParameterGroups":{"shape":"DBParameterGroupStatusList"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroup":{"shape":"DBSubnetGroup"}, "PreferredMaintenanceWindow":{"shape":"String"}, "PendingModifiedValues":{"shape":"PendingModifiedValues"}, "LatestRestorableTime":{"shape":"TStamp"}, "MultiAZ":{"shape":"Boolean"}, "EngineVersion":{"shape":"String"}, "AutoMinorVersionUpgrade":{"shape":"Boolean"}, "ReadReplicaSourceDBInstanceIdentifier":{"shape":"String"}, "ReadReplicaDBInstanceIdentifiers":{"shape":"ReadReplicaDBInstanceIdentifierList"}, "LicenseModel":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupMembership":{"shape":"OptionGroupMembership"}, "CharacterSetName":{"shape":"String"}, "SecondaryAvailabilityZone":{"shape":"String"}, "PubliclyAccessible":{"shape":"Boolean"} }, "wrapper":true }, "DBInstanceAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBInstanceAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBInstanceList":{ "type":"list", "member":{ "shape":"DBInstance", "locationName":"DBInstance" } }, "DBInstanceMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBInstances":{"shape":"DBInstanceList"} } }, "DBInstanceNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBInstanceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBParameterGroup":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "Description":{"shape":"String"} }, "wrapper":true }, "DBParameterGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBParameterGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBParameterGroupDetails":{ "type":"structure", "members":{ "Parameters":{"shape":"ParametersList"}, "Marker":{"shape":"String"} } }, "DBParameterGroupList":{ "type":"list", "member":{ "shape":"DBParameterGroup", "locationName":"DBParameterGroup" } }, "DBParameterGroupNameMessage":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"} } }, "DBParameterGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBParameterGroupNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBParameterGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBParameterGroupQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBParameterGroupStatus":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"}, "ParameterApplyStatus":{"shape":"String"} } }, "DBParameterGroupStatusList":{ "type":"list", "member":{ "shape":"DBParameterGroupStatus", "locationName":"DBParameterGroup" } }, "DBParameterGroupsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBParameterGroups":{"shape":"DBParameterGroupList"} } }, "DBSecurityGroup":{ "type":"structure", "members":{ "OwnerId":{"shape":"String"}, "DBSecurityGroupName":{"shape":"String"}, "DBSecurityGroupDescription":{"shape":"String"}, "VpcId":{"shape":"String"}, "EC2SecurityGroups":{"shape":"EC2SecurityGroupList"}, "IPRanges":{"shape":"IPRangeList"} }, "wrapper":true }, "DBSecurityGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSecurityGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSecurityGroupMembership":{ "type":"structure", "members":{ "DBSecurityGroupName":{"shape":"String"}, "Status":{"shape":"String"} } }, "DBSecurityGroupMembershipList":{ "type":"list", "member":{ "shape":"DBSecurityGroupMembership", "locationName":"DBSecurityGroup" } }, "DBSecurityGroupMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBSecurityGroups":{"shape":"DBSecurityGroups"} } }, "DBSecurityGroupNameList":{ "type":"list", "member":{ "shape":"String", "locationName":"DBSecurityGroupName" } }, "DBSecurityGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSecurityGroupNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBSecurityGroupNotSupportedFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSecurityGroupNotSupported", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSecurityGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"QuotaExceeded.DBSecurityGroup", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSecurityGroups":{ "type":"list", "member":{ "shape":"DBSecurityGroup", "locationName":"DBSecurityGroup" } }, "DBSnapshot":{ "type":"structure", "members":{ "DBSnapshotIdentifier":{"shape":"String"}, "DBInstanceIdentifier":{"shape":"String"}, "SnapshotCreateTime":{"shape":"TStamp"}, "Engine":{"shape":"String"}, "AllocatedStorage":{"shape":"Integer"}, "Status":{"shape":"String"}, "Port":{"shape":"Integer"}, "AvailabilityZone":{"shape":"String"}, "VpcId":{"shape":"String"}, "InstanceCreateTime":{"shape":"TStamp"}, "MasterUsername":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "LicenseModel":{"shape":"String"}, "SnapshotType":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"} }, "wrapper":true }, "DBSnapshotAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSnapshotAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSnapshotList":{ "type":"list", "member":{ "shape":"DBSnapshot", "locationName":"DBSnapshot" } }, "DBSnapshotMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBSnapshots":{"shape":"DBSnapshotList"} } }, "DBSnapshotNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSnapshotNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBSubnetGroup":{ "type":"structure", "members":{ "DBSubnetGroupName":{"shape":"String"}, "DBSubnetGroupDescription":{"shape":"String"}, "VpcId":{"shape":"String"}, "SubnetGroupStatus":{"shape":"String"}, "Subnets":{"shape":"SubnetList"} }, "wrapper":true }, "DBSubnetGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSubnetGroupDoesNotCoverEnoughAZs":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupDoesNotCoverEnoughAZs", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSubnetGroupMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBSubnetGroups":{"shape":"DBSubnetGroups"} } }, "DBSubnetGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBSubnetGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSubnetGroups":{ "type":"list", "member":{ "shape":"DBSubnetGroup", "locationName":"DBSubnetGroup" } }, "DBSubnetQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetQuotaExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBUpgradeDependencyFailureFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBUpgradeDependencyFailure", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DeleteDBInstanceMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "SkipFinalSnapshot":{"shape":"Boolean"}, "FinalDBSnapshotIdentifier":{"shape":"String"} } }, "DeleteDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "DeleteDBParameterGroupMessage":{ "type":"structure", "required":["DBParameterGroupName"], "members":{ "DBParameterGroupName":{"shape":"String"} } }, "DeleteDBSecurityGroupMessage":{ "type":"structure", "required":["DBSecurityGroupName"], "members":{ "DBSecurityGroupName":{"shape":"String"} } }, "DeleteDBSnapshotMessage":{ "type":"structure", "required":["DBSnapshotIdentifier"], "members":{ "DBSnapshotIdentifier":{"shape":"String"} } }, "DeleteDBSnapshotResult":{ "type":"structure", "members":{ "DBSnapshot":{"shape":"DBSnapshot"} } }, "DeleteDBSubnetGroupMessage":{ "type":"structure", "required":["DBSubnetGroupName"], "members":{ "DBSubnetGroupName":{"shape":"String"} } }, "DeleteEventSubscriptionMessage":{ "type":"structure", "required":["SubscriptionName"], "members":{ "SubscriptionName":{"shape":"String"} } }, "DeleteEventSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "DeleteOptionGroupMessage":{ "type":"structure", "required":["OptionGroupName"], "members":{ "OptionGroupName":{"shape":"String"} } }, "DescribeDBEngineVersionsMessage":{ "type":"structure", "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "DefaultOnly":{"shape":"Boolean"}, "ListSupportedCharacterSets":{"shape":"BooleanOptional"} } }, "DescribeDBInstancesMessage":{ "type":"structure", "members":{ "DBInstanceIdentifier":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBParameterGroupsMessage":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBParametersMessage":{ "type":"structure", "required":["DBParameterGroupName"], "members":{ "DBParameterGroupName":{"shape":"String"}, "Source":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBSecurityGroupsMessage":{ "type":"structure", "members":{ "DBSecurityGroupName":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBSnapshotsMessage":{ "type":"structure", "members":{ "DBInstanceIdentifier":{"shape":"String"}, "DBSnapshotIdentifier":{"shape":"String"}, "SnapshotType":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBSubnetGroupsMessage":{ "type":"structure", "members":{ "DBSubnetGroupName":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEngineDefaultParametersMessage":{ "type":"structure", "required":["DBParameterGroupFamily"], "members":{ "DBParameterGroupFamily":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEngineDefaultParametersResult":{ "type":"structure", "members":{ "EngineDefaults":{"shape":"EngineDefaults"} } }, "DescribeEventCategoriesMessage":{ "type":"structure", "members":{ "SourceType":{"shape":"String"} } }, "DescribeEventSubscriptionsMessage":{ "type":"structure", "members":{ "SubscriptionName":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEventsMessage":{ "type":"structure", "members":{ "SourceIdentifier":{"shape":"String"}, "SourceType":{"shape":"SourceType"}, "StartTime":{"shape":"TStamp"}, "EndTime":{"shape":"TStamp"}, "Duration":{"shape":"IntegerOptional"}, "EventCategories":{"shape":"EventCategoriesList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeOptionGroupOptionsMessage":{ "type":"structure", "required":["EngineName"], "members":{ "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeOptionGroupsMessage":{ "type":"structure", "members":{ "OptionGroupName":{"shape":"String"}, "Marker":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"} } }, "DescribeOrderableDBInstanceOptionsMessage":{ "type":"structure", "required":["Engine"], "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "LicenseModel":{"shape":"String"}, "Vpc":{"shape":"BooleanOptional"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeReservedDBInstancesMessage":{ "type":"structure", "members":{ "ReservedDBInstanceId":{"shape":"String"}, "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Duration":{"shape":"String"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeReservedDBInstancesOfferingsMessage":{ "type":"structure", "members":{ "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Duration":{"shape":"String"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "Double":{"type":"double"}, "EC2SecurityGroup":{ "type":"structure", "members":{ "Status":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupId":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "EC2SecurityGroupList":{ "type":"list", "member":{ "shape":"EC2SecurityGroup", "locationName":"EC2SecurityGroup" } }, "Endpoint":{ "type":"structure", "members":{ "Address":{"shape":"String"}, "Port":{"shape":"Integer"} } }, "EngineDefaults":{ "type":"structure", "members":{ "DBParameterGroupFamily":{"shape":"String"}, "Marker":{"shape":"String"}, "Parameters":{"shape":"ParametersList"} }, "wrapper":true }, "Event":{ "type":"structure", "members":{ "SourceIdentifier":{"shape":"String"}, "SourceType":{"shape":"SourceType"}, "Message":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"}, "Date":{"shape":"TStamp"} } }, "EventCategoriesList":{ "type":"list", "member":{ "shape":"String", "locationName":"EventCategory" } }, "EventCategoriesMap":{ "type":"structure", "members":{ "SourceType":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"} }, "wrapper":true }, "EventCategoriesMapList":{ "type":"list", "member":{ "shape":"EventCategoriesMap", "locationName":"EventCategoriesMap" } }, "EventCategoriesMessage":{ "type":"structure", "members":{ "EventCategoriesMapList":{"shape":"EventCategoriesMapList"} } }, "EventList":{ "type":"list", "member":{ "shape":"Event", "locationName":"Event" } }, "EventSubscription":{ "type":"structure", "members":{ "Id":{"shape":"String"}, "CustomerAwsId":{"shape":"String"}, "CustSubscriptionId":{"shape":"String"}, "SnsTopicArn":{"shape":"String"}, "Status":{"shape":"String"}, "SubscriptionCreationTime":{"shape":"String"}, "SourceType":{"shape":"String"}, "SourceIdsList":{"shape":"SourceIdsList"}, "EventCategoriesList":{"shape":"EventCategoriesList"}, "Enabled":{"shape":"Boolean"} }, "wrapper":true }, "EventSubscriptionQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"EventSubscriptionQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "EventSubscriptionsList":{ "type":"list", "member":{ "shape":"EventSubscription", "locationName":"EventSubscription" } }, "EventSubscriptionsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "EventSubscriptionsList":{"shape":"EventSubscriptionsList"} } }, "EventsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "Events":{"shape":"EventList"} } }, "IPRange":{ "type":"structure", "members":{ "Status":{"shape":"String"}, "CIDRIP":{"shape":"String"} } }, "IPRangeList":{ "type":"list", "member":{ "shape":"IPRange", "locationName":"IPRange" } }, "InstanceQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"InstanceQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InsufficientDBInstanceCapacityFault":{ "type":"structure", "members":{ }, "error":{ "code":"InsufficientDBInstanceCapacity", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Integer":{"type":"integer"}, "IntegerOptional":{"type":"integer"}, "InvalidDBInstanceStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBInstanceState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBParameterGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBParameterGroupState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSecurityGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSecurityGroupState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSnapshotStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSnapshotState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSubnetGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSubnetGroupStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSubnetStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSubnetStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidEventSubscriptionStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidEventSubscriptionState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidOptionGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidOptionGroupStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidRestoreFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidRestoreFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidSubnet":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidSubnet", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidVPCNetworkStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidVPCNetworkStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "KeyList":{ "type":"list", "member":{"shape":"String"} }, "ListTagsForResourceMessage":{ "type":"structure", "required":["ResourceName"], "members":{ "ResourceName":{"shape":"String"} } }, "ModifyDBInstanceMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "AllocatedStorage":{"shape":"IntegerOptional"}, "DBInstanceClass":{"shape":"String"}, "DBSecurityGroups":{"shape":"DBSecurityGroupNameList"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "ApplyImmediately":{"shape":"Boolean"}, "MasterUserPassword":{"shape":"String"}, "DBParameterGroupName":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "PreferredBackupWindow":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "EngineVersion":{"shape":"String"}, "AllowMajorVersionUpgrade":{"shape":"Boolean"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "NewDBInstanceIdentifier":{"shape":"String"} } }, "ModifyDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "ModifyDBParameterGroupMessage":{ "type":"structure", "required":[ "DBParameterGroupName", "Parameters" ], "members":{ "DBParameterGroupName":{"shape":"String"}, "Parameters":{"shape":"ParametersList"} } }, "ModifyDBSubnetGroupMessage":{ "type":"structure", "required":[ "DBSubnetGroupName", "SubnetIds" ], "members":{ "DBSubnetGroupName":{"shape":"String"}, "DBSubnetGroupDescription":{"shape":"String"}, "SubnetIds":{"shape":"SubnetIdentifierList"} } }, "ModifyDBSubnetGroupResult":{ "type":"structure", "members":{ "DBSubnetGroup":{"shape":"DBSubnetGroup"} } }, "ModifyEventSubscriptionMessage":{ "type":"structure", "required":["SubscriptionName"], "members":{ "SubscriptionName":{"shape":"String"}, "SnsTopicArn":{"shape":"String"}, "SourceType":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"}, "Enabled":{"shape":"BooleanOptional"} } }, "ModifyEventSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "ModifyOptionGroupMessage":{ "type":"structure", "required":["OptionGroupName"], "members":{ "OptionGroupName":{"shape":"String"}, "OptionsToInclude":{"shape":"OptionConfigurationList"}, "OptionsToRemove":{"shape":"OptionNamesList"}, "ApplyImmediately":{"shape":"Boolean"} } }, "ModifyOptionGroupResult":{ "type":"structure", "members":{ "OptionGroup":{"shape":"OptionGroup"} } }, "Option":{ "type":"structure", "members":{ "OptionName":{"shape":"String"}, "OptionDescription":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "DBSecurityGroupMemberships":{"shape":"DBSecurityGroupMembershipList"}, "VpcSecurityGroupMemberships":{"shape":"VpcSecurityGroupMembershipList"} } }, "OptionConfiguration":{ "type":"structure", "required":["OptionName"], "members":{ "OptionName":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "DBSecurityGroupMemberships":{"shape":"DBSecurityGroupNameList"}, "VpcSecurityGroupMemberships":{"shape":"VpcSecurityGroupIdList"} } }, "OptionConfigurationList":{ "type":"list", "member":{ "shape":"OptionConfiguration", "locationName":"OptionConfiguration" } }, "OptionGroup":{ "type":"structure", "members":{ "OptionGroupName":{"shape":"String"}, "OptionGroupDescription":{"shape":"String"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "Options":{"shape":"OptionsList"}, "AllowsVpcAndNonVpcInstanceMemberships":{"shape":"Boolean"}, "VpcId":{"shape":"String"} }, "wrapper":true }, "OptionGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"OptionGroupAlreadyExistsFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "OptionGroupMembership":{ "type":"structure", "members":{ "OptionGroupName":{"shape":"String"}, "Status":{"shape":"String"} } }, "OptionGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"OptionGroupNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "OptionGroupOption":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "Description":{"shape":"String"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "MinimumRequiredMinorEngineVersion":{"shape":"String"}, "PortRequired":{"shape":"Boolean"}, "DefaultPort":{"shape":"IntegerOptional"}, "OptionsDependedOn":{"shape":"OptionsDependedOn"} } }, "OptionGroupOptionsList":{ "type":"list", "member":{ "shape":"OptionGroupOption", "locationName":"OptionGroupOption" } }, "OptionGroupOptionsMessage":{ "type":"structure", "members":{ "OptionGroupOptions":{"shape":"OptionGroupOptionsList"}, "Marker":{"shape":"String"} } }, "OptionGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"OptionGroupQuotaExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "OptionGroups":{ "type":"structure", "members":{ "OptionGroupsList":{"shape":"OptionGroupsList"}, "Marker":{"shape":"String"} } }, "OptionGroupsList":{ "type":"list", "member":{ "shape":"OptionGroup", "locationName":"OptionGroup" } }, "OptionNamesList":{ "type":"list", "member":{"shape":"String"} }, "OptionsDependedOn":{ "type":"list", "member":{ "shape":"String", "locationName":"OptionName" } }, "OptionsList":{ "type":"list", "member":{ "shape":"Option", "locationName":"Option" } }, "OrderableDBInstanceOption":{ "type":"structure", "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "LicenseModel":{"shape":"String"}, "AvailabilityZones":{"shape":"AvailabilityZoneList"}, "MultiAZCapable":{"shape":"Boolean"}, "ReadReplicaCapable":{"shape":"Boolean"}, "Vpc":{"shape":"Boolean"} }, "wrapper":true }, "OrderableDBInstanceOptionsList":{ "type":"list", "member":{ "shape":"OrderableDBInstanceOption", "locationName":"OrderableDBInstanceOption" } }, "OrderableDBInstanceOptionsMessage":{ "type":"structure", "members":{ "OrderableDBInstanceOptions":{"shape":"OrderableDBInstanceOptionsList"}, "Marker":{"shape":"String"} } }, "Parameter":{ "type":"structure", "members":{ "ParameterName":{"shape":"String"}, "ParameterValue":{"shape":"String"}, "Description":{"shape":"String"}, "Source":{"shape":"String"}, "ApplyType":{"shape":"String"}, "DataType":{"shape":"String"}, "AllowedValues":{"shape":"String"}, "IsModifiable":{"shape":"Boolean"}, "MinimumEngineVersion":{"shape":"String"}, "ApplyMethod":{"shape":"ApplyMethod"} } }, "ParametersList":{ "type":"list", "member":{ "shape":"Parameter", "locationName":"Parameter" } }, "PendingModifiedValues":{ "type":"structure", "members":{ "DBInstanceClass":{"shape":"String"}, "AllocatedStorage":{"shape":"IntegerOptional"}, "MasterUserPassword":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "MultiAZ":{"shape":"BooleanOptional"}, "EngineVersion":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "DBInstanceIdentifier":{"shape":"String"} } }, "PointInTimeRestoreNotEnabledFault":{ "type":"structure", "members":{ }, "error":{ "code":"PointInTimeRestoreNotEnabled", "httpStatusCode":400, "senderFault":true }, "exception":true }, "PromoteReadReplicaMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "PreferredBackupWindow":{"shape":"String"} } }, "PromoteReadReplicaResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "ProvisionedIopsNotAvailableInAZFault":{ "type":"structure", "members":{ }, "error":{ "code":"ProvisionedIopsNotAvailableInAZFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "PurchaseReservedDBInstancesOfferingMessage":{ "type":"structure", "required":["ReservedDBInstancesOfferingId"], "members":{ "ReservedDBInstancesOfferingId":{"shape":"String"}, "ReservedDBInstanceId":{"shape":"String"}, "DBInstanceCount":{"shape":"IntegerOptional"} } }, "PurchaseReservedDBInstancesOfferingResult":{ "type":"structure", "members":{ "ReservedDBInstance":{"shape":"ReservedDBInstance"} } }, "ReadReplicaDBInstanceIdentifierList":{ "type":"list", "member":{ "shape":"String", "locationName":"ReadReplicaDBInstanceIdentifier" } }, "RebootDBInstanceMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "ForceFailover":{"shape":"BooleanOptional"} } }, "RebootDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "RecurringCharge":{ "type":"structure", "members":{ "RecurringChargeAmount":{"shape":"Double"}, "RecurringChargeFrequency":{"shape":"String"} }, "wrapper":true }, "RecurringChargeList":{ "type":"list", "member":{ "shape":"RecurringCharge", "locationName":"RecurringCharge" } }, "RemoveSourceIdentifierFromSubscriptionMessage":{ "type":"structure", "required":[ "SubscriptionName", "SourceIdentifier" ], "members":{ "SubscriptionName":{"shape":"String"}, "SourceIdentifier":{"shape":"String"} } }, "RemoveSourceIdentifierFromSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "RemoveTagsFromResourceMessage":{ "type":"structure", "required":[ "ResourceName", "TagKeys" ], "members":{ "ResourceName":{"shape":"String"}, "TagKeys":{"shape":"KeyList"} } }, "ReservedDBInstance":{ "type":"structure", "members":{ "ReservedDBInstanceId":{"shape":"String"}, "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "StartTime":{"shape":"TStamp"}, "Duration":{"shape":"Integer"}, "FixedPrice":{"shape":"Double"}, "UsagePrice":{"shape":"Double"}, "CurrencyCode":{"shape":"String"}, "DBInstanceCount":{"shape":"Integer"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"Boolean"}, "State":{"shape":"String"}, "RecurringCharges":{"shape":"RecurringChargeList"} }, "wrapper":true }, "ReservedDBInstanceAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstanceAlreadyExists", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ReservedDBInstanceList":{ "type":"list", "member":{ "shape":"ReservedDBInstance", "locationName":"ReservedDBInstance" } }, "ReservedDBInstanceMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ReservedDBInstances":{"shape":"ReservedDBInstanceList"} } }, "ReservedDBInstanceNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstanceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ReservedDBInstanceQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstanceQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ReservedDBInstancesOffering":{ "type":"structure", "members":{ "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Duration":{"shape":"Integer"}, "FixedPrice":{"shape":"Double"}, "UsagePrice":{"shape":"Double"}, "CurrencyCode":{"shape":"String"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"Boolean"}, "RecurringCharges":{"shape":"RecurringChargeList"} }, "wrapper":true }, "ReservedDBInstancesOfferingList":{ "type":"list", "member":{ "shape":"ReservedDBInstancesOffering", "locationName":"ReservedDBInstancesOffering" } }, "ReservedDBInstancesOfferingMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ReservedDBInstancesOfferings":{"shape":"ReservedDBInstancesOfferingList"} } }, "ReservedDBInstancesOfferingNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstancesOfferingNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ResetDBParameterGroupMessage":{ "type":"structure", "required":["DBParameterGroupName"], "members":{ "DBParameterGroupName":{"shape":"String"}, "ResetAllParameters":{"shape":"Boolean"}, "Parameters":{"shape":"ParametersList"} } }, "RestoreDBInstanceFromDBSnapshotMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "DBSnapshotIdentifier" ], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "DBSnapshotIdentifier":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroupName":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "LicenseModel":{"shape":"String"}, "DBName":{"shape":"String"}, "Engine":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"} } }, "RestoreDBInstanceFromDBSnapshotResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "RestoreDBInstanceToPointInTimeMessage":{ "type":"structure", "required":[ "SourceDBInstanceIdentifier", "TargetDBInstanceIdentifier" ], "members":{ "SourceDBInstanceIdentifier":{"shape":"String"}, "TargetDBInstanceIdentifier":{"shape":"String"}, "RestoreTime":{"shape":"TStamp"}, "UseLatestRestorableTime":{"shape":"Boolean"}, "DBInstanceClass":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroupName":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "LicenseModel":{"shape":"String"}, "DBName":{"shape":"String"}, "Engine":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"} } }, "RestoreDBInstanceToPointInTimeResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "RevokeDBSecurityGroupIngressMessage":{ "type":"structure", "required":["DBSecurityGroupName"], "members":{ "DBSecurityGroupName":{"shape":"String"}, "CIDRIP":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupId":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "RevokeDBSecurityGroupIngressResult":{ "type":"structure", "members":{ "DBSecurityGroup":{"shape":"DBSecurityGroup"} } }, "SNSInvalidTopicFault":{ "type":"structure", "members":{ }, "error":{ "code":"SNSInvalidTopic", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SNSNoAuthorizationFault":{ "type":"structure", "members":{ }, "error":{ "code":"SNSNoAuthorization", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SNSTopicArnNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SNSTopicArnNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SnapshotQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"SnapshotQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SourceIdsList":{ "type":"list", "member":{ "shape":"String", "locationName":"SourceId" } }, "SourceNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SourceType":{ "type":"string", "enum":[ "db-instance", "db-parameter-group", "db-security-group", "db-snapshot" ] }, "StorageQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"StorageQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "String":{"type":"string"}, "Subnet":{ "type":"structure", "members":{ "SubnetIdentifier":{"shape":"String"}, "SubnetAvailabilityZone":{"shape":"AvailabilityZone"}, "SubnetStatus":{"shape":"String"} } }, "SubnetAlreadyInUse":{ "type":"structure", "members":{ }, "error":{ "code":"SubnetAlreadyInUse", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SubnetIdentifierList":{ "type":"list", "member":{ "shape":"String", "locationName":"SubnetIdentifier" } }, "SubnetList":{ "type":"list", "member":{ "shape":"Subnet", "locationName":"Subnet" } }, "SubscriptionAlreadyExistFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionAlreadyExist", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SubscriptionCategoryNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionCategoryNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SubscriptionNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SupportedCharacterSetsList":{ "type":"list", "member":{ "shape":"CharacterSet", "locationName":"CharacterSet" } }, "TStamp":{"type":"timestamp"}, "Tag":{ "type":"structure", "members":{ "Key":{"shape":"String"}, "Value":{"shape":"String"} } }, "TagList":{ "type":"list", "member":{ "shape":"Tag", "locationName":"Tag" } }, "TagListMessage":{ "type":"structure", "members":{ "TagList":{"shape":"TagList"} } }, "VpcSecurityGroupIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpcSecurityGroupId" } }, "VpcSecurityGroupMembership":{ "type":"structure", "members":{ "VpcSecurityGroupId":{"shape":"String"}, "Status":{"shape":"String"} } }, "VpcSecurityGroupMembershipList":{ "type":"list", "member":{ "shape":"VpcSecurityGroupMembership", "locationName":"VpcSecurityGroupMembership" } } } } aws-sdk-go-1.4.22/models/apis/rds/2013-01-10/docs-2.json000066400000000000000000004416341300374646400216110ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon Relational Database Service

        Amazon Relational Database Service (Amazon RDS) is a web service that makes it easier to set up, operate, and scale a relational database in the cloud. It provides cost-efficient, resizable capacity for an industry-standard relational database and manages common database administration tasks, freeing up developers to focus on what makes their applications and businesses unique.

        Amazon RDS gives you access to the capabilities of a familiar MySQL or Oracle database server. This means the code, applications, and tools you already use today with your existing MySQL or Oracle databases work with Amazon RDS without modification. Amazon RDS automatically backs up your database and maintains the database software that powers your DB Instance. Amazon RDS is flexible: you can scale your database instance's compute resources and storage capacity to meet your application's demand. As with all Amazon Web Services, there are no up-front investments, and you pay only for the resources you use.

        This is the Amazon RDS API Reference. It contains a comprehensive description of all Amazon RDS Query APIs and data types. Note that this API is asynchronous and some actions may require polling to determine when an action has been applied. See the parameter description to determine if a change is applied immediately or on the next instance reboot or during the maintenance window. To get started with Amazon RDS, go to the Amazon RDS Getting Started Guide. For more information on Amazon RDS concepts and usage scenarios, go to the Amazon RDS User Guide.

        ", "operations": { "AddSourceIdentifierToSubscription": "

        Adds a source identifier to an existing RDS event notification subscription.

        ", "AddTagsToResource": "

        Adds metadata tags to a DB Instance. These tags can also be used with cost allocation reporting to track cost associated with a DB Instance.

        For an overview on tagging DB Instances, see DB Instance Tags.

        ", "AuthorizeDBSecurityGroupIngress": "

        Enables ingress to a DBSecurityGroup using one of two forms of authorization. First, EC2 or VPC Security Groups can be added to the DBSecurityGroup if the application using the database is running on EC2 or VPC instances. Second, IP ranges are available if the application accessing your database is running on the Internet. Required parameters for this API are one of CIDR range, EC2SecurityGroupId for VPC, or (EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId for non-VPC).

        You cannot authorize ingress from an EC2 security group in one Region to an Amazon RDS DB Instance in another. You cannot authorize ingress from a VPC security group in one VPC to an Amazon RDS DB Instance in another.

        For an overview of CIDR ranges, go to the Wikipedia Tutorial.

        ", "CopyDBSnapshot": "

        Copies the specified DBSnapshot. The source DBSnapshot must be in the \"available\" state.

        ", "CreateDBInstance": "

        Creates a new DB instance.

        ", "CreateDBInstanceReadReplica": "

        Creates a DB Instance that acts as a Read Replica of a source DB Instance.

        All Read Replica DB Instances are created as Single-AZ deployments with backups disabled. All other DB Instance attributes (including DB Security Groups and DB Parameter Groups) are inherited from the source DB Instance, except as specified below.

        The source DB Instance must have backup retention enabled.

        ", "CreateDBParameterGroup": "

        Creates a new DB Parameter Group.

        A DB Parameter Group is initially created with the default parameters for the database engine used by the DB Instance. To provide custom values for any of the parameters, you must modify the group after creating it using ModifyDBParameterGroup. Once you've created a DB Parameter Group, you need to associate it with your DB Instance using ModifyDBInstance. When you associate a new DB Parameter Group with a running DB Instance, you need to reboot the DB Instance for the new DB Parameter Group and associated settings to take effect.

        ", "CreateDBSecurityGroup": "

        Creates a new DB Security Group. DB Security Groups control access to a DB Instance.

        ", "CreateDBSnapshot": "

        Creates a DBSnapshot. The source DBInstance must be in \"available\" state.

        ", "CreateDBSubnetGroup": "

        Creates a new DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in the region.

        ", "CreateEventSubscription": "

        Creates an RDS event notification subscription. This action requires a topic ARN (Amazon Resource Name) created by either the RDS console, the SNS console, or the SNS API. To obtain an ARN with SNS, you must create a topic in Amazon SNS and subscribe to the topic. The ARN is displayed in the SNS console.

        You can specify the type of source (SourceType) you want to be notified of, provide a list of RDS sources (SourceIds) that triggers the events, and provide a list of event categories (EventCategories) for events you want to be notified of. For example, you can specify SourceType = db-instance, SourceIds = mydbinstance1, mydbinstance2 and EventCategories = Availability, Backup.

        If you specify both the SourceType and SourceIds, such as SourceType = db-instance and SourceIdentifier = myDBInstance1, you will be notified of all the db-instance events for the specified source. If you specify a SourceType but do not specify a SourceIdentifier, you will receive notice of the events for that source type for all your RDS sources. If you do not specify either the SourceType nor the SourceIdentifier, you will be notified of events generated from all RDS sources belonging to your customer account.

        ", "CreateOptionGroup": "

        Creates a new Option Group.

        ", "DeleteDBInstance": "

        The DeleteDBInstance API deletes a previously provisioned RDS instance. A successful response from the web service indicates the request was received correctly. If a final DBSnapshot is requested the status of the RDS instance will be \"deleting\" until the DBSnapshot is created. DescribeDBInstance is used to monitor the status of this operation. This cannot be canceled or reverted once submitted.

        ", "DeleteDBParameterGroup": "

        Deletes a specified DBParameterGroup. The DBParameterGroup cannot be associated with any RDS instances to be deleted.

        The specified DB Parameter Group cannot be associated with any DB Instances. ", "DeleteDBSecurityGroup": "

        Deletes a DB Security Group.

        The specified DB Security Group must not be associated with any DB Instances.", "DeleteDBSnapshot": "

        Deletes a DBSnapshot.

        The DBSnapshot must be in the available state to be deleted.", "DeleteDBSubnetGroup": "

        Deletes a DB subnet group.

        The specified database subnet group must not be associated with any DB instances.", "DeleteEventSubscription": "

        Deletes an RDS event notification subscription.

        ", "DeleteOptionGroup": "

        Deletes an existing Option Group.

        ", "DescribeDBEngineVersions": "

        Returns a list of the available DB engines.

        ", "DescribeDBInstances": "

        Returns information about provisioned RDS instances. This API supports pagination.

        ", "DescribeDBParameterGroups": "

        Returns a list of DBParameterGroup descriptions. If a DBParameterGroupName is specified, the list will contain only the description of the specified DBParameterGroup.

        ", "DescribeDBParameters": "

        Returns the detailed parameter list for a particular DBParameterGroup.

        ", "DescribeDBSecurityGroups": "

        Returns a list of DBSecurityGroup descriptions. If a DBSecurityGroupName is specified, the list will contain only the descriptions of the specified DBSecurityGroup.

        For an overview of CIDR ranges, go to the Wikipedia Tutorial.

        ", "DescribeDBSnapshots": "

        Returns information about DBSnapshots. This API supports pagination.

        ", "DescribeDBSubnetGroups": "

        Returns a list of DBSubnetGroup descriptions. If a DBSubnetGroupName is specified, the list will contain only the descriptions of the specified DBSubnetGroup.

        For an overview of CIDR ranges, go to the Wikipedia Tutorial.

        ", "DescribeEngineDefaultParameters": "

        Returns the default engine and system parameter information for the specified database engine.

        ", "DescribeEventCategories": "

        Displays a list of categories for all event source types, or, if specified, for a specified source type. You can see a list of the event categories and source types in the Events topic in the Amazon RDS User Guide.

        ", "DescribeEventSubscriptions": "

        Lists all the subscription descriptions for a customer account. The description for a subscription includes SubscriptionName, SNSTopicARN, CustomerID, SourceType, SourceID, CreationTime, and Status.

        If you specify a SubscriptionName, lists the description for that subscription.

        ", "DescribeEvents": "

        Returns events related to DB instances, DB security groups, DB Snapshots, and DB parameter groups for the past 14 days. Events specific to a particular DB Iinstance, DB security group, DB Snapshot, or DB parameter group can be obtained by providing the source identifier as a parameter. By default, the past hour of events are returned.

        You can see a list of event categories and source types in the Events topic in the Amazon RDS User Guide.

        ", "DescribeOptionGroupOptions": "

        Describes all available options.

        ", "DescribeOptionGroups": "

        Describes the available option groups.

        ", "DescribeOrderableDBInstanceOptions": "

        Returns a list of orderable DB Instance options for the specified engine.

        ", "DescribeReservedDBInstances": "

        Returns information about reserved DB Instances for this account, or about a specified reserved DB Instance.

        ", "DescribeReservedDBInstancesOfferings": "

        Lists available reserved DB Instance offerings.

        ", "ListTagsForResource": "

        Lists all tags on a DB Instance.

        For an overview on tagging DB Instances, see DB Instance Tags.

        ", "ModifyDBInstance": "

        Modify settings for a DB Instance. You can change one or more database configuration parameters by specifying these parameters and the new values in the request.

        ", "ModifyDBParameterGroup": "

        Modifies the parameters of a DBParameterGroup. To modify more than one parameter submit a list of the following: ParameterName, ParameterValue, and ApplyMethod. A maximum of 20 parameters can be modified in a single request.

        The apply-immediate method can be used only for dynamic parameters; the pending-reboot method can be used with MySQL and Oracle DB Instances for either dynamic or static parameters. For Microsoft SQL Server DB Instances, the pending-reboot method can be used only for static parameters.

        ", "ModifyDBSubnetGroup": "

        Modifies an existing DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in the region.

        ", "ModifyEventSubscription": "

        Modifies an existing RDS event notification subscription. Note that you cannot modify the source identifiers using this call; to change source identifiers for a subscription, use the AddSourceIdentifierToSubscription and RemoveSourceIdentifierFromSubscription calls.

        You can see a list of the event categories for a given SourceType in the Events topic in the Amazon RDS User Guide or by using the DescribeEventCategories action.

        ", "ModifyOptionGroup": "

        Modifies an existing Option Group.

        ", "PromoteReadReplica": "

        Promotes a Read Replica DB Instance to a standalone DB Instance.

        ", "PurchaseReservedDBInstancesOffering": "

        Purchases a reserved DB Instance offering.

        ", "RebootDBInstance": "

        Reboots a previously provisioned RDS instance. This API results in the application of modified DBParameterGroup parameters with ApplyStatus of pending-reboot to the RDS instance. This action is taken as soon as possible, and results in a momentary outage to the RDS instance during which the RDS instance status is set to rebooting. If the RDS instance is configured for MultiAZ, it is possible that the reboot will be conducted through a failover. A DBInstance event is created when the reboot is completed.

        ", "RemoveSourceIdentifierFromSubscription": "

        Removes a source identifier from an existing RDS event notification subscription.

        ", "RemoveTagsFromResource": "

        Removes metadata tags from a DB Instance.

        For an overview on tagging DB Instances, see DB Instance Tags.

        ", "ResetDBParameterGroup": "

        Modifies the parameters of a DBParameterGroup to the engine/system default value. To reset specific parameters submit a list of the following: ParameterName and ApplyMethod. To reset the entire DBParameterGroup specify the DBParameterGroup name and ResetAllParameters parameters. When resetting the entire group, dynamic parameters are updated immediately and static parameters are set to pending-reboot to take effect on the next DB instance restart or RebootDBInstance request.

        ", "RestoreDBInstanceFromDBSnapshot": "

        Creates a new DB Instance from a DB snapshot. The target database is created from the source database restore point with the same configuration as the original source database, except that the new RDS instance is created with the default security group.

        ", "RestoreDBInstanceToPointInTime": "

        Restores a DB Instance to an arbitrary point-in-time. Users can restore to any point in time before the latestRestorableTime for up to backupRetentionPeriod days. The target database is created from the source database with the same configuration as the original database except that the DB instance is created with the default DB security group.

        ", "RevokeDBSecurityGroupIngress": "

        Revokes ingress from a DBSecurityGroup for previously authorized IP ranges or EC2 or VPC Security Groups. Required parameters for this API are one of CIDRIP, EC2SecurityGroupId for VPC, or (EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId).

        " }, "shapes": { "AddSourceIdentifierToSubscriptionMessage": { "base": "

        ", "refs": { } }, "AddSourceIdentifierToSubscriptionResult": { "base": null, "refs": { } }, "AddTagsToResourceMessage": { "base": "

        ", "refs": { } }, "ApplyMethod": { "base": null, "refs": { "Parameter$ApplyMethod": "

        Indicates when to apply parameter updates.

        " } }, "AuthorizationAlreadyExistsFault": { "base": "

        The specified CIDRIP or EC2 security group is already authorized for the specified DB security group.

        ", "refs": { } }, "AuthorizationNotFoundFault": { "base": "

        Specified CIDRIP or EC2 security group is not authorized for the specified DB security group.

        RDS may not also be authorized via IAM to perform necessary actions on your behalf.

        ", "refs": { } }, "AuthorizationQuotaExceededFault": { "base": "

        DB security group authorization quota has been reached.

        ", "refs": { } }, "AuthorizeDBSecurityGroupIngressMessage": { "base": "

        ", "refs": { } }, "AuthorizeDBSecurityGroupIngressResult": { "base": null, "refs": { } }, "AvailabilityZone": { "base": "

        Contains Availability Zone information.

        This data type is used as an element in the following data type:

        ", "refs": { "AvailabilityZoneList$member": null, "Subnet$SubnetAvailabilityZone": null } }, "AvailabilityZoneList": { "base": null, "refs": { "OrderableDBInstanceOption$AvailabilityZones": "

        A list of availability zones for the orderable DB Instance.

        " } }, "Boolean": { "base": null, "refs": { "AvailabilityZone$ProvisionedIopsCapable": "

        True indicates the availability zone is capable of provisioned IOPs.

        ", "DBInstance$MultiAZ": "

        Specifies if the DB Instance is a Multi-AZ deployment.

        ", "DBInstance$AutoMinorVersionUpgrade": "

        Indicates that minor version patches are applied automatically.

        ", "DBInstance$PubliclyAccessible": null, "DeleteDBInstanceMessage$SkipFinalSnapshot": "

        Determines whether a final DB Snapshot is created before the DB Instance is deleted. If true is specified, no DBSnapshot is created. If false is specified, a DB Snapshot is created before the DB Instance is deleted.

        The FinalDBSnapshotIdentifier parameter must be specified if SkipFinalSnapshot is false.

        Default: false

        ", "DescribeDBEngineVersionsMessage$DefaultOnly": "

        Indicates that only the default version of the specified engine or engine and major version combination is returned.

        ", "EventSubscription$Enabled": "

        A Boolean value indicating if the subscription is enabled. True indicates the subscription is enabled.

        ", "ModifyDBInstanceMessage$ApplyImmediately": "

        Specifies whether or not the modifications in this request and any pending modifications are asynchronously applied as soon as possible, regardless of the PreferredMaintenanceWindow setting for the DB Instance.

        If this parameter is passed as false, changes to the DB Instance are applied on the next call to RebootDBInstance, the next maintenance reboot, or the next failure reboot, whichever occurs first. See each parameter to determine when a change is applied.

        Default: false

        ", "ModifyDBInstanceMessage$AllowMajorVersionUpgrade": "

        Indicates that major version upgrades are allowed. Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible.

        Constraints: This parameter must be set to true when specifying a value for the EngineVersion parameter that is a different major version than the DB Instance's current version.

        ", "ModifyOptionGroupMessage$ApplyImmediately": "

        Indicates whether the changes should be applied immediately, or during the next maintenance window for each instance associated with the Option Group.

        ", "OptionGroup$AllowsVpcAndNonVpcInstanceMemberships": "

        Indicates whether this option group can be applied to both VPC and non-VPC instances. The value 'true' indicates the option group can be applied to both VPC and non-VPC instances.

        ", "OptionGroupOption$PortRequired": "

        Specifies whether the option requires a port.

        ", "OrderableDBInstanceOption$MultiAZCapable": "

        Indicates whether this orderable DB Instance is multi-AZ capable.

        ", "OrderableDBInstanceOption$ReadReplicaCapable": "

        Indicates whether this orderable DB Instance can have a read replica.

        ", "OrderableDBInstanceOption$Vpc": "

        Indicates whether this is a VPC orderable DB Instance.

        ", "Parameter$IsModifiable": "

        Indicates whether (true) or not (false) the parameter can be modified. Some parameters have security or operational implications that prevent them from being changed.

        ", "ReservedDBInstance$MultiAZ": "

        Indicates if the reservation applies to Multi-AZ deployments.

        ", "ReservedDBInstancesOffering$MultiAZ": "

        Indicates if the offering applies to Multi-AZ deployments.

        ", "ResetDBParameterGroupMessage$ResetAllParameters": "

        Specifies whether (true) or not (false) to reset all parameters in the DB Parameter Group to default values.

        Default: true

        ", "RestoreDBInstanceToPointInTimeMessage$UseLatestRestorableTime": "

        Specifies whether (true) or not (false) the DB Instance is restored from the latest backup time.

        Default: false

        Constraints: Cannot be specified if RestoreTime parameter is provided.

        " } }, "BooleanOptional": { "base": null, "refs": { "CreateDBInstanceMessage$MultiAZ": "

        Specifies if the DB Instance is a Multi-AZ deployment. You cannot set the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        ", "CreateDBInstanceMessage$AutoMinorVersionUpgrade": "

        Indicates that minor engine upgrades will be applied automatically to the DB Instance during the maintenance window.

        Default: true

        ", "CreateDBInstanceMessage$PubliclyAccessible": null, "CreateDBInstanceReadReplicaMessage$AutoMinorVersionUpgrade": "

        Indicates that minor engine upgrades will be applied automatically to the Read Replica during the maintenance window.

        Default: Inherits from the source DB Instance

        ", "CreateDBInstanceReadReplicaMessage$PubliclyAccessible": null, "CreateEventSubscriptionMessage$Enabled": "

        A Boolean value; set to true to activate the subscription, set to false to create the subscription but not active it.

        ", "DescribeDBEngineVersionsMessage$ListSupportedCharacterSets": "

        If this parameter is specified, and if the requested engine supports the CharacterSetName parameter for CreateDBInstance, the response includes a list of supported character sets for each engine version.

        ", "DescribeOrderableDBInstanceOptionsMessage$Vpc": "

        The VPC filter value. Specify this parameter to show only the available VPC or non-VPC offerings.

        ", "DescribeReservedDBInstancesMessage$MultiAZ": "

        The Multi-AZ filter value. Specify this parameter to show only those reservations matching the specified Multi-AZ parameter.

        ", "DescribeReservedDBInstancesOfferingsMessage$MultiAZ": "

        The Multi-AZ filter value. Specify this parameter to show only the available offerings matching the specified Multi-AZ parameter.

        ", "ModifyDBInstanceMessage$MultiAZ": "

        Specifies if the DB Instance is a Multi-AZ deployment. Changing this parameter does not result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        Constraints: Cannot be specified if the DB Instance is a read replica.

        ", "ModifyDBInstanceMessage$AutoMinorVersionUpgrade": "

        Indicates that minor version upgrades will be applied automatically to the DB Instance during the maintenance window. Changing this parameter does not result in an outage except in the following case and the change is asynchronously applied as soon as possible. An outage will result if this parameter is set to true during the maintenance window, and a newer minor version is available, and RDS has enabled auto patching for that engine version.

        ", "ModifyEventSubscriptionMessage$Enabled": "

        A Boolean value; set to true to activate the subscription.

        ", "PendingModifiedValues$MultiAZ": "

        Indicates that the Single-AZ DB Instance is to change to a Multi-AZ deployment.

        ", "RebootDBInstanceMessage$ForceFailover": "

        When true, the reboot will be conducted through a MultiAZ failover.

        Constraint: You cannot specify true if the instance is not configured for MultiAZ.

        ", "RestoreDBInstanceFromDBSnapshotMessage$MultiAZ": "

        Specifies if the DB Instance is a Multi-AZ deployment.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        ", "RestoreDBInstanceFromDBSnapshotMessage$PubliclyAccessible": null, "RestoreDBInstanceFromDBSnapshotMessage$AutoMinorVersionUpgrade": "

        Indicates that minor version upgrades will be applied automatically to the DB Instance during the maintenance window.

        ", "RestoreDBInstanceToPointInTimeMessage$MultiAZ": "

        Specifies if the DB Instance is a Multi-AZ deployment.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        ", "RestoreDBInstanceToPointInTimeMessage$PubliclyAccessible": null, "RestoreDBInstanceToPointInTimeMessage$AutoMinorVersionUpgrade": "

        Indicates that minor version upgrades will be applied automatically to the DB Instance during the maintenance window.

        " } }, "CharacterSet": { "base": "

        This data type is used as a response element in the action DescribeDBEngineVersions.

        ", "refs": { "DBEngineVersion$DefaultCharacterSet": "

        The default character set for new instances of this engine version, if the CharacterSetName parameter of the CreateDBInstance API is not specified.

        ", "SupportedCharacterSetsList$member": null } }, "CopyDBSnapshotMessage": { "base": "

        ", "refs": { } }, "CopyDBSnapshotResult": { "base": null, "refs": { } }, "CreateDBInstanceMessage": { "base": "

        ", "refs": { } }, "CreateDBInstanceReadReplicaMessage": { "base": null, "refs": { } }, "CreateDBInstanceReadReplicaResult": { "base": null, "refs": { } }, "CreateDBInstanceResult": { "base": null, "refs": { } }, "CreateDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "CreateDBParameterGroupResult": { "base": null, "refs": { } }, "CreateDBSecurityGroupMessage": { "base": "

        ", "refs": { } }, "CreateDBSecurityGroupResult": { "base": null, "refs": { } }, "CreateDBSnapshotMessage": { "base": "

        ", "refs": { } }, "CreateDBSnapshotResult": { "base": null, "refs": { } }, "CreateDBSubnetGroupMessage": { "base": "

        ", "refs": { } }, "CreateDBSubnetGroupResult": { "base": null, "refs": { } }, "CreateEventSubscriptionMessage": { "base": "

        ", "refs": { } }, "CreateEventSubscriptionResult": { "base": null, "refs": { } }, "CreateOptionGroupMessage": { "base": "

        ", "refs": { } }, "CreateOptionGroupResult": { "base": null, "refs": { } }, "DBEngineVersion": { "base": "

        This data type is used as a response element in the action DescribeDBEngineVersions.

        ", "refs": { "DBEngineVersionList$member": null } }, "DBEngineVersionList": { "base": null, "refs": { "DBEngineVersionMessage$DBEngineVersions": "

        A list of DBEngineVersion elements.

        " } }, "DBEngineVersionMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBEngineVersions action.

        ", "refs": { } }, "DBInstance": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBInstances action.

        ", "refs": { "CreateDBInstanceReadReplicaResult$DBInstance": null, "CreateDBInstanceResult$DBInstance": null, "DBInstanceList$member": null, "DeleteDBInstanceResult$DBInstance": null, "ModifyDBInstanceResult$DBInstance": null, "PromoteReadReplicaResult$DBInstance": null, "RebootDBInstanceResult$DBInstance": null, "RestoreDBInstanceFromDBSnapshotResult$DBInstance": null, "RestoreDBInstanceToPointInTimeResult$DBInstance": null } }, "DBInstanceAlreadyExistsFault": { "base": "

        User already has a DB instance with the given identifier.

        ", "refs": { } }, "DBInstanceList": { "base": null, "refs": { "DBInstanceMessage$DBInstances": "

        A list of DBInstance instances.

        " } }, "DBInstanceMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBInstances action.

        ", "refs": { } }, "DBInstanceNotFoundFault": { "base": "

        DBInstanceIdentifier does not refer to an existing DB instance.

        ", "refs": { } }, "DBParameterGroup": { "base": "

        Contains the result of a successful invocation of the CreateDBParameterGroup action.

        This data type is used as a request parameter in the DeleteDBParameterGroup action, and as a response element in the DescribeDBParameterGroups action.

        ", "refs": { "CreateDBParameterGroupResult$DBParameterGroup": null, "DBParameterGroupList$member": null } }, "DBParameterGroupAlreadyExistsFault": { "base": "

        A DB parameter group with the same name exists.

        ", "refs": { } }, "DBParameterGroupDetails": { "base": "

        Contains the result of a successful invocation of the DescribeDBParameters action.

        ", "refs": { } }, "DBParameterGroupList": { "base": null, "refs": { "DBParameterGroupsMessage$DBParameterGroups": "

        A list of DBParameterGroup instances.

        " } }, "DBParameterGroupNameMessage": { "base": "

        Contains the result of a successful invocation of the ModifyDBParameterGroup or ResetDBParameterGroup action.

        ", "refs": { } }, "DBParameterGroupNotFoundFault": { "base": "

        DBParameterGroupName does not refer to an existing DB parameter group.

        ", "refs": { } }, "DBParameterGroupQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB parameter groups.

        ", "refs": { } }, "DBParameterGroupStatus": { "base": "

        The status of the DB Parameter Group.

        This data type is used as a response element in the following actions:

        ", "refs": { "DBParameterGroupStatusList$member": null } }, "DBParameterGroupStatusList": { "base": null, "refs": { "DBInstance$DBParameterGroups": "

        Provides the list of DB Parameter Groups applied to this DB Instance.

        " } }, "DBParameterGroupsMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBParameterGroups action.

        ", "refs": { } }, "DBSecurityGroup": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBSecurityGroups action.

        ", "refs": { "AuthorizeDBSecurityGroupIngressResult$DBSecurityGroup": null, "CreateDBSecurityGroupResult$DBSecurityGroup": null, "DBSecurityGroups$member": null, "RevokeDBSecurityGroupIngressResult$DBSecurityGroup": null } }, "DBSecurityGroupAlreadyExistsFault": { "base": "

        A DB security group with the name specified in DBSecurityGroupName already exists.

        ", "refs": { } }, "DBSecurityGroupMembership": { "base": "

        This data type is used as a response element in the following actions:

        ", "refs": { "DBSecurityGroupMembershipList$member": null } }, "DBSecurityGroupMembershipList": { "base": null, "refs": { "DBInstance$DBSecurityGroups": "

        Provides List of DB Security Group elements containing only DBSecurityGroup.Name and DBSecurityGroup.Status subelements.

        ", "Option$DBSecurityGroupMemberships": "

        If the Option requires access to a port, then this DB Security Group allows access to the port.

        " } }, "DBSecurityGroupMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBSecurityGroups action.

        ", "refs": { } }, "DBSecurityGroupNameList": { "base": null, "refs": { "CreateDBInstanceMessage$DBSecurityGroups": "

        A list of DB Security Groups to associate with this DB Instance.

        Default: The default DB Security Group for the database engine.

        ", "ModifyDBInstanceMessage$DBSecurityGroups": "

        A list of DB Security Groups to authorize on this DB Instance. Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "OptionConfiguration$DBSecurityGroupMemberships": "

        A list of DBSecurityGroupMemebrship name strings used for this option.

        " } }, "DBSecurityGroupNotFoundFault": { "base": "

        DBSecurityGroupName does not refer to an existing DB security group.

        ", "refs": { } }, "DBSecurityGroupNotSupportedFault": { "base": "

        A DB security group is not allowed for this action.

        ", "refs": { } }, "DBSecurityGroupQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB security groups.

        ", "refs": { } }, "DBSecurityGroups": { "base": null, "refs": { "DBSecurityGroupMessage$DBSecurityGroups": "

        A list of DBSecurityGroup instances.

        " } }, "DBSnapshot": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBSnapshots action.

        ", "refs": { "CopyDBSnapshotResult$DBSnapshot": null, "CreateDBSnapshotResult$DBSnapshot": null, "DBSnapshotList$member": null, "DeleteDBSnapshotResult$DBSnapshot": null } }, "DBSnapshotAlreadyExistsFault": { "base": "

        DBSnapshotIdentifier is already used by an existing snapshot.

        ", "refs": { } }, "DBSnapshotList": { "base": null, "refs": { "DBSnapshotMessage$DBSnapshots": "

        A list of DBSnapshot instances.

        " } }, "DBSnapshotMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBSnapshots action.

        ", "refs": { } }, "DBSnapshotNotFoundFault": { "base": "

        DBSnapshotIdentifier does not refer to an existing DB snapshot.

        ", "refs": { } }, "DBSubnetGroup": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBSubnetGroups action.

        ", "refs": { "CreateDBSubnetGroupResult$DBSubnetGroup": null, "DBInstance$DBSubnetGroup": "

        Provides the inforamtion of the subnet group associated with the DB instance, including the name, descrption and subnets in the subnet group.

        ", "DBSubnetGroups$member": null, "ModifyDBSubnetGroupResult$DBSubnetGroup": null } }, "DBSubnetGroupAlreadyExistsFault": { "base": "

        DBSubnetGroupName is already used by an existing DB subnet group.

        ", "refs": { } }, "DBSubnetGroupDoesNotCoverEnoughAZs": { "base": "

        Subnets in the DB subnet group should cover at least two Availability Zones unless there is only one Availability Zone.

        ", "refs": { } }, "DBSubnetGroupMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBSubnetGroups action.

        ", "refs": { } }, "DBSubnetGroupNotFoundFault": { "base": "

        DBSubnetGroupName does not refer to an existing DB subnet group.

        ", "refs": { } }, "DBSubnetGroupQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB subnet groups.

        ", "refs": { } }, "DBSubnetGroups": { "base": null, "refs": { "DBSubnetGroupMessage$DBSubnetGroups": "

        A list of DBSubnetGroup instances.

        " } }, "DBSubnetQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of subnets in a DB subnet groups.

        ", "refs": { } }, "DBUpgradeDependencyFailureFault": { "base": "

        The DB upgrade failed because a resource the DB depends on could not be modified.

        ", "refs": { } }, "DeleteDBInstanceMessage": { "base": "

        ", "refs": { } }, "DeleteDBInstanceResult": { "base": null, "refs": { } }, "DeleteDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "DeleteDBSecurityGroupMessage": { "base": "

        ", "refs": { } }, "DeleteDBSnapshotMessage": { "base": "

        ", "refs": { } }, "DeleteDBSnapshotResult": { "base": null, "refs": { } }, "DeleteDBSubnetGroupMessage": { "base": "

        ", "refs": { } }, "DeleteEventSubscriptionMessage": { "base": "

        ", "refs": { } }, "DeleteEventSubscriptionResult": { "base": null, "refs": { } }, "DeleteOptionGroupMessage": { "base": "

        ", "refs": { } }, "DescribeDBEngineVersionsMessage": { "base": null, "refs": { } }, "DescribeDBInstancesMessage": { "base": "

        ", "refs": { } }, "DescribeDBParameterGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeDBParametersMessage": { "base": null, "refs": { } }, "DescribeDBSecurityGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeDBSnapshotsMessage": { "base": "

        ", "refs": { } }, "DescribeDBSubnetGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeEngineDefaultParametersMessage": { "base": "

        ", "refs": { } }, "DescribeEngineDefaultParametersResult": { "base": null, "refs": { } }, "DescribeEventCategoriesMessage": { "base": "

        ", "refs": { } }, "DescribeEventSubscriptionsMessage": { "base": "

        ", "refs": { } }, "DescribeEventsMessage": { "base": "

        ", "refs": { } }, "DescribeOptionGroupOptionsMessage": { "base": "

        ", "refs": { } }, "DescribeOptionGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeOrderableDBInstanceOptionsMessage": { "base": "

        ", "refs": { } }, "DescribeReservedDBInstancesMessage": { "base": "

        ", "refs": { } }, "DescribeReservedDBInstancesOfferingsMessage": { "base": "

        ", "refs": { } }, "Double": { "base": null, "refs": { "RecurringCharge$RecurringChargeAmount": "

        The amount of the recurring charge.

        ", "ReservedDBInstance$FixedPrice": "

        The fixed price charged for this reserved DB Instance.

        ", "ReservedDBInstance$UsagePrice": "

        The hourly price charged for this reserved DB Instance.

        ", "ReservedDBInstancesOffering$FixedPrice": "

        The fixed price charged for this offering.

        ", "ReservedDBInstancesOffering$UsagePrice": "

        The hourly price charged for this offering.

        " } }, "EC2SecurityGroup": { "base": "

        This data type is used as a response element in the following actions:

        ", "refs": { "EC2SecurityGroupList$member": null } }, "EC2SecurityGroupList": { "base": null, "refs": { "DBSecurityGroup$EC2SecurityGroups": "

        Contains a list of EC2SecurityGroup elements.

        " } }, "Endpoint": { "base": "

        This data type is used as a response element in the following actions:

        ", "refs": { "DBInstance$Endpoint": "

        Specifies the connection endpoint.

        " } }, "EngineDefaults": { "base": "

        Contains the result of a successful invocation of the DescribeEngineDefaultParameters action.

        ", "refs": { "DescribeEngineDefaultParametersResult$EngineDefaults": null } }, "Event": { "base": "

        This data type is used as a response element in the DescribeEvents action.

        ", "refs": { "EventList$member": null } }, "EventCategoriesList": { "base": null, "refs": { "CreateEventSubscriptionMessage$EventCategories": "

        A list of event categories for a SourceType that you want to subscribe to. You can see a list of the categories for a given SourceType in the Events topic in the Amazon RDS User Guide or by using the DescribeEventCategories action.

        ", "DescribeEventsMessage$EventCategories": "

        A list of event categories that trigger notifications for a event notification subscription.

        ", "Event$EventCategories": "

        Specifies the category for the event.

        ", "EventCategoriesMap$EventCategories": "

        The event categories for the specified source type

        ", "EventSubscription$EventCategoriesList": "

        A list of event categories for the RDS event notification subscription.

        ", "ModifyEventSubscriptionMessage$EventCategories": "

        A list of event categories for a SourceType that you want to subscribe to. You can see a list of the categories for a given SourceType in the Events topic in the Amazon RDS User Guide or by using the DescribeEventCategories action.

        " } }, "EventCategoriesMap": { "base": "

        Contains the results of a successful invocation of the DescribeEventCategories action.

        ", "refs": { "EventCategoriesMapList$member": null } }, "EventCategoriesMapList": { "base": null, "refs": { "EventCategoriesMessage$EventCategoriesMapList": "

        A list of EventCategoriesMap data types.

        " } }, "EventCategoriesMessage": { "base": "

        Data returned from the DescribeEventCategories action.

        ", "refs": { } }, "EventList": { "base": null, "refs": { "EventsMessage$Events": "

        A list of Event instances.

        " } }, "EventSubscription": { "base": "

        Contains the results of a successful invocation of the DescribeEventSubscriptions action.

        ", "refs": { "AddSourceIdentifierToSubscriptionResult$EventSubscription": null, "CreateEventSubscriptionResult$EventSubscription": null, "DeleteEventSubscriptionResult$EventSubscription": null, "EventSubscriptionsList$member": null, "ModifyEventSubscriptionResult$EventSubscription": null, "RemoveSourceIdentifierFromSubscriptionResult$EventSubscription": null } }, "EventSubscriptionQuotaExceededFault": { "base": "

        You have reached the maximum number of event subscriptions.

        ", "refs": { } }, "EventSubscriptionsList": { "base": null, "refs": { "EventSubscriptionsMessage$EventSubscriptionsList": "

        A list of EventSubscriptions data types.

        " } }, "EventSubscriptionsMessage": { "base": "

        Data returned by the DescribeEventSubscriptions action.

        ", "refs": { } }, "EventsMessage": { "base": "

        Contains the result of a successful invocation of the DescribeEvents action.

        ", "refs": { } }, "IPRange": { "base": "

        This data type is used as a response element in the DescribeDBSecurityGroups action.

        ", "refs": { "IPRangeList$member": null } }, "IPRangeList": { "base": null, "refs": { "DBSecurityGroup$IPRanges": "

        Contains a list of IPRange elements.

        " } }, "InstanceQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB instances.

        ", "refs": { } }, "InsufficientDBInstanceCapacityFault": { "base": "

        Specified DB instance class is not available in the specified Availability Zone.

        ", "refs": { } }, "Integer": { "base": null, "refs": { "DBInstance$AllocatedStorage": "

        Specifies the allocated storage size specified in gigabytes.

        ", "DBInstance$BackupRetentionPeriod": "

        Specifies the number of days for which automatic DB Snapshots are retained.

        ", "DBSnapshot$AllocatedStorage": "

        Specifies the allocated storage size in gigabytes (GB).

        ", "DBSnapshot$Port": "

        Specifies the port that the database engine was listening on at the time of the snapshot.

        ", "Endpoint$Port": "

        Specifies the port that the database engine is listening on.

        ", "ReservedDBInstance$Duration": "

        The duration of the reservation in seconds.

        ", "ReservedDBInstance$DBInstanceCount": "

        The number of reserved DB Instances.

        ", "ReservedDBInstancesOffering$Duration": "

        The duration of the offering in seconds.

        " } }, "IntegerOptional": { "base": null, "refs": { "CreateDBInstanceMessage$AllocatedStorage": "

        The amount of storage (in gigabytes) to be initially allocated for the database instance.

        MySQL

        Constraints: Must be an integer from 5 to 1024.

        Type: Integer

        Oracle

        Constraints: Must be an integer from 10 to 1024.

        SQL Server

        Constraints: Must be an integer from 200 to 1024 (Standard Edition and Enterprise Edition) or from 30 to 1024 (Express Edition and Web Edition)

        ", "CreateDBInstanceMessage$BackupRetentionPeriod": "

        The number of days for which automated backups are retained. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

        Default: 1

        Constraints:

        • Must be a value from 0 to 8
        • Cannot be set to 0 if the DB Instance is a master instance with read replicas
        ", "CreateDBInstanceMessage$Port": "

        The port number on which the database accepts connections.

        MySQL

        Default: 3306

        Valid Values: 1150-65535

        Type: Integer

        Oracle

        Default: 1521

        Valid Values: 1150-65535

        SQL Server

        Default: 1433

        Valid Values: 1150-65535 except for 1434 and 3389.

        ", "CreateDBInstanceMessage$Iops": "

        The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB Instance.

        Constraints: Must be an integer greater than 1000.

        ", "CreateDBInstanceReadReplicaMessage$Port": "

        The port number that the DB Instance uses for connections.

        Default: Inherits from the source DB Instance

        Valid Values: 1150-65535

        ", "CreateDBInstanceReadReplicaMessage$Iops": "

        The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB Instance.

        ", "DBInstance$Iops": "

        Specifies the Provisioned IOPS (I/O operations per second) value.

        ", "DBSnapshot$Iops": "

        Specifies the Provisioned IOPS (I/O operations per second) value of the DB Instance at the time of the snapshot.

        ", "DescribeDBEngineVersionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more than the MaxRecords value is available, a pagination token called a marker is included in the response so that the following results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBInstancesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBParameterGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBParametersMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBSecurityGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBSnapshotsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBSubnetGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeEngineDefaultParametersMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeEventSubscriptionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeEventsMessage$Duration": "

        The number of minutes to retrieve events for.

        Default: 60

        ", "DescribeEventsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeOptionGroupOptionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeOptionGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeOrderableDBInstanceOptionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeReservedDBInstancesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more than the MaxRecords value is available, a pagination token called a marker is included in the response so that the following results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeReservedDBInstancesOfferingsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more than the MaxRecords value is available, a pagination token called a marker is included in the response so that the following results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "ModifyDBInstanceMessage$AllocatedStorage": "

        The new storage capacity of the RDS instance. Changing this parameter does not result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        MySQL

        Default: Uses existing setting

        Valid Values: 5-1024

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

        Type: Integer

        Oracle

        Default: Uses existing setting

        Valid Values: 10-1024

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

        SQL Server

        Cannot be modified.

        ", "ModifyDBInstanceMessage$BackupRetentionPeriod": "

        The number of days to retain automated backups. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

        Changing this parameter can result in an outage if you change from 0 to a non-zero value or from a non-zero value to 0. These changes are applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request. If you change the parameter from one non-zero value to another non-zero value, the change is asynchronously applied as soon as possible.

        Default: Uses existing setting

        Constraints:

        • Must be a value from 0 to 8
        • Cannot be set to 0 if the DB Instance is a master instance with read replicas or if the DB Instance is a read replica
        ", "ModifyDBInstanceMessage$Iops": "

        The new Provisioned IOPS (I/O operations per second) value for the RDS instance. Changing this parameter does not result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        Default: Uses existing setting

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

        Type: Integer

        ", "Option$Port": "

        If required, the port configured for this option to use.

        ", "OptionConfiguration$Port": "

        The optional port for the option.

        ", "OptionGroupOption$DefaultPort": "

        If the option requires a port, specifies the default port for the option.

        ", "PendingModifiedValues$AllocatedStorage": "

        Contains the new AllocatedStorage size for the DB Instance that will be applied or is in progress.

        ", "PendingModifiedValues$Port": "

        Specifies the pending port for the DB Instance.

        ", "PendingModifiedValues$BackupRetentionPeriod": "

        Specifies the pending number of days for which automated backups are retained.

        ", "PendingModifiedValues$Iops": "

        Specifies the new Provisioned IOPS value for the DB Instance that will be applied or is being applied.

        ", "PromoteReadReplicaMessage$BackupRetentionPeriod": "

        The number of days to retain automated backups. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

        Default: 1

        Constraints:

        • Must be a value from 0 to 8
        ", "PurchaseReservedDBInstancesOfferingMessage$DBInstanceCount": "

        The number of instances to reserve.

        Default: 1

        ", "RestoreDBInstanceFromDBSnapshotMessage$Port": "

        The port number on which the database accepts connections.

        Default: The same port as the original DB Instance

        Constraints: Value must be 1150-65535

        ", "RestoreDBInstanceFromDBSnapshotMessage$Iops": "

        The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB Instance.

        Constraints: Must be an integer greater than 1000.

        ", "RestoreDBInstanceToPointInTimeMessage$Port": "

        The port number on which the database accepts connections.

        Constraints: Value must be 1150-65535

        Default: The same port as the original DB Instance.

        ", "RestoreDBInstanceToPointInTimeMessage$Iops": "

        The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB Instance.

        Constraints: Must be an integer greater than 1000.

        " } }, "InvalidDBInstanceStateFault": { "base": "

        The specified DB instance is not in the available state.

        ", "refs": { } }, "InvalidDBParameterGroupStateFault": { "base": "

        The DB parameter group cannot be deleted because it is in use.

        ", "refs": { } }, "InvalidDBSecurityGroupStateFault": { "base": "

        The state of the DB security group does not allow deletion.

        ", "refs": { } }, "InvalidDBSnapshotStateFault": { "base": "

        The state of the DB snapshot does not allow deletion.

        ", "refs": { } }, "InvalidDBSubnetGroupStateFault": { "base": "

        The DB subnet group cannot be deleted because it is in use.

        ", "refs": { } }, "InvalidDBSubnetStateFault": { "base": "

        The DB subnet is not in the available state.

        ", "refs": { } }, "InvalidEventSubscriptionStateFault": { "base": "

        This error can occur if someone else is modifying a subscription. You should retry the action.

        ", "refs": { } }, "InvalidOptionGroupStateFault": { "base": "

        The option group is not in the available state.

        ", "refs": { } }, "InvalidRestoreFault": { "base": "

        Cannot restore from vpc backup to non-vpc DB instance.

        ", "refs": { } }, "InvalidSubnet": { "base": "

        The requested subnet is invalid, or multiple subnets were requested that are not all in a common VPC.

        ", "refs": { } }, "InvalidVPCNetworkStateFault": { "base": "

        DB subnet group does not cover all Availability Zones after it is created because users' change.

        ", "refs": { } }, "KeyList": { "base": null, "refs": { "RemoveTagsFromResourceMessage$TagKeys": "

        The tag key (name) of the tag to be removed.

        " } }, "ListTagsForResourceMessage": { "base": "

        ", "refs": { } }, "ModifyDBInstanceMessage": { "base": "

        ", "refs": { } }, "ModifyDBInstanceResult": { "base": null, "refs": { } }, "ModifyDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "ModifyDBSubnetGroupMessage": { "base": "

        ", "refs": { } }, "ModifyDBSubnetGroupResult": { "base": null, "refs": { } }, "ModifyEventSubscriptionMessage": { "base": "

        ", "refs": { } }, "ModifyEventSubscriptionResult": { "base": null, "refs": { } }, "ModifyOptionGroupMessage": { "base": "

        ", "refs": { } }, "ModifyOptionGroupResult": { "base": null, "refs": { } }, "Option": { "base": "

        Option details.

        ", "refs": { "OptionsList$member": null } }, "OptionConfiguration": { "base": "

        A list of all available options

        ", "refs": { "OptionConfigurationList$member": null } }, "OptionConfigurationList": { "base": null, "refs": { "ModifyOptionGroupMessage$OptionsToInclude": "

        Options in this list are added to the Option Group or, if already present, the specified configuration is used to update the existing configuration.

        " } }, "OptionGroup": { "base": "

        ", "refs": { "CreateOptionGroupResult$OptionGroup": null, "ModifyOptionGroupResult$OptionGroup": null, "OptionGroupsList$member": null } }, "OptionGroupAlreadyExistsFault": { "base": "

        The option group you are trying to create already exists.

        ", "refs": { } }, "OptionGroupMembership": { "base": null, "refs": { "DBInstance$OptionGroupMembership": "

        Specifies the name and status of the option group that this instance belongs to.

        " } }, "OptionGroupNotFoundFault": { "base": "

        The specified option group could not be found.

        ", "refs": { } }, "OptionGroupOption": { "base": "

        Available option.

        ", "refs": { "OptionGroupOptionsList$member": null } }, "OptionGroupOptionsList": { "base": "

        List of available options.

        ", "refs": { "OptionGroupOptionsMessage$OptionGroupOptions": null } }, "OptionGroupOptionsMessage": { "base": "

        ", "refs": { } }, "OptionGroupQuotaExceededFault": { "base": "

        The quota of 20 option groups was exceeded for this AWS account.

        ", "refs": { } }, "OptionGroups": { "base": "

        List of option groups.

        ", "refs": { } }, "OptionGroupsList": { "base": null, "refs": { "OptionGroups$OptionGroupsList": "

        List of option groups.

        " } }, "OptionNamesList": { "base": null, "refs": { "ModifyOptionGroupMessage$OptionsToRemove": "

        Options in this list are removed from the Option Group.

        " } }, "OptionsDependedOn": { "base": null, "refs": { "OptionGroupOption$OptionsDependedOn": "

        List of all options that are prerequisites for this option.

        " } }, "OptionsList": { "base": null, "refs": { "OptionGroup$Options": "

        Indicates what options are available in the option group.

        " } }, "OrderableDBInstanceOption": { "base": "

        Contains a list of available options for a DB Instance

        This data type is used as a response element in the DescribeOrderableDBInstanceOptions action.

        ", "refs": { "OrderableDBInstanceOptionsList$member": null } }, "OrderableDBInstanceOptionsList": { "base": null, "refs": { "OrderableDBInstanceOptionsMessage$OrderableDBInstanceOptions": "

        An OrderableDBInstanceOption structure containing information about orderable options for the DB Instance.

        " } }, "OrderableDBInstanceOptionsMessage": { "base": "

        Contains the result of a successful invocation of the DescribeOrderableDBInstanceOptions action.

        ", "refs": { } }, "Parameter": { "base": "

        This data type is used as a request parameter in the ModifyDBParameterGroup and ResetDBParameterGroup actions.

        This data type is used as a response element in the DescribeEngineDefaultParameters and DescribeDBParameters actions.

        ", "refs": { "ParametersList$member": null } }, "ParametersList": { "base": null, "refs": { "DBParameterGroupDetails$Parameters": "

        A list of Parameter instances.

        ", "EngineDefaults$Parameters": "

        Contains a list of engine default parameters.

        ", "ModifyDBParameterGroupMessage$Parameters": "

        An array of parameter names, values, and the apply method for the parameter update. At least one parameter name, value, and apply method must be supplied; subsequent arguments are optional. A maximum of 20 parameters may be modified in a single request.

        Valid Values (for the application method): immediate | pending-reboot

        You can use the immediate value with dynamic parameters only. You can use the pending-reboot value for both dynamic and static parameters, and changes are applied when DB Instance reboots. ", "ResetDBParameterGroupMessage$Parameters": "

        An array of parameter names, values, and the apply method for the parameter update. At least one parameter name, value, and apply method must be supplied; subsequent arguments are optional. A maximum of 20 parameters may be modified in a single request.

        MySQL

        Valid Values (for Apply method): immediate | pending-reboot

        You can use the immediate value with dynamic parameters only. You can use the pending-reboot value for both dynamic and static parameters, and changes are applied when DB Instance reboots.

        Oracle

        Valid Values (for Apply method): pending-reboot

        " } }, "PendingModifiedValues": { "base": "

        This data type is used as a response element in the ModifyDBInstance action.

        ", "refs": { "DBInstance$PendingModifiedValues": "

        Specifies that changes to the DB Instance are pending. This element is only included when changes are pending. Specific changes are identified by subelements.

        " } }, "PointInTimeRestoreNotEnabledFault": { "base": "

        SourceDBInstanceIdentifier refers to a DB instance with BackupRetentionPeriod equal to 0.

        ", "refs": { } }, "PromoteReadReplicaMessage": { "base": "

        ", "refs": { } }, "PromoteReadReplicaResult": { "base": null, "refs": { } }, "ProvisionedIopsNotAvailableInAZFault": { "base": "

        Provisioned IOPS not available in the specified Availability Zone.

        ", "refs": { } }, "PurchaseReservedDBInstancesOfferingMessage": { "base": "

        ", "refs": { } }, "PurchaseReservedDBInstancesOfferingResult": { "base": null, "refs": { } }, "ReadReplicaDBInstanceIdentifierList": { "base": null, "refs": { "DBInstance$ReadReplicaDBInstanceIdentifiers": "

        Contains one or more identifiers of the Read Replicas associated with this DB Instance.

        " } }, "RebootDBInstanceMessage": { "base": "

        ", "refs": { } }, "RebootDBInstanceResult": { "base": null, "refs": { } }, "RecurringCharge": { "base": "

        This data type is used as a response element in the DescribeReservedDBInstances and DescribeReservedDBInstancesOfferings actions.

        ", "refs": { "RecurringChargeList$member": null } }, "RecurringChargeList": { "base": null, "refs": { "ReservedDBInstance$RecurringCharges": "

        The recurring price charged to run this reserved DB Instance.

        ", "ReservedDBInstancesOffering$RecurringCharges": "

        The recurring price charged to run this reserved DB Instance.

        " } }, "RemoveSourceIdentifierFromSubscriptionMessage": { "base": "

        ", "refs": { } }, "RemoveSourceIdentifierFromSubscriptionResult": { "base": null, "refs": { } }, "RemoveTagsFromResourceMessage": { "base": "

        ", "refs": { } }, "ReservedDBInstance": { "base": "

        This data type is used as a response element in the DescribeReservedDBInstances and PurchaseReservedDBInstancesOffering actions.

        ", "refs": { "PurchaseReservedDBInstancesOfferingResult$ReservedDBInstance": null, "ReservedDBInstanceList$member": null } }, "ReservedDBInstanceAlreadyExistsFault": { "base": "

        User already has a reservation with the given identifier.

        ", "refs": { } }, "ReservedDBInstanceList": { "base": null, "refs": { "ReservedDBInstanceMessage$ReservedDBInstances": "

        A list of of reserved DB Instances.

        " } }, "ReservedDBInstanceMessage": { "base": "

        Contains the result of a successful invocation of the DescribeReservedDBInstances action.

        ", "refs": { } }, "ReservedDBInstanceNotFoundFault": { "base": "

        The specified reserved DB Instance not found.

        ", "refs": { } }, "ReservedDBInstanceQuotaExceededFault": { "base": "

        Request would exceed the user's DB Instance quota.

        ", "refs": { } }, "ReservedDBInstancesOffering": { "base": "

        This data type is used as a response element in the DescribeReservedDBInstancesOfferings action.

        ", "refs": { "ReservedDBInstancesOfferingList$member": null } }, "ReservedDBInstancesOfferingList": { "base": null, "refs": { "ReservedDBInstancesOfferingMessage$ReservedDBInstancesOfferings": "

        A list of reserved DB Instance offerings.

        " } }, "ReservedDBInstancesOfferingMessage": { "base": "

        Contains the result of a successful invocation of the DescribeReservedDBInstancesOfferings action.

        ", "refs": { } }, "ReservedDBInstancesOfferingNotFoundFault": { "base": "

        Specified offering does not exist.

        ", "refs": { } }, "ResetDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "RestoreDBInstanceFromDBSnapshotMessage": { "base": "

        ", "refs": { } }, "RestoreDBInstanceFromDBSnapshotResult": { "base": null, "refs": { } }, "RestoreDBInstanceToPointInTimeMessage": { "base": "

        ", "refs": { } }, "RestoreDBInstanceToPointInTimeResult": { "base": null, "refs": { } }, "RevokeDBSecurityGroupIngressMessage": { "base": "

        ", "refs": { } }, "RevokeDBSecurityGroupIngressResult": { "base": null, "refs": { } }, "SNSInvalidTopicFault": { "base": "

        SNS has responded that there is a problem with the SND topic specified.

        ", "refs": { } }, "SNSNoAuthorizationFault": { "base": "

        You do not have permission to publish to the SNS topic ARN.

        ", "refs": { } }, "SNSTopicArnNotFoundFault": { "base": "

        The SNS topic ARN does not exist.

        ", "refs": { } }, "SnapshotQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB snapshots.

        ", "refs": { } }, "SourceIdsList": { "base": null, "refs": { "CreateEventSubscriptionMessage$SourceIds": "

        The list of identifiers of the event sources for which events will be returned. If not specified, then all sources are included in the response. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it cannot end with a hyphen or contain two consecutive hyphens.

        Constraints:

        • If SourceIds are supplied, SourceType must also be provided.
        • If the source type is a DB instance, then a DBInstanceIdentifier must be supplied.
        • If the source type is a DB security group, a DBSecurityGroupName must be supplied.
        • If the source type is a DB parameter group, a DBParameterGroupName must be supplied.
        • If the source type is a DB Snapshot, a DBSnapshotIdentifier must be supplied.
        ", "EventSubscription$SourceIdsList": "

        A list of source Ids for the RDS event notification subscription.

        " } }, "SourceNotFoundFault": { "base": "

        The requested source could not be found.

        ", "refs": { } }, "SourceType": { "base": null, "refs": { "DescribeEventsMessage$SourceType": "

        The event source to retrieve events for. If no value is specified, all events are returned.

        ", "Event$SourceType": "

        Specifies the source type for this event.

        " } }, "StorageQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed amount of storage available across all DB instances.

        ", "refs": { } }, "String": { "base": null, "refs": { "AddSourceIdentifierToSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to add a source identifier to.

        ", "AddSourceIdentifierToSubscriptionMessage$SourceIdentifier": "

        The identifier of the event source to be added. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it cannot end with a hyphen or contain two consecutive hyphens.

        Constraints:

        • If the source type is a DB instance, then a DBInstanceIdentifier must be supplied.
        • If the source type is a DB security group, a DBSecurityGroupName must be supplied.
        • If the source type is a DB parameter group, a DBParameterGroupName must be supplied.
        • If the source type is a DB Snapshot, a DBSnapshotIdentifier must be supplied.
        ", "AddTagsToResourceMessage$ResourceName": "

        The DB Instance the tags will be added to.

        ", "AuthorizeDBSecurityGroupIngressMessage$DBSecurityGroupName": "

        The name of the DB Security Group to add authorization to.

        ", "AuthorizeDBSecurityGroupIngressMessage$CIDRIP": "

        The IP range to authorize.

        ", "AuthorizeDBSecurityGroupIngressMessage$EC2SecurityGroupName": "

        Name of the EC2 Security Group to authorize. For VPC DB Security Groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "AuthorizeDBSecurityGroupIngressMessage$EC2SecurityGroupId": "

        Id of the EC2 Security Group to authorize. For VPC DB Security Groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "AuthorizeDBSecurityGroupIngressMessage$EC2SecurityGroupOwnerId": "

        AWS Account Number of the owner of the EC2 Security Group specified in the EC2SecurityGroupName parameter. The AWS Access Key ID is not an acceptable value. For VPC DB Security Groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "AvailabilityZone$Name": "

        The name of the availability zone.

        ", "CharacterSet$CharacterSetName": "

        The name of the character set.

        ", "CharacterSet$CharacterSetDescription": "

        The description of the character set.

        ", "CopyDBSnapshotMessage$SourceDBSnapshotIdentifier": "

        The identifier for the source DB snapshot.

        Constraints:

        • Must be the identifier for a valid system snapshot in the \"available\" state.

        Example: rds:mydb-2012-04-02-00-01

        ", "CopyDBSnapshotMessage$TargetDBSnapshotIdentifier": "

        The identifier for the copied snapshot.

        Constraints:

        • Cannot be null, empty, or blank
        • Must contain from 1 to 255 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-db-snapshot

        ", "CreateDBInstanceMessage$DBName": "

        The meaning of this parameter differs according to the database engine you use.

        MySQL

        The name of the database to create when the DB Instance is created. If this parameter is not specified, no database is created in the DB Instance.

        Constraints:

        • Must contain 1 to 64 alphanumeric characters
        • Cannot be a word reserved by the specified database engine

        Type: String

        Oracle

        The Oracle System ID (SID) of the created DB Instance.

        Default: ORCL

        Constraints:

        • Cannot be longer than 8 characters

        SQL Server

        Not applicable. Must be null.

        ", "CreateDBInstanceMessage$DBInstanceIdentifier": "

        The DB Instance identifier. This parameter is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens (1 to 15 for SQL Server).
        • First character must be a letter.
        • Cannot end with a hyphen or contain two consecutive hyphens.

        Example: mydbinstance

        ", "CreateDBInstanceMessage$DBInstanceClass": "

        The compute and memory capacity of the DB Instance.

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.xlarge |db.m2.2xlarge | db.m2.4xlarge

        ", "CreateDBInstanceMessage$Engine": "

        The name of the database engine to be used for this instance.

        Valid Values: MySQL | oracle-se1 | oracle-se | oracle-ee | sqlserver-ee | sqlserver-se | sqlserver-ex | sqlserver-web

        ", "CreateDBInstanceMessage$MasterUsername": "

        The name of master user for the client DB Instance.

        MySQL

        Constraints:

        • Must be 1 to 16 alphanumeric characters.
        • First character must be a letter.
        • Cannot be a reserved word for the chosen database engine.

        Type: String

        Oracle

        Constraints:

        • Must be 1 to 30 alphanumeric characters.
        • First character must be a letter.
        • Cannot be a reserved word for the chosen database engine.

        SQL Server

        Constraints:

        • Must be 1 to 128 alphanumeric characters.
        • First character must be a letter.
        • Cannot be a reserved word for the chosen database engine.
        ", "CreateDBInstanceMessage$MasterUserPassword": "

        The password for the master database user. Can be any printable ASCII character except \"/\", \"\\\", or \"@\".

        Type: String

        MySQL

        Constraints: Must contain from 8 to 41 alphanumeric characters.

        Oracle

        Constraints: Must contain from 8 to 30 alphanumeric characters.

        SQL Server

        Constraints: Must contain from 8 to 128 alphanumeric characters.

        ", "CreateDBInstanceMessage$AvailabilityZone": "

        The EC2 Availability Zone that the database instance will be created in.

        Default: A random, system-chosen Availability Zone in the endpoint's region.

        Example: us-east-1d

        Constraint: The AvailabilityZone parameter cannot be specified if the MultiAZ parameter is set to true. The specified Availability Zone must be in the same region as the current endpoint.

        ", "CreateDBInstanceMessage$DBSubnetGroupName": "

        A DB Subnet Group to associate with this DB Instance.

        If there is no DB Subnet Group, then it is a non-VPC DB instance.

        ", "CreateDBInstanceMessage$PreferredMaintenanceWindow": "

        The weekly time range (in UTC) during which system maintenance can occur.

        Format: ddd:hh24:mi-ddd:hh24:mi

        Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week. The following list shows the time blocks for each region from which the default maintenance windows are assigned.

        • US-East (Northern Virginia) Region: 03:00-11:00 UTC
        • US-West (Northern California) Region: 06:00-14:00 UTC
        • EU (Ireland) Region: 22:00-06:00 UTC
        • Asia Pacific (Singapore) Region: 14:00-22:00 UTC
        • Asia Pacific (Tokyo) Region: 17:00-03:00 UTC

        Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun

        Constraints: Minimum 30-minute window.

        ", "CreateDBInstanceMessage$DBParameterGroupName": "

        The name of the DB Parameter Group to associate with this DB instance. If this argument is omitted, the default DBParameterGroup for the specified engine will be used.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "CreateDBInstanceMessage$PreferredBackupWindow": "

        The daily time range during which automated backups are created if automated backups are enabled, using the BackupRetentionPeriod parameter.

        Default: A 30-minute window selected at random from an 8-hour block of time per region. The following list shows the time blocks for each region from which the default backup windows are assigned.

        • US-East (Northern Virginia) Region: 03:00-11:00 UTC
        • US-West (Northern California) Region: 06:00-14:00 UTC
        • EU (Ireland) Region: 22:00-06:00 UTC
        • Asia Pacific (Singapore) Region: 14:00-22:00 UTC
        • Asia Pacific (Tokyo) Region: 17:00-03:00 UTC

        Constraints: Must be in the format hh24:mi-hh24:mi. Times should be Universal Time Coordinated (UTC). Must not conflict with the preferred maintenance window. Must be at least 30 minutes.

        ", "CreateDBInstanceMessage$EngineVersion": "

        The version number of the database engine to use.

        MySQL

        Example: 5.1.42

        Type: String

        Oracle

        Example: 11.2.0.2.v2

        Type: String

        SQL Server

        Example: 10.50.2789.0.v1

        ", "CreateDBInstanceMessage$LicenseModel": "

        License model information for this DB Instance.

        Valid values: license-included | bring-your-own-license | general-public-license

        ", "CreateDBInstanceMessage$OptionGroupName": "

        Indicates that the DB Instance should be associated with the specified option group.

        ", "CreateDBInstanceMessage$CharacterSetName": "

        For supported engines, indicates that the DB Instance should be associated with the specified CharacterSet.

        ", "CreateDBInstanceReadReplicaMessage$DBInstanceIdentifier": "

        The DB Instance identifier of the Read Replica. This is the unique key that identifies a DB Instance. This parameter is stored as a lowercase string.

        ", "CreateDBInstanceReadReplicaMessage$SourceDBInstanceIdentifier": "

        The identifier of the DB Instance that will act as the source for the Read Replica. Each DB Instance can have up to five Read Replicas.

        Constraints: Must be the identifier of an existing DB Instance that is not already a Read Replica DB Instance.

        ", "CreateDBInstanceReadReplicaMessage$DBInstanceClass": "

        The compute and memory capacity of the Read Replica.

        Valid Values: db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.xlarge |db.m2.2xlarge | db.m2.4xlarge

        Default: Inherits from the source DB Instance.

        ", "CreateDBInstanceReadReplicaMessage$AvailabilityZone": "

        The Amazon EC2 Availability Zone that the Read Replica will be created in.

        Default: A random, system-chosen Availability Zone in the endpoint's region.

        Example: us-east-1d

        ", "CreateDBInstanceReadReplicaMessage$OptionGroupName": "

        The option group the DB instance will be associated with. If omitted, the default Option Group for the engine specified will be used.

        ", "CreateDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB Parameter Group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        This value is stored as a lower-case string.", "CreateDBParameterGroupMessage$DBParameterGroupFamily": "

        The DB Parameter Group Family name. A DB Parameter Group can be associated with one and only one DB Parameter Group Family, and can be applied only to a DB Instance running a database engine and engine version compatible with that DB Parameter Group Family.

        ", "CreateDBParameterGroupMessage$Description": "

        The description for the DB Parameter Group.

        ", "CreateDBSecurityGroupMessage$DBSecurityGroupName": "

        The name for the DB Security Group. This value is stored as a lowercase string.

        Constraints: Must contain no more than 255 alphanumeric characters or hyphens. Must not be \"Default\".

        Example: mysecuritygroup

        ", "CreateDBSecurityGroupMessage$DBSecurityGroupDescription": "

        The description for the DB Security Group.

        ", "CreateDBSnapshotMessage$DBSnapshotIdentifier": "

        The identifier for the DB Snapshot.

        Constraints:

        • Cannot be null, empty, or blank
        • Must contain from 1 to 255 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-snapshot-id

        ", "CreateDBSnapshotMessage$DBInstanceIdentifier": "

        The DB Instance identifier. This is the unique key that identifies a DB Instance. This parameter isn't case sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "CreateDBSubnetGroupMessage$DBSubnetGroupName": "

        The name for the DB Subnet Group. This value is stored as a lowercase string.

        Constraints: Must contain no more than 255 alphanumeric characters or hyphens. Must not be \"Default\".

        Example: mySubnetgroup

        ", "CreateDBSubnetGroupMessage$DBSubnetGroupDescription": "

        The description for the DB Subnet Group.

        ", "CreateEventSubscriptionMessage$SubscriptionName": "

        The name of the subscription.

        Constraints: The name must be less than 255 characters.

        ", "CreateEventSubscriptionMessage$SnsTopicArn": "

        The Amazon Resource Name (ARN) of the SNS topic created for event notification. The ARN is created by Amazon SNS when you create a topic and subscribe to it.

        ", "CreateEventSubscriptionMessage$SourceType": "

        The type of source that will be generating the events. For example, if you want to be notified of events generated by a DB instance, you would set this parameter to db-instance. if this value is not specified, all events are returned.

        Valid values: db-instance | db-parameter-group | db-security-group | db-snapshot

        ", "CreateOptionGroupMessage$OptionGroupName": "

        Specifies the name of the option group to be created.

        Constraints:

        • Must be 1 to 255 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: myOptiongroup

        ", "CreateOptionGroupMessage$EngineName": "

        Specifies the name of the engine that this option group should be associated with.

        ", "CreateOptionGroupMessage$MajorEngineVersion": "

        Specifies the major version of the engine that this option group should be associated with.

        ", "CreateOptionGroupMessage$OptionGroupDescription": "

        The description of the option group.

        ", "DBEngineVersion$Engine": "

        The name of the database engine.

        ", "DBEngineVersion$EngineVersion": "

        The version number of the database engine.

        ", "DBEngineVersion$DBParameterGroupFamily": "

        The name of the DBParameterGroupFamily for the database engine.

        ", "DBEngineVersion$DBEngineDescription": "

        The description of the database engine.

        ", "DBEngineVersion$DBEngineVersionDescription": "

        The description of the database engine version.

        ", "DBEngineVersionMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBInstance$DBInstanceIdentifier": "

        Contains a user-supplied database identifier. This is the unique key that identifies a DB Instance.

        ", "DBInstance$DBInstanceClass": "

        Contains the name of the compute and memory capacity class of the DB Instance.

        ", "DBInstance$Engine": "

        Provides the name of the database engine to be used for this DB Instance.

        ", "DBInstance$DBInstanceStatus": "

        Specifies the current state of this database.

        ", "DBInstance$MasterUsername": "

        Contains the master username for the DB Instance.

        ", "DBInstance$DBName": "

        The meaning of this parameter differs according to the database engine you use.

        MySQL

        Contains the name of the initial database of this instance that was provided at create time, if one was specified when the DB Instance was created. This same name is returned for the life of the DB Instance.

        Type: String

        Oracle

        Contains the Oracle System ID (SID) of the created DB Instance.

        ", "DBInstance$PreferredBackupWindow": "

        Specifies the daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod.

        ", "DBInstance$AvailabilityZone": "

        Specifies the name of the Availability Zone the DB Instance is located in.

        ", "DBInstance$PreferredMaintenanceWindow": "

        Specifies the weekly time range (in UTC) during which system maintenance can occur.

        ", "DBInstance$EngineVersion": "

        Indicates the database engine version.

        ", "DBInstance$ReadReplicaSourceDBInstanceIdentifier": "

        Contains the identifier of the source DB Instance if this DB Instance is a Read Replica.

        ", "DBInstance$LicenseModel": "

        License model information for this DB Instance.

        ", "DBInstance$CharacterSetName": "

        If present, specifies the name of the character set that this instance is associated with.

        ", "DBInstance$SecondaryAvailabilityZone": "

        If present, specifies the name of the secondary Availability Zone for a DB instance with multi-AZ support.

        ", "DBInstanceMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DBParameterGroup$DBParameterGroupName": "

        Provides the name of the DB Parameter Group.

        ", "DBParameterGroup$DBParameterGroupFamily": "

        Provides the name of the DB Parameter Group Family that this DB Parameter Group is compatible with.

        ", "DBParameterGroup$Description": "

        Provides the customer-specified description for this DB Parameter Group.

        ", "DBParameterGroupDetails$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBParameterGroupNameMessage$DBParameterGroupName": "

        The name of the DB Parameter Group.

        ", "DBParameterGroupStatus$DBParameterGroupName": "

        The name of the DP Parameter Group.

        ", "DBParameterGroupStatus$ParameterApplyStatus": "

        The status of parameter updates.

        ", "DBParameterGroupsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBSecurityGroup$OwnerId": "

        Provides the AWS ID of the owner of a specific DB Security Group.

        ", "DBSecurityGroup$DBSecurityGroupName": "

        Specifies the name of the DB Security Group.

        ", "DBSecurityGroup$DBSecurityGroupDescription": "

        Provides the description of the DB Security Group.

        ", "DBSecurityGroup$VpcId": "

        Provides the VpcId of the DB Security Group.

        ", "DBSecurityGroupMembership$DBSecurityGroupName": "

        The name of the DB Security Group.

        ", "DBSecurityGroupMembership$Status": "

        The status of the DB Security Group.

        ", "DBSecurityGroupMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBSecurityGroupNameList$member": null, "DBSnapshot$DBSnapshotIdentifier": "

        Specifies the identifier for the DB Snapshot.

        ", "DBSnapshot$DBInstanceIdentifier": "

        Specifies the the DBInstanceIdentifier of the DB Instance this DB Snapshot was created from.

        ", "DBSnapshot$Engine": "

        Specifies the name of the database engine.

        ", "DBSnapshot$Status": "

        Specifies the status of this DB Snapshot.

        ", "DBSnapshot$AvailabilityZone": "

        Specifies the name of the Availability Zone the DB Instance was located in at the time of the DB Snapshot.

        ", "DBSnapshot$VpcId": "

        Provides the Vpc Id associated with the DB Snapshot.

        ", "DBSnapshot$MasterUsername": "

        Provides the master username for the DB Instance.

        ", "DBSnapshot$EngineVersion": "

        Specifies the version of the database engine.

        ", "DBSnapshot$LicenseModel": "

        License model information for the restored DB Instance.

        ", "DBSnapshot$SnapshotType": "

        Provides the type of the DB Snapshot.

        ", "DBSnapshotMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBSubnetGroup$DBSubnetGroupName": "

        Specifies the name of the DB Subnet Group.

        ", "DBSubnetGroup$DBSubnetGroupDescription": "

        Provides the description of the DB Subnet Group.

        ", "DBSubnetGroup$VpcId": "

        Provides the VpcId of the DB Subnet Group.

        ", "DBSubnetGroup$SubnetGroupStatus": "

        Provides the status of the DB Subnet Group.

        ", "DBSubnetGroupMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DeleteDBInstanceMessage$DBInstanceIdentifier": "

        The DB Instance identifier for the DB Instance to be deleted. This parameter isn't case sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DeleteDBInstanceMessage$FinalDBSnapshotIdentifier": "

        The DBSnapshotIdentifier of the new DBSnapshot created when SkipFinalSnapshot is set to false.

        Specifying this parameter and also setting the SkipFinalShapshot parameter to true results in an error.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DeleteDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB Parameter Group.

        Constraints:

        • Must be the name of an existing DB Parameter Group
        • You cannot delete a default DB Parameter Group
        • Cannot be associated with any DB Instances
        ", "DeleteDBSecurityGroupMessage$DBSecurityGroupName": "

        The name of the DB Security Group to delete.

        You cannot delete the default DB Security Group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DeleteDBSnapshotMessage$DBSnapshotIdentifier": "

        The DBSnapshot identifier.

        Constraints: Must be the name of an existing DB Snapshot in the available state.

        ", "DeleteDBSubnetGroupMessage$DBSubnetGroupName": "

        The name of the database subnet group to delete.

        You cannot delete the default subnet group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DeleteEventSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to delete.

        ", "DeleteOptionGroupMessage$OptionGroupName": "

        The name of the option group to be deleted.

        You cannot delete default Option Groups.", "DescribeDBEngineVersionsMessage$Engine": "

        The database engine to return.

        ", "DescribeDBEngineVersionsMessage$EngineVersion": "

        The database engine version to return.

        Example: 5.1.49

        ", "DescribeDBEngineVersionsMessage$DBParameterGroupFamily": "

        The name of a specific DB Parameter Group family to return details for.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBEngineVersionsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBInstancesMessage$DBInstanceIdentifier": "

        The user-supplied instance identifier. If this parameter is specified, information from only the specific DB Instance is returned. This parameter isn't case sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBInstancesMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBInstances request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DescribeDBParameterGroupsMessage$DBParameterGroupName": "

        The name of a specific DB Parameter Group to return details for.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBParameterGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBParameterGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBParametersMessage$DBParameterGroupName": "

        The name of a specific DB Parameter Group to return details for.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBParametersMessage$Source": "

        The parameter types to return.

        Default: All parameter types returned

        Valid Values: user | system | engine-default

        ", "DescribeDBParametersMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBParameters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBSecurityGroupsMessage$DBSecurityGroupName": "

        The name of the DB Security Group to return details for.

        ", "DescribeDBSecurityGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBSecurityGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBSnapshotsMessage$DBInstanceIdentifier": "

        A DB Instance Identifier to retrieve the list of DB Snapshots for. Cannot be used in conjunction with DBSnapshotIdentifier. This parameter isn't case sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBSnapshotsMessage$DBSnapshotIdentifier": "

        A specific DB Snapshot Identifier to describe. Cannot be used in conjunction with DBInstanceIdentifier. This value is stored as a lowercase string.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        • If this is the identifier of an automated snapshot, the SnapshotType parameter must also be specified.
        ", "DescribeDBSnapshotsMessage$SnapshotType": "

        An optional snapshot type for which snapshots will be returned. If not specified, the returned results will include snapshots of all types.

        ", "DescribeDBSnapshotsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBSnapshots request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBSubnetGroupsMessage$DBSubnetGroupName": "

        The name of the DB Subnet Group to return details for.

        ", "DescribeDBSubnetGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBSubnetGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeEngineDefaultParametersMessage$DBParameterGroupFamily": "

        The name of the DB Parameter Group Family.

        ", "DescribeEngineDefaultParametersMessage$Marker": "

        An optional pagination token provided by a previous DescribeEngineDefaultParameters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeEventCategoriesMessage$SourceType": "

        The type of source that will be generating the events.

        Valid values: db-instance | db-parameter-group | db-security-group | db-snapshot

        ", "DescribeEventSubscriptionsMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to describe.

        ", "DescribeEventSubscriptionsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DescribeEventsMessage$SourceIdentifier": "

        The identifier of the event source for which events will be returned. If not specified, then all sources are included in the response.

        Constraints:

        • If SourceIdentifier is supplied, SourceType must also be provided.
        • If the source type is DBInstance, then a DBInstanceIdentifier must be supplied.
        • If the source type is DBSecurityGroup, a DBSecurityGroupName must be supplied.
        • If the source type is DBParameterGroup, a DBParameterGroupName must be supplied.
        • If the source type is DBSnapshot, a DBSnapshotIdentifier must be supplied.
        • Cannot end with a hyphen or contain two consecutive hyphens.
        ", "DescribeEventsMessage$Marker": "

        An optional pagination token provided by a previous DescribeEvents request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeOptionGroupOptionsMessage$EngineName": "

        Options available for the given DB engine name to be described.

        ", "DescribeOptionGroupOptionsMessage$MajorEngineVersion": "

        If specified, filters the results to include only options for the specified major engine version.

        ", "DescribeOptionGroupOptionsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeOptionGroupsMessage$OptionGroupName": "

        The name of the option group to describe. Cannot be supplied together with EngineName or MajorEngineVersion.

        ", "DescribeOptionGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOptionGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeOptionGroupsMessage$EngineName": "

        Filters the list of option groups to only include groups associated with a specific database engine.

        ", "DescribeOptionGroupsMessage$MajorEngineVersion": "

        Filters the list of option groups to only include groups associated with a specific database engine version. If specified, then EngineName must also be specified.

        ", "DescribeOrderableDBInstanceOptionsMessage$Engine": "

        The name of the engine to retrieve DB Instance options for.

        ", "DescribeOrderableDBInstanceOptionsMessage$EngineVersion": "

        The engine version filter value. Specify this parameter to show only the available offerings matching the specified engine version.

        ", "DescribeOrderableDBInstanceOptionsMessage$DBInstanceClass": "

        The DB Instance class filter value. Specify this parameter to show only the available offerings matching the specified DB Instance class.

        ", "DescribeOrderableDBInstanceOptionsMessage$LicenseModel": "

        The license model filter value. Specify this parameter to show only the available offerings matching the specified license model.

        ", "DescribeOrderableDBInstanceOptionsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DescribeReservedDBInstancesMessage$ReservedDBInstanceId": "

        The reserved DB Instance identifier filter value. Specify this parameter to show only the reservation that matches the specified reservation ID.

        ", "DescribeReservedDBInstancesMessage$ReservedDBInstancesOfferingId": "

        The offering identifier filter value. Specify this parameter to show only purchased reservations matching the specified offering identifier.

        ", "DescribeReservedDBInstancesMessage$DBInstanceClass": "

        The DB Instance class filter value. Specify this parameter to show only those reservations matching the specified DB Instances class.

        ", "DescribeReservedDBInstancesMessage$Duration": "

        The duration filter value, specified in years or seconds. Specify this parameter to show only reservations for this duration.

        Valid Values: 1 | 3 | 31536000 | 94608000

        ", "DescribeReservedDBInstancesMessage$ProductDescription": "

        The product description filter value. Specify this parameter to show only those reservations matching the specified product description.

        ", "DescribeReservedDBInstancesMessage$OfferingType": "

        The offering type filter value. Specify this parameter to show only the available offerings matching the specified offering type.

        Valid Values: \"Light Utilization\" | \"Medium Utilization\" | \"Heavy Utilization\"

        ", "DescribeReservedDBInstancesMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeReservedDBInstancesOfferingsMessage$ReservedDBInstancesOfferingId": "

        The offering identifier filter value. Specify this parameter to show only the available offering that matches the specified reservation identifier.

        Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706

        ", "DescribeReservedDBInstancesOfferingsMessage$DBInstanceClass": "

        The DB Instance class filter value. Specify this parameter to show only the available offerings matching the specified DB Instance class.

        ", "DescribeReservedDBInstancesOfferingsMessage$Duration": "

        Duration filter value, specified in years or seconds. Specify this parameter to show only reservations for this duration.

        Valid Values: 1 | 3 | 31536000 | 94608000

        ", "DescribeReservedDBInstancesOfferingsMessage$ProductDescription": "

        Product description filter value. Specify this parameter to show only the available offerings matching the specified product description.

        ", "DescribeReservedDBInstancesOfferingsMessage$OfferingType": "

        The offering type filter value. Specify this parameter to show only the available offerings matching the specified offering type.

        Valid Values: \"Light Utilization\" | \"Medium Utilization\" | \"Heavy Utilization\"

        ", "DescribeReservedDBInstancesOfferingsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "EC2SecurityGroup$Status": "

        Provides the status of the EC2 security group. Status can be \"authorizing\", \"authorized\", \"revoking\", and \"revoked\".

        ", "EC2SecurityGroup$EC2SecurityGroupName": "

        Specifies the name of the EC2 Security Group.

        ", "EC2SecurityGroup$EC2SecurityGroupId": "

        Specifies the id of the EC2 Security Group.

        ", "EC2SecurityGroup$EC2SecurityGroupOwnerId": "

        Specifies the AWS ID of the owner of the EC2 security group specified in the EC2SecurityGroupName field.

        ", "Endpoint$Address": "

        Specifies the DNS address of the DB Instance.

        ", "EngineDefaults$DBParameterGroupFamily": "

        Specifies the name of the DB Parameter Group Family which the engine default parameters apply to.

        ", "EngineDefaults$Marker": "

        An optional pagination token provided by a previous EngineDefaults request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "Event$SourceIdentifier": "

        Provides the identifier for the source of the event.

        ", "Event$Message": "

        Provides the text of this event.

        ", "EventCategoriesList$member": null, "EventCategoriesMap$SourceType": "

        The source type that the returned categories belong to

        ", "EventSubscription$Id": "

        Not used.

        ", "EventSubscription$CustomerAwsId": "

        The AWS customer account associated with the RDS event notification subscription.

        ", "EventSubscription$CustSubscriptionId": "

        The RDS event notification subscription Id.

        ", "EventSubscription$SnsTopicArn": "

        The topic ARN of the RDS event notification subscription.

        ", "EventSubscription$Status": "

        The status of the RDS event notification subscription.

        Constraints:

        Can be one of the following: creating | modifying | deleting | active | no-permission | topic-not-exist

        The status \"no-permission\" indicates that RDS no longer has permission to post to the SNS topic. The status \"topic-not-exist\" indicates that the topic was deleted after the subscription was created.

        ", "EventSubscription$SubscriptionCreationTime": "

        The time the RDS event notification subscription was created.

        ", "EventSubscription$SourceType": "

        The source type for the RDS event notification subscription.

        ", "EventSubscriptionsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "EventsMessage$Marker": "

        An optional pagination token provided by a previous Events request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "IPRange$Status": "

        Specifies the status of the IP range. Status can be \"authorizing\", \"authorized\", \"revoking\", and \"revoked\".

        ", "IPRange$CIDRIP": "

        Specifies the IP range.

        ", "KeyList$member": null, "ListTagsForResourceMessage$ResourceName": "

        The DB Instance with tags to be listed.

        ", "ModifyDBInstanceMessage$DBInstanceIdentifier": "

        The DB Instance identifier. This value is stored as a lowercase string.

        Constraints:

        • Must be the identifier for an existing DB Instance
        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "ModifyDBInstanceMessage$DBInstanceClass": "

        The new compute and memory capacity of the DB Instance. To determine the instance classes that are available for a particular DB engine, use the DescribeOrderableDBInstanceOptions action.

        Passing a value for this parameter causes an outage during the change and is applied during the next maintenance window, unless the ApplyImmediately parameter is specified as true for this request.

        Default: Uses existing setting

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.xlarge | db.m2.2xlarge | db.m2.4xlarge

        ", "ModifyDBInstanceMessage$MasterUserPassword": "

        The new password for the DB Instance master user. Can be any printable ASCII character except \"/\", \"\\\", or \"@\".

        Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible. Between the time of the request and the completion of the request, the MasterUserPassword element exists in the PendingModifiedValues element of the operation response.

        Default: Uses existing setting

        Constraints: Must be 8 to 41 alphanumeric characters (MySQL), 8 to 30 alphanumeric characters (Oracle), or 8 to 128 alphanumeric characters (SQL Server).

        Amazon RDS API actions never return the password, so this action provides a way to regain access to a master instance user if the password is lost. ", "ModifyDBInstanceMessage$DBParameterGroupName": "

        The name of the DB Parameter Group to apply to this DB Instance. Changing this parameter does not result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        Default: Uses existing setting

        Constraints: The DB Parameter Group must be in the same DB Parameter Group family as this DB Instance.

        ", "ModifyDBInstanceMessage$PreferredBackupWindow": "

        The daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod. Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible.

        Constraints:

        • Must be in the format hh24:mi-hh24:mi
        • Times should be Universal Time Coordinated (UTC)
        • Must not conflict with the preferred maintenance window
        • Must be at least 30 minutes
        ", "ModifyDBInstanceMessage$PreferredMaintenanceWindow": "

        The weekly time range (in UTC) during which system maintenance can occur, which may result in an outage. Changing this parameter does not result in an outage, except in the following situation, and the change is asynchronously applied as soon as possible. If there are pending actions that cause a reboot, and the maintenance window is changed to include the current time, then changing this parameter will cause a reboot of the DB Instance. If moving this window to the current time, there must be at least 30 minutes between the current time and end of the window to ensure pending changes are applied.

        Default: Uses existing setting

        Format: ddd:hh24:mi-ddd:hh24:mi

        Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

        Constraints: Must be at least 30 minutes

        ", "ModifyDBInstanceMessage$EngineVersion": "

        The version number of the database engine to upgrade to. Changing this parameter results in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        For major version upgrades, if a nondefault DB Parameter Group is currently in use, a new DB Parameter Group in the DB Parameter Group Family for the new engine version must be specified. The new DB Parameter Group can be the default for that DB Parameter Group Family.

        Example: 5.1.42

        ", "ModifyDBInstanceMessage$OptionGroupName": "

        Indicates that the DB Instance should be associated with the specified option group. Changing this parameter does not result in an outage except in the following case and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request. If the parameter change results in an option group that enables OEM, this change can cause a brief (sub-second) period during which new connections are rejected but existing connections are not interrupted.

        ", "ModifyDBInstanceMessage$NewDBInstanceIdentifier": "

        The new DB Instance identifier for the DB Instance when renaming a DB Instance. This value is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "ModifyDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB Parameter Group.

        Constraints:

        • Must be the name of an existing DB Parameter Group
        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "ModifyDBSubnetGroupMessage$DBSubnetGroupName": "

        The name for the DB Subnet Group. This value is stored as a lowercase string.

        Constraints: Must contain no more than 255 alphanumeric characters or hyphens. Must not be \"Default\".

        Example: mySubnetgroup

        ", "ModifyDBSubnetGroupMessage$DBSubnetGroupDescription": "

        The description for the DB Subnet Group.

        ", "ModifyEventSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription.

        ", "ModifyEventSubscriptionMessage$SnsTopicArn": "

        The Amazon Resource Name (ARN) of the SNS topic created for event notification. The ARN is created by Amazon SNS when you create a topic and subscribe to it.

        ", "ModifyEventSubscriptionMessage$SourceType": "

        The type of source that will be generating the events. For example, if you want to be notified of events generated by a DB instance, you would set this parameter to db-instance. if this value is not specified, all events are returned.

        Valid values: db-instance | db-parameter-group | db-security-group | db-snapshot

        ", "ModifyOptionGroupMessage$OptionGroupName": "

        The name of the option group to be modified.

        ", "Option$OptionName": "

        The name of the option.

        ", "Option$OptionDescription": "

        The description of the option.

        ", "OptionConfiguration$OptionName": "

        The configuration of options to include in a group.

        ", "OptionGroup$OptionGroupName": "

        Specifies the name of the option group.

        ", "OptionGroup$OptionGroupDescription": "

        Provides the description of the option group.

        ", "OptionGroup$EngineName": "

        Engine name that this option group can be applied to.

        ", "OptionGroup$MajorEngineVersion": "

        Indicates the major engine version associated with this option group.

        ", "OptionGroup$VpcId": "

        If AllowsVpcAndNonVpcInstanceMemberships is 'false', this field is blank. If AllowsVpcAndNonVpcInstanceMemberships is 'true' and this field is blank, then this option group can be applied to both VPC and non-VPC instances. If this field contains a value, then this option group can only be applied to instances that are in the VPC indicated by this field.

        ", "OptionGroupMembership$OptionGroupName": "

        The name of the option group that the instance belongs to.

        ", "OptionGroupMembership$Status": "

        The status of the DB Instance's option group membership (e.g. in-sync, pending, pending-maintenance, applying).

        ", "OptionGroupOption$Name": "

        The name of the option.

        ", "OptionGroupOption$Description": "

        The description of the option.

        ", "OptionGroupOption$EngineName": "

        Engine name that this option can be applied to.

        ", "OptionGroupOption$MajorEngineVersion": "

        Indicates the major engine version that the option is available for.

        ", "OptionGroupOption$MinimumRequiredMinorEngineVersion": "

        The minimum required engine version for the option to be applied.

        ", "OptionGroupOptionsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "OptionGroups$Marker": null, "OptionNamesList$member": null, "OptionsDependedOn$member": null, "OrderableDBInstanceOption$Engine": "

        The engine type of the orderable DB Instance.

        ", "OrderableDBInstanceOption$EngineVersion": "

        The engine version of the orderable DB Instance.

        ", "OrderableDBInstanceOption$DBInstanceClass": "

        The DB Instance Class for the orderable DB Instance

        ", "OrderableDBInstanceOption$LicenseModel": "

        The license model for the orderable DB Instance.

        ", "OrderableDBInstanceOptionsMessage$Marker": "

        An optional pagination token provided by a previous OrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "Parameter$ParameterName": "

        Specifies the name of the parameter.

        ", "Parameter$ParameterValue": "

        Specifies the value of the parameter.

        ", "Parameter$Description": "

        Provides a description of the parameter.

        ", "Parameter$Source": "

        Indicates the source of the parameter value.

        ", "Parameter$ApplyType": "

        Specifies the engine specific parameters type.

        ", "Parameter$DataType": "

        Specifies the valid data type for the parameter.

        ", "Parameter$AllowedValues": "

        Specifies the valid range of values for the parameter.

        ", "Parameter$MinimumEngineVersion": "

        The earliest engine version to which the parameter can apply.

        ", "PendingModifiedValues$DBInstanceClass": "

        Contains the new DBInstanceClass for the DB Instance that will be applied or is in progress.

        ", "PendingModifiedValues$MasterUserPassword": "

        Contains the pending or in-progress change of the master credentials for the DB Instance.

        ", "PendingModifiedValues$EngineVersion": "

        Indicates the database engine version.

        ", "PendingModifiedValues$DBInstanceIdentifier": "

        Contains the new DBInstanceIdentifier for the DB Instance that will be applied or is in progress.

        ", "PromoteReadReplicaMessage$DBInstanceIdentifier": "

        The DB Instance identifier. This value is stored as a lowercase string.

        Constraints:

        • Must be the identifier for an existing Read Replica DB Instance
        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: mydbinstance

        ", "PromoteReadReplicaMessage$PreferredBackupWindow": "

        The daily time range during which automated backups are created if automated backups are enabled, using the BackupRetentionPeriod parameter.

        Default: A 30-minute window selected at random from an 8-hour block of time per region. The following list shows the time blocks for each region from which the default backup windows are assigned.

        • US-East (Northern Virginia) Region: 03:00-11:00 UTC
        • US-West (Northern California) Region: 06:00-14:00 UTC
        • EU (Ireland) Region: 22:00-06:00 UTC
        • Asia Pacific (Singapore) Region: 14:00-22:00 UTC
        • Asia Pacific (Tokyo) Region: 17:00-03:00 UTC

        Constraints: Must be in the format hh24:mi-hh24:mi. Times should be Universal Time Coordinated (UTC). Must not conflict with the preferred maintenance window. Must be at least 30 minutes.

        ", "PurchaseReservedDBInstancesOfferingMessage$ReservedDBInstancesOfferingId": "

        The ID of the Reserved DB Instance offering to purchase.

        Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706

        ", "PurchaseReservedDBInstancesOfferingMessage$ReservedDBInstanceId": "

        Customer-specified identifier to track this reservation.

        Example: myreservationID

        ", "ReadReplicaDBInstanceIdentifierList$member": null, "RebootDBInstanceMessage$DBInstanceIdentifier": "

        The DB Instance identifier. This parameter is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RecurringCharge$RecurringChargeFrequency": "

        The frequency of the recurring charge.

        ", "RemoveSourceIdentifierFromSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to remove a source identifier from.

        ", "RemoveSourceIdentifierFromSubscriptionMessage$SourceIdentifier": "

        The source identifier to be removed from the subscription, such as the DB instance identifier for a DB instance or the name of a security group.

        ", "RemoveTagsFromResourceMessage$ResourceName": "

        The DB Instance the tags will be removed from.

        ", "ReservedDBInstance$ReservedDBInstanceId": "

        The unique identifier for the reservation.

        ", "ReservedDBInstance$ReservedDBInstancesOfferingId": "

        The offering identifier.

        ", "ReservedDBInstance$DBInstanceClass": "

        The DB instance class for the reserved DB Instance.

        ", "ReservedDBInstance$CurrencyCode": "

        The currency code for the reserved DB Instance.

        ", "ReservedDBInstance$ProductDescription": "

        The description of the reserved DB Instance.

        ", "ReservedDBInstance$OfferingType": "

        The offering type of this reserved DB Instance.

        ", "ReservedDBInstance$State": "

        The state of the reserved DB Instance.

        ", "ReservedDBInstanceMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "ReservedDBInstancesOffering$ReservedDBInstancesOfferingId": "

        The offering identifier.

        ", "ReservedDBInstancesOffering$DBInstanceClass": "

        The DB instance class for the reserved DB Instance.

        ", "ReservedDBInstancesOffering$CurrencyCode": "

        The currency code for the reserved DB Instance offering.

        ", "ReservedDBInstancesOffering$ProductDescription": "

        The database engine used by the offering.

        ", "ReservedDBInstancesOffering$OfferingType": "

        The offering type.

        ", "ReservedDBInstancesOfferingMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "ResetDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB Parameter Group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RestoreDBInstanceFromDBSnapshotMessage$DBInstanceIdentifier": "

        The identifier for the DB Snapshot to restore from.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RestoreDBInstanceFromDBSnapshotMessage$DBSnapshotIdentifier": "

        Name of the DB Instance to create from the DB Snapshot. This parameter isn't case sensitive.

        Constraints:

        • Must contain from 1 to 255 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-snapshot-id

        ", "RestoreDBInstanceFromDBSnapshotMessage$DBInstanceClass": "

        The compute and memory capacity of the Amazon RDS DB instance.

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.2xlarge | db.m2.4xlarge

        ", "RestoreDBInstanceFromDBSnapshotMessage$AvailabilityZone": "

        The EC2 Availability Zone that the database instance will be created in.

        Default: A random, system-chosen Availability Zone.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        Example: us-east-1a

        ", "RestoreDBInstanceFromDBSnapshotMessage$DBSubnetGroupName": "

        The DB Subnet Group name to use for the new instance.

        ", "RestoreDBInstanceFromDBSnapshotMessage$LicenseModel": "

        License model information for the restored DB Instance.

        Default: Same as source.

        Valid values: license-included | bring-your-own-license | general-public-license

        ", "RestoreDBInstanceFromDBSnapshotMessage$DBName": "

        The database name for the restored DB Instance.

        This parameter doesn't apply to the MySQL engine.

        ", "RestoreDBInstanceFromDBSnapshotMessage$Engine": "

        The database engine to use for the new instance.

        Default: The same as source

        Constraint: Must be compatible with the engine of the source

        Example: oracle-ee

        ", "RestoreDBInstanceFromDBSnapshotMessage$OptionGroupName": null, "RestoreDBInstanceToPointInTimeMessage$SourceDBInstanceIdentifier": "

        The identifier of the source DB Instance from which to restore.

        Constraints:

        • Must be the identifier of an existing database instance
        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RestoreDBInstanceToPointInTimeMessage$TargetDBInstanceIdentifier": "

        The name of the new database instance to be created.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RestoreDBInstanceToPointInTimeMessage$DBInstanceClass": "

        The compute and memory capacity of the Amazon RDS DB instance.

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.2xlarge | db.m2.4xlarge

        Default: The same DBInstanceClass as the original DB Instance.

        ", "RestoreDBInstanceToPointInTimeMessage$AvailabilityZone": "

        The EC2 Availability Zone that the database instance will be created in.

        Default: A random, system-chosen Availability Zone.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        Example: us-east-1a

        ", "RestoreDBInstanceToPointInTimeMessage$DBSubnetGroupName": "

        The DB subnet group name to use for the new instance.

        ", "RestoreDBInstanceToPointInTimeMessage$LicenseModel": "

        License model information for the restored DB Instance.

        Default: Same as source.

        Valid values: license-included | bring-your-own-license | general-public-license

        ", "RestoreDBInstanceToPointInTimeMessage$DBName": "

        The database name for the restored DB Instance.

        This parameter is not used for the MySQL engine.

        ", "RestoreDBInstanceToPointInTimeMessage$Engine": "

        The database engine to use for the new instance.

        Default: The same as source

        Constraint: Must be compatible with the engine of the source

        Example: oracle-ee

        ", "RestoreDBInstanceToPointInTimeMessage$OptionGroupName": null, "RevokeDBSecurityGroupIngressMessage$DBSecurityGroupName": "

        The name of the DB Security Group to revoke ingress from.

        ", "RevokeDBSecurityGroupIngressMessage$CIDRIP": "

        The IP range to revoke access from. Must be a valid CIDR range. If CIDRIP is specified, EC2SecurityGroupName, EC2SecurityGroupId and EC2SecurityGroupOwnerId cannot be provided.

        ", "RevokeDBSecurityGroupIngressMessage$EC2SecurityGroupName": "

        The name of the EC2 Security Group to revoke access from. For VPC DB Security Groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "RevokeDBSecurityGroupIngressMessage$EC2SecurityGroupId": "

        The id of the EC2 Security Group to revoke access from. For VPC DB Security Groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "RevokeDBSecurityGroupIngressMessage$EC2SecurityGroupOwnerId": "

        The AWS Account Number of the owner of the EC2 security group specified in the EC2SecurityGroupName parameter. The AWS Access Key ID is not an acceptable value. For VPC DB Security Groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "SourceIdsList$member": null, "Subnet$SubnetIdentifier": "

        Specifies the identifier of the subnet.

        ", "Subnet$SubnetStatus": "

        Specifies the status of the subnet.

        ", "SubnetIdentifierList$member": null, "Tag$Key": "

        A key is the required name of the tag. The string value can be from 1 to 128 Unicode characters in length and cannot be prefixed with \"aws:\". The string may only contain only the set of Unicode letters, digits, white-space, '_', '.', '/', '=', '+', '-' (Java regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:/=+\\\\-]*)$\").

        ", "Tag$Value": "

        A value is the optional value of the tag. The string value can be from 1 to 256 Unicode characters in length and cannot be prefixed with \"aws:\". The string may only contain only the set of Unicode letters, digits, white-space, '_', '.', '/', '=', '+', '-' (Java regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:/=+\\\\-]*)$\").

        ", "VpcSecurityGroupIdList$member": null, "VpcSecurityGroupMembership$VpcSecurityGroupId": "

        The name of the VPC security group.

        ", "VpcSecurityGroupMembership$Status": "

        The status of the VPC Security Group.

        " } }, "Subnet": { "base": "

        This data type is used as a response element in the DescribeDBSubnetGroups action.

        ", "refs": { "SubnetList$member": null } }, "SubnetAlreadyInUse": { "base": "

        The DB subnet is already in use in the Availability Zone.

        ", "refs": { } }, "SubnetIdentifierList": { "base": null, "refs": { "CreateDBSubnetGroupMessage$SubnetIds": "

        The EC2 Subnet IDs for the DB Subnet Group.

        ", "ModifyDBSubnetGroupMessage$SubnetIds": "

        The EC2 Subnet IDs for the DB Subnet Group.

        " } }, "SubnetList": { "base": null, "refs": { "DBSubnetGroup$Subnets": "

        Contains a list of Subnet elements.

        " } }, "SubscriptionAlreadyExistFault": { "base": "

        The supplied subscription name already exists.

        ", "refs": { } }, "SubscriptionCategoryNotFoundFault": { "base": "

        The supplied category does not exist.

        ", "refs": { } }, "SubscriptionNotFoundFault": { "base": "

        The subscription name does not exist.

        ", "refs": { } }, "SupportedCharacterSetsList": { "base": null, "refs": { "DBEngineVersion$SupportedCharacterSets": "

        A list of the character sets supported by this engine for the CharacterSetName parameter of the CreateDBInstance API.

        " } }, "TStamp": { "base": null, "refs": { "DBInstance$InstanceCreateTime": "

        Provides the date and time the DB Instance was created.

        ", "DBInstance$LatestRestorableTime": "

        Specifies the latest time to which a database can be restored with point-in-time restore.

        ", "DBSnapshot$SnapshotCreateTime": "

        Provides the time (UTC) when the snapshot was taken.

        ", "DBSnapshot$InstanceCreateTime": "

        Specifies the time (UTC) when the snapshot was taken.

        ", "DescribeEventsMessage$StartTime": "

        The beginning of the time interval to retrieve events for, specified in ISO 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia page.

        Example: 2009-07-08T18:00Z

        ", "DescribeEventsMessage$EndTime": "

        The end of the time interval for which to retrieve events, specified in ISO 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia page.

        Example: 2009-07-08T18:00Z

        ", "Event$Date": "

        Specifies the date and time of the event.

        ", "ReservedDBInstance$StartTime": "

        The time the reservation started.

        ", "RestoreDBInstanceToPointInTimeMessage$RestoreTime": "

        The date and time to restore from.

        Valid Values: Value must be a UTC time

        Constraints:

        • Must be before the latest restorable time for the DB Instance
        • Cannot be specified if UseLatestRestorableTime parameter is true

        Example: 2009-09-07T23:45:00Z

        " } }, "Tag": { "base": "

        Metadata assigned to a DB Instance consisting of a key-value pair.

        ", "refs": { "TagList$member": null } }, "TagList": { "base": "

        A list of tags.

        ", "refs": { "AddTagsToResourceMessage$Tags": "

        The tags to be assigned to the DB Instance.

        ", "TagListMessage$TagList": "

        List of tags returned by the ListTagsForResource operation.

        " } }, "TagListMessage": { "base": "

        ", "refs": { } }, "VpcSecurityGroupIdList": { "base": null, "refs": { "CreateDBInstanceMessage$VpcSecurityGroupIds": "

        A list of EC2 VPC Security Groups to associate with this DB Instance.

        Default: The default EC2 VPC Security Group for the DB Subnet group's VPC.

        ", "ModifyDBInstanceMessage$VpcSecurityGroupIds": "

        A list of EC2 VPC Security Groups to authorize on this DB Instance. This change is asynchronously applied as soon as possible.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "OptionConfiguration$VpcSecurityGroupMemberships": "

        A list of VpcSecurityGroupMemebrship name strings used for this option.

        " } }, "VpcSecurityGroupMembership": { "base": "

        This data type is used as a response element for queries on VPC security group membership.

        ", "refs": { "VpcSecurityGroupMembershipList$member": null } }, "VpcSecurityGroupMembershipList": { "base": null, "refs": { "DBInstance$VpcSecurityGroups": "

        Provides List of VPC security group elements that the DB Instance belongs to.

        ", "Option$VpcSecurityGroupMemberships": "

        If the Option requires access to a port, then this VPC Security Group allows access to the port.

        " } } } } aws-sdk-go-1.4.22/models/apis/rds/2013-01-10/examples-1.json000066400000000000000000000000541300374646400224610ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/rds/2013-01-10/paginators-1.json000066400000000000000000000053201300374646400230130ustar00rootroot00000000000000{ "pagination": { "DescribeDBEngineVersions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBEngineVersions" }, "DescribeDBInstances": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBInstances" }, "DescribeDBParameterGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBParameterGroups" }, "DescribeDBParameters": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "Parameters" }, "DescribeDBSecurityGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBSecurityGroups" }, "DescribeDBSnapshots": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBSnapshots" }, "DescribeDBSubnetGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBSubnetGroups" }, "DescribeEngineDefaultParameters": { "input_token": "Marker", "output_token": "EngineDefaults.Marker", "limit_key": "MaxRecords", "result_key": "EngineDefaults.Parameters" }, "DescribeEventSubscriptions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "EventSubscriptionsList" }, "DescribeEvents": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "Events" }, "DescribeOptionGroupOptions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "OptionGroupOptions" }, "DescribeOptionGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "OptionGroupsList" }, "DescribeOrderableDBInstanceOptions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "OrderableDBInstanceOptions" }, "DescribeReservedDBInstances": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "ReservedDBInstances" }, "DescribeReservedDBInstancesOfferings": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "ReservedDBInstancesOfferings" }, "ListTagsForResource": { "result_key": "TagList" } } } aws-sdk-go-1.4.22/models/apis/rds/2013-02-12/000077500000000000000000000000001300374646400176165ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/rds/2013-02-12/api-2.json000066400000000000000000002504261300374646400214320ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2013-02-12", "endpointPrefix":"rds", "protocol":"query", "serviceAbbreviation":"Amazon RDS", "serviceFullName":"Amazon Relational Database Service", "signatureVersion":"v4", "xmlNamespace":"http://rds.amazonaws.com/doc/2013-02-12/" }, "operations":{ "AddSourceIdentifierToSubscription":{ "name":"AddSourceIdentifierToSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddSourceIdentifierToSubscriptionMessage"}, "output":{ "shape":"AddSourceIdentifierToSubscriptionResult", "resultWrapper":"AddSourceIdentifierToSubscriptionResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"}, {"shape":"SourceNotFoundFault"} ] }, "AddTagsToResource":{ "name":"AddTagsToResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsToResourceMessage"}, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "AuthorizeDBSecurityGroupIngress":{ "name":"AuthorizeDBSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AuthorizeDBSecurityGroupIngressMessage"}, "output":{ "shape":"AuthorizeDBSecurityGroupIngressResult", "resultWrapper":"AuthorizeDBSecurityGroupIngressResult" }, "errors":[ {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"InvalidDBSecurityGroupStateFault"}, {"shape":"AuthorizationAlreadyExistsFault"}, {"shape":"AuthorizationQuotaExceededFault"} ] }, "CopyDBSnapshot":{ "name":"CopyDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopyDBSnapshotMessage"}, "output":{ "shape":"CopyDBSnapshotResult", "resultWrapper":"CopyDBSnapshotResult" }, "errors":[ {"shape":"DBSnapshotAlreadyExistsFault"}, {"shape":"DBSnapshotNotFoundFault"}, {"shape":"InvalidDBSnapshotStateFault"}, {"shape":"SnapshotQuotaExceededFault"} ] }, "CreateDBInstance":{ "name":"CreateDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBInstanceMessage"}, "output":{ "shape":"CreateDBInstanceResult", "resultWrapper":"CreateDBInstanceResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"} ] }, "CreateDBInstanceReadReplica":{ "name":"CreateDBInstanceReadReplica", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBInstanceReadReplicaMessage"}, "output":{ "shape":"CreateDBInstanceReadReplicaResult", "resultWrapper":"CreateDBInstanceReadReplicaResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"} ] }, "CreateDBParameterGroup":{ "name":"CreateDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBParameterGroupMessage"}, "output":{ "shape":"CreateDBParameterGroupResult", "resultWrapper":"CreateDBParameterGroupResult" }, "errors":[ {"shape":"DBParameterGroupQuotaExceededFault"}, {"shape":"DBParameterGroupAlreadyExistsFault"} ] }, "CreateDBSecurityGroup":{ "name":"CreateDBSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBSecurityGroupMessage"}, "output":{ "shape":"CreateDBSecurityGroupResult", "resultWrapper":"CreateDBSecurityGroupResult" }, "errors":[ {"shape":"DBSecurityGroupAlreadyExistsFault"}, {"shape":"DBSecurityGroupQuotaExceededFault"}, {"shape":"DBSecurityGroupNotSupportedFault"} ] }, "CreateDBSnapshot":{ "name":"CreateDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBSnapshotMessage"}, "output":{ "shape":"CreateDBSnapshotResult", "resultWrapper":"CreateDBSnapshotResult" }, "errors":[ {"shape":"DBSnapshotAlreadyExistsFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"SnapshotQuotaExceededFault"} ] }, "CreateDBSubnetGroup":{ "name":"CreateDBSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBSubnetGroupMessage"}, "output":{ "shape":"CreateDBSubnetGroupResult", "resultWrapper":"CreateDBSubnetGroupResult" }, "errors":[ {"shape":"DBSubnetGroupAlreadyExistsFault"}, {"shape":"DBSubnetGroupQuotaExceededFault"}, {"shape":"DBSubnetQuotaExceededFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"} ] }, "CreateEventSubscription":{ "name":"CreateEventSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateEventSubscriptionMessage"}, "output":{ "shape":"CreateEventSubscriptionResult", "resultWrapper":"CreateEventSubscriptionResult" }, "errors":[ {"shape":"EventSubscriptionQuotaExceededFault"}, {"shape":"SubscriptionAlreadyExistFault"}, {"shape":"SNSInvalidTopicFault"}, {"shape":"SNSNoAuthorizationFault"}, {"shape":"SNSTopicArnNotFoundFault"}, {"shape":"SubscriptionCategoryNotFoundFault"}, {"shape":"SourceNotFoundFault"} ] }, "CreateOptionGroup":{ "name":"CreateOptionGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateOptionGroupMessage"}, "output":{ "shape":"CreateOptionGroupResult", "resultWrapper":"CreateOptionGroupResult" }, "errors":[ {"shape":"OptionGroupAlreadyExistsFault"}, {"shape":"OptionGroupQuotaExceededFault"} ] }, "DeleteDBInstance":{ "name":"DeleteDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBInstanceMessage"}, "output":{ "shape":"DeleteDBInstanceResult", "resultWrapper":"DeleteDBInstanceResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBSnapshotAlreadyExistsFault"}, {"shape":"SnapshotQuotaExceededFault"} ] }, "DeleteDBParameterGroup":{ "name":"DeleteDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBParameterGroupMessage"}, "errors":[ {"shape":"InvalidDBParameterGroupStateFault"}, {"shape":"DBParameterGroupNotFoundFault"} ] }, "DeleteDBSecurityGroup":{ "name":"DeleteDBSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBSecurityGroupMessage"}, "errors":[ {"shape":"InvalidDBSecurityGroupStateFault"}, {"shape":"DBSecurityGroupNotFoundFault"} ] }, "DeleteDBSnapshot":{ "name":"DeleteDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBSnapshotMessage"}, "output":{ "shape":"DeleteDBSnapshotResult", "resultWrapper":"DeleteDBSnapshotResult" }, "errors":[ {"shape":"InvalidDBSnapshotStateFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "DeleteDBSubnetGroup":{ "name":"DeleteDBSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBSubnetGroupMessage"}, "errors":[ {"shape":"InvalidDBSubnetGroupStateFault"}, {"shape":"InvalidDBSubnetStateFault"}, {"shape":"DBSubnetGroupNotFoundFault"} ] }, "DeleteEventSubscription":{ "name":"DeleteEventSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteEventSubscriptionMessage"}, "output":{ "shape":"DeleteEventSubscriptionResult", "resultWrapper":"DeleteEventSubscriptionResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"}, {"shape":"InvalidEventSubscriptionStateFault"} ] }, "DeleteOptionGroup":{ "name":"DeleteOptionGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteOptionGroupMessage"}, "errors":[ {"shape":"OptionGroupNotFoundFault"}, {"shape":"InvalidOptionGroupStateFault"} ] }, "DescribeDBEngineVersions":{ "name":"DescribeDBEngineVersions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBEngineVersionsMessage"}, "output":{ "shape":"DBEngineVersionMessage", "resultWrapper":"DescribeDBEngineVersionsResult" } }, "DescribeDBInstances":{ "name":"DescribeDBInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBInstancesMessage"}, "output":{ "shape":"DBInstanceMessage", "resultWrapper":"DescribeDBInstancesResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"} ] }, "DescribeDBLogFiles":{ "name":"DescribeDBLogFiles", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBLogFilesMessage"}, "output":{ "shape":"DescribeDBLogFilesResponse", "resultWrapper":"DescribeDBLogFilesResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"} ] }, "DescribeDBParameterGroups":{ "name":"DescribeDBParameterGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBParameterGroupsMessage"}, "output":{ "shape":"DBParameterGroupsMessage", "resultWrapper":"DescribeDBParameterGroupsResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"} ] }, "DescribeDBParameters":{ "name":"DescribeDBParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBParametersMessage"}, "output":{ "shape":"DBParameterGroupDetails", "resultWrapper":"DescribeDBParametersResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"} ] }, "DescribeDBSecurityGroups":{ "name":"DescribeDBSecurityGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBSecurityGroupsMessage"}, "output":{ "shape":"DBSecurityGroupMessage", "resultWrapper":"DescribeDBSecurityGroupsResult" }, "errors":[ {"shape":"DBSecurityGroupNotFoundFault"} ] }, "DescribeDBSnapshots":{ "name":"DescribeDBSnapshots", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBSnapshotsMessage"}, "output":{ "shape":"DBSnapshotMessage", "resultWrapper":"DescribeDBSnapshotsResult" }, "errors":[ {"shape":"DBSnapshotNotFoundFault"} ] }, "DescribeDBSubnetGroups":{ "name":"DescribeDBSubnetGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBSubnetGroupsMessage"}, "output":{ "shape":"DBSubnetGroupMessage", "resultWrapper":"DescribeDBSubnetGroupsResult" }, "errors":[ {"shape":"DBSubnetGroupNotFoundFault"} ] }, "DescribeEngineDefaultParameters":{ "name":"DescribeEngineDefaultParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEngineDefaultParametersMessage"}, "output":{ "shape":"DescribeEngineDefaultParametersResult", "resultWrapper":"DescribeEngineDefaultParametersResult" } }, "DescribeEventCategories":{ "name":"DescribeEventCategories", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventCategoriesMessage"}, "output":{ "shape":"EventCategoriesMessage", "resultWrapper":"DescribeEventCategoriesResult" } }, "DescribeEventSubscriptions":{ "name":"DescribeEventSubscriptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventSubscriptionsMessage"}, "output":{ "shape":"EventSubscriptionsMessage", "resultWrapper":"DescribeEventSubscriptionsResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"} ] }, "DescribeEvents":{ "name":"DescribeEvents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventsMessage"}, "output":{ "shape":"EventsMessage", "resultWrapper":"DescribeEventsResult" } }, "DescribeOptionGroupOptions":{ "name":"DescribeOptionGroupOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeOptionGroupOptionsMessage"}, "output":{ "shape":"OptionGroupOptionsMessage", "resultWrapper":"DescribeOptionGroupOptionsResult" } }, "DescribeOptionGroups":{ "name":"DescribeOptionGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeOptionGroupsMessage"}, "output":{ "shape":"OptionGroups", "resultWrapper":"DescribeOptionGroupsResult" }, "errors":[ {"shape":"OptionGroupNotFoundFault"} ] }, "DescribeOrderableDBInstanceOptions":{ "name":"DescribeOrderableDBInstanceOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeOrderableDBInstanceOptionsMessage"}, "output":{ "shape":"OrderableDBInstanceOptionsMessage", "resultWrapper":"DescribeOrderableDBInstanceOptionsResult" } }, "DescribeReservedDBInstances":{ "name":"DescribeReservedDBInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedDBInstancesMessage"}, "output":{ "shape":"ReservedDBInstanceMessage", "resultWrapper":"DescribeReservedDBInstancesResult" }, "errors":[ {"shape":"ReservedDBInstanceNotFoundFault"} ] }, "DescribeReservedDBInstancesOfferings":{ "name":"DescribeReservedDBInstancesOfferings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedDBInstancesOfferingsMessage"}, "output":{ "shape":"ReservedDBInstancesOfferingMessage", "resultWrapper":"DescribeReservedDBInstancesOfferingsResult" }, "errors":[ {"shape":"ReservedDBInstancesOfferingNotFoundFault"} ] }, "DownloadDBLogFilePortion":{ "name":"DownloadDBLogFilePortion", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DownloadDBLogFilePortionMessage"}, "output":{ "shape":"DownloadDBLogFilePortionDetails", "resultWrapper":"DownloadDBLogFilePortionResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBLogFileNotFoundFault"} ] }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTagsForResourceMessage"}, "output":{ "shape":"TagListMessage", "resultWrapper":"ListTagsForResourceResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "ModifyDBInstance":{ "name":"ModifyDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBInstanceMessage"}, "output":{ "shape":"ModifyDBInstanceResult", "resultWrapper":"ModifyDBInstanceResult" }, "errors":[ {"shape":"InvalidDBInstanceStateFault"}, {"shape":"InvalidDBSecurityGroupStateFault"}, {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"}, {"shape":"DBUpgradeDependencyFailureFault"} ] }, "ModifyDBParameterGroup":{ "name":"ModifyDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBParameterGroupMessage"}, "output":{ "shape":"DBParameterGroupNameMessage", "resultWrapper":"ModifyDBParameterGroupResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"InvalidDBParameterGroupStateFault"} ] }, "ModifyDBSubnetGroup":{ "name":"ModifyDBSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBSubnetGroupMessage"}, "output":{ "shape":"ModifyDBSubnetGroupResult", "resultWrapper":"ModifyDBSubnetGroupResult" }, "errors":[ {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetQuotaExceededFault"}, {"shape":"SubnetAlreadyInUse"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"} ] }, "ModifyEventSubscription":{ "name":"ModifyEventSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyEventSubscriptionMessage"}, "output":{ "shape":"ModifyEventSubscriptionResult", "resultWrapper":"ModifyEventSubscriptionResult" }, "errors":[ {"shape":"EventSubscriptionQuotaExceededFault"}, {"shape":"SubscriptionNotFoundFault"}, {"shape":"SNSInvalidTopicFault"}, {"shape":"SNSNoAuthorizationFault"}, {"shape":"SNSTopicArnNotFoundFault"}, {"shape":"SubscriptionCategoryNotFoundFault"} ] }, "ModifyOptionGroup":{ "name":"ModifyOptionGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyOptionGroupMessage"}, "output":{ "shape":"ModifyOptionGroupResult", "resultWrapper":"ModifyOptionGroupResult" }, "errors":[ {"shape":"InvalidOptionGroupStateFault"}, {"shape":"OptionGroupNotFoundFault"} ] }, "PromoteReadReplica":{ "name":"PromoteReadReplica", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PromoteReadReplicaMessage"}, "output":{ "shape":"PromoteReadReplicaResult", "resultWrapper":"PromoteReadReplicaResult" }, "errors":[ {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBInstanceNotFoundFault"} ] }, "PurchaseReservedDBInstancesOffering":{ "name":"PurchaseReservedDBInstancesOffering", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PurchaseReservedDBInstancesOfferingMessage"}, "output":{ "shape":"PurchaseReservedDBInstancesOfferingResult", "resultWrapper":"PurchaseReservedDBInstancesOfferingResult" }, "errors":[ {"shape":"ReservedDBInstancesOfferingNotFoundFault"}, {"shape":"ReservedDBInstanceAlreadyExistsFault"}, {"shape":"ReservedDBInstanceQuotaExceededFault"} ] }, "RebootDBInstance":{ "name":"RebootDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RebootDBInstanceMessage"}, "output":{ "shape":"RebootDBInstanceResult", "resultWrapper":"RebootDBInstanceResult" }, "errors":[ {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBInstanceNotFoundFault"} ] }, "RemoveSourceIdentifierFromSubscription":{ "name":"RemoveSourceIdentifierFromSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveSourceIdentifierFromSubscriptionMessage"}, "output":{ "shape":"RemoveSourceIdentifierFromSubscriptionResult", "resultWrapper":"RemoveSourceIdentifierFromSubscriptionResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"}, {"shape":"SourceNotFoundFault"} ] }, "RemoveTagsFromResource":{ "name":"RemoveTagsFromResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsFromResourceMessage"}, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "ResetDBParameterGroup":{ "name":"ResetDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetDBParameterGroupMessage"}, "output":{ "shape":"DBParameterGroupNameMessage", "resultWrapper":"ResetDBParameterGroupResult" }, "errors":[ {"shape":"InvalidDBParameterGroupStateFault"}, {"shape":"DBParameterGroupNotFoundFault"} ] }, "RestoreDBInstanceFromDBSnapshot":{ "name":"RestoreDBInstanceFromDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreDBInstanceFromDBSnapshotMessage"}, "output":{ "shape":"RestoreDBInstanceFromDBSnapshotResult", "resultWrapper":"RestoreDBInstanceFromDBSnapshotResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"DBSnapshotNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"InvalidDBSnapshotStateFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidRestoreFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"} ] }, "RestoreDBInstanceToPointInTime":{ "name":"RestoreDBInstanceToPointInTime", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreDBInstanceToPointInTimeMessage"}, "output":{ "shape":"RestoreDBInstanceToPointInTimeResult", "resultWrapper":"RestoreDBInstanceToPointInTimeResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"PointInTimeRestoreNotEnabledFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidRestoreFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"} ] }, "RevokeDBSecurityGroupIngress":{ "name":"RevokeDBSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RevokeDBSecurityGroupIngressMessage"}, "output":{ "shape":"RevokeDBSecurityGroupIngressResult", "resultWrapper":"RevokeDBSecurityGroupIngressResult" }, "errors":[ {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"AuthorizationNotFoundFault"}, {"shape":"InvalidDBSecurityGroupStateFault"} ] } }, "shapes":{ "AddSourceIdentifierToSubscriptionMessage":{ "type":"structure", "required":[ "SubscriptionName", "SourceIdentifier" ], "members":{ "SubscriptionName":{"shape":"String"}, "SourceIdentifier":{"shape":"String"} } }, "AddSourceIdentifierToSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "AddTagsToResourceMessage":{ "type":"structure", "required":[ "ResourceName", "Tags" ], "members":{ "ResourceName":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "ApplyMethod":{ "type":"string", "enum":[ "immediate", "pending-reboot" ] }, "AuthorizationAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "AuthorizationNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "AuthorizationQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "AuthorizeDBSecurityGroupIngressMessage":{ "type":"structure", "required":["DBSecurityGroupName"], "members":{ "DBSecurityGroupName":{"shape":"String"}, "CIDRIP":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupId":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "AuthorizeDBSecurityGroupIngressResult":{ "type":"structure", "members":{ "DBSecurityGroup":{"shape":"DBSecurityGroup"} } }, "AvailabilityZone":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "ProvisionedIopsCapable":{"shape":"Boolean"} }, "wrapper":true }, "AvailabilityZoneList":{ "type":"list", "member":{ "shape":"AvailabilityZone", "locationName":"AvailabilityZone" } }, "Boolean":{"type":"boolean"}, "BooleanOptional":{"type":"boolean"}, "CharacterSet":{ "type":"structure", "members":{ "CharacterSetName":{"shape":"String"}, "CharacterSetDescription":{"shape":"String"} } }, "CopyDBSnapshotMessage":{ "type":"structure", "required":[ "SourceDBSnapshotIdentifier", "TargetDBSnapshotIdentifier" ], "members":{ "SourceDBSnapshotIdentifier":{"shape":"String"}, "TargetDBSnapshotIdentifier":{"shape":"String"} } }, "CopyDBSnapshotResult":{ "type":"structure", "members":{ "DBSnapshot":{"shape":"DBSnapshot"} } }, "CreateDBInstanceMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "AllocatedStorage", "DBInstanceClass", "Engine", "MasterUsername", "MasterUserPassword" ], "members":{ "DBName":{"shape":"String"}, "DBInstanceIdentifier":{"shape":"String"}, "AllocatedStorage":{"shape":"IntegerOptional"}, "DBInstanceClass":{"shape":"String"}, "Engine":{"shape":"String"}, "MasterUsername":{"shape":"String"}, "MasterUserPassword":{"shape":"String"}, "DBSecurityGroups":{"shape":"DBSecurityGroupNameList"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroupName":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"}, "DBParameterGroupName":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "PreferredBackupWindow":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "MultiAZ":{"shape":"BooleanOptional"}, "EngineVersion":{"shape":"String"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "LicenseModel":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "CharacterSetName":{"shape":"String"}, "PubliclyAccessible":{"shape":"BooleanOptional"} } }, "CreateDBInstanceReadReplicaMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "SourceDBInstanceIdentifier" ], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "SourceDBInstanceIdentifier":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "AvailabilityZone":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "PubliclyAccessible":{"shape":"BooleanOptional"} } }, "CreateDBInstanceReadReplicaResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "CreateDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "CreateDBParameterGroupMessage":{ "type":"structure", "required":[ "DBParameterGroupName", "DBParameterGroupFamily", "Description" ], "members":{ "DBParameterGroupName":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "Description":{"shape":"String"} } }, "CreateDBParameterGroupResult":{ "type":"structure", "members":{ "DBParameterGroup":{"shape":"DBParameterGroup"} } }, "CreateDBSecurityGroupMessage":{ "type":"structure", "required":[ "DBSecurityGroupName", "DBSecurityGroupDescription" ], "members":{ "DBSecurityGroupName":{"shape":"String"}, "DBSecurityGroupDescription":{"shape":"String"} } }, "CreateDBSecurityGroupResult":{ "type":"structure", "members":{ "DBSecurityGroup":{"shape":"DBSecurityGroup"} } }, "CreateDBSnapshotMessage":{ "type":"structure", "required":[ "DBSnapshotIdentifier", "DBInstanceIdentifier" ], "members":{ "DBSnapshotIdentifier":{"shape":"String"}, "DBInstanceIdentifier":{"shape":"String"} } }, "CreateDBSnapshotResult":{ "type":"structure", "members":{ "DBSnapshot":{"shape":"DBSnapshot"} } }, "CreateDBSubnetGroupMessage":{ "type":"structure", "required":[ "DBSubnetGroupName", "DBSubnetGroupDescription", "SubnetIds" ], "members":{ "DBSubnetGroupName":{"shape":"String"}, "DBSubnetGroupDescription":{"shape":"String"}, "SubnetIds":{"shape":"SubnetIdentifierList"} } }, "CreateDBSubnetGroupResult":{ "type":"structure", "members":{ "DBSubnetGroup":{"shape":"DBSubnetGroup"} } }, "CreateEventSubscriptionMessage":{ "type":"structure", "required":[ "SubscriptionName", "SnsTopicArn" ], "members":{ "SubscriptionName":{"shape":"String"}, "SnsTopicArn":{"shape":"String"}, "SourceType":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"}, "SourceIds":{"shape":"SourceIdsList"}, "Enabled":{"shape":"BooleanOptional"} } }, "CreateEventSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "CreateOptionGroupMessage":{ "type":"structure", "required":[ "OptionGroupName", "EngineName", "MajorEngineVersion", "OptionGroupDescription" ], "members":{ "OptionGroupName":{"shape":"String"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "OptionGroupDescription":{"shape":"String"} } }, "CreateOptionGroupResult":{ "type":"structure", "members":{ "OptionGroup":{"shape":"OptionGroup"} } }, "DBEngineVersion":{ "type":"structure", "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "DBEngineDescription":{"shape":"String"}, "DBEngineVersionDescription":{"shape":"String"}, "DefaultCharacterSet":{"shape":"CharacterSet"}, "SupportedCharacterSets":{"shape":"SupportedCharacterSetsList"} } }, "DBEngineVersionList":{ "type":"list", "member":{ "shape":"DBEngineVersion", "locationName":"DBEngineVersion" } }, "DBEngineVersionMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBEngineVersions":{"shape":"DBEngineVersionList"} } }, "DBInstance":{ "type":"structure", "members":{ "DBInstanceIdentifier":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Engine":{"shape":"String"}, "DBInstanceStatus":{"shape":"String"}, "MasterUsername":{"shape":"String"}, "DBName":{"shape":"String"}, "Endpoint":{"shape":"Endpoint"}, "AllocatedStorage":{"shape":"Integer"}, "InstanceCreateTime":{"shape":"TStamp"}, "PreferredBackupWindow":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"Integer"}, "DBSecurityGroups":{"shape":"DBSecurityGroupMembershipList"}, "VpcSecurityGroups":{"shape":"VpcSecurityGroupMembershipList"}, "DBParameterGroups":{"shape":"DBParameterGroupStatusList"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroup":{"shape":"DBSubnetGroup"}, "PreferredMaintenanceWindow":{"shape":"String"}, "PendingModifiedValues":{"shape":"PendingModifiedValues"}, "LatestRestorableTime":{"shape":"TStamp"}, "MultiAZ":{"shape":"Boolean"}, "EngineVersion":{"shape":"String"}, "AutoMinorVersionUpgrade":{"shape":"Boolean"}, "ReadReplicaSourceDBInstanceIdentifier":{"shape":"String"}, "ReadReplicaDBInstanceIdentifiers":{"shape":"ReadReplicaDBInstanceIdentifierList"}, "LicenseModel":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupMemberships":{"shape":"OptionGroupMembershipList"}, "CharacterSetName":{"shape":"String"}, "SecondaryAvailabilityZone":{"shape":"String"}, "PubliclyAccessible":{"shape":"Boolean"} }, "wrapper":true }, "DBInstanceAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBInstanceAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBInstanceList":{ "type":"list", "member":{ "shape":"DBInstance", "locationName":"DBInstance" } }, "DBInstanceMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBInstances":{"shape":"DBInstanceList"} } }, "DBInstanceNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBInstanceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBLogFileNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBLogFileNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBParameterGroup":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "Description":{"shape":"String"} }, "wrapper":true }, "DBParameterGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBParameterGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBParameterGroupDetails":{ "type":"structure", "members":{ "Parameters":{"shape":"ParametersList"}, "Marker":{"shape":"String"} } }, "DBParameterGroupList":{ "type":"list", "member":{ "shape":"DBParameterGroup", "locationName":"DBParameterGroup" } }, "DBParameterGroupNameMessage":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"} } }, "DBParameterGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBParameterGroupNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBParameterGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBParameterGroupQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBParameterGroupStatus":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"}, "ParameterApplyStatus":{"shape":"String"} } }, "DBParameterGroupStatusList":{ "type":"list", "member":{ "shape":"DBParameterGroupStatus", "locationName":"DBParameterGroup" } }, "DBParameterGroupsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBParameterGroups":{"shape":"DBParameterGroupList"} } }, "DBSecurityGroup":{ "type":"structure", "members":{ "OwnerId":{"shape":"String"}, "DBSecurityGroupName":{"shape":"String"}, "DBSecurityGroupDescription":{"shape":"String"}, "VpcId":{"shape":"String"}, "EC2SecurityGroups":{"shape":"EC2SecurityGroupList"}, "IPRanges":{"shape":"IPRangeList"} }, "wrapper":true }, "DBSecurityGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSecurityGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSecurityGroupMembership":{ "type":"structure", "members":{ "DBSecurityGroupName":{"shape":"String"}, "Status":{"shape":"String"} } }, "DBSecurityGroupMembershipList":{ "type":"list", "member":{ "shape":"DBSecurityGroupMembership", "locationName":"DBSecurityGroup" } }, "DBSecurityGroupMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBSecurityGroups":{"shape":"DBSecurityGroups"} } }, "DBSecurityGroupNameList":{ "type":"list", "member":{ "shape":"String", "locationName":"DBSecurityGroupName" } }, "DBSecurityGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSecurityGroupNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBSecurityGroupNotSupportedFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSecurityGroupNotSupported", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSecurityGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"QuotaExceeded.DBSecurityGroup", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSecurityGroups":{ "type":"list", "member":{ "shape":"DBSecurityGroup", "locationName":"DBSecurityGroup" } }, "DBSnapshot":{ "type":"structure", "members":{ "DBSnapshotIdentifier":{"shape":"String"}, "DBInstanceIdentifier":{"shape":"String"}, "SnapshotCreateTime":{"shape":"TStamp"}, "Engine":{"shape":"String"}, "AllocatedStorage":{"shape":"Integer"}, "Status":{"shape":"String"}, "Port":{"shape":"Integer"}, "AvailabilityZone":{"shape":"String"}, "VpcId":{"shape":"String"}, "InstanceCreateTime":{"shape":"TStamp"}, "MasterUsername":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "LicenseModel":{"shape":"String"}, "SnapshotType":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"} }, "wrapper":true }, "DBSnapshotAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSnapshotAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSnapshotList":{ "type":"list", "member":{ "shape":"DBSnapshot", "locationName":"DBSnapshot" } }, "DBSnapshotMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBSnapshots":{"shape":"DBSnapshotList"} } }, "DBSnapshotNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSnapshotNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBSubnetGroup":{ "type":"structure", "members":{ "DBSubnetGroupName":{"shape":"String"}, "DBSubnetGroupDescription":{"shape":"String"}, "VpcId":{"shape":"String"}, "SubnetGroupStatus":{"shape":"String"}, "Subnets":{"shape":"SubnetList"} }, "wrapper":true }, "DBSubnetGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSubnetGroupDoesNotCoverEnoughAZs":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupDoesNotCoverEnoughAZs", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSubnetGroupMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBSubnetGroups":{"shape":"DBSubnetGroups"} } }, "DBSubnetGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBSubnetGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSubnetGroups":{ "type":"list", "member":{ "shape":"DBSubnetGroup", "locationName":"DBSubnetGroup" } }, "DBSubnetQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetQuotaExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBUpgradeDependencyFailureFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBUpgradeDependencyFailure", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DeleteDBInstanceMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "SkipFinalSnapshot":{"shape":"Boolean"}, "FinalDBSnapshotIdentifier":{"shape":"String"} } }, "DeleteDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "DeleteDBParameterGroupMessage":{ "type":"structure", "required":["DBParameterGroupName"], "members":{ "DBParameterGroupName":{"shape":"String"} } }, "DeleteDBSecurityGroupMessage":{ "type":"structure", "required":["DBSecurityGroupName"], "members":{ "DBSecurityGroupName":{"shape":"String"} } }, "DeleteDBSnapshotMessage":{ "type":"structure", "required":["DBSnapshotIdentifier"], "members":{ "DBSnapshotIdentifier":{"shape":"String"} } }, "DeleteDBSnapshotResult":{ "type":"structure", "members":{ "DBSnapshot":{"shape":"DBSnapshot"} } }, "DeleteDBSubnetGroupMessage":{ "type":"structure", "required":["DBSubnetGroupName"], "members":{ "DBSubnetGroupName":{"shape":"String"} } }, "DeleteEventSubscriptionMessage":{ "type":"structure", "required":["SubscriptionName"], "members":{ "SubscriptionName":{"shape":"String"} } }, "DeleteEventSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "DeleteOptionGroupMessage":{ "type":"structure", "required":["OptionGroupName"], "members":{ "OptionGroupName":{"shape":"String"} } }, "DescribeDBEngineVersionsMessage":{ "type":"structure", "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "DefaultOnly":{"shape":"Boolean"}, "ListSupportedCharacterSets":{"shape":"BooleanOptional"} } }, "DescribeDBInstancesMessage":{ "type":"structure", "members":{ "DBInstanceIdentifier":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBLogFilesDetails":{ "type":"structure", "members":{ "LogFileName":{"shape":"String"}, "LastWritten":{"shape":"Long"}, "Size":{"shape":"Long"} } }, "DescribeDBLogFilesList":{ "type":"list", "member":{ "shape":"DescribeDBLogFilesDetails", "locationName":"DescribeDBLogFilesDetails" } }, "DescribeDBLogFilesMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "FilenameContains":{"shape":"String"}, "FileLastWritten":{"shape":"Long"}, "FileSize":{"shape":"Long"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBLogFilesResponse":{ "type":"structure", "members":{ "DescribeDBLogFiles":{"shape":"DescribeDBLogFilesList"}, "Marker":{"shape":"String"} } }, "DescribeDBParameterGroupsMessage":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBParametersMessage":{ "type":"structure", "required":["DBParameterGroupName"], "members":{ "DBParameterGroupName":{"shape":"String"}, "Source":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBSecurityGroupsMessage":{ "type":"structure", "members":{ "DBSecurityGroupName":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBSnapshotsMessage":{ "type":"structure", "members":{ "DBInstanceIdentifier":{"shape":"String"}, "DBSnapshotIdentifier":{"shape":"String"}, "SnapshotType":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBSubnetGroupsMessage":{ "type":"structure", "members":{ "DBSubnetGroupName":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEngineDefaultParametersMessage":{ "type":"structure", "required":["DBParameterGroupFamily"], "members":{ "DBParameterGroupFamily":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEngineDefaultParametersResult":{ "type":"structure", "members":{ "EngineDefaults":{"shape":"EngineDefaults"} } }, "DescribeEventCategoriesMessage":{ "type":"structure", "members":{ "SourceType":{"shape":"String"} } }, "DescribeEventSubscriptionsMessage":{ "type":"structure", "members":{ "SubscriptionName":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEventsMessage":{ "type":"structure", "members":{ "SourceIdentifier":{"shape":"String"}, "SourceType":{"shape":"SourceType"}, "StartTime":{"shape":"TStamp"}, "EndTime":{"shape":"TStamp"}, "Duration":{"shape":"IntegerOptional"}, "EventCategories":{"shape":"EventCategoriesList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeOptionGroupOptionsMessage":{ "type":"structure", "required":["EngineName"], "members":{ "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeOptionGroupsMessage":{ "type":"structure", "members":{ "OptionGroupName":{"shape":"String"}, "Marker":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"} } }, "DescribeOrderableDBInstanceOptionsMessage":{ "type":"structure", "required":["Engine"], "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "LicenseModel":{"shape":"String"}, "Vpc":{"shape":"BooleanOptional"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeReservedDBInstancesMessage":{ "type":"structure", "members":{ "ReservedDBInstanceId":{"shape":"String"}, "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Duration":{"shape":"String"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeReservedDBInstancesOfferingsMessage":{ "type":"structure", "members":{ "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Duration":{"shape":"String"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "Double":{"type":"double"}, "DownloadDBLogFilePortionDetails":{ "type":"structure", "members":{ "LogFileData":{"shape":"String"}, "Marker":{"shape":"String"}, "AdditionalDataPending":{"shape":"Boolean"} } }, "DownloadDBLogFilePortionMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "LogFileName" ], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "LogFileName":{"shape":"String"}, "Marker":{"shape":"String"}, "NumberOfLines":{"shape":"Integer"} } }, "EC2SecurityGroup":{ "type":"structure", "members":{ "Status":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupId":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "EC2SecurityGroupList":{ "type":"list", "member":{ "shape":"EC2SecurityGroup", "locationName":"EC2SecurityGroup" } }, "Endpoint":{ "type":"structure", "members":{ "Address":{"shape":"String"}, "Port":{"shape":"Integer"} } }, "EngineDefaults":{ "type":"structure", "members":{ "DBParameterGroupFamily":{"shape":"String"}, "Marker":{"shape":"String"}, "Parameters":{"shape":"ParametersList"} }, "wrapper":true }, "Event":{ "type":"structure", "members":{ "SourceIdentifier":{"shape":"String"}, "SourceType":{"shape":"SourceType"}, "Message":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"}, "Date":{"shape":"TStamp"} } }, "EventCategoriesList":{ "type":"list", "member":{ "shape":"String", "locationName":"EventCategory" } }, "EventCategoriesMap":{ "type":"structure", "members":{ "SourceType":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"} }, "wrapper":true }, "EventCategoriesMapList":{ "type":"list", "member":{ "shape":"EventCategoriesMap", "locationName":"EventCategoriesMap" } }, "EventCategoriesMessage":{ "type":"structure", "members":{ "EventCategoriesMapList":{"shape":"EventCategoriesMapList"} } }, "EventList":{ "type":"list", "member":{ "shape":"Event", "locationName":"Event" } }, "EventSubscription":{ "type":"structure", "members":{ "CustomerAwsId":{"shape":"String"}, "CustSubscriptionId":{"shape":"String"}, "SnsTopicArn":{"shape":"String"}, "Status":{"shape":"String"}, "SubscriptionCreationTime":{"shape":"String"}, "SourceType":{"shape":"String"}, "SourceIdsList":{"shape":"SourceIdsList"}, "EventCategoriesList":{"shape":"EventCategoriesList"}, "Enabled":{"shape":"Boolean"} }, "wrapper":true }, "EventSubscriptionQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"EventSubscriptionQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "EventSubscriptionsList":{ "type":"list", "member":{ "shape":"EventSubscription", "locationName":"EventSubscription" } }, "EventSubscriptionsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "EventSubscriptionsList":{"shape":"EventSubscriptionsList"} } }, "EventsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "Events":{"shape":"EventList"} } }, "IPRange":{ "type":"structure", "members":{ "Status":{"shape":"String"}, "CIDRIP":{"shape":"String"} } }, "IPRangeList":{ "type":"list", "member":{ "shape":"IPRange", "locationName":"IPRange" } }, "InstanceQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"InstanceQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InsufficientDBInstanceCapacityFault":{ "type":"structure", "members":{ }, "error":{ "code":"InsufficientDBInstanceCapacity", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Integer":{"type":"integer"}, "IntegerOptional":{"type":"integer"}, "InvalidDBInstanceStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBInstanceState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBParameterGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBParameterGroupState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSecurityGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSecurityGroupState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSnapshotStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSnapshotState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSubnetGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSubnetGroupStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSubnetStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSubnetStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidEventSubscriptionStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidEventSubscriptionState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidOptionGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidOptionGroupStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidRestoreFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidRestoreFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidSubnet":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidSubnet", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidVPCNetworkStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidVPCNetworkStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "KeyList":{ "type":"list", "member":{"shape":"String"} }, "ListTagsForResourceMessage":{ "type":"structure", "required":["ResourceName"], "members":{ "ResourceName":{"shape":"String"} } }, "Long":{"type":"long"}, "ModifyDBInstanceMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "AllocatedStorage":{"shape":"IntegerOptional"}, "DBInstanceClass":{"shape":"String"}, "DBSecurityGroups":{"shape":"DBSecurityGroupNameList"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "ApplyImmediately":{"shape":"Boolean"}, "MasterUserPassword":{"shape":"String"}, "DBParameterGroupName":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "PreferredBackupWindow":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "EngineVersion":{"shape":"String"}, "AllowMajorVersionUpgrade":{"shape":"Boolean"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "NewDBInstanceIdentifier":{"shape":"String"} } }, "ModifyDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "ModifyDBParameterGroupMessage":{ "type":"structure", "required":[ "DBParameterGroupName", "Parameters" ], "members":{ "DBParameterGroupName":{"shape":"String"}, "Parameters":{"shape":"ParametersList"} } }, "ModifyDBSubnetGroupMessage":{ "type":"structure", "required":[ "DBSubnetGroupName", "SubnetIds" ], "members":{ "DBSubnetGroupName":{"shape":"String"}, "DBSubnetGroupDescription":{"shape":"String"}, "SubnetIds":{"shape":"SubnetIdentifierList"} } }, "ModifyDBSubnetGroupResult":{ "type":"structure", "members":{ "DBSubnetGroup":{"shape":"DBSubnetGroup"} } }, "ModifyEventSubscriptionMessage":{ "type":"structure", "required":["SubscriptionName"], "members":{ "SubscriptionName":{"shape":"String"}, "SnsTopicArn":{"shape":"String"}, "SourceType":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"}, "Enabled":{"shape":"BooleanOptional"} } }, "ModifyEventSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "ModifyOptionGroupMessage":{ "type":"structure", "required":["OptionGroupName"], "members":{ "OptionGroupName":{"shape":"String"}, "OptionsToInclude":{"shape":"OptionConfigurationList"}, "OptionsToRemove":{"shape":"OptionNamesList"}, "ApplyImmediately":{"shape":"Boolean"} } }, "ModifyOptionGroupResult":{ "type":"structure", "members":{ "OptionGroup":{"shape":"OptionGroup"} } }, "Option":{ "type":"structure", "members":{ "OptionName":{"shape":"String"}, "OptionDescription":{"shape":"String"}, "Persistent":{"shape":"Boolean"}, "Port":{"shape":"IntegerOptional"}, "OptionSettings":{"shape":"OptionSettingConfigurationList"}, "DBSecurityGroupMemberships":{"shape":"DBSecurityGroupMembershipList"}, "VpcSecurityGroupMemberships":{"shape":"VpcSecurityGroupMembershipList"} } }, "OptionConfiguration":{ "type":"structure", "required":["OptionName"], "members":{ "OptionName":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "DBSecurityGroupMemberships":{"shape":"DBSecurityGroupNameList"}, "VpcSecurityGroupMemberships":{"shape":"VpcSecurityGroupIdList"}, "OptionSettings":{"shape":"OptionSettingsList"} } }, "OptionConfigurationList":{ "type":"list", "member":{ "shape":"OptionConfiguration", "locationName":"OptionConfiguration" } }, "OptionGroup":{ "type":"structure", "members":{ "OptionGroupName":{"shape":"String"}, "OptionGroupDescription":{"shape":"String"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "Options":{"shape":"OptionsList"}, "AllowsVpcAndNonVpcInstanceMemberships":{"shape":"Boolean"}, "VpcId":{"shape":"String"} }, "wrapper":true }, "OptionGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"OptionGroupAlreadyExistsFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "OptionGroupMembership":{ "type":"structure", "members":{ "OptionGroupName":{"shape":"String"}, "Status":{"shape":"String"} } }, "OptionGroupMembershipList":{ "type":"list", "member":{ "shape":"OptionGroupMembership", "locationName":"OptionGroupMembership" } }, "OptionGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"OptionGroupNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "OptionGroupOption":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "Description":{"shape":"String"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "MinimumRequiredMinorEngineVersion":{"shape":"String"}, "PortRequired":{"shape":"Boolean"}, "DefaultPort":{"shape":"IntegerOptional"}, "OptionsDependedOn":{"shape":"OptionsDependedOn"}, "Persistent":{"shape":"Boolean"}, "OptionGroupOptionSettings":{"shape":"OptionGroupOptionSettingsList"} } }, "OptionGroupOptionSetting":{ "type":"structure", "members":{ "SettingName":{"shape":"String"}, "SettingDescription":{"shape":"String"}, "DefaultValue":{"shape":"String"}, "ApplyType":{"shape":"String"}, "AllowedValues":{"shape":"String"}, "IsModifiable":{"shape":"Boolean"} } }, "OptionGroupOptionSettingsList":{ "type":"list", "member":{ "shape":"OptionGroupOptionSetting", "locationName":"OptionGroupOptionSetting" } }, "OptionGroupOptionsList":{ "type":"list", "member":{ "shape":"OptionGroupOption", "locationName":"OptionGroupOption" } }, "OptionGroupOptionsMessage":{ "type":"structure", "members":{ "OptionGroupOptions":{"shape":"OptionGroupOptionsList"}, "Marker":{"shape":"String"} } }, "OptionGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"OptionGroupQuotaExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "OptionGroups":{ "type":"structure", "members":{ "OptionGroupsList":{"shape":"OptionGroupsList"}, "Marker":{"shape":"String"} } }, "OptionGroupsList":{ "type":"list", "member":{ "shape":"OptionGroup", "locationName":"OptionGroup" } }, "OptionNamesList":{ "type":"list", "member":{"shape":"String"} }, "OptionSetting":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "Value":{"shape":"String"}, "DefaultValue":{"shape":"String"}, "Description":{"shape":"String"}, "ApplyType":{"shape":"String"}, "DataType":{"shape":"String"}, "AllowedValues":{"shape":"String"}, "IsModifiable":{"shape":"Boolean"}, "IsCollection":{"shape":"Boolean"} } }, "OptionSettingConfigurationList":{ "type":"list", "member":{ "shape":"OptionSetting", "locationName":"OptionSetting" } }, "OptionSettingsList":{ "type":"list", "member":{ "shape":"OptionSetting", "locationName":"OptionSetting" } }, "OptionsDependedOn":{ "type":"list", "member":{ "shape":"String", "locationName":"OptionName" } }, "OptionsList":{ "type":"list", "member":{ "shape":"Option", "locationName":"Option" } }, "OrderableDBInstanceOption":{ "type":"structure", "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "LicenseModel":{"shape":"String"}, "AvailabilityZones":{"shape":"AvailabilityZoneList"}, "MultiAZCapable":{"shape":"Boolean"}, "ReadReplicaCapable":{"shape":"Boolean"}, "Vpc":{"shape":"Boolean"} }, "wrapper":true }, "OrderableDBInstanceOptionsList":{ "type":"list", "member":{ "shape":"OrderableDBInstanceOption", "locationName":"OrderableDBInstanceOption" } }, "OrderableDBInstanceOptionsMessage":{ "type":"structure", "members":{ "OrderableDBInstanceOptions":{"shape":"OrderableDBInstanceOptionsList"}, "Marker":{"shape":"String"} } }, "Parameter":{ "type":"structure", "members":{ "ParameterName":{"shape":"String"}, "ParameterValue":{"shape":"String"}, "Description":{"shape":"String"}, "Source":{"shape":"String"}, "ApplyType":{"shape":"String"}, "DataType":{"shape":"String"}, "AllowedValues":{"shape":"String"}, "IsModifiable":{"shape":"Boolean"}, "MinimumEngineVersion":{"shape":"String"}, "ApplyMethod":{"shape":"ApplyMethod"} } }, "ParametersList":{ "type":"list", "member":{ "shape":"Parameter", "locationName":"Parameter" } }, "PendingModifiedValues":{ "type":"structure", "members":{ "DBInstanceClass":{"shape":"String"}, "AllocatedStorage":{"shape":"IntegerOptional"}, "MasterUserPassword":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "MultiAZ":{"shape":"BooleanOptional"}, "EngineVersion":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "DBInstanceIdentifier":{"shape":"String"} } }, "PointInTimeRestoreNotEnabledFault":{ "type":"structure", "members":{ }, "error":{ "code":"PointInTimeRestoreNotEnabled", "httpStatusCode":400, "senderFault":true }, "exception":true }, "PromoteReadReplicaMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "PreferredBackupWindow":{"shape":"String"} } }, "PromoteReadReplicaResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "ProvisionedIopsNotAvailableInAZFault":{ "type":"structure", "members":{ }, "error":{ "code":"ProvisionedIopsNotAvailableInAZFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "PurchaseReservedDBInstancesOfferingMessage":{ "type":"structure", "required":["ReservedDBInstancesOfferingId"], "members":{ "ReservedDBInstancesOfferingId":{"shape":"String"}, "ReservedDBInstanceId":{"shape":"String"}, "DBInstanceCount":{"shape":"IntegerOptional"} } }, "PurchaseReservedDBInstancesOfferingResult":{ "type":"structure", "members":{ "ReservedDBInstance":{"shape":"ReservedDBInstance"} } }, "ReadReplicaDBInstanceIdentifierList":{ "type":"list", "member":{ "shape":"String", "locationName":"ReadReplicaDBInstanceIdentifier" } }, "RebootDBInstanceMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "ForceFailover":{"shape":"BooleanOptional"} } }, "RebootDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "RecurringCharge":{ "type":"structure", "members":{ "RecurringChargeAmount":{"shape":"Double"}, "RecurringChargeFrequency":{"shape":"String"} }, "wrapper":true }, "RecurringChargeList":{ "type":"list", "member":{ "shape":"RecurringCharge", "locationName":"RecurringCharge" } }, "RemoveSourceIdentifierFromSubscriptionMessage":{ "type":"structure", "required":[ "SubscriptionName", "SourceIdentifier" ], "members":{ "SubscriptionName":{"shape":"String"}, "SourceIdentifier":{"shape":"String"} } }, "RemoveSourceIdentifierFromSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "RemoveTagsFromResourceMessage":{ "type":"structure", "required":[ "ResourceName", "TagKeys" ], "members":{ "ResourceName":{"shape":"String"}, "TagKeys":{"shape":"KeyList"} } }, "ReservedDBInstance":{ "type":"structure", "members":{ "ReservedDBInstanceId":{"shape":"String"}, "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "StartTime":{"shape":"TStamp"}, "Duration":{"shape":"Integer"}, "FixedPrice":{"shape":"Double"}, "UsagePrice":{"shape":"Double"}, "CurrencyCode":{"shape":"String"}, "DBInstanceCount":{"shape":"Integer"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"Boolean"}, "State":{"shape":"String"}, "RecurringCharges":{"shape":"RecurringChargeList"} }, "wrapper":true }, "ReservedDBInstanceAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstanceAlreadyExists", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ReservedDBInstanceList":{ "type":"list", "member":{ "shape":"ReservedDBInstance", "locationName":"ReservedDBInstance" } }, "ReservedDBInstanceMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ReservedDBInstances":{"shape":"ReservedDBInstanceList"} } }, "ReservedDBInstanceNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstanceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ReservedDBInstanceQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstanceQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ReservedDBInstancesOffering":{ "type":"structure", "members":{ "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Duration":{"shape":"Integer"}, "FixedPrice":{"shape":"Double"}, "UsagePrice":{"shape":"Double"}, "CurrencyCode":{"shape":"String"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"Boolean"}, "RecurringCharges":{"shape":"RecurringChargeList"} }, "wrapper":true }, "ReservedDBInstancesOfferingList":{ "type":"list", "member":{ "shape":"ReservedDBInstancesOffering", "locationName":"ReservedDBInstancesOffering" } }, "ReservedDBInstancesOfferingMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ReservedDBInstancesOfferings":{"shape":"ReservedDBInstancesOfferingList"} } }, "ReservedDBInstancesOfferingNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstancesOfferingNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ResetDBParameterGroupMessage":{ "type":"structure", "required":["DBParameterGroupName"], "members":{ "DBParameterGroupName":{"shape":"String"}, "ResetAllParameters":{"shape":"Boolean"}, "Parameters":{"shape":"ParametersList"} } }, "RestoreDBInstanceFromDBSnapshotMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "DBSnapshotIdentifier" ], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "DBSnapshotIdentifier":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroupName":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "LicenseModel":{"shape":"String"}, "DBName":{"shape":"String"}, "Engine":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"} } }, "RestoreDBInstanceFromDBSnapshotResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "RestoreDBInstanceToPointInTimeMessage":{ "type":"structure", "required":[ "SourceDBInstanceIdentifier", "TargetDBInstanceIdentifier" ], "members":{ "SourceDBInstanceIdentifier":{"shape":"String"}, "TargetDBInstanceIdentifier":{"shape":"String"}, "RestoreTime":{"shape":"TStamp"}, "UseLatestRestorableTime":{"shape":"Boolean"}, "DBInstanceClass":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroupName":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "LicenseModel":{"shape":"String"}, "DBName":{"shape":"String"}, "Engine":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"} } }, "RestoreDBInstanceToPointInTimeResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "RevokeDBSecurityGroupIngressMessage":{ "type":"structure", "required":["DBSecurityGroupName"], "members":{ "DBSecurityGroupName":{"shape":"String"}, "CIDRIP":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupId":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "RevokeDBSecurityGroupIngressResult":{ "type":"structure", "members":{ "DBSecurityGroup":{"shape":"DBSecurityGroup"} } }, "SNSInvalidTopicFault":{ "type":"structure", "members":{ }, "error":{ "code":"SNSInvalidTopic", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SNSNoAuthorizationFault":{ "type":"structure", "members":{ }, "error":{ "code":"SNSNoAuthorization", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SNSTopicArnNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SNSTopicArnNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SnapshotQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"SnapshotQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SourceIdsList":{ "type":"list", "member":{ "shape":"String", "locationName":"SourceId" } }, "SourceNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SourceType":{ "type":"string", "enum":[ "db-instance", "db-parameter-group", "db-security-group", "db-snapshot" ] }, "StorageQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"StorageQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "String":{"type":"string"}, "Subnet":{ "type":"structure", "members":{ "SubnetIdentifier":{"shape":"String"}, "SubnetAvailabilityZone":{"shape":"AvailabilityZone"}, "SubnetStatus":{"shape":"String"} } }, "SubnetAlreadyInUse":{ "type":"structure", "members":{ }, "error":{ "code":"SubnetAlreadyInUse", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SubnetIdentifierList":{ "type":"list", "member":{ "shape":"String", "locationName":"SubnetIdentifier" } }, "SubnetList":{ "type":"list", "member":{ "shape":"Subnet", "locationName":"Subnet" } }, "SubscriptionAlreadyExistFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionAlreadyExist", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SubscriptionCategoryNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionCategoryNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SubscriptionNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SupportedCharacterSetsList":{ "type":"list", "member":{ "shape":"CharacterSet", "locationName":"CharacterSet" } }, "TStamp":{"type":"timestamp"}, "Tag":{ "type":"structure", "members":{ "Key":{"shape":"String"}, "Value":{"shape":"String"} } }, "TagList":{ "type":"list", "member":{ "shape":"Tag", "locationName":"Tag" } }, "TagListMessage":{ "type":"structure", "members":{ "TagList":{"shape":"TagList"} } }, "VpcSecurityGroupIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpcSecurityGroupId" } }, "VpcSecurityGroupMembership":{ "type":"structure", "members":{ "VpcSecurityGroupId":{"shape":"String"}, "Status":{"shape":"String"} } }, "VpcSecurityGroupMembershipList":{ "type":"list", "member":{ "shape":"VpcSecurityGroupMembership", "locationName":"VpcSecurityGroupMembership" } } } } aws-sdk-go-1.4.22/models/apis/rds/2013-02-12/docs-2.json000066400000000000000000005000111300374646400215750ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon Relational Database Service

        Amazon Relational Database Service (Amazon RDS) is a web service that makes it easier to set up, operate, and scale a relational database in the cloud. It provides cost-efficient, resizable capacity for an industry-standard relational database and manages common database administration tasks, freeing up developers to focus on what makes their applications and businesses unique.

        Amazon RDS gives you access to the capabilities of a familiar MySQL or Oracle database server. This means the code, applications, and tools you already use today with your existing MySQL or Oracle databases work with Amazon RDS without modification. Amazon RDS automatically backs up your database and maintains the database software that powers your DB Instance. Amazon RDS is flexible: you can scale your database instance's compute resources and storage capacity to meet your application's demand. As with all Amazon Web Services, there are no up-front investments, and you pay only for the resources you use.

        This is the Amazon RDS API Reference. It contains a comprehensive description of all Amazon RDS Query APIs and data types. Note that this API is asynchronous and some actions may require polling to determine when an action has been applied. See the parameter description to determine if a change is applied immediately or on the next instance reboot or during the maintenance window. For more information on Amazon RDS concepts and usage scenarios, see the Amazon RDS User Guide.

        ", "operations": { "AddSourceIdentifierToSubscription": "

        Adds a source identifier to an existing RDS event notification subscription.

        ", "AddTagsToResource": "

        Adds metadata tags to a DB Instance. These tags can also be used with cost allocation reporting to track cost associated with a DB Instance.

        ", "AuthorizeDBSecurityGroupIngress": "

        Enables ingress to a DBSecurityGroup using one of two forms of authorization. First, EC2 or VPC Security Groups can be added to the DBSecurityGroup if the application using the database is running on EC2 or VPC instances. Second, IP ranges are available if the application accessing your database is running on the Internet. Required parameters for this API are one of CIDR range, EC2SecurityGroupId for VPC, or (EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId for non-VPC).

        You cannot authorize ingress from an EC2 security group in one Region to an Amazon RDS DB Instance in another. You cannot authorize ingress from a VPC security group in one VPC to an Amazon RDS DB Instance in another.

        For an overview of CIDR ranges, go to the Wikipedia Tutorial.

        ", "CopyDBSnapshot": "

        Copies the specified DBSnapshot. The source DBSnapshot must be in the \"available\" state.

        ", "CreateDBInstance": "

        Creates a new DB instance.

        ", "CreateDBInstanceReadReplica": "

        Creates a DB Instance that acts as a Read Replica of a source DB Instance.

        All Read Replica DB Instances are created as Single-AZ deployments with backups disabled. All other DB Instance attributes (including DB Security Groups and DB Parameter Groups) are inherited from the source DB Instance, except as specified below.

        The source DB Instance must have backup retention enabled.

        ", "CreateDBParameterGroup": "

        Creates a new DB Parameter Group.

        A DB Parameter Group is initially created with the default parameters for the database engine used by the DB Instance. To provide custom values for any of the parameters, you must modify the group after creating it using ModifyDBParameterGroup. Once you've created a DB Parameter Group, you need to associate it with your DB Instance using ModifyDBInstance. When you associate a new DB Parameter Group with a running DB Instance, you need to reboot the DB Instance for the new DB Parameter Group and associated settings to take effect.

        ", "CreateDBSecurityGroup": "

        Creates a new DB Security Group. DB Security Groups control access to a DB Instance.

        ", "CreateDBSnapshot": "

        Creates a DBSnapshot. The source DBInstance must be in \"available\" state.

        ", "CreateDBSubnetGroup": "

        Creates a new DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in the region.

        ", "CreateEventSubscription": "

        Creates an RDS event notification subscription. This action requires a topic ARN (Amazon Resource Name) created by either the RDS console, the SNS console, or the SNS API. To obtain an ARN with SNS, you must create a topic in Amazon SNS and subscribe to the topic. The ARN is displayed in the SNS console.

        You can specify the type of source (SourceType) you want to be notified of, provide a list of RDS sources (SourceIds) that triggers the events, and provide a list of event categories (EventCategories) for events you want to be notified of. For example, you can specify SourceType = db-instance, SourceIds = mydbinstance1, mydbinstance2 and EventCategories = Availability, Backup.

        If you specify both the SourceType and SourceIds, such as SourceType = db-instance and SourceIdentifier = myDBInstance1, you will be notified of all the db-instance events for the specified source. If you specify a SourceType but do not specify a SourceIdentifier, you will receive notice of the events for that source type for all your RDS sources. If you do not specify either the SourceType nor the SourceIdentifier, you will be notified of events generated from all RDS sources belonging to your customer account.

        ", "CreateOptionGroup": "

        Creates a new Option Group. You can create up to 20 option groups.

        ", "DeleteDBInstance": "

        The DeleteDBInstance action deletes a previously provisioned DB instance. A successful response from the web service indicates the request was received correctly. When you delete a DB instance, all automated backups for that instance are deleted and cannot be recovered. Manual DB Snapshots of the DB instance to be deleted are not deleted.

        If a final DBSnapshot is requested the status of the RDS instance will be \"deleting\" until the DBSnapshot is created. DescribeDBInstance is used to monitor the status of this operation. This cannot be canceled or reverted once submitted.

        ", "DeleteDBParameterGroup": "

        Deletes a specified DBParameterGroup. The DBParameterGroup cannot be associated with any RDS instances to be deleted.

        The specified DB Parameter Group cannot be associated with any DB Instances. ", "DeleteDBSecurityGroup": "

        Deletes a DB Security Group.

        The specified DB Security Group must not be associated with any DB Instances.", "DeleteDBSnapshot": "

        Deletes a DBSnapshot.

        The DBSnapshot must be in the available state to be deleted.", "DeleteDBSubnetGroup": "

        Deletes a DB subnet group.

        The specified database subnet group must not be associated with any DB instances.", "DeleteEventSubscription": "

        Deletes an RDS event notification subscription.

        ", "DeleteOptionGroup": "

        Deletes an existing Option Group.

        ", "DescribeDBEngineVersions": "

        Returns a list of the available DB engines.

        ", "DescribeDBInstances": "

        Returns information about provisioned RDS instances. This API supports pagination.

        ", "DescribeDBLogFiles": "

        Returns a list of DB log files for the DB instance.

        ", "DescribeDBParameterGroups": "

        Returns a list of DBParameterGroup descriptions. If a DBParameterGroupName is specified, the list will contain only the description of the specified DBParameterGroup.

        ", "DescribeDBParameters": "

        Returns the detailed parameter list for a particular DBParameterGroup.

        ", "DescribeDBSecurityGroups": "

        Returns a list of DBSecurityGroup descriptions. If a DBSecurityGroupName is specified, the list will contain only the descriptions of the specified DBSecurityGroup.

        For an overview of CIDR ranges, go to the Wikipedia Tutorial.

        ", "DescribeDBSnapshots": "

        Returns information about DBSnapshots. This API supports pagination.

        ", "DescribeDBSubnetGroups": "

        Returns a list of DBSubnetGroup descriptions. If a DBSubnetGroupName is specified, the list will contain only the descriptions of the specified DBSubnetGroup.

        For an overview of CIDR ranges, go to the Wikipedia Tutorial.

        ", "DescribeEngineDefaultParameters": "

        Returns the default engine and system parameter information for the specified database engine.

        ", "DescribeEventCategories": "

        Displays a list of categories for all event source types, or, if specified, for a specified source type. You can see a list of the event categories and source types in the Events topic in the Amazon RDS User Guide.

        ", "DescribeEventSubscriptions": "

        Lists all the subscription descriptions for a customer account. The description for a subscription includes SubscriptionName, SNSTopicARN, CustomerID, SourceType, SourceID, CreationTime, and Status.

        If you specify a SubscriptionName, lists the description for that subscription.

        ", "DescribeEvents": "

        Returns events related to DB Instances, DB Security Groups, DB Snapshots and DB Parameter Groups for the past 14 days. Events specific to a particular DB Instance, DB Security Group, database snapshot or DB Parameter Group can be obtained by providing the name as a parameter. By default, the past hour of events are returned.

        ", "DescribeOptionGroupOptions": "

        Describes all available options.

        ", "DescribeOptionGroups": "

        Describes the available option groups.

        ", "DescribeOrderableDBInstanceOptions": "

        Returns a list of orderable DB Instance options for the specified engine.

        ", "DescribeReservedDBInstances": "

        Returns information about reserved DB Instances for this account, or about a specified reserved DB Instance.

        ", "DescribeReservedDBInstancesOfferings": "

        Lists available reserved DB Instance offerings.

        ", "DownloadDBLogFilePortion": "

        Downloads the last line of the specified log file.

        ", "ListTagsForResource": "

        Lists all tags on a DB Instance.

        ", "ModifyDBInstance": "

        Modify settings for a DB Instance. You can change one or more database configuration parameters by specifying these parameters and the new values in the request.

        ", "ModifyDBParameterGroup": "

        Modifies the parameters of a DBParameterGroup. To modify more than one parameter submit a list of the following: ParameterName, ParameterValue, and ApplyMethod. A maximum of 20 parameters can be modified in a single request.

        The apply-immediate method can be used only for dynamic parameters; the pending-reboot method can be used with MySQL and Oracle DB Instances for either dynamic or static parameters. For Microsoft SQL Server DB Instances, the pending-reboot method can be used only for static parameters.

        ", "ModifyDBSubnetGroup": "

        Modifies an existing DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in the region.

        ", "ModifyEventSubscription": "

        Modifies an existing RDS event notification subscription. Note that you cannot modify the source identifiers using this call; to change source identifiers for a subscription, use the AddSourceIdentifierToSubscription and RemoveSourceIdentifierFromSubscription calls.

        You can see a list of the event categories for a given SourceType in the Events topic in the Amazon RDS User Guide or by using the DescribeEventCategories action.

        ", "ModifyOptionGroup": "

        Modifies an existing Option Group.

        ", "PromoteReadReplica": "

        Promotes a Read Replica DB Instance to a standalone DB Instance.

        ", "PurchaseReservedDBInstancesOffering": "

        Purchases a reserved DB Instance offering.

        ", "RebootDBInstance": "

        Reboots a previously provisioned RDS instance. This API results in the application of modified DBParameterGroup parameters with ApplyStatus of pending-reboot to the RDS instance. This action is taken as soon as possible, and results in a momentary outage to the RDS instance during which the RDS instance status is set to rebooting. If the RDS instance is configured for MultiAZ, it is possible that the reboot will be conducted through a failover. A DBInstance event is created when the reboot is completed.

        ", "RemoveSourceIdentifierFromSubscription": "

        Removes a source identifier from an existing RDS event notification subscription.

        ", "RemoveTagsFromResource": "

        Removes metadata tags from a DB Instance.

        ", "ResetDBParameterGroup": "

        Modifies the parameters of a DBParameterGroup to the engine/system default value. To reset specific parameters submit a list of the following: ParameterName and ApplyMethod. To reset the entire DBParameterGroup specify the DBParameterGroup name and ResetAllParameters parameters. When resetting the entire group, dynamic parameters are updated immediately and static parameters are set to pending-reboot to take effect on the next DB instance restart or RebootDBInstance request.

        ", "RestoreDBInstanceFromDBSnapshot": "

        Creates a new DB Instance from a DB snapshot. The target database is created from the source database restore point with the same configuration as the original source database, except that the new RDS instance is created with the default security group.

        ", "RestoreDBInstanceToPointInTime": "

        Restores a DB Instance to an arbitrary point-in-time. Users can restore to any point in time before the latestRestorableTime for up to backupRetentionPeriod days. The target database is created from the source database with the same configuration as the original database except that the DB instance is created with the default DB security group.

        ", "RevokeDBSecurityGroupIngress": "

        Revokes ingress from a DBSecurityGroup for previously authorized IP ranges or EC2 or VPC Security Groups. Required parameters for this API are one of CIDRIP, EC2SecurityGroupId for VPC, or (EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId).

        " }, "shapes": { "AddSourceIdentifierToSubscriptionMessage": { "base": "

        ", "refs": { } }, "AddSourceIdentifierToSubscriptionResult": { "base": null, "refs": { } }, "AddTagsToResourceMessage": { "base": "

        ", "refs": { } }, "ApplyMethod": { "base": null, "refs": { "Parameter$ApplyMethod": "

        Indicates when to apply parameter updates.

        " } }, "AuthorizationAlreadyExistsFault": { "base": "

        The specified CIDRIP or EC2 security group is already authorized for the specified DB security group.

        ", "refs": { } }, "AuthorizationNotFoundFault": { "base": "

        Specified CIDRIP or EC2 security group is not authorized for the specified DB security group.

        RDS may not also be authorized via IAM to perform necessary actions on your behalf.

        ", "refs": { } }, "AuthorizationQuotaExceededFault": { "base": "

        DB security group authorization quota has been reached.

        ", "refs": { } }, "AuthorizeDBSecurityGroupIngressMessage": { "base": "

        ", "refs": { } }, "AuthorizeDBSecurityGroupIngressResult": { "base": null, "refs": { } }, "AvailabilityZone": { "base": "

        Contains Availability Zone information.

        This data type is used as an element in the following data type:

        ", "refs": { "AvailabilityZoneList$member": null, "Subnet$SubnetAvailabilityZone": null } }, "AvailabilityZoneList": { "base": null, "refs": { "OrderableDBInstanceOption$AvailabilityZones": "

        A list of availability zones for the orderable DB Instance.

        " } }, "Boolean": { "base": null, "refs": { "AvailabilityZone$ProvisionedIopsCapable": "

        True indicates the availability zone is capable of provisioned IOPs.

        ", "DBInstance$MultiAZ": "

        Specifies if the DB Instance is a Multi-AZ deployment.

        ", "DBInstance$AutoMinorVersionUpgrade": "

        Indicates that minor version patches are applied automatically.

        ", "DBInstance$PubliclyAccessible": "

        Specifies the accessibility options for the DB Instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC:true
        • VPC:false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "DeleteDBInstanceMessage$SkipFinalSnapshot": "

        Determines whether a final DB Snapshot is created before the DB Instance is deleted. If true is specified, no DBSnapshot is created. If false is specified, a DB Snapshot is created before the DB Instance is deleted.

        The FinalDBSnapshotIdentifier parameter must be specified if SkipFinalSnapshot is false.

        Default: false

        ", "DescribeDBEngineVersionsMessage$DefaultOnly": "

        Indicates that only the default version of the specified engine or engine and major version combination is returned.

        ", "DownloadDBLogFilePortionDetails$AdditionalDataPending": "

        Boolean value that if true, indicates there is more data to be downloaded.

        ", "EventSubscription$Enabled": "

        A Boolean value indicating if the subscription is enabled. True indicates the subscription is enabled.

        ", "ModifyDBInstanceMessage$ApplyImmediately": "

        Specifies whether or not the modifications in this request and any pending modifications are asynchronously applied as soon as possible, regardless of the PreferredMaintenanceWindow setting for the DB Instance.

        If this parameter is passed as false, changes to the DB Instance are applied on the next call to RebootDBInstance, the next maintenance reboot, or the next failure reboot, whichever occurs first. See each parameter to determine when a change is applied.

        Default: false

        ", "ModifyDBInstanceMessage$AllowMajorVersionUpgrade": "

        Indicates that major version upgrades are allowed. Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible.

        Constraints: This parameter must be set to true when specifying a value for the EngineVersion parameter that is a different major version than the DB Instance's current version.

        ", "ModifyOptionGroupMessage$ApplyImmediately": "

        Indicates whether the changes should be applied immediately, or during the next maintenance window for each instance associated with the Option Group.

        ", "Option$Persistent": "

        Indicate if this option is persistent.

        ", "OptionGroup$AllowsVpcAndNonVpcInstanceMemberships": "

        Indicates whether this option group can be applied to both VPC and non-VPC instances. The value 'true' indicates the option group can be applied to both VPC and non-VPC instances.

        ", "OptionGroupOption$PortRequired": "

        Specifies whether the option requires a port.

        ", "OptionGroupOption$Persistent": "

        Specifies whether the option is persistent in an option group.

        ", "OptionGroupOptionSetting$IsModifiable": "

        Boolean value where true indicates that this option group option can be changed from the default value.

        ", "OptionSetting$IsModifiable": "

        A Boolean value that, when true, indicates the option setting can be modified from the default.

        ", "OptionSetting$IsCollection": "

        Indicates if the option setting is part of a collection.

        ", "OrderableDBInstanceOption$MultiAZCapable": "

        Indicates whether this orderable DB Instance is multi-AZ capable.

        ", "OrderableDBInstanceOption$ReadReplicaCapable": "

        Indicates whether this orderable DB Instance can have a read replica.

        ", "OrderableDBInstanceOption$Vpc": "

        Indicates whether this is a VPC orderable DB Instance.

        ", "Parameter$IsModifiable": "

        Indicates whether (true) or not (false) the parameter can be modified. Some parameters have security or operational implications that prevent them from being changed.

        ", "ReservedDBInstance$MultiAZ": "

        Indicates if the reservation applies to Multi-AZ deployments.

        ", "ReservedDBInstancesOffering$MultiAZ": "

        Indicates if the offering applies to Multi-AZ deployments.

        ", "ResetDBParameterGroupMessage$ResetAllParameters": "

        Specifies whether (true) or not (false) to reset all parameters in the DB Parameter Group to default values.

        Default: true

        ", "RestoreDBInstanceToPointInTimeMessage$UseLatestRestorableTime": "

        Specifies whether (true) or not (false) the DB Instance is restored from the latest backup time.

        Default: false

        Constraints: Cannot be specified if RestoreTime parameter is provided.

        " } }, "BooleanOptional": { "base": null, "refs": { "CreateDBInstanceMessage$MultiAZ": "

        Specifies if the DB Instance is a Multi-AZ deployment. You cannot set the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        ", "CreateDBInstanceMessage$AutoMinorVersionUpgrade": "

        Indicates that minor engine upgrades will be applied automatically to the DB Instance during the maintenance window.

        Default: true

        ", "CreateDBInstanceMessage$PubliclyAccessible": "

        Specifies the accessibility options for the DB Instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC:true
        • VPC:false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "CreateDBInstanceReadReplicaMessage$AutoMinorVersionUpgrade": "

        Indicates that minor engine upgrades will be applied automatically to the Read Replica during the maintenance window.

        Default: Inherits from the source DB Instance

        ", "CreateDBInstanceReadReplicaMessage$PubliclyAccessible": "

        Specifies the accessibility options for the DB Instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC:true
        • VPC:false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "CreateEventSubscriptionMessage$Enabled": "

        A Boolean value; set to true to activate the subscription, set to false to create the subscription but not active it.

        ", "DescribeDBEngineVersionsMessage$ListSupportedCharacterSets": "

        If this parameter is specified, and if the requested engine supports the CharacterSetName parameter for CreateDBInstance, the response includes a list of supported character sets for each engine version.

        ", "DescribeOrderableDBInstanceOptionsMessage$Vpc": "

        The VPC filter value. Specify this parameter to show only the available VPC or non-VPC offerings.

        ", "DescribeReservedDBInstancesMessage$MultiAZ": "

        The Multi-AZ filter value. Specify this parameter to show only those reservations matching the specified Multi-AZ parameter.

        ", "DescribeReservedDBInstancesOfferingsMessage$MultiAZ": "

        The Multi-AZ filter value. Specify this parameter to show only the available offerings matching the specified Multi-AZ parameter.

        ", "ModifyDBInstanceMessage$MultiAZ": "

        Specifies if the DB Instance is a Multi-AZ deployment. Changing this parameter does not result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        Constraints: Cannot be specified if the DB Instance is a read replica.

        ", "ModifyDBInstanceMessage$AutoMinorVersionUpgrade": "

        Indicates that minor version upgrades will be applied automatically to the DB Instance during the maintenance window. Changing this parameter does not result in an outage except in the following case and the change is asynchronously applied as soon as possible. An outage will result if this parameter is set to true during the maintenance window, and a newer minor version is available, and RDS has enabled auto patching for that engine version.

        ", "ModifyEventSubscriptionMessage$Enabled": "

        A Boolean value; set to true to activate the subscription.

        ", "PendingModifiedValues$MultiAZ": "

        Indicates that the Single-AZ DB Instance is to change to a Multi-AZ deployment.

        ", "RebootDBInstanceMessage$ForceFailover": "

        When true, the reboot will be conducted through a MultiAZ failover.

        Constraint: You cannot specify true if the instance is not configured for MultiAZ.

        ", "RestoreDBInstanceFromDBSnapshotMessage$MultiAZ": "

        Specifies if the DB Instance is a Multi-AZ deployment.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        ", "RestoreDBInstanceFromDBSnapshotMessage$PubliclyAccessible": "

        Specifies the accessibility options for the DB Instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC:true
        • VPC:false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "RestoreDBInstanceFromDBSnapshotMessage$AutoMinorVersionUpgrade": "

        Indicates that minor version upgrades will be applied automatically to the DB Instance during the maintenance window.

        ", "RestoreDBInstanceToPointInTimeMessage$MultiAZ": "

        Specifies if the DB Instance is a Multi-AZ deployment.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        ", "RestoreDBInstanceToPointInTimeMessage$PubliclyAccessible": "

        Specifies the accessibility options for the DB Instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC:true
        • VPC:false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "RestoreDBInstanceToPointInTimeMessage$AutoMinorVersionUpgrade": "

        Indicates that minor version upgrades will be applied automatically to the DB Instance during the maintenance window.

        " } }, "CharacterSet": { "base": "

        This data type is used as a response element in the action DescribeDBEngineVersions.

        ", "refs": { "DBEngineVersion$DefaultCharacterSet": "

        The default character set for new instances of this engine version, if the CharacterSetName parameter of the CreateDBInstance API is not specified.

        ", "SupportedCharacterSetsList$member": null } }, "CopyDBSnapshotMessage": { "base": "

        ", "refs": { } }, "CopyDBSnapshotResult": { "base": null, "refs": { } }, "CreateDBInstanceMessage": { "base": "

        ", "refs": { } }, "CreateDBInstanceReadReplicaMessage": { "base": null, "refs": { } }, "CreateDBInstanceReadReplicaResult": { "base": null, "refs": { } }, "CreateDBInstanceResult": { "base": null, "refs": { } }, "CreateDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "CreateDBParameterGroupResult": { "base": null, "refs": { } }, "CreateDBSecurityGroupMessage": { "base": "

        ", "refs": { } }, "CreateDBSecurityGroupResult": { "base": null, "refs": { } }, "CreateDBSnapshotMessage": { "base": "

        ", "refs": { } }, "CreateDBSnapshotResult": { "base": null, "refs": { } }, "CreateDBSubnetGroupMessage": { "base": "

        ", "refs": { } }, "CreateDBSubnetGroupResult": { "base": null, "refs": { } }, "CreateEventSubscriptionMessage": { "base": "

        ", "refs": { } }, "CreateEventSubscriptionResult": { "base": null, "refs": { } }, "CreateOptionGroupMessage": { "base": "

        ", "refs": { } }, "CreateOptionGroupResult": { "base": null, "refs": { } }, "DBEngineVersion": { "base": "

        This data type is used as a response element in the action DescribeDBEngineVersions.

        ", "refs": { "DBEngineVersionList$member": null } }, "DBEngineVersionList": { "base": null, "refs": { "DBEngineVersionMessage$DBEngineVersions": "

        A list of DBEngineVersion elements.

        " } }, "DBEngineVersionMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBEngineVersions action.

        ", "refs": { } }, "DBInstance": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBInstances action.

        ", "refs": { "CreateDBInstanceReadReplicaResult$DBInstance": null, "CreateDBInstanceResult$DBInstance": null, "DBInstanceList$member": null, "DeleteDBInstanceResult$DBInstance": null, "ModifyDBInstanceResult$DBInstance": null, "PromoteReadReplicaResult$DBInstance": null, "RebootDBInstanceResult$DBInstance": null, "RestoreDBInstanceFromDBSnapshotResult$DBInstance": null, "RestoreDBInstanceToPointInTimeResult$DBInstance": null } }, "DBInstanceAlreadyExistsFault": { "base": "

        User already has a DB instance with the given identifier.

        ", "refs": { } }, "DBInstanceList": { "base": null, "refs": { "DBInstanceMessage$DBInstances": "

        A list of DBInstance instances.

        " } }, "DBInstanceMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBInstances action.

        ", "refs": { } }, "DBInstanceNotFoundFault": { "base": "

        DBInstanceIdentifier does not refer to an existing DB instance.

        ", "refs": { } }, "DBLogFileNotFoundFault": { "base": "

        LogFileName does not refer to an existing DB log file.

        ", "refs": { } }, "DBParameterGroup": { "base": "

        Contains the result of a successful invocation of the CreateDBParameterGroup action.

        This data type is used as a request parameter in the DeleteDBParameterGroup action, and as a response element in the DescribeDBParameterGroups action.

        ", "refs": { "CreateDBParameterGroupResult$DBParameterGroup": null, "DBParameterGroupList$member": null } }, "DBParameterGroupAlreadyExistsFault": { "base": "

        A DB parameter group with the same name exists.

        ", "refs": { } }, "DBParameterGroupDetails": { "base": "

        Contains the result of a successful invocation of the DescribeDBParameters action.

        ", "refs": { } }, "DBParameterGroupList": { "base": null, "refs": { "DBParameterGroupsMessage$DBParameterGroups": "

        A list of DBParameterGroup instances.

        " } }, "DBParameterGroupNameMessage": { "base": "

        Contains the result of a successful invocation of the ModifyDBParameterGroup or ResetDBParameterGroup action.

        ", "refs": { } }, "DBParameterGroupNotFoundFault": { "base": "

        DBParameterGroupName does not refer to an existing DB parameter group.

        ", "refs": { } }, "DBParameterGroupQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB parameter groups.

        ", "refs": { } }, "DBParameterGroupStatus": { "base": "

        The status of the DB Parameter Group.

        This data type is used as a response element in the following actions:

        ", "refs": { "DBParameterGroupStatusList$member": null } }, "DBParameterGroupStatusList": { "base": null, "refs": { "DBInstance$DBParameterGroups": "

        Provides the list of DB Parameter Groups applied to this DB Instance.

        " } }, "DBParameterGroupsMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBParameterGroups action.

        ", "refs": { } }, "DBSecurityGroup": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBSecurityGroups action.

        ", "refs": { "AuthorizeDBSecurityGroupIngressResult$DBSecurityGroup": null, "CreateDBSecurityGroupResult$DBSecurityGroup": null, "DBSecurityGroups$member": null, "RevokeDBSecurityGroupIngressResult$DBSecurityGroup": null } }, "DBSecurityGroupAlreadyExistsFault": { "base": "

        A DB security group with the name specified in DBSecurityGroupName already exists.

        ", "refs": { } }, "DBSecurityGroupMembership": { "base": "

        This data type is used as a response element in the following actions:

        ", "refs": { "DBSecurityGroupMembershipList$member": null } }, "DBSecurityGroupMembershipList": { "base": null, "refs": { "DBInstance$DBSecurityGroups": "

        Provides List of DB Security Group elements containing only DBSecurityGroup.Name and DBSecurityGroup.Status subelements.

        ", "Option$DBSecurityGroupMemberships": "

        If the option requires access to a port, then this DB Security Group allows access to the port.

        " } }, "DBSecurityGroupMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBSecurityGroups action.

        ", "refs": { } }, "DBSecurityGroupNameList": { "base": null, "refs": { "CreateDBInstanceMessage$DBSecurityGroups": "

        A list of DB Security Groups to associate with this DB Instance.

        Default: The default DB Security Group for the database engine.

        ", "ModifyDBInstanceMessage$DBSecurityGroups": "

        A list of DB Security Groups to authorize on this DB Instance. Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "OptionConfiguration$DBSecurityGroupMemberships": "

        A list of DBSecurityGroupMemebrship name strings used for this option.

        " } }, "DBSecurityGroupNotFoundFault": { "base": "

        DBSecurityGroupName does not refer to an existing DB security group.

        ", "refs": { } }, "DBSecurityGroupNotSupportedFault": { "base": "

        A DB security group is not allowed for this action.

        ", "refs": { } }, "DBSecurityGroupQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB security groups.

        ", "refs": { } }, "DBSecurityGroups": { "base": null, "refs": { "DBSecurityGroupMessage$DBSecurityGroups": "

        A list of DBSecurityGroup instances.

        " } }, "DBSnapshot": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBSnapshots action.

        ", "refs": { "CopyDBSnapshotResult$DBSnapshot": null, "CreateDBSnapshotResult$DBSnapshot": null, "DBSnapshotList$member": null, "DeleteDBSnapshotResult$DBSnapshot": null } }, "DBSnapshotAlreadyExistsFault": { "base": "

        DBSnapshotIdentifier is already used by an existing snapshot.

        ", "refs": { } }, "DBSnapshotList": { "base": null, "refs": { "DBSnapshotMessage$DBSnapshots": "

        A list of DBSnapshot instances.

        " } }, "DBSnapshotMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBSnapshots action.

        ", "refs": { } }, "DBSnapshotNotFoundFault": { "base": "

        DBSnapshotIdentifier does not refer to an existing DB snapshot.

        ", "refs": { } }, "DBSubnetGroup": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBSubnetGroups action.

        ", "refs": { "CreateDBSubnetGroupResult$DBSubnetGroup": null, "DBInstance$DBSubnetGroup": "

        Provides the inforamtion of the subnet group associated with the DB instance, including the name, descrption and subnets in the subnet group.

        ", "DBSubnetGroups$member": null, "ModifyDBSubnetGroupResult$DBSubnetGroup": null } }, "DBSubnetGroupAlreadyExistsFault": { "base": "

        DBSubnetGroupName is already used by an existing DB subnet group.

        ", "refs": { } }, "DBSubnetGroupDoesNotCoverEnoughAZs": { "base": "

        Subnets in the DB subnet group should cover at least two Availability Zones unless there is only one Availability Zone.

        ", "refs": { } }, "DBSubnetGroupMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBSubnetGroups action.

        ", "refs": { } }, "DBSubnetGroupNotFoundFault": { "base": "

        DBSubnetGroupName does not refer to an existing DB subnet group.

        ", "refs": { } }, "DBSubnetGroupQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB subnet groups.

        ", "refs": { } }, "DBSubnetGroups": { "base": null, "refs": { "DBSubnetGroupMessage$DBSubnetGroups": "

        A list of DBSubnetGroup instances.

        " } }, "DBSubnetQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of subnets in a DB subnet groups.

        ", "refs": { } }, "DBUpgradeDependencyFailureFault": { "base": "

        The DB upgrade failed because a resource the DB depends on could not be modified.

        ", "refs": { } }, "DeleteDBInstanceMessage": { "base": "

        ", "refs": { } }, "DeleteDBInstanceResult": { "base": null, "refs": { } }, "DeleteDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "DeleteDBSecurityGroupMessage": { "base": "

        ", "refs": { } }, "DeleteDBSnapshotMessage": { "base": "

        ", "refs": { } }, "DeleteDBSnapshotResult": { "base": null, "refs": { } }, "DeleteDBSubnetGroupMessage": { "base": "

        ", "refs": { } }, "DeleteEventSubscriptionMessage": { "base": "

        ", "refs": { } }, "DeleteEventSubscriptionResult": { "base": null, "refs": { } }, "DeleteOptionGroupMessage": { "base": "

        ", "refs": { } }, "DescribeDBEngineVersionsMessage": { "base": null, "refs": { } }, "DescribeDBInstancesMessage": { "base": "

        ", "refs": { } }, "DescribeDBLogFilesDetails": { "base": "

        This data type is used as a response element to DescribeDBLogFiles.

        ", "refs": { "DescribeDBLogFilesList$member": null } }, "DescribeDBLogFilesList": { "base": null, "refs": { "DescribeDBLogFilesResponse$DescribeDBLogFiles": "

        The DB log files returned.

        " } }, "DescribeDBLogFilesMessage": { "base": "

        ", "refs": { } }, "DescribeDBLogFilesResponse": { "base": "

        The response from a call to DescribeDBLogFiles.

        ", "refs": { } }, "DescribeDBParameterGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeDBParametersMessage": { "base": null, "refs": { } }, "DescribeDBSecurityGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeDBSnapshotsMessage": { "base": "

        ", "refs": { } }, "DescribeDBSubnetGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeEngineDefaultParametersMessage": { "base": "

        ", "refs": { } }, "DescribeEngineDefaultParametersResult": { "base": null, "refs": { } }, "DescribeEventCategoriesMessage": { "base": "

        ", "refs": { } }, "DescribeEventSubscriptionsMessage": { "base": "

        ", "refs": { } }, "DescribeEventsMessage": { "base": "

        ", "refs": { } }, "DescribeOptionGroupOptionsMessage": { "base": "

        ", "refs": { } }, "DescribeOptionGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeOrderableDBInstanceOptionsMessage": { "base": "

        ", "refs": { } }, "DescribeReservedDBInstancesMessage": { "base": "

        ", "refs": { } }, "DescribeReservedDBInstancesOfferingsMessage": { "base": "

        ", "refs": { } }, "Double": { "base": null, "refs": { "RecurringCharge$RecurringChargeAmount": "

        The amount of the recurring charge.

        ", "ReservedDBInstance$FixedPrice": "

        The fixed price charged for this reserved DB Instance.

        ", "ReservedDBInstance$UsagePrice": "

        The hourly price charged for this reserved DB Instance.

        ", "ReservedDBInstancesOffering$FixedPrice": "

        The fixed price charged for this offering.

        ", "ReservedDBInstancesOffering$UsagePrice": "

        The hourly price charged for this offering.

        " } }, "DownloadDBLogFilePortionDetails": { "base": "

        This data type is used as a response element to DownloadDBLogFilePortion.

        ", "refs": { } }, "DownloadDBLogFilePortionMessage": { "base": "

        ", "refs": { } }, "EC2SecurityGroup": { "base": "

        This data type is used as a response element in the following actions:

        ", "refs": { "EC2SecurityGroupList$member": null } }, "EC2SecurityGroupList": { "base": null, "refs": { "DBSecurityGroup$EC2SecurityGroups": "

        Contains a list of EC2SecurityGroup elements.

        " } }, "Endpoint": { "base": "

        This data type is used as a response element in the following actions:

        ", "refs": { "DBInstance$Endpoint": "

        Specifies the connection endpoint.

        " } }, "EngineDefaults": { "base": "

        Contains the result of a successful invocation of the DescribeEngineDefaultParameters action.

        ", "refs": { "DescribeEngineDefaultParametersResult$EngineDefaults": null } }, "Event": { "base": "

        This data type is used as a response element in the DescribeEvents action.

        ", "refs": { "EventList$member": null } }, "EventCategoriesList": { "base": null, "refs": { "CreateEventSubscriptionMessage$EventCategories": "

        A list of event categories for a SourceType that you want to subscribe to. You can see a list of the categories for a given SourceType in the Events topic in the Amazon RDS User Guide or by using the DescribeEventCategories action.

        ", "DescribeEventsMessage$EventCategories": "

        A list of event categories that trigger notifications for a event notification subscription.

        ", "Event$EventCategories": "

        Specifies the category for the event.

        ", "EventCategoriesMap$EventCategories": "

        The event categories for the specified source type

        ", "EventSubscription$EventCategoriesList": "

        A list of event categories for the RDS event notification subscription.

        ", "ModifyEventSubscriptionMessage$EventCategories": "

        A list of event categories for a SourceType that you want to subscribe to. You can see a list of the categories for a given SourceType in the Events topic in the Amazon RDS User Guide or by using the DescribeEventCategories action.

        " } }, "EventCategoriesMap": { "base": "

        Contains the results of a successful invocation of the DescribeEventCategories action.

        ", "refs": { "EventCategoriesMapList$member": null } }, "EventCategoriesMapList": { "base": null, "refs": { "EventCategoriesMessage$EventCategoriesMapList": "

        A list of EventCategoriesMap data types.

        " } }, "EventCategoriesMessage": { "base": "

        Data returned from the DescribeEventCategories action.

        ", "refs": { } }, "EventList": { "base": null, "refs": { "EventsMessage$Events": "

        A list of Event instances.

        " } }, "EventSubscription": { "base": "

        Contains the results of a successful invocation of the DescribeEventSubscriptions action.

        ", "refs": { "AddSourceIdentifierToSubscriptionResult$EventSubscription": null, "CreateEventSubscriptionResult$EventSubscription": null, "DeleteEventSubscriptionResult$EventSubscription": null, "EventSubscriptionsList$member": null, "ModifyEventSubscriptionResult$EventSubscription": null, "RemoveSourceIdentifierFromSubscriptionResult$EventSubscription": null } }, "EventSubscriptionQuotaExceededFault": { "base": "

        You have reached the maximum number of event subscriptions.

        ", "refs": { } }, "EventSubscriptionsList": { "base": null, "refs": { "EventSubscriptionsMessage$EventSubscriptionsList": "

        A list of EventSubscriptions data types.

        " } }, "EventSubscriptionsMessage": { "base": "

        Data returned by the DescribeEventSubscriptions action.

        ", "refs": { } }, "EventsMessage": { "base": "

        Contains the result of a successful invocation of the DescribeEvents action.

        ", "refs": { } }, "IPRange": { "base": "

        This data type is used as a response element in the DescribeDBSecurityGroups action.

        ", "refs": { "IPRangeList$member": null } }, "IPRangeList": { "base": null, "refs": { "DBSecurityGroup$IPRanges": "

        Contains a list of IPRange elements.

        " } }, "InstanceQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB instances.

        ", "refs": { } }, "InsufficientDBInstanceCapacityFault": { "base": "

        Specified DB instance class is not available in the specified Availability Zone.

        ", "refs": { } }, "Integer": { "base": null, "refs": { "DBInstance$AllocatedStorage": "

        Specifies the allocated storage size specified in gigabytes.

        ", "DBInstance$BackupRetentionPeriod": "

        Specifies the number of days for which automatic DB Snapshots are retained.

        ", "DBSnapshot$AllocatedStorage": "

        Specifies the allocated storage size in gigabytes (GB).

        ", "DBSnapshot$Port": "

        Specifies the port that the database engine was listening on at the time of the snapshot.

        ", "DownloadDBLogFilePortionMessage$NumberOfLines": "

        The number of lines remaining to be downloaded.

        ", "Endpoint$Port": "

        Specifies the port that the database engine is listening on.

        ", "ReservedDBInstance$Duration": "

        The duration of the reservation in seconds.

        ", "ReservedDBInstance$DBInstanceCount": "

        The number of reserved DB Instances.

        ", "ReservedDBInstancesOffering$Duration": "

        The duration of the offering in seconds.

        " } }, "IntegerOptional": { "base": null, "refs": { "CreateDBInstanceMessage$AllocatedStorage": "

        The amount of storage (in gigabytes) to be initially allocated for the database instance.

        MySQL

        Constraints: Must be an integer from 5 to 1024.

        Type: Integer

        Oracle

        Constraints: Must be an integer from 10 to 1024.

        SQL Server

        Constraints: Must be an integer from 200 to 1024 (Standard Edition and Enterprise Edition) or from 30 to 1024 (Express Edition and Web Edition)

        ", "CreateDBInstanceMessage$BackupRetentionPeriod": "

        The number of days for which automated backups are retained. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

        Default: 1

        Constraints:

        • Must be a value from 0 to 8
        • Cannot be set to 0 if the DB Instance is a master instance with read replicas
        ", "CreateDBInstanceMessage$Port": "

        The port number on which the database accepts connections.

        MySQL

        Default: 3306

        Valid Values: 1150-65535

        Type: Integer

        Oracle

        Default: 1521

        Valid Values: 1150-65535

        SQL Server

        Default: 1433

        Valid Values: 1150-65535 except for 1434 and 3389.

        ", "CreateDBInstanceMessage$Iops": "

        The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB Instance.

        Constraints: Must be an integer greater than 1000.

        ", "CreateDBInstanceReadReplicaMessage$Port": "

        The port number that the DB Instance uses for connections.

        Default: Inherits from the source DB Instance

        Valid Values: 1150-65535

        ", "CreateDBInstanceReadReplicaMessage$Iops": "

        The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB Instance.

        ", "DBInstance$Iops": "

        Specifies the Provisioned IOPS (I/O operations per second) value.

        ", "DBSnapshot$Iops": "

        Specifies the Provisioned IOPS (I/O operations per second) value of the DB Instance at the time of the snapshot.

        ", "DescribeDBEngineVersionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more than the MaxRecords value is available, a pagination token called a marker is included in the response so that the following results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBInstancesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBLogFilesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        ", "DescribeDBParameterGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBParametersMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBSecurityGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBSnapshotsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBSubnetGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeEngineDefaultParametersMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeEventSubscriptionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeEventsMessage$Duration": "

        The number of minutes to retrieve events for.

        Default: 60

        ", "DescribeEventsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeOptionGroupOptionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeOptionGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeOrderableDBInstanceOptionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeReservedDBInstancesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more than the MaxRecords value is available, a pagination token called a marker is included in the response so that the following results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeReservedDBInstancesOfferingsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more than the MaxRecords value is available, a pagination token called a marker is included in the response so that the following results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "ModifyDBInstanceMessage$AllocatedStorage": "

        The new storage capacity of the RDS instance. Changing this parameter does not result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        MySQL

        Default: Uses existing setting

        Valid Values: 5-1024

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

        Type: Integer

        Oracle

        Default: Uses existing setting

        Valid Values: 10-1024

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

        SQL Server

        Cannot be modified.

        If you choose to migrate your DB instance from using standard storage to using Provisioned IOPS, or from using Provisioned IOPS to using standard storage, the process can take time. The duration of the migration depends on several factors such as database load, storage size, storage type (standard or Provisioned IOPS), amount of IOPS provisioned (if any), and the number of prior scale storage operations. Typical migration times are under 24 hours, but the process can take up to several days in some cases. During the migration, the DB instance will be available for use, but may experience performance degradation. While the migration takes place, nightly backups for the instance will be suspended. No other Amazon RDS operations can take place for the instance, including modifying the instance, rebooting the instance, deleting the instance, creating a read replica for the instance, and creating a DB snapshot of the instance.

        ", "ModifyDBInstanceMessage$BackupRetentionPeriod": "

        The number of days to retain automated backups. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

        Changing this parameter can result in an outage if you change from 0 to a non-zero value or from a non-zero value to 0. These changes are applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request. If you change the parameter from one non-zero value to another non-zero value, the change is asynchronously applied as soon as possible.

        Default: Uses existing setting

        Constraints:

        • Must be a value from 0 to 8
        • Cannot be set to 0 if the DB Instance is a master instance with read replicas or if the DB Instance is a read replica
        ", "ModifyDBInstanceMessage$Iops": "

        The new Provisioned IOPS (I/O operations per second) value for the RDS instance. Changing this parameter does not result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        Default: Uses existing setting

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

        Type: Integer

        If you choose to migrate your DB instance from using standard storage to using Provisioned IOPS, or from using Provisioned IOPS to using standard storage, the process can take time. The duration of the migration depends on several factors such as database load, storage size, storage type (standard or Provisioned IOPS), amount of IOPS provisioned (if any), and the number of prior scale storage operations. Typical migration times are under 24 hours, but the process can take up to several days in some cases. During the migration, the DB instance will be available for use, but may experience performance degradation. While the migration takes place, nightly backups for the instance will be suspended. No other Amazon RDS operations can take place for the instance, including modifying the instance, rebooting the instance, deleting the instance, creating a read replica for the instance, and creating a DB snapshot of the instance.

        ", "Option$Port": "

        If required, the port configured for this option to use.

        ", "OptionConfiguration$Port": "

        The optional port for the option.

        ", "OptionGroupOption$DefaultPort": "

        If the option requires a port, specifies the default port for the option.

        ", "PendingModifiedValues$AllocatedStorage": "

        Contains the new AllocatedStorage size for the DB Instance that will be applied or is in progress.

        ", "PendingModifiedValues$Port": "

        Specifies the pending port for the DB Instance.

        ", "PendingModifiedValues$BackupRetentionPeriod": "

        Specifies the pending number of days for which automated backups are retained.

        ", "PendingModifiedValues$Iops": "

        Specifies the new Provisioned IOPS value for the DB Instance that will be applied or is being applied.

        ", "PromoteReadReplicaMessage$BackupRetentionPeriod": "

        The number of days to retain automated backups. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

        Default: 1

        Constraints:

        • Must be a value from 0 to 8
        ", "PurchaseReservedDBInstancesOfferingMessage$DBInstanceCount": "

        The number of instances to reserve.

        Default: 1

        ", "RestoreDBInstanceFromDBSnapshotMessage$Port": "

        The port number on which the database accepts connections.

        Default: The same port as the original DB Instance

        Constraints: Value must be 1150-65535

        ", "RestoreDBInstanceFromDBSnapshotMessage$Iops": "

        Specifies the amount of provisioned IOPS for the DB Instance, expressed in I/O operations per second. If this parameter is not specified, the IOPS value will be taken from the backup. If this parameter is set to 0, the new instance will be converted to a non-PIOPS instance, which will take additional time, though your DB instance will be available for connections before the conversion starts.

        Constraints: Must be an integer greater than 1000.

        ", "RestoreDBInstanceToPointInTimeMessage$Port": "

        The port number on which the database accepts connections.

        Constraints: Value must be 1150-65535

        Default: The same port as the original DB Instance.

        ", "RestoreDBInstanceToPointInTimeMessage$Iops": "

        The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB Instance.

        Constraints: Must be an integer greater than 1000.

        " } }, "InvalidDBInstanceStateFault": { "base": "

        The specified DB instance is not in the available state.

        ", "refs": { } }, "InvalidDBParameterGroupStateFault": { "base": "

        The DB parameter group cannot be deleted because it is in use.

        ", "refs": { } }, "InvalidDBSecurityGroupStateFault": { "base": "

        The state of the DB security group does not allow deletion.

        ", "refs": { } }, "InvalidDBSnapshotStateFault": { "base": "

        The state of the DB snapshot does not allow deletion.

        ", "refs": { } }, "InvalidDBSubnetGroupStateFault": { "base": "

        The DB subnet group cannot be deleted because it is in use.

        ", "refs": { } }, "InvalidDBSubnetStateFault": { "base": "

        The DB subnet is not in the available state.

        ", "refs": { } }, "InvalidEventSubscriptionStateFault": { "base": "

        This error can occur if someone else is modifying a subscription. You should retry the action.

        ", "refs": { } }, "InvalidOptionGroupStateFault": { "base": "

        The option group is not in the available state.

        ", "refs": { } }, "InvalidRestoreFault": { "base": "

        Cannot restore from vpc backup to non-vpc DB instance.

        ", "refs": { } }, "InvalidSubnet": { "base": "

        The requested subnet is invalid, or multiple subnets were requested that are not all in a common VPC.

        ", "refs": { } }, "InvalidVPCNetworkStateFault": { "base": "

        DB subnet group does not cover all Availability Zones after it is created because users' change.

        ", "refs": { } }, "KeyList": { "base": null, "refs": { "RemoveTagsFromResourceMessage$TagKeys": "

        The tag key (name) of the tag to be removed.

        " } }, "ListTagsForResourceMessage": { "base": "

        ", "refs": { } }, "Long": { "base": null, "refs": { "DescribeDBLogFilesDetails$LastWritten": "

        The date and time that the last log entry was written.

        ", "DescribeDBLogFilesDetails$Size": "

        The size, in bytes, of the log file for the specified DB instance.

        ", "DescribeDBLogFilesMessage$FileLastWritten": "

        Filters the available log files for files written since the specified date.

        ", "DescribeDBLogFilesMessage$FileSize": "

        Filters the available log files for files larger than the specified size.

        " } }, "ModifyDBInstanceMessage": { "base": "

        ", "refs": { } }, "ModifyDBInstanceResult": { "base": null, "refs": { } }, "ModifyDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "ModifyDBSubnetGroupMessage": { "base": "

        ", "refs": { } }, "ModifyDBSubnetGroupResult": { "base": null, "refs": { } }, "ModifyEventSubscriptionMessage": { "base": "

        ", "refs": { } }, "ModifyEventSubscriptionResult": { "base": null, "refs": { } }, "ModifyOptionGroupMessage": { "base": "

        ", "refs": { } }, "ModifyOptionGroupResult": { "base": null, "refs": { } }, "Option": { "base": "

        Option details.

        ", "refs": { "OptionsList$member": null } }, "OptionConfiguration": { "base": "

        A list of all available options

        ", "refs": { "OptionConfigurationList$member": null } }, "OptionConfigurationList": { "base": null, "refs": { "ModifyOptionGroupMessage$OptionsToInclude": "

        Options in this list are added to the Option Group or, if already present, the specified configuration is used to update the existing configuration.

        " } }, "OptionGroup": { "base": "

        ", "refs": { "CreateOptionGroupResult$OptionGroup": null, "ModifyOptionGroupResult$OptionGroup": null, "OptionGroupsList$member": null } }, "OptionGroupAlreadyExistsFault": { "base": "

        The option group you are trying to create already exists.

        ", "refs": { } }, "OptionGroupMembership": { "base": "

        Provides information on the option groups the DB instance is a member of.

        ", "refs": { "OptionGroupMembershipList$member": null } }, "OptionGroupMembershipList": { "base": null, "refs": { "DBInstance$OptionGroupMemberships": "

        Provides the list of option group memberships for this DB Instance.

        " } }, "OptionGroupNotFoundFault": { "base": "

        The specified option group could not be found.

        ", "refs": { } }, "OptionGroupOption": { "base": "

        Available option.

        ", "refs": { "OptionGroupOptionsList$member": null } }, "OptionGroupOptionSetting": { "base": "

        Option Group option settings are used to display settings available for each option with their default values and other information. These values are used with the DescribeOptionGroupOptions action.

        ", "refs": { "OptionGroupOptionSettingsList$member": null } }, "OptionGroupOptionSettingsList": { "base": null, "refs": { "OptionGroupOption$OptionGroupOptionSettings": "

        Specifies the option settings that are available (and the default value) for each option in an option group.

        " } }, "OptionGroupOptionsList": { "base": "

        List of available option group options.

        ", "refs": { "OptionGroupOptionsMessage$OptionGroupOptions": null } }, "OptionGroupOptionsMessage": { "base": "

        ", "refs": { } }, "OptionGroupQuotaExceededFault": { "base": "

        The quota of 20 option groups was exceeded for this AWS account.

        ", "refs": { } }, "OptionGroups": { "base": "

        List of option groups.

        ", "refs": { } }, "OptionGroupsList": { "base": null, "refs": { "OptionGroups$OptionGroupsList": "

        List of option groups.

        " } }, "OptionNamesList": { "base": null, "refs": { "ModifyOptionGroupMessage$OptionsToRemove": "

        Options in this list are removed from the Option Group.

        " } }, "OptionSetting": { "base": "

        Option settings are the actual settings being applied or configured for that option. It is used when you modify an option group or describe option groups. For example, the NATIVE_NETWORK_ENCRYPTION option has a setting called SQLNET.ENCRYPTION_SERVER that can have several different values.

        ", "refs": { "OptionSettingConfigurationList$member": null, "OptionSettingsList$member": null } }, "OptionSettingConfigurationList": { "base": null, "refs": { "Option$OptionSettings": "

        The option settings for this option.

        " } }, "OptionSettingsList": { "base": null, "refs": { "OptionConfiguration$OptionSettings": "

        The option settings to include in an option group.

        " } }, "OptionsDependedOn": { "base": null, "refs": { "OptionGroupOption$OptionsDependedOn": "

        List of all options that are prerequisites for this option.

        " } }, "OptionsList": { "base": null, "refs": { "OptionGroup$Options": "

        Indicates what options are available in the option group.

        " } }, "OrderableDBInstanceOption": { "base": "

        Contains a list of available options for a DB Instance

        This data type is used as a response element in the DescribeOrderableDBInstanceOptions action.

        ", "refs": { "OrderableDBInstanceOptionsList$member": null } }, "OrderableDBInstanceOptionsList": { "base": null, "refs": { "OrderableDBInstanceOptionsMessage$OrderableDBInstanceOptions": "

        An OrderableDBInstanceOption structure containing information about orderable options for the DB Instance.

        " } }, "OrderableDBInstanceOptionsMessage": { "base": "

        Contains the result of a successful invocation of the DescribeOrderableDBInstanceOptions action.

        ", "refs": { } }, "Parameter": { "base": "

        This data type is used as a request parameter in the ModifyDBParameterGroup and ResetDBParameterGroup actions.

        This data type is used as a response element in the DescribeEngineDefaultParameters and DescribeDBParameters actions.

        ", "refs": { "ParametersList$member": null } }, "ParametersList": { "base": null, "refs": { "DBParameterGroupDetails$Parameters": "

        A list of Parameter instances.

        ", "EngineDefaults$Parameters": "

        Contains a list of engine default parameters.

        ", "ModifyDBParameterGroupMessage$Parameters": "

        An array of parameter names, values, and the apply method for the parameter update. At least one parameter name, value, and apply method must be supplied; subsequent arguments are optional. A maximum of 20 parameters may be modified in a single request.

        Valid Values (for the application method): immediate | pending-reboot

        You can use the immediate value with dynamic parameters only. You can use the pending-reboot value for both dynamic and static parameters, and changes are applied when DB Instance reboots. ", "ResetDBParameterGroupMessage$Parameters": "

        An array of parameter names, values, and the apply method for the parameter update. At least one parameter name, value, and apply method must be supplied; subsequent arguments are optional. A maximum of 20 parameters may be modified in a single request.

        MySQL

        Valid Values (for Apply method): immediate | pending-reboot

        You can use the immediate value with dynamic parameters only. You can use the pending-reboot value for both dynamic and static parameters, and changes are applied when DB Instance reboots.

        Oracle

        Valid Values (for Apply method): pending-reboot

        " } }, "PendingModifiedValues": { "base": "

        This data type is used as a response element in the ModifyDBInstance action.

        ", "refs": { "DBInstance$PendingModifiedValues": "

        Specifies that changes to the DB Instance are pending. This element is only included when changes are pending. Specific changes are identified by subelements.

        " } }, "PointInTimeRestoreNotEnabledFault": { "base": "

        SourceDBInstanceIdentifier refers to a DB instance with BackupRetentionPeriod equal to 0.

        ", "refs": { } }, "PromoteReadReplicaMessage": { "base": "

        ", "refs": { } }, "PromoteReadReplicaResult": { "base": null, "refs": { } }, "ProvisionedIopsNotAvailableInAZFault": { "base": "

        Provisioned IOPS not available in the specified Availability Zone.

        ", "refs": { } }, "PurchaseReservedDBInstancesOfferingMessage": { "base": "

        ", "refs": { } }, "PurchaseReservedDBInstancesOfferingResult": { "base": null, "refs": { } }, "ReadReplicaDBInstanceIdentifierList": { "base": null, "refs": { "DBInstance$ReadReplicaDBInstanceIdentifiers": "

        Contains one or more identifiers of the Read Replicas associated with this DB Instance.

        " } }, "RebootDBInstanceMessage": { "base": "

        ", "refs": { } }, "RebootDBInstanceResult": { "base": null, "refs": { } }, "RecurringCharge": { "base": "

        This data type is used as a response element in the DescribeReservedDBInstances and DescribeReservedDBInstancesOfferings actions.

        ", "refs": { "RecurringChargeList$member": null } }, "RecurringChargeList": { "base": null, "refs": { "ReservedDBInstance$RecurringCharges": "

        The recurring price charged to run this reserved DB Instance.

        ", "ReservedDBInstancesOffering$RecurringCharges": "

        The recurring price charged to run this reserved DB Instance.

        " } }, "RemoveSourceIdentifierFromSubscriptionMessage": { "base": "

        ", "refs": { } }, "RemoveSourceIdentifierFromSubscriptionResult": { "base": null, "refs": { } }, "RemoveTagsFromResourceMessage": { "base": "

        ", "refs": { } }, "ReservedDBInstance": { "base": "

        This data type is used as a response element in the DescribeReservedDBInstances and PurchaseReservedDBInstancesOffering actions.

        ", "refs": { "PurchaseReservedDBInstancesOfferingResult$ReservedDBInstance": null, "ReservedDBInstanceList$member": null } }, "ReservedDBInstanceAlreadyExistsFault": { "base": "

        User already has a reservation with the given identifier.

        ", "refs": { } }, "ReservedDBInstanceList": { "base": null, "refs": { "ReservedDBInstanceMessage$ReservedDBInstances": "

        A list of of reserved DB Instances.

        " } }, "ReservedDBInstanceMessage": { "base": "

        Contains the result of a successful invocation of the DescribeReservedDBInstances action.

        ", "refs": { } }, "ReservedDBInstanceNotFoundFault": { "base": "

        The specified reserved DB Instance not found.

        ", "refs": { } }, "ReservedDBInstanceQuotaExceededFault": { "base": "

        Request would exceed the user's DB Instance quota.

        ", "refs": { } }, "ReservedDBInstancesOffering": { "base": "

        This data type is used as a response element in the DescribeReservedDBInstancesOfferings action.

        ", "refs": { "ReservedDBInstancesOfferingList$member": null } }, "ReservedDBInstancesOfferingList": { "base": null, "refs": { "ReservedDBInstancesOfferingMessage$ReservedDBInstancesOfferings": "

        A list of reserved DB Instance offerings.

        " } }, "ReservedDBInstancesOfferingMessage": { "base": "

        Contains the result of a successful invocation of the DescribeReservedDBInstancesOfferings action.

        ", "refs": { } }, "ReservedDBInstancesOfferingNotFoundFault": { "base": "

        Specified offering does not exist.

        ", "refs": { } }, "ResetDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "RestoreDBInstanceFromDBSnapshotMessage": { "base": "

        ", "refs": { } }, "RestoreDBInstanceFromDBSnapshotResult": { "base": null, "refs": { } }, "RestoreDBInstanceToPointInTimeMessage": { "base": "

        ", "refs": { } }, "RestoreDBInstanceToPointInTimeResult": { "base": null, "refs": { } }, "RevokeDBSecurityGroupIngressMessage": { "base": "

        ", "refs": { } }, "RevokeDBSecurityGroupIngressResult": { "base": null, "refs": { } }, "SNSInvalidTopicFault": { "base": "

        SNS has responded that there is a problem with the SND topic specified.

        ", "refs": { } }, "SNSNoAuthorizationFault": { "base": "

        You do not have permission to publish to the SNS topic ARN.

        ", "refs": { } }, "SNSTopicArnNotFoundFault": { "base": "

        The SNS topic ARN does not exist.

        ", "refs": { } }, "SnapshotQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB snapshots.

        ", "refs": { } }, "SourceIdsList": { "base": null, "refs": { "CreateEventSubscriptionMessage$SourceIds": "

        The list of identifiers of the event sources for which events will be returned. If not specified, then all sources are included in the response. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it cannot end with a hyphen or contain two consecutive hyphens.

        Constraints:

        • If SourceIds are supplied, SourceType must also be provided.
        • If the source type is a DB instance, then a DBInstanceIdentifier must be supplied.
        • If the source type is a DB security group, a DBSecurityGroupName must be supplied.
        • If the source type is a DB parameter group, a DBParameterGroupName must be supplied.
        • If the source type is a DB Snapshot, a DBSnapshotIdentifier must be supplied.
        ", "EventSubscription$SourceIdsList": "

        A list of source Ids for the RDS event notification subscription.

        " } }, "SourceNotFoundFault": { "base": "

        The requested source could not be found.

        ", "refs": { } }, "SourceType": { "base": null, "refs": { "DescribeEventsMessage$SourceType": "

        The event source to retrieve events for. If no value is specified, all events are returned.

        ", "Event$SourceType": "

        Specifies the source type for this event.

        " } }, "StorageQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed amount of storage available across all DB instances.

        ", "refs": { } }, "String": { "base": null, "refs": { "AddSourceIdentifierToSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to add a source identifier to.

        ", "AddSourceIdentifierToSubscriptionMessage$SourceIdentifier": "

        The identifier of the event source to be added. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it cannot end with a hyphen or contain two consecutive hyphens.

        Constraints:

        • If the source type is a DB instance, then a DBInstanceIdentifier must be supplied.
        • If the source type is a DB security group, a DBSecurityGroupName must be supplied.
        • If the source type is a DB parameter group, a DBParameterGroupName must be supplied.
        • If the source type is a DB Snapshot, a DBSnapshotIdentifier must be supplied.
        ", "AddTagsToResourceMessage$ResourceName": "

        The DB Instance the tags will be added to. This value is an Amazon Resource Name (ARN). For information about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN).

        ", "AuthorizeDBSecurityGroupIngressMessage$DBSecurityGroupName": "

        The name of the DB Security Group to add authorization to.

        ", "AuthorizeDBSecurityGroupIngressMessage$CIDRIP": "

        The IP range to authorize.

        ", "AuthorizeDBSecurityGroupIngressMessage$EC2SecurityGroupName": "

        Name of the EC2 Security Group to authorize. For VPC DB Security Groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "AuthorizeDBSecurityGroupIngressMessage$EC2SecurityGroupId": "

        Id of the EC2 Security Group to authorize. For VPC DB Security Groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "AuthorizeDBSecurityGroupIngressMessage$EC2SecurityGroupOwnerId": "

        AWS Account Number of the owner of the EC2 Security Group specified in the EC2SecurityGroupName parameter. The AWS Access Key ID is not an acceptable value. For VPC DB Security Groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "AvailabilityZone$Name": "

        The name of the availability zone.

        ", "CharacterSet$CharacterSetName": "

        The name of the character set.

        ", "CharacterSet$CharacterSetDescription": "

        The description of the character set.

        ", "CopyDBSnapshotMessage$SourceDBSnapshotIdentifier": "

        The identifier for the source DB snapshot.

        Constraints:

        • Must be the identifier for a valid system snapshot in the \"available\" state.

        Example: rds:mydb-2012-04-02-00-01

        ", "CopyDBSnapshotMessage$TargetDBSnapshotIdentifier": "

        The identifier for the copied snapshot.

        Constraints:

        • Cannot be null, empty, or blank
        • Must contain from 1 to 255 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-db-snapshot

        ", "CreateDBInstanceMessage$DBName": "

        The meaning of this parameter differs according to the database engine you use.

        MySQL

        The name of the database to create when the DB Instance is created. If this parameter is not specified, no database is created in the DB Instance.

        Constraints:

        • Must contain 1 to 64 alphanumeric characters
        • Cannot be a word reserved by the specified database engine

        Type: String

        Oracle

        The Oracle System ID (SID) of the created DB Instance.

        Default: ORCL

        Constraints:

        • Cannot be longer than 8 characters

        SQL Server

        Not applicable. Must be null.

        ", "CreateDBInstanceMessage$DBInstanceIdentifier": "

        The DB Instance identifier. This parameter is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens (1 to 15 for SQL Server).
        • First character must be a letter.
        • Cannot end with a hyphen or contain two consecutive hyphens.

        Example: mydbinstance

        ", "CreateDBInstanceMessage$DBInstanceClass": "

        The compute and memory capacity of the DB Instance.

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.xlarge |db.m2.2xlarge | db.m2.4xlarge

        ", "CreateDBInstanceMessage$Engine": "

        The name of the database engine to be used for this instance.

        Valid Values: MySQL | oracle-se1 | oracle-se | oracle-ee | sqlserver-ee | sqlserver-se | sqlserver-ex | sqlserver-web

        ", "CreateDBInstanceMessage$MasterUsername": "

        The name of master user for the client DB Instance.

        MySQL

        Constraints:

        • Must be 1 to 16 alphanumeric characters.
        • First character must be a letter.
        • Cannot be a reserved word for the chosen database engine.

        Type: String

        Oracle

        Constraints:

        • Must be 1 to 30 alphanumeric characters.
        • First character must be a letter.
        • Cannot be a reserved word for the chosen database engine.

        SQL Server

        Constraints:

        • Must be 1 to 128 alphanumeric characters.
        • First character must be a letter.
        • Cannot be a reserved word for the chosen database engine.
        ", "CreateDBInstanceMessage$MasterUserPassword": "

        The password for the master database user. Can be any printable ASCII character except \"/\", \"\\\", or \"@\".

        Type: String

        MySQL

        Constraints: Must contain from 8 to 41 alphanumeric characters.

        Oracle

        Constraints: Must contain from 8 to 30 alphanumeric characters.

        SQL Server

        Constraints: Must contain from 8 to 128 alphanumeric characters.

        ", "CreateDBInstanceMessage$AvailabilityZone": "

        The EC2 Availability Zone that the database instance will be created in.

        Default: A random, system-chosen Availability Zone in the endpoint's region.

        Example: us-east-1d

        Constraint: The AvailabilityZone parameter cannot be specified if the MultiAZ parameter is set to true. The specified Availability Zone must be in the same region as the current endpoint.

        ", "CreateDBInstanceMessage$DBSubnetGroupName": "

        A DB Subnet Group to associate with this DB Instance.

        If there is no DB Subnet Group, then it is a non-VPC DB instance.

        ", "CreateDBInstanceMessage$PreferredMaintenanceWindow": "

        The weekly time range (in UTC) during which system maintenance can occur.

        Format: ddd:hh24:mi-ddd:hh24:mi

        Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week. To see the time blocks available, see Adjusting the Preferred Maintenance Window in the Amazon RDS User Guide.

        Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun

        Constraints: Minimum 30-minute window.

        ", "CreateDBInstanceMessage$DBParameterGroupName": "

        The name of the DB Parameter Group to associate with this DB instance. If this argument is omitted, the default DBParameterGroup for the specified engine will be used.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "CreateDBInstanceMessage$PreferredBackupWindow": "

        The daily time range during which automated backups are created if automated backups are enabled, using the BackupRetentionPeriod parameter.

        Default: A 30-minute window selected at random from an 8-hour block of time per region. The following list shows the time blocks for each region from which the default backup windows are assigned.

        • US-East (Northern Virginia) Region: 03:00-11:00 UTC
        • US-West (Northern California) Region: 06:00-14:00 UTC
        • EU (Ireland) Region: 22:00-06:00 UTC
        • Asia Pacific (Singapore) Region: 14:00-22:00 UTC
        • Asia Pacific (Tokyo) Region: 17:00-03:00 UTC

        Constraints: Must be in the format hh24:mi-hh24:mi. Times should be Universal Time Coordinated (UTC). Must not conflict with the preferred maintenance window. Must be at least 30 minutes.

        ", "CreateDBInstanceMessage$EngineVersion": "

        The version number of the database engine to use.

        MySQL

        Example: 5.1.42

        Type: String

        Oracle

        Example: 11.2.0.2.v2

        Type: String

        SQL Server

        Example: 10.50.2789.0.v1

        ", "CreateDBInstanceMessage$LicenseModel": "

        License model information for this DB Instance.

        Valid values: license-included | bring-your-own-license | general-public-license

        ", "CreateDBInstanceMessage$OptionGroupName": "

        Indicates that the DB Instance should be associated with the specified option group.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "CreateDBInstanceMessage$CharacterSetName": "

        For supported engines, indicates that the DB Instance should be associated with the specified CharacterSet.

        ", "CreateDBInstanceReadReplicaMessage$DBInstanceIdentifier": "

        The DB Instance identifier of the Read Replica. This is the unique key that identifies a DB Instance. This parameter is stored as a lowercase string.

        ", "CreateDBInstanceReadReplicaMessage$SourceDBInstanceIdentifier": "

        The identifier of the DB Instance that will act as the source for the Read Replica. Each DB Instance can have up to five Read Replicas.

        Constraints: Must be the identifier of an existing DB Instance that is not already a Read Replica DB Instance.

        ", "CreateDBInstanceReadReplicaMessage$DBInstanceClass": "

        The compute and memory capacity of the Read Replica.

        Valid Values: db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.xlarge |db.m2.2xlarge | db.m2.4xlarge

        Default: Inherits from the source DB Instance.

        ", "CreateDBInstanceReadReplicaMessage$AvailabilityZone": "

        The Amazon EC2 Availability Zone that the Read Replica will be created in.

        Default: A random, system-chosen Availability Zone in the endpoint's region.

        Example: us-east-1d

        ", "CreateDBInstanceReadReplicaMessage$OptionGroupName": "

        The option group the DB instance will be associated with. If omitted, the default Option Group for the engine specified will be used.

        ", "CreateDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB Parameter Group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        This value is stored as a lower-case string.", "CreateDBParameterGroupMessage$DBParameterGroupFamily": "

        The DB Parameter Group Family name. A DB Parameter Group can be associated with one and only one DB Parameter Group Family, and can be applied only to a DB Instance running a database engine and engine version compatible with that DB Parameter Group Family.

        ", "CreateDBParameterGroupMessage$Description": "

        The description for the DB Parameter Group.

        ", "CreateDBSecurityGroupMessage$DBSecurityGroupName": "

        The name for the DB Security Group. This value is stored as a lowercase string.

        Constraints: Must contain no more than 255 alphanumeric characters or hyphens. Must not be \"Default\".

        Example: mysecuritygroup

        ", "CreateDBSecurityGroupMessage$DBSecurityGroupDescription": "

        The description for the DB Security Group.

        ", "CreateDBSnapshotMessage$DBSnapshotIdentifier": "

        The identifier for the DB Snapshot.

        Constraints:

        • Cannot be null, empty, or blank
        • Must contain from 1 to 255 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-snapshot-id

        ", "CreateDBSnapshotMessage$DBInstanceIdentifier": "

        The DB Instance identifier. This is the unique key that identifies a DB Instance. This parameter isn't case sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "CreateDBSubnetGroupMessage$DBSubnetGroupName": "

        The name for the DB Subnet Group. This value is stored as a lowercase string.

        Constraints: Must contain no more than 255 alphanumeric characters or hyphens. Must not be \"Default\".

        Example: mySubnetgroup

        ", "CreateDBSubnetGroupMessage$DBSubnetGroupDescription": "

        The description for the DB Subnet Group.

        ", "CreateEventSubscriptionMessage$SubscriptionName": "

        The name of the subscription.

        Constraints: The name must be less than 255 characters.

        ", "CreateEventSubscriptionMessage$SnsTopicArn": "

        The Amazon Resource Name (ARN) of the SNS topic created for event notification. The ARN is created by Amazon SNS when you create a topic and subscribe to it.

        ", "CreateEventSubscriptionMessage$SourceType": "

        The type of source that will be generating the events. For example, if you want to be notified of events generated by a DB instance, you would set this parameter to db-instance. if this value is not specified, all events are returned.

        Valid values: db-instance | db-parameter-group | db-security-group | db-snapshot

        ", "CreateOptionGroupMessage$OptionGroupName": "

        Specifies the name of the option group to be created.

        Constraints:

        • Must be 1 to 255 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: myOptiongroup

        ", "CreateOptionGroupMessage$EngineName": "

        Specifies the name of the engine that this option group should be associated with.

        ", "CreateOptionGroupMessage$MajorEngineVersion": "

        Specifies the major version of the engine that this option group should be associated with.

        ", "CreateOptionGroupMessage$OptionGroupDescription": "

        The description of the option group.

        ", "DBEngineVersion$Engine": "

        The name of the database engine.

        ", "DBEngineVersion$EngineVersion": "

        The version number of the database engine.

        ", "DBEngineVersion$DBParameterGroupFamily": "

        The name of the DBParameterGroupFamily for the database engine.

        ", "DBEngineVersion$DBEngineDescription": "

        The description of the database engine.

        ", "DBEngineVersion$DBEngineVersionDescription": "

        The description of the database engine version.

        ", "DBEngineVersionMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBInstance$DBInstanceIdentifier": "

        Contains a user-supplied database identifier. This is the unique key that identifies a DB Instance.

        ", "DBInstance$DBInstanceClass": "

        Contains the name of the compute and memory capacity class of the DB Instance.

        ", "DBInstance$Engine": "

        Provides the name of the database engine to be used for this DB Instance.

        ", "DBInstance$DBInstanceStatus": "

        Specifies the current state of this database.

        ", "DBInstance$MasterUsername": "

        Contains the master username for the DB Instance.

        ", "DBInstance$DBName": "

        The meaning of this parameter differs according to the database engine you use.

        MySQL

        Contains the name of the initial database of this instance that was provided at create time, if one was specified when the DB Instance was created. This same name is returned for the life of the DB Instance.

        Type: String

        Oracle

        Contains the Oracle System ID (SID) of the created DB Instance.

        ", "DBInstance$PreferredBackupWindow": "

        Specifies the daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod.

        ", "DBInstance$AvailabilityZone": "

        Specifies the name of the Availability Zone the DB Instance is located in.

        ", "DBInstance$PreferredMaintenanceWindow": "

        Specifies the weekly time range (in UTC) during which system maintenance can occur.

        ", "DBInstance$EngineVersion": "

        Indicates the database engine version.

        ", "DBInstance$ReadReplicaSourceDBInstanceIdentifier": "

        Contains the identifier of the source DB Instance if this DB Instance is a Read Replica.

        ", "DBInstance$LicenseModel": "

        License model information for this DB Instance.

        ", "DBInstance$CharacterSetName": "

        If present, specifies the name of the character set that this instance is associated with.

        ", "DBInstance$SecondaryAvailabilityZone": "

        If present, specifies the name of the secondary Availability Zone for a DB instance with multi-AZ support.

        ", "DBInstanceMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DBParameterGroup$DBParameterGroupName": "

        Provides the name of the DB Parameter Group.

        ", "DBParameterGroup$DBParameterGroupFamily": "

        Provides the name of the DB Parameter Group Family that this DB Parameter Group is compatible with.

        ", "DBParameterGroup$Description": "

        Provides the customer-specified description for this DB Parameter Group.

        ", "DBParameterGroupDetails$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBParameterGroupNameMessage$DBParameterGroupName": "

        The name of the DB Parameter Group.

        ", "DBParameterGroupStatus$DBParameterGroupName": "

        The name of the DP Parameter Group.

        ", "DBParameterGroupStatus$ParameterApplyStatus": "

        The status of parameter updates.

        ", "DBParameterGroupsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBSecurityGroup$OwnerId": "

        Provides the AWS ID of the owner of a specific DB Security Group.

        ", "DBSecurityGroup$DBSecurityGroupName": "

        Specifies the name of the DB Security Group.

        ", "DBSecurityGroup$DBSecurityGroupDescription": "

        Provides the description of the DB Security Group.

        ", "DBSecurityGroup$VpcId": "

        Provides the VpcId of the DB Security Group.

        ", "DBSecurityGroupMembership$DBSecurityGroupName": "

        The name of the DB Security Group.

        ", "DBSecurityGroupMembership$Status": "

        The status of the DB Security Group.

        ", "DBSecurityGroupMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBSecurityGroupNameList$member": null, "DBSnapshot$DBSnapshotIdentifier": "

        Specifies the identifier for the DB Snapshot.

        ", "DBSnapshot$DBInstanceIdentifier": "

        Specifies the the DBInstanceIdentifier of the DB Instance this DB Snapshot was created from.

        ", "DBSnapshot$Engine": "

        Specifies the name of the database engine.

        ", "DBSnapshot$Status": "

        Specifies the status of this DB Snapshot.

        ", "DBSnapshot$AvailabilityZone": "

        Specifies the name of the Availability Zone the DB Instance was located in at the time of the DB Snapshot.

        ", "DBSnapshot$VpcId": "

        Provides the Vpc Id associated with the DB Snapshot.

        ", "DBSnapshot$MasterUsername": "

        Provides the master username for the DB Snapshot.

        ", "DBSnapshot$EngineVersion": "

        Specifies the version of the database engine.

        ", "DBSnapshot$LicenseModel": "

        License model information for the restored DB Instance.

        ", "DBSnapshot$SnapshotType": "

        Provides the type of the DB Snapshot.

        ", "DBSnapshot$OptionGroupName": "

        Provides the option group name for the DB Snapshot.

        ", "DBSnapshotMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBSubnetGroup$DBSubnetGroupName": "

        Specifies the name of the DB Subnet Group.

        ", "DBSubnetGroup$DBSubnetGroupDescription": "

        Provides the description of the DB Subnet Group.

        ", "DBSubnetGroup$VpcId": "

        Provides the VpcId of the DB Subnet Group.

        ", "DBSubnetGroup$SubnetGroupStatus": "

        Provides the status of the DB Subnet Group.

        ", "DBSubnetGroupMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DeleteDBInstanceMessage$DBInstanceIdentifier": "

        The DB Instance identifier for the DB Instance to be deleted. This parameter isn't case sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DeleteDBInstanceMessage$FinalDBSnapshotIdentifier": "

        The DBSnapshotIdentifier of the new DBSnapshot created when SkipFinalSnapshot is set to false.

        Specifying this parameter and also setting the SkipFinalShapshot parameter to true results in an error.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DeleteDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB Parameter Group.

        Constraints:

        • Must be the name of an existing DB Parameter Group
        • You cannot delete a default DB Parameter Group
        • Cannot be associated with any DB Instances
        ", "DeleteDBSecurityGroupMessage$DBSecurityGroupName": "

        The name of the DB Security Group to delete.

        You cannot delete the default DB Security Group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DeleteDBSnapshotMessage$DBSnapshotIdentifier": "

        The DBSnapshot identifier.

        Constraints: Must be the name of an existing DB Snapshot in the available state.

        ", "DeleteDBSubnetGroupMessage$DBSubnetGroupName": "

        The name of the database subnet group to delete.

        You cannot delete the default subnet group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DeleteEventSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to delete.

        ", "DeleteOptionGroupMessage$OptionGroupName": "

        The name of the option group to be deleted.

        You cannot delete default Option Groups.", "DescribeDBEngineVersionsMessage$Engine": "

        The database engine to return.

        ", "DescribeDBEngineVersionsMessage$EngineVersion": "

        The database engine version to return.

        Example: 5.1.49

        ", "DescribeDBEngineVersionsMessage$DBParameterGroupFamily": "

        The name of a specific DB Parameter Group family to return details for.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBEngineVersionsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBInstancesMessage$DBInstanceIdentifier": "

        The user-supplied instance identifier. If this parameter is specified, information from only the specific DB Instance is returned. This parameter isn't case sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBInstancesMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBInstances request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DescribeDBLogFilesDetails$LogFileName": "

        The name of the log file for the specified DB instance.

        ", "DescribeDBLogFilesMessage$DBInstanceIdentifier": "

        The customer-assigned name of the DB Instance that contains the log files you want to list.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBLogFilesMessage$FilenameContains": "

        Filters the available log files for log file names that contain the specified string.

        ", "DescribeDBLogFilesMessage$Marker": "

        The pagination token provided in the previous request. If this parameter is specified the response includes only records beyond the marker, up to MaxRecords.

        ", "DescribeDBLogFilesResponse$Marker": "

        An optional paging token.

        ", "DescribeDBParameterGroupsMessage$DBParameterGroupName": "

        The name of a specific DB Parameter Group to return details for.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBParameterGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBParameterGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBParametersMessage$DBParameterGroupName": "

        The name of a specific DB Parameter Group to return details for.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBParametersMessage$Source": "

        The parameter types to return.

        Default: All parameter types returned

        Valid Values: user | system | engine-default

        ", "DescribeDBParametersMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBParameters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBSecurityGroupsMessage$DBSecurityGroupName": "

        The name of the DB Security Group to return details for.

        ", "DescribeDBSecurityGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBSecurityGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBSnapshotsMessage$DBInstanceIdentifier": "

        A DB Instance Identifier to retrieve the list of DB Snapshots for. Cannot be used in conjunction with DBSnapshotIdentifier. This parameter isn't case sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBSnapshotsMessage$DBSnapshotIdentifier": "

        A specific DB Snapshot Identifier to describe. Cannot be used in conjunction with DBInstanceIdentifier. This value is stored as a lowercase string.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        • If this is the identifier of an automated snapshot, the SnapshotType parameter must also be specified.
        ", "DescribeDBSnapshotsMessage$SnapshotType": "

        An optional snapshot type for which snapshots will be returned. If not specified, the returned results will include snapshots of all types.

        ", "DescribeDBSnapshotsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBSnapshots request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBSubnetGroupsMessage$DBSubnetGroupName": "

        The name of the DB Subnet Group to return details for.

        ", "DescribeDBSubnetGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBSubnetGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeEngineDefaultParametersMessage$DBParameterGroupFamily": "

        The name of the DB Parameter Group Family.

        ", "DescribeEngineDefaultParametersMessage$Marker": "

        An optional pagination token provided by a previous DescribeEngineDefaultParameters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeEventCategoriesMessage$SourceType": "

        The type of source that will be generating the events.

        Valid values: db-instance | db-parameter-group | db-security-group | db-snapshot

        ", "DescribeEventSubscriptionsMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to describe.

        ", "DescribeEventSubscriptionsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DescribeEventsMessage$SourceIdentifier": "

        The identifier of the event source for which events will be returned. If not specified, then all sources are included in the response.

        Constraints:

        • If SourceIdentifier is supplied, SourceType must also be provided.
        • If the source type is DBInstance, then a DBInstanceIdentifier must be supplied.
        • If the source type is DBSecurityGroup, a DBSecurityGroupName must be supplied.
        • If the source type is DBParameterGroup, a DBParameterGroupName must be supplied.
        • If the source type is DBSnapshot, a DBSnapshotIdentifier must be supplied.
        • Cannot end with a hyphen or contain two consecutive hyphens.
        ", "DescribeEventsMessage$Marker": "

        An optional pagination token provided by a previous DescribeEvents request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeOptionGroupOptionsMessage$EngineName": "

        A required parameter. Options available for the given Engine name will be described.

        ", "DescribeOptionGroupOptionsMessage$MajorEngineVersion": "

        If specified, filters the results to include only options for the specified major engine version.

        ", "DescribeOptionGroupOptionsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeOptionGroupsMessage$OptionGroupName": "

        The name of the option group to describe. Cannot be supplied together with EngineName or MajorEngineVersion.

        ", "DescribeOptionGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOptionGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeOptionGroupsMessage$EngineName": "

        Filters the list of option groups to only include groups associated with a specific database engine.

        ", "DescribeOptionGroupsMessage$MajorEngineVersion": "

        Filters the list of option groups to only include groups associated with a specific database engine version. If specified, then EngineName must also be specified.

        ", "DescribeOrderableDBInstanceOptionsMessage$Engine": "

        The name of the engine to retrieve DB Instance options for.

        ", "DescribeOrderableDBInstanceOptionsMessage$EngineVersion": "

        The engine version filter value. Specify this parameter to show only the available offerings matching the specified engine version.

        ", "DescribeOrderableDBInstanceOptionsMessage$DBInstanceClass": "

        The DB Instance class filter value. Specify this parameter to show only the available offerings matching the specified DB Instance class.

        ", "DescribeOrderableDBInstanceOptionsMessage$LicenseModel": "

        The license model filter value. Specify this parameter to show only the available offerings matching the specified license model.

        ", "DescribeOrderableDBInstanceOptionsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DescribeReservedDBInstancesMessage$ReservedDBInstanceId": "

        The reserved DB Instance identifier filter value. Specify this parameter to show only the reservation that matches the specified reservation ID.

        ", "DescribeReservedDBInstancesMessage$ReservedDBInstancesOfferingId": "

        The offering identifier filter value. Specify this parameter to show only purchased reservations matching the specified offering identifier.

        ", "DescribeReservedDBInstancesMessage$DBInstanceClass": "

        The DB Instance class filter value. Specify this parameter to show only those reservations matching the specified DB Instances class.

        ", "DescribeReservedDBInstancesMessage$Duration": "

        The duration filter value, specified in years or seconds. Specify this parameter to show only reservations for this duration.

        Valid Values: 1 | 3 | 31536000 | 94608000

        ", "DescribeReservedDBInstancesMessage$ProductDescription": "

        The product description filter value. Specify this parameter to show only those reservations matching the specified product description.

        ", "DescribeReservedDBInstancesMessage$OfferingType": "

        The offering type filter value. Specify this parameter to show only the available offerings matching the specified offering type.

        Valid Values: \"Light Utilization\" | \"Medium Utilization\" | \"Heavy Utilization\"

        ", "DescribeReservedDBInstancesMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeReservedDBInstancesOfferingsMessage$ReservedDBInstancesOfferingId": "

        The offering identifier filter value. Specify this parameter to show only the available offering that matches the specified reservation identifier.

        Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706

        ", "DescribeReservedDBInstancesOfferingsMessage$DBInstanceClass": "

        The DB Instance class filter value. Specify this parameter to show only the available offerings matching the specified DB Instance class.

        ", "DescribeReservedDBInstancesOfferingsMessage$Duration": "

        Duration filter value, specified in years or seconds. Specify this parameter to show only reservations for this duration.

        Valid Values: 1 | 3 | 31536000 | 94608000

        ", "DescribeReservedDBInstancesOfferingsMessage$ProductDescription": "

        Product description filter value. Specify this parameter to show only the available offerings matching the specified product description.

        ", "DescribeReservedDBInstancesOfferingsMessage$OfferingType": "

        The offering type filter value. Specify this parameter to show only the available offerings matching the specified offering type.

        Valid Values: \"Light Utilization\" | \"Medium Utilization\" | \"Heavy Utilization\"

        ", "DescribeReservedDBInstancesOfferingsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DownloadDBLogFilePortionDetails$LogFileData": "

        Entries from the specified log file.

        ", "DownloadDBLogFilePortionDetails$Marker": "

        An optional pagination token provided by a previous DownloadDBLogFilePortion request.

        ", "DownloadDBLogFilePortionMessage$DBInstanceIdentifier": "

        The customer-assigned name of the DB Instance that contains the log files you want to list.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DownloadDBLogFilePortionMessage$LogFileName": "

        The name of the log file to be downloaded.

        ", "DownloadDBLogFilePortionMessage$Marker": "

        The pagination token provided in the previous request. If this parameter is specified the response includes only records beyond the marker, up to MaxRecords.

        ", "EC2SecurityGroup$Status": "

        Provides the status of the EC2 security group. Status can be \"authorizing\", \"authorized\", \"revoking\", and \"revoked\".

        ", "EC2SecurityGroup$EC2SecurityGroupName": "

        Specifies the name of the EC2 Security Group.

        ", "EC2SecurityGroup$EC2SecurityGroupId": "

        Specifies the id of the EC2 Security Group.

        ", "EC2SecurityGroup$EC2SecurityGroupOwnerId": "

        Specifies the AWS ID of the owner of the EC2 security group specified in the EC2SecurityGroupName field.

        ", "Endpoint$Address": "

        Specifies the DNS address of the DB Instance.

        ", "EngineDefaults$DBParameterGroupFamily": "

        Specifies the name of the DB Parameter Group Family which the engine default parameters apply to.

        ", "EngineDefaults$Marker": "

        An optional pagination token provided by a previous EngineDefaults request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "Event$SourceIdentifier": "

        Provides the identifier for the source of the event.

        ", "Event$Message": "

        Provides the text of this event.

        ", "EventCategoriesList$member": null, "EventCategoriesMap$SourceType": "

        The source type that the returned categories belong to

        ", "EventSubscription$CustomerAwsId": "

        The AWS customer account associated with the RDS event notification subscription.

        ", "EventSubscription$CustSubscriptionId": "

        The RDS event notification subscription Id.

        ", "EventSubscription$SnsTopicArn": "

        The topic ARN of the RDS event notification subscription.

        ", "EventSubscription$Status": "

        The status of the RDS event notification subscription.

        Constraints:

        Can be one of the following: creating | modifying | deleting | active | no-permission | topic-not-exist

        The status \"no-permission\" indicates that RDS no longer has permission to post to the SNS topic. The status \"topic-not-exist\" indicates that the topic was deleted after the subscription was created.

        ", "EventSubscription$SubscriptionCreationTime": "

        The time the RDS event notification subscription was created.

        ", "EventSubscription$SourceType": "

        The source type for the RDS event notification subscription.

        ", "EventSubscriptionsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "EventsMessage$Marker": "

        An optional pagination token provided by a previous Events request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "IPRange$Status": "

        Specifies the status of the IP range. Status can be \"authorizing\", \"authorized\", \"revoking\", and \"revoked\".

        ", "IPRange$CIDRIP": "

        Specifies the IP range.

        ", "KeyList$member": null, "ListTagsForResourceMessage$ResourceName": "

        The DB Instance with tags to be listed. This value is an Amazon Resource Name (ARN). For information about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN).

        ", "ModifyDBInstanceMessage$DBInstanceIdentifier": "

        The DB Instance identifier. This value is stored as a lowercase string.

        Constraints:

        • Must be the identifier for an existing DB Instance
        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "ModifyDBInstanceMessage$DBInstanceClass": "

        The new compute and memory capacity of the DB Instance. To determine the instance classes that are available for a particular DB engine, use the DescribeOrderableDBInstanceOptions action.

        Passing a value for this parameter causes an outage during the change and is applied during the next maintenance window, unless the ApplyImmediately parameter is specified as true for this request.

        Default: Uses existing setting

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.xlarge | db.m2.2xlarge | db.m2.4xlarge

        ", "ModifyDBInstanceMessage$MasterUserPassword": "

        The new password for the DB Instance master user. Can be any printable ASCII character except \"/\", \"\\\", or \"@\".

        Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible. Between the time of the request and the completion of the request, the MasterUserPassword element exists in the PendingModifiedValues element of the operation response.

        Default: Uses existing setting

        Constraints: Must be 8 to 41 alphanumeric characters (MySQL), 8 to 30 alphanumeric characters (Oracle), or 8 to 128 alphanumeric characters (SQL Server).

        Amazon RDS API actions never return the password, so this action provides a way to regain access to a master instance user if the password is lost. ", "ModifyDBInstanceMessage$DBParameterGroupName": "

        The name of the DB Parameter Group to apply to this DB Instance. Changing this parameter does not result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        Default: Uses existing setting

        Constraints: The DB Parameter Group must be in the same DB Parameter Group family as this DB Instance.

        ", "ModifyDBInstanceMessage$PreferredBackupWindow": "

        The daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod. Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible.

        Constraints:

        • Must be in the format hh24:mi-hh24:mi
        • Times should be Universal Time Coordinated (UTC)
        • Must not conflict with the preferred maintenance window
        • Must be at least 30 minutes
        ", "ModifyDBInstanceMessage$PreferredMaintenanceWindow": "

        The weekly time range (in UTC) during which system maintenance can occur, which may result in an outage. Changing this parameter does not result in an outage, except in the following situation, and the change is asynchronously applied as soon as possible. If there are pending actions that cause a reboot, and the maintenance window is changed to include the current time, then changing this parameter will cause a reboot of the DB Instance. If moving this window to the current time, there must be at least 30 minutes between the current time and end of the window to ensure pending changes are applied.

        Default: Uses existing setting

        Format: ddd:hh24:mi-ddd:hh24:mi

        Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

        Constraints: Must be at least 30 minutes

        ", "ModifyDBInstanceMessage$EngineVersion": "

        The version number of the database engine to upgrade to. Changing this parameter results in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        For major version upgrades, if a nondefault DB Parameter Group is currently in use, a new DB Parameter Group in the DB Parameter Group Family for the new engine version must be specified. The new DB Parameter Group can be the default for that DB Parameter Group Family.

        Example: 5.1.42

        ", "ModifyDBInstanceMessage$OptionGroupName": "

        Indicates that the DB Instance should be associated with the specified option group. Changing this parameter does not result in an outage except in the following case and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request. If the parameter change results in an option group that enables OEM, this change can cause a brief (sub-second) period during which new connections are rejected but existing connections are not interrupted.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "ModifyDBInstanceMessage$NewDBInstanceIdentifier": "

        The new DB Instance identifier for the DB Instance when renaming a DB Instance. This value is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "ModifyDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB Parameter Group.

        Constraints:

        • Must be the name of an existing DB Parameter Group
        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "ModifyDBSubnetGroupMessage$DBSubnetGroupName": "

        The name for the DB Subnet Group. This value is stored as a lowercase string.

        Constraints: Must contain no more than 255 alphanumeric characters or hyphens. Must not be \"Default\".

        Example: mySubnetgroup

        ", "ModifyDBSubnetGroupMessage$DBSubnetGroupDescription": "

        The description for the DB Subnet Group.

        ", "ModifyEventSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription.

        ", "ModifyEventSubscriptionMessage$SnsTopicArn": "

        The Amazon Resource Name (ARN) of the SNS topic created for event notification. The ARN is created by Amazon SNS when you create a topic and subscribe to it.

        ", "ModifyEventSubscriptionMessage$SourceType": "

        The type of source that will be generating the events. For example, if you want to be notified of events generated by a DB instance, you would set this parameter to db-instance. if this value is not specified, all events are returned.

        Valid values: db-instance | db-parameter-group | db-security-group | db-snapshot

        ", "ModifyOptionGroupMessage$OptionGroupName": "

        The name of the option group to be modified.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "Option$OptionName": "

        The name of the option.

        ", "Option$OptionDescription": "

        The description of the option.

        ", "OptionConfiguration$OptionName": "

        The configuration of options to include in a group.

        ", "OptionGroup$OptionGroupName": "

        Specifies the name of the option group.

        ", "OptionGroup$OptionGroupDescription": "

        Provides the description of the option group.

        ", "OptionGroup$EngineName": "

        Engine name that this option group can be applied to.

        ", "OptionGroup$MajorEngineVersion": "

        Indicates the major engine version associated with this option group.

        ", "OptionGroup$VpcId": "

        If AllowsVpcAndNonVpcInstanceMemberships is 'false', this field is blank. If AllowsVpcAndNonVpcInstanceMemberships is 'true' and this field is blank, then this option group can be applied to both VPC and non-VPC instances. If this field contains a value, then this option group can only be applied to instances that are in the VPC indicated by this field.

        ", "OptionGroupMembership$OptionGroupName": "

        The name of the option group that the instance belongs to.

        ", "OptionGroupMembership$Status": "

        The status of the DB Instance's option group membership (e.g. in-sync, pending, pending-maintenance, applying).

        ", "OptionGroupOption$Name": "

        The name of the option.

        ", "OptionGroupOption$Description": "

        The description of the option.

        ", "OptionGroupOption$EngineName": "

        Engine name that this option can be applied to.

        ", "OptionGroupOption$MajorEngineVersion": "

        Indicates the major engine version that the option is available for.

        ", "OptionGroupOption$MinimumRequiredMinorEngineVersion": "

        The minimum required engine version for the option to be applied.

        ", "OptionGroupOptionSetting$SettingName": "

        The name of the option group option.

        ", "OptionGroupOptionSetting$SettingDescription": "

        The description of the option group option.

        ", "OptionGroupOptionSetting$DefaultValue": "

        The default value for the option group option.

        ", "OptionGroupOptionSetting$ApplyType": "

        The DB engine specific parameter type for the option group option.

        ", "OptionGroupOptionSetting$AllowedValues": "

        Indicates the acceptable values for the option group option.

        ", "OptionGroupOptionsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "OptionGroups$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "OptionNamesList$member": null, "OptionSetting$Name": "

        The name of the option that has settings that you can set.

        ", "OptionSetting$Value": "

        The current value of the option setting.

        ", "OptionSetting$DefaultValue": "

        The default value of the option setting.

        ", "OptionSetting$Description": "

        The description of the option setting.

        ", "OptionSetting$ApplyType": "

        The DB engine specific parameter type.

        ", "OptionSetting$DataType": "

        The data type of the option setting.

        ", "OptionSetting$AllowedValues": "

        The allowed values of the option setting.

        ", "OptionsDependedOn$member": null, "OrderableDBInstanceOption$Engine": "

        The engine type of the orderable DB Instance.

        ", "OrderableDBInstanceOption$EngineVersion": "

        The engine version of the orderable DB Instance.

        ", "OrderableDBInstanceOption$DBInstanceClass": "

        The DB Instance Class for the orderable DB Instance

        ", "OrderableDBInstanceOption$LicenseModel": "

        The license model for the orderable DB Instance.

        ", "OrderableDBInstanceOptionsMessage$Marker": "

        An optional pagination token provided by a previous OrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "Parameter$ParameterName": "

        Specifies the name of the parameter.

        ", "Parameter$ParameterValue": "

        Specifies the value of the parameter.

        ", "Parameter$Description": "

        Provides a description of the parameter.

        ", "Parameter$Source": "

        Indicates the source of the parameter value.

        ", "Parameter$ApplyType": "

        Specifies the engine specific parameters type.

        ", "Parameter$DataType": "

        Specifies the valid data type for the parameter.

        ", "Parameter$AllowedValues": "

        Specifies the valid range of values for the parameter.

        ", "Parameter$MinimumEngineVersion": "

        The earliest engine version to which the parameter can apply.

        ", "PendingModifiedValues$DBInstanceClass": "

        Contains the new DBInstanceClass for the DB Instance that will be applied or is in progress.

        ", "PendingModifiedValues$MasterUserPassword": "

        Contains the pending or in-progress change of the master credentials for the DB Instance.

        ", "PendingModifiedValues$EngineVersion": "

        Indicates the database engine version.

        ", "PendingModifiedValues$DBInstanceIdentifier": "

        Contains the new DBInstanceIdentifier for the DB Instance that will be applied or is in progress.

        ", "PromoteReadReplicaMessage$DBInstanceIdentifier": "

        The DB Instance identifier. This value is stored as a lowercase string.

        Constraints:

        • Must be the identifier for an existing Read Replica DB Instance
        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: mydbinstance

        ", "PromoteReadReplicaMessage$PreferredBackupWindow": "

        The daily time range during which automated backups are created if automated backups are enabled, using the BackupRetentionPeriod parameter.

        Default: A 30-minute window selected at random from an 8-hour block of time per region. The following list shows the time blocks for each region from which the default backup windows are assigned.

        • US-East (Northern Virginia) Region: 03:00-11:00 UTC
        • US-West (Northern California) Region: 06:00-14:00 UTC
        • EU (Ireland) Region: 22:00-06:00 UTC
        • Asia Pacific (Singapore) Region: 14:00-22:00 UTC
        • Asia Pacific (Tokyo) Region: 17:00-03:00 UTC

        Constraints: Must be in the format hh24:mi-hh24:mi. Times should be Universal Time Coordinated (UTC). Must not conflict with the preferred maintenance window. Must be at least 30 minutes.

        ", "PurchaseReservedDBInstancesOfferingMessage$ReservedDBInstancesOfferingId": "

        The ID of the Reserved DB Instance offering to purchase.

        Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706

        ", "PurchaseReservedDBInstancesOfferingMessage$ReservedDBInstanceId": "

        Customer-specified identifier to track this reservation.

        Example: myreservationID

        ", "ReadReplicaDBInstanceIdentifierList$member": null, "RebootDBInstanceMessage$DBInstanceIdentifier": "

        The DB Instance identifier. This parameter is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RecurringCharge$RecurringChargeFrequency": "

        The frequency of the recurring charge.

        ", "RemoveSourceIdentifierFromSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to remove a source identifier from.

        ", "RemoveSourceIdentifierFromSubscriptionMessage$SourceIdentifier": "

        The source identifier to be removed from the subscription, such as the DB instance identifier for a DB instance or the name of a security group.

        ", "RemoveTagsFromResourceMessage$ResourceName": "

        The DB Instance the tags will be removed from. This value is an Amazon Resource Name (ARN). For information about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN).

        ", "ReservedDBInstance$ReservedDBInstanceId": "

        The unique identifier for the reservation.

        ", "ReservedDBInstance$ReservedDBInstancesOfferingId": "

        The offering identifier.

        ", "ReservedDBInstance$DBInstanceClass": "

        The DB instance class for the reserved DB Instance.

        ", "ReservedDBInstance$CurrencyCode": "

        The currency code for the reserved DB Instance.

        ", "ReservedDBInstance$ProductDescription": "

        The description of the reserved DB Instance.

        ", "ReservedDBInstance$OfferingType": "

        The offering type of this reserved DB Instance.

        ", "ReservedDBInstance$State": "

        The state of the reserved DB Instance.

        ", "ReservedDBInstanceMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "ReservedDBInstancesOffering$ReservedDBInstancesOfferingId": "

        The offering identifier.

        ", "ReservedDBInstancesOffering$DBInstanceClass": "

        The DB instance class for the reserved DB Instance.

        ", "ReservedDBInstancesOffering$CurrencyCode": "

        The currency code for the reserved DB Instance offering.

        ", "ReservedDBInstancesOffering$ProductDescription": "

        The database engine used by the offering.

        ", "ReservedDBInstancesOffering$OfferingType": "

        The offering type.

        ", "ReservedDBInstancesOfferingMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "ResetDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB Parameter Group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RestoreDBInstanceFromDBSnapshotMessage$DBInstanceIdentifier": "

        The identifier for the DB Snapshot to restore from.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RestoreDBInstanceFromDBSnapshotMessage$DBSnapshotIdentifier": "

        Name of the DB Instance to create from the DB Snapshot. This parameter isn't case sensitive.

        Constraints:

        • Must contain from 1 to 255 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-snapshot-id

        ", "RestoreDBInstanceFromDBSnapshotMessage$DBInstanceClass": "

        The compute and memory capacity of the Amazon RDS DB instance.

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.2xlarge | db.m2.4xlarge

        ", "RestoreDBInstanceFromDBSnapshotMessage$AvailabilityZone": "

        The EC2 Availability Zone that the database instance will be created in.

        Default: A random, system-chosen Availability Zone.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        Example: us-east-1a

        ", "RestoreDBInstanceFromDBSnapshotMessage$DBSubnetGroupName": "

        The DB Subnet Group name to use for the new instance.

        ", "RestoreDBInstanceFromDBSnapshotMessage$LicenseModel": "

        License model information for the restored DB Instance.

        Default: Same as source.

        Valid values: license-included | bring-your-own-license | general-public-license

        ", "RestoreDBInstanceFromDBSnapshotMessage$DBName": "

        The database name for the restored DB Instance.

        This parameter doesn't apply to the MySQL engine.

        ", "RestoreDBInstanceFromDBSnapshotMessage$Engine": "

        The database engine to use for the new instance.

        Default: The same as source

        Constraint: Must be compatible with the engine of the source

        Example: oracle-ee

        ", "RestoreDBInstanceFromDBSnapshotMessage$OptionGroupName": "

        The name of the option group to be used for the restored DB instance.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "RestoreDBInstanceToPointInTimeMessage$SourceDBInstanceIdentifier": "

        The identifier of the source DB Instance from which to restore.

        Constraints:

        • Must be the identifier of an existing database instance
        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RestoreDBInstanceToPointInTimeMessage$TargetDBInstanceIdentifier": "

        The name of the new database instance to be created.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RestoreDBInstanceToPointInTimeMessage$DBInstanceClass": "

        The compute and memory capacity of the Amazon RDS DB instance.

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.2xlarge | db.m2.4xlarge

        Default: The same DBInstanceClass as the original DB Instance.

        ", "RestoreDBInstanceToPointInTimeMessage$AvailabilityZone": "

        The EC2 Availability Zone that the database instance will be created in.

        Default: A random, system-chosen Availability Zone.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        Example: us-east-1a

        ", "RestoreDBInstanceToPointInTimeMessage$DBSubnetGroupName": "

        The DB subnet group name to use for the new instance.

        ", "RestoreDBInstanceToPointInTimeMessage$LicenseModel": "

        License model information for the restored DB Instance.

        Default: Same as source.

        Valid values: license-included | bring-your-own-license | general-public-license

        ", "RestoreDBInstanceToPointInTimeMessage$DBName": "

        The database name for the restored DB Instance.

        This parameter is not used for the MySQL engine.

        ", "RestoreDBInstanceToPointInTimeMessage$Engine": "

        The database engine to use for the new instance.

        Default: The same as source

        Constraint: Must be compatible with the engine of the source

        Example: oracle-ee

        ", "RestoreDBInstanceToPointInTimeMessage$OptionGroupName": "

        The name of the option group to be used for the restored DB instance.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "RevokeDBSecurityGroupIngressMessage$DBSecurityGroupName": "

        The name of the DB Security Group to revoke ingress from.

        ", "RevokeDBSecurityGroupIngressMessage$CIDRIP": "

        The IP range to revoke access from. Must be a valid CIDR range. If CIDRIP is specified, EC2SecurityGroupName, EC2SecurityGroupId and EC2SecurityGroupOwnerId cannot be provided.

        ", "RevokeDBSecurityGroupIngressMessage$EC2SecurityGroupName": "

        The name of the EC2 Security Group to revoke access from. For VPC DB Security Groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "RevokeDBSecurityGroupIngressMessage$EC2SecurityGroupId": "

        The id of the EC2 Security Group to revoke access from. For VPC DB Security Groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "RevokeDBSecurityGroupIngressMessage$EC2SecurityGroupOwnerId": "

        The AWS Account Number of the owner of the EC2 security group specified in the EC2SecurityGroupName parameter. The AWS Access Key ID is not an acceptable value. For VPC DB Security Groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "SourceIdsList$member": null, "Subnet$SubnetIdentifier": "

        Specifies the identifier of the subnet.

        ", "Subnet$SubnetStatus": "

        Specifies the status of the subnet.

        ", "SubnetIdentifierList$member": null, "Tag$Key": "

        A key is the required name of the tag. The string value can be from 1 to 128 Unicode characters in length and cannot be prefixed with \"aws:\". The string may only contain only the set of Unicode letters, digits, white-space, '_', '.', '/', '=', '+', '-' (Java regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:/=+\\\\-]*)$\").

        ", "Tag$Value": "

        A value is the optional value of the tag. The string value can be from 1 to 256 Unicode characters in length and cannot be prefixed with \"aws:\". The string may only contain only the set of Unicode letters, digits, white-space, '_', '.', '/', '=', '+', '-' (Java regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:/=+\\\\-]*)$\").

        ", "VpcSecurityGroupIdList$member": null, "VpcSecurityGroupMembership$VpcSecurityGroupId": "

        The name of the VPC security group.

        ", "VpcSecurityGroupMembership$Status": "

        The status of the VPC Security Group.

        " } }, "Subnet": { "base": "

        This data type is used as a response element in the DescribeDBSubnetGroups action.

        ", "refs": { "SubnetList$member": null } }, "SubnetAlreadyInUse": { "base": "

        The DB subnet is already in use in the Availability Zone.

        ", "refs": { } }, "SubnetIdentifierList": { "base": null, "refs": { "CreateDBSubnetGroupMessage$SubnetIds": "

        The EC2 Subnet IDs for the DB Subnet Group.

        ", "ModifyDBSubnetGroupMessage$SubnetIds": "

        The EC2 Subnet IDs for the DB Subnet Group.

        " } }, "SubnetList": { "base": null, "refs": { "DBSubnetGroup$Subnets": "

        Contains a list of Subnet elements.

        " } }, "SubscriptionAlreadyExistFault": { "base": "

        The supplied subscription name already exists.

        ", "refs": { } }, "SubscriptionCategoryNotFoundFault": { "base": "

        The supplied category does not exist.

        ", "refs": { } }, "SubscriptionNotFoundFault": { "base": "

        The subscription name does not exist.

        ", "refs": { } }, "SupportedCharacterSetsList": { "base": null, "refs": { "DBEngineVersion$SupportedCharacterSets": "

        A list of the character sets supported by this engine for the CharacterSetName parameter of the CreateDBInstance API.

        " } }, "TStamp": { "base": null, "refs": { "DBInstance$InstanceCreateTime": "

        Provides the date and time the DB Instance was created.

        ", "DBInstance$LatestRestorableTime": "

        Specifies the latest time to which a database can be restored with point-in-time restore.

        ", "DBSnapshot$SnapshotCreateTime": "

        Provides the time (UTC) when the snapshot was taken.

        ", "DBSnapshot$InstanceCreateTime": "

        Specifies the time (UTC) when the snapshot was taken.

        ", "DescribeEventsMessage$StartTime": "

        The beginning of the time interval to retrieve events for, specified in ISO 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia page.

        Example: 2009-07-08T18:00Z

        ", "DescribeEventsMessage$EndTime": "

        The end of the time interval for which to retrieve events, specified in ISO 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia page.

        Example: 2009-07-08T18:00Z

        ", "Event$Date": "

        Specifies the date and time of the event.

        ", "ReservedDBInstance$StartTime": "

        The time the reservation started.

        ", "RestoreDBInstanceToPointInTimeMessage$RestoreTime": "

        The date and time to restore from.

        Valid Values: Value must be a UTC time

        Constraints:

        • Must be before the latest restorable time for the DB Instance
        • Cannot be specified if UseLatestRestorableTime parameter is true

        Example: 2009-09-07T23:45:00Z

        " } }, "Tag": { "base": "

        Metadata assigned to a DB Instance consisting of a key-value pair.

        ", "refs": { "TagList$member": null } }, "TagList": { "base": "

        A list of tags.

        ", "refs": { "AddTagsToResourceMessage$Tags": "

        The tags to be assigned to the DB Instance.

        ", "TagListMessage$TagList": "

        List of tags returned by the ListTagsForResource operation.

        " } }, "TagListMessage": { "base": "

        ", "refs": { } }, "VpcSecurityGroupIdList": { "base": null, "refs": { "CreateDBInstanceMessage$VpcSecurityGroupIds": "

        A list of EC2 VPC Security Groups to associate with this DB Instance.

        Default: The default EC2 VPC Security Group for the DB Subnet group's VPC.

        ", "ModifyDBInstanceMessage$VpcSecurityGroupIds": "

        A list of EC2 VPC Security Groups to authorize on this DB Instance. This change is asynchronously applied as soon as possible.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "OptionConfiguration$VpcSecurityGroupMemberships": "

        A list of VpcSecurityGroupMemebrship name strings used for this option.

        " } }, "VpcSecurityGroupMembership": { "base": "

        This data type is used as a response element for queries on VPC security group membership.

        ", "refs": { "VpcSecurityGroupMembershipList$member": null } }, "VpcSecurityGroupMembershipList": { "base": null, "refs": { "DBInstance$VpcSecurityGroups": "

        Provides List of VPC security group elements that the DB Instance belongs to.

        ", "Option$VpcSecurityGroupMemberships": "

        If the option requires access to a port, then this VPC Security Group allows access to the port.

        " } } } } aws-sdk-go-1.4.22/models/apis/rds/2013-02-12/examples-1.json000066400000000000000000000000541300374646400224640ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/rds/2013-02-12/paginators-1.json000066400000000000000000000061311300374646400230170ustar00rootroot00000000000000{ "pagination": { "DescribeDBEngineVersions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBEngineVersions" }, "DescribeDBInstances": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBInstances" }, "DescribeDBLogFiles": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DescribeDBLogFiles" }, "DescribeDBParameterGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBParameterGroups" }, "DescribeDBParameters": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "Parameters" }, "DescribeDBSecurityGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBSecurityGroups" }, "DescribeDBSnapshots": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBSnapshots" }, "DescribeDBSubnetGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBSubnetGroups" }, "DescribeEngineDefaultParameters": { "input_token": "Marker", "output_token": "EngineDefaults.Marker", "limit_key": "MaxRecords", "result_key": "EngineDefaults.Parameters" }, "DescribeEventSubscriptions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "EventSubscriptionsList" }, "DescribeEvents": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "Events" }, "DescribeOptionGroupOptions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "OptionGroupOptions" }, "DescribeOptionGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "OptionGroupsList" }, "DescribeOrderableDBInstanceOptions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "OrderableDBInstanceOptions" }, "DescribeReservedDBInstances": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "ReservedDBInstances" }, "DescribeReservedDBInstancesOfferings": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "ReservedDBInstancesOfferings" }, "DownloadDBLogFilePortion": { "input_token": "Marker", "output_token": "Marker", "limit_key": "NumberOfLines", "more_results": "AdditionalDataPending", "result_key": "LogFileData" }, "ListTagsForResource": { "result_key": "TagList" } } } aws-sdk-go-1.4.22/models/apis/rds/2013-09-09/000077500000000000000000000000001300374646400176335ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/rds/2013-09-09/api-2.json000066400000000000000000002562331300374646400214510ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2013-09-09", "endpointPrefix":"rds", "protocol":"query", "serviceAbbreviation":"Amazon RDS", "serviceFullName":"Amazon Relational Database Service", "signatureVersion":"v4", "xmlNamespace":"http://rds.amazonaws.com/doc/2013-09-09/" }, "operations":{ "AddSourceIdentifierToSubscription":{ "name":"AddSourceIdentifierToSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddSourceIdentifierToSubscriptionMessage"}, "output":{ "shape":"AddSourceIdentifierToSubscriptionResult", "resultWrapper":"AddSourceIdentifierToSubscriptionResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"}, {"shape":"SourceNotFoundFault"} ] }, "AddTagsToResource":{ "name":"AddTagsToResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsToResourceMessage"}, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "AuthorizeDBSecurityGroupIngress":{ "name":"AuthorizeDBSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AuthorizeDBSecurityGroupIngressMessage"}, "output":{ "shape":"AuthorizeDBSecurityGroupIngressResult", "resultWrapper":"AuthorizeDBSecurityGroupIngressResult" }, "errors":[ {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"InvalidDBSecurityGroupStateFault"}, {"shape":"AuthorizationAlreadyExistsFault"}, {"shape":"AuthorizationQuotaExceededFault"} ] }, "CopyDBSnapshot":{ "name":"CopyDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopyDBSnapshotMessage"}, "output":{ "shape":"CopyDBSnapshotResult", "resultWrapper":"CopyDBSnapshotResult" }, "errors":[ {"shape":"DBSnapshotAlreadyExistsFault"}, {"shape":"DBSnapshotNotFoundFault"}, {"shape":"InvalidDBSnapshotStateFault"}, {"shape":"SnapshotQuotaExceededFault"} ] }, "CreateDBInstance":{ "name":"CreateDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBInstanceMessage"}, "output":{ "shape":"CreateDBInstanceResult", "resultWrapper":"CreateDBInstanceResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"} ] }, "CreateDBInstanceReadReplica":{ "name":"CreateDBInstanceReadReplica", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBInstanceReadReplicaMessage"}, "output":{ "shape":"CreateDBInstanceReadReplicaResult", "resultWrapper":"CreateDBInstanceReadReplicaResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"}, {"shape":"DBSubnetGroupNotAllowedFault"}, {"shape":"InvalidDBSubnetGroupFault"} ] }, "CreateDBParameterGroup":{ "name":"CreateDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBParameterGroupMessage"}, "output":{ "shape":"CreateDBParameterGroupResult", "resultWrapper":"CreateDBParameterGroupResult" }, "errors":[ {"shape":"DBParameterGroupQuotaExceededFault"}, {"shape":"DBParameterGroupAlreadyExistsFault"} ] }, "CreateDBSecurityGroup":{ "name":"CreateDBSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBSecurityGroupMessage"}, "output":{ "shape":"CreateDBSecurityGroupResult", "resultWrapper":"CreateDBSecurityGroupResult" }, "errors":[ {"shape":"DBSecurityGroupAlreadyExistsFault"}, {"shape":"DBSecurityGroupQuotaExceededFault"}, {"shape":"DBSecurityGroupNotSupportedFault"} ] }, "CreateDBSnapshot":{ "name":"CreateDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBSnapshotMessage"}, "output":{ "shape":"CreateDBSnapshotResult", "resultWrapper":"CreateDBSnapshotResult" }, "errors":[ {"shape":"DBSnapshotAlreadyExistsFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"SnapshotQuotaExceededFault"} ] }, "CreateDBSubnetGroup":{ "name":"CreateDBSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBSubnetGroupMessage"}, "output":{ "shape":"CreateDBSubnetGroupResult", "resultWrapper":"CreateDBSubnetGroupResult" }, "errors":[ {"shape":"DBSubnetGroupAlreadyExistsFault"}, {"shape":"DBSubnetGroupQuotaExceededFault"}, {"shape":"DBSubnetQuotaExceededFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"} ] }, "CreateEventSubscription":{ "name":"CreateEventSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateEventSubscriptionMessage"}, "output":{ "shape":"CreateEventSubscriptionResult", "resultWrapper":"CreateEventSubscriptionResult" }, "errors":[ {"shape":"EventSubscriptionQuotaExceededFault"}, {"shape":"SubscriptionAlreadyExistFault"}, {"shape":"SNSInvalidTopicFault"}, {"shape":"SNSNoAuthorizationFault"}, {"shape":"SNSTopicArnNotFoundFault"}, {"shape":"SubscriptionCategoryNotFoundFault"}, {"shape":"SourceNotFoundFault"} ] }, "CreateOptionGroup":{ "name":"CreateOptionGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateOptionGroupMessage"}, "output":{ "shape":"CreateOptionGroupResult", "resultWrapper":"CreateOptionGroupResult" }, "errors":[ {"shape":"OptionGroupAlreadyExistsFault"}, {"shape":"OptionGroupQuotaExceededFault"} ] }, "DeleteDBInstance":{ "name":"DeleteDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBInstanceMessage"}, "output":{ "shape":"DeleteDBInstanceResult", "resultWrapper":"DeleteDBInstanceResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBSnapshotAlreadyExistsFault"}, {"shape":"SnapshotQuotaExceededFault"} ] }, "DeleteDBParameterGroup":{ "name":"DeleteDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBParameterGroupMessage"}, "errors":[ {"shape":"InvalidDBParameterGroupStateFault"}, {"shape":"DBParameterGroupNotFoundFault"} ] }, "DeleteDBSecurityGroup":{ "name":"DeleteDBSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBSecurityGroupMessage"}, "errors":[ {"shape":"InvalidDBSecurityGroupStateFault"}, {"shape":"DBSecurityGroupNotFoundFault"} ] }, "DeleteDBSnapshot":{ "name":"DeleteDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBSnapshotMessage"}, "output":{ "shape":"DeleteDBSnapshotResult", "resultWrapper":"DeleteDBSnapshotResult" }, "errors":[ {"shape":"InvalidDBSnapshotStateFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "DeleteDBSubnetGroup":{ "name":"DeleteDBSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBSubnetGroupMessage"}, "errors":[ {"shape":"InvalidDBSubnetGroupStateFault"}, {"shape":"InvalidDBSubnetStateFault"}, {"shape":"DBSubnetGroupNotFoundFault"} ] }, "DeleteEventSubscription":{ "name":"DeleteEventSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteEventSubscriptionMessage"}, "output":{ "shape":"DeleteEventSubscriptionResult", "resultWrapper":"DeleteEventSubscriptionResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"}, {"shape":"InvalidEventSubscriptionStateFault"} ] }, "DeleteOptionGroup":{ "name":"DeleteOptionGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteOptionGroupMessage"}, "errors":[ {"shape":"OptionGroupNotFoundFault"}, {"shape":"InvalidOptionGroupStateFault"} ] }, "DescribeDBEngineVersions":{ "name":"DescribeDBEngineVersions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBEngineVersionsMessage"}, "output":{ "shape":"DBEngineVersionMessage", "resultWrapper":"DescribeDBEngineVersionsResult" } }, "DescribeDBInstances":{ "name":"DescribeDBInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBInstancesMessage"}, "output":{ "shape":"DBInstanceMessage", "resultWrapper":"DescribeDBInstancesResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"} ] }, "DescribeDBLogFiles":{ "name":"DescribeDBLogFiles", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBLogFilesMessage"}, "output":{ "shape":"DescribeDBLogFilesResponse", "resultWrapper":"DescribeDBLogFilesResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"} ] }, "DescribeDBParameterGroups":{ "name":"DescribeDBParameterGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBParameterGroupsMessage"}, "output":{ "shape":"DBParameterGroupsMessage", "resultWrapper":"DescribeDBParameterGroupsResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"} ] }, "DescribeDBParameters":{ "name":"DescribeDBParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBParametersMessage"}, "output":{ "shape":"DBParameterGroupDetails", "resultWrapper":"DescribeDBParametersResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"} ] }, "DescribeDBSecurityGroups":{ "name":"DescribeDBSecurityGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBSecurityGroupsMessage"}, "output":{ "shape":"DBSecurityGroupMessage", "resultWrapper":"DescribeDBSecurityGroupsResult" }, "errors":[ {"shape":"DBSecurityGroupNotFoundFault"} ] }, "DescribeDBSnapshots":{ "name":"DescribeDBSnapshots", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBSnapshotsMessage"}, "output":{ "shape":"DBSnapshotMessage", "resultWrapper":"DescribeDBSnapshotsResult" }, "errors":[ {"shape":"DBSnapshotNotFoundFault"} ] }, "DescribeDBSubnetGroups":{ "name":"DescribeDBSubnetGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBSubnetGroupsMessage"}, "output":{ "shape":"DBSubnetGroupMessage", "resultWrapper":"DescribeDBSubnetGroupsResult" }, "errors":[ {"shape":"DBSubnetGroupNotFoundFault"} ] }, "DescribeEngineDefaultParameters":{ "name":"DescribeEngineDefaultParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEngineDefaultParametersMessage"}, "output":{ "shape":"DescribeEngineDefaultParametersResult", "resultWrapper":"DescribeEngineDefaultParametersResult" } }, "DescribeEventCategories":{ "name":"DescribeEventCategories", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventCategoriesMessage"}, "output":{ "shape":"EventCategoriesMessage", "resultWrapper":"DescribeEventCategoriesResult" } }, "DescribeEventSubscriptions":{ "name":"DescribeEventSubscriptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventSubscriptionsMessage"}, "output":{ "shape":"EventSubscriptionsMessage", "resultWrapper":"DescribeEventSubscriptionsResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"} ] }, "DescribeEvents":{ "name":"DescribeEvents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventsMessage"}, "output":{ "shape":"EventsMessage", "resultWrapper":"DescribeEventsResult" } }, "DescribeOptionGroupOptions":{ "name":"DescribeOptionGroupOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeOptionGroupOptionsMessage"}, "output":{ "shape":"OptionGroupOptionsMessage", "resultWrapper":"DescribeOptionGroupOptionsResult" } }, "DescribeOptionGroups":{ "name":"DescribeOptionGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeOptionGroupsMessage"}, "output":{ "shape":"OptionGroups", "resultWrapper":"DescribeOptionGroupsResult" }, "errors":[ {"shape":"OptionGroupNotFoundFault"} ] }, "DescribeOrderableDBInstanceOptions":{ "name":"DescribeOrderableDBInstanceOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeOrderableDBInstanceOptionsMessage"}, "output":{ "shape":"OrderableDBInstanceOptionsMessage", "resultWrapper":"DescribeOrderableDBInstanceOptionsResult" } }, "DescribeReservedDBInstances":{ "name":"DescribeReservedDBInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedDBInstancesMessage"}, "output":{ "shape":"ReservedDBInstanceMessage", "resultWrapper":"DescribeReservedDBInstancesResult" }, "errors":[ {"shape":"ReservedDBInstanceNotFoundFault"} ] }, "DescribeReservedDBInstancesOfferings":{ "name":"DescribeReservedDBInstancesOfferings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedDBInstancesOfferingsMessage"}, "output":{ "shape":"ReservedDBInstancesOfferingMessage", "resultWrapper":"DescribeReservedDBInstancesOfferingsResult" }, "errors":[ {"shape":"ReservedDBInstancesOfferingNotFoundFault"} ] }, "DownloadDBLogFilePortion":{ "name":"DownloadDBLogFilePortion", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DownloadDBLogFilePortionMessage"}, "output":{ "shape":"DownloadDBLogFilePortionDetails", "resultWrapper":"DownloadDBLogFilePortionResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBLogFileNotFoundFault"} ] }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTagsForResourceMessage"}, "output":{ "shape":"TagListMessage", "resultWrapper":"ListTagsForResourceResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "ModifyDBInstance":{ "name":"ModifyDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBInstanceMessage"}, "output":{ "shape":"ModifyDBInstanceResult", "resultWrapper":"ModifyDBInstanceResult" }, "errors":[ {"shape":"InvalidDBInstanceStateFault"}, {"shape":"InvalidDBSecurityGroupStateFault"}, {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"}, {"shape":"DBUpgradeDependencyFailureFault"} ] }, "ModifyDBParameterGroup":{ "name":"ModifyDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBParameterGroupMessage"}, "output":{ "shape":"DBParameterGroupNameMessage", "resultWrapper":"ModifyDBParameterGroupResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"InvalidDBParameterGroupStateFault"} ] }, "ModifyDBSubnetGroup":{ "name":"ModifyDBSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBSubnetGroupMessage"}, "output":{ "shape":"ModifyDBSubnetGroupResult", "resultWrapper":"ModifyDBSubnetGroupResult" }, "errors":[ {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetQuotaExceededFault"}, {"shape":"SubnetAlreadyInUse"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"} ] }, "ModifyEventSubscription":{ "name":"ModifyEventSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyEventSubscriptionMessage"}, "output":{ "shape":"ModifyEventSubscriptionResult", "resultWrapper":"ModifyEventSubscriptionResult" }, "errors":[ {"shape":"EventSubscriptionQuotaExceededFault"}, {"shape":"SubscriptionNotFoundFault"}, {"shape":"SNSInvalidTopicFault"}, {"shape":"SNSNoAuthorizationFault"}, {"shape":"SNSTopicArnNotFoundFault"}, {"shape":"SubscriptionCategoryNotFoundFault"} ] }, "ModifyOptionGroup":{ "name":"ModifyOptionGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyOptionGroupMessage"}, "output":{ "shape":"ModifyOptionGroupResult", "resultWrapper":"ModifyOptionGroupResult" }, "errors":[ {"shape":"InvalidOptionGroupStateFault"}, {"shape":"OptionGroupNotFoundFault"} ] }, "PromoteReadReplica":{ "name":"PromoteReadReplica", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PromoteReadReplicaMessage"}, "output":{ "shape":"PromoteReadReplicaResult", "resultWrapper":"PromoteReadReplicaResult" }, "errors":[ {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBInstanceNotFoundFault"} ] }, "PurchaseReservedDBInstancesOffering":{ "name":"PurchaseReservedDBInstancesOffering", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PurchaseReservedDBInstancesOfferingMessage"}, "output":{ "shape":"PurchaseReservedDBInstancesOfferingResult", "resultWrapper":"PurchaseReservedDBInstancesOfferingResult" }, "errors":[ {"shape":"ReservedDBInstancesOfferingNotFoundFault"}, {"shape":"ReservedDBInstanceAlreadyExistsFault"}, {"shape":"ReservedDBInstanceQuotaExceededFault"} ] }, "RebootDBInstance":{ "name":"RebootDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RebootDBInstanceMessage"}, "output":{ "shape":"RebootDBInstanceResult", "resultWrapper":"RebootDBInstanceResult" }, "errors":[ {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBInstanceNotFoundFault"} ] }, "RemoveSourceIdentifierFromSubscription":{ "name":"RemoveSourceIdentifierFromSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveSourceIdentifierFromSubscriptionMessage"}, "output":{ "shape":"RemoveSourceIdentifierFromSubscriptionResult", "resultWrapper":"RemoveSourceIdentifierFromSubscriptionResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"}, {"shape":"SourceNotFoundFault"} ] }, "RemoveTagsFromResource":{ "name":"RemoveTagsFromResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsFromResourceMessage"}, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "ResetDBParameterGroup":{ "name":"ResetDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetDBParameterGroupMessage"}, "output":{ "shape":"DBParameterGroupNameMessage", "resultWrapper":"ResetDBParameterGroupResult" }, "errors":[ {"shape":"InvalidDBParameterGroupStateFault"}, {"shape":"DBParameterGroupNotFoundFault"} ] }, "RestoreDBInstanceFromDBSnapshot":{ "name":"RestoreDBInstanceFromDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreDBInstanceFromDBSnapshotMessage"}, "output":{ "shape":"RestoreDBInstanceFromDBSnapshotResult", "resultWrapper":"RestoreDBInstanceFromDBSnapshotResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"DBSnapshotNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"InvalidDBSnapshotStateFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidRestoreFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"} ] }, "RestoreDBInstanceToPointInTime":{ "name":"RestoreDBInstanceToPointInTime", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreDBInstanceToPointInTimeMessage"}, "output":{ "shape":"RestoreDBInstanceToPointInTimeResult", "resultWrapper":"RestoreDBInstanceToPointInTimeResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"PointInTimeRestoreNotEnabledFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidRestoreFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"} ] }, "RevokeDBSecurityGroupIngress":{ "name":"RevokeDBSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RevokeDBSecurityGroupIngressMessage"}, "output":{ "shape":"RevokeDBSecurityGroupIngressResult", "resultWrapper":"RevokeDBSecurityGroupIngressResult" }, "errors":[ {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"AuthorizationNotFoundFault"}, {"shape":"InvalidDBSecurityGroupStateFault"} ] } }, "shapes":{ "AddSourceIdentifierToSubscriptionMessage":{ "type":"structure", "required":[ "SubscriptionName", "SourceIdentifier" ], "members":{ "SubscriptionName":{"shape":"String"}, "SourceIdentifier":{"shape":"String"} } }, "AddSourceIdentifierToSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "AddTagsToResourceMessage":{ "type":"structure", "required":[ "ResourceName", "Tags" ], "members":{ "ResourceName":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "ApplyMethod":{ "type":"string", "enum":[ "immediate", "pending-reboot" ] }, "AuthorizationAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "AuthorizationNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "AuthorizationQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "AuthorizeDBSecurityGroupIngressMessage":{ "type":"structure", "required":["DBSecurityGroupName"], "members":{ "DBSecurityGroupName":{"shape":"String"}, "CIDRIP":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupId":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "AuthorizeDBSecurityGroupIngressResult":{ "type":"structure", "members":{ "DBSecurityGroup":{"shape":"DBSecurityGroup"} } }, "AvailabilityZone":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "ProvisionedIopsCapable":{"shape":"Boolean"} }, "wrapper":true }, "AvailabilityZoneList":{ "type":"list", "member":{ "shape":"AvailabilityZone", "locationName":"AvailabilityZone" } }, "Boolean":{"type":"boolean"}, "BooleanOptional":{"type":"boolean"}, "CharacterSet":{ "type":"structure", "members":{ "CharacterSetName":{"shape":"String"}, "CharacterSetDescription":{"shape":"String"} } }, "CopyDBSnapshotMessage":{ "type":"structure", "required":[ "SourceDBSnapshotIdentifier", "TargetDBSnapshotIdentifier" ], "members":{ "SourceDBSnapshotIdentifier":{"shape":"String"}, "TargetDBSnapshotIdentifier":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CopyDBSnapshotResult":{ "type":"structure", "members":{ "DBSnapshot":{"shape":"DBSnapshot"} } }, "CreateDBInstanceMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "AllocatedStorage", "DBInstanceClass", "Engine", "MasterUsername", "MasterUserPassword" ], "members":{ "DBName":{"shape":"String"}, "DBInstanceIdentifier":{"shape":"String"}, "AllocatedStorage":{"shape":"IntegerOptional"}, "DBInstanceClass":{"shape":"String"}, "Engine":{"shape":"String"}, "MasterUsername":{"shape":"String"}, "MasterUserPassword":{"shape":"String"}, "DBSecurityGroups":{"shape":"DBSecurityGroupNameList"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroupName":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"}, "DBParameterGroupName":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "PreferredBackupWindow":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "MultiAZ":{"shape":"BooleanOptional"}, "EngineVersion":{"shape":"String"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "LicenseModel":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "CharacterSetName":{"shape":"String"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "Tags":{"shape":"TagList"} } }, "CreateDBInstanceReadReplicaMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "SourceDBInstanceIdentifier" ], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "SourceDBInstanceIdentifier":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "AvailabilityZone":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "Tags":{"shape":"TagList"}, "DBSubnetGroupName":{"shape":"String"} } }, "CreateDBInstanceReadReplicaResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "CreateDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "CreateDBParameterGroupMessage":{ "type":"structure", "required":[ "DBParameterGroupName", "DBParameterGroupFamily", "Description" ], "members":{ "DBParameterGroupName":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "Description":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateDBParameterGroupResult":{ "type":"structure", "members":{ "DBParameterGroup":{"shape":"DBParameterGroup"} } }, "CreateDBSecurityGroupMessage":{ "type":"structure", "required":[ "DBSecurityGroupName", "DBSecurityGroupDescription" ], "members":{ "DBSecurityGroupName":{"shape":"String"}, "DBSecurityGroupDescription":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateDBSecurityGroupResult":{ "type":"structure", "members":{ "DBSecurityGroup":{"shape":"DBSecurityGroup"} } }, "CreateDBSnapshotMessage":{ "type":"structure", "required":[ "DBSnapshotIdentifier", "DBInstanceIdentifier" ], "members":{ "DBSnapshotIdentifier":{"shape":"String"}, "DBInstanceIdentifier":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateDBSnapshotResult":{ "type":"structure", "members":{ "DBSnapshot":{"shape":"DBSnapshot"} } }, "CreateDBSubnetGroupMessage":{ "type":"structure", "required":[ "DBSubnetGroupName", "DBSubnetGroupDescription", "SubnetIds" ], "members":{ "DBSubnetGroupName":{"shape":"String"}, "DBSubnetGroupDescription":{"shape":"String"}, "SubnetIds":{"shape":"SubnetIdentifierList"}, "Tags":{"shape":"TagList"} } }, "CreateDBSubnetGroupResult":{ "type":"structure", "members":{ "DBSubnetGroup":{"shape":"DBSubnetGroup"} } }, "CreateEventSubscriptionMessage":{ "type":"structure", "required":[ "SubscriptionName", "SnsTopicArn" ], "members":{ "SubscriptionName":{"shape":"String"}, "SnsTopicArn":{"shape":"String"}, "SourceType":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"}, "SourceIds":{"shape":"SourceIdsList"}, "Enabled":{"shape":"BooleanOptional"}, "Tags":{"shape":"TagList"} } }, "CreateEventSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "CreateOptionGroupMessage":{ "type":"structure", "required":[ "OptionGroupName", "EngineName", "MajorEngineVersion", "OptionGroupDescription" ], "members":{ "OptionGroupName":{"shape":"String"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "OptionGroupDescription":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateOptionGroupResult":{ "type":"structure", "members":{ "OptionGroup":{"shape":"OptionGroup"} } }, "DBEngineVersion":{ "type":"structure", "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "DBEngineDescription":{"shape":"String"}, "DBEngineVersionDescription":{"shape":"String"}, "DefaultCharacterSet":{"shape":"CharacterSet"}, "SupportedCharacterSets":{"shape":"SupportedCharacterSetsList"} } }, "DBEngineVersionList":{ "type":"list", "member":{ "shape":"DBEngineVersion", "locationName":"DBEngineVersion" } }, "DBEngineVersionMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBEngineVersions":{"shape":"DBEngineVersionList"} } }, "DBInstance":{ "type":"structure", "members":{ "DBInstanceIdentifier":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Engine":{"shape":"String"}, "DBInstanceStatus":{"shape":"String"}, "MasterUsername":{"shape":"String"}, "DBName":{"shape":"String"}, "Endpoint":{"shape":"Endpoint"}, "AllocatedStorage":{"shape":"Integer"}, "InstanceCreateTime":{"shape":"TStamp"}, "PreferredBackupWindow":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"Integer"}, "DBSecurityGroups":{"shape":"DBSecurityGroupMembershipList"}, "VpcSecurityGroups":{"shape":"VpcSecurityGroupMembershipList"}, "DBParameterGroups":{"shape":"DBParameterGroupStatusList"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroup":{"shape":"DBSubnetGroup"}, "PreferredMaintenanceWindow":{"shape":"String"}, "PendingModifiedValues":{"shape":"PendingModifiedValues"}, "LatestRestorableTime":{"shape":"TStamp"}, "MultiAZ":{"shape":"Boolean"}, "EngineVersion":{"shape":"String"}, "AutoMinorVersionUpgrade":{"shape":"Boolean"}, "ReadReplicaSourceDBInstanceIdentifier":{"shape":"String"}, "ReadReplicaDBInstanceIdentifiers":{"shape":"ReadReplicaDBInstanceIdentifierList"}, "LicenseModel":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupMemberships":{"shape":"OptionGroupMembershipList"}, "CharacterSetName":{"shape":"String"}, "SecondaryAvailabilityZone":{"shape":"String"}, "PubliclyAccessible":{"shape":"Boolean"}, "StatusInfos":{"shape":"DBInstanceStatusInfoList"} }, "wrapper":true }, "DBInstanceAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBInstanceAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBInstanceList":{ "type":"list", "member":{ "shape":"DBInstance", "locationName":"DBInstance" } }, "DBInstanceMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBInstances":{"shape":"DBInstanceList"} } }, "DBInstanceNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBInstanceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBInstanceStatusInfo":{ "type":"structure", "members":{ "StatusType":{"shape":"String"}, "Normal":{"shape":"Boolean"}, "Status":{"shape":"String"}, "Message":{"shape":"String"} } }, "DBInstanceStatusInfoList":{ "type":"list", "member":{ "shape":"DBInstanceStatusInfo", "locationName":"DBInstanceStatusInfo" } }, "DBLogFileNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBLogFileNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBParameterGroup":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "Description":{"shape":"String"} }, "wrapper":true }, "DBParameterGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBParameterGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBParameterGroupDetails":{ "type":"structure", "members":{ "Parameters":{"shape":"ParametersList"}, "Marker":{"shape":"String"} } }, "DBParameterGroupList":{ "type":"list", "member":{ "shape":"DBParameterGroup", "locationName":"DBParameterGroup" } }, "DBParameterGroupNameMessage":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"} } }, "DBParameterGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBParameterGroupNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBParameterGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBParameterGroupQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBParameterGroupStatus":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"}, "ParameterApplyStatus":{"shape":"String"} } }, "DBParameterGroupStatusList":{ "type":"list", "member":{ "shape":"DBParameterGroupStatus", "locationName":"DBParameterGroup" } }, "DBParameterGroupsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBParameterGroups":{"shape":"DBParameterGroupList"} } }, "DBSecurityGroup":{ "type":"structure", "members":{ "OwnerId":{"shape":"String"}, "DBSecurityGroupName":{"shape":"String"}, "DBSecurityGroupDescription":{"shape":"String"}, "VpcId":{"shape":"String"}, "EC2SecurityGroups":{"shape":"EC2SecurityGroupList"}, "IPRanges":{"shape":"IPRangeList"} }, "wrapper":true }, "DBSecurityGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSecurityGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSecurityGroupMembership":{ "type":"structure", "members":{ "DBSecurityGroupName":{"shape":"String"}, "Status":{"shape":"String"} } }, "DBSecurityGroupMembershipList":{ "type":"list", "member":{ "shape":"DBSecurityGroupMembership", "locationName":"DBSecurityGroup" } }, "DBSecurityGroupMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBSecurityGroups":{"shape":"DBSecurityGroups"} } }, "DBSecurityGroupNameList":{ "type":"list", "member":{ "shape":"String", "locationName":"DBSecurityGroupName" } }, "DBSecurityGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSecurityGroupNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBSecurityGroupNotSupportedFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSecurityGroupNotSupported", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSecurityGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"QuotaExceeded.DBSecurityGroup", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSecurityGroups":{ "type":"list", "member":{ "shape":"DBSecurityGroup", "locationName":"DBSecurityGroup" } }, "DBSnapshot":{ "type":"structure", "members":{ "DBSnapshotIdentifier":{"shape":"String"}, "DBInstanceIdentifier":{"shape":"String"}, "SnapshotCreateTime":{"shape":"TStamp"}, "Engine":{"shape":"String"}, "AllocatedStorage":{"shape":"Integer"}, "Status":{"shape":"String"}, "Port":{"shape":"Integer"}, "AvailabilityZone":{"shape":"String"}, "VpcId":{"shape":"String"}, "InstanceCreateTime":{"shape":"TStamp"}, "MasterUsername":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "LicenseModel":{"shape":"String"}, "SnapshotType":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "PercentProgress":{"shape":"Integer"}, "SourceRegion":{"shape":"String"} }, "wrapper":true }, "DBSnapshotAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSnapshotAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSnapshotList":{ "type":"list", "member":{ "shape":"DBSnapshot", "locationName":"DBSnapshot" } }, "DBSnapshotMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBSnapshots":{"shape":"DBSnapshotList"} } }, "DBSnapshotNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSnapshotNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBSubnetGroup":{ "type":"structure", "members":{ "DBSubnetGroupName":{"shape":"String"}, "DBSubnetGroupDescription":{"shape":"String"}, "VpcId":{"shape":"String"}, "SubnetGroupStatus":{"shape":"String"}, "Subnets":{"shape":"SubnetList"} }, "wrapper":true }, "DBSubnetGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSubnetGroupDoesNotCoverEnoughAZs":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupDoesNotCoverEnoughAZs", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSubnetGroupMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBSubnetGroups":{"shape":"DBSubnetGroups"} } }, "DBSubnetGroupNotAllowedFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupNotAllowedFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSubnetGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBSubnetGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSubnetGroups":{ "type":"list", "member":{ "shape":"DBSubnetGroup", "locationName":"DBSubnetGroup" } }, "DBSubnetQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetQuotaExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBUpgradeDependencyFailureFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBUpgradeDependencyFailure", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DeleteDBInstanceMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "SkipFinalSnapshot":{"shape":"Boolean"}, "FinalDBSnapshotIdentifier":{"shape":"String"} } }, "DeleteDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "DeleteDBParameterGroupMessage":{ "type":"structure", "required":["DBParameterGroupName"], "members":{ "DBParameterGroupName":{"shape":"String"} } }, "DeleteDBSecurityGroupMessage":{ "type":"structure", "required":["DBSecurityGroupName"], "members":{ "DBSecurityGroupName":{"shape":"String"} } }, "DeleteDBSnapshotMessage":{ "type":"structure", "required":["DBSnapshotIdentifier"], "members":{ "DBSnapshotIdentifier":{"shape":"String"} } }, "DeleteDBSnapshotResult":{ "type":"structure", "members":{ "DBSnapshot":{"shape":"DBSnapshot"} } }, "DeleteDBSubnetGroupMessage":{ "type":"structure", "required":["DBSubnetGroupName"], "members":{ "DBSubnetGroupName":{"shape":"String"} } }, "DeleteEventSubscriptionMessage":{ "type":"structure", "required":["SubscriptionName"], "members":{ "SubscriptionName":{"shape":"String"} } }, "DeleteEventSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "DeleteOptionGroupMessage":{ "type":"structure", "required":["OptionGroupName"], "members":{ "OptionGroupName":{"shape":"String"} } }, "DescribeDBEngineVersionsMessage":{ "type":"structure", "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "DefaultOnly":{"shape":"Boolean"}, "ListSupportedCharacterSets":{"shape":"BooleanOptional"} } }, "DescribeDBInstancesMessage":{ "type":"structure", "members":{ "DBInstanceIdentifier":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBLogFilesDetails":{ "type":"structure", "members":{ "LogFileName":{"shape":"String"}, "LastWritten":{"shape":"Long"}, "Size":{"shape":"Long"} } }, "DescribeDBLogFilesList":{ "type":"list", "member":{ "shape":"DescribeDBLogFilesDetails", "locationName":"DescribeDBLogFilesDetails" } }, "DescribeDBLogFilesMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "FilenameContains":{"shape":"String"}, "FileLastWritten":{"shape":"Long"}, "FileSize":{"shape":"Long"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBLogFilesResponse":{ "type":"structure", "members":{ "DescribeDBLogFiles":{"shape":"DescribeDBLogFilesList"}, "Marker":{"shape":"String"} } }, "DescribeDBParameterGroupsMessage":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBParametersMessage":{ "type":"structure", "required":["DBParameterGroupName"], "members":{ "DBParameterGroupName":{"shape":"String"}, "Source":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBSecurityGroupsMessage":{ "type":"structure", "members":{ "DBSecurityGroupName":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBSnapshotsMessage":{ "type":"structure", "members":{ "DBInstanceIdentifier":{"shape":"String"}, "DBSnapshotIdentifier":{"shape":"String"}, "SnapshotType":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBSubnetGroupsMessage":{ "type":"structure", "members":{ "DBSubnetGroupName":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEngineDefaultParametersMessage":{ "type":"structure", "required":["DBParameterGroupFamily"], "members":{ "DBParameterGroupFamily":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEngineDefaultParametersResult":{ "type":"structure", "members":{ "EngineDefaults":{"shape":"EngineDefaults"} } }, "DescribeEventCategoriesMessage":{ "type":"structure", "members":{ "SourceType":{"shape":"String"}, "Filters":{"shape":"FilterList"} } }, "DescribeEventSubscriptionsMessage":{ "type":"structure", "members":{ "SubscriptionName":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEventsMessage":{ "type":"structure", "members":{ "SourceIdentifier":{"shape":"String"}, "SourceType":{"shape":"SourceType"}, "StartTime":{"shape":"TStamp"}, "EndTime":{"shape":"TStamp"}, "Duration":{"shape":"IntegerOptional"}, "EventCategories":{"shape":"EventCategoriesList"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeOptionGroupOptionsMessage":{ "type":"structure", "required":["EngineName"], "members":{ "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeOptionGroupsMessage":{ "type":"structure", "members":{ "OptionGroupName":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "Marker":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"} } }, "DescribeOrderableDBInstanceOptionsMessage":{ "type":"structure", "required":["Engine"], "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "LicenseModel":{"shape":"String"}, "Vpc":{"shape":"BooleanOptional"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeReservedDBInstancesMessage":{ "type":"structure", "members":{ "ReservedDBInstanceId":{"shape":"String"}, "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Duration":{"shape":"String"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeReservedDBInstancesOfferingsMessage":{ "type":"structure", "members":{ "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Duration":{"shape":"String"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "Double":{"type":"double"}, "DownloadDBLogFilePortionDetails":{ "type":"structure", "members":{ "LogFileData":{"shape":"String"}, "Marker":{"shape":"String"}, "AdditionalDataPending":{"shape":"Boolean"} } }, "DownloadDBLogFilePortionMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "LogFileName" ], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "LogFileName":{"shape":"String"}, "Marker":{"shape":"String"}, "NumberOfLines":{"shape":"Integer"} } }, "EC2SecurityGroup":{ "type":"structure", "members":{ "Status":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupId":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "EC2SecurityGroupList":{ "type":"list", "member":{ "shape":"EC2SecurityGroup", "locationName":"EC2SecurityGroup" } }, "Endpoint":{ "type":"structure", "members":{ "Address":{"shape":"String"}, "Port":{"shape":"Integer"} } }, "EngineDefaults":{ "type":"structure", "members":{ "DBParameterGroupFamily":{"shape":"String"}, "Marker":{"shape":"String"}, "Parameters":{"shape":"ParametersList"} }, "wrapper":true }, "Event":{ "type":"structure", "members":{ "SourceIdentifier":{"shape":"String"}, "SourceType":{"shape":"SourceType"}, "Message":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"}, "Date":{"shape":"TStamp"} } }, "EventCategoriesList":{ "type":"list", "member":{ "shape":"String", "locationName":"EventCategory" } }, "EventCategoriesMap":{ "type":"structure", "members":{ "SourceType":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"} }, "wrapper":true }, "EventCategoriesMapList":{ "type":"list", "member":{ "shape":"EventCategoriesMap", "locationName":"EventCategoriesMap" } }, "EventCategoriesMessage":{ "type":"structure", "members":{ "EventCategoriesMapList":{"shape":"EventCategoriesMapList"} } }, "EventList":{ "type":"list", "member":{ "shape":"Event", "locationName":"Event" } }, "EventSubscription":{ "type":"structure", "members":{ "CustomerAwsId":{"shape":"String"}, "CustSubscriptionId":{"shape":"String"}, "SnsTopicArn":{"shape":"String"}, "Status":{"shape":"String"}, "SubscriptionCreationTime":{"shape":"String"}, "SourceType":{"shape":"String"}, "SourceIdsList":{"shape":"SourceIdsList"}, "EventCategoriesList":{"shape":"EventCategoriesList"}, "Enabled":{"shape":"Boolean"} }, "wrapper":true }, "EventSubscriptionQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"EventSubscriptionQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "EventSubscriptionsList":{ "type":"list", "member":{ "shape":"EventSubscription", "locationName":"EventSubscription" } }, "EventSubscriptionsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "EventSubscriptionsList":{"shape":"EventSubscriptionsList"} } }, "EventsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "Events":{"shape":"EventList"} } }, "Filter":{ "type":"structure", "required":[ "Name", "Values" ], "members":{ "Name":{"shape":"String"}, "Values":{"shape":"FilterValueList"} } }, "FilterList":{ "type":"list", "member":{ "shape":"Filter", "locationName":"Filter" } }, "FilterValueList":{ "type":"list", "member":{ "shape":"String", "locationName":"Value" } }, "IPRange":{ "type":"structure", "members":{ "Status":{"shape":"String"}, "CIDRIP":{"shape":"String"} } }, "IPRangeList":{ "type":"list", "member":{ "shape":"IPRange", "locationName":"IPRange" } }, "InstanceQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"InstanceQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InsufficientDBInstanceCapacityFault":{ "type":"structure", "members":{ }, "error":{ "code":"InsufficientDBInstanceCapacity", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Integer":{"type":"integer"}, "IntegerOptional":{"type":"integer"}, "InvalidDBInstanceStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBInstanceState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBParameterGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBParameterGroupState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSecurityGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSecurityGroupState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSnapshotStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSnapshotState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSubnetGroupFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSubnetGroupFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSubnetGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSubnetGroupStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSubnetStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSubnetStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidEventSubscriptionStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidEventSubscriptionState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidOptionGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidOptionGroupStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidRestoreFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidRestoreFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidSubnet":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidSubnet", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidVPCNetworkStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidVPCNetworkStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "KeyList":{ "type":"list", "member":{"shape":"String"} }, "ListTagsForResourceMessage":{ "type":"structure", "required":["ResourceName"], "members":{ "ResourceName":{"shape":"String"}, "Filters":{"shape":"FilterList"} } }, "Long":{"type":"long"}, "ModifyDBInstanceMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "AllocatedStorage":{"shape":"IntegerOptional"}, "DBInstanceClass":{"shape":"String"}, "DBSecurityGroups":{"shape":"DBSecurityGroupNameList"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "ApplyImmediately":{"shape":"Boolean"}, "MasterUserPassword":{"shape":"String"}, "DBParameterGroupName":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "PreferredBackupWindow":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "EngineVersion":{"shape":"String"}, "AllowMajorVersionUpgrade":{"shape":"Boolean"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "NewDBInstanceIdentifier":{"shape":"String"} } }, "ModifyDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "ModifyDBParameterGroupMessage":{ "type":"structure", "required":[ "DBParameterGroupName", "Parameters" ], "members":{ "DBParameterGroupName":{"shape":"String"}, "Parameters":{"shape":"ParametersList"} } }, "ModifyDBSubnetGroupMessage":{ "type":"structure", "required":[ "DBSubnetGroupName", "SubnetIds" ], "members":{ "DBSubnetGroupName":{"shape":"String"}, "DBSubnetGroupDescription":{"shape":"String"}, "SubnetIds":{"shape":"SubnetIdentifierList"} } }, "ModifyDBSubnetGroupResult":{ "type":"structure", "members":{ "DBSubnetGroup":{"shape":"DBSubnetGroup"} } }, "ModifyEventSubscriptionMessage":{ "type":"structure", "required":["SubscriptionName"], "members":{ "SubscriptionName":{"shape":"String"}, "SnsTopicArn":{"shape":"String"}, "SourceType":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"}, "Enabled":{"shape":"BooleanOptional"} } }, "ModifyEventSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "ModifyOptionGroupMessage":{ "type":"structure", "required":["OptionGroupName"], "members":{ "OptionGroupName":{"shape":"String"}, "OptionsToInclude":{"shape":"OptionConfigurationList"}, "OptionsToRemove":{"shape":"OptionNamesList"}, "ApplyImmediately":{"shape":"Boolean"} } }, "ModifyOptionGroupResult":{ "type":"structure", "members":{ "OptionGroup":{"shape":"OptionGroup"} } }, "Option":{ "type":"structure", "members":{ "OptionName":{"shape":"String"}, "OptionDescription":{"shape":"String"}, "Persistent":{"shape":"Boolean"}, "Permanent":{"shape":"Boolean"}, "Port":{"shape":"IntegerOptional"}, "OptionSettings":{"shape":"OptionSettingConfigurationList"}, "DBSecurityGroupMemberships":{"shape":"DBSecurityGroupMembershipList"}, "VpcSecurityGroupMemberships":{"shape":"VpcSecurityGroupMembershipList"} } }, "OptionConfiguration":{ "type":"structure", "required":["OptionName"], "members":{ "OptionName":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "DBSecurityGroupMemberships":{"shape":"DBSecurityGroupNameList"}, "VpcSecurityGroupMemberships":{"shape":"VpcSecurityGroupIdList"}, "OptionSettings":{"shape":"OptionSettingsList"} } }, "OptionConfigurationList":{ "type":"list", "member":{ "shape":"OptionConfiguration", "locationName":"OptionConfiguration" } }, "OptionGroup":{ "type":"structure", "members":{ "OptionGroupName":{"shape":"String"}, "OptionGroupDescription":{"shape":"String"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "Options":{"shape":"OptionsList"}, "AllowsVpcAndNonVpcInstanceMemberships":{"shape":"Boolean"}, "VpcId":{"shape":"String"} }, "wrapper":true }, "OptionGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"OptionGroupAlreadyExistsFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "OptionGroupMembership":{ "type":"structure", "members":{ "OptionGroupName":{"shape":"String"}, "Status":{"shape":"String"} } }, "OptionGroupMembershipList":{ "type":"list", "member":{ "shape":"OptionGroupMembership", "locationName":"OptionGroupMembership" } }, "OptionGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"OptionGroupNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "OptionGroupOption":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "Description":{"shape":"String"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "MinimumRequiredMinorEngineVersion":{"shape":"String"}, "PortRequired":{"shape":"Boolean"}, "DefaultPort":{"shape":"IntegerOptional"}, "OptionsDependedOn":{"shape":"OptionsDependedOn"}, "Persistent":{"shape":"Boolean"}, "Permanent":{"shape":"Boolean"}, "OptionGroupOptionSettings":{"shape":"OptionGroupOptionSettingsList"} } }, "OptionGroupOptionSetting":{ "type":"structure", "members":{ "SettingName":{"shape":"String"}, "SettingDescription":{"shape":"String"}, "DefaultValue":{"shape":"String"}, "ApplyType":{"shape":"String"}, "AllowedValues":{"shape":"String"}, "IsModifiable":{"shape":"Boolean"} } }, "OptionGroupOptionSettingsList":{ "type":"list", "member":{ "shape":"OptionGroupOptionSetting", "locationName":"OptionGroupOptionSetting" } }, "OptionGroupOptionsList":{ "type":"list", "member":{ "shape":"OptionGroupOption", "locationName":"OptionGroupOption" } }, "OptionGroupOptionsMessage":{ "type":"structure", "members":{ "OptionGroupOptions":{"shape":"OptionGroupOptionsList"}, "Marker":{"shape":"String"} } }, "OptionGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"OptionGroupQuotaExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "OptionGroups":{ "type":"structure", "members":{ "OptionGroupsList":{"shape":"OptionGroupsList"}, "Marker":{"shape":"String"} } }, "OptionGroupsList":{ "type":"list", "member":{ "shape":"OptionGroup", "locationName":"OptionGroup" } }, "OptionNamesList":{ "type":"list", "member":{"shape":"String"} }, "OptionSetting":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "Value":{"shape":"String"}, "DefaultValue":{"shape":"String"}, "Description":{"shape":"String"}, "ApplyType":{"shape":"String"}, "DataType":{"shape":"String"}, "AllowedValues":{"shape":"String"}, "IsModifiable":{"shape":"Boolean"}, "IsCollection":{"shape":"Boolean"} } }, "OptionSettingConfigurationList":{ "type":"list", "member":{ "shape":"OptionSetting", "locationName":"OptionSetting" } }, "OptionSettingsList":{ "type":"list", "member":{ "shape":"OptionSetting", "locationName":"OptionSetting" } }, "OptionsDependedOn":{ "type":"list", "member":{ "shape":"String", "locationName":"OptionName" } }, "OptionsList":{ "type":"list", "member":{ "shape":"Option", "locationName":"Option" } }, "OrderableDBInstanceOption":{ "type":"structure", "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "LicenseModel":{"shape":"String"}, "AvailabilityZones":{"shape":"AvailabilityZoneList"}, "MultiAZCapable":{"shape":"Boolean"}, "ReadReplicaCapable":{"shape":"Boolean"}, "Vpc":{"shape":"Boolean"} }, "wrapper":true }, "OrderableDBInstanceOptionsList":{ "type":"list", "member":{ "shape":"OrderableDBInstanceOption", "locationName":"OrderableDBInstanceOption" } }, "OrderableDBInstanceOptionsMessage":{ "type":"structure", "members":{ "OrderableDBInstanceOptions":{"shape":"OrderableDBInstanceOptionsList"}, "Marker":{"shape":"String"} } }, "Parameter":{ "type":"structure", "members":{ "ParameterName":{"shape":"String"}, "ParameterValue":{"shape":"String"}, "Description":{"shape":"String"}, "Source":{"shape":"String"}, "ApplyType":{"shape":"String"}, "DataType":{"shape":"String"}, "AllowedValues":{"shape":"String"}, "IsModifiable":{"shape":"Boolean"}, "MinimumEngineVersion":{"shape":"String"}, "ApplyMethod":{"shape":"ApplyMethod"} } }, "ParametersList":{ "type":"list", "member":{ "shape":"Parameter", "locationName":"Parameter" } }, "PendingModifiedValues":{ "type":"structure", "members":{ "DBInstanceClass":{"shape":"String"}, "AllocatedStorage":{"shape":"IntegerOptional"}, "MasterUserPassword":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "MultiAZ":{"shape":"BooleanOptional"}, "EngineVersion":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "DBInstanceIdentifier":{"shape":"String"} } }, "PointInTimeRestoreNotEnabledFault":{ "type":"structure", "members":{ }, "error":{ "code":"PointInTimeRestoreNotEnabled", "httpStatusCode":400, "senderFault":true }, "exception":true }, "PromoteReadReplicaMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "PreferredBackupWindow":{"shape":"String"} } }, "PromoteReadReplicaResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "ProvisionedIopsNotAvailableInAZFault":{ "type":"structure", "members":{ }, "error":{ "code":"ProvisionedIopsNotAvailableInAZFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "PurchaseReservedDBInstancesOfferingMessage":{ "type":"structure", "required":["ReservedDBInstancesOfferingId"], "members":{ "ReservedDBInstancesOfferingId":{"shape":"String"}, "ReservedDBInstanceId":{"shape":"String"}, "DBInstanceCount":{"shape":"IntegerOptional"}, "Tags":{"shape":"TagList"} } }, "PurchaseReservedDBInstancesOfferingResult":{ "type":"structure", "members":{ "ReservedDBInstance":{"shape":"ReservedDBInstance"} } }, "ReadReplicaDBInstanceIdentifierList":{ "type":"list", "member":{ "shape":"String", "locationName":"ReadReplicaDBInstanceIdentifier" } }, "RebootDBInstanceMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "ForceFailover":{"shape":"BooleanOptional"} } }, "RebootDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "RecurringCharge":{ "type":"structure", "members":{ "RecurringChargeAmount":{"shape":"Double"}, "RecurringChargeFrequency":{"shape":"String"} }, "wrapper":true }, "RecurringChargeList":{ "type":"list", "member":{ "shape":"RecurringCharge", "locationName":"RecurringCharge" } }, "RemoveSourceIdentifierFromSubscriptionMessage":{ "type":"structure", "required":[ "SubscriptionName", "SourceIdentifier" ], "members":{ "SubscriptionName":{"shape":"String"}, "SourceIdentifier":{"shape":"String"} } }, "RemoveSourceIdentifierFromSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "RemoveTagsFromResourceMessage":{ "type":"structure", "required":[ "ResourceName", "TagKeys" ], "members":{ "ResourceName":{"shape":"String"}, "TagKeys":{"shape":"KeyList"} } }, "ReservedDBInstance":{ "type":"structure", "members":{ "ReservedDBInstanceId":{"shape":"String"}, "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "StartTime":{"shape":"TStamp"}, "Duration":{"shape":"Integer"}, "FixedPrice":{"shape":"Double"}, "UsagePrice":{"shape":"Double"}, "CurrencyCode":{"shape":"String"}, "DBInstanceCount":{"shape":"Integer"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"Boolean"}, "State":{"shape":"String"}, "RecurringCharges":{"shape":"RecurringChargeList"} }, "wrapper":true }, "ReservedDBInstanceAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstanceAlreadyExists", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ReservedDBInstanceList":{ "type":"list", "member":{ "shape":"ReservedDBInstance", "locationName":"ReservedDBInstance" } }, "ReservedDBInstanceMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ReservedDBInstances":{"shape":"ReservedDBInstanceList"} } }, "ReservedDBInstanceNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstanceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ReservedDBInstanceQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstanceQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ReservedDBInstancesOffering":{ "type":"structure", "members":{ "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Duration":{"shape":"Integer"}, "FixedPrice":{"shape":"Double"}, "UsagePrice":{"shape":"Double"}, "CurrencyCode":{"shape":"String"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"Boolean"}, "RecurringCharges":{"shape":"RecurringChargeList"} }, "wrapper":true }, "ReservedDBInstancesOfferingList":{ "type":"list", "member":{ "shape":"ReservedDBInstancesOffering", "locationName":"ReservedDBInstancesOffering" } }, "ReservedDBInstancesOfferingMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ReservedDBInstancesOfferings":{"shape":"ReservedDBInstancesOfferingList"} } }, "ReservedDBInstancesOfferingNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstancesOfferingNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ResetDBParameterGroupMessage":{ "type":"structure", "required":["DBParameterGroupName"], "members":{ "DBParameterGroupName":{"shape":"String"}, "ResetAllParameters":{"shape":"Boolean"}, "Parameters":{"shape":"ParametersList"} } }, "RestoreDBInstanceFromDBSnapshotMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "DBSnapshotIdentifier" ], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "DBSnapshotIdentifier":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroupName":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "LicenseModel":{"shape":"String"}, "DBName":{"shape":"String"}, "Engine":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "RestoreDBInstanceFromDBSnapshotResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "RestoreDBInstanceToPointInTimeMessage":{ "type":"structure", "required":[ "SourceDBInstanceIdentifier", "TargetDBInstanceIdentifier" ], "members":{ "SourceDBInstanceIdentifier":{"shape":"String"}, "TargetDBInstanceIdentifier":{"shape":"String"}, "RestoreTime":{"shape":"TStamp"}, "UseLatestRestorableTime":{"shape":"Boolean"}, "DBInstanceClass":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroupName":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "LicenseModel":{"shape":"String"}, "DBName":{"shape":"String"}, "Engine":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "RestoreDBInstanceToPointInTimeResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "RevokeDBSecurityGroupIngressMessage":{ "type":"structure", "required":["DBSecurityGroupName"], "members":{ "DBSecurityGroupName":{"shape":"String"}, "CIDRIP":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupId":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "RevokeDBSecurityGroupIngressResult":{ "type":"structure", "members":{ "DBSecurityGroup":{"shape":"DBSecurityGroup"} } }, "SNSInvalidTopicFault":{ "type":"structure", "members":{ }, "error":{ "code":"SNSInvalidTopic", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SNSNoAuthorizationFault":{ "type":"structure", "members":{ }, "error":{ "code":"SNSNoAuthorization", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SNSTopicArnNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SNSTopicArnNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SnapshotQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"SnapshotQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SourceIdsList":{ "type":"list", "member":{ "shape":"String", "locationName":"SourceId" } }, "SourceNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SourceType":{ "type":"string", "enum":[ "db-instance", "db-parameter-group", "db-security-group", "db-snapshot" ] }, "StorageQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"StorageQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "String":{"type":"string"}, "Subnet":{ "type":"structure", "members":{ "SubnetIdentifier":{"shape":"String"}, "SubnetAvailabilityZone":{"shape":"AvailabilityZone"}, "SubnetStatus":{"shape":"String"} } }, "SubnetAlreadyInUse":{ "type":"structure", "members":{ }, "error":{ "code":"SubnetAlreadyInUse", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SubnetIdentifierList":{ "type":"list", "member":{ "shape":"String", "locationName":"SubnetIdentifier" } }, "SubnetList":{ "type":"list", "member":{ "shape":"Subnet", "locationName":"Subnet" } }, "SubscriptionAlreadyExistFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionAlreadyExist", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SubscriptionCategoryNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionCategoryNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SubscriptionNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SupportedCharacterSetsList":{ "type":"list", "member":{ "shape":"CharacterSet", "locationName":"CharacterSet" } }, "TStamp":{"type":"timestamp"}, "Tag":{ "type":"structure", "members":{ "Key":{"shape":"String"}, "Value":{"shape":"String"} } }, "TagList":{ "type":"list", "member":{ "shape":"Tag", "locationName":"Tag" } }, "TagListMessage":{ "type":"structure", "members":{ "TagList":{"shape":"TagList"} } }, "VpcSecurityGroupIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpcSecurityGroupId" } }, "VpcSecurityGroupMembership":{ "type":"structure", "members":{ "VpcSecurityGroupId":{"shape":"String"}, "Status":{"shape":"String"} } }, "VpcSecurityGroupMembershipList":{ "type":"list", "member":{ "shape":"VpcSecurityGroupMembership", "locationName":"VpcSecurityGroupMembership" } } } } aws-sdk-go-1.4.22/models/apis/rds/2013-09-09/docs-2.json000066400000000000000000005350561300374646400216330ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon Relational Database Service

        Amazon Relational Database Service (Amazon RDS) is a web service that makes it easier to set up, operate, and scale a relational database in the cloud. It provides cost-efficient, resizable capacity for an industry-standard relational database and manages common database administration tasks, freeing up developers to focus on what makes their applications and businesses unique.

        Amazon RDS gives you access to the capabilities of a MySQL, PostgreSQL, Microsoft SQL Server, or Oracle database server. This means the code, applications, and tools you already use today with your existing databases work with Amazon RDS without modification. Amazon RDS automatically backs up your database and maintains the database software that powers your DB instance. Amazon RDS is flexible: you can scale your database instance's compute resources and storage capacity to meet your application's demand. As with all Amazon Web Services, there are no up-front investments, and you pay only for the resources you use.

        This is an interface reference for Amazon RDS. It contains documentation for a programming or command line interface you can use to manage Amazon RDS. Note that Amazon RDS is asynchronous, which means that some interfaces may require techniques such as polling or callback functions to determine when a command has been applied. In this reference, the parameter descriptions indicate whether a command is applied immediately, on the next instance reboot, or during the maintenance window. For a summary of the Amazon RDS interfaces, go to Available RDS Interfaces.

        ", "operations": { "AddSourceIdentifierToSubscription": "

        Adds a source identifier to an existing RDS event notification subscription.

        ", "AddTagsToResource": "

        Adds metadata tags to an Amazon RDS resource. These tags can also be used with cost allocation reporting to track cost associated with Amazon RDS resources, or used in Condition statement in IAM policy for Amazon RDS.

        For an overview on tagging Amazon RDS resources, see Tagging Amazon RDS Resources.

        ", "AuthorizeDBSecurityGroupIngress": "

        Enables ingress to a DBSecurityGroup using one of two forms of authorization. First, EC2 or VPC security groups can be added to the DBSecurityGroup if the application using the database is running on EC2 or VPC instances. Second, IP ranges are available if the application accessing your database is running on the Internet. Required parameters for this API are one of CIDR range, EC2SecurityGroupId for VPC, or (EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId for non-VPC).

        You cannot authorize ingress from an EC2 security group in one Region to an Amazon RDS DB instance in another. You cannot authorize ingress from a VPC security group in one VPC to an Amazon RDS DB instance in another.

        For an overview of CIDR ranges, go to the Wikipedia Tutorial.

        ", "CopyDBSnapshot": "

        Copies the specified DBSnapshot. The source DBSnapshot must be in the \"available\" state.

        ", "CreateDBInstance": "

        Creates a new DB instance.

        ", "CreateDBInstanceReadReplica": "

        Creates a DB instance that acts as a read replica of a source DB instance.

        All read replica DB instances are created as Single-AZ deployments with backups disabled. All other DB instance attributes (including DB security groups and DB parameter groups) are inherited from the source DB instance, except as specified below.

        The source DB instance must have backup retention enabled.

        ", "CreateDBParameterGroup": "

        Creates a new DB parameter group.

        A DB parameter group is initially created with the default parameters for the database engine used by the DB instance. To provide custom values for any of the parameters, you must modify the group after creating it using ModifyDBParameterGroup. Once you've created a DB parameter group, you need to associate it with your DB instance using ModifyDBInstance. When you associate a new DB parameter group with a running DB instance, you need to reboot the DB Instance for the new DB parameter group and associated settings to take effect.

        After you create a DB parameter group, you should wait at least 5 minutes before creating your first DB instance that uses that DB parameter group as the default parameter group. This allows Amazon RDS to fully complete the create action before the parameter group is used as the default for a new DB instance. This is especially important for parameters that are critical when creating the default database for a DB instance, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBParameters command to verify that your DB parameter group has been created or modified.

        ", "CreateDBSecurityGroup": "

        Creates a new DB security group. DB security groups control access to a DB instance.

        ", "CreateDBSnapshot": "

        Creates a DBSnapshot. The source DBInstance must be in \"available\" state.

        ", "CreateDBSubnetGroup": "

        Creates a new DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in the region.

        ", "CreateEventSubscription": "

        Creates an RDS event notification subscription. This action requires a topic ARN (Amazon Resource Name) created by either the RDS console, the SNS console, or the SNS API. To obtain an ARN with SNS, you must create a topic in Amazon SNS and subscribe to the topic. The ARN is displayed in the SNS console.

        You can specify the type of source (SourceType) you want to be notified of, provide a list of RDS sources (SourceIds) that triggers the events, and provide a list of event categories (EventCategories) for events you want to be notified of. For example, you can specify SourceType = db-instance, SourceIds = mydbinstance1, mydbinstance2 and EventCategories = Availability, Backup.

        If you specify both the SourceType and SourceIds, such as SourceType = db-instance and SourceIdentifier = myDBInstance1, you will be notified of all the db-instance events for the specified source. If you specify a SourceType but do not specify a SourceIdentifier, you will receive notice of the events for that source type for all your RDS sources. If you do not specify either the SourceType nor the SourceIdentifier, you will be notified of events generated from all RDS sources belonging to your customer account.

        ", "CreateOptionGroup": "

        Creates a new option group. You can create up to 20 option groups.

        ", "DeleteDBInstance": "

        The DeleteDBInstance action deletes a previously provisioned DB instance. A successful response from the web service indicates the request was received correctly. When you delete a DB instance, all automated backups for that instance are deleted and cannot be recovered. Manual DB snapshots of the DB instance to be deleted are not deleted.

        If a final DB snapshot is requested the status of the RDS instance will be \"deleting\" until the DB snapshot is created. The API action DescribeDBInstance is used to monitor the status of this operation. The action cannot be canceled or reverted once submitted.

        ", "DeleteDBParameterGroup": "

        Deletes a specified DBParameterGroup. The DBParameterGroup cannot be associated with any RDS instances to be deleted.

        The specified DB parameter group cannot be associated with any DB instances. ", "DeleteDBSecurityGroup": "

        Deletes a DB security group.

        The specified DB security group must not be associated with any DB instances.", "DeleteDBSnapshot": "

        Deletes a DBSnapshot. If the snapshot is being copied, the copy operation is terminated.

        The DBSnapshot must be in the available state to be deleted.", "DeleteDBSubnetGroup": "

        Deletes a DB subnet group.

        The specified database subnet group must not be associated with any DB instances.", "DeleteEventSubscription": "

        Deletes an RDS event notification subscription.

        ", "DeleteOptionGroup": "

        Deletes an existing option group.

        ", "DescribeDBEngineVersions": "

        Returns a list of the available DB engines.

        ", "DescribeDBInstances": "

        Returns information about provisioned RDS instances. This API supports pagination.

        ", "DescribeDBLogFiles": "

        Returns a list of DB log files for the DB instance.

        ", "DescribeDBParameterGroups": "

        Returns a list of DBParameterGroup descriptions. If a DBParameterGroupName is specified, the list will contain only the description of the specified DB parameter group.

        ", "DescribeDBParameters": "

        Returns the detailed parameter list for a particular DB parameter group.

        ", "DescribeDBSecurityGroups": "

        Returns a list of DBSecurityGroup descriptions. If a DBSecurityGroupName is specified, the list will contain only the descriptions of the specified DB security group.

        ", "DescribeDBSnapshots": "

        Returns information about DB snapshots. This API supports pagination.

        ", "DescribeDBSubnetGroups": "

        Returns a list of DBSubnetGroup descriptions. If a DBSubnetGroupName is specified, the list will contain only the descriptions of the specified DBSubnetGroup.

        For an overview of CIDR ranges, go to the Wikipedia Tutorial.

        ", "DescribeEngineDefaultParameters": "

        Returns the default engine and system parameter information for the specified database engine.

        ", "DescribeEventCategories": "

        Displays a list of categories for all event source types, or, if specified, for a specified source type. You can see a list of the event categories and source types in the Events topic in the Amazon RDS User Guide.

        ", "DescribeEventSubscriptions": "

        Lists all the subscription descriptions for a customer account. The description for a subscription includes SubscriptionName, SNSTopicARN, CustomerID, SourceType, SourceID, CreationTime, and Status.

        If you specify a SubscriptionName, lists the description for that subscription.

        ", "DescribeEvents": "

        Returns events related to DB instances, DB security groups, DB snapshots, and DB parameter groups for the past 14 days. Events specific to a particular DB instance, DB security group, database snapshot, or DB parameter group can be obtained by providing the name as a parameter. By default, the past hour of events are returned.

        ", "DescribeOptionGroupOptions": "

        Describes all available options.

        ", "DescribeOptionGroups": "

        Describes the available option groups.

        ", "DescribeOrderableDBInstanceOptions": "

        Returns a list of orderable DB instance options for the specified engine.

        ", "DescribeReservedDBInstances": "

        Returns information about reserved DB instances for this account, or about a specified reserved DB instance.

        ", "DescribeReservedDBInstancesOfferings": "

        Lists available reserved DB instance offerings.

        ", "DownloadDBLogFilePortion": "

        Downloads all or a portion of the specified log file.

        ", "ListTagsForResource": "

        Lists all tags on an Amazon RDS resource.

        For an overview on tagging an Amazon RDS resource, see Tagging Amazon RDS Resources.

        ", "ModifyDBInstance": "

        Modify settings for a DB instance. You can change one or more database configuration parameters by specifying these parameters and the new values in the request.

        ", "ModifyDBParameterGroup": "

        Modifies the parameters of a DB parameter group. To modify more than one parameter, submit a list of the following: ParameterName, ParameterValue, and ApplyMethod. A maximum of 20 parameters can be modified in a single request.

        The apply-immediate method can be used only for dynamic parameters; the pending-reboot method can be used with MySQL, PostgreSQL, and Oracle DB instances for either dynamic or static parameters. For Microsoft SQL Server DB instances, the pending-reboot method can be used only for static parameters.

        After you modify a DB parameter group, you should wait at least 5 minutes before creating your first DB instance that uses that DB parameter group as the default parameter group. This allows Amazon RDS to fully complete the modify action before the parameter group is used as the default for a new DB instance. This is especially important for parameters that are critical when creating the default database for a DB instance, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBParameters command to verify that your DB parameter group has been created or modified.

        ", "ModifyDBSubnetGroup": "

        Modifies an existing DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in the region.

        ", "ModifyEventSubscription": "

        Modifies an existing RDS event notification subscription. Note that you cannot modify the source identifiers using this call; to change source identifiers for a subscription, use the AddSourceIdentifierToSubscription and RemoveSourceIdentifierFromSubscription calls.

        You can see a list of the event categories for a given SourceType in the Events topic in the Amazon RDS User Guide or by using the DescribeEventCategories action.

        ", "ModifyOptionGroup": "

        Modifies an existing option group.

        ", "PromoteReadReplica": "

        Promotes a read replica DB instance to a standalone DB instance.

        We recommend that you enable automated backups on your read replica before promoting the read replica. This ensures that no backup is taken during the promotion process. Once the instance is promoted to a primary instance, backups are taken based on your backup settings.

        ", "PurchaseReservedDBInstancesOffering": "

        Purchases a reserved DB instance offering.

        ", "RebootDBInstance": "

        Rebooting a DB instance restarts the database engine service. A reboot also applies to the DB instance any modifications to the associated DB parameter group that were pending. Rebooting a DB instance results in a momentary outage of the instance, during which the DB instance status is set to rebooting. If the RDS instance is configured for MultiAZ, it is possible that the reboot will be conducted through a failover. An Amazon RDS event is created when the reboot is completed.

        If your DB instance is deployed in multiple Availability Zones, you can force a failover from one AZ to the other during the reboot. You might force a failover to test the availability of your DB instance deployment or to restore operations to the original AZ after a failover occurs.

        The time required to reboot is a function of the specific database engine's crash recovery process. To improve the reboot time, we recommend that you reduce database activities as much as possible during the reboot process to reduce rollback activity for in-transit transactions.

        ", "RemoveSourceIdentifierFromSubscription": "

        Removes a source identifier from an existing RDS event notification subscription.

        ", "RemoveTagsFromResource": "

        Removes metadata tags from an Amazon RDS resource.

        For an overview on tagging an Amazon RDS resource, see Tagging Amazon RDS Resources.

        ", "ResetDBParameterGroup": "

        Modifies the parameters of a DB parameter group to the engine/system default value. To reset specific parameters submit a list of the following: ParameterName and ApplyMethod. To reset the entire DB parameter group, specify the DBParameterGroup name and ResetAllParameters parameters. When resetting the entire group, dynamic parameters are updated immediately and static parameters are set to pending-reboot to take effect on the next DB instance restart or RebootDBInstance request.

        ", "RestoreDBInstanceFromDBSnapshot": "

        Creates a new DB instance from a DB snapshot. The target database is created from the source database restore point with the same configuration as the original source database, except that the new RDS instance is created with the default security group.

        ", "RestoreDBInstanceToPointInTime": "

        Restores a DB instance to an arbitrary point-in-time. Users can restore to any point in time before the latestRestorableTime for up to backupRetentionPeriod days. The target database is created from the source database with the same configuration as the original database except that the DB instance is created with the default DB security group.

        ", "RevokeDBSecurityGroupIngress": "

        Revokes ingress from a DBSecurityGroup for previously authorized IP ranges or EC2 or VPC Security Groups. Required parameters for this API are one of CIDRIP, EC2SecurityGroupId for VPC, or (EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId).

        " }, "shapes": { "AddSourceIdentifierToSubscriptionMessage": { "base": "

        ", "refs": { } }, "AddSourceIdentifierToSubscriptionResult": { "base": null, "refs": { } }, "AddTagsToResourceMessage": { "base": "

        ", "refs": { } }, "ApplyMethod": { "base": null, "refs": { "Parameter$ApplyMethod": "

        Indicates when to apply parameter updates.

        " } }, "AuthorizationAlreadyExistsFault": { "base": "

        The specified CIDRIP or EC2 security group is already authorized for the specified DB security group.

        ", "refs": { } }, "AuthorizationNotFoundFault": { "base": "

        Specified CIDRIP or EC2 security group is not authorized for the specified DB security group.

        RDS may not also be authorized via IAM to perform necessary actions on your behalf.

        ", "refs": { } }, "AuthorizationQuotaExceededFault": { "base": "

        DB security group authorization quota has been reached.

        ", "refs": { } }, "AuthorizeDBSecurityGroupIngressMessage": { "base": "

        ", "refs": { } }, "AuthorizeDBSecurityGroupIngressResult": { "base": null, "refs": { } }, "AvailabilityZone": { "base": "

        Contains Availability Zone information.

        This data type is used as an element in the following data type:

        ", "refs": { "AvailabilityZoneList$member": null, "Subnet$SubnetAvailabilityZone": null } }, "AvailabilityZoneList": { "base": null, "refs": { "OrderableDBInstanceOption$AvailabilityZones": "

        A list of availability zones for the orderable DB instance.

        " } }, "Boolean": { "base": null, "refs": { "AvailabilityZone$ProvisionedIopsCapable": "

        True indicates the availability zone is capable of provisioned IOPs.

        ", "DBInstance$MultiAZ": "

        Specifies if the DB instance is a Multi-AZ deployment.

        ", "DBInstance$AutoMinorVersionUpgrade": "

        Indicates that minor version patches are applied automatically.

        ", "DBInstance$PubliclyAccessible": "

        Specifies the accessibility options for the DB instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC:true
        • VPC:false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "DBInstanceStatusInfo$Normal": "

        Boolean value that is true if the instance is operating normally, or false if the instance is in an error state.

        ", "DeleteDBInstanceMessage$SkipFinalSnapshot": "

        Determines whether a final DB snapshot is created before the DB instance is deleted. If true is specified, no DBSnapshot is created. If false is specified, a DB snapshot is created before the DB instance is deleted.

        Specify true when deleting a read replica.

        The FinalDBSnapshotIdentifier parameter must be specified if SkipFinalSnapshot is false.

        Default: false

        ", "DescribeDBEngineVersionsMessage$DefaultOnly": "

        Indicates that only the default version of the specified engine or engine and major version combination is returned.

        ", "DownloadDBLogFilePortionDetails$AdditionalDataPending": "

        Boolean value that if true, indicates there is more data to be downloaded.

        ", "EventSubscription$Enabled": "

        A Boolean value indicating if the subscription is enabled. True indicates the subscription is enabled.

        ", "ModifyDBInstanceMessage$ApplyImmediately": "

        Specifies whether the modifications in this request and any pending modifications are asynchronously applied as soon as possible, regardless of the PreferredMaintenanceWindow setting for the DB instance.

        If this parameter is set to false, changes to the DB instance are applied during the next maintenance window. Some parameter changes can cause an outage and will be applied on the next call to RebootDBInstance, or the next failure reboot. Review the table of parameters in Modifying a DB Instance and Using the Apply Immediately Parameter to see the impact that setting ApplyImmediately to true or false has for each modified parameter and to determine when the changes will be applied.

        Default: false

        ", "ModifyDBInstanceMessage$AllowMajorVersionUpgrade": "

        Indicates that major version upgrades are allowed. Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible.

        Constraints: This parameter must be set to true when specifying a value for the EngineVersion parameter that is a different major version than the DB instance's current version.

        ", "ModifyOptionGroupMessage$ApplyImmediately": "

        Indicates whether the changes should be applied immediately, or during the next maintenance window for each instance associated with the option group.

        ", "Option$Persistent": "

        Indicate if this option is persistent.

        ", "Option$Permanent": "

        Indicate if this option is permanent.

        ", "OptionGroup$AllowsVpcAndNonVpcInstanceMemberships": "

        Indicates whether this option group can be applied to both VPC and non-VPC instances. The value 'true' indicates the option group can be applied to both VPC and non-VPC instances.

        ", "OptionGroupOption$PortRequired": "

        Specifies whether the option requires a port.

        ", "OptionGroupOption$Persistent": "

        A persistent option cannot be removed from the option group once the option group is used, but this option can be removed from the db instance while modifying the related data and assigning another option group without this option.

        ", "OptionGroupOption$Permanent": "

        A permanent option cannot be removed from the option group once the option group is used, and it cannot be removed from the db instance after assigning an option group with this permanent option.

        ", "OptionGroupOptionSetting$IsModifiable": "

        Boolean value where true indicates that this option group option can be changed from the default value.

        ", "OptionSetting$IsModifiable": "

        A Boolean value that, when true, indicates the option setting can be modified from the default.

        ", "OptionSetting$IsCollection": "

        Indicates if the option setting is part of a collection.

        ", "OrderableDBInstanceOption$MultiAZCapable": "

        Indicates whether this orderable DB instance is multi-AZ capable.

        ", "OrderableDBInstanceOption$ReadReplicaCapable": "

        Indicates whether this orderable DB instance can have a read replica.

        ", "OrderableDBInstanceOption$Vpc": "

        Indicates whether this is a VPC orderable DB instance.

        ", "Parameter$IsModifiable": "

        Indicates whether (true) or not (false) the parameter can be modified. Some parameters have security or operational implications that prevent them from being changed.

        ", "ReservedDBInstance$MultiAZ": "

        Indicates if the reservation applies to Multi-AZ deployments.

        ", "ReservedDBInstancesOffering$MultiAZ": "

        Indicates if the offering applies to Multi-AZ deployments.

        ", "ResetDBParameterGroupMessage$ResetAllParameters": "

        Specifies whether (true) or not (false) to reset all parameters in the DB parameter group to default values.

        Default: true

        ", "RestoreDBInstanceToPointInTimeMessage$UseLatestRestorableTime": "

        Specifies whether (true) or not (false) the DB instance is restored from the latest backup time.

        Default: false

        Constraints: Cannot be specified if RestoreTime parameter is provided.

        " } }, "BooleanOptional": { "base": null, "refs": { "CreateDBInstanceMessage$MultiAZ": "

        Specifies if the DB instance is a Multi-AZ deployment. You cannot set the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        ", "CreateDBInstanceMessage$AutoMinorVersionUpgrade": "

        Indicates that minor engine upgrades will be applied automatically to the DB instance during the maintenance window.

        Default: true

        ", "CreateDBInstanceMessage$PubliclyAccessible": "

        Specifies the accessibility options for the DB instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC:true
        • VPC:false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "CreateDBInstanceReadReplicaMessage$AutoMinorVersionUpgrade": "

        Indicates that minor engine upgrades will be applied automatically to the read replica during the maintenance window.

        Default: Inherits from the source DB instance

        ", "CreateDBInstanceReadReplicaMessage$PubliclyAccessible": "

        Specifies the accessibility options for the DB instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC:true
        • VPC:false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "CreateEventSubscriptionMessage$Enabled": "

        A Boolean value; set to true to activate the subscription, set to false to create the subscription but not active it.

        ", "DescribeDBEngineVersionsMessage$ListSupportedCharacterSets": "

        If this parameter is specified, and if the requested engine supports the CharacterSetName parameter for CreateDBInstance, the response includes a list of supported character sets for each engine version.

        ", "DescribeOrderableDBInstanceOptionsMessage$Vpc": "

        The VPC filter value. Specify this parameter to show only the available VPC or non-VPC offerings.

        ", "DescribeReservedDBInstancesMessage$MultiAZ": "

        The Multi-AZ filter value. Specify this parameter to show only those reservations matching the specified Multi-AZ parameter.

        ", "DescribeReservedDBInstancesOfferingsMessage$MultiAZ": "

        The Multi-AZ filter value. Specify this parameter to show only the available offerings matching the specified Multi-AZ parameter.

        ", "ModifyDBInstanceMessage$MultiAZ": "

        Specifies if the DB instance is a Multi-AZ deployment. Changing this parameter does not result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        Constraints: Cannot be specified if the DB instance is a read replica.

        ", "ModifyDBInstanceMessage$AutoMinorVersionUpgrade": "

        Indicates that minor version upgrades will be applied automatically to the DB instance during the maintenance window. Changing this parameter does not result in an outage except in the following case and the change is asynchronously applied as soon as possible. An outage will result if this parameter is set to true during the maintenance window, and a newer minor version is available, and RDS has enabled auto patching for that engine version.

        ", "ModifyEventSubscriptionMessage$Enabled": "

        A Boolean value; set to true to activate the subscription.

        ", "PendingModifiedValues$MultiAZ": "

        Indicates that the Single-AZ DB instance is to change to a Multi-AZ deployment.

        ", "RebootDBInstanceMessage$ForceFailover": "

        When true, the reboot will be conducted through a MultiAZ failover.

        Constraint: You cannot specify true if the instance is not configured for MultiAZ.

        ", "RestoreDBInstanceFromDBSnapshotMessage$MultiAZ": "

        Specifies if the DB instance is a Multi-AZ deployment.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        ", "RestoreDBInstanceFromDBSnapshotMessage$PubliclyAccessible": "

        Specifies the accessibility options for the DB instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC:true
        • VPC:false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "RestoreDBInstanceFromDBSnapshotMessage$AutoMinorVersionUpgrade": "

        Indicates that minor version upgrades will be applied automatically to the DB instance during the maintenance window.

        ", "RestoreDBInstanceToPointInTimeMessage$MultiAZ": "

        Specifies if the DB instance is a Multi-AZ deployment.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        ", "RestoreDBInstanceToPointInTimeMessage$PubliclyAccessible": "

        Specifies the accessibility options for the DB instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC:true
        • VPC:false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "RestoreDBInstanceToPointInTimeMessage$AutoMinorVersionUpgrade": "

        Indicates that minor version upgrades will be applied automatically to the DB instance during the maintenance window.

        " } }, "CharacterSet": { "base": "

        This data type is used as a response element in the action DescribeDBEngineVersions.

        ", "refs": { "DBEngineVersion$DefaultCharacterSet": "

        The default character set for new instances of this engine version, if the CharacterSetName parameter of the CreateDBInstance API is not specified.

        ", "SupportedCharacterSetsList$member": null } }, "CopyDBSnapshotMessage": { "base": "

        ", "refs": { } }, "CopyDBSnapshotResult": { "base": null, "refs": { } }, "CreateDBInstanceMessage": { "base": "

        ", "refs": { } }, "CreateDBInstanceReadReplicaMessage": { "base": null, "refs": { } }, "CreateDBInstanceReadReplicaResult": { "base": null, "refs": { } }, "CreateDBInstanceResult": { "base": null, "refs": { } }, "CreateDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "CreateDBParameterGroupResult": { "base": null, "refs": { } }, "CreateDBSecurityGroupMessage": { "base": "

        ", "refs": { } }, "CreateDBSecurityGroupResult": { "base": null, "refs": { } }, "CreateDBSnapshotMessage": { "base": "

        ", "refs": { } }, "CreateDBSnapshotResult": { "base": null, "refs": { } }, "CreateDBSubnetGroupMessage": { "base": "

        ", "refs": { } }, "CreateDBSubnetGroupResult": { "base": null, "refs": { } }, "CreateEventSubscriptionMessage": { "base": "

        ", "refs": { } }, "CreateEventSubscriptionResult": { "base": null, "refs": { } }, "CreateOptionGroupMessage": { "base": "

        ", "refs": { } }, "CreateOptionGroupResult": { "base": null, "refs": { } }, "DBEngineVersion": { "base": "

        This data type is used as a response element in the action DescribeDBEngineVersions.

        ", "refs": { "DBEngineVersionList$member": null } }, "DBEngineVersionList": { "base": null, "refs": { "DBEngineVersionMessage$DBEngineVersions": "

        A list of DBEngineVersion elements.

        " } }, "DBEngineVersionMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBEngineVersions action.

        ", "refs": { } }, "DBInstance": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBInstances action.

        ", "refs": { "CreateDBInstanceReadReplicaResult$DBInstance": null, "CreateDBInstanceResult$DBInstance": null, "DBInstanceList$member": null, "DeleteDBInstanceResult$DBInstance": null, "ModifyDBInstanceResult$DBInstance": null, "PromoteReadReplicaResult$DBInstance": null, "RebootDBInstanceResult$DBInstance": null, "RestoreDBInstanceFromDBSnapshotResult$DBInstance": null, "RestoreDBInstanceToPointInTimeResult$DBInstance": null } }, "DBInstanceAlreadyExistsFault": { "base": "

        User already has a DB instance with the given identifier.

        ", "refs": { } }, "DBInstanceList": { "base": null, "refs": { "DBInstanceMessage$DBInstances": "

        A list of DBInstance instances.

        " } }, "DBInstanceMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBInstances action.

        ", "refs": { } }, "DBInstanceNotFoundFault": { "base": "

        DBInstanceIdentifier does not refer to an existing DB instance.

        ", "refs": { } }, "DBInstanceStatusInfo": { "base": "

        Provides a list of status information for a DB instance.

        ", "refs": { "DBInstanceStatusInfoList$member": null } }, "DBInstanceStatusInfoList": { "base": null, "refs": { "DBInstance$StatusInfos": "

        The status of a read replica. If the instance is not a read replica, this will be blank.

        " } }, "DBLogFileNotFoundFault": { "base": "

        LogFileName does not refer to an existing DB log file.

        ", "refs": { } }, "DBParameterGroup": { "base": "

        Contains the result of a successful invocation of the CreateDBParameterGroup action.

        This data type is used as a request parameter in the DeleteDBParameterGroup action, and as a response element in the DescribeDBParameterGroups action.

        ", "refs": { "CreateDBParameterGroupResult$DBParameterGroup": null, "DBParameterGroupList$member": null } }, "DBParameterGroupAlreadyExistsFault": { "base": "

        A DB parameter group with the same name exists.

        ", "refs": { } }, "DBParameterGroupDetails": { "base": "

        Contains the result of a successful invocation of the DescribeDBParameters action.

        ", "refs": { } }, "DBParameterGroupList": { "base": null, "refs": { "DBParameterGroupsMessage$DBParameterGroups": "

        A list of DBParameterGroup instances.

        " } }, "DBParameterGroupNameMessage": { "base": "

        Contains the result of a successful invocation of the ModifyDBParameterGroup or ResetDBParameterGroup action.

        ", "refs": { } }, "DBParameterGroupNotFoundFault": { "base": "

        DBParameterGroupName does not refer to an existing DB parameter group.

        ", "refs": { } }, "DBParameterGroupQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB parameter groups.

        ", "refs": { } }, "DBParameterGroupStatus": { "base": "

        The status of the DB parameter group.

        This data type is used as a response element in the following actions:

        ", "refs": { "DBParameterGroupStatusList$member": null } }, "DBParameterGroupStatusList": { "base": null, "refs": { "DBInstance$DBParameterGroups": "

        Provides the list of DB parameter groups applied to this DB instance.

        " } }, "DBParameterGroupsMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBParameterGroups action.

        ", "refs": { } }, "DBSecurityGroup": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBSecurityGroups action.

        ", "refs": { "AuthorizeDBSecurityGroupIngressResult$DBSecurityGroup": null, "CreateDBSecurityGroupResult$DBSecurityGroup": null, "DBSecurityGroups$member": null, "RevokeDBSecurityGroupIngressResult$DBSecurityGroup": null } }, "DBSecurityGroupAlreadyExistsFault": { "base": "

        A DB security group with the name specified in DBSecurityGroupName already exists.

        ", "refs": { } }, "DBSecurityGroupMembership": { "base": "

        This data type is used as a response element in the following actions:

        ", "refs": { "DBSecurityGroupMembershipList$member": null } }, "DBSecurityGroupMembershipList": { "base": null, "refs": { "DBInstance$DBSecurityGroups": "

        Provides List of DB security group elements containing only DBSecurityGroup.Name and DBSecurityGroup.Status subelements.

        ", "Option$DBSecurityGroupMemberships": "

        If the option requires access to a port, then this DB security group allows access to the port.

        " } }, "DBSecurityGroupMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBSecurityGroups action.

        ", "refs": { } }, "DBSecurityGroupNameList": { "base": null, "refs": { "CreateDBInstanceMessage$DBSecurityGroups": "

        A list of DB security groups to associate with this DB instance.

        Default: The default DB security group for the database engine.

        ", "ModifyDBInstanceMessage$DBSecurityGroups": "

        A list of DB security groups to authorize on this DB instance. Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "OptionConfiguration$DBSecurityGroupMemberships": "

        A list of DBSecurityGroupMemebrship name strings used for this option.

        " } }, "DBSecurityGroupNotFoundFault": { "base": "

        DBSecurityGroupName does not refer to an existing DB security group.

        ", "refs": { } }, "DBSecurityGroupNotSupportedFault": { "base": "

        A DB security group is not allowed for this action.

        ", "refs": { } }, "DBSecurityGroupQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB security groups.

        ", "refs": { } }, "DBSecurityGroups": { "base": null, "refs": { "DBSecurityGroupMessage$DBSecurityGroups": "

        A list of DBSecurityGroup instances.

        " } }, "DBSnapshot": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBSnapshots action.

        ", "refs": { "CopyDBSnapshotResult$DBSnapshot": null, "CreateDBSnapshotResult$DBSnapshot": null, "DBSnapshotList$member": null, "DeleteDBSnapshotResult$DBSnapshot": null } }, "DBSnapshotAlreadyExistsFault": { "base": "

        DBSnapshotIdentifier is already used by an existing snapshot.

        ", "refs": { } }, "DBSnapshotList": { "base": null, "refs": { "DBSnapshotMessage$DBSnapshots": "

        A list of DBSnapshot instances.

        " } }, "DBSnapshotMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBSnapshots action.

        ", "refs": { } }, "DBSnapshotNotFoundFault": { "base": "

        DBSnapshotIdentifier does not refer to an existing DB snapshot.

        ", "refs": { } }, "DBSubnetGroup": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBSubnetGroups action.

        ", "refs": { "CreateDBSubnetGroupResult$DBSubnetGroup": null, "DBInstance$DBSubnetGroup": "

        Specifies information on the subnet group associated with the DB instance, including the name, description, and subnets in the subnet group.

        ", "DBSubnetGroups$member": null, "ModifyDBSubnetGroupResult$DBSubnetGroup": null } }, "DBSubnetGroupAlreadyExistsFault": { "base": "

        DBSubnetGroupName is already used by an existing DB subnet group.

        ", "refs": { } }, "DBSubnetGroupDoesNotCoverEnoughAZs": { "base": "

        Subnets in the DB subnet group should cover at least two Availability Zones unless there is only one Availability Zone.

        ", "refs": { } }, "DBSubnetGroupMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBSubnetGroups action.

        ", "refs": { } }, "DBSubnetGroupNotAllowedFault": { "base": "

        Indicates that the DBSubnetGroup should not be specified while creating read replicas that lie in the same region as the source instance.

        ", "refs": { } }, "DBSubnetGroupNotFoundFault": { "base": "

        DBSubnetGroupName does not refer to an existing DB subnet group.

        ", "refs": { } }, "DBSubnetGroupQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB subnet groups.

        ", "refs": { } }, "DBSubnetGroups": { "base": null, "refs": { "DBSubnetGroupMessage$DBSubnetGroups": "

        A list of DBSubnetGroup instances.

        " } }, "DBSubnetQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of subnets in a DB subnet groups.

        ", "refs": { } }, "DBUpgradeDependencyFailureFault": { "base": "

        The DB upgrade failed because a resource the DB depends on could not be modified.

        ", "refs": { } }, "DeleteDBInstanceMessage": { "base": "

        ", "refs": { } }, "DeleteDBInstanceResult": { "base": null, "refs": { } }, "DeleteDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "DeleteDBSecurityGroupMessage": { "base": "

        ", "refs": { } }, "DeleteDBSnapshotMessage": { "base": "

        ", "refs": { } }, "DeleteDBSnapshotResult": { "base": null, "refs": { } }, "DeleteDBSubnetGroupMessage": { "base": "

        ", "refs": { } }, "DeleteEventSubscriptionMessage": { "base": "

        ", "refs": { } }, "DeleteEventSubscriptionResult": { "base": null, "refs": { } }, "DeleteOptionGroupMessage": { "base": "

        ", "refs": { } }, "DescribeDBEngineVersionsMessage": { "base": null, "refs": { } }, "DescribeDBInstancesMessage": { "base": "

        ", "refs": { } }, "DescribeDBLogFilesDetails": { "base": "

        This data type is used as a response element to DescribeDBLogFiles.

        ", "refs": { "DescribeDBLogFilesList$member": null } }, "DescribeDBLogFilesList": { "base": null, "refs": { "DescribeDBLogFilesResponse$DescribeDBLogFiles": "

        The DB log files returned.

        " } }, "DescribeDBLogFilesMessage": { "base": "

        ", "refs": { } }, "DescribeDBLogFilesResponse": { "base": "

        The response from a call to DescribeDBLogFiles.

        ", "refs": { } }, "DescribeDBParameterGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeDBParametersMessage": { "base": null, "refs": { } }, "DescribeDBSecurityGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeDBSnapshotsMessage": { "base": "

        ", "refs": { } }, "DescribeDBSubnetGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeEngineDefaultParametersMessage": { "base": "

        ", "refs": { } }, "DescribeEngineDefaultParametersResult": { "base": null, "refs": { } }, "DescribeEventCategoriesMessage": { "base": "

        ", "refs": { } }, "DescribeEventSubscriptionsMessage": { "base": "

        ", "refs": { } }, "DescribeEventsMessage": { "base": "

        ", "refs": { } }, "DescribeOptionGroupOptionsMessage": { "base": "

        ", "refs": { } }, "DescribeOptionGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeOrderableDBInstanceOptionsMessage": { "base": "

        ", "refs": { } }, "DescribeReservedDBInstancesMessage": { "base": "

        ", "refs": { } }, "DescribeReservedDBInstancesOfferingsMessage": { "base": "

        ", "refs": { } }, "Double": { "base": null, "refs": { "RecurringCharge$RecurringChargeAmount": "

        The amount of the recurring charge.

        ", "ReservedDBInstance$FixedPrice": "

        The fixed price charged for this reserved DB instance.

        ", "ReservedDBInstance$UsagePrice": "

        The hourly price charged for this reserved DB instance.

        ", "ReservedDBInstancesOffering$FixedPrice": "

        The fixed price charged for this offering.

        ", "ReservedDBInstancesOffering$UsagePrice": "

        The hourly price charged for this offering.

        " } }, "DownloadDBLogFilePortionDetails": { "base": "

        This data type is used as a response element to DownloadDBLogFilePortion.

        ", "refs": { } }, "DownloadDBLogFilePortionMessage": { "base": "

        ", "refs": { } }, "EC2SecurityGroup": { "base": "

        This data type is used as a response element in the following actions:

        ", "refs": { "EC2SecurityGroupList$member": null } }, "EC2SecurityGroupList": { "base": null, "refs": { "DBSecurityGroup$EC2SecurityGroups": "

        Contains a list of EC2SecurityGroup elements.

        " } }, "Endpoint": { "base": "

        This data type is used as a response element in the following actions:

        ", "refs": { "DBInstance$Endpoint": "

        Specifies the connection endpoint.

        " } }, "EngineDefaults": { "base": "

        Contains the result of a successful invocation of the DescribeEngineDefaultParameters action.

        ", "refs": { "DescribeEngineDefaultParametersResult$EngineDefaults": null } }, "Event": { "base": "

        This data type is used as a response element in the DescribeEvents action.

        ", "refs": { "EventList$member": null } }, "EventCategoriesList": { "base": null, "refs": { "CreateEventSubscriptionMessage$EventCategories": "

        A list of event categories for a SourceType that you want to subscribe to. You can see a list of the categories for a given SourceType in the Events topic in the Amazon RDS User Guide or by using the DescribeEventCategories action.

        ", "DescribeEventsMessage$EventCategories": "

        A list of event categories that trigger notifications for a event notification subscription.

        ", "Event$EventCategories": "

        Specifies the category for the event.

        ", "EventCategoriesMap$EventCategories": "

        The event categories for the specified source type

        ", "EventSubscription$EventCategoriesList": "

        A list of event categories for the RDS event notification subscription.

        ", "ModifyEventSubscriptionMessage$EventCategories": "

        A list of event categories for a SourceType that you want to subscribe to. You can see a list of the categories for a given SourceType in the Events topic in the Amazon RDS User Guide or by using the DescribeEventCategories action.

        " } }, "EventCategoriesMap": { "base": "

        Contains the results of a successful invocation of the DescribeEventCategories action.

        ", "refs": { "EventCategoriesMapList$member": null } }, "EventCategoriesMapList": { "base": null, "refs": { "EventCategoriesMessage$EventCategoriesMapList": "

        A list of EventCategoriesMap data types.

        " } }, "EventCategoriesMessage": { "base": "

        Data returned from the DescribeEventCategories action.

        ", "refs": { } }, "EventList": { "base": null, "refs": { "EventsMessage$Events": "

        A list of Event instances.

        " } }, "EventSubscription": { "base": "

        Contains the results of a successful invocation of the DescribeEventSubscriptions action.

        ", "refs": { "AddSourceIdentifierToSubscriptionResult$EventSubscription": null, "CreateEventSubscriptionResult$EventSubscription": null, "DeleteEventSubscriptionResult$EventSubscription": null, "EventSubscriptionsList$member": null, "ModifyEventSubscriptionResult$EventSubscription": null, "RemoveSourceIdentifierFromSubscriptionResult$EventSubscription": null } }, "EventSubscriptionQuotaExceededFault": { "base": "

        You have reached the maximum number of event subscriptions.

        ", "refs": { } }, "EventSubscriptionsList": { "base": null, "refs": { "EventSubscriptionsMessage$EventSubscriptionsList": "

        A list of EventSubscriptions data types.

        " } }, "EventSubscriptionsMessage": { "base": "

        Data returned by the DescribeEventSubscriptions action.

        ", "refs": { } }, "EventsMessage": { "base": "

        Contains the result of a successful invocation of the DescribeEvents action.

        ", "refs": { } }, "Filter": { "base": null, "refs": { "FilterList$member": null } }, "FilterList": { "base": null, "refs": { "DescribeDBEngineVersionsMessage$Filters": "

        Not currently supported.

        ", "DescribeDBInstancesMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBLogFilesMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBParameterGroupsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBParametersMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBSecurityGroupsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBSnapshotsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBSubnetGroupsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeEngineDefaultParametersMessage$Filters": "

        Not currently supported.

        ", "DescribeEventCategoriesMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeEventSubscriptionsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeEventsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeOptionGroupOptionsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeOptionGroupsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeOrderableDBInstanceOptionsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeReservedDBInstancesMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeReservedDBInstancesOfferingsMessage$Filters": "

        This parameter is not currently supported.

        ", "ListTagsForResourceMessage$Filters": "

        This parameter is not currently supported.

        " } }, "FilterValueList": { "base": null, "refs": { "Filter$Values": "

        This parameter is not currently supported.

        " } }, "IPRange": { "base": "

        This data type is used as a response element in the DescribeDBSecurityGroups action.

        ", "refs": { "IPRangeList$member": null } }, "IPRangeList": { "base": null, "refs": { "DBSecurityGroup$IPRanges": "

        Contains a list of IPRange elements.

        " } }, "InstanceQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB instances.

        ", "refs": { } }, "InsufficientDBInstanceCapacityFault": { "base": "

        Specified DB instance class is not available in the specified Availability Zone.

        ", "refs": { } }, "Integer": { "base": null, "refs": { "DBInstance$AllocatedStorage": "

        Specifies the allocated storage size specified in gigabytes.

        ", "DBInstance$BackupRetentionPeriod": "

        Specifies the number of days for which automatic DB snapshots are retained.

        ", "DBSnapshot$AllocatedStorage": "

        Specifies the allocated storage size in gigabytes (GB).

        ", "DBSnapshot$Port": "

        Specifies the port that the database engine was listening on at the time of the snapshot.

        ", "DBSnapshot$PercentProgress": "

        The percentage of the estimated data that has been transferred.

        ", "DownloadDBLogFilePortionMessage$NumberOfLines": "

        The number of lines to download.

        If the NumberOfLines parameter is specified, then the block of lines returned can be from the beginning or the end of the log file, depending on the value of the Marker parameter.

        • If neither Marker or NumberOfLines are specified, the entire log file is returned.

        • If NumberOfLines is specified and Marker is not specified, then the most recent lines from the end of the log file are returned.

        • If Marker is specified as \"0\", then the specified number of lines from the beginning of the log file are returned.

        • You can download the log file in blocks of lines by specifying the size of the block using the NumberOfLines parameter, and by specifying a value of \"0\" for the Marker parameter in your first request. Include the Marker value returned in the response as the Marker value for the next request, continuing until the AdditionalDataPending response element returns false.

        ", "Endpoint$Port": "

        Specifies the port that the database engine is listening on.

        ", "ReservedDBInstance$Duration": "

        The duration of the reservation in seconds.

        ", "ReservedDBInstance$DBInstanceCount": "

        The number of reserved DB instances.

        ", "ReservedDBInstancesOffering$Duration": "

        The duration of the offering in seconds.

        " } }, "IntegerOptional": { "base": null, "refs": { "CreateDBInstanceMessage$AllocatedStorage": "

        The amount of storage (in gigabytes) to be initially allocated for the database instance.

        Type: Integer

        MySQL

        Constraints: Must be an integer from 5 to 3072.

        PostgreSQL

        Constraints: Must be an integer from 5 to 3072.

        Oracle

        Constraints: Must be an integer from 10 to 3072.

        SQL Server

        Constraints: Must be an integer from 200 to 1024 (Standard Edition and Enterprise Edition) or from 30 to 1024 (Express Edition and Web Edition)

        ", "CreateDBInstanceMessage$BackupRetentionPeriod": "

        The number of days for which automated backups are retained. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

        Default: 1

        Constraints:

        • Must be a value from 0 to 35
        • Cannot be set to 0 if the DB instance is a source to read replicas
        ", "CreateDBInstanceMessage$Port": "

        The port number on which the database accepts connections.

        MySQL

        Default: 3306

        Valid Values: 1150-65535

        Type: Integer

        PostgreSQL

        Default: 5432

        Valid Values: 1150-65535

        Type: Integer

        Oracle

        Default: 1521

        Valid Values: 1150-65535

        SQL Server

        Default: 1433

        Valid Values: 1150-65535 except for 1434, 3389, 47001, 49152, and 49152 through 49156.

        ", "CreateDBInstanceMessage$Iops": "

        The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB instance.

        Constraints: To use PIOPS, this value must be an integer greater than 1000.

        ", "CreateDBInstanceReadReplicaMessage$Port": "

        The port number that the DB instance uses for connections.

        Default: Inherits from the source DB instance

        Valid Values: 1150-65535

        ", "CreateDBInstanceReadReplicaMessage$Iops": "

        The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB instance.

        ", "DBInstance$Iops": "

        Specifies the Provisioned IOPS (I/O operations per second) value.

        ", "DBSnapshot$Iops": "

        Specifies the Provisioned IOPS (I/O operations per second) value of the DB instance at the time of the snapshot.

        ", "DescribeDBEngineVersionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more than the MaxRecords value is available, a pagination token called a marker is included in the response so that the following results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBInstancesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBLogFilesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        ", "DescribeDBParameterGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBParametersMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBSecurityGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBSnapshotsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBSubnetGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeEngineDefaultParametersMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeEventSubscriptionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeEventsMessage$Duration": "

        The number of minutes to retrieve events for.

        Default: 60

        ", "DescribeEventsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeOptionGroupOptionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeOptionGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeOrderableDBInstanceOptionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeReservedDBInstancesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more than the MaxRecords value is available, a pagination token called a marker is included in the response so that the following results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeReservedDBInstancesOfferingsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more than the MaxRecords value is available, a pagination token called a marker is included in the response so that the following results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "ModifyDBInstanceMessage$AllocatedStorage": "

        The new storage capacity of the RDS instance. Changing this parameter does not result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        MySQL

        Default: Uses existing setting

        Valid Values: 5-3072

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

        Type: Integer

        PostgreSQL

        Default: Uses existing setting

        Valid Values: 5-3072

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

        Type: Integer

        Oracle

        Default: Uses existing setting

        Valid Values: 10-3072

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

        SQL Server

        Cannot be modified.

        If you choose to migrate your DB instance from using standard storage to using Provisioned IOPS, or from using Provisioned IOPS to using standard storage, the process can take time. The duration of the migration depends on several factors such as database load, storage size, storage type (standard or Provisioned IOPS), amount of IOPS provisioned (if any), and the number of prior scale storage operations. Typical migration times are under 24 hours, but the process can take up to several days in some cases. During the migration, the DB instance will be available for use, but may experience performance degradation. While the migration takes place, nightly backups for the instance will be suspended. No other Amazon RDS operations can take place for the instance, including modifying the instance, rebooting the instance, deleting the instance, creating a read replica for the instance, and creating a DB snapshot of the instance.

        ", "ModifyDBInstanceMessage$BackupRetentionPeriod": "

        The number of days to retain automated backups. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

        Changing this parameter can result in an outage if you change from 0 to a non-zero value or from a non-zero value to 0. These changes are applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request. If you change the parameter from one non-zero value to another non-zero value, the change is asynchronously applied as soon as possible.

        Default: Uses existing setting

        Constraints:

        • Must be a value from 0 to 35
        • Can be specified for a read replica only if the source is running MySQL 5.6
        • Cannot be set to 0 if the DB instance is a source to read replicas
        ", "ModifyDBInstanceMessage$Iops": "

        The new Provisioned IOPS (I/O operations per second) value for the RDS instance. Changing this parameter does not result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        Default: Uses existing setting

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value. If you are migrating from Provisioned IOPS to standard storage, set this value to 0.

        SQL Server

        Setting the IOPS value for the SQL Server database engine is not supported.

        Type: Integer

        If you choose to migrate your DB instance from using standard storage to using Provisioned IOPS, or from using Provisioned IOPS to using standard storage, the process can take time. The duration of the migration depends on several factors such as database load, storage size, storage type (standard or Provisioned IOPS), amount of IOPS provisioned (if any), and the number of prior scale storage operations. Typical migration times are under 24 hours, but the process can take up to several days in some cases. During the migration, the DB instance will be available for use, but may experience performance degradation. While the migration takes place, nightly backups for the instance will be suspended. No other Amazon RDS operations can take place for the instance, including modifying the instance, rebooting the instance, deleting the instance, creating a read replica for the instance, and creating a DB snapshot of the instance.

        ", "Option$Port": "

        If required, the port configured for this option to use.

        ", "OptionConfiguration$Port": "

        The optional port for the option.

        ", "OptionGroupOption$DefaultPort": "

        If the option requires a port, specifies the default port for the option.

        ", "PendingModifiedValues$AllocatedStorage": "

        Contains the new AllocatedStorage size for the DB instance that will be applied or is in progress.

        ", "PendingModifiedValues$Port": "

        Specifies the pending port for the DB instance.

        ", "PendingModifiedValues$BackupRetentionPeriod": "

        Specifies the pending number of days for which automated backups are retained.

        ", "PendingModifiedValues$Iops": "

        Specifies the new Provisioned IOPS value for the DB instance that will be applied or is being applied.

        ", "PromoteReadReplicaMessage$BackupRetentionPeriod": "

        The number of days to retain automated backups. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

        Default: 1

        Constraints:

        • Must be a value from 0 to 8
        ", "PurchaseReservedDBInstancesOfferingMessage$DBInstanceCount": "

        The number of instances to reserve.

        Default: 1

        ", "RestoreDBInstanceFromDBSnapshotMessage$Port": "

        The port number on which the database accepts connections.

        Default: The same port as the original DB instance

        Constraints: Value must be 1150-65535

        ", "RestoreDBInstanceFromDBSnapshotMessage$Iops": "

        Specifies the amount of provisioned IOPS for the DB instance, expressed in I/O operations per second. If this parameter is not specified, the IOPS value will be taken from the backup. If this parameter is set to 0, the new instance will be converted to a non-PIOPS instance, which will take additional time, though your DB instance will be available for connections before the conversion starts.

        Constraints: Must be an integer greater than 1000.

        SQL Server

        Setting the IOPS value for the SQL Server database engine is not supported.

        ", "RestoreDBInstanceToPointInTimeMessage$Port": "

        The port number on which the database accepts connections.

        Constraints: Value must be 1150-65535

        Default: The same port as the original DB instance.

        ", "RestoreDBInstanceToPointInTimeMessage$Iops": "

        The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB instance.

        Constraints: Must be an integer greater than 1000.

        SQL Server

        Setting the IOPS value for the SQL Server database engine is not supported.

        " } }, "InvalidDBInstanceStateFault": { "base": "

        The specified DB instance is not in the available state.

        ", "refs": { } }, "InvalidDBParameterGroupStateFault": { "base": "

        The DB parameter group cannot be deleted because it is in use.

        ", "refs": { } }, "InvalidDBSecurityGroupStateFault": { "base": "

        The state of the DB security group does not allow deletion.

        ", "refs": { } }, "InvalidDBSnapshotStateFault": { "base": "

        The state of the DB snapshot does not allow deletion.

        ", "refs": { } }, "InvalidDBSubnetGroupFault": { "base": "

        Indicates the DBSubnetGroup does not belong to the same VPC as that of an existing cross region read replica of the same source instance.

        ", "refs": { } }, "InvalidDBSubnetGroupStateFault": { "base": "

        The DB subnet group cannot be deleted because it is in use.

        ", "refs": { } }, "InvalidDBSubnetStateFault": { "base": "

        The DB subnet is not in the available state.

        ", "refs": { } }, "InvalidEventSubscriptionStateFault": { "base": "

        This error can occur if someone else is modifying a subscription. You should retry the action.

        ", "refs": { } }, "InvalidOptionGroupStateFault": { "base": "

        The option group is not in the available state.

        ", "refs": { } }, "InvalidRestoreFault": { "base": "

        Cannot restore from vpc backup to non-vpc DB instance.

        ", "refs": { } }, "InvalidSubnet": { "base": "

        The requested subnet is invalid, or multiple subnets were requested that are not all in a common VPC.

        ", "refs": { } }, "InvalidVPCNetworkStateFault": { "base": "

        DB subnet group does not cover all Availability Zones after it is created because users' change.

        ", "refs": { } }, "KeyList": { "base": null, "refs": { "RemoveTagsFromResourceMessage$TagKeys": "

        The tag key (name) of the tag to be removed.

        " } }, "ListTagsForResourceMessage": { "base": "

        ", "refs": { } }, "Long": { "base": null, "refs": { "DescribeDBLogFilesDetails$LastWritten": "

        A POSIX timestamp when the last log entry was written.

        ", "DescribeDBLogFilesDetails$Size": "

        The size, in bytes, of the log file for the specified DB instance.

        ", "DescribeDBLogFilesMessage$FileLastWritten": "

        Filters the available log files for files written since the specified date, in POSIX timestamp format.

        ", "DescribeDBLogFilesMessage$FileSize": "

        Filters the available log files for files larger than the specified size.

        " } }, "ModifyDBInstanceMessage": { "base": "

        ", "refs": { } }, "ModifyDBInstanceResult": { "base": null, "refs": { } }, "ModifyDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "ModifyDBSubnetGroupMessage": { "base": "

        ", "refs": { } }, "ModifyDBSubnetGroupResult": { "base": null, "refs": { } }, "ModifyEventSubscriptionMessage": { "base": "

        ", "refs": { } }, "ModifyEventSubscriptionResult": { "base": null, "refs": { } }, "ModifyOptionGroupMessage": { "base": "

        ", "refs": { } }, "ModifyOptionGroupResult": { "base": null, "refs": { } }, "Option": { "base": "

        Option details.

        ", "refs": { "OptionsList$member": null } }, "OptionConfiguration": { "base": "

        A list of all available options

        ", "refs": { "OptionConfigurationList$member": null } }, "OptionConfigurationList": { "base": null, "refs": { "ModifyOptionGroupMessage$OptionsToInclude": "

        Options in this list are added to the option group or, if already present, the specified configuration is used to update the existing configuration.

        " } }, "OptionGroup": { "base": "

        ", "refs": { "CreateOptionGroupResult$OptionGroup": null, "ModifyOptionGroupResult$OptionGroup": null, "OptionGroupsList$member": null } }, "OptionGroupAlreadyExistsFault": { "base": "

        The option group you are trying to create already exists.

        ", "refs": { } }, "OptionGroupMembership": { "base": "

        Provides information on the option groups the DB instance is a member of.

        ", "refs": { "OptionGroupMembershipList$member": null } }, "OptionGroupMembershipList": { "base": null, "refs": { "DBInstance$OptionGroupMemberships": "

        Provides the list of option group memberships for this DB instance.

        " } }, "OptionGroupNotFoundFault": { "base": "

        The specified option group could not be found.

        ", "refs": { } }, "OptionGroupOption": { "base": "

        Available option.

        ", "refs": { "OptionGroupOptionsList$member": null } }, "OptionGroupOptionSetting": { "base": "

        option group option settings are used to display settings available for each option with their default values and other information. These values are used with the DescribeOptionGroupOptions action.

        ", "refs": { "OptionGroupOptionSettingsList$member": null } }, "OptionGroupOptionSettingsList": { "base": null, "refs": { "OptionGroupOption$OptionGroupOptionSettings": "

        Specifies the option settings that are available (and the default value) for each option in an option group.

        " } }, "OptionGroupOptionsList": { "base": "

        List of available option group options.

        ", "refs": { "OptionGroupOptionsMessage$OptionGroupOptions": null } }, "OptionGroupOptionsMessage": { "base": "

        ", "refs": { } }, "OptionGroupQuotaExceededFault": { "base": "

        The quota of 20 option groups was exceeded for this AWS account.

        ", "refs": { } }, "OptionGroups": { "base": "

        List of option groups.

        ", "refs": { } }, "OptionGroupsList": { "base": null, "refs": { "OptionGroups$OptionGroupsList": "

        List of option groups.

        " } }, "OptionNamesList": { "base": null, "refs": { "ModifyOptionGroupMessage$OptionsToRemove": "

        Options in this list are removed from the option group.

        " } }, "OptionSetting": { "base": "

        Option settings are the actual settings being applied or configured for that option. It is used when you modify an option group or describe option groups. For example, the NATIVE_NETWORK_ENCRYPTION option has a setting called SQLNET.ENCRYPTION_SERVER that can have several different values.

        ", "refs": { "OptionSettingConfigurationList$member": null, "OptionSettingsList$member": null } }, "OptionSettingConfigurationList": { "base": null, "refs": { "Option$OptionSettings": "

        The option settings for this option.

        " } }, "OptionSettingsList": { "base": null, "refs": { "OptionConfiguration$OptionSettings": "

        The option settings to include in an option group.

        " } }, "OptionsDependedOn": { "base": null, "refs": { "OptionGroupOption$OptionsDependedOn": "

        List of all options that are prerequisites for this option.

        " } }, "OptionsList": { "base": null, "refs": { "OptionGroup$Options": "

        Indicates what options are available in the option group.

        " } }, "OrderableDBInstanceOption": { "base": "

        Contains a list of available options for a DB instance

        This data type is used as a response element in the DescribeOrderableDBInstanceOptions action.

        ", "refs": { "OrderableDBInstanceOptionsList$member": null } }, "OrderableDBInstanceOptionsList": { "base": null, "refs": { "OrderableDBInstanceOptionsMessage$OrderableDBInstanceOptions": "

        An OrderableDBInstanceOption structure containing information about orderable options for the DB instance.

        " } }, "OrderableDBInstanceOptionsMessage": { "base": "

        Contains the result of a successful invocation of the DescribeOrderableDBInstanceOptions action.

        ", "refs": { } }, "Parameter": { "base": "

        This data type is used as a request parameter in the ModifyDBParameterGroup and ResetDBParameterGroup actions.

        This data type is used as a response element in the DescribeEngineDefaultParameters and DescribeDBParameters actions.

        ", "refs": { "ParametersList$member": null } }, "ParametersList": { "base": null, "refs": { "DBParameterGroupDetails$Parameters": "

        A list of Parameter values.

        ", "EngineDefaults$Parameters": "

        Contains a list of engine default parameters.

        ", "ModifyDBParameterGroupMessage$Parameters": "

        An array of parameter names, values, and the apply method for the parameter update. At least one parameter name, value, and apply method must be supplied; subsequent arguments are optional. A maximum of 20 parameters may be modified in a single request.

        Valid Values (for the application method): immediate | pending-reboot

        You can use the immediate value with dynamic parameters only. You can use the pending-reboot value for both dynamic and static parameters, and changes are applied when DB instance reboots. ", "ResetDBParameterGroupMessage$Parameters": "

        An array of parameter names, values, and the apply method for the parameter update. At least one parameter name, value, and apply method must be supplied; subsequent arguments are optional. A maximum of 20 parameters may be modified in a single request.

        MySQL

        Valid Values (for Apply method): immediate | pending-reboot

        You can use the immediate value with dynamic parameters only. You can use the pending-reboot value for both dynamic and static parameters, and changes are applied when DB instance reboots.

        Oracle

        Valid Values (for Apply method): pending-reboot

        " } }, "PendingModifiedValues": { "base": "

        This data type is used as a response element in the ModifyDBInstance action.

        ", "refs": { "DBInstance$PendingModifiedValues": "

        Specifies that changes to the DB instance are pending. This element is only included when changes are pending. Specific changes are identified by subelements.

        " } }, "PointInTimeRestoreNotEnabledFault": { "base": "

        SourceDBInstanceIdentifier refers to a DB instance with BackupRetentionPeriod equal to 0.

        ", "refs": { } }, "PromoteReadReplicaMessage": { "base": "

        ", "refs": { } }, "PromoteReadReplicaResult": { "base": null, "refs": { } }, "ProvisionedIopsNotAvailableInAZFault": { "base": "

        Provisioned IOPS not available in the specified Availability Zone.

        ", "refs": { } }, "PurchaseReservedDBInstancesOfferingMessage": { "base": "

        ", "refs": { } }, "PurchaseReservedDBInstancesOfferingResult": { "base": null, "refs": { } }, "ReadReplicaDBInstanceIdentifierList": { "base": null, "refs": { "DBInstance$ReadReplicaDBInstanceIdentifiers": "

        Contains one or more identifiers of the read replicas associated with this DB instance.

        " } }, "RebootDBInstanceMessage": { "base": "

        ", "refs": { } }, "RebootDBInstanceResult": { "base": null, "refs": { } }, "RecurringCharge": { "base": "

        This data type is used as a response element in the DescribeReservedDBInstances and DescribeReservedDBInstancesOfferings actions.

        ", "refs": { "RecurringChargeList$member": null } }, "RecurringChargeList": { "base": null, "refs": { "ReservedDBInstance$RecurringCharges": "

        The recurring price charged to run this reserved DB instance.

        ", "ReservedDBInstancesOffering$RecurringCharges": "

        The recurring price charged to run this reserved DB instance.

        " } }, "RemoveSourceIdentifierFromSubscriptionMessage": { "base": "

        ", "refs": { } }, "RemoveSourceIdentifierFromSubscriptionResult": { "base": null, "refs": { } }, "RemoveTagsFromResourceMessage": { "base": "

        ", "refs": { } }, "ReservedDBInstance": { "base": "

        This data type is used as a response element in the DescribeReservedDBInstances and PurchaseReservedDBInstancesOffering actions.

        ", "refs": { "PurchaseReservedDBInstancesOfferingResult$ReservedDBInstance": null, "ReservedDBInstanceList$member": null } }, "ReservedDBInstanceAlreadyExistsFault": { "base": "

        User already has a reservation with the given identifier.

        ", "refs": { } }, "ReservedDBInstanceList": { "base": null, "refs": { "ReservedDBInstanceMessage$ReservedDBInstances": "

        A list of reserved DB instances.

        " } }, "ReservedDBInstanceMessage": { "base": "

        Contains the result of a successful invocation of the DescribeReservedDBInstances action.

        ", "refs": { } }, "ReservedDBInstanceNotFoundFault": { "base": "

        The specified reserved DB Instance not found.

        ", "refs": { } }, "ReservedDBInstanceQuotaExceededFault": { "base": "

        Request would exceed the user's DB Instance quota.

        ", "refs": { } }, "ReservedDBInstancesOffering": { "base": "

        This data type is used as a response element in the DescribeReservedDBInstancesOfferings action.

        ", "refs": { "ReservedDBInstancesOfferingList$member": null } }, "ReservedDBInstancesOfferingList": { "base": null, "refs": { "ReservedDBInstancesOfferingMessage$ReservedDBInstancesOfferings": "

        A list of reserved DB instance offerings.

        " } }, "ReservedDBInstancesOfferingMessage": { "base": "

        Contains the result of a successful invocation of the DescribeReservedDBInstancesOfferings action.

        ", "refs": { } }, "ReservedDBInstancesOfferingNotFoundFault": { "base": "

        Specified offering does not exist.

        ", "refs": { } }, "ResetDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "RestoreDBInstanceFromDBSnapshotMessage": { "base": "

        ", "refs": { } }, "RestoreDBInstanceFromDBSnapshotResult": { "base": null, "refs": { } }, "RestoreDBInstanceToPointInTimeMessage": { "base": "

        ", "refs": { } }, "RestoreDBInstanceToPointInTimeResult": { "base": null, "refs": { } }, "RevokeDBSecurityGroupIngressMessage": { "base": "

        ", "refs": { } }, "RevokeDBSecurityGroupIngressResult": { "base": null, "refs": { } }, "SNSInvalidTopicFault": { "base": "

        SNS has responded that there is a problem with the SND topic specified.

        ", "refs": { } }, "SNSNoAuthorizationFault": { "base": "

        You do not have permission to publish to the SNS topic ARN.

        ", "refs": { } }, "SNSTopicArnNotFoundFault": { "base": "

        The SNS topic ARN does not exist.

        ", "refs": { } }, "SnapshotQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB snapshots.

        ", "refs": { } }, "SourceIdsList": { "base": null, "refs": { "CreateEventSubscriptionMessage$SourceIds": "

        The list of identifiers of the event sources for which events will be returned. If not specified, then all sources are included in the response. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it cannot end with a hyphen or contain two consecutive hyphens.

        Constraints:

        • If SourceIds are supplied, SourceType must also be provided.
        • If the source type is a DB instance, then a DBInstanceIdentifier must be supplied.
        • If the source type is a DB security group, a DBSecurityGroupName must be supplied.
        • If the source type is a DB parameter group, a DBParameterGroupName must be supplied.
        • If the source type is a DB snapshot, a DBSnapshotIdentifier must be supplied.
        ", "EventSubscription$SourceIdsList": "

        A list of source Ids for the RDS event notification subscription.

        " } }, "SourceNotFoundFault": { "base": "

        The requested source could not be found.

        ", "refs": { } }, "SourceType": { "base": null, "refs": { "DescribeEventsMessage$SourceType": "

        The event source to retrieve events for. If no value is specified, all events are returned.

        ", "Event$SourceType": "

        Specifies the source type for this event.

        " } }, "StorageQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed amount of storage available across all DB instances.

        ", "refs": { } }, "String": { "base": null, "refs": { "AddSourceIdentifierToSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to add a source identifier to.

        ", "AddSourceIdentifierToSubscriptionMessage$SourceIdentifier": "

        The identifier of the event source to be added. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it cannot end with a hyphen or contain two consecutive hyphens.

        Constraints:

        • If the source type is a DB instance, then a DBInstanceIdentifier must be supplied.
        • If the source type is a DB security group, a DBSecurityGroupName must be supplied.
        • If the source type is a DB parameter group, a DBParameterGroupName must be supplied.
        • If the source type is a DB snapshot, a DBSnapshotIdentifier must be supplied.
        ", "AddTagsToResourceMessage$ResourceName": "

        The Amazon RDS resource the tags will be added to. This value is an Amazon Resource Name (ARN). For information about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN).

        ", "AuthorizeDBSecurityGroupIngressMessage$DBSecurityGroupName": "

        The name of the DB security group to add authorization to.

        ", "AuthorizeDBSecurityGroupIngressMessage$CIDRIP": "

        The IP range to authorize.

        ", "AuthorizeDBSecurityGroupIngressMessage$EC2SecurityGroupName": "

        Name of the EC2 security group to authorize. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "AuthorizeDBSecurityGroupIngressMessage$EC2SecurityGroupId": "

        Id of the EC2 security group to authorize. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "AuthorizeDBSecurityGroupIngressMessage$EC2SecurityGroupOwnerId": "

        AWS Account Number of the owner of the EC2 security group specified in the EC2SecurityGroupName parameter. The AWS Access Key ID is not an acceptable value. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "AvailabilityZone$Name": "

        The name of the availability zone.

        ", "CharacterSet$CharacterSetName": "

        The name of the character set.

        ", "CharacterSet$CharacterSetDescription": "

        The description of the character set.

        ", "CopyDBSnapshotMessage$SourceDBSnapshotIdentifier": "

        The identifier for the source DB snapshot.

        Constraints:

        • Must specify a valid system snapshot in the \"available\" state.
        • If the source snapshot is in the same region as the copy, specify a valid DB snapshot identifier.
        • If the source snapshot is in a different region than the copy, specify a valid DB snapshot ARN. For more information, go to Copying a DB Snapshot.

        Example: rds:mydb-2012-04-02-00-01

        Example: arn:aws:rds:rr-regn-1:123456789012:snapshot:mysql-instance1-snapshot-20130805

        ", "CopyDBSnapshotMessage$TargetDBSnapshotIdentifier": "

        The identifier for the copied snapshot.

        Constraints:

        • Cannot be null, empty, or blank
        • Must contain from 1 to 255 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-db-snapshot

        ", "CreateDBInstanceMessage$DBName": "

        The meaning of this parameter differs according to the database engine you use.

        Type: String

        MySQL

        The name of the database to create when the DB instance is created. If this parameter is not specified, no database is created in the DB instance.

        Constraints:

        • Must contain 1 to 64 alphanumeric characters
        • Cannot be a word reserved by the specified database engine

        PostgreSQL

        The name of the database to create when the DB instance is created. If this parameter is not specified, no database is created in the DB instance.

        Constraints:

        • Must contain 1 to 63 alphanumeric characters
        • Must begin with a letter or an underscore. Subsequent characters can be letters, underscores, or digits (0-9).
        • Cannot be a word reserved by the specified database engine

        Oracle

        The Oracle System ID (SID) of the created DB instance.

        Default: ORCL

        Constraints:

        • Cannot be longer than 8 characters

        SQL Server

        Not applicable. Must be null.

        ", "CreateDBInstanceMessage$DBInstanceIdentifier": "

        The DB instance identifier. This parameter is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens (1 to 15 for SQL Server).
        • First character must be a letter.
        • Cannot end with a hyphen or contain two consecutive hyphens.

        Example: mydbinstance

        ", "CreateDBInstanceMessage$DBInstanceClass": "

        The compute and memory capacity of the DB instance.

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.xlarge |db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge | db.m3.2xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge | db.r3.8xlarge

        ", "CreateDBInstanceMessage$Engine": "

        The name of the database engine to be used for this instance.

        Valid Values: MySQL | oracle-se1 | oracle-se | oracle-ee | sqlserver-ee | sqlserver-se | sqlserver-ex | sqlserver-web | postgres

        ", "CreateDBInstanceMessage$MasterUsername": "

        The name of master user for the client DB instance.

        MySQL

        Constraints:

        • Must be 1 to 16 alphanumeric characters.
        • First character must be a letter.
        • Cannot be a reserved word for the chosen database engine.

        Type: String

        Oracle

        Constraints:

        • Must be 1 to 30 alphanumeric characters.
        • First character must be a letter.
        • Cannot be a reserved word for the chosen database engine.

        SQL Server

        Constraints:

        • Must be 1 to 128 alphanumeric characters.
        • First character must be a letter.
        • Cannot be a reserved word for the chosen database engine.
        ", "CreateDBInstanceMessage$MasterUserPassword": "

        The password for the master database user. Can be any printable ASCII character except \"/\", \"\"\", or \"@\".

        Type: String

        MySQL

        Constraints: Must contain from 8 to 41 characters.

        Oracle

        Constraints: Must contain from 8 to 30 characters.

        SQL Server

        Constraints: Must contain from 8 to 128 characters.

        ", "CreateDBInstanceMessage$AvailabilityZone": "

        The EC2 Availability Zone that the database instance will be created in.

        Default: A random, system-chosen Availability Zone in the endpoint's region.

        Example: us-east-1d

        Constraint: The AvailabilityZone parameter cannot be specified if the MultiAZ parameter is set to true. The specified Availability Zone must be in the same region as the current endpoint.

        ", "CreateDBInstanceMessage$DBSubnetGroupName": "

        A DB subnet group to associate with this DB instance.

        If there is no DB subnet group, then it is a non-VPC DB instance.

        ", "CreateDBInstanceMessage$PreferredMaintenanceWindow": "

        The weekly time range (in UTC) during which system maintenance can occur.

        Format: ddd:hh24:mi-ddd:hh24:mi

        Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week. To see the time blocks available, see Adjusting the Preferred Maintenance Window in the Amazon RDS User Guide.

        Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun

        Constraints: Minimum 30-minute window.

        ", "CreateDBInstanceMessage$DBParameterGroupName": "

        The name of the DB parameter group to associate with this DB instance. If this argument is omitted, the default DBParameterGroup for the specified engine will be used.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "CreateDBInstanceMessage$PreferredBackupWindow": "

        The daily time range during which automated backups are created if automated backups are enabled, using the BackupRetentionPeriod parameter.

        Default: A 30-minute window selected at random from an 8-hour block of time per region. See the Amazon RDS User Guide for the time blocks for each region from which the default backup windows are assigned.

        Constraints: Must be in the format hh24:mi-hh24:mi. Times should be Universal Time Coordinated (UTC). Must not conflict with the preferred maintenance window. Must be at least 30 minutes.

        ", "CreateDBInstanceMessage$EngineVersion": "

        The version number of the database engine to use.

        MySQL

        Example: 5.1.42

        Type: String

        PostgreSQL

        Example: 9.3

        Type: String

        Oracle

        Example: 11.2.0.2.v2

        Type: String

        SQL Server

        Example: 10.50.2789.0.v1

        ", "CreateDBInstanceMessage$LicenseModel": "

        License model information for this DB instance.

        Valid values: license-included | bring-your-own-license | general-public-license

        ", "CreateDBInstanceMessage$OptionGroupName": "

        Indicates that the DB instance should be associated with the specified option group.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "CreateDBInstanceMessage$CharacterSetName": "

        For supported engines, indicates that the DB instance should be associated with the specified CharacterSet.

        ", "CreateDBInstanceReadReplicaMessage$DBInstanceIdentifier": "

        The DB instance identifier of the read replica. This is the unique key that identifies a DB instance. This parameter is stored as a lowercase string.

        ", "CreateDBInstanceReadReplicaMessage$SourceDBInstanceIdentifier": "

        The identifier of the DB instance that will act as the source for the read replica. Each DB instance can have up to five read replicas.

        Constraints:

        • Must be the identifier of an existing DB instance.
        • Can specify a DB instance that is a read replica only if the source is running MySQL 5.6.
        • The specified DB instance must have automatic backups enabled, its backup retention period must be greater than 0.
        • If the source DB instance is in the same region as the read replica, specify a valid DB instance identifier.
        • If the source DB instance is in a different region than the read replica, specify a valid DB instance ARN. For more information, go to Constructing a Amazon RDS Amazon Resource Name (ARN).
        ", "CreateDBInstanceReadReplicaMessage$DBInstanceClass": "

        The compute and memory capacity of the read replica.

        Valid Values: db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.xlarge |db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge | db.m3.2xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge | db.r3.8xlarge

        Default: Inherits from the source DB instance.

        ", "CreateDBInstanceReadReplicaMessage$AvailabilityZone": "

        The Amazon EC2 Availability Zone that the read replica will be created in.

        Default: A random, system-chosen Availability Zone in the endpoint's region.

        Example: us-east-1d

        ", "CreateDBInstanceReadReplicaMessage$OptionGroupName": "

        The option group the DB instance will be associated with. If omitted, the default option group for the engine specified will be used.

        ", "CreateDBInstanceReadReplicaMessage$DBSubnetGroupName": "

        Specifies a DB subnet group for the DB instance. The new DB instance will be created in the VPC associated with the DB subnet group. If no DB subnet group is specified, then the new DB instance is not created in a VPC.

        Constraints:

        • Can only be specified if the source DB instance identifier specifies a DB instance in another region.
        • The specified DB subnet group must be in the same region in which the operation is running.
        • All read replicas in one region that are created from the same source DB instance must either:
          • Specify DB subnet groups from the same VPC. All these read replicas will be created in the same VPC.
          • Not specify a DB subnet group. All these read replicas will be created outside of any VPC.
        ", "CreateDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB parameter group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        This value is stored as a lower-case string.", "CreateDBParameterGroupMessage$DBParameterGroupFamily": "

        The DB parameter group family name. A DB parameter group can be associated with one and only one DB parameter group family, and can be applied only to a DB instance running a database engine and engine version compatible with that DB parameter group family.

        ", "CreateDBParameterGroupMessage$Description": "

        The description for the DB parameter group.

        ", "CreateDBSecurityGroupMessage$DBSecurityGroupName": "

        The name for the DB security group. This value is stored as a lowercase string.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        • Must not be \"Default\"
        • May not contain spaces

        Example: mysecuritygroup

        ", "CreateDBSecurityGroupMessage$DBSecurityGroupDescription": "

        The description for the DB security group.

        ", "CreateDBSnapshotMessage$DBSnapshotIdentifier": "

        The identifier for the DB snapshot.

        Constraints:

        • Cannot be null, empty, or blank
        • Must contain from 1 to 255 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-snapshot-id

        ", "CreateDBSnapshotMessage$DBInstanceIdentifier": "

        The DB instance identifier. This is the unique key that identifies a DB instance.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "CreateDBSubnetGroupMessage$DBSubnetGroupName": "

        The name for the DB subnet group. This value is stored as a lowercase string.

        Constraints: Must contain no more than 255 alphanumeric characters or hyphens. Must not be \"Default\".

        Example: mySubnetgroup

        ", "CreateDBSubnetGroupMessage$DBSubnetGroupDescription": "

        The description for the DB subnet group.

        ", "CreateEventSubscriptionMessage$SubscriptionName": "

        The name of the subscription.

        Constraints: The name must be less than 255 characters.

        ", "CreateEventSubscriptionMessage$SnsTopicArn": "

        The Amazon Resource Name (ARN) of the SNS topic created for event notification. The ARN is created by Amazon SNS when you create a topic and subscribe to it.

        ", "CreateEventSubscriptionMessage$SourceType": "

        The type of source that will be generating the events. For example, if you want to be notified of events generated by a DB instance, you would set this parameter to db-instance. if this value is not specified, all events are returned.

        Valid values: db-instance | db-parameter-group | db-security-group | db-snapshot

        ", "CreateOptionGroupMessage$OptionGroupName": "

        Specifies the name of the option group to be created.

        Constraints:

        • Must be 1 to 255 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: myoptiongroup

        ", "CreateOptionGroupMessage$EngineName": "

        Specifies the name of the engine that this option group should be associated with.

        ", "CreateOptionGroupMessage$MajorEngineVersion": "

        Specifies the major version of the engine that this option group should be associated with.

        ", "CreateOptionGroupMessage$OptionGroupDescription": "

        The description of the option group.

        ", "DBEngineVersion$Engine": "

        The name of the database engine.

        ", "DBEngineVersion$EngineVersion": "

        The version number of the database engine.

        ", "DBEngineVersion$DBParameterGroupFamily": "

        The name of the DB parameter group family for the database engine.

        ", "DBEngineVersion$DBEngineDescription": "

        The description of the database engine.

        ", "DBEngineVersion$DBEngineVersionDescription": "

        The description of the database engine version.

        ", "DBEngineVersionMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBInstance$DBInstanceIdentifier": "

        Contains a user-supplied database identifier. This is the unique key that identifies a DB instance.

        ", "DBInstance$DBInstanceClass": "

        Contains the name of the compute and memory capacity class of the DB instance.

        ", "DBInstance$Engine": "

        Provides the name of the database engine to be used for this DB instance.

        ", "DBInstance$DBInstanceStatus": "

        Specifies the current state of this database.

        ", "DBInstance$MasterUsername": "

        Contains the master username for the DB instance.

        ", "DBInstance$DBName": "

        The meaning of this parameter differs according to the database engine you use. For example, this value returns only MySQL information when returning values from CreateDBInstanceReadReplica since read replicas are only supported for MySQL.

        MySQL

        Contains the name of the initial database of this instance that was provided at create time, if one was specified when the DB instance was created. This same name is returned for the life of the DB instance.

        Type: String

        Oracle

        Contains the Oracle System ID (SID) of the created DB instance. Not shown when the returned parameters do not apply to an Oracle DB instance.

        ", "DBInstance$PreferredBackupWindow": "

        Specifies the daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod.

        ", "DBInstance$AvailabilityZone": "

        Specifies the name of the Availability Zone the DB instance is located in.

        ", "DBInstance$PreferredMaintenanceWindow": "

        Specifies the weekly time range (in UTC) during which system maintenance can occur.

        ", "DBInstance$EngineVersion": "

        Indicates the database engine version.

        ", "DBInstance$ReadReplicaSourceDBInstanceIdentifier": "

        Contains the identifier of the source DB instance if this DB instance is a read replica.

        ", "DBInstance$LicenseModel": "

        License model information for this DB instance.

        ", "DBInstance$CharacterSetName": "

        If present, specifies the name of the character set that this instance is associated with.

        ", "DBInstance$SecondaryAvailabilityZone": "

        If present, specifies the name of the secondary Availability Zone for a DB instance with multi-AZ support.

        ", "DBInstanceMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DBInstanceStatusInfo$StatusType": "

        This value is currently \"read replication.\"

        ", "DBInstanceStatusInfo$Status": "

        Status of the DB instance. For a StatusType of read replica, the values can be replicating, error, stopped, or terminated.

        ", "DBInstanceStatusInfo$Message": "

        Details of the error if there is an error for the instance. If the instance is not in an error state, this value is blank.

        ", "DBParameterGroup$DBParameterGroupName": "

        Provides the name of the DB parameter group.

        ", "DBParameterGroup$DBParameterGroupFamily": "

        Provides the name of the DB parameter group family that this DB parameter group is compatible with.

        ", "DBParameterGroup$Description": "

        Provides the customer-specified description for this DB parameter group.

        ", "DBParameterGroupDetails$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBParameterGroupNameMessage$DBParameterGroupName": "

        The name of the DB parameter group.

        ", "DBParameterGroupStatus$DBParameterGroupName": "

        The name of the DP parameter group.

        ", "DBParameterGroupStatus$ParameterApplyStatus": "

        The status of parameter updates.

        ", "DBParameterGroupsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBSecurityGroup$OwnerId": "

        Provides the AWS ID of the owner of a specific DB security group.

        ", "DBSecurityGroup$DBSecurityGroupName": "

        Specifies the name of the DB security group.

        ", "DBSecurityGroup$DBSecurityGroupDescription": "

        Provides the description of the DB security group.

        ", "DBSecurityGroup$VpcId": "

        Provides the VpcId of the DB security group.

        ", "DBSecurityGroupMembership$DBSecurityGroupName": "

        The name of the DB security group.

        ", "DBSecurityGroupMembership$Status": "

        The status of the DB security group.

        ", "DBSecurityGroupMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBSecurityGroupNameList$member": null, "DBSnapshot$DBSnapshotIdentifier": "

        Specifies the identifier for the DB snapshot.

        ", "DBSnapshot$DBInstanceIdentifier": "

        Specifies the DB instance identifier of the DB instance this DB snapshot was created from.

        ", "DBSnapshot$Engine": "

        Specifies the name of the database engine.

        ", "DBSnapshot$Status": "

        Specifies the status of this DB snapshot.

        ", "DBSnapshot$AvailabilityZone": "

        Specifies the name of the Availability Zone the DB instance was located in at the time of the DB snapshot.

        ", "DBSnapshot$VpcId": "

        Provides the Vpc Id associated with the DB snapshot.

        ", "DBSnapshot$MasterUsername": "

        Provides the master username for the DB snapshot.

        ", "DBSnapshot$EngineVersion": "

        Specifies the version of the database engine.

        ", "DBSnapshot$LicenseModel": "

        License model information for the restored DB instance.

        ", "DBSnapshot$SnapshotType": "

        Provides the type of the DB snapshot.

        ", "DBSnapshot$OptionGroupName": "

        Provides the option group name for the DB snapshot.

        ", "DBSnapshot$SourceRegion": "

        The region that the DB snapshot was created in or copied from.

        ", "DBSnapshotMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBSubnetGroup$DBSubnetGroupName": "

        Specifies the name of the DB subnet group.

        ", "DBSubnetGroup$DBSubnetGroupDescription": "

        Provides the description of the DB subnet group.

        ", "DBSubnetGroup$VpcId": "

        Provides the VpcId of the DB subnet group.

        ", "DBSubnetGroup$SubnetGroupStatus": "

        Provides the status of the DB subnet group.

        ", "DBSubnetGroupMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DeleteDBInstanceMessage$DBInstanceIdentifier": "

        The DB instance identifier for the DB instance to be deleted. This parameter isn't case sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DeleteDBInstanceMessage$FinalDBSnapshotIdentifier": "

        The DBSnapshotIdentifier of the new DBSnapshot created when SkipFinalSnapshot is set to false.

        Specifying this parameter and also setting the SkipFinalShapshot parameter to true results in an error.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        • Cannot be specified when deleting a read replica.
        ", "DeleteDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB parameter group.

        Constraints:

        • Must be the name of an existing DB parameter group
        • You cannot delete a default DB parameter group
        • Cannot be associated with any DB instances
        ", "DeleteDBSecurityGroupMessage$DBSecurityGroupName": "

        The name of the DB security group to delete.

        You cannot delete the default DB security group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        • Must not be \"Default\"
        • May not contain spaces
        ", "DeleteDBSnapshotMessage$DBSnapshotIdentifier": "

        The DBSnapshot identifier.

        Constraints: Must be the name of an existing DB snapshot in the available state.

        ", "DeleteDBSubnetGroupMessage$DBSubnetGroupName": "

        The name of the database subnet group to delete.

        You cannot delete the default subnet group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DeleteEventSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to delete.

        ", "DeleteOptionGroupMessage$OptionGroupName": "

        The name of the option group to be deleted.

        You cannot delete default option groups.", "DescribeDBEngineVersionsMessage$Engine": "

        The database engine to return.

        ", "DescribeDBEngineVersionsMessage$EngineVersion": "

        The database engine version to return.

        Example: 5.1.49

        ", "DescribeDBEngineVersionsMessage$DBParameterGroupFamily": "

        The name of a specific DB parameter group family to return details for.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBEngineVersionsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBInstancesMessage$DBInstanceIdentifier": "

        The user-supplied instance identifier. If this parameter is specified, information from only the specific DB instance is returned. This parameter isn't case sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBInstancesMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBInstances request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DescribeDBLogFilesDetails$LogFileName": "

        The name of the log file for the specified DB instance.

        ", "DescribeDBLogFilesMessage$DBInstanceIdentifier": "

        The customer-assigned name of the DB instance that contains the log files you want to list.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBLogFilesMessage$FilenameContains": "

        Filters the available log files for log file names that contain the specified string.

        ", "DescribeDBLogFilesMessage$Marker": "

        The pagination token provided in the previous request. If this parameter is specified the response includes only records beyond the marker, up to MaxRecords.

        ", "DescribeDBLogFilesResponse$Marker": "

        A pagination token that can be used in a subsequent DescribeDBLogFiles request.

        ", "DescribeDBParameterGroupsMessage$DBParameterGroupName": "

        The name of a specific DB parameter group to return details for.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBParameterGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBParameterGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBParametersMessage$DBParameterGroupName": "

        The name of a specific DB parameter group to return details for.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBParametersMessage$Source": "

        The parameter types to return.

        Default: All parameter types returned

        Valid Values: user | system | engine-default

        ", "DescribeDBParametersMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBParameters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBSecurityGroupsMessage$DBSecurityGroupName": "

        The name of the DB security group to return details for.

        ", "DescribeDBSecurityGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBSecurityGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBSnapshotsMessage$DBInstanceIdentifier": "

        A DB instance identifier to retrieve the list of DB snapshots for. Cannot be used in conjunction with DBSnapshotIdentifier. This parameter is not case sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBSnapshotsMessage$DBSnapshotIdentifier": "

        A specific DB snapshot identifier to describe. Cannot be used in conjunction with DBInstanceIdentifier. This value is stored as a lowercase string.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        • If this is the identifier of an automated snapshot, the SnapshotType parameter must also be specified.
        ", "DescribeDBSnapshotsMessage$SnapshotType": "

        The type of snapshots that will be returned. Values can be \"automated\" or \"manual.\" If not specified, the returned results will include all snapshots types.

        ", "DescribeDBSnapshotsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBSnapshots request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBSubnetGroupsMessage$DBSubnetGroupName": "

        The name of the DB subnet group to return details for.

        ", "DescribeDBSubnetGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBSubnetGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeEngineDefaultParametersMessage$DBParameterGroupFamily": "

        The name of the DB parameter group family.

        ", "DescribeEngineDefaultParametersMessage$Marker": "

        An optional pagination token provided by a previous DescribeEngineDefaultParameters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeEventCategoriesMessage$SourceType": "

        The type of source that will be generating the events.

        Valid values: db-instance | db-parameter-group | db-security-group | db-snapshot

        ", "DescribeEventSubscriptionsMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to describe.

        ", "DescribeEventSubscriptionsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DescribeEventsMessage$SourceIdentifier": "

        The identifier of the event source for which events will be returned. If not specified, then all sources are included in the response.

        Constraints:

        • If SourceIdentifier is supplied, SourceType must also be provided.
        • If the source type is DBInstance, then a DBInstanceIdentifier must be supplied.
        • If the source type is DBSecurityGroup, a DBSecurityGroupName must be supplied.
        • If the source type is DBParameterGroup, a DBParameterGroupName must be supplied.
        • If the source type is DBSnapshot, a DBSnapshotIdentifier must be supplied.
        • Cannot end with a hyphen or contain two consecutive hyphens.
        ", "DescribeEventsMessage$Marker": "

        An optional pagination token provided by a previous DescribeEvents request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeOptionGroupOptionsMessage$EngineName": "

        A required parameter. Options available for the given Engine name will be described.

        ", "DescribeOptionGroupOptionsMessage$MajorEngineVersion": "

        If specified, filters the results to include only options for the specified major engine version.

        ", "DescribeOptionGroupOptionsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeOptionGroupsMessage$OptionGroupName": "

        The name of the option group to describe. Cannot be supplied together with EngineName or MajorEngineVersion.

        ", "DescribeOptionGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOptionGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeOptionGroupsMessage$EngineName": "

        Filters the list of option groups to only include groups associated with a specific database engine.

        ", "DescribeOptionGroupsMessage$MajorEngineVersion": "

        Filters the list of option groups to only include groups associated with a specific database engine version. If specified, then EngineName must also be specified.

        ", "DescribeOrderableDBInstanceOptionsMessage$Engine": "

        The name of the engine to retrieve DB instance options for.

        ", "DescribeOrderableDBInstanceOptionsMessage$EngineVersion": "

        The engine version filter value. Specify this parameter to show only the available offerings matching the specified engine version.

        ", "DescribeOrderableDBInstanceOptionsMessage$DBInstanceClass": "

        The DB instance class filter value. Specify this parameter to show only the available offerings matching the specified DB instance class.

        ", "DescribeOrderableDBInstanceOptionsMessage$LicenseModel": "

        The license model filter value. Specify this parameter to show only the available offerings matching the specified license model.

        ", "DescribeOrderableDBInstanceOptionsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DescribeReservedDBInstancesMessage$ReservedDBInstanceId": "

        The reserved DB instance identifier filter value. Specify this parameter to show only the reservation that matches the specified reservation ID.

        ", "DescribeReservedDBInstancesMessage$ReservedDBInstancesOfferingId": "

        The offering identifier filter value. Specify this parameter to show only purchased reservations matching the specified offering identifier.

        ", "DescribeReservedDBInstancesMessage$DBInstanceClass": "

        The DB instance class filter value. Specify this parameter to show only those reservations matching the specified DB instances class.

        ", "DescribeReservedDBInstancesMessage$Duration": "

        The duration filter value, specified in years or seconds. Specify this parameter to show only reservations for this duration.

        Valid Values: 1 | 3 | 31536000 | 94608000

        ", "DescribeReservedDBInstancesMessage$ProductDescription": "

        The product description filter value. Specify this parameter to show only those reservations matching the specified product description.

        ", "DescribeReservedDBInstancesMessage$OfferingType": "

        The offering type filter value. Specify this parameter to show only the available offerings matching the specified offering type.

        Valid Values: \"Light Utilization\" | \"Medium Utilization\" | \"Heavy Utilization\"

        ", "DescribeReservedDBInstancesMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeReservedDBInstancesOfferingsMessage$ReservedDBInstancesOfferingId": "

        The offering identifier filter value. Specify this parameter to show only the available offering that matches the specified reservation identifier.

        Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706

        ", "DescribeReservedDBInstancesOfferingsMessage$DBInstanceClass": "

        The DB instance class filter value. Specify this parameter to show only the available offerings matching the specified DB instance class.

        ", "DescribeReservedDBInstancesOfferingsMessage$Duration": "

        Duration filter value, specified in years or seconds. Specify this parameter to show only reservations for this duration.

        Valid Values: 1 | 3 | 31536000 | 94608000

        ", "DescribeReservedDBInstancesOfferingsMessage$ProductDescription": "

        Product description filter value. Specify this parameter to show only the available offerings matching the specified product description.

        ", "DescribeReservedDBInstancesOfferingsMessage$OfferingType": "

        The offering type filter value. Specify this parameter to show only the available offerings matching the specified offering type.

        Valid Values: \"Light Utilization\" | \"Medium Utilization\" | \"Heavy Utilization\"

        ", "DescribeReservedDBInstancesOfferingsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DownloadDBLogFilePortionDetails$LogFileData": "

        Entries from the specified log file.

        ", "DownloadDBLogFilePortionDetails$Marker": "

        A pagination token that can be used in a subsequent DownloadDBLogFilePortion request.

        ", "DownloadDBLogFilePortionMessage$DBInstanceIdentifier": "

        The customer-assigned name of the DB instance that contains the log files you want to list.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DownloadDBLogFilePortionMessage$LogFileName": "

        The name of the log file to be downloaded.

        ", "DownloadDBLogFilePortionMessage$Marker": "

        The pagination token provided in the previous request or \"0\". If the Marker parameter is specified the response includes only records beyond the marker until the end of the file or up to NumberOfLines.

        ", "EC2SecurityGroup$Status": "

        Provides the status of the EC2 security group. Status can be \"authorizing\", \"authorized\", \"revoking\", and \"revoked\".

        ", "EC2SecurityGroup$EC2SecurityGroupName": "

        Specifies the name of the EC2 security group.

        ", "EC2SecurityGroup$EC2SecurityGroupId": "

        Specifies the id of the EC2 security group.

        ", "EC2SecurityGroup$EC2SecurityGroupOwnerId": "

        Specifies the AWS ID of the owner of the EC2 security group specified in the EC2SecurityGroupName field.

        ", "Endpoint$Address": "

        Specifies the DNS address of the DB instance.

        ", "EngineDefaults$DBParameterGroupFamily": "

        Specifies the name of the DB parameter group family which the engine default parameters apply to.

        ", "EngineDefaults$Marker": "

        An optional pagination token provided by a previous EngineDefaults request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "Event$SourceIdentifier": "

        Provides the identifier for the source of the event.

        ", "Event$Message": "

        Provides the text of this event.

        ", "EventCategoriesList$member": null, "EventCategoriesMap$SourceType": "

        The source type that the returned categories belong to

        ", "EventSubscription$CustomerAwsId": "

        The AWS customer account associated with the RDS event notification subscription.

        ", "EventSubscription$CustSubscriptionId": "

        The RDS event notification subscription Id.

        ", "EventSubscription$SnsTopicArn": "

        The topic ARN of the RDS event notification subscription.

        ", "EventSubscription$Status": "

        The status of the RDS event notification subscription.

        Constraints:

        Can be one of the following: creating | modifying | deleting | active | no-permission | topic-not-exist

        The status \"no-permission\" indicates that RDS no longer has permission to post to the SNS topic. The status \"topic-not-exist\" indicates that the topic was deleted after the subscription was created.

        ", "EventSubscription$SubscriptionCreationTime": "

        The time the RDS event notification subscription was created.

        ", "EventSubscription$SourceType": "

        The source type for the RDS event notification subscription.

        ", "EventSubscriptionsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "EventsMessage$Marker": "

        An optional pagination token provided by a previous Events request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "Filter$Name": "

        This parameter is not currently supported.

        ", "FilterValueList$member": null, "IPRange$Status": "

        Specifies the status of the IP range. Status can be \"authorizing\", \"authorized\", \"revoking\", and \"revoked\".

        ", "IPRange$CIDRIP": "

        Specifies the IP range.

        ", "KeyList$member": null, "ListTagsForResourceMessage$ResourceName": "

        The Amazon RDS resource with tags to be listed. This value is an Amazon Resource Name (ARN). For information about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN).

        ", "ModifyDBInstanceMessage$DBInstanceIdentifier": "

        The DB instance identifier. This value is stored as a lowercase string.

        Constraints:

        • Must be the identifier for an existing DB instance
        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "ModifyDBInstanceMessage$DBInstanceClass": "

        The new compute and memory capacity of the DB instance. To determine the instance classes that are available for a particular DB engine, use the DescribeOrderableDBInstanceOptions action.

        Passing a value for this parameter causes an outage during the change and is applied during the next maintenance window, unless the ApplyImmediately parameter is specified as true for this request.

        Default: Uses existing setting

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.xlarge | db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge | db.m3.2xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge | db.r3.8xlarge

        ", "ModifyDBInstanceMessage$MasterUserPassword": "

        The new password for the DB instance master user. Can be any printable ASCII character except \"/\", \"\"\", or \"@\".

        Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible. Between the time of the request and the completion of the request, the MasterUserPassword element exists in the PendingModifiedValues element of the operation response.

        Default: Uses existing setting

        Constraints: Must be 8 to 41 alphanumeric characters (MySQL), 8 to 30 alphanumeric characters (Oracle), or 8 to 128 alphanumeric characters (SQL Server).

        Amazon RDS API actions never return the password, so this action provides a way to regain access to a master instance user if the password is lost. ", "ModifyDBInstanceMessage$DBParameterGroupName": "

        The name of the DB parameter group to apply to the DB instance. Changing this setting does not result in an outage. The parameter group name itself is changed immediately, but the actual parameter changes are not applied until you reboot the instance without failover. The DB instance will NOT be rebooted automatically and the parameter changes will NOT be applied during the next maintenance window.

        Default: Uses existing setting

        Constraints: The DB parameter group must be in the same DB parameter group family as the DB instance.

        ", "ModifyDBInstanceMessage$PreferredBackupWindow": "

        The daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod. Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible.

        Constraints:

        • Must be in the format hh24:mi-hh24:mi
        • Times should be Universal Time Coordinated (UTC)
        • Must not conflict with the preferred maintenance window
        • Must be at least 30 minutes
        ", "ModifyDBInstanceMessage$PreferredMaintenanceWindow": "

        The weekly time range (in UTC) during which system maintenance can occur, which may result in an outage. Changing this parameter does not result in an outage, except in the following situation, and the change is asynchronously applied as soon as possible. If there are pending actions that cause a reboot, and the maintenance window is changed to include the current time, then changing this parameter will cause a reboot of the DB instance. If moving this window to the current time, there must be at least 30 minutes between the current time and end of the window to ensure pending changes are applied.

        Default: Uses existing setting

        Format: ddd:hh24:mi-ddd:hh24:mi

        Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

        Constraints: Must be at least 30 minutes

        ", "ModifyDBInstanceMessage$EngineVersion": "

        The version number of the database engine to upgrade to. Changing this parameter results in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        For major version upgrades, if a non-default DB parameter group is currently in use, a new DB parameter group in the DB parameter group family for the new engine version must be specified. The new DB parameter group can be the default for that DB parameter group family.

        Example: 5.1.42

        ", "ModifyDBInstanceMessage$OptionGroupName": "

        Indicates that the DB instance should be associated with the specified option group. Changing this parameter does not result in an outage except in the following case and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request. If the parameter change results in an option group that enables OEM, this change can cause a brief (sub-second) period during which new connections are rejected but existing connections are not interrupted.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "ModifyDBInstanceMessage$NewDBInstanceIdentifier": "

        The new DB instance identifier for the DB instance when renaming a DB instance. When you change the DB instance identifier, an instance reboot will occur immediately if you set Apply Immediately to true, or will occur during the next maintenance window if Apply Immediately to false. This value is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "ModifyDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB parameter group.

        Constraints:

        • Must be the name of an existing DB parameter group
        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "ModifyDBSubnetGroupMessage$DBSubnetGroupName": "

        The name for the DB subnet group. This value is stored as a lowercase string.

        Constraints: Must contain no more than 255 alphanumeric characters or hyphens. Must not be \"Default\".

        Example: mySubnetgroup

        ", "ModifyDBSubnetGroupMessage$DBSubnetGroupDescription": "

        The description for the DB subnet group.

        ", "ModifyEventSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription.

        ", "ModifyEventSubscriptionMessage$SnsTopicArn": "

        The Amazon Resource Name (ARN) of the SNS topic created for event notification. The ARN is created by Amazon SNS when you create a topic and subscribe to it.

        ", "ModifyEventSubscriptionMessage$SourceType": "

        The type of source that will be generating the events. For example, if you want to be notified of events generated by a DB instance, you would set this parameter to db-instance. if this value is not specified, all events are returned.

        Valid values: db-instance | db-parameter-group | db-security-group | db-snapshot

        ", "ModifyOptionGroupMessage$OptionGroupName": "

        The name of the option group to be modified.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "Option$OptionName": "

        The name of the option.

        ", "Option$OptionDescription": "

        The description of the option.

        ", "OptionConfiguration$OptionName": "

        The configuration of options to include in a group.

        ", "OptionGroup$OptionGroupName": "

        Specifies the name of the option group.

        ", "OptionGroup$OptionGroupDescription": "

        Provides the description of the option group.

        ", "OptionGroup$EngineName": "

        Engine name that this option group can be applied to.

        ", "OptionGroup$MajorEngineVersion": "

        Indicates the major engine version associated with this option group.

        ", "OptionGroup$VpcId": "

        If AllowsVpcAndNonVpcInstanceMemberships is 'false', this field is blank. If AllowsVpcAndNonVpcInstanceMemberships is 'true' and this field is blank, then this option group can be applied to both VPC and non-VPC instances. If this field contains a value, then this option group can only be applied to instances that are in the VPC indicated by this field.

        ", "OptionGroupMembership$OptionGroupName": "

        The name of the option group that the instance belongs to.

        ", "OptionGroupMembership$Status": "

        The status of the DB instance's option group membership (e.g. in-sync, pending, pending-maintenance, applying).

        ", "OptionGroupOption$Name": "

        The name of the option.

        ", "OptionGroupOption$Description": "

        The description of the option.

        ", "OptionGroupOption$EngineName": "

        Engine name that this option can be applied to.

        ", "OptionGroupOption$MajorEngineVersion": "

        Indicates the major engine version that the option is available for.

        ", "OptionGroupOption$MinimumRequiredMinorEngineVersion": "

        The minimum required engine version for the option to be applied.

        ", "OptionGroupOptionSetting$SettingName": "

        The name of the option group option.

        ", "OptionGroupOptionSetting$SettingDescription": "

        The description of the option group option.

        ", "OptionGroupOptionSetting$DefaultValue": "

        The default value for the option group option.

        ", "OptionGroupOptionSetting$ApplyType": "

        The DB engine specific parameter type for the option group option.

        ", "OptionGroupOptionSetting$AllowedValues": "

        Indicates the acceptable values for the option group option.

        ", "OptionGroupOptionsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "OptionGroups$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "OptionNamesList$member": null, "OptionSetting$Name": "

        The name of the option that has settings that you can set.

        ", "OptionSetting$Value": "

        The current value of the option setting.

        ", "OptionSetting$DefaultValue": "

        The default value of the option setting.

        ", "OptionSetting$Description": "

        The description of the option setting.

        ", "OptionSetting$ApplyType": "

        The DB engine specific parameter type.

        ", "OptionSetting$DataType": "

        The data type of the option setting.

        ", "OptionSetting$AllowedValues": "

        The allowed values of the option setting.

        ", "OptionsDependedOn$member": null, "OrderableDBInstanceOption$Engine": "

        The engine type of the orderable DB instance.

        ", "OrderableDBInstanceOption$EngineVersion": "

        The engine version of the orderable DB instance.

        ", "OrderableDBInstanceOption$DBInstanceClass": "

        The DB instance Class for the orderable DB instance

        ", "OrderableDBInstanceOption$LicenseModel": "

        The license model for the orderable DB instance.

        ", "OrderableDBInstanceOptionsMessage$Marker": "

        An optional pagination token provided by a previous OrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "Parameter$ParameterName": "

        Specifies the name of the parameter.

        ", "Parameter$ParameterValue": "

        Specifies the value of the parameter.

        ", "Parameter$Description": "

        Provides a description of the parameter.

        ", "Parameter$Source": "

        Indicates the source of the parameter value.

        ", "Parameter$ApplyType": "

        Specifies the engine specific parameters type.

        ", "Parameter$DataType": "

        Specifies the valid data type for the parameter.

        ", "Parameter$AllowedValues": "

        Specifies the valid range of values for the parameter.

        ", "Parameter$MinimumEngineVersion": "

        The earliest engine version to which the parameter can apply.

        ", "PendingModifiedValues$DBInstanceClass": "

        Contains the new DBInstanceClass for the DB instance that will be applied or is in progress.

        ", "PendingModifiedValues$MasterUserPassword": "

        Contains the pending or in-progress change of the master credentials for the DB instance.

        ", "PendingModifiedValues$EngineVersion": "

        Indicates the database engine version.

        ", "PendingModifiedValues$DBInstanceIdentifier": "

        Contains the new DBInstanceIdentifier for the DB instance that will be applied or is in progress.

        ", "PromoteReadReplicaMessage$DBInstanceIdentifier": "

        The DB instance identifier. This value is stored as a lowercase string.

        Constraints:

        • Must be the identifier for an existing read replica DB instance
        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: mydbinstance

        ", "PromoteReadReplicaMessage$PreferredBackupWindow": "

        The daily time range during which automated backups are created if automated backups are enabled, using the BackupRetentionPeriod parameter.

        Default: A 30-minute window selected at random from an 8-hour block of time per region. See the Amazon RDS User Guide for the time blocks for each region from which the default backup windows are assigned.

        Constraints: Must be in the format hh24:mi-hh24:mi. Times should be Universal Time Coordinated (UTC). Must not conflict with the preferred maintenance window. Must be at least 30 minutes.

        ", "PurchaseReservedDBInstancesOfferingMessage$ReservedDBInstancesOfferingId": "

        The ID of the Reserved DB instance offering to purchase.

        Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706

        ", "PurchaseReservedDBInstancesOfferingMessage$ReservedDBInstanceId": "

        Customer-specified identifier to track this reservation.

        Example: myreservationID

        ", "ReadReplicaDBInstanceIdentifierList$member": null, "RebootDBInstanceMessage$DBInstanceIdentifier": "

        The DB instance identifier. This parameter is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RecurringCharge$RecurringChargeFrequency": "

        The frequency of the recurring charge.

        ", "RemoveSourceIdentifierFromSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to remove a source identifier from.

        ", "RemoveSourceIdentifierFromSubscriptionMessage$SourceIdentifier": "

        The source identifier to be removed from the subscription, such as the DB instance identifier for a DB instance or the name of a security group.

        ", "RemoveTagsFromResourceMessage$ResourceName": "

        The Amazon RDS resource the tags will be removed from. This value is an Amazon Resource Name (ARN). For information about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN).

        ", "ReservedDBInstance$ReservedDBInstanceId": "

        The unique identifier for the reservation.

        ", "ReservedDBInstance$ReservedDBInstancesOfferingId": "

        The offering identifier.

        ", "ReservedDBInstance$DBInstanceClass": "

        The DB instance class for the reserved DB instance.

        ", "ReservedDBInstance$CurrencyCode": "

        The currency code for the reserved DB instance.

        ", "ReservedDBInstance$ProductDescription": "

        The description of the reserved DB instance.

        ", "ReservedDBInstance$OfferingType": "

        The offering type of this reserved DB instance.

        ", "ReservedDBInstance$State": "

        The state of the reserved DB instance.

        ", "ReservedDBInstanceMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "ReservedDBInstancesOffering$ReservedDBInstancesOfferingId": "

        The offering identifier.

        ", "ReservedDBInstancesOffering$DBInstanceClass": "

        The DB instance class for the reserved DB instance.

        ", "ReservedDBInstancesOffering$CurrencyCode": "

        The currency code for the reserved DB instance offering.

        ", "ReservedDBInstancesOffering$ProductDescription": "

        The database engine used by the offering.

        ", "ReservedDBInstancesOffering$OfferingType": "

        The offering type.

        ", "ReservedDBInstancesOfferingMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "ResetDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB parameter group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RestoreDBInstanceFromDBSnapshotMessage$DBInstanceIdentifier": "

        Name of the DB instance to create from the DB snapshot. This parameter isn't case sensitive.

        Constraints:

        • Must contain from 1 to 255 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-snapshot-id

        ", "RestoreDBInstanceFromDBSnapshotMessage$DBSnapshotIdentifier": "

        The identifier for the DB snapshot to restore from.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RestoreDBInstanceFromDBSnapshotMessage$DBInstanceClass": "

        The compute and memory capacity of the Amazon RDS DB instance.

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge | db.m3.2xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge | db.r3.8xlarge

        ", "RestoreDBInstanceFromDBSnapshotMessage$AvailabilityZone": "

        The EC2 Availability Zone that the database instance will be created in.

        Default: A random, system-chosen Availability Zone.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        Example: us-east-1a

        ", "RestoreDBInstanceFromDBSnapshotMessage$DBSubnetGroupName": "

        The DB subnet group name to use for the new instance.

        ", "RestoreDBInstanceFromDBSnapshotMessage$LicenseModel": "

        License model information for the restored DB instance.

        Default: Same as source.

        Valid values: license-included | bring-your-own-license | general-public-license

        ", "RestoreDBInstanceFromDBSnapshotMessage$DBName": "

        The database name for the restored DB instance.

        This parameter doesn't apply to the MySQL engine.

        ", "RestoreDBInstanceFromDBSnapshotMessage$Engine": "

        The database engine to use for the new instance.

        Default: The same as source

        Constraint: Must be compatible with the engine of the source

        Example: oracle-ee

        ", "RestoreDBInstanceFromDBSnapshotMessage$OptionGroupName": "

        The name of the option group to be used for the restored DB instance.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "RestoreDBInstanceToPointInTimeMessage$SourceDBInstanceIdentifier": "

        The identifier of the source DB instance from which to restore.

        Constraints:

        • Must be the identifier of an existing database instance
        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RestoreDBInstanceToPointInTimeMessage$TargetDBInstanceIdentifier": "

        The name of the new database instance to be created.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RestoreDBInstanceToPointInTimeMessage$DBInstanceClass": "

        The compute and memory capacity of the Amazon RDS DB instance.

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge | db.m3.2xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge | db.r3.8xlarge

        Default: The same DBInstanceClass as the original DB instance.

        ", "RestoreDBInstanceToPointInTimeMessage$AvailabilityZone": "

        The EC2 Availability Zone that the database instance will be created in.

        Default: A random, system-chosen Availability Zone.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        Example: us-east-1a

        ", "RestoreDBInstanceToPointInTimeMessage$DBSubnetGroupName": "

        The DB subnet group name to use for the new instance.

        ", "RestoreDBInstanceToPointInTimeMessage$LicenseModel": "

        License model information for the restored DB instance.

        Default: Same as source.

        Valid values: license-included | bring-your-own-license | general-public-license

        ", "RestoreDBInstanceToPointInTimeMessage$DBName": "

        The database name for the restored DB instance.

        This parameter is not used for the MySQL engine.

        ", "RestoreDBInstanceToPointInTimeMessage$Engine": "

        The database engine to use for the new instance.

        Default: The same as source

        Constraint: Must be compatible with the engine of the source

        Example: oracle-ee

        ", "RestoreDBInstanceToPointInTimeMessage$OptionGroupName": "

        The name of the option group to be used for the restored DB instance.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "RevokeDBSecurityGroupIngressMessage$DBSecurityGroupName": "

        The name of the DB security group to revoke ingress from.

        ", "RevokeDBSecurityGroupIngressMessage$CIDRIP": "

        The IP range to revoke access from. Must be a valid CIDR range. If CIDRIP is specified, EC2SecurityGroupName, EC2SecurityGroupId and EC2SecurityGroupOwnerId cannot be provided.

        ", "RevokeDBSecurityGroupIngressMessage$EC2SecurityGroupName": "

        The name of the EC2 security group to revoke access from. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "RevokeDBSecurityGroupIngressMessage$EC2SecurityGroupId": "

        The id of the EC2 security group to revoke access from. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "RevokeDBSecurityGroupIngressMessage$EC2SecurityGroupOwnerId": "

        The AWS Account Number of the owner of the EC2 security group specified in the EC2SecurityGroupName parameter. The AWS Access Key ID is not an acceptable value. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "SourceIdsList$member": null, "Subnet$SubnetIdentifier": "

        Specifies the identifier of the subnet.

        ", "Subnet$SubnetStatus": "

        Specifies the status of the subnet.

        ", "SubnetIdentifierList$member": null, "Tag$Key": "

        A key is the required name of the tag. The string value can be from 1 to 128 Unicode characters in length and cannot be prefixed with \"aws:\" or \"rds:\". The string may only contain only the set of Unicode letters, digits, white-space, '_', '.', '/', '=', '+', '-' (Java regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:/=+\\\\-]*)$\").

        ", "Tag$Value": "

        A value is the optional value of the tag. The string value can be from 1 to 256 Unicode characters in length and cannot be prefixed with \"aws:\" or \"rds:\". The string may only contain only the set of Unicode letters, digits, white-space, '_', '.', '/', '=', '+', '-' (Java regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:/=+\\\\-]*)$\").

        ", "VpcSecurityGroupIdList$member": null, "VpcSecurityGroupMembership$VpcSecurityGroupId": "

        The name of the VPC security group.

        ", "VpcSecurityGroupMembership$Status": "

        The status of the VPC security group.

        " } }, "Subnet": { "base": "

        This data type is used as a response element in the DescribeDBSubnetGroups action.

        ", "refs": { "SubnetList$member": null } }, "SubnetAlreadyInUse": { "base": "

        The DB subnet is already in use in the Availability Zone.

        ", "refs": { } }, "SubnetIdentifierList": { "base": null, "refs": { "CreateDBSubnetGroupMessage$SubnetIds": "

        The EC2 Subnet IDs for the DB subnet group.

        ", "ModifyDBSubnetGroupMessage$SubnetIds": "

        The EC2 subnet IDs for the DB subnet group.

        " } }, "SubnetList": { "base": null, "refs": { "DBSubnetGroup$Subnets": "

        Contains a list of Subnet elements.

        " } }, "SubscriptionAlreadyExistFault": { "base": "

        The supplied subscription name already exists.

        ", "refs": { } }, "SubscriptionCategoryNotFoundFault": { "base": "

        The supplied category does not exist.

        ", "refs": { } }, "SubscriptionNotFoundFault": { "base": "

        The subscription name does not exist.

        ", "refs": { } }, "SupportedCharacterSetsList": { "base": null, "refs": { "DBEngineVersion$SupportedCharacterSets": "

        A list of the character sets supported by this engine for the CharacterSetName parameter of the CreateDBInstance API.

        " } }, "TStamp": { "base": null, "refs": { "DBInstance$InstanceCreateTime": "

        Provides the date and time the DB instance was created.

        ", "DBInstance$LatestRestorableTime": "

        Specifies the latest time to which a database can be restored with point-in-time restore.

        ", "DBSnapshot$SnapshotCreateTime": "

        Provides the time (UTC) when the snapshot was taken.

        ", "DBSnapshot$InstanceCreateTime": "

        Specifies the time (UTC) when the snapshot was taken.

        ", "DescribeEventsMessage$StartTime": "

        The beginning of the time interval to retrieve events for, specified in ISO 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia page.

        Example: 2009-07-08T18:00Z

        ", "DescribeEventsMessage$EndTime": "

        The end of the time interval for which to retrieve events, specified in ISO 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia page.

        Example: 2009-07-08T18:00Z

        ", "Event$Date": "

        Specifies the date and time of the event.

        ", "ReservedDBInstance$StartTime": "

        The time the reservation started.

        ", "RestoreDBInstanceToPointInTimeMessage$RestoreTime": "

        The date and time to restore from.

        Valid Values: Value must be a UTC time

        Constraints:

        • Must be before the latest restorable time for the DB instance
        • Cannot be specified if UseLatestRestorableTime parameter is true

        Example: 2009-09-07T23:45:00Z

        " } }, "Tag": { "base": "

        Metadata assigned to an Amazon RDS resource consisting of a key-value pair.

        ", "refs": { "TagList$member": null } }, "TagList": { "base": "

        A list of tags.

        ", "refs": { "AddTagsToResourceMessage$Tags": "

        The tags to be assigned to the Amazon RDS resource.

        ", "CopyDBSnapshotMessage$Tags": null, "CreateDBInstanceMessage$Tags": null, "CreateDBInstanceReadReplicaMessage$Tags": null, "CreateDBParameterGroupMessage$Tags": null, "CreateDBSecurityGroupMessage$Tags": null, "CreateDBSnapshotMessage$Tags": null, "CreateDBSubnetGroupMessage$Tags": null, "CreateEventSubscriptionMessage$Tags": null, "CreateOptionGroupMessage$Tags": null, "PurchaseReservedDBInstancesOfferingMessage$Tags": null, "RestoreDBInstanceFromDBSnapshotMessage$Tags": null, "RestoreDBInstanceToPointInTimeMessage$Tags": null, "TagListMessage$TagList": "

        List of tags returned by the ListTagsForResource operation.

        " } }, "TagListMessage": { "base": "

        ", "refs": { } }, "VpcSecurityGroupIdList": { "base": null, "refs": { "CreateDBInstanceMessage$VpcSecurityGroupIds": "

        A list of EC2 VPC security groups to associate with this DB instance.

        Default: The default EC2 VPC security group for the DB subnet group's VPC.

        ", "ModifyDBInstanceMessage$VpcSecurityGroupIds": "

        A list of EC2 VPC security groups to authorize on this DB instance. This change is asynchronously applied as soon as possible.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "OptionConfiguration$VpcSecurityGroupMemberships": "

        A list of VpcSecurityGroupMemebrship name strings used for this option.

        " } }, "VpcSecurityGroupMembership": { "base": "

        This data type is used as a response element for queries on VPC security group membership.

        ", "refs": { "VpcSecurityGroupMembershipList$member": null } }, "VpcSecurityGroupMembershipList": { "base": null, "refs": { "DBInstance$VpcSecurityGroups": "

        Provides List of VPC security group elements that the DB instance belongs to.

        ", "Option$VpcSecurityGroupMemberships": "

        If the option requires access to a port, then this VPC security group allows access to the port.

        " } } } } aws-sdk-go-1.4.22/models/apis/rds/2013-09-09/examples-1.json000066400000000000000000000000541300374646400225010ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/rds/2013-09-09/paginators-1.json000066400000000000000000000061311300374646400230340ustar00rootroot00000000000000{ "pagination": { "DescribeDBEngineVersions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBEngineVersions" }, "DescribeDBInstances": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBInstances" }, "DescribeDBLogFiles": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DescribeDBLogFiles" }, "DescribeDBParameterGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBParameterGroups" }, "DescribeDBParameters": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "Parameters" }, "DescribeDBSecurityGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBSecurityGroups" }, "DescribeDBSnapshots": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBSnapshots" }, "DescribeDBSubnetGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBSubnetGroups" }, "DescribeEngineDefaultParameters": { "input_token": "Marker", "output_token": "EngineDefaults.Marker", "limit_key": "MaxRecords", "result_key": "EngineDefaults.Parameters" }, "DescribeEventSubscriptions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "EventSubscriptionsList" }, "DescribeEvents": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "Events" }, "DescribeOptionGroupOptions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "OptionGroupOptions" }, "DescribeOptionGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "OptionGroupsList" }, "DescribeOrderableDBInstanceOptions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "OrderableDBInstanceOptions" }, "DescribeReservedDBInstances": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "ReservedDBInstances" }, "DescribeReservedDBInstancesOfferings": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "ReservedDBInstancesOfferings" }, "DownloadDBLogFilePortion": { "input_token": "Marker", "output_token": "Marker", "limit_key": "NumberOfLines", "more_results": "AdditionalDataPending", "result_key": "LogFileData" }, "ListTagsForResource": { "result_key": "TagList" } } } aws-sdk-go-1.4.22/models/apis/rds/2013-09-09/waiters-2.json000066400000000000000000000051251300374646400223460ustar00rootroot00000000000000{ "version": 2, "waiters": { "DBInstanceAvailable": { "delay": 30, "operation": "DescribeDBInstances", "maxAttempts": 60, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "deleting", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "failed", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "incompatible-restore", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "incompatible-parameters", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "incompatible-parameters", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "incompatible-restore", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" } ] }, "DBInstanceDeleted": { "delay": 30, "operation": "DescribeDBInstances", "maxAttempts": 60, "acceptors": [ { "expected": "deleted", "matcher": "pathAll", "state": "success", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "creating", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "modifying", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "rebooting", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "resetting-master-credentials", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" } ] } } } aws-sdk-go-1.4.22/models/apis/rds/2014-09-01/000077500000000000000000000000001300374646400176245ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/rds/2014-09-01/api-2.json000066400000000000000000002654711300374646400214460ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2014-09-01", "endpointPrefix":"rds", "protocol":"query", "serviceAbbreviation":"Amazon RDS", "serviceFullName":"Amazon Relational Database Service", "signatureVersion":"v4", "xmlNamespace":"http://rds.amazonaws.com/doc/2014-09-01/" }, "operations":{ "AddSourceIdentifierToSubscription":{ "name":"AddSourceIdentifierToSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddSourceIdentifierToSubscriptionMessage"}, "output":{ "shape":"AddSourceIdentifierToSubscriptionResult", "resultWrapper":"AddSourceIdentifierToSubscriptionResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"}, {"shape":"SourceNotFoundFault"} ] }, "AddTagsToResource":{ "name":"AddTagsToResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsToResourceMessage"}, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "AuthorizeDBSecurityGroupIngress":{ "name":"AuthorizeDBSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AuthorizeDBSecurityGroupIngressMessage"}, "output":{ "shape":"AuthorizeDBSecurityGroupIngressResult", "resultWrapper":"AuthorizeDBSecurityGroupIngressResult" }, "errors":[ {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"InvalidDBSecurityGroupStateFault"}, {"shape":"AuthorizationAlreadyExistsFault"}, {"shape":"AuthorizationQuotaExceededFault"} ] }, "CopyDBParameterGroup":{ "name":"CopyDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopyDBParameterGroupMessage"}, "output":{ "shape":"CopyDBParameterGroupResult", "resultWrapper":"CopyDBParameterGroupResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"DBParameterGroupAlreadyExistsFault"}, {"shape":"DBParameterGroupQuotaExceededFault"} ] }, "CopyDBSnapshot":{ "name":"CopyDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopyDBSnapshotMessage"}, "output":{ "shape":"CopyDBSnapshotResult", "resultWrapper":"CopyDBSnapshotResult" }, "errors":[ {"shape":"DBSnapshotAlreadyExistsFault"}, {"shape":"DBSnapshotNotFoundFault"}, {"shape":"InvalidDBSnapshotStateFault"}, {"shape":"SnapshotQuotaExceededFault"} ] }, "CopyOptionGroup":{ "name":"CopyOptionGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopyOptionGroupMessage"}, "output":{ "shape":"CopyOptionGroupResult", "resultWrapper":"CopyOptionGroupResult" }, "errors":[ {"shape":"OptionGroupAlreadyExistsFault"}, {"shape":"OptionGroupNotFoundFault"}, {"shape":"OptionGroupQuotaExceededFault"} ] }, "CreateDBInstance":{ "name":"CreateDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBInstanceMessage"}, "output":{ "shape":"CreateDBInstanceResult", "resultWrapper":"CreateDBInstanceResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"}, {"shape":"StorageTypeNotSupportedFault"}, {"shape":"AuthorizationNotFoundFault"} ] }, "CreateDBInstanceReadReplica":{ "name":"CreateDBInstanceReadReplica", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBInstanceReadReplicaMessage"}, "output":{ "shape":"CreateDBInstanceReadReplicaResult", "resultWrapper":"CreateDBInstanceReadReplicaResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"}, {"shape":"DBSubnetGroupNotAllowedFault"}, {"shape":"InvalidDBSubnetGroupFault"}, {"shape":"StorageTypeNotSupportedFault"} ] }, "CreateDBParameterGroup":{ "name":"CreateDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBParameterGroupMessage"}, "output":{ "shape":"CreateDBParameterGroupResult", "resultWrapper":"CreateDBParameterGroupResult" }, "errors":[ {"shape":"DBParameterGroupQuotaExceededFault"}, {"shape":"DBParameterGroupAlreadyExistsFault"} ] }, "CreateDBSecurityGroup":{ "name":"CreateDBSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBSecurityGroupMessage"}, "output":{ "shape":"CreateDBSecurityGroupResult", "resultWrapper":"CreateDBSecurityGroupResult" }, "errors":[ {"shape":"DBSecurityGroupAlreadyExistsFault"}, {"shape":"DBSecurityGroupQuotaExceededFault"}, {"shape":"DBSecurityGroupNotSupportedFault"} ] }, "CreateDBSnapshot":{ "name":"CreateDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBSnapshotMessage"}, "output":{ "shape":"CreateDBSnapshotResult", "resultWrapper":"CreateDBSnapshotResult" }, "errors":[ {"shape":"DBSnapshotAlreadyExistsFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"SnapshotQuotaExceededFault"} ] }, "CreateDBSubnetGroup":{ "name":"CreateDBSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBSubnetGroupMessage"}, "output":{ "shape":"CreateDBSubnetGroupResult", "resultWrapper":"CreateDBSubnetGroupResult" }, "errors":[ {"shape":"DBSubnetGroupAlreadyExistsFault"}, {"shape":"DBSubnetGroupQuotaExceededFault"}, {"shape":"DBSubnetQuotaExceededFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"} ] }, "CreateEventSubscription":{ "name":"CreateEventSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateEventSubscriptionMessage"}, "output":{ "shape":"CreateEventSubscriptionResult", "resultWrapper":"CreateEventSubscriptionResult" }, "errors":[ {"shape":"EventSubscriptionQuotaExceededFault"}, {"shape":"SubscriptionAlreadyExistFault"}, {"shape":"SNSInvalidTopicFault"}, {"shape":"SNSNoAuthorizationFault"}, {"shape":"SNSTopicArnNotFoundFault"}, {"shape":"SubscriptionCategoryNotFoundFault"}, {"shape":"SourceNotFoundFault"} ] }, "CreateOptionGroup":{ "name":"CreateOptionGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateOptionGroupMessage"}, "output":{ "shape":"CreateOptionGroupResult", "resultWrapper":"CreateOptionGroupResult" }, "errors":[ {"shape":"OptionGroupAlreadyExistsFault"}, {"shape":"OptionGroupQuotaExceededFault"} ] }, "DeleteDBInstance":{ "name":"DeleteDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBInstanceMessage"}, "output":{ "shape":"DeleteDBInstanceResult", "resultWrapper":"DeleteDBInstanceResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBSnapshotAlreadyExistsFault"}, {"shape":"SnapshotQuotaExceededFault"} ] }, "DeleteDBParameterGroup":{ "name":"DeleteDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBParameterGroupMessage"}, "errors":[ {"shape":"InvalidDBParameterGroupStateFault"}, {"shape":"DBParameterGroupNotFoundFault"} ] }, "DeleteDBSecurityGroup":{ "name":"DeleteDBSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBSecurityGroupMessage"}, "errors":[ {"shape":"InvalidDBSecurityGroupStateFault"}, {"shape":"DBSecurityGroupNotFoundFault"} ] }, "DeleteDBSnapshot":{ "name":"DeleteDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBSnapshotMessage"}, "output":{ "shape":"DeleteDBSnapshotResult", "resultWrapper":"DeleteDBSnapshotResult" }, "errors":[ {"shape":"InvalidDBSnapshotStateFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "DeleteDBSubnetGroup":{ "name":"DeleteDBSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBSubnetGroupMessage"}, "errors":[ {"shape":"InvalidDBSubnetGroupStateFault"}, {"shape":"InvalidDBSubnetStateFault"}, {"shape":"DBSubnetGroupNotFoundFault"} ] }, "DeleteEventSubscription":{ "name":"DeleteEventSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteEventSubscriptionMessage"}, "output":{ "shape":"DeleteEventSubscriptionResult", "resultWrapper":"DeleteEventSubscriptionResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"}, {"shape":"InvalidEventSubscriptionStateFault"} ] }, "DeleteOptionGroup":{ "name":"DeleteOptionGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteOptionGroupMessage"}, "errors":[ {"shape":"OptionGroupNotFoundFault"}, {"shape":"InvalidOptionGroupStateFault"} ] }, "DescribeDBEngineVersions":{ "name":"DescribeDBEngineVersions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBEngineVersionsMessage"}, "output":{ "shape":"DBEngineVersionMessage", "resultWrapper":"DescribeDBEngineVersionsResult" } }, "DescribeDBInstances":{ "name":"DescribeDBInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBInstancesMessage"}, "output":{ "shape":"DBInstanceMessage", "resultWrapper":"DescribeDBInstancesResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"} ] }, "DescribeDBLogFiles":{ "name":"DescribeDBLogFiles", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBLogFilesMessage"}, "output":{ "shape":"DescribeDBLogFilesResponse", "resultWrapper":"DescribeDBLogFilesResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"} ] }, "DescribeDBParameterGroups":{ "name":"DescribeDBParameterGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBParameterGroupsMessage"}, "output":{ "shape":"DBParameterGroupsMessage", "resultWrapper":"DescribeDBParameterGroupsResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"} ] }, "DescribeDBParameters":{ "name":"DescribeDBParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBParametersMessage"}, "output":{ "shape":"DBParameterGroupDetails", "resultWrapper":"DescribeDBParametersResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"} ] }, "DescribeDBSecurityGroups":{ "name":"DescribeDBSecurityGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBSecurityGroupsMessage"}, "output":{ "shape":"DBSecurityGroupMessage", "resultWrapper":"DescribeDBSecurityGroupsResult" }, "errors":[ {"shape":"DBSecurityGroupNotFoundFault"} ] }, "DescribeDBSnapshots":{ "name":"DescribeDBSnapshots", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBSnapshotsMessage"}, "output":{ "shape":"DBSnapshotMessage", "resultWrapper":"DescribeDBSnapshotsResult" }, "errors":[ {"shape":"DBSnapshotNotFoundFault"} ] }, "DescribeDBSubnetGroups":{ "name":"DescribeDBSubnetGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBSubnetGroupsMessage"}, "output":{ "shape":"DBSubnetGroupMessage", "resultWrapper":"DescribeDBSubnetGroupsResult" }, "errors":[ {"shape":"DBSubnetGroupNotFoundFault"} ] }, "DescribeEngineDefaultParameters":{ "name":"DescribeEngineDefaultParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEngineDefaultParametersMessage"}, "output":{ "shape":"DescribeEngineDefaultParametersResult", "resultWrapper":"DescribeEngineDefaultParametersResult" } }, "DescribeEventCategories":{ "name":"DescribeEventCategories", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventCategoriesMessage"}, "output":{ "shape":"EventCategoriesMessage", "resultWrapper":"DescribeEventCategoriesResult" } }, "DescribeEventSubscriptions":{ "name":"DescribeEventSubscriptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventSubscriptionsMessage"}, "output":{ "shape":"EventSubscriptionsMessage", "resultWrapper":"DescribeEventSubscriptionsResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"} ] }, "DescribeEvents":{ "name":"DescribeEvents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventsMessage"}, "output":{ "shape":"EventsMessage", "resultWrapper":"DescribeEventsResult" } }, "DescribeOptionGroupOptions":{ "name":"DescribeOptionGroupOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeOptionGroupOptionsMessage"}, "output":{ "shape":"OptionGroupOptionsMessage", "resultWrapper":"DescribeOptionGroupOptionsResult" } }, "DescribeOptionGroups":{ "name":"DescribeOptionGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeOptionGroupsMessage"}, "output":{ "shape":"OptionGroups", "resultWrapper":"DescribeOptionGroupsResult" }, "errors":[ {"shape":"OptionGroupNotFoundFault"} ] }, "DescribeOrderableDBInstanceOptions":{ "name":"DescribeOrderableDBInstanceOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeOrderableDBInstanceOptionsMessage"}, "output":{ "shape":"OrderableDBInstanceOptionsMessage", "resultWrapper":"DescribeOrderableDBInstanceOptionsResult" } }, "DescribeReservedDBInstances":{ "name":"DescribeReservedDBInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedDBInstancesMessage"}, "output":{ "shape":"ReservedDBInstanceMessage", "resultWrapper":"DescribeReservedDBInstancesResult" }, "errors":[ {"shape":"ReservedDBInstanceNotFoundFault"} ] }, "DescribeReservedDBInstancesOfferings":{ "name":"DescribeReservedDBInstancesOfferings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedDBInstancesOfferingsMessage"}, "output":{ "shape":"ReservedDBInstancesOfferingMessage", "resultWrapper":"DescribeReservedDBInstancesOfferingsResult" }, "errors":[ {"shape":"ReservedDBInstancesOfferingNotFoundFault"} ] }, "DownloadDBLogFilePortion":{ "name":"DownloadDBLogFilePortion", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DownloadDBLogFilePortionMessage"}, "output":{ "shape":"DownloadDBLogFilePortionDetails", "resultWrapper":"DownloadDBLogFilePortionResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBLogFileNotFoundFault"} ] }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTagsForResourceMessage"}, "output":{ "shape":"TagListMessage", "resultWrapper":"ListTagsForResourceResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "ModifyDBInstance":{ "name":"ModifyDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBInstanceMessage"}, "output":{ "shape":"ModifyDBInstanceResult", "resultWrapper":"ModifyDBInstanceResult" }, "errors":[ {"shape":"InvalidDBInstanceStateFault"}, {"shape":"InvalidDBSecurityGroupStateFault"}, {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"}, {"shape":"DBUpgradeDependencyFailureFault"}, {"shape":"StorageTypeNotSupportedFault"}, {"shape":"AuthorizationNotFoundFault"} ] }, "ModifyDBParameterGroup":{ "name":"ModifyDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBParameterGroupMessage"}, "output":{ "shape":"DBParameterGroupNameMessage", "resultWrapper":"ModifyDBParameterGroupResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"InvalidDBParameterGroupStateFault"} ] }, "ModifyDBSubnetGroup":{ "name":"ModifyDBSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBSubnetGroupMessage"}, "output":{ "shape":"ModifyDBSubnetGroupResult", "resultWrapper":"ModifyDBSubnetGroupResult" }, "errors":[ {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetQuotaExceededFault"}, {"shape":"SubnetAlreadyInUse"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"} ] }, "ModifyEventSubscription":{ "name":"ModifyEventSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyEventSubscriptionMessage"}, "output":{ "shape":"ModifyEventSubscriptionResult", "resultWrapper":"ModifyEventSubscriptionResult" }, "errors":[ {"shape":"EventSubscriptionQuotaExceededFault"}, {"shape":"SubscriptionNotFoundFault"}, {"shape":"SNSInvalidTopicFault"}, {"shape":"SNSNoAuthorizationFault"}, {"shape":"SNSTopicArnNotFoundFault"}, {"shape":"SubscriptionCategoryNotFoundFault"} ] }, "ModifyOptionGroup":{ "name":"ModifyOptionGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyOptionGroupMessage"}, "output":{ "shape":"ModifyOptionGroupResult", "resultWrapper":"ModifyOptionGroupResult" }, "errors":[ {"shape":"InvalidOptionGroupStateFault"}, {"shape":"OptionGroupNotFoundFault"} ] }, "PromoteReadReplica":{ "name":"PromoteReadReplica", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PromoteReadReplicaMessage"}, "output":{ "shape":"PromoteReadReplicaResult", "resultWrapper":"PromoteReadReplicaResult" }, "errors":[ {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBInstanceNotFoundFault"} ] }, "PurchaseReservedDBInstancesOffering":{ "name":"PurchaseReservedDBInstancesOffering", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PurchaseReservedDBInstancesOfferingMessage"}, "output":{ "shape":"PurchaseReservedDBInstancesOfferingResult", "resultWrapper":"PurchaseReservedDBInstancesOfferingResult" }, "errors":[ {"shape":"ReservedDBInstancesOfferingNotFoundFault"}, {"shape":"ReservedDBInstanceAlreadyExistsFault"}, {"shape":"ReservedDBInstanceQuotaExceededFault"} ] }, "RebootDBInstance":{ "name":"RebootDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RebootDBInstanceMessage"}, "output":{ "shape":"RebootDBInstanceResult", "resultWrapper":"RebootDBInstanceResult" }, "errors":[ {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBInstanceNotFoundFault"} ] }, "RemoveSourceIdentifierFromSubscription":{ "name":"RemoveSourceIdentifierFromSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveSourceIdentifierFromSubscriptionMessage"}, "output":{ "shape":"RemoveSourceIdentifierFromSubscriptionResult", "resultWrapper":"RemoveSourceIdentifierFromSubscriptionResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"}, {"shape":"SourceNotFoundFault"} ] }, "RemoveTagsFromResource":{ "name":"RemoveTagsFromResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsFromResourceMessage"}, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "ResetDBParameterGroup":{ "name":"ResetDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetDBParameterGroupMessage"}, "output":{ "shape":"DBParameterGroupNameMessage", "resultWrapper":"ResetDBParameterGroupResult" }, "errors":[ {"shape":"InvalidDBParameterGroupStateFault"}, {"shape":"DBParameterGroupNotFoundFault"} ] }, "RestoreDBInstanceFromDBSnapshot":{ "name":"RestoreDBInstanceFromDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreDBInstanceFromDBSnapshotMessage"}, "output":{ "shape":"RestoreDBInstanceFromDBSnapshotResult", "resultWrapper":"RestoreDBInstanceFromDBSnapshotResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"DBSnapshotNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"InvalidDBSnapshotStateFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidRestoreFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"}, {"shape":"StorageTypeNotSupportedFault"}, {"shape":"AuthorizationNotFoundFault"} ] }, "RestoreDBInstanceToPointInTime":{ "name":"RestoreDBInstanceToPointInTime", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreDBInstanceToPointInTimeMessage"}, "output":{ "shape":"RestoreDBInstanceToPointInTimeResult", "resultWrapper":"RestoreDBInstanceToPointInTimeResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"PointInTimeRestoreNotEnabledFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidRestoreFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"}, {"shape":"StorageTypeNotSupportedFault"}, {"shape":"AuthorizationNotFoundFault"} ] }, "RevokeDBSecurityGroupIngress":{ "name":"RevokeDBSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RevokeDBSecurityGroupIngressMessage"}, "output":{ "shape":"RevokeDBSecurityGroupIngressResult", "resultWrapper":"RevokeDBSecurityGroupIngressResult" }, "errors":[ {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"AuthorizationNotFoundFault"}, {"shape":"InvalidDBSecurityGroupStateFault"} ] } }, "shapes":{ "AddSourceIdentifierToSubscriptionMessage":{ "type":"structure", "required":[ "SubscriptionName", "SourceIdentifier" ], "members":{ "SubscriptionName":{"shape":"String"}, "SourceIdentifier":{"shape":"String"} } }, "AddSourceIdentifierToSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "AddTagsToResourceMessage":{ "type":"structure", "required":[ "ResourceName", "Tags" ], "members":{ "ResourceName":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "ApplyMethod":{ "type":"string", "enum":[ "immediate", "pending-reboot" ] }, "AuthorizationAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "AuthorizationNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "AuthorizationQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "AuthorizeDBSecurityGroupIngressMessage":{ "type":"structure", "required":["DBSecurityGroupName"], "members":{ "DBSecurityGroupName":{"shape":"String"}, "CIDRIP":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupId":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "AuthorizeDBSecurityGroupIngressResult":{ "type":"structure", "members":{ "DBSecurityGroup":{"shape":"DBSecurityGroup"} } }, "AvailabilityZone":{ "type":"structure", "members":{ "Name":{"shape":"String"} }, "wrapper":true }, "AvailabilityZoneList":{ "type":"list", "member":{ "shape":"AvailabilityZone", "locationName":"AvailabilityZone" } }, "Boolean":{"type":"boolean"}, "BooleanOptional":{"type":"boolean"}, "CharacterSet":{ "type":"structure", "members":{ "CharacterSetName":{"shape":"String"}, "CharacterSetDescription":{"shape":"String"} } }, "CopyDBParameterGroupMessage":{ "type":"structure", "required":[ "SourceDBParameterGroupIdentifier", "TargetDBParameterGroupIdentifier", "TargetDBParameterGroupDescription" ], "members":{ "SourceDBParameterGroupIdentifier":{"shape":"String"}, "TargetDBParameterGroupIdentifier":{"shape":"String"}, "TargetDBParameterGroupDescription":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CopyDBParameterGroupResult":{ "type":"structure", "members":{ "DBParameterGroup":{"shape":"DBParameterGroup"} } }, "CopyDBSnapshotMessage":{ "type":"structure", "required":[ "SourceDBSnapshotIdentifier", "TargetDBSnapshotIdentifier" ], "members":{ "SourceDBSnapshotIdentifier":{"shape":"String"}, "TargetDBSnapshotIdentifier":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CopyDBSnapshotResult":{ "type":"structure", "members":{ "DBSnapshot":{"shape":"DBSnapshot"} } }, "CopyOptionGroupMessage":{ "type":"structure", "required":[ "SourceOptionGroupIdentifier", "TargetOptionGroupIdentifier", "TargetOptionGroupDescription" ], "members":{ "SourceOptionGroupIdentifier":{"shape":"String"}, "TargetOptionGroupIdentifier":{"shape":"String"}, "TargetOptionGroupDescription":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CopyOptionGroupResult":{ "type":"structure", "members":{ "OptionGroup":{"shape":"OptionGroup"} } }, "CreateDBInstanceMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "AllocatedStorage", "DBInstanceClass", "Engine", "MasterUsername", "MasterUserPassword" ], "members":{ "DBName":{"shape":"String"}, "DBInstanceIdentifier":{"shape":"String"}, "AllocatedStorage":{"shape":"IntegerOptional"}, "DBInstanceClass":{"shape":"String"}, "Engine":{"shape":"String"}, "MasterUsername":{"shape":"String"}, "MasterUserPassword":{"shape":"String"}, "DBSecurityGroups":{"shape":"DBSecurityGroupNameList"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroupName":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"}, "DBParameterGroupName":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "PreferredBackupWindow":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "MultiAZ":{"shape":"BooleanOptional"}, "EngineVersion":{"shape":"String"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "LicenseModel":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "CharacterSetName":{"shape":"String"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "Tags":{"shape":"TagList"}, "StorageType":{"shape":"String"}, "TdeCredentialArn":{"shape":"String"}, "TdeCredentialPassword":{"shape":"String"} } }, "CreateDBInstanceReadReplicaMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "SourceDBInstanceIdentifier" ], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "SourceDBInstanceIdentifier":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "AvailabilityZone":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "Tags":{"shape":"TagList"}, "DBSubnetGroupName":{"shape":"String"}, "StorageType":{"shape":"String"} } }, "CreateDBInstanceReadReplicaResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "CreateDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "CreateDBParameterGroupMessage":{ "type":"structure", "required":[ "DBParameterGroupName", "DBParameterGroupFamily", "Description" ], "members":{ "DBParameterGroupName":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "Description":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateDBParameterGroupResult":{ "type":"structure", "members":{ "DBParameterGroup":{"shape":"DBParameterGroup"} } }, "CreateDBSecurityGroupMessage":{ "type":"structure", "required":[ "DBSecurityGroupName", "DBSecurityGroupDescription" ], "members":{ "DBSecurityGroupName":{"shape":"String"}, "DBSecurityGroupDescription":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateDBSecurityGroupResult":{ "type":"structure", "members":{ "DBSecurityGroup":{"shape":"DBSecurityGroup"} } }, "CreateDBSnapshotMessage":{ "type":"structure", "required":[ "DBSnapshotIdentifier", "DBInstanceIdentifier" ], "members":{ "DBSnapshotIdentifier":{"shape":"String"}, "DBInstanceIdentifier":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateDBSnapshotResult":{ "type":"structure", "members":{ "DBSnapshot":{"shape":"DBSnapshot"} } }, "CreateDBSubnetGroupMessage":{ "type":"structure", "required":[ "DBSubnetGroupName", "DBSubnetGroupDescription", "SubnetIds" ], "members":{ "DBSubnetGroupName":{"shape":"String"}, "DBSubnetGroupDescription":{"shape":"String"}, "SubnetIds":{"shape":"SubnetIdentifierList"}, "Tags":{"shape":"TagList"} } }, "CreateDBSubnetGroupResult":{ "type":"structure", "members":{ "DBSubnetGroup":{"shape":"DBSubnetGroup"} } }, "CreateEventSubscriptionMessage":{ "type":"structure", "required":[ "SubscriptionName", "SnsTopicArn" ], "members":{ "SubscriptionName":{"shape":"String"}, "SnsTopicArn":{"shape":"String"}, "SourceType":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"}, "SourceIds":{"shape":"SourceIdsList"}, "Enabled":{"shape":"BooleanOptional"}, "Tags":{"shape":"TagList"} } }, "CreateEventSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "CreateOptionGroupMessage":{ "type":"structure", "required":[ "OptionGroupName", "EngineName", "MajorEngineVersion", "OptionGroupDescription" ], "members":{ "OptionGroupName":{"shape":"String"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "OptionGroupDescription":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateOptionGroupResult":{ "type":"structure", "members":{ "OptionGroup":{"shape":"OptionGroup"} } }, "DBEngineVersion":{ "type":"structure", "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "DBEngineDescription":{"shape":"String"}, "DBEngineVersionDescription":{"shape":"String"}, "DefaultCharacterSet":{"shape":"CharacterSet"}, "SupportedCharacterSets":{"shape":"SupportedCharacterSetsList"} } }, "DBEngineVersionList":{ "type":"list", "member":{ "shape":"DBEngineVersion", "locationName":"DBEngineVersion" } }, "DBEngineVersionMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBEngineVersions":{"shape":"DBEngineVersionList"} } }, "DBInstance":{ "type":"structure", "members":{ "DBInstanceIdentifier":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Engine":{"shape":"String"}, "DBInstanceStatus":{"shape":"String"}, "MasterUsername":{"shape":"String"}, "DBName":{"shape":"String"}, "Endpoint":{"shape":"Endpoint"}, "AllocatedStorage":{"shape":"Integer"}, "InstanceCreateTime":{"shape":"TStamp"}, "PreferredBackupWindow":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"Integer"}, "DBSecurityGroups":{"shape":"DBSecurityGroupMembershipList"}, "VpcSecurityGroups":{"shape":"VpcSecurityGroupMembershipList"}, "DBParameterGroups":{"shape":"DBParameterGroupStatusList"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroup":{"shape":"DBSubnetGroup"}, "PreferredMaintenanceWindow":{"shape":"String"}, "PendingModifiedValues":{"shape":"PendingModifiedValues"}, "LatestRestorableTime":{"shape":"TStamp"}, "MultiAZ":{"shape":"Boolean"}, "EngineVersion":{"shape":"String"}, "AutoMinorVersionUpgrade":{"shape":"Boolean"}, "ReadReplicaSourceDBInstanceIdentifier":{"shape":"String"}, "ReadReplicaDBInstanceIdentifiers":{"shape":"ReadReplicaDBInstanceIdentifierList"}, "LicenseModel":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupMemberships":{"shape":"OptionGroupMembershipList"}, "CharacterSetName":{"shape":"String"}, "SecondaryAvailabilityZone":{"shape":"String"}, "PubliclyAccessible":{"shape":"Boolean"}, "StatusInfos":{"shape":"DBInstanceStatusInfoList"}, "StorageType":{"shape":"String"}, "TdeCredentialArn":{"shape":"String"} }, "wrapper":true }, "DBInstanceAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBInstanceAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBInstanceList":{ "type":"list", "member":{ "shape":"DBInstance", "locationName":"DBInstance" } }, "DBInstanceMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBInstances":{"shape":"DBInstanceList"} } }, "DBInstanceNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBInstanceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBInstanceStatusInfo":{ "type":"structure", "members":{ "StatusType":{"shape":"String"}, "Normal":{"shape":"Boolean"}, "Status":{"shape":"String"}, "Message":{"shape":"String"} } }, "DBInstanceStatusInfoList":{ "type":"list", "member":{ "shape":"DBInstanceStatusInfo", "locationName":"DBInstanceStatusInfo" } }, "DBLogFileNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBLogFileNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBParameterGroup":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "Description":{"shape":"String"} }, "wrapper":true }, "DBParameterGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBParameterGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBParameterGroupDetails":{ "type":"structure", "members":{ "Parameters":{"shape":"ParametersList"}, "Marker":{"shape":"String"} } }, "DBParameterGroupList":{ "type":"list", "member":{ "shape":"DBParameterGroup", "locationName":"DBParameterGroup" } }, "DBParameterGroupNameMessage":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"} } }, "DBParameterGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBParameterGroupNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBParameterGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBParameterGroupQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBParameterGroupStatus":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"}, "ParameterApplyStatus":{"shape":"String"} } }, "DBParameterGroupStatusList":{ "type":"list", "member":{ "shape":"DBParameterGroupStatus", "locationName":"DBParameterGroup" } }, "DBParameterGroupsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBParameterGroups":{"shape":"DBParameterGroupList"} } }, "DBSecurityGroup":{ "type":"structure", "members":{ "OwnerId":{"shape":"String"}, "DBSecurityGroupName":{"shape":"String"}, "DBSecurityGroupDescription":{"shape":"String"}, "VpcId":{"shape":"String"}, "EC2SecurityGroups":{"shape":"EC2SecurityGroupList"}, "IPRanges":{"shape":"IPRangeList"} }, "wrapper":true }, "DBSecurityGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSecurityGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSecurityGroupMembership":{ "type":"structure", "members":{ "DBSecurityGroupName":{"shape":"String"}, "Status":{"shape":"String"} } }, "DBSecurityGroupMembershipList":{ "type":"list", "member":{ "shape":"DBSecurityGroupMembership", "locationName":"DBSecurityGroup" } }, "DBSecurityGroupMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBSecurityGroups":{"shape":"DBSecurityGroups"} } }, "DBSecurityGroupNameList":{ "type":"list", "member":{ "shape":"String", "locationName":"DBSecurityGroupName" } }, "DBSecurityGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSecurityGroupNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBSecurityGroupNotSupportedFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSecurityGroupNotSupported", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSecurityGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"QuotaExceeded.DBSecurityGroup", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSecurityGroups":{ "type":"list", "member":{ "shape":"DBSecurityGroup", "locationName":"DBSecurityGroup" } }, "DBSnapshot":{ "type":"structure", "members":{ "DBSnapshotIdentifier":{"shape":"String"}, "DBInstanceIdentifier":{"shape":"String"}, "SnapshotCreateTime":{"shape":"TStamp"}, "Engine":{"shape":"String"}, "AllocatedStorage":{"shape":"Integer"}, "Status":{"shape":"String"}, "Port":{"shape":"Integer"}, "AvailabilityZone":{"shape":"String"}, "VpcId":{"shape":"String"}, "InstanceCreateTime":{"shape":"TStamp"}, "MasterUsername":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "LicenseModel":{"shape":"String"}, "SnapshotType":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "PercentProgress":{"shape":"Integer"}, "SourceRegion":{"shape":"String"}, "StorageType":{"shape":"String"}, "TdeCredentialArn":{"shape":"String"} }, "wrapper":true }, "DBSnapshotAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSnapshotAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSnapshotList":{ "type":"list", "member":{ "shape":"DBSnapshot", "locationName":"DBSnapshot" } }, "DBSnapshotMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBSnapshots":{"shape":"DBSnapshotList"} } }, "DBSnapshotNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSnapshotNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBSubnetGroup":{ "type":"structure", "members":{ "DBSubnetGroupName":{"shape":"String"}, "DBSubnetGroupDescription":{"shape":"String"}, "VpcId":{"shape":"String"}, "SubnetGroupStatus":{"shape":"String"}, "Subnets":{"shape":"SubnetList"} }, "wrapper":true }, "DBSubnetGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSubnetGroupDoesNotCoverEnoughAZs":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupDoesNotCoverEnoughAZs", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSubnetGroupMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBSubnetGroups":{"shape":"DBSubnetGroups"} } }, "DBSubnetGroupNotAllowedFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupNotAllowedFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSubnetGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBSubnetGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSubnetGroups":{ "type":"list", "member":{ "shape":"DBSubnetGroup", "locationName":"DBSubnetGroup" } }, "DBSubnetQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetQuotaExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBUpgradeDependencyFailureFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBUpgradeDependencyFailure", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DeleteDBInstanceMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "SkipFinalSnapshot":{"shape":"Boolean"}, "FinalDBSnapshotIdentifier":{"shape":"String"} } }, "DeleteDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "DeleteDBParameterGroupMessage":{ "type":"structure", "required":["DBParameterGroupName"], "members":{ "DBParameterGroupName":{"shape":"String"} } }, "DeleteDBSecurityGroupMessage":{ "type":"structure", "required":["DBSecurityGroupName"], "members":{ "DBSecurityGroupName":{"shape":"String"} } }, "DeleteDBSnapshotMessage":{ "type":"structure", "required":["DBSnapshotIdentifier"], "members":{ "DBSnapshotIdentifier":{"shape":"String"} } }, "DeleteDBSnapshotResult":{ "type":"structure", "members":{ "DBSnapshot":{"shape":"DBSnapshot"} } }, "DeleteDBSubnetGroupMessage":{ "type":"structure", "required":["DBSubnetGroupName"], "members":{ "DBSubnetGroupName":{"shape":"String"} } }, "DeleteEventSubscriptionMessage":{ "type":"structure", "required":["SubscriptionName"], "members":{ "SubscriptionName":{"shape":"String"} } }, "DeleteEventSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "DeleteOptionGroupMessage":{ "type":"structure", "required":["OptionGroupName"], "members":{ "OptionGroupName":{"shape":"String"} } }, "DescribeDBEngineVersionsMessage":{ "type":"structure", "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "DefaultOnly":{"shape":"Boolean"}, "ListSupportedCharacterSets":{"shape":"BooleanOptional"} } }, "DescribeDBInstancesMessage":{ "type":"structure", "members":{ "DBInstanceIdentifier":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBLogFilesDetails":{ "type":"structure", "members":{ "LogFileName":{"shape":"String"}, "LastWritten":{"shape":"Long"}, "Size":{"shape":"Long"} } }, "DescribeDBLogFilesList":{ "type":"list", "member":{ "shape":"DescribeDBLogFilesDetails", "locationName":"DescribeDBLogFilesDetails" } }, "DescribeDBLogFilesMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "FilenameContains":{"shape":"String"}, "FileLastWritten":{"shape":"Long"}, "FileSize":{"shape":"Long"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBLogFilesResponse":{ "type":"structure", "members":{ "DescribeDBLogFiles":{"shape":"DescribeDBLogFilesList"}, "Marker":{"shape":"String"} } }, "DescribeDBParameterGroupsMessage":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBParametersMessage":{ "type":"structure", "required":["DBParameterGroupName"], "members":{ "DBParameterGroupName":{"shape":"String"}, "Source":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBSecurityGroupsMessage":{ "type":"structure", "members":{ "DBSecurityGroupName":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBSnapshotsMessage":{ "type":"structure", "members":{ "DBInstanceIdentifier":{"shape":"String"}, "DBSnapshotIdentifier":{"shape":"String"}, "SnapshotType":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBSubnetGroupsMessage":{ "type":"structure", "members":{ "DBSubnetGroupName":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEngineDefaultParametersMessage":{ "type":"structure", "required":["DBParameterGroupFamily"], "members":{ "DBParameterGroupFamily":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEngineDefaultParametersResult":{ "type":"structure", "members":{ "EngineDefaults":{"shape":"EngineDefaults"} } }, "DescribeEventCategoriesMessage":{ "type":"structure", "members":{ "SourceType":{"shape":"String"}, "Filters":{"shape":"FilterList"} } }, "DescribeEventSubscriptionsMessage":{ "type":"structure", "members":{ "SubscriptionName":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEventsMessage":{ "type":"structure", "members":{ "SourceIdentifier":{"shape":"String"}, "SourceType":{"shape":"SourceType"}, "StartTime":{"shape":"TStamp"}, "EndTime":{"shape":"TStamp"}, "Duration":{"shape":"IntegerOptional"}, "EventCategories":{"shape":"EventCategoriesList"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeOptionGroupOptionsMessage":{ "type":"structure", "required":["EngineName"], "members":{ "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeOptionGroupsMessage":{ "type":"structure", "members":{ "OptionGroupName":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "Marker":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"} } }, "DescribeOrderableDBInstanceOptionsMessage":{ "type":"structure", "required":["Engine"], "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "LicenseModel":{"shape":"String"}, "Vpc":{"shape":"BooleanOptional"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeReservedDBInstancesMessage":{ "type":"structure", "members":{ "ReservedDBInstanceId":{"shape":"String"}, "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Duration":{"shape":"String"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeReservedDBInstancesOfferingsMessage":{ "type":"structure", "members":{ "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Duration":{"shape":"String"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "Double":{"type":"double"}, "DownloadDBLogFilePortionDetails":{ "type":"structure", "members":{ "LogFileData":{"shape":"String"}, "Marker":{"shape":"String"}, "AdditionalDataPending":{"shape":"Boolean"} } }, "DownloadDBLogFilePortionMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "LogFileName" ], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "LogFileName":{"shape":"String"}, "Marker":{"shape":"String"}, "NumberOfLines":{"shape":"Integer"} } }, "EC2SecurityGroup":{ "type":"structure", "members":{ "Status":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupId":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "EC2SecurityGroupList":{ "type":"list", "member":{ "shape":"EC2SecurityGroup", "locationName":"EC2SecurityGroup" } }, "Endpoint":{ "type":"structure", "members":{ "Address":{"shape":"String"}, "Port":{"shape":"Integer"} } }, "EngineDefaults":{ "type":"structure", "members":{ "DBParameterGroupFamily":{"shape":"String"}, "Marker":{"shape":"String"}, "Parameters":{"shape":"ParametersList"} }, "wrapper":true }, "Event":{ "type":"structure", "members":{ "SourceIdentifier":{"shape":"String"}, "SourceType":{"shape":"SourceType"}, "Message":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"}, "Date":{"shape":"TStamp"} } }, "EventCategoriesList":{ "type":"list", "member":{ "shape":"String", "locationName":"EventCategory" } }, "EventCategoriesMap":{ "type":"structure", "members":{ "SourceType":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"} }, "wrapper":true }, "EventCategoriesMapList":{ "type":"list", "member":{ "shape":"EventCategoriesMap", "locationName":"EventCategoriesMap" } }, "EventCategoriesMessage":{ "type":"structure", "members":{ "EventCategoriesMapList":{"shape":"EventCategoriesMapList"} } }, "EventList":{ "type":"list", "member":{ "shape":"Event", "locationName":"Event" } }, "EventSubscription":{ "type":"structure", "members":{ "CustomerAwsId":{"shape":"String"}, "CustSubscriptionId":{"shape":"String"}, "SnsTopicArn":{"shape":"String"}, "Status":{"shape":"String"}, "SubscriptionCreationTime":{"shape":"String"}, "SourceType":{"shape":"String"}, "SourceIdsList":{"shape":"SourceIdsList"}, "EventCategoriesList":{"shape":"EventCategoriesList"}, "Enabled":{"shape":"Boolean"} }, "wrapper":true }, "EventSubscriptionQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"EventSubscriptionQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "EventSubscriptionsList":{ "type":"list", "member":{ "shape":"EventSubscription", "locationName":"EventSubscription" } }, "EventSubscriptionsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "EventSubscriptionsList":{"shape":"EventSubscriptionsList"} } }, "EventsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "Events":{"shape":"EventList"} } }, "Filter":{ "type":"structure", "required":[ "Name", "Values" ], "members":{ "Name":{"shape":"String"}, "Values":{"shape":"FilterValueList"} } }, "FilterList":{ "type":"list", "member":{ "shape":"Filter", "locationName":"Filter" } }, "FilterValueList":{ "type":"list", "member":{ "shape":"String", "locationName":"Value" } }, "IPRange":{ "type":"structure", "members":{ "Status":{"shape":"String"}, "CIDRIP":{"shape":"String"} } }, "IPRangeList":{ "type":"list", "member":{ "shape":"IPRange", "locationName":"IPRange" } }, "InstanceQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"InstanceQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InsufficientDBInstanceCapacityFault":{ "type":"structure", "members":{ }, "error":{ "code":"InsufficientDBInstanceCapacity", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Integer":{"type":"integer"}, "IntegerOptional":{"type":"integer"}, "InvalidDBInstanceStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBInstanceState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBParameterGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBParameterGroupState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSecurityGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSecurityGroupState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSnapshotStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSnapshotState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSubnetGroupFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSubnetGroupFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSubnetGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSubnetGroupStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSubnetStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSubnetStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidEventSubscriptionStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidEventSubscriptionState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidOptionGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidOptionGroupStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidRestoreFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidRestoreFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidSubnet":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidSubnet", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidVPCNetworkStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidVPCNetworkStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "KeyList":{ "type":"list", "member":{"shape":"String"} }, "ListTagsForResourceMessage":{ "type":"structure", "required":["ResourceName"], "members":{ "ResourceName":{"shape":"String"}, "Filters":{"shape":"FilterList"} } }, "Long":{"type":"long"}, "ModifyDBInstanceMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "AllocatedStorage":{"shape":"IntegerOptional"}, "DBInstanceClass":{"shape":"String"}, "DBSecurityGroups":{"shape":"DBSecurityGroupNameList"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "ApplyImmediately":{"shape":"Boolean"}, "MasterUserPassword":{"shape":"String"}, "DBParameterGroupName":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "PreferredBackupWindow":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "EngineVersion":{"shape":"String"}, "AllowMajorVersionUpgrade":{"shape":"Boolean"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "NewDBInstanceIdentifier":{"shape":"String"}, "StorageType":{"shape":"String"}, "TdeCredentialArn":{"shape":"String"}, "TdeCredentialPassword":{"shape":"String"} } }, "ModifyDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "ModifyDBParameterGroupMessage":{ "type":"structure", "required":[ "DBParameterGroupName", "Parameters" ], "members":{ "DBParameterGroupName":{"shape":"String"}, "Parameters":{"shape":"ParametersList"} } }, "ModifyDBSubnetGroupMessage":{ "type":"structure", "required":[ "DBSubnetGroupName", "SubnetIds" ], "members":{ "DBSubnetGroupName":{"shape":"String"}, "DBSubnetGroupDescription":{"shape":"String"}, "SubnetIds":{"shape":"SubnetIdentifierList"} } }, "ModifyDBSubnetGroupResult":{ "type":"structure", "members":{ "DBSubnetGroup":{"shape":"DBSubnetGroup"} } }, "ModifyEventSubscriptionMessage":{ "type":"structure", "required":["SubscriptionName"], "members":{ "SubscriptionName":{"shape":"String"}, "SnsTopicArn":{"shape":"String"}, "SourceType":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"}, "Enabled":{"shape":"BooleanOptional"} } }, "ModifyEventSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "ModifyOptionGroupMessage":{ "type":"structure", "required":["OptionGroupName"], "members":{ "OptionGroupName":{"shape":"String"}, "OptionsToInclude":{"shape":"OptionConfigurationList"}, "OptionsToRemove":{"shape":"OptionNamesList"}, "ApplyImmediately":{"shape":"Boolean"} } }, "ModifyOptionGroupResult":{ "type":"structure", "members":{ "OptionGroup":{"shape":"OptionGroup"} } }, "Option":{ "type":"structure", "members":{ "OptionName":{"shape":"String"}, "OptionDescription":{"shape":"String"}, "Persistent":{"shape":"Boolean"}, "Permanent":{"shape":"Boolean"}, "Port":{"shape":"IntegerOptional"}, "OptionSettings":{"shape":"OptionSettingConfigurationList"}, "DBSecurityGroupMemberships":{"shape":"DBSecurityGroupMembershipList"}, "VpcSecurityGroupMemberships":{"shape":"VpcSecurityGroupMembershipList"} } }, "OptionConfiguration":{ "type":"structure", "required":["OptionName"], "members":{ "OptionName":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "DBSecurityGroupMemberships":{"shape":"DBSecurityGroupNameList"}, "VpcSecurityGroupMemberships":{"shape":"VpcSecurityGroupIdList"}, "OptionSettings":{"shape":"OptionSettingsList"} } }, "OptionConfigurationList":{ "type":"list", "member":{ "shape":"OptionConfiguration", "locationName":"OptionConfiguration" } }, "OptionGroup":{ "type":"structure", "members":{ "OptionGroupName":{"shape":"String"}, "OptionGroupDescription":{"shape":"String"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "Options":{"shape":"OptionsList"}, "AllowsVpcAndNonVpcInstanceMemberships":{"shape":"Boolean"}, "VpcId":{"shape":"String"} }, "wrapper":true }, "OptionGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"OptionGroupAlreadyExistsFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "OptionGroupMembership":{ "type":"structure", "members":{ "OptionGroupName":{"shape":"String"}, "Status":{"shape":"String"} } }, "OptionGroupMembershipList":{ "type":"list", "member":{ "shape":"OptionGroupMembership", "locationName":"OptionGroupMembership" } }, "OptionGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"OptionGroupNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "OptionGroupOption":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "Description":{"shape":"String"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "MinimumRequiredMinorEngineVersion":{"shape":"String"}, "PortRequired":{"shape":"Boolean"}, "DefaultPort":{"shape":"IntegerOptional"}, "OptionsDependedOn":{"shape":"OptionsDependedOn"}, "Persistent":{"shape":"Boolean"}, "Permanent":{"shape":"Boolean"}, "OptionGroupOptionSettings":{"shape":"OptionGroupOptionSettingsList"} } }, "OptionGroupOptionSetting":{ "type":"structure", "members":{ "SettingName":{"shape":"String"}, "SettingDescription":{"shape":"String"}, "DefaultValue":{"shape":"String"}, "ApplyType":{"shape":"String"}, "AllowedValues":{"shape":"String"}, "IsModifiable":{"shape":"Boolean"} } }, "OptionGroupOptionSettingsList":{ "type":"list", "member":{ "shape":"OptionGroupOptionSetting", "locationName":"OptionGroupOptionSetting" } }, "OptionGroupOptionsList":{ "type":"list", "member":{ "shape":"OptionGroupOption", "locationName":"OptionGroupOption" } }, "OptionGroupOptionsMessage":{ "type":"structure", "members":{ "OptionGroupOptions":{"shape":"OptionGroupOptionsList"}, "Marker":{"shape":"String"} } }, "OptionGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"OptionGroupQuotaExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "OptionGroups":{ "type":"structure", "members":{ "OptionGroupsList":{"shape":"OptionGroupsList"}, "Marker":{"shape":"String"} } }, "OptionGroupsList":{ "type":"list", "member":{ "shape":"OptionGroup", "locationName":"OptionGroup" } }, "OptionNamesList":{ "type":"list", "member":{"shape":"String"} }, "OptionSetting":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "Value":{"shape":"String"}, "DefaultValue":{"shape":"String"}, "Description":{"shape":"String"}, "ApplyType":{"shape":"String"}, "DataType":{"shape":"String"}, "AllowedValues":{"shape":"String"}, "IsModifiable":{"shape":"Boolean"}, "IsCollection":{"shape":"Boolean"} } }, "OptionSettingConfigurationList":{ "type":"list", "member":{ "shape":"OptionSetting", "locationName":"OptionSetting" } }, "OptionSettingsList":{ "type":"list", "member":{ "shape":"OptionSetting", "locationName":"OptionSetting" } }, "OptionsDependedOn":{ "type":"list", "member":{ "shape":"String", "locationName":"OptionName" } }, "OptionsList":{ "type":"list", "member":{ "shape":"Option", "locationName":"Option" } }, "OrderableDBInstanceOption":{ "type":"structure", "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "LicenseModel":{"shape":"String"}, "AvailabilityZones":{"shape":"AvailabilityZoneList"}, "MultiAZCapable":{"shape":"Boolean"}, "ReadReplicaCapable":{"shape":"Boolean"}, "Vpc":{"shape":"Boolean"}, "StorageType":{"shape":"String"}, "SupportsIops":{"shape":"Boolean"} }, "wrapper":true }, "OrderableDBInstanceOptionsList":{ "type":"list", "member":{ "shape":"OrderableDBInstanceOption", "locationName":"OrderableDBInstanceOption" } }, "OrderableDBInstanceOptionsMessage":{ "type":"structure", "members":{ "OrderableDBInstanceOptions":{"shape":"OrderableDBInstanceOptionsList"}, "Marker":{"shape":"String"} } }, "Parameter":{ "type":"structure", "members":{ "ParameterName":{"shape":"String"}, "ParameterValue":{"shape":"String"}, "Description":{"shape":"String"}, "Source":{"shape":"String"}, "ApplyType":{"shape":"String"}, "DataType":{"shape":"String"}, "AllowedValues":{"shape":"String"}, "IsModifiable":{"shape":"Boolean"}, "MinimumEngineVersion":{"shape":"String"}, "ApplyMethod":{"shape":"ApplyMethod"} } }, "ParametersList":{ "type":"list", "member":{ "shape":"Parameter", "locationName":"Parameter" } }, "PendingModifiedValues":{ "type":"structure", "members":{ "DBInstanceClass":{"shape":"String"}, "AllocatedStorage":{"shape":"IntegerOptional"}, "MasterUserPassword":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "MultiAZ":{"shape":"BooleanOptional"}, "EngineVersion":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "DBInstanceIdentifier":{"shape":"String"}, "StorageType":{"shape":"String"} } }, "PointInTimeRestoreNotEnabledFault":{ "type":"structure", "members":{ }, "error":{ "code":"PointInTimeRestoreNotEnabled", "httpStatusCode":400, "senderFault":true }, "exception":true }, "PromoteReadReplicaMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "PreferredBackupWindow":{"shape":"String"} } }, "PromoteReadReplicaResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "ProvisionedIopsNotAvailableInAZFault":{ "type":"structure", "members":{ }, "error":{ "code":"ProvisionedIopsNotAvailableInAZFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "PurchaseReservedDBInstancesOfferingMessage":{ "type":"structure", "required":["ReservedDBInstancesOfferingId"], "members":{ "ReservedDBInstancesOfferingId":{"shape":"String"}, "ReservedDBInstanceId":{"shape":"String"}, "DBInstanceCount":{"shape":"IntegerOptional"}, "Tags":{"shape":"TagList"} } }, "PurchaseReservedDBInstancesOfferingResult":{ "type":"structure", "members":{ "ReservedDBInstance":{"shape":"ReservedDBInstance"} } }, "ReadReplicaDBInstanceIdentifierList":{ "type":"list", "member":{ "shape":"String", "locationName":"ReadReplicaDBInstanceIdentifier" } }, "RebootDBInstanceMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "ForceFailover":{"shape":"BooleanOptional"} } }, "RebootDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "RecurringCharge":{ "type":"structure", "members":{ "RecurringChargeAmount":{"shape":"Double"}, "RecurringChargeFrequency":{"shape":"String"} }, "wrapper":true }, "RecurringChargeList":{ "type":"list", "member":{ "shape":"RecurringCharge", "locationName":"RecurringCharge" } }, "RemoveSourceIdentifierFromSubscriptionMessage":{ "type":"structure", "required":[ "SubscriptionName", "SourceIdentifier" ], "members":{ "SubscriptionName":{"shape":"String"}, "SourceIdentifier":{"shape":"String"} } }, "RemoveSourceIdentifierFromSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "RemoveTagsFromResourceMessage":{ "type":"structure", "required":[ "ResourceName", "TagKeys" ], "members":{ "ResourceName":{"shape":"String"}, "TagKeys":{"shape":"KeyList"} } }, "ReservedDBInstance":{ "type":"structure", "members":{ "ReservedDBInstanceId":{"shape":"String"}, "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "StartTime":{"shape":"TStamp"}, "Duration":{"shape":"Integer"}, "FixedPrice":{"shape":"Double"}, "UsagePrice":{"shape":"Double"}, "CurrencyCode":{"shape":"String"}, "DBInstanceCount":{"shape":"Integer"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"Boolean"}, "State":{"shape":"String"}, "RecurringCharges":{"shape":"RecurringChargeList"} }, "wrapper":true }, "ReservedDBInstanceAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstanceAlreadyExists", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ReservedDBInstanceList":{ "type":"list", "member":{ "shape":"ReservedDBInstance", "locationName":"ReservedDBInstance" } }, "ReservedDBInstanceMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ReservedDBInstances":{"shape":"ReservedDBInstanceList"} } }, "ReservedDBInstanceNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstanceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ReservedDBInstanceQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstanceQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ReservedDBInstancesOffering":{ "type":"structure", "members":{ "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Duration":{"shape":"Integer"}, "FixedPrice":{"shape":"Double"}, "UsagePrice":{"shape":"Double"}, "CurrencyCode":{"shape":"String"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"Boolean"}, "RecurringCharges":{"shape":"RecurringChargeList"} }, "wrapper":true }, "ReservedDBInstancesOfferingList":{ "type":"list", "member":{ "shape":"ReservedDBInstancesOffering", "locationName":"ReservedDBInstancesOffering" } }, "ReservedDBInstancesOfferingMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ReservedDBInstancesOfferings":{"shape":"ReservedDBInstancesOfferingList"} } }, "ReservedDBInstancesOfferingNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstancesOfferingNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ResetDBParameterGroupMessage":{ "type":"structure", "required":["DBParameterGroupName"], "members":{ "DBParameterGroupName":{"shape":"String"}, "ResetAllParameters":{"shape":"Boolean"}, "Parameters":{"shape":"ParametersList"} } }, "RestoreDBInstanceFromDBSnapshotMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "DBSnapshotIdentifier" ], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "DBSnapshotIdentifier":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroupName":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "LicenseModel":{"shape":"String"}, "DBName":{"shape":"String"}, "Engine":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "Tags":{"shape":"TagList"}, "StorageType":{"shape":"String"}, "TdeCredentialArn":{"shape":"String"}, "TdeCredentialPassword":{"shape":"String"} } }, "RestoreDBInstanceFromDBSnapshotResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "RestoreDBInstanceToPointInTimeMessage":{ "type":"structure", "required":[ "SourceDBInstanceIdentifier", "TargetDBInstanceIdentifier" ], "members":{ "SourceDBInstanceIdentifier":{"shape":"String"}, "TargetDBInstanceIdentifier":{"shape":"String"}, "RestoreTime":{"shape":"TStamp"}, "UseLatestRestorableTime":{"shape":"Boolean"}, "DBInstanceClass":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroupName":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "LicenseModel":{"shape":"String"}, "DBName":{"shape":"String"}, "Engine":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "Tags":{"shape":"TagList"}, "StorageType":{"shape":"String"}, "TdeCredentialArn":{"shape":"String"}, "TdeCredentialPassword":{"shape":"String"} } }, "RestoreDBInstanceToPointInTimeResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "RevokeDBSecurityGroupIngressMessage":{ "type":"structure", "required":["DBSecurityGroupName"], "members":{ "DBSecurityGroupName":{"shape":"String"}, "CIDRIP":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupId":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "RevokeDBSecurityGroupIngressResult":{ "type":"structure", "members":{ "DBSecurityGroup":{"shape":"DBSecurityGroup"} } }, "SNSInvalidTopicFault":{ "type":"structure", "members":{ }, "error":{ "code":"SNSInvalidTopic", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SNSNoAuthorizationFault":{ "type":"structure", "members":{ }, "error":{ "code":"SNSNoAuthorization", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SNSTopicArnNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SNSTopicArnNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SnapshotQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"SnapshotQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SourceIdsList":{ "type":"list", "member":{ "shape":"String", "locationName":"SourceId" } }, "SourceNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SourceType":{ "type":"string", "enum":[ "db-instance", "db-parameter-group", "db-security-group", "db-snapshot" ] }, "StorageQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"StorageQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "StorageTypeNotSupportedFault":{ "type":"structure", "members":{ }, "error":{ "code":"StorageTypeNotSupported", "httpStatusCode":400, "senderFault":true }, "exception":true }, "String":{"type":"string"}, "Subnet":{ "type":"structure", "members":{ "SubnetIdentifier":{"shape":"String"}, "SubnetAvailabilityZone":{"shape":"AvailabilityZone"}, "SubnetStatus":{"shape":"String"} } }, "SubnetAlreadyInUse":{ "type":"structure", "members":{ }, "error":{ "code":"SubnetAlreadyInUse", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SubnetIdentifierList":{ "type":"list", "member":{ "shape":"String", "locationName":"SubnetIdentifier" } }, "SubnetList":{ "type":"list", "member":{ "shape":"Subnet", "locationName":"Subnet" } }, "SubscriptionAlreadyExistFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionAlreadyExist", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SubscriptionCategoryNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionCategoryNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SubscriptionNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SupportedCharacterSetsList":{ "type":"list", "member":{ "shape":"CharacterSet", "locationName":"CharacterSet" } }, "TStamp":{"type":"timestamp"}, "Tag":{ "type":"structure", "members":{ "Key":{"shape":"String"}, "Value":{"shape":"String"} } }, "TagList":{ "type":"list", "member":{ "shape":"Tag", "locationName":"Tag" } }, "TagListMessage":{ "type":"structure", "members":{ "TagList":{"shape":"TagList"} } }, "VpcSecurityGroupIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpcSecurityGroupId" } }, "VpcSecurityGroupMembership":{ "type":"structure", "members":{ "VpcSecurityGroupId":{"shape":"String"}, "Status":{"shape":"String"} } }, "VpcSecurityGroupMembershipList":{ "type":"list", "member":{ "shape":"VpcSecurityGroupMembership", "locationName":"VpcSecurityGroupMembership" } } } } aws-sdk-go-1.4.22/models/apis/rds/2014-09-01/docs-2.json000066400000000000000000005627061300374646400216260ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon Relational Database Service

        Amazon Relational Database Service (Amazon RDS) is a web service that makes it easier to set up, operate, and scale a relational database in the cloud. It provides cost-efficient, resizable capacity for an industry-standard relational database and manages common database administration tasks, freeing up developers to focus on what makes their applications and businesses unique.

        Amazon RDS gives you access to the capabilities of a MySQL, PostgreSQL, Microsoft SQL Server, or Oracle database server. This means the code, applications, and tools you already use today with your existing databases work with Amazon RDS without modification. Amazon RDS automatically backs up your database and maintains the database software that powers your DB instance. Amazon RDS is flexible: you can scale your database instance's compute resources and storage capacity to meet your application's demand. As with all Amazon Web Services, there are no up-front investments, and you pay only for the resources you use.

        This is an interface reference for Amazon RDS. It contains documentation for a programming or command line interface you can use to manage Amazon RDS. Note that Amazon RDS is asynchronous, which means that some interfaces may require techniques such as polling or callback functions to determine when a command has been applied. In this reference, the parameter descriptions indicate whether a command is applied immediately, on the next instance reboot, or during the maintenance window. For a summary of the Amazon RDS interfaces, go to Available RDS Interfaces.

        ", "operations": { "AddSourceIdentifierToSubscription": "

        Adds a source identifier to an existing RDS event notification subscription.

        ", "AddTagsToResource": "

        Adds metadata tags to an Amazon RDS resource. These tags can also be used with cost allocation reporting to track cost associated with Amazon RDS resources, or used in Condition statement in IAM policy for Amazon RDS.

        For an overview on tagging Amazon RDS resources, see Tagging Amazon RDS Resources.

        ", "AuthorizeDBSecurityGroupIngress": "

        Enables ingress to a DBSecurityGroup using one of two forms of authorization. First, EC2 or VPC security groups can be added to the DBSecurityGroup if the application using the database is running on EC2 or VPC instances. Second, IP ranges are available if the application accessing your database is running on the Internet. Required parameters for this API are one of CIDR range, EC2SecurityGroupId for VPC, or (EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId for non-VPC).

        You cannot authorize ingress from an EC2 security group in one Region to an Amazon RDS DB instance in another. You cannot authorize ingress from a VPC security group in one VPC to an Amazon RDS DB instance in another.

        For an overview of CIDR ranges, go to the Wikipedia Tutorial.

        ", "CopyDBParameterGroup": "

        Copies the specified DB parameter group.

        ", "CopyDBSnapshot": "

        Copies the specified DBSnapshot. The source DBSnapshot must be in the \"available\" state.

        ", "CopyOptionGroup": "

        Copies the specified option group.

        ", "CreateDBInstance": "

        Creates a new DB instance.

        ", "CreateDBInstanceReadReplica": "

        Creates a DB instance that acts as a Read Replica of a source DB instance.

        All Read Replica DB instances are created as Single-AZ deployments with backups disabled. All other DB instance attributes (including DB security groups and DB parameter groups) are inherited from the source DB instance, except as specified below.

        The source DB instance must have backup retention enabled.

        ", "CreateDBParameterGroup": "

        Creates a new DB parameter group.

        A DB parameter group is initially created with the default parameters for the database engine used by the DB instance. To provide custom values for any of the parameters, you must modify the group after creating it using ModifyDBParameterGroup. Once you've created a DB parameter group, you need to associate it with your DB instance using ModifyDBInstance. When you associate a new DB parameter group with a running DB instance, you need to reboot the DB instance without failover for the new DB parameter group and associated settings to take effect.

        After you create a DB parameter group, you should wait at least 5 minutes before creating your first DB instance that uses that DB parameter group as the default parameter group. This allows Amazon RDS to fully complete the create action before the parameter group is used as the default for a new DB instance. This is especially important for parameters that are critical when creating the default database for a DB instance, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBParameters command to verify that your DB parameter group has been created or modified.

        ", "CreateDBSecurityGroup": "

        Creates a new DB security group. DB security groups control access to a DB instance.

        ", "CreateDBSnapshot": "

        Creates a DBSnapshot. The source DBInstance must be in \"available\" state.

        ", "CreateDBSubnetGroup": "

        Creates a new DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in the region.

        ", "CreateEventSubscription": "

        Creates an RDS event notification subscription. This action requires a topic ARN (Amazon Resource Name) created by either the RDS console, the SNS console, or the SNS API. To obtain an ARN with SNS, you must create a topic in Amazon SNS and subscribe to the topic. The ARN is displayed in the SNS console.

        You can specify the type of source (SourceType) you want to be notified of, provide a list of RDS sources (SourceIds) that triggers the events, and provide a list of event categories (EventCategories) for events you want to be notified of. For example, you can specify SourceType = db-instance, SourceIds = mydbinstance1, mydbinstance2 and EventCategories = Availability, Backup.

        If you specify both the SourceType and SourceIds, such as SourceType = db-instance and SourceIdentifier = myDBInstance1, you will be notified of all the db-instance events for the specified source. If you specify a SourceType but do not specify a SourceIdentifier, you will receive notice of the events for that source type for all your RDS sources. If you do not specify either the SourceType nor the SourceIdentifier, you will be notified of events generated from all RDS sources belonging to your customer account.

        ", "CreateOptionGroup": "

        Creates a new option group. You can create up to 20 option groups.

        ", "DeleteDBInstance": "

        The DeleteDBInstance action deletes a previously provisioned DB instance. A successful response from the web service indicates the request was received correctly. When you delete a DB instance, all automated backups for that instance are deleted and cannot be recovered. Manual DB snapshots of the DB instance to be deleted are not deleted.

        If a final DB snapshot is requested the status of the RDS instance will be \"deleting\" until the DB snapshot is created. The API action DescribeDBInstance is used to monitor the status of this operation. The action cannot be canceled or reverted once submitted.

        ", "DeleteDBParameterGroup": "

        Deletes a specified DBParameterGroup. The DBParameterGroup to be deleted cannot be associated with any DB instances.

        The specified DB parameter group cannot be associated with any DB instances. ", "DeleteDBSecurityGroup": "

        Deletes a DB security group.

        The specified DB security group must not be associated with any DB instances.", "DeleteDBSnapshot": "

        Deletes a DBSnapshot. If the snapshot is being copied, the copy operation is terminated.

        The DBSnapshot must be in the available state to be deleted.", "DeleteDBSubnetGroup": "

        Deletes a DB subnet group.

        The specified database subnet group must not be associated with any DB instances.", "DeleteEventSubscription": "

        Deletes an RDS event notification subscription.

        ", "DeleteOptionGroup": "

        Deletes an existing option group.

        ", "DescribeDBEngineVersions": "

        Returns a list of the available DB engines.

        ", "DescribeDBInstances": "

        Returns information about provisioned RDS instances. This API supports pagination.

        ", "DescribeDBLogFiles": "

        Returns a list of DB log files for the DB instance.

        ", "DescribeDBParameterGroups": "

        Returns a list of DBParameterGroup descriptions. If a DBParameterGroupName is specified, the list will contain only the description of the specified DB parameter group.

        ", "DescribeDBParameters": "

        Returns the detailed parameter list for a particular DB parameter group.

        ", "DescribeDBSecurityGroups": "

        Returns a list of DBSecurityGroup descriptions. If a DBSecurityGroupName is specified, the list will contain only the descriptions of the specified DB security group.

        ", "DescribeDBSnapshots": "

        Returns information about DB snapshots. This API supports pagination.

        ", "DescribeDBSubnetGroups": "

        Returns a list of DBSubnetGroup descriptions. If a DBSubnetGroupName is specified, the list will contain only the descriptions of the specified DBSubnetGroup.

        For an overview of CIDR ranges, go to the Wikipedia Tutorial.

        ", "DescribeEngineDefaultParameters": "

        Returns the default engine and system parameter information for the specified database engine.

        ", "DescribeEventCategories": "

        Displays a list of categories for all event source types, or, if specified, for a specified source type. You can see a list of the event categories and source types in the Events topic in the Amazon RDS User Guide.

        ", "DescribeEventSubscriptions": "

        Lists all the subscription descriptions for a customer account. The description for a subscription includes SubscriptionName, SNSTopicARN, CustomerID, SourceType, SourceID, CreationTime, and Status.

        If you specify a SubscriptionName, lists the description for that subscription.

        ", "DescribeEvents": "

        Returns events related to DB instances, DB security groups, DB snapshots, and DB parameter groups for the past 14 days. Events specific to a particular DB instance, DB security group, database snapshot, or DB parameter group can be obtained by providing the name as a parameter. By default, the past hour of events are returned.

        ", "DescribeOptionGroupOptions": "

        Describes all available options.

        ", "DescribeOptionGroups": "

        Describes the available option groups.

        ", "DescribeOrderableDBInstanceOptions": "

        Returns a list of orderable DB instance options for the specified engine.

        ", "DescribeReservedDBInstances": "

        Returns information about reserved DB instances for this account, or about a specified reserved DB instance.

        ", "DescribeReservedDBInstancesOfferings": "

        Lists available reserved DB instance offerings.

        ", "DownloadDBLogFilePortion": "

        Downloads all or a portion of the specified log file.

        ", "ListTagsForResource": "

        Lists all tags on an Amazon RDS resource.

        For an overview on tagging an Amazon RDS resource, see Tagging Amazon RDS Resources.

        ", "ModifyDBInstance": "

        Modify settings for a DB instance. You can change one or more database configuration parameters by specifying these parameters and the new values in the request.

        ", "ModifyDBParameterGroup": "

        Modifies the parameters of a DB parameter group. To modify more than one parameter, submit a list of the following: ParameterName, ParameterValue, and ApplyMethod. A maximum of 20 parameters can be modified in a single request.

        Changes to dynamic parameters are applied immediately. Changes to static parameters require a reboot without failover to the DB instance associated with the parameter group before the change can take effect.

        After you modify a DB parameter group, you should wait at least 5 minutes before creating your first DB instance that uses that DB parameter group as the default parameter group. This allows Amazon RDS to fully complete the modify action before the parameter group is used as the default for a new DB instance. This is especially important for parameters that are critical when creating the default database for a DB instance, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBParameters command to verify that your DB parameter group has been created or modified.

        ", "ModifyDBSubnetGroup": "

        Modifies an existing DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in the region.

        ", "ModifyEventSubscription": "

        Modifies an existing RDS event notification subscription. Note that you cannot modify the source identifiers using this call; to change source identifiers for a subscription, use the AddSourceIdentifierToSubscription and RemoveSourceIdentifierFromSubscription calls.

        You can see a list of the event categories for a given SourceType in the Events topic in the Amazon RDS User Guide or by using the DescribeEventCategories action.

        ", "ModifyOptionGroup": "

        Modifies an existing option group.

        ", "PromoteReadReplica": "

        Promotes a Read Replica DB instance to a standalone DB instance.

        We recommend that you enable automated backups on your Read Replica before promoting the Read Replica. This ensures that no backup is taken during the promotion process. Once the instance is promoted to a primary instance, backups are taken based on your backup settings.

        ", "PurchaseReservedDBInstancesOffering": "

        Purchases a reserved DB instance offering.

        ", "RebootDBInstance": "

        Rebooting a DB instance restarts the database engine service. A reboot also applies to the DB instance any modifications to the associated DB parameter group that were pending. Rebooting a DB instance results in a momentary outage of the instance, during which the DB instance status is set to rebooting. If the RDS instance is configured for MultiAZ, it is possible that the reboot will be conducted through a failover. An Amazon RDS event is created when the reboot is completed.

        If your DB instance is deployed in multiple Availability Zones, you can force a failover from one AZ to the other during the reboot. You might force a failover to test the availability of your DB instance deployment or to restore operations to the original AZ after a failover occurs.

        The time required to reboot is a function of the specific database engine's crash recovery process. To improve the reboot time, we recommend that you reduce database activities as much as possible during the reboot process to reduce rollback activity for in-transit transactions.

        ", "RemoveSourceIdentifierFromSubscription": "

        Removes a source identifier from an existing RDS event notification subscription.

        ", "RemoveTagsFromResource": "

        Removes metadata tags from an Amazon RDS resource.

        For an overview on tagging an Amazon RDS resource, see Tagging Amazon RDS Resources.

        ", "ResetDBParameterGroup": "

        Modifies the parameters of a DB parameter group to the engine/system default value. To reset specific parameters submit a list of the following: ParameterName and ApplyMethod. To reset the entire DB parameter group, specify the DBParameterGroup name and ResetAllParameters parameters. When resetting the entire group, dynamic parameters are updated immediately and static parameters are set to pending-reboot to take effect on the next DB instance restart or RebootDBInstance request.

        ", "RestoreDBInstanceFromDBSnapshot": "

        Creates a new DB instance from a DB snapshot. The target database is created from the source database restore point with the same configuration as the original source database, except that the new RDS instance is created with the default security group.

        If your intent is to replace your original DB instance with the new, restored DB instance, then rename your original DB instance before you call the RestoreDBInstanceFromDBSnapshot action. RDS does not allow two DB instances with the same name. Once you have renamed your original DB instance with a different identifier, then you can pass the original name of the DB instance as the DBInstanceIdentifier in the call to the RestoreDBInstanceFromDBSnapshot action. The result is that you will replace the original DB instance with the DB instance created from the snapshot.

        ", "RestoreDBInstanceToPointInTime": "

        Restores a DB instance to an arbitrary point-in-time. Users can restore to any point in time before the LatestRestorableTime for up to BackupRetentionPeriod days. The target database is created from the source database with the same configuration as the original database except that the DB instance is created with the default DB security group.

        ", "RevokeDBSecurityGroupIngress": "

        Revokes ingress from a DBSecurityGroup for previously authorized IP ranges or EC2 or VPC Security Groups. Required parameters for this API are one of CIDRIP, EC2SecurityGroupId for VPC, or (EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId).

        " }, "shapes": { "AddSourceIdentifierToSubscriptionMessage": { "base": "

        ", "refs": { } }, "AddSourceIdentifierToSubscriptionResult": { "base": null, "refs": { } }, "AddTagsToResourceMessage": { "base": "

        ", "refs": { } }, "ApplyMethod": { "base": null, "refs": { "Parameter$ApplyMethod": "

        Indicates when to apply parameter updates.

        " } }, "AuthorizationAlreadyExistsFault": { "base": "

        The specified CIDRIP or EC2 security group is already authorized for the specified DB security group.

        ", "refs": { } }, "AuthorizationNotFoundFault": { "base": "

        Specified CIDRIP or EC2 security group is not authorized for the specified DB security group.

        RDS may not also be authorized via IAM to perform necessary actions on your behalf.

        ", "refs": { } }, "AuthorizationQuotaExceededFault": { "base": "

        DB security group authorization quota has been reached.

        ", "refs": { } }, "AuthorizeDBSecurityGroupIngressMessage": { "base": "

        ", "refs": { } }, "AuthorizeDBSecurityGroupIngressResult": { "base": null, "refs": { } }, "AvailabilityZone": { "base": "

        Contains Availability Zone information.

        This data type is used as an element in the following data type:

        ", "refs": { "AvailabilityZoneList$member": null, "Subnet$SubnetAvailabilityZone": null } }, "AvailabilityZoneList": { "base": null, "refs": { "OrderableDBInstanceOption$AvailabilityZones": "

        A list of availability zones for the orderable DB instance.

        " } }, "Boolean": { "base": null, "refs": { "DBInstance$MultiAZ": "

        Specifies if the DB instance is a Multi-AZ deployment.

        ", "DBInstance$AutoMinorVersionUpgrade": "

        Indicates that minor version patches are applied automatically.

        ", "DBInstance$PubliclyAccessible": "

        Specifies the accessibility options for the DB instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC:true
        • VPC:false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "DBInstanceStatusInfo$Normal": "

        Boolean value that is true if the instance is operating normally, or false if the instance is in an error state.

        ", "DeleteDBInstanceMessage$SkipFinalSnapshot": "

        Determines whether a final DB snapshot is created before the DB instance is deleted. If true is specified, no DBSnapshot is created. If false is specified, a DB snapshot is created before the DB instance is deleted.

        Specify true when deleting a Read Replica.

        The FinalDBSnapshotIdentifier parameter must be specified if SkipFinalSnapshot is false.

        Default: false

        ", "DescribeDBEngineVersionsMessage$DefaultOnly": "

        Indicates that only the default version of the specified engine or engine and major version combination is returned.

        ", "DownloadDBLogFilePortionDetails$AdditionalDataPending": "

        Boolean value that if true, indicates there is more data to be downloaded.

        ", "EventSubscription$Enabled": "

        A Boolean value indicating if the subscription is enabled. True indicates the subscription is enabled.

        ", "ModifyDBInstanceMessage$ApplyImmediately": "

        Specifies whether the modifications in this request and any pending modifications are asynchronously applied as soon as possible, regardless of the PreferredMaintenanceWindow setting for the DB instance.

        If this parameter is set to false, changes to the DB instance are applied during the next maintenance window. Some parameter changes can cause an outage and will be applied on the next call to RebootDBInstance, or the next failure reboot. Review the table of parameters in Modifying a DB Instance and Using the Apply Immediately Parameter to see the impact that setting ApplyImmediately to true or false has for each modified parameter and to determine when the changes will be applied.

        Default: false

        ", "ModifyDBInstanceMessage$AllowMajorVersionUpgrade": "

        Indicates that major version upgrades are allowed. Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible.

        Constraints: This parameter must be set to true when specifying a value for the EngineVersion parameter that is a different major version than the DB instance's current version.

        ", "ModifyOptionGroupMessage$ApplyImmediately": "

        Indicates whether the changes should be applied immediately, or during the next maintenance window for each instance associated with the option group.

        ", "Option$Persistent": "

        Indicate if this option is persistent.

        ", "Option$Permanent": "

        Indicate if this option is permanent.

        ", "OptionGroup$AllowsVpcAndNonVpcInstanceMemberships": "

        Indicates whether this option group can be applied to both VPC and non-VPC instances. The value true indicates the option group can be applied to both VPC and non-VPC instances.

        ", "OptionGroupOption$PortRequired": "

        Specifies whether the option requires a port.

        ", "OptionGroupOption$Persistent": "

        A persistent option cannot be removed from the option group once the option group is used, but this option can be removed from the db instance while modifying the related data and assigning another option group without this option.

        ", "OptionGroupOption$Permanent": "

        A permanent option cannot be removed from the option group once the option group is used, and it cannot be removed from the db instance after assigning an option group with this permanent option.

        ", "OptionGroupOptionSetting$IsModifiable": "

        Boolean value where true indicates that this option group option can be changed from the default value.

        ", "OptionSetting$IsModifiable": "

        A Boolean value that, when true, indicates the option setting can be modified from the default.

        ", "OptionSetting$IsCollection": "

        Indicates if the option setting is part of a collection.

        ", "OrderableDBInstanceOption$MultiAZCapable": "

        Indicates whether this orderable DB instance is multi-AZ capable.

        ", "OrderableDBInstanceOption$ReadReplicaCapable": "

        Indicates whether this orderable DB instance can have a Read Replica.

        ", "OrderableDBInstanceOption$Vpc": "

        Indicates whether this is a VPC orderable DB instance.

        ", "OrderableDBInstanceOption$SupportsIops": "

        Indicates whether this orderable DB instance supports provisioned IOPS.

        ", "Parameter$IsModifiable": "

        Indicates whether (true) or not (false) the parameter can be modified. Some parameters have security or operational implications that prevent them from being changed.

        ", "ReservedDBInstance$MultiAZ": "

        Indicates if the reservation applies to Multi-AZ deployments.

        ", "ReservedDBInstancesOffering$MultiAZ": "

        Indicates if the offering applies to Multi-AZ deployments.

        ", "ResetDBParameterGroupMessage$ResetAllParameters": "

        Specifies whether (true) or not (false) to reset all parameters in the DB parameter group to default values.

        Default: true

        ", "RestoreDBInstanceToPointInTimeMessage$UseLatestRestorableTime": "

        Specifies whether (true) or not (false) the DB instance is restored from the latest backup time.

        Default: false

        Constraints: Cannot be specified if RestoreTime parameter is provided.

        " } }, "BooleanOptional": { "base": null, "refs": { "CreateDBInstanceMessage$MultiAZ": "

        Specifies if the DB instance is a Multi-AZ deployment. You cannot set the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        ", "CreateDBInstanceMessage$AutoMinorVersionUpgrade": "

        Indicates that minor engine upgrades will be applied automatically to the DB instance during the maintenance window.

        Default: true

        ", "CreateDBInstanceMessage$PubliclyAccessible": "

        Specifies the accessibility options for the DB instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC:true
        • VPC:false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "CreateDBInstanceReadReplicaMessage$AutoMinorVersionUpgrade": "

        Indicates that minor engine upgrades will be applied automatically to the Read Replica during the maintenance window.

        Default: Inherits from the source DB instance

        ", "CreateDBInstanceReadReplicaMessage$PubliclyAccessible": "

        Specifies the accessibility options for the DB instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC:true
        • VPC:false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "CreateEventSubscriptionMessage$Enabled": "

        A Boolean value; set to true to activate the subscription, set to false to create the subscription but not active it.

        ", "DescribeDBEngineVersionsMessage$ListSupportedCharacterSets": "

        If this parameter is specified, and if the requested engine supports the CharacterSetName parameter for CreateDBInstance, the response includes a list of supported character sets for each engine version.

        ", "DescribeOrderableDBInstanceOptionsMessage$Vpc": "

        The VPC filter value. Specify this parameter to show only the available VPC or non-VPC offerings.

        ", "DescribeReservedDBInstancesMessage$MultiAZ": "

        The Multi-AZ filter value. Specify this parameter to show only those reservations matching the specified Multi-AZ parameter.

        ", "DescribeReservedDBInstancesOfferingsMessage$MultiAZ": "

        The Multi-AZ filter value. Specify this parameter to show only the available offerings matching the specified Multi-AZ parameter.

        ", "ModifyDBInstanceMessage$MultiAZ": "

        Specifies if the DB instance is a Multi-AZ deployment. Changing this parameter does not result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        Constraints: Cannot be specified if the DB instance is a Read Replica.

        ", "ModifyDBInstanceMessage$AutoMinorVersionUpgrade": "

        Indicates that minor version upgrades will be applied automatically to the DB instance during the maintenance window. Changing this parameter does not result in an outage except in the following case and the change is asynchronously applied as soon as possible. An outage will result if this parameter is set to true during the maintenance window, and a newer minor version is available, and RDS has enabled auto patching for that engine version.

        ", "ModifyEventSubscriptionMessage$Enabled": "

        A Boolean value; set to true to activate the subscription.

        ", "PendingModifiedValues$MultiAZ": "

        Indicates that the Single-AZ DB instance is to change to a Multi-AZ deployment.

        ", "RebootDBInstanceMessage$ForceFailover": "

        When true, the reboot will be conducted through a MultiAZ failover.

        Constraint: You cannot specify true if the instance is not configured for MultiAZ.

        ", "RestoreDBInstanceFromDBSnapshotMessage$MultiAZ": "

        Specifies if the DB instance is a Multi-AZ deployment.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        ", "RestoreDBInstanceFromDBSnapshotMessage$PubliclyAccessible": "

        Specifies the accessibility options for the DB instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC:true
        • VPC:false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "RestoreDBInstanceFromDBSnapshotMessage$AutoMinorVersionUpgrade": "

        Indicates that minor version upgrades will be applied automatically to the DB instance during the maintenance window.

        ", "RestoreDBInstanceToPointInTimeMessage$MultiAZ": "

        Specifies if the DB instance is a Multi-AZ deployment.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        ", "RestoreDBInstanceToPointInTimeMessage$PubliclyAccessible": "

        Specifies the accessibility options for the DB instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC:true
        • VPC:false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "RestoreDBInstanceToPointInTimeMessage$AutoMinorVersionUpgrade": "

        Indicates that minor version upgrades will be applied automatically to the DB instance during the maintenance window.

        " } }, "CharacterSet": { "base": "

        This data type is used as a response element in the action DescribeDBEngineVersions.

        ", "refs": { "DBEngineVersion$DefaultCharacterSet": "

        The default character set for new instances of this engine version, if the CharacterSetName parameter of the CreateDBInstance API is not specified.

        ", "SupportedCharacterSetsList$member": null } }, "CopyDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "CopyDBParameterGroupResult": { "base": null, "refs": { } }, "CopyDBSnapshotMessage": { "base": "

        ", "refs": { } }, "CopyDBSnapshotResult": { "base": null, "refs": { } }, "CopyOptionGroupMessage": { "base": "

        ", "refs": { } }, "CopyOptionGroupResult": { "base": null, "refs": { } }, "CreateDBInstanceMessage": { "base": "

        ", "refs": { } }, "CreateDBInstanceReadReplicaMessage": { "base": null, "refs": { } }, "CreateDBInstanceReadReplicaResult": { "base": null, "refs": { } }, "CreateDBInstanceResult": { "base": null, "refs": { } }, "CreateDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "CreateDBParameterGroupResult": { "base": null, "refs": { } }, "CreateDBSecurityGroupMessage": { "base": "

        ", "refs": { } }, "CreateDBSecurityGroupResult": { "base": null, "refs": { } }, "CreateDBSnapshotMessage": { "base": "

        ", "refs": { } }, "CreateDBSnapshotResult": { "base": null, "refs": { } }, "CreateDBSubnetGroupMessage": { "base": "

        ", "refs": { } }, "CreateDBSubnetGroupResult": { "base": null, "refs": { } }, "CreateEventSubscriptionMessage": { "base": "

        ", "refs": { } }, "CreateEventSubscriptionResult": { "base": null, "refs": { } }, "CreateOptionGroupMessage": { "base": "

        ", "refs": { } }, "CreateOptionGroupResult": { "base": null, "refs": { } }, "DBEngineVersion": { "base": "

        This data type is used as a response element in the action DescribeDBEngineVersions.

        ", "refs": { "DBEngineVersionList$member": null } }, "DBEngineVersionList": { "base": null, "refs": { "DBEngineVersionMessage$DBEngineVersions": "

        A list of DBEngineVersion elements.

        " } }, "DBEngineVersionMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBEngineVersions action.

        ", "refs": { } }, "DBInstance": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBInstances action.

        ", "refs": { "CreateDBInstanceReadReplicaResult$DBInstance": null, "CreateDBInstanceResult$DBInstance": null, "DBInstanceList$member": null, "DeleteDBInstanceResult$DBInstance": null, "ModifyDBInstanceResult$DBInstance": null, "PromoteReadReplicaResult$DBInstance": null, "RebootDBInstanceResult$DBInstance": null, "RestoreDBInstanceFromDBSnapshotResult$DBInstance": null, "RestoreDBInstanceToPointInTimeResult$DBInstance": null } }, "DBInstanceAlreadyExistsFault": { "base": "

        User already has a DB instance with the given identifier.

        ", "refs": { } }, "DBInstanceList": { "base": null, "refs": { "DBInstanceMessage$DBInstances": "

        A list of DBInstance instances.

        " } }, "DBInstanceMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBInstances action.

        ", "refs": { } }, "DBInstanceNotFoundFault": { "base": "

        DBInstanceIdentifier does not refer to an existing DB instance.

        ", "refs": { } }, "DBInstanceStatusInfo": { "base": "

        Provides a list of status information for a DB instance.

        ", "refs": { "DBInstanceStatusInfoList$member": null } }, "DBInstanceStatusInfoList": { "base": null, "refs": { "DBInstance$StatusInfos": "

        The status of a Read Replica. If the instance is not a Read Replica, this will be blank.

        " } }, "DBLogFileNotFoundFault": { "base": "

        LogFileName does not refer to an existing DB log file.

        ", "refs": { } }, "DBParameterGroup": { "base": "

        Contains the result of a successful invocation of the CreateDBParameterGroup action.

        This data type is used as a request parameter in the DeleteDBParameterGroup action, and as a response element in the DescribeDBParameterGroups action.

        ", "refs": { "CopyDBParameterGroupResult$DBParameterGroup": null, "CreateDBParameterGroupResult$DBParameterGroup": null, "DBParameterGroupList$member": null } }, "DBParameterGroupAlreadyExistsFault": { "base": "

        A DB parameter group with the same name exists.

        ", "refs": { } }, "DBParameterGroupDetails": { "base": "

        Contains the result of a successful invocation of the DescribeDBParameters action.

        ", "refs": { } }, "DBParameterGroupList": { "base": null, "refs": { "DBParameterGroupsMessage$DBParameterGroups": "

        A list of DBParameterGroup instances.

        " } }, "DBParameterGroupNameMessage": { "base": "

        Contains the result of a successful invocation of the ModifyDBParameterGroup or ResetDBParameterGroup action.

        ", "refs": { } }, "DBParameterGroupNotFoundFault": { "base": "

        DBParameterGroupName does not refer to an existing DB parameter group.

        ", "refs": { } }, "DBParameterGroupQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB parameter groups.

        ", "refs": { } }, "DBParameterGroupStatus": { "base": "

        The status of the DB parameter group.

        This data type is used as a response element in the following actions:

        ", "refs": { "DBParameterGroupStatusList$member": null } }, "DBParameterGroupStatusList": { "base": null, "refs": { "DBInstance$DBParameterGroups": "

        Provides the list of DB parameter groups applied to this DB instance.

        " } }, "DBParameterGroupsMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBParameterGroups action.

        ", "refs": { } }, "DBSecurityGroup": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBSecurityGroups action.

        ", "refs": { "AuthorizeDBSecurityGroupIngressResult$DBSecurityGroup": null, "CreateDBSecurityGroupResult$DBSecurityGroup": null, "DBSecurityGroups$member": null, "RevokeDBSecurityGroupIngressResult$DBSecurityGroup": null } }, "DBSecurityGroupAlreadyExistsFault": { "base": "

        A DB security group with the name specified in DBSecurityGroupName already exists.

        ", "refs": { } }, "DBSecurityGroupMembership": { "base": "

        This data type is used as a response element in the following actions:

        ", "refs": { "DBSecurityGroupMembershipList$member": null } }, "DBSecurityGroupMembershipList": { "base": null, "refs": { "DBInstance$DBSecurityGroups": "

        Provides List of DB security group elements containing only DBSecurityGroup.Name and DBSecurityGroup.Status subelements.

        ", "Option$DBSecurityGroupMemberships": "

        If the option requires access to a port, then this DB security group allows access to the port.

        " } }, "DBSecurityGroupMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBSecurityGroups action.

        ", "refs": { } }, "DBSecurityGroupNameList": { "base": null, "refs": { "CreateDBInstanceMessage$DBSecurityGroups": "

        A list of DB security groups to associate with this DB instance.

        Default: The default DB security group for the database engine.

        ", "ModifyDBInstanceMessage$DBSecurityGroups": "

        A list of DB security groups to authorize on this DB instance. Changing this setting does not result in an outage and the change is asynchronously applied as soon as possible.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "OptionConfiguration$DBSecurityGroupMemberships": "

        A list of DBSecurityGroupMemebrship name strings used for this option.

        " } }, "DBSecurityGroupNotFoundFault": { "base": "

        DBSecurityGroupName does not refer to an existing DB security group.

        ", "refs": { } }, "DBSecurityGroupNotSupportedFault": { "base": "

        A DB security group is not allowed for this action.

        ", "refs": { } }, "DBSecurityGroupQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB security groups.

        ", "refs": { } }, "DBSecurityGroups": { "base": null, "refs": { "DBSecurityGroupMessage$DBSecurityGroups": "

        A list of DBSecurityGroup instances.

        " } }, "DBSnapshot": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBSnapshots action.

        ", "refs": { "CopyDBSnapshotResult$DBSnapshot": null, "CreateDBSnapshotResult$DBSnapshot": null, "DBSnapshotList$member": null, "DeleteDBSnapshotResult$DBSnapshot": null } }, "DBSnapshotAlreadyExistsFault": { "base": "

        DBSnapshotIdentifier is already used by an existing snapshot.

        ", "refs": { } }, "DBSnapshotList": { "base": null, "refs": { "DBSnapshotMessage$DBSnapshots": "

        A list of DBSnapshot instances.

        " } }, "DBSnapshotMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBSnapshots action.

        ", "refs": { } }, "DBSnapshotNotFoundFault": { "base": "

        DBSnapshotIdentifier does not refer to an existing DB snapshot.

        ", "refs": { } }, "DBSubnetGroup": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBSubnetGroups action.

        ", "refs": { "CreateDBSubnetGroupResult$DBSubnetGroup": null, "DBInstance$DBSubnetGroup": "

        Specifies information on the subnet group associated with the DB instance, including the name, description, and subnets in the subnet group.

        ", "DBSubnetGroups$member": null, "ModifyDBSubnetGroupResult$DBSubnetGroup": null } }, "DBSubnetGroupAlreadyExistsFault": { "base": "

        DBSubnetGroupName is already used by an existing DB subnet group.

        ", "refs": { } }, "DBSubnetGroupDoesNotCoverEnoughAZs": { "base": "

        Subnets in the DB subnet group should cover at least two Availability Zones unless there is only one Availability Zone.

        ", "refs": { } }, "DBSubnetGroupMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBSubnetGroups action.

        ", "refs": { } }, "DBSubnetGroupNotAllowedFault": { "base": "

        Indicates that the DBSubnetGroup should not be specified while creating read replicas that lie in the same region as the source instance.

        ", "refs": { } }, "DBSubnetGroupNotFoundFault": { "base": "

        DBSubnetGroupName does not refer to an existing DB subnet group.

        ", "refs": { } }, "DBSubnetGroupQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB subnet groups.

        ", "refs": { } }, "DBSubnetGroups": { "base": null, "refs": { "DBSubnetGroupMessage$DBSubnetGroups": "

        A list of DBSubnetGroup instances.

        " } }, "DBSubnetQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of subnets in a DB subnet groups.

        ", "refs": { } }, "DBUpgradeDependencyFailureFault": { "base": "

        The DB upgrade failed because a resource the DB depends on could not be modified.

        ", "refs": { } }, "DeleteDBInstanceMessage": { "base": "

        ", "refs": { } }, "DeleteDBInstanceResult": { "base": null, "refs": { } }, "DeleteDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "DeleteDBSecurityGroupMessage": { "base": "

        ", "refs": { } }, "DeleteDBSnapshotMessage": { "base": "

        ", "refs": { } }, "DeleteDBSnapshotResult": { "base": null, "refs": { } }, "DeleteDBSubnetGroupMessage": { "base": "

        ", "refs": { } }, "DeleteEventSubscriptionMessage": { "base": "

        ", "refs": { } }, "DeleteEventSubscriptionResult": { "base": null, "refs": { } }, "DeleteOptionGroupMessage": { "base": "

        ", "refs": { } }, "DescribeDBEngineVersionsMessage": { "base": null, "refs": { } }, "DescribeDBInstancesMessage": { "base": "

        ", "refs": { } }, "DescribeDBLogFilesDetails": { "base": "

        This data type is used as a response element to DescribeDBLogFiles.

        ", "refs": { "DescribeDBLogFilesList$member": null } }, "DescribeDBLogFilesList": { "base": null, "refs": { "DescribeDBLogFilesResponse$DescribeDBLogFiles": "

        The DB log files returned.

        " } }, "DescribeDBLogFilesMessage": { "base": "

        ", "refs": { } }, "DescribeDBLogFilesResponse": { "base": "

        The response from a call to DescribeDBLogFiles.

        ", "refs": { } }, "DescribeDBParameterGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeDBParametersMessage": { "base": null, "refs": { } }, "DescribeDBSecurityGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeDBSnapshotsMessage": { "base": "

        ", "refs": { } }, "DescribeDBSubnetGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeEngineDefaultParametersMessage": { "base": "

        ", "refs": { } }, "DescribeEngineDefaultParametersResult": { "base": null, "refs": { } }, "DescribeEventCategoriesMessage": { "base": "

        ", "refs": { } }, "DescribeEventSubscriptionsMessage": { "base": "

        ", "refs": { } }, "DescribeEventsMessage": { "base": "

        ", "refs": { } }, "DescribeOptionGroupOptionsMessage": { "base": "

        ", "refs": { } }, "DescribeOptionGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeOrderableDBInstanceOptionsMessage": { "base": "

        ", "refs": { } }, "DescribeReservedDBInstancesMessage": { "base": "

        ", "refs": { } }, "DescribeReservedDBInstancesOfferingsMessage": { "base": "

        ", "refs": { } }, "Double": { "base": null, "refs": { "RecurringCharge$RecurringChargeAmount": "

        The amount of the recurring charge.

        ", "ReservedDBInstance$FixedPrice": "

        The fixed price charged for this reserved DB instance.

        ", "ReservedDBInstance$UsagePrice": "

        The hourly price charged for this reserved DB instance.

        ", "ReservedDBInstancesOffering$FixedPrice": "

        The fixed price charged for this offering.

        ", "ReservedDBInstancesOffering$UsagePrice": "

        The hourly price charged for this offering.

        " } }, "DownloadDBLogFilePortionDetails": { "base": "

        This data type is used as a response element to DownloadDBLogFilePortion.

        ", "refs": { } }, "DownloadDBLogFilePortionMessage": { "base": "

        ", "refs": { } }, "EC2SecurityGroup": { "base": "

        This data type is used as a response element in the following actions:

        ", "refs": { "EC2SecurityGroupList$member": null } }, "EC2SecurityGroupList": { "base": null, "refs": { "DBSecurityGroup$EC2SecurityGroups": "

        Contains a list of EC2SecurityGroup elements.

        " } }, "Endpoint": { "base": "

        This data type is used as a response element in the following actions:

        ", "refs": { "DBInstance$Endpoint": "

        Specifies the connection endpoint.

        " } }, "EngineDefaults": { "base": "

        Contains the result of a successful invocation of the DescribeEngineDefaultParameters action.

        ", "refs": { "DescribeEngineDefaultParametersResult$EngineDefaults": null } }, "Event": { "base": "

        This data type is used as a response element in the DescribeEvents action.

        ", "refs": { "EventList$member": null } }, "EventCategoriesList": { "base": null, "refs": { "CreateEventSubscriptionMessage$EventCategories": "

        A list of event categories for a SourceType that you want to subscribe to. You can see a list of the categories for a given SourceType in the Events topic in the Amazon RDS User Guide or by using the DescribeEventCategories action.

        ", "DescribeEventsMessage$EventCategories": "

        A list of event categories that trigger notifications for a event notification subscription.

        ", "Event$EventCategories": "

        Specifies the category for the event.

        ", "EventCategoriesMap$EventCategories": "

        The event categories for the specified source type

        ", "EventSubscription$EventCategoriesList": "

        A list of event categories for the RDS event notification subscription.

        ", "ModifyEventSubscriptionMessage$EventCategories": "

        A list of event categories for a SourceType that you want to subscribe to. You can see a list of the categories for a given SourceType in the Events topic in the Amazon RDS User Guide or by using the DescribeEventCategories action.

        " } }, "EventCategoriesMap": { "base": "

        Contains the results of a successful invocation of the DescribeEventCategories action.

        ", "refs": { "EventCategoriesMapList$member": null } }, "EventCategoriesMapList": { "base": null, "refs": { "EventCategoriesMessage$EventCategoriesMapList": "

        A list of EventCategoriesMap data types.

        " } }, "EventCategoriesMessage": { "base": "

        Data returned from the DescribeEventCategories action.

        ", "refs": { } }, "EventList": { "base": null, "refs": { "EventsMessage$Events": "

        A list of Event instances.

        " } }, "EventSubscription": { "base": "

        Contains the results of a successful invocation of the DescribeEventSubscriptions action.

        ", "refs": { "AddSourceIdentifierToSubscriptionResult$EventSubscription": null, "CreateEventSubscriptionResult$EventSubscription": null, "DeleteEventSubscriptionResult$EventSubscription": null, "EventSubscriptionsList$member": null, "ModifyEventSubscriptionResult$EventSubscription": null, "RemoveSourceIdentifierFromSubscriptionResult$EventSubscription": null } }, "EventSubscriptionQuotaExceededFault": { "base": "

        You have reached the maximum number of event subscriptions.

        ", "refs": { } }, "EventSubscriptionsList": { "base": null, "refs": { "EventSubscriptionsMessage$EventSubscriptionsList": "

        A list of EventSubscriptions data types.

        " } }, "EventSubscriptionsMessage": { "base": "

        Data returned by the DescribeEventSubscriptions action.

        ", "refs": { } }, "EventsMessage": { "base": "

        Contains the result of a successful invocation of the DescribeEvents action.

        ", "refs": { } }, "Filter": { "base": null, "refs": { "FilterList$member": null } }, "FilterList": { "base": null, "refs": { "DescribeDBEngineVersionsMessage$Filters": "

        Not currently supported.

        ", "DescribeDBInstancesMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBLogFilesMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBParameterGroupsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBParametersMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBSecurityGroupsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBSnapshotsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBSubnetGroupsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeEngineDefaultParametersMessage$Filters": "

        Not currently supported.

        ", "DescribeEventCategoriesMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeEventSubscriptionsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeEventsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeOptionGroupOptionsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeOptionGroupsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeOrderableDBInstanceOptionsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeReservedDBInstancesMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeReservedDBInstancesOfferingsMessage$Filters": "

        This parameter is not currently supported.

        ", "ListTagsForResourceMessage$Filters": "

        This parameter is not currently supported.

        " } }, "FilterValueList": { "base": null, "refs": { "Filter$Values": "

        This parameter is not currently supported.

        " } }, "IPRange": { "base": "

        This data type is used as a response element in the DescribeDBSecurityGroups action.

        ", "refs": { "IPRangeList$member": null } }, "IPRangeList": { "base": null, "refs": { "DBSecurityGroup$IPRanges": "

        Contains a list of IPRange elements.

        " } }, "InstanceQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB instances.

        ", "refs": { } }, "InsufficientDBInstanceCapacityFault": { "base": "

        Specified DB instance class is not available in the specified Availability Zone.

        ", "refs": { } }, "Integer": { "base": null, "refs": { "DBInstance$AllocatedStorage": "

        Specifies the allocated storage size specified in gigabytes.

        ", "DBInstance$BackupRetentionPeriod": "

        Specifies the number of days for which automatic DB snapshots are retained.

        ", "DBSnapshot$AllocatedStorage": "

        Specifies the allocated storage size in gigabytes (GB).

        ", "DBSnapshot$Port": "

        Specifies the port that the database engine was listening on at the time of the snapshot.

        ", "DBSnapshot$PercentProgress": "

        The percentage of the estimated data that has been transferred.

        ", "DownloadDBLogFilePortionMessage$NumberOfLines": "

        The number of lines to download.

        If the NumberOfLines parameter is specified, then the block of lines returned can be from the beginning or the end of the log file, depending on the value of the Marker parameter.

        • If neither Marker or NumberOfLines are specified, the entire log file is returned.

        • If NumberOfLines is specified and Marker is not specified, then the most recent lines from the end of the log file are returned.

        • If Marker is specified as \"0\", then the specified number of lines from the beginning of the log file are returned.

        • You can download the log file in blocks of lines by specifying the size of the block using the NumberOfLines parameter, and by specifying a value of \"0\" for the Marker parameter in your first request. Include the Marker value returned in the response as the Marker value for the next request, continuing until the AdditionalDataPending response element returns false.

        ", "Endpoint$Port": "

        Specifies the port that the database engine is listening on.

        ", "ReservedDBInstance$Duration": "

        The duration of the reservation in seconds.

        ", "ReservedDBInstance$DBInstanceCount": "

        The number of reserved DB instances.

        ", "ReservedDBInstancesOffering$Duration": "

        The duration of the offering in seconds.

        " } }, "IntegerOptional": { "base": null, "refs": { "CreateDBInstanceMessage$AllocatedStorage": "

        The amount of storage (in gigabytes) to be initially allocated for the database instance.

        Type: Integer

        MySQL

        Constraints: Must be an integer from 5 to 3072.

        PostgreSQL

        Constraints: Must be an integer from 5 to 3072.

        Oracle

        Constraints: Must be an integer from 10 to 3072.

        SQL Server

        Constraints: Must be an integer from 200 to 1024 (Standard Edition and Enterprise Edition) or from 20 to 1024 (Express Edition and Web Edition)

        ", "CreateDBInstanceMessage$BackupRetentionPeriod": "

        The number of days for which automated backups are retained. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

        Default: 1

        Constraints:

        • Must be a value from 0 to 35
        • Cannot be set to 0 if the DB instance is a source to Read Replicas
        ", "CreateDBInstanceMessage$Port": "

        The port number on which the database accepts connections.

        MySQL

        Default: 3306

        Valid Values: 1150-65535

        Type: Integer

        PostgreSQL

        Default: 5432

        Valid Values: 1150-65535

        Type: Integer

        Oracle

        Default: 1521

        Valid Values: 1150-65535

        SQL Server

        Default: 1433

        Valid Values: 1150-65535 except for 1434, 3389, 47001, 49152, and 49152 through 49156.

        ", "CreateDBInstanceMessage$Iops": "

        The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB instance.

        Constraints: To use PIOPS, this value must be an integer greater than 1000.

        ", "CreateDBInstanceReadReplicaMessage$Port": "

        The port number that the DB instance uses for connections.

        Default: Inherits from the source DB instance

        Valid Values: 1150-65535

        ", "CreateDBInstanceReadReplicaMessage$Iops": "

        The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB instance.

        ", "DBInstance$Iops": "

        Specifies the Provisioned IOPS (I/O operations per second) value.

        ", "DBSnapshot$Iops": "

        Specifies the Provisioned IOPS (I/O operations per second) value of the DB instance at the time of the snapshot.

        ", "DescribeDBEngineVersionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more than the MaxRecords value is available, a pagination token called a marker is included in the response so that the following results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBInstancesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBLogFilesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        ", "DescribeDBParameterGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBParametersMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBSecurityGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBSnapshotsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeDBSubnetGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeEngineDefaultParametersMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeEventSubscriptionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeEventsMessage$Duration": "

        The number of minutes to retrieve events for.

        Default: 60

        ", "DescribeEventsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results may be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeOptionGroupOptionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeOptionGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeOrderableDBInstanceOptionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeReservedDBInstancesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more than the MaxRecords value is available, a pagination token called a marker is included in the response so that the following results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "DescribeReservedDBInstancesOfferingsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more than the MaxRecords value is available, a pagination token called a marker is included in the response so that the following results can be retrieved.

        Default: 100

        Constraints: minimum 20, maximum 100

        ", "ModifyDBInstanceMessage$AllocatedStorage": "

        The new storage capacity of the RDS instance. Changing this setting does not result in an outage and the change is applied during the next maintenance window unless ApplyImmediately is set to true for this request.

        MySQL

        Default: Uses existing setting

        Valid Values: 5-3072

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

        Type: Integer

        PostgreSQL

        Default: Uses existing setting

        Valid Values: 5-3072

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

        Type: Integer

        Oracle

        Default: Uses existing setting

        Valid Values: 10-3072

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

        SQL Server

        Cannot be modified.

        If you choose to migrate your DB instance from using standard storage to using Provisioned IOPS, or from using Provisioned IOPS to using standard storage, the process can take time. The duration of the migration depends on several factors such as database load, storage size, storage type (standard or Provisioned IOPS), amount of IOPS provisioned (if any), and the number of prior scale storage operations. Typical migration times are under 24 hours, but the process can take up to several days in some cases. During the migration, the DB instance will be available for use, but may experience performance degradation. While the migration takes place, nightly backups for the instance will be suspended. No other Amazon RDS operations can take place for the instance, including modifying the instance, rebooting the instance, deleting the instance, creating a read replica for the instance, and creating a DB snapshot of the instance.

        ", "ModifyDBInstanceMessage$BackupRetentionPeriod": "

        The number of days to retain automated backups. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

        Changing this parameter can result in an outage if you change from 0 to a non-zero value or from a non-zero value to 0. These changes are applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request. If you change the parameter from one non-zero value to another non-zero value, the change is asynchronously applied as soon as possible.

        Default: Uses existing setting

        Constraints:

        • Must be a value from 0 to 35
        • Can be specified for a MySQL Read Replica only if the source is running MySQL 5.6
        • Can be specified for a PostgreSQL Read Replica only if the source is running PostgreSQL 9.3.5
        • Cannot be set to 0 if the DB instance is a source to Read Replicas
        ", "ModifyDBInstanceMessage$Iops": "

        The new Provisioned IOPS (I/O operations per second) value for the RDS instance. Changing this setting does not result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        Default: Uses existing setting

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value. If you are migrating from Provisioned IOPS to standard storage, set this value to 0. The DB instance will require a reboot for the change in storage type to take effect.

        SQL Server

        Setting the IOPS value for the SQL Server database engine is not supported.

        Type: Integer

        If you choose to migrate your DB instance from using standard storage to using Provisioned IOPS, or from using Provisioned IOPS to using standard storage, the process can take time. The duration of the migration depends on several factors such as database load, storage size, storage type (standard or Provisioned IOPS), amount of IOPS provisioned (if any), and the number of prior scale storage operations. Typical migration times are under 24 hours, but the process can take up to several days in some cases. During the migration, the DB instance will be available for use, but may experience performance degradation. While the migration takes place, nightly backups for the instance will be suspended. No other Amazon RDS operations can take place for the instance, including modifying the instance, rebooting the instance, deleting the instance, creating a read replica for the instance, and creating a DB snapshot of the instance.

        ", "Option$Port": "

        If required, the port configured for this option to use.

        ", "OptionConfiguration$Port": "

        The optional port for the option.

        ", "OptionGroupOption$DefaultPort": "

        If the option requires a port, specifies the default port for the option.

        ", "PendingModifiedValues$AllocatedStorage": "

        Contains the new AllocatedStorage size for the DB instance that will be applied or is in progress.

        ", "PendingModifiedValues$Port": "

        Specifies the pending port for the DB instance.

        ", "PendingModifiedValues$BackupRetentionPeriod": "

        Specifies the pending number of days for which automated backups are retained.

        ", "PendingModifiedValues$Iops": "

        Specifies the new Provisioned IOPS value for the DB instance that will be applied or is being applied.

        ", "PromoteReadReplicaMessage$BackupRetentionPeriod": "

        The number of days to retain automated backups. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

        Default: 1

        Constraints:

        • Must be a value from 0 to 8
        ", "PurchaseReservedDBInstancesOfferingMessage$DBInstanceCount": "

        The number of instances to reserve.

        Default: 1

        ", "RestoreDBInstanceFromDBSnapshotMessage$Port": "

        The port number on which the database accepts connections.

        Default: The same port as the original DB instance

        Constraints: Value must be 1150-65535

        ", "RestoreDBInstanceFromDBSnapshotMessage$Iops": "

        Specifies the amount of provisioned IOPS for the DB instance, expressed in I/O operations per second. If this parameter is not specified, the IOPS value will be taken from the backup. If this parameter is set to 0, the new instance will be converted to a non-PIOPS instance, which will take additional time, though your DB instance will be available for connections before the conversion starts.

        Constraints: Must be an integer greater than 1000.

        SQL Server

        Setting the IOPS value for the SQL Server database engine is not supported.

        ", "RestoreDBInstanceToPointInTimeMessage$Port": "

        The port number on which the database accepts connections.

        Constraints: Value must be 1150-65535

        Default: The same port as the original DB instance.

        ", "RestoreDBInstanceToPointInTimeMessage$Iops": "

        The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB instance.

        Constraints: Must be an integer greater than 1000.

        SQL Server

        Setting the IOPS value for the SQL Server database engine is not supported.

        " } }, "InvalidDBInstanceStateFault": { "base": "

        The specified DB instance is not in the available state.

        ", "refs": { } }, "InvalidDBParameterGroupStateFault": { "base": "

        The DB parameter group cannot be deleted because it is in use.

        ", "refs": { } }, "InvalidDBSecurityGroupStateFault": { "base": "

        The state of the DB security group does not allow deletion.

        ", "refs": { } }, "InvalidDBSnapshotStateFault": { "base": "

        The state of the DB snapshot does not allow deletion.

        ", "refs": { } }, "InvalidDBSubnetGroupFault": { "base": "

        Indicates the DBSubnetGroup does not belong to the same VPC as that of an existing cross region read replica of the same source instance.

        ", "refs": { } }, "InvalidDBSubnetGroupStateFault": { "base": "

        The DB subnet group cannot be deleted because it is in use.

        ", "refs": { } }, "InvalidDBSubnetStateFault": { "base": "

        The DB subnet is not in the available state.

        ", "refs": { } }, "InvalidEventSubscriptionStateFault": { "base": "

        This error can occur if someone else is modifying a subscription. You should retry the action.

        ", "refs": { } }, "InvalidOptionGroupStateFault": { "base": "

        The option group is not in the available state.

        ", "refs": { } }, "InvalidRestoreFault": { "base": "

        Cannot restore from vpc backup to non-vpc DB instance.

        ", "refs": { } }, "InvalidSubnet": { "base": "

        The requested subnet is invalid, or multiple subnets were requested that are not all in a common VPC.

        ", "refs": { } }, "InvalidVPCNetworkStateFault": { "base": "

        DB subnet group does not cover all Availability Zones after it is created because users' change.

        ", "refs": { } }, "KeyList": { "base": null, "refs": { "RemoveTagsFromResourceMessage$TagKeys": "

        The tag key (name) of the tag to be removed.

        " } }, "ListTagsForResourceMessage": { "base": "

        ", "refs": { } }, "Long": { "base": null, "refs": { "DescribeDBLogFilesDetails$LastWritten": "

        A POSIX timestamp when the last log entry was written.

        ", "DescribeDBLogFilesDetails$Size": "

        The size, in bytes, of the log file for the specified DB instance.

        ", "DescribeDBLogFilesMessage$FileLastWritten": "

        Filters the available log files for files written since the specified date, in POSIX timestamp format.

        ", "DescribeDBLogFilesMessage$FileSize": "

        Filters the available log files for files larger than the specified size.

        " } }, "ModifyDBInstanceMessage": { "base": "

        ", "refs": { } }, "ModifyDBInstanceResult": { "base": null, "refs": { } }, "ModifyDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "ModifyDBSubnetGroupMessage": { "base": "

        ", "refs": { } }, "ModifyDBSubnetGroupResult": { "base": null, "refs": { } }, "ModifyEventSubscriptionMessage": { "base": "

        ", "refs": { } }, "ModifyEventSubscriptionResult": { "base": null, "refs": { } }, "ModifyOptionGroupMessage": { "base": "

        ", "refs": { } }, "ModifyOptionGroupResult": { "base": null, "refs": { } }, "Option": { "base": "

        Option details.

        ", "refs": { "OptionsList$member": null } }, "OptionConfiguration": { "base": "

        A list of all available options

        ", "refs": { "OptionConfigurationList$member": null } }, "OptionConfigurationList": { "base": null, "refs": { "ModifyOptionGroupMessage$OptionsToInclude": "

        Options in this list are added to the option group or, if already present, the specified configuration is used to update the existing configuration.

        " } }, "OptionGroup": { "base": "

        ", "refs": { "CopyOptionGroupResult$OptionGroup": null, "CreateOptionGroupResult$OptionGroup": null, "ModifyOptionGroupResult$OptionGroup": null, "OptionGroupsList$member": null } }, "OptionGroupAlreadyExistsFault": { "base": "

        The option group you are trying to create already exists.

        ", "refs": { } }, "OptionGroupMembership": { "base": "

        Provides information on the option groups the DB instance is a member of.

        ", "refs": { "OptionGroupMembershipList$member": null } }, "OptionGroupMembershipList": { "base": null, "refs": { "DBInstance$OptionGroupMemberships": "

        Provides the list of option group memberships for this DB instance.

        " } }, "OptionGroupNotFoundFault": { "base": "

        The specified option group could not be found.

        ", "refs": { } }, "OptionGroupOption": { "base": "

        Available option.

        ", "refs": { "OptionGroupOptionsList$member": null } }, "OptionGroupOptionSetting": { "base": "

        Option group option settings are used to display settings available for each option with their default values and other information. These values are used with the DescribeOptionGroupOptions action.

        ", "refs": { "OptionGroupOptionSettingsList$member": null } }, "OptionGroupOptionSettingsList": { "base": null, "refs": { "OptionGroupOption$OptionGroupOptionSettings": "

        Specifies the option settings that are available (and the default value) for each option in an option group.

        " } }, "OptionGroupOptionsList": { "base": "

        List of available option group options.

        ", "refs": { "OptionGroupOptionsMessage$OptionGroupOptions": null } }, "OptionGroupOptionsMessage": { "base": "

        ", "refs": { } }, "OptionGroupQuotaExceededFault": { "base": "

        The quota of 20 option groups was exceeded for this AWS account.

        ", "refs": { } }, "OptionGroups": { "base": "

        List of option groups.

        ", "refs": { } }, "OptionGroupsList": { "base": null, "refs": { "OptionGroups$OptionGroupsList": "

        List of option groups.

        " } }, "OptionNamesList": { "base": null, "refs": { "ModifyOptionGroupMessage$OptionsToRemove": "

        Options in this list are removed from the option group.

        " } }, "OptionSetting": { "base": "

        Option settings are the actual settings being applied or configured for that option. It is used when you modify an option group or describe option groups. For example, the NATIVE_NETWORK_ENCRYPTION option has a setting called SQLNET.ENCRYPTION_SERVER that can have several different values.

        ", "refs": { "OptionSettingConfigurationList$member": null, "OptionSettingsList$member": null } }, "OptionSettingConfigurationList": { "base": null, "refs": { "Option$OptionSettings": "

        The option settings for this option.

        " } }, "OptionSettingsList": { "base": null, "refs": { "OptionConfiguration$OptionSettings": "

        The option settings to include in an option group.

        " } }, "OptionsDependedOn": { "base": null, "refs": { "OptionGroupOption$OptionsDependedOn": "

        List of all options that are prerequisites for this option.

        " } }, "OptionsList": { "base": null, "refs": { "OptionGroup$Options": "

        Indicates what options are available in the option group.

        " } }, "OrderableDBInstanceOption": { "base": "

        Contains a list of available options for a DB instance

        This data type is used as a response element in the DescribeOrderableDBInstanceOptions action.

        ", "refs": { "OrderableDBInstanceOptionsList$member": null } }, "OrderableDBInstanceOptionsList": { "base": null, "refs": { "OrderableDBInstanceOptionsMessage$OrderableDBInstanceOptions": "

        An OrderableDBInstanceOption structure containing information about orderable options for the DB instance.

        " } }, "OrderableDBInstanceOptionsMessage": { "base": "

        Contains the result of a successful invocation of the DescribeOrderableDBInstanceOptions action.

        ", "refs": { } }, "Parameter": { "base": "

        This data type is used as a request parameter in the ModifyDBParameterGroup and ResetDBParameterGroup actions.

        This data type is used as a response element in the DescribeEngineDefaultParameters and DescribeDBParameters actions.

        ", "refs": { "ParametersList$member": null } }, "ParametersList": { "base": null, "refs": { "DBParameterGroupDetails$Parameters": "

        A list of Parameter values.

        ", "EngineDefaults$Parameters": "

        Contains a list of engine default parameters.

        ", "ModifyDBParameterGroupMessage$Parameters": "

        An array of parameter names, values, and the apply method for the parameter update. At least one parameter name, value, and apply method must be supplied; subsequent arguments are optional. A maximum of 20 parameters may be modified in a single request.

        Valid Values (for the application method): immediate | pending-reboot

        You can use the immediate value with dynamic parameters only. You can use the pending-reboot value for both dynamic and static parameters, and changes are applied when you reboot the DB instance without failover. ", "ResetDBParameterGroupMessage$Parameters": "

        An array of parameter names, values, and the apply method for the parameter update. At least one parameter name, value, and apply method must be supplied; subsequent arguments are optional. A maximum of 20 parameters may be modified in a single request.

        MySQL

        Valid Values (for Apply method): immediate | pending-reboot

        You can use the immediate value with dynamic parameters only. You can use the pending-reboot value for both dynamic and static parameters, and changes are applied when DB instance reboots.

        Oracle

        Valid Values (for Apply method): pending-reboot

        " } }, "PendingModifiedValues": { "base": "

        This data type is used as a response element in the ModifyDBInstance action.

        ", "refs": { "DBInstance$PendingModifiedValues": "

        Specifies that changes to the DB instance are pending. This element is only included when changes are pending. Specific changes are identified by subelements.

        " } }, "PointInTimeRestoreNotEnabledFault": { "base": "

        SourceDBInstanceIdentifier refers to a DB instance with BackupRetentionPeriod equal to 0.

        ", "refs": { } }, "PromoteReadReplicaMessage": { "base": "

        ", "refs": { } }, "PromoteReadReplicaResult": { "base": null, "refs": { } }, "ProvisionedIopsNotAvailableInAZFault": { "base": "

        Provisioned IOPS not available in the specified Availability Zone.

        ", "refs": { } }, "PurchaseReservedDBInstancesOfferingMessage": { "base": "

        ", "refs": { } }, "PurchaseReservedDBInstancesOfferingResult": { "base": null, "refs": { } }, "ReadReplicaDBInstanceIdentifierList": { "base": null, "refs": { "DBInstance$ReadReplicaDBInstanceIdentifiers": "

        Contains one or more identifiers of the Read Replicas associated with this DB instance.

        " } }, "RebootDBInstanceMessage": { "base": "

        ", "refs": { } }, "RebootDBInstanceResult": { "base": null, "refs": { } }, "RecurringCharge": { "base": "

        This data type is used as a response element in the DescribeReservedDBInstances and DescribeReservedDBInstancesOfferings actions.

        ", "refs": { "RecurringChargeList$member": null } }, "RecurringChargeList": { "base": null, "refs": { "ReservedDBInstance$RecurringCharges": "

        The recurring price charged to run this reserved DB instance.

        ", "ReservedDBInstancesOffering$RecurringCharges": "

        The recurring price charged to run this reserved DB instance.

        " } }, "RemoveSourceIdentifierFromSubscriptionMessage": { "base": "

        ", "refs": { } }, "RemoveSourceIdentifierFromSubscriptionResult": { "base": null, "refs": { } }, "RemoveTagsFromResourceMessage": { "base": "

        ", "refs": { } }, "ReservedDBInstance": { "base": "

        This data type is used as a response element in the DescribeReservedDBInstances and PurchaseReservedDBInstancesOffering actions.

        ", "refs": { "PurchaseReservedDBInstancesOfferingResult$ReservedDBInstance": null, "ReservedDBInstanceList$member": null } }, "ReservedDBInstanceAlreadyExistsFault": { "base": "

        User already has a reservation with the given identifier.

        ", "refs": { } }, "ReservedDBInstanceList": { "base": null, "refs": { "ReservedDBInstanceMessage$ReservedDBInstances": "

        A list of reserved DB instances.

        " } }, "ReservedDBInstanceMessage": { "base": "

        Contains the result of a successful invocation of the DescribeReservedDBInstances action.

        ", "refs": { } }, "ReservedDBInstanceNotFoundFault": { "base": "

        The specified reserved DB Instance not found.

        ", "refs": { } }, "ReservedDBInstanceQuotaExceededFault": { "base": "

        Request would exceed the user's DB Instance quota.

        ", "refs": { } }, "ReservedDBInstancesOffering": { "base": "

        This data type is used as a response element in the DescribeReservedDBInstancesOfferings action.

        ", "refs": { "ReservedDBInstancesOfferingList$member": null } }, "ReservedDBInstancesOfferingList": { "base": null, "refs": { "ReservedDBInstancesOfferingMessage$ReservedDBInstancesOfferings": "

        A list of reserved DB instance offerings.

        " } }, "ReservedDBInstancesOfferingMessage": { "base": "

        Contains the result of a successful invocation of the DescribeReservedDBInstancesOfferings action.

        ", "refs": { } }, "ReservedDBInstancesOfferingNotFoundFault": { "base": "

        Specified offering does not exist.

        ", "refs": { } }, "ResetDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "RestoreDBInstanceFromDBSnapshotMessage": { "base": "

        ", "refs": { } }, "RestoreDBInstanceFromDBSnapshotResult": { "base": null, "refs": { } }, "RestoreDBInstanceToPointInTimeMessage": { "base": "

        ", "refs": { } }, "RestoreDBInstanceToPointInTimeResult": { "base": null, "refs": { } }, "RevokeDBSecurityGroupIngressMessage": { "base": "

        ", "refs": { } }, "RevokeDBSecurityGroupIngressResult": { "base": null, "refs": { } }, "SNSInvalidTopicFault": { "base": "

        SNS has responded that there is a problem with the SND topic specified.

        ", "refs": { } }, "SNSNoAuthorizationFault": { "base": "

        You do not have permission to publish to the SNS topic ARN.

        ", "refs": { } }, "SNSTopicArnNotFoundFault": { "base": "

        The SNS topic ARN does not exist.

        ", "refs": { } }, "SnapshotQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB snapshots.

        ", "refs": { } }, "SourceIdsList": { "base": null, "refs": { "CreateEventSubscriptionMessage$SourceIds": "

        The list of identifiers of the event sources for which events will be returned. If not specified, then all sources are included in the response. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it cannot end with a hyphen or contain two consecutive hyphens.

        Constraints:

        • If SourceIds are supplied, SourceType must also be provided.
        • If the source type is a DB instance, then a DBInstanceIdentifier must be supplied.
        • If the source type is a DB security group, a DBSecurityGroupName must be supplied.
        • If the source type is a DB parameter group, a DBParameterGroupName must be supplied.
        • If the source type is a DB snapshot, a DBSnapshotIdentifier must be supplied.
        ", "EventSubscription$SourceIdsList": "

        A list of source IDs for the RDS event notification subscription.

        " } }, "SourceNotFoundFault": { "base": "

        The requested source could not be found.

        ", "refs": { } }, "SourceType": { "base": null, "refs": { "DescribeEventsMessage$SourceType": "

        The event source to retrieve events for. If no value is specified, all events are returned.

        ", "Event$SourceType": "

        Specifies the source type for this event.

        " } }, "StorageQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed amount of storage available across all DB instances.

        ", "refs": { } }, "StorageTypeNotSupportedFault": { "base": "

        StorageType specified cannot be associated with the DB Instance.

        ", "refs": { } }, "String": { "base": null, "refs": { "AddSourceIdentifierToSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to add a source identifier to.

        ", "AddSourceIdentifierToSubscriptionMessage$SourceIdentifier": "

        The identifier of the event source to be added. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it cannot end with a hyphen or contain two consecutive hyphens.

        Constraints:

        • If the source type is a DB instance, then a DBInstanceIdentifier must be supplied.
        • If the source type is a DB security group, a DBSecurityGroupName must be supplied.
        • If the source type is a DB parameter group, a DBParameterGroupName must be supplied.
        • If the source type is a DB snapshot, a DBSnapshotIdentifier must be supplied.
        ", "AddTagsToResourceMessage$ResourceName": "

        The Amazon RDS resource the tags will be added to. This value is an Amazon Resource Name (ARN). For information about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN).

        ", "AuthorizeDBSecurityGroupIngressMessage$DBSecurityGroupName": "

        The name of the DB security group to add authorization to.

        ", "AuthorizeDBSecurityGroupIngressMessage$CIDRIP": "

        The IP range to authorize.

        ", "AuthorizeDBSecurityGroupIngressMessage$EC2SecurityGroupName": "

        Name of the EC2 security group to authorize. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "AuthorizeDBSecurityGroupIngressMessage$EC2SecurityGroupId": "

        Id of the EC2 security group to authorize. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "AuthorizeDBSecurityGroupIngressMessage$EC2SecurityGroupOwnerId": "

        AWS Account Number of the owner of the EC2 security group specified in the EC2SecurityGroupName parameter. The AWS Access Key ID is not an acceptable value. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "AvailabilityZone$Name": "

        The name of the availability zone.

        ", "CharacterSet$CharacterSetName": "

        The name of the character set.

        ", "CharacterSet$CharacterSetDescription": "

        The description of the character set.

        ", "CopyDBParameterGroupMessage$SourceDBParameterGroupIdentifier": "

        The identifier or ARN for the source DB parameter group.

        Constraints:

        • Must specify a valid DB parameter group.
        • If the source DB parameter group is in the same region as the copy, specify a valid DB parameter group identifier, for example my-db-param-group, or a valid ARN.
        • If the source DB parameter group is in a different region than the copy, specify a valid DB parameter group ARN, for example arn:aws:rds:us-west-2:123456789012:pg:special-parameters.
        ", "CopyDBParameterGroupMessage$TargetDBParameterGroupIdentifier": "

        The identifier for the copied DB parameter group.

        Constraints:

        • Cannot be null, empty, or blank
        • Must contain from 1 to 255 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-db-parameter-group

        ", "CopyDBParameterGroupMessage$TargetDBParameterGroupDescription": "

        A description for the copied DB parameter group.

        ", "CopyDBSnapshotMessage$SourceDBSnapshotIdentifier": "

        The identifier for the source DB snapshot.

        Constraints:

        • Must specify a valid system snapshot in the \"available\" state.
        • If the source snapshot is in the same region as the copy, specify a valid DB snapshot identifier.
        • If the source snapshot is in a different region than the copy, specify a valid DB snapshot ARN. For more information, go to Copying a DB Snapshot.

        Example: rds:mydb-2012-04-02-00-01

        Example: arn:aws:rds:rr-regn-1:123456789012:snapshot:mysql-instance1-snapshot-20130805

        ", "CopyDBSnapshotMessage$TargetDBSnapshotIdentifier": "

        The identifier for the copied snapshot.

        Constraints:

        • Cannot be null, empty, or blank
        • Must contain from 1 to 255 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-db-snapshot

        ", "CopyOptionGroupMessage$SourceOptionGroupIdentifier": "

        The identifier or ARN for the source option group.

        Constraints:

        • Must specify a valid option group.
        • If the source option group is in the same region as the copy, specify a valid option group identifier, for example my-option-group, or a valid ARN.
        • If the source option group is in a different region than the copy, specify a valid option group ARN, for example arn:aws:rds:us-west-2:123456789012:og:special-options.
        ", "CopyOptionGroupMessage$TargetOptionGroupIdentifier": "

        The identifier for the copied option group.

        Constraints:

        • Cannot be null, empty, or blank
        • Must contain from 1 to 255 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-option-group

        ", "CopyOptionGroupMessage$TargetOptionGroupDescription": "

        The description for the copied option group.

        ", "CreateDBInstanceMessage$DBName": "

        The meaning of this parameter differs according to the database engine you use.

        Type: String

        MySQL

        The name of the database to create when the DB instance is created. If this parameter is not specified, no database is created in the DB instance.

        Constraints:

        • Must contain 1 to 64 alphanumeric characters
        • Cannot be a word reserved by the specified database engine

        PostgreSQL

        The name of the database to create when the DB instance is created. If this parameter is not specified, no database is created in the DB instance.

        Constraints:

        • Must contain 1 to 63 alphanumeric characters
        • Must begin with a letter or an underscore. Subsequent characters can be letters, underscores, or digits (0-9).
        • Cannot be a word reserved by the specified database engine

        Oracle

        The Oracle System ID (SID) of the created DB instance.

        Default: ORCL

        Constraints:

        • Cannot be longer than 8 characters

        SQL Server

        Not applicable. Must be null.

        ", "CreateDBInstanceMessage$DBInstanceIdentifier": "

        The DB instance identifier. This parameter is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens (1 to 15 for SQL Server).
        • First character must be a letter.
        • Cannot end with a hyphen or contain two consecutive hyphens.

        Example: mydbinstance

        ", "CreateDBInstanceMessage$DBInstanceClass": "

        The compute and memory capacity of the DB instance.

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.xlarge |db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge | db.m3.2xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge | db.r3.8xlarge | db.t2.micro | db.t2.small | db.t2.medium

        ", "CreateDBInstanceMessage$Engine": "

        The name of the database engine to be used for this instance.

        Valid Values: MySQL | oracle-se1 | oracle-se | oracle-ee | sqlserver-ee | sqlserver-se | sqlserver-ex | sqlserver-web | postgres

        Not every database engine is available for every AWS region.

        ", "CreateDBInstanceMessage$MasterUsername": "

        The name of master user for the client DB instance.

        MySQL

        Constraints:

        • Must be 1 to 16 alphanumeric characters.
        • First character must be a letter.
        • Cannot be a reserved word for the chosen database engine.

        Type: String

        Oracle

        Constraints:

        • Must be 1 to 30 alphanumeric characters.
        • First character must be a letter.
        • Cannot be a reserved word for the chosen database engine.

        SQL Server

        Constraints:

        • Must be 1 to 128 alphanumeric characters.
        • First character must be a letter.
        • Cannot be a reserved word for the chosen database engine.
        ", "CreateDBInstanceMessage$MasterUserPassword": "

        The password for the master database user. Can be any printable ASCII character except \"/\", \"\"\", or \"@\".

        Type: String

        MySQL

        Constraints: Must contain from 8 to 41 characters.

        Oracle

        Constraints: Must contain from 8 to 30 characters.

        SQL Server

        Constraints: Must contain from 8 to 128 characters.

        ", "CreateDBInstanceMessage$AvailabilityZone": "

        The EC2 Availability Zone that the database instance will be created in. For information on regions and Availability Zones, see Regions and Availability Zones.

        Default: A random, system-chosen Availability Zone in the endpoint's region.

        Example: us-east-1d

        Constraint: The AvailabilityZone parameter cannot be specified if the MultiAZ parameter is set to true. The specified Availability Zone must be in the same region as the current endpoint.

        ", "CreateDBInstanceMessage$DBSubnetGroupName": "

        A DB subnet group to associate with this DB instance.

        If there is no DB subnet group, then it is a non-VPC DB instance.

        ", "CreateDBInstanceMessage$PreferredMaintenanceWindow": "

        The weekly time range (in UTC) during which system maintenance can occur. For more information, see DB Instance Maintenance.

        Format: ddd:hh24:mi-ddd:hh24:mi

        Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week. To see the time blocks available, see Adjusting the Preferred Maintenance Window in the Amazon RDS User Guide.

        Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun

        Constraints: Minimum 30-minute window.

        ", "CreateDBInstanceMessage$DBParameterGroupName": "

        The name of the DB parameter group to associate with this DB instance. If this argument is omitted, the default DBParameterGroup for the specified engine will be used.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "CreateDBInstanceMessage$PreferredBackupWindow": "

        The daily time range during which automated backups are created if automated backups are enabled, using the BackupRetentionPeriod parameter. For more information, see DB Instance Backups.

        Default: A 30-minute window selected at random from an 8-hour block of time per region. See the Amazon RDS User Guide for the time blocks for each region from which the default backup windows are assigned.

        Constraints: Must be in the format hh24:mi-hh24:mi. Times should be Universal Time Coordinated (UTC). Must not conflict with the preferred maintenance window. Must be at least 30 minutes.

        ", "CreateDBInstanceMessage$EngineVersion": "

        The version number of the database engine to use.

        The following are the database engines and major and minor versions that are available with Amazon RDS. Not every database engine is available for every AWS region.

        MySQL

        • Version 5.1: 5.1.45 | 5.1.49 | 5.1.50 | 5.1.57 | 5.1.61 | 5.1.62 | 5.1.63 | 5.1.69 | 5.1.71 | 5.1.73
        • Version 5.5: 5.5.12 | 5.5.20 | 5.5.23 | 5.5.25a | 5.5.27 | 5.5.31 | 5.5.33 | 5.5.37 | 5.5.38 | 5.5.8
        • Version 5.6: 5.6.12 | 5.6.13 | 5.6.17 | 5.6.19 | 5.6.21

        Oracle Database Enterprise Edition (oracle-ee)

        • Version 11.2: 11.2.0.2.v3 | 11.2.0.2.v4 | 11.2.0.2.v5 | 11.2.0.2.v6 | 11.2.0.2.v7 | 11.2.0.3.v1 | 11.2.0.4.v1

        Oracle Database Standard Edition (oracle-se)

        • Version 11.2: 11.2.0.2.v3 | 11.2.0.2.v4 | 11.2.0.2.v5 | 11.2.0.2.v6 | 11.2.0.2.v7 | 11.2.0.3.v1 | 11.2.0.4.v1

        Oracle Database Standard Edition One (oracle-se1)

        • Version 11.2: 11.2.0.2.v3 | 11.2.0.2.v4 | 11.2.0.2.v5 | 11.2.0.2.v6 | 11.2.0.2.v7 | 11.2.0.3.v1 | 11.2.0.4.v1

        PostgreSQL

        • Version 9.3: 9.3.1 | 9.3.2 | 9.3.3

        Microsoft SQL Server Enterprise Edition (sqlserver-ee)

        • Version 10.5: 10.50.2789.0.v1
        • Version 11.0: 11.00.2100.60.v1

        Microsoft SQL Server Express Edition (sqlserver-ex)

        • Version 10.5: 10.50.2789.0.v1
        • Version 11.0: 11.00.2100.60.v1

        Microsoft SQL Server Standard Edition (sqlserver-se)

        • Version 10.5: 10.50.2789.0.v1
        • Version 11.0: 11.00.2100.60.v1

        Microsoft SQL Server Web Edition (sqlserver-web)

        • Version 10.5: 10.50.2789.0.v1
        • Version 11.0: 11.00.2100.60.v1
        ", "CreateDBInstanceMessage$LicenseModel": "

        License model information for this DB instance.

        Valid values: license-included | bring-your-own-license | general-public-license

        ", "CreateDBInstanceMessage$OptionGroupName": "

        Indicates that the DB instance should be associated with the specified option group.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "CreateDBInstanceMessage$CharacterSetName": "

        For supported engines, indicates that the DB instance should be associated with the specified CharacterSet.

        ", "CreateDBInstanceMessage$StorageType": "

        Specifies storage type to be associated with the DB Instance.

        Valid values: standard | gp2 | io1

        If you specify io1, you must also include a value for the Iops parameter.

        Default: io1 if the Iops parameter is specified; otherwise standard

        ", "CreateDBInstanceMessage$TdeCredentialArn": "

        The ARN from the Key Store with which to associate the instance for TDE encryption.

        ", "CreateDBInstanceMessage$TdeCredentialPassword": "

        The password for the given ARN from the Key Store in order to access the device.

        ", "CreateDBInstanceReadReplicaMessage$DBInstanceIdentifier": "

        The DB instance identifier of the Read Replica. This is the unique key that identifies a DB instance. This parameter is stored as a lowercase string.

        ", "CreateDBInstanceReadReplicaMessage$SourceDBInstanceIdentifier": "

        The identifier of the DB instance that will act as the source for the Read Replica. Each DB instance can have up to five Read Replicas.

        Constraints:

        • Must be the identifier of an existing DB instance.
        • Can specify a DB instance that is a MySQL Read Replica only if the source is running MySQL 5.6.
        • Can specify a DB instance that is a PostgreSQL Read Replica only if the source is running PostgreSQL 9.3.5.
        • The specified DB instance must have automatic backups enabled, its backup retention period must be greater than 0.
        • If the source DB instance is in the same region as the Read Replica, specify a valid DB instance identifier.
        • If the source DB instance is in a different region than the Read Replica, specify a valid DB instance ARN. For more information, go to Constructing a Amazon RDS Amazon Resource Name (ARN).
        ", "CreateDBInstanceReadReplicaMessage$DBInstanceClass": "

        The compute and memory capacity of the Read Replica.

        Valid Values: db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.xlarge |db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge | db.m3.2xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge | db.r3.8xlarge | db.t2.micro | db.t2.small | db.t2.medium

        Default: Inherits from the source DB instance.

        ", "CreateDBInstanceReadReplicaMessage$AvailabilityZone": "

        The Amazon EC2 Availability Zone that the Read Replica will be created in.

        Default: A random, system-chosen Availability Zone in the endpoint's region.

        Example: us-east-1d

        ", "CreateDBInstanceReadReplicaMessage$OptionGroupName": "

        The option group the DB instance will be associated with. If omitted, the default option group for the engine specified will be used.

        ", "CreateDBInstanceReadReplicaMessage$DBSubnetGroupName": "

        Specifies a DB subnet group for the DB instance. The new DB instance will be created in the VPC associated with the DB subnet group. If no DB subnet group is specified, then the new DB instance is not created in a VPC.

        Constraints:

        • Can only be specified if the source DB instance identifier specifies a DB instance in another region.
        • The specified DB subnet group must be in the same region in which the operation is running.
        • All Read Replicas in one region that are created from the same source DB instance must either:
          • Specify DB subnet groups from the same VPC. All these Read Replicas will be created in the same VPC.
          • Not specify a DB subnet group. All these Read Replicas will be created outside of any VPC.
        ", "CreateDBInstanceReadReplicaMessage$StorageType": "

        Specifies storage type to be associated with the DB Instance Read Replica.

        Valid values: standard | gp2 | io1

        If you specify io1, you must also include a value for the Iops parameter.

        Default: io1 if the Iops parameter is specified; otherwise standard

        ", "CreateDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB parameter group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        This value is stored as a lower-case string.", "CreateDBParameterGroupMessage$DBParameterGroupFamily": "

        The DB parameter group family name. A DB parameter group can be associated with one and only one DB parameter group family, and can be applied only to a DB instance running a database engine and engine version compatible with that DB parameter group family.

        ", "CreateDBParameterGroupMessage$Description": "

        The description for the DB parameter group.

        ", "CreateDBSecurityGroupMessage$DBSecurityGroupName": "

        The name for the DB security group. This value is stored as a lowercase string.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        • Must not be \"Default\"
        • May not contain spaces

        Example: mysecuritygroup

        ", "CreateDBSecurityGroupMessage$DBSecurityGroupDescription": "

        The description for the DB security group.

        ", "CreateDBSnapshotMessage$DBSnapshotIdentifier": "

        The identifier for the DB snapshot.

        Constraints:

        • Cannot be null, empty, or blank
        • Must contain from 1 to 255 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-snapshot-id

        ", "CreateDBSnapshotMessage$DBInstanceIdentifier": "

        The DB instance identifier. This is the unique key that identifies a DB instance.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "CreateDBSubnetGroupMessage$DBSubnetGroupName": "

        The name for the DB subnet group. This value is stored as a lowercase string.

        Constraints: Must contain no more than 255 alphanumeric characters or hyphens. Must not be \"Default\".

        Example: mySubnetgroup

        ", "CreateDBSubnetGroupMessage$DBSubnetGroupDescription": "

        The description for the DB subnet group.

        ", "CreateEventSubscriptionMessage$SubscriptionName": "

        The name of the subscription.

        Constraints: The name must be less than 255 characters.

        ", "CreateEventSubscriptionMessage$SnsTopicArn": "

        The Amazon Resource Name (ARN) of the SNS topic created for event notification. The ARN is created by Amazon SNS when you create a topic and subscribe to it.

        ", "CreateEventSubscriptionMessage$SourceType": "

        The type of source that will be generating the events. For example, if you want to be notified of events generated by a DB instance, you would set this parameter to db-instance. if this value is not specified, all events are returned.

        Valid values: db-instance | db-parameter-group | db-security-group | db-snapshot

        ", "CreateOptionGroupMessage$OptionGroupName": "

        Specifies the name of the option group to be created.

        Constraints:

        • Must be 1 to 255 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: myoptiongroup

        ", "CreateOptionGroupMessage$EngineName": "

        Specifies the name of the engine that this option group should be associated with.

        ", "CreateOptionGroupMessage$MajorEngineVersion": "

        Specifies the major version of the engine that this option group should be associated with.

        ", "CreateOptionGroupMessage$OptionGroupDescription": "

        The description of the option group.

        ", "DBEngineVersion$Engine": "

        The name of the database engine.

        ", "DBEngineVersion$EngineVersion": "

        The version number of the database engine.

        ", "DBEngineVersion$DBParameterGroupFamily": "

        The name of the DB parameter group family for the database engine.

        ", "DBEngineVersion$DBEngineDescription": "

        The description of the database engine.

        ", "DBEngineVersion$DBEngineVersionDescription": "

        The description of the database engine version.

        ", "DBEngineVersionMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBInstance$DBInstanceIdentifier": "

        Contains a user-supplied database identifier. This is the unique key that identifies a DB instance.

        ", "DBInstance$DBInstanceClass": "

        Contains the name of the compute and memory capacity class of the DB instance.

        ", "DBInstance$Engine": "

        Provides the name of the database engine to be used for this DB instance.

        ", "DBInstance$DBInstanceStatus": "

        Specifies the current state of this database.

        ", "DBInstance$MasterUsername": "

        Contains the master username for the DB instance.

        ", "DBInstance$DBName": "

        The meaning of this parameter differs according to the database engine you use. For example, this value returns either MySQL or PostgreSQL information when returning values from CreateDBInstanceReadReplica since Read Replicas are only supported for MySQL and PostgreSQL.

        MySQL, SQL Server, PostgreSQL

        Contains the name of the initial database of this instance that was provided at create time, if one was specified when the DB instance was created. This same name is returned for the life of the DB instance.

        Type: String

        Oracle

        Contains the Oracle System ID (SID) of the created DB instance. Not shown when the returned parameters do not apply to an Oracle DB instance.

        ", "DBInstance$PreferredBackupWindow": "

        Specifies the daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod.

        ", "DBInstance$AvailabilityZone": "

        Specifies the name of the Availability Zone the DB instance is located in.

        ", "DBInstance$PreferredMaintenanceWindow": "

        Specifies the weekly time range (in UTC) during which system maintenance can occur.

        ", "DBInstance$EngineVersion": "

        Indicates the database engine version.

        ", "DBInstance$ReadReplicaSourceDBInstanceIdentifier": "

        Contains the identifier of the source DB instance if this DB instance is a Read Replica.

        ", "DBInstance$LicenseModel": "

        License model information for this DB instance.

        ", "DBInstance$CharacterSetName": "

        If present, specifies the name of the character set that this instance is associated with.

        ", "DBInstance$SecondaryAvailabilityZone": "

        If present, specifies the name of the secondary Availability Zone for a DB instance with multi-AZ support.

        ", "DBInstance$StorageType": "

        Specifies storage type associated with DB Instance.

        ", "DBInstance$TdeCredentialArn": "

        The ARN from the Key Store with which the instance is associated for TDE encryption.

        ", "DBInstanceMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DBInstanceStatusInfo$StatusType": "

        This value is currently \"read replication.\"

        ", "DBInstanceStatusInfo$Status": "

        Status of the DB instance. For a StatusType of read replica, the values can be replicating, error, stopped, or terminated.

        ", "DBInstanceStatusInfo$Message": "

        Details of the error if there is an error for the instance. If the instance is not in an error state, this value is blank.

        ", "DBParameterGroup$DBParameterGroupName": "

        Provides the name of the DB parameter group.

        ", "DBParameterGroup$DBParameterGroupFamily": "

        Provides the name of the DB parameter group family that this DB parameter group is compatible with.

        ", "DBParameterGroup$Description": "

        Provides the customer-specified description for this DB parameter group.

        ", "DBParameterGroupDetails$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBParameterGroupNameMessage$DBParameterGroupName": "

        The name of the DB parameter group.

        ", "DBParameterGroupStatus$DBParameterGroupName": "

        The name of the DP parameter group.

        ", "DBParameterGroupStatus$ParameterApplyStatus": "

        The status of parameter updates.

        ", "DBParameterGroupsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBSecurityGroup$OwnerId": "

        Provides the AWS ID of the owner of a specific DB security group.

        ", "DBSecurityGroup$DBSecurityGroupName": "

        Specifies the name of the DB security group.

        ", "DBSecurityGroup$DBSecurityGroupDescription": "

        Provides the description of the DB security group.

        ", "DBSecurityGroup$VpcId": "

        Provides the VpcId of the DB security group.

        ", "DBSecurityGroupMembership$DBSecurityGroupName": "

        The name of the DB security group.

        ", "DBSecurityGroupMembership$Status": "

        The status of the DB security group.

        ", "DBSecurityGroupMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBSecurityGroupNameList$member": null, "DBSnapshot$DBSnapshotIdentifier": "

        Specifies the identifier for the DB snapshot.

        ", "DBSnapshot$DBInstanceIdentifier": "

        Specifies the DB instance identifier of the DB instance this DB snapshot was created from.

        ", "DBSnapshot$Engine": "

        Specifies the name of the database engine.

        ", "DBSnapshot$Status": "

        Specifies the status of this DB snapshot.

        ", "DBSnapshot$AvailabilityZone": "

        Specifies the name of the Availability Zone the DB instance was located in at the time of the DB snapshot.

        ", "DBSnapshot$VpcId": "

        Provides the Vpc Id associated with the DB snapshot.

        ", "DBSnapshot$MasterUsername": "

        Provides the master username for the DB snapshot.

        ", "DBSnapshot$EngineVersion": "

        Specifies the version of the database engine.

        ", "DBSnapshot$LicenseModel": "

        License model information for the restored DB instance.

        ", "DBSnapshot$SnapshotType": "

        Provides the type of the DB snapshot.

        ", "DBSnapshot$OptionGroupName": "

        Provides the option group name for the DB snapshot.

        ", "DBSnapshot$SourceRegion": "

        The region that the DB snapshot was created in or copied from.

        ", "DBSnapshot$StorageType": "

        Specifies storage type associated with DB Snapshot.

        ", "DBSnapshot$TdeCredentialArn": "

        The ARN from the Key Store with which to associate the instance for TDE encryption.

        ", "DBSnapshotMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBSubnetGroup$DBSubnetGroupName": "

        Specifies the name of the DB subnet group.

        ", "DBSubnetGroup$DBSubnetGroupDescription": "

        Provides the description of the DB subnet group.

        ", "DBSubnetGroup$VpcId": "

        Provides the VpcId of the DB subnet group.

        ", "DBSubnetGroup$SubnetGroupStatus": "

        Provides the status of the DB subnet group.

        ", "DBSubnetGroupMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DeleteDBInstanceMessage$DBInstanceIdentifier": "

        The DB instance identifier for the DB instance to be deleted. This parameter isn't case sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DeleteDBInstanceMessage$FinalDBSnapshotIdentifier": "

        The DBSnapshotIdentifier of the new DBSnapshot created when SkipFinalSnapshot is set to false.

        Specifying this parameter and also setting the SkipFinalShapshot parameter to true results in an error.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        • Cannot be specified when deleting a Read Replica.
        ", "DeleteDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB parameter group.

        Constraints:

        • Must be the name of an existing DB parameter group
        • You cannot delete a default DB parameter group
        • Cannot be associated with any DB instances
        ", "DeleteDBSecurityGroupMessage$DBSecurityGroupName": "

        The name of the DB security group to delete.

        You cannot delete the default DB security group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        • Must not be \"Default\"
        • May not contain spaces
        ", "DeleteDBSnapshotMessage$DBSnapshotIdentifier": "

        The DBSnapshot identifier.

        Constraints: Must be the name of an existing DB snapshot in the available state.

        ", "DeleteDBSubnetGroupMessage$DBSubnetGroupName": "

        The name of the database subnet group to delete.

        You cannot delete the default subnet group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DeleteEventSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to delete.

        ", "DeleteOptionGroupMessage$OptionGroupName": "

        The name of the option group to be deleted.

        You cannot delete default option groups.", "DescribeDBEngineVersionsMessage$Engine": "

        The database engine to return.

        ", "DescribeDBEngineVersionsMessage$EngineVersion": "

        The database engine version to return.

        Example: 5.1.49

        ", "DescribeDBEngineVersionsMessage$DBParameterGroupFamily": "

        The name of a specific DB parameter group family to return details for.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBEngineVersionsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBInstancesMessage$DBInstanceIdentifier": "

        The user-supplied instance identifier. If this parameter is specified, information from only the specific DB instance is returned. This parameter isn't case sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBInstancesMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBInstances request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DescribeDBLogFilesDetails$LogFileName": "

        The name of the log file for the specified DB instance.

        ", "DescribeDBLogFilesMessage$DBInstanceIdentifier": "

        The customer-assigned name of the DB instance that contains the log files you want to list.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBLogFilesMessage$FilenameContains": "

        Filters the available log files for log file names that contain the specified string.

        ", "DescribeDBLogFilesMessage$Marker": "

        The pagination token provided in the previous request. If this parameter is specified the response includes only records beyond the marker, up to MaxRecords.

        ", "DescribeDBLogFilesResponse$Marker": "

        A pagination token that can be used in a subsequent DescribeDBLogFiles request.

        ", "DescribeDBParameterGroupsMessage$DBParameterGroupName": "

        The name of a specific DB parameter group to return details for.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBParameterGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBParameterGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBParametersMessage$DBParameterGroupName": "

        The name of a specific DB parameter group to return details for.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBParametersMessage$Source": "

        The parameter types to return.

        Default: All parameter types returned

        Valid Values: user | system | engine-default

        ", "DescribeDBParametersMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBParameters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBSecurityGroupsMessage$DBSecurityGroupName": "

        The name of the DB security group to return details for.

        ", "DescribeDBSecurityGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBSecurityGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBSnapshotsMessage$DBInstanceIdentifier": "

        A DB instance identifier to retrieve the list of DB snapshots for. Cannot be used in conjunction with DBSnapshotIdentifier. This parameter is not case sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DescribeDBSnapshotsMessage$DBSnapshotIdentifier": "

        A specific DB snapshot identifier to describe. Cannot be used in conjunction with DBInstanceIdentifier. This value is stored as a lowercase string.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        • If this is the identifier of an automated snapshot, the SnapshotType parameter must also be specified.
        ", "DescribeDBSnapshotsMessage$SnapshotType": "

        The type of snapshots that will be returned. Values can be \"automated\" or \"manual.\" If not specified, the returned results will include all snapshots types.

        ", "DescribeDBSnapshotsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBSnapshots request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBSubnetGroupsMessage$DBSubnetGroupName": "

        The name of the DB subnet group to return details for.

        ", "DescribeDBSubnetGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBSubnetGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeEngineDefaultParametersMessage$DBParameterGroupFamily": "

        The name of the DB parameter group family.

        ", "DescribeEngineDefaultParametersMessage$Marker": "

        An optional pagination token provided by a previous DescribeEngineDefaultParameters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeEventCategoriesMessage$SourceType": "

        The type of source that will be generating the events.

        Valid values: db-instance | db-parameter-group | db-security-group | db-snapshot

        ", "DescribeEventSubscriptionsMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to describe.

        ", "DescribeEventSubscriptionsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DescribeEventsMessage$SourceIdentifier": "

        The identifier of the event source for which events will be returned. If not specified, then all sources are included in the response.

        Constraints:

        • If SourceIdentifier is supplied, SourceType must also be provided.
        • If the source type is DBInstance, then a DBInstanceIdentifier must be supplied.
        • If the source type is DBSecurityGroup, a DBSecurityGroupName must be supplied.
        • If the source type is DBParameterGroup, a DBParameterGroupName must be supplied.
        • If the source type is DBSnapshot, a DBSnapshotIdentifier must be supplied.
        • Cannot end with a hyphen or contain two consecutive hyphens.
        ", "DescribeEventsMessage$Marker": "

        An optional pagination token provided by a previous DescribeEvents request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeOptionGroupOptionsMessage$EngineName": "

        A required parameter. Options available for the given Engine name will be described.

        ", "DescribeOptionGroupOptionsMessage$MajorEngineVersion": "

        If specified, filters the results to include only options for the specified major engine version.

        ", "DescribeOptionGroupOptionsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeOptionGroupsMessage$OptionGroupName": "

        The name of the option group to describe. Cannot be supplied together with EngineName or MajorEngineVersion.

        ", "DescribeOptionGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOptionGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeOptionGroupsMessage$EngineName": "

        Filters the list of option groups to only include groups associated with a specific database engine.

        ", "DescribeOptionGroupsMessage$MajorEngineVersion": "

        Filters the list of option groups to only include groups associated with a specific database engine version. If specified, then EngineName must also be specified.

        ", "DescribeOrderableDBInstanceOptionsMessage$Engine": "

        The name of the engine to retrieve DB instance options for.

        ", "DescribeOrderableDBInstanceOptionsMessage$EngineVersion": "

        The engine version filter value. Specify this parameter to show only the available offerings matching the specified engine version.

        ", "DescribeOrderableDBInstanceOptionsMessage$DBInstanceClass": "

        The DB instance class filter value. Specify this parameter to show only the available offerings matching the specified DB instance class.

        ", "DescribeOrderableDBInstanceOptionsMessage$LicenseModel": "

        The license model filter value. Specify this parameter to show only the available offerings matching the specified license model.

        ", "DescribeOrderableDBInstanceOptionsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DescribeReservedDBInstancesMessage$ReservedDBInstanceId": "

        The reserved DB instance identifier filter value. Specify this parameter to show only the reservation that matches the specified reservation ID.

        ", "DescribeReservedDBInstancesMessage$ReservedDBInstancesOfferingId": "

        The offering identifier filter value. Specify this parameter to show only purchased reservations matching the specified offering identifier.

        ", "DescribeReservedDBInstancesMessage$DBInstanceClass": "

        The DB instance class filter value. Specify this parameter to show only those reservations matching the specified DB instances class.

        ", "DescribeReservedDBInstancesMessage$Duration": "

        The duration filter value, specified in years or seconds. Specify this parameter to show only reservations for this duration.

        Valid Values: 1 | 3 | 31536000 | 94608000

        ", "DescribeReservedDBInstancesMessage$ProductDescription": "

        The product description filter value. Specify this parameter to show only those reservations matching the specified product description.

        ", "DescribeReservedDBInstancesMessage$OfferingType": "

        The offering type filter value. Specify this parameter to show only the available offerings matching the specified offering type.

        Valid Values: \"Light Utilization\" | \"Medium Utilization\" | \"Heavy Utilization\"

        ", "DescribeReservedDBInstancesMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeReservedDBInstancesOfferingsMessage$ReservedDBInstancesOfferingId": "

        The offering identifier filter value. Specify this parameter to show only the available offering that matches the specified reservation identifier.

        Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706

        ", "DescribeReservedDBInstancesOfferingsMessage$DBInstanceClass": "

        The DB instance class filter value. Specify this parameter to show only the available offerings matching the specified DB instance class.

        ", "DescribeReservedDBInstancesOfferingsMessage$Duration": "

        Duration filter value, specified in years or seconds. Specify this parameter to show only reservations for this duration.

        Valid Values: 1 | 3 | 31536000 | 94608000

        ", "DescribeReservedDBInstancesOfferingsMessage$ProductDescription": "

        Product description filter value. Specify this parameter to show only the available offerings matching the specified product description.

        ", "DescribeReservedDBInstancesOfferingsMessage$OfferingType": "

        The offering type filter value. Specify this parameter to show only the available offerings matching the specified offering type.

        Valid Values: \"Light Utilization\" | \"Medium Utilization\" | \"Heavy Utilization\"

        ", "DescribeReservedDBInstancesOfferingsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DownloadDBLogFilePortionDetails$LogFileData": "

        Entries from the specified log file.

        ", "DownloadDBLogFilePortionDetails$Marker": "

        A pagination token that can be used in a subsequent DownloadDBLogFilePortion request.

        ", "DownloadDBLogFilePortionMessage$DBInstanceIdentifier": "

        The customer-assigned name of the DB instance that contains the log files you want to list.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "DownloadDBLogFilePortionMessage$LogFileName": "

        The name of the log file to be downloaded.

        ", "DownloadDBLogFilePortionMessage$Marker": "

        The pagination token provided in the previous request or \"0\". If the Marker parameter is specified the response includes only records beyond the marker until the end of the file or up to NumberOfLines.

        ", "EC2SecurityGroup$Status": "

        Provides the status of the EC2 security group. Status can be \"authorizing\", \"authorized\", \"revoking\", and \"revoked\".

        ", "EC2SecurityGroup$EC2SecurityGroupName": "

        Specifies the name of the EC2 security group.

        ", "EC2SecurityGroup$EC2SecurityGroupId": "

        Specifies the id of the EC2 security group.

        ", "EC2SecurityGroup$EC2SecurityGroupOwnerId": "

        Specifies the AWS ID of the owner of the EC2 security group specified in the EC2SecurityGroupName field.

        ", "Endpoint$Address": "

        Specifies the DNS address of the DB instance.

        ", "EngineDefaults$DBParameterGroupFamily": "

        Specifies the name of the DB parameter group family which the engine default parameters apply to.

        ", "EngineDefaults$Marker": "

        An optional pagination token provided by a previous EngineDefaults request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "Event$SourceIdentifier": "

        Provides the identifier for the source of the event.

        ", "Event$Message": "

        Provides the text of this event.

        ", "EventCategoriesList$member": null, "EventCategoriesMap$SourceType": "

        The source type that the returned categories belong to

        ", "EventSubscription$CustomerAwsId": "

        The AWS customer account associated with the RDS event notification subscription.

        ", "EventSubscription$CustSubscriptionId": "

        The RDS event notification subscription Id.

        ", "EventSubscription$SnsTopicArn": "

        The topic ARN of the RDS event notification subscription.

        ", "EventSubscription$Status": "

        The status of the RDS event notification subscription.

        Constraints:

        Can be one of the following: creating | modifying | deleting | active | no-permission | topic-not-exist

        The status \"no-permission\" indicates that RDS no longer has permission to post to the SNS topic. The status \"topic-not-exist\" indicates that the topic was deleted after the subscription was created.

        ", "EventSubscription$SubscriptionCreationTime": "

        The time the RDS event notification subscription was created.

        ", "EventSubscription$SourceType": "

        The source type for the RDS event notification subscription.

        ", "EventSubscriptionsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "EventsMessage$Marker": "

        An optional pagination token provided by a previous Events request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "Filter$Name": "

        This parameter is not currently supported.

        ", "FilterValueList$member": null, "IPRange$Status": "

        Specifies the status of the IP range. Status can be \"authorizing\", \"authorized\", \"revoking\", and \"revoked\".

        ", "IPRange$CIDRIP": "

        Specifies the IP range.

        ", "KeyList$member": null, "ListTagsForResourceMessage$ResourceName": "

        The Amazon RDS resource with tags to be listed. This value is an Amazon Resource Name (ARN). For information about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN).

        ", "ModifyDBInstanceMessage$DBInstanceIdentifier": "

        The DB instance identifier. This value is stored as a lowercase string.

        Constraints:

        • Must be the identifier for an existing DB instance
        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "ModifyDBInstanceMessage$DBInstanceClass": "

        The new compute and memory capacity of the DB instance. To determine the instance classes that are available for a particular DB engine, use the DescribeOrderableDBInstanceOptions action.

        Passing a value for this setting causes an outage during the change and is applied during the next maintenance window, unless ApplyImmediately is specified as true for this request.

        Default: Uses existing setting

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.xlarge | db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge | db.m3.2xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge | db.r3.8xlarge | db.t2.micro | db.t2.small | db.t2.medium

        ", "ModifyDBInstanceMessage$MasterUserPassword": "

        The new password for the DB instance master user. Can be any printable ASCII character except \"/\", \"\"\", or \"@\".

        Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible. Between the time of the request and the completion of the request, the MasterUserPassword element exists in the PendingModifiedValues element of the operation response.

        Default: Uses existing setting

        Constraints: Must be 8 to 41 alphanumeric characters (MySQL), 8 to 30 alphanumeric characters (Oracle), or 8 to 128 alphanumeric characters (SQL Server).

        Amazon RDS API actions never return the password, so this action provides a way to regain access to a master instance user if the password is lost. This includes restoring privileges that may have been accidentally revoked. ", "ModifyDBInstanceMessage$DBParameterGroupName": "

        The name of the DB parameter group to apply to the DB instance. Changing this setting does not result in an outage. The parameter group name itself is changed immediately, but the actual parameter changes are not applied until you reboot the instance without failover. The db instance will NOT be rebooted automatically and the parameter changes will NOT be applied during the next maintenance window.

        Default: Uses existing setting

        Constraints: The DB parameter group must be in the same DB parameter group family as this DB instance.

        ", "ModifyDBInstanceMessage$PreferredBackupWindow": "

        The daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod. Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible.

        Constraints:

        • Must be in the format hh24:mi-hh24:mi
        • Times should be Universal Time Coordinated (UTC)
        • Must not conflict with the preferred maintenance window
        • Must be at least 30 minutes
        ", "ModifyDBInstanceMessage$PreferredMaintenanceWindow": "

        The weekly time range (in UTC) during which system maintenance can occur, which may result in an outage. Changing this parameter does not result in an outage, except in the following situation, and the change is asynchronously applied as soon as possible. If there are pending actions that cause a reboot, and the maintenance window is changed to include the current time, then changing this parameter will cause a reboot of the DB instance. If moving this window to the current time, there must be at least 30 minutes between the current time and end of the window to ensure pending changes are applied.

        Default: Uses existing setting

        Format: ddd:hh24:mi-ddd:hh24:mi

        Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

        Constraints: Must be at least 30 minutes

        ", "ModifyDBInstanceMessage$EngineVersion": "

        The version number of the database engine to upgrade to. Changing this parameter results in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        For major version upgrades, if a non-default DB parameter group is currently in use, a new DB parameter group in the DB parameter group family for the new engine version must be specified. The new DB parameter group can be the default for that DB parameter group family.

        For a list of valid engine versions, see CreateDBInstance.

        ", "ModifyDBInstanceMessage$OptionGroupName": "

        Indicates that the DB instance should be associated with the specified option group. Changing this parameter does not result in an outage except in the following case and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request. If the parameter change results in an option group that enables OEM, this change can cause a brief (sub-second) period during which new connections are rejected but existing connections are not interrupted.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "ModifyDBInstanceMessage$NewDBInstanceIdentifier": "

        The new DB instance identifier for the DB instance when renaming a DB instance. When you change the DB instance identifier, an instance reboot will occur immediately if you set Apply Immediately to true, or will occur during the next maintenance window if Apply Immediately to false. This value is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "ModifyDBInstanceMessage$StorageType": "

        Specifies storage type to be associated with the DB Instance.

        Valid values: standard | gp2 | io1

        If you specify io1, you must also include a value for the Iops parameter.

        Default: io1 if the Iops parameter is specified; otherwise standard

        ", "ModifyDBInstanceMessage$TdeCredentialArn": "

        The ARN from the Key Store with which to associate the instance for TDE encryption.

        ", "ModifyDBInstanceMessage$TdeCredentialPassword": "

        The password for the given ARN from the Key Store in order to access the device.

        ", "ModifyDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB parameter group.

        Constraints:

        • Must be the name of an existing DB parameter group
        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "ModifyDBSubnetGroupMessage$DBSubnetGroupName": "

        The name for the DB subnet group. This value is stored as a lowercase string.

        Constraints: Must contain no more than 255 alphanumeric characters or hyphens. Must not be \"Default\".

        Example: mySubnetgroup

        ", "ModifyDBSubnetGroupMessage$DBSubnetGroupDescription": "

        The description for the DB subnet group.

        ", "ModifyEventSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription.

        ", "ModifyEventSubscriptionMessage$SnsTopicArn": "

        The Amazon Resource Name (ARN) of the SNS topic created for event notification. The ARN is created by Amazon SNS when you create a topic and subscribe to it.

        ", "ModifyEventSubscriptionMessage$SourceType": "

        The type of source that will be generating the events. For example, if you want to be notified of events generated by a DB instance, you would set this parameter to db-instance. if this value is not specified, all events are returned.

        Valid values: db-instance | db-parameter-group | db-security-group | db-snapshot

        ", "ModifyOptionGroupMessage$OptionGroupName": "

        The name of the option group to be modified.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "Option$OptionName": "

        The name of the option.

        ", "Option$OptionDescription": "

        The description of the option.

        ", "OptionConfiguration$OptionName": "

        The configuration of options to include in a group.

        ", "OptionGroup$OptionGroupName": "

        Specifies the name of the option group.

        ", "OptionGroup$OptionGroupDescription": "

        Provides a description of the option group.

        ", "OptionGroup$EngineName": "

        Engine name that this option group can be applied to.

        ", "OptionGroup$MajorEngineVersion": "

        Indicates the major engine version associated with this option group.

        ", "OptionGroup$VpcId": "

        If AllowsVpcAndNonVpcInstanceMemberships is false, this field is blank. If AllowsVpcAndNonVpcInstanceMemberships is true and this field is blank, then this option group can be applied to both VPC and non-VPC instances. If this field contains a value, then this option group can only be applied to instances that are in the VPC indicated by this field.

        ", "OptionGroupMembership$OptionGroupName": "

        The name of the option group that the instance belongs to.

        ", "OptionGroupMembership$Status": "

        The status of the DB instance's option group membership (e.g. in-sync, pending, pending-maintenance, applying).

        ", "OptionGroupOption$Name": "

        The name of the option.

        ", "OptionGroupOption$Description": "

        The description of the option.

        ", "OptionGroupOption$EngineName": "

        The name of the engine that this option can be applied to.

        ", "OptionGroupOption$MajorEngineVersion": "

        Indicates the major engine version that the option is available for.

        ", "OptionGroupOption$MinimumRequiredMinorEngineVersion": "

        The minimum required engine version for the option to be applied.

        ", "OptionGroupOptionSetting$SettingName": "

        The name of the option group option.

        ", "OptionGroupOptionSetting$SettingDescription": "

        The description of the option group option.

        ", "OptionGroupOptionSetting$DefaultValue": "

        The default value for the option group option.

        ", "OptionGroupOptionSetting$ApplyType": "

        The DB engine specific parameter type for the option group option.

        ", "OptionGroupOptionSetting$AllowedValues": "

        Indicates the acceptable values for the option group option.

        ", "OptionGroupOptionsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "OptionGroups$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "OptionNamesList$member": null, "OptionSetting$Name": "

        The name of the option that has settings that you can set.

        ", "OptionSetting$Value": "

        The current value of the option setting.

        ", "OptionSetting$DefaultValue": "

        The default value of the option setting.

        ", "OptionSetting$Description": "

        The description of the option setting.

        ", "OptionSetting$ApplyType": "

        The DB engine specific parameter type.

        ", "OptionSetting$DataType": "

        The data type of the option setting.

        ", "OptionSetting$AllowedValues": "

        The allowed values of the option setting.

        ", "OptionsDependedOn$member": null, "OrderableDBInstanceOption$Engine": "

        The engine type of the orderable DB instance.

        ", "OrderableDBInstanceOption$EngineVersion": "

        The engine version of the orderable DB instance.

        ", "OrderableDBInstanceOption$DBInstanceClass": "

        The DB instance Class for the orderable DB instance

        ", "OrderableDBInstanceOption$LicenseModel": "

        The license model for the orderable DB instance.

        ", "OrderableDBInstanceOption$StorageType": "

        The storage type for this orderable DB instance.

        ", "OrderableDBInstanceOptionsMessage$Marker": "

        An optional pagination token provided by a previous OrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "Parameter$ParameterName": "

        Specifies the name of the parameter.

        ", "Parameter$ParameterValue": "

        Specifies the value of the parameter.

        ", "Parameter$Description": "

        Provides a description of the parameter.

        ", "Parameter$Source": "

        Indicates the source of the parameter value.

        ", "Parameter$ApplyType": "

        Specifies the engine specific parameters type.

        ", "Parameter$DataType": "

        Specifies the valid data type for the parameter.

        ", "Parameter$AllowedValues": "

        Specifies the valid range of values for the parameter.

        ", "Parameter$MinimumEngineVersion": "

        The earliest engine version to which the parameter can apply.

        ", "PendingModifiedValues$DBInstanceClass": "

        Contains the new DBInstanceClass for the DB instance that will be applied or is in progress.

        ", "PendingModifiedValues$MasterUserPassword": "

        Contains the pending or in-progress change of the master credentials for the DB instance.

        ", "PendingModifiedValues$EngineVersion": "

        Indicates the database engine version.

        ", "PendingModifiedValues$DBInstanceIdentifier": "

        Contains the new DBInstanceIdentifier for the DB instance that will be applied or is in progress.

        ", "PendingModifiedValues$StorageType": "

        Specifies storage type to be associated with the DB instance.

        ", "PromoteReadReplicaMessage$DBInstanceIdentifier": "

        The DB instance identifier. This value is stored as a lowercase string.

        Constraints:

        • Must be the identifier for an existing Read Replica DB instance
        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: mydbinstance

        ", "PromoteReadReplicaMessage$PreferredBackupWindow": "

        The daily time range during which automated backups are created if automated backups are enabled, using the BackupRetentionPeriod parameter.

        Default: A 30-minute window selected at random from an 8-hour block of time per region. See the Amazon RDS User Guide for the time blocks for each region from which the default backup windows are assigned.

        Constraints: Must be in the format hh24:mi-hh24:mi. Times should be Universal Time Coordinated (UTC). Must not conflict with the preferred maintenance window. Must be at least 30 minutes.

        ", "PurchaseReservedDBInstancesOfferingMessage$ReservedDBInstancesOfferingId": "

        The ID of the Reserved DB instance offering to purchase.

        Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706

        ", "PurchaseReservedDBInstancesOfferingMessage$ReservedDBInstanceId": "

        Customer-specified identifier to track this reservation.

        Example: myreservationID

        ", "ReadReplicaDBInstanceIdentifierList$member": null, "RebootDBInstanceMessage$DBInstanceIdentifier": "

        The DB instance identifier. This parameter is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RecurringCharge$RecurringChargeFrequency": "

        The frequency of the recurring charge.

        ", "RemoveSourceIdentifierFromSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to remove a source identifier from.

        ", "RemoveSourceIdentifierFromSubscriptionMessage$SourceIdentifier": "

        The source identifier to be removed from the subscription, such as the DB instance identifier for a DB instance or the name of a security group.

        ", "RemoveTagsFromResourceMessage$ResourceName": "

        The Amazon RDS resource the tags will be removed from. This value is an Amazon Resource Name (ARN). For information about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN).

        ", "ReservedDBInstance$ReservedDBInstanceId": "

        The unique identifier for the reservation.

        ", "ReservedDBInstance$ReservedDBInstancesOfferingId": "

        The offering identifier.

        ", "ReservedDBInstance$DBInstanceClass": "

        The DB instance class for the reserved DB instance.

        ", "ReservedDBInstance$CurrencyCode": "

        The currency code for the reserved DB instance.

        ", "ReservedDBInstance$ProductDescription": "

        The description of the reserved DB instance.

        ", "ReservedDBInstance$OfferingType": "

        The offering type of this reserved DB instance.

        ", "ReservedDBInstance$State": "

        The state of the reserved DB instance.

        ", "ReservedDBInstanceMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "ReservedDBInstancesOffering$ReservedDBInstancesOfferingId": "

        The offering identifier.

        ", "ReservedDBInstancesOffering$DBInstanceClass": "

        The DB instance class for the reserved DB instance.

        ", "ReservedDBInstancesOffering$CurrencyCode": "

        The currency code for the reserved DB instance offering.

        ", "ReservedDBInstancesOffering$ProductDescription": "

        The database engine used by the offering.

        ", "ReservedDBInstancesOffering$OfferingType": "

        The offering type.

        ", "ReservedDBInstancesOfferingMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "ResetDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB parameter group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RestoreDBInstanceFromDBSnapshotMessage$DBInstanceIdentifier": "

        Name of the DB instance to create from the DB snapshot. This parameter isn't case sensitive.

        Constraints:

        • Must contain from 1 to 255 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-snapshot-id

        ", "RestoreDBInstanceFromDBSnapshotMessage$DBSnapshotIdentifier": "

        The identifier for the DB snapshot to restore from.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RestoreDBInstanceFromDBSnapshotMessage$DBInstanceClass": "

        The compute and memory capacity of the Amazon RDS DB instance.

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge | db.m3.2xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge | db.r3.8xlarge | db.t2.micro | db.t2.small | db.t2.medium

        ", "RestoreDBInstanceFromDBSnapshotMessage$AvailabilityZone": "

        The EC2 Availability Zone that the database instance will be created in.

        Default: A random, system-chosen Availability Zone.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        Example: us-east-1a

        ", "RestoreDBInstanceFromDBSnapshotMessage$DBSubnetGroupName": "

        The DB subnet group name to use for the new instance.

        ", "RestoreDBInstanceFromDBSnapshotMessage$LicenseModel": "

        License model information for the restored DB instance.

        Default: Same as source.

        Valid values: license-included | bring-your-own-license | general-public-license

        ", "RestoreDBInstanceFromDBSnapshotMessage$DBName": "

        The database name for the restored DB instance.

        This parameter doesn't apply to the MySQL engine.

        ", "RestoreDBInstanceFromDBSnapshotMessage$Engine": "

        The database engine to use for the new instance.

        Default: The same as source

        Constraint: Must be compatible with the engine of the source

        Valid Values: MySQL | oracle-se1 | oracle-se | oracle-ee | sqlserver-ee | sqlserver-se | sqlserver-ex | sqlserver-web | postgres

        ", "RestoreDBInstanceFromDBSnapshotMessage$OptionGroupName": "

        The name of the option group to be used for the restored DB instance.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "RestoreDBInstanceFromDBSnapshotMessage$StorageType": "

        Specifies storage type to be associated with the DB Instance.

        Valid values: standard | gp2 | io1

        If you specify io1, you must also include a value for the Iops parameter.

        Default: io1 if the Iops parameter is specified; otherwise standard

        ", "RestoreDBInstanceFromDBSnapshotMessage$TdeCredentialArn": "

        The ARN from the Key Store with which to associate the instance for TDE encryption.

        ", "RestoreDBInstanceFromDBSnapshotMessage$TdeCredentialPassword": "

        The password for the given ARN from the Key Store in order to access the device.

        ", "RestoreDBInstanceToPointInTimeMessage$SourceDBInstanceIdentifier": "

        The identifier of the source DB instance from which to restore.

        Constraints:

        • Must be the identifier of an existing database instance
        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RestoreDBInstanceToPointInTimeMessage$TargetDBInstanceIdentifier": "

        The name of the new database instance to be created.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "RestoreDBInstanceToPointInTimeMessage$DBInstanceClass": "

        The compute and memory capacity of the Amazon RDS DB instance.

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge | db.m3.2xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge | db.r3.8xlarge | db.t2.micro | db.t2.small | db.t2.medium

        Default: The same DBInstanceClass as the original DB instance.

        ", "RestoreDBInstanceToPointInTimeMessage$AvailabilityZone": "

        The EC2 Availability Zone that the database instance will be created in.

        Default: A random, system-chosen Availability Zone.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        Example: us-east-1a

        ", "RestoreDBInstanceToPointInTimeMessage$DBSubnetGroupName": "

        The DB subnet group name to use for the new instance.

        ", "RestoreDBInstanceToPointInTimeMessage$LicenseModel": "

        License model information for the restored DB instance.

        Default: Same as source.

        Valid values: license-included | bring-your-own-license | general-public-license

        ", "RestoreDBInstanceToPointInTimeMessage$DBName": "

        The database name for the restored DB instance.

        This parameter is not used for the MySQL engine.

        ", "RestoreDBInstanceToPointInTimeMessage$Engine": "

        The database engine to use for the new instance.

        Default: The same as source

        Constraint: Must be compatible with the engine of the source

        Valid Values: MySQL | oracle-se1 | oracle-se | oracle-ee | sqlserver-ee | sqlserver-se | sqlserver-ex | sqlserver-web | postgres

        ", "RestoreDBInstanceToPointInTimeMessage$OptionGroupName": "

        The name of the option group to be used for the restored DB instance.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "RestoreDBInstanceToPointInTimeMessage$StorageType": "

        Specifies storage type to be associated with the DB Instance.

        Valid values: standard | gp2 | io1

        If you specify io1, you must also include a value for the Iops parameter.

        Default: io1 if the Iops parameter is specified; otherwise standard

        ", "RestoreDBInstanceToPointInTimeMessage$TdeCredentialArn": "

        The ARN from the Key Store with which to associate the instance for TDE encryption.

        ", "RestoreDBInstanceToPointInTimeMessage$TdeCredentialPassword": "

        The password for the given ARN from the Key Store in order to access the device.

        ", "RevokeDBSecurityGroupIngressMessage$DBSecurityGroupName": "

        The name of the DB security group to revoke ingress from.

        ", "RevokeDBSecurityGroupIngressMessage$CIDRIP": "

        The IP range to revoke access from. Must be a valid CIDR range. If CIDRIP is specified, EC2SecurityGroupName, EC2SecurityGroupId and EC2SecurityGroupOwnerId cannot be provided.

        ", "RevokeDBSecurityGroupIngressMessage$EC2SecurityGroupName": "

        The name of the EC2 security group to revoke access from. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "RevokeDBSecurityGroupIngressMessage$EC2SecurityGroupId": "

        The id of the EC2 security group to revoke access from. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "RevokeDBSecurityGroupIngressMessage$EC2SecurityGroupOwnerId": "

        The AWS Account Number of the owner of the EC2 security group specified in the EC2SecurityGroupName parameter. The AWS Access Key ID is not an acceptable value. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "SourceIdsList$member": null, "Subnet$SubnetIdentifier": "

        Specifies the identifier of the subnet.

        ", "Subnet$SubnetStatus": "

        Specifies the status of the subnet.

        ", "SubnetIdentifierList$member": null, "Tag$Key": "

        A key is the required name of the tag. The string value can be from 1 to 128 Unicode characters in length and cannot be prefixed with \"aws:\" or \"rds:\". The string may only contain only the set of Unicode letters, digits, white-space, '_', '.', '/', '=', '+', '-' (Java regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:/=+\\\\-]*)$\").

        ", "Tag$Value": "

        A value is the optional value of the tag. The string value can be from 1 to 256 Unicode characters in length and cannot be prefixed with \"aws:\" or \"rds:\". The string may only contain only the set of Unicode letters, digits, white-space, '_', '.', '/', '=', '+', '-' (Java regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:/=+\\\\-]*)$\").

        ", "VpcSecurityGroupIdList$member": null, "VpcSecurityGroupMembership$VpcSecurityGroupId": "

        The name of the VPC security group.

        ", "VpcSecurityGroupMembership$Status": "

        The status of the VPC security group.

        " } }, "Subnet": { "base": "

        This data type is used as a response element in the DescribeDBSubnetGroups action.

        ", "refs": { "SubnetList$member": null } }, "SubnetAlreadyInUse": { "base": "

        The DB subnet is already in use in the Availability Zone.

        ", "refs": { } }, "SubnetIdentifierList": { "base": null, "refs": { "CreateDBSubnetGroupMessage$SubnetIds": "

        The EC2 Subnet IDs for the DB subnet group.

        ", "ModifyDBSubnetGroupMessage$SubnetIds": "

        The EC2 subnet IDs for the DB subnet group.

        " } }, "SubnetList": { "base": null, "refs": { "DBSubnetGroup$Subnets": "

        Contains a list of Subnet elements.

        " } }, "SubscriptionAlreadyExistFault": { "base": "

        The supplied subscription name already exists.

        ", "refs": { } }, "SubscriptionCategoryNotFoundFault": { "base": "

        The supplied category does not exist.

        ", "refs": { } }, "SubscriptionNotFoundFault": { "base": "

        The subscription name does not exist.

        ", "refs": { } }, "SupportedCharacterSetsList": { "base": null, "refs": { "DBEngineVersion$SupportedCharacterSets": "

        A list of the character sets supported by this engine for the CharacterSetName parameter of the CreateDBInstance API.

        " } }, "TStamp": { "base": null, "refs": { "DBInstance$InstanceCreateTime": "

        Provides the date and time the DB instance was created.

        ", "DBInstance$LatestRestorableTime": "

        Specifies the latest time to which a database can be restored with point-in-time restore.

        ", "DBSnapshot$SnapshotCreateTime": "

        Provides the time (UTC) when the snapshot was taken.

        ", "DBSnapshot$InstanceCreateTime": "

        Specifies the time (UTC) when the snapshot was taken.

        ", "DescribeEventsMessage$StartTime": "

        The beginning of the time interval to retrieve events for, specified in ISO 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia page.

        Example: 2009-07-08T18:00Z

        ", "DescribeEventsMessage$EndTime": "

        The end of the time interval for which to retrieve events, specified in ISO 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia page.

        Example: 2009-07-08T18:00Z

        ", "Event$Date": "

        Specifies the date and time of the event.

        ", "ReservedDBInstance$StartTime": "

        The time the reservation started.

        ", "RestoreDBInstanceToPointInTimeMessage$RestoreTime": "

        The date and time to restore from.

        Valid Values: Value must be a UTC time

        Constraints:

        • Must be before the latest restorable time for the DB instance
        • Cannot be specified if UseLatestRestorableTime parameter is true

        Example: 2009-09-07T23:45:00Z

        " } }, "Tag": { "base": "

        Metadata assigned to an Amazon RDS resource consisting of a key-value pair.

        ", "refs": { "TagList$member": null } }, "TagList": { "base": "

        A list of tags.

        ", "refs": { "AddTagsToResourceMessage$Tags": "

        The tags to be assigned to the Amazon RDS resource.

        ", "CopyDBParameterGroupMessage$Tags": null, "CopyDBSnapshotMessage$Tags": null, "CopyOptionGroupMessage$Tags": null, "CreateDBInstanceMessage$Tags": null, "CreateDBInstanceReadReplicaMessage$Tags": null, "CreateDBParameterGroupMessage$Tags": null, "CreateDBSecurityGroupMessage$Tags": null, "CreateDBSnapshotMessage$Tags": null, "CreateDBSubnetGroupMessage$Tags": null, "CreateEventSubscriptionMessage$Tags": null, "CreateOptionGroupMessage$Tags": null, "PurchaseReservedDBInstancesOfferingMessage$Tags": null, "RestoreDBInstanceFromDBSnapshotMessage$Tags": null, "RestoreDBInstanceToPointInTimeMessage$Tags": null, "TagListMessage$TagList": "

        List of tags returned by the ListTagsForResource operation.

        " } }, "TagListMessage": { "base": "

        ", "refs": { } }, "VpcSecurityGroupIdList": { "base": null, "refs": { "CreateDBInstanceMessage$VpcSecurityGroupIds": "

        A list of EC2 VPC security groups to associate with this DB instance.

        Default: The default EC2 VPC security group for the DB subnet group's VPC.

        ", "ModifyDBInstanceMessage$VpcSecurityGroupIds": "

        A list of EC2 VPC security groups to authorize on this DB instance. This change is asynchronously applied as soon as possible.

        Constraints:

        • Must be 1 to 255 alphanumeric characters
        • First character must be a letter
        • Cannot end with a hyphen or contain two consecutive hyphens
        ", "OptionConfiguration$VpcSecurityGroupMemberships": "

        A list of VpcSecurityGroupMemebrship name strings used for this option.

        " } }, "VpcSecurityGroupMembership": { "base": "

        This data type is used as a response element for queries on VPC security group membership.

        ", "refs": { "VpcSecurityGroupMembershipList$member": null } }, "VpcSecurityGroupMembershipList": { "base": null, "refs": { "DBInstance$VpcSecurityGroups": "

        Provides List of VPC security group elements that the DB instance belongs to.

        ", "Option$VpcSecurityGroupMemberships": "

        If the option requires access to a port, then this VPC security group allows access to the port.

        " } } } } aws-sdk-go-1.4.22/models/apis/rds/2014-09-01/examples-1.json000066400000000000000000000000541300374646400224720ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/rds/2014-10-31/000077500000000000000000000000001300374646400176175ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/rds/2014-10-31/api-2.json000066400000000000000000004376511300374646400214420ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2014-10-31", "endpointPrefix":"rds", "protocol":"query", "serviceAbbreviation":"Amazon RDS", "serviceFullName":"Amazon Relational Database Service", "signatureVersion":"v4", "xmlNamespace":"http://rds.amazonaws.com/doc/2014-10-31/" }, "operations":{ "AddRoleToDBCluster":{ "name":"AddRoleToDBCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddRoleToDBClusterMessage"}, "errors":[ {"shape":"DBClusterNotFoundFault"}, {"shape":"DBClusterRoleAlreadyExistsFault"}, {"shape":"InvalidDBClusterStateFault"}, {"shape":"DBClusterRoleQuotaExceededFault"} ] }, "AddSourceIdentifierToSubscription":{ "name":"AddSourceIdentifierToSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddSourceIdentifierToSubscriptionMessage"}, "output":{ "shape":"AddSourceIdentifierToSubscriptionResult", "resultWrapper":"AddSourceIdentifierToSubscriptionResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"}, {"shape":"SourceNotFoundFault"} ] }, "AddTagsToResource":{ "name":"AddTagsToResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsToResourceMessage"}, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "ApplyPendingMaintenanceAction":{ "name":"ApplyPendingMaintenanceAction", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ApplyPendingMaintenanceActionMessage"}, "output":{ "shape":"ApplyPendingMaintenanceActionResult", "resultWrapper":"ApplyPendingMaintenanceActionResult" }, "errors":[ {"shape":"ResourceNotFoundFault"} ] }, "AuthorizeDBSecurityGroupIngress":{ "name":"AuthorizeDBSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AuthorizeDBSecurityGroupIngressMessage"}, "output":{ "shape":"AuthorizeDBSecurityGroupIngressResult", "resultWrapper":"AuthorizeDBSecurityGroupIngressResult" }, "errors":[ {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"InvalidDBSecurityGroupStateFault"}, {"shape":"AuthorizationAlreadyExistsFault"}, {"shape":"AuthorizationQuotaExceededFault"} ] }, "CopyDBClusterParameterGroup":{ "name":"CopyDBClusterParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopyDBClusterParameterGroupMessage"}, "output":{ "shape":"CopyDBClusterParameterGroupResult", "resultWrapper":"CopyDBClusterParameterGroupResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"DBParameterGroupQuotaExceededFault"}, {"shape":"DBParameterGroupAlreadyExistsFault"} ] }, "CopyDBClusterSnapshot":{ "name":"CopyDBClusterSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopyDBClusterSnapshotMessage"}, "output":{ "shape":"CopyDBClusterSnapshotResult", "resultWrapper":"CopyDBClusterSnapshotResult" }, "errors":[ {"shape":"DBClusterSnapshotAlreadyExistsFault"}, {"shape":"DBClusterSnapshotNotFoundFault"}, {"shape":"InvalidDBClusterStateFault"}, {"shape":"InvalidDBClusterSnapshotStateFault"}, {"shape":"SnapshotQuotaExceededFault"}, {"shape":"KMSKeyNotAccessibleFault"} ] }, "CopyDBParameterGroup":{ "name":"CopyDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopyDBParameterGroupMessage"}, "output":{ "shape":"CopyDBParameterGroupResult", "resultWrapper":"CopyDBParameterGroupResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"DBParameterGroupAlreadyExistsFault"}, {"shape":"DBParameterGroupQuotaExceededFault"} ] }, "CopyDBSnapshot":{ "name":"CopyDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopyDBSnapshotMessage"}, "output":{ "shape":"CopyDBSnapshotResult", "resultWrapper":"CopyDBSnapshotResult" }, "errors":[ {"shape":"DBSnapshotAlreadyExistsFault"}, {"shape":"DBSnapshotNotFoundFault"}, {"shape":"InvalidDBSnapshotStateFault"}, {"shape":"SnapshotQuotaExceededFault"}, {"shape":"KMSKeyNotAccessibleFault"} ] }, "CopyOptionGroup":{ "name":"CopyOptionGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopyOptionGroupMessage"}, "output":{ "shape":"CopyOptionGroupResult", "resultWrapper":"CopyOptionGroupResult" }, "errors":[ {"shape":"OptionGroupAlreadyExistsFault"}, {"shape":"OptionGroupNotFoundFault"}, {"shape":"OptionGroupQuotaExceededFault"} ] }, "CreateDBCluster":{ "name":"CreateDBCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBClusterMessage"}, "output":{ "shape":"CreateDBClusterResult", "resultWrapper":"CreateDBClusterResult" }, "errors":[ {"shape":"DBClusterAlreadyExistsFault"}, {"shape":"InsufficientStorageClusterCapacityFault"}, {"shape":"DBClusterQuotaExceededFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidDBClusterStateFault"}, {"shape":"InvalidDBSubnetGroupStateFault"}, {"shape":"InvalidSubnet"}, {"shape":"DBClusterParameterGroupNotFoundFault"}, {"shape":"KMSKeyNotAccessibleFault"}, {"shape":"DBClusterNotFoundFault"} ] }, "CreateDBClusterParameterGroup":{ "name":"CreateDBClusterParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBClusterParameterGroupMessage"}, "output":{ "shape":"CreateDBClusterParameterGroupResult", "resultWrapper":"CreateDBClusterParameterGroupResult" }, "errors":[ {"shape":"DBParameterGroupQuotaExceededFault"}, {"shape":"DBParameterGroupAlreadyExistsFault"} ] }, "CreateDBClusterSnapshot":{ "name":"CreateDBClusterSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBClusterSnapshotMessage"}, "output":{ "shape":"CreateDBClusterSnapshotResult", "resultWrapper":"CreateDBClusterSnapshotResult" }, "errors":[ {"shape":"DBClusterSnapshotAlreadyExistsFault"}, {"shape":"InvalidDBClusterStateFault"}, {"shape":"DBClusterNotFoundFault"}, {"shape":"SnapshotQuotaExceededFault"}, {"shape":"InvalidDBClusterSnapshotStateFault"} ] }, "CreateDBInstance":{ "name":"CreateDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBInstanceMessage"}, "output":{ "shape":"CreateDBInstanceResult", "resultWrapper":"CreateDBInstanceResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidDBClusterStateFault"}, {"shape":"InvalidSubnet"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"}, {"shape":"DBClusterNotFoundFault"}, {"shape":"StorageTypeNotSupportedFault"}, {"shape":"AuthorizationNotFoundFault"}, {"shape":"KMSKeyNotAccessibleFault"}, {"shape":"DomainNotFoundFault"} ] }, "CreateDBInstanceReadReplica":{ "name":"CreateDBInstanceReadReplica", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBInstanceReadReplicaMessage"}, "output":{ "shape":"CreateDBInstanceReadReplicaResult", "resultWrapper":"CreateDBInstanceReadReplicaResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"}, {"shape":"DBSubnetGroupNotAllowedFault"}, {"shape":"InvalidDBSubnetGroupFault"}, {"shape":"StorageTypeNotSupportedFault"}, {"shape":"KMSKeyNotAccessibleFault"} ] }, "CreateDBParameterGroup":{ "name":"CreateDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBParameterGroupMessage"}, "output":{ "shape":"CreateDBParameterGroupResult", "resultWrapper":"CreateDBParameterGroupResult" }, "errors":[ {"shape":"DBParameterGroupQuotaExceededFault"}, {"shape":"DBParameterGroupAlreadyExistsFault"} ] }, "CreateDBSecurityGroup":{ "name":"CreateDBSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBSecurityGroupMessage"}, "output":{ "shape":"CreateDBSecurityGroupResult", "resultWrapper":"CreateDBSecurityGroupResult" }, "errors":[ {"shape":"DBSecurityGroupAlreadyExistsFault"}, {"shape":"DBSecurityGroupQuotaExceededFault"}, {"shape":"DBSecurityGroupNotSupportedFault"} ] }, "CreateDBSnapshot":{ "name":"CreateDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBSnapshotMessage"}, "output":{ "shape":"CreateDBSnapshotResult", "resultWrapper":"CreateDBSnapshotResult" }, "errors":[ {"shape":"DBSnapshotAlreadyExistsFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"SnapshotQuotaExceededFault"} ] }, "CreateDBSubnetGroup":{ "name":"CreateDBSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDBSubnetGroupMessage"}, "output":{ "shape":"CreateDBSubnetGroupResult", "resultWrapper":"CreateDBSubnetGroupResult" }, "errors":[ {"shape":"DBSubnetGroupAlreadyExistsFault"}, {"shape":"DBSubnetGroupQuotaExceededFault"}, {"shape":"DBSubnetQuotaExceededFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"} ] }, "CreateEventSubscription":{ "name":"CreateEventSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateEventSubscriptionMessage"}, "output":{ "shape":"CreateEventSubscriptionResult", "resultWrapper":"CreateEventSubscriptionResult" }, "errors":[ {"shape":"EventSubscriptionQuotaExceededFault"}, {"shape":"SubscriptionAlreadyExistFault"}, {"shape":"SNSInvalidTopicFault"}, {"shape":"SNSNoAuthorizationFault"}, {"shape":"SNSTopicArnNotFoundFault"}, {"shape":"SubscriptionCategoryNotFoundFault"}, {"shape":"SourceNotFoundFault"} ] }, "CreateOptionGroup":{ "name":"CreateOptionGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateOptionGroupMessage"}, "output":{ "shape":"CreateOptionGroupResult", "resultWrapper":"CreateOptionGroupResult" }, "errors":[ {"shape":"OptionGroupAlreadyExistsFault"}, {"shape":"OptionGroupQuotaExceededFault"} ] }, "DeleteDBCluster":{ "name":"DeleteDBCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBClusterMessage"}, "output":{ "shape":"DeleteDBClusterResult", "resultWrapper":"DeleteDBClusterResult" }, "errors":[ {"shape":"DBClusterNotFoundFault"}, {"shape":"InvalidDBClusterStateFault"}, {"shape":"DBClusterSnapshotAlreadyExistsFault"}, {"shape":"SnapshotQuotaExceededFault"}, {"shape":"InvalidDBClusterSnapshotStateFault"} ] }, "DeleteDBClusterParameterGroup":{ "name":"DeleteDBClusterParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBClusterParameterGroupMessage"}, "errors":[ {"shape":"InvalidDBParameterGroupStateFault"}, {"shape":"DBParameterGroupNotFoundFault"} ] }, "DeleteDBClusterSnapshot":{ "name":"DeleteDBClusterSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBClusterSnapshotMessage"}, "output":{ "shape":"DeleteDBClusterSnapshotResult", "resultWrapper":"DeleteDBClusterSnapshotResult" }, "errors":[ {"shape":"InvalidDBClusterSnapshotStateFault"}, {"shape":"DBClusterSnapshotNotFoundFault"} ] }, "DeleteDBInstance":{ "name":"DeleteDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBInstanceMessage"}, "output":{ "shape":"DeleteDBInstanceResult", "resultWrapper":"DeleteDBInstanceResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBSnapshotAlreadyExistsFault"}, {"shape":"SnapshotQuotaExceededFault"}, {"shape":"InvalidDBClusterStateFault"} ] }, "DeleteDBParameterGroup":{ "name":"DeleteDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBParameterGroupMessage"}, "errors":[ {"shape":"InvalidDBParameterGroupStateFault"}, {"shape":"DBParameterGroupNotFoundFault"} ] }, "DeleteDBSecurityGroup":{ "name":"DeleteDBSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBSecurityGroupMessage"}, "errors":[ {"shape":"InvalidDBSecurityGroupStateFault"}, {"shape":"DBSecurityGroupNotFoundFault"} ] }, "DeleteDBSnapshot":{ "name":"DeleteDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBSnapshotMessage"}, "output":{ "shape":"DeleteDBSnapshotResult", "resultWrapper":"DeleteDBSnapshotResult" }, "errors":[ {"shape":"InvalidDBSnapshotStateFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "DeleteDBSubnetGroup":{ "name":"DeleteDBSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDBSubnetGroupMessage"}, "errors":[ {"shape":"InvalidDBSubnetGroupStateFault"}, {"shape":"InvalidDBSubnetStateFault"}, {"shape":"DBSubnetGroupNotFoundFault"} ] }, "DeleteEventSubscription":{ "name":"DeleteEventSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteEventSubscriptionMessage"}, "output":{ "shape":"DeleteEventSubscriptionResult", "resultWrapper":"DeleteEventSubscriptionResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"}, {"shape":"InvalidEventSubscriptionStateFault"} ] }, "DeleteOptionGroup":{ "name":"DeleteOptionGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteOptionGroupMessage"}, "errors":[ {"shape":"OptionGroupNotFoundFault"}, {"shape":"InvalidOptionGroupStateFault"} ] }, "DescribeAccountAttributes":{ "name":"DescribeAccountAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAccountAttributesMessage"}, "output":{ "shape":"AccountAttributesMessage", "resultWrapper":"DescribeAccountAttributesResult" } }, "DescribeCertificates":{ "name":"DescribeCertificates", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeCertificatesMessage"}, "output":{ "shape":"CertificateMessage", "resultWrapper":"DescribeCertificatesResult" }, "errors":[ {"shape":"CertificateNotFoundFault"} ] }, "DescribeDBClusterParameterGroups":{ "name":"DescribeDBClusterParameterGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBClusterParameterGroupsMessage"}, "output":{ "shape":"DBClusterParameterGroupsMessage", "resultWrapper":"DescribeDBClusterParameterGroupsResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"} ] }, "DescribeDBClusterParameters":{ "name":"DescribeDBClusterParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBClusterParametersMessage"}, "output":{ "shape":"DBClusterParameterGroupDetails", "resultWrapper":"DescribeDBClusterParametersResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"} ] }, "DescribeDBClusterSnapshotAttributes":{ "name":"DescribeDBClusterSnapshotAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBClusterSnapshotAttributesMessage"}, "output":{ "shape":"DescribeDBClusterSnapshotAttributesResult", "resultWrapper":"DescribeDBClusterSnapshotAttributesResult" }, "errors":[ {"shape":"DBClusterSnapshotNotFoundFault"} ] }, "DescribeDBClusterSnapshots":{ "name":"DescribeDBClusterSnapshots", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBClusterSnapshotsMessage"}, "output":{ "shape":"DBClusterSnapshotMessage", "resultWrapper":"DescribeDBClusterSnapshotsResult" }, "errors":[ {"shape":"DBClusterSnapshotNotFoundFault"} ] }, "DescribeDBClusters":{ "name":"DescribeDBClusters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBClustersMessage"}, "output":{ "shape":"DBClusterMessage", "resultWrapper":"DescribeDBClustersResult" }, "errors":[ {"shape":"DBClusterNotFoundFault"} ] }, "DescribeDBEngineVersions":{ "name":"DescribeDBEngineVersions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBEngineVersionsMessage"}, "output":{ "shape":"DBEngineVersionMessage", "resultWrapper":"DescribeDBEngineVersionsResult" } }, "DescribeDBInstances":{ "name":"DescribeDBInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBInstancesMessage"}, "output":{ "shape":"DBInstanceMessage", "resultWrapper":"DescribeDBInstancesResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"} ] }, "DescribeDBLogFiles":{ "name":"DescribeDBLogFiles", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBLogFilesMessage"}, "output":{ "shape":"DescribeDBLogFilesResponse", "resultWrapper":"DescribeDBLogFilesResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"} ] }, "DescribeDBParameterGroups":{ "name":"DescribeDBParameterGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBParameterGroupsMessage"}, "output":{ "shape":"DBParameterGroupsMessage", "resultWrapper":"DescribeDBParameterGroupsResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"} ] }, "DescribeDBParameters":{ "name":"DescribeDBParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBParametersMessage"}, "output":{ "shape":"DBParameterGroupDetails", "resultWrapper":"DescribeDBParametersResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"} ] }, "DescribeDBSecurityGroups":{ "name":"DescribeDBSecurityGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBSecurityGroupsMessage"}, "output":{ "shape":"DBSecurityGroupMessage", "resultWrapper":"DescribeDBSecurityGroupsResult" }, "errors":[ {"shape":"DBSecurityGroupNotFoundFault"} ] }, "DescribeDBSnapshotAttributes":{ "name":"DescribeDBSnapshotAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBSnapshotAttributesMessage"}, "output":{ "shape":"DescribeDBSnapshotAttributesResult", "resultWrapper":"DescribeDBSnapshotAttributesResult" }, "errors":[ {"shape":"DBSnapshotNotFoundFault"} ] }, "DescribeDBSnapshots":{ "name":"DescribeDBSnapshots", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBSnapshotsMessage"}, "output":{ "shape":"DBSnapshotMessage", "resultWrapper":"DescribeDBSnapshotsResult" }, "errors":[ {"shape":"DBSnapshotNotFoundFault"} ] }, "DescribeDBSubnetGroups":{ "name":"DescribeDBSubnetGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDBSubnetGroupsMessage"}, "output":{ "shape":"DBSubnetGroupMessage", "resultWrapper":"DescribeDBSubnetGroupsResult" }, "errors":[ {"shape":"DBSubnetGroupNotFoundFault"} ] }, "DescribeEngineDefaultClusterParameters":{ "name":"DescribeEngineDefaultClusterParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEngineDefaultClusterParametersMessage"}, "output":{ "shape":"DescribeEngineDefaultClusterParametersResult", "resultWrapper":"DescribeEngineDefaultClusterParametersResult" } }, "DescribeEngineDefaultParameters":{ "name":"DescribeEngineDefaultParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEngineDefaultParametersMessage"}, "output":{ "shape":"DescribeEngineDefaultParametersResult", "resultWrapper":"DescribeEngineDefaultParametersResult" } }, "DescribeEventCategories":{ "name":"DescribeEventCategories", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventCategoriesMessage"}, "output":{ "shape":"EventCategoriesMessage", "resultWrapper":"DescribeEventCategoriesResult" } }, "DescribeEventSubscriptions":{ "name":"DescribeEventSubscriptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventSubscriptionsMessage"}, "output":{ "shape":"EventSubscriptionsMessage", "resultWrapper":"DescribeEventSubscriptionsResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"} ] }, "DescribeEvents":{ "name":"DescribeEvents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventsMessage"}, "output":{ "shape":"EventsMessage", "resultWrapper":"DescribeEventsResult" } }, "DescribeOptionGroupOptions":{ "name":"DescribeOptionGroupOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeOptionGroupOptionsMessage"}, "output":{ "shape":"OptionGroupOptionsMessage", "resultWrapper":"DescribeOptionGroupOptionsResult" } }, "DescribeOptionGroups":{ "name":"DescribeOptionGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeOptionGroupsMessage"}, "output":{ "shape":"OptionGroups", "resultWrapper":"DescribeOptionGroupsResult" }, "errors":[ {"shape":"OptionGroupNotFoundFault"} ] }, "DescribeOrderableDBInstanceOptions":{ "name":"DescribeOrderableDBInstanceOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeOrderableDBInstanceOptionsMessage"}, "output":{ "shape":"OrderableDBInstanceOptionsMessage", "resultWrapper":"DescribeOrderableDBInstanceOptionsResult" } }, "DescribePendingMaintenanceActions":{ "name":"DescribePendingMaintenanceActions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribePendingMaintenanceActionsMessage"}, "output":{ "shape":"PendingMaintenanceActionsMessage", "resultWrapper":"DescribePendingMaintenanceActionsResult" }, "errors":[ {"shape":"ResourceNotFoundFault"} ] }, "DescribeReservedDBInstances":{ "name":"DescribeReservedDBInstances", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedDBInstancesMessage"}, "output":{ "shape":"ReservedDBInstanceMessage", "resultWrapper":"DescribeReservedDBInstancesResult" }, "errors":[ {"shape":"ReservedDBInstanceNotFoundFault"} ] }, "DescribeReservedDBInstancesOfferings":{ "name":"DescribeReservedDBInstancesOfferings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedDBInstancesOfferingsMessage"}, "output":{ "shape":"ReservedDBInstancesOfferingMessage", "resultWrapper":"DescribeReservedDBInstancesOfferingsResult" }, "errors":[ {"shape":"ReservedDBInstancesOfferingNotFoundFault"} ] }, "DescribeSourceRegions":{ "name":"DescribeSourceRegions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSourceRegionsMessage"}, "output":{ "shape":"SourceRegionMessage", "resultWrapper":"DescribeSourceRegionsResult" } }, "DownloadDBLogFilePortion":{ "name":"DownloadDBLogFilePortion", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DownloadDBLogFilePortionMessage"}, "output":{ "shape":"DownloadDBLogFilePortionDetails", "resultWrapper":"DownloadDBLogFilePortionResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBLogFileNotFoundFault"} ] }, "FailoverDBCluster":{ "name":"FailoverDBCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"FailoverDBClusterMessage"}, "output":{ "shape":"FailoverDBClusterResult", "resultWrapper":"FailoverDBClusterResult" }, "errors":[ {"shape":"DBClusterNotFoundFault"}, {"shape":"InvalidDBClusterStateFault"}, {"shape":"InvalidDBInstanceStateFault"} ] }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTagsForResourceMessage"}, "output":{ "shape":"TagListMessage", "resultWrapper":"ListTagsForResourceResult" }, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "ModifyDBCluster":{ "name":"ModifyDBCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBClusterMessage"}, "output":{ "shape":"ModifyDBClusterResult", "resultWrapper":"ModifyDBClusterResult" }, "errors":[ {"shape":"DBClusterNotFoundFault"}, {"shape":"InvalidDBClusterStateFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidDBSubnetGroupStateFault"}, {"shape":"InvalidSubnet"}, {"shape":"DBClusterParameterGroupNotFoundFault"}, {"shape":"InvalidDBSecurityGroupStateFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBClusterAlreadyExistsFault"} ] }, "ModifyDBClusterParameterGroup":{ "name":"ModifyDBClusterParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBClusterParameterGroupMessage"}, "output":{ "shape":"DBClusterParameterGroupNameMessage", "resultWrapper":"ModifyDBClusterParameterGroupResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"InvalidDBParameterGroupStateFault"} ] }, "ModifyDBClusterSnapshotAttribute":{ "name":"ModifyDBClusterSnapshotAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBClusterSnapshotAttributeMessage"}, "output":{ "shape":"ModifyDBClusterSnapshotAttributeResult", "resultWrapper":"ModifyDBClusterSnapshotAttributeResult" }, "errors":[ {"shape":"DBClusterSnapshotNotFoundFault"}, {"shape":"InvalidDBClusterSnapshotStateFault"}, {"shape":"SharedSnapshotQuotaExceededFault"} ] }, "ModifyDBInstance":{ "name":"ModifyDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBInstanceMessage"}, "output":{ "shape":"ModifyDBInstanceResult", "resultWrapper":"ModifyDBInstanceResult" }, "errors":[ {"shape":"InvalidDBInstanceStateFault"}, {"shape":"InvalidDBSecurityGroupStateFault"}, {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"}, {"shape":"DBUpgradeDependencyFailureFault"}, {"shape":"StorageTypeNotSupportedFault"}, {"shape":"AuthorizationNotFoundFault"}, {"shape":"CertificateNotFoundFault"}, {"shape":"DomainNotFoundFault"} ] }, "ModifyDBParameterGroup":{ "name":"ModifyDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBParameterGroupMessage"}, "output":{ "shape":"DBParameterGroupNameMessage", "resultWrapper":"ModifyDBParameterGroupResult" }, "errors":[ {"shape":"DBParameterGroupNotFoundFault"}, {"shape":"InvalidDBParameterGroupStateFault"} ] }, "ModifyDBSnapshotAttribute":{ "name":"ModifyDBSnapshotAttribute", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBSnapshotAttributeMessage"}, "output":{ "shape":"ModifyDBSnapshotAttributeResult", "resultWrapper":"ModifyDBSnapshotAttributeResult" }, "errors":[ {"shape":"DBSnapshotNotFoundFault"}, {"shape":"InvalidDBSnapshotStateFault"}, {"shape":"SharedSnapshotQuotaExceededFault"} ] }, "ModifyDBSubnetGroup":{ "name":"ModifyDBSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDBSubnetGroupMessage"}, "output":{ "shape":"ModifyDBSubnetGroupResult", "resultWrapper":"ModifyDBSubnetGroupResult" }, "errors":[ {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetQuotaExceededFault"}, {"shape":"SubnetAlreadyInUse"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"} ] }, "ModifyEventSubscription":{ "name":"ModifyEventSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyEventSubscriptionMessage"}, "output":{ "shape":"ModifyEventSubscriptionResult", "resultWrapper":"ModifyEventSubscriptionResult" }, "errors":[ {"shape":"EventSubscriptionQuotaExceededFault"}, {"shape":"SubscriptionNotFoundFault"}, {"shape":"SNSInvalidTopicFault"}, {"shape":"SNSNoAuthorizationFault"}, {"shape":"SNSTopicArnNotFoundFault"}, {"shape":"SubscriptionCategoryNotFoundFault"} ] }, "ModifyOptionGroup":{ "name":"ModifyOptionGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyOptionGroupMessage"}, "output":{ "shape":"ModifyOptionGroupResult", "resultWrapper":"ModifyOptionGroupResult" }, "errors":[ {"shape":"InvalidOptionGroupStateFault"}, {"shape":"OptionGroupNotFoundFault"} ] }, "PromoteReadReplica":{ "name":"PromoteReadReplica", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PromoteReadReplicaMessage"}, "output":{ "shape":"PromoteReadReplicaResult", "resultWrapper":"PromoteReadReplicaResult" }, "errors":[ {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBInstanceNotFoundFault"} ] }, "PromoteReadReplicaDBCluster":{ "name":"PromoteReadReplicaDBCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PromoteReadReplicaDBClusterMessage"}, "output":{ "shape":"PromoteReadReplicaDBClusterResult", "resultWrapper":"PromoteReadReplicaDBClusterResult" }, "errors":[ {"shape":"DBClusterNotFoundFault"}, {"shape":"InvalidDBClusterStateFault"} ] }, "PurchaseReservedDBInstancesOffering":{ "name":"PurchaseReservedDBInstancesOffering", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PurchaseReservedDBInstancesOfferingMessage"}, "output":{ "shape":"PurchaseReservedDBInstancesOfferingResult", "resultWrapper":"PurchaseReservedDBInstancesOfferingResult" }, "errors":[ {"shape":"ReservedDBInstancesOfferingNotFoundFault"}, {"shape":"ReservedDBInstanceAlreadyExistsFault"}, {"shape":"ReservedDBInstanceQuotaExceededFault"} ] }, "RebootDBInstance":{ "name":"RebootDBInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RebootDBInstanceMessage"}, "output":{ "shape":"RebootDBInstanceResult", "resultWrapper":"RebootDBInstanceResult" }, "errors":[ {"shape":"InvalidDBInstanceStateFault"}, {"shape":"DBInstanceNotFoundFault"} ] }, "RemoveRoleFromDBCluster":{ "name":"RemoveRoleFromDBCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveRoleFromDBClusterMessage"}, "errors":[ {"shape":"DBClusterNotFoundFault"}, {"shape":"DBClusterRoleNotFoundFault"}, {"shape":"InvalidDBClusterStateFault"} ] }, "RemoveSourceIdentifierFromSubscription":{ "name":"RemoveSourceIdentifierFromSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveSourceIdentifierFromSubscriptionMessage"}, "output":{ "shape":"RemoveSourceIdentifierFromSubscriptionResult", "resultWrapper":"RemoveSourceIdentifierFromSubscriptionResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"}, {"shape":"SourceNotFoundFault"} ] }, "RemoveTagsFromResource":{ "name":"RemoveTagsFromResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsFromResourceMessage"}, "errors":[ {"shape":"DBInstanceNotFoundFault"}, {"shape":"DBSnapshotNotFoundFault"} ] }, "ResetDBClusterParameterGroup":{ "name":"ResetDBClusterParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetDBClusterParameterGroupMessage"}, "output":{ "shape":"DBClusterParameterGroupNameMessage", "resultWrapper":"ResetDBClusterParameterGroupResult" }, "errors":[ {"shape":"InvalidDBParameterGroupStateFault"}, {"shape":"DBParameterGroupNotFoundFault"} ] }, "ResetDBParameterGroup":{ "name":"ResetDBParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetDBParameterGroupMessage"}, "output":{ "shape":"DBParameterGroupNameMessage", "resultWrapper":"ResetDBParameterGroupResult" }, "errors":[ {"shape":"InvalidDBParameterGroupStateFault"}, {"shape":"DBParameterGroupNotFoundFault"} ] }, "RestoreDBClusterFromS3":{ "name":"RestoreDBClusterFromS3", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreDBClusterFromS3Message"}, "output":{ "shape":"RestoreDBClusterFromS3Result", "resultWrapper":"RestoreDBClusterFromS3Result" }, "errors":[ {"shape":"DBClusterAlreadyExistsFault"}, {"shape":"DBClusterQuotaExceededFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidDBClusterStateFault"}, {"shape":"InvalidDBSubnetGroupStateFault"}, {"shape":"InvalidSubnet"}, {"shape":"InvalidS3BucketFault"}, {"shape":"DBClusterParameterGroupNotFoundFault"}, {"shape":"KMSKeyNotAccessibleFault"}, {"shape":"DBClusterNotFoundFault"}, {"shape":"InsufficientStorageClusterCapacityFault"} ] }, "RestoreDBClusterFromSnapshot":{ "name":"RestoreDBClusterFromSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreDBClusterFromSnapshotMessage"}, "output":{ "shape":"RestoreDBClusterFromSnapshotResult", "resultWrapper":"RestoreDBClusterFromSnapshotResult" }, "errors":[ {"shape":"DBClusterAlreadyExistsFault"}, {"shape":"DBClusterQuotaExceededFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSnapshotNotFoundFault"}, {"shape":"DBClusterSnapshotNotFoundFault"}, {"shape":"InsufficientDBClusterCapacityFault"}, {"shape":"InsufficientStorageClusterCapacityFault"}, {"shape":"InvalidDBSnapshotStateFault"}, {"shape":"InvalidDBClusterSnapshotStateFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidRestoreFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"InvalidSubnet"}, {"shape":"OptionGroupNotFoundFault"}, {"shape":"KMSKeyNotAccessibleFault"} ] }, "RestoreDBClusterToPointInTime":{ "name":"RestoreDBClusterToPointInTime", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreDBClusterToPointInTimeMessage"}, "output":{ "shape":"RestoreDBClusterToPointInTimeResult", "resultWrapper":"RestoreDBClusterToPointInTimeResult" }, "errors":[ {"shape":"DBClusterAlreadyExistsFault"}, {"shape":"DBClusterQuotaExceededFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBClusterNotFoundFault"}, {"shape":"DBClusterSnapshotNotFoundFault"}, {"shape":"InsufficientDBClusterCapacityFault"}, {"shape":"InsufficientStorageClusterCapacityFault"}, {"shape":"InvalidDBSnapshotStateFault"}, {"shape":"InvalidDBClusterSnapshotStateFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidRestoreFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"InvalidSubnet"}, {"shape":"OptionGroupNotFoundFault"}, {"shape":"KMSKeyNotAccessibleFault"} ] }, "RestoreDBInstanceFromDBSnapshot":{ "name":"RestoreDBInstanceFromDBSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreDBInstanceFromDBSnapshotMessage"}, "output":{ "shape":"RestoreDBInstanceFromDBSnapshotResult", "resultWrapper":"RestoreDBInstanceFromDBSnapshotResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"DBSnapshotNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"InvalidDBSnapshotStateFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidRestoreFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"}, {"shape":"StorageTypeNotSupportedFault"}, {"shape":"AuthorizationNotFoundFault"}, {"shape":"KMSKeyNotAccessibleFault"}, {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"DomainNotFoundFault"} ] }, "RestoreDBInstanceToPointInTime":{ "name":"RestoreDBInstanceToPointInTime", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreDBInstanceToPointInTimeMessage"}, "output":{ "shape":"RestoreDBInstanceToPointInTimeResult", "resultWrapper":"RestoreDBInstanceToPointInTimeResult" }, "errors":[ {"shape":"DBInstanceAlreadyExistsFault"}, {"shape":"DBInstanceNotFoundFault"}, {"shape":"InstanceQuotaExceededFault"}, {"shape":"InsufficientDBInstanceCapacityFault"}, {"shape":"InvalidDBInstanceStateFault"}, {"shape":"PointInTimeRestoreNotEnabledFault"}, {"shape":"StorageQuotaExceededFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidRestoreFault"}, {"shape":"DBSubnetGroupNotFoundFault"}, {"shape":"DBSubnetGroupDoesNotCoverEnoughAZs"}, {"shape":"InvalidSubnet"}, {"shape":"ProvisionedIopsNotAvailableInAZFault"}, {"shape":"OptionGroupNotFoundFault"}, {"shape":"StorageTypeNotSupportedFault"}, {"shape":"AuthorizationNotFoundFault"}, {"shape":"KMSKeyNotAccessibleFault"}, {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"DomainNotFoundFault"} ] }, "RevokeDBSecurityGroupIngress":{ "name":"RevokeDBSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RevokeDBSecurityGroupIngressMessage"}, "output":{ "shape":"RevokeDBSecurityGroupIngressResult", "resultWrapper":"RevokeDBSecurityGroupIngressResult" }, "errors":[ {"shape":"DBSecurityGroupNotFoundFault"}, {"shape":"AuthorizationNotFoundFault"}, {"shape":"InvalidDBSecurityGroupStateFault"} ] } }, "shapes":{ "AccountAttributesMessage":{ "type":"structure", "members":{ "AccountQuotas":{"shape":"AccountQuotaList"} } }, "AccountQuota":{ "type":"structure", "members":{ "AccountQuotaName":{"shape":"String"}, "Used":{"shape":"Long"}, "Max":{"shape":"Long"} }, "wrapper":true }, "AccountQuotaList":{ "type":"list", "member":{ "shape":"AccountQuota", "locationName":"AccountQuota" } }, "AddRoleToDBClusterMessage":{ "type":"structure", "required":[ "DBClusterIdentifier", "RoleArn" ], "members":{ "DBClusterIdentifier":{"shape":"String"}, "RoleArn":{"shape":"String"} } }, "AddSourceIdentifierToSubscriptionMessage":{ "type":"structure", "required":[ "SubscriptionName", "SourceIdentifier" ], "members":{ "SubscriptionName":{"shape":"String"}, "SourceIdentifier":{"shape":"String"} } }, "AddSourceIdentifierToSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "AddTagsToResourceMessage":{ "type":"structure", "required":[ "ResourceName", "Tags" ], "members":{ "ResourceName":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "ApplyMethod":{ "type":"string", "enum":[ "immediate", "pending-reboot" ] }, "ApplyPendingMaintenanceActionMessage":{ "type":"structure", "required":[ "ResourceIdentifier", "ApplyAction", "OptInType" ], "members":{ "ResourceIdentifier":{"shape":"String"}, "ApplyAction":{"shape":"String"}, "OptInType":{"shape":"String"} } }, "ApplyPendingMaintenanceActionResult":{ "type":"structure", "members":{ "ResourcePendingMaintenanceActions":{"shape":"ResourcePendingMaintenanceActions"} } }, "AttributeValueList":{ "type":"list", "member":{ "shape":"String", "locationName":"AttributeValue" } }, "AuthorizationAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "AuthorizationNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "AuthorizationQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "AuthorizeDBSecurityGroupIngressMessage":{ "type":"structure", "required":["DBSecurityGroupName"], "members":{ "DBSecurityGroupName":{"shape":"String"}, "CIDRIP":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupId":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "AuthorizeDBSecurityGroupIngressResult":{ "type":"structure", "members":{ "DBSecurityGroup":{"shape":"DBSecurityGroup"} } }, "AvailabilityZone":{ "type":"structure", "members":{ "Name":{"shape":"String"} }, "wrapper":true }, "AvailabilityZoneList":{ "type":"list", "member":{ "shape":"AvailabilityZone", "locationName":"AvailabilityZone" } }, "AvailabilityZones":{ "type":"list", "member":{ "shape":"String", "locationName":"AvailabilityZone" } }, "Boolean":{"type":"boolean"}, "BooleanOptional":{"type":"boolean"}, "Certificate":{ "type":"structure", "members":{ "CertificateIdentifier":{"shape":"String"}, "CertificateType":{"shape":"String"}, "Thumbprint":{"shape":"String"}, "ValidFrom":{"shape":"TStamp"}, "ValidTill":{"shape":"TStamp"}, "CertificateArn":{"shape":"String"} }, "wrapper":true }, "CertificateList":{ "type":"list", "member":{ "shape":"Certificate", "locationName":"Certificate" } }, "CertificateMessage":{ "type":"structure", "members":{ "Certificates":{"shape":"CertificateList"}, "Marker":{"shape":"String"} } }, "CertificateNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"CertificateNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "CharacterSet":{ "type":"structure", "members":{ "CharacterSetName":{"shape":"String"}, "CharacterSetDescription":{"shape":"String"} } }, "CopyDBClusterParameterGroupMessage":{ "type":"structure", "required":[ "SourceDBClusterParameterGroupIdentifier", "TargetDBClusterParameterGroupIdentifier", "TargetDBClusterParameterGroupDescription" ], "members":{ "SourceDBClusterParameterGroupIdentifier":{"shape":"String"}, "TargetDBClusterParameterGroupIdentifier":{"shape":"String"}, "TargetDBClusterParameterGroupDescription":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CopyDBClusterParameterGroupResult":{ "type":"structure", "members":{ "DBClusterParameterGroup":{"shape":"DBClusterParameterGroup"} } }, "CopyDBClusterSnapshotMessage":{ "type":"structure", "required":[ "SourceDBClusterSnapshotIdentifier", "TargetDBClusterSnapshotIdentifier" ], "members":{ "SourceDBClusterSnapshotIdentifier":{"shape":"String"}, "TargetDBClusterSnapshotIdentifier":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CopyDBClusterSnapshotResult":{ "type":"structure", "members":{ "DBClusterSnapshot":{"shape":"DBClusterSnapshot"} } }, "CopyDBParameterGroupMessage":{ "type":"structure", "required":[ "SourceDBParameterGroupIdentifier", "TargetDBParameterGroupIdentifier", "TargetDBParameterGroupDescription" ], "members":{ "SourceDBParameterGroupIdentifier":{"shape":"String"}, "TargetDBParameterGroupIdentifier":{"shape":"String"}, "TargetDBParameterGroupDescription":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CopyDBParameterGroupResult":{ "type":"structure", "members":{ "DBParameterGroup":{"shape":"DBParameterGroup"} } }, "CopyDBSnapshotMessage":{ "type":"structure", "required":[ "SourceDBSnapshotIdentifier", "TargetDBSnapshotIdentifier" ], "members":{ "SourceDBSnapshotIdentifier":{"shape":"String"}, "TargetDBSnapshotIdentifier":{"shape":"String"}, "KmsKeyId":{"shape":"String"}, "Tags":{"shape":"TagList"}, "CopyTags":{"shape":"BooleanOptional"} } }, "CopyDBSnapshotResult":{ "type":"structure", "members":{ "DBSnapshot":{"shape":"DBSnapshot"} } }, "CopyOptionGroupMessage":{ "type":"structure", "required":[ "SourceOptionGroupIdentifier", "TargetOptionGroupIdentifier", "TargetOptionGroupDescription" ], "members":{ "SourceOptionGroupIdentifier":{"shape":"String"}, "TargetOptionGroupIdentifier":{"shape":"String"}, "TargetOptionGroupDescription":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CopyOptionGroupResult":{ "type":"structure", "members":{ "OptionGroup":{"shape":"OptionGroup"} } }, "CreateDBClusterMessage":{ "type":"structure", "required":[ "DBClusterIdentifier", "Engine" ], "members":{ "AvailabilityZones":{"shape":"AvailabilityZones"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "CharacterSetName":{"shape":"String"}, "DatabaseName":{"shape":"String"}, "DBClusterIdentifier":{"shape":"String"}, "DBClusterParameterGroupName":{"shape":"String"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "DBSubnetGroupName":{"shape":"String"}, "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "MasterUsername":{"shape":"String"}, "MasterUserPassword":{"shape":"String"}, "OptionGroupName":{"shape":"String"}, "PreferredBackupWindow":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"}, "ReplicationSourceIdentifier":{"shape":"String"}, "Tags":{"shape":"TagList"}, "StorageEncrypted":{"shape":"BooleanOptional"}, "KmsKeyId":{"shape":"String"} } }, "CreateDBClusterParameterGroupMessage":{ "type":"structure", "required":[ "DBClusterParameterGroupName", "DBParameterGroupFamily", "Description" ], "members":{ "DBClusterParameterGroupName":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "Description":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateDBClusterParameterGroupResult":{ "type":"structure", "members":{ "DBClusterParameterGroup":{"shape":"DBClusterParameterGroup"} } }, "CreateDBClusterResult":{ "type":"structure", "members":{ "DBCluster":{"shape":"DBCluster"} } }, "CreateDBClusterSnapshotMessage":{ "type":"structure", "required":[ "DBClusterSnapshotIdentifier", "DBClusterIdentifier" ], "members":{ "DBClusterSnapshotIdentifier":{"shape":"String"}, "DBClusterIdentifier":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateDBClusterSnapshotResult":{ "type":"structure", "members":{ "DBClusterSnapshot":{"shape":"DBClusterSnapshot"} } }, "CreateDBInstanceMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "DBInstanceClass", "Engine" ], "members":{ "DBName":{"shape":"String"}, "DBInstanceIdentifier":{"shape":"String"}, "AllocatedStorage":{"shape":"IntegerOptional"}, "DBInstanceClass":{"shape":"String"}, "Engine":{"shape":"String"}, "MasterUsername":{"shape":"String"}, "MasterUserPassword":{"shape":"String"}, "DBSecurityGroups":{"shape":"DBSecurityGroupNameList"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroupName":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"}, "DBParameterGroupName":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "PreferredBackupWindow":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "MultiAZ":{"shape":"BooleanOptional"}, "EngineVersion":{"shape":"String"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "LicenseModel":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "CharacterSetName":{"shape":"String"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "Tags":{"shape":"TagList"}, "DBClusterIdentifier":{"shape":"String"}, "StorageType":{"shape":"String"}, "TdeCredentialArn":{"shape":"String"}, "TdeCredentialPassword":{"shape":"String"}, "StorageEncrypted":{"shape":"BooleanOptional"}, "KmsKeyId":{"shape":"String"}, "Domain":{"shape":"String"}, "CopyTagsToSnapshot":{"shape":"BooleanOptional"}, "MonitoringInterval":{"shape":"IntegerOptional"}, "MonitoringRoleArn":{"shape":"String"}, "DomainIAMRoleName":{"shape":"String"}, "PromotionTier":{"shape":"IntegerOptional"}, "Timezone":{"shape":"String"} } }, "CreateDBInstanceReadReplicaMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "SourceDBInstanceIdentifier" ], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "SourceDBInstanceIdentifier":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "AvailabilityZone":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "Tags":{"shape":"TagList"}, "DBSubnetGroupName":{"shape":"String"}, "StorageType":{"shape":"String"}, "CopyTagsToSnapshot":{"shape":"BooleanOptional"}, "MonitoringInterval":{"shape":"IntegerOptional"}, "MonitoringRoleArn":{"shape":"String"} } }, "CreateDBInstanceReadReplicaResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "CreateDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "CreateDBParameterGroupMessage":{ "type":"structure", "required":[ "DBParameterGroupName", "DBParameterGroupFamily", "Description" ], "members":{ "DBParameterGroupName":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "Description":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateDBParameterGroupResult":{ "type":"structure", "members":{ "DBParameterGroup":{"shape":"DBParameterGroup"} } }, "CreateDBSecurityGroupMessage":{ "type":"structure", "required":[ "DBSecurityGroupName", "DBSecurityGroupDescription" ], "members":{ "DBSecurityGroupName":{"shape":"String"}, "DBSecurityGroupDescription":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateDBSecurityGroupResult":{ "type":"structure", "members":{ "DBSecurityGroup":{"shape":"DBSecurityGroup"} } }, "CreateDBSnapshotMessage":{ "type":"structure", "required":[ "DBSnapshotIdentifier", "DBInstanceIdentifier" ], "members":{ "DBSnapshotIdentifier":{"shape":"String"}, "DBInstanceIdentifier":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateDBSnapshotResult":{ "type":"structure", "members":{ "DBSnapshot":{"shape":"DBSnapshot"} } }, "CreateDBSubnetGroupMessage":{ "type":"structure", "required":[ "DBSubnetGroupName", "DBSubnetGroupDescription", "SubnetIds" ], "members":{ "DBSubnetGroupName":{"shape":"String"}, "DBSubnetGroupDescription":{"shape":"String"}, "SubnetIds":{"shape":"SubnetIdentifierList"}, "Tags":{"shape":"TagList"} } }, "CreateDBSubnetGroupResult":{ "type":"structure", "members":{ "DBSubnetGroup":{"shape":"DBSubnetGroup"} } }, "CreateEventSubscriptionMessage":{ "type":"structure", "required":[ "SubscriptionName", "SnsTopicArn" ], "members":{ "SubscriptionName":{"shape":"String"}, "SnsTopicArn":{"shape":"String"}, "SourceType":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"}, "SourceIds":{"shape":"SourceIdsList"}, "Enabled":{"shape":"BooleanOptional"}, "Tags":{"shape":"TagList"} } }, "CreateEventSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "CreateOptionGroupMessage":{ "type":"structure", "required":[ "OptionGroupName", "EngineName", "MajorEngineVersion", "OptionGroupDescription" ], "members":{ "OptionGroupName":{"shape":"String"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "OptionGroupDescription":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateOptionGroupResult":{ "type":"structure", "members":{ "OptionGroup":{"shape":"OptionGroup"} } }, "DBCluster":{ "type":"structure", "members":{ "AllocatedStorage":{"shape":"IntegerOptional"}, "AvailabilityZones":{"shape":"AvailabilityZones"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "CharacterSetName":{"shape":"String"}, "DatabaseName":{"shape":"String"}, "DBClusterIdentifier":{"shape":"String"}, "DBClusterParameterGroup":{"shape":"String"}, "DBSubnetGroup":{"shape":"String"}, "Status":{"shape":"String"}, "PercentProgress":{"shape":"String"}, "EarliestRestorableTime":{"shape":"TStamp"}, "Endpoint":{"shape":"String"}, "ReaderEndpoint":{"shape":"String"}, "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "LatestRestorableTime":{"shape":"TStamp"}, "Port":{"shape":"IntegerOptional"}, "MasterUsername":{"shape":"String"}, "DBClusterOptionGroupMemberships":{"shape":"DBClusterOptionGroupMemberships"}, "PreferredBackupWindow":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"}, "ReplicationSourceIdentifier":{"shape":"String"}, "ReadReplicaIdentifiers":{"shape":"ReadReplicaIdentifierList"}, "DBClusterMembers":{"shape":"DBClusterMemberList"}, "VpcSecurityGroups":{"shape":"VpcSecurityGroupMembershipList"}, "HostedZoneId":{"shape":"String"}, "StorageEncrypted":{"shape":"Boolean"}, "KmsKeyId":{"shape":"String"}, "DbClusterResourceId":{"shape":"String"}, "DBClusterArn":{"shape":"String"}, "AssociatedRoles":{"shape":"DBClusterRoles"} }, "wrapper":true }, "DBClusterAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBClusterAlreadyExistsFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBClusterList":{ "type":"list", "member":{ "shape":"DBCluster", "locationName":"DBCluster" } }, "DBClusterMember":{ "type":"structure", "members":{ "DBInstanceIdentifier":{"shape":"String"}, "IsClusterWriter":{"shape":"Boolean"}, "DBClusterParameterGroupStatus":{"shape":"String"}, "PromotionTier":{"shape":"IntegerOptional"} }, "wrapper":true }, "DBClusterMemberList":{ "type":"list", "member":{ "shape":"DBClusterMember", "locationName":"DBClusterMember" } }, "DBClusterMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBClusters":{"shape":"DBClusterList"} } }, "DBClusterNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBClusterNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBClusterOptionGroupMemberships":{ "type":"list", "member":{ "shape":"DBClusterOptionGroupStatus", "locationName":"DBClusterOptionGroup" } }, "DBClusterOptionGroupStatus":{ "type":"structure", "members":{ "DBClusterOptionGroupName":{"shape":"String"}, "Status":{"shape":"String"} } }, "DBClusterParameterGroup":{ "type":"structure", "members":{ "DBClusterParameterGroupName":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "Description":{"shape":"String"}, "DBClusterParameterGroupArn":{"shape":"String"} }, "wrapper":true }, "DBClusterParameterGroupDetails":{ "type":"structure", "members":{ "Parameters":{"shape":"ParametersList"}, "Marker":{"shape":"String"} } }, "DBClusterParameterGroupList":{ "type":"list", "member":{ "shape":"DBClusterParameterGroup", "locationName":"DBClusterParameterGroup" } }, "DBClusterParameterGroupNameMessage":{ "type":"structure", "members":{ "DBClusterParameterGroupName":{"shape":"String"} } }, "DBClusterParameterGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBClusterParameterGroupNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBClusterParameterGroupsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBClusterParameterGroups":{"shape":"DBClusterParameterGroupList"} } }, "DBClusterQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBClusterQuotaExceededFault", "httpStatusCode":403, "senderFault":true }, "exception":true }, "DBClusterRole":{ "type":"structure", "members":{ "RoleArn":{"shape":"String"}, "Status":{"shape":"String"} } }, "DBClusterRoleAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBClusterRoleAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBClusterRoleNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBClusterRoleNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBClusterRoleQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBClusterRoleQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBClusterRoles":{ "type":"list", "member":{ "shape":"DBClusterRole", "locationName":"DBClusterRole" } }, "DBClusterSnapshot":{ "type":"structure", "members":{ "AvailabilityZones":{"shape":"AvailabilityZones"}, "DBClusterSnapshotIdentifier":{"shape":"String"}, "DBClusterIdentifier":{"shape":"String"}, "SnapshotCreateTime":{"shape":"TStamp"}, "Engine":{"shape":"String"}, "AllocatedStorage":{"shape":"Integer"}, "Status":{"shape":"String"}, "Port":{"shape":"Integer"}, "VpcId":{"shape":"String"}, "ClusterCreateTime":{"shape":"TStamp"}, "MasterUsername":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "LicenseModel":{"shape":"String"}, "SnapshotType":{"shape":"String"}, "PercentProgress":{"shape":"Integer"}, "StorageEncrypted":{"shape":"Boolean"}, "KmsKeyId":{"shape":"String"}, "DBClusterSnapshotArn":{"shape":"String"} }, "wrapper":true }, "DBClusterSnapshotAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBClusterSnapshotAlreadyExistsFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBClusterSnapshotAttribute":{ "type":"structure", "members":{ "AttributeName":{"shape":"String"}, "AttributeValues":{"shape":"AttributeValueList"} } }, "DBClusterSnapshotAttributeList":{ "type":"list", "member":{ "shape":"DBClusterSnapshotAttribute", "locationName":"DBClusterSnapshotAttribute" } }, "DBClusterSnapshotAttributesResult":{ "type":"structure", "members":{ "DBClusterSnapshotIdentifier":{"shape":"String"}, "DBClusterSnapshotAttributes":{"shape":"DBClusterSnapshotAttributeList"} }, "wrapper":true }, "DBClusterSnapshotList":{ "type":"list", "member":{ "shape":"DBClusterSnapshot", "locationName":"DBClusterSnapshot" } }, "DBClusterSnapshotMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBClusterSnapshots":{"shape":"DBClusterSnapshotList"} } }, "DBClusterSnapshotNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBClusterSnapshotNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBEngineVersion":{ "type":"structure", "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "DBEngineDescription":{"shape":"String"}, "DBEngineVersionDescription":{"shape":"String"}, "DefaultCharacterSet":{"shape":"CharacterSet"}, "SupportedCharacterSets":{"shape":"SupportedCharacterSetsList"}, "ValidUpgradeTarget":{"shape":"ValidUpgradeTargetList"}, "SupportedTimezones":{"shape":"SupportedTimezonesList"} } }, "DBEngineVersionList":{ "type":"list", "member":{ "shape":"DBEngineVersion", "locationName":"DBEngineVersion" } }, "DBEngineVersionMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBEngineVersions":{"shape":"DBEngineVersionList"} } }, "DBInstance":{ "type":"structure", "members":{ "DBInstanceIdentifier":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Engine":{"shape":"String"}, "DBInstanceStatus":{"shape":"String"}, "MasterUsername":{"shape":"String"}, "DBName":{"shape":"String"}, "Endpoint":{"shape":"Endpoint"}, "AllocatedStorage":{"shape":"Integer"}, "InstanceCreateTime":{"shape":"TStamp"}, "PreferredBackupWindow":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"Integer"}, "DBSecurityGroups":{"shape":"DBSecurityGroupMembershipList"}, "VpcSecurityGroups":{"shape":"VpcSecurityGroupMembershipList"}, "DBParameterGroups":{"shape":"DBParameterGroupStatusList"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroup":{"shape":"DBSubnetGroup"}, "PreferredMaintenanceWindow":{"shape":"String"}, "PendingModifiedValues":{"shape":"PendingModifiedValues"}, "LatestRestorableTime":{"shape":"TStamp"}, "MultiAZ":{"shape":"Boolean"}, "EngineVersion":{"shape":"String"}, "AutoMinorVersionUpgrade":{"shape":"Boolean"}, "ReadReplicaSourceDBInstanceIdentifier":{"shape":"String"}, "ReadReplicaDBInstanceIdentifiers":{"shape":"ReadReplicaDBInstanceIdentifierList"}, "LicenseModel":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupMemberships":{"shape":"OptionGroupMembershipList"}, "CharacterSetName":{"shape":"String"}, "SecondaryAvailabilityZone":{"shape":"String"}, "PubliclyAccessible":{"shape":"Boolean"}, "StatusInfos":{"shape":"DBInstanceStatusInfoList"}, "StorageType":{"shape":"String"}, "TdeCredentialArn":{"shape":"String"}, "DbInstancePort":{"shape":"Integer"}, "DBClusterIdentifier":{"shape":"String"}, "StorageEncrypted":{"shape":"Boolean"}, "KmsKeyId":{"shape":"String"}, "DbiResourceId":{"shape":"String"}, "CACertificateIdentifier":{"shape":"String"}, "DomainMemberships":{"shape":"DomainMembershipList"}, "CopyTagsToSnapshot":{"shape":"Boolean"}, "MonitoringInterval":{"shape":"IntegerOptional"}, "EnhancedMonitoringResourceArn":{"shape":"String"}, "MonitoringRoleArn":{"shape":"String"}, "PromotionTier":{"shape":"IntegerOptional"}, "DBInstanceArn":{"shape":"String"}, "Timezone":{"shape":"String"} }, "wrapper":true }, "DBInstanceAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBInstanceAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBInstanceList":{ "type":"list", "member":{ "shape":"DBInstance", "locationName":"DBInstance" } }, "DBInstanceMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBInstances":{"shape":"DBInstanceList"} } }, "DBInstanceNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBInstanceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBInstanceStatusInfo":{ "type":"structure", "members":{ "StatusType":{"shape":"String"}, "Normal":{"shape":"Boolean"}, "Status":{"shape":"String"}, "Message":{"shape":"String"} } }, "DBInstanceStatusInfoList":{ "type":"list", "member":{ "shape":"DBInstanceStatusInfo", "locationName":"DBInstanceStatusInfo" } }, "DBLogFileNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBLogFileNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBParameterGroup":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "Description":{"shape":"String"}, "DBParameterGroupArn":{"shape":"String"} }, "wrapper":true }, "DBParameterGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBParameterGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBParameterGroupDetails":{ "type":"structure", "members":{ "Parameters":{"shape":"ParametersList"}, "Marker":{"shape":"String"} } }, "DBParameterGroupList":{ "type":"list", "member":{ "shape":"DBParameterGroup", "locationName":"DBParameterGroup" } }, "DBParameterGroupNameMessage":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"} } }, "DBParameterGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBParameterGroupNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBParameterGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBParameterGroupQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBParameterGroupStatus":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"}, "ParameterApplyStatus":{"shape":"String"} } }, "DBParameterGroupStatusList":{ "type":"list", "member":{ "shape":"DBParameterGroupStatus", "locationName":"DBParameterGroup" } }, "DBParameterGroupsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBParameterGroups":{"shape":"DBParameterGroupList"} } }, "DBSecurityGroup":{ "type":"structure", "members":{ "OwnerId":{"shape":"String"}, "DBSecurityGroupName":{"shape":"String"}, "DBSecurityGroupDescription":{"shape":"String"}, "VpcId":{"shape":"String"}, "EC2SecurityGroups":{"shape":"EC2SecurityGroupList"}, "IPRanges":{"shape":"IPRangeList"}, "DBSecurityGroupArn":{"shape":"String"} }, "wrapper":true }, "DBSecurityGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSecurityGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSecurityGroupMembership":{ "type":"structure", "members":{ "DBSecurityGroupName":{"shape":"String"}, "Status":{"shape":"String"} } }, "DBSecurityGroupMembershipList":{ "type":"list", "member":{ "shape":"DBSecurityGroupMembership", "locationName":"DBSecurityGroup" } }, "DBSecurityGroupMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBSecurityGroups":{"shape":"DBSecurityGroups"} } }, "DBSecurityGroupNameList":{ "type":"list", "member":{ "shape":"String", "locationName":"DBSecurityGroupName" } }, "DBSecurityGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSecurityGroupNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBSecurityGroupNotSupportedFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSecurityGroupNotSupported", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSecurityGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"QuotaExceeded.DBSecurityGroup", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSecurityGroups":{ "type":"list", "member":{ "shape":"DBSecurityGroup", "locationName":"DBSecurityGroup" } }, "DBSnapshot":{ "type":"structure", "members":{ "DBSnapshotIdentifier":{"shape":"String"}, "DBInstanceIdentifier":{"shape":"String"}, "SnapshotCreateTime":{"shape":"TStamp"}, "Engine":{"shape":"String"}, "AllocatedStorage":{"shape":"Integer"}, "Status":{"shape":"String"}, "Port":{"shape":"Integer"}, "AvailabilityZone":{"shape":"String"}, "VpcId":{"shape":"String"}, "InstanceCreateTime":{"shape":"TStamp"}, "MasterUsername":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "LicenseModel":{"shape":"String"}, "SnapshotType":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "PercentProgress":{"shape":"Integer"}, "SourceRegion":{"shape":"String"}, "SourceDBSnapshotIdentifier":{"shape":"String"}, "StorageType":{"shape":"String"}, "TdeCredentialArn":{"shape":"String"}, "Encrypted":{"shape":"Boolean"}, "KmsKeyId":{"shape":"String"}, "DBSnapshotArn":{"shape":"String"}, "Timezone":{"shape":"String"} }, "wrapper":true }, "DBSnapshotAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSnapshotAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSnapshotAttribute":{ "type":"structure", "members":{ "AttributeName":{"shape":"String"}, "AttributeValues":{"shape":"AttributeValueList"} }, "wrapper":true }, "DBSnapshotAttributeList":{ "type":"list", "member":{ "shape":"DBSnapshotAttribute", "locationName":"DBSnapshotAttribute" } }, "DBSnapshotAttributesResult":{ "type":"structure", "members":{ "DBSnapshotIdentifier":{"shape":"String"}, "DBSnapshotAttributes":{"shape":"DBSnapshotAttributeList"} }, "wrapper":true }, "DBSnapshotList":{ "type":"list", "member":{ "shape":"DBSnapshot", "locationName":"DBSnapshot" } }, "DBSnapshotMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBSnapshots":{"shape":"DBSnapshotList"} } }, "DBSnapshotNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSnapshotNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBSubnetGroup":{ "type":"structure", "members":{ "DBSubnetGroupName":{"shape":"String"}, "DBSubnetGroupDescription":{"shape":"String"}, "VpcId":{"shape":"String"}, "SubnetGroupStatus":{"shape":"String"}, "Subnets":{"shape":"SubnetList"}, "DBSubnetGroupArn":{"shape":"String"} }, "wrapper":true }, "DBSubnetGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSubnetGroupDoesNotCoverEnoughAZs":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupDoesNotCoverEnoughAZs", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSubnetGroupMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "DBSubnetGroups":{"shape":"DBSubnetGroups"} } }, "DBSubnetGroupNotAllowedFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupNotAllowedFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSubnetGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "DBSubnetGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetGroupQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBSubnetGroups":{ "type":"list", "member":{ "shape":"DBSubnetGroup", "locationName":"DBSubnetGroup" } }, "DBSubnetQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBSubnetQuotaExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DBUpgradeDependencyFailureFault":{ "type":"structure", "members":{ }, "error":{ "code":"DBUpgradeDependencyFailure", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DeleteDBClusterMessage":{ "type":"structure", "required":["DBClusterIdentifier"], "members":{ "DBClusterIdentifier":{"shape":"String"}, "SkipFinalSnapshot":{"shape":"Boolean"}, "FinalDBSnapshotIdentifier":{"shape":"String"} } }, "DeleteDBClusterParameterGroupMessage":{ "type":"structure", "required":["DBClusterParameterGroupName"], "members":{ "DBClusterParameterGroupName":{"shape":"String"} } }, "DeleteDBClusterResult":{ "type":"structure", "members":{ "DBCluster":{"shape":"DBCluster"} } }, "DeleteDBClusterSnapshotMessage":{ "type":"structure", "required":["DBClusterSnapshotIdentifier"], "members":{ "DBClusterSnapshotIdentifier":{"shape":"String"} } }, "DeleteDBClusterSnapshotResult":{ "type":"structure", "members":{ "DBClusterSnapshot":{"shape":"DBClusterSnapshot"} } }, "DeleteDBInstanceMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "SkipFinalSnapshot":{"shape":"Boolean"}, "FinalDBSnapshotIdentifier":{"shape":"String"} } }, "DeleteDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "DeleteDBParameterGroupMessage":{ "type":"structure", "required":["DBParameterGroupName"], "members":{ "DBParameterGroupName":{"shape":"String"} } }, "DeleteDBSecurityGroupMessage":{ "type":"structure", "required":["DBSecurityGroupName"], "members":{ "DBSecurityGroupName":{"shape":"String"} } }, "DeleteDBSnapshotMessage":{ "type":"structure", "required":["DBSnapshotIdentifier"], "members":{ "DBSnapshotIdentifier":{"shape":"String"} } }, "DeleteDBSnapshotResult":{ "type":"structure", "members":{ "DBSnapshot":{"shape":"DBSnapshot"} } }, "DeleteDBSubnetGroupMessage":{ "type":"structure", "required":["DBSubnetGroupName"], "members":{ "DBSubnetGroupName":{"shape":"String"} } }, "DeleteEventSubscriptionMessage":{ "type":"structure", "required":["SubscriptionName"], "members":{ "SubscriptionName":{"shape":"String"} } }, "DeleteEventSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "DeleteOptionGroupMessage":{ "type":"structure", "required":["OptionGroupName"], "members":{ "OptionGroupName":{"shape":"String"} } }, "DescribeAccountAttributesMessage":{ "type":"structure", "members":{ } }, "DescribeCertificatesMessage":{ "type":"structure", "members":{ "CertificateIdentifier":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBClusterParameterGroupsMessage":{ "type":"structure", "members":{ "DBClusterParameterGroupName":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBClusterParametersMessage":{ "type":"structure", "required":["DBClusterParameterGroupName"], "members":{ "DBClusterParameterGroupName":{"shape":"String"}, "Source":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBClusterSnapshotAttributesMessage":{ "type":"structure", "required":["DBClusterSnapshotIdentifier"], "members":{ "DBClusterSnapshotIdentifier":{"shape":"String"} } }, "DescribeDBClusterSnapshotAttributesResult":{ "type":"structure", "members":{ "DBClusterSnapshotAttributesResult":{"shape":"DBClusterSnapshotAttributesResult"} } }, "DescribeDBClusterSnapshotsMessage":{ "type":"structure", "members":{ "DBClusterIdentifier":{"shape":"String"}, "DBClusterSnapshotIdentifier":{"shape":"String"}, "SnapshotType":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "IncludeShared":{"shape":"Boolean"}, "IncludePublic":{"shape":"Boolean"} } }, "DescribeDBClustersMessage":{ "type":"structure", "members":{ "DBClusterIdentifier":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBEngineVersionsMessage":{ "type":"structure", "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBParameterGroupFamily":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "DefaultOnly":{"shape":"Boolean"}, "ListSupportedCharacterSets":{"shape":"BooleanOptional"}, "ListSupportedTimezones":{"shape":"BooleanOptional"} } }, "DescribeDBInstancesMessage":{ "type":"structure", "members":{ "DBInstanceIdentifier":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBLogFilesDetails":{ "type":"structure", "members":{ "LogFileName":{"shape":"String"}, "LastWritten":{"shape":"Long"}, "Size":{"shape":"Long"} } }, "DescribeDBLogFilesList":{ "type":"list", "member":{ "shape":"DescribeDBLogFilesDetails", "locationName":"DescribeDBLogFilesDetails" } }, "DescribeDBLogFilesMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "FilenameContains":{"shape":"String"}, "FileLastWritten":{"shape":"Long"}, "FileSize":{"shape":"Long"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBLogFilesResponse":{ "type":"structure", "members":{ "DescribeDBLogFiles":{"shape":"DescribeDBLogFilesList"}, "Marker":{"shape":"String"} } }, "DescribeDBParameterGroupsMessage":{ "type":"structure", "members":{ "DBParameterGroupName":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBParametersMessage":{ "type":"structure", "required":["DBParameterGroupName"], "members":{ "DBParameterGroupName":{"shape":"String"}, "Source":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBSecurityGroupsMessage":{ "type":"structure", "members":{ "DBSecurityGroupName":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDBSnapshotAttributesMessage":{ "type":"structure", "required":["DBSnapshotIdentifier"], "members":{ "DBSnapshotIdentifier":{"shape":"String"} } }, "DescribeDBSnapshotAttributesResult":{ "type":"structure", "members":{ "DBSnapshotAttributesResult":{"shape":"DBSnapshotAttributesResult"} } }, "DescribeDBSnapshotsMessage":{ "type":"structure", "members":{ "DBInstanceIdentifier":{"shape":"String"}, "DBSnapshotIdentifier":{"shape":"String"}, "SnapshotType":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "IncludeShared":{"shape":"Boolean"}, "IncludePublic":{"shape":"Boolean"} } }, "DescribeDBSubnetGroupsMessage":{ "type":"structure", "members":{ "DBSubnetGroupName":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEngineDefaultClusterParametersMessage":{ "type":"structure", "required":["DBParameterGroupFamily"], "members":{ "DBParameterGroupFamily":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEngineDefaultClusterParametersResult":{ "type":"structure", "members":{ "EngineDefaults":{"shape":"EngineDefaults"} } }, "DescribeEngineDefaultParametersMessage":{ "type":"structure", "required":["DBParameterGroupFamily"], "members":{ "DBParameterGroupFamily":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEngineDefaultParametersResult":{ "type":"structure", "members":{ "EngineDefaults":{"shape":"EngineDefaults"} } }, "DescribeEventCategoriesMessage":{ "type":"structure", "members":{ "SourceType":{"shape":"String"}, "Filters":{"shape":"FilterList"} } }, "DescribeEventSubscriptionsMessage":{ "type":"structure", "members":{ "SubscriptionName":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEventsMessage":{ "type":"structure", "members":{ "SourceIdentifier":{"shape":"String"}, "SourceType":{"shape":"SourceType"}, "StartTime":{"shape":"TStamp"}, "EndTime":{"shape":"TStamp"}, "Duration":{"shape":"IntegerOptional"}, "EventCategories":{"shape":"EventCategoriesList"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeOptionGroupOptionsMessage":{ "type":"structure", "required":["EngineName"], "members":{ "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeOptionGroupsMessage":{ "type":"structure", "members":{ "OptionGroupName":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "Marker":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"} } }, "DescribeOrderableDBInstanceOptionsMessage":{ "type":"structure", "required":["Engine"], "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "LicenseModel":{"shape":"String"}, "Vpc":{"shape":"BooleanOptional"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribePendingMaintenanceActionsMessage":{ "type":"structure", "members":{ "ResourceIdentifier":{"shape":"String"}, "Filters":{"shape":"FilterList"}, "Marker":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"} } }, "DescribeReservedDBInstancesMessage":{ "type":"structure", "members":{ "ReservedDBInstanceId":{"shape":"String"}, "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Duration":{"shape":"String"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeReservedDBInstancesOfferingsMessage":{ "type":"structure", "members":{ "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Duration":{"shape":"String"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "Filters":{"shape":"FilterList"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeSourceRegionsMessage":{ "type":"structure", "members":{ "RegionName":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "Filters":{"shape":"FilterList"} } }, "DomainMembership":{ "type":"structure", "members":{ "Domain":{"shape":"String"}, "Status":{"shape":"String"}, "FQDN":{"shape":"String"}, "IAMRoleName":{"shape":"String"} } }, "DomainMembershipList":{ "type":"list", "member":{ "shape":"DomainMembership", "locationName":"DomainMembership" } }, "DomainNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"DomainNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "Double":{"type":"double"}, "DownloadDBLogFilePortionDetails":{ "type":"structure", "members":{ "LogFileData":{"shape":"String"}, "Marker":{"shape":"String"}, "AdditionalDataPending":{"shape":"Boolean"} } }, "DownloadDBLogFilePortionMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "LogFileName" ], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "LogFileName":{"shape":"String"}, "Marker":{"shape":"String"}, "NumberOfLines":{"shape":"Integer"} } }, "EC2SecurityGroup":{ "type":"structure", "members":{ "Status":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupId":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "EC2SecurityGroupList":{ "type":"list", "member":{ "shape":"EC2SecurityGroup", "locationName":"EC2SecurityGroup" } }, "Endpoint":{ "type":"structure", "members":{ "Address":{"shape":"String"}, "Port":{"shape":"Integer"}, "HostedZoneId":{"shape":"String"} } }, "EngineDefaults":{ "type":"structure", "members":{ "DBParameterGroupFamily":{"shape":"String"}, "Marker":{"shape":"String"}, "Parameters":{"shape":"ParametersList"} }, "wrapper":true }, "Event":{ "type":"structure", "members":{ "SourceIdentifier":{"shape":"String"}, "SourceType":{"shape":"SourceType"}, "Message":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"}, "Date":{"shape":"TStamp"}, "SourceArn":{"shape":"String"} } }, "EventCategoriesList":{ "type":"list", "member":{ "shape":"String", "locationName":"EventCategory" } }, "EventCategoriesMap":{ "type":"structure", "members":{ "SourceType":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"} }, "wrapper":true }, "EventCategoriesMapList":{ "type":"list", "member":{ "shape":"EventCategoriesMap", "locationName":"EventCategoriesMap" } }, "EventCategoriesMessage":{ "type":"structure", "members":{ "EventCategoriesMapList":{"shape":"EventCategoriesMapList"} } }, "EventList":{ "type":"list", "member":{ "shape":"Event", "locationName":"Event" } }, "EventSubscription":{ "type":"structure", "members":{ "CustomerAwsId":{"shape":"String"}, "CustSubscriptionId":{"shape":"String"}, "SnsTopicArn":{"shape":"String"}, "Status":{"shape":"String"}, "SubscriptionCreationTime":{"shape":"String"}, "SourceType":{"shape":"String"}, "SourceIdsList":{"shape":"SourceIdsList"}, "EventCategoriesList":{"shape":"EventCategoriesList"}, "Enabled":{"shape":"Boolean"}, "EventSubscriptionArn":{"shape":"String"} }, "wrapper":true }, "EventSubscriptionQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"EventSubscriptionQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "EventSubscriptionsList":{ "type":"list", "member":{ "shape":"EventSubscription", "locationName":"EventSubscription" } }, "EventSubscriptionsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "EventSubscriptionsList":{"shape":"EventSubscriptionsList"} } }, "EventsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "Events":{"shape":"EventList"} } }, "FailoverDBClusterMessage":{ "type":"structure", "members":{ "DBClusterIdentifier":{"shape":"String"}, "TargetDBInstanceIdentifier":{"shape":"String"} } }, "FailoverDBClusterResult":{ "type":"structure", "members":{ "DBCluster":{"shape":"DBCluster"} } }, "Filter":{ "type":"structure", "required":[ "Name", "Values" ], "members":{ "Name":{"shape":"String"}, "Values":{"shape":"FilterValueList"} } }, "FilterList":{ "type":"list", "member":{ "shape":"Filter", "locationName":"Filter" } }, "FilterValueList":{ "type":"list", "member":{ "shape":"String", "locationName":"Value" } }, "IPRange":{ "type":"structure", "members":{ "Status":{"shape":"String"}, "CIDRIP":{"shape":"String"} } }, "IPRangeList":{ "type":"list", "member":{ "shape":"IPRange", "locationName":"IPRange" } }, "InstanceQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"InstanceQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InsufficientDBClusterCapacityFault":{ "type":"structure", "members":{ }, "error":{ "code":"InsufficientDBClusterCapacityFault", "httpStatusCode":403, "senderFault":true }, "exception":true }, "InsufficientDBInstanceCapacityFault":{ "type":"structure", "members":{ }, "error":{ "code":"InsufficientDBInstanceCapacity", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InsufficientStorageClusterCapacityFault":{ "type":"structure", "members":{ }, "error":{ "code":"InsufficientStorageClusterCapacity", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Integer":{"type":"integer"}, "IntegerOptional":{"type":"integer"}, "InvalidDBClusterSnapshotStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBClusterSnapshotStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBClusterStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBClusterStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBInstanceStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBInstanceState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBParameterGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBParameterGroupState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSecurityGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSecurityGroupState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSnapshotStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSnapshotState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSubnetGroupFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSubnetGroupFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSubnetGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSubnetGroupStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidDBSubnetStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidDBSubnetStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidEventSubscriptionStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidEventSubscriptionState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidOptionGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidOptionGroupStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidRestoreFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidRestoreFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidS3BucketFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidS3BucketFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidSubnet":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidSubnet", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidVPCNetworkStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidVPCNetworkStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "KMSKeyNotAccessibleFault":{ "type":"structure", "members":{ }, "error":{ "code":"KMSKeyNotAccessibleFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "KeyList":{ "type":"list", "member":{"shape":"String"} }, "ListTagsForResourceMessage":{ "type":"structure", "required":["ResourceName"], "members":{ "ResourceName":{"shape":"String"}, "Filters":{"shape":"FilterList"} } }, "Long":{"type":"long"}, "ModifyDBClusterMessage":{ "type":"structure", "required":["DBClusterIdentifier"], "members":{ "DBClusterIdentifier":{"shape":"String"}, "NewDBClusterIdentifier":{"shape":"String"}, "ApplyImmediately":{"shape":"Boolean"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "DBClusterParameterGroupName":{"shape":"String"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "Port":{"shape":"IntegerOptional"}, "MasterUserPassword":{"shape":"String"}, "OptionGroupName":{"shape":"String"}, "PreferredBackupWindow":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"} } }, "ModifyDBClusterParameterGroupMessage":{ "type":"structure", "required":[ "DBClusterParameterGroupName", "Parameters" ], "members":{ "DBClusterParameterGroupName":{"shape":"String"}, "Parameters":{"shape":"ParametersList"} } }, "ModifyDBClusterResult":{ "type":"structure", "members":{ "DBCluster":{"shape":"DBCluster"} } }, "ModifyDBClusterSnapshotAttributeMessage":{ "type":"structure", "required":[ "DBClusterSnapshotIdentifier", "AttributeName" ], "members":{ "DBClusterSnapshotIdentifier":{"shape":"String"}, "AttributeName":{"shape":"String"}, "ValuesToAdd":{"shape":"AttributeValueList"}, "ValuesToRemove":{"shape":"AttributeValueList"} } }, "ModifyDBClusterSnapshotAttributeResult":{ "type":"structure", "members":{ "DBClusterSnapshotAttributesResult":{"shape":"DBClusterSnapshotAttributesResult"} } }, "ModifyDBInstanceMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "AllocatedStorage":{"shape":"IntegerOptional"}, "DBInstanceClass":{"shape":"String"}, "DBSubnetGroupName":{"shape":"String"}, "DBSecurityGroups":{"shape":"DBSecurityGroupNameList"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "ApplyImmediately":{"shape":"Boolean"}, "MasterUserPassword":{"shape":"String"}, "DBParameterGroupName":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "PreferredBackupWindow":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "EngineVersion":{"shape":"String"}, "AllowMajorVersionUpgrade":{"shape":"Boolean"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "LicenseModel":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "NewDBInstanceIdentifier":{"shape":"String"}, "StorageType":{"shape":"String"}, "TdeCredentialArn":{"shape":"String"}, "TdeCredentialPassword":{"shape":"String"}, "CACertificateIdentifier":{"shape":"String"}, "Domain":{"shape":"String"}, "CopyTagsToSnapshot":{"shape":"BooleanOptional"}, "MonitoringInterval":{"shape":"IntegerOptional"}, "DBPortNumber":{"shape":"IntegerOptional"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "MonitoringRoleArn":{"shape":"String"}, "DomainIAMRoleName":{"shape":"String"}, "PromotionTier":{"shape":"IntegerOptional"} } }, "ModifyDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "ModifyDBParameterGroupMessage":{ "type":"structure", "required":[ "DBParameterGroupName", "Parameters" ], "members":{ "DBParameterGroupName":{"shape":"String"}, "Parameters":{"shape":"ParametersList"} } }, "ModifyDBSnapshotAttributeMessage":{ "type":"structure", "required":[ "DBSnapshotIdentifier", "AttributeName" ], "members":{ "DBSnapshotIdentifier":{"shape":"String"}, "AttributeName":{"shape":"String"}, "ValuesToAdd":{"shape":"AttributeValueList"}, "ValuesToRemove":{"shape":"AttributeValueList"} } }, "ModifyDBSnapshotAttributeResult":{ "type":"structure", "members":{ "DBSnapshotAttributesResult":{"shape":"DBSnapshotAttributesResult"} } }, "ModifyDBSubnetGroupMessage":{ "type":"structure", "required":[ "DBSubnetGroupName", "SubnetIds" ], "members":{ "DBSubnetGroupName":{"shape":"String"}, "DBSubnetGroupDescription":{"shape":"String"}, "SubnetIds":{"shape":"SubnetIdentifierList"} } }, "ModifyDBSubnetGroupResult":{ "type":"structure", "members":{ "DBSubnetGroup":{"shape":"DBSubnetGroup"} } }, "ModifyEventSubscriptionMessage":{ "type":"structure", "required":["SubscriptionName"], "members":{ "SubscriptionName":{"shape":"String"}, "SnsTopicArn":{"shape":"String"}, "SourceType":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"}, "Enabled":{"shape":"BooleanOptional"} } }, "ModifyEventSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "ModifyOptionGroupMessage":{ "type":"structure", "required":["OptionGroupName"], "members":{ "OptionGroupName":{"shape":"String"}, "OptionsToInclude":{"shape":"OptionConfigurationList"}, "OptionsToRemove":{"shape":"OptionNamesList"}, "ApplyImmediately":{"shape":"Boolean"} } }, "ModifyOptionGroupResult":{ "type":"structure", "members":{ "OptionGroup":{"shape":"OptionGroup"} } }, "Option":{ "type":"structure", "members":{ "OptionName":{"shape":"String"}, "OptionDescription":{"shape":"String"}, "Persistent":{"shape":"Boolean"}, "Permanent":{"shape":"Boolean"}, "Port":{"shape":"IntegerOptional"}, "OptionVersion":{"shape":"String"}, "OptionSettings":{"shape":"OptionSettingConfigurationList"}, "DBSecurityGroupMemberships":{"shape":"DBSecurityGroupMembershipList"}, "VpcSecurityGroupMemberships":{"shape":"VpcSecurityGroupMembershipList"} } }, "OptionConfiguration":{ "type":"structure", "required":["OptionName"], "members":{ "OptionName":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "OptionVersion":{"shape":"String"}, "DBSecurityGroupMemberships":{"shape":"DBSecurityGroupNameList"}, "VpcSecurityGroupMemberships":{"shape":"VpcSecurityGroupIdList"}, "OptionSettings":{"shape":"OptionSettingsList"} } }, "OptionConfigurationList":{ "type":"list", "member":{ "shape":"OptionConfiguration", "locationName":"OptionConfiguration" } }, "OptionGroup":{ "type":"structure", "members":{ "OptionGroupName":{"shape":"String"}, "OptionGroupDescription":{"shape":"String"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "Options":{"shape":"OptionsList"}, "AllowsVpcAndNonVpcInstanceMemberships":{"shape":"Boolean"}, "VpcId":{"shape":"String"}, "OptionGroupArn":{"shape":"String"} }, "wrapper":true }, "OptionGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"OptionGroupAlreadyExistsFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "OptionGroupMembership":{ "type":"structure", "members":{ "OptionGroupName":{"shape":"String"}, "Status":{"shape":"String"} } }, "OptionGroupMembershipList":{ "type":"list", "member":{ "shape":"OptionGroupMembership", "locationName":"OptionGroupMembership" } }, "OptionGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"OptionGroupNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "OptionGroupOption":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "Description":{"shape":"String"}, "EngineName":{"shape":"String"}, "MajorEngineVersion":{"shape":"String"}, "MinimumRequiredMinorEngineVersion":{"shape":"String"}, "PortRequired":{"shape":"Boolean"}, "DefaultPort":{"shape":"IntegerOptional"}, "OptionsDependedOn":{"shape":"OptionsDependedOn"}, "OptionsConflictsWith":{"shape":"OptionsConflictsWith"}, "Persistent":{"shape":"Boolean"}, "Permanent":{"shape":"Boolean"}, "OptionGroupOptionSettings":{"shape":"OptionGroupOptionSettingsList"}, "OptionGroupOptionVersions":{"shape":"OptionGroupOptionVersionsList"} } }, "OptionGroupOptionSetting":{ "type":"structure", "members":{ "SettingName":{"shape":"String"}, "SettingDescription":{"shape":"String"}, "DefaultValue":{"shape":"String"}, "ApplyType":{"shape":"String"}, "AllowedValues":{"shape":"String"}, "IsModifiable":{"shape":"Boolean"} } }, "OptionGroupOptionSettingsList":{ "type":"list", "member":{ "shape":"OptionGroupOptionSetting", "locationName":"OptionGroupOptionSetting" } }, "OptionGroupOptionVersionsList":{ "type":"list", "member":{ "shape":"OptionVersion", "locationName":"OptionVersion" } }, "OptionGroupOptionsList":{ "type":"list", "member":{ "shape":"OptionGroupOption", "locationName":"OptionGroupOption" } }, "OptionGroupOptionsMessage":{ "type":"structure", "members":{ "OptionGroupOptions":{"shape":"OptionGroupOptionsList"}, "Marker":{"shape":"String"} } }, "OptionGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"OptionGroupQuotaExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "OptionGroups":{ "type":"structure", "members":{ "OptionGroupsList":{"shape":"OptionGroupsList"}, "Marker":{"shape":"String"} } }, "OptionGroupsList":{ "type":"list", "member":{ "shape":"OptionGroup", "locationName":"OptionGroup" } }, "OptionNamesList":{ "type":"list", "member":{"shape":"String"} }, "OptionSetting":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "Value":{"shape":"String"}, "DefaultValue":{"shape":"String"}, "Description":{"shape":"String"}, "ApplyType":{"shape":"String"}, "DataType":{"shape":"String"}, "AllowedValues":{"shape":"String"}, "IsModifiable":{"shape":"Boolean"}, "IsCollection":{"shape":"Boolean"} } }, "OptionSettingConfigurationList":{ "type":"list", "member":{ "shape":"OptionSetting", "locationName":"OptionSetting" } }, "OptionSettingsList":{ "type":"list", "member":{ "shape":"OptionSetting", "locationName":"OptionSetting" } }, "OptionVersion":{ "type":"structure", "members":{ "Version":{"shape":"String"}, "IsDefault":{"shape":"Boolean"} } }, "OptionsConflictsWith":{ "type":"list", "member":{ "shape":"String", "locationName":"OptionConflictName" } }, "OptionsDependedOn":{ "type":"list", "member":{ "shape":"String", "locationName":"OptionName" } }, "OptionsList":{ "type":"list", "member":{ "shape":"Option", "locationName":"Option" } }, "OrderableDBInstanceOption":{ "type":"structure", "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "LicenseModel":{"shape":"String"}, "AvailabilityZones":{"shape":"AvailabilityZoneList"}, "MultiAZCapable":{"shape":"Boolean"}, "ReadReplicaCapable":{"shape":"Boolean"}, "Vpc":{"shape":"Boolean"}, "SupportsStorageEncryption":{"shape":"Boolean"}, "StorageType":{"shape":"String"}, "SupportsIops":{"shape":"Boolean"}, "SupportsEnhancedMonitoring":{"shape":"Boolean"} }, "wrapper":true }, "OrderableDBInstanceOptionsList":{ "type":"list", "member":{ "shape":"OrderableDBInstanceOption", "locationName":"OrderableDBInstanceOption" } }, "OrderableDBInstanceOptionsMessage":{ "type":"structure", "members":{ "OrderableDBInstanceOptions":{"shape":"OrderableDBInstanceOptionsList"}, "Marker":{"shape":"String"} } }, "Parameter":{ "type":"structure", "members":{ "ParameterName":{"shape":"String"}, "ParameterValue":{"shape":"String"}, "Description":{"shape":"String"}, "Source":{"shape":"String"}, "ApplyType":{"shape":"String"}, "DataType":{"shape":"String"}, "AllowedValues":{"shape":"String"}, "IsModifiable":{"shape":"Boolean"}, "MinimumEngineVersion":{"shape":"String"}, "ApplyMethod":{"shape":"ApplyMethod"} } }, "ParametersList":{ "type":"list", "member":{ "shape":"Parameter", "locationName":"Parameter" } }, "PendingMaintenanceAction":{ "type":"structure", "members":{ "Action":{"shape":"String"}, "AutoAppliedAfterDate":{"shape":"TStamp"}, "ForcedApplyDate":{"shape":"TStamp"}, "OptInStatus":{"shape":"String"}, "CurrentApplyDate":{"shape":"TStamp"}, "Description":{"shape":"String"} } }, "PendingMaintenanceActionDetails":{ "type":"list", "member":{ "shape":"PendingMaintenanceAction", "locationName":"PendingMaintenanceAction" } }, "PendingMaintenanceActions":{ "type":"list", "member":{ "shape":"ResourcePendingMaintenanceActions", "locationName":"ResourcePendingMaintenanceActions" } }, "PendingMaintenanceActionsMessage":{ "type":"structure", "members":{ "PendingMaintenanceActions":{"shape":"PendingMaintenanceActions"}, "Marker":{"shape":"String"} } }, "PendingModifiedValues":{ "type":"structure", "members":{ "DBInstanceClass":{"shape":"String"}, "AllocatedStorage":{"shape":"IntegerOptional"}, "MasterUserPassword":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "MultiAZ":{"shape":"BooleanOptional"}, "EngineVersion":{"shape":"String"}, "LicenseModel":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "DBInstanceIdentifier":{"shape":"String"}, "StorageType":{"shape":"String"}, "CACertificateIdentifier":{"shape":"String"}, "DBSubnetGroupName":{"shape":"String"} } }, "PointInTimeRestoreNotEnabledFault":{ "type":"structure", "members":{ }, "error":{ "code":"PointInTimeRestoreNotEnabled", "httpStatusCode":400, "senderFault":true }, "exception":true }, "PromoteReadReplicaDBClusterMessage":{ "type":"structure", "required":["DBClusterIdentifier"], "members":{ "DBClusterIdentifier":{"shape":"String"} } }, "PromoteReadReplicaDBClusterResult":{ "type":"structure", "members":{ "DBCluster":{"shape":"DBCluster"} } }, "PromoteReadReplicaMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "PreferredBackupWindow":{"shape":"String"} } }, "PromoteReadReplicaResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "ProvisionedIopsNotAvailableInAZFault":{ "type":"structure", "members":{ }, "error":{ "code":"ProvisionedIopsNotAvailableInAZFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "PurchaseReservedDBInstancesOfferingMessage":{ "type":"structure", "required":["ReservedDBInstancesOfferingId"], "members":{ "ReservedDBInstancesOfferingId":{"shape":"String"}, "ReservedDBInstanceId":{"shape":"String"}, "DBInstanceCount":{"shape":"IntegerOptional"}, "Tags":{"shape":"TagList"} } }, "PurchaseReservedDBInstancesOfferingResult":{ "type":"structure", "members":{ "ReservedDBInstance":{"shape":"ReservedDBInstance"} } }, "ReadReplicaDBInstanceIdentifierList":{ "type":"list", "member":{ "shape":"String", "locationName":"ReadReplicaDBInstanceIdentifier" } }, "ReadReplicaIdentifierList":{ "type":"list", "member":{ "shape":"String", "locationName":"ReadReplicaIdentifier" } }, "RebootDBInstanceMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "ForceFailover":{"shape":"BooleanOptional"} } }, "RebootDBInstanceResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "RecurringCharge":{ "type":"structure", "members":{ "RecurringChargeAmount":{"shape":"Double"}, "RecurringChargeFrequency":{"shape":"String"} }, "wrapper":true }, "RecurringChargeList":{ "type":"list", "member":{ "shape":"RecurringCharge", "locationName":"RecurringCharge" } }, "RemoveRoleFromDBClusterMessage":{ "type":"structure", "required":[ "DBClusterIdentifier", "RoleArn" ], "members":{ "DBClusterIdentifier":{"shape":"String"}, "RoleArn":{"shape":"String"} } }, "RemoveSourceIdentifierFromSubscriptionMessage":{ "type":"structure", "required":[ "SubscriptionName", "SourceIdentifier" ], "members":{ "SubscriptionName":{"shape":"String"}, "SourceIdentifier":{"shape":"String"} } }, "RemoveSourceIdentifierFromSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "RemoveTagsFromResourceMessage":{ "type":"structure", "required":[ "ResourceName", "TagKeys" ], "members":{ "ResourceName":{"shape":"String"}, "TagKeys":{"shape":"KeyList"} } }, "ReservedDBInstance":{ "type":"structure", "members":{ "ReservedDBInstanceId":{"shape":"String"}, "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "StartTime":{"shape":"TStamp"}, "Duration":{"shape":"Integer"}, "FixedPrice":{"shape":"Double"}, "UsagePrice":{"shape":"Double"}, "CurrencyCode":{"shape":"String"}, "DBInstanceCount":{"shape":"Integer"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"Boolean"}, "State":{"shape":"String"}, "RecurringCharges":{"shape":"RecurringChargeList"}, "ReservedDBInstanceArn":{"shape":"String"} }, "wrapper":true }, "ReservedDBInstanceAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstanceAlreadyExists", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ReservedDBInstanceList":{ "type":"list", "member":{ "shape":"ReservedDBInstance", "locationName":"ReservedDBInstance" } }, "ReservedDBInstanceMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ReservedDBInstances":{"shape":"ReservedDBInstanceList"} } }, "ReservedDBInstanceNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstanceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ReservedDBInstanceQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstanceQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ReservedDBInstancesOffering":{ "type":"structure", "members":{ "ReservedDBInstancesOfferingId":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Duration":{"shape":"Integer"}, "FixedPrice":{"shape":"Double"}, "UsagePrice":{"shape":"Double"}, "CurrencyCode":{"shape":"String"}, "ProductDescription":{"shape":"String"}, "OfferingType":{"shape":"String"}, "MultiAZ":{"shape":"Boolean"}, "RecurringCharges":{"shape":"RecurringChargeList"} }, "wrapper":true }, "ReservedDBInstancesOfferingList":{ "type":"list", "member":{ "shape":"ReservedDBInstancesOffering", "locationName":"ReservedDBInstancesOffering" } }, "ReservedDBInstancesOfferingMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ReservedDBInstancesOfferings":{"shape":"ReservedDBInstancesOfferingList"} } }, "ReservedDBInstancesOfferingNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedDBInstancesOfferingNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ResetDBClusterParameterGroupMessage":{ "type":"structure", "required":["DBClusterParameterGroupName"], "members":{ "DBClusterParameterGroupName":{"shape":"String"}, "ResetAllParameters":{"shape":"Boolean"}, "Parameters":{"shape":"ParametersList"} } }, "ResetDBParameterGroupMessage":{ "type":"structure", "required":["DBParameterGroupName"], "members":{ "DBParameterGroupName":{"shape":"String"}, "ResetAllParameters":{"shape":"Boolean"}, "Parameters":{"shape":"ParametersList"} } }, "ResourceNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ResourceNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ResourcePendingMaintenanceActions":{ "type":"structure", "members":{ "ResourceIdentifier":{"shape":"String"}, "PendingMaintenanceActionDetails":{"shape":"PendingMaintenanceActionDetails"} }, "wrapper":true }, "RestoreDBClusterFromS3Message":{ "type":"structure", "required":[ "DBClusterIdentifier", "Engine", "MasterUsername", "MasterUserPassword", "SourceEngine", "SourceEngineVersion", "S3BucketName", "S3IngestionRoleArn" ], "members":{ "AvailabilityZones":{"shape":"AvailabilityZones"}, "BackupRetentionPeriod":{"shape":"IntegerOptional"}, "CharacterSetName":{"shape":"String"}, "DatabaseName":{"shape":"String"}, "DBClusterIdentifier":{"shape":"String"}, "DBClusterParameterGroupName":{"shape":"String"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "DBSubnetGroupName":{"shape":"String"}, "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "MasterUsername":{"shape":"String"}, "MasterUserPassword":{"shape":"String"}, "OptionGroupName":{"shape":"String"}, "PreferredBackupWindow":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"}, "Tags":{"shape":"TagList"}, "StorageEncrypted":{"shape":"BooleanOptional"}, "KmsKeyId":{"shape":"String"}, "SourceEngine":{"shape":"String"}, "SourceEngineVersion":{"shape":"String"}, "S3BucketName":{"shape":"String"}, "S3Prefix":{"shape":"String"}, "S3IngestionRoleArn":{"shape":"String"} } }, "RestoreDBClusterFromS3Result":{ "type":"structure", "members":{ "DBCluster":{"shape":"DBCluster"} } }, "RestoreDBClusterFromSnapshotMessage":{ "type":"structure", "required":[ "DBClusterIdentifier", "SnapshotIdentifier", "Engine" ], "members":{ "AvailabilityZones":{"shape":"AvailabilityZones"}, "DBClusterIdentifier":{"shape":"String"}, "SnapshotIdentifier":{"shape":"String"}, "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "DBSubnetGroupName":{"shape":"String"}, "DatabaseName":{"shape":"String"}, "OptionGroupName":{"shape":"String"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "Tags":{"shape":"TagList"}, "KmsKeyId":{"shape":"String"} } }, "RestoreDBClusterFromSnapshotResult":{ "type":"structure", "members":{ "DBCluster":{"shape":"DBCluster"} } }, "RestoreDBClusterToPointInTimeMessage":{ "type":"structure", "required":[ "DBClusterIdentifier", "SourceDBClusterIdentifier" ], "members":{ "DBClusterIdentifier":{"shape":"String"}, "SourceDBClusterIdentifier":{"shape":"String"}, "RestoreToTime":{"shape":"TStamp"}, "UseLatestRestorableTime":{"shape":"Boolean"}, "Port":{"shape":"IntegerOptional"}, "DBSubnetGroupName":{"shape":"String"}, "OptionGroupName":{"shape":"String"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "Tags":{"shape":"TagList"}, "KmsKeyId":{"shape":"String"} } }, "RestoreDBClusterToPointInTimeResult":{ "type":"structure", "members":{ "DBCluster":{"shape":"DBCluster"} } }, "RestoreDBInstanceFromDBSnapshotMessage":{ "type":"structure", "required":[ "DBInstanceIdentifier", "DBSnapshotIdentifier" ], "members":{ "DBInstanceIdentifier":{"shape":"String"}, "DBSnapshotIdentifier":{"shape":"String"}, "DBInstanceClass":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroupName":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "LicenseModel":{"shape":"String"}, "DBName":{"shape":"String"}, "Engine":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "Tags":{"shape":"TagList"}, "StorageType":{"shape":"String"}, "TdeCredentialArn":{"shape":"String"}, "TdeCredentialPassword":{"shape":"String"}, "Domain":{"shape":"String"}, "CopyTagsToSnapshot":{"shape":"BooleanOptional"}, "DomainIAMRoleName":{"shape":"String"} } }, "RestoreDBInstanceFromDBSnapshotResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "RestoreDBInstanceToPointInTimeMessage":{ "type":"structure", "required":[ "SourceDBInstanceIdentifier", "TargetDBInstanceIdentifier" ], "members":{ "SourceDBInstanceIdentifier":{"shape":"String"}, "TargetDBInstanceIdentifier":{"shape":"String"}, "RestoreTime":{"shape":"TStamp"}, "UseLatestRestorableTime":{"shape":"Boolean"}, "DBInstanceClass":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "AvailabilityZone":{"shape":"String"}, "DBSubnetGroupName":{"shape":"String"}, "MultiAZ":{"shape":"BooleanOptional"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "AutoMinorVersionUpgrade":{"shape":"BooleanOptional"}, "LicenseModel":{"shape":"String"}, "DBName":{"shape":"String"}, "Engine":{"shape":"String"}, "Iops":{"shape":"IntegerOptional"}, "OptionGroupName":{"shape":"String"}, "CopyTagsToSnapshot":{"shape":"BooleanOptional"}, "Tags":{"shape":"TagList"}, "StorageType":{"shape":"String"}, "TdeCredentialArn":{"shape":"String"}, "TdeCredentialPassword":{"shape":"String"}, "Domain":{"shape":"String"}, "DomainIAMRoleName":{"shape":"String"} } }, "RestoreDBInstanceToPointInTimeResult":{ "type":"structure", "members":{ "DBInstance":{"shape":"DBInstance"} } }, "RevokeDBSecurityGroupIngressMessage":{ "type":"structure", "required":["DBSecurityGroupName"], "members":{ "DBSecurityGroupName":{"shape":"String"}, "CIDRIP":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupId":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "RevokeDBSecurityGroupIngressResult":{ "type":"structure", "members":{ "DBSecurityGroup":{"shape":"DBSecurityGroup"} } }, "SNSInvalidTopicFault":{ "type":"structure", "members":{ }, "error":{ "code":"SNSInvalidTopic", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SNSNoAuthorizationFault":{ "type":"structure", "members":{ }, "error":{ "code":"SNSNoAuthorization", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SNSTopicArnNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SNSTopicArnNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SharedSnapshotQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"SharedSnapshotQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SnapshotQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"SnapshotQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SourceIdsList":{ "type":"list", "member":{ "shape":"String", "locationName":"SourceId" } }, "SourceNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SourceRegion":{ "type":"structure", "members":{ "RegionName":{"shape":"String"}, "Endpoint":{"shape":"String"}, "Status":{"shape":"String"} } }, "SourceRegionList":{ "type":"list", "member":{ "shape":"SourceRegion", "locationName":"SourceRegion" } }, "SourceRegionMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "SourceRegions":{"shape":"SourceRegionList"} } }, "SourceType":{ "type":"string", "enum":[ "db-instance", "db-parameter-group", "db-security-group", "db-snapshot", "db-cluster", "db-cluster-snapshot" ] }, "StorageQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"StorageQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "StorageTypeNotSupportedFault":{ "type":"structure", "members":{ }, "error":{ "code":"StorageTypeNotSupported", "httpStatusCode":400, "senderFault":true }, "exception":true }, "String":{"type":"string"}, "Subnet":{ "type":"structure", "members":{ "SubnetIdentifier":{"shape":"String"}, "SubnetAvailabilityZone":{"shape":"AvailabilityZone"}, "SubnetStatus":{"shape":"String"} } }, "SubnetAlreadyInUse":{ "type":"structure", "members":{ }, "error":{ "code":"SubnetAlreadyInUse", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SubnetIdentifierList":{ "type":"list", "member":{ "shape":"String", "locationName":"SubnetIdentifier" } }, "SubnetList":{ "type":"list", "member":{ "shape":"Subnet", "locationName":"Subnet" } }, "SubscriptionAlreadyExistFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionAlreadyExist", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SubscriptionCategoryNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionCategoryNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SubscriptionNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SupportedCharacterSetsList":{ "type":"list", "member":{ "shape":"CharacterSet", "locationName":"CharacterSet" } }, "SupportedTimezonesList":{ "type":"list", "member":{ "shape":"Timezone", "locationName":"Timezone" } }, "TStamp":{"type":"timestamp"}, "Tag":{ "type":"structure", "members":{ "Key":{"shape":"String"}, "Value":{"shape":"String"} } }, "TagList":{ "type":"list", "member":{ "shape":"Tag", "locationName":"Tag" } }, "TagListMessage":{ "type":"structure", "members":{ "TagList":{"shape":"TagList"} } }, "Timezone":{ "type":"structure", "members":{ "TimezoneName":{"shape":"String"} } }, "UpgradeTarget":{ "type":"structure", "members":{ "Engine":{"shape":"String"}, "EngineVersion":{"shape":"String"}, "Description":{"shape":"String"}, "AutoUpgrade":{"shape":"Boolean"}, "IsMajorVersionUpgrade":{"shape":"Boolean"} } }, "ValidUpgradeTargetList":{ "type":"list", "member":{ "shape":"UpgradeTarget", "locationName":"UpgradeTarget" } }, "VpcSecurityGroupIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpcSecurityGroupId" } }, "VpcSecurityGroupMembership":{ "type":"structure", "members":{ "VpcSecurityGroupId":{"shape":"String"}, "Status":{"shape":"String"} } }, "VpcSecurityGroupMembershipList":{ "type":"list", "member":{ "shape":"VpcSecurityGroupMembership", "locationName":"VpcSecurityGroupMembership" } } } } aws-sdk-go-1.4.22/models/apis/rds/2014-10-31/docs-2.json000066400000000000000000012170461300374646400216140ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon Relational Database Service

        Amazon Relational Database Service (Amazon RDS) is a web service that makes it easier to set up, operate, and scale a relational database in the cloud. It provides cost-efficient, resizeable capacity for an industry-standard relational database and manages common database administration tasks, freeing up developers to focus on what makes their applications and businesses unique.

        Amazon RDS gives you access to the capabilities of a MySQL, MariaDB, PostgreSQL, Microsoft SQL Server, Oracle, or Amazon Aurora database server. These capabilities mean that the code, applications, and tools you already use today with your existing databases work with Amazon RDS without modification. Amazon RDS automatically backs up your database and maintains the database software that powers your DB instance. Amazon RDS is flexible: you can scale your database instance's compute resources and storage capacity to meet your application's demand. As with all Amazon Web Services, there are no up-front investments, and you pay only for the resources you use.

        This interface reference for Amazon RDS contains documentation for a programming or command line interface you can use to manage Amazon RDS. Note that Amazon RDS is asynchronous, which means that some interfaces might require techniques such as polling or callback functions to determine when a command has been applied. In this reference, the parameter descriptions indicate whether a command is applied immediately, on the next instance reboot, or during the maintenance window. The reference structure is as follows, and we list following some related topics from the user guide.

        Amazon RDS API Reference

        Amazon RDS User Guide

        ", "operations": { "AddRoleToDBCluster": "

        Associates an Identity and Access Management (IAM) role from an Aurora DB cluster. For more information, see Authorizing Amazon Aurora to Access Other AWS Services On Your Behalf.

        ", "AddSourceIdentifierToSubscription": "

        Adds a source identifier to an existing RDS event notification subscription.

        ", "AddTagsToResource": "

        Adds metadata tags to an Amazon RDS resource. These tags can also be used with cost allocation reporting to track cost associated with Amazon RDS resources, or used in a Condition statement in an IAM policy for Amazon RDS.

        For an overview on tagging Amazon RDS resources, see Tagging Amazon RDS Resources.

        ", "ApplyPendingMaintenanceAction": "

        Applies a pending maintenance action to a resource (for example, to a DB instance).

        ", "AuthorizeDBSecurityGroupIngress": "

        Enables ingress to a DBSecurityGroup using one of two forms of authorization. First, EC2 or VPC security groups can be added to the DBSecurityGroup if the application using the database is running on EC2 or VPC instances. Second, IP ranges are available if the application accessing your database is running on the Internet. Required parameters for this API are one of CIDR range, EC2SecurityGroupId for VPC, or (EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId for non-VPC).

        You cannot authorize ingress from an EC2 security group in one region to an Amazon RDS DB instance in another. You cannot authorize ingress from a VPC security group in one VPC to an Amazon RDS DB instance in another.

        For an overview of CIDR ranges, go to the Wikipedia Tutorial.

        ", "CopyDBClusterParameterGroup": "

        Copies the specified DB cluster parameter group.

        ", "CopyDBClusterSnapshot": "

        Creates a snapshot of a DB cluster. For more information on Amazon Aurora, see Aurora on Amazon RDS in the Amazon RDS User Guide.

        ", "CopyDBParameterGroup": "

        Copies the specified DB parameter group.

        ", "CopyDBSnapshot": "

        Copies the specified DB snapshot. The source DB snapshot must be in the \"available\" state.

        If you are copying from a shared manual DB snapshot, the SourceDBSnapshotIdentifier must be the ARN of the shared DB snapshot.

        ", "CopyOptionGroup": "

        Copies the specified option group.

        ", "CreateDBCluster": "

        Creates a new Amazon Aurora DB cluster.

        You can use the ReplicationSourceIdentifier parameter to create the DB cluster as a Read Replica of another DB cluster.

        For more information on Amazon Aurora, see Aurora on Amazon RDS in the Amazon RDS User Guide.

        ", "CreateDBClusterParameterGroup": "

        Creates a new DB cluster parameter group.

        Parameters in a DB cluster parameter group apply to all of the instances in a DB cluster.

        A DB cluster parameter group is initially created with the default parameters for the database engine used by instances in the DB cluster. To provide custom values for any of the parameters, you must modify the group after creating it using ModifyDBClusterParameterGroup. Once you've created a DB cluster parameter group, you need to associate it with your DB cluster using ModifyDBCluster. When you associate a new DB cluster parameter group with a running DB cluster, you need to reboot the DB instances in the DB cluster without failover for the new DB cluster parameter group and associated settings to take effect.

        After you create a DB cluster parameter group, you should wait at least 5 minutes before creating your first DB cluster that uses that DB cluster parameter group as the default parameter group. This allows Amazon RDS to fully complete the create action before the DB cluster parameter group is used as the default for a new DB cluster. This is especially important for parameters that are critical when creating the default database for a DB cluster, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBClusterParameters command to verify that your DB cluster parameter group has been created or modified.

        For more information on Amazon Aurora, see Aurora on Amazon RDS in the Amazon RDS User Guide.

        ", "CreateDBClusterSnapshot": "

        Creates a snapshot of a DB cluster. For more information on Amazon Aurora, see Aurora on Amazon RDS in the Amazon RDS User Guide.

        ", "CreateDBInstance": "

        Creates a new DB instance.

        ", "CreateDBInstanceReadReplica": "

        Creates a DB instance for a DB instance running MySQL, MariaDB, or PostgreSQL that acts as a Read Replica of a source DB instance.

        All Read Replica DB instances are created as Single-AZ deployments with backups disabled. All other DB instance attributes (including DB security groups and DB parameter groups) are inherited from the source DB instance, except as specified below.

        The source DB instance must have backup retention enabled.

        ", "CreateDBParameterGroup": "

        Creates a new DB parameter group.

        A DB parameter group is initially created with the default parameters for the database engine used by the DB instance. To provide custom values for any of the parameters, you must modify the group after creating it using ModifyDBParameterGroup. Once you've created a DB parameter group, you need to associate it with your DB instance using ModifyDBInstance. When you associate a new DB parameter group with a running DB instance, you need to reboot the DB instance without failover for the new DB parameter group and associated settings to take effect.

        After you create a DB parameter group, you should wait at least 5 minutes before creating your first DB instance that uses that DB parameter group as the default parameter group. This allows Amazon RDS to fully complete the create action before the parameter group is used as the default for a new DB instance. This is especially important for parameters that are critical when creating the default database for a DB instance, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBParameters command to verify that your DB parameter group has been created or modified.

        ", "CreateDBSecurityGroup": "

        Creates a new DB security group. DB security groups control access to a DB instance.

        ", "CreateDBSnapshot": "

        Creates a DBSnapshot. The source DBInstance must be in \"available\" state.

        ", "CreateDBSubnetGroup": "

        Creates a new DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in the region.

        ", "CreateEventSubscription": "

        Creates an RDS event notification subscription. This action requires a topic ARN (Amazon Resource Name) created by either the RDS console, the SNS console, or the SNS API. To obtain an ARN with SNS, you must create a topic in Amazon SNS and subscribe to the topic. The ARN is displayed in the SNS console.

        You can specify the type of source (SourceType) you want to be notified of, provide a list of RDS sources (SourceIds) that triggers the events, and provide a list of event categories (EventCategories) for events you want to be notified of. For example, you can specify SourceType = db-instance, SourceIds = mydbinstance1, mydbinstance2 and EventCategories = Availability, Backup.

        If you specify both the SourceType and SourceIds, such as SourceType = db-instance and SourceIdentifier = myDBInstance1, you will be notified of all the db-instance events for the specified source. If you specify a SourceType but do not specify a SourceIdentifier, you will receive notice of the events for that source type for all your RDS sources. If you do not specify either the SourceType nor the SourceIdentifier, you will be notified of events generated from all RDS sources belonging to your customer account.

        ", "CreateOptionGroup": "

        Creates a new option group. You can create up to 20 option groups.

        ", "DeleteDBCluster": "

        The DeleteDBCluster action deletes a previously provisioned DB cluster. When you delete a DB cluster, all automated backups for that DB cluster are deleted and cannot be recovered. Manual DB cluster snapshots of the specified DB cluster are not deleted.

        For more information on Amazon Aurora, see Aurora on Amazon RDS in the Amazon RDS User Guide.

        ", "DeleteDBClusterParameterGroup": "

        Deletes a specified DB cluster parameter group. The DB cluster parameter group to be deleted cannot be associated with any DB clusters.

        For more information on Amazon Aurora, see Aurora on Amazon RDS in the Amazon RDS User Guide.

        ", "DeleteDBClusterSnapshot": "

        Deletes a DB cluster snapshot. If the snapshot is being copied, the copy operation is terminated.

        The DB cluster snapshot must be in the available state to be deleted.

        For more information on Amazon Aurora, see Aurora on Amazon RDS in the Amazon RDS User Guide.

        ", "DeleteDBInstance": "

        The DeleteDBInstance action deletes a previously provisioned DB instance. When you delete a DB instance, all automated backups for that instance are deleted and cannot be recovered. Manual DB snapshots of the DB instance to be deleted by DeleteDBInstance are not deleted.

        If you request a final DB snapshot the status of the Amazon RDS DB instance is deleting until the DB snapshot is created. The API action DescribeDBInstance is used to monitor the status of this operation. The action cannot be canceled or reverted once submitted.

        Note that when a DB instance is in a failure state and has a status of failed, incompatible-restore, or incompatible-network, you can only delete it when the SkipFinalSnapshot parameter is set to true.

        If the specified DB instance is part of an Amazon Aurora DB cluster, you cannot delete the DB instance if the following are true:

        • The DB cluster is a Read Replica of another Amazon Aurora DB cluster.

        • The DB instance is the only instance in the DB cluster.

        To delete a DB instance in this case, first call the PromoteReadReplicaDBCluster API action to promote the DB cluster so it's no longer a Read Replica. After the promotion completes, then call the DeleteDBInstance API action to delete the final instance in the DB cluster.

        ", "DeleteDBParameterGroup": "

        Deletes a specified DBParameterGroup. The DBParameterGroup to be deleted cannot be associated with any DB instances.

        ", "DeleteDBSecurityGroup": "

        Deletes a DB security group.

        The specified DB security group must not be associated with any DB instances.

        ", "DeleteDBSnapshot": "

        Deletes a DBSnapshot. If the snapshot is being copied, the copy operation is terminated.

        The DBSnapshot must be in the available state to be deleted.

        ", "DeleteDBSubnetGroup": "

        Deletes a DB subnet group.

        The specified database subnet group must not be associated with any DB instances.

        ", "DeleteEventSubscription": "

        Deletes an RDS event notification subscription.

        ", "DeleteOptionGroup": "

        Deletes an existing option group.

        ", "DescribeAccountAttributes": "

        Lists all of the attributes for a customer account. The attributes include Amazon RDS quotas for the account, such as the number of DB instances allowed. The description for a quota includes the quota name, current usage toward that quota, and the quota's maximum value.

        This command does not take any parameters.

        ", "DescribeCertificates": "

        Lists the set of CA certificates provided by Amazon RDS for this AWS account.

        ", "DescribeDBClusterParameterGroups": "

        Returns a list of DBClusterParameterGroup descriptions. If a DBClusterParameterGroupName parameter is specified, the list will contain only the description of the specified DB cluster parameter group.

        For more information on Amazon Aurora, see Aurora on Amazon RDS in the Amazon RDS User Guide.

        ", "DescribeDBClusterParameters": "

        Returns the detailed parameter list for a particular DB cluster parameter group.

        For more information on Amazon Aurora, see Aurora on Amazon RDS in the Amazon RDS User Guide.

        ", "DescribeDBClusterSnapshotAttributes": "

        Returns a list of DB cluster snapshot attribute names and values for a manual DB cluster snapshot.

        When sharing snapshots with other AWS accounts, DescribeDBClusterSnapshotAttributes returns the restore attribute and a list of IDs for the AWS accounts that are authorized to copy or restore the manual DB cluster snapshot. If all is included in the list of values for the restore attribute, then the manual DB cluster snapshot is public and can be copied or restored by all AWS accounts.

        To add or remove access for an AWS account to copy or restore a manual DB cluster snapshot, or to make the manual DB cluster snapshot public or private, use the ModifyDBClusterSnapshotAttribute API action.

        ", "DescribeDBClusterSnapshots": "

        Returns information about DB cluster snapshots. This API action supports pagination.

        For more information on Amazon Aurora, see Aurora on Amazon RDS in the Amazon RDS User Guide.

        ", "DescribeDBClusters": "

        Returns information about provisioned Aurora DB clusters. This API supports pagination.

        For more information on Amazon Aurora, see Aurora on Amazon RDS in the Amazon RDS User Guide.

        ", "DescribeDBEngineVersions": "

        Returns a list of the available DB engines.

        ", "DescribeDBInstances": "

        Returns information about provisioned RDS instances. This API supports pagination.

        ", "DescribeDBLogFiles": "

        Returns a list of DB log files for the DB instance.

        ", "DescribeDBParameterGroups": "

        Returns a list of DBParameterGroup descriptions. If a DBParameterGroupName is specified, the list will contain only the description of the specified DB parameter group.

        ", "DescribeDBParameters": "

        Returns the detailed parameter list for a particular DB parameter group.

        ", "DescribeDBSecurityGroups": "

        Returns a list of DBSecurityGroup descriptions. If a DBSecurityGroupName is specified, the list will contain only the descriptions of the specified DB security group.

        ", "DescribeDBSnapshotAttributes": "

        Returns a list of DB snapshot attribute names and values for a manual DB snapshot.

        When sharing snapshots with other AWS accounts, DescribeDBSnapshotAttributes returns the restore attribute and a list of IDs for the AWS accounts that are authorized to copy or restore the manual DB snapshot. If all is included in the list of values for the restore attribute, then the manual DB snapshot is public and can be copied or restored by all AWS accounts.

        To add or remove access for an AWS account to copy or restore a manual DB snapshot, or to make the manual DB snapshot public or private, use the ModifyDBSnapshotAttribute API action.

        ", "DescribeDBSnapshots": "

        Returns information about DB snapshots. This API action supports pagination.

        ", "DescribeDBSubnetGroups": "

        Returns a list of DBSubnetGroup descriptions. If a DBSubnetGroupName is specified, the list will contain only the descriptions of the specified DBSubnetGroup.

        For an overview of CIDR ranges, go to the Wikipedia Tutorial.

        ", "DescribeEngineDefaultClusterParameters": "

        Returns the default engine and system parameter information for the cluster database engine.

        For more information on Amazon Aurora, see Aurora on Amazon RDS in the Amazon RDS User Guide.

        ", "DescribeEngineDefaultParameters": "

        Returns the default engine and system parameter information for the specified database engine.

        ", "DescribeEventCategories": "

        Displays a list of categories for all event source types, or, if specified, for a specified source type. You can see a list of the event categories and source types in the Events topic in the Amazon RDS User Guide.

        ", "DescribeEventSubscriptions": "

        Lists all the subscription descriptions for a customer account. The description for a subscription includes SubscriptionName, SNSTopicARN, CustomerID, SourceType, SourceID, CreationTime, and Status.

        If you specify a SubscriptionName, lists the description for that subscription.

        ", "DescribeEvents": "

        Returns events related to DB instances, DB security groups, DB snapshots, and DB parameter groups for the past 14 days. Events specific to a particular DB instance, DB security group, database snapshot, or DB parameter group can be obtained by providing the name as a parameter. By default, the past hour of events are returned.

        ", "DescribeOptionGroupOptions": "

        Describes all available options.

        ", "DescribeOptionGroups": "

        Describes the available option groups.

        ", "DescribeOrderableDBInstanceOptions": "

        Returns a list of orderable DB instance options for the specified engine.

        ", "DescribePendingMaintenanceActions": "

        Returns a list of resources (for example, DB instances) that have at least one pending maintenance action.

        ", "DescribeReservedDBInstances": "

        Returns information about reserved DB instances for this account, or about a specified reserved DB instance.

        ", "DescribeReservedDBInstancesOfferings": "

        Lists available reserved DB instance offerings.

        ", "DescribeSourceRegions": "

        Returns a list of the source AWS regions where the current AWS region can create a Read Replica or copy a DB snapshot from. This API action supports pagination.

        ", "DownloadDBLogFilePortion": "

        Downloads all or a portion of the specified log file, up to 1 MB in size.

        ", "FailoverDBCluster": "

        Forces a failover for a DB cluster.

        A failover for a DB cluster promotes one of the read-only instances in the DB cluster to the master DB instance (the cluster writer) and deletes the current primary instance.

        Amazon Aurora will automatically fail over to a read-only instance, if one exists, when the primary instance fails. You can force a failover when you want to simulate a failure of a DB instance for testing. Because each instance in a DB cluster has its own endpoint address, you will need to clean up and re-establish any existing connections that use those endpoint addresses when the failover is complete.

        For more information on Amazon Aurora, see Aurora on Amazon RDS in the Amazon RDS User Guide.

        ", "ListTagsForResource": "

        Lists all tags on an Amazon RDS resource.

        For an overview on tagging an Amazon RDS resource, see Tagging Amazon RDS Resources.

        ", "ModifyDBCluster": "

        Modify a setting for an Amazon Aurora DB cluster. You can change one or more database configuration parameters by specifying these parameters and the new values in the request. For more information on Amazon Aurora, see Aurora on Amazon RDS in the Amazon RDS User Guide.

        ", "ModifyDBClusterParameterGroup": "

        Modifies the parameters of a DB cluster parameter group. To modify more than one parameter, submit a list of the following: ParameterName, ParameterValue, and ApplyMethod. A maximum of 20 parameters can be modified in a single request.

        For more information on Amazon Aurora, see Aurora on Amazon RDS in the Amazon RDS User Guide.

        Changes to dynamic parameters are applied immediately. Changes to static parameters require a reboot without failover to the DB cluster associated with the parameter group before the change can take effect.

        After you create a DB cluster parameter group, you should wait at least 5 minutes before creating your first DB cluster that uses that DB cluster parameter group as the default parameter group. This allows Amazon RDS to fully complete the create action before the parameter group is used as the default for a new DB cluster. This is especially important for parameters that are critical when creating the default database for a DB cluster, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBClusterParameters command to verify that your DB cluster parameter group has been created or modified.

        ", "ModifyDBClusterSnapshotAttribute": "

        Adds an attribute and values to, or removes an attribute and values from, a manual DB cluster snapshot.

        To share a manual DB cluster snapshot with other AWS accounts, specify restore as the AttributeName and use the ValuesToAdd parameter to add a list of IDs of the AWS accounts that are authorized to restore the manual DB cluster snapshot. Use the value all to make the manual DB cluster snapshot public, which means that it can be copied or restored by all AWS accounts. Do not add the all value for any manual DB cluster snapshots that contain private information that you don't want available to all AWS accounts.

        To view which AWS accounts have access to copy or restore a manual DB cluster snapshot, or whether a manual DB cluster snapshot public or private, use the DescribeDBClusterSnapshotAttributes API action.

        If a manual DB cluster snapshot is encrypted, it cannot be shared.

        ", "ModifyDBInstance": "

        Modifies settings for a DB instance. You can change one or more database configuration parameters by specifying these parameters and the new values in the request.

        ", "ModifyDBParameterGroup": "

        Modifies the parameters of a DB parameter group. To modify more than one parameter, submit a list of the following: ParameterName, ParameterValue, and ApplyMethod. A maximum of 20 parameters can be modified in a single request.

        Changes to dynamic parameters are applied immediately. Changes to static parameters require a reboot without failover to the DB instance associated with the parameter group before the change can take effect.

        After you modify a DB parameter group, you should wait at least 5 minutes before creating your first DB instance that uses that DB parameter group as the default parameter group. This allows Amazon RDS to fully complete the modify action before the parameter group is used as the default for a new DB instance. This is especially important for parameters that are critical when creating the default database for a DB instance, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBParameters command to verify that your DB parameter group has been created or modified.

        ", "ModifyDBSnapshotAttribute": "

        Adds an attribute and values to, or removes an attribute and values from, a manual DB snapshot.

        To share a manual DB snapshot with other AWS accounts, specify restore as the AttributeName and use the ValuesToAdd parameter to add a list of IDs of the AWS accounts that are authorized to restore the manual DB snapshot. Uses the value all to make the manual DB snapshot public, which means it can be copied or restored by all AWS accounts. Do not add the all value for any manual DB snapshots that contain private information that you don't want available to all AWS accounts.

        To view which AWS accounts have access to copy or restore a manual DB snapshot, or whether a manual DB snapshot public or private, use the DescribeDBSnapshotAttributes API action.

        If the manual DB snapshot is encrypted, it cannot be shared.

        ", "ModifyDBSubnetGroup": "

        Modifies an existing DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in the region.

        ", "ModifyEventSubscription": "

        Modifies an existing RDS event notification subscription. Note that you cannot modify the source identifiers using this call; to change source identifiers for a subscription, use the AddSourceIdentifierToSubscription and RemoveSourceIdentifierFromSubscription calls.

        You can see a list of the event categories for a given SourceType in the Events topic in the Amazon RDS User Guide or by using the DescribeEventCategories action.

        ", "ModifyOptionGroup": "

        Modifies an existing option group.

        ", "PromoteReadReplica": "

        Promotes a Read Replica DB instance to a standalone DB instance.

        We recommend that you enable automated backups on your Read Replica before promoting the Read Replica. This ensures that no backup is taken during the promotion process. Once the instance is promoted to a primary instance, backups are taken based on your backup settings.

        ", "PromoteReadReplicaDBCluster": "

        Promotes a Read Replica DB cluster to a standalone DB cluster.

        ", "PurchaseReservedDBInstancesOffering": "

        Purchases a reserved DB instance offering.

        ", "RebootDBInstance": "

        Rebooting a DB instance restarts the database engine service. A reboot also applies to the DB instance any modifications to the associated DB parameter group that were pending. Rebooting a DB instance results in a momentary outage of the instance, during which the DB instance status is set to rebooting. If the RDS instance is configured for MultiAZ, it is possible that the reboot will be conducted through a failover. An Amazon RDS event is created when the reboot is completed.

        If your DB instance is deployed in multiple Availability Zones, you can force a failover from one AZ to the other during the reboot. You might force a failover to test the availability of your DB instance deployment or to restore operations to the original AZ after a failover occurs.

        The time required to reboot is a function of the specific database engine's crash recovery process. To improve the reboot time, we recommend that you reduce database activities as much as possible during the reboot process to reduce rollback activity for in-transit transactions.

        ", "RemoveRoleFromDBCluster": "

        Disassociates an Identity and Access Management (IAM) role from an Aurora DB cluster. For more information, see Authorizing Amazon Aurora to Access Other AWS Services On Your Behalf.

        ", "RemoveSourceIdentifierFromSubscription": "

        Removes a source identifier from an existing RDS event notification subscription.

        ", "RemoveTagsFromResource": "

        Removes metadata tags from an Amazon RDS resource.

        For an overview on tagging an Amazon RDS resource, see Tagging Amazon RDS Resources.

        ", "ResetDBClusterParameterGroup": "

        Modifies the parameters of a DB cluster parameter group to the default value. To reset specific parameters submit a list of the following: ParameterName and ApplyMethod. To reset the entire DB cluster parameter group, specify the DBClusterParameterGroupName and ResetAllParameters parameters.

        When resetting the entire group, dynamic parameters are updated immediately and static parameters are set to pending-reboot to take effect on the next DB instance restart or RebootDBInstance request. You must call RebootDBInstance for every DB instance in your DB cluster that you want the updated static parameter to apply to.

        For more information on Amazon Aurora, see Aurora on Amazon RDS in the Amazon RDS User Guide.

        ", "ResetDBParameterGroup": "

        Modifies the parameters of a DB parameter group to the engine/system default value. To reset specific parameters submit a list of the following: ParameterName and ApplyMethod. To reset the entire DB parameter group, specify the DBParameterGroup name and ResetAllParameters parameters. When resetting the entire group, dynamic parameters are updated immediately and static parameters are set to pending-reboot to take effect on the next DB instance restart or RebootDBInstance request.

        ", "RestoreDBClusterFromS3": "

        Creates an Amazon Aurora DB cluster from data stored in an Amazon S3 bucket. Amazon RDS must be authorized to access the Amazon S3 bucket and the data must be created using the Percona XtraBackup utility as described in Migrating Data from MySQL by Using an Amazon S3 Bucket.

        ", "RestoreDBClusterFromSnapshot": "

        Creates a new DB cluster from a DB cluster snapshot. The target DB cluster is created from the source DB cluster restore point with the same configuration as the original source DB cluster, except that the new DB cluster is created with the default security group.

        For more information on Amazon Aurora, see Aurora on Amazon RDS in the Amazon RDS User Guide.

        ", "RestoreDBClusterToPointInTime": "

        Restores a DB cluster to an arbitrary point in time. Users can restore to any point in time before LatestRestorableTime for up to BackupRetentionPeriod days. The target DB cluster is created from the source DB cluster with the same configuration as the original DB cluster, except that the new DB cluster is created with the default DB security group.

        For more information on Amazon Aurora, see Aurora on Amazon RDS in the Amazon RDS User Guide.

        ", "RestoreDBInstanceFromDBSnapshot": "

        Creates a new DB instance from a DB snapshot. The target database is created from the source database restore point with the most of original configuration with the default security group and the default DB parameter group. By default, the new DB instance is created as a single-AZ deployment except when the instance is a SQL Server instance that has an option group that is associated with mirroring; in this case, the instance becomes a mirrored AZ deployment and not a single-AZ deployment.

        If your intent is to replace your original DB instance with the new, restored DB instance, then rename your original DB instance before you call the RestoreDBInstanceFromDBSnapshot action. RDS does not allow two DB instances with the same name. Once you have renamed your original DB instance with a different identifier, then you can pass the original name of the DB instance as the DBInstanceIdentifier in the call to the RestoreDBInstanceFromDBSnapshot action. The result is that you will replace the original DB instance with the DB instance created from the snapshot.

        If you are restoring from a shared manual DB snapshot, the DBSnapshotIdentifier must be the ARN of the shared DB snapshot.

        ", "RestoreDBInstanceToPointInTime": "

        Restores a DB instance to an arbitrary point in time. You can restore to any point in time before the time identified by the LatestRestorableTime property. You can restore to a point up to the number of days specified by the BackupRetentionPeriod property.

        The target database is created with most of the original configuration, but in a system-selected availability zone, with the default security group, the default subnet group, and the default DB parameter group. By default, the new DB instance is created as a single-AZ deployment except when the instance is a SQL Server instance that has an option group that is associated with mirroring; in this case, the instance becomes a mirrored deployment and not a single-AZ deployment.

        ", "RevokeDBSecurityGroupIngress": "

        Revokes ingress from a DBSecurityGroup for previously authorized IP ranges or EC2 or VPC Security Groups. Required parameters for this API are one of CIDRIP, EC2SecurityGroupId for VPC, or (EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId).

        " }, "shapes": { "AccountAttributesMessage": { "base": "

        Data returned by the DescribeAccountAttributes action.

        ", "refs": { } }, "AccountQuota": { "base": "

        Describes a quota for an AWS account, for example, the number of DB instances allowed.

        ", "refs": { "AccountQuotaList$member": null } }, "AccountQuotaList": { "base": null, "refs": { "AccountAttributesMessage$AccountQuotas": "

        A list of AccountQuota objects. Within this list, each quota has a name, a count of usage toward the quota maximum, and a maximum value for the quota.

        " } }, "AddRoleToDBClusterMessage": { "base": null, "refs": { } }, "AddSourceIdentifierToSubscriptionMessage": { "base": "

        ", "refs": { } }, "AddSourceIdentifierToSubscriptionResult": { "base": null, "refs": { } }, "AddTagsToResourceMessage": { "base": "

        ", "refs": { } }, "ApplyMethod": { "base": null, "refs": { "Parameter$ApplyMethod": "

        Indicates when to apply parameter updates.

        " } }, "ApplyPendingMaintenanceActionMessage": { "base": "

        ", "refs": { } }, "ApplyPendingMaintenanceActionResult": { "base": null, "refs": { } }, "AttributeValueList": { "base": null, "refs": { "DBClusterSnapshotAttribute$AttributeValues": "

        The value(s) for the manual DB cluster snapshot attribute.

        If the AttributeName field is set to restore, then this element returns a list of IDs of the AWS accounts that are authorized to copy or restore the manual DB cluster snapshot. If a value of all is in the list, then the manual DB cluster snapshot is public and available for any AWS account to copy or restore.

        ", "DBSnapshotAttribute$AttributeValues": "

        The value or values for the manual DB snapshot attribute.

        If the AttributeName field is set to restore, then this element returns a list of IDs of the AWS accounts that are authorized to copy or restore the manual DB snapshot. If a value of all is in the list, then the manual DB snapshot is public and available for any AWS account to copy or restore.

        ", "ModifyDBClusterSnapshotAttributeMessage$ValuesToAdd": "

        A list of DB cluster snapshot attributes to add to the attribute specified by AttributeName.

        To authorize other AWS accounts to copy or restore a manual DB cluster snapshot, set this list to include one or more AWS account IDs, or all to make the manual DB cluster snapshot restorable by any AWS account. Do not add the all value for any manual DB cluster snapshots that contain private information that you don't want available to all AWS accounts.

        ", "ModifyDBClusterSnapshotAttributeMessage$ValuesToRemove": "

        A list of DB cluster snapshot attributes to remove from the attribute specified by AttributeName.

        To remove authorization for other AWS accounts to copy or restore a manual DB cluster snapshot, set this list to include one or more AWS account identifiers, or all to remove authorization for any AWS account to copy or restore the DB cluster snapshot. If you specify all, an AWS account whose account ID is explicitly added to the restore attribute can still copy or restore a manual DB cluster snapshot.

        ", "ModifyDBSnapshotAttributeMessage$ValuesToAdd": "

        A list of DB snapshot attributes to add to the attribute specified by AttributeName.

        To authorize other AWS accounts to copy or restore a manual snapshot, set this list to include one or more AWS account IDs, or all to make the manual DB snapshot restorable by any AWS account. Do not add the all value for any manual DB snapshots that contain private information that you don't want available to all AWS accounts.

        ", "ModifyDBSnapshotAttributeMessage$ValuesToRemove": "

        A list of DB snapshot attributes to remove from the attribute specified by AttributeName.

        To remove authorization for other AWS accounts to copy or restore a manual snapshot, set this list to include one or more AWS account identifiers, or all to remove authorization for any AWS account to copy or restore the DB snapshot. If you specify all, an AWS account whose account ID is explicitly added to the restore attribute can still copy or restore the manual DB snapshot.

        " } }, "AuthorizationAlreadyExistsFault": { "base": "

        The specified CIDRIP or EC2 security group is already authorized for the specified DB security group.

        ", "refs": { } }, "AuthorizationNotFoundFault": { "base": "

        Specified CIDRIP or EC2 security group is not authorized for the specified DB security group.

        RDS may not also be authorized via IAM to perform necessary actions on your behalf.

        ", "refs": { } }, "AuthorizationQuotaExceededFault": { "base": "

        DB security group authorization quota has been reached.

        ", "refs": { } }, "AuthorizeDBSecurityGroupIngressMessage": { "base": "

        ", "refs": { } }, "AuthorizeDBSecurityGroupIngressResult": { "base": null, "refs": { } }, "AvailabilityZone": { "base": "

        Contains Availability Zone information.

        This data type is used as an element in the following data type:

        ", "refs": { "AvailabilityZoneList$member": null, "Subnet$SubnetAvailabilityZone": null } }, "AvailabilityZoneList": { "base": null, "refs": { "OrderableDBInstanceOption$AvailabilityZones": "

        A list of Availability Zones for the orderable DB instance.

        " } }, "AvailabilityZones": { "base": null, "refs": { "CreateDBClusterMessage$AvailabilityZones": "

        A list of EC2 Availability Zones that instances in the DB cluster can be created in. For information on regions and Availability Zones, see Regions and Availability Zones.

        ", "DBCluster$AvailabilityZones": "

        Provides the list of EC2 Availability Zones that instances in the DB cluster can be created in.

        ", "DBClusterSnapshot$AvailabilityZones": "

        Provides the list of EC2 Availability Zones that instances in the DB cluster snapshot can be restored in.

        ", "RestoreDBClusterFromS3Message$AvailabilityZones": "

        A list of EC2 Availability Zones that instances in the restored DB cluster can be created in.

        ", "RestoreDBClusterFromSnapshotMessage$AvailabilityZones": "

        Provides the list of EC2 Availability Zones that instances in the restored DB cluster can be created in.

        " } }, "Boolean": { "base": null, "refs": { "DBCluster$StorageEncrypted": "

        Specifies whether the DB cluster is encrypted.

        ", "DBClusterMember$IsClusterWriter": "

        Value that is true if the cluster member is the primary instance for the DB cluster and false otherwise.

        ", "DBClusterSnapshot$StorageEncrypted": "

        Specifies whether the DB cluster snapshot is encrypted.

        ", "DBInstance$MultiAZ": "

        Specifies if the DB instance is a Multi-AZ deployment.

        ", "DBInstance$AutoMinorVersionUpgrade": "

        Indicates that minor version patches are applied automatically.

        ", "DBInstance$PubliclyAccessible": "

        Specifies the accessibility options for the DB instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC:true

        • VPC:false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "DBInstance$StorageEncrypted": "

        Specifies whether the DB instance is encrypted.

        ", "DBInstance$CopyTagsToSnapshot": "

        Specifies whether tags are copied from the DB instance to snapshots of the DB instance.

        ", "DBInstanceStatusInfo$Normal": "

        Boolean value that is true if the instance is operating normally, or false if the instance is in an error state.

        ", "DBSnapshot$Encrypted": "

        Specifies whether the DB snapshot is encrypted.

        ", "DeleteDBClusterMessage$SkipFinalSnapshot": "

        Determines whether a final DB cluster snapshot is created before the DB cluster is deleted. If true is specified, no DB cluster snapshot is created. If false is specified, a DB cluster snapshot is created before the DB cluster is deleted.

        You must specify a FinalDBSnapshotIdentifier parameter if SkipFinalSnapshot is false.

        Default: false

        ", "DeleteDBInstanceMessage$SkipFinalSnapshot": "

        Determines whether a final DB snapshot is created before the DB instance is deleted. If true is specified, no DBSnapshot is created. If false is specified, a DB snapshot is created before the DB instance is deleted.

        Note that when a DB instance is in a failure state and has a status of 'failed', 'incompatible-restore', or 'incompatible-network', it can only be deleted when the SkipFinalSnapshot parameter is set to \"true\".

        Specify true when deleting a Read Replica.

        The FinalDBSnapshotIdentifier parameter must be specified if SkipFinalSnapshot is false.

        Default: false

        ", "DescribeDBClusterSnapshotsMessage$IncludeShared": "

        Set this value to true to include shared manual DB cluster snapshots from other AWS accounts that this AWS account has been given permission to copy or restore, otherwise set this value to false. The default is false.

        You can give an AWS account permission to restore a manual DB cluster snapshot from another AWS account by the ModifyDBClusterSnapshotAttribute API action.

        ", "DescribeDBClusterSnapshotsMessage$IncludePublic": "

        Set this value to true to include manual DB cluster snapshots that are public and can be copied or restored by any AWS account, otherwise set this value to false. The default is false. The default is false.

        You can share a manual DB cluster snapshot as public by using the ModifyDBClusterSnapshotAttribute API action.

        ", "DescribeDBEngineVersionsMessage$DefaultOnly": "

        Indicates that only the default version of the specified engine or engine and major version combination is returned.

        ", "DescribeDBSnapshotsMessage$IncludeShared": "

        Set this value to true to include shared manual DB snapshots from other AWS accounts that this AWS account has been given permission to copy or restore, otherwise set this value to false. The default is false.

        You can give an AWS account permission to restore a manual DB snapshot from another AWS account by using the ModifyDBSnapshotAttribute API action.

        ", "DescribeDBSnapshotsMessage$IncludePublic": "

        Set this value to true to include manual DB snapshots that are public and can be copied or restored by any AWS account, otherwise set this value to false. The default is false.

        You can share a manual DB snapshot as public by using the ModifyDBSnapshotAttribute API.

        ", "DownloadDBLogFilePortionDetails$AdditionalDataPending": "

        Boolean value that if true, indicates there is more data to be downloaded.

        ", "EventSubscription$Enabled": "

        A Boolean value indicating if the subscription is enabled. True indicates the subscription is enabled.

        ", "ModifyDBClusterMessage$ApplyImmediately": "

        A value that specifies whether the modifications in this request and any pending modifications are asynchronously applied as soon as possible, regardless of the PreferredMaintenanceWindow setting for the DB cluster. If this parameter is set to false, changes to the DB cluster are applied during the next maintenance window.

        The ApplyImmediately parameter only affects the NewDBClusterIdentifier and MasterUserPassword values. If you set the ApplyImmediately parameter value to false, then changes to the NewDBClusterIdentifier and MasterUserPassword values are applied during the next maintenance window. All other changes are applied immediately, regardless of the value of the ApplyImmediately parameter.

        Default: false

        ", "ModifyDBInstanceMessage$ApplyImmediately": "

        Specifies whether the modifications in this request and any pending modifications are asynchronously applied as soon as possible, regardless of the PreferredMaintenanceWindow setting for the DB instance.

        If this parameter is set to false, changes to the DB instance are applied during the next maintenance window. Some parameter changes can cause an outage and will be applied on the next call to RebootDBInstance, or the next failure reboot. Review the table of parameters in Modifying a DB Instance and Using the Apply Immediately Parameter to see the impact that setting ApplyImmediately to true or false has for each modified parameter and to determine when the changes will be applied.

        Default: false

        ", "ModifyDBInstanceMessage$AllowMajorVersionUpgrade": "

        Indicates that major version upgrades are allowed. Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible.

        Constraints: This parameter must be set to true when specifying a value for the EngineVersion parameter that is a different major version than the DB instance's current version.

        ", "ModifyOptionGroupMessage$ApplyImmediately": "

        Indicates whether the changes should be applied immediately, or during the next maintenance window for each instance associated with the option group.

        ", "Option$Persistent": "

        Indicate if this option is persistent.

        ", "Option$Permanent": "

        Indicate if this option is permanent.

        ", "OptionGroup$AllowsVpcAndNonVpcInstanceMemberships": "

        Indicates whether this option group can be applied to both VPC and non-VPC instances. The value true indicates the option group can be applied to both VPC and non-VPC instances.

        ", "OptionGroupOption$PortRequired": "

        Specifies whether the option requires a port.

        ", "OptionGroupOption$Persistent": "

        Persistent options can't be removed from an option group while DB instances are associated with the option group. If you disassociate all DB instances from the option group, your can remove the persistent option from the option group.

        ", "OptionGroupOption$Permanent": "

        Permanent options can never be removed from an option group. An option group containing a permanent option can't be removed from a DB instance.

        ", "OptionGroupOptionSetting$IsModifiable": "

        Boolean value where true indicates that this option group option can be changed from the default value.

        ", "OptionSetting$IsModifiable": "

        A Boolean value that, when true, indicates the option setting can be modified from the default.

        ", "OptionSetting$IsCollection": "

        Indicates if the option setting is part of a collection.

        ", "OptionVersion$IsDefault": "

        True if the version is the default version of the option; otherwise, false.

        ", "OrderableDBInstanceOption$MultiAZCapable": "

        Indicates whether this orderable DB instance is multi-AZ capable.

        ", "OrderableDBInstanceOption$ReadReplicaCapable": "

        Indicates whether this orderable DB instance can have a Read Replica.

        ", "OrderableDBInstanceOption$Vpc": "

        Indicates whether this is a VPC orderable DB instance.

        ", "OrderableDBInstanceOption$SupportsStorageEncryption": "

        Indicates whether this orderable DB instance supports encrypted storage.

        ", "OrderableDBInstanceOption$SupportsIops": "

        Indicates whether this orderable DB instance supports provisioned IOPS.

        ", "OrderableDBInstanceOption$SupportsEnhancedMonitoring": "

        Indicates whether the DB instance supports enhanced monitoring at intervals from 1 to 60 seconds.

        ", "Parameter$IsModifiable": "

        Indicates whether (true) or not (false) the parameter can be modified. Some parameters have security or operational implications that prevent them from being changed.

        ", "ReservedDBInstance$MultiAZ": "

        Indicates if the reservation applies to Multi-AZ deployments.

        ", "ReservedDBInstancesOffering$MultiAZ": "

        Indicates if the offering applies to Multi-AZ deployments.

        ", "ResetDBClusterParameterGroupMessage$ResetAllParameters": "

        A value that is set to true to reset all parameters in the DB cluster parameter group to their default values, and false otherwise. You cannot use this parameter if there is a list of parameter names specified for the Parameters parameter.

        ", "ResetDBParameterGroupMessage$ResetAllParameters": "

        Specifies whether (true) or not (false) to reset all parameters in the DB parameter group to default values.

        Default: true

        ", "RestoreDBClusterToPointInTimeMessage$UseLatestRestorableTime": "

        A value that is set to true to restore the DB cluster to the latest restorable backup time, and false otherwise.

        Default: false

        Constraints: Cannot be specified if RestoreToTime parameter is provided.

        ", "RestoreDBInstanceToPointInTimeMessage$UseLatestRestorableTime": "

        Specifies whether (true) or not (false) the DB instance is restored from the latest backup time.

        Default: false

        Constraints: Cannot be specified if RestoreTime parameter is provided.

        ", "UpgradeTarget$AutoUpgrade": "

        A value that indicates whether the target version will be applied to any source DB instances that have AutoMinorVersionUpgrade set to true.

        ", "UpgradeTarget$IsMajorVersionUpgrade": "

        A value that indicates whether a database engine will be upgraded to a major version.

        " } }, "BooleanOptional": { "base": null, "refs": { "CopyDBSnapshotMessage$CopyTags": "

        True to copy all tags from the source DB snapshot to the target DB snapshot; otherwise false. The default is false.

        ", "CreateDBClusterMessage$StorageEncrypted": "

        Specifies whether the DB cluster is encrypted.

        ", "CreateDBInstanceMessage$MultiAZ": "

        Specifies if the DB instance is a Multi-AZ deployment. You cannot set the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        ", "CreateDBInstanceMessage$AutoMinorVersionUpgrade": "

        Indicates that minor engine upgrades will be applied automatically to the DB instance during the maintenance window.

        Default: true

        ", "CreateDBInstanceMessage$PubliclyAccessible": "

        Specifies the accessibility options for the DB instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC: true

        • VPC: false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "CreateDBInstanceMessage$StorageEncrypted": "

        Specifies whether the DB instance is encrypted.

        Default: false

        ", "CreateDBInstanceMessage$CopyTagsToSnapshot": "

        True to copy all tags from the DB instance to snapshots of the DB instance; otherwise false. The default is false.

        ", "CreateDBInstanceReadReplicaMessage$AutoMinorVersionUpgrade": "

        Indicates that minor engine upgrades will be applied automatically to the Read Replica during the maintenance window.

        Default: Inherits from the source DB instance

        ", "CreateDBInstanceReadReplicaMessage$PubliclyAccessible": "

        Specifies the accessibility options for the DB instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC:true

        • VPC:false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "CreateDBInstanceReadReplicaMessage$CopyTagsToSnapshot": "

        True to copy all tags from the Read Replica to snapshots of the Read Replica; otherwise false. The default is false.

        ", "CreateEventSubscriptionMessage$Enabled": "

        A Boolean value; set to true to activate the subscription, set to false to create the subscription but not active it.

        ", "DescribeDBEngineVersionsMessage$ListSupportedCharacterSets": "

        If this parameter is specified and the requested engine supports the CharacterSetName parameter for CreateDBInstance, the response includes a list of supported character sets for each engine version.

        ", "DescribeDBEngineVersionsMessage$ListSupportedTimezones": "

        If this parameter is specified and the requested engine supports the TimeZone parameter for CreateDBInstance, the response includes a list of supported time zones for each engine version.

        ", "DescribeOrderableDBInstanceOptionsMessage$Vpc": "

        The VPC filter value. Specify this parameter to show only the available VPC or non-VPC offerings.

        ", "DescribeReservedDBInstancesMessage$MultiAZ": "

        The Multi-AZ filter value. Specify this parameter to show only those reservations matching the specified Multi-AZ parameter.

        ", "DescribeReservedDBInstancesOfferingsMessage$MultiAZ": "

        The Multi-AZ filter value. Specify this parameter to show only the available offerings matching the specified Multi-AZ parameter.

        ", "ModifyDBInstanceMessage$MultiAZ": "

        Specifies if the DB instance is a Multi-AZ deployment. Changing this parameter does not result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        Constraints: Cannot be specified if the DB instance is a Read Replica.

        ", "ModifyDBInstanceMessage$AutoMinorVersionUpgrade": "

        Indicates that minor version upgrades will be applied automatically to the DB instance during the maintenance window. Changing this parameter does not result in an outage except in the following case and the change is asynchronously applied as soon as possible. An outage will result if this parameter is set to true during the maintenance window, and a newer minor version is available, and RDS has enabled auto patching for that engine version.

        ", "ModifyDBInstanceMessage$CopyTagsToSnapshot": "

        True to copy all tags from the DB instance to snapshots of the DB instance; otherwise false. The default is false.

        ", "ModifyDBInstanceMessage$PubliclyAccessible": "

        Boolean value that indicates if the DB instance has a publicly resolvable DNS name. Set to True to make the DB instance Internet-facing with a publicly resolvable DNS name, which resolves to a public IP address. Set to False to make the DB instance internal with a DNS name that resolves to a private IP address.

        PubliclyAccessible only applies to DB instances in a VPC. The DB instance must be part of a public subnet and PubliclyAccessible must be true in order for it to be publicly accessible.

        Changes to the PubliclyAccessible parameter are applied immediately regardless of the value of the ApplyImmediately parameter.

        Default: false

        ", "ModifyEventSubscriptionMessage$Enabled": "

        A Boolean value; set to true to activate the subscription.

        ", "PendingModifiedValues$MultiAZ": "

        Indicates that the Single-AZ DB instance is to change to a Multi-AZ deployment.

        ", "RebootDBInstanceMessage$ForceFailover": "

        When true, the reboot will be conducted through a MultiAZ failover.

        Constraint: You cannot specify true if the instance is not configured for MultiAZ.

        ", "RestoreDBClusterFromS3Message$StorageEncrypted": "

        Specifies whether the restored DB cluster is encrypted.

        ", "RestoreDBInstanceFromDBSnapshotMessage$MultiAZ": "

        Specifies if the DB instance is a Multi-AZ deployment.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        ", "RestoreDBInstanceFromDBSnapshotMessage$PubliclyAccessible": "

        Specifies the accessibility options for the DB instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC: true

        • VPC: false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "RestoreDBInstanceFromDBSnapshotMessage$AutoMinorVersionUpgrade": "

        Indicates that minor version upgrades will be applied automatically to the DB instance during the maintenance window.

        ", "RestoreDBInstanceFromDBSnapshotMessage$CopyTagsToSnapshot": "

        True to copy all tags from the restored DB instance to snapshots of the DB instance; otherwise false. The default is false.

        ", "RestoreDBInstanceToPointInTimeMessage$MultiAZ": "

        Specifies if the DB instance is a Multi-AZ deployment.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        ", "RestoreDBInstanceToPointInTimeMessage$PubliclyAccessible": "

        Specifies the accessibility options for the DB instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

        Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

        • Default VPC:true

        • VPC:false

        If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

        ", "RestoreDBInstanceToPointInTimeMessage$AutoMinorVersionUpgrade": "

        Indicates that minor version upgrades will be applied automatically to the DB instance during the maintenance window.

        ", "RestoreDBInstanceToPointInTimeMessage$CopyTagsToSnapshot": "

        True to copy all tags from the restored DB instance to snapshots of the DB instance; otherwise false. The default is false.

        " } }, "Certificate": { "base": "

        A CA certificate for an AWS account.

        ", "refs": { "CertificateList$member": null } }, "CertificateList": { "base": null, "refs": { "CertificateMessage$Certificates": "

        The list of Certificate objects for the AWS account.

        " } }, "CertificateMessage": { "base": "

        Data returned by the DescribeCertificates action.

        ", "refs": { } }, "CertificateNotFoundFault": { "base": "

        CertificateIdentifier does not refer to an existing certificate.

        ", "refs": { } }, "CharacterSet": { "base": "

        This data type is used as a response element in the action DescribeDBEngineVersions.

        ", "refs": { "DBEngineVersion$DefaultCharacterSet": "

        The default character set for new instances of this engine version, if the CharacterSetName parameter of the CreateDBInstance API is not specified.

        ", "SupportedCharacterSetsList$member": null } }, "CopyDBClusterParameterGroupMessage": { "base": null, "refs": { } }, "CopyDBClusterParameterGroupResult": { "base": null, "refs": { } }, "CopyDBClusterSnapshotMessage": { "base": "

        ", "refs": { } }, "CopyDBClusterSnapshotResult": { "base": null, "refs": { } }, "CopyDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "CopyDBParameterGroupResult": { "base": null, "refs": { } }, "CopyDBSnapshotMessage": { "base": "

        ", "refs": { } }, "CopyDBSnapshotResult": { "base": null, "refs": { } }, "CopyOptionGroupMessage": { "base": "

        ", "refs": { } }, "CopyOptionGroupResult": { "base": null, "refs": { } }, "CreateDBClusterMessage": { "base": "

        ", "refs": { } }, "CreateDBClusterParameterGroupMessage": { "base": "

        ", "refs": { } }, "CreateDBClusterParameterGroupResult": { "base": null, "refs": { } }, "CreateDBClusterResult": { "base": null, "refs": { } }, "CreateDBClusterSnapshotMessage": { "base": "

        ", "refs": { } }, "CreateDBClusterSnapshotResult": { "base": null, "refs": { } }, "CreateDBInstanceMessage": { "base": "

        ", "refs": { } }, "CreateDBInstanceReadReplicaMessage": { "base": null, "refs": { } }, "CreateDBInstanceReadReplicaResult": { "base": null, "refs": { } }, "CreateDBInstanceResult": { "base": null, "refs": { } }, "CreateDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "CreateDBParameterGroupResult": { "base": null, "refs": { } }, "CreateDBSecurityGroupMessage": { "base": "

        ", "refs": { } }, "CreateDBSecurityGroupResult": { "base": null, "refs": { } }, "CreateDBSnapshotMessage": { "base": "

        ", "refs": { } }, "CreateDBSnapshotResult": { "base": null, "refs": { } }, "CreateDBSubnetGroupMessage": { "base": "

        ", "refs": { } }, "CreateDBSubnetGroupResult": { "base": null, "refs": { } }, "CreateEventSubscriptionMessage": { "base": "

        ", "refs": { } }, "CreateEventSubscriptionResult": { "base": null, "refs": { } }, "CreateOptionGroupMessage": { "base": "

        ", "refs": { } }, "CreateOptionGroupResult": { "base": null, "refs": { } }, "DBCluster": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBClusters action.

        ", "refs": { "CreateDBClusterResult$DBCluster": null, "DBClusterList$member": null, "DeleteDBClusterResult$DBCluster": null, "FailoverDBClusterResult$DBCluster": null, "ModifyDBClusterResult$DBCluster": null, "PromoteReadReplicaDBClusterResult$DBCluster": null, "RestoreDBClusterFromS3Result$DBCluster": null, "RestoreDBClusterFromSnapshotResult$DBCluster": null, "RestoreDBClusterToPointInTimeResult$DBCluster": null } }, "DBClusterAlreadyExistsFault": { "base": "

        User already has a DB cluster with the given identifier.

        ", "refs": { } }, "DBClusterList": { "base": null, "refs": { "DBClusterMessage$DBClusters": "

        Contains a list of DB clusters for the user.

        " } }, "DBClusterMember": { "base": "

        Contains information about an instance that is part of a DB cluster.

        ", "refs": { "DBClusterMemberList$member": null } }, "DBClusterMemberList": { "base": null, "refs": { "DBCluster$DBClusterMembers": "

        Provides the list of instances that make up the DB cluster.

        " } }, "DBClusterMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBClusters action.

        ", "refs": { } }, "DBClusterNotFoundFault": { "base": "

        DBClusterIdentifier does not refer to an existing DB cluster.

        ", "refs": { } }, "DBClusterOptionGroupMemberships": { "base": null, "refs": { "DBCluster$DBClusterOptionGroupMemberships": "

        Provides the list of option group memberships for this DB cluster.

        " } }, "DBClusterOptionGroupStatus": { "base": "

        Contains status information for a DB cluster option group.

        ", "refs": { "DBClusterOptionGroupMemberships$member": null } }, "DBClusterParameterGroup": { "base": "

        Contains the result of a successful invocation of the CreateDBClusterParameterGroup or CopyDBClusterParameterGroup action.

        This data type is used as a request parameter in the DeleteDBClusterParameterGroup action, and as a response element in the DescribeDBClusterParameterGroups action.

        ", "refs": { "CopyDBClusterParameterGroupResult$DBClusterParameterGroup": null, "CreateDBClusterParameterGroupResult$DBClusterParameterGroup": null, "DBClusterParameterGroupList$member": null } }, "DBClusterParameterGroupDetails": { "base": "

        Provides details about a DB cluster parameter group including the parameters in the DB cluster parameter group.

        ", "refs": { } }, "DBClusterParameterGroupList": { "base": null, "refs": { "DBClusterParameterGroupsMessage$DBClusterParameterGroups": "

        A list of DB cluster parameter groups.

        " } }, "DBClusterParameterGroupNameMessage": { "base": "

        ", "refs": { } }, "DBClusterParameterGroupNotFoundFault": { "base": "

        DBClusterParameterGroupName does not refer to an existing DB Cluster parameter group.

        ", "refs": { } }, "DBClusterParameterGroupsMessage": { "base": "

        ", "refs": { } }, "DBClusterQuotaExceededFault": { "base": "

        User attempted to create a new DB cluster and the user has already reached the maximum allowed DB cluster quota.

        ", "refs": { } }, "DBClusterRole": { "base": "

        Describes an AWS Identity and Access Management (IAM) role that is associated with a DB cluster.

        ", "refs": { "DBClusterRoles$member": null } }, "DBClusterRoleAlreadyExistsFault": { "base": "

        The specified IAM role Amazon Resource Name (ARN) is already associated with the specified DB cluster.

        ", "refs": { } }, "DBClusterRoleNotFoundFault": { "base": "

        The specified IAM role Amazon Resource Name (ARN) is not associated with the specified DB cluster.

        ", "refs": { } }, "DBClusterRoleQuotaExceededFault": { "base": "

        You have exceeded the maximum number of IAM roles that can be associated with the specified DB cluster.

        ", "refs": { } }, "DBClusterRoles": { "base": null, "refs": { "DBCluster$AssociatedRoles": "

        Provides a list of the AWS Identity and Access Management (IAM) roles that are associated with the DB cluster. IAM roles that are associated with a DB cluster grant permission for the DB cluster to access other AWS services on your behalf.

        " } }, "DBClusterSnapshot": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBClusterSnapshots action.

        ", "refs": { "CopyDBClusterSnapshotResult$DBClusterSnapshot": null, "CreateDBClusterSnapshotResult$DBClusterSnapshot": null, "DBClusterSnapshotList$member": null, "DeleteDBClusterSnapshotResult$DBClusterSnapshot": null } }, "DBClusterSnapshotAlreadyExistsFault": { "base": "

        User already has a DB cluster snapshot with the given identifier.

        ", "refs": { } }, "DBClusterSnapshotAttribute": { "base": "

        Contains the name and values of a manual DB cluster snapshot attribute.

        Manual DB cluster snapshot attributes are used to authorize other AWS accounts to restore a manual DB cluster snapshot. For more information, see the ModifyDBClusterSnapshotAttribute API action.

        ", "refs": { "DBClusterSnapshotAttributeList$member": null } }, "DBClusterSnapshotAttributeList": { "base": null, "refs": { "DBClusterSnapshotAttributesResult$DBClusterSnapshotAttributes": "

        The list of attributes and values for the manual DB cluster snapshot.

        " } }, "DBClusterSnapshotAttributesResult": { "base": "

        Contains the results of a successful call to the DescribeDBClusterSnapshotAttributes API action.

        Manual DB cluster snapshot attributes are used to authorize other AWS accounts to copy or restore a manual DB cluster snapshot. For more information, see the ModifyDBClusterSnapshotAttribute API action.

        ", "refs": { "DescribeDBClusterSnapshotAttributesResult$DBClusterSnapshotAttributesResult": null, "ModifyDBClusterSnapshotAttributeResult$DBClusterSnapshotAttributesResult": null } }, "DBClusterSnapshotList": { "base": null, "refs": { "DBClusterSnapshotMessage$DBClusterSnapshots": "

        Provides a list of DB cluster snapshots for the user.

        " } }, "DBClusterSnapshotMessage": { "base": "

        Provides a list of DB cluster snapshots for the user as the result of a call to the DescribeDBClusterSnapshots action.

        ", "refs": { } }, "DBClusterSnapshotNotFoundFault": { "base": "

        DBClusterSnapshotIdentifier does not refer to an existing DB cluster snapshot.

        ", "refs": { } }, "DBEngineVersion": { "base": "

        This data type is used as a response element in the action DescribeDBEngineVersions.

        ", "refs": { "DBEngineVersionList$member": null } }, "DBEngineVersionList": { "base": null, "refs": { "DBEngineVersionMessage$DBEngineVersions": "

        A list of DBEngineVersion elements.

        " } }, "DBEngineVersionMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBEngineVersions action.

        ", "refs": { } }, "DBInstance": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBInstances action.

        ", "refs": { "CreateDBInstanceReadReplicaResult$DBInstance": null, "CreateDBInstanceResult$DBInstance": null, "DBInstanceList$member": null, "DeleteDBInstanceResult$DBInstance": null, "ModifyDBInstanceResult$DBInstance": null, "PromoteReadReplicaResult$DBInstance": null, "RebootDBInstanceResult$DBInstance": null, "RestoreDBInstanceFromDBSnapshotResult$DBInstance": null, "RestoreDBInstanceToPointInTimeResult$DBInstance": null } }, "DBInstanceAlreadyExistsFault": { "base": "

        User already has a DB instance with the given identifier.

        ", "refs": { } }, "DBInstanceList": { "base": null, "refs": { "DBInstanceMessage$DBInstances": "

        A list of DBInstance instances.

        " } }, "DBInstanceMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBInstances action.

        ", "refs": { } }, "DBInstanceNotFoundFault": { "base": "

        DBInstanceIdentifier does not refer to an existing DB instance.

        ", "refs": { } }, "DBInstanceStatusInfo": { "base": "

        Provides a list of status information for a DB instance.

        ", "refs": { "DBInstanceStatusInfoList$member": null } }, "DBInstanceStatusInfoList": { "base": null, "refs": { "DBInstance$StatusInfos": "

        The status of a Read Replica. If the instance is not a Read Replica, this will be blank.

        " } }, "DBLogFileNotFoundFault": { "base": "

        LogFileName does not refer to an existing DB log file.

        ", "refs": { } }, "DBParameterGroup": { "base": "

        Contains the result of a successful invocation of the CreateDBParameterGroup action.

        This data type is used as a request parameter in the DeleteDBParameterGroup action, and as a response element in the DescribeDBParameterGroups action.

        ", "refs": { "CopyDBParameterGroupResult$DBParameterGroup": null, "CreateDBParameterGroupResult$DBParameterGroup": null, "DBParameterGroupList$member": null } }, "DBParameterGroupAlreadyExistsFault": { "base": "

        A DB parameter group with the same name exists.

        ", "refs": { } }, "DBParameterGroupDetails": { "base": "

        Contains the result of a successful invocation of the DescribeDBParameters action.

        ", "refs": { } }, "DBParameterGroupList": { "base": null, "refs": { "DBParameterGroupsMessage$DBParameterGroups": "

        A list of DBParameterGroup instances.

        " } }, "DBParameterGroupNameMessage": { "base": "

        Contains the result of a successful invocation of the ModifyDBParameterGroup or ResetDBParameterGroup action.

        ", "refs": { } }, "DBParameterGroupNotFoundFault": { "base": "

        DBParameterGroupName does not refer to an existing DB parameter group.

        ", "refs": { } }, "DBParameterGroupQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB parameter groups.

        ", "refs": { } }, "DBParameterGroupStatus": { "base": "

        The status of the DB parameter group.

        This data type is used as a response element in the following actions:

        ", "refs": { "DBParameterGroupStatusList$member": null } }, "DBParameterGroupStatusList": { "base": null, "refs": { "DBInstance$DBParameterGroups": "

        Provides the list of DB parameter groups applied to this DB instance.

        " } }, "DBParameterGroupsMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBParameterGroups action.

        ", "refs": { } }, "DBSecurityGroup": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBSecurityGroups action.

        ", "refs": { "AuthorizeDBSecurityGroupIngressResult$DBSecurityGroup": null, "CreateDBSecurityGroupResult$DBSecurityGroup": null, "DBSecurityGroups$member": null, "RevokeDBSecurityGroupIngressResult$DBSecurityGroup": null } }, "DBSecurityGroupAlreadyExistsFault": { "base": "

        A DB security group with the name specified in DBSecurityGroupName already exists.

        ", "refs": { } }, "DBSecurityGroupMembership": { "base": "

        This data type is used as a response element in the following actions:

        ", "refs": { "DBSecurityGroupMembershipList$member": null } }, "DBSecurityGroupMembershipList": { "base": null, "refs": { "DBInstance$DBSecurityGroups": "

        Provides List of DB security group elements containing only DBSecurityGroup.Name and DBSecurityGroup.Status subelements.

        ", "Option$DBSecurityGroupMemberships": "

        If the option requires access to a port, then this DB security group allows access to the port.

        " } }, "DBSecurityGroupMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBSecurityGroups action.

        ", "refs": { } }, "DBSecurityGroupNameList": { "base": null, "refs": { "CreateDBInstanceMessage$DBSecurityGroups": "

        A list of DB security groups to associate with this DB instance.

        Default: The default DB security group for the database engine.

        ", "ModifyDBInstanceMessage$DBSecurityGroups": "

        A list of DB security groups to authorize on this DB instance. Changing this setting does not result in an outage and the change is asynchronously applied as soon as possible.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "OptionConfiguration$DBSecurityGroupMemberships": "

        A list of DBSecurityGroupMemebrship name strings used for this option.

        " } }, "DBSecurityGroupNotFoundFault": { "base": "

        DBSecurityGroupName does not refer to an existing DB security group.

        ", "refs": { } }, "DBSecurityGroupNotSupportedFault": { "base": "

        A DB security group is not allowed for this action.

        ", "refs": { } }, "DBSecurityGroupQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB security groups.

        ", "refs": { } }, "DBSecurityGroups": { "base": null, "refs": { "DBSecurityGroupMessage$DBSecurityGroups": "

        A list of DBSecurityGroup instances.

        " } }, "DBSnapshot": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBSnapshots action.

        ", "refs": { "CopyDBSnapshotResult$DBSnapshot": null, "CreateDBSnapshotResult$DBSnapshot": null, "DBSnapshotList$member": null, "DeleteDBSnapshotResult$DBSnapshot": null } }, "DBSnapshotAlreadyExistsFault": { "base": "

        DBSnapshotIdentifier is already used by an existing snapshot.

        ", "refs": { } }, "DBSnapshotAttribute": { "base": "

        Contains the name and values of a manual DB snapshot attribute

        Manual DB snapshot attributes are used to authorize other AWS accounts to restore a manual DB snapshot. For more information, see the ModifyDBSnapshotAttribute API.

        ", "refs": { "DBSnapshotAttributeList$member": null } }, "DBSnapshotAttributeList": { "base": null, "refs": { "DBSnapshotAttributesResult$DBSnapshotAttributes": "

        The list of attributes and values for the manual DB snapshot.

        " } }, "DBSnapshotAttributesResult": { "base": "

        Contains the results of a successful call to the DescribeDBSnapshotAttributes API action.

        Manual DB snapshot attributes are used to authorize other AWS accounts to copy or restore a manual DB snapshot. For more information, see the ModifyDBSnapshotAttribute API action.

        ", "refs": { "DescribeDBSnapshotAttributesResult$DBSnapshotAttributesResult": null, "ModifyDBSnapshotAttributeResult$DBSnapshotAttributesResult": null } }, "DBSnapshotList": { "base": null, "refs": { "DBSnapshotMessage$DBSnapshots": "

        A list of DBSnapshot instances.

        " } }, "DBSnapshotMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBSnapshots action.

        ", "refs": { } }, "DBSnapshotNotFoundFault": { "base": "

        DBSnapshotIdentifier does not refer to an existing DB snapshot.

        ", "refs": { } }, "DBSubnetGroup": { "base": "

        Contains the result of a successful invocation of the following actions:

        This data type is used as a response element in the DescribeDBSubnetGroups action.

        ", "refs": { "CreateDBSubnetGroupResult$DBSubnetGroup": null, "DBInstance$DBSubnetGroup": "

        Specifies information on the subnet group associated with the DB instance, including the name, description, and subnets in the subnet group.

        ", "DBSubnetGroups$member": null, "ModifyDBSubnetGroupResult$DBSubnetGroup": null } }, "DBSubnetGroupAlreadyExistsFault": { "base": "

        DBSubnetGroupName is already used by an existing DB subnet group.

        ", "refs": { } }, "DBSubnetGroupDoesNotCoverEnoughAZs": { "base": "

        Subnets in the DB subnet group should cover at least two Availability Zones unless there is only one Availability Zone.

        ", "refs": { } }, "DBSubnetGroupMessage": { "base": "

        Contains the result of a successful invocation of the DescribeDBSubnetGroups action.

        ", "refs": { } }, "DBSubnetGroupNotAllowedFault": { "base": "

        Indicates that the DBSubnetGroup should not be specified while creating read replicas that lie in the same region as the source instance.

        ", "refs": { } }, "DBSubnetGroupNotFoundFault": { "base": "

        DBSubnetGroupName does not refer to an existing DB subnet group.

        ", "refs": { } }, "DBSubnetGroupQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB subnet groups.

        ", "refs": { } }, "DBSubnetGroups": { "base": null, "refs": { "DBSubnetGroupMessage$DBSubnetGroups": "

        A list of DBSubnetGroup instances.

        " } }, "DBSubnetQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of subnets in a DB subnet groups.

        ", "refs": { } }, "DBUpgradeDependencyFailureFault": { "base": "

        The DB upgrade failed because a resource the DB depends on could not be modified.

        ", "refs": { } }, "DeleteDBClusterMessage": { "base": "

        ", "refs": { } }, "DeleteDBClusterParameterGroupMessage": { "base": "

        ", "refs": { } }, "DeleteDBClusterResult": { "base": null, "refs": { } }, "DeleteDBClusterSnapshotMessage": { "base": "

        ", "refs": { } }, "DeleteDBClusterSnapshotResult": { "base": null, "refs": { } }, "DeleteDBInstanceMessage": { "base": "

        ", "refs": { } }, "DeleteDBInstanceResult": { "base": null, "refs": { } }, "DeleteDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "DeleteDBSecurityGroupMessage": { "base": "

        ", "refs": { } }, "DeleteDBSnapshotMessage": { "base": "

        ", "refs": { } }, "DeleteDBSnapshotResult": { "base": null, "refs": { } }, "DeleteDBSubnetGroupMessage": { "base": "

        ", "refs": { } }, "DeleteEventSubscriptionMessage": { "base": "

        ", "refs": { } }, "DeleteEventSubscriptionResult": { "base": null, "refs": { } }, "DeleteOptionGroupMessage": { "base": "

        ", "refs": { } }, "DescribeAccountAttributesMessage": { "base": "

        ", "refs": { } }, "DescribeCertificatesMessage": { "base": "

        ", "refs": { } }, "DescribeDBClusterParameterGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeDBClusterParametersMessage": { "base": "

        ", "refs": { } }, "DescribeDBClusterSnapshotAttributesMessage": { "base": "

        ", "refs": { } }, "DescribeDBClusterSnapshotAttributesResult": { "base": null, "refs": { } }, "DescribeDBClusterSnapshotsMessage": { "base": "

        ", "refs": { } }, "DescribeDBClustersMessage": { "base": "

        ", "refs": { } }, "DescribeDBEngineVersionsMessage": { "base": null, "refs": { } }, "DescribeDBInstancesMessage": { "base": "

        ", "refs": { } }, "DescribeDBLogFilesDetails": { "base": "

        This data type is used as a response element to DescribeDBLogFiles.

        ", "refs": { "DescribeDBLogFilesList$member": null } }, "DescribeDBLogFilesList": { "base": null, "refs": { "DescribeDBLogFilesResponse$DescribeDBLogFiles": "

        The DB log files returned.

        " } }, "DescribeDBLogFilesMessage": { "base": "

        ", "refs": { } }, "DescribeDBLogFilesResponse": { "base": "

        The response from a call to DescribeDBLogFiles.

        ", "refs": { } }, "DescribeDBParameterGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeDBParametersMessage": { "base": null, "refs": { } }, "DescribeDBSecurityGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeDBSnapshotAttributesMessage": { "base": "

        ", "refs": { } }, "DescribeDBSnapshotAttributesResult": { "base": null, "refs": { } }, "DescribeDBSnapshotsMessage": { "base": "

        ", "refs": { } }, "DescribeDBSubnetGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeEngineDefaultClusterParametersMessage": { "base": "

        ", "refs": { } }, "DescribeEngineDefaultClusterParametersResult": { "base": null, "refs": { } }, "DescribeEngineDefaultParametersMessage": { "base": "

        ", "refs": { } }, "DescribeEngineDefaultParametersResult": { "base": null, "refs": { } }, "DescribeEventCategoriesMessage": { "base": "

        ", "refs": { } }, "DescribeEventSubscriptionsMessage": { "base": "

        ", "refs": { } }, "DescribeEventsMessage": { "base": "

        ", "refs": { } }, "DescribeOptionGroupOptionsMessage": { "base": "

        ", "refs": { } }, "DescribeOptionGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeOrderableDBInstanceOptionsMessage": { "base": "

        ", "refs": { } }, "DescribePendingMaintenanceActionsMessage": { "base": "

        ", "refs": { } }, "DescribeReservedDBInstancesMessage": { "base": "

        ", "refs": { } }, "DescribeReservedDBInstancesOfferingsMessage": { "base": "

        ", "refs": { } }, "DescribeSourceRegionsMessage": { "base": "

        ", "refs": { } }, "DomainMembership": { "base": "

        An Active Directory Domain membership record associated with the DB instance.

        ", "refs": { "DomainMembershipList$member": null } }, "DomainMembershipList": { "base": "

        List of Active Directory Domain membership records associated with a DB instance.

        ", "refs": { "DBInstance$DomainMemberships": "

        The Active Directory Domain membership records associated with the DB instance.

        " } }, "DomainNotFoundFault": { "base": "

        Domain does not refer to an existing Active Directory Domain.

        ", "refs": { } }, "Double": { "base": null, "refs": { "RecurringCharge$RecurringChargeAmount": "

        The amount of the recurring charge.

        ", "ReservedDBInstance$FixedPrice": "

        The fixed price charged for this reserved DB instance.

        ", "ReservedDBInstance$UsagePrice": "

        The hourly price charged for this reserved DB instance.

        ", "ReservedDBInstancesOffering$FixedPrice": "

        The fixed price charged for this offering.

        ", "ReservedDBInstancesOffering$UsagePrice": "

        The hourly price charged for this offering.

        " } }, "DownloadDBLogFilePortionDetails": { "base": "

        This data type is used as a response element to DownloadDBLogFilePortion.

        ", "refs": { } }, "DownloadDBLogFilePortionMessage": { "base": "

        ", "refs": { } }, "EC2SecurityGroup": { "base": "

        This data type is used as a response element in the following actions:

        ", "refs": { "EC2SecurityGroupList$member": null } }, "EC2SecurityGroupList": { "base": null, "refs": { "DBSecurityGroup$EC2SecurityGroups": "

        Contains a list of EC2SecurityGroup elements.

        " } }, "Endpoint": { "base": "

        This data type is used as a response element in the following actions:

        ", "refs": { "DBInstance$Endpoint": "

        Specifies the connection endpoint.

        " } }, "EngineDefaults": { "base": "

        Contains the result of a successful invocation of the DescribeEngineDefaultParameters action.

        ", "refs": { "DescribeEngineDefaultClusterParametersResult$EngineDefaults": null, "DescribeEngineDefaultParametersResult$EngineDefaults": null } }, "Event": { "base": "

        This data type is used as a response element in the DescribeEvents action.

        ", "refs": { "EventList$member": null } }, "EventCategoriesList": { "base": null, "refs": { "CreateEventSubscriptionMessage$EventCategories": "

        A list of event categories for a SourceType that you want to subscribe to. You can see a list of the categories for a given SourceType in the Events topic in the Amazon RDS User Guide or by using the DescribeEventCategories action.

        ", "DescribeEventsMessage$EventCategories": "

        A list of event categories that trigger notifications for a event notification subscription.

        ", "Event$EventCategories": "

        Specifies the category for the event.

        ", "EventCategoriesMap$EventCategories": "

        The event categories for the specified source type

        ", "EventSubscription$EventCategoriesList": "

        A list of event categories for the RDS event notification subscription.

        ", "ModifyEventSubscriptionMessage$EventCategories": "

        A list of event categories for a SourceType that you want to subscribe to. You can see a list of the categories for a given SourceType in the Events topic in the Amazon RDS User Guide or by using the DescribeEventCategories action.

        " } }, "EventCategoriesMap": { "base": "

        Contains the results of a successful invocation of the DescribeEventCategories action.

        ", "refs": { "EventCategoriesMapList$member": null } }, "EventCategoriesMapList": { "base": null, "refs": { "EventCategoriesMessage$EventCategoriesMapList": "

        A list of EventCategoriesMap data types.

        " } }, "EventCategoriesMessage": { "base": "

        Data returned from the DescribeEventCategories action.

        ", "refs": { } }, "EventList": { "base": null, "refs": { "EventsMessage$Events": "

        A list of Event instances.

        " } }, "EventSubscription": { "base": "

        Contains the results of a successful invocation of the DescribeEventSubscriptions action.

        ", "refs": { "AddSourceIdentifierToSubscriptionResult$EventSubscription": null, "CreateEventSubscriptionResult$EventSubscription": null, "DeleteEventSubscriptionResult$EventSubscription": null, "EventSubscriptionsList$member": null, "ModifyEventSubscriptionResult$EventSubscription": null, "RemoveSourceIdentifierFromSubscriptionResult$EventSubscription": null } }, "EventSubscriptionQuotaExceededFault": { "base": "

        You have reached the maximum number of event subscriptions.

        ", "refs": { } }, "EventSubscriptionsList": { "base": null, "refs": { "EventSubscriptionsMessage$EventSubscriptionsList": "

        A list of EventSubscriptions data types.

        " } }, "EventSubscriptionsMessage": { "base": "

        Data returned by the DescribeEventSubscriptions action.

        ", "refs": { } }, "EventsMessage": { "base": "

        Contains the result of a successful invocation of the DescribeEvents action.

        ", "refs": { } }, "FailoverDBClusterMessage": { "base": "

        ", "refs": { } }, "FailoverDBClusterResult": { "base": null, "refs": { } }, "Filter": { "base": "

        This type is not currently supported.

        ", "refs": { "FilterList$member": null } }, "FilterList": { "base": null, "refs": { "DescribeCertificatesMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBClusterParameterGroupsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBClusterParametersMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBClusterSnapshotsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBClustersMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBEngineVersionsMessage$Filters": "

        Not currently supported.

        ", "DescribeDBInstancesMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBLogFilesMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBParameterGroupsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBParametersMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBSecurityGroupsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBSnapshotsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeDBSubnetGroupsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeEngineDefaultClusterParametersMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeEngineDefaultParametersMessage$Filters": "

        Not currently supported.

        ", "DescribeEventCategoriesMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeEventSubscriptionsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeEventsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeOptionGroupOptionsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeOptionGroupsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeOrderableDBInstanceOptionsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribePendingMaintenanceActionsMessage$Filters": "

        A filter that specifies one or more resources to return pending maintenance actions for.

        Supported filters:

        • db-instance-id - Accepts DB instance identifiers and DB instance Amazon Resource Names (ARNs). The results list will only include pending maintenance actions for the DB instances identified by these ARNs.

        ", "DescribeReservedDBInstancesMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeReservedDBInstancesOfferingsMessage$Filters": "

        This parameter is not currently supported.

        ", "DescribeSourceRegionsMessage$Filters": "

        This parameter is not currently supported.

        ", "ListTagsForResourceMessage$Filters": "

        This parameter is not currently supported.

        " } }, "FilterValueList": { "base": null, "refs": { "Filter$Values": "

        This parameter is not currently supported.

        " } }, "IPRange": { "base": "

        This data type is used as a response element in the DescribeDBSecurityGroups action.

        ", "refs": { "IPRangeList$member": null } }, "IPRangeList": { "base": null, "refs": { "DBSecurityGroup$IPRanges": "

        Contains a list of IPRange elements.

        " } }, "InstanceQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB instances.

        ", "refs": { } }, "InsufficientDBClusterCapacityFault": { "base": "

        The DB cluster does not have enough capacity for the current operation.

        ", "refs": { } }, "InsufficientDBInstanceCapacityFault": { "base": "

        Specified DB instance class is not available in the specified Availability Zone.

        ", "refs": { } }, "InsufficientStorageClusterCapacityFault": { "base": "

        There is insufficient storage available for the current action. You may be able to resolve this error by updating your subnet group to use different Availability Zones that have more storage available.

        ", "refs": { } }, "Integer": { "base": null, "refs": { "DBClusterSnapshot$AllocatedStorage": "

        Specifies the allocated storage size in gigabytes (GB).

        ", "DBClusterSnapshot$Port": "

        Specifies the port that the DB cluster was listening on at the time of the snapshot.

        ", "DBClusterSnapshot$PercentProgress": "

        Specifies the percentage of the estimated data that has been transferred.

        ", "DBInstance$AllocatedStorage": "

        Specifies the allocated storage size specified in gigabytes.

        ", "DBInstance$BackupRetentionPeriod": "

        Specifies the number of days for which automatic DB snapshots are retained.

        ", "DBInstance$DbInstancePort": "

        Specifies the port that the DB instance listens on. If the DB instance is part of a DB cluster, this can be a different port than the DB cluster port.

        ", "DBSnapshot$AllocatedStorage": "

        Specifies the allocated storage size in gigabytes (GB).

        ", "DBSnapshot$Port": "

        Specifies the port that the database engine was listening on at the time of the snapshot.

        ", "DBSnapshot$PercentProgress": "

        The percentage of the estimated data that has been transferred.

        ", "DownloadDBLogFilePortionMessage$NumberOfLines": "

        The number of lines to download. If the number of lines specified results in a file over 1 MB in size, the file will be truncated at 1 MB in size.

        If the NumberOfLines parameter is specified, then the block of lines returned can be from the beginning or the end of the log file, depending on the value of the Marker parameter.

        • If neither Marker or NumberOfLines are specified, the entire log file is returned up to a maximum of 10000 lines, starting with the most recent log entries first.

        • If NumberOfLines is specified and Marker is not specified, then the most recent lines from the end of the log file are returned.

        • If Marker is specified as \"0\", then the specified number of lines from the beginning of the log file are returned.

        • You can download the log file in blocks of lines by specifying the size of the block using the NumberOfLines parameter, and by specifying a value of \"0\" for the Marker parameter in your first request. Include the Marker value returned in the response as the Marker value for the next request, continuing until the AdditionalDataPending response element returns false.

        ", "Endpoint$Port": "

        Specifies the port that the database engine is listening on.

        ", "ReservedDBInstance$Duration": "

        The duration of the reservation in seconds.

        ", "ReservedDBInstance$DBInstanceCount": "

        The number of reserved DB instances.

        ", "ReservedDBInstancesOffering$Duration": "

        The duration of the offering in seconds.

        " } }, "IntegerOptional": { "base": null, "refs": { "CreateDBClusterMessage$BackupRetentionPeriod": "

        The number of days for which automated backups are retained. You must specify a minimum value of 1.

        Default: 1

        Constraints:

        • Must be a value from 1 to 35

        ", "CreateDBClusterMessage$Port": "

        The port number on which the instances in the DB cluster accept connections.

        Default: 3306

        ", "CreateDBInstanceMessage$AllocatedStorage": "

        The amount of storage (in gigabytes) to be initially allocated for the database instance.

        Type: Integer

        MySQL

        Constraints: Must be an integer from 5 to 6144.

        MariaDB

        Constraints: Must be an integer from 5 to 6144.

        PostgreSQL

        Constraints: Must be an integer from 5 to 6144.

        Oracle

        Constraints: Must be an integer from 10 to 6144.

        SQL Server

        Constraints: Must be an integer from 200 to 4096 (Standard Edition and Enterprise Edition) or from 20 to 4096 (Express Edition and Web Edition)

        ", "CreateDBInstanceMessage$BackupRetentionPeriod": "

        The number of days for which automated backups are retained. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

        Default: 1

        Constraints:

        • Must be a value from 0 to 35

        • Cannot be set to 0 if the DB instance is a source to Read Replicas

        ", "CreateDBInstanceMessage$Port": "

        The port number on which the database accepts connections.

        MySQL

        Default: 3306

        Valid Values: 1150-65535

        Type: Integer

        MariaDB

        Default: 3306

        Valid Values: 1150-65535

        Type: Integer

        PostgreSQL

        Default: 5432

        Valid Values: 1150-65535

        Type: Integer

        Oracle

        Default: 1521

        Valid Values: 1150-65535

        SQL Server

        Default: 1433

        Valid Values: 1150-65535 except for 1434, 3389, 47001, 49152, and 49152 through 49156.

        Amazon Aurora

        Default: 3306

        Valid Values: 1150-65535

        Type: Integer

        ", "CreateDBInstanceMessage$Iops": "

        The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB instance.

        Constraints: Must be a multiple between 3 and 10 of the storage amount for the DB instance. Must also be an integer multiple of 1000. For example, if the size of your DB instance is 500 GB, then your Iops value can be 2000, 3000, 4000, or 5000.

        ", "CreateDBInstanceMessage$MonitoringInterval": "

        The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To disable collecting Enhanced Monitoring metrics, specify 0. The default is 0.

        If MonitoringRoleArn is specified, then you must also set MonitoringInterval to a value other than 0.

        Valid Values: 0, 1, 5, 10, 15, 30, 60

        ", "CreateDBInstanceMessage$PromotionTier": "

        A value that specifies the order in which an Aurora Replica is promoted to the primary instance after a failure of the existing primary instance. For more information, see Fault Tolerance for an Aurora DB Cluster.

        Default: 1

        Valid Values: 0 - 15

        ", "CreateDBInstanceReadReplicaMessage$Port": "

        The port number that the DB instance uses for connections.

        Default: Inherits from the source DB instance

        Valid Values: 1150-65535

        ", "CreateDBInstanceReadReplicaMessage$Iops": "

        The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB instance.

        ", "CreateDBInstanceReadReplicaMessage$MonitoringInterval": "

        The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the Read Replica. To disable collecting Enhanced Monitoring metrics, specify 0. The default is 0.

        If MonitoringRoleArn is specified, then you must also set MonitoringInterval to a value other than 0.

        Valid Values: 0, 1, 5, 10, 15, 30, 60

        ", "DBCluster$AllocatedStorage": "

        Specifies the allocated storage size in gigabytes (GB).

        ", "DBCluster$BackupRetentionPeriod": "

        Specifies the number of days for which automatic DB snapshots are retained.

        ", "DBCluster$Port": "

        Specifies the port that the database engine is listening on.

        ", "DBClusterMember$PromotionTier": "

        A value that specifies the order in which an Aurora Replica is promoted to the primary instance after a failure of the existing primary instance. For more information, see Fault Tolerance for an Aurora DB Cluster.

        ", "DBInstance$Iops": "

        Specifies the Provisioned IOPS (I/O operations per second) value.

        ", "DBInstance$MonitoringInterval": "

        The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance.

        ", "DBInstance$PromotionTier": "

        A value that specifies the order in which an Aurora Replica is promoted to the primary instance after a failure of the existing primary instance. For more information, see Fault Tolerance for an Aurora DB Cluster.

        ", "DBSnapshot$Iops": "

        Specifies the Provisioned IOPS (I/O operations per second) value of the DB instance at the time of the snapshot.

        ", "DescribeCertificatesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeDBClusterParameterGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeDBClusterParametersMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeDBClusterSnapshotsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeDBClustersMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeDBEngineVersionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more than the MaxRecords value is available, a pagination token called a marker is included in the response so that the following results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeDBInstancesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeDBLogFilesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        ", "DescribeDBParameterGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeDBParametersMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeDBSecurityGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeDBSnapshotsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeDBSubnetGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeEngineDefaultClusterParametersMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeEngineDefaultParametersMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeEventSubscriptionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeEventsMessage$Duration": "

        The number of minutes to retrieve events for.

        Default: 60

        ", "DescribeEventsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeOptionGroupOptionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeOptionGroupsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeOrderableDBInstanceOptionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribePendingMaintenanceActionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeReservedDBInstancesMessage$MaxRecords": "

        The maximum number of records to include in the response. If more than the MaxRecords value is available, a pagination token called a marker is included in the response so that the following results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeReservedDBInstancesOfferingsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more than the MaxRecords value is available, a pagination token called a marker is included in the response so that the following results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "DescribeSourceRegionsMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        Default: 100

        Constraints: Minimum 20, maximum 100.

        ", "ModifyDBClusterMessage$BackupRetentionPeriod": "

        The number of days for which automated backups are retained. You must specify a minimum value of 1.

        Default: 1

        Constraints:

        • Must be a value from 1 to 35

        ", "ModifyDBClusterMessage$Port": "

        The port number on which the DB cluster accepts connections.

        Constraints: Value must be 1150-65535

        Default: The same port as the original DB cluster.

        ", "ModifyDBInstanceMessage$AllocatedStorage": "

        The new storage capacity of the RDS instance. Changing this setting does not result in an outage and the change is applied during the next maintenance window unless ApplyImmediately is set to true for this request.

        MySQL

        Default: Uses existing setting

        Valid Values: 5-6144

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

        Type: Integer

        MariaDB

        Default: Uses existing setting

        Valid Values: 5-6144

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

        Type: Integer

        PostgreSQL

        Default: Uses existing setting

        Valid Values: 5-6144

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

        Type: Integer

        Oracle

        Default: Uses existing setting

        Valid Values: 10-6144

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

        SQL Server

        Cannot be modified.

        If you choose to migrate your DB instance from using standard storage to using Provisioned IOPS, or from using Provisioned IOPS to using standard storage, the process can take time. The duration of the migration depends on several factors such as database load, storage size, storage type (standard or Provisioned IOPS), amount of IOPS provisioned (if any), and the number of prior scale storage operations. Typical migration times are under 24 hours, but the process can take up to several days in some cases. During the migration, the DB instance will be available for use, but might experience performance degradation. While the migration takes place, nightly backups for the instance will be suspended. No other Amazon RDS operations can take place for the instance, including modifying the instance, rebooting the instance, deleting the instance, creating a Read Replica for the instance, and creating a DB snapshot of the instance.

        ", "ModifyDBInstanceMessage$BackupRetentionPeriod": "

        The number of days to retain automated backups. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

        Changing this parameter can result in an outage if you change from 0 to a non-zero value or from a non-zero value to 0. These changes are applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request. If you change the parameter from one non-zero value to another non-zero value, the change is asynchronously applied as soon as possible.

        Default: Uses existing setting

        Constraints:

        • Must be a value from 0 to 35

        • Can be specified for a MySQL Read Replica only if the source is running MySQL 5.6

        • Can be specified for a PostgreSQL Read Replica only if the source is running PostgreSQL 9.3.5

        • Cannot be set to 0 if the DB instance is a source to Read Replicas

        ", "ModifyDBInstanceMessage$Iops": "

        The new Provisioned IOPS (I/O operations per second) value for the RDS instance. Changing this setting does not result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        Default: Uses existing setting

        Constraints: Value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value. If you are migrating from Provisioned IOPS to standard storage, set this value to 0. The DB instance will require a reboot for the change in storage type to take effect.

        SQL Server

        Setting the IOPS value for the SQL Server database engine is not supported.

        Type: Integer

        If you choose to migrate your DB instance from using standard storage to using Provisioned IOPS, or from using Provisioned IOPS to using standard storage, the process can take time. The duration of the migration depends on several factors such as database load, storage size, storage type (standard or Provisioned IOPS), amount of IOPS provisioned (if any), and the number of prior scale storage operations. Typical migration times are under 24 hours, but the process can take up to several days in some cases. During the migration, the DB instance will be available for use, but might experience performance degradation. While the migration takes place, nightly backups for the instance will be suspended. No other Amazon RDS operations can take place for the instance, including modifying the instance, rebooting the instance, deleting the instance, creating a Read Replica for the instance, and creating a DB snapshot of the instance.

        ", "ModifyDBInstanceMessage$MonitoringInterval": "

        The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To disable collecting Enhanced Monitoring metrics, specify 0. The default is 0.

        If MonitoringRoleArn is specified, then you must also set MonitoringInterval to a value other than 0.

        Valid Values: 0, 1, 5, 10, 15, 30, 60

        ", "ModifyDBInstanceMessage$DBPortNumber": "

        The port number on which the database accepts connections.

        The value of the DBPortNumber parameter must not match any of the port values specified for options in the option group for the DB instance.

        Your database will restart when you change the DBPortNumber value regardless of the value of the ApplyImmediately parameter.

        MySQL

        Default: 3306

        Valid Values: 1150-65535

        MariaDB

        Default: 3306

        Valid Values: 1150-65535

        PostgreSQL

        Default: 5432

        Valid Values: 1150-65535

        Type: Integer

        Oracle

        Default: 1521

        Valid Values: 1150-65535

        SQL Server

        Default: 1433

        Valid Values: 1150-65535 except for 1434, 3389, 47001, 49152, and 49152 through 49156.

        Amazon Aurora

        Default: 3306

        Valid Values: 1150-65535

        ", "ModifyDBInstanceMessage$PromotionTier": "

        A value that specifies the order in which an Aurora Replica is promoted to the primary instance after a failure of the existing primary instance. For more information, see Fault Tolerance for an Aurora DB Cluster.

        Default: 1

        Valid Values: 0 - 15

        ", "Option$Port": "

        If required, the port configured for this option to use.

        ", "OptionConfiguration$Port": "

        The optional port for the option.

        ", "OptionGroupOption$DefaultPort": "

        If the option requires a port, specifies the default port for the option.

        ", "PendingModifiedValues$AllocatedStorage": "

        Contains the new AllocatedStorage size for the DB instance that will be applied or is in progress.

        ", "PendingModifiedValues$Port": "

        Specifies the pending port for the DB instance.

        ", "PendingModifiedValues$BackupRetentionPeriod": "

        Specifies the pending number of days for which automated backups are retained.

        ", "PendingModifiedValues$Iops": "

        Specifies the new Provisioned IOPS value for the DB instance that will be applied or is being applied.

        ", "PromoteReadReplicaMessage$BackupRetentionPeriod": "

        The number of days to retain automated backups. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

        Default: 1

        Constraints:

        • Must be a value from 0 to 8

        ", "PurchaseReservedDBInstancesOfferingMessage$DBInstanceCount": "

        The number of instances to reserve.

        Default: 1

        ", "RestoreDBClusterFromS3Message$BackupRetentionPeriod": "

        The number of days for which automated backups of the restored DB cluster are retained. You must specify a minimum value of 1.

        Default: 1

        Constraints:

        • Must be a value from 1 to 35

        ", "RestoreDBClusterFromS3Message$Port": "

        The port number on which the instances in the restored DB cluster accept connections.

        Default: 3306

        ", "RestoreDBClusterFromSnapshotMessage$Port": "

        The port number on which the new DB cluster accepts connections.

        Constraints: Value must be 1150-65535

        Default: The same port as the original DB cluster.

        ", "RestoreDBClusterToPointInTimeMessage$Port": "

        The port number on which the new DB cluster accepts connections.

        Constraints: Value must be 1150-65535

        Default: The same port as the original DB cluster.

        ", "RestoreDBInstanceFromDBSnapshotMessage$Port": "

        The port number on which the database accepts connections.

        Default: The same port as the original DB instance

        Constraints: Value must be 1150-65535

        ", "RestoreDBInstanceFromDBSnapshotMessage$Iops": "

        Specifies the amount of provisioned IOPS for the DB instance, expressed in I/O operations per second. If this parameter is not specified, the IOPS value will be taken from the backup. If this parameter is set to 0, the new instance will be converted to a non-PIOPS instance, which will take additional time, though your DB instance will be available for connections before the conversion starts.

        Constraints: Must be an integer greater than 1000.

        SQL Server

        Setting the IOPS value for the SQL Server database engine is not supported.

        ", "RestoreDBInstanceToPointInTimeMessage$Port": "

        The port number on which the database accepts connections.

        Constraints: Value must be 1150-65535

        Default: The same port as the original DB instance.

        ", "RestoreDBInstanceToPointInTimeMessage$Iops": "

        The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for the DB instance.

        Constraints: Must be an integer greater than 1000.

        SQL Server

        Setting the IOPS value for the SQL Server database engine is not supported.

        " } }, "InvalidDBClusterSnapshotStateFault": { "base": "

        The supplied value is not a valid DB cluster snapshot state.

        ", "refs": { } }, "InvalidDBClusterStateFault": { "base": "

        The DB cluster is not in a valid state.

        ", "refs": { } }, "InvalidDBInstanceStateFault": { "base": "

        The specified DB instance is not in the available state.

        ", "refs": { } }, "InvalidDBParameterGroupStateFault": { "base": "

        The DB parameter group cannot be deleted because it is in use.

        ", "refs": { } }, "InvalidDBSecurityGroupStateFault": { "base": "

        The state of the DB security group does not allow deletion.

        ", "refs": { } }, "InvalidDBSnapshotStateFault": { "base": "

        The state of the DB snapshot does not allow deletion.

        ", "refs": { } }, "InvalidDBSubnetGroupFault": { "base": "

        Indicates the DBSubnetGroup does not belong to the same VPC as that of an existing cross region read replica of the same source instance.

        ", "refs": { } }, "InvalidDBSubnetGroupStateFault": { "base": "

        The DB subnet group cannot be deleted because it is in use.

        ", "refs": { } }, "InvalidDBSubnetStateFault": { "base": "

        The DB subnet is not in the available state.

        ", "refs": { } }, "InvalidEventSubscriptionStateFault": { "base": "

        This error can occur if someone else is modifying a subscription. You should retry the action.

        ", "refs": { } }, "InvalidOptionGroupStateFault": { "base": "

        The option group is not in the available state.

        ", "refs": { } }, "InvalidRestoreFault": { "base": "

        Cannot restore from vpc backup to non-vpc DB instance.

        ", "refs": { } }, "InvalidS3BucketFault": { "base": "

        The specified Amazon S3 bucket name could not be found or Amazon RDS is not authorized to access the specified Amazon S3 bucket. Verify the SourceS3BucketName and S3IngestionRoleArn values and try again.

        ", "refs": { } }, "InvalidSubnet": { "base": "

        The requested subnet is invalid, or multiple subnets were requested that are not all in a common VPC.

        ", "refs": { } }, "InvalidVPCNetworkStateFault": { "base": "

        DB subnet group does not cover all Availability Zones after it is created because users' change.

        ", "refs": { } }, "KMSKeyNotAccessibleFault": { "base": "

        Error accessing KMS key.

        ", "refs": { } }, "KeyList": { "base": null, "refs": { "RemoveTagsFromResourceMessage$TagKeys": "

        The tag key (name) of the tag to be removed.

        " } }, "ListTagsForResourceMessage": { "base": "

        ", "refs": { } }, "Long": { "base": null, "refs": { "AccountQuota$Used": "

        The amount currently used toward the quota maximum.

        ", "AccountQuota$Max": "

        The maximum allowed value for the quota.

        ", "DescribeDBLogFilesDetails$LastWritten": "

        A POSIX timestamp when the last log entry was written.

        ", "DescribeDBLogFilesDetails$Size": "

        The size, in bytes, of the log file for the specified DB instance.

        ", "DescribeDBLogFilesMessage$FileLastWritten": "

        Filters the available log files for files written since the specified date, in POSIX timestamp format with milliseconds.

        ", "DescribeDBLogFilesMessage$FileSize": "

        Filters the available log files for files larger than the specified size.

        " } }, "ModifyDBClusterMessage": { "base": "

        ", "refs": { } }, "ModifyDBClusterParameterGroupMessage": { "base": "

        ", "refs": { } }, "ModifyDBClusterResult": { "base": null, "refs": { } }, "ModifyDBClusterSnapshotAttributeMessage": { "base": "

        ", "refs": { } }, "ModifyDBClusterSnapshotAttributeResult": { "base": null, "refs": { } }, "ModifyDBInstanceMessage": { "base": "

        ", "refs": { } }, "ModifyDBInstanceResult": { "base": null, "refs": { } }, "ModifyDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "ModifyDBSnapshotAttributeMessage": { "base": "

        ", "refs": { } }, "ModifyDBSnapshotAttributeResult": { "base": null, "refs": { } }, "ModifyDBSubnetGroupMessage": { "base": "

        ", "refs": { } }, "ModifyDBSubnetGroupResult": { "base": null, "refs": { } }, "ModifyEventSubscriptionMessage": { "base": "

        ", "refs": { } }, "ModifyEventSubscriptionResult": { "base": null, "refs": { } }, "ModifyOptionGroupMessage": { "base": "

        ", "refs": { } }, "ModifyOptionGroupResult": { "base": null, "refs": { } }, "Option": { "base": "

        Option details.

        ", "refs": { "OptionsList$member": null } }, "OptionConfiguration": { "base": "

        A list of all available options

        ", "refs": { "OptionConfigurationList$member": null } }, "OptionConfigurationList": { "base": null, "refs": { "ModifyOptionGroupMessage$OptionsToInclude": "

        Options in this list are added to the option group or, if already present, the specified configuration is used to update the existing configuration.

        " } }, "OptionGroup": { "base": "

        ", "refs": { "CopyOptionGroupResult$OptionGroup": null, "CreateOptionGroupResult$OptionGroup": null, "ModifyOptionGroupResult$OptionGroup": null, "OptionGroupsList$member": null } }, "OptionGroupAlreadyExistsFault": { "base": "

        The option group you are trying to create already exists.

        ", "refs": { } }, "OptionGroupMembership": { "base": "

        Provides information on the option groups the DB instance is a member of.

        ", "refs": { "OptionGroupMembershipList$member": null } }, "OptionGroupMembershipList": { "base": null, "refs": { "DBInstance$OptionGroupMemberships": "

        Provides the list of option group memberships for this DB instance.

        " } }, "OptionGroupNotFoundFault": { "base": "

        The specified option group could not be found.

        ", "refs": { } }, "OptionGroupOption": { "base": "

        Available option.

        ", "refs": { "OptionGroupOptionsList$member": null } }, "OptionGroupOptionSetting": { "base": "

        Option group option settings are used to display settings available for each option with their default values and other information. These values are used with the DescribeOptionGroupOptions action.

        ", "refs": { "OptionGroupOptionSettingsList$member": null } }, "OptionGroupOptionSettingsList": { "base": null, "refs": { "OptionGroupOption$OptionGroupOptionSettings": "

        The option settings that are available (and the default value) for each option in an option group.

        " } }, "OptionGroupOptionVersionsList": { "base": null, "refs": { "OptionGroupOption$OptionGroupOptionVersions": "

        The versions that are available for the option.

        " } }, "OptionGroupOptionsList": { "base": "

        List of available option group options.

        ", "refs": { "OptionGroupOptionsMessage$OptionGroupOptions": null } }, "OptionGroupOptionsMessage": { "base": "

        ", "refs": { } }, "OptionGroupQuotaExceededFault": { "base": "

        The quota of 20 option groups was exceeded for this AWS account.

        ", "refs": { } }, "OptionGroups": { "base": "

        List of option groups.

        ", "refs": { } }, "OptionGroupsList": { "base": null, "refs": { "OptionGroups$OptionGroupsList": "

        List of option groups.

        " } }, "OptionNamesList": { "base": null, "refs": { "ModifyOptionGroupMessage$OptionsToRemove": "

        Options in this list are removed from the option group.

        " } }, "OptionSetting": { "base": "

        Option settings are the actual settings being applied or configured for that option. It is used when you modify an option group or describe option groups. For example, the NATIVE_NETWORK_ENCRYPTION option has a setting called SQLNET.ENCRYPTION_SERVER that can have several different values.

        ", "refs": { "OptionSettingConfigurationList$member": null, "OptionSettingsList$member": null } }, "OptionSettingConfigurationList": { "base": null, "refs": { "Option$OptionSettings": "

        The option settings for this option.

        " } }, "OptionSettingsList": { "base": null, "refs": { "OptionConfiguration$OptionSettings": "

        The option settings to include in an option group.

        " } }, "OptionVersion": { "base": "

        The version for an option. Option group option versions are returned by the DescribeOptionGroupOptions action.

        ", "refs": { "OptionGroupOptionVersionsList$member": null } }, "OptionsConflictsWith": { "base": null, "refs": { "OptionGroupOption$OptionsConflictsWith": "

        The options that conflict with this option.

        " } }, "OptionsDependedOn": { "base": null, "refs": { "OptionGroupOption$OptionsDependedOn": "

        The options that are prerequisites for this option.

        " } }, "OptionsList": { "base": null, "refs": { "OptionGroup$Options": "

        Indicates what options are available in the option group.

        " } }, "OrderableDBInstanceOption": { "base": "

        Contains a list of available options for a DB instance

        This data type is used as a response element in the DescribeOrderableDBInstanceOptions action.

        ", "refs": { "OrderableDBInstanceOptionsList$member": null } }, "OrderableDBInstanceOptionsList": { "base": null, "refs": { "OrderableDBInstanceOptionsMessage$OrderableDBInstanceOptions": "

        An OrderableDBInstanceOption structure containing information about orderable options for the DB instance.

        " } }, "OrderableDBInstanceOptionsMessage": { "base": "

        Contains the result of a successful invocation of the DescribeOrderableDBInstanceOptions action.

        ", "refs": { } }, "Parameter": { "base": "

        This data type is used as a request parameter in the ModifyDBParameterGroup and ResetDBParameterGroup actions.

        This data type is used as a response element in the DescribeEngineDefaultParameters and DescribeDBParameters actions.

        ", "refs": { "ParametersList$member": null } }, "ParametersList": { "base": null, "refs": { "DBClusterParameterGroupDetails$Parameters": "

        Provides a list of parameters for the DB cluster parameter group.

        ", "DBParameterGroupDetails$Parameters": "

        A list of Parameter values.

        ", "EngineDefaults$Parameters": "

        Contains a list of engine default parameters.

        ", "ModifyDBClusterParameterGroupMessage$Parameters": "

        A list of parameters in the DB cluster parameter group to modify.

        ", "ModifyDBParameterGroupMessage$Parameters": "

        An array of parameter names, values, and the apply method for the parameter update. At least one parameter name, value, and apply method must be supplied; subsequent arguments are optional. A maximum of 20 parameters can be modified in a single request.

        Valid Values (for the application method): immediate | pending-reboot

        You can use the immediate value with dynamic parameters only. You can use the pending-reboot value for both dynamic and static parameters, and changes are applied when you reboot the DB instance without failover.

        ", "ResetDBClusterParameterGroupMessage$Parameters": "

        A list of parameter names in the DB cluster parameter group to reset to the default values. You cannot use this parameter if the ResetAllParameters parameter is set to true.

        ", "ResetDBParameterGroupMessage$Parameters": "

        An array of parameter names, values, and the apply method for the parameter update. At least one parameter name, value, and apply method must be supplied; subsequent arguments are optional. A maximum of 20 parameters can be modified in a single request.

        MySQL

        Valid Values (for Apply method): immediate | pending-reboot

        You can use the immediate value with dynamic parameters only. You can use the pending-reboot value for both dynamic and static parameters, and changes are applied when DB instance reboots.

        MariaDB

        Valid Values (for Apply method): immediate | pending-reboot

        You can use the immediate value with dynamic parameters only. You can use the pending-reboot value for both dynamic and static parameters, and changes are applied when DB instance reboots.

        Oracle

        Valid Values (for Apply method): pending-reboot

        " } }, "PendingMaintenanceAction": { "base": "

        Provides information about a pending maintenance action for a resource.

        ", "refs": { "PendingMaintenanceActionDetails$member": null } }, "PendingMaintenanceActionDetails": { "base": null, "refs": { "ResourcePendingMaintenanceActions$PendingMaintenanceActionDetails": "

        A list that provides details about the pending maintenance actions for the resource.

        " } }, "PendingMaintenanceActions": { "base": null, "refs": { "PendingMaintenanceActionsMessage$PendingMaintenanceActions": "

        A list of the pending maintenance actions for the resource.

        " } }, "PendingMaintenanceActionsMessage": { "base": "

        Data returned from the DescribePendingMaintenanceActions action.

        ", "refs": { } }, "PendingModifiedValues": { "base": "

        This data type is used as a response element in the ModifyDBInstance action.

        ", "refs": { "DBInstance$PendingModifiedValues": "

        Specifies that changes to the DB instance are pending. This element is only included when changes are pending. Specific changes are identified by subelements.

        " } }, "PointInTimeRestoreNotEnabledFault": { "base": "

        SourceDBInstanceIdentifier refers to a DB instance with BackupRetentionPeriod equal to 0.

        ", "refs": { } }, "PromoteReadReplicaDBClusterMessage": { "base": "

        ", "refs": { } }, "PromoteReadReplicaDBClusterResult": { "base": null, "refs": { } }, "PromoteReadReplicaMessage": { "base": "

        ", "refs": { } }, "PromoteReadReplicaResult": { "base": null, "refs": { } }, "ProvisionedIopsNotAvailableInAZFault": { "base": "

        Provisioned IOPS not available in the specified Availability Zone.

        ", "refs": { } }, "PurchaseReservedDBInstancesOfferingMessage": { "base": "

        ", "refs": { } }, "PurchaseReservedDBInstancesOfferingResult": { "base": null, "refs": { } }, "ReadReplicaDBInstanceIdentifierList": { "base": null, "refs": { "DBInstance$ReadReplicaDBInstanceIdentifiers": "

        Contains one or more identifiers of the Read Replicas associated with this DB instance.

        " } }, "ReadReplicaIdentifierList": { "base": null, "refs": { "DBCluster$ReadReplicaIdentifiers": "

        Contains one or more identifiers of the Read Replicas associated with this DB cluster.

        " } }, "RebootDBInstanceMessage": { "base": "

        ", "refs": { } }, "RebootDBInstanceResult": { "base": null, "refs": { } }, "RecurringCharge": { "base": "

        This data type is used as a response element in the DescribeReservedDBInstances and DescribeReservedDBInstancesOfferings actions.

        ", "refs": { "RecurringChargeList$member": null } }, "RecurringChargeList": { "base": null, "refs": { "ReservedDBInstance$RecurringCharges": "

        The recurring price charged to run this reserved DB instance.

        ", "ReservedDBInstancesOffering$RecurringCharges": "

        The recurring price charged to run this reserved DB instance.

        " } }, "RemoveRoleFromDBClusterMessage": { "base": null, "refs": { } }, "RemoveSourceIdentifierFromSubscriptionMessage": { "base": "

        ", "refs": { } }, "RemoveSourceIdentifierFromSubscriptionResult": { "base": null, "refs": { } }, "RemoveTagsFromResourceMessage": { "base": "

        ", "refs": { } }, "ReservedDBInstance": { "base": "

        This data type is used as a response element in the DescribeReservedDBInstances and PurchaseReservedDBInstancesOffering actions.

        ", "refs": { "PurchaseReservedDBInstancesOfferingResult$ReservedDBInstance": null, "ReservedDBInstanceList$member": null } }, "ReservedDBInstanceAlreadyExistsFault": { "base": "

        User already has a reservation with the given identifier.

        ", "refs": { } }, "ReservedDBInstanceList": { "base": null, "refs": { "ReservedDBInstanceMessage$ReservedDBInstances": "

        A list of reserved DB instances.

        " } }, "ReservedDBInstanceMessage": { "base": "

        Contains the result of a successful invocation of the DescribeReservedDBInstances action.

        ", "refs": { } }, "ReservedDBInstanceNotFoundFault": { "base": "

        The specified reserved DB Instance not found.

        ", "refs": { } }, "ReservedDBInstanceQuotaExceededFault": { "base": "

        Request would exceed the user's DB Instance quota.

        ", "refs": { } }, "ReservedDBInstancesOffering": { "base": "

        This data type is used as a response element in the DescribeReservedDBInstancesOfferings action.

        ", "refs": { "ReservedDBInstancesOfferingList$member": null } }, "ReservedDBInstancesOfferingList": { "base": null, "refs": { "ReservedDBInstancesOfferingMessage$ReservedDBInstancesOfferings": "

        A list of reserved DB instance offerings.

        " } }, "ReservedDBInstancesOfferingMessage": { "base": "

        Contains the result of a successful invocation of the DescribeReservedDBInstancesOfferings action.

        ", "refs": { } }, "ReservedDBInstancesOfferingNotFoundFault": { "base": "

        Specified offering does not exist.

        ", "refs": { } }, "ResetDBClusterParameterGroupMessage": { "base": "

        ", "refs": { } }, "ResetDBParameterGroupMessage": { "base": "

        ", "refs": { } }, "ResourceNotFoundFault": { "base": "

        The specified resource ID was not found.

        ", "refs": { } }, "ResourcePendingMaintenanceActions": { "base": "

        Describes the pending maintenance actions for a resource.

        ", "refs": { "ApplyPendingMaintenanceActionResult$ResourcePendingMaintenanceActions": null, "PendingMaintenanceActions$member": null } }, "RestoreDBClusterFromS3Message": { "base": null, "refs": { } }, "RestoreDBClusterFromS3Result": { "base": null, "refs": { } }, "RestoreDBClusterFromSnapshotMessage": { "base": "

        ", "refs": { } }, "RestoreDBClusterFromSnapshotResult": { "base": null, "refs": { } }, "RestoreDBClusterToPointInTimeMessage": { "base": "

        ", "refs": { } }, "RestoreDBClusterToPointInTimeResult": { "base": null, "refs": { } }, "RestoreDBInstanceFromDBSnapshotMessage": { "base": "

        ", "refs": { } }, "RestoreDBInstanceFromDBSnapshotResult": { "base": null, "refs": { } }, "RestoreDBInstanceToPointInTimeMessage": { "base": "

        ", "refs": { } }, "RestoreDBInstanceToPointInTimeResult": { "base": null, "refs": { } }, "RevokeDBSecurityGroupIngressMessage": { "base": "

        ", "refs": { } }, "RevokeDBSecurityGroupIngressResult": { "base": null, "refs": { } }, "SNSInvalidTopicFault": { "base": "

        SNS has responded that there is a problem with the SND topic specified.

        ", "refs": { } }, "SNSNoAuthorizationFault": { "base": "

        You do not have permission to publish to the SNS topic ARN.

        ", "refs": { } }, "SNSTopicArnNotFoundFault": { "base": "

        The SNS topic ARN does not exist.

        ", "refs": { } }, "SharedSnapshotQuotaExceededFault": { "base": "

        You have exceeded the maximum number of accounts that you can share a manual DB snapshot with.

        ", "refs": { } }, "SnapshotQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed number of DB snapshots.

        ", "refs": { } }, "SourceIdsList": { "base": null, "refs": { "CreateEventSubscriptionMessage$SourceIds": "

        The list of identifiers of the event sources for which events will be returned. If not specified, then all sources are included in the response. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it cannot end with a hyphen or contain two consecutive hyphens.

        Constraints:

        • If SourceIds are supplied, SourceType must also be provided.

        • If the source type is a DB instance, then a DBInstanceIdentifier must be supplied.

        • If the source type is a DB security group, a DBSecurityGroupName must be supplied.

        • If the source type is a DB parameter group, a DBParameterGroupName must be supplied.

        • If the source type is a DB snapshot, a DBSnapshotIdentifier must be supplied.

        ", "EventSubscription$SourceIdsList": "

        A list of source IDs for the RDS event notification subscription.

        " } }, "SourceNotFoundFault": { "base": "

        The requested source could not be found.

        ", "refs": { } }, "SourceRegion": { "base": "

        Contains an AWS Region name as the result of a successful call to the DescribeSourceRegions action.

        ", "refs": { "SourceRegionList$member": null } }, "SourceRegionList": { "base": null, "refs": { "SourceRegionMessage$SourceRegions": "

        A list of SourceRegion instances that contains each source AWS Region that the current region can get a Read Replica or a DB snapshot from.

        " } }, "SourceRegionMessage": { "base": "

        Contains the result of a successful invocation of the DescribeSourceRegions action.

        ", "refs": { } }, "SourceType": { "base": null, "refs": { "DescribeEventsMessage$SourceType": "

        The event source to retrieve events for. If no value is specified, all events are returned.

        ", "Event$SourceType": "

        Specifies the source type for this event.

        " } }, "StorageQuotaExceededFault": { "base": "

        Request would result in user exceeding the allowed amount of storage available across all DB instances.

        ", "refs": { } }, "StorageTypeNotSupportedFault": { "base": "

        StorageType specified cannot be associated with the DB Instance.

        ", "refs": { } }, "String": { "base": null, "refs": { "AccountQuota$AccountQuotaName": "

        The name of the Amazon RDS quota for this AWS account.

        ", "AddRoleToDBClusterMessage$DBClusterIdentifier": "

        The name of the DB cluster to associate the IAM role with.

        ", "AddRoleToDBClusterMessage$RoleArn": "

        The Amazon Resource Name (ARN) of the IAM role to associate with the Aurora DB cluster, for example arn:aws:iam::123456789012:role/AuroraAccessRole.

        ", "AddSourceIdentifierToSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to add a source identifier to.

        ", "AddSourceIdentifierToSubscriptionMessage$SourceIdentifier": "

        The identifier of the event source to be added. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it cannot end with a hyphen or contain two consecutive hyphens.

        Constraints:

        • If the source type is a DB instance, then a DBInstanceIdentifier must be supplied.

        • If the source type is a DB security group, a DBSecurityGroupName must be supplied.

        • If the source type is a DB parameter group, a DBParameterGroupName must be supplied.

        • If the source type is a DB snapshot, a DBSnapshotIdentifier must be supplied.

        ", "AddTagsToResourceMessage$ResourceName": "

        The Amazon RDS resource the tags will be added to. This value is an Amazon Resource Name (ARN). For information about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN).

        ", "ApplyPendingMaintenanceActionMessage$ResourceIdentifier": "

        The RDS Amazon Resource Name (ARN) of the resource that the pending maintenance action applies to. For information about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN).

        ", "ApplyPendingMaintenanceActionMessage$ApplyAction": "

        The pending maintenance action to apply to this resource.

        Valid values: system-update, db-upgrade

        ", "ApplyPendingMaintenanceActionMessage$OptInType": "

        A value that specifies the type of opt-in request, or undoes an opt-in request. An opt-in request of type immediate cannot be undone.

        Valid values:

        • immediate - Apply the maintenance action immediately.

        • next-maintenance - Apply the maintenance action during the next maintenance window for the resource.

        • undo-opt-in - Cancel any existing next-maintenance opt-in requests.

        ", "AttributeValueList$member": null, "AuthorizeDBSecurityGroupIngressMessage$DBSecurityGroupName": "

        The name of the DB security group to add authorization to.

        ", "AuthorizeDBSecurityGroupIngressMessage$CIDRIP": "

        The IP range to authorize.

        ", "AuthorizeDBSecurityGroupIngressMessage$EC2SecurityGroupName": "

        Name of the EC2 security group to authorize. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "AuthorizeDBSecurityGroupIngressMessage$EC2SecurityGroupId": "

        Id of the EC2 security group to authorize. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "AuthorizeDBSecurityGroupIngressMessage$EC2SecurityGroupOwnerId": "

        AWS account number of the owner of the EC2 security group specified in the EC2SecurityGroupName parameter. The AWS Access Key ID is not an acceptable value. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "AvailabilityZone$Name": "

        The name of the availability zone.

        ", "AvailabilityZones$member": null, "Certificate$CertificateIdentifier": "

        The unique key that identifies a certificate.

        ", "Certificate$CertificateType": "

        The type of the certificate.

        ", "Certificate$Thumbprint": "

        The thumbprint of the certificate.

        ", "Certificate$CertificateArn": "

        The Amazon Resource Name (ARN) for the certificate.

        ", "CertificateMessage$Marker": "

        An optional pagination token provided by a previous DescribeCertificates request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "CharacterSet$CharacterSetName": "

        The name of the character set.

        ", "CharacterSet$CharacterSetDescription": "

        The description of the character set.

        ", "CopyDBClusterParameterGroupMessage$SourceDBClusterParameterGroupIdentifier": "

        The identifier or Amazon Resource Name (ARN) for the source DB cluster parameter group. For information about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN).

        Constraints:

        • Must specify a valid DB cluster parameter group.

        • If the source DB cluster parameter group is in the same region as the copy, specify a valid DB parameter group identifier, for example my-db-cluster-param-group, or a valid ARN.

        • If the source DB parameter group is in a different region than the copy, specify a valid DB cluster parameter group ARN, for example arn:aws:rds:us-east-1:123456789012:cluster-pg:custom-cluster-group1.

        ", "CopyDBClusterParameterGroupMessage$TargetDBClusterParameterGroupIdentifier": "

        The identifier for the copied DB cluster parameter group.

        Constraints:

        • Cannot be null, empty, or blank

        • Must contain from 1 to 255 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-cluster-param-group1

        ", "CopyDBClusterParameterGroupMessage$TargetDBClusterParameterGroupDescription": "

        A description for the copied DB cluster parameter group.

        ", "CopyDBClusterSnapshotMessage$SourceDBClusterSnapshotIdentifier": "

        The identifier of the DB cluster snapshot to copy. This parameter is not case-sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        Example: my-cluster-snapshot1

        ", "CopyDBClusterSnapshotMessage$TargetDBClusterSnapshotIdentifier": "

        The identifier of the new DB cluster snapshot to create from the source DB cluster snapshot. This parameter is not case-sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        Example: my-cluster-snapshot2

        ", "CopyDBParameterGroupMessage$SourceDBParameterGroupIdentifier": "

        The identifier or ARN for the source DB parameter group. For information about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN).

        Constraints:

        • Must specify a valid DB parameter group.

        • Must specify a valid DB parameter group identifier, for example my-db-param-group, or a valid ARN.

        ", "CopyDBParameterGroupMessage$TargetDBParameterGroupIdentifier": "

        The identifier for the copied DB parameter group.

        Constraints:

        • Cannot be null, empty, or blank

        • Must contain from 1 to 255 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-db-parameter-group

        ", "CopyDBParameterGroupMessage$TargetDBParameterGroupDescription": "

        A description for the copied DB parameter group.

        ", "CopyDBSnapshotMessage$SourceDBSnapshotIdentifier": "

        The identifier for the source DB snapshot.

        If you are copying from a shared manual DB snapshot, this must be the ARN of the shared DB snapshot.

        Constraints:

        • Must specify a valid system snapshot in the \"available\" state.

        • If the source snapshot is in the same region as the copy, specify a valid DB snapshot identifier.

        • If the source snapshot is in a different region than the copy, specify a valid DB snapshot ARN. For more information, go to Copying a DB Snapshot.

        Example: rds:mydb-2012-04-02-00-01

        Example: arn:aws:rds:rr-regn-1:123456789012:snapshot:mysql-instance1-snapshot-20130805

        ", "CopyDBSnapshotMessage$TargetDBSnapshotIdentifier": "

        The identifier for the copied snapshot.

        Constraints:

        • Cannot be null, empty, or blank

        • Must contain from 1 to 255 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-db-snapshot

        ", "CopyDBSnapshotMessage$KmsKeyId": "

        The AWS Key Management Service (AWS KMS) key identifier for an encrypted DB snapshot. The KMS key identifier is the Amazon Resource Name (ARN) or the KMS key alias for the KMS encryption key.

        If you copy an unencrypted DB snapshot and specify a value for the KmsKeyId parameter, Amazon RDS encrypts the target DB snapshot using the specified KMS encryption key.

        If you copy an encrypted DB snapshot from your AWS account, you can specify a value for KmsKeyId to encrypt the copy with a new KMS encryption key. If you don't specify a value for KmsKeyId then the copy of the DB snapshot is encrypted with the same KMS key as the source DB snapshot.

        If you copy an encrypted DB snapshot that is shared from another AWS account, then you must specify a value for KmsKeyId.

        ", "CopyOptionGroupMessage$SourceOptionGroupIdentifier": "

        The identifier or ARN for the source option group. For information about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN).

        Constraints:

        • Must specify a valid option group.

        • If the source option group is in the same region as the copy, specify a valid option group identifier, for example my-option-group, or a valid ARN.

        • If the source option group is in a different region than the copy, specify a valid option group ARN, for example arn:aws:rds:us-west-2:123456789012:og:special-options.

        ", "CopyOptionGroupMessage$TargetOptionGroupIdentifier": "

        The identifier for the copied option group.

        Constraints:

        • Cannot be null, empty, or blank

        • Must contain from 1 to 255 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-option-group

        ", "CopyOptionGroupMessage$TargetOptionGroupDescription": "

        The description for the copied option group.

        ", "CreateDBClusterMessage$CharacterSetName": "

        A value that indicates that the DB cluster should be associated with the specified CharacterSet.

        ", "CreateDBClusterMessage$DatabaseName": "

        The name for your database of up to 8 alpha-numeric characters. If you do not provide a name, Amazon RDS will not create a database in the DB cluster you are creating.

        ", "CreateDBClusterMessage$DBClusterIdentifier": "

        The DB cluster identifier. This parameter is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        Example: my-cluster1

        ", "CreateDBClusterMessage$DBClusterParameterGroupName": "

        The name of the DB cluster parameter group to associate with this DB cluster. If this argument is omitted, default.aurora5.6 will be used.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "CreateDBClusterMessage$DBSubnetGroupName": "

        A DB subnet group to associate with this DB cluster.

        Constraints: Must contain no more than 255 alphanumeric characters, periods, underscores, spaces, or hyphens. Must not be default.

        Example: mySubnetgroup

        ", "CreateDBClusterMessage$Engine": "

        The name of the database engine to be used for this DB cluster.

        Valid Values: aurora

        ", "CreateDBClusterMessage$EngineVersion": "

        The version number of the database engine to use.

        Aurora

        Example: 5.6.10a

        ", "CreateDBClusterMessage$MasterUsername": "

        The name of the master user for the DB cluster.

        Constraints:

        • Must be 1 to 16 alphanumeric characters.

        • First character must be a letter.

        • Cannot be a reserved word for the chosen database engine.

        ", "CreateDBClusterMessage$MasterUserPassword": "

        The password for the master database user. This password can contain any printable ASCII character except \"/\", \"\"\", or \"@\".

        Constraints: Must contain from 8 to 41 characters.

        ", "CreateDBClusterMessage$OptionGroupName": "

        A value that indicates that the DB cluster should be associated with the specified option group.

        Permanent options cannot be removed from an option group. The option group cannot be removed from a DB cluster once it is associated with a DB cluster.

        ", "CreateDBClusterMessage$PreferredBackupWindow": "

        The daily time range during which automated backups are created if automated backups are enabled using the BackupRetentionPeriod parameter.

        Default: A 30-minute window selected at random from an 8-hour block of time per region. To see the time blocks available, see Adjusting the Preferred Maintenance Window in the Amazon RDS User Guide.

        Constraints:

        • Must be in the format hh24:mi-hh24:mi.

        • Times should be in Universal Coordinated Time (UTC).

        • Must not conflict with the preferred maintenance window.

        • Must be at least 30 minutes.

        ", "CreateDBClusterMessage$PreferredMaintenanceWindow": "

        The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

        Format: ddd:hh24:mi-ddd:hh24:mi

        Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week. To see the time blocks available, see Adjusting the Preferred Maintenance Window in the Amazon RDS User Guide.

        Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun

        Constraints: Minimum 30-minute window.

        ", "CreateDBClusterMessage$ReplicationSourceIdentifier": "

        The Amazon Resource Name (ARN) of the source DB cluster if this DB cluster is created as a Read Replica.

        ", "CreateDBClusterMessage$KmsKeyId": "

        The KMS key identifier for an encrypted DB cluster.

        The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a DB cluster with the same AWS account that owns the KMS encryption key used to encrypt the new DB cluster, then you can use the KMS key alias instead of the ARN for the KM encryption key.

        If the StorageEncrypted parameter is true, and you do not specify a value for the KmsKeyId parameter, then Amazon RDS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.

        ", "CreateDBClusterParameterGroupMessage$DBClusterParameterGroupName": "

        The name of the DB cluster parameter group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        This value is stored as a lowercase string.

        ", "CreateDBClusterParameterGroupMessage$DBParameterGroupFamily": "

        The DB cluster parameter group family name. A DB cluster parameter group can be associated with one and only one DB cluster parameter group family, and can be applied only to a DB cluster running a database engine and engine version compatible with that DB cluster parameter group family.

        ", "CreateDBClusterParameterGroupMessage$Description": "

        The description for the DB cluster parameter group.

        ", "CreateDBClusterSnapshotMessage$DBClusterSnapshotIdentifier": "

        The identifier of the DB cluster snapshot. This parameter is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        Example: my-cluster1-snapshot1

        ", "CreateDBClusterSnapshotMessage$DBClusterIdentifier": "

        The identifier of the DB cluster to create a snapshot for. This parameter is not case-sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        Example: my-cluster1

        ", "CreateDBInstanceMessage$DBName": "

        The meaning of this parameter differs according to the database engine you use.

        Type: String

        MySQL

        The name of the database to create when the DB instance is created. If this parameter is not specified, no database is created in the DB instance.

        Constraints:

        • Must contain 1 to 64 alphanumeric characters

        • Cannot be a word reserved by the specified database engine

        MariaDB

        The name of the database to create when the DB instance is created. If this parameter is not specified, no database is created in the DB instance.

        Constraints:

        • Must contain 1 to 64 alphanumeric characters

        • Cannot be a word reserved by the specified database engine

        PostgreSQL

        The name of the database to create when the DB instance is created. If this parameter is not specified, the default \"postgres\" database is created in the DB instance.

        Constraints:

        • Must contain 1 to 63 alphanumeric characters

        • Must begin with a letter or an underscore. Subsequent characters can be letters, underscores, or digits (0-9).

        • Cannot be a word reserved by the specified database engine

        Oracle

        The Oracle System ID (SID) of the created DB instance.

        Default: ORCL

        Constraints:

        • Cannot be longer than 8 characters

        SQL Server

        Not applicable. Must be null.

        Amazon Aurora

        The name of the database to create when the primary instance of the DB cluster is created. If this parameter is not specified, no database is created in the DB instance.

        Constraints:

        • Must contain 1 to 64 alphanumeric characters

        • Cannot be a word reserved by the specified database engine

        ", "CreateDBInstanceMessage$DBInstanceIdentifier": "

        The DB instance identifier. This parameter is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens (1 to 15 for SQL Server).

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        Example: mydbinstance

        ", "CreateDBInstanceMessage$DBInstanceClass": "

        The compute and memory capacity of the DB instance.

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.xlarge |db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge | db.m3.2xlarge | db.m4.large | db.m4.xlarge | db.m4.2xlarge | db.m4.4xlarge | db.m4.10xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge | db.r3.8xlarge | db.t2.micro | db.t2.small | db.t2.medium | db.t2.large

        ", "CreateDBInstanceMessage$Engine": "

        The name of the database engine to be used for this instance.

        Valid Values: mysql | mariadb | oracle-se1 | oracle-se2 | oracle-se | oracle-ee | sqlserver-ee | sqlserver-se | sqlserver-ex | sqlserver-web | postgres | aurora

        Not every database engine is available for every AWS region.

        ", "CreateDBInstanceMessage$MasterUsername": "

        The name of master user for the client DB instance.

        MySQL

        Constraints:

        • Must be 1 to 16 alphanumeric characters.

        • First character must be a letter.

        • Cannot be a reserved word for the chosen database engine.

        MariaDB

        Constraints:

        • Must be 1 to 16 alphanumeric characters.

        • Cannot be a reserved word for the chosen database engine.

        Type: String

        Oracle

        Constraints:

        • Must be 1 to 30 alphanumeric characters.

        • First character must be a letter.

        • Cannot be a reserved word for the chosen database engine.

        SQL Server

        Constraints:

        • Must be 1 to 128 alphanumeric characters.

        • First character must be a letter.

        • Cannot be a reserved word for the chosen database engine.

        PostgreSQL

        Constraints:

        • Must be 1 to 63 alphanumeric characters.

        • First character must be a letter.

        • Cannot be a reserved word for the chosen database engine.

        ", "CreateDBInstanceMessage$MasterUserPassword": "

        The password for the master database user. Can be any printable ASCII character except \"/\", \"\"\", or \"@\".

        Type: String

        MySQL

        Constraints: Must contain from 8 to 41 characters.

        MariaDB

        Constraints: Must contain from 8 to 41 characters.

        Oracle

        Constraints: Must contain from 8 to 30 characters.

        SQL Server

        Constraints: Must contain from 8 to 128 characters.

        PostgreSQL

        Constraints: Must contain from 8 to 128 characters.

        Amazon Aurora

        Constraints: Must contain from 8 to 41 characters.

        ", "CreateDBInstanceMessage$AvailabilityZone": "

        The EC2 Availability Zone that the database instance will be created in. For information on regions and Availability Zones, see Regions and Availability Zones.

        Default: A random, system-chosen Availability Zone in the endpoint's region.

        Example: us-east-1d

        Constraint: The AvailabilityZone parameter cannot be specified if the MultiAZ parameter is set to true. The specified Availability Zone must be in the same region as the current endpoint.

        ", "CreateDBInstanceMessage$DBSubnetGroupName": "

        A DB subnet group to associate with this DB instance.

        If there is no DB subnet group, then it is a non-VPC DB instance.

        ", "CreateDBInstanceMessage$PreferredMaintenanceWindow": "

        The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC). For more information, see DB Instance Maintenance.

        Format: ddd:hh24:mi-ddd:hh24:mi

        Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week. To see the time blocks available, see Adjusting the Preferred Maintenance Window in the Amazon RDS User Guide.

        Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun

        Constraints: Minimum 30-minute window.

        ", "CreateDBInstanceMessage$DBParameterGroupName": "

        The name of the DB parameter group to associate with this DB instance. If this argument is omitted, the default DBParameterGroup for the specified engine will be used.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "CreateDBInstanceMessage$PreferredBackupWindow": "

        The daily time range during which automated backups are created if automated backups are enabled, using the BackupRetentionPeriod parameter. For more information, see DB Instance Backups.

        Default: A 30-minute window selected at random from an 8-hour block of time per region. To see the time blocks available, see Adjusting the Preferred Maintenance Window in the Amazon RDS User Guide.

        Constraints:

        • Must be in the format hh24:mi-hh24:mi.

        • Times should be in Universal Coordinated Time (UTC).

        • Must not conflict with the preferred maintenance window.

        • Must be at least 30 minutes.

        ", "CreateDBInstanceMessage$EngineVersion": "

        The version number of the database engine to use.

        The following are the database engines and major and minor versions that are available with Amazon RDS. Not every database engine is available for every AWS region.

        Amazon Aurora

        • Version 5.6 (available in these AWS regions: ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-2, eu-west-1, us-east-1, us-west-2): 5.6.10a

        MariaDB

        • Version 10.1 (available in these AWS regions: ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, us-west-2): 10.1.14

        • Version 10.0 (available in all AWS regions): 10.0.17 | 10.0.24

        MySQL

        • Version 5.7 (available in all AWS regions): 5.7.10 | 5.7.11

        • Version 5.6 (available in all AWS regions): 5.6.27 | 5.6.29

        • Version 5.6 (available in these AWS regions: ap-northeast-1, ap-northeast-2, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-west-1, us-west-2): 5.6.23

        • Version 5.6 (available in these AWS regions: ap-northeast-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-west-1, us-west-2): 5.6.19a | 5.6.19b | 5.6.21 | 5.6.21b | 5.6.22

        • Version 5.5 (available in all AWS regions): 5.5.46

        • Version 5.5 (available in these AWS regions: ap-northeast-1, ap-northeast-2, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-west-1, us-west-2): 5.5.42

        • Version 5.5 (available in these AWS regions: ap-northeast-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-west-1, us-west-2): 5.5.40b | 5.5.41

        • Version 5.5 (available in these AWS regions: ap-northeast-1, ap-southeast-1, ap-southeast-2, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-west-1, us-west-2): 5.5.40 | 5.5.40a

        Oracle Database Enterprise Edition (oracle-ee)

        • Version 12.1.0.2 (available in these AWS regions: ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, us-west-2): 12.1.0.2.v5

        • Version 12.1.0.2 (available in all AWS regions): 12.1.0.2.v1 | 12.1.0.2.v2 | 12.1.0.2.v3 | 12.1.0.2.v4

        • Version 12.1.0.1 (available in these AWS regions: ap-northeast-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, us-west-2): 12.1.0.1.v6

        • Version 12.1.0.1 (available in these AWS regions: ap-northeast-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-west-1, us-west-2): 12.1.0.1.v3 | 12.1.0.1.v4 | 12.1.0.1.v5

        • Version 12.1.0.1 (available in these AWS regions: ap-northeast-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-gov-west-1, us-west-1, us-west-2): 12.1.0.1.v1 | 12.1.0.1.v2

        • Version 11.2.0.4 (available in these AWS regions: ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, us-west-2): 11.2.0.4.v6 | 11.2.0.4.v9

        • Version 11.2.0.4 (available in all AWS regions): 11.2.0.4.v1 | 11.2.0.4.v3 | 11.2.0.4.v4 | 11.2.0.4.v5 | 11.2.0.4.v7 | 11.2.0.4.v8

        Oracle Database Standard Edition Two (oracle-se2)

        • Version 12.1.0.2 (available in these AWS regions: ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, us-west-2): 12.1.0.2.v5

        • Version 12.1.0.2 (available in all AWS regions): 12.1.0.2.v2 | 12.1.0.2.v3 | 12.1.0.2.v4

        Oracle Database Standard Edition One (oracle-se1)

        • Version 12.1.0.1 (available in these AWS regions: ap-northeast-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, us-west-2): 12.1.0.1.v6

        • Version 12.1.0.1 (available in these AWS regions: ap-northeast-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-west-1, us-west-2): 12.1.0.1.v3 | 12.1.0.1.v4 | 12.1.0.1.v5

        • Version 12.1.0.1 (available in these AWS regions: ap-northeast-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-gov-west-1, us-west-1, us-west-2): 12.1.0.1.v1 | 12.1.0.1.v2

        • Version 11.2.0.4 (available in these AWS regions: ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, us-west-2): 11.2.0.4.v6 | 11.2.0.4.v9

        • Version 11.2.0.4 (available in all AWS regions): 11.2.0.4.v1 | 11.2.0.4.v3 | 11.2.0.4.v4 | 11.2.0.4.v5 | 11.2.0.4.v7 | 11.2.0.4.v8

        Oracle Database Standard Edition (oracle-se)

        • Version 12.1.0.1 (available in these AWS regions: ap-northeast-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, us-west-2): 12.1.0.1.v6

        • Version 12.1.0.1 (available in these AWS regions: ap-northeast-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-west-1, us-west-2): 12.1.0.1.v3 | 12.1.0.1.v4 | 12.1.0.1.v5

        • Version 12.1.0.1 (available in these AWS regions: ap-northeast-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-gov-west-1, us-west-1, us-west-2): 12.1.0.1.v1 | 12.1.0.1.v2

        • Version 11.2.0.4 (available in these AWS regions: ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, us-west-2): 11.2.0.4.v6 | 11.2.0.4.v9

        • Version 11.2.0.4 (available in all AWS regions): 11.2.0.4.v1 | 11.2.0.4.v3 | 11.2.0.4.v4 | 11.2.0.4.v5 | 11.2.0.4.v7 | 11.2.0.4.v8

        PostgreSQL

        • Version 9.5 (available in these AWS regions: ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, us-west-2): 9.5.2 | 9.5.4

        • Version 9.4 (available in these AWS regions: ap-northeast-1, ap-northeast-2, ap-south-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, us-west-2): 9.4.7 | 9.4.9

        • Version 9.4 (available in all AWS regions): 9.4.5

        • Version 9.4 (available in these AWS regions: ap-northeast-1, ap-northeast-2, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-west-1, us-west-2): 9.4.1 | 9.4.4

        • Version 9.3 (available in these AWS regions: ap-northeast-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-west-1, us-west-2): 9.3.10 | 9.3.3 | 9.3.5 | 9.3.6 | 9.3.9

        • Version 9.3 (available in these AWS regions: ap-northeast-1, ap-southeast-1, ap-southeast-2, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-west-1, us-west-2): 9.3.1 | 9.3.2

        • Version 9.3 (available in these AWS regions: ap-northeast-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, us-west-2): 9.3.12 | 9.3.14

        Microsoft SQL Server Enterprise Edition (sqlserver-ee)

        • Version 11.00 (available in all AWS regions): 11.00.2100.60.v1 | 11.00.5058.0.v1 | 11.00.6020.0.v1

        • Version 10.50 (available in all AWS regions): 10.50.2789.0.v1 | 10.50.6000.34.v1 | 10.50.6529.0.v1

        Microsoft SQL Server Express Edition (sqlserver-ex)

        • Version 12.00 (available in all AWS regions): 12.00.4422.0.v1

        • Version 11.00 (available in all AWS regions): 11.00.2100.60.v1 | 11.00.5058.0.v1 | 11.00.6020.0.v1

        • Version 10.50 (available in all AWS regions): 10.50.2789.0.v1 | 10.50.6000.34.v1 | 10.50.6529.0.v1

        Microsoft SQL Server Standard Edition (sqlserver-se)

        • Version 12.00 (available in all AWS regions): 12.00.4422.0.v1

        • Version 11.00 (available in all AWS regions): 11.00.2100.60.v1 | 11.00.5058.0.v1 | 11.00.6020.0.v1

        • Version 10.50 (available in all AWS regions): 10.50.2789.0.v1 | 10.50.6000.34.v1 | 10.50.6529.0.v1

        Microsoft SQL Server Web Edition (sqlserver-web)

        • Version 12.00 (available in all AWS regions): 12.00.4422.0.v1

        • Version 11.00 (available in all AWS regions): 11.00.2100.60.v1 | 11.00.5058.0.v1 | 11.00.6020.0.v1

        • Version 10.50 (available in all AWS regions): 10.50.2789.0.v1 | 10.50.6000.34.v1 | 10.50.6529.0.v1

        ", "CreateDBInstanceMessage$LicenseModel": "

        License model information for this DB instance.

        Valid values: license-included | bring-your-own-license | general-public-license

        ", "CreateDBInstanceMessage$OptionGroupName": "

        Indicates that the DB instance should be associated with the specified option group.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "CreateDBInstanceMessage$CharacterSetName": "

        For supported engines, indicates that the DB instance should be associated with the specified CharacterSet.

        ", "CreateDBInstanceMessage$DBClusterIdentifier": "

        The identifier of the DB cluster that the instance will belong to.

        For information on creating a DB cluster, see CreateDBCluster.

        Type: String

        ", "CreateDBInstanceMessage$StorageType": "

        Specifies the storage type to be associated with the DB instance.

        Valid values: standard | gp2 | io1

        If you specify io1, you must also include a value for the Iops parameter.

        Default: io1 if the Iops parameter is specified; otherwise standard

        ", "CreateDBInstanceMessage$TdeCredentialArn": "

        The ARN from the Key Store with which to associate the instance for TDE encryption.

        ", "CreateDBInstanceMessage$TdeCredentialPassword": "

        The password for the given ARN from the Key Store in order to access the device.

        ", "CreateDBInstanceMessage$KmsKeyId": "

        The KMS key identifier for an encrypted DB instance.

        The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a DB instance with the same AWS account that owns the KMS encryption key used to encrypt the new DB instance, then you can use the KMS key alias instead of the ARN for the KM encryption key.

        If the StorageEncrypted parameter is true, and you do not specify a value for the KmsKeyId parameter, then Amazon RDS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.

        ", "CreateDBInstanceMessage$Domain": "

        Specify the Active Directory Domain to create the instance in.

        ", "CreateDBInstanceMessage$MonitoringRoleArn": "

        The ARN for the IAM role that permits RDS to send enhanced monitoring metrics to CloudWatch Logs. For example, arn:aws:iam:123456789012:role/emaccess. For information on creating a monitoring role, go to To create an IAM role for Amazon RDS Enhanced Monitoring.

        If MonitoringInterval is set to a value other than 0, then you must supply a MonitoringRoleArn value.

        ", "CreateDBInstanceMessage$DomainIAMRoleName": "

        Specify the name of the IAM role to be used when making API calls to the Directory Service.

        ", "CreateDBInstanceMessage$Timezone": "

        The time zone of the DB instance. The time zone parameter is currently supported only by Microsoft SQL Server.

        ", "CreateDBInstanceReadReplicaMessage$DBInstanceIdentifier": "

        The DB instance identifier of the Read Replica. This identifier is the unique key that identifies a DB instance. This parameter is stored as a lowercase string.

        ", "CreateDBInstanceReadReplicaMessage$SourceDBInstanceIdentifier": "

        The identifier of the DB instance that will act as the source for the Read Replica. Each DB instance can have up to five Read Replicas.

        Constraints:

        • Must be the identifier of an existing MySQL, MariaDB, or PostgreSQL DB instance.

        • Can specify a DB instance that is a MySQL Read Replica only if the source is running MySQL 5.6.

        • Can specify a DB instance that is a PostgreSQL Read Replica only if the source is running PostgreSQL 9.3.5.

        • The specified DB instance must have automatic backups enabled, its backup retention period must be greater than 0.

        • If the source DB instance is in the same region as the Read Replica, specify a valid DB instance identifier.

        • If the source DB instance is in a different region than the Read Replica, specify a valid DB instance ARN. For more information, go to Constructing a Amazon RDS Amazon Resource Name (ARN).

        ", "CreateDBInstanceReadReplicaMessage$DBInstanceClass": "

        The compute and memory capacity of the Read Replica.

        Valid Values: db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.xlarge |db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge | db.m3.2xlarge | db.m4.large | db.m4.xlarge | db.m4.2xlarge | db.m4.4xlarge | db.m4.10xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge | db.r3.8xlarge | db.t2.micro | db.t2.small | db.t2.medium | db.t2.large

        Default: Inherits from the source DB instance.

        ", "CreateDBInstanceReadReplicaMessage$AvailabilityZone": "

        The Amazon EC2 Availability Zone that the Read Replica will be created in.

        Default: A random, system-chosen Availability Zone in the endpoint's region.

        Example: us-east-1d

        ", "CreateDBInstanceReadReplicaMessage$OptionGroupName": "

        The option group the DB instance will be associated with. If omitted, the default option group for the engine specified will be used.

        ", "CreateDBInstanceReadReplicaMessage$DBSubnetGroupName": "

        Specifies a DB subnet group for the DB instance. The new DB instance will be created in the VPC associated with the DB subnet group. If no DB subnet group is specified, then the new DB instance is not created in a VPC.

        Constraints:

        • Can only be specified if the source DB instance identifier specifies a DB instance in another region.

        • The specified DB subnet group must be in the same region in which the operation is running.

        • All Read Replicas in one region that are created from the same source DB instance must either:>

          • Specify DB subnet groups from the same VPC. All these Read Replicas will be created in the same VPC.

          • Not specify a DB subnet group. All these Read Replicas will be created outside of any VPC.

        Constraints: Must contain no more than 255 alphanumeric characters, periods, underscores, spaces, or hyphens. Must not be default.

        Example: mySubnetgroup

        ", "CreateDBInstanceReadReplicaMessage$StorageType": "

        Specifies the storage type to be associated with the Read Replica.

        Valid values: standard | gp2 | io1

        If you specify io1, you must also include a value for the Iops parameter.

        Default: io1 if the Iops parameter is specified; otherwise standard

        ", "CreateDBInstanceReadReplicaMessage$MonitoringRoleArn": "

        The ARN for the IAM role that permits RDS to send enhanced monitoring metrics to CloudWatch Logs. For example, arn:aws:iam:123456789012:role/emaccess. For information on creating a monitoring role, go to To create an IAM role for Amazon RDS Enhanced Monitoring.

        If MonitoringInterval is set to a value other than 0, then you must supply a MonitoringRoleArn value.

        ", "CreateDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB parameter group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        This value is stored as a lowercase string.

        ", "CreateDBParameterGroupMessage$DBParameterGroupFamily": "

        The DB parameter group family name. A DB parameter group can be associated with one and only one DB parameter group family, and can be applied only to a DB instance running a database engine and engine version compatible with that DB parameter group family.

        ", "CreateDBParameterGroupMessage$Description": "

        The description for the DB parameter group.

        ", "CreateDBSecurityGroupMessage$DBSecurityGroupName": "

        The name for the DB security group. This value is stored as a lowercase string.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        • Must not be \"Default\"

        Example: mysecuritygroup

        ", "CreateDBSecurityGroupMessage$DBSecurityGroupDescription": "

        The description for the DB security group.

        ", "CreateDBSnapshotMessage$DBSnapshotIdentifier": "

        The identifier for the DB snapshot.

        Constraints:

        • Cannot be null, empty, or blank

        • Must contain from 1 to 255 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-snapshot-id

        ", "CreateDBSnapshotMessage$DBInstanceIdentifier": "

        The DB instance identifier. This is the unique key that identifies a DB instance.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "CreateDBSubnetGroupMessage$DBSubnetGroupName": "

        The name for the DB subnet group. This value is stored as a lowercase string.

        Constraints: Must contain no more than 255 alphanumeric characters, periods, underscores, spaces, or hyphens. Must not be default.

        Example: mySubnetgroup

        ", "CreateDBSubnetGroupMessage$DBSubnetGroupDescription": "

        The description for the DB subnet group.

        ", "CreateEventSubscriptionMessage$SubscriptionName": "

        The name of the subscription.

        Constraints: The name must be less than 255 characters.

        ", "CreateEventSubscriptionMessage$SnsTopicArn": "

        The Amazon Resource Name (ARN) of the SNS topic created for event notification. The ARN is created by Amazon SNS when you create a topic and subscribe to it.

        ", "CreateEventSubscriptionMessage$SourceType": "

        The type of source that will be generating the events. For example, if you want to be notified of events generated by a DB instance, you would set this parameter to db-instance. if this value is not specified, all events are returned.

        Valid values: db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot

        ", "CreateOptionGroupMessage$OptionGroupName": "

        Specifies the name of the option group to be created.

        Constraints:

        • Must be 1 to 255 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: myoptiongroup

        ", "CreateOptionGroupMessage$EngineName": "

        Specifies the name of the engine that this option group should be associated with.

        ", "CreateOptionGroupMessage$MajorEngineVersion": "

        Specifies the major version of the engine that this option group should be associated with.

        ", "CreateOptionGroupMessage$OptionGroupDescription": "

        The description of the option group.

        ", "DBCluster$CharacterSetName": "

        If present, specifies the name of the character set that this cluster is associated with.

        ", "DBCluster$DatabaseName": "

        Contains the name of the initial database of this DB cluster that was provided at create time, if one was specified when the DB cluster was created. This same name is returned for the life of the DB cluster.

        ", "DBCluster$DBClusterIdentifier": "

        Contains a user-supplied DB cluster identifier. This identifier is the unique key that identifies a DB cluster.

        ", "DBCluster$DBClusterParameterGroup": "

        Specifies the name of the DB cluster parameter group for the DB cluster.

        ", "DBCluster$DBSubnetGroup": "

        Specifies information on the subnet group associated with the DB cluster, including the name, description, and subnets in the subnet group.

        ", "DBCluster$Status": "

        Specifies the current state of this DB cluster.

        ", "DBCluster$PercentProgress": "

        Specifies the progress of the operation as a percentage.

        ", "DBCluster$Endpoint": "

        Specifies the connection endpoint for the primary instance of the DB cluster.

        ", "DBCluster$ReaderEndpoint": "

        The reader endpoint for the DB cluster. The reader endpoint for a DB cluster load-balances connections across the Aurora Replicas that are available in a DB cluster. As clients request new connections to the reader endpoint, Aurora distributes the connection requests among the Aurora Replicas in the DB cluster. This functionality can help balance your read workload across multiple Aurora Replicas in your DB cluster.

        If a failover occurs, and the Aurora Replica that you are connected to is promoted to be the primary instance, your connection will be dropped. To continue sending your read workload to other Aurora Replicas in the cluster, you can then recoonect to the reader endpoint.

        ", "DBCluster$Engine": "

        Provides the name of the database engine to be used for this DB cluster.

        ", "DBCluster$EngineVersion": "

        Indicates the database engine version.

        ", "DBCluster$MasterUsername": "

        Contains the master username for the DB cluster.

        ", "DBCluster$PreferredBackupWindow": "

        Specifies the daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod.

        ", "DBCluster$PreferredMaintenanceWindow": "

        Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

        ", "DBCluster$ReplicationSourceIdentifier": "

        Contains the identifier of the source DB cluster if this DB cluster is a Read Replica.

        ", "DBCluster$HostedZoneId": "

        Specifies the ID that Amazon Route 53 assigns when you create a hosted zone.

        ", "DBCluster$KmsKeyId": "

        If StorageEncrypted is true, the KMS key identifier for the encrypted DB cluster.

        ", "DBCluster$DbClusterResourceId": "

        The region-unique, immutable identifier for the DB cluster. This identifier is found in AWS CloudTrail log entries whenever the KMS key for the DB cluster is accessed.

        ", "DBCluster$DBClusterArn": "

        The Amazon Resource Name (ARN) for the DB cluster.

        ", "DBClusterMember$DBInstanceIdentifier": "

        Specifies the instance identifier for this member of the DB cluster.

        ", "DBClusterMember$DBClusterParameterGroupStatus": "

        Specifies the status of the DB cluster parameter group for this member of the DB cluster.

        ", "DBClusterMessage$Marker": "

        A pagination token that can be used in a subsequent DescribeDBClusters request.

        ", "DBClusterOptionGroupStatus$DBClusterOptionGroupName": "

        Specifies the name of the DB cluster option group.

        ", "DBClusterOptionGroupStatus$Status": "

        Specifies the status of the DB cluster option group.

        ", "DBClusterParameterGroup$DBClusterParameterGroupName": "

        Provides the name of the DB cluster parameter group.

        ", "DBClusterParameterGroup$DBParameterGroupFamily": "

        Provides the name of the DB parameter group family that this DB cluster parameter group is compatible with.

        ", "DBClusterParameterGroup$Description": "

        Provides the customer-specified description for this DB cluster parameter group.

        ", "DBClusterParameterGroup$DBClusterParameterGroupArn": "

        The Amazon Resource Name (ARN) for the DB cluster parameter group.

        ", "DBClusterParameterGroupDetails$Marker": "

        An optional pagination token provided by a previous DescribeDBClusterParameters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DBClusterParameterGroupNameMessage$DBClusterParameterGroupName": "

        The name of the DB cluster parameter group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        This value is stored as a lowercase string.

        ", "DBClusterParameterGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBClusterParameterGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBClusterRole$RoleArn": "

        The Amazon Resource Name (ARN) of the IAM role that is associated with the DB cluster.

        ", "DBClusterRole$Status": "

        Describes the state of association between the IAM role and the DB cluster. The Status property returns one of the following values:

        • ACTIVE - the IAM role ARN is associated with the DB cluster and can be used to access other AWS services on your behalf.

        • PENDING - the IAM role ARN is being associated with the DB cluster.

        • INVALID - the IAM role ARN is associated with the DB cluster, but the DB cluster is unable to assume the IAM role in order to access other AWS services on your behalf.

        ", "DBClusterSnapshot$DBClusterSnapshotIdentifier": "

        Specifies the identifier for the DB cluster snapshot.

        ", "DBClusterSnapshot$DBClusterIdentifier": "

        Specifies the DB cluster identifier of the DB cluster that this DB cluster snapshot was created from.

        ", "DBClusterSnapshot$Engine": "

        Specifies the name of the database engine.

        ", "DBClusterSnapshot$Status": "

        Specifies the status of this DB cluster snapshot.

        ", "DBClusterSnapshot$VpcId": "

        Provides the VPC ID associated with the DB cluster snapshot.

        ", "DBClusterSnapshot$MasterUsername": "

        Provides the master username for the DB cluster snapshot.

        ", "DBClusterSnapshot$EngineVersion": "

        Provides the version of the database engine for this DB cluster snapshot.

        ", "DBClusterSnapshot$LicenseModel": "

        Provides the license model information for this DB cluster snapshot.

        ", "DBClusterSnapshot$SnapshotType": "

        Provides the type of the DB cluster snapshot.

        ", "DBClusterSnapshot$KmsKeyId": "

        If StorageEncrypted is true, the KMS key identifier for the encrypted DB cluster snapshot.

        ", "DBClusterSnapshot$DBClusterSnapshotArn": "

        The Amazon Resource Name (ARN) for the DB cluster snapshot.

        ", "DBClusterSnapshotAttribute$AttributeName": "

        The name of the manual DB cluster snapshot attribute.

        The attribute named restore refers to the list of AWS accounts that have permission to copy or restore the manual DB cluster snapshot. For more information, see the ModifyDBClusterSnapshotAttribute API action.

        ", "DBClusterSnapshotAttributesResult$DBClusterSnapshotIdentifier": "

        The identifier of the manual DB cluster snapshot that the attributes apply to.

        ", "DBClusterSnapshotMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBClusterSnapshots request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBEngineVersion$Engine": "

        The name of the database engine.

        ", "DBEngineVersion$EngineVersion": "

        The version number of the database engine.

        ", "DBEngineVersion$DBParameterGroupFamily": "

        The name of the DB parameter group family for the database engine.

        ", "DBEngineVersion$DBEngineDescription": "

        The description of the database engine.

        ", "DBEngineVersion$DBEngineVersionDescription": "

        The description of the database engine version.

        ", "DBEngineVersionMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBInstance$DBInstanceIdentifier": "

        Contains a user-supplied database identifier. This identifier is the unique key that identifies a DB instance.

        ", "DBInstance$DBInstanceClass": "

        Contains the name of the compute and memory capacity class of the DB instance.

        ", "DBInstance$Engine": "

        Provides the name of the database engine to be used for this DB instance.

        ", "DBInstance$DBInstanceStatus": "

        Specifies the current state of this database.

        ", "DBInstance$MasterUsername": "

        Contains the master username for the DB instance.

        ", "DBInstance$DBName": "

        The meaning of this parameter differs according to the database engine you use. For example, this value returns MySQL, MariaDB, or PostgreSQL information when returning values from CreateDBInstanceReadReplica since Read Replicas are only supported for these engines.

        MySQL, MariaDB, SQL Server, PostgreSQL, Amazon Aurora

        Contains the name of the initial database of this instance that was provided at create time, if one was specified when the DB instance was created. This same name is returned for the life of the DB instance.

        Type: String

        Oracle

        Contains the Oracle System ID (SID) of the created DB instance. Not shown when the returned parameters do not apply to an Oracle DB instance.

        ", "DBInstance$PreferredBackupWindow": "

        Specifies the daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod.

        ", "DBInstance$AvailabilityZone": "

        Specifies the name of the Availability Zone the DB instance is located in.

        ", "DBInstance$PreferredMaintenanceWindow": "

        Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

        ", "DBInstance$EngineVersion": "

        Indicates the database engine version.

        ", "DBInstance$ReadReplicaSourceDBInstanceIdentifier": "

        Contains the identifier of the source DB instance if this DB instance is a Read Replica.

        ", "DBInstance$LicenseModel": "

        License model information for this DB instance.

        ", "DBInstance$CharacterSetName": "

        If present, specifies the name of the character set that this instance is associated with.

        ", "DBInstance$SecondaryAvailabilityZone": "

        If present, specifies the name of the secondary Availability Zone for a DB instance with multi-AZ support.

        ", "DBInstance$StorageType": "

        Specifies the storage type associated with DB instance.

        ", "DBInstance$TdeCredentialArn": "

        The ARN from the key store with which the instance is associated for TDE encryption.

        ", "DBInstance$DBClusterIdentifier": "

        If the DB instance is a member of a DB cluster, contains the name of the DB cluster that the DB instance is a member of.

        ", "DBInstance$KmsKeyId": "

        If StorageEncrypted is true, the KMS key identifier for the encrypted DB instance.

        ", "DBInstance$DbiResourceId": "

        The region-unique, immutable identifier for the DB instance. This identifier is found in AWS CloudTrail log entries whenever the KMS key for the DB instance is accessed.

        ", "DBInstance$CACertificateIdentifier": "

        The identifier of the CA certificate for this DB instance.

        ", "DBInstance$EnhancedMonitoringResourceArn": "

        The Amazon Resource Name (ARN) of the Amazon CloudWatch Logs log stream that receives the Enhanced Monitoring metrics data for the DB instance.

        ", "DBInstance$MonitoringRoleArn": "

        The ARN for the IAM role that permits RDS to send Enhanced Monitoring metrics to CloudWatch Logs.

        ", "DBInstance$DBInstanceArn": "

        The Amazon Resource Name (ARN) for the DB instance.

        ", "DBInstance$Timezone": "

        The time zone of the DB instance. In most cases, the Timezone element is empty. Timezone content appears only for Microsoft SQL Server DB instances that were created with a time zone specified.

        ", "DBInstanceMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DBInstanceStatusInfo$StatusType": "

        This value is currently \"read replication.\"

        ", "DBInstanceStatusInfo$Status": "

        Status of the DB instance. For a StatusType of read replica, the values can be replicating, error, stopped, or terminated.

        ", "DBInstanceStatusInfo$Message": "

        Details of the error if there is an error for the instance. If the instance is not in an error state, this value is blank.

        ", "DBParameterGroup$DBParameterGroupName": "

        Provides the name of the DB parameter group.

        ", "DBParameterGroup$DBParameterGroupFamily": "

        Provides the name of the DB parameter group family that this DB parameter group is compatible with.

        ", "DBParameterGroup$Description": "

        Provides the customer-specified description for this DB parameter group.

        ", "DBParameterGroup$DBParameterGroupArn": "

        The Amazon Resource Name (ARN) for the DB parameter group.

        ", "DBParameterGroupDetails$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBParameterGroupNameMessage$DBParameterGroupName": "

        Provides the name of the DB parameter group.

        ", "DBParameterGroupStatus$DBParameterGroupName": "

        The name of the DP parameter group.

        ", "DBParameterGroupStatus$ParameterApplyStatus": "

        The status of parameter updates.

        ", "DBParameterGroupsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBSecurityGroup$OwnerId": "

        Provides the AWS ID of the owner of a specific DB security group.

        ", "DBSecurityGroup$DBSecurityGroupName": "

        Specifies the name of the DB security group.

        ", "DBSecurityGroup$DBSecurityGroupDescription": "

        Provides the description of the DB security group.

        ", "DBSecurityGroup$VpcId": "

        Provides the VpcId of the DB security group.

        ", "DBSecurityGroup$DBSecurityGroupArn": "

        The Amazon Resource Name (ARN) for the DB security group.

        ", "DBSecurityGroupMembership$DBSecurityGroupName": "

        The name of the DB security group.

        ", "DBSecurityGroupMembership$Status": "

        The status of the DB security group.

        ", "DBSecurityGroupMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBSecurityGroupNameList$member": null, "DBSnapshot$DBSnapshotIdentifier": "

        Specifies the identifier for the DB snapshot.

        ", "DBSnapshot$DBInstanceIdentifier": "

        Specifies the DB instance identifier of the DB instance this DB snapshot was created from.

        ", "DBSnapshot$Engine": "

        Specifies the name of the database engine.

        ", "DBSnapshot$Status": "

        Specifies the status of this DB snapshot.

        ", "DBSnapshot$AvailabilityZone": "

        Specifies the name of the Availability Zone the DB instance was located in at the time of the DB snapshot.

        ", "DBSnapshot$VpcId": "

        Provides the VPC ID associated with the DB snapshot.

        ", "DBSnapshot$MasterUsername": "

        Provides the master username for the DB snapshot.

        ", "DBSnapshot$EngineVersion": "

        Specifies the version of the database engine.

        ", "DBSnapshot$LicenseModel": "

        License model information for the restored DB instance.

        ", "DBSnapshot$SnapshotType": "

        Provides the type of the DB snapshot.

        ", "DBSnapshot$OptionGroupName": "

        Provides the option group name for the DB snapshot.

        ", "DBSnapshot$SourceRegion": "

        The region that the DB snapshot was created in or copied from.

        ", "DBSnapshot$SourceDBSnapshotIdentifier": "

        The DB snapshot Arn that the DB snapshot was copied from. It only has value in case of cross customer or cross region copy.

        ", "DBSnapshot$StorageType": "

        Specifies the storage type associated with DB snapshot.

        ", "DBSnapshot$TdeCredentialArn": "

        The ARN from the key store with which to associate the instance for TDE encryption.

        ", "DBSnapshot$KmsKeyId": "

        If Encrypted is true, the KMS key identifier for the encrypted DB snapshot.

        ", "DBSnapshot$DBSnapshotArn": "

        The Amazon Resource Name (ARN) for the DB snapshot.

        ", "DBSnapshot$Timezone": "

        The time zone of the DB snapshot. In most cases, the Timezone element is empty. Timezone content appears only for snapshots taken from Microsoft SQL Server DB instances that were created with a time zone specified.

        ", "DBSnapshotAttribute$AttributeName": "

        The name of the manual DB snapshot attribute.

        The attribute named restore refers to the list of AWS accounts that have permission to copy or restore the manual DB cluster snapshot. For more information, see the ModifyDBSnapshotAttribute API action.

        ", "DBSnapshotAttributesResult$DBSnapshotIdentifier": "

        The identifier of the manual DB snapshot that the attributes apply to.

        ", "DBSnapshotMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DBSubnetGroup$DBSubnetGroupName": "

        The name of the DB subnet group.

        ", "DBSubnetGroup$DBSubnetGroupDescription": "

        Provides the description of the DB subnet group.

        ", "DBSubnetGroup$VpcId": "

        Provides the VpcId of the DB subnet group.

        ", "DBSubnetGroup$SubnetGroupStatus": "

        Provides the status of the DB subnet group.

        ", "DBSubnetGroup$DBSubnetGroupArn": "

        The Amazon Resource Name (ARN) for the DB subnet group.

        ", "DBSubnetGroupMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DeleteDBClusterMessage$DBClusterIdentifier": "

        The DB cluster identifier for the DB cluster to be deleted. This parameter isn't case-sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "DeleteDBClusterMessage$FinalDBSnapshotIdentifier": "

        The DB cluster snapshot identifier of the new DB cluster snapshot created when SkipFinalSnapshot is set to false.

        Specifying this parameter and also setting the SkipFinalShapshot parameter to true results in an error.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "DeleteDBClusterParameterGroupMessage$DBClusterParameterGroupName": "

        The name of the DB cluster parameter group.

        Constraints:

        • Must be the name of an existing DB cluster parameter group.

        • You cannot delete a default DB cluster parameter group.

        • Cannot be associated with any DB clusters.

        ", "DeleteDBClusterSnapshotMessage$DBClusterSnapshotIdentifier": "

        The identifier of the DB cluster snapshot to delete.

        Constraints: Must be the name of an existing DB cluster snapshot in the available state.

        ", "DeleteDBInstanceMessage$DBInstanceIdentifier": "

        The DB instance identifier for the DB instance to be deleted. This parameter isn't case-sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "DeleteDBInstanceMessage$FinalDBSnapshotIdentifier": "

        The DBSnapshotIdentifier of the new DBSnapshot created when SkipFinalSnapshot is set to false.

        Specifying this parameter and also setting the SkipFinalShapshot parameter to true results in an error.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        • Cannot be specified when deleting a Read Replica.

        ", "DeleteDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB parameter group.

        Constraints:

        • Must be the name of an existing DB parameter group

        • You cannot delete a default DB parameter group

        • Cannot be associated with any DB instances

        ", "DeleteDBSecurityGroupMessage$DBSecurityGroupName": "

        The name of the DB security group to delete.

        You cannot delete the default DB security group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        • Must not be \"Default\"

        ", "DeleteDBSnapshotMessage$DBSnapshotIdentifier": "

        The DBSnapshot identifier.

        Constraints: Must be the name of an existing DB snapshot in the available state.

        ", "DeleteDBSubnetGroupMessage$DBSubnetGroupName": "

        The name of the database subnet group to delete.

        You cannot delete the default subnet group.

        Constraints:

        Constraints: Must contain no more than 255 alphanumeric characters, periods, underscores, spaces, or hyphens. Must not be default.

        Example: mySubnetgroup

        ", "DeleteEventSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to delete.

        ", "DeleteOptionGroupMessage$OptionGroupName": "

        The name of the option group to be deleted.

        You cannot delete default option groups.

        ", "DescribeCertificatesMessage$CertificateIdentifier": "

        The user-supplied certificate identifier. If this parameter is specified, information for only the identified certificate is returned. This parameter isn't case-sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "DescribeCertificatesMessage$Marker": "

        An optional pagination token provided by a previous DescribeCertificates request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBClusterParameterGroupsMessage$DBClusterParameterGroupName": "

        The name of a specific DB cluster parameter group to return details for.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "DescribeDBClusterParameterGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBClusterParameterGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBClusterParametersMessage$DBClusterParameterGroupName": "

        The name of a specific DB cluster parameter group to return parameter details for.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "DescribeDBClusterParametersMessage$Source": "

        A value that indicates to return only parameters for a specific source. Parameter sources can be engine, service, or customer.

        ", "DescribeDBClusterParametersMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBClusterParameters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBClusterSnapshotAttributesMessage$DBClusterSnapshotIdentifier": "

        The identifier for the DB cluster snapshot to describe the attributes for.

        ", "DescribeDBClusterSnapshotsMessage$DBClusterIdentifier": "

        The ID of the DB cluster to retrieve the list of DB cluster snapshots for. This parameter cannot be used in conjunction with the DBClusterSnapshotIdentifier parameter. This parameter is not case-sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "DescribeDBClusterSnapshotsMessage$DBClusterSnapshotIdentifier": "

        A specific DB cluster snapshot identifier to describe. This parameter cannot be used in conjunction with the DBClusterIdentifier parameter. This value is stored as a lowercase string.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        • If this identifier is for an automated snapshot, the SnapshotType parameter must also be specified.

        ", "DescribeDBClusterSnapshotsMessage$SnapshotType": "

        The type of DB cluster snapshots to be returned. You can specify one of the following values:

        • automated - Return all DB cluster snapshots that have been automatically taken by Amazon RDS for my AWS account.

        • manual - Return all DB cluster snapshots that have been taken by my AWS account.

        • shared - Return all manual DB cluster snapshots that have been shared to my AWS account.

        • public - Return all DB cluster snapshots that have been marked as public.

        If you don't specify a SnapshotType value, then both automated and manual DB cluster snapshots are returned. You can include shared DB cluster snapshots with these results by setting the IncludeShared parameter to true. You can include public DB cluster snapshots with these results by setting the IncludePublic parameter to true.

        The IncludeShared and IncludePublic parameters don't apply for SnapshotType values of manual or automated. The IncludePublic parameter doesn't apply when SnapshotType is set to shared. The IncludeShared parameter doesn't apply when SnapshotType is set to public.

        ", "DescribeDBClusterSnapshotsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBClusterSnapshots request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBClustersMessage$DBClusterIdentifier": "

        The user-supplied DB cluster identifier. If this parameter is specified, information from only the specific DB cluster is returned. This parameter isn't case-sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "DescribeDBClustersMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBClusters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBEngineVersionsMessage$Engine": "

        The database engine to return.

        ", "DescribeDBEngineVersionsMessage$EngineVersion": "

        The database engine version to return.

        Example: 5.1.49

        ", "DescribeDBEngineVersionsMessage$DBParameterGroupFamily": "

        The name of a specific DB parameter group family to return details for.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "DescribeDBEngineVersionsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBInstancesMessage$DBInstanceIdentifier": "

        The user-supplied instance identifier. If this parameter is specified, information from only the specific DB instance is returned. This parameter isn't case-sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "DescribeDBInstancesMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBInstances request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBLogFilesDetails$LogFileName": "

        The name of the log file for the specified DB instance.

        ", "DescribeDBLogFilesMessage$DBInstanceIdentifier": "

        The customer-assigned name of the DB instance that contains the log files you want to list.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "DescribeDBLogFilesMessage$FilenameContains": "

        Filters the available log files for log file names that contain the specified string.

        ", "DescribeDBLogFilesMessage$Marker": "

        The pagination token provided in the previous request. If this parameter is specified the response includes only records beyond the marker, up to MaxRecords.

        ", "DescribeDBLogFilesResponse$Marker": "

        A pagination token that can be used in a subsequent DescribeDBLogFiles request.

        ", "DescribeDBParameterGroupsMessage$DBParameterGroupName": "

        The name of a specific DB parameter group to return details for.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "DescribeDBParameterGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBParameterGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBParametersMessage$DBParameterGroupName": "

        The name of a specific DB parameter group to return details for.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "DescribeDBParametersMessage$Source": "

        The parameter types to return.

        Default: All parameter types returned

        Valid Values: user | system | engine-default

        ", "DescribeDBParametersMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBParameters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBSecurityGroupsMessage$DBSecurityGroupName": "

        The name of the DB security group to return details for.

        ", "DescribeDBSecurityGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBSecurityGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBSnapshotAttributesMessage$DBSnapshotIdentifier": "

        The identifier for the DB snapshot to describe the attributes for.

        ", "DescribeDBSnapshotsMessage$DBInstanceIdentifier": "

        The ID of the DB instance to retrieve the list of DB snapshots for. This parameter cannot be used in conjunction with DBSnapshotIdentifier. This parameter is not case-sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "DescribeDBSnapshotsMessage$DBSnapshotIdentifier": "

        A specific DB snapshot identifier to describe. This parameter cannot be used in conjunction with DBInstanceIdentifier. This value is stored as a lowercase string.

        Constraints:

        • Must be 1 to 255 alphanumeric characters.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        • If this identifier is for an automated snapshot, the SnapshotType parameter must also be specified.

        ", "DescribeDBSnapshotsMessage$SnapshotType": "

        The type of snapshots to be returned. You can specify one of the following values:

        • automated - Return all DB snapshots that have been automatically taken by Amazon RDS for my AWS account.

        • manual - Return all DB snapshots that have been taken by my AWS account.

        • shared - Return all manual DB snapshots that have been shared to my AWS account.

        • public - Return all DB snapshots that have been marked as public.

        If you don't specify a SnapshotType value, then both automated and manual snapshots are returned. Shared and public DB snapshots are not included in the returned results by default. You can include shared snapshots with these results by setting the IncludeShared parameter to true. You can include public snapshots with these results by setting the IncludePublic parameter to true.

        The IncludeShared and IncludePublic parameters don't apply for SnapshotType values of manual or automated. The IncludePublic parameter doesn't apply when SnapshotType is set to shared. The IncludeShared parameter doesn't apply when SnapshotType is set to public.

        ", "DescribeDBSnapshotsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBSnapshots request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeDBSubnetGroupsMessage$DBSubnetGroupName": "

        The name of the DB subnet group to return details for.

        ", "DescribeDBSubnetGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeDBSubnetGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeEngineDefaultClusterParametersMessage$DBParameterGroupFamily": "

        The name of the DB cluster parameter group family to return engine parameter information for.

        ", "DescribeEngineDefaultClusterParametersMessage$Marker": "

        An optional pagination token provided by a previous DescribeEngineDefaultClusterParameters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeEngineDefaultParametersMessage$DBParameterGroupFamily": "

        The name of the DB parameter group family.

        ", "DescribeEngineDefaultParametersMessage$Marker": "

        An optional pagination token provided by a previous DescribeEngineDefaultParameters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeEventCategoriesMessage$SourceType": "

        The type of source that will be generating the events.

        Valid values: db-instance | db-parameter-group | db-security-group | db-snapshot

        ", "DescribeEventSubscriptionsMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to describe.

        ", "DescribeEventSubscriptionsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DescribeEventsMessage$SourceIdentifier": "

        The identifier of the event source for which events will be returned. If not specified, then all sources are included in the response.

        Constraints:

        • If SourceIdentifier is supplied, SourceType must also be provided.

        • If the source type is DBInstance, then a DBInstanceIdentifier must be supplied.

        • If the source type is DBSecurityGroup, a DBSecurityGroupName must be supplied.

        • If the source type is DBParameterGroup, a DBParameterGroupName must be supplied.

        • If the source type is DBSnapshot, a DBSnapshotIdentifier must be supplied.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        ", "DescribeEventsMessage$Marker": "

        An optional pagination token provided by a previous DescribeEvents request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeOptionGroupOptionsMessage$EngineName": "

        A required parameter. Options available for the given engine name will be described.

        ", "DescribeOptionGroupOptionsMessage$MajorEngineVersion": "

        If specified, filters the results to include only options for the specified major engine version.

        ", "DescribeOptionGroupOptionsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeOptionGroupsMessage$OptionGroupName": "

        The name of the option group to describe. Cannot be supplied together with EngineName or MajorEngineVersion.

        ", "DescribeOptionGroupsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOptionGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeOptionGroupsMessage$EngineName": "

        Filters the list of option groups to only include groups associated with a specific database engine.

        ", "DescribeOptionGroupsMessage$MajorEngineVersion": "

        Filters the list of option groups to only include groups associated with a specific database engine version. If specified, then EngineName must also be specified.

        ", "DescribeOrderableDBInstanceOptionsMessage$Engine": "

        The name of the engine to retrieve DB instance options for.

        ", "DescribeOrderableDBInstanceOptionsMessage$EngineVersion": "

        The engine version filter value. Specify this parameter to show only the available offerings matching the specified engine version.

        ", "DescribeOrderableDBInstanceOptionsMessage$DBInstanceClass": "

        The DB instance class filter value. Specify this parameter to show only the available offerings matching the specified DB instance class.

        ", "DescribeOrderableDBInstanceOptionsMessage$LicenseModel": "

        The license model filter value. Specify this parameter to show only the available offerings matching the specified license model.

        ", "DescribeOrderableDBInstanceOptionsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "DescribePendingMaintenanceActionsMessage$ResourceIdentifier": "

        The ARN of a resource to return pending maintenance actions for.

        ", "DescribePendingMaintenanceActionsMessage$Marker": "

        An optional pagination token provided by a previous DescribePendingMaintenanceActions request. If this parameter is specified, the response includes only records beyond the marker, up to a number of records specified by MaxRecords.

        ", "DescribeReservedDBInstancesMessage$ReservedDBInstanceId": "

        The reserved DB instance identifier filter value. Specify this parameter to show only the reservation that matches the specified reservation ID.

        ", "DescribeReservedDBInstancesMessage$ReservedDBInstancesOfferingId": "

        The offering identifier filter value. Specify this parameter to show only purchased reservations matching the specified offering identifier.

        ", "DescribeReservedDBInstancesMessage$DBInstanceClass": "

        The DB instance class filter value. Specify this parameter to show only those reservations matching the specified DB instances class.

        ", "DescribeReservedDBInstancesMessage$Duration": "

        The duration filter value, specified in years or seconds. Specify this parameter to show only reservations for this duration.

        Valid Values: 1 | 3 | 31536000 | 94608000

        ", "DescribeReservedDBInstancesMessage$ProductDescription": "

        The product description filter value. Specify this parameter to show only those reservations matching the specified product description.

        ", "DescribeReservedDBInstancesMessage$OfferingType": "

        The offering type filter value. Specify this parameter to show only the available offerings matching the specified offering type.

        Valid Values: \"Partial Upfront\" | \"All Upfront\" | \"No Upfront\"

        ", "DescribeReservedDBInstancesMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeReservedDBInstancesOfferingsMessage$ReservedDBInstancesOfferingId": "

        The offering identifier filter value. Specify this parameter to show only the available offering that matches the specified reservation identifier.

        Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706

        ", "DescribeReservedDBInstancesOfferingsMessage$DBInstanceClass": "

        The DB instance class filter value. Specify this parameter to show only the available offerings matching the specified DB instance class.

        ", "DescribeReservedDBInstancesOfferingsMessage$Duration": "

        Duration filter value, specified in years or seconds. Specify this parameter to show only reservations for this duration.

        Valid Values: 1 | 3 | 31536000 | 94608000

        ", "DescribeReservedDBInstancesOfferingsMessage$ProductDescription": "

        Product description filter value. Specify this parameter to show only the available offerings matching the specified product description.

        ", "DescribeReservedDBInstancesOfferingsMessage$OfferingType": "

        The offering type filter value. Specify this parameter to show only the available offerings matching the specified offering type.

        Valid Values: \"Partial Upfront\" | \"All Upfront\" | \"No Upfront\"

        ", "DescribeReservedDBInstancesOfferingsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DescribeSourceRegionsMessage$RegionName": "

        The source region name. For example, us-east-1.

        Constraints:

        • Must specify a valid AWS Region name.

        ", "DescribeSourceRegionsMessage$Marker": "

        An optional pagination token provided by a previous DescribeSourceRegions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "DomainMembership$Domain": "

        The identifier of the Active Directory Domain.

        ", "DomainMembership$Status": "

        The status of the DB instance's Active Directory Domain membership, such as joined, pending-join, failed etc).

        ", "DomainMembership$FQDN": "

        The fully qualified domain name of the Active Directory Domain.

        ", "DomainMembership$IAMRoleName": "

        The name of the IAM role to be used when making API calls to the Directory Service.

        ", "DownloadDBLogFilePortionDetails$LogFileData": "

        Entries from the specified log file.

        ", "DownloadDBLogFilePortionDetails$Marker": "

        A pagination token that can be used in a subsequent DownloadDBLogFilePortion request.

        ", "DownloadDBLogFilePortionMessage$DBInstanceIdentifier": "

        The customer-assigned name of the DB instance that contains the log files you want to list.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "DownloadDBLogFilePortionMessage$LogFileName": "

        The name of the log file to be downloaded.

        ", "DownloadDBLogFilePortionMessage$Marker": "

        The pagination token provided in the previous request or \"0\". If the Marker parameter is specified the response includes only records beyond the marker until the end of the file or up to NumberOfLines.

        ", "EC2SecurityGroup$Status": "

        Provides the status of the EC2 security group. Status can be \"authorizing\", \"authorized\", \"revoking\", and \"revoked\".

        ", "EC2SecurityGroup$EC2SecurityGroupName": "

        Specifies the name of the EC2 security group.

        ", "EC2SecurityGroup$EC2SecurityGroupId": "

        Specifies the id of the EC2 security group.

        ", "EC2SecurityGroup$EC2SecurityGroupOwnerId": "

        Specifies the AWS ID of the owner of the EC2 security group specified in the EC2SecurityGroupName field.

        ", "Endpoint$Address": "

        Specifies the DNS address of the DB instance.

        ", "Endpoint$HostedZoneId": "

        Specifies the ID that Amazon Route 53 assigns when you create a hosted zone.

        ", "EngineDefaults$DBParameterGroupFamily": "

        Specifies the name of the DB parameter group family that the engine default parameters apply to.

        ", "EngineDefaults$Marker": "

        An optional pagination token provided by a previous EngineDefaults request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "Event$SourceIdentifier": "

        Provides the identifier for the source of the event.

        ", "Event$Message": "

        Provides the text of this event.

        ", "Event$SourceArn": "

        The Amazon Resource Name (ARN) for the event.

        ", "EventCategoriesList$member": null, "EventCategoriesMap$SourceType": "

        The source type that the returned categories belong to

        ", "EventSubscription$CustomerAwsId": "

        The AWS customer account associated with the RDS event notification subscription.

        ", "EventSubscription$CustSubscriptionId": "

        The RDS event notification subscription Id.

        ", "EventSubscription$SnsTopicArn": "

        The topic ARN of the RDS event notification subscription.

        ", "EventSubscription$Status": "

        The status of the RDS event notification subscription.

        Constraints:

        Can be one of the following: creating | modifying | deleting | active | no-permission | topic-not-exist

        The status \"no-permission\" indicates that RDS no longer has permission to post to the SNS topic. The status \"topic-not-exist\" indicates that the topic was deleted after the subscription was created.

        ", "EventSubscription$SubscriptionCreationTime": "

        The time the RDS event notification subscription was created.

        ", "EventSubscription$SourceType": "

        The source type for the RDS event notification subscription.

        ", "EventSubscription$EventSubscriptionArn": "

        The Amazon Resource Name (ARN) for the event subscription.

        ", "EventSubscriptionsMessage$Marker": "

        An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "EventsMessage$Marker": "

        An optional pagination token provided by a previous Events request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "FailoverDBClusterMessage$DBClusterIdentifier": "

        A DB cluster identifier to force a failover for. This parameter is not case-sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "FailoverDBClusterMessage$TargetDBInstanceIdentifier": "

        The name of the instance to promote to the primary instance.

        You must specify the instance identifier for an Aurora Replica in the DB cluster. For example, mydbcluster-replica1.

        ", "Filter$Name": "

        This parameter is not currently supported.

        ", "FilterValueList$member": null, "IPRange$Status": "

        Specifies the status of the IP range. Status can be \"authorizing\", \"authorized\", \"revoking\", and \"revoked\".

        ", "IPRange$CIDRIP": "

        Specifies the IP range.

        ", "KeyList$member": null, "ListTagsForResourceMessage$ResourceName": "

        The Amazon RDS resource with tags to be listed. This value is an Amazon Resource Name (ARN). For information about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN).

        ", "ModifyDBClusterMessage$DBClusterIdentifier": "

        The DB cluster identifier for the cluster being modified. This parameter is not case-sensitive.

        Constraints:

        • Must be the identifier for an existing DB cluster.

        • Must contain from 1 to 63 alphanumeric characters or hyphens.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        ", "ModifyDBClusterMessage$NewDBClusterIdentifier": "

        The new DB cluster identifier for the DB cluster when renaming a DB cluster. This value is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-cluster2

        ", "ModifyDBClusterMessage$DBClusterParameterGroupName": "

        The name of the DB cluster parameter group to use for the DB cluster.

        ", "ModifyDBClusterMessage$MasterUserPassword": "

        The new password for the master database user. This password can contain any printable ASCII character except \"/\", \"\"\", or \"@\".

        Constraints: Must contain from 8 to 41 characters.

        ", "ModifyDBClusterMessage$OptionGroupName": "

        A value that indicates that the DB cluster should be associated with the specified option group. Changing this parameter does not result in an outage except in the following case, and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request. If the parameter change results in an option group that enables OEM, this change can cause a brief (sub-second) period during which new connections are rejected but existing connections are not interrupted.

        Permanent options cannot be removed from an option group. The option group cannot be removed from a DB cluster once it is associated with a DB cluster.

        ", "ModifyDBClusterMessage$PreferredBackupWindow": "

        The daily time range during which automated backups are created if automated backups are enabled, using the BackupRetentionPeriod parameter.

        Default: A 30-minute window selected at random from an 8-hour block of time per region. To see the time blocks available, see Adjusting the Preferred Maintenance Window in the Amazon RDS User Guide.

        Constraints:

        • Must be in the format hh24:mi-hh24:mi.

        • Times should be in Universal Coordinated Time (UTC).

        • Must not conflict with the preferred maintenance window.

        • Must be at least 30 minutes.

        ", "ModifyDBClusterMessage$PreferredMaintenanceWindow": "

        The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

        Format: ddd:hh24:mi-ddd:hh24:mi

        Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week. To see the time blocks available, see Adjusting the Preferred Maintenance Window in the Amazon RDS User Guide.

        Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun

        Constraints: Minimum 30-minute window.

        ", "ModifyDBClusterParameterGroupMessage$DBClusterParameterGroupName": "

        The name of the DB cluster parameter group to modify.

        ", "ModifyDBClusterSnapshotAttributeMessage$DBClusterSnapshotIdentifier": "

        The identifier for the DB cluster snapshot to modify the attributes for.

        ", "ModifyDBClusterSnapshotAttributeMessage$AttributeName": "

        The name of the DB cluster snapshot attribute to modify.

        To manage authorization for other AWS accounts to copy or restore a manual DB cluster snapshot, set this value to restore.

        ", "ModifyDBInstanceMessage$DBInstanceIdentifier": "

        The DB instance identifier. This value is stored as a lowercase string.

        Constraints:

        • Must be the identifier for an existing DB instance

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "ModifyDBInstanceMessage$DBInstanceClass": "

        The new compute and memory capacity of the DB instance. To determine the instance classes that are available for a particular DB engine, use the DescribeOrderableDBInstanceOptions action.

        Passing a value for this setting causes an outage during the change and is applied during the next maintenance window, unless ApplyImmediately is specified as true for this request.

        Default: Uses existing setting

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.xlarge | db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge | db.m3.2xlarge | db.m4.large | db.m4.xlarge | db.m4.2xlarge | db.m4.4xlarge | db.m4.10xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge | db.r3.8xlarge | db.t2.micro | db.t2.small | db.t2.medium | db.t2.large

        ", "ModifyDBInstanceMessage$DBSubnetGroupName": "

        The new DB subnet group for the DB instance. You can use this parameter to move your DB instance to a different VPC. If your DB instance is not in a VPC, you can also use this parameter to move your DB instance into a VPC. For more information, see Updating the VPC for a DB Instance.

        Changing the subnet group causes an outage during the change. The change is applied during the next maintenance window, unless you specify true for the ApplyImmediately parameter.

        Constraints: Must contain no more than 255 alphanumeric characters, periods, underscores, spaces, or hyphens.

        Example: mySubnetGroup

        ", "ModifyDBInstanceMessage$MasterUserPassword": "

        The new password for the DB instance master user. Can be any printable ASCII character except \"/\", \"\"\", or \"@\".

        Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible. Between the time of the request and the completion of the request, the MasterUserPassword element exists in the PendingModifiedValues element of the operation response.

        Default: Uses existing setting

        Constraints: Must be 8 to 41 alphanumeric characters (MySQL, MariaDB, and Amazon Aurora), 8 to 30 alphanumeric characters (Oracle), or 8 to 128 alphanumeric characters (SQL Server).

        Amazon RDS API actions never return the password, so this action provides a way to regain access to a primary instance user if the password is lost. This includes restoring privileges that might have been accidentally revoked.

        ", "ModifyDBInstanceMessage$DBParameterGroupName": "

        The name of the DB parameter group to apply to the DB instance. Changing this setting does not result in an outage. The parameter group name itself is changed immediately, but the actual parameter changes are not applied until you reboot the instance without failover. The db instance will NOT be rebooted automatically and the parameter changes will NOT be applied during the next maintenance window.

        Default: Uses existing setting

        Constraints: The DB parameter group must be in the same DB parameter group family as this DB instance.

        ", "ModifyDBInstanceMessage$PreferredBackupWindow": "

        The daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod parameter. Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible.

        Constraints:

        • Must be in the format hh24:mi-hh24:mi

        • Times should be in Universal Time Coordinated (UTC)

        • Must not conflict with the preferred maintenance window

        • Must be at least 30 minutes

        ", "ModifyDBInstanceMessage$PreferredMaintenanceWindow": "

        The weekly time range (in UTC) during which system maintenance can occur, which might result in an outage. Changing this parameter does not result in an outage, except in the following situation, and the change is asynchronously applied as soon as possible. If there are pending actions that cause a reboot, and the maintenance window is changed to include the current time, then changing this parameter will cause a reboot of the DB instance. If moving this window to the current time, there must be at least 30 minutes between the current time and end of the window to ensure pending changes are applied.

        Default: Uses existing setting

        Format: ddd:hh24:mi-ddd:hh24:mi

        Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

        Constraints: Must be at least 30 minutes

        ", "ModifyDBInstanceMessage$EngineVersion": "

        The version number of the database engine to upgrade to. Changing this parameter results in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

        For major version upgrades, if a non-default DB parameter group is currently in use, a new DB parameter group in the DB parameter group family for the new engine version must be specified. The new DB parameter group can be the default for that DB parameter group family.

        For a list of valid engine versions, see CreateDBInstance.

        ", "ModifyDBInstanceMessage$LicenseModel": "

        The license model for the DB instance.

        Valid values: license-included | bring-your-own-license | general-public-license

        ", "ModifyDBInstanceMessage$OptionGroupName": "

        Indicates that the DB instance should be associated with the specified option group. Changing this parameter does not result in an outage except in the following case and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request. If the parameter change results in an option group that enables OEM, this change can cause a brief (sub-second) period during which new connections are rejected but existing connections are not interrupted.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "ModifyDBInstanceMessage$NewDBInstanceIdentifier": "

        The new DB instance identifier for the DB instance when renaming a DB instance. When you change the DB instance identifier, an instance reboot will occur immediately if you set Apply Immediately to true, or will occur during the next maintenance window if Apply Immediately to false. This value is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "ModifyDBInstanceMessage$StorageType": "

        Specifies the storage type to be associated with the DB instance.

        Valid values: standard | gp2 | io1

        If you specify io1, you must also include a value for the Iops parameter.

        Default: io1 if the Iops parameter is specified; otherwise standard

        ", "ModifyDBInstanceMessage$TdeCredentialArn": "

        The ARN from the Key Store with which to associate the instance for TDE encryption.

        ", "ModifyDBInstanceMessage$TdeCredentialPassword": "

        The password for the given ARN from the Key Store in order to access the device.

        ", "ModifyDBInstanceMessage$CACertificateIdentifier": "

        Indicates the certificate that needs to be associated with the instance.

        ", "ModifyDBInstanceMessage$Domain": "

        The Active Directory Domain to move the instance to. Specify none to remove the instance from its current domain. The domain must be created prior to this operation. Currently only a Microsoft SQL Server instance can be created in a Active Directory Domain.

        ", "ModifyDBInstanceMessage$MonitoringRoleArn": "

        The ARN for the IAM role that permits RDS to send enhanced monitoring metrics to CloudWatch Logs. For example, arn:aws:iam:123456789012:role/emaccess. For information on creating a monitoring role, go to To create an IAM role for Amazon RDS Enhanced Monitoring.

        If MonitoringInterval is set to a value other than 0, then you must supply a MonitoringRoleArn value.

        ", "ModifyDBInstanceMessage$DomainIAMRoleName": "

        The name of the IAM role to use when making API calls to the Directory Service.

        ", "ModifyDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB parameter group.

        Constraints:

        • Must be the name of an existing DB parameter group

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "ModifyDBSnapshotAttributeMessage$DBSnapshotIdentifier": "

        The identifier for the DB snapshot to modify the attributes for.

        ", "ModifyDBSnapshotAttributeMessage$AttributeName": "

        The name of the DB snapshot attribute to modify.

        To manage authorization for other AWS accounts to copy or restore a manual DB snapshot, set this value to restore.

        ", "ModifyDBSubnetGroupMessage$DBSubnetGroupName": "

        The name for the DB subnet group. This value is stored as a lowercase string.

        Constraints: Must contain no more than 255 alphanumeric characters, periods, underscores, spaces, or hyphens. Must not be default.

        Example: mySubnetgroup

        ", "ModifyDBSubnetGroupMessage$DBSubnetGroupDescription": "

        The description for the DB subnet group.

        ", "ModifyEventSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription.

        ", "ModifyEventSubscriptionMessage$SnsTopicArn": "

        The Amazon Resource Name (ARN) of the SNS topic created for event notification. The ARN is created by Amazon SNS when you create a topic and subscribe to it.

        ", "ModifyEventSubscriptionMessage$SourceType": "

        The type of source that will be generating the events. For example, if you want to be notified of events generated by a DB instance, you would set this parameter to db-instance. if this value is not specified, all events are returned.

        Valid values: db-instance | db-parameter-group | db-security-group | db-snapshot

        ", "ModifyOptionGroupMessage$OptionGroupName": "

        The name of the option group to be modified.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "Option$OptionName": "

        The name of the option.

        ", "Option$OptionDescription": "

        The description of the option.

        ", "Option$OptionVersion": "

        The version of the option.

        ", "OptionConfiguration$OptionName": "

        The configuration of options to include in a group.

        ", "OptionConfiguration$OptionVersion": "

        The version for the option.

        ", "OptionGroup$OptionGroupName": "

        Specifies the name of the option group.

        ", "OptionGroup$OptionGroupDescription": "

        Provides a description of the option group.

        ", "OptionGroup$EngineName": "

        Indicates the name of the engine that this option group can be applied to.

        ", "OptionGroup$MajorEngineVersion": "

        Indicates the major engine version associated with this option group.

        ", "OptionGroup$VpcId": "

        If AllowsVpcAndNonVpcInstanceMemberships is false, this field is blank. If AllowsVpcAndNonVpcInstanceMemberships is true and this field is blank, then this option group can be applied to both VPC and non-VPC instances. If this field contains a value, then this option group can only be applied to instances that are in the VPC indicated by this field.

        ", "OptionGroup$OptionGroupArn": "

        The Amazon Resource Name (ARN) for the option group.

        ", "OptionGroupMembership$OptionGroupName": "

        The name of the option group that the instance belongs to.

        ", "OptionGroupMembership$Status": "

        The status of the DB instance's option group membership. Valid values are: in-sync, pending-apply, pending-removal, pending-maintenance-apply, pending-maintenance-removal, applying, removing, and failed.

        ", "OptionGroupOption$Name": "

        The name of the option.

        ", "OptionGroupOption$Description": "

        The description of the option.

        ", "OptionGroupOption$EngineName": "

        The name of the engine that this option can be applied to.

        ", "OptionGroupOption$MajorEngineVersion": "

        Indicates the major engine version that the option is available for.

        ", "OptionGroupOption$MinimumRequiredMinorEngineVersion": "

        The minimum required engine version for the option to be applied.

        ", "OptionGroupOptionSetting$SettingName": "

        The name of the option group option.

        ", "OptionGroupOptionSetting$SettingDescription": "

        The description of the option group option.

        ", "OptionGroupOptionSetting$DefaultValue": "

        The default value for the option group option.

        ", "OptionGroupOptionSetting$ApplyType": "

        The DB engine specific parameter type for the option group option.

        ", "OptionGroupOptionSetting$AllowedValues": "

        Indicates the acceptable values for the option group option.

        ", "OptionGroupOptionsMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "OptionGroups$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "OptionNamesList$member": null, "OptionSetting$Name": "

        The name of the option that has settings that you can set.

        ", "OptionSetting$Value": "

        The current value of the option setting.

        ", "OptionSetting$DefaultValue": "

        The default value of the option setting.

        ", "OptionSetting$Description": "

        The description of the option setting.

        ", "OptionSetting$ApplyType": "

        The DB engine specific parameter type.

        ", "OptionSetting$DataType": "

        The data type of the option setting.

        ", "OptionSetting$AllowedValues": "

        The allowed values of the option setting.

        ", "OptionVersion$Version": "

        The version of the option.

        ", "OptionsConflictsWith$member": null, "OptionsDependedOn$member": null, "OrderableDBInstanceOption$Engine": "

        The engine type of the orderable DB instance.

        ", "OrderableDBInstanceOption$EngineVersion": "

        The engine version of the orderable DB instance.

        ", "OrderableDBInstanceOption$DBInstanceClass": "

        The DB instance class for the orderable DB instance.

        ", "OrderableDBInstanceOption$LicenseModel": "

        The license model for the orderable DB instance.

        ", "OrderableDBInstanceOption$StorageType": "

        Indicates the storage type for this orderable DB instance.

        ", "OrderableDBInstanceOptionsMessage$Marker": "

        An optional pagination token provided by a previous OrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords .

        ", "Parameter$ParameterName": "

        Specifies the name of the parameter.

        ", "Parameter$ParameterValue": "

        Specifies the value of the parameter.

        ", "Parameter$Description": "

        Provides a description of the parameter.

        ", "Parameter$Source": "

        Indicates the source of the parameter value.

        ", "Parameter$ApplyType": "

        Specifies the engine specific parameters type.

        ", "Parameter$DataType": "

        Specifies the valid data type for the parameter.

        ", "Parameter$AllowedValues": "

        Specifies the valid range of values for the parameter.

        ", "Parameter$MinimumEngineVersion": "

        The earliest engine version to which the parameter can apply.

        ", "PendingMaintenanceAction$Action": "

        The type of pending maintenance action that is available for the resource.

        ", "PendingMaintenanceAction$OptInStatus": "

        Indicates the type of opt-in request that has been received for the resource.

        ", "PendingMaintenanceAction$Description": "

        A description providing more detail about the maintenance action.

        ", "PendingMaintenanceActionsMessage$Marker": "

        An optional pagination token provided by a previous DescribePendingMaintenanceActions request. If this parameter is specified, the response includes only records beyond the marker, up to a number of records specified by MaxRecords.

        ", "PendingModifiedValues$DBInstanceClass": "

        Contains the new DBInstanceClass for the DB instance that will be applied or is in progress.

        ", "PendingModifiedValues$MasterUserPassword": "

        Contains the pending or in-progress change of the master credentials for the DB instance.

        ", "PendingModifiedValues$EngineVersion": "

        Indicates the database engine version.

        ", "PendingModifiedValues$LicenseModel": "

        The license model for the DB instance.

        Valid values: license-included | bring-your-own-license | general-public-license

        ", "PendingModifiedValues$DBInstanceIdentifier": "

        Contains the new DBInstanceIdentifier for the DB instance that will be applied or is in progress.

        ", "PendingModifiedValues$StorageType": "

        Specifies the storage type to be associated with the DB instance.

        ", "PendingModifiedValues$CACertificateIdentifier": "

        Specifies the identifier of the CA certificate for the DB instance.

        ", "PendingModifiedValues$DBSubnetGroupName": "

        The new DB subnet group for the DB instance.

        ", "PromoteReadReplicaDBClusterMessage$DBClusterIdentifier": "

        The identifier of the DB cluster Read Replica to promote. This parameter is not case-sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        Example: my-cluster-replica1

        ", "PromoteReadReplicaMessage$DBInstanceIdentifier": "

        The DB instance identifier. This value is stored as a lowercase string.

        Constraints:

        • Must be the identifier for an existing Read Replica DB instance

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: mydbinstance

        ", "PromoteReadReplicaMessage$PreferredBackupWindow": "

        The daily time range during which automated backups are created if automated backups are enabled, using the BackupRetentionPeriod parameter.

        Default: A 30-minute window selected at random from an 8-hour block of time per region. To see the time blocks available, see Adjusting the Preferred Maintenance Window in the Amazon RDS User Guide.

        Constraints:

        • Must be in the format hh24:mi-hh24:mi.

        • Times should be in Universal Coordinated Time (UTC).

        • Must not conflict with the preferred maintenance window.

        • Must be at least 30 minutes.

        ", "PurchaseReservedDBInstancesOfferingMessage$ReservedDBInstancesOfferingId": "

        The ID of the Reserved DB instance offering to purchase.

        Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706

        ", "PurchaseReservedDBInstancesOfferingMessage$ReservedDBInstanceId": "

        Customer-specified identifier to track this reservation.

        Example: myreservationID

        ", "ReadReplicaDBInstanceIdentifierList$member": null, "ReadReplicaIdentifierList$member": null, "RebootDBInstanceMessage$DBInstanceIdentifier": "

        The DB instance identifier. This parameter is stored as a lowercase string.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "RecurringCharge$RecurringChargeFrequency": "

        The frequency of the recurring charge.

        ", "RemoveRoleFromDBClusterMessage$DBClusterIdentifier": "

        The name of the DB cluster to disassociate the IAM role rom.

        ", "RemoveRoleFromDBClusterMessage$RoleArn": "

        The Amazon Resource Name (ARN) of the IAM role to disassociate from the Aurora DB cluster, for example arn:aws:iam::123456789012:role/AuroraAccessRole.

        ", "RemoveSourceIdentifierFromSubscriptionMessage$SubscriptionName": "

        The name of the RDS event notification subscription you want to remove a source identifier from.

        ", "RemoveSourceIdentifierFromSubscriptionMessage$SourceIdentifier": "

        The source identifier to be removed from the subscription, such as the DB instance identifier for a DB instance or the name of a security group.

        ", "RemoveTagsFromResourceMessage$ResourceName": "

        The Amazon RDS resource the tags will be removed from. This value is an Amazon Resource Name (ARN). For information about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN).

        ", "ReservedDBInstance$ReservedDBInstanceId": "

        The unique identifier for the reservation.

        ", "ReservedDBInstance$ReservedDBInstancesOfferingId": "

        The offering identifier.

        ", "ReservedDBInstance$DBInstanceClass": "

        The DB instance class for the reserved DB instance.

        ", "ReservedDBInstance$CurrencyCode": "

        The currency code for the reserved DB instance.

        ", "ReservedDBInstance$ProductDescription": "

        The description of the reserved DB instance.

        ", "ReservedDBInstance$OfferingType": "

        The offering type of this reserved DB instance.

        ", "ReservedDBInstance$State": "

        The state of the reserved DB instance.

        ", "ReservedDBInstance$ReservedDBInstanceArn": "

        The Amazon Resource Name (ARN) for the reserved DB instance.

        ", "ReservedDBInstanceMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "ReservedDBInstancesOffering$ReservedDBInstancesOfferingId": "

        The offering identifier.

        ", "ReservedDBInstancesOffering$DBInstanceClass": "

        The DB instance class for the reserved DB instance.

        ", "ReservedDBInstancesOffering$CurrencyCode": "

        The currency code for the reserved DB instance offering.

        ", "ReservedDBInstancesOffering$ProductDescription": "

        The database engine used by the offering.

        ", "ReservedDBInstancesOffering$OfferingType": "

        The offering type.

        ", "ReservedDBInstancesOfferingMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "ResetDBClusterParameterGroupMessage$DBClusterParameterGroupName": "

        The name of the DB cluster parameter group to reset.

        ", "ResetDBParameterGroupMessage$DBParameterGroupName": "

        The name of the DB parameter group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "ResourcePendingMaintenanceActions$ResourceIdentifier": "

        The ARN of the resource that has pending maintenance actions.

        ", "RestoreDBClusterFromS3Message$CharacterSetName": "

        A value that indicates that the restored DB cluster should be associated with the specified CharacterSet.

        ", "RestoreDBClusterFromS3Message$DatabaseName": "

        The database name for the restored DB cluster.

        ", "RestoreDBClusterFromS3Message$DBClusterIdentifier": "

        The name of the DB cluster to create from the source data in the S3 bucket. This parameter is isn't case-sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        Example: my-cluster1

        ", "RestoreDBClusterFromS3Message$DBClusterParameterGroupName": "

        The name of the DB cluster parameter group to associate with the restored DB cluster. If this argument is omitted, default.aurora5.6 will be used.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "RestoreDBClusterFromS3Message$DBSubnetGroupName": "

        A DB subnet group to associate with the restored DB cluster.

        Constraints: Must contain no more than 255 alphanumeric characters, periods, underscores, spaces, or hyphens. Must not be default.

        Example: mySubnetgroup

        ", "RestoreDBClusterFromS3Message$Engine": "

        The name of the database engine to be used for the restored DB cluster.

        Valid Values: aurora

        ", "RestoreDBClusterFromS3Message$EngineVersion": "

        The version number of the database engine to use.

        Aurora

        Example: 5.6.10a

        ", "RestoreDBClusterFromS3Message$MasterUsername": "

        The name of the master user for the restored DB cluster.

        Constraints:

        • Must be 1 to 16 alphanumeric characters.

        • First character must be a letter.

        • Cannot be a reserved word for the chosen database engine.

        ", "RestoreDBClusterFromS3Message$MasterUserPassword": "

        The password for the master database user. This password can contain any printable ASCII character except \"/\", \"\"\", or \"@\".

        Constraints: Must contain from 8 to 41 characters.

        ", "RestoreDBClusterFromS3Message$OptionGroupName": "

        A value that indicates that the restored DB cluster should be associated with the specified option group.

        Permanent options cannot be removed from an option group. An option group cannot be removed from a DB cluster once it is associated with a DB cluster.

        ", "RestoreDBClusterFromS3Message$PreferredBackupWindow": "

        The daily time range during which automated backups are created if automated backups are enabled using the BackupRetentionPeriod parameter.

        Default: A 30-minute window selected at random from an 8-hour block of time per region. To see the time blocks available, see Adjusting the Preferred Maintenance Window in the Amazon RDS User Guide.

        Constraints:

        • Must be in the format hh24:mi-hh24:mi.

        • Times should be in Universal Coordinated Time (UTC).

        • Must not conflict with the preferred maintenance window.

        • Must be at least 30 minutes.

        ", "RestoreDBClusterFromS3Message$PreferredMaintenanceWindow": "

        The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

        Format: ddd:hh24:mi-ddd:hh24:mi

        Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week. To see the time blocks available, see Adjusting the Preferred Maintenance Window in the Amazon RDS User Guide.

        Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun

        Constraints: Minimum 30-minute window.

        ", "RestoreDBClusterFromS3Message$KmsKeyId": "

        The KMS key identifier for an encrypted DB cluster.

        The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a DB cluster with the same AWS account that owns the KMS encryption key used to encrypt the new DB cluster, then you can use the KMS key alias instead of the ARN for the KM encryption key.

        If the StorageEncrypted parameter is true, and you do not specify a value for the KmsKeyId parameter, then Amazon RDS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.

        ", "RestoreDBClusterFromS3Message$SourceEngine": "

        The identifier for the database engine that was backed up to create the files stored in the Amazon S3 bucket.

        Valid values: mysql

        ", "RestoreDBClusterFromS3Message$SourceEngineVersion": "

        The version of the database that the backup files were created from.

        MySQL version 5.5 and 5.6 are supported.

        Example: 5.6.22

        ", "RestoreDBClusterFromS3Message$S3BucketName": "

        The name of the Amazon S3 bucket that contains the data used to create the Amazon Aurora DB cluster.

        ", "RestoreDBClusterFromS3Message$S3Prefix": "

        The prefix for all of the file names that contain the data used to create the Amazon Aurora DB cluster. If you do not specify a SourceS3Prefix value, then the Amazon Aurora DB cluster is created by using all of the files in the Amazon S3 bucket.

        ", "RestoreDBClusterFromS3Message$S3IngestionRoleArn": "

        The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorizes Amazon RDS to access the Amazon S3 bucket on your behalf.

        ", "RestoreDBClusterFromSnapshotMessage$DBClusterIdentifier": "

        The name of the DB cluster to create from the DB cluster snapshot. This parameter isn't case-sensitive.

        Constraints:

        • Must contain from 1 to 255 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-snapshot-id

        ", "RestoreDBClusterFromSnapshotMessage$SnapshotIdentifier": "

        The identifier for the DB cluster snapshot to restore from.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "RestoreDBClusterFromSnapshotMessage$Engine": "

        The database engine to use for the new DB cluster.

        Default: The same as source

        Constraint: Must be compatible with the engine of the source

        ", "RestoreDBClusterFromSnapshotMessage$EngineVersion": "

        The version of the database engine to use for the new DB cluster.

        ", "RestoreDBClusterFromSnapshotMessage$DBSubnetGroupName": "

        The name of the DB subnet group to use for the new DB cluster.

        Constraints: Must contain no more than 255 alphanumeric characters, periods, underscores, spaces, or hyphens. Must not be default.

        Example: mySubnetgroup

        ", "RestoreDBClusterFromSnapshotMessage$DatabaseName": "

        The database name for the restored DB cluster.

        ", "RestoreDBClusterFromSnapshotMessage$OptionGroupName": "

        The name of the option group to use for the restored DB cluster.

        ", "RestoreDBClusterFromSnapshotMessage$KmsKeyId": "

        The KMS key identifier to use when restoring an encrypted DB cluster from a DB cluster snapshot.

        The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are restoring a DB cluster with the same AWS account that owns the KMS encryption key used to encrypt the new DB cluster, then you can use the KMS key alias instead of the ARN for the KMS encryption key.

        If you do not specify a value for the KmsKeyId parameter, then the following will occur:

        • If the DB cluster snapshot is encrypted, then the restored DB cluster is encrypted using the KMS key that was used to encrypt the DB cluster snapshot.

        • If the DB cluster snapshot is not encrypted, then the restored DB cluster is encrypted using the specified encryption key.

        ", "RestoreDBClusterToPointInTimeMessage$DBClusterIdentifier": "

        The name of the new DB cluster to be created.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "RestoreDBClusterToPointInTimeMessage$SourceDBClusterIdentifier": "

        The identifier of the source DB cluster from which to restore.

        Constraints:

        • Must be the identifier of an existing database instance

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "RestoreDBClusterToPointInTimeMessage$DBSubnetGroupName": "

        The DB subnet group name to use for the new DB cluster.

        Constraints: Must contain no more than 255 alphanumeric characters, periods, underscores, spaces, or hyphens. Must not be default.

        Example: mySubnetgroup

        ", "RestoreDBClusterToPointInTimeMessage$OptionGroupName": "

        The name of the option group for the new DB cluster.

        ", "RestoreDBClusterToPointInTimeMessage$KmsKeyId": "

        The KMS key identifier to use when restoring an encrypted DB cluster from an encrypted DB cluster.

        The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are restoring a DB cluster with the same AWS account that owns the KMS encryption key used to encrypt the new DB cluster, then you can use the KMS key alias instead of the ARN for the KMS encryption key.

        You can restore to a new DB cluster and encrypt the new DB cluster with a KMS key that is different than the KMS key used to encrypt the source DB cluster. The new DB cluster will be encrypted with the KMS key identified by the KmsKeyId parameter.

        If you do not specify a value for the KmsKeyId parameter, then the following will occur:

        • If the DB cluster is encrypted, then the restored DB cluster is encrypted using the KMS key that was used to encrypt the source DB cluster.

        • If the DB cluster is not encrypted, then the restored DB cluster is not encrypted.

        If DBClusterIdentifier refers to a DB cluster that is note encrypted, then the restore request is rejected.

        ", "RestoreDBInstanceFromDBSnapshotMessage$DBInstanceIdentifier": "

        Name of the DB instance to create from the DB snapshot. This parameter isn't case-sensitive.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens (1 to 15 for SQL Server)

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-snapshot-id

        ", "RestoreDBInstanceFromDBSnapshotMessage$DBSnapshotIdentifier": "

        The identifier for the DB snapshot to restore from.

        Constraints:

        • Must contain from 1 to 255 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        If you are restoring from a shared manual DB snapshot, the DBSnapshotIdentifier must be the ARN of the shared DB snapshot.

        ", "RestoreDBInstanceFromDBSnapshotMessage$DBInstanceClass": "

        The compute and memory capacity of the Amazon RDS DB instance.

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge | db.m3.2xlarge | db.m4.large | db.m4.xlarge | db.m4.2xlarge | db.m4.4xlarge | db.m4.10xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge | db.r3.8xlarge | db.t2.micro | db.t2.small | db.t2.medium | db.t2.large

        ", "RestoreDBInstanceFromDBSnapshotMessage$AvailabilityZone": "

        The EC2 Availability Zone that the database instance will be created in.

        Default: A random, system-chosen Availability Zone.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        Example: us-east-1a

        ", "RestoreDBInstanceFromDBSnapshotMessage$DBSubnetGroupName": "

        The DB subnet group name to use for the new instance.

        Constraints: Must contain no more than 255 alphanumeric characters, periods, underscores, spaces, or hyphens. Must not be default.

        Example: mySubnetgroup

        ", "RestoreDBInstanceFromDBSnapshotMessage$LicenseModel": "

        License model information for the restored DB instance.

        Default: Same as source.

        Valid values: license-included | bring-your-own-license | general-public-license

        ", "RestoreDBInstanceFromDBSnapshotMessage$DBName": "

        The database name for the restored DB instance.

        This parameter doesn't apply to the MySQL, PostgreSQL, or MariaDB engines.

        ", "RestoreDBInstanceFromDBSnapshotMessage$Engine": "

        The database engine to use for the new instance.

        Default: The same as source

        Constraint: Must be compatible with the engine of the source

        Valid Values: MySQL | mariadb | oracle-se1 | oracle-se | oracle-ee | sqlserver-ee | sqlserver-se | sqlserver-ex | sqlserver-web | postgres | aurora

        ", "RestoreDBInstanceFromDBSnapshotMessage$OptionGroupName": "

        The name of the option group to be used for the restored DB instance.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "RestoreDBInstanceFromDBSnapshotMessage$StorageType": "

        Specifies the storage type to be associated with the DB instance.

        Valid values: standard | gp2 | io1

        If you specify io1, you must also include a value for the Iops parameter.

        Default: io1 if the Iops parameter is specified; otherwise standard

        ", "RestoreDBInstanceFromDBSnapshotMessage$TdeCredentialArn": "

        The ARN from the Key Store with which to associate the instance for TDE encryption.

        ", "RestoreDBInstanceFromDBSnapshotMessage$TdeCredentialPassword": "

        The password for the given ARN from the Key Store in order to access the device.

        ", "RestoreDBInstanceFromDBSnapshotMessage$Domain": "

        Specify the Active Directory Domain to restore the instance in.

        ", "RestoreDBInstanceFromDBSnapshotMessage$DomainIAMRoleName": "

        Specify the name of the IAM role to be used when making API calls to the Directory Service.

        ", "RestoreDBInstanceToPointInTimeMessage$SourceDBInstanceIdentifier": "

        The identifier of the source DB instance from which to restore.

        Constraints:

        • Must be the identifier of an existing database instance

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "RestoreDBInstanceToPointInTimeMessage$TargetDBInstanceIdentifier": "

        The name of the new database instance to be created.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "RestoreDBInstanceToPointInTimeMessage$DBInstanceClass": "

        The compute and memory capacity of the Amazon RDS DB instance.

        Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge | db.m3.2xlarge | db.m4.large | db.m4.xlarge | db.m4.2xlarge | db.m4.4xlarge | db.m4.10xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge | db.r3.8xlarge | db.t2.micro | db.t2.small | db.t2.medium | db.t2.large

        Default: The same DBInstanceClass as the original DB instance.

        ", "RestoreDBInstanceToPointInTimeMessage$AvailabilityZone": "

        The EC2 Availability Zone that the database instance will be created in.

        Default: A random, system-chosen Availability Zone.

        Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

        Example: us-east-1a

        ", "RestoreDBInstanceToPointInTimeMessage$DBSubnetGroupName": "

        The DB subnet group name to use for the new instance.

        Constraints: Must contain no more than 255 alphanumeric characters, periods, underscores, spaces, or hyphens. Must not be default.

        Example: mySubnetgroup

        ", "RestoreDBInstanceToPointInTimeMessage$LicenseModel": "

        License model information for the restored DB instance.

        Default: Same as source.

        Valid values: license-included | bring-your-own-license | general-public-license

        ", "RestoreDBInstanceToPointInTimeMessage$DBName": "

        The database name for the restored DB instance.

        This parameter is not used for the MySQL or MariaDB engines.

        ", "RestoreDBInstanceToPointInTimeMessage$Engine": "

        The database engine to use for the new instance.

        Default: The same as source

        Constraint: Must be compatible with the engine of the source

        Valid Values: MySQL | mariadb | oracle-se1 | oracle-se | oracle-ee | sqlserver-ee | sqlserver-se | sqlserver-ex | sqlserver-web | postgres | aurora

        ", "RestoreDBInstanceToPointInTimeMessage$OptionGroupName": "

        The name of the option group to be used for the restored DB instance.

        Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

        ", "RestoreDBInstanceToPointInTimeMessage$StorageType": "

        Specifies the storage type to be associated with the DB instance.

        Valid values: standard | gp2 | io1

        If you specify io1, you must also include a value for the Iops parameter.

        Default: io1 if the Iops parameter is specified; otherwise standard

        ", "RestoreDBInstanceToPointInTimeMessage$TdeCredentialArn": "

        The ARN from the Key Store with which to associate the instance for TDE encryption.

        ", "RestoreDBInstanceToPointInTimeMessage$TdeCredentialPassword": "

        The password for the given ARN from the Key Store in order to access the device.

        ", "RestoreDBInstanceToPointInTimeMessage$Domain": "

        Specify the Active Directory Domain to restore the instance in.

        ", "RestoreDBInstanceToPointInTimeMessage$DomainIAMRoleName": "

        Specify the name of the IAM role to be used when making API calls to the Directory Service.

        ", "RevokeDBSecurityGroupIngressMessage$DBSecurityGroupName": "

        The name of the DB security group to revoke ingress from.

        ", "RevokeDBSecurityGroupIngressMessage$CIDRIP": "

        The IP range to revoke access from. Must be a valid CIDR range. If CIDRIP is specified, EC2SecurityGroupName, EC2SecurityGroupId and EC2SecurityGroupOwnerId cannot be provided.

        ", "RevokeDBSecurityGroupIngressMessage$EC2SecurityGroupName": "

        The name of the EC2 security group to revoke access from. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "RevokeDBSecurityGroupIngressMessage$EC2SecurityGroupId": "

        The id of the EC2 security group to revoke access from. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "RevokeDBSecurityGroupIngressMessage$EC2SecurityGroupOwnerId": "

        The AWS Account Number of the owner of the EC2 security group specified in the EC2SecurityGroupName parameter. The AWS Access Key ID is not an acceptable value. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId must be provided.

        ", "SourceIdsList$member": null, "SourceRegion$RegionName": "

        The source region name.

        ", "SourceRegion$Endpoint": "

        The source region endpoint.

        ", "SourceRegion$Status": "

        The status of the source region.

        ", "SourceRegionMessage$Marker": "

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

        ", "Subnet$SubnetIdentifier": "

        Specifies the identifier of the subnet.

        ", "Subnet$SubnetStatus": "

        Specifies the status of the subnet.

        ", "SubnetIdentifierList$member": null, "Tag$Key": "

        A key is the required name of the tag. The string value can be from 1 to 128 Unicode characters in length and cannot be prefixed with \"aws:\" or \"rds:\". The string can only contain only the set of Unicode letters, digits, white-space, '_', '.', '/', '=', '+', '-' (Java regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:/=+\\\\-]*)$\").

        ", "Tag$Value": "

        A value is the optional value of the tag. The string value can be from 1 to 256 Unicode characters in length and cannot be prefixed with \"aws:\" or \"rds:\". The string can only contain only the set of Unicode letters, digits, white-space, '_', '.', '/', '=', '+', '-' (Java regex: \"^([\\\\p{L}\\\\p{Z}\\\\p{N}_.:/=+\\\\-]*)$\").

        ", "Timezone$TimezoneName": "

        The name of the time zone.

        ", "UpgradeTarget$Engine": "

        The name of the upgrade target database engine.

        ", "UpgradeTarget$EngineVersion": "

        The version number of the upgrade target database engine.

        ", "UpgradeTarget$Description": "

        The version of the database engine that a DB instance can be upgraded to.

        ", "VpcSecurityGroupIdList$member": null, "VpcSecurityGroupMembership$VpcSecurityGroupId": "

        The name of the VPC security group.

        ", "VpcSecurityGroupMembership$Status": "

        The status of the VPC security group.

        " } }, "Subnet": { "base": "

        This data type is used as a response element in the DescribeDBSubnetGroups action.

        ", "refs": { "SubnetList$member": null } }, "SubnetAlreadyInUse": { "base": "

        The DB subnet is already in use in the Availability Zone.

        ", "refs": { } }, "SubnetIdentifierList": { "base": null, "refs": { "CreateDBSubnetGroupMessage$SubnetIds": "

        The EC2 Subnet IDs for the DB subnet group.

        ", "ModifyDBSubnetGroupMessage$SubnetIds": "

        The EC2 subnet IDs for the DB subnet group.

        " } }, "SubnetList": { "base": null, "refs": { "DBSubnetGroup$Subnets": "

        Contains a list of Subnet elements.

        " } }, "SubscriptionAlreadyExistFault": { "base": "

        The supplied subscription name already exists.

        ", "refs": { } }, "SubscriptionCategoryNotFoundFault": { "base": "

        The supplied category does not exist.

        ", "refs": { } }, "SubscriptionNotFoundFault": { "base": "

        The subscription name does not exist.

        ", "refs": { } }, "SupportedCharacterSetsList": { "base": null, "refs": { "DBEngineVersion$SupportedCharacterSets": "

        A list of the character sets supported by this engine for the CharacterSetName parameter of the CreateDBInstance action.

        " } }, "SupportedTimezonesList": { "base": null, "refs": { "DBEngineVersion$SupportedTimezones": "

        A list of the time zones supported by this engine for the Timezone parameter of the CreateDBInstance action.

        " } }, "TStamp": { "base": null, "refs": { "Certificate$ValidFrom": "

        The starting date from which the certificate is valid.

        ", "Certificate$ValidTill": "

        The final date that the certificate continues to be valid.

        ", "DBCluster$EarliestRestorableTime": "

        Specifies the earliest time to which a database can be restored with point-in-time restore.

        ", "DBCluster$LatestRestorableTime": "

        Specifies the latest time to which a database can be restored with point-in-time restore.

        ", "DBClusterSnapshot$SnapshotCreateTime": "

        Provides the time when the snapshot was taken, in Universal Coordinated Time (UTC).

        ", "DBClusterSnapshot$ClusterCreateTime": "

        Specifies the time when the DB cluster was created, in Universal Coordinated Time (UTC).

        ", "DBInstance$InstanceCreateTime": "

        Provides the date and time the DB instance was created.

        ", "DBInstance$LatestRestorableTime": "

        Specifies the latest time to which a database can be restored with point-in-time restore.

        ", "DBSnapshot$SnapshotCreateTime": "

        Provides the time when the snapshot was taken, in Universal Coordinated Time (UTC).

        ", "DBSnapshot$InstanceCreateTime": "

        Specifies the time when the snapshot was taken, in Universal Coordinated Time (UTC).

        ", "DescribeEventsMessage$StartTime": "

        The beginning of the time interval to retrieve events for, specified in ISO 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia page.

        Example: 2009-07-08T18:00Z

        ", "DescribeEventsMessage$EndTime": "

        The end of the time interval for which to retrieve events, specified in ISO 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia page.

        Example: 2009-07-08T18:00Z

        ", "Event$Date": "

        Specifies the date and time of the event.

        ", "PendingMaintenanceAction$AutoAppliedAfterDate": "

        The date of the maintenance window when the action will be applied. The maintenance action will be applied to the resource during its first maintenance window after this date. If this date is specified, any next-maintenance opt-in requests are ignored.

        ", "PendingMaintenanceAction$ForcedApplyDate": "

        The date when the maintenance action will be automatically applied. The maintenance action will be applied to the resource on this date regardless of the maintenance window for the resource. If this date is specified, any immediate opt-in requests are ignored.

        ", "PendingMaintenanceAction$CurrentApplyDate": "

        The effective date when the pending maintenance action will be applied to the resource. This date takes into account opt-in requests received from the ApplyPendingMaintenanceAction API, the AutoAppliedAfterDate, and the ForcedApplyDate. This value is blank if an opt-in request has not been received and nothing has been specified as AutoAppliedAfterDate or ForcedApplyDate.

        ", "ReservedDBInstance$StartTime": "

        The time the reservation started.

        ", "RestoreDBClusterToPointInTimeMessage$RestoreToTime": "

        The date and time to restore the DB cluster to.

        Valid Values: Value must be a time in Universal Coordinated Time (UTC) format

        Constraints:

        • Must be before the latest restorable time for the DB instance

        • Cannot be specified if UseLatestRestorableTime parameter is true

        Example: 2015-03-07T23:45:00Z

        ", "RestoreDBInstanceToPointInTimeMessage$RestoreTime": "

        The date and time to restore from.

        Valid Values: Value must be a time in Universal Coordinated Time (UTC) format

        Constraints:

        • Must be before the latest restorable time for the DB instance

        • Cannot be specified if UseLatestRestorableTime parameter is true

        Example: 2009-09-07T23:45:00Z

        " } }, "Tag": { "base": "

        Metadata assigned to an Amazon RDS resource consisting of a key-value pair.

        ", "refs": { "TagList$member": null } }, "TagList": { "base": "

        A list of tags.

        ", "refs": { "AddTagsToResourceMessage$Tags": "

        The tags to be assigned to the Amazon RDS resource.

        ", "CopyDBClusterParameterGroupMessage$Tags": null, "CopyDBClusterSnapshotMessage$Tags": null, "CopyDBParameterGroupMessage$Tags": null, "CopyDBSnapshotMessage$Tags": null, "CopyOptionGroupMessage$Tags": null, "CreateDBClusterMessage$Tags": null, "CreateDBClusterParameterGroupMessage$Tags": null, "CreateDBClusterSnapshotMessage$Tags": "

        The tags to be assigned to the DB cluster snapshot.

        ", "CreateDBInstanceMessage$Tags": null, "CreateDBInstanceReadReplicaMessage$Tags": null, "CreateDBParameterGroupMessage$Tags": null, "CreateDBSecurityGroupMessage$Tags": null, "CreateDBSnapshotMessage$Tags": null, "CreateDBSubnetGroupMessage$Tags": null, "CreateEventSubscriptionMessage$Tags": null, "CreateOptionGroupMessage$Tags": null, "PurchaseReservedDBInstancesOfferingMessage$Tags": null, "RestoreDBClusterFromS3Message$Tags": null, "RestoreDBClusterFromSnapshotMessage$Tags": "

        The tags to be assigned to the restored DB cluster.

        ", "RestoreDBClusterToPointInTimeMessage$Tags": null, "RestoreDBInstanceFromDBSnapshotMessage$Tags": null, "RestoreDBInstanceToPointInTimeMessage$Tags": null, "TagListMessage$TagList": "

        List of tags returned by the ListTagsForResource operation.

        " } }, "TagListMessage": { "base": "

        ", "refs": { } }, "Timezone": { "base": "

        A time zone associated with a DBInstance or a DBSnapshot. This data type is an element in the response to the DescribeDBInstances, the DescribeDBSnapshots, and the DescribeDBEngineVersions actions.

        ", "refs": { "SupportedTimezonesList$member": null } }, "UpgradeTarget": { "base": "

        The version of the database engine that a DB instance can be upgraded to.

        ", "refs": { "ValidUpgradeTargetList$member": null } }, "ValidUpgradeTargetList": { "base": null, "refs": { "DBEngineVersion$ValidUpgradeTarget": "

        A list of engine versions that this database engine version can be upgraded to.

        " } }, "VpcSecurityGroupIdList": { "base": null, "refs": { "CreateDBClusterMessage$VpcSecurityGroupIds": "

        A list of EC2 VPC security groups to associate with this DB cluster.

        ", "CreateDBInstanceMessage$VpcSecurityGroupIds": "

        A list of EC2 VPC security groups to associate with this DB instance.

        Default: The default EC2 VPC security group for the DB subnet group's VPC.

        ", "ModifyDBClusterMessage$VpcSecurityGroupIds": "

        A lst of VPC security groups that the DB cluster will belong to.

        ", "ModifyDBInstanceMessage$VpcSecurityGroupIds": "

        A list of EC2 VPC security groups to authorize on this DB instance. This change is asynchronously applied as soon as possible.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "OptionConfiguration$VpcSecurityGroupMemberships": "

        A list of VpcSecurityGroupMemebrship name strings used for this option.

        ", "RestoreDBClusterFromS3Message$VpcSecurityGroupIds": "

        A list of EC2 VPC security groups to associate with the restored DB cluster.

        ", "RestoreDBClusterFromSnapshotMessage$VpcSecurityGroupIds": "

        A list of VPC security groups that the new DB cluster will belong to.

        ", "RestoreDBClusterToPointInTimeMessage$VpcSecurityGroupIds": "

        A lst of VPC security groups that the new DB cluster belongs to.

        " } }, "VpcSecurityGroupMembership": { "base": "

        This data type is used as a response element for queries on VPC security group membership.

        ", "refs": { "VpcSecurityGroupMembershipList$member": null } }, "VpcSecurityGroupMembershipList": { "base": null, "refs": { "DBCluster$VpcSecurityGroups": "

        Provides a list of VPC security groups that the DB cluster belongs to.

        ", "DBInstance$VpcSecurityGroups": "

        Provides a list of VPC security group elements that the DB instance belongs to.

        ", "Option$VpcSecurityGroupMemberships": "

        If the option requires access to a port, then this VPC security group allows access to the port.

        " } } } } aws-sdk-go-1.4.22/models/apis/rds/2014-10-31/examples-1.json000066400000000000000000001545401300374646400224770ustar00rootroot00000000000000{ "version": "1.0", "examples": { "AddSourceIdentifierToSubscription": [ { "input": { "SourceIdentifier": "mymysqlinstance", "SubscriptionName": "mymysqleventsubscription" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example add a source identifier to an event notification subscription.", "id": "add-source-identifier-to-subscription-93fb6a15-0a59-4577-a7b5-e12db9752c14", "title": "To add a source identifier to an event notification subscription" } ], "AddTagsToResource": [ { "input": { "ResourceName": "arn:aws:rds:us-east-1:992648334831:og:mymysqloptiongroup", "Tags": [ { "Key": "Staging", "Value": "LocationDB" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example adds a tag to an option group.", "id": "add-tags-to-resource-fa99ef50-228b-449d-b893-ca4d4e9768ab", "title": "To add tags to a resource" } ], "ApplyPendingMaintenanceAction": [ { "input": { "ApplyAction": "system-update", "OptInType": "immediate", "ResourceIdentifier": "arn:aws:rds:us-east-1:992648334831:db:mymysqlinstance" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example immediately applies a pending system update to a DB instance.", "id": "apply-pending-maintenance-action-2a026047-8bbb-47fc-b695-abad9f308c24", "title": "To apply a pending maintenance action" } ], "AuthorizeDBSecurityGroupIngress": [ { "input": { "CIDRIP": "203.0.113.5/32", "DBSecurityGroupName": "mydbsecuritygroup" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example authorizes access to the specified security group by the specified CIDR block.", "id": "authorize-db-security-group-ingress-ebf9ab91-8912-4b07-a32e-ca150668164f", "title": "To authorize DB security group integress" } ], "CopyDBClusterParameterGroup": [ { "input": { "SourceDBClusterParameterGroupIdentifier": "mydbclusterparametergroup", "TargetDBClusterParameterGroupDescription": "My DB cluster parameter group copy", "TargetDBClusterParameterGroupIdentifier": "mydbclusterparametergroup-copy" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example copies a DB cluster parameter group.", "id": "copy-db-cluster-parameter-group-6fefaffe-cde9-4dba-9f0b-d3f593572fe4", "title": "To copy a DB cluster parameter group" } ], "CopyDBClusterSnapshot": [ { "input": { "SourceDBClusterSnapshotIdentifier": "rds:sample-cluster-2016-09-14-10-38", "TargetDBClusterSnapshotIdentifier": "cluster-snapshot-copy-1" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "The following example copies an automated snapshot of a DB cluster to a new DB cluster snapshot.", "id": "to-copy-a-db-cluster-snapshot-1473879770564", "title": "To copy a DB cluster snapshot" } ], "CopyDBParameterGroup": [ { "input": { "SourceDBParameterGroupIdentifier": "mymysqlparametergroup", "TargetDBParameterGroupDescription": "My MySQL parameter group copy", "TargetDBParameterGroupIdentifier": "mymysqlparametergroup-copy" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example copies a DB parameter group.", "id": "copy-db-parameter-group-610d4dba-2c87-467f-ae5d-edd7f8e47349", "title": "To copy a DB parameter group" } ], "CopyDBSnapshot": [ { "input": { "SourceDBSnapshotIdentifier": "mydbsnapshot", "TargetDBSnapshotIdentifier": "mydbsnapshot-copy" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example copies a DB snapshot.", "id": "copy-db-snapshot-1b2f0210-bc67-415d-9822-6eecf447dc86", "title": "To copy a DB snapshot" } ], "CopyOptionGroup": [ { "input": { "SourceOptionGroupIdentifier": "mymysqloptiongroup", "TargetOptionGroupDescription": "My MySQL option group copy", "TargetOptionGroupIdentifier": "mymysqloptiongroup-copy" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example copies an option group.", "id": "copy-option-group-8d5c01c3-8846-4e9c-a4b0-1b7237f7d0ec", "title": "To copy an option group" } ], "CreateDBCluster": [ { "input": { "AvailabilityZones": [ "us-east-1a" ], "BackupRetentionPeriod": 1, "DBClusterIdentifier": "mydbcluster", "DBClusterParameterGroupName": "mydbclusterparametergroup", "DatabaseName": "myauroradb", "Engine": "aurora", "EngineVersion": "5.6.10a", "MasterUserPassword": "mypassword", "MasterUsername": "myuser", "Port": 3306, "StorageEncrypted": true }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example creates a DB cluster.", "id": "create-db-cluster-423b998d-eba9-40dd-8e19-96c5b6e5f31d", "title": "To create a DB cluster" } ], "CreateDBClusterParameterGroup": [ { "input": { "DBClusterParameterGroupName": "mydbclusterparametergroup", "DBParameterGroupFamily": "aurora5.6", "Description": "My DB cluster parameter group" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example creates a DB cluster parameter group.", "id": "create-db-cluster-parameter-group-8eb1c3ae-1965-4262-afe3-ee134c4430b1", "title": "To create a DB cluster parameter group" } ], "CreateDBClusterSnapshot": [ { "input": { "DBClusterIdentifier": "mydbcluster", "DBClusterSnapshotIdentifier": "mydbclustersnapshot" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example creates a DB cluster snapshot.", "id": "create-db-cluster-snapshot-", "title": "To create a DB cluster snapshot" } ], "CreateDBInstance": [ { "input": { "AllocatedStorage": 5, "DBInstanceClass": "db.t2.micro", "DBInstanceIdentifier": "mymysqlinstance", "Engine": "MySQL", "MasterUserPassword": "MyPassword", "MasterUsername": "MyUser" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example creates a DB instance.", "id": "create-db-instance-57eb5d16-8bf8-4c84-9709-1700322b37b9", "title": "To create a DB instance." } ], "CreateDBInstanceReadReplica": [ { "input": { "AvailabilityZone": "us-east-1a", "CopyTagsToSnapshot": true, "DBInstanceClass": "db.t2.micro", "DBInstanceIdentifier": "mydbreadreplica", "PubliclyAccessible": true, "SourceDBInstanceIdentifier": "mymysqlinstance", "StorageType": "gp2", "Tags": [ { "Key": "mydbreadreplicakey", "Value": "mydbreadreplicavalue" } ] }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example creates a DB instance read replica.", "id": "create-db-instance-read-replica-81b41cd5-2871-4dae-bc59-3e264449d5fe", "title": "To create a DB instance read replica." } ], "CreateDBParameterGroup": [ { "input": { "DBParameterGroupFamily": "mysql5.6", "DBParameterGroupName": "mymysqlparametergroup", "Description": "My MySQL parameter group" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example creates a DB parameter group.", "id": "create-db-parameter-group-42afcc37-12e9-4b6a-a55c-b8a141246e87", "title": "To create a DB parameter group." } ], "CreateDBSecurityGroup": [ { "input": { "DBSecurityGroupDescription": "My DB security group", "DBSecurityGroupName": "mydbsecuritygroup" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example creates a DB security group.", "id": "create-db-security-group-41b6786a-539e-42a5-a645-a8bc3cf99353", "title": "To create a DB security group." } ], "CreateDBSnapshot": [ { "input": { "DBInstanceIdentifier": "mymysqlinstance", "DBSnapshotIdentifier": "mydbsnapshot" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example creates a DB snapshot.", "id": "create-db-snapshot-e10e0e2c-9ac4-426d-9b17-6b6a3e382ce2", "title": "To create a DB snapshot." } ], "CreateDBSubnetGroup": [ { "input": { "DBSubnetGroupDescription": "My DB subnet group", "DBSubnetGroupName": "mydbsubnetgroup", "SubnetIds": [ "subnet-1fab8a69", "subnet-d43a468c" ] }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example creates a DB subnet group.", "id": "create-db-subnet-group-c3d162c2-0ec4-4955-ba89-18967615fdb8", "title": "To create a DB subnet group." } ], "CreateEventSubscription": [ { "input": { "Enabled": true, "EventCategories": [ "availability" ], "SnsTopicArn": "arn:aws:sns:us-east-1:992648334831:MyDemoSNSTopic", "SourceIds": [ "mymysqlinstance" ], "SourceType": "db-instance", "SubscriptionName": "mymysqleventsubscription" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example creates an event notification subscription.", "id": "create-event-subscription-00dd0ee6-0e0f-4a38-ae83-e5f2ded5f69a", "title": "To create an event notification subscription" } ], "CreateOptionGroup": [ { "input": { "EngineName": "MySQL", "MajorEngineVersion": "5.6", "OptionGroupDescription": "My MySQL 5.6 option group", "OptionGroupName": "mymysqloptiongroup" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example creates an option group.", "id": "create-option-group-a7708c87-1b79-4a5e-a762-21cf8fc62b78", "title": "To create an option group" } ], "DeleteDBCluster": [ { "input": { "DBClusterIdentifier": "mydbcluster", "SkipFinalSnapshot": true }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified DB cluster.", "id": "delete-db-cluster-927fc2c8-6c67-4075-b1ba-75490be0f7d6", "title": "To delete a DB cluster." } ], "DeleteDBClusterParameterGroup": [ { "input": { "DBClusterParameterGroupName": "mydbclusterparametergroup" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified DB cluster parameter group.", "id": "delete-db-cluster-parameter-group-364f5555-ba0a-4cc8-979c-e769098924fc", "title": "To delete a DB cluster parameter group." } ], "DeleteDBClusterSnapshot": [ { "input": { "DBClusterSnapshotIdentifier": "mydbclustersnapshot" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified DB cluster snapshot.", "id": "delete-db-cluster-snapshot-c67e0d95-670e-4fb5-af90-6d9a70a91b07", "title": "To delete a DB cluster snapshot." } ], "DeleteDBInstance": [ { "input": { "DBInstanceIdentifier": "mymysqlinstance", "SkipFinalSnapshot": true }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified DB instance.", "id": "delete-db-instance-4412e650-949c-488a-b32a-7d3038ebccc4", "title": "To delete a DB instance." } ], "DeleteDBParameterGroup": [ { "input": { "DBParameterGroupName": "mydbparamgroup3" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes a DB parameter group.", "id": "to-delete-a-db-parameter-group-1473888796509", "title": "To delete a DB parameter group" } ], "DeleteDBSecurityGroup": [ { "input": { "DBSecurityGroupName": "mysecgroup" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes a DB security group.", "id": "to-delete-a-db-security-group-1473960141889", "title": "To delete a DB security group" } ], "DeleteDBSnapshot": [ { "input": { "DBSnapshotIdentifier": "mydbsnapshot" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified DB snapshot.", "id": "delete-db-snapshot-505d6b4e-8ced-479c-856a-c460a33fe07b", "title": "To delete a DB cluster snapshot." } ], "DeleteDBSubnetGroup": [ { "input": { "DBSubnetGroupName": "mydbsubnetgroup" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified DB subnetgroup.", "id": "delete-db-subnet-group-4ae00375-511e-443d-a01d-4b9f552244aa", "title": "To delete a DB subnet group." } ], "DeleteEventSubscription": [ { "input": { "SubscriptionName": "myeventsubscription" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified DB event subscription.", "id": "delete-db-event-subscription-d33567e3-1d5d-48ff-873f-0270453f4a75", "title": "To delete a DB event subscription." } ], "DeleteOptionGroup": [ { "input": { "OptionGroupName": "mydboptiongroup" }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified option group.", "id": "delete-db-option-group-578be2be-3095-431a-9ea4-9a3c3b0daef4", "title": "To delete an option group." } ], "DescribeAccountAttributes": [ { "input": { }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists account attributes.", "id": "describe-account-attributes-683d3ff7-5524-421a-8da5-e88f1ea2222b", "title": "To list account attributes" } ], "DescribeCertificates": [ { "input": { "CertificateIdentifier": "rds-ca-2015", "MaxRecords": 20 }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists up to 20 certificates for the specified certificate identifier.", "id": "describe-certificates-9d71a70d-7908-4444-b43f-321d842c62dc", "title": "To list certificates" } ], "DescribeDBClusterParameterGroups": [ { "input": { "DBClusterParameterGroupName": "mydbclusterparametergroup" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists settings for the specified DB cluster parameter group.", "id": "describe-db-cluster-parameter-groups-cf9c6e66-664e-4f57-8e29-a9080abfc013", "title": "To list DB cluster parameter group settings" } ], "DescribeDBClusterParameters": [ { "input": { "DBClusterParameterGroupName": "mydbclusterparametergroup", "Source": "system" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists system parameters for the specified DB cluster parameter group.", "id": "describe-db-cluster-parameters-98043c28-e489-41a7-b118-bfd96dc779a1", "title": "To list DB cluster parameters" } ], "DescribeDBClusterSnapshotAttributes": [ { "input": { "DBClusterSnapshotIdentifier": "mydbclustersnapshot" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists attributes for the specified DB cluster snapshot.", "id": "describe-db-cluster-snapshot-attributes-6752ade3-0c7b-4b06-a8e4-b76bf4e2d3571", "title": "To list DB cluster snapshot attributes" } ], "DescribeDBClusterSnapshots": [ { "input": { "DBClusterSnapshotIdentifier": "mydbclustersnapshot", "SnapshotType": "manual" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists settings for the specified, manually-created cluster snapshot.", "id": "describe-db-cluster-snapshots-52f38af1-3431-4a51-9a6a-e6bb8c961b32", "title": "To list DB cluster snapshots" } ], "DescribeDBClusters": [ { "input": { "DBClusterIdentifier": "mynewdbcluster" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists settings for the specified DB cluster.", "id": "describe-db-clusters-7aae8861-cb95-4b3b-9042-f62df7698635", "title": "To list DB clusters" } ], "DescribeDBEngineVersions": [ { "input": { "DBParameterGroupFamily": "mysql5.6", "DefaultOnly": true, "Engine": "mysql", "EngineVersion": "5.6", "ListSupportedCharacterSets": true }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists settings for the specified DB engine version.", "id": "describe-db-engine-versions-8e698cf2-2162-425a-a854-111cdaceb52b", "title": "To list DB engine version settings" } ], "DescribeDBInstances": [ { "input": { "DBInstanceIdentifier": "mymysqlinstance" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists settings for the specified DB instance.", "id": "describe-db-instances-0e11a8c5-4ec3-4463-8cbf-f7254d04c4fc", "title": "To list DB instance settings" } ], "DescribeDBLogFiles": [ { "input": { "DBInstanceIdentifier": "mymysqlinstance", "FileLastWritten": 1470873600000, "FileSize": 0, "FilenameContains": "error" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists matching log file names for the specified DB instance, file name pattern, last write date in POSIX time with milleseconds, and minimum file size.", "id": "describe-db-log-files-5f002d8d-5c1d-44c2-b5f4-bd284c0f1285", "title": "To list DB log file names" } ], "DescribeDBParameterGroups": [ { "input": { "DBParameterGroupName": "mymysqlparametergroup" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists information about the specified DB parameter group.", "id": "describe-db-parameter-groups-", "title": "To list information about DB parameter groups" } ], "DescribeDBParameters": [ { "input": { "DBParameterGroupName": "mymysqlparametergroup", "MaxRecords": 20, "Source": "system" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists information for up to the first 20 system parameters for the specified DB parameter group.", "id": "describe-db-parameters-09db4201-ef4f-4d97-a4b5-d71c0715b901", "title": "To list information about DB parameters" } ], "DescribeDBSecurityGroups": [ { "input": { "DBSecurityGroupName": "mydbsecuritygroup" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists settings for the specified security group.", "id": "describe-db-security-groups-66fe9ea1-17dd-4275-b82e-f771cee0c849", "title": "To list DB security group settings" } ], "DescribeDBSnapshotAttributes": [ { "input": { "DBSnapshotIdentifier": "mydbsnapshot" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists attributes for the specified DB snapshot.", "id": "describe-db-snapshot-attributes-1d4fb750-34f6-4e43-8b3d-b2751d796a95", "title": "To list DB snapshot attributes" } ], "DescribeDBSnapshots": [ { "input": { "DBInstanceIdentifier": "mymysqlinstance", "IncludePublic": false, "IncludeShared": true, "SnapshotType": "manual" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists all manually-created, shared snapshots for the specified DB instance.", "id": "describe-db-snapshots-2c935989-a1ef-4c85-aea4-1d0f45f17f26", "title": "To list DB snapshot attributes" } ], "DescribeDBSubnetGroups": [ { "input": { "DBSubnetGroupName": "mydbsubnetgroup" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists information about the specified DB subnet group.", "id": "describe-db-subnet-groups-1d97b340-682f-4dd6-9653-8ed72a8d1221", "title": "To list information about DB subnet groups" } ], "DescribeEngineDefaultClusterParameters": [ { "input": { "DBParameterGroupFamily": "aurora5.6" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists default parameters for the specified DB cluster engine.", "id": "describe-engine-default-cluster-parameters-f130374a-7bee-434b-b51d-da20b6e000e0", "title": "To list default parameters for a DB cluster engine" } ], "DescribeEngineDefaultParameters": [ { "input": { "DBParameterGroupFamily": "mysql5.6" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists default parameters for the specified DB engine.", "id": "describe-engine-default-parameters-35d5108e-1d44-4fac-8aeb-04b8fdfface1", "title": "To list default parameters for a DB engine" } ], "DescribeEventCategories": [ { "input": { "SourceType": "db-instance" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists all DB instance event categories.", "id": "describe-event-categories-97bd4c77-12da-4be6-b42f-edf77771428b", "title": "To list event categories." } ], "DescribeEventSubscriptions": [ { "input": { "SubscriptionName": "mymysqleventsubscription" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists information for the specified DB event notification subscription.", "id": "describe-event-subscriptions-11184a82-e58a-4d0c-b558-f3a7489e0850", "title": "To list information about DB event notification subscriptions" } ], "DescribeEvents": [ { "input": { "Duration": 10080, "EventCategories": [ "backup" ], "SourceIdentifier": "mymysqlinstance", "SourceType": "db-instance" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists information for all backup-related events for the specified DB instance for the past 7 days (7 days * 24 hours * 60 minutes = 10,080 minutes).", "id": "describe-events-3836e5ed-3913-4f76-8452-c77fcad5016b", "title": "To list information about events" } ], "DescribeOptionGroupOptions": [ { "input": { "EngineName": "mysql", "MajorEngineVersion": "5.6" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists information for all option group options for the specified DB engine.", "id": "describe-option-group-options-30d735a4-81f1-49e4-b3f2-5dc45d50c8ed", "title": "To list information about DB option group options" } ], "DescribeOptionGroups": [ { "input": { "EngineName": "mysql", "MajorEngineVersion": "5.6" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists information for all option groups for the specified DB engine.", "id": "describe-option-groups-4ef478a1-66d5-45f2-bec3-e608720418a4", "title": "To list information about DB option groups" } ], "DescribeOrderableDBInstanceOptions": [ { "input": { "DBInstanceClass": "db.t2.micro", "Engine": "mysql", "EngineVersion": "5.6.27", "LicenseModel": "general-public-license", "Vpc": true }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists information for all orderable DB instance options for the specified DB engine, engine version, DB instance class, license model, and VPC settings.", "id": "describe-orderable-db-instance-options-7444d3ed-82eb-42b9-9ed9-896b8c27a782", "title": "To list information about orderable DB instance options" } ], "DescribePendingMaintenanceActions": [ { "input": { "ResourceIdentifier": "arn:aws:rds:us-east-1:992648334831:db:mymysqlinstance" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists information for all pending maintenance actions for the specified DB instance.", "id": "describe-pending-maintenance-actions-e6021f7e-58ae-49cc-b874-11996176835c", "title": "To list information about pending maintenance actions" } ], "DescribeReservedDBInstances": [ { "input": { "DBInstanceClass": "db.t2.micro", "Duration": "1y", "MultiAZ": false, "OfferingType": "No Upfront", "ProductDescription": "mysql" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists information for all reserved DB instances for the specified DB instance class, duration, product, offering type, and availability zone settings.", "id": "describe-reserved-db-instances-d45adaca-2e30-407c-a0f3-aa7b98bea17f", "title": "To list information about reserved DB instances" } ], "DescribeReservedDBInstancesOfferings": [ { "input": { "DBInstanceClass": "db.t2.micro", "Duration": "1y", "MultiAZ": false, "OfferingType": "No Upfront", "ProductDescription": "mysql" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists information for all reserved DB instance offerings for the specified DB instance class, duration, product, offering type, and availability zone settings.", "id": "describe-reserved-db-instances-offerings-9de7d1fd-d6a6-4a72-84ae-b2ef58d47d8d", "title": "To list information about reserved DB instance offerings" } ], "DescribeSourceRegions": [ { "input": { }, "output": { "SourceRegions": [ { "Endpoint": "https://rds.ap-northeast-1.amazonaws.com", "RegionName": "ap-northeast-1", "Status": "available" }, { "Endpoint": "https://rds.ap-northeast-2.amazonaws.com", "RegionName": "ap-northeast-2", "Status": "available" }, { "Endpoint": "https://rds.ap-south-1.amazonaws.com", "RegionName": "ap-south-1", "Status": "available" }, { "Endpoint": "https://rds.ap-southeast-1.amazonaws.com", "RegionName": "ap-southeast-1", "Status": "available" }, { "Endpoint": "https://rds.ap-southeast-2.amazonaws.com", "RegionName": "ap-southeast-2", "Status": "available" }, { "Endpoint": "https://rds.eu-central-1.amazonaws.com", "RegionName": "eu-central-1", "Status": "available" }, { "Endpoint": "https://rds.eu-west-1.amazonaws.com", "RegionName": "eu-west-1", "Status": "available" }, { "Endpoint": "https://rds.sa-east-1.amazonaws.com", "RegionName": "sa-east-1", "Status": "available" }, { "Endpoint": "https://rds.us-west-1.amazonaws.com", "RegionName": "us-west-1", "Status": "available" }, { "Endpoint": "https://rds.us-west-2.amazonaws.com", "RegionName": "us-west-2", "Status": "available" } ] }, "comments": { }, "description": "To list the AWS regions where a Read Replica can be created.", "id": "to-describe-source-regions-1473457722410", "title": "To describe source regions" } ], "DownloadDBLogFilePortion": [ { "input": { "DBInstanceIdentifier": "mymysqlinstance", "LogFileName": "mysqlUpgrade" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists information for the specified log file for the specified DB instance.", "id": "download-db-log-file-portion-54a82731-a441-4fc7-a010-8eccae6fa202", "title": "To list information about DB log files" } ], "FailoverDBCluster": [ { "input": { "DBClusterIdentifier": "myaurorainstance-cluster", "TargetDBInstanceIdentifier": "myaurorareplica" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example performs a failover for the specified DB cluster to the specified DB instance.", "id": "failover-db-cluster-9e7f2f93-d98c-42c7-bb0e-d6c485c096d6", "title": "To perform a failover for a DB cluster" } ], "ListTagsForResource": [ { "input": { "ResourceName": "arn:aws:rds:us-east-1:992648334831:og:mymysqloptiongroup" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example lists information about all tags associated with the specified DB option group.", "id": "list-tags-for-resource-8401f3c2-77cd-4f90-bfd5-b523f0adcc2f", "title": "To list information about tags associated with a resource" } ], "ModifyDBCluster": [ { "input": { "ApplyImmediately": true, "DBClusterIdentifier": "mydbcluster", "MasterUserPassword": "mynewpassword", "NewDBClusterIdentifier": "mynewdbcluster", "PreferredBackupWindow": "04:00-04:30", "PreferredMaintenanceWindow": "Tue:05:00-Tue:05:30" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example changes the specified settings for the specified DB cluster.", "id": "modify-db-cluster-a370ee1b-768d-450a-853b-707cb1ab663d", "title": "To change DB cluster settings" } ], "ModifyDBClusterParameterGroup": [ { "input": { "DBClusterParameterGroupName": "mydbclusterparametergroup", "Parameters": [ { "ApplyMethod": "immediate", "ParameterName": "time_zone", "ParameterValue": "America/Phoenix" } ] }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example immediately changes the specified setting for the specified DB cluster parameter group.", "id": "modify-db-cluster-parameter-group-f9156bc9-082a-442e-8d12-239542c1a113", "title": "To change DB cluster parameter group settings" } ], "ModifyDBClusterSnapshotAttribute": [ { "input": { "AttributeName": "restore", "DBClusterSnapshotIdentifier": "manual-cluster-snapshot1", "ValuesToAdd": [ "123451234512", "123456789012" ], "ValuesToRemove": [ "all" ] }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "The following example gives two AWS accounts access to a manual DB cluster snapshot and ensures that the DB cluster snapshot is private by removing the value \"all\".", "id": "to-add-or-remove-access-to-a-manual-db-cluster-snapshot-1473889426431", "title": "To add or remove access to a manual DB cluster snapshot" } ], "ModifyDBInstance": [ { "input": { "AllocatedStorage": 10, "ApplyImmediately": true, "BackupRetentionPeriod": 1, "DBInstanceClass": "db.t2.small", "DBInstanceIdentifier": "mymysqlinstance", "MasterUserPassword": "mynewpassword", "PreferredBackupWindow": "04:00-04:30", "PreferredMaintenanceWindow": "Tue:05:00-Tue:05:30" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example immediately changes the specified settings for the specified DB instance.", "id": "modify-db-instance-6979a368-6254-467b-8a8d-61103f4fcde9", "title": "To change DB instance settings" } ], "ModifyDBParameterGroup": [ { "input": { "DBParameterGroupName": "mymysqlparametergroup", "Parameters": [ { "ApplyMethod": "immediate", "ParameterName": "time_zone", "ParameterValue": "America/Phoenix" } ] }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example immediately changes the specified setting for the specified DB parameter group.", "id": "modify-db-parameter-group-f3a4e52a-68e4-4b88-b559-f912d34c457a", "title": "To change DB parameter group settings" } ], "ModifyDBSnapshotAttribute": [ { "input": { "AttributeName": "restore", "DBSnapshotIdentifier": "mydbsnapshot", "ValuesToAdd": [ "all" ] }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example adds the specified attribute for the specified DB snapshot.", "id": "modify-db-snapshot-attribute-2e66f120-2b21-4a7c-890b-4474da88bde6", "title": "To change DB snapshot attributes" } ], "ModifyDBSubnetGroup": [ { "input": { "DBSubnetGroupName": "mydbsubnetgroup", "SubnetIds": [ "subnet-70e1975a", "subnet-747a5c49" ] }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example changes the specified setting for the specified DB subnet group.", "id": "modify-db-subnet-group-e34a97d9-8fe6-4239-a4ed-ad6e73a956b0", "title": "To change DB subnet group settings" } ], "ModifyEventSubscription": [ { "input": { "Enabled": true, "EventCategories": [ "deletion", "low storage" ], "SourceType": "db-instance", "SubscriptionName": "mymysqleventsubscription" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example changes the specified setting for the specified event notification subscription.", "id": "modify-event-subscription-405ac869-1f02-42cd-b8f4-6950a435f30e", "title": "To change event notification subscription settings" } ], "ModifyOptionGroup": [ { "input": { "ApplyImmediately": true, "OptionGroupName": "myawsuser-og02", "OptionsToInclude": [ { "DBSecurityGroupMemberships": [ "default" ], "OptionName": "MEMCACHED" } ] }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "The following example adds an option to an option group.", "id": "to-modify-an-option-group-1473890247875", "title": "To modify an option group" } ], "PromoteReadReplica": [ { "input": { "BackupRetentionPeriod": 1, "DBInstanceIdentifier": "mydbreadreplica", "PreferredBackupWindow": "03:30-04:00" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example promotes the specified read replica and sets its backup retention period and preferred backup window.", "id": "promote-read-replica-cc580039-c55d-4035-838a-def4a1ae4181", "title": "To promote a read replica" } ], "PurchaseReservedDBInstancesOffering": [ { "input": { "ReservedDBInstanceId": "myreservationid", "ReservedDBInstancesOfferingId": "fb29428a-646d-4390-850e-5fe89926e727" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example purchases a reserved DB instance offering that matches the specified settings.", "id": "purchase-reserved-db-instances-offfering-f423c736-8413-429b-ba13-850fd4fa4dcd", "title": "To purchase a reserved DB instance offering" } ], "RebootDBInstance": [ { "input": { "DBInstanceIdentifier": "mymysqlinstance", "ForceFailover": false }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example reboots the specified DB instance without forcing a failover.", "id": "reboot-db-instance-b9ce8a0a-2920-451d-a1f3-01d288aa7366", "title": "To reboot a DB instance" } ], "RemoveSourceIdentifierFromSubscription": [ { "input": { "SourceIdentifier": "mymysqlinstance", "SubscriptionName": "myeventsubscription" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example removes the specified source identifier from the specified DB event subscription.", "id": "remove-source-identifier-from-subscription-30d25493-c19d-4cf7-b4e5-68371d0d8770", "title": "To remove a source identifier from a DB event subscription" } ], "RemoveTagsFromResource": [ { "input": { "ResourceName": "arn:aws:rds:us-east-1:992648334831:og:mydboptiongroup", "TagKeys": [ "MyKey" ] }, "comments": { "input": { }, "output": { } }, "description": "This example removes the specified tag associated with the specified DB option group.", "id": "remove-tags-from-resource-49f00574-38f6-4d01-ac89-d3c668449ce3", "title": "To remove tags from a resource" } ], "ResetDBClusterParameterGroup": [ { "input": { "DBClusterParameterGroupName": "mydbclusterparametergroup", "ResetAllParameters": true }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example resets all parameters for the specified DB cluster parameter group to their default values.", "id": "reset-db-cluster-parameter-group-b04aeaf7-7f73-49e1-9bb4-857573ea3ee4", "title": "To reset the values of a DB cluster parameter group" } ], "ResetDBParameterGroup": [ { "input": { "DBParameterGroupName": "mydbparametergroup", "ResetAllParameters": true }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example resets all parameters for the specified DB parameter group to their default values.", "id": "reset-db-parameter-group-ed2ed723-de0d-4824-8af5-3c65fa130abf", "title": "To reset the values of a DB parameter group" } ], "RestoreDBClusterFromSnapshot": [ { "input": { "DBClusterIdentifier": "restored-cluster1", "Engine": "aurora", "SnapshotIdentifier": "sample-cluster-snapshot1" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "The following example restores an Amazon Aurora DB cluster from a DB cluster snapshot.", "id": "to-restore-an-amazon-aurora-db-cluster-from-a-db-cluster-snapshot-1473958144325", "title": "To restore an Amazon Aurora DB cluster from a DB cluster snapshot" } ], "RestoreDBClusterToPointInTime": [ { "input": { "DBClusterIdentifier": "sample-restored-cluster1", "RestoreToTime": "2016-09-13T18:45:00Z", "SourceDBClusterIdentifier": "sample-cluster1" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "The following example restores a DB cluster to a new DB cluster at a point in time from the source DB cluster.", "id": "to-restore-a-db-cluster-to-a-point-in-time-1473962082214", "title": "To restore a DB cluster to a point in time." } ], "RestoreDBInstanceFromDBSnapshot": [ { "input": { "DBInstanceIdentifier": "mysqldb-restored", "DBSnapshotIdentifier": "rds:mysqldb-2014-04-22-08-15" }, "output": { "AllocatedStorage": 200, "AutoMinorVersionUpgrade": true, "AvailabilityZone": "us-west-2b", "BackupRetentionPeriod": 7, "CACertificateIdentifier": "rds-ca-2015", "CopyTagsToSnapshot": false, "DBInstanceArn": "arn:aws:rds:us-west-2:123456789012:db:mysqldb-restored", "DBInstanceClass": "db.t2.small", "DBInstanceIdentifier": "mysqldb-restored", "DBInstanceStatus": "available", "DBName": "sample", "DBParameterGroups": [ { "DBParameterGroupName": "default.mysql5.6", "ParameterApplyStatus": "in-sync" } ], "DBSecurityGroups": [ ], "DBSubnetGroup": { "DBSubnetGroupDescription": "default", "DBSubnetGroupName": "default", "SubnetGroupStatus": "Complete", "Subnets": [ { "SubnetAvailabilityZone": { "Name": "us-west-2a" }, "SubnetIdentifier": "subnet-77e8db03", "SubnetStatus": "Active" }, { "SubnetAvailabilityZone": { "Name": "us-west-2b" }, "SubnetIdentifier": "subnet-c39989a1", "SubnetStatus": "Active" }, { "SubnetAvailabilityZone": { "Name": "us-west-2c" }, "SubnetIdentifier": "subnet-4b267b0d", "SubnetStatus": "Active" } ], "VpcId": "vpc-c1c5b3a3" }, "DbInstancePort": 0, "DbiResourceId": "db-VNZUCCBTEDC4WR7THXNJO72HVQ", "DomainMemberships": [ ], "Engine": "mysql", "EngineVersion": "5.6.27", "LicenseModel": "general-public-license", "MasterUsername": "mymasteruser", "MonitoringInterval": 0, "MultiAZ": false, "OptionGroupMemberships": [ { "OptionGroupName": "default:mysql-5-6", "Status": "in-sync" } ], "PendingModifiedValues": { }, "PreferredBackupWindow": "12:58-13:28", "PreferredMaintenanceWindow": "tue:10:16-tue:10:46", "PubliclyAccessible": true, "ReadReplicaDBInstanceIdentifiers": [ ], "StorageEncrypted": false, "StorageType": "gp2", "VpcSecurityGroups": [ { "Status": "active", "VpcSecurityGroupId": "sg-e5e5b0d2" } ] }, "comments": { "input": { }, "output": { } }, "description": "The following example restores a DB instance from a DB snapshot.", "id": "to-restore-a-db-instance-from-a-db-snapshot-1473961657311", "title": "To restore a DB instance from a DB snapshot." } ], "RestoreDBInstanceToPointInTime": [ { "input": { "RestoreTime": "2016-09-13T18:45:00Z", "SourceDBInstanceIdentifier": "mysql-sample", "TargetDBInstanceIdentifier": "mysql-sample-restored" }, "output": { "AllocatedStorage": 200, "AutoMinorVersionUpgrade": true, "AvailabilityZone": "us-west-2b", "BackupRetentionPeriod": 7, "CACertificateIdentifier": "rds-ca-2015", "CopyTagsToSnapshot": false, "DBInstanceArn": "arn:aws:rds:us-west-2:123456789012:db:mysql-sample-restored", "DBInstanceClass": "db.t2.small", "DBInstanceIdentifier": "mysql-sample-restored", "DBInstanceStatus": "available", "DBName": "sample", "DBParameterGroups": [ { "DBParameterGroupName": "default.mysql5.6", "ParameterApplyStatus": "in-sync" } ], "DBSecurityGroups": [ ], "DBSubnetGroup": { "DBSubnetGroupDescription": "default", "DBSubnetGroupName": "default", "SubnetGroupStatus": "Complete", "Subnets": [ { "SubnetAvailabilityZone": { "Name": "us-west-2a" }, "SubnetIdentifier": "subnet-77e8db03", "SubnetStatus": "Active" }, { "SubnetAvailabilityZone": { "Name": "us-west-2b" }, "SubnetIdentifier": "subnet-c39989a1", "SubnetStatus": "Active" }, { "SubnetAvailabilityZone": { "Name": "us-west-2c" }, "SubnetIdentifier": "subnet-4b267b0d", "SubnetStatus": "Active" } ], "VpcId": "vpc-c1c5b3a3" }, "DbInstancePort": 0, "DbiResourceId": "db-VNZUCCBTEDC4WR7THXNJO72HVQ", "DomainMemberships": [ ], "Engine": "mysql", "EngineVersion": "5.6.27", "LicenseModel": "general-public-license", "MasterUsername": "mymasteruser", "MonitoringInterval": 0, "MultiAZ": false, "OptionGroupMemberships": [ { "OptionGroupName": "default:mysql-5-6", "Status": "in-sync" } ], "PendingModifiedValues": { }, "PreferredBackupWindow": "12:58-13:28", "PreferredMaintenanceWindow": "tue:10:16-tue:10:46", "PubliclyAccessible": true, "ReadReplicaDBInstanceIdentifiers": [ ], "StorageEncrypted": false, "StorageType": "gp2", "VpcSecurityGroups": [ { "Status": "active", "VpcSecurityGroupId": "sg-e5e5b0d2" } ] }, "comments": { "input": { }, "output": { } }, "description": "The following example restores a DB instance to a new DB instance at a point in time from the source DB instance.", "id": "to-restore-a-db-instance-to-a-point-in-time-1473962652154", "title": "To restore a DB instance to a point in time." } ], "RevokeDBSecurityGroupIngress": [ { "input": { "CIDRIP": "203.0.113.5/32", "DBSecurityGroupName": "mydbsecuritygroup" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example revokes ingress for the specified CIDR block associated with the specified DB security group.", "id": "revoke-db-security-group-ingress-ce5b2c1c-bd4e-4809-b04a-6d78ec448813", "title": "To revoke ingress for a DB security group" } ] } } aws-sdk-go-1.4.22/models/apis/rds/2014-10-31/paginators-1.json000066400000000000000000000061311300374646400230200ustar00rootroot00000000000000{ "pagination": { "DescribeDBEngineVersions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBEngineVersions" }, "DescribeDBInstances": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBInstances" }, "DescribeDBLogFiles": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DescribeDBLogFiles" }, "DescribeDBParameterGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBParameterGroups" }, "DescribeDBParameters": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "Parameters" }, "DescribeDBSecurityGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBSecurityGroups" }, "DescribeDBSnapshots": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBSnapshots" }, "DescribeDBSubnetGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "DBSubnetGroups" }, "DescribeEngineDefaultParameters": { "input_token": "Marker", "output_token": "EngineDefaults.Marker", "limit_key": "MaxRecords", "result_key": "EngineDefaults.Parameters" }, "DescribeEventSubscriptions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "EventSubscriptionsList" }, "DescribeEvents": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "Events" }, "DescribeOptionGroupOptions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "OptionGroupOptions" }, "DescribeOptionGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "OptionGroupsList" }, "DescribeOrderableDBInstanceOptions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "OrderableDBInstanceOptions" }, "DescribeReservedDBInstances": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "ReservedDBInstances" }, "DescribeReservedDBInstancesOfferings": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "ReservedDBInstancesOfferings" }, "DownloadDBLogFilePortion": { "input_token": "Marker", "output_token": "Marker", "limit_key": "NumberOfLines", "more_results": "AdditionalDataPending", "result_key": "LogFileData" }, "ListTagsForResource": { "result_key": "TagList" } } } aws-sdk-go-1.4.22/models/apis/rds/2014-10-31/waiters-2.json000066400000000000000000000045361300374646400223370ustar00rootroot00000000000000{ "version": 2, "waiters": { "DBInstanceAvailable": { "delay": 30, "operation": "DescribeDBInstances", "maxAttempts": 60, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "deleting", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "failed", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "incompatible-restore", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "incompatible-parameters", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" } ] }, "DBInstanceDeleted": { "delay": 30, "operation": "DescribeDBInstances", "maxAttempts": 60, "acceptors": [ { "expected": "deleted", "matcher": "pathAll", "state": "success", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "DBInstanceNotFound", "matcher": "error", "state": "success" }, { "expected": "creating", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "modifying", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "rebooting", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" }, { "expected": "resetting-master-credentials", "matcher": "pathAny", "state": "failure", "argument": "DBInstances[].DBInstanceStatus" } ] } } } aws-sdk-go-1.4.22/models/apis/redshift/000077500000000000000000000000001300374646400176125ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/redshift/2012-12-01/000077500000000000000000000000001300374646400206345ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/redshift/2012-12-01/api-2.json000066400000000000000000003170251300374646400224470ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2012-12-01", "endpointPrefix":"redshift", "protocol":"query", "serviceFullName":"Amazon Redshift", "signatureVersion":"v4", "xmlNamespace":"http://redshift.amazonaws.com/doc/2012-12-01/" }, "operations":{ "AuthorizeClusterSecurityGroupIngress":{ "name":"AuthorizeClusterSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AuthorizeClusterSecurityGroupIngressMessage"}, "output":{ "shape":"AuthorizeClusterSecurityGroupIngressResult", "resultWrapper":"AuthorizeClusterSecurityGroupIngressResult" }, "errors":[ {"shape":"ClusterSecurityGroupNotFoundFault"}, {"shape":"InvalidClusterSecurityGroupStateFault"}, {"shape":"AuthorizationAlreadyExistsFault"}, {"shape":"AuthorizationQuotaExceededFault"} ] }, "AuthorizeSnapshotAccess":{ "name":"AuthorizeSnapshotAccess", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AuthorizeSnapshotAccessMessage"}, "output":{ "shape":"AuthorizeSnapshotAccessResult", "resultWrapper":"AuthorizeSnapshotAccessResult" }, "errors":[ {"shape":"ClusterSnapshotNotFoundFault"}, {"shape":"AuthorizationAlreadyExistsFault"}, {"shape":"AuthorizationQuotaExceededFault"}, {"shape":"DependentServiceRequestThrottlingFault"}, {"shape":"InvalidClusterSnapshotStateFault"}, {"shape":"LimitExceededFault"} ] }, "CopyClusterSnapshot":{ "name":"CopyClusterSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CopyClusterSnapshotMessage"}, "output":{ "shape":"CopyClusterSnapshotResult", "resultWrapper":"CopyClusterSnapshotResult" }, "errors":[ {"shape":"ClusterSnapshotAlreadyExistsFault"}, {"shape":"ClusterSnapshotNotFoundFault"}, {"shape":"InvalidClusterSnapshotStateFault"}, {"shape":"ClusterSnapshotQuotaExceededFault"} ] }, "CreateCluster":{ "name":"CreateCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateClusterMessage"}, "output":{ "shape":"CreateClusterResult", "resultWrapper":"CreateClusterResult" }, "errors":[ {"shape":"ClusterAlreadyExistsFault"}, {"shape":"InsufficientClusterCapacityFault"}, {"shape":"ClusterParameterGroupNotFoundFault"}, {"shape":"ClusterSecurityGroupNotFoundFault"}, {"shape":"ClusterQuotaExceededFault"}, {"shape":"NumberOfNodesQuotaExceededFault"}, {"shape":"NumberOfNodesPerClusterLimitExceededFault"}, {"shape":"ClusterSubnetGroupNotFoundFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidClusterSubnetGroupStateFault"}, {"shape":"InvalidSubnet"}, {"shape":"UnauthorizedOperation"}, {"shape":"HsmClientCertificateNotFoundFault"}, {"shape":"HsmConfigurationNotFoundFault"}, {"shape":"InvalidElasticIpFault"}, {"shape":"TagLimitExceededFault"}, {"shape":"InvalidTagFault"}, {"shape":"LimitExceededFault"}, {"shape":"DependentServiceRequestThrottlingFault"} ] }, "CreateClusterParameterGroup":{ "name":"CreateClusterParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateClusterParameterGroupMessage"}, "output":{ "shape":"CreateClusterParameterGroupResult", "resultWrapper":"CreateClusterParameterGroupResult" }, "errors":[ {"shape":"ClusterParameterGroupQuotaExceededFault"}, {"shape":"ClusterParameterGroupAlreadyExistsFault"}, {"shape":"TagLimitExceededFault"}, {"shape":"InvalidTagFault"} ] }, "CreateClusterSecurityGroup":{ "name":"CreateClusterSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateClusterSecurityGroupMessage"}, "output":{ "shape":"CreateClusterSecurityGroupResult", "resultWrapper":"CreateClusterSecurityGroupResult" }, "errors":[ {"shape":"ClusterSecurityGroupAlreadyExistsFault"}, {"shape":"ClusterSecurityGroupQuotaExceededFault"}, {"shape":"TagLimitExceededFault"}, {"shape":"InvalidTagFault"} ] }, "CreateClusterSnapshot":{ "name":"CreateClusterSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateClusterSnapshotMessage"}, "output":{ "shape":"CreateClusterSnapshotResult", "resultWrapper":"CreateClusterSnapshotResult" }, "errors":[ {"shape":"ClusterSnapshotAlreadyExistsFault"}, {"shape":"InvalidClusterStateFault"}, {"shape":"ClusterNotFoundFault"}, {"shape":"ClusterSnapshotQuotaExceededFault"}, {"shape":"TagLimitExceededFault"}, {"shape":"InvalidTagFault"} ] }, "CreateClusterSubnetGroup":{ "name":"CreateClusterSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateClusterSubnetGroupMessage"}, "output":{ "shape":"CreateClusterSubnetGroupResult", "resultWrapper":"CreateClusterSubnetGroupResult" }, "errors":[ {"shape":"ClusterSubnetGroupAlreadyExistsFault"}, {"shape":"ClusterSubnetGroupQuotaExceededFault"}, {"shape":"ClusterSubnetQuotaExceededFault"}, {"shape":"InvalidSubnet"}, {"shape":"UnauthorizedOperation"}, {"shape":"TagLimitExceededFault"}, {"shape":"InvalidTagFault"}, {"shape":"DependentServiceRequestThrottlingFault"} ] }, "CreateEventSubscription":{ "name":"CreateEventSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateEventSubscriptionMessage"}, "output":{ "shape":"CreateEventSubscriptionResult", "resultWrapper":"CreateEventSubscriptionResult" }, "errors":[ {"shape":"EventSubscriptionQuotaExceededFault"}, {"shape":"SubscriptionAlreadyExistFault"}, {"shape":"SNSInvalidTopicFault"}, {"shape":"SNSNoAuthorizationFault"}, {"shape":"SNSTopicArnNotFoundFault"}, {"shape":"SubscriptionEventIdNotFoundFault"}, {"shape":"SubscriptionCategoryNotFoundFault"}, {"shape":"SubscriptionSeverityNotFoundFault"}, {"shape":"SourceNotFoundFault"}, {"shape":"TagLimitExceededFault"}, {"shape":"InvalidTagFault"} ] }, "CreateHsmClientCertificate":{ "name":"CreateHsmClientCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateHsmClientCertificateMessage"}, "output":{ "shape":"CreateHsmClientCertificateResult", "resultWrapper":"CreateHsmClientCertificateResult" }, "errors":[ {"shape":"HsmClientCertificateAlreadyExistsFault"}, {"shape":"HsmClientCertificateQuotaExceededFault"}, {"shape":"TagLimitExceededFault"}, {"shape":"InvalidTagFault"} ] }, "CreateHsmConfiguration":{ "name":"CreateHsmConfiguration", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateHsmConfigurationMessage"}, "output":{ "shape":"CreateHsmConfigurationResult", "resultWrapper":"CreateHsmConfigurationResult" }, "errors":[ {"shape":"HsmConfigurationAlreadyExistsFault"}, {"shape":"HsmConfigurationQuotaExceededFault"}, {"shape":"TagLimitExceededFault"}, {"shape":"InvalidTagFault"} ] }, "CreateSnapshotCopyGrant":{ "name":"CreateSnapshotCopyGrant", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSnapshotCopyGrantMessage"}, "output":{ "shape":"CreateSnapshotCopyGrantResult", "resultWrapper":"CreateSnapshotCopyGrantResult" }, "errors":[ {"shape":"SnapshotCopyGrantAlreadyExistsFault"}, {"shape":"SnapshotCopyGrantQuotaExceededFault"}, {"shape":"LimitExceededFault"}, {"shape":"TagLimitExceededFault"}, {"shape":"InvalidTagFault"}, {"shape":"DependentServiceRequestThrottlingFault"} ] }, "CreateTags":{ "name":"CreateTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateTagsMessage"}, "errors":[ {"shape":"TagLimitExceededFault"}, {"shape":"ResourceNotFoundFault"}, {"shape":"InvalidTagFault"} ] }, "DeleteCluster":{ "name":"DeleteCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteClusterMessage"}, "output":{ "shape":"DeleteClusterResult", "resultWrapper":"DeleteClusterResult" }, "errors":[ {"shape":"ClusterNotFoundFault"}, {"shape":"InvalidClusterStateFault"}, {"shape":"ClusterSnapshotAlreadyExistsFault"}, {"shape":"ClusterSnapshotQuotaExceededFault"} ] }, "DeleteClusterParameterGroup":{ "name":"DeleteClusterParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteClusterParameterGroupMessage"}, "errors":[ {"shape":"InvalidClusterParameterGroupStateFault"}, {"shape":"ClusterParameterGroupNotFoundFault"} ] }, "DeleteClusterSecurityGroup":{ "name":"DeleteClusterSecurityGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteClusterSecurityGroupMessage"}, "errors":[ {"shape":"InvalidClusterSecurityGroupStateFault"}, {"shape":"ClusterSecurityGroupNotFoundFault"} ] }, "DeleteClusterSnapshot":{ "name":"DeleteClusterSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteClusterSnapshotMessage"}, "output":{ "shape":"DeleteClusterSnapshotResult", "resultWrapper":"DeleteClusterSnapshotResult" }, "errors":[ {"shape":"InvalidClusterSnapshotStateFault"}, {"shape":"ClusterSnapshotNotFoundFault"} ] }, "DeleteClusterSubnetGroup":{ "name":"DeleteClusterSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteClusterSubnetGroupMessage"}, "errors":[ {"shape":"InvalidClusterSubnetGroupStateFault"}, {"shape":"InvalidClusterSubnetStateFault"}, {"shape":"ClusterSubnetGroupNotFoundFault"} ] }, "DeleteEventSubscription":{ "name":"DeleteEventSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteEventSubscriptionMessage"}, "errors":[ {"shape":"SubscriptionNotFoundFault"}, {"shape":"InvalidSubscriptionStateFault"} ] }, "DeleteHsmClientCertificate":{ "name":"DeleteHsmClientCertificate", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteHsmClientCertificateMessage"}, "errors":[ {"shape":"InvalidHsmClientCertificateStateFault"}, {"shape":"HsmClientCertificateNotFoundFault"} ] }, "DeleteHsmConfiguration":{ "name":"DeleteHsmConfiguration", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteHsmConfigurationMessage"}, "errors":[ {"shape":"InvalidHsmConfigurationStateFault"}, {"shape":"HsmConfigurationNotFoundFault"} ] }, "DeleteSnapshotCopyGrant":{ "name":"DeleteSnapshotCopyGrant", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSnapshotCopyGrantMessage"}, "errors":[ {"shape":"InvalidSnapshotCopyGrantStateFault"}, {"shape":"SnapshotCopyGrantNotFoundFault"} ] }, "DeleteTags":{ "name":"DeleteTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteTagsMessage"}, "errors":[ {"shape":"ResourceNotFoundFault"}, {"shape":"InvalidTagFault"} ] }, "DescribeClusterParameterGroups":{ "name":"DescribeClusterParameterGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeClusterParameterGroupsMessage"}, "output":{ "shape":"ClusterParameterGroupsMessage", "resultWrapper":"DescribeClusterParameterGroupsResult" }, "errors":[ {"shape":"ClusterParameterGroupNotFoundFault"}, {"shape":"InvalidTagFault"} ] }, "DescribeClusterParameters":{ "name":"DescribeClusterParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeClusterParametersMessage"}, "output":{ "shape":"ClusterParameterGroupDetails", "resultWrapper":"DescribeClusterParametersResult" }, "errors":[ {"shape":"ClusterParameterGroupNotFoundFault"} ] }, "DescribeClusterSecurityGroups":{ "name":"DescribeClusterSecurityGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeClusterSecurityGroupsMessage"}, "output":{ "shape":"ClusterSecurityGroupMessage", "resultWrapper":"DescribeClusterSecurityGroupsResult" }, "errors":[ {"shape":"ClusterSecurityGroupNotFoundFault"}, {"shape":"InvalidTagFault"} ] }, "DescribeClusterSnapshots":{ "name":"DescribeClusterSnapshots", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeClusterSnapshotsMessage"}, "output":{ "shape":"SnapshotMessage", "resultWrapper":"DescribeClusterSnapshotsResult" }, "errors":[ {"shape":"ClusterSnapshotNotFoundFault"}, {"shape":"InvalidTagFault"} ] }, "DescribeClusterSubnetGroups":{ "name":"DescribeClusterSubnetGroups", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeClusterSubnetGroupsMessage"}, "output":{ "shape":"ClusterSubnetGroupMessage", "resultWrapper":"DescribeClusterSubnetGroupsResult" }, "errors":[ {"shape":"ClusterSubnetGroupNotFoundFault"}, {"shape":"InvalidTagFault"} ] }, "DescribeClusterVersions":{ "name":"DescribeClusterVersions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeClusterVersionsMessage"}, "output":{ "shape":"ClusterVersionsMessage", "resultWrapper":"DescribeClusterVersionsResult" } }, "DescribeClusters":{ "name":"DescribeClusters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeClustersMessage"}, "output":{ "shape":"ClustersMessage", "resultWrapper":"DescribeClustersResult" }, "errors":[ {"shape":"ClusterNotFoundFault"}, {"shape":"InvalidTagFault"} ] }, "DescribeDefaultClusterParameters":{ "name":"DescribeDefaultClusterParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDefaultClusterParametersMessage"}, "output":{ "shape":"DescribeDefaultClusterParametersResult", "resultWrapper":"DescribeDefaultClusterParametersResult" } }, "DescribeEventCategories":{ "name":"DescribeEventCategories", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventCategoriesMessage"}, "output":{ "shape":"EventCategoriesMessage", "resultWrapper":"DescribeEventCategoriesResult" } }, "DescribeEventSubscriptions":{ "name":"DescribeEventSubscriptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventSubscriptionsMessage"}, "output":{ "shape":"EventSubscriptionsMessage", "resultWrapper":"DescribeEventSubscriptionsResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"} ] }, "DescribeEvents":{ "name":"DescribeEvents", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeEventsMessage"}, "output":{ "shape":"EventsMessage", "resultWrapper":"DescribeEventsResult" } }, "DescribeHsmClientCertificates":{ "name":"DescribeHsmClientCertificates", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeHsmClientCertificatesMessage"}, "output":{ "shape":"HsmClientCertificateMessage", "resultWrapper":"DescribeHsmClientCertificatesResult" }, "errors":[ {"shape":"HsmClientCertificateNotFoundFault"}, {"shape":"InvalidTagFault"} ] }, "DescribeHsmConfigurations":{ "name":"DescribeHsmConfigurations", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeHsmConfigurationsMessage"}, "output":{ "shape":"HsmConfigurationMessage", "resultWrapper":"DescribeHsmConfigurationsResult" }, "errors":[ {"shape":"HsmConfigurationNotFoundFault"}, {"shape":"InvalidTagFault"} ] }, "DescribeLoggingStatus":{ "name":"DescribeLoggingStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeLoggingStatusMessage"}, "output":{ "shape":"LoggingStatus", "resultWrapper":"DescribeLoggingStatusResult" }, "errors":[ {"shape":"ClusterNotFoundFault"} ] }, "DescribeOrderableClusterOptions":{ "name":"DescribeOrderableClusterOptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeOrderableClusterOptionsMessage"}, "output":{ "shape":"OrderableClusterOptionsMessage", "resultWrapper":"DescribeOrderableClusterOptionsResult" } }, "DescribeReservedNodeOfferings":{ "name":"DescribeReservedNodeOfferings", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedNodeOfferingsMessage"}, "output":{ "shape":"ReservedNodeOfferingsMessage", "resultWrapper":"DescribeReservedNodeOfferingsResult" }, "errors":[ {"shape":"ReservedNodeOfferingNotFoundFault"}, {"shape":"UnsupportedOperationFault"} ] }, "DescribeReservedNodes":{ "name":"DescribeReservedNodes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeReservedNodesMessage"}, "output":{ "shape":"ReservedNodesMessage", "resultWrapper":"DescribeReservedNodesResult" }, "errors":[ {"shape":"ReservedNodeNotFoundFault"} ] }, "DescribeResize":{ "name":"DescribeResize", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeResizeMessage"}, "output":{ "shape":"ResizeProgressMessage", "resultWrapper":"DescribeResizeResult" }, "errors":[ {"shape":"ClusterNotFoundFault"}, {"shape":"ResizeNotFoundFault"} ] }, "DescribeSnapshotCopyGrants":{ "name":"DescribeSnapshotCopyGrants", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSnapshotCopyGrantsMessage"}, "output":{ "shape":"SnapshotCopyGrantMessage", "resultWrapper":"DescribeSnapshotCopyGrantsResult" }, "errors":[ {"shape":"SnapshotCopyGrantNotFoundFault"}, {"shape":"InvalidTagFault"} ] }, "DescribeTableRestoreStatus":{ "name":"DescribeTableRestoreStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTableRestoreStatusMessage"}, "output":{ "shape":"TableRestoreStatusMessage", "resultWrapper":"DescribeTableRestoreStatusResult" }, "errors":[ {"shape":"TableRestoreNotFoundFault"}, {"shape":"ClusterNotFoundFault"} ] }, "DescribeTags":{ "name":"DescribeTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTagsMessage"}, "output":{ "shape":"TaggedResourceListMessage", "resultWrapper":"DescribeTagsResult" }, "errors":[ {"shape":"ResourceNotFoundFault"}, {"shape":"InvalidTagFault"} ] }, "DisableLogging":{ "name":"DisableLogging", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableLoggingMessage"}, "output":{ "shape":"LoggingStatus", "resultWrapper":"DisableLoggingResult" }, "errors":[ {"shape":"ClusterNotFoundFault"} ] }, "DisableSnapshotCopy":{ "name":"DisableSnapshotCopy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableSnapshotCopyMessage"}, "output":{ "shape":"DisableSnapshotCopyResult", "resultWrapper":"DisableSnapshotCopyResult" }, "errors":[ {"shape":"ClusterNotFoundFault"}, {"shape":"SnapshotCopyAlreadyDisabledFault"}, {"shape":"InvalidClusterStateFault"}, {"shape":"UnauthorizedOperation"} ] }, "EnableLogging":{ "name":"EnableLogging", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableLoggingMessage"}, "output":{ "shape":"LoggingStatus", "resultWrapper":"EnableLoggingResult" }, "errors":[ {"shape":"ClusterNotFoundFault"}, {"shape":"BucketNotFoundFault"}, {"shape":"InsufficientS3BucketPolicyFault"}, {"shape":"InvalidS3KeyPrefixFault"}, {"shape":"InvalidS3BucketNameFault"} ] }, "EnableSnapshotCopy":{ "name":"EnableSnapshotCopy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableSnapshotCopyMessage"}, "output":{ "shape":"EnableSnapshotCopyResult", "resultWrapper":"EnableSnapshotCopyResult" }, "errors":[ {"shape":"IncompatibleOrderableOptions"}, {"shape":"InvalidClusterStateFault"}, {"shape":"ClusterNotFoundFault"}, {"shape":"CopyToRegionDisabledFault"}, {"shape":"SnapshotCopyAlreadyEnabledFault"}, {"shape":"UnknownSnapshotCopyRegionFault"}, {"shape":"UnauthorizedOperation"}, {"shape":"SnapshotCopyGrantNotFoundFault"}, {"shape":"LimitExceededFault"}, {"shape":"DependentServiceRequestThrottlingFault"} ] }, "ModifyCluster":{ "name":"ModifyCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyClusterMessage"}, "output":{ "shape":"ModifyClusterResult", "resultWrapper":"ModifyClusterResult" }, "errors":[ {"shape":"InvalidClusterStateFault"}, {"shape":"InvalidClusterSecurityGroupStateFault"}, {"shape":"ClusterNotFoundFault"}, {"shape":"NumberOfNodesQuotaExceededFault"}, {"shape":"ClusterSecurityGroupNotFoundFault"}, {"shape":"ClusterParameterGroupNotFoundFault"}, {"shape":"InsufficientClusterCapacityFault"}, {"shape":"UnsupportedOptionFault"}, {"shape":"UnauthorizedOperation"}, {"shape":"HsmClientCertificateNotFoundFault"}, {"shape":"HsmConfigurationNotFoundFault"}, {"shape":"ClusterAlreadyExistsFault"}, {"shape":"LimitExceededFault"}, {"shape":"DependentServiceRequestThrottlingFault"}, {"shape":"InvalidElasticIpFault"} ] }, "ModifyClusterIamRoles":{ "name":"ModifyClusterIamRoles", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyClusterIamRolesMessage"}, "output":{ "shape":"ModifyClusterIamRolesResult", "resultWrapper":"ModifyClusterIamRolesResult" }, "errors":[ {"shape":"InvalidClusterStateFault"}, {"shape":"ClusterNotFoundFault"} ] }, "ModifyClusterParameterGroup":{ "name":"ModifyClusterParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyClusterParameterGroupMessage"}, "output":{ "shape":"ClusterParameterGroupNameMessage", "resultWrapper":"ModifyClusterParameterGroupResult" }, "errors":[ {"shape":"ClusterParameterGroupNotFoundFault"}, {"shape":"InvalidClusterParameterGroupStateFault"} ] }, "ModifyClusterSubnetGroup":{ "name":"ModifyClusterSubnetGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyClusterSubnetGroupMessage"}, "output":{ "shape":"ModifyClusterSubnetGroupResult", "resultWrapper":"ModifyClusterSubnetGroupResult" }, "errors":[ {"shape":"ClusterSubnetGroupNotFoundFault"}, {"shape":"ClusterSubnetQuotaExceededFault"}, {"shape":"SubnetAlreadyInUse"}, {"shape":"InvalidSubnet"}, {"shape":"UnauthorizedOperation"}, {"shape":"DependentServiceRequestThrottlingFault"} ] }, "ModifyEventSubscription":{ "name":"ModifyEventSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyEventSubscriptionMessage"}, "output":{ "shape":"ModifyEventSubscriptionResult", "resultWrapper":"ModifyEventSubscriptionResult" }, "errors":[ {"shape":"SubscriptionNotFoundFault"}, {"shape":"SNSInvalidTopicFault"}, {"shape":"SNSNoAuthorizationFault"}, {"shape":"SNSTopicArnNotFoundFault"}, {"shape":"SubscriptionEventIdNotFoundFault"}, {"shape":"SubscriptionCategoryNotFoundFault"}, {"shape":"SubscriptionSeverityNotFoundFault"}, {"shape":"SourceNotFoundFault"}, {"shape":"InvalidSubscriptionStateFault"} ] }, "ModifySnapshotCopyRetentionPeriod":{ "name":"ModifySnapshotCopyRetentionPeriod", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifySnapshotCopyRetentionPeriodMessage"}, "output":{ "shape":"ModifySnapshotCopyRetentionPeriodResult", "resultWrapper":"ModifySnapshotCopyRetentionPeriodResult" }, "errors":[ {"shape":"ClusterNotFoundFault"}, {"shape":"SnapshotCopyDisabledFault"}, {"shape":"UnauthorizedOperation"}, {"shape":"InvalidClusterStateFault"} ] }, "PurchaseReservedNodeOffering":{ "name":"PurchaseReservedNodeOffering", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PurchaseReservedNodeOfferingMessage"}, "output":{ "shape":"PurchaseReservedNodeOfferingResult", "resultWrapper":"PurchaseReservedNodeOfferingResult" }, "errors":[ {"shape":"ReservedNodeOfferingNotFoundFault"}, {"shape":"ReservedNodeAlreadyExistsFault"}, {"shape":"ReservedNodeQuotaExceededFault"}, {"shape":"UnsupportedOperationFault"} ] }, "RebootCluster":{ "name":"RebootCluster", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RebootClusterMessage"}, "output":{ "shape":"RebootClusterResult", "resultWrapper":"RebootClusterResult" }, "errors":[ {"shape":"InvalidClusterStateFault"}, {"shape":"ClusterNotFoundFault"} ] }, "ResetClusterParameterGroup":{ "name":"ResetClusterParameterGroup", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetClusterParameterGroupMessage"}, "output":{ "shape":"ClusterParameterGroupNameMessage", "resultWrapper":"ResetClusterParameterGroupResult" }, "errors":[ {"shape":"InvalidClusterParameterGroupStateFault"}, {"shape":"ClusterParameterGroupNotFoundFault"} ] }, "RestoreFromClusterSnapshot":{ "name":"RestoreFromClusterSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreFromClusterSnapshotMessage"}, "output":{ "shape":"RestoreFromClusterSnapshotResult", "resultWrapper":"RestoreFromClusterSnapshotResult" }, "errors":[ {"shape":"AccessToSnapshotDeniedFault"}, {"shape":"ClusterAlreadyExistsFault"}, {"shape":"ClusterSnapshotNotFoundFault"}, {"shape":"ClusterQuotaExceededFault"}, {"shape":"InsufficientClusterCapacityFault"}, {"shape":"InvalidClusterSnapshotStateFault"}, {"shape":"InvalidRestoreFault"}, {"shape":"NumberOfNodesQuotaExceededFault"}, {"shape":"NumberOfNodesPerClusterLimitExceededFault"}, {"shape":"InvalidVPCNetworkStateFault"}, {"shape":"InvalidClusterSubnetGroupStateFault"}, {"shape":"InvalidSubnet"}, {"shape":"ClusterSubnetGroupNotFoundFault"}, {"shape":"UnauthorizedOperation"}, {"shape":"HsmClientCertificateNotFoundFault"}, {"shape":"HsmConfigurationNotFoundFault"}, {"shape":"InvalidElasticIpFault"}, {"shape":"ClusterParameterGroupNotFoundFault"}, {"shape":"ClusterSecurityGroupNotFoundFault"}, {"shape":"LimitExceededFault"}, {"shape":"DependentServiceRequestThrottlingFault"} ] }, "RestoreTableFromClusterSnapshot":{ "name":"RestoreTableFromClusterSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RestoreTableFromClusterSnapshotMessage"}, "output":{ "shape":"RestoreTableFromClusterSnapshotResult", "resultWrapper":"RestoreTableFromClusterSnapshotResult" }, "errors":[ {"shape":"ClusterSnapshotNotFoundFault"}, {"shape":"InProgressTableRestoreQuotaExceededFault"}, {"shape":"InvalidClusterSnapshotStateFault"}, {"shape":"InvalidTableRestoreArgumentFault"}, {"shape":"ClusterNotFoundFault"}, {"shape":"InvalidClusterStateFault"}, {"shape":"UnsupportedOperationFault"} ] }, "RevokeClusterSecurityGroupIngress":{ "name":"RevokeClusterSecurityGroupIngress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RevokeClusterSecurityGroupIngressMessage"}, "output":{ "shape":"RevokeClusterSecurityGroupIngressResult", "resultWrapper":"RevokeClusterSecurityGroupIngressResult" }, "errors":[ {"shape":"ClusterSecurityGroupNotFoundFault"}, {"shape":"AuthorizationNotFoundFault"}, {"shape":"InvalidClusterSecurityGroupStateFault"} ] }, "RevokeSnapshotAccess":{ "name":"RevokeSnapshotAccess", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RevokeSnapshotAccessMessage"}, "output":{ "shape":"RevokeSnapshotAccessResult", "resultWrapper":"RevokeSnapshotAccessResult" }, "errors":[ {"shape":"AccessToSnapshotDeniedFault"}, {"shape":"AuthorizationNotFoundFault"}, {"shape":"ClusterSnapshotNotFoundFault"} ] }, "RotateEncryptionKey":{ "name":"RotateEncryptionKey", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RotateEncryptionKeyMessage"}, "output":{ "shape":"RotateEncryptionKeyResult", "resultWrapper":"RotateEncryptionKeyResult" }, "errors":[ {"shape":"ClusterNotFoundFault"}, {"shape":"InvalidClusterStateFault"}, {"shape":"DependentServiceRequestThrottlingFault"} ] } }, "shapes":{ "AccessToSnapshotDeniedFault":{ "type":"structure", "members":{ }, "error":{ "code":"AccessToSnapshotDenied", "httpStatusCode":400, "senderFault":true }, "exception":true }, "AccountWithRestoreAccess":{ "type":"structure", "members":{ "AccountId":{"shape":"String"} } }, "AccountsWithRestoreAccessList":{ "type":"list", "member":{ "shape":"AccountWithRestoreAccess", "locationName":"AccountWithRestoreAccess" } }, "AuthorizationAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "AuthorizationNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "AuthorizationQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"AuthorizationQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "AuthorizeClusterSecurityGroupIngressMessage":{ "type":"structure", "required":["ClusterSecurityGroupName"], "members":{ "ClusterSecurityGroupName":{"shape":"String"}, "CIDRIP":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "AuthorizeClusterSecurityGroupIngressResult":{ "type":"structure", "members":{ "ClusterSecurityGroup":{"shape":"ClusterSecurityGroup"} } }, "AuthorizeSnapshotAccessMessage":{ "type":"structure", "required":[ "SnapshotIdentifier", "AccountWithRestoreAccess" ], "members":{ "SnapshotIdentifier":{"shape":"String"}, "SnapshotClusterIdentifier":{"shape":"String"}, "AccountWithRestoreAccess":{"shape":"String"} } }, "AuthorizeSnapshotAccessResult":{ "type":"structure", "members":{ "Snapshot":{"shape":"Snapshot"} } }, "AvailabilityZone":{ "type":"structure", "members":{ "Name":{"shape":"String"} }, "wrapper":true }, "AvailabilityZoneList":{ "type":"list", "member":{ "shape":"AvailabilityZone", "locationName":"AvailabilityZone" } }, "Boolean":{"type":"boolean"}, "BooleanOptional":{"type":"boolean"}, "BucketNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"BucketNotFoundFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Cluster":{ "type":"structure", "members":{ "ClusterIdentifier":{"shape":"String"}, "NodeType":{"shape":"String"}, "ClusterStatus":{"shape":"String"}, "ModifyStatus":{"shape":"String"}, "MasterUsername":{"shape":"String"}, "DBName":{"shape":"String"}, "Endpoint":{"shape":"Endpoint"}, "ClusterCreateTime":{"shape":"TStamp"}, "AutomatedSnapshotRetentionPeriod":{"shape":"Integer"}, "ClusterSecurityGroups":{"shape":"ClusterSecurityGroupMembershipList"}, "VpcSecurityGroups":{"shape":"VpcSecurityGroupMembershipList"}, "ClusterParameterGroups":{"shape":"ClusterParameterGroupStatusList"}, "ClusterSubnetGroupName":{"shape":"String"}, "VpcId":{"shape":"String"}, "AvailabilityZone":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"}, "PendingModifiedValues":{"shape":"PendingModifiedValues"}, "ClusterVersion":{"shape":"String"}, "AllowVersionUpgrade":{"shape":"Boolean"}, "NumberOfNodes":{"shape":"Integer"}, "PubliclyAccessible":{"shape":"Boolean"}, "Encrypted":{"shape":"Boolean"}, "RestoreStatus":{"shape":"RestoreStatus"}, "HsmStatus":{"shape":"HsmStatus"}, "ClusterSnapshotCopyStatus":{"shape":"ClusterSnapshotCopyStatus"}, "ClusterPublicKey":{"shape":"String"}, "ClusterNodes":{"shape":"ClusterNodesList"}, "ElasticIpStatus":{"shape":"ElasticIpStatus"}, "ClusterRevisionNumber":{"shape":"String"}, "Tags":{"shape":"TagList"}, "KmsKeyId":{"shape":"String"}, "EnhancedVpcRouting":{"shape":"Boolean"}, "IamRoles":{"shape":"ClusterIamRoleList"} }, "wrapper":true }, "ClusterAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"ClusterAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ClusterIamRole":{ "type":"structure", "members":{ "IamRoleArn":{"shape":"String"}, "ApplyStatus":{"shape":"String"} } }, "ClusterIamRoleList":{ "type":"list", "member":{ "shape":"ClusterIamRole", "locationName":"ClusterIamRole" } }, "ClusterList":{ "type":"list", "member":{ "shape":"Cluster", "locationName":"Cluster" } }, "ClusterNode":{ "type":"structure", "members":{ "NodeRole":{"shape":"String"}, "PrivateIPAddress":{"shape":"String"}, "PublicIPAddress":{"shape":"String"} } }, "ClusterNodesList":{ "type":"list", "member":{"shape":"ClusterNode"} }, "ClusterNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ClusterNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ClusterParameterGroup":{ "type":"structure", "members":{ "ParameterGroupName":{"shape":"String"}, "ParameterGroupFamily":{"shape":"String"}, "Description":{"shape":"String"}, "Tags":{"shape":"TagList"} }, "wrapper":true }, "ClusterParameterGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"ClusterParameterGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ClusterParameterGroupDetails":{ "type":"structure", "members":{ "Parameters":{"shape":"ParametersList"}, "Marker":{"shape":"String"} } }, "ClusterParameterGroupNameMessage":{ "type":"structure", "members":{ "ParameterGroupName":{"shape":"String"}, "ParameterGroupStatus":{"shape":"String"} } }, "ClusterParameterGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ClusterParameterGroupNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ClusterParameterGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"ClusterParameterGroupQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ClusterParameterGroupStatus":{ "type":"structure", "members":{ "ParameterGroupName":{"shape":"String"}, "ParameterApplyStatus":{"shape":"String"}, "ClusterParameterStatusList":{"shape":"ClusterParameterStatusList"} } }, "ClusterParameterGroupStatusList":{ "type":"list", "member":{ "shape":"ClusterParameterGroupStatus", "locationName":"ClusterParameterGroup" } }, "ClusterParameterGroupsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ParameterGroups":{"shape":"ParameterGroupList"} } }, "ClusterParameterStatus":{ "type":"structure", "members":{ "ParameterName":{"shape":"String"}, "ParameterApplyStatus":{"shape":"String"}, "ParameterApplyErrorDescription":{"shape":"String"} } }, "ClusterParameterStatusList":{ "type":"list", "member":{"shape":"ClusterParameterStatus"} }, "ClusterQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"ClusterQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ClusterSecurityGroup":{ "type":"structure", "members":{ "ClusterSecurityGroupName":{"shape":"String"}, "Description":{"shape":"String"}, "EC2SecurityGroups":{"shape":"EC2SecurityGroupList"}, "IPRanges":{"shape":"IPRangeList"}, "Tags":{"shape":"TagList"} }, "wrapper":true }, "ClusterSecurityGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"ClusterSecurityGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ClusterSecurityGroupMembership":{ "type":"structure", "members":{ "ClusterSecurityGroupName":{"shape":"String"}, "Status":{"shape":"String"} } }, "ClusterSecurityGroupMembershipList":{ "type":"list", "member":{ "shape":"ClusterSecurityGroupMembership", "locationName":"ClusterSecurityGroup" } }, "ClusterSecurityGroupMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ClusterSecurityGroups":{"shape":"ClusterSecurityGroups"} } }, "ClusterSecurityGroupNameList":{ "type":"list", "member":{ "shape":"String", "locationName":"ClusterSecurityGroupName" } }, "ClusterSecurityGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ClusterSecurityGroupNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ClusterSecurityGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"QuotaExceeded.ClusterSecurityGroup", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ClusterSecurityGroups":{ "type":"list", "member":{ "shape":"ClusterSecurityGroup", "locationName":"ClusterSecurityGroup" } }, "ClusterSnapshotAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"ClusterSnapshotAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ClusterSnapshotCopyStatus":{ "type":"structure", "members":{ "DestinationRegion":{"shape":"String"}, "RetentionPeriod":{"shape":"Long"}, "SnapshotCopyGrantName":{"shape":"String"} } }, "ClusterSnapshotNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ClusterSnapshotNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ClusterSnapshotQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"ClusterSnapshotQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ClusterSubnetGroup":{ "type":"structure", "members":{ "ClusterSubnetGroupName":{"shape":"String"}, "Description":{"shape":"String"}, "VpcId":{"shape":"String"}, "SubnetGroupStatus":{"shape":"String"}, "Subnets":{"shape":"SubnetList"}, "Tags":{"shape":"TagList"} }, "wrapper":true }, "ClusterSubnetGroupAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"ClusterSubnetGroupAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ClusterSubnetGroupMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ClusterSubnetGroups":{"shape":"ClusterSubnetGroups"} } }, "ClusterSubnetGroupNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ClusterSubnetGroupNotFoundFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ClusterSubnetGroupQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"ClusterSubnetGroupQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ClusterSubnetGroups":{ "type":"list", "member":{ "shape":"ClusterSubnetGroup", "locationName":"ClusterSubnetGroup" } }, "ClusterSubnetQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"ClusterSubnetQuotaExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ClusterVersion":{ "type":"structure", "members":{ "ClusterVersion":{"shape":"String"}, "ClusterParameterGroupFamily":{"shape":"String"}, "Description":{"shape":"String"} } }, "ClusterVersionList":{ "type":"list", "member":{ "shape":"ClusterVersion", "locationName":"ClusterVersion" } }, "ClusterVersionsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ClusterVersions":{"shape":"ClusterVersionList"} } }, "ClustersMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "Clusters":{"shape":"ClusterList"} } }, "CopyClusterSnapshotMessage":{ "type":"structure", "required":[ "SourceSnapshotIdentifier", "TargetSnapshotIdentifier" ], "members":{ "SourceSnapshotIdentifier":{"shape":"String"}, "SourceSnapshotClusterIdentifier":{"shape":"String"}, "TargetSnapshotIdentifier":{"shape":"String"} } }, "CopyClusterSnapshotResult":{ "type":"structure", "members":{ "Snapshot":{"shape":"Snapshot"} } }, "CopyToRegionDisabledFault":{ "type":"structure", "members":{ }, "error":{ "code":"CopyToRegionDisabledFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "CreateClusterMessage":{ "type":"structure", "required":[ "ClusterIdentifier", "NodeType", "MasterUsername", "MasterUserPassword" ], "members":{ "DBName":{"shape":"String"}, "ClusterIdentifier":{"shape":"String"}, "ClusterType":{"shape":"String"}, "NodeType":{"shape":"String"}, "MasterUsername":{"shape":"String"}, "MasterUserPassword":{"shape":"String"}, "ClusterSecurityGroups":{"shape":"ClusterSecurityGroupNameList"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "ClusterSubnetGroupName":{"shape":"String"}, "AvailabilityZone":{"shape":"String"}, "PreferredMaintenanceWindow":{"shape":"String"}, "ClusterParameterGroupName":{"shape":"String"}, "AutomatedSnapshotRetentionPeriod":{"shape":"IntegerOptional"}, "Port":{"shape":"IntegerOptional"}, "ClusterVersion":{"shape":"String"}, "AllowVersionUpgrade":{"shape":"BooleanOptional"}, "NumberOfNodes":{"shape":"IntegerOptional"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "Encrypted":{"shape":"BooleanOptional"}, "HsmClientCertificateIdentifier":{"shape":"String"}, "HsmConfigurationIdentifier":{"shape":"String"}, "ElasticIp":{"shape":"String"}, "Tags":{"shape":"TagList"}, "KmsKeyId":{"shape":"String"}, "EnhancedVpcRouting":{"shape":"BooleanOptional"}, "AdditionalInfo":{"shape":"String"}, "IamRoles":{"shape":"IamRoleArnList"} } }, "CreateClusterParameterGroupMessage":{ "type":"structure", "required":[ "ParameterGroupName", "ParameterGroupFamily", "Description" ], "members":{ "ParameterGroupName":{"shape":"String"}, "ParameterGroupFamily":{"shape":"String"}, "Description":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateClusterParameterGroupResult":{ "type":"structure", "members":{ "ClusterParameterGroup":{"shape":"ClusterParameterGroup"} } }, "CreateClusterResult":{ "type":"structure", "members":{ "Cluster":{"shape":"Cluster"} } }, "CreateClusterSecurityGroupMessage":{ "type":"structure", "required":[ "ClusterSecurityGroupName", "Description" ], "members":{ "ClusterSecurityGroupName":{"shape":"String"}, "Description":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateClusterSecurityGroupResult":{ "type":"structure", "members":{ "ClusterSecurityGroup":{"shape":"ClusterSecurityGroup"} } }, "CreateClusterSnapshotMessage":{ "type":"structure", "required":[ "SnapshotIdentifier", "ClusterIdentifier" ], "members":{ "SnapshotIdentifier":{"shape":"String"}, "ClusterIdentifier":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateClusterSnapshotResult":{ "type":"structure", "members":{ "Snapshot":{"shape":"Snapshot"} } }, "CreateClusterSubnetGroupMessage":{ "type":"structure", "required":[ "ClusterSubnetGroupName", "Description", "SubnetIds" ], "members":{ "ClusterSubnetGroupName":{"shape":"String"}, "Description":{"shape":"String"}, "SubnetIds":{"shape":"SubnetIdentifierList"}, "Tags":{"shape":"TagList"} } }, "CreateClusterSubnetGroupResult":{ "type":"structure", "members":{ "ClusterSubnetGroup":{"shape":"ClusterSubnetGroup"} } }, "CreateEventSubscriptionMessage":{ "type":"structure", "required":[ "SubscriptionName", "SnsTopicArn" ], "members":{ "SubscriptionName":{"shape":"String"}, "SnsTopicArn":{"shape":"String"}, "SourceType":{"shape":"String"}, "SourceIds":{"shape":"SourceIdsList"}, "EventCategories":{"shape":"EventCategoriesList"}, "Severity":{"shape":"String"}, "Enabled":{"shape":"BooleanOptional"}, "Tags":{"shape":"TagList"} } }, "CreateEventSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "CreateHsmClientCertificateMessage":{ "type":"structure", "required":["HsmClientCertificateIdentifier"], "members":{ "HsmClientCertificateIdentifier":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateHsmClientCertificateResult":{ "type":"structure", "members":{ "HsmClientCertificate":{"shape":"HsmClientCertificate"} } }, "CreateHsmConfigurationMessage":{ "type":"structure", "required":[ "HsmConfigurationIdentifier", "Description", "HsmIpAddress", "HsmPartitionName", "HsmPartitionPassword", "HsmServerPublicCertificate" ], "members":{ "HsmConfigurationIdentifier":{"shape":"String"}, "Description":{"shape":"String"}, "HsmIpAddress":{"shape":"String"}, "HsmPartitionName":{"shape":"String"}, "HsmPartitionPassword":{"shape":"String"}, "HsmServerPublicCertificate":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateHsmConfigurationResult":{ "type":"structure", "members":{ "HsmConfiguration":{"shape":"HsmConfiguration"} } }, "CreateSnapshotCopyGrantMessage":{ "type":"structure", "required":["SnapshotCopyGrantName"], "members":{ "SnapshotCopyGrantName":{"shape":"String"}, "KmsKeyId":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "CreateSnapshotCopyGrantResult":{ "type":"structure", "members":{ "SnapshotCopyGrant":{"shape":"SnapshotCopyGrant"} } }, "CreateTagsMessage":{ "type":"structure", "required":[ "ResourceName", "Tags" ], "members":{ "ResourceName":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "DefaultClusterParameters":{ "type":"structure", "members":{ "ParameterGroupFamily":{"shape":"String"}, "Marker":{"shape":"String"}, "Parameters":{"shape":"ParametersList"} }, "wrapper":true }, "DeleteClusterMessage":{ "type":"structure", "required":["ClusterIdentifier"], "members":{ "ClusterIdentifier":{"shape":"String"}, "SkipFinalClusterSnapshot":{"shape":"Boolean"}, "FinalClusterSnapshotIdentifier":{"shape":"String"} } }, "DeleteClusterParameterGroupMessage":{ "type":"structure", "required":["ParameterGroupName"], "members":{ "ParameterGroupName":{"shape":"String"} } }, "DeleteClusterResult":{ "type":"structure", "members":{ "Cluster":{"shape":"Cluster"} } }, "DeleteClusterSecurityGroupMessage":{ "type":"structure", "required":["ClusterSecurityGroupName"], "members":{ "ClusterSecurityGroupName":{"shape":"String"} } }, "DeleteClusterSnapshotMessage":{ "type":"structure", "required":["SnapshotIdentifier"], "members":{ "SnapshotIdentifier":{"shape":"String"}, "SnapshotClusterIdentifier":{"shape":"String"} } }, "DeleteClusterSnapshotResult":{ "type":"structure", "members":{ "Snapshot":{"shape":"Snapshot"} } }, "DeleteClusterSubnetGroupMessage":{ "type":"structure", "required":["ClusterSubnetGroupName"], "members":{ "ClusterSubnetGroupName":{"shape":"String"} } }, "DeleteEventSubscriptionMessage":{ "type":"structure", "required":["SubscriptionName"], "members":{ "SubscriptionName":{"shape":"String"} } }, "DeleteHsmClientCertificateMessage":{ "type":"structure", "required":["HsmClientCertificateIdentifier"], "members":{ "HsmClientCertificateIdentifier":{"shape":"String"} } }, "DeleteHsmConfigurationMessage":{ "type":"structure", "required":["HsmConfigurationIdentifier"], "members":{ "HsmConfigurationIdentifier":{"shape":"String"} } }, "DeleteSnapshotCopyGrantMessage":{ "type":"structure", "required":["SnapshotCopyGrantName"], "members":{ "SnapshotCopyGrantName":{"shape":"String"} } }, "DeleteTagsMessage":{ "type":"structure", "required":[ "ResourceName", "TagKeys" ], "members":{ "ResourceName":{"shape":"String"}, "TagKeys":{"shape":"TagKeyList"} } }, "DependentServiceRequestThrottlingFault":{ "type":"structure", "members":{ }, "error":{ "code":"DependentServiceRequestThrottlingFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "DescribeClusterParameterGroupsMessage":{ "type":"structure", "members":{ "ParameterGroupName":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "TagKeys":{"shape":"TagKeyList"}, "TagValues":{"shape":"TagValueList"} } }, "DescribeClusterParametersMessage":{ "type":"structure", "required":["ParameterGroupName"], "members":{ "ParameterGroupName":{"shape":"String"}, "Source":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeClusterSecurityGroupsMessage":{ "type":"structure", "members":{ "ClusterSecurityGroupName":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "TagKeys":{"shape":"TagKeyList"}, "TagValues":{"shape":"TagValueList"} } }, "DescribeClusterSnapshotsMessage":{ "type":"structure", "members":{ "ClusterIdentifier":{"shape":"String"}, "SnapshotIdentifier":{"shape":"String"}, "SnapshotType":{"shape":"String"}, "StartTime":{"shape":"TStamp"}, "EndTime":{"shape":"TStamp"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "OwnerAccount":{"shape":"String"}, "TagKeys":{"shape":"TagKeyList"}, "TagValues":{"shape":"TagValueList"} } }, "DescribeClusterSubnetGroupsMessage":{ "type":"structure", "members":{ "ClusterSubnetGroupName":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "TagKeys":{"shape":"TagKeyList"}, "TagValues":{"shape":"TagValueList"} } }, "DescribeClusterVersionsMessage":{ "type":"structure", "members":{ "ClusterVersion":{"shape":"String"}, "ClusterParameterGroupFamily":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeClustersMessage":{ "type":"structure", "members":{ "ClusterIdentifier":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "TagKeys":{"shape":"TagKeyList"}, "TagValues":{"shape":"TagValueList"} } }, "DescribeDefaultClusterParametersMessage":{ "type":"structure", "required":["ParameterGroupFamily"], "members":{ "ParameterGroupFamily":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeDefaultClusterParametersResult":{ "type":"structure", "members":{ "DefaultClusterParameters":{"shape":"DefaultClusterParameters"} } }, "DescribeEventCategoriesMessage":{ "type":"structure", "members":{ "SourceType":{"shape":"String"} } }, "DescribeEventSubscriptionsMessage":{ "type":"structure", "members":{ "SubscriptionName":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeEventsMessage":{ "type":"structure", "members":{ "SourceIdentifier":{"shape":"String"}, "SourceType":{"shape":"SourceType"}, "StartTime":{"shape":"TStamp"}, "EndTime":{"shape":"TStamp"}, "Duration":{"shape":"IntegerOptional"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeHsmClientCertificatesMessage":{ "type":"structure", "members":{ "HsmClientCertificateIdentifier":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "TagKeys":{"shape":"TagKeyList"}, "TagValues":{"shape":"TagValueList"} } }, "DescribeHsmConfigurationsMessage":{ "type":"structure", "members":{ "HsmConfigurationIdentifier":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "TagKeys":{"shape":"TagKeyList"}, "TagValues":{"shape":"TagValueList"} } }, "DescribeLoggingStatusMessage":{ "type":"structure", "required":["ClusterIdentifier"], "members":{ "ClusterIdentifier":{"shape":"String"} } }, "DescribeOrderableClusterOptionsMessage":{ "type":"structure", "members":{ "ClusterVersion":{"shape":"String"}, "NodeType":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeReservedNodeOfferingsMessage":{ "type":"structure", "members":{ "ReservedNodeOfferingId":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeReservedNodesMessage":{ "type":"structure", "members":{ "ReservedNodeId":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeResizeMessage":{ "type":"structure", "required":["ClusterIdentifier"], "members":{ "ClusterIdentifier":{"shape":"String"} } }, "DescribeSnapshotCopyGrantsMessage":{ "type":"structure", "members":{ "SnapshotCopyGrantName":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "TagKeys":{"shape":"TagKeyList"}, "TagValues":{"shape":"TagValueList"} } }, "DescribeTableRestoreStatusMessage":{ "type":"structure", "members":{ "ClusterIdentifier":{"shape":"String"}, "TableRestoreRequestId":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"} } }, "DescribeTagsMessage":{ "type":"structure", "members":{ "ResourceName":{"shape":"String"}, "ResourceType":{"shape":"String"}, "MaxRecords":{"shape":"IntegerOptional"}, "Marker":{"shape":"String"}, "TagKeys":{"shape":"TagKeyList"}, "TagValues":{"shape":"TagValueList"} } }, "DisableLoggingMessage":{ "type":"structure", "required":["ClusterIdentifier"], "members":{ "ClusterIdentifier":{"shape":"String"} } }, "DisableSnapshotCopyMessage":{ "type":"structure", "required":["ClusterIdentifier"], "members":{ "ClusterIdentifier":{"shape":"String"} } }, "DisableSnapshotCopyResult":{ "type":"structure", "members":{ "Cluster":{"shape":"Cluster"} } }, "Double":{"type":"double"}, "DoubleOptional":{"type":"double"}, "EC2SecurityGroup":{ "type":"structure", "members":{ "Status":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "EC2SecurityGroupList":{ "type":"list", "member":{ "shape":"EC2SecurityGroup", "locationName":"EC2SecurityGroup" } }, "ElasticIpStatus":{ "type":"structure", "members":{ "ElasticIp":{"shape":"String"}, "Status":{"shape":"String"} } }, "EnableLoggingMessage":{ "type":"structure", "required":[ "ClusterIdentifier", "BucketName" ], "members":{ "ClusterIdentifier":{"shape":"String"}, "BucketName":{"shape":"String"}, "S3KeyPrefix":{"shape":"String"} } }, "EnableSnapshotCopyMessage":{ "type":"structure", "required":[ "ClusterIdentifier", "DestinationRegion" ], "members":{ "ClusterIdentifier":{"shape":"String"}, "DestinationRegion":{"shape":"String"}, "RetentionPeriod":{"shape":"IntegerOptional"}, "SnapshotCopyGrantName":{"shape":"String"} } }, "EnableSnapshotCopyResult":{ "type":"structure", "members":{ "Cluster":{"shape":"Cluster"} } }, "Endpoint":{ "type":"structure", "members":{ "Address":{"shape":"String"}, "Port":{"shape":"Integer"} } }, "Event":{ "type":"structure", "members":{ "SourceIdentifier":{"shape":"String"}, "SourceType":{"shape":"SourceType"}, "Message":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"}, "Severity":{"shape":"String"}, "Date":{"shape":"TStamp"}, "EventId":{"shape":"String"} } }, "EventCategoriesList":{ "type":"list", "member":{ "shape":"String", "locationName":"EventCategory" } }, "EventCategoriesMap":{ "type":"structure", "members":{ "SourceType":{"shape":"String"}, "Events":{"shape":"EventInfoMapList"} }, "wrapper":true }, "EventCategoriesMapList":{ "type":"list", "member":{ "shape":"EventCategoriesMap", "locationName":"EventCategoriesMap" } }, "EventCategoriesMessage":{ "type":"structure", "members":{ "EventCategoriesMapList":{"shape":"EventCategoriesMapList"} } }, "EventInfoMap":{ "type":"structure", "members":{ "EventId":{"shape":"String"}, "EventCategories":{"shape":"EventCategoriesList"}, "EventDescription":{"shape":"String"}, "Severity":{"shape":"String"} }, "wrapper":true }, "EventInfoMapList":{ "type":"list", "member":{ "shape":"EventInfoMap", "locationName":"EventInfoMap" } }, "EventList":{ "type":"list", "member":{ "shape":"Event", "locationName":"Event" } }, "EventSubscription":{ "type":"structure", "members":{ "CustomerAwsId":{"shape":"String"}, "CustSubscriptionId":{"shape":"String"}, "SnsTopicArn":{"shape":"String"}, "Status":{"shape":"String"}, "SubscriptionCreationTime":{"shape":"TStamp"}, "SourceType":{"shape":"String"}, "SourceIdsList":{"shape":"SourceIdsList"}, "EventCategoriesList":{"shape":"EventCategoriesList"}, "Severity":{"shape":"String"}, "Enabled":{"shape":"Boolean"}, "Tags":{"shape":"TagList"} }, "wrapper":true }, "EventSubscriptionQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"EventSubscriptionQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "EventSubscriptionsList":{ "type":"list", "member":{ "shape":"EventSubscription", "locationName":"EventSubscription" } }, "EventSubscriptionsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "EventSubscriptionsList":{"shape":"EventSubscriptionsList"} } }, "EventsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "Events":{"shape":"EventList"} } }, "HsmClientCertificate":{ "type":"structure", "members":{ "HsmClientCertificateIdentifier":{"shape":"String"}, "HsmClientCertificatePublicKey":{"shape":"String"}, "Tags":{"shape":"TagList"} }, "wrapper":true }, "HsmClientCertificateAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"HsmClientCertificateAlreadyExistsFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "HsmClientCertificateList":{ "type":"list", "member":{ "shape":"HsmClientCertificate", "locationName":"HsmClientCertificate" } }, "HsmClientCertificateMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "HsmClientCertificates":{"shape":"HsmClientCertificateList"} } }, "HsmClientCertificateNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"HsmClientCertificateNotFoundFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "HsmClientCertificateQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"HsmClientCertificateQuotaExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "HsmConfiguration":{ "type":"structure", "members":{ "HsmConfigurationIdentifier":{"shape":"String"}, "Description":{"shape":"String"}, "HsmIpAddress":{"shape":"String"}, "HsmPartitionName":{"shape":"String"}, "Tags":{"shape":"TagList"} }, "wrapper":true }, "HsmConfigurationAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"HsmConfigurationAlreadyExistsFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "HsmConfigurationList":{ "type":"list", "member":{ "shape":"HsmConfiguration", "locationName":"HsmConfiguration" } }, "HsmConfigurationMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "HsmConfigurations":{"shape":"HsmConfigurationList"} } }, "HsmConfigurationNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"HsmConfigurationNotFoundFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "HsmConfigurationQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"HsmConfigurationQuotaExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "HsmStatus":{ "type":"structure", "members":{ "HsmClientCertificateIdentifier":{"shape":"String"}, "HsmConfigurationIdentifier":{"shape":"String"}, "Status":{"shape":"String"} } }, "IPRange":{ "type":"structure", "members":{ "Status":{"shape":"String"}, "CIDRIP":{"shape":"String"}, "Tags":{"shape":"TagList"} } }, "IPRangeList":{ "type":"list", "member":{ "shape":"IPRange", "locationName":"IPRange" } }, "IamRoleArnList":{ "type":"list", "member":{ "shape":"String", "locationName":"IamRoleArn" } }, "ImportTablesCompleted":{ "type":"list", "member":{"shape":"String"} }, "ImportTablesInProgress":{ "type":"list", "member":{"shape":"String"} }, "ImportTablesNotStarted":{ "type":"list", "member":{"shape":"String"} }, "InProgressTableRestoreQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"InProgressTableRestoreQuotaExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "IncompatibleOrderableOptions":{ "type":"structure", "members":{ }, "error":{ "code":"IncompatibleOrderableOptions", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InsufficientClusterCapacityFault":{ "type":"structure", "members":{ }, "error":{ "code":"InsufficientClusterCapacity", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InsufficientS3BucketPolicyFault":{ "type":"structure", "members":{ }, "error":{ "code":"InsufficientS3BucketPolicyFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Integer":{"type":"integer"}, "IntegerOptional":{"type":"integer"}, "InvalidClusterParameterGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidClusterParameterGroupState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidClusterSecurityGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidClusterSecurityGroupState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidClusterSnapshotStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidClusterSnapshotState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidClusterStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidClusterState", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidClusterSubnetGroupStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidClusterSubnetGroupStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidClusterSubnetStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidClusterSubnetStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidElasticIpFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidElasticIpFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidHsmClientCertificateStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidHsmClientCertificateStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidHsmConfigurationStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidHsmConfigurationStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidRestoreFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidRestore", "httpStatusCode":406, "senderFault":true }, "exception":true }, "InvalidS3BucketNameFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidS3BucketNameFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidS3KeyPrefixFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidS3KeyPrefixFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidSnapshotCopyGrantStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidSnapshotCopyGrantStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidSubnet":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidSubnet", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidSubscriptionStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidSubscriptionStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidTableRestoreArgumentFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidTableRestoreArgument", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidTagFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidTagFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidVPCNetworkStateFault":{ "type":"structure", "members":{ }, "error":{ "code":"InvalidVPCNetworkStateFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "LimitExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"LimitExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "LoggingStatus":{ "type":"structure", "members":{ "LoggingEnabled":{"shape":"Boolean"}, "BucketName":{"shape":"String"}, "S3KeyPrefix":{"shape":"String"}, "LastSuccessfulDeliveryTime":{"shape":"TStamp"}, "LastFailureTime":{"shape":"TStamp"}, "LastFailureMessage":{"shape":"String"} } }, "Long":{"type":"long"}, "LongOptional":{"type":"long"}, "ModifyClusterIamRolesMessage":{ "type":"structure", "required":["ClusterIdentifier"], "members":{ "ClusterIdentifier":{"shape":"String"}, "AddIamRoles":{"shape":"IamRoleArnList"}, "RemoveIamRoles":{"shape":"IamRoleArnList"} } }, "ModifyClusterIamRolesResult":{ "type":"structure", "members":{ "Cluster":{"shape":"Cluster"} } }, "ModifyClusterMessage":{ "type":"structure", "required":["ClusterIdentifier"], "members":{ "ClusterIdentifier":{"shape":"String"}, "ClusterType":{"shape":"String"}, "NodeType":{"shape":"String"}, "NumberOfNodes":{"shape":"IntegerOptional"}, "ClusterSecurityGroups":{"shape":"ClusterSecurityGroupNameList"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "MasterUserPassword":{"shape":"String"}, "ClusterParameterGroupName":{"shape":"String"}, "AutomatedSnapshotRetentionPeriod":{"shape":"IntegerOptional"}, "PreferredMaintenanceWindow":{"shape":"String"}, "ClusterVersion":{"shape":"String"}, "AllowVersionUpgrade":{"shape":"BooleanOptional"}, "HsmClientCertificateIdentifier":{"shape":"String"}, "HsmConfigurationIdentifier":{"shape":"String"}, "NewClusterIdentifier":{"shape":"String"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "ElasticIp":{"shape":"String"}, "EnhancedVpcRouting":{"shape":"BooleanOptional"} } }, "ModifyClusterParameterGroupMessage":{ "type":"structure", "required":[ "ParameterGroupName", "Parameters" ], "members":{ "ParameterGroupName":{"shape":"String"}, "Parameters":{"shape":"ParametersList"} } }, "ModifyClusterResult":{ "type":"structure", "members":{ "Cluster":{"shape":"Cluster"} } }, "ModifyClusterSubnetGroupMessage":{ "type":"structure", "required":[ "ClusterSubnetGroupName", "SubnetIds" ], "members":{ "ClusterSubnetGroupName":{"shape":"String"}, "Description":{"shape":"String"}, "SubnetIds":{"shape":"SubnetIdentifierList"} } }, "ModifyClusterSubnetGroupResult":{ "type":"structure", "members":{ "ClusterSubnetGroup":{"shape":"ClusterSubnetGroup"} } }, "ModifyEventSubscriptionMessage":{ "type":"structure", "required":["SubscriptionName"], "members":{ "SubscriptionName":{"shape":"String"}, "SnsTopicArn":{"shape":"String"}, "SourceType":{"shape":"String"}, "SourceIds":{"shape":"SourceIdsList"}, "EventCategories":{"shape":"EventCategoriesList"}, "Severity":{"shape":"String"}, "Enabled":{"shape":"BooleanOptional"} } }, "ModifyEventSubscriptionResult":{ "type":"structure", "members":{ "EventSubscription":{"shape":"EventSubscription"} } }, "ModifySnapshotCopyRetentionPeriodMessage":{ "type":"structure", "required":[ "ClusterIdentifier", "RetentionPeriod" ], "members":{ "ClusterIdentifier":{"shape":"String"}, "RetentionPeriod":{"shape":"Integer"} } }, "ModifySnapshotCopyRetentionPeriodResult":{ "type":"structure", "members":{ "Cluster":{"shape":"Cluster"} } }, "NumberOfNodesPerClusterLimitExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"NumberOfNodesPerClusterLimitExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "NumberOfNodesQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"NumberOfNodesQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "OrderableClusterOption":{ "type":"structure", "members":{ "ClusterVersion":{"shape":"String"}, "ClusterType":{"shape":"String"}, "NodeType":{"shape":"String"}, "AvailabilityZones":{"shape":"AvailabilityZoneList"} }, "wrapper":true }, "OrderableClusterOptionsList":{ "type":"list", "member":{ "shape":"OrderableClusterOption", "locationName":"OrderableClusterOption" } }, "OrderableClusterOptionsMessage":{ "type":"structure", "members":{ "OrderableClusterOptions":{"shape":"OrderableClusterOptionsList"}, "Marker":{"shape":"String"} } }, "Parameter":{ "type":"structure", "members":{ "ParameterName":{"shape":"String"}, "ParameterValue":{"shape":"String"}, "Description":{"shape":"String"}, "Source":{"shape":"String"}, "DataType":{"shape":"String"}, "AllowedValues":{"shape":"String"}, "ApplyType":{"shape":"ParameterApplyType"}, "IsModifiable":{"shape":"Boolean"}, "MinimumEngineVersion":{"shape":"String"} } }, "ParameterApplyType":{ "type":"string", "enum":[ "static", "dynamic" ] }, "ParameterGroupList":{ "type":"list", "member":{ "shape":"ClusterParameterGroup", "locationName":"ClusterParameterGroup" } }, "ParametersList":{ "type":"list", "member":{ "shape":"Parameter", "locationName":"Parameter" } }, "PendingModifiedValues":{ "type":"structure", "members":{ "MasterUserPassword":{"shape":"String"}, "NodeType":{"shape":"String"}, "NumberOfNodes":{"shape":"IntegerOptional"}, "ClusterType":{"shape":"String"}, "ClusterVersion":{"shape":"String"}, "AutomatedSnapshotRetentionPeriod":{"shape":"IntegerOptional"}, "ClusterIdentifier":{"shape":"String"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "EnhancedVpcRouting":{"shape":"BooleanOptional"} } }, "PurchaseReservedNodeOfferingMessage":{ "type":"structure", "required":["ReservedNodeOfferingId"], "members":{ "ReservedNodeOfferingId":{"shape":"String"}, "NodeCount":{"shape":"IntegerOptional"} } }, "PurchaseReservedNodeOfferingResult":{ "type":"structure", "members":{ "ReservedNode":{"shape":"ReservedNode"} } }, "RebootClusterMessage":{ "type":"structure", "required":["ClusterIdentifier"], "members":{ "ClusterIdentifier":{"shape":"String"} } }, "RebootClusterResult":{ "type":"structure", "members":{ "Cluster":{"shape":"Cluster"} } }, "RecurringCharge":{ "type":"structure", "members":{ "RecurringChargeAmount":{"shape":"Double"}, "RecurringChargeFrequency":{"shape":"String"} }, "wrapper":true }, "RecurringChargeList":{ "type":"list", "member":{ "shape":"RecurringCharge", "locationName":"RecurringCharge" } }, "ReservedNode":{ "type":"structure", "members":{ "ReservedNodeId":{"shape":"String"}, "ReservedNodeOfferingId":{"shape":"String"}, "NodeType":{"shape":"String"}, "StartTime":{"shape":"TStamp"}, "Duration":{"shape":"Integer"}, "FixedPrice":{"shape":"Double"}, "UsagePrice":{"shape":"Double"}, "CurrencyCode":{"shape":"String"}, "NodeCount":{"shape":"Integer"}, "State":{"shape":"String"}, "OfferingType":{"shape":"String"}, "RecurringCharges":{"shape":"RecurringChargeList"} }, "wrapper":true }, "ReservedNodeAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedNodeAlreadyExists", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ReservedNodeList":{ "type":"list", "member":{ "shape":"ReservedNode", "locationName":"ReservedNode" } }, "ReservedNodeNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedNodeNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ReservedNodeOffering":{ "type":"structure", "members":{ "ReservedNodeOfferingId":{"shape":"String"}, "NodeType":{"shape":"String"}, "Duration":{"shape":"Integer"}, "FixedPrice":{"shape":"Double"}, "UsagePrice":{"shape":"Double"}, "CurrencyCode":{"shape":"String"}, "OfferingType":{"shape":"String"}, "RecurringCharges":{"shape":"RecurringChargeList"} }, "wrapper":true }, "ReservedNodeOfferingList":{ "type":"list", "member":{ "shape":"ReservedNodeOffering", "locationName":"ReservedNodeOffering" } }, "ReservedNodeOfferingNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedNodeOfferingNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ReservedNodeOfferingsMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ReservedNodeOfferings":{"shape":"ReservedNodeOfferingList"} } }, "ReservedNodeQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"ReservedNodeQuotaExceeded", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ReservedNodesMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "ReservedNodes":{"shape":"ReservedNodeList"} } }, "ResetClusterParameterGroupMessage":{ "type":"structure", "required":["ParameterGroupName"], "members":{ "ParameterGroupName":{"shape":"String"}, "ResetAllParameters":{"shape":"Boolean"}, "Parameters":{"shape":"ParametersList"} } }, "ResizeNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ResizeNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "ResizeProgressMessage":{ "type":"structure", "members":{ "TargetNodeType":{"shape":"String"}, "TargetNumberOfNodes":{"shape":"IntegerOptional"}, "TargetClusterType":{"shape":"String"}, "Status":{"shape":"String"}, "ImportTablesCompleted":{"shape":"ImportTablesCompleted"}, "ImportTablesInProgress":{"shape":"ImportTablesInProgress"}, "ImportTablesNotStarted":{"shape":"ImportTablesNotStarted"}, "AvgResizeRateInMegaBytesPerSecond":{"shape":"DoubleOptional"}, "TotalResizeDataInMegaBytes":{"shape":"LongOptional"}, "ProgressInMegaBytes":{"shape":"LongOptional"}, "ElapsedTimeInSeconds":{"shape":"LongOptional"}, "EstimatedTimeToCompletionInSeconds":{"shape":"LongOptional"} } }, "ResourceNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"ResourceNotFoundFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "RestorableNodeTypeList":{ "type":"list", "member":{ "shape":"String", "locationName":"NodeType" } }, "RestoreFromClusterSnapshotMessage":{ "type":"structure", "required":[ "ClusterIdentifier", "SnapshotIdentifier" ], "members":{ "ClusterIdentifier":{"shape":"String"}, "SnapshotIdentifier":{"shape":"String"}, "SnapshotClusterIdentifier":{"shape":"String"}, "Port":{"shape":"IntegerOptional"}, "AvailabilityZone":{"shape":"String"}, "AllowVersionUpgrade":{"shape":"BooleanOptional"}, "ClusterSubnetGroupName":{"shape":"String"}, "PubliclyAccessible":{"shape":"BooleanOptional"}, "OwnerAccount":{"shape":"String"}, "HsmClientCertificateIdentifier":{"shape":"String"}, "HsmConfigurationIdentifier":{"shape":"String"}, "ElasticIp":{"shape":"String"}, "ClusterParameterGroupName":{"shape":"String"}, "ClusterSecurityGroups":{"shape":"ClusterSecurityGroupNameList"}, "VpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, "PreferredMaintenanceWindow":{"shape":"String"}, "AutomatedSnapshotRetentionPeriod":{"shape":"IntegerOptional"}, "KmsKeyId":{"shape":"String"}, "NodeType":{"shape":"String"}, "EnhancedVpcRouting":{"shape":"BooleanOptional"}, "AdditionalInfo":{"shape":"String"}, "IamRoles":{"shape":"IamRoleArnList"} } }, "RestoreFromClusterSnapshotResult":{ "type":"structure", "members":{ "Cluster":{"shape":"Cluster"} } }, "RestoreStatus":{ "type":"structure", "members":{ "Status":{"shape":"String"}, "CurrentRestoreRateInMegaBytesPerSecond":{"shape":"Double"}, "SnapshotSizeInMegaBytes":{"shape":"Long"}, "ProgressInMegaBytes":{"shape":"Long"}, "ElapsedTimeInSeconds":{"shape":"Long"}, "EstimatedTimeToCompletionInSeconds":{"shape":"Long"} } }, "RestoreTableFromClusterSnapshotMessage":{ "type":"structure", "required":[ "ClusterIdentifier", "SnapshotIdentifier", "SourceDatabaseName", "SourceTableName", "NewTableName" ], "members":{ "ClusterIdentifier":{"shape":"String"}, "SnapshotIdentifier":{"shape":"String"}, "SourceDatabaseName":{"shape":"String"}, "SourceSchemaName":{"shape":"String"}, "SourceTableName":{"shape":"String"}, "TargetDatabaseName":{"shape":"String"}, "TargetSchemaName":{"shape":"String"}, "NewTableName":{"shape":"String"} } }, "RestoreTableFromClusterSnapshotResult":{ "type":"structure", "members":{ "TableRestoreStatus":{"shape":"TableRestoreStatus"} } }, "RevokeClusterSecurityGroupIngressMessage":{ "type":"structure", "required":["ClusterSecurityGroupName"], "members":{ "ClusterSecurityGroupName":{"shape":"String"}, "CIDRIP":{"shape":"String"}, "EC2SecurityGroupName":{"shape":"String"}, "EC2SecurityGroupOwnerId":{"shape":"String"} } }, "RevokeClusterSecurityGroupIngressResult":{ "type":"structure", "members":{ "ClusterSecurityGroup":{"shape":"ClusterSecurityGroup"} } }, "RevokeSnapshotAccessMessage":{ "type":"structure", "required":[ "SnapshotIdentifier", "AccountWithRestoreAccess" ], "members":{ "SnapshotIdentifier":{"shape":"String"}, "SnapshotClusterIdentifier":{"shape":"String"}, "AccountWithRestoreAccess":{"shape":"String"} } }, "RevokeSnapshotAccessResult":{ "type":"structure", "members":{ "Snapshot":{"shape":"Snapshot"} } }, "RotateEncryptionKeyMessage":{ "type":"structure", "required":["ClusterIdentifier"], "members":{ "ClusterIdentifier":{"shape":"String"} } }, "RotateEncryptionKeyResult":{ "type":"structure", "members":{ "Cluster":{"shape":"Cluster"} } }, "SNSInvalidTopicFault":{ "type":"structure", "members":{ }, "error":{ "code":"SNSInvalidTopic", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SNSNoAuthorizationFault":{ "type":"structure", "members":{ }, "error":{ "code":"SNSNoAuthorization", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SNSTopicArnNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SNSTopicArnNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "Snapshot":{ "type":"structure", "members":{ "SnapshotIdentifier":{"shape":"String"}, "ClusterIdentifier":{"shape":"String"}, "SnapshotCreateTime":{"shape":"TStamp"}, "Status":{"shape":"String"}, "Port":{"shape":"Integer"}, "AvailabilityZone":{"shape":"String"}, "ClusterCreateTime":{"shape":"TStamp"}, "MasterUsername":{"shape":"String"}, "ClusterVersion":{"shape":"String"}, "SnapshotType":{"shape":"String"}, "NodeType":{"shape":"String"}, "NumberOfNodes":{"shape":"Integer"}, "DBName":{"shape":"String"}, "VpcId":{"shape":"String"}, "Encrypted":{"shape":"Boolean"}, "KmsKeyId":{"shape":"String"}, "EncryptedWithHSM":{"shape":"Boolean"}, "AccountsWithRestoreAccess":{"shape":"AccountsWithRestoreAccessList"}, "OwnerAccount":{"shape":"String"}, "TotalBackupSizeInMegaBytes":{"shape":"Double"}, "ActualIncrementalBackupSizeInMegaBytes":{"shape":"Double"}, "BackupProgressInMegaBytes":{"shape":"Double"}, "CurrentBackupRateInMegaBytesPerSecond":{"shape":"Double"}, "EstimatedSecondsToCompletion":{"shape":"Long"}, "ElapsedTimeInSeconds":{"shape":"Long"}, "SourceRegion":{"shape":"String"}, "Tags":{"shape":"TagList"}, "RestorableNodeTypes":{"shape":"RestorableNodeTypeList"}, "EnhancedVpcRouting":{"shape":"Boolean"} }, "wrapper":true }, "SnapshotCopyAlreadyDisabledFault":{ "type":"structure", "members":{ }, "error":{ "code":"SnapshotCopyAlreadyDisabledFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SnapshotCopyAlreadyEnabledFault":{ "type":"structure", "members":{ }, "error":{ "code":"SnapshotCopyAlreadyEnabledFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SnapshotCopyDisabledFault":{ "type":"structure", "members":{ }, "error":{ "code":"SnapshotCopyDisabledFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SnapshotCopyGrant":{ "type":"structure", "members":{ "SnapshotCopyGrantName":{"shape":"String"}, "KmsKeyId":{"shape":"String"}, "Tags":{"shape":"TagList"} }, "wrapper":true }, "SnapshotCopyGrantAlreadyExistsFault":{ "type":"structure", "members":{ }, "error":{ "code":"SnapshotCopyGrantAlreadyExistsFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SnapshotCopyGrantList":{ "type":"list", "member":{ "shape":"SnapshotCopyGrant", "locationName":"SnapshotCopyGrant" } }, "SnapshotCopyGrantMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "SnapshotCopyGrants":{"shape":"SnapshotCopyGrantList"} } }, "SnapshotCopyGrantNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SnapshotCopyGrantNotFoundFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SnapshotCopyGrantQuotaExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"SnapshotCopyGrantQuotaExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SnapshotList":{ "type":"list", "member":{ "shape":"Snapshot", "locationName":"Snapshot" } }, "SnapshotMessage":{ "type":"structure", "members":{ "Marker":{"shape":"String"}, "Snapshots":{"shape":"SnapshotList"} } }, "SourceIdsList":{ "type":"list", "member":{ "shape":"String", "locationName":"SourceId" } }, "SourceNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SourceNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SourceType":{ "type":"string", "enum":[ "cluster", "cluster-parameter-group", "cluster-security-group", "cluster-snapshot" ] }, "String":{"type":"string"}, "Subnet":{ "type":"structure", "members":{ "SubnetIdentifier":{"shape":"String"}, "SubnetAvailabilityZone":{"shape":"AvailabilityZone"}, "SubnetStatus":{"shape":"String"} } }, "SubnetAlreadyInUse":{ "type":"structure", "members":{ }, "error":{ "code":"SubnetAlreadyInUse", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SubnetIdentifierList":{ "type":"list", "member":{ "shape":"String", "locationName":"SubnetIdentifier" } }, "SubnetList":{ "type":"list", "member":{ "shape":"Subnet", "locationName":"Subnet" } }, "SubscriptionAlreadyExistFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionAlreadyExist", "httpStatusCode":400, "senderFault":true }, "exception":true }, "SubscriptionCategoryNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionCategoryNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SubscriptionEventIdNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionEventIdNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SubscriptionNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "SubscriptionSeverityNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"SubscriptionSeverityNotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "TStamp":{"type":"timestamp"}, "TableRestoreNotFoundFault":{ "type":"structure", "members":{ }, "error":{ "code":"TableRestoreNotFoundFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "TableRestoreStatus":{ "type":"structure", "members":{ "TableRestoreRequestId":{"shape":"String"}, "Status":{"shape":"TableRestoreStatusType"}, "Message":{"shape":"String"}, "RequestTime":{"shape":"TStamp"}, "ProgressInMegaBytes":{"shape":"LongOptional"}, "TotalDataInMegaBytes":{"shape":"LongOptional"}, "ClusterIdentifier":{"shape":"String"}, "SnapshotIdentifier":{"shape":"String"}, "SourceDatabaseName":{"shape":"String"}, "SourceSchemaName":{"shape":"String"}, "SourceTableName":{"shape":"String"}, "TargetDatabaseName":{"shape":"String"}, "TargetSchemaName":{"shape":"String"}, "NewTableName":{"shape":"String"} }, "wrapper":true }, "TableRestoreStatusList":{ "type":"list", "member":{ "shape":"TableRestoreStatus", "locationName":"TableRestoreStatus" } }, "TableRestoreStatusMessage":{ "type":"structure", "members":{ "TableRestoreStatusDetails":{"shape":"TableRestoreStatusList"}, "Marker":{"shape":"String"} } }, "TableRestoreStatusType":{ "type":"string", "enum":[ "PENDING", "IN_PROGRESS", "SUCCEEDED", "FAILED", "CANCELED" ] }, "Tag":{ "type":"structure", "members":{ "Key":{"shape":"String"}, "Value":{"shape":"String"} } }, "TagKeyList":{ "type":"list", "member":{ "shape":"String", "locationName":"TagKey" } }, "TagLimitExceededFault":{ "type":"structure", "members":{ }, "error":{ "code":"TagLimitExceededFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "TagList":{ "type":"list", "member":{ "shape":"Tag", "locationName":"Tag" } }, "TagValueList":{ "type":"list", "member":{ "shape":"String", "locationName":"TagValue" } }, "TaggedResource":{ "type":"structure", "members":{ "Tag":{"shape":"Tag"}, "ResourceName":{"shape":"String"}, "ResourceType":{"shape":"String"} } }, "TaggedResourceList":{ "type":"list", "member":{ "shape":"TaggedResource", "locationName":"TaggedResource" } }, "TaggedResourceListMessage":{ "type":"structure", "members":{ "TaggedResources":{"shape":"TaggedResourceList"}, "Marker":{"shape":"String"} } }, "UnauthorizedOperation":{ "type":"structure", "members":{ }, "error":{ "code":"UnauthorizedOperation", "httpStatusCode":400, "senderFault":true }, "exception":true }, "UnknownSnapshotCopyRegionFault":{ "type":"structure", "members":{ }, "error":{ "code":"UnknownSnapshotCopyRegionFault", "httpStatusCode":404, "senderFault":true }, "exception":true }, "UnsupportedOperationFault":{ "type":"structure", "members":{ }, "error":{ "code":"UnsupportedOperation", "httpStatusCode":400, "senderFault":true }, "exception":true }, "UnsupportedOptionFault":{ "type":"structure", "members":{ }, "error":{ "code":"UnsupportedOptionFault", "httpStatusCode":400, "senderFault":true }, "exception":true }, "VpcSecurityGroupIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"VpcSecurityGroupId" } }, "VpcSecurityGroupMembership":{ "type":"structure", "members":{ "VpcSecurityGroupId":{"shape":"String"}, "Status":{"shape":"String"} } }, "VpcSecurityGroupMembershipList":{ "type":"list", "member":{ "shape":"VpcSecurityGroupMembership", "locationName":"VpcSecurityGroup" } } } } aws-sdk-go-1.4.22/models/apis/redshift/2012-12-01/docs-2.json000066400000000000000000006415041300374646400226300ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon Redshift

        Overview

        This is an interface reference for Amazon Redshift. It contains documentation for one of the programming or command line interfaces you can use to manage Amazon Redshift clusters. Note that Amazon Redshift is asynchronous, which means that some interfaces may require techniques, such as polling or asynchronous callback handlers, to determine when a command has been applied. In this reference, the parameter descriptions indicate whether a change is applied immediately, on the next instance reboot, or during the next maintenance window. For a summary of the Amazon Redshift cluster management interfaces, go to Using the Amazon Redshift Management Interfaces.

        Amazon Redshift manages all the work of setting up, operating, and scaling a data warehouse: provisioning capacity, monitoring and backing up the cluster, and applying patches and upgrades to the Amazon Redshift engine. You can focus on using your data to acquire new insights for your business and customers.

        If you are a first-time user of Amazon Redshift, we recommend that you begin by reading the Amazon Redshift Getting Started Guide.

        If you are a database developer, the Amazon Redshift Database Developer Guide explains how to design, build, query, and maintain the databases that make up your data warehouse.

        ", "operations": { "AuthorizeClusterSecurityGroupIngress": "

        Adds an inbound (ingress) rule to an Amazon Redshift security group. Depending on whether the application accessing your cluster is running on the Internet or an Amazon EC2 instance, you can authorize inbound access to either a Classless Interdomain Routing (CIDR)/Internet Protocol (IP) range or to an Amazon EC2 security group. You can add as many as 20 ingress rules to an Amazon Redshift security group.

        If you authorize access to an Amazon EC2 security group, specify EC2SecurityGroupName and EC2SecurityGroupOwnerId. The Amazon EC2 security group and Amazon Redshift cluster must be in the same AWS region.

        If you authorize access to a CIDR/IP address range, specify CIDRIP. For an overview of CIDR blocks, see the Wikipedia article on Classless Inter-Domain Routing.

        You must also associate the security group with a cluster so that clients running on these IP addresses or the EC2 instance are authorized to connect to the cluster. For information about managing security groups, go to Working with Security Groups in the Amazon Redshift Cluster Management Guide.

        ", "AuthorizeSnapshotAccess": "

        Authorizes the specified AWS customer account to restore the specified snapshot.

        For more information about working with snapshots, go to Amazon Redshift Snapshots in the Amazon Redshift Cluster Management Guide.

        ", "CopyClusterSnapshot": "

        Copies the specified automated cluster snapshot to a new manual cluster snapshot. The source must be an automated snapshot and it must be in the available state.

        When you delete a cluster, Amazon Redshift deletes any automated snapshots of the cluster. Also, when the retention period of the snapshot expires, Amazon Redshift automatically deletes it. If you want to keep an automated snapshot for a longer period, you can make a manual copy of the snapshot. Manual snapshots are retained until you delete them.

        For more information about working with snapshots, go to Amazon Redshift Snapshots in the Amazon Redshift Cluster Management Guide.

        ", "CreateCluster": "

        Creates a new cluster.

        To create the cluster in Virtual Private Cloud (VPC), you must provide a cluster subnet group name. The cluster subnet group identifies the subnets of your VPC that Amazon Redshift uses when creating the cluster. For more information about managing clusters, go to Amazon Redshift Clusters in the Amazon Redshift Cluster Management Guide.

        ", "CreateClusterParameterGroup": "

        Creates an Amazon Redshift parameter group.

        Creating parameter groups is independent of creating clusters. You can associate a cluster with a parameter group when you create the cluster. You can also associate an existing cluster with a parameter group after the cluster is created by using ModifyCluster.

        Parameters in the parameter group define specific behavior that applies to the databases you create on the cluster. For more information about parameters and parameter groups, go to Amazon Redshift Parameter Groups in the Amazon Redshift Cluster Management Guide.

        ", "CreateClusterSecurityGroup": "

        Creates a new Amazon Redshift security group. You use security groups to control access to non-VPC clusters.

        For information about managing security groups, go to Amazon Redshift Cluster Security Groups in the Amazon Redshift Cluster Management Guide.

        ", "CreateClusterSnapshot": "

        Creates a manual snapshot of the specified cluster. The cluster must be in the available state.

        For more information about working with snapshots, go to Amazon Redshift Snapshots in the Amazon Redshift Cluster Management Guide.

        ", "CreateClusterSubnetGroup": "

        Creates a new Amazon Redshift subnet group. You must provide a list of one or more subnets in your existing Amazon Virtual Private Cloud (Amazon VPC) when creating Amazon Redshift subnet group.

        For information about subnet groups, go to Amazon Redshift Cluster Subnet Groups in the Amazon Redshift Cluster Management Guide.

        ", "CreateEventSubscription": "

        Creates an Amazon Redshift event notification subscription. This action requires an ARN (Amazon Resource Name) of an Amazon SNS topic created by either the Amazon Redshift console, the Amazon SNS console, or the Amazon SNS API. To obtain an ARN with Amazon SNS, you must create a topic in Amazon SNS and subscribe to the topic. The ARN is displayed in the SNS console.

        You can specify the source type, and lists of Amazon Redshift source IDs, event categories, and event severities. Notifications will be sent for all events you want that match those criteria. For example, you can specify source type = cluster, source ID = my-cluster-1 and mycluster2, event categories = Availability, Backup, and severity = ERROR. The subscription will only send notifications for those ERROR events in the Availability and Backup categories for the specified clusters.

        If you specify both the source type and source IDs, such as source type = cluster and source identifier = my-cluster-1, notifications will be sent for all the cluster events for my-cluster-1. If you specify a source type but do not specify a source identifier, you will receive notice of the events for the objects of that type in your AWS account. If you do not specify either the SourceType nor the SourceIdentifier, you will be notified of events generated from all Amazon Redshift sources belonging to your AWS account. You must specify a source type if you specify a source ID.

        ", "CreateHsmClientCertificate": "

        Creates an HSM client certificate that an Amazon Redshift cluster will use to connect to the client's HSM in order to store and retrieve the keys used to encrypt the cluster databases.

        The command returns a public key, which you must store in the HSM. In addition to creating the HSM certificate, you must create an Amazon Redshift HSM configuration that provides a cluster the information needed to store and use encryption keys in the HSM. For more information, go to Hardware Security Modules in the Amazon Redshift Cluster Management Guide.

        ", "CreateHsmConfiguration": "

        Creates an HSM configuration that contains the information required by an Amazon Redshift cluster to store and use database encryption keys in a Hardware Security Module (HSM). After creating the HSM configuration, you can specify it as a parameter when creating a cluster. The cluster will then store its encryption keys in the HSM.

        In addition to creating an HSM configuration, you must also create an HSM client certificate. For more information, go to Hardware Security Modules in the Amazon Redshift Cluster Management Guide.

        ", "CreateSnapshotCopyGrant": "

        Creates a snapshot copy grant that permits Amazon Redshift to use a customer master key (CMK) from AWS Key Management Service (AWS KMS) to encrypt copied snapshots in a destination region.

        For more information about managing snapshot copy grants, go to Amazon Redshift Database Encryption in the Amazon Redshift Cluster Management Guide.

        ", "CreateTags": "

        Adds one or more tags to a specified resource.

        A resource can have up to 10 tags. If you try to create more than 10 tags for a resource, you will receive an error and the attempt will fail.

        If you specify a key that already exists for the resource, the value for that key will be updated with the new value.

        ", "DeleteCluster": "

        Deletes a previously provisioned cluster. A successful response from the web service indicates that the request was received correctly. Use DescribeClusters to monitor the status of the deletion. The delete operation cannot be canceled or reverted once submitted. For more information about managing clusters, go to Amazon Redshift Clusters in the Amazon Redshift Cluster Management Guide.

        If you want to shut down the cluster and retain it for future use, set SkipFinalClusterSnapshot to false and specify a name for FinalClusterSnapshotIdentifier. You can later restore this snapshot to resume using the cluster. If a final cluster snapshot is requested, the status of the cluster will be \"final-snapshot\" while the snapshot is being taken, then it's \"deleting\" once Amazon Redshift begins deleting the cluster.

        For more information about managing clusters, go to Amazon Redshift Clusters in the Amazon Redshift Cluster Management Guide.

        ", "DeleteClusterParameterGroup": "

        Deletes a specified Amazon Redshift parameter group.

        You cannot delete a parameter group if it is associated with a cluster.

        ", "DeleteClusterSecurityGroup": "

        Deletes an Amazon Redshift security group.

        You cannot delete a security group that is associated with any clusters. You cannot delete the default security group.

        For information about managing security groups, go to Amazon Redshift Cluster Security Groups in the Amazon Redshift Cluster Management Guide.

        ", "DeleteClusterSnapshot": "

        Deletes the specified manual snapshot. The snapshot must be in the available state, with no other users authorized to access the snapshot.

        Unlike automated snapshots, manual snapshots are retained even after you delete your cluster. Amazon Redshift does not delete your manual snapshots. You must delete manual snapshot explicitly to avoid getting charged. If other accounts are authorized to access the snapshot, you must revoke all of the authorizations before you can delete the snapshot.

        ", "DeleteClusterSubnetGroup": "

        Deletes the specified cluster subnet group.

        ", "DeleteEventSubscription": "

        Deletes an Amazon Redshift event notification subscription.

        ", "DeleteHsmClientCertificate": "

        Deletes the specified HSM client certificate.

        ", "DeleteHsmConfiguration": "

        Deletes the specified Amazon Redshift HSM configuration.

        ", "DeleteSnapshotCopyGrant": "

        Deletes the specified snapshot copy grant.

        ", "DeleteTags": "

        Deletes a tag or tags from a resource. You must provide the ARN of the resource from which you want to delete the tag or tags.

        ", "DescribeClusterParameterGroups": "

        Returns a list of Amazon Redshift parameter groups, including parameter groups you created and the default parameter group. For each parameter group, the response includes the parameter group name, description, and parameter group family name. You can optionally specify a name to retrieve the description of a specific parameter group.

        For more information about parameters and parameter groups, go to Amazon Redshift Parameter Groups in the Amazon Redshift Cluster Management Guide.

        If you specify both tag keys and tag values in the same request, Amazon Redshift returns all parameter groups that match any combination of the specified keys and values. For example, if you have owner and environment for tag keys, and admin and test for tag values, all parameter groups that have any combination of those values are returned.

        If both tag keys and values are omitted from the request, parameter groups are returned regardless of whether they have tag keys or values associated with them.

        ", "DescribeClusterParameters": "

        Returns a detailed list of parameters contained within the specified Amazon Redshift parameter group. For each parameter the response includes information such as parameter name, description, data type, value, whether the parameter value is modifiable, and so on.

        You can specify source filter to retrieve parameters of only specific type. For example, to retrieve parameters that were modified by a user action such as from ModifyClusterParameterGroup, you can specify source equal to user.

        For more information about parameters and parameter groups, go to Amazon Redshift Parameter Groups in the Amazon Redshift Cluster Management Guide.

        ", "DescribeClusterSecurityGroups": "

        Returns information about Amazon Redshift security groups. If the name of a security group is specified, the response will contain only information about only that security group.

        For information about managing security groups, go to Amazon Redshift Cluster Security Groups in the Amazon Redshift Cluster Management Guide.

        If you specify both tag keys and tag values in the same request, Amazon Redshift returns all security groups that match any combination of the specified keys and values. For example, if you have owner and environment for tag keys, and admin and test for tag values, all security groups that have any combination of those values are returned.

        If both tag keys and values are omitted from the request, security groups are returned regardless of whether they have tag keys or values associated with them.

        ", "DescribeClusterSnapshots": "

        Returns one or more snapshot objects, which contain metadata about your cluster snapshots. By default, this operation returns information about all snapshots of all clusters that are owned by you AWS customer account. No information is returned for snapshots owned by inactive AWS customer accounts.

        If you specify both tag keys and tag values in the same request, Amazon Redshift returns all snapshots that match any combination of the specified keys and values. For example, if you have owner and environment for tag keys, and admin and test for tag values, all snapshots that have any combination of those values are returned. Only snapshots that you own are returned in the response; shared snapshots are not returned with the tag key and tag value request parameters.

        If both tag keys and values are omitted from the request, snapshots are returned regardless of whether they have tag keys or values associated with them.

        ", "DescribeClusterSubnetGroups": "

        Returns one or more cluster subnet group objects, which contain metadata about your cluster subnet groups. By default, this operation returns information about all cluster subnet groups that are defined in you AWS account.

        If you specify both tag keys and tag values in the same request, Amazon Redshift returns all subnet groups that match any combination of the specified keys and values. For example, if you have owner and environment for tag keys, and admin and test for tag values, all subnet groups that have any combination of those values are returned.

        If both tag keys and values are omitted from the request, subnet groups are returned regardless of whether they have tag keys or values associated with them.

        ", "DescribeClusterVersions": "

        Returns descriptions of the available Amazon Redshift cluster versions. You can call this operation even before creating any clusters to learn more about the Amazon Redshift versions. For more information about managing clusters, go to Amazon Redshift Clusters in the Amazon Redshift Cluster Management Guide.

        ", "DescribeClusters": "

        Returns properties of provisioned clusters including general cluster properties, cluster database properties, maintenance and backup properties, and security and access properties. This operation supports pagination. For more information about managing clusters, go to Amazon Redshift Clusters in the Amazon Redshift Cluster Management Guide.

        If you specify both tag keys and tag values in the same request, Amazon Redshift returns all clusters that match any combination of the specified keys and values. For example, if you have owner and environment for tag keys, and admin and test for tag values, all clusters that have any combination of those values are returned.

        If both tag keys and values are omitted from the request, clusters are returned regardless of whether they have tag keys or values associated with them.

        ", "DescribeDefaultClusterParameters": "

        Returns a list of parameter settings for the specified parameter group family.

        For more information about parameters and parameter groups, go to Amazon Redshift Parameter Groups in the Amazon Redshift Cluster Management Guide.

        ", "DescribeEventCategories": "

        Displays a list of event categories for all event source types, or for a specified source type. For a list of the event categories and source types, go to Amazon Redshift Event Notifications.

        ", "DescribeEventSubscriptions": "

        Lists descriptions of all the Amazon Redshift event notifications subscription for a customer account. If you specify a subscription name, lists the description for that subscription.

        ", "DescribeEvents": "

        Returns events related to clusters, security groups, snapshots, and parameter groups for the past 14 days. Events specific to a particular cluster, security group, snapshot or parameter group can be obtained by providing the name as a parameter. By default, the past hour of events are returned.

        ", "DescribeHsmClientCertificates": "

        Returns information about the specified HSM client certificate. If no certificate ID is specified, returns information about all the HSM certificates owned by your AWS customer account.

        If you specify both tag keys and tag values in the same request, Amazon Redshift returns all HSM client certificates that match any combination of the specified keys and values. For example, if you have owner and environment for tag keys, and admin and test for tag values, all HSM client certificates that have any combination of those values are returned.

        If both tag keys and values are omitted from the request, HSM client certificates are returned regardless of whether they have tag keys or values associated with them.

        ", "DescribeHsmConfigurations": "

        Returns information about the specified Amazon Redshift HSM configuration. If no configuration ID is specified, returns information about all the HSM configurations owned by your AWS customer account.

        If you specify both tag keys and tag values in the same request, Amazon Redshift returns all HSM connections that match any combination of the specified keys and values. For example, if you have owner and environment for tag keys, and admin and test for tag values, all HSM connections that have any combination of those values are returned.

        If both tag keys and values are omitted from the request, HSM connections are returned regardless of whether they have tag keys or values associated with them.

        ", "DescribeLoggingStatus": "

        Describes whether information, such as queries and connection attempts, is being logged for the specified Amazon Redshift cluster.

        ", "DescribeOrderableClusterOptions": "

        Returns a list of orderable cluster options. Before you create a new cluster you can use this operation to find what options are available, such as the EC2 Availability Zones (AZ) in the specific AWS region that you can specify, and the node types you can request. The node types differ by available storage, memory, CPU and price. With the cost involved you might want to obtain a list of cluster options in the specific region and specify values when creating a cluster. For more information about managing clusters, go to Amazon Redshift Clusters in the Amazon Redshift Cluster Management Guide.

        ", "DescribeReservedNodeOfferings": "

        Returns a list of the available reserved node offerings by Amazon Redshift with their descriptions including the node type, the fixed and recurring costs of reserving the node and duration the node will be reserved for you. These descriptions help you determine which reserve node offering you want to purchase. You then use the unique offering ID in you call to PurchaseReservedNodeOffering to reserve one or more nodes for your Amazon Redshift cluster.

        For more information about reserved node offerings, go to Purchasing Reserved Nodes in the Amazon Redshift Cluster Management Guide.

        ", "DescribeReservedNodes": "

        Returns the descriptions of the reserved nodes.

        ", "DescribeResize": "

        Returns information about the last resize operation for the specified cluster. If no resize operation has ever been initiated for the specified cluster, a HTTP 404 error is returned. If a resize operation was initiated and completed, the status of the resize remains as SUCCEEDED until the next resize.

        A resize operation can be requested using ModifyCluster and specifying a different number or type of nodes for the cluster.

        ", "DescribeSnapshotCopyGrants": "

        Returns a list of snapshot copy grants owned by the AWS account in the destination region.

        For more information about managing snapshot copy grants, go to Amazon Redshift Database Encryption in the Amazon Redshift Cluster Management Guide.

        ", "DescribeTableRestoreStatus": "

        Lists the status of one or more table restore requests made using the RestoreTableFromClusterSnapshot API action. If you don't specify a value for the TableRestoreRequestId parameter, then DescribeTableRestoreStatus returns the status of all table restore requests ordered by the date and time of the request in ascending order. Otherwise DescribeTableRestoreStatus returns the status of the table specified by TableRestoreRequestId.

        ", "DescribeTags": "

        Returns a list of tags. You can return tags from a specific resource by specifying an ARN, or you can return all tags for a given type of resource, such as clusters, snapshots, and so on.

        The following are limitations for DescribeTags:

        • You cannot specify an ARN and a resource-type value together in the same request.

        • You cannot use the MaxRecords and Marker parameters together with the ARN parameter.

        • The MaxRecords parameter can be a range from 10 to 50 results to return in a request.

        If you specify both tag keys and tag values in the same request, Amazon Redshift returns all resources that match any combination of the specified keys and values. For example, if you have owner and environment for tag keys, and admin and test for tag values, all resources that have any combination of those values are returned.

        If both tag keys and values are omitted from the request, resources are returned regardless of whether they have tag keys or values associated with them.

        ", "DisableLogging": "

        Stops logging information, such as queries and connection attempts, for the specified Amazon Redshift cluster.

        ", "DisableSnapshotCopy": "

        Disables the automatic copying of snapshots from one region to another region for a specified cluster.

        If your cluster and its snapshots are encrypted using a customer master key (CMK) from AWS KMS, use DeleteSnapshotCopyGrant to delete the grant that grants Amazon Redshift permission to the CMK in the destination region.

        ", "EnableLogging": "

        Starts logging information, such as queries and connection attempts, for the specified Amazon Redshift cluster.

        ", "EnableSnapshotCopy": "

        Enables the automatic copy of snapshots from one region to another region for a specified cluster.

        ", "ModifyCluster": "

        Modifies the settings for a cluster. For example, you can add another security or parameter group, update the preferred maintenance window, or change the master user password. Resetting a cluster password or modifying the security groups associated with a cluster do not need a reboot. However, modifying a parameter group requires a reboot for parameters to take effect. For more information about managing clusters, go to Amazon Redshift Clusters in the Amazon Redshift Cluster Management Guide.

        You can also change node type and the number of nodes to scale up or down the cluster. When resizing a cluster, you must specify both the number of nodes and the node type even if one of the parameters does not change.

        ", "ModifyClusterIamRoles": "

        Modifies the list of AWS Identity and Access Management (IAM) roles that can be used by the cluster to access other AWS services.

        A cluster can have up to 10 IAM roles associated at any time.

        ", "ModifyClusterParameterGroup": "

        Modifies the parameters of a parameter group.

        For more information about parameters and parameter groups, go to Amazon Redshift Parameter Groups in the Amazon Redshift Cluster Management Guide.

        ", "ModifyClusterSubnetGroup": "

        Modifies a cluster subnet group to include the specified list of VPC subnets. The operation replaces the existing list of subnets with the new list of subnets.

        ", "ModifyEventSubscription": "

        Modifies an existing Amazon Redshift event notification subscription.

        ", "ModifySnapshotCopyRetentionPeriod": "

        Modifies the number of days to retain automated snapshots in the destination region after they are copied from the source region.

        ", "PurchaseReservedNodeOffering": "

        Allows you to purchase reserved nodes. Amazon Redshift offers a predefined set of reserved node offerings. You can purchase one or more of the offerings. You can call the DescribeReservedNodeOfferings API to obtain the available reserved node offerings. You can call this API by providing a specific reserved node offering and the number of nodes you want to reserve.

        For more information about reserved node offerings, go to Purchasing Reserved Nodes in the Amazon Redshift Cluster Management Guide.

        ", "RebootCluster": "

        Reboots a cluster. This action is taken as soon as possible. It results in a momentary outage to the cluster, during which the cluster status is set to rebooting. A cluster event is created when the reboot is completed. Any pending cluster modifications (see ModifyCluster) are applied at this reboot. For more information about managing clusters, go to Amazon Redshift Clusters in the Amazon Redshift Cluster Management Guide.

        ", "ResetClusterParameterGroup": "

        Sets one or more parameters of the specified parameter group to their default values and sets the source values of the parameters to \"engine-default\". To reset the entire parameter group specify the ResetAllParameters parameter. For parameter changes to take effect you must reboot any associated clusters.

        ", "RestoreFromClusterSnapshot": "

        Creates a new cluster from a snapshot. By default, Amazon Redshift creates the resulting cluster with the same configuration as the original cluster from which the snapshot was created, except that the new cluster is created with the default cluster security and parameter groups. After Amazon Redshift creates the cluster, you can use the ModifyCluster API to associate a different security group and different parameter group with the restored cluster. If you are using a DS node type, you can also choose to change to another DS node type of the same size during restore.

        If you restore a cluster into a VPC, you must provide a cluster subnet group where you want the cluster restored.

        For more information about working with snapshots, go to Amazon Redshift Snapshots in the Amazon Redshift Cluster Management Guide.

        ", "RestoreTableFromClusterSnapshot": "

        Creates a new table from a table in an Amazon Redshift cluster snapshot. You must create the new table within the Amazon Redshift cluster that the snapshot was taken from.

        You cannot use RestoreTableFromClusterSnapshot to restore a table with the same name as an existing table in an Amazon Redshift cluster. That is, you cannot overwrite an existing table in a cluster with a restored table. If you want to replace your original table with a new, restored table, then rename or drop your original table before you call RestoreTableFromClusterSnapshot. When you have renamed your original table, then you can pass the original name of the table as the NewTableName parameter value in the call to RestoreTableFromClusterSnapshot. This way, you can replace the original table with the table created from the snapshot.

        ", "RevokeClusterSecurityGroupIngress": "

        Revokes an ingress rule in an Amazon Redshift security group for a previously authorized IP range or Amazon EC2 security group. To add an ingress rule, see AuthorizeClusterSecurityGroupIngress. For information about managing security groups, go to Amazon Redshift Cluster Security Groups in the Amazon Redshift Cluster Management Guide.

        ", "RevokeSnapshotAccess": "

        Removes the ability of the specified AWS customer account to restore the specified snapshot. If the account is currently restoring the snapshot, the restore will run to completion.

        For more information about working with snapshots, go to Amazon Redshift Snapshots in the Amazon Redshift Cluster Management Guide.

        ", "RotateEncryptionKey": "

        Rotates the encryption keys for a cluster.

        " }, "shapes": { "AccessToSnapshotDeniedFault": { "base": "

        The owner of the specified snapshot has not authorized your account to access the snapshot.

        ", "refs": { } }, "AccountWithRestoreAccess": { "base": "

        Describes an AWS customer account authorized to restore a snapshot.

        ", "refs": { "AccountsWithRestoreAccessList$member": null } }, "AccountsWithRestoreAccessList": { "base": null, "refs": { "Snapshot$AccountsWithRestoreAccess": "

        A list of the AWS customer accounts authorized to restore the snapshot. Returns null if no accounts are authorized. Visible only to the snapshot owner.

        " } }, "AuthorizationAlreadyExistsFault": { "base": "

        The specified CIDR block or EC2 security group is already authorized for the specified cluster security group.

        ", "refs": { } }, "AuthorizationNotFoundFault": { "base": "

        The specified CIDR IP range or EC2 security group is not authorized for the specified cluster security group.

        ", "refs": { } }, "AuthorizationQuotaExceededFault": { "base": "

        The authorization quota for the cluster security group has been reached.

        ", "refs": { } }, "AuthorizeClusterSecurityGroupIngressMessage": { "base": "

        ", "refs": { } }, "AuthorizeClusterSecurityGroupIngressResult": { "base": null, "refs": { } }, "AuthorizeSnapshotAccessMessage": { "base": "

        ", "refs": { } }, "AuthorizeSnapshotAccessResult": { "base": null, "refs": { } }, "AvailabilityZone": { "base": "

        Describes an availability zone.

        ", "refs": { "AvailabilityZoneList$member": null, "Subnet$SubnetAvailabilityZone": null } }, "AvailabilityZoneList": { "base": null, "refs": { "OrderableClusterOption$AvailabilityZones": "

        A list of availability zones for the orderable cluster.

        " } }, "Boolean": { "base": null, "refs": { "Cluster$AllowVersionUpgrade": "

        A Boolean value that, if true, indicates that major version upgrades will be applied automatically to the cluster during the maintenance window.

        ", "Cluster$PubliclyAccessible": "

        A Boolean value that, if true, indicates that the cluster can be accessed from a public network.

        ", "Cluster$Encrypted": "

        A Boolean value that, if true, indicates that data in the cluster is encrypted at rest.

        ", "Cluster$EnhancedVpcRouting": "

        An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the Amazon Redshift Cluster Management Guide.

        If this option is true, enhanced VPC routing is enabled.

        Default: false

        ", "DeleteClusterMessage$SkipFinalClusterSnapshot": "

        Determines whether a final snapshot of the cluster is created before Amazon Redshift deletes the cluster. If true, a final cluster snapshot is not created. If false, a final cluster snapshot is created before the cluster is deleted.

        The FinalClusterSnapshotIdentifier parameter must be specified if SkipFinalClusterSnapshot is false.

        Default: false

        ", "EventSubscription$Enabled": "

        A Boolean value indicating whether the subscription is enabled. true indicates the subscription is enabled.

        ", "LoggingStatus$LoggingEnabled": "

        true if logging is on, false if logging is off.

        ", "Parameter$IsModifiable": "

        If true, the parameter can be modified. Some parameters have security or operational implications that prevent them from being changed.

        ", "ResetClusterParameterGroupMessage$ResetAllParameters": "

        If true, all parameters in the specified parameter group will be reset to their default values.

        Default: true

        ", "Snapshot$Encrypted": "

        If true, the data in the snapshot is encrypted at rest.

        ", "Snapshot$EncryptedWithHSM": "

        A boolean that indicates whether the snapshot data is encrypted using the HSM keys of the source cluster. true indicates that the data is encrypted using HSM keys.

        ", "Snapshot$EnhancedVpcRouting": "

        An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the Amazon Redshift Cluster Management Guide.

        If this option is true, enhanced VPC routing is enabled.

        Default: false

        " } }, "BooleanOptional": { "base": null, "refs": { "CreateClusterMessage$AllowVersionUpgrade": "

        If true, major version upgrades can be applied during the maintenance window to the Amazon Redshift engine that is running on the cluster.

        When a new major version of the Amazon Redshift engine is released, you can request that the service automatically apply upgrades during the maintenance window to the Amazon Redshift engine that is running on your cluster.

        Default: true

        ", "CreateClusterMessage$PubliclyAccessible": "

        If true, the cluster can be accessed from a public network.

        ", "CreateClusterMessage$Encrypted": "

        If true, the data in the cluster is encrypted at rest.

        Default: false

        ", "CreateClusterMessage$EnhancedVpcRouting": "

        An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the Amazon Redshift Cluster Management Guide.

        If this option is true, enhanced VPC routing is enabled.

        Default: false

        ", "CreateEventSubscriptionMessage$Enabled": "

        A Boolean value; set to true to activate the subscription, set to false to create the subscription but not active it.

        ", "ModifyClusterMessage$AllowVersionUpgrade": "

        If true, major version upgrades will be applied automatically to the cluster during the maintenance window.

        Default: false

        ", "ModifyClusterMessage$PubliclyAccessible": "

        If true, the cluster can be accessed from a public network. Only clusters in VPCs can be set to be publicly available.

        ", "ModifyClusterMessage$EnhancedVpcRouting": "

        An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the Amazon Redshift Cluster Management Guide.

        If this option is true, enhanced VPC routing is enabled.

        Default: false

        ", "ModifyEventSubscriptionMessage$Enabled": "

        A Boolean value indicating if the subscription is enabled. true indicates the subscription is enabled

        ", "PendingModifiedValues$PubliclyAccessible": "

        The pending or in-progress change of the ability to connect to the cluster from the public network.

        ", "PendingModifiedValues$EnhancedVpcRouting": "

        An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the Amazon Redshift Cluster Management Guide.

        If this option is true, enhanced VPC routing is enabled.

        Default: false

        ", "RestoreFromClusterSnapshotMessage$AllowVersionUpgrade": "

        If true, major version upgrades can be applied during the maintenance window to the Amazon Redshift engine that is running on the cluster.

        Default: true

        ", "RestoreFromClusterSnapshotMessage$PubliclyAccessible": "

        If true, the cluster can be accessed from a public network.

        ", "RestoreFromClusterSnapshotMessage$EnhancedVpcRouting": "

        An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the Amazon Redshift Cluster Management Guide.

        If this option is true, enhanced VPC routing is enabled.

        Default: false

        " } }, "BucketNotFoundFault": { "base": "

        Could not find the specified S3 bucket.

        ", "refs": { } }, "Cluster": { "base": "

        Describes a cluster.

        ", "refs": { "ClusterList$member": null, "CreateClusterResult$Cluster": null, "DeleteClusterResult$Cluster": null, "DisableSnapshotCopyResult$Cluster": null, "EnableSnapshotCopyResult$Cluster": null, "ModifyClusterIamRolesResult$Cluster": null, "ModifyClusterResult$Cluster": null, "ModifySnapshotCopyRetentionPeriodResult$Cluster": null, "RebootClusterResult$Cluster": null, "RestoreFromClusterSnapshotResult$Cluster": null, "RotateEncryptionKeyResult$Cluster": null } }, "ClusterAlreadyExistsFault": { "base": "

        The account already has a cluster with the given identifier.

        ", "refs": { } }, "ClusterIamRole": { "base": "

        An AWS Identity and Access Management (IAM) role that can be used by the associated Amazon Redshift cluster to access other AWS services.

        ", "refs": { "ClusterIamRoleList$member": null } }, "ClusterIamRoleList": { "base": null, "refs": { "Cluster$IamRoles": "

        A list of AWS Identity and Access Management (IAM) roles that can be used by the cluster to access other AWS services.

        " } }, "ClusterList": { "base": null, "refs": { "ClustersMessage$Clusters": "

        A list of Cluster objects, where each object describes one cluster.

        " } }, "ClusterNode": { "base": "

        The identifier of a node in a cluster.

        ", "refs": { "ClusterNodesList$member": null } }, "ClusterNodesList": { "base": null, "refs": { "Cluster$ClusterNodes": "

        The nodes in the cluster.

        " } }, "ClusterNotFoundFault": { "base": "

        The ClusterIdentifier parameter does not refer to an existing cluster.

        ", "refs": { } }, "ClusterParameterGroup": { "base": "

        Describes a parameter group.

        ", "refs": { "CreateClusterParameterGroupResult$ClusterParameterGroup": null, "ParameterGroupList$member": null } }, "ClusterParameterGroupAlreadyExistsFault": { "base": "

        A cluster parameter group with the same name already exists.

        ", "refs": { } }, "ClusterParameterGroupDetails": { "base": "

        Contains the output from the DescribeClusterParameters action.

        ", "refs": { } }, "ClusterParameterGroupNameMessage": { "base": "

        ", "refs": { } }, "ClusterParameterGroupNotFoundFault": { "base": "

        The parameter group name does not refer to an existing parameter group.

        ", "refs": { } }, "ClusterParameterGroupQuotaExceededFault": { "base": "

        The request would result in the user exceeding the allowed number of cluster parameter groups. For information about increasing your quota, go to Limits in Amazon Redshift in the Amazon Redshift Cluster Management Guide.

        ", "refs": { } }, "ClusterParameterGroupStatus": { "base": "

        Describes the status of a parameter group.

        ", "refs": { "ClusterParameterGroupStatusList$member": null } }, "ClusterParameterGroupStatusList": { "base": null, "refs": { "Cluster$ClusterParameterGroups": "

        The list of cluster parameter groups that are associated with this cluster. Each parameter group in the list is returned with its status.

        " } }, "ClusterParameterGroupsMessage": { "base": "

        Contains the output from the DescribeClusterParameterGroups action.

        ", "refs": { } }, "ClusterParameterStatus": { "base": "

        Describes the status of a parameter group.

        ", "refs": { "ClusterParameterStatusList$member": null } }, "ClusterParameterStatusList": { "base": null, "refs": { "ClusterParameterGroupStatus$ClusterParameterStatusList": "

        The list of parameter statuses.

        For more information about parameters and parameter groups, go to Amazon Redshift Parameter Groups in the Amazon Redshift Cluster Management Guide.

        " } }, "ClusterQuotaExceededFault": { "base": "

        The request would exceed the allowed number of cluster instances for this account. For information about increasing your quota, go to Limits in Amazon Redshift in the Amazon Redshift Cluster Management Guide.

        ", "refs": { } }, "ClusterSecurityGroup": { "base": "

        Describes a security group.

        ", "refs": { "AuthorizeClusterSecurityGroupIngressResult$ClusterSecurityGroup": null, "ClusterSecurityGroups$member": null, "CreateClusterSecurityGroupResult$ClusterSecurityGroup": null, "RevokeClusterSecurityGroupIngressResult$ClusterSecurityGroup": null } }, "ClusterSecurityGroupAlreadyExistsFault": { "base": "

        A cluster security group with the same name already exists.

        ", "refs": { } }, "ClusterSecurityGroupMembership": { "base": "

        Describes a cluster security group.

        ", "refs": { "ClusterSecurityGroupMembershipList$member": null } }, "ClusterSecurityGroupMembershipList": { "base": null, "refs": { "Cluster$ClusterSecurityGroups": "

        A list of cluster security group that are associated with the cluster. Each security group is represented by an element that contains ClusterSecurityGroup.Name and ClusterSecurityGroup.Status subelements.

        Cluster security groups are used when the cluster is not created in an Amazon Virtual Private Cloud (VPC). Clusters that are created in a VPC use VPC security groups, which are listed by the VpcSecurityGroups parameter.

        " } }, "ClusterSecurityGroupMessage": { "base": "

        ", "refs": { } }, "ClusterSecurityGroupNameList": { "base": null, "refs": { "CreateClusterMessage$ClusterSecurityGroups": "

        A list of security groups to be associated with this cluster.

        Default: The default cluster security group for Amazon Redshift.

        ", "ModifyClusterMessage$ClusterSecurityGroups": "

        A list of cluster security groups to be authorized on this cluster. This change is asynchronously applied as soon as possible.

        Security groups currently associated with the cluster, and not in the list of groups to apply, will be revoked from the cluster.

        Constraints:

        • Must be 1 to 255 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "RestoreFromClusterSnapshotMessage$ClusterSecurityGroups": "

        A list of security groups to be associated with this cluster.

        Default: The default cluster security group for Amazon Redshift.

        Cluster security groups only apply to clusters outside of VPCs.

        " } }, "ClusterSecurityGroupNotFoundFault": { "base": "

        The cluster security group name does not refer to an existing cluster security group.

        ", "refs": { } }, "ClusterSecurityGroupQuotaExceededFault": { "base": "

        The request would result in the user exceeding the allowed number of cluster security groups. For information about increasing your quota, go to Limits in Amazon Redshift in the Amazon Redshift Cluster Management Guide.

        ", "refs": { } }, "ClusterSecurityGroups": { "base": null, "refs": { "ClusterSecurityGroupMessage$ClusterSecurityGroups": "

        A list of ClusterSecurityGroup instances.

        " } }, "ClusterSnapshotAlreadyExistsFault": { "base": "

        The value specified as a snapshot identifier is already used by an existing snapshot.

        ", "refs": { } }, "ClusterSnapshotCopyStatus": { "base": "

        Returns the destination region and retention period that are configured for cross-region snapshot copy.

        ", "refs": { "Cluster$ClusterSnapshotCopyStatus": "

        A value that returns the destination region and retention period that are configured for cross-region snapshot copy.

        " } }, "ClusterSnapshotNotFoundFault": { "base": "

        The snapshot identifier does not refer to an existing cluster snapshot.

        ", "refs": { } }, "ClusterSnapshotQuotaExceededFault": { "base": "

        The request would result in the user exceeding the allowed number of cluster snapshots.

        ", "refs": { } }, "ClusterSubnetGroup": { "base": "

        Describes a subnet group.

        ", "refs": { "ClusterSubnetGroups$member": null, "CreateClusterSubnetGroupResult$ClusterSubnetGroup": null, "ModifyClusterSubnetGroupResult$ClusterSubnetGroup": null } }, "ClusterSubnetGroupAlreadyExistsFault": { "base": "

        A ClusterSubnetGroupName is already used by an existing cluster subnet group.

        ", "refs": { } }, "ClusterSubnetGroupMessage": { "base": "

        Contains the output from the DescribeClusterSubnetGroups action.

        ", "refs": { } }, "ClusterSubnetGroupNotFoundFault": { "base": "

        The cluster subnet group name does not refer to an existing cluster subnet group.

        ", "refs": { } }, "ClusterSubnetGroupQuotaExceededFault": { "base": "

        The request would result in user exceeding the allowed number of cluster subnet groups. For information about increasing your quota, go to Limits in Amazon Redshift in the Amazon Redshift Cluster Management Guide.

        ", "refs": { } }, "ClusterSubnetGroups": { "base": null, "refs": { "ClusterSubnetGroupMessage$ClusterSubnetGroups": "

        A list of ClusterSubnetGroup instances.

        " } }, "ClusterSubnetQuotaExceededFault": { "base": "

        The request would result in user exceeding the allowed number of subnets in a cluster subnet groups. For information about increasing your quota, go to Limits in Amazon Redshift in the Amazon Redshift Cluster Management Guide.

        ", "refs": { } }, "ClusterVersion": { "base": "

        Describes a cluster version, including the parameter group family and description of the version.

        ", "refs": { "ClusterVersionList$member": null } }, "ClusterVersionList": { "base": null, "refs": { "ClusterVersionsMessage$ClusterVersions": "

        A list of Version elements.

        " } }, "ClusterVersionsMessage": { "base": "

        Contains the output from the DescribeClusterVersions action.

        ", "refs": { } }, "ClustersMessage": { "base": "

        Contains the output from the DescribeClusters action.

        ", "refs": { } }, "CopyClusterSnapshotMessage": { "base": "

        ", "refs": { } }, "CopyClusterSnapshotResult": { "base": null, "refs": { } }, "CopyToRegionDisabledFault": { "base": "

        Cross-region snapshot copy was temporarily disabled. Try your request again.

        ", "refs": { } }, "CreateClusterMessage": { "base": "

        ", "refs": { } }, "CreateClusterParameterGroupMessage": { "base": "

        ", "refs": { } }, "CreateClusterParameterGroupResult": { "base": null, "refs": { } }, "CreateClusterResult": { "base": null, "refs": { } }, "CreateClusterSecurityGroupMessage": { "base": "

        ", "refs": { } }, "CreateClusterSecurityGroupResult": { "base": null, "refs": { } }, "CreateClusterSnapshotMessage": { "base": "

        ", "refs": { } }, "CreateClusterSnapshotResult": { "base": null, "refs": { } }, "CreateClusterSubnetGroupMessage": { "base": "

        ", "refs": { } }, "CreateClusterSubnetGroupResult": { "base": null, "refs": { } }, "CreateEventSubscriptionMessage": { "base": "

        ", "refs": { } }, "CreateEventSubscriptionResult": { "base": null, "refs": { } }, "CreateHsmClientCertificateMessage": { "base": "

        ", "refs": { } }, "CreateHsmClientCertificateResult": { "base": null, "refs": { } }, "CreateHsmConfigurationMessage": { "base": "

        ", "refs": { } }, "CreateHsmConfigurationResult": { "base": null, "refs": { } }, "CreateSnapshotCopyGrantMessage": { "base": "

        The result of the CreateSnapshotCopyGrant action.

        ", "refs": { } }, "CreateSnapshotCopyGrantResult": { "base": null, "refs": { } }, "CreateTagsMessage": { "base": "

        Contains the output from the CreateTags action.

        ", "refs": { } }, "DefaultClusterParameters": { "base": "

        Describes the default cluster parameters for a parameter group family.

        ", "refs": { "DescribeDefaultClusterParametersResult$DefaultClusterParameters": null } }, "DeleteClusterMessage": { "base": "

        ", "refs": { } }, "DeleteClusterParameterGroupMessage": { "base": "

        ", "refs": { } }, "DeleteClusterResult": { "base": null, "refs": { } }, "DeleteClusterSecurityGroupMessage": { "base": "

        ", "refs": { } }, "DeleteClusterSnapshotMessage": { "base": "

        ", "refs": { } }, "DeleteClusterSnapshotResult": { "base": null, "refs": { } }, "DeleteClusterSubnetGroupMessage": { "base": "

        ", "refs": { } }, "DeleteEventSubscriptionMessage": { "base": "

        ", "refs": { } }, "DeleteHsmClientCertificateMessage": { "base": "

        ", "refs": { } }, "DeleteHsmConfigurationMessage": { "base": "

        ", "refs": { } }, "DeleteSnapshotCopyGrantMessage": { "base": "

        The result of the DeleteSnapshotCopyGrant action.

        ", "refs": { } }, "DeleteTagsMessage": { "base": "

        Contains the output from the DeleteTags action.

        ", "refs": { } }, "DependentServiceRequestThrottlingFault": { "base": "

        The request cannot be completed because a dependent service is throttling requests made by Amazon Redshift on your behalf. Wait and retry the request.

        ", "refs": { } }, "DescribeClusterParameterGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeClusterParametersMessage": { "base": "

        ", "refs": { } }, "DescribeClusterSecurityGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeClusterSnapshotsMessage": { "base": "

        ", "refs": { } }, "DescribeClusterSubnetGroupsMessage": { "base": "

        ", "refs": { } }, "DescribeClusterVersionsMessage": { "base": "

        ", "refs": { } }, "DescribeClustersMessage": { "base": "

        ", "refs": { } }, "DescribeDefaultClusterParametersMessage": { "base": "

        ", "refs": { } }, "DescribeDefaultClusterParametersResult": { "base": null, "refs": { } }, "DescribeEventCategoriesMessage": { "base": "

        ", "refs": { } }, "DescribeEventSubscriptionsMessage": { "base": "

        ", "refs": { } }, "DescribeEventsMessage": { "base": "

        ", "refs": { } }, "DescribeHsmClientCertificatesMessage": { "base": "

        ", "refs": { } }, "DescribeHsmConfigurationsMessage": { "base": "

        ", "refs": { } }, "DescribeLoggingStatusMessage": { "base": "

        ", "refs": { } }, "DescribeOrderableClusterOptionsMessage": { "base": "

        ", "refs": { } }, "DescribeReservedNodeOfferingsMessage": { "base": "

        ", "refs": { } }, "DescribeReservedNodesMessage": { "base": "

        ", "refs": { } }, "DescribeResizeMessage": { "base": "

        ", "refs": { } }, "DescribeSnapshotCopyGrantsMessage": { "base": "

        The result of the DescribeSnapshotCopyGrants action.

        ", "refs": { } }, "DescribeTableRestoreStatusMessage": { "base": "

        ", "refs": { } }, "DescribeTagsMessage": { "base": "

        ", "refs": { } }, "DisableLoggingMessage": { "base": "

        ", "refs": { } }, "DisableSnapshotCopyMessage": { "base": "

        ", "refs": { } }, "DisableSnapshotCopyResult": { "base": null, "refs": { } }, "Double": { "base": null, "refs": { "RecurringCharge$RecurringChargeAmount": "

        The amount charged per the period of time specified by the recurring charge frequency.

        ", "ReservedNode$FixedPrice": "

        The fixed cost Amazon Redshift charges you for this reserved node.

        ", "ReservedNode$UsagePrice": "

        The hourly rate Amazon Redshift charges you for this reserved node.

        ", "ReservedNodeOffering$FixedPrice": "

        The upfront fixed charge you will pay to purchase the specific reserved node offering.

        ", "ReservedNodeOffering$UsagePrice": "

        The rate you are charged for each hour the cluster that is using the offering is running.

        ", "RestoreStatus$CurrentRestoreRateInMegaBytesPerSecond": "

        The number of megabytes per second being transferred from the backup storage. Returns the average rate for a completed backup.

        ", "Snapshot$TotalBackupSizeInMegaBytes": "

        The size of the complete set of backup data that would be used to restore the cluster.

        ", "Snapshot$ActualIncrementalBackupSizeInMegaBytes": "

        The size of the incremental backup.

        ", "Snapshot$BackupProgressInMegaBytes": "

        The number of megabytes that have been transferred to the snapshot backup.

        ", "Snapshot$CurrentBackupRateInMegaBytesPerSecond": "

        The number of megabytes per second being transferred to the snapshot backup. Returns 0 for a completed backup.

        " } }, "DoubleOptional": { "base": null, "refs": { "ResizeProgressMessage$AvgResizeRateInMegaBytesPerSecond": "

        The average rate of the resize operation over the last few minutes, measured in megabytes per second. After the resize operation completes, this value shows the average rate of the entire resize operation.

        " } }, "EC2SecurityGroup": { "base": "

        Describes an Amazon EC2 security group.

        ", "refs": { "EC2SecurityGroupList$member": null } }, "EC2SecurityGroupList": { "base": null, "refs": { "ClusterSecurityGroup$EC2SecurityGroups": "

        A list of EC2 security groups that are permitted to access clusters associated with this cluster security group.

        " } }, "ElasticIpStatus": { "base": "

        Describes the status of the elastic IP (EIP) address.

        ", "refs": { "Cluster$ElasticIpStatus": "

        The status of the elastic IP (EIP) address.

        " } }, "EnableLoggingMessage": { "base": "

        ", "refs": { } }, "EnableSnapshotCopyMessage": { "base": "

        ", "refs": { } }, "EnableSnapshotCopyResult": { "base": null, "refs": { } }, "Endpoint": { "base": "

        Describes a connection endpoint.

        ", "refs": { "Cluster$Endpoint": "

        The connection endpoint.

        " } }, "Event": { "base": "

        Describes an event.

        ", "refs": { "EventList$member": null } }, "EventCategoriesList": { "base": null, "refs": { "CreateEventSubscriptionMessage$EventCategories": "

        Specifies the Amazon Redshift event categories to be published by the event notification subscription.

        Values: Configuration, Management, Monitoring, Security

        ", "Event$EventCategories": "

        A list of the event categories.

        Values: Configuration, Management, Monitoring, Security

        ", "EventInfoMap$EventCategories": "

        The category of an Amazon Redshift event.

        ", "EventSubscription$EventCategoriesList": "

        The list of Amazon Redshift event categories specified in the event notification subscription.

        Values: Configuration, Management, Monitoring, Security

        ", "ModifyEventSubscriptionMessage$EventCategories": "

        Specifies the Amazon Redshift event categories to be published by the event notification subscription.

        Values: Configuration, Management, Monitoring, Security

        " } }, "EventCategoriesMap": { "base": "

        Describes event categories.

        ", "refs": { "EventCategoriesMapList$member": null } }, "EventCategoriesMapList": { "base": null, "refs": { "EventCategoriesMessage$EventCategoriesMapList": "

        A list of event categories descriptions.

        " } }, "EventCategoriesMessage": { "base": "

        ", "refs": { } }, "EventInfoMap": { "base": "

        Describes event information.

        ", "refs": { "EventInfoMapList$member": null } }, "EventInfoMapList": { "base": null, "refs": { "EventCategoriesMap$Events": "

        The events in the event category.

        " } }, "EventList": { "base": null, "refs": { "EventsMessage$Events": "

        A list of Event instances.

        " } }, "EventSubscription": { "base": "

        Describes event subscriptions.

        ", "refs": { "CreateEventSubscriptionResult$EventSubscription": null, "EventSubscriptionsList$member": null, "ModifyEventSubscriptionResult$EventSubscription": null } }, "EventSubscriptionQuotaExceededFault": { "base": "

        The request would exceed the allowed number of event subscriptions for this account. For information about increasing your quota, go to Limits in Amazon Redshift in the Amazon Redshift Cluster Management Guide.

        ", "refs": { } }, "EventSubscriptionsList": { "base": null, "refs": { "EventSubscriptionsMessage$EventSubscriptionsList": "

        A list of event subscriptions.

        " } }, "EventSubscriptionsMessage": { "base": "

        ", "refs": { } }, "EventsMessage": { "base": "

        ", "refs": { } }, "HsmClientCertificate": { "base": "

        Returns information about an HSM client certificate. The certificate is stored in a secure Hardware Storage Module (HSM), and used by the Amazon Redshift cluster to encrypt data files.

        ", "refs": { "CreateHsmClientCertificateResult$HsmClientCertificate": null, "HsmClientCertificateList$member": null } }, "HsmClientCertificateAlreadyExistsFault": { "base": "

        There is already an existing Amazon Redshift HSM client certificate with the specified identifier.

        ", "refs": { } }, "HsmClientCertificateList": { "base": null, "refs": { "HsmClientCertificateMessage$HsmClientCertificates": "

        A list of the identifiers for one or more HSM client certificates used by Amazon Redshift clusters to store and retrieve database encryption keys in an HSM.

        " } }, "HsmClientCertificateMessage": { "base": "

        ", "refs": { } }, "HsmClientCertificateNotFoundFault": { "base": "

        There is no Amazon Redshift HSM client certificate with the specified identifier.

        ", "refs": { } }, "HsmClientCertificateQuotaExceededFault": { "base": "

        The quota for HSM client certificates has been reached. For information about increasing your quota, go to Limits in Amazon Redshift in the Amazon Redshift Cluster Management Guide.

        ", "refs": { } }, "HsmConfiguration": { "base": "

        Returns information about an HSM configuration, which is an object that describes to Amazon Redshift clusters the information they require to connect to an HSM where they can store database encryption keys.

        ", "refs": { "CreateHsmConfigurationResult$HsmConfiguration": null, "HsmConfigurationList$member": null } }, "HsmConfigurationAlreadyExistsFault": { "base": "

        There is already an existing Amazon Redshift HSM configuration with the specified identifier.

        ", "refs": { } }, "HsmConfigurationList": { "base": null, "refs": { "HsmConfigurationMessage$HsmConfigurations": "

        A list of HsmConfiguration objects.

        " } }, "HsmConfigurationMessage": { "base": "

        ", "refs": { } }, "HsmConfigurationNotFoundFault": { "base": "

        There is no Amazon Redshift HSM configuration with the specified identifier.

        ", "refs": { } }, "HsmConfigurationQuotaExceededFault": { "base": "

        The quota for HSM configurations has been reached. For information about increasing your quota, go to Limits in Amazon Redshift in the Amazon Redshift Cluster Management Guide.

        ", "refs": { } }, "HsmStatus": { "base": "

        Describes the status of changes to HSM settings.

        ", "refs": { "Cluster$HsmStatus": "

        A value that reports whether the Amazon Redshift cluster has finished applying any hardware security module (HSM) settings changes specified in a modify cluster command.

        Values: active, applying

        " } }, "IPRange": { "base": "

        Describes an IP range used in a security group.

        ", "refs": { "IPRangeList$member": null } }, "IPRangeList": { "base": null, "refs": { "ClusterSecurityGroup$IPRanges": "

        A list of IP ranges (CIDR blocks) that are permitted to access clusters associated with this cluster security group.

        " } }, "IamRoleArnList": { "base": null, "refs": { "CreateClusterMessage$IamRoles": "

        A list of AWS Identity and Access Management (IAM) roles that can be used by the cluster to access other AWS services. You must supply the IAM roles in their Amazon Resource Name (ARN) format. You can supply up to 10 IAM roles in a single request.

        A cluster can have up to 10 IAM roles associated with it at any time.

        ", "ModifyClusterIamRolesMessage$AddIamRoles": "

        Zero or more IAM roles to associate with the cluster. The roles must be in their Amazon Resource Name (ARN) format. You can associate up to 10 IAM roles with a single cluster in a single request.

        ", "ModifyClusterIamRolesMessage$RemoveIamRoles": "

        Zero or more IAM roles in ARN format to disassociate from the cluster. You can disassociate up to 10 IAM roles from a single cluster in a single request.

        ", "RestoreFromClusterSnapshotMessage$IamRoles": "

        A list of AWS Identity and Access Management (IAM) roles that can be used by the cluster to access other AWS services. You must supply the IAM roles in their Amazon Resource Name (ARN) format. You can supply up to 10 IAM roles in a single request.

        A cluster can have up to 10 IAM roles associated at any time.

        " } }, "ImportTablesCompleted": { "base": null, "refs": { "ResizeProgressMessage$ImportTablesCompleted": "

        The names of tables that have been completely imported .

        Valid Values: List of table names.

        " } }, "ImportTablesInProgress": { "base": null, "refs": { "ResizeProgressMessage$ImportTablesInProgress": "

        The names of tables that are being currently imported.

        Valid Values: List of table names.

        " } }, "ImportTablesNotStarted": { "base": null, "refs": { "ResizeProgressMessage$ImportTablesNotStarted": "

        The names of tables that have not been yet imported.

        Valid Values: List of table names

        " } }, "InProgressTableRestoreQuotaExceededFault": { "base": "

        You have exceeded the allowed number of table restore requests. Wait for your current table restore requests to complete before making a new request.

        ", "refs": { } }, "IncompatibleOrderableOptions": { "base": "

        The specified options are incompatible.

        ", "refs": { } }, "InsufficientClusterCapacityFault": { "base": "

        The number of nodes specified exceeds the allotted capacity of the cluster.

        ", "refs": { } }, "InsufficientS3BucketPolicyFault": { "base": "

        The cluster does not have read bucket or put object permissions on the S3 bucket specified when enabling logging.

        ", "refs": { } }, "Integer": { "base": null, "refs": { "Cluster$AutomatedSnapshotRetentionPeriod": "

        The number of days that automatic cluster snapshots are retained.

        ", "Cluster$NumberOfNodes": "

        The number of compute nodes in the cluster.

        ", "Endpoint$Port": "

        The port that the database engine is listening on.

        ", "ModifySnapshotCopyRetentionPeriodMessage$RetentionPeriod": "

        The number of days to retain automated snapshots in the destination region after they are copied from the source region.

        If you decrease the retention period for automated snapshots that are copied to a destination region, Amazon Redshift will delete any existing automated snapshots that were copied to the destination region and that fall outside of the new retention period.

        Constraints: Must be at least 1 and no more than 35.

        ", "ReservedNode$Duration": "

        The duration of the node reservation in seconds.

        ", "ReservedNode$NodeCount": "

        The number of reserved compute nodes.

        ", "ReservedNodeOffering$Duration": "

        The duration, in seconds, for which the offering will reserve the node.

        ", "Snapshot$Port": "

        The port that the cluster is listening on.

        ", "Snapshot$NumberOfNodes": "

        The number of nodes in the cluster.

        " } }, "IntegerOptional": { "base": null, "refs": { "CreateClusterMessage$AutomatedSnapshotRetentionPeriod": "

        The number of days that automated snapshots are retained. If the value is 0, automated snapshots are disabled. Even if automated snapshots are disabled, you can still create manual snapshots when you want with CreateClusterSnapshot.

        Default: 1

        Constraints: Must be a value from 0 to 35.

        ", "CreateClusterMessage$Port": "

        The port number on which the cluster accepts incoming connections.

        The cluster is accessible only via the JDBC and ODBC connection strings. Part of the connection string requires the port on which the cluster will listen for incoming connections.

        Default: 5439

        Valid Values: 1150-65535

        ", "CreateClusterMessage$NumberOfNodes": "

        The number of compute nodes in the cluster. This parameter is required when the ClusterType parameter is specified as multi-node.

        For information about determining how many nodes you need, go to Working with Clusters in the Amazon Redshift Cluster Management Guide.

        If you don't specify this parameter, you get a single-node cluster. When requesting a multi-node cluster, you must specify the number of nodes that you want in the cluster.

        Default: 1

        Constraints: Value must be at least 1 and no more than 100.

        ", "DescribeClusterParameterGroupsMessage$MaxRecords": "

        The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

        Default: 100

        Constraints: minimum 20, maximum 100.

        ", "DescribeClusterParametersMessage$MaxRecords": "

        The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

        Default: 100

        Constraints: minimum 20, maximum 100.

        ", "DescribeClusterSecurityGroupsMessage$MaxRecords": "

        The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

        Default: 100

        Constraints: minimum 20, maximum 100.

        ", "DescribeClusterSnapshotsMessage$MaxRecords": "

        The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

        Default: 100

        Constraints: minimum 20, maximum 100.

        ", "DescribeClusterSubnetGroupsMessage$MaxRecords": "

        The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

        Default: 100

        Constraints: minimum 20, maximum 100.

        ", "DescribeClusterVersionsMessage$MaxRecords": "

        The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

        Default: 100

        Constraints: minimum 20, maximum 100.

        ", "DescribeClustersMessage$MaxRecords": "

        The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

        Default: 100

        Constraints: minimum 20, maximum 100.

        ", "DescribeDefaultClusterParametersMessage$MaxRecords": "

        The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

        Default: 100

        Constraints: minimum 20, maximum 100.

        ", "DescribeEventSubscriptionsMessage$MaxRecords": "

        The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

        Default: 100

        Constraints: minimum 20, maximum 100.

        ", "DescribeEventsMessage$Duration": "

        The number of minutes prior to the time of the request for which to retrieve events. For example, if the request is sent at 18:00 and you specify a duration of 60, then only events which have occurred after 17:00 will be returned.

        Default: 60

        ", "DescribeEventsMessage$MaxRecords": "

        The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

        Default: 100

        Constraints: minimum 20, maximum 100.

        ", "DescribeHsmClientCertificatesMessage$MaxRecords": "

        The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

        Default: 100

        Constraints: minimum 20, maximum 100.

        ", "DescribeHsmConfigurationsMessage$MaxRecords": "

        The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

        Default: 100

        Constraints: minimum 20, maximum 100.

        ", "DescribeOrderableClusterOptionsMessage$MaxRecords": "

        The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

        Default: 100

        Constraints: minimum 20, maximum 100.

        ", "DescribeReservedNodeOfferingsMessage$MaxRecords": "

        The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

        Default: 100

        Constraints: minimum 20, maximum 100.

        ", "DescribeReservedNodesMessage$MaxRecords": "

        The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

        Default: 100

        Constraints: minimum 20, maximum 100.

        ", "DescribeSnapshotCopyGrantsMessage$MaxRecords": "

        The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

        Default: 100

        Constraints: minimum 20, maximum 100.

        ", "DescribeTableRestoreStatusMessage$MaxRecords": "

        The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

        ", "DescribeTagsMessage$MaxRecords": "

        The maximum number or response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

        ", "EnableSnapshotCopyMessage$RetentionPeriod": "

        The number of days to retain automated snapshots in the destination region after they are copied from the source region.

        Default: 7.

        Constraints: Must be at least 1 and no more than 35.

        ", "ModifyClusterMessage$NumberOfNodes": "

        The new number of nodes of the cluster. If you specify a new number of nodes, you must also specify the node type parameter.

        When you submit your request to resize a cluster, Amazon Redshift sets access permissions for the cluster to read-only. After Amazon Redshift provisions a new cluster according to your resize requirements, there will be a temporary outage while the old cluster is deleted and your connection is switched to the new cluster. When the new connection is complete, the original access permissions for the cluster are restored. You can use DescribeResize to track the progress of the resize request.

        Valid Values: Integer greater than 0.

        ", "ModifyClusterMessage$AutomatedSnapshotRetentionPeriod": "

        The number of days that automated snapshots are retained. If the value is 0, automated snapshots are disabled. Even if automated snapshots are disabled, you can still create manual snapshots when you want with CreateClusterSnapshot.

        If you decrease the automated snapshot retention period from its current value, existing automated snapshots that fall outside of the new retention period will be immediately deleted.

        Default: Uses existing setting.

        Constraints: Must be a value from 0 to 35.

        ", "PendingModifiedValues$NumberOfNodes": "

        The pending or in-progress change of the number of nodes in the cluster.

        ", "PendingModifiedValues$AutomatedSnapshotRetentionPeriod": "

        The pending or in-progress change of the automated snapshot retention period.

        ", "PurchaseReservedNodeOfferingMessage$NodeCount": "

        The number of reserved nodes that you want to purchase.

        Default: 1

        ", "ResizeProgressMessage$TargetNumberOfNodes": "

        The number of nodes that the cluster will have after the resize operation is complete.

        ", "RestoreFromClusterSnapshotMessage$Port": "

        The port number on which the cluster accepts connections.

        Default: The same port as the original cluster.

        Constraints: Must be between 1115 and 65535.

        ", "RestoreFromClusterSnapshotMessage$AutomatedSnapshotRetentionPeriod": "

        The number of days that automated snapshots are retained. If the value is 0, automated snapshots are disabled. Even if automated snapshots are disabled, you can still create manual snapshots when you want with CreateClusterSnapshot.

        Default: The value selected for the cluster from which the snapshot was taken.

        Constraints: Must be a value from 0 to 35.

        " } }, "InvalidClusterParameterGroupStateFault": { "base": "

        The cluster parameter group action can not be completed because another task is in progress that involves the parameter group. Wait a few moments and try the operation again.

        ", "refs": { } }, "InvalidClusterSecurityGroupStateFault": { "base": "

        The state of the cluster security group is not available.

        ", "refs": { } }, "InvalidClusterSnapshotStateFault": { "base": "

        The specified cluster snapshot is not in the available state, or other accounts are authorized to access the snapshot.

        ", "refs": { } }, "InvalidClusterStateFault": { "base": "

        The specified cluster is not in the available state.

        ", "refs": { } }, "InvalidClusterSubnetGroupStateFault": { "base": "

        The cluster subnet group cannot be deleted because it is in use.

        ", "refs": { } }, "InvalidClusterSubnetStateFault": { "base": "

        The state of the subnet is invalid.

        ", "refs": { } }, "InvalidElasticIpFault": { "base": "

        The Elastic IP (EIP) is invalid or cannot be found.

        ", "refs": { } }, "InvalidHsmClientCertificateStateFault": { "base": "

        The specified HSM client certificate is not in the available state, or it is still in use by one or more Amazon Redshift clusters.

        ", "refs": { } }, "InvalidHsmConfigurationStateFault": { "base": "

        The specified HSM configuration is not in the available state, or it is still in use by one or more Amazon Redshift clusters.

        ", "refs": { } }, "InvalidRestoreFault": { "base": "

        The restore is invalid.

        ", "refs": { } }, "InvalidS3BucketNameFault": { "base": "

        The S3 bucket name is invalid. For more information about naming rules, go to Bucket Restrictions and Limitations in the Amazon Simple Storage Service (S3) Developer Guide.

        ", "refs": { } }, "InvalidS3KeyPrefixFault": { "base": "

        The string specified for the logging S3 key prefix does not comply with the documented constraints.

        ", "refs": { } }, "InvalidSnapshotCopyGrantStateFault": { "base": "

        The snapshot copy grant can't be deleted because it is used by one or more clusters.

        ", "refs": { } }, "InvalidSubnet": { "base": "

        The requested subnet is not valid, or not all of the subnets are in the same VPC.

        ", "refs": { } }, "InvalidSubscriptionStateFault": { "base": "

        The subscription request is invalid because it is a duplicate request. This subscription request is already in progress.

        ", "refs": { } }, "InvalidTableRestoreArgumentFault": { "base": "

        The value specified for the sourceDatabaseName, sourceSchemaName, or sourceTableName parameter, or a combination of these, doesn't exist in the snapshot.

        ", "refs": { } }, "InvalidTagFault": { "base": "

        The tag is invalid.

        ", "refs": { } }, "InvalidVPCNetworkStateFault": { "base": "

        The cluster subnet group does not cover all Availability Zones.

        ", "refs": { } }, "LimitExceededFault": { "base": "

        The encryption key has exceeded its grant limit in AWS KMS.

        ", "refs": { } }, "LoggingStatus": { "base": "

        Describes the status of logging for a cluster.

        ", "refs": { } }, "Long": { "base": null, "refs": { "ClusterSnapshotCopyStatus$RetentionPeriod": "

        The number of days that automated snapshots are retained in the destination region after they are copied from a source region.

        ", "RestoreStatus$SnapshotSizeInMegaBytes": "

        The size of the set of snapshot data used to restore the cluster.

        ", "RestoreStatus$ProgressInMegaBytes": "

        The number of megabytes that have been transferred from snapshot storage.

        ", "RestoreStatus$ElapsedTimeInSeconds": "

        The amount of time an in-progress restore has been running, or the amount of time it took a completed restore to finish.

        ", "RestoreStatus$EstimatedTimeToCompletionInSeconds": "

        The estimate of the time remaining before the restore will complete. Returns 0 for a completed restore.

        ", "Snapshot$EstimatedSecondsToCompletion": "

        The estimate of the time remaining before the snapshot backup will complete. Returns 0 for a completed backup.

        ", "Snapshot$ElapsedTimeInSeconds": "

        The amount of time an in-progress snapshot backup has been running, or the amount of time it took a completed backup to finish.

        " } }, "LongOptional": { "base": null, "refs": { "ResizeProgressMessage$TotalResizeDataInMegaBytes": "

        The estimated total amount of data, in megabytes, on the cluster before the resize operation began.

        ", "ResizeProgressMessage$ProgressInMegaBytes": "

        While the resize operation is in progress, this value shows the current amount of data, in megabytes, that has been processed so far. When the resize operation is complete, this value shows the total amount of data, in megabytes, on the cluster, which may be more or less than TotalResizeDataInMegaBytes (the estimated total amount of data before resize).

        ", "ResizeProgressMessage$ElapsedTimeInSeconds": "

        The amount of seconds that have elapsed since the resize operation began. After the resize operation completes, this value shows the total actual time, in seconds, for the resize operation.

        ", "ResizeProgressMessage$EstimatedTimeToCompletionInSeconds": "

        The estimated time remaining, in seconds, until the resize operation is complete. This value is calculated based on the average resize rate and the estimated amount of data remaining to be processed. Once the resize operation is complete, this value will be 0.

        ", "TableRestoreStatus$ProgressInMegaBytes": "

        The amount of data restored to the new table so far, in megabytes (MB).

        ", "TableRestoreStatus$TotalDataInMegaBytes": "

        The total amount of data to restore to the new table, in megabytes (MB).

        " } }, "ModifyClusterIamRolesMessage": { "base": "

        ", "refs": { } }, "ModifyClusterIamRolesResult": { "base": null, "refs": { } }, "ModifyClusterMessage": { "base": "

        ", "refs": { } }, "ModifyClusterParameterGroupMessage": { "base": "

        ", "refs": { } }, "ModifyClusterResult": { "base": null, "refs": { } }, "ModifyClusterSubnetGroupMessage": { "base": "

        ", "refs": { } }, "ModifyClusterSubnetGroupResult": { "base": null, "refs": { } }, "ModifyEventSubscriptionMessage": { "base": "

        ", "refs": { } }, "ModifyEventSubscriptionResult": { "base": null, "refs": { } }, "ModifySnapshotCopyRetentionPeriodMessage": { "base": "

        ", "refs": { } }, "ModifySnapshotCopyRetentionPeriodResult": { "base": null, "refs": { } }, "NumberOfNodesPerClusterLimitExceededFault": { "base": "

        The operation would exceed the number of nodes allowed for a cluster.

        ", "refs": { } }, "NumberOfNodesQuotaExceededFault": { "base": "

        The operation would exceed the number of nodes allotted to the account. For information about increasing your quota, go to Limits in Amazon Redshift in the Amazon Redshift Cluster Management Guide.

        ", "refs": { } }, "OrderableClusterOption": { "base": "

        Describes an orderable cluster option.

        ", "refs": { "OrderableClusterOptionsList$member": null } }, "OrderableClusterOptionsList": { "base": null, "refs": { "OrderableClusterOptionsMessage$OrderableClusterOptions": "

        An OrderableClusterOption structure containing information about orderable options for the cluster.

        " } }, "OrderableClusterOptionsMessage": { "base": "

        Contains the output from the DescribeOrderableClusterOptions action.

        ", "refs": { } }, "Parameter": { "base": "

        Describes a parameter in a cluster parameter group.

        ", "refs": { "ParametersList$member": null } }, "ParameterApplyType": { "base": null, "refs": { "Parameter$ApplyType": "

        Specifies how to apply the WLM configuration parameter. Some properties can be applied dynamically, while other properties require that any associated clusters be rebooted for the configuration changes to be applied. For more information about parameters and parameter groups, go to Amazon Redshift Parameter Groups in the Amazon Redshift Cluster Management Guide.

        " } }, "ParameterGroupList": { "base": null, "refs": { "ClusterParameterGroupsMessage$ParameterGroups": "

        A list of ClusterParameterGroup instances. Each instance describes one cluster parameter group.

        " } }, "ParametersList": { "base": null, "refs": { "ClusterParameterGroupDetails$Parameters": "

        A list of Parameter instances. Each instance lists the parameters of one cluster parameter group.

        ", "DefaultClusterParameters$Parameters": "

        The list of cluster default parameters.

        ", "ModifyClusterParameterGroupMessage$Parameters": "

        An array of parameters to be modified. A maximum of 20 parameters can be modified in a single request.

        For each parameter to be modified, you must supply at least the parameter name and parameter value; other name-value pairs of the parameter are optional.

        For the workload management (WLM) configuration, you must supply all the name-value pairs in the wlm_json_configuration parameter.

        ", "ResetClusterParameterGroupMessage$Parameters": "

        An array of names of parameters to be reset. If ResetAllParameters option is not used, then at least one parameter name must be supplied.

        Constraints: A maximum of 20 parameters can be reset in a single request.

        " } }, "PendingModifiedValues": { "base": "

        Describes cluster attributes that are in a pending state. A change to one or more the attributes was requested and is in progress or will be applied.

        ", "refs": { "Cluster$PendingModifiedValues": "

        A value that, if present, indicates that changes to the cluster are pending. Specific pending changes are identified by subelements.

        " } }, "PurchaseReservedNodeOfferingMessage": { "base": "

        ", "refs": { } }, "PurchaseReservedNodeOfferingResult": { "base": null, "refs": { } }, "RebootClusterMessage": { "base": "

        ", "refs": { } }, "RebootClusterResult": { "base": null, "refs": { } }, "RecurringCharge": { "base": "

        Describes a recurring charge.

        ", "refs": { "RecurringChargeList$member": null } }, "RecurringChargeList": { "base": null, "refs": { "ReservedNode$RecurringCharges": "

        The recurring charges for the reserved node.

        ", "ReservedNodeOffering$RecurringCharges": "

        The charge to your account regardless of whether you are creating any clusters using the node offering. Recurring charges are only in effect for heavy-utilization reserved nodes.

        " } }, "ReservedNode": { "base": "

        Describes a reserved node. You can call the DescribeReservedNodeOfferings API to obtain the available reserved node offerings.

        ", "refs": { "PurchaseReservedNodeOfferingResult$ReservedNode": null, "ReservedNodeList$member": null } }, "ReservedNodeAlreadyExistsFault": { "base": "

        User already has a reservation with the given identifier.

        ", "refs": { } }, "ReservedNodeList": { "base": null, "refs": { "ReservedNodesMessage$ReservedNodes": "

        The list of ReservedNode objects.

        " } }, "ReservedNodeNotFoundFault": { "base": "

        The specified reserved compute node not found.

        ", "refs": { } }, "ReservedNodeOffering": { "base": "

        Describes a reserved node offering.

        ", "refs": { "ReservedNodeOfferingList$member": null } }, "ReservedNodeOfferingList": { "base": null, "refs": { "ReservedNodeOfferingsMessage$ReservedNodeOfferings": "

        A list of ReservedNodeOffering objects.

        " } }, "ReservedNodeOfferingNotFoundFault": { "base": "

        Specified offering does not exist.

        ", "refs": { } }, "ReservedNodeOfferingsMessage": { "base": "

        ", "refs": { } }, "ReservedNodeQuotaExceededFault": { "base": "

        Request would exceed the user's compute node quota. For information about increasing your quota, go to Limits in Amazon Redshift in the Amazon Redshift Cluster Management Guide.

        ", "refs": { } }, "ReservedNodesMessage": { "base": "

        ", "refs": { } }, "ResetClusterParameterGroupMessage": { "base": "

        ", "refs": { } }, "ResizeNotFoundFault": { "base": "

        A resize operation for the specified cluster is not found.

        ", "refs": { } }, "ResizeProgressMessage": { "base": "

        Describes the result of a cluster resize operation.

        ", "refs": { } }, "ResourceNotFoundFault": { "base": "

        The resource could not be found.

        ", "refs": { } }, "RestorableNodeTypeList": { "base": null, "refs": { "Snapshot$RestorableNodeTypes": "

        The list of node types that this cluster snapshot is able to restore into.

        " } }, "RestoreFromClusterSnapshotMessage": { "base": "

        ", "refs": { } }, "RestoreFromClusterSnapshotResult": { "base": null, "refs": { } }, "RestoreStatus": { "base": "

        Describes the status of a cluster restore action. Returns null if the cluster was not created by restoring a snapshot.

        ", "refs": { "Cluster$RestoreStatus": "

        A value that describes the status of a cluster restore action. This parameter returns null if the cluster was not created by restoring a snapshot.

        " } }, "RestoreTableFromClusterSnapshotMessage": { "base": "

        ", "refs": { } }, "RestoreTableFromClusterSnapshotResult": { "base": null, "refs": { } }, "RevokeClusterSecurityGroupIngressMessage": { "base": "

        ", "refs": { } }, "RevokeClusterSecurityGroupIngressResult": { "base": null, "refs": { } }, "RevokeSnapshotAccessMessage": { "base": "

        ", "refs": { } }, "RevokeSnapshotAccessResult": { "base": null, "refs": { } }, "RotateEncryptionKeyMessage": { "base": "

        ", "refs": { } }, "RotateEncryptionKeyResult": { "base": null, "refs": { } }, "SNSInvalidTopicFault": { "base": "

        Amazon SNS has responded that there is a problem with the specified Amazon SNS topic.

        ", "refs": { } }, "SNSNoAuthorizationFault": { "base": "

        You do not have permission to publish to the specified Amazon SNS topic.

        ", "refs": { } }, "SNSTopicArnNotFoundFault": { "base": "

        An Amazon SNS topic with the specified Amazon Resource Name (ARN) does not exist.

        ", "refs": { } }, "Snapshot": { "base": "

        Describes a snapshot.

        ", "refs": { "AuthorizeSnapshotAccessResult$Snapshot": null, "CopyClusterSnapshotResult$Snapshot": null, "CreateClusterSnapshotResult$Snapshot": null, "DeleteClusterSnapshotResult$Snapshot": null, "RevokeSnapshotAccessResult$Snapshot": null, "SnapshotList$member": null } }, "SnapshotCopyAlreadyDisabledFault": { "base": "

        The cluster already has cross-region snapshot copy disabled.

        ", "refs": { } }, "SnapshotCopyAlreadyEnabledFault": { "base": "

        The cluster already has cross-region snapshot copy enabled.

        ", "refs": { } }, "SnapshotCopyDisabledFault": { "base": "

        Cross-region snapshot copy was temporarily disabled. Try your request again.

        ", "refs": { } }, "SnapshotCopyGrant": { "base": "

        The snapshot copy grant that grants Amazon Redshift permission to encrypt copied snapshots with the specified customer master key (CMK) from AWS KMS in the destination region.

        For more information about managing snapshot copy grants, go to Amazon Redshift Database Encryption in the Amazon Redshift Cluster Management Guide.

        ", "refs": { "CreateSnapshotCopyGrantResult$SnapshotCopyGrant": null, "SnapshotCopyGrantList$member": null } }, "SnapshotCopyGrantAlreadyExistsFault": { "base": "

        The snapshot copy grant can't be created because a grant with the same name already exists.

        ", "refs": { } }, "SnapshotCopyGrantList": { "base": null, "refs": { "SnapshotCopyGrantMessage$SnapshotCopyGrants": "

        The list of SnapshotCopyGrant objects.

        " } }, "SnapshotCopyGrantMessage": { "base": "

        ", "refs": { } }, "SnapshotCopyGrantNotFoundFault": { "base": "

        The specified snapshot copy grant can't be found. Make sure that the name is typed correctly and that the grant exists in the destination region.

        ", "refs": { } }, "SnapshotCopyGrantQuotaExceededFault": { "base": "

        The AWS account has exceeded the maximum number of snapshot copy grants in this region.

        ", "refs": { } }, "SnapshotList": { "base": null, "refs": { "SnapshotMessage$Snapshots": "

        A list of Snapshot instances.

        " } }, "SnapshotMessage": { "base": "

        Contains the output from the DescribeClusterSnapshots action.

        ", "refs": { } }, "SourceIdsList": { "base": null, "refs": { "CreateEventSubscriptionMessage$SourceIds": "

        A list of one or more identifiers of Amazon Redshift source objects. All of the objects must be of the same type as was specified in the source type parameter. The event subscription will return only events generated by the specified objects. If not specified, then events are returned for all objects within the source type specified.

        Example: my-cluster-1, my-cluster-2

        Example: my-snapshot-20131010

        ", "EventSubscription$SourceIdsList": "

        A list of the sources that publish events to the Amazon Redshift event notification subscription.

        ", "ModifyEventSubscriptionMessage$SourceIds": "

        A list of one or more identifiers of Amazon Redshift source objects. All of the objects must be of the same type as was specified in the source type parameter. The event subscription will return only events generated by the specified objects. If not specified, then events are returned for all objects within the source type specified.

        Example: my-cluster-1, my-cluster-2

        Example: my-snapshot-20131010

        " } }, "SourceNotFoundFault": { "base": "

        The specified Amazon Redshift event source could not be found.

        ", "refs": { } }, "SourceType": { "base": null, "refs": { "DescribeEventsMessage$SourceType": "

        The event source to retrieve events for. If no value is specified, all events are returned.

        Constraints:

        If SourceType is supplied, SourceIdentifier must also be provided.

        • Specify cluster when SourceIdentifier is a cluster identifier.

        • Specify cluster-security-group when SourceIdentifier is a cluster security group name.

        • Specify cluster-parameter-group when SourceIdentifier is a cluster parameter group name.

        • Specify cluster-snapshot when SourceIdentifier is a cluster snapshot identifier.

        ", "Event$SourceType": "

        The source type for this event.

        " } }, "String": { "base": null, "refs": { "AccountWithRestoreAccess$AccountId": "

        The identifier of an AWS customer account authorized to restore a snapshot.

        ", "AuthorizeClusterSecurityGroupIngressMessage$ClusterSecurityGroupName": "

        The name of the security group to which the ingress rule is added.

        ", "AuthorizeClusterSecurityGroupIngressMessage$CIDRIP": "

        The IP range to be added the Amazon Redshift security group.

        ", "AuthorizeClusterSecurityGroupIngressMessage$EC2SecurityGroupName": "

        The EC2 security group to be added the Amazon Redshift security group.

        ", "AuthorizeClusterSecurityGroupIngressMessage$EC2SecurityGroupOwnerId": "

        The AWS account number of the owner of the security group specified by the EC2SecurityGroupName parameter. The AWS Access Key ID is not an acceptable value.

        Example: 111122223333

        ", "AuthorizeSnapshotAccessMessage$SnapshotIdentifier": "

        The identifier of the snapshot the account is authorized to restore.

        ", "AuthorizeSnapshotAccessMessage$SnapshotClusterIdentifier": "

        The identifier of the cluster the snapshot was created from. This parameter is required if your IAM user has a policy containing a snapshot resource element that specifies anything other than * for the cluster name.

        ", "AuthorizeSnapshotAccessMessage$AccountWithRestoreAccess": "

        The identifier of the AWS customer account authorized to restore the specified snapshot.

        ", "AvailabilityZone$Name": "

        The name of the availability zone.

        ", "Cluster$ClusterIdentifier": "

        The unique identifier of the cluster.

        ", "Cluster$NodeType": "

        The node type for the nodes in the cluster.

        ", "Cluster$ClusterStatus": "

        The current state of the cluster. Possible values are the following:

        • available

        • creating

        • deleting

        • final-snapshot

        • hardware-failure

        • incompatible-hsm

        • incompatible-network

        • incompatible-parameters

        • incompatible-restore

        • modifying

        • rebooting

        • renaming

        • resizing

        • rotating-keys

        • storage-full

        • updating-hsm

        ", "Cluster$ModifyStatus": "

        The status of a modify operation, if any, initiated for the cluster.

        ", "Cluster$MasterUsername": "

        The master user name for the cluster. This name is used to connect to the database that is specified in the DBName parameter.

        ", "Cluster$DBName": "

        The name of the initial database that was created when the cluster was created. This same name is returned for the life of the cluster. If an initial database was not specified, a database named devdev was created by default.

        ", "Cluster$ClusterSubnetGroupName": "

        The name of the subnet group that is associated with the cluster. This parameter is valid only when the cluster is in a VPC.

        ", "Cluster$VpcId": "

        The identifier of the VPC the cluster is in, if the cluster is in a VPC.

        ", "Cluster$AvailabilityZone": "

        The name of the Availability Zone in which the cluster is located.

        ", "Cluster$PreferredMaintenanceWindow": "

        The weekly time range, in Universal Coordinated Time (UTC), during which system maintenance can occur.

        ", "Cluster$ClusterVersion": "

        The version ID of the Amazon Redshift engine that is running on the cluster.

        ", "Cluster$ClusterPublicKey": "

        The public key for the cluster.

        ", "Cluster$ClusterRevisionNumber": "

        The specific revision number of the database in the cluster.

        ", "Cluster$KmsKeyId": "

        The AWS Key Management Service (AWS KMS) key ID of the encryption key used to encrypt data in the cluster.

        ", "ClusterIamRole$IamRoleArn": "

        The Amazon Resource Name (ARN) of the IAM role, for example, arn:aws:iam::123456789012:role/RedshiftCopyUnload.

        ", "ClusterIamRole$ApplyStatus": "

        A value that describes the status of the IAM role's association with an Amazon Redshift cluster.

        The following are possible statuses and descriptions.

        • in-sync: The role is available for use by the cluster.

        • adding: The role is in the process of being associated with the cluster.

        • removing: The role is in the process of being disassociated with the cluster.

        ", "ClusterNode$NodeRole": "

        Whether the node is a leader node or a compute node.

        ", "ClusterNode$PrivateIPAddress": "

        The private IP address of a node within a cluster.

        ", "ClusterNode$PublicIPAddress": "

        The public IP address of a node within a cluster.

        ", "ClusterParameterGroup$ParameterGroupName": "

        The name of the cluster parameter group.

        ", "ClusterParameterGroup$ParameterGroupFamily": "

        The name of the cluster parameter group family that this cluster parameter group is compatible with.

        ", "ClusterParameterGroup$Description": "

        The description of the parameter group.

        ", "ClusterParameterGroupDetails$Marker": "

        A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

        ", "ClusterParameterGroupNameMessage$ParameterGroupName": "

        The name of the cluster parameter group.

        ", "ClusterParameterGroupNameMessage$ParameterGroupStatus": "

        The status of the parameter group. For example, if you made a change to a parameter group name-value pair, then the change could be pending a reboot of an associated cluster.

        ", "ClusterParameterGroupStatus$ParameterGroupName": "

        The name of the cluster parameter group.

        ", "ClusterParameterGroupStatus$ParameterApplyStatus": "

        The status of parameter updates.

        ", "ClusterParameterGroupsMessage$Marker": "

        A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

        ", "ClusterParameterStatus$ParameterName": "

        The name of the parameter.

        ", "ClusterParameterStatus$ParameterApplyStatus": "

        The status of the parameter that indicates whether the parameter is in sync with the database, waiting for a cluster reboot, or encountered an error when being applied.

        The following are possible statuses and descriptions.

        • in-sync: The parameter value is in sync with the database.

        • pending-reboot: The parameter value will be applied after the cluster reboots.

        • applying: The parameter value is being applied to the database.

        • invalid-parameter: Cannot apply the parameter value because it has an invalid value or syntax.

        • apply-deferred: The parameter contains static property changes. The changes are deferred until the cluster reboots.

        • apply-error: Cannot connect to the cluster. The parameter change will be applied after the cluster reboots.

        • unknown-error: Cannot apply the parameter change right now. The change will be applied after the cluster reboots.

        ", "ClusterParameterStatus$ParameterApplyErrorDescription": "

        The error that prevented the parameter from being applied to the database.

        ", "ClusterSecurityGroup$ClusterSecurityGroupName": "

        The name of the cluster security group to which the operation was applied.

        ", "ClusterSecurityGroup$Description": "

        A description of the security group.

        ", "ClusterSecurityGroupMembership$ClusterSecurityGroupName": "

        The name of the cluster security group.

        ", "ClusterSecurityGroupMembership$Status": "

        The status of the cluster security group.

        ", "ClusterSecurityGroupMessage$Marker": "

        A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

        ", "ClusterSecurityGroupNameList$member": null, "ClusterSnapshotCopyStatus$DestinationRegion": "

        The destination region that snapshots are automatically copied to when cross-region snapshot copy is enabled.

        ", "ClusterSnapshotCopyStatus$SnapshotCopyGrantName": "

        The name of the snapshot copy grant.

        ", "ClusterSubnetGroup$ClusterSubnetGroupName": "

        The name of the cluster subnet group.

        ", "ClusterSubnetGroup$Description": "

        The description of the cluster subnet group.

        ", "ClusterSubnetGroup$VpcId": "

        The VPC ID of the cluster subnet group.

        ", "ClusterSubnetGroup$SubnetGroupStatus": "

        The status of the cluster subnet group. Possible values are Complete, Incomplete and Invalid.

        ", "ClusterSubnetGroupMessage$Marker": "

        A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

        ", "ClusterVersion$ClusterVersion": "

        The version number used by the cluster.

        ", "ClusterVersion$ClusterParameterGroupFamily": "

        The name of the cluster parameter group family for the cluster.

        ", "ClusterVersion$Description": "

        The description of the cluster version.

        ", "ClusterVersionsMessage$Marker": "

        A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

        ", "ClustersMessage$Marker": "

        A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

        ", "CopyClusterSnapshotMessage$SourceSnapshotIdentifier": "

        The identifier for the source snapshot.

        Constraints:

        • Must be the identifier for a valid automated snapshot whose state is available.

        ", "CopyClusterSnapshotMessage$SourceSnapshotClusterIdentifier": "

        The identifier of the cluster the source snapshot was created from. This parameter is required if your IAM user has a policy containing a snapshot resource element that specifies anything other than * for the cluster name.

        Constraints:

        • Must be the identifier for a valid cluster.

        ", "CopyClusterSnapshotMessage$TargetSnapshotIdentifier": "

        The identifier given to the new manual snapshot.

        Constraints:

        • Cannot be null, empty, or blank.

        • Must contain from 1 to 255 alphanumeric characters or hyphens.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        • Must be unique for the AWS account that is making the request.

        ", "CreateClusterMessage$DBName": "

        The name of the first database to be created when the cluster is created.

        To create additional databases after the cluster is created, connect to the cluster with a SQL client and use SQL commands to create a database. For more information, go to Create a Database in the Amazon Redshift Database Developer Guide.

        Default: dev

        Constraints:

        • Must contain 1 to 64 alphanumeric characters.

        • Must contain only lowercase letters.

        • Cannot be a word that is reserved by the service. A list of reserved words can be found in Reserved Words in the Amazon Redshift Database Developer Guide.

        ", "CreateClusterMessage$ClusterIdentifier": "

        A unique identifier for the cluster. You use this identifier to refer to the cluster for any subsequent cluster operations such as deleting or modifying. The identifier also appears in the Amazon Redshift console.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens.

        • Alphabetic characters must be lowercase.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        • Must be unique for all clusters within an AWS account.

        Example: myexamplecluster

        ", "CreateClusterMessage$ClusterType": "

        The type of the cluster. When cluster type is specified as

        • single-node, the NumberOfNodes parameter is not required.

        • multi-node, the NumberOfNodes parameter is required.

        Valid Values: multi-node | single-node

        Default: multi-node

        ", "CreateClusterMessage$NodeType": "

        The node type to be provisioned for the cluster. For information about node types, go to Working with Clusters in the Amazon Redshift Cluster Management Guide.

        Valid Values: ds1.xlarge | ds1.8xlarge | ds2.xlarge | ds2.8xlarge | dc1.large | dc1.8xlarge.

        ", "CreateClusterMessage$MasterUsername": "

        The user name associated with the master user account for the cluster that is being created.

        Constraints:

        • Must be 1 - 128 alphanumeric characters.

        • First character must be a letter.

        • Cannot be a reserved word. A list of reserved words can be found in Reserved Words in the Amazon Redshift Database Developer Guide.

        ", "CreateClusterMessage$MasterUserPassword": "

        The password associated with the master user account for the cluster that is being created.

        Constraints:

        • Must be between 8 and 64 characters in length.

        • Must contain at least one uppercase letter.

        • Must contain at least one lowercase letter.

        • Must contain one number.

        • Can be any printable ASCII character (ASCII code 33 to 126) except ' (single quote), \" (double quote), \\, /, @, or space.

        ", "CreateClusterMessage$ClusterSubnetGroupName": "

        The name of a cluster subnet group to be associated with this cluster.

        If this parameter is not provided the resulting cluster will be deployed outside virtual private cloud (VPC).

        ", "CreateClusterMessage$AvailabilityZone": "

        The EC2 Availability Zone (AZ) in which you want Amazon Redshift to provision the cluster. For example, if you have several EC2 instances running in a specific Availability Zone, then you might want the cluster to be provisioned in the same zone in order to decrease network latency.

        Default: A random, system-chosen Availability Zone in the region that is specified by the endpoint.

        Example: us-east-1d

        Constraint: The specified Availability Zone must be in the same region as the current endpoint.

        ", "CreateClusterMessage$PreferredMaintenanceWindow": "

        The weekly time range (in UTC) during which automated cluster maintenance can occur.

        Format: ddd:hh24:mi-ddd:hh24:mi

        Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week. For more information about the time blocks for each region, see Maintenance Windows in Amazon Redshift Cluster Management Guide.

        Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

        Constraints: Minimum 30-minute window.

        ", "CreateClusterMessage$ClusterParameterGroupName": "

        The name of the parameter group to be associated with this cluster.

        Default: The default Amazon Redshift cluster parameter group. For information about the default parameter group, go to Working with Amazon Redshift Parameter Groups

        Constraints:

        • Must be 1 to 255 alphanumeric characters or hyphens.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        ", "CreateClusterMessage$ClusterVersion": "

        The version of the Amazon Redshift engine software that you want to deploy on the cluster.

        The version selected runs on all the nodes in the cluster.

        Constraints: Only version 1.0 is currently available.

        Example: 1.0

        ", "CreateClusterMessage$HsmClientCertificateIdentifier": "

        Specifies the name of the HSM client certificate the Amazon Redshift cluster uses to retrieve the data encryption keys stored in an HSM.

        ", "CreateClusterMessage$HsmConfigurationIdentifier": "

        Specifies the name of the HSM configuration that contains the information the Amazon Redshift cluster can use to retrieve and store keys in an HSM.

        ", "CreateClusterMessage$ElasticIp": "

        The Elastic IP (EIP) address for the cluster.

        Constraints: The cluster must be provisioned in EC2-VPC and publicly-accessible through an Internet gateway. For more information about provisioning clusters in EC2-VPC, go to Supported Platforms to Launch Your Cluster in the Amazon Redshift Cluster Management Guide.

        ", "CreateClusterMessage$KmsKeyId": "

        The AWS Key Management Service (KMS) key ID of the encryption key that you want to use to encrypt data in the cluster.

        ", "CreateClusterMessage$AdditionalInfo": "

        Reserved.

        ", "CreateClusterParameterGroupMessage$ParameterGroupName": "

        The name of the cluster parameter group.

        Constraints:

        • Must be 1 to 255 alphanumeric characters or hyphens

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        • Must be unique withing your AWS account.

        This value is stored as a lower-case string.

        ", "CreateClusterParameterGroupMessage$ParameterGroupFamily": "

        The Amazon Redshift engine version to which the cluster parameter group applies. The cluster engine version determines the set of parameters.

        To get a list of valid parameter group family names, you can call DescribeClusterParameterGroups. By default, Amazon Redshift returns a list of all the parameter groups that are owned by your AWS account, including the default parameter groups for each Amazon Redshift engine version. The parameter group family names associated with the default parameter groups provide you the valid values. For example, a valid family name is \"redshift-1.0\".

        ", "CreateClusterParameterGroupMessage$Description": "

        A description of the parameter group.

        ", "CreateClusterSecurityGroupMessage$ClusterSecurityGroupName": "

        The name for the security group. Amazon Redshift stores the value as a lowercase string.

        Constraints:

        • Must contain no more than 255 alphanumeric characters or hyphens.

        • Must not be \"Default\".

        • Must be unique for all security groups that are created by your AWS account.

        Example: examplesecuritygroup

        ", "CreateClusterSecurityGroupMessage$Description": "

        A description for the security group.

        ", "CreateClusterSnapshotMessage$SnapshotIdentifier": "

        A unique identifier for the snapshot that you are requesting. This identifier must be unique for all snapshots within the AWS account.

        Constraints:

        • Cannot be null, empty, or blank

        • Must contain from 1 to 255 alphanumeric characters or hyphens

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        Example: my-snapshot-id

        ", "CreateClusterSnapshotMessage$ClusterIdentifier": "

        The cluster identifier for which you want a snapshot.

        ", "CreateClusterSubnetGroupMessage$ClusterSubnetGroupName": "

        The name for the subnet group. Amazon Redshift stores the value as a lowercase string.

        Constraints:

        • Must contain no more than 255 alphanumeric characters or hyphens.

        • Must not be \"Default\".

        • Must be unique for all subnet groups that are created by your AWS account.

        Example: examplesubnetgroup

        ", "CreateClusterSubnetGroupMessage$Description": "

        A description for the subnet group.

        ", "CreateEventSubscriptionMessage$SubscriptionName": "

        The name of the event subscription to be created.

        Constraints:

        • Cannot be null, empty, or blank.

        • Must contain from 1 to 255 alphanumeric characters or hyphens.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        ", "CreateEventSubscriptionMessage$SnsTopicArn": "

        The Amazon Resource Name (ARN) of the Amazon SNS topic used to transmit the event notifications. The ARN is created by Amazon SNS when you create a topic and subscribe to it.

        ", "CreateEventSubscriptionMessage$SourceType": "

        The type of source that will be generating the events. For example, if you want to be notified of events generated by a cluster, you would set this parameter to cluster. If this value is not specified, events are returned for all Amazon Redshift objects in your AWS account. You must specify a source type in order to specify source IDs.

        Valid values: cluster, cluster-parameter-group, cluster-security-group, and cluster-snapshot.

        ", "CreateEventSubscriptionMessage$Severity": "

        Specifies the Amazon Redshift event severity to be published by the event notification subscription.

        Values: ERROR, INFO

        ", "CreateHsmClientCertificateMessage$HsmClientCertificateIdentifier": "

        The identifier to be assigned to the new HSM client certificate that the cluster will use to connect to the HSM to use the database encryption keys.

        ", "CreateHsmConfigurationMessage$HsmConfigurationIdentifier": "

        The identifier to be assigned to the new Amazon Redshift HSM configuration.

        ", "CreateHsmConfigurationMessage$Description": "

        A text description of the HSM configuration to be created.

        ", "CreateHsmConfigurationMessage$HsmIpAddress": "

        The IP address that the Amazon Redshift cluster must use to access the HSM.

        ", "CreateHsmConfigurationMessage$HsmPartitionName": "

        The name of the partition in the HSM where the Amazon Redshift clusters will store their database encryption keys.

        ", "CreateHsmConfigurationMessage$HsmPartitionPassword": "

        The password required to access the HSM partition.

        ", "CreateHsmConfigurationMessage$HsmServerPublicCertificate": "

        The HSMs public certificate file. When using Cloud HSM, the file name is server.pem.

        ", "CreateSnapshotCopyGrantMessage$SnapshotCopyGrantName": "

        The name of the snapshot copy grant. This name must be unique in the region for the AWS account.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens.

        • Alphabetic characters must be lowercase.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        • Must be unique for all clusters within an AWS account.

        ", "CreateSnapshotCopyGrantMessage$KmsKeyId": "

        The unique identifier of the customer master key (CMK) to which to grant Amazon Redshift permission. If no key is specified, the default key is used.

        ", "CreateTagsMessage$ResourceName": "

        The Amazon Resource Name (ARN) to which you want to add the tag or tags. For example, arn:aws:redshift:us-east-1:123456789:cluster:t1.

        ", "DefaultClusterParameters$ParameterGroupFamily": "

        The name of the cluster parameter group family to which the engine default parameters apply.

        ", "DefaultClusterParameters$Marker": "

        A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

        ", "DeleteClusterMessage$ClusterIdentifier": "

        The identifier of the cluster to be deleted.

        Constraints:

        • Must contain lowercase characters.

        • Must contain from 1 to 63 alphanumeric characters or hyphens.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        ", "DeleteClusterMessage$FinalClusterSnapshotIdentifier": "

        The identifier of the final snapshot that is to be created immediately before deleting the cluster. If this parameter is provided, SkipFinalClusterSnapshot must be false.

        Constraints:

        • Must be 1 to 255 alphanumeric characters.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        ", "DeleteClusterParameterGroupMessage$ParameterGroupName": "

        The name of the parameter group to be deleted.

        Constraints:

        • Must be the name of an existing cluster parameter group.

        • Cannot delete a default cluster parameter group.

        ", "DeleteClusterSecurityGroupMessage$ClusterSecurityGroupName": "

        The name of the cluster security group to be deleted.

        ", "DeleteClusterSnapshotMessage$SnapshotIdentifier": "

        The unique identifier of the manual snapshot to be deleted.

        Constraints: Must be the name of an existing snapshot that is in the available state.

        ", "DeleteClusterSnapshotMessage$SnapshotClusterIdentifier": "

        The unique identifier of the cluster the snapshot was created from. This parameter is required if your IAM user has a policy containing a snapshot resource element that specifies anything other than * for the cluster name.

        Constraints: Must be the name of valid cluster.

        ", "DeleteClusterSubnetGroupMessage$ClusterSubnetGroupName": "

        The name of the cluster subnet group name to be deleted.

        ", "DeleteEventSubscriptionMessage$SubscriptionName": "

        The name of the Amazon Redshift event notification subscription to be deleted.

        ", "DeleteHsmClientCertificateMessage$HsmClientCertificateIdentifier": "

        The identifier of the HSM client certificate to be deleted.

        ", "DeleteHsmConfigurationMessage$HsmConfigurationIdentifier": "

        The identifier of the Amazon Redshift HSM configuration to be deleted.

        ", "DeleteSnapshotCopyGrantMessage$SnapshotCopyGrantName": "

        The name of the snapshot copy grant to delete.

        ", "DeleteTagsMessage$ResourceName": "

        The Amazon Resource Name (ARN) from which you want to remove the tag or tags. For example, arn:aws:redshift:us-east-1:123456789:cluster:t1.

        ", "DescribeClusterParameterGroupsMessage$ParameterGroupName": "

        The name of a specific parameter group for which to return details. By default, details about all parameter groups and the default parameter group are returned.

        ", "DescribeClusterParameterGroupsMessage$Marker": "

        An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeClusterParameterGroups request exceed the value specified in MaxRecords, AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

        ", "DescribeClusterParametersMessage$ParameterGroupName": "

        The name of a cluster parameter group for which to return details.

        ", "DescribeClusterParametersMessage$Source": "

        The parameter types to return. Specify user to show parameters that are different form the default. Similarly, specify engine-default to show parameters that are the same as the default parameter group.

        Default: All parameter types returned.

        Valid Values: user | engine-default

        ", "DescribeClusterParametersMessage$Marker": "

        An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeClusterParameters request exceed the value specified in MaxRecords, AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

        ", "DescribeClusterSecurityGroupsMessage$ClusterSecurityGroupName": "

        The name of a cluster security group for which you are requesting details. You can specify either the Marker parameter or a ClusterSecurityGroupName parameter, but not both.

        Example: securitygroup1

        ", "DescribeClusterSecurityGroupsMessage$Marker": "

        An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeClusterSecurityGroups request exceed the value specified in MaxRecords, AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

        Constraints: You can specify either the ClusterSecurityGroupName parameter or the Marker parameter, but not both.

        ", "DescribeClusterSnapshotsMessage$ClusterIdentifier": "

        The identifier of the cluster for which information about snapshots is requested.

        ", "DescribeClusterSnapshotsMessage$SnapshotIdentifier": "

        The snapshot identifier of the snapshot about which to return information.

        ", "DescribeClusterSnapshotsMessage$SnapshotType": "

        The type of snapshots for which you are requesting information. By default, snapshots of all types are returned.

        Valid Values: automated | manual

        ", "DescribeClusterSnapshotsMessage$Marker": "

        An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeClusterSnapshots request exceed the value specified in MaxRecords, AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

        ", "DescribeClusterSnapshotsMessage$OwnerAccount": "

        The AWS customer account used to create or copy the snapshot. Use this field to filter the results to snapshots owned by a particular account. To describe snapshots you own, either specify your AWS customer account, or do not specify the parameter.

        ", "DescribeClusterSubnetGroupsMessage$ClusterSubnetGroupName": "

        The name of the cluster subnet group for which information is requested.

        ", "DescribeClusterSubnetGroupsMessage$Marker": "

        An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeClusterSubnetGroups request exceed the value specified in MaxRecords, AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

        ", "DescribeClusterVersionsMessage$ClusterVersion": "

        The specific cluster version to return.

        Example: 1.0

        ", "DescribeClusterVersionsMessage$ClusterParameterGroupFamily": "

        The name of a specific cluster parameter group family to return details for.

        Constraints:

        • Must be 1 to 255 alphanumeric characters

        • First character must be a letter

        • Cannot end with a hyphen or contain two consecutive hyphens

        ", "DescribeClusterVersionsMessage$Marker": "

        An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeClusterVersions request exceed the value specified in MaxRecords, AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

        ", "DescribeClustersMessage$ClusterIdentifier": "

        The unique identifier of a cluster whose properties you are requesting. This parameter is case sensitive.

        The default is that all clusters defined for an account are returned.

        ", "DescribeClustersMessage$Marker": "

        An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeClusters request exceed the value specified in MaxRecords, AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

        Constraints: You can specify either the ClusterIdentifier parameter or the Marker parameter, but not both.

        ", "DescribeDefaultClusterParametersMessage$ParameterGroupFamily": "

        The name of the cluster parameter group family.

        ", "DescribeDefaultClusterParametersMessage$Marker": "

        An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeDefaultClusterParameters request exceed the value specified in MaxRecords, AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

        ", "DescribeEventCategoriesMessage$SourceType": "

        The source type, such as cluster or parameter group, to which the described event categories apply.

        Valid values: cluster, cluster-snapshot, cluster-parameter-group, and cluster-security-group.

        ", "DescribeEventSubscriptionsMessage$SubscriptionName": "

        The name of the Amazon Redshift event notification subscription to be described.

        ", "DescribeEventSubscriptionsMessage$Marker": "

        An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeEventSubscriptions request exceed the value specified in MaxRecords, AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

        ", "DescribeEventsMessage$SourceIdentifier": "

        The identifier of the event source for which events will be returned. If this parameter is not specified, then all sources are included in the response.

        Constraints:

        If SourceIdentifier is supplied, SourceType must also be provided.

        • Specify a cluster identifier when SourceType is cluster.

        • Specify a cluster security group name when SourceType is cluster-security-group.

        • Specify a cluster parameter group name when SourceType is cluster-parameter-group.

        • Specify a cluster snapshot identifier when SourceType is cluster-snapshot.

        ", "DescribeEventsMessage$Marker": "

        An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeEvents request exceed the value specified in MaxRecords, AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

        ", "DescribeHsmClientCertificatesMessage$HsmClientCertificateIdentifier": "

        The identifier of a specific HSM client certificate for which you want information. If no identifier is specified, information is returned for all HSM client certificates owned by your AWS customer account.

        ", "DescribeHsmClientCertificatesMessage$Marker": "

        An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeHsmClientCertificates request exceed the value specified in MaxRecords, AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

        ", "DescribeHsmConfigurationsMessage$HsmConfigurationIdentifier": "

        The identifier of a specific Amazon Redshift HSM configuration to be described. If no identifier is specified, information is returned for all HSM configurations owned by your AWS customer account.

        ", "DescribeHsmConfigurationsMessage$Marker": "

        An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeHsmConfigurations request exceed the value specified in MaxRecords, AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

        ", "DescribeLoggingStatusMessage$ClusterIdentifier": "

        The identifier of the cluster from which to get the logging status.

        Example: examplecluster

        ", "DescribeOrderableClusterOptionsMessage$ClusterVersion": "

        The version filter value. Specify this parameter to show only the available offerings matching the specified version.

        Default: All versions.

        Constraints: Must be one of the version returned from DescribeClusterVersions.

        ", "DescribeOrderableClusterOptionsMessage$NodeType": "

        The node type filter value. Specify this parameter to show only the available offerings matching the specified node type.

        ", "DescribeOrderableClusterOptionsMessage$Marker": "

        An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeOrderableClusterOptions request exceed the value specified in MaxRecords, AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

        ", "DescribeReservedNodeOfferingsMessage$ReservedNodeOfferingId": "

        The unique identifier for the offering.

        ", "DescribeReservedNodeOfferingsMessage$Marker": "

        An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeReservedNodeOfferings request exceed the value specified in MaxRecords, AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

        ", "DescribeReservedNodesMessage$ReservedNodeId": "

        Identifier for the node reservation.

        ", "DescribeReservedNodesMessage$Marker": "

        An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeReservedNodes request exceed the value specified in MaxRecords, AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

        ", "DescribeResizeMessage$ClusterIdentifier": "

        The unique identifier of a cluster whose resize progress you are requesting. This parameter is case-sensitive.

        By default, resize operations for all clusters defined for an AWS account are returned.

        ", "DescribeSnapshotCopyGrantsMessage$SnapshotCopyGrantName": "

        The name of the snapshot copy grant.

        ", "DescribeSnapshotCopyGrantsMessage$Marker": "

        An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeSnapshotCopyGrant request exceed the value specified in MaxRecords, AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

        Constraints: You can specify either the SnapshotCopyGrantName parameter or the Marker parameter, but not both.

        ", "DescribeTableRestoreStatusMessage$ClusterIdentifier": "

        The Amazon Redshift cluster that the table is being restored to.

        ", "DescribeTableRestoreStatusMessage$TableRestoreRequestId": "

        The identifier of the table restore request to return status for. If you don't specify a TableRestoreRequestId value, then DescribeTableRestoreStatus returns the status of all in-progress table restore requests.

        ", "DescribeTableRestoreStatusMessage$Marker": "

        An optional pagination token provided by a previous DescribeTableRestoreStatus request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by the MaxRecords parameter.

        ", "DescribeTagsMessage$ResourceName": "

        The Amazon Resource Name (ARN) for which you want to describe the tag or tags. For example, arn:aws:redshift:us-east-1:123456789:cluster:t1.

        ", "DescribeTagsMessage$ResourceType": "

        The type of resource with which you want to view tags. Valid resource types are:

        • Cluster

        • CIDR/IP

        • EC2 security group

        • Snapshot

        • Cluster security group

        • Subnet group

        • HSM connection

        • HSM certificate

        • Parameter group

        • Snapshot copy grant

        For more information about Amazon Redshift resource types and constructing ARNs, go to Constructing an Amazon Redshift Amazon Resource Name (ARN) in the Amazon Redshift Cluster Management Guide.

        ", "DescribeTagsMessage$Marker": "

        A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the marker parameter and retrying the command. If the marker field is empty, all response records have been retrieved for the request.

        ", "DisableLoggingMessage$ClusterIdentifier": "

        The identifier of the cluster on which logging is to be stopped.

        Example: examplecluster

        ", "DisableSnapshotCopyMessage$ClusterIdentifier": "

        The unique identifier of the source cluster that you want to disable copying of snapshots to a destination region.

        Constraints: Must be the valid name of an existing cluster that has cross-region snapshot copy enabled.

        ", "EC2SecurityGroup$Status": "

        The status of the EC2 security group.

        ", "EC2SecurityGroup$EC2SecurityGroupName": "

        The name of the EC2 Security Group.

        ", "EC2SecurityGroup$EC2SecurityGroupOwnerId": "

        The AWS ID of the owner of the EC2 security group specified in the EC2SecurityGroupName field.

        ", "ElasticIpStatus$ElasticIp": "

        The elastic IP (EIP) address for the cluster.

        ", "ElasticIpStatus$Status": "

        The status of the elastic IP (EIP) address.

        ", "EnableLoggingMessage$ClusterIdentifier": "

        The identifier of the cluster on which logging is to be started.

        Example: examplecluster

        ", "EnableLoggingMessage$BucketName": "

        The name of an existing S3 bucket where the log files are to be stored.

        Constraints:

        • Must be in the same region as the cluster

        • The cluster must have read bucket and put object permissions

        ", "EnableLoggingMessage$S3KeyPrefix": "

        The prefix applied to the log file names.

        Constraints:

        • Cannot exceed 512 characters

        • Cannot contain spaces( ), double quotes (\"), single quotes ('), a backslash (\\), or control characters. The hexadecimal codes for invalid characters are:

          • x00 to x20

          • x22

          • x27

          • x5c

          • x7f or larger

        ", "EnableSnapshotCopyMessage$ClusterIdentifier": "

        The unique identifier of the source cluster to copy snapshots from.

        Constraints: Must be the valid name of an existing cluster that does not already have cross-region snapshot copy enabled.

        ", "EnableSnapshotCopyMessage$DestinationRegion": "

        The destination region that you want to copy snapshots to.

        Constraints: Must be the name of a valid region. For more information, see Regions and Endpoints in the Amazon Web Services General Reference.

        ", "EnableSnapshotCopyMessage$SnapshotCopyGrantName": "

        The name of the snapshot copy grant to use when snapshots of an AWS KMS-encrypted cluster are copied to the destination region.

        ", "Endpoint$Address": "

        The DNS address of the Cluster.

        ", "Event$SourceIdentifier": "

        The identifier for the source of the event.

        ", "Event$Message": "

        The text of this event.

        ", "Event$Severity": "

        The severity of the event.

        Values: ERROR, INFO

        ", "Event$EventId": "

        The identifier of the event.

        ", "EventCategoriesList$member": null, "EventCategoriesMap$SourceType": "

        The source type, such as cluster or cluster-snapshot, that the returned categories belong to.

        ", "EventInfoMap$EventId": "

        The identifier of an Amazon Redshift event.

        ", "EventInfoMap$EventDescription": "

        The description of an Amazon Redshift event.

        ", "EventInfoMap$Severity": "

        The severity of the event.

        Values: ERROR, INFO

        ", "EventSubscription$CustomerAwsId": "

        The AWS customer account associated with the Amazon Redshift event notification subscription.

        ", "EventSubscription$CustSubscriptionId": "

        The name of the Amazon Redshift event notification subscription.

        ", "EventSubscription$SnsTopicArn": "

        The Amazon Resource Name (ARN) of the Amazon SNS topic used by the event notification subscription.

        ", "EventSubscription$Status": "

        The status of the Amazon Redshift event notification subscription.

        Constraints:

        • Can be one of the following: active | no-permission | topic-not-exist

        • The status \"no-permission\" indicates that Amazon Redshift no longer has permission to post to the Amazon SNS topic. The status \"topic-not-exist\" indicates that the topic was deleted after the subscription was created.

        ", "EventSubscription$SourceType": "

        The source type of the events returned the Amazon Redshift event notification, such as cluster, or cluster-snapshot.

        ", "EventSubscription$Severity": "

        The event severity specified in the Amazon Redshift event notification subscription.

        Values: ERROR, INFO

        ", "EventSubscriptionsMessage$Marker": "

        A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

        ", "EventsMessage$Marker": "

        A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

        ", "HsmClientCertificate$HsmClientCertificateIdentifier": "

        The identifier of the HSM client certificate.

        ", "HsmClientCertificate$HsmClientCertificatePublicKey": "

        The public key that the Amazon Redshift cluster will use to connect to the HSM. You must register the public key in the HSM.

        ", "HsmClientCertificateMessage$Marker": "

        A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

        ", "HsmConfiguration$HsmConfigurationIdentifier": "

        The name of the Amazon Redshift HSM configuration.

        ", "HsmConfiguration$Description": "

        A text description of the HSM configuration.

        ", "HsmConfiguration$HsmIpAddress": "

        The IP address that the Amazon Redshift cluster must use to access the HSM.

        ", "HsmConfiguration$HsmPartitionName": "

        The name of the partition in the HSM where the Amazon Redshift clusters will store their database encryption keys.

        ", "HsmConfigurationMessage$Marker": "

        A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

        ", "HsmStatus$HsmClientCertificateIdentifier": "

        Specifies the name of the HSM client certificate the Amazon Redshift cluster uses to retrieve the data encryption keys stored in an HSM.

        ", "HsmStatus$HsmConfigurationIdentifier": "

        Specifies the name of the HSM configuration that contains the information the Amazon Redshift cluster can use to retrieve and store keys in an HSM.

        ", "HsmStatus$Status": "

        Reports whether the Amazon Redshift cluster has finished applying any HSM settings changes specified in a modify cluster command.

        Values: active, applying

        ", "IPRange$Status": "

        The status of the IP range, for example, \"authorized\".

        ", "IPRange$CIDRIP": "

        The IP range in Classless Inter-Domain Routing (CIDR) notation.

        ", "IamRoleArnList$member": null, "ImportTablesCompleted$member": null, "ImportTablesInProgress$member": null, "ImportTablesNotStarted$member": null, "LoggingStatus$BucketName": "

        The name of the S3 bucket where the log files are stored.

        ", "LoggingStatus$S3KeyPrefix": "

        The prefix applied to the log file names.

        ", "LoggingStatus$LastFailureMessage": "

        The message indicating that logs failed to be delivered.

        ", "ModifyClusterIamRolesMessage$ClusterIdentifier": "

        The unique identifier of the cluster for which you want to associate or disassociate IAM roles.

        ", "ModifyClusterMessage$ClusterIdentifier": "

        The unique identifier of the cluster to be modified.

        Example: examplecluster

        ", "ModifyClusterMessage$ClusterType": "

        The new cluster type.

        When you submit your cluster resize request, your existing cluster goes into a read-only mode. After Amazon Redshift provisions a new cluster based on your resize requirements, there will be outage for a period while the old cluster is deleted and your connection is switched to the new cluster. You can use DescribeResize to track the progress of the resize request.

        Valid Values: multi-node | single-node

        ", "ModifyClusterMessage$NodeType": "

        The new node type of the cluster. If you specify a new node type, you must also specify the number of nodes parameter.

        When you submit your request to resize a cluster, Amazon Redshift sets access permissions for the cluster to read-only. After Amazon Redshift provisions a new cluster according to your resize requirements, there will be a temporary outage while the old cluster is deleted and your connection is switched to the new cluster. When the new connection is complete, the original access permissions for the cluster are restored. You can use DescribeResize to track the progress of the resize request.

        Valid Values: ds1.xlarge | ds1.8xlarge | ds2.xlarge | ds2.8xlarge | dc1.large | dc1.8xlarge.

        ", "ModifyClusterMessage$MasterUserPassword": "

        The new password for the cluster master user. This change is asynchronously applied as soon as possible. Between the time of the request and the completion of the request, the MasterUserPassword element exists in the PendingModifiedValues element of the operation response.

        Operations never return the password, so this operation provides a way to regain access to the master user account for a cluster if the password is lost.

        Default: Uses existing setting.

        Constraints:

        • Must be between 8 and 64 characters in length.

        • Must contain at least one uppercase letter.

        • Must contain at least one lowercase letter.

        • Must contain one number.

        • Can be any printable ASCII character (ASCII code 33 to 126) except ' (single quote), \" (double quote), \\, /, @, or space.

        ", "ModifyClusterMessage$ClusterParameterGroupName": "

        The name of the cluster parameter group to apply to this cluster. This change is applied only after the cluster is rebooted. To reboot a cluster use RebootCluster.

        Default: Uses existing setting.

        Constraints: The cluster parameter group must be in the same parameter group family that matches the cluster version.

        ", "ModifyClusterMessage$PreferredMaintenanceWindow": "

        The weekly time range (in UTC) during which system maintenance can occur, if necessary. If system maintenance is necessary during the window, it may result in an outage.

        This maintenance window change is made immediately. If the new maintenance window indicates the current time, there must be at least 120 minutes between the current time and end of the window in order to ensure that pending changes are applied.

        Default: Uses existing setting.

        Format: ddd:hh24:mi-ddd:hh24:mi, for example wed:07:30-wed:08:00.

        Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

        Constraints: Must be at least 30 minutes.

        ", "ModifyClusterMessage$ClusterVersion": "

        The new version number of the Amazon Redshift engine to upgrade to.

        For major version upgrades, if a non-default cluster parameter group is currently in use, a new cluster parameter group in the cluster parameter group family for the new version must be specified. The new cluster parameter group can be the default for that cluster parameter group family. For more information about parameters and parameter groups, go to Amazon Redshift Parameter Groups in the Amazon Redshift Cluster Management Guide.

        Example: 1.0

        ", "ModifyClusterMessage$HsmClientCertificateIdentifier": "

        Specifies the name of the HSM client certificate the Amazon Redshift cluster uses to retrieve the data encryption keys stored in an HSM.

        ", "ModifyClusterMessage$HsmConfigurationIdentifier": "

        Specifies the name of the HSM configuration that contains the information the Amazon Redshift cluster can use to retrieve and store keys in an HSM.

        ", "ModifyClusterMessage$NewClusterIdentifier": "

        The new identifier for the cluster.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens.

        • Alphabetic characters must be lowercase.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        • Must be unique for all clusters within an AWS account.

        Example: examplecluster

        ", "ModifyClusterMessage$ElasticIp": "

        The Elastic IP (EIP) address for the cluster.

        Constraints: The cluster must be provisioned in EC2-VPC and publicly-accessible through an Internet gateway. For more information about provisioning clusters in EC2-VPC, go to Supported Platforms to Launch Your Cluster in the Amazon Redshift Cluster Management Guide.

        ", "ModifyClusterParameterGroupMessage$ParameterGroupName": "

        The name of the parameter group to be modified.

        ", "ModifyClusterSubnetGroupMessage$ClusterSubnetGroupName": "

        The name of the subnet group to be modified.

        ", "ModifyClusterSubnetGroupMessage$Description": "

        A text description of the subnet group to be modified.

        ", "ModifyEventSubscriptionMessage$SubscriptionName": "

        The name of the modified Amazon Redshift event notification subscription.

        ", "ModifyEventSubscriptionMessage$SnsTopicArn": "

        The Amazon Resource Name (ARN) of the SNS topic to be used by the event notification subscription.

        ", "ModifyEventSubscriptionMessage$SourceType": "

        The type of source that will be generating the events. For example, if you want to be notified of events generated by a cluster, you would set this parameter to cluster. If this value is not specified, events are returned for all Amazon Redshift objects in your AWS account. You must specify a source type in order to specify source IDs.

        Valid values: cluster, cluster-parameter-group, cluster-security-group, and cluster-snapshot.

        ", "ModifyEventSubscriptionMessage$Severity": "

        Specifies the Amazon Redshift event severity to be published by the event notification subscription.

        Values: ERROR, INFO

        ", "ModifySnapshotCopyRetentionPeriodMessage$ClusterIdentifier": "

        The unique identifier of the cluster for which you want to change the retention period for automated snapshots that are copied to a destination region.

        Constraints: Must be the valid name of an existing cluster that has cross-region snapshot copy enabled.

        ", "OrderableClusterOption$ClusterVersion": "

        The version of the orderable cluster.

        ", "OrderableClusterOption$ClusterType": "

        The cluster type, for example multi-node.

        ", "OrderableClusterOption$NodeType": "

        The node type for the orderable cluster.

        ", "OrderableClusterOptionsMessage$Marker": "

        A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

        ", "Parameter$ParameterName": "

        The name of the parameter.

        ", "Parameter$ParameterValue": "

        The value of the parameter.

        ", "Parameter$Description": "

        A description of the parameter.

        ", "Parameter$Source": "

        The source of the parameter value, such as \"engine-default\" or \"user\".

        ", "Parameter$DataType": "

        The data type of the parameter.

        ", "Parameter$AllowedValues": "

        The valid range of values for the parameter.

        ", "Parameter$MinimumEngineVersion": "

        The earliest engine version to which the parameter can apply.

        ", "PendingModifiedValues$MasterUserPassword": "

        The pending or in-progress change of the master user password for the cluster.

        ", "PendingModifiedValues$NodeType": "

        The pending or in-progress change of the cluster's node type.

        ", "PendingModifiedValues$ClusterType": "

        The pending or in-progress change of the cluster type.

        ", "PendingModifiedValues$ClusterVersion": "

        The pending or in-progress change of the service version.

        ", "PendingModifiedValues$ClusterIdentifier": "

        The pending or in-progress change of the new identifier for the cluster.

        ", "PurchaseReservedNodeOfferingMessage$ReservedNodeOfferingId": "

        The unique identifier of the reserved node offering you want to purchase.

        ", "RebootClusterMessage$ClusterIdentifier": "

        The cluster identifier.

        ", "RecurringCharge$RecurringChargeFrequency": "

        The frequency at which the recurring charge amount is applied.

        ", "ReservedNode$ReservedNodeId": "

        The unique identifier for the reservation.

        ", "ReservedNode$ReservedNodeOfferingId": "

        The identifier for the reserved node offering.

        ", "ReservedNode$NodeType": "

        The node type of the reserved node.

        ", "ReservedNode$CurrencyCode": "

        The currency code for the reserved cluster.

        ", "ReservedNode$State": "

        The state of the reserved compute node.

        Possible Values:

        • pending-payment-This reserved node has recently been purchased, and the sale has been approved, but payment has not yet been confirmed.

        • active-This reserved node is owned by the caller and is available for use.

        • payment-failed-Payment failed for the purchase attempt.

        ", "ReservedNode$OfferingType": "

        The anticipated utilization of the reserved node, as defined in the reserved node offering.

        ", "ReservedNodeOffering$ReservedNodeOfferingId": "

        The offering identifier.

        ", "ReservedNodeOffering$NodeType": "

        The node type offered by the reserved node offering.

        ", "ReservedNodeOffering$CurrencyCode": "

        The currency code for the compute nodes offering.

        ", "ReservedNodeOffering$OfferingType": "

        The anticipated utilization of the reserved node, as defined in the reserved node offering.

        ", "ReservedNodeOfferingsMessage$Marker": "

        A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

        ", "ReservedNodesMessage$Marker": "

        A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

        ", "ResetClusterParameterGroupMessage$ParameterGroupName": "

        The name of the cluster parameter group to be reset.

        ", "ResizeProgressMessage$TargetNodeType": "

        The node type that the cluster will have after the resize operation is complete.

        ", "ResizeProgressMessage$TargetClusterType": "

        The cluster type after the resize operation is complete.

        Valid Values: multi-node | single-node

        ", "ResizeProgressMessage$Status": "

        The status of the resize operation.

        Valid Values: NONE | IN_PROGRESS | FAILED | SUCCEEDED

        ", "RestorableNodeTypeList$member": null, "RestoreFromClusterSnapshotMessage$ClusterIdentifier": "

        The identifier of the cluster that will be created from restoring the snapshot.

        Constraints:

        • Must contain from 1 to 63 alphanumeric characters or hyphens.

        • Alphabetic characters must be lowercase.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        • Must be unique for all clusters within an AWS account.

        ", "RestoreFromClusterSnapshotMessage$SnapshotIdentifier": "

        The name of the snapshot from which to create the new cluster. This parameter isn't case sensitive.

        Example: my-snapshot-id

        ", "RestoreFromClusterSnapshotMessage$SnapshotClusterIdentifier": "

        The name of the cluster the source snapshot was created from. This parameter is required if your IAM user has a policy containing a snapshot resource element that specifies anything other than * for the cluster name.

        ", "RestoreFromClusterSnapshotMessage$AvailabilityZone": "

        The Amazon EC2 Availability Zone in which to restore the cluster.

        Default: A random, system-chosen Availability Zone.

        Example: us-east-1a

        ", "RestoreFromClusterSnapshotMessage$ClusterSubnetGroupName": "

        The name of the subnet group where you want to cluster restored.

        A snapshot of cluster in VPC can be restored only in VPC. Therefore, you must provide subnet group name where you want the cluster restored.

        ", "RestoreFromClusterSnapshotMessage$OwnerAccount": "

        The AWS customer account used to create or copy the snapshot. Required if you are restoring a snapshot you do not own, optional if you own the snapshot.

        ", "RestoreFromClusterSnapshotMessage$HsmClientCertificateIdentifier": "

        Specifies the name of the HSM client certificate the Amazon Redshift cluster uses to retrieve the data encryption keys stored in an HSM.

        ", "RestoreFromClusterSnapshotMessage$HsmConfigurationIdentifier": "

        Specifies the name of the HSM configuration that contains the information the Amazon Redshift cluster can use to retrieve and store keys in an HSM.

        ", "RestoreFromClusterSnapshotMessage$ElasticIp": "

        The elastic IP (EIP) address for the cluster.

        ", "RestoreFromClusterSnapshotMessage$ClusterParameterGroupName": "

        The name of the parameter group to be associated with this cluster.

        Default: The default Amazon Redshift cluster parameter group. For information about the default parameter group, go to Working with Amazon Redshift Parameter Groups.

        Constraints:

        • Must be 1 to 255 alphanumeric characters or hyphens.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        ", "RestoreFromClusterSnapshotMessage$PreferredMaintenanceWindow": "

        The weekly time range (in UTC) during which automated cluster maintenance can occur.

        Format: ddd:hh24:mi-ddd:hh24:mi

        Default: The value selected for the cluster from which the snapshot was taken. For more information about the time blocks for each region, see Maintenance Windows in Amazon Redshift Cluster Management Guide.

        Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

        Constraints: Minimum 30-minute window.

        ", "RestoreFromClusterSnapshotMessage$KmsKeyId": "

        The AWS Key Management Service (KMS) key ID of the encryption key that you want to use to encrypt data in the cluster that you restore from a shared snapshot.

        ", "RestoreFromClusterSnapshotMessage$NodeType": "

        The node type that the restored cluster will be provisioned with.

        Default: The node type of the cluster from which the snapshot was taken. You can modify this if you are using any DS node type. In that case, you can choose to restore into another DS node type of the same size. For example, you can restore ds1.8xlarge into ds2.8xlarge, or ds2.xlarge into ds1.xlarge. If you have a DC instance type, you must restore into that same instance type and size. In other words, you can only restore a dc1.large instance type into another dc1.large instance type. For more information about node types, see About Clusters and Nodes in the Amazon Redshift Cluster Management Guide

        ", "RestoreFromClusterSnapshotMessage$AdditionalInfo": "

        Reserved.

        ", "RestoreStatus$Status": "

        The status of the restore action. Returns starting, restoring, completed, or failed.

        ", "RestoreTableFromClusterSnapshotMessage$ClusterIdentifier": "

        The identifier of the Amazon Redshift cluster to restore the table to.

        ", "RestoreTableFromClusterSnapshotMessage$SnapshotIdentifier": "

        The identifier of the snapshot to restore the table from. This snapshot must have been created from the Amazon Redshift cluster specified by the ClusterIdentifier parameter.

        ", "RestoreTableFromClusterSnapshotMessage$SourceDatabaseName": "

        The name of the source database that contains the table to restore from.

        ", "RestoreTableFromClusterSnapshotMessage$SourceSchemaName": "

        The name of the source schema that contains the table to restore from. If you do not specify a SourceSchemaName value, the default is public.

        ", "RestoreTableFromClusterSnapshotMessage$SourceTableName": "

        The name of the source table to restore from.

        ", "RestoreTableFromClusterSnapshotMessage$TargetDatabaseName": "

        The name of the database to restore the table to.

        ", "RestoreTableFromClusterSnapshotMessage$TargetSchemaName": "

        The name of the schema to restore the table to.

        ", "RestoreTableFromClusterSnapshotMessage$NewTableName": "

        The name of the table to create as a result of the current request.

        ", "RevokeClusterSecurityGroupIngressMessage$ClusterSecurityGroupName": "

        The name of the security Group from which to revoke the ingress rule.

        ", "RevokeClusterSecurityGroupIngressMessage$CIDRIP": "

        The IP range for which to revoke access. This range must be a valid Classless Inter-Domain Routing (CIDR) block of IP addresses. If CIDRIP is specified, EC2SecurityGroupName and EC2SecurityGroupOwnerId cannot be provided.

        ", "RevokeClusterSecurityGroupIngressMessage$EC2SecurityGroupName": "

        The name of the EC2 Security Group whose access is to be revoked. If EC2SecurityGroupName is specified, EC2SecurityGroupOwnerId must also be provided and CIDRIP cannot be provided.

        ", "RevokeClusterSecurityGroupIngressMessage$EC2SecurityGroupOwnerId": "

        The AWS account number of the owner of the security group specified in the EC2SecurityGroupName parameter. The AWS access key ID is not an acceptable value. If EC2SecurityGroupOwnerId is specified, EC2SecurityGroupName must also be provided. and CIDRIP cannot be provided.

        Example: 111122223333

        ", "RevokeSnapshotAccessMessage$SnapshotIdentifier": "

        The identifier of the snapshot that the account can no longer access.

        ", "RevokeSnapshotAccessMessage$SnapshotClusterIdentifier": "

        The identifier of the cluster the snapshot was created from. This parameter is required if your IAM user has a policy containing a snapshot resource element that specifies anything other than * for the cluster name.

        ", "RevokeSnapshotAccessMessage$AccountWithRestoreAccess": "

        The identifier of the AWS customer account that can no longer restore the specified snapshot.

        ", "RotateEncryptionKeyMessage$ClusterIdentifier": "

        The unique identifier of the cluster that you want to rotate the encryption keys for.

        Constraints: Must be the name of valid cluster that has encryption enabled.

        ", "Snapshot$SnapshotIdentifier": "

        The snapshot identifier that is provided in the request.

        ", "Snapshot$ClusterIdentifier": "

        The identifier of the cluster for which the snapshot was taken.

        ", "Snapshot$Status": "

        The snapshot status. The value of the status depends on the API operation used.

        ", "Snapshot$AvailabilityZone": "

        The Availability Zone in which the cluster was created.

        ", "Snapshot$MasterUsername": "

        The master user name for the cluster.

        ", "Snapshot$ClusterVersion": "

        The version ID of the Amazon Redshift engine that is running on the cluster.

        ", "Snapshot$SnapshotType": "

        The snapshot type. Snapshots created using CreateClusterSnapshot and CopyClusterSnapshot will be of type \"manual\".

        ", "Snapshot$NodeType": "

        The node type of the nodes in the cluster.

        ", "Snapshot$DBName": "

        The name of the database that was created when the cluster was created.

        ", "Snapshot$VpcId": "

        The VPC identifier of the cluster if the snapshot is from a cluster in a VPC. Otherwise, this field is not in the output.

        ", "Snapshot$KmsKeyId": "

        The AWS Key Management Service (KMS) key ID of the encryption key that was used to encrypt data in the cluster from which the snapshot was taken.

        ", "Snapshot$OwnerAccount": "

        For manual snapshots, the AWS customer account used to create or copy the snapshot. For automatic snapshots, the owner of the cluster. The owner can perform all snapshot actions, such as sharing a manual snapshot.

        ", "Snapshot$SourceRegion": "

        The source region from which the snapshot was copied.

        ", "SnapshotCopyGrant$SnapshotCopyGrantName": "

        The name of the snapshot copy grant.

        ", "SnapshotCopyGrant$KmsKeyId": "

        The unique identifier of the customer master key (CMK) in AWS KMS to which Amazon Redshift is granted permission.

        ", "SnapshotCopyGrantMessage$Marker": "

        An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeSnapshotCopyGrant request exceed the value specified in MaxRecords, AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

        Constraints: You can specify either the SnapshotCopyGrantName parameter or the Marker parameter, but not both.

        ", "SnapshotMessage$Marker": "

        A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

        ", "SourceIdsList$member": null, "Subnet$SubnetIdentifier": "

        The identifier of the subnet.

        ", "Subnet$SubnetStatus": "

        The status of the subnet.

        ", "SubnetIdentifierList$member": null, "TableRestoreStatus$TableRestoreRequestId": "

        The unique identifier for the table restore request.

        ", "TableRestoreStatus$Message": "

        A description of the status of the table restore request. Status values include SUCCEEDED, FAILED, CANCELED, PENDING, IN_PROGRESS.

        ", "TableRestoreStatus$ClusterIdentifier": "

        The identifier of the Amazon Redshift cluster that the table is being restored to.

        ", "TableRestoreStatus$SnapshotIdentifier": "

        The identifier of the snapshot that the table is being restored from.

        ", "TableRestoreStatus$SourceDatabaseName": "

        The name of the source database that contains the table being restored.

        ", "TableRestoreStatus$SourceSchemaName": "

        The name of the source schema that contains the table being restored.

        ", "TableRestoreStatus$SourceTableName": "

        The name of the source table being restored.

        ", "TableRestoreStatus$TargetDatabaseName": "

        The name of the database to restore the table to.

        ", "TableRestoreStatus$TargetSchemaName": "

        The name of the schema to restore the table to.

        ", "TableRestoreStatus$NewTableName": "

        The name of the table to create as a result of the table restore request.

        ", "TableRestoreStatusMessage$Marker": "

        A pagination token that can be used in a subsequent DescribeTableRestoreStatus request.

        ", "Tag$Key": "

        The key, or name, for the resource tag.

        ", "Tag$Value": "

        The value for the resource tag.

        ", "TagKeyList$member": null, "TagValueList$member": null, "TaggedResource$ResourceName": "

        The Amazon Resource Name (ARN) with which the tag is associated. For example, arn:aws:redshift:us-east-1:123456789:cluster:t1.

        ", "TaggedResource$ResourceType": "

        The type of resource with which the tag is associated. Valid resource types are:

        • Cluster

        • CIDR/IP

        • EC2 security group

        • Snapshot

        • Cluster security group

        • Subnet group

        • HSM connection

        • HSM certificate

        • Parameter group

        For more information about Amazon Redshift resource types and constructing ARNs, go to Constructing an Amazon Redshift Amazon Resource Name (ARN) in the Amazon Redshift Cluster Management Guide.

        ", "TaggedResourceListMessage$Marker": "

        A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

        ", "VpcSecurityGroupIdList$member": null, "VpcSecurityGroupMembership$VpcSecurityGroupId": "

        The identifier of the VPC security group.

        ", "VpcSecurityGroupMembership$Status": "

        The status of the VPC security group.

        " } }, "Subnet": { "base": "

        Describes a subnet.

        ", "refs": { "SubnetList$member": null } }, "SubnetAlreadyInUse": { "base": "

        A specified subnet is already in use by another cluster.

        ", "refs": { } }, "SubnetIdentifierList": { "base": null, "refs": { "CreateClusterSubnetGroupMessage$SubnetIds": "

        An array of VPC subnet IDs. A maximum of 20 subnets can be modified in a single request.

        ", "ModifyClusterSubnetGroupMessage$SubnetIds": "

        An array of VPC subnet IDs. A maximum of 20 subnets can be modified in a single request.

        " } }, "SubnetList": { "base": null, "refs": { "ClusterSubnetGroup$Subnets": "

        A list of the VPC Subnet elements.

        " } }, "SubscriptionAlreadyExistFault": { "base": "

        There is already an existing event notification subscription with the specified name.

        ", "refs": { } }, "SubscriptionCategoryNotFoundFault": { "base": "

        The value specified for the event category was not one of the allowed values, or it specified a category that does not apply to the specified source type. The allowed values are Configuration, Management, Monitoring, and Security.

        ", "refs": { } }, "SubscriptionEventIdNotFoundFault": { "base": "

        An Amazon Redshift event with the specified event ID does not exist.

        ", "refs": { } }, "SubscriptionNotFoundFault": { "base": "

        An Amazon Redshift event notification subscription with the specified name does not exist.

        ", "refs": { } }, "SubscriptionSeverityNotFoundFault": { "base": "

        The value specified for the event severity was not one of the allowed values, or it specified a severity that does not apply to the specified source type. The allowed values are ERROR and INFO.

        ", "refs": { } }, "TStamp": { "base": null, "refs": { "Cluster$ClusterCreateTime": "

        The date and time that the cluster was created.

        ", "DescribeClusterSnapshotsMessage$StartTime": "

        A value that requests only snapshots created at or after the specified time. The time value is specified in ISO 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia page.

        Example: 2012-07-16T18:00:00Z

        ", "DescribeClusterSnapshotsMessage$EndTime": "

        A time value that requests only snapshots created at or before the specified time. The time value is specified in ISO 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia page.

        Example: 2012-07-16T18:00:00Z

        ", "DescribeEventsMessage$StartTime": "

        The beginning of the time interval to retrieve events for, specified in ISO 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia page.

        Example: 2009-07-08T18:00Z

        ", "DescribeEventsMessage$EndTime": "

        The end of the time interval for which to retrieve events, specified in ISO 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia page.

        Example: 2009-07-08T18:00Z

        ", "Event$Date": "

        The date and time of the event.

        ", "EventSubscription$SubscriptionCreationTime": "

        The date and time the Amazon Redshift event notification subscription was created.

        ", "LoggingStatus$LastSuccessfulDeliveryTime": "

        The last time that logs were delivered.

        ", "LoggingStatus$LastFailureTime": "

        The last time when logs failed to be delivered.

        ", "ReservedNode$StartTime": "

        The time the reservation started. You purchase a reserved node offering for a duration. This is the start time of that duration.

        ", "Snapshot$SnapshotCreateTime": "

        The time (UTC) when Amazon Redshift began the snapshot. A snapshot contains a copy of the cluster data as of this exact time.

        ", "Snapshot$ClusterCreateTime": "

        The time (UTC) when the cluster was originally created.

        ", "TableRestoreStatus$RequestTime": "

        The time that the table restore request was made, in Universal Coordinated Time (UTC).

        " } }, "TableRestoreNotFoundFault": { "base": "

        The specified TableRestoreRequestId value was not found.

        ", "refs": { } }, "TableRestoreStatus": { "base": "

        Describes the status of a RestoreTableFromClusterSnapshot operation.

        ", "refs": { "RestoreTableFromClusterSnapshotResult$TableRestoreStatus": null, "TableRestoreStatusList$member": null } }, "TableRestoreStatusList": { "base": null, "refs": { "TableRestoreStatusMessage$TableRestoreStatusDetails": "

        A list of status details for one or more table restore requests.

        " } }, "TableRestoreStatusMessage": { "base": "

        ", "refs": { } }, "TableRestoreStatusType": { "base": null, "refs": { "TableRestoreStatus$Status": "

        A value that describes the current state of the table restore request.

        Valid Values: SUCCEEDED, FAILED, CANCELED, PENDING, IN_PROGRESS

        " } }, "Tag": { "base": "

        A tag consisting of a name/value pair for a resource.

        ", "refs": { "TagList$member": null, "TaggedResource$Tag": "

        The tag for the resource.

        " } }, "TagKeyList": { "base": null, "refs": { "DeleteTagsMessage$TagKeys": "

        The tag key that you want to delete.

        ", "DescribeClusterParameterGroupsMessage$TagKeys": "

        A tag key or keys for which you want to return all matching cluster parameter groups that are associated with the specified key or keys. For example, suppose that you have parameter groups that are tagged with keys called owner and environment. If you specify both of these tag keys in the request, Amazon Redshift returns a response with the parameter groups that have either or both of these tag keys associated with them.

        ", "DescribeClusterSecurityGroupsMessage$TagKeys": "

        A tag key or keys for which you want to return all matching cluster security groups that are associated with the specified key or keys. For example, suppose that you have security groups that are tagged with keys called owner and environment. If you specify both of these tag keys in the request, Amazon Redshift returns a response with the security groups that have either or both of these tag keys associated with them.

        ", "DescribeClusterSnapshotsMessage$TagKeys": "

        A tag key or keys for which you want to return all matching cluster snapshots that are associated with the specified key or keys. For example, suppose that you have snapshots that are tagged with keys called owner and environment. If you specify both of these tag keys in the request, Amazon Redshift returns a response with the snapshots that have either or both of these tag keys associated with them.

        ", "DescribeClusterSubnetGroupsMessage$TagKeys": "

        A tag key or keys for which you want to return all matching cluster subnet groups that are associated with the specified key or keys. For example, suppose that you have subnet groups that are tagged with keys called owner and environment. If you specify both of these tag keys in the request, Amazon Redshift returns a response with the subnet groups that have either or both of these tag keys associated with them.

        ", "DescribeClustersMessage$TagKeys": "

        A tag key or keys for which you want to return all matching clusters that are associated with the specified key or keys. For example, suppose that you have clusters that are tagged with keys called owner and environment. If you specify both of these tag keys in the request, Amazon Redshift returns a response with the clusters that have either or both of these tag keys associated with them.

        ", "DescribeHsmClientCertificatesMessage$TagKeys": "

        A tag key or keys for which you want to return all matching HSM client certificates that are associated with the specified key or keys. For example, suppose that you have HSM client certificates that are tagged with keys called owner and environment. If you specify both of these tag keys in the request, Amazon Redshift returns a response with the HSM client certificates that have either or both of these tag keys associated with them.

        ", "DescribeHsmConfigurationsMessage$TagKeys": "

        A tag key or keys for which you want to return all matching HSM configurations that are associated with the specified key or keys. For example, suppose that you have HSM configurations that are tagged with keys called owner and environment. If you specify both of these tag keys in the request, Amazon Redshift returns a response with the HSM configurations that have either or both of these tag keys associated with them.

        ", "DescribeSnapshotCopyGrantsMessage$TagKeys": "

        A tag key or keys for which you want to return all matching resources that are associated with the specified key or keys. For example, suppose that you have resources tagged with keys called owner and environment. If you specify both of these tag keys in the request, Amazon Redshift returns a response with all resources that have either or both of these tag keys associated with them.

        ", "DescribeTagsMessage$TagKeys": "

        A tag key or keys for which you want to return all matching resources that are associated with the specified key or keys. For example, suppose that you have resources tagged with keys called owner and environment. If you specify both of these tag keys in the request, Amazon Redshift returns a response with all resources that have either or both of these tag keys associated with them.

        " } }, "TagLimitExceededFault": { "base": "

        The request exceeds the limit of 10 tags for the resource.

        ", "refs": { } }, "TagList": { "base": null, "refs": { "Cluster$Tags": "

        The list of tags for the cluster.

        ", "ClusterParameterGroup$Tags": "

        The list of tags for the cluster parameter group.

        ", "ClusterSecurityGroup$Tags": "

        The list of tags for the cluster security group.

        ", "ClusterSubnetGroup$Tags": "

        The list of tags for the cluster subnet group.

        ", "CreateClusterMessage$Tags": "

        A list of tag instances.

        ", "CreateClusterParameterGroupMessage$Tags": "

        A list of tag instances.

        ", "CreateClusterSecurityGroupMessage$Tags": "

        A list of tag instances.

        ", "CreateClusterSnapshotMessage$Tags": "

        A list of tag instances.

        ", "CreateClusterSubnetGroupMessage$Tags": "

        A list of tag instances.

        ", "CreateEventSubscriptionMessage$Tags": "

        A list of tag instances.

        ", "CreateHsmClientCertificateMessage$Tags": "

        A list of tag instances.

        ", "CreateHsmConfigurationMessage$Tags": "

        A list of tag instances.

        ", "CreateSnapshotCopyGrantMessage$Tags": "

        A list of tag instances.

        ", "CreateTagsMessage$Tags": "

        One or more name/value pairs to add as tags to the specified resource. Each tag name is passed in with the parameter Key and the corresponding value is passed in with the parameter Value. The Key and Value parameters are separated by a comma (,). Separate multiple tags with a space. For example, --tags \"Key\"=\"owner\",\"Value\"=\"admin\" \"Key\"=\"environment\",\"Value\"=\"test\" \"Key\"=\"version\",\"Value\"=\"1.0\".

        ", "EC2SecurityGroup$Tags": "

        The list of tags for the EC2 security group.

        ", "EventSubscription$Tags": "

        The list of tags for the event subscription.

        ", "HsmClientCertificate$Tags": "

        The list of tags for the HSM client certificate.

        ", "HsmConfiguration$Tags": "

        The list of tags for the HSM configuration.

        ", "IPRange$Tags": "

        The list of tags for the IP range.

        ", "Snapshot$Tags": "

        The list of tags for the cluster snapshot.

        ", "SnapshotCopyGrant$Tags": "

        A list of tag instances.

        " } }, "TagValueList": { "base": null, "refs": { "DescribeClusterParameterGroupsMessage$TagValues": "

        A tag value or values for which you want to return all matching cluster parameter groups that are associated with the specified tag value or values. For example, suppose that you have parameter groups that are tagged with values called admin and test. If you specify both of these tag values in the request, Amazon Redshift returns a response with the parameter groups that have either or both of these tag values associated with them.

        ", "DescribeClusterSecurityGroupsMessage$TagValues": "

        A tag value or values for which you want to return all matching cluster security groups that are associated with the specified tag value or values. For example, suppose that you have security groups that are tagged with values called admin and test. If you specify both of these tag values in the request, Amazon Redshift returns a response with the security groups that have either or both of these tag values associated with them.

        ", "DescribeClusterSnapshotsMessage$TagValues": "

        A tag value or values for which you want to return all matching cluster snapshots that are associated with the specified tag value or values. For example, suppose that you have snapshots that are tagged with values called admin and test. If you specify both of these tag values in the request, Amazon Redshift returns a response with the snapshots that have either or both of these tag values associated with them.

        ", "DescribeClusterSubnetGroupsMessage$TagValues": "

        A tag value or values for which you want to return all matching cluster subnet groups that are associated with the specified tag value or values. For example, suppose that you have subnet groups that are tagged with values called admin and test. If you specify both of these tag values in the request, Amazon Redshift returns a response with the subnet groups that have either or both of these tag values associated with them.

        ", "DescribeClustersMessage$TagValues": "

        A tag value or values for which you want to return all matching clusters that are associated with the specified tag value or values. For example, suppose that you have clusters that are tagged with values called admin and test. If you specify both of these tag values in the request, Amazon Redshift returns a response with the clusters that have either or both of these tag values associated with them.

        ", "DescribeHsmClientCertificatesMessage$TagValues": "

        A tag value or values for which you want to return all matching HSM client certificates that are associated with the specified tag value or values. For example, suppose that you have HSM client certificates that are tagged with values called admin and test. If you specify both of these tag values in the request, Amazon Redshift returns a response with the HSM client certificates that have either or both of these tag values associated with them.

        ", "DescribeHsmConfigurationsMessage$TagValues": "

        A tag value or values for which you want to return all matching HSM configurations that are associated with the specified tag value or values. For example, suppose that you have HSM configurations that are tagged with values called admin and test. If you specify both of these tag values in the request, Amazon Redshift returns a response with the HSM configurations that have either or both of these tag values associated with them.

        ", "DescribeSnapshotCopyGrantsMessage$TagValues": "

        A tag value or values for which you want to return all matching resources that are associated with the specified value or values. For example, suppose that you have resources tagged with values called admin and test. If you specify both of these tag values in the request, Amazon Redshift returns a response with all resources that have either or both of these tag values associated with them.

        ", "DescribeTagsMessage$TagValues": "

        A tag value or values for which you want to return all matching resources that are associated with the specified value or values. For example, suppose that you have resources tagged with values called admin and test. If you specify both of these tag values in the request, Amazon Redshift returns a response with all resources that have either or both of these tag values associated with them.

        " } }, "TaggedResource": { "base": "

        A tag and its associated resource.

        ", "refs": { "TaggedResourceList$member": null } }, "TaggedResourceList": { "base": null, "refs": { "TaggedResourceListMessage$TaggedResources": "

        A list of tags with their associated resources.

        " } }, "TaggedResourceListMessage": { "base": "

        ", "refs": { } }, "UnauthorizedOperation": { "base": "

        Your account is not authorized to perform the requested operation.

        ", "refs": { } }, "UnknownSnapshotCopyRegionFault": { "base": "

        The specified region is incorrect or does not exist.

        ", "refs": { } }, "UnsupportedOperationFault": { "base": "

        The requested operation isn't supported.

        ", "refs": { } }, "UnsupportedOptionFault": { "base": "

        A request option was specified that is not supported.

        ", "refs": { } }, "VpcSecurityGroupIdList": { "base": null, "refs": { "CreateClusterMessage$VpcSecurityGroupIds": "

        A list of Virtual Private Cloud (VPC) security groups to be associated with the cluster.

        Default: The default VPC security group is associated with the cluster.

        ", "ModifyClusterMessage$VpcSecurityGroupIds": "

        A list of virtual private cloud (VPC) security groups to be associated with the cluster.

        ", "RestoreFromClusterSnapshotMessage$VpcSecurityGroupIds": "

        A list of Virtual Private Cloud (VPC) security groups to be associated with the cluster.

        Default: The default VPC security group is associated with the cluster.

        VPC security groups only apply to clusters in VPCs.

        " } }, "VpcSecurityGroupMembership": { "base": "

        Describes the members of a VPC security group.

        ", "refs": { "VpcSecurityGroupMembershipList$member": null } }, "VpcSecurityGroupMembershipList": { "base": null, "refs": { "Cluster$VpcSecurityGroups": "

        A list of Amazon Virtual Private Cloud (Amazon VPC) security groups that are associated with the cluster. This parameter is returned only if the cluster is in a VPC.

        " } } } } aws-sdk-go-1.4.22/models/apis/redshift/2012-12-01/examples-1.json000066400000000000000000000000541300374646400235020ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/redshift/2012-12-01/paginators-1.json000066400000000000000000000052461300374646400240430ustar00rootroot00000000000000{ "pagination": { "DescribeClusterParameterGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "ParameterGroups" }, "DescribeClusterParameters": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "Parameters" }, "DescribeClusterSecurityGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "ClusterSecurityGroups" }, "DescribeClusterSnapshots": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "Snapshots" }, "DescribeClusterSubnetGroups": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "ClusterSubnetGroups" }, "DescribeClusterVersions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "ClusterVersions" }, "DescribeClusters": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "Clusters" }, "DescribeDefaultClusterParameters": { "input_token": "Marker", "output_token": "DefaultClusterParameters.Marker", "limit_key": "MaxRecords", "result_key": "DefaultClusterParameters.Parameters" }, "DescribeEventSubscriptions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "EventSubscriptionsList" }, "DescribeEvents": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "Events" }, "DescribeHsmClientCertificates": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "HsmClientCertificates" }, "DescribeHsmConfigurations": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "HsmConfigurations" }, "DescribeOrderableClusterOptions": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "OrderableClusterOptions" }, "DescribeReservedNodeOfferings": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "ReservedNodeOfferings" }, "DescribeReservedNodes": { "input_token": "Marker", "output_token": "Marker", "limit_key": "MaxRecords", "result_key": "ReservedNodes" } } } aws-sdk-go-1.4.22/models/apis/redshift/2012-12-01/waiters-2.json000066400000000000000000000044501300374646400233470ustar00rootroot00000000000000{ "version": 2, "waiters": { "ClusterAvailable": { "delay": 60, "operation": "DescribeClusters", "maxAttempts": 30, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "Clusters[].ClusterStatus" }, { "expected": "deleting", "matcher": "pathAny", "state": "failure", "argument": "Clusters[].ClusterStatus" }, { "expected": "ClusterNotFound", "matcher": "error", "state": "retry" } ] }, "ClusterDeleted": { "delay": 60, "operation": "DescribeClusters", "maxAttempts": 30, "acceptors": [ { "expected": "ClusterNotFound", "matcher": "error", "state": "success" }, { "expected": "creating", "matcher": "pathAny", "state": "failure", "argument": "Clusters[].ClusterStatus" }, { "expected": "modifying", "matcher": "pathAny", "state": "failure", "argument": "Clusters[].ClusterStatus" } ] }, "ClusterRestored": { "operation": "DescribeClusters", "maxAttempts": 30, "delay": 60, "acceptors": [ { "state": "success", "matcher": "pathAll", "argument": "Clusters[].RestoreStatus.Status", "expected": "completed" }, { "state": "failure", "matcher": "pathAny", "argument": "Clusters[].ClusterStatus", "expected": "deleting" } ] }, "SnapshotAvailable": { "delay": 15, "operation": "DescribeClusterSnapshots", "maxAttempts": 20, "acceptors": [ { "expected": "available", "matcher": "pathAll", "state": "success", "argument": "Snapshots[].Status" }, { "expected": "failed", "matcher": "pathAny", "state": "failure", "argument": "Snapshots[].Status" }, { "expected": "deleted", "matcher": "pathAny", "state": "failure", "argument": "Snapshots[].Status" } ] } } } aws-sdk-go-1.4.22/models/apis/route53/000077500000000000000000000000001300374646400173105ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/route53/2013-04-01/000077500000000000000000000000001300374646400203345ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/route53/2013-04-01/api-2.json000066400000000000000000002544611300374646400221530ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2013-04-01", "endpointPrefix":"route53", "globalEndpoint":"route53.amazonaws.com", "protocol":"rest-xml", "serviceAbbreviation":"Route 53", "serviceFullName":"Amazon Route 53", "signatureVersion":"v4" }, "operations":{ "AssociateVPCWithHostedZone":{ "name":"AssociateVPCWithHostedZone", "http":{ "method":"POST", "requestUri":"/2013-04-01/hostedzone/{Id}/associatevpc" }, "input":{ "shape":"AssociateVPCWithHostedZoneRequest", "locationName":"AssociateVPCWithHostedZoneRequest", "xmlNamespace":{"uri":"https://route53.amazonaws.com/doc/2013-04-01/"} }, "output":{"shape":"AssociateVPCWithHostedZoneResponse"}, "errors":[ {"shape":"NoSuchHostedZone"}, {"shape":"InvalidVPCId"}, {"shape":"InvalidInput"}, {"shape":"PublicZoneVPCAssociation"}, {"shape":"ConflictingDomainExists"}, {"shape":"LimitsExceeded"} ] }, "ChangeResourceRecordSets":{ "name":"ChangeResourceRecordSets", "http":{ "method":"POST", "requestUri":"/2013-04-01/hostedzone/{Id}/rrset/" }, "input":{ "shape":"ChangeResourceRecordSetsRequest", "locationName":"ChangeResourceRecordSetsRequest", "xmlNamespace":{"uri":"https://route53.amazonaws.com/doc/2013-04-01/"} }, "output":{"shape":"ChangeResourceRecordSetsResponse"}, "errors":[ {"shape":"NoSuchHostedZone"}, {"shape":"NoSuchHealthCheck"}, {"shape":"InvalidChangeBatch"}, {"shape":"InvalidInput"}, {"shape":"PriorRequestNotComplete"} ] }, "ChangeTagsForResource":{ "name":"ChangeTagsForResource", "http":{ "method":"POST", "requestUri":"/2013-04-01/tags/{ResourceType}/{ResourceId}" }, "input":{ "shape":"ChangeTagsForResourceRequest", "locationName":"ChangeTagsForResourceRequest", "xmlNamespace":{"uri":"https://route53.amazonaws.com/doc/2013-04-01/"} }, "output":{"shape":"ChangeTagsForResourceResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"NoSuchHealthCheck"}, {"shape":"NoSuchHostedZone"}, {"shape":"PriorRequestNotComplete"}, {"shape":"ThrottlingException"} ] }, "CreateHealthCheck":{ "name":"CreateHealthCheck", "http":{ "method":"POST", "requestUri":"/2013-04-01/healthcheck", "responseCode":201 }, "input":{ "shape":"CreateHealthCheckRequest", "locationName":"CreateHealthCheckRequest", "xmlNamespace":{"uri":"https://route53.amazonaws.com/doc/2013-04-01/"} }, "output":{"shape":"CreateHealthCheckResponse"}, "errors":[ {"shape":"TooManyHealthChecks"}, {"shape":"HealthCheckAlreadyExists"}, {"shape":"InvalidInput"} ] }, "CreateHostedZone":{ "name":"CreateHostedZone", "http":{ "method":"POST", "requestUri":"/2013-04-01/hostedzone", "responseCode":201 }, "input":{ "shape":"CreateHostedZoneRequest", "locationName":"CreateHostedZoneRequest", "xmlNamespace":{"uri":"https://route53.amazonaws.com/doc/2013-04-01/"} }, "output":{"shape":"CreateHostedZoneResponse"}, "errors":[ {"shape":"InvalidDomainName"}, {"shape":"HostedZoneAlreadyExists"}, {"shape":"TooManyHostedZones"}, {"shape":"InvalidVPCId"}, {"shape":"InvalidInput"}, {"shape":"DelegationSetNotAvailable"}, {"shape":"ConflictingDomainExists"}, {"shape":"NoSuchDelegationSet"}, {"shape":"DelegationSetNotReusable"} ] }, "CreateReusableDelegationSet":{ "name":"CreateReusableDelegationSet", "http":{ "method":"POST", "requestUri":"/2013-04-01/delegationset", "responseCode":201 }, "input":{ "shape":"CreateReusableDelegationSetRequest", "locationName":"CreateReusableDelegationSetRequest", "xmlNamespace":{"uri":"https://route53.amazonaws.com/doc/2013-04-01/"} }, "output":{"shape":"CreateReusableDelegationSetResponse"}, "errors":[ {"shape":"DelegationSetAlreadyCreated"}, {"shape":"LimitsExceeded"}, {"shape":"HostedZoneNotFound"}, {"shape":"InvalidArgument"}, {"shape":"InvalidInput"}, {"shape":"DelegationSetNotAvailable"}, {"shape":"DelegationSetAlreadyReusable"} ] }, "CreateTrafficPolicy":{ "name":"CreateTrafficPolicy", "http":{ "method":"POST", "requestUri":"/2013-04-01/trafficpolicy", "responseCode":201 }, "input":{ "shape":"CreateTrafficPolicyRequest", "locationName":"CreateTrafficPolicyRequest", "xmlNamespace":{"uri":"https://route53.amazonaws.com/doc/2013-04-01/"} }, "output":{"shape":"CreateTrafficPolicyResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"TooManyTrafficPolicies"}, {"shape":"TrafficPolicyAlreadyExists"}, {"shape":"InvalidTrafficPolicyDocument"} ] }, "CreateTrafficPolicyInstance":{ "name":"CreateTrafficPolicyInstance", "http":{ "method":"POST", "requestUri":"/2013-04-01/trafficpolicyinstance", "responseCode":201 }, "input":{ "shape":"CreateTrafficPolicyInstanceRequest", "locationName":"CreateTrafficPolicyInstanceRequest", "xmlNamespace":{"uri":"https://route53.amazonaws.com/doc/2013-04-01/"} }, "output":{"shape":"CreateTrafficPolicyInstanceResponse"}, "errors":[ {"shape":"NoSuchHostedZone"}, {"shape":"InvalidInput"}, {"shape":"TooManyTrafficPolicyInstances"}, {"shape":"NoSuchTrafficPolicy"}, {"shape":"TrafficPolicyInstanceAlreadyExists"} ] }, "CreateTrafficPolicyVersion":{ "name":"CreateTrafficPolicyVersion", "http":{ "method":"POST", "requestUri":"/2013-04-01/trafficpolicy/{Id}", "responseCode":201 }, "input":{ "shape":"CreateTrafficPolicyVersionRequest", "locationName":"CreateTrafficPolicyVersionRequest", "xmlNamespace":{"uri":"https://route53.amazonaws.com/doc/2013-04-01/"} }, "output":{"shape":"CreateTrafficPolicyVersionResponse"}, "errors":[ {"shape":"NoSuchTrafficPolicy"}, {"shape":"InvalidInput"}, {"shape":"ConcurrentModification"}, {"shape":"InvalidTrafficPolicyDocument"} ] }, "DeleteHealthCheck":{ "name":"DeleteHealthCheck", "http":{ "method":"DELETE", "requestUri":"/2013-04-01/healthcheck/{HealthCheckId}" }, "input":{"shape":"DeleteHealthCheckRequest"}, "output":{"shape":"DeleteHealthCheckResponse"}, "errors":[ {"shape":"NoSuchHealthCheck"}, {"shape":"HealthCheckInUse"}, {"shape":"InvalidInput"} ] }, "DeleteHostedZone":{ "name":"DeleteHostedZone", "http":{ "method":"DELETE", "requestUri":"/2013-04-01/hostedzone/{Id}" }, "input":{"shape":"DeleteHostedZoneRequest"}, "output":{"shape":"DeleteHostedZoneResponse"}, "errors":[ {"shape":"NoSuchHostedZone"}, {"shape":"HostedZoneNotEmpty"}, {"shape":"PriorRequestNotComplete"}, {"shape":"InvalidInput"}, {"shape":"InvalidDomainName"} ] }, "DeleteReusableDelegationSet":{ "name":"DeleteReusableDelegationSet", "http":{ "method":"DELETE", "requestUri":"/2013-04-01/delegationset/{Id}" }, "input":{"shape":"DeleteReusableDelegationSetRequest"}, "output":{"shape":"DeleteReusableDelegationSetResponse"}, "errors":[ {"shape":"NoSuchDelegationSet"}, {"shape":"DelegationSetInUse"}, {"shape":"DelegationSetNotReusable"}, {"shape":"InvalidInput"} ] }, "DeleteTrafficPolicy":{ "name":"DeleteTrafficPolicy", "http":{ "method":"DELETE", "requestUri":"/2013-04-01/trafficpolicy/{Id}/{Version}" }, "input":{"shape":"DeleteTrafficPolicyRequest"}, "output":{"shape":"DeleteTrafficPolicyResponse"}, "errors":[ {"shape":"NoSuchTrafficPolicy"}, {"shape":"InvalidInput"}, {"shape":"TrafficPolicyInUse"}, {"shape":"ConcurrentModification"} ] }, "DeleteTrafficPolicyInstance":{ "name":"DeleteTrafficPolicyInstance", "http":{ "method":"DELETE", "requestUri":"/2013-04-01/trafficpolicyinstance/{Id}" }, "input":{"shape":"DeleteTrafficPolicyInstanceRequest"}, "output":{"shape":"DeleteTrafficPolicyInstanceResponse"}, "errors":[ {"shape":"NoSuchTrafficPolicyInstance"}, {"shape":"InvalidInput"}, {"shape":"PriorRequestNotComplete"} ] }, "DisassociateVPCFromHostedZone":{ "name":"DisassociateVPCFromHostedZone", "http":{ "method":"POST", "requestUri":"/2013-04-01/hostedzone/{Id}/disassociatevpc" }, "input":{ "shape":"DisassociateVPCFromHostedZoneRequest", "locationName":"DisassociateVPCFromHostedZoneRequest", "xmlNamespace":{"uri":"https://route53.amazonaws.com/doc/2013-04-01/"} }, "output":{"shape":"DisassociateVPCFromHostedZoneResponse"}, "errors":[ {"shape":"NoSuchHostedZone"}, {"shape":"InvalidVPCId"}, {"shape":"VPCAssociationNotFound"}, {"shape":"LastVPCAssociation"}, {"shape":"InvalidInput"} ] }, "GetChange":{ "name":"GetChange", "http":{ "method":"GET", "requestUri":"/2013-04-01/change/{Id}" }, "input":{"shape":"GetChangeRequest"}, "output":{"shape":"GetChangeResponse"}, "errors":[ {"shape":"NoSuchChange"}, {"shape":"InvalidInput"} ] }, "GetChangeDetails":{ "name":"GetChangeDetails", "http":{ "method":"GET", "requestUri":"/2013-04-01/changedetails/{Id}" }, "input":{"shape":"GetChangeDetailsRequest"}, "output":{"shape":"GetChangeDetailsResponse"}, "errors":[ {"shape":"NoSuchChange"}, {"shape":"InvalidInput"} ], "deprecated":true }, "GetCheckerIpRanges":{ "name":"GetCheckerIpRanges", "http":{ "method":"GET", "requestUri":"/2013-04-01/checkeripranges" }, "input":{"shape":"GetCheckerIpRangesRequest"}, "output":{"shape":"GetCheckerIpRangesResponse"} }, "GetGeoLocation":{ "name":"GetGeoLocation", "http":{ "method":"GET", "requestUri":"/2013-04-01/geolocation" }, "input":{"shape":"GetGeoLocationRequest"}, "output":{"shape":"GetGeoLocationResponse"}, "errors":[ {"shape":"NoSuchGeoLocation"}, {"shape":"InvalidInput"} ] }, "GetHealthCheck":{ "name":"GetHealthCheck", "http":{ "method":"GET", "requestUri":"/2013-04-01/healthcheck/{HealthCheckId}" }, "input":{"shape":"GetHealthCheckRequest"}, "output":{"shape":"GetHealthCheckResponse"}, "errors":[ {"shape":"NoSuchHealthCheck"}, {"shape":"InvalidInput"}, {"shape":"IncompatibleVersion"} ] }, "GetHealthCheckCount":{ "name":"GetHealthCheckCount", "http":{ "method":"GET", "requestUri":"/2013-04-01/healthcheckcount" }, "input":{"shape":"GetHealthCheckCountRequest"}, "output":{"shape":"GetHealthCheckCountResponse"} }, "GetHealthCheckLastFailureReason":{ "name":"GetHealthCheckLastFailureReason", "http":{ "method":"GET", "requestUri":"/2013-04-01/healthcheck/{HealthCheckId}/lastfailurereason" }, "input":{"shape":"GetHealthCheckLastFailureReasonRequest"}, "output":{"shape":"GetHealthCheckLastFailureReasonResponse"}, "errors":[ {"shape":"NoSuchHealthCheck"}, {"shape":"InvalidInput"} ] }, "GetHealthCheckStatus":{ "name":"GetHealthCheckStatus", "http":{ "method":"GET", "requestUri":"/2013-04-01/healthcheck/{HealthCheckId}/status" }, "input":{"shape":"GetHealthCheckStatusRequest"}, "output":{"shape":"GetHealthCheckStatusResponse"}, "errors":[ {"shape":"NoSuchHealthCheck"}, {"shape":"InvalidInput"} ] }, "GetHostedZone":{ "name":"GetHostedZone", "http":{ "method":"GET", "requestUri":"/2013-04-01/hostedzone/{Id}" }, "input":{"shape":"GetHostedZoneRequest"}, "output":{"shape":"GetHostedZoneResponse"}, "errors":[ {"shape":"NoSuchHostedZone"}, {"shape":"InvalidInput"} ] }, "GetHostedZoneCount":{ "name":"GetHostedZoneCount", "http":{ "method":"GET", "requestUri":"/2013-04-01/hostedzonecount" }, "input":{"shape":"GetHostedZoneCountRequest"}, "output":{"shape":"GetHostedZoneCountResponse"}, "errors":[ {"shape":"InvalidInput"} ] }, "GetReusableDelegationSet":{ "name":"GetReusableDelegationSet", "http":{ "method":"GET", "requestUri":"/2013-04-01/delegationset/{Id}" }, "input":{"shape":"GetReusableDelegationSetRequest"}, "output":{"shape":"GetReusableDelegationSetResponse"}, "errors":[ {"shape":"NoSuchDelegationSet"}, {"shape":"DelegationSetNotReusable"}, {"shape":"InvalidInput"} ] }, "GetTrafficPolicy":{ "name":"GetTrafficPolicy", "http":{ "method":"GET", "requestUri":"/2013-04-01/trafficpolicy/{Id}/{Version}" }, "input":{"shape":"GetTrafficPolicyRequest"}, "output":{"shape":"GetTrafficPolicyResponse"}, "errors":[ {"shape":"NoSuchTrafficPolicy"}, {"shape":"InvalidInput"} ] }, "GetTrafficPolicyInstance":{ "name":"GetTrafficPolicyInstance", "http":{ "method":"GET", "requestUri":"/2013-04-01/trafficpolicyinstance/{Id}" }, "input":{"shape":"GetTrafficPolicyInstanceRequest"}, "output":{"shape":"GetTrafficPolicyInstanceResponse"}, "errors":[ {"shape":"NoSuchTrafficPolicyInstance"}, {"shape":"InvalidInput"} ] }, "GetTrafficPolicyInstanceCount":{ "name":"GetTrafficPolicyInstanceCount", "http":{ "method":"GET", "requestUri":"/2013-04-01/trafficpolicyinstancecount" }, "input":{"shape":"GetTrafficPolicyInstanceCountRequest"}, "output":{"shape":"GetTrafficPolicyInstanceCountResponse"} }, "ListChangeBatchesByHostedZone":{ "name":"ListChangeBatchesByHostedZone", "http":{ "method":"GET", "requestUri":"/2013-04-01/hostedzone/{Id}/changes" }, "input":{"shape":"ListChangeBatchesByHostedZoneRequest"}, "output":{"shape":"ListChangeBatchesByHostedZoneResponse"}, "errors":[ {"shape":"NoSuchHostedZone"}, {"shape":"InvalidInput"} ], "deprecated":true }, "ListChangeBatchesByRRSet":{ "name":"ListChangeBatchesByRRSet", "http":{ "method":"GET", "requestUri":"/2013-04-01/hostedzone/{Id}/rrsChanges" }, "input":{"shape":"ListChangeBatchesByRRSetRequest"}, "output":{"shape":"ListChangeBatchesByRRSetResponse"}, "errors":[ {"shape":"NoSuchHostedZone"}, {"shape":"InvalidInput"} ], "deprecated":true }, "ListGeoLocations":{ "name":"ListGeoLocations", "http":{ "method":"GET", "requestUri":"/2013-04-01/geolocations" }, "input":{"shape":"ListGeoLocationsRequest"}, "output":{"shape":"ListGeoLocationsResponse"}, "errors":[ {"shape":"InvalidInput"} ] }, "ListHealthChecks":{ "name":"ListHealthChecks", "http":{ "method":"GET", "requestUri":"/2013-04-01/healthcheck" }, "input":{"shape":"ListHealthChecksRequest"}, "output":{"shape":"ListHealthChecksResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"IncompatibleVersion"} ] }, "ListHostedZones":{ "name":"ListHostedZones", "http":{ "method":"GET", "requestUri":"/2013-04-01/hostedzone" }, "input":{"shape":"ListHostedZonesRequest"}, "output":{"shape":"ListHostedZonesResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"NoSuchDelegationSet"}, {"shape":"DelegationSetNotReusable"} ] }, "ListHostedZonesByName":{ "name":"ListHostedZonesByName", "http":{ "method":"GET", "requestUri":"/2013-04-01/hostedzonesbyname" }, "input":{"shape":"ListHostedZonesByNameRequest"}, "output":{"shape":"ListHostedZonesByNameResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"InvalidDomainName"} ] }, "ListResourceRecordSets":{ "name":"ListResourceRecordSets", "http":{ "method":"GET", "requestUri":"/2013-04-01/hostedzone/{Id}/rrset" }, "input":{"shape":"ListResourceRecordSetsRequest"}, "output":{"shape":"ListResourceRecordSetsResponse"}, "errors":[ {"shape":"NoSuchHostedZone"}, {"shape":"InvalidInput"} ] }, "ListReusableDelegationSets":{ "name":"ListReusableDelegationSets", "http":{ "method":"GET", "requestUri":"/2013-04-01/delegationset" }, "input":{"shape":"ListReusableDelegationSetsRequest"}, "output":{"shape":"ListReusableDelegationSetsResponse"}, "errors":[ {"shape":"InvalidInput"} ] }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ "method":"GET", "requestUri":"/2013-04-01/tags/{ResourceType}/{ResourceId}" }, "input":{"shape":"ListTagsForResourceRequest"}, "output":{"shape":"ListTagsForResourceResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"NoSuchHealthCheck"}, {"shape":"NoSuchHostedZone"}, {"shape":"PriorRequestNotComplete"}, {"shape":"ThrottlingException"} ] }, "ListTagsForResources":{ "name":"ListTagsForResources", "http":{ "method":"POST", "requestUri":"/2013-04-01/tags/{ResourceType}" }, "input":{ "shape":"ListTagsForResourcesRequest", "locationName":"ListTagsForResourcesRequest", "xmlNamespace":{"uri":"https://route53.amazonaws.com/doc/2013-04-01/"} }, "output":{"shape":"ListTagsForResourcesResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"NoSuchHealthCheck"}, {"shape":"NoSuchHostedZone"}, {"shape":"PriorRequestNotComplete"}, {"shape":"ThrottlingException"} ] }, "ListTrafficPolicies":{ "name":"ListTrafficPolicies", "http":{ "method":"GET", "requestUri":"/2013-04-01/trafficpolicies" }, "input":{"shape":"ListTrafficPoliciesRequest"}, "output":{"shape":"ListTrafficPoliciesResponse"}, "errors":[ {"shape":"InvalidInput"} ] }, "ListTrafficPolicyInstances":{ "name":"ListTrafficPolicyInstances", "http":{ "method":"GET", "requestUri":"/2013-04-01/trafficpolicyinstances" }, "input":{"shape":"ListTrafficPolicyInstancesRequest"}, "output":{"shape":"ListTrafficPolicyInstancesResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"NoSuchTrafficPolicyInstance"} ] }, "ListTrafficPolicyInstancesByHostedZone":{ "name":"ListTrafficPolicyInstancesByHostedZone", "http":{ "method":"GET", "requestUri":"/2013-04-01/trafficpolicyinstances/hostedzone" }, "input":{"shape":"ListTrafficPolicyInstancesByHostedZoneRequest"}, "output":{"shape":"ListTrafficPolicyInstancesByHostedZoneResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"NoSuchTrafficPolicyInstance"}, {"shape":"NoSuchHostedZone"} ] }, "ListTrafficPolicyInstancesByPolicy":{ "name":"ListTrafficPolicyInstancesByPolicy", "http":{ "method":"GET", "requestUri":"/2013-04-01/trafficpolicyinstances/trafficpolicy" }, "input":{"shape":"ListTrafficPolicyInstancesByPolicyRequest"}, "output":{"shape":"ListTrafficPolicyInstancesByPolicyResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"NoSuchTrafficPolicyInstance"}, {"shape":"NoSuchTrafficPolicy"} ] }, "ListTrafficPolicyVersions":{ "name":"ListTrafficPolicyVersions", "http":{ "method":"GET", "requestUri":"/2013-04-01/trafficpolicies/{Id}/versions" }, "input":{"shape":"ListTrafficPolicyVersionsRequest"}, "output":{"shape":"ListTrafficPolicyVersionsResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"NoSuchTrafficPolicy"} ] }, "TestDNSAnswer":{ "name":"TestDNSAnswer", "http":{ "method":"GET", "requestUri":"/2013-04-01/testdnsanswer" }, "input":{"shape":"TestDNSAnswerRequest"}, "output":{"shape":"TestDNSAnswerResponse"}, "errors":[ {"shape":"NoSuchHostedZone"}, {"shape":"InvalidInput"} ] }, "UpdateHealthCheck":{ "name":"UpdateHealthCheck", "http":{ "method":"POST", "requestUri":"/2013-04-01/healthcheck/{HealthCheckId}" }, "input":{ "shape":"UpdateHealthCheckRequest", "locationName":"UpdateHealthCheckRequest", "xmlNamespace":{"uri":"https://route53.amazonaws.com/doc/2013-04-01/"} }, "output":{"shape":"UpdateHealthCheckResponse"}, "errors":[ {"shape":"NoSuchHealthCheck"}, {"shape":"InvalidInput"}, {"shape":"HealthCheckVersionMismatch"} ] }, "UpdateHostedZoneComment":{ "name":"UpdateHostedZoneComment", "http":{ "method":"POST", "requestUri":"/2013-04-01/hostedzone/{Id}" }, "input":{ "shape":"UpdateHostedZoneCommentRequest", "locationName":"UpdateHostedZoneCommentRequest", "xmlNamespace":{"uri":"https://route53.amazonaws.com/doc/2013-04-01/"} }, "output":{"shape":"UpdateHostedZoneCommentResponse"}, "errors":[ {"shape":"NoSuchHostedZone"}, {"shape":"InvalidInput"} ] }, "UpdateTrafficPolicyComment":{ "name":"UpdateTrafficPolicyComment", "http":{ "method":"POST", "requestUri":"/2013-04-01/trafficpolicy/{Id}/{Version}" }, "input":{ "shape":"UpdateTrafficPolicyCommentRequest", "locationName":"UpdateTrafficPolicyCommentRequest", "xmlNamespace":{"uri":"https://route53.amazonaws.com/doc/2013-04-01/"} }, "output":{"shape":"UpdateTrafficPolicyCommentResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"NoSuchTrafficPolicy"}, {"shape":"ConcurrentModification"} ] }, "UpdateTrafficPolicyInstance":{ "name":"UpdateTrafficPolicyInstance", "http":{ "method":"POST", "requestUri":"/2013-04-01/trafficpolicyinstance/{Id}" }, "input":{ "shape":"UpdateTrafficPolicyInstanceRequest", "locationName":"UpdateTrafficPolicyInstanceRequest", "xmlNamespace":{"uri":"https://route53.amazonaws.com/doc/2013-04-01/"} }, "output":{"shape":"UpdateTrafficPolicyInstanceResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"NoSuchTrafficPolicy"}, {"shape":"NoSuchTrafficPolicyInstance"}, {"shape":"PriorRequestNotComplete"}, {"shape":"ConflictingTypes"} ] } }, "shapes":{ "AWSAccountID":{"type":"string"}, "AlarmIdentifier":{ "type":"structure", "required":[ "Region", "Name" ], "members":{ "Region":{"shape":"CloudWatchRegion"}, "Name":{"shape":"AlarmName"} } }, "AlarmName":{ "type":"string", "max":256, "min":1 }, "AliasHealthEnabled":{"type":"boolean"}, "AliasTarget":{ "type":"structure", "required":[ "HostedZoneId", "DNSName", "EvaluateTargetHealth" ], "members":{ "HostedZoneId":{"shape":"ResourceId"}, "DNSName":{"shape":"DNSName"}, "EvaluateTargetHealth":{"shape":"AliasHealthEnabled"} } }, "AssociateVPCComment":{"type":"string"}, "AssociateVPCWithHostedZoneRequest":{ "type":"structure", "required":[ "HostedZoneId", "VPC" ], "members":{ "HostedZoneId":{ "shape":"ResourceId", "location":"uri", "locationName":"Id" }, "VPC":{"shape":"VPC"}, "Comment":{"shape":"AssociateVPCComment"} } }, "AssociateVPCWithHostedZoneResponse":{ "type":"structure", "required":["ChangeInfo"], "members":{ "ChangeInfo":{"shape":"ChangeInfo"} } }, "Change":{ "type":"structure", "required":[ "Action", "ResourceRecordSet" ], "members":{ "Action":{"shape":"ChangeAction"}, "ResourceRecordSet":{"shape":"ResourceRecordSet"} } }, "ChangeAction":{ "type":"string", "enum":[ "CREATE", "DELETE", "UPSERT" ] }, "ChangeBatch":{ "type":"structure", "required":["Changes"], "members":{ "Comment":{"shape":"ResourceDescription"}, "Changes":{"shape":"Changes"} } }, "ChangeBatchRecord":{ "type":"structure", "required":[ "Id", "Status" ], "members":{ "Id":{"shape":"ResourceId"}, "SubmittedAt":{"shape":"TimeStamp"}, "Status":{"shape":"ChangeStatus"}, "Comment":{"shape":"ResourceDescription"}, "Submitter":{"shape":"AWSAccountID"}, "Changes":{"shape":"Changes"} }, "deprecated":true }, "ChangeBatchRecords":{ "type":"list", "member":{ "shape":"ChangeBatchRecord", "locationName":"ChangeBatchRecord" }, "deprecated":true, "min":1 }, "ChangeInfo":{ "type":"structure", "required":[ "Id", "Status", "SubmittedAt" ], "members":{ "Id":{"shape":"ResourceId"}, "Status":{"shape":"ChangeStatus"}, "SubmittedAt":{"shape":"TimeStamp"}, "Comment":{"shape":"ResourceDescription"} } }, "ChangeResourceRecordSetsRequest":{ "type":"structure", "required":[ "HostedZoneId", "ChangeBatch" ], "members":{ "HostedZoneId":{ "shape":"ResourceId", "location":"uri", "locationName":"Id" }, "ChangeBatch":{"shape":"ChangeBatch"} } }, "ChangeResourceRecordSetsResponse":{ "type":"structure", "required":["ChangeInfo"], "members":{ "ChangeInfo":{"shape":"ChangeInfo"} } }, "ChangeStatus":{ "type":"string", "enum":[ "PENDING", "INSYNC" ] }, "ChangeTagsForResourceRequest":{ "type":"structure", "required":[ "ResourceType", "ResourceId" ], "members":{ "ResourceType":{ "shape":"TagResourceType", "location":"uri", "locationName":"ResourceType" }, "ResourceId":{ "shape":"TagResourceId", "location":"uri", "locationName":"ResourceId" }, "AddTags":{"shape":"TagList"}, "RemoveTagKeys":{"shape":"TagKeyList"} } }, "ChangeTagsForResourceResponse":{ "type":"structure", "members":{ } }, "Changes":{ "type":"list", "member":{ "shape":"Change", "locationName":"Change" }, "min":1 }, "CheckerIpRanges":{ "type":"list", "member":{"shape":"IPAddressCidr"} }, "ChildHealthCheckList":{ "type":"list", "member":{ "shape":"HealthCheckId", "locationName":"ChildHealthCheck" }, "max":256 }, "CloudWatchAlarmConfiguration":{ "type":"structure", "required":[ "EvaluationPeriods", "Threshold", "ComparisonOperator", "Period", "MetricName", "Namespace", "Statistic" ], "members":{ "EvaluationPeriods":{"shape":"EvaluationPeriods"}, "Threshold":{"shape":"Threshold"}, "ComparisonOperator":{"shape":"ComparisonOperator"}, "Period":{"shape":"Period"}, "MetricName":{"shape":"MetricName"}, "Namespace":{"shape":"Namespace"}, "Statistic":{"shape":"Statistic"}, "Dimensions":{"shape":"DimensionList"} } }, "CloudWatchRegion":{ "type":"string", "enum":[ "us-east-1", "us-west-1", "us-west-2", "eu-central-1", "eu-west-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2", "sa-east-1" ], "max":64, "min":1 }, "ComparisonOperator":{ "type":"string", "enum":[ "GreaterThanOrEqualToThreshold", "GreaterThanThreshold", "LessThanThreshold", "LessThanOrEqualToThreshold" ] }, "ConcurrentModification":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "ConflictingDomainExists":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ConflictingTypes":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "CreateHealthCheckRequest":{ "type":"structure", "required":[ "CallerReference", "HealthCheckConfig" ], "members":{ "CallerReference":{"shape":"HealthCheckNonce"}, "HealthCheckConfig":{"shape":"HealthCheckConfig"} } }, "CreateHealthCheckResponse":{ "type":"structure", "required":[ "HealthCheck", "Location" ], "members":{ "HealthCheck":{"shape":"HealthCheck"}, "Location":{ "shape":"ResourceURI", "location":"header", "locationName":"Location" } } }, "CreateHostedZoneRequest":{ "type":"structure", "required":[ "Name", "CallerReference" ], "members":{ "Name":{"shape":"DNSName"}, "VPC":{"shape":"VPC"}, "CallerReference":{"shape":"Nonce"}, "HostedZoneConfig":{"shape":"HostedZoneConfig"}, "DelegationSetId":{"shape":"ResourceId"} } }, "CreateHostedZoneResponse":{ "type":"structure", "required":[ "HostedZone", "ChangeInfo", "DelegationSet", "Location" ], "members":{ "HostedZone":{"shape":"HostedZone"}, "ChangeInfo":{"shape":"ChangeInfo"}, "DelegationSet":{"shape":"DelegationSet"}, "VPC":{"shape":"VPC"}, "Location":{ "shape":"ResourceURI", "location":"header", "locationName":"Location" } } }, "CreateReusableDelegationSetRequest":{ "type":"structure", "required":["CallerReference"], "members":{ "CallerReference":{"shape":"Nonce"}, "HostedZoneId":{"shape":"ResourceId"} } }, "CreateReusableDelegationSetResponse":{ "type":"structure", "required":[ "DelegationSet", "Location" ], "members":{ "DelegationSet":{"shape":"DelegationSet"}, "Location":{ "shape":"ResourceURI", "location":"header", "locationName":"Location" } } }, "CreateTrafficPolicyInstanceRequest":{ "type":"structure", "required":[ "HostedZoneId", "Name", "TTL", "TrafficPolicyId", "TrafficPolicyVersion" ], "members":{ "HostedZoneId":{"shape":"ResourceId"}, "Name":{"shape":"DNSName"}, "TTL":{"shape":"TTL"}, "TrafficPolicyId":{"shape":"TrafficPolicyId"}, "TrafficPolicyVersion":{"shape":"TrafficPolicyVersion"} } }, "CreateTrafficPolicyInstanceResponse":{ "type":"structure", "required":[ "TrafficPolicyInstance", "Location" ], "members":{ "TrafficPolicyInstance":{"shape":"TrafficPolicyInstance"}, "Location":{ "shape":"ResourceURI", "location":"header", "locationName":"Location" } } }, "CreateTrafficPolicyRequest":{ "type":"structure", "required":[ "Name", "Document" ], "members":{ "Name":{"shape":"TrafficPolicyName"}, "Document":{"shape":"TrafficPolicyDocument"}, "Comment":{"shape":"TrafficPolicyComment"} } }, "CreateTrafficPolicyResponse":{ "type":"structure", "required":[ "TrafficPolicy", "Location" ], "members":{ "TrafficPolicy":{"shape":"TrafficPolicy"}, "Location":{ "shape":"ResourceURI", "location":"header", "locationName":"Location" } } }, "CreateTrafficPolicyVersionRequest":{ "type":"structure", "required":[ "Id", "Document" ], "members":{ "Id":{ "shape":"TrafficPolicyId", "location":"uri", "locationName":"Id" }, "Document":{"shape":"TrafficPolicyDocument"}, "Comment":{"shape":"TrafficPolicyComment"} } }, "CreateTrafficPolicyVersionResponse":{ "type":"structure", "required":[ "TrafficPolicy", "Location" ], "members":{ "TrafficPolicy":{"shape":"TrafficPolicy"}, "Location":{ "shape":"ResourceURI", "location":"header", "locationName":"Location" } } }, "DNSName":{ "type":"string", "max":1024 }, "DNSRCode":{"type":"string"}, "Date":{ "type":"string", "deprecated":true, "max":256 }, "DelegationSet":{ "type":"structure", "required":["NameServers"], "members":{ "Id":{"shape":"ResourceId"}, "CallerReference":{"shape":"Nonce"}, "NameServers":{"shape":"DelegationSetNameServers"} } }, "DelegationSetAlreadyCreated":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "DelegationSetAlreadyReusable":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "DelegationSetInUse":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "DelegationSetNameServers":{ "type":"list", "member":{ "shape":"DNSName", "locationName":"NameServer" }, "min":1 }, "DelegationSetNotAvailable":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "DelegationSetNotReusable":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "DelegationSets":{ "type":"list", "member":{ "shape":"DelegationSet", "locationName":"DelegationSet" } }, "DeleteHealthCheckRequest":{ "type":"structure", "required":["HealthCheckId"], "members":{ "HealthCheckId":{ "shape":"HealthCheckId", "location":"uri", "locationName":"HealthCheckId" } } }, "DeleteHealthCheckResponse":{ "type":"structure", "members":{ } }, "DeleteHostedZoneRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"ResourceId", "location":"uri", "locationName":"Id" } } }, "DeleteHostedZoneResponse":{ "type":"structure", "required":["ChangeInfo"], "members":{ "ChangeInfo":{"shape":"ChangeInfo"} } }, "DeleteReusableDelegationSetRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"ResourceId", "location":"uri", "locationName":"Id" } } }, "DeleteReusableDelegationSetResponse":{ "type":"structure", "members":{ } }, "DeleteTrafficPolicyInstanceRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"TrafficPolicyInstanceId", "location":"uri", "locationName":"Id" } } }, "DeleteTrafficPolicyInstanceResponse":{ "type":"structure", "members":{ } }, "DeleteTrafficPolicyRequest":{ "type":"structure", "required":[ "Id", "Version" ], "members":{ "Id":{ "shape":"TrafficPolicyId", "location":"uri", "locationName":"Id" }, "Version":{ "shape":"TrafficPolicyVersion", "location":"uri", "locationName":"Version" } } }, "DeleteTrafficPolicyResponse":{ "type":"structure", "members":{ } }, "Dimension":{ "type":"structure", "required":[ "Name", "Value" ], "members":{ "Name":{"shape":"DimensionField"}, "Value":{"shape":"DimensionField"} } }, "DimensionField":{ "type":"string", "max":255, "min":1 }, "DimensionList":{ "type":"list", "member":{ "shape":"Dimension", "locationName":"Dimension" }, "max":10 }, "DisassociateVPCComment":{"type":"string"}, "DisassociateVPCFromHostedZoneRequest":{ "type":"structure", "required":[ "HostedZoneId", "VPC" ], "members":{ "HostedZoneId":{ "shape":"ResourceId", "location":"uri", "locationName":"Id" }, "VPC":{"shape":"VPC"}, "Comment":{"shape":"DisassociateVPCComment"} } }, "DisassociateVPCFromHostedZoneResponse":{ "type":"structure", "required":["ChangeInfo"], "members":{ "ChangeInfo":{"shape":"ChangeInfo"} } }, "EnableSNI":{"type":"boolean"}, "ErrorMessage":{"type":"string"}, "ErrorMessages":{ "type":"list", "member":{ "shape":"ErrorMessage", "locationName":"Message" } }, "EvaluationPeriods":{ "type":"integer", "min":1 }, "FailureThreshold":{ "type":"integer", "max":10, "min":1 }, "FullyQualifiedDomainName":{ "type":"string", "max":255 }, "GeoLocation":{ "type":"structure", "members":{ "ContinentCode":{"shape":"GeoLocationContinentCode"}, "CountryCode":{"shape":"GeoLocationCountryCode"}, "SubdivisionCode":{"shape":"GeoLocationSubdivisionCode"} } }, "GeoLocationContinentCode":{ "type":"string", "max":2, "min":2 }, "GeoLocationContinentName":{ "type":"string", "max":32, "min":1 }, "GeoLocationCountryCode":{ "type":"string", "max":2, "min":1 }, "GeoLocationCountryName":{ "type":"string", "max":64, "min":1 }, "GeoLocationDetails":{ "type":"structure", "members":{ "ContinentCode":{"shape":"GeoLocationContinentCode"}, "ContinentName":{"shape":"GeoLocationContinentName"}, "CountryCode":{"shape":"GeoLocationCountryCode"}, "CountryName":{"shape":"GeoLocationCountryName"}, "SubdivisionCode":{"shape":"GeoLocationSubdivisionCode"}, "SubdivisionName":{"shape":"GeoLocationSubdivisionName"} } }, "GeoLocationDetailsList":{ "type":"list", "member":{ "shape":"GeoLocationDetails", "locationName":"GeoLocationDetails" } }, "GeoLocationSubdivisionCode":{ "type":"string", "max":3, "min":1 }, "GeoLocationSubdivisionName":{ "type":"string", "max":64, "min":1 }, "GetChangeDetailsRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"ResourceId", "location":"uri", "locationName":"Id" } }, "deprecated":true }, "GetChangeDetailsResponse":{ "type":"structure", "required":["ChangeBatchRecord"], "members":{ "ChangeBatchRecord":{"shape":"ChangeBatchRecord"} }, "deprecated":true }, "GetChangeRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"ResourceId", "location":"uri", "locationName":"Id" } } }, "GetChangeResponse":{ "type":"structure", "required":["ChangeInfo"], "members":{ "ChangeInfo":{"shape":"ChangeInfo"} } }, "GetCheckerIpRangesRequest":{ "type":"structure", "members":{ } }, "GetCheckerIpRangesResponse":{ "type":"structure", "required":["CheckerIpRanges"], "members":{ "CheckerIpRanges":{"shape":"CheckerIpRanges"} } }, "GetGeoLocationRequest":{ "type":"structure", "members":{ "ContinentCode":{ "shape":"GeoLocationContinentCode", "location":"querystring", "locationName":"continentcode" }, "CountryCode":{ "shape":"GeoLocationCountryCode", "location":"querystring", "locationName":"countrycode" }, "SubdivisionCode":{ "shape":"GeoLocationSubdivisionCode", "location":"querystring", "locationName":"subdivisioncode" } } }, "GetGeoLocationResponse":{ "type":"structure", "required":["GeoLocationDetails"], "members":{ "GeoLocationDetails":{"shape":"GeoLocationDetails"} } }, "GetHealthCheckCountRequest":{ "type":"structure", "members":{ } }, "GetHealthCheckCountResponse":{ "type":"structure", "required":["HealthCheckCount"], "members":{ "HealthCheckCount":{"shape":"HealthCheckCount"} } }, "GetHealthCheckLastFailureReasonRequest":{ "type":"structure", "required":["HealthCheckId"], "members":{ "HealthCheckId":{ "shape":"HealthCheckId", "location":"uri", "locationName":"HealthCheckId" } } }, "GetHealthCheckLastFailureReasonResponse":{ "type":"structure", "required":["HealthCheckObservations"], "members":{ "HealthCheckObservations":{"shape":"HealthCheckObservations"} } }, "GetHealthCheckRequest":{ "type":"structure", "required":["HealthCheckId"], "members":{ "HealthCheckId":{ "shape":"HealthCheckId", "location":"uri", "locationName":"HealthCheckId" } } }, "GetHealthCheckResponse":{ "type":"structure", "required":["HealthCheck"], "members":{ "HealthCheck":{"shape":"HealthCheck"} } }, "GetHealthCheckStatusRequest":{ "type":"structure", "required":["HealthCheckId"], "members":{ "HealthCheckId":{ "shape":"HealthCheckId", "location":"uri", "locationName":"HealthCheckId" } } }, "GetHealthCheckStatusResponse":{ "type":"structure", "required":["HealthCheckObservations"], "members":{ "HealthCheckObservations":{"shape":"HealthCheckObservations"} } }, "GetHostedZoneCountRequest":{ "type":"structure", "members":{ } }, "GetHostedZoneCountResponse":{ "type":"structure", "required":["HostedZoneCount"], "members":{ "HostedZoneCount":{"shape":"HostedZoneCount"} } }, "GetHostedZoneRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"ResourceId", "location":"uri", "locationName":"Id" } } }, "GetHostedZoneResponse":{ "type":"structure", "required":["HostedZone"], "members":{ "HostedZone":{"shape":"HostedZone"}, "DelegationSet":{"shape":"DelegationSet"}, "VPCs":{"shape":"VPCs"} } }, "GetReusableDelegationSetRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"ResourceId", "location":"uri", "locationName":"Id" } } }, "GetReusableDelegationSetResponse":{ "type":"structure", "required":["DelegationSet"], "members":{ "DelegationSet":{"shape":"DelegationSet"} } }, "GetTrafficPolicyInstanceCountRequest":{ "type":"structure", "members":{ } }, "GetTrafficPolicyInstanceCountResponse":{ "type":"structure", "required":["TrafficPolicyInstanceCount"], "members":{ "TrafficPolicyInstanceCount":{"shape":"TrafficPolicyInstanceCount"} } }, "GetTrafficPolicyInstanceRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"TrafficPolicyInstanceId", "location":"uri", "locationName":"Id" } } }, "GetTrafficPolicyInstanceResponse":{ "type":"structure", "required":["TrafficPolicyInstance"], "members":{ "TrafficPolicyInstance":{"shape":"TrafficPolicyInstance"} } }, "GetTrafficPolicyRequest":{ "type":"structure", "required":[ "Id", "Version" ], "members":{ "Id":{ "shape":"TrafficPolicyId", "location":"uri", "locationName":"Id" }, "Version":{ "shape":"TrafficPolicyVersion", "location":"uri", "locationName":"Version" } } }, "GetTrafficPolicyResponse":{ "type":"structure", "required":["TrafficPolicy"], "members":{ "TrafficPolicy":{"shape":"TrafficPolicy"} } }, "HealthCheck":{ "type":"structure", "required":[ "Id", "CallerReference", "HealthCheckConfig", "HealthCheckVersion" ], "members":{ "Id":{"shape":"HealthCheckId"}, "CallerReference":{"shape":"HealthCheckNonce"}, "HealthCheckConfig":{"shape":"HealthCheckConfig"}, "HealthCheckVersion":{"shape":"HealthCheckVersion"}, "CloudWatchAlarmConfiguration":{"shape":"CloudWatchAlarmConfiguration"} } }, "HealthCheckAlreadyExists":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":409}, "exception":true }, "HealthCheckConfig":{ "type":"structure", "required":["Type"], "members":{ "IPAddress":{"shape":"IPAddress"}, "Port":{"shape":"Port"}, "Type":{"shape":"HealthCheckType"}, "ResourcePath":{"shape":"ResourcePath"}, "FullyQualifiedDomainName":{"shape":"FullyQualifiedDomainName"}, "SearchString":{"shape":"SearchString"}, "RequestInterval":{"shape":"RequestInterval"}, "FailureThreshold":{"shape":"FailureThreshold"}, "MeasureLatency":{"shape":"MeasureLatency"}, "Inverted":{"shape":"Inverted"}, "HealthThreshold":{"shape":"HealthThreshold"}, "ChildHealthChecks":{"shape":"ChildHealthCheckList"}, "EnableSNI":{"shape":"EnableSNI"}, "Regions":{"shape":"HealthCheckRegionList"}, "AlarmIdentifier":{"shape":"AlarmIdentifier"}, "InsufficientDataHealthStatus":{"shape":"InsufficientDataHealthStatus"} } }, "HealthCheckCount":{"type":"long"}, "HealthCheckId":{ "type":"string", "max":64 }, "HealthCheckInUse":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "HealthCheckNonce":{ "type":"string", "max":64, "min":1 }, "HealthCheckObservation":{ "type":"structure", "members":{ "Region":{"shape":"HealthCheckRegion"}, "IPAddress":{"shape":"IPAddress"}, "StatusReport":{"shape":"StatusReport"} } }, "HealthCheckObservations":{ "type":"list", "member":{ "shape":"HealthCheckObservation", "locationName":"HealthCheckObservation" } }, "HealthCheckRegion":{ "type":"string", "enum":[ "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "sa-east-1" ], "max":64, "min":1 }, "HealthCheckRegionList":{ "type":"list", "member":{ "shape":"HealthCheckRegion", "locationName":"Region" }, "max":64, "min":1 }, "HealthCheckType":{ "type":"string", "enum":[ "HTTP", "HTTPS", "HTTP_STR_MATCH", "HTTPS_STR_MATCH", "TCP", "CALCULATED", "CLOUDWATCH_METRIC" ] }, "HealthCheckVersion":{ "type":"long", "min":1 }, "HealthCheckVersionMismatch":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":409}, "exception":true }, "HealthChecks":{ "type":"list", "member":{ "shape":"HealthCheck", "locationName":"HealthCheck" } }, "HealthThreshold":{ "type":"integer", "max":256, "min":0 }, "HostedZone":{ "type":"structure", "required":[ "Id", "Name", "CallerReference" ], "members":{ "Id":{"shape":"ResourceId"}, "Name":{"shape":"DNSName"}, "CallerReference":{"shape":"Nonce"}, "Config":{"shape":"HostedZoneConfig"}, "ResourceRecordSetCount":{"shape":"HostedZoneRRSetCount"} } }, "HostedZoneAlreadyExists":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":409}, "exception":true }, "HostedZoneConfig":{ "type":"structure", "members":{ "Comment":{"shape":"ResourceDescription"}, "PrivateZone":{"shape":"IsPrivateZone"} } }, "HostedZoneCount":{"type":"long"}, "HostedZoneNotEmpty":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "HostedZoneNotFound":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "HostedZoneRRSetCount":{"type":"long"}, "HostedZones":{ "type":"list", "member":{ "shape":"HostedZone", "locationName":"HostedZone" } }, "IPAddress":{ "type":"string", "max":15, "pattern":"^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$" }, "IPAddressCidr":{"type":"string"}, "IncompatibleVersion":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "InsufficientDataHealthStatus":{ "type":"string", "enum":[ "Healthy", "Unhealthy", "LastKnownStatus" ] }, "InvalidArgument":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "InvalidChangeBatch":{ "type":"structure", "members":{ "messages":{"shape":"ErrorMessages"} }, "exception":true }, "InvalidDomainName":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidInput":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidTrafficPolicyDocument":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "InvalidVPCId":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "Inverted":{"type":"boolean"}, "IsPrivateZone":{"type":"boolean"}, "LastVPCAssociation":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "LimitsExceeded":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ListChangeBatchesByHostedZoneRequest":{ "type":"structure", "required":[ "HostedZoneId", "StartDate", "EndDate" ], "members":{ "HostedZoneId":{ "shape":"ResourceId", "location":"uri", "locationName":"Id" }, "StartDate":{ "shape":"Date", "location":"querystring", "locationName":"startDate" }, "EndDate":{ "shape":"Date", "location":"querystring", "locationName":"endDate" }, "MaxItems":{ "shape":"PageMaxItems", "location":"querystring", "locationName":"maxItems" }, "Marker":{ "shape":"PageMarker", "location":"querystring", "locationName":"marker" } }, "deprecated":true }, "ListChangeBatchesByHostedZoneResponse":{ "type":"structure", "required":[ "MaxItems", "Marker", "ChangeBatchRecords" ], "members":{ "MaxItems":{"shape":"PageMaxItems"}, "Marker":{"shape":"PageMarker"}, "IsTruncated":{"shape":"PageTruncated"}, "ChangeBatchRecords":{"shape":"ChangeBatchRecords"}, "NextMarker":{"shape":"PageMarker"} }, "deprecated":true }, "ListChangeBatchesByRRSetRequest":{ "type":"structure", "required":[ "HostedZoneId", "Name", "Type", "StartDate", "EndDate" ], "members":{ "HostedZoneId":{ "shape":"ResourceId", "location":"uri", "locationName":"Id" }, "Name":{ "shape":"DNSName", "location":"querystring", "locationName":"rrSet_name" }, "Type":{ "shape":"RRType", "location":"querystring", "locationName":"type" }, "SetIdentifier":{ "shape":"ResourceRecordSetIdentifier", "location":"querystring", "locationName":"identifier" }, "StartDate":{ "shape":"Date", "location":"querystring", "locationName":"startDate" }, "EndDate":{ "shape":"Date", "location":"querystring", "locationName":"endDate" }, "MaxItems":{ "shape":"PageMaxItems", "location":"querystring", "locationName":"maxItems" }, "Marker":{ "shape":"PageMarker", "location":"querystring", "locationName":"marker" } }, "deprecated":true }, "ListChangeBatchesByRRSetResponse":{ "type":"structure", "required":[ "MaxItems", "Marker", "ChangeBatchRecords" ], "members":{ "MaxItems":{"shape":"PageMaxItems"}, "Marker":{"shape":"PageMarker"}, "IsTruncated":{"shape":"PageTruncated"}, "ChangeBatchRecords":{"shape":"ChangeBatchRecords"}, "NextMarker":{"shape":"PageMarker"} }, "deprecated":true }, "ListGeoLocationsRequest":{ "type":"structure", "members":{ "StartContinentCode":{ "shape":"GeoLocationContinentCode", "location":"querystring", "locationName":"startcontinentcode" }, "StartCountryCode":{ "shape":"GeoLocationCountryCode", "location":"querystring", "locationName":"startcountrycode" }, "StartSubdivisionCode":{ "shape":"GeoLocationSubdivisionCode", "location":"querystring", "locationName":"startsubdivisioncode" }, "MaxItems":{ "shape":"PageMaxItems", "location":"querystring", "locationName":"maxitems" } } }, "ListGeoLocationsResponse":{ "type":"structure", "required":[ "GeoLocationDetailsList", "IsTruncated", "MaxItems" ], "members":{ "GeoLocationDetailsList":{"shape":"GeoLocationDetailsList"}, "IsTruncated":{"shape":"PageTruncated"}, "NextContinentCode":{"shape":"GeoLocationContinentCode"}, "NextCountryCode":{"shape":"GeoLocationCountryCode"}, "NextSubdivisionCode":{"shape":"GeoLocationSubdivisionCode"}, "MaxItems":{"shape":"PageMaxItems"} } }, "ListHealthChecksRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"PageMarker", "location":"querystring", "locationName":"marker" }, "MaxItems":{ "shape":"PageMaxItems", "location":"querystring", "locationName":"maxitems" } } }, "ListHealthChecksResponse":{ "type":"structure", "required":[ "HealthChecks", "Marker", "IsTruncated", "MaxItems" ], "members":{ "HealthChecks":{"shape":"HealthChecks"}, "Marker":{"shape":"PageMarker"}, "IsTruncated":{"shape":"PageTruncated"}, "NextMarker":{"shape":"PageMarker"}, "MaxItems":{"shape":"PageMaxItems"} } }, "ListHostedZonesByNameRequest":{ "type":"structure", "members":{ "DNSName":{ "shape":"DNSName", "location":"querystring", "locationName":"dnsname" }, "HostedZoneId":{ "shape":"ResourceId", "location":"querystring", "locationName":"hostedzoneid" }, "MaxItems":{ "shape":"PageMaxItems", "location":"querystring", "locationName":"maxitems" } } }, "ListHostedZonesByNameResponse":{ "type":"structure", "required":[ "HostedZones", "IsTruncated", "MaxItems" ], "members":{ "HostedZones":{"shape":"HostedZones"}, "DNSName":{"shape":"DNSName"}, "HostedZoneId":{"shape":"ResourceId"}, "IsTruncated":{"shape":"PageTruncated"}, "NextDNSName":{"shape":"DNSName"}, "NextHostedZoneId":{"shape":"ResourceId"}, "MaxItems":{"shape":"PageMaxItems"} } }, "ListHostedZonesRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"PageMarker", "location":"querystring", "locationName":"marker" }, "MaxItems":{ "shape":"PageMaxItems", "location":"querystring", "locationName":"maxitems" }, "DelegationSetId":{ "shape":"ResourceId", "location":"querystring", "locationName":"delegationsetid" } } }, "ListHostedZonesResponse":{ "type":"structure", "required":[ "HostedZones", "Marker", "IsTruncated", "MaxItems" ], "members":{ "HostedZones":{"shape":"HostedZones"}, "Marker":{"shape":"PageMarker"}, "IsTruncated":{"shape":"PageTruncated"}, "NextMarker":{"shape":"PageMarker"}, "MaxItems":{"shape":"PageMaxItems"} } }, "ListResourceRecordSetsRequest":{ "type":"structure", "required":["HostedZoneId"], "members":{ "HostedZoneId":{ "shape":"ResourceId", "location":"uri", "locationName":"Id" }, "StartRecordName":{ "shape":"DNSName", "location":"querystring", "locationName":"name" }, "StartRecordType":{ "shape":"RRType", "location":"querystring", "locationName":"type" }, "StartRecordIdentifier":{ "shape":"ResourceRecordSetIdentifier", "location":"querystring", "locationName":"identifier" }, "MaxItems":{ "shape":"PageMaxItems", "location":"querystring", "locationName":"maxitems" } } }, "ListResourceRecordSetsResponse":{ "type":"structure", "required":[ "ResourceRecordSets", "IsTruncated", "MaxItems" ], "members":{ "ResourceRecordSets":{"shape":"ResourceRecordSets"}, "IsTruncated":{"shape":"PageTruncated"}, "NextRecordName":{"shape":"DNSName"}, "NextRecordType":{"shape":"RRType"}, "NextRecordIdentifier":{"shape":"ResourceRecordSetIdentifier"}, "MaxItems":{"shape":"PageMaxItems"} } }, "ListReusableDelegationSetsRequest":{ "type":"structure", "members":{ "Marker":{ "shape":"PageMarker", "location":"querystring", "locationName":"marker" }, "MaxItems":{ "shape":"PageMaxItems", "location":"querystring", "locationName":"maxitems" } } }, "ListReusableDelegationSetsResponse":{ "type":"structure", "required":[ "DelegationSets", "Marker", "IsTruncated", "MaxItems" ], "members":{ "DelegationSets":{"shape":"DelegationSets"}, "Marker":{"shape":"PageMarker"}, "IsTruncated":{"shape":"PageTruncated"}, "NextMarker":{"shape":"PageMarker"}, "MaxItems":{"shape":"PageMaxItems"} } }, "ListTagsForResourceRequest":{ "type":"structure", "required":[ "ResourceType", "ResourceId" ], "members":{ "ResourceType":{ "shape":"TagResourceType", "location":"uri", "locationName":"ResourceType" }, "ResourceId":{ "shape":"TagResourceId", "location":"uri", "locationName":"ResourceId" } } }, "ListTagsForResourceResponse":{ "type":"structure", "required":["ResourceTagSet"], "members":{ "ResourceTagSet":{"shape":"ResourceTagSet"} } }, "ListTagsForResourcesRequest":{ "type":"structure", "required":[ "ResourceType", "ResourceIds" ], "members":{ "ResourceType":{ "shape":"TagResourceType", "location":"uri", "locationName":"ResourceType" }, "ResourceIds":{"shape":"TagResourceIdList"} } }, "ListTagsForResourcesResponse":{ "type":"structure", "required":["ResourceTagSets"], "members":{ "ResourceTagSets":{"shape":"ResourceTagSetList"} } }, "ListTrafficPoliciesRequest":{ "type":"structure", "members":{ "TrafficPolicyIdMarker":{ "shape":"TrafficPolicyId", "location":"querystring", "locationName":"trafficpolicyid" }, "MaxItems":{ "shape":"PageMaxItems", "location":"querystring", "locationName":"maxitems" } } }, "ListTrafficPoliciesResponse":{ "type":"structure", "required":[ "TrafficPolicySummaries", "IsTruncated", "TrafficPolicyIdMarker", "MaxItems" ], "members":{ "TrafficPolicySummaries":{"shape":"TrafficPolicySummaries"}, "IsTruncated":{"shape":"PageTruncated"}, "TrafficPolicyIdMarker":{"shape":"TrafficPolicyId"}, "MaxItems":{"shape":"PageMaxItems"} } }, "ListTrafficPolicyInstancesByHostedZoneRequest":{ "type":"structure", "required":["HostedZoneId"], "members":{ "HostedZoneId":{ "shape":"ResourceId", "location":"querystring", "locationName":"id" }, "TrafficPolicyInstanceNameMarker":{ "shape":"DNSName", "location":"querystring", "locationName":"trafficpolicyinstancename" }, "TrafficPolicyInstanceTypeMarker":{ "shape":"RRType", "location":"querystring", "locationName":"trafficpolicyinstancetype" }, "MaxItems":{ "shape":"PageMaxItems", "location":"querystring", "locationName":"maxitems" } } }, "ListTrafficPolicyInstancesByHostedZoneResponse":{ "type":"structure", "required":[ "TrafficPolicyInstances", "IsTruncated", "MaxItems" ], "members":{ "TrafficPolicyInstances":{"shape":"TrafficPolicyInstances"}, "TrafficPolicyInstanceNameMarker":{"shape":"DNSName"}, "TrafficPolicyInstanceTypeMarker":{"shape":"RRType"}, "IsTruncated":{"shape":"PageTruncated"}, "MaxItems":{"shape":"PageMaxItems"} } }, "ListTrafficPolicyInstancesByPolicyRequest":{ "type":"structure", "required":[ "TrafficPolicyId", "TrafficPolicyVersion" ], "members":{ "TrafficPolicyId":{ "shape":"TrafficPolicyId", "location":"querystring", "locationName":"id" }, "TrafficPolicyVersion":{ "shape":"TrafficPolicyVersion", "location":"querystring", "locationName":"version" }, "HostedZoneIdMarker":{ "shape":"ResourceId", "location":"querystring", "locationName":"hostedzoneid" }, "TrafficPolicyInstanceNameMarker":{ "shape":"DNSName", "location":"querystring", "locationName":"trafficpolicyinstancename" }, "TrafficPolicyInstanceTypeMarker":{ "shape":"RRType", "location":"querystring", "locationName":"trafficpolicyinstancetype" }, "MaxItems":{ "shape":"PageMaxItems", "location":"querystring", "locationName":"maxitems" } } }, "ListTrafficPolicyInstancesByPolicyResponse":{ "type":"structure", "required":[ "TrafficPolicyInstances", "IsTruncated", "MaxItems" ], "members":{ "TrafficPolicyInstances":{"shape":"TrafficPolicyInstances"}, "HostedZoneIdMarker":{"shape":"ResourceId"}, "TrafficPolicyInstanceNameMarker":{"shape":"DNSName"}, "TrafficPolicyInstanceTypeMarker":{"shape":"RRType"}, "IsTruncated":{"shape":"PageTruncated"}, "MaxItems":{"shape":"PageMaxItems"} } }, "ListTrafficPolicyInstancesRequest":{ "type":"structure", "members":{ "HostedZoneIdMarker":{ "shape":"ResourceId", "location":"querystring", "locationName":"hostedzoneid" }, "TrafficPolicyInstanceNameMarker":{ "shape":"DNSName", "location":"querystring", "locationName":"trafficpolicyinstancename" }, "TrafficPolicyInstanceTypeMarker":{ "shape":"RRType", "location":"querystring", "locationName":"trafficpolicyinstancetype" }, "MaxItems":{ "shape":"PageMaxItems", "location":"querystring", "locationName":"maxitems" } } }, "ListTrafficPolicyInstancesResponse":{ "type":"structure", "required":[ "TrafficPolicyInstances", "IsTruncated", "MaxItems" ], "members":{ "TrafficPolicyInstances":{"shape":"TrafficPolicyInstances"}, "HostedZoneIdMarker":{"shape":"ResourceId"}, "TrafficPolicyInstanceNameMarker":{"shape":"DNSName"}, "TrafficPolicyInstanceTypeMarker":{"shape":"RRType"}, "IsTruncated":{"shape":"PageTruncated"}, "MaxItems":{"shape":"PageMaxItems"} } }, "ListTrafficPolicyVersionsRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"TrafficPolicyId", "location":"uri", "locationName":"Id" }, "TrafficPolicyVersionMarker":{ "shape":"TrafficPolicyVersionMarker", "location":"querystring", "locationName":"trafficpolicyversion" }, "MaxItems":{ "shape":"PageMaxItems", "location":"querystring", "locationName":"maxitems" } } }, "ListTrafficPolicyVersionsResponse":{ "type":"structure", "required":[ "TrafficPolicies", "IsTruncated", "TrafficPolicyVersionMarker", "MaxItems" ], "members":{ "TrafficPolicies":{"shape":"TrafficPolicies"}, "IsTruncated":{"shape":"PageTruncated"}, "TrafficPolicyVersionMarker":{"shape":"TrafficPolicyVersionMarker"}, "MaxItems":{"shape":"PageMaxItems"} } }, "MeasureLatency":{"type":"boolean"}, "Message":{ "type":"string", "max":1024 }, "MetricName":{ "type":"string", "max":255, "min":1 }, "Nameserver":{ "type":"string", "max":255, "min":0 }, "Namespace":{ "type":"string", "max":255, "min":1 }, "NoSuchChange":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchDelegationSet":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "NoSuchGeoLocation":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchHealthCheck":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchHostedZone":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchTrafficPolicy":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":404}, "exception":true }, "NoSuchTrafficPolicyInstance":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":404}, "exception":true }, "Nonce":{ "type":"string", "max":128, "min":1 }, "PageMarker":{ "type":"string", "max":64 }, "PageMaxItems":{"type":"string"}, "PageTruncated":{"type":"boolean"}, "Period":{ "type":"integer", "min":60 }, "Port":{ "type":"integer", "max":65535, "min":1 }, "PriorRequestNotComplete":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "PublicZoneVPCAssociation":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "RData":{ "type":"string", "max":4000 }, "RRType":{ "type":"string", "enum":[ "SOA", "A", "TXT", "NS", "CNAME", "MX", "NAPTR", "PTR", "SRV", "SPF", "AAAA" ] }, "RecordData":{ "type":"list", "member":{ "shape":"RecordDataEntry", "locationName":"RecordDataEntry" } }, "RecordDataEntry":{ "type":"string", "max":512, "min":0 }, "RequestInterval":{ "type":"integer", "max":30, "min":10 }, "ResourceDescription":{ "type":"string", "max":256 }, "ResourceId":{ "type":"string", "max":32 }, "ResourcePath":{ "type":"string", "max":255 }, "ResourceRecord":{ "type":"structure", "required":["Value"], "members":{ "Value":{"shape":"RData"} } }, "ResourceRecordSet":{ "type":"structure", "required":[ "Name", "Type" ], "members":{ "Name":{"shape":"DNSName"}, "Type":{"shape":"RRType"}, "SetIdentifier":{"shape":"ResourceRecordSetIdentifier"}, "Weight":{"shape":"ResourceRecordSetWeight"}, "Region":{"shape":"ResourceRecordSetRegion"}, "GeoLocation":{"shape":"GeoLocation"}, "Failover":{"shape":"ResourceRecordSetFailover"}, "TTL":{"shape":"TTL"}, "ResourceRecords":{"shape":"ResourceRecords"}, "AliasTarget":{"shape":"AliasTarget"}, "HealthCheckId":{"shape":"HealthCheckId"}, "TrafficPolicyInstanceId":{"shape":"TrafficPolicyInstanceId"} } }, "ResourceRecordSetFailover":{ "type":"string", "enum":[ "PRIMARY", "SECONDARY" ] }, "ResourceRecordSetIdentifier":{ "type":"string", "max":128, "min":1 }, "ResourceRecordSetRegion":{ "type":"string", "enum":[ "us-east-1", "us-east-2", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2", "sa-east-1", "cn-north-1", "ap-south-1" ], "max":64, "min":1 }, "ResourceRecordSetWeight":{ "type":"long", "max":255, "min":0 }, "ResourceRecordSets":{ "type":"list", "member":{ "shape":"ResourceRecordSet", "locationName":"ResourceRecordSet" } }, "ResourceRecords":{ "type":"list", "member":{ "shape":"ResourceRecord", "locationName":"ResourceRecord" }, "min":1 }, "ResourceTagSet":{ "type":"structure", "members":{ "ResourceType":{"shape":"TagResourceType"}, "ResourceId":{"shape":"TagResourceId"}, "Tags":{"shape":"TagList"} } }, "ResourceTagSetList":{ "type":"list", "member":{ "shape":"ResourceTagSet", "locationName":"ResourceTagSet" } }, "ResourceURI":{ "type":"string", "max":1024 }, "SearchString":{ "type":"string", "max":255 }, "Statistic":{ "type":"string", "enum":[ "Average", "Sum", "SampleCount", "Maximum", "Minimum" ] }, "Status":{"type":"string"}, "StatusReport":{ "type":"structure", "members":{ "Status":{"shape":"Status"}, "CheckedTime":{"shape":"TimeStamp"} } }, "SubnetMask":{ "type":"string", "max":2, "min":0 }, "TTL":{ "type":"long", "max":2147483647, "min":0 }, "Tag":{ "type":"structure", "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{ "type":"string", "max":128 }, "TagKeyList":{ "type":"list", "member":{ "shape":"TagKey", "locationName":"Key" }, "max":10, "min":1 }, "TagList":{ "type":"list", "member":{ "shape":"Tag", "locationName":"Tag" }, "max":10, "min":1 }, "TagResourceId":{ "type":"string", "max":64 }, "TagResourceIdList":{ "type":"list", "member":{ "shape":"TagResourceId", "locationName":"ResourceId" }, "max":10, "min":1 }, "TagResourceType":{ "type":"string", "enum":[ "healthcheck", "hostedzone" ] }, "TagValue":{ "type":"string", "max":256 }, "TestDNSAnswerRequest":{ "type":"structure", "required":[ "HostedZoneId", "RecordName", "RecordType" ], "members":{ "HostedZoneId":{ "shape":"ResourceId", "location":"querystring", "locationName":"hostedzoneid" }, "RecordName":{ "shape":"DNSName", "location":"querystring", "locationName":"recordname" }, "RecordType":{ "shape":"RRType", "location":"querystring", "locationName":"recordtype" }, "ResolverIP":{ "shape":"IPAddress", "location":"querystring", "locationName":"resolverip" }, "EDNS0ClientSubnetIP":{ "shape":"IPAddress", "location":"querystring", "locationName":"edns0clientsubnetip" }, "EDNS0ClientSubnetMask":{ "shape":"SubnetMask", "location":"querystring", "locationName":"edns0clientsubnetmask" } } }, "TestDNSAnswerResponse":{ "type":"structure", "required":[ "Nameserver", "RecordName", "RecordType", "RecordData", "ResponseCode", "Protocol" ], "members":{ "Nameserver":{"shape":"Nameserver"}, "RecordName":{"shape":"DNSName"}, "RecordType":{"shape":"RRType"}, "RecordData":{"shape":"RecordData"}, "ResponseCode":{"shape":"DNSRCode"}, "Protocol":{"shape":"TransportProtocol"} } }, "Threshold":{"type":"double"}, "ThrottlingException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "TimeStamp":{"type":"timestamp"}, "TooManyHealthChecks":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "TooManyHostedZones":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyTrafficPolicies":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "TooManyTrafficPolicyInstances":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrafficPolicies":{ "type":"list", "member":{ "shape":"TrafficPolicy", "locationName":"TrafficPolicy" } }, "TrafficPolicy":{ "type":"structure", "required":[ "Id", "Version", "Name", "Type", "Document" ], "members":{ "Id":{"shape":"TrafficPolicyId"}, "Version":{"shape":"TrafficPolicyVersion"}, "Name":{"shape":"TrafficPolicyName"}, "Type":{"shape":"RRType"}, "Document":{"shape":"TrafficPolicyDocument"}, "Comment":{"shape":"TrafficPolicyComment"} } }, "TrafficPolicyAlreadyExists":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":409}, "exception":true }, "TrafficPolicyComment":{ "type":"string", "max":1024 }, "TrafficPolicyDocument":{ "type":"string", "max":102400 }, "TrafficPolicyId":{ "type":"string", "max":36 }, "TrafficPolicyInUse":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":400}, "exception":true }, "TrafficPolicyInstance":{ "type":"structure", "required":[ "Id", "HostedZoneId", "Name", "TTL", "State", "Message", "TrafficPolicyId", "TrafficPolicyVersion", "TrafficPolicyType" ], "members":{ "Id":{"shape":"TrafficPolicyInstanceId"}, "HostedZoneId":{"shape":"ResourceId"}, "Name":{"shape":"DNSName"}, "TTL":{"shape":"TTL"}, "State":{"shape":"TrafficPolicyInstanceState"}, "Message":{"shape":"Message"}, "TrafficPolicyId":{"shape":"TrafficPolicyId"}, "TrafficPolicyVersion":{"shape":"TrafficPolicyVersion"}, "TrafficPolicyType":{"shape":"RRType"} } }, "TrafficPolicyInstanceAlreadyExists":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":409}, "exception":true }, "TrafficPolicyInstanceCount":{"type":"integer"}, "TrafficPolicyInstanceId":{ "type":"string", "max":36 }, "TrafficPolicyInstanceState":{"type":"string"}, "TrafficPolicyInstances":{ "type":"list", "member":{ "shape":"TrafficPolicyInstance", "locationName":"TrafficPolicyInstance" } }, "TrafficPolicyName":{ "type":"string", "max":512 }, "TrafficPolicySummaries":{ "type":"list", "member":{ "shape":"TrafficPolicySummary", "locationName":"TrafficPolicySummary" } }, "TrafficPolicySummary":{ "type":"structure", "required":[ "Id", "Name", "Type", "LatestVersion", "TrafficPolicyCount" ], "members":{ "Id":{"shape":"TrafficPolicyId"}, "Name":{"shape":"TrafficPolicyName"}, "Type":{"shape":"RRType"}, "LatestVersion":{"shape":"TrafficPolicyVersion"}, "TrafficPolicyCount":{"shape":"TrafficPolicyVersion"} } }, "TrafficPolicyVersion":{ "type":"integer", "max":1000, "min":1 }, "TrafficPolicyVersionMarker":{ "type":"string", "max":4 }, "TransportProtocol":{"type":"string"}, "UpdateHealthCheckRequest":{ "type":"structure", "required":["HealthCheckId"], "members":{ "HealthCheckId":{ "shape":"HealthCheckId", "location":"uri", "locationName":"HealthCheckId" }, "HealthCheckVersion":{"shape":"HealthCheckVersion"}, "IPAddress":{"shape":"IPAddress"}, "Port":{"shape":"Port"}, "ResourcePath":{"shape":"ResourcePath"}, "FullyQualifiedDomainName":{"shape":"FullyQualifiedDomainName"}, "SearchString":{"shape":"SearchString"}, "FailureThreshold":{"shape":"FailureThreshold"}, "Inverted":{"shape":"Inverted"}, "HealthThreshold":{"shape":"HealthThreshold"}, "ChildHealthChecks":{"shape":"ChildHealthCheckList"}, "EnableSNI":{"shape":"EnableSNI"}, "Regions":{"shape":"HealthCheckRegionList"}, "AlarmIdentifier":{"shape":"AlarmIdentifier"}, "InsufficientDataHealthStatus":{"shape":"InsufficientDataHealthStatus"} } }, "UpdateHealthCheckResponse":{ "type":"structure", "required":["HealthCheck"], "members":{ "HealthCheck":{"shape":"HealthCheck"} } }, "UpdateHostedZoneCommentRequest":{ "type":"structure", "required":["Id"], "members":{ "Id":{ "shape":"ResourceId", "location":"uri", "locationName":"Id" }, "Comment":{"shape":"ResourceDescription"} } }, "UpdateHostedZoneCommentResponse":{ "type":"structure", "required":["HostedZone"], "members":{ "HostedZone":{"shape":"HostedZone"} } }, "UpdateTrafficPolicyCommentRequest":{ "type":"structure", "required":[ "Id", "Version", "Comment" ], "members":{ "Id":{ "shape":"TrafficPolicyId", "location":"uri", "locationName":"Id" }, "Version":{ "shape":"TrafficPolicyVersion", "location":"uri", "locationName":"Version" }, "Comment":{"shape":"TrafficPolicyComment"} } }, "UpdateTrafficPolicyCommentResponse":{ "type":"structure", "required":["TrafficPolicy"], "members":{ "TrafficPolicy":{"shape":"TrafficPolicy"} } }, "UpdateTrafficPolicyInstanceRequest":{ "type":"structure", "required":[ "Id", "TTL", "TrafficPolicyId", "TrafficPolicyVersion" ], "members":{ "Id":{ "shape":"TrafficPolicyInstanceId", "location":"uri", "locationName":"Id" }, "TTL":{"shape":"TTL"}, "TrafficPolicyId":{"shape":"TrafficPolicyId"}, "TrafficPolicyVersion":{"shape":"TrafficPolicyVersion"} } }, "UpdateTrafficPolicyInstanceResponse":{ "type":"structure", "required":["TrafficPolicyInstance"], "members":{ "TrafficPolicyInstance":{"shape":"TrafficPolicyInstance"} } }, "VPC":{ "type":"structure", "members":{ "VPCRegion":{"shape":"VPCRegion"}, "VPCId":{"shape":"VPCId"} } }, "VPCAssociationNotFound":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "error":{"httpStatusCode":404}, "exception":true }, "VPCId":{ "type":"string", "max":1024 }, "VPCRegion":{ "type":"string", "enum":[ "us-east-1", "us-east-2", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-southeast-1", "ap-southeast-2", "ap-south-1", "ap-northeast-1", "ap-northeast-2", "sa-east-1", "cn-north-1" ], "max":64, "min":1 }, "VPCs":{ "type":"list", "member":{ "shape":"VPC", "locationName":"VPC" }, "min":1 } } } aws-sdk-go-1.4.22/models/apis/route53/2013-04-01/docs-2.json000066400000000000000000007220631300374646400223300ustar00rootroot00000000000000{ "version": "2.0", "service": null, "operations": { "AssociateVPCWithHostedZone": "

        Associates an Amazon VPC with a private hosted zone.

        The VPC and the hosted zone must already exist, and you must have created a private hosted zone. You cannot convert a public hosted zone into a private hosted zone.

        Send a POST request to the /2013-04-01/hostedzone/hosted zone ID/associatevpc resource. The request body must include an XML document with a AssociateVPCWithHostedZoneRequest element. The response returns the AssociateVPCWithHostedZoneResponse element.

        If you used different accounts to create the hosted zone and to create the Amazon VPCs that you want to associate with the hosted zone, we need to update account permissions for you. For more information, see Associating Amazon VPCs and Private Hosted Zones That You Create with Different AWS Accounts in the Amazon Route 53 Developer Guide.

        ", "ChangeResourceRecordSets": "

        Create, change, update, or delete authoritative DNS information on all Amazon Route 53 servers. Send a POST request to:

        /2013-04-01/hostedzone/Amazon Route 53 hosted Zone ID/rrset resource.

        The request body must include a document with a ChangeResourceRecordSetsRequest element. The request body contains a list of change items, known as a change batch. Change batches are considered transactional changes. When using the Amazon Route 53 API to change resource record sets, Amazon Route 53 either makes all or none of the changes in a change batch request. This ensures that Amazon Route 53 never partially implements the intended changes to the resource record sets in a hosted zone.

        For example, a change batch request that deletes the CNAME record for www.example.com and creates an alias resource record set for www.example.com. Amazon Route 53 deletes the first resource record set and creates the second resource record set in a single operation. If either the DELETE or the CREATE action fails, then both changes (plus any other changes in the batch) fail, and the original CNAME record continues to exist.

        Due to the nature of transactional changes, you cannot delete the same resource record set more than once in a single change batch. If you attempt to delete the same change batch more than once, Amazon Route 53 returns an InvalidChangeBatch error.

        To create resource record sets for complex routing configurations, use either the traffic flow visual editor in the Amazon Route 53 console or the API actions for traffic policies and traffic policy instances. Save the configuration as a traffic policy, then associate the traffic policy with one or more domain names (such as example.com) or subdomain names (such as www.example.com), in the same hosted zone or in multiple hosted zones. You can roll back the updates if the new configuration isn't performing as expected. For more information, see Using Traffic Flow to Route DNS Traffic in the Amazon Route 53 Developer Guide.

        Use ChangeResourceRecordsSetsRequest to perform the following actions:

        • CREATE: Creates a resource record set that has the specified values.

        • DELETE: Deletes an existing resource record set that has the specified values for Name, Type, Set Identifier (for code latency, weighted, geolocation, and failover resource record sets), and TTL (except alias resource record sets, for which the TTL is determined by the AWS resource you're routing queries to).

        • UPSERT: If a resource record set does not already exist, AWS creates it. If a resource set does exist, Amazon Route 53 updates it with the values in the request. Amazon Route 53 can update an existing resource record set only when all of the following values match: Name, Type, and Set Identifier (for weighted, latency, geolocation, and failover resource record sets).

        In response to a ChangeResourceRecordSets request, the DNS data is changed on all Amazon Route 53 DNS servers. Initially, the status of a change is PENDING, meaning the change has not yet propagated to all the authoritative Amazon Route 53 DNS servers. When the change is propagated to all hosts, the change returns a status of INSYNC.

        After sending a change request, confirm your change has propagated to all Amazon Route 53 DNS servers. Changes generally propagate to all Amazon Route 53 name servers in a few minutes. In rare circumstances, propagation can take up to 30 minutes. For more information, see GetChange.

        For information about the limits on a ChangeResourceRecordSets request, see Limits in the Amazon Route 53 Developer Guide.

        ", "ChangeTagsForResource": "

        Adds, edits, or deletes tags for a health check or a hosted zone.

        For information about using tags for cost allocation, see Using Cost Allocation Tags in the AWS Billing and Cost Management User Guide.

        ", "CreateHealthCheck": "

        Creates a new health check.

        To create a new health check, send a POST request to the /2013-04-01/healthcheck resource. The request body must include an XML document with a CreateHealthCheckRequest element. The response returns the CreateHealthCheckResponse element, containing the health check ID specified when adding health check to a resource record set. For information about adding health checks to resource record sets, see ResourceRecordSet$HealthCheckId in ChangeResourceRecordSets.

        If you are registering Amazon EC2 instances with an Elastic Load Balancing (ELB) load balancer, do not create Amazon Route 53 health checks for the Amazon EC2 instances. When you register an Amazon EC2 instance with a load balancer, you configure settings for an ELB health check, which performs a similar function to an Amazon Route 53 health check.

        You can associate health checks with failover resource record sets in a private hosted zone. Note the following:

        • Amazon Route 53 health checkers are outside the VPC. To check the health of an endpoint within a VPC by IP address, you must assign a public IP address to the instance in the VPC.

        • You can configure a health checker to check the health of an external resource that the instance relies on, such as a database server.

        • You can create a CloudWatch metric, associate an alarm with the metric, and then create a health check that is based on the state of the alarm. For example, you might create a CloudWatch metric that checks the status of the Amazon EC2 StatusCheckFailed metric, add an alarm to the metric, and then create a health check that is based on the state of the alarm. For information about creating CloudWatch metrics and alarms by using the CloudWatch console, see the Amazon CloudWatch Developer Guide.

        ", "CreateHostedZone": "

        Creates a new public hosted zone, used to specify how the Domain Name System (DNS) routes traffic on the Internet for a domain, such as example.com, and its subdomains.

        Public hosted zones cannot be converted to a private hosted zone or vice versa. Instead, create a new hosted zone with the same name and create new resource record sets.

        Send a POST request to the /2013-04-01/hostedzone resource. The request body must include an XML document with a CreateHostedZoneRequest element. The response returns the CreateHostedZoneResponse element containing metadata about the hosted zone.

        Fore more information about charges for hosted zones, see Amazon Route 53 Pricing.

        Note the following:

        • You cannot create a hosted zone for a top-level domain (TLD).

        • Amazon Route 53 automatically creates a default SOA record and four NS records for the zone. For more information about SOA and NS records, see NS and SOA Records that Amazon Route 53 Creates for a Hosted Zone in the Amazon Route 53 Developer Guide.

        • If your domain is registered with a registrar other than Amazon Route 53, you must update the name servers with your registrar to make Amazon Route 53 your DNS service. For more information, see Configuring Amazon Route 53 as your DNS Service in the Amazon Route 53 Developer's Guide.

        After creating a zone, its initial status is PENDING. This means that it is not yet available on all DNS servers. The status of the zone changes to INSYNC when the NS and SOA records are available on all Amazon Route 53 DNS servers.

        When trying to create a hosted zone using a reusable delegation set, specify an optional DelegationSetId, and Amazon Route 53 would assign those 4 NS records for the zone, instead of allotting a new one.

        ", "CreateReusableDelegationSet": "

        Creates a delegation set (a group of four name servers) that can be reused by multiple hosted zones. If a hosted zoned ID is specified, CreateReusableDelegationSet marks the delegation set associated with that zone as reusable

        Send a POST request to the /2013-04-01/delegationset resource. The request body must include an XML document with a CreateReusableDelegationSetRequest element.

        A reusable delegation set cannot be associated with a private hosted zone/

        For more information, including a procedure on how to create and configure a reusable delegation set (also known as white label name servers), see Configuring White Label Name Servers.

        ", "CreateTrafficPolicy": "

        Creates a traffic policy, which you use to create multiple DNS resource record sets for one domain name (such as example.com) or one subdomain name (such as www.example.com).

        Send a POST request to the /2013-04-01/trafficpolicy resource. The request body must include a document with a CreateTrafficPolicyRequest element. The response includes the CreateTrafficPolicyResponse element, which contains information about the new traffic policy.

        ", "CreateTrafficPolicyInstance": "

        Creates resource record sets in a specified hosted zone based on the settings in a specified traffic policy version. In addition, CreateTrafficPolicyInstance associates the resource record sets with a specified domain name (such as example.com) or subdomain name (such as www.example.com). Amazon Route 53 responds to DNS queries for the domain or subdomain name by using the resource record sets that CreateTrafficPolicyInstance created.

        Send a POST request to the /2013-04-01/trafficpolicyinstance resource. The request body must include a document with a CreateTrafficPolicyRequest element. The response returns the CreateTrafficPolicyInstanceResponse element, which contains information about the traffic policy instance.

        ", "CreateTrafficPolicyVersion": "

        Creates a new version of an existing traffic policy. When you create a new version of a traffic policy, you specify the ID of the traffic policy that you want to update and a JSON-formatted document that describes the new version. You use traffic policies to create multiple DNS resource record sets for one domain name (such as example.com) or one subdomain name (such as www.example.com). You can create a maximum of 1000 versions of a traffic policy. If you reach the limit and need to create another version, you'll need to start a new traffic policy.

        Send a POST request to the /2013-04-01/trafficpolicy/ resource. The request body includes a document with a CreateTrafficPolicyVersionRequest element. The response returns the CreateTrafficPolicyVersionResponse element, which contains information about the new version of the traffic policy.

        ", "DeleteHealthCheck": "

        Deletes a health check. Send a DELETE request to the /2013-04-01/healthcheck/health check ID resource.

        Amazon Route 53 does not prevent you from deleting a health check even if the health check is associated with one or more resource record sets. If you delete a health check and you don't update the associated resource record sets, the future status of the health check cannot be predicted and may change. This will affect the routing of DNS queries for your DNS failover configuration. For more information, see Replacing and Deleting Health Checks in the Amazon Route 53 Developer Guide.

        ", "DeleteHostedZone": "

        Deletes a hosted zone. Send a DELETE request to the /Amazon Route 53 API version/hostedzone/hosted zone ID resource.

        Delete a hosted zone only if there are no resource record sets other than the default SOA record and NS resource record sets. If the hosted zone contains other resource record sets, delete them before deleting the hosted zone. If you try to delete a hosted zone that contains other resource record sets, Amazon Route 53 denies your request with a HostedZoneNotEmpty error. For information about deleting records from your hosted zone, see ChangeResourceRecordSets.

        ", "DeleteReusableDelegationSet": "

        Deletes a reusable delegation set. Send a DELETE request to the /2013-04-01/delegationset/delegation set ID resource.

        You can delete a reusable delegation set only if there are no associated hosted zones.

        To verify that the reusable delegation set is not associated with any hosted zones, run the GetReusableDelegationSet action and specify the ID of the reusable delegation set that you want to delete.

        ", "DeleteTrafficPolicy": "

        Deletes a traffic policy.

        Send a DELETE request to the /Amazon Route 53 API version/trafficpolicy resource.

        ", "DeleteTrafficPolicyInstance": "

        Deletes a traffic policy instance and all of the resource record sets that Amazon Route 53 created when you created the instance.

        Send a DELETE request to the /Amazon Route 53 API version/trafficpolicy/traffic policy instance ID resource.

        In the Amazon Route 53 console, traffic policy instances are known as policy records.

        ", "DisassociateVPCFromHostedZone": "

        Disassociates a VPC from a Amazon Route 53 private hosted zone.

        Send a POST request to the /2013-04-01/hostedzone/hosted zone ID/disassociatevpc resource. The request body must include an XML document with a DisassociateVPCFromHostedZoneRequest element. The response returns the DisassociateVPCFromHostedZoneResponse element.

        You can only disassociate a VPC from a private hosted zone when two or more VPCs are associated with that hosted zone. You cannot convert a private hosted zone into a public hosted zone.

        ", "GetChange": "

        Returns the current status of a change batch request. The status is one of the following values:

        • PENDING indicates that the changes in this request have not replicated to all Amazon Route 53 DNS servers. This is the initial status of all change batch requests.

        • INSYNC indicates that the changes have replicated to all Amazon Route 53 DNS servers.

        ", "GetChangeDetails": "

        Returns the status and changes of a change batch request.

        ", "GetCheckerIpRanges": "

        Retrieves a list of the IP ranges used by Amazon Route 53 health checkers to check the health of your resources. Send a GET request to the /Amazon Route 53 API version/checkeripranges resource. Use these IP addresses to configure router and firewall rules to allow health checkers to check the health of your resources.

        ", "GetGeoLocation": "

        Retrieves a single geo location. Send a GET request to the /2013-04-01/geolocation resource with one of these options: continentcode | countrycode | countrycode and subdivisioncode.

        ", "GetHealthCheck": "

        Gets information about a specified health check. Send a GET request to the /2013-04-01/healthcheck/health check ID resource. For more information about using the console to perform this operation, see Amazon Route 53 Health Checks and DNS Failover in the Amazon Route 53 Developer Guide.

        ", "GetHealthCheckCount": "

        To retrieve a count of all your health checks, send a GET request to the /2013-04-01/healthcheckcount resource.

        ", "GetHealthCheckLastFailureReason": "

        If you want to learn why a health check is currently failing or why it failed most recently (if at all), you can get the failure reason for the most recent failure. Send a GET request to the /Amazon Route 53 API version/healthcheck/health check ID/lastfailurereason resource.

        ", "GetHealthCheckStatus": "

        Gets status of a specified health check. Send a GET request to the /2013-04-01/healthcheck/health check ID/status resource. You can use this call to get a health check's current status.

        ", "GetHostedZone": "

        Retrieves the delegation set for a hosted zone, including the four name servers assigned to the hosted zone. Send a GET request to the /Amazon Route 53 API version/hostedzone/hosted zone ID resource.

        ", "GetHostedZoneCount": "

        Retrieves a count of all your hosted zones. Send a GET request to the /2013-04-01/hostedzonecount resource.

        ", "GetReusableDelegationSet": "

        Retrieves the reusable delegation set. Send a GET request to the /2013-04-01/delegationset/delegation set ID resource.

        ", "GetTrafficPolicy": "

        Gets information about a specific traffic policy version.

        Send a GET request to the /Amazon Route 53 API version/trafficpolicy resource.

        ", "GetTrafficPolicyInstance": "

        Gets information about a specified traffic policy instance.

        Send a GET request to the /Amazon Route 53 API version/trafficpolicyinstance resource.

        After you submit a CreateTrafficPolicyInstance or an UpdateTrafficPolicyInstance request, there's a brief delay while Amazon Route 53 creates the resource record sets that are specified in the traffic policy definition. For more information, see the State response element.

        In the Amazon Route 53 console, traffic policy instances are known as policy records.

        ", "GetTrafficPolicyInstanceCount": "

        Gets the number of traffic policy instances that are associated with the current AWS account.

        To get the number of traffic policy instances, send a GET request to the /2013-04-01/trafficpolicyinstancecount resource.

        ", "ListChangeBatchesByHostedZone": "

        Gets the list of ChangeBatches in a given time period for a given hosted zone.

        ", "ListChangeBatchesByRRSet": "

        Gets the list of ChangeBatches in a given time period for a given hosted zone and RRSet.

        ", "ListGeoLocations": "

        Retrieves a list of supported geo locations. Send a GET request to the /2013-04-01/geolocations resource. The response to this request includes a GeoLocationDetailsList element for each location that Amazon Route 53 supports.

        Countries are listed first, and continents are listed last. If Amazon Route 53 supports subdivisions for a country (for example, states or provinces), the subdivisions for that country are listed in alphabetical order immediately after the corresponding country.

        ", "ListHealthChecks": "

        Retrieve a list of your health checks. Send a GET request to the /2013-04-01/healthcheck resource. The response to this request includes a HealthChecks element with zero or more HealthCheck child elements. By default, the list of health checks is displayed on a single page. You can control the length of the page that is displayed by using the MaxItems parameter. You can use the Marker parameter to control the health check that the list begins with.

        For information about listing health checks using the Amazon Route 53 console, see Amazon Route 53 Health Checks and DNS Failover.

        ", "ListHostedZones": "

        To retrieve a list of your public and private hosted zones, send a GET request to the /2013-04-01/hostedzone resource. The response to this request includes a HostedZones child element for each hosted zone created by the current AWS account.

        Amazon Route 53 returns a maximum of 100 items in each response. If you have a lot of hosted zones, you can use the maxitems parameter to list them in groups of up to 100. The response includes four values that help navigate from one group of maxitems hosted zones to the next:

        • MaxItems is the value specified for the maxitems parameter in the request that produced the current response.

        • If the value of IsTruncated in the response is true, there are more hosted zones associated with the current AWS account.

        • NextMarker is the hosted zone ID of the next hosted zone that is associated with the current AWS account. If you want to list more hosted zones, make another call to ListHostedZones, and specify the value of the NextMarker element in the marker parameter.

          If IsTruncated is false, the NextMarker element is omitted from the response.

        • If you're making the second or subsequent call to ListHostedZones, the Marker element matches the value that you specified in the marker parameter in the previous request.

        ", "ListHostedZonesByName": "

        Retrieves a list of your hosted zones in lexicographic order. Send a GET request to the /2013-04-01/hostedzonesbyname resource. The response includes a HostedZones child element for each hosted zone created by the current AWS account.

        ListHostedZonesByName sorts hosted zones by name with the labels reversed. For example:

        • com.example.www.

        Note the trailing dot, which can change the sort order in some circumstances.

        If the domain name includes escape characters or Punycode, ListHostedZonesByName alphabetizes the domain name using the escaped or Punycoded value, which is the format that Amazon Route 53 saves in its database. For example, to create a hosted zone for example.com, specify ex\\344mple.com for the domain name. ListHostedZonesByName alphabetizes it as:

        • com.ex\\344mple.

        The labels are reversed and alphabetized using the escaped value. For more information about valid domain name formats, including internationalized domain names, see DNS Domain Name Format in the Amazon Route 53 Developer Guide.

        Amazon Route 53 returns up to 100 items in each response. If you have a lot of hosted zones, use the MaxItems parameter to list them in groups of up to 100. The response includes values that help navigate from one group of MaxItems hosted zones to the next:

        • The DNSName and HostedZoneId elements in the response contain the values, if any, specified for the dnsname and hostedzoneid parameters in the request that produced the current response.

        • The MaxItems element in the response contains the value, if any, that you specified for the maxitems parameter in the request that produced the current response.

        • If the value of IsTruncated in the response is true, there are more hosted zones associated with the current AWS account.

          If IsTruncated is false, this response includes the last hosted zone that is associated with the current account. The NextDNSName element and NextHostedZoneId elements are omitted from the response.

        • The NextDNSName and NextHostedZoneId elements in the response contain the domain name and the hosted zone ID of the next hosted zone that is associated with the current AWS account. If you want to list more hosted zones, make another call to ListHostedZonesByName, and specify the value of NextDNSName and NextHostedZoneId in the dnsname and hostedzoneid parameters, respectively.

        ", "ListResourceRecordSets": "

        Lists the resource record sets in a specified hosted zone.

        ListResourceRecordSets returns up to 100 resource record sets at a time in ASCII order, beginning at a position specified by the name and type elements. The action sorts results first by DNS name with the labels reversed, for example:

        com.example.www.

        Note the trailing dot, which can change the sort order in some circumstances.

        When multiple records have the same DNS name, the action sorts results by the record type.

        You can use the name and type elements to adjust the beginning position of the list of resource record sets returned:

        If you do not specify Name or Type

        The results begin with the first resource record set that the hosted zone contains.

        If you specify Name but not Type

        The results begin with the first resource record set in the list whose name is greater than or equal to Name.

        If you specify Type but not Name

        Amazon Route 53 returns the InvalidInput error.

        If you specify both Name and Type

        The results begin with the first resource record set in the list whose name is greater than or equal to Name, and whose type is greater than or equal to Type.

        This action returns the most current version of the records. This includes records that are PENDING, and that are not yet available on all Amazon Route 53 DNS servers.

        To ensure that you get an accurate listing of the resource record sets for a hosted zone at a point in time, do not submit a ChangeResourceRecordSets request while you're paging through the results of a ListResourceRecordSets request. If you do, some pages may display results without the latest changes while other pages display results with the latest changes.

        ", "ListReusableDelegationSets": "

        To retrieve a list of your reusable delegation sets, send a GET request to the /2013-04-01/delegationset resource. The response to this request includes a DelegationSets element with zero, one, or multiple DelegationSet child elements. By default, the list of delegation sets is displayed on a single page. You can control the length of the page that is displayed by using the MaxItems parameter. You can use the Marker parameter to control the delegation set that the list begins with.

        Amazon Route 53 returns a maximum of 100 items. If you set MaxItems to a value greater than 100, Amazon Route 53 returns only the first 100.

        ", "ListTagsForResource": "

        Lists tags for one health check or hosted zone.

        For information about using tags for cost allocation, see Using Cost Allocation Tags in the AWS Billing and Cost Management User Guide.

        ", "ListTagsForResources": "

        Lists tags for up to 10 health checks or hosted zones.

        For information about using tags for cost allocation, see Using Cost Allocation Tags in the AWS Billing and Cost Management User Guide.

        ", "ListTrafficPolicies": "

        Gets information about the latest version for every traffic policy that is associated with the current AWS account. Send a GET request to the /Amazon Route 53 API version/trafficpolicy resource.

        Amazon Route 53 returns a maximum of 100 items in each response. If you have a lot of traffic policies, you can use the maxitems parameter to list them in groups of up to 100.

        The response includes three values that help you navigate from one group of maxitems traffic policies to the next:

        • IsTruncated

          If the value of IsTruncated in the response is true, there are more traffic policies associated with the current AWS account.

          If IsTruncated is false, this response includes the last traffic policy that is associated with the current account.

        • TrafficPolicyIdMarker

          If IsTruncated is true, TrafficPolicyIdMarker is the ID of the first traffic policy in the next group of MaxItems traffic policies. If you want to list more traffic policies, make another call to ListTrafficPolicies, and specify the value of the TrafficPolicyIdMarker element from the response in the TrafficPolicyIdMarker request parameter.

          If IsTruncated is false, the TrafficPolicyIdMarker element is omitted from the response.

        • MaxItems

          The value that you specified for the MaxItems parameter in the request that produced the current response.

        ", "ListTrafficPolicyInstances": "

        Gets information about the traffic policy instances that you created by using the current AWS account.

        After you submit an UpdateTrafficPolicyInstance request, there's a brief delay while Amazon Route 53 creates the resource record sets that are specified in the traffic policy definition. For more information, see the State response element.

        Send a GET request to the /Amazon Route 53 API version/trafficpolicyinstance resource.

        Amazon Route 53 returns a maximum of 100 items in each response. If you have a lot of traffic policy instances, you can use the MaxItems parameter to list them in groups of up to 100.

        The response includes five values that help you navigate from one group of MaxItems traffic policy instances to the next:

        • IsTruncated

          If the value of IsTruncated in the response is true, there are more traffic policy instances associated with the current AWS account.

          If IsTruncated is false, this response includes the last traffic policy instance that is associated with the current account.

        • MaxItems

          The value that you specified for the MaxItems parameter in the request that produced the current response.

        • HostedZoneIdMarker, TrafficPolicyInstanceNameMarker, and TrafficPolicyInstanceTypeMarker

          If IsTruncated is true, these three values in the response represent the first traffic policy instance in the next group of MaxItems traffic policy instances. To list more traffic policy instances, make another call to ListTrafficPolicyInstances, and specify these values in the corresponding request parameters.

          If IsTruncated is false, all three elements are omitted from the response.

        ", "ListTrafficPolicyInstancesByHostedZone": "

        Gets information about the traffic policy instances that you created in a specified hosted zone.

        After you submit an UpdateTrafficPolicyInstance request, there's a brief delay while Amazon Route 53 creates the resource record sets that are specified in the traffic policy definition. For more information, see the State response element.

        Send a GET request to the /Amazon Route 53 API version/trafficpolicyinstance resource and include the ID of the hosted zone.

        Amazon Route 53 returns a maximum of 100 items in each response. If you have a lot of traffic policy instances, you can use the MaxItems parameter to list them in groups of up to 100.

        The response includes four values that help you navigate from one group of MaxItems traffic policy instances to the next:

        • IsTruncated

          If the value of IsTruncated in the response is true, there are more traffic policy instances associated with the current AWS account.

          If IsTruncated is false, this response includes the last traffic policy instance that is associated with the current account.

        • MaxItems

          The value that you specified for the MaxItems parameter in the request that produced the current response.

        • TrafficPolicyInstanceNameMarker and TrafficPolicyInstanceTypeMarker

          If IsTruncated is true, these two values in the response represent the first traffic policy instance in the next group of MaxItems traffic policy instances. To list more traffic policy instances, make another call to ListTrafficPolicyInstancesByHostedZone, and specify these values in the corresponding request parameters.

          If IsTruncated is false, all three elements are omitted from the response.

        ", "ListTrafficPolicyInstancesByPolicy": "

        Gets information about the traffic policy instances that you created by using a specify traffic policy version.

        After you submit a CreateTrafficPolicyInstance or an UpdateTrafficPolicyInstance request, there's a brief delay while Amazon Route 53 creates the resource record sets that are specified in the traffic policy definition. For more information, see the State response element.

        Send a GET request to the /Route 53 API version/trafficpolicyinstance resource and include the ID and version of the traffic policy.

        Amazon Route 53 returns a maximum of 100 items in each response. If you have a lot of traffic policy instances, you can use the MaxItems parameter to list them in groups of up to 100.

        The response includes five values that help you navigate from one group of MaxItems traffic policy instances to the next:

        • IsTruncated

          If the value of IsTruncated in the response is true, there are more traffic policy instances associated with the specified traffic policy.

          If IsTruncated is false, this response includes the last traffic policy instance that is associated with the specified traffic policy.

        • MaxItems

          The value that you specified for the MaxItems parameter in the request that produced the current response.

        • HostedZoneIdMarker, TrafficPolicyInstanceNameMarker, and TrafficPolicyInstanceTypeMarker

          If IsTruncated is true, these values in the response represent the first traffic policy instance in the next group of MaxItems traffic policy instances. To list more traffic policy instances, make another call to ListTrafficPolicyInstancesByPolicy, and specify these values in the corresponding request parameters.

          If IsTruncated is false, all three elements are omitted from the response.

        ", "ListTrafficPolicyVersions": "

        Gets information about all of the versions for a specified traffic policy.

        Send a GET request to the /Amazon Route 53 API version/trafficpolicy resource and specify the ID of the traffic policy for which you want to list versions.

        Amazon Route 53 returns a maximum of 100 items in each response. If you have a lot of traffic policies, you can use the maxitems parameter to list them in groups of up to 100.

        The response includes three values that help you navigate from one group of maxitems traffic policies to the next:

        • IsTruncated

          If the value of IsTruncated in the response is true, there are more traffic policy versions associated with the specified traffic policy.

          If IsTruncated is false, this response includes the last traffic policy version that is associated with the specified traffic policy.

        • TrafficPolicyVersionMarker

          The ID of the next traffic policy version that is associated with the current AWS account. If you want to list more traffic policies, make another call to ListTrafficPolicyVersions, and specify the value of the TrafficPolicyVersionMarker element in the TrafficPolicyVersionMarker request parameter.

          If IsTruncated is false, Amazon Route 53 omits the TrafficPolicyVersionMarker element from the response.

        • MaxItems

          The value that you specified for the MaxItems parameter in the request that produced the current response.

        ", "TestDNSAnswer": "

        Gets the value that Amazon Route 53 returns in response to a DNS request for a specified record name and type. You can optionally specify the IP address of a DNS resolver, an EDNS0 client subnet IP address, and a subnet mask.

        ", "UpdateHealthCheck": "

        Updates an existing health check.

        Send a POST request to the /2013-04-01/healthcheck/health check ID resource. The request body must include an XML document with an UpdateHealthCheckRequest element. For more information about updating health checks, see Creating, Updating, and Deleting Health Checks in the Amazon Route 53 Developer Guide.

        ", "UpdateHostedZoneComment": "

        Updates the hosted zone comment. Send a POST request to the /2013-04-01/hostedzone/hosted zone ID resource.

        ", "UpdateTrafficPolicyComment": "

        Updates the comment for a specified traffic policy version.

        Send a POST request to the /2013-04-01/trafficpolicy/ resource.

        The request body must include a document with an UpdateTrafficPolicyCommentRequest element.

        ", "UpdateTrafficPolicyInstance": "

        Updates the resource record sets in a specified hosted zone that were created based on the settings in a specified traffic policy version.

        Send a POST request to the /2013-04-01/trafficpolicyinstance/traffic policy ID resource. The request body must include a document with an UpdateTrafficPolicyInstanceRequest element.

        When you update a traffic policy instance, Amazon Route 53 continues to respond to DNS queries for the root resource record set name (such as example.com) while it replaces one group of resource record sets with another. Amazon Route 53 performs the following operations:

        1. Amazon Route 53 creates a new group of resource record sets based on the specified traffic policy. This is true regardless of how substantial the differences are between the existing resource record sets and the new resource record sets.

        2. When all of the new resource record sets have been created, Amazon Route 53 starts to respond to DNS queries for the root resource record set name (such as example.com) by using the new resource record sets.

        3. Amazon Route 53 deletes the old group of resource record sets that are associated with the root resource record set name.

        " }, "shapes": { "AWSAccountID": { "base": null, "refs": { "ChangeBatchRecord$Submitter": "

        The AWS account ID attached to the changes.

        " } }, "AlarmIdentifier": { "base": "

        A complex type that identifies the CloudWatch alarm that you want Amazon Route 53 health checkers to use to determine whether this health check is healthy.

        ", "refs": { "HealthCheckConfig$AlarmIdentifier": "

        A complex type that identifies the CloudWatch alarm that you want Amazon Route 53 health checkers to use to determine whether this health check is healthy.

        ", "UpdateHealthCheckRequest$AlarmIdentifier": null } }, "AlarmName": { "base": null, "refs": { "AlarmIdentifier$Name": "

        The name of the CloudWatch alarm that you want Amazon Route 53 health checkers to use to determine whether this health check is healthy.

        " } }, "AliasHealthEnabled": { "base": null, "refs": { "AliasTarget$EvaluateTargetHealth": "

        Applies only to alias, weighted alias, latency alias, and failover alias record sets: If you set the value of EvaluateTargetHealth to true for the resource record set or sets in an alias, weighted alias, latency alias, or failover alias resource record set, and if you specify a value for HealthCheck$Id for every resource record set that is referenced by these alias resource record sets, the alias resource record sets inherit the health of the referenced resource record sets.

        In this configuration, when Amazon Route 53 receives a DNS query for an alias resource record set:

        • Amazon Route 53 looks at the resource record sets that are referenced by the alias resource record sets to determine which health checks they're using.

        • Amazon Route 53 checks the current status of each health check. (Amazon Route 53 periodically checks the health of the endpoint that is specified in a health check; it doesn't perform the health check when the DNS query arrives.)

        • Based on the status of the health checks, Amazon Route 53 determines which resource record sets are healthy. Unhealthy resource record sets are immediately removed from consideration. In addition, if all of the resource record sets that are referenced by an alias resource record set are unhealthy, that alias resource record set also is immediately removed from consideration.

        • Based on the configuration of the alias resource record sets (weighted alias or latency alias, for example) and the configuration of the resource record sets that they reference, Amazon Route 53 chooses a resource record set from the healthy resource record sets, and responds to the query.

        Note the following:

        • You cannot set EvaluateTargetHealth to true when the alias target is a CloudFront distribution.

        • If the AWS resource that you specify in AliasTarget is a resource record set or a group of resource record sets (for example, a group of weighted resource record sets), but it is not another alias resource record set, we recommend that you associate a health check with all of the resource record sets in the alias target.For more information, see What Happens When You Omit Health Checks? in the Amazon Route 53 Developer Guide.

        • If you specify an Elastic Beanstalk environment in HostedZoneId and DNSName, and if the environment contains an ELB load balancer, Elastic Load Balancing routes queries only to the healthy Amazon EC2 instances that are registered with the load balancer. (An environment automatically contains an ELB load balancer if it includes more than one Amazon EC2 instance.) If you set EvaluateTargetHealth to true and either no Amazon EC2 instances are healthy or the load balancer itself is unhealthy, Amazon Route 53 routes queries to other available resources that are healthy, if any.

          If the environment contains a single Amazon EC2 instance, there are no special requirements.

        • If you specify an ELB load balancer in AliasTarget , Elastic Load Balancing routes queries only to the healthy Amazon EC2 instances that are registered with the load balancer. If no Amazon EC2 instances are healthy or if the load balancer itself is unhealthy, and if EvaluateTargetHealth is true for the corresponding alias resource record set, Amazon Route 53 routes queries to other resources. When you create a load balancer, you configure settings for Elastic Load Balancing health checks; they're not Amazon Route 53 health checks, but they perform a similar function. Do not create Amazon Route 53 health checks for the Amazon EC2 instances that you register with an ELB load balancer.

          For more information, see How Health Checks Work in More Complex Amazon Route 53 Configurations in the Amazon Route 53 Developers Guide.

        • We recommend that you set EvaluateTargetHealth to true only when you have enough idle capacity to handle the failure of one or more endpoints.

        For more information and examples, see Amazon Route 53 Health Checks and DNS Failover in the Amazon Route 53 Developer Guide.

        " } }, "AliasTarget": { "base": "

        Alias resource record sets only: Information about the CloudFront distribution, Elastic Beanstalk environment, ELB load balancer, Amazon S3 bucket, or Amazon Route 53 resource record set to which you are redirecting queries. The Elastic Beanstalk environment must have a regionalized subdomain.

        When creating resource record sets for a private hosted zone, note the following:

        • Resource record sets cannot be created for CloudFront distributions in a private hosted zone.

        • Creating geolocation alias resource record sets or latency alias resource record sets in a private hosted zone is unsupported.

        • For information about creating failover resource record sets in a private hosted zone, see Configuring Failover in a Private Hosted Zone.

        ", "refs": { "ResourceRecordSet$AliasTarget": "

        Alias resource record sets only: Information about the CloudFront distribution, Elastic Beanstalk environment, ELB load balancer, Amazon S3 bucket, or Amazon Route 53 resource record set to which you are redirecting queries. The Elastic Beanstalk environment must have a regionalized subdomain.

        If you're creating resource records sets for a private hosted zone, note the following:

        • You can't create alias resource record sets for CloudFront distributions in a private hosted zone.

        • Creating geolocation alias resource record sets or latency alias resource record sets in a private hosted zone is unsupported.

        • For information about creating failover resource record sets in a private hosted zone, see Configuring Failover in a Private Hosted Zone in the Amazon Route 53 Developer Guide.

        " } }, "AssociateVPCComment": { "base": null, "refs": { "AssociateVPCWithHostedZoneRequest$Comment": "

        Optional: A comment about the association request.

        " } }, "AssociateVPCWithHostedZoneRequest": { "base": "

        A complex type that contains information about the VPC and the hosted zone that you want to associate.

        ", "refs": { } }, "AssociateVPCWithHostedZoneResponse": { "base": "

        A complex type that contains the response information for the hosted zone.

        ", "refs": { } }, "Change": { "base": "

        The information for each resource record set that you want to change.

        ", "refs": { "Changes$member": null } }, "ChangeAction": { "base": null, "refs": { "Change$Action": "

        The action to perform:

        • CREATE: Creates a resource record set that has the specified values.

        • DELETE: Deletes a existing resource record set that has the specified values for Name, Type, SetIdentifier (for latency, weighted, geolocation, and failover resource record sets), and TTL (except alias resource record sets, for which the TTL is determined by the AWS resource that you're routing DNS queries to).

          To delete the resource record set that is associated with a traffic policy instance, use DeleteTrafficPolicyInstance . Amazon Route 53will delete the resource record set automatically. If you delete the resource record set by using ChangeResourceRecordSets, Amazon Route 53 doesn't automatically delete the traffic policy instance, and you'll continue to be charged for it even though it's no longer in use.

        • UPSERT: If a resource record set does not already exist, Amazon Route 53 creates it. If a resource record set does exist, Amazon Route 53 updates it with the values in the request. Amazon Route 53 can update an existing resource record set only when all of the following values match: Name, Type, and SetIdentifier (for weighted, latency, geolocation, and failover resource record sets).

        " } }, "ChangeBatch": { "base": "

        The information for a change request.

        ", "refs": { "ChangeResourceRecordSetsRequest$ChangeBatch": "

        A complex type that contains an optional comment and the Changes element.

        " } }, "ChangeBatchRecord": { "base": "

        A complex type that lists the changes and information for a ChangeBatch.

        ", "refs": { "ChangeBatchRecords$member": null, "GetChangeDetailsResponse$ChangeBatchRecord": "

        A complex type that contains information about the specified change batch, including the change batch ID, the status of the change, and the contained changes.

        " } }, "ChangeBatchRecords": { "base": null, "refs": { "ListChangeBatchesByHostedZoneResponse$ChangeBatchRecords": "

        The change batches within the given hosted zone and time period.

        ", "ListChangeBatchesByRRSetResponse$ChangeBatchRecords": "

        The change batches within the given hosted zone and time period.

        " } }, "ChangeInfo": { "base": "

        A complex type that describes change information about changes made to your hosted zone.

        ", "refs": { "AssociateVPCWithHostedZoneResponse$ChangeInfo": "

        A complex type that describes the changes made to your hosted zone.

        ", "ChangeResourceRecordSetsResponse$ChangeInfo": "

        A complex type that contains information about changes made to your hosted zone.

        This element contains an ID that you use when performing a GetChange action to get detailed information about the change.

        ", "CreateHostedZoneResponse$ChangeInfo": "

        A complex type that describes the changes made to your hosted zone.

        ", "DeleteHostedZoneResponse$ChangeInfo": "

        A complex type that contains the ID, the status, and the date and time of your delete request.

        ", "DisassociateVPCFromHostedZoneResponse$ChangeInfo": "

        A complex type that describes the changes made to your hosted zone.

        ", "GetChangeResponse$ChangeInfo": "

        A complex type that contains information about the specified change batch.

        " } }, "ChangeResourceRecordSetsRequest": { "base": "

        A complex type that contains change information for the resource record set.

        ", "refs": { } }, "ChangeResourceRecordSetsResponse": { "base": "

        A complex type containing the response for the request.

        ", "refs": { } }, "ChangeStatus": { "base": null, "refs": { "ChangeBatchRecord$Status": "

        The current state of the request. PENDING indicates that this request has not yet been applied to all Amazon Route 53 DNS servers.

        Valid Values: PENDING | INSYNC

        ", "ChangeInfo$Status": "

        The current state of the request. PENDING indicates that this request has not yet been applied to all Amazon Route 53 DNS servers.

        " } }, "ChangeTagsForResourceRequest": { "base": "

        A complex type that contains information about the tags that you want to add, edit, or delete.

        ", "refs": { } }, "ChangeTagsForResourceResponse": { "base": "

        Empty response for the request.

        ", "refs": { } }, "Changes": { "base": null, "refs": { "ChangeBatch$Changes": "

        Information about the changes to make to the record sets.

        ", "ChangeBatchRecord$Changes": "

        A list of changes made in the ChangeBatch.

        " } }, "CheckerIpRanges": { "base": null, "refs": { "GetCheckerIpRangesResponse$CheckerIpRanges": "

        A complex type that contains sorted list of IP ranges in CIDR format for Amazon Route 53 health checkers.

        " } }, "ChildHealthCheckList": { "base": null, "refs": { "HealthCheckConfig$ChildHealthChecks": "

        (CALCULATED Health Checks Only) A complex type that contains one ChildHealthCheck element for each health check that you want to associate with a CALCULATED health check.

        ", "UpdateHealthCheckRequest$ChildHealthChecks": "

        A complex type that contains one ChildHealthCheck element for each health check that you want to associate with a CALCULATED health check.

        " } }, "CloudWatchAlarmConfiguration": { "base": "

        A complex type that contains information about the CloudWatch alarm that Amazon Route 53 is monitoring for this health check.

        ", "refs": { "HealthCheck$CloudWatchAlarmConfiguration": "

        A complex type that contains information about the CloudWatch alarm that Amazon Route 53 is monitoring for this health check.

        " } }, "CloudWatchRegion": { "base": null, "refs": { "AlarmIdentifier$Region": "

        A complex type that identifies the CloudWatch alarm that you want Amazon Route 53 health checkers to use to determine whether this health check is healthy.

        For the current list of CloudWatch regions, see Amazon CloudWatch in AWS Regions and Endpoints in the Amazon Web Services General Reference.

        " } }, "ComparisonOperator": { "base": null, "refs": { "CloudWatchAlarmConfiguration$ComparisonOperator": "

        For the metric that the CloudWatch alarm is associated with, the arithmetic operation that is used for the comparison.

        " } }, "ConcurrentModification": { "base": "

        Another user submitted a request to update the object at the same time that you did. Retry the request.

        ", "refs": { } }, "ConflictingDomainExists": { "base": "

        You specified an Amazon VPC that you're already using for another hosted zone, and the domain that you specified for one of the hosted zones is a subdomain of the domain that you specified for the other hosted zone. For example, you cannot use the same Amazon VPC for the hosted zones for example.com and test.example.com.

        ", "refs": { } }, "ConflictingTypes": { "base": "

        You tried to update a traffic policy instance by using a traffic policy version that has a different DNS type than the current type for the instance. You specified the type in the JSON document in the CreateTrafficPolicy or CreateTrafficPolicyVersionrequest.

        ", "refs": { } }, "CreateHealthCheckRequest": { "base": "

        A complex type that contains the health check request information.

        ", "refs": { } }, "CreateHealthCheckResponse": { "base": "

        A complex type containing the response information for the new health check.

        ", "refs": { } }, "CreateHostedZoneRequest": { "base": "

        A complex type containing the hosted zone request information.

        ", "refs": { } }, "CreateHostedZoneResponse": { "base": "

        A complex type containing the response information for the hosted zone.

        ", "refs": { } }, "CreateReusableDelegationSetRequest": { "base": null, "refs": { } }, "CreateReusableDelegationSetResponse": { "base": null, "refs": { } }, "CreateTrafficPolicyInstanceRequest": { "base": "

        A complex type that contains information about the resource record sets that you want to create based on a specified traffic policy.

        ", "refs": { } }, "CreateTrafficPolicyInstanceResponse": { "base": "

        A complex type that contains the response information for the CreateTrafficPolicyInstance request.

        ", "refs": { } }, "CreateTrafficPolicyRequest": { "base": "

        A complex type that contains information about the traffic policy that you want to create.

        ", "refs": { } }, "CreateTrafficPolicyResponse": { "base": "

        A complex type that contains the response information for the CreateTrafficPolicy request.

        ", "refs": { } }, "CreateTrafficPolicyVersionRequest": { "base": "

        A complex type that contains information about the traffic policy for which you want to create a new version.

        ", "refs": { } }, "CreateTrafficPolicyVersionResponse": { "base": "

        A complex type that contains the response information for the CreateTrafficPolicyVersion request.

        ", "refs": { } }, "DNSName": { "base": null, "refs": { "AliasTarget$DNSName": "

        Alias resource record sets only: The value that you specify depends on where you want to route queries:

        • A CloudFront distribution: Specify the domain name that CloudFront assigned when you created your distribution.

          Your CloudFront distribution must include an alternate domain name that matches the name of the resource record set. For example, if the name of the resource record set is acme.example.com, your CloudFront distribution must include acme.example.com as one of the alternate domain names. For more information, see Using Alternate Domain Names (CNAMEs) in the Amazon CloudFront Developer Guide.

        • Elastic Beanstalk environment: Specify the CNAME attribute for the environment. (The environment must have a regionalized domain name.) You can use the following methods to get the value of the CNAME attribute:

          • AWS Managment Console: For information about how to get the value by using the console, see Using Custom Domains with Elastic Beanstalk in the AWS Elastic Beanstalk Developer Guide.

          • Elastic Load Balancing API: Use the DescribeEnvironments action to get the value of the CNAME attribute. For more information, see DescribeEnvironments in the AWS Elastic Beanstalk API Reference.

          • AWS CLI: Use the describe-environments command to get the value of the CNAME attribute. For more information, see describe-environments in the AWS Command Line Interface Reference.

        • An ELB load balancer: Specify the DNS name associated with the load balancer. Get the DNS name by using the AWS Management Console, the ELB API, or the AWS CLI. Use the same method to get values for HostedZoneId and DNSName. If you get one value from the console and the other value from the API or the CLI, creating the resource record set will fail.

          • AWS Management Console: Go to the Amazon EC2 page, click Load Balancers in the navigation pane, choose the load balancer, choose the Description tab, and get the value of the DNS Name field that begins with dualstack. Use the same process to get the Hosted Zone ID. See HostedZone$Id.

          • Elastic Load Balancing API: Use DescribeLoadBalancers to get the value of CanonicalHostedZoneName. Use the same process to get the CanonicalHostedZoneNameId. See HostedZone$Id.

          • AWS CLI: Use describe-load-balancers to get the value of CanonicalHostedZoneName. Use the same process to get the CanonicalHostedZoneNameId. See HostedZoneId.

        • An Amazon S3 bucket that is configured as a static website: Specify the domain name of the Amazon S3 website endpoint in which you created the bucket; for example, s3-website-us-east-1.amazonaws.com. For more information about valid values, see the table Amazon Simple Storage Service (S3) Website Endpoints in the Amazon Web Services General Reference. For more information about using Amazon S3 buckets for websites, see Hosting a Static Website on Amazon S3 in the Amazon Simple Storage Service Developer Guide.

        • Another Amazon Route 53 resource record set: Specify the value of the Name element for a resource record set in the current hosted zone.

        ", "CreateHostedZoneRequest$Name": "

        The name of the domain. For resource record types that include a domain name, specify a fully qualified domain name, for example, www.example.com. The trailing dot is optional; Amazon Route 53 assumes that the domain name is fully qualified. This means that Amazon Route 53 treats www.example.com (without a trailing dot) and www.example.com. (with a trailing dot) as identical.

        If you're creating a public hosted zone, this is the name you have registered with your DNS registrar. If your domain name is registered with a registrar other than Amazon Route 53, change the name servers for your domain to the set of NameServers that CreateHostedZone returns in the DelegationSet element.

        ", "CreateTrafficPolicyInstanceRequest$Name": "

        The domain name (such as example.com) or subdomain name (such as www.example.com) for which Amazon Route 53 responds to DNS queries by using the resource record sets that Amazon Route 53 creates for this traffic policy instance.

        ", "DelegationSetNameServers$member": null, "HostedZone$Name": "

        The name of the domain. For public hosted zones, this is the name that you have registered with your DNS registrar.

        For information about how to specify characters other than a-z, 0-9, and - (hyphen) and how to specify internationalized domain names, see CreateHostedZone.

        ", "ListChangeBatchesByRRSetRequest$Name": "

        The name of the RRSet that you want to see changes for.

        ", "ListHostedZonesByNameRequest$DNSName": "

        (Optional) For your first request to ListHostedZonesByName, include the dnsname parameter only if you want to specify the name of the first hosted zone in the response. If you don't include the dnsname parameter, Amazon Route 53 returns all of the hosted zones that were created by the current AWS account, in ASCII order. For subsequent requests, include both dnsname and hostedzoneid parameters. For dnsname, specify the value of NextDNSName from the previous response.

        ", "ListHostedZonesByNameResponse$DNSName": "

        For the second and subsequent calls to ListHostedZonesByName, DNSName is the value that you specified for the dnsname parameter in the request that produced the current response.

        ", "ListHostedZonesByNameResponse$NextDNSName": "

        If IsTruncated is true, the value of NextDNSName is the name of the first hosted zone in the next group of maxitems hosted zones. Call ListHostedZonesByName again and specify the value of NextDNSName and NextHostedZoneId in the dnsname and hostedzoneid parameters, respectively.

        This element is present only if IsTruncated is true.

        ", "ListResourceRecordSetsRequest$StartRecordName": "

        The first name in the lexicographic ordering of domain names that you want the ListResourceRecordSets request to list.

        ", "ListResourceRecordSetsResponse$NextRecordName": "

        If the results were truncated, the name of the next record in the list.

        This element is present only if IsTruncated is true.

        ", "ListTrafficPolicyInstancesByHostedZoneRequest$TrafficPolicyInstanceNameMarker": "

        For the first request to ListTrafficPolicyInstancesByHostedZone, omit this value.

        If the value of IsTruncated in the previous response was true, TrafficPolicyInstanceNameMarker is the name of the first traffic policy instance in the next group of MaxItems traffic policy instances.

        If the value of IsTruncated in the previous response was false, there are no more traffic policy instances to get for this hosted zone.

        If the value of IsTruncated in the previous response was false, omit this value.

        ", "ListTrafficPolicyInstancesByHostedZoneResponse$TrafficPolicyInstanceNameMarker": "

        If IsTruncated is true, TrafficPolicyInstanceNameMarker is the name of the first traffic policy instance in the next group of MaxItems traffic policy instances.

        ", "ListTrafficPolicyInstancesByPolicyRequest$TrafficPolicyInstanceNameMarker": "

        For the first request to ListTrafficPolicyInstancesByPolicy, omit this value.

        If the value of IsTruncated in the previous response was true, TrafficPolicyInstanceNameMarker is the name of the first traffic policy instance in the next group of MaxItems traffic policy instances.

        If the value of IsTruncated in the previous response was false, there are no more traffic policy instances to get for this hosted zone.

        If the value of IsTruncated in the previous response was false, omit this value.

        ", "ListTrafficPolicyInstancesByPolicyResponse$TrafficPolicyInstanceNameMarker": "

        If IsTruncated is true, TrafficPolicyInstanceNameMarker is the name of the first traffic policy instance in the next group of MaxItems traffic policy instances.

        ", "ListTrafficPolicyInstancesRequest$TrafficPolicyInstanceNameMarker": "

        For the first request to ListTrafficPolicyInstances, omit this value.

        If the value of IsTruncated in the previous response was true, TrafficPolicyInstanceNameMarker is the name of the first traffic policy instance in the next group of MaxItems traffic policy instances.

        If the value of IsTruncated in the previous response was false, there are no more traffic policy instances to get.

        ", "ListTrafficPolicyInstancesResponse$TrafficPolicyInstanceNameMarker": "

        If IsTruncated is true, TrafficPolicyInstanceNameMarker is the name of the first traffic policy instance in the next group of MaxItems traffic policy instances.

        ", "ResourceRecordSet$Name": "

        The name of the domain you want to perform the action on.

        Enter a fully qualified domain name, for example, www.example.com. You can optionally include a trailing dot. If you omit the trailing dot, Amazon Route 53 still assumes that the domain name that you specify is fully qualified. This means that Amazon Route 53 treats www.example.com (without a trailing dot) and www.example.com. (with a trailing dot) as identical.

        For information about how to specify characters other than a-z, 0-9, and - (hyphen) and how to specify internationalized domain names, see DNS Domain Name Format in the Amazon Route 53 Developer Guide.

        You can use the asterisk (*) wildcard to replace the leftmost label in a domain name. For example, *.example.com. Note the following:

        • The * must replace the entire label. For example, you can't specify *prod.example.com or prod*.example.com.

        • The * can't replace any of the middle labels, for example, marketing.*.example.com.

        • If you include * in any position other than the leftmost label in a domain name, DNS treats it as an * character (ASCII 42), not as a wildcard.

          You can't use the * wildcard for resource records sets that have a type of NS.

        You can use the * wildcard as the leftmost label in a domain name, for example, *.example.com. You cannot use an * for one of the middle labels, for example, marketing.*.example.com. In addition, the * must replace the entire label; for example, you can't specify prod*.example.com.

        ", "TestDNSAnswerRequest$RecordName": "

        The name of the resource record set that you want Amazon Route 53 to simulate a query for.

        ", "TestDNSAnswerResponse$RecordName": "

        The name of the resource record set that you submitted a request for.

        ", "TrafficPolicyInstance$Name": "

        The DNS name, such as www.example.com, for which Amazon Route 53 responds to queries by using the resource record sets that are associated with this traffic policy instance.

        " } }, "DNSRCode": { "base": null, "refs": { "TestDNSAnswerResponse$ResponseCode": "

        A code that indicates whether the request is valid or not. The most common response code is NOERROR, meaning that the request is valid. If the response is not valid, Amazon Route 53 returns a response code that describes the error. For a list of possible response codes, see DNS RCODES on the IANA website.

        " } }, "Date": { "base": null, "refs": { "ListChangeBatchesByHostedZoneRequest$StartDate": "

        The start of the time period you want to see changes for.

        ", "ListChangeBatchesByHostedZoneRequest$EndDate": "

        The end of the time period you want to see changes for.

        ", "ListChangeBatchesByRRSetRequest$StartDate": "

        The start of the time period you want to see changes for.

        ", "ListChangeBatchesByRRSetRequest$EndDate": "

        The end of the time period you want to see changes for.

        " } }, "DelegationSet": { "base": "

        A complex type that describes the name servers for this hosted zone.

        ", "refs": { "CreateHostedZoneResponse$DelegationSet": "

        A complex type that describes the name servers for this hosted zone.

        ", "CreateReusableDelegationSetResponse$DelegationSet": "

        A complex type that contains name server information.

        ", "DelegationSets$member": null, "GetHostedZoneResponse$DelegationSet": "

        A complex type that describes the name servers for this hosted zone.

        ", "GetReusableDelegationSetResponse$DelegationSet": "

        A complex type that contains information about the reusable delegation set.

        " } }, "DelegationSetAlreadyCreated": { "base": "

        A delegation set with the same owner and caller reference combination has already been created.

        ", "refs": { } }, "DelegationSetAlreadyReusable": { "base": "

        The specified delegation set has already been marked as reusable.

        ", "refs": { } }, "DelegationSetInUse": { "base": "

        The specified delegation contains associated hosted zones which must be deleted before the reusable delegation set can be deleted.

        ", "refs": { } }, "DelegationSetNameServers": { "base": null, "refs": { "DelegationSet$NameServers": "

        A complex type that contains a list of the authoritative name servers for the hosted zone.

        " } }, "DelegationSetNotAvailable": { "base": "

        You can create a hosted zone that has the same name as an existing hosted zone (example.com is common), but there is a limit to the number of hosted zones that have the same name. If you get this error, Amazon Route 53 has reached that limit. If you own the domain name and Amazon Route 53 generates this error, contact Customer Support.

        ", "refs": { } }, "DelegationSetNotReusable": { "base": "

        A reusable delegation set with the specified ID does not exist.

        ", "refs": { } }, "DelegationSets": { "base": null, "refs": { "ListReusableDelegationSetsResponse$DelegationSets": "

        A complex type that contains one DelegationSet element for each reusable delegation set that was created by the current AWS account.

        " } }, "DeleteHealthCheckRequest": { "base": "

        This action deletes a health check. Send a DELETE request to the /2013-04-01/DeleteHealthCheckRequest resource.

        ", "refs": { } }, "DeleteHealthCheckResponse": { "base": "

        An empty element.

        ", "refs": { } }, "DeleteHostedZoneRequest": { "base": "

        A complex type that contains information about the hosted zone that you want to delete.

        ", "refs": { } }, "DeleteHostedZoneResponse": { "base": "

        A complex type containing the response information for the request.

        ", "refs": { } }, "DeleteReusableDelegationSetRequest": { "base": "

        A complex type containing the information for the delete request.

        ", "refs": { } }, "DeleteReusableDelegationSetResponse": { "base": "

        An empty element.

        ", "refs": { } }, "DeleteTrafficPolicyInstanceRequest": { "base": "

        A complex type that contains information about the traffic policy instance that you want to delete.

        ", "refs": { } }, "DeleteTrafficPolicyInstanceResponse": { "base": "

        An empty element.

        ", "refs": { } }, "DeleteTrafficPolicyRequest": { "base": "

        A request to delete a specified traffic policy version.

        ", "refs": { } }, "DeleteTrafficPolicyResponse": { "base": "

        An empty element.

        ", "refs": { } }, "Dimension": { "base": "

        For the metric that the CloudWatch alarm is associated with, a complex type that contains information about one dimension.

        ", "refs": { "DimensionList$member": null } }, "DimensionField": { "base": null, "refs": { "Dimension$Name": "

        For the metric that the CloudWatch alarm is associated with, the name of one dimension.

        ", "Dimension$Value": "

        For the metric that the CloudWatch alarm is associated with, the value of one dimension.

        " } }, "DimensionList": { "base": null, "refs": { "CloudWatchAlarmConfiguration$Dimensions": "

        For the metric that the CloudWatch alarm is associated with, a complex type that contains information about the dimensions for the metric.For information, see Amazon CloudWatch Namespaces, Dimensions, and Metrics Reference in the Amazon CloudWatch Developer Guide.

        " } }, "DisassociateVPCComment": { "base": null, "refs": { "DisassociateVPCFromHostedZoneRequest$Comment": "

        Optional: A comment about the disassociation request.

        " } }, "DisassociateVPCFromHostedZoneRequest": { "base": "

        A complex type that contains information about the VPC and the hosted zone that you want to disassociate.

        ", "refs": { } }, "DisassociateVPCFromHostedZoneResponse": { "base": "

        A complex type that contains the response information for the disassociate request.

        ", "refs": { } }, "EnableSNI": { "base": null, "refs": { "HealthCheckConfig$EnableSNI": "

        Specify whether you want Amazon Route 53 to send the value of FullyQualifiedDomainName to the endpoint in the client_hello message during TLS negotiation. This allows the endpoint to respond to HTTPS health check requests with the applicable SSL/TLS certificate.

        Some endpoints require that HTTPS requests include the host name in the client_hello message. If you don't enable SNI, the status of the health check will be SSL alert handshake_failure. A health check can also have that status for other reasons. If SNI is enabled and you're still getting the error, check the SSL/TLS configuration on your endpoint and confirm that your certificate is valid.

        The SSL/TLS certificate on your endpoint includes a domain name in the Common Name field and possibly several more in the Subject Alternative Names field. One of the domain names in the certificate should match the value that you specify for FullyQualifiedDomainName. If the endpoint responds to the client_hello message with a certificate that does not include the domain name that you specified in FullyQualifiedDomainName, a health checker will retry the handshake. In the second attempt, the health checker will omit FullyQualifiedDomainName from the client_hello message.

        ", "UpdateHealthCheckRequest$EnableSNI": "

        Specify whether you want Amazon Route 53 to send the value of FullyQualifiedDomainName to the endpoint in the client_hello message during TLS negotiation. This allows the endpoint to respond to HTTPS health check requests with the applicable SSL/TLS certificate.

        Some endpoints require that HTTPS requests include the host name in the client_hello message. If you don't enable SNI, the status of the health check will be SSL alert handshake_failure. A health check can also have that status for other reasons. If SNI is enabled and you're still getting the error, check the SSL/TLS configuration on your endpoint and confirm that your certificate is valid.

        The SSL/TLS certificate on your endpoint includes a domain name in the Common Name field and possibly several more in the Subject Alternative Names field. One of the domain names in the certificate should match the value that you specify for FullyQualifiedDomainName. If the endpoint responds to the client_hello message with a certificate that does not include the domain name that you specified in FullyQualifiedDomainName, a health checker will retry the handshake. In the second attempt, the health checker will omit FullyQualifiedDomainName from the client_hello message.

        " } }, "ErrorMessage": { "base": null, "refs": { "ConcurrentModification$message": "

        Descriptive message for the error response.

        ", "ConflictingDomainExists$message": null, "ConflictingTypes$message": "

        Descriptive message for the error response.

        ", "DelegationSetAlreadyCreated$message": "

        Descriptive message for the error response.

        ", "DelegationSetAlreadyReusable$message": "

        Descriptive message for the error response.

        ", "DelegationSetInUse$message": "

        Descriptive message for the error response.

        ", "DelegationSetNotAvailable$message": "

        Descriptive message for the error response.

        ", "DelegationSetNotReusable$message": "

        Descriptive message for the error response.

        ", "ErrorMessages$member": null, "HealthCheckAlreadyExists$message": "

        Descriptive message for the error response.

        ", "HealthCheckInUse$message": "

        Descriptive message for the error response.

        ", "HealthCheckVersionMismatch$message": null, "HostedZoneAlreadyExists$message": "

        Descriptive message for the error response.

        ", "HostedZoneNotEmpty$message": "

        Descriptive message for the error response.

        ", "HostedZoneNotFound$message": "

        Descriptive message for the error response.

        ", "IncompatibleVersion$message": null, "InvalidArgument$message": "

        Descriptive message for the error response.

        ", "InvalidDomainName$message": "

        Descriptive message for the error response.

        ", "InvalidInput$message": "

        Descriptive message for the error response.

        ", "InvalidTrafficPolicyDocument$message": "

        Descriptive message for the error response.

        ", "InvalidVPCId$message": "

        Descriptive message for the error response.

        ", "LastVPCAssociation$message": "

        Descriptive message for the error response.

        ", "LimitsExceeded$message": "

        Descriptive message for the error response.

        ", "NoSuchChange$message": null, "NoSuchDelegationSet$message": "

        Descriptive message for the error response.

        ", "NoSuchGeoLocation$message": "

        Descriptive message for the error response.

        ", "NoSuchHealthCheck$message": "

        Descriptive message for the error response.

        ", "NoSuchHostedZone$message": "

        Descriptive message for the error response.

        ", "NoSuchTrafficPolicy$message": "

        Descriptive message for the error response.

        ", "NoSuchTrafficPolicyInstance$message": "

        Descriptive message for the error response.

        ", "PriorRequestNotComplete$message": null, "PublicZoneVPCAssociation$message": "

        Descriptive message for the error response.

        ", "ThrottlingException$message": null, "TooManyHealthChecks$message": null, "TooManyHostedZones$message": "

        Descriptive message for the error response.

        ", "TooManyTrafficPolicies$message": "

        Descriptive message for the error response.

        ", "TooManyTrafficPolicyInstances$message": "

        Descriptive message for the error response.

        ", "TrafficPolicyAlreadyExists$message": "

        Descriptive message for the error response.

        ", "TrafficPolicyInUse$message": "

        Descriptive message for the error response.

        ", "TrafficPolicyInstanceAlreadyExists$message": "

        Descriptive message for the error response.

        ", "VPCAssociationNotFound$message": "

        Descriptive message for the error response.

        " } }, "ErrorMessages": { "base": null, "refs": { "InvalidChangeBatch$messages": "

        Descriptive message for the error response.

        " } }, "EvaluationPeriods": { "base": null, "refs": { "CloudWatchAlarmConfiguration$EvaluationPeriods": "

        For the metric that the CloudWatch alarm is associated with, the number of periods that the metric is compared to the threshold.

        " } }, "FailureThreshold": { "base": null, "refs": { "HealthCheckConfig$FailureThreshold": "

        The number of consecutive health checks that an endpoint must pass or fail for Amazon Route 53 to change the current status of the endpoint from unhealthy to healthy or vice versa. For more information, see How Amazon Route 53 Determines Whether an Endpoint Is Healthy in the Amazon Route 53 Developer Guide.

        ", "UpdateHealthCheckRequest$FailureThreshold": "

        The number of consecutive health checks that an endpoint must pass or fail for Amazon Route 53 to change the current status of the endpoint from unhealthy to healthy or vice versa. For more information, see How Amazon Route 53 Determines Whether an Endpoint Is Healthy in the Amazon Route 53 Developer Guide.

        " } }, "FullyQualifiedDomainName": { "base": null, "refs": { "HealthCheckConfig$FullyQualifiedDomainName": "

        Amazon Route 53 behavior depends on whether you specify a value for IPAddress.

        If you specify IPAddress:

        The value that you want Amazon Route 53 to pass in the Host header in all health checks except TCP health checks. This is typically the fully qualified DNS name of the website that you are attempting to health check. When Amazon Route 53 checks the health of an endpoint, here is how it constructs the Host header:

        • If you specify a value of 80 for Port and HTTP or HTTP_STR_MATCH for Type, Amazon Route 53 passes the value of FullyQualifiedDomainName to the endpoint in the Host header.

        • If you specify a value of 443 for Port and HTTPS or HTTPS_STR_MATCH for Type, Amazon Route 53 passes the value of FullyQualifiedDomainName to the endpoint in the Host header.

        • If you specify another value for Port and any value except TCP for Type, Amazon Route 53 passes FullyQualifiedDomainName:Port to the endpoint in the Host header.

        If you don't specify a value for FullyQualifiedDomainName, Amazon Route 53 substitutes the value of IPAddress in the Host header in each of the preceding cases.

        If you don't specify IPAddress:

        If you don't specify a value for IPAddress, Amazon Route 53 sends a DNS request to the domain that you specify in FullyQualifiedDomainName at the interval you specify in RequestInterval. Using an IP address that DNS returns, Amazon Route 53 then checks the health of the endpoint.

        If you want to check the health of weighted, latency, or failover resource record sets and you choose to specify the endpoint only by FullyQualifiedDomainName, we recommend that you create a separate health check for each endpoint. For example, create a health check for each HTTP server that is serving content for www.example.com. For the value of FullyQualifiedDomainName, specify the domain name of the server (such as us-east-1-www.example.com), not the name of the resource record sets (www.example.com).

        In this configuration, if you create a health check for which the value of FullyQualifiedDomainName matches the name of the resource record sets and you then associate the health check with those resource record sets, health check results will be unpredictable.

        In addition, if the value that you specify for Type is HTTP, HTTPS, HTTP_STR_MATCH, or HTTPS_STR_MATCH, Amazon Route 53 passes the value of FullyQualifiedDomainName in the Host header, as it does when you specify a value for IPAddress. If the value of Type is TCP, Amazon Route 53 doesn't pass a Host header.

        ", "UpdateHealthCheckRequest$FullyQualifiedDomainName": "

        Amazon Route 53 behavior depends on whether you specify a value for IPAddress.

        If a health check already has a value for IPAddress, you can change the value. However, you can't update an existing health check to add or remove the value of IPAddress.

        If you specify IPAddress:

        The value that you want Amazon Route 53 to pass in the Host header in all health checks except TCP health checks. This is typically the fully qualified DNS name of the endpoint on which you want Amazon Route 53 to perform health checks. When Amazon Route 53 checks the health of an endpoint, here is how it constructs the Host header:

        • If you specify a value of 80 for Port and HTTP or HTTP_STR_MATCH for Type, Amazon Route 53 passes the value of FullyQualifiedDomainName to the endpoint in the Host header.

        • If you specify a value of 443 for Port and HTTPS or HTTPS_STR_MATCH for Type, Amazon Route 53 passes the value of FullyQualifiedDomainName to the endpoint in the Host header.

        • If you specify another value for Port and any value except TCP for Type, Amazon Route 53 passes FullyQualifiedDomainName:Port to the endpoint in the Host header.

        If you don't specify a value for FullyQualifiedDomainName, Amazon Route 53 substitutes the value of IPAddress in the Host header in each of the above cases.

        If you don't specify IPAddress:

        If you don't specify a value for IPAddress, Amazon Route 53 sends a DNS request to the domain that you specify in FullyQualifiedDomainName at the interval you specify in RequestInterval. Using an IP address that DNS returns, Amazon Route 53 then checks the health of the endpoint.

        If you want to check the health of weighted, latency, or failover resource record sets and you choose to specify the endpoint only by FullyQualifiedDomainName, we recommend that you create a separate health check for each endpoint. For example, create a health check for each HTTP server that is serving content for www.example.com. For the value of FullyQualifiedDomainName, specify the domain name of the server (such as us-east-1-www.example.com), not the name of the resource record sets (www.example.com).

        In this configuration, if the value of FullyQualifiedDomainName matches the name of the resource record sets and you then associate the health check with those resource record sets, health check results will be unpredictable.

        In addition, if the value of Type is HTTP, HTTPS, HTTP_STR_MATCH, or HTTPS_STR_MATCH, Amazon Route 53 passes the value of FullyQualifiedDomainName in the Host header, as it does when you specify a value for IPAddress. If the value of Type is TCP, Amazon Route 53 doesn't pass a Host header.

        " } }, "GeoLocation": { "base": "

        A complex type that contains information about a geo location.

        ", "refs": { "ResourceRecordSet$GeoLocation": "

        Geo location resource record sets only: A complex type that lets you control how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. For example, if you want all queries from Africa to be routed to a web server with an IP address of 192.0.2.111, create a resource record set with a Type of A and a ContinentCode of AF.

        Creating geolocation and geolocation alias resource record sets in private hosted zones is not supported.

        If you create separate resource record sets for overlapping geographic regions (for example, one resource record set for a continent and one for a country on the same continent), priority goes to the smallest geographic region. This allows you to route most queries for a continent to one resource and to route queries for a country on that continent to a different resource.

        You cannot create two geolocation resource record sets that specify the same geographic location.

        The value * in the CountryCode element matches all geographic locations that aren't specified in other geolocation resource record sets that have the same values for the Name and Type elements.

        Geolocation works by mapping IP addresses to locations. However, some IP addresses aren't mapped to geographic locations, so even if you create geolocation resource record sets that cover all seven continents, Amazon Route 53 will receive some DNS queries from locations that it can't identify. We recommend that you create a resource record set for which the value of CountryCode is *, which handles both queries that come from locations for which you haven't created geolocation resource record sets and queries from IP addresses that aren't mapped to a location. If you don't create a * resource record set, Amazon Route 53 returns a \"no answer\" response for queries from those locations.

        You cannot create non-geolocation resource record sets that have the same values for the Name and Type elements as geolocation resource record sets.

        " } }, "GeoLocationContinentCode": { "base": null, "refs": { "GeoLocation$ContinentCode": "

        The two-letter code for the continent.

        Valid values: AF | AN | AS | EU | OC | NA | SA

        Constraint: Specifying ContinentCode with either CountryCode or SubdivisionCode returns an InvalidInput error.

        ", "GeoLocationDetails$ContinentCode": "

        The two-letter code for the continent.

        ", "GetGeoLocationRequest$ContinentCode": "

        Amazon Route 53 supports the following continent codes:

        • AF: Africa

        • AN: Antarctica

        • AS: Asia

        • EU: Europe

        • OC: Oceania

        • NA: North America

        • SA: South America

        ", "ListGeoLocationsRequest$StartContinentCode": "

        The code for the continent with which you want to start listing locations that Amazon Route 53 supports for geolocation. If Amazon Route 53 has already returned a page or more of results, if IsTruncated is true, and if NextContinentCode from the previous response has a value, enter that value in StartContinentCode to return the next page of results.

        Include StartContinentCode only if you want to list continents. Don't include StartContinentCode when you're listing countries or countries with their subdivisions.

        ", "ListGeoLocationsResponse$NextContinentCode": "

        If IsTruncated is true, you can make a follow-up request to display more locations. Enter the value of NextContinentCode in the StartContinentCode parameter in another GET ListGeoLocations request.

        " } }, "GeoLocationContinentName": { "base": null, "refs": { "GeoLocationDetails$ContinentName": "

        The full name of the continent.

        " } }, "GeoLocationCountryCode": { "base": null, "refs": { "GeoLocation$CountryCode": "

        The two-letter code for the country.

        ", "GeoLocationDetails$CountryCode": "

        The two-letter code for the country.

        ", "GetGeoLocationRequest$CountryCode": "

        Amazon Route 53 uses the two-letter country codes that are specified in ISO standard 3166-1 alpha-2.

        ", "ListGeoLocationsRequest$StartCountryCode": "

        The code for the country with which you want to start listing locations that Amazon Route 53 supports for geolocation. If Amazon Route 53 has already returned a page or more of results, if IsTruncated is true, and if NextCountryCode from the previous response has a value, enter that value in StartCountryCode to return the next page of results.

        Amazon Route 53 uses the two-letter country codes that are specified in ISO standard 3166-1 alpha-2.

        ", "ListGeoLocationsResponse$NextCountryCode": "

        If IsTruncated is true, you can make a follow-up request to display more locations. Enter the value of NextCountryCode in the StartCountryCode parameter in another GET ListGeoLocations request.

        " } }, "GeoLocationCountryName": { "base": null, "refs": { "GeoLocationDetails$CountryName": "

        The name of the country.

        " } }, "GeoLocationDetails": { "base": "

        A complex type that contains the codes and full continent, country, and subdivision names for the specified geolocation code.

        ", "refs": { "GeoLocationDetailsList$member": null, "GetGeoLocationResponse$GeoLocationDetails": "

        A complex type that contains the codes and full continent, country, and subdivision names for the specified geolocation code.

        " } }, "GeoLocationDetailsList": { "base": null, "refs": { "ListGeoLocationsResponse$GeoLocationDetailsList": "

        A complex type that contains one GeoLocationDetails element for each location that Amazon Route 53 supports for geolocation.

        " } }, "GeoLocationSubdivisionCode": { "base": null, "refs": { "GeoLocation$SubdivisionCode": "

        The code for the subdivision, for example, a state in the United States or a province in Canada.

        ", "GeoLocationDetails$SubdivisionCode": "

        The code for the subdivision, for example, a state in the United States or a province in Canada.

        ", "GetGeoLocationRequest$SubdivisionCode": "

        Amazon Route 53 uses the one- to three-letter subdivision codes that are specified in ISO standard 3166-1 alpha-2. Amazon Route 53 doesn't support subdivision codes for all countries. If you specify SubdivisionCode, you must also specify CountryCode.

        ", "ListGeoLocationsRequest$StartSubdivisionCode": "

        The code for the subdivision (for example, state or province) with which you want to start listing locations that Amazon Route 53 supports for geolocation. If Amazon Route 53 has already returned a page or more of results, if IsTruncated is true, and if NextSubdivisionCode from the previous response has a value, enter that value in StartSubdivisionCode to return the next page of results.

        To list subdivisions of a country, you must include both StartCountryCode and StartSubdivisionCode.

        ", "ListGeoLocationsResponse$NextSubdivisionCode": "

        If IsTruncated is true, you can make a follow-up request to display more locations. Enter the value of NextSubdivisionCode in the StartSubdivisionCode parameter in another GET ListGeoLocations request.

        " } }, "GeoLocationSubdivisionName": { "base": null, "refs": { "GeoLocationDetails$SubdivisionName": "

        The full name of the subdivision, for example, a state in the United States or a province in Canada.

        " } }, "GetChangeDetailsRequest": { "base": "

        The input for a GetChangeDetails request.

        ", "refs": { } }, "GetChangeDetailsResponse": { "base": "

        A complex type that contains the ChangeBatchRecord element.

        ", "refs": { } }, "GetChangeRequest": { "base": "

        The input for a GetChange request.

        ", "refs": { } }, "GetChangeResponse": { "base": "

        A complex type that contains the ChangeInfo element.

        ", "refs": { } }, "GetCheckerIpRangesRequest": { "base": "

        Empty request.

        ", "refs": { } }, "GetCheckerIpRangesResponse": { "base": "

        A complex type that contains the CheckerIpRanges element.

        ", "refs": { } }, "GetGeoLocationRequest": { "base": "

        A complex type that contains information about the request to get a geo location.

        ", "refs": { } }, "GetGeoLocationResponse": { "base": "

        A complex type that contains the response information for the specified geolocation code.

        ", "refs": { } }, "GetHealthCheckCountRequest": { "base": "

        To retrieve a count of all your health checks, send a GET request to the /2013-04-01/healthcheckcount resource.

        ", "refs": { } }, "GetHealthCheckCountResponse": { "base": "

        A complex type that contains the response to a healthcheckcount request.

        ", "refs": { } }, "GetHealthCheckLastFailureReasonRequest": { "base": "

        This action gets the reason that a specified health check failed most recently.

        To get the reason for the last failure of a health check, send a GET request to the /2013-04-01/healthcheck/health check ID/lastfailurereason resource.

        For information about viewing the last failure reason for a health check using the Amazon Route 53 console, see Viewing Health Check Status and the Reason for Health Check Failures in the Amazon Route 53 Developer Guide.

        ", "refs": { } }, "GetHealthCheckLastFailureReasonResponse": { "base": "

        A complex type that contains the response to a GetHealthCheckLastFailureReason request.

        ", "refs": { } }, "GetHealthCheckRequest": { "base": "

        This action gets information about a specified health check.

        Send a GET request to the /Amazon Route 53 API version/gethealthcheckrequest resource.

        For information about getting information about a health check using the Amazon Route 53 console, see Amazon Route 53 Health Checks and DNS Failover in the Amazon Route 53 Developer Guide.

        ", "refs": { } }, "GetHealthCheckResponse": { "base": "

        A complex type that contains the response to a GetHealthCheck request.

        ", "refs": { } }, "GetHealthCheckStatusRequest": { "base": "

        A complex type that contains information about the request to get health check status for a health check.

        ", "refs": { } }, "GetHealthCheckStatusResponse": { "base": "

        A complex type that contains the response to a GetHealthCheck request.

        ", "refs": { } }, "GetHostedZoneCountRequest": { "base": "

        To retrieve a count of all your hosted zones, send a GET request to the /2013-04-01/hostedzonecount resource.

        ", "refs": { } }, "GetHostedZoneCountResponse": { "base": "

        A complex type that contains the response to a hostedzonecount request.

        ", "refs": { } }, "GetHostedZoneRequest": { "base": "

        The input for a GetHostedZone request.

        ", "refs": { } }, "GetHostedZoneResponse": { "base": "

        A complex type containing the response information for the hosted zone.

        ", "refs": { } }, "GetReusableDelegationSetRequest": { "base": "

        The input for a GetReusableDelegationSet request.

        ", "refs": { } }, "GetReusableDelegationSetResponse": { "base": "

        A complex type that contains the response to the GetReusableDelegationSet request.

        ", "refs": { } }, "GetTrafficPolicyInstanceCountRequest": { "base": "

        To retrieve a count of all your traffic policy instances, send a GET request to the /2013-04-01/trafficpolicyinstancecount resource.

        ", "refs": { } }, "GetTrafficPolicyInstanceCountResponse": { "base": "

        A complex type that contains information about the resource record sets that Amazon Route 53 created based on a specified traffic policy.

        ", "refs": { } }, "GetTrafficPolicyInstanceRequest": { "base": "

        Gets information about a specified traffic policy instance.

        To get information about a traffic policy instance, send a GET request to the /Amazon Route 53 API version/trafficpolicyinstance/Id resource.

        ", "refs": { } }, "GetTrafficPolicyInstanceResponse": { "base": "

        A complex type that contains information about the resource record sets that Amazon Route 53 created based on a specified traffic policy.

        ", "refs": { } }, "GetTrafficPolicyRequest": { "base": "

        Gets information about a specific traffic policy version. To get the information, send a GET request to the /2013-04-01/trafficpolicy resource, and specify the ID and the version of the traffic policy.

        ", "refs": { } }, "GetTrafficPolicyResponse": { "base": "

        A complex type that contains the response information for the request.

        ", "refs": { } }, "HealthCheck": { "base": "

        A complex type that contains information about one health check that is associated with the current AWS account.

        ", "refs": { "CreateHealthCheckResponse$HealthCheck": "

        A complex type that contains identifying information about the health check.

        ", "GetHealthCheckResponse$HealthCheck": "

        A complex type that contains information about one health check that is associated with the current AWS account.

        ", "HealthChecks$member": null, "UpdateHealthCheckResponse$HealthCheck": null } }, "HealthCheckAlreadyExists": { "base": "

        The health check you're attempting to create already exists.

        Amazon Route 53 returns this error when a health check has already been created with the specified value for CallerReference.

        ", "refs": { } }, "HealthCheckConfig": { "base": "

        A complex type that contains information about the health check.

        ", "refs": { "CreateHealthCheckRequest$HealthCheckConfig": "

        A complex type that contains the response to a CreateHealthCheck request.

        ", "HealthCheck$HealthCheckConfig": "

        A complex type that contains detailed information about one health check.

        " } }, "HealthCheckCount": { "base": null, "refs": { "GetHealthCheckCountResponse$HealthCheckCount": "

        The number of health checks associated with the current AWS account.

        " } }, "HealthCheckId": { "base": null, "refs": { "ChildHealthCheckList$member": null, "DeleteHealthCheckRequest$HealthCheckId": "

        The ID of the health check that you want to delete.

        ", "GetHealthCheckLastFailureReasonRequest$HealthCheckId": "

        The ID for the health check for which you want the last failure reason. When you created the health check, CreateHealthCheck returned the ID in the response, in the HealthCheckId element.

        ", "GetHealthCheckRequest$HealthCheckId": "

        The identifier that Amazon Route 53 assigned to the health check when you created it. When you add or update a resource record set, you use this value to specify which health check to use. The value can be up to 64 characters long.

        ", "GetHealthCheckStatusRequest$HealthCheckId": "

        If you want Amazon Route 53 to return this resource record set in response to a DNS query only when a health check is passing, include the HealthCheckId element and specify the ID of the applicable health check.

        Amazon Route 53 determines whether a resource record set is healthy by periodically sending a request to the endpoint that is specified in the health check. If that endpoint returns an HTTP status code of 2xx or 3xx, the endpoint is healthy. If the endpoint returns an HTTP status code of 400 or greater, or if the endpoint doesn't respond for a certain amount of time, Amazon Route 53 considers the endpoint unhealthy and also considers the resource record set unhealthy.

        The HealthCheckId element is only useful when Amazon Route 53 is choosing between two or more resource record sets to respond to a DNS query, and you want Amazon Route 53 to base the choice in part on the status of a health check. Configuring health checks only makes sense in the following configurations:

        • You're checking the health of the resource record sets in a weighted, latency, geolocation, or failover resource record set, and you specify health check IDs for all of the resource record sets. If the health check for one resource record set specifies an endpoint that is not healthy, Amazon Route 53 stops responding to queries using the value for that resource record set.

        • You set EvaluateTargetHealth to true for the resource record sets in an alias, weighted alias, latency alias, geolocation alias, or failover alias resource record set, and you specify health check IDs for all of the resource record sets that are referenced by the alias resource record sets. For more information about this configuration, see EvaluateTargetHealth.

          Amazon Route 53 doesn't check the health of the endpoint specified in the resource record set, for example, the endpoint specified by the IP address in the Value element. When you add a HealthCheckId element to a resource record set, Amazon Route 53 checks the health of the endpoint that you specified in the health check.

        For geolocation resource record sets, if an endpoint is unhealthy, Amazon Route 53 looks for a resource record set for the larger, associated geographic region. For example, suppose you have resource record sets for a state in the United States, for the United States, for North America, and for all locations. If the endpoint for the state resource record set is unhealthy, Amazon Route 53 checks the resource record sets for the United States, for North America, and for all locations (a resource record set for which the value of CountryCode is *), in that order, until it finds a resource record set for which the endpoint is healthy.

        If your health checks specify the endpoint only by domain name, we recommend that you create a separate health check for each endpoint. For example, create a health check for each HTTP server that is serving content for www.example.com. For the value of FullyQualifiedDomainName, specify the domain name of the server (such as us-east-1-www.example.com), not the name of the resource record sets (example.com).

        In this configuration, if you create a health check for which the value of FullyQualifiedDomainName matches the name of the resource record sets and then associate the health check with those resource record sets, health check results will be unpredictable.

        ", "HealthCheck$Id": "

        The identifier that Amazon Route 53assigned to the health check when you created it. When you add or update a resource record set, you use this value to specify which health check to use. The value can be up to 64 characters long.

        ", "ResourceRecordSet$HealthCheckId": "

        If you want Amazon Route 53 to return this resource record set in response to a DNS query only when a health check is passing, include the HealthCheckId element and specify the ID of the applicable health check.

        Amazon Route 53 determines whether a resource record set is healthy based on one of the following:

        • By periodically sending a request to the endpoint that is specified in the health check

        • By aggregating the status of a specified group of health checks (calculated health checks)

        • By determining the current state of a CloudWatch alarm (CloudWatch metric health checks)

        For information about how Amazon Route 53 determines whether a health check is healthy, see CreateHealthCheck.

        The HealthCheckId element is only useful when Amazon Route 53 is choosing between two or more resource record sets to respond to a DNS query, and you want Amazon Route 53 to base the choice in part on the status of a health check. Configuring health checks only makes sense in the following configurations:

        • You're checking the health of the resource record sets in a weighted, latency, geolocation, or failover resource record set, and you specify health check IDs for all of the resource record sets. If the health check for one resource record set specifies an endpoint that is not healthy, Amazon Route 53 stops responding to queries using the value for that resource record set.

        • You set EvaluateTargetHealth to true for the resource record sets in an alias, weighted alias, latency alias, geolocation alias, or failover alias resource record set, and you specify health check IDs for all of the resource record sets that are referenced by the alias resource record sets.

        Amazon Route 53 doesn't check the health of the endpoint specified in the resource record set, for example, the endpoint specified by the IP address in the Value element. When you add a HealthCheckId element to a resource record set, Amazon Route 53 checks the health of the endpoint that you specified in the health check.

        For geolocation resource record sets, if an endpoint is unhealthy, Amazon Route 53 looks for a resource record set for the larger, associated geographic region. For example, suppose you have resource record sets for a state in the United States, for the United States, for North America, and for all locations. If the endpoint for the state resource record set is unhealthy, Amazon Route 53 checks the resource record sets for the United States, for North America, and for all locations (a resource record set for which the value of CountryCode is *), in that order, until it finds a resource record set for which the endpoint is healthy.

        If your health checks specify the endpoint only by domain name, we recommend that you create a separate health check for each endpoint. For example, create a health check for each HTTP server that is serving content for www.example.com. For the value of FullyQualifiedDomainName, specify the domain name of the server (such as us-east-1-www.example.com), not the name of the resource record sets (example.com).

        n this configuration, if you create a health check for which the value of FullyQualifiedDomainName matches the name of the resource record sets and then associate the health check with those resource record sets, health check results will be unpredictable.

        For more information, see the following topics in the Amazon Route 53 Developer Guide:

        ", "UpdateHealthCheckRequest$HealthCheckId": "

        The ID for the health check for which you want detailed information. When you created the health check, CreateHealthCheck returned the ID in the response, in the HealthCheckId element.

        " } }, "HealthCheckInUse": { "base": "

        The health check ID for this health check is referenced in the HealthCheckId element in one of the resource record sets in one of the hosted zones that are owned by the current AWS account.

        ", "refs": { } }, "HealthCheckNonce": { "base": null, "refs": { "CreateHealthCheckRequest$CallerReference": "

        A unique string that identifies the request and that allows failed CreateHealthCheck requests to be retried without the risk of executing the operation twice. You must use a unique CallerReference string every time you create a health check.

        ", "HealthCheck$CallerReference": "

        A unique string that you specified when you created the health check.

        " } }, "HealthCheckObservation": { "base": "

        A complex type that contains the last failure reason as reported by one Amazon Route 53 health checker.

        ", "refs": { "HealthCheckObservations$member": null } }, "HealthCheckObservations": { "base": null, "refs": { "GetHealthCheckLastFailureReasonResponse$HealthCheckObservations": "

        A list that contains one Observation element for each Amazon Route 53 health checker that is reporting a last failure reason.

        ", "GetHealthCheckStatusResponse$HealthCheckObservations": "

        A list that contains one HealthCheckObservation element for each Amazon Route 53 health checker that is reporting a status about the health check endpoint.

        " } }, "HealthCheckRegion": { "base": "

        An Amazon EC2 region that you want Amazon Route 53 to use to perform health checks.

        ", "refs": { "HealthCheckObservation$Region": "

        The region of the Amazon Route 53 health checker that provided the status in StatusReport.

        ", "HealthCheckRegionList$member": null } }, "HealthCheckRegionList": { "base": null, "refs": { "HealthCheckConfig$Regions": "

        A complex type that contains one Region element for each region from which you want Amazon Route 53 health checkers to check the specified endpoint.

        ", "UpdateHealthCheckRequest$Regions": "

        A complex type that contains one Region element for each region from which you want Amazon Route 53 health checkers to check the specified endpoint.

        " } }, "HealthCheckType": { "base": null, "refs": { "HealthCheckConfig$Type": "

        The type of health check that you want to create, which indicates how Amazon Route 53 determines whether an endpoint is healthy.

        You can't change the value of Type after you create a health check.

        You can create the following types of health checks:

        • HTTP: Amazon Route 53 tries to establish a TCP connection. If successful, Amazon Route 53 submits an HTTP request and waits for an HTTP status code of 200 or greater and less than 400.

        • HTTPS: Amazon Route 53 tries to establish a TCP connection. If successful, Amazon Route 53 submits an HTTPS request and waits for an HTTP status code of 200 or greater and less than 400.

          If you specify HTTPS for the value of Type, the endpoint must support TLS v1.0 or later.

        • HTTP_STR_MATCH: Amazon Route 53 tries to establish a TCP connection. If successful, Amazon Route 53 submits an HTTP request and searches the first 5,120 bytes of the response body for the string that you specify in SearchString.

        • HTTPS_STR_MATCH: Amazon Route 53 tries to establish a TCP connection. If successful, Amazon Route 53 submits an HTTPS request and searches the first 5,120 bytes of the response body for the string that you specify in SearchString.

        • TCP: Amazon Route 53 tries to establish a TCP connection.

        • CLOUDWATCH_METRIC: The health check is associated with a CloudWatch alarm. If the state of the alarm is OK, the health check is considered healthy. If the state is ALARM, the health check is considered unhealthy. If CloudWatch doesn't have sufficient data to determine whether the state is OK or ALARM, the health check status depends on the setting for InsufficientDataHealthStatus: Healthy, Unhealthy, or LastKnownStatus.

        • CALCULATED: For health checks that monitor the status of other health checks, Amazon Route 53 adds up the number of health checks that Amazon Route 53 health checkers consider to be healthy and compares that number with the value of HealthThreshold.

        For more information about how Amazon Route 53 determines whether an endpoint is healthy, see the introduction to this topic.

        " } }, "HealthCheckVersion": { "base": null, "refs": { "HealthCheck$HealthCheckVersion": "

        The version of the health check. You can optionally pass this value in a call to UpdateHealthCheck to prevent overwriting another change to the health check.

        ", "UpdateHealthCheckRequest$HealthCheckVersion": "

        A sequential counter that Amazon Route 53 sets to 1 when you create a health check and increments by 1 each time you update settings for the health check.

        We recommend that you use GetHealthCheck or ListHealthChecks to get the current value of HealthCheckVersion for the health check that you want to update, and that you include that value in your UpdateHealthCheck request. This prevents Amazon Route 53 from overwriting an intervening update:

        • f the value in the UpdateHealthCheck request matches the value of HealthCheckVersion in the health check, Amazon Route 53 updates the health check with the new settings.

        • If the value of HealthCheckVersion in the health check is greater, the health check was changed after you got the version number. Amazon Route 53 does not update the health check, and it returns a HealthCheckVersionMismatch error.

        " } }, "HealthCheckVersionMismatch": { "base": "

        The value of HealthCheckVersion in the request doesn't match the value of HealthCheckVersion in the health check.

        ", "refs": { } }, "HealthChecks": { "base": null, "refs": { "ListHealthChecksResponse$HealthChecks": "

        A complex type that contains one HealthCheck element for each health check that is associated with the current AWS account.

        " } }, "HealthThreshold": { "base": null, "refs": { "HealthCheckConfig$HealthThreshold": "

        The number of child health checks that are associated with a CALCULATED health that Amazon Route 53 must consider healthy for the CALCULATED health check to be considered healthy. To specify the child health checks that you want to associate with a CALCULATED health check, use the HealthCheckConfig$ChildHealthChecks and HealthCheckConfig$ChildHealthChecks elements.

        Note the following:

        • If you specify a number greater than the number of child health checks, Amazon Route 53 always considers this health check to be unhealthy.

        • If you specify 0, Amazon Route 53 always considers this health check to be healthy.

        ", "UpdateHealthCheckRequest$HealthThreshold": "

        The number of child health checks that are associated with a CALCULATED health that Amazon Route 53 must consider healthy for the CALCULATED health check to be considered healthy. To specify the child health checks that you want to associate with a CALCULATED health check, use the ChildHealthChecks and ChildHealthCheck elements.

        Note the following:

        • If you specify a number greater than the number of child health checks, Amazon Route 53 always considers this health check to be unhealthy.

        • If you specify 0, Amazon Route 53 always considers this health check to be healthy.

        " } }, "HostedZone": { "base": "

        A complex type that contains general information about the hosted zone.

        ", "refs": { "CreateHostedZoneResponse$HostedZone": "

        A complex type that contains general information about the hosted zone.

        ", "GetHostedZoneResponse$HostedZone": "

        A complex type that contains general information about the hosted zone.

        ", "HostedZones$member": null, "UpdateHostedZoneCommentResponse$HostedZone": null } }, "HostedZoneAlreadyExists": { "base": "

        The hosted zone you are trying to create already exists. Amazon Route 53 returns this error when a hosted zone has already been created with the specified CallerReference.

        ", "refs": { } }, "HostedZoneConfig": { "base": "

        A complex type that contains an optional comment about your hosted zone. If you don't want to specify a comment, omit both the HostedZoneConfig and Comment elements.

        ", "refs": { "CreateHostedZoneRequest$HostedZoneConfig": "

        (Optional) A complex type that contains an optional comment about your hosted zone. If you don't want to specify a comment, omit both the HostedZoneConfig and Comment elements.

        ", "HostedZone$Config": "

        A complex type that includes the Comment and PrivateZone elements. If you omitted the HostedZoneConfig and Comment elements from the request, the Config and Comment elements don't appear in the response.

        " } }, "HostedZoneCount": { "base": null, "refs": { "GetHostedZoneCountResponse$HostedZoneCount": "

        The total number of public and private hosted zones associated with the current AWS account.

        " } }, "HostedZoneNotEmpty": { "base": "

        The hosted zone contains resource records that are not SOA or NS records.

        ", "refs": { } }, "HostedZoneNotFound": { "base": "

        The specified HostedZone cannot be found.

        ", "refs": { } }, "HostedZoneRRSetCount": { "base": null, "refs": { "HostedZone$ResourceRecordSetCount": "

        The number of resource record sets in the hosted zone.

        " } }, "HostedZones": { "base": null, "refs": { "ListHostedZonesByNameResponse$HostedZones": "

        A complex type that contains general information about the hosted zone.

        ", "ListHostedZonesResponse$HostedZones": "

        A complex type that contains general information about the hosted zone.

        " } }, "IPAddress": { "base": null, "refs": { "HealthCheckConfig$IPAddress": "

        The IPv4 IP address of the endpoint on which you want Amazon Route 53 to perform health checks. If you don't specify a value for IPAddress, Amazon Route 53 sends a DNS request to resolve the domain name that you specify in FullyQualifiedDomainName at the interval that you specify in RequestInterval. Using an IP address that DNS returns, Amazon Route 53 then checks the health of the endpoint.

        If the endpoint is an Amazon EC2 instance, we recommend that you create an Elastic IP address, associate it with your Amazon EC2 instance, and specify the Elastic IP address for IPAddress. This ensures that the IP address of your instance will never change.

        For more information, see HealthCheckConfig$FullyQualifiedDomainName.

        Contraints: Amazon Route 53 cannot check the health of endpoints for which the IP address is in local, private, non-routable, or multicast ranges. For more information about IP addresses for which you cannot create health checks, see RFC 5735, Special Use IPv4 Addresses and RFC 6598, IANA-Reserved IPv4 Prefix for Shared Address Space.

        When the value of Type is CALCULATED or CLOUDWATCH_METRIC, omit IPAddress.

        ", "HealthCheckObservation$IPAddress": "

        The IP address of the Amazon Route 53 health checker that provided the failure reason in StatusReport.

        ", "TestDNSAnswerRequest$ResolverIP": "

        If you want to simulate a request from a specific DNS resolver, specify the IP address for that resolver. If you omit this value, TestDnsAnswer uses the IP address of a DNS resolver in the AWS US East region.

        ", "TestDNSAnswerRequest$EDNS0ClientSubnetIP": "

        If the resolver that you specified for resolverip supports EDNS0, specify the IP address of a client in the applicable location.

        ", "UpdateHealthCheckRequest$IPAddress": "

        The IPv4 IP address of the endpoint on which you want Amazon Route 53 to perform health checks. If you don't specify a value for IPAddress, Amazon Route 53 sends a DNS request to resolve the domain name that you specify in FullyQualifiedDomainName at the interval you specify in RequestInterval. Using an IP address that DNS returns, Amazon Route 53 then checks the health of the endpoint.

        f the endpoint is an Amazon EC2 instance, we recommend that you create an Elastic IP address, associate it with your Amazon EC2 instance, and specify the Elastic IP address for IPAddress. This ensures that the IP address of your instance never changes. For more information, see Elastic IP Addresses (EIP) in the Amazon EC2 User Guide for Linux Instances.

        If a health check already has a value for IPAddress, you can change the value. However, you can't update an existing health check to add or remove the value of IPAddress.

        For more information, see UpdateHealthCheckRequest$FullyQualifiedDomainName.

        " } }, "IPAddressCidr": { "base": null, "refs": { "CheckerIpRanges$member": null } }, "IncompatibleVersion": { "base": "

        The resource you are trying to access is unsupported on this Amazon Route 53 endpoint. Please consider using a newer endpoint or a tool that does so.

        ", "refs": { } }, "InsufficientDataHealthStatus": { "base": null, "refs": { "HealthCheckConfig$InsufficientDataHealthStatus": "

        When CloudWatch has insufficient data about the metric to determine the alarm state, the status that you want Amazon Route 53 to assign to the health check:

        • Healthy: Amazon Route 53 considers the health check to be healthy.

        • Unhealthy: Amazon Route 53 considers the health check to be unhealthy.

        • LastKnownStatus: Amazon Route 53uses the status of the health check from the last time CloudWatch had sufficient data to determine the alarm state. For new health checks that have no last known status, the default status for the health check is healthy.

        ", "UpdateHealthCheckRequest$InsufficientDataHealthStatus": "

        When CloudWatch has insufficient data about the metric to determine the alarm state, the status that you want Amazon Route 53 to assign to the health check:

        • Healthy: Amazon Route 53 considers the health check to be healthy.

        • Unhealthy: Amazon Route 53 considers the health check to be unhealthy.

        • LastKnownStatus: Amazon Route 53 uses the status of the health check from the last time CloudWatch had sufficient data to determine the alarm state. For new health checks that have no last known status, the default status for the health check is healthy.

        " } }, "InvalidArgument": { "base": "

        Parameter name and problem.

        ", "refs": { } }, "InvalidChangeBatch": { "base": "

        This exception contains a list of messages that might contain one or more error messages. Each error message indicates one error in the change batch.

        ", "refs": { } }, "InvalidDomainName": { "base": "

        The specified domain name is not valid.

        ", "refs": { } }, "InvalidInput": { "base": "

        The input is not valid.

        ", "refs": { } }, "InvalidTrafficPolicyDocument": { "base": "

        The format of the traffic policy document that you specified in the Document element is invalid.

        ", "refs": { } }, "InvalidVPCId": { "base": "

        The hosted zone you are trying to create for your VPC_ID does not belong to you. Amazon Route 53 returns this error when the VPC specified by VPCId does not belong to you.

        ", "refs": { } }, "Inverted": { "base": null, "refs": { "HealthCheckConfig$Inverted": "

        Specify whether you want Amazon Route 53 to invert the status of a health check, for example, to consider a health check unhealthy when it otherwise would be considered healthy.

        ", "UpdateHealthCheckRequest$Inverted": "

        Specify whether you want Amazon Route 53 to invert the status of a health check, for example, to consider a health check unhealthy when it otherwise would be considered healthy.

        " } }, "IsPrivateZone": { "base": null, "refs": { "HostedZoneConfig$PrivateZone": "

        A value that indicates whether this is a private hosted zone.

        " } }, "LastVPCAssociation": { "base": "

        Only one VPC is currently associated with the hosted zone. You cannot convert a private hosted zone into a public hosted zone by disassociating the last VPC from a hosted zone.

        ", "refs": { } }, "LimitsExceeded": { "base": "

        The limits specified for a resource have been exceeded.

        ", "refs": { } }, "ListChangeBatchesByHostedZoneRequest": { "base": "

        The input for a ListChangeBatchesByHostedZone request.

        ", "refs": { } }, "ListChangeBatchesByHostedZoneResponse": { "base": "

        A complex type containing the response information for the request.

        ", "refs": { } }, "ListChangeBatchesByRRSetRequest": { "base": "

        The input for a ListChangeBatchesByRRSet request.

        ", "refs": { } }, "ListChangeBatchesByRRSetResponse": { "base": "

        The input for a ListChangeBatchesByRRSet request.

        ", "refs": { } }, "ListGeoLocationsRequest": { "base": "

        To get a list of geographic locations that Amazon Route 53 supports for geolocation, send a GET request to the /Amazon Route 53 API version/geolocations resource. The response to this request includes a GeoLocationDetails element for each location that Amazon Route 53 supports.

        Countries are listed first, and continents are listed last. If Amazon Route 53 supports subdivisions for a country (for example, states or provinces), the subdivisions for that country are listed in alphabetical order immediately after the corresponding country.

        ", "refs": { } }, "ListGeoLocationsResponse": { "base": "

        A complex type containing the response information for the request.

        ", "refs": { } }, "ListHealthChecksRequest": { "base": "

        To retrieve a list of your health checks, send a GET request to the /2013-04-01/healthcheck resource. The response to this request includes a HealthChecks element with zero or more HealthCheck child elements. By default, the list of health checks is displayed on a single page. You can control the length of the page that is displayed by using the MaxItems parameter. You can use the Marker parameter to control the health check that the list begins with.

        Amazon Route 53 returns a maximum of 100 items. If you set MaxItems to a value greater than 100, Amazon Route 53 returns only the first 100.

        ", "refs": { } }, "ListHealthChecksResponse": { "base": "

        A complex type that contains the response to a ListHealthChecks request.

        ", "refs": { } }, "ListHostedZonesByNameRequest": { "base": "

        To retrieve a list of your public and private hosted zones in ASCII order by domain name, send a GET request to the /Amazon Route 53 API version/hostedzonesbyname resource. The response to this request includes a HostedZone child element for each hosted zone that was created by the current AWS account. ListHostedZonesByName sorts hosted zones by name with the labels reversed, for example:

        com.example.www.

        Note the trailing dot, which can change the sort order in some circumstances.

        If the domain name includes escape characters or Punycode, ListHostedZonesByName alphabetizes the domain name using the escaped or Punycoded value, which is the format that Amazon Route 53 saves in its database. For example, to create a hosted zone for exämple.com, you specify ex\\344mple.com for the domain name. ListHostedZonesByName alphabetizes it as: com.ex\\344mple. The labels are reversed, and it's alphabetized using the escaped value. For more information about valid domain name formats, including internationalized domain names, see DNS Domain Name Format in the Amazon Route 53 Developer Guide.

        Amazon Route 53 returns up to 100 items in each response. If you have a lot of hosted zones, you can use the MaxItems parameter to list them in groups of up to 100. The response includes values that help you navigate from one group of MaxItems hosted zones to the next:

        • The DNSName and HostedZoneId elements in the response contain the values, if any, that you specified for the dnsname and hostedzoneid parameters in the request that produced the current response.

        • The MaxItems element in the response contains the value, if any, that you specified for the maxitems parameter in the request that produced the current response.

        • If the value of IsTruncated in the response is true, there are more hosted zones associated with the current Amazon Route 53 account.

          If IsTruncated is false, this response includes the last hosted zone that is associated with the current account. The NextDNSName element and NextHostedZoneId elements are omitted from the response.

        • The NextDNSName and NextHostedZoneId elements in the response contain the domain name and the hosted zone ID of the next hosted zone that is associated with the current AWS account. If you want to list more hosted zones, make another call to ListHostedZonesByName, and specify the value of NextDNSName and NextHostedZoneId in the dnsname and hostedzoneid parameters, respectively.

        ", "refs": { } }, "ListHostedZonesByNameResponse": { "base": "

        A complex type that contains the response information for the request.

        ", "refs": { } }, "ListHostedZonesRequest": { "base": "

        To retrieve a list of your public and private hosted zones, send a GET request to the /2013-04-01/hostedzone resource. The response to this request includes a HostedZone child element for each hosted zone that was created by the current AWS account.

        Amazon Route 53 returns a maximum of 100 items in each response. If you have a lot of hosted zones, you can use the maxitems parameter to list them in groups of up to 100. The response includes four values that help you navigate from one group of maxitems hosted zones to the next:

        • MaxItems is the value that you specified for the maxitems parameter in the request that produced the current response.

        • If the value of IsTruncated in the response is true, there are more hosted zones associated with the current AWS account.

          If IsTruncated is false, this response includes the last hosted zone that is associated with the current account.

        • NextMarker is the hosted zone ID of the next hosted zone that is associated with the current AWS account. If you want to list more hosted zones, make another call to ListHostedZones, and specify the value of the NextMarker element in the marker parameter.

          If IsTruncated is false, the NextMarker element is omitted from the response.

        • If you're making the second or subsequent call to ListHostedZones, the Marker element matches the value that you specified in the marker parameter in the previous request.

        ", "refs": { } }, "ListHostedZonesResponse": { "base": null, "refs": { } }, "ListResourceRecordSetsRequest": { "base": "

        The input for a ListResourceRecordSets request.

        ", "refs": { } }, "ListResourceRecordSetsResponse": { "base": "

        A complex type that contains list information for the resource record set.

        ", "refs": { } }, "ListReusableDelegationSetsRequest": { "base": "

        To retrieve a list of your reusable delegation sets, send a GET request to the /2013-04-01/delegationset resource. The response to this request includes a DelegationSets element with zero or more DelegationSet child elements. By default, the list of reusable delegation sets is displayed on a single page. You can control the length of the page that is displayed by using the MaxItems parameter. You can use the Marker parameter to control the delegation set that the list begins with.

        Amazon Route 53 returns a maximum of 100 items. If you set MaxItems to a value greater than 100, Amazon Route 53 returns only the first 100.

        ", "refs": { } }, "ListReusableDelegationSetsResponse": { "base": "

        A complex type that contains information about the reusable delegation sets that are associated with the current AWS account.

        ", "refs": { } }, "ListTagsForResourceRequest": { "base": "

        A complex type containing information about a request for a list of the tags that are associated with an individual resource.

        ", "refs": { } }, "ListTagsForResourceResponse": { "base": "

        A complex type that contains information about the health checks or hosted zones for which you want to list tags.

        ", "refs": { } }, "ListTagsForResourcesRequest": { "base": "

        A complex type that contains information about the health checks or hosted zones for which you want to list tags.

        ", "refs": { } }, "ListTagsForResourcesResponse": { "base": "

        A complex type containing tags for the specified resources.

        ", "refs": { } }, "ListTrafficPoliciesRequest": { "base": "

        A complex type that contains the information about the request to list the traffic policies that are associated with the current AWS account.

        ", "refs": { } }, "ListTrafficPoliciesResponse": { "base": "

        A complex type that contains the response information for the request.

        ", "refs": { } }, "ListTrafficPolicyInstancesByHostedZoneRequest": { "base": "

        A request for the traffic policy instances that you created in a specified hosted zone.

        ", "refs": { } }, "ListTrafficPolicyInstancesByHostedZoneResponse": { "base": "

        A complex type that contains the response information for the request.

        ", "refs": { } }, "ListTrafficPolicyInstancesByPolicyRequest": { "base": "

        A complex type that contains the information about the request to list your traffic policy instances.

        ", "refs": { } }, "ListTrafficPolicyInstancesByPolicyResponse": { "base": "

        A complex type that contains the response information for the request.

        ", "refs": { } }, "ListTrafficPolicyInstancesRequest": { "base": "

        A complex type that contains the information about the request to list your traffic policy instances.

        ", "refs": { } }, "ListTrafficPolicyInstancesResponse": { "base": "

        A complex type that contains the response information for the request.

        ", "refs": { } }, "ListTrafficPolicyVersionsRequest": { "base": "

        A complex type that contains the information about the request to list your traffic policies.

        ", "refs": { } }, "ListTrafficPolicyVersionsResponse": { "base": "

        A complex type that contains the response information for the request.

        ", "refs": { } }, "MeasureLatency": { "base": null, "refs": { "HealthCheckConfig$MeasureLatency": "

        Specify whether you want Amazon Route 53 to measure the latency between health checkers in multiple AWS regions and your endpoint, and to display CloudWatch latency graphs on the Health Checks page in the Amazon Route 53 console.

        You can't change the value of MeasureLatency after you create a health check.

        " } }, "Message": { "base": null, "refs": { "TrafficPolicyInstance$Message": "

        If State is Failed, an explanation of the reason for the failure. If State is another value, Message is empty.

        " } }, "MetricName": { "base": null, "refs": { "CloudWatchAlarmConfiguration$MetricName": "

        The name of the CloudWatch metric that the alarm is associated with.

        " } }, "Nameserver": { "base": null, "refs": { "TestDNSAnswerResponse$Nameserver": "

        The Amazon Route 53 name server used to respond to the request.

        " } }, "Namespace": { "base": null, "refs": { "CloudWatchAlarmConfiguration$Namespace": "

        The namespace of the metric that the alarm is associated with. For more information, see Amazon CloudWatch Namespaces, Dimensions, and Metrics Reference in the Amazon CloudWatch Developer Guide.

        " } }, "NoSuchChange": { "base": "

        A change with the specified change ID does not exist.

        ", "refs": { } }, "NoSuchDelegationSet": { "base": "

        A reusable delegation set with the specified ID does not exist.

        ", "refs": { } }, "NoSuchGeoLocation": { "base": "

        Amazon Route 53 doesn't support the specified geolocation.

        ", "refs": { } }, "NoSuchHealthCheck": { "base": "

        No health check exists with the ID that you specified in the DeleteHealthCheck request.

        ", "refs": { } }, "NoSuchHostedZone": { "base": "

        No hosted zone exists with the ID that you specified.

        ", "refs": { } }, "NoSuchTrafficPolicy": { "base": "

        No traffic policy exists with the specified ID.

        ", "refs": { } }, "NoSuchTrafficPolicyInstance": { "base": "

        No traffic policy instance exists with the specified ID.

        ", "refs": { } }, "Nonce": { "base": null, "refs": { "CreateHostedZoneRequest$CallerReference": "

        A unique string that identifies the request and that allows failed CreateHostedZone requests to be retried without the risk of executing the operation twice. You must use a unique CallerReference string every time you create a hosted zone. CallerReference can be any unique string, for example, a date/time stamp.

        ", "CreateReusableDelegationSetRequest$CallerReference": "

        A unique string that identifies the request, and that allows you to retry failed CreateReusableDelegationSet requests without the risk of executing the operation twice. You must use a unique CallerReference string every time you submit a CreateReusableDelegationSet request. CallerReference can be any unique string, for example a date/time stamp.

        ", "DelegationSet$CallerReference": "

        A unique string that identifies the request, and that allows you to retry failed CreateReusableDelegationSet requests without the risk of executing the operation twice. You must use a unique CallerReference string every time you submit a CreateReusableDelegationSet request. CallerReference can be any unique string, for example, a date/time stamp.

        ", "HostedZone$CallerReference": "

        The value that you specified for CallerReference when you created the hosted zone.

        " } }, "PageMarker": { "base": null, "refs": { "ListChangeBatchesByHostedZoneRequest$Marker": "

        The page marker.

        ", "ListChangeBatchesByHostedZoneResponse$Marker": "

        For the second and subsequent calls to ListHostedZones, Marker is the value that you specified for the marker parameter in the request that produced the current response.

        ", "ListChangeBatchesByHostedZoneResponse$NextMarker": "

        The next page marker.

        ", "ListChangeBatchesByRRSetRequest$Marker": "

        The page marker.

        ", "ListChangeBatchesByRRSetResponse$Marker": "

        The page marker.

        ", "ListChangeBatchesByRRSetResponse$NextMarker": "

        The next page marker.

        ", "ListHealthChecksRequest$Marker": "

        If the response to a ListHealthChecks is more than one page, marker is the health check ID for the first health check on the next page of results. For more information, see ListHealthChecksResponse$MaxItems.

        ", "ListHealthChecksResponse$Marker": "

        For the second and subsequent calls to ListHealthChecks, Marker is the value that you specified for the marker parameter in the previous request.

        ", "ListHealthChecksResponse$NextMarker": "

        If IsTruncated is true, the value of NextMarker identifies the first health check in the next group of maxitems health checks. Call ListHealthChecks again and specify the value of NextMarker in the marker parameter.

        ", "ListHostedZonesRequest$Marker": "

        (Optional) If you have more hosted zones than the value of maxitems, ListHostedZones returns only the first maxitems hosted zones. To get the next group of maxitems hosted zones, submit another request to ListHostedZones. For the value of marker, specify the value of the NextMarker element that was returned in the previous response.

        Hosted zones are listed in the order in which they were created.

        ", "ListHostedZonesResponse$Marker": "

        For the second and subsequent calls to ListHostedZones, Marker is the value that you specified for the marker parameter in the request that produced the current response.

        ", "ListHostedZonesResponse$NextMarker": "

        If IsTruncated is true, the value of NextMarker identifies the first hosted zone in the next group of maxitems hosted zones. Call ListHostedZones again and specify the value of NextMarker in the marker parameter.

        This element is present only if IsTruncated is true.

        ", "ListReusableDelegationSetsRequest$Marker": "

        If you're making the second or subsequent call to ListReusableDelegationSets, the Marker element matches the value that you specified in the marker parameter in the previous request.

        ", "ListReusableDelegationSetsResponse$Marker": "

        For the second and subsequent calls to ListReusableDelegationSets, Marker is the value that you specified for the marker parameter in the request that produced the current response.

        ", "ListReusableDelegationSetsResponse$NextMarker": "

        If IsTruncated is true, the value of NextMarker identifies the first reusable delegation set in the next group of maxitems reusable delegation sets. Call ListReusableDelegationSets again and specify the value of NextMarker in the marker parameter.

        " } }, "PageMaxItems": { "base": null, "refs": { "ListChangeBatchesByHostedZoneRequest$MaxItems": "

        The maximum number of items on a page.

        ", "ListChangeBatchesByHostedZoneResponse$MaxItems": "

        The value that you specified for the maxitems parameter in the call to ListHostedZones that produced the current response.

        ", "ListChangeBatchesByRRSetRequest$MaxItems": "

        The maximum number of items on a page.

        ", "ListChangeBatchesByRRSetResponse$MaxItems": "

        The maximum number of items on a page.

        ", "ListGeoLocationsRequest$MaxItems": "

        (Optional) The maximum number of geolocations to be included in the response body for this request. If more than MaxItems geolocations remain to be listed, then the value of the IsTruncated element in the response is true.

        ", "ListGeoLocationsResponse$MaxItems": "

        The value that you specified for MaxItems in the request.

        ", "ListHealthChecksRequest$MaxItems": "

        The maximum number of HealthCheck elements you want ListHealthChecks to return on each page of the response body. If the AWS account includes more HealthCheck elements than the value of maxitems, the response is broken into pages. Each page contains the number of HealthCheck elements specified by maxitems.

        For example, suppose you specify 10 for maxitems and the current AWS account has 51 health checks. In the response, ListHealthChecks sets ListHealthChecksResponse$IsTruncated to true and includes the ListHealthChecksResponse$NextMarker element. To access the second and subsequent pages, you resend the GET ListHealthChecks request, add the ListHealthChecksResponse$Marker parameter to the request, and specify the value of the ListHealthChecksResponse$NextMarker element from the previous response. On the last (sixth) page of the response, which contains only one HealthCheck element:

        ", "ListHealthChecksResponse$MaxItems": "

        The value that you specified for the maxitems parameter in the call to ListHealthChecks that produced the current response.

        ", "ListHostedZonesByNameRequest$MaxItems": "

        The maximum number of hosted zones to be included in the response body for this request. If you have more than maxitems hosted zones, then the value of the IsTruncated element in the response is true, and the values of NextDNSName and NextHostedZoneId specify the first hosted zone in the next group of maxitems hosted zones.

        ", "ListHostedZonesByNameResponse$MaxItems": "

        The value that you specified for the maxitems parameter in the call to ListHostedZonesByName that produced the current response.

        ", "ListHostedZonesRequest$MaxItems": "

        (Optional) The maximum number of hosted zones to be included in the response body for this request. If you have more than maxitems hosted zones, the value of the IsTruncated element in the response is true, and the value of the NextMarker element is the hosted zone ID of the first hosted zone in the next group of maxitems hosted zones.

        ", "ListHostedZonesResponse$MaxItems": "

        The value that you specified for the maxitems parameter in the call to ListHostedZones that produced the current response.

        ", "ListResourceRecordSetsRequest$MaxItems": "

        (Optional) The maximum number of resource records sets to include in the response body for this request. If the response includes more than maxitems resource record sets, the value of the IsTruncated element in the response is true, and the values of the NextRecordName and NextRecordType elements in the response identify the first resource record set in the next group of maxitems resource record sets.

        ", "ListResourceRecordSetsResponse$MaxItems": "

        The maximum number of records you requested.

        ", "ListReusableDelegationSetsRequest$MaxItems": "

        The value that you specified for the maxitems parameter in the request that produced the current response.

        ", "ListReusableDelegationSetsResponse$MaxItems": "

        The value that you specified for the maxitems parameter in the call to ListReusableDelegationSets that produced the current response.

        ", "ListTrafficPoliciesRequest$MaxItems": "

        (Optional) The maximum number of traffic policies to be included in the response body for this request. If you have more than MaxItems traffic policies, the value of the IsTruncated element in the response is true, and the value of the TrafficPolicyIdMarker element is the ID of the first traffic policy in the next group of MaxItems traffic policies.

        ", "ListTrafficPoliciesResponse$MaxItems": "

        The value that you specified for the MaxItems parameter in the call to ListTrafficPolicies that produced the current response.

        ", "ListTrafficPolicyInstancesByHostedZoneRequest$MaxItems": "

        The maximum number of traffic policy instances to be included in the response body for this request. If you have more than MaxItems traffic policy instances, the value of the IsTruncated element in the response is true, and the values of HostedZoneIdMarker, TrafficPolicyInstanceNameMarker, and TrafficPolicyInstanceTypeMarker represent the first traffic policy instance in the next group of MaxItems traffic policy instances.

        ", "ListTrafficPolicyInstancesByHostedZoneResponse$MaxItems": "

        The value that you specified for the MaxItems parameter in the call to ListTrafficPolicyInstancesByHostedZone that produced the current response.

        ", "ListTrafficPolicyInstancesByPolicyRequest$MaxItems": "

        The maximum number of traffic policy instances to be included in the response body for this request. If you have more than MaxItems traffic policy instances, the value of the IsTruncated element in the response is true, and the values of HostedZoneIdMarker, TrafficPolicyInstanceNameMarker, and TrafficPolicyInstanceTypeMarker represent the first traffic policy instance in the next group of MaxItems traffic policy instances.

        ", "ListTrafficPolicyInstancesByPolicyResponse$MaxItems": "

        The value that you specified for the MaxItems parameter in the call to ListTrafficPolicyInstancesByPolicy that produced the current response.

        ", "ListTrafficPolicyInstancesRequest$MaxItems": "

        The maximum number of traffic policy instances to be included in the response body for this request. If you have more than MaxItems traffic policy instances, the value of the IsTruncated element in the response is true, and the values of HostedZoneIdMarker, TrafficPolicyInstanceNameMarker, and TrafficPolicyInstanceTypeMarker represent the first traffic policy instance in the next group of MaxItems traffic policy instances.

        ", "ListTrafficPolicyInstancesResponse$MaxItems": "

        The value that you specified for the MaxItems parameter in the call to ListTrafficPolicyInstances that produced the current response.

        ", "ListTrafficPolicyVersionsRequest$MaxItems": "

        The maximum number of traffic policy versions that you want Amazon Route 53 to include in the response body for this request. If the specified traffic policy has more than MaxItems versions, the value of the IsTruncated element in the response is true, and the value of the TrafficPolicyVersionMarker element is the ID of the first version in the next group of MaxItems traffic policy versions.

        ", "ListTrafficPolicyVersionsResponse$MaxItems": "

        The value that you specified for the maxitems parameter in the call to ListTrafficPolicyVersions that produced the current response.

        " } }, "PageTruncated": { "base": null, "refs": { "ListChangeBatchesByHostedZoneResponse$IsTruncated": "

        A flag that indicates if there are more change batches to list.

        ", "ListChangeBatchesByRRSetResponse$IsTruncated": "

        A flag that indicates if there are more change batches to list.

        ", "ListGeoLocationsResponse$IsTruncated": "

        A value that indicates whether more locations remain to be listed after the last location in this response. If so, the value of IsTruncated is true. To get more values, submit another request and include the values of NextContinentCode, NextCountryCode, and NextSubdivisionCode in the StartContinentCode, StartCountryCode, and StartSubdivisionCode, as applicable.

        ", "ListHealthChecksResponse$IsTruncated": "

        A flag that indicates whether there are more health checks to be listed. If the response was truncated, you can get the next group of maxitems health checks by calling ListHealthChecks again and specifying the value of the NextMarker element in the marker parameter.

        Valid Values: true | false

        ", "ListHostedZonesByNameResponse$IsTruncated": "

        A flag that indicates whether there are more hosted zones to be listed. If the response was truncated, you can get the next group of maxitems hosted zones by calling ListHostedZonesByName again and specifying the values of NextDNSName and NextHostedZoneId elements in the dnsname and hostedzoneid parameters.

        ", "ListHostedZonesResponse$IsTruncated": "

        A flag indicating whether there are more hosted zones to be listed. If the response was truncated, you can get the next group of maxitems hosted zones by calling ListHostedZones again and specifying the value of the NextMarker element in the marker parameter.

        ", "ListResourceRecordSetsResponse$IsTruncated": "

        A flag that indicates whether more resource record sets remain to be listed. If your results were truncated, you can make a follow-up pagination request by using the NextRecordName element.

        ", "ListReusableDelegationSetsResponse$IsTruncated": "

        A flag that indicates whether there are more reusable delegation sets to be listed. If the response is truncated, you can get the next group of maxitems reusable delegation sets by calling ListReusableDelegationSets again and specifying the value of the NextMarker element in the marker parameter.

        ", "ListTrafficPoliciesResponse$IsTruncated": "

        A flag that indicates whether there are more traffic policies to be listed. If the response was truncated, you can get the next group of MaxItems traffic policies by calling ListTrafficPolicies again and specifying the value of the TrafficPolicyIdMarker element in the TrafficPolicyIdMarker request parameter.

        Valid Values: true | false

        ", "ListTrafficPolicyInstancesByHostedZoneResponse$IsTruncated": "

        A flag that indicates whether there are more traffic policy instances to be listed. If the response was truncated, you can get the next group of MaxItems traffic policy instances by calling ListTrafficPolicyInstancesByHostedZone again and specifying the values of the HostedZoneIdMarker, TrafficPolicyInstanceNameMarker, and TrafficPolicyInstanceTypeMarker elements in the corresponding request parameters.

        ", "ListTrafficPolicyInstancesByPolicyResponse$IsTruncated": "

        A flag that indicates whether there are more traffic policy instances to be listed. If the response was truncated, you can get the next group of MaxItems traffic policy instances by calling ListTrafficPolicyInstancesByPolicy again and specifying the values of the HostedZoneIdMarker, TrafficPolicyInstanceNameMarker, and TrafficPolicyInstanceTypeMarker elements in the corresponding request parameters.

        ", "ListTrafficPolicyInstancesResponse$IsTruncated": "

        A flag that indicates whether there are more traffic policy instances to be listed. If the response was truncated, you can get the next group of MaxItems traffic policy instances by calling ListTrafficPolicyInstances again and specifying the values of the HostedZoneIdMarker, TrafficPolicyInstanceNameMarker, and TrafficPolicyInstanceTypeMarker elements in the corresponding request parameters.

        ", "ListTrafficPolicyVersionsResponse$IsTruncated": "

        A flag that indicates whether there are more traffic policies to be listed. If the response was truncated, you can get the next group of maxitems traffic policies by calling ListTrafficPolicyVersions again and specifying the value of the NextMarker element in the marker parameter.

        " } }, "Period": { "base": null, "refs": { "CloudWatchAlarmConfiguration$Period": "

        For the metric that the CloudWatch alarm is associated with, the duration of one evaluation period in seconds.

        " } }, "Port": { "base": null, "refs": { "HealthCheckConfig$Port": "

        The port on the endpoint on which you want Amazon Route 53 to perform health checks. Specify a value for Port only when you specify a value for IPAddress.

        ", "UpdateHealthCheckRequest$Port": "

        The port on the endpoint on which you want Amazon Route 53 to perform health checks.

        " } }, "PriorRequestNotComplete": { "base": "

        If Amazon Route 53 can't process a request before the next request arrives, it will reject subsequent requests for the same hosted zone and return an HTTP 400 error (Bad request). If Amazon Route 53 returns this error repeatedly for the same request, we recommend that you wait, in intervals of increasing duration, before you try the request again.

        ", "refs": { } }, "PublicZoneVPCAssociation": { "base": "

        The hosted zone specified in HostedZoneId is a public hosted zone.

        ", "refs": { } }, "RData": { "base": null, "refs": { "ResourceRecord$Value": "

        The current or new DNS record value, not to exceed 4,000 characters. In the case of a DELETE action, if the current value does not match the actual value, an error is returned. For descriptions about how to format Value for different record types, see Supported DNS Resource Record Types in the Amazon Route 53 Developer Guide.

        You can specify more than one value for all record types except CNAME and SOA.

        If you are creating an alias resource record set, omit Value.

        " } }, "RRType": { "base": null, "refs": { "ListChangeBatchesByRRSetRequest$Type": "

        The type of the RRSet that you want to see changes for.

        ", "ListResourceRecordSetsRequest$StartRecordType": "

        The type of resource record set to begin the record listing from.

        Valid values for basic resource record sets: A | AAAA | CNAME | MX | NAPTR | NS | PTR | SOA | SPF | SRV | TXT

        Values for weighted, latency, geo, and failover resource record sets: A | AAAA | CNAME | MX | NAPTR | PTR | SPF | SRV | TXT

        Values for alias resource record sets:

        • CloudFront distribution: A

        • Elastic Beanstalk environment that has a regionalized subdomain: A

        • ELB load balancer: A | AAAA

        • Amazon S3 bucket: A

        Constraint: Specifying type without specifying name returns an InvalidInput error.

        ", "ListResourceRecordSetsResponse$NextRecordType": "

        If the results were truncated, the type of the next record in the list.

        This element is present only if IsTruncated is true.

        ", "ListTrafficPolicyInstancesByHostedZoneRequest$TrafficPolicyInstanceTypeMarker": "

        For the first request to ListTrafficPolicyInstancesByHostedZone, omit this value.

        If the value of IsTruncated in the previous response was true, TrafficPolicyInstanceTypeMarker is the DNS type of the first traffic policy instance in the next group of MaxItems traffic policy instances.

        If the value of IsTruncated in the previous response was false, there are no more traffic policy instances to get for this hosted zone.

        ", "ListTrafficPolicyInstancesByHostedZoneResponse$TrafficPolicyInstanceTypeMarker": "

        If IsTruncated is true, TrafficPolicyInstanceTypeMarker is the DNS type of the resource record sets that are associated with the first traffic policy instance in the next group of MaxItems traffic policy instances.

        ", "ListTrafficPolicyInstancesByPolicyRequest$TrafficPolicyInstanceTypeMarker": "

        For the first request to ListTrafficPolicyInstancesByPolicy, omit this value.

        If the value of IsTruncated in the previous response was true, TrafficPolicyInstanceTypeMarker is the DNS type of the first traffic policy instance in the next group of MaxItems traffic policy instances.

        If the value of IsTruncated in the previous response was false, there are no more traffic policy instances to get for this hosted zone.

        ", "ListTrafficPolicyInstancesByPolicyResponse$TrafficPolicyInstanceTypeMarker": "

        If IsTruncated is true, TrafficPolicyInstanceTypeMarker is the DNS type of the resource record sets that are associated with the first traffic policy instance in the next group of MaxItems traffic policy instances.

        ", "ListTrafficPolicyInstancesRequest$TrafficPolicyInstanceTypeMarker": "

        For the first request to ListTrafficPolicyInstances, omit this value.

        If the value of IsTruncated in the previous response was true, TrafficPolicyInstanceTypeMarker is the DNS type of the first traffic policy instance in the next group of MaxItems traffic policy instances.

        If the value of IsTruncated in the previous response was false, there are no more traffic policy instances to get.

        ", "ListTrafficPolicyInstancesResponse$TrafficPolicyInstanceTypeMarker": "

        If IsTruncated is true, TrafficPolicyInstanceTypeMarker is the DNS type of the resource record sets that are associated with the first traffic policy instance in the next group of MaxItems traffic policy instances.

        ", "ResourceRecordSet$Type": "

        The DNS record type. For information about different record types and how data is encoded for them, see Supported DNS Resource Record Types in the Amazon Route 53 Developer Guide.

        Valid values for basic resource record sets: A | AAAA | CNAME | MX | NAPTR | NS | PTR | SOA | SPF | SRV | TXT

        Values for weighted, latency, geolocation, and failover resource record sets: A | AAAA | CNAME | MX | NAPTR | PTR | SPF | SRV | TXT. When creating a group of weighted, latency, geolocation, or failover resource record sets, specify the same value for all of the resource record sets in the group.

        SPF records were formerly used to verify the identity of the sender of email messages. However, we no longer recommend that you create resource record sets for which the value of Type is SPF. RFC 7208, Sender Policy Framework (SPF) for Authorizing Use of Domains in Email, Version 1, has been updated to say, \"...[I]ts existence and mechanism defined in [RFC4408] have led to some interoperability issues. Accordingly, its use is no longer appropriate for SPF version 1; implementations are not to use it.\" In RFC 7208, see section 14.1, The SPF DNS Record Type.

        Values for alias resource record sets:

        • CloudFront distributions: A

        • Elastic Beanstalk environment that has a regionalized subdomain: A

        • ELB load balancers: A | AAAA

        • Amazon S3 buckets: A

        • Another resource record set in this hosted zone: Specify the type of the resource record set for which you're creating the alias. Specify any value except NS or SOA.

        ", "TestDNSAnswerRequest$RecordType": "

        The type of the resource record set.

        ", "TestDNSAnswerResponse$RecordType": "

        The type of the resource record set that you submitted a request for.

        ", "TrafficPolicy$Type": "

        The DNS type of the resource record sets that Amazon Route 53 creates when you use a traffic policy to create a traffic policy instance.

        ", "TrafficPolicyInstance$TrafficPolicyType": "

        The DNS type that Amazon Route 53 assigned to all of the resource record sets that it created for this traffic policy instance.

        ", "TrafficPolicySummary$Type": "

        The DNS type of the resource record sets that Amazon Route 53 creates when you use a traffic policy to create a traffic policy instance.

        " } }, "RecordData": { "base": null, "refs": { "TestDNSAnswerResponse$RecordData": "

        A list that contains values that Amazon Route 53 returned for this resource record set.

        " } }, "RecordDataEntry": { "base": "

        A value that Amazon Route 53 returned for this resource record set. A RecordDataEntry element is one of the following:

        • For non-alias resource record sets, a RecordDataEntry element contains one value in the resource record set. If the resource record set contains multiple values, the response includes one RecordDataEntry element for each value.

        • For multiple resource record sets that have the same name and type, which includes weighted, latency, geolocation, and failover, a RecordDataEntry element contains the value from the appropriate resource record set based on the request.

        • For alias resource record sets that refer to AWS resources other than another resource record set, the RecordDataEntry element contains an IP address or a domain name for the AWS resource, depending on the type of resource.

        • For alias resource record sets that refer to other resource record sets, a RecordDataEntry element contains one value from the referenced resource record set. If the referenced resource record set contains multiple values, the response includes one RecordDataEntry element for each value.

        ", "refs": { "RecordData$member": null } }, "RequestInterval": { "base": null, "refs": { "HealthCheckConfig$RequestInterval": "

        The number of seconds between the time that Amazon Route 53 gets a response from your endpoint and the time that it sends the next health-check request. Each Amazon Route 53 health checker makes requests at this interval.

        You can't change the value of RequestInterval after you create a health check.

        " } }, "ResourceDescription": { "base": null, "refs": { "ChangeBatch$Comment": "

        Optional: Any comments you want to include about a change batch request.

        ", "ChangeBatchRecord$Comment": "

        A complex type that describes change information about changes made to your hosted zone.

        This element contains an ID that you use when performing a GetChange action to get detailed information about the change.

        ", "ChangeInfo$Comment": "

        A complex type that describes change information about changes made to your hosted zone.

        This element contains an ID that you use when performing a GetChange action to get detailed information about the change.

        ", "HostedZoneConfig$Comment": "

        Any comments that you want to include about the hosted zone.

        ", "UpdateHostedZoneCommentRequest$Comment": "

        The new comment for the hosted zone. If you don't specify a value for Comment, Amazon Route 53 deletes the existing value of the Comment element, if any.

        " } }, "ResourceId": { "base": null, "refs": { "AliasTarget$HostedZoneId": "

        Alias resource records sets only: The value used depends on where the queries are routed:

        A CloudFront distribution

        Specify Z2FDTNDATAQYW2.

        Alias resource record sets for CloudFront cannot be created in a private zone.

        Elastic Beanstalk environment

        Specify the hosted zone ID for the region in which you created the environment. The environment must have a regionalized subdomain. For a list of regions and the corresponding hosted zone IDs, see AWS Elastic Beanstalk in the Regions and Endpoints chapter of the AWS General Reference.

        ELB load balancer

        Specify the value of the hosted zone ID for the load balancer. Use the following methods to get the hosted zone ID:

        • AWS Management Console: Go to the Amazon EC2; page, click Load Balancers in the navigation pane, select the load balancer, and get the value of the Hosted Zone ID field on the Description tab. Use the same process to get the DNS Name. See HostedZone$Name.

        • Elastic Load Balancing API: Use DescribeLoadBalancers to get the value of CanonicalHostedZoneNameID. Use the same process to get the CanonicalHostedZoneName. See HostedZone$Name.

        • AWS CLI: Use describe-load-balancers to get the value of CanonicalHostedZoneNameID. Use the same process to get the CanonicalHostedZoneName. See HostedZone$Name.

        An Amazon S3 bucket configured as a static website

        Specify the hosted zone ID for the Amazon S3 website endpoint in which you created the bucket. For more information about valid values, see the table Amazon S3 (S3) Website Endpoints in the Amazon Web Services General Reference.

        Another Amazon Route 53 resource record set in your hosted zone

        Specify the hosted zone ID of your hosted zone. (An alias resource record set cannot reference a resource record set in a different hosted zone.)

        ", "AssociateVPCWithHostedZoneRequest$HostedZoneId": "

        The ID of the hosted zone you want to associate your VPC with.

        Note that you cannot associate a VPC with a hosted zone that doesn't have an existing VPC association.

        ", "ChangeBatchRecord$Id": "

        The ID of the request. Use this ID to track when the change has completed across all Amazon Route 53 DNS servers.

        ", "ChangeInfo$Id": "

        The ID of the request.

        ", "ChangeResourceRecordSetsRequest$HostedZoneId": "

        The ID of the hosted zone that contains the resource record sets that you want to change.

        ", "CreateHostedZoneRequest$DelegationSetId": "

        If you want to associate a reusable delegation set with this hosted zone, the ID that Amazon Route 53 assigned to the reusable delegation set when you created it. For more information about reusable delegation sets, see CreateReusableDelegationSet.

        Type

        String

        Default

        None

        Parent

        CreatedHostedZoneRequest

        ", "CreateReusableDelegationSetRequest$HostedZoneId": "

        If you want to mark the delegation set for an existing hosted zone as reusable, the ID for that hosted zone.

        ", "CreateTrafficPolicyInstanceRequest$HostedZoneId": "

        The ID of the hosted zone in which you want Amazon Route 53 to create resource record sets by using the configuration in a traffic policy.

        ", "DelegationSet$Id": "

        The ID that Amazon Route 53 assigns to a reusable delegation set.

        ", "DeleteHostedZoneRequest$Id": "

        The ID of the hosted zone you want to delete.

        ", "DeleteReusableDelegationSetRequest$Id": "

        The ID of the reusable delegation set you want to delete.

        ", "DisassociateVPCFromHostedZoneRequest$HostedZoneId": "

        The ID of the VPC that you want to disassociate from an Amazon Route 53 hosted zone.

        ", "GetChangeDetailsRequest$Id": "

        The ID of the change batch. This is the value that you specified in the change ID parameter when you submitted the request.

        ", "GetChangeRequest$Id": "

        The ID of the change batch request. The value that you specify here is the value that ChangeResourceRecordSets returned in the Id element when you submitted the request.

        ", "GetHostedZoneRequest$Id": "

        The ID of the hosted zone for which you want to get a list of the name servers in the delegation set.

        ", "GetReusableDelegationSetRequest$Id": "

        The ID of the reusable delegation set for which you want to get a list of the name server.

        ", "HostedZone$Id": "

        The ID that Amazon Route 53 assigned to the hosted zone when you created it.

        ", "ListChangeBatchesByHostedZoneRequest$HostedZoneId": "

        The ID of the hosted zone that you want to see changes for.

        ", "ListChangeBatchesByRRSetRequest$HostedZoneId": "

        The ID of the hosted zone that you want to see changes for.

        ", "ListHostedZonesByNameRequest$HostedZoneId": "

        (Optional) For your first request to ListHostedZonesByName, do not include the hostedzoneid parameter.

        If you have more hosted zones than the value of maxitems, ListHostedZonesByName returns only the first maxitems hosted zones. To get the next group of maxitems hosted zones, submit another request to ListHostedZonesByName and include both dnsname and hostedzoneid parameters. For the value of hostedzoneid, specify the value of the NextHostedZoneId element from the previous response.

        ", "ListHostedZonesByNameResponse$HostedZoneId": "

        The ID that Amazon Route 53 assigned to the hosted zone when you created it.

        ", "ListHostedZonesByNameResponse$NextHostedZoneId": "

        If IsTruncated is true, the value of NextHostedZoneId identifies the first hosted zone in the next group of maxitems hosted zones. Call ListHostedZonesByName again and specify the value of NextDNSName and NextHostedZoneId in the dnsname and hostedzoneid parameters, respectively.

        This element is present only if IsTruncated is true.

        ", "ListHostedZonesRequest$DelegationSetId": "

        If you're using reusable delegation sets and you want to list all of the hosted zones that are associated with a reusable delegation set, specify the ID of that reusable delegation set.

        ", "ListResourceRecordSetsRequest$HostedZoneId": "

        The ID of the hosted zone that contains the resource record sets that you want to get.

        ", "ListTrafficPolicyInstancesByHostedZoneRequest$HostedZoneId": "

        The ID of the hosted zone for which you want to list traffic policy instances.

        ", "ListTrafficPolicyInstancesByPolicyRequest$HostedZoneIdMarker": "

        For the first request to ListTrafficPolicyInstancesByPolicy, omit this value.

        If the value of IsTruncated in the previous response was true, HostedZoneIdMarker is the ID of the hosted zone for the first traffic policy instance in the next group of MaxItems traffic policy instances.

        If the value of IsTruncated in the previous response was false, there are no more traffic policy instances to get for this hosted zone.

        If the value of IsTruncated in the previous response was false, omit this value.

        ", "ListTrafficPolicyInstancesByPolicyResponse$HostedZoneIdMarker": "

        If IsTruncated is true, HostedZoneIdMarker is the ID of the hosted zone of the first traffic policy instance in the next group of MaxItems traffic policy instances.

        ", "ListTrafficPolicyInstancesRequest$HostedZoneIdMarker": "

        For the first request to ListTrafficPolicyInstances, omit this value.

        If the value of IsTruncated in the previous response was true, you have more traffic policy instances. To get the next group of MaxItems traffic policy instances, submit another ListTrafficPolicyInstances request. For the value of HostedZoneIdMarker, specify the value of HostedZoneIdMarker from the previous response, which is the hosted zone ID of the first traffic policy instance in the next group of MaxItems traffic policy instances.

        If the value of IsTruncated in the previous response was false, there are no more traffic policy instances to get.

        ", "ListTrafficPolicyInstancesResponse$HostedZoneIdMarker": "

        If IsTruncated is true, HostedZoneIdMarker is the ID of the hosted zone of the first traffic policy instance in the next group of MaxItems traffic policy instances.

        ", "TestDNSAnswerRequest$HostedZoneId": "

        The ID of the hosted zone that you want Amazon Route 53 to simulate a query for.

        ", "TrafficPolicyInstance$HostedZoneId": "

        The ID of the hosted zone that Amazon Route 53 created resource record sets in.

        ", "UpdateHostedZoneCommentRequest$Id": "

        The ID for the hosted zone for which you want to update the comment.

        " } }, "ResourcePath": { "base": null, "refs": { "HealthCheckConfig$ResourcePath": "

        The path, if any, that you want Amazon Route 53 to request when performing health checks. The path can be any value for which your endpoint will return an HTTP status code of 2xx or 3xx when the endpoint is healthy, for example, the file /docs/route53-health-check.html.

        ", "UpdateHealthCheckRequest$ResourcePath": "

        The path that you want Amazon Route 53 to request when performing health checks. The path can be any value for which your endpoint will return an HTTP status code of 2xx or 3xx when the endpoint is healthy, for example the file /docs/route53-health-check.html.

        Specify this value only if you want to change it.

        " } }, "ResourceRecord": { "base": "

        Information specific to the resource record.

        If you are creating an alias resource record set, omit ResourceRecord.

        ", "refs": { "ResourceRecords$member": null } }, "ResourceRecordSet": { "base": "

        Information about the resource record set to create or delete.

        ", "refs": { "Change$ResourceRecordSet": "

        Information about the resource record set to create or delete.

        ", "ResourceRecordSets$member": null } }, "ResourceRecordSetFailover": { "base": null, "refs": { "ResourceRecordSet$Failover": "

        Failover resource record sets only: To configure failover, you add the Failover element to two resource record sets. For one resource record set, you specify PRIMARY as the value for Failover; for the other resource record set, you specify SECONDARY. In addition, you include the HealthCheckId element and specify the health check that you want Amazon Route 53 to perform for each resource record set.

        Except where noted, the following failover behaviors assume that you have included the HealthCheckId element in both resource record sets:

        • When the primary resource record set is healthy, Amazon Route 53 responds to DNS queries with the applicable value from the primary resource record set regardless of the health of the secondary resource record set.

        • When the primary resource record set is unhealthy and the secondary resource record set is healthy, Amazon Route 53 responds to DNS queries with the applicable value from the secondary resource record set.

        • When the secondary resource record set is unhealthy, Amazon Route 53 responds to DNS queries with the applicable value from the primary resource record set regardless of the health of the primary resource record set.

        • If you omit the HealthCheckId element for the secondary resource record set, and if the primary resource record set is unhealthy, Amazon Route 53 always responds to DNS queries with the applicable value from the secondary resource record set. This is true regardless of the health of the associated endpoint.

        You cannot create non-failover resource record sets that have the same values for the Name and Type elements as failover resource record sets.

        For failover alias resource record sets, you must also include the EvaluateTargetHealth element and set the value to true.

        For more information about configuring failover for Amazon Route 53, see the following topics in the Amazon Route 53 Developer Guide:

        Valid values: PRIMARY | SECONDARY

        " } }, "ResourceRecordSetIdentifier": { "base": null, "refs": { "ListChangeBatchesByRRSetRequest$SetIdentifier": "

        The identifier of the RRSet that you want to see changes for.

        ", "ListResourceRecordSetsRequest$StartRecordIdentifier": "

        Weighted resource record sets only: If results were truncated for a given DNS name and type, specify the value of NextRecordIdentifier from the previous response to get the next resource record set that has the current DNS name and type.

        ", "ListResourceRecordSetsResponse$NextRecordIdentifier": "

        Weighted, latency, geolocation, and failover resource record sets only: If results were truncated for a given DNS name and type, the value of SetIdentifier for the next resource record set that has the current DNS name and type.

        ", "ResourceRecordSet$SetIdentifier": "

        Weighted, Latency, Geo, and Failover resource record sets only: An identifier that differentiates among multiple resource record sets that have the same combination of DNS name and type. The value of SetIdentifier must be unique for each resource record set that has the same combination of DNS name and type. Omit SetIdentifier for any other types of record sets.

        " } }, "ResourceRecordSetRegion": { "base": null, "refs": { "ResourceRecordSet$Region": "

        Latency-based resource record sets only: The Amazon EC2 region where the resource that is specified in this resource record set resides. The resource typically is an AWS resource, such as an Amazon EC2 instance or an ELB load balancer, and is referred to by an IP address or a DNS domain name, depending on the record type.

        Creating latency and latency alias resource record sets in private hosted zones is not supported.

        When Amazon Route 53 receives a DNS query for a domain name and type for which you have created latency resource record sets, Amazon Route 53 selects the latency resource record set that has the lowest latency between the end user and the associated Amazon EC2 region. Amazon Route 53 then returns the value that is associated with the selected resource record set.

        Note the following:

        • You can only specify one ResourceRecord per latency resource record set.

        • You can only create one latency resource record set for each Amazon EC2 region.

        • You are not required to create latency resource record sets for all Amazon EC2 regions. Amazon Route 53 will choose the region with the best latency from among the regions for which you create latency resource record sets.

        • You cannot create non-latency resource record sets that have the same values for the Name and Type elements as latency resource record sets.

        " } }, "ResourceRecordSetWeight": { "base": null, "refs": { "ResourceRecordSet$Weight": "

        Weighted resource record sets only: Among resource record sets that have the same combination of DNS name and type, a value that determines the proportion of DNS queries that Amazon Route 53 responds to using the current resource record set. Amazon Route 53 calculates the sum of the weights for the resource record sets that have the same combination of DNS name and type. Amazon Route 53 then responds to queries based on the ratio of a resource's weight to the total. Note the following:

        • You must specify a value for the Weight element for every weighted resource record set.

        • You can only specify one ResourceRecord per weighted resource record set.

        • You cannot create latency, failover, or geolocation resource record sets that have the same values for the Name and Type elements as weighted resource record sets.

        • You can create a maximum of 100 weighted resource record sets that have the same values for the Name and Type elements.

        • For weighted (but not weighted alias) resource record sets, if you set Weight to 0 for a resource record set, Amazon Route 53 never responds to queries with the applicable value for that resource record set. However, if you set Weight to 0 for all resource record sets that have the same combination of DNS name and type, traffic is routed to all resources with equal probability.

          The effect of setting Weight to 0 is different when you associate health checks with weighted resource record sets. For more information, see Options for Configuring Amazon Route 53 Active-Active and Active-Passive Failover in the Amazon Route 53 Developer Guide.

        " } }, "ResourceRecordSets": { "base": null, "refs": { "ListResourceRecordSetsResponse$ResourceRecordSets": "

        Information about multiple resource record sets.

        " } }, "ResourceRecords": { "base": null, "refs": { "ResourceRecordSet$ResourceRecords": "

        Information about the resource records to act upon.

        If you are creating an alias resource record set, omit ResourceRecords.

        " } }, "ResourceTagSet": { "base": "

        A complex type containing a resource and its associated tags.

        ", "refs": { "ListTagsForResourceResponse$ResourceTagSet": "

        A ResourceTagSet containing tags associated with the specified resource.

        ", "ResourceTagSetList$member": null } }, "ResourceTagSetList": { "base": null, "refs": { "ListTagsForResourcesResponse$ResourceTagSets": "

        A list of ResourceTagSets containing tags associated with the specified resources.

        " } }, "ResourceURI": { "base": null, "refs": { "CreateHealthCheckResponse$Location": "

        The unique URL representing the new health check.

        ", "CreateHostedZoneResponse$Location": "

        The unique URL representing the new hosted zone.

        ", "CreateReusableDelegationSetResponse$Location": "

        The unique URL representing the new reusable delegation set.

        ", "CreateTrafficPolicyInstanceResponse$Location": "

        A unique URL that represents a new traffic policy instance.

        ", "CreateTrafficPolicyResponse$Location": "

        A unique URL that represents a new traffic policy.

        ", "CreateTrafficPolicyVersionResponse$Location": "

        A unique URL that represents a new traffic policy version.

        " } }, "SearchString": { "base": null, "refs": { "HealthCheckConfig$SearchString": "

        If the value of Type is HTTP_STR_MATCH or HTTP_STR_MATCH, the string that you want Amazon Route 53 to search for in the response body from the specified resource. If the string appears in the response body, Amazon Route 53 considers the resource healthy.

        Amazon Route 53 considers case when searching for SearchString in the response body.

        ", "UpdateHealthCheckRequest$SearchString": "

        If the value of Type is HTTP_STR_MATCH or HTTP_STR_MATCH, the string that you want Amazon Route 53 to search for in the response body from the specified resource. If the string appears in the response body, Amazon Route 53 considers the resource healthy. (You can't change the value of Type when you update a health check.)

        " } }, "Statistic": { "base": null, "refs": { "CloudWatchAlarmConfiguration$Statistic": "

        For the metric that the CloudWatch alarm is associated with, the statistic that is applied to the metric.

        " } }, "Status": { "base": null, "refs": { "StatusReport$Status": "

        A description of the status of the health check endpoint as reported by one of the Amazon Route 53 health checkers.

        " } }, "StatusReport": { "base": "

        A complex type that contains the status that one Amazon Route 53 health checker reports and the time of the health check.

        ", "refs": { "HealthCheckObservation$StatusReport": "

        A complex type that contains the last failure reason as reported by one Amazon Route 53 health checker and the time of the failed health check.

        " } }, "SubnetMask": { "base": null, "refs": { "TestDNSAnswerRequest$EDNS0ClientSubnetMask": "

        If you specify an IP address for edns0clientsubnetip, you can optionally specify the number of bits of the IP address that you want the checking tool to include in the DNS query. For example, if you specify 192.0.2.44 for edns0clientsubnetip and 24 for edns0clientsubnetmask, the checking tool will simulate a request from 192.0.2.0/24. The default value is 24 bits.

        " } }, "TTL": { "base": null, "refs": { "CreateTrafficPolicyInstanceRequest$TTL": "

        (Optional) The TTL that you want Amazon Route 53 to assign to all of the resource record sets that it creates in the specified hosted zone.

        ", "ResourceRecordSet$TTL": "

        The resource record cache time to live (TTL), in seconds. Note the following:

        • If you're creating an alias resource record set, omit TTL. Amazon Route 53 uses the value of TTL for the alias target.

        • If you're associating this resource record set with a health check (if you're adding a HealthCheckId element), we recommend that you specify a TTL of 60 seconds or less so clients respond quickly to changes in health status.

        • All of the resource record sets in a group of weighted, latency, geolocation, or failover resource record sets must have the same value for TTL.

        • If a group of weighted resource record sets includes one or more weighted alias resource record sets for which the alias target is an ELB load balancer, we recommend that you specify a TTL of 60 seconds for all of the non-alias weighted resource record sets that have the same name and type. Values other than 60 seconds (the TTL for load balancers) will change the effect of the values that you specify for Weight.

        ", "TrafficPolicyInstance$TTL": "

        The TTL that Amazon Route 53 assigned to all of the resource record sets that it created in the specified hosted zone.

        ", "UpdateTrafficPolicyInstanceRequest$TTL": "

        The TTL that you want Amazon Route 53 to assign to all of the updated resource record sets.

        " } }, "Tag": { "base": "

        A complex type that contains information about a tag that you want to add or edit for the specified health check or hosted zone.

        ", "refs": { "TagList$member": null } }, "TagKey": { "base": null, "refs": { "Tag$Key": "

        The value of Key depends on the operation that you want to perform:

        • Add a tag to a health check or hosted zone: Key is the name that you want to give the new tag.

        • Edit a tag: Key is the name of the tag whose Value element you want to remove.

        • Delete a key: Key is the name of the tag you want to remove.

        • Give a name to a health check: Edit the default Name tag. In the Amazon Route 53 console, the list of your health checks includes a Name column that lets you see the name that you've given to each health check.

        ", "TagKeyList$member": null } }, "TagKeyList": { "base": null, "refs": { "ChangeTagsForResourceRequest$RemoveTagKeys": "

        A complex type that contains a list of the tags that you want to delete from the specified health check or hosted zone. You can specify up to 10 keys.

        " } }, "TagList": { "base": null, "refs": { "ChangeTagsForResourceRequest$AddTags": "

        A complex type that contains a list of the tags that you want to add to the specified health check or hosted zone and/or the tags for which you want to edit the Value element.

        You can add a maximum of 10 tags to a health check or a hosted zone.

        ", "ResourceTagSet$Tags": "

        The tags associated with the specified resource.

        " } }, "TagResourceId": { "base": null, "refs": { "ChangeTagsForResourceRequest$ResourceId": "

        The ID of the resource for which you want to add, change, or delete tags.

        ", "ListTagsForResourceRequest$ResourceId": "

        The ID of the resource for which you want to retrieve tags.

        ", "ResourceTagSet$ResourceId": "

        The ID for the specified resource.

        ", "TagResourceIdList$member": null } }, "TagResourceIdList": { "base": null, "refs": { "ListTagsForResourcesRequest$ResourceIds": "

        A complex type that contains the ResourceId element for each resource for which you want to get a list of tags.

        " } }, "TagResourceType": { "base": null, "refs": { "ChangeTagsForResourceRequest$ResourceType": "

        The type of the resource.

        • The resource type for health checks is healthcheck.

        • The resource type for hosted zones is hostedzone.

        ", "ListTagsForResourceRequest$ResourceType": "

        The type of the resource.

        • The resource type for health checks is healthcheck.

        • The resource type for hosted zones is hostedzone.

        ", "ListTagsForResourcesRequest$ResourceType": "

        The type of the resources.

        • The resource type for health checks is healthcheck.

        • The resource type for hosted zones is hostedzone.

        ", "ResourceTagSet$ResourceType": "

        The type of the resource.

        • The resource type for health checks is healthcheck.

        • The resource type for hosted zones is hostedzone.

        " } }, "TagValue": { "base": null, "refs": { "Tag$Value": "

        The value of Value depends on the operation that you want to perform:

        • Add a tag to a health check or hosted zone: Value is the value that you want to give the new tag.

        • Edit a tag: Value is the new value that you want to assign the tag.

        " } }, "TestDNSAnswerRequest": { "base": "

        Gets the value that Amazon Route 53 returns in response to a DNS request for a specified record name and type. You can optionally specify the IP address of a DNS resolver, an EDNS0 client subnet IP address, and a subnet mask.

        Parameters

        hostedzoneid

        The ID of the hosted zone that you want Amazon Route 53 to simulate a query for.

        recordname

        The name of the resource record set that you want Amazon Route 53 to simulate a query for.

        recordtype

        The type of the resource record set.

        resolverip (optional)

        If you want to simulate a request from a specific DNS resolver, specify the IP address for that resolver. If you omit this value, TestDNSAnswer uses the IP address of a DNS resolver in the AWS US East region.

        edns0clientsubnetip (optional)

        If the resolver that you specified for resolverip supports EDNS0, specify the IP address of a client in the applicable location.

        edns0clientsubnetmask (optional)

        If you specify an IP address for edns0clientsubnetip, you can optionally specify the number of bits of the IP address that you want the checking tool to include in the DNS query. For example, if you specify 192.0.2.44 for edns0clientsubnetip and 24 for edns0clientsubnetmask, the checking tool will simulate a request from 192.0.2.0/24. The default value is 24 bits.

        ", "refs": { } }, "TestDNSAnswerResponse": { "base": "

        A complex type that contains the response to a TestDNSAnswer request.

        ", "refs": { } }, "Threshold": { "base": null, "refs": { "CloudWatchAlarmConfiguration$Threshold": "

        For the metric that the CloudWatch alarm is associated with, the value the metric is compared with.

        " } }, "ThrottlingException": { "base": "

        ", "refs": { } }, "TimeStamp": { "base": null, "refs": { "ChangeBatchRecord$SubmittedAt": "

        The date and time the change was submitted, in the format YYYY-MM-DDThh:mm:ssZ, as specified in the ISO 8601 standard (for example, 2009-11-19T19:37:58Z). The Z after the time indicates that the time is listed in Coordinated Universal Time (UTC).

        ", "ChangeInfo$SubmittedAt": "

        The date and time the change request was submitted, in Coordinated Universal Time (UTC) format: YYYY-MM-DDThh:mm:ssZ. For more information, see the Wikipedia entry ISO 8601.

        ", "StatusReport$CheckedTime": "

        The time at which the health checker performed the health check in ISO 8601 format and Coordinated Universal Time (UTC). For example, the value 2014-10-27T17:48:16.751Z represents October 27, 2014 at 17:48:16.751 UTC.

        " } }, "TooManyHealthChecks": { "base": "

        You have reached the maximum number of active health checks for an AWS account. The default limit is 100. To request a higher limit, create a case with the AWS Support Center.

        ", "refs": { } }, "TooManyHostedZones": { "base": "

        This hosted zone cannot be created because the hosted zone limit is exceeded. To request a limit increase, go to the Amazon Route 53 Contact Us page.

        ", "refs": { } }, "TooManyTrafficPolicies": { "base": "

        You've created the maximum number of traffic policies that can be created for the current AWS account. You can request an increase to the limit on the Contact Us page.

        ", "refs": { } }, "TooManyTrafficPolicyInstances": { "base": "

        You've created the maximum number of traffic policy instances that can be created for the current AWS account. You can request an increase to the limit on the Contact Us page.

        ", "refs": { } }, "TrafficPolicies": { "base": null, "refs": { "ListTrafficPolicyVersionsResponse$TrafficPolicies": "

        A list that contains one TrafficPolicy element for each traffic policy version that is associated with the specified traffic policy.

        " } }, "TrafficPolicy": { "base": "

        A complex type that contains settings for a traffic policy.

        ", "refs": { "CreateTrafficPolicyResponse$TrafficPolicy": "

        A complex type that contains settings for the new traffic policy.

        ", "CreateTrafficPolicyVersionResponse$TrafficPolicy": "

        A complex type that contains settings for the new version of the traffic policy.

        ", "GetTrafficPolicyResponse$TrafficPolicy": "

        A complex type that contains settings for the specified traffic policy.

        ", "TrafficPolicies$member": null, "UpdateTrafficPolicyCommentResponse$TrafficPolicy": "

        A complex type that contains settings for the specified traffic policy.

        " } }, "TrafficPolicyAlreadyExists": { "base": "

        A traffic policy that has the same value for Name already exists.

        ", "refs": { } }, "TrafficPolicyComment": { "base": null, "refs": { "CreateTrafficPolicyRequest$Comment": "

        (Optional) Any comments that you want to include about the traffic policy.

        ", "CreateTrafficPolicyVersionRequest$Comment": "

        The comment that you specified in the CreateTrafficPolicyVersion request, if any.

        ", "TrafficPolicy$Comment": "

        The comment that you specify in the CreateTrafficPolicy request, if any.

        ", "UpdateTrafficPolicyCommentRequest$Comment": "

        The new comment for the specified traffic policy and version.

        " } }, "TrafficPolicyDocument": { "base": null, "refs": { "CreateTrafficPolicyRequest$Document": "

        The definition of this traffic policy in JSON format. For more information, see Traffic Policy Document Format in the Amazon Route 53 API Reference.

        ", "CreateTrafficPolicyVersionRequest$Document": "

        The definition of this version of the traffic policy, in JSON format. You specified the JSON in the CreateTrafficPolicyVersion request. For more information about the JSON format, see CreateTrafficPolicy.

        ", "TrafficPolicy$Document": "

        The definition of a traffic policy in JSON format. You specify the JSON document to use for a new traffic policy in the CreateTrafficPolicy request. For more information about the JSON format, see Traffic Policy Document Format.

        " } }, "TrafficPolicyId": { "base": null, "refs": { "CreateTrafficPolicyInstanceRequest$TrafficPolicyId": "

        The ID of the traffic policy that you want to use to create resource record sets in the specified hosted zone.

        ", "CreateTrafficPolicyVersionRequest$Id": "

        The ID of the traffic policy for which you want to create a new version.

        ", "DeleteTrafficPolicyRequest$Id": "

        The ID of the traffic policy that you want to delete.

        ", "GetTrafficPolicyRequest$Id": "

        The ID of the traffic policy that you want to get information about.

        ", "ListTrafficPoliciesRequest$TrafficPolicyIdMarker": "

        (Conditional) For your first request to ListTrafficPolicies, do not include the TrafficPolicyIdMarker parameter.

        If you have more traffic policies than the value of MaxItems, ListTrafficPolicies returns only the first MaxItems traffic policies. To get the next group of MaxItems policies, submit another request to ListTrafficPolicies. For the value of TrafficPolicyIdMarker, specify the value of the TrafficPolicyIdMarker element that was returned in the previous response.

        Policies are listed in the order in which they were created.

        ", "ListTrafficPoliciesResponse$TrafficPolicyIdMarker": "

        If the value of IsTruncated is true, TrafficPolicyIdMarker is the ID of the first traffic policy in the next group of MaxItems traffic policies.

        ", "ListTrafficPolicyInstancesByPolicyRequest$TrafficPolicyId": "

        The ID of the traffic policy for which you want to list traffic policy instances.

        ", "ListTrafficPolicyVersionsRequest$Id": "

        Specify the value of Id of the traffic policy for which you want to list all versions.

        ", "TrafficPolicy$Id": "

        The ID that Amazon Route 53 assigned to a traffic policy when you created it.

        ", "TrafficPolicyInstance$TrafficPolicyId": "

        The ID of the traffic policy that Amazon Route 53 used to create resource record sets in the specified hosted zone.

        ", "TrafficPolicySummary$Id": "

        The ID that Amazon Route 53 assigned to the traffic policy when you created it.

        ", "UpdateTrafficPolicyCommentRequest$Id": "

        The value of Id for the traffic policy for which you want to update the comment.

        ", "UpdateTrafficPolicyInstanceRequest$TrafficPolicyId": "

        The ID of the traffic policy that you want Amazon Route 53 to use to update resource record sets for the specified traffic policy instance.

        " } }, "TrafficPolicyInUse": { "base": "

        One or more traffic policy instances were created by using the specified traffic policy.

        ", "refs": { } }, "TrafficPolicyInstance": { "base": "

        A complex type that contains settings for the new traffic policy instance.

        ", "refs": { "CreateTrafficPolicyInstanceResponse$TrafficPolicyInstance": "

        A complex type that contains settings for the new traffic policy instance.

        ", "GetTrafficPolicyInstanceResponse$TrafficPolicyInstance": "

        A complex type that contains settings for the traffic policy instance.

        ", "TrafficPolicyInstances$member": null, "UpdateTrafficPolicyInstanceResponse$TrafficPolicyInstance": "

        A complex type that contains settings for the updated traffic policy instance.

        " } }, "TrafficPolicyInstanceAlreadyExists": { "base": "

        Traffic policy instance with given Id already exists.

        ", "refs": { } }, "TrafficPolicyInstanceCount": { "base": null, "refs": { "GetTrafficPolicyInstanceCountResponse$TrafficPolicyInstanceCount": "

        The number of traffic policy instances that are associated with the current AWS account.

        " } }, "TrafficPolicyInstanceId": { "base": null, "refs": { "DeleteTrafficPolicyInstanceRequest$Id": "

        The ID of the traffic policy instance that you want to delete.

        When you delete a traffic policy instance, Amazon Route 53 also deletes all of the resource record sets that were created when you created the traffic policy instance.

        ", "GetTrafficPolicyInstanceRequest$Id": "

        The ID of the traffic policy instance that you want to get information about.

        ", "ResourceRecordSet$TrafficPolicyInstanceId": "

        When you create a traffic policy instance, Amazon Route 53 automatically creates a resource record set. TrafficPolicyInstanceId is the ID of the traffic policy instance that Amazon Route 53 created this resource record set for.

        To delete the resource record set that is associated with a traffic policy instance, use DeleteTrafficPolicyInstance. Amazon Route 53 will delete the resource record set automatically. If you delete the resource record set by using ChangeResourceRecordSets, Amazon Route 53 doesn't automatically delete the traffic policy instance, and you'll continue to be charged for it even though it's no longer in use.

        ", "TrafficPolicyInstance$Id": "

        The ID that Amazon Route 53 assigned to the new traffic policy instance.

        ", "UpdateTrafficPolicyInstanceRequest$Id": "

        The ID of the traffic policy instance that you want to update.

        " } }, "TrafficPolicyInstanceState": { "base": null, "refs": { "TrafficPolicyInstance$State": "

        The value of State is one of the following values:

        Applied

        Amazon Route 53 has finished creating resource record sets, and changes have propagated to all Amazon Route 53 edge locations.

        Creating

        Amazon Route 53 is creating the resource record sets. Use GetTrafficPolicyInstance to confirm that the CreateTrafficPolicyInstance request completed successfully.

        Failed

        Amazon Route 53 wasn't able to create or update the resource record sets. When the value of State is Failed, see Message for an explanation of what caused the request to fail.

        " } }, "TrafficPolicyInstances": { "base": null, "refs": { "ListTrafficPolicyInstancesByHostedZoneResponse$TrafficPolicyInstances": "

        A list that contains one TrafficPolicyInstance element for each traffic policy instance that matches the elements in the request.

        ", "ListTrafficPolicyInstancesByPolicyResponse$TrafficPolicyInstances": "

        A list that contains one TrafficPolicyInstance element for each traffic policy instance that matches the elements in the request.

        ", "ListTrafficPolicyInstancesResponse$TrafficPolicyInstances": "

        A list that contains one TrafficPolicyInstance element for each traffic policy instance that matches the elements in the request.

        " } }, "TrafficPolicyName": { "base": null, "refs": { "CreateTrafficPolicyRequest$Name": "

        The name of the traffic policy.

        ", "TrafficPolicy$Name": "

        The name that you specified when you created the traffic policy.

        ", "TrafficPolicySummary$Name": "

        The name that you specified for the traffic policy when you created it.

        " } }, "TrafficPolicySummaries": { "base": null, "refs": { "ListTrafficPoliciesResponse$TrafficPolicySummaries": "

        A list that contains one TrafficPolicySummary element for each traffic policy that was created by the current AWS account.

        " } }, "TrafficPolicySummary": { "base": "

        A complex type that contains information about the latest version of one traffic policy that is associated with the current AWS account.

        ", "refs": { "TrafficPolicySummaries$member": null } }, "TrafficPolicyVersion": { "base": null, "refs": { "CreateTrafficPolicyInstanceRequest$TrafficPolicyVersion": "

        The version of the traffic policy that you want to use to create resource record sets in the specified hosted zone.

        ", "DeleteTrafficPolicyRequest$Version": "

        The version number of the traffic policy that you want to delete.

        ", "GetTrafficPolicyRequest$Version": "

        The version number of the traffic policy that you want to get information about.

        ", "ListTrafficPolicyInstancesByPolicyRequest$TrafficPolicyVersion": "

        The version of the traffic policy for which you want to list traffic policy instances. The version must be associated with the traffic policy that is specified by TrafficPolicyId.

        ", "TrafficPolicy$Version": "

        The version number that Amazon Route 53 assigns to a traffic policy. For a new traffic policy, the value of Version is always 1.

        ", "TrafficPolicyInstance$TrafficPolicyVersion": "

        The version of the traffic policy that Amazon Route 53 used to create resource record sets in the specified hosted zone.

        ", "TrafficPolicySummary$LatestVersion": "

        The version number of the latest version of the traffic policy.

        ", "TrafficPolicySummary$TrafficPolicyCount": "

        The number of traffic policies that are associated with the current AWS account.

        ", "UpdateTrafficPolicyCommentRequest$Version": "

        The value of Version for the traffic policy for which you want to update the comment.

        ", "UpdateTrafficPolicyInstanceRequest$TrafficPolicyVersion": "

        The version of the traffic policy that you want Amazon Route 53 to use to update resource record sets for the specified traffic policy instance.

        " } }, "TrafficPolicyVersionMarker": { "base": null, "refs": { "ListTrafficPolicyVersionsRequest$TrafficPolicyVersionMarker": "

        For your first request to ListTrafficPolicyVersions, do not include the TrafficPolicyVersionMarker parameter.

        If you have more traffic policy versions than the value of MaxItems, ListTrafficPolicyVersions returns only the first group of MaxItems versions. To get the next group of MaxItems traffic policy versions, submit another request to ListTrafficPolicyVersions. For the value of TrafficPolicyVersionMarker, specify the value of the TrafficPolicyVersionMarker element that was returned in the previous response.

        Traffic policy versions are listed in sequential order.

        ", "ListTrafficPolicyVersionsResponse$TrafficPolicyVersionMarker": "

        If IsTruncated is true, the value of TrafficPolicyVersionMarker identifies the first traffic policy in the next group of MaxItems traffic policies. Call ListTrafficPolicyVersions again and specify the value of TrafficPolicyVersionMarker in the TrafficPolicyVersionMarker request parameter.

        This element is present only if IsTruncated is true.

        " } }, "TransportProtocol": { "base": null, "refs": { "TestDNSAnswerResponse$Protocol": "

        The protocol that Amazon Route 53 used to respond to the request, either UDP or TCP.

        " } }, "UpdateHealthCheckRequest": { "base": "

        A complex type that contains the health check request information.

        ", "refs": { } }, "UpdateHealthCheckResponse": { "base": null, "refs": { } }, "UpdateHostedZoneCommentRequest": { "base": "

        A complex type that contains the hosted zone request information.

        ", "refs": { } }, "UpdateHostedZoneCommentResponse": { "base": "

        A complex type that contains the response to the UpdateHostedZoneCommentRequest.

        ", "refs": { } }, "UpdateTrafficPolicyCommentRequest": { "base": "

        A complex type that contains information about the traffic policy for which you want to update the comment.

        ", "refs": { } }, "UpdateTrafficPolicyCommentResponse": { "base": "

        A complex type that contains the response information for the traffic policy.

        ", "refs": { } }, "UpdateTrafficPolicyInstanceRequest": { "base": "

        A complex type that contains information about the resource record sets that you want to update based on a specified traffic policy instance.

        ", "refs": { } }, "UpdateTrafficPolicyInstanceResponse": { "base": "

        A complex type that contains information about the resource record sets that Amazon Route 53 created based on a specified traffic policy.

        ", "refs": { } }, "VPC": { "base": "

        A complex type that contains information about the Amazon VPC that you're associating with the specified hosted zone.

        ", "refs": { "AssociateVPCWithHostedZoneRequest$VPC": "

        A complex type containing information about the Amazon VPC that you're associating with the specified hosted zone.

        ", "CreateHostedZoneRequest$VPC": "

        The VPC that you want your hosted zone to be associated with. By providing this parameter, your newly created hosted cannot be resolved anywhere other than the given VPC.

        ", "CreateHostedZoneResponse$VPC": "

        A complex type that contains information about an Amazon VPC that you associated with this hosted zone.

        ", "DisassociateVPCFromHostedZoneRequest$VPC": "

        A complex type containing information about the Amazon VPC that you're disassociating from the specified hosted zone.

        ", "VPCs$member": null } }, "VPCAssociationNotFound": { "base": "

        The specified VPC and hosted zone are not currently associated.

        ", "refs": { } }, "VPCId": { "base": "

        A VPC ID

        ", "refs": { "VPC$VPCId": null } }, "VPCRegion": { "base": null, "refs": { "VPC$VPCRegion": "

        The region in which you created the VPC that you want to associate with the specified Amazon Route 53 hosted zone.

        " } }, "VPCs": { "base": "

        A list of VPCs

        ", "refs": { "GetHostedZoneResponse$VPCs": "

        A complex type that contains information about VPCs associated with the specified hosted zone.

        " } } } } aws-sdk-go-1.4.22/models/apis/route53/2013-04-01/examples-1.json000066400000000000000000000000541300374646400232020ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/route53/2013-04-01/paginators-1.json000066400000000000000000000014531300374646400235370ustar00rootroot00000000000000{ "pagination": { "ListHealthChecks": { "input_token": "Marker", "output_token": "NextMarker", "more_results": "IsTruncated", "limit_key": "MaxItems", "result_key": "HealthChecks" }, "ListHostedZones": { "input_token": "Marker", "output_token": "NextMarker", "more_results": "IsTruncated", "limit_key": "MaxItems", "result_key": "HostedZones" }, "ListResourceRecordSets": { "more_results": "IsTruncated", "limit_key": "MaxItems", "result_key": "ResourceRecordSets", "input_token": [ "StartRecordName", "StartRecordType", "StartRecordIdentifier" ], "output_token": [ "NextRecordName", "NextRecordType", "NextRecordIdentifier" ] } } } aws-sdk-go-1.4.22/models/apis/route53/2013-04-01/waiters-2.json000066400000000000000000000005221300374646400230430ustar00rootroot00000000000000{ "version": 2, "waiters": { "ResourceRecordSetsChanged": { "delay": 30, "maxAttempts": 60, "operation": "GetChange", "acceptors": [ { "matcher": "path", "expected": "INSYNC", "argument": "ChangeInfo.Status", "state": "success" } ] } } } aws-sdk-go-1.4.22/models/apis/route53domains/000077500000000000000000000000001300374646400206635ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/route53domains/2014-05-15/000077500000000000000000000000001300374646400217165ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/route53domains/2014-05-15/api-2.json000066400000000000000000000762201300374646400235300ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2014-05-15", "endpointPrefix":"route53domains", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"Amazon Route 53 Domains", "signatureVersion":"v4", "targetPrefix":"Route53Domains_v20140515" }, "operations":{ "CheckDomainAvailability":{ "name":"CheckDomainAvailability", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CheckDomainAvailabilityRequest"}, "output":{"shape":"CheckDomainAvailabilityResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"UnsupportedTLD"} ] }, "DeleteTagsForDomain":{ "name":"DeleteTagsForDomain", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteTagsForDomainRequest"}, "output":{"shape":"DeleteTagsForDomainResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"OperationLimitExceeded"}, {"shape":"UnsupportedTLD"} ] }, "DisableDomainAutoRenew":{ "name":"DisableDomainAutoRenew", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableDomainAutoRenewRequest"}, "output":{"shape":"DisableDomainAutoRenewResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"UnsupportedTLD"} ] }, "DisableDomainTransferLock":{ "name":"DisableDomainTransferLock", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableDomainTransferLockRequest"}, "output":{"shape":"DisableDomainTransferLockResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"DuplicateRequest"}, {"shape":"TLDRulesViolation"}, {"shape":"OperationLimitExceeded"}, {"shape":"UnsupportedTLD"} ] }, "EnableDomainAutoRenew":{ "name":"EnableDomainAutoRenew", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableDomainAutoRenewRequest"}, "output":{"shape":"EnableDomainAutoRenewResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"UnsupportedTLD"}, {"shape":"TLDRulesViolation"} ] }, "EnableDomainTransferLock":{ "name":"EnableDomainTransferLock", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"EnableDomainTransferLockRequest"}, "output":{"shape":"EnableDomainTransferLockResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"DuplicateRequest"}, {"shape":"TLDRulesViolation"}, {"shape":"OperationLimitExceeded"}, {"shape":"UnsupportedTLD"} ] }, "GetContactReachabilityStatus":{ "name":"GetContactReachabilityStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetContactReachabilityStatusRequest"}, "output":{"shape":"GetContactReachabilityStatusResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"OperationLimitExceeded"}, {"shape":"UnsupportedTLD"} ] }, "GetDomainDetail":{ "name":"GetDomainDetail", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetDomainDetailRequest"}, "output":{"shape":"GetDomainDetailResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"UnsupportedTLD"} ] }, "GetDomainSuggestions":{ "name":"GetDomainSuggestions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetDomainSuggestionsRequest"}, "output":{"shape":"GetDomainSuggestionsResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"UnsupportedTLD"} ] }, "GetOperationDetail":{ "name":"GetOperationDetail", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetOperationDetailRequest"}, "output":{"shape":"GetOperationDetailResponse"}, "errors":[ {"shape":"InvalidInput"} ] }, "ListDomains":{ "name":"ListDomains", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListDomainsRequest"}, "output":{"shape":"ListDomainsResponse"}, "errors":[ {"shape":"InvalidInput"} ] }, "ListOperations":{ "name":"ListOperations", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListOperationsRequest"}, "output":{"shape":"ListOperationsResponse"}, "errors":[ {"shape":"InvalidInput"} ] }, "ListTagsForDomain":{ "name":"ListTagsForDomain", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTagsForDomainRequest"}, "output":{"shape":"ListTagsForDomainResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"OperationLimitExceeded"}, {"shape":"UnsupportedTLD"} ] }, "RegisterDomain":{ "name":"RegisterDomain", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterDomainRequest"}, "output":{"shape":"RegisterDomainResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"UnsupportedTLD"}, {"shape":"DuplicateRequest"}, {"shape":"TLDRulesViolation"}, {"shape":"DomainLimitExceeded"}, {"shape":"OperationLimitExceeded"} ] }, "RenewDomain":{ "name":"RenewDomain", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RenewDomainRequest"}, "output":{"shape":"RenewDomainResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"UnsupportedTLD"}, {"shape":"DuplicateRequest"}, {"shape":"TLDRulesViolation"}, {"shape":"OperationLimitExceeded"} ] }, "ResendContactReachabilityEmail":{ "name":"ResendContactReachabilityEmail", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResendContactReachabilityEmailRequest"}, "output":{"shape":"ResendContactReachabilityEmailResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"OperationLimitExceeded"}, {"shape":"UnsupportedTLD"} ] }, "RetrieveDomainAuthCode":{ "name":"RetrieveDomainAuthCode", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RetrieveDomainAuthCodeRequest"}, "output":{"shape":"RetrieveDomainAuthCodeResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"UnsupportedTLD"} ] }, "TransferDomain":{ "name":"TransferDomain", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"TransferDomainRequest"}, "output":{"shape":"TransferDomainResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"UnsupportedTLD"}, {"shape":"DuplicateRequest"}, {"shape":"TLDRulesViolation"}, {"shape":"DomainLimitExceeded"}, {"shape":"OperationLimitExceeded"} ] }, "UpdateDomainContact":{ "name":"UpdateDomainContact", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateDomainContactRequest"}, "output":{"shape":"UpdateDomainContactResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"DuplicateRequest"}, {"shape":"TLDRulesViolation"}, {"shape":"OperationLimitExceeded"}, {"shape":"UnsupportedTLD"} ] }, "UpdateDomainContactPrivacy":{ "name":"UpdateDomainContactPrivacy", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateDomainContactPrivacyRequest"}, "output":{"shape":"UpdateDomainContactPrivacyResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"DuplicateRequest"}, {"shape":"TLDRulesViolation"}, {"shape":"OperationLimitExceeded"}, {"shape":"UnsupportedTLD"} ] }, "UpdateDomainNameservers":{ "name":"UpdateDomainNameservers", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateDomainNameserversRequest"}, "output":{"shape":"UpdateDomainNameserversResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"DuplicateRequest"}, {"shape":"TLDRulesViolation"}, {"shape":"OperationLimitExceeded"}, {"shape":"UnsupportedTLD"} ] }, "UpdateTagsForDomain":{ "name":"UpdateTagsForDomain", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateTagsForDomainRequest"}, "output":{"shape":"UpdateTagsForDomainResponse"}, "errors":[ {"shape":"InvalidInput"}, {"shape":"OperationLimitExceeded"}, {"shape":"UnsupportedTLD"} ] }, "ViewBilling":{ "name":"ViewBilling", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ViewBillingRequest"}, "output":{"shape":"ViewBillingResponse"}, "errors":[ {"shape":"InvalidInput"} ] } }, "shapes":{ "AddressLine":{ "type":"string", "max":255 }, "BillingRecord":{ "type":"structure", "members":{ "DomainName":{"shape":"DomainName"}, "Operation":{"shape":"OperationType"}, "InvoiceId":{"shape":"InvoiceId"}, "BillDate":{"shape":"Timestamp"}, "Price":{"shape":"Price"} } }, "BillingRecords":{ "type":"list", "member":{"shape":"BillingRecord"} }, "Boolean":{"type":"boolean"}, "CheckDomainAvailabilityRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"}, "IdnLangCode":{"shape":"LangCode"} } }, "CheckDomainAvailabilityResponse":{ "type":"structure", "required":["Availability"], "members":{ "Availability":{"shape":"DomainAvailability"} } }, "City":{ "type":"string", "max":255 }, "ContactDetail":{ "type":"structure", "members":{ "FirstName":{"shape":"ContactName"}, "LastName":{"shape":"ContactName"}, "ContactType":{"shape":"ContactType"}, "OrganizationName":{"shape":"ContactName"}, "AddressLine1":{"shape":"AddressLine"}, "AddressLine2":{"shape":"AddressLine"}, "City":{"shape":"City"}, "State":{"shape":"State"}, "CountryCode":{"shape":"CountryCode"}, "ZipCode":{"shape":"ZipCode"}, "PhoneNumber":{"shape":"ContactNumber"}, "Email":{"shape":"Email"}, "Fax":{"shape":"ContactNumber"}, "ExtraParams":{"shape":"ExtraParamList"} }, "sensitive":true }, "ContactName":{ "type":"string", "max":255 }, "ContactNumber":{ "type":"string", "max":30 }, "ContactType":{ "type":"string", "enum":[ "PERSON", "COMPANY", "ASSOCIATION", "PUBLIC_BODY", "RESELLER" ] }, "CountryCode":{ "type":"string", "enum":[ "AD", "AE", "AF", "AG", "AI", "AL", "AM", "AN", "AO", "AQ", "AR", "AS", "AT", "AU", "AW", "AZ", "BA", "BB", "BD", "BE", "BF", "BG", "BH", "BI", "BJ", "BL", "BM", "BN", "BO", "BR", "BS", "BT", "BW", "BY", "BZ", "CA", "CC", "CD", "CF", "CG", "CH", "CI", "CK", "CL", "CM", "CN", "CO", "CR", "CU", "CV", "CX", "CY", "CZ", "DE", "DJ", "DK", "DM", "DO", "DZ", "EC", "EE", "EG", "ER", "ES", "ET", "FI", "FJ", "FK", "FM", "FO", "FR", "GA", "GB", "GD", "GE", "GH", "GI", "GL", "GM", "GN", "GQ", "GR", "GT", "GU", "GW", "GY", "HK", "HN", "HR", "HT", "HU", "ID", "IE", "IL", "IM", "IN", "IQ", "IR", "IS", "IT", "JM", "JO", "JP", "KE", "KG", "KH", "KI", "KM", "KN", "KP", "KR", "KW", "KY", "KZ", "LA", "LB", "LC", "LI", "LK", "LR", "LS", "LT", "LU", "LV", "LY", "MA", "MC", "MD", "ME", "MF", "MG", "MH", "MK", "ML", "MM", "MN", "MO", "MP", "MR", "MS", "MT", "MU", "MV", "MW", "MX", "MY", "MZ", "NA", "NC", "NE", "NG", "NI", "NL", "NO", "NP", "NR", "NU", "NZ", "OM", "PA", "PE", "PF", "PG", "PH", "PK", "PL", "PM", "PN", "PR", "PT", "PW", "PY", "QA", "RO", "RS", "RU", "RW", "SA", "SB", "SC", "SD", "SE", "SG", "SH", "SI", "SK", "SL", "SM", "SN", "SO", "SR", "ST", "SV", "SY", "SZ", "TC", "TD", "TG", "TH", "TJ", "TK", "TL", "TM", "TN", "TO", "TR", "TT", "TV", "TW", "TZ", "UA", "UG", "US", "UY", "UZ", "VA", "VC", "VE", "VG", "VI", "VN", "VU", "WF", "WS", "YE", "YT", "ZA", "ZM", "ZW" ] }, "CurrentExpiryYear":{"type":"integer"}, "DNSSec":{"type":"string"}, "DeleteTagsForDomainRequest":{ "type":"structure", "required":[ "DomainName", "TagsToDelete" ], "members":{ "DomainName":{"shape":"DomainName"}, "TagsToDelete":{"shape":"TagKeyList"} } }, "DeleteTagsForDomainResponse":{ "type":"structure", "members":{ } }, "DisableDomainAutoRenewRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"} } }, "DisableDomainAutoRenewResponse":{ "type":"structure", "members":{ } }, "DisableDomainTransferLockRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"} } }, "DisableDomainTransferLockResponse":{ "type":"structure", "required":["OperationId"], "members":{ "OperationId":{"shape":"OperationId"} } }, "DomainAuthCode":{ "type":"string", "max":1024, "sensitive":true }, "DomainAvailability":{ "type":"string", "enum":[ "AVAILABLE", "AVAILABLE_RESERVED", "AVAILABLE_PREORDER", "UNAVAILABLE", "UNAVAILABLE_PREMIUM", "UNAVAILABLE_RESTRICTED", "RESERVED", "DONT_KNOW" ] }, "DomainLimitExceeded":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "DomainName":{ "type":"string", "max":255, "pattern":"[a-zA-Z0-9_\\-.]*" }, "DomainStatus":{"type":"string"}, "DomainStatusList":{ "type":"list", "member":{"shape":"DomainStatus"} }, "DomainSuggestion":{ "type":"structure", "members":{ "DomainName":{"shape":"DomainName"}, "Availability":{"shape":"String"} } }, "DomainSuggestionsList":{ "type":"list", "member":{"shape":"DomainSuggestion"} }, "DomainSummary":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"}, "AutoRenew":{"shape":"Boolean"}, "TransferLock":{"shape":"Boolean"}, "Expiry":{"shape":"Timestamp"} } }, "DomainSummaryList":{ "type":"list", "member":{"shape":"DomainSummary"} }, "DuplicateRequest":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "DurationInYears":{ "type":"integer", "max":10, "min":1 }, "Email":{ "type":"string", "max":254 }, "EnableDomainAutoRenewRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"} } }, "EnableDomainAutoRenewResponse":{ "type":"structure", "members":{ } }, "EnableDomainTransferLockRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"} } }, "EnableDomainTransferLockResponse":{ "type":"structure", "required":["OperationId"], "members":{ "OperationId":{"shape":"OperationId"} } }, "ErrorMessage":{"type":"string"}, "ExtraParam":{ "type":"structure", "required":[ "Name", "Value" ], "members":{ "Name":{"shape":"ExtraParamName"}, "Value":{"shape":"ExtraParamValue"} } }, "ExtraParamList":{ "type":"list", "member":{"shape":"ExtraParam"} }, "ExtraParamName":{ "type":"string", "enum":[ "DUNS_NUMBER", "BRAND_NUMBER", "BIRTH_DEPARTMENT", "BIRTH_DATE_IN_YYYY_MM_DD", "BIRTH_COUNTRY", "BIRTH_CITY", "DOCUMENT_NUMBER", "AU_ID_NUMBER", "AU_ID_TYPE", "CA_LEGAL_TYPE", "CA_BUSINESS_ENTITY_TYPE", "ES_IDENTIFICATION", "ES_IDENTIFICATION_TYPE", "ES_LEGAL_FORM", "FI_BUSINESS_NUMBER", "FI_ID_NUMBER", "IT_PIN", "RU_PASSPORT_DATA", "SE_ID_NUMBER", "SG_ID_NUMBER", "VAT_NUMBER" ] }, "ExtraParamValue":{ "type":"string", "max":2048 }, "FIAuthKey":{"type":"string"}, "GetContactReachabilityStatusRequest":{ "type":"structure", "members":{ "domainName":{"shape":"DomainName"} } }, "GetContactReachabilityStatusResponse":{ "type":"structure", "members":{ "domainName":{"shape":"DomainName"}, "status":{"shape":"ReachabilityStatus"} } }, "GetDomainDetailRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"} } }, "GetDomainDetailResponse":{ "type":"structure", "required":[ "DomainName", "Nameservers", "AdminContact", "RegistrantContact", "TechContact" ], "members":{ "DomainName":{"shape":"DomainName"}, "Nameservers":{"shape":"NameserverList"}, "AutoRenew":{"shape":"Boolean"}, "AdminContact":{"shape":"ContactDetail"}, "RegistrantContact":{"shape":"ContactDetail"}, "TechContact":{"shape":"ContactDetail"}, "AdminPrivacy":{"shape":"Boolean"}, "RegistrantPrivacy":{"shape":"Boolean"}, "TechPrivacy":{"shape":"Boolean"}, "RegistrarName":{"shape":"RegistrarName"}, "WhoIsServer":{"shape":"RegistrarWhoIsServer"}, "RegistrarUrl":{"shape":"RegistrarUrl"}, "AbuseContactEmail":{"shape":"Email"}, "AbuseContactPhone":{"shape":"ContactNumber"}, "RegistryDomainId":{"shape":"RegistryDomainId"}, "CreationDate":{"shape":"Timestamp"}, "UpdatedDate":{"shape":"Timestamp"}, "ExpirationDate":{"shape":"Timestamp"}, "Reseller":{"shape":"Reseller"}, "DnsSec":{"shape":"DNSSec"}, "StatusList":{"shape":"DomainStatusList"} } }, "GetDomainSuggestionsRequest":{ "type":"structure", "required":[ "DomainName", "SuggestionCount", "OnlyAvailable" ], "members":{ "DomainName":{"shape":"DomainName"}, "SuggestionCount":{"shape":"Integer"}, "OnlyAvailable":{"shape":"Boolean"} } }, "GetDomainSuggestionsResponse":{ "type":"structure", "members":{ "SuggestionsList":{"shape":"DomainSuggestionsList"} } }, "GetOperationDetailRequest":{ "type":"structure", "required":["OperationId"], "members":{ "OperationId":{"shape":"OperationId"} } }, "GetOperationDetailResponse":{ "type":"structure", "members":{ "OperationId":{"shape":"OperationId"}, "Status":{"shape":"OperationStatus"}, "Message":{"shape":"ErrorMessage"}, "DomainName":{"shape":"DomainName"}, "Type":{"shape":"OperationType"}, "SubmittedDate":{"shape":"Timestamp"} } }, "GlueIp":{ "type":"string", "max":45 }, "GlueIpList":{ "type":"list", "member":{"shape":"GlueIp"} }, "HostName":{ "type":"string", "max":255, "pattern":"[a-zA-Z0-9_\\-.]*" }, "Integer":{"type":"integer"}, "InvalidInput":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "InvoiceId":{"type":"string"}, "LangCode":{ "type":"string", "max":3 }, "ListDomainsRequest":{ "type":"structure", "members":{ "Marker":{"shape":"PageMarker"}, "MaxItems":{"shape":"PageMaxItems"} } }, "ListDomainsResponse":{ "type":"structure", "required":["Domains"], "members":{ "Domains":{"shape":"DomainSummaryList"}, "NextPageMarker":{"shape":"PageMarker"} } }, "ListOperationsRequest":{ "type":"structure", "members":{ "Marker":{"shape":"PageMarker"}, "MaxItems":{"shape":"PageMaxItems"} } }, "ListOperationsResponse":{ "type":"structure", "required":["Operations"], "members":{ "Operations":{"shape":"OperationSummaryList"}, "NextPageMarker":{"shape":"PageMarker"} } }, "ListTagsForDomainRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"} } }, "ListTagsForDomainResponse":{ "type":"structure", "required":["TagList"], "members":{ "TagList":{"shape":"TagList"} } }, "Nameserver":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"HostName"}, "GlueIps":{"shape":"GlueIpList"} } }, "NameserverList":{ "type":"list", "member":{"shape":"Nameserver"} }, "OperationId":{ "type":"string", "max":255 }, "OperationLimitExceeded":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "OperationStatus":{ "type":"string", "enum":[ "SUBMITTED", "IN_PROGRESS", "ERROR", "SUCCESSFUL", "FAILED" ] }, "OperationSummary":{ "type":"structure", "required":[ "OperationId", "Status", "Type", "SubmittedDate" ], "members":{ "OperationId":{"shape":"OperationId"}, "Status":{"shape":"OperationStatus"}, "Type":{"shape":"OperationType"}, "SubmittedDate":{"shape":"Timestamp"} } }, "OperationSummaryList":{ "type":"list", "member":{"shape":"OperationSummary"} }, "OperationType":{ "type":"string", "enum":[ "REGISTER_DOMAIN", "DELETE_DOMAIN", "TRANSFER_IN_DOMAIN", "UPDATE_DOMAIN_CONTACT", "UPDATE_NAMESERVER", "CHANGE_PRIVACY_PROTECTION", "DOMAIN_LOCK" ] }, "PageMarker":{ "type":"string", "max":4096 }, "PageMaxItems":{ "type":"integer", "max":100 }, "Price":{"type":"double"}, "ReachabilityStatus":{ "type":"string", "enum":[ "PENDING", "DONE", "EXPIRED" ] }, "RegisterDomainRequest":{ "type":"structure", "required":[ "DomainName", "DurationInYears", "AdminContact", "RegistrantContact", "TechContact" ], "members":{ "DomainName":{"shape":"DomainName"}, "IdnLangCode":{"shape":"LangCode"}, "DurationInYears":{"shape":"DurationInYears"}, "AutoRenew":{"shape":"Boolean"}, "AdminContact":{"shape":"ContactDetail"}, "RegistrantContact":{"shape":"ContactDetail"}, "TechContact":{"shape":"ContactDetail"}, "PrivacyProtectAdminContact":{"shape":"Boolean"}, "PrivacyProtectRegistrantContact":{"shape":"Boolean"}, "PrivacyProtectTechContact":{"shape":"Boolean"} } }, "RegisterDomainResponse":{ "type":"structure", "required":["OperationId"], "members":{ "OperationId":{"shape":"OperationId"} } }, "RegistrarName":{"type":"string"}, "RegistrarUrl":{"type":"string"}, "RegistrarWhoIsServer":{"type":"string"}, "RegistryDomainId":{"type":"string"}, "RenewDomainRequest":{ "type":"structure", "required":[ "DomainName", "CurrentExpiryYear" ], "members":{ "DomainName":{"shape":"DomainName"}, "DurationInYears":{"shape":"DurationInYears"}, "CurrentExpiryYear":{"shape":"CurrentExpiryYear"} } }, "RenewDomainResponse":{ "type":"structure", "required":["OperationId"], "members":{ "OperationId":{"shape":"OperationId"} } }, "Reseller":{"type":"string"}, "ResendContactReachabilityEmailRequest":{ "type":"structure", "members":{ "domainName":{"shape":"DomainName"} } }, "ResendContactReachabilityEmailResponse":{ "type":"structure", "members":{ "domainName":{"shape":"DomainName"}, "emailAddress":{"shape":"Email"}, "isAlreadyVerified":{"shape":"Boolean"} } }, "RetrieveDomainAuthCodeRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"} } }, "RetrieveDomainAuthCodeResponse":{ "type":"structure", "required":["AuthCode"], "members":{ "AuthCode":{"shape":"DomainAuthCode"} } }, "State":{ "type":"string", "max":255 }, "String":{"type":"string"}, "TLDRulesViolation":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "Tag":{ "type":"structure", "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{"type":"string"}, "TagKeyList":{ "type":"list", "member":{"shape":"TagKey"} }, "TagList":{ "type":"list", "member":{"shape":"Tag"} }, "TagValue":{"type":"string"}, "Timestamp":{"type":"timestamp"}, "TransferDomainRequest":{ "type":"structure", "required":[ "DomainName", "DurationInYears", "AdminContact", "RegistrantContact", "TechContact" ], "members":{ "DomainName":{"shape":"DomainName"}, "IdnLangCode":{"shape":"LangCode"}, "DurationInYears":{"shape":"DurationInYears"}, "Nameservers":{"shape":"NameserverList"}, "AuthCode":{"shape":"DomainAuthCode"}, "AutoRenew":{"shape":"Boolean"}, "AdminContact":{"shape":"ContactDetail"}, "RegistrantContact":{"shape":"ContactDetail"}, "TechContact":{"shape":"ContactDetail"}, "PrivacyProtectAdminContact":{"shape":"Boolean"}, "PrivacyProtectRegistrantContact":{"shape":"Boolean"}, "PrivacyProtectTechContact":{"shape":"Boolean"} } }, "TransferDomainResponse":{ "type":"structure", "required":["OperationId"], "members":{ "OperationId":{"shape":"OperationId"} } }, "UnsupportedTLD":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "UpdateDomainContactPrivacyRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"}, "AdminPrivacy":{"shape":"Boolean"}, "RegistrantPrivacy":{"shape":"Boolean"}, "TechPrivacy":{"shape":"Boolean"} } }, "UpdateDomainContactPrivacyResponse":{ "type":"structure", "required":["OperationId"], "members":{ "OperationId":{"shape":"OperationId"} } }, "UpdateDomainContactRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"}, "AdminContact":{"shape":"ContactDetail"}, "RegistrantContact":{"shape":"ContactDetail"}, "TechContact":{"shape":"ContactDetail"} } }, "UpdateDomainContactResponse":{ "type":"structure", "required":["OperationId"], "members":{ "OperationId":{"shape":"OperationId"} } }, "UpdateDomainNameserversRequest":{ "type":"structure", "required":[ "DomainName", "Nameservers" ], "members":{ "DomainName":{"shape":"DomainName"}, "FIAuthKey":{"shape":"FIAuthKey"}, "Nameservers":{"shape":"NameserverList"} } }, "UpdateDomainNameserversResponse":{ "type":"structure", "required":["OperationId"], "members":{ "OperationId":{"shape":"OperationId"} } }, "UpdateTagsForDomainRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"DomainName"}, "TagsToUpdate":{"shape":"TagList"} } }, "UpdateTagsForDomainResponse":{ "type":"structure", "members":{ } }, "ViewBillingRequest":{ "type":"structure", "members":{ "Start":{"shape":"Timestamp"}, "End":{"shape":"Timestamp"}, "Marker":{"shape":"PageMarker"}, "MaxItems":{"shape":"PageMaxItems"} } }, "ViewBillingResponse":{ "type":"structure", "members":{ "NextPageMarker":{"shape":"PageMarker"}, "BillingRecords":{"shape":"BillingRecords"} } }, "ZipCode":{ "type":"string", "max":255 } } } aws-sdk-go-1.4.22/models/apis/route53domains/2014-05-15/docs-2.json000066400000000000000000002014531300374646400237050ustar00rootroot00000000000000{ "version": "2.0", "service": null, "operations": { "CheckDomainAvailability": "

        This operation checks the availability of one domain name. Note that if the availability status of a domain is pending, you must submit another request to determine the availability of the domain name.

        ", "DeleteTagsForDomain": "

        This operation deletes the specified tags for a domain.

        All tag operations are eventually consistent; subsequent operations may not immediately represent all issued operations.

        ", "DisableDomainAutoRenew": "

        This operation disables automatic renewal of domain registration for the specified domain.

        ", "DisableDomainTransferLock": "

        This operation removes the transfer lock on the domain (specifically the clientTransferProhibited status) to allow domain transfers. We recommend you refrain from performing this action unless you intend to transfer the domain to a different registrar. Successful submission returns an operation ID that you can use to track the progress and completion of the action. If the request is not completed successfully, the domain registrant will be notified by email.

        ", "EnableDomainAutoRenew": "

        This operation configures Amazon Route 53 to automatically renew the specified domain before the domain registration expires. The cost of renewing your domain registration is billed to your AWS account.

        The period during which you can renew a domain name varies by TLD. For a list of TLDs and their renewal policies, see \"Renewal, restoration, and deletion times\" on the website for our registrar partner, Gandi. Route 53 requires that you renew before the end of the renewal period that is listed on the Gandi website so we can complete processing before the deadline.

        ", "EnableDomainTransferLock": "

        This operation sets the transfer lock on the domain (specifically the clientTransferProhibited status) to prevent domain transfers. Successful submission returns an operation ID that you can use to track the progress and completion of the action. If the request is not completed successfully, the domain registrant will be notified by email.

        ", "GetContactReachabilityStatus": "

        For operations that require confirmation that the email address for the registrant contact is valid, such as registering a new domain, this operation returns information about whether the registrant contact has responded.

        If you want us to resend the email, use the ResendContactReachabilityEmail operation.

        ", "GetDomainDetail": "

        This operation returns detailed information about the domain. The domain's contact information is also returned as part of the output.

        ", "GetDomainSuggestions": "

        The GetDomainSuggestions operation returns a list of suggested domain names given a string, which can either be a domain name or simply a word or phrase (without spaces).

        Parameters:

        • DomainName (string): The basis for your domain suggestion search, a string with (or without) top-level domain specified.
        • SuggestionCount (int): The number of domain suggestions to be returned, maximum 50, minimum 1.
        • OnlyAvailable (bool): If true, availability check will be performed on suggestion results, and only available domains will be returned. If false, suggestions will be returned without checking whether the domain is actually available, and caller will have to call checkDomainAvailability for each suggestion to determine availability for registration.

        ", "GetOperationDetail": "

        This operation returns the current status of an operation that is not completed.

        ", "ListDomains": "

        This operation returns all the domain names registered with Amazon Route 53 for the current AWS account.

        ", "ListOperations": "

        This operation returns the operation IDs of operations that are not yet complete.

        ", "ListTagsForDomain": "

        This operation returns all of the tags that are associated with the specified domain.

        All tag operations are eventually consistent; subsequent operations may not immediately represent all issued operations.

        ", "RegisterDomain": "

        This operation registers a domain. Domains are registered by the AWS registrar partner, Gandi. For some top-level domains (TLDs), this operation requires extra parameters.

        When you register a domain, Amazon Route 53 does the following:

        • Creates a Amazon Route 53 hosted zone that has the same name as the domain. Amazon Route 53 assigns four name servers to your hosted zone and automatically updates your domain registration with the names of these name servers.
        • Enables autorenew, so your domain registration will renew automatically each year. We'll notify you in advance of the renewal date so you can choose whether to renew the registration.
        • Optionally enables privacy protection, so WHOIS queries return contact information for our registrar partner, Gandi, instead of the information you entered for registrant, admin, and tech contacts.
        • If registration is successful, returns an operation ID that you can use to track the progress and completion of the action. If the request is not completed successfully, the domain registrant is notified by email.
        • Charges your AWS account an amount based on the top-level domain. For more information, see Amazon Route 53 Pricing.
        ", "RenewDomain": "

        This operation renews a domain for the specified number of years. The cost of renewing your domain is billed to your AWS account.

        We recommend that you renew your domain several weeks before the expiration date. Some TLD registries delete domains before the expiration date if you haven't renewed far enough in advance. For more information about renewing domain registration, see Renewing Registration for a Domain in the Amazon Route 53 documentation.

        ", "ResendContactReachabilityEmail": "

        For operations that require confirmation that the email address for the registrant contact is valid, such as registering a new domain, this operation resends the confirmation email to the current email address for the registrant contact.

        ", "RetrieveDomainAuthCode": "

        This operation returns the AuthCode for the domain. To transfer a domain to another registrar, you provide this value to the new registrar.

        ", "TransferDomain": "

        This operation transfers a domain from another registrar to Amazon Route 53. When the transfer is complete, the domain is registered with the AWS registrar partner, Gandi.

        For transfer requirements, a detailed procedure, and information about viewing the status of a domain transfer, see Transferring Registration for a Domain to Amazon Route 53 in the Amazon Route 53 Developer Guide.

        If the registrar for your domain is also the DNS service provider for the domain, we highly recommend that you consider transferring your DNS service to Amazon Route 53 or to another DNS service provider before you transfer your registration. Some registrars provide free DNS service when you purchase a domain registration. When you transfer the registration, the previous registrar will not renew your domain registration and could end your DNS service at any time.

        Caution! If the registrar for your domain is also the DNS service provider for the domain and you don't transfer DNS service to another provider, your website, email, and the web applications associated with the domain might become unavailable.

        If the transfer is successful, this method returns an operation ID that you can use to track the progress and completion of the action. If the transfer doesn't complete successfully, the domain registrant will be notified by email.

        ", "UpdateDomainContact": "

        This operation updates the contact information for a particular domain. Information for at least one contact (registrant, administrator, or technical) must be supplied for update.

        If the update is successful, this method returns an operation ID that you can use to track the progress and completion of the action. If the request is not completed successfully, the domain registrant will be notified by email.

        ", "UpdateDomainContactPrivacy": "

        This operation updates the specified domain contact's privacy setting. When the privacy option is enabled, personal information such as postal or email address is hidden from the results of a public WHOIS query. The privacy services are provided by the AWS registrar, Gandi. For more information, see the Gandi privacy features.

        This operation only affects the privacy of the specified contact type (registrant, administrator, or tech). Successful acceptance returns an operation ID that you can use with GetOperationDetail to track the progress and completion of the action. If the request is not completed successfully, the domain registrant will be notified by email.

        ", "UpdateDomainNameservers": "

        This operation replaces the current set of name servers for the domain with the specified set of name servers. If you use Amazon Route 53 as your DNS service, specify the four name servers in the delegation set for the hosted zone for the domain.

        If successful, this operation returns an operation ID that you can use to track the progress and completion of the action. If the request is not completed successfully, the domain registrant will be notified by email.

        ", "UpdateTagsForDomain": "

        This operation adds or updates tags for a specified domain.

        All tag operations are eventually consistent; subsequent operations may not immediately represent all issued operations.

        ", "ViewBilling": "

        This operation returns all the domain-related billing records for the current AWS account for a specified period

        " }, "shapes": { "AddressLine": { "base": null, "refs": { "ContactDetail$AddressLine1": "

        First line of the contact's address.

        Type: String

        Default: None

        Constraints: Maximum 255 characters.

        Parents: RegistrantContact, AdminContact, TechContact

        Required: Yes

        ", "ContactDetail$AddressLine2": "

        Second line of contact's address, if any.

        Type: String

        Default: None

        Constraints: Maximum 255 characters.

        Parents: RegistrantContact, AdminContact, TechContact

        Required: No

        " } }, "BillingRecord": { "base": null, "refs": { "BillingRecords$member": null } }, "BillingRecords": { "base": null, "refs": { "ViewBillingResponse$BillingRecords": "

        A summary of billing records.

        Type: Complex type containing a list of billing record summaries.

        Children: DomainName, Operation, InvoiceId, BillDate and Price

        " } }, "Boolean": { "base": null, "refs": { "DomainSummary$AutoRenew": "

        Indicates whether the domain is automatically renewed upon expiration.

        Type: Boolean

        Valid values: True | False

        ", "DomainSummary$TransferLock": "

        Indicates whether a domain is locked from unauthorized transfer to another party.

        Type: Boolean

        Valid values: True | False

        ", "GetDomainDetailResponse$AutoRenew": "

        Specifies whether the domain registration is set to renew automatically.

        Type: Boolean

        ", "GetDomainDetailResponse$AdminPrivacy": "

        Specifies whether contact information for the admin contact is concealed from WHOIS queries. If the value is true, WHOIS (\"who is\") queries will return contact information for our registrar partner, Gandi, instead of the contact information that you enter.

        Type: Boolean

        ", "GetDomainDetailResponse$RegistrantPrivacy": "

        Specifies whether contact information for the registrant contact is concealed from WHOIS queries. If the value is true, WHOIS (\"who is\") queries will return contact information for our registrar partner, Gandi, instead of the contact information that you enter.

        Type: Boolean

        ", "GetDomainDetailResponse$TechPrivacy": "

        Specifies whether contact information for the tech contact is concealed from WHOIS queries. If the value is true, WHOIS (\"who is\") queries will return contact information for our registrar partner, Gandi, instead of the contact information that you enter.

        Type: Boolean

        ", "GetDomainSuggestionsRequest$OnlyAvailable": null, "RegisterDomainRequest$AutoRenew": "

        Indicates whether the domain will be automatically renewed (true) or not (false). Autorenewal only takes effect after the account is charged.

        Type: Boolean

        Valid values: true | false

        Default: true

        Required: No

        ", "RegisterDomainRequest$PrivacyProtectAdminContact": "

        Whether you want to conceal contact information from WHOIS queries. If you specify true, WHOIS (\"who is\") queries will return contact information for our registrar partner, Gandi, instead of the contact information that you enter.

        Type: Boolean

        Default: true

        Valid values: true | false

        Required: No

        ", "RegisterDomainRequest$PrivacyProtectRegistrantContact": "

        Whether you want to conceal contact information from WHOIS queries. If you specify true, WHOIS (\"who is\") queries will return contact information for our registrar partner, Gandi, instead of the contact information that you enter.

        Type: Boolean

        Default: true

        Valid values: true | false

        Required: No

        ", "RegisterDomainRequest$PrivacyProtectTechContact": "

        Whether you want to conceal contact information from WHOIS queries. If you specify true, WHOIS (\"who is\") queries will return contact information for our registrar partner, Gandi, instead of the contact information that you enter.

        Type: Boolean

        Default: true

        Valid values: true | false

        Required: No

        ", "ResendContactReachabilityEmailResponse$isAlreadyVerified": "

        True if the email address for the registrant contact has already been verified, and false otherwise. If the email address has already been verified, we don't send another confirmation email.

        ", "TransferDomainRequest$AutoRenew": "

        Indicates whether the domain will be automatically renewed (true) or not (false). Autorenewal only takes effect after the account is charged.

        Type: Boolean

        Valid values: true | false

        Default: true

        Required: No

        ", "TransferDomainRequest$PrivacyProtectAdminContact": "

        Whether you want to conceal contact information from WHOIS queries. If you specify true, WHOIS (\"who is\") queries will return contact information for our registrar partner, Gandi, instead of the contact information that you enter.

        Type: Boolean

        Default: true

        Valid values: true | false

        Required: No

        ", "TransferDomainRequest$PrivacyProtectRegistrantContact": "

        Whether you want to conceal contact information from WHOIS queries. If you specify true, WHOIS (\"who is\") queries will return contact information for our registrar partner, Gandi, instead of the contact information that you enter.

        Type: Boolean

        Default: true

        Valid values: true | false

        Required: No

        ", "TransferDomainRequest$PrivacyProtectTechContact": "

        Whether you want to conceal contact information from WHOIS queries. If you specify true, WHOIS (\"who is\") queries will return contact information for our registrar partner, Gandi, instead of the contact information that you enter.

        Type: Boolean

        Default: true

        Valid values: true | false

        Required: No

        ", "UpdateDomainContactPrivacyRequest$AdminPrivacy": "

        Whether you want to conceal contact information from WHOIS queries. If you specify true, WHOIS (\"who is\") queries will return contact information for our registrar partner, Gandi, instead of the contact information that you enter.

        Type: Boolean

        Default: None

        Valid values: true | false

        Required: No

        ", "UpdateDomainContactPrivacyRequest$RegistrantPrivacy": "

        Whether you want to conceal contact information from WHOIS queries. If you specify true, WHOIS (\"who is\") queries will return contact information for our registrar partner, Gandi, instead of the contact information that you enter.

        Type: Boolean

        Default: None

        Valid values: true | false

        Required: No

        ", "UpdateDomainContactPrivacyRequest$TechPrivacy": "

        Whether you want to conceal contact information from WHOIS queries. If you specify true, WHOIS (\"who is\") queries will return contact information for our registrar partner, Gandi, instead of the contact information that you enter.

        Type: Boolean

        Default: None

        Valid values: true | false

        Required: No

        " } }, "CheckDomainAvailabilityRequest": { "base": "

        The CheckDomainAvailability request contains the following elements.

        ", "refs": { } }, "CheckDomainAvailabilityResponse": { "base": "

        The CheckDomainAvailability response includes the following elements.

        ", "refs": { } }, "City": { "base": null, "refs": { "ContactDetail$City": "

        The city of the contact's address.

        Type: String

        Default: None

        Constraints: Maximum 255 characters.

        Parents: RegistrantContact, AdminContact, TechContact

        Required: Yes

        " } }, "ContactDetail": { "base": "

        ContactDetail includes the following elements.

        ", "refs": { "GetDomainDetailResponse$AdminContact": "

        Provides details about the domain administrative contact.

        Type: Complex

        Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, Email, Fax, ExtraParams

        ", "GetDomainDetailResponse$RegistrantContact": "

        Provides details about the domain registrant.

        Type: Complex

        Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, Email, Fax, ExtraParams

        ", "GetDomainDetailResponse$TechContact": "

        Provides details about the domain technical contact.

        Type: Complex

        Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, Email, Fax, ExtraParams

        ", "RegisterDomainRequest$AdminContact": "

        Provides detailed contact information.

        Type: Complex

        Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, Email, Fax, ExtraParams

        Required: Yes

        ", "RegisterDomainRequest$RegistrantContact": "

        Provides detailed contact information.

        Type: Complex

        Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, Email, Fax, ExtraParams

        Required: Yes

        ", "RegisterDomainRequest$TechContact": "

        Provides detailed contact information.

        Type: Complex

        Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, Email, Fax, ExtraParams

        Required: Yes

        ", "TransferDomainRequest$AdminContact": "

        Provides detailed contact information.

        Type: Complex

        Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, Email, Fax, ExtraParams

        Required: Yes

        ", "TransferDomainRequest$RegistrantContact": "

        Provides detailed contact information.

        Type: Complex

        Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, Email, Fax, ExtraParams

        Required: Yes

        ", "TransferDomainRequest$TechContact": "

        Provides detailed contact information.

        Type: Complex

        Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, Email, Fax, ExtraParams

        Required: Yes

        ", "UpdateDomainContactRequest$AdminContact": "

        Provides detailed contact information.

        Type: Complex

        Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, Email, Fax, ExtraParams

        Required: Yes

        ", "UpdateDomainContactRequest$RegistrantContact": "

        Provides detailed contact information.

        Type: Complex

        Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, Email, Fax, ExtraParams

        Required: Yes

        ", "UpdateDomainContactRequest$TechContact": "

        Provides detailed contact information.

        Type: Complex

        Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, Email, Fax, ExtraParams

        Required: Yes

        " } }, "ContactName": { "base": null, "refs": { "ContactDetail$FirstName": "

        First name of contact.

        Type: String

        Default: None

        Constraints: Maximum 255 characters.

        Parents: RegistrantContact, AdminContact, TechContact

        Required: Yes

        ", "ContactDetail$LastName": "

        Last name of contact.

        Type: String

        Default: None

        Constraints: Maximum 255 characters.

        Parents: RegistrantContact, AdminContact, TechContact

        Required: Yes

        ", "ContactDetail$OrganizationName": "

        Name of the organization for contact types other than PERSON.

        Type: String

        Default: None

        Constraints: Maximum 255 characters. Contact type must not be PERSON.

        Parents: RegistrantContact, AdminContact, TechContact

        Required: No

        " } }, "ContactNumber": { "base": null, "refs": { "ContactDetail$PhoneNumber": "

        The phone number of the contact.

        Type: String

        Default: None

        Constraints: Phone number must be specified in the format \"+[country dialing code].[number including any area code>]\". For example, a US phone number might appear as \"+1.1234567890\".

        Parents: RegistrantContact, AdminContact, TechContact

        Required: Yes

        ", "ContactDetail$Fax": "

        Fax number of the contact.

        Type: String

        Default: None

        Constraints: Phone number must be specified in the format \"+[country dialing code].[number including any area code]\". For example, a US phone number might appear as \"+1.1234567890\".

        Parents: RegistrantContact, AdminContact, TechContact

        Required: No

        ", "GetDomainDetailResponse$AbuseContactPhone": "

        Phone number for reporting abuse.

        Type: String

        " } }, "ContactType": { "base": null, "refs": { "ContactDetail$ContactType": "

        Indicates whether the contact is a person, company, association, or public organization. If you choose an option other than PERSON, you must enter an organization name, and you can't enable privacy protection for the contact.

        Type: String

        Default: None

        Constraints: Maximum 255 characters.

        Valid values: PERSON | COMPANY | ASSOCIATION | PUBLIC_BODY

        Parents: RegistrantContact, AdminContact, TechContact

        Required: Yes

        " } }, "CountryCode": { "base": null, "refs": { "ContactDetail$CountryCode": "

        Code for the country of the contact's address.

        Type: String

        Default: None

        Constraints: Maximum 255 characters.

        Parents: RegistrantContact, AdminContact, TechContact

        Required: Yes

        " } }, "CurrentExpiryYear": { "base": null, "refs": { "RenewDomainRequest$CurrentExpiryYear": "

        The year when the registration for the domain is set to expire. This value must match the current expiration date for the domain.

        Type: Integer

        Default: None

        Valid values: Integer

        Required: Yes

        " } }, "DNSSec": { "base": null, "refs": { "GetDomainDetailResponse$DnsSec": "

        Reserved for future use.

        " } }, "DeleteTagsForDomainRequest": { "base": "

        The DeleteTagsForDomainRequest includes the following elements.

        ", "refs": { } }, "DeleteTagsForDomainResponse": { "base": null, "refs": { } }, "DisableDomainAutoRenewRequest": { "base": null, "refs": { } }, "DisableDomainAutoRenewResponse": { "base": null, "refs": { } }, "DisableDomainTransferLockRequest": { "base": "

        The DisableDomainTransferLock request includes the following element.

        ", "refs": { } }, "DisableDomainTransferLockResponse": { "base": "

        The DisableDomainTransferLock response includes the following element.

        ", "refs": { } }, "DomainAuthCode": { "base": null, "refs": { "RetrieveDomainAuthCodeResponse$AuthCode": "

        The authorization code for the domain.

        Type: String

        ", "TransferDomainRequest$AuthCode": "

        The authorization code for the domain. You get this value from the current registrar.

        Type: String

        Required: Yes

        " } }, "DomainAvailability": { "base": null, "refs": { "CheckDomainAvailabilityResponse$Availability": "

        Whether the domain name is available for registering.

        You can only register domains designated as AVAILABLE.

        Type: String

        Valid values:

        • AVAILABLE – The domain name is available.
        • AVAILABLE_RESERVED – The domain name is reserved under specific conditions.
        • AVAILABLE_PREORDER – The domain name is available and can be preordered.
        • UNAVAILABLE – The domain name is not available.
        • UNAVAILABLE_PREMIUM – The domain name is not available.
        • UNAVAILABLE_RESTRICTED – The domain name is forbidden.
        • RESERVED – The domain name has been reserved for another person or organization.
        • DONT_KNOW – The TLD registry didn't reply with a definitive answer about whether the domain name is available. Amazon Route 53 can return this response for a variety of reasons, for example, the registry is performing maintenance. Try again later.
        " } }, "DomainLimitExceeded": { "base": "

        The number of domains has exceeded the allowed threshold for the account.

        ", "refs": { } }, "DomainName": { "base": null, "refs": { "BillingRecord$DomainName": "

        The name of a domain.

        Type: String

        ", "CheckDomainAvailabilityRequest$DomainName": "

        The name of a domain.

        Type: String

        Default: None

        Constraints: The domain name can contain only the letters a through z, the numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not supported.

        Required: Yes

        ", "DeleteTagsForDomainRequest$DomainName": "

        The domain for which you want to delete one or more tags.

        The name of a domain.

        Type: String

        Default: None

        Constraints: The domain name can contain only the letters a through z, the numbers 0 through 9, and hyphen (-). Hyphens are allowed only when they're surrounded by letters, numbers, or other hyphens. You can't specify a hyphen at the beginning or end of a label. To specify an Internationalized Domain Name, you must convert the name to Punycode.

        Required: Yes

        ", "DisableDomainAutoRenewRequest$DomainName": null, "DisableDomainTransferLockRequest$DomainName": "

        The name of a domain.

        Type: String

        Default: None

        Constraints: The domain name can contain only the letters a through z, the numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not supported.

        Required: Yes

        ", "DomainSuggestion$DomainName": null, "DomainSummary$DomainName": "

        The name of a domain.

        Type: String

        ", "EnableDomainAutoRenewRequest$DomainName": null, "EnableDomainTransferLockRequest$DomainName": "

        The name of a domain.

        Type: String

        Default: None

        Constraints: The domain name can contain only the letters a through z, the numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not supported.

        Required: Yes

        ", "GetContactReachabilityStatusRequest$domainName": "

        The name of the domain for which you want to know whether the registrant contact has confirmed that the email address is valid.

        Type: String

        Default: None

        Required: Yes

        ", "GetContactReachabilityStatusResponse$domainName": "

        The domain name for which you requested the reachability status.

        ", "GetDomainDetailRequest$DomainName": "

        The name of a domain.

        Type: String

        Default: None

        Constraints: The domain name can contain only the letters a through z, the numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not supported.

        Required: Yes

        ", "GetDomainDetailResponse$DomainName": "

        The name of a domain.

        Type: String

        ", "GetDomainSuggestionsRequest$DomainName": null, "GetOperationDetailResponse$DomainName": "

        The name of a domain.

        Type: String

        ", "ListTagsForDomainRequest$DomainName": "

        The domain for which you want to get a list of tags.

        ", "RegisterDomainRequest$DomainName": "

        The name of a domain.

        Type: String

        Default: None

        Constraints: The domain name can contain only the letters a through z, the numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not supported.

        Required: Yes

        ", "RenewDomainRequest$DomainName": null, "ResendContactReachabilityEmailRequest$domainName": "

        The name of the domain for which you want Amazon Route 53 to resend a confirmation email to the registrant contact.

        Type: String

        Default: None

        Required: Yes

        ", "ResendContactReachabilityEmailResponse$domainName": "

        The domain name for which you requested a confirmation email.

        ", "RetrieveDomainAuthCodeRequest$DomainName": "

        The name of a domain.

        Type: String

        Default: None

        Constraints: The domain name can contain only the letters a through z, the numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not supported.

        Required: Yes

        ", "TransferDomainRequest$DomainName": "

        The name of a domain.

        Type: String

        Default: None

        Constraints: The domain name can contain only the letters a through z, the numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not supported.

        Required: Yes

        ", "UpdateDomainContactPrivacyRequest$DomainName": "

        The name of a domain.

        Type: String

        Default: None

        Constraints: The domain name can contain only the letters a through z, the numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not supported.

        Required: Yes

        ", "UpdateDomainContactRequest$DomainName": "

        The name of a domain.

        Type: String

        Default: None

        Constraints: The domain name can contain only the letters a through z, the numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not supported.

        Required: Yes

        ", "UpdateDomainNameserversRequest$DomainName": "

        The name of a domain.

        Type: String

        Default: None

        Constraints: The domain name can contain only the letters a through z, the numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not supported.

        Required: Yes

        ", "UpdateTagsForDomainRequest$DomainName": "

        The domain for which you want to add or update tags.

        The name of a domain.

        Type: String

        Default: None

        Constraints: The domain name can contain only the letters a through z, the numbers 0 through 9, and hyphen (-). Hyphens are allowed only when they're surrounded by letters, numbers, or other hyphens. You can't specify a hyphen at the beginning or end of a label. To specify an Internationalized Domain Name, you must convert the name to Punycode.

        Required: Yes

        " } }, "DomainStatus": { "base": null, "refs": { "DomainStatusList$member": null } }, "DomainStatusList": { "base": null, "refs": { "GetDomainDetailResponse$StatusList": "

        An array of domain name status codes, also known as Extensible Provisioning Protocol (EPP) status codes.

        ICANN, the organization that maintains a central database of domain names, has developed a set of domain name status codes that tell you the status of a variety of operations on a domain name, for example, registering a domain name, transferring a domain name to another registrar, renewing the registration for a domain name, and so on. All registrars use this same set of status codes.

        For a current list of domain name status codes and an explanation of what each code means, go to the ICANN website and search for epp status codes. (Search on the ICANN website; web searches sometimes return an old version of the document.)

        Type: Array of String

        " } }, "DomainSuggestion": { "base": null, "refs": { "DomainSuggestionsList$member": null } }, "DomainSuggestionsList": { "base": null, "refs": { "GetDomainSuggestionsResponse$SuggestionsList": null } }, "DomainSummary": { "base": null, "refs": { "DomainSummaryList$member": null } }, "DomainSummaryList": { "base": null, "refs": { "ListDomainsResponse$Domains": "

        A summary of domains.

        Type: Complex type containing a list of domain summaries.

        Children: AutoRenew, DomainName, Expiry, TransferLock

        " } }, "DuplicateRequest": { "base": "

        The request is already in progress for the domain.

        ", "refs": { } }, "DurationInYears": { "base": null, "refs": { "RegisterDomainRequest$DurationInYears": "

        The number of years the domain will be registered. Domains are registered for a minimum of one year. The maximum period depends on the top-level domain.

        Type: Integer

        Default: 1

        Valid values: Integer from 1 to 10

        Required: Yes

        ", "RenewDomainRequest$DurationInYears": "

        The number of years that you want to renew the domain for. The maximum number of years depends on the top-level domain. For the range of valid values for your domain, see Domains that You Can Register with Amazon Route 53 in the Amazon Route 53 documentation.

        Type: Integer

        Default: 1

        Valid values: Integer from 1 to 10

        Required: No

        ", "TransferDomainRequest$DurationInYears": "

        The number of years the domain will be registered. Domains are registered for a minimum of one year. The maximum period depends on the top-level domain.

        Type: Integer

        Default: 1

        Valid values: Integer from 1 to 10

        Required: Yes

        " } }, "Email": { "base": null, "refs": { "ContactDetail$Email": "

        Email address of the contact.

        Type: String

        Default: None

        Constraints: Maximum 254 characters.

        Parents: RegistrantContact, AdminContact, TechContact

        Required: Yes

        ", "GetDomainDetailResponse$AbuseContactEmail": "

        Email address to contact to report incorrect contact information for a domain, to report that the domain is being used to send spam, to report that someone is cybersquatting on a domain name, or report some other type of abuse.

        Type: String

        ", "ResendContactReachabilityEmailResponse$emailAddress": "

        The email address for the registrant contact at the time that we sent the verification email.

        " } }, "EnableDomainAutoRenewRequest": { "base": null, "refs": { } }, "EnableDomainAutoRenewResponse": { "base": null, "refs": { } }, "EnableDomainTransferLockRequest": { "base": "

        The EnableDomainTransferLock request includes the following element.

        ", "refs": { } }, "EnableDomainTransferLockResponse": { "base": "

        The EnableDomainTransferLock response includes the following elements.

        ", "refs": { } }, "ErrorMessage": { "base": null, "refs": { "DomainLimitExceeded$message": null, "DuplicateRequest$message": null, "GetOperationDetailResponse$Message": "

        Detailed information on the status including possible errors.

        Type: String

        ", "InvalidInput$message": null, "OperationLimitExceeded$message": null, "TLDRulesViolation$message": null, "UnsupportedTLD$message": null } }, "ExtraParam": { "base": "

        ExtraParam includes the following elements.

        ", "refs": { "ExtraParamList$member": null } }, "ExtraParamList": { "base": null, "refs": { "ContactDetail$ExtraParams": "

        A list of name-value pairs for parameters required by certain top-level domains.

        Type: Complex

        Default: None

        Parents: RegistrantContact, AdminContact, TechContact

        Children: Name, Value

        Required: No

        " } }, "ExtraParamName": { "base": null, "refs": { "ExtraParam$Name": "

        Name of the additional parameter required by the top-level domain.

        Type: String

        Default: None

        Valid values: DUNS_NUMBER | BRAND_NUMBER | BIRTH_DEPARTMENT | BIRTH_DATE_IN_YYYY_MM_DD | BIRTH_COUNTRY | BIRTH_CITY | DOCUMENT_NUMBER | AU_ID_NUMBER | AU_ID_TYPE | CA_LEGAL_TYPE | CA_BUSINESS_ENTITY_TYPE |ES_IDENTIFICATION | ES_IDENTIFICATION_TYPE | ES_LEGAL_FORM | FI_BUSINESS_NUMBER | FI_ID_NUMBER | IT_PIN | RU_PASSPORT_DATA | SE_ID_NUMBER | SG_ID_NUMBER | VAT_NUMBER

        Parent: ExtraParams

        Required: Yes

        " } }, "ExtraParamValue": { "base": null, "refs": { "ExtraParam$Value": "

        Values corresponding to the additional parameter names required by some top-level domains.

        Type: String

        Default: None

        Constraints: Maximum 2048 characters.

        Parent: ExtraParams

        Required: Yes

        " } }, "FIAuthKey": { "base": null, "refs": { "UpdateDomainNameserversRequest$FIAuthKey": "

        The authorization key for .fi domains

        " } }, "GetContactReachabilityStatusRequest": { "base": null, "refs": { } }, "GetContactReachabilityStatusResponse": { "base": null, "refs": { } }, "GetDomainDetailRequest": { "base": "

        The GetDomainDetail request includes the following element.

        ", "refs": { } }, "GetDomainDetailResponse": { "base": "

        The GetDomainDetail response includes the following elements.

        ", "refs": { } }, "GetDomainSuggestionsRequest": { "base": null, "refs": { } }, "GetDomainSuggestionsResponse": { "base": null, "refs": { } }, "GetOperationDetailRequest": { "base": "

        The GetOperationDetail request includes the following element.

        ", "refs": { } }, "GetOperationDetailResponse": { "base": "

        The GetOperationDetail response includes the following elements.

        ", "refs": { } }, "GlueIp": { "base": null, "refs": { "GlueIpList$member": null } }, "GlueIpList": { "base": null, "refs": { "Nameserver$GlueIps": "

        Glue IP address of a name server entry. Glue IP addresses are required only when the name of the name server is a subdomain of the domain. For example, if your domain is example.com and the name server for the domain is ns.example.com, you need to specify the IP address for ns.example.com.

        Type: List of IP addresses.

        Constraints: The list can contain only one IPv4 and one IPv6 address.

        Parent: Nameservers

        " } }, "HostName": { "base": null, "refs": { "Nameserver$Name": "

        The fully qualified host name of the name server.

        Type: String

        Constraint: Maximum 255 characterss

        Parent: Nameservers

        " } }, "Integer": { "base": null, "refs": { "GetDomainSuggestionsRequest$SuggestionCount": null } }, "InvalidInput": { "base": "

        The requested item is not acceptable. For example, for an OperationId it may refer to the ID of an operation that is already completed. For a domain name, it may not be a valid domain name or belong to the requester account.

        ", "refs": { } }, "InvoiceId": { "base": null, "refs": { "BillingRecord$InvoiceId": "

        The ID of the invoice that is associated with the billing record.

        Type: String

        " } }, "LangCode": { "base": null, "refs": { "CheckDomainAvailabilityRequest$IdnLangCode": "

        Reserved for future use.

        ", "RegisterDomainRequest$IdnLangCode": "

        Reserved for future use.

        ", "TransferDomainRequest$IdnLangCode": "

        Reserved for future use.

        " } }, "ListDomainsRequest": { "base": "

        The ListDomains request includes the following elements.

        ", "refs": { } }, "ListDomainsResponse": { "base": "

        The ListDomains response includes the following elements.

        ", "refs": { } }, "ListOperationsRequest": { "base": "

        The ListOperations request includes the following elements.

        ", "refs": { } }, "ListOperationsResponse": { "base": "

        The ListOperations response includes the following elements.

        ", "refs": { } }, "ListTagsForDomainRequest": { "base": "

        The ListTagsForDomainRequest includes the following elements.

        ", "refs": { } }, "ListTagsForDomainResponse": { "base": "

        The ListTagsForDomain response includes the following elements.

        ", "refs": { } }, "Nameserver": { "base": "

        Nameserver includes the following elements.

        ", "refs": { "NameserverList$member": null } }, "NameserverList": { "base": null, "refs": { "GetDomainDetailResponse$Nameservers": "

        The name of the domain.

        Type: String

        ", "TransferDomainRequest$Nameservers": "

        Contains details for the host and glue IP addresses.

        Type: Complex

        Children: GlueIps, Name

        Required: No

        ", "UpdateDomainNameserversRequest$Nameservers": "

        A list of new name servers for the domain.

        Type: Complex

        Children: Name, GlueIps

        Required: Yes

        " } }, "OperationId": { "base": null, "refs": { "DisableDomainTransferLockResponse$OperationId": "

        Identifier for tracking the progress of the request. To use this ID to query the operation status, use GetOperationDetail.

        Type: String

        Default: None

        Constraints: Maximum 255 characters.

        ", "EnableDomainTransferLockResponse$OperationId": "

        Identifier for tracking the progress of the request. To use this ID to query the operation status, use GetOperationDetail.

        Type: String

        Default: None

        Constraints: Maximum 255 characters.

        ", "GetOperationDetailRequest$OperationId": "

        The identifier for the operation for which you want to get the status. Amazon Route 53 returned the identifier in the response to the original request.

        Type: String

        Default: None

        Required: Yes

        ", "GetOperationDetailResponse$OperationId": "

        The identifier for the operation.

        Type: String

        ", "OperationSummary$OperationId": "

        Identifier returned to track the requested action.

        Type: String

        ", "RegisterDomainResponse$OperationId": "

        Identifier for tracking the progress of the request. To use this ID to query the operation status, use GetOperationDetail.

        Type: String

        Default: None

        Constraints: Maximum 255 characters.

        ", "RenewDomainResponse$OperationId": null, "TransferDomainResponse$OperationId": "

        Identifier for tracking the progress of the request. To use this ID to query the operation status, use GetOperationDetail.

        Type: String

        Default: None

        Constraints: Maximum 255 characters.

        ", "UpdateDomainContactPrivacyResponse$OperationId": "

        Identifier for tracking the progress of the request. To use this ID to query the operation status, use GetOperationDetail.

        Type: String

        Default: None

        Constraints: Maximum 255 characters.

        ", "UpdateDomainContactResponse$OperationId": "

        Identifier for tracking the progress of the request. To use this ID to query the operation status, use GetOperationDetail.

        Type: String

        Default: None

        Constraints: Maximum 255 characters.

        ", "UpdateDomainNameserversResponse$OperationId": "

        Identifier for tracking the progress of the request. To use this ID to query the operation status, use GetOperationDetail.

        Type: String

        Default: None

        Constraints: Maximum 255 characters.

        " } }, "OperationLimitExceeded": { "base": "

        The number of operations or jobs running exceeded the allowed threshold for the account.

        ", "refs": { } }, "OperationStatus": { "base": null, "refs": { "GetOperationDetailResponse$Status": "

        The current status of the requested operation in the system.

        Type: String

        ", "OperationSummary$Status": "

        The current status of the requested operation in the system.

        Type: String

        " } }, "OperationSummary": { "base": "

        OperationSummary includes the following elements.

        ", "refs": { "OperationSummaryList$member": null } }, "OperationSummaryList": { "base": null, "refs": { "ListOperationsResponse$Operations": "

        Lists summaries of the operations.

        Type: Complex type containing a list of operation summaries

        Children: OperationId, Status, SubmittedDate, Type

        " } }, "OperationType": { "base": null, "refs": { "BillingRecord$Operation": "

        The operation that you were charged for.

        Type: String

        Valid values:

        • REGISTER_DOMAIN
        • TRANSFER_IN_DOMAIN
        • RENEW_DOMAIN
        • CHANGE_DOMAIN_OWNER

        ", "GetOperationDetailResponse$Type": "

        The type of operation that was requested.

        Type: String

        ", "OperationSummary$Type": "

        Type of the action requested.

        Type: String

        Valid values: REGISTER_DOMAIN | DELETE_DOMAIN | TRANSFER_IN_DOMAIN | UPDATE_DOMAIN_CONTACT | UPDATE_NAMESERVER | CHANGE_PRIVACY_PROTECTION | DOMAIN_LOCK

        " } }, "PageMarker": { "base": null, "refs": { "ListDomainsRequest$Marker": "

        For an initial request for a list of domains, omit this element. If the number of domains that are associated with the current AWS account is greater than the value that you specified for MaxItems, you can use Marker to return additional domains. Get the value of NextPageMarker from the previous response, and submit another request that includes the value of NextPageMarker in the Marker element.

        Type: String

        Default: None

        Constraints: The marker must match the value specified in the previous request.

        Required: No

        ", "ListDomainsResponse$NextPageMarker": "

        If there are more domains than you specified for MaxItems in the request, submit another request and include the value of NextPageMarker in the value of Marker.

        Type: String

        Parent: Operations

        ", "ListOperationsRequest$Marker": "

        For an initial request for a list of operations, omit this element. If the number of operations that are not yet complete is greater than the value that you specified for MaxItems, you can use Marker to return additional operations. Get the value of NextPageMarker from the previous response, and submit another request that includes the value of NextPageMarker in the Marker element.

        Type: String

        Default: None

        Required: No

        ", "ListOperationsResponse$NextPageMarker": "

        If there are more operations than you specified for MaxItems in the request, submit another request and include the value of NextPageMarker in the value of Marker.

        Type: String

        Parent: Operations

        ", "ViewBillingRequest$Marker": "

        For an initial request for a list of billing records, omit this element. If the number of billing records that are associated with the current AWS account during the specified period is greater than the value that you specified for MaxItems, you can use Marker to return additional billing records. Get the value of NextPageMarker from the previous response, and submit another request that includes the value of NextPageMarker in the Marker element.

        Type: String

        Default: None

        Constraints: The marker must match the value of NextPageMarker that was returned in the previous response.

        Required: No

        ", "ViewBillingResponse$NextPageMarker": "

        If there are more billing records than you specified for MaxItems in the request, submit another request and include the value of NextPageMarker in the value of Marker.

        Type: String

        Parent: BillingRecords

        " } }, "PageMaxItems": { "base": null, "refs": { "ListDomainsRequest$MaxItems": "

        Number of domains to be returned.

        Type: Integer

        Default: 20

        Constraints: A numeral between 1 and 100.

        Required: No

        ", "ListOperationsRequest$MaxItems": "

        Number of domains to be returned.

        Type: Integer

        Default: 20

        Constraints: A value between 1 and 100.

        Required: No

        ", "ViewBillingRequest$MaxItems": "

        The number of billing records to be returned.

        Type: Integer

        Default: 20

        Constraints: A value between 1 and 100.

        Required: No

        " } }, "Price": { "base": null, "refs": { "BillingRecord$Price": "

        The price that you were charged for the operation, in US dollars.

        Type: Double

        Example value: 12.0

        " } }, "ReachabilityStatus": { "base": null, "refs": { "GetContactReachabilityStatusResponse$status": "

        Whether the registrant contact has responded. PENDING indicates that we sent the confirmation email and haven't received a response yet, DONE indicates that we sent the email and got confirmation from the registrant contact, and EXPIRED indicates that the time limit expired before the registrant contact responded.

        Type: String

        Valid values: PENDING, DONE, EXPIRED

        " } }, "RegisterDomainRequest": { "base": "

        The RegisterDomain request includes the following elements.

        ", "refs": { } }, "RegisterDomainResponse": { "base": "

        The RegisterDomain response includes the following element.

        ", "refs": { } }, "RegistrarName": { "base": null, "refs": { "GetDomainDetailResponse$RegistrarName": "

        Name of the registrar of the domain as identified in the registry. Amazon Route 53 domains are registered by registrar Gandi. The value is \"GANDI SAS\".

        Type: String

        " } }, "RegistrarUrl": { "base": null, "refs": { "GetDomainDetailResponse$RegistrarUrl": "

        Web address of the registrar.

        Type: String

        " } }, "RegistrarWhoIsServer": { "base": null, "refs": { "GetDomainDetailResponse$WhoIsServer": "

        The fully qualified name of the WHOIS server that can answer the WHOIS query for the domain.

        Type: String

        " } }, "RegistryDomainId": { "base": null, "refs": { "GetDomainDetailResponse$RegistryDomainId": "

        Reserved for future use.

        " } }, "RenewDomainRequest": { "base": "

        A RenewDomain request includes the number of years that you want to renew for and the current expiration year.

        ", "refs": { } }, "RenewDomainResponse": { "base": null, "refs": { } }, "Reseller": { "base": null, "refs": { "GetDomainDetailResponse$Reseller": "

        Reseller of the domain. Domains registered or transferred using Amazon Route 53 domains will have \"Amazon\" as the reseller.

        Type: String

        " } }, "ResendContactReachabilityEmailRequest": { "base": null, "refs": { } }, "ResendContactReachabilityEmailResponse": { "base": null, "refs": { } }, "RetrieveDomainAuthCodeRequest": { "base": "

        The RetrieveDomainAuthCode request includes the following element.

        ", "refs": { } }, "RetrieveDomainAuthCodeResponse": { "base": "

        The RetrieveDomainAuthCode response includes the following element.

        ", "refs": { } }, "State": { "base": null, "refs": { "ContactDetail$State": "

        The state or province of the contact's city.

        Type: String

        Default: None

        Constraints: Maximum 255 characters.

        Parents: RegistrantContact, AdminContact, TechContact

        Required: No

        " } }, "String": { "base": null, "refs": { "DomainSuggestion$Availability": null } }, "TLDRulesViolation": { "base": "

        The top-level domain does not support this operation.

        ", "refs": { } }, "Tag": { "base": "

        Each tag includes the following elements.

        ", "refs": { "TagList$member": null } }, "TagKey": { "base": null, "refs": { "Tag$Key": "

        The key (name) of a tag.

        Type: String

        Default: None

        Valid values: A-Z, a-z, 0-9, space, \".:/=+\\-@\"

        Constraints: Each key can be 1-128 characters long.

        Required: Yes

        ", "TagKeyList$member": null } }, "TagKeyList": { "base": null, "refs": { "DeleteTagsForDomainRequest$TagsToDelete": "

        A list of tag keys to delete.

        Type: A list that contains the keys of the tags that you want to delete.

        Default: None

        Required: No

        '>" } }, "TagList": { "base": null, "refs": { "ListTagsForDomainResponse$TagList": "

        A list of the tags that are associated with the specified domain.

        Type: A complex type containing a list of tags

        Each tag includes the following elements.

        • Key

          The key (name) of a tag.

          Type: String

        • Value

          The value of a tag.

          Type: String

        ", "UpdateTagsForDomainRequest$TagsToUpdate": "

        A list of the tag keys and values that you want to add or update. If you specify a key that already exists, the corresponding value will be replaced.

        Type: A complex type containing a list of tags

        Default: None

        Required: No

        '>

        Each tag includes the following elements:

        • Key

          The key (name) of a tag.

          Type: String

          Default: None

          Valid values: Unicode characters including alphanumeric, space, and \".:/=+\\-@\"

          Constraints: Each key can be 1-128 characters long.

          Required: Yes

        • Value

          The value of a tag.

          Type: String

          Default: None

          Valid values: Unicode characters including alphanumeric, space, and \".:/=+\\-@\"

          Constraints: Each value can be 0-256 characters long.

          Required: Yes

        " } }, "TagValue": { "base": null, "refs": { "Tag$Value": "

        The value of a tag.

        Type: String

        Default: None

        Valid values: A-Z, a-z, 0-9, space, \".:/=+\\-@\"

        Constraints: Each value can be 0-256 characters long.

        Required: Yes

        " } }, "Timestamp": { "base": null, "refs": { "BillingRecord$BillDate": "

        The date that the operation was billed, in Unix format.

        Type: Double

        ", "DomainSummary$Expiry": "

        Expiration date of the domain in Coordinated Universal Time (UTC).

        Type: Long

        ", "GetDomainDetailResponse$CreationDate": "

        The date when the domain was created as found in the response to a WHOIS query. The date format is Unix time.

        ", "GetDomainDetailResponse$UpdatedDate": "

        The last updated date of the domain as found in the response to a WHOIS query. The date format is Unix time.

        ", "GetDomainDetailResponse$ExpirationDate": "

        The date when the registration for the domain is set to expire. The date format is Unix time.

        ", "GetOperationDetailResponse$SubmittedDate": "

        The date when the request was submitted.

        ", "OperationSummary$SubmittedDate": "

        The date when the request was submitted.

        ", "ViewBillingRequest$Start": "

        The beginning date and time for the time period for which you want a list of billing records. Specify the date in Unix time format.

        Type: Double

        Default: None

        Required: Yes

        ", "ViewBillingRequest$End": "

        The end date and time for the time period for which you want a list of billing records. Specify the date in Unix time format.

        Type: Double

        Default: None

        Required: Yes

        " } }, "TransferDomainRequest": { "base": "

        The TransferDomain request includes the following elements.

        ", "refs": { } }, "TransferDomainResponse": { "base": "

        The TranserDomain response includes the following element.

        ", "refs": { } }, "UnsupportedTLD": { "base": "

        Amazon Route 53 does not support this top-level domain.

        ", "refs": { } }, "UpdateDomainContactPrivacyRequest": { "base": "

        The UpdateDomainContactPrivacy request includes the following elements.

        ", "refs": { } }, "UpdateDomainContactPrivacyResponse": { "base": "

        The UpdateDomainContactPrivacy response includes the following element.

        ", "refs": { } }, "UpdateDomainContactRequest": { "base": "

        The UpdateDomainContact request includes the following elements.

        ", "refs": { } }, "UpdateDomainContactResponse": { "base": "

        The UpdateDomainContact response includes the following element.

        ", "refs": { } }, "UpdateDomainNameserversRequest": { "base": "

        The UpdateDomainNameserver request includes the following elements.

        ", "refs": { } }, "UpdateDomainNameserversResponse": { "base": "

        The UpdateDomainNameservers response includes the following element.

        ", "refs": { } }, "UpdateTagsForDomainRequest": { "base": "

        The UpdateTagsForDomainRequest includes the following elements.

        ", "refs": { } }, "UpdateTagsForDomainResponse": { "base": null, "refs": { } }, "ViewBillingRequest": { "base": "

        The ViewBilling request includes the following elements.

        ", "refs": { } }, "ViewBillingResponse": { "base": "

        The ViewBilling response includes the following elements.

        ", "refs": { } }, "ZipCode": { "base": null, "refs": { "ContactDetail$ZipCode": "

        The zip or postal code of the contact's address.

        Type: String

        Default: None

        Constraints: Maximum 255 characters.

        Parents: RegistrantContact, AdminContact, TechContact

        Required: No

        " } } } } aws-sdk-go-1.4.22/models/apis/route53domains/2014-05-15/examples-1.json000066400000000000000000000000541300374646400245640ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/route53domains/2014-05-15/paginators-1.json000066400000000000000000000005631300374646400251220ustar00rootroot00000000000000{ "version": "1.0", "pagination": { "ListDomains": { "limit_key": "MaxItems", "input_token": "Marker", "output_token": "NextPageMarker", "result_key": "Domains" }, "ListOperations": { "limit_key": "MaxItems", "input_token": "Marker", "output_token": "NextPageMarker", "result_key": "Operations" } } } aws-sdk-go-1.4.22/models/apis/s3/000077500000000000000000000000001300374646400163275ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/s3/2006-03-01/000077500000000000000000000000001300374646400173545ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/s3/2006-03-01/api-2.json000066400000000000000000003677751300374646400212100ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2006-03-01", "checksumFormat":"md5", "endpointPrefix":"s3", "globalEndpoint":"s3.amazonaws.com", "protocol":"rest-xml", "serviceAbbreviation":"Amazon S3", "serviceFullName":"Amazon Simple Storage Service", "signatureVersion":"s3", "timestampFormat":"rfc822" }, "operations":{ "AbortMultipartUpload":{ "name":"AbortMultipartUpload", "http":{ "method":"DELETE", "requestUri":"/{Bucket}/{Key+}" }, "input":{"shape":"AbortMultipartUploadRequest"}, "output":{"shape":"AbortMultipartUploadOutput"}, "errors":[ {"shape":"NoSuchUpload"} ], "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/mpUploadAbort.html" }, "CompleteMultipartUpload":{ "name":"CompleteMultipartUpload", "http":{ "method":"POST", "requestUri":"/{Bucket}/{Key+}" }, "input":{"shape":"CompleteMultipartUploadRequest"}, "output":{"shape":"CompleteMultipartUploadOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/mpUploadComplete.html" }, "CopyObject":{ "name":"CopyObject", "http":{ "method":"PUT", "requestUri":"/{Bucket}/{Key+}" }, "input":{"shape":"CopyObjectRequest"}, "output":{"shape":"CopyObjectOutput"}, "errors":[ {"shape":"ObjectNotInActiveTierError"} ], "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTObjectCOPY.html", "alias":"PutObjectCopy" }, "CreateBucket":{ "name":"CreateBucket", "http":{ "method":"PUT", "requestUri":"/{Bucket}" }, "input":{"shape":"CreateBucketRequest"}, "output":{"shape":"CreateBucketOutput"}, "errors":[ {"shape":"BucketAlreadyExists"}, {"shape":"BucketAlreadyOwnedByYou"} ], "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketPUT.html", "alias":"PutBucket" }, "CreateMultipartUpload":{ "name":"CreateMultipartUpload", "http":{ "method":"POST", "requestUri":"/{Bucket}/{Key+}?uploads" }, "input":{"shape":"CreateMultipartUploadRequest"}, "output":{"shape":"CreateMultipartUploadOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/mpUploadInitiate.html", "alias":"InitiateMultipartUpload" }, "DeleteBucket":{ "name":"DeleteBucket", "http":{ "method":"DELETE", "requestUri":"/{Bucket}" }, "input":{"shape":"DeleteBucketRequest"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketDELETE.html" }, "DeleteBucketCors":{ "name":"DeleteBucketCors", "http":{ "method":"DELETE", "requestUri":"/{Bucket}?cors" }, "input":{"shape":"DeleteBucketCorsRequest"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketDELETEcors.html" }, "DeleteBucketLifecycle":{ "name":"DeleteBucketLifecycle", "http":{ "method":"DELETE", "requestUri":"/{Bucket}?lifecycle" }, "input":{"shape":"DeleteBucketLifecycleRequest"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketDELETElifecycle.html" }, "DeleteBucketPolicy":{ "name":"DeleteBucketPolicy", "http":{ "method":"DELETE", "requestUri":"/{Bucket}?policy" }, "input":{"shape":"DeleteBucketPolicyRequest"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketDELETEpolicy.html" }, "DeleteBucketReplication":{ "name":"DeleteBucketReplication", "http":{ "method":"DELETE", "requestUri":"/{Bucket}?replication" }, "input":{"shape":"DeleteBucketReplicationRequest"} }, "DeleteBucketTagging":{ "name":"DeleteBucketTagging", "http":{ "method":"DELETE", "requestUri":"/{Bucket}?tagging" }, "input":{"shape":"DeleteBucketTaggingRequest"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketDELETEtagging.html" }, "DeleteBucketWebsite":{ "name":"DeleteBucketWebsite", "http":{ "method":"DELETE", "requestUri":"/{Bucket}?website" }, "input":{"shape":"DeleteBucketWebsiteRequest"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketDELETEwebsite.html" }, "DeleteObject":{ "name":"DeleteObject", "http":{ "method":"DELETE", "requestUri":"/{Bucket}/{Key+}" }, "input":{"shape":"DeleteObjectRequest"}, "output":{"shape":"DeleteObjectOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTObjectDELETE.html" }, "DeleteObjects":{ "name":"DeleteObjects", "http":{ "method":"POST", "requestUri":"/{Bucket}?delete" }, "input":{"shape":"DeleteObjectsRequest"}, "output":{"shape":"DeleteObjectsOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/multiobjectdeleteapi.html", "alias":"DeleteMultipleObjects" }, "GetBucketAccelerateConfiguration":{ "name":"GetBucketAccelerateConfiguration", "http":{ "method":"GET", "requestUri":"/{Bucket}?accelerate" }, "input":{"shape":"GetBucketAccelerateConfigurationRequest"}, "output":{"shape":"GetBucketAccelerateConfigurationOutput"} }, "GetBucketAcl":{ "name":"GetBucketAcl", "http":{ "method":"GET", "requestUri":"/{Bucket}?acl" }, "input":{"shape":"GetBucketAclRequest"}, "output":{"shape":"GetBucketAclOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETacl.html" }, "GetBucketCors":{ "name":"GetBucketCors", "http":{ "method":"GET", "requestUri":"/{Bucket}?cors" }, "input":{"shape":"GetBucketCorsRequest"}, "output":{"shape":"GetBucketCorsOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETcors.html" }, "GetBucketLifecycle":{ "name":"GetBucketLifecycle", "http":{ "method":"GET", "requestUri":"/{Bucket}?lifecycle" }, "input":{"shape":"GetBucketLifecycleRequest"}, "output":{"shape":"GetBucketLifecycleOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETlifecycle.html", "deprecated":true }, "GetBucketLifecycleConfiguration":{ "name":"GetBucketLifecycleConfiguration", "http":{ "method":"GET", "requestUri":"/{Bucket}?lifecycle" }, "input":{"shape":"GetBucketLifecycleConfigurationRequest"}, "output":{"shape":"GetBucketLifecycleConfigurationOutput"} }, "GetBucketLocation":{ "name":"GetBucketLocation", "http":{ "method":"GET", "requestUri":"/{Bucket}?location" }, "input":{"shape":"GetBucketLocationRequest"}, "output":{"shape":"GetBucketLocationOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETlocation.html" }, "GetBucketLogging":{ "name":"GetBucketLogging", "http":{ "method":"GET", "requestUri":"/{Bucket}?logging" }, "input":{"shape":"GetBucketLoggingRequest"}, "output":{"shape":"GetBucketLoggingOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETlogging.html" }, "GetBucketNotification":{ "name":"GetBucketNotification", "http":{ "method":"GET", "requestUri":"/{Bucket}?notification" }, "input":{"shape":"GetBucketNotificationConfigurationRequest"}, "output":{"shape":"NotificationConfigurationDeprecated"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETnotification.html", "deprecated":true }, "GetBucketNotificationConfiguration":{ "name":"GetBucketNotificationConfiguration", "http":{ "method":"GET", "requestUri":"/{Bucket}?notification" }, "input":{"shape":"GetBucketNotificationConfigurationRequest"}, "output":{"shape":"NotificationConfiguration"} }, "GetBucketPolicy":{ "name":"GetBucketPolicy", "http":{ "method":"GET", "requestUri":"/{Bucket}?policy" }, "input":{"shape":"GetBucketPolicyRequest"}, "output":{"shape":"GetBucketPolicyOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETpolicy.html" }, "GetBucketReplication":{ "name":"GetBucketReplication", "http":{ "method":"GET", "requestUri":"/{Bucket}?replication" }, "input":{"shape":"GetBucketReplicationRequest"}, "output":{"shape":"GetBucketReplicationOutput"} }, "GetBucketRequestPayment":{ "name":"GetBucketRequestPayment", "http":{ "method":"GET", "requestUri":"/{Bucket}?requestPayment" }, "input":{"shape":"GetBucketRequestPaymentRequest"}, "output":{"shape":"GetBucketRequestPaymentOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTrequestPaymentGET.html" }, "GetBucketTagging":{ "name":"GetBucketTagging", "http":{ "method":"GET", "requestUri":"/{Bucket}?tagging" }, "input":{"shape":"GetBucketTaggingRequest"}, "output":{"shape":"GetBucketTaggingOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETtagging.html" }, "GetBucketVersioning":{ "name":"GetBucketVersioning", "http":{ "method":"GET", "requestUri":"/{Bucket}?versioning" }, "input":{"shape":"GetBucketVersioningRequest"}, "output":{"shape":"GetBucketVersioningOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETversioningStatus.html" }, "GetBucketWebsite":{ "name":"GetBucketWebsite", "http":{ "method":"GET", "requestUri":"/{Bucket}?website" }, "input":{"shape":"GetBucketWebsiteRequest"}, "output":{"shape":"GetBucketWebsiteOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETwebsite.html" }, "GetObject":{ "name":"GetObject", "http":{ "method":"GET", "requestUri":"/{Bucket}/{Key+}" }, "input":{"shape":"GetObjectRequest"}, "output":{"shape":"GetObjectOutput"}, "errors":[ {"shape":"NoSuchKey"} ], "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTObjectGET.html" }, "GetObjectAcl":{ "name":"GetObjectAcl", "http":{ "method":"GET", "requestUri":"/{Bucket}/{Key+}?acl" }, "input":{"shape":"GetObjectAclRequest"}, "output":{"shape":"GetObjectAclOutput"}, "errors":[ {"shape":"NoSuchKey"} ], "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTObjectGETacl.html" }, "GetObjectTorrent":{ "name":"GetObjectTorrent", "http":{ "method":"GET", "requestUri":"/{Bucket}/{Key+}?torrent" }, "input":{"shape":"GetObjectTorrentRequest"}, "output":{"shape":"GetObjectTorrentOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTObjectGETtorrent.html" }, "HeadBucket":{ "name":"HeadBucket", "http":{ "method":"HEAD", "requestUri":"/{Bucket}" }, "input":{"shape":"HeadBucketRequest"}, "errors":[ {"shape":"NoSuchBucket"} ], "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketHEAD.html" }, "HeadObject":{ "name":"HeadObject", "http":{ "method":"HEAD", "requestUri":"/{Bucket}/{Key+}" }, "input":{"shape":"HeadObjectRequest"}, "output":{"shape":"HeadObjectOutput"}, "errors":[ {"shape":"NoSuchKey"} ], "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTObjectHEAD.html" }, "ListBuckets":{ "name":"ListBuckets", "http":{ "method":"GET", "requestUri":"/" }, "output":{"shape":"ListBucketsOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTServiceGET.html", "alias":"GetService" }, "ListMultipartUploads":{ "name":"ListMultipartUploads", "http":{ "method":"GET", "requestUri":"/{Bucket}?uploads" }, "input":{"shape":"ListMultipartUploadsRequest"}, "output":{"shape":"ListMultipartUploadsOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/mpUploadListMPUpload.html" }, "ListObjectVersions":{ "name":"ListObjectVersions", "http":{ "method":"GET", "requestUri":"/{Bucket}?versions" }, "input":{"shape":"ListObjectVersionsRequest"}, "output":{"shape":"ListObjectVersionsOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGETVersion.html", "alias":"GetBucketObjectVersions" }, "ListObjects":{ "name":"ListObjects", "http":{ "method":"GET", "requestUri":"/{Bucket}" }, "input":{"shape":"ListObjectsRequest"}, "output":{"shape":"ListObjectsOutput"}, "errors":[ {"shape":"NoSuchBucket"} ], "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketGET.html", "alias":"GetBucket" }, "ListObjectsV2":{ "name":"ListObjectsV2", "http":{ "method":"GET", "requestUri":"/{Bucket}?list-type=2" }, "input":{"shape":"ListObjectsV2Request"}, "output":{"shape":"ListObjectsV2Output"}, "errors":[ {"shape":"NoSuchBucket"} ] }, "ListParts":{ "name":"ListParts", "http":{ "method":"GET", "requestUri":"/{Bucket}/{Key+}" }, "input":{"shape":"ListPartsRequest"}, "output":{"shape":"ListPartsOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/mpUploadListParts.html" }, "PutBucketAccelerateConfiguration":{ "name":"PutBucketAccelerateConfiguration", "http":{ "method":"PUT", "requestUri":"/{Bucket}?accelerate" }, "input":{"shape":"PutBucketAccelerateConfigurationRequest"} }, "PutBucketAcl":{ "name":"PutBucketAcl", "http":{ "method":"PUT", "requestUri":"/{Bucket}?acl" }, "input":{"shape":"PutBucketAclRequest"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketPUTacl.html" }, "PutBucketCors":{ "name":"PutBucketCors", "http":{ "method":"PUT", "requestUri":"/{Bucket}?cors" }, "input":{"shape":"PutBucketCorsRequest"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketPUTcors.html" }, "PutBucketLifecycle":{ "name":"PutBucketLifecycle", "http":{ "method":"PUT", "requestUri":"/{Bucket}?lifecycle" }, "input":{"shape":"PutBucketLifecycleRequest"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketPUTlifecycle.html", "deprecated":true }, "PutBucketLifecycleConfiguration":{ "name":"PutBucketLifecycleConfiguration", "http":{ "method":"PUT", "requestUri":"/{Bucket}?lifecycle" }, "input":{"shape":"PutBucketLifecycleConfigurationRequest"} }, "PutBucketLogging":{ "name":"PutBucketLogging", "http":{ "method":"PUT", "requestUri":"/{Bucket}?logging" }, "input":{"shape":"PutBucketLoggingRequest"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketPUTlogging.html" }, "PutBucketNotification":{ "name":"PutBucketNotification", "http":{ "method":"PUT", "requestUri":"/{Bucket}?notification" }, "input":{"shape":"PutBucketNotificationRequest"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketPUTnotification.html", "deprecated":true }, "PutBucketNotificationConfiguration":{ "name":"PutBucketNotificationConfiguration", "http":{ "method":"PUT", "requestUri":"/{Bucket}?notification" }, "input":{"shape":"PutBucketNotificationConfigurationRequest"} }, "PutBucketPolicy":{ "name":"PutBucketPolicy", "http":{ "method":"PUT", "requestUri":"/{Bucket}?policy" }, "input":{"shape":"PutBucketPolicyRequest"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketPUTpolicy.html" }, "PutBucketReplication":{ "name":"PutBucketReplication", "http":{ "method":"PUT", "requestUri":"/{Bucket}?replication" }, "input":{"shape":"PutBucketReplicationRequest"} }, "PutBucketRequestPayment":{ "name":"PutBucketRequestPayment", "http":{ "method":"PUT", "requestUri":"/{Bucket}?requestPayment" }, "input":{"shape":"PutBucketRequestPaymentRequest"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTrequestPaymentPUT.html" }, "PutBucketTagging":{ "name":"PutBucketTagging", "http":{ "method":"PUT", "requestUri":"/{Bucket}?tagging" }, "input":{"shape":"PutBucketTaggingRequest"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketPUTtagging.html" }, "PutBucketVersioning":{ "name":"PutBucketVersioning", "http":{ "method":"PUT", "requestUri":"/{Bucket}?versioning" }, "input":{"shape":"PutBucketVersioningRequest"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketPUTVersioningStatus.html" }, "PutBucketWebsite":{ "name":"PutBucketWebsite", "http":{ "method":"PUT", "requestUri":"/{Bucket}?website" }, "input":{"shape":"PutBucketWebsiteRequest"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTBucketPUTwebsite.html" }, "PutObject":{ "name":"PutObject", "http":{ "method":"PUT", "requestUri":"/{Bucket}/{Key+}" }, "input":{"shape":"PutObjectRequest"}, "output":{"shape":"PutObjectOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTObjectPUT.html" }, "PutObjectAcl":{ "name":"PutObjectAcl", "http":{ "method":"PUT", "requestUri":"/{Bucket}/{Key+}?acl" }, "input":{"shape":"PutObjectAclRequest"}, "output":{"shape":"PutObjectAclOutput"}, "errors":[ {"shape":"NoSuchKey"} ], "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTObjectPUTacl.html" }, "RestoreObject":{ "name":"RestoreObject", "http":{ "method":"POST", "requestUri":"/{Bucket}/{Key+}?restore" }, "input":{"shape":"RestoreObjectRequest"}, "output":{"shape":"RestoreObjectOutput"}, "errors":[ {"shape":"ObjectAlreadyInActiveTierError"} ], "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/RESTObjectRestore.html", "alias":"PostObjectRestore" }, "UploadPart":{ "name":"UploadPart", "http":{ "method":"PUT", "requestUri":"/{Bucket}/{Key+}" }, "input":{"shape":"UploadPartRequest"}, "output":{"shape":"UploadPartOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/mpUploadUploadPart.html" }, "UploadPartCopy":{ "name":"UploadPartCopy", "http":{ "method":"PUT", "requestUri":"/{Bucket}/{Key+}" }, "input":{"shape":"UploadPartCopyRequest"}, "output":{"shape":"UploadPartCopyOutput"}, "documentationUrl":"http://docs.amazonwebservices.com/AmazonS3/latest/API/mpUploadUploadPartCopy.html" } }, "shapes":{ "AbortDate":{"type":"timestamp"}, "AbortIncompleteMultipartUpload":{ "type":"structure", "members":{ "DaysAfterInitiation":{"shape":"DaysAfterInitiation"} } }, "AbortMultipartUploadOutput":{ "type":"structure", "members":{ "RequestCharged":{ "shape":"RequestCharged", "location":"header", "locationName":"x-amz-request-charged" } } }, "AbortMultipartUploadRequest":{ "type":"structure", "required":[ "Bucket", "Key", "UploadId" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "Key":{ "shape":"ObjectKey", "location":"uri", "locationName":"Key" }, "UploadId":{ "shape":"MultipartUploadId", "location":"querystring", "locationName":"uploadId" }, "RequestPayer":{ "shape":"RequestPayer", "location":"header", "locationName":"x-amz-request-payer" } } }, "AbortRuleId":{"type":"string"}, "AccelerateConfiguration":{ "type":"structure", "members":{ "Status":{"shape":"BucketAccelerateStatus"} } }, "AcceptRanges":{"type":"string"}, "AccessControlPolicy":{ "type":"structure", "members":{ "Grants":{ "shape":"Grants", "locationName":"AccessControlList" }, "Owner":{"shape":"Owner"} } }, "AllowedHeader":{"type":"string"}, "AllowedHeaders":{ "type":"list", "member":{"shape":"AllowedHeader"}, "flattened":true }, "AllowedMethod":{"type":"string"}, "AllowedMethods":{ "type":"list", "member":{"shape":"AllowedMethod"}, "flattened":true }, "AllowedOrigin":{"type":"string"}, "AllowedOrigins":{ "type":"list", "member":{"shape":"AllowedOrigin"}, "flattened":true }, "Body":{"type":"blob"}, "Bucket":{ "type":"structure", "members":{ "Name":{"shape":"BucketName"}, "CreationDate":{"shape":"CreationDate"} } }, "BucketAccelerateStatus":{ "type":"string", "enum":[ "Enabled", "Suspended" ] }, "BucketAlreadyExists":{ "type":"structure", "members":{ }, "exception":true }, "BucketAlreadyOwnedByYou":{ "type":"structure", "members":{ }, "exception":true }, "BucketCannedACL":{ "type":"string", "enum":[ "private", "public-read", "public-read-write", "authenticated-read" ] }, "BucketLifecycleConfiguration":{ "type":"structure", "required":["Rules"], "members":{ "Rules":{ "shape":"LifecycleRules", "locationName":"Rule" } } }, "BucketLocationConstraint":{ "type":"string", "enum":[ "EU", "eu-west-1", "us-west-1", "us-west-2", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "sa-east-1", "cn-north-1", "eu-central-1" ] }, "BucketLoggingStatus":{ "type":"structure", "members":{ "LoggingEnabled":{"shape":"LoggingEnabled"} } }, "BucketLogsPermission":{ "type":"string", "enum":[ "FULL_CONTROL", "READ", "WRITE" ] }, "BucketName":{"type":"string"}, "BucketVersioningStatus":{ "type":"string", "enum":[ "Enabled", "Suspended" ] }, "Buckets":{ "type":"list", "member":{ "shape":"Bucket", "locationName":"Bucket" } }, "CORSConfiguration":{ "type":"structure", "required":["CORSRules"], "members":{ "CORSRules":{ "shape":"CORSRules", "locationName":"CORSRule" } } }, "CORSRule":{ "type":"structure", "required":[ "AllowedMethods", "AllowedOrigins" ], "members":{ "AllowedHeaders":{ "shape":"AllowedHeaders", "locationName":"AllowedHeader" }, "AllowedMethods":{ "shape":"AllowedMethods", "locationName":"AllowedMethod" }, "AllowedOrigins":{ "shape":"AllowedOrigins", "locationName":"AllowedOrigin" }, "ExposeHeaders":{ "shape":"ExposeHeaders", "locationName":"ExposeHeader" }, "MaxAgeSeconds":{"shape":"MaxAgeSeconds"} } }, "CORSRules":{ "type":"list", "member":{"shape":"CORSRule"}, "flattened":true }, "CacheControl":{"type":"string"}, "CloudFunction":{"type":"string"}, "CloudFunctionConfiguration":{ "type":"structure", "members":{ "Id":{"shape":"NotificationId"}, "Event":{ "shape":"Event", "deprecated":true }, "Events":{ "shape":"EventList", "locationName":"Event" }, "CloudFunction":{"shape":"CloudFunction"}, "InvocationRole":{"shape":"CloudFunctionInvocationRole"} } }, "CloudFunctionInvocationRole":{"type":"string"}, "Code":{"type":"string"}, "CommonPrefix":{ "type":"structure", "members":{ "Prefix":{"shape":"Prefix"} } }, "CommonPrefixList":{ "type":"list", "member":{"shape":"CommonPrefix"}, "flattened":true }, "CompleteMultipartUploadOutput":{ "type":"structure", "members":{ "Location":{"shape":"Location"}, "Bucket":{"shape":"BucketName"}, "Key":{"shape":"ObjectKey"}, "Expiration":{ "shape":"Expiration", "location":"header", "locationName":"x-amz-expiration" }, "ETag":{"shape":"ETag"}, "ServerSideEncryption":{ "shape":"ServerSideEncryption", "location":"header", "locationName":"x-amz-server-side-encryption" }, "VersionId":{ "shape":"ObjectVersionId", "location":"header", "locationName":"x-amz-version-id" }, "SSEKMSKeyId":{ "shape":"SSEKMSKeyId", "location":"header", "locationName":"x-amz-server-side-encryption-aws-kms-key-id" }, "RequestCharged":{ "shape":"RequestCharged", "location":"header", "locationName":"x-amz-request-charged" } } }, "CompleteMultipartUploadRequest":{ "type":"structure", "required":[ "Bucket", "Key", "UploadId" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "Key":{ "shape":"ObjectKey", "location":"uri", "locationName":"Key" }, "MultipartUpload":{ "shape":"CompletedMultipartUpload", "locationName":"CompleteMultipartUpload", "xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"} }, "UploadId":{ "shape":"MultipartUploadId", "location":"querystring", "locationName":"uploadId" }, "RequestPayer":{ "shape":"RequestPayer", "location":"header", "locationName":"x-amz-request-payer" } }, "payload":"MultipartUpload" }, "CompletedMultipartUpload":{ "type":"structure", "members":{ "Parts":{ "shape":"CompletedPartList", "locationName":"Part" } } }, "CompletedPart":{ "type":"structure", "members":{ "ETag":{"shape":"ETag"}, "PartNumber":{"shape":"PartNumber"} } }, "CompletedPartList":{ "type":"list", "member":{"shape":"CompletedPart"}, "flattened":true }, "Condition":{ "type":"structure", "members":{ "HttpErrorCodeReturnedEquals":{"shape":"HttpErrorCodeReturnedEquals"}, "KeyPrefixEquals":{"shape":"KeyPrefixEquals"} } }, "ContentDisposition":{"type":"string"}, "ContentEncoding":{"type":"string"}, "ContentLanguage":{"type":"string"}, "ContentLength":{"type":"long"}, "ContentMD5":{"type":"string"}, "ContentRange":{"type":"string"}, "ContentType":{"type":"string"}, "CopyObjectOutput":{ "type":"structure", "members":{ "CopyObjectResult":{"shape":"CopyObjectResult"}, "Expiration":{ "shape":"Expiration", "location":"header", "locationName":"x-amz-expiration" }, "CopySourceVersionId":{ "shape":"CopySourceVersionId", "location":"header", "locationName":"x-amz-copy-source-version-id" }, "VersionId":{ "shape":"ObjectVersionId", "location":"header", "locationName":"x-amz-version-id" }, "ServerSideEncryption":{ "shape":"ServerSideEncryption", "location":"header", "locationName":"x-amz-server-side-encryption" }, "SSECustomerAlgorithm":{ "shape":"SSECustomerAlgorithm", "location":"header", "locationName":"x-amz-server-side-encryption-customer-algorithm" }, "SSECustomerKeyMD5":{ "shape":"SSECustomerKeyMD5", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key-MD5" }, "SSEKMSKeyId":{ "shape":"SSEKMSKeyId", "location":"header", "locationName":"x-amz-server-side-encryption-aws-kms-key-id" }, "RequestCharged":{ "shape":"RequestCharged", "location":"header", "locationName":"x-amz-request-charged" } }, "payload":"CopyObjectResult" }, "CopyObjectRequest":{ "type":"structure", "required":[ "Bucket", "CopySource", "Key" ], "members":{ "ACL":{ "shape":"ObjectCannedACL", "location":"header", "locationName":"x-amz-acl" }, "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "CacheControl":{ "shape":"CacheControl", "location":"header", "locationName":"Cache-Control" }, "ContentDisposition":{ "shape":"ContentDisposition", "location":"header", "locationName":"Content-Disposition" }, "ContentEncoding":{ "shape":"ContentEncoding", "location":"header", "locationName":"Content-Encoding" }, "ContentLanguage":{ "shape":"ContentLanguage", "location":"header", "locationName":"Content-Language" }, "ContentType":{ "shape":"ContentType", "location":"header", "locationName":"Content-Type" }, "CopySource":{ "shape":"CopySource", "location":"header", "locationName":"x-amz-copy-source" }, "CopySourceIfMatch":{ "shape":"CopySourceIfMatch", "location":"header", "locationName":"x-amz-copy-source-if-match" }, "CopySourceIfModifiedSince":{ "shape":"CopySourceIfModifiedSince", "location":"header", "locationName":"x-amz-copy-source-if-modified-since" }, "CopySourceIfNoneMatch":{ "shape":"CopySourceIfNoneMatch", "location":"header", "locationName":"x-amz-copy-source-if-none-match" }, "CopySourceIfUnmodifiedSince":{ "shape":"CopySourceIfUnmodifiedSince", "location":"header", "locationName":"x-amz-copy-source-if-unmodified-since" }, "Expires":{ "shape":"Expires", "location":"header", "locationName":"Expires" }, "GrantFullControl":{ "shape":"GrantFullControl", "location":"header", "locationName":"x-amz-grant-full-control" }, "GrantRead":{ "shape":"GrantRead", "location":"header", "locationName":"x-amz-grant-read" }, "GrantReadACP":{ "shape":"GrantReadACP", "location":"header", "locationName":"x-amz-grant-read-acp" }, "GrantWriteACP":{ "shape":"GrantWriteACP", "location":"header", "locationName":"x-amz-grant-write-acp" }, "Key":{ "shape":"ObjectKey", "location":"uri", "locationName":"Key" }, "Metadata":{ "shape":"Metadata", "location":"headers", "locationName":"x-amz-meta-" }, "MetadataDirective":{ "shape":"MetadataDirective", "location":"header", "locationName":"x-amz-metadata-directive" }, "ServerSideEncryption":{ "shape":"ServerSideEncryption", "location":"header", "locationName":"x-amz-server-side-encryption" }, "StorageClass":{ "shape":"StorageClass", "location":"header", "locationName":"x-amz-storage-class" }, "WebsiteRedirectLocation":{ "shape":"WebsiteRedirectLocation", "location":"header", "locationName":"x-amz-website-redirect-location" }, "SSECustomerAlgorithm":{ "shape":"SSECustomerAlgorithm", "location":"header", "locationName":"x-amz-server-side-encryption-customer-algorithm" }, "SSECustomerKey":{ "shape":"SSECustomerKey", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key" }, "SSECustomerKeyMD5":{ "shape":"SSECustomerKeyMD5", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key-MD5" }, "SSEKMSKeyId":{ "shape":"SSEKMSKeyId", "location":"header", "locationName":"x-amz-server-side-encryption-aws-kms-key-id" }, "CopySourceSSECustomerAlgorithm":{ "shape":"CopySourceSSECustomerAlgorithm", "location":"header", "locationName":"x-amz-copy-source-server-side-encryption-customer-algorithm" }, "CopySourceSSECustomerKey":{ "shape":"CopySourceSSECustomerKey", "location":"header", "locationName":"x-amz-copy-source-server-side-encryption-customer-key" }, "CopySourceSSECustomerKeyMD5":{ "shape":"CopySourceSSECustomerKeyMD5", "location":"header", "locationName":"x-amz-copy-source-server-side-encryption-customer-key-MD5" }, "RequestPayer":{ "shape":"RequestPayer", "location":"header", "locationName":"x-amz-request-payer" } } }, "CopyObjectResult":{ "type":"structure", "members":{ "ETag":{"shape":"ETag"}, "LastModified":{"shape":"LastModified"} } }, "CopyPartResult":{ "type":"structure", "members":{ "ETag":{"shape":"ETag"}, "LastModified":{"shape":"LastModified"} } }, "CopySource":{ "type":"string", "pattern":"\\/.+\\/.+" }, "CopySourceIfMatch":{"type":"string"}, "CopySourceIfModifiedSince":{"type":"timestamp"}, "CopySourceIfNoneMatch":{"type":"string"}, "CopySourceIfUnmodifiedSince":{"type":"timestamp"}, "CopySourceRange":{"type":"string"}, "CopySourceSSECustomerAlgorithm":{"type":"string"}, "CopySourceSSECustomerKey":{ "type":"string", "sensitive":true }, "CopySourceSSECustomerKeyMD5":{"type":"string"}, "CopySourceVersionId":{"type":"string"}, "CreateBucketConfiguration":{ "type":"structure", "members":{ "LocationConstraint":{"shape":"BucketLocationConstraint"} } }, "CreateBucketOutput":{ "type":"structure", "members":{ "Location":{ "shape":"Location", "location":"header", "locationName":"Location" } } }, "CreateBucketRequest":{ "type":"structure", "required":["Bucket"], "members":{ "ACL":{ "shape":"BucketCannedACL", "location":"header", "locationName":"x-amz-acl" }, "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "CreateBucketConfiguration":{ "shape":"CreateBucketConfiguration", "locationName":"CreateBucketConfiguration", "xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"} }, "GrantFullControl":{ "shape":"GrantFullControl", "location":"header", "locationName":"x-amz-grant-full-control" }, "GrantRead":{ "shape":"GrantRead", "location":"header", "locationName":"x-amz-grant-read" }, "GrantReadACP":{ "shape":"GrantReadACP", "location":"header", "locationName":"x-amz-grant-read-acp" }, "GrantWrite":{ "shape":"GrantWrite", "location":"header", "locationName":"x-amz-grant-write" }, "GrantWriteACP":{ "shape":"GrantWriteACP", "location":"header", "locationName":"x-amz-grant-write-acp" } }, "payload":"CreateBucketConfiguration" }, "CreateMultipartUploadOutput":{ "type":"structure", "members":{ "AbortDate":{ "shape":"AbortDate", "location":"header", "locationName":"x-amz-abort-date" }, "AbortRuleId":{ "shape":"AbortRuleId", "location":"header", "locationName":"x-amz-abort-rule-id" }, "Bucket":{ "shape":"BucketName", "locationName":"Bucket" }, "Key":{"shape":"ObjectKey"}, "UploadId":{"shape":"MultipartUploadId"}, "ServerSideEncryption":{ "shape":"ServerSideEncryption", "location":"header", "locationName":"x-amz-server-side-encryption" }, "SSECustomerAlgorithm":{ "shape":"SSECustomerAlgorithm", "location":"header", "locationName":"x-amz-server-side-encryption-customer-algorithm" }, "SSECustomerKeyMD5":{ "shape":"SSECustomerKeyMD5", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key-MD5" }, "SSEKMSKeyId":{ "shape":"SSEKMSKeyId", "location":"header", "locationName":"x-amz-server-side-encryption-aws-kms-key-id" }, "RequestCharged":{ "shape":"RequestCharged", "location":"header", "locationName":"x-amz-request-charged" } } }, "CreateMultipartUploadRequest":{ "type":"structure", "required":[ "Bucket", "Key" ], "members":{ "ACL":{ "shape":"ObjectCannedACL", "location":"header", "locationName":"x-amz-acl" }, "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "CacheControl":{ "shape":"CacheControl", "location":"header", "locationName":"Cache-Control" }, "ContentDisposition":{ "shape":"ContentDisposition", "location":"header", "locationName":"Content-Disposition" }, "ContentEncoding":{ "shape":"ContentEncoding", "location":"header", "locationName":"Content-Encoding" }, "ContentLanguage":{ "shape":"ContentLanguage", "location":"header", "locationName":"Content-Language" }, "ContentType":{ "shape":"ContentType", "location":"header", "locationName":"Content-Type" }, "Expires":{ "shape":"Expires", "location":"header", "locationName":"Expires" }, "GrantFullControl":{ "shape":"GrantFullControl", "location":"header", "locationName":"x-amz-grant-full-control" }, "GrantRead":{ "shape":"GrantRead", "location":"header", "locationName":"x-amz-grant-read" }, "GrantReadACP":{ "shape":"GrantReadACP", "location":"header", "locationName":"x-amz-grant-read-acp" }, "GrantWriteACP":{ "shape":"GrantWriteACP", "location":"header", "locationName":"x-amz-grant-write-acp" }, "Key":{ "shape":"ObjectKey", "location":"uri", "locationName":"Key" }, "Metadata":{ "shape":"Metadata", "location":"headers", "locationName":"x-amz-meta-" }, "ServerSideEncryption":{ "shape":"ServerSideEncryption", "location":"header", "locationName":"x-amz-server-side-encryption" }, "StorageClass":{ "shape":"StorageClass", "location":"header", "locationName":"x-amz-storage-class" }, "WebsiteRedirectLocation":{ "shape":"WebsiteRedirectLocation", "location":"header", "locationName":"x-amz-website-redirect-location" }, "SSECustomerAlgorithm":{ "shape":"SSECustomerAlgorithm", "location":"header", "locationName":"x-amz-server-side-encryption-customer-algorithm" }, "SSECustomerKey":{ "shape":"SSECustomerKey", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key" }, "SSECustomerKeyMD5":{ "shape":"SSECustomerKeyMD5", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key-MD5" }, "SSEKMSKeyId":{ "shape":"SSEKMSKeyId", "location":"header", "locationName":"x-amz-server-side-encryption-aws-kms-key-id" }, "RequestPayer":{ "shape":"RequestPayer", "location":"header", "locationName":"x-amz-request-payer" } } }, "CreationDate":{"type":"timestamp"}, "Date":{ "type":"timestamp", "timestampFormat":"iso8601" }, "Days":{"type":"integer"}, "DaysAfterInitiation":{"type":"integer"}, "Delete":{ "type":"structure", "required":["Objects"], "members":{ "Objects":{ "shape":"ObjectIdentifierList", "locationName":"Object" }, "Quiet":{"shape":"Quiet"} } }, "DeleteBucketCorsRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "DeleteBucketLifecycleRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "DeleteBucketPolicyRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "DeleteBucketReplicationRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "DeleteBucketRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "DeleteBucketTaggingRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "DeleteBucketWebsiteRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "DeleteMarker":{"type":"boolean"}, "DeleteMarkerEntry":{ "type":"structure", "members":{ "Owner":{"shape":"Owner"}, "Key":{"shape":"ObjectKey"}, "VersionId":{"shape":"ObjectVersionId"}, "IsLatest":{"shape":"IsLatest"}, "LastModified":{"shape":"LastModified"} } }, "DeleteMarkerVersionId":{"type":"string"}, "DeleteMarkers":{ "type":"list", "member":{"shape":"DeleteMarkerEntry"}, "flattened":true }, "DeleteObjectOutput":{ "type":"structure", "members":{ "DeleteMarker":{ "shape":"DeleteMarker", "location":"header", "locationName":"x-amz-delete-marker" }, "VersionId":{ "shape":"ObjectVersionId", "location":"header", "locationName":"x-amz-version-id" }, "RequestCharged":{ "shape":"RequestCharged", "location":"header", "locationName":"x-amz-request-charged" } } }, "DeleteObjectRequest":{ "type":"structure", "required":[ "Bucket", "Key" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "Key":{ "shape":"ObjectKey", "location":"uri", "locationName":"Key" }, "MFA":{ "shape":"MFA", "location":"header", "locationName":"x-amz-mfa" }, "VersionId":{ "shape":"ObjectVersionId", "location":"querystring", "locationName":"versionId" }, "RequestPayer":{ "shape":"RequestPayer", "location":"header", "locationName":"x-amz-request-payer" } } }, "DeleteObjectsOutput":{ "type":"structure", "members":{ "Deleted":{"shape":"DeletedObjects"}, "RequestCharged":{ "shape":"RequestCharged", "location":"header", "locationName":"x-amz-request-charged" }, "Errors":{ "shape":"Errors", "locationName":"Error" } } }, "DeleteObjectsRequest":{ "type":"structure", "required":[ "Bucket", "Delete" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "Delete":{ "shape":"Delete", "locationName":"Delete", "xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"} }, "MFA":{ "shape":"MFA", "location":"header", "locationName":"x-amz-mfa" }, "RequestPayer":{ "shape":"RequestPayer", "location":"header", "locationName":"x-amz-request-payer" } }, "payload":"Delete" }, "DeletedObject":{ "type":"structure", "members":{ "Key":{"shape":"ObjectKey"}, "VersionId":{"shape":"ObjectVersionId"}, "DeleteMarker":{"shape":"DeleteMarker"}, "DeleteMarkerVersionId":{"shape":"DeleteMarkerVersionId"} } }, "DeletedObjects":{ "type":"list", "member":{"shape":"DeletedObject"}, "flattened":true }, "Delimiter":{"type":"string"}, "Destination":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{"shape":"BucketName"}, "StorageClass":{"shape":"StorageClass"} } }, "DisplayName":{"type":"string"}, "ETag":{"type":"string"}, "EmailAddress":{"type":"string"}, "EncodingType":{ "type":"string", "enum":["url"] }, "Error":{ "type":"structure", "members":{ "Key":{"shape":"ObjectKey"}, "VersionId":{"shape":"ObjectVersionId"}, "Code":{"shape":"Code"}, "Message":{"shape":"Message"} } }, "ErrorDocument":{ "type":"structure", "required":["Key"], "members":{ "Key":{"shape":"ObjectKey"} } }, "Errors":{ "type":"list", "member":{"shape":"Error"}, "flattened":true }, "Event":{ "type":"string", "enum":[ "s3:ReducedRedundancyLostObject", "s3:ObjectCreated:*", "s3:ObjectCreated:Put", "s3:ObjectCreated:Post", "s3:ObjectCreated:Copy", "s3:ObjectCreated:CompleteMultipartUpload", "s3:ObjectRemoved:*", "s3:ObjectRemoved:Delete", "s3:ObjectRemoved:DeleteMarkerCreated" ] }, "EventList":{ "type":"list", "member":{"shape":"Event"}, "flattened":true }, "Expiration":{"type":"string"}, "ExpirationStatus":{ "type":"string", "enum":[ "Enabled", "Disabled" ] }, "ExpiredObjectDeleteMarker":{"type":"boolean"}, "Expires":{"type":"timestamp"}, "ExposeHeader":{"type":"string"}, "ExposeHeaders":{ "type":"list", "member":{"shape":"ExposeHeader"}, "flattened":true }, "FetchOwner":{"type":"boolean"}, "FilterRule":{ "type":"structure", "members":{ "Name":{"shape":"FilterRuleName"}, "Value":{"shape":"FilterRuleValue"} } }, "FilterRuleList":{ "type":"list", "member":{"shape":"FilterRule"}, "flattened":true }, "FilterRuleName":{ "type":"string", "enum":[ "prefix", "suffix" ] }, "FilterRuleValue":{"type":"string"}, "GetBucketAccelerateConfigurationOutput":{ "type":"structure", "members":{ "Status":{"shape":"BucketAccelerateStatus"} } }, "GetBucketAccelerateConfigurationRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "GetBucketAclOutput":{ "type":"structure", "members":{ "Owner":{"shape":"Owner"}, "Grants":{ "shape":"Grants", "locationName":"AccessControlList" } } }, "GetBucketAclRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "GetBucketCorsOutput":{ "type":"structure", "members":{ "CORSRules":{ "shape":"CORSRules", "locationName":"CORSRule" } } }, "GetBucketCorsRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "GetBucketLifecycleConfigurationOutput":{ "type":"structure", "members":{ "Rules":{ "shape":"LifecycleRules", "locationName":"Rule" } } }, "GetBucketLifecycleConfigurationRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "GetBucketLifecycleOutput":{ "type":"structure", "members":{ "Rules":{ "shape":"Rules", "locationName":"Rule" } } }, "GetBucketLifecycleRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "GetBucketLocationOutput":{ "type":"structure", "members":{ "LocationConstraint":{"shape":"BucketLocationConstraint"} } }, "GetBucketLocationRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "GetBucketLoggingOutput":{ "type":"structure", "members":{ "LoggingEnabled":{"shape":"LoggingEnabled"} } }, "GetBucketLoggingRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "GetBucketNotificationConfigurationRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "GetBucketPolicyOutput":{ "type":"structure", "members":{ "Policy":{"shape":"Policy"} }, "payload":"Policy" }, "GetBucketPolicyRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "GetBucketReplicationOutput":{ "type":"structure", "members":{ "ReplicationConfiguration":{"shape":"ReplicationConfiguration"} }, "payload":"ReplicationConfiguration" }, "GetBucketReplicationRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "GetBucketRequestPaymentOutput":{ "type":"structure", "members":{ "Payer":{"shape":"Payer"} } }, "GetBucketRequestPaymentRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "GetBucketTaggingOutput":{ "type":"structure", "required":["TagSet"], "members":{ "TagSet":{"shape":"TagSet"} } }, "GetBucketTaggingRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "GetBucketVersioningOutput":{ "type":"structure", "members":{ "Status":{"shape":"BucketVersioningStatus"}, "MFADelete":{ "shape":"MFADeleteStatus", "locationName":"MfaDelete" } } }, "GetBucketVersioningRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "GetBucketWebsiteOutput":{ "type":"structure", "members":{ "RedirectAllRequestsTo":{"shape":"RedirectAllRequestsTo"}, "IndexDocument":{"shape":"IndexDocument"}, "ErrorDocument":{"shape":"ErrorDocument"}, "RoutingRules":{"shape":"RoutingRules"} } }, "GetBucketWebsiteRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "GetObjectAclOutput":{ "type":"structure", "members":{ "Owner":{"shape":"Owner"}, "Grants":{ "shape":"Grants", "locationName":"AccessControlList" }, "RequestCharged":{ "shape":"RequestCharged", "location":"header", "locationName":"x-amz-request-charged" } } }, "GetObjectAclRequest":{ "type":"structure", "required":[ "Bucket", "Key" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "Key":{ "shape":"ObjectKey", "location":"uri", "locationName":"Key" }, "VersionId":{ "shape":"ObjectVersionId", "location":"querystring", "locationName":"versionId" }, "RequestPayer":{ "shape":"RequestPayer", "location":"header", "locationName":"x-amz-request-payer" } } }, "GetObjectOutput":{ "type":"structure", "members":{ "Body":{ "shape":"Body", "streaming":true }, "DeleteMarker":{ "shape":"DeleteMarker", "location":"header", "locationName":"x-amz-delete-marker" }, "AcceptRanges":{ "shape":"AcceptRanges", "location":"header", "locationName":"accept-ranges" }, "Expiration":{ "shape":"Expiration", "location":"header", "locationName":"x-amz-expiration" }, "Restore":{ "shape":"Restore", "location":"header", "locationName":"x-amz-restore" }, "LastModified":{ "shape":"LastModified", "location":"header", "locationName":"Last-Modified" }, "ContentLength":{ "shape":"ContentLength", "location":"header", "locationName":"Content-Length" }, "ETag":{ "shape":"ETag", "location":"header", "locationName":"ETag" }, "MissingMeta":{ "shape":"MissingMeta", "location":"header", "locationName":"x-amz-missing-meta" }, "VersionId":{ "shape":"ObjectVersionId", "location":"header", "locationName":"x-amz-version-id" }, "CacheControl":{ "shape":"CacheControl", "location":"header", "locationName":"Cache-Control" }, "ContentDisposition":{ "shape":"ContentDisposition", "location":"header", "locationName":"Content-Disposition" }, "ContentEncoding":{ "shape":"ContentEncoding", "location":"header", "locationName":"Content-Encoding" }, "ContentLanguage":{ "shape":"ContentLanguage", "location":"header", "locationName":"Content-Language" }, "ContentRange":{ "shape":"ContentRange", "location":"header", "locationName":"Content-Range" }, "ContentType":{ "shape":"ContentType", "location":"header", "locationName":"Content-Type" }, "Expires":{ "shape":"Expires", "location":"header", "locationName":"Expires" }, "WebsiteRedirectLocation":{ "shape":"WebsiteRedirectLocation", "location":"header", "locationName":"x-amz-website-redirect-location" }, "ServerSideEncryption":{ "shape":"ServerSideEncryption", "location":"header", "locationName":"x-amz-server-side-encryption" }, "Metadata":{ "shape":"Metadata", "location":"headers", "locationName":"x-amz-meta-" }, "SSECustomerAlgorithm":{ "shape":"SSECustomerAlgorithm", "location":"header", "locationName":"x-amz-server-side-encryption-customer-algorithm" }, "SSECustomerKeyMD5":{ "shape":"SSECustomerKeyMD5", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key-MD5" }, "SSEKMSKeyId":{ "shape":"SSEKMSKeyId", "location":"header", "locationName":"x-amz-server-side-encryption-aws-kms-key-id" }, "StorageClass":{ "shape":"StorageClass", "location":"header", "locationName":"x-amz-storage-class" }, "RequestCharged":{ "shape":"RequestCharged", "location":"header", "locationName":"x-amz-request-charged" }, "ReplicationStatus":{ "shape":"ReplicationStatus", "location":"header", "locationName":"x-amz-replication-status" }, "PartsCount":{ "shape":"PartsCount", "location":"header", "locationName":"x-amz-mp-parts-count" } }, "payload":"Body" }, "GetObjectRequest":{ "type":"structure", "required":[ "Bucket", "Key" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "IfMatch":{ "shape":"IfMatch", "location":"header", "locationName":"If-Match" }, "IfModifiedSince":{ "shape":"IfModifiedSince", "location":"header", "locationName":"If-Modified-Since" }, "IfNoneMatch":{ "shape":"IfNoneMatch", "location":"header", "locationName":"If-None-Match" }, "IfUnmodifiedSince":{ "shape":"IfUnmodifiedSince", "location":"header", "locationName":"If-Unmodified-Since" }, "Key":{ "shape":"ObjectKey", "location":"uri", "locationName":"Key" }, "Range":{ "shape":"Range", "location":"header", "locationName":"Range" }, "ResponseCacheControl":{ "shape":"ResponseCacheControl", "location":"querystring", "locationName":"response-cache-control" }, "ResponseContentDisposition":{ "shape":"ResponseContentDisposition", "location":"querystring", "locationName":"response-content-disposition" }, "ResponseContentEncoding":{ "shape":"ResponseContentEncoding", "location":"querystring", "locationName":"response-content-encoding" }, "ResponseContentLanguage":{ "shape":"ResponseContentLanguage", "location":"querystring", "locationName":"response-content-language" }, "ResponseContentType":{ "shape":"ResponseContentType", "location":"querystring", "locationName":"response-content-type" }, "ResponseExpires":{ "shape":"ResponseExpires", "location":"querystring", "locationName":"response-expires" }, "VersionId":{ "shape":"ObjectVersionId", "location":"querystring", "locationName":"versionId" }, "SSECustomerAlgorithm":{ "shape":"SSECustomerAlgorithm", "location":"header", "locationName":"x-amz-server-side-encryption-customer-algorithm" }, "SSECustomerKey":{ "shape":"SSECustomerKey", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key" }, "SSECustomerKeyMD5":{ "shape":"SSECustomerKeyMD5", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key-MD5" }, "RequestPayer":{ "shape":"RequestPayer", "location":"header", "locationName":"x-amz-request-payer" }, "PartNumber":{ "shape":"PartNumber", "location":"querystring", "locationName":"partNumber" } } }, "GetObjectTorrentOutput":{ "type":"structure", "members":{ "Body":{ "shape":"Body", "streaming":true }, "RequestCharged":{ "shape":"RequestCharged", "location":"header", "locationName":"x-amz-request-charged" } }, "payload":"Body" }, "GetObjectTorrentRequest":{ "type":"structure", "required":[ "Bucket", "Key" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "Key":{ "shape":"ObjectKey", "location":"uri", "locationName":"Key" }, "RequestPayer":{ "shape":"RequestPayer", "location":"header", "locationName":"x-amz-request-payer" } } }, "Grant":{ "type":"structure", "members":{ "Grantee":{"shape":"Grantee"}, "Permission":{"shape":"Permission"} } }, "GrantFullControl":{"type":"string"}, "GrantRead":{"type":"string"}, "GrantReadACP":{"type":"string"}, "GrantWrite":{"type":"string"}, "GrantWriteACP":{"type":"string"}, "Grantee":{ "type":"structure", "required":["Type"], "members":{ "DisplayName":{"shape":"DisplayName"}, "EmailAddress":{"shape":"EmailAddress"}, "ID":{"shape":"ID"}, "Type":{ "shape":"Type", "locationName":"xsi:type", "xmlAttribute":true }, "URI":{"shape":"URI"} }, "xmlNamespace":{ "prefix":"xsi", "uri":"http://www.w3.org/2001/XMLSchema-instance" } }, "Grants":{ "type":"list", "member":{ "shape":"Grant", "locationName":"Grant" } }, "HeadBucketRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" } } }, "HeadObjectOutput":{ "type":"structure", "members":{ "DeleteMarker":{ "shape":"DeleteMarker", "location":"header", "locationName":"x-amz-delete-marker" }, "AcceptRanges":{ "shape":"AcceptRanges", "location":"header", "locationName":"accept-ranges" }, "Expiration":{ "shape":"Expiration", "location":"header", "locationName":"x-amz-expiration" }, "Restore":{ "shape":"Restore", "location":"header", "locationName":"x-amz-restore" }, "LastModified":{ "shape":"LastModified", "location":"header", "locationName":"Last-Modified" }, "ContentLength":{ "shape":"ContentLength", "location":"header", "locationName":"Content-Length" }, "ETag":{ "shape":"ETag", "location":"header", "locationName":"ETag" }, "MissingMeta":{ "shape":"MissingMeta", "location":"header", "locationName":"x-amz-missing-meta" }, "VersionId":{ "shape":"ObjectVersionId", "location":"header", "locationName":"x-amz-version-id" }, "CacheControl":{ "shape":"CacheControl", "location":"header", "locationName":"Cache-Control" }, "ContentDisposition":{ "shape":"ContentDisposition", "location":"header", "locationName":"Content-Disposition" }, "ContentEncoding":{ "shape":"ContentEncoding", "location":"header", "locationName":"Content-Encoding" }, "ContentLanguage":{ "shape":"ContentLanguage", "location":"header", "locationName":"Content-Language" }, "ContentType":{ "shape":"ContentType", "location":"header", "locationName":"Content-Type" }, "Expires":{ "shape":"Expires", "location":"header", "locationName":"Expires" }, "WebsiteRedirectLocation":{ "shape":"WebsiteRedirectLocation", "location":"header", "locationName":"x-amz-website-redirect-location" }, "ServerSideEncryption":{ "shape":"ServerSideEncryption", "location":"header", "locationName":"x-amz-server-side-encryption" }, "Metadata":{ "shape":"Metadata", "location":"headers", "locationName":"x-amz-meta-" }, "SSECustomerAlgorithm":{ "shape":"SSECustomerAlgorithm", "location":"header", "locationName":"x-amz-server-side-encryption-customer-algorithm" }, "SSECustomerKeyMD5":{ "shape":"SSECustomerKeyMD5", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key-MD5" }, "SSEKMSKeyId":{ "shape":"SSEKMSKeyId", "location":"header", "locationName":"x-amz-server-side-encryption-aws-kms-key-id" }, "StorageClass":{ "shape":"StorageClass", "location":"header", "locationName":"x-amz-storage-class" }, "RequestCharged":{ "shape":"RequestCharged", "location":"header", "locationName":"x-amz-request-charged" }, "ReplicationStatus":{ "shape":"ReplicationStatus", "location":"header", "locationName":"x-amz-replication-status" }, "PartsCount":{ "shape":"PartsCount", "location":"header", "locationName":"x-amz-mp-parts-count" } } }, "HeadObjectRequest":{ "type":"structure", "required":[ "Bucket", "Key" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "IfMatch":{ "shape":"IfMatch", "location":"header", "locationName":"If-Match" }, "IfModifiedSince":{ "shape":"IfModifiedSince", "location":"header", "locationName":"If-Modified-Since" }, "IfNoneMatch":{ "shape":"IfNoneMatch", "location":"header", "locationName":"If-None-Match" }, "IfUnmodifiedSince":{ "shape":"IfUnmodifiedSince", "location":"header", "locationName":"If-Unmodified-Since" }, "Key":{ "shape":"ObjectKey", "location":"uri", "locationName":"Key" }, "Range":{ "shape":"Range", "location":"header", "locationName":"Range" }, "VersionId":{ "shape":"ObjectVersionId", "location":"querystring", "locationName":"versionId" }, "SSECustomerAlgorithm":{ "shape":"SSECustomerAlgorithm", "location":"header", "locationName":"x-amz-server-side-encryption-customer-algorithm" }, "SSECustomerKey":{ "shape":"SSECustomerKey", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key" }, "SSECustomerKeyMD5":{ "shape":"SSECustomerKeyMD5", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key-MD5" }, "RequestPayer":{ "shape":"RequestPayer", "location":"header", "locationName":"x-amz-request-payer" }, "PartNumber":{ "shape":"PartNumber", "location":"querystring", "locationName":"partNumber" } } }, "HostName":{"type":"string"}, "HttpErrorCodeReturnedEquals":{"type":"string"}, "HttpRedirectCode":{"type":"string"}, "ID":{"type":"string"}, "IfMatch":{"type":"string"}, "IfModifiedSince":{"type":"timestamp"}, "IfNoneMatch":{"type":"string"}, "IfUnmodifiedSince":{"type":"timestamp"}, "IndexDocument":{ "type":"structure", "required":["Suffix"], "members":{ "Suffix":{"shape":"Suffix"} } }, "Initiated":{"type":"timestamp"}, "Initiator":{ "type":"structure", "members":{ "ID":{"shape":"ID"}, "DisplayName":{"shape":"DisplayName"} } }, "IsLatest":{"type":"boolean"}, "IsTruncated":{"type":"boolean"}, "KeyCount":{"type":"integer"}, "KeyMarker":{"type":"string"}, "KeyPrefixEquals":{"type":"string"}, "LambdaFunctionArn":{"type":"string"}, "LambdaFunctionConfiguration":{ "type":"structure", "required":[ "LambdaFunctionArn", "Events" ], "members":{ "Id":{"shape":"NotificationId"}, "LambdaFunctionArn":{ "shape":"LambdaFunctionArn", "locationName":"CloudFunction" }, "Events":{ "shape":"EventList", "locationName":"Event" }, "Filter":{"shape":"NotificationConfigurationFilter"} } }, "LambdaFunctionConfigurationList":{ "type":"list", "member":{"shape":"LambdaFunctionConfiguration"}, "flattened":true }, "LastModified":{"type":"timestamp"}, "LifecycleConfiguration":{ "type":"structure", "required":["Rules"], "members":{ "Rules":{ "shape":"Rules", "locationName":"Rule" } } }, "LifecycleExpiration":{ "type":"structure", "members":{ "Date":{"shape":"Date"}, "Days":{"shape":"Days"}, "ExpiredObjectDeleteMarker":{"shape":"ExpiredObjectDeleteMarker"} } }, "LifecycleRule":{ "type":"structure", "required":[ "Prefix", "Status" ], "members":{ "Expiration":{"shape":"LifecycleExpiration"}, "ID":{"shape":"ID"}, "Prefix":{"shape":"Prefix"}, "Status":{"shape":"ExpirationStatus"}, "Transitions":{ "shape":"TransitionList", "locationName":"Transition" }, "NoncurrentVersionTransitions":{ "shape":"NoncurrentVersionTransitionList", "locationName":"NoncurrentVersionTransition" }, "NoncurrentVersionExpiration":{"shape":"NoncurrentVersionExpiration"}, "AbortIncompleteMultipartUpload":{"shape":"AbortIncompleteMultipartUpload"} } }, "LifecycleRules":{ "type":"list", "member":{"shape":"LifecycleRule"}, "flattened":true }, "ListBucketsOutput":{ "type":"structure", "members":{ "Buckets":{"shape":"Buckets"}, "Owner":{"shape":"Owner"} } }, "ListMultipartUploadsOutput":{ "type":"structure", "members":{ "Bucket":{"shape":"BucketName"}, "KeyMarker":{"shape":"KeyMarker"}, "UploadIdMarker":{"shape":"UploadIdMarker"}, "NextKeyMarker":{"shape":"NextKeyMarker"}, "Prefix":{"shape":"Prefix"}, "Delimiter":{"shape":"Delimiter"}, "NextUploadIdMarker":{"shape":"NextUploadIdMarker"}, "MaxUploads":{"shape":"MaxUploads"}, "IsTruncated":{"shape":"IsTruncated"}, "Uploads":{ "shape":"MultipartUploadList", "locationName":"Upload" }, "CommonPrefixes":{"shape":"CommonPrefixList"}, "EncodingType":{"shape":"EncodingType"} } }, "ListMultipartUploadsRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "Delimiter":{ "shape":"Delimiter", "location":"querystring", "locationName":"delimiter" }, "EncodingType":{ "shape":"EncodingType", "location":"querystring", "locationName":"encoding-type" }, "KeyMarker":{ "shape":"KeyMarker", "location":"querystring", "locationName":"key-marker" }, "MaxUploads":{ "shape":"MaxUploads", "location":"querystring", "locationName":"max-uploads" }, "Prefix":{ "shape":"Prefix", "location":"querystring", "locationName":"prefix" }, "UploadIdMarker":{ "shape":"UploadIdMarker", "location":"querystring", "locationName":"upload-id-marker" } } }, "ListObjectVersionsOutput":{ "type":"structure", "members":{ "IsTruncated":{"shape":"IsTruncated"}, "KeyMarker":{"shape":"KeyMarker"}, "VersionIdMarker":{"shape":"VersionIdMarker"}, "NextKeyMarker":{"shape":"NextKeyMarker"}, "NextVersionIdMarker":{"shape":"NextVersionIdMarker"}, "Versions":{ "shape":"ObjectVersionList", "locationName":"Version" }, "DeleteMarkers":{ "shape":"DeleteMarkers", "locationName":"DeleteMarker" }, "Name":{"shape":"BucketName"}, "Prefix":{"shape":"Prefix"}, "Delimiter":{"shape":"Delimiter"}, "MaxKeys":{"shape":"MaxKeys"}, "CommonPrefixes":{"shape":"CommonPrefixList"}, "EncodingType":{"shape":"EncodingType"} } }, "ListObjectVersionsRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "Delimiter":{ "shape":"Delimiter", "location":"querystring", "locationName":"delimiter" }, "EncodingType":{ "shape":"EncodingType", "location":"querystring", "locationName":"encoding-type" }, "KeyMarker":{ "shape":"KeyMarker", "location":"querystring", "locationName":"key-marker" }, "MaxKeys":{ "shape":"MaxKeys", "location":"querystring", "locationName":"max-keys" }, "Prefix":{ "shape":"Prefix", "location":"querystring", "locationName":"prefix" }, "VersionIdMarker":{ "shape":"VersionIdMarker", "location":"querystring", "locationName":"version-id-marker" } } }, "ListObjectsOutput":{ "type":"structure", "members":{ "IsTruncated":{"shape":"IsTruncated"}, "Marker":{"shape":"Marker"}, "NextMarker":{"shape":"NextMarker"}, "Contents":{"shape":"ObjectList"}, "Name":{"shape":"BucketName"}, "Prefix":{"shape":"Prefix"}, "Delimiter":{"shape":"Delimiter"}, "MaxKeys":{"shape":"MaxKeys"}, "CommonPrefixes":{"shape":"CommonPrefixList"}, "EncodingType":{"shape":"EncodingType"} } }, "ListObjectsRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "Delimiter":{ "shape":"Delimiter", "location":"querystring", "locationName":"delimiter" }, "EncodingType":{ "shape":"EncodingType", "location":"querystring", "locationName":"encoding-type" }, "Marker":{ "shape":"Marker", "location":"querystring", "locationName":"marker" }, "MaxKeys":{ "shape":"MaxKeys", "location":"querystring", "locationName":"max-keys" }, "Prefix":{ "shape":"Prefix", "location":"querystring", "locationName":"prefix" }, "RequestPayer":{ "shape":"RequestPayer", "location":"header", "locationName":"x-amz-request-payer" } } }, "ListObjectsV2Output":{ "type":"structure", "members":{ "IsTruncated":{"shape":"IsTruncated"}, "Contents":{"shape":"ObjectList"}, "Name":{"shape":"BucketName"}, "Prefix":{"shape":"Prefix"}, "Delimiter":{"shape":"Delimiter"}, "MaxKeys":{"shape":"MaxKeys"}, "CommonPrefixes":{"shape":"CommonPrefixList"}, "EncodingType":{"shape":"EncodingType"}, "KeyCount":{"shape":"KeyCount"}, "ContinuationToken":{"shape":"Token"}, "NextContinuationToken":{"shape":"NextToken"}, "StartAfter":{"shape":"StartAfter"} } }, "ListObjectsV2Request":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "Delimiter":{ "shape":"Delimiter", "location":"querystring", "locationName":"delimiter" }, "EncodingType":{ "shape":"EncodingType", "location":"querystring", "locationName":"encoding-type" }, "MaxKeys":{ "shape":"MaxKeys", "location":"querystring", "locationName":"max-keys" }, "Prefix":{ "shape":"Prefix", "location":"querystring", "locationName":"prefix" }, "ContinuationToken":{ "shape":"Token", "location":"querystring", "locationName":"continuation-token" }, "FetchOwner":{ "shape":"FetchOwner", "location":"querystring", "locationName":"fetch-owner" }, "StartAfter":{ "shape":"StartAfter", "location":"querystring", "locationName":"start-after" }, "RequestPayer":{ "shape":"RequestPayer", "location":"header", "locationName":"x-amz-request-payer" } } }, "ListPartsOutput":{ "type":"structure", "members":{ "AbortDate":{ "shape":"AbortDate", "location":"header", "locationName":"x-amz-abort-date" }, "AbortRuleId":{ "shape":"AbortRuleId", "location":"header", "locationName":"x-amz-abort-rule-id" }, "Bucket":{"shape":"BucketName"}, "Key":{"shape":"ObjectKey"}, "UploadId":{"shape":"MultipartUploadId"}, "PartNumberMarker":{"shape":"PartNumberMarker"}, "NextPartNumberMarker":{"shape":"NextPartNumberMarker"}, "MaxParts":{"shape":"MaxParts"}, "IsTruncated":{"shape":"IsTruncated"}, "Parts":{ "shape":"Parts", "locationName":"Part" }, "Initiator":{"shape":"Initiator"}, "Owner":{"shape":"Owner"}, "StorageClass":{"shape":"StorageClass"}, "RequestCharged":{ "shape":"RequestCharged", "location":"header", "locationName":"x-amz-request-charged" } } }, "ListPartsRequest":{ "type":"structure", "required":[ "Bucket", "Key", "UploadId" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "Key":{ "shape":"ObjectKey", "location":"uri", "locationName":"Key" }, "MaxParts":{ "shape":"MaxParts", "location":"querystring", "locationName":"max-parts" }, "PartNumberMarker":{ "shape":"PartNumberMarker", "location":"querystring", "locationName":"part-number-marker" }, "UploadId":{ "shape":"MultipartUploadId", "location":"querystring", "locationName":"uploadId" }, "RequestPayer":{ "shape":"RequestPayer", "location":"header", "locationName":"x-amz-request-payer" } } }, "Location":{"type":"string"}, "LoggingEnabled":{ "type":"structure", "members":{ "TargetBucket":{"shape":"TargetBucket"}, "TargetGrants":{"shape":"TargetGrants"}, "TargetPrefix":{"shape":"TargetPrefix"} } }, "MFA":{"type":"string"}, "MFADelete":{ "type":"string", "enum":[ "Enabled", "Disabled" ] }, "MFADeleteStatus":{ "type":"string", "enum":[ "Enabled", "Disabled" ] }, "Marker":{"type":"string"}, "MaxAgeSeconds":{"type":"integer"}, "MaxKeys":{"type":"integer"}, "MaxParts":{"type":"integer"}, "MaxUploads":{"type":"integer"}, "Message":{"type":"string"}, "Metadata":{ "type":"map", "key":{"shape":"MetadataKey"}, "value":{"shape":"MetadataValue"} }, "MetadataDirective":{ "type":"string", "enum":[ "COPY", "REPLACE" ] }, "MetadataKey":{"type":"string"}, "MetadataValue":{"type":"string"}, "MissingMeta":{"type":"integer"}, "MultipartUpload":{ "type":"structure", "members":{ "UploadId":{"shape":"MultipartUploadId"}, "Key":{"shape":"ObjectKey"}, "Initiated":{"shape":"Initiated"}, "StorageClass":{"shape":"StorageClass"}, "Owner":{"shape":"Owner"}, "Initiator":{"shape":"Initiator"} } }, "MultipartUploadId":{"type":"string"}, "MultipartUploadList":{ "type":"list", "member":{"shape":"MultipartUpload"}, "flattened":true }, "NextKeyMarker":{"type":"string"}, "NextMarker":{"type":"string"}, "NextPartNumberMarker":{"type":"integer"}, "NextToken":{"type":"string"}, "NextUploadIdMarker":{"type":"string"}, "NextVersionIdMarker":{"type":"string"}, "NoSuchBucket":{ "type":"structure", "members":{ }, "exception":true }, "NoSuchKey":{ "type":"structure", "members":{ }, "exception":true }, "NoSuchUpload":{ "type":"structure", "members":{ }, "exception":true }, "NoncurrentVersionExpiration":{ "type":"structure", "members":{ "NoncurrentDays":{"shape":"Days"} } }, "NoncurrentVersionTransition":{ "type":"structure", "members":{ "NoncurrentDays":{"shape":"Days"}, "StorageClass":{"shape":"TransitionStorageClass"} } }, "NoncurrentVersionTransitionList":{ "type":"list", "member":{"shape":"NoncurrentVersionTransition"}, "flattened":true }, "NotificationConfiguration":{ "type":"structure", "members":{ "TopicConfigurations":{ "shape":"TopicConfigurationList", "locationName":"TopicConfiguration" }, "QueueConfigurations":{ "shape":"QueueConfigurationList", "locationName":"QueueConfiguration" }, "LambdaFunctionConfigurations":{ "shape":"LambdaFunctionConfigurationList", "locationName":"CloudFunctionConfiguration" } } }, "NotificationConfigurationDeprecated":{ "type":"structure", "members":{ "TopicConfiguration":{"shape":"TopicConfigurationDeprecated"}, "QueueConfiguration":{"shape":"QueueConfigurationDeprecated"}, "CloudFunctionConfiguration":{"shape":"CloudFunctionConfiguration"} } }, "NotificationConfigurationFilter":{ "type":"structure", "members":{ "Key":{ "shape":"S3KeyFilter", "locationName":"S3Key" } } }, "NotificationId":{"type":"string"}, "Object":{ "type":"structure", "members":{ "Key":{"shape":"ObjectKey"}, "LastModified":{"shape":"LastModified"}, "ETag":{"shape":"ETag"}, "Size":{"shape":"Size"}, "StorageClass":{"shape":"ObjectStorageClass"}, "Owner":{"shape":"Owner"} } }, "ObjectAlreadyInActiveTierError":{ "type":"structure", "members":{ }, "exception":true }, "ObjectCannedACL":{ "type":"string", "enum":[ "private", "public-read", "public-read-write", "authenticated-read", "aws-exec-read", "bucket-owner-read", "bucket-owner-full-control" ] }, "ObjectIdentifier":{ "type":"structure", "required":["Key"], "members":{ "Key":{"shape":"ObjectKey"}, "VersionId":{"shape":"ObjectVersionId"} } }, "ObjectIdentifierList":{ "type":"list", "member":{"shape":"ObjectIdentifier"}, "flattened":true }, "ObjectKey":{ "type":"string", "min":1 }, "ObjectList":{ "type":"list", "member":{"shape":"Object"}, "flattened":true }, "ObjectNotInActiveTierError":{ "type":"structure", "members":{ }, "exception":true }, "ObjectStorageClass":{ "type":"string", "enum":[ "STANDARD", "REDUCED_REDUNDANCY", "GLACIER" ] }, "ObjectVersion":{ "type":"structure", "members":{ "ETag":{"shape":"ETag"}, "Size":{"shape":"Size"}, "StorageClass":{"shape":"ObjectVersionStorageClass"}, "Key":{"shape":"ObjectKey"}, "VersionId":{"shape":"ObjectVersionId"}, "IsLatest":{"shape":"IsLatest"}, "LastModified":{"shape":"LastModified"}, "Owner":{"shape":"Owner"} } }, "ObjectVersionId":{"type":"string"}, "ObjectVersionList":{ "type":"list", "member":{"shape":"ObjectVersion"}, "flattened":true }, "ObjectVersionStorageClass":{ "type":"string", "enum":["STANDARD"] }, "Owner":{ "type":"structure", "members":{ "DisplayName":{"shape":"DisplayName"}, "ID":{"shape":"ID"} } }, "Part":{ "type":"structure", "members":{ "PartNumber":{"shape":"PartNumber"}, "LastModified":{"shape":"LastModified"}, "ETag":{"shape":"ETag"}, "Size":{"shape":"Size"} } }, "PartNumber":{"type":"integer"}, "PartNumberMarker":{"type":"integer"}, "Parts":{ "type":"list", "member":{"shape":"Part"}, "flattened":true }, "PartsCount":{"type":"integer"}, "Payer":{ "type":"string", "enum":[ "Requester", "BucketOwner" ] }, "Permission":{ "type":"string", "enum":[ "FULL_CONTROL", "WRITE", "WRITE_ACP", "READ", "READ_ACP" ] }, "Policy":{"type":"string"}, "Prefix":{"type":"string"}, "Protocol":{ "type":"string", "enum":[ "http", "https" ] }, "PutBucketAccelerateConfigurationRequest":{ "type":"structure", "required":[ "Bucket", "AccelerateConfiguration" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "AccelerateConfiguration":{ "shape":"AccelerateConfiguration", "locationName":"AccelerateConfiguration", "xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"} } }, "payload":"AccelerateConfiguration" }, "PutBucketAclRequest":{ "type":"structure", "required":["Bucket"], "members":{ "ACL":{ "shape":"BucketCannedACL", "location":"header", "locationName":"x-amz-acl" }, "AccessControlPolicy":{ "shape":"AccessControlPolicy", "locationName":"AccessControlPolicy", "xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"} }, "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "ContentMD5":{ "shape":"ContentMD5", "location":"header", "locationName":"Content-MD5" }, "GrantFullControl":{ "shape":"GrantFullControl", "location":"header", "locationName":"x-amz-grant-full-control" }, "GrantRead":{ "shape":"GrantRead", "location":"header", "locationName":"x-amz-grant-read" }, "GrantReadACP":{ "shape":"GrantReadACP", "location":"header", "locationName":"x-amz-grant-read-acp" }, "GrantWrite":{ "shape":"GrantWrite", "location":"header", "locationName":"x-amz-grant-write" }, "GrantWriteACP":{ "shape":"GrantWriteACP", "location":"header", "locationName":"x-amz-grant-write-acp" } }, "payload":"AccessControlPolicy" }, "PutBucketCorsRequest":{ "type":"structure", "required":[ "Bucket", "CORSConfiguration" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "CORSConfiguration":{ "shape":"CORSConfiguration", "locationName":"CORSConfiguration", "xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"} }, "ContentMD5":{ "shape":"ContentMD5", "location":"header", "locationName":"Content-MD5" } }, "payload":"CORSConfiguration" }, "PutBucketLifecycleConfigurationRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "LifecycleConfiguration":{ "shape":"BucketLifecycleConfiguration", "locationName":"LifecycleConfiguration", "xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"} } }, "payload":"LifecycleConfiguration" }, "PutBucketLifecycleRequest":{ "type":"structure", "required":["Bucket"], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "ContentMD5":{ "shape":"ContentMD5", "location":"header", "locationName":"Content-MD5" }, "LifecycleConfiguration":{ "shape":"LifecycleConfiguration", "locationName":"LifecycleConfiguration", "xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"} } }, "payload":"LifecycleConfiguration" }, "PutBucketLoggingRequest":{ "type":"structure", "required":[ "Bucket", "BucketLoggingStatus" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "BucketLoggingStatus":{ "shape":"BucketLoggingStatus", "locationName":"BucketLoggingStatus", "xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"} }, "ContentMD5":{ "shape":"ContentMD5", "location":"header", "locationName":"Content-MD5" } }, "payload":"BucketLoggingStatus" }, "PutBucketNotificationConfigurationRequest":{ "type":"structure", "required":[ "Bucket", "NotificationConfiguration" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "NotificationConfiguration":{ "shape":"NotificationConfiguration", "locationName":"NotificationConfiguration", "xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"} } }, "payload":"NotificationConfiguration" }, "PutBucketNotificationRequest":{ "type":"structure", "required":[ "Bucket", "NotificationConfiguration" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "ContentMD5":{ "shape":"ContentMD5", "location":"header", "locationName":"Content-MD5" }, "NotificationConfiguration":{ "shape":"NotificationConfigurationDeprecated", "locationName":"NotificationConfiguration", "xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"} } }, "payload":"NotificationConfiguration" }, "PutBucketPolicyRequest":{ "type":"structure", "required":[ "Bucket", "Policy" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "ContentMD5":{ "shape":"ContentMD5", "location":"header", "locationName":"Content-MD5" }, "Policy":{"shape":"Policy"} }, "payload":"Policy" }, "PutBucketReplicationRequest":{ "type":"structure", "required":[ "Bucket", "ReplicationConfiguration" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "ContentMD5":{ "shape":"ContentMD5", "location":"header", "locationName":"Content-MD5" }, "ReplicationConfiguration":{ "shape":"ReplicationConfiguration", "locationName":"ReplicationConfiguration", "xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"} } }, "payload":"ReplicationConfiguration" }, "PutBucketRequestPaymentRequest":{ "type":"structure", "required":[ "Bucket", "RequestPaymentConfiguration" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "ContentMD5":{ "shape":"ContentMD5", "location":"header", "locationName":"Content-MD5" }, "RequestPaymentConfiguration":{ "shape":"RequestPaymentConfiguration", "locationName":"RequestPaymentConfiguration", "xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"} } }, "payload":"RequestPaymentConfiguration" }, "PutBucketTaggingRequest":{ "type":"structure", "required":[ "Bucket", "Tagging" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "ContentMD5":{ "shape":"ContentMD5", "location":"header", "locationName":"Content-MD5" }, "Tagging":{ "shape":"Tagging", "locationName":"Tagging", "xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"} } }, "payload":"Tagging" }, "PutBucketVersioningRequest":{ "type":"structure", "required":[ "Bucket", "VersioningConfiguration" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "ContentMD5":{ "shape":"ContentMD5", "location":"header", "locationName":"Content-MD5" }, "MFA":{ "shape":"MFA", "location":"header", "locationName":"x-amz-mfa" }, "VersioningConfiguration":{ "shape":"VersioningConfiguration", "locationName":"VersioningConfiguration", "xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"} } }, "payload":"VersioningConfiguration" }, "PutBucketWebsiteRequest":{ "type":"structure", "required":[ "Bucket", "WebsiteConfiguration" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "ContentMD5":{ "shape":"ContentMD5", "location":"header", "locationName":"Content-MD5" }, "WebsiteConfiguration":{ "shape":"WebsiteConfiguration", "locationName":"WebsiteConfiguration", "xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"} } }, "payload":"WebsiteConfiguration" }, "PutObjectAclOutput":{ "type":"structure", "members":{ "RequestCharged":{ "shape":"RequestCharged", "location":"header", "locationName":"x-amz-request-charged" } } }, "PutObjectAclRequest":{ "type":"structure", "required":[ "Bucket", "Key" ], "members":{ "ACL":{ "shape":"ObjectCannedACL", "location":"header", "locationName":"x-amz-acl" }, "AccessControlPolicy":{ "shape":"AccessControlPolicy", "locationName":"AccessControlPolicy", "xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"} }, "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "ContentMD5":{ "shape":"ContentMD5", "location":"header", "locationName":"Content-MD5" }, "GrantFullControl":{ "shape":"GrantFullControl", "location":"header", "locationName":"x-amz-grant-full-control" }, "GrantRead":{ "shape":"GrantRead", "location":"header", "locationName":"x-amz-grant-read" }, "GrantReadACP":{ "shape":"GrantReadACP", "location":"header", "locationName":"x-amz-grant-read-acp" }, "GrantWrite":{ "shape":"GrantWrite", "location":"header", "locationName":"x-amz-grant-write" }, "GrantWriteACP":{ "shape":"GrantWriteACP", "location":"header", "locationName":"x-amz-grant-write-acp" }, "Key":{ "shape":"ObjectKey", "location":"uri", "locationName":"Key" }, "RequestPayer":{ "shape":"RequestPayer", "location":"header", "locationName":"x-amz-request-payer" }, "VersionId":{ "shape":"ObjectVersionId", "location":"querystring", "locationName":"versionId" } }, "payload":"AccessControlPolicy" }, "PutObjectOutput":{ "type":"structure", "members":{ "Expiration":{ "shape":"Expiration", "location":"header", "locationName":"x-amz-expiration" }, "ETag":{ "shape":"ETag", "location":"header", "locationName":"ETag" }, "ServerSideEncryption":{ "shape":"ServerSideEncryption", "location":"header", "locationName":"x-amz-server-side-encryption" }, "VersionId":{ "shape":"ObjectVersionId", "location":"header", "locationName":"x-amz-version-id" }, "SSECustomerAlgorithm":{ "shape":"SSECustomerAlgorithm", "location":"header", "locationName":"x-amz-server-side-encryption-customer-algorithm" }, "SSECustomerKeyMD5":{ "shape":"SSECustomerKeyMD5", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key-MD5" }, "SSEKMSKeyId":{ "shape":"SSEKMSKeyId", "location":"header", "locationName":"x-amz-server-side-encryption-aws-kms-key-id" }, "RequestCharged":{ "shape":"RequestCharged", "location":"header", "locationName":"x-amz-request-charged" } } }, "PutObjectRequest":{ "type":"structure", "required":[ "Bucket", "Key" ], "members":{ "ACL":{ "shape":"ObjectCannedACL", "location":"header", "locationName":"x-amz-acl" }, "Body":{ "shape":"Body", "streaming":true }, "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "CacheControl":{ "shape":"CacheControl", "location":"header", "locationName":"Cache-Control" }, "ContentDisposition":{ "shape":"ContentDisposition", "location":"header", "locationName":"Content-Disposition" }, "ContentEncoding":{ "shape":"ContentEncoding", "location":"header", "locationName":"Content-Encoding" }, "ContentLanguage":{ "shape":"ContentLanguage", "location":"header", "locationName":"Content-Language" }, "ContentLength":{ "shape":"ContentLength", "location":"header", "locationName":"Content-Length" }, "ContentMD5":{ "shape":"ContentMD5", "location":"header", "locationName":"Content-MD5" }, "ContentType":{ "shape":"ContentType", "location":"header", "locationName":"Content-Type" }, "Expires":{ "shape":"Expires", "location":"header", "locationName":"Expires" }, "GrantFullControl":{ "shape":"GrantFullControl", "location":"header", "locationName":"x-amz-grant-full-control" }, "GrantRead":{ "shape":"GrantRead", "location":"header", "locationName":"x-amz-grant-read" }, "GrantReadACP":{ "shape":"GrantReadACP", "location":"header", "locationName":"x-amz-grant-read-acp" }, "GrantWriteACP":{ "shape":"GrantWriteACP", "location":"header", "locationName":"x-amz-grant-write-acp" }, "Key":{ "shape":"ObjectKey", "location":"uri", "locationName":"Key" }, "Metadata":{ "shape":"Metadata", "location":"headers", "locationName":"x-amz-meta-" }, "ServerSideEncryption":{ "shape":"ServerSideEncryption", "location":"header", "locationName":"x-amz-server-side-encryption" }, "StorageClass":{ "shape":"StorageClass", "location":"header", "locationName":"x-amz-storage-class" }, "WebsiteRedirectLocation":{ "shape":"WebsiteRedirectLocation", "location":"header", "locationName":"x-amz-website-redirect-location" }, "SSECustomerAlgorithm":{ "shape":"SSECustomerAlgorithm", "location":"header", "locationName":"x-amz-server-side-encryption-customer-algorithm" }, "SSECustomerKey":{ "shape":"SSECustomerKey", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key" }, "SSECustomerKeyMD5":{ "shape":"SSECustomerKeyMD5", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key-MD5" }, "SSEKMSKeyId":{ "shape":"SSEKMSKeyId", "location":"header", "locationName":"x-amz-server-side-encryption-aws-kms-key-id" }, "RequestPayer":{ "shape":"RequestPayer", "location":"header", "locationName":"x-amz-request-payer" } }, "payload":"Body" }, "QueueArn":{"type":"string"}, "QueueConfiguration":{ "type":"structure", "required":[ "QueueArn", "Events" ], "members":{ "Id":{"shape":"NotificationId"}, "QueueArn":{ "shape":"QueueArn", "locationName":"Queue" }, "Events":{ "shape":"EventList", "locationName":"Event" }, "Filter":{"shape":"NotificationConfigurationFilter"} } }, "QueueConfigurationDeprecated":{ "type":"structure", "members":{ "Id":{"shape":"NotificationId"}, "Event":{ "shape":"Event", "deprecated":true }, "Events":{ "shape":"EventList", "locationName":"Event" }, "Queue":{"shape":"QueueArn"} } }, "QueueConfigurationList":{ "type":"list", "member":{"shape":"QueueConfiguration"}, "flattened":true }, "Quiet":{"type":"boolean"}, "Range":{"type":"string"}, "Redirect":{ "type":"structure", "members":{ "HostName":{"shape":"HostName"}, "HttpRedirectCode":{"shape":"HttpRedirectCode"}, "Protocol":{"shape":"Protocol"}, "ReplaceKeyPrefixWith":{"shape":"ReplaceKeyPrefixWith"}, "ReplaceKeyWith":{"shape":"ReplaceKeyWith"} } }, "RedirectAllRequestsTo":{ "type":"structure", "required":["HostName"], "members":{ "HostName":{"shape":"HostName"}, "Protocol":{"shape":"Protocol"} } }, "ReplaceKeyPrefixWith":{"type":"string"}, "ReplaceKeyWith":{"type":"string"}, "ReplicationConfiguration":{ "type":"structure", "required":[ "Role", "Rules" ], "members":{ "Role":{"shape":"Role"}, "Rules":{ "shape":"ReplicationRules", "locationName":"Rule" } } }, "ReplicationRule":{ "type":"structure", "required":[ "Prefix", "Status", "Destination" ], "members":{ "ID":{"shape":"ID"}, "Prefix":{"shape":"Prefix"}, "Status":{"shape":"ReplicationRuleStatus"}, "Destination":{"shape":"Destination"} } }, "ReplicationRuleStatus":{ "type":"string", "enum":[ "Enabled", "Disabled" ] }, "ReplicationRules":{ "type":"list", "member":{"shape":"ReplicationRule"}, "flattened":true }, "ReplicationStatus":{ "type":"string", "enum":[ "COMPLETE", "PENDING", "FAILED", "REPLICA" ] }, "RequestCharged":{ "type":"string", "enum":["requester"] }, "RequestPayer":{ "type":"string", "enum":["requester"] }, "RequestPaymentConfiguration":{ "type":"structure", "required":["Payer"], "members":{ "Payer":{"shape":"Payer"} } }, "ResponseCacheControl":{"type":"string"}, "ResponseContentDisposition":{"type":"string"}, "ResponseContentEncoding":{"type":"string"}, "ResponseContentLanguage":{"type":"string"}, "ResponseContentType":{"type":"string"}, "ResponseExpires":{"type":"timestamp"}, "Restore":{"type":"string"}, "RestoreObjectOutput":{ "type":"structure", "members":{ "RequestCharged":{ "shape":"RequestCharged", "location":"header", "locationName":"x-amz-request-charged" } } }, "RestoreObjectRequest":{ "type":"structure", "required":[ "Bucket", "Key" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "Key":{ "shape":"ObjectKey", "location":"uri", "locationName":"Key" }, "VersionId":{ "shape":"ObjectVersionId", "location":"querystring", "locationName":"versionId" }, "RestoreRequest":{ "shape":"RestoreRequest", "locationName":"RestoreRequest", "xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"} }, "RequestPayer":{ "shape":"RequestPayer", "location":"header", "locationName":"x-amz-request-payer" } }, "payload":"RestoreRequest" }, "RestoreRequest":{ "type":"structure", "required":["Days"], "members":{ "Days":{"shape":"Days"} } }, "Role":{"type":"string"}, "RoutingRule":{ "type":"structure", "required":["Redirect"], "members":{ "Condition":{"shape":"Condition"}, "Redirect":{"shape":"Redirect"} } }, "RoutingRules":{ "type":"list", "member":{ "shape":"RoutingRule", "locationName":"RoutingRule" } }, "Rule":{ "type":"structure", "required":[ "Prefix", "Status" ], "members":{ "Expiration":{"shape":"LifecycleExpiration"}, "ID":{"shape":"ID"}, "Prefix":{"shape":"Prefix"}, "Status":{"shape":"ExpirationStatus"}, "Transition":{"shape":"Transition"}, "NoncurrentVersionTransition":{"shape":"NoncurrentVersionTransition"}, "NoncurrentVersionExpiration":{"shape":"NoncurrentVersionExpiration"}, "AbortIncompleteMultipartUpload":{"shape":"AbortIncompleteMultipartUpload"} } }, "Rules":{ "type":"list", "member":{"shape":"Rule"}, "flattened":true }, "S3KeyFilter":{ "type":"structure", "members":{ "FilterRules":{ "shape":"FilterRuleList", "locationName":"FilterRule" } } }, "SSECustomerAlgorithm":{"type":"string"}, "SSECustomerKey":{ "type":"string", "sensitive":true }, "SSECustomerKeyMD5":{"type":"string"}, "SSEKMSKeyId":{ "type":"string", "sensitive":true }, "ServerSideEncryption":{ "type":"string", "enum":[ "AES256", "aws:kms" ] }, "Size":{"type":"integer"}, "StartAfter":{"type":"string"}, "StorageClass":{ "type":"string", "enum":[ "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA" ] }, "Suffix":{"type":"string"}, "Tag":{ "type":"structure", "required":[ "Key", "Value" ], "members":{ "Key":{"shape":"ObjectKey"}, "Value":{"shape":"Value"} } }, "TagSet":{ "type":"list", "member":{ "shape":"Tag", "locationName":"Tag" } }, "Tagging":{ "type":"structure", "required":["TagSet"], "members":{ "TagSet":{"shape":"TagSet"} } }, "TargetBucket":{"type":"string"}, "TargetGrant":{ "type":"structure", "members":{ "Grantee":{"shape":"Grantee"}, "Permission":{"shape":"BucketLogsPermission"} } }, "TargetGrants":{ "type":"list", "member":{ "shape":"TargetGrant", "locationName":"Grant" } }, "TargetPrefix":{"type":"string"}, "Token":{"type":"string"}, "TopicArn":{"type":"string"}, "TopicConfiguration":{ "type":"structure", "required":[ "TopicArn", "Events" ], "members":{ "Id":{"shape":"NotificationId"}, "TopicArn":{ "shape":"TopicArn", "locationName":"Topic" }, "Events":{ "shape":"EventList", "locationName":"Event" }, "Filter":{"shape":"NotificationConfigurationFilter"} } }, "TopicConfigurationDeprecated":{ "type":"structure", "members":{ "Id":{"shape":"NotificationId"}, "Events":{ "shape":"EventList", "locationName":"Event" }, "Event":{ "shape":"Event", "deprecated":true }, "Topic":{"shape":"TopicArn"} } }, "TopicConfigurationList":{ "type":"list", "member":{"shape":"TopicConfiguration"}, "flattened":true }, "Transition":{ "type":"structure", "members":{ "Date":{"shape":"Date"}, "Days":{"shape":"Days"}, "StorageClass":{"shape":"TransitionStorageClass"} } }, "TransitionList":{ "type":"list", "member":{"shape":"Transition"}, "flattened":true }, "TransitionStorageClass":{ "type":"string", "enum":[ "GLACIER", "STANDARD_IA" ] }, "Type":{ "type":"string", "enum":[ "CanonicalUser", "AmazonCustomerByEmail", "Group" ] }, "URI":{"type":"string"}, "UploadIdMarker":{"type":"string"}, "UploadPartCopyOutput":{ "type":"structure", "members":{ "CopySourceVersionId":{ "shape":"CopySourceVersionId", "location":"header", "locationName":"x-amz-copy-source-version-id" }, "CopyPartResult":{"shape":"CopyPartResult"}, "ServerSideEncryption":{ "shape":"ServerSideEncryption", "location":"header", "locationName":"x-amz-server-side-encryption" }, "SSECustomerAlgorithm":{ "shape":"SSECustomerAlgorithm", "location":"header", "locationName":"x-amz-server-side-encryption-customer-algorithm" }, "SSECustomerKeyMD5":{ "shape":"SSECustomerKeyMD5", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key-MD5" }, "SSEKMSKeyId":{ "shape":"SSEKMSKeyId", "location":"header", "locationName":"x-amz-server-side-encryption-aws-kms-key-id" }, "RequestCharged":{ "shape":"RequestCharged", "location":"header", "locationName":"x-amz-request-charged" } }, "payload":"CopyPartResult" }, "UploadPartCopyRequest":{ "type":"structure", "required":[ "Bucket", "CopySource", "Key", "PartNumber", "UploadId" ], "members":{ "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "CopySource":{ "shape":"CopySource", "location":"header", "locationName":"x-amz-copy-source" }, "CopySourceIfMatch":{ "shape":"CopySourceIfMatch", "location":"header", "locationName":"x-amz-copy-source-if-match" }, "CopySourceIfModifiedSince":{ "shape":"CopySourceIfModifiedSince", "location":"header", "locationName":"x-amz-copy-source-if-modified-since" }, "CopySourceIfNoneMatch":{ "shape":"CopySourceIfNoneMatch", "location":"header", "locationName":"x-amz-copy-source-if-none-match" }, "CopySourceIfUnmodifiedSince":{ "shape":"CopySourceIfUnmodifiedSince", "location":"header", "locationName":"x-amz-copy-source-if-unmodified-since" }, "CopySourceRange":{ "shape":"CopySourceRange", "location":"header", "locationName":"x-amz-copy-source-range" }, "Key":{ "shape":"ObjectKey", "location":"uri", "locationName":"Key" }, "PartNumber":{ "shape":"PartNumber", "location":"querystring", "locationName":"partNumber" }, "UploadId":{ "shape":"MultipartUploadId", "location":"querystring", "locationName":"uploadId" }, "SSECustomerAlgorithm":{ "shape":"SSECustomerAlgorithm", "location":"header", "locationName":"x-amz-server-side-encryption-customer-algorithm" }, "SSECustomerKey":{ "shape":"SSECustomerKey", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key" }, "SSECustomerKeyMD5":{ "shape":"SSECustomerKeyMD5", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key-MD5" }, "CopySourceSSECustomerAlgorithm":{ "shape":"CopySourceSSECustomerAlgorithm", "location":"header", "locationName":"x-amz-copy-source-server-side-encryption-customer-algorithm" }, "CopySourceSSECustomerKey":{ "shape":"CopySourceSSECustomerKey", "location":"header", "locationName":"x-amz-copy-source-server-side-encryption-customer-key" }, "CopySourceSSECustomerKeyMD5":{ "shape":"CopySourceSSECustomerKeyMD5", "location":"header", "locationName":"x-amz-copy-source-server-side-encryption-customer-key-MD5" }, "RequestPayer":{ "shape":"RequestPayer", "location":"header", "locationName":"x-amz-request-payer" } } }, "UploadPartOutput":{ "type":"structure", "members":{ "ServerSideEncryption":{ "shape":"ServerSideEncryption", "location":"header", "locationName":"x-amz-server-side-encryption" }, "ETag":{ "shape":"ETag", "location":"header", "locationName":"ETag" }, "SSECustomerAlgorithm":{ "shape":"SSECustomerAlgorithm", "location":"header", "locationName":"x-amz-server-side-encryption-customer-algorithm" }, "SSECustomerKeyMD5":{ "shape":"SSECustomerKeyMD5", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key-MD5" }, "SSEKMSKeyId":{ "shape":"SSEKMSKeyId", "location":"header", "locationName":"x-amz-server-side-encryption-aws-kms-key-id" }, "RequestCharged":{ "shape":"RequestCharged", "location":"header", "locationName":"x-amz-request-charged" } } }, "UploadPartRequest":{ "type":"structure", "required":[ "Bucket", "Key", "PartNumber", "UploadId" ], "members":{ "Body":{ "shape":"Body", "streaming":true }, "Bucket":{ "shape":"BucketName", "location":"uri", "locationName":"Bucket" }, "ContentLength":{ "shape":"ContentLength", "location":"header", "locationName":"Content-Length" }, "ContentMD5":{ "shape":"ContentMD5", "location":"header", "locationName":"Content-MD5" }, "Key":{ "shape":"ObjectKey", "location":"uri", "locationName":"Key" }, "PartNumber":{ "shape":"PartNumber", "location":"querystring", "locationName":"partNumber" }, "UploadId":{ "shape":"MultipartUploadId", "location":"querystring", "locationName":"uploadId" }, "SSECustomerAlgorithm":{ "shape":"SSECustomerAlgorithm", "location":"header", "locationName":"x-amz-server-side-encryption-customer-algorithm" }, "SSECustomerKey":{ "shape":"SSECustomerKey", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key" }, "SSECustomerKeyMD5":{ "shape":"SSECustomerKeyMD5", "location":"header", "locationName":"x-amz-server-side-encryption-customer-key-MD5" }, "RequestPayer":{ "shape":"RequestPayer", "location":"header", "locationName":"x-amz-request-payer" } }, "payload":"Body" }, "Value":{"type":"string"}, "VersionIdMarker":{"type":"string"}, "VersioningConfiguration":{ "type":"structure", "members":{ "MFADelete":{ "shape":"MFADelete", "locationName":"MfaDelete" }, "Status":{"shape":"BucketVersioningStatus"} } }, "WebsiteConfiguration":{ "type":"structure", "members":{ "ErrorDocument":{"shape":"ErrorDocument"}, "IndexDocument":{"shape":"IndexDocument"}, "RedirectAllRequestsTo":{"shape":"RedirectAllRequestsTo"}, "RoutingRules":{"shape":"RoutingRules"} } }, "WebsiteRedirectLocation":{"type":"string"} } } aws-sdk-go-1.4.22/models/apis/s3/2006-03-01/docs-2.json000066400000000000000000003321031300374646400213400ustar00rootroot00000000000000{ "version": "2.0", "service": null, "operations": { "AbortMultipartUpload": "

        Aborts a multipart upload.

        To verify that all parts have been removed, so you don't get charged for the part storage, you should call the List Parts operation and ensure the parts list is empty.

        ", "CompleteMultipartUpload": "Completes a multipart upload by assembling previously uploaded parts.", "CopyObject": "Creates a copy of an object that is already stored in Amazon S3.", "CreateBucket": "Creates a new bucket.", "CreateMultipartUpload": "

        Initiates a multipart upload and returns an upload ID.

        Note: After you initiate multipart upload and upload one or more parts, you must either complete or abort multipart upload in order to stop getting charged for storage of the uploaded parts. Only after you either complete or abort multipart upload, Amazon S3 frees up the parts storage and stops charging you for the parts storage.

        ", "DeleteBucket": "Deletes the bucket. All objects (including all object versions and Delete Markers) in the bucket must be deleted before the bucket itself can be deleted.", "DeleteBucketCors": "Deletes the cors configuration information set for the bucket.", "DeleteBucketLifecycle": "Deletes the lifecycle configuration from the bucket.", "DeleteBucketPolicy": "Deletes the policy from the bucket.", "DeleteBucketReplication": "Deletes the replication configuration from the bucket.", "DeleteBucketTagging": "Deletes the tags from the bucket.", "DeleteBucketWebsite": "This operation removes the website configuration from the bucket.", "DeleteObject": "Removes the null version (if there is one) of an object and inserts a delete marker, which becomes the latest version of the object. If there isn't a null version, Amazon S3 does not remove any objects.", "DeleteObjects": "This operation enables you to delete multiple objects from a bucket using a single HTTP request. You may specify up to 1000 keys.", "GetBucketAccelerateConfiguration": "Returns the accelerate configuration of a bucket.", "GetBucketAcl": "Gets the access control policy for the bucket.", "GetBucketCors": "Returns the cors configuration for the bucket.", "GetBucketLifecycle": "Deprecated, see the GetBucketLifecycleConfiguration operation.", "GetBucketLifecycleConfiguration": "Returns the lifecycle configuration information set on the bucket.", "GetBucketLocation": "Returns the region the bucket resides in.", "GetBucketLogging": "Returns the logging status of a bucket and the permissions users have to view and modify that status. To use GET, you must be the bucket owner.", "GetBucketNotification": "Deprecated, see the GetBucketNotificationConfiguration operation.", "GetBucketNotificationConfiguration": "Returns the notification configuration of a bucket.", "GetBucketPolicy": "Returns the policy of a specified bucket.", "GetBucketReplication": "Returns the replication configuration of a bucket.", "GetBucketRequestPayment": "Returns the request payment configuration of a bucket.", "GetBucketTagging": "Returns the tag set associated with the bucket.", "GetBucketVersioning": "Returns the versioning state of a bucket.", "GetBucketWebsite": "Returns the website configuration for a bucket.", "GetObject": "Retrieves objects from Amazon S3.", "GetObjectAcl": "Returns the access control list (ACL) of an object.", "GetObjectTorrent": "Return torrent files from a bucket.", "HeadBucket": "This operation is useful to determine if a bucket exists and you have permission to access it.", "HeadObject": "The HEAD operation retrieves metadata from an object without returning the object itself. This operation is useful if you're only interested in an object's metadata. To use HEAD, you must have READ access to the object.", "ListBuckets": "Returns a list of all buckets owned by the authenticated sender of the request.", "ListMultipartUploads": "This operation lists in-progress multipart uploads.", "ListObjectVersions": "Returns metadata about all of the versions of objects in a bucket.", "ListObjects": "Returns some or all (up to 1000) of the objects in a bucket. You can use the request parameters as selection criteria to return a subset of the objects in a bucket.", "ListObjectsV2": "Returns some or all (up to 1000) of the objects in a bucket. You can use the request parameters as selection criteria to return a subset of the objects in a bucket. Note: ListObjectsV2 is the revised List Objects API and we recommend you use this revised API for new application development.", "ListParts": "Lists the parts that have been uploaded for a specific multipart upload.", "PutBucketAccelerateConfiguration": "Sets the accelerate configuration of an existing bucket.", "PutBucketAcl": "Sets the permissions on a bucket using access control lists (ACL).", "PutBucketCors": "Sets the cors configuration for a bucket.", "PutBucketLifecycle": "Deprecated, see the PutBucketLifecycleConfiguration operation.", "PutBucketLifecycleConfiguration": "Sets lifecycle configuration for your bucket. If a lifecycle configuration exists, it replaces it.", "PutBucketLogging": "Set the logging parameters for a bucket and to specify permissions for who can view and modify the logging parameters. To set the logging status of a bucket, you must be the bucket owner.", "PutBucketNotification": "Deprecated, see the PutBucketNotificationConfiguraiton operation.", "PutBucketNotificationConfiguration": "Enables notifications of specified events for a bucket.", "PutBucketPolicy": "Replaces a policy on a bucket. If the bucket already has a policy, the one in this request completely replaces it.", "PutBucketReplication": "Creates a new replication configuration (or replaces an existing one, if present).", "PutBucketRequestPayment": "Sets the request payment configuration for a bucket. By default, the bucket owner pays for downloads from the bucket. This configuration parameter enables the bucket owner (only) to specify that the person requesting the download will be charged for the download. Documentation on requester pays buckets can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html", "PutBucketTagging": "Sets the tags for a bucket.", "PutBucketVersioning": "Sets the versioning state of an existing bucket. To set the versioning state, you must be the bucket owner.", "PutBucketWebsite": "Set the website configuration for a bucket.", "PutObject": "Adds an object to a bucket.", "PutObjectAcl": "uses the acl subresource to set the access control list (ACL) permissions for an object that already exists in a bucket", "RestoreObject": "Restores an archived copy of an object back into Amazon S3", "UploadPart": "

        Uploads a part in a multipart upload.

        Note: After you initiate multipart upload and upload one or more parts, you must either complete or abort multipart upload in order to stop getting charged for storage of the uploaded parts. Only after you either complete or abort multipart upload, Amazon S3 frees up the parts storage and stops charging you for the parts storage.

        ", "UploadPartCopy": "Uploads a part by copying data from an existing object as data source." }, "shapes": { "AbortDate": { "base": null, "refs": { "CreateMultipartUploadOutput$AbortDate": "Date when multipart upload will become eligible for abort operation by lifecycle.", "ListPartsOutput$AbortDate": "Date when multipart upload will become eligible for abort operation by lifecycle." } }, "AbortIncompleteMultipartUpload": { "base": "Specifies the days since the initiation of an Incomplete Multipart Upload that Lifecycle will wait before permanently removing all parts of the upload.", "refs": { "LifecycleRule$AbortIncompleteMultipartUpload": null, "Rule$AbortIncompleteMultipartUpload": null } }, "AbortMultipartUploadOutput": { "base": null, "refs": { } }, "AbortMultipartUploadRequest": { "base": null, "refs": { } }, "AbortRuleId": { "base": null, "refs": { "CreateMultipartUploadOutput$AbortRuleId": "Id of the lifecycle rule that makes a multipart upload eligible for abort operation.", "ListPartsOutput$AbortRuleId": "Id of the lifecycle rule that makes a multipart upload eligible for abort operation." } }, "AccelerateConfiguration": { "base": null, "refs": { "PutBucketAccelerateConfigurationRequest$AccelerateConfiguration": "Specifies the Accelerate Configuration you want to set for the bucket." } }, "AcceptRanges": { "base": null, "refs": { "GetObjectOutput$AcceptRanges": null, "HeadObjectOutput$AcceptRanges": null } }, "AccessControlPolicy": { "base": null, "refs": { "PutBucketAclRequest$AccessControlPolicy": null, "PutObjectAclRequest$AccessControlPolicy": null } }, "AllowedHeader": { "base": null, "refs": { "AllowedHeaders$member": null } }, "AllowedHeaders": { "base": null, "refs": { "CORSRule$AllowedHeaders": "Specifies which headers are allowed in a pre-flight OPTIONS request." } }, "AllowedMethod": { "base": null, "refs": { "AllowedMethods$member": null } }, "AllowedMethods": { "base": null, "refs": { "CORSRule$AllowedMethods": "Identifies HTTP methods that the domain/origin specified in the rule is allowed to execute." } }, "AllowedOrigin": { "base": null, "refs": { "AllowedOrigins$member": null } }, "AllowedOrigins": { "base": null, "refs": { "CORSRule$AllowedOrigins": "One or more origins you want customers to be able to access the bucket from." } }, "Body": { "base": null, "refs": { "GetObjectOutput$Body": "Object data.", "GetObjectTorrentOutput$Body": null, "PutObjectRequest$Body": "Object data.", "UploadPartRequest$Body": "Object data." } }, "Bucket": { "base": null, "refs": { "Buckets$member": null } }, "BucketAccelerateStatus": { "base": null, "refs": { "AccelerateConfiguration$Status": "The accelerate configuration of the bucket.", "GetBucketAccelerateConfigurationOutput$Status": "The accelerate configuration of the bucket." } }, "BucketAlreadyExists": { "base": "The requested bucket name is not available. The bucket namespace is shared by all users of the system. Please select a different name and try again.", "refs": { } }, "BucketAlreadyOwnedByYou": { "base": null, "refs": { } }, "BucketCannedACL": { "base": null, "refs": { "CreateBucketRequest$ACL": "The canned ACL to apply to the bucket.", "PutBucketAclRequest$ACL": "The canned ACL to apply to the bucket." } }, "BucketLifecycleConfiguration": { "base": null, "refs": { "PutBucketLifecycleConfigurationRequest$LifecycleConfiguration": null } }, "BucketLocationConstraint": { "base": null, "refs": { "CreateBucketConfiguration$LocationConstraint": "Specifies the region where the bucket will be created. If you don't specify a region, the bucket will be created in US Standard.", "GetBucketLocationOutput$LocationConstraint": null } }, "BucketLoggingStatus": { "base": null, "refs": { "PutBucketLoggingRequest$BucketLoggingStatus": null } }, "BucketLogsPermission": { "base": null, "refs": { "TargetGrant$Permission": "Logging permissions assigned to the Grantee for the bucket." } }, "BucketName": { "base": null, "refs": { "AbortMultipartUploadRequest$Bucket": null, "Bucket$Name": "The name of the bucket.", "CompleteMultipartUploadOutput$Bucket": null, "CompleteMultipartUploadRequest$Bucket": null, "CopyObjectRequest$Bucket": null, "CreateBucketRequest$Bucket": null, "CreateMultipartUploadOutput$Bucket": "Name of the bucket to which the multipart upload was initiated.", "CreateMultipartUploadRequest$Bucket": null, "DeleteBucketCorsRequest$Bucket": null, "DeleteBucketLifecycleRequest$Bucket": null, "DeleteBucketPolicyRequest$Bucket": null, "DeleteBucketReplicationRequest$Bucket": null, "DeleteBucketRequest$Bucket": null, "DeleteBucketTaggingRequest$Bucket": null, "DeleteBucketWebsiteRequest$Bucket": null, "DeleteObjectRequest$Bucket": null, "DeleteObjectsRequest$Bucket": null, "Destination$Bucket": "Amazon resource name (ARN) of the bucket where you want Amazon S3 to store replicas of the object identified by the rule.", "GetBucketAccelerateConfigurationRequest$Bucket": "Name of the bucket for which the accelerate configuration is retrieved.", "GetBucketAclRequest$Bucket": null, "GetBucketCorsRequest$Bucket": null, "GetBucketLifecycleConfigurationRequest$Bucket": null, "GetBucketLifecycleRequest$Bucket": null, "GetBucketLocationRequest$Bucket": null, "GetBucketLoggingRequest$Bucket": null, "GetBucketNotificationConfigurationRequest$Bucket": "Name of the bucket to get the notification configuration for.", "GetBucketPolicyRequest$Bucket": null, "GetBucketReplicationRequest$Bucket": null, "GetBucketRequestPaymentRequest$Bucket": null, "GetBucketTaggingRequest$Bucket": null, "GetBucketVersioningRequest$Bucket": null, "GetBucketWebsiteRequest$Bucket": null, "GetObjectAclRequest$Bucket": null, "GetObjectRequest$Bucket": null, "GetObjectTorrentRequest$Bucket": null, "HeadBucketRequest$Bucket": null, "HeadObjectRequest$Bucket": null, "ListMultipartUploadsOutput$Bucket": "Name of the bucket to which the multipart upload was initiated.", "ListMultipartUploadsRequest$Bucket": null, "ListObjectVersionsOutput$Name": null, "ListObjectVersionsRequest$Bucket": null, "ListObjectsOutput$Name": null, "ListObjectsRequest$Bucket": null, "ListObjectsV2Output$Name": "Name of the bucket to list.", "ListObjectsV2Request$Bucket": "Name of the bucket to list.", "ListPartsOutput$Bucket": "Name of the bucket to which the multipart upload was initiated.", "ListPartsRequest$Bucket": null, "PutBucketAccelerateConfigurationRequest$Bucket": "Name of the bucket for which the accelerate configuration is set.", "PutBucketAclRequest$Bucket": null, "PutBucketCorsRequest$Bucket": null, "PutBucketLifecycleConfigurationRequest$Bucket": null, "PutBucketLifecycleRequest$Bucket": null, "PutBucketLoggingRequest$Bucket": null, "PutBucketNotificationConfigurationRequest$Bucket": null, "PutBucketNotificationRequest$Bucket": null, "PutBucketPolicyRequest$Bucket": null, "PutBucketReplicationRequest$Bucket": null, "PutBucketRequestPaymentRequest$Bucket": null, "PutBucketTaggingRequest$Bucket": null, "PutBucketVersioningRequest$Bucket": null, "PutBucketWebsiteRequest$Bucket": null, "PutObjectAclRequest$Bucket": null, "PutObjectRequest$Bucket": "Name of the bucket to which the PUT operation was initiated.", "RestoreObjectRequest$Bucket": null, "UploadPartCopyRequest$Bucket": null, "UploadPartRequest$Bucket": "Name of the bucket to which the multipart upload was initiated." } }, "BucketVersioningStatus": { "base": null, "refs": { "GetBucketVersioningOutput$Status": "The versioning state of the bucket.", "VersioningConfiguration$Status": "The versioning state of the bucket." } }, "Buckets": { "base": null, "refs": { "ListBucketsOutput$Buckets": null } }, "CORSConfiguration": { "base": null, "refs": { "PutBucketCorsRequest$CORSConfiguration": null } }, "CORSRule": { "base": null, "refs": { "CORSRules$member": null } }, "CORSRules": { "base": null, "refs": { "CORSConfiguration$CORSRules": null, "GetBucketCorsOutput$CORSRules": null } }, "CacheControl": { "base": null, "refs": { "CopyObjectRequest$CacheControl": "Specifies caching behavior along the request/reply chain.", "CreateMultipartUploadRequest$CacheControl": "Specifies caching behavior along the request/reply chain.", "GetObjectOutput$CacheControl": "Specifies caching behavior along the request/reply chain.", "HeadObjectOutput$CacheControl": "Specifies caching behavior along the request/reply chain.", "PutObjectRequest$CacheControl": "Specifies caching behavior along the request/reply chain." } }, "CloudFunction": { "base": null, "refs": { "CloudFunctionConfiguration$CloudFunction": null } }, "CloudFunctionConfiguration": { "base": null, "refs": { "NotificationConfigurationDeprecated$CloudFunctionConfiguration": null } }, "CloudFunctionInvocationRole": { "base": null, "refs": { "CloudFunctionConfiguration$InvocationRole": null } }, "Code": { "base": null, "refs": { "Error$Code": null } }, "CommonPrefix": { "base": null, "refs": { "CommonPrefixList$member": null } }, "CommonPrefixList": { "base": null, "refs": { "ListMultipartUploadsOutput$CommonPrefixes": null, "ListObjectVersionsOutput$CommonPrefixes": null, "ListObjectsOutput$CommonPrefixes": null, "ListObjectsV2Output$CommonPrefixes": "CommonPrefixes contains all (if there are any) keys between Prefix and the next occurrence of the string specified by delimiter" } }, "CompleteMultipartUploadOutput": { "base": null, "refs": { } }, "CompleteMultipartUploadRequest": { "base": null, "refs": { } }, "CompletedMultipartUpload": { "base": null, "refs": { "CompleteMultipartUploadRequest$MultipartUpload": null } }, "CompletedPart": { "base": null, "refs": { "CompletedPartList$member": null } }, "CompletedPartList": { "base": null, "refs": { "CompletedMultipartUpload$Parts": null } }, "Condition": { "base": null, "refs": { "RoutingRule$Condition": "A container for describing a condition that must be met for the specified redirect to apply. For example, 1. If request is for pages in the /docs folder, redirect to the /documents folder. 2. If request results in HTTP error 4xx, redirect request to another host where you might process the error." } }, "ContentDisposition": { "base": null, "refs": { "CopyObjectRequest$ContentDisposition": "Specifies presentational information for the object.", "CreateMultipartUploadRequest$ContentDisposition": "Specifies presentational information for the object.", "GetObjectOutput$ContentDisposition": "Specifies presentational information for the object.", "HeadObjectOutput$ContentDisposition": "Specifies presentational information for the object.", "PutObjectRequest$ContentDisposition": "Specifies presentational information for the object." } }, "ContentEncoding": { "base": null, "refs": { "CopyObjectRequest$ContentEncoding": "Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.", "CreateMultipartUploadRequest$ContentEncoding": "Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.", "GetObjectOutput$ContentEncoding": "Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.", "HeadObjectOutput$ContentEncoding": "Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.", "PutObjectRequest$ContentEncoding": "Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field." } }, "ContentLanguage": { "base": null, "refs": { "CopyObjectRequest$ContentLanguage": "The language the content is in.", "CreateMultipartUploadRequest$ContentLanguage": "The language the content is in.", "GetObjectOutput$ContentLanguage": "The language the content is in.", "HeadObjectOutput$ContentLanguage": "The language the content is in.", "PutObjectRequest$ContentLanguage": "The language the content is in." } }, "ContentLength": { "base": null, "refs": { "GetObjectOutput$ContentLength": "Size of the body in bytes.", "HeadObjectOutput$ContentLength": "Size of the body in bytes.", "PutObjectRequest$ContentLength": "Size of the body in bytes. This parameter is useful when the size of the body cannot be determined automatically.", "UploadPartRequest$ContentLength": "Size of the body in bytes. This parameter is useful when the size of the body cannot be determined automatically." } }, "ContentMD5": { "base": null, "refs": { "PutBucketAclRequest$ContentMD5": null, "PutBucketCorsRequest$ContentMD5": null, "PutBucketLifecycleRequest$ContentMD5": null, "PutBucketLoggingRequest$ContentMD5": null, "PutBucketNotificationRequest$ContentMD5": null, "PutBucketPolicyRequest$ContentMD5": null, "PutBucketReplicationRequest$ContentMD5": null, "PutBucketRequestPaymentRequest$ContentMD5": null, "PutBucketTaggingRequest$ContentMD5": null, "PutBucketVersioningRequest$ContentMD5": null, "PutBucketWebsiteRequest$ContentMD5": null, "PutObjectAclRequest$ContentMD5": null, "PutObjectRequest$ContentMD5": "The base64-encoded 128-bit MD5 digest of the part data.", "UploadPartRequest$ContentMD5": "The base64-encoded 128-bit MD5 digest of the part data." } }, "ContentRange": { "base": null, "refs": { "GetObjectOutput$ContentRange": "The portion of the object returned in the response." } }, "ContentType": { "base": null, "refs": { "CopyObjectRequest$ContentType": "A standard MIME type describing the format of the object data.", "CreateMultipartUploadRequest$ContentType": "A standard MIME type describing the format of the object data.", "GetObjectOutput$ContentType": "A standard MIME type describing the format of the object data.", "HeadObjectOutput$ContentType": "A standard MIME type describing the format of the object data.", "PutObjectRequest$ContentType": "A standard MIME type describing the format of the object data." } }, "CopyObjectOutput": { "base": null, "refs": { } }, "CopyObjectRequest": { "base": null, "refs": { } }, "CopyObjectResult": { "base": null, "refs": { "CopyObjectOutput$CopyObjectResult": null } }, "CopyPartResult": { "base": null, "refs": { "UploadPartCopyOutput$CopyPartResult": null } }, "CopySource": { "base": null, "refs": { "CopyObjectRequest$CopySource": "The name of the source bucket and key name of the source object, separated by a slash (/). Must be URL-encoded.", "UploadPartCopyRequest$CopySource": "The name of the source bucket and key name of the source object, separated by a slash (/). Must be URL-encoded." } }, "CopySourceIfMatch": { "base": null, "refs": { "CopyObjectRequest$CopySourceIfMatch": "Copies the object if its entity tag (ETag) matches the specified tag.", "UploadPartCopyRequest$CopySourceIfMatch": "Copies the object if its entity tag (ETag) matches the specified tag." } }, "CopySourceIfModifiedSince": { "base": null, "refs": { "CopyObjectRequest$CopySourceIfModifiedSince": "Copies the object if it has been modified since the specified time.", "UploadPartCopyRequest$CopySourceIfModifiedSince": "Copies the object if it has been modified since the specified time." } }, "CopySourceIfNoneMatch": { "base": null, "refs": { "CopyObjectRequest$CopySourceIfNoneMatch": "Copies the object if its entity tag (ETag) is different than the specified ETag.", "UploadPartCopyRequest$CopySourceIfNoneMatch": "Copies the object if its entity tag (ETag) is different than the specified ETag." } }, "CopySourceIfUnmodifiedSince": { "base": null, "refs": { "CopyObjectRequest$CopySourceIfUnmodifiedSince": "Copies the object if it hasn't been modified since the specified time.", "UploadPartCopyRequest$CopySourceIfUnmodifiedSince": "Copies the object if it hasn't been modified since the specified time." } }, "CopySourceRange": { "base": null, "refs": { "UploadPartCopyRequest$CopySourceRange": "The range of bytes to copy from the source object. The range value must use the form bytes=first-last, where the first and last are the zero-based byte offsets to copy. For example, bytes=0-9 indicates that you want to copy the first ten bytes of the source. You can copy a range only if the source object is greater than 5 GB." } }, "CopySourceSSECustomerAlgorithm": { "base": null, "refs": { "CopyObjectRequest$CopySourceSSECustomerAlgorithm": "Specifies the algorithm to use when decrypting the source object (e.g., AES256).", "UploadPartCopyRequest$CopySourceSSECustomerAlgorithm": "Specifies the algorithm to use when decrypting the source object (e.g., AES256)." } }, "CopySourceSSECustomerKey": { "base": null, "refs": { "CopyObjectRequest$CopySourceSSECustomerKey": "Specifies the customer-provided encryption key for Amazon S3 to use to decrypt the source object. The encryption key provided in this header must be one that was used when the source object was created.", "UploadPartCopyRequest$CopySourceSSECustomerKey": "Specifies the customer-provided encryption key for Amazon S3 to use to decrypt the source object. The encryption key provided in this header must be one that was used when the source object was created." } }, "CopySourceSSECustomerKeyMD5": { "base": null, "refs": { "CopyObjectRequest$CopySourceSSECustomerKeyMD5": "Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure the encryption key was transmitted without error.", "UploadPartCopyRequest$CopySourceSSECustomerKeyMD5": "Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure the encryption key was transmitted without error." } }, "CopySourceVersionId": { "base": null, "refs": { "CopyObjectOutput$CopySourceVersionId": null, "UploadPartCopyOutput$CopySourceVersionId": "The version of the source object that was copied, if you have enabled versioning on the source bucket." } }, "CreateBucketConfiguration": { "base": null, "refs": { "CreateBucketRequest$CreateBucketConfiguration": null } }, "CreateBucketOutput": { "base": null, "refs": { } }, "CreateBucketRequest": { "base": null, "refs": { } }, "CreateMultipartUploadOutput": { "base": null, "refs": { } }, "CreateMultipartUploadRequest": { "base": null, "refs": { } }, "CreationDate": { "base": null, "refs": { "Bucket$CreationDate": "Date the bucket was created." } }, "Date": { "base": null, "refs": { "LifecycleExpiration$Date": "Indicates at what date the object is to be moved or deleted. Should be in GMT ISO 8601 Format.", "Transition$Date": "Indicates at what date the object is to be moved or deleted. Should be in GMT ISO 8601 Format." } }, "Days": { "base": null, "refs": { "LifecycleExpiration$Days": "Indicates the lifetime, in days, of the objects that are subject to the rule. The value must be a non-zero positive integer.", "NoncurrentVersionExpiration$NoncurrentDays": "Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action. For information about the noncurrent days calculations, see How Amazon S3 Calculates When an Object Became Noncurrent in the Amazon Simple Storage Service Developer Guide.", "NoncurrentVersionTransition$NoncurrentDays": "Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action. For information about the noncurrent days calculations, see How Amazon S3 Calculates When an Object Became Noncurrent in the Amazon Simple Storage Service Developer Guide.", "RestoreRequest$Days": "Lifetime of the active copy in days", "Transition$Days": "Indicates the lifetime, in days, of the objects that are subject to the rule. The value must be a non-zero positive integer." } }, "DaysAfterInitiation": { "base": null, "refs": { "AbortIncompleteMultipartUpload$DaysAfterInitiation": "Indicates the number of days that must pass since initiation for Lifecycle to abort an Incomplete Multipart Upload." } }, "Delete": { "base": null, "refs": { "DeleteObjectsRequest$Delete": null } }, "DeleteBucketCorsRequest": { "base": null, "refs": { } }, "DeleteBucketLifecycleRequest": { "base": null, "refs": { } }, "DeleteBucketPolicyRequest": { "base": null, "refs": { } }, "DeleteBucketReplicationRequest": { "base": null, "refs": { } }, "DeleteBucketRequest": { "base": null, "refs": { } }, "DeleteBucketTaggingRequest": { "base": null, "refs": { } }, "DeleteBucketWebsiteRequest": { "base": null, "refs": { } }, "DeleteMarker": { "base": null, "refs": { "DeleteObjectOutput$DeleteMarker": "Specifies whether the versioned object that was permanently deleted was (true) or was not (false) a delete marker.", "DeletedObject$DeleteMarker": null, "GetObjectOutput$DeleteMarker": "Specifies whether the object retrieved was (true) or was not (false) a Delete Marker. If false, this response header does not appear in the response.", "HeadObjectOutput$DeleteMarker": "Specifies whether the object retrieved was (true) or was not (false) a Delete Marker. If false, this response header does not appear in the response." } }, "DeleteMarkerEntry": { "base": null, "refs": { "DeleteMarkers$member": null } }, "DeleteMarkerVersionId": { "base": null, "refs": { "DeletedObject$DeleteMarkerVersionId": null } }, "DeleteMarkers": { "base": null, "refs": { "ListObjectVersionsOutput$DeleteMarkers": null } }, "DeleteObjectOutput": { "base": null, "refs": { } }, "DeleteObjectRequest": { "base": null, "refs": { } }, "DeleteObjectsOutput": { "base": null, "refs": { } }, "DeleteObjectsRequest": { "base": null, "refs": { } }, "DeletedObject": { "base": null, "refs": { "DeletedObjects$member": null } }, "DeletedObjects": { "base": null, "refs": { "DeleteObjectsOutput$Deleted": null } }, "Delimiter": { "base": null, "refs": { "ListMultipartUploadsOutput$Delimiter": null, "ListMultipartUploadsRequest$Delimiter": "Character you use to group keys.", "ListObjectVersionsOutput$Delimiter": null, "ListObjectVersionsRequest$Delimiter": "A delimiter is a character you use to group keys.", "ListObjectsOutput$Delimiter": null, "ListObjectsRequest$Delimiter": "A delimiter is a character you use to group keys.", "ListObjectsV2Output$Delimiter": "A delimiter is a character you use to group keys.", "ListObjectsV2Request$Delimiter": "A delimiter is a character you use to group keys." } }, "Destination": { "base": null, "refs": { "ReplicationRule$Destination": null } }, "DisplayName": { "base": null, "refs": { "Grantee$DisplayName": "Screen name of the grantee.", "Initiator$DisplayName": "Name of the Principal.", "Owner$DisplayName": null } }, "ETag": { "base": null, "refs": { "CompleteMultipartUploadOutput$ETag": "Entity tag of the object.", "CompletedPart$ETag": "Entity tag returned when the part was uploaded.", "CopyObjectResult$ETag": null, "CopyPartResult$ETag": "Entity tag of the object.", "GetObjectOutput$ETag": "An ETag is an opaque identifier assigned by a web server to a specific version of a resource found at a URL", "HeadObjectOutput$ETag": "An ETag is an opaque identifier assigned by a web server to a specific version of a resource found at a URL", "Object$ETag": null, "ObjectVersion$ETag": null, "Part$ETag": "Entity tag returned when the part was uploaded.", "PutObjectOutput$ETag": "Entity tag for the uploaded object.", "UploadPartOutput$ETag": "Entity tag for the uploaded object." } }, "EmailAddress": { "base": null, "refs": { "Grantee$EmailAddress": "Email address of the grantee." } }, "EncodingType": { "base": "Requests Amazon S3 to encode the object keys in the response and specifies the encoding method to use. An object key may contain any Unicode character; however, XML 1.0 parser cannot parse some characters, such as characters with an ASCII value from 0 to 10. For characters that are not supported in XML 1.0, you can add this parameter to request that Amazon S3 encode the keys in the response.", "refs": { "ListMultipartUploadsOutput$EncodingType": "Encoding type used by Amazon S3 to encode object keys in the response.", "ListMultipartUploadsRequest$EncodingType": null, "ListObjectVersionsOutput$EncodingType": "Encoding type used by Amazon S3 to encode object keys in the response.", "ListObjectVersionsRequest$EncodingType": null, "ListObjectsOutput$EncodingType": "Encoding type used by Amazon S3 to encode object keys in the response.", "ListObjectsRequest$EncodingType": null, "ListObjectsV2Output$EncodingType": "Encoding type used by Amazon S3 to encode object keys in the response.", "ListObjectsV2Request$EncodingType": "Encoding type used by Amazon S3 to encode object keys in the response." } }, "Error": { "base": null, "refs": { "Errors$member": null } }, "ErrorDocument": { "base": null, "refs": { "GetBucketWebsiteOutput$ErrorDocument": null, "WebsiteConfiguration$ErrorDocument": null } }, "Errors": { "base": null, "refs": { "DeleteObjectsOutput$Errors": null } }, "Event": { "base": "Bucket event for which to send notifications.", "refs": { "CloudFunctionConfiguration$Event": null, "EventList$member": null, "QueueConfigurationDeprecated$Event": null, "TopicConfigurationDeprecated$Event": "Bucket event for which to send notifications." } }, "EventList": { "base": null, "refs": { "CloudFunctionConfiguration$Events": null, "LambdaFunctionConfiguration$Events": null, "QueueConfiguration$Events": null, "QueueConfigurationDeprecated$Events": null, "TopicConfiguration$Events": null, "TopicConfigurationDeprecated$Events": null } }, "Expiration": { "base": null, "refs": { "CompleteMultipartUploadOutput$Expiration": "If the object expiration is configured, this will contain the expiration date (expiry-date) and rule ID (rule-id). The value of rule-id is URL encoded.", "CopyObjectOutput$Expiration": "If the object expiration is configured, the response includes this header.", "GetObjectOutput$Expiration": "If the object expiration is configured (see PUT Bucket lifecycle), the response includes this header. It includes the expiry-date and rule-id key value pairs providing object expiration information. The value of the rule-id is URL encoded.", "HeadObjectOutput$Expiration": "If the object expiration is configured (see PUT Bucket lifecycle), the response includes this header. It includes the expiry-date and rule-id key value pairs providing object expiration information. The value of the rule-id is URL encoded.", "PutObjectOutput$Expiration": "If the object expiration is configured, this will contain the expiration date (expiry-date) and rule ID (rule-id). The value of rule-id is URL encoded." } }, "ExpirationStatus": { "base": null, "refs": { "LifecycleRule$Status": "If 'Enabled', the rule is currently being applied. If 'Disabled', the rule is not currently being applied.", "Rule$Status": "If 'Enabled', the rule is currently being applied. If 'Disabled', the rule is not currently being applied." } }, "ExpiredObjectDeleteMarker": { "base": null, "refs": { "LifecycleExpiration$ExpiredObjectDeleteMarker": "Indicates whether Amazon S3 will remove a delete marker with no noncurrent versions. If set to true, the delete marker will be expired; if set to false the policy takes no action. This cannot be specified with Days or Date in a Lifecycle Expiration Policy." } }, "Expires": { "base": null, "refs": { "CopyObjectRequest$Expires": "The date and time at which the object is no longer cacheable.", "CreateMultipartUploadRequest$Expires": "The date and time at which the object is no longer cacheable.", "GetObjectOutput$Expires": "The date and time at which the object is no longer cacheable.", "HeadObjectOutput$Expires": "The date and time at which the object is no longer cacheable.", "PutObjectRequest$Expires": "The date and time at which the object is no longer cacheable." } }, "ExposeHeader": { "base": null, "refs": { "ExposeHeaders$member": null } }, "ExposeHeaders": { "base": null, "refs": { "CORSRule$ExposeHeaders": "One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object)." } }, "FetchOwner": { "base": null, "refs": { "ListObjectsV2Request$FetchOwner": "The owner field is not present in listV2 by default, if you want to return owner field with each key in the result then set the fetch owner field to true" } }, "FilterRule": { "base": "Container for key value pair that defines the criteria for the filter rule.", "refs": { "FilterRuleList$member": null } }, "FilterRuleList": { "base": "A list of containers for key value pair that defines the criteria for the filter rule.", "refs": { "S3KeyFilter$FilterRules": null } }, "FilterRuleName": { "base": null, "refs": { "FilterRule$Name": "Object key name prefix or suffix identifying one or more objects to which the filtering rule applies. Maximum prefix length can be up to 1,024 characters. Overlapping prefixes and suffixes are not supported. For more information, go to Configuring Event Notifications in the Amazon Simple Storage Service Developer Guide." } }, "FilterRuleValue": { "base": null, "refs": { "FilterRule$Value": null } }, "GetBucketAccelerateConfigurationOutput": { "base": null, "refs": { } }, "GetBucketAccelerateConfigurationRequest": { "base": null, "refs": { } }, "GetBucketAclOutput": { "base": null, "refs": { } }, "GetBucketAclRequest": { "base": null, "refs": { } }, "GetBucketCorsOutput": { "base": null, "refs": { } }, "GetBucketCorsRequest": { "base": null, "refs": { } }, "GetBucketLifecycleConfigurationOutput": { "base": null, "refs": { } }, "GetBucketLifecycleConfigurationRequest": { "base": null, "refs": { } }, "GetBucketLifecycleOutput": { "base": null, "refs": { } }, "GetBucketLifecycleRequest": { "base": null, "refs": { } }, "GetBucketLocationOutput": { "base": null, "refs": { } }, "GetBucketLocationRequest": { "base": null, "refs": { } }, "GetBucketLoggingOutput": { "base": null, "refs": { } }, "GetBucketLoggingRequest": { "base": null, "refs": { } }, "GetBucketNotificationConfigurationRequest": { "base": null, "refs": { } }, "GetBucketPolicyOutput": { "base": null, "refs": { } }, "GetBucketPolicyRequest": { "base": null, "refs": { } }, "GetBucketReplicationOutput": { "base": null, "refs": { } }, "GetBucketReplicationRequest": { "base": null, "refs": { } }, "GetBucketRequestPaymentOutput": { "base": null, "refs": { } }, "GetBucketRequestPaymentRequest": { "base": null, "refs": { } }, "GetBucketTaggingOutput": { "base": null, "refs": { } }, "GetBucketTaggingRequest": { "base": null, "refs": { } }, "GetBucketVersioningOutput": { "base": null, "refs": { } }, "GetBucketVersioningRequest": { "base": null, "refs": { } }, "GetBucketWebsiteOutput": { "base": null, "refs": { } }, "GetBucketWebsiteRequest": { "base": null, "refs": { } }, "GetObjectAclOutput": { "base": null, "refs": { } }, "GetObjectAclRequest": { "base": null, "refs": { } }, "GetObjectOutput": { "base": null, "refs": { } }, "GetObjectRequest": { "base": null, "refs": { } }, "GetObjectTorrentOutput": { "base": null, "refs": { } }, "GetObjectTorrentRequest": { "base": null, "refs": { } }, "Grant": { "base": null, "refs": { "Grants$member": null } }, "GrantFullControl": { "base": null, "refs": { "CopyObjectRequest$GrantFullControl": "Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.", "CreateBucketRequest$GrantFullControl": "Allows grantee the read, write, read ACP, and write ACP permissions on the bucket.", "CreateMultipartUploadRequest$GrantFullControl": "Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.", "PutBucketAclRequest$GrantFullControl": "Allows grantee the read, write, read ACP, and write ACP permissions on the bucket.", "PutObjectAclRequest$GrantFullControl": "Allows grantee the read, write, read ACP, and write ACP permissions on the bucket.", "PutObjectRequest$GrantFullControl": "Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object." } }, "GrantRead": { "base": null, "refs": { "CopyObjectRequest$GrantRead": "Allows grantee to read the object data and its metadata.", "CreateBucketRequest$GrantRead": "Allows grantee to list the objects in the bucket.", "CreateMultipartUploadRequest$GrantRead": "Allows grantee to read the object data and its metadata.", "PutBucketAclRequest$GrantRead": "Allows grantee to list the objects in the bucket.", "PutObjectAclRequest$GrantRead": "Allows grantee to list the objects in the bucket.", "PutObjectRequest$GrantRead": "Allows grantee to read the object data and its metadata." } }, "GrantReadACP": { "base": null, "refs": { "CopyObjectRequest$GrantReadACP": "Allows grantee to read the object ACL.", "CreateBucketRequest$GrantReadACP": "Allows grantee to read the bucket ACL.", "CreateMultipartUploadRequest$GrantReadACP": "Allows grantee to read the object ACL.", "PutBucketAclRequest$GrantReadACP": "Allows grantee to read the bucket ACL.", "PutObjectAclRequest$GrantReadACP": "Allows grantee to read the bucket ACL.", "PutObjectRequest$GrantReadACP": "Allows grantee to read the object ACL." } }, "GrantWrite": { "base": null, "refs": { "CreateBucketRequest$GrantWrite": "Allows grantee to create, overwrite, and delete any object in the bucket.", "PutBucketAclRequest$GrantWrite": "Allows grantee to create, overwrite, and delete any object in the bucket.", "PutObjectAclRequest$GrantWrite": "Allows grantee to create, overwrite, and delete any object in the bucket." } }, "GrantWriteACP": { "base": null, "refs": { "CopyObjectRequest$GrantWriteACP": "Allows grantee to write the ACL for the applicable object.", "CreateBucketRequest$GrantWriteACP": "Allows grantee to write the ACL for the applicable bucket.", "CreateMultipartUploadRequest$GrantWriteACP": "Allows grantee to write the ACL for the applicable object.", "PutBucketAclRequest$GrantWriteACP": "Allows grantee to write the ACL for the applicable bucket.", "PutObjectAclRequest$GrantWriteACP": "Allows grantee to write the ACL for the applicable bucket.", "PutObjectRequest$GrantWriteACP": "Allows grantee to write the ACL for the applicable object." } }, "Grantee": { "base": null, "refs": { "Grant$Grantee": null, "TargetGrant$Grantee": null } }, "Grants": { "base": null, "refs": { "AccessControlPolicy$Grants": "A list of grants.", "GetBucketAclOutput$Grants": "A list of grants.", "GetObjectAclOutput$Grants": "A list of grants." } }, "HeadBucketRequest": { "base": null, "refs": { } }, "HeadObjectOutput": { "base": null, "refs": { } }, "HeadObjectRequest": { "base": null, "refs": { } }, "HostName": { "base": null, "refs": { "Redirect$HostName": "The host name to use in the redirect request.", "RedirectAllRequestsTo$HostName": "Name of the host where requests will be redirected." } }, "HttpErrorCodeReturnedEquals": { "base": null, "refs": { "Condition$HttpErrorCodeReturnedEquals": "The HTTP error code when the redirect is applied. In the event of an error, if the error code equals this value, then the specified redirect is applied. Required when parent element Condition is specified and sibling KeyPrefixEquals is not specified. If both are specified, then both must be true for the redirect to be applied." } }, "HttpRedirectCode": { "base": null, "refs": { "Redirect$HttpRedirectCode": "The HTTP redirect code to use on the response. Not required if one of the siblings is present." } }, "ID": { "base": null, "refs": { "Grantee$ID": "The canonical user ID of the grantee.", "Initiator$ID": "If the principal is an AWS account, it provides the Canonical User ID. If the principal is an IAM User, it provides a user ARN value.", "LifecycleRule$ID": "Unique identifier for the rule. The value cannot be longer than 255 characters.", "Owner$ID": null, "ReplicationRule$ID": "Unique identifier for the rule. The value cannot be longer than 255 characters.", "Rule$ID": "Unique identifier for the rule. The value cannot be longer than 255 characters." } }, "IfMatch": { "base": null, "refs": { "GetObjectRequest$IfMatch": "Return the object only if its entity tag (ETag) is the same as the one specified, otherwise return a 412 (precondition failed).", "HeadObjectRequest$IfMatch": "Return the object only if its entity tag (ETag) is the same as the one specified, otherwise return a 412 (precondition failed)." } }, "IfModifiedSince": { "base": null, "refs": { "GetObjectRequest$IfModifiedSince": "Return the object only if it has been modified since the specified time, otherwise return a 304 (not modified).", "HeadObjectRequest$IfModifiedSince": "Return the object only if it has been modified since the specified time, otherwise return a 304 (not modified)." } }, "IfNoneMatch": { "base": null, "refs": { "GetObjectRequest$IfNoneMatch": "Return the object only if its entity tag (ETag) is different from the one specified, otherwise return a 304 (not modified).", "HeadObjectRequest$IfNoneMatch": "Return the object only if its entity tag (ETag) is different from the one specified, otherwise return a 304 (not modified)." } }, "IfUnmodifiedSince": { "base": null, "refs": { "GetObjectRequest$IfUnmodifiedSince": "Return the object only if it has not been modified since the specified time, otherwise return a 412 (precondition failed).", "HeadObjectRequest$IfUnmodifiedSince": "Return the object only if it has not been modified since the specified time, otherwise return a 412 (precondition failed)." } }, "IndexDocument": { "base": null, "refs": { "GetBucketWebsiteOutput$IndexDocument": null, "WebsiteConfiguration$IndexDocument": null } }, "Initiated": { "base": null, "refs": { "MultipartUpload$Initiated": "Date and time at which the multipart upload was initiated." } }, "Initiator": { "base": null, "refs": { "ListPartsOutput$Initiator": "Identifies who initiated the multipart upload.", "MultipartUpload$Initiator": "Identifies who initiated the multipart upload." } }, "IsLatest": { "base": null, "refs": { "DeleteMarkerEntry$IsLatest": "Specifies whether the object is (true) or is not (false) the latest version of an object.", "ObjectVersion$IsLatest": "Specifies whether the object is (true) or is not (false) the latest version of an object." } }, "IsTruncated": { "base": null, "refs": { "ListMultipartUploadsOutput$IsTruncated": "Indicates whether the returned list of multipart uploads is truncated. A value of true indicates that the list was truncated. The list can be truncated if the number of multipart uploads exceeds the limit allowed or specified by max uploads.", "ListObjectVersionsOutput$IsTruncated": "A flag that indicates whether or not Amazon S3 returned all of the results that satisfied the search criteria. If your results were truncated, you can make a follow-up paginated request using the NextKeyMarker and NextVersionIdMarker response parameters as a starting place in another request to return the rest of the results.", "ListObjectsOutput$IsTruncated": "A flag that indicates whether or not Amazon S3 returned all of the results that satisfied the search criteria.", "ListObjectsV2Output$IsTruncated": "A flag that indicates whether or not Amazon S3 returned all of the results that satisfied the search criteria.", "ListPartsOutput$IsTruncated": "Indicates whether the returned list of parts is truncated." } }, "KeyCount": { "base": null, "refs": { "ListObjectsV2Output$KeyCount": "KeyCount is the number of keys returned with this request. KeyCount will always be less than equals to MaxKeys field. Say you ask for 50 keys, your result will include less than equals 50 keys" } }, "KeyMarker": { "base": null, "refs": { "ListMultipartUploadsOutput$KeyMarker": "The key at or after which the listing began.", "ListMultipartUploadsRequest$KeyMarker": "Together with upload-id-marker, this parameter specifies the multipart upload after which listing should begin.", "ListObjectVersionsOutput$KeyMarker": "Marks the last Key returned in a truncated response.", "ListObjectVersionsRequest$KeyMarker": "Specifies the key to start with when listing objects in a bucket." } }, "KeyPrefixEquals": { "base": null, "refs": { "Condition$KeyPrefixEquals": "The object key name prefix when the redirect is applied. For example, to redirect requests for ExamplePage.html, the key prefix will be ExamplePage.html. To redirect request for all pages with the prefix docs/, the key prefix will be /docs, which identifies all objects in the docs/ folder. Required when the parent element Condition is specified and sibling HttpErrorCodeReturnedEquals is not specified. If both conditions are specified, both must be true for the redirect to be applied." } }, "LambdaFunctionArn": { "base": null, "refs": { "LambdaFunctionConfiguration$LambdaFunctionArn": "Lambda cloud function ARN that Amazon S3 can invoke when it detects events of the specified type." } }, "LambdaFunctionConfiguration": { "base": "Container for specifying the AWS Lambda notification configuration.", "refs": { "LambdaFunctionConfigurationList$member": null } }, "LambdaFunctionConfigurationList": { "base": null, "refs": { "NotificationConfiguration$LambdaFunctionConfigurations": null } }, "LastModified": { "base": null, "refs": { "CopyObjectResult$LastModified": null, "CopyPartResult$LastModified": "Date and time at which the object was uploaded.", "DeleteMarkerEntry$LastModified": "Date and time the object was last modified.", "GetObjectOutput$LastModified": "Last modified date of the object", "HeadObjectOutput$LastModified": "Last modified date of the object", "Object$LastModified": null, "ObjectVersion$LastModified": "Date and time the object was last modified.", "Part$LastModified": "Date and time at which the part was uploaded." } }, "LifecycleConfiguration": { "base": null, "refs": { "PutBucketLifecycleRequest$LifecycleConfiguration": null } }, "LifecycleExpiration": { "base": null, "refs": { "LifecycleRule$Expiration": null, "Rule$Expiration": null } }, "LifecycleRule": { "base": null, "refs": { "LifecycleRules$member": null } }, "LifecycleRules": { "base": null, "refs": { "BucketLifecycleConfiguration$Rules": null, "GetBucketLifecycleConfigurationOutput$Rules": null } }, "ListBucketsOutput": { "base": null, "refs": { } }, "ListMultipartUploadsOutput": { "base": null, "refs": { } }, "ListMultipartUploadsRequest": { "base": null, "refs": { } }, "ListObjectVersionsOutput": { "base": null, "refs": { } }, "ListObjectVersionsRequest": { "base": null, "refs": { } }, "ListObjectsOutput": { "base": null, "refs": { } }, "ListObjectsRequest": { "base": null, "refs": { } }, "ListObjectsV2Output": { "base": null, "refs": { } }, "ListObjectsV2Request": { "base": null, "refs": { } }, "ListPartsOutput": { "base": null, "refs": { } }, "ListPartsRequest": { "base": null, "refs": { } }, "Location": { "base": null, "refs": { "CompleteMultipartUploadOutput$Location": null, "CreateBucketOutput$Location": null } }, "LoggingEnabled": { "base": null, "refs": { "BucketLoggingStatus$LoggingEnabled": null, "GetBucketLoggingOutput$LoggingEnabled": null } }, "MFA": { "base": null, "refs": { "DeleteObjectRequest$MFA": "The concatenation of the authentication device's serial number, a space, and the value that is displayed on your authentication device.", "DeleteObjectsRequest$MFA": "The concatenation of the authentication device's serial number, a space, and the value that is displayed on your authentication device.", "PutBucketVersioningRequest$MFA": "The concatenation of the authentication device's serial number, a space, and the value that is displayed on your authentication device." } }, "MFADelete": { "base": null, "refs": { "VersioningConfiguration$MFADelete": "Specifies whether MFA delete is enabled in the bucket versioning configuration. This element is only returned if the bucket has been configured with MFA delete. If the bucket has never been so configured, this element is not returned." } }, "MFADeleteStatus": { "base": null, "refs": { "GetBucketVersioningOutput$MFADelete": "Specifies whether MFA delete is enabled in the bucket versioning configuration. This element is only returned if the bucket has been configured with MFA delete. If the bucket has never been so configured, this element is not returned." } }, "Marker": { "base": null, "refs": { "ListObjectsOutput$Marker": null, "ListObjectsRequest$Marker": "Specifies the key to start with when listing objects in a bucket." } }, "MaxAgeSeconds": { "base": null, "refs": { "CORSRule$MaxAgeSeconds": "The time in seconds that your browser is to cache the preflight response for the specified resource." } }, "MaxKeys": { "base": null, "refs": { "ListObjectVersionsOutput$MaxKeys": null, "ListObjectVersionsRequest$MaxKeys": "Sets the maximum number of keys returned in the response. The response might contain fewer keys but will never contain more.", "ListObjectsOutput$MaxKeys": null, "ListObjectsRequest$MaxKeys": "Sets the maximum number of keys returned in the response. The response might contain fewer keys but will never contain more.", "ListObjectsV2Output$MaxKeys": "Sets the maximum number of keys returned in the response. The response might contain fewer keys but will never contain more.", "ListObjectsV2Request$MaxKeys": "Sets the maximum number of keys returned in the response. The response might contain fewer keys but will never contain more." } }, "MaxParts": { "base": null, "refs": { "ListPartsOutput$MaxParts": "Maximum number of parts that were allowed in the response.", "ListPartsRequest$MaxParts": "Sets the maximum number of parts to return." } }, "MaxUploads": { "base": null, "refs": { "ListMultipartUploadsOutput$MaxUploads": "Maximum number of multipart uploads that could have been included in the response.", "ListMultipartUploadsRequest$MaxUploads": "Sets the maximum number of multipart uploads, from 1 to 1,000, to return in the response body. 1,000 is the maximum number of uploads that can be returned in a response." } }, "Message": { "base": null, "refs": { "Error$Message": null } }, "Metadata": { "base": null, "refs": { "CopyObjectRequest$Metadata": "A map of metadata to store with the object in S3.", "CreateMultipartUploadRequest$Metadata": "A map of metadata to store with the object in S3.", "GetObjectOutput$Metadata": "A map of metadata to store with the object in S3.", "HeadObjectOutput$Metadata": "A map of metadata to store with the object in S3.", "PutObjectRequest$Metadata": "A map of metadata to store with the object in S3." } }, "MetadataDirective": { "base": null, "refs": { "CopyObjectRequest$MetadataDirective": "Specifies whether the metadata is copied from the source object or replaced with metadata provided in the request." } }, "MetadataKey": { "base": null, "refs": { "Metadata$key": null } }, "MetadataValue": { "base": null, "refs": { "Metadata$value": null } }, "MissingMeta": { "base": null, "refs": { "GetObjectOutput$MissingMeta": "This is set to the number of metadata entries not returned in x-amz-meta headers. This can happen if you create metadata using an API like SOAP that supports more flexible metadata than the REST API. For example, using SOAP, you can create metadata whose values are not legal HTTP headers.", "HeadObjectOutput$MissingMeta": "This is set to the number of metadata entries not returned in x-amz-meta headers. This can happen if you create metadata using an API like SOAP that supports more flexible metadata than the REST API. For example, using SOAP, you can create metadata whose values are not legal HTTP headers." } }, "MultipartUpload": { "base": null, "refs": { "MultipartUploadList$member": null } }, "MultipartUploadId": { "base": null, "refs": { "AbortMultipartUploadRequest$UploadId": null, "CompleteMultipartUploadRequest$UploadId": null, "CreateMultipartUploadOutput$UploadId": "ID for the initiated multipart upload.", "ListPartsOutput$UploadId": "Upload ID identifying the multipart upload whose parts are being listed.", "ListPartsRequest$UploadId": "Upload ID identifying the multipart upload whose parts are being listed.", "MultipartUpload$UploadId": "Upload ID that identifies the multipart upload.", "UploadPartCopyRequest$UploadId": "Upload ID identifying the multipart upload whose part is being copied.", "UploadPartRequest$UploadId": "Upload ID identifying the multipart upload whose part is being uploaded." } }, "MultipartUploadList": { "base": null, "refs": { "ListMultipartUploadsOutput$Uploads": null } }, "NextKeyMarker": { "base": null, "refs": { "ListMultipartUploadsOutput$NextKeyMarker": "When a list is truncated, this element specifies the value that should be used for the key-marker request parameter in a subsequent request.", "ListObjectVersionsOutput$NextKeyMarker": "Use this value for the key marker request parameter in a subsequent request." } }, "NextMarker": { "base": null, "refs": { "ListObjectsOutput$NextMarker": "When response is truncated (the IsTruncated element value in the response is true), you can use the key name in this field as marker in the subsequent request to get next set of objects. Amazon S3 lists objects in alphabetical order Note: This element is returned only if you have delimiter request parameter specified. If response does not include the NextMaker and it is truncated, you can use the value of the last Key in the response as the marker in the subsequent request to get the next set of object keys." } }, "NextPartNumberMarker": { "base": null, "refs": { "ListPartsOutput$NextPartNumberMarker": "When a list is truncated, this element specifies the last part in the list, as well as the value to use for the part-number-marker request parameter in a subsequent request." } }, "NextToken": { "base": null, "refs": { "ListObjectsV2Output$NextContinuationToken": "NextContinuationToken is sent when isTruncated is true which means there are more keys in the bucket that can be listed. The next list requests to Amazon S3 can be continued with this NextContinuationToken. NextContinuationToken is obfuscated and is not a real key" } }, "NextUploadIdMarker": { "base": null, "refs": { "ListMultipartUploadsOutput$NextUploadIdMarker": "When a list is truncated, this element specifies the value that should be used for the upload-id-marker request parameter in a subsequent request." } }, "NextVersionIdMarker": { "base": null, "refs": { "ListObjectVersionsOutput$NextVersionIdMarker": "Use this value for the next version id marker parameter in a subsequent request." } }, "NoSuchBucket": { "base": "The specified bucket does not exist.", "refs": { } }, "NoSuchKey": { "base": "The specified key does not exist.", "refs": { } }, "NoSuchUpload": { "base": "The specified multipart upload does not exist.", "refs": { } }, "NoncurrentVersionExpiration": { "base": "Specifies when noncurrent object versions expire. Upon expiration, Amazon S3 permanently deletes the noncurrent object versions. You set this lifecycle configuration action on a bucket that has versioning enabled (or suspended) to request that Amazon S3 delete noncurrent object versions at a specific period in the object's lifetime.", "refs": { "LifecycleRule$NoncurrentVersionExpiration": null, "Rule$NoncurrentVersionExpiration": null } }, "NoncurrentVersionTransition": { "base": "Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA or GLACIER storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA or GLACIER storage class at a specific period in the object's lifetime.", "refs": { "NoncurrentVersionTransitionList$member": null, "Rule$NoncurrentVersionTransition": null } }, "NoncurrentVersionTransitionList": { "base": null, "refs": { "LifecycleRule$NoncurrentVersionTransitions": null } }, "NotificationConfiguration": { "base": "Container for specifying the notification configuration of the bucket. If this element is empty, notifications are turned off on the bucket.", "refs": { "PutBucketNotificationConfigurationRequest$NotificationConfiguration": null } }, "NotificationConfigurationDeprecated": { "base": null, "refs": { "PutBucketNotificationRequest$NotificationConfiguration": null } }, "NotificationConfigurationFilter": { "base": "Container for object key name filtering rules. For information about key name filtering, go to Configuring Event Notifications in the Amazon Simple Storage Service Developer Guide.", "refs": { "LambdaFunctionConfiguration$Filter": null, "QueueConfiguration$Filter": null, "TopicConfiguration$Filter": null } }, "NotificationId": { "base": "Optional unique identifier for configurations in a notification configuration. If you don't provide one, Amazon S3 will assign an ID.", "refs": { "CloudFunctionConfiguration$Id": null, "LambdaFunctionConfiguration$Id": null, "QueueConfiguration$Id": null, "QueueConfigurationDeprecated$Id": null, "TopicConfiguration$Id": null, "TopicConfigurationDeprecated$Id": null } }, "Object": { "base": null, "refs": { "ObjectList$member": null } }, "ObjectAlreadyInActiveTierError": { "base": "This operation is not allowed against this storage tier", "refs": { } }, "ObjectCannedACL": { "base": null, "refs": { "CopyObjectRequest$ACL": "The canned ACL to apply to the object.", "CreateMultipartUploadRequest$ACL": "The canned ACL to apply to the object.", "PutObjectAclRequest$ACL": "The canned ACL to apply to the object.", "PutObjectRequest$ACL": "The canned ACL to apply to the object." } }, "ObjectIdentifier": { "base": null, "refs": { "ObjectIdentifierList$member": null } }, "ObjectIdentifierList": { "base": null, "refs": { "Delete$Objects": null } }, "ObjectKey": { "base": null, "refs": { "AbortMultipartUploadRequest$Key": null, "CompleteMultipartUploadOutput$Key": null, "CompleteMultipartUploadRequest$Key": null, "CopyObjectRequest$Key": null, "CreateMultipartUploadOutput$Key": "Object key for which the multipart upload was initiated.", "CreateMultipartUploadRequest$Key": null, "DeleteMarkerEntry$Key": "The object key.", "DeleteObjectRequest$Key": null, "DeletedObject$Key": null, "Error$Key": null, "ErrorDocument$Key": "The object key name to use when a 4XX class error occurs.", "GetObjectAclRequest$Key": null, "GetObjectRequest$Key": null, "GetObjectTorrentRequest$Key": null, "HeadObjectRequest$Key": null, "ListPartsOutput$Key": "Object key for which the multipart upload was initiated.", "ListPartsRequest$Key": null, "MultipartUpload$Key": "Key of the object for which the multipart upload was initiated.", "Object$Key": null, "ObjectIdentifier$Key": "Key name of the object to delete.", "ObjectVersion$Key": "The object key.", "PutObjectAclRequest$Key": null, "PutObjectRequest$Key": "Object key for which the PUT operation was initiated.", "RestoreObjectRequest$Key": null, "Tag$Key": "Name of the tag.", "UploadPartCopyRequest$Key": null, "UploadPartRequest$Key": "Object key for which the multipart upload was initiated." } }, "ObjectList": { "base": null, "refs": { "ListObjectsOutput$Contents": null, "ListObjectsV2Output$Contents": "Metadata about each object returned." } }, "ObjectNotInActiveTierError": { "base": "The source object of the COPY operation is not in the active tier and is only stored in Amazon Glacier.", "refs": { } }, "ObjectStorageClass": { "base": null, "refs": { "Object$StorageClass": "The class of storage used to store the object." } }, "ObjectVersion": { "base": null, "refs": { "ObjectVersionList$member": null } }, "ObjectVersionId": { "base": null, "refs": { "CompleteMultipartUploadOutput$VersionId": "Version of the object.", "CopyObjectOutput$VersionId": "Version ID of the newly created copy.", "DeleteMarkerEntry$VersionId": "Version ID of an object.", "DeleteObjectOutput$VersionId": "Returns the version ID of the delete marker created as a result of the DELETE operation.", "DeleteObjectRequest$VersionId": "VersionId used to reference a specific version of the object.", "DeletedObject$VersionId": null, "Error$VersionId": null, "GetObjectAclRequest$VersionId": "VersionId used to reference a specific version of the object.", "GetObjectOutput$VersionId": "Version of the object.", "GetObjectRequest$VersionId": "VersionId used to reference a specific version of the object.", "HeadObjectOutput$VersionId": "Version of the object.", "HeadObjectRequest$VersionId": "VersionId used to reference a specific version of the object.", "ObjectIdentifier$VersionId": "VersionId for the specific version of the object to delete.", "ObjectVersion$VersionId": "Version ID of an object.", "PutObjectAclRequest$VersionId": "VersionId used to reference a specific version of the object.", "PutObjectOutput$VersionId": "Version of the object.", "RestoreObjectRequest$VersionId": null } }, "ObjectVersionList": { "base": null, "refs": { "ListObjectVersionsOutput$Versions": null } }, "ObjectVersionStorageClass": { "base": null, "refs": { "ObjectVersion$StorageClass": "The class of storage used to store the object." } }, "Owner": { "base": null, "refs": { "AccessControlPolicy$Owner": null, "DeleteMarkerEntry$Owner": null, "GetBucketAclOutput$Owner": null, "GetObjectAclOutput$Owner": null, "ListBucketsOutput$Owner": null, "ListPartsOutput$Owner": null, "MultipartUpload$Owner": null, "Object$Owner": null, "ObjectVersion$Owner": null } }, "Part": { "base": null, "refs": { "Parts$member": null } }, "PartNumber": { "base": null, "refs": { "CompletedPart$PartNumber": "Part number that identifies the part. This is a positive integer between 1 and 10,000.", "GetObjectRequest$PartNumber": "Part number of the object being read. This is a positive integer between 1 and 10,000. Effectively performs a 'ranged' GET request for the part specified. Useful for downloading just a part of an object.", "HeadObjectRequest$PartNumber": "Part number of the object being read. This is a positive integer between 1 and 10,000. Effectively performs a 'ranged' HEAD request for the part specified. Useful querying about the size of the part and the number of parts in this object.", "Part$PartNumber": "Part number identifying the part. This is a positive integer between 1 and 10,000.", "UploadPartCopyRequest$PartNumber": "Part number of part being copied. This is a positive integer between 1 and 10,000.", "UploadPartRequest$PartNumber": "Part number of part being uploaded. This is a positive integer between 1 and 10,000." } }, "PartNumberMarker": { "base": null, "refs": { "ListPartsOutput$PartNumberMarker": "Part number after which listing begins.", "ListPartsRequest$PartNumberMarker": "Specifies the part after which listing should begin. Only parts with higher part numbers will be listed." } }, "Parts": { "base": null, "refs": { "ListPartsOutput$Parts": null } }, "PartsCount": { "base": null, "refs": { "GetObjectOutput$PartsCount": "The count of parts this object has.", "HeadObjectOutput$PartsCount": "The count of parts this object has." } }, "Payer": { "base": null, "refs": { "GetBucketRequestPaymentOutput$Payer": "Specifies who pays for the download and request fees.", "RequestPaymentConfiguration$Payer": "Specifies who pays for the download and request fees." } }, "Permission": { "base": null, "refs": { "Grant$Permission": "Specifies the permission given to the grantee." } }, "Policy": { "base": null, "refs": { "GetBucketPolicyOutput$Policy": "The bucket policy as a JSON document.", "PutBucketPolicyRequest$Policy": "The bucket policy as a JSON document." } }, "Prefix": { "base": null, "refs": { "CommonPrefix$Prefix": null, "LifecycleRule$Prefix": "Prefix identifying one or more objects to which the rule applies.", "ListMultipartUploadsOutput$Prefix": "When a prefix is provided in the request, this field contains the specified prefix. The result contains only keys starting with the specified prefix.", "ListMultipartUploadsRequest$Prefix": "Lists in-progress uploads only for those keys that begin with the specified prefix.", "ListObjectVersionsOutput$Prefix": null, "ListObjectVersionsRequest$Prefix": "Limits the response to keys that begin with the specified prefix.", "ListObjectsOutput$Prefix": null, "ListObjectsRequest$Prefix": "Limits the response to keys that begin with the specified prefix.", "ListObjectsV2Output$Prefix": "Limits the response to keys that begin with the specified prefix.", "ListObjectsV2Request$Prefix": "Limits the response to keys that begin with the specified prefix.", "ReplicationRule$Prefix": "Object keyname prefix identifying one or more objects to which the rule applies. Maximum prefix length can be up to 1,024 characters. Overlapping prefixes are not supported.", "Rule$Prefix": "Prefix identifying one or more objects to which the rule applies." } }, "Protocol": { "base": null, "refs": { "Redirect$Protocol": "Protocol to use (http, https) when redirecting requests. The default is the protocol that is used in the original request.", "RedirectAllRequestsTo$Protocol": "Protocol to use (http, https) when redirecting requests. The default is the protocol that is used in the original request." } }, "PutBucketAccelerateConfigurationRequest": { "base": null, "refs": { } }, "PutBucketAclRequest": { "base": null, "refs": { } }, "PutBucketCorsRequest": { "base": null, "refs": { } }, "PutBucketLifecycleConfigurationRequest": { "base": null, "refs": { } }, "PutBucketLifecycleRequest": { "base": null, "refs": { } }, "PutBucketLoggingRequest": { "base": null, "refs": { } }, "PutBucketNotificationConfigurationRequest": { "base": null, "refs": { } }, "PutBucketNotificationRequest": { "base": null, "refs": { } }, "PutBucketPolicyRequest": { "base": null, "refs": { } }, "PutBucketReplicationRequest": { "base": null, "refs": { } }, "PutBucketRequestPaymentRequest": { "base": null, "refs": { } }, "PutBucketTaggingRequest": { "base": null, "refs": { } }, "PutBucketVersioningRequest": { "base": null, "refs": { } }, "PutBucketWebsiteRequest": { "base": null, "refs": { } }, "PutObjectAclOutput": { "base": null, "refs": { } }, "PutObjectAclRequest": { "base": null, "refs": { } }, "PutObjectOutput": { "base": null, "refs": { } }, "PutObjectRequest": { "base": null, "refs": { } }, "QueueArn": { "base": null, "refs": { "QueueConfiguration$QueueArn": "Amazon SQS queue ARN to which Amazon S3 will publish a message when it detects events of specified type.", "QueueConfigurationDeprecated$Queue": null } }, "QueueConfiguration": { "base": "Container for specifying an configuration when you want Amazon S3 to publish events to an Amazon Simple Queue Service (Amazon SQS) queue.", "refs": { "QueueConfigurationList$member": null } }, "QueueConfigurationDeprecated": { "base": null, "refs": { "NotificationConfigurationDeprecated$QueueConfiguration": null } }, "QueueConfigurationList": { "base": null, "refs": { "NotificationConfiguration$QueueConfigurations": null } }, "Quiet": { "base": null, "refs": { "Delete$Quiet": "Element to enable quiet mode for the request. When you add this element, you must set its value to true." } }, "Range": { "base": null, "refs": { "GetObjectRequest$Range": "Downloads the specified range bytes of an object. For more information about the HTTP Range header, go to http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35.", "HeadObjectRequest$Range": "Downloads the specified range bytes of an object. For more information about the HTTP Range header, go to http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35." } }, "Redirect": { "base": null, "refs": { "RoutingRule$Redirect": "Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can can specify a different error code to return." } }, "RedirectAllRequestsTo": { "base": null, "refs": { "GetBucketWebsiteOutput$RedirectAllRequestsTo": null, "WebsiteConfiguration$RedirectAllRequestsTo": null } }, "ReplaceKeyPrefixWith": { "base": null, "refs": { "Redirect$ReplaceKeyPrefixWith": "The object key prefix to use in the redirect request. For example, to redirect requests for all pages with prefix docs/ (objects in the docs/ folder) to documents/, you can set a condition block with KeyPrefixEquals set to docs/ and in the Redirect set ReplaceKeyPrefixWith to /documents. Not required if one of the siblings is present. Can be present only if ReplaceKeyWith is not provided." } }, "ReplaceKeyWith": { "base": null, "refs": { "Redirect$ReplaceKeyWith": "The specific object key to use in the redirect request. For example, redirect request to error.html. Not required if one of the sibling is present. Can be present only if ReplaceKeyPrefixWith is not provided." } }, "ReplicationConfiguration": { "base": "Container for replication rules. You can add as many as 1,000 rules. Total replication configuration size can be up to 2 MB.", "refs": { "GetBucketReplicationOutput$ReplicationConfiguration": null, "PutBucketReplicationRequest$ReplicationConfiguration": null } }, "ReplicationRule": { "base": null, "refs": { "ReplicationRules$member": null } }, "ReplicationRuleStatus": { "base": null, "refs": { "ReplicationRule$Status": "The rule is ignored if status is not Enabled." } }, "ReplicationRules": { "base": null, "refs": { "ReplicationConfiguration$Rules": "Container for information about a particular replication rule. Replication configuration must have at least one rule and can contain up to 1,000 rules." } }, "ReplicationStatus": { "base": null, "refs": { "GetObjectOutput$ReplicationStatus": null, "HeadObjectOutput$ReplicationStatus": null } }, "RequestCharged": { "base": "If present, indicates that the requester was successfully charged for the request.", "refs": { "AbortMultipartUploadOutput$RequestCharged": null, "CompleteMultipartUploadOutput$RequestCharged": null, "CopyObjectOutput$RequestCharged": null, "CreateMultipartUploadOutput$RequestCharged": null, "DeleteObjectOutput$RequestCharged": null, "DeleteObjectsOutput$RequestCharged": null, "GetObjectAclOutput$RequestCharged": null, "GetObjectOutput$RequestCharged": null, "GetObjectTorrentOutput$RequestCharged": null, "HeadObjectOutput$RequestCharged": null, "ListPartsOutput$RequestCharged": null, "PutObjectAclOutput$RequestCharged": null, "PutObjectOutput$RequestCharged": null, "RestoreObjectOutput$RequestCharged": null, "UploadPartCopyOutput$RequestCharged": null, "UploadPartOutput$RequestCharged": null } }, "RequestPayer": { "base": "Confirms that the requester knows that she or he will be charged for the request. Bucket owners need not specify this parameter in their requests. Documentation on downloading objects from requester pays buckets can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html", "refs": { "AbortMultipartUploadRequest$RequestPayer": null, "CompleteMultipartUploadRequest$RequestPayer": null, "CopyObjectRequest$RequestPayer": null, "CreateMultipartUploadRequest$RequestPayer": null, "DeleteObjectRequest$RequestPayer": null, "DeleteObjectsRequest$RequestPayer": null, "GetObjectAclRequest$RequestPayer": null, "GetObjectRequest$RequestPayer": null, "GetObjectTorrentRequest$RequestPayer": null, "HeadObjectRequest$RequestPayer": null, "ListObjectsRequest$RequestPayer": "Confirms that the requester knows that she or he will be charged for the list objects request. Bucket owners need not specify this parameter in their requests.", "ListObjectsV2Request$RequestPayer": "Confirms that the requester knows that she or he will be charged for the list objects request in V2 style. Bucket owners need not specify this parameter in their requests.", "ListPartsRequest$RequestPayer": null, "PutObjectAclRequest$RequestPayer": null, "PutObjectRequest$RequestPayer": null, "RestoreObjectRequest$RequestPayer": null, "UploadPartCopyRequest$RequestPayer": null, "UploadPartRequest$RequestPayer": null } }, "RequestPaymentConfiguration": { "base": null, "refs": { "PutBucketRequestPaymentRequest$RequestPaymentConfiguration": null } }, "ResponseCacheControl": { "base": null, "refs": { "GetObjectRequest$ResponseCacheControl": "Sets the Cache-Control header of the response." } }, "ResponseContentDisposition": { "base": null, "refs": { "GetObjectRequest$ResponseContentDisposition": "Sets the Content-Disposition header of the response" } }, "ResponseContentEncoding": { "base": null, "refs": { "GetObjectRequest$ResponseContentEncoding": "Sets the Content-Encoding header of the response." } }, "ResponseContentLanguage": { "base": null, "refs": { "GetObjectRequest$ResponseContentLanguage": "Sets the Content-Language header of the response." } }, "ResponseContentType": { "base": null, "refs": { "GetObjectRequest$ResponseContentType": "Sets the Content-Type header of the response." } }, "ResponseExpires": { "base": null, "refs": { "GetObjectRequest$ResponseExpires": "Sets the Expires header of the response." } }, "Restore": { "base": null, "refs": { "GetObjectOutput$Restore": "Provides information about object restoration operation and expiration time of the restored object copy.", "HeadObjectOutput$Restore": "Provides information about object restoration operation and expiration time of the restored object copy." } }, "RestoreObjectOutput": { "base": null, "refs": { } }, "RestoreObjectRequest": { "base": null, "refs": { } }, "RestoreRequest": { "base": null, "refs": { "RestoreObjectRequest$RestoreRequest": null } }, "Role": { "base": null, "refs": { "ReplicationConfiguration$Role": "Amazon Resource Name (ARN) of an IAM role for Amazon S3 to assume when replicating the objects." } }, "RoutingRule": { "base": null, "refs": { "RoutingRules$member": null } }, "RoutingRules": { "base": null, "refs": { "GetBucketWebsiteOutput$RoutingRules": null, "WebsiteConfiguration$RoutingRules": null } }, "Rule": { "base": null, "refs": { "Rules$member": null } }, "Rules": { "base": null, "refs": { "GetBucketLifecycleOutput$Rules": null, "LifecycleConfiguration$Rules": null } }, "S3KeyFilter": { "base": "Container for object key name prefix and suffix filtering rules.", "refs": { "NotificationConfigurationFilter$Key": null } }, "SSECustomerAlgorithm": { "base": null, "refs": { "CopyObjectOutput$SSECustomerAlgorithm": "If server-side encryption with a customer-provided encryption key was requested, the response will include this header confirming the encryption algorithm used.", "CopyObjectRequest$SSECustomerAlgorithm": "Specifies the algorithm to use to when encrypting the object (e.g., AES256).", "CreateMultipartUploadOutput$SSECustomerAlgorithm": "If server-side encryption with a customer-provided encryption key was requested, the response will include this header confirming the encryption algorithm used.", "CreateMultipartUploadRequest$SSECustomerAlgorithm": "Specifies the algorithm to use to when encrypting the object (e.g., AES256).", "GetObjectOutput$SSECustomerAlgorithm": "If server-side encryption with a customer-provided encryption key was requested, the response will include this header confirming the encryption algorithm used.", "GetObjectRequest$SSECustomerAlgorithm": "Specifies the algorithm to use to when encrypting the object (e.g., AES256).", "HeadObjectOutput$SSECustomerAlgorithm": "If server-side encryption with a customer-provided encryption key was requested, the response will include this header confirming the encryption algorithm used.", "HeadObjectRequest$SSECustomerAlgorithm": "Specifies the algorithm to use to when encrypting the object (e.g., AES256).", "PutObjectOutput$SSECustomerAlgorithm": "If server-side encryption with a customer-provided encryption key was requested, the response will include this header confirming the encryption algorithm used.", "PutObjectRequest$SSECustomerAlgorithm": "Specifies the algorithm to use to when encrypting the object (e.g., AES256).", "UploadPartCopyOutput$SSECustomerAlgorithm": "If server-side encryption with a customer-provided encryption key was requested, the response will include this header confirming the encryption algorithm used.", "UploadPartCopyRequest$SSECustomerAlgorithm": "Specifies the algorithm to use to when encrypting the object (e.g., AES256).", "UploadPartOutput$SSECustomerAlgorithm": "If server-side encryption with a customer-provided encryption key was requested, the response will include this header confirming the encryption algorithm used.", "UploadPartRequest$SSECustomerAlgorithm": "Specifies the algorithm to use to when encrypting the object (e.g., AES256)." } }, "SSECustomerKey": { "base": null, "refs": { "CopyObjectRequest$SSECustomerKey": "Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm header.", "CreateMultipartUploadRequest$SSECustomerKey": "Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm header.", "GetObjectRequest$SSECustomerKey": "Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm header.", "HeadObjectRequest$SSECustomerKey": "Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm header.", "PutObjectRequest$SSECustomerKey": "Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm header.", "UploadPartCopyRequest$SSECustomerKey": "Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm header. This must be the same encryption key specified in the initiate multipart upload request.", "UploadPartRequest$SSECustomerKey": "Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm header. This must be the same encryption key specified in the initiate multipart upload request." } }, "SSECustomerKeyMD5": { "base": null, "refs": { "CopyObjectOutput$SSECustomerKeyMD5": "If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide round trip message integrity verification of the customer-provided encryption key.", "CopyObjectRequest$SSECustomerKeyMD5": "Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure the encryption key was transmitted without error.", "CreateMultipartUploadOutput$SSECustomerKeyMD5": "If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide round trip message integrity verification of the customer-provided encryption key.", "CreateMultipartUploadRequest$SSECustomerKeyMD5": "Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure the encryption key was transmitted without error.", "GetObjectOutput$SSECustomerKeyMD5": "If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide round trip message integrity verification of the customer-provided encryption key.", "GetObjectRequest$SSECustomerKeyMD5": "Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure the encryption key was transmitted without error.", "HeadObjectOutput$SSECustomerKeyMD5": "If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide round trip message integrity verification of the customer-provided encryption key.", "HeadObjectRequest$SSECustomerKeyMD5": "Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure the encryption key was transmitted without error.", "PutObjectOutput$SSECustomerKeyMD5": "If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide round trip message integrity verification of the customer-provided encryption key.", "PutObjectRequest$SSECustomerKeyMD5": "Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure the encryption key was transmitted without error.", "UploadPartCopyOutput$SSECustomerKeyMD5": "If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide round trip message integrity verification of the customer-provided encryption key.", "UploadPartCopyRequest$SSECustomerKeyMD5": "Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure the encryption key was transmitted without error.", "UploadPartOutput$SSECustomerKeyMD5": "If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide round trip message integrity verification of the customer-provided encryption key.", "UploadPartRequest$SSECustomerKeyMD5": "Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure the encryption key was transmitted without error." } }, "SSEKMSKeyId": { "base": null, "refs": { "CompleteMultipartUploadOutput$SSEKMSKeyId": "If present, specifies the ID of the AWS Key Management Service (KMS) master encryption key that was used for the object.", "CopyObjectOutput$SSEKMSKeyId": "If present, specifies the ID of the AWS Key Management Service (KMS) master encryption key that was used for the object.", "CopyObjectRequest$SSEKMSKeyId": "Specifies the AWS KMS key ID to use for object encryption. All GET and PUT requests for an object protected by AWS KMS will fail if not made via SSL or using SigV4. Documentation on configuring any of the officially supported AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version", "CreateMultipartUploadOutput$SSEKMSKeyId": "If present, specifies the ID of the AWS Key Management Service (KMS) master encryption key that was used for the object.", "CreateMultipartUploadRequest$SSEKMSKeyId": "Specifies the AWS KMS key ID to use for object encryption. All GET and PUT requests for an object protected by AWS KMS will fail if not made via SSL or using SigV4. Documentation on configuring any of the officially supported AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version", "GetObjectOutput$SSEKMSKeyId": "If present, specifies the ID of the AWS Key Management Service (KMS) master encryption key that was used for the object.", "HeadObjectOutput$SSEKMSKeyId": "If present, specifies the ID of the AWS Key Management Service (KMS) master encryption key that was used for the object.", "PutObjectOutput$SSEKMSKeyId": "If present, specifies the ID of the AWS Key Management Service (KMS) master encryption key that was used for the object.", "PutObjectRequest$SSEKMSKeyId": "Specifies the AWS KMS key ID to use for object encryption. All GET and PUT requests for an object protected by AWS KMS will fail if not made via SSL or using SigV4. Documentation on configuring any of the officially supported AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version", "UploadPartCopyOutput$SSEKMSKeyId": "If present, specifies the ID of the AWS Key Management Service (KMS) master encryption key that was used for the object.", "UploadPartOutput$SSEKMSKeyId": "If present, specifies the ID of the AWS Key Management Service (KMS) master encryption key that was used for the object." } }, "ServerSideEncryption": { "base": null, "refs": { "CompleteMultipartUploadOutput$ServerSideEncryption": "The Server-side encryption algorithm used when storing this object in S3 (e.g., AES256, aws:kms).", "CopyObjectOutput$ServerSideEncryption": "The Server-side encryption algorithm used when storing this object in S3 (e.g., AES256, aws:kms).", "CopyObjectRequest$ServerSideEncryption": "The Server-side encryption algorithm used when storing this object in S3 (e.g., AES256, aws:kms).", "CreateMultipartUploadOutput$ServerSideEncryption": "The Server-side encryption algorithm used when storing this object in S3 (e.g., AES256, aws:kms).", "CreateMultipartUploadRequest$ServerSideEncryption": "The Server-side encryption algorithm used when storing this object in S3 (e.g., AES256, aws:kms).", "GetObjectOutput$ServerSideEncryption": "The Server-side encryption algorithm used when storing this object in S3 (e.g., AES256, aws:kms).", "HeadObjectOutput$ServerSideEncryption": "The Server-side encryption algorithm used when storing this object in S3 (e.g., AES256, aws:kms).", "PutObjectOutput$ServerSideEncryption": "The Server-side encryption algorithm used when storing this object in S3 (e.g., AES256, aws:kms).", "PutObjectRequest$ServerSideEncryption": "The Server-side encryption algorithm used when storing this object in S3 (e.g., AES256, aws:kms).", "UploadPartCopyOutput$ServerSideEncryption": "The Server-side encryption algorithm used when storing this object in S3 (e.g., AES256, aws:kms).", "UploadPartOutput$ServerSideEncryption": "The Server-side encryption algorithm used when storing this object in S3 (e.g., AES256, aws:kms)." } }, "Size": { "base": null, "refs": { "Object$Size": null, "ObjectVersion$Size": "Size in bytes of the object.", "Part$Size": "Size of the uploaded part data." } }, "StartAfter": { "base": null, "refs": { "ListObjectsV2Output$StartAfter": "StartAfter is where you want Amazon S3 to start listing from. Amazon S3 starts listing after this specified key. StartAfter can be any key in the bucket", "ListObjectsV2Request$StartAfter": "StartAfter is where you want Amazon S3 to start listing from. Amazon S3 starts listing after this specified key. StartAfter can be any key in the bucket" } }, "StorageClass": { "base": null, "refs": { "CopyObjectRequest$StorageClass": "The type of storage to use for the object. Defaults to 'STANDARD'.", "CreateMultipartUploadRequest$StorageClass": "The type of storage to use for the object. Defaults to 'STANDARD'.", "Destination$StorageClass": "The class of storage used to store the object.", "GetObjectOutput$StorageClass": null, "HeadObjectOutput$StorageClass": null, "ListPartsOutput$StorageClass": "The class of storage used to store the object.", "MultipartUpload$StorageClass": "The class of storage used to store the object.", "PutObjectRequest$StorageClass": "The type of storage to use for the object. Defaults to 'STANDARD'." } }, "Suffix": { "base": null, "refs": { "IndexDocument$Suffix": "A suffix that is appended to a request that is for a directory on the website endpoint (e.g. if the suffix is index.html and you make a request to samplebucket/images/ the data that is returned will be for the object with the key name images/index.html) The suffix must not be empty and must not include a slash character." } }, "Tag": { "base": null, "refs": { "TagSet$member": null } }, "TagSet": { "base": null, "refs": { "GetBucketTaggingOutput$TagSet": null, "Tagging$TagSet": null } }, "Tagging": { "base": null, "refs": { "PutBucketTaggingRequest$Tagging": null } }, "TargetBucket": { "base": null, "refs": { "LoggingEnabled$TargetBucket": "Specifies the bucket where you want Amazon S3 to store server access logs. You can have your logs delivered to any bucket that you own, including the same bucket that is being logged. You can also configure multiple buckets to deliver their logs to the same target bucket. In this case you should choose a different TargetPrefix for each source bucket so that the delivered log files can be distinguished by key." } }, "TargetGrant": { "base": null, "refs": { "TargetGrants$member": null } }, "TargetGrants": { "base": null, "refs": { "LoggingEnabled$TargetGrants": null } }, "TargetPrefix": { "base": null, "refs": { "LoggingEnabled$TargetPrefix": "This element lets you specify a prefix for the keys that the log files will be stored under." } }, "Token": { "base": null, "refs": { "ListObjectsV2Output$ContinuationToken": "ContinuationToken indicates Amazon S3 that the list is being continued on this bucket with a token. ContinuationToken is obfuscated and is not a real key", "ListObjectsV2Request$ContinuationToken": "ContinuationToken indicates Amazon S3 that the list is being continued on this bucket with a token. ContinuationToken is obfuscated and is not a real key" } }, "TopicArn": { "base": null, "refs": { "TopicConfiguration$TopicArn": "Amazon SNS topic ARN to which Amazon S3 will publish a message when it detects events of specified type.", "TopicConfigurationDeprecated$Topic": "Amazon SNS topic to which Amazon S3 will publish a message to report the specified events for the bucket." } }, "TopicConfiguration": { "base": "Container for specifying the configuration when you want Amazon S3 to publish events to an Amazon Simple Notification Service (Amazon SNS) topic.", "refs": { "TopicConfigurationList$member": null } }, "TopicConfigurationDeprecated": { "base": null, "refs": { "NotificationConfigurationDeprecated$TopicConfiguration": null } }, "TopicConfigurationList": { "base": null, "refs": { "NotificationConfiguration$TopicConfigurations": null } }, "Transition": { "base": null, "refs": { "Rule$Transition": null, "TransitionList$member": null } }, "TransitionList": { "base": null, "refs": { "LifecycleRule$Transitions": null } }, "TransitionStorageClass": { "base": null, "refs": { "NoncurrentVersionTransition$StorageClass": "The class of storage used to store the object.", "Transition$StorageClass": "The class of storage used to store the object." } }, "Type": { "base": null, "refs": { "Grantee$Type": "Type of grantee" } }, "URI": { "base": null, "refs": { "Grantee$URI": "URI of the grantee group." } }, "UploadIdMarker": { "base": null, "refs": { "ListMultipartUploadsOutput$UploadIdMarker": "Upload ID after which listing began.", "ListMultipartUploadsRequest$UploadIdMarker": "Together with key-marker, specifies the multipart upload after which listing should begin. If key-marker is not specified, the upload-id-marker parameter is ignored." } }, "UploadPartCopyOutput": { "base": null, "refs": { } }, "UploadPartCopyRequest": { "base": null, "refs": { } }, "UploadPartOutput": { "base": null, "refs": { } }, "UploadPartRequest": { "base": null, "refs": { } }, "Value": { "base": null, "refs": { "Tag$Value": "Value of the tag." } }, "VersionIdMarker": { "base": null, "refs": { "ListObjectVersionsOutput$VersionIdMarker": null, "ListObjectVersionsRequest$VersionIdMarker": "Specifies the object version you want to start listing from." } }, "VersioningConfiguration": { "base": null, "refs": { "PutBucketVersioningRequest$VersioningConfiguration": null } }, "WebsiteConfiguration": { "base": null, "refs": { "PutBucketWebsiteRequest$WebsiteConfiguration": null } }, "WebsiteRedirectLocation": { "base": null, "refs": { "CopyObjectRequest$WebsiteRedirectLocation": "If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata.", "CreateMultipartUploadRequest$WebsiteRedirectLocation": "If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata.", "GetObjectOutput$WebsiteRedirectLocation": "If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata.", "HeadObjectOutput$WebsiteRedirectLocation": "If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata.", "PutObjectRequest$WebsiteRedirectLocation": "If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata." } } } } aws-sdk-go-1.4.22/models/apis/s3/2006-03-01/examples-1.json000066400000000000000000000000541300374646400222220ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/s3/2006-03-01/paginators-1.json000066400000000000000000000027201300374646400225550ustar00rootroot00000000000000{ "pagination": { "ListBuckets": { "result_key": "Buckets" }, "ListMultipartUploads": { "limit_key": "MaxUploads", "more_results": "IsTruncated", "output_token": [ "NextKeyMarker", "NextUploadIdMarker" ], "input_token": [ "KeyMarker", "UploadIdMarker" ], "result_key": [ "Uploads", "CommonPrefixes" ] }, "ListObjectVersions": { "more_results": "IsTruncated", "limit_key": "MaxKeys", "output_token": [ "NextKeyMarker", "NextVersionIdMarker" ], "input_token": [ "KeyMarker", "VersionIdMarker" ], "result_key": [ "Versions", "DeleteMarkers", "CommonPrefixes" ] }, "ListObjects": { "more_results": "IsTruncated", "limit_key": "MaxKeys", "output_token": "NextMarker || Contents[-1].Key", "input_token": "Marker", "result_key": [ "Contents", "CommonPrefixes" ] }, "ListObjectsV2": { "limit_key": "MaxKeys", "output_token": "NextContinuationToken", "input_token": "ContinuationToken", "result_key": [ "Contents", "CommonPrefixes" ] }, "ListParts": { "more_results": "IsTruncated", "limit_key": "MaxParts", "output_token": "NextPartNumberMarker", "input_token": "PartNumberMarker", "result_key": "Parts" } } } aws-sdk-go-1.4.22/models/apis/s3/2006-03-01/waiters-2.json000066400000000000000000000026341300374646400220710ustar00rootroot00000000000000{ "version": 2, "waiters": { "BucketExists": { "delay": 5, "operation": "HeadBucket", "maxAttempts": 20, "acceptors": [ { "expected": 200, "matcher": "status", "state": "success" }, { "expected": 301, "matcher": "status", "state": "success" }, { "expected": 403, "matcher": "status", "state": "success" }, { "expected": 404, "matcher": "status", "state": "retry" } ] }, "BucketNotExists": { "delay": 5, "operation": "HeadBucket", "maxAttempts": 20, "acceptors": [ { "expected": 404, "matcher": "status", "state": "success" } ] }, "ObjectExists": { "delay": 5, "operation": "HeadObject", "maxAttempts": 20, "acceptors": [ { "expected": 200, "matcher": "status", "state": "success" }, { "expected": 404, "matcher": "status", "state": "retry" } ] }, "ObjectNotExists": { "delay": 5, "operation": "HeadObject", "maxAttempts": 20, "acceptors": [ { "expected": 404, "matcher": "status", "state": "success" } ] } } } aws-sdk-go-1.4.22/models/apis/sdb/000077500000000000000000000000001300374646400165525ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/sdb/2009-04-15/000077500000000000000000000000001300374646400176105ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/sdb/2009-04-15/api-2.json000066400000000000000000000553411300374646400214230ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2009-04-15", "endpointPrefix":"sdb", "serviceFullName":"Amazon SimpleDB", "signatureVersion":"v2", "xmlNamespace":"http://sdb.amazonaws.com/doc/2009-04-15/", "protocol":"query" }, "operations":{ "BatchDeleteAttributes":{ "name":"BatchDeleteAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BatchDeleteAttributesRequest"} }, "BatchPutAttributes":{ "name":"BatchPutAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"BatchPutAttributesRequest"}, "errors":[ { "shape":"DuplicateItemName", "error":{ "code":"DuplicateItemName", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"InvalidParameterValue", "error":{ "code":"InvalidParameterValue", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"MissingParameter", "error":{ "code":"MissingParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"NoSuchDomain", "error":{ "code":"NoSuchDomain", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"NumberItemAttributesExceeded", "error":{ "code":"NumberItemAttributesExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"NumberDomainAttributesExceeded", "error":{ "code":"NumberDomainAttributesExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"NumberDomainBytesExceeded", "error":{ "code":"NumberDomainBytesExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"NumberSubmittedItemsExceeded", "error":{ "code":"NumberSubmittedItemsExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"NumberSubmittedAttributesExceeded", "error":{ "code":"NumberSubmittedAttributesExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "CreateDomain":{ "name":"CreateDomain", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDomainRequest"}, "errors":[ { "shape":"InvalidParameterValue", "error":{ "code":"InvalidParameterValue", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"MissingParameter", "error":{ "code":"MissingParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"NumberDomainsExceeded", "error":{ "code":"NumberDomainsExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true } ] }, "DeleteAttributes":{ "name":"DeleteAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteAttributesRequest"}, "errors":[ { "shape":"InvalidParameterValue", "error":{ "code":"InvalidParameterValue", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"MissingParameter", "error":{ "code":"MissingParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"NoSuchDomain", "error":{ "code":"NoSuchDomain", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"AttributeDoesNotExist", "error":{ "code":"AttributeDoesNotExist", "httpStatusCode":404, "senderFault":true }, "exception":true } ] }, "DeleteDomain":{ "name":"DeleteDomain", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDomainRequest"}, "errors":[ { "shape":"MissingParameter", "error":{ "code":"MissingParameter", "httpStatusCode":400, "senderFault":true }, "exception":true } ] }, "DomainMetadata":{ "name":"DomainMetadata", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DomainMetadataRequest"}, "output":{ "shape":"DomainMetadataResult", "resultWrapper":"DomainMetadataResult" }, "errors":[ { "shape":"MissingParameter", "error":{ "code":"MissingParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"NoSuchDomain", "error":{ "code":"NoSuchDomain", "httpStatusCode":400, "senderFault":true }, "exception":true } ] }, "GetAttributes":{ "name":"GetAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetAttributesRequest"}, "output":{ "shape":"GetAttributesResult", "resultWrapper":"GetAttributesResult" }, "errors":[ { "shape":"InvalidParameterValue", "error":{ "code":"InvalidParameterValue", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"MissingParameter", "error":{ "code":"MissingParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"NoSuchDomain", "error":{ "code":"NoSuchDomain", "httpStatusCode":400, "senderFault":true }, "exception":true } ] }, "ListDomains":{ "name":"ListDomains", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListDomainsRequest"}, "output":{ "shape":"ListDomainsResult", "resultWrapper":"ListDomainsResult" }, "errors":[ { "shape":"InvalidParameterValue", "error":{ "code":"InvalidParameterValue", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"InvalidNextToken", "error":{ "code":"InvalidNextToken", "httpStatusCode":400, "senderFault":true }, "exception":true } ] }, "PutAttributes":{ "name":"PutAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PutAttributesRequest"}, "errors":[ { "shape":"InvalidParameterValue", "error":{ "code":"InvalidParameterValue", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"MissingParameter", "error":{ "code":"MissingParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"NoSuchDomain", "error":{ "code":"NoSuchDomain", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"NumberDomainAttributesExceeded", "error":{ "code":"NumberDomainAttributesExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"NumberDomainBytesExceeded", "error":{ "code":"NumberDomainBytesExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"NumberItemAttributesExceeded", "error":{ "code":"NumberItemAttributesExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, { "shape":"AttributeDoesNotExist", "error":{ "code":"AttributeDoesNotExist", "httpStatusCode":404, "senderFault":true }, "exception":true } ] }, "Select":{ "name":"Select", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SelectRequest"}, "output":{ "shape":"SelectResult", "resultWrapper":"SelectResult" }, "errors":[ { "shape":"InvalidParameterValue", "error":{ "code":"InvalidParameterValue", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"InvalidNextToken", "error":{ "code":"InvalidNextToken", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"InvalidNumberPredicates", "error":{ "code":"InvalidNumberPredicates", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"InvalidNumberValueTests", "error":{ "code":"InvalidNumberValueTests", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"InvalidQueryExpression", "error":{ "code":"InvalidQueryExpression", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"MissingParameter", "error":{ "code":"MissingParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"NoSuchDomain", "error":{ "code":"NoSuchDomain", "httpStatusCode":400, "senderFault":true }, "exception":true }, { "shape":"RequestTimeout", "error":{ "code":"RequestTimeout", "httpStatusCode":408, "senderFault":true }, "exception":true }, { "shape":"TooManyRequestedAttributes", "error":{ "code":"TooManyRequestedAttributes", "httpStatusCode":400, "senderFault":true }, "exception":true } ] } }, "shapes":{ "Attribute":{ "type":"structure", "required":[ "Name", "Value" ], "members":{ "Name":{"shape":"String"}, "AlternateNameEncoding":{"shape":"String"}, "Value":{"shape":"String"}, "AlternateValueEncoding":{"shape":"String"} } }, "AttributeDoesNotExist":{ "type":"structure", "members":{ "BoxUsage":{"shape":"Float"} }, "error":{ "code":"AttributeDoesNotExist", "httpStatusCode":404, "senderFault":true }, "exception":true }, "AttributeList":{ "type":"list", "member":{ "shape":"Attribute", "locationName":"Attribute" }, "flattened":true }, "AttributeNameList":{ "type":"list", "member":{ "shape":"String", "locationName":"AttributeName" }, "flattened":true }, "BatchDeleteAttributesRequest":{ "type":"structure", "required":[ "DomainName", "Items" ], "members":{ "DomainName":{"shape":"String"}, "Items":{"shape":"DeletableItemList"} } }, "BatchPutAttributesRequest":{ "type":"structure", "required":[ "DomainName", "Items" ], "members":{ "DomainName":{"shape":"String"}, "Items":{"shape":"ReplaceableItemList"} } }, "Boolean":{"type":"boolean"}, "CreateDomainRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"String"} } }, "DeletableAttribute":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"String"}, "Value":{"shape":"String"} } }, "DeletableAttributeList":{ "type":"list", "member":{ "shape":"DeletableAttribute", "locationName":"Attribute" }, "flattened":true }, "DeletableItem":{ "type":"structure", "required":["Name"], "members":{ "Name":{ "shape":"String", "locationName":"ItemName" }, "Attributes":{"shape":"DeletableAttributeList"} } }, "DeletableItemList":{ "type":"list", "member":{ "shape":"DeletableItem", "locationName":"Item" }, "flattened":true }, "DeleteAttributesRequest":{ "type":"structure", "required":[ "DomainName", "ItemName" ], "members":{ "DomainName":{"shape":"String"}, "ItemName":{"shape":"String"}, "Attributes":{"shape":"DeletableAttributeList"}, "Expected":{"shape":"UpdateCondition"} } }, "DeleteDomainRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"String"} } }, "DomainMetadataRequest":{ "type":"structure", "required":["DomainName"], "members":{ "DomainName":{"shape":"String"} } }, "DomainMetadataResult":{ "type":"structure", "members":{ "ItemCount":{"shape":"Integer"}, "ItemNamesSizeBytes":{"shape":"Long"}, "AttributeNameCount":{"shape":"Integer"}, "AttributeNamesSizeBytes":{"shape":"Long"}, "AttributeValueCount":{"shape":"Integer"}, "AttributeValuesSizeBytes":{"shape":"Long"}, "Timestamp":{"shape":"Integer"} } }, "DomainNameList":{ "type":"list", "member":{ "shape":"String", "locationName":"DomainName" }, "flattened":true }, "DuplicateItemName":{ "type":"structure", "members":{ "BoxUsage":{"shape":"Float"} }, "error":{ "code":"DuplicateItemName", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Float":{"type":"float"}, "GetAttributesRequest":{ "type":"structure", "required":[ "DomainName", "ItemName" ], "members":{ "DomainName":{"shape":"String"}, "ItemName":{"shape":"String"}, "AttributeNames":{"shape":"AttributeNameList"}, "ConsistentRead":{"shape":"Boolean"} } }, "GetAttributesResult":{ "type":"structure", "members":{ "Attributes":{"shape":"AttributeList"} } }, "Integer":{"type":"integer"}, "InvalidNextToken":{ "type":"structure", "members":{ "BoxUsage":{"shape":"Float"} }, "error":{ "code":"InvalidNextToken", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidNumberPredicates":{ "type":"structure", "members":{ "BoxUsage":{"shape":"Float"} }, "error":{ "code":"InvalidNumberPredicates", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidNumberValueTests":{ "type":"structure", "members":{ "BoxUsage":{"shape":"Float"} }, "error":{ "code":"InvalidNumberValueTests", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidParameterValue":{ "type":"structure", "members":{ "BoxUsage":{"shape":"Float"} }, "error":{ "code":"InvalidParameterValue", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidQueryExpression":{ "type":"structure", "members":{ "BoxUsage":{"shape":"Float"} }, "error":{ "code":"InvalidQueryExpression", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Item":{ "type":"structure", "required":[ "Name", "Attributes" ], "members":{ "Name":{"shape":"String"}, "AlternateNameEncoding":{"shape":"String"}, "Attributes":{"shape":"AttributeList"} } }, "ItemList":{ "type":"list", "member":{ "shape":"Item", "locationName":"Item" }, "flattened":true }, "ListDomainsRequest":{ "type":"structure", "members":{ "MaxNumberOfDomains":{"shape":"Integer"}, "NextToken":{"shape":"String"} } }, "ListDomainsResult":{ "type":"structure", "members":{ "DomainNames":{"shape":"DomainNameList"}, "NextToken":{"shape":"String"} } }, "Long":{"type":"long"}, "MissingParameter":{ "type":"structure", "members":{ "BoxUsage":{"shape":"Float"} }, "error":{ "code":"MissingParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, "NoSuchDomain":{ "type":"structure", "members":{ "BoxUsage":{"shape":"Float"} }, "error":{ "code":"NoSuchDomain", "httpStatusCode":400, "senderFault":true }, "exception":true }, "NumberDomainAttributesExceeded":{ "type":"structure", "members":{ "BoxUsage":{"shape":"Float"} }, "error":{ "code":"NumberDomainAttributesExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, "NumberDomainBytesExceeded":{ "type":"structure", "members":{ "BoxUsage":{"shape":"Float"} }, "error":{ "code":"NumberDomainBytesExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, "NumberDomainsExceeded":{ "type":"structure", "members":{ "BoxUsage":{"shape":"Float"} }, "error":{ "code":"NumberDomainsExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, "NumberItemAttributesExceeded":{ "type":"structure", "members":{ "BoxUsage":{"shape":"Float"} }, "error":{ "code":"NumberItemAttributesExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, "NumberSubmittedAttributesExceeded":{ "type":"structure", "members":{ "BoxUsage":{"shape":"Float"} }, "error":{ "code":"NumberSubmittedAttributesExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, "NumberSubmittedItemsExceeded":{ "type":"structure", "members":{ "BoxUsage":{"shape":"Float"} }, "error":{ "code":"NumberSubmittedItemsExceeded", "httpStatusCode":409, "senderFault":true }, "exception":true }, "PutAttributesRequest":{ "type":"structure", "required":[ "DomainName", "ItemName", "Attributes" ], "members":{ "DomainName":{"shape":"String"}, "ItemName":{"shape":"String"}, "Attributes":{"shape":"ReplaceableAttributeList"}, "Expected":{"shape":"UpdateCondition"} } }, "ReplaceableAttribute":{ "type":"structure", "required":[ "Name", "Value" ], "members":{ "Name":{"shape":"String"}, "Value":{"shape":"String"}, "Replace":{"shape":"Boolean"} } }, "ReplaceableAttributeList":{ "type":"list", "member":{ "shape":"ReplaceableAttribute", "locationName":"Attribute" }, "flattened":true }, "ReplaceableItem":{ "type":"structure", "required":[ "Name", "Attributes" ], "members":{ "Name":{ "shape":"String", "locationName":"ItemName" }, "Attributes":{"shape":"ReplaceableAttributeList"} } }, "ReplaceableItemList":{ "type":"list", "member":{ "shape":"ReplaceableItem", "locationName":"Item" }, "flattened":true }, "RequestTimeout":{ "type":"structure", "members":{ "BoxUsage":{"shape":"Float"} }, "error":{ "code":"RequestTimeout", "httpStatusCode":408, "senderFault":true }, "exception":true }, "SelectRequest":{ "type":"structure", "required":["SelectExpression"], "members":{ "SelectExpression":{"shape":"String"}, "NextToken":{"shape":"String"}, "ConsistentRead":{"shape":"Boolean"} } }, "SelectResult":{ "type":"structure", "members":{ "Items":{"shape":"ItemList"}, "NextToken":{"shape":"String"} } }, "String":{"type":"string"}, "TooManyRequestedAttributes":{ "type":"structure", "members":{ "BoxUsage":{"shape":"Float"} }, "error":{ "code":"TooManyRequestedAttributes", "httpStatusCode":400, "senderFault":true }, "exception":true }, "UpdateCondition":{ "type":"structure", "members":{ "Name":{"shape":"String"}, "Value":{"shape":"String"}, "Exists":{"shape":"Boolean"} } } } } aws-sdk-go-1.4.22/models/apis/sdb/2009-04-15/docs-2.json000066400000000000000000000601201300374646400215710ustar00rootroot00000000000000{ "version": "2.0", "operations": { "BatchDeleteAttributes": "

        Performs multiple DeleteAttributes operations in a single call, which reduces round trips and latencies. This enables Amazon SimpleDB to optimize requests, which generally yields better throughput.

        If you specify BatchDeleteAttributes without attributes or values, all the attributes for the item are deleted.

        BatchDeleteAttributes is an idempotent operation; running it multiple times on the same item or attribute doesn't result in an error.

        The BatchDeleteAttributes operation succeeds or fails in its entirety. There are no partial deletes. You can execute multiple BatchDeleteAttributes operations and other operations in parallel. However, large numbers of concurrent BatchDeleteAttributes calls can result in Service Unavailable (503) responses.

        This operation is vulnerable to exceeding the maximum URL size when making a REST request using the HTTP GET method.

        This operation does not support conditions using Expected.X.Name, Expected.X.Value, or Expected.X.Exists.

        The following limitations are enforced for this operation:

        • 1 MB request size
        • 25 item limit per BatchDeleteAttributes operation

        ", "BatchPutAttributes": "

        The BatchPutAttributes operation creates or replaces attributes within one or more items. By using this operation, the client can perform multiple PutAttribute operation with a single call. This helps yield savings in round trips and latencies, enabling Amazon SimpleDB to optimize requests and generally produce better throughput.

        The client may specify the item name with the Item.X.ItemName parameter. The client may specify new attributes using a combination of the Item.X.Attribute.Y.Name and Item.X.Attribute.Y.Value parameters. The client may specify the first attribute for the first item using the parameters Item.0.Attribute.0.Name and Item.0.Attribute.0.Value, and for the second attribute for the first item by the parameters Item.0.Attribute.1.Name and Item.0.Attribute.1.Value, and so on.

        Attributes are uniquely identified within an item by their name/value combination. For example, a single item can have the attributes { \"first_name\", \"first_value\" } and { \"first_name\", \"second_value\" }. However, it cannot have two attribute instances where both the Item.X.Attribute.Y.Name and Item.X.Attribute.Y.Value are the same.

        Optionally, the requester can supply the Replace parameter for each individual value. Setting this value to true will cause the new attribute values to replace the existing attribute values. For example, if an item I has the attributes { 'a', '1' }, { 'b', '2'} and { 'b', '3' } and the requester does a BatchPutAttributes of {'I', 'b', '4' } with the Replace parameter set to true, the final attributes of the item will be { 'a', '1' } and { 'b', '4' }, replacing the previous values of the 'b' attribute with the new value.

        You cannot specify an empty string as an item or as an attribute name. The BatchPutAttributes operation succeeds or fails in its entirety. There are no partial puts. This operation is vulnerable to exceeding the maximum URL size when making a REST request using the HTTP GET method. This operation does not support conditions using Expected.X.Name, Expected.X.Value, or Expected.X.Exists.

        You can execute multiple BatchPutAttributes operations and other operations in parallel. However, large numbers of concurrent BatchPutAttributes calls can result in Service Unavailable (503) responses.

        The following limitations are enforced for this operation:

        • 256 attribute name-value pairs per item
        • 1 MB request size
        • 1 billion attributes per domain
        • 10 GB of total user data storage per domain
        • 25 item limit per BatchPutAttributes operation

        ", "CreateDomain": "

        The CreateDomain operation creates a new domain. The domain name should be unique among the domains associated with the Access Key ID provided in the request. The CreateDomain operation may take 10 or more seconds to complete.

        CreateDomain is an idempotent operation; running it multiple times using the same domain name will not result in an error response.

        The client can create up to 100 domains per account.

        If the client requires additional domains, go to http://aws.amazon.com/contact-us/simpledb-limit-request/.

        ", "DeleteAttributes": "

        Deletes one or more attributes associated with an item. If all attributes of the item are deleted, the item is deleted.

        If DeleteAttributes is called without being passed any attributes or values specified, all the attributes for the item are deleted.

        DeleteAttributes is an idempotent operation; running it multiple times on the same item or attribute does not result in an error response.

        Because Amazon SimpleDB makes multiple copies of item data and uses an eventual consistency update model, performing a GetAttributes or Select operation (read) immediately after a DeleteAttributes or PutAttributes operation (write) might not return updated item data.

        ", "DeleteDomain": "

        The DeleteDomain operation deletes a domain. Any items (and their attributes) in the domain are deleted as well. The DeleteDomain operation might take 10 or more seconds to complete.

        Running DeleteDomain on a domain that does not exist or running the function multiple times using the same domain name will not result in an error response. ", "DomainMetadata": "

        Returns information about the domain, including when the domain was created, the number of items and attributes in the domain, and the size of the attribute names and values.

        ", "GetAttributes": "

        Returns all of the attributes associated with the specified item. Optionally, the attributes returned can be limited to one or more attributes by specifying an attribute name parameter.

        If the item does not exist on the replica that was accessed for this operation, an empty set is returned. The system does not return an error as it cannot guarantee the item does not exist on other replicas.

        If GetAttributes is called without being passed any attribute names, all the attributes for the item are returned. ", "ListDomains": "

        The ListDomains operation lists all domains associated with the Access Key ID. It returns domain names up to the limit set by MaxNumberOfDomains. A NextToken is returned if there are more than MaxNumberOfDomains domains. Calling ListDomains successive times with the NextToken provided by the operation returns up to MaxNumberOfDomains more domain names with each successive operation call.

        ", "PutAttributes": "

        The PutAttributes operation creates or replaces attributes in an item. The client may specify new attributes using a combination of the Attribute.X.Name and Attribute.X.Value parameters. The client specifies the first attribute by the parameters Attribute.0.Name and Attribute.0.Value, the second attribute by the parameters Attribute.1.Name and Attribute.1.Value, and so on.

        Attributes are uniquely identified in an item by their name/value combination. For example, a single item can have the attributes { \"first_name\", \"first_value\" } and { \"first_name\", second_value\" }. However, it cannot have two attribute instances where both the Attribute.X.Name and Attribute.X.Value are the same.

        Optionally, the requestor can supply the Replace parameter for each individual attribute. Setting this value to true causes the new attribute value to replace the existing attribute value(s). For example, if an item has the attributes { 'a', '1' }, { 'b', '2'} and { 'b', '3' } and the requestor calls PutAttributes using the attributes { 'b', '4' } with the Replace parameter set to true, the final attributes of the item are changed to { 'a', '1' } and { 'b', '4' }, which replaces the previous values of the 'b' attribute with the new value.

        Using PutAttributes to replace attribute values that do not exist will not result in an error response.

        You cannot specify an empty string as an attribute name.

        Because Amazon SimpleDB makes multiple copies of client data and uses an eventual consistency update model, an immediate GetAttributes or Select operation (read) immediately after a PutAttributes or DeleteAttributes operation (write) might not return the updated data.

        The following limitations are enforced for this operation:

        • 256 total attribute name-value pairs per item
        • One billion attributes per domain
        • 10 GB of total user data storage per domain

        ", "Select": "

        The Select operation returns a set of attributes for ItemNames that match the select expression. Select is similar to the standard SQL SELECT statement.

        The total size of the response cannot exceed 1 MB in total size. Amazon SimpleDB automatically adjusts the number of items returned per page to enforce this limit. For example, if the client asks to retrieve 2500 items, but each individual item is 10 kB in size, the system returns 100 items and an appropriate NextToken so the client can access the next page of results.

        For information on how to construct select expressions, see Using Select to Create Amazon SimpleDB Queries in the Developer Guide.

        " }, "service": "Amazon SimpleDB is a web service providing the core database functions of data indexing and querying in the cloud. By offloading the time and effort associated with building and operating a web-scale database, SimpleDB provides developers the freedom to focus on application development.

        A traditional, clustered relational database requires a sizable upfront capital outlay, is complex to design, and often requires extensive and repetitive database administration. Amazon SimpleDB is dramatically simpler, requiring no schema, automatically indexing your data and providing a simple API for storage and access. This approach eliminates the administrative burden of data modeling, index maintenance, and performance tuning. Developers gain access to this functionality within Amazon's proven computing environment, are able to scale instantly, and pay only for what they use.

        Visit http://aws.amazon.com/simpledb/ for more information.

        ", "shapes": { "Attribute": { "base": "

        ", "refs": { "AttributeList$member": null } }, "AttributeDoesNotExist": { "base": "

        The specified attribute does not exist.

        ", "refs": { } }, "AttributeList": { "base": null, "refs": { "GetAttributesResult$Attributes": "The list of attributes returned by the operation.", "Item$Attributes": "A list of attributes." } }, "AttributeNameList": { "base": null, "refs": { "GetAttributesRequest$AttributeNames": "The names of the attributes." } }, "BatchDeleteAttributesRequest": { "base": null, "refs": { } }, "BatchPutAttributesRequest": { "base": null, "refs": { } }, "Boolean": { "base": null, "refs": { "GetAttributesRequest$ConsistentRead": "Determines whether or not strong consistency should be enforced when data is read from SimpleDB. If true, any data previously written to SimpleDB will be returned. Otherwise, results will be consistent eventually, and the client may not see data that was written immediately before your read.", "ReplaceableAttribute$Replace": "A flag specifying whether or not to replace the attribute/value pair or to add a new attribute/value pair. The default setting is false.", "SelectRequest$ConsistentRead": "Determines whether or not strong consistency should be enforced when data is read from SimpleDB. If true, any data previously written to SimpleDB will be returned. Otherwise, results will be consistent eventually, and the client may not see data that was written immediately before your read.", "UpdateCondition$Exists": "

        A value specifying whether or not the specified attribute must exist with the specified value in order for the update condition to be satisfied. Specify true if the attribute must exist for the update condition to be satisfied. Specify false if the attribute should not exist in order for the update condition to be satisfied.

        " } }, "CreateDomainRequest": { "base": null, "refs": { } }, "DeletableAttribute": { "base": "

        ", "refs": { "DeletableAttributeList$member": null } }, "DeletableAttributeList": { "base": null, "refs": { "DeletableItem$Attributes": null, "DeleteAttributesRequest$Attributes": "A list of Attributes. Similar to columns on a spreadsheet, attributes represent categories of data that can be assigned to items." } }, "DeletableItem": { "base": null, "refs": { "DeletableItemList$member": null } }, "DeletableItemList": { "base": null, "refs": { "BatchDeleteAttributesRequest$Items": "A list of items on which to perform the operation." } }, "DeleteAttributesRequest": { "base": null, "refs": { } }, "DeleteDomainRequest": { "base": null, "refs": { } }, "DomainMetadataRequest": { "base": null, "refs": { } }, "DomainMetadataResult": { "base": null, "refs": { } }, "DomainNameList": { "base": null, "refs": { "ListDomainsResult$DomainNames": "A list of domain names that match the expression." } }, "DuplicateItemName": { "base": "

        The item name was specified more than once.

        ", "refs": { } }, "Float": { "base": null, "refs": { "AttributeDoesNotExist$BoxUsage": null, "DuplicateItemName$BoxUsage": null, "InvalidNextToken$BoxUsage": null, "InvalidNumberPredicates$BoxUsage": null, "InvalidNumberValueTests$BoxUsage": null, "InvalidParameterValue$BoxUsage": null, "InvalidQueryExpression$BoxUsage": null, "MissingParameter$BoxUsage": null, "NoSuchDomain$BoxUsage": null, "NumberDomainAttributesExceeded$BoxUsage": null, "NumberDomainBytesExceeded$BoxUsage": null, "NumberDomainsExceeded$BoxUsage": null, "NumberItemAttributesExceeded$BoxUsage": null, "NumberSubmittedAttributesExceeded$BoxUsage": null, "NumberSubmittedItemsExceeded$BoxUsage": null, "RequestTimeout$BoxUsage": null, "TooManyRequestedAttributes$BoxUsage": null } }, "GetAttributesRequest": { "base": null, "refs": { } }, "GetAttributesResult": { "base": null, "refs": { } }, "Integer": { "base": null, "refs": { "DomainMetadataResult$ItemCount": "The number of all items in the domain.", "DomainMetadataResult$AttributeNameCount": "The number of unique attribute names in the domain.", "DomainMetadataResult$AttributeValueCount": "The number of all attribute name/value pairs in the domain.", "DomainMetadataResult$Timestamp": "The data and time when metadata was calculated, in Epoch (UNIX) seconds.", "ListDomainsRequest$MaxNumberOfDomains": "The maximum number of domain names you want returned. The range is 1 to 100. The default setting is 100." } }, "InvalidNextToken": { "base": "

        The specified NextToken is not valid.

        ", "refs": { } }, "InvalidNumberPredicates": { "base": "

        Too many predicates exist in the query expression.

        ", "refs": { } }, "InvalidNumberValueTests": { "base": "

        Too many predicates exist in the query expression.

        ", "refs": { } }, "InvalidParameterValue": { "base": "

        The value for a parameter is invalid.

        ", "refs": { } }, "InvalidQueryExpression": { "base": "

        The specified query expression syntax is not valid.

        ", "refs": { } }, "Item": { "base": "

        ", "refs": { "ItemList$member": null } }, "ItemList": { "base": null, "refs": { "SelectResult$Items": "A list of items that match the select expression." } }, "ListDomainsRequest": { "base": null, "refs": { } }, "ListDomainsResult": { "base": null, "refs": { } }, "Long": { "base": null, "refs": { "DomainMetadataResult$ItemNamesSizeBytes": "The total size of all item names in the domain, in bytes.", "DomainMetadataResult$AttributeNamesSizeBytes": "The total size of all unique attribute names in the domain, in bytes.", "DomainMetadataResult$AttributeValuesSizeBytes": "The total size of all attribute values in the domain, in bytes." } }, "MissingParameter": { "base": "

        The request must contain the specified missing parameter.

        ", "refs": { } }, "NoSuchDomain": { "base": "

        The specified domain does not exist.

        ", "refs": { } }, "NumberDomainAttributesExceeded": { "base": "

        Too many attributes in this domain.

        ", "refs": { } }, "NumberDomainBytesExceeded": { "base": "

        Too many bytes in this domain.

        ", "refs": { } }, "NumberDomainsExceeded": { "base": "

        Too many domains exist per this account.

        ", "refs": { } }, "NumberItemAttributesExceeded": { "base": "

        Too many attributes in this item.

        ", "refs": { } }, "NumberSubmittedAttributesExceeded": { "base": "

        Too many attributes exist in a single call.

        ", "refs": { } }, "NumberSubmittedItemsExceeded": { "base": "

        Too many items exist in a single call.

        ", "refs": { } }, "PutAttributesRequest": { "base": null, "refs": { } }, "ReplaceableAttribute": { "base": "

        ", "refs": { "ReplaceableAttributeList$member": null } }, "ReplaceableAttributeList": { "base": null, "refs": { "PutAttributesRequest$Attributes": "The list of attributes.", "ReplaceableItem$Attributes": "The list of attributes for a replaceable item." } }, "ReplaceableItem": { "base": "

        ", "refs": { "ReplaceableItemList$member": null } }, "ReplaceableItemList": { "base": null, "refs": { "BatchPutAttributesRequest$Items": "A list of items on which to perform the operation." } }, "RequestTimeout": { "base": "

        A timeout occurred when attempting to query the specified domain with specified query expression.

        ", "refs": { } }, "SelectRequest": { "base": null, "refs": { } }, "SelectResult": { "base": null, "refs": { } }, "String": { "base": null, "refs": { "Attribute$Name": "The name of the attribute.", "Attribute$AlternateNameEncoding": "

        ", "Attribute$Value": "The value of the attribute.", "Attribute$AlternateValueEncoding": "

        ", "AttributeNameList$member": null, "BatchDeleteAttributesRequest$DomainName": "The name of the domain in which the attributes are being deleted.", "BatchPutAttributesRequest$DomainName": "The name of the domain in which the attributes are being stored.", "CreateDomainRequest$DomainName": "The name of the domain to create. The name can range between 3 and 255 characters and can contain the following characters: a-z, A-Z, 0-9, '_', '-', and '.'.", "DeletableAttribute$Name": "The name of the attribute.", "DeletableAttribute$Value": "The value of the attribute.", "DeletableItem$Name": null, "DeleteAttributesRequest$DomainName": "The name of the domain in which to perform the operation.", "DeleteAttributesRequest$ItemName": "The name of the item. Similar to rows on a spreadsheet, items represent individual objects that contain one or more value-attribute pairs.", "DeleteDomainRequest$DomainName": "The name of the domain to delete.", "DomainMetadataRequest$DomainName": "The name of the domain for which to display the metadata of.", "DomainNameList$member": null, "GetAttributesRequest$DomainName": "The name of the domain in which to perform the operation.", "GetAttributesRequest$ItemName": "The name of the item.", "Item$Name": "The name of the item.", "Item$AlternateNameEncoding": "

        ", "ListDomainsRequest$NextToken": "A string informing Amazon SimpleDB where to start the next list of domain names.", "ListDomainsResult$NextToken": "An opaque token indicating that there are more domains than the specified MaxNumberOfDomains still available.", "PutAttributesRequest$DomainName": "The name of the domain in which to perform the operation.", "PutAttributesRequest$ItemName": "The name of the item.", "ReplaceableAttribute$Name": "The name of the replaceable attribute.", "ReplaceableAttribute$Value": "The value of the replaceable attribute.", "ReplaceableItem$Name": "The name of the replaceable item.", "SelectRequest$SelectExpression": "The expression used to query the domain.", "SelectRequest$NextToken": "A string informing Amazon SimpleDB where to start the next list of ItemNames.", "SelectResult$NextToken": "An opaque token indicating that more items than MaxNumberOfItems were matched, the response size exceeded 1 megabyte, or the execution time exceeded 5 seconds.", "UpdateCondition$Name": "

        The name of the attribute involved in the condition.

        ", "UpdateCondition$Value": "

        The value of an attribute. This value can only be specified when the Exists parameter is equal to true.

        " } }, "TooManyRequestedAttributes": { "base": "

        Too many attributes requested.

        ", "refs": { } }, "UpdateCondition": { "base": "

        Specifies the conditions under which data should be updated. If an update condition is specified for a request, the data will only be updated if the condition is satisfied. For example, if an attribute with a specific name and value exists, or if a specific attribute doesn't exist.

        ", "refs": { "DeleteAttributesRequest$Expected": "The update condition which, if specified, determines whether the specified attributes will be deleted or not. The update condition must be satisfied in order for this request to be processed and the attributes to be deleted.", "PutAttributesRequest$Expected": "The update condition which, if specified, determines whether the specified attributes will be updated or not. The update condition must be satisfied in order for this request to be processed and the attributes to be updated." } } } } aws-sdk-go-1.4.22/models/apis/sdb/2009-04-15/paginators-1.json000066400000000000000000000004751300374646400230160ustar00rootroot00000000000000{ "pagination": { "ListDomains": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxNumberOfDomains", "result_key": "DomainNames" }, "Select": { "input_token": "NextToken", "output_token": "NextToken", "result_key": "Items" } } } aws-sdk-go-1.4.22/models/apis/servicecatalog/000077500000000000000000000000001300374646400207755ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/servicecatalog/2015-12-10/000077500000000000000000000000001300374646400220225ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/servicecatalog/2015-12-10/api-2.json000066400000000000000000000531751300374646400236400ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-12-10", "endpointPrefix":"servicecatalog", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"AWS Service Catalog", "signatureVersion":"v4", "targetPrefix":"AWS242ServiceCatalogService" }, "operations":{ "DescribeProduct":{ "name":"DescribeProduct", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeProductInput"}, "output":{"shape":"DescribeProductOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParametersException"} ] }, "DescribeProductView":{ "name":"DescribeProductView", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeProductViewInput"}, "output":{"shape":"DescribeProductViewOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParametersException"} ] }, "DescribeProvisioningParameters":{ "name":"DescribeProvisioningParameters", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeProvisioningParametersInput"}, "output":{"shape":"DescribeProvisioningParametersOutput"}, "errors":[ {"shape":"InvalidParametersException"}, {"shape":"ResourceNotFoundException"} ] }, "DescribeRecord":{ "name":"DescribeRecord", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeRecordInput"}, "output":{"shape":"DescribeRecordOutput"}, "errors":[ {"shape":"ResourceNotFoundException"} ] }, "ListLaunchPaths":{ "name":"ListLaunchPaths", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListLaunchPathsInput"}, "output":{"shape":"ListLaunchPathsOutput"}, "errors":[ {"shape":"InvalidParametersException"}, {"shape":"ResourceNotFoundException"} ] }, "ListRecordHistory":{ "name":"ListRecordHistory", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListRecordHistoryInput"}, "output":{"shape":"ListRecordHistoryOutput"}, "errors":[ {"shape":"InvalidParametersException"} ] }, "ProvisionProduct":{ "name":"ProvisionProduct", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ProvisionProductInput"}, "output":{"shape":"ProvisionProductOutput"}, "errors":[ {"shape":"InvalidParametersException"}, {"shape":"ResourceNotFoundException"}, {"shape":"DuplicateResourceException"} ] }, "ScanProvisionedProducts":{ "name":"ScanProvisionedProducts", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ScanProvisionedProductsInput"}, "output":{"shape":"ScanProvisionedProductsOutput"}, "errors":[ {"shape":"InvalidParametersException"} ] }, "SearchProducts":{ "name":"SearchProducts", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SearchProductsInput"}, "output":{"shape":"SearchProductsOutput"}, "errors":[ {"shape":"InvalidParametersException"} ] }, "TerminateProvisionedProduct":{ "name":"TerminateProvisionedProduct", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"TerminateProvisionedProductInput"}, "output":{"shape":"TerminateProvisionedProductOutput"}, "errors":[ {"shape":"ResourceNotFoundException"} ] }, "UpdateProvisionedProduct":{ "name":"UpdateProvisionedProduct", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateProvisionedProductInput"}, "output":{"shape":"UpdateProvisionedProductOutput"}, "errors":[ {"shape":"InvalidParametersException"}, {"shape":"ResourceNotFoundException"} ] } }, "shapes":{ "AcceptLanguage":{"type":"string"}, "AccessLevelFilter":{ "type":"structure", "members":{ "Key":{"shape":"AccessLevelFilterKey"}, "Value":{"shape":"AccessLevelFilterValue"} } }, "AccessLevelFilterKey":{ "type":"string", "enum":[ "Account", "Role", "User" ] }, "AccessLevelFilterValue":{"type":"string"}, "AllowedValue":{"type":"string"}, "AllowedValues":{ "type":"list", "member":{"shape":"AllowedValue"} }, "ApproximateCount":{"type":"integer"}, "AttributeValue":{"type":"string"}, "ConstraintDescription":{"type":"string"}, "ConstraintSummaries":{ "type":"list", "member":{"shape":"ConstraintSummary"} }, "ConstraintSummary":{ "type":"structure", "members":{ "Type":{"shape":"ConstraintType"}, "Description":{"shape":"ConstraintDescription"} } }, "ConstraintType":{"type":"string"}, "CreatedTime":{"type":"timestamp"}, "DefaultValue":{"type":"string"}, "DescribeProductInput":{ "type":"structure", "required":["Id"], "members":{ "AcceptLanguage":{"shape":"AcceptLanguage"}, "Id":{"shape":"Id"} } }, "DescribeProductOutput":{ "type":"structure", "members":{ "ProductViewSummary":{"shape":"ProductViewSummary"}, "ProvisioningArtifacts":{"shape":"ProvisioningArtifacts"} } }, "DescribeProductViewInput":{ "type":"structure", "required":["Id"], "members":{ "AcceptLanguage":{"shape":"AcceptLanguage"}, "Id":{"shape":"Id"} } }, "DescribeProductViewOutput":{ "type":"structure", "members":{ "ProductViewSummary":{"shape":"ProductViewSummary"}, "ProvisioningArtifacts":{"shape":"ProvisioningArtifacts"} } }, "DescribeProvisioningParametersInput":{ "type":"structure", "required":[ "ProductId", "ProvisioningArtifactId" ], "members":{ "AcceptLanguage":{"shape":"AcceptLanguage"}, "ProductId":{"shape":"Id"}, "ProvisioningArtifactId":{"shape":"Id"}, "PathId":{"shape":"Id"} } }, "DescribeProvisioningParametersOutput":{ "type":"structure", "members":{ "ProvisioningArtifactParameters":{"shape":"ProvisioningArtifactParameters"}, "ConstraintSummaries":{"shape":"ConstraintSummaries"}, "UsageInstructions":{"shape":"UsageInstructions"} } }, "DescribeRecordInput":{ "type":"structure", "required":["Id"], "members":{ "AcceptLanguage":{"shape":"AcceptLanguage"}, "Id":{"shape":"Id"}, "PageToken":{"shape":"PageToken"}, "PageSize":{"shape":"PageSize"} } }, "DescribeRecordOutput":{ "type":"structure", "members":{ "RecordDetail":{"shape":"RecordDetail"}, "RecordOutputs":{"shape":"RecordOutputs"}, "NextPageToken":{"shape":"PageToken"} } }, "Description":{"type":"string"}, "DuplicateResourceException":{ "type":"structure", "members":{ }, "exception":true }, "ErrorCode":{"type":"string"}, "ErrorDescription":{"type":"string"}, "HasDefaultPath":{"type":"boolean"}, "Id":{ "type":"string", "min":1 }, "IdempotencyToken":{ "type":"string", "max":128, "min":1, "pattern":"[a-zA-Z0-9][a-zA-Z0-9_-]*" }, "IgnoreErrors":{"type":"boolean"}, "InstructionType":{"type":"string"}, "InstructionValue":{"type":"string"}, "InvalidParametersException":{ "type":"structure", "members":{ }, "exception":true }, "LastRequestId":{"type":"string"}, "LaunchPathSummaries":{ "type":"list", "member":{"shape":"LaunchPathSummary"} }, "LaunchPathSummary":{ "type":"structure", "members":{ "Id":{"shape":"Id"}, "ConstraintSummaries":{"shape":"ConstraintSummaries"}, "Tags":{"shape":"Tags"}, "Name":{"shape":"PortfolioName"} } }, "ListLaunchPathsInput":{ "type":"structure", "required":["ProductId"], "members":{ "AcceptLanguage":{"shape":"AcceptLanguage"}, "ProductId":{"shape":"Id"}, "PageSize":{"shape":"PageSize"}, "PageToken":{"shape":"PageToken"} } }, "ListLaunchPathsOutput":{ "type":"structure", "members":{ "LaunchPathSummaries":{"shape":"LaunchPathSummaries"}, "NextPageToken":{"shape":"PageToken"} } }, "ListRecordHistoryInput":{ "type":"structure", "members":{ "AcceptLanguage":{"shape":"AcceptLanguage"}, "AccessLevelFilter":{"shape":"AccessLevelFilter"}, "SearchFilter":{"shape":"ListRecordHistorySearchFilter"}, "PageSize":{"shape":"PageSize"}, "PageToken":{"shape":"PageToken"} } }, "ListRecordHistoryOutput":{ "type":"structure", "members":{ "RecordDetails":{"shape":"RecordDetails"}, "NextPageToken":{"shape":"PageToken"} } }, "ListRecordHistorySearchFilter":{ "type":"structure", "members":{ "Key":{"shape":"SearchFilterKey"}, "Value":{"shape":"SearchFilterValue"} } }, "NoEcho":{"type":"boolean"}, "NotificationArn":{ "type":"string", "max":1224, "min":1, "pattern":"arn:[a-z0-9-\\.]{1,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[^/].{0,1023}" }, "NotificationArns":{ "type":"list", "member":{"shape":"NotificationArn"}, "max":5 }, "OutputKey":{"type":"string"}, "OutputValue":{"type":"string"}, "PageSize":{ "type":"integer", "max":20, "min":0 }, "PageToken":{ "type":"string", "pattern":"[\\u0009\\u000a\\u000d\\u0020-\\uD7FF\\uE000-\\uFFFD]*" }, "ParameterConstraints":{ "type":"structure", "members":{ "AllowedValues":{"shape":"AllowedValues"} } }, "ParameterKey":{"type":"string"}, "ParameterType":{"type":"string"}, "ParameterValue":{"type":"string"}, "PortfolioName":{"type":"string"}, "ProductType":{"type":"string"}, "ProductViewAggregationType":{"type":"string"}, "ProductViewAggregationValue":{ "type":"structure", "members":{ "Value":{"shape":"AttributeValue"}, "ApproximateCount":{"shape":"ApproximateCount"} } }, "ProductViewAggregationValues":{ "type":"list", "member":{"shape":"ProductViewAggregationValue"} }, "ProductViewAggregations":{ "type":"map", "key":{"shape":"ProductViewAggregationType"}, "value":{"shape":"ProductViewAggregationValues"} }, "ProductViewDistributor":{"type":"string"}, "ProductViewFilterBy":{ "type":"string", "enum":[ "FullTextSearch", "Owner", "ProductType" ] }, "ProductViewFilterValue":{"type":"string"}, "ProductViewFilterValues":{ "type":"list", "member":{"shape":"ProductViewFilterValue"} }, "ProductViewFilters":{ "type":"map", "key":{"shape":"ProductViewFilterBy"}, "value":{"shape":"ProductViewFilterValues"} }, "ProductViewName":{"type":"string"}, "ProductViewOwner":{"type":"string"}, "ProductViewShortDescription":{"type":"string"}, "ProductViewSortBy":{ "type":"string", "enum":[ "Title", "VersionCount", "CreationDate" ] }, "ProductViewSummaries":{ "type":"list", "member":{"shape":"ProductViewSummary"} }, "ProductViewSummary":{ "type":"structure", "members":{ "Id":{"shape":"Id"}, "ProductId":{"shape":"Id"}, "Name":{"shape":"ProductViewName"}, "Owner":{"shape":"ProductViewOwner"}, "ShortDescription":{"shape":"ProductViewShortDescription"}, "Type":{"shape":"ProductType"}, "Distributor":{"shape":"ProductViewDistributor"}, "HasDefaultPath":{"shape":"HasDefaultPath"}, "SupportEmail":{"shape":"SupportEmail"}, "SupportDescription":{"shape":"SupportDescription"}, "SupportUrl":{"shape":"SupportUrl"} } }, "ProvisionProductInput":{ "type":"structure", "required":[ "ProductId", "ProvisioningArtifactId", "ProvisionedProductName", "ProvisionToken" ], "members":{ "AcceptLanguage":{"shape":"AcceptLanguage"}, "ProductId":{"shape":"Id"}, "ProvisioningArtifactId":{"shape":"Id"}, "PathId":{"shape":"Id"}, "ProvisionedProductName":{"shape":"ProvisionedProductName"}, "ProvisioningParameters":{"shape":"ProvisioningParameters"}, "Tags":{"shape":"Tags"}, "NotificationArns":{"shape":"NotificationArns"}, "ProvisionToken":{ "shape":"IdempotencyToken", "idempotencyToken":true } } }, "ProvisionProductOutput":{ "type":"structure", "members":{ "RecordDetail":{"shape":"RecordDetail"} } }, "ProvisionedProductDetail":{ "type":"structure", "members":{ "Name":{"shape":"ProvisionedProductNameOrArn"}, "Arn":{"shape":"ProvisionedProductNameOrArn"}, "Type":{"shape":"ProvisionedProductType"}, "Id":{"shape":"ProvisionedProductId"}, "Status":{"shape":"RecordStatus"}, "StatusMessage":{"shape":"ProvisionedProductStatusMessage"}, "CreatedTime":{"shape":"CreatedTime"}, "IdempotencyToken":{"shape":"IdempotencyToken"}, "LastRecordId":{"shape":"LastRequestId"} } }, "ProvisionedProductDetails":{ "type":"list", "member":{"shape":"ProvisionedProductDetail"} }, "ProvisionedProductId":{"type":"string"}, "ProvisionedProductName":{"type":"string"}, "ProvisionedProductNameOrArn":{ "type":"string", "max":1224, "min":1, "pattern":"[a-zA-Z0-9][a-zA-Z0-9_-]{0,127}|arn:[a-z0-9-\\.]{1,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[^/].{0,1023}" }, "ProvisionedProductStatusMessage":{"type":"string"}, "ProvisionedProductType":{"type":"string"}, "ProvisioningArtifact":{ "type":"structure", "members":{ "Id":{"shape":"Id"}, "Name":{"shape":"ProvisioningArtifactName"}, "Description":{"shape":"ProvisioningArtifactDescription"}, "CreatedTime":{"shape":"ProvisioningArtifactCreatedTime"} } }, "ProvisioningArtifactCreatedTime":{"type":"timestamp"}, "ProvisioningArtifactDescription":{"type":"string"}, "ProvisioningArtifactName":{"type":"string"}, "ProvisioningArtifactParameter":{ "type":"structure", "members":{ "ParameterKey":{"shape":"ParameterKey"}, "DefaultValue":{"shape":"DefaultValue"}, "ParameterType":{"shape":"ParameterType"}, "IsNoEcho":{"shape":"NoEcho"}, "Description":{"shape":"Description"}, "ParameterConstraints":{"shape":"ParameterConstraints"} } }, "ProvisioningArtifactParameters":{ "type":"list", "member":{"shape":"ProvisioningArtifactParameter"} }, "ProvisioningArtifacts":{ "type":"list", "member":{"shape":"ProvisioningArtifact"} }, "ProvisioningParameter":{ "type":"structure", "members":{ "Key":{"shape":"ParameterKey"}, "Value":{"shape":"ParameterValue"} } }, "ProvisioningParameters":{ "type":"list", "member":{"shape":"ProvisioningParameter"} }, "RecordDetail":{ "type":"structure", "members":{ "RecordId":{"shape":"Id"}, "ProvisionedProductName":{"shape":"ProvisionedProductName"}, "Status":{"shape":"RecordStatus"}, "CreatedTime":{"shape":"CreatedTime"}, "UpdatedTime":{"shape":"UpdatedTime"}, "ProvisionedProductType":{"shape":"ProvisionedProductType"}, "RecordType":{"shape":"RecordType"}, "ProvisionedProductId":{"shape":"Id"}, "ProductId":{"shape":"Id"}, "ProvisioningArtifactId":{"shape":"Id"}, "PathId":{"shape":"Id"}, "RecordErrors":{"shape":"RecordErrors"}, "RecordTags":{"shape":"RecordTags"} } }, "RecordDetails":{ "type":"list", "member":{"shape":"RecordDetail"} }, "RecordError":{ "type":"structure", "members":{ "Code":{"shape":"ErrorCode"}, "Description":{"shape":"ErrorDescription"} } }, "RecordErrors":{ "type":"list", "member":{"shape":"RecordError"} }, "RecordOutput":{ "type":"structure", "members":{ "OutputKey":{"shape":"OutputKey"}, "OutputValue":{"shape":"OutputValue"}, "Description":{"shape":"Description"} } }, "RecordOutputs":{ "type":"list", "member":{"shape":"RecordOutput"} }, "RecordStatus":{ "type":"string", "enum":[ "IN_PROGRESS", "SUCCEEDED", "ERROR" ] }, "RecordTag":{ "type":"structure", "members":{ "Key":{"shape":"RecordTagKey"}, "Value":{"shape":"RecordTagValue"} } }, "RecordTagKey":{ "type":"string", "max":128, "min":1, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-%@]*)$" }, "RecordTagValue":{ "type":"string", "max":256, "min":1, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-%@]*)$" }, "RecordTags":{ "type":"list", "member":{"shape":"RecordTag"}, "max":10 }, "RecordType":{"type":"string"}, "ResourceNotFoundException":{ "type":"structure", "members":{ }, "exception":true }, "ScanProvisionedProductsInput":{ "type":"structure", "members":{ "AcceptLanguage":{"shape":"AcceptLanguage"}, "AccessLevelFilter":{"shape":"AccessLevelFilter"}, "PageSize":{"shape":"PageSize"}, "PageToken":{"shape":"PageToken"} } }, "ScanProvisionedProductsOutput":{ "type":"structure", "members":{ "ProvisionedProducts":{"shape":"ProvisionedProductDetails"}, "NextPageToken":{"shape":"PageToken"} } }, "SearchFilterKey":{"type":"string"}, "SearchFilterValue":{"type":"string"}, "SearchProductsInput":{ "type":"structure", "members":{ "AcceptLanguage":{"shape":"AcceptLanguage"}, "Filters":{"shape":"ProductViewFilters"}, "PageSize":{"shape":"PageSize"}, "SortBy":{"shape":"ProductViewSortBy"}, "SortOrder":{"shape":"SortOrder"}, "PageToken":{"shape":"PageToken"} } }, "SearchProductsOutput":{ "type":"structure", "members":{ "ProductViewSummaries":{"shape":"ProductViewSummaries"}, "ProductViewAggregations":{"shape":"ProductViewAggregations"}, "NextPageToken":{"shape":"PageToken"} } }, "SortOrder":{ "type":"string", "enum":[ "ASCENDING", "DESCENDING" ] }, "SupportDescription":{"type":"string"}, "SupportEmail":{"type":"string"}, "SupportUrl":{"type":"string"}, "Tag":{ "type":"structure", "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{ "type":"string", "max":128, "min":1, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-%@]*)$" }, "TagValue":{ "type":"string", "max":256, "min":1, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-%@]*)$" }, "Tags":{ "type":"list", "member":{"shape":"Tag"}, "max":10 }, "TerminateProvisionedProductInput":{ "type":"structure", "required":["TerminateToken"], "members":{ "ProvisionedProductName":{"shape":"ProvisionedProductNameOrArn"}, "ProvisionedProductId":{"shape":"Id"}, "TerminateToken":{ "shape":"IdempotencyToken", "idempotencyToken":true }, "IgnoreErrors":{"shape":"IgnoreErrors"}, "AcceptLanguage":{"shape":"AcceptLanguage"} } }, "TerminateProvisionedProductOutput":{ "type":"structure", "members":{ "RecordDetail":{"shape":"RecordDetail"} } }, "UpdateProvisionedProductInput":{ "type":"structure", "required":["UpdateToken"], "members":{ "AcceptLanguage":{"shape":"AcceptLanguage"}, "ProvisionedProductName":{"shape":"ProvisionedProductNameOrArn"}, "ProvisionedProductId":{"shape":"Id"}, "ProductId":{"shape":"Id"}, "ProvisioningArtifactId":{"shape":"Id"}, "PathId":{"shape":"Id"}, "ProvisioningParameters":{"shape":"UpdateProvisioningParameters"}, "UpdateToken":{ "shape":"IdempotencyToken", "idempotencyToken":true } } }, "UpdateProvisionedProductOutput":{ "type":"structure", "members":{ "RecordDetail":{"shape":"RecordDetail"} } }, "UpdateProvisioningParameter":{ "type":"structure", "members":{ "Key":{"shape":"ParameterKey"}, "Value":{"shape":"ParameterValue"}, "UsePreviousValue":{"shape":"UsePreviousValue"} } }, "UpdateProvisioningParameters":{ "type":"list", "member":{"shape":"UpdateProvisioningParameter"} }, "UpdatedTime":{"type":"timestamp"}, "UsageInstruction":{ "type":"structure", "members":{ "Type":{"shape":"InstructionType"}, "Value":{"shape":"InstructionValue"} } }, "UsageInstructions":{ "type":"list", "member":{"shape":"UsageInstruction"} }, "UsePreviousValue":{"type":"boolean"} } } aws-sdk-go-1.4.22/models/apis/servicecatalog/2015-12-10/docs-2.json000066400000000000000000001161721300374646400240140ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS Service Catalog

        Overview

        AWS Service Catalog allows organizations to create and manage catalogs of IT services that are approved for use on AWS. This documentation provides reference material for the AWS Service Catalog end user API. To get the most out of this documentation, you need to be familiar with the terminology discussed in AWS Service Catalog Concepts.

        Additional Resources

        ", "operations": { "DescribeProduct": "

        Retrieves information about a specified product.

        This operation is functionally identical to DescribeProductView except that it takes as input ProductId instead of ProductViewId.

        ", "DescribeProductView": "

        Retrieves information about a specified product.

        This operation is functionally identical to DescribeProduct except that it takes as input ProductViewId instead of ProductId.

        ", "DescribeProvisioningParameters": "

        Provides information about parameters required to provision a specified product in a specified manner. Use this operation to obtain the list of ProvisioningArtifactParameters parameters available to call the ProvisionProduct operation for the specified product.

        ", "DescribeRecord": "

        Retrieves a paginated list of the full details of a specific request. Use this operation after calling a request operation (ProvisionProduct, TerminateProvisionedProduct, or UpdateProvisionedProduct).

        ", "ListLaunchPaths": "

        Returns a paginated list of all paths to a specified product. A path is how the user has access to a specified product, and is necessary when provisioning a product. A path also determines the constraints put on the product.

        ", "ListRecordHistory": "

        Returns a paginated list of all performed requests, in the form of RecordDetails objects that are filtered as specified.

        ", "ProvisionProduct": "

        Requests a Provision of a specified product. A ProvisionedProduct is a resourced instance for a product. For example, provisioning a CloudFormation-template-backed product results in launching a CloudFormation stack and all the underlying resources that come with it.

        You can check the status of this request using the DescribeRecord operation.

        ", "ScanProvisionedProducts": "

        Returns a paginated list of all the ProvisionedProduct objects that are currently available (not terminated).

        ", "SearchProducts": "

        Returns a paginated list all of the Products objects to which the caller has access.

        The output of this operation can be used as input for other operations, such as DescribeProductView.

        ", "TerminateProvisionedProduct": "

        Requests termination of an existing ProvisionedProduct object. If there are Tags associated with the object, they are terminated when the ProvisionedProduct object is terminated.

        This operation does not delete any records associated with the ProvisionedProduct object.

        You can check the status of this request using the DescribeRecord operation.

        ", "UpdateProvisionedProduct": "

        Requests updates to the configuration of an existing ProvisionedProduct object. If there are tags associated with the object, they cannot be updated or added with this operation. Depending on the specific updates requested, this operation may update with no interruption, with some interruption, or replace the ProvisionedProduct object entirely.

        You can check the status of this request using the DescribeRecord operation.

        " }, "shapes": { "AcceptLanguage": { "base": null, "refs": { "DescribeProductInput$AcceptLanguage": "

        The language code to use for this operation. Supported language codes are as follows:

        \"en\" (English)

        \"jp\" (Japanese)

        \"zh\" (Chinese)

        If no code is specified, \"en\" is used as the default.

        ", "DescribeProductViewInput$AcceptLanguage": "

        The language code to use for this operation. Supported language codes are as follows:

        \"en\" (English)

        \"jp\" (Japanese)

        \"zh\" (Chinese)

        If no code is specified, \"en\" is used as the default.

        ", "DescribeProvisioningParametersInput$AcceptLanguage": "

        The language code to use for this operation. Supported language codes are as follows:

        \"en\" (English)

        \"jp\" (Japanese)

        \"zh\" (Chinese)

        If no code is specified, \"en\" is used as the default.

        ", "DescribeRecordInput$AcceptLanguage": "

        The language code to use for this operation. Supported language codes are as follows:

        \"en\" (English)

        \"jp\" (Japanese)

        \"zh\" (Chinese)

        If no code is specified, \"en\" is used as the default.

        ", "ListLaunchPathsInput$AcceptLanguage": "

        The language code to use for this operation. Supported language codes are as follows:

        \"en\" (English)

        \"jp\" (Japanese)

        \"zh\" (Chinese)

        If no code is specified, \"en\" is used as the default.

        ", "ListRecordHistoryInput$AcceptLanguage": "

        The language code to use for this operation. Supported language codes are as follows:

        \"en\" (English)

        \"jp\" (Japanese)

        \"zh\" (Chinese)

        If no code is specified, \"en\" is used as the default.

        ", "ProvisionProductInput$AcceptLanguage": "

        The language code to use for this operation. Supported language codes are as follows:

        \"en\" (English)

        \"jp\" (Japanese)

        \"zh\" (Chinese)

        If no code is specified, \"en\" is used as the default.

        ", "ScanProvisionedProductsInput$AcceptLanguage": "

        The language code to use for this operation. Supported language codes are as follows:

        \"en\" (English)

        \"jp\" (Japanese)

        \"zh\" (Chinese)

        If no code is specified, \"en\" is used as the default.

        ", "SearchProductsInput$AcceptLanguage": "

        The language code to use for this operation. Supported language codes are as follows:

        \"en\" (English)

        \"jp\" (Japanese)

        \"zh\" (Chinese)

        If no code is specified, \"en\" is used as the default.

        ", "TerminateProvisionedProductInput$AcceptLanguage": "

        The language code to use for this operation. Supported language codes are as follows:

        \"en\" (English)

        \"jp\" (Japanese)

        \"zh\" (Chinese)

        If no code is specified, \"en\" is used as the default.

        ", "UpdateProvisionedProductInput$AcceptLanguage": "

        The language code to use for this operation. Supported language codes are as follows:

        \"en\" (English)

        \"jp\" (Japanese)

        \"zh\" (Chinese)

        If no code is specified, \"en\" is used as the default.

        " } }, "AccessLevelFilter": { "base": "

        The access level to limit results.

        ", "refs": { "ListRecordHistoryInput$AccessLevelFilter": "

        The access level for obtaining results. If left unspecified, User level access is used.

        ", "ScanProvisionedProductsInput$AccessLevelFilter": "

        The access level for obtaining results. If left unspecified, User level access is used.

        " } }, "AccessLevelFilterKey": { "base": null, "refs": { "AccessLevelFilter$Key": "

        Specifies the access level.

        Account allows results at the account level.

        Role allows results based on the federated role of the specified user.

        User allows results limited to the specified user.

        " } }, "AccessLevelFilterValue": { "base": null, "refs": { "AccessLevelFilter$Value": "

        Specifies the user to which the access level applies. A value of Self is currently supported.

        " } }, "AllowedValue": { "base": null, "refs": { "AllowedValues$member": null } }, "AllowedValues": { "base": null, "refs": { "ParameterConstraints$AllowedValues": "

        The values that the administrator has allowed for the parameter.

        " } }, "ApproximateCount": { "base": null, "refs": { "ProductViewAggregationValue$ApproximateCount": "

        An approximate count of the products that match the value.

        " } }, "AttributeValue": { "base": null, "refs": { "ProductViewAggregationValue$Value": "

        The value of the product view aggregation.

        " } }, "ConstraintDescription": { "base": null, "refs": { "ConstraintSummary$Description": "

        The text description of the constraint.

        " } }, "ConstraintSummaries": { "base": null, "refs": { "DescribeProvisioningParametersOutput$ConstraintSummaries": "

        The list of constraint summaries that apply to provisioning this product.

        ", "LaunchPathSummary$ConstraintSummaries": "

        List of constraints on the portfolio-product relationship.

        " } }, "ConstraintSummary": { "base": "

        An administrator-specified constraint to apply when provisioning a product.

        ", "refs": { "ConstraintSummaries$member": null } }, "ConstraintType": { "base": null, "refs": { "ConstraintSummary$Type": "

        The type of the constraint.

        " } }, "CreatedTime": { "base": null, "refs": { "ProvisionedProductDetail$CreatedTime": "

        The time the ProvisionedProduct was created.

        ", "RecordDetail$CreatedTime": "

        The time when the record for the ProvisionedProduct object was created.

        " } }, "DefaultValue": { "base": null, "refs": { "ProvisioningArtifactParameter$DefaultValue": "

        The default value for this parameter.

        " } }, "DescribeProductInput": { "base": null, "refs": { } }, "DescribeProductOutput": { "base": null, "refs": { } }, "DescribeProductViewInput": { "base": null, "refs": { } }, "DescribeProductViewOutput": { "base": null, "refs": { } }, "DescribeProvisioningParametersInput": { "base": null, "refs": { } }, "DescribeProvisioningParametersOutput": { "base": null, "refs": { } }, "DescribeRecordInput": { "base": null, "refs": { } }, "DescribeRecordOutput": { "base": null, "refs": { } }, "Description": { "base": null, "refs": { "ProvisioningArtifactParameter$Description": "

        The text description of the parameter.

        ", "RecordOutput$Description": "

        The text description of the output.

        " } }, "DuplicateResourceException": { "base": "

        The specified resource is a duplicate.

        ", "refs": { } }, "ErrorCode": { "base": null, "refs": { "RecordError$Code": "

        The numeric value of the error.

        " } }, "ErrorDescription": { "base": null, "refs": { "RecordError$Description": "

        The text description of the error.

        " } }, "HasDefaultPath": { "base": null, "refs": { "ProductViewSummary$HasDefaultPath": "

        A value of false indicates that the product does not have a default path, while a value of true indicates that it does. If it's false, call ListLaunchPaths to disambiguate between paths. If true, ListLaunchPaths is not required, and the output of the ProductViewSummary operation can be used directly with DescribeProvisioningParameters.

        " } }, "Id": { "base": null, "refs": { "DescribeProductInput$Id": "

        The ProductId of the product to describe.

        ", "DescribeProductViewInput$Id": "

        The ProductViewId of the product to describe.

        ", "DescribeProvisioningParametersInput$ProductId": "

        The identifier of the product.

        ", "DescribeProvisioningParametersInput$ProvisioningArtifactId": "

        The provisioning artifact identifier for this product.

        ", "DescribeProvisioningParametersInput$PathId": "

        The identifier of the path for this product's provisioning. This value is optional if the product has a default path, and is required if there is more than one path for the specified product.

        ", "DescribeRecordInput$Id": "

        The record identifier of the ProvisionedProduct object for which to retrieve output information. This is the RecordDetail.RecordId obtained from the request operation's response.

        ", "LaunchPathSummary$Id": "

        The unique identifier of the product path.

        ", "ListLaunchPathsInput$ProductId": "

        Identifies the product for which to retrieve LaunchPathSummaries information.

        ", "ProductViewSummary$Id": "

        The product view identifier.

        ", "ProductViewSummary$ProductId": "

        The product identifier.

        ", "ProvisionProductInput$ProductId": "

        The identifier of the product.

        ", "ProvisionProductInput$ProvisioningArtifactId": "

        The provisioning artifact identifier for this product.

        ", "ProvisionProductInput$PathId": "

        The identifier of the path for this product's provisioning. This value is optional if the product has a default path, and is required if there is more than one path for the specified product.

        ", "ProvisioningArtifact$Id": "

        The identifier for the artifact.

        ", "RecordDetail$RecordId": "

        The identifier of the ProvisionedProduct object record.

        ", "RecordDetail$ProvisionedProductId": "

        The identifier of the ProvisionedProduct object.

        ", "RecordDetail$ProductId": "

        The identifier of the product.

        ", "RecordDetail$ProvisioningArtifactId": "

        The provisioning artifact identifier for this product.

        ", "RecordDetail$PathId": "

        The identifier of the path for this product's provisioning.

        ", "TerminateProvisionedProductInput$ProvisionedProductId": "

        The identifier of the ProvisionedProduct object to terminate. You must specify either ProvisionedProductName or ProvisionedProductId, but not both.

        ", "UpdateProvisionedProductInput$ProvisionedProductId": "

        The identifier of the ProvisionedProduct object to update. You must specify either ProvisionedProductName or ProvisionedProductId, but not both.

        ", "UpdateProvisionedProductInput$ProductId": "

        The identifier of the ProvisionedProduct object.

        ", "UpdateProvisionedProductInput$ProvisioningArtifactId": "

        The provisioning artifact identifier for this product.

        ", "UpdateProvisionedProductInput$PathId": "

        The identifier of the path to use in the updated ProvisionedProduct object. This value is optional if the product has a default path, and is required if there is more than one path for the specified product.

        " } }, "IdempotencyToken": { "base": null, "refs": { "ProvisionProductInput$ProvisionToken": "

        An idempotency token that uniquely identifies the provisioning request.

        ", "ProvisionedProductDetail$IdempotencyToken": "

        An idempotency token that uniquely identifies this ProvisionedProduct.

        ", "TerminateProvisionedProductInput$TerminateToken": "

        An idempotency token that uniquely identifies the termination request. This token is only valid during the termination process. After the ProvisionedProduct object is terminated, further requests to terminate the same ProvisionedProduct object always return ResourceNotFound regardless of the value of TerminateToken.

        ", "UpdateProvisionedProductInput$UpdateToken": "

        The idempotency token that uniquely identifies the provisioning update request.

        " } }, "IgnoreErrors": { "base": null, "refs": { "TerminateProvisionedProductInput$IgnoreErrors": "

        If set to true, AWS Service Catalog stops managing the specified ProvisionedProduct object even if it cannot delete the underlying resources.

        " } }, "InstructionType": { "base": null, "refs": { "UsageInstruction$Type": "

        The usage instruction type for the value.

        " } }, "InstructionValue": { "base": null, "refs": { "UsageInstruction$Value": "

        The usage instruction value for this type.

        " } }, "InvalidParametersException": { "base": "

        One or more parameters provided to the operation are invalid.

        ", "refs": { } }, "LastRequestId": { "base": null, "refs": { "ProvisionedProductDetail$LastRecordId": "

        The record identifier of the last request performed on this ProvisionedProduct object.

        " } }, "LaunchPathSummaries": { "base": null, "refs": { "ListLaunchPathsOutput$LaunchPathSummaries": "

        List of launch path information summaries for the specified PageToken.

        " } }, "LaunchPathSummary": { "base": "

        Summary information about a path for a user to have access to a specified product.

        ", "refs": { "LaunchPathSummaries$member": null } }, "ListLaunchPathsInput": { "base": null, "refs": { } }, "ListLaunchPathsOutput": { "base": null, "refs": { } }, "ListRecordHistoryInput": { "base": null, "refs": { } }, "ListRecordHistoryOutput": { "base": null, "refs": { } }, "ListRecordHistorySearchFilter": { "base": "

        The search filter to limit results when listing request history records.

        ", "refs": { "ListRecordHistoryInput$SearchFilter": "

        The filter to limit search results.

        " } }, "NoEcho": { "base": null, "refs": { "ProvisioningArtifactParameter$IsNoEcho": "

        If this value is true, the value for this parameter is obfuscated from view when the parameter is retrieved. This parameter is used to hide sensitive information.

        " } }, "NotificationArn": { "base": null, "refs": { "NotificationArns$member": null } }, "NotificationArns": { "base": null, "refs": { "ProvisionProductInput$NotificationArns": "

        Passed to CloudFormation. The SNS topic ARNs to which to publish stack-related events.

        " } }, "OutputKey": { "base": null, "refs": { "RecordOutput$OutputKey": "

        The output key.

        " } }, "OutputValue": { "base": null, "refs": { "RecordOutput$OutputValue": "

        The output value.

        " } }, "PageSize": { "base": null, "refs": { "DescribeRecordInput$PageSize": "

        The maximum number of items to return in the results. If more results exist than fit in the specified PageSize, the value of NextPageToken in the response is non-null.

        ", "ListLaunchPathsInput$PageSize": "

        The maximum number of items to return in the results. If more results exist than fit in the specified PageSize, the value of NextPageToken in the response is non-null.

        ", "ListRecordHistoryInput$PageSize": "

        The maximum number of items to return in the results. If more results exist than fit in the specified PageSize, the value of NextPageToken in the response is non-null.

        ", "ScanProvisionedProductsInput$PageSize": "

        The maximum number of items to return in the results. If more results exist than fit in the specified PageSize, the value of NextPageToken in the response is non-null.

        ", "SearchProductsInput$PageSize": "

        The maximum number of items to return in the results. If more results exist than fit in the specified PageSize, the value of NextPageToken in the response is non-null.

        " } }, "PageToken": { "base": null, "refs": { "DescribeRecordInput$PageToken": "

        The page token of the first page retrieved. If null, this retrieves the first page of size PageSize.

        ", "DescribeRecordOutput$NextPageToken": "

        The page token to use to retrieve the next page of results for this operation. If there are no more pages, this value is null.

        ", "ListLaunchPathsInput$PageToken": "

        The page token of the first page retrieved. If null, this retrieves the first page of size PageSize.

        ", "ListLaunchPathsOutput$NextPageToken": "

        The page token to use to retrieve the next page of results for this operation. If there are no more pages, this value is null.

        ", "ListRecordHistoryInput$PageToken": "

        The page token of the first page retrieved. If null, this retrieves the first page of size PageSize.

        ", "ListRecordHistoryOutput$NextPageToken": "

        The page token to use to retrieve the next page of results for this operation. If there are no more pages, this value is null.

        ", "ScanProvisionedProductsInput$PageToken": "

        The page token of the first page retrieved. If null, this retrieves the first page of size PageSize.

        ", "ScanProvisionedProductsOutput$NextPageToken": "

        The page token to use to retrieve the next page of results for this operation. If there are no more pages, this value is null.

        ", "SearchProductsInput$PageToken": "

        The page token of the first page retrieved. If null, this retrieves the first page of size PageSize.

        ", "SearchProductsOutput$NextPageToken": "

        The page token to use to retrieve the next page of results for this operation. If there are no more pages, this value is null.

        " } }, "ParameterConstraints": { "base": "

        The constraints that the administrator has put on the parameter.

        ", "refs": { "ProvisioningArtifactParameter$ParameterConstraints": "

        The list of constraints that the administrator has put on the parameter.

        " } }, "ParameterKey": { "base": null, "refs": { "ProvisioningArtifactParameter$ParameterKey": "

        The parameter key.

        ", "ProvisioningParameter$Key": "

        The ProvisioningArtifactParameter.ParameterKey parameter from DescribeProvisioningParameters.

        ", "UpdateProvisioningParameter$Key": "

        The ProvisioningArtifactParameter.ParameterKey parameter from DescribeProvisioningParameters.

        " } }, "ParameterType": { "base": null, "refs": { "ProvisioningArtifactParameter$ParameterType": "

        The parameter type.

        " } }, "ParameterValue": { "base": null, "refs": { "ProvisioningParameter$Value": "

        The value to use for provisioning. Any constraints on this value can be found in ProvisioningArtifactParameter for Key.

        ", "UpdateProvisioningParameter$Value": "

        The value to use for updating the product provisioning. Any constraints on this value can be found in the ProvisioningArtifactParameter parameter for Key.

        " } }, "PortfolioName": { "base": null, "refs": { "LaunchPathSummary$Name": "

        Corresponds to the name of the portfolio to which the user was assigned.

        " } }, "ProductType": { "base": null, "refs": { "ProductViewSummary$Type": "

        The product type. Contact the product administrator for the significance of this value.

        " } }, "ProductViewAggregationType": { "base": null, "refs": { "ProductViewAggregations$key": null } }, "ProductViewAggregationValue": { "base": "

        A single product view aggregation value/count pair, containing metadata about each product to which the calling user has access.

        ", "refs": { "ProductViewAggregationValues$member": null } }, "ProductViewAggregationValues": { "base": null, "refs": { "ProductViewAggregations$value": null } }, "ProductViewAggregations": { "base": null, "refs": { "SearchProductsOutput$ProductViewAggregations": "

        A list of the product view aggregation value objects.

        " } }, "ProductViewDistributor": { "base": null, "refs": { "ProductViewSummary$Distributor": "

        The distributor of the product. Contact the product administrator for the significance of this value.

        " } }, "ProductViewFilterBy": { "base": null, "refs": { "ProductViewFilters$key": null } }, "ProductViewFilterValue": { "base": null, "refs": { "ProductViewFilterValues$member": null } }, "ProductViewFilterValues": { "base": null, "refs": { "ProductViewFilters$value": null } }, "ProductViewFilters": { "base": null, "refs": { "SearchProductsInput$Filters": "

        The list of filters with which to limit search results. If no search filters are specified, the output is all the products to which the calling user has access.

        " } }, "ProductViewName": { "base": null, "refs": { "ProductViewSummary$Name": "

        The name of the product.

        " } }, "ProductViewOwner": { "base": null, "refs": { "ProductViewSummary$Owner": "

        The owner of the product. Contact the product administrator for the significance of this value.

        " } }, "ProductViewShortDescription": { "base": null, "refs": { "ProductViewSummary$ShortDescription": "

        Short description of the product.

        " } }, "ProductViewSortBy": { "base": null, "refs": { "SearchProductsInput$SortBy": "

        The sort field specifier. If no value is specified, results are not sorted.

        " } }, "ProductViewSummaries": { "base": null, "refs": { "SearchProductsOutput$ProductViewSummaries": "

        A list of the product view summary objects.

        " } }, "ProductViewSummary": { "base": "

        The summary metadata about the specified product.

        ", "refs": { "DescribeProductOutput$ProductViewSummary": "

        The summary metadata about the specified product.

        ", "DescribeProductViewOutput$ProductViewSummary": "

        The summary metadata about the specified product.

        ", "ProductViewSummaries$member": null } }, "ProvisionProductInput": { "base": null, "refs": { } }, "ProvisionProductOutput": { "base": null, "refs": { } }, "ProvisionedProductDetail": { "base": "

        Detailed information about a ProvisionedProduct object.

        ", "refs": { "ProvisionedProductDetails$member": null } }, "ProvisionedProductDetails": { "base": null, "refs": { "ScanProvisionedProductsOutput$ProvisionedProducts": "

        A list of ProvisionedProduct detail objects.

        " } }, "ProvisionedProductId": { "base": null, "refs": { "ProvisionedProductDetail$Id": "

        The identifier of the ProvisionedProduct object.

        " } }, "ProvisionedProductName": { "base": null, "refs": { "ProvisionProductInput$ProvisionedProductName": "

        A user-friendly name to identify the ProvisionedProduct object. This value must be unique for the AWS account and cannot be updated after the product is provisioned.

        ", "RecordDetail$ProvisionedProductName": "

        The user-friendly name of the ProvisionedProduct object.

        " } }, "ProvisionedProductNameOrArn": { "base": null, "refs": { "ProvisionedProductDetail$Name": "

        The user-friendly name of the ProvisionedProduct object.

        ", "ProvisionedProductDetail$Arn": "

        The ARN associated with the ProvisionedProduct object.

        ", "TerminateProvisionedProductInput$ProvisionedProductName": "

        The name of the ProvisionedProduct object to terminate. You must specify either ProvisionedProductName or ProvisionedProductId, but not both.

        ", "UpdateProvisionedProductInput$ProvisionedProductName": "

        The updated name of the ProvisionedProduct object . You must specify either ProvisionedProductName or ProvisionedProductId, but not both.

        " } }, "ProvisionedProductStatusMessage": { "base": null, "refs": { "ProvisionedProductDetail$StatusMessage": "

        The current status message of the ProvisionedProduct.

        " } }, "ProvisionedProductType": { "base": null, "refs": { "ProvisionedProductDetail$Type": "

        The type of the ProvisionedProduct object.

        ", "RecordDetail$ProvisionedProductType": "

        The type of the ProvisionedProduct object.

        " } }, "ProvisioningArtifact": { "base": "

        Contains information indicating the ways in which a product can be provisioned.

        ", "refs": { "ProvisioningArtifacts$member": null } }, "ProvisioningArtifactCreatedTime": { "base": null, "refs": { "ProvisioningArtifact$CreatedTime": "

        The time that the artifact was created by the Administrator.

        " } }, "ProvisioningArtifactDescription": { "base": null, "refs": { "ProvisioningArtifact$Description": "

        The text description of the artifact.

        " } }, "ProvisioningArtifactName": { "base": null, "refs": { "ProvisioningArtifact$Name": "

        The name of the artifact.

        " } }, "ProvisioningArtifactParameter": { "base": "

        A parameter used to successfully provision the product. This value includes a list of allowable values and additional metadata.

        ", "refs": { "ProvisioningArtifactParameters$member": null } }, "ProvisioningArtifactParameters": { "base": null, "refs": { "DescribeProvisioningParametersOutput$ProvisioningArtifactParameters": "

        The list of parameters used to successfully provision the product. Each parameter includes a list of allowable values and additional metadata about each parameter.

        " } }, "ProvisioningArtifacts": { "base": null, "refs": { "DescribeProductOutput$ProvisioningArtifacts": "

        A list of provisioning artifact objects for the specified product. The ProvisioningArtifacts parameter represent the ways the specified product can be provisioned.

        ", "DescribeProductViewOutput$ProvisioningArtifacts": "

        A list of provisioning artifact objects for the specified product. The ProvisioningArtifacts represent the ways in which the specified product can be provisioned.

        " } }, "ProvisioningParameter": { "base": "

        The arameter key/value pairs used to provision a product.

        ", "refs": { "ProvisioningParameters$member": null } }, "ProvisioningParameters": { "base": null, "refs": { "ProvisionProductInput$ProvisioningParameters": "

        Parameters specified by the administrator that are required for provisioning the product.

        " } }, "RecordDetail": { "base": "

        The full details of a specific ProvisionedProduct object.

        ", "refs": { "DescribeRecordOutput$RecordDetail": "

        Detailed record information for the specified product.

        ", "ProvisionProductOutput$RecordDetail": "

        The detailed result of the ProvisionProduct request, containing the inputs made to that request, the current state of the request, a pointer to the ProvisionedProduct object of the request, and a list of any errors that the request encountered.

        ", "RecordDetails$member": null, "TerminateProvisionedProductOutput$RecordDetail": "

        The detailed result of the TerminateProvisionedProduct request, containing the inputs made to that request, the current state of the request, a pointer to the ProvisionedProduct object that the request is modifying, and a list of any errors that the request encountered.

        ", "UpdateProvisionedProductOutput$RecordDetail": "

        The detailed result of the UpdateProvisionedProduct request, containing the inputs made to that request, the current state of the request, a pointer to the ProvisionedProduct object that the request is modifying, and a list of any errors that the request encountered.

        " } }, "RecordDetails": { "base": null, "refs": { "ListRecordHistoryOutput$RecordDetails": "

        A list of record detail objects, listed in reverse chronological order.

        " } }, "RecordError": { "base": "

        The error code and description resulting from an operation.

        ", "refs": { "RecordErrors$member": null } }, "RecordErrors": { "base": null, "refs": { "RecordDetail$RecordErrors": "

        A list of errors that occurred while processing the request.

        " } }, "RecordOutput": { "base": "

        An output for the specified Product object created as the result of a request. For example, a CloudFormation-backed product that creates an S3 bucket would have an output for the S3 bucket URL.

        ", "refs": { "RecordOutputs$member": null } }, "RecordOutputs": { "base": null, "refs": { "DescribeRecordOutput$RecordOutputs": "

        A list of outputs for the specified Product object created as the result of a request. For example, a CloudFormation-backed product that creates an S3 bucket would have an output for the S3 bucket URL.

        " } }, "RecordStatus": { "base": null, "refs": { "ProvisionedProductDetail$Status": "

        The current status of the ProvisionedProduct.

        ", "RecordDetail$Status": "

        The status of the ProvisionedProduct object.

        " } }, "RecordTag": { "base": "

        A tag associated with the record, stored as a key-value pair.

        ", "refs": { "RecordTags$member": null } }, "RecordTagKey": { "base": null, "refs": { "RecordTag$Key": "

        The key for this tag.

        " } }, "RecordTagValue": { "base": null, "refs": { "RecordTag$Value": "

        The value for this tag.

        " } }, "RecordTags": { "base": null, "refs": { "RecordDetail$RecordTags": "

        List of tags associated with this record.

        " } }, "RecordType": { "base": null, "refs": { "RecordDetail$RecordType": "

        The record type for this record.

        " } }, "ResourceNotFoundException": { "base": "

        The specified resource was not found.

        ", "refs": { } }, "ScanProvisionedProductsInput": { "base": null, "refs": { } }, "ScanProvisionedProductsOutput": { "base": null, "refs": { } }, "SearchFilterKey": { "base": null, "refs": { "ListRecordHistorySearchFilter$Key": "

        The filter key.

        " } }, "SearchFilterValue": { "base": null, "refs": { "ListRecordHistorySearchFilter$Value": "

        The filter value for Key.

        " } }, "SearchProductsInput": { "base": null, "refs": { } }, "SearchProductsOutput": { "base": null, "refs": { } }, "SortOrder": { "base": null, "refs": { "SearchProductsInput$SortOrder": "

        The sort order specifier. If no value is specified, results are not sorted.

        " } }, "SupportDescription": { "base": null, "refs": { "ProductViewSummary$SupportDescription": "

        The description of the support for this Product.

        " } }, "SupportEmail": { "base": null, "refs": { "ProductViewSummary$SupportEmail": "

        The email contact information to obtain support for this Product.

        " } }, "SupportUrl": { "base": null, "refs": { "ProductViewSummary$SupportUrl": "

        The URL information to obtain support for this Product.

        " } }, "Tag": { "base": "

        Key/value pairs to associate with this provisioning. These tags are entirely discretionary and are propagated to the resources created in the provisioning.

        ", "refs": { "Tags$member": null } }, "TagKey": { "base": null, "refs": { "Tag$Key": "

        The ProvisioningArtifactParameter.TagKey parameter from DescribeProvisioningParameters.

        " } }, "TagValue": { "base": null, "refs": { "Tag$Value": "

        The esired value for this key.

        " } }, "Tags": { "base": null, "refs": { "LaunchPathSummary$Tags": "

        List of tags used by this launch path.

        ", "ProvisionProductInput$Tags": "

        A list of tags to use as provisioning options.

        " } }, "TerminateProvisionedProductInput": { "base": null, "refs": { } }, "TerminateProvisionedProductOutput": { "base": null, "refs": { } }, "UpdateProvisionedProductInput": { "base": null, "refs": { } }, "UpdateProvisionedProductOutput": { "base": null, "refs": { } }, "UpdateProvisioningParameter": { "base": "

        The parameter key/value pair used to update a ProvisionedProduct object. If UsePreviousValue is set to true, Value is ignored and the value for Key is kept as previously set (current value).

        ", "refs": { "UpdateProvisioningParameters$member": null } }, "UpdateProvisioningParameters": { "base": null, "refs": { "UpdateProvisionedProductInput$ProvisioningParameters": "

        A list of ProvisioningParameter objects used to update the ProvisionedProduct object.

        " } }, "UpdatedTime": { "base": null, "refs": { "RecordDetail$UpdatedTime": "

        The time when the record for the ProvisionedProduct object was last updated.

        " } }, "UsageInstruction": { "base": "

        Additional information provided by the administrator.

        ", "refs": { "UsageInstructions$member": null } }, "UsageInstructions": { "base": null, "refs": { "DescribeProvisioningParametersOutput$UsageInstructions": "

        Any additional metadata specifically related to the provisioning of the product. For example, see the Version field of the CloudFormation template.

        " } }, "UsePreviousValue": { "base": null, "refs": { "UpdateProvisioningParameter$UsePreviousValue": "

        If true, uses the currently set value for Key, ignoring UpdateProvisioningParameter.Value.

        " } } } } aws-sdk-go-1.4.22/models/apis/servicecatalog/2015-12-10/examples-1.json000066400000000000000000000000541300374646400246700ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/sms/000077500000000000000000000000001300374646400166045ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/sms/2016-10-24/000077500000000000000000000000001300374646400176355ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/sms/2016-10-24/api-2.json000066400000000000000000000412301300374646400214400ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2016-10-24", "endpointPrefix":"sms", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"SMS", "serviceFullName":"AWS Server Migration Service", "signatureVersion":"v4", "targetPrefix":"AWSServerMigrationService_V2016_10_24" }, "operations":{ "CreateReplicationJob":{ "name":"CreateReplicationJob", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateReplicationJobRequest"}, "output":{"shape":"CreateReplicationJobResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"MissingRequiredParameterException"}, {"shape":"UnauthorizedOperationException"}, {"shape":"OperationNotPermittedException"}, {"shape":"ServerCannotBeReplicatedException"}, {"shape":"ReplicationJobAlreadyExistsException"}, {"shape":"NoConnectorsAvailableException"}, {"shape":"InternalError"} ] }, "DeleteReplicationJob":{ "name":"DeleteReplicationJob", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteReplicationJobRequest"}, "output":{"shape":"DeleteReplicationJobResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"MissingRequiredParameterException"}, {"shape":"UnauthorizedOperationException"}, {"shape":"OperationNotPermittedException"}, {"shape":"ReplicationJobNotFoundException"} ] }, "DeleteServerCatalog":{ "name":"DeleteServerCatalog", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteServerCatalogRequest"}, "output":{"shape":"DeleteServerCatalogResponse"}, "errors":[ {"shape":"UnauthorizedOperationException"}, {"shape":"OperationNotPermittedException"}, {"shape":"InvalidParameterException"}, {"shape":"MissingRequiredParameterException"} ] }, "DisassociateConnector":{ "name":"DisassociateConnector", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisassociateConnectorRequest"}, "output":{"shape":"DisassociateConnectorResponse"}, "errors":[ {"shape":"MissingRequiredParameterException"}, {"shape":"UnauthorizedOperationException"}, {"shape":"OperationNotPermittedException"}, {"shape":"InvalidParameterException"} ] }, "GetConnectors":{ "name":"GetConnectors", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetConnectorsRequest"}, "output":{"shape":"GetConnectorsResponse"}, "errors":[ {"shape":"UnauthorizedOperationException"} ] }, "GetReplicationJobs":{ "name":"GetReplicationJobs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetReplicationJobsRequest"}, "output":{"shape":"GetReplicationJobsResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"MissingRequiredParameterException"}, {"shape":"UnauthorizedOperationException"} ] }, "GetReplicationRuns":{ "name":"GetReplicationRuns", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetReplicationRunsRequest"}, "output":{"shape":"GetReplicationRunsResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"MissingRequiredParameterException"}, {"shape":"UnauthorizedOperationException"} ] }, "GetServers":{ "name":"GetServers", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetServersRequest"}, "output":{"shape":"GetServersResponse"}, "errors":[ {"shape":"UnauthorizedOperationException"} ] }, "ImportServerCatalog":{ "name":"ImportServerCatalog", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ImportServerCatalogRequest"}, "output":{"shape":"ImportServerCatalogResponse"}, "errors":[ {"shape":"UnauthorizedOperationException"}, {"shape":"OperationNotPermittedException"}, {"shape":"InvalidParameterException"}, {"shape":"MissingRequiredParameterException"}, {"shape":"NoConnectorsAvailableException"} ] }, "StartOnDemandReplicationRun":{ "name":"StartOnDemandReplicationRun", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartOnDemandReplicationRunRequest"}, "output":{"shape":"StartOnDemandReplicationRunResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"MissingRequiredParameterException"}, {"shape":"UnauthorizedOperationException"}, {"shape":"OperationNotPermittedException"}, {"shape":"ReplicationRunLimitExceededException"} ] }, "UpdateReplicationJob":{ "name":"UpdateReplicationJob", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateReplicationJobRequest"}, "output":{"shape":"UpdateReplicationJobResponse"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"MissingRequiredParameterException"}, {"shape":"OperationNotPermittedException"}, {"shape":"UnauthorizedOperationException"}, {"shape":"ServerCannotBeReplicatedException"}, {"shape":"ReplicationJobNotFoundException"}, {"shape":"InternalError"} ] } }, "shapes":{ "AmiId":{"type":"string"}, "Connector":{ "type":"structure", "members":{ "connectorId":{"shape":"ConnectorId"}, "version":{"shape":"ConnectorVersion"}, "status":{"shape":"ConnectorStatus"}, "capabilityList":{"shape":"ConnectorCapabilityList"}, "vmManagerName":{"shape":"VmManagerName"}, "vmManagerType":{"shape":"VmManagerType"}, "vmManagerId":{"shape":"VmManagerId"}, "ipAddress":{"shape":"IpAddress"}, "macAddress":{"shape":"MacAddress"}, "associatedOn":{"shape":"Timestamp"} } }, "ConnectorCapability":{ "type":"string", "enum":["VSPHERE"] }, "ConnectorCapabilityList":{ "type":"list", "member":{ "shape":"ConnectorCapability", "locationName":"item" } }, "ConnectorId":{"type":"string"}, "ConnectorList":{ "type":"list", "member":{ "shape":"Connector", "locationName":"item" } }, "ConnectorStatus":{ "type":"string", "enum":[ "HEALTHY", "UNHEALTHY" ] }, "ConnectorVersion":{"type":"string"}, "CreateReplicationJobRequest":{ "type":"structure", "required":[ "serverId", "seedReplicationTime", "frequency" ], "members":{ "serverId":{"shape":"ServerId"}, "seedReplicationTime":{"shape":"Timestamp"}, "frequency":{"shape":"Frequency"}, "licenseType":{"shape":"LicenseType"}, "roleName":{"shape":"RoleName"}, "description":{"shape":"Description"} } }, "CreateReplicationJobResponse":{ "type":"structure", "members":{ "replicationJobId":{"shape":"ReplicationJobId"} } }, "DeleteReplicationJobRequest":{ "type":"structure", "required":["replicationJobId"], "members":{ "replicationJobId":{"shape":"ReplicationJobId"} } }, "DeleteReplicationJobResponse":{ "type":"structure", "members":{ } }, "DeleteServerCatalogRequest":{ "type":"structure", "members":{ } }, "DeleteServerCatalogResponse":{ "type":"structure", "members":{ } }, "Description":{"type":"string"}, "DisassociateConnectorRequest":{ "type":"structure", "required":["connectorId"], "members":{ "connectorId":{"shape":"ConnectorId"} } }, "DisassociateConnectorResponse":{ "type":"structure", "members":{ } }, "ErrorMessage":{"type":"string"}, "Frequency":{"type":"integer"}, "GetConnectorsRequest":{ "type":"structure", "members":{ "nextToken":{"shape":"NextToken"}, "maxResults":{"shape":"MaxResults"} } }, "GetConnectorsResponse":{ "type":"structure", "members":{ "connectorList":{"shape":"ConnectorList"}, "nextToken":{"shape":"NextToken"} } }, "GetReplicationJobsRequest":{ "type":"structure", "members":{ "replicationJobId":{"shape":"ReplicationJobId"}, "nextToken":{"shape":"NextToken"}, "maxResults":{"shape":"MaxResults"} } }, "GetReplicationJobsResponse":{ "type":"structure", "members":{ "replicationJobList":{"shape":"ReplicationJobList"}, "nextToken":{"shape":"NextToken"} } }, "GetReplicationRunsRequest":{ "type":"structure", "required":["replicationJobId"], "members":{ "replicationJobId":{"shape":"ReplicationJobId"}, "nextToken":{"shape":"NextToken"}, "maxResults":{"shape":"MaxResults"} } }, "GetReplicationRunsResponse":{ "type":"structure", "members":{ "replicationJob":{"shape":"ReplicationJob"}, "replicationRunList":{"shape":"ReplicationRunList"}, "nextToken":{"shape":"NextToken"} } }, "GetServersRequest":{ "type":"structure", "members":{ "nextToken":{"shape":"NextToken"}, "maxResults":{"shape":"MaxResults"} } }, "GetServersResponse":{ "type":"structure", "members":{ "lastModifiedOn":{"shape":"Timestamp"}, "serverCatalogStatus":{"shape":"ServerCatalogStatus"}, "serverList":{"shape":"ServerList"}, "nextToken":{"shape":"NextToken"} } }, "ImportServerCatalogRequest":{ "type":"structure", "members":{ } }, "ImportServerCatalogResponse":{ "type":"structure", "members":{ } }, "InternalError":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true, "fault":true }, "InvalidParameterException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "IpAddress":{"type":"string"}, "LicenseType":{ "type":"string", "enum":[ "AWS", "BYOL" ] }, "MacAddress":{"type":"string"}, "MaxResults":{"type":"integer"}, "MissingRequiredParameterException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "NextToken":{"type":"string"}, "NoConnectorsAvailableException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "OperationNotPermittedException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ReplicationJob":{ "type":"structure", "members":{ "replicationJobId":{"shape":"ReplicationJobId"}, "serverId":{"shape":"ServerId"}, "serverType":{"shape":"ServerType"}, "vmServer":{"shape":"VmServer"}, "seedReplicationTime":{"shape":"Timestamp"}, "frequency":{"shape":"Frequency"}, "nextReplicationRunStartTime":{"shape":"Timestamp"}, "licenseType":{"shape":"LicenseType"}, "roleName":{"shape":"RoleName"}, "latestAmiId":{"shape":"AmiId"}, "state":{"shape":"ReplicationJobState"}, "statusMessage":{"shape":"ReplicationJobStatusMessage"}, "description":{"shape":"Description"}, "replicationRunList":{"shape":"ReplicationRunList"} } }, "ReplicationJobAlreadyExistsException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ReplicationJobId":{"type":"string"}, "ReplicationJobList":{ "type":"list", "member":{ "shape":"ReplicationJob", "locationName":"item" } }, "ReplicationJobNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ReplicationJobState":{ "type":"string", "enum":[ "PENDING", "ACTIVE", "FAILED", "DELETING", "DELETED" ] }, "ReplicationJobStatusMessage":{"type":"string"}, "ReplicationJobTerminated":{"type":"boolean"}, "ReplicationRun":{ "type":"structure", "members":{ "replicationRunId":{"shape":"ReplicationRunId"}, "state":{"shape":"ReplicationRunState"}, "type":{"shape":"ReplicationRunType"}, "statusMessage":{"shape":"ReplicationRunStatusMessage"}, "amiId":{"shape":"AmiId"}, "scheduledStartTime":{"shape":"Timestamp"}, "completedTime":{"shape":"Timestamp"}, "description":{"shape":"Description"} } }, "ReplicationRunId":{"type":"string"}, "ReplicationRunLimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ReplicationRunList":{ "type":"list", "member":{ "shape":"ReplicationRun", "locationName":"item" } }, "ReplicationRunState":{ "type":"string", "enum":[ "PENDING", "MISSED", "ACTIVE", "FAILED", "COMPLETED", "DELETING", "DELETED" ] }, "ReplicationRunStatusMessage":{"type":"string"}, "ReplicationRunType":{ "type":"string", "enum":[ "ON_DEMAND", "AUTOMATIC" ] }, "RoleName":{"type":"string"}, "Server":{ "type":"structure", "members":{ "serverId":{"shape":"ServerId"}, "serverType":{"shape":"ServerType"}, "vmServer":{"shape":"VmServer"}, "replicationJobId":{"shape":"ReplicationJobId"}, "replicationJobTerminated":{"shape":"ReplicationJobTerminated"} } }, "ServerCannotBeReplicatedException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ServerCatalogStatus":{ "type":"string", "enum":[ "NOT_IMPORTED", "IMPORTING", "AVAILABLE", "DELETED", "EXPIRED" ] }, "ServerId":{"type":"string"}, "ServerList":{ "type":"list", "member":{ "shape":"Server", "locationName":"item" } }, "ServerType":{ "type":"string", "enum":["VIRTUAL_MACHINE"] }, "StartOnDemandReplicationRunRequest":{ "type":"structure", "required":["replicationJobId"], "members":{ "replicationJobId":{"shape":"ReplicationJobId"}, "description":{"shape":"Description"} } }, "StartOnDemandReplicationRunResponse":{ "type":"structure", "members":{ "replicationRunId":{"shape":"ReplicationRunId"} } }, "Timestamp":{"type":"timestamp"}, "UnauthorizedOperationException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "UpdateReplicationJobRequest":{ "type":"structure", "required":["replicationJobId"], "members":{ "replicationJobId":{"shape":"ReplicationJobId"}, "frequency":{"shape":"Frequency"}, "nextReplicationRunStartTime":{"shape":"Timestamp"}, "licenseType":{"shape":"LicenseType"}, "roleName":{"shape":"RoleName"}, "description":{"shape":"Description"} } }, "UpdateReplicationJobResponse":{ "type":"structure", "members":{ } }, "VmId":{"type":"string"}, "VmManagerId":{"type":"string"}, "VmManagerName":{"type":"string"}, "VmManagerType":{ "type":"string", "enum":["VSPHERE"] }, "VmName":{"type":"string"}, "VmPath":{"type":"string"}, "VmServer":{ "type":"structure", "members":{ "vmServerAddress":{"shape":"VmServerAddress"}, "vmName":{"shape":"VmName"}, "vmManagerName":{"shape":"VmManagerName"}, "vmManagerType":{"shape":"VmManagerType"}, "vmPath":{"shape":"VmPath"} } }, "VmServerAddress":{ "type":"structure", "members":{ "vmManagerId":{"shape":"VmManagerId"}, "vmId":{"shape":"VmId"} } } } } aws-sdk-go-1.4.22/models/apis/sms/2016-10-24/docs-2.json000066400000000000000000000371031300374646400216230ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon Server Migration Service automates the process of migrating servers to EC2.", "operations": { "CreateReplicationJob": "The CreateReplicationJob API is used to create a ReplicationJob to replicate a server on AWS. Call this API to first create a ReplicationJob, which will then schedule periodic ReplicationRuns to replicate your server to AWS. Each ReplicationRun will result in the creation of an AWS AMI.", "DeleteReplicationJob": "The DeleteReplicationJob API is used to delete a ReplicationJob, resulting in no further ReplicationRuns. This will delete the contents of the S3 bucket used to store SMS artifacts, but will not delete any AMIs created by the SMS service.", "DeleteServerCatalog": "The DeleteServerCatalog API clears all servers from your server catalog. This means that these servers will no longer be accessible to the Server Migration Service.", "DisassociateConnector": "The DisassociateConnector API will disassociate a connector from the Server Migration Service, rendering it unavailable to support replication jobs.", "GetConnectors": "The GetConnectors API returns a list of connectors that are registered with the Server Migration Service.", "GetReplicationJobs": "The GetReplicationJobs API will return all of your ReplicationJobs and their details. This API returns a paginated list, that may be consecutively called with nextToken to retrieve all ReplicationJobs.", "GetReplicationRuns": "The GetReplicationRuns API will return all ReplicationRuns for a given ReplicationJob. This API returns a paginated list, that may be consecutively called with nextToken to retrieve all ReplicationRuns for a ReplicationJob.", "GetServers": "The GetServers API returns a list of all servers in your server catalog. For this call to succeed, you must previously have called ImportServerCatalog.", "ImportServerCatalog": "The ImportServerCatalog API is used to gather the complete list of on-premises servers on your premises. This API call requires connectors to be installed and monitoring all servers you would like imported. This API call returns immediately, but may take some time to retrieve all of the servers.", "StartOnDemandReplicationRun": "The StartOnDemandReplicationRun API is used to start a ReplicationRun on demand (in addition to those that are scheduled based on your frequency). This ReplicationRun will start immediately. StartOnDemandReplicationRun is subject to limits on how many on demand ReplicationRuns you may call per 24-hour period.", "UpdateReplicationJob": "The UpdateReplicationJob API is used to change the settings of your existing ReplicationJob created using CreateReplicationJob. Calling this API will affect the next scheduled ReplicationRun." }, "shapes": { "AmiId": { "base": "The AMI id for the image resulting from a Replication Run.", "refs": { "ReplicationJob$latestAmiId": null, "ReplicationRun$amiId": null } }, "Connector": { "base": "Object representing a Connector", "refs": { "ConnectorList$member": null } }, "ConnectorCapability": { "base": "Capabilities for a Connector", "refs": { "ConnectorCapabilityList$member": null } }, "ConnectorCapabilityList": { "base": "List of Connector Capabilities", "refs": { "Connector$capabilityList": null } }, "ConnectorId": { "base": "Unique Identifier for Connector", "refs": { "Connector$connectorId": null, "DisassociateConnectorRequest$connectorId": null } }, "ConnectorList": { "base": "List of connectors", "refs": { "GetConnectorsResponse$connectorList": null } }, "ConnectorStatus": { "base": "Status of on-premise Connector", "refs": { "Connector$status": null } }, "ConnectorVersion": { "base": "Connector version string", "refs": { "Connector$version": null } }, "CreateReplicationJobRequest": { "base": null, "refs": { } }, "CreateReplicationJobResponse": { "base": null, "refs": { } }, "DeleteReplicationJobRequest": { "base": null, "refs": { } }, "DeleteReplicationJobResponse": { "base": null, "refs": { } }, "DeleteServerCatalogRequest": { "base": null, "refs": { } }, "DeleteServerCatalogResponse": { "base": null, "refs": { } }, "Description": { "base": "The description for a Replication Job/Run.", "refs": { "CreateReplicationJobRequest$description": null, "ReplicationJob$description": null, "ReplicationRun$description": null, "StartOnDemandReplicationRunRequest$description": null, "UpdateReplicationJobRequest$description": null } }, "DisassociateConnectorRequest": { "base": null, "refs": { } }, "DisassociateConnectorResponse": { "base": null, "refs": { } }, "ErrorMessage": { "base": "Error Message string", "refs": { "InternalError$message": null, "InvalidParameterException$message": null, "MissingRequiredParameterException$message": null, "NoConnectorsAvailableException$message": null, "OperationNotPermittedException$message": null, "ReplicationJobAlreadyExistsException$message": null, "ReplicationJobNotFoundException$message": null, "ReplicationRunLimitExceededException$message": null, "ServerCannotBeReplicatedException$message": null, "UnauthorizedOperationException$message": null } }, "Frequency": { "base": "Interval between Replication Runs. This value is specified in hours, and represents the time between consecutive Replication Runs.", "refs": { "CreateReplicationJobRequest$frequency": null, "ReplicationJob$frequency": null, "UpdateReplicationJobRequest$frequency": null } }, "GetConnectorsRequest": { "base": null, "refs": { } }, "GetConnectorsResponse": { "base": null, "refs": { } }, "GetReplicationJobsRequest": { "base": null, "refs": { } }, "GetReplicationJobsResponse": { "base": null, "refs": { } }, "GetReplicationRunsRequest": { "base": null, "refs": { } }, "GetReplicationRunsResponse": { "base": null, "refs": { } }, "GetServersRequest": { "base": null, "refs": { } }, "GetServersResponse": { "base": null, "refs": { } }, "ImportServerCatalogRequest": { "base": null, "refs": { } }, "ImportServerCatalogResponse": { "base": null, "refs": { } }, "InternalError": { "base": "An internal error has occured.", "refs": { } }, "InvalidParameterException": { "base": "A parameter specified in the request is not valid, is unsupported, or cannot be used.", "refs": { } }, "IpAddress": { "base": "Internet Protocol (IP) Address", "refs": { "Connector$ipAddress": null } }, "LicenseType": { "base": "The license type to be used for the Amazon Machine Image (AMI) created after a successful ReplicationRun.", "refs": { "CreateReplicationJobRequest$licenseType": null, "ReplicationJob$licenseType": null, "UpdateReplicationJobRequest$licenseType": null } }, "MacAddress": { "base": "Hardware (MAC) address", "refs": { "Connector$macAddress": null } }, "MaxResults": { "base": "The maximum number of results to return in one API call. If left empty, this will default to 50.", "refs": { "GetConnectorsRequest$maxResults": null, "GetReplicationJobsRequest$maxResults": null, "GetReplicationRunsRequest$maxResults": null, "GetServersRequest$maxResults": null } }, "MissingRequiredParameterException": { "base": "The request is missing a required parameter. Ensure that you have supplied all the required parameters for the request.", "refs": { } }, "NextToken": { "base": "Pagination token to pass as input to API call", "refs": { "GetConnectorsRequest$nextToken": null, "GetConnectorsResponse$nextToken": null, "GetReplicationJobsRequest$nextToken": null, "GetReplicationJobsResponse$nextToken": null, "GetReplicationRunsRequest$nextToken": null, "GetReplicationRunsResponse$nextToken": null, "GetServersRequest$nextToken": null, "GetServersResponse$nextToken": null } }, "NoConnectorsAvailableException": { "base": "No connectors are available to handle this request. Please associate connector(s) and verify any existing connectors are healthy and can respond to requests.", "refs": { } }, "OperationNotPermittedException": { "base": "The specified operation is not allowed. This error can occur for a number of reasons; for example, you might be trying to start a Replication Run before seed Replication Run.", "refs": { } }, "ReplicationJob": { "base": "Object representing a Replication Job", "refs": { "GetReplicationRunsResponse$replicationJob": null, "ReplicationJobList$member": null } }, "ReplicationJobAlreadyExistsException": { "base": "An active Replication Job already exists for the specified server.", "refs": { } }, "ReplicationJobId": { "base": "The unique identifier for a Replication Job.", "refs": { "CreateReplicationJobResponse$replicationJobId": null, "DeleteReplicationJobRequest$replicationJobId": null, "GetReplicationJobsRequest$replicationJobId": null, "GetReplicationRunsRequest$replicationJobId": null, "ReplicationJob$replicationJobId": null, "Server$replicationJobId": null, "StartOnDemandReplicationRunRequest$replicationJobId": null, "UpdateReplicationJobRequest$replicationJobId": null } }, "ReplicationJobList": { "base": "List of Replication Jobs", "refs": { "GetReplicationJobsResponse$replicationJobList": null } }, "ReplicationJobNotFoundException": { "base": "The specified Replication Job cannot be found.", "refs": { } }, "ReplicationJobState": { "base": "Current state of Replication Job", "refs": { "ReplicationJob$state": null } }, "ReplicationJobStatusMessage": { "base": "String describing current status of Replication Job", "refs": { "ReplicationJob$statusMessage": null } }, "ReplicationJobTerminated": { "base": "An indicator of the Replication Job being deleted or failed.", "refs": { "Server$replicationJobTerminated": null } }, "ReplicationRun": { "base": "Object representing a Replication Run", "refs": { "ReplicationRunList$member": null } }, "ReplicationRunId": { "base": "The unique identifier for a Replication Run.", "refs": { "ReplicationRun$replicationRunId": null, "StartOnDemandReplicationRunResponse$replicationRunId": null } }, "ReplicationRunLimitExceededException": { "base": "This user has exceeded the maximum allowed Replication Run limit.", "refs": { } }, "ReplicationRunList": { "base": "List of Replication Runs", "refs": { "GetReplicationRunsResponse$replicationRunList": null, "ReplicationJob$replicationRunList": null } }, "ReplicationRunState": { "base": "Current state of Replication Run", "refs": { "ReplicationRun$state": null } }, "ReplicationRunStatusMessage": { "base": "String describing current status of Replication Run", "refs": { "ReplicationRun$statusMessage": null } }, "ReplicationRunType": { "base": "Type of Replication Run", "refs": { "ReplicationRun$type": null } }, "RoleName": { "base": "Name of service role in customer's account to be used by SMS service.", "refs": { "CreateReplicationJobRequest$roleName": null, "ReplicationJob$roleName": null, "UpdateReplicationJobRequest$roleName": null } }, "Server": { "base": "Object representing a server", "refs": { "ServerList$member": null } }, "ServerCannotBeReplicatedException": { "base": "The provided server cannot be replicated.", "refs": { } }, "ServerCatalogStatus": { "base": "Status of Server catalog", "refs": { "GetServersResponse$serverCatalogStatus": null } }, "ServerId": { "base": "Unique Identifier for a server", "refs": { "CreateReplicationJobRequest$serverId": null, "ReplicationJob$serverId": null, "Server$serverId": null } }, "ServerList": { "base": "List of servers from catalog", "refs": { "GetServersResponse$serverList": null } }, "ServerType": { "base": "Type of server.", "refs": { "ReplicationJob$serverType": null, "Server$serverType": null } }, "StartOnDemandReplicationRunRequest": { "base": null, "refs": { } }, "StartOnDemandReplicationRunResponse": { "base": null, "refs": { } }, "Timestamp": { "base": "Timestamp of an operation", "refs": { "Connector$associatedOn": null, "CreateReplicationJobRequest$seedReplicationTime": null, "GetServersResponse$lastModifiedOn": null, "ReplicationJob$seedReplicationTime": null, "ReplicationJob$nextReplicationRunStartTime": null, "ReplicationRun$scheduledStartTime": null, "ReplicationRun$completedTime": null, "UpdateReplicationJobRequest$nextReplicationRunStartTime": null } }, "UnauthorizedOperationException": { "base": "This user does not have permissions to perform this operation.", "refs": { } }, "UpdateReplicationJobRequest": { "base": null, "refs": { } }, "UpdateReplicationJobResponse": { "base": null, "refs": { } }, "VmId": { "base": "Unique Identifier for a VM", "refs": { "VmServerAddress$vmId": null } }, "VmManagerId": { "base": "Unique Identifier for VM Manager", "refs": { "Connector$vmManagerId": null, "VmServerAddress$vmManagerId": null } }, "VmManagerName": { "base": "VM Manager Name", "refs": { "Connector$vmManagerName": null, "VmServer$vmManagerName": null } }, "VmManagerType": { "base": "VM Management Product", "refs": { "Connector$vmManagerType": null, "VmServer$vmManagerType": null } }, "VmName": { "base": "Name of Virtual Machine", "refs": { "VmServer$vmName": null } }, "VmPath": { "base": "Path to VM", "refs": { "VmServer$vmPath": null } }, "VmServer": { "base": "Object representing a VM server", "refs": { "ReplicationJob$vmServer": null, "Server$vmServer": null } }, "VmServerAddress": { "base": "Object representing a server's location", "refs": { "VmServer$vmServerAddress": null } } } } aws-sdk-go-1.4.22/models/apis/sms/2016-10-24/examples-1.json000066400000000000000000000000541300374646400225030ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/sms/2016-10-24/paginators-1.json000066400000000000000000000015121300374646400230340ustar00rootroot00000000000000{ "pagination":{ "GetReplicationJobs": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults", "result_key": "replicationJobList" }, "GetReplicationRuns": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults", "result_key": "replicationRunList" }, "GetConnectors": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults", "result_key": "connectorList" }, "GetServers": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults", "result_key": "serverList" } } } aws-sdk-go-1.4.22/models/apis/snowball/000077500000000000000000000000001300374646400176235ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/snowball/2016-06-30/000077500000000000000000000000001300374646400206565ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/snowball/2016-06-30/api-2.json000077500000000000000000000331751300374646400224750ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2016-06-30", "endpointPrefix":"snowball", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"Amazon Snowball", "serviceFullName":"Amazon Import/Export Snowball", "signatureVersion":"v4", "targetPrefix":"AWSIESnowballJobManagementService" }, "operations":{ "CancelJob":{ "name":"CancelJob", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelJobRequest"}, "output":{"shape":"CancelJobResult"}, "errors":[ {"shape":"InvalidResourceException"}, {"shape":"InvalidJobStateException"}, {"shape":"KMSRequestFailedException"} ] }, "CreateAddress":{ "name":"CreateAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateAddressRequest"}, "output":{"shape":"CreateAddressResult"}, "errors":[ {"shape":"InvalidAddressException"}, {"shape":"UnsupportedAddressException"} ] }, "CreateJob":{ "name":"CreateJob", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateJobRequest"}, "output":{"shape":"CreateJobResult"}, "errors":[ {"shape":"InvalidResourceException"}, {"shape":"KMSRequestFailedException"} ] }, "DescribeAddress":{ "name":"DescribeAddress", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAddressRequest"}, "output":{"shape":"DescribeAddressResult"}, "errors":[ {"shape":"InvalidResourceException"} ] }, "DescribeAddresses":{ "name":"DescribeAddresses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAddressesRequest"}, "output":{"shape":"DescribeAddressesResult"}, "errors":[ {"shape":"InvalidResourceException"} ] }, "DescribeJob":{ "name":"DescribeJob", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeJobRequest"}, "output":{"shape":"DescribeJobResult"}, "errors":[ {"shape":"InvalidResourceException"} ] }, "GetJobManifest":{ "name":"GetJobManifest", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetJobManifestRequest"}, "output":{"shape":"GetJobManifestResult"}, "errors":[ {"shape":"InvalidResourceException"}, {"shape":"InvalidJobStateException"} ] }, "GetJobUnlockCode":{ "name":"GetJobUnlockCode", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetJobUnlockCodeRequest"}, "output":{"shape":"GetJobUnlockCodeResult"}, "errors":[ {"shape":"InvalidResourceException"}, {"shape":"InvalidJobStateException"} ] }, "GetSnowballUsage":{ "name":"GetSnowballUsage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetSnowballUsageRequest"}, "output":{"shape":"GetSnowballUsageResult"} }, "ListJobs":{ "name":"ListJobs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListJobsRequest"}, "output":{"shape":"ListJobsResult"} }, "UpdateJob":{ "name":"UpdateJob", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateJobRequest"}, "output":{"shape":"UpdateJobResult"}, "errors":[ {"shape":"InvalidResourceException"}, {"shape":"InvalidJobStateException"}, {"shape":"KMSRequestFailedException"} ] } }, "shapes":{ "Address":{ "type":"structure", "members":{ "AddressId":{"shape":"AddressId"}, "Name":{"shape":"String"}, "Company":{"shape":"String"}, "Street1":{"shape":"String"}, "Street2":{"shape":"String"}, "Street3":{"shape":"String"}, "City":{"shape":"String"}, "StateOrProvince":{"shape":"String"}, "PrefectureOrDistrict":{"shape":"String"}, "Landmark":{"shape":"String"}, "Country":{"shape":"String"}, "PostalCode":{"shape":"String"}, "PhoneNumber":{"shape":"String"} } }, "AddressId":{ "type":"string", "max":40, "min":40, "pattern":"ADID[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}" }, "AddressList":{ "type":"list", "member":{"shape":"Address"} }, "Boolean":{"type":"boolean"}, "CancelJobRequest":{ "type":"structure", "required":["JobId"], "members":{ "JobId":{"shape":"JobId"} } }, "CancelJobResult":{ "type":"structure", "members":{ } }, "CreateAddressRequest":{ "type":"structure", "required":["Address"], "members":{ "Address":{"shape":"Address"} } }, "CreateAddressResult":{ "type":"structure", "members":{ "AddressId":{"shape":"String"} } }, "CreateJobRequest":{ "type":"structure", "required":[ "JobType", "Resources", "AddressId", "RoleARN", "ShippingOption" ], "members":{ "JobType":{"shape":"JobType"}, "Resources":{"shape":"JobResource"}, "Description":{"shape":"String"}, "AddressId":{"shape":"AddressId"}, "KmsKeyARN":{"shape":"KmsKeyARN"}, "RoleARN":{"shape":"RoleARN"}, "SnowballCapacityPreference":{"shape":"SnowballCapacity"}, "ShippingOption":{"shape":"ShippingOption"}, "Notification":{"shape":"Notification"} } }, "CreateJobResult":{ "type":"structure", "members":{ "JobId":{"shape":"JobId"} } }, "DataTransfer":{ "type":"structure", "members":{ "BytesTransferred":{"shape":"Long"}, "ObjectsTransferred":{"shape":"Long"}, "TotalBytes":{"shape":"Long"}, "TotalObjects":{"shape":"Long"} } }, "DescribeAddressRequest":{ "type":"structure", "required":["AddressId"], "members":{ "AddressId":{"shape":"AddressId"} } }, "DescribeAddressResult":{ "type":"structure", "members":{ "Address":{"shape":"Address"} } }, "DescribeAddressesRequest":{ "type":"structure", "members":{ "MaxResults":{"shape":"ListLimit"}, "NextToken":{"shape":"String"} } }, "DescribeAddressesResult":{ "type":"structure", "members":{ "Addresses":{"shape":"AddressList"}, "NextToken":{"shape":"String"} } }, "DescribeJobRequest":{ "type":"structure", "required":["JobId"], "members":{ "JobId":{"shape":"JobId"} } }, "DescribeJobResult":{ "type":"structure", "members":{ "JobMetadata":{"shape":"JobMetadata"}, "SubJobMetadata":{"shape":"JobMetadataList"} } }, "GetJobManifestRequest":{ "type":"structure", "required":["JobId"], "members":{ "JobId":{"shape":"JobId"} } }, "GetJobManifestResult":{ "type":"structure", "members":{ "ManifestURI":{"shape":"String"} } }, "GetJobUnlockCodeRequest":{ "type":"structure", "required":["JobId"], "members":{ "JobId":{"shape":"JobId"} } }, "GetJobUnlockCodeResult":{ "type":"structure", "members":{ "UnlockCode":{"shape":"String"} } }, "GetSnowballUsageRequest":{ "type":"structure", "members":{ } }, "GetSnowballUsageResult":{ "type":"structure", "members":{ "SnowballLimit":{"shape":"Integer"}, "SnowballsInUse":{"shape":"Integer"} } }, "Integer":{"type":"integer"}, "InvalidAddressException":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "InvalidJobStateException":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "InvalidResourceException":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "JobId":{ "type":"string", "max":39, "min":39, "pattern":"(M|J)ID[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}" }, "JobListEntry":{ "type":"structure", "members":{ "JobId":{"shape":"String"}, "JobState":{"shape":"JobState"}, "IsMaster":{"shape":"Boolean"} } }, "JobListEntryList":{ "type":"list", "member":{"shape":"JobListEntry"} }, "JobLogs":{ "type":"structure", "members":{ "JobCompletionReportURI":{"shape":"String"}, "JobSuccessLogURI":{"shape":"String"}, "JobFailureLogURI":{"shape":"String"} } }, "JobMetadata":{ "type":"structure", "members":{ "JobId":{"shape":"String"}, "JobState":{"shape":"JobState"}, "JobType":{"shape":"JobType"}, "CreationDate":{"shape":"Timestamp"}, "Resources":{"shape":"JobResource"}, "Description":{"shape":"String"}, "KmsKeyARN":{"shape":"KmsKeyARN"}, "RoleARN":{"shape":"RoleARN"}, "AddressId":{"shape":"AddressId"}, "ShippingDetails":{"shape":"ShippingDetails"}, "SnowballCapacityPreference":{"shape":"SnowballCapacity"}, "Notification":{"shape":"Notification"}, "DataTransferProgress":{"shape":"DataTransfer"}, "JobLogInfo":{"shape":"JobLogs"} } }, "JobMetadataList":{ "type":"list", "member":{"shape":"JobMetadata"} }, "JobResource":{ "type":"structure", "members":{ "S3Resources":{"shape":"S3ResourceList"} } }, "JobState":{ "type":"string", "enum":[ "New", "PreparingAppliance", "PreparingShipment", "InTransitToCustomer", "WithCustomer", "InTransitToAWS", "WithAWS", "InProgress", "Complete", "Cancelled", "Listing", "Pending" ] }, "JobStateList":{ "type":"list", "member":{"shape":"JobState"} }, "JobType":{ "type":"string", "enum":[ "IMPORT", "EXPORT" ] }, "KMSRequestFailedException":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "KeyRange":{ "type":"structure", "members":{ "BeginMarker":{"shape":"String"}, "EndMarker":{"shape":"String"} } }, "KmsKeyARN":{ "type":"string", "max":255, "pattern":"arn:(aws|aws-us-gov):kms:.*:[0-9]{12}:key/.*" }, "ListJobsRequest":{ "type":"structure", "members":{ "MaxResults":{"shape":"ListLimit"}, "NextToken":{"shape":"String"} } }, "ListJobsResult":{ "type":"structure", "members":{ "JobListEntries":{"shape":"JobListEntryList"}, "NextToken":{"shape":"String"} } }, "ListLimit":{ "type":"integer", "max":100, "min":0 }, "Long":{"type":"long"}, "Notification":{ "type":"structure", "members":{ "SnsTopicARN":{"shape":"SnsTopicARN"}, "JobStatesToNotify":{"shape":"JobStateList"}, "NotifyAll":{"shape":"Boolean"} } }, "ResourceARN":{ "type":"string", "max":255, "pattern":"arn:(aws|aws-us-gov):s3:::.*" }, "RoleARN":{ "type":"string", "max":255, "pattern":"arn:(aws|aws-us-gov):iam::[0-9]{12}:role/.*" }, "S3Resource":{ "type":"structure", "members":{ "BucketArn":{"shape":"ResourceARN"}, "KeyRange":{"shape":"KeyRange"} } }, "S3ResourceList":{ "type":"list", "member":{"shape":"S3Resource"} }, "Shipment":{ "type":"structure", "members":{ "Status":{"shape":"String"}, "TrackingNumber":{"shape":"String"} } }, "ShippingDetails":{ "type":"structure", "members":{ "ShippingOption":{"shape":"ShippingOption"}, "InboundShipment":{"shape":"Shipment"}, "OutboundShipment":{"shape":"Shipment"} } }, "ShippingOption":{ "type":"string", "enum":[ "SECOND_DAY", "NEXT_DAY", "EXPRESS", "STANDARD" ] }, "SnowballCapacity":{ "type":"string", "enum":[ "T50", "T80", "NoPreference" ] }, "SnsTopicARN":{ "type":"string", "max":255, "pattern":"arn:(aws|aws-us-gov):sns:.*:[0-9]{12}:.*" }, "String":{ "type":"string", "max":255, "min":1 }, "Timestamp":{"type":"timestamp"}, "UnsupportedAddressException":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "UpdateJobRequest":{ "type":"structure", "required":["JobId"], "members":{ "JobId":{"shape":"JobId"}, "RoleARN":{"shape":"RoleARN"}, "Notification":{"shape":"Notification"}, "Resources":{"shape":"JobResource"}, "AddressId":{"shape":"AddressId"}, "ShippingOption":{"shape":"ShippingOption"}, "Description":{"shape":"String"}, "SnowballCapacityPreference":{"shape":"SnowballCapacity"} } }, "UpdateJobResult":{ "type":"structure", "members":{ } } } } aws-sdk-go-1.4.22/models/apis/snowball/2016-06-30/docs-2.json000077500000000000000000000763511300374646400226570ustar00rootroot00000000000000{ "version": "2.0", "service": "

        AWS Import/Export Snowball is a petabyte-scale data transport solution that uses secure appliances to transfer large amounts of data between your on-premises data centers and Amazon Simple Storage Service (Amazon S3). The Snowball commands described here provide access to the same functionality that is available in the AWS Snowball Management Console, which enables you to create and manage jobs for Snowball. To transfer data locally with a Snowball appliance, you'll need to use the Snowball client or the Amazon S3 API adapter for Snowball. For more information, see the User Guide.

        ", "operations": { "CancelJob": "

        Cancels the specified job. Note that you can only cancel a job before its JobState value changes to PreparingAppliance. Requesting the ListJobs or DescribeJob action will return a job's JobState as part of the response element data returned.

        ", "CreateAddress": "

        Creates an address for a Snowball to be shipped to.

        Addresses are validated at the time of creation. The address you provide must be located within the serviceable area of your region. If the address is invalid or unsupported, then an exception is thrown.

        ", "CreateJob": "

        Creates a job to import or export data between Amazon S3 and your on-premises data center. Note that your AWS account must have the right trust policies and permissions in place to create a job for Snowball. For more information, see api-reference-policies.

        ", "DescribeAddress": "

        Takes an AddressId and returns specific details about that address in the form of an Address object.

        ", "DescribeAddresses": "

        Returns a specified number of ADDRESS objects. Calling this API in one of the US regions will return addresses from the list of all addresses associated with this account in all US regions.

        ", "DescribeJob": "

        Returns information about a specific job including shipping information, job status, and other important metadata.

        ", "GetJobManifest": "

        Returns a link to an Amazon S3 presigned URL for the manifest file associated with the specified JobId value. You can access the manifest file for up to 60 minutes after this request has been made. To access the manifest file after 60 minutes have passed, you'll have to make another call to the GetJobManifest action.

        The manifest is an encrypted file that you can download after your job enters the WithCustomer status. The manifest is decrypted by using the UnlockCode code value, when you pass both values to the Snowball through the Snowball client when the client is started for the first time.

        As a best practice, we recommend that you don't save a copy of an UnlockCode value in the same location as the manifest file for that job. Saving these separately helps prevent unauthorized parties from gaining access to the Snowball associated with that job.

        Note that the credentials of a given job, including its manifest file and unlock code, expire 90 days after the job is created.

        ", "GetJobUnlockCode": "

        Returns the UnlockCode code value for the specified job. A particular UnlockCode value can be accessed for up to 90 days after the associated job has been created.

        The UnlockCode value is a 29-character code with 25 alphanumeric characters and 4 hyphens. This code is used to decrypt the manifest file when it is passed along with the manifest to the Snowball through the Snowball client when the client is started for the first time.

        As a best practice, we recommend that you don't save a copy of the UnlockCode in the same location as the manifest file for that job. Saving these separately helps prevent unauthorized parties from gaining access to the Snowball associated with that job.

        ", "GetSnowballUsage": "

        Returns information about the Snowball service limit for your account, and also the number of Snowballs your account has in use.

        Note that the default service limit for the number of Snowballs that you can have at one time is 1. If you want to increase your service limit, contact AWS Support.

        ", "ListJobs": "

        Returns an array of JobListEntry objects of the specified length. Each JobListEntry object contains a job's state, a job's ID, and a value that indicates whether the job is a job part, in the case of export jobs. Calling this API action in one of the US regions will return jobs from the list of all jobs associated with this account in all US regions.

        ", "UpdateJob": "

        While a job's JobState value is New, you can update some of the information associated with a job. Once the job changes to a different job state, usually within 60 minutes of the job being created, this action is no longer available.

        " }, "shapes": { "Address": { "base": "

        The address that you want the Snowball or Snowballs associated with a specific job to be shipped to. Addresses are validated at the time of creation. The address you provide must be located within the serviceable area of your region. Although no individual elements of the Address are required, if the address is invalid or unsupported, then an exception is thrown.

        ", "refs": { "AddressList$member": null, "CreateAddressRequest$Address": "

        The address that you want the Snowball shipped to.

        ", "DescribeAddressResult$Address": "

        The address that you want the Snowball or Snowballs associated with a specific job to be shipped to.

        " } }, "AddressId": { "base": null, "refs": { "Address$AddressId": "

        The unique ID for an address.

        ", "CreateJobRequest$AddressId": "

        The ID for the address that you want the Snowball shipped to.

        ", "DescribeAddressRequest$AddressId": "

        The automatically generated ID for a specific address.

        ", "JobMetadata$AddressId": "

        The ID for the address that you want the Snowball shipped to.

        ", "UpdateJobRequest$AddressId": "

        The ID of the updated Address object.

        " } }, "AddressList": { "base": null, "refs": { "DescribeAddressesResult$Addresses": "

        The Snowball shipping addresses that were created for this account.

        " } }, "Boolean": { "base": null, "refs": { "JobListEntry$IsMaster": "

        A value that indicates that this job is a master job. A master job represents a successful request to create an export job. Master jobs aren't associated with any Snowballs. Instead, each master job will have at least one job part, and each job part is associated with a Snowball. It might take some time before the job parts associated with a particular master job are listed, because they are created after the master job is created.

        ", "Notification$NotifyAll": "

        Any change in job state will trigger a notification for this job.

        " } }, "CancelJobRequest": { "base": null, "refs": { } }, "CancelJobResult": { "base": null, "refs": { } }, "CreateAddressRequest": { "base": null, "refs": { } }, "CreateAddressResult": { "base": null, "refs": { } }, "CreateJobRequest": { "base": null, "refs": { } }, "CreateJobResult": { "base": null, "refs": { } }, "DataTransfer": { "base": "

        Defines the real-time status of a Snowball's data transfer while the appliance is at AWS. Note that this data is only available while a job has a JobState value of InProgress, for both import and export jobs.

        ", "refs": { "JobMetadata$DataTransferProgress": "

        A value that defines the real-time status of a Snowball's data transfer while the appliance is at AWS. Note that this data is only available while a job has a JobState value of InProgress, for both import and export jobs.

        " } }, "DescribeAddressRequest": { "base": null, "refs": { } }, "DescribeAddressResult": { "base": null, "refs": { } }, "DescribeAddressesRequest": { "base": null, "refs": { } }, "DescribeAddressesResult": { "base": null, "refs": { } }, "DescribeJobRequest": { "base": null, "refs": { } }, "DescribeJobResult": { "base": null, "refs": { } }, "GetJobManifestRequest": { "base": null, "refs": { } }, "GetJobManifestResult": { "base": null, "refs": { } }, "GetJobUnlockCodeRequest": { "base": null, "refs": { } }, "GetJobUnlockCodeResult": { "base": null, "refs": { } }, "GetSnowballUsageRequest": { "base": null, "refs": { } }, "GetSnowballUsageResult": { "base": null, "refs": { } }, "Integer": { "base": null, "refs": { "GetSnowballUsageResult$SnowballLimit": "

        The service limit for number of Snowballs this account can have at once. The default service limit is 1 (one).

        ", "GetSnowballUsageResult$SnowballsInUse": "

        The number of Snowballs that this account is currently using.

        " } }, "InvalidAddressException": { "base": "

        The address provided was invalid. Check the address with your region's carrier, and try again.

        ", "refs": { } }, "InvalidJobStateException": { "base": "

        The action can't be performed because the job's current state doesn't allow that action to be performed.

        ", "refs": { } }, "InvalidResourceException": { "base": "

        The specified resource can't be found. Check the information you provided in your last request, and try again.

        ", "refs": { } }, "JobId": { "base": null, "refs": { "CancelJobRequest$JobId": "

        The 39 character job ID for the job that you want to cancel, for example JID123e4567-e89b-12d3-a456-426655440000.

        ", "CreateJobResult$JobId": "

        The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000.

        ", "DescribeJobRequest$JobId": "

        The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000.

        ", "GetJobManifestRequest$JobId": "

        The ID for a job that you want to get the manifest file for, for example JID123e4567-e89b-12d3-a456-426655440000.

        ", "GetJobUnlockCodeRequest$JobId": "

        The ID for the job that you want to get the UnlockCode value for, for example JID123e4567-e89b-12d3-a456-426655440000.

        ", "UpdateJobRequest$JobId": "

        The job ID of the job that you want to update, for example JID123e4567-e89b-12d3-a456-426655440000.

        " } }, "JobListEntry": { "base": "

        Each JobListEntry object contains a job's state, a job's ID, and a value that indicates whether the job is a job part, in the case of an export job.

        ", "refs": { "JobListEntryList$member": null } }, "JobListEntryList": { "base": null, "refs": { "ListJobsResult$JobListEntries": "

        Each JobListEntry object contains a job's state, a job's ID, and a value that indicates whether the job is a job part, in the case of export jobs.

        " } }, "JobLogs": { "base": "

        Contains job logs. Whenever Snowball is used to import data into or export data out of Amazon S3, you'll have the option of downloading a PDF job report. Job logs are returned as a part of the response syntax of the DescribeJob action in the JobMetadata data type. The job logs can be accessed for up to 60 minutes after this request has been made. To access any of the job logs after 60 minutes have passed, you'll have to make another call to the DescribeJob action.

        For import jobs, the PDF job report becomes available at the end of the import process. For export jobs, your job report typically becomes available while the Snowball for your job part is being delivered to you.

        The job report provides you insight into the state of your Amazon S3 data transfer. The report includes details about your job or job part for your records.

        For deeper visibility into the status of your transferred objects, you can look at the two associated logs: a success log and a failure log. The logs are saved in comma-separated value (CSV) format, and the name of each log includes the ID of the job or job part that the log describes.

        ", "refs": { "JobMetadata$JobLogInfo": "

        Links to Amazon S3 presigned URLs for the job report and logs. For import jobs, the PDF job report becomes available at the end of the import process. For export jobs, your job report typically becomes available while the Snowball for your job part is being delivered to you.

        " } }, "JobMetadata": { "base": "

        Contains information about a specific job including shipping information, job status, and other important metadata. This information is returned as a part of the response syntax of the DescribeJob action.

        ", "refs": { "DescribeJobResult$JobMetadata": "

        Information about a specific job, including shipping information, job status, and other important metadata.

        ", "JobMetadataList$member": null } }, "JobMetadataList": { "base": null, "refs": { "DescribeJobResult$SubJobMetadata": "

        Information about a specific job part (in the case of an export job), including shipping information, job status, and other important metadata.

        " } }, "JobResource": { "base": "

        Contains an array of S3Resource objects. Each S3Resource object represents an Amazon S3 bucket that your transferred data will be exported from or imported into.

        ", "refs": { "CreateJobRequest$Resources": "

        Defines the Amazon S3 buckets associated with this job.

        With IMPORT jobs, you specify the bucket or buckets that your transferred data will be imported into.

        With EXPORT jobs, you specify the bucket or buckets that your transferred data will be exported from. Optionally, you can also specify a KeyRange value. If you choose to export a range, you define the length of the range by providing either an inclusive BeginMarker value, an inclusive EndMarker value, or both. Ranges are UTF-8 binary sorted.

        ", "JobMetadata$Resources": "

        An array of S3Resource objects. Each S3Resource object represents an Amazon S3 bucket that your transferred data will be exported from or imported into.

        ", "UpdateJobRequest$Resources": "

        The updated S3Resource object (for a single Amazon S3 bucket or key range), or the updated JobResource object (for multiple buckets or key ranges).

        " } }, "JobState": { "base": null, "refs": { "JobListEntry$JobState": "

        The current state of this job.

        ", "JobMetadata$JobState": "

        The current state of the jobs.

        ", "JobStateList$member": null } }, "JobStateList": { "base": null, "refs": { "Notification$JobStatesToNotify": "

        The list of job states that will trigger a notification for this job.

        " } }, "JobType": { "base": null, "refs": { "CreateJobRequest$JobType": "

        Defines the type of job that you're creating.

        ", "JobMetadata$JobType": "

        The type of job.

        " } }, "KMSRequestFailedException": { "base": "

        The provided AWS Key Management Service key lacks the permissions to perform the specified CreateJob or UpdateJob action.

        ", "refs": { } }, "KeyRange": { "base": "

        Contains a key range. For export jobs, a S3Resource object can have an optional KeyRange value. The length of the range is defined at job creation, and has either an inclusive BeginMarker, an inclusive EndMarker, or both. Ranges are UTF-8 binary sorted.

        ", "refs": { "S3Resource$KeyRange": "

        For export jobs, you can provide an optional KeyRange within a specific Amazon S3 bucket. The length of the range is defined at job creation, and has either an inclusive BeginMarker, an inclusive EndMarker, or both. Ranges are UTF-8 binary sorted.

        " } }, "KmsKeyARN": { "base": null, "refs": { "CreateJobRequest$KmsKeyARN": "

        The KmsKeyARN that you want to associate with this job. KmsKeyARNs are created using the CreateKey AWS Key Management Service (KMS) API action.

        ", "JobMetadata$KmsKeyARN": "

        The Amazon Resource Name (ARN) for the AWS Key Management Service (AWS KMS) key associated with this job. This ARN was created using the CreateKey API action in AWS KMS.

        " } }, "ListJobsRequest": { "base": null, "refs": { } }, "ListJobsResult": { "base": null, "refs": { } }, "ListLimit": { "base": null, "refs": { "DescribeAddressesRequest$MaxResults": "

        The number of ADDRESS objects to return.

        ", "ListJobsRequest$MaxResults": "

        The number of JobListEntry objects to return.

        " } }, "Long": { "base": null, "refs": { "DataTransfer$BytesTransferred": "

        The number of bytes transferred between a Snowball and Amazon S3.

        ", "DataTransfer$ObjectsTransferred": "

        The number of objects transferred between a Snowball and Amazon S3.

        ", "DataTransfer$TotalBytes": "

        The total bytes of data for a transfer between a Snowball and Amazon S3. This value is set to 0 (zero) until all the keys that will be transferred have been listed.

        ", "DataTransfer$TotalObjects": "

        The total number of objects for a transfer between a Snowball and Amazon S3. This value is set to 0 (zero) until all the keys that will be transferred have been listed.

        " } }, "Notification": { "base": "

        The Amazon Simple Notification Service (Amazon SNS) notification settings associated with a specific job. The Notification object is returned as a part of the response syntax of the DescribeJob action in the JobMetadata data type.

        When the notification settings are defined during job creation, you can choose to notify based on a specific set of job states using the JobStatesToNotify array of strings, or you can specify that you want to have Amazon SNS notifications sent out for all job states with NotifyAll set to true.

        ", "refs": { "CreateJobRequest$Notification": "

        Defines the Amazon Simple Notification Service (Amazon SNS) notification settings for this job.

        ", "JobMetadata$Notification": "

        The Amazon Simple Notification Service (Amazon SNS) notification settings associated with a specific job. The Notification object is returned as a part of the response syntax of the DescribeJob action in the JobMetadata data type.

        ", "UpdateJobRequest$Notification": "

        The new or updated Notification object.

        " } }, "ResourceARN": { "base": null, "refs": { "S3Resource$BucketArn": "

        The Amazon Resource Name (ARN) of an Amazon S3 bucket.

        " } }, "RoleARN": { "base": null, "refs": { "CreateJobRequest$RoleARN": "

        The RoleARN that you want to associate with this job. RoleArns are created using the CreateRole AWS Identity and Access Management (IAM) API action.

        ", "JobMetadata$RoleARN": "

        The role ARN associated with this job. This ARN was created using the CreateRole API action in AWS Identity and Access Management (IAM).

        ", "UpdateJobRequest$RoleARN": "

        The new role Amazon Resource Name (ARN) that you want to associate with this job. To create a role ARN, use the CreateRole AWS Identity and Access Management (IAM) API action.

        " } }, "S3Resource": { "base": "

        Each S3Resource object represents an Amazon S3 bucket that your transferred data will be exported from or imported into. For export jobs, this object can have an optional KeyRange value. The length of the range is defined at job creation, and has either an inclusive BeginMarker, an inclusive EndMarker, or both. Ranges are UTF-8 binary sorted.

        ", "refs": { "S3ResourceList$member": null } }, "S3ResourceList": { "base": null, "refs": { "JobResource$S3Resources": "

        An array of S3Resource objects.

        " } }, "Shipment": { "base": "

        The Status and TrackingNumber information for an inbound or outbound shipment.

        ", "refs": { "ShippingDetails$InboundShipment": "

        The Status and TrackingNumber values for a Snowball being delivered to the address that you specified for a particular job.

        ", "ShippingDetails$OutboundShipment": "

        The Status and TrackingNumber values for a Snowball being returned to AWS for a particular job.

        " } }, "ShippingDetails": { "base": "

        A job's shipping information, including inbound and outbound tracking numbers and shipping speed options.

        ", "refs": { "JobMetadata$ShippingDetails": "

        A job's shipping information, including inbound and outbound tracking numbers and shipping speed options.

        " } }, "ShippingOption": { "base": null, "refs": { "CreateJobRequest$ShippingOption": "

        The shipping speed for this job. Note that this speed does not dictate how soon you'll get the Snowball, rather it represents how quickly the Snowball moves to its destination while in transit. Regional shipping speeds are as follows:

        • In Australia, you have access to express shipping. Typically, Snowballs shipped express are delivered in about a day.

        • In the European Union (EU), you have access to express shipping. Typically, Snowballs shipped express are delivered in about a day. In addition, most countries in the EU have access to standard shipping, which typically takes less than a week, one way.

        • In India, Snowballs are delivered in one to seven days.

        • In the US, you have access to one-day shipping and two-day shipping.

        ", "ShippingDetails$ShippingOption": "

        The shipping speed for a particular job. Note that this speed does not dictate how soon you'll get the Snowball from the job's creation date. This speed represents how quickly it moves to its destination while in transit. Regional shipping speeds are as follows:

        • In Australia, you have access to express shipping. Typically, Snowballs shipped express are delivered in about a day.

        • In the European Union (EU), you have access to express shipping. Typically, Snowballs shipped express are delivered in about a day. In addition, most countries in the EU have access to standard shipping, which typically takes less than a week, one way.

        • In India, Snowballs are delivered in one to seven days.

        • In the United States of America (US), you have access to one-day shipping and two-day shipping.

        ", "UpdateJobRequest$ShippingOption": "

        The updated shipping option value of this job's ShippingDetails object.

        " } }, "SnowballCapacity": { "base": null, "refs": { "CreateJobRequest$SnowballCapacityPreference": "

        If your job is being created in one of the US regions, you have the option of specifying what size Snowball you'd like for this job. In all other regions, Snowballs come with 80 TB in storage capacity.

        ", "JobMetadata$SnowballCapacityPreference": "

        The Snowball capacity preference for this job, specified at job creation. In US regions, you can choose between 50 TB and 80 TB Snowballs. All other regions use 80 TB capacity Snowballs.

        ", "UpdateJobRequest$SnowballCapacityPreference": "

        The updated SnowballCapacityPreference of this job's JobMetadata object. Note that the 50 TB Snowballs are only available in the US regions.

        " } }, "SnsTopicARN": { "base": null, "refs": { "Notification$SnsTopicARN": "

        The new SNS TopicArn that you want to associate with this job. You can create Amazon Resource Names (ARNs) for topics by using the CreateTopic Amazon SNS API action.

        Note that you can subscribe email addresses to an Amazon SNS topic through the AWS Management Console, or by using the Subscribe AWS Simple Notification Service (SNS) API action.

        " } }, "String": { "base": null, "refs": { "Address$Name": "

        The name of a person to receive a Snowball at an address.

        ", "Address$Company": "

        The name of the company to receive a Snowball at an address.

        ", "Address$Street1": "

        The first line in a street address that a Snowball is to be delivered to.

        ", "Address$Street2": "

        The second line in a street address that a Snowball is to be delivered to.

        ", "Address$Street3": "

        The third line in a street address that a Snowball is to be delivered to.

        ", "Address$City": "

        The city in an address that a Snowball is to be delivered to.

        ", "Address$StateOrProvince": "

        The state or province in an address that a Snowball is to be delivered to.

        ", "Address$PrefectureOrDistrict": "

        The prefecture or district in an address that a Snowball is to be delivered to.

        ", "Address$Landmark": "

        A landmark listed in an address that a Snowball is to be delivered to.

        ", "Address$Country": "

        The country in an address that a Snowball is to be delivered to.

        ", "Address$PostalCode": "

        The postal code in an address that a Snowball is to be delivered to.

        ", "Address$PhoneNumber": "

        The phone number associated with an address that a Snowball is to be delivered to.

        ", "CreateAddressResult$AddressId": "

        The automatically generated ID for a specific address. You'll use this ID when you create a job to specify which address you want the Snowball for that job shipped to.

        ", "CreateJobRequest$Description": "

        Defines an optional description of this specific job, for example Important Photos 2016-08-11.

        ", "DescribeAddressesRequest$NextToken": "

        HTTP requests are stateless. To identify what object comes \"next\" in the list of ADDRESS objects, you have the option of specifying a value for NextToken as the starting point for your list of returned addresses.

        ", "DescribeAddressesResult$NextToken": "

        HTTP requests are stateless. If you use the automatically generated NextToken value in your next DescribeAddresses call, your list of returned addresses will start from this point in the array.

        ", "GetJobManifestResult$ManifestURI": "

        The Amazon S3 presigned URL for the manifest file associated with the specified JobId value.

        ", "GetJobUnlockCodeResult$UnlockCode": "

        The UnlockCode value for the specified job. The UnlockCode value can be accessed for up to 90 days after the job has been created.

        ", "InvalidAddressException$Message": null, "InvalidJobStateException$Message": null, "InvalidResourceException$Message": null, "JobListEntry$JobId": "

        The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000.

        ", "JobLogs$JobCompletionReportURI": "

        A link to an Amazon S3 presigned URL where the job completion report is located.

        ", "JobLogs$JobSuccessLogURI": "

        A link to an Amazon S3 presigned URL where the job success log is located.

        ", "JobLogs$JobFailureLogURI": "

        A link to an Amazon S3 presigned URL where the job failure log is located.

        ", "JobMetadata$JobId": "

        The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000.

        ", "JobMetadata$Description": "

        The description of the job, provided at job creation.

        ", "KMSRequestFailedException$Message": null, "KeyRange$BeginMarker": "

        The key that starts an optional key range for an export job. Ranges are inclusive and UTF-8 binary sorted.

        ", "KeyRange$EndMarker": "

        The key that ends an optional key range for an export job. Ranges are inclusive and UTF-8 binary sorted.

        ", "ListJobsRequest$NextToken": "

        HTTP requests are stateless. To identify what object comes \"next\" in the list of JobListEntry objects, you have the option of specifying NextToken as the starting point for your returned list.

        ", "ListJobsResult$NextToken": "

        HTTP requests are stateless. If you use this automatically generated NextToken value in your next ListJobs call, your returned JobListEntry objects will start from this point in the array.

        ", "Shipment$Status": "

        Status information for a shipment. Valid statuses include NEW, IN_TRANSIT, and DELIVERED.

        ", "Shipment$TrackingNumber": "

        The tracking number for this job. Using this tracking number with your region's carrier's website, you can track a Snowball as the carrier transports it.

        For India, the carrier is Amazon Logistics. For all other regions, UPS is the carrier.

        ", "UnsupportedAddressException$Message": null, "UpdateJobRequest$Description": "

        The updated description of this job's JobMetadata object.

        " } }, "Timestamp": { "base": null, "refs": { "JobMetadata$CreationDate": "

        The creation date for this job.

        " } }, "UnsupportedAddressException": { "base": "

        The address is either outside the serviceable area for your region, or an error occurred. Check the address with your region's carrier and try again. If the issue persists, contact AWS Support.

        ", "refs": { } }, "UpdateJobRequest": { "base": null, "refs": { } }, "UpdateJobResult": { "base": null, "refs": { } } } } aws-sdk-go-1.4.22/models/apis/snowball/2016-06-30/examples-1.json000077500000000000000000000000541300374646400235270ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/snowball/2016-06-30/paginators-1.json000077500000000000000000000005441300374646400240640ustar00rootroot00000000000000{ "pagination": { "ListJobs": { "limit_key": "MaxResults", "output_token": "NextToken", "input_token": "NextToken", "result_key": "JobListEntries" }, "DescribeAddresses": { "limit_key": "MaxResults", "output_token": "NextToken", "input_token": "NextToken", "result_key": "Addresses" } } }aws-sdk-go-1.4.22/models/apis/sns/000077500000000000000000000000001300374646400166055ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/sns/2010-03-31/000077500000000000000000000000001300374646400176305ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/sns/2010-03-31/api-2.json000066400000000000000000000735601300374646400214460ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2010-03-31", "endpointPrefix":"sns", "protocol":"query", "serviceAbbreviation":"Amazon SNS", "serviceFullName":"Amazon Simple Notification Service", "signatureVersion":"v4", "xmlNamespace":"http://sns.amazonaws.com/doc/2010-03-31/" }, "operations":{ "AddPermission":{ "name":"AddPermission", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddPermissionInput"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"}, {"shape":"NotFoundException"} ] }, "CheckIfPhoneNumberIsOptedOut":{ "name":"CheckIfPhoneNumberIsOptedOut", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CheckIfPhoneNumberIsOptedOutInput"}, "output":{ "shape":"CheckIfPhoneNumberIsOptedOutResponse", "resultWrapper":"CheckIfPhoneNumberIsOptedOutResult" }, "errors":[ {"shape":"ThrottledException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"}, {"shape":"InvalidParameterException"} ] }, "ConfirmSubscription":{ "name":"ConfirmSubscription", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ConfirmSubscriptionInput"}, "output":{ "shape":"ConfirmSubscriptionResponse", "resultWrapper":"ConfirmSubscriptionResult" }, "errors":[ {"shape":"SubscriptionLimitExceededException"}, {"shape":"InvalidParameterException"}, {"shape":"NotFoundException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"} ] }, "CreatePlatformApplication":{ "name":"CreatePlatformApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreatePlatformApplicationInput"}, "output":{ "shape":"CreatePlatformApplicationResponse", "resultWrapper":"CreatePlatformApplicationResult" }, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"} ] }, "CreatePlatformEndpoint":{ "name":"CreatePlatformEndpoint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreatePlatformEndpointInput"}, "output":{ "shape":"CreateEndpointResponse", "resultWrapper":"CreatePlatformEndpointResult" }, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"}, {"shape":"NotFoundException"} ] }, "CreateTopic":{ "name":"CreateTopic", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateTopicInput"}, "output":{ "shape":"CreateTopicResponse", "resultWrapper":"CreateTopicResult" }, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"TopicLimitExceededException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"} ] }, "DeleteEndpoint":{ "name":"DeleteEndpoint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteEndpointInput"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"} ] }, "DeletePlatformApplication":{ "name":"DeletePlatformApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeletePlatformApplicationInput"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"} ] }, "DeleteTopic":{ "name":"DeleteTopic", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteTopicInput"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"}, {"shape":"NotFoundException"} ] }, "GetEndpointAttributes":{ "name":"GetEndpointAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetEndpointAttributesInput"}, "output":{ "shape":"GetEndpointAttributesResponse", "resultWrapper":"GetEndpointAttributesResult" }, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"}, {"shape":"NotFoundException"} ] }, "GetPlatformApplicationAttributes":{ "name":"GetPlatformApplicationAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetPlatformApplicationAttributesInput"}, "output":{ "shape":"GetPlatformApplicationAttributesResponse", "resultWrapper":"GetPlatformApplicationAttributesResult" }, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"}, {"shape":"NotFoundException"} ] }, "GetSMSAttributes":{ "name":"GetSMSAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetSMSAttributesInput"}, "output":{ "shape":"GetSMSAttributesResponse", "resultWrapper":"GetSMSAttributesResult" }, "errors":[ {"shape":"ThrottledException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"}, {"shape":"InvalidParameterException"} ] }, "GetSubscriptionAttributes":{ "name":"GetSubscriptionAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetSubscriptionAttributesInput"}, "output":{ "shape":"GetSubscriptionAttributesResponse", "resultWrapper":"GetSubscriptionAttributesResult" }, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"NotFoundException"}, {"shape":"AuthorizationErrorException"} ] }, "GetTopicAttributes":{ "name":"GetTopicAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetTopicAttributesInput"}, "output":{ "shape":"GetTopicAttributesResponse", "resultWrapper":"GetTopicAttributesResult" }, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"NotFoundException"}, {"shape":"AuthorizationErrorException"} ] }, "ListEndpointsByPlatformApplication":{ "name":"ListEndpointsByPlatformApplication", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListEndpointsByPlatformApplicationInput"}, "output":{ "shape":"ListEndpointsByPlatformApplicationResponse", "resultWrapper":"ListEndpointsByPlatformApplicationResult" }, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"}, {"shape":"NotFoundException"} ] }, "ListPhoneNumbersOptedOut":{ "name":"ListPhoneNumbersOptedOut", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListPhoneNumbersOptedOutInput"}, "output":{ "shape":"ListPhoneNumbersOptedOutResponse", "resultWrapper":"ListPhoneNumbersOptedOutResult" }, "errors":[ {"shape":"ThrottledException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"}, {"shape":"InvalidParameterException"} ] }, "ListPlatformApplications":{ "name":"ListPlatformApplications", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListPlatformApplicationsInput"}, "output":{ "shape":"ListPlatformApplicationsResponse", "resultWrapper":"ListPlatformApplicationsResult" }, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"} ] }, "ListSubscriptions":{ "name":"ListSubscriptions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListSubscriptionsInput"}, "output":{ "shape":"ListSubscriptionsResponse", "resultWrapper":"ListSubscriptionsResult" }, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"} ] }, "ListSubscriptionsByTopic":{ "name":"ListSubscriptionsByTopic", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListSubscriptionsByTopicInput"}, "output":{ "shape":"ListSubscriptionsByTopicResponse", "resultWrapper":"ListSubscriptionsByTopicResult" }, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"NotFoundException"}, {"shape":"AuthorizationErrorException"} ] }, "ListTopics":{ "name":"ListTopics", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTopicsInput"}, "output":{ "shape":"ListTopicsResponse", "resultWrapper":"ListTopicsResult" }, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"} ] }, "OptInPhoneNumber":{ "name":"OptInPhoneNumber", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"OptInPhoneNumberInput"}, "output":{ "shape":"OptInPhoneNumberResponse", "resultWrapper":"OptInPhoneNumberResult" }, "errors":[ {"shape":"ThrottledException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"}, {"shape":"InvalidParameterException"} ] }, "Publish":{ "name":"Publish", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PublishInput"}, "output":{ "shape":"PublishResponse", "resultWrapper":"PublishResult" }, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InvalidParameterValueException"}, {"shape":"InternalErrorException"}, {"shape":"NotFoundException"}, {"shape":"EndpointDisabledException"}, {"shape":"PlatformApplicationDisabledException"}, {"shape":"AuthorizationErrorException"} ] }, "RemovePermission":{ "name":"RemovePermission", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemovePermissionInput"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"}, {"shape":"NotFoundException"} ] }, "SetEndpointAttributes":{ "name":"SetEndpointAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetEndpointAttributesInput"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"}, {"shape":"NotFoundException"} ] }, "SetPlatformApplicationAttributes":{ "name":"SetPlatformApplicationAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetPlatformApplicationAttributesInput"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"}, {"shape":"NotFoundException"} ] }, "SetSMSAttributes":{ "name":"SetSMSAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetSMSAttributesInput"}, "output":{ "shape":"SetSMSAttributesResponse", "resultWrapper":"SetSMSAttributesResult" }, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"ThrottledException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"} ] }, "SetSubscriptionAttributes":{ "name":"SetSubscriptionAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetSubscriptionAttributesInput"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"NotFoundException"}, {"shape":"AuthorizationErrorException"} ] }, "SetTopicAttributes":{ "name":"SetTopicAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetTopicAttributesInput"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"NotFoundException"}, {"shape":"AuthorizationErrorException"} ] }, "Subscribe":{ "name":"Subscribe", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SubscribeInput"}, "output":{ "shape":"SubscribeResponse", "resultWrapper":"SubscribeResult" }, "errors":[ {"shape":"SubscriptionLimitExceededException"}, {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"NotFoundException"}, {"shape":"AuthorizationErrorException"} ] }, "Unsubscribe":{ "name":"Unsubscribe", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UnsubscribeInput"}, "errors":[ {"shape":"InvalidParameterException"}, {"shape":"InternalErrorException"}, {"shape":"AuthorizationErrorException"}, {"shape":"NotFoundException"} ] } }, "shapes":{ "ActionsList":{ "type":"list", "member":{"shape":"action"} }, "AddPermissionInput":{ "type":"structure", "required":[ "TopicArn", "Label", "AWSAccountId", "ActionName" ], "members":{ "TopicArn":{"shape":"topicARN"}, "Label":{"shape":"label"}, "AWSAccountId":{"shape":"DelegatesList"}, "ActionName":{"shape":"ActionsList"} } }, "AuthorizationErrorException":{ "type":"structure", "members":{ "message":{"shape":"string"} }, "error":{ "code":"AuthorizationError", "httpStatusCode":403, "senderFault":true }, "exception":true }, "Binary":{"type":"blob"}, "CheckIfPhoneNumberIsOptedOutInput":{ "type":"structure", "required":["phoneNumber"], "members":{ "phoneNumber":{"shape":"PhoneNumber"} } }, "CheckIfPhoneNumberIsOptedOutResponse":{ "type":"structure", "members":{ "isOptedOut":{"shape":"boolean"} } }, "ConfirmSubscriptionInput":{ "type":"structure", "required":[ "TopicArn", "Token" ], "members":{ "TopicArn":{"shape":"topicARN"}, "Token":{"shape":"token"}, "AuthenticateOnUnsubscribe":{"shape":"authenticateOnUnsubscribe"} } }, "ConfirmSubscriptionResponse":{ "type":"structure", "members":{ "SubscriptionArn":{"shape":"subscriptionARN"} } }, "CreateEndpointResponse":{ "type":"structure", "members":{ "EndpointArn":{"shape":"String"} } }, "CreatePlatformApplicationInput":{ "type":"structure", "required":[ "Name", "Platform", "Attributes" ], "members":{ "Name":{"shape":"String"}, "Platform":{"shape":"String"}, "Attributes":{"shape":"MapStringToString"} } }, "CreatePlatformApplicationResponse":{ "type":"structure", "members":{ "PlatformApplicationArn":{"shape":"String"} } }, "CreatePlatformEndpointInput":{ "type":"structure", "required":[ "PlatformApplicationArn", "Token" ], "members":{ "PlatformApplicationArn":{"shape":"String"}, "Token":{"shape":"String"}, "CustomUserData":{"shape":"String"}, "Attributes":{"shape":"MapStringToString"} } }, "CreateTopicInput":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"topicName"} } }, "CreateTopicResponse":{ "type":"structure", "members":{ "TopicArn":{"shape":"topicARN"} } }, "DelegatesList":{ "type":"list", "member":{"shape":"delegate"} }, "DeleteEndpointInput":{ "type":"structure", "required":["EndpointArn"], "members":{ "EndpointArn":{"shape":"String"} } }, "DeletePlatformApplicationInput":{ "type":"structure", "required":["PlatformApplicationArn"], "members":{ "PlatformApplicationArn":{"shape":"String"} } }, "DeleteTopicInput":{ "type":"structure", "required":["TopicArn"], "members":{ "TopicArn":{"shape":"topicARN"} } }, "Endpoint":{ "type":"structure", "members":{ "EndpointArn":{"shape":"String"}, "Attributes":{"shape":"MapStringToString"} } }, "EndpointDisabledException":{ "type":"structure", "members":{ "message":{"shape":"string"} }, "error":{ "code":"EndpointDisabled", "httpStatusCode":400, "senderFault":true }, "exception":true }, "GetEndpointAttributesInput":{ "type":"structure", "required":["EndpointArn"], "members":{ "EndpointArn":{"shape":"String"} } }, "GetEndpointAttributesResponse":{ "type":"structure", "members":{ "Attributes":{"shape":"MapStringToString"} } }, "GetPlatformApplicationAttributesInput":{ "type":"structure", "required":["PlatformApplicationArn"], "members":{ "PlatformApplicationArn":{"shape":"String"} } }, "GetPlatformApplicationAttributesResponse":{ "type":"structure", "members":{ "Attributes":{"shape":"MapStringToString"} } }, "GetSMSAttributesInput":{ "type":"structure", "members":{ "attributes":{"shape":"ListString"} } }, "GetSMSAttributesResponse":{ "type":"structure", "members":{ "attributes":{"shape":"MapStringToString"} } }, "GetSubscriptionAttributesInput":{ "type":"structure", "required":["SubscriptionArn"], "members":{ "SubscriptionArn":{"shape":"subscriptionARN"} } }, "GetSubscriptionAttributesResponse":{ "type":"structure", "members":{ "Attributes":{"shape":"SubscriptionAttributesMap"} } }, "GetTopicAttributesInput":{ "type":"structure", "required":["TopicArn"], "members":{ "TopicArn":{"shape":"topicARN"} } }, "GetTopicAttributesResponse":{ "type":"structure", "members":{ "Attributes":{"shape":"TopicAttributesMap"} } }, "InternalErrorException":{ "type":"structure", "members":{ "message":{"shape":"string"} }, "error":{ "code":"InternalError", "httpStatusCode":500 }, "exception":true, "fault":true }, "InvalidParameterException":{ "type":"structure", "members":{ "message":{"shape":"string"} }, "error":{ "code":"InvalidParameter", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidParameterValueException":{ "type":"structure", "members":{ "message":{"shape":"string"} }, "error":{ "code":"ParameterValueInvalid", "httpStatusCode":400, "senderFault":true }, "exception":true }, "ListEndpointsByPlatformApplicationInput":{ "type":"structure", "required":["PlatformApplicationArn"], "members":{ "PlatformApplicationArn":{"shape":"String"}, "NextToken":{"shape":"String"} } }, "ListEndpointsByPlatformApplicationResponse":{ "type":"structure", "members":{ "Endpoints":{"shape":"ListOfEndpoints"}, "NextToken":{"shape":"String"} } }, "ListOfEndpoints":{ "type":"list", "member":{"shape":"Endpoint"} }, "ListOfPlatformApplications":{ "type":"list", "member":{"shape":"PlatformApplication"} }, "ListPhoneNumbersOptedOutInput":{ "type":"structure", "members":{ "nextToken":{"shape":"string"} } }, "ListPhoneNumbersOptedOutResponse":{ "type":"structure", "members":{ "phoneNumbers":{"shape":"PhoneNumberList"}, "nextToken":{"shape":"string"} } }, "ListPlatformApplicationsInput":{ "type":"structure", "members":{ "NextToken":{"shape":"String"} } }, "ListPlatformApplicationsResponse":{ "type":"structure", "members":{ "PlatformApplications":{"shape":"ListOfPlatformApplications"}, "NextToken":{"shape":"String"} } }, "ListString":{ "type":"list", "member":{"shape":"String"} }, "ListSubscriptionsByTopicInput":{ "type":"structure", "required":["TopicArn"], "members":{ "TopicArn":{"shape":"topicARN"}, "NextToken":{"shape":"nextToken"} } }, "ListSubscriptionsByTopicResponse":{ "type":"structure", "members":{ "Subscriptions":{"shape":"SubscriptionsList"}, "NextToken":{"shape":"nextToken"} } }, "ListSubscriptionsInput":{ "type":"structure", "members":{ "NextToken":{"shape":"nextToken"} } }, "ListSubscriptionsResponse":{ "type":"structure", "members":{ "Subscriptions":{"shape":"SubscriptionsList"}, "NextToken":{"shape":"nextToken"} } }, "ListTopicsInput":{ "type":"structure", "members":{ "NextToken":{"shape":"nextToken"} } }, "ListTopicsResponse":{ "type":"structure", "members":{ "Topics":{"shape":"TopicsList"}, "NextToken":{"shape":"nextToken"} } }, "MapStringToString":{ "type":"map", "key":{"shape":"String"}, "value":{"shape":"String"} }, "MessageAttributeMap":{ "type":"map", "key":{ "shape":"String", "locationName":"Name" }, "value":{ "shape":"MessageAttributeValue", "locationName":"Value" } }, "MessageAttributeValue":{ "type":"structure", "required":["DataType"], "members":{ "DataType":{"shape":"String"}, "StringValue":{"shape":"String"}, "BinaryValue":{"shape":"Binary"} } }, "NotFoundException":{ "type":"structure", "members":{ "message":{"shape":"string"} }, "error":{ "code":"NotFound", "httpStatusCode":404, "senderFault":true }, "exception":true }, "OptInPhoneNumberInput":{ "type":"structure", "required":["phoneNumber"], "members":{ "phoneNumber":{"shape":"PhoneNumber"} } }, "OptInPhoneNumberResponse":{ "type":"structure", "members":{ } }, "PhoneNumber":{"type":"string"}, "PhoneNumberList":{ "type":"list", "member":{"shape":"PhoneNumber"} }, "PlatformApplication":{ "type":"structure", "members":{ "PlatformApplicationArn":{"shape":"String"}, "Attributes":{"shape":"MapStringToString"} } }, "PlatformApplicationDisabledException":{ "type":"structure", "members":{ "message":{"shape":"string"} }, "error":{ "code":"PlatformApplicationDisabled", "httpStatusCode":400, "senderFault":true }, "exception":true }, "PublishInput":{ "type":"structure", "required":["Message"], "members":{ "TopicArn":{"shape":"topicARN"}, "TargetArn":{"shape":"String"}, "PhoneNumber":{"shape":"String"}, "Message":{"shape":"message"}, "Subject":{"shape":"subject"}, "MessageStructure":{"shape":"messageStructure"}, "MessageAttributes":{"shape":"MessageAttributeMap"} } }, "PublishResponse":{ "type":"structure", "members":{ "MessageId":{"shape":"messageId"} } }, "RemovePermissionInput":{ "type":"structure", "required":[ "TopicArn", "Label" ], "members":{ "TopicArn":{"shape":"topicARN"}, "Label":{"shape":"label"} } }, "SetEndpointAttributesInput":{ "type":"structure", "required":[ "EndpointArn", "Attributes" ], "members":{ "EndpointArn":{"shape":"String"}, "Attributes":{"shape":"MapStringToString"} } }, "SetPlatformApplicationAttributesInput":{ "type":"structure", "required":[ "PlatformApplicationArn", "Attributes" ], "members":{ "PlatformApplicationArn":{"shape":"String"}, "Attributes":{"shape":"MapStringToString"} } }, "SetSMSAttributesInput":{ "type":"structure", "required":["attributes"], "members":{ "attributes":{"shape":"MapStringToString"} } }, "SetSMSAttributesResponse":{ "type":"structure", "members":{ } }, "SetSubscriptionAttributesInput":{ "type":"structure", "required":[ "SubscriptionArn", "AttributeName" ], "members":{ "SubscriptionArn":{"shape":"subscriptionARN"}, "AttributeName":{"shape":"attributeName"}, "AttributeValue":{"shape":"attributeValue"} } }, "SetTopicAttributesInput":{ "type":"structure", "required":[ "TopicArn", "AttributeName" ], "members":{ "TopicArn":{"shape":"topicARN"}, "AttributeName":{"shape":"attributeName"}, "AttributeValue":{"shape":"attributeValue"} } }, "String":{"type":"string"}, "SubscribeInput":{ "type":"structure", "required":[ "TopicArn", "Protocol" ], "members":{ "TopicArn":{"shape":"topicARN"}, "Protocol":{"shape":"protocol"}, "Endpoint":{"shape":"endpoint"} } }, "SubscribeResponse":{ "type":"structure", "members":{ "SubscriptionArn":{"shape":"subscriptionARN"} } }, "Subscription":{ "type":"structure", "members":{ "SubscriptionArn":{"shape":"subscriptionARN"}, "Owner":{"shape":"account"}, "Protocol":{"shape":"protocol"}, "Endpoint":{"shape":"endpoint"}, "TopicArn":{"shape":"topicARN"} } }, "SubscriptionAttributesMap":{ "type":"map", "key":{"shape":"attributeName"}, "value":{"shape":"attributeValue"} }, "SubscriptionLimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"string"} }, "error":{ "code":"SubscriptionLimitExceeded", "httpStatusCode":403, "senderFault":true }, "exception":true }, "SubscriptionsList":{ "type":"list", "member":{"shape":"Subscription"} }, "ThrottledException":{ "type":"structure", "members":{ "message":{"shape":"string"} }, "error":{ "code":"Throttled", "httpStatusCode":429, "senderFault":true }, "exception":true }, "Topic":{ "type":"structure", "members":{ "TopicArn":{"shape":"topicARN"} } }, "TopicAttributesMap":{ "type":"map", "key":{"shape":"attributeName"}, "value":{"shape":"attributeValue"} }, "TopicLimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"string"} }, "error":{ "code":"TopicLimitExceeded", "httpStatusCode":403, "senderFault":true }, "exception":true }, "TopicsList":{ "type":"list", "member":{"shape":"Topic"} }, "UnsubscribeInput":{ "type":"structure", "required":["SubscriptionArn"], "members":{ "SubscriptionArn":{"shape":"subscriptionARN"} } }, "account":{"type":"string"}, "action":{"type":"string"}, "attributeName":{"type":"string"}, "attributeValue":{"type":"string"}, "authenticateOnUnsubscribe":{"type":"string"}, "boolean":{"type":"boolean"}, "delegate":{"type":"string"}, "endpoint":{"type":"string"}, "label":{"type":"string"}, "message":{"type":"string"}, "messageId":{"type":"string"}, "messageStructure":{"type":"string"}, "nextToken":{"type":"string"}, "protocol":{"type":"string"}, "string":{"type":"string"}, "subject":{"type":"string"}, "subscriptionARN":{"type":"string"}, "token":{"type":"string"}, "topicARN":{"type":"string"}, "topicName":{"type":"string"} } } aws-sdk-go-1.4.22/models/apis/sns/2010-03-31/docs-2.json000066400000000000000000001546661300374646400216340ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon Simple Notification Service

        Amazon Simple Notification Service (Amazon SNS) is a web service that enables you to build distributed web-enabled applications. Applications can use Amazon SNS to easily push real-time notification messages to interested subscribers over multiple delivery protocols. For more information about this product see http://aws.amazon.com/sns. For detailed information about Amazon SNS features and their associated API calls, see the Amazon SNS Developer Guide.

        We also provide SDKs that enable you to access Amazon SNS from your preferred programming language. The SDKs contain functionality that automatically takes care of tasks such as: cryptographically signing your service requests, retrying requests, and handling error responses. For a list of available SDKs, go to Tools for Amazon Web Services.

        ", "operations": { "AddPermission": "

        Adds a statement to a topic's access control policy, granting access for the specified AWS accounts to the specified actions.

        ", "CheckIfPhoneNumberIsOptedOut": "

        Accepts a phone number and indicates whether the phone holder has opted out of receiving SMS messages from your account. You cannot send SMS messages to a number that is opted out.

        To resume sending messages, you can opt in the number by using the OptInPhoneNumber action.

        ", "ConfirmSubscription": "

        Verifies an endpoint owner's intent to receive messages by validating the token sent to the endpoint by an earlier Subscribe action. If the token is valid, the action creates a new subscription and returns its Amazon Resource Name (ARN). This call requires an AWS signature only when the AuthenticateOnUnsubscribe flag is set to \"true\".

        ", "CreatePlatformApplication": "

        Creates a platform application object for one of the supported push notification services, such as APNS and GCM, to which devices and mobile apps may register. You must specify PlatformPrincipal and PlatformCredential attributes when using the CreatePlatformApplication action. The PlatformPrincipal is received from the notification service. For APNS/APNS_SANDBOX, PlatformPrincipal is \"SSL certificate\". For GCM, PlatformPrincipal is not applicable. For ADM, PlatformPrincipal is \"client id\". The PlatformCredential is also received from the notification service. For WNS, PlatformPrincipal is \"Package Security Identifier\". For MPNS, PlatformPrincipal is \"TLS certificate\". For Baidu, PlatformPrincipal is \"API key\".

        For APNS/APNS_SANDBOX, PlatformCredential is \"private key\". For GCM, PlatformCredential is \"API key\". For ADM, PlatformCredential is \"client secret\". For WNS, PlatformCredential is \"secret key\". For MPNS, PlatformCredential is \"private key\". For Baidu, PlatformCredential is \"secret key\". The PlatformApplicationArn that is returned when using CreatePlatformApplication is then used as an attribute for the CreatePlatformEndpoint action. For more information, see Using Amazon SNS Mobile Push Notifications. For more information about obtaining the PlatformPrincipal and PlatformCredential for each of the supported push notification services, see Getting Started with Apple Push Notification Service, Getting Started with Amazon Device Messaging, Getting Started with Baidu Cloud Push, Getting Started with Google Cloud Messaging for Android, Getting Started with MPNS, or Getting Started with WNS.

        ", "CreatePlatformEndpoint": "

        Creates an endpoint for a device and mobile app on one of the supported push notification services, such as GCM and APNS. CreatePlatformEndpoint requires the PlatformApplicationArn that is returned from CreatePlatformApplication. The EndpointArn that is returned when using CreatePlatformEndpoint can then be used by the Publish action to send a message to a mobile app or by the Subscribe action for subscription to a topic. The CreatePlatformEndpoint action is idempotent, so if the requester already owns an endpoint with the same device token and attributes, that endpoint's ARN is returned without creating a new endpoint. For more information, see Using Amazon SNS Mobile Push Notifications.

        When using CreatePlatformEndpoint with Baidu, two attributes must be provided: ChannelId and UserId. The token field must also contain the ChannelId. For more information, see Creating an Amazon SNS Endpoint for Baidu.

        ", "CreateTopic": "

        Creates a topic to which notifications can be published. Users can create at most 100,000 topics. For more information, see http://aws.amazon.com/sns. This action is idempotent, so if the requester already owns a topic with the specified name, that topic's ARN is returned without creating a new topic.

        ", "DeleteEndpoint": "

        Deletes the endpoint for a device and mobile app from Amazon SNS. This action is idempotent. For more information, see Using Amazon SNS Mobile Push Notifications.

        When you delete an endpoint that is also subscribed to a topic, then you must also unsubscribe the endpoint from the topic.

        ", "DeletePlatformApplication": "

        Deletes a platform application object for one of the supported push notification services, such as APNS and GCM. For more information, see Using Amazon SNS Mobile Push Notifications.

        ", "DeleteTopic": "

        Deletes a topic and all its subscriptions. Deleting a topic might prevent some messages previously sent to the topic from being delivered to subscribers. This action is idempotent, so deleting a topic that does not exist does not result in an error.

        ", "GetEndpointAttributes": "

        Retrieves the endpoint attributes for a device on one of the supported push notification services, such as GCM and APNS. For more information, see Using Amazon SNS Mobile Push Notifications.

        ", "GetPlatformApplicationAttributes": "

        Retrieves the attributes of the platform application object for the supported push notification services, such as APNS and GCM. For more information, see Using Amazon SNS Mobile Push Notifications.

        ", "GetSMSAttributes": "

        Returns the settings for sending SMS messages from your account.

        These settings are set with the SetSMSAttributes action.

        ", "GetSubscriptionAttributes": "

        Returns all of the properties of a subscription.

        ", "GetTopicAttributes": "

        Returns all of the properties of a topic. Topic properties returned might differ based on the authorization of the user.

        ", "ListEndpointsByPlatformApplication": "

        Lists the endpoints and endpoint attributes for devices in a supported push notification service, such as GCM and APNS. The results for ListEndpointsByPlatformApplication are paginated and return a limited list of endpoints, up to 100. If additional records are available after the first page results, then a NextToken string will be returned. To receive the next page, you call ListEndpointsByPlatformApplication again using the NextToken string received from the previous call. When there are no more records to return, NextToken will be null. For more information, see Using Amazon SNS Mobile Push Notifications.

        ", "ListPhoneNumbersOptedOut": "

        Returns a list of phone numbers that are opted out, meaning you cannot send SMS messages to them.

        The results for ListPhoneNumbersOptedOut are paginated, and each page returns up to 100 phone numbers. If additional phone numbers are available after the first page of results, then a NextToken string will be returned. To receive the next page, you call ListPhoneNumbersOptedOut again using the NextToken string received from the previous call. When there are no more records to return, NextToken will be null.

        ", "ListPlatformApplications": "

        Lists the platform application objects for the supported push notification services, such as APNS and GCM. The results for ListPlatformApplications are paginated and return a limited list of applications, up to 100. If additional records are available after the first page results, then a NextToken string will be returned. To receive the next page, you call ListPlatformApplications using the NextToken string received from the previous call. When there are no more records to return, NextToken will be null. For more information, see Using Amazon SNS Mobile Push Notifications.

        ", "ListSubscriptions": "

        Returns a list of the requester's subscriptions. Each call returns a limited list of subscriptions, up to 100. If there are more subscriptions, a NextToken is also returned. Use the NextToken parameter in a new ListSubscriptions call to get further results.

        ", "ListSubscriptionsByTopic": "

        Returns a list of the subscriptions to a specific topic. Each call returns a limited list of subscriptions, up to 100. If there are more subscriptions, a NextToken is also returned. Use the NextToken parameter in a new ListSubscriptionsByTopic call to get further results.

        ", "ListTopics": "

        Returns a list of the requester's topics. Each call returns a limited list of topics, up to 100. If there are more topics, a NextToken is also returned. Use the NextToken parameter in a new ListTopics call to get further results.

        ", "OptInPhoneNumber": "

        Use this request to opt in a phone number that is opted out, which enables you to resume sending SMS messages to the number.

        You can opt in a phone number only once every 30 days.

        ", "Publish": "

        Sends a message to all of a topic's subscribed endpoints. When a messageId is returned, the message has been saved and Amazon SNS will attempt to deliver it to the topic's subscribers shortly. The format of the outgoing message to each subscribed endpoint depends on the notification protocol.

        To use the Publish action for sending a message to a mobile endpoint, such as an app on a Kindle device or mobile phone, you must specify the EndpointArn for the TargetArn parameter. The EndpointArn is returned when making a call with the CreatePlatformEndpoint action.

        For more information about formatting messages, see Send Custom Platform-Specific Payloads in Messages to Mobile Devices.

        ", "RemovePermission": "

        Removes a statement from a topic's access control policy.

        ", "SetEndpointAttributes": "

        Sets the attributes for an endpoint for a device on one of the supported push notification services, such as GCM and APNS. For more information, see Using Amazon SNS Mobile Push Notifications.

        ", "SetPlatformApplicationAttributes": "

        Sets the attributes of the platform application object for the supported push notification services, such as APNS and GCM. For more information, see Using Amazon SNS Mobile Push Notifications. For information on configuring attributes for message delivery status, see Using Amazon SNS Application Attributes for Message Delivery Status.

        ", "SetSMSAttributes": "

        Use this request to set the default settings for sending SMS messages and receiving daily SMS usage reports.

        You can override some of these settings for a single message when you use the Publish action with the MessageAttributes.entry.N parameter. For more information, see Sending an SMS Message in the Amazon SNS Developer Guide.

        ", "SetSubscriptionAttributes": "

        Allows a subscription owner to set an attribute of the topic to a new value.

        ", "SetTopicAttributes": "

        Allows a topic owner to set an attribute of the topic to a new value.

        ", "Subscribe": "

        Prepares to subscribe an endpoint by sending the endpoint a confirmation message. To actually create a subscription, the endpoint owner must call the ConfirmSubscription action with the token from the confirmation message. Confirmation tokens are valid for three days.

        ", "Unsubscribe": "

        Deletes a subscription. If the subscription requires authentication for deletion, only the owner of the subscription or the topic's owner can unsubscribe, and an AWS signature is required. If the Unsubscribe call does not require authentication and the requester is not the subscription owner, a final cancellation message is delivered to the endpoint, so that the endpoint owner can easily resubscribe to the topic if the Unsubscribe request was unintended.

        " }, "shapes": { "ActionsList": { "base": null, "refs": { "AddPermissionInput$ActionName": "

        The action you want to allow for the specified principal(s).

        Valid values: any Amazon SNS action name.

        " } }, "AddPermissionInput": { "base": null, "refs": { } }, "AuthorizationErrorException": { "base": "

        Indicates that the user has been denied access to the requested resource.

        ", "refs": { } }, "Binary": { "base": null, "refs": { "MessageAttributeValue$BinaryValue": "

        Binary type attributes can store any binary data, for example, compressed data, encrypted data, or images.

        " } }, "CheckIfPhoneNumberIsOptedOutInput": { "base": "

        The input for the CheckIfPhoneNumberIsOptedOut action.

        ", "refs": { } }, "CheckIfPhoneNumberIsOptedOutResponse": { "base": "

        The response from the CheckIfPhoneNumberIsOptedOut action.

        ", "refs": { } }, "ConfirmSubscriptionInput": { "base": "

        Input for ConfirmSubscription action.

        ", "refs": { } }, "ConfirmSubscriptionResponse": { "base": "

        Response for ConfirmSubscriptions action.

        ", "refs": { } }, "CreateEndpointResponse": { "base": "

        Response from CreateEndpoint action.

        ", "refs": { } }, "CreatePlatformApplicationInput": { "base": "

        Input for CreatePlatformApplication action.

        ", "refs": { } }, "CreatePlatformApplicationResponse": { "base": "

        Response from CreatePlatformApplication action.

        ", "refs": { } }, "CreatePlatformEndpointInput": { "base": "

        Input for CreatePlatformEndpoint action.

        ", "refs": { } }, "CreateTopicInput": { "base": "

        Input for CreateTopic action.

        ", "refs": { } }, "CreateTopicResponse": { "base": "

        Response from CreateTopic action.

        ", "refs": { } }, "DelegatesList": { "base": null, "refs": { "AddPermissionInput$AWSAccountId": "

        The AWS account IDs of the users (principals) who will be given access to the specified actions. The users must have AWS accounts, but do not need to be signed up for this service.

        " } }, "DeleteEndpointInput": { "base": "

        Input for DeleteEndpoint action.

        ", "refs": { } }, "DeletePlatformApplicationInput": { "base": "

        Input for DeletePlatformApplication action.

        ", "refs": { } }, "DeleteTopicInput": { "base": null, "refs": { } }, "Endpoint": { "base": "

        Endpoint for mobile app and device.

        ", "refs": { "ListOfEndpoints$member": null } }, "EndpointDisabledException": { "base": "

        Exception error indicating endpoint disabled.

        ", "refs": { } }, "GetEndpointAttributesInput": { "base": "

        Input for GetEndpointAttributes action.

        ", "refs": { } }, "GetEndpointAttributesResponse": { "base": "

        Response from GetEndpointAttributes of the EndpointArn.

        ", "refs": { } }, "GetPlatformApplicationAttributesInput": { "base": "

        Input for GetPlatformApplicationAttributes action.

        ", "refs": { } }, "GetPlatformApplicationAttributesResponse": { "base": "

        Response for GetPlatformApplicationAttributes action.

        ", "refs": { } }, "GetSMSAttributesInput": { "base": "

        The input for the GetSMSAttributes request.

        ", "refs": { } }, "GetSMSAttributesResponse": { "base": "

        The response from the GetSMSAttributes request.

        ", "refs": { } }, "GetSubscriptionAttributesInput": { "base": "

        Input for GetSubscriptionAttributes.

        ", "refs": { } }, "GetSubscriptionAttributesResponse": { "base": "

        Response for GetSubscriptionAttributes action.

        ", "refs": { } }, "GetTopicAttributesInput": { "base": "

        Input for GetTopicAttributes action.

        ", "refs": { } }, "GetTopicAttributesResponse": { "base": "

        Response for GetTopicAttributes action.

        ", "refs": { } }, "InternalErrorException": { "base": "

        Indicates an internal service error.

        ", "refs": { } }, "InvalidParameterException": { "base": "

        Indicates that a request parameter does not comply with the associated constraints.

        ", "refs": { } }, "InvalidParameterValueException": { "base": "

        Indicates that a request parameter does not comply with the associated constraints.

        ", "refs": { } }, "ListEndpointsByPlatformApplicationInput": { "base": "

        Input for ListEndpointsByPlatformApplication action.

        ", "refs": { } }, "ListEndpointsByPlatformApplicationResponse": { "base": "

        Response for ListEndpointsByPlatformApplication action.

        ", "refs": { } }, "ListOfEndpoints": { "base": null, "refs": { "ListEndpointsByPlatformApplicationResponse$Endpoints": "

        Endpoints returned for ListEndpointsByPlatformApplication action.

        " } }, "ListOfPlatformApplications": { "base": null, "refs": { "ListPlatformApplicationsResponse$PlatformApplications": "

        Platform applications returned when calling ListPlatformApplications action.

        " } }, "ListPhoneNumbersOptedOutInput": { "base": "

        The input for the ListPhoneNumbersOptedOut action.

        ", "refs": { } }, "ListPhoneNumbersOptedOutResponse": { "base": "

        The response from the ListPhoneNumbersOptedOut action.

        ", "refs": { } }, "ListPlatformApplicationsInput": { "base": "

        Input for ListPlatformApplications action.

        ", "refs": { } }, "ListPlatformApplicationsResponse": { "base": "

        Response for ListPlatformApplications action.

        ", "refs": { } }, "ListString": { "base": null, "refs": { "GetSMSAttributesInput$attributes": "

        A list of the individual attribute names, such as MonthlySpendLimit, for which you want values.

        For all attribute names, see SetSMSAttributes.

        If you don't use this parameter, Amazon SNS returns all SMS attributes.

        " } }, "ListSubscriptionsByTopicInput": { "base": "

        Input for ListSubscriptionsByTopic action.

        ", "refs": { } }, "ListSubscriptionsByTopicResponse": { "base": "

        Response for ListSubscriptionsByTopic action.

        ", "refs": { } }, "ListSubscriptionsInput": { "base": "

        Input for ListSubscriptions action.

        ", "refs": { } }, "ListSubscriptionsResponse": { "base": "

        Response for ListSubscriptions action

        ", "refs": { } }, "ListTopicsInput": { "base": null, "refs": { } }, "ListTopicsResponse": { "base": "

        Response for ListTopics action.

        ", "refs": { } }, "MapStringToString": { "base": null, "refs": { "CreatePlatformApplicationInput$Attributes": "

        For a list of attributes, see SetPlatformApplicationAttributes

        ", "CreatePlatformEndpointInput$Attributes": "

        For a list of attributes, see SetEndpointAttributes.

        ", "Endpoint$Attributes": "

        Attributes for endpoint.

        ", "GetEndpointAttributesResponse$Attributes": "

        Attributes include the following:

        • CustomUserData -- arbitrary user data to associate with the endpoint. Amazon SNS does not use this data. The data must be in UTF-8 format and less than 2KB.

        • Enabled -- flag that enables/disables delivery to the endpoint. Amazon SNS will set this to false when a notification service indicates to Amazon SNS that the endpoint is invalid. Users can set it back to true, typically after updating Token.

        • Token -- device token, also referred to as a registration id, for an app and mobile device. This is returned from the notification service when an app and mobile device are registered with the notification service.

        ", "GetPlatformApplicationAttributesResponse$Attributes": "

        Attributes include the following:

        • EventEndpointCreated -- Topic ARN to which EndpointCreated event notifications should be sent.

        • EventEndpointDeleted -- Topic ARN to which EndpointDeleted event notifications should be sent.

        • EventEndpointUpdated -- Topic ARN to which EndpointUpdate event notifications should be sent.

        • EventDeliveryFailure -- Topic ARN to which DeliveryFailure event notifications should be sent upon Direct Publish delivery failure (permanent) to one of the application's endpoints.

        ", "GetSMSAttributesResponse$attributes": "

        The SMS attribute names and their values.

        ", "PlatformApplication$Attributes": "

        Attributes for platform application object.

        ", "SetEndpointAttributesInput$Attributes": "

        A map of the endpoint attributes. Attributes in this map include the following:

        • CustomUserData -- arbitrary user data to associate with the endpoint. Amazon SNS does not use this data. The data must be in UTF-8 format and less than 2KB.

        • Enabled -- flag that enables/disables delivery to the endpoint. Amazon SNS will set this to false when a notification service indicates to Amazon SNS that the endpoint is invalid. Users can set it back to true, typically after updating Token.

        • Token -- device token, also referred to as a registration id, for an app and mobile device. This is returned from the notification service when an app and mobile device are registered with the notification service.

        ", "SetPlatformApplicationAttributesInput$Attributes": "

        A map of the platform application attributes. Attributes in this map include the following:

        • PlatformCredential -- The credential received from the notification service. For APNS/APNS_SANDBOX, PlatformCredential is private key. For GCM, PlatformCredential is \"API key\". For ADM, PlatformCredential is \"client secret\".

        • PlatformPrincipal -- The principal received from the notification service. For APNS/APNS_SANDBOX, PlatformPrincipal is SSL certificate. For GCM, PlatformPrincipal is not applicable. For ADM, PlatformPrincipal is \"client id\".

        • EventEndpointCreated -- Topic ARN to which EndpointCreated event notifications should be sent.

        • EventEndpointDeleted -- Topic ARN to which EndpointDeleted event notifications should be sent.

        • EventEndpointUpdated -- Topic ARN to which EndpointUpdate event notifications should be sent.

        • EventDeliveryFailure -- Topic ARN to which DeliveryFailure event notifications should be sent upon Direct Publish delivery failure (permanent) to one of the application's endpoints.

        • SuccessFeedbackRoleArn -- IAM role ARN used to give Amazon SNS write access to use CloudWatch Logs on your behalf.

        • FailureFeedbackRoleArn -- IAM role ARN used to give Amazon SNS write access to use CloudWatch Logs on your behalf.

        • SuccessFeedbackSampleRate -- Sample rate percentage (0-100) of successfully delivered messages.

        ", "SetSMSAttributesInput$attributes": "

        The default settings for sending SMS messages from your account. You can set values for the following attribute names:

        MonthlySpendLimit – The maximum amount in USD that you are willing to spend each month to send SMS messages. When Amazon SNS determines that sending an SMS message would incur a cost that exceeds this limit, it stops sending SMS messages within minutes.

        Amazon SNS stops sending SMS messages within minutes of the limit being crossed. During that interval, if you continue to send SMS messages, you will incur costs that exceed your limit.

        By default, the spend limit is set to the maximum allowed by Amazon SNS. If you want to exceed the maximum, contact AWS Support or your AWS sales representative for a service limit increase.

        DeliveryStatusIAMRole – The ARN of the IAM role that allows Amazon SNS to write logs about SMS deliveries in CloudWatch Logs. For each SMS message that you send, Amazon SNS writes a log that includes the message price, the success or failure status, the reason for failure (if the message failed), the message dwell time, and other information.

        DeliveryStatusSuccessSamplingRate – The percentage of successful SMS deliveries for which Amazon SNS will write logs in CloudWatch Logs. The value can be an integer from 0 - 100. For example, to write logs only for failed deliveries, set this value to 0. To write logs for 10% of your successful deliveries, set it to 10.

        DefaultSenderID – A string, such as your business brand, that is displayed as the sender on the receiving device. Support for sender IDs varies by country. The sender ID can be 1 - 11 alphanumeric characters, and it must contain at least one letter.

        DefaultSMSType – The type of SMS message that you will send by default. You can assign the following values:

        • Promotional – (Default) Noncritical messages, such as marketing messages. Amazon SNS optimizes the message delivery to incur the lowest cost.

        • Transactional – Critical messages that support customer transactions, such as one-time passcodes for multi-factor authentication. Amazon SNS optimizes the message delivery to achieve the highest reliability.

        UsageReportS3Bucket – The name of the Amazon S3 bucket to receive daily SMS usage reports from Amazon SNS. Each day, Amazon SNS will deliver a usage report as a CSV file to the bucket. The report includes the following information for each SMS message that was successfully delivered by your account:

        • Time that the message was published (in UTC)

        • Message ID

        • Destination phone number

        • Message type

        • Delivery status

        • Message price (in USD)

        • Part number (a message is split into multiple parts if it is too long for a single message)

        • Total number of parts

        To receive the report, the bucket must have a policy that allows the Amazon SNS service principle to perform the s3:PutObject and s3:GetBucketLocation actions.

        For an example bucket policy and usage report, see Monitoring SMS Activity in the Amazon SNS Developer Guide.

        " } }, "MessageAttributeMap": { "base": null, "refs": { "PublishInput$MessageAttributes": "

        Message attributes for Publish action.

        " } }, "MessageAttributeValue": { "base": "

        The user-specified message attribute value. For string data types, the value attribute has the same restrictions on the content as the message body. For more information, see Publish.

        Name, type, and value must not be empty or null. In addition, the message body should not be empty or null. All parts of the message attribute, including name, type, and value, are included in the message size restriction, which is currently 256 KB (262,144 bytes). For more information, see Using Amazon SNS Message Attributes.

        ", "refs": { "MessageAttributeMap$value": null } }, "NotFoundException": { "base": "

        Indicates that the requested resource does not exist.

        ", "refs": { } }, "OptInPhoneNumberInput": { "base": "

        Input for the OptInPhoneNumber action.

        ", "refs": { } }, "OptInPhoneNumberResponse": { "base": "

        The response for the OptInPhoneNumber action.

        ", "refs": { } }, "PhoneNumber": { "base": null, "refs": { "CheckIfPhoneNumberIsOptedOutInput$phoneNumber": "

        The phone number for which you want to check the opt out status.

        ", "OptInPhoneNumberInput$phoneNumber": "

        The phone number to opt in.

        ", "PhoneNumberList$member": null } }, "PhoneNumberList": { "base": null, "refs": { "ListPhoneNumbersOptedOutResponse$phoneNumbers": "

        A list of phone numbers that are opted out of receiving SMS messages. The list is paginated, and each page can contain up to 100 phone numbers.

        " } }, "PlatformApplication": { "base": "

        Platform application object.

        ", "refs": { "ListOfPlatformApplications$member": null } }, "PlatformApplicationDisabledException": { "base": "

        Exception error indicating platform application disabled.

        ", "refs": { } }, "PublishInput": { "base": "

        Input for Publish action.

        ", "refs": { } }, "PublishResponse": { "base": "

        Response for Publish action.

        ", "refs": { } }, "RemovePermissionInput": { "base": "

        Input for RemovePermission action.

        ", "refs": { } }, "SetEndpointAttributesInput": { "base": "

        Input for SetEndpointAttributes action.

        ", "refs": { } }, "SetPlatformApplicationAttributesInput": { "base": "

        Input for SetPlatformApplicationAttributes action.

        ", "refs": { } }, "SetSMSAttributesInput": { "base": "

        The input for the SetSMSAttributes action.

        ", "refs": { } }, "SetSMSAttributesResponse": { "base": "

        The response for the SetSMSAttributes action.

        ", "refs": { } }, "SetSubscriptionAttributesInput": { "base": "

        Input for SetSubscriptionAttributes action.

        ", "refs": { } }, "SetTopicAttributesInput": { "base": "

        Input for SetTopicAttributes action.

        ", "refs": { } }, "String": { "base": null, "refs": { "CreateEndpointResponse$EndpointArn": "

        EndpointArn returned from CreateEndpoint action.

        ", "CreatePlatformApplicationInput$Name": "

        Application names must be made up of only uppercase and lowercase ASCII letters, numbers, underscores, hyphens, and periods, and must be between 1 and 256 characters long.

        ", "CreatePlatformApplicationInput$Platform": "

        The following platforms are supported: ADM (Amazon Device Messaging), APNS (Apple Push Notification Service), APNS_SANDBOX, and GCM (Google Cloud Messaging).

        ", "CreatePlatformApplicationResponse$PlatformApplicationArn": "

        PlatformApplicationArn is returned.

        ", "CreatePlatformEndpointInput$PlatformApplicationArn": "

        PlatformApplicationArn returned from CreatePlatformApplication is used to create a an endpoint.

        ", "CreatePlatformEndpointInput$Token": "

        Unique identifier created by the notification service for an app on a device. The specific name for Token will vary, depending on which notification service is being used. For example, when using APNS as the notification service, you need the device token. Alternatively, when using GCM or ADM, the device token equivalent is called the registration ID.

        ", "CreatePlatformEndpointInput$CustomUserData": "

        Arbitrary user data to associate with the endpoint. Amazon SNS does not use this data. The data must be in UTF-8 format and less than 2KB.

        ", "DeleteEndpointInput$EndpointArn": "

        EndpointArn of endpoint to delete.

        ", "DeletePlatformApplicationInput$PlatformApplicationArn": "

        PlatformApplicationArn of platform application object to delete.

        ", "Endpoint$EndpointArn": "

        EndpointArn for mobile app and device.

        ", "GetEndpointAttributesInput$EndpointArn": "

        EndpointArn for GetEndpointAttributes input.

        ", "GetPlatformApplicationAttributesInput$PlatformApplicationArn": "

        PlatformApplicationArn for GetPlatformApplicationAttributesInput.

        ", "ListEndpointsByPlatformApplicationInput$PlatformApplicationArn": "

        PlatformApplicationArn for ListEndpointsByPlatformApplicationInput action.

        ", "ListEndpointsByPlatformApplicationInput$NextToken": "

        NextToken string is used when calling ListEndpointsByPlatformApplication action to retrieve additional records that are available after the first page results.

        ", "ListEndpointsByPlatformApplicationResponse$NextToken": "

        NextToken string is returned when calling ListEndpointsByPlatformApplication action if additional records are available after the first page results.

        ", "ListPlatformApplicationsInput$NextToken": "

        NextToken string is used when calling ListPlatformApplications action to retrieve additional records that are available after the first page results.

        ", "ListPlatformApplicationsResponse$NextToken": "

        NextToken string is returned when calling ListPlatformApplications action if additional records are available after the first page results.

        ", "ListString$member": null, "MapStringToString$key": null, "MapStringToString$value": null, "MessageAttributeMap$key": null, "MessageAttributeValue$DataType": "

        Amazon SNS supports the following logical data types: String, Number, and Binary. For more information, see Message Attribute Data Types.

        ", "MessageAttributeValue$StringValue": "

        Strings are Unicode with UTF8 binary encoding. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.

        ", "PlatformApplication$PlatformApplicationArn": "

        PlatformApplicationArn for platform application object.

        ", "PublishInput$TargetArn": "

        Either TopicArn or EndpointArn, but not both.

        If you don't specify a value for the TargetArn parameter, you must specify a value for the PhoneNumber or TopicArn parameters.

        ", "PublishInput$PhoneNumber": "

        The phone number to which you want to deliver an SMS message. Use E.164 format.

        If you don't specify a value for the PhoneNumber parameter, you must specify a value for the TargetArn or TopicArn parameters.

        ", "SetEndpointAttributesInput$EndpointArn": "

        EndpointArn used for SetEndpointAttributes action.

        ", "SetPlatformApplicationAttributesInput$PlatformApplicationArn": "

        PlatformApplicationArn for SetPlatformApplicationAttributes action.

        " } }, "SubscribeInput": { "base": "

        Input for Subscribe action.

        ", "refs": { } }, "SubscribeResponse": { "base": "

        Response for Subscribe action.

        ", "refs": { } }, "Subscription": { "base": "

        A wrapper type for the attributes of an Amazon SNS subscription.

        ", "refs": { "SubscriptionsList$member": null } }, "SubscriptionAttributesMap": { "base": null, "refs": { "GetSubscriptionAttributesResponse$Attributes": "

        A map of the subscription's attributes. Attributes in this map include the following:

        • SubscriptionArn -- the subscription's ARN

        • TopicArn -- the topic ARN that the subscription is associated with

        • Owner -- the AWS account ID of the subscription's owner

        • ConfirmationWasAuthenticated -- true if the subscription confirmation request was authenticated

        • DeliveryPolicy -- the JSON serialization of the subscription's delivery policy

        • EffectiveDeliveryPolicy -- the JSON serialization of the effective delivery policy that takes into account the topic delivery policy and account system defaults

        " } }, "SubscriptionLimitExceededException": { "base": "

        Indicates that the customer already owns the maximum allowed number of subscriptions.

        ", "refs": { } }, "SubscriptionsList": { "base": null, "refs": { "ListSubscriptionsByTopicResponse$Subscriptions": "

        A list of subscriptions.

        ", "ListSubscriptionsResponse$Subscriptions": "

        A list of subscriptions.

        " } }, "ThrottledException": { "base": "

        Indicates that the rate at which requests have been submitted for this action exceeds the limit for your account.

        ", "refs": { } }, "Topic": { "base": "

        A wrapper type for the topic's Amazon Resource Name (ARN). To retrieve a topic's attributes, use GetTopicAttributes.

        ", "refs": { "TopicsList$member": null } }, "TopicAttributesMap": { "base": null, "refs": { "GetTopicAttributesResponse$Attributes": "

        A map of the topic's attributes. Attributes in this map include the following:

        • TopicArn -- the topic's ARN

        • Owner -- the AWS account ID of the topic's owner

        • Policy -- the JSON serialization of the topic's access control policy

        • DisplayName -- the human-readable name used in the \"From\" field for notifications to email and email-json endpoints

        • SubscriptionsPending -- the number of subscriptions pending confirmation on this topic

        • SubscriptionsConfirmed -- the number of confirmed subscriptions on this topic

        • SubscriptionsDeleted -- the number of deleted subscriptions on this topic

        • DeliveryPolicy -- the JSON serialization of the topic's delivery policy

        • EffectiveDeliveryPolicy -- the JSON serialization of the effective delivery policy that takes into account system defaults

        " } }, "TopicLimitExceededException": { "base": "

        Indicates that the customer already owns the maximum allowed number of topics.

        ", "refs": { } }, "TopicsList": { "base": null, "refs": { "ListTopicsResponse$Topics": "

        A list of topic ARNs.

        " } }, "UnsubscribeInput": { "base": "

        Input for Unsubscribe action.

        ", "refs": { } }, "account": { "base": null, "refs": { "Subscription$Owner": "

        The subscription's owner.

        " } }, "action": { "base": null, "refs": { "ActionsList$member": null } }, "attributeName": { "base": null, "refs": { "SetSubscriptionAttributesInput$AttributeName": "

        The name of the attribute you want to set. Only a subset of the subscriptions attributes are mutable.

        Valid values: DeliveryPolicy | RawMessageDelivery

        ", "SetTopicAttributesInput$AttributeName": "

        The name of the attribute you want to set. Only a subset of the topic's attributes are mutable.

        Valid values: Policy | DisplayName | DeliveryPolicy

        ", "SubscriptionAttributesMap$key": null, "TopicAttributesMap$key": null } }, "attributeValue": { "base": null, "refs": { "SetSubscriptionAttributesInput$AttributeValue": "

        The new value for the attribute in JSON format.

        ", "SetTopicAttributesInput$AttributeValue": "

        The new value for the attribute.

        ", "SubscriptionAttributesMap$value": null, "TopicAttributesMap$value": null } }, "authenticateOnUnsubscribe": { "base": null, "refs": { "ConfirmSubscriptionInput$AuthenticateOnUnsubscribe": "

        Disallows unauthenticated unsubscribes of the subscription. If the value of this parameter is true and the request has an AWS signature, then only the topic owner and the subscription owner can unsubscribe the endpoint. The unsubscribe action requires AWS authentication.

        " } }, "boolean": { "base": null, "refs": { "CheckIfPhoneNumberIsOptedOutResponse$isOptedOut": "

        Indicates whether the phone number is opted out:

        • true – The phone number is opted out, meaning you cannot publish SMS messages to it.

        • false – The phone number is opted in, meaning you can publish SMS messages to it.

        " } }, "delegate": { "base": null, "refs": { "DelegatesList$member": null } }, "endpoint": { "base": null, "refs": { "SubscribeInput$Endpoint": "

        The endpoint that you want to receive notifications. Endpoints vary by protocol:

        • For the http protocol, the endpoint is an URL beginning with \"http://\"

        • For the https protocol, the endpoint is a URL beginning with \"https://\"

        • For the email protocol, the endpoint is an email address

        • For the email-json protocol, the endpoint is an email address

        • For the sms protocol, the endpoint is a phone number of an SMS-enabled device

        • For the sqs protocol, the endpoint is the ARN of an Amazon SQS queue

        • For the application protocol, the endpoint is the EndpointArn of a mobile app and device.

        • For the lambda protocol, the endpoint is the ARN of an AWS Lambda function.

        ", "Subscription$Endpoint": "

        The subscription's endpoint (format depends on the protocol).

        " } }, "label": { "base": null, "refs": { "AddPermissionInput$Label": "

        A unique identifier for the new policy statement.

        ", "RemovePermissionInput$Label": "

        The unique label of the statement you want to remove.

        " } }, "message": { "base": null, "refs": { "PublishInput$Message": "

        The message you want to send to the topic.

        If you want to send the same message to all transport protocols, include the text of the message as a String value.

        If you want to send different messages for each transport protocol, set the value of the MessageStructure parameter to json and use a JSON object for the Message parameter.

        Constraints: Messages must be UTF-8 encoded strings at most 256 KB in size (262144 bytes, not 262144 characters).

        JSON-specific constraints:

        • Keys in the JSON object that correspond to supported transport protocols must have simple JSON string values.

        • The values will be parsed (unescaped) before they are used in outgoing messages.

        • Outbound notifications are JSON encoded (meaning that the characters will be reescaped for sending).

        • Values have a minimum length of 0 (the empty string, \"\", is allowed).

        • Values have a maximum length bounded by the overall message size (so, including multiple protocols may limit message sizes).

        • Non-string values will cause the key to be ignored.

        • Keys that do not correspond to supported transport protocols are ignored.

        • Duplicate keys are not allowed.

        • Failure to parse or validate any key or value in the message will cause the Publish call to return an error (no partial delivery).

        " } }, "messageId": { "base": null, "refs": { "PublishResponse$MessageId": "

        Unique identifier assigned to the published message.

        Length Constraint: Maximum 100 characters

        " } }, "messageStructure": { "base": null, "refs": { "PublishInput$MessageStructure": "

        Set MessageStructure to json if you want to send a different message for each protocol. For example, using one publish action, you can send a short message to your SMS subscribers and a longer message to your email subscribers. If you set MessageStructure to json, the value of the Message parameter must:

        • be a syntactically valid JSON object; and

        • contain at least a top-level JSON key of \"default\" with a value that is a string.

        You can define other top-level keys that define the message you want to send to a specific transport protocol (e.g., \"http\").

        For information about sending different messages for each protocol using the AWS Management Console, go to Create Different Messages for Each Protocol in the Amazon Simple Notification Service Getting Started Guide.

        Valid value: json

        " } }, "nextToken": { "base": null, "refs": { "ListSubscriptionsByTopicInput$NextToken": "

        Token returned by the previous ListSubscriptionsByTopic request.

        ", "ListSubscriptionsByTopicResponse$NextToken": "

        Token to pass along to the next ListSubscriptionsByTopic request. This element is returned if there are more subscriptions to retrieve.

        ", "ListSubscriptionsInput$NextToken": "

        Token returned by the previous ListSubscriptions request.

        ", "ListSubscriptionsResponse$NextToken": "

        Token to pass along to the next ListSubscriptions request. This element is returned if there are more subscriptions to retrieve.

        ", "ListTopicsInput$NextToken": "

        Token returned by the previous ListTopics request.

        ", "ListTopicsResponse$NextToken": "

        Token to pass along to the next ListTopics request. This element is returned if there are additional topics to retrieve.

        " } }, "protocol": { "base": null, "refs": { "SubscribeInput$Protocol": "

        The protocol you want to use. Supported protocols include:

        • http -- delivery of JSON-encoded message via HTTP POST

        • https -- delivery of JSON-encoded message via HTTPS POST

        • email -- delivery of message via SMTP

        • email-json -- delivery of JSON-encoded message via SMTP

        • sms -- delivery of message via SMS

        • sqs -- delivery of JSON-encoded message to an Amazon SQS queue

        • application -- delivery of JSON-encoded message to an EndpointArn for a mobile app and device.

        • lambda -- delivery of JSON-encoded message to an AWS Lambda function.

        ", "Subscription$Protocol": "

        The subscription's protocol.

        " } }, "string": { "base": null, "refs": { "AuthorizationErrorException$message": null, "EndpointDisabledException$message": "

        Message for endpoint disabled.

        ", "InternalErrorException$message": null, "InvalidParameterException$message": null, "InvalidParameterValueException$message": "

        The parameter value is invalid.

        ", "ListPhoneNumbersOptedOutInput$nextToken": "

        A NextToken string is used when you call the ListPhoneNumbersOptedOut action to retrieve additional records that are available after the first page of results.

        ", "ListPhoneNumbersOptedOutResponse$nextToken": "

        A NextToken string is returned when you call the ListPhoneNumbersOptedOut action if additional records are available after the first page of results.

        ", "NotFoundException$message": null, "PlatformApplicationDisabledException$message": "

        Message for platform application disabled.

        ", "SubscriptionLimitExceededException$message": null, "ThrottledException$message": "

        Throttled request.

        ", "TopicLimitExceededException$message": null } }, "subject": { "base": null, "refs": { "PublishInput$Subject": "

        Optional parameter to be used as the \"Subject\" line when the message is delivered to email endpoints. This field will also be included, if present, in the standard JSON messages delivered to other endpoints.

        Constraints: Subjects must be ASCII text that begins with a letter, number, or punctuation mark; must not include line breaks or control characters; and must be less than 100 characters long.

        " } }, "subscriptionARN": { "base": null, "refs": { "ConfirmSubscriptionResponse$SubscriptionArn": "

        The ARN of the created subscription.

        ", "GetSubscriptionAttributesInput$SubscriptionArn": "

        The ARN of the subscription whose properties you want to get.

        ", "SetSubscriptionAttributesInput$SubscriptionArn": "

        The ARN of the subscription to modify.

        ", "SubscribeResponse$SubscriptionArn": "

        The ARN of the subscription, if the service was able to create a subscription immediately (without requiring endpoint owner confirmation).

        ", "Subscription$SubscriptionArn": "

        The subscription's ARN.

        ", "UnsubscribeInput$SubscriptionArn": "

        The ARN of the subscription to be deleted.

        " } }, "token": { "base": null, "refs": { "ConfirmSubscriptionInput$Token": "

        Short-lived token sent to an endpoint during the Subscribe action.

        " } }, "topicARN": { "base": null, "refs": { "AddPermissionInput$TopicArn": "

        The ARN of the topic whose access control policy you wish to modify.

        ", "ConfirmSubscriptionInput$TopicArn": "

        The ARN of the topic for which you wish to confirm a subscription.

        ", "CreateTopicResponse$TopicArn": "

        The Amazon Resource Name (ARN) assigned to the created topic.

        ", "DeleteTopicInput$TopicArn": "

        The ARN of the topic you want to delete.

        ", "GetTopicAttributesInput$TopicArn": "

        The ARN of the topic whose properties you want to get.

        ", "ListSubscriptionsByTopicInput$TopicArn": "

        The ARN of the topic for which you wish to find subscriptions.

        ", "PublishInput$TopicArn": "

        The topic you want to publish to.

        If you don't specify a value for the TopicArn parameter, you must specify a value for the PhoneNumber or TargetArn parameters.

        ", "RemovePermissionInput$TopicArn": "

        The ARN of the topic whose access control policy you wish to modify.

        ", "SetTopicAttributesInput$TopicArn": "

        The ARN of the topic to modify.

        ", "SubscribeInput$TopicArn": "

        The ARN of the topic you want to subscribe to.

        ", "Subscription$TopicArn": "

        The ARN of the subscription's topic.

        ", "Topic$TopicArn": "

        The topic's ARN.

        " } }, "topicName": { "base": null, "refs": { "CreateTopicInput$Name": "

        The name of the topic you want to create.

        Constraints: Topic names must be made up of only uppercase and lowercase ASCII letters, numbers, underscores, and hyphens, and must be between 1 and 256 characters long.

        " } } } } aws-sdk-go-1.4.22/models/apis/sns/2010-03-31/examples-1.json000077500000000000000000000000541300374646400225010ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/sns/2010-03-31/paginators-1.json000066400000000000000000000013441300374646400230320ustar00rootroot00000000000000{ "pagination": { "ListEndpointsByPlatformApplication": { "input_token": "NextToken", "output_token": "NextToken", "result_key": "Endpoints" }, "ListPlatformApplications": { "input_token": "NextToken", "output_token": "NextToken", "result_key": "PlatformApplications" }, "ListSubscriptions": { "input_token": "NextToken", "output_token": "NextToken", "result_key": "Subscriptions" }, "ListSubscriptionsByTopic": { "input_token": "NextToken", "output_token": "NextToken", "result_key": "Subscriptions" }, "ListTopics": { "input_token": "NextToken", "output_token": "NextToken", "result_key": "Topics" } } } aws-sdk-go-1.4.22/models/apis/sqs/000077500000000000000000000000001300374646400166105ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/sqs/2012-11-05/000077500000000000000000000000001300374646400176355ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/sqs/2012-11-05/api-2.json000066400000000000000000000552661300374646400214560ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2012-11-05", "endpointPrefix":"sqs", "protocol":"query", "serviceAbbreviation":"Amazon SQS", "serviceFullName":"Amazon Simple Queue Service", "signatureVersion":"v4", "xmlNamespace":"http://queue.amazonaws.com/doc/2012-11-05/" }, "operations":{ "AddPermission":{ "name":"AddPermission", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddPermissionRequest"}, "errors":[ {"shape":"OverLimit"} ] }, "ChangeMessageVisibility":{ "name":"ChangeMessageVisibility", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ChangeMessageVisibilityRequest"}, "errors":[ {"shape":"MessageNotInflight"}, {"shape":"ReceiptHandleIsInvalid"} ] }, "ChangeMessageVisibilityBatch":{ "name":"ChangeMessageVisibilityBatch", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ChangeMessageVisibilityBatchRequest"}, "output":{ "shape":"ChangeMessageVisibilityBatchResult", "resultWrapper":"ChangeMessageVisibilityBatchResult" }, "errors":[ {"shape":"TooManyEntriesInBatchRequest"}, {"shape":"EmptyBatchRequest"}, {"shape":"BatchEntryIdsNotDistinct"}, {"shape":"InvalidBatchEntryId"} ] }, "CreateQueue":{ "name":"CreateQueue", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateQueueRequest"}, "output":{ "shape":"CreateQueueResult", "resultWrapper":"CreateQueueResult" }, "errors":[ {"shape":"QueueDeletedRecently"}, {"shape":"QueueNameExists"} ] }, "DeleteMessage":{ "name":"DeleteMessage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteMessageRequest"}, "errors":[ {"shape":"InvalidIdFormat"}, {"shape":"ReceiptHandleIsInvalid"} ] }, "DeleteMessageBatch":{ "name":"DeleteMessageBatch", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteMessageBatchRequest"}, "output":{ "shape":"DeleteMessageBatchResult", "resultWrapper":"DeleteMessageBatchResult" }, "errors":[ {"shape":"TooManyEntriesInBatchRequest"}, {"shape":"EmptyBatchRequest"}, {"shape":"BatchEntryIdsNotDistinct"}, {"shape":"InvalidBatchEntryId"} ] }, "DeleteQueue":{ "name":"DeleteQueue", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteQueueRequest"} }, "GetQueueAttributes":{ "name":"GetQueueAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetQueueAttributesRequest"}, "output":{ "shape":"GetQueueAttributesResult", "resultWrapper":"GetQueueAttributesResult" }, "errors":[ {"shape":"InvalidAttributeName"} ] }, "GetQueueUrl":{ "name":"GetQueueUrl", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetQueueUrlRequest"}, "output":{ "shape":"GetQueueUrlResult", "resultWrapper":"GetQueueUrlResult" }, "errors":[ {"shape":"QueueDoesNotExist"} ] }, "ListDeadLetterSourceQueues":{ "name":"ListDeadLetterSourceQueues", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListDeadLetterSourceQueuesRequest"}, "output":{ "shape":"ListDeadLetterSourceQueuesResult", "resultWrapper":"ListDeadLetterSourceQueuesResult" }, "errors":[ {"shape":"QueueDoesNotExist"} ] }, "ListQueues":{ "name":"ListQueues", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListQueuesRequest"}, "output":{ "shape":"ListQueuesResult", "resultWrapper":"ListQueuesResult" } }, "PurgeQueue":{ "name":"PurgeQueue", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PurgeQueueRequest"}, "errors":[ {"shape":"QueueDoesNotExist"}, {"shape":"PurgeQueueInProgress"} ] }, "ReceiveMessage":{ "name":"ReceiveMessage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ReceiveMessageRequest"}, "output":{ "shape":"ReceiveMessageResult", "resultWrapper":"ReceiveMessageResult" }, "errors":[ {"shape":"OverLimit"} ] }, "RemovePermission":{ "name":"RemovePermission", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemovePermissionRequest"} }, "SendMessage":{ "name":"SendMessage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SendMessageRequest"}, "output":{ "shape":"SendMessageResult", "resultWrapper":"SendMessageResult" }, "errors":[ {"shape":"InvalidMessageContents"}, {"shape":"UnsupportedOperation"} ] }, "SendMessageBatch":{ "name":"SendMessageBatch", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SendMessageBatchRequest"}, "output":{ "shape":"SendMessageBatchResult", "resultWrapper":"SendMessageBatchResult" }, "errors":[ {"shape":"TooManyEntriesInBatchRequest"}, {"shape":"EmptyBatchRequest"}, {"shape":"BatchEntryIdsNotDistinct"}, {"shape":"BatchRequestTooLong"}, {"shape":"InvalidBatchEntryId"}, {"shape":"UnsupportedOperation"} ] }, "SetQueueAttributes":{ "name":"SetQueueAttributes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetQueueAttributesRequest"}, "errors":[ {"shape":"InvalidAttributeName"} ] } }, "shapes":{ "AWSAccountIdList":{ "type":"list", "member":{ "shape":"String", "locationName":"AWSAccountId" }, "flattened":true }, "ActionNameList":{ "type":"list", "member":{ "shape":"String", "locationName":"ActionName" }, "flattened":true }, "AddPermissionRequest":{ "type":"structure", "required":[ "QueueUrl", "Label", "AWSAccountIds", "Actions" ], "members":{ "QueueUrl":{"shape":"String"}, "Label":{"shape":"String"}, "AWSAccountIds":{"shape":"AWSAccountIdList"}, "Actions":{"shape":"ActionNameList"} } }, "AttributeMap":{ "type":"map", "key":{ "shape":"QueueAttributeName", "locationName":"Name" }, "value":{ "shape":"String", "locationName":"Value" }, "flattened":true, "locationName":"Attribute" }, "AttributeNameList":{ "type":"list", "member":{ "shape":"QueueAttributeName", "locationName":"AttributeName" }, "flattened":true }, "BatchEntryIdsNotDistinct":{ "type":"structure", "members":{ }, "error":{ "code":"AWS.SimpleQueueService.BatchEntryIdsNotDistinct", "httpStatusCode":400, "senderFault":true }, "exception":true }, "BatchRequestTooLong":{ "type":"structure", "members":{ }, "error":{ "code":"AWS.SimpleQueueService.BatchRequestTooLong", "httpStatusCode":400, "senderFault":true }, "exception":true }, "BatchResultErrorEntry":{ "type":"structure", "required":[ "Id", "SenderFault", "Code" ], "members":{ "Id":{"shape":"String"}, "SenderFault":{"shape":"Boolean"}, "Code":{"shape":"String"}, "Message":{"shape":"String"} } }, "BatchResultErrorEntryList":{ "type":"list", "member":{ "shape":"BatchResultErrorEntry", "locationName":"BatchResultErrorEntry" }, "flattened":true }, "Binary":{"type":"blob"}, "BinaryList":{ "type":"list", "member":{ "shape":"Binary", "locationName":"BinaryListValue" } }, "Boolean":{"type":"boolean"}, "ChangeMessageVisibilityBatchRequest":{ "type":"structure", "required":[ "QueueUrl", "Entries" ], "members":{ "QueueUrl":{"shape":"String"}, "Entries":{"shape":"ChangeMessageVisibilityBatchRequestEntryList"} } }, "ChangeMessageVisibilityBatchRequestEntry":{ "type":"structure", "required":[ "Id", "ReceiptHandle" ], "members":{ "Id":{"shape":"String"}, "ReceiptHandle":{"shape":"String"}, "VisibilityTimeout":{"shape":"Integer"} } }, "ChangeMessageVisibilityBatchRequestEntryList":{ "type":"list", "member":{ "shape":"ChangeMessageVisibilityBatchRequestEntry", "locationName":"ChangeMessageVisibilityBatchRequestEntry" }, "flattened":true }, "ChangeMessageVisibilityBatchResult":{ "type":"structure", "required":[ "Successful", "Failed" ], "members":{ "Successful":{"shape":"ChangeMessageVisibilityBatchResultEntryList"}, "Failed":{"shape":"BatchResultErrorEntryList"} } }, "ChangeMessageVisibilityBatchResultEntry":{ "type":"structure", "required":["Id"], "members":{ "Id":{"shape":"String"} } }, "ChangeMessageVisibilityBatchResultEntryList":{ "type":"list", "member":{ "shape":"ChangeMessageVisibilityBatchResultEntry", "locationName":"ChangeMessageVisibilityBatchResultEntry" }, "flattened":true }, "ChangeMessageVisibilityRequest":{ "type":"structure", "required":[ "QueueUrl", "ReceiptHandle", "VisibilityTimeout" ], "members":{ "QueueUrl":{"shape":"String"}, "ReceiptHandle":{"shape":"String"}, "VisibilityTimeout":{"shape":"Integer"} } }, "CreateQueueRequest":{ "type":"structure", "required":["QueueName"], "members":{ "QueueName":{"shape":"String"}, "Attributes":{ "shape":"AttributeMap", "locationName":"Attribute" } } }, "CreateQueueResult":{ "type":"structure", "members":{ "QueueUrl":{"shape":"String"} } }, "DeleteMessageBatchRequest":{ "type":"structure", "required":[ "QueueUrl", "Entries" ], "members":{ "QueueUrl":{"shape":"String"}, "Entries":{"shape":"DeleteMessageBatchRequestEntryList"} } }, "DeleteMessageBatchRequestEntry":{ "type":"structure", "required":[ "Id", "ReceiptHandle" ], "members":{ "Id":{"shape":"String"}, "ReceiptHandle":{"shape":"String"} } }, "DeleteMessageBatchRequestEntryList":{ "type":"list", "member":{ "shape":"DeleteMessageBatchRequestEntry", "locationName":"DeleteMessageBatchRequestEntry" }, "flattened":true }, "DeleteMessageBatchResult":{ "type":"structure", "required":[ "Successful", "Failed" ], "members":{ "Successful":{"shape":"DeleteMessageBatchResultEntryList"}, "Failed":{"shape":"BatchResultErrorEntryList"} } }, "DeleteMessageBatchResultEntry":{ "type":"structure", "required":["Id"], "members":{ "Id":{"shape":"String"} } }, "DeleteMessageBatchResultEntryList":{ "type":"list", "member":{ "shape":"DeleteMessageBatchResultEntry", "locationName":"DeleteMessageBatchResultEntry" }, "flattened":true }, "DeleteMessageRequest":{ "type":"structure", "required":[ "QueueUrl", "ReceiptHandle" ], "members":{ "QueueUrl":{"shape":"String"}, "ReceiptHandle":{"shape":"String"} } }, "DeleteQueueRequest":{ "type":"structure", "required":["QueueUrl"], "members":{ "QueueUrl":{"shape":"String"} } }, "EmptyBatchRequest":{ "type":"structure", "members":{ }, "error":{ "code":"AWS.SimpleQueueService.EmptyBatchRequest", "httpStatusCode":400, "senderFault":true }, "exception":true }, "GetQueueAttributesRequest":{ "type":"structure", "required":["QueueUrl"], "members":{ "QueueUrl":{"shape":"String"}, "AttributeNames":{"shape":"AttributeNameList"} } }, "GetQueueAttributesResult":{ "type":"structure", "members":{ "Attributes":{ "shape":"AttributeMap", "locationName":"Attribute" } } }, "GetQueueUrlRequest":{ "type":"structure", "required":["QueueName"], "members":{ "QueueName":{"shape":"String"}, "QueueOwnerAWSAccountId":{"shape":"String"} } }, "GetQueueUrlResult":{ "type":"structure", "members":{ "QueueUrl":{"shape":"String"} } }, "Integer":{"type":"integer"}, "InvalidAttributeName":{ "type":"structure", "members":{ }, "exception":true }, "InvalidBatchEntryId":{ "type":"structure", "members":{ }, "error":{ "code":"AWS.SimpleQueueService.InvalidBatchEntryId", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidIdFormat":{ "type":"structure", "members":{ }, "exception":true }, "InvalidMessageContents":{ "type":"structure", "members":{ }, "exception":true }, "ListDeadLetterSourceQueuesRequest":{ "type":"structure", "required":["QueueUrl"], "members":{ "QueueUrl":{"shape":"String"} } }, "ListDeadLetterSourceQueuesResult":{ "type":"structure", "required":["queueUrls"], "members":{ "queueUrls":{"shape":"QueueUrlList"} } }, "ListQueuesRequest":{ "type":"structure", "members":{ "QueueNamePrefix":{"shape":"String"} } }, "ListQueuesResult":{ "type":"structure", "members":{ "QueueUrls":{"shape":"QueueUrlList"} } }, "Message":{ "type":"structure", "members":{ "MessageId":{"shape":"String"}, "ReceiptHandle":{"shape":"String"}, "MD5OfBody":{"shape":"String"}, "Body":{"shape":"String"}, "Attributes":{ "shape":"AttributeMap", "locationName":"Attribute" }, "MD5OfMessageAttributes":{"shape":"String"}, "MessageAttributes":{ "shape":"MessageAttributeMap", "locationName":"MessageAttribute" } } }, "MessageAttributeMap":{ "type":"map", "key":{ "shape":"String", "locationName":"Name" }, "value":{ "shape":"MessageAttributeValue", "locationName":"Value" }, "flattened":true }, "MessageAttributeName":{"type":"string"}, "MessageAttributeNameList":{ "type":"list", "member":{ "shape":"MessageAttributeName", "locationName":"MessageAttributeName" }, "flattened":true }, "MessageAttributeValue":{ "type":"structure", "required":["DataType"], "members":{ "StringValue":{"shape":"String"}, "BinaryValue":{"shape":"Binary"}, "StringListValues":{ "shape":"StringList", "flattened":true, "locationName":"StringListValue" }, "BinaryListValues":{ "shape":"BinaryList", "flattened":true, "locationName":"BinaryListValue" }, "DataType":{"shape":"String"} } }, "MessageList":{ "type":"list", "member":{ "shape":"Message", "locationName":"Message" }, "flattened":true }, "MessageNotInflight":{ "type":"structure", "members":{ }, "error":{ "code":"AWS.SimpleQueueService.MessageNotInflight", "httpStatusCode":400, "senderFault":true }, "exception":true }, "OverLimit":{ "type":"structure", "members":{ }, "error":{ "code":"OverLimit", "httpStatusCode":403, "senderFault":true }, "exception":true }, "PurgeQueueInProgress":{ "type":"structure", "members":{ }, "error":{ "code":"AWS.SimpleQueueService.PurgeQueueInProgress", "httpStatusCode":403, "senderFault":true }, "exception":true }, "PurgeQueueRequest":{ "type":"structure", "required":["QueueUrl"], "members":{ "QueueUrl":{"shape":"String"} } }, "QueueAttributeName":{ "type":"string", "enum":[ "Policy", "VisibilityTimeout", "MaximumMessageSize", "MessageRetentionPeriod", "ApproximateNumberOfMessages", "ApproximateNumberOfMessagesNotVisible", "CreatedTimestamp", "LastModifiedTimestamp", "QueueArn", "ApproximateNumberOfMessagesDelayed", "DelaySeconds", "ReceiveMessageWaitTimeSeconds", "RedrivePolicy" ] }, "QueueDeletedRecently":{ "type":"structure", "members":{ }, "error":{ "code":"AWS.SimpleQueueService.QueueDeletedRecently", "httpStatusCode":400, "senderFault":true }, "exception":true }, "QueueDoesNotExist":{ "type":"structure", "members":{ }, "error":{ "code":"AWS.SimpleQueueService.NonExistentQueue", "httpStatusCode":400, "senderFault":true }, "exception":true }, "QueueNameExists":{ "type":"structure", "members":{ }, "error":{ "code":"QueueAlreadyExists", "httpStatusCode":400, "senderFault":true }, "exception":true }, "QueueUrlList":{ "type":"list", "member":{ "shape":"String", "locationName":"QueueUrl" }, "flattened":true }, "ReceiptHandleIsInvalid":{ "type":"structure", "members":{ }, "exception":true }, "ReceiveMessageRequest":{ "type":"structure", "required":["QueueUrl"], "members":{ "QueueUrl":{"shape":"String"}, "AttributeNames":{"shape":"AttributeNameList"}, "MessageAttributeNames":{"shape":"MessageAttributeNameList"}, "MaxNumberOfMessages":{"shape":"Integer"}, "VisibilityTimeout":{"shape":"Integer"}, "WaitTimeSeconds":{"shape":"Integer"} } }, "ReceiveMessageResult":{ "type":"structure", "members":{ "Messages":{"shape":"MessageList"} } }, "RemovePermissionRequest":{ "type":"structure", "required":[ "QueueUrl", "Label" ], "members":{ "QueueUrl":{"shape":"String"}, "Label":{"shape":"String"} } }, "SendMessageBatchRequest":{ "type":"structure", "required":[ "QueueUrl", "Entries" ], "members":{ "QueueUrl":{"shape":"String"}, "Entries":{"shape":"SendMessageBatchRequestEntryList"} } }, "SendMessageBatchRequestEntry":{ "type":"structure", "required":[ "Id", "MessageBody" ], "members":{ "Id":{"shape":"String"}, "MessageBody":{"shape":"String"}, "DelaySeconds":{"shape":"Integer"}, "MessageAttributes":{ "shape":"MessageAttributeMap", "locationName":"MessageAttribute" } } }, "SendMessageBatchRequestEntryList":{ "type":"list", "member":{ "shape":"SendMessageBatchRequestEntry", "locationName":"SendMessageBatchRequestEntry" }, "flattened":true }, "SendMessageBatchResult":{ "type":"structure", "required":[ "Successful", "Failed" ], "members":{ "Successful":{"shape":"SendMessageBatchResultEntryList"}, "Failed":{"shape":"BatchResultErrorEntryList"} } }, "SendMessageBatchResultEntry":{ "type":"structure", "required":[ "Id", "MessageId", "MD5OfMessageBody" ], "members":{ "Id":{"shape":"String"}, "MessageId":{"shape":"String"}, "MD5OfMessageBody":{"shape":"String"}, "MD5OfMessageAttributes":{"shape":"String"} } }, "SendMessageBatchResultEntryList":{ "type":"list", "member":{ "shape":"SendMessageBatchResultEntry", "locationName":"SendMessageBatchResultEntry" }, "flattened":true }, "SendMessageRequest":{ "type":"structure", "required":[ "QueueUrl", "MessageBody" ], "members":{ "QueueUrl":{"shape":"String"}, "MessageBody":{"shape":"String"}, "DelaySeconds":{"shape":"Integer"}, "MessageAttributes":{ "shape":"MessageAttributeMap", "locationName":"MessageAttribute" } } }, "SendMessageResult":{ "type":"structure", "members":{ "MD5OfMessageBody":{"shape":"String"}, "MD5OfMessageAttributes":{"shape":"String"}, "MessageId":{"shape":"String"} } }, "SetQueueAttributesRequest":{ "type":"structure", "required":[ "QueueUrl", "Attributes" ], "members":{ "QueueUrl":{"shape":"String"}, "Attributes":{ "shape":"AttributeMap", "locationName":"Attribute" } } }, "String":{"type":"string"}, "StringList":{ "type":"list", "member":{ "shape":"String", "locationName":"StringListValue" } }, "TooManyEntriesInBatchRequest":{ "type":"structure", "members":{ }, "error":{ "code":"AWS.SimpleQueueService.TooManyEntriesInBatchRequest", "httpStatusCode":400, "senderFault":true }, "exception":true }, "UnsupportedOperation":{ "type":"structure", "members":{ }, "error":{ "code":"AWS.SimpleQueueService.UnsupportedOperation", "httpStatusCode":400, "senderFault":true }, "exception":true } } } aws-sdk-go-1.4.22/models/apis/sqs/2012-11-05/docs-2.json000066400000000000000000001546631300374646400216360ustar00rootroot00000000000000{ "version": "2.0", "service": "

        Welcome to the Amazon Simple Queue Service API Reference. This section describes who should read this guide, how the guide is organized, and other resources related to the Amazon Simple Queue Service (Amazon SQS).

        Amazon SQS offers reliable and scalable hosted queues for storing messages as they travel between computers. By using Amazon SQS, you can move data between distributed components of your applications that perform different tasks without losing messages or requiring each component to be always available.

        Helpful Links:

        We also provide SDKs that enable you to access Amazon SQS from your preferred programming language. The SDKs contain functionality that automatically takes care of tasks such as:

        • Cryptographically signing your service requests

        • Retrying requests

        • Handling error responses

        For a list of available SDKs, go to Tools for Amazon Web Services.

        ", "operations": { "AddPermission": "

        Adds a permission to a queue for a specific principal. This allows for sharing access to the queue.

        When you create a queue, you have full control access rights for the queue. Only you (as owner of the queue) can grant or deny permissions to the queue. For more information about these permissions, see Shared Queues in the Amazon SQS Developer Guide.

        AddPermission writes an Amazon SQS-generated policy. If you want to write your own policy, use SetQueueAttributes to upload your policy. For more information about writing your own policy, see Using The Access Policy Language in the Amazon SQS Developer Guide.

        Some API actions take lists of parameters. These lists are specified using the param.n notation. Values of n are integers starting from 1. For example, a parameter list with two elements looks like this:

        ", "ChangeMessageVisibility": "

        Changes the visibility timeout of a specified message in a queue to a new value. The maximum allowed timeout value you can set the value to is 12 hours. This means you can't extend the timeout of a message in an existing queue to more than a total visibility timeout of 12 hours. (For more information visibility timeout, see Visibility Timeout in the Amazon SQS Developer Guide.)

        For example, let's say you have a message and its default message visibility timeout is 5 minutes. After 3 minutes, you call ChangeMessageVisiblity with a timeout of 10 minutes. At that time, the timeout for the message would be extended by 10 minutes beyond the time of the ChangeMessageVisibility call. This results in a total visibility timeout of 13 minutes. You can continue to call ChangeMessageVisibility to extend the visibility timeout to a maximum of 12 hours. If you try to extend beyond 12 hours, the request will be rejected.

        There is a 120,000 limit for the number of inflight messages per queue. Messages are inflight after they have been received from the queue by a consuming component, but have not yet been deleted from the queue. If you reach the 120,000 limit, you will receive an OverLimit error message from Amazon SQS. To help avoid reaching the limit, you should delete the messages from the queue after they have been processed. You can also increase the number of queues you use to process the messages.

        If you attempt to set the VisibilityTimeout to an amount more than the maximum time left, Amazon SQS returns an error. It will not automatically recalculate and increase the timeout to the maximum time remaining.

        Unlike with a queue, when you change the visibility timeout for a specific message, that timeout value is applied immediately but is not saved in memory for that message. If you don't delete a message after it is received, the visibility timeout for the message the next time it is received reverts to the original timeout value, not the value you set with the ChangeMessageVisibility action.

        ", "ChangeMessageVisibilityBatch": "

        Changes the visibility timeout of multiple messages. This is a batch version of ChangeMessageVisibility. The result of the action on each message is reported individually in the response. You can send up to 10 ChangeMessageVisibility requests with each ChangeMessageVisibilityBatch action.

        Because the batch request can result in a combination of successful and unsuccessful actions, you should check for batch errors even when the call returns an HTTP status code of 200.

        Some API actions take lists of parameters. These lists are specified using the param.n notation. Values of n are integers starting from 1. For example, a parameter list with two elements looks like this:

        ", "CreateQueue": "

        Creates a new queue, or returns the URL of an existing one. When you request CreateQueue, you provide a name for the queue. To successfully create a new queue, you must provide a name that is unique within the scope of your own queues.

        If you delete a queue, you must wait at least 60 seconds before creating a queue with the same name.

        You may pass one or more attributes in the request. If you do not provide a value for any attribute, the queue will have the default value for that attribute.

        Use GetQueueUrl to get a queue's URL. GetQueueUrl requires only the QueueName parameter.

        If you provide the name of an existing queue, along with the exact names and values of all the queue's attributes, CreateQueue returns the queue URL for the existing queue. If the queue name, attribute names, or attribute values do not match an existing queue, CreateQueue returns an error.

        Some API actions take lists of parameters. These lists are specified using the param.n notation. Values of n are integers starting from 1. For example, a parameter list with two elements looks like this:

        ", "DeleteMessage": "

        Deletes the specified message from the specified queue. You specify the message by using the message's receipt handle and not the message ID you received when you sent the message. Even if the message is locked by another reader due to the visibility timeout setting, it is still deleted from the queue. If you leave a message in the queue for longer than the queue's configured retention period, Amazon SQS automatically deletes it.

        The receipt handle is associated with a specific instance of receiving the message. If you receive a message more than once, the receipt handle you get each time you receive the message is different. When you request DeleteMessage, if you don't provide the most recently received receipt handle for the message, the request will still succeed, but the message might not be deleted.

        It is possible you will receive a message even after you have deleted it. This might happen on rare occasions if one of the servers storing a copy of the message is unavailable when you request to delete the message. The copy remains on the server and might be returned to you again on a subsequent receive request. You should create your system to be idempotent so that receiving a particular message more than once is not a problem.

        ", "DeleteMessageBatch": "

        Deletes up to ten messages from the specified queue. This is a batch version of DeleteMessage. The result of the delete action on each message is reported individually in the response.

        Because the batch request can result in a combination of successful and unsuccessful actions, you should check for batch errors even when the call returns an HTTP status code of 200.

        Some API actions take lists of parameters. These lists are specified using the param.n notation. Values of n are integers starting from 1. For example, a parameter list with two elements looks like this:

        ", "DeleteQueue": "

        Deletes the queue specified by the queue URL, regardless of whether the queue is empty. If the specified queue does not exist, Amazon SQS returns a successful response.

        Use DeleteQueue with care; once you delete your queue, any messages in the queue are no longer available.

        When you delete a queue, the deletion process takes up to 60 seconds. Requests you send involving that queue during the 60 seconds might succeed. For example, a SendMessage request might succeed, but after the 60 seconds, the queue and that message you sent no longer exist. Also, when you delete a queue, you must wait at least 60 seconds before creating a queue with the same name.

        We reserve the right to delete queues that have had no activity for more than 30 days. For more information, see How Amazon SQS Queues Work in the Amazon SQS Developer Guide.

        ", "GetQueueAttributes": "

        Gets attributes for the specified queue.

        Some API actions take lists of parameters. These lists are specified using the param.n notation. Values of n are integers starting from 1. For example, a parameter list with two elements looks like this:

        ", "GetQueueUrl": "

        Returns the URL of an existing queue. This action provides a simple way to retrieve the URL of an Amazon SQS queue.

        To access a queue that belongs to another AWS account, use the QueueOwnerAWSAccountId parameter to specify the account ID of the queue's owner. The queue's owner must grant you permission to access the queue. For more information about shared queue access, see AddPermission or go to Shared Queues in the Amazon SQS Developer Guide.

        ", "ListDeadLetterSourceQueues": "

        Returns a list of your queues that have the RedrivePolicy queue attribute configured with a dead letter queue.

        For more information about using dead letter queues, see Using Amazon SQS Dead Letter Queues.

        ", "ListQueues": "

        Returns a list of your queues. The maximum number of queues that can be returned is 1000. If you specify a value for the optional QueueNamePrefix parameter, only queues with a name beginning with the specified value are returned.

        ", "PurgeQueue": "

        Deletes the messages in a queue specified by the queue URL.

        When you use the PurgeQueue API, the deleted messages in the queue cannot be retrieved.

        When you purge a queue, the message deletion process takes up to 60 seconds. All messages sent to the queue before calling PurgeQueue will be deleted; messages sent to the queue while it is being purged may be deleted. While the queue is being purged, messages sent to the queue before PurgeQueue was called may be received, but will be deleted within the next minute.

        ", "ReceiveMessage": "

        Retrieves one or more messages, with a maximum limit of 10 messages, from the specified queue. Long poll support is enabled by using the WaitTimeSeconds parameter. For more information, see Amazon SQS Long Poll in the Amazon SQS Developer Guide.

        Short poll is the default behavior where a weighted random set of machines is sampled on a ReceiveMessage call. This means only the messages on the sampled machines are returned. If the number of messages in the queue is small (less than 1000), it is likely you will get fewer messages than you requested per ReceiveMessage call. If the number of messages in the queue is extremely small, you might not receive any messages in a particular ReceiveMessage response; in which case you should repeat the request.

        For each message returned, the response includes the following:

        • Message body

        • MD5 digest of the message body. For information about MD5, go to http://www.faqs.org/rfcs/rfc1321.html.

        • Message ID you received when you sent the message to the queue.

        • Receipt handle.

        • Message attributes.

        • MD5 digest of the message attributes.

        The receipt handle is the identifier you must provide when deleting the message. For more information, see Queue and Message Identifiers in the Amazon SQS Developer Guide.

        You can provide the VisibilityTimeout parameter in your request, which will be applied to the messages that Amazon SQS returns in the response. If you do not include the parameter, the overall visibility timeout for the queue is used for the returned messages. For more information, see Visibility Timeout in the Amazon SQS Developer Guide.

        Going forward, new attributes might be added. If you are writing code that calls this action, we recommend that you structure your code so that it can handle new attributes gracefully.

        ", "RemovePermission": "

        Revokes any permissions in the queue policy that matches the specified Label parameter. Only the owner of the queue can remove permissions.

        ", "SendMessage": "

        Delivers a message to the specified queue. With Amazon SQS, you now have the ability to send large payload messages that are up to 256KB (262,144 bytes) in size. To send large payloads, you must use an AWS SDK that supports SigV4 signing. To verify whether SigV4 is supported for an AWS SDK, check the SDK release notes.

        The following list shows the characters (in Unicode) allowed in your message, according to the W3C XML specification. For more information, go to http://www.w3.org/TR/REC-xml/#charsets If you send any characters not included in the list, your request will be rejected.

        #x9 | #xA | #xD | [#x20 to #xD7FF] | [#xE000 to #xFFFD] | [#x10000 to #x10FFFF]

        ", "SendMessageBatch": "

        Delivers up to ten messages to the specified queue. This is a batch version of SendMessage. The result of the send action on each message is reported individually in the response. The maximum allowed individual message size is 256 KB (262,144 bytes).

        The maximum total payload size (i.e., the sum of all a batch's individual message lengths) is also 256 KB (262,144 bytes).

        If the DelaySeconds parameter is not specified for an entry, the default for the queue is used.

        The following list shows the characters (in Unicode) that are allowed in your message, according to the W3C XML specification. For more information, go to http://www.faqs.org/rfcs/rfc1321.html. If you send any characters that are not included in the list, your request will be rejected.

        #x9 | #xA | #xD | [#x20 to #xD7FF] | [#xE000 to #xFFFD] | [#x10000 to #x10FFFF]

        Because the batch request can result in a combination of successful and unsuccessful actions, you should check for batch errors even when the call returns an HTTP status code of 200.

        Some API actions take lists of parameters. These lists are specified using the param.n notation. Values of n are integers starting from 1. For example, a parameter list with two elements looks like this:

        ", "SetQueueAttributes": "

        Sets the value of one or more queue attributes. When you change a queue's attributes, the change can take up to 60 seconds for most of the attributes to propagate throughout the SQS system. Changes made to the MessageRetentionPeriod attribute can take up to 15 minutes.

        Going forward, new attributes might be added. If you are writing code that calls this action, we recommend that you structure your code so that it can handle new attributes gracefully.

        " }, "shapes": { "AWSAccountIdList": { "base": null, "refs": { "AddPermissionRequest$AWSAccountIds": "

        The AWS account number of the principal who will be given permission. The principal must have an AWS account, but does not need to be signed up for Amazon SQS. For information about locating the AWS account identification, see Your AWS Identifiers in the Amazon SQS Developer Guide.

        " } }, "ActionNameList": { "base": null, "refs": { "AddPermissionRequest$Actions": "

        The action the client wants to allow for the specified principal. The following are valid values: * | SendMessage | ReceiveMessage | DeleteMessage | ChangeMessageVisibility | GetQueueAttributes | GetQueueUrl. For more information about these actions, see Understanding Permissions in the Amazon SQS Developer Guide.

        Specifying SendMessage, DeleteMessage, or ChangeMessageVisibility for the ActionName.n also grants permissions for the corresponding batch versions of those actions: SendMessageBatch, DeleteMessageBatch, and ChangeMessageVisibilityBatch.

        " } }, "AddPermissionRequest": { "base": "

        ", "refs": { } }, "AttributeMap": { "base": null, "refs": { "CreateQueueRequest$Attributes": "

        A map of attributes with their corresponding values.

        The following lists the names, descriptions, and values of the special request parameters the CreateQueue action uses:

        • DelaySeconds - The time in seconds that the delivery of all messages in the queue will be delayed. An integer from 0 to 900 (15 minutes). The default for this attribute is 0 (zero).

        • MaximumMessageSize - The limit of how many bytes a message can contain before Amazon SQS rejects it. An integer from 1024 bytes (1 KiB) up to 262144 bytes (256 KiB). The default for this attribute is 262144 (256 KiB).

        • MessageRetentionPeriod - The number of seconds Amazon SQS retains a message. Integer representing seconds, from 60 (1 minute) to 1209600 (14 days). The default for this attribute is 345600 (4 days).

        • Policy - The queue's policy. A valid AWS policy. For more information about policy structure, see Overview of AWS IAM Policies in the Amazon IAM User Guide.

        • ReceiveMessageWaitTimeSeconds - The time for which a ReceiveMessage call will wait for a message to arrive. An integer from 0 to 20 (seconds). The default for this attribute is 0.

        • RedrivePolicy - The parameters for dead letter queue functionality of the source queue. For more information about RedrivePolicy and dead letter queues, see Using Amazon SQS Dead Letter Queues in the Amazon SQS Developer Guide.

        • VisibilityTimeout - The visibility timeout for the queue. An integer from 0 to 43200 (12 hours). The default for this attribute is 30. For more information about visibility timeout, see Visibility Timeout in the Amazon SQS Developer Guide.

        Any other valid special request parameters that are specified (such as ApproximateNumberOfMessages, ApproximateNumberOfMessagesDelayed, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, and QueueArn) will be ignored.

        ", "GetQueueAttributesResult$Attributes": "

        A map of attributes to the respective values.

        ", "Message$Attributes": "

        SenderId, SentTimestamp, ApproximateReceiveCount, and/or ApproximateFirstReceiveTimestamp. SentTimestamp and ApproximateFirstReceiveTimestamp are each returned as an integer representing the epoch time in milliseconds.

        ", "SetQueueAttributesRequest$Attributes": "

        A map of attributes to set.

        The following lists the names, descriptions, and values of the special request parameters the SetQueueAttributes action uses:

        • DelaySeconds - The time in seconds that the delivery of all messages in the queue will be delayed. An integer from 0 to 900 (15 minutes). The default for this attribute is 0 (zero).

        • MaximumMessageSize - The limit of how many bytes a message can contain before Amazon SQS rejects it. An integer from 1024 bytes (1 KiB) up to 262144 bytes (256 KiB). The default for this attribute is 262144 (256 KiB).

        • MessageRetentionPeriod - The number of seconds Amazon SQS retains a message. Integer representing seconds, from 60 (1 minute) to 1209600 (14 days). The default for this attribute is 345600 (4 days).

        • Policy - The queue's policy. A valid AWS policy. For more information about policy structure, see Overview of AWS IAM Policies in the Amazon IAM User Guide.

        • ReceiveMessageWaitTimeSeconds - The time for which a ReceiveMessage call will wait for a message to arrive. An integer from 0 to 20 (seconds). The default for this attribute is 0.

        • VisibilityTimeout - The visibility timeout for the queue. An integer from 0 to 43200 (12 hours). The default for this attribute is 30. For more information about visibility timeout, see Visibility Timeout in the Amazon SQS Developer Guide.

        • RedrivePolicy - The parameters for dead letter queue functionality of the source queue. For more information about RedrivePolicy and dead letter queues, see Using Amazon SQS Dead Letter Queues in the Amazon SQS Developer Guide.

        Any other valid special request parameters that are specified (such as ApproximateNumberOfMessages, ApproximateNumberOfMessagesDelayed, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, and QueueArn) will be ignored.

        " } }, "AttributeNameList": { "base": null, "refs": { "GetQueueAttributesRequest$AttributeNames": "

        A list of attributes to retrieve information for. The following attributes are supported:

        • All - returns all values.

        • ApproximateNumberOfMessages - returns the approximate number of visible messages in a queue. For more information, see Resources Required to Process Messages in the Amazon SQS Developer Guide.

        • ApproximateNumberOfMessagesNotVisible - returns the approximate number of messages that are not timed-out and not deleted. For more information, see Resources Required to Process Messages in the Amazon SQS Developer Guide.

        • VisibilityTimeout - returns the visibility timeout for the queue. For more information about visibility timeout, see Visibility Timeout in the Amazon SQS Developer Guide.

        • CreatedTimestamp - returns the time when the queue was created (epoch time in seconds).

        • LastModifiedTimestamp - returns the time when the queue was last changed (epoch time in seconds).

        • Policy - returns the queue's policy.

        • MaximumMessageSize - returns the limit of how many bytes a message can contain before Amazon SQS rejects it.

        • MessageRetentionPeriod - returns the number of seconds Amazon SQS retains a message.

        • QueueArn - returns the queue's Amazon resource name (ARN).

        • ApproximateNumberOfMessagesDelayed - returns the approximate number of messages that are pending to be added to the queue.

        • DelaySeconds - returns the default delay on the queue in seconds.

        • ReceiveMessageWaitTimeSeconds - returns the time for which a ReceiveMessage call will wait for a message to arrive.

        • RedrivePolicy - returns the parameters for dead letter queue functionality of the source queue. For more information about RedrivePolicy and dead letter queues, see Using Amazon SQS Dead Letter Queues in the Amazon SQS Developer Guide.

        Going forward, new attributes might be added. If you are writing code that calls this action, we recommend that you structure your code so that it can handle new attributes gracefully.

        ", "ReceiveMessageRequest$AttributeNames": "

        A list of attributes that need to be returned along with each message. These attributes include:

        • All - returns all values.

        • ApproximateFirstReceiveTimestamp - returns the time when the message was first received from the queue (epoch time in milliseconds).

        • ApproximateReceiveCount - returns the number of times a message has been received from the queue but not deleted.

        • SenderId - returns the AWS account number (or the IP address, if anonymous access is allowed) of the sender.

        • SentTimestamp - returns the time when the message was sent to the queue (epoch time in milliseconds).

        Any other valid special request parameters that are specified (such as ApproximateNumberOfMessages, ApproximateNumberOfMessagesDelayed, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, DelaySeconds, LastModifiedTimestamp, MaximumMessageSize, MessageRetentionPeriod, Policy, QueueArn, ReceiveMessageWaitTimeSeconds, RedrivePolicy, and VisibilityTimeout) will be ignored.

        " } }, "BatchEntryIdsNotDistinct": { "base": "

        Two or more batch entries have the same Id in the request.

        ", "refs": { } }, "BatchRequestTooLong": { "base": "

        The length of all the messages put together is more than the limit.

        ", "refs": { } }, "BatchResultErrorEntry": { "base": "

        This is used in the responses of batch API to give a detailed description of the result of an action on each entry in the request.

        ", "refs": { "BatchResultErrorEntryList$member": null } }, "BatchResultErrorEntryList": { "base": null, "refs": { "ChangeMessageVisibilityBatchResult$Failed": "

        A list of BatchResultErrorEntry items.

        ", "DeleteMessageBatchResult$Failed": "

        A list of BatchResultErrorEntry items.

        ", "SendMessageBatchResult$Failed": "

        A list of BatchResultErrorEntry items with the error detail about each message that could not be enqueued.

        " } }, "Binary": { "base": null, "refs": { "BinaryList$member": null, "MessageAttributeValue$BinaryValue": "

        Binary type attributes can store any binary data, for example, compressed data, encrypted data, or images.

        " } }, "BinaryList": { "base": null, "refs": { "MessageAttributeValue$BinaryListValues": "

        Not implemented. Reserved for future use.

        " } }, "Boolean": { "base": null, "refs": { "BatchResultErrorEntry$SenderFault": "

        Whether the error happened due to the sender's fault.

        " } }, "ChangeMessageVisibilityBatchRequest": { "base": "

        ", "refs": { } }, "ChangeMessageVisibilityBatchRequestEntry": { "base": "

        Encloses a receipt handle and an entry id for each message in ChangeMessageVisibilityBatch.

        All of the following parameters are list parameters that must be prefixed with ChangeMessageVisibilityBatchRequestEntry.n, where n is an integer value starting with 1. For example, a parameter list for this action might look like this:

        Your_Receipt_Handle]]>

        ", "refs": { "ChangeMessageVisibilityBatchRequestEntryList$member": null } }, "ChangeMessageVisibilityBatchRequestEntryList": { "base": null, "refs": { "ChangeMessageVisibilityBatchRequest$Entries": "

        A list of receipt handles of the messages for which the visibility timeout must be changed.

        " } }, "ChangeMessageVisibilityBatchResult": { "base": "

        For each message in the batch, the response contains a ChangeMessageVisibilityBatchResultEntry tag if the message succeeds or a BatchResultErrorEntry tag if the message fails.

        ", "refs": { } }, "ChangeMessageVisibilityBatchResultEntry": { "base": "

        Encloses the id of an entry in ChangeMessageVisibilityBatch.

        ", "refs": { "ChangeMessageVisibilityBatchResultEntryList$member": null } }, "ChangeMessageVisibilityBatchResultEntryList": { "base": null, "refs": { "ChangeMessageVisibilityBatchResult$Successful": "

        A list of ChangeMessageVisibilityBatchResultEntry items.

        " } }, "ChangeMessageVisibilityRequest": { "base": null, "refs": { } }, "CreateQueueRequest": { "base": "

        ", "refs": { } }, "CreateQueueResult": { "base": "

        Returns the QueueUrl element of the created queue.

        ", "refs": { } }, "DeleteMessageBatchRequest": { "base": "

        ", "refs": { } }, "DeleteMessageBatchRequestEntry": { "base": "

        Encloses a receipt handle and an identifier for it.

        ", "refs": { "DeleteMessageBatchRequestEntryList$member": null } }, "DeleteMessageBatchRequestEntryList": { "base": null, "refs": { "DeleteMessageBatchRequest$Entries": "

        A list of receipt handles for the messages to be deleted.

        " } }, "DeleteMessageBatchResult": { "base": "

        For each message in the batch, the response contains a DeleteMessageBatchResultEntry tag if the message is deleted or a BatchResultErrorEntry tag if the message cannot be deleted.

        ", "refs": { } }, "DeleteMessageBatchResultEntry": { "base": "

        Encloses the id an entry in DeleteMessageBatch.

        ", "refs": { "DeleteMessageBatchResultEntryList$member": null } }, "DeleteMessageBatchResultEntryList": { "base": null, "refs": { "DeleteMessageBatchResult$Successful": "

        A list of DeleteMessageBatchResultEntry items.

        " } }, "DeleteMessageRequest": { "base": "

        ", "refs": { } }, "DeleteQueueRequest": { "base": "

        ", "refs": { } }, "EmptyBatchRequest": { "base": "

        Batch request does not contain an entry.

        ", "refs": { } }, "GetQueueAttributesRequest": { "base": "

        ", "refs": { } }, "GetQueueAttributesResult": { "base": "

        A list of returned queue attributes.

        ", "refs": { } }, "GetQueueUrlRequest": { "base": "

        ", "refs": { } }, "GetQueueUrlResult": { "base": "

        For more information, see Responses in the Amazon SQS Developer Guide.

        ", "refs": { } }, "Integer": { "base": null, "refs": { "ChangeMessageVisibilityBatchRequestEntry$VisibilityTimeout": "

        The new value (in seconds) for the message's visibility timeout.

        ", "ChangeMessageVisibilityRequest$VisibilityTimeout": "

        The new value (in seconds - from 0 to 43200 - maximum 12 hours) for the message's visibility timeout.

        ", "ReceiveMessageRequest$MaxNumberOfMessages": "

        The maximum number of messages to return. Amazon SQS never returns more messages than this value but may return fewer. Values can be from 1 to 10. Default is 1.

        All of the messages are not necessarily returned.

        ", "ReceiveMessageRequest$VisibilityTimeout": "

        The duration (in seconds) that the received messages are hidden from subsequent retrieve requests after being retrieved by a ReceiveMessage request.

        ", "ReceiveMessageRequest$WaitTimeSeconds": "

        The duration (in seconds) for which the call will wait for a message to arrive in the queue before returning. If a message is available, the call will return sooner than WaitTimeSeconds.

        ", "SendMessageBatchRequestEntry$DelaySeconds": "

        The number of seconds for which the message has to be delayed.

        ", "SendMessageRequest$DelaySeconds": "

        The number of seconds (0 to 900 - 15 minutes) to delay a specific message. Messages with a positive DelaySeconds value become available for processing after the delay time is finished. If you don't specify a value, the default value for the queue applies.

        " } }, "InvalidAttributeName": { "base": "

        The attribute referred to does not exist.

        ", "refs": { } }, "InvalidBatchEntryId": { "base": "

        The Id of a batch entry in a batch request does not abide by the specification.

        ", "refs": { } }, "InvalidIdFormat": { "base": "

        The receipt handle is not valid for the current version.

        ", "refs": { } }, "InvalidMessageContents": { "base": "

        The message contains characters outside the allowed set.

        ", "refs": { } }, "ListDeadLetterSourceQueuesRequest": { "base": "

        ", "refs": { } }, "ListDeadLetterSourceQueuesResult": { "base": "

        A list of your dead letter source queues.

        ", "refs": { } }, "ListQueuesRequest": { "base": "

        ", "refs": { } }, "ListQueuesResult": { "base": "

        A list of your queues.

        ", "refs": { } }, "Message": { "base": "

        An Amazon SQS message.

        ", "refs": { "MessageList$member": null } }, "MessageAttributeMap": { "base": null, "refs": { "Message$MessageAttributes": "

        Each message attribute consists of a Name, Type, and Value. For more information, see Message Attribute Items.

        ", "SendMessageBatchRequestEntry$MessageAttributes": "

        Each message attribute consists of a Name, Type, and Value. For more information, see Message Attribute Items.

        ", "SendMessageRequest$MessageAttributes": "

        Each message attribute consists of a Name, Type, and Value. For more information, see Message Attribute Items.

        " } }, "MessageAttributeName": { "base": null, "refs": { "MessageAttributeNameList$member": null } }, "MessageAttributeNameList": { "base": null, "refs": { "ReceiveMessageRequest$MessageAttributeNames": "

        The name of the message attribute, where N is the index. The message attribute name can contain the following characters: A-Z, a-z, 0-9, underscore (_), hyphen (-), and period (.). The name must not start or end with a period, and it should not have successive periods. The name is case sensitive and must be unique among all attribute names for the message. The name can be up to 256 characters long. The name cannot start with \"AWS.\" or \"Amazon.\" (or any variations in casing), because these prefixes are reserved for use by Amazon Web Services.

        When using ReceiveMessage, you can send a list of attribute names to receive, or you can return all of the attributes by specifying \"All\" or \".*\" in your request. You can also use \"bar.*\" to return all message attributes starting with the \"bar\" prefix.

        " } }, "MessageAttributeValue": { "base": "

        The user-specified message attribute value. For string data types, the value attribute has the same restrictions on the content as the message body. For more information, see SendMessage.

        Name, type, and value must not be empty or null. In addition, the message body should not be empty or null. All parts of the message attribute, including name, type, and value, are included in the message size restriction, which is currently 256 KB (262,144 bytes).

        ", "refs": { "MessageAttributeMap$value": null } }, "MessageList": { "base": null, "refs": { "ReceiveMessageResult$Messages": "

        A list of messages.

        " } }, "MessageNotInflight": { "base": "

        The message referred to is not in flight.

        ", "refs": { } }, "OverLimit": { "base": "

        The action that you requested would violate a limit. For example, ReceiveMessage returns this error if the maximum number of messages inflight has already been reached. AddPermission returns this error if the maximum number of permissions for the queue has already been reached.

        ", "refs": { } }, "PurgeQueueInProgress": { "base": "

        Indicates that the specified queue previously received a PurgeQueue request within the last 60 seconds, the time it can take to delete the messages in the queue.

        ", "refs": { } }, "PurgeQueueRequest": { "base": "

        ", "refs": { } }, "QueueAttributeName": { "base": null, "refs": { "AttributeMap$key": null, "AttributeNameList$member": null } }, "QueueDeletedRecently": { "base": "

        You must wait 60 seconds after deleting a queue before you can create another with the same name.

        ", "refs": { } }, "QueueDoesNotExist": { "base": "

        The queue referred to does not exist.

        ", "refs": { } }, "QueueNameExists": { "base": "

        A queue already exists with this name. Amazon SQS returns this error only if the request includes attributes whose values differ from those of the existing queue.

        ", "refs": { } }, "QueueUrlList": { "base": null, "refs": { "ListDeadLetterSourceQueuesResult$queueUrls": "

        A list of source queue URLs that have the RedrivePolicy queue attribute configured with a dead letter queue.

        ", "ListQueuesResult$QueueUrls": "

        A list of queue URLs, up to 1000 entries.

        " } }, "ReceiptHandleIsInvalid": { "base": "

        The receipt handle provided is not valid.

        ", "refs": { } }, "ReceiveMessageRequest": { "base": "

        ", "refs": { } }, "ReceiveMessageResult": { "base": "

        A list of received messages.

        ", "refs": { } }, "RemovePermissionRequest": { "base": "

        ", "refs": { } }, "SendMessageBatchRequest": { "base": "

        ", "refs": { } }, "SendMessageBatchRequestEntry": { "base": "

        Contains the details of a single Amazon SQS message along with a Id.

        ", "refs": { "SendMessageBatchRequestEntryList$member": null } }, "SendMessageBatchRequestEntryList": { "base": null, "refs": { "SendMessageBatchRequest$Entries": "

        A list of SendMessageBatchRequestEntry items.

        " } }, "SendMessageBatchResult": { "base": "

        For each message in the batch, the response contains a SendMessageBatchResultEntry tag if the message succeeds or a BatchResultErrorEntry tag if the message fails.

        ", "refs": { } }, "SendMessageBatchResultEntry": { "base": "

        Encloses a message ID for successfully enqueued message of a SendMessageBatch.

        ", "refs": { "SendMessageBatchResultEntryList$member": null } }, "SendMessageBatchResultEntryList": { "base": null, "refs": { "SendMessageBatchResult$Successful": "

        A list of SendMessageBatchResultEntry items.

        " } }, "SendMessageRequest": { "base": "

        ", "refs": { } }, "SendMessageResult": { "base": "

        The MD5OfMessageBody and MessageId elements.

        ", "refs": { } }, "SetQueueAttributesRequest": { "base": "

        ", "refs": { } }, "String": { "base": null, "refs": { "AWSAccountIdList$member": null, "ActionNameList$member": null, "AddPermissionRequest$QueueUrl": "

        The URL of the Amazon SQS queue to take action on.

        Queue URLs are case-sensitive.

        ", "AddPermissionRequest$Label": "

        The unique identification of the permission you're setting (e.g., AliceSendMessage). Constraints: Maximum 80 characters; alphanumeric characters, hyphens (-), and underscores (_) are allowed.

        ", "AttributeMap$value": null, "BatchResultErrorEntry$Id": "

        The id of an entry in a batch request.

        ", "BatchResultErrorEntry$Code": "

        An error code representing why the action failed on this entry.

        ", "BatchResultErrorEntry$Message": "

        A message explaining why the action failed on this entry.

        ", "ChangeMessageVisibilityBatchRequest$QueueUrl": "

        The URL of the Amazon SQS queue to take action on.

        Queue URLs are case-sensitive.

        ", "ChangeMessageVisibilityBatchRequestEntry$Id": "

        An identifier for this particular receipt handle. This is used to communicate the result. Note that the Ids of a batch request need to be unique within the request.

        ", "ChangeMessageVisibilityBatchRequestEntry$ReceiptHandle": "

        A receipt handle.

        ", "ChangeMessageVisibilityBatchResultEntry$Id": "

        Represents a message whose visibility timeout has been changed successfully.

        ", "ChangeMessageVisibilityRequest$QueueUrl": "

        The URL of the Amazon SQS queue to take action on.

        Queue URLs are case-sensitive.

        ", "ChangeMessageVisibilityRequest$ReceiptHandle": "

        The receipt handle associated with the message whose visibility timeout should be changed. This parameter is returned by the ReceiveMessage action.

        ", "CreateQueueRequest$QueueName": "

        The name for the queue to be created.

        Queue names are case-sensitive.

        ", "CreateQueueResult$QueueUrl": "

        The URL for the created Amazon SQS queue.

        ", "DeleteMessageBatchRequest$QueueUrl": "

        The URL of the Amazon SQS queue to take action on.

        Queue URLs are case-sensitive.

        ", "DeleteMessageBatchRequestEntry$Id": "

        An identifier for this particular receipt handle. This is used to communicate the result. Note that the Ids of a batch request need to be unique within the request.

        ", "DeleteMessageBatchRequestEntry$ReceiptHandle": "

        A receipt handle.

        ", "DeleteMessageBatchResultEntry$Id": "

        Represents a successfully deleted message.

        ", "DeleteMessageRequest$QueueUrl": "

        The URL of the Amazon SQS queue to take action on.

        Queue URLs are case-sensitive.

        ", "DeleteMessageRequest$ReceiptHandle": "

        The receipt handle associated with the message to delete.

        ", "DeleteQueueRequest$QueueUrl": "

        The URL of the Amazon SQS queue to take action on.

        Queue URLs are case-sensitive.

        ", "GetQueueAttributesRequest$QueueUrl": "

        The URL of the Amazon SQS queue to take action on.

        Queue URLs are case-sensitive.

        ", "GetQueueUrlRequest$QueueName": "

        The name of the queue whose URL must be fetched. Maximum 80 characters; alphanumeric characters, hyphens (-), and underscores (_) are allowed.

        Queue names are case-sensitive.

        ", "GetQueueUrlRequest$QueueOwnerAWSAccountId": "

        The AWS account ID of the account that created the queue.

        ", "GetQueueUrlResult$QueueUrl": "

        The URL for the queue.

        ", "ListDeadLetterSourceQueuesRequest$QueueUrl": "

        The queue URL of a dead letter queue.

        Queue URLs are case-sensitive.

        ", "ListQueuesRequest$QueueNamePrefix": "

        A string to use for filtering the list results. Only those queues whose name begins with the specified string are returned.

        Queue names are case-sensitive.

        ", "Message$MessageId": "

        A unique identifier for the message. Message IDs are considered unique across all AWS accounts for an extended period of time.

        ", "Message$ReceiptHandle": "

        An identifier associated with the act of receiving the message. A new receipt handle is returned every time you receive a message. When deleting a message, you provide the last received receipt handle to delete the message.

        ", "Message$MD5OfBody": "

        An MD5 digest of the non-URL-encoded message body string.

        ", "Message$Body": "

        The message's contents (not URL-encoded).

        ", "Message$MD5OfMessageAttributes": "

        An MD5 digest of the non-URL-encoded message attribute string. This can be used to verify that Amazon SQS received the message correctly. Amazon SQS first URL decodes the message before creating the MD5 digest. For information about MD5, go to http://www.faqs.org/rfcs/rfc1321.html.

        ", "MessageAttributeMap$key": null, "MessageAttributeValue$StringValue": "

        Strings are Unicode with UTF8 binary encoding. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.

        ", "MessageAttributeValue$DataType": "

        Amazon SQS supports the following logical data types: String, Number, and Binary. For the Number data type, you must use StringValue.

        You can also append custom labels. For more information, see Message Attribute Data Types.

        ", "PurgeQueueRequest$QueueUrl": "

        The queue URL of the queue to delete the messages from when using the PurgeQueue API.

        Queue URLs are case-sensitive.

        ", "QueueUrlList$member": null, "ReceiveMessageRequest$QueueUrl": "

        The URL of the Amazon SQS queue to take action on.

        Queue URLs are case-sensitive.

        ", "RemovePermissionRequest$QueueUrl": "

        The URL of the Amazon SQS queue to take action on.

        Queue URLs are case-sensitive.

        ", "RemovePermissionRequest$Label": "

        The identification of the permission to remove. This is the label added with the AddPermission action.

        ", "SendMessageBatchRequest$QueueUrl": "

        The URL of the Amazon SQS queue to take action on.

        Queue URLs are case-sensitive.

        ", "SendMessageBatchRequestEntry$Id": "

        An identifier for the message in this batch. This is used to communicate the result. Note that the Ids of a batch request need to be unique within the request.

        ", "SendMessageBatchRequestEntry$MessageBody": "

        Body of the message.

        ", "SendMessageBatchResultEntry$Id": "

        An identifier for the message in this batch.

        ", "SendMessageBatchResultEntry$MessageId": "

        An identifier for the message.

        ", "SendMessageBatchResultEntry$MD5OfMessageBody": "

        An MD5 digest of the non-URL-encoded message body string. This can be used to verify that Amazon SQS received the message correctly. Amazon SQS first URL decodes the message before creating the MD5 digest. For information about MD5, go to http://www.faqs.org/rfcs/rfc1321.html.

        ", "SendMessageBatchResultEntry$MD5OfMessageAttributes": "

        An MD5 digest of the non-URL-encoded message attribute string. This can be used to verify that Amazon SQS received the message batch correctly. Amazon SQS first URL decodes the message before creating the MD5 digest. For information about MD5, go to http://www.faqs.org/rfcs/rfc1321.html.

        ", "SendMessageRequest$QueueUrl": "

        The URL of the Amazon SQS queue to take action on.

        Queue URLs are case-sensitive.

        ", "SendMessageRequest$MessageBody": "

        The message to send. String maximum 256 KB in size. For a list of allowed characters, see the preceding important note.

        ", "SendMessageResult$MD5OfMessageBody": "

        An MD5 digest of the non-URL-encoded message body string. This can be used to verify that Amazon SQS received the message correctly. Amazon SQS first URL decodes the message before creating the MD5 digest. For information about MD5, go to http://www.faqs.org/rfcs/rfc1321.html.

        ", "SendMessageResult$MD5OfMessageAttributes": "

        An MD5 digest of the non-URL-encoded message attribute string. This can be used to verify that Amazon SQS received the message correctly. Amazon SQS first URL decodes the message before creating the MD5 digest. For information about MD5, go to http://www.faqs.org/rfcs/rfc1321.html.

        ", "SendMessageResult$MessageId": "

        An element containing the message ID of the message sent to the queue. For more information, see Queue and Message Identifiers in the Amazon SQS Developer Guide.

        ", "SetQueueAttributesRequest$QueueUrl": "

        The URL of the Amazon SQS queue to take action on.

        Queue URLs are case-sensitive.

        ", "StringList$member": null } }, "StringList": { "base": null, "refs": { "MessageAttributeValue$StringListValues": "

        Not implemented. Reserved for future use.

        " } }, "TooManyEntriesInBatchRequest": { "base": "

        Batch request contains more number of entries than permissible.

        ", "refs": { } }, "UnsupportedOperation": { "base": "

        Error code 400. Unsupported operation.

        ", "refs": { } } } } aws-sdk-go-1.4.22/models/apis/sqs/2012-11-05/examples-1.json000066400000000000000000000457571300374646400225260ustar00rootroot00000000000000{ "version": "1.0", "examples": { "AddPermission": [ { "input": { "AWSAccountIds": [ "12345EXAMPLE" ], "Actions": [ "SendMessage" ], "Label": "SendMessagesFromMyQueue", "QueueUrl": "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example allows the specified AWS account to send messages to the specified queue.", "id": "to-add-a-permission-to-a-queue-1472079068305", "title": "To add a permission to a queue" } ], "ChangeMessageVisibility": [ { "input": { "QueueUrl": "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue", "ReceiptHandle": "AQEBTpyI...t6HyQg==", "VisibilityTimeout": 36000 }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example changes the visibility timeout of the specified message to 10 hours (10 hours * 60 minutes * 60 seconds).", "id": "to-change-the-visibility-timeout-of-a-single-message-1472079046292", "title": "To change the visibility timeout of a single message" } ], "ChangeMessageVisibilityBatch": [ { "input": { "Entries": [ { "Id": "FirstMessage", "ReceiptHandle": "AQEBhz2q...Jf3kaw==", "VisibilityTimeout": 36000 }, { "Id": "SecondMessage", "ReceiptHandle": "AQEBkTUH...HifSnw==", "VisibilityTimeout": 36000 } ], "QueueUrl": "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue" }, "output": { "Failed": [ ], "Successful": [ ] }, "comments": { "input": { }, "output": { } }, "description": "This example changes the visibility timeout of the two specified messages to 10 hours (10 hours * 60 minutes * 60 seconds).", "id": "to-change-the-visibility-timeout-of-multiple-messages-1472079027081", "title": "To change the visibility timeout of multiple messages" } ], "CreateQueue": [ { "input": { "Attributes": { "MessageRetentionPeriod": "259200", "RedrivePolicy": "{\"deadLetterTargetArn\":\"arn:aws:sqs:us-east-1:80398EXAMPLE:MyDeadLetterQueue\",\"maxReceiveCount\":\"1000\"}" }, "QueueName": "MyQueue" }, "output": { "QueueUrl": "https://queue.amazonaws.com/80398EXAMPLE/MyQueue" }, "comments": { "input": { }, "output": { } }, "description": "The following operation creates an Amazon SQS queue named MyQueue.", "id": "to-create-an-sqs-queue-1472078982579", "title": "To create an Amazon SQS queue" } ], "DeleteMessage": [ { "input": { "QueueUrl": "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue", "ReceiptHandle": "AQEBRXTo...q2doVA==" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified message.", "id": "to-delete-a-single-message-1472078961585", "title": "To delete a single message" } ], "DeleteMessageBatch": [ { "input": { "Entries": [ { "Id": "FirstMessage", "ReceiptHandle": "AQEB1mgl...Z4GuLw==" }, { "Id": "SecondMessage", "ReceiptHandle": "AQEBLsYM...VQubAA==" } ], "QueueUrl": "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue" }, "output": { "Failed": [ ], "Successful": [ { "Id": "FirstMessage" }, { "Id": "SecondMessage" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the two specified messages.", "id": "to-delete-multiple-messages-1472078930327", "title": "To delete multiple messages" } ], "DeleteQueue": [ { "input": { "QueueUrl": "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyNewerQueue" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example deletes the specified queue.", "id": "to-delete-a-queue-1472151853558", "title": "To delete a queue" } ], "GetQueueAttributes": [ { "input": { "AttributeNames": [ "All" ], "QueueUrl": "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue" }, "output": { "Attributes": { "ApproximateNumberOfMessages": "0", "ApproximateNumberOfMessagesDelayed": "0", "ApproximateNumberOfMessagesNotVisible": "0", "CreatedTimestamp": "1442426968", "DelaySeconds": "0", "LastModifiedTimestamp": "1442426968", "MaximumMessageSize": "262144", "MessageRetentionPeriod": "345600", "QueueArn": "arn:aws:sqs:us-east-1:80398EXAMPLE:MyNewQueue", "ReceiveMessageWaitTimeSeconds": "0", "RedrivePolicy": "{\"deadLetterTargetArn\":\"arn:aws:sqs:us-east-1:80398EXAMPLE:MyDeadLetterQueue\",\"maxReceiveCount\":1000}", "VisibilityTimeout": "30" } }, "comments": { "input": { }, "output": { } }, "description": "This example gets all attributes of the specified queue.", "id": "to-get-the-attributes-of-a-queue-1472149421128", "title": "To get the attributes of a queue" }, { "input": { "AttributeNames": [ "MaximumMessageSize VisibilityTimeout" ], "QueueUrl": "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyNewQueue" }, "output": { "Attributes": { "MaximumMessageSize": "262144", "VisibilityTimeout": "30" } }, "comments": { "input": { }, "output": { } }, "description": "This example gets only the specified queue's maximum message size and visibility timeout attributes.", "id": "to-get-the-attributes-of-a-queue-1472517012839", "title": "To get the attributes of a queue" } ], "GetQueueUrl": [ { "input": { "QueueName": "MyQueue", "QueueOwnerAWSAccountId": "123456789101" }, "output": { "QueueUrl": "https://queue.amazonaws.com/123456789101/MyQueue" }, "comments": { "input": { }, "output": { } }, "description": "This example gets the URL of the specified queue.", "id": "to-get-the-url-of-a-queue-1472078901091", "title": "To get the URL of a queue" } ], "ListDeadLetterSourceQueues": [ { "input": { "QueueUrl": "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyDeadLetterQueue" }, "output": { "queueUrls": [ "https://queue.amazonaws.com/80398EXAMPLE/MyQueue", "https://queue.amazonaws.com/80398EXAMPLE/MyOtherQueue" ] }, "comments": { "input": { }, "output": { } }, "description": "This example lists the source queues associated with the specified dead letter queue.", "id": "to-list-the-source-queues-of-a-dead-letter-queue-1472150435081", "title": "To list the source queues of a dead letter queue" } ], "ListQueues": [ { "input": { "QueueNamePrefix": "" }, "output": { "QueueUrls": [ "https://queue.amazonaws.com/80398EXAMPLE/MyDeadLetterQueue", "https://queue.amazonaws.com/80398EXAMPLE/MyQueue", "https://queue.amazonaws.com/80398EXAMPLE/MyOtherQueue", "https://queue.amazonaws.com/80398EXAMPLE/TestQueue1", "https://queue.amazonaws.com/80398EXAMPLE/TestQueue2" ] }, "comments": { "input": { }, "output": { } }, "description": "This example lists all queues.", "id": "to-list-queues-1472150595914", "title": "To list queues" }, { "input": { "QueueNamePrefix": "My" }, "output": { "QueueUrls": [ "https://queue.amazonaws.com/80398EXAMPLE/MyDeadLetterQueue", "https://queue.amazonaws.com/80398EXAMPLE/MyQueue", "https://queue.amazonaws.com/80398EXAMPLE/MyOtherQueue" ] }, "comments": { "input": { }, "output": { } }, "description": "This example lists only queues that start with "Ty".", "id": "to-list-queues-1472517240103", "title": "To list queues" } ], "PurgeQueue": [ { "input": { "QueueUrl": "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyNewQueue" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example deletes all messages in the specified queue.", "id": "to-purge-a-queue-1472150819702", "title": "To purge a queue" } ], "ReceiveMessage": [ { "input": { "AttributeNames": [ "All" ], "MaxNumberOfMessages": 10, "MessageAttributeNames": [ "All" ], "QueueUrl": "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue", "VisibilityTimeout": 123, "WaitTimeSeconds": 123 }, "output": { "Messages": [ { "Attributes": { "ApproximateFirstReceiveTimestamp": "1442428276921", "ApproximateReceiveCount": "5", "SenderId": "AIDAIAZKMSNQ7TEXAMPLE", "SentTimestamp": "1442428276921" }, "Body": "My first message.", "MD5OfBody": "1000f835...a35411fa", "MD5OfMessageAttributes": "9424c491...26bc3ae7", "MessageAttributes": { "City": { "DataType": "String", "StringValue": "Any City" }, "PostalCode": { "DataType": "String", "StringValue": "ABC123" } }, "MessageId": "d6790f8d-d575-4f01-bc51-40122EXAMPLE", "ReceiptHandle": "AQEBzbVv...fqNzFw==" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example receives up to 10 available messages, returning all available attributes.", "id": "to-receive-a-message-1472151462717", "title": "To receive a message" }, { "input": { "AttributeNames": [ "SenderId SentTimestamp" ], "MaxNumberOfMessages": 123, "MessageAttributeNames": [ "PostalCode" ], "QueueUrl": "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue", "VisibilityTimeout": 123, "WaitTimeSeconds": 123 }, "output": { "Messages": [ { "Attributes": { "SenderId": "AIDAIAZKMSNQ7TEXAMPLE", "SentTimestamp": "1442428276921" }, "Body": "My first message.", "MD5OfBody": "1000f835...a35411fa", "MD5OfMessageAttributes": "b8e89563...e088e74f", "MessageAttributes": { "PostalCode": { "DataType": "String", "StringValue": "ABC123" } }, "MessageId": "d6790f8d-d575-4f01-bc51-40122EXAMPLE", "ReceiptHandle": "AQEB6nR4...HzlvZQ==" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example receives the next available message, returning only the SenderId and SentTimestamp attributes and the PostalCode message attribute.", "id": "to-receive-a-message-1472517398871", "title": "To receive a message" } ], "RemovePermission": [ { "input": { "Label": "SendMessagesFromMyQueue", "QueueUrl": "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example removes the permission with the specified label from the specified queue.", "id": "to-remove-a-permission-from-a-queue-1472151967252", "title": "To remove a permission from a queue" } ], "SendMessage": [ { "input": { "DelaySeconds": 10, "MessageAttributes": { "City": { "DataType": "String", "StringValue": "Any City" }, "Greeting": { "BinaryValue": "Hello, World!", "DataType": "Binary" }, "Population": { "DataType": "Number", "StringValue": "1250800" } }, "MessageBody": "Information about the largest city in Any Region.", "QueueUrl": "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue" }, "output": { "MD5OfMessageAttributes": "00484c68...59e48f06", "MD5OfMessageBody": "51b0a325...39163aa0", "MessageId": "da68f62c-0c07-4bee-bf5f-7e856EXAMPLE" }, "comments": { "input": { }, "output": { } }, "description": "This example sends a message with the specified message body, delay period, and message attributes to the specified queue.", "id": "to-send-a-message-to-a-queue-1472152022619", "title": "To send a message to a queue" } ], "SendMessageBatch": [ { "input": { "Entries": [ { "DelaySeconds": 10, "Id": "FuelReport-0001-2015-09-16T140731Z", "MessageAttributes": { "City": { "DataType": "String", "StringValue": "Any City" }, "PostalCode": { "DataType": "String", "StringValue": "99065" }, "PricePerGallon": { "DataType": "Number", "StringValue": "1.99" }, "Region": { "DataType": "String", "StringValue": "WA" }, "SellerName": { "DataType": "String", "StringValue": "Example Store" } }, "MessageBody": "Fuel report for account 0001 on 2015-09-16 at 02:07:31 PM." }, { "DelaySeconds": 10, "Id": "FuelReport-0002-2015-09-16T140930Z", "MessageAttributes": { "City": { "DataType": "String", "StringValue": "North Town" }, "PostalCode": { "DataType": "String", "StringValue": "99123" }, "PricePerGallon": { "DataType": "Number", "StringValue": "1.87" }, "Region": { "DataType": "String", "StringValue": "WA" }, "SellerName": { "DataType": "String", "StringValue": "Example Fuels" } }, "MessageBody": "Fuel report for account 0002 on 2015-09-16 at 02:09:30 PM." } ], "QueueUrl": "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue" }, "output": { "Failed": [ ], "Successful": [ { "Id": "FuelReport-0001-2015-09-16T140731Z", "MD5OfMessageAttributes": "10809b55...baf283ef", "MD5OfMessageBody": "203c4a38...7943237e", "MessageId": "d175070c-d6b8-4101-861d-adeb3EXAMPLE" }, { "Id": "FuelReport-0002-2015-09-16T140930Z", "MD5OfMessageAttributes": "55623928...ae354a25", "MD5OfMessageBody": "2cf0159a...c1980595", "MessageId": "f9b7d55d-0570-413e-b9c5-a9264EXAMPLE" } ] }, "comments": { "input": { }, "output": { } }, "description": "This example sends two messages with the specified message bodies, delay periods, and message attributes to the specified queue.", "id": "to-send-multiple-messages-1472152282144", "title": "To send multiple messages" } ], "SetQueueAttributes": [ { "input": { "Attributes": { "DelaySeconds": "10", "MaximumMessageSize": "131072", "MessageRetentionPeriod": "259200", "ReceiveMessageWaitTimeSeconds": "20", "RedrivePolicy": "{\"deadLetterTargetArn\":\"arn:aws:sqs:us-east-1:80398EXAMPLE:MyDeadLetterQueue\",\"maxReceiveCount\":\"1000\"}", "VisibilityTimeout": "60" }, "QueueUrl": "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyNewQueue" }, "output": { }, "comments": { "input": { }, "output": { } }, "description": "This example sets the specified queue to a delivery delay of 10 seconds, a maximum message size of 128 KB (128 KB * 1,024 bytes), a message retention period of 3 days (3 days * 24 hours * 60 minutes * 60 seconds), a receive message wait time of 20 seconds, and a default visibility timeout of 60 seconds. This example also associates the specified dead letter queue with a maximum receive count of 1,000 messages.", "id": "to-set-the-attributes-of-a-queue-1472152379646", "title": "To set the attributes of a queue" } ] } } aws-sdk-go-1.4.22/models/apis/sqs/2012-11-05/paginators-1.json000066400000000000000000000001241300374646400230320ustar00rootroot00000000000000{ "pagination": { "ListQueues": { "result_key": "QueueUrls" } } } aws-sdk-go-1.4.22/models/apis/ssm/000077500000000000000000000000001300374646400166045ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/ssm/2014-11-06/000077500000000000000000000000001300374646400176345ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/ssm/2014-11-06/api-2.json000066400000000000000000001274731300374646400214550ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2014-11-06", "endpointPrefix":"ssm", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"Amazon SSM", "serviceFullName":"Amazon Simple Systems Management Service", "signatureVersion":"v4", "targetPrefix":"AmazonSSM" }, "operations":{ "AddTagsToResource":{ "name":"AddTagsToResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsToResourceRequest"}, "output":{"shape":"AddTagsToResourceResult"}, "errors":[ {"shape":"InvalidResourceType"}, {"shape":"InvalidResourceId"}, {"shape":"InternalServerError"} ] }, "CancelCommand":{ "name":"CancelCommand", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelCommandRequest"}, "output":{"shape":"CancelCommandResult"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"InvalidCommandId"}, {"shape":"InvalidInstanceId"}, {"shape":"DuplicateInstanceId"} ] }, "CreateActivation":{ "name":"CreateActivation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateActivationRequest"}, "output":{"shape":"CreateActivationResult"}, "errors":[ {"shape":"InternalServerError"} ] }, "CreateAssociation":{ "name":"CreateAssociation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateAssociationRequest"}, "output":{"shape":"CreateAssociationResult"}, "errors":[ {"shape":"AssociationAlreadyExists"}, {"shape":"AssociationLimitExceeded"}, {"shape":"InternalServerError"}, {"shape":"InvalidDocument"}, {"shape":"InvalidInstanceId"}, {"shape":"UnsupportedPlatformType"}, {"shape":"InvalidParameters"} ] }, "CreateAssociationBatch":{ "name":"CreateAssociationBatch", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateAssociationBatchRequest"}, "output":{"shape":"CreateAssociationBatchResult"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"InvalidDocument"}, {"shape":"InvalidInstanceId"}, {"shape":"InvalidParameters"}, {"shape":"DuplicateInstanceId"}, {"shape":"AssociationLimitExceeded"}, {"shape":"UnsupportedPlatformType"} ] }, "CreateDocument":{ "name":"CreateDocument", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateDocumentRequest"}, "output":{"shape":"CreateDocumentResult"}, "errors":[ {"shape":"DocumentAlreadyExists"}, {"shape":"MaxDocumentSizeExceeded"}, {"shape":"InternalServerError"}, {"shape":"InvalidDocumentContent"}, {"shape":"DocumentLimitExceeded"} ] }, "DeleteActivation":{ "name":"DeleteActivation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteActivationRequest"}, "output":{"shape":"DeleteActivationResult"}, "errors":[ {"shape":"InvalidActivationId"}, {"shape":"InvalidActivation"}, {"shape":"InternalServerError"} ] }, "DeleteAssociation":{ "name":"DeleteAssociation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteAssociationRequest"}, "output":{"shape":"DeleteAssociationResult"}, "errors":[ {"shape":"AssociationDoesNotExist"}, {"shape":"InternalServerError"}, {"shape":"InvalidDocument"}, {"shape":"InvalidInstanceId"}, {"shape":"TooManyUpdates"} ] }, "DeleteDocument":{ "name":"DeleteDocument", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteDocumentRequest"}, "output":{"shape":"DeleteDocumentResult"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"InvalidDocument"}, {"shape":"InvalidDocumentOperation"}, {"shape":"AssociatedInstances"} ] }, "DeregisterManagedInstance":{ "name":"DeregisterManagedInstance", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeregisterManagedInstanceRequest"}, "output":{"shape":"DeregisterManagedInstanceResult"}, "errors":[ {"shape":"InvalidInstanceId"}, {"shape":"InternalServerError"} ] }, "DescribeActivations":{ "name":"DescribeActivations", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeActivationsRequest"}, "output":{"shape":"DescribeActivationsResult"}, "errors":[ {"shape":"InvalidFilter"}, {"shape":"InvalidNextToken"}, {"shape":"InternalServerError"} ] }, "DescribeAssociation":{ "name":"DescribeAssociation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAssociationRequest"}, "output":{"shape":"DescribeAssociationResult"}, "errors":[ {"shape":"AssociationDoesNotExist"}, {"shape":"InternalServerError"}, {"shape":"InvalidDocument"}, {"shape":"InvalidInstanceId"} ] }, "DescribeDocument":{ "name":"DescribeDocument", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDocumentRequest"}, "output":{"shape":"DescribeDocumentResult"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"InvalidDocument"} ] }, "DescribeDocumentPermission":{ "name":"DescribeDocumentPermission", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDocumentPermissionRequest"}, "output":{"shape":"DescribeDocumentPermissionResponse"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"InvalidDocument"}, {"shape":"InvalidPermissionType"} ] }, "DescribeInstanceInformation":{ "name":"DescribeInstanceInformation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeInstanceInformationRequest"}, "output":{"shape":"DescribeInstanceInformationResult"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"InvalidInstanceId"}, {"shape":"InvalidNextToken"}, {"shape":"InvalidInstanceInformationFilterValue"}, {"shape":"InvalidFilterKey"} ] }, "GetDocument":{ "name":"GetDocument", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetDocumentRequest"}, "output":{"shape":"GetDocumentResult"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"InvalidDocument"} ] }, "ListAssociations":{ "name":"ListAssociations", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListAssociationsRequest"}, "output":{"shape":"ListAssociationsResult"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"InvalidNextToken"} ] }, "ListCommandInvocations":{ "name":"ListCommandInvocations", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListCommandInvocationsRequest"}, "output":{"shape":"ListCommandInvocationsResult"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"InvalidCommandId"}, {"shape":"InvalidInstanceId"}, {"shape":"InvalidFilterKey"}, {"shape":"InvalidNextToken"} ] }, "ListCommands":{ "name":"ListCommands", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListCommandsRequest"}, "output":{"shape":"ListCommandsResult"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"InvalidCommandId"}, {"shape":"InvalidInstanceId"}, {"shape":"InvalidFilterKey"}, {"shape":"InvalidNextToken"} ] }, "ListDocuments":{ "name":"ListDocuments", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListDocumentsRequest"}, "output":{"shape":"ListDocumentsResult"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"InvalidNextToken"}, {"shape":"InvalidFilterKey"} ] }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTagsForResourceRequest"}, "output":{"shape":"ListTagsForResourceResult"}, "errors":[ {"shape":"InvalidResourceType"}, {"shape":"InvalidResourceId"}, {"shape":"InternalServerError"} ] }, "ModifyDocumentPermission":{ "name":"ModifyDocumentPermission", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyDocumentPermissionRequest"}, "output":{"shape":"ModifyDocumentPermissionResponse"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"InvalidDocument"}, {"shape":"InvalidPermissionType"}, {"shape":"DocumentPermissionLimit"}, {"shape":"DocumentLimitExceeded"} ] }, "RemoveTagsFromResource":{ "name":"RemoveTagsFromResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsFromResourceRequest"}, "output":{"shape":"RemoveTagsFromResourceResult"}, "errors":[ {"shape":"InvalidResourceType"}, {"shape":"InvalidResourceId"}, {"shape":"InternalServerError"} ] }, "SendCommand":{ "name":"SendCommand", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SendCommandRequest"}, "output":{"shape":"SendCommandResult"}, "errors":[ {"shape":"DuplicateInstanceId"}, {"shape":"InternalServerError"}, {"shape":"InvalidInstanceId"}, {"shape":"InvalidDocument"}, {"shape":"InvalidOutputFolder"}, {"shape":"InvalidParameters"}, {"shape":"UnsupportedPlatformType"}, {"shape":"MaxDocumentSizeExceeded"}, {"shape":"InvalidRole"}, {"shape":"InvalidNotificationConfig"} ] }, "UpdateAssociationStatus":{ "name":"UpdateAssociationStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateAssociationStatusRequest"}, "output":{"shape":"UpdateAssociationStatusResult"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"InvalidInstanceId"}, {"shape":"InvalidDocument"}, {"shape":"AssociationDoesNotExist"}, {"shape":"StatusUnchanged"}, {"shape":"TooManyUpdates"} ] }, "UpdateManagedInstanceRole":{ "name":"UpdateManagedInstanceRole", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateManagedInstanceRoleRequest"}, "output":{"shape":"UpdateManagedInstanceRoleResult"}, "errors":[ {"shape":"InvalidInstanceId"}, {"shape":"InternalServerError"} ] } }, "shapes":{ "AccountId":{ "type":"string", "pattern":"(?i)all|[0-9]{12}" }, "AccountIdList":{ "type":"list", "member":{ "shape":"AccountId", "locationName":"AccountId" }, "max":20 }, "Activation":{ "type":"structure", "members":{ "ActivationId":{"shape":"ActivationId"}, "Description":{"shape":"ActivationDescription"}, "DefaultInstanceName":{"shape":"DefaultInstanceName"}, "IamRole":{"shape":"IamRole"}, "RegistrationLimit":{"shape":"RegistrationLimit"}, "RegistrationsCount":{"shape":"RegistrationsCount"}, "ExpirationDate":{"shape":"ExpirationDate"}, "Expired":{"shape":"Boolean"}, "CreatedDate":{"shape":"CreatedDate"} } }, "ActivationCode":{ "type":"string", "max":250, "min":20 }, "ActivationDescription":{ "type":"string", "max":256, "min":0 }, "ActivationId":{ "type":"string", "pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$" }, "ActivationList":{ "type":"list", "member":{"shape":"Activation"} }, "AddTagsToResourceRequest":{ "type":"structure", "required":[ "ResourceType", "ResourceId", "Tags" ], "members":{ "ResourceType":{"shape":"ResourceTypeForTagging"}, "ResourceId":{"shape":"ResourceId"}, "Tags":{"shape":"TagList"} } }, "AddTagsToResourceResult":{ "type":"structure", "members":{ } }, "AssociatedInstances":{ "type":"structure", "members":{ }, "exception":true }, "Association":{ "type":"structure", "members":{ "Name":{"shape":"DocumentName"}, "InstanceId":{"shape":"InstanceId"} } }, "AssociationAlreadyExists":{ "type":"structure", "members":{ }, "exception":true }, "AssociationDescription":{ "type":"structure", "members":{ "Name":{"shape":"DocumentName"}, "InstanceId":{"shape":"InstanceId"}, "Date":{"shape":"DateTime"}, "Status":{"shape":"AssociationStatus"}, "Parameters":{"shape":"Parameters"} } }, "AssociationDescriptionList":{ "type":"list", "member":{ "shape":"AssociationDescription", "locationName":"AssociationDescription" } }, "AssociationDoesNotExist":{ "type":"structure", "members":{ }, "exception":true }, "AssociationFilter":{ "type":"structure", "required":[ "key", "value" ], "members":{ "key":{"shape":"AssociationFilterKey"}, "value":{"shape":"AssociationFilterValue"} } }, "AssociationFilterKey":{ "type":"string", "enum":[ "InstanceId", "Name" ] }, "AssociationFilterList":{ "type":"list", "member":{ "shape":"AssociationFilter", "locationName":"AssociationFilter" }, "min":1 }, "AssociationFilterValue":{ "type":"string", "min":1 }, "AssociationLimitExceeded":{ "type":"structure", "members":{ }, "exception":true }, "AssociationList":{ "type":"list", "member":{ "shape":"Association", "locationName":"Association" } }, "AssociationStatus":{ "type":"structure", "required":[ "Date", "Name", "Message" ], "members":{ "Date":{"shape":"DateTime"}, "Name":{"shape":"AssociationStatusName"}, "Message":{"shape":"StatusMessage"}, "AdditionalInfo":{"shape":"StatusAdditionalInfo"} } }, "AssociationStatusName":{ "type":"string", "enum":[ "Pending", "Success", "Failed" ] }, "BatchErrorMessage":{"type":"string"}, "Boolean":{"type":"boolean"}, "CancelCommandRequest":{ "type":"structure", "required":["CommandId"], "members":{ "CommandId":{"shape":"CommandId"}, "InstanceIds":{"shape":"InstanceIdList"} } }, "CancelCommandResult":{ "type":"structure", "members":{ } }, "Command":{ "type":"structure", "members":{ "CommandId":{"shape":"CommandId"}, "DocumentName":{"shape":"DocumentName"}, "Comment":{"shape":"Comment"}, "ExpiresAfter":{"shape":"DateTime"}, "Parameters":{"shape":"Parameters"}, "InstanceIds":{"shape":"InstanceIdList"}, "RequestedDateTime":{"shape":"DateTime"}, "Status":{"shape":"CommandStatus"}, "OutputS3BucketName":{"shape":"S3BucketName"}, "OutputS3KeyPrefix":{"shape":"S3KeyPrefix"}, "ServiceRole":{"shape":"ServiceRole"}, "NotificationConfig":{"shape":"NotificationConfig"} } }, "CommandFilter":{ "type":"structure", "required":[ "key", "value" ], "members":{ "key":{"shape":"CommandFilterKey"}, "value":{"shape":"CommandFilterValue"} } }, "CommandFilterKey":{ "type":"string", "enum":[ "InvokedAfter", "InvokedBefore", "Status" ] }, "CommandFilterList":{ "type":"list", "member":{"shape":"CommandFilter"}, "max":3, "min":1 }, "CommandFilterValue":{ "type":"string", "min":1 }, "CommandId":{ "type":"string", "max":36, "min":36 }, "CommandInvocation":{ "type":"structure", "members":{ "CommandId":{"shape":"CommandId"}, "InstanceId":{"shape":"InstanceId"}, "Comment":{"shape":"Comment"}, "DocumentName":{"shape":"DocumentName"}, "RequestedDateTime":{"shape":"DateTime"}, "Status":{"shape":"CommandInvocationStatus"}, "TraceOutput":{"shape":"InvocationTraceOutput"}, "CommandPlugins":{"shape":"CommandPluginList"}, "ServiceRole":{"shape":"ServiceRole"}, "NotificationConfig":{"shape":"NotificationConfig"} } }, "CommandInvocationList":{ "type":"list", "member":{"shape":"CommandInvocation"} }, "CommandInvocationStatus":{ "type":"string", "enum":[ "Pending", "InProgress", "Cancelling", "Success", "TimedOut", "Cancelled", "Failed" ] }, "CommandList":{ "type":"list", "member":{"shape":"Command"} }, "CommandMaxResults":{ "type":"integer", "max":50, "min":1 }, "CommandPlugin":{ "type":"structure", "members":{ "Name":{"shape":"CommandPluginName"}, "Status":{"shape":"CommandPluginStatus"}, "ResponseCode":{"shape":"ResponseCode"}, "ResponseStartDateTime":{"shape":"DateTime"}, "ResponseFinishDateTime":{"shape":"DateTime"}, "Output":{"shape":"CommandPluginOutput"}, "OutputS3BucketName":{"shape":"S3BucketName"}, "OutputS3KeyPrefix":{"shape":"S3KeyPrefix"} } }, "CommandPluginList":{ "type":"list", "member":{"shape":"CommandPlugin"} }, "CommandPluginName":{ "type":"string", "min":4 }, "CommandPluginOutput":{ "type":"string", "max":2500 }, "CommandPluginStatus":{ "type":"string", "enum":[ "Pending", "InProgress", "Success", "TimedOut", "Cancelled", "Failed" ] }, "CommandStatus":{ "type":"string", "enum":[ "Pending", "InProgress", "Cancelling", "Success", "TimedOut", "Cancelled", "Failed" ] }, "Comment":{ "type":"string", "max":100 }, "ComputerName":{ "type":"string", "max":255, "min":1 }, "CreateActivationRequest":{ "type":"structure", "required":["IamRole"], "members":{ "Description":{"shape":"ActivationDescription"}, "DefaultInstanceName":{"shape":"DefaultInstanceName"}, "IamRole":{"shape":"IamRole"}, "RegistrationLimit":{ "shape":"RegistrationLimit", "box":true }, "ExpirationDate":{"shape":"ExpirationDate"} } }, "CreateActivationResult":{ "type":"structure", "members":{ "ActivationId":{"shape":"ActivationId"}, "ActivationCode":{"shape":"ActivationCode"} } }, "CreateAssociationBatchRequest":{ "type":"structure", "required":["Entries"], "members":{ "Entries":{"shape":"CreateAssociationBatchRequestEntries"} } }, "CreateAssociationBatchRequestEntries":{ "type":"list", "member":{ "shape":"CreateAssociationBatchRequestEntry", "locationName":"entries" } }, "CreateAssociationBatchRequestEntry":{ "type":"structure", "members":{ "Name":{"shape":"DocumentName"}, "InstanceId":{"shape":"InstanceId"}, "Parameters":{"shape":"Parameters"} } }, "CreateAssociationBatchResult":{ "type":"structure", "members":{ "Successful":{"shape":"AssociationDescriptionList"}, "Failed":{"shape":"FailedCreateAssociationList"} } }, "CreateAssociationRequest":{ "type":"structure", "required":[ "Name", "InstanceId" ], "members":{ "Name":{"shape":"DocumentName"}, "InstanceId":{"shape":"InstanceId"}, "Parameters":{"shape":"Parameters"} } }, "CreateAssociationResult":{ "type":"structure", "members":{ "AssociationDescription":{"shape":"AssociationDescription"} } }, "CreateDocumentRequest":{ "type":"structure", "required":[ "Content", "Name" ], "members":{ "Content":{"shape":"DocumentContent"}, "Name":{"shape":"DocumentName"} } }, "CreateDocumentResult":{ "type":"structure", "members":{ "DocumentDescription":{"shape":"DocumentDescription"} } }, "CreatedDate":{"type":"timestamp"}, "DateTime":{"type":"timestamp"}, "DefaultInstanceName":{ "type":"string", "max":256, "min":0, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "DeleteActivationRequest":{ "type":"structure", "required":["ActivationId"], "members":{ "ActivationId":{"shape":"ActivationId"} } }, "DeleteActivationResult":{ "type":"structure", "members":{ } }, "DeleteAssociationRequest":{ "type":"structure", "required":[ "Name", "InstanceId" ], "members":{ "Name":{"shape":"DocumentName"}, "InstanceId":{"shape":"InstanceId"} } }, "DeleteAssociationResult":{ "type":"structure", "members":{ } }, "DeleteDocumentRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"DocumentName"} } }, "DeleteDocumentResult":{ "type":"structure", "members":{ } }, "DeregisterManagedInstanceRequest":{ "type":"structure", "required":["InstanceId"], "members":{ "InstanceId":{"shape":"ManagedInstanceId"} } }, "DeregisterManagedInstanceResult":{ "type":"structure", "members":{ } }, "DescribeActivationsFilter":{ "type":"structure", "members":{ "FilterKey":{"shape":"DescribeActivationsFilterKeys"}, "FilterValues":{"shape":"StringList"} } }, "DescribeActivationsFilterKeys":{ "type":"string", "enum":[ "ActivationIds", "DefaultInstanceName", "IamRole" ] }, "DescribeActivationsFilterList":{ "type":"list", "member":{"shape":"DescribeActivationsFilter"} }, "DescribeActivationsRequest":{ "type":"structure", "members":{ "Filters":{"shape":"DescribeActivationsFilterList"}, "MaxResults":{ "shape":"MaxResults", "box":true }, "NextToken":{"shape":"NextToken"} } }, "DescribeActivationsResult":{ "type":"structure", "members":{ "ActivationList":{"shape":"ActivationList"}, "NextToken":{"shape":"NextToken"} } }, "DescribeAssociationRequest":{ "type":"structure", "required":[ "Name", "InstanceId" ], "members":{ "Name":{"shape":"DocumentName"}, "InstanceId":{"shape":"InstanceId"} } }, "DescribeAssociationResult":{ "type":"structure", "members":{ "AssociationDescription":{"shape":"AssociationDescription"} } }, "DescribeDocumentPermissionRequest":{ "type":"structure", "required":[ "Name", "PermissionType" ], "members":{ "Name":{"shape":"DocumentName"}, "PermissionType":{"shape":"DocumentPermissionType"} } }, "DescribeDocumentPermissionResponse":{ "type":"structure", "members":{ "AccountIds":{"shape":"AccountIdList"} } }, "DescribeDocumentRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"DocumentARN"} } }, "DescribeDocumentResult":{ "type":"structure", "members":{ "Document":{"shape":"DocumentDescription"} } }, "DescribeInstanceInformationRequest":{ "type":"structure", "members":{ "InstanceInformationFilterList":{"shape":"InstanceInformationFilterList"}, "MaxResults":{ "shape":"MaxResultsEC2Compatible", "box":true }, "NextToken":{"shape":"NextToken"} } }, "DescribeInstanceInformationResult":{ "type":"structure", "members":{ "InstanceInformationList":{"shape":"InstanceInformationList"}, "NextToken":{"shape":"NextToken"} } }, "DescriptionInDocument":{"type":"string"}, "DocumentARN":{ "type":"string", "pattern":"^[a-zA-Z0-9_\\-.:/]{3,128}$" }, "DocumentAlreadyExists":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "DocumentContent":{ "type":"string", "min":1 }, "DocumentDescription":{ "type":"structure", "members":{ "Sha1":{"shape":"DocumentSha1"}, "Hash":{"shape":"DocumentHash"}, "HashType":{"shape":"DocumentHashType"}, "Name":{"shape":"DocumentARN"}, "Owner":{"shape":"DocumentOwner"}, "CreatedDate":{"shape":"DateTime"}, "Status":{"shape":"DocumentStatus"}, "Description":{"shape":"DescriptionInDocument"}, "Parameters":{"shape":"DocumentParameterList"}, "PlatformTypes":{"shape":"PlatformTypeList"} } }, "DocumentFilter":{ "type":"structure", "required":[ "key", "value" ], "members":{ "key":{"shape":"DocumentFilterKey"}, "value":{"shape":"DocumentFilterValue"} } }, "DocumentFilterKey":{ "type":"string", "enum":[ "Name", "Owner", "PlatformTypes" ] }, "DocumentFilterList":{ "type":"list", "member":{ "shape":"DocumentFilter", "locationName":"DocumentFilter" }, "min":1 }, "DocumentFilterValue":{ "type":"string", "min":1 }, "DocumentHash":{ "type":"string", "max":256 }, "DocumentHashType":{ "type":"string", "enum":[ "Sha256", "Sha1" ] }, "DocumentIdentifier":{ "type":"structure", "members":{ "Name":{"shape":"DocumentARN"}, "Owner":{"shape":"DocumentOwner"}, "PlatformTypes":{"shape":"PlatformTypeList"} } }, "DocumentIdentifierList":{ "type":"list", "member":{ "shape":"DocumentIdentifier", "locationName":"DocumentIdentifier" } }, "DocumentLimitExceeded":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "DocumentName":{ "type":"string", "pattern":"^[a-zA-Z0-9_\\-.]{3,128}$" }, "DocumentOwner":{"type":"string"}, "DocumentParameter":{ "type":"structure", "members":{ "Name":{"shape":"DocumentParameterName"}, "Type":{"shape":"DocumentParameterType"}, "Description":{"shape":"DocumentParameterDescrption"}, "DefaultValue":{"shape":"DocumentParameterDefaultValue"} } }, "DocumentParameterDefaultValue":{"type":"string"}, "DocumentParameterDescrption":{"type":"string"}, "DocumentParameterList":{ "type":"list", "member":{ "shape":"DocumentParameter", "locationName":"DocumentParameter" } }, "DocumentParameterName":{"type":"string"}, "DocumentParameterType":{ "type":"string", "enum":[ "String", "StringList" ] }, "DocumentPermissionLimit":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "DocumentPermissionType":{ "type":"string", "enum":["Share"] }, "DocumentSha1":{"type":"string"}, "DocumentStatus":{ "type":"string", "enum":[ "Creating", "Active", "Deleting" ] }, "DuplicateInstanceId":{ "type":"structure", "members":{ }, "exception":true }, "ExpirationDate":{"type":"timestamp"}, "FailedCreateAssociation":{ "type":"structure", "members":{ "Entry":{"shape":"CreateAssociationBatchRequestEntry"}, "Message":{"shape":"BatchErrorMessage"}, "Fault":{"shape":"Fault"} } }, "FailedCreateAssociationList":{ "type":"list", "member":{ "shape":"FailedCreateAssociation", "locationName":"FailedCreateAssociationEntry" } }, "Fault":{ "type":"string", "enum":[ "Client", "Server", "Unknown" ] }, "GetDocumentRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"DocumentARN"} } }, "GetDocumentResult":{ "type":"structure", "members":{ "Name":{"shape":"DocumentARN"}, "Content":{"shape":"DocumentContent"} } }, "IPAddress":{ "type":"string", "max":46, "min":1 }, "IamRole":{ "type":"string", "max":64 }, "InstanceId":{ "type":"string", "pattern":"(^i-(\\w{8}|\\w{17})$)|(^mi-\\w{17}$)" }, "InstanceIdList":{ "type":"list", "member":{"shape":"InstanceId"}, "max":50, "min":1 }, "InstanceInformation":{ "type":"structure", "members":{ "InstanceId":{"shape":"InstanceId"}, "PingStatus":{"shape":"PingStatus"}, "LastPingDateTime":{ "shape":"DateTime", "box":true }, "AgentVersion":{"shape":"Version"}, "IsLatestVersion":{ "shape":"Boolean", "box":true }, "PlatformType":{"shape":"PlatformType"}, "PlatformName":{"shape":"String"}, "PlatformVersion":{"shape":"String"}, "ActivationId":{"shape":"ActivationId"}, "IamRole":{"shape":"IamRole"}, "RegistrationDate":{ "shape":"DateTime", "box":true }, "ResourceType":{"shape":"ResourceType"}, "Name":{"shape":"String"}, "IPAddress":{"shape":"IPAddress"}, "ComputerName":{"shape":"ComputerName"} } }, "InstanceInformationFilter":{ "type":"structure", "required":[ "key", "valueSet" ], "members":{ "key":{"shape":"InstanceInformationFilterKey"}, "valueSet":{"shape":"InstanceInformationFilterValueSet"} } }, "InstanceInformationFilterKey":{ "type":"string", "enum":[ "InstanceIds", "AgentVersion", "PingStatus", "PlatformTypes", "ActivationIds", "IamRole", "ResourceType" ] }, "InstanceInformationFilterList":{ "type":"list", "member":{ "shape":"InstanceInformationFilter", "locationName":"InstanceInformationFilter" }, "min":1 }, "InstanceInformationFilterValue":{ "type":"string", "min":1 }, "InstanceInformationFilterValueSet":{ "type":"list", "member":{ "shape":"InstanceInformationFilterValue", "locationName":"InstanceInformationFilterValue" }, "max":100, "min":1 }, "InstanceInformationList":{ "type":"list", "member":{ "shape":"InstanceInformation", "locationName":"InstanceInformation" } }, "InternalServerError":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "InvalidActivation":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "InvalidActivationId":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "InvalidCommandId":{ "type":"structure", "members":{ }, "exception":true }, "InvalidDocument":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "InvalidDocumentContent":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "InvalidDocumentOperation":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "InvalidFilter":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "InvalidFilterKey":{ "type":"structure", "members":{ }, "exception":true }, "InvalidInstanceId":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "InvalidInstanceInformationFilterValue":{ "type":"structure", "members":{ "message":{"shape":"String"} }, "exception":true }, "InvalidNextToken":{ "type":"structure", "members":{ }, "exception":true }, "InvalidNotificationConfig":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "InvalidOutputFolder":{ "type":"structure", "members":{ }, "exception":true }, "InvalidParameters":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "InvalidPermissionType":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "InvalidResourceId":{ "type":"structure", "members":{ }, "exception":true }, "InvalidResourceType":{ "type":"structure", "members":{ }, "exception":true }, "InvalidRole":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "InvocationTraceOutput":{ "type":"string", "max":2500 }, "KeyList":{ "type":"list", "member":{"shape":"TagKey"} }, "ListAssociationsRequest":{ "type":"structure", "required":["AssociationFilterList"], "members":{ "AssociationFilterList":{"shape":"AssociationFilterList"}, "MaxResults":{ "shape":"MaxResults", "box":true }, "NextToken":{"shape":"NextToken"} } }, "ListAssociationsResult":{ "type":"structure", "members":{ "Associations":{"shape":"AssociationList"}, "NextToken":{"shape":"NextToken"} } }, "ListCommandInvocationsRequest":{ "type":"structure", "members":{ "CommandId":{"shape":"CommandId"}, "InstanceId":{"shape":"InstanceId"}, "MaxResults":{ "shape":"CommandMaxResults", "box":true }, "NextToken":{"shape":"NextToken"}, "Filters":{"shape":"CommandFilterList"}, "Details":{"shape":"Boolean"} } }, "ListCommandInvocationsResult":{ "type":"structure", "members":{ "CommandInvocations":{"shape":"CommandInvocationList"}, "NextToken":{"shape":"NextToken"} } }, "ListCommandsRequest":{ "type":"structure", "members":{ "CommandId":{"shape":"CommandId"}, "InstanceId":{"shape":"InstanceId"}, "MaxResults":{ "shape":"CommandMaxResults", "box":true }, "NextToken":{"shape":"NextToken"}, "Filters":{"shape":"CommandFilterList"} } }, "ListCommandsResult":{ "type":"structure", "members":{ "Commands":{"shape":"CommandList"}, "NextToken":{"shape":"NextToken"} } }, "ListDocumentsRequest":{ "type":"structure", "members":{ "DocumentFilterList":{"shape":"DocumentFilterList"}, "MaxResults":{ "shape":"MaxResults", "box":true }, "NextToken":{"shape":"NextToken"} } }, "ListDocumentsResult":{ "type":"structure", "members":{ "DocumentIdentifiers":{"shape":"DocumentIdentifierList"}, "NextToken":{"shape":"NextToken"} } }, "ListTagsForResourceRequest":{ "type":"structure", "required":[ "ResourceType", "ResourceId" ], "members":{ "ResourceType":{"shape":"ResourceTypeForTagging"}, "ResourceId":{"shape":"ResourceId"} } }, "ListTagsForResourceResult":{ "type":"structure", "members":{ "TagList":{"shape":"TagList"} } }, "ManagedInstanceId":{ "type":"string", "pattern":"^mi-[0-9a-f]{17}$" }, "MaxDocumentSizeExceeded":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "MaxResults":{ "type":"integer", "max":50, "min":1 }, "MaxResultsEC2Compatible":{ "type":"integer", "max":50, "min":5 }, "ModifyDocumentPermissionRequest":{ "type":"structure", "required":[ "Name", "PermissionType" ], "members":{ "Name":{"shape":"DocumentName"}, "PermissionType":{"shape":"DocumentPermissionType"}, "AccountIdsToAdd":{"shape":"AccountIdList"}, "AccountIdsToRemove":{"shape":"AccountIdList"} } }, "ModifyDocumentPermissionResponse":{ "type":"structure", "members":{ } }, "NextToken":{"type":"string"}, "NotificationArn":{"type":"string"}, "NotificationConfig":{ "type":"structure", "members":{ "NotificationArn":{"shape":"NotificationArn"}, "NotificationEvents":{"shape":"NotificationEventList"}, "NotificationType":{"shape":"NotificationType"} } }, "NotificationEvent":{ "type":"string", "enum":[ "All", "InProgress", "Success", "TimedOut", "Cancelled", "Failed" ] }, "NotificationEventList":{ "type":"list", "member":{"shape":"NotificationEvent"} }, "NotificationType":{ "type":"string", "enum":[ "Command", "Invocation" ] }, "ParameterName":{"type":"string"}, "ParameterValue":{"type":"string"}, "ParameterValueList":{ "type":"list", "member":{"shape":"ParameterValue"} }, "Parameters":{ "type":"map", "key":{"shape":"ParameterName"}, "value":{"shape":"ParameterValueList"} }, "PingStatus":{ "type":"string", "enum":[ "Online", "ConnectionLost", "Inactive" ] }, "PlatformType":{ "type":"string", "enum":[ "Windows", "Linux" ] }, "PlatformTypeList":{ "type":"list", "member":{ "shape":"PlatformType", "locationName":"PlatformType" } }, "RegistrationLimit":{ "type":"integer", "max":1000, "min":1 }, "RegistrationsCount":{ "type":"integer", "max":1000, "min":1 }, "RemoveTagsFromResourceRequest":{ "type":"structure", "required":[ "ResourceType", "ResourceId", "TagKeys" ], "members":{ "ResourceType":{"shape":"ResourceTypeForTagging"}, "ResourceId":{"shape":"ResourceId"}, "TagKeys":{"shape":"KeyList"} } }, "RemoveTagsFromResourceResult":{ "type":"structure", "members":{ } }, "ResourceId":{ "type":"string", "pattern":"^mi-[0-9a-f]{17}$" }, "ResourceType":{ "type":"string", "enum":[ "ManagedInstance", "Document", "EC2Instance" ] }, "ResourceTypeForTagging":{ "type":"string", "enum":["ManagedInstance"] }, "ResponseCode":{"type":"integer"}, "S3BucketName":{ "type":"string", "max":63, "min":3 }, "S3KeyPrefix":{ "type":"string", "max":500 }, "SendCommandRequest":{ "type":"structure", "required":[ "InstanceIds", "DocumentName" ], "members":{ "InstanceIds":{"shape":"InstanceIdList"}, "DocumentName":{"shape":"DocumentARN"}, "DocumentHash":{"shape":"DocumentHash"}, "DocumentHashType":{"shape":"DocumentHashType"}, "TimeoutSeconds":{ "shape":"TimeoutSeconds", "box":true }, "Comment":{"shape":"Comment"}, "Parameters":{"shape":"Parameters"}, "OutputS3BucketName":{"shape":"S3BucketName"}, "OutputS3KeyPrefix":{"shape":"S3KeyPrefix"}, "ServiceRoleArn":{"shape":"ServiceRole"}, "NotificationConfig":{"shape":"NotificationConfig"} } }, "SendCommandResult":{ "type":"structure", "members":{ "Command":{"shape":"Command"} } }, "ServiceRole":{"type":"string"}, "StatusAdditionalInfo":{ "type":"string", "max":1024 }, "StatusMessage":{ "type":"string", "max":1024 }, "StatusUnchanged":{ "type":"structure", "members":{ }, "exception":true }, "String":{"type":"string"}, "StringList":{ "type":"list", "member":{"shape":"String"} }, "Tag":{ "type":"structure", "required":[ "Key", "Value" ], "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{ "type":"string", "max":128, "min":1, "pattern":"^(?!^(?i)aws:)(?=^[\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*$).*$" }, "TagList":{ "type":"list", "member":{"shape":"Tag"} }, "TagValue":{ "type":"string", "max":256, "min":1, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "TimeoutSeconds":{ "type":"integer", "max":2592000, "min":30 }, "TooManyUpdates":{ "type":"structure", "members":{ }, "exception":true }, "UnsupportedPlatformType":{ "type":"structure", "members":{ "Message":{"shape":"String"} }, "exception":true }, "UpdateAssociationStatusRequest":{ "type":"structure", "required":[ "Name", "InstanceId", "AssociationStatus" ], "members":{ "Name":{"shape":"DocumentName"}, "InstanceId":{"shape":"InstanceId"}, "AssociationStatus":{"shape":"AssociationStatus"} } }, "UpdateAssociationStatusResult":{ "type":"structure", "members":{ "AssociationDescription":{"shape":"AssociationDescription"} } }, "UpdateManagedInstanceRoleRequest":{ "type":"structure", "required":[ "InstanceId", "IamRole" ], "members":{ "InstanceId":{"shape":"ManagedInstanceId"}, "IamRole":{"shape":"IamRole"} } }, "UpdateManagedInstanceRoleResult":{ "type":"structure", "members":{ } }, "Version":{ "type":"string", "pattern":"^[0-9]{1,6}(\\.[0-9]{1,6}){2,3}$" } } } aws-sdk-go-1.4.22/models/apis/ssm/2014-11-06/docs-2.json000066400000000000000000001722621300374646400216300ustar00rootroot00000000000000{ "version": "2.0", "service": "

        Amazon EC2 Simple Systems Manager (SSM) enables you to remotely manage the configuration of your Amazon EC2 instances, virtual machines (VMs), or servers in your on-premises environment or in an environment provided by other cloud providers using scripts, commands, or the Amazon EC2 console. SSM includes an on-demand solution called Amazon EC2 Run Command and a lightweight instance configuration solution called SSM Config.

        This references is intended to be used with the EC2 Run Command User Guide for Linux or Windows.

        You must register your on-premises servers and VMs through an activation process before you can configure them using Run Command. Registered servers and VMs are called managed instances. For more information, see Setting Up Run Command On Managed Instances (On-Premises Servers and VMs) on Linux or Setting Up Run Command On Managed Instances (On-Premises Servers and VMs) on Windows.

        Run Command

        Run Command provides an on-demand experience for executing commands. You can use pre-defined SSM documents to perform the actions listed later in this section, or you can create your own documents. With these documents, you can remotely configure your instances by sending commands using the Commands page in the Amazon EC2 console, AWS Tools for Windows PowerShell, the AWS CLI, or AWS SDKs.

        Run Command reports the status of the command execution for each instance targeted by a command. You can also audit the command execution to understand who executed commands, when, and what changes were made. By switching between different SSM documents, you can quickly configure your instances with different types of commands. To get started with Run Command, verify that your environment meets the prerequisites for remotely running commands on EC2 instances (Linux or Windows).

        SSM Config

        SSM Config is a lightweight instance configuration solution. SSM Config is currently only available for Windows instances. With SSM Config, you can specify a setup configuration for your instances. SSM Config is similar to EC2 User Data, which is another way of running one-time scripts or applying settings during instance launch. SSM Config is an extension of this capability. Using SSM documents, you can specify which actions the system should perform on your instances, including which applications to install, which AWS Directory Service directory to join, which Microsoft PowerShell modules to install, etc. If an instance is missing one or more of these configurations, the system makes those changes. By default, the system checks every five minutes to see if there is a new configuration to apply as defined in a new SSM document. If so, the system updates the instances accordingly. In this way, you can remotely maintain a consistent configuration baseline on your instances. SSM Config is available using the AWS CLI or the AWS Tools for Windows PowerShell. For more information, see Managing Windows Instance Configuration.

        SSM Config and Run Command include the following pre-defined documents.

        Linux

        • AWS-RunShellScript to run shell scripts

        • AWS-UpdateSSMAgent to update the Amazon SSM agent

        Windows

        • AWS-JoinDirectoryServiceDomain to join an AWS Directory

        • AWS-RunPowerShellScript to run PowerShell commands or scripts

        • AWS-UpdateEC2Config to update the EC2Config service

        • AWS-ConfigureWindowsUpdate to configure Windows Update settings

        • AWS-InstallApplication to install, repair, or uninstall software using an MSI package

        • AWS-InstallPowerShellModule to install PowerShell modules

        • AWS-ConfigureCloudWatch to configure Amazon CloudWatch Logs to monitor applications and systems

        • AWS-ListWindowsInventory to collect information about an EC2 instance running in Windows.

        • AWS-FindWindowsUpdates to scan an instance and determines which updates are missing.

        • AWS-InstallMissingWindowsUpdates to install missing updates on your EC2 instance.

        • AWS-InstallSpecificWindowsUpdates to install one or more specific updates.

        The commands or scripts specified in SSM documents run with administrative privilege on your instances because the Amazon SSM agent runs as root on Linux and the EC2Config service runs in the Local System account on Windows. If a user has permission to execute any of the pre-defined SSM documents (any document that begins with AWS-*) then that user also has administrator access to the instance. Delegate access to Run Command and SSM Config judiciously. This becomes extremely important if you create your own SSM documents. Amazon Web Services does not provide guidance about how to create secure SSM documents. You create SSM documents and delegate access to Run Command at your own risk. As a security best practice, we recommend that you assign access to \"AWS-*\" documents, especially the AWS-RunShellScript document on Linux and the AWS-RunPowerShellScript document on Windows, to trusted administrators only. You can create SSM documents for specific tasks and delegate access to non-administrators.

        For information about creating and sharing SSM documents, see the following topics in the SSM User Guide:

        ", "operations": { "AddTagsToResource": "

        Adds or overwrites one or more tags for the specified resource. Tags are metadata that you assign to your managed instances. Tags enable you to categorize your managed instances in different ways, for example, by purpose, owner, or environment. Each tag consists of a key and an optional value, both of which you define. For example, you could define a set of tags for your account's managed instances that helps you track each instance's owner and stack level. For example: Key=Owner and Value=DbAdmin, SysAdmin, or Dev. Or Key=Stack and Value=Production, Pre-Production, or Test. Each resource can have a maximum of 10 tags.

        We recommend that you devise a set of tag keys that meets your needs for each resource type. Using a consistent set of tag keys makes it easier for you to manage your resources. You can search and filter the resources based on the tags you add. Tags don't have any semantic meaning to Amazon EC2 and are interpreted strictly as a string of characters.

        For more information about tags, see Tagging Your Amazon EC2 Resources in the Amazon EC2 User Guide.

        ", "CancelCommand": "

        Attempts to cancel the command specified by the Command ID. There is no guarantee that the command will be terminated and the underlying process stopped.

        ", "CreateActivation": "

        Registers your on-premises server or virtual machine with Amazon EC2 so that you can manage these resources using Run Command. An on-premises server or virtual machine that has been registered with EC2 is called a managed instance. For more information about activations, see Setting Up Managed Instances (Linux) or Setting Up Managed Instances (Windows) in the Amazon EC2 User Guide.

        ", "CreateAssociation": "

        Associates the specified SSM document with the specified instance.

        When you associate an SSM document with an instance, the configuration agent on the instance (SSM agent for Linux and EC2Config service for Windows) processes the document and configures the instance as specified.

        If you associate a document with an instance that already has an associated document, the system throws the AssociationAlreadyExists exception.

        ", "CreateAssociationBatch": "

        Associates the specified SSM document with the specified instances.

        When you associate an SSM document with an instance, the configuration agent on the instance (SSM agent for Linux and EC2Config service for Windows) processes the document and configures the instance as specified.

        If you associate a document with an instance that already has an associated document, the system throws the AssociationAlreadyExists exception.

        ", "CreateDocument": "

        Creates an SSM document.

        After you create an SSM document, you can use CreateAssociation to associate it with one or more running instances.

        ", "DeleteActivation": "

        Deletes an activation. You are not required to delete an activation. If you delete an activation, you can no longer use it to register additional managed instances. Deleting an activation does not de-register managed instances. You must manually de-register managed instances.

        ", "DeleteAssociation": "

        Disassociates the specified SSM document from the specified instance.

        When you disassociate an SSM document from an instance, it does not change the configuration of the instance. To change the configuration state of an instance after you disassociate a document, you must create a new document with the desired configuration and associate it with the instance.

        ", "DeleteDocument": "

        Deletes the SSM document and all instance associations to the document.

        Before you delete the SSM document, we recommend that you use DeleteAssociation to disassociate all instances that are associated with the document.

        ", "DeregisterManagedInstance": "

        Removes the server or virtual machine from the list of registered servers. You can reregister the instance again at any time. If you don’t plan to use Run Command on the server, we suggest uninstalling the SSM agent first.

        ", "DescribeActivations": "

        Details about the activation, including: the date and time the activation was created, the expiration date, the IAM role assigned to the instances in the activation, and the number of instances activated by this registration.

        ", "DescribeAssociation": "

        Describes the associations for the specified SSM document or instance.

        ", "DescribeDocument": "

        Describes the specified SSM document.

        ", "DescribeDocumentPermission": "

        Describes the permissions for an SSM document. If you created the document, you are the owner. If a document is shared, it can either be shared privately (by specifying a user’s AWS account ID) or publicly (All).

        ", "DescribeInstanceInformation": "

        Describes one or more of your instances. You can use this to get information about instances like the operating system platform, the SSM agent version (Linux), status etc. If you specify one or more instance IDs, it returns information for those instances. If you do not specify instance IDs, it returns information for all your instances. If you specify an instance ID that is not valid or an instance that you do not own, you receive an error.

        ", "GetDocument": "

        Gets the contents of the specified SSM document.

        ", "ListAssociations": "

        Lists the associations for the specified SSM document or instance.

        ", "ListCommandInvocations": "

        An invocation is copy of a command sent to a specific instance. A command can apply to one or more instances. A command invocation applies to one instance. For example, if a user executes SendCommand against three instances, then a command invocation is created for each requested instance ID. ListCommandInvocations provide status about command execution.

        ", "ListCommands": "

        Lists the commands requested by users of the AWS account.

        ", "ListDocuments": "

        Describes one or more of your SSM documents.

        ", "ListTagsForResource": "

        Returns a list of the tags assigned to the specified resource.

        ", "ModifyDocumentPermission": "

        Share a document publicly or privately. If you share a document privately, you must specify the AWS user account IDs for those people who can use the document. If you share a document publicly, you must specify All as the account ID.

        ", "RemoveTagsFromResource": "

        Removes all tags from the specified resource.

        ", "SendCommand": "

        Executes commands on one or more remote instances.

        ", "UpdateAssociationStatus": "

        Updates the status of the SSM document associated with the specified instance.

        ", "UpdateManagedInstanceRole": "

        Assigns or changes an Amazon Identity and Access Management (IAM) role to the managed instance.

        " }, "shapes": { "AccountId": { "base": null, "refs": { "AccountIdList$member": null } }, "AccountIdList": { "base": null, "refs": { "DescribeDocumentPermissionResponse$AccountIds": "

        The account IDs that have permission to use this document. The ID can be either an AWS account or All.

        ", "ModifyDocumentPermissionRequest$AccountIdsToAdd": "

        The AWS user accounts that should have access to the document. The account IDs can either be a group of account IDs or All.

        ", "ModifyDocumentPermissionRequest$AccountIdsToRemove": "

        The AWS user accounts that should no longer have access to the document. The AWS user account can either be a group of account IDs or All. This action has a higher priority than AccountIdsToAdd. If you specify an account ID to add and the same ID to remove, the system removes access to the document.

        " } }, "Activation": { "base": "

        An activation registers one or more on-premises servers or virtual machines (VMs) with AWS so that you can configure those servers or VMs using Run Command. A server or VM that has been registered with AWS is called a managed instance.

        ", "refs": { "ActivationList$member": null } }, "ActivationCode": { "base": null, "refs": { "CreateActivationResult$ActivationCode": "

        The code the system generates when it processes the activation. The activation code functions like a password to validate the activation ID.

        " } }, "ActivationDescription": { "base": null, "refs": { "Activation$Description": "

        A user defined description of the activation.

        ", "CreateActivationRequest$Description": "

        A user-defined description of the resource that you want to register with Amazon EC2.

        " } }, "ActivationId": { "base": null, "refs": { "Activation$ActivationId": "

        The ID created by SSM when you submitted the activation.

        ", "CreateActivationResult$ActivationId": "

        The ID number generated by the system when it processed the activation. The activation ID functions like a user name.

        ", "DeleteActivationRequest$ActivationId": "

        The ID of the activation that you want to delete.

        ", "InstanceInformation$ActivationId": "

        The activation ID created by SSM when the server or VM was registered.

        " } }, "ActivationList": { "base": null, "refs": { "DescribeActivationsResult$ActivationList": "

        A list of activations for your AWS account.

        " } }, "AddTagsToResourceRequest": { "base": null, "refs": { } }, "AddTagsToResourceResult": { "base": null, "refs": { } }, "AssociatedInstances": { "base": "

        You must disassociate an SSM document from all instances before you can delete it.

        ", "refs": { } }, "Association": { "base": "

        Describes an association of an SSM document and an instance.

        ", "refs": { "AssociationList$member": null } }, "AssociationAlreadyExists": { "base": "

        The specified association already exists.

        ", "refs": { } }, "AssociationDescription": { "base": "

        Describes the parameters for a document.

        ", "refs": { "AssociationDescriptionList$member": null, "CreateAssociationResult$AssociationDescription": "

        Information about the association.

        ", "DescribeAssociationResult$AssociationDescription": "

        Information about the association.

        ", "UpdateAssociationStatusResult$AssociationDescription": "

        Information about the association.

        " } }, "AssociationDescriptionList": { "base": null, "refs": { "CreateAssociationBatchResult$Successful": "

        Information about the associations that succeeded.

        " } }, "AssociationDoesNotExist": { "base": "

        The specified association does not exist.

        ", "refs": { } }, "AssociationFilter": { "base": "

        Describes a filter.

        ", "refs": { "AssociationFilterList$member": null } }, "AssociationFilterKey": { "base": null, "refs": { "AssociationFilter$key": "

        The name of the filter.

        " } }, "AssociationFilterList": { "base": null, "refs": { "ListAssociationsRequest$AssociationFilterList": "

        One or more filters. Use a filter to return a more specific list of results.

        " } }, "AssociationFilterValue": { "base": null, "refs": { "AssociationFilter$value": "

        The filter value.

        " } }, "AssociationLimitExceeded": { "base": "

        You can have at most 2,000 active associations.

        ", "refs": { } }, "AssociationList": { "base": null, "refs": { "ListAssociationsResult$Associations": "

        The associations.

        " } }, "AssociationStatus": { "base": "

        Describes an association status.

        ", "refs": { "AssociationDescription$Status": "

        The association status.

        ", "UpdateAssociationStatusRequest$AssociationStatus": "

        The association status.

        " } }, "AssociationStatusName": { "base": null, "refs": { "AssociationStatus$Name": "

        The status.

        " } }, "BatchErrorMessage": { "base": null, "refs": { "FailedCreateAssociation$Message": "

        A description of the failure.

        " } }, "Boolean": { "base": null, "refs": { "Activation$Expired": "

        Whether or not the activation is expired.

        ", "InstanceInformation$IsLatestVersion": "

        Indicates whether latest version of the SSM agent is running on your instance.

        ", "ListCommandInvocationsRequest$Details": "

        (Optional) If set this returns the response of the command executions and any command output. By default this is set to False.

        " } }, "CancelCommandRequest": { "base": "

        ", "refs": { } }, "CancelCommandResult": { "base": "

        Whether or not the command was successfully canceled. There is no guarantee that a request can be canceled.

        ", "refs": { } }, "Command": { "base": "

        Describes a command request.

        ", "refs": { "CommandList$member": null, "SendCommandResult$Command": "

        The request as it was received by SSM. Also provides the command ID which can be used future references to this request.

        " } }, "CommandFilter": { "base": "

        Describes a command filter.

        ", "refs": { "CommandFilterList$member": null } }, "CommandFilterKey": { "base": null, "refs": { "CommandFilter$key": "

        The name of the filter. For example, requested date and time.

        " } }, "CommandFilterList": { "base": null, "refs": { "ListCommandInvocationsRequest$Filters": "

        (Optional) One or more filters. Use a filter to return a more specific list of results.

        ", "ListCommandsRequest$Filters": "

        (Optional) One or more filters. Use a filter to return a more specific list of results.

        " } }, "CommandFilterValue": { "base": null, "refs": { "CommandFilter$value": "

        The filter value. For example: June 30, 2015.

        " } }, "CommandId": { "base": null, "refs": { "CancelCommandRequest$CommandId": "

        The ID of the command you want to cancel.

        ", "Command$CommandId": "

        A unique identifier for this command.

        ", "CommandInvocation$CommandId": "

        The command against which this invocation was requested.

        ", "ListCommandInvocationsRequest$CommandId": "

        (Optional) The invocations for a specific command ID.

        ", "ListCommandsRequest$CommandId": "

        (Optional) If provided, lists only the specified command.

        " } }, "CommandInvocation": { "base": "

        An invocation is copy of a command sent to a specific instance. A command can apply to one or more instances. A command invocation applies to one instance. For example, if a user executes SendCommand against three instances, then a command invocation is created for each requested instance ID. A command invocation returns status and detail information about a command you executed.

        ", "refs": { "CommandInvocationList$member": null } }, "CommandInvocationList": { "base": null, "refs": { "ListCommandInvocationsResult$CommandInvocations": "

        (Optional) A list of all invocations.

        " } }, "CommandInvocationStatus": { "base": null, "refs": { "CommandInvocation$Status": "

        Whether or not the invocation succeeded, failed, or is pending.

        " } }, "CommandList": { "base": null, "refs": { "ListCommandsResult$Commands": "

        (Optional) The list of commands requested by the user.

        " } }, "CommandMaxResults": { "base": null, "refs": { "ListCommandInvocationsRequest$MaxResults": "

        (Optional) The maximum number of items to return for this call. The call also returns a token that you can specify in a subsequent call to get the next set of results.

        ", "ListCommandsRequest$MaxResults": "

        (Optional) The maximum number of items to return for this call. The call also returns a token that you can specify in a subsequent call to get the next set of results.

        " } }, "CommandPlugin": { "base": "

        Describes plugin details.

        ", "refs": { "CommandPluginList$member": null } }, "CommandPluginList": { "base": null, "refs": { "CommandInvocation$CommandPlugins": null } }, "CommandPluginName": { "base": null, "refs": { "CommandPlugin$Name": "

        The name of the plugin. Must be one of the following: aws:updateAgent, aws:domainjoin, aws:applications, aws:runPowerShellScript, aws:psmodule, aws:cloudWatch, aws:runShellScript, or aws:updateSSMAgent.

        " } }, "CommandPluginOutput": { "base": null, "refs": { "CommandPlugin$Output": "

        Output of the plugin execution.

        " } }, "CommandPluginStatus": { "base": null, "refs": { "CommandPlugin$Status": "

        The status of this plugin. You can execute a document with multiple plugins.

        " } }, "CommandStatus": { "base": null, "refs": { "Command$Status": "

        The status of the command.

        " } }, "Comment": { "base": null, "refs": { "Command$Comment": "

        User-specified information about the command, such as a brief description of what the command should do.

        ", "CommandInvocation$Comment": "

        User-specified information about the command, such as a brief description of what the command should do.

        ", "SendCommandRequest$Comment": "

        User-specified information about the command, such as a brief description of what the command should do.

        " } }, "ComputerName": { "base": null, "refs": { "InstanceInformation$ComputerName": "

        The fully qualified host name of the managed instance.

        " } }, "CreateActivationRequest": { "base": null, "refs": { } }, "CreateActivationResult": { "base": null, "refs": { } }, "CreateAssociationBatchRequest": { "base": null, "refs": { } }, "CreateAssociationBatchRequestEntries": { "base": null, "refs": { "CreateAssociationBatchRequest$Entries": "

        One or more associations.

        " } }, "CreateAssociationBatchRequestEntry": { "base": "

        Describes the association of an SSM document and an instance.

        ", "refs": { "CreateAssociationBatchRequestEntries$member": null, "FailedCreateAssociation$Entry": "

        The association.

        " } }, "CreateAssociationBatchResult": { "base": null, "refs": { } }, "CreateAssociationRequest": { "base": null, "refs": { } }, "CreateAssociationResult": { "base": null, "refs": { } }, "CreateDocumentRequest": { "base": null, "refs": { } }, "CreateDocumentResult": { "base": null, "refs": { } }, "CreatedDate": { "base": null, "refs": { "Activation$CreatedDate": "

        The date the activation was created.

        " } }, "DateTime": { "base": null, "refs": { "AssociationDescription$Date": "

        The date when the association was made.

        ", "AssociationStatus$Date": "

        The date when the status changed.

        ", "Command$ExpiresAfter": "

        If this time is reached and the command has not already started executing, it will not execute. Calculated based on the ExpiresAfter user input provided as part of the SendCommand API.

        ", "Command$RequestedDateTime": "

        The date and time the command was requested.

        ", "CommandInvocation$RequestedDateTime": "

        The time and date the request was sent to this instance.

        ", "CommandPlugin$ResponseStartDateTime": "

        The time the plugin started executing.

        ", "CommandPlugin$ResponseFinishDateTime": "

        The time the plugin stopped executing. Could stop prematurely if, for example, a cancel command was sent.

        ", "DocumentDescription$CreatedDate": "

        The date when the SSM document was created.

        ", "InstanceInformation$LastPingDateTime": "

        The date and time when agent last pinged SSM service.

        ", "InstanceInformation$RegistrationDate": "

        The date the server or VM was registered with AWS as a managed instance.

        " } }, "DefaultInstanceName": { "base": null, "refs": { "Activation$DefaultInstanceName": "

        A name for the managed instance when it is created.

        ", "CreateActivationRequest$DefaultInstanceName": "

        The name of the registered, managed instance as it will appear in the Amazon EC2 console or when you use the AWS command line tools to list EC2 resources.

        " } }, "DeleteActivationRequest": { "base": null, "refs": { } }, "DeleteActivationResult": { "base": null, "refs": { } }, "DeleteAssociationRequest": { "base": null, "refs": { } }, "DeleteAssociationResult": { "base": null, "refs": { } }, "DeleteDocumentRequest": { "base": null, "refs": { } }, "DeleteDocumentResult": { "base": null, "refs": { } }, "DeregisterManagedInstanceRequest": { "base": null, "refs": { } }, "DeregisterManagedInstanceResult": { "base": null, "refs": { } }, "DescribeActivationsFilter": { "base": "

        Filter for the DescribeActivation API.

        ", "refs": { "DescribeActivationsFilterList$member": null } }, "DescribeActivationsFilterKeys": { "base": null, "refs": { "DescribeActivationsFilter$FilterKey": "

        The name of the filter.

        " } }, "DescribeActivationsFilterList": { "base": null, "refs": { "DescribeActivationsRequest$Filters": "

        A filter to view information about your activations.

        " } }, "DescribeActivationsRequest": { "base": null, "refs": { } }, "DescribeActivationsResult": { "base": null, "refs": { } }, "DescribeAssociationRequest": { "base": null, "refs": { } }, "DescribeAssociationResult": { "base": null, "refs": { } }, "DescribeDocumentPermissionRequest": { "base": null, "refs": { } }, "DescribeDocumentPermissionResponse": { "base": null, "refs": { } }, "DescribeDocumentRequest": { "base": null, "refs": { } }, "DescribeDocumentResult": { "base": null, "refs": { } }, "DescribeInstanceInformationRequest": { "base": null, "refs": { } }, "DescribeInstanceInformationResult": { "base": null, "refs": { } }, "DescriptionInDocument": { "base": null, "refs": { "DocumentDescription$Description": "

        A description of the document.

        " } }, "DocumentARN": { "base": null, "refs": { "DescribeDocumentRequest$Name": "

        The name of the SSM document.

        ", "DocumentDescription$Name": "

        The name of the SSM document.

        ", "DocumentIdentifier$Name": "

        The name of the SSM document.

        ", "GetDocumentRequest$Name": "

        The name of the SSM document.

        ", "GetDocumentResult$Name": "

        The name of the SSM document.

        ", "SendCommandRequest$DocumentName": "

        Required. The name of the SSM document to execute. This can be an SSM public document or a custom document.

        " } }, "DocumentAlreadyExists": { "base": "

        The specified SSM document already exists.

        ", "refs": { } }, "DocumentContent": { "base": null, "refs": { "CreateDocumentRequest$Content": "

        A valid JSON string.

        ", "GetDocumentResult$Content": "

        The contents of the SSM document.

        " } }, "DocumentDescription": { "base": "

        Describes an SSM document.

        ", "refs": { "CreateDocumentResult$DocumentDescription": "

        Information about the SSM document.

        ", "DescribeDocumentResult$Document": "

        Information about the SSM document.

        " } }, "DocumentFilter": { "base": "

        Describes a filter.

        ", "refs": { "DocumentFilterList$member": null } }, "DocumentFilterKey": { "base": null, "refs": { "DocumentFilter$key": "

        The name of the filter.

        " } }, "DocumentFilterList": { "base": null, "refs": { "ListDocumentsRequest$DocumentFilterList": "

        One or more filters. Use a filter to return a more specific list of results.

        " } }, "DocumentFilterValue": { "base": null, "refs": { "DocumentFilter$value": "

        The value of the filter.

        " } }, "DocumentHash": { "base": null, "refs": { "DocumentDescription$Hash": "

        The Sha256 or Sha1 hash created by the system when the document was created.

        Sha1 hashes have been deprecated.

        ", "SendCommandRequest$DocumentHash": "

        The Sha256 or Sha1 hash created by the system when the document was created.

        Sha1 hashes have been deprecated.

        " } }, "DocumentHashType": { "base": null, "refs": { "DocumentDescription$HashType": "

        Sha256 or Sha1.

        Sha1 hashes have been deprecated.

        ", "SendCommandRequest$DocumentHashType": "

        Sha256 or Sha1.

        Sha1 hashes have been deprecated.

        " } }, "DocumentIdentifier": { "base": "

        Describes the name of an SSM document.

        ", "refs": { "DocumentIdentifierList$member": null } }, "DocumentIdentifierList": { "base": null, "refs": { "ListDocumentsResult$DocumentIdentifiers": "

        The names of the SSM documents.

        " } }, "DocumentLimitExceeded": { "base": "

        You can have at most 200 active SSM documents.

        ", "refs": { } }, "DocumentName": { "base": null, "refs": { "Association$Name": "

        The name of the SSM document.

        ", "AssociationDescription$Name": "

        The name of the SSM document.

        ", "Command$DocumentName": "

        The name of the SSM document requested for execution.

        ", "CommandInvocation$DocumentName": "

        The document name that was requested for execution.

        ", "CreateAssociationBatchRequestEntry$Name": "

        The name of the configuration document.

        ", "CreateAssociationRequest$Name": "

        The name of the SSM document.

        ", "CreateDocumentRequest$Name": "

        A name for the SSM document.

        ", "DeleteAssociationRequest$Name": "

        The name of the SSM document.

        ", "DeleteDocumentRequest$Name": "

        The name of the SSM document.

        ", "DescribeAssociationRequest$Name": "

        The name of the SSM document.

        ", "DescribeDocumentPermissionRequest$Name": "

        The name of the document for which you are the owner.

        ", "ModifyDocumentPermissionRequest$Name": "

        The name of the document that you want to share.

        ", "UpdateAssociationStatusRequest$Name": "

        The name of the SSM document.

        " } }, "DocumentOwner": { "base": null, "refs": { "DocumentDescription$Owner": "

        The AWS user account of the person who created the document.

        ", "DocumentIdentifier$Owner": "

        The AWS user account of the person who created the document.

        " } }, "DocumentParameter": { "base": "

        Parameters specified in the SSM document that execute on the server when the command is run.

        ", "refs": { "DocumentParameterList$member": null } }, "DocumentParameterDefaultValue": { "base": null, "refs": { "DocumentParameter$DefaultValue": "

        If specified, the default values for the parameters. Parameters without a default value are required. Parameters with a default value are optional.

        " } }, "DocumentParameterDescrption": { "base": null, "refs": { "DocumentParameter$Description": "

        A description of what the parameter does, how to use it, the default value, and whether or not the parameter is optional.

        " } }, "DocumentParameterList": { "base": null, "refs": { "DocumentDescription$Parameters": "

        A description of the parameters for a document.

        " } }, "DocumentParameterName": { "base": null, "refs": { "DocumentParameter$Name": "

        The name of the parameter.

        " } }, "DocumentParameterType": { "base": null, "refs": { "DocumentParameter$Type": "

        The type of parameter. The type can be either “String” or “StringList”.

        " } }, "DocumentPermissionLimit": { "base": "

        The document cannot be shared with more AWS user accounts. You can share a document with a maximum of 20 accounts. You can publicly share up to five documents. If you need to increase this limit, contact AWS Support.

        ", "refs": { } }, "DocumentPermissionType": { "base": null, "refs": { "DescribeDocumentPermissionRequest$PermissionType": "

        The permission type for the document. The permission type can be Share.

        ", "ModifyDocumentPermissionRequest$PermissionType": "

        The permission type for the document. The permission type can be Share.

        " } }, "DocumentSha1": { "base": null, "refs": { "DocumentDescription$Sha1": "

        The SHA1 hash of the document, which you can use for verification purposes.

        " } }, "DocumentStatus": { "base": null, "refs": { "DocumentDescription$Status": "

        The status of the SSM document.

        " } }, "DuplicateInstanceId": { "base": "

        You cannot specify an instance ID in more than one association.

        ", "refs": { } }, "ExpirationDate": { "base": null, "refs": { "Activation$ExpirationDate": "

        The date when this activation can no longer be used to register managed instances.

        ", "CreateActivationRequest$ExpirationDate": "

        The date by which this activation request should expire. The default value is 24 hours.

        " } }, "FailedCreateAssociation": { "base": "

        Describes a failed association.

        ", "refs": { "FailedCreateAssociationList$member": null } }, "FailedCreateAssociationList": { "base": null, "refs": { "CreateAssociationBatchResult$Failed": "

        Information about the associations that failed.

        " } }, "Fault": { "base": null, "refs": { "FailedCreateAssociation$Fault": "

        The source of the failure.

        " } }, "GetDocumentRequest": { "base": null, "refs": { } }, "GetDocumentResult": { "base": null, "refs": { } }, "IPAddress": { "base": null, "refs": { "InstanceInformation$IPAddress": "

        The IP address of the managed instance.

        " } }, "IamRole": { "base": null, "refs": { "Activation$IamRole": "

        The Amazon Identity and Access Management (IAM) role to assign to the managed instance.

        ", "CreateActivationRequest$IamRole": "

        The Amazon Identity and Access Management (IAM) role that you want to assign to the managed instance.

        ", "InstanceInformation$IamRole": "

        The Amazon Identity and Access Management (IAM) role assigned to EC2 instances or managed instances.

        ", "UpdateManagedInstanceRoleRequest$IamRole": "

        The IAM role you want to assign or change.

        " } }, "InstanceId": { "base": null, "refs": { "Association$InstanceId": "

        The ID of the instance.

        ", "AssociationDescription$InstanceId": "

        The ID of the instance.

        ", "CommandInvocation$InstanceId": "

        The instance ID in which this invocation was requested.

        ", "CreateAssociationBatchRequestEntry$InstanceId": "

        The ID of the instance.

        ", "CreateAssociationRequest$InstanceId": "

        The instance ID.

        ", "DeleteAssociationRequest$InstanceId": "

        The ID of the instance.

        ", "DescribeAssociationRequest$InstanceId": "

        The instance ID.

        ", "InstanceIdList$member": null, "InstanceInformation$InstanceId": "

        The instance ID.

        ", "ListCommandInvocationsRequest$InstanceId": "

        (Optional) The command execution details for a specific instance ID.

        ", "ListCommandsRequest$InstanceId": "

        (Optional) Lists commands issued against this instance ID.

        ", "UpdateAssociationStatusRequest$InstanceId": "

        The ID of the instance.

        " } }, "InstanceIdList": { "base": null, "refs": { "CancelCommandRequest$InstanceIds": "

        (Optional) A list of instance IDs on which you want to cancel the command. If not provided, the command is canceled on every instance on which it was requested.

        ", "Command$InstanceIds": "

        The instance IDs against which this command was requested.

        ", "SendCommandRequest$InstanceIds": "

        Required. The instance IDs where the command should execute. You can specify a maximum of 50 IDs.

        " } }, "InstanceInformation": { "base": "

        Describes a filter for a specific list of instances.

        ", "refs": { "InstanceInformationList$member": null } }, "InstanceInformationFilter": { "base": "

        Describes a filter for a specific list of instances.

        ", "refs": { "InstanceInformationFilterList$member": null } }, "InstanceInformationFilterKey": { "base": null, "refs": { "InstanceInformationFilter$key": "

        The name of the filter.

        " } }, "InstanceInformationFilterList": { "base": null, "refs": { "DescribeInstanceInformationRequest$InstanceInformationFilterList": "

        One or more filters. Use a filter to return a more specific list of instances.

        " } }, "InstanceInformationFilterValue": { "base": null, "refs": { "InstanceInformationFilterValueSet$member": null } }, "InstanceInformationFilterValueSet": { "base": null, "refs": { "InstanceInformationFilter$valueSet": "

        The filter values.

        " } }, "InstanceInformationList": { "base": null, "refs": { "DescribeInstanceInformationResult$InstanceInformationList": "

        The instance information list.

        " } }, "InternalServerError": { "base": "

        An error occurred on the server side.

        ", "refs": { } }, "InvalidActivation": { "base": "

        The activation is not valid. The activation might have been deleted, or the ActivationId and the ActivationCode do not match.

        ", "refs": { } }, "InvalidActivationId": { "base": "

        The activation ID is not valid. Verify the you entered the correct ActivationId or ActivationCode and try again.

        ", "refs": { } }, "InvalidCommandId": { "base": null, "refs": { } }, "InvalidDocument": { "base": "

        The specified document does not exist.

        ", "refs": { } }, "InvalidDocumentContent": { "base": "

        The content for the SSM document is not valid.

        ", "refs": { } }, "InvalidDocumentOperation": { "base": "

        You attempted to delete a document while it is still shared. You must stop sharing the document before you can delete it.

        ", "refs": { } }, "InvalidFilter": { "base": "

        The filter name is not valid. Verify the you entered the correct name and try again.

        ", "refs": { } }, "InvalidFilterKey": { "base": "

        The specified key is not valid.

        ", "refs": { } }, "InvalidInstanceId": { "base": "

        The instance is not in valid state. Valid states are: Running, Pending, Stopped, Stopping. Invalid states are: Shutting-down and Terminated.

        ", "refs": { } }, "InvalidInstanceInformationFilterValue": { "base": "

        The specified filter value is not valid.

        ", "refs": { } }, "InvalidNextToken": { "base": "

        The specified token is not valid.

        ", "refs": { } }, "InvalidNotificationConfig": { "base": "

        One or more configuration items is not valid. Verify that a valid Amazon Resource Name (ARN) was provided for an Amazon SNS topic.

        ", "refs": { } }, "InvalidOutputFolder": { "base": "

        The S3 bucket does not exist.

        ", "refs": { } }, "InvalidParameters": { "base": "

        You must specify values for all required parameters in the SSM document. You can only supply values to parameters defined in the SSM document.

        ", "refs": { } }, "InvalidPermissionType": { "base": "

        The permission type is not supported. Share is the only supported permission type.

        ", "refs": { } }, "InvalidResourceId": { "base": "

        The resource ID is not valid. Verify that you entered the correct ID and try again.

        ", "refs": { } }, "InvalidResourceType": { "base": "

        The resource type is not valid. If you are attempting to tag an instance, the instance must be a registered, managed instance.

        ", "refs": { } }, "InvalidRole": { "base": "

        The role name can't contain invalid characters. Also verify that you specified an IAM role for notifications that includes the required trust policy. For information about configuring the IAM role for SSM notifications, see Configuring SNS Notifications SSM in the Amazon Elastic Compute Cloud User Guide .

        ", "refs": { } }, "InvocationTraceOutput": { "base": null, "refs": { "CommandInvocation$TraceOutput": "

        Gets the trace output sent by the agent.

        " } }, "KeyList": { "base": null, "refs": { "RemoveTagsFromResourceRequest$TagKeys": "

        Tag keys that you want to remove from the specified resource.

        " } }, "ListAssociationsRequest": { "base": null, "refs": { } }, "ListAssociationsResult": { "base": null, "refs": { } }, "ListCommandInvocationsRequest": { "base": null, "refs": { } }, "ListCommandInvocationsResult": { "base": null, "refs": { } }, "ListCommandsRequest": { "base": null, "refs": { } }, "ListCommandsResult": { "base": null, "refs": { } }, "ListDocumentsRequest": { "base": null, "refs": { } }, "ListDocumentsResult": { "base": null, "refs": { } }, "ListTagsForResourceRequest": { "base": null, "refs": { } }, "ListTagsForResourceResult": { "base": null, "refs": { } }, "ManagedInstanceId": { "base": null, "refs": { "DeregisterManagedInstanceRequest$InstanceId": "

        The ID assigned to the managed instance when you registered it using the activation process.

        ", "UpdateManagedInstanceRoleRequest$InstanceId": "

        The ID of the managed instance where you want to update the role.

        " } }, "MaxDocumentSizeExceeded": { "base": "

        The size limit of an SSM document is 64 KB.

        ", "refs": { } }, "MaxResults": { "base": null, "refs": { "DescribeActivationsRequest$MaxResults": "

        The maximum number of items to return for this call. The call also returns a token that you can specify in a subsequent call to get the next set of results.

        ", "ListAssociationsRequest$MaxResults": "

        The maximum number of items to return for this call. The call also returns a token that you can specify in a subsequent call to get the next set of results.

        ", "ListDocumentsRequest$MaxResults": "

        The maximum number of items to return for this call. The call also returns a token that you can specify in a subsequent call to get the next set of results.

        " } }, "MaxResultsEC2Compatible": { "base": null, "refs": { "DescribeInstanceInformationRequest$MaxResults": "

        The maximum number of items to return for this call. The call also returns a token that you can specify in a subsequent call to get the next set of results.

        " } }, "ModifyDocumentPermissionRequest": { "base": null, "refs": { } }, "ModifyDocumentPermissionResponse": { "base": null, "refs": { } }, "NextToken": { "base": null, "refs": { "DescribeActivationsRequest$NextToken": "

        A token to start the list. Use this token to get the next set of results.

        ", "DescribeActivationsResult$NextToken": "

        The token for the next set of items to return. Use this token to get the next set of results.

        ", "DescribeInstanceInformationRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a previous call.)

        ", "DescribeInstanceInformationResult$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "ListAssociationsRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a previous call.)

        ", "ListAssociationsResult$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        ", "ListCommandInvocationsRequest$NextToken": "

        (Optional) The token for the next set of items to return. (You received this token from a previous call.)

        ", "ListCommandInvocationsResult$NextToken": "

        (Optional) The token for the next set of items to return. (You received this token from a previous call.)

        ", "ListCommandsRequest$NextToken": "

        (Optional) The token for the next set of items to return. (You received this token from a previous call.)

        ", "ListCommandsResult$NextToken": "

        (Optional) The token for the next set of items to return. (You received this token from a previous call.)

        ", "ListDocumentsRequest$NextToken": "

        The token for the next set of items to return. (You received this token from a previous call.)

        ", "ListDocumentsResult$NextToken": "

        The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

        " } }, "NotificationArn": { "base": null, "refs": { "NotificationConfig$NotificationArn": "

        An Amazon Resource Name (ARN) for a Simple Notification Service (SNS) topic. SSM pushes notifications about command status changes to this topic.

        " } }, "NotificationConfig": { "base": "

        Configurations for sending notifications.

        ", "refs": { "Command$NotificationConfig": "

        Configurations for sending notifications about command status changes.

        ", "CommandInvocation$NotificationConfig": "

        Configurations for sending notifications about command status changes on a per instance basis.

        ", "SendCommandRequest$NotificationConfig": "

        Configurations for sending notifications.

        " } }, "NotificationEvent": { "base": null, "refs": { "NotificationEventList$member": null } }, "NotificationEventList": { "base": null, "refs": { "NotificationConfig$NotificationEvents": "

        The different events for which you can receive notifications. These events include the following: All (events), InProgress, Success, TimedOut, Cancelled, Failed. To learn more about these events, see Monitoring Commands in the Amazon Elastic Compute Cloud User Guide .

        " } }, "NotificationType": { "base": null, "refs": { "NotificationConfig$NotificationType": "

        Command: Receive notification when the status of a command changes. Invocation: For commands sent to multiple instances, receive notification on a per-instance basis when the status of a command changes.

        " } }, "ParameterName": { "base": null, "refs": { "Parameters$key": null } }, "ParameterValue": { "base": null, "refs": { "ParameterValueList$member": null } }, "ParameterValueList": { "base": null, "refs": { "Parameters$value": null } }, "Parameters": { "base": null, "refs": { "AssociationDescription$Parameters": "

        A description of the parameters for a document.

        ", "Command$Parameters": "

        The parameter values to be inserted in the SSM document when executing the command.

        ", "CreateAssociationBatchRequestEntry$Parameters": "

        A description of the parameters for a document.

        ", "CreateAssociationRequest$Parameters": "

        The parameters for the documents runtime configuration.

        ", "SendCommandRequest$Parameters": "

        The required and optional parameters specified in the SSM document being executed.

        " } }, "PingStatus": { "base": null, "refs": { "InstanceInformation$PingStatus": "

        Connection status of the SSM agent.

        " } }, "PlatformType": { "base": null, "refs": { "InstanceInformation$PlatformType": "

        The operating system platform type.

        ", "PlatformTypeList$member": null } }, "PlatformTypeList": { "base": null, "refs": { "DocumentDescription$PlatformTypes": "

        The list of OS platforms compatible with this SSM document.

        ", "DocumentIdentifier$PlatformTypes": "

        The operating system platform.

        " } }, "RegistrationLimit": { "base": null, "refs": { "Activation$RegistrationLimit": "

        The maximum number of managed instances that can be registered using this activation.

        ", "CreateActivationRequest$RegistrationLimit": "

        Specify the maximum number of managed instances you want to register. The default value is 1 instance.

        " } }, "RegistrationsCount": { "base": null, "refs": { "Activation$RegistrationsCount": "

        The number of managed instances already registered with this activation.

        " } }, "RemoveTagsFromResourceRequest": { "base": null, "refs": { } }, "RemoveTagsFromResourceResult": { "base": null, "refs": { } }, "ResourceId": { "base": null, "refs": { "AddTagsToResourceRequest$ResourceId": "

        The resource ID you want to tag.

        ", "ListTagsForResourceRequest$ResourceId": "

        The resource ID for which you want to see a list of tags.

        ", "RemoveTagsFromResourceRequest$ResourceId": "

        The resource ID for which you want to remove tags.

        " } }, "ResourceType": { "base": null, "refs": { "InstanceInformation$ResourceType": "

        The type of instance. Instances are either EC2 instances or managed instances.

        " } }, "ResourceTypeForTagging": { "base": null, "refs": { "AddTagsToResourceRequest$ResourceType": "

        Specifies the type of resource you are tagging.

        ", "ListTagsForResourceRequest$ResourceType": "

        Returns a list of tags for a specific resource type.

        ", "RemoveTagsFromResourceRequest$ResourceType": "

        The type of resource of which you want to remove a tag.

        " } }, "ResponseCode": { "base": null, "refs": { "CommandPlugin$ResponseCode": "

        A numeric response code generated after executing the plugin.

        " } }, "S3BucketName": { "base": null, "refs": { "Command$OutputS3BucketName": "

        The S3 bucket where the responses to the command executions should be stored. This was requested when issuing the command.

        ", "CommandPlugin$OutputS3BucketName": "

        The S3 bucket where the responses to the command executions should be stored. This was requested when issuing the command.

        ", "SendCommandRequest$OutputS3BucketName": "

        The name of the S3 bucket where command execution responses should be stored.

        " } }, "S3KeyPrefix": { "base": null, "refs": { "Command$OutputS3KeyPrefix": "

        The S3 directory path inside the bucket where the responses to the command executions should be stored. This was requested when issuing the command.

        ", "CommandPlugin$OutputS3KeyPrefix": "

        The S3 directory path inside the bucket where the responses to the command executions should be stored. This was requested when issuing the command.

        ", "SendCommandRequest$OutputS3KeyPrefix": "

        The directory structure within the S3 bucket where the responses should be stored.

        " } }, "SendCommandRequest": { "base": null, "refs": { } }, "SendCommandResult": { "base": null, "refs": { } }, "ServiceRole": { "base": null, "refs": { "Command$ServiceRole": "

        The IAM service role that SSM uses to act on your behalf when sending notifications about command status changes.

        ", "CommandInvocation$ServiceRole": "

        The IAM service role that SSM uses to act on your behalf when sending notifications about command status changes on a per instance basis.

        ", "SendCommandRequest$ServiceRoleArn": "

        The IAM role that SSM uses to send notifications.

        " } }, "StatusAdditionalInfo": { "base": null, "refs": { "AssociationStatus$AdditionalInfo": "

        A user-defined string.

        " } }, "StatusMessage": { "base": null, "refs": { "AssociationStatus$Message": "

        The reason for the status.

        " } }, "StatusUnchanged": { "base": "

        The updated status is the same as the current status.

        ", "refs": { } }, "String": { "base": null, "refs": { "DocumentAlreadyExists$Message": null, "DocumentLimitExceeded$Message": null, "DocumentPermissionLimit$Message": null, "InstanceInformation$PlatformName": "

        The name of the operating system platform running on your instance.

        ", "InstanceInformation$PlatformVersion": "

        The version of the OS platform running on your instance.

        ", "InstanceInformation$Name": "

        The name of the managed instance.

        ", "InternalServerError$Message": null, "InvalidActivation$Message": null, "InvalidActivationId$Message": null, "InvalidDocument$Message": "

        The SSM document does not exist or the document is not available to the user. This exception can be issued by CreateAssociation, CreateAssociationBatch, DeleteAssociation, DeleteDocument, DescribeAssociation, DescribeDocument, GetDocument, SendCommand, or UpdateAssociationStatus.

        ", "InvalidDocumentContent$Message": "

        A description of the validation error.

        ", "InvalidDocumentOperation$Message": null, "InvalidFilter$Message": null, "InvalidInstanceId$Message": null, "InvalidInstanceInformationFilterValue$message": null, "InvalidNotificationConfig$Message": null, "InvalidParameters$Message": null, "InvalidPermissionType$Message": null, "InvalidRole$Message": null, "MaxDocumentSizeExceeded$Message": null, "StringList$member": null, "UnsupportedPlatformType$Message": null } }, "StringList": { "base": null, "refs": { "DescribeActivationsFilter$FilterValues": "

        The filter values.

        " } }, "Tag": { "base": "

        Metadata that you assign to your managed instances. Tags enable you to categorize your managed instances in different ways, for example, by purpose, owner, or environment.

        ", "refs": { "TagList$member": null } }, "TagKey": { "base": null, "refs": { "KeyList$member": null, "Tag$Key": "

        The name of the tag.

        " } }, "TagList": { "base": null, "refs": { "AddTagsToResourceRequest$Tags": "

        One or more tags. The value parameter is required, but if you don't want the tag to have a value, specify the parameter with no value, and we set the value to an empty string.

        ", "ListTagsForResourceResult$TagList": "

        A list of tags.

        " } }, "TagValue": { "base": null, "refs": { "Tag$Value": "

        The value of the tag.

        " } }, "TimeoutSeconds": { "base": null, "refs": { "SendCommandRequest$TimeoutSeconds": "

        If this time is reached and the command has not already started executing, it will not execute.

        " } }, "TooManyUpdates": { "base": "

        There are concurrent updates for a resource that supports one update at a time.

        ", "refs": { } }, "UnsupportedPlatformType": { "base": "

        The document does not support the platform type of the given instance ID(s). For example, you sent an SSM document for a Windows instance to a Linux instance.

        ", "refs": { } }, "UpdateAssociationStatusRequest": { "base": null, "refs": { } }, "UpdateAssociationStatusResult": { "base": null, "refs": { } }, "UpdateManagedInstanceRoleRequest": { "base": null, "refs": { } }, "UpdateManagedInstanceRoleResult": { "base": null, "refs": { } }, "Version": { "base": null, "refs": { "InstanceInformation$AgentVersion": "

        The version of the SSM agent running on your Linux instance.

        " } } } } aws-sdk-go-1.4.22/models/apis/ssm/2014-11-06/examples-1.json000066400000000000000000000000541300374646400225020ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/ssm/2014-11-06/paginators-1.json000066400000000000000000000020701300374646400230330ustar00rootroot00000000000000{ "pagination": { "DescribeInstanceInformation": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "InstanceInformationList" }, "ListAssociations": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "Associations" }, "ListCommandInvocations": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "CommandInvocations" }, "ListCommands": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "Commands" }, "ListDocuments": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "DocumentIdentifiers" }, "DescribeActivations": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "ActivationList" } } } aws-sdk-go-1.4.22/models/apis/storagegateway/000077500000000000000000000000001300374646400210305ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/storagegateway/2013-06-30/000077500000000000000000000000001300374646400220605ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/storagegateway/2013-06-30/api-2.json000066400000000000000000001644431300374646400236770ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2013-06-30", "endpointPrefix":"storagegateway", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"AWS Storage Gateway", "signatureVersion":"v4", "targetPrefix":"StorageGateway_20130630" }, "operations":{ "ActivateGateway":{ "name":"ActivateGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ActivateGatewayInput"}, "output":{"shape":"ActivateGatewayOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "AddCache":{ "name":"AddCache", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddCacheInput"}, "output":{"shape":"AddCacheOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "AddTagsToResource":{ "name":"AddTagsToResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddTagsToResourceInput"}, "output":{"shape":"AddTagsToResourceOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "AddUploadBuffer":{ "name":"AddUploadBuffer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddUploadBufferInput"}, "output":{"shape":"AddUploadBufferOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "AddWorkingStorage":{ "name":"AddWorkingStorage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddWorkingStorageInput"}, "output":{"shape":"AddWorkingStorageOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "CancelArchival":{ "name":"CancelArchival", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelArchivalInput"}, "output":{"shape":"CancelArchivalOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "CancelRetrieval":{ "name":"CancelRetrieval", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CancelRetrievalInput"}, "output":{"shape":"CancelRetrievalOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "CreateCachediSCSIVolume":{ "name":"CreateCachediSCSIVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateCachediSCSIVolumeInput"}, "output":{"shape":"CreateCachediSCSIVolumeOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "CreateSnapshot":{ "name":"CreateSnapshot", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSnapshotInput"}, "output":{"shape":"CreateSnapshotOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "CreateSnapshotFromVolumeRecoveryPoint":{ "name":"CreateSnapshotFromVolumeRecoveryPoint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSnapshotFromVolumeRecoveryPointInput"}, "output":{"shape":"CreateSnapshotFromVolumeRecoveryPointOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "CreateStorediSCSIVolume":{ "name":"CreateStorediSCSIVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateStorediSCSIVolumeInput"}, "output":{"shape":"CreateStorediSCSIVolumeOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "CreateTapeWithBarcode":{ "name":"CreateTapeWithBarcode", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateTapeWithBarcodeInput"}, "output":{"shape":"CreateTapeWithBarcodeOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "CreateTapes":{ "name":"CreateTapes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateTapesInput"}, "output":{"shape":"CreateTapesOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DeleteBandwidthRateLimit":{ "name":"DeleteBandwidthRateLimit", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteBandwidthRateLimitInput"}, "output":{"shape":"DeleteBandwidthRateLimitOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DeleteChapCredentials":{ "name":"DeleteChapCredentials", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteChapCredentialsInput"}, "output":{"shape":"DeleteChapCredentialsOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DeleteGateway":{ "name":"DeleteGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteGatewayInput"}, "output":{"shape":"DeleteGatewayOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DeleteSnapshotSchedule":{ "name":"DeleteSnapshotSchedule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSnapshotScheduleInput"}, "output":{"shape":"DeleteSnapshotScheduleOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DeleteTape":{ "name":"DeleteTape", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteTapeInput"}, "output":{"shape":"DeleteTapeOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DeleteTapeArchive":{ "name":"DeleteTapeArchive", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteTapeArchiveInput"}, "output":{"shape":"DeleteTapeArchiveOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DeleteVolume":{ "name":"DeleteVolume", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteVolumeInput"}, "output":{"shape":"DeleteVolumeOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DescribeBandwidthRateLimit":{ "name":"DescribeBandwidthRateLimit", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeBandwidthRateLimitInput"}, "output":{"shape":"DescribeBandwidthRateLimitOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DescribeCache":{ "name":"DescribeCache", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeCacheInput"}, "output":{"shape":"DescribeCacheOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DescribeCachediSCSIVolumes":{ "name":"DescribeCachediSCSIVolumes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeCachediSCSIVolumesInput"}, "output":{"shape":"DescribeCachediSCSIVolumesOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DescribeChapCredentials":{ "name":"DescribeChapCredentials", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeChapCredentialsInput"}, "output":{"shape":"DescribeChapCredentialsOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DescribeGatewayInformation":{ "name":"DescribeGatewayInformation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeGatewayInformationInput"}, "output":{"shape":"DescribeGatewayInformationOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DescribeMaintenanceStartTime":{ "name":"DescribeMaintenanceStartTime", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeMaintenanceStartTimeInput"}, "output":{"shape":"DescribeMaintenanceStartTimeOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DescribeSnapshotSchedule":{ "name":"DescribeSnapshotSchedule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSnapshotScheduleInput"}, "output":{"shape":"DescribeSnapshotScheduleOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DescribeStorediSCSIVolumes":{ "name":"DescribeStorediSCSIVolumes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeStorediSCSIVolumesInput"}, "output":{"shape":"DescribeStorediSCSIVolumesOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DescribeTapeArchives":{ "name":"DescribeTapeArchives", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTapeArchivesInput"}, "output":{"shape":"DescribeTapeArchivesOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DescribeTapeRecoveryPoints":{ "name":"DescribeTapeRecoveryPoints", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTapeRecoveryPointsInput"}, "output":{"shape":"DescribeTapeRecoveryPointsOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DescribeTapes":{ "name":"DescribeTapes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTapesInput"}, "output":{"shape":"DescribeTapesOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DescribeUploadBuffer":{ "name":"DescribeUploadBuffer", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeUploadBufferInput"}, "output":{"shape":"DescribeUploadBufferOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DescribeVTLDevices":{ "name":"DescribeVTLDevices", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeVTLDevicesInput"}, "output":{"shape":"DescribeVTLDevicesOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DescribeWorkingStorage":{ "name":"DescribeWorkingStorage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeWorkingStorageInput"}, "output":{"shape":"DescribeWorkingStorageOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "DisableGateway":{ "name":"DisableGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DisableGatewayInput"}, "output":{"shape":"DisableGatewayOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "ListGateways":{ "name":"ListGateways", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListGatewaysInput"}, "output":{"shape":"ListGatewaysOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "ListLocalDisks":{ "name":"ListLocalDisks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListLocalDisksInput"}, "output":{"shape":"ListLocalDisksOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "ListTagsForResource":{ "name":"ListTagsForResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTagsForResourceInput"}, "output":{"shape":"ListTagsForResourceOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "ListTapes":{ "name":"ListTapes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListTapesInput"}, "output":{"shape":"ListTapesOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "ListVolumeInitiators":{ "name":"ListVolumeInitiators", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListVolumeInitiatorsInput"}, "output":{"shape":"ListVolumeInitiatorsOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "ListVolumeRecoveryPoints":{ "name":"ListVolumeRecoveryPoints", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListVolumeRecoveryPointsInput"}, "output":{"shape":"ListVolumeRecoveryPointsOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "ListVolumes":{ "name":"ListVolumes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListVolumesInput"}, "output":{"shape":"ListVolumesOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "RemoveTagsFromResource":{ "name":"RemoveTagsFromResource", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RemoveTagsFromResourceInput"}, "output":{"shape":"RemoveTagsFromResourceOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "ResetCache":{ "name":"ResetCache", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResetCacheInput"}, "output":{"shape":"ResetCacheOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "RetrieveTapeArchive":{ "name":"RetrieveTapeArchive", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RetrieveTapeArchiveInput"}, "output":{"shape":"RetrieveTapeArchiveOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "RetrieveTapeRecoveryPoint":{ "name":"RetrieveTapeRecoveryPoint", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RetrieveTapeRecoveryPointInput"}, "output":{"shape":"RetrieveTapeRecoveryPointOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "SetLocalConsolePassword":{ "name":"SetLocalConsolePassword", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SetLocalConsolePasswordInput"}, "output":{"shape":"SetLocalConsolePasswordOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "ShutdownGateway":{ "name":"ShutdownGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ShutdownGatewayInput"}, "output":{"shape":"ShutdownGatewayOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "StartGateway":{ "name":"StartGateway", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartGatewayInput"}, "output":{"shape":"StartGatewayOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "UpdateBandwidthRateLimit":{ "name":"UpdateBandwidthRateLimit", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateBandwidthRateLimitInput"}, "output":{"shape":"UpdateBandwidthRateLimitOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "UpdateChapCredentials":{ "name":"UpdateChapCredentials", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateChapCredentialsInput"}, "output":{"shape":"UpdateChapCredentialsOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "UpdateGatewayInformation":{ "name":"UpdateGatewayInformation", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateGatewayInformationInput"}, "output":{"shape":"UpdateGatewayInformationOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "UpdateGatewaySoftwareNow":{ "name":"UpdateGatewaySoftwareNow", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateGatewaySoftwareNowInput"}, "output":{"shape":"UpdateGatewaySoftwareNowOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "UpdateMaintenanceStartTime":{ "name":"UpdateMaintenanceStartTime", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateMaintenanceStartTimeInput"}, "output":{"shape":"UpdateMaintenanceStartTimeOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "UpdateSnapshotSchedule":{ "name":"UpdateSnapshotSchedule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateSnapshotScheduleInput"}, "output":{"shape":"UpdateSnapshotScheduleOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] }, "UpdateVTLDeviceType":{ "name":"UpdateVTLDeviceType", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateVTLDeviceTypeInput"}, "output":{"shape":"UpdateVTLDeviceTypeOutput"}, "errors":[ {"shape":"InvalidGatewayRequestException"}, {"shape":"InternalServerError"} ] } }, "shapes":{ "ActivateGatewayInput":{ "type":"structure", "required":[ "ActivationKey", "GatewayName", "GatewayTimezone", "GatewayRegion" ], "members":{ "ActivationKey":{"shape":"ActivationKey"}, "GatewayName":{"shape":"GatewayName"}, "GatewayTimezone":{"shape":"GatewayTimezone"}, "GatewayRegion":{"shape":"RegionId"}, "GatewayType":{"shape":"GatewayType"}, "TapeDriveType":{"shape":"TapeDriveType"}, "MediumChangerType":{"shape":"MediumChangerType"} } }, "ActivateGatewayOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "ActivationKey":{ "type":"string", "max":50, "min":1 }, "AddCacheInput":{ "type":"structure", "required":[ "GatewayARN", "DiskIds" ], "members":{ "GatewayARN":{"shape":"GatewayARN"}, "DiskIds":{"shape":"DiskIds"} } }, "AddCacheOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "AddTagsToResourceInput":{ "type":"structure", "required":[ "ResourceARN", "Tags" ], "members":{ "ResourceARN":{"shape":"ResourceARN"}, "Tags":{"shape":"Tags"} } }, "AddTagsToResourceOutput":{ "type":"structure", "members":{ "ResourceARN":{"shape":"ResourceARN"} } }, "AddUploadBufferInput":{ "type":"structure", "required":[ "GatewayARN", "DiskIds" ], "members":{ "GatewayARN":{"shape":"GatewayARN"}, "DiskIds":{"shape":"DiskIds"} } }, "AddUploadBufferOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "AddWorkingStorageInput":{ "type":"structure", "required":[ "GatewayARN", "DiskIds" ], "members":{ "GatewayARN":{"shape":"GatewayARN"}, "DiskIds":{"shape":"DiskIds"} } }, "AddWorkingStorageOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "BandwidthDownloadRateLimit":{ "type":"long", "min":102400 }, "BandwidthType":{ "type":"string", "max":25, "min":3 }, "BandwidthUploadRateLimit":{ "type":"long", "min":51200 }, "CachediSCSIVolume":{ "type":"structure", "members":{ "VolumeARN":{"shape":"VolumeARN"}, "VolumeId":{"shape":"VolumeId"}, "VolumeType":{"shape":"VolumeType"}, "VolumeStatus":{"shape":"VolumeStatus"}, "VolumeSizeInBytes":{"shape":"long"}, "VolumeProgress":{"shape":"DoubleObject"}, "SourceSnapshotId":{"shape":"SnapshotId"}, "VolumeiSCSIAttributes":{"shape":"VolumeiSCSIAttributes"} } }, "CachediSCSIVolumes":{ "type":"list", "member":{"shape":"CachediSCSIVolume"} }, "CancelArchivalInput":{ "type":"structure", "required":[ "GatewayARN", "TapeARN" ], "members":{ "GatewayARN":{"shape":"GatewayARN"}, "TapeARN":{"shape":"TapeARN"} } }, "CancelArchivalOutput":{ "type":"structure", "members":{ "TapeARN":{"shape":"TapeARN"} } }, "CancelRetrievalInput":{ "type":"structure", "required":[ "GatewayARN", "TapeARN" ], "members":{ "GatewayARN":{"shape":"GatewayARN"}, "TapeARN":{"shape":"TapeARN"} } }, "CancelRetrievalOutput":{ "type":"structure", "members":{ "TapeARN":{"shape":"TapeARN"} } }, "ChapCredentials":{ "type":"list", "member":{"shape":"ChapInfo"} }, "ChapInfo":{ "type":"structure", "members":{ "TargetARN":{"shape":"TargetARN"}, "SecretToAuthenticateInitiator":{"shape":"ChapSecret"}, "InitiatorName":{"shape":"IqnName"}, "SecretToAuthenticateTarget":{"shape":"ChapSecret"} } }, "ChapSecret":{ "type":"string", "max":100, "min":1 }, "ClientToken":{ "type":"string", "max":100, "min":5 }, "CreateCachediSCSIVolumeInput":{ "type":"structure", "required":[ "GatewayARN", "VolumeSizeInBytes", "TargetName", "NetworkInterfaceId", "ClientToken" ], "members":{ "GatewayARN":{"shape":"GatewayARN"}, "VolumeSizeInBytes":{"shape":"long"}, "SnapshotId":{"shape":"SnapshotId"}, "TargetName":{"shape":"TargetName"}, "NetworkInterfaceId":{"shape":"NetworkInterfaceId"}, "ClientToken":{"shape":"ClientToken"} } }, "CreateCachediSCSIVolumeOutput":{ "type":"structure", "members":{ "VolumeARN":{"shape":"VolumeARN"}, "TargetARN":{"shape":"TargetARN"} } }, "CreateSnapshotFromVolumeRecoveryPointInput":{ "type":"structure", "required":[ "VolumeARN", "SnapshotDescription" ], "members":{ "VolumeARN":{"shape":"VolumeARN"}, "SnapshotDescription":{"shape":"SnapshotDescription"} } }, "CreateSnapshotFromVolumeRecoveryPointOutput":{ "type":"structure", "members":{ "SnapshotId":{"shape":"SnapshotId"}, "VolumeARN":{"shape":"VolumeARN"}, "VolumeRecoveryPointTime":{"shape":"string"} } }, "CreateSnapshotInput":{ "type":"structure", "required":[ "VolumeARN", "SnapshotDescription" ], "members":{ "VolumeARN":{"shape":"VolumeARN"}, "SnapshotDescription":{"shape":"SnapshotDescription"} } }, "CreateSnapshotOutput":{ "type":"structure", "members":{ "VolumeARN":{"shape":"VolumeARN"}, "SnapshotId":{"shape":"SnapshotId"} } }, "CreateStorediSCSIVolumeInput":{ "type":"structure", "required":[ "GatewayARN", "DiskId", "PreserveExistingData", "TargetName", "NetworkInterfaceId" ], "members":{ "GatewayARN":{"shape":"GatewayARN"}, "DiskId":{"shape":"DiskId"}, "SnapshotId":{"shape":"SnapshotId"}, "PreserveExistingData":{"shape":"boolean"}, "TargetName":{"shape":"TargetName"}, "NetworkInterfaceId":{"shape":"NetworkInterfaceId"} } }, "CreateStorediSCSIVolumeOutput":{ "type":"structure", "members":{ "VolumeARN":{"shape":"VolumeARN"}, "VolumeSizeInBytes":{"shape":"long"}, "TargetARN":{"shape":"TargetARN"} } }, "CreateTapeWithBarcodeInput":{ "type":"structure", "required":[ "GatewayARN", "TapeSizeInBytes", "TapeBarcode" ], "members":{ "GatewayARN":{"shape":"GatewayARN"}, "TapeSizeInBytes":{"shape":"TapeSize"}, "TapeBarcode":{"shape":"TapeBarcode"} } }, "CreateTapeWithBarcodeOutput":{ "type":"structure", "members":{ "TapeARN":{"shape":"TapeARN"} } }, "CreateTapesInput":{ "type":"structure", "required":[ "GatewayARN", "TapeSizeInBytes", "ClientToken", "NumTapesToCreate", "TapeBarcodePrefix" ], "members":{ "GatewayARN":{"shape":"GatewayARN"}, "TapeSizeInBytes":{"shape":"TapeSize"}, "ClientToken":{"shape":"ClientToken"}, "NumTapesToCreate":{"shape":"NumTapesToCreate"}, "TapeBarcodePrefix":{"shape":"TapeBarcodePrefix"} } }, "CreateTapesOutput":{ "type":"structure", "members":{ "TapeARNs":{"shape":"TapeARNs"} } }, "DayOfWeek":{ "type":"integer", "max":6, "min":0 }, "DeleteBandwidthRateLimitInput":{ "type":"structure", "required":[ "GatewayARN", "BandwidthType" ], "members":{ "GatewayARN":{"shape":"GatewayARN"}, "BandwidthType":{"shape":"BandwidthType"} } }, "DeleteBandwidthRateLimitOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "DeleteChapCredentialsInput":{ "type":"structure", "required":[ "TargetARN", "InitiatorName" ], "members":{ "TargetARN":{"shape":"TargetARN"}, "InitiatorName":{"shape":"IqnName"} } }, "DeleteChapCredentialsOutput":{ "type":"structure", "members":{ "TargetARN":{"shape":"TargetARN"}, "InitiatorName":{"shape":"IqnName"} } }, "DeleteGatewayInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "DeleteGatewayOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "DeleteSnapshotScheduleInput":{ "type":"structure", "required":["VolumeARN"], "members":{ "VolumeARN":{"shape":"VolumeARN"} } }, "DeleteSnapshotScheduleOutput":{ "type":"structure", "members":{ "VolumeARN":{"shape":"VolumeARN"} } }, "DeleteTapeArchiveInput":{ "type":"structure", "required":["TapeARN"], "members":{ "TapeARN":{"shape":"TapeARN"} } }, "DeleteTapeArchiveOutput":{ "type":"structure", "members":{ "TapeARN":{"shape":"TapeARN"} } }, "DeleteTapeInput":{ "type":"structure", "required":[ "GatewayARN", "TapeARN" ], "members":{ "GatewayARN":{"shape":"GatewayARN"}, "TapeARN":{"shape":"TapeARN"} } }, "DeleteTapeOutput":{ "type":"structure", "members":{ "TapeARN":{"shape":"TapeARN"} } }, "DeleteVolumeInput":{ "type":"structure", "required":["VolumeARN"], "members":{ "VolumeARN":{"shape":"VolumeARN"} } }, "DeleteVolumeOutput":{ "type":"structure", "members":{ "VolumeARN":{"shape":"VolumeARN"} } }, "DescribeBandwidthRateLimitInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "DescribeBandwidthRateLimitOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"}, "AverageUploadRateLimitInBitsPerSec":{"shape":"BandwidthUploadRateLimit"}, "AverageDownloadRateLimitInBitsPerSec":{"shape":"BandwidthDownloadRateLimit"} } }, "DescribeCacheInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "DescribeCacheOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"}, "DiskIds":{"shape":"DiskIds"}, "CacheAllocatedInBytes":{"shape":"long"}, "CacheUsedPercentage":{"shape":"double"}, "CacheDirtyPercentage":{"shape":"double"}, "CacheHitPercentage":{"shape":"double"}, "CacheMissPercentage":{"shape":"double"} } }, "DescribeCachediSCSIVolumesInput":{ "type":"structure", "required":["VolumeARNs"], "members":{ "VolumeARNs":{"shape":"VolumeARNs"} } }, "DescribeCachediSCSIVolumesOutput":{ "type":"structure", "members":{ "CachediSCSIVolumes":{"shape":"CachediSCSIVolumes"} } }, "DescribeChapCredentialsInput":{ "type":"structure", "required":["TargetARN"], "members":{ "TargetARN":{"shape":"TargetARN"} } }, "DescribeChapCredentialsOutput":{ "type":"structure", "members":{ "ChapCredentials":{"shape":"ChapCredentials"} } }, "DescribeGatewayInformationInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "DescribeGatewayInformationOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"}, "GatewayId":{"shape":"GatewayId"}, "GatewayName":{"shape":"string"}, "GatewayTimezone":{"shape":"GatewayTimezone"}, "GatewayState":{"shape":"GatewayState"}, "GatewayNetworkInterfaces":{"shape":"GatewayNetworkInterfaces"}, "GatewayType":{"shape":"GatewayType"}, "NextUpdateAvailabilityDate":{"shape":"NextUpdateAvailabilityDate"}, "LastSoftwareUpdate":{"shape":"LastSoftwareUpdate"} } }, "DescribeMaintenanceStartTimeInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "DescribeMaintenanceStartTimeOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"}, "HourOfDay":{"shape":"HourOfDay"}, "MinuteOfHour":{"shape":"MinuteOfHour"}, "DayOfWeek":{"shape":"DayOfWeek"}, "Timezone":{"shape":"GatewayTimezone"} } }, "DescribeSnapshotScheduleInput":{ "type":"structure", "required":["VolumeARN"], "members":{ "VolumeARN":{"shape":"VolumeARN"} } }, "DescribeSnapshotScheduleOutput":{ "type":"structure", "members":{ "VolumeARN":{"shape":"VolumeARN"}, "StartAt":{"shape":"HourOfDay"}, "RecurrenceInHours":{"shape":"RecurrenceInHours"}, "Description":{"shape":"Description"}, "Timezone":{"shape":"GatewayTimezone"} } }, "DescribeStorediSCSIVolumesInput":{ "type":"structure", "required":["VolumeARNs"], "members":{ "VolumeARNs":{"shape":"VolumeARNs"} } }, "DescribeStorediSCSIVolumesOutput":{ "type":"structure", "members":{ "StorediSCSIVolumes":{"shape":"StorediSCSIVolumes"} } }, "DescribeTapeArchivesInput":{ "type":"structure", "members":{ "TapeARNs":{"shape":"TapeARNs"}, "Marker":{"shape":"Marker"}, "Limit":{"shape":"PositiveIntObject"} } }, "DescribeTapeArchivesOutput":{ "type":"structure", "members":{ "TapeArchives":{"shape":"TapeArchives"}, "Marker":{"shape":"Marker"} } }, "DescribeTapeRecoveryPointsInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"}, "Marker":{"shape":"Marker"}, "Limit":{"shape":"PositiveIntObject"} } }, "DescribeTapeRecoveryPointsOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"}, "TapeRecoveryPointInfos":{"shape":"TapeRecoveryPointInfos"}, "Marker":{"shape":"Marker"} } }, "DescribeTapesInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"}, "TapeARNs":{"shape":"TapeARNs"}, "Marker":{"shape":"Marker"}, "Limit":{"shape":"PositiveIntObject"} } }, "DescribeTapesOutput":{ "type":"structure", "members":{ "Tapes":{"shape":"Tapes"}, "Marker":{"shape":"Marker"} } }, "DescribeUploadBufferInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "DescribeUploadBufferOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"}, "DiskIds":{"shape":"DiskIds"}, "UploadBufferUsedInBytes":{"shape":"long"}, "UploadBufferAllocatedInBytes":{"shape":"long"} } }, "DescribeVTLDevicesInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"}, "VTLDeviceARNs":{"shape":"VTLDeviceARNs"}, "Marker":{"shape":"Marker"}, "Limit":{"shape":"PositiveIntObject"} } }, "DescribeVTLDevicesOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"}, "VTLDevices":{"shape":"VTLDevices"}, "Marker":{"shape":"Marker"} } }, "DescribeWorkingStorageInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "DescribeWorkingStorageOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"}, "DiskIds":{"shape":"DiskIds"}, "WorkingStorageUsedInBytes":{"shape":"long"}, "WorkingStorageAllocatedInBytes":{"shape":"long"} } }, "Description":{ "type":"string", "max":255, "min":1 }, "DeviceType":{ "type":"string", "max":50, "min":2 }, "DeviceiSCSIAttributes":{ "type":"structure", "members":{ "TargetARN":{"shape":"TargetARN"}, "NetworkInterfaceId":{"shape":"NetworkInterfaceId"}, "NetworkInterfacePort":{"shape":"integer"}, "ChapEnabled":{"shape":"boolean"} } }, "DisableGatewayInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "DisableGatewayOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "Disk":{ "type":"structure", "members":{ "DiskId":{"shape":"DiskId"}, "DiskPath":{"shape":"string"}, "DiskNode":{"shape":"string"}, "DiskStatus":{"shape":"string"}, "DiskSizeInBytes":{"shape":"long"}, "DiskAllocationType":{"shape":"DiskAllocationType"}, "DiskAllocationResource":{"shape":"string"} } }, "DiskAllocationType":{ "type":"string", "max":100, "min":3 }, "DiskId":{ "type":"string", "max":300, "min":1 }, "DiskIds":{ "type":"list", "member":{"shape":"DiskId"} }, "Disks":{ "type":"list", "member":{"shape":"Disk"} }, "DoubleObject":{"type":"double"}, "ErrorCode":{ "type":"string", "enum":[ "ActivationKeyExpired", "ActivationKeyInvalid", "ActivationKeyNotFound", "GatewayInternalError", "GatewayNotConnected", "GatewayNotFound", "GatewayProxyNetworkConnectionBusy", "AuthenticationFailure", "BandwidthThrottleScheduleNotFound", "Blocked", "CannotExportSnapshot", "ChapCredentialNotFound", "DiskAlreadyAllocated", "DiskDoesNotExist", "DiskSizeGreaterThanVolumeMaxSize", "DiskSizeLessThanVolumeSize", "DiskSizeNotGigAligned", "DuplicateCertificateInfo", "DuplicateSchedule", "EndpointNotFound", "IAMNotSupported", "InitiatorInvalid", "InitiatorNotFound", "InternalError", "InvalidGateway", "InvalidEndpoint", "InvalidParameters", "InvalidSchedule", "LocalStorageLimitExceeded", "LunAlreadyAllocated ", "LunInvalid", "MaximumContentLengthExceeded", "MaximumTapeCartridgeCountExceeded", "MaximumVolumeCountExceeded", "NetworkConfigurationChanged", "NoDisksAvailable", "NotImplemented", "NotSupported", "OperationAborted", "OutdatedGateway", "ParametersNotImplemented", "RegionInvalid", "RequestTimeout", "ServiceUnavailable", "SnapshotDeleted", "SnapshotIdInvalid", "SnapshotInProgress", "SnapshotNotFound", "SnapshotScheduleNotFound", "StagingAreaFull", "StorageFailure", "TapeCartridgeNotFound", "TargetAlreadyExists", "TargetInvalid", "TargetNotFound", "UnauthorizedOperation", "VolumeAlreadyExists", "VolumeIdInvalid", "VolumeInUse", "VolumeNotFound", "VolumeNotReady" ] }, "GatewayARN":{ "type":"string", "max":500, "min":50 }, "GatewayId":{ "type":"string", "max":30, "min":12 }, "GatewayInfo":{ "type":"structure", "members":{ "GatewayId":{"shape":"GatewayId"}, "GatewayARN":{"shape":"GatewayARN"}, "GatewayType":{"shape":"GatewayType"}, "GatewayOperationalState":{"shape":"GatewayOperationalState"}, "GatewayName":{"shape":"string"} } }, "GatewayName":{ "type":"string", "max":255, "min":2, "pattern":"^[ -\\.0-\\[\\]-~]*[!-\\.0-\\[\\]-~][ -\\.0-\\[\\]-~]*$" }, "GatewayNetworkInterfaces":{ "type":"list", "member":{"shape":"NetworkInterface"} }, "GatewayOperationalState":{ "type":"string", "max":25, "min":2 }, "GatewayState":{ "type":"string", "max":25, "min":2 }, "GatewayTimezone":{ "type":"string", "max":10, "min":3 }, "GatewayType":{ "type":"string", "max":20, "min":2 }, "Gateways":{ "type":"list", "member":{"shape":"GatewayInfo"} }, "HourOfDay":{ "type":"integer", "max":23, "min":0 }, "Initiator":{ "type":"string", "max":50, "min":1 }, "Initiators":{ "type":"list", "member":{"shape":"Initiator"} }, "InternalServerError":{ "type":"structure", "members":{ "message":{"shape":"string"}, "error":{"shape":"StorageGatewayError"} }, "exception":true }, "InvalidGatewayRequestException":{ "type":"structure", "members":{ "message":{"shape":"string"}, "error":{"shape":"StorageGatewayError"} }, "exception":true }, "IqnName":{ "type":"string", "max":255, "min":1, "pattern":"[0-9a-z:.-]+" }, "LastSoftwareUpdate":{ "type":"string", "max":25, "min":1 }, "ListGatewaysInput":{ "type":"structure", "members":{ "Marker":{"shape":"Marker"}, "Limit":{"shape":"PositiveIntObject"} } }, "ListGatewaysOutput":{ "type":"structure", "members":{ "Gateways":{"shape":"Gateways"}, "Marker":{"shape":"Marker"} } }, "ListLocalDisksInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "ListLocalDisksOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"}, "Disks":{"shape":"Disks"} } }, "ListTagsForResourceInput":{ "type":"structure", "required":["ResourceARN"], "members":{ "ResourceARN":{"shape":"ResourceARN"}, "Marker":{"shape":"Marker"}, "Limit":{"shape":"PositiveIntObject"} } }, "ListTagsForResourceOutput":{ "type":"structure", "members":{ "ResourceARN":{"shape":"ResourceARN"}, "Marker":{"shape":"Marker"}, "Tags":{"shape":"Tags"} } }, "ListTapesInput":{ "type":"structure", "members":{ "TapeARNs":{"shape":"TapeARNs"}, "Marker":{"shape":"Marker"}, "Limit":{"shape":"PositiveIntObject"} } }, "ListTapesOutput":{ "type":"structure", "members":{ "TapeInfos":{"shape":"TapeInfos"}, "Marker":{"shape":"Marker"} } }, "ListVolumeInitiatorsInput":{ "type":"structure", "required":["VolumeARN"], "members":{ "VolumeARN":{"shape":"VolumeARN"} } }, "ListVolumeInitiatorsOutput":{ "type":"structure", "members":{ "Initiators":{"shape":"Initiators"} } }, "ListVolumeRecoveryPointsInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "ListVolumeRecoveryPointsOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"}, "VolumeRecoveryPointInfos":{"shape":"VolumeRecoveryPointInfos"} } }, "ListVolumesInput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"}, "Marker":{"shape":"Marker"}, "Limit":{"shape":"PositiveIntObject"} } }, "ListVolumesOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"}, "Marker":{"shape":"Marker"}, "VolumeInfos":{"shape":"VolumeInfos"} } }, "LocalConsolePassword":{ "type":"string", "max":512, "min":6, "pattern":"^[ -~]+$", "sensitive":true }, "Marker":{ "type":"string", "max":1000, "min":1 }, "MediumChangerType":{ "type":"string", "max":50, "min":2 }, "MinuteOfHour":{ "type":"integer", "max":59, "min":0 }, "NetworkInterface":{ "type":"structure", "members":{ "Ipv4Address":{"shape":"string"}, "MacAddress":{"shape":"string"}, "Ipv6Address":{"shape":"string"} } }, "NetworkInterfaceId":{ "type":"string", "pattern":"\\A(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)(\\.(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)){3}\\z" }, "NextUpdateAvailabilityDate":{ "type":"string", "max":25, "min":1 }, "NumTapesToCreate":{ "type":"integer", "max":10, "min":1 }, "PositiveIntObject":{ "type":"integer", "min":1 }, "RecurrenceInHours":{ "type":"integer", "max":24, "min":1 }, "RegionId":{ "type":"string", "max":25, "min":1 }, "RemoveTagsFromResourceInput":{ "type":"structure", "required":[ "ResourceARN", "TagKeys" ], "members":{ "ResourceARN":{"shape":"ResourceARN"}, "TagKeys":{"shape":"TagKeys"} } }, "RemoveTagsFromResourceOutput":{ "type":"structure", "members":{ "ResourceARN":{"shape":"ResourceARN"} } }, "ResetCacheInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "ResetCacheOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "ResourceARN":{ "type":"string", "max":500, "min":50 }, "RetrieveTapeArchiveInput":{ "type":"structure", "required":[ "TapeARN", "GatewayARN" ], "members":{ "TapeARN":{"shape":"TapeARN"}, "GatewayARN":{"shape":"GatewayARN"} } }, "RetrieveTapeArchiveOutput":{ "type":"structure", "members":{ "TapeARN":{"shape":"TapeARN"} } }, "RetrieveTapeRecoveryPointInput":{ "type":"structure", "required":[ "TapeARN", "GatewayARN" ], "members":{ "TapeARN":{"shape":"TapeARN"}, "GatewayARN":{"shape":"GatewayARN"} } }, "RetrieveTapeRecoveryPointOutput":{ "type":"structure", "members":{ "TapeARN":{"shape":"TapeARN"} } }, "SetLocalConsolePasswordInput":{ "type":"structure", "required":[ "GatewayARN", "LocalConsolePassword" ], "members":{ "GatewayARN":{"shape":"GatewayARN"}, "LocalConsolePassword":{"shape":"LocalConsolePassword"} } }, "SetLocalConsolePasswordOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "ShutdownGatewayInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "ShutdownGatewayOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "SnapshotDescription":{ "type":"string", "max":255, "min":1 }, "SnapshotId":{ "type":"string", "pattern":"\\Asnap-([0-9A-Fa-f]{8}|[0-9A-Fa-f]{17})\\z" }, "StartGatewayInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "StartGatewayOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "StorageGatewayError":{ "type":"structure", "members":{ "errorCode":{"shape":"ErrorCode"}, "errorDetails":{"shape":"errorDetails"} } }, "StorediSCSIVolume":{ "type":"structure", "members":{ "VolumeARN":{"shape":"VolumeARN"}, "VolumeId":{"shape":"VolumeId"}, "VolumeType":{"shape":"VolumeType"}, "VolumeStatus":{"shape":"VolumeStatus"}, "VolumeSizeInBytes":{"shape":"long"}, "VolumeProgress":{"shape":"DoubleObject"}, "VolumeDiskId":{"shape":"DiskId"}, "SourceSnapshotId":{"shape":"SnapshotId"}, "PreservedExistingData":{"shape":"boolean"}, "VolumeiSCSIAttributes":{"shape":"VolumeiSCSIAttributes"} } }, "StorediSCSIVolumes":{ "type":"list", "member":{"shape":"StorediSCSIVolume"} }, "Tag":{ "type":"structure", "required":[ "Key", "Value" ], "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{ "type":"string", "max":128, "min":1, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-%@]*)$" }, "TagKeys":{ "type":"list", "member":{"shape":"TagKey"} }, "TagValue":{ "type":"string", "max":256 }, "Tags":{ "type":"list", "member":{"shape":"Tag"} }, "Tape":{ "type":"structure", "members":{ "TapeARN":{"shape":"TapeARN"}, "TapeBarcode":{"shape":"TapeBarcode"}, "TapeSizeInBytes":{"shape":"TapeSize"}, "TapeStatus":{"shape":"TapeStatus"}, "VTLDevice":{"shape":"VTLDeviceARN"}, "Progress":{"shape":"DoubleObject"} } }, "TapeARN":{ "type":"string", "max":500, "min":50 }, "TapeARNs":{ "type":"list", "member":{"shape":"TapeARN"} }, "TapeArchive":{ "type":"structure", "members":{ "TapeARN":{"shape":"TapeARN"}, "TapeBarcode":{"shape":"TapeBarcode"}, "TapeSizeInBytes":{"shape":"TapeSize"}, "CompletionTime":{"shape":"Time"}, "RetrievedTo":{"shape":"GatewayARN"}, "TapeStatus":{"shape":"TapeArchiveStatus"} } }, "TapeArchiveStatus":{"type":"string"}, "TapeArchives":{ "type":"list", "member":{"shape":"TapeArchive"} }, "TapeBarcode":{ "type":"string", "max":16, "min":7, "pattern":"^[A-Z0-9]*$" }, "TapeBarcodePrefix":{ "type":"string", "max":4, "min":1, "pattern":"^[A-Z]*$" }, "TapeDriveType":{ "type":"string", "max":50, "min":2 }, "TapeInfo":{ "type":"structure", "members":{ "TapeARN":{"shape":"TapeARN"}, "TapeBarcode":{"shape":"TapeBarcode"}, "TapeSizeInBytes":{"shape":"TapeSize"}, "TapeStatus":{"shape":"TapeStatus"}, "GatewayARN":{"shape":"GatewayARN"} } }, "TapeInfos":{ "type":"list", "member":{"shape":"TapeInfo"} }, "TapeRecoveryPointInfo":{ "type":"structure", "members":{ "TapeARN":{"shape":"TapeARN"}, "TapeRecoveryPointTime":{"shape":"Time"}, "TapeSizeInBytes":{"shape":"TapeSize"}, "TapeStatus":{"shape":"TapeRecoveryPointStatus"} } }, "TapeRecoveryPointInfos":{ "type":"list", "member":{"shape":"TapeRecoveryPointInfo"} }, "TapeRecoveryPointStatus":{"type":"string"}, "TapeSize":{"type":"long"}, "TapeStatus":{"type":"string"}, "Tapes":{ "type":"list", "member":{"shape":"Tape"} }, "TargetARN":{ "type":"string", "max":800, "min":50 }, "TargetName":{ "type":"string", "max":200, "min":1, "pattern":"^[-\\.;a-z0-9]+$" }, "Time":{"type":"timestamp"}, "UpdateBandwidthRateLimitInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"}, "AverageUploadRateLimitInBitsPerSec":{"shape":"BandwidthUploadRateLimit"}, "AverageDownloadRateLimitInBitsPerSec":{"shape":"BandwidthDownloadRateLimit"} } }, "UpdateBandwidthRateLimitOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "UpdateChapCredentialsInput":{ "type":"structure", "required":[ "TargetARN", "SecretToAuthenticateInitiator", "InitiatorName" ], "members":{ "TargetARN":{"shape":"TargetARN"}, "SecretToAuthenticateInitiator":{"shape":"ChapSecret"}, "InitiatorName":{"shape":"IqnName"}, "SecretToAuthenticateTarget":{"shape":"ChapSecret"} } }, "UpdateChapCredentialsOutput":{ "type":"structure", "members":{ "TargetARN":{"shape":"TargetARN"}, "InitiatorName":{"shape":"IqnName"} } }, "UpdateGatewayInformationInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"}, "GatewayName":{"shape":"GatewayName"}, "GatewayTimezone":{"shape":"GatewayTimezone"} } }, "UpdateGatewayInformationOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"}, "GatewayName":{"shape":"string"} } }, "UpdateGatewaySoftwareNowInput":{ "type":"structure", "required":["GatewayARN"], "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "UpdateGatewaySoftwareNowOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "UpdateMaintenanceStartTimeInput":{ "type":"structure", "required":[ "GatewayARN", "HourOfDay", "MinuteOfHour", "DayOfWeek" ], "members":{ "GatewayARN":{"shape":"GatewayARN"}, "HourOfDay":{"shape":"HourOfDay"}, "MinuteOfHour":{"shape":"MinuteOfHour"}, "DayOfWeek":{"shape":"DayOfWeek"} } }, "UpdateMaintenanceStartTimeOutput":{ "type":"structure", "members":{ "GatewayARN":{"shape":"GatewayARN"} } }, "UpdateSnapshotScheduleInput":{ "type":"structure", "required":[ "VolumeARN", "StartAt", "RecurrenceInHours" ], "members":{ "VolumeARN":{"shape":"VolumeARN"}, "StartAt":{"shape":"HourOfDay"}, "RecurrenceInHours":{"shape":"RecurrenceInHours"}, "Description":{"shape":"Description"} } }, "UpdateSnapshotScheduleOutput":{ "type":"structure", "members":{ "VolumeARN":{"shape":"VolumeARN"} } }, "UpdateVTLDeviceTypeInput":{ "type":"structure", "required":[ "VTLDeviceARN", "DeviceType" ], "members":{ "VTLDeviceARN":{"shape":"VTLDeviceARN"}, "DeviceType":{"shape":"DeviceType"} } }, "UpdateVTLDeviceTypeOutput":{ "type":"structure", "members":{ "VTLDeviceARN":{"shape":"VTLDeviceARN"} } }, "VTLDevice":{ "type":"structure", "members":{ "VTLDeviceARN":{"shape":"VTLDeviceARN"}, "VTLDeviceType":{"shape":"VTLDeviceType"}, "VTLDeviceVendor":{"shape":"VTLDeviceVendor"}, "VTLDeviceProductIdentifier":{"shape":"VTLDeviceProductIdentifier"}, "DeviceiSCSIAttributes":{"shape":"DeviceiSCSIAttributes"} } }, "VTLDeviceARN":{ "type":"string", "max":500, "min":50 }, "VTLDeviceARNs":{ "type":"list", "member":{"shape":"VTLDeviceARN"} }, "VTLDeviceProductIdentifier":{"type":"string"}, "VTLDeviceType":{"type":"string"}, "VTLDeviceVendor":{"type":"string"}, "VTLDevices":{ "type":"list", "member":{"shape":"VTLDevice"} }, "VolumeARN":{ "type":"string", "max":500, "min":50 }, "VolumeARNs":{ "type":"list", "member":{"shape":"VolumeARN"} }, "VolumeId":{ "type":"string", "max":30, "min":12 }, "VolumeInfo":{ "type":"structure", "members":{ "VolumeARN":{"shape":"VolumeARN"}, "VolumeId":{"shape":"VolumeId"}, "GatewayARN":{"shape":"GatewayARN"}, "GatewayId":{"shape":"GatewayId"}, "VolumeType":{"shape":"VolumeType"}, "VolumeSizeInBytes":{"shape":"long"} } }, "VolumeInfos":{ "type":"list", "member":{"shape":"VolumeInfo"} }, "VolumeRecoveryPointInfo":{ "type":"structure", "members":{ "VolumeARN":{"shape":"VolumeARN"}, "VolumeSizeInBytes":{"shape":"long"}, "VolumeUsageInBytes":{"shape":"long"}, "VolumeRecoveryPointTime":{"shape":"string"} } }, "VolumeRecoveryPointInfos":{ "type":"list", "member":{"shape":"VolumeRecoveryPointInfo"} }, "VolumeStatus":{ "type":"string", "max":50, "min":3 }, "VolumeType":{ "type":"string", "max":100, "min":3 }, "VolumeiSCSIAttributes":{ "type":"structure", "members":{ "TargetARN":{"shape":"TargetARN"}, "NetworkInterfaceId":{"shape":"NetworkInterfaceId"}, "NetworkInterfacePort":{"shape":"integer"}, "LunNumber":{"shape":"PositiveIntObject"}, "ChapEnabled":{"shape":"boolean"} } }, "boolean":{"type":"boolean"}, "double":{"type":"double"}, "errorDetails":{ "type":"map", "key":{"shape":"string"}, "value":{"shape":"string"} }, "integer":{"type":"integer"}, "long":{"type":"long"}, "string":{"type":"string"} } } aws-sdk-go-1.4.22/models/apis/storagegateway/2013-06-30/docs-2.json000066400000000000000000003010641300374646400240460ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS Storage Gateway Service

        AWS Storage Gateway is the service that connects an on-premises software appliance with cloud-based storage to provide seamless and secure integration between an organization's on-premises IT environment and AWS's storage infrastructure. The service enables you to securely upload data to the AWS cloud for cost effective backup and rapid disaster recovery.

        Use the following links to get started using the AWS Storage Gateway Service API Reference:

        AWS Storage Gateway resource IDs are in uppercase. When you use these resource IDs with the Amazon EC2 API, EC2 expects resource IDs in lowercase. You must change your resource ID to lowercase to use it with the EC2 API. For example, in Storage Gateway the ID for a volume might be vol-1122AABB. When you use this ID with the EC2 API, you must change it to vol-1122aabb. Otherwise, the EC2 API might not behave as expected.

        IDs for Storage Gateway volumes and Amazon EBS snapshots created from gateway volumes are changing to a longer format. Starting in December 2016, all new volumes and snapshots will be created with a 17-character string. Starting in April 2016, you will be able to use these longer IDs so you can test your systems with the new format. For more information, see Longer EC2 and EBS Resource IDs.

        For example, a volume ARN with the longer volume ID format will look like this:

        arn:aws:storagegateway:us-west-2:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABBCCDDEEFFG.

        A snapshot ID with the longer ID format will look like this: snap-78e226633445566ee.

        For more information, see Announcement: Heads-up – Longer AWS Storage Gateway volume and snapshot IDs coming in 2016.

        ", "operations": { "ActivateGateway": "

        Activates the gateway you previously deployed on your host. For more information, see Activate the AWS Storage Gateway. In the activation process, you specify information such as the you want to use for storing snapshots, the time zone for scheduled snapshots the gateway snapshot schedule window, an activation key, and a name for your gateway. The activation process also associates your gateway with your account; for more information, see UpdateGatewayInformation.

        You must turn on the gateway VM before you can activate your gateway.

        ", "AddCache": "

        Configures one or more gateway local disks as cache for a cached-volume gateway. This operation is supported only for the gateway-cached volume architecture (see Storage Gateway Concepts).

        In the request, you specify the gateway Amazon Resource Name (ARN) to which you want to add cache, and one or more disk IDs that you want to configure as cache.

        ", "AddTagsToResource": "

        Adds one or more tags to the specified resource. You use tags to add metadata to resources, which you can use to categorize these resources. For example, you can categorize resources by purpose, owner, environment, or team. Each tag consists of a key and a value, which you define. You can add tags to the following AWS Storage Gateway resources:

        • Storage gateways of all types

        • Storage Volumes

        • Virtual Tapes

        You can create a maximum of 10 tags for each resource. Virtual tapes and storage volumes that are recovered to a new gateway maintain their tags.

        ", "AddUploadBuffer": "

        Configures one or more gateway local disks as upload buffer for a specified gateway. This operation is supported for both the gateway-stored and gateway-cached volume architectures.

        In the request, you specify the gateway Amazon Resource Name (ARN) to which you want to add upload buffer, and one or more disk IDs that you want to configure as upload buffer.

        ", "AddWorkingStorage": "

        Configures one or more gateway local disks as working storage for a gateway. This operation is supported only for the gateway-stored volume architecture. This operation is deprecated in cached-volumes API version 20120630. Use AddUploadBuffer instead.

        Working storage is also referred to as upload buffer. You can also use the AddUploadBuffer operation to add upload buffer to a stored-volume gateway.

        In the request, you specify the gateway Amazon Resource Name (ARN) to which you want to add working storage, and one or more disk IDs that you want to configure as working storage.

        ", "CancelArchival": "

        Cancels archiving of a virtual tape to the virtual tape shelf (VTS) after the archiving process is initiated.

        ", "CancelRetrieval": "

        Cancels retrieval of a virtual tape from the virtual tape shelf (VTS) to a gateway after the retrieval process is initiated. The virtual tape is returned to the VTS.

        ", "CreateCachediSCSIVolume": "

        Creates a cached volume on a specified cached gateway. This operation is supported only for the gateway-cached volume architecture.

        Cache storage must be allocated to the gateway before you can create a cached volume. Use the AddCache operation to add cache storage to a gateway.

        In the request, you must specify the gateway, size of the volume in bytes, the iSCSI target name, an IP address on which to expose the target, and a unique client token. In response, AWS Storage Gateway creates the volume and returns information about it such as the volume Amazon Resource Name (ARN), its size, and the iSCSI target ARN that initiators can use to connect to the volume target.

        ", "CreateSnapshot": "

        Initiates a snapshot of a volume.

        AWS Storage Gateway provides the ability to back up point-in-time snapshots of your data to Amazon Simple Storage (S3) for durable off-site recovery, as well as import the data to an Amazon Elastic Block Store (EBS) volume in Amazon Elastic Compute Cloud (EC2). You can take snapshots of your gateway volume on a scheduled or ad-hoc basis. This API enables you to take ad-hoc snapshot. For more information, see Working With Snapshots in the AWS Storage Gateway Console.

        In the CreateSnapshot request you identify the volume by providing its Amazon Resource Name (ARN). You must also provide description for the snapshot. When AWS Storage Gateway takes the snapshot of specified volume, the snapshot and description appears in the AWS Storage Gateway Console. In response, AWS Storage Gateway returns you a snapshot ID. You can use this snapshot ID to check the snapshot progress or later use it when you want to create a volume from a snapshot.

        To list or delete a snapshot, you must use the Amazon EC2 API. For more information, see DescribeSnapshots or DeleteSnapshot in the EC2 API reference.

        Volume and snapshot IDs are changing to a longer length ID format. For more information, see the important note on the Welcome page.

        ", "CreateSnapshotFromVolumeRecoveryPoint": "

        Initiates a snapshot of a gateway from a volume recovery point. This operation is supported only for the gateway-cached volume architecture.

        A volume recovery point is a point in time at which all data of the volume is consistent and from which you can create a snapshot. To get a list of volume recovery point for gateway-cached volumes, use ListVolumeRecoveryPoints.

        In the CreateSnapshotFromVolumeRecoveryPoint request, you identify the volume by providing its Amazon Resource Name (ARN). You must also provide a description for the snapshot. When AWS Storage Gateway takes a snapshot of the specified volume, the snapshot and its description appear in the AWS Storage Gateway console. In response, AWS Storage Gateway returns you a snapshot ID. You can use this snapshot ID to check the snapshot progress or later use it when you want to create a volume from a snapshot.

        To list or delete a snapshot, you must use the Amazon EC2 API. For more information, in Amazon Elastic Compute Cloud API Reference.

        ", "CreateStorediSCSIVolume": "

        Creates a volume on a specified gateway. This operation is supported only for the gateway-stored volume architecture.

        The size of the volume to create is inferred from the disk size. You can choose to preserve existing data on the disk, create volume from an existing snapshot, or create an empty volume. If you choose to create an empty gateway volume, then any existing data on the disk is erased.

        In the request you must specify the gateway and the disk information on which you are creating the volume. In response, AWS Storage Gateway creates the volume and returns volume information such as the volume Amazon Resource Name (ARN), its size, and the iSCSI target ARN that initiators can use to connect to the volume target.

        ", "CreateTapeWithBarcode": "

        Creates a virtual tape by using your own barcode. You write data to the virtual tape and then archive the tape.

        Cache storage must be allocated to the gateway before you can create a virtual tape. Use the AddCache operation to add cache storage to a gateway.

        ", "CreateTapes": "

        Creates one or more virtual tapes. You write data to the virtual tapes and then archive the tapes.

        Cache storage must be allocated to the gateway before you can create virtual tapes. Use the AddCache operation to add cache storage to a gateway.

        ", "DeleteBandwidthRateLimit": "

        Deletes the bandwidth rate limits of a gateway. You can delete either the upload and download bandwidth rate limit, or you can delete both. If you delete only one of the limits, the other limit remains unchanged. To specify which gateway to work with, use the Amazon Resource Name (ARN) of the gateway in your request.

        ", "DeleteChapCredentials": "

        Deletes Challenge-Handshake Authentication Protocol (CHAP) credentials for a specified iSCSI target and initiator pair.

        ", "DeleteGateway": "

        Deletes a gateway. To specify which gateway to delete, use the Amazon Resource Name (ARN) of the gateway in your request. The operation deletes the gateway; however, it does not delete the gateway virtual machine (VM) from your host computer.

        After you delete a gateway, you cannot reactivate it. Completed snapshots of the gateway volumes are not deleted upon deleting the gateway, however, pending snapshots will not complete. After you delete a gateway, your next step is to remove it from your environment.

        You no longer pay software charges after the gateway is deleted; however, your existing Amazon EBS snapshots persist and you will continue to be billed for these snapshots. You can choose to remove all remaining Amazon EBS snapshots by canceling your Amazon EC2 subscription.  If you prefer not to cancel your Amazon EC2 subscription, you can delete your snapshots using the Amazon EC2 console. For more information, see the AWS Storage Gateway Detail Page.

        ", "DeleteSnapshotSchedule": "

        Deletes a snapshot of a volume.

        You can take snapshots of your gateway volumes on a scheduled or ad hoc basis. This API action enables you to delete a snapshot schedule for a volume. For more information, see Working with Snapshots. In the DeleteSnapshotSchedule request, you identify the volume by providing its Amazon Resource Name (ARN).

        To list or delete a snapshot, you must use the Amazon EC2 API. in Amazon Elastic Compute Cloud API Reference.

        ", "DeleteTape": "

        Deletes the specified virtual tape.

        ", "DeleteTapeArchive": "

        Deletes the specified virtual tape from the virtual tape shelf (VTS).

        ", "DeleteVolume": "

        Deletes the specified gateway volume that you previously created using the CreateCachediSCSIVolume or CreateStorediSCSIVolume API. For gateway-stored volumes, the local disk that was configured as the storage volume is not deleted. You can reuse the local disk to create another storage volume.

        Before you delete a gateway volume, make sure there are no iSCSI connections to the volume you are deleting. You should also make sure there is no snapshot in progress. You can use the Amazon Elastic Compute Cloud (Amazon EC2) API to query snapshots on the volume you are deleting and check the snapshot status. For more information, go to DescribeSnapshots in the Amazon Elastic Compute Cloud API Reference.

        In the request, you must provide the Amazon Resource Name (ARN) of the storage volume you want to delete.

        ", "DescribeBandwidthRateLimit": "

        Returns the bandwidth rate limits of a gateway. By default, these limits are not set, which means no bandwidth rate limiting is in effect.

        This operation only returns a value for a bandwidth rate limit only if the limit is set. If no limits are set for the gateway, then this operation returns only the gateway ARN in the response body. To specify which gateway to describe, use the Amazon Resource Name (ARN) of the gateway in your request.

        ", "DescribeCache": "

        Returns information about the cache of a gateway. This operation is supported only for the gateway-cached volume architecture.

        The response includes disk IDs that are configured as cache, and it includes the amount of cache allocated and used.

        ", "DescribeCachediSCSIVolumes": "

        Returns a description of the gateway volumes specified in the request. This operation is supported only for the gateway-cached volume architecture.

        The list of gateway volumes in the request must be from one gateway. In the response Amazon Storage Gateway returns volume information sorted by volume Amazon Resource Name (ARN).

        ", "DescribeChapCredentials": "

        Returns an array of Challenge-Handshake Authentication Protocol (CHAP) credentials information for a specified iSCSI target, one for each target-initiator pair.

        ", "DescribeGatewayInformation": "

        Returns metadata about a gateway such as its name, network interfaces, configured time zone, and the state (whether the gateway is running or not). To specify which gateway to describe, use the Amazon Resource Name (ARN) of the gateway in your request.

        ", "DescribeMaintenanceStartTime": "

        Returns your gateway's weekly maintenance start time including the day and time of the week. Note that values are in terms of the gateway's time zone.

        ", "DescribeSnapshotSchedule": "

        Describes the snapshot schedule for the specified gateway volume. The snapshot schedule information includes intervals at which snapshots are automatically initiated on the volume.

        ", "DescribeStorediSCSIVolumes": "

        Returns the description of the gateway volumes specified in the request. The list of gateway volumes in the request must be from one gateway. In the response Amazon Storage Gateway returns volume information sorted by volume ARNs.

        ", "DescribeTapeArchives": "

        Returns a description of specified virtual tapes in the virtual tape shelf (VTS).

        If a specific TapeARN is not specified, AWS Storage Gateway returns a description of all virtual tapes found in the VTS associated with your account.

        ", "DescribeTapeRecoveryPoints": "

        Returns a list of virtual tape recovery points that are available for the specified gateway-VTL.

        A recovery point is a point-in-time view of a virtual tape at which all the data on the virtual tape is consistent. If your gateway crashes, virtual tapes that have recovery points can be recovered to a new gateway.

        ", "DescribeTapes": "

        Returns a description of the specified Amazon Resource Name (ARN) of virtual tapes. If a TapeARN is not specified, returns a description of all virtual tapes associated with the specified gateway.

        ", "DescribeUploadBuffer": "

        Returns information about the upload buffer of a gateway. This operation is supported for both the gateway-stored and gateway-cached volume architectures.

        The response includes disk IDs that are configured as upload buffer space, and it includes the amount of upload buffer space allocated and used.

        ", "DescribeVTLDevices": "

        Returns a description of virtual tape library (VTL) devices for the specified gateway. In the response, AWS Storage Gateway returns VTL device information.

        The list of VTL devices must be from one gateway.

        ", "DescribeWorkingStorage": "

        Returns information about the working storage of a gateway. This operation is supported only for the gateway-stored volume architecture. This operation is deprecated in cached-volumes API version (20120630). Use DescribeUploadBuffer instead.

        Working storage is also referred to as upload buffer. You can also use the DescribeUploadBuffer operation to add upload buffer to a stored-volume gateway.

        The response includes disk IDs that are configured as working storage, and it includes the amount of working storage allocated and used.

        ", "DisableGateway": "

        Disables a gateway when the gateway is no longer functioning. For example, if your gateway VM is damaged, you can disable the gateway so you can recover virtual tapes.

        Use this operation for a gateway-VTL that is not reachable or not functioning.

        Once a gateway is disabled it cannot be enabled.

        ", "ListGateways": "

        Lists gateways owned by an AWS account in a region specified in the request. The returned list is ordered by gateway Amazon Resource Name (ARN).

        By default, the operation returns a maximum of 100 gateways. This operation supports pagination that allows you to optionally reduce the number of gateways returned in a response.

        If you have more gateways than are returned in a response (that is, the response returns only a truncated list of your gateways), the response contains a marker that you can specify in your next request to fetch the next page of gateways.

        ", "ListLocalDisks": "

        Returns a list of the gateway's local disks. To specify which gateway to describe, you use the Amazon Resource Name (ARN) of the gateway in the body of the request.

        The request returns a list of all disks, specifying which are configured as working storage, cache storage, or stored volume or not configured at all. The response includes a DiskStatus field. This field can have a value of present (the disk is available to use), missing (the disk is no longer connected to the gateway), or mismatch (the disk node is occupied by a disk that has incorrect metadata or the disk content is corrupted).

        ", "ListTagsForResource": "

        Lists the tags that have been added to the specified resource.

        ", "ListTapes": "

        Lists virtual tapes in your virtual tape library (VTL) and your virtual tape shelf (VTS). You specify the tapes to list by specifying one or more tape Amazon Resource Names (ARNs). If you don't specify a tape ARN, the operation lists all virtual tapes in both your VTL and VTS.

        This operation supports pagination. By default, the operation returns a maximum of up to 100 tapes. You can optionally specify the Limit parameter in the body to limit the number of tapes in the response. If the number of tapes returned in the response is truncated, the response includes a Marker element that you can use in your subsequent request to retrieve the next set of tapes.

        ", "ListVolumeInitiators": "

        Lists iSCSI initiators that are connected to a volume. You can use this operation to determine whether a volume is being used or not.

        ", "ListVolumeRecoveryPoints": "

        Lists the recovery points for a specified gateway. This operation is supported only for the gateway-cached volume architecture.

        Each gateway-cached volume has one recovery point. A volume recovery point is a point in time at which all data of the volume is consistent and from which you can create a snapshot. To create a snapshot from a volume recovery point use the CreateSnapshotFromVolumeRecoveryPoint operation.

        ", "ListVolumes": "

        Lists the iSCSI stored volumes of a gateway. Results are sorted by volume ARN. The response includes only the volume ARNs. If you want additional volume information, use the DescribeStorediSCSIVolumes API.

        The operation supports pagination. By default, the operation returns a maximum of up to 100 volumes. You can optionally specify the Limit field in the body to limit the number of volumes in the response. If the number of volumes returned in the response is truncated, the response includes a Marker field. You can use this Marker value in your subsequent request to retrieve the next set of volumes.

        ", "RemoveTagsFromResource": "

        Removes one or more tags from the specified resource.

        ", "ResetCache": "

        Resets all cache disks that have encountered a error and makes the disks available for reconfiguration as cache storage. If your cache disk encounters a error, the gateway prevents read and write operations on virtual tapes in the gateway. For example, an error can occur when a disk is corrupted or removed from the gateway. When a cache is reset, the gateway loses its cache storage. At this point you can reconfigure the disks as cache disks.

        If the cache disk you are resetting contains data that has not been uploaded to Amazon S3 yet, that data can be lost. After you reset cache disks, there will be no configured cache disks left in the gateway, so you must configure at least one new cache disk for your gateway to function properly.

        ", "RetrieveTapeArchive": "

        Retrieves an archived virtual tape from the virtual tape shelf (VTS) to a gateway-VTL. Virtual tapes archived in the VTS are not associated with any gateway. However after a tape is retrieved, it is associated with a gateway, even though it is also listed in the VTS.

        Once a tape is successfully retrieved to a gateway, it cannot be retrieved again to another gateway. You must archive the tape again before you can retrieve it to another gateway.

        ", "RetrieveTapeRecoveryPoint": "

        Retrieves the recovery point for the specified virtual tape.

        A recovery point is a point in time view of a virtual tape at which all the data on the tape is consistent. If your gateway crashes, virtual tapes that have recovery points can be recovered to a new gateway.

        The virtual tape can be retrieved to only one gateway. The retrieved tape is read-only. The virtual tape can be retrieved to only a gateway-VTL. There is no charge for retrieving recovery points.

        ", "SetLocalConsolePassword": "

        Sets the password for your VM local console. When you log in to the local console for the first time, you log in to the VM with the default credentials. We recommend that you set a new password. You don't need to know the default password to set a new password.

        ", "ShutdownGateway": "

        Shuts down a gateway. To specify which gateway to shut down, use the Amazon Resource Name (ARN) of the gateway in the body of your request.

        The operation shuts down the gateway service component running in the storage gateway's virtual machine (VM) and not the VM.

        If you want to shut down the VM, it is recommended that you first shut down the gateway component in the VM to avoid unpredictable conditions.

        After the gateway is shutdown, you cannot call any other API except StartGateway, DescribeGatewayInformation, and ListGateways. For more information, see ActivateGateway. Your applications cannot read from or write to the gateway's storage volumes, and there are no snapshots taken.

        When you make a shutdown request, you will get a 200 OK success response immediately. However, it might take some time for the gateway to shut down. You can call the DescribeGatewayInformation API to check the status. For more information, see ActivateGateway.

        If do not intend to use the gateway again, you must delete the gateway (using DeleteGateway) to no longer pay software charges associated with the gateway.

        ", "StartGateway": "

        Starts a gateway that you previously shut down (see ShutdownGateway). After the gateway starts, you can then make other API calls, your applications can read from or write to the gateway's storage volumes and you will be able to take snapshot backups.

        When you make a request, you will get a 200 OK success response immediately. However, it might take some time for the gateway to be ready. You should call DescribeGatewayInformation and check the status before making any additional API calls. For more information, see ActivateGateway.

        To specify which gateway to start, use the Amazon Resource Name (ARN) of the gateway in your request.

        ", "UpdateBandwidthRateLimit": "

        Updates the bandwidth rate limits of a gateway. You can update both the upload and download bandwidth rate limit or specify only one of the two. If you don't set a bandwidth rate limit, the existing rate limit remains.

        By default, a gateway's bandwidth rate limits are not set. If you don't set any limit, the gateway does not have any limitations on its bandwidth usage and could potentially use the maximum available bandwidth.

        To specify which gateway to update, use the Amazon Resource Name (ARN) of the gateway in your request.

        ", "UpdateChapCredentials": "

        Updates the Challenge-Handshake Authentication Protocol (CHAP) credentials for a specified iSCSI target. By default, a gateway does not have CHAP enabled; however, for added security, you might use it.

        When you update CHAP credentials, all existing connections on the target are closed and initiators must reconnect with the new credentials.

        ", "UpdateGatewayInformation": "

        Updates a gateway's metadata, which includes the gateway's name and time zone. To specify which gateway to update, use the Amazon Resource Name (ARN) of the gateway in your request.

        For Gateways activated after September 2, 2015, the gateway's ARN contains the gateway ID rather than the gateway name. However, changing the name of the gateway has no effect on the gateway's ARN.

        ", "UpdateGatewaySoftwareNow": "

        Updates the gateway virtual machine (VM) software. The request immediately triggers the software update.

        When you make this request, you get a 200 OK success response immediately. However, it might take some time for the update to complete. You can call DescribeGatewayInformation to verify the gateway is in the STATE_RUNNING state.

        A software update forces a system restart of your gateway. You can minimize the chance of any disruption to your applications by increasing your iSCSI Initiators' timeouts. For more information about increasing iSCSI Initiator timeouts for Windows and Linux, see Customizing Your Windows iSCSI Settings and Customizing Your Linux iSCSI Settings, respectively.

        ", "UpdateMaintenanceStartTime": "

        Updates a gateway's weekly maintenance start time information, including day and time of the week. The maintenance time is the time in your gateway's time zone.

        ", "UpdateSnapshotSchedule": "

        Updates a snapshot schedule configured for a gateway volume.

        The default snapshot schedule for volume is once every 24 hours, starting at the creation time of the volume. You can use this API to change the snapshot schedule configured for the volume.

        In the request you must identify the gateway volume whose snapshot schedule you want to update, and the schedule information, including when you want the snapshot to begin on a day and the frequency (in hours) of snapshots.

        ", "UpdateVTLDeviceType": "

        Updates the type of medium changer in a gateway-VTL. When you activate a gateway-VTL, you select a medium changer type for the gateway-VTL. This operation enables you to select a different type of medium changer after a gateway-VTL is activated.

        " }, "shapes": { "ActivateGatewayInput": { "base": "

        A JSON object containing one or more of the following fields:

        ", "refs": { } }, "ActivateGatewayOutput": { "base": "

        AWS Storage Gateway returns the Amazon Resource Name (ARN) of the activated gateway. It is a string made of information such as your account, gateway name, and region. This ARN is used to reference the gateway in other API operations as well as resource-based authorization.

        For gateways activated prior to September 02, 2015 the gateway ARN contains the gateway name rather than the gateway id. Changing the name of the gateway has no effect on the gateway ARN.

        ", "refs": { } }, "ActivationKey": { "base": null, "refs": { "ActivateGatewayInput$ActivationKey": "

        Your gateway activation key. You can obtain the activation key by sending an HTTP GET request with redirects enabled to the gateway IP address (port 80). The redirect URL returned in the response provides you the activation key for your gateway in the query string parameter activationKey. It may also include other activation-related parameters, however, these are merely defaults -- the arguments you pass to the ActivateGateway API call determine the actual configuration of your gateway.

        " } }, "AddCacheInput": { "base": null, "refs": { } }, "AddCacheOutput": { "base": null, "refs": { } }, "AddTagsToResourceInput": { "base": "

        AddTagsToResourceInput

        ", "refs": { } }, "AddTagsToResourceOutput": { "base": "

        AddTagsToResourceOutput

        ", "refs": { } }, "AddUploadBufferInput": { "base": null, "refs": { } }, "AddUploadBufferOutput": { "base": null, "refs": { } }, "AddWorkingStorageInput": { "base": "

        A JSON object containing one or more of the following fields:

        ", "refs": { } }, "AddWorkingStorageOutput": { "base": "

        A JSON object containing the of the gateway for which working storage was configured.

        ", "refs": { } }, "BandwidthDownloadRateLimit": { "base": null, "refs": { "DescribeBandwidthRateLimitOutput$AverageDownloadRateLimitInBitsPerSec": "

        The average download bandwidth rate limit in bits per second. This field does not appear in the response if the download rate limit is not set.

        ", "UpdateBandwidthRateLimitInput$AverageDownloadRateLimitInBitsPerSec": "

        The average download bandwidth rate limit in bits per second.

        " } }, "BandwidthType": { "base": null, "refs": { "DeleteBandwidthRateLimitInput$BandwidthType": null } }, "BandwidthUploadRateLimit": { "base": null, "refs": { "DescribeBandwidthRateLimitOutput$AverageUploadRateLimitInBitsPerSec": "

        The average upload bandwidth rate limit in bits per second. This field does not appear in the response if the upload rate limit is not set.

        ", "UpdateBandwidthRateLimitInput$AverageUploadRateLimitInBitsPerSec": "

        The average upload bandwidth rate limit in bits per second.

        " } }, "CachediSCSIVolume": { "base": null, "refs": { "CachediSCSIVolumes$member": null } }, "CachediSCSIVolumes": { "base": null, "refs": { "DescribeCachediSCSIVolumesOutput$CachediSCSIVolumes": "

        An array of objects where each object contains metadata about one cached volume.

        " } }, "CancelArchivalInput": { "base": "

        CancelArchivalInput

        ", "refs": { } }, "CancelArchivalOutput": { "base": "

        CancelArchivalOutput

        ", "refs": { } }, "CancelRetrievalInput": { "base": "

        CancelRetrievalInput

        ", "refs": { } }, "CancelRetrievalOutput": { "base": "

        CancelRetrievalOutput

        ", "refs": { } }, "ChapCredentials": { "base": null, "refs": { "DescribeChapCredentialsOutput$ChapCredentials": "

        An array of ChapInfo objects that represent CHAP credentials. Each object in the array contains CHAP credential information for one target-initiator pair. If no CHAP credentials are set, an empty array is returned. CHAP credential information is provided in a JSON object with the following fields:

        • InitiatorName: The iSCSI initiator that connects to the target.

        • SecretToAuthenticateInitiator: The secret key that the initiator (for example, the Windows client) must provide to participate in mutual CHAP with the target.

        • SecretToAuthenticateTarget: The secret key that the target must provide to participate in mutual CHAP with the initiator (e.g. Windows client).

        • TargetARN: The Amazon Resource Name (ARN) of the storage volume.

        " } }, "ChapInfo": { "base": "

        Describes Challenge-Handshake Authentication Protocol (CHAP) information that supports authentication between your gateway and iSCSI initiators.

        ", "refs": { "ChapCredentials$member": null } }, "ChapSecret": { "base": null, "refs": { "ChapInfo$SecretToAuthenticateInitiator": "

        The secret key that the initiator (for example, the Windows client) must provide to participate in mutual CHAP with the target.

        ", "ChapInfo$SecretToAuthenticateTarget": "

        The secret key that the target must provide to participate in mutual CHAP with the initiator (e.g. Windows client).

        ", "UpdateChapCredentialsInput$SecretToAuthenticateInitiator": "

        The secret key that the initiator (for example, the Windows client) must provide to participate in mutual CHAP with the target.

        The secret key must be between 12 and 16 bytes when encoded in UTF-8.

        ", "UpdateChapCredentialsInput$SecretToAuthenticateTarget": "

        The secret key that the target must provide to participate in mutual CHAP with the initiator (e.g. Windows client).

        Byte constraints: Minimum bytes of 12. Maximum bytes of 16.

        The secret key must be between 12 and 16 bytes when encoded in UTF-8.

        " } }, "ClientToken": { "base": null, "refs": { "CreateCachediSCSIVolumeInput$ClientToken": null, "CreateTapesInput$ClientToken": "

        A unique identifier that you use to retry a request. If you retry a request, use the same ClientToken you specified in the initial request.

        Using the same ClientToken prevents creating the tape multiple times.

        " } }, "CreateCachediSCSIVolumeInput": { "base": null, "refs": { } }, "CreateCachediSCSIVolumeOutput": { "base": null, "refs": { } }, "CreateSnapshotFromVolumeRecoveryPointInput": { "base": null, "refs": { } }, "CreateSnapshotFromVolumeRecoveryPointOutput": { "base": null, "refs": { } }, "CreateSnapshotInput": { "base": "

        A JSON object containing one or more of the following fields:

        ", "refs": { } }, "CreateSnapshotOutput": { "base": "

        A JSON object containing the following fields:

        ", "refs": { } }, "CreateStorediSCSIVolumeInput": { "base": "

        A JSON object containing one or more of the following fields:

        ", "refs": { } }, "CreateStorediSCSIVolumeOutput": { "base": "

        A JSON object containing the following fields:

        ", "refs": { } }, "CreateTapeWithBarcodeInput": { "base": "

        CreateTapeWithBarcodeInput

        ", "refs": { } }, "CreateTapeWithBarcodeOutput": { "base": "

        CreateTapeOutput

        ", "refs": { } }, "CreateTapesInput": { "base": "

        CreateTapesInput

        ", "refs": { } }, "CreateTapesOutput": { "base": "

        CreateTapeOutput

        ", "refs": { } }, "DayOfWeek": { "base": null, "refs": { "DescribeMaintenanceStartTimeOutput$DayOfWeek": null, "UpdateMaintenanceStartTimeInput$DayOfWeek": "

        The maintenance start time day of the week.

        " } }, "DeleteBandwidthRateLimitInput": { "base": null, "refs": { } }, "DeleteBandwidthRateLimitOutput": { "base": "

        A JSON object containing the of the gateway whose bandwidth rate information was deleted.

        ", "refs": { } }, "DeleteChapCredentialsInput": { "base": "

        A JSON object containing one or more of the following fields:

        ", "refs": { } }, "DeleteChapCredentialsOutput": { "base": "

        A JSON object containing the following fields:

        ", "refs": { } }, "DeleteGatewayInput": { "base": "

        A JSON object containing the id of the gateway to delete.

        ", "refs": { } }, "DeleteGatewayOutput": { "base": "

        A JSON object containing the id of the deleted gateway.

        ", "refs": { } }, "DeleteSnapshotScheduleInput": { "base": null, "refs": { } }, "DeleteSnapshotScheduleOutput": { "base": null, "refs": { } }, "DeleteTapeArchiveInput": { "base": "

        DeleteTapeArchiveInput

        ", "refs": { } }, "DeleteTapeArchiveOutput": { "base": "

        DeleteTapeArchiveOutput

        ", "refs": { } }, "DeleteTapeInput": { "base": "

        DeleteTapeInput

        ", "refs": { } }, "DeleteTapeOutput": { "base": "

        DeleteTapeOutput

        ", "refs": { } }, "DeleteVolumeInput": { "base": "

        A JSON object containing the DeleteVolumeInput$VolumeARN to delete.

        ", "refs": { } }, "DeleteVolumeOutput": { "base": "

        A JSON object containing the of the storage volume that was deleted

        ", "refs": { } }, "DescribeBandwidthRateLimitInput": { "base": "

        A JSON object containing the of the gateway.

        ", "refs": { } }, "DescribeBandwidthRateLimitOutput": { "base": "

        A JSON object containing the following fields:

        ", "refs": { } }, "DescribeCacheInput": { "base": null, "refs": { } }, "DescribeCacheOutput": { "base": null, "refs": { } }, "DescribeCachediSCSIVolumesInput": { "base": null, "refs": { } }, "DescribeCachediSCSIVolumesOutput": { "base": "

        A JSON object containing the following fields:

        ", "refs": { } }, "DescribeChapCredentialsInput": { "base": "

        A JSON object containing the Amazon Resource Name (ARN) of the iSCSI volume target.

        ", "refs": { } }, "DescribeChapCredentialsOutput": { "base": "

        A JSON object containing a .

        ", "refs": { } }, "DescribeGatewayInformationInput": { "base": "

        A JSON object containing the id of the gateway.

        ", "refs": { } }, "DescribeGatewayInformationOutput": { "base": "

        A JSON object containing the following fields:

        ", "refs": { } }, "DescribeMaintenanceStartTimeInput": { "base": "

        A JSON object containing the of the gateway.

        ", "refs": { } }, "DescribeMaintenanceStartTimeOutput": { "base": null, "refs": { } }, "DescribeSnapshotScheduleInput": { "base": "

        A JSON object containing the DescribeSnapshotScheduleInput$VolumeARN of the volume.

        ", "refs": { } }, "DescribeSnapshotScheduleOutput": { "base": null, "refs": { } }, "DescribeStorediSCSIVolumesInput": { "base": "

        A JSON object containing a list of DescribeStorediSCSIVolumesInput$VolumeARNs.

        ", "refs": { } }, "DescribeStorediSCSIVolumesOutput": { "base": null, "refs": { } }, "DescribeTapeArchivesInput": { "base": "

        DescribeTapeArchivesInput

        ", "refs": { } }, "DescribeTapeArchivesOutput": { "base": "

        DescribeTapeArchivesOutput

        ", "refs": { } }, "DescribeTapeRecoveryPointsInput": { "base": "

        DescribeTapeRecoveryPointsInput

        ", "refs": { } }, "DescribeTapeRecoveryPointsOutput": { "base": "

        DescribeTapeRecoveryPointsOutput

        ", "refs": { } }, "DescribeTapesInput": { "base": "

        DescribeTapesInput

        ", "refs": { } }, "DescribeTapesOutput": { "base": "

        DescribeTapesOutput

        ", "refs": { } }, "DescribeUploadBufferInput": { "base": null, "refs": { } }, "DescribeUploadBufferOutput": { "base": null, "refs": { } }, "DescribeVTLDevicesInput": { "base": "

        DescribeVTLDevicesInput

        ", "refs": { } }, "DescribeVTLDevicesOutput": { "base": "

        DescribeVTLDevicesOutput

        ", "refs": { } }, "DescribeWorkingStorageInput": { "base": "

        A JSON object containing the of the gateway.

        ", "refs": { } }, "DescribeWorkingStorageOutput": { "base": "

        A JSON object containing the following fields:

        ", "refs": { } }, "Description": { "base": null, "refs": { "DescribeSnapshotScheduleOutput$Description": null, "UpdateSnapshotScheduleInput$Description": "

        Optional description of the snapshot that overwrites the existing description.

        " } }, "DeviceType": { "base": null, "refs": { "UpdateVTLDeviceTypeInput$DeviceType": "

        The type of medium changer you want to select.

        Valid Values: \"STK-L700\", \"AWS-Gateway-VTL\"

        " } }, "DeviceiSCSIAttributes": { "base": "

        Lists iSCSI information about a VTL device.

        ", "refs": { "VTLDevice$DeviceiSCSIAttributes": "

        A list of iSCSI information about a VTL device.

        " } }, "DisableGatewayInput": { "base": "

        DisableGatewayInput

        ", "refs": { } }, "DisableGatewayOutput": { "base": "

        DisableGatewayOutput

        ", "refs": { } }, "Disk": { "base": null, "refs": { "Disks$member": null } }, "DiskAllocationType": { "base": null, "refs": { "Disk$DiskAllocationType": null } }, "DiskId": { "base": null, "refs": { "CreateStorediSCSIVolumeInput$DiskId": "

        The unique identifier for the gateway local disk that is configured as a stored volume. Use ListLocalDisks to list disk IDs for a gateway.

        ", "Disk$DiskId": null, "DiskIds$member": null, "StorediSCSIVolume$VolumeDiskId": null } }, "DiskIds": { "base": null, "refs": { "AddCacheInput$DiskIds": null, "AddUploadBufferInput$DiskIds": null, "AddWorkingStorageInput$DiskIds": "

        An array of strings that identify disks that are to be configured as working storage. Each string have a minimum length of 1 and maximum length of 300. You can get the disk IDs from the ListLocalDisks API.

        ", "DescribeCacheOutput$DiskIds": null, "DescribeUploadBufferOutput$DiskIds": null, "DescribeWorkingStorageOutput$DiskIds": "

        An array of the gateway's local disk IDs that are configured as working storage. Each local disk ID is specified as a string (minimum length of 1 and maximum length of 300). If no local disks are configured as working storage, then the DiskIds array is empty.

        " } }, "Disks": { "base": null, "refs": { "ListLocalDisksOutput$Disks": null } }, "DoubleObject": { "base": null, "refs": { "CachediSCSIVolume$VolumeProgress": null, "StorediSCSIVolume$VolumeProgress": null, "Tape$Progress": "

        For archiving virtual tapes, indicates how much data remains to be uploaded before archiving is complete.

        Range: 0 (not started) to 100 (complete).

        " } }, "ErrorCode": { "base": null, "refs": { "StorageGatewayError$errorCode": "

        Additional information about the error.

        " } }, "GatewayARN": { "base": "

        The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and region.

        ", "refs": { "ActivateGatewayOutput$GatewayARN": null, "AddCacheInput$GatewayARN": null, "AddCacheOutput$GatewayARN": null, "AddUploadBufferInput$GatewayARN": null, "AddUploadBufferOutput$GatewayARN": null, "AddWorkingStorageInput$GatewayARN": null, "AddWorkingStorageOutput$GatewayARN": null, "CancelArchivalInput$GatewayARN": null, "CancelRetrievalInput$GatewayARN": null, "CreateCachediSCSIVolumeInput$GatewayARN": null, "CreateStorediSCSIVolumeInput$GatewayARN": null, "CreateTapeWithBarcodeInput$GatewayARN": "

        The unique Amazon Resource Name (ARN) that represents the gateway to associate the virtual tape with. Use the ListGateways operation to return a list of gateways for your account and region.

        ", "CreateTapesInput$GatewayARN": "

        The unique Amazon Resource Name (ARN) that represents the gateway to associate the virtual tapes with. Use the ListGateways operation to return a list of gateways for your account and region.

        ", "DeleteBandwidthRateLimitInput$GatewayARN": null, "DeleteBandwidthRateLimitOutput$GatewayARN": null, "DeleteGatewayInput$GatewayARN": null, "DeleteGatewayOutput$GatewayARN": null, "DeleteTapeInput$GatewayARN": "

        The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to delete is associated with. Use the ListGateways operation to return a list of gateways for your account and region.

        ", "DescribeBandwidthRateLimitInput$GatewayARN": null, "DescribeBandwidthRateLimitOutput$GatewayARN": null, "DescribeCacheInput$GatewayARN": null, "DescribeCacheOutput$GatewayARN": null, "DescribeGatewayInformationInput$GatewayARN": null, "DescribeGatewayInformationOutput$GatewayARN": null, "DescribeMaintenanceStartTimeInput$GatewayARN": null, "DescribeMaintenanceStartTimeOutput$GatewayARN": null, "DescribeTapeRecoveryPointsInput$GatewayARN": null, "DescribeTapeRecoveryPointsOutput$GatewayARN": null, "DescribeTapesInput$GatewayARN": null, "DescribeUploadBufferInput$GatewayARN": null, "DescribeUploadBufferOutput$GatewayARN": null, "DescribeVTLDevicesInput$GatewayARN": null, "DescribeVTLDevicesOutput$GatewayARN": null, "DescribeWorkingStorageInput$GatewayARN": null, "DescribeWorkingStorageOutput$GatewayARN": null, "DisableGatewayInput$GatewayARN": null, "DisableGatewayOutput$GatewayARN": "

        The unique Amazon Resource Name of the disabled gateway.

        ", "GatewayInfo$GatewayARN": "

        The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and region.

        ", "ListLocalDisksInput$GatewayARN": null, "ListLocalDisksOutput$GatewayARN": null, "ListVolumeRecoveryPointsInput$GatewayARN": null, "ListVolumeRecoveryPointsOutput$GatewayARN": null, "ListVolumesInput$GatewayARN": null, "ListVolumesOutput$GatewayARN": null, "ResetCacheInput$GatewayARN": null, "ResetCacheOutput$GatewayARN": null, "RetrieveTapeArchiveInput$GatewayARN": "

        The Amazon Resource Name (ARN) of the gateway you want to retrieve the virtual tape to. Use the ListGateways operation to return a list of gateways for your account and region.

        You retrieve archived virtual tapes to only one gateway and the gateway must be a gateway-VTL.

        ", "RetrieveTapeRecoveryPointInput$GatewayARN": null, "SetLocalConsolePasswordInput$GatewayARN": null, "SetLocalConsolePasswordOutput$GatewayARN": null, "ShutdownGatewayInput$GatewayARN": null, "ShutdownGatewayOutput$GatewayARN": null, "StartGatewayInput$GatewayARN": null, "StartGatewayOutput$GatewayARN": null, "TapeArchive$RetrievedTo": "

        The Amazon Resource Name (ARN) of the gateway-VTL that the virtual tape is being retrieved to.

        The virtual tape is retrieved from the virtual tape shelf (VTS).

        ", "TapeInfo$GatewayARN": "

        The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and region.

        ", "UpdateBandwidthRateLimitInput$GatewayARN": null, "UpdateBandwidthRateLimitOutput$GatewayARN": null, "UpdateGatewayInformationInput$GatewayARN": null, "UpdateGatewayInformationOutput$GatewayARN": null, "UpdateGatewaySoftwareNowInput$GatewayARN": null, "UpdateGatewaySoftwareNowOutput$GatewayARN": null, "UpdateMaintenanceStartTimeInput$GatewayARN": null, "UpdateMaintenanceStartTimeOutput$GatewayARN": null, "VolumeInfo$GatewayARN": null } }, "GatewayId": { "base": null, "refs": { "DescribeGatewayInformationOutput$GatewayId": "

        The unique identifier assigned to your gateway during activation. This ID becomes part of the gateway Amazon Resource Name (ARN), which you use as input for other operations.

        ", "GatewayInfo$GatewayId": "

        The unique identifier assigned to your gateway during activation. This ID becomes part of the gateway Amazon Resource Name (ARN), which you use as input for other operations.

        ", "VolumeInfo$GatewayId": "

        The unique identifier assigned to your gateway during activation. This ID becomes part of the gateway Amazon Resource Name (ARN), which you use as input for other operations.

        Valid Values: 50 to 500 lowercase letters, numbers, periods (.), and hyphens (-).

        " } }, "GatewayInfo": { "base": "

        Describes a gateway object.

        ", "refs": { "Gateways$member": null } }, "GatewayName": { "base": "

        The name you configured for your gateway.

        ", "refs": { "ActivateGatewayInput$GatewayName": "

        The name you configured for your gateway.

        ", "UpdateGatewayInformationInput$GatewayName": null } }, "GatewayNetworkInterfaces": { "base": null, "refs": { "DescribeGatewayInformationOutput$GatewayNetworkInterfaces": "

        A NetworkInterface array that contains descriptions of the gateway network interfaces.

        " } }, "GatewayOperationalState": { "base": null, "refs": { "GatewayInfo$GatewayOperationalState": "

        The state of the gateway.

        Valid Values: DISABLED or ACTIVE

        " } }, "GatewayState": { "base": null, "refs": { "DescribeGatewayInformationOutput$GatewayState": "

        A value that indicates the operating state of the gateway.

        " } }, "GatewayTimezone": { "base": null, "refs": { "ActivateGatewayInput$GatewayTimezone": "

        A value that indicates the time zone you want to set for the gateway. The time zone is used, for example, for scheduling snapshots and your gateway's maintenance schedule.

        ", "DescribeGatewayInformationOutput$GatewayTimezone": "

        A value that indicates the time zone configured for the gateway.

        ", "DescribeMaintenanceStartTimeOutput$Timezone": null, "DescribeSnapshotScheduleOutput$Timezone": null, "UpdateGatewayInformationInput$GatewayTimezone": null } }, "GatewayType": { "base": null, "refs": { "ActivateGatewayInput$GatewayType": "

        A value that defines the type of gateway to activate. The type specified is critical to all later functions of the gateway and cannot be changed after activation. The default value is STORED.

        ", "DescribeGatewayInformationOutput$GatewayType": "

        The type of the gateway.

        ", "GatewayInfo$GatewayType": "

        The type of the gateway.

        " } }, "Gateways": { "base": null, "refs": { "ListGatewaysOutput$Gateways": null } }, "HourOfDay": { "base": null, "refs": { "DescribeMaintenanceStartTimeOutput$HourOfDay": null, "DescribeSnapshotScheduleOutput$StartAt": null, "UpdateMaintenanceStartTimeInput$HourOfDay": "

        The hour component of the maintenance start time represented as hh, where hh is the hour (00 to 23). The hour of the day is in the time zone of the gateway.

        ", "UpdateSnapshotScheduleInput$StartAt": "

        The hour of the day at which the snapshot schedule begins represented as hh, where hh is the hour (0 to 23). The hour of the day is in the time zone of the gateway.

        " } }, "Initiator": { "base": null, "refs": { "Initiators$member": null } }, "Initiators": { "base": null, "refs": { "ListVolumeInitiatorsOutput$Initiators": "

        The host names and port numbers of all iSCSI initiators that are connected to the gateway.

        " } }, "InternalServerError": { "base": "

        An internal server error has occurred during the request. For more information, see the error and message fields.

        ", "refs": { } }, "InvalidGatewayRequestException": { "base": "

        An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

        ", "refs": { } }, "IqnName": { "base": null, "refs": { "ChapInfo$InitiatorName": "

        The iSCSI initiator that connects to the target.

        ", "DeleteChapCredentialsInput$InitiatorName": "

        The iSCSI initiator that connects to the target.

        ", "DeleteChapCredentialsOutput$InitiatorName": "

        The iSCSI initiator that connects to the target.

        ", "UpdateChapCredentialsInput$InitiatorName": "

        The iSCSI initiator that connects to the target.

        ", "UpdateChapCredentialsOutput$InitiatorName": "

        The iSCSI initiator that connects to the target. This is the same initiator name specified in the request.

        " } }, "LastSoftwareUpdate": { "base": null, "refs": { "DescribeGatewayInformationOutput$LastSoftwareUpdate": "

        The date on which the last software update was applied to the gateway. If the gateway has never been updated, this field does not return a value in the response.

        " } }, "ListGatewaysInput": { "base": "

        A JSON object containing zero or more of the following fields:

        ", "refs": { } }, "ListGatewaysOutput": { "base": null, "refs": { } }, "ListLocalDisksInput": { "base": "

        A JSON object containing the of the gateway.

        ", "refs": { } }, "ListLocalDisksOutput": { "base": null, "refs": { } }, "ListTagsForResourceInput": { "base": "

        ListTagsForResourceInput

        ", "refs": { } }, "ListTagsForResourceOutput": { "base": "

        ListTagsForResourceOutput

        ", "refs": { } }, "ListTapesInput": { "base": "

        A JSON object that contains one or more of the following fields:

        ", "refs": { } }, "ListTapesOutput": { "base": "

        A JSON object containing the following fields:

        ", "refs": { } }, "ListVolumeInitiatorsInput": { "base": "

        ListVolumeInitiatorsInput

        ", "refs": { } }, "ListVolumeInitiatorsOutput": { "base": "

        ListVolumeInitiatorsOutput

        ", "refs": { } }, "ListVolumeRecoveryPointsInput": { "base": null, "refs": { } }, "ListVolumeRecoveryPointsOutput": { "base": null, "refs": { } }, "ListVolumesInput": { "base": "

        A JSON object that contains one or more of the following fields:

        ", "refs": { } }, "ListVolumesOutput": { "base": null, "refs": { } }, "LocalConsolePassword": { "base": null, "refs": { "SetLocalConsolePasswordInput$LocalConsolePassword": "

        The password you want to set for your VM local console.

        " } }, "Marker": { "base": null, "refs": { "DescribeTapeArchivesInput$Marker": "

        An opaque string that indicates the position at which to begin describing virtual tapes.

        ", "DescribeTapeArchivesOutput$Marker": "

        An opaque string that indicates the position at which the virtual tapes that were fetched for description ended. Use this marker in your next request to fetch the next set of virtual tapes in the virtual tape shelf (VTS). If there are no more virtual tapes to describe, this field does not appear in the response.

        ", "DescribeTapeRecoveryPointsInput$Marker": "

        An opaque string that indicates the position at which to begin describing the virtual tape recovery points.

        ", "DescribeTapeRecoveryPointsOutput$Marker": "

        An opaque string that indicates the position at which the virtual tape recovery points that were listed for description ended.

        Use this marker in your next request to list the next set of virtual tape recovery points in the list. If there are no more recovery points to describe, this field does not appear in the response.

        ", "DescribeTapesInput$Marker": "

        A marker value, obtained in a previous call to DescribeTapes. This marker indicates which page of results to retrieve.

        If not specified, the first page of results is retrieved.

        ", "DescribeTapesOutput$Marker": "

        An opaque string which can be used as part of a subsequent DescribeTapes call to retrieve the next page of results.

        If a response does not contain a marker, then there are no more results to be retrieved.

        ", "DescribeVTLDevicesInput$Marker": "

        An opaque string that indicates the position at which to begin describing the VTL devices.

        ", "DescribeVTLDevicesOutput$Marker": "

        An opaque string that indicates the position at which the VTL devices that were fetched for description ended. Use the marker in your next request to fetch the next set of VTL devices in the list. If there are no more VTL devices to describe, this field does not appear in the response.

        ", "ListGatewaysInput$Marker": "

        An opaque string that indicates the position at which to begin the returned list of gateways.

        ", "ListGatewaysOutput$Marker": null, "ListTagsForResourceInput$Marker": "

        An opaque string that indicates the position at which to begin returning the list of tags.

        ", "ListTagsForResourceOutput$Marker": "

        An opaque string that indicates the position at which to stop returning the list of tags.

        ", "ListTapesInput$Marker": "

        A string that indicates the position at which to begin the returned list of tapes.

        ", "ListTapesOutput$Marker": "

        A string that indicates the position at which to begin returning the next list of tapes. Use the marker in your next request to continue pagination of tapes. If there are no more tapes to list, this element does not appear in the response body.

        ", "ListVolumesInput$Marker": "

        A string that indicates the position at which to begin the returned list of volumes. Obtain the marker from the response of a previous List iSCSI Volumes request.

        ", "ListVolumesOutput$Marker": null } }, "MediumChangerType": { "base": null, "refs": { "ActivateGatewayInput$MediumChangerType": "

        The value that indicates the type of medium changer to use for gateway-VTL. This field is optional.

        Valid Values: \"STK-L700\", \"AWS-Gateway-VTL\"

        " } }, "MinuteOfHour": { "base": null, "refs": { "DescribeMaintenanceStartTimeOutput$MinuteOfHour": null, "UpdateMaintenanceStartTimeInput$MinuteOfHour": "

        The minute component of the maintenance start time represented as mm, where mm is the minute (00 to 59). The minute of the hour is in the time zone of the gateway.

        " } }, "NetworkInterface": { "base": "

        Describes a gateway's network interface.

        ", "refs": { "GatewayNetworkInterfaces$member": null } }, "NetworkInterfaceId": { "base": null, "refs": { "CreateCachediSCSIVolumeInput$NetworkInterfaceId": null, "CreateStorediSCSIVolumeInput$NetworkInterfaceId": "

        The network interface of the gateway on which to expose the iSCSI target. Only IPv4 addresses are accepted. Use DescribeGatewayInformation to get a list of the network interfaces available on a gateway.

        Valid Values: A valid IP address.

        ", "DeviceiSCSIAttributes$NetworkInterfaceId": "

        The network interface identifier of the VTL device.

        ", "VolumeiSCSIAttributes$NetworkInterfaceId": "

        The network interface identifier.

        " } }, "NextUpdateAvailabilityDate": { "base": null, "refs": { "DescribeGatewayInformationOutput$NextUpdateAvailabilityDate": "

        The date on which an update to the gateway is available. This date is in the time zone of the gateway. If the gateway is not available for an update this field is not returned in the response.

        " } }, "NumTapesToCreate": { "base": null, "refs": { "CreateTapesInput$NumTapesToCreate": "

        The number of virtual tapes that you want to create.

        " } }, "PositiveIntObject": { "base": null, "refs": { "DescribeTapeArchivesInput$Limit": "

        Specifies that the number of virtual tapes descried be limited to the specified number.

        ", "DescribeTapeRecoveryPointsInput$Limit": "

        Specifies that the number of virtual tape recovery points that are described be limited to the specified number.

        ", "DescribeTapesInput$Limit": "

        Specifies that the number of virtual tapes described be limited to the specified number.

        Amazon Web Services may impose its own limit, if this field is not set.

        ", "DescribeVTLDevicesInput$Limit": "

        Specifies that the number of VTL devices described be limited to the specified number.

        ", "ListGatewaysInput$Limit": "

        Specifies that the list of gateways returned be limited to the specified number of items.

        ", "ListTagsForResourceInput$Limit": "

        Specifies that the list of tags returned be limited to the specified number of items.

        ", "ListTapesInput$Limit": "

        An optional number limit for the tapes in the list returned by this call.

        ", "ListVolumesInput$Limit": "

        Specifies that the list of volumes returned be limited to the specified number of items.

        ", "VolumeiSCSIAttributes$LunNumber": "

        The logical disk number.

        " } }, "RecurrenceInHours": { "base": null, "refs": { "DescribeSnapshotScheduleOutput$RecurrenceInHours": null, "UpdateSnapshotScheduleInput$RecurrenceInHours": "

        Frequency of snapshots. Specify the number of hours between snapshots.

        " } }, "RegionId": { "base": null, "refs": { "ActivateGatewayInput$GatewayRegion": "

        A value that indicates the region where you want to store the snapshot backups. The gateway region specified must be the same region as the region in your Host header in the request. For more information about available regions and endpoints for AWS Storage Gateway, see Regions and Endpoints in the Amazon Web Services Glossary.

        Valid Values: \"us-east-1\", \"us-west-1\", \"us-west-2\", \"eu-west-1\", \"eu-central-1\", \"ap-northeast-1\", \"ap-northeast-2\", \"ap-southeast-1\", \"ap-southeast-2\", \"sa-east-1\"

        " } }, "RemoveTagsFromResourceInput": { "base": "

        RemoveTagsFromResourceInput

        ", "refs": { } }, "RemoveTagsFromResourceOutput": { "base": "

        RemoveTagsFromResourceOutput

        ", "refs": { } }, "ResetCacheInput": { "base": null, "refs": { } }, "ResetCacheOutput": { "base": null, "refs": { } }, "ResourceARN": { "base": null, "refs": { "AddTagsToResourceInput$ResourceARN": "

        The Amazon Resource Name (ARN) of the resource you want to add tags to.

        ", "AddTagsToResourceOutput$ResourceARN": "

        The Amazon Resource Name (ARN) of the resource you want to add tags to.

        ", "ListTagsForResourceInput$ResourceARN": "

        The Amazon Resource Name (ARN) of the resource for which you want to list tags.

        ", "ListTagsForResourceOutput$ResourceARN": "

        he Amazon Resource Name (ARN) of the resource for which you want to list tags.

        ", "RemoveTagsFromResourceInput$ResourceARN": "

        The Amazon Resource Name (ARN) of the resource you want to remove the tags from.

        ", "RemoveTagsFromResourceOutput$ResourceARN": "

        The Amazon Resource Name (ARN) of the resource that the tags were removed from.

        " } }, "RetrieveTapeArchiveInput": { "base": "

        RetrieveTapeArchiveInput

        ", "refs": { } }, "RetrieveTapeArchiveOutput": { "base": "

        RetrieveTapeArchiveOutput

        ", "refs": { } }, "RetrieveTapeRecoveryPointInput": { "base": "

        RetrieveTapeRecoveryPointInput

        ", "refs": { } }, "RetrieveTapeRecoveryPointOutput": { "base": "

        RetrieveTapeRecoveryPointOutput

        ", "refs": { } }, "SetLocalConsolePasswordInput": { "base": "

        SetLocalConsolePasswordInput

        ", "refs": { } }, "SetLocalConsolePasswordOutput": { "base": null, "refs": { } }, "ShutdownGatewayInput": { "base": "

        A JSON object containing the of the gateway to shut down.

        ", "refs": { } }, "ShutdownGatewayOutput": { "base": "

        A JSON object containing the of the gateway that was shut down.

        ", "refs": { } }, "SnapshotDescription": { "base": null, "refs": { "CreateSnapshotFromVolumeRecoveryPointInput$SnapshotDescription": null, "CreateSnapshotInput$SnapshotDescription": "

        Textual description of the snapshot that appears in the Amazon EC2 console, Elastic Block Store snapshots panel in the Description field, and in the AWS Storage Gateway snapshot Details pane, Description field

        " } }, "SnapshotId": { "base": null, "refs": { "CachediSCSIVolume$SourceSnapshotId": null, "CreateCachediSCSIVolumeInput$SnapshotId": null, "CreateSnapshotFromVolumeRecoveryPointOutput$SnapshotId": null, "CreateSnapshotOutput$SnapshotId": "

        The snapshot ID that is used to refer to the snapshot in future operations such as describing snapshots (Amazon Elastic Compute Cloud API DescribeSnapshots) or creating a volume from a snapshot (CreateStorediSCSIVolume).

        ", "CreateStorediSCSIVolumeInput$SnapshotId": "

        The snapshot ID (e.g. \"snap-1122aabb\") of the snapshot to restore as the new stored volume. Specify this field if you want to create the iSCSI storage volume from a snapshot otherwise do not include this field. To list snapshots for your account use DescribeSnapshots in the Amazon Elastic Compute Cloud API Reference.

        ", "StorediSCSIVolume$SourceSnapshotId": null } }, "StartGatewayInput": { "base": "

        A JSON object containing the of the gateway to start.

        ", "refs": { } }, "StartGatewayOutput": { "base": "

        A JSON object containing the of the gateway that was restarted.

        ", "refs": { } }, "StorageGatewayError": { "base": "

        Provides additional information about an error that was returned by the service as an or. See the errorCode and errorDetails members for more information about the error.

        ", "refs": { "InternalServerError$error": "

        A StorageGatewayError that provides more information about the cause of the error.

        ", "InvalidGatewayRequestException$error": "

        A StorageGatewayError that provides more detail about the cause of the error.

        " } }, "StorediSCSIVolume": { "base": null, "refs": { "StorediSCSIVolumes$member": null } }, "StorediSCSIVolumes": { "base": null, "refs": { "DescribeStorediSCSIVolumesOutput$StorediSCSIVolumes": null } }, "Tag": { "base": null, "refs": { "Tags$member": null } }, "TagKey": { "base": null, "refs": { "Tag$Key": null, "TagKeys$member": null } }, "TagKeys": { "base": null, "refs": { "RemoveTagsFromResourceInput$TagKeys": "

        The keys of the tags you want to remove from the specified resource. A tag is composed of a key/value pair.

        " } }, "TagValue": { "base": null, "refs": { "Tag$Value": null } }, "Tags": { "base": null, "refs": { "AddTagsToResourceInput$Tags": "

        The key-value pair that represents the tag you want to add to the resource. The value can be an empty string.

        Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the following special characters: + - = . _ : / @.

        ", "ListTagsForResourceOutput$Tags": "

        An array that contains the tags for the specified resource.

        " } }, "Tape": { "base": "

        Describes a virtual tape object.

        ", "refs": { "Tapes$member": null } }, "TapeARN": { "base": null, "refs": { "CancelArchivalInput$TapeARN": "

        The Amazon Resource Name (ARN) of the virtual tape you want to cancel archiving for.

        ", "CancelArchivalOutput$TapeARN": "

        The Amazon Resource Name (ARN) of the virtual tape for which archiving was canceled.

        ", "CancelRetrievalInput$TapeARN": "

        The Amazon Resource Name (ARN) of the virtual tape you want to cancel retrieval for.

        ", "CancelRetrievalOutput$TapeARN": "

        The Amazon Resource Name (ARN) of the virtual tape for which retrieval was canceled.

        ", "CreateTapeWithBarcodeOutput$TapeARN": "

        A unique Amazon Resource Name (ARN) that represents the virtual tape that was created.

        ", "DeleteTapeArchiveInput$TapeARN": "

        The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual tape shelf (VTS).

        ", "DeleteTapeArchiveOutput$TapeARN": "

        The Amazon Resource Name (ARN) of the virtual tape that was deleted from the virtual tape shelf (VTS).

        ", "DeleteTapeInput$TapeARN": "

        The Amazon Resource Name (ARN) of the virtual tape to delete.

        ", "DeleteTapeOutput$TapeARN": "

        The Amazon Resource Name (ARN) of the deleted virtual tape.

        ", "RetrieveTapeArchiveInput$TapeARN": "

        The Amazon Resource Name (ARN) of the virtual tape you want to retrieve from the virtual tape shelf (VTS).

        ", "RetrieveTapeArchiveOutput$TapeARN": "

        The Amazon Resource Name (ARN) of the retrieved virtual tape.

        ", "RetrieveTapeRecoveryPointInput$TapeARN": "

        The Amazon Resource Name (ARN) of the virtual tape for which you want to retrieve the recovery point.

        ", "RetrieveTapeRecoveryPointOutput$TapeARN": "

        The Amazon Resource Name (ARN) of the virtual tape for which the recovery point was retrieved.

        ", "Tape$TapeARN": "

        The Amazon Resource Name (ARN) of the virtual tape.

        ", "TapeARNs$member": null, "TapeArchive$TapeARN": "

        The Amazon Resource Name (ARN) of an archived virtual tape.

        ", "TapeInfo$TapeARN": "

        The Amazon Resource Name (ARN) of a virtual tape.

        ", "TapeRecoveryPointInfo$TapeARN": "

        The Amazon Resource Name (ARN) of the virtual tape.

        " } }, "TapeARNs": { "base": "

        The Amazon Resource Name (ARN) of each of the tapes you want to list. If you don't specify a tape ARN, the response lists all tapes in both your VTL and VTS.

        ", "refs": { "CreateTapesOutput$TapeARNs": "

        A list of unique Amazon Resource Names (ARNs) that represents the virtual tapes that were created.

        ", "DescribeTapeArchivesInput$TapeARNs": "

        Specifies one or more unique Amazon Resource Names (ARNs) that represent the virtual tapes you want to describe.

        ", "DescribeTapesInput$TapeARNs": "

        Specifies one or more unique Amazon Resource Names (ARNs) that represent the virtual tapes you want to describe. If this parameter is not specified, AWS Storage Gateway returns a description of all virtual tapes associated with the specified gateway.

        ", "ListTapesInput$TapeARNs": null } }, "TapeArchive": { "base": "

        Represents a virtual tape that is archived in the virtual tape shelf (VTS).

        ", "refs": { "TapeArchives$member": null } }, "TapeArchiveStatus": { "base": null, "refs": { "TapeArchive$TapeStatus": "

        The current state of the archived virtual tape.

        " } }, "TapeArchives": { "base": null, "refs": { "DescribeTapeArchivesOutput$TapeArchives": "

        An array of virtual tape objects in the virtual tape shelf (VTS). The description includes of the Amazon Resource Name(ARN) of the virtual tapes. The information returned includes the Amazon Resource Names (ARNs) of the tapes, size of the tapes, status of the tapes, progress of the description and tape barcode.

        " } }, "TapeBarcode": { "base": null, "refs": { "CreateTapeWithBarcodeInput$TapeBarcode": "

        The barcode that you want to assign to the tape.

        ", "Tape$TapeBarcode": "

        The barcode that identifies a specific virtual tape.

        ", "TapeArchive$TapeBarcode": "

        The barcode that identifies the archived virtual tape.

        ", "TapeInfo$TapeBarcode": "

        The barcode that identifies a specific virtual tape.

        " } }, "TapeBarcodePrefix": { "base": null, "refs": { "CreateTapesInput$TapeBarcodePrefix": "

        A prefix that you append to the barcode of the virtual tape you are creating. This prefix makes the barcode unique.

        The prefix must be 1 to 4 characters in length and must be one of the uppercase letters from A to Z.

        " } }, "TapeDriveType": { "base": null, "refs": { "ActivateGatewayInput$TapeDriveType": "

        The value that indicates the type of tape drive to use for gateway-VTL. This field is optional.

        Valid Values: \"IBM-ULT3580-TD5\"

        " } }, "TapeInfo": { "base": "

        Describes a virtual tape.

        ", "refs": { "TapeInfos$member": null } }, "TapeInfos": { "base": "

        An array of TapeInfo objects, where each object describes an a single tape. If there not tapes in the tape library or VTS, then the TapeInfos is an empty array.

        ", "refs": { "ListTapesOutput$TapeInfos": null } }, "TapeRecoveryPointInfo": { "base": "

        Describes a recovery point.

        ", "refs": { "TapeRecoveryPointInfos$member": null } }, "TapeRecoveryPointInfos": { "base": null, "refs": { "DescribeTapeRecoveryPointsOutput$TapeRecoveryPointInfos": "

        An array of TapeRecoveryPointInfos that are available for the specified gateway.

        " } }, "TapeRecoveryPointStatus": { "base": null, "refs": { "TapeRecoveryPointInfo$TapeStatus": null } }, "TapeSize": { "base": null, "refs": { "CreateTapeWithBarcodeInput$TapeSizeInBytes": "

        The size, in bytes, of the virtual tape that you want to create.

        The size must be aligned by gigabyte (1024*1024*1024 byte).

        ", "CreateTapesInput$TapeSizeInBytes": "

        The size, in bytes, of the virtual tapes that you want to create.

        The size must be aligned by gigabyte (1024*1024*1024 byte).

        ", "Tape$TapeSizeInBytes": "

        The size, in bytes, of the virtual tape.

        ", "TapeArchive$TapeSizeInBytes": "

        The size, in bytes, of the archived virtual tape.

        ", "TapeInfo$TapeSizeInBytes": "

        The size, in bytes, of a virtual tape.

        ", "TapeRecoveryPointInfo$TapeSizeInBytes": "

        The size, in bytes, of the virtual tapes to recover.

        " } }, "TapeStatus": { "base": null, "refs": { "Tape$TapeStatus": "

        The current state of the virtual tape.

        ", "TapeInfo$TapeStatus": "

        The status of the tape.

        " } }, "Tapes": { "base": null, "refs": { "DescribeTapesOutput$Tapes": "

        An array of virtual tape descriptions.

        " } }, "TargetARN": { "base": null, "refs": { "ChapInfo$TargetARN": "

        The Amazon Resource Name (ARN) of the volume.

        Valid Values: 50 to 500 lowercase letters, numbers, periods (.), and hyphens (-).

        ", "CreateCachediSCSIVolumeOutput$TargetARN": null, "CreateStorediSCSIVolumeOutput$TargetARN": "

        he Amazon Resource Name (ARN) of the volume target that includes the iSCSI name that initiators can use to connect to the target.

        ", "DeleteChapCredentialsInput$TargetARN": "

        The Amazon Resource Name (ARN) of the iSCSI volume target. Use the DescribeStorediSCSIVolumes operation to return to retrieve the TargetARN for specified VolumeARN.

        ", "DeleteChapCredentialsOutput$TargetARN": "

        The Amazon Resource Name (ARN) of the target.

        ", "DescribeChapCredentialsInput$TargetARN": "

        The Amazon Resource Name (ARN) of the iSCSI volume target. Use the DescribeStorediSCSIVolumes operation to return to retrieve the TargetARN for specified VolumeARN.

        ", "DeviceiSCSIAttributes$TargetARN": "

        Specifies the unique Amazon Resource Name(ARN) that encodes the iSCSI qualified name(iqn) of a tape drive or media changer target.

        ", "UpdateChapCredentialsInput$TargetARN": "

        The Amazon Resource Name (ARN) of the iSCSI volume target. Use the DescribeStorediSCSIVolumes operation to return the TargetARN for specified VolumeARN.

        ", "UpdateChapCredentialsOutput$TargetARN": "

        The Amazon Resource Name (ARN) of the target. This is the same target specified in the request.

        ", "VolumeiSCSIAttributes$TargetARN": "

        The Amazon Resource Name (ARN) of the volume target.

        " } }, "TargetName": { "base": null, "refs": { "CreateCachediSCSIVolumeInput$TargetName": null, "CreateStorediSCSIVolumeInput$TargetName": "

        The name of the iSCSI target used by initiators to connect to the target and as a suffix for the target ARN. For example, specifying TargetName as myvolume results in the target ARN of arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume. The target name must be unique across all volumes of a gateway.

        " } }, "Time": { "base": null, "refs": { "TapeArchive$CompletionTime": "

        The time that the archiving of the virtual tape was completed.

        The string format of the completion time is in the ISO8601 extended YYYY-MM-DD'T'HH:MM:SS'Z' format.

        ", "TapeRecoveryPointInfo$TapeRecoveryPointTime": "

        The time when the point-in-time view of the virtual tape was replicated for later recovery.

        The string format of the tape recovery point time is in the ISO8601 extended YYYY-MM-DD'T'HH:MM:SS'Z' format.

        " } }, "UpdateBandwidthRateLimitInput": { "base": "

        A JSON object containing one or more of the following fields:

        ", "refs": { } }, "UpdateBandwidthRateLimitOutput": { "base": "

        A JSON object containing the of the gateway whose throttle information was updated.

        ", "refs": { } }, "UpdateChapCredentialsInput": { "base": "

        A JSON object containing one or more of the following fields:

        ", "refs": { } }, "UpdateChapCredentialsOutput": { "base": "

        A JSON object containing the following fields:

        ", "refs": { } }, "UpdateGatewayInformationInput": { "base": null, "refs": { } }, "UpdateGatewayInformationOutput": { "base": "

        A JSON object containing the ARN of the gateway that was updated.

        ", "refs": { } }, "UpdateGatewaySoftwareNowInput": { "base": "

        A JSON object containing the of the gateway to update.

        ", "refs": { } }, "UpdateGatewaySoftwareNowOutput": { "base": "

        A JSON object containing the of the gateway that was updated.

        ", "refs": { } }, "UpdateMaintenanceStartTimeInput": { "base": "

        A JSON object containing the following fields:

        ", "refs": { } }, "UpdateMaintenanceStartTimeOutput": { "base": "

        A JSON object containing the of the gateway whose maintenance start time is updated.

        ", "refs": { } }, "UpdateSnapshotScheduleInput": { "base": "

        A JSON object containing one or more of the following fields:

        ", "refs": { } }, "UpdateSnapshotScheduleOutput": { "base": "

        A JSON object containing the of the updated storage volume.

        ", "refs": { } }, "UpdateVTLDeviceTypeInput": { "base": null, "refs": { } }, "UpdateVTLDeviceTypeOutput": { "base": "

        UpdateVTLDeviceTypeOutput

        ", "refs": { } }, "VTLDevice": { "base": "

        Represents a device object associated with a gateway-VTL.

        ", "refs": { "VTLDevices$member": null } }, "VTLDeviceARN": { "base": null, "refs": { "Tape$VTLDevice": "

        The virtual tape library (VTL) device that the virtual tape is associated with.

        ", "UpdateVTLDeviceTypeInput$VTLDeviceARN": "

        The Amazon Resource Name (ARN) of the medium changer you want to select.

        ", "UpdateVTLDeviceTypeOutput$VTLDeviceARN": "

        The Amazon Resource Name (ARN) of the medium changer you have selected.

        ", "VTLDevice$VTLDeviceARN": "

        Specifies the unique Amazon Resource Name (ARN) of the device (tape drive or media changer).

        ", "VTLDeviceARNs$member": null } }, "VTLDeviceARNs": { "base": null, "refs": { "DescribeVTLDevicesInput$VTLDeviceARNs": "

        An array of strings, where each string represents the Amazon Resource Name (ARN) of a VTL device.

        All of the specified VTL devices must be from the same gateway. If no VTL devices are specified, the result will contain all devices on the specified gateway.

        " } }, "VTLDeviceProductIdentifier": { "base": null, "refs": { "VTLDevice$VTLDeviceProductIdentifier": null } }, "VTLDeviceType": { "base": null, "refs": { "VTLDevice$VTLDeviceType": null } }, "VTLDeviceVendor": { "base": null, "refs": { "VTLDevice$VTLDeviceVendor": null } }, "VTLDevices": { "base": null, "refs": { "DescribeVTLDevicesOutput$VTLDevices": "

        An array of VTL device objects composed of the Amazon Resource Name(ARN) of the VTL devices.

        " } }, "VolumeARN": { "base": null, "refs": { "CachediSCSIVolume$VolumeARN": null, "CreateCachediSCSIVolumeOutput$VolumeARN": null, "CreateSnapshotFromVolumeRecoveryPointInput$VolumeARN": null, "CreateSnapshotFromVolumeRecoveryPointOutput$VolumeARN": null, "CreateSnapshotInput$VolumeARN": "

        The Amazon Resource Name (ARN) of the volume. Use the ListVolumes operation to return a list of gateway volumes.

        ", "CreateSnapshotOutput$VolumeARN": "

        The Amazon Resource Name (ARN) of the volume of which the snapshot was taken.

        ", "CreateStorediSCSIVolumeOutput$VolumeARN": "

        The Amazon Resource Name (ARN) of the configured volume.

        ", "DeleteSnapshotScheduleInput$VolumeARN": null, "DeleteSnapshotScheduleOutput$VolumeARN": null, "DeleteVolumeInput$VolumeARN": "

        The Amazon Resource Name (ARN) of the volume. Use the ListVolumes operation to return a list of gateway volumes.

        ", "DeleteVolumeOutput$VolumeARN": "

        The Amazon Resource Name (ARN) of the storage volume that was deleted. It is the same ARN you provided in the request.

        ", "DescribeSnapshotScheduleInput$VolumeARN": "

        The Amazon Resource Name (ARN) of the volume. Use the ListVolumes operation to return a list of gateway volumes.

        ", "DescribeSnapshotScheduleOutput$VolumeARN": null, "ListVolumeInitiatorsInput$VolumeARN": "

        The Amazon Resource Name (ARN) of the volume. Use the ListVolumes operation to return a list of gateway volumes for the gateway.

        ", "StorediSCSIVolume$VolumeARN": null, "UpdateSnapshotScheduleInput$VolumeARN": "

        The Amazon Resource Name (ARN) of the volume. Use the ListVolumes operation to return a list of gateway volumes.

        ", "UpdateSnapshotScheduleOutput$VolumeARN": "

        ", "VolumeARNs$member": null, "VolumeInfo$VolumeARN": "

        The Amazon Resource Name (ARN) for the storage volume. For example, the following is a valid ARN:

        arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB

        Valid Values: 50 to 500 lowercase letters, numbers, periods (.), and hyphens (-).

        ", "VolumeRecoveryPointInfo$VolumeARN": null } }, "VolumeARNs": { "base": null, "refs": { "DescribeCachediSCSIVolumesInput$VolumeARNs": null, "DescribeStorediSCSIVolumesInput$VolumeARNs": "

        An array of strings where each string represents the Amazon Resource Name (ARN) of a stored volume. All of the specified stored volumes must from the same gateway. Use ListVolumes to get volume ARNs for a gateway.

        " } }, "VolumeId": { "base": null, "refs": { "CachediSCSIVolume$VolumeId": null, "StorediSCSIVolume$VolumeId": null, "VolumeInfo$VolumeId": "

        The unique identifier assigned to the volume. This ID becomes part of the volume Amazon Resource Name (ARN), which you use as input for other operations.

        Valid Values: 50 to 500 lowercase letters, numbers, periods (.), and hyphens (-).

        " } }, "VolumeInfo": { "base": "

        Describes a storage volume object.

        ", "refs": { "VolumeInfos$member": null } }, "VolumeInfos": { "base": null, "refs": { "ListVolumesOutput$VolumeInfos": null } }, "VolumeRecoveryPointInfo": { "base": null, "refs": { "VolumeRecoveryPointInfos$member": null } }, "VolumeRecoveryPointInfos": { "base": null, "refs": { "ListVolumeRecoveryPointsOutput$VolumeRecoveryPointInfos": null } }, "VolumeStatus": { "base": null, "refs": { "CachediSCSIVolume$VolumeStatus": null, "StorediSCSIVolume$VolumeStatus": null } }, "VolumeType": { "base": null, "refs": { "CachediSCSIVolume$VolumeType": null, "StorediSCSIVolume$VolumeType": null, "VolumeInfo$VolumeType": null } }, "VolumeiSCSIAttributes": { "base": "

        Lists iSCSI information about a volume.

        ", "refs": { "CachediSCSIVolume$VolumeiSCSIAttributes": null, "StorediSCSIVolume$VolumeiSCSIAttributes": null } }, "boolean": { "base": null, "refs": { "CreateStorediSCSIVolumeInput$PreserveExistingData": "

        Specify this field as true if you want to preserve the data on the local disk. Otherwise, specifying this field as false creates an empty volume.

        Valid Values: true, false

        ", "DeviceiSCSIAttributes$ChapEnabled": "

        Indicates whether mutual CHAP is enabled for the iSCSI target.

        ", "StorediSCSIVolume$PreservedExistingData": null, "VolumeiSCSIAttributes$ChapEnabled": "

        Indicates whether mutual CHAP is enabled for the iSCSI target.

        " } }, "double": { "base": null, "refs": { "DescribeCacheOutput$CacheUsedPercentage": null, "DescribeCacheOutput$CacheDirtyPercentage": null, "DescribeCacheOutput$CacheHitPercentage": null, "DescribeCacheOutput$CacheMissPercentage": null } }, "errorDetails": { "base": null, "refs": { "StorageGatewayError$errorDetails": "

        Human-readable text that provides detail about the error that occurred.

        " } }, "integer": { "base": null, "refs": { "DeviceiSCSIAttributes$NetworkInterfacePort": "

        The port used to communicate with iSCSI VTL device targets.

        ", "VolumeiSCSIAttributes$NetworkInterfacePort": "

        The port used to communicate with iSCSI targets.

        " } }, "long": { "base": null, "refs": { "CachediSCSIVolume$VolumeSizeInBytes": null, "CreateCachediSCSIVolumeInput$VolumeSizeInBytes": null, "CreateStorediSCSIVolumeOutput$VolumeSizeInBytes": "

        The size of the volume in bytes.

        ", "DescribeCacheOutput$CacheAllocatedInBytes": null, "DescribeUploadBufferOutput$UploadBufferUsedInBytes": null, "DescribeUploadBufferOutput$UploadBufferAllocatedInBytes": null, "DescribeWorkingStorageOutput$WorkingStorageUsedInBytes": "

        The total working storage in bytes in use by the gateway. If no working storage is configured for the gateway, this field returns 0.

        ", "DescribeWorkingStorageOutput$WorkingStorageAllocatedInBytes": "

        The total working storage in bytes allocated for the gateway. If no working storage is configured for the gateway, this field returns 0.

        ", "Disk$DiskSizeInBytes": null, "StorediSCSIVolume$VolumeSizeInBytes": null, "VolumeInfo$VolumeSizeInBytes": "

        The size, in bytes, of the volume.

        Valid Values: 50 to 500 lowercase letters, numbers, periods (.), and hyphens (-).

        ", "VolumeRecoveryPointInfo$VolumeSizeInBytes": null, "VolumeRecoveryPointInfo$VolumeUsageInBytes": null } }, "string": { "base": null, "refs": { "CreateSnapshotFromVolumeRecoveryPointOutput$VolumeRecoveryPointTime": null, "DescribeGatewayInformationOutput$GatewayName": "

        The name you configured for your gateway.

        ", "Disk$DiskPath": null, "Disk$DiskNode": null, "Disk$DiskStatus": null, "Disk$DiskAllocationResource": null, "GatewayInfo$GatewayName": "

        The name of the gateway.

        ", "InternalServerError$message": "

        A human-readable message describing the error that occurred.

        ", "InvalidGatewayRequestException$message": "

        A human-readable message describing the error that occurred.

        ", "NetworkInterface$Ipv4Address": "

        The Internet Protocol version 4 (IPv4) address of the interface.

        ", "NetworkInterface$MacAddress": "

        The Media Access Control (MAC) address of the interface.

        This is currently unsupported and will not be returned in output.

        ", "NetworkInterface$Ipv6Address": "

        The Internet Protocol version 6 (IPv6) address of the interface. Currently not supported.

        ", "UpdateGatewayInformationOutput$GatewayName": null, "VolumeRecoveryPointInfo$VolumeRecoveryPointTime": null, "errorDetails$key": null, "errorDetails$value": null } } } } aws-sdk-go-1.4.22/models/apis/storagegateway/2013-06-30/examples-1.json000066400000000000000000000000541300374646400247260ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/storagegateway/2013-06-30/paginators-1.json000066400000000000000000000024161300374646400252630ustar00rootroot00000000000000{ "pagination": { "DescribeCachediSCSIVolumes": { "result_key": "CachediSCSIVolumes" }, "DescribeStorediSCSIVolumes": { "result_key": "StorediSCSIVolumes" }, "DescribeTapeArchives": { "input_token": "Marker", "limit_key": "Limit", "output_token": "Marker", "result_key": "TapeArchives" }, "DescribeTapeRecoveryPoints": { "input_token": "Marker", "limit_key": "Limit", "output_token": "Marker", "result_key": "TapeRecoveryPointInfos" }, "DescribeTapes": { "input_token": "Marker", "limit_key": "Limit", "output_token": "Marker", "result_key": "Tapes" }, "DescribeVTLDevices": { "input_token": "Marker", "limit_key": "Limit", "output_token": "Marker", "result_key": "VTLDevices" }, "ListGateways": { "input_token": "Marker", "limit_key": "Limit", "output_token": "Marker", "result_key": "Gateways" }, "ListLocalDisks": { "result_key": "Disks" }, "ListVolumeRecoveryPoints": { "result_key": "VolumeRecoveryPointInfos" }, "ListVolumes": { "input_token": "Marker", "limit_key": "Limit", "output_token": "Marker", "result_key": "VolumeInfos" } } } aws-sdk-go-1.4.22/models/apis/streams.dynamodb/000077500000000000000000000000001300374646400212545ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/streams.dynamodb/2012-08-10/000077500000000000000000000000001300374646400223035ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/streams.dynamodb/2012-08-10/api-2.json000066400000000000000000000234311300374646400241110ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2012-08-10", "endpointPrefix":"streams.dynamodb", "jsonVersion":"1.0", "protocol":"json", "serviceFullName":"Amazon DynamoDB Streams", "signatureVersion":"v4", "signingName":"dynamodb", "targetPrefix":"DynamoDBStreams_20120810" }, "operations":{ "DescribeStream":{ "name":"DescribeStream", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeStreamInput"}, "output":{"shape":"DescribeStreamOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InternalServerError"} ] }, "GetRecords":{ "name":"GetRecords", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetRecordsInput"}, "output":{"shape":"GetRecordsOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"LimitExceededException"}, {"shape":"InternalServerError"}, {"shape":"ExpiredIteratorException"}, {"shape":"TrimmedDataAccessException"} ] }, "GetShardIterator":{ "name":"GetShardIterator", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetShardIteratorInput"}, "output":{"shape":"GetShardIteratorOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InternalServerError"}, {"shape":"TrimmedDataAccessException"} ] }, "ListStreams":{ "name":"ListStreams", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListStreamsInput"}, "output":{"shape":"ListStreamsOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InternalServerError"} ] } }, "shapes":{ "AttributeMap":{ "type":"map", "key":{"shape":"AttributeName"}, "value":{"shape":"AttributeValue"} }, "AttributeName":{ "type":"string", "max":65535 }, "AttributeValue":{ "type":"structure", "members":{ "S":{"shape":"StringAttributeValue"}, "N":{"shape":"NumberAttributeValue"}, "B":{"shape":"BinaryAttributeValue"}, "SS":{"shape":"StringSetAttributeValue"}, "NS":{"shape":"NumberSetAttributeValue"}, "BS":{"shape":"BinarySetAttributeValue"}, "M":{"shape":"MapAttributeValue"}, "L":{"shape":"ListAttributeValue"}, "NULL":{"shape":"NullAttributeValue"}, "BOOL":{"shape":"BooleanAttributeValue"} } }, "BinaryAttributeValue":{"type":"blob"}, "BinarySetAttributeValue":{ "type":"list", "member":{"shape":"BinaryAttributeValue"} }, "BooleanAttributeValue":{"type":"boolean"}, "Date":{"type":"timestamp"}, "DescribeStreamInput":{ "type":"structure", "required":["StreamArn"], "members":{ "StreamArn":{"shape":"StreamArn"}, "Limit":{"shape":"PositiveIntegerObject"}, "ExclusiveStartShardId":{"shape":"ShardId"} } }, "DescribeStreamOutput":{ "type":"structure", "members":{ "StreamDescription":{"shape":"StreamDescription"} } }, "ErrorMessage":{"type":"string"}, "ExpiredIteratorException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "GetRecordsInput":{ "type":"structure", "required":["ShardIterator"], "members":{ "ShardIterator":{"shape":"ShardIterator"}, "Limit":{"shape":"PositiveIntegerObject"} } }, "GetRecordsOutput":{ "type":"structure", "members":{ "Records":{"shape":"RecordList"}, "NextShardIterator":{"shape":"ShardIterator"} } }, "GetShardIteratorInput":{ "type":"structure", "required":[ "StreamArn", "ShardId", "ShardIteratorType" ], "members":{ "StreamArn":{"shape":"StreamArn"}, "ShardId":{"shape":"ShardId"}, "ShardIteratorType":{"shape":"ShardIteratorType"}, "SequenceNumber":{"shape":"SequenceNumber"} } }, "GetShardIteratorOutput":{ "type":"structure", "members":{ "ShardIterator":{"shape":"ShardIterator"} } }, "InternalServerError":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true, "fault":true }, "KeySchema":{ "type":"list", "member":{"shape":"KeySchemaElement"}, "max":2, "min":1 }, "KeySchemaAttributeName":{ "type":"string", "max":255, "min":1 }, "KeySchemaElement":{ "type":"structure", "required":[ "AttributeName", "KeyType" ], "members":{ "AttributeName":{"shape":"KeySchemaAttributeName"}, "KeyType":{"shape":"KeyType"} } }, "KeyType":{ "type":"string", "enum":[ "HASH", "RANGE" ] }, "LimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "ListAttributeValue":{ "type":"list", "member":{"shape":"AttributeValue"} }, "ListStreamsInput":{ "type":"structure", "members":{ "TableName":{"shape":"TableName"}, "Limit":{"shape":"PositiveIntegerObject"}, "ExclusiveStartStreamArn":{"shape":"StreamArn"} } }, "ListStreamsOutput":{ "type":"structure", "members":{ "Streams":{"shape":"StreamList"}, "LastEvaluatedStreamArn":{"shape":"StreamArn"} } }, "MapAttributeValue":{ "type":"map", "key":{"shape":"AttributeName"}, "value":{"shape":"AttributeValue"} }, "NullAttributeValue":{"type":"boolean"}, "NumberAttributeValue":{"type":"string"}, "NumberSetAttributeValue":{ "type":"list", "member":{"shape":"NumberAttributeValue"} }, "OperationType":{ "type":"string", "enum":[ "INSERT", "MODIFY", "REMOVE" ] }, "PositiveIntegerObject":{ "type":"integer", "min":1 }, "PositiveLongObject":{ "type":"long", "min":1 }, "Record":{ "type":"structure", "members":{ "eventID":{"shape":"String"}, "eventName":{"shape":"OperationType"}, "eventVersion":{"shape":"String"}, "eventSource":{"shape":"String"}, "awsRegion":{"shape":"String"}, "dynamodb":{"shape":"StreamRecord"} } }, "RecordList":{ "type":"list", "member":{"shape":"Record"} }, "ResourceNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "SequenceNumber":{ "type":"string", "max":40, "min":21 }, "SequenceNumberRange":{ "type":"structure", "members":{ "StartingSequenceNumber":{"shape":"SequenceNumber"}, "EndingSequenceNumber":{"shape":"SequenceNumber"} } }, "Shard":{ "type":"structure", "members":{ "ShardId":{"shape":"ShardId"}, "SequenceNumberRange":{"shape":"SequenceNumberRange"}, "ParentShardId":{"shape":"ShardId"} } }, "ShardDescriptionList":{ "type":"list", "member":{"shape":"Shard"} }, "ShardId":{ "type":"string", "max":65, "min":28 }, "ShardIterator":{ "type":"string", "max":2048, "min":1 }, "ShardIteratorType":{ "type":"string", "enum":[ "TRIM_HORIZON", "LATEST", "AT_SEQUENCE_NUMBER", "AFTER_SEQUENCE_NUMBER" ] }, "Stream":{ "type":"structure", "members":{ "StreamArn":{"shape":"StreamArn"}, "TableName":{"shape":"TableName"}, "StreamLabel":{"shape":"String"} } }, "StreamArn":{ "type":"string", "max":1024, "min":37 }, "StreamDescription":{ "type":"structure", "members":{ "StreamArn":{"shape":"StreamArn"}, "StreamLabel":{"shape":"String"}, "StreamStatus":{"shape":"StreamStatus"}, "StreamViewType":{"shape":"StreamViewType"}, "CreationRequestDateTime":{"shape":"Date"}, "TableName":{"shape":"TableName"}, "KeySchema":{"shape":"KeySchema"}, "Shards":{"shape":"ShardDescriptionList"}, "LastEvaluatedShardId":{"shape":"ShardId"} } }, "StreamList":{ "type":"list", "member":{"shape":"Stream"} }, "StreamRecord":{ "type":"structure", "members":{ "ApproximateCreationDateTime":{"shape":"Date"}, "Keys":{"shape":"AttributeMap"}, "NewImage":{"shape":"AttributeMap"}, "OldImage":{"shape":"AttributeMap"}, "SequenceNumber":{"shape":"SequenceNumber"}, "SizeBytes":{"shape":"PositiveLongObject"}, "StreamViewType":{"shape":"StreamViewType"} } }, "StreamStatus":{ "type":"string", "enum":[ "ENABLING", "ENABLED", "DISABLING", "DISABLED" ] }, "StreamViewType":{ "type":"string", "enum":[ "NEW_IMAGE", "OLD_IMAGE", "NEW_AND_OLD_IMAGES", "KEYS_ONLY" ] }, "String":{"type":"string"}, "StringAttributeValue":{"type":"string"}, "StringSetAttributeValue":{ "type":"list", "member":{"shape":"StringAttributeValue"} }, "TableName":{ "type":"string", "max":255, "min":3, "pattern":"[a-zA-Z0-9_.-]+" }, "TrimmedDataAccessException":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true } } } aws-sdk-go-1.4.22/models/apis/streams.dynamodb/2012-08-10/docs-2.json000066400000000000000000000554501300374646400242760ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon DynamoDB

        Amazon DynamoDB Streams provides API actions for accessing streams and processing stream records. To learn more about application development with Streams, see Capturing Table Activity with DynamoDB Streams in the Amazon DynamoDB Developer Guide.

        The following are short descriptions of each low-level DynamoDB Streams action:

        • DescribeStream - Returns detailed information about a particular stream.

        • GetRecords - Retrieves the stream records from within a shard.

        • GetShardIterator - Returns information on how to retrieve the streams record from a shard with a given shard ID.

        • ListStreams - Returns a list of all the streams associated with the current AWS account and endpoint.

        ", "operations": { "DescribeStream": "

        Returns information about a stream, including the current status of the stream, its Amazon Resource Name (ARN), the composition of its shards, and its corresponding DynamoDB table.

        You can call DescribeStream at a maximum rate of 10 times per second.

        Each shard in the stream has a SequenceNumberRange associated with it. If the SequenceNumberRange has a StartingSequenceNumber but no EndingSequenceNumber, then the shard is still open (able to receive more stream records). If both StartingSequenceNumber and EndingSequenceNumber are present, then that shard is closed and can no longer receive more data.

        ", "GetRecords": "

        Retrieves the stream records from a given shard.

        Specify a shard iterator using the ShardIterator parameter. The shard iterator specifies the position in the shard from which you want to start reading stream records sequentially. If there are no stream records available in the portion of the shard that the iterator points to, GetRecords returns an empty list. Note that it might take multiple calls to get to a portion of the shard that contains stream records.

        GetRecords can retrieve a maximum of 1 MB of data or 1000 stream records, whichever comes first.

        ", "GetShardIterator": "

        Returns a shard iterator. A shard iterator provides information about how to retrieve the stream records from within a shard. Use the shard iterator in a subsequent GetRecords request to read the stream records from the shard.

        A shard iterator expires 15 minutes after it is returned to the requester.

        ", "ListStreams": "

        Returns an array of stream ARNs associated with the current account and endpoint. If the TableName parameter is present, then ListStreams will return only the streams ARNs for that table.

        You can call ListStreams at a maximum rate of 5 times per second.

        " }, "shapes": { "AttributeMap": { "base": null, "refs": { "StreamRecord$Keys": "

        The primary key attribute(s) for the DynamoDB item that was modified.

        ", "StreamRecord$NewImage": "

        The item in the DynamoDB table as it appeared after it was modified.

        ", "StreamRecord$OldImage": "

        The item in the DynamoDB table as it appeared before it was modified.

        " } }, "AttributeName": { "base": null, "refs": { "AttributeMap$key": null, "MapAttributeValue$key": null } }, "AttributeValue": { "base": "

        Represents the data for an attribute. You can set one, and only one, of the elements.

        Each attribute in an item is a name-value pair. An attribute can be single-valued or multi-valued set. For example, a book item can have title and authors attributes. Each book has one title but can have many authors. The multi-valued attribute is a set; duplicate values are not allowed.

        ", "refs": { "AttributeMap$value": null, "ListAttributeValue$member": null, "MapAttributeValue$value": null } }, "BinaryAttributeValue": { "base": null, "refs": { "AttributeValue$B": "

        A Binary data type.

        ", "BinarySetAttributeValue$member": null } }, "BinarySetAttributeValue": { "base": null, "refs": { "AttributeValue$BS": "

        A Binary Set data type.

        " } }, "BooleanAttributeValue": { "base": null, "refs": { "AttributeValue$BOOL": "

        A Boolean data type.

        " } }, "Date": { "base": null, "refs": { "StreamDescription$CreationRequestDateTime": "

        The date and time when the request to create this stream was issued.

        ", "StreamRecord$ApproximateCreationDateTime": "

        The approximate date and time when the stream record was created, in UNIX epoch time format.

        " } }, "DescribeStreamInput": { "base": "

        Represents the input of a DescribeStream operation.

        ", "refs": { } }, "DescribeStreamOutput": { "base": "

        Represents the output of a DescribeStream operation.

        ", "refs": { } }, "ErrorMessage": { "base": null, "refs": { "ExpiredIteratorException$message": "

        The provided iterator exceeds the maximum age allowed.

        ", "InternalServerError$message": "

        The server encountered an internal error trying to fulfill the request.

        ", "LimitExceededException$message": "

        Too many operations for a given subscriber.

        ", "ResourceNotFoundException$message": "

        The resource which is being requested does not exist.

        ", "TrimmedDataAccessException$message": "

        \"The data you are trying to access has been trimmed.

        " } }, "ExpiredIteratorException": { "base": "

        The shard iterator has expired and can no longer be used to retrieve stream records. A shard iterator expires 15 minutes after it is retrieved using the GetShardIterator action.

        ", "refs": { } }, "GetRecordsInput": { "base": "

        Represents the input of a GetRecords operation.

        ", "refs": { } }, "GetRecordsOutput": { "base": "

        Represents the output of a GetRecords operation.

        ", "refs": { } }, "GetShardIteratorInput": { "base": "

        Represents the input of a GetShardIterator operation.

        ", "refs": { } }, "GetShardIteratorOutput": { "base": "

        Represents the output of a GetShardIterator operation.

        ", "refs": { } }, "InternalServerError": { "base": "

        An error occurred on the server side.

        ", "refs": { } }, "KeySchema": { "base": null, "refs": { "StreamDescription$KeySchema": "

        The key attribute(s) of the stream's DynamoDB table.

        " } }, "KeySchemaAttributeName": { "base": null, "refs": { "KeySchemaElement$AttributeName": "

        The name of a key attribute.

        " } }, "KeySchemaElement": { "base": "

        Represents a single element of a key schema. A key schema specifies the attributes that make up the primary key of a table, or the key attributes of an index.

        A KeySchemaElement represents exactly one attribute of the primary key. For example, a simple primary key (partition key) would be represented by one KeySchemaElement. A composite primary key (partition key and sort key) would require one KeySchemaElement for the partition key, and another KeySchemaElement for the sort key.

        The partition key of an item is also known as its hash attribute. The term \"hash attribute\" derives from DynamoDB's usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.

        The sort key of an item is also known as its range attribute. The term \"range attribute\" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.

        ", "refs": { "KeySchema$member": null } }, "KeyType": { "base": null, "refs": { "KeySchemaElement$KeyType": "

        The attribute data, consisting of the data type and the attribute value itself.

        " } }, "LimitExceededException": { "base": "

        Your request rate is too high. The AWS SDKs for DynamoDB automatically retry requests that receive this exception. Your request is eventually successful, unless your retry queue is too large to finish. Reduce the frequency of requests and use exponential backoff. For more information, go to Error Retries and Exponential Backoff in the Amazon DynamoDB Developer Guide.

        ", "refs": { } }, "ListAttributeValue": { "base": null, "refs": { "AttributeValue$L": "

        A List data type.

        " } }, "ListStreamsInput": { "base": "

        Represents the input of a ListStreams operation.

        ", "refs": { } }, "ListStreamsOutput": { "base": "

        Represents the output of a ListStreams operation.

        ", "refs": { } }, "MapAttributeValue": { "base": null, "refs": { "AttributeValue$M": "

        A Map data type.

        " } }, "NullAttributeValue": { "base": null, "refs": { "AttributeValue$NULL": "

        A Null data type.

        " } }, "NumberAttributeValue": { "base": null, "refs": { "AttributeValue$N": "

        A Number data type.

        ", "NumberSetAttributeValue$member": null } }, "NumberSetAttributeValue": { "base": null, "refs": { "AttributeValue$NS": "

        A Number Set data type.

        " } }, "OperationType": { "base": null, "refs": { "Record$eventName": "

        The type of data modification that was performed on the DynamoDB table:

        • INSERT - a new item was added to the table.

        • MODIFY - one or more of an existing item's attributes were modified.

        • REMOVE - the item was deleted from the table

        " } }, "PositiveIntegerObject": { "base": null, "refs": { "DescribeStreamInput$Limit": "

        The maximum number of shard objects to return. The upper limit is 100.

        ", "GetRecordsInput$Limit": "

        The maximum number of records to return from the shard. The upper limit is 1000.

        ", "ListStreamsInput$Limit": "

        The maximum number of streams to return. The upper limit is 100.

        " } }, "PositiveLongObject": { "base": null, "refs": { "StreamRecord$SizeBytes": "

        The size of the stream record, in bytes.

        " } }, "Record": { "base": "

        A description of a unique event within a stream.

        ", "refs": { "RecordList$member": null } }, "RecordList": { "base": null, "refs": { "GetRecordsOutput$Records": "

        The stream records from the shard, which were retrieved using the shard iterator.

        " } }, "ResourceNotFoundException": { "base": "

        The operation tried to access a nonexistent stream.

        ", "refs": { } }, "SequenceNumber": { "base": null, "refs": { "GetShardIteratorInput$SequenceNumber": "

        The sequence number of a stream record in the shard from which to start reading.

        ", "SequenceNumberRange$StartingSequenceNumber": "

        The first sequence number.

        ", "SequenceNumberRange$EndingSequenceNumber": "

        The last sequence number.

        ", "StreamRecord$SequenceNumber": "

        The sequence number of the stream record.

        " } }, "SequenceNumberRange": { "base": "

        The beginning and ending sequence numbers for the stream records contained within a shard.

        ", "refs": { "Shard$SequenceNumberRange": "

        The range of possible sequence numbers for the shard.

        " } }, "Shard": { "base": "

        A uniquely identified group of stream records within a stream.

        ", "refs": { "ShardDescriptionList$member": null } }, "ShardDescriptionList": { "base": null, "refs": { "StreamDescription$Shards": "

        The shards that comprise the stream.

        " } }, "ShardId": { "base": null, "refs": { "DescribeStreamInput$ExclusiveStartShardId": "

        The shard ID of the first item that this operation will evaluate. Use the value that was returned for LastEvaluatedShardId in the previous operation.

        ", "GetShardIteratorInput$ShardId": "

        The identifier of the shard. The iterator will be returned for this shard ID.

        ", "Shard$ShardId": "

        The system-generated identifier for this shard.

        ", "Shard$ParentShardId": "

        The shard ID of the current shard's parent.

        ", "StreamDescription$LastEvaluatedShardId": "

        The shard ID of the item where the operation stopped, inclusive of the previous result set. Use this value to start a new operation, excluding this value in the new request.

        If LastEvaluatedShardId is empty, then the \"last page\" of results has been processed and there is currently no more data to be retrieved.

        If LastEvaluatedShardId is not empty, it does not necessarily mean that there is more data in the result set. The only way to know when you have reached the end of the result set is when LastEvaluatedShardId is empty.

        " } }, "ShardIterator": { "base": null, "refs": { "GetRecordsInput$ShardIterator": "

        A shard iterator that was retrieved from a previous GetShardIterator operation. This iterator can be used to access the stream records in this shard.

        ", "GetRecordsOutput$NextShardIterator": "

        The next position in the shard from which to start sequentially reading stream records. If set to null, the shard has been closed and the requested iterator will not return any more data.

        ", "GetShardIteratorOutput$ShardIterator": "

        The position in the shard from which to start reading stream records sequentially. A shard iterator specifies this position using the sequence number of a stream record in a shard.

        " } }, "ShardIteratorType": { "base": null, "refs": { "GetShardIteratorInput$ShardIteratorType": "

        Determines how the shard iterator is used to start reading stream records from the shard:

        • AT_SEQUENCE_NUMBER - Start reading exactly from the position denoted by a specific sequence number.

        • AFTER_SEQUENCE_NUMBER - Start reading right after the position denoted by a specific sequence number.

        • TRIM_HORIZON - Start reading at the last (untrimmed) stream record, which is the oldest record in the shard. In DynamoDB Streams, there is a 24 hour limit on data retention. Stream records whose age exceeds this limit are subject to removal (trimming) from the stream.

        • LATEST - Start reading just after the most recent stream record in the shard, so that you always read the most recent data in the shard.

        " } }, "Stream": { "base": "

        Represents all of the data describing a particular stream.

        ", "refs": { "StreamList$member": null } }, "StreamArn": { "base": null, "refs": { "DescribeStreamInput$StreamArn": "

        The Amazon Resource Name (ARN) for the stream.

        ", "GetShardIteratorInput$StreamArn": "

        The Amazon Resource Name (ARN) for the stream.

        ", "ListStreamsInput$ExclusiveStartStreamArn": "

        The ARN (Amazon Resource Name) of the first item that this operation will evaluate. Use the value that was returned for LastEvaluatedStreamArn in the previous operation.

        ", "ListStreamsOutput$LastEvaluatedStreamArn": "

        The stream ARN of the item where the operation stopped, inclusive of the previous result set. Use this value to start a new operation, excluding this value in the new request.

        If LastEvaluatedStreamArn is empty, then the \"last page\" of results has been processed and there is no more data to be retrieved.

        If LastEvaluatedStreamArn is not empty, it does not necessarily mean that there is more data in the result set. The only way to know when you have reached the end of the result set is when LastEvaluatedStreamArn is empty.

        ", "Stream$StreamArn": "

        The Amazon Resource Name (ARN) for the stream.

        ", "StreamDescription$StreamArn": "

        The Amazon Resource Name (ARN) for the stream.

        " } }, "StreamDescription": { "base": "

        Represents all of the data describing a particular stream.

        ", "refs": { "DescribeStreamOutput$StreamDescription": "

        A complete description of the stream, including its creation date and time, the DynamoDB table associated with the stream, the shard IDs within the stream, and the beginning and ending sequence numbers of stream records within the shards.

        " } }, "StreamList": { "base": null, "refs": { "ListStreamsOutput$Streams": "

        A list of stream descriptors associated with the current account and endpoint.

        " } }, "StreamRecord": { "base": "

        A description of a single data modification that was performed on an item in a DynamoDB table.

        ", "refs": { "Record$dynamodb": "

        The main body of the stream record, containing all of the DynamoDB-specific fields.

        " } }, "StreamStatus": { "base": null, "refs": { "StreamDescription$StreamStatus": "

        Indicates the current status of the stream:

        • ENABLING - Streams is currently being enabled on the DynamoDB table.

        • ENABLED - the stream is enabled.

        • DISABLING - Streams is currently being disabled on the DynamoDB table.

        • DISABLED - the stream is disabled.

        " } }, "StreamViewType": { "base": null, "refs": { "StreamDescription$StreamViewType": "

        Indicates the format of the records within this stream:

        • KEYS_ONLY - only the key attributes of items that were modified in the DynamoDB table.

        • NEW_IMAGE - entire items from the table, as they appeared after they were modified.

        • OLD_IMAGE - entire items from the table, as they appeared before they were modified.

        • NEW_AND_OLD_IMAGES - both the new and the old images of the items from the table.

        ", "StreamRecord$StreamViewType": "

        The type of data from the modified DynamoDB item that was captured in this stream record:

        • KEYS_ONLY - only the key attributes of the modified item.

        • NEW_IMAGE - the entire item, as it appeared after it was modified.

        • OLD_IMAGE - the entire item, as it appeared before it was modified.

        • NEW_AND_OLD_IMAGES - both the new and the old item images of the item.

        " } }, "String": { "base": null, "refs": { "Record$eventID": "

        A globally unique identifier for the event that was recorded in this stream record.

        ", "Record$eventVersion": "

        The version number of the stream record format. This number is updated whenever the structure of Record is modified.

        Client applications must not assume that eventVersion will remain at a particular value, as this number is subject to change at any time. In general, eventVersion will only increase as the low-level DynamoDB Streams API evolves.

        ", "Record$eventSource": "

        The AWS service from which the stream record originated. For DynamoDB Streams, this is aws:dynamodb.

        ", "Record$awsRegion": "

        The region in which the GetRecords request was received.

        ", "Stream$StreamLabel": "

        A timestamp, in ISO 8601 format, for this stream.

        Note that LatestStreamLabel is not a unique identifier for the stream, because it is possible that a stream from another table might have the same timestamp. However, the combination of the following three elements is guaranteed to be unique:

        • the AWS customer ID.

        • the table name

        • the StreamLabel

        ", "StreamDescription$StreamLabel": "

        A timestamp, in ISO 8601 format, for this stream.

        Note that LatestStreamLabel is not a unique identifier for the stream, because it is possible that a stream from another table might have the same timestamp. However, the combination of the following three elements is guaranteed to be unique:

        • the AWS customer ID.

        • the table name

        • the StreamLabel

        " } }, "StringAttributeValue": { "base": null, "refs": { "AttributeValue$S": "

        A String data type.

        ", "StringSetAttributeValue$member": null } }, "StringSetAttributeValue": { "base": null, "refs": { "AttributeValue$SS": "

        A String Set data type.

        " } }, "TableName": { "base": null, "refs": { "ListStreamsInput$TableName": "

        If this parameter is provided, then only the streams associated with this table name are returned.

        ", "Stream$TableName": "

        The DynamoDB table with which the stream is associated.

        ", "StreamDescription$TableName": "

        The DynamoDB table with which the stream is associated.

        " } }, "TrimmedDataAccessException": { "base": "

        The operation attempted to read past the oldest stream record in a shard.

        In DynamoDB Streams, there is a 24 hour limit on data retention. Stream records whose age exceeds this limit are subject to removal (trimming) from the stream. You might receive a TrimmedDataAccessException if:

        • You request a shard iterator with a sequence number older than the trim point (24 hours).

        • You obtain a shard iterator, but before you use the iterator in a GetRecords request, a stream record in the shard exceeds the 24 hour period and is trimmed. This causes the iterator to access a record that no longer exists.

        ", "refs": { } } } } aws-sdk-go-1.4.22/models/apis/streams.dynamodb/2012-08-10/examples-1.json000066400000000000000000000000541300374646400251510ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/sts/000077500000000000000000000000001300374646400166135ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/sts/2011-06-15/000077500000000000000000000000001300374646400176445ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/sts/2011-06-15/api-2.json000066400000000000000000000334241300374646400214550ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2011-06-15", "endpointPrefix":"sts", "globalEndpoint":"sts.amazonaws.com", "protocol":"query", "serviceAbbreviation":"AWS STS", "serviceFullName":"AWS Security Token Service", "signatureVersion":"v4", "xmlNamespace":"https://sts.amazonaws.com/doc/2011-06-15/" }, "operations":{ "AssumeRole":{ "name":"AssumeRole", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssumeRoleRequest"}, "output":{ "shape":"AssumeRoleResponse", "resultWrapper":"AssumeRoleResult" }, "errors":[ {"shape":"MalformedPolicyDocumentException"}, {"shape":"PackedPolicyTooLargeException"}, {"shape":"RegionDisabledException"} ] }, "AssumeRoleWithSAML":{ "name":"AssumeRoleWithSAML", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssumeRoleWithSAMLRequest"}, "output":{ "shape":"AssumeRoleWithSAMLResponse", "resultWrapper":"AssumeRoleWithSAMLResult" }, "errors":[ {"shape":"MalformedPolicyDocumentException"}, {"shape":"PackedPolicyTooLargeException"}, {"shape":"IDPRejectedClaimException"}, {"shape":"InvalidIdentityTokenException"}, {"shape":"ExpiredTokenException"}, {"shape":"RegionDisabledException"} ] }, "AssumeRoleWithWebIdentity":{ "name":"AssumeRoleWithWebIdentity", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AssumeRoleWithWebIdentityRequest"}, "output":{ "shape":"AssumeRoleWithWebIdentityResponse", "resultWrapper":"AssumeRoleWithWebIdentityResult" }, "errors":[ {"shape":"MalformedPolicyDocumentException"}, {"shape":"PackedPolicyTooLargeException"}, {"shape":"IDPRejectedClaimException"}, {"shape":"IDPCommunicationErrorException"}, {"shape":"InvalidIdentityTokenException"}, {"shape":"ExpiredTokenException"}, {"shape":"RegionDisabledException"} ] }, "DecodeAuthorizationMessage":{ "name":"DecodeAuthorizationMessage", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DecodeAuthorizationMessageRequest"}, "output":{ "shape":"DecodeAuthorizationMessageResponse", "resultWrapper":"DecodeAuthorizationMessageResult" }, "errors":[ {"shape":"InvalidAuthorizationMessageException"} ] }, "GetCallerIdentity":{ "name":"GetCallerIdentity", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetCallerIdentityRequest"}, "output":{ "shape":"GetCallerIdentityResponse", "resultWrapper":"GetCallerIdentityResult" } }, "GetFederationToken":{ "name":"GetFederationToken", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetFederationTokenRequest"}, "output":{ "shape":"GetFederationTokenResponse", "resultWrapper":"GetFederationTokenResult" }, "errors":[ {"shape":"MalformedPolicyDocumentException"}, {"shape":"PackedPolicyTooLargeException"}, {"shape":"RegionDisabledException"} ] }, "GetSessionToken":{ "name":"GetSessionToken", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetSessionTokenRequest"}, "output":{ "shape":"GetSessionTokenResponse", "resultWrapper":"GetSessionTokenResult" }, "errors":[ {"shape":"RegionDisabledException"} ] } }, "shapes":{ "AssumeRoleRequest":{ "type":"structure", "required":[ "RoleArn", "RoleSessionName" ], "members":{ "RoleArn":{"shape":"arnType"}, "RoleSessionName":{"shape":"roleSessionNameType"}, "Policy":{"shape":"sessionPolicyDocumentType"}, "DurationSeconds":{"shape":"roleDurationSecondsType"}, "ExternalId":{"shape":"externalIdType"}, "SerialNumber":{"shape":"serialNumberType"}, "TokenCode":{"shape":"tokenCodeType"} } }, "AssumeRoleResponse":{ "type":"structure", "members":{ "Credentials":{"shape":"Credentials"}, "AssumedRoleUser":{"shape":"AssumedRoleUser"}, "PackedPolicySize":{"shape":"nonNegativeIntegerType"} } }, "AssumeRoleWithSAMLRequest":{ "type":"structure", "required":[ "RoleArn", "PrincipalArn", "SAMLAssertion" ], "members":{ "RoleArn":{"shape":"arnType"}, "PrincipalArn":{"shape":"arnType"}, "SAMLAssertion":{"shape":"SAMLAssertionType"}, "Policy":{"shape":"sessionPolicyDocumentType"}, "DurationSeconds":{"shape":"roleDurationSecondsType"} } }, "AssumeRoleWithSAMLResponse":{ "type":"structure", "members":{ "Credentials":{"shape":"Credentials"}, "AssumedRoleUser":{"shape":"AssumedRoleUser"}, "PackedPolicySize":{"shape":"nonNegativeIntegerType"}, "Subject":{"shape":"Subject"}, "SubjectType":{"shape":"SubjectType"}, "Issuer":{"shape":"Issuer"}, "Audience":{"shape":"Audience"}, "NameQualifier":{"shape":"NameQualifier"} } }, "AssumeRoleWithWebIdentityRequest":{ "type":"structure", "required":[ "RoleArn", "RoleSessionName", "WebIdentityToken" ], "members":{ "RoleArn":{"shape":"arnType"}, "RoleSessionName":{"shape":"roleSessionNameType"}, "WebIdentityToken":{"shape":"clientTokenType"}, "ProviderId":{"shape":"urlType"}, "Policy":{"shape":"sessionPolicyDocumentType"}, "DurationSeconds":{"shape":"roleDurationSecondsType"} } }, "AssumeRoleWithWebIdentityResponse":{ "type":"structure", "members":{ "Credentials":{"shape":"Credentials"}, "SubjectFromWebIdentityToken":{"shape":"webIdentitySubjectType"}, "AssumedRoleUser":{"shape":"AssumedRoleUser"}, "PackedPolicySize":{"shape":"nonNegativeIntegerType"}, "Provider":{"shape":"Issuer"}, "Audience":{"shape":"Audience"} } }, "AssumedRoleUser":{ "type":"structure", "required":[ "AssumedRoleId", "Arn" ], "members":{ "AssumedRoleId":{"shape":"assumedRoleIdType"}, "Arn":{"shape":"arnType"} } }, "Audience":{"type":"string"}, "Credentials":{ "type":"structure", "required":[ "AccessKeyId", "SecretAccessKey", "SessionToken", "Expiration" ], "members":{ "AccessKeyId":{"shape":"accessKeyIdType"}, "SecretAccessKey":{"shape":"accessKeySecretType"}, "SessionToken":{"shape":"tokenType"}, "Expiration":{"shape":"dateType"} } }, "DecodeAuthorizationMessageRequest":{ "type":"structure", "required":["EncodedMessage"], "members":{ "EncodedMessage":{"shape":"encodedMessageType"} } }, "DecodeAuthorizationMessageResponse":{ "type":"structure", "members":{ "DecodedMessage":{"shape":"decodedMessageType"} } }, "ExpiredTokenException":{ "type":"structure", "members":{ "message":{"shape":"expiredIdentityTokenMessage"} }, "error":{ "code":"ExpiredTokenException", "httpStatusCode":400, "senderFault":true }, "exception":true }, "FederatedUser":{ "type":"structure", "required":[ "FederatedUserId", "Arn" ], "members":{ "FederatedUserId":{"shape":"federatedIdType"}, "Arn":{"shape":"arnType"} } }, "GetCallerIdentityRequest":{ "type":"structure", "members":{ } }, "GetCallerIdentityResponse":{ "type":"structure", "members":{ "UserId":{"shape":"userIdType"}, "Account":{"shape":"accountType"}, "Arn":{"shape":"arnType"} } }, "GetFederationTokenRequest":{ "type":"structure", "required":["Name"], "members":{ "Name":{"shape":"userNameType"}, "Policy":{"shape":"sessionPolicyDocumentType"}, "DurationSeconds":{"shape":"durationSecondsType"} } }, "GetFederationTokenResponse":{ "type":"structure", "members":{ "Credentials":{"shape":"Credentials"}, "FederatedUser":{"shape":"FederatedUser"}, "PackedPolicySize":{"shape":"nonNegativeIntegerType"} } }, "GetSessionTokenRequest":{ "type":"structure", "members":{ "DurationSeconds":{"shape":"durationSecondsType"}, "SerialNumber":{"shape":"serialNumberType"}, "TokenCode":{"shape":"tokenCodeType"} } }, "GetSessionTokenResponse":{ "type":"structure", "members":{ "Credentials":{"shape":"Credentials"} } }, "IDPCommunicationErrorException":{ "type":"structure", "members":{ "message":{"shape":"idpCommunicationErrorMessage"} }, "error":{ "code":"IDPCommunicationError", "httpStatusCode":400, "senderFault":true }, "exception":true }, "IDPRejectedClaimException":{ "type":"structure", "members":{ "message":{"shape":"idpRejectedClaimMessage"} }, "error":{ "code":"IDPRejectedClaim", "httpStatusCode":403, "senderFault":true }, "exception":true }, "InvalidAuthorizationMessageException":{ "type":"structure", "members":{ "message":{"shape":"invalidAuthorizationMessage"} }, "error":{ "code":"InvalidAuthorizationMessageException", "httpStatusCode":400, "senderFault":true }, "exception":true }, "InvalidIdentityTokenException":{ "type":"structure", "members":{ "message":{"shape":"invalidIdentityTokenMessage"} }, "error":{ "code":"InvalidIdentityToken", "httpStatusCode":400, "senderFault":true }, "exception":true }, "Issuer":{"type":"string"}, "MalformedPolicyDocumentException":{ "type":"structure", "members":{ "message":{"shape":"malformedPolicyDocumentMessage"} }, "error":{ "code":"MalformedPolicyDocument", "httpStatusCode":400, "senderFault":true }, "exception":true }, "NameQualifier":{"type":"string"}, "PackedPolicyTooLargeException":{ "type":"structure", "members":{ "message":{"shape":"packedPolicyTooLargeMessage"} }, "error":{ "code":"PackedPolicyTooLarge", "httpStatusCode":400, "senderFault":true }, "exception":true }, "RegionDisabledException":{ "type":"structure", "members":{ "message":{"shape":"regionDisabledMessage"} }, "error":{ "code":"RegionDisabledException", "httpStatusCode":403, "senderFault":true }, "exception":true }, "SAMLAssertionType":{ "type":"string", "max":50000, "min":4 }, "Subject":{"type":"string"}, "SubjectType":{"type":"string"}, "accessKeyIdType":{ "type":"string", "max":32, "min":16, "pattern":"[\\w]*" }, "accessKeySecretType":{"type":"string"}, "accountType":{"type":"string"}, "arnType":{ "type":"string", "max":2048, "min":20, "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]+" }, "assumedRoleIdType":{ "type":"string", "max":96, "min":2, "pattern":"[\\w+=,.@:-]*" }, "clientTokenType":{ "type":"string", "max":2048, "min":4 }, "dateType":{"type":"timestamp"}, "decodedMessageType":{"type":"string"}, "durationSecondsType":{ "type":"integer", "max":129600, "min":900 }, "encodedMessageType":{ "type":"string", "max":10240, "min":1 }, "expiredIdentityTokenMessage":{"type":"string"}, "externalIdType":{ "type":"string", "max":1224, "min":2, "pattern":"[\\w+=,.@:\\/-]*" }, "federatedIdType":{ "type":"string", "max":96, "min":2, "pattern":"[\\w+=,.@\\:-]*" }, "idpCommunicationErrorMessage":{"type":"string"}, "idpRejectedClaimMessage":{"type":"string"}, "invalidAuthorizationMessage":{"type":"string"}, "invalidIdentityTokenMessage":{"type":"string"}, "malformedPolicyDocumentMessage":{"type":"string"}, "nonNegativeIntegerType":{ "type":"integer", "min":0 }, "packedPolicyTooLargeMessage":{"type":"string"}, "regionDisabledMessage":{"type":"string"}, "roleDurationSecondsType":{ "type":"integer", "max":3600, "min":900 }, "roleSessionNameType":{ "type":"string", "max":64, "min":2, "pattern":"[\\w+=,.@-]*" }, "serialNumberType":{ "type":"string", "max":256, "min":9, "pattern":"[\\w+=/:,.@-]*" }, "sessionPolicyDocumentType":{ "type":"string", "max":2048, "min":1, "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+" }, "tokenCodeType":{ "type":"string", "max":6, "min":6, "pattern":"[\\d]*" }, "tokenType":{"type":"string"}, "urlType":{ "type":"string", "max":2048, "min":4 }, "userIdType":{"type":"string"}, "userNameType":{ "type":"string", "max":32, "min":2, "pattern":"[\\w+=,.@-]*" }, "webIdentitySubjectType":{ "type":"string", "max":255, "min":6 } } } aws-sdk-go-1.4.22/models/apis/sts/2011-06-15/docs-2.json000066400000000000000000002027161300374646400216360ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS Security Token Service

        The AWS Security Token Service (STS) is a web service that enables you to request temporary, limited-privilege credentials for AWS Identity and Access Management (IAM) users or for users that you authenticate (federated users). This guide provides descriptions of the STS API. For more detailed information about using this service, go to Temporary Security Credentials.

        As an alternative to using the API, you can use one of the AWS SDKs, which consist of libraries and sample code for various programming languages and platforms (Java, Ruby, .NET, iOS, Android, etc.). The SDKs provide a convenient way to create programmatic access to STS. For example, the SDKs take care of cryptographically signing requests, managing errors, and retrying requests automatically. For information about the AWS SDKs, including how to download and install them, see the Tools for Amazon Web Services page.

        For information about setting up signatures and authorization through the API, go to Signing AWS API Requests in the AWS General Reference. For general information about the Query API, go to Making Query Requests in Using IAM. For information about using security tokens with other AWS products, go to AWS Services That Work with IAM in the IAM User Guide.

        If you're new to AWS and need additional technical information about a specific AWS product, you can find the product's technical documentation at http://aws.amazon.com/documentation/.

        Endpoints

        The AWS Security Token Service (STS) has a default endpoint of https://sts.amazonaws.com that maps to the US East (N. Virginia) region. Additional regions are available and are activated by default. For more information, see Activating and Deactivating AWS STS in an AWS Region in the IAM User Guide.

        For information about STS endpoints, see Regions and Endpoints in the AWS General Reference.

        Recording API requests

        STS supports AWS CloudTrail, which is a service that records AWS calls for your AWS account and delivers log files to an Amazon S3 bucket. By using information collected by CloudTrail, you can determine what requests were successfully made to STS, who made the request, when it was made, and so on. To learn more about CloudTrail, including how to turn it on and find your log files, see the AWS CloudTrail User Guide.

        ", "operations": { "AssumeRole": "

        Returns a set of temporary security credentials (consisting of an access key ID, a secret access key, and a security token) that you can use to access AWS resources that you might not normally have access to. Typically, you use AssumeRole for cross-account access or federation. For a comparison of AssumeRole with the other APIs that produce temporary credentials, see Requesting Temporary Security Credentials and Comparing the AWS STS APIs in the IAM User Guide.

        Important: You cannot call AssumeRole by using AWS root account credentials; access is denied. You must use credentials for an IAM user or an IAM role to call AssumeRole.

        For cross-account access, imagine that you own multiple accounts and need to access resources in each account. You could create long-term credentials in each account to access those resources. However, managing all those credentials and remembering which one can access which account can be time consuming. Instead, you can create one set of long-term credentials in one account and then use temporary security credentials to access all the other accounts by assuming roles in those accounts. For more information about roles, see IAM Roles (Delegation and Federation) in the IAM User Guide.

        For federation, you can, for example, grant single sign-on access to the AWS Management Console. If you already have an identity and authentication system in your corporate network, you don't have to recreate user identities in AWS in order to grant those user identities access to AWS. Instead, after a user has been authenticated, you call AssumeRole (and specify the role with the appropriate permissions) to get temporary security credentials for that user. With those temporary security credentials, you construct a sign-in URL that users can use to access the console. For more information, see Common Scenarios for Temporary Credentials in the IAM User Guide.

        The temporary security credentials are valid for the duration that you specified when calling AssumeRole, which can be from 900 seconds (15 minutes) to a maximum of 3600 seconds (1 hour). The default is 1 hour.

        The temporary security credentials created by AssumeRole can be used to make API calls to any AWS service with the following exception: you cannot call the STS service's GetFederationToken or GetSessionToken APIs.

        Optionally, you can pass an IAM access policy to this operation. If you choose not to pass a policy, the temporary security credentials that are returned by the operation have the permissions that are defined in the access policy of the role that is being assumed. If you pass a policy to this operation, the temporary security credentials that are returned by the operation have the permissions that are allowed by both the access policy of the role that is being assumed, and the policy that you pass. This gives you a way to further restrict the permissions for the resulting temporary security credentials. You cannot use the passed policy to grant permissions that are in excess of those allowed by the access policy of the role that is being assumed. For more information, see Permissions for AssumeRole, AssumeRoleWithSAML, and AssumeRoleWithWebIdentity in the IAM User Guide.

        To assume a role, your AWS account must be trusted by the role. The trust relationship is defined in the role's trust policy when the role is created. That trust policy states which accounts are allowed to delegate access to this account's role.

        The user who wants to access the role must also have permissions delegated from the role's administrator. If the user is in a different account than the role, then the user's administrator must attach a policy that allows the user to call AssumeRole on the ARN of the role in the other account. If the user is in the same account as the role, then you can either attach a policy to the user (identical to the previous different account user), or you can add the user as a principal directly in the role's trust policy

        Using MFA with AssumeRole

        You can optionally include multi-factor authentication (MFA) information when you call AssumeRole. This is useful for cross-account scenarios in which you want to make sure that the user who is assuming the role has been authenticated using an AWS MFA device. In that scenario, the trust policy of the role being assumed includes a condition that tests for MFA authentication; if the caller does not include valid MFA information, the request to assume the role is denied. The condition in a trust policy that tests for MFA authentication might look like the following example.

        \"Condition\": {\"Bool\": {\"aws:MultiFactorAuthPresent\": true}}

        For more information, see Configuring MFA-Protected API Access in the IAM User Guide guide.

        To use MFA with AssumeRole, you pass values for the SerialNumber and TokenCode parameters. The SerialNumber value identifies the user's hardware or virtual MFA device. The TokenCode is the time-based one-time password (TOTP) that the MFA devices produces.

        ", "AssumeRoleWithSAML": "

        Returns a set of temporary security credentials for users who have been authenticated via a SAML authentication response. This operation provides a mechanism for tying an enterprise identity store or directory to role-based AWS access without user-specific credentials or configuration. For a comparison of AssumeRoleWithSAML with the other APIs that produce temporary credentials, see Requesting Temporary Security Credentials and Comparing the AWS STS APIs in the IAM User Guide.

        The temporary security credentials returned by this operation consist of an access key ID, a secret access key, and a security token. Applications can use these temporary security credentials to sign calls to AWS services.

        The temporary security credentials are valid for the duration that you specified when calling AssumeRole, or until the time specified in the SAML authentication response's SessionNotOnOrAfter value, whichever is shorter. The duration can be from 900 seconds (15 minutes) to a maximum of 3600 seconds (1 hour). The default is 1 hour.

        The temporary security credentials created by AssumeRoleWithSAML can be used to make API calls to any AWS service with the following exception: you cannot call the STS service's GetFederationToken or GetSessionToken APIs.

        Optionally, you can pass an IAM access policy to this operation. If you choose not to pass a policy, the temporary security credentials that are returned by the operation have the permissions that are defined in the access policy of the role that is being assumed. If you pass a policy to this operation, the temporary security credentials that are returned by the operation have the permissions that are allowed by the intersection of both the access policy of the role that is being assumed, and the policy that you pass. This means that both policies must grant the permission for the action to be allowed. This gives you a way to further restrict the permissions for the resulting temporary security credentials. You cannot use the passed policy to grant permissions that are in excess of those allowed by the access policy of the role that is being assumed. For more information, see Permissions for AssumeRole, AssumeRoleWithSAML, and AssumeRoleWithWebIdentity in the IAM User Guide.

        Before your application can call AssumeRoleWithSAML, you must configure your SAML identity provider (IdP) to issue the claims required by AWS. Additionally, you must use AWS Identity and Access Management (IAM) to create a SAML provider entity in your AWS account that represents your identity provider, and create an IAM role that specifies this SAML provider in its trust policy.

        Calling AssumeRoleWithSAML does not require the use of AWS security credentials. The identity of the caller is validated by using keys in the metadata document that is uploaded for the SAML provider entity for your identity provider.

        Calling AssumeRoleWithSAML can result in an entry in your AWS CloudTrail logs. The entry includes the value in the NameID element of the SAML assertion. We recommend that you use a NameIDType that is not associated with any personally identifiable information (PII). For example, you could instead use the Persistent Identifier (urn:oasis:names:tc:SAML:2.0:nameid-format:persistent).

        For more information, see the following resources:

        ", "AssumeRoleWithWebIdentity": "

        Returns a set of temporary security credentials for users who have been authenticated in a mobile or web application with a web identity provider, such as Amazon Cognito, Login with Amazon, Facebook, Google, or any OpenID Connect-compatible identity provider.

        For mobile applications, we recommend that you use Amazon Cognito. You can use Amazon Cognito with the AWS SDK for iOS and the AWS SDK for Android to uniquely identify a user and supply the user with a consistent identity throughout the lifetime of an application.

        To learn more about Amazon Cognito, see Amazon Cognito Overview in the AWS SDK for Android Developer Guide guide and Amazon Cognito Overview in the AWS SDK for iOS Developer Guide.

        Calling AssumeRoleWithWebIdentity does not require the use of AWS security credentials. Therefore, you can distribute an application (for example, on mobile devices) that requests temporary security credentials without including long-term AWS credentials in the application, and without deploying server-based proxy services that use long-term AWS credentials. Instead, the identity of the caller is validated by using a token from the web identity provider. For a comparison of AssumeRoleWithWebIdentity with the other APIs that produce temporary credentials, see Requesting Temporary Security Credentials and Comparing the AWS STS APIs in the IAM User Guide.

        The temporary security credentials returned by this API consist of an access key ID, a secret access key, and a security token. Applications can use these temporary security credentials to sign calls to AWS service APIs.

        The credentials are valid for the duration that you specified when calling AssumeRoleWithWebIdentity, which can be from 900 seconds (15 minutes) to a maximum of 3600 seconds (1 hour). The default is 1 hour.

        The temporary security credentials created by AssumeRoleWithWebIdentity can be used to make API calls to any AWS service with the following exception: you cannot call the STS service's GetFederationToken or GetSessionToken APIs.

        Optionally, you can pass an IAM access policy to this operation. If you choose not to pass a policy, the temporary security credentials that are returned by the operation have the permissions that are defined in the access policy of the role that is being assumed. If you pass a policy to this operation, the temporary security credentials that are returned by the operation have the permissions that are allowed by both the access policy of the role that is being assumed, and the policy that you pass. This gives you a way to further restrict the permissions for the resulting temporary security credentials. You cannot use the passed policy to grant permissions that are in excess of those allowed by the access policy of the role that is being assumed. For more information, see Permissions for AssumeRole, AssumeRoleWithSAML, and AssumeRoleWithWebIdentity in the IAM User Guide.

        Before your application can call AssumeRoleWithWebIdentity, you must have an identity token from a supported identity provider and create a role that the application can assume. The role that your application assumes must trust the identity provider that is associated with the identity token. In other words, the identity provider must be specified in the role's trust policy.

        Calling AssumeRoleWithWebIdentity can result in an entry in your AWS CloudTrail logs. The entry includes the Subject of the provided Web Identity Token. We recommend that you avoid using any personally identifiable information (PII) in this field. For example, you could instead use a GUID or a pairwise identifier, as suggested in the OIDC specification.

        For more information about how to use web identity federation and the AssumeRoleWithWebIdentity API, see the following resources:

        ", "DecodeAuthorizationMessage": "

        Decodes additional information about the authorization status of a request from an encoded message returned in response to an AWS request.

        For example, if a user is not authorized to perform an action that he or she has requested, the request returns a Client.UnauthorizedOperation response (an HTTP 403 response). Some AWS actions additionally return an encoded message that can provide details about this authorization failure.

        Only certain AWS actions return an encoded authorization message. The documentation for an individual action indicates whether that action returns an encoded message in addition to returning an HTTP code.

        The message is encoded because the details of the authorization status can constitute privileged information that the user who requested the action should not see. To decode an authorization status message, a user must be granted permissions via an IAM policy to request the DecodeAuthorizationMessage (sts:DecodeAuthorizationMessage) action.

        The decoded message includes the following type of information:

        • Whether the request was denied due to an explicit deny or due to the absence of an explicit allow. For more information, see Determining Whether a Request is Allowed or Denied in the IAM User Guide.

        • The principal who made the request.

        • The requested action.

        • The requested resource.

        • The values of condition keys in the context of the user's request.

        ", "GetCallerIdentity": "

        Returns details about the IAM identity whose credentials are used to call the API.

        ", "GetFederationToken": "

        Returns a set of temporary security credentials (consisting of an access key ID, a secret access key, and a security token) for a federated user. A typical use is in a proxy application that gets temporary security credentials on behalf of distributed applications inside a corporate network. Because you must call the GetFederationToken action using the long-term security credentials of an IAM user, this call is appropriate in contexts where those credentials can be safely stored, usually in a server-based application. For a comparison of GetFederationToken with the other APIs that produce temporary credentials, see Requesting Temporary Security Credentials and Comparing the AWS STS APIs in the IAM User Guide.

        If you are creating a mobile-based or browser-based app that can authenticate users using a web identity provider like Login with Amazon, Facebook, Google, or an OpenID Connect-compatible identity provider, we recommend that you use Amazon Cognito or AssumeRoleWithWebIdentity. For more information, see Federation Through a Web-based Identity Provider.

        The GetFederationToken action must be called by using the long-term AWS security credentials of an IAM user. You can also call GetFederationToken using the security credentials of an AWS root account, but we do not recommended it. Instead, we recommend that you create an IAM user for the purpose of the proxy application and then attach a policy to the IAM user that limits federated users to only the actions and resources that they need access to. For more information, see IAM Best Practices in the IAM User Guide.

        The temporary security credentials that are obtained by using the long-term credentials of an IAM user are valid for the specified duration, from 900 seconds (15 minutes) up to a maximium of 129600 seconds (36 hours). The default is 43200 seconds (12 hours). Temporary credentials that are obtained by using AWS root account credentials have a maximum duration of 3600 seconds (1 hour).

        The temporary security credentials created by GetFederationToken can be used to make API calls to any AWS service with the following exceptions:

        • You cannot use these credentials to call any IAM APIs.

        • You cannot call any STS APIs.

        Permissions

        The permissions for the temporary security credentials returned by GetFederationToken are determined by a combination of the following:

        • The policy or policies that are attached to the IAM user whose credentials are used to call GetFederationToken.

        • The policy that is passed as a parameter in the call.

        The passed policy is attached to the temporary security credentials that result from the GetFederationToken API call--that is, to the federated user. When the federated user makes an AWS request, AWS evaluates the policy attached to the federated user in combination with the policy or policies attached to the IAM user whose credentials were used to call GetFederationToken. AWS allows the federated user's request only when both the federated user and the IAM user are explicitly allowed to perform the requested action. The passed policy cannot grant more permissions than those that are defined in the IAM user policy.

        A typical use case is that the permissions of the IAM user whose credentials are used to call GetFederationToken are designed to allow access to all the actions and resources that any federated user will need. Then, for individual users, you pass a policy to the operation that scopes down the permissions to a level that's appropriate to that individual user, using a policy that allows only a subset of permissions that are granted to the IAM user.

        If you do not pass a policy, the resulting temporary security credentials have no effective permissions. The only exception is when the temporary security credentials are used to access a resource that has a resource-based policy that specifically allows the federated user to access the resource.

        For more information about how permissions work, see Permissions for GetFederationToken. For information about using GetFederationToken to create temporary security credentials, see GetFederationToken—Federation Through a Custom Identity Broker.

        ", "GetSessionToken": "

        Returns a set of temporary credentials for an AWS account or IAM user. The credentials consist of an access key ID, a secret access key, and a security token. Typically, you use GetSessionToken if you want to use MFA to protect programmatic calls to specific AWS APIs like Amazon EC2 StopInstances. MFA-enabled IAM users would need to call GetSessionToken and submit an MFA code that is associated with their MFA device. Using the temporary security credentials that are returned from the call, IAM users can then make programmatic calls to APIs that require MFA authentication. If you do not supply a correct MFA code, then the API returns an access denied error. For a comparison of GetSessionToken with the other APIs that produce temporary credentials, see Requesting Temporary Security Credentials and Comparing the AWS STS APIs in the IAM User Guide.

        The GetSessionToken action must be called by using the long-term AWS security credentials of the AWS account or an IAM user. Credentials that are created by IAM users are valid for the duration that you specify, from 900 seconds (15 minutes) up to a maximum of 129600 seconds (36 hours), with a default of 43200 seconds (12 hours); credentials that are created by using account credentials can range from 900 seconds (15 minutes) up to a maximum of 3600 seconds (1 hour), with a default of 1 hour.

        The temporary security credentials created by GetSessionToken can be used to make API calls to any AWS service with the following exceptions:

        • You cannot call any IAM APIs unless MFA authentication information is included in the request.

        • You cannot call any STS API except AssumeRole.

        We recommend that you do not call GetSessionToken with root account credentials. Instead, follow our best practices by creating one or more IAM users, giving them the necessary permissions, and using IAM users for everyday interaction with AWS.

        The permissions associated with the temporary security credentials returned by GetSessionToken are based on the permissions associated with account or IAM user whose credentials are used to call the action. If GetSessionToken is called using root account credentials, the temporary credentials have root account permissions. Similarly, if GetSessionToken is called using the credentials of an IAM user, the temporary credentials have the same permissions as the IAM user.

        For more information about using GetSessionToken to create temporary credentials, go to Temporary Credentials for Users in Untrusted Environments in the IAM User Guide.

        " }, "shapes": { "AssumeRoleRequest": { "base": null, "refs": { } }, "AssumeRoleResponse": { "base": "

        Contains the response to a successful AssumeRole request, including temporary AWS credentials that can be used to make AWS requests.

        ", "refs": { } }, "AssumeRoleWithSAMLRequest": { "base": null, "refs": { } }, "AssumeRoleWithSAMLResponse": { "base": "

        Contains the response to a successful AssumeRoleWithSAML request, including temporary AWS credentials that can be used to make AWS requests.

        ", "refs": { } }, "AssumeRoleWithWebIdentityRequest": { "base": null, "refs": { } }, "AssumeRoleWithWebIdentityResponse": { "base": "

        Contains the response to a successful AssumeRoleWithWebIdentity request, including temporary AWS credentials that can be used to make AWS requests.

        ", "refs": { } }, "AssumedRoleUser": { "base": "

        The identifiers for the temporary security credentials that the operation returns.

        ", "refs": { "AssumeRoleResponse$AssumedRoleUser": "

        The Amazon Resource Name (ARN) and the assumed role ID, which are identifiers that you can use to refer to the resulting temporary security credentials. For example, you can reference these credentials as a principal in a resource-based policy by using the ARN or assumed role ID. The ARN and ID include the RoleSessionName that you specified when you called AssumeRole.

        ", "AssumeRoleWithSAMLResponse$AssumedRoleUser": "

        The identifiers for the temporary security credentials that the operation returns.

        ", "AssumeRoleWithWebIdentityResponse$AssumedRoleUser": "

        The Amazon Resource Name (ARN) and the assumed role ID, which are identifiers that you can use to refer to the resulting temporary security credentials. For example, you can reference these credentials as a principal in a resource-based policy by using the ARN or assumed role ID. The ARN and ID include the RoleSessionName that you specified when you called AssumeRole.

        " } }, "Audience": { "base": null, "refs": { "AssumeRoleWithSAMLResponse$Audience": "

        The value of the Recipient attribute of the SubjectConfirmationData element of the SAML assertion.

        ", "AssumeRoleWithWebIdentityResponse$Audience": "

        The intended audience (also known as client ID) of the web identity token. This is traditionally the client identifier issued to the application that requested the web identity token.

        " } }, "Credentials": { "base": "

        AWS credentials for API authentication.

        ", "refs": { "AssumeRoleResponse$Credentials": "

        The temporary security credentials, which include an access key ID, a secret access key, and a security (or session) token.

        Note: The size of the security token that STS APIs return is not fixed. We strongly recommend that you make no assumptions about the maximum size. As of this writing, the typical size is less than 4096 bytes, but that can vary. Also, future updates to AWS might require larger sizes.

        ", "AssumeRoleWithSAMLResponse$Credentials": "

        The temporary security credentials, which include an access key ID, a secret access key, and a security (or session) token.

        Note: The size of the security token that STS APIs return is not fixed. We strongly recommend that you make no assumptions about the maximum size. As of this writing, the typical size is less than 4096 bytes, but that can vary. Also, future updates to AWS might require larger sizes.

        ", "AssumeRoleWithWebIdentityResponse$Credentials": "

        The temporary security credentials, which include an access key ID, a secret access key, and a security token.

        Note: The size of the security token that STS APIs return is not fixed. We strongly recommend that you make no assumptions about the maximum size. As of this writing, the typical size is less than 4096 bytes, but that can vary. Also, future updates to AWS might require larger sizes.

        ", "GetFederationTokenResponse$Credentials": "

        The temporary security credentials, which include an access key ID, a secret access key, and a security (or session) token.

        Note: The size of the security token that STS APIs return is not fixed. We strongly recommend that you make no assumptions about the maximum size. As of this writing, the typical size is less than 4096 bytes, but that can vary. Also, future updates to AWS might require larger sizes.

        ", "GetSessionTokenResponse$Credentials": "

        The temporary security credentials, which include an access key ID, a secret access key, and a security (or session) token.

        Note: The size of the security token that STS APIs return is not fixed. We strongly recommend that you make no assumptions about the maximum size. As of this writing, the typical size is less than 4096 bytes, but that can vary. Also, future updates to AWS might require larger sizes.

        " } }, "DecodeAuthorizationMessageRequest": { "base": null, "refs": { } }, "DecodeAuthorizationMessageResponse": { "base": "

        A document that contains additional information about the authorization status of a request from an encoded message that is returned in response to an AWS request.

        ", "refs": { } }, "ExpiredTokenException": { "base": "

        The web identity token that was passed is expired or is not valid. Get a new identity token from the identity provider and then retry the request.

        ", "refs": { } }, "FederatedUser": { "base": "

        Identifiers for the federated user that is associated with the credentials.

        ", "refs": { "GetFederationTokenResponse$FederatedUser": "

        Identifiers for the federated user associated with the credentials (such as arn:aws:sts::123456789012:federated-user/Bob or 123456789012:Bob). You can use the federated user's ARN in your resource-based policies, such as an Amazon S3 bucket policy.

        " } }, "GetCallerIdentityRequest": { "base": null, "refs": { } }, "GetCallerIdentityResponse": { "base": "

        Contains the response to a successful GetCallerIdentity request, including information about the entity making the request.

        ", "refs": { } }, "GetFederationTokenRequest": { "base": null, "refs": { } }, "GetFederationTokenResponse": { "base": "

        Contains the response to a successful GetFederationToken request, including temporary AWS credentials that can be used to make AWS requests.

        ", "refs": { } }, "GetSessionTokenRequest": { "base": null, "refs": { } }, "GetSessionTokenResponse": { "base": "

        Contains the response to a successful GetSessionToken request, including temporary AWS credentials that can be used to make AWS requests.

        ", "refs": { } }, "IDPCommunicationErrorException": { "base": "

        The request could not be fulfilled because the non-AWS identity provider (IDP) that was asked to verify the incoming identity token could not be reached. This is often a transient error caused by network conditions. Retry the request a limited number of times so that you don't exceed the request rate. If the error persists, the non-AWS identity provider might be down or not responding.

        ", "refs": { } }, "IDPRejectedClaimException": { "base": "

        The identity provider (IdP) reported that authentication failed. This might be because the claim is invalid.

        If this error is returned for the AssumeRoleWithWebIdentity operation, it can also mean that the claim has expired or has been explicitly revoked.

        ", "refs": { } }, "InvalidAuthorizationMessageException": { "base": "

        The error returned if the message passed to DecodeAuthorizationMessage was invalid. This can happen if the token contains invalid characters, such as linebreaks.

        ", "refs": { } }, "InvalidIdentityTokenException": { "base": "

        The web identity token that was passed could not be validated by AWS. Get a new identity token from the identity provider and then retry the request.

        ", "refs": { } }, "Issuer": { "base": null, "refs": { "AssumeRoleWithSAMLResponse$Issuer": "

        The value of the Issuer element of the SAML assertion.

        ", "AssumeRoleWithWebIdentityResponse$Provider": "

        The issuing authority of the web identity token presented. For OpenID Connect ID Tokens this contains the value of the iss field. For OAuth 2.0 access tokens, this contains the value of the ProviderId parameter that was passed in the AssumeRoleWithWebIdentity request.

        " } }, "MalformedPolicyDocumentException": { "base": "

        The request was rejected because the policy document was malformed. The error message describes the specific error.

        ", "refs": { } }, "NameQualifier": { "base": null, "refs": { "AssumeRoleWithSAMLResponse$NameQualifier": "

        A hash value based on the concatenation of the Issuer response value, the AWS account ID, and the friendly name (the last part of the ARN) of the SAML provider in IAM. The combination of NameQualifier and Subject can be used to uniquely identify a federated user.

        The following pseudocode shows how the hash value is calculated:

        BASE64 ( SHA1 ( \"https://example.com/saml\" + \"123456789012\" + \"/MySAMLIdP\" ) )

        " } }, "PackedPolicyTooLargeException": { "base": "

        The request was rejected because the policy document was too large. The error message describes how big the policy document is, in packed form, as a percentage of what the API allows.

        ", "refs": { } }, "RegionDisabledException": { "base": "

        STS is not activated in the requested region for the account that is being asked to generate credentials. The account administrator must use the IAM console to activate STS in that region. For more information, see Activating and Deactivating AWS STS in an AWS Region in the IAM User Guide.

        ", "refs": { } }, "SAMLAssertionType": { "base": null, "refs": { "AssumeRoleWithSAMLRequest$SAMLAssertion": "

        The base-64 encoded SAML authentication response provided by the IdP.

        For more information, see Configuring a Relying Party and Adding Claims in the Using IAM guide.

        " } }, "Subject": { "base": null, "refs": { "AssumeRoleWithSAMLResponse$Subject": "

        The value of the NameID element in the Subject element of the SAML assertion.

        " } }, "SubjectType": { "base": null, "refs": { "AssumeRoleWithSAMLResponse$SubjectType": "

        The format of the name ID, as defined by the Format attribute in the NameID element of the SAML assertion. Typical examples of the format are transient or persistent.

        If the format includes the prefix urn:oasis:names:tc:SAML:2.0:nameid-format, that prefix is removed. For example, urn:oasis:names:tc:SAML:2.0:nameid-format:transient is returned as transient. If the format includes any other prefix, the format is returned with no modifications.

        " } }, "accessKeyIdType": { "base": null, "refs": { "Credentials$AccessKeyId": "

        The access key ID that identifies the temporary security credentials.

        " } }, "accessKeySecretType": { "base": null, "refs": { "Credentials$SecretAccessKey": "

        The secret access key that can be used to sign requests.

        " } }, "accountType": { "base": null, "refs": { "GetCallerIdentityResponse$Account": "

        The AWS account ID number of the account that owns or contains the calling entity.

        " } }, "arnType": { "base": null, "refs": { "AssumeRoleRequest$RoleArn": "

        The Amazon Resource Name (ARN) of the role to assume.

        ", "AssumeRoleWithSAMLRequest$RoleArn": "

        The Amazon Resource Name (ARN) of the role that the caller is assuming.

        ", "AssumeRoleWithSAMLRequest$PrincipalArn": "

        The Amazon Resource Name (ARN) of the SAML provider in IAM that describes the IdP.

        ", "AssumeRoleWithWebIdentityRequest$RoleArn": "

        The Amazon Resource Name (ARN) of the role that the caller is assuming.

        ", "AssumedRoleUser$Arn": "

        The ARN of the temporary security credentials that are returned from the AssumeRole action. For more information about ARNs and how to use them in policies, see IAM Identifiers in Using IAM.

        ", "FederatedUser$Arn": "

        The ARN that specifies the federated user that is associated with the credentials. For more information about ARNs and how to use them in policies, see IAM Identifiers in Using IAM.

        ", "GetCallerIdentityResponse$Arn": "

        The AWS ARN associated with the calling entity.

        " } }, "assumedRoleIdType": { "base": null, "refs": { "AssumedRoleUser$AssumedRoleId": "

        A unique identifier that contains the role ID and the role session name of the role that is being assumed. The role ID is generated by AWS when the role is created.

        " } }, "clientTokenType": { "base": null, "refs": { "AssumeRoleWithWebIdentityRequest$WebIdentityToken": "

        The OAuth 2.0 access token or OpenID Connect ID token that is provided by the identity provider. Your application must get this token by authenticating the user who is using your application with a web identity provider before the application makes an AssumeRoleWithWebIdentity call.

        " } }, "dateType": { "base": null, "refs": { "Credentials$Expiration": "

        The date on which the current credentials expire.

        " } }, "decodedMessageType": { "base": null, "refs": { "DecodeAuthorizationMessageResponse$DecodedMessage": "

        An XML document that contains the decoded message.

        " } }, "durationSecondsType": { "base": null, "refs": { "GetFederationTokenRequest$DurationSeconds": "

        The duration, in seconds, that the session should last. Acceptable durations for federation sessions range from 900 seconds (15 minutes) to 129600 seconds (36 hours), with 43200 seconds (12 hours) as the default. Sessions obtained using AWS account (root) credentials are restricted to a maximum of 3600 seconds (one hour). If the specified duration is longer than one hour, the session obtained by using AWS account (root) credentials defaults to one hour.

        ", "GetSessionTokenRequest$DurationSeconds": "

        The duration, in seconds, that the credentials should remain valid. Acceptable durations for IAM user sessions range from 900 seconds (15 minutes) to 129600 seconds (36 hours), with 43200 seconds (12 hours) as the default. Sessions for AWS account owners are restricted to a maximum of 3600 seconds (one hour). If the duration is longer than one hour, the session for AWS account owners defaults to one hour.

        " } }, "encodedMessageType": { "base": null, "refs": { "DecodeAuthorizationMessageRequest$EncodedMessage": "

        The encoded message that was returned with the response.

        " } }, "expiredIdentityTokenMessage": { "base": null, "refs": { "ExpiredTokenException$message": null } }, "externalIdType": { "base": null, "refs": { "AssumeRoleRequest$ExternalId": "

        A unique identifier that is used by third parties when assuming roles in their customers' accounts. For each role that the third party can assume, they should instruct their customers to ensure the role's trust policy checks for the external ID that the third party generated. Each time the third party assumes the role, they should pass the customer's external ID. The external ID is useful in order to help third parties bind a role to the customer who created it. For more information about the external ID, see How to Use an External ID When Granting Access to Your AWS Resources to a Third Party in the IAM User Guide.

        The format for this parameter, as described by its regex pattern, is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:\\/-

        " } }, "federatedIdType": { "base": null, "refs": { "FederatedUser$FederatedUserId": "

        The string that identifies the federated user associated with the credentials, similar to the unique ID of an IAM user.

        " } }, "idpCommunicationErrorMessage": { "base": null, "refs": { "IDPCommunicationErrorException$message": null } }, "idpRejectedClaimMessage": { "base": null, "refs": { "IDPRejectedClaimException$message": null } }, "invalidAuthorizationMessage": { "base": null, "refs": { "InvalidAuthorizationMessageException$message": null } }, "invalidIdentityTokenMessage": { "base": null, "refs": { "InvalidIdentityTokenException$message": null } }, "malformedPolicyDocumentMessage": { "base": null, "refs": { "MalformedPolicyDocumentException$message": null } }, "nonNegativeIntegerType": { "base": null, "refs": { "AssumeRoleResponse$PackedPolicySize": "

        A percentage value that indicates the size of the policy in packed form. The service rejects any policy with a packed size greater than 100 percent, which means the policy exceeded the allowed space.

        ", "AssumeRoleWithSAMLResponse$PackedPolicySize": "

        A percentage value that indicates the size of the policy in packed form. The service rejects any policy with a packed size greater than 100 percent, which means the policy exceeded the allowed space.

        ", "AssumeRoleWithWebIdentityResponse$PackedPolicySize": "

        A percentage value that indicates the size of the policy in packed form. The service rejects any policy with a packed size greater than 100 percent, which means the policy exceeded the allowed space.

        ", "GetFederationTokenResponse$PackedPolicySize": "

        A percentage value indicating the size of the policy in packed form. The service rejects policies for which the packed size is greater than 100 percent of the allowed value.

        " } }, "packedPolicyTooLargeMessage": { "base": null, "refs": { "PackedPolicyTooLargeException$message": null } }, "regionDisabledMessage": { "base": null, "refs": { "RegionDisabledException$message": null } }, "roleDurationSecondsType": { "base": null, "refs": { "AssumeRoleRequest$DurationSeconds": "

        The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) to 3600 seconds (1 hour). By default, the value is set to 3600 seconds.

        This is separate from the duration of a console session that you might request using the returned credentials. The request to the federation endpoint for a console sign-in token takes a SessionDuration parameter that specifies the maximum length of the console session, separately from the DurationSeconds parameter on this API. For more information, see Creating a URL that Enables Federated Users to Access the AWS Management Console in the IAM User Guide.

        ", "AssumeRoleWithSAMLRequest$DurationSeconds": "

        The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) to 3600 seconds (1 hour). By default, the value is set to 3600 seconds. An expiration can also be specified in the SAML authentication response's SessionNotOnOrAfter value. The actual expiration time is whichever value is shorter.

        This is separate from the duration of a console session that you might request using the returned credentials. The request to the federation endpoint for a console sign-in token takes a SessionDuration parameter that specifies the maximum length of the console session, separately from the DurationSeconds parameter on this API. For more information, see Enabling SAML 2.0 Federated Users to Access the AWS Management Console in the IAM User Guide.

        ", "AssumeRoleWithWebIdentityRequest$DurationSeconds": "

        The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) to 3600 seconds (1 hour). By default, the value is set to 3600 seconds.

        This is separate from the duration of a console session that you might request using the returned credentials. The request to the federation endpoint for a console sign-in token takes a SessionDuration parameter that specifies the maximum length of the console session, separately from the DurationSeconds parameter on this API. For more information, see Creating a URL that Enables Federated Users to Access the AWS Management Console in the IAM User Guide.

        " } }, "roleSessionNameType": { "base": null, "refs": { "AssumeRoleRequest$RoleSessionName": "

        An identifier for the assumed role session.

        Use the role session name to uniquely identify a session when the same role is assumed by different principals or for different reasons. In cross-account scenarios, the role session name is visible to, and can be logged by the account that owns the role. The role session name is also used in the ARN of the assumed role principal. This means that subsequent cross-account API requests using the temporary security credentials will expose the role session name to the external account in their CloudTrail logs.

        The format for this parameter, as described by its regex pattern, is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@-

        ", "AssumeRoleWithWebIdentityRequest$RoleSessionName": "

        An identifier for the assumed role session. Typically, you pass the name or identifier that is associated with the user who is using your application. That way, the temporary security credentials that your application will use are associated with that user. This session name is included as part of the ARN and assumed role ID in the AssumedRoleUser response element.

        The format for this parameter, as described by its regex pattern, is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@-

        " } }, "serialNumberType": { "base": null, "refs": { "AssumeRoleRequest$SerialNumber": "

        The identification number of the MFA device that is associated with the user who is making the AssumeRole call. Specify this value if the trust policy of the role being assumed includes a condition that requires MFA authentication. The value is either the serial number for a hardware device (such as GAHT12345678) or an Amazon Resource Name (ARN) for a virtual device (such as arn:aws:iam::123456789012:mfa/user).

        The format for this parameter, as described by its regex pattern, is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@-

        ", "GetSessionTokenRequest$SerialNumber": "

        The identification number of the MFA device that is associated with the IAM user who is making the GetSessionToken call. Specify this value if the IAM user has a policy that requires MFA authentication. The value is either the serial number for a hardware device (such as GAHT12345678) or an Amazon Resource Name (ARN) for a virtual device (such as arn:aws:iam::123456789012:mfa/user). You can find the device for an IAM user by going to the AWS Management Console and viewing the user's security credentials.

        The format for this parameter, as described by its regex pattern, is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@-

        " } }, "sessionPolicyDocumentType": { "base": null, "refs": { "AssumeRoleRequest$Policy": "

        An IAM policy in JSON format.

        This parameter is optional. If you pass a policy, the temporary security credentials that are returned by the operation have the permissions that are allowed by both (the intersection of) the access policy of the role that is being assumed, and the policy that you pass. This gives you a way to further restrict the permissions for the resulting temporary security credentials. You cannot use the passed policy to grant permissions that are in excess of those allowed by the access policy of the role that is being assumed. For more information, see Permissions for AssumeRole, AssumeRoleWithSAML, and AssumeRoleWithWebIdentity in the IAM User Guide.

        The format for this parameter, as described by its regex pattern, is a string of characters up to 2048 characters in length. The characters can be any ASCII character from the space character to the end of the valid character list (\\u0020-\\u00FF). It can also include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D) characters.

        The policy plain text must be 2048 bytes or shorter. However, an internal conversion compresses it into a packed binary format with a separate limit. The PackedPolicySize response element indicates by percentage how close to the upper size limit the policy is, with 100% equaling the maximum allowed size.

        ", "AssumeRoleWithSAMLRequest$Policy": "

        An IAM policy in JSON format.

        The policy parameter is optional. If you pass a policy, the temporary security credentials that are returned by the operation have the permissions that are allowed by both the access policy of the role that is being assumed, and the policy that you pass. This gives you a way to further restrict the permissions for the resulting temporary security credentials. You cannot use the passed policy to grant permissions that are in excess of those allowed by the access policy of the role that is being assumed. For more information, Permissions for AssumeRole, AssumeRoleWithSAML, and AssumeRoleWithWebIdentity in the IAM User Guide.

        The format for this parameter, as described by its regex pattern, is a string of characters up to 2048 characters in length. The characters can be any ASCII character from the space character to the end of the valid character list (\\u0020-\\u00FF). It can also include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D) characters.

        The policy plain text must be 2048 bytes or shorter. However, an internal conversion compresses it into a packed binary format with a separate limit. The PackedPolicySize response element indicates by percentage how close to the upper size limit the policy is, with 100% equaling the maximum allowed size.

        ", "AssumeRoleWithWebIdentityRequest$Policy": "

        An IAM policy in JSON format.

        The policy parameter is optional. If you pass a policy, the temporary security credentials that are returned by the operation have the permissions that are allowed by both the access policy of the role that is being assumed, and the policy that you pass. This gives you a way to further restrict the permissions for the resulting temporary security credentials. You cannot use the passed policy to grant permissions that are in excess of those allowed by the access policy of the role that is being assumed. For more information, see Permissions for AssumeRoleWithWebIdentity in the IAM User Guide.

        The format for this parameter, as described by its regex pattern, is a string of characters up to 2048 characters in length. The characters can be any ASCII character from the space character to the end of the valid character list (\\u0020-\\u00FF). It can also include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D) characters.

        The policy plain text must be 2048 bytes or shorter. However, an internal conversion compresses it into a packed binary format with a separate limit. The PackedPolicySize response element indicates by percentage how close to the upper size limit the policy is, with 100% equaling the maximum allowed size.

        ", "GetFederationTokenRequest$Policy": "

        An IAM policy in JSON format that is passed with the GetFederationToken call and evaluated along with the policy or policies that are attached to the IAM user whose credentials are used to call GetFederationToken. The passed policy is used to scope down the permissions that are available to the IAM user, by allowing only a subset of the permissions that are granted to the IAM user. The passed policy cannot grant more permissions than those granted to the IAM user. The final permissions for the federated user are the most restrictive set based on the intersection of the passed policy and the IAM user policy.

        If you do not pass a policy, the resulting temporary security credentials have no effective permissions. The only exception is when the temporary security credentials are used to access a resource that has a resource-based policy that specifically allows the federated user to access the resource.

        The format for this parameter, as described by its regex pattern, is a string of characters up to 2048 characters in length. The characters can be any ASCII character from the space character to the end of the valid character list (\\u0020-\\u00FF). It can also include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D) characters.

        The policy plain text must be 2048 bytes or shorter. However, an internal conversion compresses it into a packed binary format with a separate limit. The PackedPolicySize response element indicates by percentage how close to the upper size limit the policy is, with 100% equaling the maximum allowed size.

        For more information about how permissions work, see Permissions for GetFederationToken.

        " } }, "tokenCodeType": { "base": null, "refs": { "AssumeRoleRequest$TokenCode": "

        The value provided by the MFA device, if the trust policy of the role being assumed requires MFA (that is, if the policy includes a condition that tests for MFA). If the role being assumed requires MFA and if the TokenCode value is missing or expired, the AssumeRole call returns an \"access denied\" error.

        The format for this parameter, as described by its regex pattern, is a sequence of six numeric digits.

        ", "GetSessionTokenRequest$TokenCode": "

        The value provided by the MFA device, if MFA is required. If any policy requires the IAM user to submit an MFA code, specify this value. If MFA authentication is required, and the user does not provide a code when requesting a set of temporary security credentials, the user will receive an \"access denied\" response when requesting resources that require MFA authentication.

        The format for this parameter, as described by its regex pattern, is a sequence of six numeric digits.

        " } }, "tokenType": { "base": null, "refs": { "Credentials$SessionToken": "

        The token that users must pass to the service API to use the temporary credentials.

        " } }, "urlType": { "base": null, "refs": { "AssumeRoleWithWebIdentityRequest$ProviderId": "

        The fully qualified host component of the domain name of the identity provider.

        Specify this value only for OAuth 2.0 access tokens. Currently www.amazon.com and graph.facebook.com are the only supported identity providers for OAuth 2.0 access tokens. Do not include URL schemes and port numbers.

        Do not specify this value for OpenID Connect ID tokens.

        " } }, "userIdType": { "base": null, "refs": { "GetCallerIdentityResponse$UserId": "

        The unique identifier of the calling entity. The exact value depends on the type of entity making the call. The values returned are those listed in the aws:userid column in the Principal table found on the Policy Variables reference page in the IAM User Guide.

        " } }, "userNameType": { "base": null, "refs": { "GetFederationTokenRequest$Name": "

        The name of the federated user. The name is used as an identifier for the temporary security credentials (such as Bob). For example, you can reference the federated user name in a resource-based policy, such as in an Amazon S3 bucket policy.

        The format for this parameter, as described by its regex pattern, is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@-

        " } }, "webIdentitySubjectType": { "base": null, "refs": { "AssumeRoleWithWebIdentityResponse$SubjectFromWebIdentityToken": "

        The unique user identifier that is returned by the identity provider. This identifier is associated with the WebIdentityToken that was submitted with the AssumeRoleWithWebIdentity call. The identifier is typically unique to the user and the application that acquired the WebIdentityToken (pairwise identifier). For OpenID Connect ID tokens, this field contains the value returned by the identity provider as the token's sub (Subject) claim.

        " } } } } aws-sdk-go-1.4.22/models/apis/sts/2011-06-15/examples-1.json000066400000000000000000000000541300374646400225120ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/support/000077500000000000000000000000001300374646400175165ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/support/2013-04-15/000077500000000000000000000000001300374646400205475ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/support/2013-04-15/api-2.json000066400000000000000000000513301300374646400223540ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2013-04-15", "endpointPrefix":"support", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"AWS Support", "signatureVersion":"v4", "targetPrefix":"AWSSupport_20130415" }, "operations":{ "AddAttachmentsToSet":{ "name":"AddAttachmentsToSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddAttachmentsToSetRequest"}, "output":{"shape":"AddAttachmentsToSetResponse"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"AttachmentSetIdNotFound"}, {"shape":"AttachmentSetExpired"}, {"shape":"AttachmentSetSizeLimitExceeded"}, {"shape":"AttachmentLimitExceeded"} ] }, "AddCommunicationToCase":{ "name":"AddCommunicationToCase", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"AddCommunicationToCaseRequest"}, "output":{"shape":"AddCommunicationToCaseResponse"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"CaseIdNotFound"}, {"shape":"AttachmentSetIdNotFound"}, {"shape":"AttachmentSetExpired"} ] }, "CreateCase":{ "name":"CreateCase", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateCaseRequest"}, "output":{"shape":"CreateCaseResponse"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"CaseCreationLimitExceeded"}, {"shape":"AttachmentSetIdNotFound"}, {"shape":"AttachmentSetExpired"} ] }, "DescribeAttachment":{ "name":"DescribeAttachment", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeAttachmentRequest"}, "output":{"shape":"DescribeAttachmentResponse"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"DescribeAttachmentLimitExceeded"}, {"shape":"AttachmentIdNotFound"} ] }, "DescribeCases":{ "name":"DescribeCases", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeCasesRequest"}, "output":{"shape":"DescribeCasesResponse"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"CaseIdNotFound"} ] }, "DescribeCommunications":{ "name":"DescribeCommunications", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeCommunicationsRequest"}, "output":{"shape":"DescribeCommunicationsResponse"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"CaseIdNotFound"} ] }, "DescribeServices":{ "name":"DescribeServices", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeServicesRequest"}, "output":{"shape":"DescribeServicesResponse"}, "errors":[ {"shape":"InternalServerError"} ] }, "DescribeSeverityLevels":{ "name":"DescribeSeverityLevels", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeSeverityLevelsRequest"}, "output":{"shape":"DescribeSeverityLevelsResponse"}, "errors":[ {"shape":"InternalServerError"} ] }, "DescribeTrustedAdvisorCheckRefreshStatuses":{ "name":"DescribeTrustedAdvisorCheckRefreshStatuses", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTrustedAdvisorCheckRefreshStatusesRequest"}, "output":{"shape":"DescribeTrustedAdvisorCheckRefreshStatusesResponse"}, "errors":[ {"shape":"InternalServerError"} ] }, "DescribeTrustedAdvisorCheckResult":{ "name":"DescribeTrustedAdvisorCheckResult", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTrustedAdvisorCheckResultRequest"}, "output":{"shape":"DescribeTrustedAdvisorCheckResultResponse"}, "errors":[ {"shape":"InternalServerError"} ] }, "DescribeTrustedAdvisorCheckSummaries":{ "name":"DescribeTrustedAdvisorCheckSummaries", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTrustedAdvisorCheckSummariesRequest"}, "output":{"shape":"DescribeTrustedAdvisorCheckSummariesResponse"}, "errors":[ {"shape":"InternalServerError"} ] }, "DescribeTrustedAdvisorChecks":{ "name":"DescribeTrustedAdvisorChecks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTrustedAdvisorChecksRequest"}, "output":{"shape":"DescribeTrustedAdvisorChecksResponse"}, "errors":[ {"shape":"InternalServerError"} ] }, "RefreshTrustedAdvisorCheck":{ "name":"RefreshTrustedAdvisorCheck", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RefreshTrustedAdvisorCheckRequest"}, "output":{"shape":"RefreshTrustedAdvisorCheckResponse"}, "errors":[ {"shape":"InternalServerError"} ] }, "ResolveCase":{ "name":"ResolveCase", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ResolveCaseRequest"}, "output":{"shape":"ResolveCaseResponse"}, "errors":[ {"shape":"InternalServerError"}, {"shape":"CaseIdNotFound"} ] } }, "shapes":{ "AddAttachmentsToSetRequest":{ "type":"structure", "required":["attachments"], "members":{ "attachmentSetId":{"shape":"AttachmentSetId"}, "attachments":{"shape":"Attachments"} } }, "AddAttachmentsToSetResponse":{ "type":"structure", "members":{ "attachmentSetId":{"shape":"AttachmentSetId"}, "expiryTime":{"shape":"ExpiryTime"} } }, "AddCommunicationToCaseRequest":{ "type":"structure", "required":["communicationBody"], "members":{ "caseId":{"shape":"CaseId"}, "communicationBody":{"shape":"CommunicationBody"}, "ccEmailAddresses":{"shape":"CcEmailAddressList"}, "attachmentSetId":{"shape":"AttachmentSetId"} } }, "AddCommunicationToCaseResponse":{ "type":"structure", "members":{ "result":{"shape":"Result"} } }, "AfterTime":{"type":"string"}, "Attachment":{ "type":"structure", "members":{ "fileName":{"shape":"FileName"}, "data":{"shape":"Data"} } }, "AttachmentDetails":{ "type":"structure", "members":{ "attachmentId":{"shape":"AttachmentId"}, "fileName":{"shape":"FileName"} } }, "AttachmentId":{"type":"string"}, "AttachmentIdNotFound":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "AttachmentLimitExceeded":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "AttachmentSet":{ "type":"list", "member":{"shape":"AttachmentDetails"} }, "AttachmentSetExpired":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "AttachmentSetId":{"type":"string"}, "AttachmentSetIdNotFound":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "AttachmentSetSizeLimitExceeded":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "Attachments":{ "type":"list", "member":{"shape":"Attachment"} }, "BeforeTime":{"type":"string"}, "Boolean":{"type":"boolean"}, "CaseCreationLimitExceeded":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "CaseDetails":{ "type":"structure", "members":{ "caseId":{"shape":"CaseId"}, "displayId":{"shape":"DisplayId"}, "subject":{"shape":"Subject"}, "status":{"shape":"Status"}, "serviceCode":{"shape":"ServiceCode"}, "categoryCode":{"shape":"CategoryCode"}, "severityCode":{"shape":"SeverityCode"}, "submittedBy":{"shape":"SubmittedBy"}, "timeCreated":{"shape":"TimeCreated"}, "recentCommunications":{"shape":"RecentCaseCommunications"}, "ccEmailAddresses":{"shape":"CcEmailAddressList"}, "language":{"shape":"Language"} } }, "CaseId":{"type":"string"}, "CaseIdList":{ "type":"list", "member":{"shape":"CaseId"}, "max":100, "min":0 }, "CaseIdNotFound":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "CaseList":{ "type":"list", "member":{"shape":"CaseDetails"} }, "CaseStatus":{"type":"string"}, "Category":{ "type":"structure", "members":{ "code":{"shape":"CategoryCode"}, "name":{"shape":"CategoryName"} } }, "CategoryCode":{"type":"string"}, "CategoryList":{ "type":"list", "member":{"shape":"Category"} }, "CategoryName":{"type":"string"}, "CcEmailAddress":{"type":"string"}, "CcEmailAddressList":{ "type":"list", "member":{"shape":"CcEmailAddress"}, "max":10, "min":0 }, "Communication":{ "type":"structure", "members":{ "caseId":{"shape":"CaseId"}, "body":{"shape":"CommunicationBody"}, "submittedBy":{"shape":"SubmittedBy"}, "timeCreated":{"shape":"TimeCreated"}, "attachmentSet":{"shape":"AttachmentSet"} } }, "CommunicationBody":{ "type":"string", "max":8000, "min":1 }, "CommunicationList":{ "type":"list", "member":{"shape":"Communication"} }, "CreateCaseRequest":{ "type":"structure", "required":[ "subject", "communicationBody" ], "members":{ "subject":{"shape":"Subject"}, "serviceCode":{"shape":"ServiceCode"}, "severityCode":{"shape":"SeverityCode"}, "categoryCode":{"shape":"CategoryCode"}, "communicationBody":{"shape":"CommunicationBody"}, "ccEmailAddresses":{"shape":"CcEmailAddressList"}, "language":{"shape":"Language"}, "issueType":{"shape":"IssueType"}, "attachmentSetId":{"shape":"AttachmentSetId"} } }, "CreateCaseResponse":{ "type":"structure", "members":{ "caseId":{"shape":"CaseId"} } }, "Data":{"type":"blob"}, "DescribeAttachmentLimitExceeded":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "DescribeAttachmentRequest":{ "type":"structure", "required":["attachmentId"], "members":{ "attachmentId":{"shape":"AttachmentId"} } }, "DescribeAttachmentResponse":{ "type":"structure", "members":{ "attachment":{"shape":"Attachment"} } }, "DescribeCasesRequest":{ "type":"structure", "members":{ "caseIdList":{"shape":"CaseIdList"}, "displayId":{"shape":"DisplayId"}, "afterTime":{"shape":"AfterTime"}, "beforeTime":{"shape":"BeforeTime"}, "includeResolvedCases":{"shape":"IncludeResolvedCases"}, "nextToken":{"shape":"NextToken"}, "maxResults":{"shape":"MaxResults"}, "language":{"shape":"Language"}, "includeCommunications":{"shape":"IncludeCommunications"} } }, "DescribeCasesResponse":{ "type":"structure", "members":{ "cases":{"shape":"CaseList"}, "nextToken":{"shape":"NextToken"} } }, "DescribeCommunicationsRequest":{ "type":"structure", "required":["caseId"], "members":{ "caseId":{"shape":"CaseId"}, "beforeTime":{"shape":"BeforeTime"}, "afterTime":{"shape":"AfterTime"}, "nextToken":{"shape":"NextToken"}, "maxResults":{"shape":"MaxResults"} } }, "DescribeCommunicationsResponse":{ "type":"structure", "members":{ "communications":{"shape":"CommunicationList"}, "nextToken":{"shape":"NextToken"} } }, "DescribeServicesRequest":{ "type":"structure", "members":{ "serviceCodeList":{"shape":"ServiceCodeList"}, "language":{"shape":"Language"} } }, "DescribeServicesResponse":{ "type":"structure", "members":{ "services":{"shape":"ServiceList"} } }, "DescribeSeverityLevelsRequest":{ "type":"structure", "members":{ "language":{"shape":"Language"} } }, "DescribeSeverityLevelsResponse":{ "type":"structure", "members":{ "severityLevels":{"shape":"SeverityLevelsList"} } }, "DescribeTrustedAdvisorCheckRefreshStatusesRequest":{ "type":"structure", "required":["checkIds"], "members":{ "checkIds":{"shape":"StringList"} } }, "DescribeTrustedAdvisorCheckRefreshStatusesResponse":{ "type":"structure", "required":["statuses"], "members":{ "statuses":{"shape":"TrustedAdvisorCheckRefreshStatusList"} } }, "DescribeTrustedAdvisorCheckResultRequest":{ "type":"structure", "required":["checkId"], "members":{ "checkId":{"shape":"String"}, "language":{"shape":"String"} } }, "DescribeTrustedAdvisorCheckResultResponse":{ "type":"structure", "members":{ "result":{"shape":"TrustedAdvisorCheckResult"} } }, "DescribeTrustedAdvisorCheckSummariesRequest":{ "type":"structure", "required":["checkIds"], "members":{ "checkIds":{"shape":"StringList"} } }, "DescribeTrustedAdvisorCheckSummariesResponse":{ "type":"structure", "required":["summaries"], "members":{ "summaries":{"shape":"TrustedAdvisorCheckSummaryList"} } }, "DescribeTrustedAdvisorChecksRequest":{ "type":"structure", "required":["language"], "members":{ "language":{"shape":"String"} } }, "DescribeTrustedAdvisorChecksResponse":{ "type":"structure", "required":["checks"], "members":{ "checks":{"shape":"TrustedAdvisorCheckList"} } }, "DisplayId":{"type":"string"}, "Double":{"type":"double"}, "ErrorMessage":{"type":"string"}, "ExpiryTime":{"type":"string"}, "FileName":{"type":"string"}, "IncludeCommunications":{"type":"boolean"}, "IncludeResolvedCases":{"type":"boolean"}, "InternalServerError":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true, "fault":true }, "IssueType":{"type":"string"}, "Language":{"type":"string"}, "Long":{"type":"long"}, "MaxResults":{ "type":"integer", "max":100, "min":10 }, "NextToken":{"type":"string"}, "RecentCaseCommunications":{ "type":"structure", "members":{ "communications":{"shape":"CommunicationList"}, "nextToken":{"shape":"NextToken"} } }, "RefreshTrustedAdvisorCheckRequest":{ "type":"structure", "required":["checkId"], "members":{ "checkId":{"shape":"String"} } }, "RefreshTrustedAdvisorCheckResponse":{ "type":"structure", "required":["status"], "members":{ "status":{"shape":"TrustedAdvisorCheckRefreshStatus"} } }, "ResolveCaseRequest":{ "type":"structure", "members":{ "caseId":{"shape":"CaseId"} } }, "ResolveCaseResponse":{ "type":"structure", "members":{ "initialCaseStatus":{"shape":"CaseStatus"}, "finalCaseStatus":{"shape":"CaseStatus"} } }, "Result":{"type":"boolean"}, "Service":{ "type":"structure", "members":{ "code":{"shape":"ServiceCode"}, "name":{"shape":"ServiceName"}, "categories":{"shape":"CategoryList"} } }, "ServiceCode":{"type":"string"}, "ServiceCodeList":{ "type":"list", "member":{"shape":"ServiceCode"}, "max":100, "min":0 }, "ServiceList":{ "type":"list", "member":{"shape":"Service"} }, "ServiceName":{"type":"string"}, "SeverityCode":{"type":"string"}, "SeverityLevel":{ "type":"structure", "members":{ "code":{"shape":"SeverityLevelCode"}, "name":{"shape":"SeverityLevelName"} } }, "SeverityLevelCode":{"type":"string"}, "SeverityLevelName":{"type":"string"}, "SeverityLevelsList":{ "type":"list", "member":{"shape":"SeverityLevel"} }, "Status":{"type":"string"}, "String":{"type":"string"}, "StringList":{ "type":"list", "member":{"shape":"String"} }, "Subject":{"type":"string"}, "SubmittedBy":{"type":"string"}, "TimeCreated":{"type":"string"}, "TrustedAdvisorCategorySpecificSummary":{ "type":"structure", "members":{ "costOptimizing":{"shape":"TrustedAdvisorCostOptimizingSummary"} } }, "TrustedAdvisorCheckDescription":{ "type":"structure", "required":[ "id", "name", "description", "category", "metadata" ], "members":{ "id":{"shape":"String"}, "name":{"shape":"String"}, "description":{"shape":"String"}, "category":{"shape":"String"}, "metadata":{"shape":"StringList"} } }, "TrustedAdvisorCheckList":{ "type":"list", "member":{"shape":"TrustedAdvisorCheckDescription"} }, "TrustedAdvisorCheckRefreshStatus":{ "type":"structure", "required":[ "checkId", "status", "millisUntilNextRefreshable" ], "members":{ "checkId":{"shape":"String"}, "status":{"shape":"String"}, "millisUntilNextRefreshable":{"shape":"Long"} } }, "TrustedAdvisorCheckRefreshStatusList":{ "type":"list", "member":{"shape":"TrustedAdvisorCheckRefreshStatus"} }, "TrustedAdvisorCheckResult":{ "type":"structure", "required":[ "checkId", "timestamp", "status", "resourcesSummary", "categorySpecificSummary", "flaggedResources" ], "members":{ "checkId":{"shape":"String"}, "timestamp":{"shape":"String"}, "status":{"shape":"String"}, "resourcesSummary":{"shape":"TrustedAdvisorResourcesSummary"}, "categorySpecificSummary":{"shape":"TrustedAdvisorCategorySpecificSummary"}, "flaggedResources":{"shape":"TrustedAdvisorResourceDetailList"} } }, "TrustedAdvisorCheckSummary":{ "type":"structure", "required":[ "checkId", "timestamp", "status", "resourcesSummary", "categorySpecificSummary" ], "members":{ "checkId":{"shape":"String"}, "timestamp":{"shape":"String"}, "status":{"shape":"String"}, "hasFlaggedResources":{"shape":"Boolean"}, "resourcesSummary":{"shape":"TrustedAdvisorResourcesSummary"}, "categorySpecificSummary":{"shape":"TrustedAdvisorCategorySpecificSummary"} } }, "TrustedAdvisorCheckSummaryList":{ "type":"list", "member":{"shape":"TrustedAdvisorCheckSummary"} }, "TrustedAdvisorCostOptimizingSummary":{ "type":"structure", "required":[ "estimatedMonthlySavings", "estimatedPercentMonthlySavings" ], "members":{ "estimatedMonthlySavings":{"shape":"Double"}, "estimatedPercentMonthlySavings":{"shape":"Double"} } }, "TrustedAdvisorResourceDetail":{ "type":"structure", "required":[ "status", "resourceId", "metadata" ], "members":{ "status":{"shape":"String"}, "region":{"shape":"String"}, "resourceId":{"shape":"String"}, "isSuppressed":{"shape":"Boolean"}, "metadata":{"shape":"StringList"} } }, "TrustedAdvisorResourceDetailList":{ "type":"list", "member":{"shape":"TrustedAdvisorResourceDetail"} }, "TrustedAdvisorResourcesSummary":{ "type":"structure", "required":[ "resourcesProcessed", "resourcesFlagged", "resourcesIgnored", "resourcesSuppressed" ], "members":{ "resourcesProcessed":{"shape":"Long"}, "resourcesFlagged":{"shape":"Long"}, "resourcesIgnored":{"shape":"Long"}, "resourcesSuppressed":{"shape":"Long"} } } } } aws-sdk-go-1.4.22/models/apis/support/2013-04-15/docs-2.json000066400000000000000000001353071300374646400225420ustar00rootroot00000000000000{ "version": "2.0", "service": "AWS Support

        The AWS Support API reference is intended for programmers who need detailed information about the AWS Support operations and data types. This service enables you to manage your AWS Support cases programmatically. It uses HTTP methods that return results in JSON format.

        The AWS Support service also exposes a set of Trusted Advisor features. You can retrieve a list of checks and their descriptions, get check results, specify checks to refresh, and get the refresh status of checks.

        The following list describes the AWS Support case management operations:

        The following list describes the operations available from the AWS Support service for Trusted Advisor:

        For authentication of requests, AWS Support uses Signature Version 4 Signing Process.

        See About the AWS Support API in the AWS Support User Guide for information about how to use this service to create and manage your support cases, and how to call Trusted Advisor for results of checks on your resources.

        ", "operations": { "AddAttachmentsToSet": "

        Adds one or more attachments to an attachment set. If an attachmentSetId is not specified, a new attachment set is created, and the ID of the set is returned in the response. If an attachmentSetId is specified, the attachments are added to the specified set, if it exists.

        An attachment set is a temporary container for attachments that are to be added to a case or case communication. The set is available for one hour after it is created; the expiryTime returned in the response indicates when the set expires. The maximum number of attachments in a set is 3, and the maximum size of any attachment in the set is 5 MB.

        ", "AddCommunicationToCase": "

        Adds additional customer communication to an AWS Support case. You use the caseId value to identify the case to add communication to. You can list a set of email addresses to copy on the communication using the ccEmailAddresses value. The communicationBody value contains the text of the communication.

        The response indicates the success or failure of the request.

        This operation implements a subset of the features of the AWS Support Center.

        ", "CreateCase": "

        Creates a new case in the AWS Support Center. This operation is modeled on the behavior of the AWS Support Center Create Case page. Its parameters require you to specify the following information:

        • issueType. The type of issue for the case. You can specify either \"customer-service\" or \"technical.\" If you do not indicate a value, the default is \"technical.\"

        • serviceCode. The code for an AWS service. You obtain the serviceCode by calling DescribeServices.

        • categoryCode. The category for the service defined for the serviceCode value. You also obtain the category code for a service by calling DescribeServices. Each AWS service defines its own set of category codes.

        • severityCode. A value that indicates the urgency of the case, which in turn determines the response time according to your service level agreement with AWS Support. You obtain the SeverityCode by calling DescribeSeverityLevels.

        • subject. The Subject field on the AWS Support Center Create Case page.

        • communicationBody. The Description field on the AWS Support Center Create Case page.

        • attachmentSetId. The ID of a set of attachments that has been created by using AddAttachmentsToSet.

        • language. The human language in which AWS Support handles the case. English and Japanese are currently supported.

        • ccEmailAddresses. The AWS Support Center CC field on the Create Case page. You can list email addresses to be copied on any correspondence about the case. The account that opens the case is already identified by passing the AWS Credentials in the HTTP POST method or in a method or function call from one of the programming languages supported by an AWS SDK.

        To add additional communication or attachments to an existing case, use AddCommunicationToCase.

        A successful CreateCase request returns an AWS Support case number. Case numbers are used by the DescribeCases operation to retrieve existing AWS Support cases.

        ", "DescribeAttachment": "

        Returns the attachment that has the specified ID. Attachment IDs are generated by the case management system when you add an attachment to a case or case communication. Attachment IDs are returned in the AttachmentDetails objects that are returned by the DescribeCommunications operation.

        ", "DescribeCases": "

        Returns a list of cases that you specify by passing one or more case IDs. In addition, you can filter the cases by date by setting values for the afterTime and beforeTime request parameters. You can set values for the includeResolvedCases and includeCommunications request parameters to control how much information is returned.

        Case data is available for 12 months after creation. If a case was created more than 12 months ago, a request for data might cause an error.

        The response returns the following in JSON format:

        • One or more CaseDetails data types.

        • One or more nextToken values, which specify where to paginate the returned records represented by the CaseDetails objects.

        ", "DescribeCommunications": "

        Returns communications (and attachments) for one or more support cases. You can use the afterTime and beforeTime parameters to filter by date. You can use the caseId parameter to restrict the results to a particular case.

        Case data is available for 12 months after creation. If a case was created more than 12 months ago, a request for data might cause an error.

        You can use the maxResults and nextToken parameters to control the pagination of the result set. Set maxResults to the number of cases you want displayed on each page, and use nextToken to specify the resumption of pagination.

        ", "DescribeServices": "

        Returns the current list of AWS services and a list of service categories that applies to each one. You then use service names and categories in your CreateCase requests. Each AWS service has its own set of categories.

        The service codes and category codes correspond to the values that are displayed in the Service and Category drop-down lists on the AWS Support Center Create Case page. The values in those fields, however, do not necessarily match the service codes and categories returned by the DescribeServices request. Always use the service codes and categories obtained programmatically. This practice ensures that you always have the most recent set of service and category codes.

        ", "DescribeSeverityLevels": "

        Returns the list of severity levels that you can assign to an AWS Support case. The severity level for a case is also a field in the CaseDetails data type included in any CreateCase request.

        ", "DescribeTrustedAdvisorCheckRefreshStatuses": "

        Returns the refresh status of the Trusted Advisor checks that have the specified check IDs. Check IDs can be obtained by calling DescribeTrustedAdvisorChecks.

        Some checks are refreshed automatically, and their refresh statuses cannot be retrieved by using this operation. Use of the DescribeTrustedAdvisorCheckRefreshStatuses operation for these checks causes an InvalidParameterValue error.

        ", "DescribeTrustedAdvisorCheckResult": "

        Returns the results of the Trusted Advisor check that has the specified check ID. Check IDs can be obtained by calling DescribeTrustedAdvisorChecks.

        The response contains a TrustedAdvisorCheckResult object, which contains these three objects:

        In addition, the response contains these fields:

        • status. The alert status of the check: \"ok\" (green), \"warning\" (yellow), \"error\" (red), or \"not_available\".

        • timestamp. The time of the last refresh of the check.

        • checkId. The unique identifier for the check.

        ", "DescribeTrustedAdvisorCheckSummaries": "

        Returns the summaries of the results of the Trusted Advisor checks that have the specified check IDs. Check IDs can be obtained by calling DescribeTrustedAdvisorChecks.

        The response contains an array of TrustedAdvisorCheckSummary objects.

        ", "DescribeTrustedAdvisorChecks": "

        Returns information about all available Trusted Advisor checks, including name, ID, category, description, and metadata. You must specify a language code; English (\"en\") and Japanese (\"ja\") are currently supported. The response contains a TrustedAdvisorCheckDescription for each check.

        ", "RefreshTrustedAdvisorCheck": "

        Requests a refresh of the Trusted Advisor check that has the specified check ID. Check IDs can be obtained by calling DescribeTrustedAdvisorChecks.

        Some checks are refreshed automatically, and they cannot be refreshed by using this operation. Use of the RefreshTrustedAdvisorCheck operation for these checks causes an InvalidParameterValue error.

        The response contains a TrustedAdvisorCheckRefreshStatus object, which contains these fields:

        • status. The refresh status of the check: \"none\", \"enqueued\", \"processing\", \"success\", or \"abandoned\".

        • millisUntilNextRefreshable. The amount of time, in milliseconds, until the check is eligible for refresh.

        • checkId. The unique identifier for the check.

        ", "ResolveCase": "

        Takes a caseId and returns the initial state of the case along with the state of the case after the call to ResolveCase completed.

        " }, "shapes": { "AddAttachmentsToSetRequest": { "base": "

        ", "refs": { } }, "AddAttachmentsToSetResponse": { "base": "

        The ID and expiry time of the attachment set returned by the AddAttachmentsToSet operation.

        ", "refs": { } }, "AddCommunicationToCaseRequest": { "base": "

        To be written.

        ", "refs": { } }, "AddCommunicationToCaseResponse": { "base": "

        The result of the AddCommunicationToCase operation.

        ", "refs": { } }, "AfterTime": { "base": null, "refs": { "DescribeCasesRequest$afterTime": "

        The start date for a filtered date search on support case communications. Case communications are available for 12 months after creation.

        ", "DescribeCommunicationsRequest$afterTime": "

        The start date for a filtered date search on support case communications. Case communications are available for 12 months after creation.

        " } }, "Attachment": { "base": "

        An attachment to a case communication. The attachment consists of the file name and the content of the file.

        ", "refs": { "Attachments$member": null, "DescribeAttachmentResponse$attachment": "

        The attachment content and file name.

        " } }, "AttachmentDetails": { "base": "

        The file name and ID of an attachment to a case communication. You can use the ID to retrieve the attachment with the DescribeAttachment operation.

        ", "refs": { "AttachmentSet$member": null } }, "AttachmentId": { "base": null, "refs": { "AttachmentDetails$attachmentId": "

        The ID of the attachment.

        ", "DescribeAttachmentRequest$attachmentId": "

        The ID of the attachment to return. Attachment IDs are returned by the DescribeCommunications operation.

        " } }, "AttachmentIdNotFound": { "base": "

        An attachment with the specified ID could not be found.

        ", "refs": { } }, "AttachmentLimitExceeded": { "base": "

        The limit for the number of attachment sets created in a short period of time has been exceeded.

        ", "refs": { } }, "AttachmentSet": { "base": null, "refs": { "Communication$attachmentSet": "

        Information about the attachments to the case communication.

        " } }, "AttachmentSetExpired": { "base": "

        The expiration time of the attachment set has passed. The set expires 1 hour after it is created.

        ", "refs": { } }, "AttachmentSetId": { "base": null, "refs": { "AddAttachmentsToSetRequest$attachmentSetId": "

        The ID of the attachment set. If an attachmentSetId is not specified, a new attachment set is created, and the ID of the set is returned in the response. If an attachmentSetId is specified, the attachments are added to the specified set, if it exists.

        ", "AddAttachmentsToSetResponse$attachmentSetId": "

        The ID of the attachment set. If an attachmentSetId was not specified, a new attachment set is created, and the ID of the set is returned in the response. If an attachmentSetId was specified, the attachments are added to the specified set, if it exists.

        ", "AddCommunicationToCaseRequest$attachmentSetId": "

        The ID of a set of one or more attachments for the communication to add to the case. Create the set by calling AddAttachmentsToSet

        ", "CreateCaseRequest$attachmentSetId": "

        The ID of a set of one or more attachments for the case. Create the set by using AddAttachmentsToSet.

        " } }, "AttachmentSetIdNotFound": { "base": "

        An attachment set with the specified ID could not be found.

        ", "refs": { } }, "AttachmentSetSizeLimitExceeded": { "base": "

        A limit for the size of an attachment set has been exceeded. The limits are 3 attachments and 5 MB per attachment.

        ", "refs": { } }, "Attachments": { "base": null, "refs": { "AddAttachmentsToSetRequest$attachments": "

        One or more attachments to add to the set. The limit is 3 attachments per set, and the size limit is 5 MB per attachment.

        " } }, "BeforeTime": { "base": null, "refs": { "DescribeCasesRequest$beforeTime": "

        The end date for a filtered date search on support case communications. Case communications are available for 12 months after creation.

        ", "DescribeCommunicationsRequest$beforeTime": "

        The end date for a filtered date search on support case communications. Case communications are available for 12 months after creation.

        " } }, "Boolean": { "base": null, "refs": { "TrustedAdvisorCheckSummary$hasFlaggedResources": "

        Specifies whether the Trusted Advisor check has flagged resources.

        ", "TrustedAdvisorResourceDetail$isSuppressed": "

        Specifies whether the AWS resource was ignored by Trusted Advisor because it was marked as suppressed by the user.

        " } }, "CaseCreationLimitExceeded": { "base": "

        The case creation limit for the account has been exceeded.

        ", "refs": { } }, "CaseDetails": { "base": "

        A JSON-formatted object that contains the metadata for a support case. It is contained the response from a DescribeCases request. CaseDetails contains the following fields:

        • caseId. The AWS Support case ID requested or returned in the call. The case ID is an alphanumeric string formatted as shown in this example: case-12345678910-2013-c4c1d2bf33c5cf47.

        • categoryCode. The category of problem for the AWS Support case. Corresponds to the CategoryCode values returned by a call to DescribeServices.

        • displayId. The identifier for the case on pages in the AWS Support Center.

        • language. The ISO 639-1 code for the language in which AWS provides support. AWS Support currently supports English (\"en\") and Japanese (\"ja\"). Language parameters must be passed explicitly for operations that take them.

        • recentCommunications. One or more Communication objects. Fields of these objects are attachments, body, caseId, submittedBy, and timeCreated.

        • nextToken. A resumption point for pagination.

        • serviceCode. The identifier for the AWS service that corresponds to the service code defined in the call to DescribeServices.

        • severityCode. The severity code assigned to the case. Contains one of the values returned by the call to DescribeSeverityLevels.

        • status. The status of the case in the AWS Support Center.

        • subject. The subject line of the case.

        • submittedBy. The email address of the account that submitted the case.

        • timeCreated. The time the case was created, in ISO-8601 format.

        ", "refs": { "CaseList$member": null } }, "CaseId": { "base": null, "refs": { "AddCommunicationToCaseRequest$caseId": "

        The AWS Support case ID requested or returned in the call. The case ID is an alphanumeric string formatted as shown in this example: case-12345678910-2013-c4c1d2bf33c5cf47

        ", "CaseDetails$caseId": "

        The AWS Support case ID requested or returned in the call. The case ID is an alphanumeric string formatted as shown in this example: case-12345678910-2013-c4c1d2bf33c5cf47

        ", "CaseIdList$member": null, "Communication$caseId": "

        The AWS Support case ID requested or returned in the call. The case ID is an alphanumeric string formatted as shown in this example: case-12345678910-2013-c4c1d2bf33c5cf47

        ", "CreateCaseResponse$caseId": "

        The AWS Support case ID requested or returned in the call. The case ID is an alphanumeric string formatted as shown in this example: case-12345678910-2013-c4c1d2bf33c5cf47

        ", "DescribeCommunicationsRequest$caseId": "

        The AWS Support case ID requested or returned in the call. The case ID is an alphanumeric string formatted as shown in this example: case-12345678910-2013-c4c1d2bf33c5cf47

        ", "ResolveCaseRequest$caseId": "

        The AWS Support case ID requested or returned in the call. The case ID is an alphanumeric string formatted as shown in this example: case-12345678910-2013-c4c1d2bf33c5cf47

        " } }, "CaseIdList": { "base": null, "refs": { "DescribeCasesRequest$caseIdList": "

        A list of ID numbers of the support cases you want returned. The maximum number of cases is 100.

        " } }, "CaseIdNotFound": { "base": "

        The requested caseId could not be located.

        ", "refs": { } }, "CaseList": { "base": null, "refs": { "DescribeCasesResponse$cases": "

        The details for the cases that match the request.

        " } }, "CaseStatus": { "base": null, "refs": { "ResolveCaseResponse$initialCaseStatus": "

        The status of the case when the ResolveCase request was sent.

        ", "ResolveCaseResponse$finalCaseStatus": "

        The status of the case after the ResolveCase request was processed.

        " } }, "Category": { "base": "

        A JSON-formatted name/value pair that represents the category name and category code of the problem, selected from the DescribeServices response for each AWS service.

        ", "refs": { "CategoryList$member": null } }, "CategoryCode": { "base": null, "refs": { "CaseDetails$categoryCode": "

        The category of problem for the AWS Support case.

        ", "Category$code": "

        The category code for the support case.

        ", "CreateCaseRequest$categoryCode": "

        The category of problem for the AWS Support case.

        " } }, "CategoryList": { "base": null, "refs": { "Service$categories": "

        A list of categories that describe the type of support issue a case describes. Categories consist of a category name and a category code. Category names and codes are passed to AWS Support when you call CreateCase.

        " } }, "CategoryName": { "base": null, "refs": { "Category$name": "

        The category name for the support case.

        " } }, "CcEmailAddress": { "base": null, "refs": { "CcEmailAddressList$member": null } }, "CcEmailAddressList": { "base": null, "refs": { "AddCommunicationToCaseRequest$ccEmailAddresses": "

        The email addresses in the CC line of an email to be added to the support case.

        ", "CaseDetails$ccEmailAddresses": "

        The email addresses that receive copies of communication about the case.

        ", "CreateCaseRequest$ccEmailAddresses": "

        A list of email addresses that AWS Support copies on case correspondence.

        " } }, "Communication": { "base": "

        A communication associated with an AWS Support case. The communication consists of the case ID, the message body, attachment information, the account email address, and the date and time of the communication.

        ", "refs": { "CommunicationList$member": null } }, "CommunicationBody": { "base": null, "refs": { "AddCommunicationToCaseRequest$communicationBody": "

        The body of an email communication to add to the support case.

        ", "Communication$body": "

        The text of the communication between the customer and AWS Support.

        ", "CreateCaseRequest$communicationBody": "

        The communication body text when you create an AWS Support case by calling CreateCase.

        " } }, "CommunicationList": { "base": null, "refs": { "DescribeCommunicationsResponse$communications": "

        The communications for the case.

        ", "RecentCaseCommunications$communications": "

        The five most recent communications associated with the case.

        " } }, "CreateCaseRequest": { "base": "

        ", "refs": { } }, "CreateCaseResponse": { "base": "

        The AWS Support case ID returned by a successful completion of the CreateCase operation.

        ", "refs": { } }, "Data": { "base": null, "refs": { "Attachment$data": "

        The content of the attachment file.

        " } }, "DescribeAttachmentLimitExceeded": { "base": "

        The limit for the number of DescribeAttachment requests in a short period of time has been exceeded.

        ", "refs": { } }, "DescribeAttachmentRequest": { "base": null, "refs": { } }, "DescribeAttachmentResponse": { "base": "

        The content and file name of the attachment returned by the DescribeAttachment operation.

        ", "refs": { } }, "DescribeCasesRequest": { "base": "

        ", "refs": { } }, "DescribeCasesResponse": { "base": "

        Returns an array of CaseDetails objects and a nextToken that defines a point for pagination in the result set.

        ", "refs": { } }, "DescribeCommunicationsRequest": { "base": "

        ", "refs": { } }, "DescribeCommunicationsResponse": { "base": "

        The communications returned by the DescribeCommunications operation.

        ", "refs": { } }, "DescribeServicesRequest": { "base": "

        ", "refs": { } }, "DescribeServicesResponse": { "base": "

        The list of AWS services returned by the DescribeServices operation.

        ", "refs": { } }, "DescribeSeverityLevelsRequest": { "base": "

        ", "refs": { } }, "DescribeSeverityLevelsResponse": { "base": "

        The list of severity levels returned by the DescribeSeverityLevels operation.

        ", "refs": { } }, "DescribeTrustedAdvisorCheckRefreshStatusesRequest": { "base": "

        ", "refs": { } }, "DescribeTrustedAdvisorCheckRefreshStatusesResponse": { "base": "

        The statuses of the Trusted Advisor checks returned by the DescribeTrustedAdvisorCheckRefreshStatuses operation.

        ", "refs": { } }, "DescribeTrustedAdvisorCheckResultRequest": { "base": "

        ", "refs": { } }, "DescribeTrustedAdvisorCheckResultResponse": { "base": "

        The result of the Trusted Advisor check returned by the DescribeTrustedAdvisorCheckResult operation.

        ", "refs": { } }, "DescribeTrustedAdvisorCheckSummariesRequest": { "base": "

        ", "refs": { } }, "DescribeTrustedAdvisorCheckSummariesResponse": { "base": "

        The summaries of the Trusted Advisor checks returned by the DescribeTrustedAdvisorCheckSummaries operation.

        ", "refs": { } }, "DescribeTrustedAdvisorChecksRequest": { "base": "

        ", "refs": { } }, "DescribeTrustedAdvisorChecksResponse": { "base": "

        Information about the Trusted Advisor checks returned by the DescribeTrustedAdvisorChecks operation.

        ", "refs": { } }, "DisplayId": { "base": null, "refs": { "CaseDetails$displayId": "

        The ID displayed for the case in the AWS Support Center. This is a numeric string.

        ", "DescribeCasesRequest$displayId": "

        The ID displayed for a case in the AWS Support Center user interface.

        " } }, "Double": { "base": null, "refs": { "TrustedAdvisorCostOptimizingSummary$estimatedMonthlySavings": "

        The estimated monthly savings that might be realized if the recommended actions are taken.

        ", "TrustedAdvisorCostOptimizingSummary$estimatedPercentMonthlySavings": "

        The estimated percentage of savings that might be realized if the recommended actions are taken.

        " } }, "ErrorMessage": { "base": null, "refs": { "AttachmentIdNotFound$message": "

        An attachment with the specified ID could not be found.

        ", "AttachmentLimitExceeded$message": "

        The limit for the number of attachment sets created in a short period of time has been exceeded.

        ", "AttachmentSetExpired$message": "

        The expiration time of the attachment set has passed. The set expires 1 hour after it is created.

        ", "AttachmentSetIdNotFound$message": "

        An attachment set with the specified ID could not be found.

        ", "AttachmentSetSizeLimitExceeded$message": "

        A limit for the size of an attachment set has been exceeded. The limits are 3 attachments and 5 MB per attachment.

        ", "CaseCreationLimitExceeded$message": "

        An error message that indicates that you have exceeded the number of cases you can have open.

        ", "CaseIdNotFound$message": "

        The requested CaseId could not be located.

        ", "DescribeAttachmentLimitExceeded$message": "

        The limit for the number of DescribeAttachment requests in a short period of time has been exceeded.

        ", "InternalServerError$message": "

        An internal server error occurred.

        " } }, "ExpiryTime": { "base": null, "refs": { "AddAttachmentsToSetResponse$expiryTime": "

        The time and date when the attachment set expires.

        " } }, "FileName": { "base": null, "refs": { "Attachment$fileName": "

        The name of the attachment file.

        ", "AttachmentDetails$fileName": "

        The file name of the attachment.

        " } }, "IncludeCommunications": { "base": null, "refs": { "DescribeCasesRequest$includeCommunications": "

        Specifies whether communications should be included in the DescribeCases results. The default is true.

        " } }, "IncludeResolvedCases": { "base": null, "refs": { "DescribeCasesRequest$includeResolvedCases": "

        Specifies whether resolved support cases should be included in the DescribeCases results. The default is false.

        " } }, "InternalServerError": { "base": "

        An internal server error occurred.

        ", "refs": { } }, "IssueType": { "base": null, "refs": { "CreateCaseRequest$issueType": "

        The type of issue for the case. You can specify either \"customer-service\" or \"technical.\" If you do not indicate a value, the default is \"technical.\"

        " } }, "Language": { "base": null, "refs": { "CaseDetails$language": "

        The ISO 639-1 code for the language in which AWS provides support. AWS Support currently supports English (\"en\") and Japanese (\"ja\"). Language parameters must be passed explicitly for operations that take them.

        ", "CreateCaseRequest$language": "

        The ISO 639-1 code for the language in which AWS provides support. AWS Support currently supports English (\"en\") and Japanese (\"ja\"). Language parameters must be passed explicitly for operations that take them.

        ", "DescribeCasesRequest$language": "

        The ISO 639-1 code for the language in which AWS provides support. AWS Support currently supports English (\"en\") and Japanese (\"ja\"). Language parameters must be passed explicitly for operations that take them.

        ", "DescribeServicesRequest$language": "

        The ISO 639-1 code for the language in which AWS provides support. AWS Support currently supports English (\"en\") and Japanese (\"ja\"). Language parameters must be passed explicitly for operations that take them.

        ", "DescribeSeverityLevelsRequest$language": "

        The ISO 639-1 code for the language in which AWS provides support. AWS Support currently supports English (\"en\") and Japanese (\"ja\"). Language parameters must be passed explicitly for operations that take them.

        " } }, "Long": { "base": null, "refs": { "TrustedAdvisorCheckRefreshStatus$millisUntilNextRefreshable": "

        The amount of time, in milliseconds, until the Trusted Advisor check is eligible for refresh.

        ", "TrustedAdvisorResourcesSummary$resourcesProcessed": "

        The number of AWS resources that were analyzed by the Trusted Advisor check.

        ", "TrustedAdvisorResourcesSummary$resourcesFlagged": "

        The number of AWS resources that were flagged (listed) by the Trusted Advisor check.

        ", "TrustedAdvisorResourcesSummary$resourcesIgnored": "

        The number of AWS resources ignored by Trusted Advisor because information was unavailable.

        ", "TrustedAdvisorResourcesSummary$resourcesSuppressed": "

        The number of AWS resources ignored by Trusted Advisor because they were marked as suppressed by the user.

        " } }, "MaxResults": { "base": null, "refs": { "DescribeCasesRequest$maxResults": "

        The maximum number of results to return before paginating.

        ", "DescribeCommunicationsRequest$maxResults": "

        The maximum number of results to return before paginating.

        " } }, "NextToken": { "base": null, "refs": { "DescribeCasesRequest$nextToken": "

        A resumption point for pagination.

        ", "DescribeCasesResponse$nextToken": "

        A resumption point for pagination.

        ", "DescribeCommunicationsRequest$nextToken": "

        A resumption point for pagination.

        ", "DescribeCommunicationsResponse$nextToken": "

        A resumption point for pagination.

        ", "RecentCaseCommunications$nextToken": "

        A resumption point for pagination.

        " } }, "RecentCaseCommunications": { "base": "

        The five most recent communications associated with the case.

        ", "refs": { "CaseDetails$recentCommunications": "

        The five most recent communications between you and AWS Support Center, including the IDs of any attachments to the communications. Also includes a nextToken that you can use to retrieve earlier communications.

        " } }, "RefreshTrustedAdvisorCheckRequest": { "base": "

        ", "refs": { } }, "RefreshTrustedAdvisorCheckResponse": { "base": "

        The current refresh status of a Trusted Advisor check.

        ", "refs": { } }, "ResolveCaseRequest": { "base": "

        ", "refs": { } }, "ResolveCaseResponse": { "base": "

        The status of the case returned by the ResolveCase operation.

        ", "refs": { } }, "Result": { "base": null, "refs": { "AddCommunicationToCaseResponse$result": "

        True if AddCommunicationToCase succeeds. Otherwise, returns an error.

        " } }, "Service": { "base": "

        Information about an AWS service returned by the DescribeServices operation.

        ", "refs": { "ServiceList$member": null } }, "ServiceCode": { "base": null, "refs": { "CaseDetails$serviceCode": "

        The code for the AWS service returned by the call to DescribeServices.

        ", "CreateCaseRequest$serviceCode": "

        The code for the AWS service returned by the call to DescribeServices.

        ", "Service$code": "

        The code for an AWS service returned by the DescribeServices response. The name element contains the corresponding friendly name.

        ", "ServiceCodeList$member": null } }, "ServiceCodeList": { "base": null, "refs": { "DescribeServicesRequest$serviceCodeList": "

        A JSON-formatted list of service codes available for AWS services.

        " } }, "ServiceList": { "base": null, "refs": { "DescribeServicesResponse$services": "

        A JSON-formatted list of AWS services.

        " } }, "ServiceName": { "base": null, "refs": { "Service$name": "

        The friendly name for an AWS service. The code element contains the corresponding code.

        " } }, "SeverityCode": { "base": null, "refs": { "CaseDetails$severityCode": "

        The code for the severity level returned by the call to DescribeSeverityLevels.

        ", "CreateCaseRequest$severityCode": "

        The code for the severity level returned by the call to DescribeSeverityLevels.

        The availability of severity levels depends on each customer's support subscription. In other words, your subscription may not necessarily require the urgent level of response time.

        " } }, "SeverityLevel": { "base": "

        A code and name pair that represent a severity level that can be applied to a support case.

        ", "refs": { "SeverityLevelsList$member": null } }, "SeverityLevelCode": { "base": null, "refs": { "SeverityLevel$code": "

        One of four values: \"low,\" \"medium,\" \"high,\" and \"urgent\". These values correspond to response times returned to the caller in severityLevel.name.

        " } }, "SeverityLevelName": { "base": null, "refs": { "SeverityLevel$name": "

        The name of the severity level that corresponds to the severity level code.

        " } }, "SeverityLevelsList": { "base": null, "refs": { "DescribeSeverityLevelsResponse$severityLevels": "

        The available severity levels for the support case. Available severity levels are defined by your service level agreement with AWS.

        " } }, "Status": { "base": null, "refs": { "CaseDetails$status": "

        The status of the case.

        " } }, "String": { "base": null, "refs": { "DescribeTrustedAdvisorCheckResultRequest$checkId": "

        The unique identifier for the Trusted Advisor check.

        ", "DescribeTrustedAdvisorCheckResultRequest$language": "

        The ISO 639-1 code for the language in which AWS provides support. AWS Support currently supports English (\"en\") and Japanese (\"ja\"). Language parameters must be passed explicitly for operations that take them.

        ", "DescribeTrustedAdvisorChecksRequest$language": "

        The ISO 639-1 code for the language in which AWS provides support. AWS Support currently supports English (\"en\") and Japanese (\"ja\"). Language parameters must be passed explicitly for operations that take them.

        ", "RefreshTrustedAdvisorCheckRequest$checkId": "

        The unique identifier for the Trusted Advisor check to refresh. Note: Specifying the check ID of a check that is automatically refreshed causes an InvalidParameterValue error.

        ", "StringList$member": null, "TrustedAdvisorCheckDescription$id": "

        The unique identifier for the Trusted Advisor check.

        ", "TrustedAdvisorCheckDescription$name": "

        The display name for the Trusted Advisor check.

        ", "TrustedAdvisorCheckDescription$description": "

        The description of the Trusted Advisor check, which includes the alert criteria and recommended actions (contains HTML markup).

        ", "TrustedAdvisorCheckDescription$category": "

        The category of the Trusted Advisor check.

        ", "TrustedAdvisorCheckRefreshStatus$checkId": "

        The unique identifier for the Trusted Advisor check.

        ", "TrustedAdvisorCheckRefreshStatus$status": "

        The status of the Trusted Advisor check for which a refresh has been requested: \"none\", \"enqueued\", \"processing\", \"success\", or \"abandoned\".

        ", "TrustedAdvisorCheckResult$checkId": "

        The unique identifier for the Trusted Advisor check.

        ", "TrustedAdvisorCheckResult$timestamp": "

        The time of the last refresh of the check.

        ", "TrustedAdvisorCheckResult$status": "

        The alert status of the check: \"ok\" (green), \"warning\" (yellow), \"error\" (red), or \"not_available\".

        ", "TrustedAdvisorCheckSummary$checkId": "

        The unique identifier for the Trusted Advisor check.

        ", "TrustedAdvisorCheckSummary$timestamp": "

        The time of the last refresh of the check.

        ", "TrustedAdvisorCheckSummary$status": "

        The alert status of the check: \"ok\" (green), \"warning\" (yellow), \"error\" (red), or \"not_available\".

        ", "TrustedAdvisorResourceDetail$status": "

        The status code for the resource identified in the Trusted Advisor check.

        ", "TrustedAdvisorResourceDetail$region": "

        The AWS region in which the identified resource is located.

        ", "TrustedAdvisorResourceDetail$resourceId": "

        The unique identifier for the identified resource.

        " } }, "StringList": { "base": null, "refs": { "DescribeTrustedAdvisorCheckRefreshStatusesRequest$checkIds": "

        The IDs of the Trusted Advisor checks to get the status of. Note: Specifying the check ID of a check that is automatically refreshed causes an InvalidParameterValue error.

        ", "DescribeTrustedAdvisorCheckSummariesRequest$checkIds": "

        The IDs of the Trusted Advisor checks.

        ", "TrustedAdvisorCheckDescription$metadata": "

        The column headings for the data returned by the Trusted Advisor check. The order of the headings corresponds to the order of the data in the Metadata element of the TrustedAdvisorResourceDetail for the check. Metadata contains all the data that is shown in the Excel download, even in those cases where the UI shows just summary data.

        ", "TrustedAdvisorResourceDetail$metadata": "

        Additional information about the identified resource. The exact metadata and its order can be obtained by inspecting the TrustedAdvisorCheckDescription object returned by the call to DescribeTrustedAdvisorChecks. Metadata contains all the data that is shown in the Excel download, even in those cases where the UI shows just summary data.

        " } }, "Subject": { "base": null, "refs": { "CaseDetails$subject": "

        The subject line for the case in the AWS Support Center.

        ", "CreateCaseRequest$subject": "

        The title of the AWS Support case.

        " } }, "SubmittedBy": { "base": null, "refs": { "CaseDetails$submittedBy": "

        The email address of the account that submitted the case.

        ", "Communication$submittedBy": "

        The email address of the account that submitted the AWS Support case.

        " } }, "TimeCreated": { "base": null, "refs": { "CaseDetails$timeCreated": "

        The time that the case was case created in the AWS Support Center.

        ", "Communication$timeCreated": "

        The time the communication was created.

        " } }, "TrustedAdvisorCategorySpecificSummary": { "base": "

        The container for summary information that relates to the category of the Trusted Advisor check.

        ", "refs": { "TrustedAdvisorCheckResult$categorySpecificSummary": "

        Summary information that relates to the category of the check. Cost Optimizing is the only category that is currently supported.

        ", "TrustedAdvisorCheckSummary$categorySpecificSummary": "

        Summary information that relates to the category of the check. Cost Optimizing is the only category that is currently supported.

        " } }, "TrustedAdvisorCheckDescription": { "base": "

        The description and metadata for a Trusted Advisor check.

        ", "refs": { "TrustedAdvisorCheckList$member": null } }, "TrustedAdvisorCheckList": { "base": null, "refs": { "DescribeTrustedAdvisorChecksResponse$checks": "

        Information about all available Trusted Advisor checks.

        " } }, "TrustedAdvisorCheckRefreshStatus": { "base": "

        The refresh status of a Trusted Advisor check.

        ", "refs": { "RefreshTrustedAdvisorCheckResponse$status": "

        The current refresh status for a check, including the amount of time until the check is eligible for refresh.

        ", "TrustedAdvisorCheckRefreshStatusList$member": null } }, "TrustedAdvisorCheckRefreshStatusList": { "base": null, "refs": { "DescribeTrustedAdvisorCheckRefreshStatusesResponse$statuses": "

        The refresh status of the specified Trusted Advisor checks.

        " } }, "TrustedAdvisorCheckResult": { "base": "

        The results of a Trusted Advisor check returned by DescribeTrustedAdvisorCheckResult.

        ", "refs": { "DescribeTrustedAdvisorCheckResultResponse$result": "

        The detailed results of the Trusted Advisor check.

        " } }, "TrustedAdvisorCheckSummary": { "base": "

        A summary of a Trusted Advisor check result, including the alert status, last refresh, and number of resources examined.

        ", "refs": { "TrustedAdvisorCheckSummaryList$member": null } }, "TrustedAdvisorCheckSummaryList": { "base": null, "refs": { "DescribeTrustedAdvisorCheckSummariesResponse$summaries": "

        The summary information for the requested Trusted Advisor checks.

        " } }, "TrustedAdvisorCostOptimizingSummary": { "base": "

        The estimated cost savings that might be realized if the recommended actions are taken.

        ", "refs": { "TrustedAdvisorCategorySpecificSummary$costOptimizing": "

        The summary information about cost savings for a Trusted Advisor check that is in the Cost Optimizing category.

        " } }, "TrustedAdvisorResourceDetail": { "base": "

        Contains information about a resource identified by a Trusted Advisor check.

        ", "refs": { "TrustedAdvisorResourceDetailList$member": null } }, "TrustedAdvisorResourceDetailList": { "base": null, "refs": { "TrustedAdvisorCheckResult$flaggedResources": "

        The details about each resource listed in the check result.

        " } }, "TrustedAdvisorResourcesSummary": { "base": "

        Details about AWS resources that were analyzed in a call to Trusted Advisor DescribeTrustedAdvisorCheckSummaries.

        ", "refs": { "TrustedAdvisorCheckResult$resourcesSummary": null, "TrustedAdvisorCheckSummary$resourcesSummary": null } } } } aws-sdk-go-1.4.22/models/apis/support/2013-04-15/examples-1.json000077500000000000000000000000541300374646400234200ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/support/2013-04-15/paginators-1.json000066400000000000000000000011321300374646400237440ustar00rootroot00000000000000{ "pagination": { "DescribeCases": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults", "result_key": "cases" }, "DescribeCommunications": { "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults", "result_key": "communications" }, "DescribeServices": { "result_key": "services" }, "DescribeTrustedAdvisorCheckRefreshStatuses": { "result_key": "statuses" }, "DescribeTrustedAdvisorCheckSummaries": { "result_key": "summaries" } } } aws-sdk-go-1.4.22/models/apis/swf/000077500000000000000000000000001300374646400166015ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/swf/2012-01-25/000077500000000000000000000000001300374646400176275ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/swf/2012-01-25/api-2.json000066400000000000000000002405131300374646400214370ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2012-01-25", "endpointPrefix":"swf", "jsonVersion":"1.0", "serviceAbbreviation":"Amazon SWF", "serviceFullName":"Amazon Simple Workflow Service", "signatureVersion":"v4", "targetPrefix":"SimpleWorkflowService", "timestampFormat":"unixTimestamp", "protocol":"json" }, "operations":{ "CountClosedWorkflowExecutions":{ "name":"CountClosedWorkflowExecutions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CountClosedWorkflowExecutionsInput"}, "output":{"shape":"WorkflowExecutionCount"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "CountOpenWorkflowExecutions":{ "name":"CountOpenWorkflowExecutions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CountOpenWorkflowExecutionsInput"}, "output":{"shape":"WorkflowExecutionCount"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "CountPendingActivityTasks":{ "name":"CountPendingActivityTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CountPendingActivityTasksInput"}, "output":{"shape":"PendingTaskCount"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "CountPendingDecisionTasks":{ "name":"CountPendingDecisionTasks", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CountPendingDecisionTasksInput"}, "output":{"shape":"PendingTaskCount"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "DeprecateActivityType":{ "name":"DeprecateActivityType", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeprecateActivityTypeInput"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"TypeDeprecatedFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "DeprecateDomain":{ "name":"DeprecateDomain", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeprecateDomainInput"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"DomainDeprecatedFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "DeprecateWorkflowType":{ "name":"DeprecateWorkflowType", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeprecateWorkflowTypeInput"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"TypeDeprecatedFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "DescribeActivityType":{ "name":"DescribeActivityType", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeActivityTypeInput"}, "output":{"shape":"ActivityTypeDetail"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "DescribeDomain":{ "name":"DescribeDomain", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeDomainInput"}, "output":{"shape":"DomainDetail"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "DescribeWorkflowExecution":{ "name":"DescribeWorkflowExecution", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeWorkflowExecutionInput"}, "output":{"shape":"WorkflowExecutionDetail"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "DescribeWorkflowType":{ "name":"DescribeWorkflowType", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeWorkflowTypeInput"}, "output":{"shape":"WorkflowTypeDetail"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "GetWorkflowExecutionHistory":{ "name":"GetWorkflowExecutionHistory", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetWorkflowExecutionHistoryInput"}, "output":{"shape":"History"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "ListActivityTypes":{ "name":"ListActivityTypes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListActivityTypesInput"}, "output":{"shape":"ActivityTypeInfos"}, "errors":[ { "shape":"OperationNotPermittedFault", "exception":true }, { "shape":"UnknownResourceFault", "exception":true } ] }, "ListClosedWorkflowExecutions":{ "name":"ListClosedWorkflowExecutions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListClosedWorkflowExecutionsInput"}, "output":{"shape":"WorkflowExecutionInfos"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "ListDomains":{ "name":"ListDomains", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListDomainsInput"}, "output":{"shape":"DomainInfos"}, "errors":[ { "shape":"OperationNotPermittedFault", "exception":true } ] }, "ListOpenWorkflowExecutions":{ "name":"ListOpenWorkflowExecutions", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListOpenWorkflowExecutionsInput"}, "output":{"shape":"WorkflowExecutionInfos"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "ListWorkflowTypes":{ "name":"ListWorkflowTypes", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListWorkflowTypesInput"}, "output":{"shape":"WorkflowTypeInfos"}, "errors":[ { "shape":"OperationNotPermittedFault", "exception":true }, { "shape":"UnknownResourceFault", "exception":true } ] }, "PollForActivityTask":{ "name":"PollForActivityTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PollForActivityTaskInput"}, "output":{"shape":"ActivityTask"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true }, { "shape":"LimitExceededFault", "exception":true } ] }, "PollForDecisionTask":{ "name":"PollForDecisionTask", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"PollForDecisionTaskInput"}, "output":{"shape":"DecisionTask"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true }, { "shape":"LimitExceededFault", "exception":true } ] }, "RecordActivityTaskHeartbeat":{ "name":"RecordActivityTaskHeartbeat", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RecordActivityTaskHeartbeatInput"}, "output":{"shape":"ActivityTaskStatus"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "RegisterActivityType":{ "name":"RegisterActivityType", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterActivityTypeInput"}, "errors":[ { "shape":"TypeAlreadyExistsFault", "exception":true }, { "shape":"LimitExceededFault", "exception":true }, { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "RegisterDomain":{ "name":"RegisterDomain", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterDomainInput"}, "errors":[ { "shape":"DomainAlreadyExistsFault", "exception":true }, { "shape":"LimitExceededFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "RegisterWorkflowType":{ "name":"RegisterWorkflowType", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RegisterWorkflowTypeInput"}, "errors":[ { "shape":"TypeAlreadyExistsFault", "exception":true }, { "shape":"LimitExceededFault", "exception":true }, { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "RequestCancelWorkflowExecution":{ "name":"RequestCancelWorkflowExecution", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RequestCancelWorkflowExecutionInput"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "RespondActivityTaskCanceled":{ "name":"RespondActivityTaskCanceled", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RespondActivityTaskCanceledInput"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "RespondActivityTaskCompleted":{ "name":"RespondActivityTaskCompleted", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RespondActivityTaskCompletedInput"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "RespondActivityTaskFailed":{ "name":"RespondActivityTaskFailed", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RespondActivityTaskFailedInput"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "RespondDecisionTaskCompleted":{ "name":"RespondDecisionTaskCompleted", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RespondDecisionTaskCompletedInput"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "SignalWorkflowExecution":{ "name":"SignalWorkflowExecution", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"SignalWorkflowExecutionInput"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] }, "StartWorkflowExecution":{ "name":"StartWorkflowExecution", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartWorkflowExecutionInput"}, "output":{"shape":"Run"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"TypeDeprecatedFault", "exception":true }, { "shape":"WorkflowExecutionAlreadyStartedFault", "exception":true }, { "shape":"LimitExceededFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true }, { "shape":"DefaultUndefinedFault", "exception":true } ] }, "TerminateWorkflowExecution":{ "name":"TerminateWorkflowExecution", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"TerminateWorkflowExecutionInput"}, "errors":[ { "shape":"UnknownResourceFault", "exception":true }, { "shape":"OperationNotPermittedFault", "exception":true } ] } }, "shapes":{ "ActivityId":{ "type":"string", "min":1, "max":256 }, "ActivityTask":{ "type":"structure", "required":[ "taskToken", "activityId", "startedEventId", "workflowExecution", "activityType" ], "members":{ "taskToken":{"shape":"TaskToken"}, "activityId":{"shape":"ActivityId"}, "startedEventId":{"shape":"EventId"}, "workflowExecution":{"shape":"WorkflowExecution"}, "activityType":{"shape":"ActivityType"}, "input":{"shape":"Data"} } }, "ActivityTaskCancelRequestedEventAttributes":{ "type":"structure", "required":[ "decisionTaskCompletedEventId", "activityId" ], "members":{ "decisionTaskCompletedEventId":{"shape":"EventId"}, "activityId":{"shape":"ActivityId"} } }, "ActivityTaskCanceledEventAttributes":{ "type":"structure", "required":[ "scheduledEventId", "startedEventId" ], "members":{ "details":{"shape":"Data"}, "scheduledEventId":{"shape":"EventId"}, "startedEventId":{"shape":"EventId"}, "latestCancelRequestedEventId":{"shape":"EventId"} } }, "ActivityTaskCompletedEventAttributes":{ "type":"structure", "required":[ "scheduledEventId", "startedEventId" ], "members":{ "result":{"shape":"Data"}, "scheduledEventId":{"shape":"EventId"}, "startedEventId":{"shape":"EventId"} } }, "ActivityTaskFailedEventAttributes":{ "type":"structure", "required":[ "scheduledEventId", "startedEventId" ], "members":{ "reason":{"shape":"FailureReason"}, "details":{"shape":"Data"}, "scheduledEventId":{"shape":"EventId"}, "startedEventId":{"shape":"EventId"} } }, "ActivityTaskScheduledEventAttributes":{ "type":"structure", "required":[ "activityType", "activityId", "taskList", "decisionTaskCompletedEventId" ], "members":{ "activityType":{"shape":"ActivityType"}, "activityId":{"shape":"ActivityId"}, "input":{"shape":"Data"}, "control":{"shape":"Data"}, "scheduleToStartTimeout":{"shape":"DurationInSecondsOptional"}, "scheduleToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "startToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "taskList":{"shape":"TaskList"}, "taskPriority":{"shape":"TaskPriority"}, "decisionTaskCompletedEventId":{"shape":"EventId"}, "heartbeatTimeout":{"shape":"DurationInSecondsOptional"} } }, "ActivityTaskStartedEventAttributes":{ "type":"structure", "required":["scheduledEventId"], "members":{ "identity":{"shape":"Identity"}, "scheduledEventId":{"shape":"EventId"} } }, "ActivityTaskStatus":{ "type":"structure", "required":["cancelRequested"], "members":{ "cancelRequested":{"shape":"Canceled"} } }, "ActivityTaskTimedOutEventAttributes":{ "type":"structure", "required":[ "timeoutType", "scheduledEventId", "startedEventId" ], "members":{ "timeoutType":{"shape":"ActivityTaskTimeoutType"}, "scheduledEventId":{"shape":"EventId"}, "startedEventId":{"shape":"EventId"}, "details":{"shape":"LimitedData"} } }, "ActivityTaskTimeoutType":{ "type":"string", "enum":[ "START_TO_CLOSE", "SCHEDULE_TO_START", "SCHEDULE_TO_CLOSE", "HEARTBEAT" ] }, "ActivityType":{ "type":"structure", "required":[ "name", "version" ], "members":{ "name":{"shape":"Name"}, "version":{"shape":"Version"} } }, "ActivityTypeConfiguration":{ "type":"structure", "members":{ "defaultTaskStartToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "defaultTaskHeartbeatTimeout":{"shape":"DurationInSecondsOptional"}, "defaultTaskList":{"shape":"TaskList"}, "defaultTaskPriority":{"shape":"TaskPriority"}, "defaultTaskScheduleToStartTimeout":{"shape":"DurationInSecondsOptional"}, "defaultTaskScheduleToCloseTimeout":{"shape":"DurationInSecondsOptional"} } }, "ActivityTypeDetail":{ "type":"structure", "required":[ "typeInfo", "configuration" ], "members":{ "typeInfo":{"shape":"ActivityTypeInfo"}, "configuration":{"shape":"ActivityTypeConfiguration"} } }, "ActivityTypeInfo":{ "type":"structure", "required":[ "activityType", "status", "creationDate" ], "members":{ "activityType":{"shape":"ActivityType"}, "status":{"shape":"RegistrationStatus"}, "description":{"shape":"Description"}, "creationDate":{"shape":"Timestamp"}, "deprecationDate":{"shape":"Timestamp"} } }, "ActivityTypeInfoList":{ "type":"list", "member":{"shape":"ActivityTypeInfo"} }, "ActivityTypeInfos":{ "type":"structure", "required":["typeInfos"], "members":{ "typeInfos":{"shape":"ActivityTypeInfoList"}, "nextPageToken":{"shape":"PageToken"} } }, "Arn":{ "type":"string", "min":1, "max":1224 }, "CancelTimerDecisionAttributes":{ "type":"structure", "required":["timerId"], "members":{ "timerId":{"shape":"TimerId"} } }, "CancelTimerFailedCause":{ "type":"string", "enum":[ "TIMER_ID_UNKNOWN", "OPERATION_NOT_PERMITTED" ] }, "CancelTimerFailedEventAttributes":{ "type":"structure", "required":[ "timerId", "cause", "decisionTaskCompletedEventId" ], "members":{ "timerId":{"shape":"TimerId"}, "cause":{"shape":"CancelTimerFailedCause"}, "decisionTaskCompletedEventId":{"shape":"EventId"} } }, "CancelWorkflowExecutionDecisionAttributes":{ "type":"structure", "members":{ "details":{"shape":"Data"} } }, "CancelWorkflowExecutionFailedCause":{ "type":"string", "enum":[ "UNHANDLED_DECISION", "OPERATION_NOT_PERMITTED" ] }, "CancelWorkflowExecutionFailedEventAttributes":{ "type":"structure", "required":[ "cause", "decisionTaskCompletedEventId" ], "members":{ "cause":{"shape":"CancelWorkflowExecutionFailedCause"}, "decisionTaskCompletedEventId":{"shape":"EventId"} } }, "Canceled":{"type":"boolean"}, "CauseMessage":{ "type":"string", "max":1728 }, "ChildPolicy":{ "type":"string", "enum":[ "TERMINATE", "REQUEST_CANCEL", "ABANDON" ] }, "ChildWorkflowExecutionCanceledEventAttributes":{ "type":"structure", "required":[ "workflowExecution", "workflowType", "initiatedEventId", "startedEventId" ], "members":{ "workflowExecution":{"shape":"WorkflowExecution"}, "workflowType":{"shape":"WorkflowType"}, "details":{"shape":"Data"}, "initiatedEventId":{"shape":"EventId"}, "startedEventId":{"shape":"EventId"} } }, "ChildWorkflowExecutionCompletedEventAttributes":{ "type":"structure", "required":[ "workflowExecution", "workflowType", "initiatedEventId", "startedEventId" ], "members":{ "workflowExecution":{"shape":"WorkflowExecution"}, "workflowType":{"shape":"WorkflowType"}, "result":{"shape":"Data"}, "initiatedEventId":{"shape":"EventId"}, "startedEventId":{"shape":"EventId"} } }, "ChildWorkflowExecutionFailedEventAttributes":{ "type":"structure", "required":[ "workflowExecution", "workflowType", "initiatedEventId", "startedEventId" ], "members":{ "workflowExecution":{"shape":"WorkflowExecution"}, "workflowType":{"shape":"WorkflowType"}, "reason":{"shape":"FailureReason"}, "details":{"shape":"Data"}, "initiatedEventId":{"shape":"EventId"}, "startedEventId":{"shape":"EventId"} } }, "ChildWorkflowExecutionStartedEventAttributes":{ "type":"structure", "required":[ "workflowExecution", "workflowType", "initiatedEventId" ], "members":{ "workflowExecution":{"shape":"WorkflowExecution"}, "workflowType":{"shape":"WorkflowType"}, "initiatedEventId":{"shape":"EventId"} } }, "ChildWorkflowExecutionTerminatedEventAttributes":{ "type":"structure", "required":[ "workflowExecution", "workflowType", "initiatedEventId", "startedEventId" ], "members":{ "workflowExecution":{"shape":"WorkflowExecution"}, "workflowType":{"shape":"WorkflowType"}, "initiatedEventId":{"shape":"EventId"}, "startedEventId":{"shape":"EventId"} } }, "ChildWorkflowExecutionTimedOutEventAttributes":{ "type":"structure", "required":[ "workflowExecution", "workflowType", "timeoutType", "initiatedEventId", "startedEventId" ], "members":{ "workflowExecution":{"shape":"WorkflowExecution"}, "workflowType":{"shape":"WorkflowType"}, "timeoutType":{"shape":"WorkflowExecutionTimeoutType"}, "initiatedEventId":{"shape":"EventId"}, "startedEventId":{"shape":"EventId"} } }, "CloseStatus":{ "type":"string", "enum":[ "COMPLETED", "FAILED", "CANCELED", "TERMINATED", "CONTINUED_AS_NEW", "TIMED_OUT" ] }, "CloseStatusFilter":{ "type":"structure", "required":["status"], "members":{ "status":{"shape":"CloseStatus"} } }, "CompleteWorkflowExecutionDecisionAttributes":{ "type":"structure", "members":{ "result":{"shape":"Data"} } }, "CompleteWorkflowExecutionFailedCause":{ "type":"string", "enum":[ "UNHANDLED_DECISION", "OPERATION_NOT_PERMITTED" ] }, "CompleteWorkflowExecutionFailedEventAttributes":{ "type":"structure", "required":[ "cause", "decisionTaskCompletedEventId" ], "members":{ "cause":{"shape":"CompleteWorkflowExecutionFailedCause"}, "decisionTaskCompletedEventId":{"shape":"EventId"} } }, "ContinueAsNewWorkflowExecutionDecisionAttributes":{ "type":"structure", "members":{ "input":{"shape":"Data"}, "executionStartToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "taskList":{"shape":"TaskList"}, "taskPriority":{"shape":"TaskPriority"}, "taskStartToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "childPolicy":{"shape":"ChildPolicy"}, "tagList":{"shape":"TagList"}, "workflowTypeVersion":{"shape":"Version"}, "lambdaRole":{"shape":"Arn"} } }, "ContinueAsNewWorkflowExecutionFailedCause":{ "type":"string", "enum":[ "UNHANDLED_DECISION", "WORKFLOW_TYPE_DEPRECATED", "WORKFLOW_TYPE_DOES_NOT_EXIST", "DEFAULT_EXECUTION_START_TO_CLOSE_TIMEOUT_UNDEFINED", "DEFAULT_TASK_START_TO_CLOSE_TIMEOUT_UNDEFINED", "DEFAULT_TASK_LIST_UNDEFINED", "DEFAULT_CHILD_POLICY_UNDEFINED", "CONTINUE_AS_NEW_WORKFLOW_EXECUTION_RATE_EXCEEDED", "OPERATION_NOT_PERMITTED" ] }, "ContinueAsNewWorkflowExecutionFailedEventAttributes":{ "type":"structure", "required":[ "cause", "decisionTaskCompletedEventId" ], "members":{ "cause":{"shape":"ContinueAsNewWorkflowExecutionFailedCause"}, "decisionTaskCompletedEventId":{"shape":"EventId"} } }, "Count":{ "type":"integer", "min":0 }, "CountClosedWorkflowExecutionsInput":{ "type":"structure", "required":["domain"], "members":{ "domain":{"shape":"DomainName"}, "startTimeFilter":{"shape":"ExecutionTimeFilter"}, "closeTimeFilter":{"shape":"ExecutionTimeFilter"}, "executionFilter":{"shape":"WorkflowExecutionFilter"}, "typeFilter":{"shape":"WorkflowTypeFilter"}, "tagFilter":{"shape":"TagFilter"}, "closeStatusFilter":{"shape":"CloseStatusFilter"} } }, "CountOpenWorkflowExecutionsInput":{ "type":"structure", "required":[ "domain", "startTimeFilter" ], "members":{ "domain":{"shape":"DomainName"}, "startTimeFilter":{"shape":"ExecutionTimeFilter"}, "typeFilter":{"shape":"WorkflowTypeFilter"}, "tagFilter":{"shape":"TagFilter"}, "executionFilter":{"shape":"WorkflowExecutionFilter"} } }, "CountPendingActivityTasksInput":{ "type":"structure", "required":[ "domain", "taskList" ], "members":{ "domain":{"shape":"DomainName"}, "taskList":{"shape":"TaskList"} } }, "CountPendingDecisionTasksInput":{ "type":"structure", "required":[ "domain", "taskList" ], "members":{ "domain":{"shape":"DomainName"}, "taskList":{"shape":"TaskList"} } }, "Data":{ "type":"string", "max":32768 }, "Decision":{ "type":"structure", "required":["decisionType"], "members":{ "decisionType":{"shape":"DecisionType"}, "scheduleActivityTaskDecisionAttributes":{"shape":"ScheduleActivityTaskDecisionAttributes"}, "requestCancelActivityTaskDecisionAttributes":{"shape":"RequestCancelActivityTaskDecisionAttributes"}, "completeWorkflowExecutionDecisionAttributes":{"shape":"CompleteWorkflowExecutionDecisionAttributes"}, "failWorkflowExecutionDecisionAttributes":{"shape":"FailWorkflowExecutionDecisionAttributes"}, "cancelWorkflowExecutionDecisionAttributes":{"shape":"CancelWorkflowExecutionDecisionAttributes"}, "continueAsNewWorkflowExecutionDecisionAttributes":{"shape":"ContinueAsNewWorkflowExecutionDecisionAttributes"}, "recordMarkerDecisionAttributes":{"shape":"RecordMarkerDecisionAttributes"}, "startTimerDecisionAttributes":{"shape":"StartTimerDecisionAttributes"}, "cancelTimerDecisionAttributes":{"shape":"CancelTimerDecisionAttributes"}, "signalExternalWorkflowExecutionDecisionAttributes":{"shape":"SignalExternalWorkflowExecutionDecisionAttributes"}, "requestCancelExternalWorkflowExecutionDecisionAttributes":{"shape":"RequestCancelExternalWorkflowExecutionDecisionAttributes"}, "startChildWorkflowExecutionDecisionAttributes":{"shape":"StartChildWorkflowExecutionDecisionAttributes"}, "scheduleLambdaFunctionDecisionAttributes":{"shape":"ScheduleLambdaFunctionDecisionAttributes"} } }, "DecisionList":{ "type":"list", "member":{"shape":"Decision"} }, "DecisionTask":{ "type":"structure", "required":[ "taskToken", "startedEventId", "workflowExecution", "workflowType", "events" ], "members":{ "taskToken":{"shape":"TaskToken"}, "startedEventId":{"shape":"EventId"}, "workflowExecution":{"shape":"WorkflowExecution"}, "workflowType":{"shape":"WorkflowType"}, "events":{"shape":"HistoryEventList"}, "nextPageToken":{"shape":"PageToken"}, "previousStartedEventId":{"shape":"EventId"} } }, "DecisionTaskCompletedEventAttributes":{ "type":"structure", "required":[ "scheduledEventId", "startedEventId" ], "members":{ "executionContext":{"shape":"Data"}, "scheduledEventId":{"shape":"EventId"}, "startedEventId":{"shape":"EventId"} } }, "DecisionTaskScheduledEventAttributes":{ "type":"structure", "required":["taskList"], "members":{ "taskList":{"shape":"TaskList"}, "taskPriority":{"shape":"TaskPriority"}, "startToCloseTimeout":{"shape":"DurationInSecondsOptional"} } }, "DecisionTaskStartedEventAttributes":{ "type":"structure", "required":["scheduledEventId"], "members":{ "identity":{"shape":"Identity"}, "scheduledEventId":{"shape":"EventId"} } }, "DecisionTaskTimedOutEventAttributes":{ "type":"structure", "required":[ "timeoutType", "scheduledEventId", "startedEventId" ], "members":{ "timeoutType":{"shape":"DecisionTaskTimeoutType"}, "scheduledEventId":{"shape":"EventId"}, "startedEventId":{"shape":"EventId"} } }, "DecisionTaskTimeoutType":{ "type":"string", "enum":["START_TO_CLOSE"] }, "DecisionType":{ "type":"string", "enum":[ "ScheduleActivityTask", "RequestCancelActivityTask", "CompleteWorkflowExecution", "FailWorkflowExecution", "CancelWorkflowExecution", "ContinueAsNewWorkflowExecution", "RecordMarker", "StartTimer", "CancelTimer", "SignalExternalWorkflowExecution", "RequestCancelExternalWorkflowExecution", "StartChildWorkflowExecution", "ScheduleLambdaFunction" ] }, "DefaultUndefinedFault":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "DeprecateActivityTypeInput":{ "type":"structure", "required":[ "domain", "activityType" ], "members":{ "domain":{"shape":"DomainName"}, "activityType":{"shape":"ActivityType"} } }, "DeprecateDomainInput":{ "type":"structure", "required":["name"], "members":{ "name":{"shape":"DomainName"} } }, "DeprecateWorkflowTypeInput":{ "type":"structure", "required":[ "domain", "workflowType" ], "members":{ "domain":{"shape":"DomainName"}, "workflowType":{"shape":"WorkflowType"} } }, "DescribeActivityTypeInput":{ "type":"structure", "required":[ "domain", "activityType" ], "members":{ "domain":{"shape":"DomainName"}, "activityType":{"shape":"ActivityType"} } }, "DescribeDomainInput":{ "type":"structure", "required":["name"], "members":{ "name":{"shape":"DomainName"} } }, "DescribeWorkflowExecutionInput":{ "type":"structure", "required":[ "domain", "execution" ], "members":{ "domain":{"shape":"DomainName"}, "execution":{"shape":"WorkflowExecution"} } }, "DescribeWorkflowTypeInput":{ "type":"structure", "required":[ "domain", "workflowType" ], "members":{ "domain":{"shape":"DomainName"}, "workflowType":{"shape":"WorkflowType"} } }, "Description":{ "type":"string", "max":1024 }, "DomainAlreadyExistsFault":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "DomainConfiguration":{ "type":"structure", "required":["workflowExecutionRetentionPeriodInDays"], "members":{ "workflowExecutionRetentionPeriodInDays":{"shape":"DurationInDays"} } }, "DomainDeprecatedFault":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "DomainDetail":{ "type":"structure", "required":[ "domainInfo", "configuration" ], "members":{ "domainInfo":{"shape":"DomainInfo"}, "configuration":{"shape":"DomainConfiguration"} } }, "DomainInfo":{ "type":"structure", "required":[ "name", "status" ], "members":{ "name":{"shape":"DomainName"}, "status":{"shape":"RegistrationStatus"}, "description":{"shape":"Description"} } }, "DomainInfoList":{ "type":"list", "member":{"shape":"DomainInfo"} }, "DomainInfos":{ "type":"structure", "required":["domainInfos"], "members":{ "domainInfos":{"shape":"DomainInfoList"}, "nextPageToken":{"shape":"PageToken"} } }, "DomainName":{ "type":"string", "min":1, "max":256 }, "DurationInDays":{ "type":"string", "min":1, "max":8 }, "DurationInSeconds":{ "type":"string", "min":1, "max":8 }, "DurationInSecondsOptional":{ "type":"string", "max":8 }, "ErrorMessage":{"type":"string"}, "EventId":{"type":"long"}, "EventType":{ "type":"string", "enum":[ "WorkflowExecutionStarted", "WorkflowExecutionCancelRequested", "WorkflowExecutionCompleted", "CompleteWorkflowExecutionFailed", "WorkflowExecutionFailed", "FailWorkflowExecutionFailed", "WorkflowExecutionTimedOut", "WorkflowExecutionCanceled", "CancelWorkflowExecutionFailed", "WorkflowExecutionContinuedAsNew", "ContinueAsNewWorkflowExecutionFailed", "WorkflowExecutionTerminated", "DecisionTaskScheduled", "DecisionTaskStarted", "DecisionTaskCompleted", "DecisionTaskTimedOut", "ActivityTaskScheduled", "ScheduleActivityTaskFailed", "ActivityTaskStarted", "ActivityTaskCompleted", "ActivityTaskFailed", "ActivityTaskTimedOut", "ActivityTaskCanceled", "ActivityTaskCancelRequested", "RequestCancelActivityTaskFailed", "WorkflowExecutionSignaled", "MarkerRecorded", "RecordMarkerFailed", "TimerStarted", "StartTimerFailed", "TimerFired", "TimerCanceled", "CancelTimerFailed", "StartChildWorkflowExecutionInitiated", "StartChildWorkflowExecutionFailed", "ChildWorkflowExecutionStarted", "ChildWorkflowExecutionCompleted", "ChildWorkflowExecutionFailed", "ChildWorkflowExecutionTimedOut", "ChildWorkflowExecutionCanceled", "ChildWorkflowExecutionTerminated", "SignalExternalWorkflowExecutionInitiated", "SignalExternalWorkflowExecutionFailed", "ExternalWorkflowExecutionSignaled", "RequestCancelExternalWorkflowExecutionInitiated", "RequestCancelExternalWorkflowExecutionFailed", "ExternalWorkflowExecutionCancelRequested", "LambdaFunctionScheduled", "LambdaFunctionStarted", "LambdaFunctionCompleted", "LambdaFunctionFailed", "LambdaFunctionTimedOut", "ScheduleLambdaFunctionFailed", "StartLambdaFunctionFailed" ] }, "ExecutionStatus":{ "type":"string", "enum":[ "OPEN", "CLOSED" ] }, "ExecutionTimeFilter":{ "type":"structure", "required":["oldestDate"], "members":{ "oldestDate":{"shape":"Timestamp"}, "latestDate":{"shape":"Timestamp"} } }, "ExternalWorkflowExecutionCancelRequestedEventAttributes":{ "type":"structure", "required":[ "workflowExecution", "initiatedEventId" ], "members":{ "workflowExecution":{"shape":"WorkflowExecution"}, "initiatedEventId":{"shape":"EventId"} } }, "ExternalWorkflowExecutionSignaledEventAttributes":{ "type":"structure", "required":[ "workflowExecution", "initiatedEventId" ], "members":{ "workflowExecution":{"shape":"WorkflowExecution"}, "initiatedEventId":{"shape":"EventId"} } }, "FailWorkflowExecutionDecisionAttributes":{ "type":"structure", "members":{ "reason":{"shape":"FailureReason"}, "details":{"shape":"Data"} } }, "FailWorkflowExecutionFailedCause":{ "type":"string", "enum":[ "UNHANDLED_DECISION", "OPERATION_NOT_PERMITTED" ] }, "FailWorkflowExecutionFailedEventAttributes":{ "type":"structure", "required":[ "cause", "decisionTaskCompletedEventId" ], "members":{ "cause":{"shape":"FailWorkflowExecutionFailedCause"}, "decisionTaskCompletedEventId":{"shape":"EventId"} } }, "FailureReason":{ "type":"string", "max":256 }, "FunctionId":{ "type":"string", "min":1, "max":256 }, "FunctionInput":{ "type":"string", "min":1, "max":32768 }, "FunctionName":{ "type":"string", "min":1, "max":64 }, "GetWorkflowExecutionHistoryInput":{ "type":"structure", "required":[ "domain", "execution" ], "members":{ "domain":{"shape":"DomainName"}, "execution":{"shape":"WorkflowExecution"}, "nextPageToken":{"shape":"PageToken"}, "maximumPageSize":{"shape":"PageSize"}, "reverseOrder":{"shape":"ReverseOrder"} } }, "History":{ "type":"structure", "required":["events"], "members":{ "events":{"shape":"HistoryEventList"}, "nextPageToken":{"shape":"PageToken"} } }, "HistoryEvent":{ "type":"structure", "required":[ "eventTimestamp", "eventType", "eventId" ], "members":{ "eventTimestamp":{"shape":"Timestamp"}, "eventType":{"shape":"EventType"}, "eventId":{"shape":"EventId"}, "workflowExecutionStartedEventAttributes":{"shape":"WorkflowExecutionStartedEventAttributes"}, "workflowExecutionCompletedEventAttributes":{"shape":"WorkflowExecutionCompletedEventAttributes"}, "completeWorkflowExecutionFailedEventAttributes":{"shape":"CompleteWorkflowExecutionFailedEventAttributes"}, "workflowExecutionFailedEventAttributes":{"shape":"WorkflowExecutionFailedEventAttributes"}, "failWorkflowExecutionFailedEventAttributes":{"shape":"FailWorkflowExecutionFailedEventAttributes"}, "workflowExecutionTimedOutEventAttributes":{"shape":"WorkflowExecutionTimedOutEventAttributes"}, "workflowExecutionCanceledEventAttributes":{"shape":"WorkflowExecutionCanceledEventAttributes"}, "cancelWorkflowExecutionFailedEventAttributes":{"shape":"CancelWorkflowExecutionFailedEventAttributes"}, "workflowExecutionContinuedAsNewEventAttributes":{"shape":"WorkflowExecutionContinuedAsNewEventAttributes"}, "continueAsNewWorkflowExecutionFailedEventAttributes":{"shape":"ContinueAsNewWorkflowExecutionFailedEventAttributes"}, "workflowExecutionTerminatedEventAttributes":{"shape":"WorkflowExecutionTerminatedEventAttributes"}, "workflowExecutionCancelRequestedEventAttributes":{"shape":"WorkflowExecutionCancelRequestedEventAttributes"}, "decisionTaskScheduledEventAttributes":{"shape":"DecisionTaskScheduledEventAttributes"}, "decisionTaskStartedEventAttributes":{"shape":"DecisionTaskStartedEventAttributes"}, "decisionTaskCompletedEventAttributes":{"shape":"DecisionTaskCompletedEventAttributes"}, "decisionTaskTimedOutEventAttributes":{"shape":"DecisionTaskTimedOutEventAttributes"}, "activityTaskScheduledEventAttributes":{"shape":"ActivityTaskScheduledEventAttributes"}, "activityTaskStartedEventAttributes":{"shape":"ActivityTaskStartedEventAttributes"}, "activityTaskCompletedEventAttributes":{"shape":"ActivityTaskCompletedEventAttributes"}, "activityTaskFailedEventAttributes":{"shape":"ActivityTaskFailedEventAttributes"}, "activityTaskTimedOutEventAttributes":{"shape":"ActivityTaskTimedOutEventAttributes"}, "activityTaskCanceledEventAttributes":{"shape":"ActivityTaskCanceledEventAttributes"}, "activityTaskCancelRequestedEventAttributes":{"shape":"ActivityTaskCancelRequestedEventAttributes"}, "workflowExecutionSignaledEventAttributes":{"shape":"WorkflowExecutionSignaledEventAttributes"}, "markerRecordedEventAttributes":{"shape":"MarkerRecordedEventAttributes"}, "recordMarkerFailedEventAttributes":{"shape":"RecordMarkerFailedEventAttributes"}, "timerStartedEventAttributes":{"shape":"TimerStartedEventAttributes"}, "timerFiredEventAttributes":{"shape":"TimerFiredEventAttributes"}, "timerCanceledEventAttributes":{"shape":"TimerCanceledEventAttributes"}, "startChildWorkflowExecutionInitiatedEventAttributes":{"shape":"StartChildWorkflowExecutionInitiatedEventAttributes"}, "childWorkflowExecutionStartedEventAttributes":{"shape":"ChildWorkflowExecutionStartedEventAttributes"}, "childWorkflowExecutionCompletedEventAttributes":{"shape":"ChildWorkflowExecutionCompletedEventAttributes"}, "childWorkflowExecutionFailedEventAttributes":{"shape":"ChildWorkflowExecutionFailedEventAttributes"}, "childWorkflowExecutionTimedOutEventAttributes":{"shape":"ChildWorkflowExecutionTimedOutEventAttributes"}, "childWorkflowExecutionCanceledEventAttributes":{"shape":"ChildWorkflowExecutionCanceledEventAttributes"}, "childWorkflowExecutionTerminatedEventAttributes":{"shape":"ChildWorkflowExecutionTerminatedEventAttributes"}, "signalExternalWorkflowExecutionInitiatedEventAttributes":{"shape":"SignalExternalWorkflowExecutionInitiatedEventAttributes"}, "externalWorkflowExecutionSignaledEventAttributes":{"shape":"ExternalWorkflowExecutionSignaledEventAttributes"}, "signalExternalWorkflowExecutionFailedEventAttributes":{"shape":"SignalExternalWorkflowExecutionFailedEventAttributes"}, "externalWorkflowExecutionCancelRequestedEventAttributes":{"shape":"ExternalWorkflowExecutionCancelRequestedEventAttributes"}, "requestCancelExternalWorkflowExecutionInitiatedEventAttributes":{"shape":"RequestCancelExternalWorkflowExecutionInitiatedEventAttributes"}, "requestCancelExternalWorkflowExecutionFailedEventAttributes":{"shape":"RequestCancelExternalWorkflowExecutionFailedEventAttributes"}, "scheduleActivityTaskFailedEventAttributes":{"shape":"ScheduleActivityTaskFailedEventAttributes"}, "requestCancelActivityTaskFailedEventAttributes":{"shape":"RequestCancelActivityTaskFailedEventAttributes"}, "startTimerFailedEventAttributes":{"shape":"StartTimerFailedEventAttributes"}, "cancelTimerFailedEventAttributes":{"shape":"CancelTimerFailedEventAttributes"}, "startChildWorkflowExecutionFailedEventAttributes":{"shape":"StartChildWorkflowExecutionFailedEventAttributes"}, "lambdaFunctionScheduledEventAttributes":{"shape":"LambdaFunctionScheduledEventAttributes"}, "lambdaFunctionStartedEventAttributes":{"shape":"LambdaFunctionStartedEventAttributes"}, "lambdaFunctionCompletedEventAttributes":{"shape":"LambdaFunctionCompletedEventAttributes"}, "lambdaFunctionFailedEventAttributes":{"shape":"LambdaFunctionFailedEventAttributes"}, "lambdaFunctionTimedOutEventAttributes":{"shape":"LambdaFunctionTimedOutEventAttributes"}, "scheduleLambdaFunctionFailedEventAttributes":{"shape":"ScheduleLambdaFunctionFailedEventAttributes"}, "startLambdaFunctionFailedEventAttributes":{"shape":"StartLambdaFunctionFailedEventAttributes"} } }, "HistoryEventList":{ "type":"list", "member":{"shape":"HistoryEvent"} }, "Identity":{ "type":"string", "max":256 }, "LambdaFunctionCompletedEventAttributes":{ "type":"structure", "required":[ "scheduledEventId", "startedEventId" ], "members":{ "scheduledEventId":{"shape":"EventId"}, "startedEventId":{"shape":"EventId"}, "result":{"shape":"Data"} } }, "LambdaFunctionFailedEventAttributes":{ "type":"structure", "required":[ "scheduledEventId", "startedEventId" ], "members":{ "scheduledEventId":{"shape":"EventId"}, "startedEventId":{"shape":"EventId"}, "reason":{"shape":"FailureReason"}, "details":{"shape":"Data"} } }, "LambdaFunctionScheduledEventAttributes":{ "type":"structure", "required":[ "id", "name", "decisionTaskCompletedEventId" ], "members":{ "id":{"shape":"FunctionId"}, "name":{"shape":"FunctionName"}, "input":{"shape":"FunctionInput"}, "startToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "decisionTaskCompletedEventId":{"shape":"EventId"} } }, "LambdaFunctionStartedEventAttributes":{ "type":"structure", "required":["scheduledEventId"], "members":{ "scheduledEventId":{"shape":"EventId"} } }, "LambdaFunctionTimedOutEventAttributes":{ "type":"structure", "required":[ "scheduledEventId", "startedEventId" ], "members":{ "scheduledEventId":{"shape":"EventId"}, "startedEventId":{"shape":"EventId"}, "timeoutType":{"shape":"LambdaFunctionTimeoutType"} } }, "LambdaFunctionTimeoutType":{ "type":"string", "enum":["START_TO_CLOSE"] }, "LimitExceededFault":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "LimitedData":{ "type":"string", "max":2048 }, "ListActivityTypesInput":{ "type":"structure", "required":[ "domain", "registrationStatus" ], "members":{ "domain":{"shape":"DomainName"}, "name":{"shape":"Name"}, "registrationStatus":{"shape":"RegistrationStatus"}, "nextPageToken":{"shape":"PageToken"}, "maximumPageSize":{"shape":"PageSize"}, "reverseOrder":{"shape":"ReverseOrder"} } }, "ListClosedWorkflowExecutionsInput":{ "type":"structure", "required":["domain"], "members":{ "domain":{"shape":"DomainName"}, "startTimeFilter":{"shape":"ExecutionTimeFilter"}, "closeTimeFilter":{"shape":"ExecutionTimeFilter"}, "executionFilter":{"shape":"WorkflowExecutionFilter"}, "closeStatusFilter":{"shape":"CloseStatusFilter"}, "typeFilter":{"shape":"WorkflowTypeFilter"}, "tagFilter":{"shape":"TagFilter"}, "nextPageToken":{"shape":"PageToken"}, "maximumPageSize":{"shape":"PageSize"}, "reverseOrder":{"shape":"ReverseOrder"} } }, "ListDomainsInput":{ "type":"structure", "required":["registrationStatus"], "members":{ "nextPageToken":{"shape":"PageToken"}, "registrationStatus":{"shape":"RegistrationStatus"}, "maximumPageSize":{"shape":"PageSize"}, "reverseOrder":{"shape":"ReverseOrder"} } }, "ListOpenWorkflowExecutionsInput":{ "type":"structure", "required":[ "domain", "startTimeFilter" ], "members":{ "domain":{"shape":"DomainName"}, "startTimeFilter":{"shape":"ExecutionTimeFilter"}, "typeFilter":{"shape":"WorkflowTypeFilter"}, "tagFilter":{"shape":"TagFilter"}, "nextPageToken":{"shape":"PageToken"}, "maximumPageSize":{"shape":"PageSize"}, "reverseOrder":{"shape":"ReverseOrder"}, "executionFilter":{"shape":"WorkflowExecutionFilter"} } }, "ListWorkflowTypesInput":{ "type":"structure", "required":[ "domain", "registrationStatus" ], "members":{ "domain":{"shape":"DomainName"}, "name":{"shape":"Name"}, "registrationStatus":{"shape":"RegistrationStatus"}, "nextPageToken":{"shape":"PageToken"}, "maximumPageSize":{"shape":"PageSize"}, "reverseOrder":{"shape":"ReverseOrder"} } }, "MarkerName":{ "type":"string", "min":1, "max":256 }, "MarkerRecordedEventAttributes":{ "type":"structure", "required":[ "markerName", "decisionTaskCompletedEventId" ], "members":{ "markerName":{"shape":"MarkerName"}, "details":{"shape":"Data"}, "decisionTaskCompletedEventId":{"shape":"EventId"} } }, "Name":{ "type":"string", "min":1, "max":256 }, "OpenDecisionTasksCount":{ "type":"integer", "min":0, "max":1 }, "OperationNotPermittedFault":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "PageSize":{ "type":"integer", "min":0, "max":1000 }, "PageToken":{ "type":"string", "max":2048 }, "PendingTaskCount":{ "type":"structure", "required":["count"], "members":{ "count":{"shape":"Count"}, "truncated":{"shape":"Truncated"} } }, "PollForActivityTaskInput":{ "type":"structure", "required":[ "domain", "taskList" ], "members":{ "domain":{"shape":"DomainName"}, "taskList":{"shape":"TaskList"}, "identity":{"shape":"Identity"} } }, "PollForDecisionTaskInput":{ "type":"structure", "required":[ "domain", "taskList" ], "members":{ "domain":{"shape":"DomainName"}, "taskList":{"shape":"TaskList"}, "identity":{"shape":"Identity"}, "nextPageToken":{"shape":"PageToken"}, "maximumPageSize":{"shape":"PageSize"}, "reverseOrder":{"shape":"ReverseOrder"} } }, "RecordActivityTaskHeartbeatInput":{ "type":"structure", "required":["taskToken"], "members":{ "taskToken":{"shape":"TaskToken"}, "details":{"shape":"LimitedData"} } }, "RecordMarkerDecisionAttributes":{ "type":"structure", "required":["markerName"], "members":{ "markerName":{"shape":"MarkerName"}, "details":{"shape":"Data"} } }, "RecordMarkerFailedCause":{ "type":"string", "enum":["OPERATION_NOT_PERMITTED"] }, "RecordMarkerFailedEventAttributes":{ "type":"structure", "required":[ "markerName", "cause", "decisionTaskCompletedEventId" ], "members":{ "markerName":{"shape":"MarkerName"}, "cause":{"shape":"RecordMarkerFailedCause"}, "decisionTaskCompletedEventId":{"shape":"EventId"} } }, "RegisterActivityTypeInput":{ "type":"structure", "required":[ "domain", "name", "version" ], "members":{ "domain":{"shape":"DomainName"}, "name":{"shape":"Name"}, "version":{"shape":"Version"}, "description":{"shape":"Description"}, "defaultTaskStartToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "defaultTaskHeartbeatTimeout":{"shape":"DurationInSecondsOptional"}, "defaultTaskList":{"shape":"TaskList"}, "defaultTaskPriority":{"shape":"TaskPriority"}, "defaultTaskScheduleToStartTimeout":{"shape":"DurationInSecondsOptional"}, "defaultTaskScheduleToCloseTimeout":{"shape":"DurationInSecondsOptional"} } }, "RegisterDomainInput":{ "type":"structure", "required":[ "name", "workflowExecutionRetentionPeriodInDays" ], "members":{ "name":{"shape":"DomainName"}, "description":{"shape":"Description"}, "workflowExecutionRetentionPeriodInDays":{"shape":"DurationInDays"} } }, "RegisterWorkflowTypeInput":{ "type":"structure", "required":[ "domain", "name", "version" ], "members":{ "domain":{"shape":"DomainName"}, "name":{"shape":"Name"}, "version":{"shape":"Version"}, "description":{"shape":"Description"}, "defaultTaskStartToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "defaultExecutionStartToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "defaultTaskList":{"shape":"TaskList"}, "defaultTaskPriority":{"shape":"TaskPriority"}, "defaultChildPolicy":{"shape":"ChildPolicy"}, "defaultLambdaRole":{"shape":"Arn"} } }, "RegistrationStatus":{ "type":"string", "enum":[ "REGISTERED", "DEPRECATED" ] }, "RequestCancelActivityTaskDecisionAttributes":{ "type":"structure", "required":["activityId"], "members":{ "activityId":{"shape":"ActivityId"} } }, "RequestCancelActivityTaskFailedCause":{ "type":"string", "enum":[ "ACTIVITY_ID_UNKNOWN", "OPERATION_NOT_PERMITTED" ] }, "RequestCancelActivityTaskFailedEventAttributes":{ "type":"structure", "required":[ "activityId", "cause", "decisionTaskCompletedEventId" ], "members":{ "activityId":{"shape":"ActivityId"}, "cause":{"shape":"RequestCancelActivityTaskFailedCause"}, "decisionTaskCompletedEventId":{"shape":"EventId"} } }, "RequestCancelExternalWorkflowExecutionDecisionAttributes":{ "type":"structure", "required":["workflowId"], "members":{ "workflowId":{"shape":"WorkflowId"}, "runId":{"shape":"RunIdOptional"}, "control":{"shape":"Data"} } }, "RequestCancelExternalWorkflowExecutionFailedCause":{ "type":"string", "enum":[ "UNKNOWN_EXTERNAL_WORKFLOW_EXECUTION", "REQUEST_CANCEL_EXTERNAL_WORKFLOW_EXECUTION_RATE_EXCEEDED", "OPERATION_NOT_PERMITTED" ] }, "RequestCancelExternalWorkflowExecutionFailedEventAttributes":{ "type":"structure", "required":[ "workflowId", "cause", "initiatedEventId", "decisionTaskCompletedEventId" ], "members":{ "workflowId":{"shape":"WorkflowId"}, "runId":{"shape":"RunIdOptional"}, "cause":{"shape":"RequestCancelExternalWorkflowExecutionFailedCause"}, "initiatedEventId":{"shape":"EventId"}, "decisionTaskCompletedEventId":{"shape":"EventId"}, "control":{"shape":"Data"} } }, "RequestCancelExternalWorkflowExecutionInitiatedEventAttributes":{ "type":"structure", "required":[ "workflowId", "decisionTaskCompletedEventId" ], "members":{ "workflowId":{"shape":"WorkflowId"}, "runId":{"shape":"RunIdOptional"}, "decisionTaskCompletedEventId":{"shape":"EventId"}, "control":{"shape":"Data"} } }, "RequestCancelWorkflowExecutionInput":{ "type":"structure", "required":[ "domain", "workflowId" ], "members":{ "domain":{"shape":"DomainName"}, "workflowId":{"shape":"WorkflowId"}, "runId":{"shape":"RunIdOptional"} } }, "RespondActivityTaskCanceledInput":{ "type":"structure", "required":["taskToken"], "members":{ "taskToken":{"shape":"TaskToken"}, "details":{"shape":"Data"} } }, "RespondActivityTaskCompletedInput":{ "type":"structure", "required":["taskToken"], "members":{ "taskToken":{"shape":"TaskToken"}, "result":{"shape":"Data"} } }, "RespondActivityTaskFailedInput":{ "type":"structure", "required":["taskToken"], "members":{ "taskToken":{"shape":"TaskToken"}, "reason":{"shape":"FailureReason"}, "details":{"shape":"Data"} } }, "RespondDecisionTaskCompletedInput":{ "type":"structure", "required":["taskToken"], "members":{ "taskToken":{"shape":"TaskToken"}, "decisions":{"shape":"DecisionList"}, "executionContext":{"shape":"Data"} } }, "ReverseOrder":{"type":"boolean"}, "Run":{ "type":"structure", "members":{ "runId":{"shape":"RunId"} } }, "RunId":{ "type":"string", "min":1, "max":64 }, "RunIdOptional":{ "type":"string", "max":64 }, "ScheduleActivityTaskDecisionAttributes":{ "type":"structure", "required":[ "activityType", "activityId" ], "members":{ "activityType":{"shape":"ActivityType"}, "activityId":{"shape":"ActivityId"}, "control":{"shape":"Data"}, "input":{"shape":"Data"}, "scheduleToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "taskList":{"shape":"TaskList"}, "taskPriority":{"shape":"TaskPriority"}, "scheduleToStartTimeout":{"shape":"DurationInSecondsOptional"}, "startToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "heartbeatTimeout":{"shape":"DurationInSecondsOptional"} } }, "ScheduleActivityTaskFailedCause":{ "type":"string", "enum":[ "ACTIVITY_TYPE_DEPRECATED", "ACTIVITY_TYPE_DOES_NOT_EXIST", "ACTIVITY_ID_ALREADY_IN_USE", "OPEN_ACTIVITIES_LIMIT_EXCEEDED", "ACTIVITY_CREATION_RATE_EXCEEDED", "DEFAULT_SCHEDULE_TO_CLOSE_TIMEOUT_UNDEFINED", "DEFAULT_TASK_LIST_UNDEFINED", "DEFAULT_SCHEDULE_TO_START_TIMEOUT_UNDEFINED", "DEFAULT_START_TO_CLOSE_TIMEOUT_UNDEFINED", "DEFAULT_HEARTBEAT_TIMEOUT_UNDEFINED", "OPERATION_NOT_PERMITTED" ] }, "ScheduleActivityTaskFailedEventAttributes":{ "type":"structure", "required":[ "activityType", "activityId", "cause", "decisionTaskCompletedEventId" ], "members":{ "activityType":{"shape":"ActivityType"}, "activityId":{"shape":"ActivityId"}, "cause":{"shape":"ScheduleActivityTaskFailedCause"}, "decisionTaskCompletedEventId":{"shape":"EventId"} } }, "ScheduleLambdaFunctionDecisionAttributes":{ "type":"structure", "required":[ "id", "name" ], "members":{ "id":{"shape":"FunctionId"}, "name":{"shape":"FunctionName"}, "input":{"shape":"FunctionInput"}, "startToCloseTimeout":{"shape":"DurationInSecondsOptional"} } }, "ScheduleLambdaFunctionFailedCause":{ "type":"string", "enum":[ "ID_ALREADY_IN_USE", "OPEN_LAMBDA_FUNCTIONS_LIMIT_EXCEEDED", "LAMBDA_FUNCTION_CREATION_RATE_EXCEEDED", "LAMBDA_SERVICE_NOT_AVAILABLE_IN_REGION" ] }, "ScheduleLambdaFunctionFailedEventAttributes":{ "type":"structure", "required":[ "id", "name", "cause", "decisionTaskCompletedEventId" ], "members":{ "id":{"shape":"FunctionId"}, "name":{"shape":"FunctionName"}, "cause":{"shape":"ScheduleLambdaFunctionFailedCause"}, "decisionTaskCompletedEventId":{"shape":"EventId"} } }, "SignalExternalWorkflowExecutionDecisionAttributes":{ "type":"structure", "required":[ "workflowId", "signalName" ], "members":{ "workflowId":{"shape":"WorkflowId"}, "runId":{"shape":"RunIdOptional"}, "signalName":{"shape":"SignalName"}, "input":{"shape":"Data"}, "control":{"shape":"Data"} } }, "SignalExternalWorkflowExecutionFailedCause":{ "type":"string", "enum":[ "UNKNOWN_EXTERNAL_WORKFLOW_EXECUTION", "SIGNAL_EXTERNAL_WORKFLOW_EXECUTION_RATE_EXCEEDED", "OPERATION_NOT_PERMITTED" ] }, "SignalExternalWorkflowExecutionFailedEventAttributes":{ "type":"structure", "required":[ "workflowId", "cause", "initiatedEventId", "decisionTaskCompletedEventId" ], "members":{ "workflowId":{"shape":"WorkflowId"}, "runId":{"shape":"RunIdOptional"}, "cause":{"shape":"SignalExternalWorkflowExecutionFailedCause"}, "initiatedEventId":{"shape":"EventId"}, "decisionTaskCompletedEventId":{"shape":"EventId"}, "control":{"shape":"Data"} } }, "SignalExternalWorkflowExecutionInitiatedEventAttributes":{ "type":"structure", "required":[ "workflowId", "signalName", "decisionTaskCompletedEventId" ], "members":{ "workflowId":{"shape":"WorkflowId"}, "runId":{"shape":"RunIdOptional"}, "signalName":{"shape":"SignalName"}, "input":{"shape":"Data"}, "decisionTaskCompletedEventId":{"shape":"EventId"}, "control":{"shape":"Data"} } }, "SignalName":{ "type":"string", "min":1, "max":256 }, "SignalWorkflowExecutionInput":{ "type":"structure", "required":[ "domain", "workflowId", "signalName" ], "members":{ "domain":{"shape":"DomainName"}, "workflowId":{"shape":"WorkflowId"}, "runId":{"shape":"RunIdOptional"}, "signalName":{"shape":"SignalName"}, "input":{"shape":"Data"} } }, "StartChildWorkflowExecutionDecisionAttributes":{ "type":"structure", "required":[ "workflowType", "workflowId" ], "members":{ "workflowType":{"shape":"WorkflowType"}, "workflowId":{"shape":"WorkflowId"}, "control":{"shape":"Data"}, "input":{"shape":"Data"}, "executionStartToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "taskList":{"shape":"TaskList"}, "taskPriority":{"shape":"TaskPriority"}, "taskStartToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "childPolicy":{"shape":"ChildPolicy"}, "tagList":{"shape":"TagList"}, "lambdaRole":{"shape":"Arn"} } }, "StartChildWorkflowExecutionFailedCause":{ "type":"string", "enum":[ "WORKFLOW_TYPE_DOES_NOT_EXIST", "WORKFLOW_TYPE_DEPRECATED", "OPEN_CHILDREN_LIMIT_EXCEEDED", "OPEN_WORKFLOWS_LIMIT_EXCEEDED", "CHILD_CREATION_RATE_EXCEEDED", "WORKFLOW_ALREADY_RUNNING", "DEFAULT_EXECUTION_START_TO_CLOSE_TIMEOUT_UNDEFINED", "DEFAULT_TASK_LIST_UNDEFINED", "DEFAULT_TASK_START_TO_CLOSE_TIMEOUT_UNDEFINED", "DEFAULT_CHILD_POLICY_UNDEFINED", "OPERATION_NOT_PERMITTED" ] }, "StartChildWorkflowExecutionFailedEventAttributes":{ "type":"structure", "required":[ "workflowType", "cause", "workflowId", "initiatedEventId", "decisionTaskCompletedEventId" ], "members":{ "workflowType":{"shape":"WorkflowType"}, "cause":{"shape":"StartChildWorkflowExecutionFailedCause"}, "workflowId":{"shape":"WorkflowId"}, "initiatedEventId":{"shape":"EventId"}, "decisionTaskCompletedEventId":{"shape":"EventId"}, "control":{"shape":"Data"} } }, "StartChildWorkflowExecutionInitiatedEventAttributes":{ "type":"structure", "required":[ "workflowId", "workflowType", "taskList", "decisionTaskCompletedEventId", "childPolicy" ], "members":{ "workflowId":{"shape":"WorkflowId"}, "workflowType":{"shape":"WorkflowType"}, "control":{"shape":"Data"}, "input":{"shape":"Data"}, "executionStartToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "taskList":{"shape":"TaskList"}, "taskPriority":{"shape":"TaskPriority"}, "decisionTaskCompletedEventId":{"shape":"EventId"}, "childPolicy":{"shape":"ChildPolicy"}, "taskStartToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "tagList":{"shape":"TagList"}, "lambdaRole":{"shape":"Arn"} } }, "StartLambdaFunctionFailedCause":{ "type":"string", "enum":["ASSUME_ROLE_FAILED"] }, "StartLambdaFunctionFailedEventAttributes":{ "type":"structure", "members":{ "scheduledEventId":{"shape":"EventId"}, "cause":{"shape":"StartLambdaFunctionFailedCause"}, "message":{"shape":"CauseMessage"} } }, "StartTimerDecisionAttributes":{ "type":"structure", "required":[ "timerId", "startToFireTimeout" ], "members":{ "timerId":{"shape":"TimerId"}, "control":{"shape":"Data"}, "startToFireTimeout":{"shape":"DurationInSeconds"} } }, "StartTimerFailedCause":{ "type":"string", "enum":[ "TIMER_ID_ALREADY_IN_USE", "OPEN_TIMERS_LIMIT_EXCEEDED", "TIMER_CREATION_RATE_EXCEEDED", "OPERATION_NOT_PERMITTED" ] }, "StartTimerFailedEventAttributes":{ "type":"structure", "required":[ "timerId", "cause", "decisionTaskCompletedEventId" ], "members":{ "timerId":{"shape":"TimerId"}, "cause":{"shape":"StartTimerFailedCause"}, "decisionTaskCompletedEventId":{"shape":"EventId"} } }, "StartWorkflowExecutionInput":{ "type":"structure", "required":[ "domain", "workflowId", "workflowType" ], "members":{ "domain":{"shape":"DomainName"}, "workflowId":{"shape":"WorkflowId"}, "workflowType":{"shape":"WorkflowType"}, "taskList":{"shape":"TaskList"}, "taskPriority":{"shape":"TaskPriority"}, "input":{"shape":"Data"}, "executionStartToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "tagList":{"shape":"TagList"}, "taskStartToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "childPolicy":{"shape":"ChildPolicy"}, "lambdaRole":{"shape":"Arn"} } }, "Tag":{ "type":"string", "min":1, "max":256 }, "TagFilter":{ "type":"structure", "required":["tag"], "members":{ "tag":{"shape":"Tag"} } }, "TagList":{ "type":"list", "member":{"shape":"Tag"}, "max":5 }, "TaskList":{ "type":"structure", "required":["name"], "members":{ "name":{"shape":"Name"} } }, "TaskPriority":{ "type":"string", "max":11 }, "TaskToken":{ "type":"string", "min":1, "max":1024 }, "TerminateReason":{ "type":"string", "max":256 }, "TerminateWorkflowExecutionInput":{ "type":"structure", "required":[ "domain", "workflowId" ], "members":{ "domain":{"shape":"DomainName"}, "workflowId":{"shape":"WorkflowId"}, "runId":{"shape":"RunIdOptional"}, "reason":{"shape":"TerminateReason"}, "details":{"shape":"Data"}, "childPolicy":{"shape":"ChildPolicy"} } }, "TimerCanceledEventAttributes":{ "type":"structure", "required":[ "timerId", "startedEventId", "decisionTaskCompletedEventId" ], "members":{ "timerId":{"shape":"TimerId"}, "startedEventId":{"shape":"EventId"}, "decisionTaskCompletedEventId":{"shape":"EventId"} } }, "TimerFiredEventAttributes":{ "type":"structure", "required":[ "timerId", "startedEventId" ], "members":{ "timerId":{"shape":"TimerId"}, "startedEventId":{"shape":"EventId"} } }, "TimerId":{ "type":"string", "min":1, "max":256 }, "TimerStartedEventAttributes":{ "type":"structure", "required":[ "timerId", "startToFireTimeout", "decisionTaskCompletedEventId" ], "members":{ "timerId":{"shape":"TimerId"}, "control":{"shape":"Data"}, "startToFireTimeout":{"shape":"DurationInSeconds"}, "decisionTaskCompletedEventId":{"shape":"EventId"} } }, "Timestamp":{"type":"timestamp"}, "Truncated":{"type":"boolean"}, "TypeAlreadyExistsFault":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "TypeDeprecatedFault":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "UnknownResourceFault":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "Version":{ "type":"string", "min":1, "max":64 }, "VersionOptional":{ "type":"string", "max":64 }, "WorkflowExecution":{ "type":"structure", "required":[ "workflowId", "runId" ], "members":{ "workflowId":{"shape":"WorkflowId"}, "runId":{"shape":"RunId"} } }, "WorkflowExecutionAlreadyStartedFault":{ "type":"structure", "members":{ "message":{"shape":"ErrorMessage"} }, "exception":true }, "WorkflowExecutionCancelRequestedCause":{ "type":"string", "enum":["CHILD_POLICY_APPLIED"] }, "WorkflowExecutionCancelRequestedEventAttributes":{ "type":"structure", "members":{ "externalWorkflowExecution":{"shape":"WorkflowExecution"}, "externalInitiatedEventId":{"shape":"EventId"}, "cause":{"shape":"WorkflowExecutionCancelRequestedCause"} } }, "WorkflowExecutionCanceledEventAttributes":{ "type":"structure", "required":["decisionTaskCompletedEventId"], "members":{ "details":{"shape":"Data"}, "decisionTaskCompletedEventId":{"shape":"EventId"} } }, "WorkflowExecutionCompletedEventAttributes":{ "type":"structure", "required":["decisionTaskCompletedEventId"], "members":{ "result":{"shape":"Data"}, "decisionTaskCompletedEventId":{"shape":"EventId"} } }, "WorkflowExecutionConfiguration":{ "type":"structure", "required":[ "taskStartToCloseTimeout", "executionStartToCloseTimeout", "taskList", "childPolicy" ], "members":{ "taskStartToCloseTimeout":{"shape":"DurationInSeconds"}, "executionStartToCloseTimeout":{"shape":"DurationInSeconds"}, "taskList":{"shape":"TaskList"}, "taskPriority":{"shape":"TaskPriority"}, "childPolicy":{"shape":"ChildPolicy"}, "lambdaRole":{"shape":"Arn"} } }, "WorkflowExecutionContinuedAsNewEventAttributes":{ "type":"structure", "required":[ "decisionTaskCompletedEventId", "newExecutionRunId", "taskList", "childPolicy", "workflowType" ], "members":{ "input":{"shape":"Data"}, "decisionTaskCompletedEventId":{"shape":"EventId"}, "newExecutionRunId":{"shape":"RunId"}, "executionStartToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "taskList":{"shape":"TaskList"}, "taskPriority":{"shape":"TaskPriority"}, "taskStartToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "childPolicy":{"shape":"ChildPolicy"}, "tagList":{"shape":"TagList"}, "workflowType":{"shape":"WorkflowType"}, "lambdaRole":{"shape":"Arn"} } }, "WorkflowExecutionCount":{ "type":"structure", "required":["count"], "members":{ "count":{"shape":"Count"}, "truncated":{"shape":"Truncated"} } }, "WorkflowExecutionDetail":{ "type":"structure", "required":[ "executionInfo", "executionConfiguration", "openCounts" ], "members":{ "executionInfo":{"shape":"WorkflowExecutionInfo"}, "executionConfiguration":{"shape":"WorkflowExecutionConfiguration"}, "openCounts":{"shape":"WorkflowExecutionOpenCounts"}, "latestActivityTaskTimestamp":{"shape":"Timestamp"}, "latestExecutionContext":{"shape":"Data"} } }, "WorkflowExecutionFailedEventAttributes":{ "type":"structure", "required":["decisionTaskCompletedEventId"], "members":{ "reason":{"shape":"FailureReason"}, "details":{"shape":"Data"}, "decisionTaskCompletedEventId":{"shape":"EventId"} } }, "WorkflowExecutionFilter":{ "type":"structure", "required":["workflowId"], "members":{ "workflowId":{"shape":"WorkflowId"} } }, "WorkflowExecutionInfo":{ "type":"structure", "required":[ "execution", "workflowType", "startTimestamp", "executionStatus" ], "members":{ "execution":{"shape":"WorkflowExecution"}, "workflowType":{"shape":"WorkflowType"}, "startTimestamp":{"shape":"Timestamp"}, "closeTimestamp":{"shape":"Timestamp"}, "executionStatus":{"shape":"ExecutionStatus"}, "closeStatus":{"shape":"CloseStatus"}, "parent":{"shape":"WorkflowExecution"}, "tagList":{"shape":"TagList"}, "cancelRequested":{"shape":"Canceled"} } }, "WorkflowExecutionInfoList":{ "type":"list", "member":{"shape":"WorkflowExecutionInfo"} }, "WorkflowExecutionInfos":{ "type":"structure", "required":["executionInfos"], "members":{ "executionInfos":{"shape":"WorkflowExecutionInfoList"}, "nextPageToken":{"shape":"PageToken"} } }, "WorkflowExecutionOpenCounts":{ "type":"structure", "required":[ "openActivityTasks", "openDecisionTasks", "openTimers", "openChildWorkflowExecutions" ], "members":{ "openActivityTasks":{"shape":"Count"}, "openDecisionTasks":{"shape":"OpenDecisionTasksCount"}, "openTimers":{"shape":"Count"}, "openChildWorkflowExecutions":{"shape":"Count"}, "openLambdaFunctions":{"shape":"Count"} } }, "WorkflowExecutionSignaledEventAttributes":{ "type":"structure", "required":["signalName"], "members":{ "signalName":{"shape":"SignalName"}, "input":{"shape":"Data"}, "externalWorkflowExecution":{"shape":"WorkflowExecution"}, "externalInitiatedEventId":{"shape":"EventId"} } }, "WorkflowExecutionStartedEventAttributes":{ "type":"structure", "required":[ "childPolicy", "taskList", "workflowType" ], "members":{ "input":{"shape":"Data"}, "executionStartToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "taskStartToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "childPolicy":{"shape":"ChildPolicy"}, "taskList":{"shape":"TaskList"}, "workflowType":{"shape":"WorkflowType"}, "tagList":{"shape":"TagList"}, "taskPriority":{"shape":"TaskPriority"}, "continuedExecutionRunId":{"shape":"RunIdOptional"}, "parentWorkflowExecution":{"shape":"WorkflowExecution"}, "parentInitiatedEventId":{"shape":"EventId"}, "lambdaRole":{"shape":"Arn"} } }, "WorkflowExecutionTerminatedCause":{ "type":"string", "enum":[ "CHILD_POLICY_APPLIED", "EVENT_LIMIT_EXCEEDED", "OPERATOR_INITIATED" ] }, "WorkflowExecutionTerminatedEventAttributes":{ "type":"structure", "required":["childPolicy"], "members":{ "reason":{"shape":"TerminateReason"}, "details":{"shape":"Data"}, "childPolicy":{"shape":"ChildPolicy"}, "cause":{"shape":"WorkflowExecutionTerminatedCause"} } }, "WorkflowExecutionTimedOutEventAttributes":{ "type":"structure", "required":[ "timeoutType", "childPolicy" ], "members":{ "timeoutType":{"shape":"WorkflowExecutionTimeoutType"}, "childPolicy":{"shape":"ChildPolicy"} } }, "WorkflowExecutionTimeoutType":{ "type":"string", "enum":["START_TO_CLOSE"] }, "WorkflowId":{ "type":"string", "min":1, "max":256 }, "WorkflowType":{ "type":"structure", "required":[ "name", "version" ], "members":{ "name":{"shape":"Name"}, "version":{"shape":"Version"} } }, "WorkflowTypeConfiguration":{ "type":"structure", "members":{ "defaultTaskStartToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "defaultExecutionStartToCloseTimeout":{"shape":"DurationInSecondsOptional"}, "defaultTaskList":{"shape":"TaskList"}, "defaultTaskPriority":{"shape":"TaskPriority"}, "defaultChildPolicy":{"shape":"ChildPolicy"}, "defaultLambdaRole":{"shape":"Arn"} } }, "WorkflowTypeDetail":{ "type":"structure", "required":[ "typeInfo", "configuration" ], "members":{ "typeInfo":{"shape":"WorkflowTypeInfo"}, "configuration":{"shape":"WorkflowTypeConfiguration"} } }, "WorkflowTypeFilter":{ "type":"structure", "required":["name"], "members":{ "name":{"shape":"Name"}, "version":{"shape":"VersionOptional"} } }, "WorkflowTypeInfo":{ "type":"structure", "required":[ "workflowType", "status", "creationDate" ], "members":{ "workflowType":{"shape":"WorkflowType"}, "status":{"shape":"RegistrationStatus"}, "description":{"shape":"Description"}, "creationDate":{"shape":"Timestamp"}, "deprecationDate":{"shape":"Timestamp"} } }, "WorkflowTypeInfoList":{ "type":"list", "member":{"shape":"WorkflowTypeInfo"} }, "WorkflowTypeInfos":{ "type":"structure", "required":["typeInfos"], "members":{ "typeInfos":{"shape":"WorkflowTypeInfoList"}, "nextPageToken":{"shape":"PageToken"} } } } } aws-sdk-go-1.4.22/models/apis/swf/2012-01-25/docs-2.json000066400000000000000000007760651300374646400216360ustar00rootroot00000000000000{ "version": "2.0", "operations": { "CountClosedWorkflowExecutions": "

        Returns the number of closed workflow executions within the given domain that meet the specified filtering criteria.

        This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates and changes.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the following parameters by using a Condition element with the appropriate keys.
          • tagFilter.tag: String constraint. The key is swf:tagFilter.tag.
          • typeFilter.name: String constraint. The key is swf:typeFilter.name.
          • typeFilter.version: String constraint. The key is swf:typeFilter.version.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "CountOpenWorkflowExecutions": "

        Returns the number of open workflow executions within the given domain that meet the specified filtering criteria.

        This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates and changes.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the following parameters by using a Condition element with the appropriate keys.
          • tagFilter.tag: String constraint. The key is swf:tagFilter.tag.
          • typeFilter.name: String constraint. The key is swf:typeFilter.name.
          • typeFilter.version: String constraint. The key is swf:typeFilter.version.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "CountPendingActivityTasks": "

        Returns the estimated number of activity tasks in the specified task list. The count returned is an approximation and is not guaranteed to be exact. If you specify a task list that no activity task was ever scheduled in then 0 will be returned.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the taskList.name parameter by using a Condition element with the swf:taskList.name key to allow the action to access only certain task lists.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "CountPendingDecisionTasks": "

        Returns the estimated number of decision tasks in the specified task list. The count returned is an approximation and is not guaranteed to be exact. If you specify a task list that no decision task was ever scheduled in then 0 will be returned.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the taskList.name parameter by using a Condition element with the swf:taskList.name key to allow the action to access only certain task lists.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "DeprecateActivityType": "

        Deprecates the specified activity type. After an activity type has been deprecated, you cannot create new tasks of that activity type. Tasks of this type that were scheduled before the type was deprecated will continue to run.

        This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates and changes.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the following parameters by using a Condition element with the appropriate keys.
          • activityType.name: String constraint. The key is swf:activityType.name.
          • activityType.version: String constraint. The key is swf:activityType.version.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "DeprecateDomain": "

        Deprecates the specified domain. After a domain has been deprecated it cannot be used to create new workflow executions or register new types. However, you can still use visibility actions on this domain. Deprecating a domain also deprecates all activity and workflow types registered in the domain. Executions that were started before the domain was deprecated will continue to run.

        This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates and changes.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "DeprecateWorkflowType": "

        Deprecates the specified workflow type. After a workflow type has been deprecated, you cannot create new executions of that type. Executions that were started before the type was deprecated will continue to run. A deprecated workflow type may still be used when calling visibility actions.

        This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates and changes.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the following parameters by using a Condition element with the appropriate keys.
          • workflowType.name: String constraint. The key is swf:workflowType.name.
          • workflowType.version: String constraint. The key is swf:workflowType.version.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "DescribeActivityType": "

        Returns information about the specified activity type. This includes configuration settings provided when the type was registered and other general information about the type.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the following parameters by using a Condition element with the appropriate keys.
          • activityType.name: String constraint. The key is swf:activityType.name.
          • activityType.version: String constraint. The key is swf:activityType.version.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "DescribeDomain": "

        Returns information about the specified domain, including description and status.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "DescribeWorkflowExecution": "

        Returns information about the specified workflow execution including its type and some statistics.

        This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates and changes.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "DescribeWorkflowType": "

        Returns information about the specified workflow type. This includes configuration settings specified when the type was registered and other information such as creation date, current status, and so on.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the following parameters by using a Condition element with the appropriate keys.
          • workflowType.name: String constraint. The key is swf:workflowType.name.
          • workflowType.version: String constraint. The key is swf:workflowType.version.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "GetWorkflowExecutionHistory": "

        Returns the history of the specified workflow execution. The results may be split into multiple pages. To retrieve subsequent pages, make the call again using the nextPageToken returned by the initial call.

        This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates and changes.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "ListActivityTypes": "

        Returns information about all activities registered in the specified domain that match the specified name and registration status. The result includes information like creation date, current status of the activity, etc. The results may be split into multiple pages. To retrieve subsequent pages, make the call again using the nextPageToken returned by the initial call.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "ListClosedWorkflowExecutions": "

        Returns a list of closed workflow executions in the specified domain that meet the filtering criteria. The results may be split into multiple pages. To retrieve subsequent pages, make the call again using the nextPageToken returned by the initial call.

        This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates and changes.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the following parameters by using a Condition element with the appropriate keys.
          • tagFilter.tag: String constraint. The key is swf:tagFilter.tag.
          • typeFilter.name: String constraint. The key is swf:typeFilter.name.
          • typeFilter.version: String constraint. The key is swf:typeFilter.version.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "ListDomains": "

        Returns the list of domains registered in the account. The results may be split into multiple pages. To retrieve subsequent pages, make the call again using the nextPageToken returned by the initial call.

        This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates and changes.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains. The element must be set to arn:aws:swf::AccountID:domain/*, where AccountID is the account ID, with no dashes.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "ListOpenWorkflowExecutions": "

        Returns a list of open workflow executions in the specified domain that meet the filtering criteria. The results may be split into multiple pages. To retrieve subsequent pages, make the call again using the nextPageToken returned by the initial call.

        This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates and changes.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the following parameters by using a Condition element with the appropriate keys.
          • tagFilter.tag: String constraint. The key is swf:tagFilter.tag.
          • typeFilter.name: String constraint. The key is swf:typeFilter.name.
          • typeFilter.version: String constraint. The key is swf:typeFilter.version.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "ListWorkflowTypes": "

        Returns information about workflow types in the specified domain. The results may be split into multiple pages that can be retrieved by making the call repeatedly.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "PollForActivityTask": "

        Used by workers to get an ActivityTask from the specified activity taskList. This initiates a long poll, where the service holds the HTTP connection open and responds as soon as a task becomes available. The maximum time the service holds on to the request before responding is 60 seconds. If no task is available within 60 seconds, the poll will return an empty result. An empty result, in this context, means that an ActivityTask is returned, but that the value of taskToken is an empty string. If a task is returned, the worker should use its type to identify and process it correctly.

        Workers should set their client side socket timeout to at least 70 seconds (10 seconds higher than the maximum time service may hold the poll request).

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the taskList.name parameter by using a Condition element with the swf:taskList.name key to allow the action to access only certain task lists.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "PollForDecisionTask": "

        Used by deciders to get a DecisionTask from the specified decision taskList. A decision task may be returned for any open workflow execution that is using the specified task list. The task includes a paginated view of the history of the workflow execution. The decider should use the workflow type and the history to determine how to properly handle the task.

        This action initiates a long poll, where the service holds the HTTP connection open and responds as soon a task becomes available. If no decision task is available in the specified task list before the timeout of 60 seconds expires, an empty result is returned. An empty result, in this context, means that a DecisionTask is returned, but that the value of taskToken is an empty string.

        Deciders should set their client-side socket timeout to at least 70 seconds (10 seconds higher than the timeout). Because the number of workflow history events for a single workflow execution might be very large, the result returned might be split up across a number of pages. To retrieve subsequent pages, make additional calls to PollForDecisionTask using the nextPageToken returned by the initial call. Note that you do not call GetWorkflowExecutionHistory with this nextPageToken. Instead, call PollForDecisionTask again.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the taskList.name parameter by using a Condition element with the swf:taskList.name key to allow the action to access only certain task lists.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "RecordActivityTaskHeartbeat": "

        Used by activity workers to report to the service that the ActivityTask represented by the specified taskToken is still making progress. The worker can also (optionally) specify details of the progress, for example percent complete, using the details parameter. This action can also be used by the worker as a mechanism to check if cancellation is being requested for the activity task. If a cancellation is being attempted for the specified task, then the boolean cancelRequested flag returned by the service is set to true.

        This action resets the taskHeartbeatTimeout clock. The taskHeartbeatTimeout is specified in RegisterActivityType.

        This action does not in itself create an event in the workflow execution history. However, if the task times out, the workflow execution history will contain a ActivityTaskTimedOut event that contains the information from the last heartbeat generated by the activity worker.

        The taskStartToCloseTimeout of an activity type is the maximum duration of an activity task, regardless of the number of RecordActivityTaskHeartbeat requests received. The taskStartToCloseTimeout is also specified in RegisterActivityType. This operation is only useful for long-lived activities to report liveliness of the task and to determine if a cancellation is being attempted. If the cancelRequested flag returns true, a cancellation is being attempted. If the worker can cancel the activity, it should respond with RespondActivityTaskCanceled. Otherwise, it should ignore the cancellation request.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "RegisterActivityType": "

        Registers a new activity type along with its configuration settings in the specified domain.

        A TypeAlreadyExists fault is returned if the type already exists in the domain. You cannot change any configuration settings of the type after its registration, and it must be registered as a new version.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the following parameters by using a Condition element with the appropriate keys.
          • defaultTaskList.name: String constraint. The key is swf:defaultTaskList.name.
          • name: String constraint. The key is swf:name.
          • version: String constraint. The key is swf:version.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "RegisterDomain": "

        Registers a new domain.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • You cannot use an IAM policy to control domain access for this action. The name of the domain being registered is available as the resource of this action.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "RegisterWorkflowType": "

        Registers a new workflow type and its configuration settings in the specified domain.

        The retention period for the workflow history is set by the RegisterDomain action.

        If the type already exists, then a TypeAlreadyExists fault is returned. You cannot change the configuration settings of a workflow type once it is registered and it must be registered as a new version.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the following parameters by using a Condition element with the appropriate keys.
          • defaultTaskList.name: String constraint. The key is swf:defaultTaskList.name.
          • name: String constraint. The key is swf:name.
          • version: String constraint. The key is swf:version.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "RequestCancelWorkflowExecution": "

        Records a WorkflowExecutionCancelRequested event in the currently running workflow execution identified by the given domain, workflowId, and runId. This logically requests the cancellation of the workflow execution as a whole. It is up to the decider to take appropriate actions when it receives an execution history with this event.

        If the runId is not specified, the WorkflowExecutionCancelRequested event is recorded in the history of the current open workflow execution with the specified workflowId in the domain. Because this action allows the workflow to properly clean up and gracefully close, it should be used instead of TerminateWorkflowExecution when possible.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "RespondActivityTaskCanceled": "

        Used by workers to tell the service that the ActivityTask identified by the taskToken was successfully canceled. Additional details can be optionally provided using the details argument.

        These details (if provided) appear in the ActivityTaskCanceled event added to the workflow history.

        Only use this operation if the canceled flag of a RecordActivityTaskHeartbeat request returns true and if the activity can be safely undone or abandoned.

        A task is considered open from the time that it is scheduled until it is closed. Therefore a task is reported as open while a worker is processing it. A task is closed after it has been specified in a call to RespondActivityTaskCompleted, RespondActivityTaskCanceled, RespondActivityTaskFailed, or the task has timed out.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "RespondActivityTaskCompleted": "

        Used by workers to tell the service that the ActivityTask identified by the taskToken completed successfully with a result (if provided). The result appears in the ActivityTaskCompleted event in the workflow history.

        If the requested task does not complete successfully, use RespondActivityTaskFailed instead. If the worker finds that the task is canceled through the canceled flag returned by RecordActivityTaskHeartbeat, it should cancel the task, clean up and then call RespondActivityTaskCanceled.

        A task is considered open from the time that it is scheduled until it is closed. Therefore a task is reported as open while a worker is processing it. A task is closed after it has been specified in a call to RespondActivityTaskCompleted, RespondActivityTaskCanceled, RespondActivityTaskFailed, or the task has timed out.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "RespondActivityTaskFailed": "

        Used by workers to tell the service that the ActivityTask identified by the taskToken has failed with reason (if specified). The reason and details appear in the ActivityTaskFailed event added to the workflow history.

        A task is considered open from the time that it is scheduled until it is closed. Therefore a task is reported as open while a worker is processing it. A task is closed after it has been specified in a call to RespondActivityTaskCompleted, RespondActivityTaskCanceled, RespondActivityTaskFailed, or the task has timed out.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "RespondDecisionTaskCompleted": "

        Used by deciders to tell the service that the DecisionTask identified by the taskToken has successfully completed. The decisions argument specifies the list of decisions made while processing the task.

        A DecisionTaskCompleted event is added to the workflow history. The executionContext specified is attached to the event in the workflow execution history.

        Access Control

        If an IAM policy grants permission to use RespondDecisionTaskCompleted, it can express permissions for the list of decisions in the decisions parameter. Each of the decisions has one or more parameters, much like a regular API call. To allow for policies to be as readable as possible, you can express permissions on decisions as if they were actual API calls, including applying conditions to some parameters. For more information, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "SignalWorkflowExecution": "

        Records a WorkflowExecutionSignaled event in the workflow execution history and creates a decision task for the workflow execution identified by the given domain, workflowId and runId. The event is recorded with the specified user defined signalName and input (if provided).

        If a runId is not specified, then the WorkflowExecutionSignaled event is recorded in the history of the current open workflow with the matching workflowId in the domain. If the specified workflow execution is not open, this method fails with UnknownResource.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "StartWorkflowExecution": "

        Starts an execution of the workflow type in the specified domain using the provided workflowId and input data.

        This action returns the newly started workflow execution.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the following parameters by using a Condition element with the appropriate keys.
          • tagList.member.0: The key is swf:tagList.member.0.
          • tagList.member.1: The key is swf:tagList.member.1.
          • tagList.member.2: The key is swf:tagList.member.2.
          • tagList.member.3: The key is swf:tagList.member.3.
          • tagList.member.4: The key is swf:tagList.member.4.
          • taskList: String constraint. The key is swf:taskList.name.
          • workflowType.name: String constraint. The key is swf:workflowType.name.
          • workflowType.version: String constraint. The key is swf:workflowType.version.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "TerminateWorkflowExecution": "

        Records a WorkflowExecutionTerminated event and forces closure of the workflow execution identified by the given domain, runId, and workflowId. The child policy, registered with the workflow type or specified when starting this execution, is applied to any open child workflow executions of this workflow execution.

        If the identified workflow execution was in progress, it is terminated immediately. If a runId is not specified, then the WorkflowExecutionTerminated event is recorded in the history of the current open workflow with the matching workflowId in the domain. You should consider using RequestCancelWorkflowExecution action instead because it allows the workflow to gracefully close while TerminateWorkflowExecution does not.

        Access Control

        You can use IAM policies to control this action's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        " }, "service": "Amazon Simple Workflow Service

        The Amazon Simple Workflow Service (Amazon SWF) makes it easy to build applications that use Amazon's cloud to coordinate work across distributed components. In Amazon SWF, a task represents a logical unit of work that is performed by a component of your workflow. Coordinating tasks in a workflow involves managing intertask dependencies, scheduling, and concurrency in accordance with the logical flow of the application.

        Amazon SWF gives you full control over implementing tasks and coordinating them without worrying about underlying complexities such as tracking their progress and maintaining their state.

        This documentation serves as reference only. For a broader overview of the Amazon SWF programming model, see the Amazon SWF Developer Guide.

        ", "shapes": { "ActivityId": { "base": null, "refs": { "ActivityTask$activityId": "

        The unique ID of the task.

        ", "ActivityTaskCancelRequestedEventAttributes$activityId": "

        The unique ID of the task.

        ", "ActivityTaskScheduledEventAttributes$activityId": "

        The unique ID of the activity task.

        ", "RequestCancelActivityTaskDecisionAttributes$activityId": "

        The activityId of the activity task to be canceled.

        ", "RequestCancelActivityTaskFailedEventAttributes$activityId": "

        The activityId provided in the RequestCancelActivityTask decision that failed.

        ", "ScheduleActivityTaskDecisionAttributes$activityId": "

        Required. The activityId of the activity task.

        The specified string must not start or end with whitespace. It must not contain a : (colon), / (slash), | (vertical bar), or any control characters (\\u0000-\\u001f | \\u007f - \\u009f). Also, it must not contain the literal string quotarnquot.

        ", "ScheduleActivityTaskFailedEventAttributes$activityId": "

        The activityId provided in the ScheduleActivityTask decision that failed.

        " } }, "ActivityTask": { "base": "

        Unit of work sent to an activity worker.

        ", "refs": { } }, "ActivityTaskCancelRequestedEventAttributes": { "base": "

        Provides details of the ActivityTaskCancelRequested event.

        ", "refs": { "HistoryEvent$activityTaskCancelRequestedEventAttributes": "

        If the event is of type ActivityTaskcancelRequested then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "ActivityTaskCanceledEventAttributes": { "base": "

        Provides details of the ActivityTaskCanceled event.

        ", "refs": { "HistoryEvent$activityTaskCanceledEventAttributes": "

        If the event is of type ActivityTaskCanceled then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "ActivityTaskCompletedEventAttributes": { "base": "

        Provides details of the ActivityTaskCompleted event.

        ", "refs": { "HistoryEvent$activityTaskCompletedEventAttributes": "

        If the event is of type ActivityTaskCompleted then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "ActivityTaskFailedEventAttributes": { "base": "

        Provides details of the ActivityTaskFailed event.

        ", "refs": { "HistoryEvent$activityTaskFailedEventAttributes": "

        If the event is of type ActivityTaskFailed then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "ActivityTaskScheduledEventAttributes": { "base": "

        Provides details of the ActivityTaskScheduled event.

        ", "refs": { "HistoryEvent$activityTaskScheduledEventAttributes": "

        If the event is of type ActivityTaskScheduled then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "ActivityTaskStartedEventAttributes": { "base": "

        Provides details of the ActivityTaskStarted event.

        ", "refs": { "HistoryEvent$activityTaskStartedEventAttributes": "

        If the event is of type ActivityTaskStarted then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "ActivityTaskStatus": { "base": "

        Status information about an activity task.

        ", "refs": { } }, "ActivityTaskTimedOutEventAttributes": { "base": "

        Provides details of the ActivityTaskTimedOut event.

        ", "refs": { "HistoryEvent$activityTaskTimedOutEventAttributes": "

        If the event is of type ActivityTaskTimedOut then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "ActivityTaskTimeoutType": { "base": null, "refs": { "ActivityTaskTimedOutEventAttributes$timeoutType": "

        The type of the timeout that caused this event.

        " } }, "ActivityType": { "base": "

        Represents an activity type.

        ", "refs": { "ActivityTask$activityType": "

        The type of this activity task.

        ", "ActivityTaskScheduledEventAttributes$activityType": "

        The type of the activity task.

        ", "ActivityTypeInfo$activityType": "

        The ActivityType type structure representing the activity type.

        ", "DeprecateActivityTypeInput$activityType": "

        The activity type to deprecate.

        ", "DescribeActivityTypeInput$activityType": "

        The activity type to get information about. Activity types are identified by the name and version that were supplied when the activity was registered.

        ", "ScheduleActivityTaskDecisionAttributes$activityType": "

        Required. The type of the activity task to schedule.

        ", "ScheduleActivityTaskFailedEventAttributes$activityType": "

        The activity type provided in the ScheduleActivityTask decision that failed.

        " } }, "ActivityTypeConfiguration": { "base": "

        Configuration settings registered with the activity type.

        ", "refs": { "ActivityTypeDetail$configuration": "

        The configuration settings registered with the activity type.

        " } }, "ActivityTypeDetail": { "base": "

        Detailed information about an activity type.

        ", "refs": { } }, "ActivityTypeInfo": { "base": "

        Detailed information about an activity type.

        ", "refs": { "ActivityTypeDetail$typeInfo": "

        General information about the activity type.

        The status of activity type (returned in the ActivityTypeInfo structure) can be one of the following.

        • REGISTERED: The type is registered and available. Workers supporting this type should be running.
        • DEPRECATED: The type was deprecated using DeprecateActivityType, but is still in use. You should keep workers supporting this type running. You cannot create new tasks of this type.
        ", "ActivityTypeInfoList$member": null } }, "ActivityTypeInfoList": { "base": null, "refs": { "ActivityTypeInfos$typeInfos": "

        List of activity type information.

        " } }, "ActivityTypeInfos": { "base": "

        Contains a paginated list of activity type information structures.

        ", "refs": { } }, "Arn": { "base": null, "refs": { "ContinueAsNewWorkflowExecutionDecisionAttributes$lambdaRole": "

        The ARN of an IAM role that authorizes Amazon SWF to invoke AWS Lambda functions.

        In order for this workflow execution to invoke AWS Lambda functions, an appropriate IAM role must be specified either as a default for the workflow type or through this field.", "RegisterWorkflowTypeInput$defaultLambdaRole": "

        The ARN of the default IAM role to use when a workflow execution of this type invokes AWS Lambda functions.

        This default can be overridden when starting a workflow execution using the StartWorkflowExecution action or the StartChildWorkflowExecution and ContinueAsNewWorkflowExecution decision.

        ", "StartChildWorkflowExecutionDecisionAttributes$lambdaRole": "

        The ARN of an IAM role that authorizes Amazon SWF to invoke AWS Lambda functions.

        In order for this workflow execution to invoke AWS Lambda functions, an appropriate IAM role must be specified either as a default for the workflow type or through this field.", "StartChildWorkflowExecutionInitiatedEventAttributes$lambdaRole": "

        The IAM role attached to this workflow execution to use when invoking AWS Lambda functions.

        ", "StartWorkflowExecutionInput$lambdaRole": "

        The ARN of an IAM role that authorizes Amazon SWF to invoke AWS Lambda functions.

        In order for this workflow execution to invoke AWS Lambda functions, an appropriate IAM role must be specified either as a default for the workflow type or through this field.", "WorkflowExecutionConfiguration$lambdaRole": "

        The IAM role used by this workflow execution when invoking AWS Lambda functions.

        ", "WorkflowExecutionContinuedAsNewEventAttributes$lambdaRole": "

        The IAM role attached to this workflow execution to use when invoking AWS Lambda functions.

        ", "WorkflowExecutionStartedEventAttributes$lambdaRole": "

        The IAM role attached to this workflow execution to use when invoking AWS Lambda functions.

        ", "WorkflowTypeConfiguration$defaultLambdaRole": "

        The default IAM role to use when a workflow execution invokes a AWS Lambda function.

        " } }, "CancelTimerDecisionAttributes": { "base": "

        Provides details of the CancelTimer decision.

        Access Control

        You can use IAM policies to control this decision's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "refs": { "Decision$cancelTimerDecisionAttributes": "

        Provides details of the CancelTimer decision. It is not set for other decision types.

        " } }, "CancelTimerFailedCause": { "base": null, "refs": { "CancelTimerFailedEventAttributes$cause": "

        The cause of the failure. This information is generated by the system and can be useful for diagnostic purposes.

        If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it lacked sufficient permissions. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows." } }, "CancelTimerFailedEventAttributes": { "base": "

        Provides details of the CancelTimerFailed event.

        ", "refs": { "HistoryEvent$cancelTimerFailedEventAttributes": "

        If the event is of type CancelTimerFailed then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "CancelWorkflowExecutionDecisionAttributes": { "base": "

        Provides details of the CancelWorkflowExecution decision.

        Access Control

        You can use IAM policies to control this decision's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "refs": { "Decision$cancelWorkflowExecutionDecisionAttributes": "

        Provides details of the CancelWorkflowExecution decision. It is not set for other decision types.

        " } }, "CancelWorkflowExecutionFailedCause": { "base": null, "refs": { "CancelWorkflowExecutionFailedEventAttributes$cause": "

        The cause of the failure. This information is generated by the system and can be useful for diagnostic purposes.

        If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it lacked sufficient permissions. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows." } }, "CancelWorkflowExecutionFailedEventAttributes": { "base": "

        Provides details of the CancelWorkflowExecutionFailed event.

        ", "refs": { "HistoryEvent$cancelWorkflowExecutionFailedEventAttributes": "

        If the event is of type CancelWorkflowExecutionFailed then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "Canceled": { "base": null, "refs": { "ActivityTaskStatus$cancelRequested": "

        Set to true if cancellation of the task is requested.

        ", "WorkflowExecutionInfo$cancelRequested": "

        Set to true if a cancellation is requested for this workflow execution.

        " } }, "CauseMessage": { "base": null, "refs": { "StartLambdaFunctionFailedEventAttributes$message": "

        The error message (if any).

        " } }, "ChildPolicy": { "base": null, "refs": { "ContinueAsNewWorkflowExecutionDecisionAttributes$childPolicy": "

        If set, specifies the policy to use for the child workflow executions of the new execution if it is terminated by calling the TerminateWorkflowExecution action explicitly or due to an expired timeout. This policy overrides the default child policy specified when registering the workflow type using RegisterWorkflowType.

        The supported child policies are:

        • TERMINATE: the child executions will be terminated.
        • REQUEST_CANCEL: a request to cancel will be attempted for each child execution by recording a WorkflowExecutionCancelRequested event in its history. It is up to the decider to take appropriate actions when it receives an execution history with this event.
        • ABANDON: no action will be taken. The child executions will continue to run.
        A child policy for this workflow execution must be specified either as a default for the workflow type or through this parameter. If neither this parameter is set nor a default child policy was specified at registration time then a fault will be returned.", "RegisterWorkflowTypeInput$defaultChildPolicy": "

        If set, specifies the default policy to use for the child workflow executions when a workflow execution of this type is terminated, by calling the TerminateWorkflowExecution action explicitly or due to an expired timeout. This default can be overridden when starting a workflow execution using the StartWorkflowExecution action or the StartChildWorkflowExecution decision.

        The supported child policies are:

        • TERMINATE: the child executions will be terminated.
        • REQUEST_CANCEL: a request to cancel will be attempted for each child execution by recording a WorkflowExecutionCancelRequested event in its history. It is up to the decider to take appropriate actions when it receives an execution history with this event.
        • ABANDON: no action will be taken. The child executions will continue to run.
        ", "StartChildWorkflowExecutionDecisionAttributes$childPolicy": "

        Optional. If set, specifies the policy to use for the child workflow executions if the workflow execution being started is terminated by calling the TerminateWorkflowExecution action explicitly or due to an expired timeout. This policy overrides the default child policy specified when registering the workflow type using RegisterWorkflowType.

        The supported child policies are:

        • TERMINATE: the child executions will be terminated.
        • REQUEST_CANCEL: a request to cancel will be attempted for each child execution by recording a WorkflowExecutionCancelRequested event in its history. It is up to the decider to take appropriate actions when it receives an execution history with this event.
        • ABANDON: no action will be taken. The child executions will continue to run.
        A child policy for this workflow execution must be specified either as a default for the workflow type or through this parameter. If neither this parameter is set nor a default child policy was specified at registration time then a fault will be returned.", "StartChildWorkflowExecutionInitiatedEventAttributes$childPolicy": "

        The policy to use for the child workflow executions if this execution gets terminated by explicitly calling the TerminateWorkflowExecution action or due to an expired timeout.

        The supported child policies are:

        • TERMINATE: the child executions will be terminated.
        • REQUEST_CANCEL: a request to cancel will be attempted for each child execution by recording a WorkflowExecutionCancelRequested event in its history. It is up to the decider to take appropriate actions when it receives an execution history with this event.
        • ABANDON: no action will be taken. The child executions will continue to run.
        ", "StartWorkflowExecutionInput$childPolicy": "

        If set, specifies the policy to use for the child workflow executions of this workflow execution if it is terminated, by calling the TerminateWorkflowExecution action explicitly or due to an expired timeout. This policy overrides the default child policy specified when registering the workflow type using RegisterWorkflowType.

        The supported child policies are:

        • TERMINATE: the child executions will be terminated.
        • REQUEST_CANCEL: a request to cancel will be attempted for each child execution by recording a WorkflowExecutionCancelRequested event in its history. It is up to the decider to take appropriate actions when it receives an execution history with this event.
        • ABANDON: no action will be taken. The child executions will continue to run.
        A child policy for this workflow execution must be specified either as a default for the workflow type or through this parameter. If neither this parameter is set nor a default child policy was specified at registration time then a fault will be returned.", "TerminateWorkflowExecutionInput$childPolicy": "

        If set, specifies the policy to use for the child workflow executions of the workflow execution being terminated. This policy overrides the child policy specified for the workflow execution at registration time or when starting the execution.

        The supported child policies are:

        • TERMINATE: the child executions will be terminated.
        • REQUEST_CANCEL: a request to cancel will be attempted for each child execution by recording a WorkflowExecutionCancelRequested event in its history. It is up to the decider to take appropriate actions when it receives an execution history with this event.
        • ABANDON: no action will be taken. The child executions will continue to run.
        A child policy for this workflow execution must be specified either as a default for the workflow type or through this parameter. If neither this parameter is set nor a default child policy was specified at registration time then a fault will be returned.", "WorkflowExecutionConfiguration$childPolicy": "

        The policy to use for the child workflow executions if this workflow execution is terminated, by calling the TerminateWorkflowExecution action explicitly or due to an expired timeout.

        The supported child policies are:

        • TERMINATE: the child executions will be terminated.
        • REQUEST_CANCEL: a request to cancel will be attempted for each child execution by recording a WorkflowExecutionCancelRequested event in its history. It is up to the decider to take appropriate actions when it receives an execution history with this event.
        • ABANDON: no action will be taken. The child executions will continue to run.
        ", "WorkflowExecutionContinuedAsNewEventAttributes$childPolicy": "

        The policy to use for the child workflow executions of the new execution if it is terminated by calling the TerminateWorkflowExecution action explicitly or due to an expired timeout.

        The supported child policies are:

        • TERMINATE: the child executions will be terminated.
        • REQUEST_CANCEL: a request to cancel will be attempted for each child execution by recording a WorkflowExecutionCancelRequested event in its history. It is up to the decider to take appropriate actions when it receives an execution history with this event.
        • ABANDON: no action will be taken. The child executions will continue to run.
        ", "WorkflowExecutionStartedEventAttributes$childPolicy": "

        The policy to use for the child workflow executions if this workflow execution is terminated, by calling the TerminateWorkflowExecution action explicitly or due to an expired timeout.

        The supported child policies are:

        • TERMINATE: the child executions will be terminated.
        • REQUEST_CANCEL: a request to cancel will be attempted for each child execution by recording a WorkflowExecutionCancelRequested event in its history. It is up to the decider to take appropriate actions when it receives an execution history with this event.
        • ABANDON: no action will be taken. The child executions will continue to run.
        ", "WorkflowExecutionTerminatedEventAttributes$childPolicy": "

        The policy used for the child workflow executions of this workflow execution.

        The supported child policies are:

        • TERMINATE: the child executions will be terminated.
        • REQUEST_CANCEL: a request to cancel will be attempted for each child execution by recording a WorkflowExecutionCancelRequested event in its history. It is up to the decider to take appropriate actions when it receives an execution history with this event.
        • ABANDON: no action will be taken. The child executions will continue to run.
        ", "WorkflowExecutionTimedOutEventAttributes$childPolicy": "

        The policy used for the child workflow executions of this workflow execution.

        The supported child policies are:

        • TERMINATE: the child executions will be terminated.
        • REQUEST_CANCEL: a request to cancel will be attempted for each child execution by recording a WorkflowExecutionCancelRequested event in its history. It is up to the decider to take appropriate actions when it receives an execution history with this event.
        • ABANDON: no action will be taken. The child executions will continue to run.
        ", "WorkflowTypeConfiguration$defaultChildPolicy": "

        Optional. The default policy to use for the child workflow executions when a workflow execution of this type is terminated, by calling the TerminateWorkflowExecution action explicitly or due to an expired timeout. This default can be overridden when starting a workflow execution using the StartWorkflowExecution action or the StartChildWorkflowExecution decision.

        The supported child policies are:

        • TERMINATE: the child executions will be terminated.
        • REQUEST_CANCEL: a request to cancel will be attempted for each child execution by recording a WorkflowExecutionCancelRequested event in its history. It is up to the decider to take appropriate actions when it receives an execution history with this event.
        • ABANDON: no action will be taken. The child executions will continue to run.
        " } }, "ChildWorkflowExecutionCanceledEventAttributes": { "base": "

        Provide details of the ChildWorkflowExecutionCanceled event.

        ", "refs": { "HistoryEvent$childWorkflowExecutionCanceledEventAttributes": "

        If the event is of type ChildWorkflowExecutionCanceled then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "ChildWorkflowExecutionCompletedEventAttributes": { "base": "

        Provides details of the ChildWorkflowExecutionCompleted event.

        ", "refs": { "HistoryEvent$childWorkflowExecutionCompletedEventAttributes": "

        If the event is of type ChildWorkflowExecutionCompleted then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "ChildWorkflowExecutionFailedEventAttributes": { "base": "

        Provides details of the ChildWorkflowExecutionFailed event.

        ", "refs": { "HistoryEvent$childWorkflowExecutionFailedEventAttributes": "

        If the event is of type ChildWorkflowExecutionFailed then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "ChildWorkflowExecutionStartedEventAttributes": { "base": "

        Provides details of the ChildWorkflowExecutionStarted event.

        ", "refs": { "HistoryEvent$childWorkflowExecutionStartedEventAttributes": "

        If the event is of type ChildWorkflowExecutionStarted then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "ChildWorkflowExecutionTerminatedEventAttributes": { "base": "

        Provides details of the ChildWorkflowExecutionTerminated event.

        ", "refs": { "HistoryEvent$childWorkflowExecutionTerminatedEventAttributes": "

        If the event is of type ChildWorkflowExecutionTerminated then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "ChildWorkflowExecutionTimedOutEventAttributes": { "base": "

        Provides details of the ChildWorkflowExecutionTimedOut event.

        ", "refs": { "HistoryEvent$childWorkflowExecutionTimedOutEventAttributes": "

        If the event is of type ChildWorkflowExecutionTimedOut then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "CloseStatus": { "base": null, "refs": { "CloseStatusFilter$status": "

        Required. The close status that must match the close status of an execution for it to meet the criteria of this filter.

        ", "WorkflowExecutionInfo$closeStatus": "

        If the execution status is closed then this specifies how the execution was closed:

        • COMPLETED: the execution was successfully completed.
        • CANCELED: the execution was canceled.Cancellation allows the implementation to gracefully clean up before the execution is closed.
        • TERMINATED: the execution was force terminated.
        • FAILED: the execution failed to complete.
        • TIMED_OUT: the execution did not complete in the alloted time and was automatically timed out.
        • CONTINUED_AS_NEW: the execution is logically continued. This means the current execution was completed and a new execution was started to carry on the workflow.
        " } }, "CloseStatusFilter": { "base": "

        Used to filter the closed workflow executions in visibility APIs by their close status.

        ", "refs": { "CountClosedWorkflowExecutionsInput$closeStatusFilter": "

        If specified, only workflow executions that match this close status are counted. This filter has an affect only if executionStatus is specified as CLOSED.

        closeStatusFilter, executionFilter, typeFilter and tagFilter are mutually exclusive. You can specify at most one of these in a request.", "ListClosedWorkflowExecutionsInput$closeStatusFilter": "

        If specified, only workflow executions that match this close status are listed. For example, if TERMINATED is specified, then only TERMINATED workflow executions are listed.

        closeStatusFilter, executionFilter, typeFilter and tagFilter are mutually exclusive. You can specify at most one of these in a request." } }, "CompleteWorkflowExecutionDecisionAttributes": { "base": "

        Provides details of the CompleteWorkflowExecution decision.

        Access Control

        You can use IAM policies to control this decision's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "refs": { "Decision$completeWorkflowExecutionDecisionAttributes": "

        Provides details of the CompleteWorkflowExecution decision. It is not set for other decision types.

        " } }, "CompleteWorkflowExecutionFailedCause": { "base": null, "refs": { "CompleteWorkflowExecutionFailedEventAttributes$cause": "

        The cause of the failure. This information is generated by the system and can be useful for diagnostic purposes.

        If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it lacked sufficient permissions. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows." } }, "CompleteWorkflowExecutionFailedEventAttributes": { "base": "

        Provides details of the CompleteWorkflowExecutionFailed event.

        ", "refs": { "HistoryEvent$completeWorkflowExecutionFailedEventAttributes": "

        If the event is of type CompleteWorkflowExecutionFailed then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "ContinueAsNewWorkflowExecutionDecisionAttributes": { "base": "

        Provides details of the ContinueAsNewWorkflowExecution decision.

        Access Control

        You can use IAM policies to control this decision's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the following parameters by using a Condition element with the appropriate keys.
          • tag: Optional.. A tag used to identify the workflow execution
          • taskList: String constraint. The key is swf:taskList.name.
          • workflowType.version: String constraint. The key is swf:workflowType.version.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "refs": { "Decision$continueAsNewWorkflowExecutionDecisionAttributes": "

        Provides details of the ContinueAsNewWorkflowExecution decision. It is not set for other decision types.

        " } }, "ContinueAsNewWorkflowExecutionFailedCause": { "base": null, "refs": { "ContinueAsNewWorkflowExecutionFailedEventAttributes$cause": "

        The cause of the failure. This information is generated by the system and can be useful for diagnostic purposes.

        If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it lacked sufficient permissions. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows." } }, "ContinueAsNewWorkflowExecutionFailedEventAttributes": { "base": "

        Provides details of the ContinueAsNewWorkflowExecutionFailed event.

        ", "refs": { "HistoryEvent$continueAsNewWorkflowExecutionFailedEventAttributes": "

        If the event is of type ContinueAsNewWorkflowExecutionFailed then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "Count": { "base": null, "refs": { "PendingTaskCount$count": "

        The number of tasks in the task list.

        ", "WorkflowExecutionCount$count": "

        The number of workflow executions.

        ", "WorkflowExecutionOpenCounts$openActivityTasks": "

        The count of activity tasks whose status is OPEN.

        ", "WorkflowExecutionOpenCounts$openTimers": "

        The count of timers started by this workflow execution that have not fired yet.

        ", "WorkflowExecutionOpenCounts$openChildWorkflowExecutions": "

        The count of child workflow executions whose status is OPEN.

        ", "WorkflowExecutionOpenCounts$openLambdaFunctions": "

        The count of AWS Lambda functions that are currently executing.

        " } }, "CountClosedWorkflowExecutionsInput": { "base": null, "refs": { } }, "CountOpenWorkflowExecutionsInput": { "base": null, "refs": { } }, "CountPendingActivityTasksInput": { "base": null, "refs": { } }, "CountPendingDecisionTasksInput": { "base": null, "refs": { } }, "Data": { "base": null, "refs": { "ActivityTask$input": "

        The inputs provided when the activity task was scheduled. The form of the input is user defined and should be meaningful to the activity implementation.

        ", "ActivityTaskCanceledEventAttributes$details": "

        Details of the cancellation (if any).

        ", "ActivityTaskCompletedEventAttributes$result": "

        The results of the activity task (if any).

        ", "ActivityTaskFailedEventAttributes$details": "

        The details of the failure (if any).

        ", "ActivityTaskScheduledEventAttributes$input": "

        The input provided to the activity task.

        ", "ActivityTaskScheduledEventAttributes$control": "

        Optional. Data attached to the event that can be used by the decider in subsequent workflow tasks. This data is not sent to the activity.

        ", "CancelWorkflowExecutionDecisionAttributes$details": "

        Optional. details of the cancellation.

        ", "ChildWorkflowExecutionCanceledEventAttributes$details": "

        Details of the cancellation (if provided).

        ", "ChildWorkflowExecutionCompletedEventAttributes$result": "

        The result of the child workflow execution (if any).

        ", "ChildWorkflowExecutionFailedEventAttributes$details": "

        The details of the failure (if provided).

        ", "CompleteWorkflowExecutionDecisionAttributes$result": "

        The result of the workflow execution. The form of the result is implementation defined.

        ", "ContinueAsNewWorkflowExecutionDecisionAttributes$input": "

        The input provided to the new workflow execution.

        ", "DecisionTaskCompletedEventAttributes$executionContext": "

        User defined context for the workflow execution.

        ", "FailWorkflowExecutionDecisionAttributes$details": "

        Optional. Details of the failure.

        ", "LambdaFunctionCompletedEventAttributes$result": "

        The result of the function execution (if any).

        ", "LambdaFunctionFailedEventAttributes$details": "

        The details of the failure (if any).

        ", "MarkerRecordedEventAttributes$details": "

        Details of the marker (if any).

        ", "RecordMarkerDecisionAttributes$details": "

        Optional. details of the marker.

        ", "RequestCancelExternalWorkflowExecutionDecisionAttributes$control": "

        Optional. Data attached to the event that can be used by the decider in subsequent workflow tasks.

        ", "RequestCancelExternalWorkflowExecutionFailedEventAttributes$control": null, "RequestCancelExternalWorkflowExecutionInitiatedEventAttributes$control": "

        Optional. Data attached to the event that can be used by the decider in subsequent workflow tasks.

        ", "RespondActivityTaskCanceledInput$details": "

        Optional. Information about the cancellation.

        ", "RespondActivityTaskCompletedInput$result": "

        The result of the activity task. It is a free form string that is implementation specific.

        ", "RespondActivityTaskFailedInput$details": "

        Optional. Detailed information about the failure.

        ", "RespondDecisionTaskCompletedInput$executionContext": "

        User defined context to add to workflow execution.

        ", "ScheduleActivityTaskDecisionAttributes$control": "

        Optional. Data attached to the event that can be used by the decider in subsequent workflow tasks. This data is not sent to the activity.

        ", "ScheduleActivityTaskDecisionAttributes$input": "

        The input provided to the activity task.

        ", "SignalExternalWorkflowExecutionDecisionAttributes$input": "

        Optional. Input data to be provided with the signal. The target workflow execution will use the signal name and input data to process the signal.

        ", "SignalExternalWorkflowExecutionDecisionAttributes$control": "

        Optional. Data attached to the event that can be used by the decider in subsequent decision tasks.

        ", "SignalExternalWorkflowExecutionFailedEventAttributes$control": null, "SignalExternalWorkflowExecutionInitiatedEventAttributes$input": "

        Input provided to the signal (if any).

        ", "SignalExternalWorkflowExecutionInitiatedEventAttributes$control": "

        Optional. data attached to the event that can be used by the decider in subsequent decision tasks.

        ", "SignalWorkflowExecutionInput$input": "

        Data to attach to the WorkflowExecutionSignaled event in the target workflow execution's history.

        ", "StartChildWorkflowExecutionDecisionAttributes$control": "

        Optional. Data attached to the event that can be used by the decider in subsequent workflow tasks. This data is not sent to the child workflow execution.

        ", "StartChildWorkflowExecutionDecisionAttributes$input": "

        The input to be provided to the workflow execution.

        ", "StartChildWorkflowExecutionFailedEventAttributes$control": null, "StartChildWorkflowExecutionInitiatedEventAttributes$control": "

        Optional. Data attached to the event that can be used by the decider in subsequent decision tasks. This data is not sent to the activity.

        ", "StartChildWorkflowExecutionInitiatedEventAttributes$input": "

        The inputs provided to the child workflow execution (if any).

        ", "StartTimerDecisionAttributes$control": "

        Optional. Data attached to the event that can be used by the decider in subsequent workflow tasks.

        ", "StartWorkflowExecutionInput$input": "

        The input for the workflow execution. This is a free form string which should be meaningful to the workflow you are starting. This input is made available to the new workflow execution in the WorkflowExecutionStarted history event.

        ", "TerminateWorkflowExecutionInput$details": "

        Optional. Details for terminating the workflow execution.

        ", "TimerStartedEventAttributes$control": "

        Optional. Data attached to the event that can be used by the decider in subsequent workflow tasks.

        ", "WorkflowExecutionCanceledEventAttributes$details": "

        Details for the cancellation (if any).

        ", "WorkflowExecutionCompletedEventAttributes$result": "

        The result produced by the workflow execution upon successful completion.

        ", "WorkflowExecutionContinuedAsNewEventAttributes$input": "

        The input provided to the new workflow execution.

        ", "WorkflowExecutionDetail$latestExecutionContext": "

        The latest executionContext provided by the decider for this workflow execution. A decider can provide an executionContext (a free-form string) when closing a decision task using RespondDecisionTaskCompleted.

        ", "WorkflowExecutionFailedEventAttributes$details": "

        The details of the failure (if any).

        ", "WorkflowExecutionSignaledEventAttributes$input": "

        Inputs provided with the signal (if any). The decider can use the signal name and inputs to determine how to process the signal.

        ", "WorkflowExecutionStartedEventAttributes$input": "

        The input provided to the workflow execution (if any).

        ", "WorkflowExecutionTerminatedEventAttributes$details": "

        The details provided for the termination (if any).

        " } }, "Decision": { "base": "

        Specifies a decision made by the decider. A decision can be one of these types:

        • CancelTimer: cancels a previously started timer and records a TimerCanceled event in the history.
        • CancelWorkflowExecution: closes the workflow execution and records a WorkflowExecutionCanceled event in the history.
        • CompleteWorkflowExecution: closes the workflow execution and records a WorkflowExecutionCompleted event in the history .
        • ContinueAsNewWorkflowExecution: closes the workflow execution and starts a new workflow execution of the same type using the same workflow ID and a unique run ID. A WorkflowExecutionContinuedAsNew event is recorded in the history.
        • FailWorkflowExecution: closes the workflow execution and records a WorkflowExecutionFailed event in the history.
        • RecordMarker: records a MarkerRecorded event in the history. Markers can be used for adding custom information in the history for instance to let deciders know that they do not need to look at the history beyond the marker event.
        • RequestCancelActivityTask: attempts to cancel a previously scheduled activity task. If the activity task was scheduled but has not been assigned to a worker, then it will be canceled. If the activity task was already assigned to a worker, then the worker will be informed that cancellation has been requested in the response to RecordActivityTaskHeartbeat.
        • RequestCancelExternalWorkflowExecution: requests that a request be made to cancel the specified external workflow execution and records a RequestCancelExternalWorkflowExecutionInitiated event in the history.
        • ScheduleActivityTask: schedules an activity task.
        • ScheduleLambdaFunction: schedules a AWS Lambda function.
        • SignalExternalWorkflowExecution: requests a signal to be delivered to the specified external workflow execution and records a SignalExternalWorkflowExecutionInitiated event in the history.
        • StartChildWorkflowExecution: requests that a child workflow execution be started and records a StartChildWorkflowExecutionInitiated event in the history. The child workflow execution is a separate workflow execution with its own history.
        • StartTimer: starts a timer for this workflow execution and records a TimerStarted event in the history. This timer will fire after the specified delay and record a TimerFired event.

        Access Control

        If you grant permission to use RespondDecisionTaskCompleted, you can use IAM policies to express permissions for the list of decisions returned by this action as if they were members of the API. Treating decisions as a pseudo API maintains a uniform conceptual model and helps keep policies readable. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        Decision Failure

        Decisions can fail for several reasons

        • The ordering of decisions should follow a logical flow. Some decisions might not make sense in the current context of the workflow execution and will therefore fail.
        • A limit on your account was reached.
        • The decision lacks sufficient permissions.

        One of the following events might be added to the history to indicate an error. The event attribute's cause parameter indicates the cause. If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it lacked sufficient permissions. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        • ScheduleActivityTaskFailed: a ScheduleActivityTask decision failed. This could happen if the activity type specified in the decision is not registered, is in a deprecated state, or the decision is not properly configured.
        • ScheduleLambdaFunctionFailed: a ScheduleLambdaFunctionFailed decision failed. This could happen if the AWS Lambda function specified in the decision does not exist, or the AWS Lambda service's limits are exceeded.
        • RequestCancelActivityTaskFailed: a RequestCancelActivityTask decision failed. This could happen if there is no open activity task with the specified activityId.
        • StartTimerFailed: a StartTimer decision failed. This could happen if there is another open timer with the same timerId.
        • CancelTimerFailed: a CancelTimer decision failed. This could happen if there is no open timer with the specified timerId.
        • StartChildWorkflowExecutionFailed: a StartChildWorkflowExecution decision failed. This could happen if the workflow type specified is not registered, is deprecated, or the decision is not properly configured.
        • SignalExternalWorkflowExecutionFailed: a SignalExternalWorkflowExecution decision failed. This could happen if the workflowID specified in the decision was incorrect.
        • RequestCancelExternalWorkflowExecutionFailed: a RequestCancelExternalWorkflowExecution decision failed. This could happen if the workflowID specified in the decision was incorrect.
        • CancelWorkflowExecutionFailed: a CancelWorkflowExecution decision failed. This could happen if there is an unhandled decision task pending in the workflow execution.
        • CompleteWorkflowExecutionFailed: a CompleteWorkflowExecution decision failed. This could happen if there is an unhandled decision task pending in the workflow execution.
        • ContinueAsNewWorkflowExecutionFailed: a ContinueAsNewWorkflowExecution decision failed. This could happen if there is an unhandled decision task pending in the workflow execution or the ContinueAsNewWorkflowExecution decision was not configured correctly.
        • FailWorkflowExecutionFailed: a FailWorkflowExecution decision failed. This could happen if there is an unhandled decision task pending in the workflow execution.

        The preceding error events might occur due to an error in the decider logic, which might put the workflow execution in an unstable state The cause field in the event structure for the error event indicates the cause of the error.

        A workflow execution may be closed by the decider by returning one of the following decisions when completing a decision task: CompleteWorkflowExecution, FailWorkflowExecution, CancelWorkflowExecution and ContinueAsNewWorkflowExecution. An UnhandledDecision fault will be returned if a workflow closing decision is specified and a signal or activity event had been added to the history while the decision task was being performed by the decider. Unlike the above situations which are logic issues, this fault is always possible because of race conditions in a distributed system. The right action here is to call RespondDecisionTaskCompleted without any decisions. This would result in another decision task with these new events included in the history. The decider should handle the new events and may decide to close the workflow execution.

        How to code a decision

        You code a decision by first setting the decision type field to one of the above decision values, and then set the corresponding attributes field shown below:

        ", "refs": { "DecisionList$member": null } }, "DecisionList": { "base": null, "refs": { "RespondDecisionTaskCompletedInput$decisions": "

        The list of decisions (possibly empty) made by the decider while processing this decision task. See the docs for the decision structure for details.

        " } }, "DecisionTask": { "base": "

        A structure that represents a decision task. Decision tasks are sent to deciders in order for them to make decisions.

        ", "refs": { } }, "DecisionTaskCompletedEventAttributes": { "base": "

        Provides details of the DecisionTaskCompleted event.

        ", "refs": { "HistoryEvent$decisionTaskCompletedEventAttributes": "

        If the event is of type DecisionTaskCompleted then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "DecisionTaskScheduledEventAttributes": { "base": "

        Provides details about the DecisionTaskScheduled event.

        ", "refs": { "HistoryEvent$decisionTaskScheduledEventAttributes": "

        If the event is of type DecisionTaskScheduled then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "DecisionTaskStartedEventAttributes": { "base": "

        Provides details of the DecisionTaskStarted event.

        ", "refs": { "HistoryEvent$decisionTaskStartedEventAttributes": "

        If the event is of type DecisionTaskStarted then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "DecisionTaskTimedOutEventAttributes": { "base": "

        Provides details of the DecisionTaskTimedOut event.

        ", "refs": { "HistoryEvent$decisionTaskTimedOutEventAttributes": "

        If the event is of type DecisionTaskTimedOut then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "DecisionTaskTimeoutType": { "base": null, "refs": { "DecisionTaskTimedOutEventAttributes$timeoutType": "

        The type of timeout that expired before the decision task could be completed.

        " } }, "DecisionType": { "base": null, "refs": { "Decision$decisionType": "

        Specifies the type of the decision.

        " } }, "DefaultUndefinedFault": { "base": null, "refs": { } }, "DeprecateActivityTypeInput": { "base": null, "refs": { } }, "DeprecateDomainInput": { "base": null, "refs": { } }, "DeprecateWorkflowTypeInput": { "base": null, "refs": { } }, "DescribeActivityTypeInput": { "base": null, "refs": { } }, "DescribeDomainInput": { "base": null, "refs": { } }, "DescribeWorkflowExecutionInput": { "base": null, "refs": { } }, "DescribeWorkflowTypeInput": { "base": null, "refs": { } }, "Description": { "base": null, "refs": { "ActivityTypeInfo$description": "

        The description of the activity type provided in RegisterActivityType.

        ", "DomainInfo$description": "

        The description of the domain provided through RegisterDomain.

        ", "RegisterActivityTypeInput$description": "

        A textual description of the activity type.

        ", "RegisterDomainInput$description": "

        A text description of the domain.

        ", "RegisterWorkflowTypeInput$description": "

        Textual description of the workflow type.

        ", "WorkflowTypeInfo$description": "

        The description of the type registered through RegisterWorkflowType.

        " } }, "DomainAlreadyExistsFault": { "base": "

        Returned if the specified domain already exists. You will get this fault even if the existing domain is in deprecated status.

        ", "refs": { } }, "DomainConfiguration": { "base": "

        Contains the configuration settings of a domain.

        ", "refs": { "DomainDetail$configuration": null } }, "DomainDeprecatedFault": { "base": "

        Returned when the specified domain has been deprecated.

        ", "refs": { } }, "DomainDetail": { "base": "

        Contains details of a domain.

        ", "refs": { } }, "DomainInfo": { "base": "

        Contains general information about a domain.

        ", "refs": { "DomainDetail$domainInfo": null, "DomainInfoList$member": null } }, "DomainInfoList": { "base": null, "refs": { "DomainInfos$domainInfos": "

        A list of DomainInfo structures.

        " } }, "DomainInfos": { "base": "

        Contains a paginated collection of DomainInfo structures.

        ", "refs": { } }, "DomainName": { "base": null, "refs": { "CountClosedWorkflowExecutionsInput$domain": "

        The name of the domain containing the workflow executions to count.

        ", "CountOpenWorkflowExecutionsInput$domain": "

        The name of the domain containing the workflow executions to count.

        ", "CountPendingActivityTasksInput$domain": "

        The name of the domain that contains the task list.

        ", "CountPendingDecisionTasksInput$domain": "

        The name of the domain that contains the task list.

        ", "DeprecateActivityTypeInput$domain": "

        The name of the domain in which the activity type is registered.

        ", "DeprecateDomainInput$name": "

        The name of the domain to deprecate.

        ", "DeprecateWorkflowTypeInput$domain": "

        The name of the domain in which the workflow type is registered.

        ", "DescribeActivityTypeInput$domain": "

        The name of the domain in which the activity type is registered.

        ", "DescribeDomainInput$name": "

        The name of the domain to describe.

        ", "DescribeWorkflowExecutionInput$domain": "

        The name of the domain containing the workflow execution.

        ", "DescribeWorkflowTypeInput$domain": "

        The name of the domain in which this workflow type is registered.

        ", "DomainInfo$name": "

        The name of the domain. This name is unique within the account.

        ", "GetWorkflowExecutionHistoryInput$domain": "

        The name of the domain containing the workflow execution.

        ", "ListActivityTypesInput$domain": "

        The name of the domain in which the activity types have been registered.

        ", "ListClosedWorkflowExecutionsInput$domain": "

        The name of the domain that contains the workflow executions to list.

        ", "ListOpenWorkflowExecutionsInput$domain": "

        The name of the domain that contains the workflow executions to list.

        ", "ListWorkflowTypesInput$domain": "

        The name of the domain in which the workflow types have been registered.

        ", "PollForActivityTaskInput$domain": "

        The name of the domain that contains the task lists being polled.

        ", "PollForDecisionTaskInput$domain": "

        The name of the domain containing the task lists to poll.

        ", "RegisterActivityTypeInput$domain": "

        The name of the domain in which this activity is to be registered.

        ", "RegisterDomainInput$name": "

        Name of the domain to register. The name must be unique in the region that the domain is registered in.

        The specified string must not start or end with whitespace. It must not contain a : (colon), / (slash), | (vertical bar), or any control characters (\\u0000-\\u001f | \\u007f - \\u009f). Also, it must not contain the literal string quotarnquot.

        ", "RegisterWorkflowTypeInput$domain": "

        The name of the domain in which to register the workflow type.

        ", "RequestCancelWorkflowExecutionInput$domain": "

        The name of the domain containing the workflow execution to cancel.

        ", "SignalWorkflowExecutionInput$domain": "

        The name of the domain containing the workflow execution to signal.

        ", "StartWorkflowExecutionInput$domain": "

        The name of the domain in which the workflow execution is created.

        ", "TerminateWorkflowExecutionInput$domain": "

        The domain of the workflow execution to terminate.

        " } }, "DurationInDays": { "base": null, "refs": { "DomainConfiguration$workflowExecutionRetentionPeriodInDays": "

        The retention period for workflow executions in this domain.

        ", "RegisterDomainInput$workflowExecutionRetentionPeriodInDays": "

        The duration (in days) that records and histories of workflow executions on the domain should be kept by the service. After the retention period, the workflow execution is not available in the results of visibility calls.

        If you pass the value NONE or 0 (zero), then the workflow execution history will not be retained. As soon as the workflow execution completes, the execution record and its history are deleted.

        The maximum workflow execution retention period is 90 days. For more information about Amazon SWF service limits, see: Amazon SWF Service Limits in the Amazon SWF Developer Guide.

        " } }, "DurationInSeconds": { "base": null, "refs": { "StartTimerDecisionAttributes$startToFireTimeout": "

        Required. The duration to wait before firing the timer.

        The duration is specified in seconds; an integer greater than or equal to 0.

        ", "TimerStartedEventAttributes$startToFireTimeout": "

        The duration of time after which the timer will fire.

        The duration is specified in seconds; an integer greater than or equal to 0.

        ", "WorkflowExecutionConfiguration$taskStartToCloseTimeout": "

        The maximum duration allowed for decision tasks for this workflow execution.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "WorkflowExecutionConfiguration$executionStartToCloseTimeout": "

        The total duration for this workflow execution.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        " } }, "DurationInSecondsOptional": { "base": null, "refs": { "ActivityTaskScheduledEventAttributes$scheduleToStartTimeout": "

        The maximum amount of time the activity task can wait to be assigned to a worker.

        ", "ActivityTaskScheduledEventAttributes$scheduleToCloseTimeout": "

        The maximum amount of time for this activity task.

        ", "ActivityTaskScheduledEventAttributes$startToCloseTimeout": "

        The maximum amount of time a worker may take to process the activity task.

        ", "ActivityTaskScheduledEventAttributes$heartbeatTimeout": "

        The maximum time before which the worker processing this task must report progress by calling RecordActivityTaskHeartbeat. If the timeout is exceeded, the activity task is automatically timed out. If the worker subsequently attempts to record a heartbeat or return a result, it will be ignored.

        ", "ActivityTypeConfiguration$defaultTaskStartToCloseTimeout": "

        Optional. The default maximum duration for tasks of an activity type specified when registering the activity type. You can override this default when scheduling a task through the ScheduleActivityTask decision.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "ActivityTypeConfiguration$defaultTaskHeartbeatTimeout": "

        Optional. The default maximum time, in seconds, before which a worker processing a task must report progress by calling RecordActivityTaskHeartbeat.

        You can specify this value only when registering an activity type. The registered default value can be overridden when you schedule a task through the ScheduleActivityTask decision. If the activity worker subsequently attempts to record a heartbeat or returns a result, the activity worker receives an UnknownResource fault. In this case, Amazon SWF no longer considers the activity task to be valid; the activity worker should clean up the activity task.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "ActivityTypeConfiguration$defaultTaskScheduleToStartTimeout": "

        Optional. The default maximum duration, specified when registering the activity type, that a task of an activity type can wait before being assigned to a worker. You can override this default when scheduling a task through the ScheduleActivityTask decision.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "ActivityTypeConfiguration$defaultTaskScheduleToCloseTimeout": "

        Optional. The default maximum duration, specified when registering the activity type, for tasks of this activity type. You can override this default when scheduling a task through the ScheduleActivityTask decision.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "ContinueAsNewWorkflowExecutionDecisionAttributes$executionStartToCloseTimeout": "

        If set, specifies the total duration for this workflow execution. This overrides the defaultExecutionStartToCloseTimeout specified when registering the workflow type.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        An execution start-to-close timeout for this workflow execution must be specified either as a default for the workflow type or through this field. If neither this field is set nor a default execution start-to-close timeout was specified at registration time then a fault will be returned.", "ContinueAsNewWorkflowExecutionDecisionAttributes$taskStartToCloseTimeout": "

        Specifies the maximum duration of decision tasks for the new workflow execution. This parameter overrides the defaultTaskStartToCloseTimout specified when registering the workflow type using RegisterWorkflowType.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        A task start-to-close timeout for the new workflow execution must be specified either as a default for the workflow type or through this parameter. If neither this parameter is set nor a default task start-to-close timeout was specified at registration time then a fault will be returned.", "DecisionTaskScheduledEventAttributes$startToCloseTimeout": "

        The maximum duration for this decision task. The task is considered timed out if it does not completed within this duration.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "LambdaFunctionScheduledEventAttributes$startToCloseTimeout": "

        The maximum time, in seconds, that the AWS Lambda function can take to execute from start to close before it is marked as failed.

        ", "RegisterActivityTypeInput$defaultTaskStartToCloseTimeout": "

        If set, specifies the default maximum duration that a worker can take to process tasks of this activity type. This default can be overridden when scheduling an activity task using the ScheduleActivityTask decision.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "RegisterActivityTypeInput$defaultTaskHeartbeatTimeout": "

        If set, specifies the default maximum time before which a worker processing a task of this type must report progress by calling RecordActivityTaskHeartbeat. If the timeout is exceeded, the activity task is automatically timed out. This default can be overridden when scheduling an activity task using the ScheduleActivityTask decision. If the activity worker subsequently attempts to record a heartbeat or returns a result, the activity worker receives an UnknownResource fault. In this case, Amazon SWF no longer considers the activity task to be valid; the activity worker should clean up the activity task.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "RegisterActivityTypeInput$defaultTaskScheduleToStartTimeout": "

        If set, specifies the default maximum duration that a task of this activity type can wait before being assigned to a worker. This default can be overridden when scheduling an activity task using the ScheduleActivityTask decision.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "RegisterActivityTypeInput$defaultTaskScheduleToCloseTimeout": "

        If set, specifies the default maximum duration for a task of this activity type. This default can be overridden when scheduling an activity task using the ScheduleActivityTask decision.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "RegisterWorkflowTypeInput$defaultTaskStartToCloseTimeout": "

        If set, specifies the default maximum duration of decision tasks for this workflow type. This default can be overridden when starting a workflow execution using the StartWorkflowExecution action or the StartChildWorkflowExecution decision.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "RegisterWorkflowTypeInput$defaultExecutionStartToCloseTimeout": "

        If set, specifies the default maximum duration for executions of this workflow type. You can override this default when starting an execution through the StartWorkflowExecution action or StartChildWorkflowExecution decision.

        The duration is specified in seconds; an integer greater than or equal to 0. Unlike some of the other timeout parameters in Amazon SWF, you cannot specify a value of \"NONE\" for defaultExecutionStartToCloseTimeout; there is a one-year max limit on the time that a workflow execution can run. Exceeding this limit will always cause the workflow execution to time out.

        ", "ScheduleActivityTaskDecisionAttributes$scheduleToCloseTimeout": "

        The maximum duration for this activity task.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        A schedule-to-close timeout for this activity task must be specified either as a default for the activity type or through this field. If neither this field is set nor a default schedule-to-close timeout was specified at registration time then a fault will be returned.", "ScheduleActivityTaskDecisionAttributes$scheduleToStartTimeout": "

        Optional. If set, specifies the maximum duration the activity task can wait to be assigned to a worker. This overrides the default schedule-to-start timeout specified when registering the activity type using RegisterActivityType.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        A schedule-to-start timeout for this activity task must be specified either as a default for the activity type or through this field. If neither this field is set nor a default schedule-to-start timeout was specified at registration time then a fault will be returned.", "ScheduleActivityTaskDecisionAttributes$startToCloseTimeout": "

        If set, specifies the maximum duration a worker may take to process this activity task. This overrides the default start-to-close timeout specified when registering the activity type using RegisterActivityType.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        A start-to-close timeout for this activity task must be specified either as a default for the activity type or through this field. If neither this field is set nor a default start-to-close timeout was specified at registration time then a fault will be returned.", "ScheduleActivityTaskDecisionAttributes$heartbeatTimeout": "

        If set, specifies the maximum time before which a worker processing a task of this type must report progress by calling RecordActivityTaskHeartbeat. If the timeout is exceeded, the activity task is automatically timed out. If the worker subsequently attempts to record a heartbeat or returns a result, it will be ignored. This overrides the default heartbeat timeout specified when registering the activity type using RegisterActivityType.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "ScheduleLambdaFunctionDecisionAttributes$startToCloseTimeout": "

        If set, specifies the maximum duration the function may take to execute.

        ", "StartChildWorkflowExecutionDecisionAttributes$executionStartToCloseTimeout": "

        The total duration for this workflow execution. This overrides the defaultExecutionStartToCloseTimeout specified when registering the workflow type.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        An execution start-to-close timeout for this workflow execution must be specified either as a default for the workflow type or through this parameter. If neither this parameter is set nor a default execution start-to-close timeout was specified at registration time then a fault will be returned.", "StartChildWorkflowExecutionDecisionAttributes$taskStartToCloseTimeout": "

        Specifies the maximum duration of decision tasks for this workflow execution. This parameter overrides the defaultTaskStartToCloseTimout specified when registering the workflow type using RegisterWorkflowType.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        A task start-to-close timeout for this workflow execution must be specified either as a default for the workflow type or through this parameter. If neither this parameter is set nor a default task start-to-close timeout was specified at registration time then a fault will be returned.", "StartChildWorkflowExecutionInitiatedEventAttributes$executionStartToCloseTimeout": "

        The maximum duration for the child workflow execution. If the workflow execution is not closed within this duration, it will be timed out and force terminated.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "StartChildWorkflowExecutionInitiatedEventAttributes$taskStartToCloseTimeout": "

        The maximum duration allowed for the decision tasks for this workflow execution.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "StartWorkflowExecutionInput$executionStartToCloseTimeout": "

        The total duration for this workflow execution. This overrides the defaultExecutionStartToCloseTimeout specified when registering the workflow type.

        The duration is specified in seconds; an integer greater than or equal to 0. Exceeding this limit will cause the workflow execution to time out. Unlike some of the other timeout parameters in Amazon SWF, you cannot specify a value of \"NONE\" for this timeout; there is a one-year max limit on the time that a workflow execution can run.

        An execution start-to-close timeout must be specified either through this parameter or as a default when the workflow type is registered. If neither this parameter nor a default execution start-to-close timeout is specified, a fault is returned.", "StartWorkflowExecutionInput$taskStartToCloseTimeout": "

        Specifies the maximum duration of decision tasks for this workflow execution. This parameter overrides the defaultTaskStartToCloseTimout specified when registering the workflow type using RegisterWorkflowType.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        A task start-to-close timeout for this workflow execution must be specified either as a default for the workflow type or through this parameter. If neither this parameter is set nor a default task start-to-close timeout was specified at registration time then a fault will be returned.", "WorkflowExecutionContinuedAsNewEventAttributes$executionStartToCloseTimeout": "

        The total duration allowed for the new workflow execution.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "WorkflowExecutionContinuedAsNewEventAttributes$taskStartToCloseTimeout": "

        The maximum duration of decision tasks for the new workflow execution.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "WorkflowExecutionStartedEventAttributes$executionStartToCloseTimeout": "

        The maximum duration for this workflow execution.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "WorkflowExecutionStartedEventAttributes$taskStartToCloseTimeout": "

        The maximum duration of decision tasks for this workflow type.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "WorkflowTypeConfiguration$defaultTaskStartToCloseTimeout": "

        Optional. The default maximum duration, specified when registering the workflow type, that a decision task for executions of this workflow type might take before returning completion or failure. If the task does not close in the specified time then the task is automatically timed out and rescheduled. If the decider eventually reports a completion or failure, it is ignored. This default can be overridden when starting a workflow execution using the StartWorkflowExecution action or the StartChildWorkflowExecution decision.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        ", "WorkflowTypeConfiguration$defaultExecutionStartToCloseTimeout": "

        Optional. The default maximum duration, specified when registering the workflow type, for executions of this workflow type. This default can be overridden when starting a workflow execution using the StartWorkflowExecution action or the StartChildWorkflowExecution decision.

        The duration is specified in seconds; an integer greater than or equal to 0. The value \"NONE\" can be used to specify unlimited duration.

        " } }, "ErrorMessage": { "base": null, "refs": { "DefaultUndefinedFault$message": null, "DomainAlreadyExistsFault$message": "

        A description that may help with diagnosing the cause of the fault.

        ", "DomainDeprecatedFault$message": "

        A description that may help with diagnosing the cause of the fault.

        ", "LimitExceededFault$message": "

        A description that may help with diagnosing the cause of the fault.

        ", "OperationNotPermittedFault$message": "

        A description that may help with diagnosing the cause of the fault.

        ", "TypeAlreadyExistsFault$message": "

        A description that may help with diagnosing the cause of the fault.

        ", "TypeDeprecatedFault$message": "

        A description that may help with diagnosing the cause of the fault.

        ", "UnknownResourceFault$message": "

        A description that may help with diagnosing the cause of the fault.

        ", "WorkflowExecutionAlreadyStartedFault$message": "

        A description that may help with diagnosing the cause of the fault.

        " } }, "EventId": { "base": null, "refs": { "ActivityTask$startedEventId": "

        The ID of the ActivityTaskStarted event recorded in the history.

        ", "ActivityTaskCancelRequestedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the RequestCancelActivityTask decision for this cancellation request. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ActivityTaskCanceledEventAttributes$scheduledEventId": "

        The ID of the ActivityTaskScheduled event that was recorded when this activity task was scheduled. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ActivityTaskCanceledEventAttributes$startedEventId": "

        The ID of the ActivityTaskStarted event recorded when this activity task was started. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ActivityTaskCanceledEventAttributes$latestCancelRequestedEventId": "

        If set, contains the ID of the last ActivityTaskCancelRequested event recorded for this activity task. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ActivityTaskCompletedEventAttributes$scheduledEventId": "

        The ID of the ActivityTaskScheduled event that was recorded when this activity task was scheduled. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ActivityTaskCompletedEventAttributes$startedEventId": "

        The ID of the ActivityTaskStarted event recorded when this activity task was started. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ActivityTaskFailedEventAttributes$scheduledEventId": "

        The ID of the ActivityTaskScheduled event that was recorded when this activity task was scheduled. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ActivityTaskFailedEventAttributes$startedEventId": "

        The ID of the ActivityTaskStarted event recorded when this activity task was started. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ActivityTaskScheduledEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision that resulted in the scheduling of this activity task. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ActivityTaskStartedEventAttributes$scheduledEventId": "

        The ID of the ActivityTaskScheduled event that was recorded when this activity task was scheduled. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ActivityTaskTimedOutEventAttributes$scheduledEventId": "

        The ID of the ActivityTaskScheduled event that was recorded when this activity task was scheduled. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ActivityTaskTimedOutEventAttributes$startedEventId": "

        The ID of the ActivityTaskStarted event recorded when this activity task was started. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "CancelTimerFailedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the CancelTimer decision to cancel this timer. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "CancelWorkflowExecutionFailedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the CancelWorkflowExecution decision for this cancellation request. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ChildWorkflowExecutionCanceledEventAttributes$initiatedEventId": "

        The ID of the StartChildWorkflowExecutionInitiated event corresponding to the StartChildWorkflowExecution decision to start this child workflow execution. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ChildWorkflowExecutionCanceledEventAttributes$startedEventId": "

        The ID of the ChildWorkflowExecutionStarted event recorded when this child workflow execution was started. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ChildWorkflowExecutionCompletedEventAttributes$initiatedEventId": "

        The ID of the StartChildWorkflowExecutionInitiated event corresponding to the StartChildWorkflowExecution decision to start this child workflow execution. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ChildWorkflowExecutionCompletedEventAttributes$startedEventId": "

        The ID of the ChildWorkflowExecutionStarted event recorded when this child workflow execution was started. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ChildWorkflowExecutionFailedEventAttributes$initiatedEventId": "

        The ID of the StartChildWorkflowExecutionInitiated event corresponding to the StartChildWorkflowExecution decision to start this child workflow execution. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ChildWorkflowExecutionFailedEventAttributes$startedEventId": "

        The ID of the ChildWorkflowExecutionStarted event recorded when this child workflow execution was started. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ChildWorkflowExecutionStartedEventAttributes$initiatedEventId": "

        The ID of the StartChildWorkflowExecutionInitiated event corresponding to the StartChildWorkflowExecution decision to start this child workflow execution. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ChildWorkflowExecutionTerminatedEventAttributes$initiatedEventId": "

        The ID of the StartChildWorkflowExecutionInitiated event corresponding to the StartChildWorkflowExecution decision to start this child workflow execution. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ChildWorkflowExecutionTerminatedEventAttributes$startedEventId": "

        The ID of the ChildWorkflowExecutionStarted event recorded when this child workflow execution was started. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ChildWorkflowExecutionTimedOutEventAttributes$initiatedEventId": "

        The ID of the StartChildWorkflowExecutionInitiated event corresponding to the StartChildWorkflowExecution decision to start this child workflow execution. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ChildWorkflowExecutionTimedOutEventAttributes$startedEventId": "

        The ID of the ChildWorkflowExecutionStarted event recorded when this child workflow execution was started. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "CompleteWorkflowExecutionFailedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the CompleteWorkflowExecution decision to complete this execution. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ContinueAsNewWorkflowExecutionFailedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the ContinueAsNewWorkflowExecution decision that started this execution. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "DecisionTask$startedEventId": "

        The ID of the DecisionTaskStarted event recorded in the history.

        ", "DecisionTask$previousStartedEventId": "

        The ID of the DecisionTaskStarted event of the previous decision task of this workflow execution that was processed by the decider. This can be used to determine the events in the history new since the last decision task received by the decider.

        ", "DecisionTaskCompletedEventAttributes$scheduledEventId": "

        The ID of the DecisionTaskScheduled event that was recorded when this decision task was scheduled. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "DecisionTaskCompletedEventAttributes$startedEventId": "

        The ID of the DecisionTaskStarted event recorded when this decision task was started. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "DecisionTaskStartedEventAttributes$scheduledEventId": "

        The ID of the DecisionTaskScheduled event that was recorded when this decision task was scheduled. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "DecisionTaskTimedOutEventAttributes$scheduledEventId": "

        The ID of the DecisionTaskScheduled event that was recorded when this decision task was scheduled. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "DecisionTaskTimedOutEventAttributes$startedEventId": "

        The ID of the DecisionTaskStarted event recorded when this decision task was started. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ExternalWorkflowExecutionCancelRequestedEventAttributes$initiatedEventId": "

        The ID of the RequestCancelExternalWorkflowExecutionInitiated event corresponding to the RequestCancelExternalWorkflowExecution decision to cancel this external workflow execution. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ExternalWorkflowExecutionSignaledEventAttributes$initiatedEventId": "

        The ID of the SignalExternalWorkflowExecutionInitiated event corresponding to the SignalExternalWorkflowExecution decision to request this signal. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "FailWorkflowExecutionFailedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the FailWorkflowExecution decision to fail this execution. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "HistoryEvent$eventId": "

        The system generated ID of the event. This ID uniquely identifies the event with in the workflow execution history.

        ", "LambdaFunctionCompletedEventAttributes$scheduledEventId": "

        The ID of the LambdaFunctionScheduled event that was recorded when this AWS Lambda function was scheduled. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "LambdaFunctionCompletedEventAttributes$startedEventId": "

        The ID of the LambdaFunctionStarted event recorded in the history.

        ", "LambdaFunctionFailedEventAttributes$scheduledEventId": "

        The ID of the LambdaFunctionScheduled event that was recorded when this AWS Lambda function was scheduled. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "LambdaFunctionFailedEventAttributes$startedEventId": "

        The ID of the LambdaFunctionStarted event recorded in the history.

        ", "LambdaFunctionScheduledEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event for the decision that resulted in the scheduling of this AWS Lambda function. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "LambdaFunctionStartedEventAttributes$scheduledEventId": "

        The ID of the LambdaFunctionScheduled event that was recorded when this AWS Lambda function was scheduled. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "LambdaFunctionTimedOutEventAttributes$scheduledEventId": "

        The ID of the LambdaFunctionScheduled event that was recorded when this AWS Lambda function was scheduled. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "LambdaFunctionTimedOutEventAttributes$startedEventId": "

        The ID of the LambdaFunctionStarted event recorded in the history.

        ", "MarkerRecordedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the RecordMarker decision that requested this marker. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "RecordMarkerFailedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the RecordMarkerFailed decision for this cancellation request. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "RequestCancelActivityTaskFailedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the RequestCancelActivityTask decision for this cancellation request. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "RequestCancelExternalWorkflowExecutionFailedEventAttributes$initiatedEventId": "

        The ID of the RequestCancelExternalWorkflowExecutionInitiated event corresponding to the RequestCancelExternalWorkflowExecution decision to cancel this external workflow execution. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "RequestCancelExternalWorkflowExecutionFailedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the RequestCancelExternalWorkflowExecution decision for this cancellation request. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "RequestCancelExternalWorkflowExecutionInitiatedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the RequestCancelExternalWorkflowExecution decision for this cancellation request. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ScheduleActivityTaskFailedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision that resulted in the scheduling of this activity task. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "ScheduleLambdaFunctionFailedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision that resulted in the scheduling of this AWS Lambda function. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "SignalExternalWorkflowExecutionFailedEventAttributes$initiatedEventId": "

        The ID of the SignalExternalWorkflowExecutionInitiated event corresponding to the SignalExternalWorkflowExecution decision to request this signal. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "SignalExternalWorkflowExecutionFailedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the SignalExternalWorkflowExecution decision for this signal. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "SignalExternalWorkflowExecutionInitiatedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the SignalExternalWorkflowExecution decision for this signal. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "StartChildWorkflowExecutionFailedEventAttributes$initiatedEventId": "

        The ID of the StartChildWorkflowExecutionInitiated event corresponding to the StartChildWorkflowExecution decision to start this child workflow execution. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "StartChildWorkflowExecutionFailedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the StartChildWorkflowExecution decision to request this child workflow execution. This information can be useful for diagnosing problems by tracing back the cause of events.

        ", "StartChildWorkflowExecutionInitiatedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the StartChildWorkflowExecution decision to request this child workflow execution. This information can be useful for diagnosing problems by tracing back the cause of events.

        ", "StartLambdaFunctionFailedEventAttributes$scheduledEventId": "

        The ID of the LambdaFunctionScheduled event that was recorded when this AWS Lambda function was scheduled. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "StartTimerFailedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the StartTimer decision for this activity task. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "TimerCanceledEventAttributes$startedEventId": "

        The ID of the TimerStarted event that was recorded when this timer was started. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "TimerCanceledEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the CancelTimer decision to cancel this timer. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "TimerFiredEventAttributes$startedEventId": "

        The ID of the TimerStarted event that was recorded when this timer was started. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "TimerStartedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the StartTimer decision for this activity task. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "WorkflowExecutionCancelRequestedEventAttributes$externalInitiatedEventId": "

        The ID of the RequestCancelExternalWorkflowExecutionInitiated event corresponding to the RequestCancelExternalWorkflowExecution decision to cancel this workflow execution.The source event with this ID can be found in the history of the source workflow execution. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "WorkflowExecutionCanceledEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the CancelWorkflowExecution decision for this cancellation request. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "WorkflowExecutionCompletedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the CompleteWorkflowExecution decision to complete this execution. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "WorkflowExecutionContinuedAsNewEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the ContinueAsNewWorkflowExecution decision that started this execution. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "WorkflowExecutionFailedEventAttributes$decisionTaskCompletedEventId": "

        The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the FailWorkflowExecution decision to fail this execution. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        ", "WorkflowExecutionSignaledEventAttributes$externalInitiatedEventId": "

        The ID of the SignalExternalWorkflowExecutionInitiated event corresponding to the SignalExternalWorkflow decision to signal this workflow execution.The source event with this ID can be found in the history of the source workflow execution. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event. This field is set only if the signal was initiated by another workflow execution.

        ", "WorkflowExecutionStartedEventAttributes$parentInitiatedEventId": "

        The ID of the StartChildWorkflowExecutionInitiated event corresponding to the StartChildWorkflowExecution decision to start this workflow execution. The source event with this ID can be found in the history of the source workflow execution. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.

        " } }, "EventType": { "base": null, "refs": { "HistoryEvent$eventType": "

        The type of the history event.

        " } }, "ExecutionStatus": { "base": null, "refs": { "WorkflowExecutionInfo$executionStatus": "

        The current status of the execution.

        " } }, "ExecutionTimeFilter": { "base": "

        Used to filter the workflow executions in visibility APIs by various time-based rules. Each parameter, if specified, defines a rule that must be satisfied by each returned query result. The parameter values are in the Unix Time format. For example: \"oldestDate\": 1325376070.

        ", "refs": { "CountClosedWorkflowExecutionsInput$startTimeFilter": "

        If specified, only workflow executions that meet the start time criteria of the filter are counted.

        startTimeFilter and closeTimeFilter are mutually exclusive. You must specify one of these in a request but not both.", "CountClosedWorkflowExecutionsInput$closeTimeFilter": "

        If specified, only workflow executions that meet the close time criteria of the filter are counted.

        startTimeFilter and closeTimeFilter are mutually exclusive. You must specify one of these in a request but not both.", "CountOpenWorkflowExecutionsInput$startTimeFilter": "

        Specifies the start time criteria that workflow executions must meet in order to be counted.

        ", "ListClosedWorkflowExecutionsInput$startTimeFilter": "

        If specified, the workflow executions are included in the returned results based on whether their start times are within the range specified by this filter. Also, if this parameter is specified, the returned results are ordered by their start times.

        startTimeFilter and closeTimeFilter are mutually exclusive. You must specify one of these in a request but not both.", "ListClosedWorkflowExecutionsInput$closeTimeFilter": "

        If specified, the workflow executions are included in the returned results based on whether their close times are within the range specified by this filter. Also, if this parameter is specified, the returned results are ordered by their close times.

        startTimeFilter and closeTimeFilter are mutually exclusive. You must specify one of these in a request but not both.", "ListOpenWorkflowExecutionsInput$startTimeFilter": "

        Workflow executions are included in the returned results based on whether their start times are within the range specified by this filter.

        " } }, "ExternalWorkflowExecutionCancelRequestedEventAttributes": { "base": "

        Provides details of the ExternalWorkflowExecutionCancelRequested event.

        ", "refs": { "HistoryEvent$externalWorkflowExecutionCancelRequestedEventAttributes": "

        If the event is of type ExternalWorkflowExecutionCancelRequested then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "ExternalWorkflowExecutionSignaledEventAttributes": { "base": "

        Provides details of the ExternalWorkflowExecutionSignaled event.

        ", "refs": { "HistoryEvent$externalWorkflowExecutionSignaledEventAttributes": "

        If the event is of type ExternalWorkflowExecutionSignaled then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "FailWorkflowExecutionDecisionAttributes": { "base": "

        Provides details of the FailWorkflowExecution decision.

        Access Control

        You can use IAM policies to control this decision's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "refs": { "Decision$failWorkflowExecutionDecisionAttributes": "

        Provides details of the FailWorkflowExecution decision. It is not set for other decision types.

        " } }, "FailWorkflowExecutionFailedCause": { "base": null, "refs": { "FailWorkflowExecutionFailedEventAttributes$cause": "

        The cause of the failure. This information is generated by the system and can be useful for diagnostic purposes.

        If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it lacked sufficient permissions. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows." } }, "FailWorkflowExecutionFailedEventAttributes": { "base": "

        Provides details of the FailWorkflowExecutionFailed event.

        ", "refs": { "HistoryEvent$failWorkflowExecutionFailedEventAttributes": "

        If the event is of type FailWorkflowExecutionFailed then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "FailureReason": { "base": null, "refs": { "ActivityTaskFailedEventAttributes$reason": "

        The reason provided for the failure (if any).

        ", "ChildWorkflowExecutionFailedEventAttributes$reason": "

        The reason for the failure (if provided).

        ", "FailWorkflowExecutionDecisionAttributes$reason": "

        A descriptive reason for the failure that may help in diagnostics.

        ", "LambdaFunctionFailedEventAttributes$reason": "

        The reason provided for the failure (if any).

        ", "RespondActivityTaskFailedInput$reason": "

        Description of the error that may assist in diagnostics.

        ", "WorkflowExecutionFailedEventAttributes$reason": "

        The descriptive reason provided for the failure (if any).

        " } }, "FunctionId": { "base": null, "refs": { "LambdaFunctionScheduledEventAttributes$id": "

        The unique Amazon SWF ID for the AWS Lambda task.

        ", "ScheduleLambdaFunctionDecisionAttributes$id": "

        Required. The SWF id of the AWS Lambda task.

        The specified string must not start or end with whitespace. It must not contain a : (colon), / (slash), | (vertical bar), or any control characters (\\u0000-\\u001f | \\u007f - \\u009f). Also, it must not contain the literal string quotarnquot.

        ", "ScheduleLambdaFunctionFailedEventAttributes$id": "

        The unique Amazon SWF ID of the AWS Lambda task.

        " } }, "FunctionInput": { "base": null, "refs": { "LambdaFunctionScheduledEventAttributes$input": "

        Input provided to the AWS Lambda function.

        ", "ScheduleLambdaFunctionDecisionAttributes$input": "

        The input provided to the AWS Lambda function.

        " } }, "FunctionName": { "base": null, "refs": { "LambdaFunctionScheduledEventAttributes$name": "

        The name of the scheduled AWS Lambda function.

        ", "ScheduleLambdaFunctionDecisionAttributes$name": "

        Required. The name of the AWS Lambda function to invoke.

        ", "ScheduleLambdaFunctionFailedEventAttributes$name": "

        The name of the scheduled AWS Lambda function.

        " } }, "GetWorkflowExecutionHistoryInput": { "base": null, "refs": { } }, "History": { "base": "

        Paginated representation of a workflow history for a workflow execution. This is the up to date, complete and authoritative record of the events related to all tasks and events in the life of the workflow execution.

        ", "refs": { } }, "HistoryEvent": { "base": "

        Event within a workflow execution. A history event can be one of these types:

        • WorkflowExecutionStarted: The workflow execution was started.
        • WorkflowExecutionCompleted: The workflow execution was closed due to successful completion.
        • WorkflowExecutionFailed: The workflow execution closed due to a failure.
        • WorkflowExecutionTimedOut: The workflow execution was closed because a time out was exceeded.
        • WorkflowExecutionCanceled: The workflow execution was successfully canceled and closed.
        • WorkflowExecutionTerminated: The workflow execution was terminated.
        • WorkflowExecutionContinuedAsNew: The workflow execution was closed and a new execution of the same type was created with the same workflowId.
        • WorkflowExecutionCancelRequested: A request to cancel this workflow execution was made.
        • DecisionTaskScheduled: A decision task was scheduled for the workflow execution.
        • DecisionTaskStarted: The decision task was dispatched to a decider.
        • DecisionTaskCompleted: The decider successfully completed a decision task by calling RespondDecisionTaskCompleted.
        • DecisionTaskTimedOut: The decision task timed out.
        • ActivityTaskScheduled: An activity task was scheduled for execution.
        • ScheduleActivityTaskFailed: Failed to process ScheduleActivityTask decision. This happens when the decision is not configured properly, for example the activity type specified is not registered.
        • ActivityTaskStarted: The scheduled activity task was dispatched to a worker.
        • ActivityTaskCompleted: An activity worker successfully completed an activity task by calling RespondActivityTaskCompleted.
        • ActivityTaskFailed: An activity worker failed an activity task by calling RespondActivityTaskFailed.
        • ActivityTaskTimedOut: The activity task timed out.
        • ActivityTaskCanceled: The activity task was successfully canceled.
        • ActivityTaskCancelRequested: A RequestCancelActivityTask decision was received by the system.
        • RequestCancelActivityTaskFailed: Failed to process RequestCancelActivityTask decision. This happens when the decision is not configured properly.
        • WorkflowExecutionSignaled: An external signal was received for the workflow execution.
        • MarkerRecorded: A marker was recorded in the workflow history as the result of a RecordMarker decision.
        • TimerStarted: A timer was started for the workflow execution due to a StartTimer decision.
        • StartTimerFailed: Failed to process StartTimer decision. This happens when the decision is not configured properly, for example a timer already exists with the specified timer ID.
        • TimerFired: A timer, previously started for this workflow execution, fired.
        • TimerCanceled: A timer, previously started for this workflow execution, was successfully canceled.
        • CancelTimerFailed: Failed to process CancelTimer decision. This happens when the decision is not configured properly, for example no timer exists with the specified timer ID.
        • StartChildWorkflowExecutionInitiated: A request was made to start a child workflow execution.
        • StartChildWorkflowExecutionFailed: Failed to process StartChildWorkflowExecution decision. This happens when the decision is not configured properly, for example the workflow type specified is not registered.
        • ChildWorkflowExecutionStarted: A child workflow execution was successfully started.
        • ChildWorkflowExecutionCompleted: A child workflow execution, started by this workflow execution, completed successfully and was closed.
        • ChildWorkflowExecutionFailed: A child workflow execution, started by this workflow execution, failed to complete successfully and was closed.
        • ChildWorkflowExecutionTimedOut: A child workflow execution, started by this workflow execution, timed out and was closed.
        • ChildWorkflowExecutionCanceled: A child workflow execution, started by this workflow execution, was canceled and closed.
        • ChildWorkflowExecutionTerminated: A child workflow execution, started by this workflow execution, was terminated.
        • SignalExternalWorkflowExecutionInitiated: A request to signal an external workflow was made.
        • ExternalWorkflowExecutionSignaled: A signal, requested by this workflow execution, was successfully delivered to the target external workflow execution.
        • SignalExternalWorkflowExecutionFailed: The request to signal an external workflow execution failed.
        • RequestCancelExternalWorkflowExecutionInitiated: A request was made to request the cancellation of an external workflow execution.
        • ExternalWorkflowExecutionCancelRequested: Request to cancel an external workflow execution was successfully delivered to the target execution.
        • RequestCancelExternalWorkflowExecutionFailed: Request to cancel an external workflow execution failed.
        • LambdaFunctionScheduled: An AWS Lambda function was scheduled for execution.
        • LambdaFunctionStarted: The scheduled function was invoked in the AWS Lambda service.
        • LambdaFunctionCompleted: The AWS Lambda function successfully completed.
        • LambdaFunctionFailed: The AWS Lambda function execution failed.
        • LambdaFunctionTimedOut: The AWS Lambda function execution timed out.
        • ScheduleLambdaFunctionFailed: Failed to process ScheduleLambdaFunction decision. This happens when the workflow execution does not have the proper IAM role attached to invoke AWS Lambda functions.
        • StartLambdaFunctionFailed: Failed to invoke the scheduled function in the AWS Lambda service. This happens when the AWS Lambda service is not available in the current region, or received too many requests.
        ", "refs": { "HistoryEventList$member": null } }, "HistoryEventList": { "base": null, "refs": { "DecisionTask$events": "

        A paginated list of history events of the workflow execution. The decider uses this during the processing of the decision task.

        ", "History$events": "

        The list of history events.

        " } }, "Identity": { "base": null, "refs": { "ActivityTaskStartedEventAttributes$identity": "

        Identity of the worker that was assigned this task. This aids diagnostics when problems arise. The form of this identity is user defined.

        ", "DecisionTaskStartedEventAttributes$identity": "

        Identity of the decider making the request. This enables diagnostic tracing when problems arise. The form of this identity is user defined.

        ", "PollForActivityTaskInput$identity": "

        Identity of the worker making the request, recorded in the ActivityTaskStarted event in the workflow history. This enables diagnostic tracing when problems arise. The form of this identity is user defined.

        ", "PollForDecisionTaskInput$identity": "

        Identity of the decider making the request, which is recorded in the DecisionTaskStarted event in the workflow history. This enables diagnostic tracing when problems arise. The form of this identity is user defined.

        " } }, "LambdaFunctionCompletedEventAttributes": { "base": "

        Provides details for the LambdaFunctionCompleted event.

        ", "refs": { "HistoryEvent$lambdaFunctionCompletedEventAttributes": null } }, "LambdaFunctionFailedEventAttributes": { "base": "

        Provides details for the LambdaFunctionFailed event.

        ", "refs": { "HistoryEvent$lambdaFunctionFailedEventAttributes": null } }, "LambdaFunctionScheduledEventAttributes": { "base": "

        Provides details for the LambdaFunctionScheduled event.

        ", "refs": { "HistoryEvent$lambdaFunctionScheduledEventAttributes": null } }, "LambdaFunctionStartedEventAttributes": { "base": "

        Provides details for the LambdaFunctionStarted event.

        ", "refs": { "HistoryEvent$lambdaFunctionStartedEventAttributes": null } }, "LambdaFunctionTimedOutEventAttributes": { "base": "

        Provides details for the LambdaFunctionTimedOut event.

        ", "refs": { "HistoryEvent$lambdaFunctionTimedOutEventAttributes": null } }, "LambdaFunctionTimeoutType": { "base": null, "refs": { "LambdaFunctionTimedOutEventAttributes$timeoutType": "

        The type of the timeout that caused this event.

        " } }, "LimitExceededFault": { "base": "

        Returned by any operation if a system imposed limitation has been reached. To address this fault you should either clean up unused resources or increase the limit by contacting AWS.

        ", "refs": { } }, "LimitedData": { "base": null, "refs": { "ActivityTaskTimedOutEventAttributes$details": "

        Contains the content of the details parameter for the last call made by the activity to RecordActivityTaskHeartbeat.

        ", "RecordActivityTaskHeartbeatInput$details": "

        If specified, contains details about the progress of the task.

        " } }, "ListActivityTypesInput": { "base": null, "refs": { } }, "ListClosedWorkflowExecutionsInput": { "base": null, "refs": { } }, "ListDomainsInput": { "base": null, "refs": { } }, "ListOpenWorkflowExecutionsInput": { "base": null, "refs": { } }, "ListWorkflowTypesInput": { "base": null, "refs": { } }, "MarkerName": { "base": null, "refs": { "MarkerRecordedEventAttributes$markerName": "

        The name of the marker.

        ", "RecordMarkerDecisionAttributes$markerName": "

        Required. The name of the marker.

        ", "RecordMarkerFailedEventAttributes$markerName": "

        The marker's name.

        " } }, "MarkerRecordedEventAttributes": { "base": "

        Provides details of the MarkerRecorded event.

        ", "refs": { "HistoryEvent$markerRecordedEventAttributes": "

        If the event is of type MarkerRecorded then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "Name": { "base": null, "refs": { "ActivityType$name": "

        The name of this activity.

        The combination of activity type name and version must be unique within a domain.", "ListActivityTypesInput$name": "

        If specified, only lists the activity types that have this name.

        ", "ListWorkflowTypesInput$name": "

        If specified, lists the workflow type with this name.

        ", "RegisterActivityTypeInput$name": "

        The name of the activity type within the domain.

        The specified string must not start or end with whitespace. It must not contain a : (colon), / (slash), | (vertical bar), or any control characters (\\u0000-\\u001f | \\u007f - \\u009f). Also, it must not contain the literal string quotarnquot.

        ", "RegisterWorkflowTypeInput$name": "

        The name of the workflow type.

        The specified string must not start or end with whitespace. It must not contain a : (colon), / (slash), | (vertical bar), or any control characters (\\u0000-\\u001f | \\u007f - \\u009f). Also, it must not contain the literal string quotarnquot.

        ", "TaskList$name": "

        The name of the task list.

        ", "WorkflowType$name": "

        Required. The name of the workflow type.

        The combination of workflow type name and version must be unique with in a domain.", "WorkflowTypeFilter$name": "

        Required. Name of the workflow type.

        " } }, "OpenDecisionTasksCount": { "base": null, "refs": { "WorkflowExecutionOpenCounts$openDecisionTasks": "

        The count of decision tasks whose status is OPEN. A workflow execution can have at most one open decision task.

        " } }, "OperationNotPermittedFault": { "base": "

        Returned when the caller does not have sufficient permissions to invoke the action.

        ", "refs": { } }, "PageSize": { "base": null, "refs": { "GetWorkflowExecutionHistoryInput$maximumPageSize": "

        The maximum number of results that will be returned per call. nextPageToken can be used to obtain futher pages of results. The default is 1000, which is the maximum allowed page size. You can, however, specify a page size smaller than the maximum.

        This is an upper limit only; the actual number of results returned per call may be fewer than the specified maximum.

        ", "ListActivityTypesInput$maximumPageSize": "

        The maximum number of results that will be returned per call. nextPageToken can be used to obtain futher pages of results. The default is 1000, which is the maximum allowed page size. You can, however, specify a page size smaller than the maximum.

        This is an upper limit only; the actual number of results returned per call may be fewer than the specified maximum.

        ", "ListClosedWorkflowExecutionsInput$maximumPageSize": "

        The maximum number of results that will be returned per call. nextPageToken can be used to obtain futher pages of results. The default is 1000, which is the maximum allowed page size. You can, however, specify a page size smaller than the maximum.

        This is an upper limit only; the actual number of results returned per call may be fewer than the specified maximum.

        ", "ListDomainsInput$maximumPageSize": "

        The maximum number of results that will be returned per call. nextPageToken can be used to obtain futher pages of results. The default is 1000, which is the maximum allowed page size. You can, however, specify a page size smaller than the maximum.

        This is an upper limit only; the actual number of results returned per call may be fewer than the specified maximum.

        ", "ListOpenWorkflowExecutionsInput$maximumPageSize": "

        The maximum number of results that will be returned per call. nextPageToken can be used to obtain futher pages of results. The default is 1000, which is the maximum allowed page size. You can, however, specify a page size smaller than the maximum.

        This is an upper limit only; the actual number of results returned per call may be fewer than the specified maximum.

        ", "ListWorkflowTypesInput$maximumPageSize": "

        The maximum number of results that will be returned per call. nextPageToken can be used to obtain futher pages of results. The default is 1000, which is the maximum allowed page size. You can, however, specify a page size smaller than the maximum.

        This is an upper limit only; the actual number of results returned per call may be fewer than the specified maximum.

        ", "PollForDecisionTaskInput$maximumPageSize": "

        The maximum number of results that will be returned per call. nextPageToken can be used to obtain futher pages of results. The default is 1000, which is the maximum allowed page size. You can, however, specify a page size smaller than the maximum.

        This is an upper limit only; the actual number of results returned per call may be fewer than the specified maximum.

        " } }, "PageToken": { "base": null, "refs": { "ActivityTypeInfos$nextPageToken": "

        If a NextPageToken was returned by a previous call, there are more results available. To retrieve the next page of results, make the call again using the returned token in nextPageToken. Keep all other arguments unchanged.

        The configured maximumPageSize determines how many results can be returned in a single call.

        ", "DecisionTask$nextPageToken": "

        If a NextPageToken was returned by a previous call, there are more results available. To retrieve the next page of results, make the call again using the returned token in nextPageToken. Keep all other arguments unchanged.

        The configured maximumPageSize determines how many results can be returned in a single call.

        ", "DomainInfos$nextPageToken": "

        If a NextPageToken was returned by a previous call, there are more results available. To retrieve the next page of results, make the call again using the returned token in nextPageToken. Keep all other arguments unchanged.

        The configured maximumPageSize determines how many results can be returned in a single call.

        ", "GetWorkflowExecutionHistoryInput$nextPageToken": "

        If a NextPageToken was returned by a previous call, there are more results available. To retrieve the next page of results, make the call again using the returned token in nextPageToken. Keep all other arguments unchanged.

        The configured maximumPageSize determines how many results can be returned in a single call.

        ", "History$nextPageToken": "

        If a NextPageToken was returned by a previous call, there are more results available. To retrieve the next page of results, make the call again using the returned token in nextPageToken. Keep all other arguments unchanged.

        The configured maximumPageSize determines how many results can be returned in a single call.

        ", "ListActivityTypesInput$nextPageToken": "

        If a NextPageToken was returned by a previous call, there are more results available. To retrieve the next page of results, make the call again using the returned token in nextPageToken. Keep all other arguments unchanged.

        The configured maximumPageSize determines how many results can be returned in a single call.

        ", "ListClosedWorkflowExecutionsInput$nextPageToken": "

        If a NextPageToken was returned by a previous call, there are more results available. To retrieve the next page of results, make the call again using the returned token in nextPageToken. Keep all other arguments unchanged.

        The configured maximumPageSize determines how many results can be returned in a single call.

        ", "ListDomainsInput$nextPageToken": "

        If a NextPageToken was returned by a previous call, there are more results available. To retrieve the next page of results, make the call again using the returned token in nextPageToken. Keep all other arguments unchanged.

        The configured maximumPageSize determines how many results can be returned in a single call.

        ", "ListOpenWorkflowExecutionsInput$nextPageToken": "

        If a NextPageToken was returned by a previous call, there are more results available. To retrieve the next page of results, make the call again using the returned token in nextPageToken. Keep all other arguments unchanged.

        The configured maximumPageSize determines how many results can be returned in a single call.

        ", "ListWorkflowTypesInput$nextPageToken": "

        If a NextPageToken was returned by a previous call, there are more results available. To retrieve the next page of results, make the call again using the returned token in nextPageToken. Keep all other arguments unchanged.

        The configured maximumPageSize determines how many results can be returned in a single call.

        ", "PollForDecisionTaskInput$nextPageToken": "

        If a NextPageToken was returned by a previous call, there are more results available. To retrieve the next page of results, make the call again using the returned token in nextPageToken. Keep all other arguments unchanged.

        The configured maximumPageSize determines how many results can be returned in a single call.

        The nextPageToken returned by this action cannot be used with GetWorkflowExecutionHistory to get the next page. You must call PollForDecisionTask again (with the nextPageToken) to retrieve the next page of history records. Calling PollForDecisionTask with a nextPageToken will not return a new decision task..", "WorkflowExecutionInfos$nextPageToken": "

        If a NextPageToken was returned by a previous call, there are more results available. To retrieve the next page of results, make the call again using the returned token in nextPageToken. Keep all other arguments unchanged.

        The configured maximumPageSize determines how many results can be returned in a single call.

        ", "WorkflowTypeInfos$nextPageToken": "

        If a NextPageToken was returned by a previous call, there are more results available. To retrieve the next page of results, make the call again using the returned token in nextPageToken. Keep all other arguments unchanged.

        The configured maximumPageSize determines how many results can be returned in a single call.

        " } }, "PendingTaskCount": { "base": "

        Contains the count of tasks in a task list.

        ", "refs": { } }, "PollForActivityTaskInput": { "base": null, "refs": { } }, "PollForDecisionTaskInput": { "base": null, "refs": { } }, "RecordActivityTaskHeartbeatInput": { "base": null, "refs": { } }, "RecordMarkerDecisionAttributes": { "base": "

        Provides details of the RecordMarker decision.

        Access Control

        You can use IAM policies to control this decision's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "refs": { "Decision$recordMarkerDecisionAttributes": "

        Provides details of the RecordMarker decision. It is not set for other decision types.

        " } }, "RecordMarkerFailedCause": { "base": null, "refs": { "RecordMarkerFailedEventAttributes$cause": "

        The cause of the failure. This information is generated by the system and can be useful for diagnostic purposes.

        If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it lacked sufficient permissions. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows." } }, "RecordMarkerFailedEventAttributes": { "base": "

        Provides details of the RecordMarkerFailed event.

        ", "refs": { "HistoryEvent$recordMarkerFailedEventAttributes": "

        If the event is of type DecisionTaskFailed then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "RegisterActivityTypeInput": { "base": null, "refs": { } }, "RegisterDomainInput": { "base": null, "refs": { } }, "RegisterWorkflowTypeInput": { "base": null, "refs": { } }, "RegistrationStatus": { "base": null, "refs": { "ActivityTypeInfo$status": "

        The current status of the activity type.

        ", "DomainInfo$status": "

        The status of the domain:

        • REGISTERED: The domain is properly registered and available. You can use this domain for registering types and creating new workflow executions.
        • DEPRECATED: The domain was deprecated using DeprecateDomain, but is still in use. You should not create new workflow executions in this domain.
        ", "ListActivityTypesInput$registrationStatus": "

        Specifies the registration status of the activity types to list.

        ", "ListDomainsInput$registrationStatus": "

        Specifies the registration status of the domains to list.

        ", "ListWorkflowTypesInput$registrationStatus": "

        Specifies the registration status of the workflow types to list.

        ", "WorkflowTypeInfo$status": "

        The current status of the workflow type.

        " } }, "RequestCancelActivityTaskDecisionAttributes": { "base": "

        Provides details of the RequestCancelActivityTask decision.

        Access Control

        You can use IAM policies to control this decision's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "refs": { "Decision$requestCancelActivityTaskDecisionAttributes": "

        Provides details of the RequestCancelActivityTask decision. It is not set for other decision types.

        " } }, "RequestCancelActivityTaskFailedCause": { "base": null, "refs": { "RequestCancelActivityTaskFailedEventAttributes$cause": "

        The cause of the failure. This information is generated by the system and can be useful for diagnostic purposes.

        If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it lacked sufficient permissions. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows." } }, "RequestCancelActivityTaskFailedEventAttributes": { "base": "

        Provides details of the RequestCancelActivityTaskFailed event.

        ", "refs": { "HistoryEvent$requestCancelActivityTaskFailedEventAttributes": "

        If the event is of type RequestCancelActivityTaskFailed then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "RequestCancelExternalWorkflowExecutionDecisionAttributes": { "base": "

        Provides details of the RequestCancelExternalWorkflowExecution decision.

        Access Control

        You can use IAM policies to control this decision's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "refs": { "Decision$requestCancelExternalWorkflowExecutionDecisionAttributes": "

        Provides details of the RequestCancelExternalWorkflowExecution decision. It is not set for other decision types.

        " } }, "RequestCancelExternalWorkflowExecutionFailedCause": { "base": null, "refs": { "RequestCancelExternalWorkflowExecutionFailedEventAttributes$cause": "

        The cause of the failure. This information is generated by the system and can be useful for diagnostic purposes.

        If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it lacked sufficient permissions. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows." } }, "RequestCancelExternalWorkflowExecutionFailedEventAttributes": { "base": "

        Provides details of the RequestCancelExternalWorkflowExecutionFailed event.

        ", "refs": { "HistoryEvent$requestCancelExternalWorkflowExecutionFailedEventAttributes": "

        If the event is of type RequestCancelExternalWorkflowExecutionFailed then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "RequestCancelExternalWorkflowExecutionInitiatedEventAttributes": { "base": "

        Provides details of the RequestCancelExternalWorkflowExecutionInitiated event.

        ", "refs": { "HistoryEvent$requestCancelExternalWorkflowExecutionInitiatedEventAttributes": "

        If the event is of type RequestCancelExternalWorkflowExecutionInitiated then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "RequestCancelWorkflowExecutionInput": { "base": null, "refs": { } }, "RespondActivityTaskCanceledInput": { "base": null, "refs": { } }, "RespondActivityTaskCompletedInput": { "base": null, "refs": { } }, "RespondActivityTaskFailedInput": { "base": null, "refs": { } }, "RespondDecisionTaskCompletedInput": { "base": null, "refs": { } }, "ReverseOrder": { "base": null, "refs": { "GetWorkflowExecutionHistoryInput$reverseOrder": "

        When set to true, returns the events in reverse order. By default the results are returned in ascending order of the eventTimeStamp of the events.

        ", "ListActivityTypesInput$reverseOrder": "

        When set to true, returns the results in reverse order. By default, the results are returned in ascending alphabetical order by name of the activity types.

        ", "ListClosedWorkflowExecutionsInput$reverseOrder": "

        When set to true, returns the results in reverse order. By default the results are returned in descending order of the start or the close time of the executions.

        ", "ListDomainsInput$reverseOrder": "

        When set to true, returns the results in reverse order. By default, the results are returned in ascending alphabetical order by name of the domains.

        ", "ListOpenWorkflowExecutionsInput$reverseOrder": "

        When set to true, returns the results in reverse order. By default the results are returned in descending order of the start time of the executions.

        ", "ListWorkflowTypesInput$reverseOrder": "

        When set to true, returns the results in reverse order. By default the results are returned in ascending alphabetical order of the name of the workflow types.

        ", "PollForDecisionTaskInput$reverseOrder": "

        When set to true, returns the events in reverse order. By default the results are returned in ascending order of the eventTimestamp of the events.

        " } }, "Run": { "base": "

        Specifies the runId of a workflow execution.

        ", "refs": { } }, "RunId": { "base": null, "refs": { "Run$runId": "

        The runId of a workflow execution. This ID is generated by the service and can be used to uniquely identify the workflow execution within a domain.

        ", "WorkflowExecution$runId": "

        A system-generated unique identifier for the workflow execution.

        ", "WorkflowExecutionContinuedAsNewEventAttributes$newExecutionRunId": "

        The runId of the new workflow execution.

        " } }, "RunIdOptional": { "base": null, "refs": { "RequestCancelExternalWorkflowExecutionDecisionAttributes$runId": "

        The runId of the external workflow execution to cancel.

        ", "RequestCancelExternalWorkflowExecutionFailedEventAttributes$runId": "

        The runId of the external workflow execution.

        ", "RequestCancelExternalWorkflowExecutionInitiatedEventAttributes$runId": "

        The runId of the external workflow execution to be canceled.

        ", "RequestCancelWorkflowExecutionInput$runId": "

        The runId of the workflow execution to cancel.

        ", "SignalExternalWorkflowExecutionDecisionAttributes$runId": "

        The runId of the workflow execution to be signaled.

        ", "SignalExternalWorkflowExecutionFailedEventAttributes$runId": "

        The runId of the external workflow execution that the signal was being delivered to.

        ", "SignalExternalWorkflowExecutionInitiatedEventAttributes$runId": "

        The runId of the external workflow execution to send the signal to.

        ", "SignalWorkflowExecutionInput$runId": "

        The runId of the workflow execution to signal.

        ", "TerminateWorkflowExecutionInput$runId": "

        The runId of the workflow execution to terminate.

        ", "WorkflowExecutionStartedEventAttributes$continuedExecutionRunId": "

        If this workflow execution was started due to a ContinueAsNewWorkflowExecution decision, then it contains the runId of the previous workflow execution that was closed and continued as this execution.

        " } }, "ScheduleActivityTaskDecisionAttributes": { "base": "

        Provides details of the ScheduleActivityTask decision.

        Access Control

        You can use IAM policies to control this decision's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the following parameters by using a Condition element with the appropriate keys.
          • activityType.name: String constraint. The key is swf:activityType.name.
          • activityType.version: String constraint. The key is swf:activityType.version.
          • taskList: String constraint. The key is swf:taskList.name.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "refs": { "Decision$scheduleActivityTaskDecisionAttributes": "

        Provides details of the ScheduleActivityTask decision. It is not set for other decision types.

        " } }, "ScheduleActivityTaskFailedCause": { "base": null, "refs": { "ScheduleActivityTaskFailedEventAttributes$cause": "

        The cause of the failure. This information is generated by the system and can be useful for diagnostic purposes.

        If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it lacked sufficient permissions. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows." } }, "ScheduleActivityTaskFailedEventAttributes": { "base": "

        Provides details of the ScheduleActivityTaskFailed event.

        ", "refs": { "HistoryEvent$scheduleActivityTaskFailedEventAttributes": "

        If the event is of type ScheduleActivityTaskFailed then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "ScheduleLambdaFunctionDecisionAttributes": { "base": "

        Provides details of the ScheduleLambdaFunction decision.

        Access Control

        You can use IAM policies to control this decision's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the following parameters by using a Condition element with the appropriate keys.
          • activityType.name: String constraint. The key is swf:activityType.name.
          • activityType.version: String constraint. The key is swf:activityType.version.
          • taskList: String constraint. The key is swf:taskList.name.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "refs": { "Decision$scheduleLambdaFunctionDecisionAttributes": null } }, "ScheduleLambdaFunctionFailedCause": { "base": null, "refs": { "ScheduleLambdaFunctionFailedEventAttributes$cause": "

        The cause of the failure. This information is generated by the system and can be useful for diagnostic purposes.

        If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it lacked sufficient permissions. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows." } }, "ScheduleLambdaFunctionFailedEventAttributes": { "base": "

        Provides details for the ScheduleLambdaFunctionFailed event.

        ", "refs": { "HistoryEvent$scheduleLambdaFunctionFailedEventAttributes": null } }, "SignalExternalWorkflowExecutionDecisionAttributes": { "base": "

        Provides details of the SignalExternalWorkflowExecution decision.

        Access Control

        You can use IAM policies to control this decision's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "refs": { "Decision$signalExternalWorkflowExecutionDecisionAttributes": "

        Provides details of the SignalExternalWorkflowExecution decision. It is not set for other decision types.

        " } }, "SignalExternalWorkflowExecutionFailedCause": { "base": null, "refs": { "SignalExternalWorkflowExecutionFailedEventAttributes$cause": "

        The cause of the failure. This information is generated by the system and can be useful for diagnostic purposes.

        If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it lacked sufficient permissions. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows." } }, "SignalExternalWorkflowExecutionFailedEventAttributes": { "base": "

        Provides details of the SignalExternalWorkflowExecutionFailed event.

        ", "refs": { "HistoryEvent$signalExternalWorkflowExecutionFailedEventAttributes": "

        If the event is of type SignalExternalWorkflowExecutionFailed then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "SignalExternalWorkflowExecutionInitiatedEventAttributes": { "base": "

        Provides details of the SignalExternalWorkflowExecutionInitiated event.

        ", "refs": { "HistoryEvent$signalExternalWorkflowExecutionInitiatedEventAttributes": "

        If the event is of type SignalExternalWorkflowExecutionInitiated then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "SignalName": { "base": null, "refs": { "SignalExternalWorkflowExecutionDecisionAttributes$signalName": "

        Required. The name of the signal.The target workflow execution will use the signal name and input to process the signal.

        ", "SignalExternalWorkflowExecutionInitiatedEventAttributes$signalName": "

        The name of the signal.

        ", "SignalWorkflowExecutionInput$signalName": "

        The name of the signal. This name must be meaningful to the target workflow.

        ", "WorkflowExecutionSignaledEventAttributes$signalName": "

        The name of the signal received. The decider can use the signal name and inputs to determine how to the process the signal.

        " } }, "SignalWorkflowExecutionInput": { "base": null, "refs": { } }, "StartChildWorkflowExecutionDecisionAttributes": { "base": "

        Provides details of the StartChildWorkflowExecution decision.

        Access Control

        You can use IAM policies to control this decision's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • Constrain the following parameters by using a Condition element with the appropriate keys.
          • tagList.member.N: The key is \"swf:tagList.N\" where N is the tag number from 0 to 4, inclusive.
          • taskList: String constraint. The key is swf:taskList.name.
          • workflowType.name: String constraint. The key is swf:workflowType.name.
          • workflowType.version: String constraint. The key is swf:workflowType.version.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "refs": { "Decision$startChildWorkflowExecutionDecisionAttributes": "

        Provides details of the StartChildWorkflowExecution decision. It is not set for other decision types.

        " } }, "StartChildWorkflowExecutionFailedCause": { "base": null, "refs": { "StartChildWorkflowExecutionFailedEventAttributes$cause": "

        The cause of the failure. This information is generated by the system and can be useful for diagnostic purposes.

        If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it lacked sufficient permissions. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows." } }, "StartChildWorkflowExecutionFailedEventAttributes": { "base": "

        Provides details of the StartChildWorkflowExecutionFailed event.

        ", "refs": { "HistoryEvent$startChildWorkflowExecutionFailedEventAttributes": "

        If the event is of type StartChildWorkflowExecutionFailed then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "StartChildWorkflowExecutionInitiatedEventAttributes": { "base": "

        Provides details of the StartChildWorkflowExecutionInitiated event.

        ", "refs": { "HistoryEvent$startChildWorkflowExecutionInitiatedEventAttributes": "

        If the event is of type StartChildWorkflowExecutionInitiated then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "StartLambdaFunctionFailedCause": { "base": null, "refs": { "StartLambdaFunctionFailedEventAttributes$cause": "

        The cause of the failure. This information is generated by the system and can be useful for diagnostic purposes.

        If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it lacked sufficient permissions. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows." } }, "StartLambdaFunctionFailedEventAttributes": { "base": "

        Provides details for the StartLambdaFunctionFailed event.

        ", "refs": { "HistoryEvent$startLambdaFunctionFailedEventAttributes": null } }, "StartTimerDecisionAttributes": { "base": "

        Provides details of the StartTimer decision.

        Access Control

        You can use IAM policies to control this decision's access to Amazon SWF resources as follows:

        • Use a Resource element with the domain name to limit the action to only specified domains.
        • Use an Action element to allow or deny permission to call this action.
        • You cannot use an IAM policy to constrain this action's parameters.

        If the caller does not have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows.

        ", "refs": { "Decision$startTimerDecisionAttributes": "

        Provides details of the StartTimer decision. It is not set for other decision types.

        " } }, "StartTimerFailedCause": { "base": null, "refs": { "StartTimerFailedEventAttributes$cause": "

        The cause of the failure. This information is generated by the system and can be useful for diagnostic purposes.

        If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it lacked sufficient permissions. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows." } }, "StartTimerFailedEventAttributes": { "base": "

        Provides details of the StartTimerFailed event.

        ", "refs": { "HistoryEvent$startTimerFailedEventAttributes": "

        If the event is of type StartTimerFailed then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "StartWorkflowExecutionInput": { "base": null, "refs": { } }, "Tag": { "base": null, "refs": { "TagFilter$tag": "

        Required. Specifies the tag that must be associated with the execution for it to meet the filter criteria.

        ", "TagList$member": null } }, "TagFilter": { "base": "

        Used to filter the workflow executions in visibility APIs based on a tag.

        ", "refs": { "CountClosedWorkflowExecutionsInput$tagFilter": "

        If specified, only executions that have a tag that matches the filter are counted.

        closeStatusFilter, executionFilter, typeFilter and tagFilter are mutually exclusive. You can specify at most one of these in a request.", "CountOpenWorkflowExecutionsInput$tagFilter": "

        If specified, only executions that have a tag that matches the filter are counted.

        executionFilter, typeFilter and tagFilter are mutually exclusive. You can specify at most one of these in a request.", "ListClosedWorkflowExecutionsInput$tagFilter": "

        If specified, only executions that have the matching tag are listed.

        closeStatusFilter, executionFilter, typeFilter and tagFilter are mutually exclusive. You can specify at most one of these in a request.", "ListOpenWorkflowExecutionsInput$tagFilter": "

        If specified, only executions that have the matching tag are listed.

        executionFilter, typeFilter and tagFilter are mutually exclusive. You can specify at most one of these in a request." } }, "TagList": { "base": null, "refs": { "ContinueAsNewWorkflowExecutionDecisionAttributes$tagList": "

        The list of tags to associate with the new workflow execution. A maximum of 5 tags can be specified. You can list workflow executions with a specific tag by calling ListOpenWorkflowExecutions or ListClosedWorkflowExecutions and specifying a TagFilter.

        ", "StartChildWorkflowExecutionDecisionAttributes$tagList": "

        The list of tags to associate with the child workflow execution. A maximum of 5 tags can be specified. You can list workflow executions with a specific tag by calling ListOpenWorkflowExecutions or ListClosedWorkflowExecutions and specifying a TagFilter.

        ", "StartChildWorkflowExecutionInitiatedEventAttributes$tagList": "

        The list of tags to associated with the child workflow execution.

        ", "StartWorkflowExecutionInput$tagList": "

        The list of tags to associate with the workflow execution. You can specify a maximum of 5 tags. You can list workflow executions with a specific tag by calling ListOpenWorkflowExecutions or ListClosedWorkflowExecutions and specifying a TagFilter.

        ", "WorkflowExecutionContinuedAsNewEventAttributes$tagList": "

        The list of tags associated with the new workflow execution.

        ", "WorkflowExecutionInfo$tagList": "

        The list of tags associated with the workflow execution. Tags can be used to identify and list workflow executions of interest through the visibility APIs. A workflow execution can have a maximum of 5 tags.

        ", "WorkflowExecutionStartedEventAttributes$tagList": "

        The list of tags associated with this workflow execution. An execution can have up to 5 tags.

        " } }, "TaskList": { "base": "

        Represents a task list.

        ", "refs": { "ActivityTaskScheduledEventAttributes$taskList": "

        The task list in which the activity task has been scheduled.

        ", "ActivityTypeConfiguration$defaultTaskList": "

        Optional. The default task list specified for this activity type at registration. This default is used if a task list is not provided when a task is scheduled through the ScheduleActivityTask decision. You can override the default registered task list when scheduling a task through the ScheduleActivityTask decision.

        ", "ContinueAsNewWorkflowExecutionDecisionAttributes$taskList": null, "CountPendingActivityTasksInput$taskList": "

        The name of the task list.

        ", "CountPendingDecisionTasksInput$taskList": "

        The name of the task list.

        ", "DecisionTaskScheduledEventAttributes$taskList": "

        The name of the task list in which the decision task was scheduled.

        ", "PollForActivityTaskInput$taskList": "

        Specifies the task list to poll for activity tasks.

        The specified string must not start or end with whitespace. It must not contain a : (colon), / (slash), | (vertical bar), or any control characters (\\u0000-\\u001f | \\u007f - \\u009f). Also, it must not contain the literal string quotarnquot.

        ", "PollForDecisionTaskInput$taskList": "

        Specifies the task list to poll for decision tasks.

        The specified string must not start or end with whitespace. It must not contain a : (colon), / (slash), | (vertical bar), or any control characters (\\u0000-\\u001f | \\u007f - \\u009f). Also, it must not contain the literal string quotarnquot.

        ", "RegisterActivityTypeInput$defaultTaskList": "

        If set, specifies the default task list to use for scheduling tasks of this activity type. This default task list is used if a task list is not provided when a task is scheduled through the ScheduleActivityTask decision.

        ", "RegisterWorkflowTypeInput$defaultTaskList": "

        If set, specifies the default task list to use for scheduling decision tasks for executions of this workflow type. This default is used only if a task list is not provided when starting the execution through the StartWorkflowExecution action or StartChildWorkflowExecution decision.

        ", "ScheduleActivityTaskDecisionAttributes$taskList": "

        If set, specifies the name of the task list in which to schedule the activity task. If not specified, the defaultTaskList registered with the activity type will be used.

        A task list for this activity task must be specified either as a default for the activity type or through this field. If neither this field is set nor a default task list was specified at registration time then a fault will be returned.

        The specified string must not start or end with whitespace. It must not contain a : (colon), / (slash), | (vertical bar), or any control characters (\\u0000-\\u001f | \\u007f - \\u009f). Also, it must not contain the literal string quotarnquot.

        ", "StartChildWorkflowExecutionDecisionAttributes$taskList": "

        The name of the task list to be used for decision tasks of the child workflow execution.

        A task list for this workflow execution must be specified either as a default for the workflow type or through this parameter. If neither this parameter is set nor a default task list was specified at registration time then a fault will be returned.

        The specified string must not start or end with whitespace. It must not contain a : (colon), / (slash), | (vertical bar), or any control characters (\\u0000-\\u001f | \\u007f - \\u009f). Also, it must not contain the literal string quotarnquot.

        ", "StartChildWorkflowExecutionInitiatedEventAttributes$taskList": "

        The name of the task list used for the decision tasks of the child workflow execution.

        ", "StartWorkflowExecutionInput$taskList": "

        The task list to use for the decision tasks generated for this workflow execution. This overrides the defaultTaskList specified when registering the workflow type.

        A task list for this workflow execution must be specified either as a default for the workflow type or through this parameter. If neither this parameter is set nor a default task list was specified at registration time then a fault will be returned.

        The specified string must not start or end with whitespace. It must not contain a : (colon), / (slash), | (vertical bar), or any control characters (\\u0000-\\u001f | \\u007f - \\u009f). Also, it must not contain the literal string quotarnquot.

        ", "WorkflowExecutionConfiguration$taskList": "

        The task list used for the decision tasks generated for this workflow execution.

        ", "WorkflowExecutionContinuedAsNewEventAttributes$taskList": null, "WorkflowExecutionStartedEventAttributes$taskList": "

        The name of the task list for scheduling the decision tasks for this workflow execution.

        ", "WorkflowTypeConfiguration$defaultTaskList": "

        Optional. The default task list, specified when registering the workflow type, for decisions tasks scheduled for workflow executions of this type. This default can be overridden when starting a workflow execution using the StartWorkflowExecution action or the StartChildWorkflowExecution decision.

        " } }, "TaskPriority": { "base": null, "refs": { "ActivityTaskScheduledEventAttributes$taskPriority": "

        Optional. The priority to assign to the scheduled activity task. If set, this will override any default priority value that was assigned when the activity type was registered.

        Valid values are integers that range from Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority.

        For more information about setting task priority, see Setting Task Priority in the Amazon Simple Workflow Developer Guide.

        ", "ActivityTypeConfiguration$defaultTaskPriority": "

        Optional. The default task priority for tasks of this activity type, specified at registration. If not set, then \"0\" will be used as the default priority. This default can be overridden when scheduling an activity task.

        Valid values are integers that range from Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority.

        For more information about setting task priority, see Setting Task Priority in the Amazon Simple Workflow Developer Guide.

        ", "ContinueAsNewWorkflowExecutionDecisionAttributes$taskPriority": "

        Optional. The task priority that, if set, specifies the priority for the decision tasks for this workflow execution. This overrides the defaultTaskPriority specified when registering the workflow type. Valid values are integers that range from Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority.

        For more information about setting task priority, see Setting Task Priority in the Amazon Simple Workflow Developer Guide.

        ", "DecisionTaskScheduledEventAttributes$taskPriority": "

        Optional. A task priority that, if set, specifies the priority for this decision task. Valid values are integers that range from Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority.

        For more information about setting task priority, see Setting Task Priority in the Amazon Simple Workflow Developer Guide.

        ", "RegisterActivityTypeInput$defaultTaskPriority": "

        The default task priority to assign to the activity type. If not assigned, then \"0\" will be used. Valid values are integers that range from Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority.

        For more information about setting task priority, see Setting Task Priority in the Amazon Simple Workflow Developer Guide.

        ", "RegisterWorkflowTypeInput$defaultTaskPriority": "

        The default task priority to assign to the workflow type. If not assigned, then \"0\" will be used. Valid values are integers that range from Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority.

        For more information about setting task priority, see Setting Task Priority in the Amazon Simple Workflow Developer Guide.

        ", "ScheduleActivityTaskDecisionAttributes$taskPriority": "

        Optional. If set, specifies the priority with which the activity task is to be assigned to a worker. This overrides the defaultTaskPriority specified when registering the activity type using RegisterActivityType. Valid values are integers that range from Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority.

        For more information about setting task priority, see Setting Task Priority in the Amazon Simple Workflow Developer Guide.

        ", "StartChildWorkflowExecutionDecisionAttributes$taskPriority": "

        Optional. A task priority that, if set, specifies the priority for a decision task of this workflow execution. This overrides the defaultTaskPriority specified when registering the workflow type. Valid values are integers that range from Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority.

        For more information about setting task priority, see Setting Task Priority in the Amazon Simple Workflow Developer Guide.

        ", "StartChildWorkflowExecutionInitiatedEventAttributes$taskPriority": "

        Optional. The priority assigned for the decision tasks for this workflow execution. Valid values are integers that range from Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority.

        For more information about setting task priority, see Setting Task Priority in the Amazon Simple Workflow Developer Guide.

        ", "StartWorkflowExecutionInput$taskPriority": "

        The task priority to use for this workflow execution. This will override any default priority that was assigned when the workflow type was registered. If not set, then the default task priority for the workflow type will be used. Valid values are integers that range from Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority.

        For more information about setting task priority, see Setting Task Priority in the Amazon Simple Workflow Developer Guide.

        ", "WorkflowExecutionConfiguration$taskPriority": "

        The priority assigned to decision tasks for this workflow execution. Valid values are integers that range from Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority.

        For more information about setting task priority, see Setting Task Priority in the Amazon Simple Workflow Developer Guide.

        ", "WorkflowExecutionContinuedAsNewEventAttributes$taskPriority": null, "WorkflowExecutionStartedEventAttributes$taskPriority": null, "WorkflowTypeConfiguration$defaultTaskPriority": "

        Optional. The default task priority, specified when registering the workflow type, for all decision tasks of this workflow type. This default can be overridden when starting a workflow execution using the StartWorkflowExecution action or the StartChildWorkflowExecution decision.

        Valid values are integers that range from Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority.

        For more information about setting task priority, see Setting Task Priority in the Amazon Simple Workflow Developer Guide.

        " } }, "TaskToken": { "base": null, "refs": { "ActivityTask$taskToken": "

        The opaque string used as a handle on the task. This token is used by workers to communicate progress and response information back to the system about the task.

        ", "DecisionTask$taskToken": "

        The opaque string used as a handle on the task. This token is used by workers to communicate progress and response information back to the system about the task.

        ", "RecordActivityTaskHeartbeatInput$taskToken": "

        The taskToken of the ActivityTask.

        taskToken is generated by the service and should be treated as an opaque value. If the task is passed to another process, its taskToken must also be passed. This enables it to provide its progress and respond with results. ", "RespondActivityTaskCanceledInput$taskToken": "

        The taskToken of the ActivityTask.

        taskToken is generated by the service and should be treated as an opaque value. If the task is passed to another process, its taskToken must also be passed. This enables it to provide its progress and respond with results.", "RespondActivityTaskCompletedInput$taskToken": "

        The taskToken of the ActivityTask.

        taskToken is generated by the service and should be treated as an opaque value. If the task is passed to another process, its taskToken must also be passed. This enables it to provide its progress and respond with results.", "RespondActivityTaskFailedInput$taskToken": "

        The taskToken of the ActivityTask.

        taskToken is generated by the service and should be treated as an opaque value. If the task is passed to another process, its taskToken must also be passed. This enables it to provide its progress and respond with results.", "RespondDecisionTaskCompletedInput$taskToken": "

        The taskToken from the DecisionTask.

        taskToken is generated by the service and should be treated as an opaque value. If the task is passed to another process, its taskToken must also be passed. This enables it to provide its progress and respond with results." } }, "TerminateReason": { "base": null, "refs": { "TerminateWorkflowExecutionInput$reason": "

        Optional. A descriptive reason for terminating the workflow execution.

        ", "WorkflowExecutionTerminatedEventAttributes$reason": "

        The reason provided for the termination (if any).

        " } }, "TerminateWorkflowExecutionInput": { "base": null, "refs": { } }, "TimerCanceledEventAttributes": { "base": "

        Provides details of the TimerCanceled event.

        ", "refs": { "HistoryEvent$timerCanceledEventAttributes": "

        If the event is of type TimerCanceled then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "TimerFiredEventAttributes": { "base": "

        Provides details of the TimerFired event.

        ", "refs": { "HistoryEvent$timerFiredEventAttributes": "

        If the event is of type TimerFired then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "TimerId": { "base": null, "refs": { "CancelTimerDecisionAttributes$timerId": "

        Required. The unique ID of the timer to cancel.

        ", "CancelTimerFailedEventAttributes$timerId": "

        The timerId provided in the CancelTimer decision that failed.

        ", "StartTimerDecisionAttributes$timerId": "

        Required. The unique ID of the timer.

        The specified string must not start or end with whitespace. It must not contain a : (colon), / (slash), | (vertical bar), or any control characters (\\u0000-\\u001f | \\u007f - \\u009f). Also, it must not contain the literal string quotarnquot.

        ", "StartTimerFailedEventAttributes$timerId": "

        The timerId provided in the StartTimer decision that failed.

        ", "TimerCanceledEventAttributes$timerId": "

        The unique ID of the timer that was canceled.

        ", "TimerFiredEventAttributes$timerId": "

        The unique ID of the timer that fired.

        ", "TimerStartedEventAttributes$timerId": "

        The unique ID of the timer that was started.

        " } }, "TimerStartedEventAttributes": { "base": "

        Provides details of the TimerStarted event.

        ", "refs": { "HistoryEvent$timerStartedEventAttributes": "

        If the event is of type TimerStarted then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "Timestamp": { "base": null, "refs": { "ActivityTypeInfo$creationDate": "

        The date and time this activity type was created through RegisterActivityType.

        ", "ActivityTypeInfo$deprecationDate": "

        If DEPRECATED, the date and time DeprecateActivityType was called.

        ", "ExecutionTimeFilter$oldestDate": "

        Specifies the oldest start or close date and time to return.

        ", "ExecutionTimeFilter$latestDate": "

        Specifies the latest start or close date and time to return.

        ", "HistoryEvent$eventTimestamp": "

        The date and time when the event occurred.

        ", "WorkflowExecutionDetail$latestActivityTaskTimestamp": "

        The time when the last activity task was scheduled for this workflow execution. You can use this information to determine if the workflow has not made progress for an unusually long period of time and might require a corrective action.

        ", "WorkflowExecutionInfo$startTimestamp": "

        The time when the execution was started.

        ", "WorkflowExecutionInfo$closeTimestamp": "

        The time when the workflow execution was closed. Set only if the execution status is CLOSED.

        ", "WorkflowTypeInfo$creationDate": "

        The date when this type was registered.

        ", "WorkflowTypeInfo$deprecationDate": "

        If the type is in deprecated state, then it is set to the date when the type was deprecated.

        " } }, "Truncated": { "base": null, "refs": { "PendingTaskCount$truncated": "

        If set to true, indicates that the actual count was more than the maximum supported by this API and the count returned is the truncated value.

        ", "WorkflowExecutionCount$truncated": "

        If set to true, indicates that the actual count was more than the maximum supported by this API and the count returned is the truncated value.

        " } }, "TypeAlreadyExistsFault": { "base": "

        Returned if the type already exists in the specified domain. You will get this fault even if the existing type is in deprecated status. You can specify another version if the intent is to create a new distinct version of the type.

        ", "refs": { } }, "TypeDeprecatedFault": { "base": "

        Returned when the specified activity or workflow type was already deprecated.

        ", "refs": { } }, "UnknownResourceFault": { "base": "

        Returned when the named resource cannot be found with in the scope of this operation (region or domain). This could happen if the named resource was never created or is no longer available for this operation.

        ", "refs": { } }, "Version": { "base": null, "refs": { "ActivityType$version": "

        The version of this activity.

        The combination of activity type name and version must be unique with in a domain.", "ContinueAsNewWorkflowExecutionDecisionAttributes$workflowTypeVersion": null, "RegisterActivityTypeInput$version": "

        The version of the activity type.

        The activity type consists of the name and version, the combination of which must be unique within the domain.

        The specified string must not start or end with whitespace. It must not contain a : (colon), / (slash), | (vertical bar), or any control characters (\\u0000-\\u001f | \\u007f - \\u009f). Also, it must not contain the literal string quotarnquot.

        ", "RegisterWorkflowTypeInput$version": "

        The version of the workflow type.

        The workflow type consists of the name and version, the combination of which must be unique within the domain. To get a list of all currently registered workflow types, use the ListWorkflowTypes action.

        The specified string must not start or end with whitespace. It must not contain a : (colon), / (slash), | (vertical bar), or any control characters (\\u0000-\\u001f | \\u007f - \\u009f). Also, it must not contain the literal string quotarnquot.

        ", "WorkflowType$version": "

        Required. The version of the workflow type.

        The combination of workflow type name and version must be unique with in a domain." } }, "VersionOptional": { "base": null, "refs": { "WorkflowTypeFilter$version": "

        Version of the workflow type.

        " } }, "WorkflowExecution": { "base": "

        Represents a workflow execution.

        ", "refs": { "ActivityTask$workflowExecution": "

        The workflow execution that started this activity task.

        ", "ChildWorkflowExecutionCanceledEventAttributes$workflowExecution": "

        The child workflow execution that was canceled.

        ", "ChildWorkflowExecutionCompletedEventAttributes$workflowExecution": "

        The child workflow execution that was completed.

        ", "ChildWorkflowExecutionFailedEventAttributes$workflowExecution": "

        The child workflow execution that failed.

        ", "ChildWorkflowExecutionStartedEventAttributes$workflowExecution": "

        The child workflow execution that was started.

        ", "ChildWorkflowExecutionTerminatedEventAttributes$workflowExecution": "

        The child workflow execution that was terminated.

        ", "ChildWorkflowExecutionTimedOutEventAttributes$workflowExecution": "

        The child workflow execution that timed out.

        ", "DecisionTask$workflowExecution": "

        The workflow execution for which this decision task was created.

        ", "DescribeWorkflowExecutionInput$execution": "

        The workflow execution to describe.

        ", "ExternalWorkflowExecutionCancelRequestedEventAttributes$workflowExecution": "

        The external workflow execution to which the cancellation request was delivered.

        ", "ExternalWorkflowExecutionSignaledEventAttributes$workflowExecution": "

        The external workflow execution that the signal was delivered to.

        ", "GetWorkflowExecutionHistoryInput$execution": "

        Specifies the workflow execution for which to return the history.

        ", "WorkflowExecutionCancelRequestedEventAttributes$externalWorkflowExecution": "

        The external workflow execution for which the cancellation was requested.

        ", "WorkflowExecutionInfo$execution": "

        The workflow execution this information is about.

        ", "WorkflowExecutionInfo$parent": "

        If this workflow execution is a child of another execution then contains the workflow execution that started this execution.

        ", "WorkflowExecutionSignaledEventAttributes$externalWorkflowExecution": "

        The workflow execution that sent the signal. This is set only of the signal was sent by another workflow execution.

        ", "WorkflowExecutionStartedEventAttributes$parentWorkflowExecution": "

        The source workflow execution that started this workflow execution. The member is not set if the workflow execution was not started by a workflow.

        " } }, "WorkflowExecutionAlreadyStartedFault": { "base": "

        Returned by StartWorkflowExecution when an open execution with the same workflowId is already running in the specified domain.

        ", "refs": { } }, "WorkflowExecutionCancelRequestedCause": { "base": null, "refs": { "WorkflowExecutionCancelRequestedEventAttributes$cause": "

        If set, indicates that the request to cancel the workflow execution was automatically generated, and specifies the cause. This happens if the parent workflow execution times out or is terminated, and the child policy is set to cancel child executions.

        " } }, "WorkflowExecutionCancelRequestedEventAttributes": { "base": "

        Provides details of the WorkflowExecutionCancelRequested event.

        ", "refs": { "HistoryEvent$workflowExecutionCancelRequestedEventAttributes": "

        If the event is of type WorkflowExecutionCancelRequested then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "WorkflowExecutionCanceledEventAttributes": { "base": "

        Provides details of the WorkflowExecutionCanceled event.

        ", "refs": { "HistoryEvent$workflowExecutionCanceledEventAttributes": "

        If the event is of type WorkflowExecutionCanceled then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "WorkflowExecutionCompletedEventAttributes": { "base": "

        Provides details of the WorkflowExecutionCompleted event.

        ", "refs": { "HistoryEvent$workflowExecutionCompletedEventAttributes": "

        If the event is of type WorkflowExecutionCompleted then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "WorkflowExecutionConfiguration": { "base": "

        The configuration settings for a workflow execution including timeout values, tasklist etc. These configuration settings are determined from the defaults specified when registering the workflow type and those specified when starting the workflow execution.

        ", "refs": { "WorkflowExecutionDetail$executionConfiguration": "

        The configuration settings for this workflow execution including timeout values, tasklist etc.

        " } }, "WorkflowExecutionContinuedAsNewEventAttributes": { "base": "

        Provides details of the WorkflowExecutionContinuedAsNew event.

        ", "refs": { "HistoryEvent$workflowExecutionContinuedAsNewEventAttributes": "

        If the event is of type WorkflowExecutionContinuedAsNew then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "WorkflowExecutionCount": { "base": "

        Contains the count of workflow executions returned from CountOpenWorkflowExecutions or CountClosedWorkflowExecutions

        ", "refs": { } }, "WorkflowExecutionDetail": { "base": "

        Contains details about a workflow execution.

        ", "refs": { } }, "WorkflowExecutionFailedEventAttributes": { "base": "

        Provides details of the WorkflowExecutionFailed event.

        ", "refs": { "HistoryEvent$workflowExecutionFailedEventAttributes": "

        If the event is of type WorkflowExecutionFailed then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "WorkflowExecutionFilter": { "base": "

        Used to filter the workflow executions in visibility APIs by their workflowId.

        ", "refs": { "CountClosedWorkflowExecutionsInput$executionFilter": "

        If specified, only workflow executions matching the WorkflowId in the filter are counted.

        closeStatusFilter, executionFilter, typeFilter and tagFilter are mutually exclusive. You can specify at most one of these in a request.", "CountOpenWorkflowExecutionsInput$executionFilter": "

        If specified, only workflow executions matching the WorkflowId in the filter are counted.

        executionFilter, typeFilter and tagFilter are mutually exclusive. You can specify at most one of these in a request.", "ListClosedWorkflowExecutionsInput$executionFilter": "

        If specified, only workflow executions matching the workflow ID specified in the filter are returned.

        closeStatusFilter, executionFilter, typeFilter and tagFilter are mutually exclusive. You can specify at most one of these in a request.", "ListOpenWorkflowExecutionsInput$executionFilter": "

        If specified, only workflow executions matching the workflow ID specified in the filter are returned.

        executionFilter, typeFilter and tagFilter are mutually exclusive. You can specify at most one of these in a request." } }, "WorkflowExecutionInfo": { "base": "

        Contains information about a workflow execution.

        ", "refs": { "WorkflowExecutionDetail$executionInfo": "

        Information about the workflow execution.

        ", "WorkflowExecutionInfoList$member": null } }, "WorkflowExecutionInfoList": { "base": null, "refs": { "WorkflowExecutionInfos$executionInfos": "

        The list of workflow information structures.

        " } }, "WorkflowExecutionInfos": { "base": "

        Contains a paginated list of information about workflow executions.

        ", "refs": { } }, "WorkflowExecutionOpenCounts": { "base": "

        Contains the counts of open tasks, child workflow executions and timers for a workflow execution.

        ", "refs": { "WorkflowExecutionDetail$openCounts": "

        The number of tasks for this workflow execution. This includes open and closed tasks of all types.

        " } }, "WorkflowExecutionSignaledEventAttributes": { "base": "

        Provides details of the WorkflowExecutionSignaled event.

        ", "refs": { "HistoryEvent$workflowExecutionSignaledEventAttributes": "

        If the event is of type WorkflowExecutionSignaled then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "WorkflowExecutionStartedEventAttributes": { "base": "

        Provides details of WorkflowExecutionStarted event.

        ", "refs": { "HistoryEvent$workflowExecutionStartedEventAttributes": "

        If the event is of type WorkflowExecutionStarted then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "WorkflowExecutionTerminatedCause": { "base": null, "refs": { "WorkflowExecutionTerminatedEventAttributes$cause": "

        If set, indicates that the workflow execution was automatically terminated, and specifies the cause. This happens if the parent workflow execution times out or is terminated and the child policy is set to terminate child executions.

        " } }, "WorkflowExecutionTerminatedEventAttributes": { "base": "

        Provides details of the WorkflowExecutionTerminated event.

        ", "refs": { "HistoryEvent$workflowExecutionTerminatedEventAttributes": "

        If the event is of type WorkflowExecutionTerminated then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "WorkflowExecutionTimedOutEventAttributes": { "base": "

        Provides details of the WorkflowExecutionTimedOut event.

        ", "refs": { "HistoryEvent$workflowExecutionTimedOutEventAttributes": "

        If the event is of type WorkflowExecutionTimedOut then this member is set and provides detailed information about the event. It is not set for other event types.

        " } }, "WorkflowExecutionTimeoutType": { "base": null, "refs": { "ChildWorkflowExecutionTimedOutEventAttributes$timeoutType": "

        The type of the timeout that caused the child workflow execution to time out.

        ", "WorkflowExecutionTimedOutEventAttributes$timeoutType": "

        The type of timeout that caused this event.

        " } }, "WorkflowId": { "base": null, "refs": { "RequestCancelExternalWorkflowExecutionDecisionAttributes$workflowId": "

        Required. The workflowId of the external workflow execution to cancel.

        ", "RequestCancelExternalWorkflowExecutionFailedEventAttributes$workflowId": "

        The workflowId of the external workflow to which the cancel request was to be delivered.

        ", "RequestCancelExternalWorkflowExecutionInitiatedEventAttributes$workflowId": "

        The workflowId of the external workflow execution to be canceled.

        ", "RequestCancelWorkflowExecutionInput$workflowId": "

        The workflowId of the workflow execution to cancel.

        ", "SignalExternalWorkflowExecutionDecisionAttributes$workflowId": "

        Required. The workflowId of the workflow execution to be signaled.

        ", "SignalExternalWorkflowExecutionFailedEventAttributes$workflowId": "

        The workflowId of the external workflow execution that the signal was being delivered to.

        ", "SignalExternalWorkflowExecutionInitiatedEventAttributes$workflowId": "

        The workflowId of the external workflow execution.

        ", "SignalWorkflowExecutionInput$workflowId": "

        The workflowId of the workflow execution to signal.

        ", "StartChildWorkflowExecutionDecisionAttributes$workflowId": "

        Required. The workflowId of the workflow execution.

        The specified string must not start or end with whitespace. It must not contain a : (colon), / (slash), | (vertical bar), or any control characters (\\u0000-\\u001f | \\u007f - \\u009f). Also, it must not contain the literal string quotarnquot.

        ", "StartChildWorkflowExecutionFailedEventAttributes$workflowId": "

        The workflowId of the child workflow execution.

        ", "StartChildWorkflowExecutionInitiatedEventAttributes$workflowId": "

        The workflowId of the child workflow execution.

        ", "StartWorkflowExecutionInput$workflowId": "

        The user defined identifier associated with the workflow execution. You can use this to associate a custom identifier with the workflow execution. You may specify the same identifier if a workflow execution is logically a restart of a previous execution. You cannot have two open workflow executions with the same workflowId at the same time.

        The specified string must not start or end with whitespace. It must not contain a : (colon), / (slash), | (vertical bar), or any control characters (\\u0000-\\u001f | \\u007f - \\u009f). Also, it must not contain the literal string quotarnquot.

        ", "TerminateWorkflowExecutionInput$workflowId": "

        The workflowId of the workflow execution to terminate.

        ", "WorkflowExecution$workflowId": "

        The user defined identifier associated with the workflow execution.

        ", "WorkflowExecutionFilter$workflowId": "

        The workflowId to pass of match the criteria of this filter.

        " } }, "WorkflowType": { "base": "

        Represents a workflow type.

        ", "refs": { "ChildWorkflowExecutionCanceledEventAttributes$workflowType": "

        The type of the child workflow execution.

        ", "ChildWorkflowExecutionCompletedEventAttributes$workflowType": "

        The type of the child workflow execution.

        ", "ChildWorkflowExecutionFailedEventAttributes$workflowType": "

        The type of the child workflow execution.

        ", "ChildWorkflowExecutionStartedEventAttributes$workflowType": "

        The type of the child workflow execution.

        ", "ChildWorkflowExecutionTerminatedEventAttributes$workflowType": "

        The type of the child workflow execution.

        ", "ChildWorkflowExecutionTimedOutEventAttributes$workflowType": "

        The type of the child workflow execution.

        ", "DecisionTask$workflowType": "

        The type of the workflow execution for which this decision task was created.

        ", "DeprecateWorkflowTypeInput$workflowType": "

        The workflow type to deprecate.

        ", "DescribeWorkflowTypeInput$workflowType": "

        The workflow type to describe.

        ", "StartChildWorkflowExecutionDecisionAttributes$workflowType": "

        Required. The type of the workflow execution to be started.

        ", "StartChildWorkflowExecutionFailedEventAttributes$workflowType": "

        The workflow type provided in the StartChildWorkflowExecution decision that failed.

        ", "StartChildWorkflowExecutionInitiatedEventAttributes$workflowType": "

        The type of the child workflow execution.

        ", "StartWorkflowExecutionInput$workflowType": "

        The type of the workflow to start.

        ", "WorkflowExecutionContinuedAsNewEventAttributes$workflowType": null, "WorkflowExecutionInfo$workflowType": "

        The type of the workflow execution.

        ", "WorkflowExecutionStartedEventAttributes$workflowType": "

        The workflow type of this execution.

        ", "WorkflowTypeInfo$workflowType": "

        The workflow type this information is about.

        " } }, "WorkflowTypeConfiguration": { "base": "

        The configuration settings of a workflow type.

        ", "refs": { "WorkflowTypeDetail$configuration": "

        Configuration settings of the workflow type registered through RegisterWorkflowType

        " } }, "WorkflowTypeDetail": { "base": "

        Contains details about a workflow type.

        ", "refs": { } }, "WorkflowTypeFilter": { "base": "

        Used to filter workflow execution query results by type. Each parameter, if specified, defines a rule that must be satisfied by each returned result.

        ", "refs": { "CountClosedWorkflowExecutionsInput$typeFilter": "

        If specified, indicates the type of the workflow executions to be counted.

        closeStatusFilter, executionFilter, typeFilter and tagFilter are mutually exclusive. You can specify at most one of these in a request.", "CountOpenWorkflowExecutionsInput$typeFilter": "

        Specifies the type of the workflow executions to be counted.

        executionFilter, typeFilter and tagFilter are mutually exclusive. You can specify at most one of these in a request.", "ListClosedWorkflowExecutionsInput$typeFilter": "

        If specified, only executions of the type specified in the filter are returned.

        closeStatusFilter, executionFilter, typeFilter and tagFilter are mutually exclusive. You can specify at most one of these in a request.", "ListOpenWorkflowExecutionsInput$typeFilter": "

        If specified, only executions of the type specified in the filter are returned.

        executionFilter, typeFilter and tagFilter are mutually exclusive. You can specify at most one of these in a request." } }, "WorkflowTypeInfo": { "base": "

        Contains information about a workflow type.

        ", "refs": { "WorkflowTypeDetail$typeInfo": "

        General information about the workflow type.

        The status of the workflow type (returned in the WorkflowTypeInfo structure) can be one of the following.

        • REGISTERED: The type is registered and available. Workers supporting this type should be running.
        • DEPRECATED: The type was deprecated using DeprecateWorkflowType, but is still in use. You should keep workers supporting this type running. You cannot create new workflow executions of this type.
        ", "WorkflowTypeInfoList$member": null } }, "WorkflowTypeInfoList": { "base": null, "refs": { "WorkflowTypeInfos$typeInfos": "

        The list of workflow type information.

        " } }, "WorkflowTypeInfos": { "base": "

        Contains a paginated list of information structures about workflow types.

        ", "refs": { } } } } aws-sdk-go-1.4.22/models/apis/swf/2012-01-25/paginators-1.json000066400000000000000000000024541300374646400230340ustar00rootroot00000000000000{ "pagination": { "GetWorkflowExecutionHistory": { "limit_key": "maximumPageSize", "input_token": "nextPageToken", "output_token": "nextPageToken", "result_key": "events" }, "ListActivityTypes": { "limit_key": "maximumPageSize", "input_token": "nextPageToken", "output_token": "nextPageToken", "result_key": "typeInfos" }, "ListClosedWorkflowExecutions": { "limit_key": "maximumPageSize", "input_token": "nextPageToken", "output_token": "nextPageToken", "result_key": "executionInfos" }, "ListDomains": { "limit_key": "maximumPageSize", "input_token": "nextPageToken", "output_token": "nextPageToken", "result_key": "domainInfos" }, "ListOpenWorkflowExecutions": { "limit_key": "maximumPageSize", "input_token": "nextPageToken", "output_token": "nextPageToken", "result_key": "executionInfos" }, "ListWorkflowTypes": { "limit_key": "maximumPageSize", "input_token": "nextPageToken", "output_token": "nextPageToken", "result_key": "typeInfos" }, "PollForDecisionTask": { "limit_key": "maximumPageSize", "input_token": "nextPageToken", "output_token": "nextPageToken", "result_key": "events" } } } aws-sdk-go-1.4.22/models/apis/waf/000077500000000000000000000000001300374646400165575ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/waf/2015-08-24/000077500000000000000000000000001300374646400176165ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/waf/2015-08-24/api-2.json000066400000000000000000001436661300374646400214410ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-08-24", "endpointPrefix":"waf", "jsonVersion":"1.1", "protocol":"json", "serviceAbbreviation":"WAF", "serviceFullName":"AWS WAF", "signatureVersion":"v4", "targetPrefix":"AWSWAF_20150824" }, "operations":{ "CreateByteMatchSet":{ "name":"CreateByteMatchSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateByteMatchSetRequest"}, "output":{"shape":"CreateByteMatchSetResponse"}, "errors":[ {"shape":"WAFDisallowedNameException"}, {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFInvalidParameterException"}, {"shape":"WAFStaleDataException"}, {"shape":"WAFLimitsExceededException"} ] }, "CreateIPSet":{ "name":"CreateIPSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateIPSetRequest"}, "output":{"shape":"CreateIPSetResponse"}, "errors":[ {"shape":"WAFStaleDataException"}, {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFDisallowedNameException"}, {"shape":"WAFInvalidParameterException"}, {"shape":"WAFLimitsExceededException"} ] }, "CreateRule":{ "name":"CreateRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateRuleRequest"}, "output":{"shape":"CreateRuleResponse"}, "errors":[ {"shape":"WAFStaleDataException"}, {"shape":"WAFInternalErrorException"}, {"shape":"WAFDisallowedNameException"}, {"shape":"WAFInvalidParameterException"}, {"shape":"WAFLimitsExceededException"} ] }, "CreateSizeConstraintSet":{ "name":"CreateSizeConstraintSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSizeConstraintSetRequest"}, "output":{"shape":"CreateSizeConstraintSetResponse"}, "errors":[ {"shape":"WAFStaleDataException"}, {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFDisallowedNameException"}, {"shape":"WAFInvalidParameterException"}, {"shape":"WAFLimitsExceededException"} ] }, "CreateSqlInjectionMatchSet":{ "name":"CreateSqlInjectionMatchSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateSqlInjectionMatchSetRequest"}, "output":{"shape":"CreateSqlInjectionMatchSetResponse"}, "errors":[ {"shape":"WAFDisallowedNameException"}, {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFInvalidParameterException"}, {"shape":"WAFStaleDataException"}, {"shape":"WAFLimitsExceededException"} ] }, "CreateWebACL":{ "name":"CreateWebACL", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateWebACLRequest"}, "output":{"shape":"CreateWebACLResponse"}, "errors":[ {"shape":"WAFStaleDataException"}, {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFDisallowedNameException"}, {"shape":"WAFInvalidParameterException"}, {"shape":"WAFLimitsExceededException"} ] }, "CreateXssMatchSet":{ "name":"CreateXssMatchSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateXssMatchSetRequest"}, "output":{"shape":"CreateXssMatchSetResponse"}, "errors":[ {"shape":"WAFDisallowedNameException"}, {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFInvalidParameterException"}, {"shape":"WAFStaleDataException"}, {"shape":"WAFLimitsExceededException"} ] }, "DeleteByteMatchSet":{ "name":"DeleteByteMatchSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteByteMatchSetRequest"}, "output":{"shape":"DeleteByteMatchSetResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFNonexistentItemException"}, {"shape":"WAFReferencedItemException"}, {"shape":"WAFStaleDataException"}, {"shape":"WAFNonEmptyEntityException"} ] }, "DeleteIPSet":{ "name":"DeleteIPSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteIPSetRequest"}, "output":{"shape":"DeleteIPSetResponse"}, "errors":[ {"shape":"WAFStaleDataException"}, {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFNonexistentItemException"}, {"shape":"WAFReferencedItemException"}, {"shape":"WAFNonEmptyEntityException"} ] }, "DeleteRule":{ "name":"DeleteRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteRuleRequest"}, "output":{"shape":"DeleteRuleResponse"}, "errors":[ {"shape":"WAFStaleDataException"}, {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFNonexistentItemException"}, {"shape":"WAFReferencedItemException"}, {"shape":"WAFNonEmptyEntityException"} ] }, "DeleteSizeConstraintSet":{ "name":"DeleteSizeConstraintSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSizeConstraintSetRequest"}, "output":{"shape":"DeleteSizeConstraintSetResponse"}, "errors":[ {"shape":"WAFStaleDataException"}, {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFNonexistentItemException"}, {"shape":"WAFReferencedItemException"}, {"shape":"WAFNonEmptyEntityException"} ] }, "DeleteSqlInjectionMatchSet":{ "name":"DeleteSqlInjectionMatchSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteSqlInjectionMatchSetRequest"}, "output":{"shape":"DeleteSqlInjectionMatchSetResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFNonexistentItemException"}, {"shape":"WAFReferencedItemException"}, {"shape":"WAFStaleDataException"}, {"shape":"WAFNonEmptyEntityException"} ] }, "DeleteWebACL":{ "name":"DeleteWebACL", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteWebACLRequest"}, "output":{"shape":"DeleteWebACLResponse"}, "errors":[ {"shape":"WAFStaleDataException"}, {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFNonexistentItemException"}, {"shape":"WAFReferencedItemException"}, {"shape":"WAFNonEmptyEntityException"} ] }, "DeleteXssMatchSet":{ "name":"DeleteXssMatchSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteXssMatchSetRequest"}, "output":{"shape":"DeleteXssMatchSetResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFNonexistentItemException"}, {"shape":"WAFReferencedItemException"}, {"shape":"WAFStaleDataException"}, {"shape":"WAFNonEmptyEntityException"} ] }, "GetByteMatchSet":{ "name":"GetByteMatchSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetByteMatchSetRequest"}, "output":{"shape":"GetByteMatchSetResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFNonexistentItemException"} ] }, "GetChangeToken":{ "name":"GetChangeToken", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetChangeTokenRequest"}, "output":{"shape":"GetChangeTokenResponse"}, "errors":[ {"shape":"WAFInternalErrorException"} ] }, "GetChangeTokenStatus":{ "name":"GetChangeTokenStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetChangeTokenStatusRequest"}, "output":{"shape":"GetChangeTokenStatusResponse"}, "errors":[ {"shape":"WAFNonexistentItemException"}, {"shape":"WAFInternalErrorException"} ] }, "GetIPSet":{ "name":"GetIPSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetIPSetRequest"}, "output":{"shape":"GetIPSetResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFNonexistentItemException"} ] }, "GetRule":{ "name":"GetRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetRuleRequest"}, "output":{"shape":"GetRuleResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFNonexistentItemException"} ] }, "GetSampledRequests":{ "name":"GetSampledRequests", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetSampledRequestsRequest"}, "output":{"shape":"GetSampledRequestsResponse"}, "errors":[ {"shape":"WAFNonexistentItemException"}, {"shape":"WAFInternalErrorException"} ] }, "GetSizeConstraintSet":{ "name":"GetSizeConstraintSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetSizeConstraintSetRequest"}, "output":{"shape":"GetSizeConstraintSetResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFNonexistentItemException"} ] }, "GetSqlInjectionMatchSet":{ "name":"GetSqlInjectionMatchSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetSqlInjectionMatchSetRequest"}, "output":{"shape":"GetSqlInjectionMatchSetResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFNonexistentItemException"} ] }, "GetWebACL":{ "name":"GetWebACL", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetWebACLRequest"}, "output":{"shape":"GetWebACLResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFNonexistentItemException"} ] }, "GetXssMatchSet":{ "name":"GetXssMatchSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"GetXssMatchSetRequest"}, "output":{"shape":"GetXssMatchSetResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFNonexistentItemException"} ] }, "ListByteMatchSets":{ "name":"ListByteMatchSets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListByteMatchSetsRequest"}, "output":{"shape":"ListByteMatchSetsResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"} ] }, "ListIPSets":{ "name":"ListIPSets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListIPSetsRequest"}, "output":{"shape":"ListIPSetsResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"} ] }, "ListRules":{ "name":"ListRules", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListRulesRequest"}, "output":{"shape":"ListRulesResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"} ] }, "ListSizeConstraintSets":{ "name":"ListSizeConstraintSets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListSizeConstraintSetsRequest"}, "output":{"shape":"ListSizeConstraintSetsResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"} ] }, "ListSqlInjectionMatchSets":{ "name":"ListSqlInjectionMatchSets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListSqlInjectionMatchSetsRequest"}, "output":{"shape":"ListSqlInjectionMatchSetsResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"} ] }, "ListWebACLs":{ "name":"ListWebACLs", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListWebACLsRequest"}, "output":{"shape":"ListWebACLsResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"} ] }, "ListXssMatchSets":{ "name":"ListXssMatchSets", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ListXssMatchSetsRequest"}, "output":{"shape":"ListXssMatchSetsResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"} ] }, "UpdateByteMatchSet":{ "name":"UpdateByteMatchSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateByteMatchSetRequest"}, "output":{"shape":"UpdateByteMatchSetResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFInvalidOperationException"}, {"shape":"WAFInvalidParameterException"}, {"shape":"WAFNonexistentContainerException"}, {"shape":"WAFNonexistentItemException"}, {"shape":"WAFStaleDataException"}, {"shape":"WAFLimitsExceededException"} ] }, "UpdateIPSet":{ "name":"UpdateIPSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateIPSetRequest"}, "output":{"shape":"UpdateIPSetResponse"}, "errors":[ {"shape":"WAFStaleDataException"}, {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFInvalidOperationException"}, {"shape":"WAFInvalidParameterException"}, {"shape":"WAFNonexistentContainerException"}, {"shape":"WAFNonexistentItemException"}, {"shape":"WAFReferencedItemException"}, {"shape":"WAFLimitsExceededException"} ] }, "UpdateRule":{ "name":"UpdateRule", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateRuleRequest"}, "output":{"shape":"UpdateRuleResponse"}, "errors":[ {"shape":"WAFStaleDataException"}, {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFInvalidOperationException"}, {"shape":"WAFInvalidParameterException"}, {"shape":"WAFNonexistentContainerException"}, {"shape":"WAFNonexistentItemException"}, {"shape":"WAFReferencedItemException"}, {"shape":"WAFLimitsExceededException"} ] }, "UpdateSizeConstraintSet":{ "name":"UpdateSizeConstraintSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateSizeConstraintSetRequest"}, "output":{"shape":"UpdateSizeConstraintSetResponse"}, "errors":[ {"shape":"WAFStaleDataException"}, {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFInvalidOperationException"}, {"shape":"WAFInvalidParameterException"}, {"shape":"WAFNonexistentContainerException"}, {"shape":"WAFNonexistentItemException"}, {"shape":"WAFReferencedItemException"}, {"shape":"WAFLimitsExceededException"} ] }, "UpdateSqlInjectionMatchSet":{ "name":"UpdateSqlInjectionMatchSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateSqlInjectionMatchSetRequest"}, "output":{"shape":"UpdateSqlInjectionMatchSetResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFInvalidOperationException"}, {"shape":"WAFInvalidParameterException"}, {"shape":"WAFNonexistentContainerException"}, {"shape":"WAFNonexistentItemException"}, {"shape":"WAFStaleDataException"}, {"shape":"WAFLimitsExceededException"} ] }, "UpdateWebACL":{ "name":"UpdateWebACL", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateWebACLRequest"}, "output":{"shape":"UpdateWebACLResponse"}, "errors":[ {"shape":"WAFStaleDataException"}, {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFInvalidOperationException"}, {"shape":"WAFInvalidParameterException"}, {"shape":"WAFNonexistentContainerException"}, {"shape":"WAFNonexistentItemException"}, {"shape":"WAFReferencedItemException"}, {"shape":"WAFLimitsExceededException"} ] }, "UpdateXssMatchSet":{ "name":"UpdateXssMatchSet", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"UpdateXssMatchSetRequest"}, "output":{"shape":"UpdateXssMatchSetResponse"}, "errors":[ {"shape":"WAFInternalErrorException"}, {"shape":"WAFInvalidAccountException"}, {"shape":"WAFInvalidOperationException"}, {"shape":"WAFInvalidParameterException"}, {"shape":"WAFNonexistentContainerException"}, {"shape":"WAFNonexistentItemException"}, {"shape":"WAFStaleDataException"}, {"shape":"WAFLimitsExceededException"} ] } }, "shapes":{ "Action":{"type":"string"}, "ActivatedRule":{ "type":"structure", "required":[ "Priority", "RuleId", "Action" ], "members":{ "Priority":{"shape":"RulePriority"}, "RuleId":{"shape":"ResourceId"}, "Action":{"shape":"WafAction"} } }, "ActivatedRules":{ "type":"list", "member":{"shape":"ActivatedRule"} }, "ByteMatchSet":{ "type":"structure", "required":[ "ByteMatchSetId", "ByteMatchTuples" ], "members":{ "ByteMatchSetId":{"shape":"ResourceId"}, "Name":{"shape":"ResourceName"}, "ByteMatchTuples":{"shape":"ByteMatchTuples"} } }, "ByteMatchSetSummaries":{ "type":"list", "member":{"shape":"ByteMatchSetSummary"} }, "ByteMatchSetSummary":{ "type":"structure", "required":[ "ByteMatchSetId", "Name" ], "members":{ "ByteMatchSetId":{"shape":"ResourceId"}, "Name":{"shape":"ResourceName"} } }, "ByteMatchSetUpdate":{ "type":"structure", "required":[ "Action", "ByteMatchTuple" ], "members":{ "Action":{"shape":"ChangeAction"}, "ByteMatchTuple":{"shape":"ByteMatchTuple"} } }, "ByteMatchSetUpdates":{ "type":"list", "member":{"shape":"ByteMatchSetUpdate"} }, "ByteMatchTargetString":{"type":"blob"}, "ByteMatchTuple":{ "type":"structure", "required":[ "FieldToMatch", "TargetString", "TextTransformation", "PositionalConstraint" ], "members":{ "FieldToMatch":{"shape":"FieldToMatch"}, "TargetString":{"shape":"ByteMatchTargetString"}, "TextTransformation":{"shape":"TextTransformation"}, "PositionalConstraint":{"shape":"PositionalConstraint"} } }, "ByteMatchTuples":{ "type":"list", "member":{"shape":"ByteMatchTuple"} }, "ChangeAction":{ "type":"string", "enum":[ "INSERT", "DELETE" ] }, "ChangeToken":{ "type":"string", "min":1 }, "ChangeTokenStatus":{ "type":"string", "enum":[ "PROVISIONED", "PENDING", "INSYNC" ] }, "ComparisonOperator":{ "type":"string", "enum":[ "EQ", "NE", "LE", "LT", "GE", "GT" ] }, "Country":{"type":"string"}, "CreateByteMatchSetRequest":{ "type":"structure", "required":[ "Name", "ChangeToken" ], "members":{ "Name":{"shape":"ResourceName"}, "ChangeToken":{"shape":"ChangeToken"} } }, "CreateByteMatchSetResponse":{ "type":"structure", "members":{ "ByteMatchSet":{"shape":"ByteMatchSet"}, "ChangeToken":{"shape":"ChangeToken"} } }, "CreateIPSetRequest":{ "type":"structure", "required":[ "Name", "ChangeToken" ], "members":{ "Name":{"shape":"ResourceName"}, "ChangeToken":{"shape":"ChangeToken"} } }, "CreateIPSetResponse":{ "type":"structure", "members":{ "IPSet":{"shape":"IPSet"}, "ChangeToken":{"shape":"ChangeToken"} } }, "CreateRuleRequest":{ "type":"structure", "required":[ "Name", "MetricName", "ChangeToken" ], "members":{ "Name":{"shape":"ResourceName"}, "MetricName":{"shape":"MetricName"}, "ChangeToken":{"shape":"ChangeToken"} } }, "CreateRuleResponse":{ "type":"structure", "members":{ "Rule":{"shape":"Rule"}, "ChangeToken":{"shape":"ChangeToken"} } }, "CreateSizeConstraintSetRequest":{ "type":"structure", "required":[ "Name", "ChangeToken" ], "members":{ "Name":{"shape":"ResourceName"}, "ChangeToken":{"shape":"ChangeToken"} } }, "CreateSizeConstraintSetResponse":{ "type":"structure", "members":{ "SizeConstraintSet":{"shape":"SizeConstraintSet"}, "ChangeToken":{"shape":"ChangeToken"} } }, "CreateSqlInjectionMatchSetRequest":{ "type":"structure", "required":[ "Name", "ChangeToken" ], "members":{ "Name":{"shape":"ResourceName"}, "ChangeToken":{"shape":"ChangeToken"} } }, "CreateSqlInjectionMatchSetResponse":{ "type":"structure", "members":{ "SqlInjectionMatchSet":{"shape":"SqlInjectionMatchSet"}, "ChangeToken":{"shape":"ChangeToken"} } }, "CreateWebACLRequest":{ "type":"structure", "required":[ "Name", "MetricName", "DefaultAction", "ChangeToken" ], "members":{ "Name":{"shape":"ResourceName"}, "MetricName":{"shape":"MetricName"}, "DefaultAction":{"shape":"WafAction"}, "ChangeToken":{"shape":"ChangeToken"} } }, "CreateWebACLResponse":{ "type":"structure", "members":{ "WebACL":{"shape":"WebACL"}, "ChangeToken":{"shape":"ChangeToken"} } }, "CreateXssMatchSetRequest":{ "type":"structure", "required":[ "Name", "ChangeToken" ], "members":{ "Name":{"shape":"ResourceName"}, "ChangeToken":{"shape":"ChangeToken"} } }, "CreateXssMatchSetResponse":{ "type":"structure", "members":{ "XssMatchSet":{"shape":"XssMatchSet"}, "ChangeToken":{"shape":"ChangeToken"} } }, "DeleteByteMatchSetRequest":{ "type":"structure", "required":[ "ByteMatchSetId", "ChangeToken" ], "members":{ "ByteMatchSetId":{"shape":"ResourceId"}, "ChangeToken":{"shape":"ChangeToken"} } }, "DeleteByteMatchSetResponse":{ "type":"structure", "members":{ "ChangeToken":{"shape":"ChangeToken"} } }, "DeleteIPSetRequest":{ "type":"structure", "required":[ "IPSetId", "ChangeToken" ], "members":{ "IPSetId":{"shape":"ResourceId"}, "ChangeToken":{"shape":"ChangeToken"} } }, "DeleteIPSetResponse":{ "type":"structure", "members":{ "ChangeToken":{"shape":"ChangeToken"} } }, "DeleteRuleRequest":{ "type":"structure", "required":[ "RuleId", "ChangeToken" ], "members":{ "RuleId":{"shape":"ResourceId"}, "ChangeToken":{"shape":"ChangeToken"} } }, "DeleteRuleResponse":{ "type":"structure", "members":{ "ChangeToken":{"shape":"ChangeToken"} } }, "DeleteSizeConstraintSetRequest":{ "type":"structure", "required":[ "SizeConstraintSetId", "ChangeToken" ], "members":{ "SizeConstraintSetId":{"shape":"ResourceId"}, "ChangeToken":{"shape":"ChangeToken"} } }, "DeleteSizeConstraintSetResponse":{ "type":"structure", "members":{ "ChangeToken":{"shape":"ChangeToken"} } }, "DeleteSqlInjectionMatchSetRequest":{ "type":"structure", "required":[ "SqlInjectionMatchSetId", "ChangeToken" ], "members":{ "SqlInjectionMatchSetId":{"shape":"ResourceId"}, "ChangeToken":{"shape":"ChangeToken"} } }, "DeleteSqlInjectionMatchSetResponse":{ "type":"structure", "members":{ "ChangeToken":{"shape":"ChangeToken"} } }, "DeleteWebACLRequest":{ "type":"structure", "required":[ "WebACLId", "ChangeToken" ], "members":{ "WebACLId":{"shape":"ResourceId"}, "ChangeToken":{"shape":"ChangeToken"} } }, "DeleteWebACLResponse":{ "type":"structure", "members":{ "ChangeToken":{"shape":"ChangeToken"} } }, "DeleteXssMatchSetRequest":{ "type":"structure", "required":[ "XssMatchSetId", "ChangeToken" ], "members":{ "XssMatchSetId":{"shape":"ResourceId"}, "ChangeToken":{"shape":"ChangeToken"} } }, "DeleteXssMatchSetResponse":{ "type":"structure", "members":{ "ChangeToken":{"shape":"ChangeToken"} } }, "FieldToMatch":{ "type":"structure", "required":["Type"], "members":{ "Type":{"shape":"MatchFieldType"}, "Data":{"shape":"MatchFieldData"} } }, "GetByteMatchSetRequest":{ "type":"structure", "required":["ByteMatchSetId"], "members":{ "ByteMatchSetId":{"shape":"ResourceId"} } }, "GetByteMatchSetResponse":{ "type":"structure", "members":{ "ByteMatchSet":{"shape":"ByteMatchSet"} } }, "GetChangeTokenRequest":{ "type":"structure", "members":{ } }, "GetChangeTokenResponse":{ "type":"structure", "members":{ "ChangeToken":{"shape":"ChangeToken"} } }, "GetChangeTokenStatusRequest":{ "type":"structure", "required":["ChangeToken"], "members":{ "ChangeToken":{"shape":"ChangeToken"} } }, "GetChangeTokenStatusResponse":{ "type":"structure", "members":{ "ChangeTokenStatus":{"shape":"ChangeTokenStatus"} } }, "GetIPSetRequest":{ "type":"structure", "required":["IPSetId"], "members":{ "IPSetId":{"shape":"ResourceId"} } }, "GetIPSetResponse":{ "type":"structure", "members":{ "IPSet":{"shape":"IPSet"} } }, "GetRuleRequest":{ "type":"structure", "required":["RuleId"], "members":{ "RuleId":{"shape":"ResourceId"} } }, "GetRuleResponse":{ "type":"structure", "members":{ "Rule":{"shape":"Rule"} } }, "GetSampledRequestsRequest":{ "type":"structure", "required":[ "WebAclId", "RuleId", "TimeWindow", "MaxItems" ], "members":{ "WebAclId":{"shape":"ResourceId"}, "RuleId":{"shape":"ResourceId"}, "TimeWindow":{"shape":"TimeWindow"}, "MaxItems":{"shape":"ListMaxItems"} } }, "GetSampledRequestsResponse":{ "type":"structure", "members":{ "SampledRequests":{"shape":"SampledHTTPRequests"}, "PopulationSize":{"shape":"PopulationSize"}, "TimeWindow":{"shape":"TimeWindow"} } }, "GetSizeConstraintSetRequest":{ "type":"structure", "required":["SizeConstraintSetId"], "members":{ "SizeConstraintSetId":{"shape":"ResourceId"} } }, "GetSizeConstraintSetResponse":{ "type":"structure", "members":{ "SizeConstraintSet":{"shape":"SizeConstraintSet"} } }, "GetSqlInjectionMatchSetRequest":{ "type":"structure", "required":["SqlInjectionMatchSetId"], "members":{ "SqlInjectionMatchSetId":{"shape":"ResourceId"} } }, "GetSqlInjectionMatchSetResponse":{ "type":"structure", "members":{ "SqlInjectionMatchSet":{"shape":"SqlInjectionMatchSet"} } }, "GetWebACLRequest":{ "type":"structure", "required":["WebACLId"], "members":{ "WebACLId":{"shape":"ResourceId"} } }, "GetWebACLResponse":{ "type":"structure", "members":{ "WebACL":{"shape":"WebACL"} } }, "GetXssMatchSetRequest":{ "type":"structure", "required":["XssMatchSetId"], "members":{ "XssMatchSetId":{"shape":"ResourceId"} } }, "GetXssMatchSetResponse":{ "type":"structure", "members":{ "XssMatchSet":{"shape":"XssMatchSet"} } }, "HTTPHeader":{ "type":"structure", "members":{ "Name":{"shape":"HeaderName"}, "Value":{"shape":"HeaderValue"} } }, "HTTPHeaders":{ "type":"list", "member":{"shape":"HTTPHeader"} }, "HTTPMethod":{"type":"string"}, "HTTPRequest":{ "type":"structure", "members":{ "ClientIP":{"shape":"IPString"}, "Country":{"shape":"Country"}, "URI":{"shape":"URIString"}, "Method":{"shape":"HTTPMethod"}, "HTTPVersion":{"shape":"HTTPVersion"}, "Headers":{"shape":"HTTPHeaders"} } }, "HTTPVersion":{"type":"string"}, "HeaderName":{"type":"string"}, "HeaderValue":{"type":"string"}, "IPSet":{ "type":"structure", "required":[ "IPSetId", "IPSetDescriptors" ], "members":{ "IPSetId":{"shape":"ResourceId"}, "Name":{"shape":"ResourceName"}, "IPSetDescriptors":{"shape":"IPSetDescriptors"} } }, "IPSetDescriptor":{ "type":"structure", "required":[ "Type", "Value" ], "members":{ "Type":{"shape":"IPSetDescriptorType"}, "Value":{"shape":"IPSetDescriptorValue"} } }, "IPSetDescriptorType":{ "type":"string", "enum":[ "IPV4", "IPV6" ] }, "IPSetDescriptorValue":{"type":"string"}, "IPSetDescriptors":{ "type":"list", "member":{"shape":"IPSetDescriptor"} }, "IPSetSummaries":{ "type":"list", "member":{"shape":"IPSetSummary"} }, "IPSetSummary":{ "type":"structure", "required":[ "IPSetId", "Name" ], "members":{ "IPSetId":{"shape":"ResourceId"}, "Name":{"shape":"ResourceName"} } }, "IPSetUpdate":{ "type":"structure", "required":[ "Action", "IPSetDescriptor" ], "members":{ "Action":{"shape":"ChangeAction"}, "IPSetDescriptor":{"shape":"IPSetDescriptor"} } }, "IPSetUpdates":{ "type":"list", "member":{"shape":"IPSetUpdate"} }, "IPString":{"type":"string"}, "ListByteMatchSetsRequest":{ "type":"structure", "members":{ "NextMarker":{"shape":"NextMarker"}, "Limit":{"shape":"PaginationLimit"} } }, "ListByteMatchSetsResponse":{ "type":"structure", "members":{ "NextMarker":{"shape":"NextMarker"}, "ByteMatchSets":{"shape":"ByteMatchSetSummaries"} } }, "ListIPSetsRequest":{ "type":"structure", "members":{ "NextMarker":{"shape":"NextMarker"}, "Limit":{"shape":"PaginationLimit"} } }, "ListIPSetsResponse":{ "type":"structure", "members":{ "NextMarker":{"shape":"NextMarker"}, "IPSets":{"shape":"IPSetSummaries"} } }, "ListMaxItems":{ "type":"long", "max":100, "min":1 }, "ListRulesRequest":{ "type":"structure", "members":{ "NextMarker":{"shape":"NextMarker"}, "Limit":{"shape":"PaginationLimit"} } }, "ListRulesResponse":{ "type":"structure", "members":{ "NextMarker":{"shape":"NextMarker"}, "Rules":{"shape":"RuleSummaries"} } }, "ListSizeConstraintSetsRequest":{ "type":"structure", "members":{ "NextMarker":{"shape":"NextMarker"}, "Limit":{"shape":"PaginationLimit"} } }, "ListSizeConstraintSetsResponse":{ "type":"structure", "members":{ "NextMarker":{"shape":"NextMarker"}, "SizeConstraintSets":{"shape":"SizeConstraintSetSummaries"} } }, "ListSqlInjectionMatchSetsRequest":{ "type":"structure", "members":{ "NextMarker":{"shape":"NextMarker"}, "Limit":{"shape":"PaginationLimit"} } }, "ListSqlInjectionMatchSetsResponse":{ "type":"structure", "members":{ "NextMarker":{"shape":"NextMarker"}, "SqlInjectionMatchSets":{"shape":"SqlInjectionMatchSetSummaries"} } }, "ListWebACLsRequest":{ "type":"structure", "members":{ "NextMarker":{"shape":"NextMarker"}, "Limit":{"shape":"PaginationLimit"} } }, "ListWebACLsResponse":{ "type":"structure", "members":{ "NextMarker":{"shape":"NextMarker"}, "WebACLs":{"shape":"WebACLSummaries"} } }, "ListXssMatchSetsRequest":{ "type":"structure", "members":{ "NextMarker":{"shape":"NextMarker"}, "Limit":{"shape":"PaginationLimit"} } }, "ListXssMatchSetsResponse":{ "type":"structure", "members":{ "NextMarker":{"shape":"NextMarker"}, "XssMatchSets":{"shape":"XssMatchSetSummaries"} } }, "MatchFieldData":{"type":"string"}, "MatchFieldType":{ "type":"string", "enum":[ "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY" ] }, "MetricName":{"type":"string"}, "Negated":{"type":"boolean"}, "NextMarker":{ "type":"string", "min":1 }, "PaginationLimit":{ "type":"integer", "max":100, "min":0 }, "ParameterExceptionField":{ "type":"string", "enum":[ "CHANGE_ACTION", "WAF_ACTION", "PREDICATE_TYPE", "IPSET_TYPE", "BYTE_MATCH_FIELD_TYPE", "SQL_INJECTION_MATCH_FIELD_TYPE", "BYTE_MATCH_TEXT_TRANSFORMATION", "BYTE_MATCH_POSITIONAL_CONSTRAINT", "SIZE_CONSTRAINT_COMPARISON_OPERATOR" ] }, "ParameterExceptionParameter":{ "type":"string", "min":1 }, "ParameterExceptionReason":{ "type":"string", "enum":[ "INVALID_OPTION", "ILLEGAL_COMBINATION" ] }, "PopulationSize":{"type":"long"}, "PositionalConstraint":{ "type":"string", "enum":[ "EXACTLY", "STARTS_WITH", "ENDS_WITH", "CONTAINS", "CONTAINS_WORD" ] }, "Predicate":{ "type":"structure", "required":[ "Negated", "Type", "DataId" ], "members":{ "Negated":{"shape":"Negated"}, "Type":{"shape":"PredicateType"}, "DataId":{"shape":"ResourceId"} } }, "PredicateType":{ "type":"string", "enum":[ "IPMatch", "ByteMatch", "SqlInjectionMatch", "SizeConstraint", "XssMatch" ] }, "Predicates":{ "type":"list", "member":{"shape":"Predicate"} }, "ResourceId":{ "type":"string", "max":128, "min":1 }, "ResourceName":{ "type":"string", "max":128, "min":1 }, "Rule":{ "type":"structure", "required":[ "RuleId", "Predicates" ], "members":{ "RuleId":{"shape":"ResourceId"}, "Name":{"shape":"ResourceName"}, "MetricName":{"shape":"MetricName"}, "Predicates":{"shape":"Predicates"} } }, "RulePriority":{"type":"integer"}, "RuleSummaries":{ "type":"list", "member":{"shape":"RuleSummary"} }, "RuleSummary":{ "type":"structure", "required":[ "RuleId", "Name" ], "members":{ "RuleId":{"shape":"ResourceId"}, "Name":{"shape":"ResourceName"} } }, "RuleUpdate":{ "type":"structure", "required":[ "Action", "Predicate" ], "members":{ "Action":{"shape":"ChangeAction"}, "Predicate":{"shape":"Predicate"} } }, "RuleUpdates":{ "type":"list", "member":{"shape":"RuleUpdate"} }, "SampleWeight":{ "type":"long", "min":0 }, "SampledHTTPRequest":{ "type":"structure", "required":[ "Request", "Weight" ], "members":{ "Request":{"shape":"HTTPRequest"}, "Weight":{"shape":"SampleWeight"}, "Timestamp":{"shape":"Timestamp"}, "Action":{"shape":"Action"} } }, "SampledHTTPRequests":{ "type":"list", "member":{"shape":"SampledHTTPRequest"} }, "Size":{ "type":"long", "max":21474836480, "min":0 }, "SizeConstraint":{ "type":"structure", "required":[ "FieldToMatch", "TextTransformation", "ComparisonOperator", "Size" ], "members":{ "FieldToMatch":{"shape":"FieldToMatch"}, "TextTransformation":{"shape":"TextTransformation"}, "ComparisonOperator":{"shape":"ComparisonOperator"}, "Size":{"shape":"Size"} } }, "SizeConstraintSet":{ "type":"structure", "required":[ "SizeConstraintSetId", "SizeConstraints" ], "members":{ "SizeConstraintSetId":{"shape":"ResourceId"}, "Name":{"shape":"ResourceName"}, "SizeConstraints":{"shape":"SizeConstraints"} } }, "SizeConstraintSetSummaries":{ "type":"list", "member":{"shape":"SizeConstraintSetSummary"} }, "SizeConstraintSetSummary":{ "type":"structure", "required":[ "SizeConstraintSetId", "Name" ], "members":{ "SizeConstraintSetId":{"shape":"ResourceId"}, "Name":{"shape":"ResourceName"} } }, "SizeConstraintSetUpdate":{ "type":"structure", "required":[ "Action", "SizeConstraint" ], "members":{ "Action":{"shape":"ChangeAction"}, "SizeConstraint":{"shape":"SizeConstraint"} } }, "SizeConstraintSetUpdates":{ "type":"list", "member":{"shape":"SizeConstraintSetUpdate"} }, "SizeConstraints":{ "type":"list", "member":{"shape":"SizeConstraint"} }, "SqlInjectionMatchSet":{ "type":"structure", "required":[ "SqlInjectionMatchSetId", "SqlInjectionMatchTuples" ], "members":{ "SqlInjectionMatchSetId":{"shape":"ResourceId"}, "Name":{"shape":"ResourceName"}, "SqlInjectionMatchTuples":{"shape":"SqlInjectionMatchTuples"} } }, "SqlInjectionMatchSetSummaries":{ "type":"list", "member":{"shape":"SqlInjectionMatchSetSummary"} }, "SqlInjectionMatchSetSummary":{ "type":"structure", "required":[ "SqlInjectionMatchSetId", "Name" ], "members":{ "SqlInjectionMatchSetId":{"shape":"ResourceId"}, "Name":{"shape":"ResourceName"} } }, "SqlInjectionMatchSetUpdate":{ "type":"structure", "required":[ "Action", "SqlInjectionMatchTuple" ], "members":{ "Action":{"shape":"ChangeAction"}, "SqlInjectionMatchTuple":{"shape":"SqlInjectionMatchTuple"} } }, "SqlInjectionMatchSetUpdates":{ "type":"list", "member":{"shape":"SqlInjectionMatchSetUpdate"} }, "SqlInjectionMatchTuple":{ "type":"structure", "required":[ "FieldToMatch", "TextTransformation" ], "members":{ "FieldToMatch":{"shape":"FieldToMatch"}, "TextTransformation":{"shape":"TextTransformation"} } }, "SqlInjectionMatchTuples":{ "type":"list", "member":{"shape":"SqlInjectionMatchTuple"} }, "TextTransformation":{ "type":"string", "enum":[ "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE" ] }, "TimeWindow":{ "type":"structure", "required":[ "StartTime", "EndTime" ], "members":{ "StartTime":{"shape":"Timestamp"}, "EndTime":{"shape":"Timestamp"} } }, "Timestamp":{"type":"timestamp"}, "URIString":{"type":"string"}, "UpdateByteMatchSetRequest":{ "type":"structure", "required":[ "ByteMatchSetId", "ChangeToken", "Updates" ], "members":{ "ByteMatchSetId":{"shape":"ResourceId"}, "ChangeToken":{"shape":"ChangeToken"}, "Updates":{"shape":"ByteMatchSetUpdates"} } }, "UpdateByteMatchSetResponse":{ "type":"structure", "members":{ "ChangeToken":{"shape":"ChangeToken"} } }, "UpdateIPSetRequest":{ "type":"structure", "required":[ "IPSetId", "ChangeToken", "Updates" ], "members":{ "IPSetId":{"shape":"ResourceId"}, "ChangeToken":{"shape":"ChangeToken"}, "Updates":{"shape":"IPSetUpdates"} } }, "UpdateIPSetResponse":{ "type":"structure", "members":{ "ChangeToken":{"shape":"ChangeToken"} } }, "UpdateRuleRequest":{ "type":"structure", "required":[ "RuleId", "ChangeToken", "Updates" ], "members":{ "RuleId":{"shape":"ResourceId"}, "ChangeToken":{"shape":"ChangeToken"}, "Updates":{"shape":"RuleUpdates"} } }, "UpdateRuleResponse":{ "type":"structure", "members":{ "ChangeToken":{"shape":"ChangeToken"} } }, "UpdateSizeConstraintSetRequest":{ "type":"structure", "required":[ "SizeConstraintSetId", "ChangeToken", "Updates" ], "members":{ "SizeConstraintSetId":{"shape":"ResourceId"}, "ChangeToken":{"shape":"ChangeToken"}, "Updates":{"shape":"SizeConstraintSetUpdates"} } }, "UpdateSizeConstraintSetResponse":{ "type":"structure", "members":{ "ChangeToken":{"shape":"ChangeToken"} } }, "UpdateSqlInjectionMatchSetRequest":{ "type":"structure", "required":[ "SqlInjectionMatchSetId", "ChangeToken", "Updates" ], "members":{ "SqlInjectionMatchSetId":{"shape":"ResourceId"}, "ChangeToken":{"shape":"ChangeToken"}, "Updates":{"shape":"SqlInjectionMatchSetUpdates"} } }, "UpdateSqlInjectionMatchSetResponse":{ "type":"structure", "members":{ "ChangeToken":{"shape":"ChangeToken"} } }, "UpdateWebACLRequest":{ "type":"structure", "required":[ "WebACLId", "ChangeToken" ], "members":{ "WebACLId":{"shape":"ResourceId"}, "ChangeToken":{"shape":"ChangeToken"}, "Updates":{"shape":"WebACLUpdates"}, "DefaultAction":{"shape":"WafAction"} } }, "UpdateWebACLResponse":{ "type":"structure", "members":{ "ChangeToken":{"shape":"ChangeToken"} } }, "UpdateXssMatchSetRequest":{ "type":"structure", "required":[ "XssMatchSetId", "ChangeToken", "Updates" ], "members":{ "XssMatchSetId":{"shape":"ResourceId"}, "ChangeToken":{"shape":"ChangeToken"}, "Updates":{"shape":"XssMatchSetUpdates"} } }, "UpdateXssMatchSetResponse":{ "type":"structure", "members":{ "ChangeToken":{"shape":"ChangeToken"} } }, "WAFDisallowedNameException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true }, "WAFInternalErrorException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true, "fault":true }, "WAFInvalidAccountException":{ "type":"structure", "members":{ }, "exception":true }, "WAFInvalidOperationException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true }, "WAFInvalidParameterException":{ "type":"structure", "members":{ "field":{"shape":"ParameterExceptionField"}, "parameter":{"shape":"ParameterExceptionParameter"}, "reason":{"shape":"ParameterExceptionReason"} }, "exception":true }, "WAFLimitsExceededException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true }, "WAFNonEmptyEntityException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true }, "WAFNonexistentContainerException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true }, "WAFNonexistentItemException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true }, "WAFReferencedItemException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true }, "WAFStaleDataException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "exception":true }, "WafAction":{ "type":"structure", "required":["Type"], "members":{ "Type":{"shape":"WafActionType"} } }, "WafActionType":{ "type":"string", "enum":[ "BLOCK", "ALLOW", "COUNT" ] }, "WebACL":{ "type":"structure", "required":[ "WebACLId", "DefaultAction", "Rules" ], "members":{ "WebACLId":{"shape":"ResourceId"}, "Name":{"shape":"ResourceName"}, "MetricName":{"shape":"MetricName"}, "DefaultAction":{"shape":"WafAction"}, "Rules":{"shape":"ActivatedRules"} } }, "WebACLSummaries":{ "type":"list", "member":{"shape":"WebACLSummary"} }, "WebACLSummary":{ "type":"structure", "required":[ "WebACLId", "Name" ], "members":{ "WebACLId":{"shape":"ResourceId"}, "Name":{"shape":"ResourceName"} } }, "WebACLUpdate":{ "type":"structure", "required":[ "Action", "ActivatedRule" ], "members":{ "Action":{"shape":"ChangeAction"}, "ActivatedRule":{"shape":"ActivatedRule"} } }, "WebACLUpdates":{ "type":"list", "member":{"shape":"WebACLUpdate"} }, "XssMatchSet":{ "type":"structure", "required":[ "XssMatchSetId", "XssMatchTuples" ], "members":{ "XssMatchSetId":{"shape":"ResourceId"}, "Name":{"shape":"ResourceName"}, "XssMatchTuples":{"shape":"XssMatchTuples"} } }, "XssMatchSetSummaries":{ "type":"list", "member":{"shape":"XssMatchSetSummary"} }, "XssMatchSetSummary":{ "type":"structure", "required":[ "XssMatchSetId", "Name" ], "members":{ "XssMatchSetId":{"shape":"ResourceId"}, "Name":{"shape":"ResourceName"} } }, "XssMatchSetUpdate":{ "type":"structure", "required":[ "Action", "XssMatchTuple" ], "members":{ "Action":{"shape":"ChangeAction"}, "XssMatchTuple":{"shape":"XssMatchTuple"} } }, "XssMatchSetUpdates":{ "type":"list", "member":{"shape":"XssMatchSetUpdate"} }, "XssMatchTuple":{ "type":"structure", "required":[ "FieldToMatch", "TextTransformation" ], "members":{ "FieldToMatch":{"shape":"FieldToMatch"}, "TextTransformation":{"shape":"TextTransformation"} } }, "XssMatchTuples":{ "type":"list", "member":{"shape":"XssMatchTuple"} }, "errorMessage":{"type":"string"} } } aws-sdk-go-1.4.22/models/apis/waf/2015-08-24/docs-2.json000066400000000000000000004363041300374646400216120ustar00rootroot00000000000000{ "version": "2.0", "service": "

        This is the AWS WAF API Reference. This guide is for developers who need detailed information about the AWS WAF API actions, data types, and errors. For detailed information about AWS WAF features and an overview of how to use the AWS WAF API, see the AWS WAF Developer Guide.

        ", "operations": { "CreateByteMatchSet": "

        Creates a ByteMatchSet. You then use UpdateByteMatchSet to identify the part of a web request that you want AWS WAF to inspect, such as the values of the User-Agent header or the query string. For example, you can create a ByteMatchSet that matches any requests with User-Agent headers that contain the string BadBot. You can then configure AWS WAF to reject those requests.

        To create and configure a ByteMatchSet, perform the following steps:

        1. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a CreateByteMatchSet request.

        2. Submit a CreateByteMatchSet request.

        3. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of an UpdateByteMatchSet request.

        4. Submit an UpdateByteMatchSet request to specify the part of the request that you want AWS WAF to inspect (for example, the header or the URI) and the value that you want AWS WAF to watch for.

        For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.

        ", "CreateIPSet": "

        Creates an IPSet, which you use to specify which web requests you want to allow or block based on the IP addresses that the requests originate from. For example, if you're receiving a lot of requests from one or more individual IP addresses or one or more ranges of IP addresses and you want to block the requests, you can create an IPSet that contains those IP addresses and then configure AWS WAF to block the requests.

        To create and configure an IPSet, perform the following steps:

        1. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a CreateIPSet request.

        2. Submit a CreateIPSet request.

        3. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of an UpdateIPSet request.

        4. Submit an UpdateIPSet request to specify the IP addresses that you want AWS WAF to watch for.

        For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.

        ", "CreateRule": "

        Creates a Rule, which contains the IPSet objects, ByteMatchSet objects, and other predicates that identify the requests that you want to block. If you add more than one predicate to a Rule, a request must match all of the specifications to be allowed or blocked. For example, suppose you add the following to a Rule:

        • An IPSet that matches the IP address 192.0.2.44/32

        • A ByteMatchSet that matches BadBot in the User-Agent header

        You then add the Rule to a WebACL and specify that you want to blocks requests that satisfy the Rule. For a request to be blocked, it must come from the IP address 192.0.2.44 and the User-Agent header in the request must contain the value BadBot.

        To create and configure a Rule, perform the following steps:

        1. Create and update the predicates that you want to include in the Rule. For more information, see CreateByteMatchSet, CreateIPSet, and CreateSqlInjectionMatchSet.

        2. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a CreateRule request.

        3. Submit a CreateRule request.

        4. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of an UpdateRule request.

        5. Submit an UpdateRule request to specify the predicates that you want to include in the Rule.

        6. Create and update a WebACL that contains the Rule. For more information, see CreateWebACL.

        For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.

        ", "CreateSizeConstraintSet": "

        Creates a SizeConstraintSet. You then use UpdateSizeConstraintSet to identify the part of a web request that you want AWS WAF to check for length, such as the length of the User-Agent header or the length of the query string. For example, you can create a SizeConstraintSet that matches any requests that have a query string that is longer than 100 bytes. You can then configure AWS WAF to reject those requests.

        To create and configure a SizeConstraintSet, perform the following steps:

        1. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a CreateSizeConstraintSet request.

        2. Submit a CreateSizeConstraintSet request.

        3. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of an UpdateSizeConstraintSet request.

        4. Submit an UpdateSizeConstraintSet request to specify the part of the request that you want AWS WAF to inspect (for example, the header or the URI) and the value that you want AWS WAF to watch for.

        For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.

        ", "CreateSqlInjectionMatchSet": "

        Creates a SqlInjectionMatchSet, which you use to allow, block, or count requests that contain snippets of SQL code in a specified part of web requests. AWS WAF searches for character sequences that are likely to be malicious strings.

        To create and configure a SqlInjectionMatchSet, perform the following steps:

        1. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a CreateSqlInjectionMatchSet request.

        2. Submit a CreateSqlInjectionMatchSet request.

        3. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of an UpdateSqlInjectionMatchSet request.

        4. Submit an UpdateSqlInjectionMatchSet request to specify the parts of web requests in which you want to allow, block, or count malicious SQL code.

        For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.

        ", "CreateWebACL": "

        Creates a WebACL, which contains the Rules that identify the CloudFront web requests that you want to allow, block, or count. AWS WAF evaluates Rules in order based on the value of Priority for each Rule.

        You also specify a default action, either ALLOW or BLOCK. If a web request doesn't match any of the Rules in a WebACL, AWS WAF responds to the request with the default action.

        To create and configure a WebACL, perform the following steps:

        1. Create and update the ByteMatchSet objects and other predicates that you want to include in Rules. For more information, see CreateByteMatchSet, UpdateByteMatchSet, CreateIPSet, UpdateIPSet, CreateSqlInjectionMatchSet, and UpdateSqlInjectionMatchSet.

        2. Create and update the Rules that you want to include in the WebACL. For more information, see CreateRule and UpdateRule.

        3. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a CreateWebACL request.

        4. Submit a CreateWebACL request.

        5. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of an UpdateWebACL request.

        6. Submit an UpdateWebACL request to specify the Rules that you want to include in the WebACL, to specify the default action, and to associate the WebACL with a CloudFront distribution.

        For more information about how to use the AWS WAF API, see the AWS WAF Developer Guide.

        ", "CreateXssMatchSet": "

        Creates an XssMatchSet, which you use to allow, block, or count requests that contain cross-site scripting attacks in the specified part of web requests. AWS WAF searches for character sequences that are likely to be malicious strings.

        To create and configure an XssMatchSet, perform the following steps:

        1. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a CreateXssMatchSet request.

        2. Submit a CreateXssMatchSet request.

        3. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of an UpdateXssMatchSet request.

        4. Submit an UpdateXssMatchSet request to specify the parts of web requests in which you want to allow, block, or count cross-site scripting attacks.

        For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.

        ", "DeleteByteMatchSet": "

        Permanently deletes a ByteMatchSet. You can't delete a ByteMatchSet if it's still used in any Rules or if it still includes any ByteMatchTuple objects (any filters).

        If you just want to remove a ByteMatchSet from a Rule, use UpdateRule.

        To permanently delete a ByteMatchSet, perform the following steps:

        1. Update the ByteMatchSet to remove filters, if any. For more information, see UpdateByteMatchSet.

        2. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a DeleteByteMatchSet request.

        3. Submit a DeleteByteMatchSet request.

        ", "DeleteIPSet": "

        Permanently deletes an IPSet. You can't delete an IPSet if it's still used in any Rules or if it still includes any IP addresses.

        If you just want to remove an IPSet from a Rule, use UpdateRule.

        To permanently delete an IPSet from AWS WAF, perform the following steps:

        1. Update the IPSet to remove IP address ranges, if any. For more information, see UpdateIPSet.

        2. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a DeleteIPSet request.

        3. Submit a DeleteIPSet request.

        ", "DeleteRule": "

        Permanently deletes a Rule. You can't delete a Rule if it's still used in any WebACL objects or if it still includes any predicates, such as ByteMatchSet objects.

        If you just want to remove a Rule from a WebACL, use UpdateWebACL.

        To permanently delete a Rule from AWS WAF, perform the following steps:

        1. Update the Rule to remove predicates, if any. For more information, see UpdateRule.

        2. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a DeleteRule request.

        3. Submit a DeleteRule request.

        ", "DeleteSizeConstraintSet": "

        Permanently deletes a SizeConstraintSet. You can't delete a SizeConstraintSet if it's still used in any Rules or if it still includes any SizeConstraint objects (any filters).

        If you just want to remove a SizeConstraintSet from a Rule, use UpdateRule.

        To permanently delete a SizeConstraintSet, perform the following steps:

        1. Update the SizeConstraintSet to remove filters, if any. For more information, see UpdateSizeConstraintSet.

        2. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a DeleteSizeConstraintSet request.

        3. Submit a DeleteSizeConstraintSet request.

        ", "DeleteSqlInjectionMatchSet": "

        Permanently deletes a SqlInjectionMatchSet. You can't delete a SqlInjectionMatchSet if it's still used in any Rules or if it still contains any SqlInjectionMatchTuple objects.

        If you just want to remove a SqlInjectionMatchSet from a Rule, use UpdateRule.

        To permanently delete a SqlInjectionMatchSet from AWS WAF, perform the following steps:

        1. Update the SqlInjectionMatchSet to remove filters, if any. For more information, see UpdateSqlInjectionMatchSet.

        2. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a DeleteSqlInjectionMatchSet request.

        3. Submit a DeleteSqlInjectionMatchSet request.

        ", "DeleteWebACL": "

        Permanently deletes a WebACL. You can't delete a WebACL if it still contains any Rules.

        To delete a WebACL, perform the following steps:

        1. Update the WebACL to remove Rules, if any. For more information, see UpdateWebACL.

        2. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a DeleteWebACL request.

        3. Submit a DeleteWebACL request.

        ", "DeleteXssMatchSet": "

        Permanently deletes an XssMatchSet. You can't delete an XssMatchSet if it's still used in any Rules or if it still contains any XssMatchTuple objects.

        If you just want to remove an XssMatchSet from a Rule, use UpdateRule.

        To permanently delete an XssMatchSet from AWS WAF, perform the following steps:

        1. Update the XssMatchSet to remove filters, if any. For more information, see UpdateXssMatchSet.

        2. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a DeleteXssMatchSet request.

        3. Submit a DeleteXssMatchSet request.

        ", "GetByteMatchSet": "

        Returns the ByteMatchSet specified by ByteMatchSetId.

        ", "GetChangeToken": "

        When you want to create, update, or delete AWS WAF objects, get a change token and include the change token in the create, update, or delete request. Change tokens ensure that your application doesn't submit conflicting requests to AWS WAF.

        Each create, update, or delete request must use a unique change token. If your application submits a GetChangeToken request and then submits a second GetChangeToken request before submitting a create, update, or delete request, the second GetChangeToken request returns the same value as the first GetChangeToken request.

        When you use a change token in a create, update, or delete request, the status of the change token changes to PENDING, which indicates that AWS WAF is propagating the change to all AWS WAF servers. Use GetChangeTokenStatus to determine the status of your change token.

        ", "GetChangeTokenStatus": "

        Returns the status of a ChangeToken that you got by calling GetChangeToken. ChangeTokenStatus is one of the following values:

        • PROVISIONED: You requested the change token by calling GetChangeToken, but you haven't used it yet in a call to create, update, or delete an AWS WAF object.

        • PENDING: AWS WAF is propagating the create, update, or delete request to all AWS WAF servers.

        • IN_SYNC: Propagation is complete.

        ", "GetIPSet": "

        Returns the IPSet that is specified by IPSetId.

        ", "GetRule": "

        Returns the Rule that is specified by the RuleId that you included in the GetRule request.

        ", "GetSampledRequests": "

        Gets detailed information about a specified number of requests--a sample--that AWS WAF randomly selects from among the first 5,000 requests that your AWS resource received during a time range that you choose. You can specify a sample size of up to 100 requests, and you can specify any time range in the previous three hours.

        GetSampledRequests returns a time range, which is usually the time range that you specified. However, if your resource (such as a CloudFront distribution) received 5,000 requests before the specified time range elapsed, GetSampledRequests returns an updated time range. This new time range indicates the actual period during which AWS WAF selected the requests in the sample.

        ", "GetSizeConstraintSet": "

        Returns the SizeConstraintSet specified by SizeConstraintSetId.

        ", "GetSqlInjectionMatchSet": "

        Returns the SqlInjectionMatchSet that is specified by SqlInjectionMatchSetId.

        ", "GetWebACL": "

        Returns the WebACL that is specified by WebACLId.

        ", "GetXssMatchSet": "

        Returns the XssMatchSet that is specified by XssMatchSetId.

        ", "ListByteMatchSets": "

        Returns an array of ByteMatchSetSummary objects.

        ", "ListIPSets": "

        Returns an array of IPSetSummary objects in the response.

        ", "ListRules": "

        Returns an array of RuleSummary objects.

        ", "ListSizeConstraintSets": "

        Returns an array of SizeConstraintSetSummary objects.

        ", "ListSqlInjectionMatchSets": "

        Returns an array of SqlInjectionMatchSet objects.

        ", "ListWebACLs": "

        Returns an array of WebACLSummary objects in the response.

        ", "ListXssMatchSets": "

        Returns an array of XssMatchSet objects.

        ", "UpdateByteMatchSet": "

        Inserts or deletes ByteMatchTuple objects (filters) in a ByteMatchSet. For each ByteMatchTuple object, you specify the following values:

        • Whether to insert or delete the object from the array. If you want to change a ByteMatchSetUpdate object, you delete the existing object and add a new one.

        • The part of a web request that you want AWS WAF to inspect, such as a query string or the value of the User-Agent header.

        • The bytes (typically a string that corresponds with ASCII characters) that you want AWS WAF to look for. For more information, including how you specify the values for the AWS WAF API and the AWS CLI or SDKs, see TargetString in the ByteMatchTuple data type.

        • Where to look, such as at the beginning or the end of a query string.

        • Whether to perform any conversions on the request, such as converting it to lowercase, before inspecting it for the specified string.

        For example, you can add a ByteMatchSetUpdate object that matches web requests in which User-Agent headers contain the string BadBot. You can then configure AWS WAF to block those requests.

        To create and configure a ByteMatchSet, perform the following steps:

        1. Create a ByteMatchSet. For more information, see CreateByteMatchSet.

        2. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of an UpdateByteMatchSet request.

        3. Submit an UpdateByteMatchSet request to specify the part of the request that you want AWS WAF to inspect (for example, the header or the URI) and the value that you want AWS WAF to watch for.

        For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.

        ", "UpdateIPSet": "

        Inserts or deletes IPSetDescriptor objects in an IPSet. For each IPSetDescriptor object, you specify the following values:

        • Whether to insert or delete the object from the array. If you want to change an IPSetDescriptor object, you delete the existing object and add a new one.

        • The IP address version, IPv4.

        • The IP address in CIDR notation, for example, 192.0.2.0/24 (for the range of IP addresses from 192.0.2.0 to 192.0.2.255) or 192.0.2.44/32 (for the individual IP address 192.0.2.44).

        AWS WAF supports /8, /16, /24, and /32 IP address ranges. For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

        You use an IPSet to specify which web requests you want to allow or block based on the IP addresses that the requests originated from. For example, if you're receiving a lot of requests from one or a small number of IP addresses and you want to block the requests, you can create an IPSet that specifies those IP addresses, and then configure AWS WAF to block the requests.

        To create and configure an IPSet, perform the following steps:

        1. Submit a CreateIPSet request.

        2. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of an UpdateIPSet request.

        3. Submit an UpdateIPSet request to specify the IP addresses that you want AWS WAF to watch for.

        When you update an IPSet, you specify the IP addresses that you want to add and/or the IP addresses that you want to delete. If you want to change an IP address, you delete the existing IP address and add the new one.

        For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.

        ", "UpdateRule": "

        Inserts or deletes Predicate objects in a Rule. Each Predicate object identifies a predicate, such as a ByteMatchSet or an IPSet, that specifies the web requests that you want to allow, block, or count. If you add more than one predicate to a Rule, a request must match all of the specifications to be allowed, blocked, or counted. For example, suppose you add the following to a Rule:

        • A ByteMatchSet that matches the value BadBot in the User-Agent header

        • An IPSet that matches the IP address 192.0.2.44

        You then add the Rule to a WebACL and specify that you want to block requests that satisfy the Rule. For a request to be blocked, the User-Agent header in the request must contain the value BadBot and the request must originate from the IP address 192.0.2.44.

        To create and configure a Rule, perform the following steps:

        1. Create and update the predicates that you want to include in the Rule.

        2. Create the Rule. See CreateRule.

        3. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of an UpdateRule request.

        4. Submit an UpdateRule request to add predicates to the Rule.

        5. Create and update a WebACL that contains the Rule. See CreateWebACL.

        If you want to replace one ByteMatchSet or IPSet with another, you delete the existing one and add the new one.

        For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.

        ", "UpdateSizeConstraintSet": "

        Inserts or deletes SizeConstraint objects (filters) in a SizeConstraintSet. For each SizeConstraint object, you specify the following values:

        • Whether to insert or delete the object from the array. If you want to change a SizeConstraintSetUpdate object, you delete the existing object and add a new one.

        • The part of a web request that you want AWS WAF to evaluate, such as the length of a query string or the length of the User-Agent header.

        • Whether to perform any transformations on the request, such as converting it to lowercase, before checking its length. Note that transformations of the request body are not supported because the AWS resource forwards only the first 8192 bytes of your request to AWS WAF.

        • A ComparisonOperator used for evaluating the selected part of the request against the specified Size, such as equals, greater than, less than, and so on.

        • The length, in bytes, that you want AWS WAF to watch for in selected part of the request. The length is computed after applying the transformation.

        For example, you can add a SizeConstraintSetUpdate object that matches web requests in which the length of the User-Agent header is greater than 100 bytes. You can then configure AWS WAF to block those requests.

        To create and configure a SizeConstraintSet, perform the following steps:

        1. Create a SizeConstraintSet. For more information, see CreateSizeConstraintSet.

        2. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of an UpdateSizeConstraintSet request.

        3. Submit an UpdateSizeConstraintSet request to specify the part of the request that you want AWS WAF to inspect (for example, the header or the URI) and the value that you want AWS WAF to watch for.

        For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.

        ", "UpdateSqlInjectionMatchSet": "

        Inserts or deletes SqlInjectionMatchTuple objects (filters) in a SqlInjectionMatchSet. For each SqlInjectionMatchTuple object, you specify the following values:

        • Action: Whether to insert the object into or delete the object from the array. To change a SqlInjectionMatchTuple, you delete the existing object and add a new one.

        • FieldToMatch: The part of web requests that you want AWS WAF to inspect and, if you want AWS WAF to inspect a header, the name of the header.

        • TextTransformation: Which text transformation, if any, to perform on the web request before inspecting the request for snippets of malicious SQL code.

        You use SqlInjectionMatchSet objects to specify which CloudFront requests you want to allow, block, or count. For example, if you're receiving requests that contain snippets of SQL code in the query string and you want to block the requests, you can create a SqlInjectionMatchSet with the applicable settings, and then configure AWS WAF to block the requests.

        To create and configure a SqlInjectionMatchSet, perform the following steps:

        1. Submit a CreateSqlInjectionMatchSet request.

        2. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of an UpdateIPSet request.

        3. Submit an UpdateSqlInjectionMatchSet request to specify the parts of web requests that you want AWS WAF to inspect for snippets of SQL code.

        For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.

        ", "UpdateWebACL": "

        Inserts or deletes ActivatedRule objects in a WebACL. Each Rule identifies web requests that you want to allow, block, or count. When you update a WebACL, you specify the following values:

        • A default action for the WebACL, either ALLOW or BLOCK. AWS WAF performs the default action if a request doesn't match the criteria in any of the Rules in a WebACL.

        • The Rules that you want to add and/or delete. If you want to replace one Rule with another, you delete the existing Rule and add the new one.

        • For each Rule, whether you want AWS WAF to allow requests, block requests, or count requests that match the conditions in the Rule.

        • The order in which you want AWS WAF to evaluate the Rules in a WebACL. If you add more than one Rule to a WebACL, AWS WAF evaluates each request against the Rules in order based on the value of Priority. (The Rule that has the lowest value for Priority is evaluated first.) When a web request matches all of the predicates (such as ByteMatchSets and IPSets) in a Rule, AWS WAF immediately takes the corresponding action, allow or block, and doesn't evaluate the request against the remaining Rules in the WebACL, if any.

        • The CloudFront distribution that you want to associate with the WebACL.

        To create and configure a WebACL, perform the following steps:

        1. Create and update the predicates that you want to include in Rules. For more information, see CreateByteMatchSet, UpdateByteMatchSet, CreateIPSet, UpdateIPSet, CreateSqlInjectionMatchSet, and UpdateSqlInjectionMatchSet.

        2. Create and update the Rules that you want to include in the WebACL. For more information, see CreateRule and UpdateRule.

        3. Create a WebACL. See CreateWebACL.

        4. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of an UpdateWebACL request.

        5. Submit an UpdateWebACL request to specify the Rules that you want to include in the WebACL, to specify the default action, and to associate the WebACL with a CloudFront distribution.

        For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.

        ", "UpdateXssMatchSet": "

        Inserts or deletes XssMatchTuple objects (filters) in an XssMatchSet. For each XssMatchTuple object, you specify the following values:

        • Action: Whether to insert the object into or delete the object from the array. To change a XssMatchTuple, you delete the existing object and add a new one.

        • FieldToMatch: The part of web requests that you want AWS WAF to inspect and, if you want AWS WAF to inspect a header, the name of the header.

        • TextTransformation: Which text transformation, if any, to perform on the web request before inspecting the request for cross-site scripting attacks.

        You use XssMatchSet objects to specify which CloudFront requests you want to allow, block, or count. For example, if you're receiving requests that contain cross-site scripting attacks in the request body and you want to block the requests, you can create an XssMatchSet with the applicable settings, and then configure AWS WAF to block the requests.

        To create and configure an XssMatchSet, perform the following steps:

        1. Submit a CreateXssMatchSet request.

        2. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of an UpdateIPSet request.

        3. Submit an UpdateXssMatchSet request to specify the parts of web requests that you want AWS WAF to inspect for cross-site scripting attacks.

        For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.

        " }, "shapes": { "Action": { "base": null, "refs": { "SampledHTTPRequest$Action": "

        The action for the Rule that the request matched: ALLOW, BLOCK, or COUNT.

        " } }, "ActivatedRule": { "base": "

        The ActivatedRule object in an UpdateWebACL request specifies a Rule that you want to insert or delete, the priority of the Rule in the WebACL, and the action that you want AWS WAF to take when a web request matches the Rule (ALLOW, BLOCK, or COUNT).

        To specify whether to insert or delete a Rule, use the Action parameter in the WebACLUpdate data type.

        ", "refs": { "ActivatedRules$member": null, "WebACLUpdate$ActivatedRule": null } }, "ActivatedRules": { "base": null, "refs": { "WebACL$Rules": "

        An array that contains the action for each Rule in a WebACL, the priority of the Rule, and the ID of the Rule.

        " } }, "ByteMatchSet": { "base": "

        In a GetByteMatchSet request, ByteMatchSet is a complex type that contains the ByteMatchSetId and Name of a ByteMatchSet, and the values that you specified when you updated the ByteMatchSet.

        A complex type that contains ByteMatchTuple objects, which specify the parts of web requests that you want AWS WAF to inspect and the values that you want AWS WAF to search for. If a ByteMatchSet contains more than one ByteMatchTuple object, a request needs to match the settings in only one ByteMatchTuple to be considered a match.

        ", "refs": { "CreateByteMatchSetResponse$ByteMatchSet": "

        A ByteMatchSet that contains no ByteMatchTuple objects.

        ", "GetByteMatchSetResponse$ByteMatchSet": "

        Information about the ByteMatchSet that you specified in the GetByteMatchSet request. For more information, see the following topics:

        • ByteMatchSet: Contains ByteMatchSetId, ByteMatchTuples, and Name

        • ByteMatchTuples: Contains an array of ByteMatchTuple objects. Each ByteMatchTuple object contains FieldToMatch, PositionalConstraint, TargetString, and TextTransformation

        • FieldToMatch: Contains Data and Type

        " } }, "ByteMatchSetSummaries": { "base": null, "refs": { "ListByteMatchSetsResponse$ByteMatchSets": "

        An array of ByteMatchSetSummary objects.

        " } }, "ByteMatchSetSummary": { "base": "

        Returned by ListByteMatchSets. Each ByteMatchSetSummary object includes the Name and ByteMatchSetId for one ByteMatchSet.

        ", "refs": { "ByteMatchSetSummaries$member": null } }, "ByteMatchSetUpdate": { "base": "

        In an UpdateByteMatchSet request, ByteMatchSetUpdate specifies whether to insert or delete a ByteMatchTuple and includes the settings for the ByteMatchTuple.

        ", "refs": { "ByteMatchSetUpdates$member": null } }, "ByteMatchSetUpdates": { "base": null, "refs": { "UpdateByteMatchSetRequest$Updates": "

        An array of ByteMatchSetUpdate objects that you want to insert into or delete from a ByteMatchSet. For more information, see the applicable data types:

        " } }, "ByteMatchTargetString": { "base": null, "refs": { "ByteMatchTuple$TargetString": "

        The value that you want AWS WAF to search for. AWS WAF searches for the specified string in the part of web requests that you specified in FieldToMatch. The maximum length of the value is 50 bytes.

        Valid values depend on the values that you specified for FieldToMatch:

        • HEADER: The value that you want AWS WAF to search for in the request header that you specified in FieldToMatch, for example, the value of the User-Agent or Referer header.

        • METHOD: The HTTP method, which indicates the type of operation specified in the request. CloudFront supports the following methods: DELETE, GET, HEAD, OPTIONS, PATCH, POST, and PUT.

        • QUERY_STRING: The value that you want AWS WAF to search for in the query string, which is the part of a URL that appears after a ? character.

        • URI: The value that you want AWS WAF to search for in the part of a URL that identifies a resource, for example, /images/daily-ad.jpg.

        • BODY: The part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form. The request body immediately follows the request headers. Note that only the first 8192 bytes of the request body are forwarded to AWS WAF for inspection. To allow or block requests based on the length of the body, you can create a size constraint set. For more information, see CreateSizeConstraintSet.

        If TargetString includes alphabetic characters A-Z and a-z, note that the value is case sensitive.

        If you're using the AWS WAF API

        Specify a base64-encoded version of the value. The maximum length of the value before you base64-encode it is 50 bytes.

        For example, suppose the value of Type is HEADER and the value of Data is User-Agent. If you want to search the User-Agent header for the value BadBot, you base64-encode BadBot using MIME base64 encoding and include the resulting value, QmFkQm90, in the value of TargetString.

        If you're using the AWS CLI or one of the AWS SDKs

        The value that you want AWS WAF to search for. The SDK automatically base64 encodes the value.

        " } }, "ByteMatchTuple": { "base": "

        The bytes (typically a string that corresponds with ASCII characters) that you want AWS WAF to search for in web requests, the location in requests that you want AWS WAF to search, and other settings.

        ", "refs": { "ByteMatchSetUpdate$ByteMatchTuple": "

        Information about the part of a web request that you want AWS WAF to inspect and the value that you want AWS WAF to search for. If you specify DELETE for the value of Action, the ByteMatchTuple values must exactly match the values in the ByteMatchTuple that you want to delete from the ByteMatchSet.

        ", "ByteMatchTuples$member": null } }, "ByteMatchTuples": { "base": null, "refs": { "ByteMatchSet$ByteMatchTuples": "

        Specifies the bytes (typically a string that corresponds with ASCII characters) that you want AWS WAF to search for in web requests, the location in requests that you want AWS WAF to search, and other settings.

        " } }, "ChangeAction": { "base": null, "refs": { "ByteMatchSetUpdate$Action": "

        Specifies whether to insert or delete a ByteMatchTuple.

        ", "IPSetUpdate$Action": "

        Specifies whether to insert or delete an IP address with UpdateIPSet.

        ", "RuleUpdate$Action": "

        Specify INSERT to add a Predicate to a Rule. Use DELETE to remove a Predicate from a Rule.

        ", "SizeConstraintSetUpdate$Action": "

        Specify INSERT to add a SizeConstraintSetUpdate to a SizeConstraintSet. Use DELETE to remove a SizeConstraintSetUpdate from a SizeConstraintSet.

        ", "SqlInjectionMatchSetUpdate$Action": "

        Specify INSERT to add a SqlInjectionMatchSetUpdate to a SqlInjectionMatchSet. Use DELETE to remove a SqlInjectionMatchSetUpdate from a SqlInjectionMatchSet.

        ", "WebACLUpdate$Action": "

        Specifies whether to insert a Rule into or delete a Rule from a WebACL.

        ", "XssMatchSetUpdate$Action": "

        Specify INSERT to add a XssMatchSetUpdate to an XssMatchSet. Use DELETE to remove a XssMatchSetUpdate from an XssMatchSet.

        " } }, "ChangeToken": { "base": null, "refs": { "CreateByteMatchSetRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "CreateByteMatchSetResponse$ChangeToken": "

        The ChangeToken that you used to submit the CreateByteMatchSet request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "CreateIPSetRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "CreateIPSetResponse$ChangeToken": "

        The ChangeToken that you used to submit the CreateIPSet request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "CreateRuleRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "CreateRuleResponse$ChangeToken": "

        The ChangeToken that you used to submit the CreateRule request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "CreateSizeConstraintSetRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "CreateSizeConstraintSetResponse$ChangeToken": "

        The ChangeToken that you used to submit the CreateSizeConstraintSet request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "CreateSqlInjectionMatchSetRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "CreateSqlInjectionMatchSetResponse$ChangeToken": "

        The ChangeToken that you used to submit the CreateSqlInjectionMatchSet request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "CreateWebACLRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "CreateWebACLResponse$ChangeToken": "

        The ChangeToken that you used to submit the CreateWebACL request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "CreateXssMatchSetRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "CreateXssMatchSetResponse$ChangeToken": "

        The ChangeToken that you used to submit the CreateXssMatchSet request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "DeleteByteMatchSetRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "DeleteByteMatchSetResponse$ChangeToken": "

        The ChangeToken that you used to submit the DeleteByteMatchSet request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "DeleteIPSetRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "DeleteIPSetResponse$ChangeToken": "

        The ChangeToken that you used to submit the DeleteIPSet request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "DeleteRuleRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "DeleteRuleResponse$ChangeToken": "

        The ChangeToken that you used to submit the DeleteRule request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "DeleteSizeConstraintSetRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "DeleteSizeConstraintSetResponse$ChangeToken": "

        The ChangeToken that you used to submit the DeleteSizeConstraintSet request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "DeleteSqlInjectionMatchSetRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "DeleteSqlInjectionMatchSetResponse$ChangeToken": "

        The ChangeToken that you used to submit the DeleteSqlInjectionMatchSet request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "DeleteWebACLRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "DeleteWebACLResponse$ChangeToken": "

        The ChangeToken that you used to submit the DeleteWebACL request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "DeleteXssMatchSetRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "DeleteXssMatchSetResponse$ChangeToken": "

        The ChangeToken that you used to submit the DeleteXssMatchSet request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "GetChangeTokenResponse$ChangeToken": "

        The ChangeToken that you used in the request. Use this value in a GetChangeTokenStatus request to get the current status of the request.

        ", "GetChangeTokenStatusRequest$ChangeToken": "

        The change token for which you want to get the status. This change token was previously returned in the GetChangeToken response.

        ", "UpdateByteMatchSetRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "UpdateByteMatchSetResponse$ChangeToken": "

        The ChangeToken that you used to submit the UpdateByteMatchSet request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "UpdateIPSetRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "UpdateIPSetResponse$ChangeToken": "

        The ChangeToken that you used to submit the UpdateIPSet request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "UpdateRuleRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "UpdateRuleResponse$ChangeToken": "

        The ChangeToken that you used to submit the UpdateRule request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "UpdateSizeConstraintSetRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "UpdateSizeConstraintSetResponse$ChangeToken": "

        The ChangeToken that you used to submit the UpdateSizeConstraintSet request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "UpdateSqlInjectionMatchSetRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "UpdateSqlInjectionMatchSetResponse$ChangeToken": "

        The ChangeToken that you used to submit the UpdateSqlInjectionMatchSet request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "UpdateWebACLRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "UpdateWebACLResponse$ChangeToken": "

        The ChangeToken that you used to submit the UpdateWebACL request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        ", "UpdateXssMatchSetRequest$ChangeToken": "

        The value returned by the most recent call to GetChangeToken.

        ", "UpdateXssMatchSetResponse$ChangeToken": "

        The ChangeToken that you used to submit the UpdateXssMatchSet request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.

        " } }, "ChangeTokenStatus": { "base": null, "refs": { "GetChangeTokenStatusResponse$ChangeTokenStatus": "

        The status of the change token.

        " } }, "ComparisonOperator": { "base": null, "refs": { "SizeConstraint$ComparisonOperator": "

        The type of comparison you want AWS WAF to perform. AWS WAF uses this in combination with the provided Size and FieldToMatch to build an expression in the form of \"Size ComparisonOperator size in bytes of FieldToMatch\". If that expression is true, the SizeConstraint is considered to match.

        EQ: Used to test if the Size is equal to the size of the FieldToMatch

        NE: Used to test if the Size is not equal to the size of the FieldToMatch

        LE: Used to test if the Size is less than or equal to the size of the FieldToMatch

        LT: Used to test if the Size is strictly less than the size of the FieldToMatch

        GE: Used to test if the Size is greater than or equal to the size of the FieldToMatch

        GT: Used to test if the Size is strictly greater than the size of the FieldToMatch

        " } }, "Country": { "base": null, "refs": { "HTTPRequest$Country": "

        The two-letter country code for the country that the request originated from. For a current list of country codes, see the Wikipedia entry ISO 3166-1 alpha-2.

        " } }, "CreateByteMatchSetRequest": { "base": null, "refs": { } }, "CreateByteMatchSetResponse": { "base": null, "refs": { } }, "CreateIPSetRequest": { "base": null, "refs": { } }, "CreateIPSetResponse": { "base": null, "refs": { } }, "CreateRuleRequest": { "base": null, "refs": { } }, "CreateRuleResponse": { "base": null, "refs": { } }, "CreateSizeConstraintSetRequest": { "base": null, "refs": { } }, "CreateSizeConstraintSetResponse": { "base": null, "refs": { } }, "CreateSqlInjectionMatchSetRequest": { "base": "

        A request to create a SqlInjectionMatchSet.

        ", "refs": { } }, "CreateSqlInjectionMatchSetResponse": { "base": "

        The response to a CreateSqlInjectionMatchSet request.

        ", "refs": { } }, "CreateWebACLRequest": { "base": null, "refs": { } }, "CreateWebACLResponse": { "base": null, "refs": { } }, "CreateXssMatchSetRequest": { "base": "

        A request to create an XssMatchSet.

        ", "refs": { } }, "CreateXssMatchSetResponse": { "base": "

        The response to a CreateXssMatchSet request.

        ", "refs": { } }, "DeleteByteMatchSetRequest": { "base": null, "refs": { } }, "DeleteByteMatchSetResponse": { "base": null, "refs": { } }, "DeleteIPSetRequest": { "base": null, "refs": { } }, "DeleteIPSetResponse": { "base": null, "refs": { } }, "DeleteRuleRequest": { "base": null, "refs": { } }, "DeleteRuleResponse": { "base": null, "refs": { } }, "DeleteSizeConstraintSetRequest": { "base": null, "refs": { } }, "DeleteSizeConstraintSetResponse": { "base": null, "refs": { } }, "DeleteSqlInjectionMatchSetRequest": { "base": "

        A request to delete a SqlInjectionMatchSet from AWS WAF.

        ", "refs": { } }, "DeleteSqlInjectionMatchSetResponse": { "base": "

        The response to a request to delete a SqlInjectionMatchSet from AWS WAF.

        ", "refs": { } }, "DeleteWebACLRequest": { "base": null, "refs": { } }, "DeleteWebACLResponse": { "base": null, "refs": { } }, "DeleteXssMatchSetRequest": { "base": "

        A request to delete an XssMatchSet from AWS WAF.

        ", "refs": { } }, "DeleteXssMatchSetResponse": { "base": "

        The response to a request to delete an XssMatchSet from AWS WAF.

        ", "refs": { } }, "FieldToMatch": { "base": "

        Specifies where in a web request to look for TargetString.

        ", "refs": { "ByteMatchTuple$FieldToMatch": "

        The part of a web request that you want AWS WAF to search, such as a specified header or a query string. For more information, see FieldToMatch.

        ", "SizeConstraint$FieldToMatch": null, "SqlInjectionMatchTuple$FieldToMatch": null, "XssMatchTuple$FieldToMatch": null } }, "GetByteMatchSetRequest": { "base": null, "refs": { } }, "GetByteMatchSetResponse": { "base": null, "refs": { } }, "GetChangeTokenRequest": { "base": null, "refs": { } }, "GetChangeTokenResponse": { "base": null, "refs": { } }, "GetChangeTokenStatusRequest": { "base": null, "refs": { } }, "GetChangeTokenStatusResponse": { "base": null, "refs": { } }, "GetIPSetRequest": { "base": null, "refs": { } }, "GetIPSetResponse": { "base": null, "refs": { } }, "GetRuleRequest": { "base": null, "refs": { } }, "GetRuleResponse": { "base": null, "refs": { } }, "GetSampledRequestsRequest": { "base": null, "refs": { } }, "GetSampledRequestsResponse": { "base": null, "refs": { } }, "GetSizeConstraintSetRequest": { "base": null, "refs": { } }, "GetSizeConstraintSetResponse": { "base": null, "refs": { } }, "GetSqlInjectionMatchSetRequest": { "base": "

        A request to get a SqlInjectionMatchSet.

        ", "refs": { } }, "GetSqlInjectionMatchSetResponse": { "base": "

        The response to a GetSqlInjectionMatchSet request.

        ", "refs": { } }, "GetWebACLRequest": { "base": null, "refs": { } }, "GetWebACLResponse": { "base": null, "refs": { } }, "GetXssMatchSetRequest": { "base": "

        A request to get an XssMatchSet.

        ", "refs": { } }, "GetXssMatchSetResponse": { "base": "

        The response to a GetXssMatchSet request.

        ", "refs": { } }, "HTTPHeader": { "base": "

        The response from a GetSampledRequests request includes an HTTPHeader complex type that appears as Headers in the response syntax. HTTPHeader contains the names and values of all of the headers that appear in one of the web requests that were returned by GetSampledRequests.

        ", "refs": { "HTTPHeaders$member": null } }, "HTTPHeaders": { "base": null, "refs": { "HTTPRequest$Headers": "

        A complex type that contains two values for each header in the sampled web request: the name of the header and the value of the header.

        " } }, "HTTPMethod": { "base": null, "refs": { "HTTPRequest$Method": "

        The HTTP method specified in the sampled web request. CloudFront supports the following methods: DELETE, GET, HEAD, OPTIONS, PATCH, POST, and PUT.

        " } }, "HTTPRequest": { "base": "

        The response from a GetSampledRequests request includes an HTTPRequest complex type that appears as Request in the response syntax. HTTPRequest contains information about one of the web requests that were returned by GetSampledRequests.

        ", "refs": { "SampledHTTPRequest$Request": "

        A complex type that contains detailed information about the request.

        " } }, "HTTPVersion": { "base": null, "refs": { "HTTPRequest$HTTPVersion": "

        The HTTP version specified in the sampled web request, for example, HTTP/1.1.

        " } }, "HeaderName": { "base": null, "refs": { "HTTPHeader$Name": "

        The name of one of the headers in the sampled web request.

        " } }, "HeaderValue": { "base": null, "refs": { "HTTPHeader$Value": "

        The value of one of the headers in the sampled web request.

        " } }, "IPSet": { "base": "

        Contains one or more IP addresses or blocks of IP addresses specified in Classless Inter-Domain Routing (CIDR) notation. To specify an individual IP address, you specify the four-part IP address followed by a /32, for example, 192.0.2.0/31. To block a range of IP addresses, you can specify a /24, a /16, or a /8 CIDR. For more information about CIDR notation, perform an Internet search on cidr notation.

        ", "refs": { "CreateIPSetResponse$IPSet": "

        The IPSet returned in the CreateIPSet response.

        ", "GetIPSetResponse$IPSet": "

        Information about the IPSet that you specified in the GetIPSet request. For more information, see the following topics:

        • IPSet: Contains IPSetDescriptors, IPSetId, and Name

        • IPSetDescriptors: Contains an array of IPSetDescriptor objects. Each IPSetDescriptor object contains Type and Value

        " } }, "IPSetDescriptor": { "base": "

        Specifies the IP address type (IPV4) and the IP address range (in CIDR format) that web requests originate from.

        ", "refs": { "IPSetDescriptors$member": null, "IPSetUpdate$IPSetDescriptor": "

        The IP address type (IPV4) and the IP address range (in CIDR notation) that web requests originate from.

        " } }, "IPSetDescriptorType": { "base": null, "refs": { "IPSetDescriptor$Type": "

        Specify IPV4.

        " } }, "IPSetDescriptorValue": { "base": null, "refs": { "IPSetDescriptor$Value": "

        Specify an IPv4 address by using CIDR notation. For example:

        • To configure AWS WAF to allow, block, or count requests that originated from the IP address 192.0.2.44, specify 192.0.2.44/32.

        • To configure AWS WAF to allow, block, or count requests that originated from IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24.

        AWS WAF supports only /8, /16, /24, and /32 IP addresses.

        For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

        " } }, "IPSetDescriptors": { "base": null, "refs": { "IPSet$IPSetDescriptors": "

        The IP address type (IPV4) and the IP address range (in CIDR notation) that web requests originate from. If the WebACL is associated with a CloudFront distribution, this is the value of one of the following fields in CloudFront access logs:

        • c-ip, if the viewer did not use an HTTP proxy or a load balancer to send the request

        • x-forwarded-for, if the viewer did use an HTTP proxy or a load balancer to send the request

        " } }, "IPSetSummaries": { "base": null, "refs": { "ListIPSetsResponse$IPSets": "

        An array of IPSetSummary objects.

        " } }, "IPSetSummary": { "base": "

        Contains the identifier and the name of the IPSet.

        ", "refs": { "IPSetSummaries$member": null } }, "IPSetUpdate": { "base": "

        Specifies the type of update to perform to an IPSet with UpdateIPSet.

        ", "refs": { "IPSetUpdates$member": null } }, "IPSetUpdates": { "base": null, "refs": { "UpdateIPSetRequest$Updates": "

        An array of IPSetUpdate objects that you want to insert into or delete from an IPSet. For more information, see the applicable data types:

        " } }, "IPString": { "base": null, "refs": { "HTTPRequest$ClientIP": "

        The IP address that the request originated from. If the WebACL is associated with a CloudFront distribution, this is the value of one of the following fields in CloudFront access logs:

        • c-ip, if the viewer did not use an HTTP proxy or a load balancer to send the request

        • x-forwarded-for, if the viewer did use an HTTP proxy or a load balancer to send the request

        " } }, "ListByteMatchSetsRequest": { "base": null, "refs": { } }, "ListByteMatchSetsResponse": { "base": null, "refs": { } }, "ListIPSetsRequest": { "base": null, "refs": { } }, "ListIPSetsResponse": { "base": null, "refs": { } }, "ListMaxItems": { "base": null, "refs": { "GetSampledRequestsRequest$MaxItems": "

        The number of requests that you want AWS WAF to return from among the first 5,000 requests that your AWS resource received during the time range. If your resource received fewer requests than the value of MaxItems, GetSampledRequests returns information about all of them.

        " } }, "ListRulesRequest": { "base": null, "refs": { } }, "ListRulesResponse": { "base": null, "refs": { } }, "ListSizeConstraintSetsRequest": { "base": null, "refs": { } }, "ListSizeConstraintSetsResponse": { "base": null, "refs": { } }, "ListSqlInjectionMatchSetsRequest": { "base": "

        A request to list the SqlInjectionMatchSet objects created by the current AWS account.

        ", "refs": { } }, "ListSqlInjectionMatchSetsResponse": { "base": "

        The response to a ListSqlInjectionMatchSets request.

        ", "refs": { } }, "ListWebACLsRequest": { "base": null, "refs": { } }, "ListWebACLsResponse": { "base": null, "refs": { } }, "ListXssMatchSetsRequest": { "base": "

        A request to list the XssMatchSet objects created by the current AWS account.

        ", "refs": { } }, "ListXssMatchSetsResponse": { "base": "

        The response to a ListXssMatchSets request.

        ", "refs": { } }, "MatchFieldData": { "base": null, "refs": { "FieldToMatch$Data": "

        When the value of Type is HEADER, enter the name of the header that you want AWS WAF to search, for example, User-Agent or Referer. If the value of Type is any other value, omit Data.

        The name of the header is not case sensitive.

        " } }, "MatchFieldType": { "base": null, "refs": { "FieldToMatch$Type": "

        The part of the web request that you want AWS WAF to search for a specified string. Parts of a request that you can search include the following:

        • HEADER: A specified request header, for example, the value of the User-Agent or Referer header. If you choose HEADER for the type, specify the name of the header in Data.

        • METHOD: The HTTP method, which indicated the type of operation that the request is asking the origin to perform. Amazon CloudFront supports the following methods: DELETE, GET, HEAD, OPTIONS, PATCH, POST, and PUT.

        • QUERY_STRING: A query string, which is the part of a URL that appears after a ? character, if any.

        • URI: The part of a web request that identifies a resource, for example, /images/daily-ad.jpg.

        • BODY: The part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form. The request body immediately follows the request headers. Note that only the first 8192 bytes of the request body are forwarded to AWS WAF for inspection. To allow or block requests based on the length of the body, you can create a size constraint set. For more information, see CreateSizeConstraintSet.

        " } }, "MetricName": { "base": null, "refs": { "CreateRuleRequest$MetricName": "

        A friendly name or description for the metrics for this Rule. The name can contain only alphanumeric characters (A-Z, a-z, 0-9); the name can't contain whitespace. You can't change the name of the metric after you create the Rule.

        ", "CreateWebACLRequest$MetricName": "

        A friendly name or description for the metrics for this WebACL. The name can contain only alphanumeric characters (A-Z, a-z, 0-9); the name can't contain whitespace. You can't change MetricName after you create the WebACL.

        ", "Rule$MetricName": null, "WebACL$MetricName": null } }, "Negated": { "base": null, "refs": { "Predicate$Negated": "

        Set Negated to False if you want AWS WAF to allow, block, or count requests based on the settings in the specified ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, or SizeConstraintSet. For example, if an IPSet includes the IP address 192.0.2.44, AWS WAF will allow or block requests based on that IP address.

        Set Negated to True if you want AWS WAF to allow or block a request based on the negation of the settings in the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, or SizeConstraintSet. For example, if an IPSet includes the IP address 192.0.2.44, AWS WAF will allow, block, or count requests based on all IP addresses except 192.0.2.44.

        " } }, "NextMarker": { "base": null, "refs": { "ListByteMatchSetsRequest$NextMarker": "

        If you specify a value for Limit and you have more ByteMatchSets than the value of Limit, AWS WAF returns a NextMarker value in the response that allows you to list another group of ByteMatchSets. For the second and subsequent ListByteMatchSets requests, specify the value of NextMarker from the previous response to get information about another batch of ByteMatchSets.

        ", "ListByteMatchSetsResponse$NextMarker": "

        If you have more ByteMatchSet objects than the number that you specified for Limit in the request, the response includes a NextMarker value. To list more ByteMatchSet objects, submit another ListByteMatchSets request, and specify the NextMarker value from the response in the NextMarker value in the next request.

        ", "ListIPSetsRequest$NextMarker": "

        If you specify a value for Limit and you have more IPSets than the value of Limit, AWS WAF returns a NextMarker value in the response that allows you to list another group of IPSets. For the second and subsequent ListIPSets requests, specify the value of NextMarker from the previous response to get information about another batch of ByteMatchSets.

        ", "ListIPSetsResponse$NextMarker": "

        If you have more IPSet objects than the number that you specified for Limit in the request, the response includes a NextMarker value. To list more IPSet objects, submit another ListIPSets request, and specify the NextMarker value from the response in the NextMarker value in the next request.

        ", "ListRulesRequest$NextMarker": "

        If you specify a value for Limit and you have more Rules than the value of Limit, AWS WAF returns a NextMarker value in the response that allows you to list another group of Rules. For the second and subsequent ListRules requests, specify the value of NextMarker from the previous response to get information about another batch of Rules.

        ", "ListRulesResponse$NextMarker": "

        If you have more Rules than the number that you specified for Limit in the request, the response includes a NextMarker value. To list more Rules, submit another ListRules request, and specify the NextMarker value from the response in the NextMarker value in the next request.

        ", "ListSizeConstraintSetsRequest$NextMarker": "

        If you specify a value for Limit and you have more SizeConstraintSets than the value of Limit, AWS WAF returns a NextMarker value in the response that allows you to list another group of SizeConstraintSets. For the second and subsequent ListSizeConstraintSets requests, specify the value of NextMarker from the previous response to get information about another batch of SizeConstraintSets.

        ", "ListSizeConstraintSetsResponse$NextMarker": "

        If you have more SizeConstraintSet objects than the number that you specified for Limit in the request, the response includes a NextMarker value. To list more SizeConstraintSet objects, submit another ListSizeConstraintSets request, and specify the NextMarker value from the response in the NextMarker value in the next request.

        ", "ListSqlInjectionMatchSetsRequest$NextMarker": "

        If you specify a value for Limit and you have more SqlInjectionMatchSet objects than the value of Limit, AWS WAF returns a NextMarker value in the response that allows you to list another group of SqlInjectionMatchSets. For the second and subsequent ListSqlInjectionMatchSets requests, specify the value of NextMarker from the previous response to get information about another batch of SqlInjectionMatchSets.

        ", "ListSqlInjectionMatchSetsResponse$NextMarker": "

        If you have more SqlInjectionMatchSet objects than the number that you specified for Limit in the request, the response includes a NextMarker value. To list more SqlInjectionMatchSet objects, submit another ListSqlInjectionMatchSets request, and specify the NextMarker value from the response in the NextMarker value in the next request.

        ", "ListWebACLsRequest$NextMarker": "

        If you specify a value for Limit and you have more WebACL objects than the number that you specify for Limit, AWS WAF returns a NextMarker value in the response that allows you to list another group of WebACL objects. For the second and subsequent ListWebACLs requests, specify the value of NextMarker from the previous response to get information about another batch of WebACL objects.

        ", "ListWebACLsResponse$NextMarker": "

        If you have more WebACL objects than the number that you specified for Limit in the request, the response includes a NextMarker value. To list more WebACL objects, submit another ListWebACLs request, and specify the NextMarker value from the response in the NextMarker value in the next request.

        ", "ListXssMatchSetsRequest$NextMarker": "

        If you specify a value for Limit and you have more XssMatchSet objects than the value of Limit, AWS WAF returns a NextMarker value in the response that allows you to list another group of XssMatchSets. For the second and subsequent ListXssMatchSets requests, specify the value of NextMarker from the previous response to get information about another batch of XssMatchSets.

        ", "ListXssMatchSetsResponse$NextMarker": "

        If you have more XssMatchSet objects than the number that you specified for Limit in the request, the response includes a NextMarker value. To list more XssMatchSet objects, submit another ListXssMatchSets request, and specify the NextMarker value from the response in the NextMarker value in the next request.

        " } }, "PaginationLimit": { "base": null, "refs": { "ListByteMatchSetsRequest$Limit": "

        Specifies the number of ByteMatchSet objects that you want AWS WAF to return for this request. If you have more ByteMatchSets objects than the number you specify for Limit, the response includes a NextMarker value that you can use to get another batch of ByteMatchSet objects.

        ", "ListIPSetsRequest$Limit": "

        Specifies the number of IPSet objects that you want AWS WAF to return for this request. If you have more IPSet objects than the number you specify for Limit, the response includes a NextMarker value that you can use to get another batch of IPSet objects.

        ", "ListRulesRequest$Limit": "

        Specifies the number of Rules that you want AWS WAF to return for this request. If you have more Rules than the number that you specify for Limit, the response includes a NextMarker value that you can use to get another batch of Rules.

        ", "ListSizeConstraintSetsRequest$Limit": "

        Specifies the number of SizeConstraintSet objects that you want AWS WAF to return for this request. If you have more SizeConstraintSets objects than the number you specify for Limit, the response includes a NextMarker value that you can use to get another batch of SizeConstraintSet objects.

        ", "ListSqlInjectionMatchSetsRequest$Limit": "

        Specifies the number of SqlInjectionMatchSet objects that you want AWS WAF to return for this request. If you have more SqlInjectionMatchSet objects than the number you specify for Limit, the response includes a NextMarker value that you can use to get another batch of Rules.

        ", "ListWebACLsRequest$Limit": "

        Specifies the number of WebACL objects that you want AWS WAF to return for this request. If you have more WebACL objects than the number that you specify for Limit, the response includes a NextMarker value that you can use to get another batch of WebACL objects.

        ", "ListXssMatchSetsRequest$Limit": "

        Specifies the number of XssMatchSet objects that you want AWS WAF to return for this request. If you have more XssMatchSet objects than the number you specify for Limit, the response includes a NextMarker value that you can use to get another batch of Rules.

        " } }, "ParameterExceptionField": { "base": null, "refs": { "WAFInvalidParameterException$field": null } }, "ParameterExceptionParameter": { "base": null, "refs": { "WAFInvalidParameterException$parameter": null } }, "ParameterExceptionReason": { "base": null, "refs": { "WAFInvalidParameterException$reason": null } }, "PopulationSize": { "base": null, "refs": { "GetSampledRequestsResponse$PopulationSize": "

        The total number of requests from which GetSampledRequests got a sample of MaxItems requests. If PopulationSize is less than MaxItems, the sample includes every request that your AWS resource received during the specified time range.

        " } }, "PositionalConstraint": { "base": null, "refs": { "ByteMatchTuple$PositionalConstraint": "

        Within the portion of a web request that you want to search (for example, in the query string, if any), specify where you want AWS WAF to search. Valid values include the following:

        CONTAINS

        The specified part of the web request must include the value of TargetString, but the location doesn't matter.

        CONTAINS_WORD

        The specified part of the web request must include the value of TargetString, and TargetString must contain only alphanumeric characters or underscore (A-Z, a-z, 0-9, or _). In addition, TargetString must be a word, which means one of the following:

        • TargetString exactly matches the value of the specified part of the web request, such as the value of a header.

        • TargetString is at the beginning of the specified part of the web request and is followed by a character other than an alphanumeric character or underscore (_), for example, BadBot;.

        • TargetString is at the end of the specified part of the web request and is preceded by a character other than an alphanumeric character or underscore (_), for example, ;BadBot.

        • TargetString is in the middle of the specified part of the web request and is preceded and followed by characters other than alphanumeric characters or underscore (_), for example, -BadBot;.

        EXACTLY

        The value of the specified part of the web request must exactly match the value of TargetString.

        STARTS_WITH

        The value of TargetString must appear at the beginning of the specified part of the web request.

        ENDS_WITH

        The value of TargetString must appear at the end of the specified part of the web request.

        " } }, "Predicate": { "base": "

        Specifies the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, and SizeConstraintSet objects that you want to add to a Rule and, for each object, indicates whether you want to negate the settings, for example, requests that do NOT originate from the IP address 192.0.2.44.

        ", "refs": { "Predicates$member": null, "RuleUpdate$Predicate": "

        The ID of the Predicate (such as an IPSet) that you want to add to a Rule.

        " } }, "PredicateType": { "base": null, "refs": { "Predicate$Type": "

        The type of predicate in a Rule, such as ByteMatchSet or IPSet.

        " } }, "Predicates": { "base": null, "refs": { "Rule$Predicates": "

        The Predicates object contains one Predicate element for each ByteMatchSet, IPSet, or SqlInjectionMatchSet object that you want to include in a Rule.

        " } }, "ResourceId": { "base": null, "refs": { "ActivatedRule$RuleId": "

        The RuleId for a Rule. You use RuleId to get more information about a Rule (see GetRule), update a Rule (see UpdateRule), insert a Rule into a WebACL or delete a one from a WebACL (see UpdateWebACL), or delete a Rule from AWS WAF (see DeleteRule).

        RuleId is returned by CreateRule and by ListRules.

        ", "ByteMatchSet$ByteMatchSetId": "

        The ByteMatchSetId for a ByteMatchSet. You use ByteMatchSetId to get information about a ByteMatchSet (see GetByteMatchSet), update a ByteMatchSet (see UpdateByteMatchSet), insert a ByteMatchSet into a Rule or delete one from a Rule (see UpdateRule), and delete a ByteMatchSet from AWS WAF (see DeleteByteMatchSet).

        ByteMatchSetId is returned by CreateByteMatchSet and by ListByteMatchSets.

        ", "ByteMatchSetSummary$ByteMatchSetId": "

        The ByteMatchSetId for a ByteMatchSet. You use ByteMatchSetId to get information about a ByteMatchSet, update a ByteMatchSet, remove a ByteMatchSet from a Rule, and delete a ByteMatchSet from AWS WAF.

        ByteMatchSetId is returned by CreateByteMatchSet and by ListByteMatchSets.

        ", "DeleteByteMatchSetRequest$ByteMatchSetId": "

        The ByteMatchSetId of the ByteMatchSet that you want to delete. ByteMatchSetId is returned by CreateByteMatchSet and by ListByteMatchSets.

        ", "DeleteIPSetRequest$IPSetId": "

        The IPSetId of the IPSet that you want to delete. IPSetId is returned by CreateIPSet and by ListIPSets.

        ", "DeleteRuleRequest$RuleId": "

        The RuleId of the Rule that you want to delete. RuleId is returned by CreateRule and by ListRules.

        ", "DeleteSizeConstraintSetRequest$SizeConstraintSetId": "

        The SizeConstraintSetId of the SizeConstraintSet that you want to delete. SizeConstraintSetId is returned by CreateSizeConstraintSet and by ListSizeConstraintSets.

        ", "DeleteSqlInjectionMatchSetRequest$SqlInjectionMatchSetId": "

        The SqlInjectionMatchSetId of the SqlInjectionMatchSet that you want to delete. SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets.

        ", "DeleteWebACLRequest$WebACLId": "

        The WebACLId of the WebACL that you want to delete. WebACLId is returned by CreateWebACL and by ListWebACLs.

        ", "DeleteXssMatchSetRequest$XssMatchSetId": "

        The XssMatchSetId of the XssMatchSet that you want to delete. XssMatchSetId is returned by CreateXssMatchSet and by ListXssMatchSets.

        ", "GetByteMatchSetRequest$ByteMatchSetId": "

        The ByteMatchSetId of the ByteMatchSet that you want to get. ByteMatchSetId is returned by CreateByteMatchSet and by ListByteMatchSets.

        ", "GetIPSetRequest$IPSetId": "

        The IPSetId of the IPSet that you want to get. IPSetId is returned by CreateIPSet and by ListIPSets.

        ", "GetRuleRequest$RuleId": "

        The RuleId of the Rule that you want to get. RuleId is returned by CreateRule and by ListRules.

        ", "GetSampledRequestsRequest$WebAclId": "

        The WebACLId of the WebACL for which you want GetSampledRequests to return a sample of requests.

        ", "GetSampledRequestsRequest$RuleId": "

        RuleId is one of two values:

        • The RuleId of the Rule for which you want GetSampledRequests to return a sample of requests.

        • Default_Action, which causes GetSampledRequests to return a sample of the requests that didn't match any of the rules in the specified WebACL.

        ", "GetSizeConstraintSetRequest$SizeConstraintSetId": "

        The SizeConstraintSetId of the SizeConstraintSet that you want to get. SizeConstraintSetId is returned by CreateSizeConstraintSet and by ListSizeConstraintSets.

        ", "GetSqlInjectionMatchSetRequest$SqlInjectionMatchSetId": "

        The SqlInjectionMatchSetId of the SqlInjectionMatchSet that you want to get. SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets.

        ", "GetWebACLRequest$WebACLId": "

        The WebACLId of the WebACL that you want to get. WebACLId is returned by CreateWebACL and by ListWebACLs.

        ", "GetXssMatchSetRequest$XssMatchSetId": "

        The XssMatchSetId of the XssMatchSet that you want to get. XssMatchSetId is returned by CreateXssMatchSet and by ListXssMatchSets.

        ", "IPSet$IPSetId": "

        The IPSetId for an IPSet. You use IPSetId to get information about an IPSet (see GetIPSet), update an IPSet (see UpdateIPSet), insert an IPSet into a Rule or delete one from a Rule (see UpdateRule), and delete an IPSet from AWS WAF (see DeleteIPSet).

        IPSetId is returned by CreateIPSet and by ListIPSets.

        ", "IPSetSummary$IPSetId": "

        The IPSetId for an IPSet. You can use IPSetId in a GetIPSet request to get detailed information about an IPSet.

        ", "Predicate$DataId": "

        A unique identifier for a predicate in a Rule, such as ByteMatchSetId or IPSetId. The ID is returned by the corresponding Create or List command.

        ", "Rule$RuleId": "

        A unique identifier for a Rule. You use RuleId to get more information about a Rule (see GetRule), update a Rule (see UpdateRule), insert a Rule into a WebACL or delete a one from a WebACL (see UpdateWebACL), or delete a Rule from AWS WAF (see DeleteRule).

        RuleId is returned by CreateRule and by ListRules.

        ", "RuleSummary$RuleId": "

        A unique identifier for a Rule. You use RuleId to get more information about a Rule (see GetRule), update a Rule (see UpdateRule), insert a Rule into a WebACL or delete one from a WebACL (see UpdateWebACL), or delete a Rule from AWS WAF (see DeleteRule).

        RuleId is returned by CreateRule and by ListRules.

        ", "SizeConstraintSet$SizeConstraintSetId": "

        A unique identifier for a SizeConstraintSet. You use SizeConstraintSetId to get information about a SizeConstraintSet (see GetSizeConstraintSet), update a SizeConstraintSet (see UpdateSizeConstraintSet), insert a SizeConstraintSet into a Rule or delete one from a Rule (see UpdateRule), and delete a SizeConstraintSet from AWS WAF (see DeleteSizeConstraintSet).

        SizeConstraintSetId is returned by CreateSizeConstraintSet and by ListSizeConstraintSets.

        ", "SizeConstraintSetSummary$SizeConstraintSetId": "

        A unique identifier for a SizeConstraintSet. You use SizeConstraintSetId to get information about a SizeConstraintSet (see GetSizeConstraintSet), update a SizeConstraintSet (see UpdateSizeConstraintSet), insert a SizeConstraintSet into a Rule or delete one from a Rule (see UpdateRule), and delete a SizeConstraintSet from AWS WAF (see DeleteSizeConstraintSet).

        SizeConstraintSetId is returned by CreateSizeConstraintSet and by ListSizeConstraintSets.

        ", "SqlInjectionMatchSet$SqlInjectionMatchSetId": "

        A unique identifier for a SqlInjectionMatchSet. You use SqlInjectionMatchSetId to get information about a SqlInjectionMatchSet (see GetSqlInjectionMatchSet), update a SqlInjectionMatchSet (see UpdateSqlInjectionMatchSet), insert a SqlInjectionMatchSet into a Rule or delete one from a Rule (see UpdateRule), and delete a SqlInjectionMatchSet from AWS WAF (see DeleteSqlInjectionMatchSet).

        SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets.

        ", "SqlInjectionMatchSetSummary$SqlInjectionMatchSetId": "

        A unique identifier for a SqlInjectionMatchSet. You use SqlInjectionMatchSetId to get information about a SqlInjectionMatchSet (see GetSqlInjectionMatchSet), update a SqlInjectionMatchSet (see UpdateSqlInjectionMatchSet), insert a SqlInjectionMatchSet into a Rule or delete one from a Rule (see UpdateRule), and delete a SqlInjectionMatchSet from AWS WAF (see DeleteSqlInjectionMatchSet).

        SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets.

        ", "UpdateByteMatchSetRequest$ByteMatchSetId": "

        The ByteMatchSetId of the ByteMatchSet that you want to update. ByteMatchSetId is returned by CreateByteMatchSet and by ListByteMatchSets.

        ", "UpdateIPSetRequest$IPSetId": "

        The IPSetId of the IPSet that you want to update. IPSetId is returned by CreateIPSet and by ListIPSets.

        ", "UpdateRuleRequest$RuleId": "

        The RuleId of the Rule that you want to update. RuleId is returned by CreateRule and by ListRules.

        ", "UpdateSizeConstraintSetRequest$SizeConstraintSetId": "

        The SizeConstraintSetId of the SizeConstraintSet that you want to update. SizeConstraintSetId is returned by CreateSizeConstraintSet and by ListSizeConstraintSets.

        ", "UpdateSqlInjectionMatchSetRequest$SqlInjectionMatchSetId": "

        The SqlInjectionMatchSetId of the SqlInjectionMatchSet that you want to update. SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets.

        ", "UpdateWebACLRequest$WebACLId": "

        The WebACLId of the WebACL that you want to update. WebACLId is returned by CreateWebACL and by ListWebACLs.

        ", "UpdateXssMatchSetRequest$XssMatchSetId": "

        The XssMatchSetId of the XssMatchSet that you want to update. XssMatchSetId is returned by CreateXssMatchSet and by ListXssMatchSets.

        ", "WebACL$WebACLId": "

        A unique identifier for a WebACL. You use WebACLId to get information about a WebACL (see GetWebACL), update a WebACL (see UpdateWebACL), and delete a WebACL from AWS WAF (see DeleteWebACL).

        WebACLId is returned by CreateWebACL and by ListWebACLs.

        ", "WebACLSummary$WebACLId": "

        A unique identifier for a WebACL. You use WebACLId to get information about a WebACL (see GetWebACL), update a WebACL (see UpdateWebACL), and delete a WebACL from AWS WAF (see DeleteWebACL).

        WebACLId is returned by CreateWebACL and by ListWebACLs.

        ", "XssMatchSet$XssMatchSetId": "

        A unique identifier for an XssMatchSet. You use XssMatchSetId to get information about an XssMatchSet (see GetXssMatchSet), update an XssMatchSet (see UpdateXssMatchSet), insert an XssMatchSet into a Rule or delete one from a Rule (see UpdateRule), and delete an XssMatchSet from AWS WAF (see DeleteXssMatchSet).

        XssMatchSetId is returned by CreateXssMatchSet and by ListXssMatchSets.

        ", "XssMatchSetSummary$XssMatchSetId": "

        A unique identifier for an XssMatchSet. You use XssMatchSetId to get information about a XssMatchSet (see GetXssMatchSet), update an XssMatchSet (see UpdateXssMatchSet), insert an XssMatchSet into a Rule or delete one from a Rule (see UpdateRule), and delete an XssMatchSet from AWS WAF (see DeleteXssMatchSet).

        XssMatchSetId is returned by CreateXssMatchSet and by ListXssMatchSets.

        " } }, "ResourceName": { "base": null, "refs": { "ByteMatchSet$Name": "

        A friendly name or description of the ByteMatchSet. You can't change Name after you create a ByteMatchSet.

        ", "ByteMatchSetSummary$Name": "

        A friendly name or description of the ByteMatchSet. You can't change Name after you create a ByteMatchSet.

        ", "CreateByteMatchSetRequest$Name": "

        A friendly name or description of the ByteMatchSet. You can't change Name after you create a ByteMatchSet.

        ", "CreateIPSetRequest$Name": "

        A friendly name or description of the IPSet. You can't change Name after you create the IPSet.

        ", "CreateRuleRequest$Name": "

        A friendly name or description of the Rule. You can't change the name of a Rule after you create it.

        ", "CreateSizeConstraintSetRequest$Name": "

        A friendly name or description of the SizeConstraintSet. You can't change Name after you create a SizeConstraintSet.

        ", "CreateSqlInjectionMatchSetRequest$Name": "

        A friendly name or description for the SqlInjectionMatchSet that you're creating. You can't change Name after you create the SqlInjectionMatchSet.

        ", "CreateWebACLRequest$Name": "

        A friendly name or description of the WebACL. You can't change Name after you create the WebACL.

        ", "CreateXssMatchSetRequest$Name": "

        A friendly name or description for the XssMatchSet that you're creating. You can't change Name after you create the XssMatchSet.

        ", "IPSet$Name": "

        A friendly name or description of the IPSet. You can't change the name of an IPSet after you create it.

        ", "IPSetSummary$Name": "

        A friendly name or description of the IPSet. You can't change the name of an IPSet after you create it.

        ", "Rule$Name": "

        The friendly name or description for the Rule. You can't change the name of a Rule after you create it.

        ", "RuleSummary$Name": "

        A friendly name or description of the Rule. You can't change the name of a Rule after you create it.

        ", "SizeConstraintSet$Name": "

        The name, if any, of the SizeConstraintSet.

        ", "SizeConstraintSetSummary$Name": "

        The name of the SizeConstraintSet, if any.

        ", "SqlInjectionMatchSet$Name": "

        The name, if any, of the SqlInjectionMatchSet.

        ", "SqlInjectionMatchSetSummary$Name": "

        The name of the SqlInjectionMatchSet, if any, specified by Id.

        ", "WebACL$Name": "

        A friendly name or description of the WebACL. You can't change the name of a WebACL after you create it.

        ", "WebACLSummary$Name": "

        A friendly name or description of the WebACL. You can't change the name of a WebACL after you create it.

        ", "XssMatchSet$Name": "

        The name, if any, of the XssMatchSet.

        ", "XssMatchSetSummary$Name": "

        The name of the XssMatchSet, if any, specified by Id.

        " } }, "Rule": { "base": "

        A combination of ByteMatchSet, IPSet, and/or SqlInjectionMatchSet objects that identify the web requests that you want to allow, block, or count. For example, you might create a Rule that includes the following predicates:

        • An IPSet that causes AWS WAF to search for web requests that originate from the IP address 192.0.2.44

        • A ByteMatchSet that causes AWS WAF to search for web requests for which the value of the User-Agent header is BadBot.

        To match the settings in this Rule, a request must originate from 192.0.2.44 AND include a User-Agent header for which the value is BadBot.

        ", "refs": { "CreateRuleResponse$Rule": "

        The Rule returned in the CreateRule response.

        ", "GetRuleResponse$Rule": "

        Information about the Rule that you specified in the GetRule request. For more information, see the following topics:

        • Rule: Contains MetricName, Name, an array of Predicate objects, and RuleId

        • Predicate: Each Predicate object contains DataId, Negated, and Type

        " } }, "RulePriority": { "base": null, "refs": { "ActivatedRule$Priority": "

        Specifies the order in which the Rules in a WebACL are evaluated. Rules with a lower value for Priority are evaluated before Rules with a higher value. The value must be a unique integer. If you add multiple Rules to a WebACL, the values don't need to be consecutive.

        " } }, "RuleSummaries": { "base": null, "refs": { "ListRulesResponse$Rules": "

        An array of RuleSummary objects.

        " } }, "RuleSummary": { "base": "

        Contains the identifier and the friendly name or description of the Rule.

        ", "refs": { "RuleSummaries$member": null } }, "RuleUpdate": { "base": "

        Specifies a Predicate (such as an IPSet) and indicates whether you want to add it to a Rule or delete it from a Rule.

        ", "refs": { "RuleUpdates$member": null } }, "RuleUpdates": { "base": null, "refs": { "UpdateRuleRequest$Updates": "

        An array of RuleUpdate objects that you want to insert into or delete from a Rule. For more information, see the applicable data types:

        " } }, "SampleWeight": { "base": null, "refs": { "SampledHTTPRequest$Weight": "

        A value that indicates how one result in the response relates proportionally to other results in the response. A result that has a weight of 2 represents roughly twice as many CloudFront web requests as a result that has a weight of 1.

        " } }, "SampledHTTPRequest": { "base": "

        The response from a GetSampledRequests request includes a SampledHTTPRequests complex type that appears as SampledRequests in the response syntax. SampledHTTPRequests contains one SampledHTTPRequest object for each web request that is returned by GetSampledRequests.

        ", "refs": { "SampledHTTPRequests$member": null } }, "SampledHTTPRequests": { "base": null, "refs": { "GetSampledRequestsResponse$SampledRequests": "

        A complex type that contains detailed information about each of the requests in the sample.

        " } }, "Size": { "base": null, "refs": { "SizeConstraint$Size": "

        The size in bytes that you want AWS WAF to compare against the size of the specified FieldToMatch. AWS WAF uses this in combination with ComparisonOperator and FieldToMatch to build an expression in the form of \"Size ComparisonOperator size in bytes of FieldToMatch\". If that expression is true, the SizeConstraint is considered to match.

        Valid values for size are 0 - 21474836480 bytes (0 - 20 GB).

        If you specify URI for the value of Type, the / in the URI counts as one character. For example, the URI /logo.jpg is nine characters long.

        " } }, "SizeConstraint": { "base": "

        Specifies a constraint on the size of a part of the web request. AWS WAF uses the Size, ComparisonOperator, and FieldToMatch to build an expression in the form of \"Size ComparisonOperator size in bytes of FieldToMatch\". If that expression is true, the SizeConstraint is considered to match.

        ", "refs": { "SizeConstraintSetUpdate$SizeConstraint": "

        Specifies a constraint on the size of a part of the web request. AWS WAF uses the Size, ComparisonOperator, and FieldToMatch to build an expression in the form of \"Size ComparisonOperator size in bytes of FieldToMatch\". If that expression is true, the SizeConstraint is considered to match.

        ", "SizeConstraints$member": null } }, "SizeConstraintSet": { "base": "

        A complex type that contains SizeConstraint objects, which specify the parts of web requests that you want AWS WAF to inspect the size of. If a SizeConstraintSet contains more than one SizeConstraint object, a request only needs to match one constraint to be considered a match.

        ", "refs": { "CreateSizeConstraintSetResponse$SizeConstraintSet": "

        A SizeConstraintSet that contains no SizeConstraint objects.

        ", "GetSizeConstraintSetResponse$SizeConstraintSet": "

        Information about the SizeConstraintSet that you specified in the GetSizeConstraintSet request. For more information, see the following topics:

        " } }, "SizeConstraintSetSummaries": { "base": null, "refs": { "ListSizeConstraintSetsResponse$SizeConstraintSets": "

        An array of SizeConstraintSetSummary objects.

        " } }, "SizeConstraintSetSummary": { "base": "

        The Id and Name of a SizeConstraintSet.

        ", "refs": { "SizeConstraintSetSummaries$member": null } }, "SizeConstraintSetUpdate": { "base": "

        Specifies the part of a web request that you want to inspect the size of and indicates whether you want to add the specification to a SizeConstraintSet or delete it from a SizeConstraintSet.

        ", "refs": { "SizeConstraintSetUpdates$member": null } }, "SizeConstraintSetUpdates": { "base": null, "refs": { "UpdateSizeConstraintSetRequest$Updates": "

        An array of SizeConstraintSetUpdate objects that you want to insert into or delete from a SizeConstraintSet. For more information, see the applicable data types:

        " } }, "SizeConstraints": { "base": null, "refs": { "SizeConstraintSet$SizeConstraints": "

        Specifies the parts of web requests that you want to inspect the size of.

        " } }, "SqlInjectionMatchSet": { "base": "

        A complex type that contains SqlInjectionMatchTuple objects, which specify the parts of web requests that you want AWS WAF to inspect for snippets of malicious SQL code and, if you want AWS WAF to inspect a header, the name of the header. If a SqlInjectionMatchSet contains more than one SqlInjectionMatchTuple object, a request needs to include snippets of SQL code in only one of the specified parts of the request to be considered a match.

        ", "refs": { "CreateSqlInjectionMatchSetResponse$SqlInjectionMatchSet": "

        A SqlInjectionMatchSet.

        ", "GetSqlInjectionMatchSetResponse$SqlInjectionMatchSet": "

        Information about the SqlInjectionMatchSet that you specified in the GetSqlInjectionMatchSet request. For more information, see the following topics:

        " } }, "SqlInjectionMatchSetSummaries": { "base": null, "refs": { "ListSqlInjectionMatchSetsResponse$SqlInjectionMatchSets": "

        An array of SqlInjectionMatchSetSummary objects.

        " } }, "SqlInjectionMatchSetSummary": { "base": "

        The Id and Name of a SqlInjectionMatchSet.

        ", "refs": { "SqlInjectionMatchSetSummaries$member": null } }, "SqlInjectionMatchSetUpdate": { "base": "

        Specifies the part of a web request that you want to inspect for snippets of malicious SQL code and indicates whether you want to add the specification to a SqlInjectionMatchSet or delete it from a SqlInjectionMatchSet.

        ", "refs": { "SqlInjectionMatchSetUpdates$member": null } }, "SqlInjectionMatchSetUpdates": { "base": null, "refs": { "UpdateSqlInjectionMatchSetRequest$Updates": "

        An array of SqlInjectionMatchSetUpdate objects that you want to insert into or delete from a SqlInjectionMatchSet. For more information, see the applicable data types:

        " } }, "SqlInjectionMatchTuple": { "base": "

        Specifies the part of a web request that you want AWS WAF to inspect for snippets of malicious SQL code and, if you want AWS WAF to inspect a header, the name of the header.

        ", "refs": { "SqlInjectionMatchSetUpdate$SqlInjectionMatchTuple": "

        Specifies the part of a web request that you want AWS WAF to inspect for snippets of malicious SQL code and, if you want AWS WAF to inspect a header, the name of the header.

        ", "SqlInjectionMatchTuples$member": null } }, "SqlInjectionMatchTuples": { "base": null, "refs": { "SqlInjectionMatchSet$SqlInjectionMatchTuples": "

        Specifies the parts of web requests that you want to inspect for snippets of malicious SQL code.

        " } }, "TextTransformation": { "base": null, "refs": { "ByteMatchTuple$TextTransformation": "

        Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass AWS WAF. If you specify a transformation, AWS WAF performs the transformation on TargetString before inspecting a request for a match.

        CMD_LINE

        When you're concerned that attackers are injecting an operating system commandline command and using unusual formatting to disguise some or all of the command, use this option to perform the following transformations:

        • Delete the following characters: \\ \" ' ^

        • Delete spaces before the following characters: / (

        • Replace the following characters with a space: , ;

        • Replace multiple spaces with one space

        • Convert uppercase letters (A-Z) to lowercase (a-z)

        COMPRESS_WHITE_SPACE

        Use this option to replace the following characters with a space character (decimal 32):

        • \\f, formfeed, decimal 12

        • \\t, tab, decimal 9

        • \\n, newline, decimal 10

        • \\r, carriage return, decimal 13

        • \\v, vertical tab, decimal 11

        • non-breaking space, decimal 160

        COMPRESS_WHITE_SPACE also replaces multiple spaces with one space.

        HTML_ENTITY_DECODE

        Use this option to replace HTML-encoded characters with unencoded characters. HTML_ENTITY_DECODE performs the following operations:

        • Replaces (ampersand)quot; with \"

        • Replaces (ampersand)nbsp; with a non-breaking space, decimal 160

        • Replaces (ampersand)lt; with a \"less than\" symbol

        • Replaces (ampersand)gt; with >

        • Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh;, with the corresponding characters

        • Replaces characters that are represented in decimal format, (ampersand)#nnnn;, with the corresponding characters

        LOWERCASE

        Use this option to convert uppercase letters (A-Z) to lowercase (a-z).

        URL_DECODE

        Use this option to decode a URL-encoded value.

        NONE

        Specify NONE if you don't want to perform any text transformations.

        ", "SizeConstraint$TextTransformation": "

        Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass AWS WAF. If you specify a transformation, AWS WAF performs the transformation on FieldToMatch before inspecting a request for a match.

        Note that if you choose BODY for the value of Type, you must choose NONE for TextTransformation because CloudFront forwards only the first 8192 bytes for inspection.

        NONE

        Specify NONE if you don't want to perform any text transformations.

        CMD_LINE

        When you're concerned that attackers are injecting an operating system command line command and using unusual formatting to disguise some or all of the command, use this option to perform the following transformations:

        • Delete the following characters: \\ \" ' ^

        • Delete spaces before the following characters: / (

        • Replace the following characters with a space: , ;

        • Replace multiple spaces with one space

        • Convert uppercase letters (A-Z) to lowercase (a-z)

        COMPRESS_WHITE_SPACE

        Use this option to replace the following characters with a space character (decimal 32):

        • \\f, formfeed, decimal 12

        • \\t, tab, decimal 9

        • \\n, newline, decimal 10

        • \\r, carriage return, decimal 13

        • \\v, vertical tab, decimal 11

        • non-breaking space, decimal 160

        COMPRESS_WHITE_SPACE also replaces multiple spaces with one space.

        HTML_ENTITY_DECODE

        Use this option to replace HTML-encoded characters with unencoded characters. HTML_ENTITY_DECODE performs the following operations:

        • Replaces (ampersand)quot; with \"

        • Replaces (ampersand)nbsp; with a non-breaking space, decimal 160

        • Replaces (ampersand)lt; with a \"less than\" symbol

        • Replaces (ampersand)gt; with >

        • Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh;, with the corresponding characters

        • Replaces characters that are represented in decimal format, (ampersand)#nnnn;, with the corresponding characters

        LOWERCASE

        Use this option to convert uppercase letters (A-Z) to lowercase (a-z).

        URL_DECODE

        Use this option to decode a URL-encoded value.

        ", "SqlInjectionMatchTuple$TextTransformation": "

        Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass AWS WAF. If you specify a transformation, AWS WAF performs the transformation on FieldToMatch before inspecting a request for a match.

        CMD_LINE

        When you're concerned that attackers are injecting an operating system commandline command and using unusual formatting to disguise some or all of the command, use this option to perform the following transformations:

        • Delete the following characters: \\ \" ' ^

        • Delete spaces before the following characters: / (

        • Replace the following characters with a space: , ;

        • Replace multiple spaces with one space

        • Convert uppercase letters (A-Z) to lowercase (a-z)

        COMPRESS_WHITE_SPACE

        Use this option to replace the following characters with a space character (decimal 32):

        • \\f, formfeed, decimal 12

        • \\t, tab, decimal 9

        • \\n, newline, decimal 10

        • \\r, carriage return, decimal 13

        • \\v, vertical tab, decimal 11

        • non-breaking space, decimal 160

        COMPRESS_WHITE_SPACE also replaces multiple spaces with one space.

        HTML_ENTITY_DECODE

        Use this option to replace HTML-encoded characters with unencoded characters. HTML_ENTITY_DECODE performs the following operations:

        • Replaces (ampersand)quot; with \"

        • Replaces (ampersand)nbsp; with a non-breaking space, decimal 160

        • Replaces (ampersand)lt; with a \"less than\" symbol

        • Replaces (ampersand)gt; with >

        • Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh;, with the corresponding characters

        • Replaces characters that are represented in decimal format, (ampersand)#nnnn;, with the corresponding characters

        LOWERCASE

        Use this option to convert uppercase letters (A-Z) to lowercase (a-z).

        URL_DECODE

        Use this option to decode a URL-encoded value.

        NONE

        Specify NONE if you don't want to perform any text transformations.

        ", "XssMatchTuple$TextTransformation": "

        Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass AWS WAF. If you specify a transformation, AWS WAF performs the transformation on FieldToMatch before inspecting a request for a match.

        CMD_LINE

        When you're concerned that attackers are injecting an operating system commandline command and using unusual formatting to disguise some or all of the command, use this option to perform the following transformations:

        • Delete the following characters: \\ \" ' ^

        • Delete spaces before the following characters: / (

        • Replace the following characters with a space: , ;

        • Replace multiple spaces with one space

        • Convert uppercase letters (A-Z) to lowercase (a-z)

        COMPRESS_WHITE_SPACE

        Use this option to replace the following characters with a space character (decimal 32):

        • \\f, formfeed, decimal 12

        • \\t, tab, decimal 9

        • \\n, newline, decimal 10

        • \\r, carriage return, decimal 13

        • \\v, vertical tab, decimal 11

        • non-breaking space, decimal 160

        COMPRESS_WHITE_SPACE also replaces multiple spaces with one space.

        HTML_ENTITY_DECODE

        Use this option to replace HTML-encoded characters with unencoded characters. HTML_ENTITY_DECODE performs the following operations:

        • Replaces (ampersand)quot; with \"

        • Replaces (ampersand)nbsp; with a non-breaking space, decimal 160

        • Replaces (ampersand)lt; with a \"less than\" symbol

        • Replaces (ampersand)gt; with >

        • Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh;, with the corresponding characters

        • Replaces characters that are represented in decimal format, (ampersand)#nnnn;, with the corresponding characters

        LOWERCASE

        Use this option to convert uppercase letters (A-Z) to lowercase (a-z).

        URL_DECODE

        Use this option to decode a URL-encoded value.

        NONE

        Specify NONE if you don't want to perform any text transformations.

        " } }, "TimeWindow": { "base": "

        In a GetSampledRequests request, the StartTime and EndTime objects specify the time range for which you want AWS WAF to return a sample of web requests.

        In a GetSampledRequests response, the StartTime and EndTime objects specify the time range for which AWS WAF actually returned a sample of web requests. AWS WAF gets the specified number of requests from among the first 5,000 requests that your AWS resource receives during the specified time period. If your resource receives more than 5,000 requests during that period, AWS WAF stops sampling after the 5,000th request. In that case, EndTime is the time that AWS WAF received the 5,000th request.

        ", "refs": { "GetSampledRequestsRequest$TimeWindow": "

        The start date and time and the end date and time of the range for which you want GetSampledRequests to return a sample of requests. Specify the date and time in Unix time format (in seconds). You can specify any time range in the previous three hours.

        ", "GetSampledRequestsResponse$TimeWindow": "

        Usually, TimeWindow is the time range that you specified in the GetSampledRequests request. However, if your AWS resource received more than 5,000 requests during the time range that you specified in the request, GetSampledRequests returns the time range for the first 5,000 requests.

        " } }, "Timestamp": { "base": null, "refs": { "SampledHTTPRequest$Timestamp": "

        The time at which AWS WAF received the request from your AWS resource, in Unix time format (in seconds).

        ", "TimeWindow$StartTime": "

        The beginning of the time range from which you want GetSampledRequests to return a sample of the requests that your AWS resource received. You can specify any time range in the previous three hours.

        ", "TimeWindow$EndTime": "

        The end of the time range from which you want GetSampledRequests to return a sample of the requests that your AWS resource received. You can specify any time range in the previous three hours.

        " } }, "URIString": { "base": null, "refs": { "HTTPRequest$URI": "

        The part of a web request that identifies the resource, for example, /images/daily-ad.jpg.

        " } }, "UpdateByteMatchSetRequest": { "base": null, "refs": { } }, "UpdateByteMatchSetResponse": { "base": null, "refs": { } }, "UpdateIPSetRequest": { "base": null, "refs": { } }, "UpdateIPSetResponse": { "base": null, "refs": { } }, "UpdateRuleRequest": { "base": null, "refs": { } }, "UpdateRuleResponse": { "base": null, "refs": { } }, "UpdateSizeConstraintSetRequest": { "base": null, "refs": { } }, "UpdateSizeConstraintSetResponse": { "base": null, "refs": { } }, "UpdateSqlInjectionMatchSetRequest": { "base": "

        A request to update a SqlInjectionMatchSet.

        ", "refs": { } }, "UpdateSqlInjectionMatchSetResponse": { "base": "

        The response to an UpdateSqlInjectionMatchSets request.

        ", "refs": { } }, "UpdateWebACLRequest": { "base": null, "refs": { } }, "UpdateWebACLResponse": { "base": null, "refs": { } }, "UpdateXssMatchSetRequest": { "base": "

        A request to update an XssMatchSet.

        ", "refs": { } }, "UpdateXssMatchSetResponse": { "base": "

        The response to an UpdateXssMatchSets request.

        ", "refs": { } }, "WAFDisallowedNameException": { "base": "

        The name specified is invalid.

        ", "refs": { } }, "WAFInternalErrorException": { "base": "

        The operation failed because of a system problem, even though the request was valid. Retry your request.

        ", "refs": { } }, "WAFInvalidAccountException": { "base": "

        The operation failed because you tried to create, update, or delete an object by using an invalid account identifier.

        ", "refs": { } }, "WAFInvalidOperationException": { "base": "

        The operation failed because there was nothing to do. For example:

        • You tried to remove a Rule from a WebACL, but the Rule isn't in the specified WebACL.

        • You tried to remove an IP address from an IPSet, but the IP address isn't in the specified IPSet.

        • You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple isn't in the specified WebACL.

        • You tried to add a Rule to a WebACL, but the Rule already exists in the specified WebACL.

        • You tried to add an IP address to an IPSet, but the IP address already exists in the specified IPSet.

        • You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple already exists in the specified WebACL.

        ", "refs": { } }, "WAFInvalidParameterException": { "base": "

        The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

        • You specified an invalid parameter name.

        • You specified an invalid value.

        • You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) using an action other than INSERT or DELETE.

        • You tried to create a WebACL with a DefaultAction Type other than ALLOW, BLOCK, or COUNT.

        • You tried to update a WebACL with a WafAction Type other than ALLOW, BLOCK, or COUNT.

        • You tried to update a ByteMatchSet with a FieldToMatch Type other than HEADER, QUERY_STRING, or URI.

        • You tried to update a ByteMatchSet with a Field of HEADER but no value for Data.

        ", "refs": { } }, "WAFLimitsExceededException": { "base": "

        The operation exceeds a resource limit, for example, the maximum number of WebACL objects that you can create for an AWS account. For more information, see Limits in the AWS WAF Developer Guide.

        ", "refs": { } }, "WAFNonEmptyEntityException": { "base": "

        The operation failed because you tried to delete an object that isn't empty. For example:

        • You tried to delete a WebACL that still contains one or more Rule objects.

        • You tried to delete a Rule that still contains one or more ByteMatchSet objects or other predicates.

        • You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple objects.

        • You tried to delete an IPSet that references one or more IP addresses.

        ", "refs": { } }, "WAFNonexistentContainerException": { "base": "

        The operation failed because you tried to add an object to or delete an object from another object that doesn't exist. For example:

        • You tried to add a Rule to or delete a Rule from a WebACL that doesn't exist.

        • You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule that doesn't exist.

        • You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist.

        • You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a ByteMatchSet that doesn't exist.

        ", "refs": { } }, "WAFNonexistentItemException": { "base": "

        The operation failed because the referenced object doesn't exist.

        ", "refs": { } }, "WAFReferencedItemException": { "base": "

        The operation failed because you tried to delete an object that is still in use. For example:

        • You tried to delete a ByteMatchSet that is still referenced by a Rule.

        • You tried to delete a Rule that is still referenced by a WebACL.

        ", "refs": { } }, "WAFStaleDataException": { "base": "

        The operation failed because you tried to create, update, or delete an object by using a change token that has already been used.

        ", "refs": { } }, "WafAction": { "base": "

        For the action that is associated with a rule in a WebACL, specifies the action that you want AWS WAF to perform when a web request matches all of the conditions in a rule. For the default action in a WebACL, specifies the action that you want AWS WAF to take when a web request doesn't match all of the conditions in any of the rules in a WebACL.

        ", "refs": { "ActivatedRule$Action": "

        Specifies the action that CloudFront or AWS WAF takes when a web request matches the conditions in the Rule. Valid values for Action include the following:

        • ALLOW: CloudFront responds with the requested object.

        • BLOCK: CloudFront responds with an HTTP 403 (Forbidden) status code.

        • COUNT: AWS WAF increments a counter of requests that match the conditions in the rule and then continues to inspect the web request based on the remaining rules in the web ACL.

        ", "CreateWebACLRequest$DefaultAction": "

        The action that you want AWS WAF to take when a request doesn't match the criteria specified in any of the Rule objects that are associated with the WebACL.

        ", "UpdateWebACLRequest$DefaultAction": null, "WebACL$DefaultAction": "

        The action to perform if none of the Rules contained in the WebACL match. The action is specified by the WafAction object.

        " } }, "WafActionType": { "base": null, "refs": { "WafAction$Type": "

        Specifies how you want AWS WAF to respond to requests that match the settings in a Rule. Valid settings include the following:

        • ALLOW: AWS WAF allows requests

        • BLOCK: AWS WAF blocks requests

        • COUNT: AWS WAF increments a counter of the requests that match all of the conditions in the rule. AWS WAF then continues to inspect the web request based on the remaining rules in the web ACL. You can't specify COUNT for the default action for a WebACL.

        " } }, "WebACL": { "base": "

        Contains the Rules that identify the requests that you want to allow, block, or count. In a WebACL, you also specify a default action (ALLOW or BLOCK), and the action for each Rule that you add to a WebACL, for example, block requests from specified IP addresses or block requests from specified referrers. You also associate the WebACL with a CloudFront distribution to identify the requests that you want AWS WAF to filter. If you add more than one Rule to a WebACL, a request needs to match only one of the specifications to be allowed, blocked, or counted. For more information, see UpdateWebACL.

        ", "refs": { "CreateWebACLResponse$WebACL": "

        The WebACL returned in the CreateWebACL response.

        ", "GetWebACLResponse$WebACL": "

        Information about the WebACL that you specified in the GetWebACL request. For more information, see the following topics:

        • WebACL: Contains DefaultAction, MetricName, Name, an array of Rule objects, and WebACLId

        • DefaultAction (Data type is WafAction): Contains Type

        • Rules: Contains an array of ActivatedRule objects, which contain Action, Priority, and RuleId

        • Action: Contains Type

        " } }, "WebACLSummaries": { "base": null, "refs": { "ListWebACLsResponse$WebACLs": "

        An array of WebACLSummary objects.

        " } }, "WebACLSummary": { "base": "

        Contains the identifier and the name or description of the WebACL.

        ", "refs": { "WebACLSummaries$member": null } }, "WebACLUpdate": { "base": "

        Specifies whether to insert a Rule into or delete a Rule from a WebACL.

        ", "refs": { "WebACLUpdates$member": null } }, "WebACLUpdates": { "base": null, "refs": { "UpdateWebACLRequest$Updates": "

        An array of updates to make to the WebACL.

        An array of WebACLUpdate objects that you want to insert into or delete from a WebACL. For more information, see the applicable data types:

        " } }, "XssMatchSet": { "base": "

        A complex type that contains XssMatchTuple objects, which specify the parts of web requests that you want AWS WAF to inspect for cross-site scripting attacks and, if you want AWS WAF to inspect a header, the name of the header. If a XssMatchSet contains more than one XssMatchTuple object, a request needs to include cross-site scripting attacks in only one of the specified parts of the request to be considered a match.

        ", "refs": { "CreateXssMatchSetResponse$XssMatchSet": "

        An XssMatchSet.

        ", "GetXssMatchSetResponse$XssMatchSet": "

        Information about the XssMatchSet that you specified in the GetXssMatchSet request. For more information, see the following topics:

        • XssMatchSet: Contains Name, XssMatchSetId, and an array of XssMatchTuple objects

        • XssMatchTuple: Each XssMatchTuple object contains FieldToMatch and TextTransformation

        • FieldToMatch: Contains Data and Type

        " } }, "XssMatchSetSummaries": { "base": null, "refs": { "ListXssMatchSetsResponse$XssMatchSets": "

        An array of XssMatchSetSummary objects.

        " } }, "XssMatchSetSummary": { "base": "

        The Id and Name of an XssMatchSet.

        ", "refs": { "XssMatchSetSummaries$member": null } }, "XssMatchSetUpdate": { "base": "

        Specifies the part of a web request that you want to inspect for cross-site scripting attacks and indicates whether you want to add the specification to an XssMatchSet or delete it from an XssMatchSet.

        ", "refs": { "XssMatchSetUpdates$member": null } }, "XssMatchSetUpdates": { "base": null, "refs": { "UpdateXssMatchSetRequest$Updates": "

        An array of XssMatchSetUpdate objects that you want to insert into or delete from a XssMatchSet. For more information, see the applicable data types:

        " } }, "XssMatchTuple": { "base": "

        Specifies the part of a web request that you want AWS WAF to inspect for cross-site scripting attacks and, if you want AWS WAF to inspect a header, the name of the header.

        ", "refs": { "XssMatchSetUpdate$XssMatchTuple": "

        Specifies the part of a web request that you want AWS WAF to inspect for cross-site scripting attacks and, if you want AWS WAF to inspect a header, the name of the header.

        ", "XssMatchTuples$member": null } }, "XssMatchTuples": { "base": null, "refs": { "XssMatchSet$XssMatchTuples": "

        Specifies the parts of web requests that you want to inspect for cross-site scripting attacks.

        " } }, "errorMessage": { "base": null, "refs": { "WAFDisallowedNameException$message": null, "WAFInternalErrorException$message": null, "WAFInvalidOperationException$message": null, "WAFLimitsExceededException$message": null, "WAFNonEmptyEntityException$message": null, "WAFNonexistentContainerException$message": null, "WAFNonexistentItemException$message": null, "WAFReferencedItemException$message": null, "WAFStaleDataException$message": null } } } } aws-sdk-go-1.4.22/models/apis/waf/2015-08-24/examples-1.json000066400000000000000000000734271300374646400225020ustar00rootroot00000000000000{ "version": "1.0", "examples": { "CreateByteMatchSet": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "Name": "ByteMatchNameExample" }, "output": { "ByteMatchSet": { "ByteMatchSetId": "exampleIDs3t-46da-4fdb-b8d5-abc321j569j5", "Name": "ByteMatchNameExample" }, "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f" }, "comments": { "input": { }, "output": { } }, "description": "The following example creates a byte match set named ByteMatchNameExample.", "id": "createbytematchset-1473272359328", "title": "To create a byte match set" } ], "CreateIPSet": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "Name": "MyIPSetFriendlyName" }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "IPSet": { "IPSetDescriptors": [ { "Type": "IPV4", "Value": "192.0.2.44/32" } ], "IPSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5", "Name": "MyIPSetFriendlyName" } }, "comments": { "input": { }, "output": { } }, "description": "The following example creates an IP match set named MyIPSetFriendlyName.", "id": "createipset-1472501003122", "title": "To create an IP set" } ], "CreateRule": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "MetricName": "WAFByteHeaderRule", "Name": "WAFByteHeaderRule" }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "Rule": { "MetricName": "WAFByteHeaderRule", "Name": "WAFByteHeaderRule", "Predicates": [ { "DataId": "MyByteMatchSetID", "Negated": false, "Type": "ByteMatch" } ], "RuleId": "WAFRule-1-Example" } }, "comments": { "input": { }, "output": { } }, "description": "The following example creates a rule named WAFByteHeaderRule.", "id": "createrule-1474072675555", "title": "To create a rule" } ], "CreateSizeConstraintSet": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "Name": "MySampleSizeConstraintSet" }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "SizeConstraintSet": { "Name": "MySampleSizeConstraintSet", "SizeConstraintSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5", "SizeConstraints": [ { "ComparisonOperator": "GT", "FieldToMatch": { "Type": "QUERY_STRING" }, "Size": 0, "TextTransformation": "NONE" } ] } }, "comments": { "input": { }, "output": { } }, "description": "The following example creates size constraint set named MySampleSizeConstraintSet.", "id": "createsizeconstraint-1474299140754", "title": "To create a size constraint" } ], "CreateSqlInjectionMatchSet": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "Name": "MySQLInjectionMatchSet" }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "SqlInjectionMatchSet": { "Name": "MySQLInjectionMatchSet", "SqlInjectionMatchSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5", "SqlInjectionMatchTuples": [ { "FieldToMatch": { "Type": "QUERY_STRING" }, "TextTransformation": "URL_DECODE" } ] } }, "comments": { "input": { }, "output": { } }, "description": "The following example creates a SQL injection match set named MySQLInjectionMatchSet.", "id": "createsqlinjectionmatchset-1474492796105", "title": "To create a SQL injection match set" } ], "CreateWebACL": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "DefaultAction": { "Type": "ALLOW" }, "MetricName": "CreateExample", "Name": "CreateExample" }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "WebACL": { "DefaultAction": { "Type": "ALLOW" }, "MetricName": "CreateExample", "Name": "CreateExample", "Rules": [ { "Action": { "Type": "ALLOW" }, "Priority": 1, "RuleId": "WAFRule-1-Example" } ], "WebACLId": "example-46da-4444-5555-example" } }, "comments": { "input": { }, "output": { } }, "description": "The following example creates a web ACL named CreateExample.", "id": "createwebacl-1472061481310", "title": "To create a web ACL" } ], "CreateXssMatchSet": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "Name": "MySampleXssMatchSet" }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "XssMatchSet": { "Name": "MySampleXssMatchSet", "XssMatchSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5", "XssMatchTuples": [ { "FieldToMatch": { "Type": "QUERY_STRING" }, "TextTransformation": "URL_DECODE" } ] } }, "comments": { "input": { }, "output": { } }, "description": "The following example creates an XSS match set named MySampleXssMatchSet.", "id": "createxssmatchset-1474560868500", "title": "To create an XSS match set" } ], "DeleteByteMatchSet": [ { "input": { "ByteMatchSetId": "exampleIDs3t-46da-4fdb-b8d5-abc321j569j5", "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f" }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes a byte match set with the ID exampleIDs3t-46da-4fdb-b8d5-abc321j569j5.", "id": "deletebytematchset-1473367566229", "title": "To delete a byte match set" } ], "DeleteIPSet": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "IPSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5" }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes an IP match set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.", "id": "deleteipset-1472767434306", "title": "To delete an IP set" } ], "DeleteRule": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "RuleId": "WAFRule-1-Example" }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes a rule with the ID WAFRule-1-Example.", "id": "deleterule-1474073108749", "title": "To delete a rule" } ], "DeleteSizeConstraintSet": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "SizeConstraintSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5" }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes a size constraint set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.", "id": "deletesizeconstraintset-1474299857905", "title": "To delete a size constraint set" } ], "DeleteSqlInjectionMatchSet": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "SqlInjectionMatchSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5" }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes a SQL injection match set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.", "id": "deletesqlinjectionmatchset-1474493373197", "title": "To delete a SQL injection match set" } ], "DeleteWebACL": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "WebACLId": "example-46da-4444-5555-example" }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes a web ACL with the ID example-46da-4444-5555-example.", "id": "deletewebacl-1472767755931", "title": "To delete a web ACL" } ], "DeleteXssMatchSet": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "XssMatchSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5" }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes an XSS match set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.", "id": "deletexssmatchset-1474561302618", "title": "To delete an XSS match set" } ], "GetByteMatchSet": [ { "input": { "ByteMatchSetId": "exampleIDs3t-46da-4fdb-b8d5-abc321j569j5" }, "output": { "ByteMatchSet": { "ByteMatchSetId": "exampleIDs3t-46da-4fdb-b8d5-abc321j569j5", "ByteMatchTuples": [ { "FieldToMatch": { "Data": "referer", "Type": "HEADER" }, "PositionalConstraint": "CONTAINS", "TargetString": "badrefer1", "TextTransformation": "NONE" } ], "Name": "ByteMatchNameExample" } }, "comments": { "input": { }, "output": { } }, "description": "The following example returns the details of a byte match set with the ID exampleIDs3t-46da-4fdb-b8d5-abc321j569j5.", "id": "getbytematchset-1473273311532", "title": "To get a byte match set" } ], "GetChangeToken": [ { "input": { }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f" }, "comments": { "input": { }, "output": { } }, "description": "The following example returns a change token to use for a create, update or delete operation.", "id": "get-change-token-example-1471635120794", "title": "To get a change token" } ], "GetChangeTokenStatus": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f" }, "output": { "ChangeTokenStatus": "PENDING" }, "comments": { "input": { }, "output": { } }, "description": "The following example returns the status of a change token with the ID abcd12f2-46da-4fdb-b8d5-fbd4c466928f.", "id": "getchangetokenstatus-1474658417107", "title": "To get the change token status" } ], "GetIPSet": [ { "input": { "IPSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5" }, "output": { "IPSet": { "IPSetDescriptors": [ { "Type": "IPV4", "Value": "192.0.2.44/32" } ], "IPSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5", "Name": "MyIPSetFriendlyName" } }, "comments": { "input": { }, "output": { } }, "description": "The following example returns the details of an IP match set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.", "id": "getipset-1474658688675", "title": "To get an IP set" } ], "GetRule": [ { "input": { "RuleId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5" }, "output": { "Rule": { "MetricName": "WAFByteHeaderRule", "Name": "WAFByteHeaderRule", "Predicates": [ { "DataId": "MyByteMatchSetID", "Negated": false, "Type": "ByteMatch" } ], "RuleId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5" } }, "comments": { "input": { }, "output": { } }, "description": "The following example returns the details of a rule with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.", "id": "getrule-1474659238790", "title": "To get a rule" } ], "GetSampledRequests": [ { "input": { "MaxItems": 100, "RuleId": "WAFRule-1-Example", "TimeWindow": { "EndTime": "2016-09-27T15:50Z", "StartTime": "2016-09-27T15:50Z" }, "WebAclId": "createwebacl-1472061481310" }, "output": { "PopulationSize": 50, "SampledRequests": [ { "Action": "BLOCK", "Request": { "ClientIP": "192.0.2.44", "Country": "US", "HTTPVersion": "HTTP/1.1", "Headers": [ { "Name": "User-Agent", "Value": "BadBot " } ], "Method": "HEAD" }, "Timestamp": "2016-09-27T14:55Z", "Weight": 1 } ], "TimeWindow": { "EndTime": "2016-09-27T15:50Z", "StartTime": "2016-09-27T14:50Z" } }, "comments": { "input": { }, "output": { } }, "description": "The following example returns detailed information about 100 requests --a sample-- that AWS WAF randomly selects from among the first 5,000 requests that your AWS resource received between the time period 2016-09-27T15:50Z to 2016-09-27T15:50Z.", "id": "getsampledrequests-1474927997195", "title": "To get a sampled requests" } ], "GetSizeConstraintSet": [ { "input": { "SizeConstraintSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5" }, "output": { "SizeConstraintSet": { "Name": "MySampleSizeConstraintSet", "SizeConstraintSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5", "SizeConstraints": [ { "ComparisonOperator": "GT", "FieldToMatch": { "Type": "QUERY_STRING" }, "Size": 0, "TextTransformation": "NONE" } ] } }, "comments": { "input": { }, "output": { } }, "description": "The following example returns the details of a size constraint match set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.", "id": "getsizeconstraintset-1475005422493", "title": "To get a size constraint set" } ], "GetSqlInjectionMatchSet": [ { "input": { "SqlInjectionMatchSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5" }, "output": { "SqlInjectionMatchSet": { "Name": "MySQLInjectionMatchSet", "SqlInjectionMatchSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5", "SqlInjectionMatchTuples": [ { "FieldToMatch": { "Type": "QUERY_STRING" }, "TextTransformation": "URL_DECODE" } ] } }, "comments": { "input": { }, "output": { } }, "description": "The following example returns the details of a SQL injection match set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.", "id": "getsqlinjectionmatchset-1475005940137", "title": "To get a SQL injection match set" } ], "GetWebACL": [ { "input": { "WebACLId": "createwebacl-1472061481310" }, "output": { "WebACL": { "DefaultAction": { "Type": "ALLOW" }, "MetricName": "CreateExample", "Name": "CreateExample", "Rules": [ { "Action": { "Type": "ALLOW" }, "Priority": 1, "RuleId": "WAFRule-1-Example" } ], "WebACLId": "createwebacl-1472061481310" } }, "comments": { "input": { }, "output": { } }, "description": "The following example returns the details of a web ACL with the ID createwebacl-1472061481310.", "id": "getwebacl-1475006348525", "title": "To get a web ACL" } ], "GetXssMatchSet": [ { "input": { "XssMatchSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5" }, "output": { "XssMatchSet": { "Name": "MySampleXssMatchSet", "XssMatchSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5", "XssMatchTuples": [ { "FieldToMatch": { "Type": "QUERY_STRING" }, "TextTransformation": "URL_DECODE" } ] } }, "comments": { "input": { }, "output": { } }, "description": "The following example returns the details of an XSS match set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.", "id": "getxssmatchset-1475187879017", "title": "To get an XSS match set" } ], "ListIPSets": [ { "input": { "Limit": 100 }, "output": { "IPSets": [ { "IPSetId": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "Name": "MyIPSetFriendlyName" } ] }, "comments": { "input": { }, "output": { } }, "description": "The following example returns an array of up to 100 IP match sets.", "id": "listipsets-1472235676229", "title": "To list IP sets" } ], "ListRules": [ { "input": { "Limit": 100 }, "output": { "Rules": [ { "Name": "WAFByteHeaderRule", "RuleId": "WAFRule-1-Example" } ] }, "comments": { "input": { }, "output": { } }, "description": "The following example returns an array of up to 100 rules.", "id": "listrules-1475258406433", "title": "To list rules" } ], "ListSizeConstraintSets": [ { "input": { "Limit": 100 }, "output": { "SizeConstraintSets": [ { "Name": "MySampleSizeConstraintSet", "SizeConstraintSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5" } ] }, "comments": { "input": { }, "output": { } }, "description": "The following example returns an array of up to 100 size contraint match sets.", "id": "listsizeconstraintsets-1474300067597", "title": "To list a size constraint sets" } ], "ListSqlInjectionMatchSets": [ { "input": { "Limit": 100 }, "output": { "SqlInjectionMatchSets": [ { "Name": "MySQLInjectionMatchSet", "SqlInjectionMatchSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5" } ] }, "comments": { "input": { }, "output": { } }, "description": "The following example returns an array of up to 100 SQL injection match sets.", "id": "listsqlinjectionmatchset-1474493560103", "title": "To list SQL injection match sets" } ], "ListWebACLs": [ { "input": { "Limit": 100 }, "output": { "WebACLs": [ { "Name": "WebACLexample", "WebACLId": "webacl-1472061481310" } ] }, "comments": { "input": { }, "output": { } }, "description": "The following example returns an array of up to 100 web ACLs.", "id": "listwebacls-1475258732691", "title": "To list Web ACLs" } ], "ListXssMatchSets": [ { "input": { "Limit": 100 }, "output": { "XssMatchSets": [ { "Name": "MySampleXssMatchSet", "XssMatchSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5" } ] }, "comments": { "input": { }, "output": { } }, "description": "The following example returns an array of up to 100 XSS match sets.", "id": "listxssmatchsets-1474561481168", "title": "To list XSS match sets" } ], "UpdateByteMatchSet": [ { "input": { "ByteMatchSetId": "exampleIDs3t-46da-4fdb-b8d5-abc321j569j5", "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "Updates": [ { "Action": "DELETE", "ByteMatchTuple": { "FieldToMatch": { "Data": "referer", "Type": "HEADER" }, "PositionalConstraint": "CONTAINS", "TargetString": "badrefer1", "TextTransformation": "NONE" } } ] }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes a ByteMatchTuple object (filters) in an byte match set with the ID exampleIDs3t-46da-4fdb-b8d5-abc321j569j5.", "id": "updatebytematchset-1475259074558", "title": "To update a byte match set" } ], "UpdateIPSet": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "IPSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5", "Updates": [ { "Action": "DELETE", "IPSetDescriptor": { "Type": "IPV4", "Value": "192.0.2.44/32" } } ] }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes an IPSetDescriptor object in an IP match set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.", "id": "updateipset-1475259733625", "title": "To update an IP set" } ], "UpdateRule": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "RuleId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5", "Updates": [ { "Action": "DELETE", "Predicate": { "DataId": "MyByteMatchSetID", "Negated": false, "Type": "ByteMatch" } } ] }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes a Predicate object in a rule with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.", "id": "updaterule-1475260064720", "title": "To update a rule" } ], "UpdateSizeConstraintSet": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "SizeConstraintSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5", "Updates": [ { "Action": "DELETE", "SizeConstraint": { "ComparisonOperator": "GT", "FieldToMatch": { "Type": "QUERY_STRING" }, "Size": 0, "TextTransformation": "NONE" } } ] }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes a SizeConstraint object (filters) in a size constraint set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.", "id": "updatesizeconstraintset-1475531697891", "title": "To update a size constraint set" } ], "UpdateSqlInjectionMatchSet": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "SqlInjectionMatchSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5", "Updates": [ { "Action": "DELETE", "SqlInjectionMatchTuple": { "FieldToMatch": { "Type": "QUERY_STRING" }, "TextTransformation": "URL_DECODE" } } ] }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes a SqlInjectionMatchTuple object (filters) in a SQL injection match set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.", "id": "updatesqlinjectionmatchset-1475532094686", "title": "To update a SQL injection match set" } ], "UpdateWebACL": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "DefaultAction": { "Type": "ALLOW" }, "Updates": [ { "Action": "DELETE", "ActivatedRule": { "Action": { "Type": "ALLOW" }, "Priority": 1, "RuleId": "WAFRule-1-Example" } } ], "WebACLId": "webacl-1472061481310" }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes an ActivatedRule object in a WebACL with the ID webacl-1472061481310.", "id": "updatewebacl-1475533627385", "title": "To update a Web ACL" } ], "UpdateXssMatchSet": [ { "input": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f", "Updates": [ { "Action": "DELETE", "XssMatchTuple": { "FieldToMatch": { "Type": "QUERY_STRING" }, "TextTransformation": "URL_DECODE" } } ], "XssMatchSetId": "example1ds3t-46da-4fdb-b8d5-abc321j569j5" }, "output": { "ChangeToken": "abcd12f2-46da-4fdb-b8d5-fbd4c466928f" }, "comments": { "input": { }, "output": { } }, "description": "The following example deletes an XssMatchTuple object (filters) in an XssMatchSet with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.", "id": "updatexssmatchset-1475534098881", "title": "To update an XSS match set" } ] } } aws-sdk-go-1.4.22/models/apis/workspaces/000077500000000000000000000000001300374646400201635ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/workspaces/2015-04-08/000077500000000000000000000000001300374646400212205ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/apis/workspaces/2015-04-08/api-2.json000066400000000000000000000533361300374646400230350ustar00rootroot00000000000000{ "version":"2.0", "metadata":{ "apiVersion":"2015-04-08", "endpointPrefix":"workspaces", "jsonVersion":"1.1", "protocol":"json", "serviceFullName":"Amazon WorkSpaces", "signatureVersion":"v4", "targetPrefix":"WorkspacesService" }, "operations":{ "CreateTags":{ "name":"CreateTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateTagsRequest"}, "output":{"shape":"CreateTagsResult"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterValuesException"}, {"shape":"ResourceLimitExceededException"} ] }, "CreateWorkspaces":{ "name":"CreateWorkspaces", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"CreateWorkspacesRequest"}, "output":{"shape":"CreateWorkspacesResult"}, "errors":[ {"shape":"ResourceLimitExceededException"}, {"shape":"InvalidParameterValuesException"} ] }, "DeleteTags":{ "name":"DeleteTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DeleteTagsRequest"}, "output":{"shape":"DeleteTagsResult"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidParameterValuesException"} ] }, "DescribeTags":{ "name":"DescribeTags", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeTagsRequest"}, "output":{"shape":"DescribeTagsResult"}, "errors":[ {"shape":"ResourceNotFoundException"} ] }, "DescribeWorkspaceBundles":{ "name":"DescribeWorkspaceBundles", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeWorkspaceBundlesRequest"}, "output":{"shape":"DescribeWorkspaceBundlesResult"}, "errors":[ {"shape":"InvalidParameterValuesException"} ] }, "DescribeWorkspaceDirectories":{ "name":"DescribeWorkspaceDirectories", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeWorkspaceDirectoriesRequest"}, "output":{"shape":"DescribeWorkspaceDirectoriesResult"}, "errors":[ {"shape":"InvalidParameterValuesException"} ] }, "DescribeWorkspaces":{ "name":"DescribeWorkspaces", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeWorkspacesRequest"}, "output":{"shape":"DescribeWorkspacesResult"}, "errors":[ {"shape":"InvalidParameterValuesException"}, {"shape":"ResourceUnavailableException"} ] }, "DescribeWorkspacesConnectionStatus":{ "name":"DescribeWorkspacesConnectionStatus", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"DescribeWorkspacesConnectionStatusRequest"}, "output":{"shape":"DescribeWorkspacesConnectionStatusResult"}, "errors":[ {"shape":"InvalidParameterValuesException"} ] }, "ModifyWorkspaceProperties":{ "name":"ModifyWorkspaceProperties", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"ModifyWorkspacePropertiesRequest"}, "output":{"shape":"ModifyWorkspacePropertiesResult"}, "errors":[ {"shape":"InvalidParameterValuesException"}, {"shape":"InvalidResourceStateException"}, {"shape":"OperationInProgressException"}, {"shape":"UnsupportedWorkspaceConfigurationException"}, {"shape":"ResourceNotFoundException"}, {"shape":"AccessDeniedException"}, {"shape":"ResourceUnavailableException"} ] }, "RebootWorkspaces":{ "name":"RebootWorkspaces", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RebootWorkspacesRequest"}, "output":{"shape":"RebootWorkspacesResult"} }, "RebuildWorkspaces":{ "name":"RebuildWorkspaces", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"RebuildWorkspacesRequest"}, "output":{"shape":"RebuildWorkspacesResult"} }, "StartWorkspaces":{ "name":"StartWorkspaces", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StartWorkspacesRequest"}, "output":{"shape":"StartWorkspacesResult"} }, "StopWorkspaces":{ "name":"StopWorkspaces", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"StopWorkspacesRequest"}, "output":{"shape":"StopWorkspacesResult"} }, "TerminateWorkspaces":{ "name":"TerminateWorkspaces", "http":{ "method":"POST", "requestUri":"/" }, "input":{"shape":"TerminateWorkspacesRequest"}, "output":{"shape":"TerminateWorkspacesResult"} } }, "shapes":{ "ARN":{ "type":"string", "pattern":"^arn:aws:[A-Za-z0-9][A-za-z0-9_/.-]{0,62}:[A-za-z0-9_/.-]{0,63}:[A-za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-za-z0-9_/.-]{0,127}$" }, "AccessDeniedException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "Alias":{"type":"string"}, "BooleanObject":{"type":"boolean"}, "BundleId":{ "type":"string", "pattern":"^wsb-[0-9a-z]{8,63}$" }, "BundleIdList":{ "type":"list", "member":{"shape":"BundleId"}, "max":25, "min":1 }, "BundleList":{ "type":"list", "member":{"shape":"WorkspaceBundle"} }, "BundleOwner":{"type":"string"}, "Compute":{ "type":"string", "enum":[ "VALUE", "STANDARD", "PERFORMANCE" ] }, "ComputeType":{ "type":"structure", "members":{ "Name":{"shape":"Compute"} } }, "ComputerName":{"type":"string"}, "ConnectionState":{ "type":"string", "enum":[ "CONNECTED", "DISCONNECTED", "UNKNOWN" ] }, "CreateTagsRequest":{ "type":"structure", "required":[ "ResourceId", "Tags" ], "members":{ "ResourceId":{"shape":"NonEmptyString"}, "Tags":{"shape":"TagList"} } }, "CreateTagsResult":{ "type":"structure", "members":{ } }, "CreateWorkspacesRequest":{ "type":"structure", "required":["Workspaces"], "members":{ "Workspaces":{"shape":"WorkspaceRequestList"} } }, "CreateWorkspacesResult":{ "type":"structure", "members":{ "FailedRequests":{"shape":"FailedCreateWorkspaceRequests"}, "PendingRequests":{"shape":"WorkspaceList"} } }, "DefaultOu":{"type":"string"}, "DefaultWorkspaceCreationProperties":{ "type":"structure", "members":{ "EnableWorkDocs":{"shape":"BooleanObject"}, "EnableInternetAccess":{"shape":"BooleanObject"}, "DefaultOu":{"shape":"DefaultOu"}, "CustomSecurityGroupId":{"shape":"SecurityGroupId"}, "UserEnabledAsLocalAdministrator":{"shape":"BooleanObject"} } }, "DeleteTagsRequest":{ "type":"structure", "required":[ "ResourceId", "TagKeys" ], "members":{ "ResourceId":{"shape":"NonEmptyString"}, "TagKeys":{"shape":"TagKeyList"} } }, "DeleteTagsResult":{ "type":"structure", "members":{ } }, "DescribeTagsRequest":{ "type":"structure", "required":["ResourceId"], "members":{ "ResourceId":{"shape":"NonEmptyString"} } }, "DescribeTagsResult":{ "type":"structure", "members":{ "TagList":{"shape":"TagList"} } }, "DescribeWorkspaceBundlesRequest":{ "type":"structure", "members":{ "BundleIds":{"shape":"BundleIdList"}, "Owner":{"shape":"BundleOwner"}, "NextToken":{"shape":"PaginationToken"} } }, "DescribeWorkspaceBundlesResult":{ "type":"structure", "members":{ "Bundles":{"shape":"BundleList"}, "NextToken":{"shape":"PaginationToken"} } }, "DescribeWorkspaceDirectoriesRequest":{ "type":"structure", "members":{ "DirectoryIds":{"shape":"DirectoryIdList"}, "NextToken":{"shape":"PaginationToken"} } }, "DescribeWorkspaceDirectoriesResult":{ "type":"structure", "members":{ "Directories":{"shape":"DirectoryList"}, "NextToken":{"shape":"PaginationToken"} } }, "DescribeWorkspacesConnectionStatusRequest":{ "type":"structure", "members":{ "WorkspaceIds":{"shape":"WorkspaceIdList"}, "NextToken":{"shape":"PaginationToken"} } }, "DescribeWorkspacesConnectionStatusResult":{ "type":"structure", "members":{ "WorkspacesConnectionStatus":{"shape":"WorkspaceConnectionStatusList"}, "NextToken":{"shape":"PaginationToken"} } }, "DescribeWorkspacesRequest":{ "type":"structure", "members":{ "WorkspaceIds":{"shape":"WorkspaceIdList"}, "DirectoryId":{"shape":"DirectoryId"}, "UserName":{"shape":"UserName"}, "BundleId":{"shape":"BundleId"}, "Limit":{"shape":"Limit"}, "NextToken":{"shape":"PaginationToken"} } }, "DescribeWorkspacesResult":{ "type":"structure", "members":{ "Workspaces":{"shape":"WorkspaceList"}, "NextToken":{"shape":"PaginationToken"} } }, "Description":{"type":"string"}, "DirectoryId":{ "type":"string", "pattern":"^d-[0-9a-f]{8,63}$" }, "DirectoryIdList":{ "type":"list", "member":{"shape":"DirectoryId"}, "max":25, "min":1 }, "DirectoryList":{ "type":"list", "member":{"shape":"WorkspaceDirectory"} }, "DirectoryName":{"type":"string"}, "DnsIpAddresses":{ "type":"list", "member":{"shape":"IpAddress"} }, "ErrorType":{"type":"string"}, "ExceptionMessage":{"type":"string"}, "FailedCreateWorkspaceRequest":{ "type":"structure", "members":{ "WorkspaceRequest":{"shape":"WorkspaceRequest"}, "ErrorCode":{"shape":"ErrorType"}, "ErrorMessage":{"shape":"Description"} } }, "FailedCreateWorkspaceRequests":{ "type":"list", "member":{"shape":"FailedCreateWorkspaceRequest"} }, "FailedRebootWorkspaceRequests":{ "type":"list", "member":{"shape":"FailedWorkspaceChangeRequest"} }, "FailedRebuildWorkspaceRequests":{ "type":"list", "member":{"shape":"FailedWorkspaceChangeRequest"} }, "FailedStartWorkspaceRequests":{ "type":"list", "member":{"shape":"FailedWorkspaceChangeRequest"} }, "FailedStopWorkspaceRequests":{ "type":"list", "member":{"shape":"FailedWorkspaceChangeRequest"} }, "FailedTerminateWorkspaceRequests":{ "type":"list", "member":{"shape":"FailedWorkspaceChangeRequest"} }, "FailedWorkspaceChangeRequest":{ "type":"structure", "members":{ "WorkspaceId":{"shape":"WorkspaceId"}, "ErrorCode":{"shape":"ErrorType"}, "ErrorMessage":{"shape":"Description"} } }, "InvalidParameterValuesException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "InvalidResourceStateException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "IpAddress":{"type":"string"}, "Limit":{ "type":"integer", "max":25, "min":1 }, "ModifyWorkspacePropertiesRequest":{ "type":"structure", "required":[ "WorkspaceId", "WorkspaceProperties" ], "members":{ "WorkspaceId":{"shape":"WorkspaceId"}, "WorkspaceProperties":{"shape":"WorkspaceProperties"} } }, "ModifyWorkspacePropertiesResult":{ "type":"structure", "members":{ } }, "NonEmptyString":{ "type":"string", "min":1 }, "OperationInProgressException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "PaginationToken":{ "type":"string", "max":63, "min":1 }, "RebootRequest":{ "type":"structure", "required":["WorkspaceId"], "members":{ "WorkspaceId":{"shape":"WorkspaceId"} } }, "RebootWorkspaceRequests":{ "type":"list", "member":{"shape":"RebootRequest"}, "max":25, "min":1 }, "RebootWorkspacesRequest":{ "type":"structure", "required":["RebootWorkspaceRequests"], "members":{ "RebootWorkspaceRequests":{"shape":"RebootWorkspaceRequests"} } }, "RebootWorkspacesResult":{ "type":"structure", "members":{ "FailedRequests":{"shape":"FailedRebootWorkspaceRequests"} } }, "RebuildRequest":{ "type":"structure", "required":["WorkspaceId"], "members":{ "WorkspaceId":{"shape":"WorkspaceId"} } }, "RebuildWorkspaceRequests":{ "type":"list", "member":{"shape":"RebuildRequest"}, "max":1, "min":1 }, "RebuildWorkspacesRequest":{ "type":"structure", "required":["RebuildWorkspaceRequests"], "members":{ "RebuildWorkspaceRequests":{"shape":"RebuildWorkspaceRequests"} } }, "RebuildWorkspacesResult":{ "type":"structure", "members":{ "FailedRequests":{"shape":"FailedRebuildWorkspaceRequests"} } }, "RegistrationCode":{ "type":"string", "max":20, "min":1 }, "ResourceLimitExceededException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "ResourceNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"}, "ResourceId":{"shape":"NonEmptyString"} }, "exception":true }, "ResourceUnavailableException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"}, "ResourceId":{"shape":"NonEmptyString"} }, "exception":true }, "RunningMode":{ "type":"string", "enum":[ "AUTO_STOP", "ALWAYS_ON" ] }, "RunningModeAutoStopTimeoutInMinutes":{"type":"integer"}, "SecurityGroupId":{ "type":"string", "pattern":"^(sg-[0-9a-f]{8})$" }, "StartRequest":{ "type":"structure", "members":{ "WorkspaceId":{"shape":"WorkspaceId"} } }, "StartWorkspaceRequests":{ "type":"list", "member":{"shape":"StartRequest"}, "max":25, "min":1 }, "StartWorkspacesRequest":{ "type":"structure", "required":["StartWorkspaceRequests"], "members":{ "StartWorkspaceRequests":{"shape":"StartWorkspaceRequests"} } }, "StartWorkspacesResult":{ "type":"structure", "members":{ "FailedRequests":{"shape":"FailedStartWorkspaceRequests"} } }, "StopRequest":{ "type":"structure", "members":{ "WorkspaceId":{"shape":"WorkspaceId"} } }, "StopWorkspaceRequests":{ "type":"list", "member":{"shape":"StopRequest"}, "max":25, "min":1 }, "StopWorkspacesRequest":{ "type":"structure", "required":["StopWorkspaceRequests"], "members":{ "StopWorkspaceRequests":{"shape":"StopWorkspaceRequests"} } }, "StopWorkspacesResult":{ "type":"structure", "members":{ "FailedRequests":{"shape":"FailedStopWorkspaceRequests"} } }, "SubnetId":{ "type":"string", "pattern":"^(subnet-[0-9a-f]{8})$" }, "SubnetIds":{ "type":"list", "member":{"shape":"SubnetId"} }, "Tag":{ "type":"structure", "required":["Key"], "members":{ "Key":{"shape":"TagKey"}, "Value":{"shape":"TagValue"} } }, "TagKey":{ "type":"string", "max":127, "min":1 }, "TagKeyList":{ "type":"list", "member":{"shape":"NonEmptyString"} }, "TagList":{ "type":"list", "member":{"shape":"Tag"} }, "TagValue":{ "type":"string", "max":255 }, "TerminateRequest":{ "type":"structure", "required":["WorkspaceId"], "members":{ "WorkspaceId":{"shape":"WorkspaceId"} } }, "TerminateWorkspaceRequests":{ "type":"list", "member":{"shape":"TerminateRequest"}, "max":25, "min":1 }, "TerminateWorkspacesRequest":{ "type":"structure", "required":["TerminateWorkspaceRequests"], "members":{ "TerminateWorkspaceRequests":{"shape":"TerminateWorkspaceRequests"} } }, "TerminateWorkspacesResult":{ "type":"structure", "members":{ "FailedRequests":{"shape":"FailedTerminateWorkspaceRequests"} } }, "Timestamp":{"type":"timestamp"}, "UnsupportedWorkspaceConfigurationException":{ "type":"structure", "members":{ "message":{"shape":"ExceptionMessage"} }, "exception":true }, "UserName":{ "type":"string", "max":63, "min":1 }, "UserStorage":{ "type":"structure", "members":{ "Capacity":{"shape":"NonEmptyString"} } }, "VolumeEncryptionKey":{"type":"string"}, "Workspace":{ "type":"structure", "members":{ "WorkspaceId":{"shape":"WorkspaceId"}, "DirectoryId":{"shape":"DirectoryId"}, "UserName":{"shape":"UserName"}, "IpAddress":{"shape":"IpAddress"}, "State":{"shape":"WorkspaceState"}, "BundleId":{"shape":"BundleId"}, "SubnetId":{"shape":"SubnetId"}, "ErrorMessage":{"shape":"Description"}, "ErrorCode":{"shape":"WorkspaceErrorCode"}, "ComputerName":{"shape":"ComputerName"}, "VolumeEncryptionKey":{"shape":"VolumeEncryptionKey"}, "UserVolumeEncryptionEnabled":{"shape":"BooleanObject"}, "RootVolumeEncryptionEnabled":{"shape":"BooleanObject"}, "WorkspaceProperties":{"shape":"WorkspaceProperties"} } }, "WorkspaceBundle":{ "type":"structure", "members":{ "BundleId":{"shape":"BundleId"}, "Name":{"shape":"NonEmptyString"}, "Owner":{"shape":"BundleOwner"}, "Description":{"shape":"Description"}, "UserStorage":{"shape":"UserStorage"}, "ComputeType":{"shape":"ComputeType"} } }, "WorkspaceConnectionStatus":{ "type":"structure", "members":{ "WorkspaceId":{"shape":"WorkspaceId"}, "ConnectionState":{"shape":"ConnectionState"}, "ConnectionStateCheckTimestamp":{"shape":"Timestamp"}, "LastKnownUserConnectionTimestamp":{"shape":"Timestamp"} } }, "WorkspaceConnectionStatusList":{ "type":"list", "member":{"shape":"WorkspaceConnectionStatus"} }, "WorkspaceDirectory":{ "type":"structure", "members":{ "DirectoryId":{"shape":"DirectoryId"}, "Alias":{"shape":"Alias"}, "DirectoryName":{"shape":"DirectoryName"}, "RegistrationCode":{"shape":"RegistrationCode"}, "SubnetIds":{"shape":"SubnetIds"}, "DnsIpAddresses":{"shape":"DnsIpAddresses"}, "CustomerUserName":{"shape":"UserName"}, "IamRoleId":{"shape":"ARN"}, "DirectoryType":{"shape":"WorkspaceDirectoryType"}, "WorkspaceSecurityGroupId":{"shape":"SecurityGroupId"}, "State":{"shape":"WorkspaceDirectoryState"}, "WorkspaceCreationProperties":{"shape":"DefaultWorkspaceCreationProperties"} } }, "WorkspaceDirectoryState":{ "type":"string", "enum":[ "REGISTERING", "REGISTERED", "DEREGISTERING", "DEREGISTERED", "ERROR" ] }, "WorkspaceDirectoryType":{ "type":"string", "enum":[ "SIMPLE_AD", "AD_CONNECTOR" ] }, "WorkspaceErrorCode":{"type":"string"}, "WorkspaceId":{ "type":"string", "pattern":"^ws-[0-9a-z]{8,63}$" }, "WorkspaceIdList":{ "type":"list", "member":{"shape":"WorkspaceId"}, "max":25, "min":1 }, "WorkspaceList":{ "type":"list", "member":{"shape":"Workspace"} }, "WorkspaceProperties":{ "type":"structure", "members":{ "RunningMode":{"shape":"RunningMode"}, "RunningModeAutoStopTimeoutInMinutes":{"shape":"RunningModeAutoStopTimeoutInMinutes"} } }, "WorkspaceRequest":{ "type":"structure", "required":[ "DirectoryId", "UserName", "BundleId" ], "members":{ "DirectoryId":{"shape":"DirectoryId"}, "UserName":{"shape":"UserName"}, "BundleId":{"shape":"BundleId"}, "VolumeEncryptionKey":{"shape":"VolumeEncryptionKey"}, "UserVolumeEncryptionEnabled":{"shape":"BooleanObject"}, "RootVolumeEncryptionEnabled":{"shape":"BooleanObject"}, "WorkspaceProperties":{"shape":"WorkspaceProperties"}, "Tags":{"shape":"TagList"} } }, "WorkspaceRequestList":{ "type":"list", "member":{"shape":"WorkspaceRequest"}, "max":25, "min":1 }, "WorkspaceState":{ "type":"string", "enum":[ "PENDING", "AVAILABLE", "IMPAIRED", "UNHEALTHY", "REBOOTING", "STARTING", "REBUILDING", "MAINTENANCE", "TERMINATING", "TERMINATED", "SUSPENDED", "STOPPING", "STOPPED", "ERROR" ] } } } aws-sdk-go-1.4.22/models/apis/workspaces/2015-04-08/docs-2.json000066400000000000000000001003671300374646400232110ustar00rootroot00000000000000{ "version": "2.0", "service": "Amazon WorkSpaces Service

        This reference provides detailed information about the Amazon WorkSpaces operations.

        ", "operations": { "CreateTags": "

        Creates tags for a WorkSpace.

        ", "CreateWorkspaces": "

        Creates one or more WorkSpaces.

        This operation is asynchronous and returns before the WorkSpaces are created.

        ", "DeleteTags": "

        Deletes tags from a WorkSpace.

        ", "DescribeTags": "

        Describes tags for a WorkSpace.

        ", "DescribeWorkspaceBundles": "

        Obtains information about the WorkSpace bundles that are available to your account in the specified region.

        You can filter the results with either the BundleIds parameter, or the Owner parameter, but not both.

        This operation supports pagination with the use of the NextToken request and response parameters. If more results are available, the NextToken response member contains a token that you pass in the next call to this operation to retrieve the next set of items.

        ", "DescribeWorkspaceDirectories": "

        Retrieves information about the AWS Directory Service directories in the region that are registered with Amazon WorkSpaces and are available to your account.

        This operation supports pagination with the use of the NextToken request and response parameters. If more results are available, the NextToken response member contains a token that you pass in the next call to this operation to retrieve the next set of items.

        ", "DescribeWorkspaces": "

        Obtains information about the specified WorkSpaces.

        Only one of the filter parameters, such as BundleId, DirectoryId, or WorkspaceIds, can be specified at a time.

        This operation supports pagination with the use of the NextToken request and response parameters. If more results are available, the NextToken response member contains a token that you pass in the next call to this operation to retrieve the next set of items.

        ", "DescribeWorkspacesConnectionStatus": "

        Describes the connection status of a specified WorkSpace.

        ", "ModifyWorkspaceProperties": "

        Modifies the WorkSpace properties, including the RunningMode and AutoStop time.

        ", "RebootWorkspaces": "

        Reboots the specified WorkSpaces.

        To be able to reboot a WorkSpace, the WorkSpace must have a State of AVAILABLE, IMPAIRED, or INOPERABLE.

        This operation is asynchronous and returns before the WorkSpaces have rebooted.

        ", "RebuildWorkspaces": "

        Rebuilds the specified WorkSpaces.

        Rebuilding a WorkSpace is a potentially destructive action that can result in the loss of data. Rebuilding a WorkSpace causes the following to occur:

        • The system is restored to the image of the bundle that the WorkSpace is created from. Any applications that have been installed, or system settings that have been made since the WorkSpace was created will be lost.

        • The data drive (D drive) is re-created from the last automatic snapshot taken of the data drive. The current contents of the data drive are overwritten. Automatic snapshots of the data drive are taken every 12 hours, so the snapshot can be as much as 12 hours old.

        To be able to rebuild a WorkSpace, the WorkSpace must have a State of AVAILABLE or ERROR.

        This operation is asynchronous and returns before the WorkSpaces have been completely rebuilt.

        ", "StartWorkspaces": "

        Starts the specified WorkSpaces. The API only works with WorkSpaces that have RunningMode configured as AutoStop and the State set to “STOPPED.”

        ", "StopWorkspaces": "

        Stops the specified WorkSpaces. The API only works with WorkSpaces that have RunningMode configured as AutoStop and the State set to AVAILABLE, IMPAIRED, UNHEALTHY, or ERROR.

        ", "TerminateWorkspaces": "

        Terminates the specified WorkSpaces.

        Terminating a WorkSpace is a permanent action and cannot be undone. The user's data is not maintained and will be destroyed. If you need to archive any user data, contact Amazon Web Services before terminating the WorkSpace.

        You can terminate a WorkSpace that is in any state except SUSPENDED.

        This operation is asynchronous and returns before the WorkSpaces have been completely terminated.

        " }, "shapes": { "ARN": { "base": null, "refs": { "WorkspaceDirectory$IamRoleId": "

        The identifier of the IAM role. This is the role that allows Amazon WorkSpaces to make calls to other services, such as Amazon EC2, on your behalf.

        " } }, "AccessDeniedException": { "base": null, "refs": { } }, "Alias": { "base": null, "refs": { "WorkspaceDirectory$Alias": "

        The directory alias.

        " } }, "BooleanObject": { "base": null, "refs": { "DefaultWorkspaceCreationProperties$EnableWorkDocs": "

        Specifies if the directory is enabled for Amazon WorkDocs.

        ", "DefaultWorkspaceCreationProperties$EnableInternetAccess": "

        A public IP address will be attached to all WorkSpaces that are created or rebuilt.

        ", "DefaultWorkspaceCreationProperties$UserEnabledAsLocalAdministrator": "

        The WorkSpace user is an administrator on the WorkSpace.

        ", "Workspace$UserVolumeEncryptionEnabled": "

        Specifies whether the data stored on the user volume, or D: drive, is encrypted.

        ", "Workspace$RootVolumeEncryptionEnabled": "

        Specifies whether the data stored on the root volume, or C: drive, is encrypted.

        ", "WorkspaceRequest$UserVolumeEncryptionEnabled": "

        Specifies whether the data stored on the user volume, or D: drive, is encrypted.

        ", "WorkspaceRequest$RootVolumeEncryptionEnabled": "

        Specifies whether the data stored on the root volume, or C: drive, is encrypted.

        " } }, "BundleId": { "base": null, "refs": { "BundleIdList$member": null, "DescribeWorkspacesRequest$BundleId": "

        The identifier of a bundle to obtain the WorkSpaces for. All WorkSpaces that are created from this bundle will be retrieved. This parameter cannot be combined with any other filter parameter.

        ", "Workspace$BundleId": "

        The identifier of the bundle that the WorkSpace was created from.

        ", "WorkspaceBundle$BundleId": "

        The bundle identifier.

        ", "WorkspaceRequest$BundleId": "

        The identifier of the bundle to create the WorkSpace from. You can use the DescribeWorkspaceBundles operation to obtain a list of the bundles that are available.

        " } }, "BundleIdList": { "base": null, "refs": { "DescribeWorkspaceBundlesRequest$BundleIds": "

        An array of strings that contains the identifiers of the bundles to retrieve. This parameter cannot be combined with any other filter parameter.

        " } }, "BundleList": { "base": null, "refs": { "DescribeWorkspaceBundlesResult$Bundles": "

        An array of structures that contain information about the bundles.

        " } }, "BundleOwner": { "base": null, "refs": { "DescribeWorkspaceBundlesRequest$Owner": "

        The owner of the bundles to retrieve. This parameter cannot be combined with any other filter parameter.

        This contains one of the following values:

        • null- Retrieves the bundles that belong to the account making the call.

        • AMAZON- Retrieves the bundles that are provided by AWS.

        ", "WorkspaceBundle$Owner": "

        The owner of the bundle. This contains the owner's account identifier, or AMAZON if the bundle is provided by AWS.

        " } }, "Compute": { "base": null, "refs": { "ComputeType$Name": "

        The name of the compute type for the bundle.

        " } }, "ComputeType": { "base": "

        Contains information about the compute type of a WorkSpace bundle.

        ", "refs": { "WorkspaceBundle$ComputeType": "

        A ComputeType object that specifies the compute type for the bundle.

        " } }, "ComputerName": { "base": null, "refs": { "Workspace$ComputerName": "

        The name of the WorkSpace as seen by the operating system.

        " } }, "ConnectionState": { "base": null, "refs": { "WorkspaceConnectionStatus$ConnectionState": "

        The connection state of the WorkSpace. Returns UNKOWN if the WorkSpace is in a Stopped state.

        " } }, "CreateTagsRequest": { "base": "

        The request of the CreateTags operation.

        ", "refs": { } }, "CreateTagsResult": { "base": "

        The result of the CreateTags operation.

        ", "refs": { } }, "CreateWorkspacesRequest": { "base": "

        Contains the inputs for the CreateWorkspaces operation.

        ", "refs": { } }, "CreateWorkspacesResult": { "base": "

        Contains the result of the CreateWorkspaces operation.

        ", "refs": { } }, "DefaultOu": { "base": null, "refs": { "DefaultWorkspaceCreationProperties$DefaultOu": "

        The organizational unit (OU) in the directory that the WorkSpace machine accounts are placed in.

        " } }, "DefaultWorkspaceCreationProperties": { "base": "

        Contains default WorkSpace creation information.

        ", "refs": { "WorkspaceDirectory$WorkspaceCreationProperties": "

        A structure that specifies the default creation properties for all WorkSpaces in the directory.

        " } }, "DeleteTagsRequest": { "base": "

        The request of the DeleteTags operation.

        ", "refs": { } }, "DeleteTagsResult": { "base": "

        The result of the DeleteTags operation.

        ", "refs": { } }, "DescribeTagsRequest": { "base": "

        The request of the DescribeTags operation.

        ", "refs": { } }, "DescribeTagsResult": { "base": "

        The result of the DescribeTags operation.

        ", "refs": { } }, "DescribeWorkspaceBundlesRequest": { "base": "

        Contains the inputs for the DescribeWorkspaceBundles operation.

        ", "refs": { } }, "DescribeWorkspaceBundlesResult": { "base": "

        Contains the results of the DescribeWorkspaceBundles operation.

        ", "refs": { } }, "DescribeWorkspaceDirectoriesRequest": { "base": "

        Contains the inputs for the DescribeWorkspaceDirectories operation.

        ", "refs": { } }, "DescribeWorkspaceDirectoriesResult": { "base": "

        Contains the results of the DescribeWorkspaceDirectories operation.

        ", "refs": { } }, "DescribeWorkspacesConnectionStatusRequest": { "base": null, "refs": { } }, "DescribeWorkspacesConnectionStatusResult": { "base": null, "refs": { } }, "DescribeWorkspacesRequest": { "base": "

        Contains the inputs for the DescribeWorkspaces operation.

        ", "refs": { } }, "DescribeWorkspacesResult": { "base": "

        Contains the results for the DescribeWorkspaces operation.

        ", "refs": { } }, "Description": { "base": null, "refs": { "FailedCreateWorkspaceRequest$ErrorMessage": "

        The textual error message.

        ", "FailedWorkspaceChangeRequest$ErrorMessage": "

        The textual error message.

        ", "Workspace$ErrorMessage": "

        If the WorkSpace could not be created, this contains a textual error message that describes the failure.

        ", "WorkspaceBundle$Description": "

        The bundle description.

        " } }, "DirectoryId": { "base": null, "refs": { "DescribeWorkspacesRequest$DirectoryId": "

        Specifies the directory identifier to which to limit the WorkSpaces. Optionally, you can specify a specific directory user with the UserName parameter. This parameter cannot be combined with any other filter parameter.

        ", "DirectoryIdList$member": null, "Workspace$DirectoryId": "

        The identifier of the AWS Directory Service directory that the WorkSpace belongs to.

        ", "WorkspaceDirectory$DirectoryId": "

        The directory identifier.

        ", "WorkspaceRequest$DirectoryId": "

        The identifier of the AWS Directory Service directory to create the WorkSpace in. You can use the DescribeWorkspaceDirectories operation to obtain a list of the directories that are available.

        " } }, "DirectoryIdList": { "base": null, "refs": { "DescribeWorkspaceDirectoriesRequest$DirectoryIds": "

        An array of strings that contains the directory identifiers to retrieve information for. If this member is null, all directories are retrieved.

        " } }, "DirectoryList": { "base": null, "refs": { "DescribeWorkspaceDirectoriesResult$Directories": "

        An array of structures that contain information about the directories.

        " } }, "DirectoryName": { "base": null, "refs": { "WorkspaceDirectory$DirectoryName": "

        The name of the directory.

        " } }, "DnsIpAddresses": { "base": null, "refs": { "WorkspaceDirectory$DnsIpAddresses": "

        An array of strings that contains the IP addresses of the DNS servers for the directory.

        " } }, "ErrorType": { "base": null, "refs": { "FailedCreateWorkspaceRequest$ErrorCode": "

        The error code.

        ", "FailedWorkspaceChangeRequest$ErrorCode": "

        The error code.

        " } }, "ExceptionMessage": { "base": null, "refs": { "AccessDeniedException$message": null, "InvalidParameterValuesException$message": "

        The exception error message.

        ", "InvalidResourceStateException$message": null, "OperationInProgressException$message": null, "ResourceLimitExceededException$message": "

        The exception error message.

        ", "ResourceNotFoundException$message": "

        The resource could not be found.

        ", "ResourceUnavailableException$message": "

        The exception error message.

        ", "UnsupportedWorkspaceConfigurationException$message": null } }, "FailedCreateWorkspaceRequest": { "base": "

        Contains information about a WorkSpace that could not be created.

        ", "refs": { "FailedCreateWorkspaceRequests$member": null } }, "FailedCreateWorkspaceRequests": { "base": null, "refs": { "CreateWorkspacesResult$FailedRequests": "

        An array of structures that represent the WorkSpaces that could not be created.

        " } }, "FailedRebootWorkspaceRequests": { "base": null, "refs": { "RebootWorkspacesResult$FailedRequests": "

        An array of structures representing any WorkSpaces that could not be rebooted.

        " } }, "FailedRebuildWorkspaceRequests": { "base": null, "refs": { "RebuildWorkspacesResult$FailedRequests": "

        An array of structures representing any WorkSpaces that could not be rebuilt.

        " } }, "FailedStartWorkspaceRequests": { "base": null, "refs": { "StartWorkspacesResult$FailedRequests": "

        The failed requests.

        " } }, "FailedStopWorkspaceRequests": { "base": null, "refs": { "StopWorkspacesResult$FailedRequests": "

        The failed requests.

        " } }, "FailedTerminateWorkspaceRequests": { "base": null, "refs": { "TerminateWorkspacesResult$FailedRequests": "

        An array of structures representing any WorkSpaces that could not be terminated.

        " } }, "FailedWorkspaceChangeRequest": { "base": "

        Contains information about a WorkSpace that could not be rebooted (RebootWorkspaces), rebuilt (RebuildWorkspaces), terminated (TerminateWorkspaces), started (StartWorkspaces), or stopped (StopWorkspaces).

        ", "refs": { "FailedRebootWorkspaceRequests$member": null, "FailedRebuildWorkspaceRequests$member": null, "FailedStartWorkspaceRequests$member": null, "FailedStopWorkspaceRequests$member": null, "FailedTerminateWorkspaceRequests$member": null } }, "InvalidParameterValuesException": { "base": "

        One or more parameter values are not valid.

        ", "refs": { } }, "InvalidResourceStateException": { "base": "

        The specified WorkSpace has an invalid state for this operation.

        ", "refs": { } }, "IpAddress": { "base": null, "refs": { "DnsIpAddresses$member": null, "Workspace$IpAddress": "

        The IP address of the WorkSpace.

        " } }, "Limit": { "base": null, "refs": { "DescribeWorkspacesRequest$Limit": "

        The maximum number of items to return.

        " } }, "ModifyWorkspacePropertiesRequest": { "base": null, "refs": { } }, "ModifyWorkspacePropertiesResult": { "base": null, "refs": { } }, "NonEmptyString": { "base": null, "refs": { "CreateTagsRequest$ResourceId": "

        The resource ID of the request.

        ", "DeleteTagsRequest$ResourceId": "

        The resource ID of the request.

        ", "DescribeTagsRequest$ResourceId": "

        The resource ID of the request.

        ", "ResourceNotFoundException$ResourceId": "

        The resource could not be found.

        ", "ResourceUnavailableException$ResourceId": "

        The identifier of the resource that is not available.

        ", "TagKeyList$member": null, "UserStorage$Capacity": "

        The amount of user storage for the bundle.

        ", "WorkspaceBundle$Name": "

        The name of the bundle.

        " } }, "OperationInProgressException": { "base": "

        The properties of this WorkSpace are currently being modified. Try again in a moment.

        ", "refs": { } }, "PaginationToken": { "base": null, "refs": { "DescribeWorkspaceBundlesRequest$NextToken": "

        The NextToken value from a previous call to this operation. Pass null if this is the first call.

        ", "DescribeWorkspaceBundlesResult$NextToken": "

        If not null, more results are available. Pass this value for the NextToken parameter in a subsequent call to this operation to retrieve the next set of items. This token is valid for one day and must be used within that time frame.

        ", "DescribeWorkspaceDirectoriesRequest$NextToken": "

        The NextToken value from a previous call to this operation. Pass null if this is the first call.

        ", "DescribeWorkspaceDirectoriesResult$NextToken": "

        If not null, more results are available. Pass this value for the NextToken parameter in a subsequent call to this operation to retrieve the next set of items. This token is valid for one day and must be used within that time frame.

        ", "DescribeWorkspacesConnectionStatusRequest$NextToken": "

        The next token of the request.

        ", "DescribeWorkspacesConnectionStatusResult$NextToken": "

        The next token of the result.

        ", "DescribeWorkspacesRequest$NextToken": "

        The NextToken value from a previous call to this operation. Pass null if this is the first call.

        ", "DescribeWorkspacesResult$NextToken": "

        If not null, more results are available. Pass this value for the NextToken parameter in a subsequent call to this operation to retrieve the next set of items. This token is valid for one day and must be used within that time frame.

        " } }, "RebootRequest": { "base": "

        Contains information used with the RebootWorkspaces operation to reboot a WorkSpace.

        ", "refs": { "RebootWorkspaceRequests$member": null } }, "RebootWorkspaceRequests": { "base": null, "refs": { "RebootWorkspacesRequest$RebootWorkspaceRequests": "

        An array of structures that specify the WorkSpaces to reboot.

        " } }, "RebootWorkspacesRequest": { "base": "

        Contains the inputs for the RebootWorkspaces operation.

        ", "refs": { } }, "RebootWorkspacesResult": { "base": "

        Contains the results of the RebootWorkspaces operation.

        ", "refs": { } }, "RebuildRequest": { "base": "

        Contains information used with the RebuildWorkspaces operation to rebuild a WorkSpace.

        ", "refs": { "RebuildWorkspaceRequests$member": null } }, "RebuildWorkspaceRequests": { "base": null, "refs": { "RebuildWorkspacesRequest$RebuildWorkspaceRequests": "

        An array of structures that specify the WorkSpaces to rebuild.

        " } }, "RebuildWorkspacesRequest": { "base": "

        Contains the inputs for the RebuildWorkspaces operation.

        ", "refs": { } }, "RebuildWorkspacesResult": { "base": "

        Contains the results of the RebuildWorkspaces operation.

        ", "refs": { } }, "RegistrationCode": { "base": null, "refs": { "WorkspaceDirectory$RegistrationCode": "

        The registration code for the directory. This is the code that users enter in their Amazon WorkSpaces client application to connect to the directory.

        " } }, "ResourceLimitExceededException": { "base": "

        Your resource limits have been exceeded.

        ", "refs": { } }, "ResourceNotFoundException": { "base": "

        The resource could not be found.

        ", "refs": { } }, "ResourceUnavailableException": { "base": "

        The specified resource is not available.

        ", "refs": { } }, "RunningMode": { "base": null, "refs": { "WorkspaceProperties$RunningMode": "

        The running mode of the WorkSpace. AlwaysOn WorkSpaces are billed monthly. AutoStop WorkSpaces are billed by the hour and stopped when no longer being used in order to save on costs.

        " } }, "RunningModeAutoStopTimeoutInMinutes": { "base": null, "refs": { "WorkspaceProperties$RunningModeAutoStopTimeoutInMinutes": "

        The time after a user logs off when WorkSpaces are automatically stopped. Configured in 60 minute intervals.

        " } }, "SecurityGroupId": { "base": null, "refs": { "DefaultWorkspaceCreationProperties$CustomSecurityGroupId": "

        The identifier of any custom security groups that are applied to the WorkSpaces when they are created.

        ", "WorkspaceDirectory$WorkspaceSecurityGroupId": "

        The identifier of the security group that is assigned to new WorkSpaces.

        " } }, "StartRequest": { "base": "

        Describes the start request.

        ", "refs": { "StartWorkspaceRequests$member": null } }, "StartWorkspaceRequests": { "base": null, "refs": { "StartWorkspacesRequest$StartWorkspaceRequests": "

        The requests.

        " } }, "StartWorkspacesRequest": { "base": null, "refs": { } }, "StartWorkspacesResult": { "base": null, "refs": { } }, "StopRequest": { "base": "

        Describes the stop request.

        ", "refs": { "StopWorkspaceRequests$member": null } }, "StopWorkspaceRequests": { "base": null, "refs": { "StopWorkspacesRequest$StopWorkspaceRequests": "

        The requests.

        " } }, "StopWorkspacesRequest": { "base": null, "refs": { } }, "StopWorkspacesResult": { "base": null, "refs": { } }, "SubnetId": { "base": null, "refs": { "SubnetIds$member": null, "Workspace$SubnetId": "

        The identifier of the subnet that the WorkSpace is in.

        " } }, "SubnetIds": { "base": null, "refs": { "WorkspaceDirectory$SubnetIds": "

        An array of strings that contains the identifiers of the subnets used with the directory.

        " } }, "Tag": { "base": "

        Describes the tag of the WorkSpace.

        ", "refs": { "TagList$member": null } }, "TagKey": { "base": null, "refs": { "Tag$Key": "

        The key of the tag.

        " } }, "TagKeyList": { "base": null, "refs": { "DeleteTagsRequest$TagKeys": "

        The tag keys of the request.

        " } }, "TagList": { "base": null, "refs": { "CreateTagsRequest$Tags": "

        The tags of the request.

        ", "DescribeTagsResult$TagList": "

        The list of tags.

        ", "WorkspaceRequest$Tags": "

        The tags of the WorkSpace request.

        " } }, "TagValue": { "base": null, "refs": { "Tag$Value": "

        The value of the tag.

        " } }, "TerminateRequest": { "base": "

        Contains information used with the TerminateWorkspaces operation to terminate a WorkSpace.

        ", "refs": { "TerminateWorkspaceRequests$member": null } }, "TerminateWorkspaceRequests": { "base": null, "refs": { "TerminateWorkspacesRequest$TerminateWorkspaceRequests": "

        An array of structures that specify the WorkSpaces to terminate.

        " } }, "TerminateWorkspacesRequest": { "base": "

        Contains the inputs for the TerminateWorkspaces operation.

        ", "refs": { } }, "TerminateWorkspacesResult": { "base": "

        Contains the results of the TerminateWorkspaces operation.

        ", "refs": { } }, "Timestamp": { "base": null, "refs": { "WorkspaceConnectionStatus$ConnectionStateCheckTimestamp": "

        The timestamp of the connection state check.

        ", "WorkspaceConnectionStatus$LastKnownUserConnectionTimestamp": "

        The timestamp of the last known user connection.

        " } }, "UnsupportedWorkspaceConfigurationException": { "base": "

        The WorkSpace does not have the supported configuration for this operation. For more information, see the Amazon WorkSpaces Administration Guide.

        ", "refs": { } }, "UserName": { "base": null, "refs": { "DescribeWorkspacesRequest$UserName": "

        Used with the DirectoryId parameter to specify the directory user for whom to obtain the WorkSpace.

        ", "Workspace$UserName": "

        The user that the WorkSpace is assigned to.

        ", "WorkspaceDirectory$CustomerUserName": "

        The user name for the service account.

        ", "WorkspaceRequest$UserName": "

        The username that the WorkSpace is assigned to. This username must exist in the AWS Directory Service directory specified by the DirectoryId member.

        " } }, "UserStorage": { "base": "

        Contains information about the user storage for a WorkSpace bundle.

        ", "refs": { "WorkspaceBundle$UserStorage": "

        A UserStorage object that specifies the amount of user storage that the bundle contains.

        " } }, "VolumeEncryptionKey": { "base": null, "refs": { "Workspace$VolumeEncryptionKey": "

        The KMS key used to encrypt data stored on your WorkSpace.

        ", "WorkspaceRequest$VolumeEncryptionKey": "

        The KMS key used to encrypt data stored on your WorkSpace.

        " } }, "Workspace": { "base": "

        Contains information about a WorkSpace.

        ", "refs": { "WorkspaceList$member": null } }, "WorkspaceBundle": { "base": "

        Contains information about a WorkSpace bundle.

        ", "refs": { "BundleList$member": null } }, "WorkspaceConnectionStatus": { "base": "

        Describes the connection status of a WorkSpace.

        ", "refs": { "WorkspaceConnectionStatusList$member": null } }, "WorkspaceConnectionStatusList": { "base": null, "refs": { "DescribeWorkspacesConnectionStatusResult$WorkspacesConnectionStatus": "

        The connection status of the WorkSpace.

        " } }, "WorkspaceDirectory": { "base": "

        Contains information about an AWS Directory Service directory for use with Amazon WorkSpaces.

        ", "refs": { "DirectoryList$member": null } }, "WorkspaceDirectoryState": { "base": null, "refs": { "WorkspaceDirectory$State": "

        The state of the directory's registration with Amazon WorkSpaces

        " } }, "WorkspaceDirectoryType": { "base": null, "refs": { "WorkspaceDirectory$DirectoryType": "

        The directory type.

        " } }, "WorkspaceErrorCode": { "base": null, "refs": { "Workspace$ErrorCode": "

        If the WorkSpace could not be created, this contains the error code.

        " } }, "WorkspaceId": { "base": null, "refs": { "FailedWorkspaceChangeRequest$WorkspaceId": "

        The identifier of the WorkSpace.

        ", "ModifyWorkspacePropertiesRequest$WorkspaceId": "

        The ID of the WorkSpace.

        ", "RebootRequest$WorkspaceId": "

        The identifier of the WorkSpace to reboot.

        ", "RebuildRequest$WorkspaceId": "

        The identifier of the WorkSpace to rebuild.

        ", "StartRequest$WorkspaceId": "

        The ID of the WorkSpace.

        ", "StopRequest$WorkspaceId": "

        The ID of the WorkSpace.

        ", "TerminateRequest$WorkspaceId": "

        The identifier of the WorkSpace to terminate.

        ", "Workspace$WorkspaceId": "

        The identifier of the WorkSpace.

        ", "WorkspaceConnectionStatus$WorkspaceId": "

        The ID of the WorkSpace.

        ", "WorkspaceIdList$member": null } }, "WorkspaceIdList": { "base": null, "refs": { "DescribeWorkspacesConnectionStatusRequest$WorkspaceIds": "

        An array of strings that contain the identifiers of the WorkSpaces.

        ", "DescribeWorkspacesRequest$WorkspaceIds": "

        An array of strings that contain the identifiers of the WorkSpaces for which to retrieve information. This parameter cannot be combined with any other filter parameter.

        Because the CreateWorkspaces operation is asynchronous, the identifier it returns is not immediately available. If you immediately call DescribeWorkspaces with this identifier, no information is returned.

        " } }, "WorkspaceList": { "base": null, "refs": { "CreateWorkspacesResult$PendingRequests": "

        An array of structures that represent the WorkSpaces that were created.

        Because this operation is asynchronous, the identifier in WorkspaceId is not immediately available. If you immediately call DescribeWorkspaces with this identifier, no information will be returned.

        ", "DescribeWorkspacesResult$Workspaces": "

        An array of structures that contain the information about the WorkSpaces.

        Because the CreateWorkspaces operation is asynchronous, some of this information may be incomplete for a newly-created WorkSpace.

        " } }, "WorkspaceProperties": { "base": "

        Describes the properties of a WorkSpace.

        ", "refs": { "ModifyWorkspacePropertiesRequest$WorkspaceProperties": "

        The WorkSpace properties of the request.

        ", "Workspace$WorkspaceProperties": null, "WorkspaceRequest$WorkspaceProperties": null } }, "WorkspaceRequest": { "base": "

        Contains information about a WorkSpace creation request.

        ", "refs": { "FailedCreateWorkspaceRequest$WorkspaceRequest": "

        A FailedCreateWorkspaceRequest$WorkspaceRequest object that contains the information about the WorkSpace that could not be created.

        ", "WorkspaceRequestList$member": null } }, "WorkspaceRequestList": { "base": null, "refs": { "CreateWorkspacesRequest$Workspaces": "

        An array of structures that specify the WorkSpaces to create.

        " } }, "WorkspaceState": { "base": null, "refs": { "Workspace$State": "

        The operational state of the WorkSpace.

        " } } } } aws-sdk-go-1.4.22/models/apis/workspaces/2015-04-08/examples-1.json000066400000000000000000000000541300374646400240660ustar00rootroot00000000000000{ "version": "1.0", "examples": { } } aws-sdk-go-1.4.22/models/apis/workspaces/2015-04-08/paginators-1.json000066400000000000000000000007361300374646400244260ustar00rootroot00000000000000{ "pagination": { "DescribeWorkspaceBundles": { "input_token": "NextToken", "output_token": "NextToken", "result_key": "Bundles" }, "DescribeWorkspaceDirectories": { "input_token": "NextToken", "output_token": "NextToken", "result_key": "Directories" }, "DescribeWorkspaces": { "limit_key": "Limit", "input_token": "NextToken", "output_token": "NextToken", "result_key": "Workspaces" } } } aws-sdk-go-1.4.22/models/protocol_tests/000077500000000000000000000000001300374646400201315ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/protocol_tests/generate.go000066400000000000000000000272771300374646400222710ustar00rootroot00000000000000// +build codegen package main import ( "bytes" "encoding/json" "fmt" "net/url" "os" "os/exec" "reflect" "regexp" "sort" "strconv" "strings" "text/template" "github.com/aws/aws-sdk-go/private/model/api" "github.com/aws/aws-sdk-go/private/util" ) // TestSuiteTypeInput input test // TestSuiteTypeInput output test const ( TestSuiteTypeInput = iota TestSuiteTypeOutput ) type testSuite struct { *api.API Description string Cases []testCase Type uint title string } type testCase struct { TestSuite *testSuite Given *api.Operation Params interface{} `json:",omitempty"` Data interface{} `json:"result,omitempty"` InputTest testExpectation `json:"serialized"` OutputTest testExpectation `json:"response"` } type testExpectation struct { Body string URI string Headers map[string]string StatusCode uint `json:"status_code"` } const preamble = ` var _ bytes.Buffer // always import bytes var _ http.Request var _ json.Marshaler var _ time.Time var _ xmlutil.XMLNode var _ xml.Attr var _ = ioutil.Discard var _ = util.Trim("") var _ = url.Values{} var _ = io.EOF var _ = aws.String var _ = fmt.Println func init() { protocol.RandReader = &awstesting.ZeroReader{} } ` var reStripSpace = regexp.MustCompile(`\s(\w)`) var reImportRemoval = regexp.MustCompile(`(?s:import \((.+?)\))`) func removeImports(code string) string { return reImportRemoval.ReplaceAllString(code, "") } var extraImports = []string{ "bytes", "encoding/json", "encoding/xml", "fmt", "io", "io/ioutil", "net/http", "testing", "time", "net/url", "", "github.com/aws/aws-sdk-go/awstesting", "github.com/aws/aws-sdk-go/awstesting/unit", "github.com/aws/aws-sdk-go/private/protocol", "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil", "github.com/aws/aws-sdk-go/private/util", "github.com/stretchr/testify/assert", } func addImports(code string) string { importNames := make([]string, len(extraImports)) for i, n := range extraImports { if n != "" { importNames[i] = fmt.Sprintf("%q", n) } } str := reImportRemoval.ReplaceAllString(code, "import (\n"+strings.Join(importNames, "\n")+"$1\n)") return str } func (t *testSuite) TestSuite() string { var buf bytes.Buffer t.title = reStripSpace.ReplaceAllStringFunc(t.Description, func(x string) string { return strings.ToUpper(x[1:]) }) t.title = regexp.MustCompile(`\W`).ReplaceAllString(t.title, "") for idx, c := range t.Cases { c.TestSuite = t buf.WriteString(c.TestCase(idx) + "\n") } return buf.String() } var tplInputTestCase = template.Must(template.New("inputcase").Parse(` func Test{{ .OpName }}(t *testing.T) { svc := New{{ .TestCase.TestSuite.API.StructName }}(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) {{ if ne .ParamsString "" }}input := {{ .ParamsString }} req, _ := svc.{{ .TestCase.Given.ExportedName }}Request(input){{ else }}req, _ := svc.{{ .TestCase.Given.ExportedName }}Request(nil){{ end }} r := req.HTTPRequest // build request {{ .TestCase.TestSuite.API.ProtocolPackage }}.Build(req) assert.NoError(t, req.Error) {{ if ne .TestCase.InputTest.Body "" }}// assert body assert.NotNil(t, r.Body) {{ .BodyAssertions }}{{ end }} {{ if ne .TestCase.InputTest.URI "" }}// assert URL awstesting.AssertURL(t, "https://test{{ .TestCase.InputTest.URI }}", r.URL.String()){{ end }} // assert headers {{ range $k, $v := .TestCase.InputTest.Headers }}assert.Equal(t, "{{ $v }}", r.Header.Get("{{ $k }}")) {{ end }} } `)) type tplInputTestCaseData struct { TestCase *testCase OpName, ParamsString string } func (t tplInputTestCaseData) BodyAssertions() string { code := &bytes.Buffer{} protocol := t.TestCase.TestSuite.API.Metadata.Protocol // Extract the body bytes switch protocol { case "rest-xml": fmt.Fprintln(code, "body := util.SortXML(r.Body)") default: fmt.Fprintln(code, "body, _ := ioutil.ReadAll(r.Body)") } // Generate the body verification code expectedBody := util.Trim(t.TestCase.InputTest.Body) switch protocol { case "ec2", "query": fmt.Fprintf(code, "awstesting.AssertQuery(t, `%s`, util.Trim(string(body)))", expectedBody) case "rest-xml": if strings.HasPrefix(expectedBody, "<") { fmt.Fprintf(code, "awstesting.AssertXML(t, `%s`, util.Trim(string(body)), %s{})", expectedBody, t.TestCase.Given.InputRef.ShapeName) } else { fmt.Fprintf(code, "assert.Equal(t, `%s`, util.Trim(string(body)))", expectedBody) } case "json", "jsonrpc", "rest-json": if strings.HasPrefix(expectedBody, "{") { fmt.Fprintf(code, "awstesting.AssertJSON(t, `%s`, util.Trim(string(body)))", expectedBody) } else { fmt.Fprintf(code, "assert.Equal(t, `%s`, util.Trim(string(body)))", expectedBody) } default: fmt.Fprintf(code, "assert.Equal(t, `%s`, util.Trim(string(body)))", expectedBody) } return code.String() } var tplOutputTestCase = template.Must(template.New("outputcase").Parse(` func Test{{ .OpName }}(t *testing.T) { svc := New{{ .TestCase.TestSuite.API.StructName }}(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte({{ .Body }})) req, out := svc.{{ .TestCase.Given.ExportedName }}Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers {{ range $k, $v := .TestCase.OutputTest.Headers }}req.HTTPResponse.Header.Set("{{ $k }}", "{{ $v }}") {{ end }} // unmarshal response {{ .TestCase.TestSuite.API.ProtocolPackage }}.UnmarshalMeta(req) {{ .TestCase.TestSuite.API.ProtocolPackage }}.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used {{ .Assertions }} } `)) type tplOutputTestCaseData struct { TestCase *testCase Body, OpName, Assertions string } func (i *testCase) TestCase(idx int) string { var buf bytes.Buffer opName := i.TestSuite.API.StructName() + i.TestSuite.title + "Case" + strconv.Itoa(idx+1) if i.TestSuite.Type == TestSuiteTypeInput { // input test // query test should sort body as form encoded values switch i.TestSuite.API.Metadata.Protocol { case "query", "ec2": m, _ := url.ParseQuery(i.InputTest.Body) i.InputTest.Body = m.Encode() case "rest-xml": i.InputTest.Body = util.SortXML(bytes.NewReader([]byte(i.InputTest.Body))) case "json", "rest-json": i.InputTest.Body = strings.Replace(i.InputTest.Body, " ", "", -1) } input := tplInputTestCaseData{ TestCase: i, OpName: strings.ToUpper(opName[0:1]) + opName[1:], ParamsString: api.ParamsStructFromJSON(i.Params, i.Given.InputRef.Shape, false), } if err := tplInputTestCase.Execute(&buf, input); err != nil { panic(err) } } else if i.TestSuite.Type == TestSuiteTypeOutput { output := tplOutputTestCaseData{ TestCase: i, Body: fmt.Sprintf("%q", i.OutputTest.Body), OpName: strings.ToUpper(opName[0:1]) + opName[1:], Assertions: GenerateAssertions(i.Data, i.Given.OutputRef.Shape, "out"), } if err := tplOutputTestCase.Execute(&buf, output); err != nil { panic(err) } } return buf.String() } // generateTestSuite generates a protocol test suite for a given configuration // JSON protocol test file. func generateTestSuite(filename string) string { inout := "Input" if strings.Contains(filename, "output/") { inout = "Output" } var suites []testSuite f, err := os.Open(filename) if err != nil { panic(err) } err = json.NewDecoder(f).Decode(&suites) if err != nil { panic(err) } var buf bytes.Buffer buf.WriteString("package " + suites[0].ProtocolPackage() + "_test\n\n") var innerBuf bytes.Buffer innerBuf.WriteString("//\n// Tests begin here\n//\n\n\n") for i, suite := range suites { svcPrefix := inout + "Service" + strconv.Itoa(i+1) suite.API.Metadata.ServiceAbbreviation = svcPrefix + "ProtocolTest" suite.API.Operations = map[string]*api.Operation{} for idx, c := range suite.Cases { c.Given.ExportedName = svcPrefix + "TestCaseOperation" + strconv.Itoa(idx+1) suite.API.Operations[c.Given.ExportedName] = c.Given } suite.Type = getType(inout) suite.API.NoInitMethods = true // don't generate init methods suite.API.NoStringerMethods = true // don't generate stringer methods suite.API.NoConstServiceNames = true // don't generate service names suite.API.Setup() suite.API.Metadata.EndpointPrefix = suite.API.PackageName() // Sort in order for deterministic test generation names := make([]string, 0, len(suite.API.Shapes)) for n := range suite.API.Shapes { names = append(names, n) } sort.Strings(names) for _, name := range names { s := suite.API.Shapes[name] s.Rename(svcPrefix + "TestShape" + name) } svcCode := addImports(suite.API.ServiceGoCode()) if i == 0 { importMatch := reImportRemoval.FindStringSubmatch(svcCode) buf.WriteString(importMatch[0] + "\n\n") buf.WriteString(preamble + "\n\n") } svcCode = removeImports(svcCode) svcCode = strings.Replace(svcCode, "func New(", "func New"+suite.API.StructName()+"(", -1) svcCode = strings.Replace(svcCode, "func newClient(", "func new"+suite.API.StructName()+"Client(", -1) svcCode = strings.Replace(svcCode, "return newClient(", "return new"+suite.API.StructName()+"Client(", -1) buf.WriteString(svcCode + "\n\n") apiCode := removeImports(suite.API.APIGoCode()) apiCode = strings.Replace(apiCode, "var oprw sync.Mutex", "", -1) apiCode = strings.Replace(apiCode, "oprw.Lock()", "", -1) apiCode = strings.Replace(apiCode, "defer oprw.Unlock()", "", -1) buf.WriteString(apiCode + "\n\n") innerBuf.WriteString(suite.TestSuite() + "\n") } return buf.String() + innerBuf.String() } // findMember searches the shape for the member with the matching key name. func findMember(shape *api.Shape, key string) string { for actualKey := range shape.MemberRefs { if strings.ToLower(key) == strings.ToLower(actualKey) { return actualKey } } return "" } // GenerateAssertions builds assertions for a shape based on its type. // // The shape's recursive values also will have assertions generated for them. func GenerateAssertions(out interface{}, shape *api.Shape, prefix string) string { switch t := out.(type) { case map[string]interface{}: keys := util.SortedKeys(t) code := "" if shape.Type == "map" { for _, k := range keys { v := t[k] s := shape.ValueRef.Shape code += GenerateAssertions(v, s, prefix+"[\""+k+"\"]") } } else { for _, k := range keys { v := t[k] m := findMember(shape, k) s := shape.MemberRefs[m].Shape code += GenerateAssertions(v, s, prefix+"."+m+"") } } return code case []interface{}: code := "" for i, v := range t { s := shape.MemberRef.Shape code += GenerateAssertions(v, s, prefix+"["+strconv.Itoa(i)+"]") } return code default: switch shape.Type { case "timestamp": return fmt.Sprintf("assert.Equal(t, time.Unix(%#v, 0).UTC().String(), %s.String())\n", out, prefix) case "blob": return fmt.Sprintf("assert.Equal(t, %#v, string(%s))\n", out, prefix) case "integer", "long": return fmt.Sprintf("assert.Equal(t, int64(%#v), *%s)\n", out, prefix) default: if !reflect.ValueOf(out).IsValid() { return fmt.Sprintf("assert.Nil(t, %s)\n", prefix) } return fmt.Sprintf("assert.Equal(t, %#v, *%s)\n", out, prefix) } } } func getType(t string) uint { switch t { case "Input": return TestSuiteTypeInput case "Output": return TestSuiteTypeOutput default: panic("Invalid type for test suite") } } func main() { out := generateTestSuite(os.Args[1]) if len(os.Args) == 3 { f, err := os.Create(os.Args[2]) defer f.Close() if err != nil { panic(err) } f.WriteString(util.GoFmt(out)) f.Close() c := exec.Command("gofmt", "-s", "-w", os.Args[2]) if err := c.Run(); err != nil { panic(err) } } else { fmt.Println(out) } } aws-sdk-go-1.4.22/models/protocol_tests/input/000077500000000000000000000000001300374646400212705ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/protocol_tests/input/ec2.json000066400000000000000000000210611300374646400226340ustar00rootroot00000000000000[ { "description": "Scalar members", "metadata": { "protocol": "ec2", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "Foo": { "shape": "StringType" }, "Bar": { "shape": "StringType" } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "Foo": "val1", "Bar": "val2" }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&Foo=val1&Bar=val2" } } ] }, { "description": "Structure with locationName and queryName applied to members", "metadata": { "protocol": "ec2", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "Foo": { "shape": "StringType" }, "Bar": { "shape": "StringType", "locationName": "barLocationName" }, "Yuck": { "shape": "StringType", "locationName": "yuckLocationName", "queryName": "yuckQueryName" } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "Foo": "val1", "Bar": "val2", "Yuck": "val3" }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&Foo=val1&BarLocationName=val2&yuckQueryName=val3" } } ] }, { "description": "Nested structure members", "metadata": { "protocol": "ec2", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "StructArg": { "shape": "StructType", "locationName": "Struct" } } }, "StructType": { "type": "structure", "members": { "ScalarArg": { "shape": "StringType", "locationName": "Scalar" } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "StructArg": { "ScalarArg": "foo" } }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&Struct.Scalar=foo" } } ] }, { "description": "List types", "metadata": { "protocol": "ec2", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "ListArg": { "shape": "ListType" } } }, "ListType": { "type": "list", "member": { "shape": "Strings" } }, "Strings": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "ListArg": [ "foo", "bar", "baz" ] }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&ListArg.1=foo&ListArg.2=bar&ListArg.3=baz" } } ] }, { "description": "List with location name applied to member", "metadata": { "protocol": "ec2", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "ListArg": { "shape": "ListType", "locationName": "ListMemberName" } } }, "ListType": { "type": "list", "member": { "shape": "StringType", "LocationName": "item" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "ListArg": [ "a", "b", "c" ] }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&ListMemberName.1=a&ListMemberName.2=b&ListMemberName.3=c" } } ] }, { "description": "List with locationName and queryName", "metadata": { "protocol": "ec2", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "ListArg": { "shape": "ListType", "locationName": "ListMemberName", "queryName": "ListQueryName" } } }, "ListType": { "type": "list", "member": { "shape": "StringType", "LocationName": "item" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "ListArg": [ "a", "b", "c" ] }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&ListQueryName.1=a&ListQueryName.2=b&ListQueryName.3=c" } } ] }, { "description": "Base64 encoded Blobs", "metadata": { "protocol": "ec2", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "BlobArg": { "shape": "BlobType" } } }, "BlobType": { "type": "blob" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "BlobArg": "foo" }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&BlobArg=Zm9v" } } ] }, { "description": "Timestamp values", "metadata": { "protocol": "ec2", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "TimeArg": { "shape": "TimestampType" } } }, "TimestampType": { "type": "timestamp" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "TimeArg": 1422172800 }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&TimeArg=2015-01-25T08%3A00%3A00Z" } } ] }, { "description": "Idempotency token auto fill", "metadata": { "protocol": "ec2", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "Token": { "shape": "StringType", "idempotencyToken": true } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "Token": "abc123" }, "serialized": { "uri": "/path", "headers": {}, "body": "Token=abc123" } }, { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { }, "serialized": { "uri": "/path", "headers": {}, "body": "Token=00000000-0000-4000-8000-000000000000" } } ] } ] aws-sdk-go-1.4.22/models/protocol_tests/input/json.json000066400000000000000000000302311300374646400231330ustar00rootroot00000000000000[ { "description": "Scalar members", "metadata": { "protocol": "json", "jsonVersion": "1.1", "targetPrefix": "com.amazonaws.foo" }, "shapes": { "InputShape": { "type": "structure", "members": { "Name": { "shape": "StringType" } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName", "http": { "method": "POST" } }, "params": { "Name": "myname" }, "serialized": { "body": "{\"Name\": \"myname\"}", "headers": { "X-Amz-Target": "com.amazonaws.foo.OperationName", "Content-Type": "application/x-amz-json-1.1" }, "uri": "/" } } ] }, { "description": "Timestamp values", "metadata": { "protocol": "json", "jsonVersion": "1.1", "targetPrefix": "com.amazonaws.foo" }, "shapes": { "InputShape": { "type": "structure", "members": { "TimeArg": { "shape": "TimestampType" } } }, "TimestampType": { "type": "timestamp" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "TimeArg": 1422172800 }, "serialized": { "body": "{\"TimeArg\": 1422172800}", "headers": { "X-Amz-Target": "com.amazonaws.foo.OperationName", "Content-Type": "application/x-amz-json-1.1" }, "uri": "/" } } ] }, { "description": "Base64 encoded Blobs", "metadata": { "protocol": "json", "jsonVersion": "1.1", "targetPrefix": "com.amazonaws.foo" }, "shapes": { "InputShape": { "type": "structure", "members": { "BlobArg": { "shape": "BlobType" }, "BlobMap": { "shape": "BlobMapType" } } }, "BlobType": { "type": "blob" }, "BlobMapType": { "type": "map", "key": {"shape": "StringType"}, "value": {"shape": "BlobType"} }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "BlobArg": "foo" }, "serialized": { "body": "{\"BlobArg\": \"Zm9v\"}", "headers": { "X-Amz-Target": "com.amazonaws.foo.OperationName", "Content-Type": "application/x-amz-json-1.1" }, "uri": "/" } }, { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "BlobMap": { "key1": "foo", "key2": "bar" } }, "serialized": { "body": "{\"BlobMap\": {\"key1\": \"Zm9v\", \"key2\": \"YmFy\"}}", "headers": { "X-Amz-Target": "com.amazonaws.foo.OperationName", "Content-Type": "application/x-amz-json-1.1" }, "uri": "/" } } ] }, { "description": "Nested blobs", "metadata": { "protocol": "json", "jsonVersion": "1.1", "targetPrefix": "com.amazonaws.foo" }, "shapes": { "InputShape": { "type": "structure", "members": { "ListParam": { "shape": "ListOfStructures" } } }, "ListOfStructures": { "type": "list", "member": { "shape": "BlobType" } }, "BlobType": { "type": "blob" } }, "cases": [ { "given": { "http": { "method": "POST" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "ListParam": ["foo", "bar"] }, "serialized": { "body": "{\"ListParam\": [\"Zm9v\", \"YmFy\"]}", "uri": "/", "headers": {"X-Amz-Target": "com.amazonaws.foo.OperationName", "Content-Type": "application/x-amz-json-1.1"} } } ] }, { "description": "Recursive shapes", "metadata": { "protocol": "json", "jsonVersion": "1.1", "targetPrefix": "com.amazonaws.foo" }, "shapes": { "InputShape": { "type": "structure", "members": { "RecursiveStruct": { "shape": "RecursiveStructType" } } }, "RecursiveStructType": { "type": "structure", "members": { "NoRecurse": { "shape": "StringType" }, "RecursiveStruct": { "shape": "RecursiveStructType" }, "RecursiveList": { "shape": "RecursiveListType" }, "RecursiveMap": { "shape": "RecursiveMapType" } } }, "RecursiveListType": { "type": "list", "member": { "shape": "RecursiveStructType" } }, "RecursiveMapType": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "RecursiveStructType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "NoRecurse": "foo" } }, "serialized": { "uri": "/", "headers": { "X-Amz-Target": "com.amazonaws.foo.OperationName", "Content-Type": "application/x-amz-json-1.1" }, "body": "{\"RecursiveStruct\": {\"NoRecurse\": \"foo\"}}" } }, { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveStruct": { "NoRecurse": "foo" } } }, "serialized": { "uri": "/", "headers": { "X-Amz-Target": "com.amazonaws.foo.OperationName", "Content-Type": "application/x-amz-json-1.1" }, "body": "{\"RecursiveStruct\": {\"RecursiveStruct\": {\"NoRecurse\": \"foo\"}}}" } }, { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveStruct": { "RecursiveStruct": { "RecursiveStruct": { "NoRecurse": "foo" } } } } }, "serialized": { "uri": "/", "headers": { "X-Amz-Target": "com.amazonaws.foo.OperationName", "Content-Type": "application/x-amz-json-1.1" }, "body": "{\"RecursiveStruct\": {\"RecursiveStruct\": {\"RecursiveStruct\": {\"RecursiveStruct\": {\"NoRecurse\": \"foo\"}}}}}" } }, { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveList": [ { "NoRecurse": "foo" }, { "NoRecurse": "bar" } ] } }, "serialized": { "uri": "/", "headers": { "X-Amz-Target": "com.amazonaws.foo.OperationName", "Content-Type": "application/x-amz-json-1.1" }, "body": "{\"RecursiveStruct\": {\"RecursiveList\": [{\"NoRecurse\": \"foo\"}, {\"NoRecurse\": \"bar\"}]}}" } }, { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveList": [ { "NoRecurse": "foo" }, { "RecursiveStruct": { "NoRecurse": "bar" } } ] } }, "serialized": { "uri": "/", "headers": { "X-Amz-Target": "com.amazonaws.foo.OperationName", "Content-Type": "application/x-amz-json-1.1" }, "body": "{\"RecursiveStruct\": {\"RecursiveList\": [{\"NoRecurse\": \"foo\"}, {\"RecursiveStruct\": {\"NoRecurse\": \"bar\"}}]}}" } }, { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveMap": { "foo": { "NoRecurse": "foo" }, "bar": { "NoRecurse": "bar" } } } }, "serialized": { "uri": "/", "headers": { "X-Amz-Target": "com.amazonaws.foo.OperationName", "Content-Type": "application/x-amz-json-1.1" }, "body": "{\"RecursiveStruct\": {\"RecursiveMap\": {\"foo\": {\"NoRecurse\": \"foo\"}, \"bar\": {\"NoRecurse\": \"bar\"}}}}" } } ] }, { "description": "Empty maps", "metadata": { "protocol": "json", "jsonVersion": "1.1", "targetPrefix": "com.amazonaws.foo" }, "shapes": { "InputShape": { "type": "structure", "members": { "Map": { "shape": "MapType" } } }, "MapType": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName", "http": { "method": "POST" } }, "params": { "Map": {} }, "serialized": { "body": "{\"Map\": {}}", "headers": { "X-Amz-Target": "com.amazonaws.foo.OperationName", "Content-Type": "application/x-amz-json-1.1" }, "uri": "/" } } ] }, { "description": "Idempotency token auto fill", "metadata": { "protocol": "json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "Token": { "shape": "StringType", "idempotencyToken": true } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "Token": "abc123" }, "serialized": { "uri": "/path", "headers": {}, "body": "{\"Token\": \"abc123\"}" } }, { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { }, "serialized": { "uri": "/path", "headers": {}, "body": "{\"Token\": \"00000000-0000-4000-8000-000000000000\"}" } } ] } ] aws-sdk-go-1.4.22/models/protocol_tests/input/query.json000066400000000000000000000436611300374646400233420ustar00rootroot00000000000000[ { "description": "Scalar members", "metadata": { "protocol": "query", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "Foo": { "shape": "StringType" }, "Bar": { "shape": "StringType" }, "Baz": { "shape": "BooleanType" } } }, "StringType": { "type": "string" }, "BooleanType": { "type": "boolean" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "Foo": "val1", "Bar": "val2" }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&Foo=val1&Bar=val2" } }, { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "Baz": true }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&Baz=true" } }, { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "Baz": false }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&Baz=false" } } ] }, { "description": "Nested structure members", "metadata": { "protocol": "query", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "StructArg": { "shape": "StructType" } } }, "StructType": { "type": "structure", "members": { "ScalarArg": { "shape": "StringType" } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "StructArg": { "ScalarArg": "foo" } }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&StructArg.ScalarArg=foo" } } ] }, { "description": "List types", "metadata": { "protocol": "query", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "ListArg": { "shape": "ListType" } } }, "ListType": { "type": "list", "member": { "shape": "Strings" } }, "Strings": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "ListArg": [ "foo", "bar", "baz" ] }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&ListArg.member.1=foo&ListArg.member.2=bar&ListArg.member.3=baz" } }, { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "ListArg": [] }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&ListArg=" } } ] }, { "description": "Flattened list", "metadata": { "protocol": "query", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "ScalarArg": { "shape": "StringType" }, "ListArg": { "shape": "ListType" }, "NamedListArg": { "shape": "NamedListType" } } }, "ListType": { "type": "list", "member": { "shape": "StringType" }, "flattened": true }, "NamedListType": { "type": "list", "member": { "shape": "StringType", "locationName": "Foo" }, "flattened": true }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "ScalarArg": "foo", "ListArg": [ "a", "b", "c" ] }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&ScalarArg=foo&ListArg.1=a&ListArg.2=b&ListArg.3=c" } }, { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "NamedListArg": [ "a" ] }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&Foo.1=a" } } ] }, { "description": "Serialize flattened map type", "metadata": { "protocol": "query", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "MapArg": { "shape": "StringMap" } } }, "StringMap": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "StringType" }, "flattened": true }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "MapArg": { "key1": "val1", "key2": "val2" } }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&MapArg.1.key=key1&MapArg.1.value=val1&MapArg.2.key=key2&MapArg.2.value=val2" } } ] }, { "description": "Non flattened list with LocationName", "metadata": { "protocol": "query", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "ListArg": { "shape": "ListType" } } }, "ListType": { "type": "list", "member": { "shape": "StringType", "locationName": "item" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "ListArg": [ "a", "b", "c" ] }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&ListArg.item.1=a&ListArg.item.2=b&ListArg.item.3=c" } } ] }, { "description": "Flattened list with LocationName", "metadata": { "protocol": "query", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "ScalarArg": { "shape": "StringType" }, "ListArg": { "shape": "ListType" } } }, "ListType": { "type": "list", "member": { "shape": "StringType", "locationName": "ListArgLocation" }, "flattened": true }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "ScalarArg": "foo", "ListArg": [ "a", "b", "c" ] }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&ScalarArg=foo&ListArgLocation.1=a&ListArgLocation.2=b&ListArgLocation.3=c" } } ] }, { "description": "Serialize map type", "metadata": { "protocol": "query", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "MapArg": { "shape": "StringMap" } } }, "StringMap": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "MapArg": { "key1": "val1", "key2": "val2" } }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&MapArg.entry.1.key=key1&MapArg.entry.1.value=val1&MapArg.entry.2.key=key2&MapArg.entry.2.value=val2" } } ] }, { "description": "Serialize map type with locationName", "metadata": { "protocol": "query", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "MapArg": { "shape": "StringMap" } } }, "StringMap": { "type": "map", "key": { "shape": "StringType", "locationName": "TheKey" }, "value": { "shape": "StringType", "locationName": "TheValue" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "MapArg": { "key1": "val1", "key2": "val2" } }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&MapArg.entry.1.TheKey=key1&MapArg.entry.1.TheValue=val1&MapArg.entry.2.TheKey=key2&MapArg.entry.2.TheValue=val2" } } ] }, { "description": "Base64 encoded Blobs", "metadata": { "protocol": "query", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "BlobArg": { "shape": "BlobType" } } }, "BlobType": { "type": "blob" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "BlobArg": "foo" }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&BlobArg=Zm9v" } } ] }, { "description": "Timestamp values", "metadata": { "protocol": "query", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "TimeArg": { "shape": "TimestampType" } } }, "TimestampType": { "type": "timestamp" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "TimeArg": 1422172800 }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&TimeArg=2015-01-25T08%3A00%3A00Z" } } ] }, { "description": "Recursive shapes", "metadata": { "protocol": "query", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "RecursiveStruct": { "shape": "RecursiveStructType" } } }, "RecursiveStructType": { "type": "structure", "members": { "NoRecurse": { "shape": "StringType" }, "RecursiveStruct": { "shape": "RecursiveStructType" }, "RecursiveList": { "shape": "RecursiveListType" }, "RecursiveMap": { "shape": "RecursiveMapType" } } }, "RecursiveListType": { "type": "list", "member": { "shape": "RecursiveStructType" } }, "RecursiveMapType": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "RecursiveStructType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "NoRecurse": "foo" } }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&RecursiveStruct.NoRecurse=foo" } }, { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveStruct": { "NoRecurse": "foo" } } }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&RecursiveStruct.RecursiveStruct.NoRecurse=foo" } }, { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveStruct": { "RecursiveStruct": { "RecursiveStruct": { "NoRecurse": "foo" } } } } }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&RecursiveStruct.RecursiveStruct.RecursiveStruct.RecursiveStruct.NoRecurse=foo" } }, { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveList": [ { "NoRecurse": "foo" }, { "NoRecurse": "bar" } ] } }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&RecursiveStruct.RecursiveList.member.1.NoRecurse=foo&RecursiveStruct.RecursiveList.member.2.NoRecurse=bar" } }, { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveList": [ { "NoRecurse": "foo" }, { "RecursiveStruct": { "NoRecurse": "bar" } } ] } }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&RecursiveStruct.RecursiveList.member.1.NoRecurse=foo&RecursiveStruct.RecursiveList.member.2.RecursiveStruct.NoRecurse=bar" } }, { "given": { "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveMap": { "foo": { "NoRecurse": "foo" }, "bar": { "NoRecurse": "bar" } } } }, "serialized": { "uri": "/", "body": "Action=OperationName&Version=2014-01-01&RecursiveStruct.RecursiveMap.entry.1.key=foo&RecursiveStruct.RecursiveMap.entry.1.value.NoRecurse=foo&RecursiveStruct.RecursiveMap.entry.2.key=bar&RecursiveStruct.RecursiveMap.entry.2.value.NoRecurse=bar" } } ] }, { "description": "Idempotency token auto fill", "metadata": { "protocol": "query", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "Token": { "shape": "StringType", "idempotencyToken": true } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "Token": "abc123" }, "serialized": { "uri": "/path", "headers": {}, "body": "Token=abc123" } }, { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { }, "serialized": { "uri": "/path", "headers": {}, "body": "Token=00000000-0000-4000-8000-000000000000" } } ] } ] aws-sdk-go-1.4.22/models/protocol_tests/input/rest-json.json000066400000000000000000000656211300374646400241210ustar00rootroot00000000000000[ { "description": "No parameters", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": {}, "cases": [ { "given": { "http": { "method": "GET", "requestUri": "/2014-01-01/jobs" }, "name": "OperationName" }, "serialized": { "body": "", "uri": "/2014-01-01/jobs", "headers": {} } } ] }, { "description": "URI parameter only with no location name", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "PipelineId": { "shape": "StringType", "location": "uri" } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "GET", "requestUri": "/2014-01-01/jobsByPipeline/{PipelineId}" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "PipelineId": "foo" }, "serialized": { "body": "", "uri": "/2014-01-01/jobsByPipeline/foo", "headers": {} } } ] }, { "description": "URI parameter only with location name", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "Foo": { "shape": "StringType", "location": "uri", "locationName": "PipelineId" } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "GET", "requestUri": "/2014-01-01/jobsByPipeline/{PipelineId}" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "Foo": "bar" }, "serialized": { "body": "", "uri": "/2014-01-01/jobsByPipeline/bar", "headers": {} } } ] }, { "description": "Querystring list of strings", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "Items": { "shape": "StringList", "location": "querystring", "locationName": "item" } } }, "StringList": { "type": "list", "member": { "shape": "String" } }, "String": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "GET", "requestUri": "/path" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "Items": ["value1", "value2"] }, "serialized": { "body": "", "uri": "/path?item=value1&item=value2", "headers": {} } } ] }, { "description": "String to string maps in querystring", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "PipelineId": { "shape": "StringType", "location": "uri" }, "QueryDoc": { "shape": "MapStringStringType", "location": "querystring" } } }, "MapStringStringType": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "GET", "requestUri": "/2014-01-01/jobsByPipeline/{PipelineId}" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "PipelineId": "foo", "QueryDoc": { "bar": "baz", "fizz": "buzz" } }, "serialized": { "body": "", "uri": "/2014-01-01/jobsByPipeline/foo?bar=baz&fizz=buzz", "headers": {} } } ] }, { "description": "String to string list maps in querystring", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "PipelineId": { "shape": "StringType", "location": "uri" }, "QueryDoc": { "shape": "MapStringStringListType", "location": "querystring" } } }, "MapStringStringListType": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "StringListType" } }, "StringListType": { "type": "list", "member": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "GET", "requestUri": "/2014-01-01/jobsByPipeline/{PipelineId}" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "PipelineId": "id", "QueryDoc": { "foo": ["bar", "baz"], "fizz": ["buzz", "pop"] } }, "serialized": { "body": "", "uri": "/2014-01-01/jobsByPipeline/id?foo=bar&foo=baz&fizz=buzz&fizz=pop", "headers": {} } } ] }, { "description": "URI parameter and querystring params", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "PipelineId": { "shape": "StringType", "location": "uri", "locationName": "PipelineId" }, "Ascending": { "shape": "StringType", "location": "querystring", "locationName": "Ascending" }, "PageToken": { "shape": "StringType", "location": "querystring", "locationName": "PageToken" } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "GET", "requestUri": "/2014-01-01/jobsByPipeline/{PipelineId}" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "PipelineId": "foo", "Ascending": "true", "PageToken": "bar" }, "serialized": { "body": "", "uri": "/2014-01-01/jobsByPipeline/foo?Ascending=true&PageToken=bar", "headers": {} } } ] }, { "description": "URI parameter, querystring params and JSON body", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "PipelineId": { "shape": "StringType", "location": "uri", "locationName": "PipelineId" }, "Ascending": { "shape": "StringType", "location": "querystring", "locationName": "Ascending" }, "PageToken": { "shape": "StringType", "location": "querystring", "locationName": "PageToken" }, "Config": { "shape": "StructType" } } }, "StringType": { "type": "string" }, "StructType": { "type": "structure", "members": { "A": { "shape": "StringType" }, "B": { "shape": "StringType" } } } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/2014-01-01/jobsByPipeline/{PipelineId}" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "PipelineId": "foo", "Ascending": "true", "PageToken": "bar", "Config": { "A": "one", "B": "two" } }, "serialized": { "body": "{\"Config\": {\"A\": \"one\", \"B\": \"two\"}}", "uri": "/2014-01-01/jobsByPipeline/foo?Ascending=true&PageToken=bar", "headers": {} } } ] }, { "description": "URI parameter, querystring params, headers and JSON body", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "PipelineId": { "shape": "StringType", "location": "uri", "locationName": "PipelineId" }, "Ascending": { "shape": "StringType", "location": "querystring", "locationName": "Ascending" }, "Checksum": { "shape": "StringType", "location": "header", "locationName": "x-amz-checksum" }, "PageToken": { "shape": "StringType", "location": "querystring", "locationName": "PageToken" }, "Config": { "shape": "StructType" } } }, "StringType": { "type": "string" }, "StructType": { "type": "structure", "members": { "A": { "shape": "StringType" }, "B": { "shape": "StringType" } } } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/2014-01-01/jobsByPipeline/{PipelineId}" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "PipelineId": "foo", "Ascending": "true", "Checksum": "12345", "PageToken": "bar", "Config": { "A": "one", "B": "two" } }, "serialized": { "body": "{\"Config\": {\"A\": \"one\", \"B\": \"two\"}}", "uri": "/2014-01-01/jobsByPipeline/foo?Ascending=true&PageToken=bar", "headers": { "x-amz-checksum": "12345" } } } ] }, { "description": "Streaming payload", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "vaultName": { "shape": "StringType", "location": "uri", "locationName": "vaultName" }, "checksum": { "shape": "StringType", "location": "header", "locationName": "x-amz-sha256-tree-hash" }, "body": { "shape": "Stream" } }, "required": [ "vaultName" ], "payload": "body" }, "StringType": { "type": "string" }, "Stream": { "type": "blob", "streaming": true } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/2014-01-01/vaults/{vaultName}/archives" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "vaultName": "name", "checksum": "foo", "body": "contents" }, "serialized": { "body": "contents", "uri": "/2014-01-01/vaults/name/archives", "headers": { "x-amz-sha256-tree-hash": "foo" } } } ] }, { "description": "Serialize blobs in body", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "Foo": { "shape": "StringType", "location": "uri", "locationName": "Foo" }, "Bar": {"shape": "BlobType"} }, "required": [ "Foo" ] }, "StringType": { "type": "string" }, "BlobType": { "type": "blob" } }, "cases": [ { "given": { "http": { "method": "GET", "requestUri": "/2014-01-01/{Foo}" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "Foo": "foo_name", "Bar": "Blob param" }, "serialized": { "body": "{\"Bar\": \"QmxvYiBwYXJhbQ==\"}", "uri": "/2014-01-01/foo_name" } } ] }, { "description": "Blob payload", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "foo": { "shape": "FooShape" } } }, "FooShape": { "type": "blob" } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/" }, "input": { "shape": "InputShape", "payload": "foo" }, "name": "OperationName" }, "params": { "foo": "bar" }, "serialized": { "method": "POST", "body": "bar", "uri": "/" } }, { "given": { "http": { "method": "POST", "requestUri": "/" }, "input": { "shape": "InputShape", "payload": "foo" }, "name": "OperationName" }, "params": { }, "serialized": { "method": "POST", "body": "", "uri": "/" } } ] }, { "description": "Structure payload", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "foo": { "shape": "FooShape" } } }, "FooShape": { "locationName": "foo", "type": "structure", "members": { "baz": { "shape": "BazShape" } } }, "BazShape": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/" }, "input": { "shape": "InputShape", "payload": "foo" }, "name": "OperationName" }, "params": { "foo": { "baz": "bar" } }, "serialized": { "method": "POST", "body": "{\"baz\": \"bar\"}", "uri": "/" } }, { "given": { "http": { "method": "POST", "requestUri": "/" }, "input": { "shape": "InputShape", "payload": "foo" }, "name": "OperationName" }, "params": {}, "serialized": { "method": "POST", "body": "", "uri": "/" } } ] }, { "description": "Omits null query params, but serializes empty strings", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "foo": { "location":"querystring", "locationName":"param-name", "shape": "Foo" } } }, "Foo": { "type": "string" } }, "cases": [ { "given": { "name": "OperationName", "http": { "method": "POST", "requestUri": "/path" }, "input": { "shape": "InputShape" } }, "params": { "foo": null }, "serialized": { "method": "POST", "body": "", "uri": "/path" } }, { "given": { "name": "OperationName", "http": { "method": "POST", "requestUri": "/path?abc=mno" }, "input": { "shape": "InputShape" } }, "params": { "foo": "" }, "serialized": { "method": "POST", "body": "", "uri": "/path?abc=mno¶m-name=" } } ] }, { "description": "Recursive shapes", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "RecursiveStruct": { "shape": "RecursiveStructType" } } }, "RecursiveStructType": { "type": "structure", "members": { "NoRecurse": { "shape": "StringType" }, "RecursiveStruct": { "shape": "RecursiveStructType" }, "RecursiveList": { "shape": "RecursiveListType" }, "RecursiveMap": { "shape": "RecursiveMapType" } } }, "RecursiveListType": { "type": "list", "member": { "shape": "RecursiveStructType" } }, "RecursiveMapType": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "RecursiveStructType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "NoRecurse": "foo" } }, "serialized": { "uri": "/path" , "headers": {}, "body": "{\"RecursiveStruct\": {\"NoRecurse\": \"foo\"}}" } }, { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveStruct": { "NoRecurse": "foo" } } }, "serialized": { "uri": "/path", "headers": {}, "body": "{\"RecursiveStruct\": {\"RecursiveStruct\": {\"NoRecurse\": \"foo\"}}}" } }, { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveStruct": { "RecursiveStruct": { "RecursiveStruct": { "NoRecurse": "foo" } } } } }, "serialized": { "uri": "/path", "headers": {}, "body": "{\"RecursiveStruct\": {\"RecursiveStruct\": {\"RecursiveStruct\": {\"RecursiveStruct\": {\"NoRecurse\": \"foo\"}}}}}" } }, { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveList": [ { "NoRecurse": "foo" }, { "NoRecurse": "bar" } ] } }, "serialized": { "uri": "/path", "headers": {}, "body": "{\"RecursiveStruct\": {\"RecursiveList\": [{\"NoRecurse\": \"foo\"}, {\"NoRecurse\": \"bar\"}]}}" } }, { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveList": [ { "NoRecurse": "foo" }, { "RecursiveStruct": { "NoRecurse": "bar" } } ] } }, "serialized": { "uri": "/path", "headers": {}, "body": "{\"RecursiveStruct\": {\"RecursiveList\": [{\"NoRecurse\": \"foo\"}, {\"RecursiveStruct\": {\"NoRecurse\": \"bar\"}}]}}" } }, { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveMap": { "foo": { "NoRecurse": "foo" }, "bar": { "NoRecurse": "bar" } } } }, "serialized": { "uri": "/path", "headers": {}, "body": "{\"RecursiveStruct\": {\"RecursiveMap\": {\"foo\": {\"NoRecurse\": \"foo\"}, \"bar\": {\"NoRecurse\": \"bar\"}}}}" } } ] }, { "description": "Timestamp values", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "TimeArg": { "shape": "TimestampType" }, "TimeArgInHeader": { "shape": "TimestampType", "location": "header", "locationName": "x-amz-timearg" } } }, "TimestampType": { "type": "timestamp" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "TimeArg": 1422172800 }, "serialized": { "uri": "/path", "headers": {}, "body": "{\"TimeArg\": 1422172800}" } }, { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "TimeArgInHeader": 1422172800 }, "serialized": { "uri": "/path", "headers": {"x-amz-timearg": "Sun, 25 Jan 2015 08:00:00 GMT"}, "body": "" } } ] }, { "description": "Named locations in JSON body", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "TimeArg": { "shape": "TimestampType", "locationName": "timestamp_location" } } }, "TimestampType": { "type": "timestamp" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "TimeArg": 1422172800 }, "serialized": { "uri": "/path", "headers": {}, "body": "{\"timestamp_location\": 1422172800}" } } ] }, { "description": "String payload", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "foo": { "shape": "FooShape" } } }, "FooShape": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/" }, "input": { "shape": "InputShape", "payload": "foo" }, "name": "OperationName" }, "params": { "foo": "bar" }, "serialized": { "method": "POST", "body": "bar", "uri": "/" } } ] }, { "description": "Idempotency token auto fill", "metadata": { "protocol": "rest-json", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "Token": { "shape": "StringType", "idempotencyToken": true } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "Token": "abc123" }, "serialized": { "uri": "/path", "headers": {}, "body": "{\"Token\": \"abc123\"}" } }, { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { }, "serialized": { "uri": "/path", "headers": {}, "body": "{\"Token\": \"00000000-0000-4000-8000-000000000000\"}" } } ] } ] aws-sdk-go-1.4.22/models/protocol_tests/input/rest-xml.json000066400000000000000000001122531300374646400237420ustar00rootroot00000000000000[ { "description": "Basic XML serialization", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "Name": { "shape": "StringType" }, "Description": { "shape": "StringType" } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/2014-01-01/hostedzone" }, "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "name": "OperationName" }, "params": { "Name": "foo", "Description": "bar" }, "serialized": { "method": "POST", "body": "foobar", "uri": "/2014-01-01/hostedzone", "headers": {} } }, { "given": { "http": { "method": "PUT", "requestUri": "/2014-01-01/hostedzone" }, "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "name": "OperationName" }, "params": { "Name": "foo", "Description": "bar" }, "serialized": { "method": "PUT", "body": "foobar", "uri": "/2014-01-01/hostedzone", "headers": {} } }, { "given": { "http": { "method": "GET", "requestUri": "/2014-01-01/hostedzone" }, "name": "OperationName" }, "params": {}, "serialized": { "method": "GET", "body": "", "uri": "/2014-01-01/hostedzone", "headers": {} } } ] }, { "description": "Serialize other scalar types", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "First": { "shape": "BoolType" }, "Second": { "shape": "BoolType" }, "Third": { "shape": "FloatType" }, "Fourth": { "shape": "IntegerType" } } }, "BoolType": { "type": "boolean" }, "FloatType": { "type": "float" }, "IntegerType": { "type": "integer" } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/2014-01-01/hostedzone" }, "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "name": "OperationName" }, "params": { "First": true, "Second": false, "Third": 1.2, "Fourth": 3 }, "serialized": { "method": "POST", "body": "truefalse1.23", "uri": "/2014-01-01/hostedzone", "headers": {} } } ] }, { "description": "Nested structures", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "SubStructure": { "shape": "SubStructure" }, "Description": { "shape": "StringType" } } }, "SubStructure": { "type": "structure", "members": { "Foo": { "shape": "StringType" }, "Bar": { "shape": "StringType" } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/2014-01-01/hostedzone" }, "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "name": "OperationName" }, "params": { "SubStructure": { "Foo": "a", "Bar": "b" }, "Description": "baz" }, "serialized": { "method": "POST", "body": "abbaz", "uri": "/2014-01-01/hostedzone", "headers": {} } }, { "given": { "http": { "method": "POST", "requestUri": "/2014-01-01/hostedzone" }, "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "name": "OperationName" }, "params": { "SubStructure": { "Foo": "a", "Bar": null }, "Description": "baz" }, "serialized": { "method": "POST", "body": "abaz", "uri": "/2014-01-01/hostedzone", "headers": {} } } ] }, { "description": "Nested structures", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "SubStructure": { "shape": "SubStructure" }, "Description": { "shape": "StringType" } } }, "SubStructure": { "type": "structure", "members": { "Foo": { "shape": "StringType" }, "Bar": { "shape": "StringType" } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/2014-01-01/hostedzone" }, "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "name": "OperationName" }, "params": { "SubStructure": {}, "Description": "baz" }, "serialized": { "method": "POST", "body": "baz", "uri": "/2014-01-01/hostedzone", "headers": {} } } ] }, { "description": "Non flattened lists", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "ListParam": { "shape": "ListShape" } } }, "ListShape": { "type": "list", "member": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/2014-01-01/hostedzone" }, "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "name": "OperationName" }, "params": { "ListParam": [ "one", "two", "three" ] }, "serialized": { "method": "POST", "body": "onetwothree", "uri": "/2014-01-01/hostedzone", "headers": {} } } ] }, { "description": "Non flattened lists with locationName", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "ListParam": { "shape": "ListShape", "locationName": "AlternateName" } } }, "ListShape": { "type": "list", "member": { "shape": "StringType", "locationName": "NotMember" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/2014-01-01/hostedzone" }, "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "name": "OperationName" }, "params": { "ListParam": [ "one", "two", "three" ] }, "serialized": { "method": "POST", "body": "onetwothree", "uri": "/2014-01-01/hostedzone", "headers": {} } } ] }, { "description": "Flattened lists", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "ListParam": { "shape": "ListShape" } } }, "ListShape": { "type": "list", "member": { "shape": "StringType" }, "flattened": true }, "StringType": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/2014-01-01/hostedzone" }, "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "name": "OperationName" }, "params": { "ListParam": [ "one", "two", "three" ] }, "serialized": { "method": "POST", "body": "onetwothree", "uri": "/2014-01-01/hostedzone", "headers": {} } } ] }, { "description": "Flattened lists with locationName", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "ListParam": { "shape": "ListShape", "locationName": "item" } } }, "ListShape": { "type": "list", "member": { "shape": "StringType" }, "flattened": true }, "StringType": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/2014-01-01/hostedzone" }, "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "name": "OperationName" }, "params": { "ListParam": [ "one", "two", "three" ] }, "serialized": { "method": "POST", "body": "onetwothree", "uri": "/2014-01-01/hostedzone", "headers": {} } } ] }, { "description": "List of structures", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "ListParam": { "shape": "ListShape", "locationName": "item" } } }, "ListShape": { "type": "list", "member": { "shape": "SingleFieldStruct" }, "flattened": true }, "StringType": { "type": "string" }, "SingleFieldStruct": { "type": "structure", "members": { "Element": { "shape": "StringType", "locationName": "value" } } } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/2014-01-01/hostedzone" }, "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "name": "OperationName" }, "params": { "ListParam": [ { "Element": "one" }, { "Element": "two" }, { "Element": "three" } ] }, "serialized": { "method": "POST", "body": "onetwothree", "uri": "/2014-01-01/hostedzone", "headers": {} } } ] }, { "description": "Blob and timestamp shapes", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "StructureParam": { "shape": "StructureShape" } } }, "StructureShape": { "type": "structure", "members": { "t": { "shape": "TShape" }, "b": { "shape": "BShape" } } }, "TShape": { "type": "timestamp" }, "BShape": { "type": "blob" } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/2014-01-01/hostedzone" }, "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "name": "OperationName" }, "params": { "StructureParam": { "t": 1422172800, "b": "foo" } }, "serialized": { "method": "POST", "body": "2015-01-25T08:00:00ZZm9v", "uri": "/2014-01-01/hostedzone", "headers": {} } } ] }, { "description": "Header maps", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "foo": { "shape": "FooShape" } } }, "FooShape": { "type": "map", "location": "headers", "locationName": "x-foo-", "key": { "shape": "FooKeyValue" }, "value": { "shape": "FooKeyValue" } }, "FooKeyValue": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/" }, "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "name": "OperationName" }, "params": { "foo": { "a": "b", "c": "d" } }, "serialized": { "method": "POST", "body": "", "uri": "/", "headers": { "x-foo-a": "b", "x-foo-c": "d" } } } ] }, { "description": "Querystring list of strings", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "Items": { "shape": "StringList", "location": "querystring", "locationName": "item" } } }, "StringList": { "type": "list", "member": { "shape": "String" } }, "String": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "GET", "requestUri": "/path" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "Items": ["value1", "value2"] }, "serialized": { "body": "", "uri": "/path?item=value1&item=value2", "headers": {} } } ] }, { "description": "String to string maps in querystring", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "PipelineId": { "shape": "StringType", "location": "uri" }, "QueryDoc": { "shape": "MapStringStringType", "location": "querystring" } } }, "MapStringStringType": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "GET", "requestUri": "/2014-01-01/jobsByPipeline/{PipelineId}" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "PipelineId": "foo", "QueryDoc": { "bar": "baz", "fizz": "buzz" } }, "serialized": { "body": "", "uri": "/2014-01-01/jobsByPipeline/foo?bar=baz&fizz=buzz", "headers": {} } } ] }, { "description": "String to string list maps in querystring", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "PipelineId": { "shape": "StringType", "location": "uri" }, "QueryDoc": { "shape": "MapStringStringListType", "location": "querystring" } } }, "MapStringStringListType": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "StringListType" } }, "StringListType": { "type": "list", "member": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "GET", "requestUri": "/2014-01-01/jobsByPipeline/{PipelineId}" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "PipelineId": "id", "QueryDoc": { "foo": ["bar", "baz"], "fizz": ["buzz", "pop"] } }, "serialized": { "body": "", "uri": "/2014-01-01/jobsByPipeline/id?foo=bar&foo=baz&fizz=buzz&fizz=pop", "headers": {} } } ] }, { "description": "String payload", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "foo": { "shape": "FooShape" } }, "payload": "foo" }, "FooShape": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "foo": "bar" }, "serialized": { "method": "POST", "body": "bar", "uri": "/" } } ] }, { "description": "Blob payload", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "foo": { "shape": "FooShape" } }, "payload": "foo" }, "FooShape": { "type": "blob" } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "foo": "bar" }, "serialized": { "method": "POST", "body": "bar", "uri": "/" } }, { "given": { "http": { "method": "POST", "requestUri": "/" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { }, "serialized": { "method": "POST", "body": "", "uri": "/" } } ] }, { "description": "Structure payload", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "foo": { "shape": "FooShape" } }, "payload": "foo" }, "FooShape": { "locationName": "foo", "type": "structure", "members": { "baz": { "shape": "BazShape" } } }, "BazShape": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "foo": { "baz": "bar" } }, "serialized": { "method": "POST", "body": "bar", "uri": "/" } }, { "given": { "http": { "method": "POST", "requestUri": "/" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": {}, "serialized": { "method": "POST", "body": "", "uri": "/" } }, { "given": { "http": { "method": "POST", "requestUri": "/" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "foo": {} }, "serialized": { "method": "POST", "body": "", "uri": "/" } }, { "given": { "http": { "method": "POST", "requestUri": "/" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "foo": null }, "serialized": { "method": "POST", "body": "", "uri": "/" } } ] }, { "description": "XML Attribute", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "Grant": { "shape": "Grant" } }, "payload": "Grant" }, "Grant": { "type": "structure", "locationName": "Grant", "members": { "Grantee": { "shape": "Grantee" } } }, "Grantee": { "type": "structure", "members": { "Type": { "shape": "Type", "locationName": "xsi:type", "xmlAttribute": true }, "EmailAddress": { "shape": "StringType" } }, "xmlNamespace": { "prefix": "xsi", "uri":"http://www.w3.org/2001/XMLSchema-instance" } }, "Type": { "type": "string" }, "StringType": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "POST", "requestUri": "/" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "Grant": { "Grantee": { "EmailAddress": "foo@example.com", "Type": "CanonicalUser" } } }, "serialized": { "method": "POST", "body": "foo@example.com", "uri": "/" } } ] }, { "description": "Greedy keys", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "Bucket": { "shape": "BucketShape", "location": "uri" }, "Key": { "shape": "KeyShape", "location": "uri" } } }, "BucketShape": { "type": "string" }, "KeyShape": { "type": "string" } }, "cases": [ { "given": { "http": { "method": "GET", "requestUri": "/{Bucket}/{Key+}" }, "input": { "shape": "InputShape" }, "name": "OperationName" }, "params": { "Key": "testing /123", "Bucket": "my/bucket" }, "serialized": { "method": "GET", "body": "", "uri": "/my%2Fbucket/testing%20/123" } } ] }, { "description": "Omits null query params, but serializes empty strings", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "foo": { "location":"querystring", "locationName":"param-name", "shape": "Foo" } } }, "Foo": { "type": "string" } }, "cases": [ { "given": { "name": "OperationName", "http": { "method": "POST", "requestUri": "/path" }, "input": { "shape": "InputShape" } }, "params": { "foo": null }, "serialized": { "method": "POST", "body": "", "uri": "/path" } }, { "given": { "name": "OperationName", "http": { "method": "POST", "requestUri": "/path?abc=mno" }, "input": { "shape": "InputShape" } }, "params": { "foo": "" }, "serialized": { "method": "POST", "body": "", "uri": "/path?abc=mno¶m-name=" } } ] }, { "description": "Recursive shapes", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "RecursiveStruct": { "shape": "RecursiveStructType" } } }, "RecursiveStructType": { "type": "structure", "members": { "NoRecurse": { "shape": "StringType" }, "RecursiveStruct": { "shape": "RecursiveStructType" }, "RecursiveList": { "shape": "RecursiveListType" }, "RecursiveMap": { "shape": "RecursiveMapType" } } }, "RecursiveListType": { "type": "list", "member": { "shape": "RecursiveStructType" } }, "RecursiveMapType": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "RecursiveStructType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "NoRecurse": "foo" } }, "serialized": { "uri": "/path", "body": "foo" } }, { "given": { "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveStruct": { "NoRecurse": "foo" } } }, "serialized": { "uri": "/path", "body": "foo" } }, { "given": { "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveStruct": { "RecursiveStruct": { "RecursiveStruct": { "NoRecurse": "foo" } } } } }, "serialized": { "uri": "/path", "body": "foo" } }, { "given": { "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveList": [ { "NoRecurse": "foo" }, { "NoRecurse": "bar" } ] } }, "serialized": { "uri": "/path", "body": "foobar" } }, { "given": { "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveList": [ { "NoRecurse": "foo" }, { "RecursiveStruct": { "NoRecurse": "bar" } } ] } }, "serialized": { "uri": "/path", "body": "foobar" } }, { "given": { "input": { "shape": "InputShape", "locationName": "OperationRequest", "xmlNamespace": {"uri": "https://foo/"} }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "RecursiveStruct": { "RecursiveMap": { "foo": { "NoRecurse": "foo" }, "bar": { "NoRecurse": "bar" } } } }, "serialized": { "uri": "/path", "body": "foofoobarbar" } } ] }, { "description": "Timestamp in header", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "TimeArgInHeader": { "shape": "TimestampType", "location": "header", "locationName": "x-amz-timearg" } } }, "TimestampType": { "type": "timestamp" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "TimeArgInHeader": 1422172800 }, "serialized": { "method": "POST", "body": "", "uri": "/path", "headers": {"x-amz-timearg": "Sun, 25 Jan 2015 08:00:00 GMT"} } } ] }, { "description": "Idempotency token auto fill", "metadata": { "protocol": "rest-xml", "apiVersion": "2014-01-01" }, "shapes": { "InputShape": { "type": "structure", "members": { "Token": { "shape": "StringType", "idempotencyToken": true } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { "Token": "abc123" }, "serialized": { "uri": "/path", "headers": {}, "body": "abc123" } }, { "given": { "input": { "shape": "InputShape" }, "http": { "method": "POST", "requestUri": "/path" }, "name": "OperationName" }, "params": { }, "serialized": { "uri": "/path", "headers": {}, "body": "00000000-0000-4000-8000-000000000000" } } ] } ] aws-sdk-go-1.4.22/models/protocol_tests/output/000077500000000000000000000000001300374646400214715ustar00rootroot00000000000000aws-sdk-go-1.4.22/models/protocol_tests/output/ec2.json000066400000000000000000000232141300374646400230370ustar00rootroot00000000000000[ { "description": "Scalar members", "metadata": { "protocol": "ec2" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Str": { "shape": "StringType" }, "Num": { "shape": "IntegerType", "locationName": "FooNum" }, "FalseBool": { "shape": "BooleanType" }, "TrueBool": { "shape": "BooleanType" }, "Float": { "shape": "FloatType" }, "Double": { "shape": "DoubleType" }, "Long": { "shape": "LongType" }, "Char": { "shape": "CharType" } } }, "StringType": { "type": "string" }, "IntegerType": { "type": "integer" }, "BooleanType": { "type": "boolean" }, "FloatType": { "type": "float" }, "DoubleType": { "type": "double" }, "LongType": { "type": "long" }, "CharType": { "type": "character" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Str": "myname", "Num": 123, "FalseBool": false, "TrueBool": true, "Float": 1.2, "Double": 1.3, "Long": 200, "Char": "a" }, "response": { "status_code": 200, "headers": {}, "body": "myname123falsetrue1.21.3200arequest-id" } } ] }, { "description": "Blob", "metadata": { "protocol": "ec2" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Blob": { "shape": "BlobType" } } }, "BlobType": { "type": "blob" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Blob": "value" }, "response": { "status_code": 200, "headers": {}, "body": "dmFsdWU=requestid" } } ] }, { "description": "Lists", "metadata": { "protocol": "ec2" }, "shapes": { "OutputShape": { "type": "structure", "members": { "ListMember": { "shape": "ListShape" } } }, "ListShape": { "type": "list", "member": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "ListMember": ["abc", "123"] }, "response": { "status_code": 200, "headers": {}, "body": "abc123requestid" } } ] }, { "description": "List with custom member name", "metadata": { "protocol": "ec2" }, "shapes": { "OutputShape": { "type": "structure", "members": { "ListMember": { "shape": "ListShape" } } }, "ListShape": { "type": "list", "member": { "shape": "StringType", "locationName": "item" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "ListMember": ["abc", "123"] }, "response": { "status_code": 200, "headers": {}, "body": "abc123requestid" } } ] }, { "description": "Flattened List", "metadata": { "protocol": "ec2" }, "shapes": { "OutputShape": { "type": "structure", "members": { "ListMember": { "shape": "ListType", "flattened": true } } }, "ListType": { "type": "list", "member": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "ListMember": ["abc", "123"] }, "response": { "status_code": 200, "headers": {}, "body": "abc123requestid" } } ] }, { "description": "Normal map", "metadata": { "protocol": "ec2" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Map": { "shape": "MapType" } } }, "MapType": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "StructureType" } }, "StructureType": { "type": "structure", "members": { "foo": { "shape": "StringType" } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Map": { "qux": { "foo": "bar" }, "baz": { "foo": "bam" } } }, "response": { "status_code": 200, "headers": {}, "body": "quxbarbazbamrequestid" } } ] }, { "description": "Flattened map", "metadata": { "protocol": "ec2" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Map": { "shape": "MapType", "flattened": true } } }, "MapType": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Map": { "qux": "bar", "baz": "bam" } }, "response": { "status_code": 200, "headers": {}, "body": "quxbarbazbamrequestid" } } ] }, { "description": "Named map", "metadata": { "protocol": "ec2" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Map": { "shape": "MapType", "flattened": true } } }, "MapType": { "type": "map", "key": { "shape": "StringType", "locationName": "foo" }, "value": { "shape": "StringType", "locationName": "bar" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Map": { "qux": "bar", "baz": "bam" } }, "response": { "status_code": 200, "headers": {}, "body": "quxbarbazbamrequestid" } } ] }, { "description": "Empty string", "metadata": { "protocol": "ec2" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Foo": { "shape": "StringType" } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Foo": "" }, "response": { "status_code": 200, "headers": {}, "body": "requestid" } } ] } ] aws-sdk-go-1.4.22/models/protocol_tests/output/json.json000066400000000000000000000167471300374646400233540ustar00rootroot00000000000000[ { "description": "Scalar members", "metadata": { "protocol": "json" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Str": { "shape": "StringType" }, "Num": { "shape": "IntegerType" }, "FalseBool": { "shape": "BooleanType" }, "TrueBool": { "shape": "BooleanType" }, "Float": { "shape": "FloatType" }, "Double": { "shape": "DoubleType" }, "Long": { "shape": "LongType" }, "Char": { "shape": "CharType" } } }, "StringType": { "type": "string" }, "IntegerType": { "type": "integer" }, "BooleanType": { "type": "boolean" }, "FloatType": { "type": "float" }, "DoubleType": { "type": "double" }, "LongType": { "type": "long" }, "CharType": { "type": "character" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Str": "myname", "Num": 123, "FalseBool": false, "TrueBool": true, "Float": 1.2, "Double": 1.3, "Long": 200, "Char": "a" }, "response": { "status_code": 200, "headers": {}, "body": "{\"Str\": \"myname\", \"Num\": 123, \"FalseBool\": false, \"TrueBool\": true, \"Float\": 1.2, \"Double\": 1.3, \"Long\": 200, \"Char\": \"a\"}" } } ] }, { "description": "Blob members", "metadata": { "protocol": "json" }, "shapes": { "OutputShape": { "type": "structure", "members": { "BlobMember": { "shape": "BlobType" }, "StructMember": { "shape": "BlobContainer" } } }, "BlobType": { "type": "blob" }, "BlobContainer": { "type": "structure", "members": { "foo": { "shape": "BlobType" } } } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "BlobMember": "hi!", "StructMember": { "foo": "there!" } }, "response": { "status_code": 200, "headers": {}, "body": "{\"BlobMember\": \"aGkh\", \"StructMember\": {\"foo\": \"dGhlcmUh\"}}" } } ] }, { "description": "Timestamp members", "metadata": { "protocol": "json" }, "shapes": { "OutputShape": { "type": "structure", "members": { "TimeMember": { "shape": "TimeType" }, "StructMember": { "shape": "TimeContainer" } } }, "TimeType": { "type": "timestamp" }, "TimeContainer": { "type": "structure", "members": { "foo": { "shape": "TimeType" } } } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "TimeMember": 1398796238, "StructMember": { "foo": 1398796238 } }, "response": { "status_code": 200, "headers": {}, "body": "{\"TimeMember\": 1398796238, \"StructMember\": {\"foo\": 1398796238}}" } } ] }, { "description": "Lists", "metadata": { "protocol": "json" }, "shapes": { "OutputShape": { "type": "structure", "members": { "ListMember": { "shape": "ListType" }, "ListMemberMap": { "shape": "ListTypeMap" }, "ListMemberStruct": { "shape": "ListTypeStruct" } } }, "ListType": { "type": "list", "member": { "shape": "StringType" } }, "ListTypeMap": { "type": "list", "member": { "shape": "MapType" } }, "ListTypeStruct": { "type": "list", "member": { "shape": "StructType" } }, "StringType": { "type": "string" }, "StructType": { "type": "structure", "members": { } }, "MapType": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "StringType" } } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "ListMember": ["a", "b"] }, "response": { "status_code": 200, "headers": {}, "body": "{\"ListMember\": [\"a\", \"b\"]}" } }, { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "ListMember": ["a", null], "ListMemberMap": [{}, null, null, {}], "ListMemberStruct": [{}, null, null, {}] }, "response": { "status_code": 200, "headers": {}, "body": "{\"ListMember\": [\"a\", null], \"ListMemberMap\": [{}, null, null, {}], \"ListMemberStruct\": [{}, null, null, {}]}" } } ] }, { "description": "Maps", "metadata": { "protocol": "json" }, "shapes": { "OutputShape": { "type": "structure", "members": { "MapMember": { "shape": "MapType" } } }, "MapType": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "NumberList" } }, "StringType": { "type": "string" }, "NumberList": { "type": "list", "member": { "shape": "IntegerType" } }, "IntegerType": { "type": "integer" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "MapMember": { "a": [1, 2], "b": [3, 4] } }, "response": { "status_code": 200, "headers": {}, "body": "{\"MapMember\": {\"a\": [1, 2], \"b\": [3, 4]}}" } } ] }, { "description": "Ignores extra data", "metadata": { "protocol": "json" }, "shapes": { "OutputShape": { "type": "structure", "members": { "StrType": { "shape": "StrType" } } }, "StrType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": {}, "response": { "status_code": 200, "headers": {}, "body": "{\"foo\": \"bar\"}" } } ] } ] aws-sdk-go-1.4.22/models/protocol_tests/output/query.json000066400000000000000000000453111300374646400235350ustar00rootroot00000000000000[ { "description": "Scalar members", "metadata": { "protocol": "query" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Str": { "shape": "StringType" }, "Num": { "shape": "IntegerType", "locationName": "FooNum" }, "FalseBool": { "shape": "BooleanType" }, "TrueBool": { "shape": "BooleanType" }, "Float": { "shape": "FloatType" }, "Double": { "shape": "DoubleType" }, "Long": { "shape": "LongType" }, "Char": { "shape": "CharType" }, "Timestamp": { "shape": "TimestampType" } } }, "StringType": { "type": "string" }, "IntegerType": { "type": "integer" }, "BooleanType": { "type": "boolean" }, "FloatType": { "type": "float" }, "DoubleType": { "type": "double" }, "LongType": { "type": "long" }, "CharType": { "type": "character" }, "TimestampType": { "type": "timestamp" } }, "cases": [ { "given": { "output": { "resultWrapper": "OperationNameResult", "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Str": "myname", "Num": 123, "FalseBool": false, "TrueBool": true, "Float": 1.2, "Double": 1.3, "Long": 200, "Char": "a", "Timestamp": 1422172800 }, "response": { "status_code": 200, "headers": {}, "body": "myname123falsetrue1.21.3200a2015-01-25T08:00:00Zrequest-id" } } ] }, { "description": "Not all members in response", "metadata": { "protocol": "query" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Str": { "shape": "StringType" }, "Num": { "shape": "IntegerType" } } }, "StringType": { "type": "string" }, "IntegerType": { "type": "integer" } }, "cases": [ { "given": { "output": { "resultWrapper": "OperationNameResult", "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Str": "myname" }, "response": { "status_code": 200, "headers": {}, "body": "mynamerequest-id" } } ] }, { "description": "Blob", "metadata": { "protocol": "query" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Blob": { "shape": "BlobType" } } }, "BlobType": { "type": "blob" } }, "cases": [ { "given": { "output": { "resultWrapper": "OperationNameResult", "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Blob": "value" }, "response": { "status_code": 200, "headers": {}, "body": "dmFsdWU=requestid" } } ] }, { "description": "Lists", "metadata": { "protocol": "query" }, "shapes": { "OutputShape": { "type": "structure", "members": { "ListMember": { "shape": "ListShape" } } }, "ListShape": { "type": "list", "member": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "resultWrapper": "OperationNameResult", "shape": "OutputShape" }, "name": "OperationName" }, "result": { "ListMember": ["abc", "123"] }, "response": { "status_code": 200, "headers": {}, "body": "abc123requestid" } } ] }, { "description": "List with custom member name", "metadata": { "protocol": "query" }, "shapes": { "OutputShape": { "type": "structure", "members": { "ListMember": { "shape": "ListShape" } } }, "ListShape": { "type": "list", "member": { "shape": "StringType", "locationName": "item" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "resultWrapper": "OperationNameResult", "shape": "OutputShape" }, "name": "OperationName" }, "result": { "ListMember": ["abc", "123"] }, "response": { "status_code": 200, "headers": {}, "body": "abc123requestid" } } ] }, { "description": "Flattened List", "metadata": { "protocol": "query" }, "shapes": { "OutputShape": { "type": "structure", "members": { "ListMember": { "shape": "ListType" } } }, "ListType": { "type": "list", "flattened": true, "member": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "resultWrapper": "OperationNameResult", "shape": "OutputShape" }, "name": "OperationName" }, "result": { "ListMember": ["abc", "123"] }, "response": { "status_code": 200, "headers": {}, "body": "abc123requestid" } } ] }, { "description": "Flattened single element list", "metadata": { "protocol": "query" }, "shapes": { "OutputShape": { "type": "structure", "members": { "ListMember": { "shape": "ListType" } } }, "ListType": { "type": "list", "flattened": true, "member": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "resultWrapper": "OperationNameResult", "shape": "OutputShape" }, "name": "OperationName" }, "result": { "ListMember": ["abc"] }, "response": { "status_code": 200, "headers": {}, "body": "abcrequestid" } } ] }, { "description": "List of structures", "metadata": { "protocol": "query" }, "shapes": { "OutputShape": { "type": "structure", "members": { "List": { "shape": "ListOfStructs" } } }, "ListOfStructs": { "type": "list", "member": { "shape": "StructureShape" } }, "StructureShape": { "type": "structure", "members": { "Foo": { "shape": "StringShape" }, "Bar": { "shape": "StringShape" }, "Baz": { "shape": "StringShape" } } }, "StringShape": { "type": "string" } }, "cases": [ { "given": { "output": { "resultWrapper": "OperationNameResult", "shape": "OutputShape" }, "name": "OperationName" }, "result": { "List": [{"Foo": "firstfoo", "Bar": "firstbar", "Baz": "firstbaz"}, {"Foo": "secondfoo", "Bar": "secondbar", "Baz": "secondbaz"}] }, "response": { "status_code": 200, "headers": {}, "body": "firstfoofirstbarfirstbazsecondfoosecondbarsecondbazrequestid" } } ] }, { "description": "Flattened list of structures", "metadata": { "protocol": "query" }, "shapes": { "OutputShape": { "type": "structure", "resultWrapper": "OperationNameResult", "members": { "List": { "shape": "ListOfStructs" } } }, "ListOfStructs": { "type": "list", "flattened": true, "member": { "shape": "StructureShape" } }, "StructureShape": { "type": "structure", "members": { "Foo": { "shape": "StringShape" }, "Bar": { "shape": "StringShape" }, "Baz": { "shape": "StringShape" } } }, "StringShape": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "List": [{"Foo": "firstfoo", "Bar": "firstbar", "Baz": "firstbaz"}, {"Foo": "secondfoo", "Bar": "secondbar", "Baz": "secondbaz"}] }, "response": { "status_code": 200, "headers": {}, "body": "firstfoofirstbarfirstbazsecondfoosecondbarsecondbazrequestid" } } ] }, { "description": "Flattened list with location name", "metadata": { "protocol": "query" }, "shapes": { "OutputShape": { "type": "structure", "members": { "List": { "shape": "ListType" } } }, "ListType": { "type": "list", "flattened": true, "member": { "shape": "StringShape", "locationName": "NamedList" } }, "StringShape": { "type": "string" } }, "cases": [ { "given": { "output": { "resultWrapper": "OperationNameResult", "shape": "OutputShape" }, "name": "OperationName" }, "result": { "List": ["a", "b"] }, "response": { "status_code": 200, "headers": {}, "body": "abrequestid" } } ] }, { "description": "Normal map", "metadata": { "protocol": "query" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Map": { "shape": "StringMap" } } }, "StringMap": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "StructType" } }, "StringType": { "type": "string" }, "StructType": { "type": "structure", "members": { "foo": { "shape": "StringType" } } } }, "cases": [ { "given": { "output": { "resultWrapper": "OperationNameResult", "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Map": { "qux": { "foo": "bar" }, "baz": { "foo": "bam" } } }, "response": { "status_code": 200, "headers": {}, "body": "quxbarbazbamrequestid" } } ] }, { "description": "Flattened map", "metadata": { "protocol": "query" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Map": { "shape": "StringMap", "flattened": true } } }, "StringMap": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "resultWrapper": "OperationNameResult", "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Map": { "qux": "bar", "baz": "bam" } }, "response": { "status_code": 200, "headers": {}, "body": "quxbarbazbamrequestid" } } ] }, { "description": "Flattened map in shape definition", "metadata": { "protocol": "query" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Map": { "shape": "StringMap", "locationName": "Attribute" } } }, "StringMap": { "type": "map", "key": { "shape": "StringType", "locationName": "Name" }, "value": { "shape": "StringType", "locationName": "Value" }, "flattened": true, "locationName": "Attribute" }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "resultWrapper": "OperationNameResult", "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Map": { "qux": "bar" } }, "response": { "status_code": 200, "headers": {}, "body": "quxbarrequestid" } } ] }, { "description": "Named map", "metadata": { "protocol": "query" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Map": { "shape": "MapType" } } }, "MapType": { "type": "map", "flattened": true, "key": { "locationName": "foo", "shape": "StringType" }, "value": { "locationName": "bar", "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "resultWrapper": "OperationNameResult", "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Map": { "qux": "bar", "baz": "bam" } }, "response": { "status_code": 200, "headers": {}, "body": "quxbarbazbamrequestid" } } ] }, { "description": "Empty string", "metadata": { "protocol": "query" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Foo": { "shape": "StringType" } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Foo": "" }, "response": { "status_code": 200, "headers": {}, "body": "requestid" } } ] } ] aws-sdk-go-1.4.22/models/protocol_tests/output/rest-json.json000066400000000000000000000301101300374646400243030ustar00rootroot00000000000000[ { "description": "Scalar members", "metadata": { "protocol": "rest-json" }, "shapes": { "OutputShape": { "type": "structure", "members": { "ImaHeader": { "shape": "HeaderShape" }, "ImaHeaderLocation": { "shape": "HeaderShape", "locationName": "X-Foo" }, "Status": { "shape": "StatusShape", "location": "statusCode" }, "Str": { "shape": "StringType" }, "Num": { "shape": "IntegerType" }, "FalseBool": { "shape": "BooleanType" }, "TrueBool": { "shape": "BooleanType" }, "Float": { "shape": "FloatType" }, "Double": { "shape": "DoubleType" }, "Long": { "shape": "LongType" }, "Char": { "shape": "CharType" } } }, "HeaderShape": { "type": "string", "location": "header" }, "StatusShape": { "type": "integer" }, "StringType": { "type": "string" }, "IntegerType": { "type": "integer" }, "BooleanType": { "type": "boolean" }, "FloatType": { "type": "float" }, "DoubleType": { "type": "double" }, "LongType": { "type": "long" }, "CharType": { "type": "character" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "ImaHeader": "test", "ImaHeaderLocation": "abc", "Status": 200, "Str": "myname", "Num": 123, "FalseBool": false, "TrueBool": true, "Float": 1.2, "Double": 1.3, "Long": 200, "Char": "a" }, "response": { "status_code": 200, "headers": { "ImaHeader": "test", "X-Foo": "abc" }, "body": "{\"Str\": \"myname\", \"Num\": 123, \"FalseBool\": false, \"TrueBool\": true, \"Float\": 1.2, \"Double\": 1.3, \"Long\": 200, \"Char\": \"a\"}" } } ] }, { "description": "Blob members", "metadata": { "protocol": "rest-json" }, "shapes": { "OutputShape": { "type": "structure", "members": { "BlobMember": { "shape": "BlobType" }, "StructMember": { "shape": "BlobContainer" } } }, "BlobType": { "type": "blob" }, "BlobContainer": { "type": "structure", "members": { "foo": { "shape": "BlobType" } } } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "BlobMember": "hi!", "StructMember": { "foo": "there!" } }, "response": { "status_code": 200, "headers": {}, "body": "{\"BlobMember\": \"aGkh\", \"StructMember\": {\"foo\": \"dGhlcmUh\"}}" } } ] }, { "description": "Timestamp members", "metadata": { "protocol": "rest-json" }, "shapes": { "OutputShape": { "type": "structure", "members": { "TimeMember": { "shape": "TimeType" }, "StructMember": { "shape": "TimeContainer" } } }, "TimeType": { "type": "timestamp" }, "TimeContainer": { "type": "structure", "members": { "foo": { "shape": "TimeType" } } } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "TimeMember": 1398796238, "StructMember": { "foo": 1398796238 } }, "response": { "status_code": 200, "headers": {}, "body": "{\"TimeMember\": 1398796238, \"StructMember\": {\"foo\": 1398796238}}" } } ] }, { "description": "Lists", "metadata": { "protocol": "rest-json" }, "shapes": { "OutputShape": { "type": "structure", "members": { "ListMember": { "shape": "ListType" } } }, "ListType": { "type": "list", "member": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "ListMember": ["a", "b"] }, "response": { "status_code": 200, "headers": {}, "body": "{\"ListMember\": [\"a\", \"b\"]}" } } ] }, { "description": "Lists with structure member", "metadata": { "protocol": "rest-json" }, "shapes": { "OutputShape": { "type": "structure", "members": { "ListMember": { "shape": "ListType" } } }, "ListType": { "type": "list", "member": { "shape": "SingleStruct" } }, "StringType": { "type": "string" }, "SingleStruct": { "type": "structure", "members": { "Foo": { "shape": "StringType" } } } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "ListMember": [{"Foo": "a"}, {"Foo": "b"}] }, "response": { "status_code": 200, "headers": {}, "body": "{\"ListMember\": [{\"Foo\": \"a\"}, {\"Foo\": \"b\"}]}" } } ] }, { "description": "Maps", "metadata": { "protocol": "rest-json" }, "shapes": { "OutputShape": { "type": "structure", "members": { "MapMember": { "shape": "MapType" } } }, "MapType": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "ListType" } }, "ListType": { "type": "list", "member": { "shape": "IntegerType" } }, "StringType": { "type": "string" }, "IntegerType": { "type": "integer" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "MapMember": { "a": [1, 2], "b": [3, 4] } }, "response": { "status_code": 200, "headers": {}, "body": "{\"MapMember\": {\"a\": [1, 2], \"b\": [3, 4]}}" } } ] }, { "description": "Complex Map Values", "metadata": { "protocol": "rest-json" }, "shapes": { "OutputShape": { "type": "structure", "members": { "MapMember": { "shape": "MapType" } } }, "MapType": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "TimeType" } }, "TimeType": { "type": "timestamp" }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "MapMember": { "a": 1398796238, "b": 1398796238 } }, "response": { "status_code": 200, "headers": {}, "body": "{\"MapMember\": {\"a\": 1398796238, \"b\": 1398796238}}" } } ] }, { "description": "Ignores extra data", "metadata": { "protocol": "rest-json" }, "shapes": { "OutputShape": { "type": "structure", "members": { "StrType": { "shape": "StrType" } } }, "StrType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": {}, "response": { "status_code": 200, "headers": {}, "body": "{\"foo\": \"bar\"}" } } ] }, { "description": "Supports header maps", "metadata": { "protocol": "rest-json" }, "shapes": { "OutputShape": { "type": "structure", "members": { "AllHeaders": { "shape": "HeaderMap", "location": "headers" }, "PrefixedHeaders": { "shape": "HeaderMap", "location": "headers", "locationName": "X-" } } }, "HeaderMap": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "AllHeaders": { "Content-Length": "10", "X-Foo": "bar", "X-Bam": "boo" }, "PrefixedHeaders": { "Foo": "bar", "Bam": "boo" } }, "response": { "status_code": 200, "headers": { "Content-Length": "10", "X-Foo": "bar", "X-Bam": "boo" }, "body": "{}" } } ] }, { "description": "JSON payload", "metadata": { "protocol": "rest-json" }, "shapes": { "OutputShape": { "type": "structure", "payload": "Data", "members": { "Header": { "shape": "StringType", "location": "header", "locationName": "X-Foo" }, "Data": { "shape": "BodyStructure" } } }, "BodyStructure": { "type": "structure", "members": { "Foo": { "shape": "StringType" } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Header": "baz", "Data": { "Foo": "abc" } }, "response": { "status_code": 200, "headers": { "X-Foo": "baz" }, "body": "{\"Foo\": \"abc\"}" } } ] }, { "description": "Streaming payload", "metadata": { "protocol": "rest-json" }, "shapes": { "OutputShape": { "type": "structure", "payload": "Stream", "members": { "Stream": { "shape": "Stream" } } }, "Stream": { "type": "blob" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Stream": "abc" }, "response": { "status_code": 200, "headers": {}, "body": "abc" } } ] } ] aws-sdk-go-1.4.22/models/protocol_tests/output/rest-xml.json000066400000000000000000000371721300374646400241510ustar00rootroot00000000000000[ { "description": "Scalar members", "metadata": { "protocol": "rest-xml" }, "shapes": { "OutputShape": { "type": "structure", "members": { "ImaHeader": { "shape": "HeaderShape" }, "ImaHeaderLocation": { "shape": "HeaderShape", "locationName": "X-Foo" }, "Str": { "shape": "StringType" }, "Num": { "shape": "IntegerType", "locationName": "FooNum" }, "FalseBool": { "shape": "BooleanType" }, "TrueBool": { "shape": "BooleanType" }, "Float": { "shape": "FloatType" }, "Double": { "shape": "DoubleType" }, "Long": { "shape": "LongType" }, "Char": { "shape": "CharType" }, "Timestamp": { "shape": "TimestampType" } } }, "StringType": { "type": "string" }, "IntegerType": { "type": "integer" }, "BooleanType": { "type": "boolean" }, "FloatType": { "type": "float" }, "DoubleType": { "type": "double" }, "LongType": { "type": "long" }, "CharType": { "type": "character" }, "HeaderShape": { "type": "string", "location": "header" }, "StatusShape": { "type": "integer", "location": "statusCode" }, "TimestampType": { "type": "timestamp" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "ImaHeader": "test", "ImaHeaderLocation": "abc", "Str": "myname", "Num": 123, "FalseBool": false, "TrueBool": true, "Float": 1.2, "Double": 1.3, "Long": 200, "Char": "a", "Timestamp": 1422172800 }, "response": { "status_code": 200, "headers": { "ImaHeader": "test", "X-Foo": "abc" }, "body": "myname123falsetrue1.21.3200a2015-01-25T08:00:00Z" } }, { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "ImaHeader": "test", "ImaHeaderLocation": "abc", "Str": "", "Num": 123, "FalseBool": false, "TrueBool": true, "Float": 1.2, "Double": 1.3, "Long": 200, "Char": "a", "Timestamp": 1422172800 }, "response": { "status_code": 200, "headers": { "ImaHeader": "test", "X-Foo": "abc" }, "body": "123falsetrue1.21.3200a2015-01-25T08:00:00Z" } } ] }, { "description": "Blob", "metadata": { "protocol": "rest-xml" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Blob": { "shape": "BlobType" } } }, "BlobType": { "type": "blob" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Blob": "value" }, "response": { "status_code": 200, "headers": {}, "body": "dmFsdWU=" } } ] }, { "description": "Lists", "metadata": { "protocol": "rest-xml" }, "shapes": { "OutputShape": { "type": "structure", "members": { "ListMember": { "shape": "ListShape" } } }, "ListShape": { "type": "list", "member": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "ListMember": ["abc", "123"] }, "response": { "status_code": 200, "headers": {}, "body": "abc123" } } ] }, { "description": "List with custom member name", "metadata": { "protocol": "rest-xml" }, "shapes": { "OutputShape": { "type": "structure", "members": { "ListMember": { "shape": "ListShape" } } }, "ListShape": { "type": "list", "member": { "shape": "StringType", "locationName": "item" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "ListMember": ["abc", "123"] }, "response": { "status_code": 200, "headers": {}, "body": "abc123" } } ] }, { "description": "Flattened List", "metadata": { "protocol": "rest-xml" }, "shapes": { "OutputShape": { "type": "structure", "members": { "ListMember": { "shape": "StringList", "flattened": true } } }, "StringList": { "type": "list", "member": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "ListMember": ["abc", "123"] }, "response": { "status_code": 200, "headers": {}, "body": "abc123" } } ] }, { "description": "Normal map", "metadata": { "protocol": "rest-xml" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Map": { "shape": "StringMap" } } }, "StringMap": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "SingleStructure" } }, "SingleStructure": { "type": "structure", "members": { "foo": { "shape": "StringType" } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Map": { "qux": { "foo": "bar" }, "baz": { "foo": "bam" } } }, "response": { "status_code": 200, "headers": {}, "body": "quxbarbazbam" } } ] }, { "description": "Flattened map", "metadata": { "protocol": "rest-xml" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Map": { "shape": "StringMap", "flattened": true } } }, "StringMap": { "type": "map", "key": { "shape": "StringType" }, "value": { "shape": "StringType" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Map": { "qux": "bar", "baz": "bam" } }, "response": { "status_code": 200, "headers": {}, "body": "quxbarbazbam" } } ] }, { "description": "Named map", "metadata": { "protocol": "rest-xml" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Map": { "shape": "StringMap" } } }, "StringMap": { "type": "map", "key": { "shape": "StringType", "locationName": "foo" }, "value": { "shape": "StringType", "locationName": "bar" } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Map": { "qux": "bar", "baz": "bam" } }, "response": { "status_code": 200, "headers": {}, "body": "quxbarbazbam" } } ] }, { "description": "XML payload", "metadata": { "protocol": "rest-xml" }, "shapes": { "OutputShape": { "type": "structure", "payload": "Data", "members": { "Header": { "shape": "StringType", "location": "header", "locationName": "X-Foo" }, "Data": { "shape": "SingleStructure" } } }, "StringType": { "type": "string" }, "SingleStructure": { "type": "structure", "members": { "Foo": { "shape": "StringType" } } } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Header": "baz", "Data": { "Foo": "abc" } }, "response": { "status_code": 200, "headers": { "X-Foo": "baz" }, "body": "abc" } } ] }, { "description": "Streaming payload", "metadata": { "protocol": "rest-xml" }, "shapes": { "OutputShape": { "type": "structure", "payload": "Stream", "members": { "Stream": { "shape": "BlobStream" } } }, "BlobStream": { "type": "blob" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Stream": "abc" }, "response": { "status_code": 200, "headers": {}, "body": "abc" } } ] }, { "description": "Scalar members in headers", "metadata": { "protocol": "rest-xml" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Str": { "locationName": "x-str", "shape": "StringHeaderType" }, "Integer": { "locationName": "x-int", "shape": "IntegerHeaderType" }, "TrueBool": { "locationName": "x-true-bool", "shape": "BooleanHeaderType" }, "FalseBool": { "locationName": "x-false-bool", "shape": "BooleanHeaderType" }, "Float": { "locationName": "x-float", "shape": "FloatHeaderType" }, "Double": { "locationName": "x-double", "shape": "DoubleHeaderType" }, "Long": { "locationName": "x-long", "shape": "LongHeaderType" }, "Char": { "locationName": "x-char", "shape": "CharHeaderType" }, "Timestamp": { "locationName": "x-timestamp", "shape": "TimestampHeaderType" } } }, "StringHeaderType": { "location": "header", "type": "string" }, "IntegerHeaderType": { "location": "header", "type": "integer" }, "BooleanHeaderType": { "location": "header", "type": "boolean" }, "FloatHeaderType": { "location": "header", "type": "float" }, "DoubleHeaderType": { "location": "header", "type": "double" }, "LongHeaderType": { "location": "header", "type": "long" }, "CharHeaderType": { "location": "header", "type": "character" }, "TimestampHeaderType": { "location": "header", "type": "timestamp" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Str": "string", "Integer": 1, "TrueBool": true, "FalseBool": false, "Float": 1.5, "Double": 1.5, "Long": 100, "Char": "a", "Timestamp": 1422172800 }, "response": { "status_code": 200, "headers": { "x-str": "string", "x-int": "1", "x-true-bool": "true", "x-false-bool": "false", "x-float": "1.5", "x-double": "1.5", "x-long": "100", "x-char": "a", "x-timestamp": "Sun, 25 Jan 2015 08:00:00 GMT" }, "body": "" } } ] }, { "description": "Empty string", "metadata": { "protocol": "rest-xml" }, "shapes": { "OutputShape": { "type": "structure", "members": { "Foo": { "shape": "StringType" } } }, "StringType": { "type": "string" } }, "cases": [ { "given": { "output": { "shape": "OutputShape" }, "name": "OperationName" }, "result": { "Foo": "" }, "response": { "status_code": 200, "headers": {}, "body": "requestid" } } ] } ] aws-sdk-go-1.4.22/private/000077500000000000000000000000001300374646400152355ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/README.md000066400000000000000000000007571300374646400165250ustar00rootroot00000000000000## AWS SDK for Go Private packages ## `private` is a collection of packages used internally by the SDK, and is subject to have breaking changes. This package is not `internal` so that if you really need to use its functionality, and understand breaking changes will be made, you are able to. These packages will be refactored in the future so that the API generator and model parsers are exposed cleanly on their own. Making it easier for you to generate your own code based on the API models. aws-sdk-go-1.4.22/private/endpoints/000077500000000000000000000000001300374646400172405ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/endpoints/endpoints.go000066400000000000000000000043711300374646400215770ustar00rootroot00000000000000// Package endpoints validates regional endpoints for services. package endpoints //go:generate go run -tags codegen ../model/cli/gen-endpoints/main.go endpoints.json endpoints_map.go //go:generate gofmt -s -w endpoints_map.go import ( "fmt" "regexp" "strings" ) // NormalizeEndpoint takes and endpoint and service API information to return a // normalized endpoint and signing region. If the endpoint is not an empty string // the service name and region will be used to look up the service's API endpoint. // If the endpoint is provided the scheme will be added if it is not present. func NormalizeEndpoint(endpoint, serviceName, region string, disableSSL, useDualStack bool) (normEndpoint, signingRegion string) { if endpoint == "" { return EndpointForRegion(serviceName, region, disableSSL, useDualStack) } return AddScheme(endpoint, disableSSL), "" } // EndpointForRegion returns an endpoint and its signing region for a service and region. // if the service and region pair are not found endpoint and signingRegion will be empty. func EndpointForRegion(svcName, region string, disableSSL, useDualStack bool) (endpoint, signingRegion string) { dualStackField := "" if useDualStack { dualStackField = "/dualstack" } derivedKeys := []string{ region + "/" + svcName + dualStackField, region + "/*" + dualStackField, "*/" + svcName + dualStackField, "*/*" + dualStackField, } for _, key := range derivedKeys { if val, ok := endpointsMap.Endpoints[key]; ok { ep := val.Endpoint ep = strings.Replace(ep, "{region}", region, -1) ep = strings.Replace(ep, "{service}", svcName, -1) endpoint = ep signingRegion = val.SigningRegion break } } return AddScheme(endpoint, disableSSL), signingRegion } // Regular expression to determine if the endpoint string is prefixed with a scheme. var schemeRE = regexp.MustCompile("^([^:]+)://") // AddScheme adds the HTTP or HTTPS schemes to a endpoint URL if there is no // scheme. If disableSSL is true HTTP will be added instead of the default HTTPS. func AddScheme(endpoint string, disableSSL bool) string { if endpoint != "" && !schemeRE.MatchString(endpoint) { scheme := "https" if disableSSL { scheme = "http" } endpoint = fmt.Sprintf("%s://%s", scheme, endpoint) } return endpoint } aws-sdk-go-1.4.22/private/endpoints/endpoints.json000066400000000000000000000037711300374646400221460ustar00rootroot00000000000000{ "version": 2, "endpoints": { "*/*": { "endpoint": "{service}.{region}.amazonaws.com" }, "cn-north-1/*": { "endpoint": "{service}.{region}.amazonaws.com.cn", "signatureVersion": "v4" }, "cn-north-1/ec2metadata": { "endpoint": "http://169.254.169.254/latest" }, "us-gov-west-1/iam": { "endpoint": "iam.us-gov.amazonaws.com" }, "us-gov-west-1/sts": { "endpoint": "sts.us-gov-west-1.amazonaws.com" }, "us-gov-west-1/s3": { "endpoint": "s3-{region}.amazonaws.com" }, "us-gov-west-1/ec2metadata": { "endpoint": "http://169.254.169.254/latest" }, "*/budgets": { "endpoint": "budgets.amazonaws.com", "signingRegion": "us-east-1" }, "*/cloudfront": { "endpoint": "cloudfront.amazonaws.com", "signingRegion": "us-east-1" }, "*/cloudsearchdomain": { "endpoint": "", "signingRegion": "us-east-1" }, "*/data.iot": { "endpoint": "", "signingRegion": "us-east-1" }, "*/ec2metadata": { "endpoint": "http://169.254.169.254/latest" }, "*/iam": { "endpoint": "iam.amazonaws.com", "signingRegion": "us-east-1" }, "*/importexport": { "endpoint": "importexport.amazonaws.com", "signingRegion": "us-east-1" }, "*/route53": { "endpoint": "route53.amazonaws.com", "signingRegion": "us-east-1" }, "*/sts": { "endpoint": "sts.amazonaws.com", "signingRegion": "us-east-1" }, "*/waf": { "endpoint": "waf.amazonaws.com", "signingRegion": "us-east-1" }, "us-east-1/sdb": { "endpoint": "sdb.amazonaws.com", "signingRegion": "us-east-1" }, "*/s3": { "endpoint": "s3-{region}.amazonaws.com" }, "*/s3/dualstack": { "endpoint": "s3.dualstack.{region}.amazonaws.com" }, "us-east-1/s3": { "endpoint": "s3.amazonaws.com" }, "eu-central-1/s3": { "endpoint": "{service}.{region}.amazonaws.com" } } } aws-sdk-go-1.4.22/private/endpoints/endpoints_map.go000066400000000000000000000041051300374646400224270ustar00rootroot00000000000000package endpoints // THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. type endpointStruct struct { Version int Endpoints map[string]endpointEntry } type endpointEntry struct { Endpoint string SigningRegion string } var endpointsMap = endpointStruct{ Version: 2, Endpoints: map[string]endpointEntry{ "*/*": { Endpoint: "{service}.{region}.amazonaws.com", }, "*/budgets": { Endpoint: "budgets.amazonaws.com", SigningRegion: "us-east-1", }, "*/cloudfront": { Endpoint: "cloudfront.amazonaws.com", SigningRegion: "us-east-1", }, "*/cloudsearchdomain": { Endpoint: "", SigningRegion: "us-east-1", }, "*/data.iot": { Endpoint: "", SigningRegion: "us-east-1", }, "*/ec2metadata": { Endpoint: "http://169.254.169.254/latest", }, "*/iam": { Endpoint: "iam.amazonaws.com", SigningRegion: "us-east-1", }, "*/importexport": { Endpoint: "importexport.amazonaws.com", SigningRegion: "us-east-1", }, "*/route53": { Endpoint: "route53.amazonaws.com", SigningRegion: "us-east-1", }, "*/s3": { Endpoint: "s3-{region}.amazonaws.com", }, "*/s3/dualstack": { Endpoint: "s3.dualstack.{region}.amazonaws.com", }, "*/sts": { Endpoint: "sts.amazonaws.com", SigningRegion: "us-east-1", }, "*/waf": { Endpoint: "waf.amazonaws.com", SigningRegion: "us-east-1", }, "cn-north-1/*": { Endpoint: "{service}.{region}.amazonaws.com.cn", }, "cn-north-1/ec2metadata": { Endpoint: "http://169.254.169.254/latest", }, "eu-central-1/s3": { Endpoint: "{service}.{region}.amazonaws.com", }, "us-east-1/s3": { Endpoint: "s3.amazonaws.com", }, "us-east-1/sdb": { Endpoint: "sdb.amazonaws.com", SigningRegion: "us-east-1", }, "us-gov-west-1/ec2metadata": { Endpoint: "http://169.254.169.254/latest", }, "us-gov-west-1/iam": { Endpoint: "iam.us-gov.amazonaws.com", }, "us-gov-west-1/s3": { Endpoint: "s3-{region}.amazonaws.com", }, "us-gov-west-1/sts": { Endpoint: "sts.us-gov-west-1.amazonaws.com", }, }, } aws-sdk-go-1.4.22/private/endpoints/endpoints_test.go000066400000000000000000000036401300374646400226340ustar00rootroot00000000000000package endpoints_test import ( "fmt" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/private/endpoints" ) func TestGenericEndpoint(t *testing.T) { name := "service" region := "mock-region-1" ep, sr := endpoints.EndpointForRegion(name, region, false, false) assert.Equal(t, fmt.Sprintf("https://%s.%s.amazonaws.com", name, region), ep) assert.Empty(t, sr) } func TestGlobalEndpoints(t *testing.T) { region := "mock-region-1" svcs := []string{"cloudfront", "iam", "importexport", "route53", "sts", "waf"} for _, name := range svcs { ep, sr := endpoints.EndpointForRegion(name, region, false, false) assert.Equal(t, fmt.Sprintf("https://%s.amazonaws.com", name), ep) assert.Equal(t, "us-east-1", sr) } } func TestDualStackEndpoint(t *testing.T) { ep, sr := endpoints.EndpointForRegion("s3", "mock-region-1", false, true) assert.Equal(t, "https://s3.dualstack.mock-region-1.amazonaws.com", ep) assert.Equal(t, "", sr) ep, sr = endpoints.EndpointForRegion("mock-svc", "mock-region-1", false, true) assert.Equal(t, "", ep) assert.Equal(t, "", sr) ep, sr = endpoints.EndpointForRegion("s3", "mock-region-1", false, false) assert.Equal(t, "https://s3-mock-region-1.amazonaws.com", ep) assert.Equal(t, "", sr) } func TestServicesInCN(t *testing.T) { region := "cn-north-1" svcs := []string{"cloudfront", "iam", "importexport", "route53", "sts", "s3", "waf"} for _, name := range svcs { ep, sr := endpoints.EndpointForRegion(name, region, false, false) assert.Equal(t, fmt.Sprintf("https://%s.%s.amazonaws.com.cn", name, region), ep) assert.Empty(t, sr) } } func TestEC2MetadataEndpoints(t *testing.T) { regions := []string{"us-east-1", "us-gov-west-1", "cn-north-1", "mock-region-1"} for _, region := range regions { ep, sr := endpoints.EndpointForRegion("ec2metadata", region, false, false) assert.Equal(t, "http://169.254.169.254/latest", ep) assert.Equal(t, "", sr) } } aws-sdk-go-1.4.22/private/model/000077500000000000000000000000001300374646400163355ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/model/api/000077500000000000000000000000001300374646400171065ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/model/api/api.go000066400000000000000000000365511300374646400202200ustar00rootroot00000000000000// +build codegen // Package api represents API abstractions for rendering service generated files. package api import ( "bytes" "fmt" "path" "regexp" "sort" "strings" "text/template" ) // An API defines a service API's definition. and logic to serialize the definition. type API struct { Metadata Metadata Operations map[string]*Operation Shapes map[string]*Shape Waiters []Waiter Documentation string // Set to true to avoid removing unused shapes NoRemoveUnusedShapes bool // Set to true to avoid renaming to 'Input/Output' postfixed shapes NoRenameToplevelShapes bool // Set to true to ignore service/request init methods (for testing) NoInitMethods bool // Set to true to ignore String() and GoString methods (for generated tests) NoStringerMethods bool // Set to true to not generate API service name constants NoConstServiceNames bool // Set to true to not generate validation shapes NoValidataShapeMethods bool SvcClientImportPath string initialized bool imports map[string]bool name string path string } // A Metadata is the metadata about an API's definition. type Metadata struct { APIVersion string EndpointPrefix string SigningName string ServiceAbbreviation string ServiceFullName string SignatureVersion string JSONVersion string TargetPrefix string Protocol string } // PackageName name of the API package func (a *API) PackageName() string { return strings.ToLower(a.StructName()) } // InterfacePackageName returns the package name for the interface. func (a *API) InterfacePackageName() string { return a.PackageName() + "iface" } var nameRegex = regexp.MustCompile(`^Amazon|AWS\s*|\(.*|\s+|\W+`) // StructName returns the struct name for a given API. func (a *API) StructName() string { if a.name == "" { name := a.Metadata.ServiceAbbreviation if name == "" { name = a.Metadata.ServiceFullName } name = nameRegex.ReplaceAllString(name, "") switch strings.ToLower(name) { case "elasticloadbalancing": a.name = "ELB" case "elasticloadbalancingv2": a.name = "ELBV2" case "config": a.name = "ConfigService" default: a.name = name } } return a.name } // UseInitMethods returns if the service's init method should be rendered. func (a *API) UseInitMethods() bool { return !a.NoInitMethods } // NiceName returns the human friendly API name. func (a *API) NiceName() string { if a.Metadata.ServiceAbbreviation != "" { return a.Metadata.ServiceAbbreviation } return a.Metadata.ServiceFullName } // ProtocolPackage returns the package name of the protocol this API uses. func (a *API) ProtocolPackage() string { switch a.Metadata.Protocol { case "json": return "jsonrpc" case "ec2": return "ec2query" default: return strings.Replace(a.Metadata.Protocol, "-", "", -1) } } // OperationNames returns a slice of API operations supported. func (a *API) OperationNames() []string { i, names := 0, make([]string, len(a.Operations)) for n := range a.Operations { names[i] = n i++ } sort.Strings(names) return names } // OperationList returns a slice of API operation pointers func (a *API) OperationList() []*Operation { list := make([]*Operation, len(a.Operations)) for i, n := range a.OperationNames() { list[i] = a.Operations[n] } return list } // OperationHasOutputPlaceholder returns if any of the API operation input // or output shapes are place holders. func (a *API) OperationHasOutputPlaceholder() bool { for _, op := range a.Operations { if op.OutputRef.Shape.Placeholder { return true } } return false } // ShapeNames returns a slice of names for each shape used by the API. func (a *API) ShapeNames() []string { i, names := 0, make([]string, len(a.Shapes)) for n := range a.Shapes { names[i] = n i++ } sort.Strings(names) return names } // ShapeList returns a slice of shape pointers used by the API. // // Will exclude error shapes from the list of shapes returned. func (a *API) ShapeList() []*Shape { list := make([]*Shape, 0, len(a.Shapes)) for _, n := range a.ShapeNames() { // Ignore error shapes in list if a.Shapes[n].IsError { continue } list = append(list, a.Shapes[n]) } return list } // resetImports resets the import map to default values. func (a *API) resetImports() { a.imports = map[string]bool{ "github.com/aws/aws-sdk-go/aws": true, } } // importsGoCode returns the generated Go import code. func (a *API) importsGoCode() string { if len(a.imports) == 0 { return "" } corePkgs, extPkgs := []string{}, []string{} for i := range a.imports { if strings.Contains(i, ".") { extPkgs = append(extPkgs, i) } else { corePkgs = append(corePkgs, i) } } sort.Strings(corePkgs) sort.Strings(extPkgs) code := "import (\n" for _, i := range corePkgs { code += fmt.Sprintf("\t%q\n", i) } if len(corePkgs) > 0 { code += "\n" } for _, i := range extPkgs { code += fmt.Sprintf("\t%q\n", i) } code += ")\n\n" return code } // A tplAPI is the top level template for the API var tplAPI = template.Must(template.New("api").Parse(` {{ range $_, $o := .OperationList }} {{ $o.GoCode }} {{ end }} {{ range $_, $s := .ShapeList }} {{ if and $s.IsInternal (eq $s.Type "structure") }}{{ $s.GoCode }}{{ end }} {{ end }} {{ range $_, $s := .ShapeList }} {{ if $s.IsEnum }}{{ $s.GoCode }}{{ end }} {{ end }} `)) // APIGoCode renders the API in Go code. Returning it as a string func (a *API) APIGoCode() string { a.resetImports() delete(a.imports, "github.com/aws/aws-sdk-go/aws") a.imports["github.com/aws/aws-sdk-go/aws/awsutil"] = true a.imports["github.com/aws/aws-sdk-go/aws/request"] = true if a.OperationHasOutputPlaceholder() { a.imports["github.com/aws/aws-sdk-go/private/protocol/"+a.ProtocolPackage()] = true a.imports["github.com/aws/aws-sdk-go/private/protocol"] = true } for _, op := range a.Operations { if op.AuthType == "none" { a.imports["github.com/aws/aws-sdk-go/aws/credentials"] = true break } } var buf bytes.Buffer err := tplAPI.Execute(&buf, a) if err != nil { panic(err) } code := a.importsGoCode() + strings.TrimSpace(buf.String()) return code } // A tplService defines the template for the service generated code. var tplService = template.Must(template.New("service").Parse(` {{ .Documentation }}//The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type {{ .StructName }} struct { *client.Client } {{ if .UseInitMethods }}// Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) {{ end }} {{ if not .NoConstServiceNames }} // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "{{ .Metadata.EndpointPrefix }}" {{ end }} // New creates a new instance of the {{ .StructName }} client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a {{ .StructName }} client from just a session. // svc := {{ .PackageName }}.New(mySession) // // // Create a {{ .StructName }} client with additional configuration // svc := {{ .PackageName }}.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *{{ .StructName }} { c := p.ClientConfig({{ if .NoConstServiceNames }}"{{ .Metadata.EndpointPrefix }}"{{ else }}ServiceName{{ end }}, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *{{ .StructName }} { svc := &{{ .StructName }}{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: {{ if .NoConstServiceNames }}"{{ .Metadata.EndpointPrefix }}"{{ else }}ServiceName{{ end }}, {{ if ne .Metadata.SigningName "" }} SigningName: "{{ .Metadata.SigningName }}",{{ end }} SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "{{ .Metadata.APIVersion }}", {{ if eq .Metadata.Protocol "json" }}JSONVersion: "{{ .Metadata.JSONVersion }}", TargetPrefix: "{{ .Metadata.TargetPrefix }}", {{ end }} }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed({{if eq .Metadata.SignatureVersion "v2"}}v2{{else}}v4{{end}}.SignRequestHandler) {{if eq .Metadata.SignatureVersion "v2"}}svc.Handlers.Sign.PushBackNamed(corehandlers.BuildContentLengthHandler) {{end}}svc.Handlers.Build.PushBackNamed({{ .ProtocolPackage }}.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed({{ .ProtocolPackage }}.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed({{ .ProtocolPackage }}.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed({{ .ProtocolPackage }}.UnmarshalErrorHandler) {{ if .UseInitMethods }}// Run custom client initialization if present if initClient != nil { initClient(svc.Client) } {{ end }} return svc } // newRequest creates a new request for a {{ .StructName }} operation and runs any // custom request initialization. func (c *{{ .StructName }}) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) {{ if .UseInitMethods }}// Run custom request initialization if present if initRequest != nil { initRequest(req) } {{ end }} return req } `)) // ServiceGoCode renders service go code. Returning it as a string. func (a *API) ServiceGoCode() string { a.resetImports() a.imports["github.com/aws/aws-sdk-go/aws/client"] = true a.imports["github.com/aws/aws-sdk-go/aws/client/metadata"] = true a.imports["github.com/aws/aws-sdk-go/aws/request"] = true if a.Metadata.SignatureVersion == "v2" { a.imports["github.com/aws/aws-sdk-go/private/signer/v2"] = true a.imports["github.com/aws/aws-sdk-go/aws/corehandlers"] = true } else { a.imports["github.com/aws/aws-sdk-go/aws/signer/v4"] = true } a.imports["github.com/aws/aws-sdk-go/private/protocol/"+a.ProtocolPackage()] = true var buf bytes.Buffer err := tplService.Execute(&buf, a) if err != nil { panic(err) } code := a.importsGoCode() + buf.String() return code } // ExampleGoCode renders service example code. Returning it as a string. func (a *API) ExampleGoCode() string { exs := []string{} for _, o := range a.OperationList() { exs = append(exs, o.Example()) } code := fmt.Sprintf("import (\n%q\n%q\n%q\n\n%q\n%q\n%q\n)\n\n"+ "var _ time.Duration\nvar _ bytes.Buffer\n\n%s", "bytes", "fmt", "time", "github.com/aws/aws-sdk-go/aws", "github.com/aws/aws-sdk-go/aws/session", path.Join(a.SvcClientImportPath, a.PackageName()), strings.Join(exs, "\n\n"), ) return code } // A tplInterface defines the template for the service interface type. var tplInterface = template.Must(template.New("interface").Parse(` // {{ .StructName }}API provides an interface to enable mocking the // {{ .PackageName }}.{{ .StructName }} service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // {{.Metadata.ServiceFullName}}. {{ $opts := .OperationList }}{{ $opt := index $opts 0 }} // func myFunc(svc {{ .InterfacePackageName }}.{{ .StructName }}API) bool { // // Make svc.{{ $opt.ExportedName }} request // } // // func main() { // sess := session.New() // svc := {{ .PackageName }}.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mock{{ .StructName }}Client struct { // {{ .InterfacePackageName }}.{{ .StructName }}API // } // func (m *mock{{ .StructName }}Client) {{ $opt.ExportedName }}(input {{ $opt.InputRef.GoTypeWithPkgName }}) ({{ $opt.OutputRef.GoTypeWithPkgName }}, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mock{{ .StructName }}Client{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type {{ .StructName }}API interface { {{ range $_, $o := .OperationList }} {{ $o.InterfaceSignature }} {{ end }} {{ range $_, $w := .Waiters }} {{ $w.InterfaceSignature }} {{ end }} } var _ {{ .StructName }}API = (*{{ .PackageName }}.{{ .StructName }})(nil) `)) // InterfaceGoCode returns the go code for the service's API operations as an // interface{}. Assumes that the interface is being created in a different // package than the service API's package. func (a *API) InterfaceGoCode() string { a.resetImports() a.imports = map[string]bool{ "github.com/aws/aws-sdk-go/aws/request": true, path.Join(a.SvcClientImportPath, a.PackageName()): true, } var buf bytes.Buffer err := tplInterface.Execute(&buf, a) if err != nil { panic(err) } code := a.importsGoCode() + strings.TrimSpace(buf.String()) return code } // NewAPIGoCodeWithPkgName returns a string of instantiating the API prefixed // with its package name. Takes a string depicting the Config. func (a *API) NewAPIGoCodeWithPkgName(cfg string) string { return fmt.Sprintf("%s.New(%s)", a.PackageName(), cfg) } // computes the validation chain for all input shapes func (a *API) addShapeValidations() { for _, o := range a.Operations { resolveShapeValidations(o.InputRef.Shape) } } // Updates the source shape and all nested shapes with the validations that // could possibly be needed. func resolveShapeValidations(s *Shape, ancestry ...*Shape) { for _, a := range ancestry { if a == s { return } } children := []string{} for _, name := range s.MemberNames() { ref := s.MemberRefs[name] if s.IsRequired(name) && !s.Validations.Has(ref, ShapeValidationRequired) { s.Validations = append(s.Validations, ShapeValidation{ Name: name, Ref: ref, Type: ShapeValidationRequired, }) } if ref.Shape.Min != 0 && !s.Validations.Has(ref, ShapeValidationMinVal) { s.Validations = append(s.Validations, ShapeValidation{ Name: name, Ref: ref, Type: ShapeValidationMinVal, }) } switch ref.Shape.Type { case "map", "list", "structure": children = append(children, name) } } ancestry = append(ancestry, s) for _, name := range children { ref := s.MemberRefs[name] nestedShape := ref.Shape.NestedShape() var v *ShapeValidation if len(nestedShape.Validations) > 0 { v = &ShapeValidation{ Name: name, Ref: ref, Type: ShapeValidationNested, } } else { resolveShapeValidations(nestedShape, ancestry...) if len(nestedShape.Validations) > 0 { v = &ShapeValidation{ Name: name, Ref: ref, Type: ShapeValidationNested, } } } if v != nil && !s.Validations.Has(v.Ref, v.Type) { s.Validations = append(s.Validations, *v) } } ancestry = ancestry[:len(ancestry)-1] } aws-sdk-go-1.4.22/private/model/api/api_test.go000066400000000000000000000014561300374646400212530ustar00rootroot00000000000000// +build 1.6,codegen package api import ( "testing" "github.com/stretchr/testify/assert" ) func TestStructNameWithFullName(t *testing.T) { a := API{ Metadata: Metadata{ ServiceFullName: "Amazon Service Name-100", }, } assert.Equal(t, a.StructName(), "ServiceName100") } func TestStructNameWithAbbreviation(t *testing.T) { a := API{ Metadata: Metadata{ ServiceFullName: "AWS Service Name-100", ServiceAbbreviation: "AWS SN100", }, } assert.Equal(t, a.StructName(), "SN100") } func TestStructNameForExceptions(t *testing.T) { a := API{ Metadata: Metadata{ ServiceFullName: "Elastic Load Balancing", }, } assert.Equal(t, a.StructName(), "ELB") a = API{ Metadata: Metadata{ ServiceFullName: "AWS Config", }, } assert.Equal(t, a.StructName(), "ConfigService") } aws-sdk-go-1.4.22/private/model/api/customization_passes.go000066400000000000000000000054231300374646400237270ustar00rootroot00000000000000// +build codegen package api import ( "fmt" "path/filepath" "strings" ) // customizationPasses Executes customization logic for the API by package name. func (a *API) customizationPasses() { var svcCustomizations = map[string]func(*API){ "s3": s3Customizations, "cloudfront": cloudfrontCustomizations, "dynamodbstreams": dynamodbstreamsCustomizations, } if fn := svcCustomizations[a.PackageName()]; fn != nil { fn(a) } blobDocStringCustomizations(a) } const base64MarshalDocStr = "// %s is automatically base64 encoded/decoded by the SDK.\n" func blobDocStringCustomizations(a *API) { for _, s := range a.Shapes { payloadMemberName := s.Payload for refName, ref := range s.MemberRefs { if refName == payloadMemberName { // Payload members have their own encoding and may // be raw bytes or io.Reader continue } if ref.Shape.Type == "blob" { docStr := fmt.Sprintf(base64MarshalDocStr, refName) if len(strings.TrimSpace(ref.Shape.Documentation)) != 0 { ref.Shape.Documentation += "//\n" + docStr } else if len(strings.TrimSpace(ref.Documentation)) != 0 { ref.Documentation += "//\n" + docStr } else { ref.Documentation = docStr } } } } } // s3Customizations customizes the API generation to replace values specific to S3. func s3Customizations(a *API) { var strExpires *Shape for name, s := range a.Shapes { // Remove ContentMD5 members if _, ok := s.MemberRefs["ContentMD5"]; ok { delete(s.MemberRefs, "ContentMD5") } // Expires should be a string not time.Time since the format is not // enforced by S3, and any value can be set to this field outside of the SDK. if strings.HasSuffix(name, "Output") { if ref, ok := s.MemberRefs["Expires"]; ok { if strExpires == nil { newShape := *ref.Shape strExpires = &newShape strExpires.Type = "string" strExpires.refs = []*ShapeRef{} } ref.Shape.removeRef(ref) ref.Shape = strExpires ref.Shape.refs = append(ref.Shape.refs, &s.MemberRef) } } } } // cloudfrontCustomizations customized the API generation to replace values // specific to CloudFront. func cloudfrontCustomizations(a *API) { // MaxItems members should always be integers for _, s := range a.Shapes { if ref, ok := s.MemberRefs["MaxItems"]; ok { ref.ShapeName = "Integer" ref.Shape = a.Shapes["Integer"] } } } // dynamodbstreamsCustomizations references any duplicate shapes from DynamoDB func dynamodbstreamsCustomizations(a *API) { p := strings.Replace(a.path, "streams.dynamodb", "dynamodb", -1) file := filepath.Join(p, "api-2.json") dbAPI := API{} dbAPI.Attach(file) dbAPI.Setup() for n := range a.Shapes { if _, ok := dbAPI.Shapes[n]; ok { a.Shapes[n].resolvePkg = "github.com/aws/aws-sdk-go/service/dynamodb" } } } aws-sdk-go-1.4.22/private/model/api/docstring.go000066400000000000000000000213651300374646400214400ustar00rootroot00000000000000// +build codegen package api import ( "bytes" "encoding/json" "fmt" "html" "os" "regexp" "strings" xhtml "golang.org/x/net/html" ) type apiDocumentation struct { *API Operations map[string]string Service string Shapes map[string]shapeDocumentation } type shapeDocumentation struct { Base string Refs map[string]string } // AttachDocs attaches documentation from a JSON filename. func (a *API) AttachDocs(filename string) { d := apiDocumentation{API: a} f, err := os.Open(filename) defer f.Close() if err != nil { panic(err) } err = json.NewDecoder(f).Decode(&d) if err != nil { panic(err) } d.setup() } func (d *apiDocumentation) setup() { d.API.Documentation = docstring(d.Service) if d.Service == "" { d.API.Documentation = fmt.Sprintf("// %s is a client for %s.\n", d.API.StructName(), d.API.NiceName()) } for op, doc := range d.Operations { d.API.Operations[op].Documentation = strings.TrimSpace(docstring(doc)) } for shape, info := range d.Shapes { if sh := d.API.Shapes[shape]; sh != nil { sh.Documentation = docstring(info.Base) } for ref, doc := range info.Refs { if doc == "" { continue } parts := strings.Split(ref, "$") if sh := d.API.Shapes[parts[0]]; sh != nil { if m := sh.MemberRefs[parts[1]]; m != nil { m.Documentation = docstring(doc) } } } } } var reNewline = regexp.MustCompile(`\r?\n`) var reMultiSpace = regexp.MustCompile(`\s+`) var reComments = regexp.MustCompile(``) var reFullname = regexp.MustCompile(`\s*.+?<\/fullname?>\s*`) var reExamples = regexp.MustCompile(`.+?<\/examples?>`) var reEndNL = regexp.MustCompile(`\n+$`) // docstring rewrites a string to insert godocs formatting. func docstring(doc string) string { doc = reNewline.ReplaceAllString(doc, "") doc = reMultiSpace.ReplaceAllString(doc, " ") doc = reComments.ReplaceAllString(doc, "") doc = reFullname.ReplaceAllString(doc, "") doc = reExamples.ReplaceAllString(doc, "") doc = generateDoc(doc) doc = reEndNL.ReplaceAllString(doc, "") if doc == "" { return "\n" } doc = html.UnescapeString(doc) return commentify(doc) } const ( indent = " " ) // style is what we want to prefix a string with. // For instance,
      • Foo
      • Bar
      • , will generate // * Foo // * Bar var style = map[string]string{ "ul": indent + "* ", "li": indent + "* ", "code": indent, "pre": indent, } // commentify converts a string to a Go comment func commentify(doc string) string { lines := strings.Split(doc, "\n") out := []string{} for i, line := range lines { if i > 0 && line == "" && lines[i-1] == "" { continue } out = append(out, "// "+line) } return strings.Join(out, "\n") + "\n" } // wrap returns a rewritten version of text to have line breaks // at approximately length characters. Line breaks will only be // inserted into whitespace. func wrap(text string, length int, isIndented bool) string { var buf bytes.Buffer var last rune var lastNL bool var col int for _, c := range text { switch c { case '\r': // ignore this continue // and also don't track `last` case '\n': // ignore this too, but reset col if col >= length || last == '\n' { buf.WriteString("\n") } buf.WriteString("\n") col = 0 case ' ', '\t': // opportunity to split if col >= length { buf.WriteByte('\n') col = 0 if isIndented { buf.WriteString(indent) col += 3 } } else { // We only want to write a leading space if the col is greater than zero. // This will provide the proper spacing for documentation. buf.WriteRune(c) col++ // count column } default: buf.WriteRune(c) col++ } lastNL = c == '\n' _ = lastNL last = c } return buf.String() } type tagInfo struct { tag string key string val string txt string raw string closingTag bool } // generateDoc will generate the proper doc string for html encoded or plain text doc entries. func generateDoc(htmlSrc string) string { tokenizer := xhtml.NewTokenizer(strings.NewReader(htmlSrc)) tokens := buildTokenArray(tokenizer) scopes := findScopes(tokens) return walk(scopes) } func buildTokenArray(tokenizer *xhtml.Tokenizer) []tagInfo { tokens := []tagInfo{} for tt := tokenizer.Next(); tt != xhtml.ErrorToken; tt = tokenizer.Next() { switch tt { case xhtml.TextToken: txt := string(tokenizer.Text()) if len(tokens) == 0 { info := tagInfo{ raw: txt, } tokens = append(tokens, info) } tn, _ := tokenizer.TagName() key, val, _ := tokenizer.TagAttr() info := tagInfo{ tag: string(tn), key: string(key), val: string(val), txt: txt, } tokens = append(tokens, info) case xhtml.StartTagToken: tn, _ := tokenizer.TagName() key, val, _ := tokenizer.TagAttr() info := tagInfo{ tag: string(tn), key: string(key), val: string(val), } tokens = append(tokens, info) case xhtml.SelfClosingTagToken, xhtml.EndTagToken: tn, _ := tokenizer.TagName() key, val, _ := tokenizer.TagAttr() info := tagInfo{ tag: string(tn), key: string(key), val: string(val), closingTag: true, } tokens = append(tokens, info) } } return tokens } // walk is used to traverse each scoped block. These scoped // blocks will act as blocked text where we do most of our // text manipulation. func walk(scopes [][]tagInfo) string { doc := "" // Documentation will be chunked by scopes. // Meaning, for each scope will be divided by one or more newlines. for _, scope := range scopes { indentStr, isIndented := priorityIndentation(scope) block := "" href := "" after := false level := 0 lastTag := "" for _, token := range scope { if token.closingTag { endl := closeTag(token, level) block += endl level-- lastTag = "" } else if token.txt == "" { if token.val != "" { href, after = formatText(token, "") } if level == 1 && isIndented { block += indentStr } level++ lastTag = token.tag } else { if token.txt != " " { str, _ := formatText(token, lastTag) block += str if after { block += href after = false } } else { fmt.Println(token.tag) str, _ := formatText(tagInfo{}, lastTag) block += str } } } if !isIndented { block = strings.TrimPrefix(block, " ") } block = wrap(block, 72, isIndented) doc += block } return doc } // closeTag will divide up the blocks of documentation to be formated properly. func closeTag(token tagInfo, level int) string { switch token.tag { case "pre", "li", "div": return "\n" case "p", "h1", "h2", "h3", "h4", "h5", "h6": return "\n\n" case "code": // indented code is only at the 0th level. if level == 0 { return "\n" } } return "" } // formatText will format any sort of text based off of a tag. It will also return // a boolean to add the string after the text token. func formatText(token tagInfo, lastTag string) (string, bool) { switch token.tag { case "a": if token.val != "" { return fmt.Sprintf(" (%s)", token.val), true } } // We don't care about a single space nor no text. if len(token.txt) == 0 || token.txt == " " { return "", false } // Here we want to indent code blocks that are newlines if lastTag == "code" { // Greater than one, because we don't care about newlines in the beginning block := "" if lines := strings.Split(token.txt, "\n"); len(lines) > 1 { for _, line := range lines { block += indent + line } block += "\n" return block, false } } return token.txt, false } // This is a parser to check what type of indention is needed. func priorityIndentation(blocks []tagInfo) (string, bool) { if len(blocks) == 0 { return "", false } v, ok := style[blocks[0].tag] return v, ok } // Divides into scopes based off levels. // For instance, //

        Testing123

        • Foo
        // This has 2 scopes, the

        and

          func findScopes(tokens []tagInfo) [][]tagInfo { level := 0 scope := []tagInfo{} scopes := [][]tagInfo{} for _, token := range tokens { // we will clear empty tagged tokens from the array txt := strings.TrimSpace(token.txt) tag := strings.TrimSpace(token.tag) if len(txt) == 0 && len(tag) == 0 { continue } scope = append(scope, token) // If it is a closing tag then we check what level // we are on. If it is 0, then that means we have found a // scoped block. if token.closingTag { level-- if level == 0 { scopes = append(scopes, scope) scope = []tagInfo{} } // Check opening tags and increment the level } else if token.txt == "" { level++ } } // In this case, we did not run into a closing tag. This would mean // we have plaintext for documentation. if len(scopes) == 0 { scopes = append(scopes, scope) } return scopes } aws-sdk-go-1.4.22/private/model/api/docstring_test.go000066400000000000000000000037241300374646400224760ustar00rootroot00000000000000// +build codegen package api import ( "testing" "github.com/stretchr/testify/assert" ) func TestNonHTMLDocGen(t *testing.T) { doc := "Testing 1 2 3" expected := "// Testing 1 2 3\n" doc = docstring(doc) assert.Equal(t, expected, doc) } func TestListsHTMLDocGen(t *testing.T) { doc := "
          • Testing 1 2 3
          • FooBar
          " expected := "// * Testing 1 2 3\n// * FooBar\n" doc = docstring(doc) assert.Equal(t, expected, doc) doc = "
          • Testing 1 2 3
          • FooBar
          " expected = "// * Testing 1 2 3\n// * FooBar\n" doc = docstring(doc) assert.Equal(t, expected, doc) // Test leading spaces doc = "
          • Testing 1 2 3
          • FooBar
          " doc = docstring(doc) assert.Equal(t, expected, doc) // Paragraph check doc = "
          • Testing 1 2 3

          • FooBar

          " expected = "// * Testing 1 2 3\n// \n// * FooBar\n" doc = docstring(doc) assert.Equal(t, expected, doc) } func TestInlineCodeHTMLDocGen(t *testing.T) { doc := "
          • Testing: 1 2 3
          • FooBar
          " expected := "// * Testing: 1 2 3\n// * FooBar\n" doc = docstring(doc) assert.Equal(t, expected, doc) } func TestInlineCodeInParagraphHTMLDocGen(t *testing.T) { doc := "

          Testing: 1 2 3

          " expected := "// Testing: 1 2 3\n" doc = docstring(doc) assert.Equal(t, expected, doc) } func TestEmptyPREInlineCodeHTMLDocGen(t *testing.T) { doc := "
          Testing
          " expected := "// Testing\n" doc = docstring(doc) assert.Equal(t, expected, doc) } func TestParagraph(t *testing.T) { doc := "

          Testing 1 2 3

          " expected := "// Testing 1 2 3\n" doc = docstring(doc) assert.Equal(t, expected, doc) } func TestComplexListParagraphCode(t *testing.T) { doc := "
          • FOO Bar

          • Xyz ABC

          " expected := "// * FOO Bar\n// \n// * Xyz ABC\n" doc = docstring(doc) assert.Equal(t, expected, doc) } aws-sdk-go-1.4.22/private/model/api/exportable_name.go000066400000000000000000000004031300374646400225770ustar00rootroot00000000000000// +build codegen package api import "strings" // ExportableName a name which is exportable as a value or name in Go code func (a *API) ExportableName(name string) string { if name == "" { return name } return strings.ToUpper(name[0:1]) + name[1:] } aws-sdk-go-1.4.22/private/model/api/load.go000066400000000000000000000030311300374646400203510ustar00rootroot00000000000000// +build codegen package api import ( "encoding/json" "fmt" "os" "path/filepath" ) // Load takes a set of files for each filetype and returns an API pointer. // The API will be initialized once all files have been loaded and parsed. // // Will panic if any failure opening the definition JSON files, or there // are unrecognized exported names. func Load(api, docs, paginators, waiters string) *API { a := API{} a.Attach(api) a.Attach(docs) a.Attach(paginators) a.Attach(waiters) a.Setup() return &a } // Attach opens a file by name, and unmarshal its JSON data. // Will proceed to setup the API if not already done so. func (a *API) Attach(filename string) { a.path = filepath.Dir(filename) f, err := os.Open(filename) defer f.Close() if err != nil { panic(err) } if err := json.NewDecoder(f).Decode(a); err != nil { panic(fmt.Errorf("failed to decode %s, err: %v", filename, err)) } } // AttachString will unmarshal a raw JSON string, and setup the // API if not already done so. func (a *API) AttachString(str string) { json.Unmarshal([]byte(str), a) if !a.initialized { a.Setup() } } // Setup initializes the API. func (a *API) Setup() { a.writeShapeNames() a.resolveReferences() a.fixStutterNames() a.renameExportable() if !a.NoRenameToplevelShapes { a.renameToplevelShapes() } a.updateTopLevelShapeReferences() a.createInputOutputShapes() a.customizationPasses() if !a.NoRemoveUnusedShapes { a.removeUnusedShapes() } if !a.NoValidataShapeMethods { a.addShapeValidations() } a.initialized = true } aws-sdk-go-1.4.22/private/model/api/load_test.go000066400000000000000000000010471300374646400214150ustar00rootroot00000000000000// +build 1.6,codegen package api import ( "testing" "github.com/stretchr/testify/assert" ) func TestResolvedReferences(t *testing.T) { json := `{ "operations": { "OperationName": { "input": { "shape": "TestName" } } }, "shapes": { "TestName": { "type": "structure", "members": { "memberName1": { "shape": "OtherTest" }, "memberName2": { "shape": "OtherTest" } } }, "OtherTest": { "type": "string" } } }` a := API{} a.AttachString(json) assert.Equal(t, len(a.Shapes["OtherTest"].refs), 2) } aws-sdk-go-1.4.22/private/model/api/operation.go000066400000000000000000000271121300374646400214400ustar00rootroot00000000000000// +build codegen package api import ( "bytes" "fmt" "regexp" "sort" "strings" "text/template" ) // An Operation defines a specific API Operation. type Operation struct { API *API `json:"-"` ExportedName string Name string Documentation string HTTP HTTPInfo InputRef ShapeRef `json:"input"` OutputRef ShapeRef `json:"output"` ErrorRefs []ShapeRef `json:"errors"` Paginator *Paginator Deprecated bool `json:"deprecated"` AuthType string `json:"authtype"` } // A HTTPInfo defines the method of HTTP request for the Operation. type HTTPInfo struct { Method string RequestURI string ResponseCode uint } // HasInput returns if the Operation accepts an input paramater func (o *Operation) HasInput() bool { return o.InputRef.ShapeName != "" } // HasOutput returns if the Operation accepts an output parameter func (o *Operation) HasOutput() bool { return o.OutputRef.ShapeName != "" } // tplOperation defines a template for rendering an API Operation var tplOperation = template.Must(template.New("operation").Parse(` const op{{ .ExportedName }} = "{{ .Name }}" // {{ .ExportedName }}Request generates a "aws/request.Request" representing the // client's request for the {{ .ExportedName }} operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See {{ .ExportedName }} for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the {{ .ExportedName }} method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the {{ .ExportedName }}Request method. // req, resp := client.{{ .ExportedName }}Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *{{ .API.StructName }}) {{ .ExportedName }}Request(` + `input {{ .InputRef.GoType }}) (req *request.Request, output {{ .OutputRef.GoType }}) { {{ if (or .Deprecated (or .InputRef.Deprecated .OutputRef.Deprecated)) }}if c.Client.Config.Logger != nil { c.Client.Config.Logger.Log("This operation, {{ .ExportedName }}, has been deprecated") } op := &request.Operation{ {{ else }} op := &request.Operation{ {{ end }} Name: op{{ .ExportedName }}, {{ if ne .HTTP.Method "" }}HTTPMethod: "{{ .HTTP.Method }}", {{ end }}HTTPPath: {{ if ne .HTTP.RequestURI "" }}"{{ .HTTP.RequestURI }}"{{ else }}"/"{{ end }}, {{ if .Paginator }}Paginator: &request.Paginator{ InputTokens: {{ .Paginator.InputTokensString }}, OutputTokens: {{ .Paginator.OutputTokensString }}, LimitToken: "{{ .Paginator.LimitKey }}", TruncationToken: "{{ .Paginator.MoreResults }}", }, {{ end }} } if input == nil { input = &{{ .InputRef.GoTypeElem }}{} } req = c.newRequest(op, input, output){{ if eq .OutputRef.Shape.Placeholder true }} req.Handlers.Unmarshal.Remove({{ .API.ProtocolPackage }}.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler){{ end }} {{ if eq .AuthType "none" }}req.Config.Credentials = credentials.AnonymousCredentials output = &{{ .OutputRef.GoTypeElem }}{} {{ else }} output = &{{ .OutputRef.GoTypeElem }}{} {{ end }} req.Data = output return } // {{ .ExportedName }} API operation for {{ .API.Metadata.ServiceFullName }}. {{ if .Documentation -}} // {{ .Documentation }} {{ end -}} // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for {{ .API.Metadata.ServiceFullName }}'s // API operation {{ .ExportedName }} for usage and error information. {{ if .ErrorRefs -}} // // Returned Error Codes: {{ range $_, $err := .ErrorRefs -}} {{ $errDoc := $err.IndentedDocstring -}} // * {{ $err.Shape.ErrorName }} {{ if $errDoc -}} {{ $errDoc }}{{ end }} // {{ end -}} {{ end -}} func (c *{{ .API.StructName }}) {{ .ExportedName }}(` + `input {{ .InputRef.GoType }}) ({{ .OutputRef.GoType }}, error) { req, out := c.{{ .ExportedName }}Request(input) err := req.Send() return out, err } {{ if .Paginator }} // {{ .ExportedName }}Pages iterates over the pages of a {{ .ExportedName }} operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See {{ .ExportedName }} method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a {{ .ExportedName }} operation. // pageNum := 0 // err := client.{{ .ExportedName }}Pages(params, // func(page {{ .OutputRef.GoType }}, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *{{ .API.StructName }}) {{ .ExportedName }}Pages(` + `input {{ .InputRef.GoType }}, fn func(p {{ .OutputRef.GoType }}, lastPage bool) (shouldContinue bool)) error { page, _ := c.{{ .ExportedName }}Request(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.({{ .OutputRef.GoType }}), lastPage) }) } {{ end }} `)) // GoCode returns a string of rendered GoCode for this Operation func (o *Operation) GoCode() string { var buf bytes.Buffer err := tplOperation.Execute(&buf, o) if err != nil { panic(err) } return strings.TrimSpace(buf.String()) } // tplInfSig defines the template for rendering an Operation's signature within an Interface definition. var tplInfSig = template.Must(template.New("opsig").Parse(` {{ .ExportedName }}Request({{ .InputRef.GoTypeWithPkgName }}) (*request.Request, {{ .OutputRef.GoTypeWithPkgName }}) {{ .ExportedName }}({{ .InputRef.GoTypeWithPkgName }}) ({{ .OutputRef.GoTypeWithPkgName }}, error) {{ if .Paginator -}} {{ .ExportedName }}Pages({{ .InputRef.GoTypeWithPkgName }}, func({{ .OutputRef.GoTypeWithPkgName }}, bool) bool) error {{- end }} `)) // InterfaceSignature returns a string representing the Operation's interface{} // functional signature. func (o *Operation) InterfaceSignature() string { var buf bytes.Buffer err := tplInfSig.Execute(&buf, o) if err != nil { panic(err) } return strings.TrimSpace(buf.String()) } // tplExample defines the template for rendering an Operation example var tplExample = template.Must(template.New("operationExample").Parse(` func Example{{ .API.StructName }}_{{ .ExportedName }}() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := {{ .API.PackageName }}.New(sess) {{ .ExampleInput }} resp, err := svc.{{ .ExportedName }}(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } `)) // Example returns a string of the rendered Go code for the Operation func (o *Operation) Example() string { var buf bytes.Buffer err := tplExample.Execute(&buf, o) if err != nil { panic(err) } return strings.TrimSpace(buf.String()) } // ExampleInput return a string of the rendered Go code for an example's input parameters func (o *Operation) ExampleInput() string { if len(o.InputRef.Shape.MemberRefs) == 0 { return fmt.Sprintf("var params *%s.%s", o.API.PackageName(), o.InputRef.GoTypeElem()) } e := example{o, map[string]int{}} return "params := " + e.traverseAny(o.InputRef.Shape, false, false) } // A example provides type example struct { *Operation visited map[string]int } // traverseAny returns rendered Go code for the shape. func (e *example) traverseAny(s *Shape, required, payload bool) string { str := "" e.visited[s.ShapeName]++ switch s.Type { case "structure": str = e.traverseStruct(s, required, payload) case "list": str = e.traverseList(s, required, payload) case "map": str = e.traverseMap(s, required, payload) default: str = e.traverseScalar(s, required, payload) } e.visited[s.ShapeName]-- return str } var reType = regexp.MustCompile(`\b([A-Z])`) // traverseStruct returns rendered Go code for a structure type shape. func (e *example) traverseStruct(s *Shape, required, payload bool) string { var buf bytes.Buffer buf.WriteString("&" + s.API.PackageName() + "." + s.GoTypeElem() + "{") if required { buf.WriteString(" // Required") } buf.WriteString("\n") req := make([]string, len(s.Required)) copy(req, s.Required) sort.Strings(req) if e.visited[s.ShapeName] < 2 { for _, n := range req { m := s.MemberRefs[n].Shape p := n == s.Payload && (s.MemberRefs[n].Streaming || m.Streaming) buf.WriteString(n + ": " + e.traverseAny(m, true, p) + ",") if m.Type != "list" && m.Type != "structure" && m.Type != "map" { buf.WriteString(" // Required") } buf.WriteString("\n") } for _, n := range s.MemberNames() { if s.IsRequired(n) { continue } m := s.MemberRefs[n].Shape p := n == s.Payload && (s.MemberRefs[n].Streaming || m.Streaming) buf.WriteString(n + ": " + e.traverseAny(m, false, p) + ",\n") } } else { buf.WriteString("// Recursive values...\n") } buf.WriteString("}") return buf.String() } // traverseMap returns rendered Go code for a map type shape. func (e *example) traverseMap(s *Shape, required, payload bool) string { var buf bytes.Buffer t := reType.ReplaceAllString(s.GoTypeElem(), s.API.PackageName()+".$1") buf.WriteString(t + "{") if required { buf.WriteString(" // Required") } buf.WriteString("\n") if e.visited[s.ShapeName] < 2 { m := s.ValueRef.Shape buf.WriteString("\"Key\": " + e.traverseAny(m, true, false) + ",") if m.Type != "list" && m.Type != "structure" && m.Type != "map" { buf.WriteString(" // Required") } buf.WriteString("\n// More values...\n") } else { buf.WriteString("// Recursive values...\n") } buf.WriteString("}") return buf.String() } // traverseList returns rendered Go code for a list type shape. func (e *example) traverseList(s *Shape, required, payload bool) string { var buf bytes.Buffer t := reType.ReplaceAllString(s.GoTypeElem(), s.API.PackageName()+".$1") buf.WriteString(t + "{") if required { buf.WriteString(" // Required") } buf.WriteString("\n") if e.visited[s.ShapeName] < 2 { m := s.MemberRef.Shape buf.WriteString(e.traverseAny(m, true, false) + ",") if m.Type != "list" && m.Type != "structure" && m.Type != "map" { buf.WriteString(" // Required") } buf.WriteString("\n// More values...\n") } else { buf.WriteString("// Recursive values...\n") } buf.WriteString("}") return buf.String() } // traverseScalar returns an AWS Type string representation initialized to a value. // Will panic if s is an unsupported shape type. func (e *example) traverseScalar(s *Shape, required, payload bool) string { str := "" switch s.Type { case "integer", "long": str = `aws.Int64(1)` case "float", "double": str = `aws.Float64(1.0)` case "string", "character": str = `aws.String("` + s.ShapeName + `")` case "blob": if payload { str = `bytes.NewReader([]byte("PAYLOAD"))` } else { str = `[]byte("PAYLOAD")` } case "boolean": str = `aws.Bool(true)` case "timestamp": str = `aws.Time(time.Now())` default: panic("unsupported shape " + s.Type) } return str } aws-sdk-go-1.4.22/private/model/api/pagination.go000066400000000000000000000040211300374646400215630ustar00rootroot00000000000000// +build codegen package api import ( "encoding/json" "fmt" "os" ) // Paginator keeps track of pagination configuration for an API operation. type Paginator struct { InputTokens interface{} `json:"input_token"` OutputTokens interface{} `json:"output_token"` LimitKey string `json:"limit_key"` MoreResults string `json:"more_results"` } // InputTokensString returns output tokens formatted as a list func (p *Paginator) InputTokensString() string { str := p.InputTokens.([]string) return fmt.Sprintf("%#v", str) } // OutputTokensString returns output tokens formatted as a list func (p *Paginator) OutputTokensString() string { str := p.OutputTokens.([]string) return fmt.Sprintf("%#v", str) } // used for unmarshaling from the paginators JSON file type paginationDefinitions struct { *API Pagination map[string]Paginator } // AttachPaginators attaches pagination configuration from filename to the API. func (a *API) AttachPaginators(filename string) { p := paginationDefinitions{API: a} f, err := os.Open(filename) defer f.Close() if err != nil { panic(err) } err = json.NewDecoder(f).Decode(&p) if err != nil { panic(err) } p.setup() } // setup runs post-processing on the paginator configuration. func (p *paginationDefinitions) setup() { for n, e := range p.Pagination { if e.InputTokens == nil || e.OutputTokens == nil { continue } paginator := e switch t := paginator.InputTokens.(type) { case string: paginator.InputTokens = []string{t} case []interface{}: toks := []string{} for _, e := range t { s := e.(string) toks = append(toks, s) } paginator.InputTokens = toks } switch t := paginator.OutputTokens.(type) { case string: paginator.OutputTokens = []string{t} case []interface{}: toks := []string{} for _, e := range t { s := e.(string) toks = append(toks, s) } paginator.OutputTokens = toks } if o, ok := p.Operations[n]; ok { o.Paginator = &paginator } else { panic("unknown operation for paginator " + n) } } } aws-sdk-go-1.4.22/private/model/api/param_filler.go000066400000000000000000000073651300374646400221050ustar00rootroot00000000000000// +build codegen package api import ( "fmt" "reflect" "strings" "github.com/aws/aws-sdk-go/private/util" ) // A paramFiller provides string formatting for a shape and its types. type paramFiller struct { prefixPackageName bool } // typeName returns the type name of a shape. func (f paramFiller) typeName(shape *Shape) string { if f.prefixPackageName && shape.Type == "structure" { return "*" + shape.API.PackageName() + "." + shape.GoTypeElem() } return shape.GoType() } // ParamsStructFromJSON returns a JSON string representation of a structure. func ParamsStructFromJSON(value interface{}, shape *Shape, prefixPackageName bool) string { f := paramFiller{prefixPackageName: prefixPackageName} return util.GoFmt(f.paramsStructAny(value, shape)) } // paramsStructAny returns the string representation of any value. func (f paramFiller) paramsStructAny(value interface{}, shape *Shape) string { if value == nil { return "" } switch shape.Type { case "structure": if value != nil { vmap := value.(map[string]interface{}) return f.paramsStructStruct(vmap, shape) } case "list": vlist := value.([]interface{}) return f.paramsStructList(vlist, shape) case "map": vmap := value.(map[string]interface{}) return f.paramsStructMap(vmap, shape) case "string", "character": v := reflect.Indirect(reflect.ValueOf(value)) if v.IsValid() { return fmt.Sprintf("aws.String(%#v)", v.Interface()) } case "blob": v := reflect.Indirect(reflect.ValueOf(value)) if v.IsValid() && shape.Streaming { return fmt.Sprintf("aws.ReadSeekCloser(bytes.NewBufferString(%#v))", v.Interface()) } else if v.IsValid() { return fmt.Sprintf("[]byte(%#v)", v.Interface()) } case "boolean": v := reflect.Indirect(reflect.ValueOf(value)) if v.IsValid() { return fmt.Sprintf("aws.Bool(%#v)", v.Interface()) } case "integer", "long": v := reflect.Indirect(reflect.ValueOf(value)) if v.IsValid() { return fmt.Sprintf("aws.Int64(%v)", v.Interface()) } case "float", "double": v := reflect.Indirect(reflect.ValueOf(value)) if v.IsValid() { return fmt.Sprintf("aws.Float64(%v)", v.Interface()) } case "timestamp": v := reflect.Indirect(reflect.ValueOf(value)) if v.IsValid() { return fmt.Sprintf("aws.Time(time.Unix(%d, 0))", int(v.Float())) } default: panic("Unhandled type " + shape.Type) } return "" } // paramsStructStruct returns the string representation of a structure func (f paramFiller) paramsStructStruct(value map[string]interface{}, shape *Shape) string { out := "&" + f.typeName(shape)[1:] + "{\n" for _, n := range shape.MemberNames() { ref := shape.MemberRefs[n] name := findParamMember(value, n) if val := f.paramsStructAny(value[name], ref.Shape); val != "" { out += fmt.Sprintf("%s: %s,\n", n, val) } } out += "}" return out } // paramsStructMap returns the string representation of a map of values func (f paramFiller) paramsStructMap(value map[string]interface{}, shape *Shape) string { out := f.typeName(shape) + "{\n" keys := util.SortedKeys(value) for _, k := range keys { v := value[k] out += fmt.Sprintf("%q: %s,\n", k, f.paramsStructAny(v, shape.ValueRef.Shape)) } out += "}" return out } // paramsStructList returns the string representation of slice of values func (f paramFiller) paramsStructList(value []interface{}, shape *Shape) string { out := f.typeName(shape) + "{\n" for _, v := range value { out += fmt.Sprintf("%s,\n", f.paramsStructAny(v, shape.MemberRef.Shape)) } out += "}" return out } // findParamMember searches a map for a key ignoring case. Returns the map key if found. func findParamMember(value map[string]interface{}, key string) string { for actualKey := range value { if strings.ToLower(key) == strings.ToLower(actualKey) { return actualKey } } return "" } aws-sdk-go-1.4.22/private/model/api/passes.go000066400000000000000000000157161300374646400207450ustar00rootroot00000000000000// +build codegen package api import ( "fmt" "regexp" "strings" ) // updateTopLevelShapeReferences moves resultWrapper, locationName, and // xmlNamespace traits from toplevel shape references to the toplevel // shapes for easier code generation func (a *API) updateTopLevelShapeReferences() { for _, o := range a.Operations { // these are for REST-XML services if o.InputRef.LocationName != "" { o.InputRef.Shape.LocationName = o.InputRef.LocationName } if o.InputRef.Location != "" { o.InputRef.Shape.Location = o.InputRef.Location } if o.InputRef.Payload != "" { o.InputRef.Shape.Payload = o.InputRef.Payload } if o.InputRef.XMLNamespace.Prefix != "" { o.InputRef.Shape.XMLNamespace.Prefix = o.InputRef.XMLNamespace.Prefix } if o.InputRef.XMLNamespace.URI != "" { o.InputRef.Shape.XMLNamespace.URI = o.InputRef.XMLNamespace.URI } } } // writeShapeNames sets each shape's API and shape name values. Binding the // shape to its parent API. func (a *API) writeShapeNames() { for n, s := range a.Shapes { s.API = a s.ShapeName = n } } func (a *API) resolveReferences() { resolver := referenceResolver{API: a, visited: map[*ShapeRef]bool{}} for _, s := range a.Shapes { resolver.resolveShape(s) } for _, o := range a.Operations { o.API = a // resolve parent reference resolver.resolveReference(&o.InputRef) resolver.resolveReference(&o.OutputRef) // Resolve references for errors also for i := range o.ErrorRefs { resolver.resolveReference(&o.ErrorRefs[i]) o.ErrorRefs[i].Shape.IsError = true } } } // A referenceResolver provides a way to resolve shape references to // shape definitions. type referenceResolver struct { *API visited map[*ShapeRef]bool } // resolveReference updates a shape reference to reference the API and // its shape definition. All other nested references are also resolved. func (r *referenceResolver) resolveReference(ref *ShapeRef) { if ref.ShapeName == "" { return } if shape, ok := r.API.Shapes[ref.ShapeName]; ok { ref.API = r.API // resolve reference back to API ref.Shape = shape // resolve shape reference if r.visited[ref] { return } r.visited[ref] = true shape.refs = append(shape.refs, ref) // register the ref // resolve shape's references, if it has any r.resolveShape(shape) } } // resolveShape resolves a shape's Member Key Value, and nested member // shape references. func (r *referenceResolver) resolveShape(shape *Shape) { r.resolveReference(&shape.MemberRef) r.resolveReference(&shape.KeyRef) r.resolveReference(&shape.ValueRef) for _, m := range shape.MemberRefs { r.resolveReference(m) } } // renameToplevelShapes renames all top level shapes of an API to their // exportable variant. The shapes are also updated to include notations // if they are Input or Outputs. func (a *API) renameToplevelShapes() { for _, v := range a.Operations { if v.HasInput() { name := v.ExportedName + "Input" switch n := len(v.InputRef.Shape.refs); { case n == 1 && a.Shapes[name] == nil: v.InputRef.Shape.Rename(name) } } if v.HasOutput() { name := v.ExportedName + "Output" switch n := len(v.OutputRef.Shape.refs); { case n == 1 && a.Shapes[name] == nil: v.OutputRef.Shape.Rename(name) } } v.InputRef.Payload = a.ExportableName(v.InputRef.Payload) v.OutputRef.Payload = a.ExportableName(v.OutputRef.Payload) } } // fixStutterNames fixes all name struttering based on Go naming conventions. // "Stuttering" is when the prefix of a structure or function matches the // package name (case insensitive). func (a *API) fixStutterNames() { str, end := a.StructName(), "" if len(str) > 1 { l := len(str) - 1 str, end = str[0:l], str[l:] } re := regexp.MustCompile(fmt.Sprintf(`\A(?i:%s)%s`, str, end)) for name, op := range a.Operations { newName := re.ReplaceAllString(name, "") if newName != name { delete(a.Operations, name) a.Operations[newName] = op } op.ExportedName = newName } for k, s := range a.Shapes { newName := re.ReplaceAllString(k, "") if newName != s.ShapeName { s.Rename(newName) } } } // renameExportable renames all operation names to be exportable names. // All nested Shape names are also updated to the exportable variant. func (a *API) renameExportable() { for name, op := range a.Operations { newName := a.ExportableName(name) if newName != name { delete(a.Operations, name) a.Operations[newName] = op } op.ExportedName = newName } for k, s := range a.Shapes { // FIXME SNS has lower and uppercased shape names with the same name, // except the lowercased variant is used exclusively for string and // other primitive types. Renaming both would cause a collision. // We work around this by only renaming the structure shapes. if s.Type == "string" { continue } for mName, member := range s.MemberRefs { newName := a.ExportableName(mName) if newName != mName { delete(s.MemberRefs, mName) s.MemberRefs[newName] = member // also apply locationName trait so we keep the old one // but only if there's no locationName trait on ref or shape if member.LocationName == "" && member.Shape.LocationName == "" { member.LocationName = mName } } if newName == "_" { panic("Shape " + s.ShapeName + " uses reserved member name '_'") } } newName := a.ExportableName(k) if newName != s.ShapeName { s.Rename(newName) } s.Payload = a.ExportableName(s.Payload) // fix required trait names for i, n := range s.Required { s.Required[i] = a.ExportableName(n) } } for _, s := range a.Shapes { // fix enum names if s.IsEnum() { s.EnumConsts = make([]string, len(s.Enum)) for i := range s.Enum { shape := s.ShapeName shape = strings.ToUpper(shape[0:1]) + shape[1:] s.EnumConsts[i] = shape + s.EnumName(i) } } } } // createInputOutputShapes creates toplevel input/output shapes if they // have not been defined in the API. This normalizes all APIs to always // have an input and output structure in the signature. func (a *API) createInputOutputShapes() { for _, op := range a.Operations { if !op.HasInput() { setAsPlacholderShape(&op.InputRef, op.ExportedName+"Input", a) } if !op.HasOutput() { setAsPlacholderShape(&op.OutputRef, op.ExportedName+"Output", a) } } } func setAsPlacholderShape(tgtShapeRef *ShapeRef, name string, a *API) { shape := a.makeIOShape(name) shape.Placeholder = true *tgtShapeRef = ShapeRef{API: a, ShapeName: shape.ShapeName, Shape: shape} shape.refs = append(shape.refs, tgtShapeRef) } // makeIOShape returns a pointer to a new Shape initialized by the name provided. func (a *API) makeIOShape(name string) *Shape { shape := &Shape{ API: a, ShapeName: name, Type: "structure", MemberRefs: map[string]*ShapeRef{}, } a.Shapes[name] = shape return shape } // removeUnusedShapes removes shapes from the API which are not referenced by any // other shape in the API. func (a *API) removeUnusedShapes() { for n, s := range a.Shapes { if len(s.refs) == 0 { delete(a.Shapes, n) } } } aws-sdk-go-1.4.22/private/model/api/shape.go000066400000000000000000000345731300374646400205510ustar00rootroot00000000000000// +build codegen package api import ( "bytes" "fmt" "path" "regexp" "sort" "strings" "text/template" ) // A ShapeRef defines the usage of a shape within the API. type ShapeRef struct { API *API `json:"-"` Shape *Shape `json:"-"` Documentation string ShapeName string `json:"shape"` Location string LocationName string QueryName string Flattened bool Streaming bool XMLAttribute bool XMLNamespace XMLInfo Payload string IdempotencyToken bool `json:"idempotencyToken"` Deprecated bool `json:"deprecated"` } // ErrorInfo represents the error block of a shape's structure type ErrorInfo struct { Code string HTTPStatusCode int } // A XMLInfo defines URL and prefix for Shapes when rendered as XML type XMLInfo struct { Prefix string URI string } // A Shape defines the definition of a shape type type Shape struct { API *API `json:"-"` ShapeName string Documentation string MemberRefs map[string]*ShapeRef `json:"members"` MemberRef ShapeRef `json:"member"` KeyRef ShapeRef `json:"key"` ValueRef ShapeRef `json:"value"` Required []string Payload string Type string Exception bool Enum []string EnumConsts []string Flattened bool Streaming bool Location string LocationName string IdempotencyToken bool `json:"idempotencyToken"` XMLNamespace XMLInfo Min float64 // optional Minimum length (string, list) or value (number) Max float64 // optional Maximum length (string, list) or value (number) refs []*ShapeRef // References to this shape resolvePkg string // use this package in the goType() if present // Defines if the shape is a placeholder and should not be used directly Placeholder bool Deprecated bool `json:"deprecated"` Validations ShapeValidations // Error information that is set if the shape is an error shape. IsError bool ErrorInfo ErrorInfo `json:"error"` } // ErrorName will return the shape's name or error code if available based // on the API's protocol. func (s *Shape) ErrorName() string { name := s.ShapeName switch s.API.Metadata.Protocol { case "query", "ec2query", "rest-xml": if len(s.ErrorInfo.Code) > 0 { name = s.ErrorInfo.Code } } return name } // GoTags returns the struct tags for a shape. func (s *Shape) GoTags(root, required bool) string { ref := &ShapeRef{ShapeName: s.ShapeName, API: s.API, Shape: s} return ref.GoTags(root, required) } // Rename changes the name of the Shape to newName. Also updates // the associated API's reference to use newName. func (s *Shape) Rename(newName string) { for _, r := range s.refs { r.ShapeName = newName } delete(s.API.Shapes, s.ShapeName) s.API.Shapes[newName] = s s.ShapeName = newName } // MemberNames returns a slice of struct member names. func (s *Shape) MemberNames() []string { i, names := 0, make([]string, len(s.MemberRefs)) for n := range s.MemberRefs { names[i] = n i++ } sort.Strings(names) return names } // GoTypeWithPkgName returns a shape's type as a string with the package name in // . format. Package naming only applies to structures. func (s *Shape) GoTypeWithPkgName() string { return goType(s, true) } // GoStructType returns the type of a struct field based on the API // model definition. func (s *Shape) GoStructType(name string, ref *ShapeRef) string { if (ref.Streaming || ref.Shape.Streaming) && s.Payload == name { rtype := "io.ReadSeeker" if len(s.refs) > 1 { rtype = "aws.ReaderSeekCloser" } else if strings.HasSuffix(s.ShapeName, "Output") { rtype = "io.ReadCloser" } s.API.imports["io"] = true return rtype } for _, v := range s.Validations { // TODO move this to shape validation resolution if (v.Ref.Shape.Type == "map" || v.Ref.Shape.Type == "list") && v.Type == ShapeValidationNested { s.API.imports["fmt"] = true } } return ref.GoType() } // GoType returns a shape's Go type func (s *Shape) GoType() string { return goType(s, false) } // GoType returns a shape ref's Go type. func (ref *ShapeRef) GoType() string { if ref.Shape == nil { panic(fmt.Errorf("missing shape definition on reference for %#v", ref)) } return ref.Shape.GoType() } // GoTypeWithPkgName returns a shape's type as a string with the package name in // . format. Package naming only applies to structures. func (ref *ShapeRef) GoTypeWithPkgName() string { if ref.Shape == nil { panic(fmt.Errorf("missing shape definition on reference for %#v", ref)) } return ref.Shape.GoTypeWithPkgName() } // Returns a string version of the Shape's type. // If withPkgName is true, the package name will be added as a prefix func goType(s *Shape, withPkgName bool) string { switch s.Type { case "structure": if withPkgName || s.resolvePkg != "" { pkg := s.resolvePkg if pkg != "" { s.API.imports[pkg] = true pkg = path.Base(pkg) } else { pkg = s.API.PackageName() } return fmt.Sprintf("*%s.%s", pkg, s.ShapeName) } return "*" + s.ShapeName case "map": return "map[string]" + s.ValueRef.GoType() case "list": return "[]" + s.MemberRef.GoType() case "boolean": return "*bool" case "string", "character": return "*string" case "blob": return "[]byte" case "integer", "long": return "*int64" case "float", "double": return "*float64" case "timestamp": s.API.imports["time"] = true return "*time.Time" default: panic("Unsupported shape type: " + s.Type) } } // GoTypeElem returns the Go type for the Shape. If the shape type is a pointer just // the type will be returned minus the pointer *. func (s *Shape) GoTypeElem() string { t := s.GoType() if strings.HasPrefix(t, "*") { return t[1:] } return t } // GoTypeElem returns the Go type for the Shape. If the shape type is a pointer just // the type will be returned minus the pointer *. func (ref *ShapeRef) GoTypeElem() string { if ref.Shape == nil { panic(fmt.Errorf("missing shape definition on reference for %#v", ref)) } return ref.Shape.GoTypeElem() } // ShapeTag is a struct tag that will be applied to a shape's generated code type ShapeTag struct { Key, Val string } // String returns the string representation of the shape tag func (s ShapeTag) String() string { return fmt.Sprintf(`%s:"%s"`, s.Key, s.Val) } // ShapeTags is a collection of shape tags and provides serialization of the // tags in an ordered list. type ShapeTags []ShapeTag // Join returns an ordered serialization of the shape tags with the provided // separator. func (s ShapeTags) Join(sep string) string { o := &bytes.Buffer{} for i, t := range s { o.WriteString(t.String()) if i < len(s)-1 { o.WriteString(sep) } } return o.String() } // String is an alias for Join with the empty space separator. func (s ShapeTags) String() string { return s.Join(" ") } // GoTags returns the rendered tags string for the ShapeRef func (ref *ShapeRef) GoTags(toplevel bool, isRequired bool) string { tags := ShapeTags{} if ref.Location != "" { tags = append(tags, ShapeTag{"location", ref.Location}) } else if ref.Shape.Location != "" { tags = append(tags, ShapeTag{"location", ref.Shape.Location}) } if ref.LocationName != "" { tags = append(tags, ShapeTag{"locationName", ref.LocationName}) } else if ref.Shape.LocationName != "" { tags = append(tags, ShapeTag{"locationName", ref.Shape.LocationName}) } if ref.QueryName != "" { tags = append(tags, ShapeTag{"queryName", ref.QueryName}) } if ref.Shape.MemberRef.LocationName != "" { tags = append(tags, ShapeTag{"locationNameList", ref.Shape.MemberRef.LocationName}) } if ref.Shape.KeyRef.LocationName != "" { tags = append(tags, ShapeTag{"locationNameKey", ref.Shape.KeyRef.LocationName}) } if ref.Shape.ValueRef.LocationName != "" { tags = append(tags, ShapeTag{"locationNameValue", ref.Shape.ValueRef.LocationName}) } if ref.Shape.Min > 0 { tags = append(tags, ShapeTag{"min", fmt.Sprintf("%v", ref.Shape.Min)}) } if ref.Deprecated || ref.Shape.Deprecated { tags = append(tags, ShapeTag{"deprecated", "true"}) } // All shapes have a type tags = append(tags, ShapeTag{"type", ref.Shape.Type}) // embed the timestamp type for easier lookups if ref.Shape.Type == "timestamp" { t := ShapeTag{Key: "timestampFormat"} if ref.Location == "header" { t.Val = "rfc822" } else { switch ref.API.Metadata.Protocol { case "json", "rest-json": t.Val = "unix" case "rest-xml", "ec2", "query": t.Val = "iso8601" } } tags = append(tags, t) } if ref.Shape.Flattened || ref.Flattened { tags = append(tags, ShapeTag{"flattened", "true"}) } if ref.XMLAttribute { tags = append(tags, ShapeTag{"xmlAttribute", "true"}) } if isRequired { tags = append(tags, ShapeTag{"required", "true"}) } if ref.Shape.IsEnum() { tags = append(tags, ShapeTag{"enum", ref.ShapeName}) } if toplevel { if ref.Shape.Payload != "" { tags = append(tags, ShapeTag{"payload", ref.Shape.Payload}) } if ref.XMLNamespace.Prefix != "" { tags = append(tags, ShapeTag{"xmlPrefix", ref.XMLNamespace.Prefix}) } else if ref.Shape.XMLNamespace.Prefix != "" { tags = append(tags, ShapeTag{"xmlPrefix", ref.Shape.XMLNamespace.Prefix}) } if ref.XMLNamespace.URI != "" { tags = append(tags, ShapeTag{"xmlURI", ref.XMLNamespace.URI}) } else if ref.Shape.XMLNamespace.URI != "" { tags = append(tags, ShapeTag{"xmlURI", ref.Shape.XMLNamespace.URI}) } } if ref.IdempotencyToken || ref.Shape.IdempotencyToken { tags = append(tags, ShapeTag{"idempotencyToken", "true"}) } return fmt.Sprintf("`%s`", tags) } // Docstring returns the godocs formated documentation func (ref *ShapeRef) Docstring() string { if ref.Documentation != "" { return strings.Trim(ref.Documentation, "\n ") } return ref.Shape.Docstring() } // Docstring returns the godocs formated documentation func (s *Shape) Docstring() string { return strings.Trim(s.Documentation, "\n ") } // IndentedDocstring is the indented form of the doc string. func (ref *ShapeRef) IndentedDocstring() string { doc := ref.Docstring() return strings.Replace(doc, "// ", "// ", -1) } var goCodeStringerTmpl = template.Must(template.New("goCodeStringerTmpl").Parse(` // String returns the string representation func (s {{ .ShapeName }}) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s {{ .ShapeName }}) GoString() string { return s.String() } `)) // GoCodeStringers renders the Stringers for API input/output shapes func (s *Shape) GoCodeStringers() string { w := bytes.Buffer{} if err := goCodeStringerTmpl.Execute(&w, s); err != nil { panic(fmt.Sprintln("Unexpected error executing GoCodeStringers template", err)) } return w.String() } var enumStrip = regexp.MustCompile(`[^a-zA-Z0-9_:\./-]`) var enumDelims = regexp.MustCompile(`[-_:\./]+`) var enumCamelCase = regexp.MustCompile(`([a-z])([A-Z])`) // EnumName returns the Nth enum in the shapes Enum list func (s *Shape) EnumName(n int) string { enum := s.Enum[n] enum = enumStrip.ReplaceAllLiteralString(enum, "") enum = enumCamelCase.ReplaceAllString(enum, "$1-$2") parts := enumDelims.Split(enum, -1) for i, v := range parts { v = strings.ToLower(v) parts[i] = "" if len(v) > 0 { parts[i] = strings.ToUpper(v[0:1]) } if len(v) > 1 { parts[i] += v[1:] } } enum = strings.Join(parts, "") enum = strings.ToUpper(enum[0:1]) + enum[1:] return enum } // NestedShape returns the shape pointer value for the shape which is nested // under the current shape. If the shape is not nested nil will be returned. // // strucutures, the current shape is returned // map: the value shape of the map is returned // list: the element shape of the list is returned func (s *Shape) NestedShape() *Shape { var nestedShape *Shape switch s.Type { case "structure": nestedShape = s case "map": nestedShape = s.ValueRef.Shape case "list": nestedShape = s.MemberRef.Shape } return nestedShape } var structShapeTmpl = template.Must(template.New("StructShape").Parse(` {{ .Docstring }} type {{ .ShapeName }} struct { _ struct{} {{ .GoTags true false }} {{ $context := . -}} {{ range $_, $name := $context.MemberNames -}} {{ $elem := index $context.MemberRefs $name -}} {{ $isRequired := $context.IsRequired $name -}} {{ $doc := $elem.Docstring -}} {{ $doc }} {{ if $isRequired -}} {{ if $doc -}} // {{ end -}} // {{ $name }} is a required field {{ end -}} {{ $name }} {{ $context.GoStructType $name $elem }} {{ $elem.GoTags false $isRequired }} {{ end }} } {{ if not .API.NoStringerMethods }} {{ .GoCodeStringers }} {{ end }} {{ if not .API.NoValidataShapeMethods }} {{ if .Validations -}} {{ .Validations.GoCode . }} {{ end }} {{ end }} `)) var enumShapeTmpl = template.Must(template.New("EnumShape").Parse(` {{ .Docstring }} const ( {{ $context := . -}} {{ range $index, $elem := .Enum -}} {{ $name := index $context.EnumConsts $index -}} // {{ $name }} is a {{ $context.ShapeName }} enum value {{ $name }} = "{{ $elem }}" {{ end }} ) `)) // GoCode returns the rendered Go code for the Shape. func (s *Shape) GoCode() string { b := &bytes.Buffer{} switch { case s.Type == "structure": if err := structShapeTmpl.Execute(b, s); err != nil { panic(fmt.Sprintf("Failed to generate struct shape %s, %v\n", s.ShapeName, err)) } case s.IsEnum(): if err := enumShapeTmpl.Execute(b, s); err != nil { panic(fmt.Sprintf("Failed to generate enum shape %s, %v\n", s.ShapeName, err)) } default: panic(fmt.Sprintln("Cannot generate toplevel shape for", s.Type)) } return b.String() } // IsEnum returns whether this shape is an enum list func (s *Shape) IsEnum() bool { return s.Type == "string" && len(s.Enum) > 0 } // IsRequired returns if member is a required field. func (s *Shape) IsRequired(member string) bool { for _, n := range s.Required { if n == member { return true } } return false } // IsInternal returns whether the shape was defined in this package func (s *Shape) IsInternal() bool { return s.resolvePkg == "" } // removeRef removes a shape reference from the list of references this // shape is used in. func (s *Shape) removeRef(ref *ShapeRef) { r := s.refs for i := 0; i < len(r); i++ { if r[i] == ref { j := i + 1 copy(r[i:], r[j:]) for k, n := len(r)-j+i, len(r); k < n; k++ { r[k] = nil // free up the end of the list } // for k s.refs = r[:len(r)-j+i] break } } } aws-sdk-go-1.4.22/private/model/api/shape_validation.go000066400000000000000000000107241300374646400227530ustar00rootroot00000000000000// +build codegen package api import ( "bytes" "fmt" "text/template" ) // A ShapeValidationType is the type of validation that a shape needs type ShapeValidationType int const ( // ShapeValidationRequired states the shape must be set ShapeValidationRequired = iota // ShapeValidationMinVal states the shape must have at least a number of // elements, or for numbers a minimum value ShapeValidationMinVal // ShapeValidationNested states the shape has nested values that need // to be validated ShapeValidationNested ) // A ShapeValidation contains information about a shape and the type of validation // that is needed type ShapeValidation struct { // Name of the shape to be validated Name string // Reference to the shape within the context the shape is referenced Ref *ShapeRef // Type of validation needed Type ShapeValidationType } var validationGoCodeTmpls = template.Must(template.New("validationGoCodeTmpls").Parse(` {{ define "requiredValue" -}} if s.{{ .Name }} == nil { invalidParams.Add(request.NewErrParamRequired("{{ .Name }}")) } {{- end }} {{ define "minLen" -}} if s.{{ .Name }} != nil && len(s.{{ .Name }}) < {{ .Ref.Shape.Min }} { invalidParams.Add(request.NewErrParamMinLen("{{ .Name }}", {{ .Ref.Shape.Min }})) } {{- end }} {{ define "minLenString" -}} if s.{{ .Name }} != nil && len(*s.{{ .Name }}) < {{ .Ref.Shape.Min }} { invalidParams.Add(request.NewErrParamMinLen("{{ .Name }}", {{ .Ref.Shape.Min }})) } {{- end }} {{ define "minVal" -}} if s.{{ .Name }} != nil && *s.{{ .Name }} < {{ .Ref.Shape.Min }} { invalidParams.Add(request.NewErrParamMinValue("{{ .Name }}", {{ .Ref.Shape.Min }})) } {{- end }} {{ define "nestedMapList" -}} if s.{{ .Name }} != nil { for i, v := range s.{{ .Name }} { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "{{ .Name }}", i), err.(request.ErrInvalidParams)) } } } {{- end }} {{ define "nestedStruct" -}} if s.{{ .Name }} != nil { if err := s.{{ .Name }}.Validate(); err != nil { invalidParams.AddNested("{{ .Name }}", err.(request.ErrInvalidParams)) } } {{- end }} `)) // GoCode returns the generated Go code for the Shape with its validation type. func (sv ShapeValidation) GoCode() string { var err error w := &bytes.Buffer{} switch sv.Type { case ShapeValidationRequired: err = validationGoCodeTmpls.ExecuteTemplate(w, "requiredValue", sv) case ShapeValidationMinVal: switch sv.Ref.Shape.Type { case "list", "map", "blob": err = validationGoCodeTmpls.ExecuteTemplate(w, "minLen", sv) case "string": err = validationGoCodeTmpls.ExecuteTemplate(w, "minLenString", sv) case "integer", "long", "float", "double": err = validationGoCodeTmpls.ExecuteTemplate(w, "minVal", sv) default: panic(fmt.Sprintf("ShapeValidation.GoCode, %s's type %s, no min value handling", sv.Name, sv.Ref.Shape.Type)) } case ShapeValidationNested: switch sv.Ref.Shape.Type { case "map", "list": err = validationGoCodeTmpls.ExecuteTemplate(w, "nestedMapList", sv) default: err = validationGoCodeTmpls.ExecuteTemplate(w, "nestedStruct", sv) } default: panic(fmt.Sprintf("ShapeValidation.GoCode, %s's type %d, unknown validation type", sv.Name, sv.Type)) } if err != nil { panic(fmt.Sprintf("ShapeValidation.GoCode failed, err: %v", err)) } return w.String() } // A ShapeValidations is a collection of shape validations needed nested within // a parent shape type ShapeValidations []ShapeValidation var validateShapeTmpl = template.Must(template.New("ValidateShape").Parse(` // Validate inspects the fields of the type to determine if they are valid. func (s *{{ .Shape.ShapeName }}) Validate() error { invalidParams := request.ErrInvalidParams{Context: "{{ .Shape.ShapeName }}"} {{ range $_, $v := .Validations -}} {{ $v.GoCode }} {{ end }} if invalidParams.Len() > 0 { return invalidParams } return nil } `)) // GoCode generates the Go code needed to perform validations for the // shape and its nested fields. func (vs ShapeValidations) GoCode(shape *Shape) string { buf := &bytes.Buffer{} validateShapeTmpl.Execute(buf, map[string]interface{}{ "Shape": shape, "Validations": vs, }) return buf.String() } // Has returns true or false if the ShapeValidations already contains the // the reference and validation type. func (vs ShapeValidations) Has(ref *ShapeRef, typ ShapeValidationType) bool { for _, v := range vs { if v.Ref == ref && v.Type == typ { return true } } return false } aws-sdk-go-1.4.22/private/model/api/shapetag_test.go000066400000000000000000000007421300374646400222730ustar00rootroot00000000000000// +build 1.6,codegen package api_test import ( "testing" "github.com/aws/aws-sdk-go/private/model/api" "github.com/stretchr/testify/assert" ) func TestShapeTagJoin(t *testing.T) { s := api.ShapeTags{ {Key: "location", Val: "query"}, {Key: "locationName", Val: "abc"}, {Key: "type", Val: "string"}, } expected := `location:"query" locationName:"abc" type:"string"` o := s.Join(" ") o2 := s.String() assert.Equal(t, expected, o) assert.Equal(t, expected, o2) } aws-sdk-go-1.4.22/private/model/api/waiters.go000066400000000000000000000072621300374646400211220ustar00rootroot00000000000000// +build codegen package api import ( "bytes" "encoding/json" "fmt" "os" "sort" "strings" "text/template" ) // A Waiter is an individual waiter definition. type Waiter struct { Name string Delay int MaxAttempts int OperationName string `json:"operation"` Operation *Operation Acceptors []WaitAcceptor } // A WaitAcceptor is an individual wait acceptor definition. type WaitAcceptor struct { Expected interface{} Matcher string State string Argument string } // WaitersGoCode generates and returns Go code for each of the waiters of // this API. func (a *API) WaitersGoCode() string { var buf bytes.Buffer fmt.Fprintf(&buf, "import (\n\t%q\n)", "github.com/aws/aws-sdk-go/private/waiter") for _, w := range a.Waiters { buf.WriteString(w.GoCode()) } return buf.String() } // used for unmarshaling from the waiter JSON file type waiterDefinitions struct { *API Waiters map[string]Waiter } // AttachWaiters reads a file of waiter definitions, and adds those to the API. // Will panic if an error occurs. func (a *API) AttachWaiters(filename string) { p := waiterDefinitions{API: a} f, err := os.Open(filename) defer f.Close() if err != nil { panic(err) } err = json.NewDecoder(f).Decode(&p) if err != nil { panic(err) } p.setup() } func (p *waiterDefinitions) setup() { p.API.Waiters = []Waiter{} i, keys := 0, make([]string, len(p.Waiters)) for k := range p.Waiters { keys[i] = k i++ } sort.Strings(keys) for _, n := range keys { e := p.Waiters[n] n = p.ExportableName(n) e.Name = n e.OperationName = p.ExportableName(e.OperationName) e.Operation = p.API.Operations[e.OperationName] if e.Operation == nil { panic("unknown operation " + e.OperationName + " for waiter " + n) } p.API.Waiters = append(p.API.Waiters, e) } } // ExpectedString returns the string that was expected by the WaitAcceptor func (a *WaitAcceptor) ExpectedString() string { switch a.Expected.(type) { case string: return fmt.Sprintf("%q", a.Expected) default: return fmt.Sprintf("%v", a.Expected) } } var waiterTmpls = template.Must(template.New("waiterTmpls").Parse(` {{ define "docstring" -}} // WaitUntil{{ .Name }} uses the {{ .Operation.API.NiceName }} API operation // {{ .OperationName }} to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. {{- end }} {{ define "waiter" }} {{ template "docstring" . }} func (c *{{ .Operation.API.StructName }}) WaitUntil{{ .Name }}(input {{ .Operation.InputRef.GoType }}) error { waiterCfg := waiter.Config{ Operation: "{{ .OperationName }}", Delay: {{ .Delay }}, MaxAttempts: {{ .MaxAttempts }}, Acceptors: []waiter.WaitAcceptor{ {{ range $_, $a := .Acceptors }}waiter.WaitAcceptor{ State: "{{ .State }}", Matcher: "{{ .Matcher }}", Argument: "{{ .Argument }}", Expected: {{ .ExpectedString }}, }, {{ end }} }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } {{- end }} {{ define "waiter interface" }} WaitUntil{{ .Name }}({{ .Operation.InputRef.GoTypeWithPkgName }}) error {{- end }} `)) // InterfaceSignature returns a string representing the Waiter's interface // function signature. func (w *Waiter) InterfaceSignature() string { var buf bytes.Buffer if err := waiterTmpls.ExecuteTemplate(&buf, "waiter interface", w); err != nil { panic(err) } return strings.TrimSpace(buf.String()) } // GoCode returns the generated Go code for an individual waiter. func (w *Waiter) GoCode() string { var buf bytes.Buffer if err := waiterTmpls.ExecuteTemplate(&buf, "waiter", w); err != nil { panic(err) } return buf.String() } aws-sdk-go-1.4.22/private/model/cli/000077500000000000000000000000001300374646400171045ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/model/cli/api-info/000077500000000000000000000000001300374646400206065ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/model/cli/api-info/api-info.go000066400000000000000000000010171300374646400226360ustar00rootroot00000000000000// +build codegen package main import ( "fmt" "os" "path/filepath" "sort" "github.com/aws/aws-sdk-go/private/model/api" ) func main() { dir, _ := os.Open(filepath.Join("models", "apis")) names, _ := dir.Readdirnames(0) for _, name := range names { m, _ := filepath.Glob(filepath.Join("models", "apis", name, "*", "api-2.json")) if len(m) == 0 { continue } sort.Strings(m) f := m[len(m)-1] a := api.API{} a.Attach(f) fmt.Printf("%s\t%s\n", a.Metadata.ServiceFullName, a.Metadata.APIVersion) } } aws-sdk-go-1.4.22/private/model/cli/gen-api/000077500000000000000000000000001300374646400204245ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/model/cli/gen-api/main.go000066400000000000000000000151471300374646400217070ustar00rootroot00000000000000// +build codegen // Command aws-gen-gocli parses a JSON description of an AWS API and generates a // Go file containing a client for the API. // // aws-gen-gocli apis/s3/2006-03-03/api-2.json package main import ( "flag" "fmt" "io/ioutil" "os" "path/filepath" "runtime/debug" "sort" "strings" "sync" "github.com/aws/aws-sdk-go/private/model/api" "github.com/aws/aws-sdk-go/private/util" ) type generateInfo struct { *api.API PackageDir string } var excludeServices = map[string]struct{}{ "importexport": {}, } // newGenerateInfo initializes the service API's folder structure for a specific service. // If the SERVICES environment variable is set, and this service is not apart of the list // this service will be skipped. func newGenerateInfo(modelFile, svcPath, svcImportPath string) *generateInfo { g := &generateInfo{API: &api.API{SvcClientImportPath: svcImportPath}} g.API.Attach(modelFile) if _, ok := excludeServices[g.API.PackageName()]; ok { return nil } paginatorsFile := strings.Replace(modelFile, "api-2.json", "paginators-1.json", -1) if _, err := os.Stat(paginatorsFile); err == nil { g.API.AttachPaginators(paginatorsFile) } else if !os.IsNotExist(err) { fmt.Println("api-2.json error:", err) } docsFile := strings.Replace(modelFile, "api-2.json", "docs-2.json", -1) if _, err := os.Stat(docsFile); err == nil { g.API.AttachDocs(docsFile) } else { fmt.Println("docs-2.json error:", err) } waitersFile := strings.Replace(modelFile, "api-2.json", "waiters-2.json", -1) if _, err := os.Stat(waitersFile); err == nil { g.API.AttachWaiters(waitersFile) } else if !os.IsNotExist(err) { fmt.Println("waiters-2.json error:", err) } g.API.Setup() if svc := os.Getenv("SERVICES"); svc != "" { svcs := strings.Split(svc, ",") included := false for _, s := range svcs { if s == g.API.PackageName() { included = true break } } if !included { // skip this non-included service return nil } } // ensure the directory exists pkgDir := filepath.Join(svcPath, g.API.PackageName()) os.MkdirAll(pkgDir, 0775) os.MkdirAll(filepath.Join(pkgDir, g.API.InterfacePackageName()), 0775) g.PackageDir = pkgDir return g } // Generates service api, examples, and interface from api json definition files. // // Flags: // -path alternative service path to write generated files to for each service. // // Env: // SERVICES comma separated list of services to generate. func main() { var svcPath, sessionPath, svcImportPath string flag.StringVar(&svcPath, "path", "service", "directory to generate service clients in") flag.StringVar(&sessionPath, "sessionPath", filepath.Join("aws", "session"), "generate session service client factories") flag.StringVar(&svcImportPath, "svc-import-path", "github.com/aws/aws-sdk-go/service", "namespace to generate service client Go code import path under") flag.Parse() files := []string{} for i := 0; i < flag.NArg(); i++ { file := flag.Arg(i) if strings.Contains(file, "*") { paths, _ := filepath.Glob(file) files = append(files, paths...) } else { files = append(files, file) } } for svcName := range excludeServices { if strings.Contains(os.Getenv("SERVICES"), svcName) { fmt.Printf("Service %s is not supported\n", svcName) os.Exit(1) } } sort.Strings(files) // Remove old API versions from list m := map[string]bool{} for i := range files { idx := len(files) - 1 - i parts := strings.Split(files[idx], string(filepath.Separator)) svc := parts[len(parts)-3] // service name is 2nd-to-last component if m[svc] { files[idx] = "" // wipe this one out if we already saw the service } m[svc] = true } wg := sync.WaitGroup{} for i := range files { filename := files[i] if filename == "" { // empty file continue } genInfo := newGenerateInfo(filename, svcPath, svcImportPath) if genInfo == nil { continue } if _, ok := excludeServices[genInfo.API.PackageName()]; ok { // Skip services not yet supported. continue } wg.Add(1) go func(g *generateInfo, filename string) { defer wg.Done() writeServiceFiles(g, filename) }(genInfo, filename) } wg.Wait() } func writeServiceFiles(g *generateInfo, filename string) { defer func() { if r := recover(); r != nil { fmt.Fprintf(os.Stderr, "Error generating %s\n%s\n%s\n", filename, r, debug.Stack()) } }() fmt.Printf("Generating %s (%s)...\n", g.API.PackageName(), g.API.Metadata.APIVersion) // write api.go and service.go files Must(writeAPIFile(g)) Must(writeExamplesFile(g)) Must(writeServiceFile(g)) Must(writeInterfaceFile(g)) Must(writeWaitersFile(g)) } // Must will panic if the error passed in is not nil. func Must(err error) { if err != nil { panic(err) } } const codeLayout = `// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. %s package %s %s ` func writeGoFile(file string, layout string, args ...interface{}) error { return ioutil.WriteFile(file, []byte(util.GoFmt(fmt.Sprintf(layout, args...))), 0664) } // writeExamplesFile writes out the service example file. func writeExamplesFile(g *generateInfo) error { return writeGoFile(filepath.Join(g.PackageDir, "examples_test.go"), codeLayout, "", g.API.PackageName()+"_test", g.API.ExampleGoCode(), ) } // writeServiceFile writes out the service initialization file. func writeServiceFile(g *generateInfo) error { return writeGoFile(filepath.Join(g.PackageDir, "service.go"), codeLayout, "", g.API.PackageName(), g.API.ServiceGoCode(), ) } // writeInterfaceFile writes out the service interface file. func writeInterfaceFile(g *generateInfo) error { const pkgDoc = ` // Package %s provides an interface to enable mocking the %s service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters.` return writeGoFile(filepath.Join(g.PackageDir, g.API.InterfacePackageName(), "interface.go"), codeLayout, fmt.Sprintf(pkgDoc, g.API.InterfacePackageName(), g.API.Metadata.ServiceFullName), g.API.InterfacePackageName(), g.API.InterfaceGoCode(), ) } func writeWaitersFile(g *generateInfo) error { if len(g.API.Waiters) == 0 { return nil } return writeGoFile(filepath.Join(g.PackageDir, "waiters.go"), codeLayout, "", g.API.PackageName(), g.API.WaitersGoCode(), ) } // writeAPIFile writes out the service api file. func writeAPIFile(g *generateInfo) error { return writeGoFile(filepath.Join(g.PackageDir, "api.go"), codeLayout, fmt.Sprintf("\n// Package %s provides a client for %s.", g.API.PackageName(), g.API.Metadata.ServiceFullName), g.API.PackageName(), g.API.APIGoCode(), ) } aws-sdk-go-1.4.22/private/model/cli/gen-endpoints/000077500000000000000000000000001300374646400216565ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/model/cli/gen-endpoints/main.go000066400000000000000000000017221300374646400231330ustar00rootroot00000000000000// +build codegen // Command aws-gen-goendpoints parses a JSON description of the AWS endpoint // discovery logic and generates a Go file which returns an endpoint. // // aws-gen-goendpoints apis/_endpoints.json aws/endpoints_map.go package main import ( "encoding/json" "os" "github.com/aws/aws-sdk-go/private/model" ) // Generates the endpoints from json description // // CLI Args: // [0] This file's execution path // [1] The definition file to use // [2] The output file to generate func main() { in, err := os.Open(os.Args[1]) if err != nil { panic(err) } defer in.Close() var endpoints struct { Version int Endpoints map[string]struct { Endpoint string SigningRegion string } } if err = json.NewDecoder(in).Decode(&endpoints); err != nil { panic(err) } out, err := os.Create(os.Args[2]) if err != nil { panic(err) } defer out.Close() if err := model.GenerateEndpoints(endpoints, out); err != nil { panic(err) } } aws-sdk-go-1.4.22/private/model/endpoints.go000066400000000000000000000021401300374646400206640ustar00rootroot00000000000000// +build codegen package model import ( "bytes" "go/format" "io" "text/template" ) // GenerateEndpoints writes a Go file to the given writer. func GenerateEndpoints(endpoints interface{}, w io.Writer) error { tmpl, err := template.New("endpoints").Parse(t) if err != nil { return err } out := bytes.NewBuffer(nil) if err = tmpl.Execute(out, endpoints); err != nil { return err } b, err := format.Source(bytes.TrimSpace(out.Bytes())) if err != nil { return err } _, err = io.Copy(w, bytes.NewReader(b)) return err } const t = ` package endpoints // THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. type endpointStruct struct { Version int Endpoints map[string]endpointEntry } type endpointEntry struct { Endpoint string SigningRegion string } var endpointsMap = endpointStruct{ Version: {{ .Version }}, Endpoints: map[string]endpointEntry{ {{ range $key, $entry := .Endpoints }}"{{ $key }}": endpointEntry{ Endpoint: "{{ $entry.Endpoint }}", {{ if ne $entry.SigningRegion "" }}SigningRegion: "{{ $entry.SigningRegion }}", {{ end }} }, {{ end }} }, } ` aws-sdk-go-1.4.22/private/protocol/000077500000000000000000000000001300374646400170765ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/protocol/ec2query/000077500000000000000000000000001300374646400206355ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/protocol/ec2query/build.go000066400000000000000000000022771300374646400222730ustar00rootroot00000000000000// Package ec2query provides serialization of AWS EC2 requests and responses. package ec2query //go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/input/ec2.json build_test.go import ( "net/url" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol/query/queryutil" ) // BuildHandler is a named request handler for building ec2query protocol requests var BuildHandler = request.NamedHandler{Name: "awssdk.ec2query.Build", Fn: Build} // Build builds a request for the EC2 protocol. func Build(r *request.Request) { body := url.Values{ "Action": {r.Operation.Name}, "Version": {r.ClientInfo.APIVersion}, } if err := queryutil.Parse(body, r.Params, true); err != nil { r.Error = awserr.New("SerializationError", "failed encoding EC2 Query request", err) } if r.ExpireTime == 0 { r.HTTPRequest.Method = "POST" r.HTTPRequest.Header.Set("Content-Type", "application/x-www-form-urlencoded; charset=utf-8") r.SetBufferBody([]byte(body.Encode())) } else { // This is a pre-signed request r.HTTPRequest.Method = "GET" r.HTTPRequest.URL.RawQuery = body.Encode() } } aws-sdk-go-1.4.22/private/protocol/ec2query/build_bench_test.go000066400000000000000000000043201300374646400244600ustar00rootroot00000000000000// +build bench package ec2query_test import ( "testing" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/private/protocol/ec2query" "github.com/aws/aws-sdk-go/service/ec2" ) func BenchmarkEC2QueryBuild_Complex_ec2AuthorizeSecurityGroupEgress(b *testing.B) { params := &ec2.AuthorizeSecurityGroupEgressInput{ GroupId: aws.String("String"), // Required CidrIp: aws.String("String"), DryRun: aws.Bool(true), FromPort: aws.Int64(1), IpPermissions: []*ec2.IpPermission{ { // Required FromPort: aws.Int64(1), IpProtocol: aws.String("String"), IpRanges: []*ec2.IpRange{ { // Required CidrIp: aws.String("String"), }, // More values... }, PrefixListIds: []*ec2.PrefixListId{ { // Required PrefixListId: aws.String("String"), }, // More values... }, ToPort: aws.Int64(1), UserIdGroupPairs: []*ec2.UserIdGroupPair{ { // Required GroupId: aws.String("String"), GroupName: aws.String("String"), UserId: aws.String("String"), }, // More values... }, }, // More values... }, IpProtocol: aws.String("String"), SourceSecurityGroupName: aws.String("String"), SourceSecurityGroupOwnerId: aws.String("String"), ToPort: aws.Int64(1), } benchEC2QueryBuild(b, "AuthorizeSecurityGroupEgress", params) } func BenchmarkEC2QueryBuild_Simple_ec2AttachNetworkInterface(b *testing.B) { params := &ec2.AttachNetworkInterfaceInput{ DeviceIndex: aws.Int64(1), // Required InstanceId: aws.String("String"), // Required NetworkInterfaceId: aws.String("String"), // Required DryRun: aws.Bool(true), } benchEC2QueryBuild(b, "AttachNetworkInterface", params) } func benchEC2QueryBuild(b *testing.B, opName string, params interface{}) { svc := awstesting.NewClient() svc.ServiceName = "ec2" svc.APIVersion = "2015-04-15" for i := 0; i < b.N; i++ { r := svc.NewRequest(&request.Operation{ Name: opName, HTTPMethod: "POST", HTTPPath: "/", }, params, nil) ec2query.Build(r) if r.Error != nil { b.Fatal("Unexpected error", r.Error) } } } aws-sdk-go-1.4.22/private/protocol/ec2query/build_test.go000066400000000000000000001554601300374646400233350ustar00rootroot00000000000000package ec2query_test import ( "bytes" "encoding/json" "encoding/xml" "fmt" "io" "io/ioutil" "net/http" "net/url" "testing" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/ec2query" "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil" "github.com/aws/aws-sdk-go/private/util" "github.com/stretchr/testify/assert" ) var _ bytes.Buffer // always import bytes var _ http.Request var _ json.Marshaler var _ time.Time var _ xmlutil.XMLNode var _ xml.Attr var _ = ioutil.Discard var _ = util.Trim("") var _ = url.Values{} var _ = io.EOF var _ = aws.String var _ = fmt.Println func init() { protocol.RandReader = &awstesting.ZeroReader{} } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService1ProtocolTest struct { *client.Client } // New creates a new instance of the InputService1ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService1ProtocolTest client from just a session. // svc := inputservice1protocoltest.New(mySession) // // // Create a InputService1ProtocolTest client with additional configuration // svc := inputservice1protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService1ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService1ProtocolTest { c := p.ClientConfig("inputservice1protocoltest", cfgs...) return newInputService1ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService1ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService1ProtocolTest { svc := &InputService1ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice1protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService1ProtocolTest operation and runs any // custom request initialization. func (c *InputService1ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService1TestCaseOperation1 = "OperationName" // InputService1TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService1TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService1TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService1TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService1TestCaseOperation1Request method. // req, resp := client.InputService1TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService1ProtocolTest) InputService1TestCaseOperation1Request(input *InputService1TestShapeInputService1TestCaseOperation1Input) (req *request.Request, output *InputService1TestShapeInputService1TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService1TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService1TestShapeInputService1TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService1TestShapeInputService1TestCaseOperation1Output{} req.Data = output return } // InputService1TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService1TestCaseOperation1 for usage and error information. func (c *InputService1ProtocolTest) InputService1TestCaseOperation1(input *InputService1TestShapeInputService1TestCaseOperation1Input) (*InputService1TestShapeInputService1TestCaseOperation1Output, error) { req, out := c.InputService1TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService1TestShapeInputService1TestCaseOperation1Input struct { _ struct{} `type:"structure"` Bar *string `type:"string"` Foo *string `type:"string"` } type InputService1TestShapeInputService1TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService2ProtocolTest struct { *client.Client } // New creates a new instance of the InputService2ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService2ProtocolTest client from just a session. // svc := inputservice2protocoltest.New(mySession) // // // Create a InputService2ProtocolTest client with additional configuration // svc := inputservice2protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService2ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService2ProtocolTest { c := p.ClientConfig("inputservice2protocoltest", cfgs...) return newInputService2ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService2ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService2ProtocolTest { svc := &InputService2ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice2protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService2ProtocolTest operation and runs any // custom request initialization. func (c *InputService2ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService2TestCaseOperation1 = "OperationName" // InputService2TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService2TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService2TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService2TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService2TestCaseOperation1Request method. // req, resp := client.InputService2TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService2ProtocolTest) InputService2TestCaseOperation1Request(input *InputService2TestShapeInputService2TestCaseOperation1Input) (req *request.Request, output *InputService2TestShapeInputService2TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService2TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService2TestShapeInputService2TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService2TestShapeInputService2TestCaseOperation1Output{} req.Data = output return } // InputService2TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService2TestCaseOperation1 for usage and error information. func (c *InputService2ProtocolTest) InputService2TestCaseOperation1(input *InputService2TestShapeInputService2TestCaseOperation1Input) (*InputService2TestShapeInputService2TestCaseOperation1Output, error) { req, out := c.InputService2TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService2TestShapeInputService2TestCaseOperation1Input struct { _ struct{} `type:"structure"` Bar *string `locationName:"barLocationName" type:"string"` Foo *string `type:"string"` Yuck *string `locationName:"yuckLocationName" queryName:"yuckQueryName" type:"string"` } type InputService2TestShapeInputService2TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService3ProtocolTest struct { *client.Client } // New creates a new instance of the InputService3ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService3ProtocolTest client from just a session. // svc := inputservice3protocoltest.New(mySession) // // // Create a InputService3ProtocolTest client with additional configuration // svc := inputservice3protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService3ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService3ProtocolTest { c := p.ClientConfig("inputservice3protocoltest", cfgs...) return newInputService3ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService3ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService3ProtocolTest { svc := &InputService3ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice3protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService3ProtocolTest operation and runs any // custom request initialization. func (c *InputService3ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService3TestCaseOperation1 = "OperationName" // InputService3TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService3TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService3TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService3TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService3TestCaseOperation1Request method. // req, resp := client.InputService3TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService3ProtocolTest) InputService3TestCaseOperation1Request(input *InputService3TestShapeInputService3TestCaseOperation1Input) (req *request.Request, output *InputService3TestShapeInputService3TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService3TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService3TestShapeInputService3TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService3TestShapeInputService3TestCaseOperation1Output{} req.Data = output return } // InputService3TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService3TestCaseOperation1 for usage and error information. func (c *InputService3ProtocolTest) InputService3TestCaseOperation1(input *InputService3TestShapeInputService3TestCaseOperation1Input) (*InputService3TestShapeInputService3TestCaseOperation1Output, error) { req, out := c.InputService3TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService3TestShapeInputService3TestCaseOperation1Input struct { _ struct{} `type:"structure"` StructArg *InputService3TestShapeStructType `locationName:"Struct" type:"structure"` } type InputService3TestShapeInputService3TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService3TestShapeStructType struct { _ struct{} `type:"structure"` ScalarArg *string `locationName:"Scalar" type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService4ProtocolTest struct { *client.Client } // New creates a new instance of the InputService4ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService4ProtocolTest client from just a session. // svc := inputservice4protocoltest.New(mySession) // // // Create a InputService4ProtocolTest client with additional configuration // svc := inputservice4protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService4ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService4ProtocolTest { c := p.ClientConfig("inputservice4protocoltest", cfgs...) return newInputService4ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService4ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService4ProtocolTest { svc := &InputService4ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice4protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService4ProtocolTest operation and runs any // custom request initialization. func (c *InputService4ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService4TestCaseOperation1 = "OperationName" // InputService4TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService4TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService4TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService4TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService4TestCaseOperation1Request method. // req, resp := client.InputService4TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService4ProtocolTest) InputService4TestCaseOperation1Request(input *InputService4TestShapeInputService4TestCaseOperation1Input) (req *request.Request, output *InputService4TestShapeInputService4TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService4TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService4TestShapeInputService4TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService4TestShapeInputService4TestCaseOperation1Output{} req.Data = output return } // InputService4TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService4TestCaseOperation1 for usage and error information. func (c *InputService4ProtocolTest) InputService4TestCaseOperation1(input *InputService4TestShapeInputService4TestCaseOperation1Input) (*InputService4TestShapeInputService4TestCaseOperation1Output, error) { req, out := c.InputService4TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService4TestShapeInputService4TestCaseOperation1Input struct { _ struct{} `type:"structure"` ListArg []*string `type:"list"` } type InputService4TestShapeInputService4TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService5ProtocolTest struct { *client.Client } // New creates a new instance of the InputService5ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService5ProtocolTest client from just a session. // svc := inputservice5protocoltest.New(mySession) // // // Create a InputService5ProtocolTest client with additional configuration // svc := inputservice5protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService5ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService5ProtocolTest { c := p.ClientConfig("inputservice5protocoltest", cfgs...) return newInputService5ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService5ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService5ProtocolTest { svc := &InputService5ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice5protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService5ProtocolTest operation and runs any // custom request initialization. func (c *InputService5ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService5TestCaseOperation1 = "OperationName" // InputService5TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService5TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService5TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService5TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService5TestCaseOperation1Request method. // req, resp := client.InputService5TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService5ProtocolTest) InputService5TestCaseOperation1Request(input *InputService5TestShapeInputService5TestCaseOperation1Input) (req *request.Request, output *InputService5TestShapeInputService5TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService5TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService5TestShapeInputService5TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService5TestShapeInputService5TestCaseOperation1Output{} req.Data = output return } // InputService5TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService5TestCaseOperation1 for usage and error information. func (c *InputService5ProtocolTest) InputService5TestCaseOperation1(input *InputService5TestShapeInputService5TestCaseOperation1Input) (*InputService5TestShapeInputService5TestCaseOperation1Output, error) { req, out := c.InputService5TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService5TestShapeInputService5TestCaseOperation1Input struct { _ struct{} `type:"structure"` ListArg []*string `locationName:"ListMemberName" locationNameList:"item" type:"list"` } type InputService5TestShapeInputService5TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService6ProtocolTest struct { *client.Client } // New creates a new instance of the InputService6ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService6ProtocolTest client from just a session. // svc := inputservice6protocoltest.New(mySession) // // // Create a InputService6ProtocolTest client with additional configuration // svc := inputservice6protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService6ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService6ProtocolTest { c := p.ClientConfig("inputservice6protocoltest", cfgs...) return newInputService6ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService6ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService6ProtocolTest { svc := &InputService6ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice6protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService6ProtocolTest operation and runs any // custom request initialization. func (c *InputService6ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService6TestCaseOperation1 = "OperationName" // InputService6TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService6TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService6TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService6TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService6TestCaseOperation1Request method. // req, resp := client.InputService6TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService6ProtocolTest) InputService6TestCaseOperation1Request(input *InputService6TestShapeInputService6TestCaseOperation1Input) (req *request.Request, output *InputService6TestShapeInputService6TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService6TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService6TestShapeInputService6TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService6TestShapeInputService6TestCaseOperation1Output{} req.Data = output return } // InputService6TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService6TestCaseOperation1 for usage and error information. func (c *InputService6ProtocolTest) InputService6TestCaseOperation1(input *InputService6TestShapeInputService6TestCaseOperation1Input) (*InputService6TestShapeInputService6TestCaseOperation1Output, error) { req, out := c.InputService6TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService6TestShapeInputService6TestCaseOperation1Input struct { _ struct{} `type:"structure"` ListArg []*string `locationName:"ListMemberName" queryName:"ListQueryName" locationNameList:"item" type:"list"` } type InputService6TestShapeInputService6TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService7ProtocolTest struct { *client.Client } // New creates a new instance of the InputService7ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService7ProtocolTest client from just a session. // svc := inputservice7protocoltest.New(mySession) // // // Create a InputService7ProtocolTest client with additional configuration // svc := inputservice7protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService7ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService7ProtocolTest { c := p.ClientConfig("inputservice7protocoltest", cfgs...) return newInputService7ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService7ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService7ProtocolTest { svc := &InputService7ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice7protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService7ProtocolTest operation and runs any // custom request initialization. func (c *InputService7ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService7TestCaseOperation1 = "OperationName" // InputService7TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService7TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService7TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService7TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService7TestCaseOperation1Request method. // req, resp := client.InputService7TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService7ProtocolTest) InputService7TestCaseOperation1Request(input *InputService7TestShapeInputService7TestCaseOperation1Input) (req *request.Request, output *InputService7TestShapeInputService7TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService7TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService7TestShapeInputService7TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService7TestShapeInputService7TestCaseOperation1Output{} req.Data = output return } // InputService7TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService7TestCaseOperation1 for usage and error information. func (c *InputService7ProtocolTest) InputService7TestCaseOperation1(input *InputService7TestShapeInputService7TestCaseOperation1Input) (*InputService7TestShapeInputService7TestCaseOperation1Output, error) { req, out := c.InputService7TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService7TestShapeInputService7TestCaseOperation1Input struct { _ struct{} `type:"structure"` // BlobArg is automatically base64 encoded/decoded by the SDK. BlobArg []byte `type:"blob"` } type InputService7TestShapeInputService7TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService8ProtocolTest struct { *client.Client } // New creates a new instance of the InputService8ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService8ProtocolTest client from just a session. // svc := inputservice8protocoltest.New(mySession) // // // Create a InputService8ProtocolTest client with additional configuration // svc := inputservice8protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService8ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService8ProtocolTest { c := p.ClientConfig("inputservice8protocoltest", cfgs...) return newInputService8ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService8ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService8ProtocolTest { svc := &InputService8ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice8protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService8ProtocolTest operation and runs any // custom request initialization. func (c *InputService8ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService8TestCaseOperation1 = "OperationName" // InputService8TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService8TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService8TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService8TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService8TestCaseOperation1Request method. // req, resp := client.InputService8TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService8ProtocolTest) InputService8TestCaseOperation1Request(input *InputService8TestShapeInputService8TestCaseOperation1Input) (req *request.Request, output *InputService8TestShapeInputService8TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService8TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService8TestShapeInputService8TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService8TestShapeInputService8TestCaseOperation1Output{} req.Data = output return } // InputService8TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService8TestCaseOperation1 for usage and error information. func (c *InputService8ProtocolTest) InputService8TestCaseOperation1(input *InputService8TestShapeInputService8TestCaseOperation1Input) (*InputService8TestShapeInputService8TestCaseOperation1Output, error) { req, out := c.InputService8TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService8TestShapeInputService8TestCaseOperation1Input struct { _ struct{} `type:"structure"` TimeArg *time.Time `type:"timestamp" timestampFormat:"iso8601"` } type InputService8TestShapeInputService8TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService9ProtocolTest struct { *client.Client } // New creates a new instance of the InputService9ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService9ProtocolTest client from just a session. // svc := inputservice9protocoltest.New(mySession) // // // Create a InputService9ProtocolTest client with additional configuration // svc := inputservice9protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService9ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService9ProtocolTest { c := p.ClientConfig("inputservice9protocoltest", cfgs...) return newInputService9ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService9ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService9ProtocolTest { svc := &InputService9ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice9protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService9ProtocolTest operation and runs any // custom request initialization. func (c *InputService9ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService9TestCaseOperation1 = "OperationName" // InputService9TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService9TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService9TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService9TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService9TestCaseOperation1Request method. // req, resp := client.InputService9TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService9ProtocolTest) InputService9TestCaseOperation1Request(input *InputService9TestShapeInputShape) (req *request.Request, output *InputService9TestShapeInputService9TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService9TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService9TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService9TestShapeInputService9TestCaseOperation1Output{} req.Data = output return } // InputService9TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService9TestCaseOperation1 for usage and error information. func (c *InputService9ProtocolTest) InputService9TestCaseOperation1(input *InputService9TestShapeInputShape) (*InputService9TestShapeInputService9TestCaseOperation1Output, error) { req, out := c.InputService9TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService9TestCaseOperation2 = "OperationName" // InputService9TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService9TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService9TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService9TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService9TestCaseOperation2Request method. // req, resp := client.InputService9TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService9ProtocolTest) InputService9TestCaseOperation2Request(input *InputService9TestShapeInputShape) (req *request.Request, output *InputService9TestShapeInputService9TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService9TestCaseOperation2, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService9TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService9TestShapeInputService9TestCaseOperation2Output{} req.Data = output return } // InputService9TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService9TestCaseOperation2 for usage and error information. func (c *InputService9ProtocolTest) InputService9TestCaseOperation2(input *InputService9TestShapeInputShape) (*InputService9TestShapeInputService9TestCaseOperation2Output, error) { req, out := c.InputService9TestCaseOperation2Request(input) err := req.Send() return out, err } type InputService9TestShapeInputService9TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService9TestShapeInputService9TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService9TestShapeInputShape struct { _ struct{} `type:"structure"` Token *string `type:"string" idempotencyToken:"true"` } // // Tests begin here // func TestInputService1ProtocolTestScalarMembersCase1(t *testing.T) { svc := NewInputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService1TestShapeInputService1TestCaseOperation1Input{ Bar: aws.String("val2"), Foo: aws.String("val1"), } req, _ := svc.InputService1TestCaseOperation1Request(input) r := req.HTTPRequest // build request ec2query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&Bar=val2&Foo=val1&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService2ProtocolTestStructureWithLocationNameAndQueryNameAppliedToMembersCase1(t *testing.T) { svc := NewInputService2ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService2TestShapeInputService2TestCaseOperation1Input{ Bar: aws.String("val2"), Foo: aws.String("val1"), Yuck: aws.String("val3"), } req, _ := svc.InputService2TestCaseOperation1Request(input) r := req.HTTPRequest // build request ec2query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&BarLocationName=val2&Foo=val1&Version=2014-01-01&yuckQueryName=val3`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService3ProtocolTestNestedStructureMembersCase1(t *testing.T) { svc := NewInputService3ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService3TestShapeInputService3TestCaseOperation1Input{ StructArg: &InputService3TestShapeStructType{ ScalarArg: aws.String("foo"), }, } req, _ := svc.InputService3TestCaseOperation1Request(input) r := req.HTTPRequest // build request ec2query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&Struct.Scalar=foo&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService4ProtocolTestListTypesCase1(t *testing.T) { svc := NewInputService4ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService4TestShapeInputService4TestCaseOperation1Input{ ListArg: []*string{ aws.String("foo"), aws.String("bar"), aws.String("baz"), }, } req, _ := svc.InputService4TestCaseOperation1Request(input) r := req.HTTPRequest // build request ec2query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&ListArg.1=foo&ListArg.2=bar&ListArg.3=baz&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService5ProtocolTestListWithLocationNameAppliedToMemberCase1(t *testing.T) { svc := NewInputService5ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService5TestShapeInputService5TestCaseOperation1Input{ ListArg: []*string{ aws.String("a"), aws.String("b"), aws.String("c"), }, } req, _ := svc.InputService5TestCaseOperation1Request(input) r := req.HTTPRequest // build request ec2query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&ListMemberName.1=a&ListMemberName.2=b&ListMemberName.3=c&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService6ProtocolTestListWithLocationNameAndQueryNameCase1(t *testing.T) { svc := NewInputService6ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService6TestShapeInputService6TestCaseOperation1Input{ ListArg: []*string{ aws.String("a"), aws.String("b"), aws.String("c"), }, } req, _ := svc.InputService6TestCaseOperation1Request(input) r := req.HTTPRequest // build request ec2query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&ListQueryName.1=a&ListQueryName.2=b&ListQueryName.3=c&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService7ProtocolTestBase64EncodedBlobsCase1(t *testing.T) { svc := NewInputService7ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService7TestShapeInputService7TestCaseOperation1Input{ BlobArg: []byte("foo"), } req, _ := svc.InputService7TestCaseOperation1Request(input) r := req.HTTPRequest // build request ec2query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&BlobArg=Zm9v&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService8ProtocolTestTimestampValuesCase1(t *testing.T) { svc := NewInputService8ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService8TestShapeInputService8TestCaseOperation1Input{ TimeArg: aws.Time(time.Unix(1422172800, 0)), } req, _ := svc.InputService8TestCaseOperation1Request(input) r := req.HTTPRequest // build request ec2query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&TimeArg=2015-01-25T08%3A00%3A00Z&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService9ProtocolTestIdempotencyTokenAutoFillCase1(t *testing.T) { svc := NewInputService9ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService9TestShapeInputShape{ Token: aws.String("abc123"), } req, _ := svc.InputService9TestCaseOperation1Request(input) r := req.HTTPRequest // build request ec2query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Token=abc123`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService9ProtocolTestIdempotencyTokenAutoFillCase2(t *testing.T) { svc := NewInputService9ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService9TestShapeInputShape{} req, _ := svc.InputService9TestCaseOperation2Request(input) r := req.HTTPRequest // build request ec2query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Token=00000000-0000-4000-8000-000000000000`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } aws-sdk-go-1.4.22/private/protocol/ec2query/unmarshal.go000066400000000000000000000042271300374646400231630ustar00rootroot00000000000000package ec2query //go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/output/ec2.json unmarshal_test.go import ( "encoding/xml" "io" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil" ) // UnmarshalHandler is a named request handler for unmarshaling ec2query protocol requests var UnmarshalHandler = request.NamedHandler{Name: "awssdk.ec2query.Unmarshal", Fn: Unmarshal} // UnmarshalMetaHandler is a named request handler for unmarshaling ec2query protocol request metadata var UnmarshalMetaHandler = request.NamedHandler{Name: "awssdk.ec2query.UnmarshalMeta", Fn: UnmarshalMeta} // UnmarshalErrorHandler is a named request handler for unmarshaling ec2query protocol request errors var UnmarshalErrorHandler = request.NamedHandler{Name: "awssdk.ec2query.UnmarshalError", Fn: UnmarshalError} // Unmarshal unmarshals a response body for the EC2 protocol. func Unmarshal(r *request.Request) { defer r.HTTPResponse.Body.Close() if r.DataFilled() { decoder := xml.NewDecoder(r.HTTPResponse.Body) err := xmlutil.UnmarshalXML(r.Data, decoder, "") if err != nil { r.Error = awserr.New("SerializationError", "failed decoding EC2 Query response", err) return } } } // UnmarshalMeta unmarshals response headers for the EC2 protocol. func UnmarshalMeta(r *request.Request) { // TODO implement unmarshaling of request IDs } type xmlErrorResponse struct { XMLName xml.Name `xml:"Response"` Code string `xml:"Errors>Error>Code"` Message string `xml:"Errors>Error>Message"` RequestID string `xml:"RequestID"` } // UnmarshalError unmarshals a response error for the EC2 protocol. func UnmarshalError(r *request.Request) { defer r.HTTPResponse.Body.Close() resp := &xmlErrorResponse{} err := xml.NewDecoder(r.HTTPResponse.Body).Decode(resp) if err != nil && err != io.EOF { r.Error = awserr.New("SerializationError", "failed decoding EC2 Query error response", err) } else { r.Error = awserr.NewRequestFailure( awserr.New(resp.Code, resp.Message, nil), r.HTTPResponse.StatusCode, resp.RequestID, ) } } aws-sdk-go-1.4.22/private/protocol/ec2query/unmarshal_test.go000066400000000000000000001464771300374646400242400ustar00rootroot00000000000000package ec2query_test import ( "bytes" "encoding/json" "encoding/xml" "fmt" "io" "io/ioutil" "net/http" "net/url" "testing" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/ec2query" "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil" "github.com/aws/aws-sdk-go/private/util" "github.com/stretchr/testify/assert" ) var _ bytes.Buffer // always import bytes var _ http.Request var _ json.Marshaler var _ time.Time var _ xmlutil.XMLNode var _ xml.Attr var _ = ioutil.Discard var _ = util.Trim("") var _ = url.Values{} var _ = io.EOF var _ = aws.String var _ = fmt.Println func init() { protocol.RandReader = &awstesting.ZeroReader{} } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService1ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService1ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService1ProtocolTest client from just a session. // svc := outputservice1protocoltest.New(mySession) // // // Create a OutputService1ProtocolTest client with additional configuration // svc := outputservice1protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService1ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService1ProtocolTest { c := p.ClientConfig("outputservice1protocoltest", cfgs...) return newOutputService1ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService1ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService1ProtocolTest { svc := &OutputService1ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice1protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService1ProtocolTest operation and runs any // custom request initialization. func (c *OutputService1ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService1TestCaseOperation1 = "OperationName" // OutputService1TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService1TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService1TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService1TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService1TestCaseOperation1Request method. // req, resp := client.OutputService1TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService1ProtocolTest) OutputService1TestCaseOperation1Request(input *OutputService1TestShapeOutputService1TestCaseOperation1Input) (req *request.Request, output *OutputService1TestShapeOutputService1TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService1TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService1TestShapeOutputService1TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService1TestShapeOutputService1TestCaseOperation1Output{} req.Data = output return } // OutputService1TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService1TestCaseOperation1 for usage and error information. func (c *OutputService1ProtocolTest) OutputService1TestCaseOperation1(input *OutputService1TestShapeOutputService1TestCaseOperation1Input) (*OutputService1TestShapeOutputService1TestCaseOperation1Output, error) { req, out := c.OutputService1TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService1TestShapeOutputService1TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService1TestShapeOutputService1TestCaseOperation1Output struct { _ struct{} `type:"structure"` Char *string `type:"character"` Double *float64 `type:"double"` FalseBool *bool `type:"boolean"` Float *float64 `type:"float"` Long *int64 `type:"long"` Num *int64 `locationName:"FooNum" type:"integer"` Str *string `type:"string"` TrueBool *bool `type:"boolean"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService2ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService2ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService2ProtocolTest client from just a session. // svc := outputservice2protocoltest.New(mySession) // // // Create a OutputService2ProtocolTest client with additional configuration // svc := outputservice2protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService2ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService2ProtocolTest { c := p.ClientConfig("outputservice2protocoltest", cfgs...) return newOutputService2ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService2ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService2ProtocolTest { svc := &OutputService2ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice2protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService2ProtocolTest operation and runs any // custom request initialization. func (c *OutputService2ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService2TestCaseOperation1 = "OperationName" // OutputService2TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService2TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService2TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService2TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService2TestCaseOperation1Request method. // req, resp := client.OutputService2TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService2ProtocolTest) OutputService2TestCaseOperation1Request(input *OutputService2TestShapeOutputService2TestCaseOperation1Input) (req *request.Request, output *OutputService2TestShapeOutputService2TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService2TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService2TestShapeOutputService2TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService2TestShapeOutputService2TestCaseOperation1Output{} req.Data = output return } // OutputService2TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService2TestCaseOperation1 for usage and error information. func (c *OutputService2ProtocolTest) OutputService2TestCaseOperation1(input *OutputService2TestShapeOutputService2TestCaseOperation1Input) (*OutputService2TestShapeOutputService2TestCaseOperation1Output, error) { req, out := c.OutputService2TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService2TestShapeOutputService2TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService2TestShapeOutputService2TestCaseOperation1Output struct { _ struct{} `type:"structure"` // Blob is automatically base64 encoded/decoded by the SDK. Blob []byte `type:"blob"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService3ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService3ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService3ProtocolTest client from just a session. // svc := outputservice3protocoltest.New(mySession) // // // Create a OutputService3ProtocolTest client with additional configuration // svc := outputservice3protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService3ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService3ProtocolTest { c := p.ClientConfig("outputservice3protocoltest", cfgs...) return newOutputService3ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService3ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService3ProtocolTest { svc := &OutputService3ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice3protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService3ProtocolTest operation and runs any // custom request initialization. func (c *OutputService3ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService3TestCaseOperation1 = "OperationName" // OutputService3TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService3TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService3TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService3TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService3TestCaseOperation1Request method. // req, resp := client.OutputService3TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService3ProtocolTest) OutputService3TestCaseOperation1Request(input *OutputService3TestShapeOutputService3TestCaseOperation1Input) (req *request.Request, output *OutputService3TestShapeOutputService3TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService3TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService3TestShapeOutputService3TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService3TestShapeOutputService3TestCaseOperation1Output{} req.Data = output return } // OutputService3TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService3TestCaseOperation1 for usage and error information. func (c *OutputService3ProtocolTest) OutputService3TestCaseOperation1(input *OutputService3TestShapeOutputService3TestCaseOperation1Input) (*OutputService3TestShapeOutputService3TestCaseOperation1Output, error) { req, out := c.OutputService3TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService3TestShapeOutputService3TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService3TestShapeOutputService3TestCaseOperation1Output struct { _ struct{} `type:"structure"` ListMember []*string `type:"list"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService4ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService4ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService4ProtocolTest client from just a session. // svc := outputservice4protocoltest.New(mySession) // // // Create a OutputService4ProtocolTest client with additional configuration // svc := outputservice4protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService4ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService4ProtocolTest { c := p.ClientConfig("outputservice4protocoltest", cfgs...) return newOutputService4ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService4ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService4ProtocolTest { svc := &OutputService4ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice4protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService4ProtocolTest operation and runs any // custom request initialization. func (c *OutputService4ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService4TestCaseOperation1 = "OperationName" // OutputService4TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService4TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService4TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService4TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService4TestCaseOperation1Request method. // req, resp := client.OutputService4TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService4ProtocolTest) OutputService4TestCaseOperation1Request(input *OutputService4TestShapeOutputService4TestCaseOperation1Input) (req *request.Request, output *OutputService4TestShapeOutputService4TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService4TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService4TestShapeOutputService4TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService4TestShapeOutputService4TestCaseOperation1Output{} req.Data = output return } // OutputService4TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService4TestCaseOperation1 for usage and error information. func (c *OutputService4ProtocolTest) OutputService4TestCaseOperation1(input *OutputService4TestShapeOutputService4TestCaseOperation1Input) (*OutputService4TestShapeOutputService4TestCaseOperation1Output, error) { req, out := c.OutputService4TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService4TestShapeOutputService4TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService4TestShapeOutputService4TestCaseOperation1Output struct { _ struct{} `type:"structure"` ListMember []*string `locationNameList:"item" type:"list"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService5ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService5ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService5ProtocolTest client from just a session. // svc := outputservice5protocoltest.New(mySession) // // // Create a OutputService5ProtocolTest client with additional configuration // svc := outputservice5protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService5ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService5ProtocolTest { c := p.ClientConfig("outputservice5protocoltest", cfgs...) return newOutputService5ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService5ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService5ProtocolTest { svc := &OutputService5ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice5protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService5ProtocolTest operation and runs any // custom request initialization. func (c *OutputService5ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService5TestCaseOperation1 = "OperationName" // OutputService5TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService5TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService5TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService5TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService5TestCaseOperation1Request method. // req, resp := client.OutputService5TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService5ProtocolTest) OutputService5TestCaseOperation1Request(input *OutputService5TestShapeOutputService5TestCaseOperation1Input) (req *request.Request, output *OutputService5TestShapeOutputService5TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService5TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService5TestShapeOutputService5TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService5TestShapeOutputService5TestCaseOperation1Output{} req.Data = output return } // OutputService5TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService5TestCaseOperation1 for usage and error information. func (c *OutputService5ProtocolTest) OutputService5TestCaseOperation1(input *OutputService5TestShapeOutputService5TestCaseOperation1Input) (*OutputService5TestShapeOutputService5TestCaseOperation1Output, error) { req, out := c.OutputService5TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService5TestShapeOutputService5TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService5TestShapeOutputService5TestCaseOperation1Output struct { _ struct{} `type:"structure"` ListMember []*string `type:"list" flattened:"true"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService6ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService6ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService6ProtocolTest client from just a session. // svc := outputservice6protocoltest.New(mySession) // // // Create a OutputService6ProtocolTest client with additional configuration // svc := outputservice6protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService6ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService6ProtocolTest { c := p.ClientConfig("outputservice6protocoltest", cfgs...) return newOutputService6ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService6ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService6ProtocolTest { svc := &OutputService6ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice6protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService6ProtocolTest operation and runs any // custom request initialization. func (c *OutputService6ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService6TestCaseOperation1 = "OperationName" // OutputService6TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService6TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService6TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService6TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService6TestCaseOperation1Request method. // req, resp := client.OutputService6TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService6ProtocolTest) OutputService6TestCaseOperation1Request(input *OutputService6TestShapeOutputService6TestCaseOperation1Input) (req *request.Request, output *OutputService6TestShapeOutputService6TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService6TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService6TestShapeOutputService6TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService6TestShapeOutputService6TestCaseOperation1Output{} req.Data = output return } // OutputService6TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService6TestCaseOperation1 for usage and error information. func (c *OutputService6ProtocolTest) OutputService6TestCaseOperation1(input *OutputService6TestShapeOutputService6TestCaseOperation1Input) (*OutputService6TestShapeOutputService6TestCaseOperation1Output, error) { req, out := c.OutputService6TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService6TestShapeOutputService6TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService6TestShapeOutputService6TestCaseOperation1Output struct { _ struct{} `type:"structure"` Map map[string]*OutputService6TestShapeStructureType `type:"map"` } type OutputService6TestShapeStructureType struct { _ struct{} `type:"structure"` Foo *string `locationName:"foo" type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService7ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService7ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService7ProtocolTest client from just a session. // svc := outputservice7protocoltest.New(mySession) // // // Create a OutputService7ProtocolTest client with additional configuration // svc := outputservice7protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService7ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService7ProtocolTest { c := p.ClientConfig("outputservice7protocoltest", cfgs...) return newOutputService7ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService7ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService7ProtocolTest { svc := &OutputService7ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice7protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService7ProtocolTest operation and runs any // custom request initialization. func (c *OutputService7ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService7TestCaseOperation1 = "OperationName" // OutputService7TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService7TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService7TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService7TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService7TestCaseOperation1Request method. // req, resp := client.OutputService7TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService7ProtocolTest) OutputService7TestCaseOperation1Request(input *OutputService7TestShapeOutputService7TestCaseOperation1Input) (req *request.Request, output *OutputService7TestShapeOutputService7TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService7TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService7TestShapeOutputService7TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService7TestShapeOutputService7TestCaseOperation1Output{} req.Data = output return } // OutputService7TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService7TestCaseOperation1 for usage and error information. func (c *OutputService7ProtocolTest) OutputService7TestCaseOperation1(input *OutputService7TestShapeOutputService7TestCaseOperation1Input) (*OutputService7TestShapeOutputService7TestCaseOperation1Output, error) { req, out := c.OutputService7TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService7TestShapeOutputService7TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService7TestShapeOutputService7TestCaseOperation1Output struct { _ struct{} `type:"structure"` Map map[string]*string `type:"map" flattened:"true"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService8ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService8ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService8ProtocolTest client from just a session. // svc := outputservice8protocoltest.New(mySession) // // // Create a OutputService8ProtocolTest client with additional configuration // svc := outputservice8protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService8ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService8ProtocolTest { c := p.ClientConfig("outputservice8protocoltest", cfgs...) return newOutputService8ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService8ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService8ProtocolTest { svc := &OutputService8ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice8protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService8ProtocolTest operation and runs any // custom request initialization. func (c *OutputService8ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService8TestCaseOperation1 = "OperationName" // OutputService8TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService8TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService8TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService8TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService8TestCaseOperation1Request method. // req, resp := client.OutputService8TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService8ProtocolTest) OutputService8TestCaseOperation1Request(input *OutputService8TestShapeOutputService8TestCaseOperation1Input) (req *request.Request, output *OutputService8TestShapeOutputService8TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService8TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService8TestShapeOutputService8TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService8TestShapeOutputService8TestCaseOperation1Output{} req.Data = output return } // OutputService8TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService8TestCaseOperation1 for usage and error information. func (c *OutputService8ProtocolTest) OutputService8TestCaseOperation1(input *OutputService8TestShapeOutputService8TestCaseOperation1Input) (*OutputService8TestShapeOutputService8TestCaseOperation1Output, error) { req, out := c.OutputService8TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService8TestShapeOutputService8TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService8TestShapeOutputService8TestCaseOperation1Output struct { _ struct{} `type:"structure"` Map map[string]*string `locationNameKey:"foo" locationNameValue:"bar" type:"map" flattened:"true"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService9ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService9ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService9ProtocolTest client from just a session. // svc := outputservice9protocoltest.New(mySession) // // // Create a OutputService9ProtocolTest client with additional configuration // svc := outputservice9protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService9ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService9ProtocolTest { c := p.ClientConfig("outputservice9protocoltest", cfgs...) return newOutputService9ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService9ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService9ProtocolTest { svc := &OutputService9ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice9protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService9ProtocolTest operation and runs any // custom request initialization. func (c *OutputService9ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService9TestCaseOperation1 = "OperationName" // OutputService9TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService9TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService9TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService9TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService9TestCaseOperation1Request method. // req, resp := client.OutputService9TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService9ProtocolTest) OutputService9TestCaseOperation1Request(input *OutputService9TestShapeOutputService9TestCaseOperation1Input) (req *request.Request, output *OutputService9TestShapeOutputService9TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService9TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService9TestShapeOutputService9TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService9TestShapeOutputService9TestCaseOperation1Output{} req.Data = output return } // OutputService9TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService9TestCaseOperation1 for usage and error information. func (c *OutputService9ProtocolTest) OutputService9TestCaseOperation1(input *OutputService9TestShapeOutputService9TestCaseOperation1Input) (*OutputService9TestShapeOutputService9TestCaseOperation1Output, error) { req, out := c.OutputService9TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService9TestShapeOutputService9TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService9TestShapeOutputService9TestCaseOperation1Output struct { _ struct{} `type:"structure"` Foo *string `type:"string"` } // // Tests begin here // func TestOutputService1ProtocolTestScalarMembersCase1(t *testing.T) { svc := NewOutputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("myname123falsetrue1.21.3200arequest-id")) req, out := svc.OutputService1TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response ec2query.UnmarshalMeta(req) ec2query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "a", *out.Char) assert.Equal(t, 1.3, *out.Double) assert.Equal(t, false, *out.FalseBool) assert.Equal(t, 1.2, *out.Float) assert.Equal(t, int64(200), *out.Long) assert.Equal(t, int64(123), *out.Num) assert.Equal(t, "myname", *out.Str) assert.Equal(t, true, *out.TrueBool) } func TestOutputService2ProtocolTestBlobCase1(t *testing.T) { svc := NewOutputService2ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("dmFsdWU=requestid")) req, out := svc.OutputService2TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response ec2query.UnmarshalMeta(req) ec2query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "value", string(out.Blob)) } func TestOutputService3ProtocolTestListsCase1(t *testing.T) { svc := NewOutputService3ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("abc123requestid")) req, out := svc.OutputService3TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response ec2query.UnmarshalMeta(req) ec2query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "abc", *out.ListMember[0]) assert.Equal(t, "123", *out.ListMember[1]) } func TestOutputService4ProtocolTestListWithCustomMemberNameCase1(t *testing.T) { svc := NewOutputService4ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("abc123requestid")) req, out := svc.OutputService4TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response ec2query.UnmarshalMeta(req) ec2query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "abc", *out.ListMember[0]) assert.Equal(t, "123", *out.ListMember[1]) } func TestOutputService5ProtocolTestFlattenedListCase1(t *testing.T) { svc := NewOutputService5ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("abc123requestid")) req, out := svc.OutputService5TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response ec2query.UnmarshalMeta(req) ec2query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "abc", *out.ListMember[0]) assert.Equal(t, "123", *out.ListMember[1]) } func TestOutputService6ProtocolTestNormalMapCase1(t *testing.T) { svc := NewOutputService6ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("quxbarbazbamrequestid")) req, out := svc.OutputService6TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response ec2query.UnmarshalMeta(req) ec2query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "bam", *out.Map["baz"].Foo) assert.Equal(t, "bar", *out.Map["qux"].Foo) } func TestOutputService7ProtocolTestFlattenedMapCase1(t *testing.T) { svc := NewOutputService7ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("quxbarbazbamrequestid")) req, out := svc.OutputService7TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response ec2query.UnmarshalMeta(req) ec2query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "bam", *out.Map["baz"]) assert.Equal(t, "bar", *out.Map["qux"]) } func TestOutputService8ProtocolTestNamedMapCase1(t *testing.T) { svc := NewOutputService8ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("quxbarbazbamrequestid")) req, out := svc.OutputService8TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response ec2query.UnmarshalMeta(req) ec2query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "bam", *out.Map["baz"]) assert.Equal(t, "bar", *out.Map["qux"]) } func TestOutputService9ProtocolTestEmptyStringCase1(t *testing.T) { svc := NewOutputService9ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("requestid")) req, out := svc.OutputService9TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response ec2query.UnmarshalMeta(req) ec2query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "", *out.Foo) } aws-sdk-go-1.4.22/private/protocol/idempotency.go000066400000000000000000000041021300374646400217420ustar00rootroot00000000000000package protocol import ( "crypto/rand" "fmt" "reflect" ) // RandReader is the random reader the protocol package will use to read // random bytes from. This is exported for testing, and should not be used. var RandReader = rand.Reader const idempotencyTokenFillTag = `idempotencyToken` // CanSetIdempotencyToken returns true if the struct field should be // automatically populated with a Idempotency token. // // Only *string and string type fields that are tagged with idempotencyToken // which are not already set can be auto filled. func CanSetIdempotencyToken(v reflect.Value, f reflect.StructField) bool { switch u := v.Interface().(type) { // To auto fill an Idempotency token the field must be a string, // tagged for auto fill, and have a zero value. case *string: return u == nil && len(f.Tag.Get(idempotencyTokenFillTag)) != 0 case string: return len(u) == 0 && len(f.Tag.Get(idempotencyTokenFillTag)) != 0 } return false } // GetIdempotencyToken returns a randomly generated idempotency token. func GetIdempotencyToken() string { b := make([]byte, 16) RandReader.Read(b) return UUIDVersion4(b) } // SetIdempotencyToken will set the value provided with a Idempotency Token. // Given that the value can be set. Will panic if value is not setable. func SetIdempotencyToken(v reflect.Value) { if v.Kind() == reflect.Ptr { if v.IsNil() && v.CanSet() { v.Set(reflect.New(v.Type().Elem())) } v = v.Elem() } v = reflect.Indirect(v) if !v.CanSet() { panic(fmt.Sprintf("unable to set idempotnecy token %v", v)) } b := make([]byte, 16) _, err := rand.Read(b) if err != nil { // TODO handle error return } v.Set(reflect.ValueOf(UUIDVersion4(b))) } // UUIDVersion4 returns a Version 4 random UUID from the byte slice provided func UUIDVersion4(u []byte) string { // https://en.wikipedia.org/wiki/Universally_unique_identifier#Version_4_.28random.29 // 13th character is "4" u[6] = (u[6] | 0x40) & 0x4F // 17th character is "8", "9", "a", or "b" u[8] = (u[8] | 0x80) & 0xBF return fmt.Sprintf(`%X-%X-%X-%X-%X`, u[0:4], u[4:6], u[6:8], u[8:10], u[10:]) } aws-sdk-go-1.4.22/private/protocol/idempotency_test.go000066400000000000000000000036061300374646400230110ustar00rootroot00000000000000package protocol_test import ( "reflect" "testing" "github.com/aws/aws-sdk-go/private/protocol" "github.com/stretchr/testify/assert" ) func TestCanSetIdempotencyToken(t *testing.T) { cases := []struct { CanSet bool Case interface{} }{ { true, struct { Field *string `idempotencyToken:"true"` }{}, }, { true, struct { Field string `idempotencyToken:"true"` }{}, }, { false, struct { Field *string `idempotencyToken:"true"` }{Field: new(string)}, }, { false, struct { Field string `idempotencyToken:"true"` }{Field: "value"}, }, { false, struct { Field *int `idempotencyToken:"true"` }{}, }, { false, struct { Field *string }{}, }, } for i, c := range cases { v := reflect.Indirect(reflect.ValueOf(c.Case)) ty := v.Type() canSet := protocol.CanSetIdempotencyToken(v.Field(0), ty.Field(0)) assert.Equal(t, c.CanSet, canSet, "Expect case %d can set to match", i) } } func TestSetIdempotencyToken(t *testing.T) { cases := []struct { Case interface{} }{ { &struct { Field *string `idempotencyToken:"true"` }{}, }, { &struct { Field string `idempotencyToken:"true"` }{}, }, { &struct { Field *string `idempotencyToken:"true"` }{Field: new(string)}, }, { &struct { Field string `idempotencyToken:"true"` }{Field: ""}, }, } for i, c := range cases { v := reflect.Indirect(reflect.ValueOf(c.Case)) protocol.SetIdempotencyToken(v.Field(0)) assert.NotEmpty(t, v.Field(0).Interface(), "Expect case %d to be set", i) } } func TestUUIDVersion4(t *testing.T) { uuid := protocol.UUIDVersion4(make([]byte, 16)) assert.Equal(t, `00000000-0000-4000-8000-000000000000`, uuid) b := make([]byte, 16) for i := 0; i < len(b); i++ { b[i] = 1 } uuid = protocol.UUIDVersion4(b) assert.Equal(t, `01010101-0101-4101-8101-010101010101`, uuid) } aws-sdk-go-1.4.22/private/protocol/json/000077500000000000000000000000001300374646400200475ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/protocol/json/jsonutil/000077500000000000000000000000001300374646400217165ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/protocol/json/jsonutil/build.go000066400000000000000000000130141300374646400233430ustar00rootroot00000000000000// Package jsonutil provides JSON serialization of AWS requests and responses. package jsonutil import ( "bytes" "encoding/base64" "fmt" "reflect" "sort" "strconv" "time" "github.com/aws/aws-sdk-go/private/protocol" ) var timeType = reflect.ValueOf(time.Time{}).Type() var byteSliceType = reflect.ValueOf([]byte{}).Type() // BuildJSON builds a JSON string for a given object v. func BuildJSON(v interface{}) ([]byte, error) { var buf bytes.Buffer err := buildAny(reflect.ValueOf(v), &buf, "") return buf.Bytes(), err } func buildAny(value reflect.Value, buf *bytes.Buffer, tag reflect.StructTag) error { value = reflect.Indirect(value) if !value.IsValid() { return nil } vtype := value.Type() t := tag.Get("type") if t == "" { switch vtype.Kind() { case reflect.Struct: // also it can't be a time object if value.Type() != timeType { t = "structure" } case reflect.Slice: // also it can't be a byte slice if _, ok := value.Interface().([]byte); !ok { t = "list" } case reflect.Map: t = "map" } } switch t { case "structure": if field, ok := vtype.FieldByName("_"); ok { tag = field.Tag } return buildStruct(value, buf, tag) case "list": return buildList(value, buf, tag) case "map": return buildMap(value, buf, tag) default: return buildScalar(value, buf, tag) } } func buildStruct(value reflect.Value, buf *bytes.Buffer, tag reflect.StructTag) error { if !value.IsValid() { return nil } // unwrap payloads if payload := tag.Get("payload"); payload != "" { field, _ := value.Type().FieldByName(payload) tag = field.Tag value = elemOf(value.FieldByName(payload)) if !value.IsValid() { return nil } } buf.WriteByte('{') t := value.Type() first := true for i := 0; i < t.NumField(); i++ { member := value.Field(i) field := t.Field(i) if field.PkgPath != "" { continue // ignore unexported fields } if field.Tag.Get("json") == "-" { continue } if field.Tag.Get("location") != "" { continue // ignore non-body elements } if protocol.CanSetIdempotencyToken(member, field) { token := protocol.GetIdempotencyToken() member = reflect.ValueOf(&token) } if (member.Kind() == reflect.Ptr || member.Kind() == reflect.Slice || member.Kind() == reflect.Map) && member.IsNil() { continue // ignore unset fields } if first { first = false } else { buf.WriteByte(',') } // figure out what this field is called name := field.Name if locName := field.Tag.Get("locationName"); locName != "" { name = locName } writeString(name, buf) buf.WriteString(`:`) err := buildAny(member, buf, field.Tag) if err != nil { return err } } buf.WriteString("}") return nil } func buildList(value reflect.Value, buf *bytes.Buffer, tag reflect.StructTag) error { buf.WriteString("[") for i := 0; i < value.Len(); i++ { buildAny(value.Index(i), buf, "") if i < value.Len()-1 { buf.WriteString(",") } } buf.WriteString("]") return nil } type sortedValues []reflect.Value func (sv sortedValues) Len() int { return len(sv) } func (sv sortedValues) Swap(i, j int) { sv[i], sv[j] = sv[j], sv[i] } func (sv sortedValues) Less(i, j int) bool { return sv[i].String() < sv[j].String() } func buildMap(value reflect.Value, buf *bytes.Buffer, tag reflect.StructTag) error { buf.WriteString("{") sv := sortedValues(value.MapKeys()) sort.Sort(sv) for i, k := range sv { if i > 0 { buf.WriteByte(',') } writeString(k.String(), buf) buf.WriteString(`:`) buildAny(value.MapIndex(k), buf, "") } buf.WriteString("}") return nil } func buildScalar(value reflect.Value, buf *bytes.Buffer, tag reflect.StructTag) error { switch value.Kind() { case reflect.String: writeString(value.String(), buf) case reflect.Bool: buf.WriteString(strconv.FormatBool(value.Bool())) case reflect.Int64: buf.WriteString(strconv.FormatInt(value.Int(), 10)) case reflect.Float64: buf.WriteString(strconv.FormatFloat(value.Float(), 'f', -1, 64)) default: switch value.Type() { case timeType: converted := value.Interface().(time.Time) buf.WriteString(strconv.FormatInt(converted.UTC().Unix(), 10)) case byteSliceType: if !value.IsNil() { converted := value.Interface().([]byte) buf.WriteByte('"') if len(converted) < 1024 { // for small buffers, using Encode directly is much faster. dst := make([]byte, base64.StdEncoding.EncodedLen(len(converted))) base64.StdEncoding.Encode(dst, converted) buf.Write(dst) } else { // for large buffers, avoid unnecessary extra temporary // buffer space. enc := base64.NewEncoder(base64.StdEncoding, buf) enc.Write(converted) enc.Close() } buf.WriteByte('"') } default: return fmt.Errorf("unsupported JSON value %v (%s)", value.Interface(), value.Type()) } } return nil } func writeString(s string, buf *bytes.Buffer) { buf.WriteByte('"') for _, r := range s { if r == '"' { buf.WriteString(`\"`) } else if r == '\\' { buf.WriteString(`\\`) } else if r == '\b' { buf.WriteString(`\b`) } else if r == '\f' { buf.WriteString(`\f`) } else if r == '\r' { buf.WriteString(`\r`) } else if r == '\t' { buf.WriteString(`\t`) } else if r == '\n' { buf.WriteString(`\n`) } else if r < 32 { fmt.Fprintf(buf, "\\u%0.4x", r) } else { buf.WriteRune(r) } } buf.WriteByte('"') } // Returns the reflection element of a value, if it is a pointer. func elemOf(value reflect.Value) reflect.Value { for value.Kind() == reflect.Ptr { value = value.Elem() } return value } aws-sdk-go-1.4.22/private/protocol/json/jsonutil/build_test.go000066400000000000000000000026611300374646400244100ustar00rootroot00000000000000package jsonutil_test import ( "encoding/json" "testing" "time" "github.com/aws/aws-sdk-go/private/protocol/json/jsonutil" "github.com/stretchr/testify/assert" ) func S(s string) *string { return &s } func D(s int64) *int64 { return &s } func F(s float64) *float64 { return &s } func T(s time.Time) *time.Time { return &s } type J struct { S *string SS []string D *int64 F *float64 T *time.Time } var jsonTests = []struct { in interface{} out string err string }{ { J{}, `{}`, ``, }, { J{ S: S("str"), SS: []string{"A", "B", "C"}, D: D(123), F: F(4.56), T: T(time.Unix(987, 0)), }, `{"S":"str","SS":["A","B","C"],"D":123,"F":4.56,"T":987}`, ``, }, { J{ S: S(`"''"`), }, `{"S":"\"''\""}`, ``, }, { J{ S: S("\x00føø\u00FF\n\\\"\r\t\b\f"), }, `{"S":"\u0000føøÿ\n\\\"\r\t\b\f"}`, ``, }, } func TestBuildJSON(t *testing.T) { for _, test := range jsonTests { out, err := jsonutil.BuildJSON(test.in) if test.err != "" { assert.Error(t, err) assert.Contains(t, err.Error(), test.err) } else { assert.NoError(t, err) assert.Equal(t, string(out), test.out) } } } func BenchmarkBuildJSON(b *testing.B) { for i := 0; i < b.N; i++ { for _, test := range jsonTests { jsonutil.BuildJSON(test.in) } } } func BenchmarkStdlibJSON(b *testing.B) { for i := 0; i < b.N; i++ { for _, test := range jsonTests { json.Marshal(test.in) } } } aws-sdk-go-1.4.22/private/protocol/json/jsonutil/unmarshal.go000066400000000000000000000106001300374646400242340ustar00rootroot00000000000000package jsonutil import ( "encoding/base64" "encoding/json" "fmt" "io" "io/ioutil" "reflect" "time" ) // UnmarshalJSON reads a stream and unmarshals the results in object v. func UnmarshalJSON(v interface{}, stream io.Reader) error { var out interface{} b, err := ioutil.ReadAll(stream) if err != nil { return err } if len(b) == 0 { return nil } if err := json.Unmarshal(b, &out); err != nil { return err } return unmarshalAny(reflect.ValueOf(v), out, "") } func unmarshalAny(value reflect.Value, data interface{}, tag reflect.StructTag) error { vtype := value.Type() if vtype.Kind() == reflect.Ptr { vtype = vtype.Elem() // check kind of actual element type } t := tag.Get("type") if t == "" { switch vtype.Kind() { case reflect.Struct: // also it can't be a time object if _, ok := value.Interface().(*time.Time); !ok { t = "structure" } case reflect.Slice: // also it can't be a byte slice if _, ok := value.Interface().([]byte); !ok { t = "list" } case reflect.Map: t = "map" } } switch t { case "structure": if field, ok := vtype.FieldByName("_"); ok { tag = field.Tag } return unmarshalStruct(value, data, tag) case "list": return unmarshalList(value, data, tag) case "map": return unmarshalMap(value, data, tag) default: return unmarshalScalar(value, data, tag) } } func unmarshalStruct(value reflect.Value, data interface{}, tag reflect.StructTag) error { if data == nil { return nil } mapData, ok := data.(map[string]interface{}) if !ok { return fmt.Errorf("JSON value is not a structure (%#v)", data) } t := value.Type() if value.Kind() == reflect.Ptr { if value.IsNil() { // create the structure if it's nil s := reflect.New(value.Type().Elem()) value.Set(s) value = s } value = value.Elem() t = t.Elem() } // unwrap any payloads if payload := tag.Get("payload"); payload != "" { field, _ := t.FieldByName(payload) return unmarshalAny(value.FieldByName(payload), data, field.Tag) } for i := 0; i < t.NumField(); i++ { field := t.Field(i) if field.PkgPath != "" { continue // ignore unexported fields } // figure out what this field is called name := field.Name if locName := field.Tag.Get("locationName"); locName != "" { name = locName } member := value.FieldByIndex(field.Index) err := unmarshalAny(member, mapData[name], field.Tag) if err != nil { return err } } return nil } func unmarshalList(value reflect.Value, data interface{}, tag reflect.StructTag) error { if data == nil { return nil } listData, ok := data.([]interface{}) if !ok { return fmt.Errorf("JSON value is not a list (%#v)", data) } if value.IsNil() { l := len(listData) value.Set(reflect.MakeSlice(value.Type(), l, l)) } for i, c := range listData { err := unmarshalAny(value.Index(i), c, "") if err != nil { return err } } return nil } func unmarshalMap(value reflect.Value, data interface{}, tag reflect.StructTag) error { if data == nil { return nil } mapData, ok := data.(map[string]interface{}) if !ok { return fmt.Errorf("JSON value is not a map (%#v)", data) } if value.IsNil() { value.Set(reflect.MakeMap(value.Type())) } for k, v := range mapData { kvalue := reflect.ValueOf(k) vvalue := reflect.New(value.Type().Elem()).Elem() unmarshalAny(vvalue, v, "") value.SetMapIndex(kvalue, vvalue) } return nil } func unmarshalScalar(value reflect.Value, data interface{}, tag reflect.StructTag) error { errf := func() error { return fmt.Errorf("unsupported value: %v (%s)", value.Interface(), value.Type()) } switch d := data.(type) { case nil: return nil // nothing to do here case string: switch value.Interface().(type) { case *string: value.Set(reflect.ValueOf(&d)) case []byte: b, err := base64.StdEncoding.DecodeString(d) if err != nil { return err } value.Set(reflect.ValueOf(b)) default: return errf() } case float64: switch value.Interface().(type) { case *int64: di := int64(d) value.Set(reflect.ValueOf(&di)) case *float64: value.Set(reflect.ValueOf(&d)) case *time.Time: t := time.Unix(int64(d), 0).UTC() value.Set(reflect.ValueOf(&t)) default: return errf() } case bool: switch value.Interface().(type) { case *bool: value.Set(reflect.ValueOf(&d)) default: return errf() } default: return fmt.Errorf("unsupported JSON value (%v)", data) } return nil } aws-sdk-go-1.4.22/private/protocol/jsonrpc/000077500000000000000000000000001300374646400205545ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/protocol/jsonrpc/build_bench_test.go000066400000000000000000000033341300374646400244030ustar00rootroot00000000000000// +build bench package jsonrpc_test import ( "bytes" "encoding/json" "testing" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/private/protocol/json/jsonutil" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" "github.com/aws/aws-sdk-go/service/dynamodb" "github.com/aws/aws-sdk-go/service/dynamodb/dynamodbattribute" ) func BenchmarkJSONRPCBuild_Simple_dynamodbPutItem(b *testing.B) { svc := awstesting.NewClient() params := getDynamodbPutItemParams(b) for i := 0; i < b.N; i++ { r := svc.NewRequest(&request.Operation{Name: "Operation"}, params, nil) jsonrpc.Build(r) if r.Error != nil { b.Fatal("Unexpected error", r.Error) } } } func BenchmarkJSONUtilBuild_Simple_dynamodbPutItem(b *testing.B) { svc := awstesting.NewClient() params := getDynamodbPutItemParams(b) for i := 0; i < b.N; i++ { r := svc.NewRequest(&request.Operation{Name: "Operation"}, params, nil) _, err := jsonutil.BuildJSON(r.Params) if err != nil { b.Fatal("Unexpected error", err) } } } func BenchmarkEncodingJSONMarshal_Simple_dynamodbPutItem(b *testing.B) { params := getDynamodbPutItemParams(b) for i := 0; i < b.N; i++ { buf := &bytes.Buffer{} encoder := json.NewEncoder(buf) if err := encoder.Encode(params); err != nil { b.Fatal("Unexpected error", err) } } } func getDynamodbPutItemParams(b *testing.B) *dynamodb.PutItemInput { av, err := dynamodbattribute.ConvertToMap(struct { Key string Data string }{Key: "MyKey", Data: "MyData"}) if err != nil { b.Fatal("benchPutItem, expect no ConvertToMap errors", err) } return &dynamodb.PutItemInput{ Item: av, TableName: aws.String("tablename"), } } aws-sdk-go-1.4.22/private/protocol/jsonrpc/build_test.go000066400000000000000000002030311300374646400232400ustar00rootroot00000000000000package jsonrpc_test import ( "bytes" "encoding/json" "encoding/xml" "fmt" "io" "io/ioutil" "net/http" "net/url" "testing" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil" "github.com/aws/aws-sdk-go/private/util" "github.com/stretchr/testify/assert" ) var _ bytes.Buffer // always import bytes var _ http.Request var _ json.Marshaler var _ time.Time var _ xmlutil.XMLNode var _ xml.Attr var _ = ioutil.Discard var _ = util.Trim("") var _ = url.Values{} var _ = io.EOF var _ = aws.String var _ = fmt.Println func init() { protocol.RandReader = &awstesting.ZeroReader{} } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService1ProtocolTest struct { *client.Client } // New creates a new instance of the InputService1ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService1ProtocolTest client from just a session. // svc := inputservice1protocoltest.New(mySession) // // // Create a InputService1ProtocolTest client with additional configuration // svc := inputservice1protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService1ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService1ProtocolTest { c := p.ClientConfig("inputservice1protocoltest", cfgs...) return newInputService1ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService1ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService1ProtocolTest { svc := &InputService1ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice1protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", JSONVersion: "1.1", TargetPrefix: "com.amazonaws.foo", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService1ProtocolTest operation and runs any // custom request initialization. func (c *InputService1ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService1TestCaseOperation1 = "OperationName" // InputService1TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService1TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService1TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService1TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService1TestCaseOperation1Request method. // req, resp := client.InputService1TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService1ProtocolTest) InputService1TestCaseOperation1Request(input *InputService1TestShapeInputService1TestCaseOperation1Input) (req *request.Request, output *InputService1TestShapeInputService1TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService1TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InputService1TestShapeInputService1TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService1TestShapeInputService1TestCaseOperation1Output{} req.Data = output return } // InputService1TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService1TestCaseOperation1 for usage and error information. func (c *InputService1ProtocolTest) InputService1TestCaseOperation1(input *InputService1TestShapeInputService1TestCaseOperation1Input) (*InputService1TestShapeInputService1TestCaseOperation1Output, error) { req, out := c.InputService1TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService1TestShapeInputService1TestCaseOperation1Input struct { _ struct{} `type:"structure"` Name *string `type:"string"` } type InputService1TestShapeInputService1TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService2ProtocolTest struct { *client.Client } // New creates a new instance of the InputService2ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService2ProtocolTest client from just a session. // svc := inputservice2protocoltest.New(mySession) // // // Create a InputService2ProtocolTest client with additional configuration // svc := inputservice2protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService2ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService2ProtocolTest { c := p.ClientConfig("inputservice2protocoltest", cfgs...) return newInputService2ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService2ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService2ProtocolTest { svc := &InputService2ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice2protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", JSONVersion: "1.1", TargetPrefix: "com.amazonaws.foo", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService2ProtocolTest operation and runs any // custom request initialization. func (c *InputService2ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService2TestCaseOperation1 = "OperationName" // InputService2TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService2TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService2TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService2TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService2TestCaseOperation1Request method. // req, resp := client.InputService2TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService2ProtocolTest) InputService2TestCaseOperation1Request(input *InputService2TestShapeInputService2TestCaseOperation1Input) (req *request.Request, output *InputService2TestShapeInputService2TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService2TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService2TestShapeInputService2TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService2TestShapeInputService2TestCaseOperation1Output{} req.Data = output return } // InputService2TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService2TestCaseOperation1 for usage and error information. func (c *InputService2ProtocolTest) InputService2TestCaseOperation1(input *InputService2TestShapeInputService2TestCaseOperation1Input) (*InputService2TestShapeInputService2TestCaseOperation1Output, error) { req, out := c.InputService2TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService2TestShapeInputService2TestCaseOperation1Input struct { _ struct{} `type:"structure"` TimeArg *time.Time `type:"timestamp" timestampFormat:"unix"` } type InputService2TestShapeInputService2TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService3ProtocolTest struct { *client.Client } // New creates a new instance of the InputService3ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService3ProtocolTest client from just a session. // svc := inputservice3protocoltest.New(mySession) // // // Create a InputService3ProtocolTest client with additional configuration // svc := inputservice3protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService3ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService3ProtocolTest { c := p.ClientConfig("inputservice3protocoltest", cfgs...) return newInputService3ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService3ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService3ProtocolTest { svc := &InputService3ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice3protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", JSONVersion: "1.1", TargetPrefix: "com.amazonaws.foo", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService3ProtocolTest operation and runs any // custom request initialization. func (c *InputService3ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService3TestCaseOperation1 = "OperationName" // InputService3TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService3TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService3TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService3TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService3TestCaseOperation1Request method. // req, resp := client.InputService3TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService3ProtocolTest) InputService3TestCaseOperation1Request(input *InputService3TestShapeInputShape) (req *request.Request, output *InputService3TestShapeInputService3TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService3TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService3TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService3TestShapeInputService3TestCaseOperation1Output{} req.Data = output return } // InputService3TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService3TestCaseOperation1 for usage and error information. func (c *InputService3ProtocolTest) InputService3TestCaseOperation1(input *InputService3TestShapeInputShape) (*InputService3TestShapeInputService3TestCaseOperation1Output, error) { req, out := c.InputService3TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService3TestCaseOperation2 = "OperationName" // InputService3TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService3TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService3TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService3TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService3TestCaseOperation2Request method. // req, resp := client.InputService3TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService3ProtocolTest) InputService3TestCaseOperation2Request(input *InputService3TestShapeInputShape) (req *request.Request, output *InputService3TestShapeInputService3TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService3TestCaseOperation2, HTTPPath: "/", } if input == nil { input = &InputService3TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService3TestShapeInputService3TestCaseOperation2Output{} req.Data = output return } // InputService3TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService3TestCaseOperation2 for usage and error information. func (c *InputService3ProtocolTest) InputService3TestCaseOperation2(input *InputService3TestShapeInputShape) (*InputService3TestShapeInputService3TestCaseOperation2Output, error) { req, out := c.InputService3TestCaseOperation2Request(input) err := req.Send() return out, err } type InputService3TestShapeInputService3TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService3TestShapeInputService3TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService3TestShapeInputShape struct { _ struct{} `type:"structure"` // BlobArg is automatically base64 encoded/decoded by the SDK. BlobArg []byte `type:"blob"` BlobMap map[string][]byte `type:"map"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService4ProtocolTest struct { *client.Client } // New creates a new instance of the InputService4ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService4ProtocolTest client from just a session. // svc := inputservice4protocoltest.New(mySession) // // // Create a InputService4ProtocolTest client with additional configuration // svc := inputservice4protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService4ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService4ProtocolTest { c := p.ClientConfig("inputservice4protocoltest", cfgs...) return newInputService4ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService4ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService4ProtocolTest { svc := &InputService4ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice4protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", JSONVersion: "1.1", TargetPrefix: "com.amazonaws.foo", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService4ProtocolTest operation and runs any // custom request initialization. func (c *InputService4ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService4TestCaseOperation1 = "OperationName" // InputService4TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService4TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService4TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService4TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService4TestCaseOperation1Request method. // req, resp := client.InputService4TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService4ProtocolTest) InputService4TestCaseOperation1Request(input *InputService4TestShapeInputService4TestCaseOperation1Input) (req *request.Request, output *InputService4TestShapeInputService4TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService4TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InputService4TestShapeInputService4TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService4TestShapeInputService4TestCaseOperation1Output{} req.Data = output return } // InputService4TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService4TestCaseOperation1 for usage and error information. func (c *InputService4ProtocolTest) InputService4TestCaseOperation1(input *InputService4TestShapeInputService4TestCaseOperation1Input) (*InputService4TestShapeInputService4TestCaseOperation1Output, error) { req, out := c.InputService4TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService4TestShapeInputService4TestCaseOperation1Input struct { _ struct{} `type:"structure"` ListParam [][]byte `type:"list"` } type InputService4TestShapeInputService4TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService5ProtocolTest struct { *client.Client } // New creates a new instance of the InputService5ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService5ProtocolTest client from just a session. // svc := inputservice5protocoltest.New(mySession) // // // Create a InputService5ProtocolTest client with additional configuration // svc := inputservice5protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService5ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService5ProtocolTest { c := p.ClientConfig("inputservice5protocoltest", cfgs...) return newInputService5ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService5ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService5ProtocolTest { svc := &InputService5ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice5protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", JSONVersion: "1.1", TargetPrefix: "com.amazonaws.foo", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService5ProtocolTest operation and runs any // custom request initialization. func (c *InputService5ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService5TestCaseOperation1 = "OperationName" // InputService5TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService5TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService5TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService5TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService5TestCaseOperation1Request method. // req, resp := client.InputService5TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService5ProtocolTest) InputService5TestCaseOperation1Request(input *InputService5TestShapeInputShape) (req *request.Request, output *InputService5TestShapeInputService5TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService5TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService5TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService5TestShapeInputService5TestCaseOperation1Output{} req.Data = output return } // InputService5TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService5TestCaseOperation1 for usage and error information. func (c *InputService5ProtocolTest) InputService5TestCaseOperation1(input *InputService5TestShapeInputShape) (*InputService5TestShapeInputService5TestCaseOperation1Output, error) { req, out := c.InputService5TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService5TestCaseOperation2 = "OperationName" // InputService5TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService5TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService5TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService5TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService5TestCaseOperation2Request method. // req, resp := client.InputService5TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService5ProtocolTest) InputService5TestCaseOperation2Request(input *InputService5TestShapeInputShape) (req *request.Request, output *InputService5TestShapeInputService5TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService5TestCaseOperation2, HTTPPath: "/", } if input == nil { input = &InputService5TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService5TestShapeInputService5TestCaseOperation2Output{} req.Data = output return } // InputService5TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService5TestCaseOperation2 for usage and error information. func (c *InputService5ProtocolTest) InputService5TestCaseOperation2(input *InputService5TestShapeInputShape) (*InputService5TestShapeInputService5TestCaseOperation2Output, error) { req, out := c.InputService5TestCaseOperation2Request(input) err := req.Send() return out, err } const opInputService5TestCaseOperation3 = "OperationName" // InputService5TestCaseOperation3Request generates a "aws/request.Request" representing the // client's request for the InputService5TestCaseOperation3 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService5TestCaseOperation3 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService5TestCaseOperation3 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService5TestCaseOperation3Request method. // req, resp := client.InputService5TestCaseOperation3Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService5ProtocolTest) InputService5TestCaseOperation3Request(input *InputService5TestShapeInputShape) (req *request.Request, output *InputService5TestShapeInputService5TestCaseOperation3Output) { op := &request.Operation{ Name: opInputService5TestCaseOperation3, HTTPPath: "/", } if input == nil { input = &InputService5TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService5TestShapeInputService5TestCaseOperation3Output{} req.Data = output return } // InputService5TestCaseOperation3 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService5TestCaseOperation3 for usage and error information. func (c *InputService5ProtocolTest) InputService5TestCaseOperation3(input *InputService5TestShapeInputShape) (*InputService5TestShapeInputService5TestCaseOperation3Output, error) { req, out := c.InputService5TestCaseOperation3Request(input) err := req.Send() return out, err } const opInputService5TestCaseOperation4 = "OperationName" // InputService5TestCaseOperation4Request generates a "aws/request.Request" representing the // client's request for the InputService5TestCaseOperation4 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService5TestCaseOperation4 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService5TestCaseOperation4 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService5TestCaseOperation4Request method. // req, resp := client.InputService5TestCaseOperation4Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService5ProtocolTest) InputService5TestCaseOperation4Request(input *InputService5TestShapeInputShape) (req *request.Request, output *InputService5TestShapeInputService5TestCaseOperation4Output) { op := &request.Operation{ Name: opInputService5TestCaseOperation4, HTTPPath: "/", } if input == nil { input = &InputService5TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService5TestShapeInputService5TestCaseOperation4Output{} req.Data = output return } // InputService5TestCaseOperation4 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService5TestCaseOperation4 for usage and error information. func (c *InputService5ProtocolTest) InputService5TestCaseOperation4(input *InputService5TestShapeInputShape) (*InputService5TestShapeInputService5TestCaseOperation4Output, error) { req, out := c.InputService5TestCaseOperation4Request(input) err := req.Send() return out, err } const opInputService5TestCaseOperation5 = "OperationName" // InputService5TestCaseOperation5Request generates a "aws/request.Request" representing the // client's request for the InputService5TestCaseOperation5 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService5TestCaseOperation5 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService5TestCaseOperation5 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService5TestCaseOperation5Request method. // req, resp := client.InputService5TestCaseOperation5Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService5ProtocolTest) InputService5TestCaseOperation5Request(input *InputService5TestShapeInputShape) (req *request.Request, output *InputService5TestShapeInputService5TestCaseOperation5Output) { op := &request.Operation{ Name: opInputService5TestCaseOperation5, HTTPPath: "/", } if input == nil { input = &InputService5TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService5TestShapeInputService5TestCaseOperation5Output{} req.Data = output return } // InputService5TestCaseOperation5 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService5TestCaseOperation5 for usage and error information. func (c *InputService5ProtocolTest) InputService5TestCaseOperation5(input *InputService5TestShapeInputShape) (*InputService5TestShapeInputService5TestCaseOperation5Output, error) { req, out := c.InputService5TestCaseOperation5Request(input) err := req.Send() return out, err } const opInputService5TestCaseOperation6 = "OperationName" // InputService5TestCaseOperation6Request generates a "aws/request.Request" representing the // client's request for the InputService5TestCaseOperation6 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService5TestCaseOperation6 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService5TestCaseOperation6 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService5TestCaseOperation6Request method. // req, resp := client.InputService5TestCaseOperation6Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService5ProtocolTest) InputService5TestCaseOperation6Request(input *InputService5TestShapeInputShape) (req *request.Request, output *InputService5TestShapeInputService5TestCaseOperation6Output) { op := &request.Operation{ Name: opInputService5TestCaseOperation6, HTTPPath: "/", } if input == nil { input = &InputService5TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService5TestShapeInputService5TestCaseOperation6Output{} req.Data = output return } // InputService5TestCaseOperation6 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService5TestCaseOperation6 for usage and error information. func (c *InputService5ProtocolTest) InputService5TestCaseOperation6(input *InputService5TestShapeInputShape) (*InputService5TestShapeInputService5TestCaseOperation6Output, error) { req, out := c.InputService5TestCaseOperation6Request(input) err := req.Send() return out, err } type InputService5TestShapeInputService5TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService5TestShapeInputService5TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService5TestShapeInputService5TestCaseOperation3Output struct { _ struct{} `type:"structure"` } type InputService5TestShapeInputService5TestCaseOperation4Output struct { _ struct{} `type:"structure"` } type InputService5TestShapeInputService5TestCaseOperation5Output struct { _ struct{} `type:"structure"` } type InputService5TestShapeInputService5TestCaseOperation6Output struct { _ struct{} `type:"structure"` } type InputService5TestShapeInputShape struct { _ struct{} `type:"structure"` RecursiveStruct *InputService5TestShapeRecursiveStructType `type:"structure"` } type InputService5TestShapeRecursiveStructType struct { _ struct{} `type:"structure"` NoRecurse *string `type:"string"` RecursiveList []*InputService5TestShapeRecursiveStructType `type:"list"` RecursiveMap map[string]*InputService5TestShapeRecursiveStructType `type:"map"` RecursiveStruct *InputService5TestShapeRecursiveStructType `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService6ProtocolTest struct { *client.Client } // New creates a new instance of the InputService6ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService6ProtocolTest client from just a session. // svc := inputservice6protocoltest.New(mySession) // // // Create a InputService6ProtocolTest client with additional configuration // svc := inputservice6protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService6ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService6ProtocolTest { c := p.ClientConfig("inputservice6protocoltest", cfgs...) return newInputService6ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService6ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService6ProtocolTest { svc := &InputService6ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice6protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", JSONVersion: "1.1", TargetPrefix: "com.amazonaws.foo", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService6ProtocolTest operation and runs any // custom request initialization. func (c *InputService6ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService6TestCaseOperation1 = "OperationName" // InputService6TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService6TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService6TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService6TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService6TestCaseOperation1Request method. // req, resp := client.InputService6TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService6ProtocolTest) InputService6TestCaseOperation1Request(input *InputService6TestShapeInputService6TestCaseOperation1Input) (req *request.Request, output *InputService6TestShapeInputService6TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService6TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InputService6TestShapeInputService6TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService6TestShapeInputService6TestCaseOperation1Output{} req.Data = output return } // InputService6TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService6TestCaseOperation1 for usage and error information. func (c *InputService6ProtocolTest) InputService6TestCaseOperation1(input *InputService6TestShapeInputService6TestCaseOperation1Input) (*InputService6TestShapeInputService6TestCaseOperation1Output, error) { req, out := c.InputService6TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService6TestShapeInputService6TestCaseOperation1Input struct { _ struct{} `type:"structure"` Map map[string]*string `type:"map"` } type InputService6TestShapeInputService6TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService7ProtocolTest struct { *client.Client } // New creates a new instance of the InputService7ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService7ProtocolTest client from just a session. // svc := inputservice7protocoltest.New(mySession) // // // Create a InputService7ProtocolTest client with additional configuration // svc := inputservice7protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService7ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService7ProtocolTest { c := p.ClientConfig("inputservice7protocoltest", cfgs...) return newInputService7ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService7ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService7ProtocolTest { svc := &InputService7ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice7protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", JSONVersion: "", TargetPrefix: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService7ProtocolTest operation and runs any // custom request initialization. func (c *InputService7ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService7TestCaseOperation1 = "OperationName" // InputService7TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService7TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService7TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService7TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService7TestCaseOperation1Request method. // req, resp := client.InputService7TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService7ProtocolTest) InputService7TestCaseOperation1Request(input *InputService7TestShapeInputShape) (req *request.Request, output *InputService7TestShapeInputService7TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService7TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService7TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService7TestShapeInputService7TestCaseOperation1Output{} req.Data = output return } // InputService7TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService7TestCaseOperation1 for usage and error information. func (c *InputService7ProtocolTest) InputService7TestCaseOperation1(input *InputService7TestShapeInputShape) (*InputService7TestShapeInputService7TestCaseOperation1Output, error) { req, out := c.InputService7TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService7TestCaseOperation2 = "OperationName" // InputService7TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService7TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService7TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService7TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService7TestCaseOperation2Request method. // req, resp := client.InputService7TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService7ProtocolTest) InputService7TestCaseOperation2Request(input *InputService7TestShapeInputShape) (req *request.Request, output *InputService7TestShapeInputService7TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService7TestCaseOperation2, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService7TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService7TestShapeInputService7TestCaseOperation2Output{} req.Data = output return } // InputService7TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService7TestCaseOperation2 for usage and error information. func (c *InputService7ProtocolTest) InputService7TestCaseOperation2(input *InputService7TestShapeInputShape) (*InputService7TestShapeInputService7TestCaseOperation2Output, error) { req, out := c.InputService7TestCaseOperation2Request(input) err := req.Send() return out, err } type InputService7TestShapeInputService7TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService7TestShapeInputService7TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService7TestShapeInputShape struct { _ struct{} `type:"structure"` Token *string `type:"string" idempotencyToken:"true"` } // // Tests begin here // func TestInputService1ProtocolTestScalarMembersCase1(t *testing.T) { svc := NewInputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService1TestShapeInputService1TestCaseOperation1Input{ Name: aws.String("myname"), } req, _ := svc.InputService1TestCaseOperation1Request(input) r := req.HTTPRequest // build request jsonrpc.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"Name":"myname"}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers assert.Equal(t, "application/x-amz-json-1.1", r.Header.Get("Content-Type")) assert.Equal(t, "com.amazonaws.foo.OperationName", r.Header.Get("X-Amz-Target")) } func TestInputService2ProtocolTestTimestampValuesCase1(t *testing.T) { svc := NewInputService2ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService2TestShapeInputService2TestCaseOperation1Input{ TimeArg: aws.Time(time.Unix(1422172800, 0)), } req, _ := svc.InputService2TestCaseOperation1Request(input) r := req.HTTPRequest // build request jsonrpc.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"TimeArg":1422172800}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers assert.Equal(t, "application/x-amz-json-1.1", r.Header.Get("Content-Type")) assert.Equal(t, "com.amazonaws.foo.OperationName", r.Header.Get("X-Amz-Target")) } func TestInputService3ProtocolTestBase64EncodedBlobsCase1(t *testing.T) { svc := NewInputService3ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService3TestShapeInputShape{ BlobArg: []byte("foo"), } req, _ := svc.InputService3TestCaseOperation1Request(input) r := req.HTTPRequest // build request jsonrpc.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"BlobArg":"Zm9v"}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers assert.Equal(t, "application/x-amz-json-1.1", r.Header.Get("Content-Type")) assert.Equal(t, "com.amazonaws.foo.OperationName", r.Header.Get("X-Amz-Target")) } func TestInputService3ProtocolTestBase64EncodedBlobsCase2(t *testing.T) { svc := NewInputService3ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService3TestShapeInputShape{ BlobMap: map[string][]byte{ "key1": []byte("foo"), "key2": []byte("bar"), }, } req, _ := svc.InputService3TestCaseOperation2Request(input) r := req.HTTPRequest // build request jsonrpc.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"BlobMap":{"key1":"Zm9v","key2":"YmFy"}}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers assert.Equal(t, "application/x-amz-json-1.1", r.Header.Get("Content-Type")) assert.Equal(t, "com.amazonaws.foo.OperationName", r.Header.Get("X-Amz-Target")) } func TestInputService4ProtocolTestNestedBlobsCase1(t *testing.T) { svc := NewInputService4ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService4TestShapeInputService4TestCaseOperation1Input{ ListParam: [][]byte{ []byte("foo"), []byte("bar"), }, } req, _ := svc.InputService4TestCaseOperation1Request(input) r := req.HTTPRequest // build request jsonrpc.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"ListParam":["Zm9v","YmFy"]}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers assert.Equal(t, "application/x-amz-json-1.1", r.Header.Get("Content-Type")) assert.Equal(t, "com.amazonaws.foo.OperationName", r.Header.Get("X-Amz-Target")) } func TestInputService5ProtocolTestRecursiveShapesCase1(t *testing.T) { svc := NewInputService5ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService5TestShapeInputShape{ RecursiveStruct: &InputService5TestShapeRecursiveStructType{ NoRecurse: aws.String("foo"), }, } req, _ := svc.InputService5TestCaseOperation1Request(input) r := req.HTTPRequest // build request jsonrpc.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"RecursiveStruct":{"NoRecurse":"foo"}}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers assert.Equal(t, "application/x-amz-json-1.1", r.Header.Get("Content-Type")) assert.Equal(t, "com.amazonaws.foo.OperationName", r.Header.Get("X-Amz-Target")) } func TestInputService5ProtocolTestRecursiveShapesCase2(t *testing.T) { svc := NewInputService5ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService5TestShapeInputShape{ RecursiveStruct: &InputService5TestShapeRecursiveStructType{ RecursiveStruct: &InputService5TestShapeRecursiveStructType{ NoRecurse: aws.String("foo"), }, }, } req, _ := svc.InputService5TestCaseOperation2Request(input) r := req.HTTPRequest // build request jsonrpc.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"RecursiveStruct":{"RecursiveStruct":{"NoRecurse":"foo"}}}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers assert.Equal(t, "application/x-amz-json-1.1", r.Header.Get("Content-Type")) assert.Equal(t, "com.amazonaws.foo.OperationName", r.Header.Get("X-Amz-Target")) } func TestInputService5ProtocolTestRecursiveShapesCase3(t *testing.T) { svc := NewInputService5ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService5TestShapeInputShape{ RecursiveStruct: &InputService5TestShapeRecursiveStructType{ RecursiveStruct: &InputService5TestShapeRecursiveStructType{ RecursiveStruct: &InputService5TestShapeRecursiveStructType{ RecursiveStruct: &InputService5TestShapeRecursiveStructType{ NoRecurse: aws.String("foo"), }, }, }, }, } req, _ := svc.InputService5TestCaseOperation3Request(input) r := req.HTTPRequest // build request jsonrpc.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"RecursiveStruct":{"RecursiveStruct":{"RecursiveStruct":{"RecursiveStruct":{"NoRecurse":"foo"}}}}}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers assert.Equal(t, "application/x-amz-json-1.1", r.Header.Get("Content-Type")) assert.Equal(t, "com.amazonaws.foo.OperationName", r.Header.Get("X-Amz-Target")) } func TestInputService5ProtocolTestRecursiveShapesCase4(t *testing.T) { svc := NewInputService5ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService5TestShapeInputShape{ RecursiveStruct: &InputService5TestShapeRecursiveStructType{ RecursiveList: []*InputService5TestShapeRecursiveStructType{ { NoRecurse: aws.String("foo"), }, { NoRecurse: aws.String("bar"), }, }, }, } req, _ := svc.InputService5TestCaseOperation4Request(input) r := req.HTTPRequest // build request jsonrpc.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"RecursiveStruct":{"RecursiveList":[{"NoRecurse":"foo"},{"NoRecurse":"bar"}]}}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers assert.Equal(t, "application/x-amz-json-1.1", r.Header.Get("Content-Type")) assert.Equal(t, "com.amazonaws.foo.OperationName", r.Header.Get("X-Amz-Target")) } func TestInputService5ProtocolTestRecursiveShapesCase5(t *testing.T) { svc := NewInputService5ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService5TestShapeInputShape{ RecursiveStruct: &InputService5TestShapeRecursiveStructType{ RecursiveList: []*InputService5TestShapeRecursiveStructType{ { NoRecurse: aws.String("foo"), }, { RecursiveStruct: &InputService5TestShapeRecursiveStructType{ NoRecurse: aws.String("bar"), }, }, }, }, } req, _ := svc.InputService5TestCaseOperation5Request(input) r := req.HTTPRequest // build request jsonrpc.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"RecursiveStruct":{"RecursiveList":[{"NoRecurse":"foo"},{"RecursiveStruct":{"NoRecurse":"bar"}}]}}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers assert.Equal(t, "application/x-amz-json-1.1", r.Header.Get("Content-Type")) assert.Equal(t, "com.amazonaws.foo.OperationName", r.Header.Get("X-Amz-Target")) } func TestInputService5ProtocolTestRecursiveShapesCase6(t *testing.T) { svc := NewInputService5ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService5TestShapeInputShape{ RecursiveStruct: &InputService5TestShapeRecursiveStructType{ RecursiveMap: map[string]*InputService5TestShapeRecursiveStructType{ "bar": { NoRecurse: aws.String("bar"), }, "foo": { NoRecurse: aws.String("foo"), }, }, }, } req, _ := svc.InputService5TestCaseOperation6Request(input) r := req.HTTPRequest // build request jsonrpc.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"RecursiveStruct":{"RecursiveMap":{"foo":{"NoRecurse":"foo"},"bar":{"NoRecurse":"bar"}}}}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers assert.Equal(t, "application/x-amz-json-1.1", r.Header.Get("Content-Type")) assert.Equal(t, "com.amazonaws.foo.OperationName", r.Header.Get("X-Amz-Target")) } func TestInputService6ProtocolTestEmptyMapsCase1(t *testing.T) { svc := NewInputService6ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService6TestShapeInputService6TestCaseOperation1Input{ Map: map[string]*string{}, } req, _ := svc.InputService6TestCaseOperation1Request(input) r := req.HTTPRequest // build request jsonrpc.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"Map":{}}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers assert.Equal(t, "application/x-amz-json-1.1", r.Header.Get("Content-Type")) assert.Equal(t, "com.amazonaws.foo.OperationName", r.Header.Get("X-Amz-Target")) } func TestInputService7ProtocolTestIdempotencyTokenAutoFillCase1(t *testing.T) { svc := NewInputService7ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService7TestShapeInputShape{ Token: aws.String("abc123"), } req, _ := svc.InputService7TestCaseOperation1Request(input) r := req.HTTPRequest // build request jsonrpc.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"Token":"abc123"}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService7ProtocolTestIdempotencyTokenAutoFillCase2(t *testing.T) { svc := NewInputService7ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService7TestShapeInputShape{} req, _ := svc.InputService7TestCaseOperation2Request(input) r := req.HTTPRequest // build request jsonrpc.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"Token":"00000000-0000-4000-8000-000000000000"}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } aws-sdk-go-1.4.22/private/protocol/jsonrpc/jsonrpc.go000066400000000000000000000072151300374646400225660ustar00rootroot00000000000000// Package jsonrpc provides JSON RPC utilities for serialization of AWS // requests and responses. package jsonrpc //go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/input/json.json build_test.go //go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/output/json.json unmarshal_test.go import ( "encoding/json" "io/ioutil" "strings" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol/json/jsonutil" "github.com/aws/aws-sdk-go/private/protocol/rest" ) var emptyJSON = []byte("{}") // BuildHandler is a named request handler for building jsonrpc protocol requests var BuildHandler = request.NamedHandler{Name: "awssdk.jsonrpc.Build", Fn: Build} // UnmarshalHandler is a named request handler for unmarshaling jsonrpc protocol requests var UnmarshalHandler = request.NamedHandler{Name: "awssdk.jsonrpc.Unmarshal", Fn: Unmarshal} // UnmarshalMetaHandler is a named request handler for unmarshaling jsonrpc protocol request metadata var UnmarshalMetaHandler = request.NamedHandler{Name: "awssdk.jsonrpc.UnmarshalMeta", Fn: UnmarshalMeta} // UnmarshalErrorHandler is a named request handler for unmarshaling jsonrpc protocol request errors var UnmarshalErrorHandler = request.NamedHandler{Name: "awssdk.jsonrpc.UnmarshalError", Fn: UnmarshalError} // Build builds a JSON payload for a JSON RPC request. func Build(req *request.Request) { var buf []byte var err error if req.ParamsFilled() { buf, err = jsonutil.BuildJSON(req.Params) if err != nil { req.Error = awserr.New("SerializationError", "failed encoding JSON RPC request", err) return } } else { buf = emptyJSON } if req.ClientInfo.TargetPrefix != "" || string(buf) != "{}" { req.SetBufferBody(buf) } if req.ClientInfo.TargetPrefix != "" { target := req.ClientInfo.TargetPrefix + "." + req.Operation.Name req.HTTPRequest.Header.Add("X-Amz-Target", target) } if req.ClientInfo.JSONVersion != "" { jsonVersion := req.ClientInfo.JSONVersion req.HTTPRequest.Header.Add("Content-Type", "application/x-amz-json-"+jsonVersion) } } // Unmarshal unmarshals a response for a JSON RPC service. func Unmarshal(req *request.Request) { defer req.HTTPResponse.Body.Close() if req.DataFilled() { err := jsonutil.UnmarshalJSON(req.Data, req.HTTPResponse.Body) if err != nil { req.Error = awserr.New("SerializationError", "failed decoding JSON RPC response", err) } } return } // UnmarshalMeta unmarshals headers from a response for a JSON RPC service. func UnmarshalMeta(req *request.Request) { rest.UnmarshalMeta(req) } // UnmarshalError unmarshals an error response for a JSON RPC service. func UnmarshalError(req *request.Request) { defer req.HTTPResponse.Body.Close() bodyBytes, err := ioutil.ReadAll(req.HTTPResponse.Body) if err != nil { req.Error = awserr.New("SerializationError", "failed reading JSON RPC error response", err) return } if len(bodyBytes) == 0 { req.Error = awserr.NewRequestFailure( awserr.New("SerializationError", req.HTTPResponse.Status, nil), req.HTTPResponse.StatusCode, "", ) return } var jsonErr jsonErrorResponse if err := json.Unmarshal(bodyBytes, &jsonErr); err != nil { req.Error = awserr.New("SerializationError", "failed decoding JSON RPC error response", err) return } codes := strings.SplitN(jsonErr.Code, "#", 2) req.Error = awserr.NewRequestFailure( awserr.New(codes[len(codes)-1], jsonErr.Message, nil), req.HTTPResponse.StatusCode, req.RequestID, ) } type jsonErrorResponse struct { Code string `json:"__type"` Message string `json:"message"` } aws-sdk-go-1.4.22/private/protocol/jsonrpc/unmarshal_test.go000066400000000000000000001145321300374646400241420ustar00rootroot00000000000000package jsonrpc_test import ( "bytes" "encoding/json" "encoding/xml" "fmt" "io" "io/ioutil" "net/http" "net/url" "testing" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil" "github.com/aws/aws-sdk-go/private/util" "github.com/stretchr/testify/assert" ) var _ bytes.Buffer // always import bytes var _ http.Request var _ json.Marshaler var _ time.Time var _ xmlutil.XMLNode var _ xml.Attr var _ = ioutil.Discard var _ = util.Trim("") var _ = url.Values{} var _ = io.EOF var _ = aws.String var _ = fmt.Println func init() { protocol.RandReader = &awstesting.ZeroReader{} } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService1ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService1ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService1ProtocolTest client from just a session. // svc := outputservice1protocoltest.New(mySession) // // // Create a OutputService1ProtocolTest client with additional configuration // svc := outputservice1protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService1ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService1ProtocolTest { c := p.ClientConfig("outputservice1protocoltest", cfgs...) return newOutputService1ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService1ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService1ProtocolTest { svc := &OutputService1ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice1protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", JSONVersion: "", TargetPrefix: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService1ProtocolTest operation and runs any // custom request initialization. func (c *OutputService1ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService1TestCaseOperation1 = "OperationName" // OutputService1TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService1TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService1TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService1TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService1TestCaseOperation1Request method. // req, resp := client.OutputService1TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService1ProtocolTest) OutputService1TestCaseOperation1Request(input *OutputService1TestShapeOutputService1TestCaseOperation1Input) (req *request.Request, output *OutputService1TestShapeOutputService1TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService1TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService1TestShapeOutputService1TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService1TestShapeOutputService1TestCaseOperation1Output{} req.Data = output return } // OutputService1TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService1TestCaseOperation1 for usage and error information. func (c *OutputService1ProtocolTest) OutputService1TestCaseOperation1(input *OutputService1TestShapeOutputService1TestCaseOperation1Input) (*OutputService1TestShapeOutputService1TestCaseOperation1Output, error) { req, out := c.OutputService1TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService1TestShapeOutputService1TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService1TestShapeOutputService1TestCaseOperation1Output struct { _ struct{} `type:"structure"` Char *string `type:"character"` Double *float64 `type:"double"` FalseBool *bool `type:"boolean"` Float *float64 `type:"float"` Long *int64 `type:"long"` Num *int64 `type:"integer"` Str *string `type:"string"` TrueBool *bool `type:"boolean"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService2ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService2ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService2ProtocolTest client from just a session. // svc := outputservice2protocoltest.New(mySession) // // // Create a OutputService2ProtocolTest client with additional configuration // svc := outputservice2protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService2ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService2ProtocolTest { c := p.ClientConfig("outputservice2protocoltest", cfgs...) return newOutputService2ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService2ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService2ProtocolTest { svc := &OutputService2ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice2protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", JSONVersion: "", TargetPrefix: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService2ProtocolTest operation and runs any // custom request initialization. func (c *OutputService2ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService2TestCaseOperation1 = "OperationName" // OutputService2TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService2TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService2TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService2TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService2TestCaseOperation1Request method. // req, resp := client.OutputService2TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService2ProtocolTest) OutputService2TestCaseOperation1Request(input *OutputService2TestShapeOutputService2TestCaseOperation1Input) (req *request.Request, output *OutputService2TestShapeOutputService2TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService2TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService2TestShapeOutputService2TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService2TestShapeOutputService2TestCaseOperation1Output{} req.Data = output return } // OutputService2TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService2TestCaseOperation1 for usage and error information. func (c *OutputService2ProtocolTest) OutputService2TestCaseOperation1(input *OutputService2TestShapeOutputService2TestCaseOperation1Input) (*OutputService2TestShapeOutputService2TestCaseOperation1Output, error) { req, out := c.OutputService2TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService2TestShapeBlobContainer struct { _ struct{} `type:"structure"` // Foo is automatically base64 encoded/decoded by the SDK. Foo []byte `locationName:"foo" type:"blob"` } type OutputService2TestShapeOutputService2TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService2TestShapeOutputService2TestCaseOperation1Output struct { _ struct{} `type:"structure"` // BlobMember is automatically base64 encoded/decoded by the SDK. BlobMember []byte `type:"blob"` StructMember *OutputService2TestShapeBlobContainer `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService3ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService3ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService3ProtocolTest client from just a session. // svc := outputservice3protocoltest.New(mySession) // // // Create a OutputService3ProtocolTest client with additional configuration // svc := outputservice3protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService3ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService3ProtocolTest { c := p.ClientConfig("outputservice3protocoltest", cfgs...) return newOutputService3ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService3ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService3ProtocolTest { svc := &OutputService3ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice3protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", JSONVersion: "", TargetPrefix: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService3ProtocolTest operation and runs any // custom request initialization. func (c *OutputService3ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService3TestCaseOperation1 = "OperationName" // OutputService3TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService3TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService3TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService3TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService3TestCaseOperation1Request method. // req, resp := client.OutputService3TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService3ProtocolTest) OutputService3TestCaseOperation1Request(input *OutputService3TestShapeOutputService3TestCaseOperation1Input) (req *request.Request, output *OutputService3TestShapeOutputService3TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService3TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService3TestShapeOutputService3TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService3TestShapeOutputService3TestCaseOperation1Output{} req.Data = output return } // OutputService3TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService3TestCaseOperation1 for usage and error information. func (c *OutputService3ProtocolTest) OutputService3TestCaseOperation1(input *OutputService3TestShapeOutputService3TestCaseOperation1Input) (*OutputService3TestShapeOutputService3TestCaseOperation1Output, error) { req, out := c.OutputService3TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService3TestShapeOutputService3TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService3TestShapeOutputService3TestCaseOperation1Output struct { _ struct{} `type:"structure"` StructMember *OutputService3TestShapeTimeContainer `type:"structure"` TimeMember *time.Time `type:"timestamp" timestampFormat:"unix"` } type OutputService3TestShapeTimeContainer struct { _ struct{} `type:"structure"` Foo *time.Time `locationName:"foo" type:"timestamp" timestampFormat:"unix"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService4ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService4ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService4ProtocolTest client from just a session. // svc := outputservice4protocoltest.New(mySession) // // // Create a OutputService4ProtocolTest client with additional configuration // svc := outputservice4protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService4ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService4ProtocolTest { c := p.ClientConfig("outputservice4protocoltest", cfgs...) return newOutputService4ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService4ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService4ProtocolTest { svc := &OutputService4ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice4protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", JSONVersion: "", TargetPrefix: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService4ProtocolTest operation and runs any // custom request initialization. func (c *OutputService4ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService4TestCaseOperation1 = "OperationName" // OutputService4TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService4TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService4TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService4TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService4TestCaseOperation1Request method. // req, resp := client.OutputService4TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService4ProtocolTest) OutputService4TestCaseOperation1Request(input *OutputService4TestShapeOutputService4TestCaseOperation1Input) (req *request.Request, output *OutputService4TestShapeOutputShape) { op := &request.Operation{ Name: opOutputService4TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService4TestShapeOutputService4TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService4TestShapeOutputShape{} req.Data = output return } // OutputService4TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService4TestCaseOperation1 for usage and error information. func (c *OutputService4ProtocolTest) OutputService4TestCaseOperation1(input *OutputService4TestShapeOutputService4TestCaseOperation1Input) (*OutputService4TestShapeOutputShape, error) { req, out := c.OutputService4TestCaseOperation1Request(input) err := req.Send() return out, err } const opOutputService4TestCaseOperation2 = "OperationName" // OutputService4TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the OutputService4TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService4TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService4TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService4TestCaseOperation2Request method. // req, resp := client.OutputService4TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService4ProtocolTest) OutputService4TestCaseOperation2Request(input *OutputService4TestShapeOutputService4TestCaseOperation2Input) (req *request.Request, output *OutputService4TestShapeOutputShape) { op := &request.Operation{ Name: opOutputService4TestCaseOperation2, HTTPPath: "/", } if input == nil { input = &OutputService4TestShapeOutputService4TestCaseOperation2Input{} } req = c.newRequest(op, input, output) output = &OutputService4TestShapeOutputShape{} req.Data = output return } // OutputService4TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService4TestCaseOperation2 for usage and error information. func (c *OutputService4ProtocolTest) OutputService4TestCaseOperation2(input *OutputService4TestShapeOutputService4TestCaseOperation2Input) (*OutputService4TestShapeOutputShape, error) { req, out := c.OutputService4TestCaseOperation2Request(input) err := req.Send() return out, err } type OutputService4TestShapeOutputService4TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService4TestShapeOutputService4TestCaseOperation2Input struct { _ struct{} `type:"structure"` } type OutputService4TestShapeOutputShape struct { _ struct{} `type:"structure"` ListMember []*string `type:"list"` ListMemberMap []map[string]*string `type:"list"` ListMemberStruct []*OutputService4TestShapeStructType `type:"list"` } type OutputService4TestShapeStructType struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService5ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService5ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService5ProtocolTest client from just a session. // svc := outputservice5protocoltest.New(mySession) // // // Create a OutputService5ProtocolTest client with additional configuration // svc := outputservice5protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService5ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService5ProtocolTest { c := p.ClientConfig("outputservice5protocoltest", cfgs...) return newOutputService5ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService5ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService5ProtocolTest { svc := &OutputService5ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice5protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", JSONVersion: "", TargetPrefix: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService5ProtocolTest operation and runs any // custom request initialization. func (c *OutputService5ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService5TestCaseOperation1 = "OperationName" // OutputService5TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService5TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService5TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService5TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService5TestCaseOperation1Request method. // req, resp := client.OutputService5TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService5ProtocolTest) OutputService5TestCaseOperation1Request(input *OutputService5TestShapeOutputService5TestCaseOperation1Input) (req *request.Request, output *OutputService5TestShapeOutputService5TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService5TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService5TestShapeOutputService5TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService5TestShapeOutputService5TestCaseOperation1Output{} req.Data = output return } // OutputService5TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService5TestCaseOperation1 for usage and error information. func (c *OutputService5ProtocolTest) OutputService5TestCaseOperation1(input *OutputService5TestShapeOutputService5TestCaseOperation1Input) (*OutputService5TestShapeOutputService5TestCaseOperation1Output, error) { req, out := c.OutputService5TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService5TestShapeOutputService5TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService5TestShapeOutputService5TestCaseOperation1Output struct { _ struct{} `type:"structure"` MapMember map[string][]*int64 `type:"map"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService6ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService6ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService6ProtocolTest client from just a session. // svc := outputservice6protocoltest.New(mySession) // // // Create a OutputService6ProtocolTest client with additional configuration // svc := outputservice6protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService6ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService6ProtocolTest { c := p.ClientConfig("outputservice6protocoltest", cfgs...) return newOutputService6ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService6ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService6ProtocolTest { svc := &OutputService6ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice6protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", JSONVersion: "", TargetPrefix: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService6ProtocolTest operation and runs any // custom request initialization. func (c *OutputService6ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService6TestCaseOperation1 = "OperationName" // OutputService6TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService6TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService6TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService6TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService6TestCaseOperation1Request method. // req, resp := client.OutputService6TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService6ProtocolTest) OutputService6TestCaseOperation1Request(input *OutputService6TestShapeOutputService6TestCaseOperation1Input) (req *request.Request, output *OutputService6TestShapeOutputService6TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService6TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService6TestShapeOutputService6TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService6TestShapeOutputService6TestCaseOperation1Output{} req.Data = output return } // OutputService6TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService6TestCaseOperation1 for usage and error information. func (c *OutputService6ProtocolTest) OutputService6TestCaseOperation1(input *OutputService6TestShapeOutputService6TestCaseOperation1Input) (*OutputService6TestShapeOutputService6TestCaseOperation1Output, error) { req, out := c.OutputService6TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService6TestShapeOutputService6TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService6TestShapeOutputService6TestCaseOperation1Output struct { _ struct{} `type:"structure"` StrType *string `type:"string"` } // // Tests begin here // func TestOutputService1ProtocolTestScalarMembersCase1(t *testing.T) { svc := NewOutputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("{\"Str\": \"myname\", \"Num\": 123, \"FalseBool\": false, \"TrueBool\": true, \"Float\": 1.2, \"Double\": 1.3, \"Long\": 200, \"Char\": \"a\"}")) req, out := svc.OutputService1TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response jsonrpc.UnmarshalMeta(req) jsonrpc.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "a", *out.Char) assert.Equal(t, 1.3, *out.Double) assert.Equal(t, false, *out.FalseBool) assert.Equal(t, 1.2, *out.Float) assert.Equal(t, int64(200), *out.Long) assert.Equal(t, int64(123), *out.Num) assert.Equal(t, "myname", *out.Str) assert.Equal(t, true, *out.TrueBool) } func TestOutputService2ProtocolTestBlobMembersCase1(t *testing.T) { svc := NewOutputService2ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("{\"BlobMember\": \"aGkh\", \"StructMember\": {\"foo\": \"dGhlcmUh\"}}")) req, out := svc.OutputService2TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response jsonrpc.UnmarshalMeta(req) jsonrpc.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "hi!", string(out.BlobMember)) assert.Equal(t, "there!", string(out.StructMember.Foo)) } func TestOutputService3ProtocolTestTimestampMembersCase1(t *testing.T) { svc := NewOutputService3ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("{\"TimeMember\": 1398796238, \"StructMember\": {\"foo\": 1398796238}}")) req, out := svc.OutputService3TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response jsonrpc.UnmarshalMeta(req) jsonrpc.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, time.Unix(1.398796238e+09, 0).UTC().String(), out.StructMember.Foo.String()) assert.Equal(t, time.Unix(1.398796238e+09, 0).UTC().String(), out.TimeMember.String()) } func TestOutputService4ProtocolTestListsCase1(t *testing.T) { svc := NewOutputService4ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("{\"ListMember\": [\"a\", \"b\"]}")) req, out := svc.OutputService4TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response jsonrpc.UnmarshalMeta(req) jsonrpc.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "a", *out.ListMember[0]) assert.Equal(t, "b", *out.ListMember[1]) } func TestOutputService4ProtocolTestListsCase2(t *testing.T) { svc := NewOutputService4ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("{\"ListMember\": [\"a\", null], \"ListMemberMap\": [{}, null, null, {}], \"ListMemberStruct\": [{}, null, null, {}]}")) req, out := svc.OutputService4TestCaseOperation2Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response jsonrpc.UnmarshalMeta(req) jsonrpc.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "a", *out.ListMember[0]) assert.Nil(t, out.ListMember[1]) assert.Nil(t, out.ListMemberMap[1]) assert.Nil(t, out.ListMemberMap[2]) assert.Nil(t, out.ListMemberStruct[1]) assert.Nil(t, out.ListMemberStruct[2]) } func TestOutputService5ProtocolTestMapsCase1(t *testing.T) { svc := NewOutputService5ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("{\"MapMember\": {\"a\": [1, 2], \"b\": [3, 4]}}")) req, out := svc.OutputService5TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response jsonrpc.UnmarshalMeta(req) jsonrpc.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, int64(1), *out.MapMember["a"][0]) assert.Equal(t, int64(2), *out.MapMember["a"][1]) assert.Equal(t, int64(3), *out.MapMember["b"][0]) assert.Equal(t, int64(4), *out.MapMember["b"][1]) } func TestOutputService6ProtocolTestIgnoresExtraDataCase1(t *testing.T) { svc := NewOutputService6ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("{\"foo\": \"bar\"}")) req, out := svc.OutputService6TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response jsonrpc.UnmarshalMeta(req) jsonrpc.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used } aws-sdk-go-1.4.22/private/protocol/protocol_test.go000066400000000000000000000144331300374646400223320ustar00rootroot00000000000000package protocol_test import ( "fmt" "net/http" "net/url" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/ec2query" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" "github.com/aws/aws-sdk-go/private/protocol/query" "github.com/aws/aws-sdk-go/private/protocol/rest" "github.com/aws/aws-sdk-go/private/protocol/restjson" "github.com/aws/aws-sdk-go/private/protocol/restxml" ) func xmlData(set bool, b []byte, size, delta int) { if !set { copy(b, []byte("")) } if size == 0 { copy(b[delta-len(""):], []byte("")) } } func jsonData(set bool, b []byte, size, delta int) { if !set { copy(b, []byte("{\"A\": \"")) } if size == 0 { copy(b[delta-len("\"}"):], []byte("\"}")) } } func buildNewRequest(data interface{}) *request.Request { v := url.Values{} v.Set("test", "TEST") v.Add("test1", "TEST1") req := &request.Request{ HTTPRequest: &http.Request{ Header: make(http.Header), Body: &awstesting.ReadCloser{Size: 2048}, URL: &url.URL{ RawQuery: v.Encode(), }, }, Params: &struct { LocationName string `locationName:"test"` }{ "Test", }, ClientInfo: metadata.ClientInfo{ ServiceName: "test", TargetPrefix: "test", JSONVersion: "test", APIVersion: "test", Endpoint: "test", SigningName: "test", SigningRegion: "test", }, Operation: &request.Operation{ Name: "test", }, } req.HTTPResponse = &http.Response{ Body: &awstesting.ReadCloser{Size: 2048}, Header: http.Header{ "X-Amzn-Requestid": []string{"1"}, }, StatusCode: http.StatusOK, } if data == nil { data = &struct { _ struct{} `type:"structure"` LocationName *string `locationName:"testName"` Location *string `location:"statusCode"` A *string `type:"string"` }{} } req.Data = data return req } type expected struct { dataType int closed bool size int errExists bool } const ( jsonType = iota xmlType ) func checkForLeak(data interface{}, build, fn func(*request.Request), t *testing.T, result expected) { req := buildNewRequest(data) reader := req.HTTPResponse.Body.(*awstesting.ReadCloser) switch result.dataType { case jsonType: reader.FillData = jsonData case xmlType: reader.FillData = xmlData } build(req) fn(req) if result.errExists { assert.NotNil(t, req.Error) } else { fmt.Println(req.Error) assert.Nil(t, req.Error) } assert.Equal(t, reader.Closed, result.closed) assert.Equal(t, reader.Size, result.size) } func TestJSONRpc(t *testing.T) { checkForLeak(nil, jsonrpc.Build, jsonrpc.Unmarshal, t, expected{jsonType, true, 0, false}) checkForLeak(nil, jsonrpc.Build, jsonrpc.UnmarshalMeta, t, expected{jsonType, false, 2048, false}) checkForLeak(nil, jsonrpc.Build, jsonrpc.UnmarshalError, t, expected{jsonType, true, 0, true}) } func TestQuery(t *testing.T) { checkForLeak(nil, query.Build, query.Unmarshal, t, expected{jsonType, true, 0, false}) checkForLeak(nil, query.Build, query.UnmarshalMeta, t, expected{jsonType, false, 2048, false}) checkForLeak(nil, query.Build, query.UnmarshalError, t, expected{jsonType, true, 0, true}) } func TestRest(t *testing.T) { // case 1: Payload io.ReadSeeker checkForLeak(nil, rest.Build, rest.Unmarshal, t, expected{jsonType, false, 2048, false}) checkForLeak(nil, query.Build, query.UnmarshalMeta, t, expected{jsonType, false, 2048, false}) // case 2: Payload *string // should close the body dataStr := struct { _ struct{} `type:"structure" payload:"Payload"` LocationName *string `locationName:"testName"` Location *string `location:"statusCode"` A *string `type:"string"` Payload *string `locationName:"payload" type:"blob" required:"true"` }{} checkForLeak(&dataStr, rest.Build, rest.Unmarshal, t, expected{jsonType, true, 0, false}) checkForLeak(&dataStr, query.Build, query.UnmarshalMeta, t, expected{jsonType, false, 2048, false}) // case 3: Payload []byte // should close the body dataBytes := struct { _ struct{} `type:"structure" payload:"Payload"` LocationName *string `locationName:"testName"` Location *string `location:"statusCode"` A *string `type:"string"` Payload []byte `locationName:"payload" type:"blob" required:"true"` }{} checkForLeak(&dataBytes, rest.Build, rest.Unmarshal, t, expected{jsonType, true, 0, false}) checkForLeak(&dataBytes, query.Build, query.UnmarshalMeta, t, expected{jsonType, false, 2048, false}) // case 4: Payload unsupported type // should close the body dataUnsupported := struct { _ struct{} `type:"structure" payload:"Payload"` LocationName *string `locationName:"testName"` Location *string `location:"statusCode"` A *string `type:"string"` Payload string `locationName:"payload" type:"blob" required:"true"` }{} checkForLeak(&dataUnsupported, rest.Build, rest.Unmarshal, t, expected{jsonType, true, 0, true}) checkForLeak(&dataUnsupported, query.Build, query.UnmarshalMeta, t, expected{jsonType, false, 2048, false}) } func TestRestJSON(t *testing.T) { checkForLeak(nil, restjson.Build, restjson.Unmarshal, t, expected{jsonType, true, 0, false}) checkForLeak(nil, restjson.Build, restjson.UnmarshalMeta, t, expected{jsonType, false, 2048, false}) checkForLeak(nil, restjson.Build, restjson.UnmarshalError, t, expected{jsonType, true, 0, true}) } func TestRestXML(t *testing.T) { checkForLeak(nil, restxml.Build, restxml.Unmarshal, t, expected{xmlType, true, 0, false}) checkForLeak(nil, restxml.Build, restxml.UnmarshalMeta, t, expected{xmlType, false, 2048, false}) checkForLeak(nil, restxml.Build, restxml.UnmarshalError, t, expected{xmlType, true, 0, true}) } func TestXML(t *testing.T) { checkForLeak(nil, ec2query.Build, ec2query.Unmarshal, t, expected{jsonType, true, 0, false}) checkForLeak(nil, ec2query.Build, ec2query.UnmarshalMeta, t, expected{jsonType, false, 2048, false}) checkForLeak(nil, ec2query.Build, ec2query.UnmarshalError, t, expected{jsonType, true, 0, true}) } func TestProtocol(t *testing.T) { checkForLeak(nil, restxml.Build, protocol.UnmarshalDiscardBody, t, expected{xmlType, true, 0, false}) } aws-sdk-go-1.4.22/private/protocol/query/000077500000000000000000000000001300374646400202435ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/protocol/query/build.go000066400000000000000000000023021300374646400216660ustar00rootroot00000000000000// Package query provides serialization of AWS query requests, and responses. package query //go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/input/query.json build_test.go import ( "net/url" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol/query/queryutil" ) // BuildHandler is a named request handler for building query protocol requests var BuildHandler = request.NamedHandler{Name: "awssdk.query.Build", Fn: Build} // Build builds a request for an AWS Query service. func Build(r *request.Request) { body := url.Values{ "Action": {r.Operation.Name}, "Version": {r.ClientInfo.APIVersion}, } if err := queryutil.Parse(body, r.Params, false); err != nil { r.Error = awserr.New("SerializationError", "failed encoding Query request", err) return } if r.ExpireTime == 0 { r.HTTPRequest.Method = "POST" r.HTTPRequest.Header.Set("Content-Type", "application/x-www-form-urlencoded; charset=utf-8") r.SetBufferBody([]byte(body.Encode())) } else { // This is a pre-signed request r.HTTPRequest.Method = "GET" r.HTTPRequest.URL.RawQuery = body.Encode() } } aws-sdk-go-1.4.22/private/protocol/query/build_test.go000066400000000000000000003273031300374646400227400ustar00rootroot00000000000000package query_test import ( "bytes" "encoding/json" "encoding/xml" "fmt" "io" "io/ioutil" "net/http" "net/url" "testing" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/query" "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil" "github.com/aws/aws-sdk-go/private/util" "github.com/stretchr/testify/assert" ) var _ bytes.Buffer // always import bytes var _ http.Request var _ json.Marshaler var _ time.Time var _ xmlutil.XMLNode var _ xml.Attr var _ = ioutil.Discard var _ = util.Trim("") var _ = url.Values{} var _ = io.EOF var _ = aws.String var _ = fmt.Println func init() { protocol.RandReader = &awstesting.ZeroReader{} } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService1ProtocolTest struct { *client.Client } // New creates a new instance of the InputService1ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService1ProtocolTest client from just a session. // svc := inputservice1protocoltest.New(mySession) // // // Create a InputService1ProtocolTest client with additional configuration // svc := inputservice1protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService1ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService1ProtocolTest { c := p.ClientConfig("inputservice1protocoltest", cfgs...) return newInputService1ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService1ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService1ProtocolTest { svc := &InputService1ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice1protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService1ProtocolTest operation and runs any // custom request initialization. func (c *InputService1ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService1TestCaseOperation1 = "OperationName" // InputService1TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService1TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService1TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService1TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService1TestCaseOperation1Request method. // req, resp := client.InputService1TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService1ProtocolTest) InputService1TestCaseOperation1Request(input *InputService1TestShapeInputShape) (req *request.Request, output *InputService1TestShapeInputService1TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService1TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService1TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService1TestShapeInputService1TestCaseOperation1Output{} req.Data = output return } // InputService1TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService1TestCaseOperation1 for usage and error information. func (c *InputService1ProtocolTest) InputService1TestCaseOperation1(input *InputService1TestShapeInputShape) (*InputService1TestShapeInputService1TestCaseOperation1Output, error) { req, out := c.InputService1TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService1TestCaseOperation2 = "OperationName" // InputService1TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService1TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService1TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService1TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService1TestCaseOperation2Request method. // req, resp := client.InputService1TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService1ProtocolTest) InputService1TestCaseOperation2Request(input *InputService1TestShapeInputShape) (req *request.Request, output *InputService1TestShapeInputService1TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService1TestCaseOperation2, HTTPPath: "/", } if input == nil { input = &InputService1TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService1TestShapeInputService1TestCaseOperation2Output{} req.Data = output return } // InputService1TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService1TestCaseOperation2 for usage and error information. func (c *InputService1ProtocolTest) InputService1TestCaseOperation2(input *InputService1TestShapeInputShape) (*InputService1TestShapeInputService1TestCaseOperation2Output, error) { req, out := c.InputService1TestCaseOperation2Request(input) err := req.Send() return out, err } const opInputService1TestCaseOperation3 = "OperationName" // InputService1TestCaseOperation3Request generates a "aws/request.Request" representing the // client's request for the InputService1TestCaseOperation3 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService1TestCaseOperation3 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService1TestCaseOperation3 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService1TestCaseOperation3Request method. // req, resp := client.InputService1TestCaseOperation3Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService1ProtocolTest) InputService1TestCaseOperation3Request(input *InputService1TestShapeInputShape) (req *request.Request, output *InputService1TestShapeInputService1TestCaseOperation3Output) { op := &request.Operation{ Name: opInputService1TestCaseOperation3, HTTPPath: "/", } if input == nil { input = &InputService1TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService1TestShapeInputService1TestCaseOperation3Output{} req.Data = output return } // InputService1TestCaseOperation3 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService1TestCaseOperation3 for usage and error information. func (c *InputService1ProtocolTest) InputService1TestCaseOperation3(input *InputService1TestShapeInputShape) (*InputService1TestShapeInputService1TestCaseOperation3Output, error) { req, out := c.InputService1TestCaseOperation3Request(input) err := req.Send() return out, err } type InputService1TestShapeInputService1TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService1TestShapeInputService1TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService1TestShapeInputService1TestCaseOperation3Output struct { _ struct{} `type:"structure"` } type InputService1TestShapeInputShape struct { _ struct{} `type:"structure"` Bar *string `type:"string"` Baz *bool `type:"boolean"` Foo *string `type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService2ProtocolTest struct { *client.Client } // New creates a new instance of the InputService2ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService2ProtocolTest client from just a session. // svc := inputservice2protocoltest.New(mySession) // // // Create a InputService2ProtocolTest client with additional configuration // svc := inputservice2protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService2ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService2ProtocolTest { c := p.ClientConfig("inputservice2protocoltest", cfgs...) return newInputService2ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService2ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService2ProtocolTest { svc := &InputService2ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice2protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService2ProtocolTest operation and runs any // custom request initialization. func (c *InputService2ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService2TestCaseOperation1 = "OperationName" // InputService2TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService2TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService2TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService2TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService2TestCaseOperation1Request method. // req, resp := client.InputService2TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService2ProtocolTest) InputService2TestCaseOperation1Request(input *InputService2TestShapeInputService2TestCaseOperation1Input) (req *request.Request, output *InputService2TestShapeInputService2TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService2TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService2TestShapeInputService2TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService2TestShapeInputService2TestCaseOperation1Output{} req.Data = output return } // InputService2TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService2TestCaseOperation1 for usage and error information. func (c *InputService2ProtocolTest) InputService2TestCaseOperation1(input *InputService2TestShapeInputService2TestCaseOperation1Input) (*InputService2TestShapeInputService2TestCaseOperation1Output, error) { req, out := c.InputService2TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService2TestShapeInputService2TestCaseOperation1Input struct { _ struct{} `type:"structure"` StructArg *InputService2TestShapeStructType `type:"structure"` } type InputService2TestShapeInputService2TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService2TestShapeStructType struct { _ struct{} `type:"structure"` ScalarArg *string `type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService3ProtocolTest struct { *client.Client } // New creates a new instance of the InputService3ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService3ProtocolTest client from just a session. // svc := inputservice3protocoltest.New(mySession) // // // Create a InputService3ProtocolTest client with additional configuration // svc := inputservice3protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService3ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService3ProtocolTest { c := p.ClientConfig("inputservice3protocoltest", cfgs...) return newInputService3ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService3ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService3ProtocolTest { svc := &InputService3ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice3protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService3ProtocolTest operation and runs any // custom request initialization. func (c *InputService3ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService3TestCaseOperation1 = "OperationName" // InputService3TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService3TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService3TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService3TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService3TestCaseOperation1Request method. // req, resp := client.InputService3TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService3ProtocolTest) InputService3TestCaseOperation1Request(input *InputService3TestShapeInputShape) (req *request.Request, output *InputService3TestShapeInputService3TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService3TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService3TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService3TestShapeInputService3TestCaseOperation1Output{} req.Data = output return } // InputService3TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService3TestCaseOperation1 for usage and error information. func (c *InputService3ProtocolTest) InputService3TestCaseOperation1(input *InputService3TestShapeInputShape) (*InputService3TestShapeInputService3TestCaseOperation1Output, error) { req, out := c.InputService3TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService3TestCaseOperation2 = "OperationName" // InputService3TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService3TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService3TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService3TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService3TestCaseOperation2Request method. // req, resp := client.InputService3TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService3ProtocolTest) InputService3TestCaseOperation2Request(input *InputService3TestShapeInputShape) (req *request.Request, output *InputService3TestShapeInputService3TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService3TestCaseOperation2, HTTPPath: "/", } if input == nil { input = &InputService3TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService3TestShapeInputService3TestCaseOperation2Output{} req.Data = output return } // InputService3TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService3TestCaseOperation2 for usage and error information. func (c *InputService3ProtocolTest) InputService3TestCaseOperation2(input *InputService3TestShapeInputShape) (*InputService3TestShapeInputService3TestCaseOperation2Output, error) { req, out := c.InputService3TestCaseOperation2Request(input) err := req.Send() return out, err } type InputService3TestShapeInputService3TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService3TestShapeInputService3TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService3TestShapeInputShape struct { _ struct{} `type:"structure"` ListArg []*string `type:"list"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService4ProtocolTest struct { *client.Client } // New creates a new instance of the InputService4ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService4ProtocolTest client from just a session. // svc := inputservice4protocoltest.New(mySession) // // // Create a InputService4ProtocolTest client with additional configuration // svc := inputservice4protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService4ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService4ProtocolTest { c := p.ClientConfig("inputservice4protocoltest", cfgs...) return newInputService4ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService4ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService4ProtocolTest { svc := &InputService4ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice4protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService4ProtocolTest operation and runs any // custom request initialization. func (c *InputService4ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService4TestCaseOperation1 = "OperationName" // InputService4TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService4TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService4TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService4TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService4TestCaseOperation1Request method. // req, resp := client.InputService4TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService4ProtocolTest) InputService4TestCaseOperation1Request(input *InputService4TestShapeInputShape) (req *request.Request, output *InputService4TestShapeInputService4TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService4TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService4TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService4TestShapeInputService4TestCaseOperation1Output{} req.Data = output return } // InputService4TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService4TestCaseOperation1 for usage and error information. func (c *InputService4ProtocolTest) InputService4TestCaseOperation1(input *InputService4TestShapeInputShape) (*InputService4TestShapeInputService4TestCaseOperation1Output, error) { req, out := c.InputService4TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService4TestCaseOperation2 = "OperationName" // InputService4TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService4TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService4TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService4TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService4TestCaseOperation2Request method. // req, resp := client.InputService4TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService4ProtocolTest) InputService4TestCaseOperation2Request(input *InputService4TestShapeInputShape) (req *request.Request, output *InputService4TestShapeInputService4TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService4TestCaseOperation2, HTTPPath: "/", } if input == nil { input = &InputService4TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService4TestShapeInputService4TestCaseOperation2Output{} req.Data = output return } // InputService4TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService4TestCaseOperation2 for usage and error information. func (c *InputService4ProtocolTest) InputService4TestCaseOperation2(input *InputService4TestShapeInputShape) (*InputService4TestShapeInputService4TestCaseOperation2Output, error) { req, out := c.InputService4TestCaseOperation2Request(input) err := req.Send() return out, err } type InputService4TestShapeInputService4TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService4TestShapeInputService4TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService4TestShapeInputShape struct { _ struct{} `type:"structure"` ListArg []*string `type:"list" flattened:"true"` NamedListArg []*string `locationNameList:"Foo" type:"list" flattened:"true"` ScalarArg *string `type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService5ProtocolTest struct { *client.Client } // New creates a new instance of the InputService5ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService5ProtocolTest client from just a session. // svc := inputservice5protocoltest.New(mySession) // // // Create a InputService5ProtocolTest client with additional configuration // svc := inputservice5protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService5ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService5ProtocolTest { c := p.ClientConfig("inputservice5protocoltest", cfgs...) return newInputService5ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService5ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService5ProtocolTest { svc := &InputService5ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice5protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService5ProtocolTest operation and runs any // custom request initialization. func (c *InputService5ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService5TestCaseOperation1 = "OperationName" // InputService5TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService5TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService5TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService5TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService5TestCaseOperation1Request method. // req, resp := client.InputService5TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService5ProtocolTest) InputService5TestCaseOperation1Request(input *InputService5TestShapeInputService5TestCaseOperation1Input) (req *request.Request, output *InputService5TestShapeInputService5TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService5TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService5TestShapeInputService5TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService5TestShapeInputService5TestCaseOperation1Output{} req.Data = output return } // InputService5TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService5TestCaseOperation1 for usage and error information. func (c *InputService5ProtocolTest) InputService5TestCaseOperation1(input *InputService5TestShapeInputService5TestCaseOperation1Input) (*InputService5TestShapeInputService5TestCaseOperation1Output, error) { req, out := c.InputService5TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService5TestShapeInputService5TestCaseOperation1Input struct { _ struct{} `type:"structure"` MapArg map[string]*string `type:"map" flattened:"true"` } type InputService5TestShapeInputService5TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService6ProtocolTest struct { *client.Client } // New creates a new instance of the InputService6ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService6ProtocolTest client from just a session. // svc := inputservice6protocoltest.New(mySession) // // // Create a InputService6ProtocolTest client with additional configuration // svc := inputservice6protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService6ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService6ProtocolTest { c := p.ClientConfig("inputservice6protocoltest", cfgs...) return newInputService6ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService6ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService6ProtocolTest { svc := &InputService6ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice6protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService6ProtocolTest operation and runs any // custom request initialization. func (c *InputService6ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService6TestCaseOperation1 = "OperationName" // InputService6TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService6TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService6TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService6TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService6TestCaseOperation1Request method. // req, resp := client.InputService6TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService6ProtocolTest) InputService6TestCaseOperation1Request(input *InputService6TestShapeInputService6TestCaseOperation1Input) (req *request.Request, output *InputService6TestShapeInputService6TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService6TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService6TestShapeInputService6TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService6TestShapeInputService6TestCaseOperation1Output{} req.Data = output return } // InputService6TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService6TestCaseOperation1 for usage and error information. func (c *InputService6ProtocolTest) InputService6TestCaseOperation1(input *InputService6TestShapeInputService6TestCaseOperation1Input) (*InputService6TestShapeInputService6TestCaseOperation1Output, error) { req, out := c.InputService6TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService6TestShapeInputService6TestCaseOperation1Input struct { _ struct{} `type:"structure"` ListArg []*string `locationNameList:"item" type:"list"` } type InputService6TestShapeInputService6TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService7ProtocolTest struct { *client.Client } // New creates a new instance of the InputService7ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService7ProtocolTest client from just a session. // svc := inputservice7protocoltest.New(mySession) // // // Create a InputService7ProtocolTest client with additional configuration // svc := inputservice7protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService7ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService7ProtocolTest { c := p.ClientConfig("inputservice7protocoltest", cfgs...) return newInputService7ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService7ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService7ProtocolTest { svc := &InputService7ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice7protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService7ProtocolTest operation and runs any // custom request initialization. func (c *InputService7ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService7TestCaseOperation1 = "OperationName" // InputService7TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService7TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService7TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService7TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService7TestCaseOperation1Request method. // req, resp := client.InputService7TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService7ProtocolTest) InputService7TestCaseOperation1Request(input *InputService7TestShapeInputService7TestCaseOperation1Input) (req *request.Request, output *InputService7TestShapeInputService7TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService7TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService7TestShapeInputService7TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService7TestShapeInputService7TestCaseOperation1Output{} req.Data = output return } // InputService7TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService7TestCaseOperation1 for usage and error information. func (c *InputService7ProtocolTest) InputService7TestCaseOperation1(input *InputService7TestShapeInputService7TestCaseOperation1Input) (*InputService7TestShapeInputService7TestCaseOperation1Output, error) { req, out := c.InputService7TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService7TestShapeInputService7TestCaseOperation1Input struct { _ struct{} `type:"structure"` ListArg []*string `locationNameList:"ListArgLocation" type:"list" flattened:"true"` ScalarArg *string `type:"string"` } type InputService7TestShapeInputService7TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService8ProtocolTest struct { *client.Client } // New creates a new instance of the InputService8ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService8ProtocolTest client from just a session. // svc := inputservice8protocoltest.New(mySession) // // // Create a InputService8ProtocolTest client with additional configuration // svc := inputservice8protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService8ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService8ProtocolTest { c := p.ClientConfig("inputservice8protocoltest", cfgs...) return newInputService8ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService8ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService8ProtocolTest { svc := &InputService8ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice8protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService8ProtocolTest operation and runs any // custom request initialization. func (c *InputService8ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService8TestCaseOperation1 = "OperationName" // InputService8TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService8TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService8TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService8TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService8TestCaseOperation1Request method. // req, resp := client.InputService8TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService8ProtocolTest) InputService8TestCaseOperation1Request(input *InputService8TestShapeInputService8TestCaseOperation1Input) (req *request.Request, output *InputService8TestShapeInputService8TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService8TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService8TestShapeInputService8TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService8TestShapeInputService8TestCaseOperation1Output{} req.Data = output return } // InputService8TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService8TestCaseOperation1 for usage and error information. func (c *InputService8ProtocolTest) InputService8TestCaseOperation1(input *InputService8TestShapeInputService8TestCaseOperation1Input) (*InputService8TestShapeInputService8TestCaseOperation1Output, error) { req, out := c.InputService8TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService8TestShapeInputService8TestCaseOperation1Input struct { _ struct{} `type:"structure"` MapArg map[string]*string `type:"map"` } type InputService8TestShapeInputService8TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService9ProtocolTest struct { *client.Client } // New creates a new instance of the InputService9ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService9ProtocolTest client from just a session. // svc := inputservice9protocoltest.New(mySession) // // // Create a InputService9ProtocolTest client with additional configuration // svc := inputservice9protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService9ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService9ProtocolTest { c := p.ClientConfig("inputservice9protocoltest", cfgs...) return newInputService9ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService9ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService9ProtocolTest { svc := &InputService9ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice9protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService9ProtocolTest operation and runs any // custom request initialization. func (c *InputService9ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService9TestCaseOperation1 = "OperationName" // InputService9TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService9TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService9TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService9TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService9TestCaseOperation1Request method. // req, resp := client.InputService9TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService9ProtocolTest) InputService9TestCaseOperation1Request(input *InputService9TestShapeInputService9TestCaseOperation1Input) (req *request.Request, output *InputService9TestShapeInputService9TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService9TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService9TestShapeInputService9TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService9TestShapeInputService9TestCaseOperation1Output{} req.Data = output return } // InputService9TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService9TestCaseOperation1 for usage and error information. func (c *InputService9ProtocolTest) InputService9TestCaseOperation1(input *InputService9TestShapeInputService9TestCaseOperation1Input) (*InputService9TestShapeInputService9TestCaseOperation1Output, error) { req, out := c.InputService9TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService9TestShapeInputService9TestCaseOperation1Input struct { _ struct{} `type:"structure"` MapArg map[string]*string `locationNameKey:"TheKey" locationNameValue:"TheValue" type:"map"` } type InputService9TestShapeInputService9TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService10ProtocolTest struct { *client.Client } // New creates a new instance of the InputService10ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService10ProtocolTest client from just a session. // svc := inputservice10protocoltest.New(mySession) // // // Create a InputService10ProtocolTest client with additional configuration // svc := inputservice10protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService10ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService10ProtocolTest { c := p.ClientConfig("inputservice10protocoltest", cfgs...) return newInputService10ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService10ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService10ProtocolTest { svc := &InputService10ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice10protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService10ProtocolTest operation and runs any // custom request initialization. func (c *InputService10ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService10TestCaseOperation1 = "OperationName" // InputService10TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService10TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService10TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService10TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService10TestCaseOperation1Request method. // req, resp := client.InputService10TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService10ProtocolTest) InputService10TestCaseOperation1Request(input *InputService10TestShapeInputService10TestCaseOperation1Input) (req *request.Request, output *InputService10TestShapeInputService10TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService10TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService10TestShapeInputService10TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService10TestShapeInputService10TestCaseOperation1Output{} req.Data = output return } // InputService10TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService10TestCaseOperation1 for usage and error information. func (c *InputService10ProtocolTest) InputService10TestCaseOperation1(input *InputService10TestShapeInputService10TestCaseOperation1Input) (*InputService10TestShapeInputService10TestCaseOperation1Output, error) { req, out := c.InputService10TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService10TestShapeInputService10TestCaseOperation1Input struct { _ struct{} `type:"structure"` // BlobArg is automatically base64 encoded/decoded by the SDK. BlobArg []byte `type:"blob"` } type InputService10TestShapeInputService10TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService11ProtocolTest struct { *client.Client } // New creates a new instance of the InputService11ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService11ProtocolTest client from just a session. // svc := inputservice11protocoltest.New(mySession) // // // Create a InputService11ProtocolTest client with additional configuration // svc := inputservice11protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService11ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService11ProtocolTest { c := p.ClientConfig("inputservice11protocoltest", cfgs...) return newInputService11ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService11ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService11ProtocolTest { svc := &InputService11ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice11protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService11ProtocolTest operation and runs any // custom request initialization. func (c *InputService11ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService11TestCaseOperation1 = "OperationName" // InputService11TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService11TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService11TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService11TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService11TestCaseOperation1Request method. // req, resp := client.InputService11TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService11ProtocolTest) InputService11TestCaseOperation1Request(input *InputService11TestShapeInputService11TestCaseOperation1Input) (req *request.Request, output *InputService11TestShapeInputService11TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService11TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService11TestShapeInputService11TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService11TestShapeInputService11TestCaseOperation1Output{} req.Data = output return } // InputService11TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService11TestCaseOperation1 for usage and error information. func (c *InputService11ProtocolTest) InputService11TestCaseOperation1(input *InputService11TestShapeInputService11TestCaseOperation1Input) (*InputService11TestShapeInputService11TestCaseOperation1Output, error) { req, out := c.InputService11TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService11TestShapeInputService11TestCaseOperation1Input struct { _ struct{} `type:"structure"` TimeArg *time.Time `type:"timestamp" timestampFormat:"iso8601"` } type InputService11TestShapeInputService11TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService12ProtocolTest struct { *client.Client } // New creates a new instance of the InputService12ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService12ProtocolTest client from just a session. // svc := inputservice12protocoltest.New(mySession) // // // Create a InputService12ProtocolTest client with additional configuration // svc := inputservice12protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService12ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService12ProtocolTest { c := p.ClientConfig("inputservice12protocoltest", cfgs...) return newInputService12ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService12ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService12ProtocolTest { svc := &InputService12ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice12protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService12ProtocolTest operation and runs any // custom request initialization. func (c *InputService12ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService12TestCaseOperation1 = "OperationName" // InputService12TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService12TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService12TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService12TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService12TestCaseOperation1Request method. // req, resp := client.InputService12TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService12ProtocolTest) InputService12TestCaseOperation1Request(input *InputService12TestShapeInputShape) (req *request.Request, output *InputService12TestShapeInputService12TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService12TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &InputService12TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService12TestShapeInputService12TestCaseOperation1Output{} req.Data = output return } // InputService12TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService12TestCaseOperation1 for usage and error information. func (c *InputService12ProtocolTest) InputService12TestCaseOperation1(input *InputService12TestShapeInputShape) (*InputService12TestShapeInputService12TestCaseOperation1Output, error) { req, out := c.InputService12TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService12TestCaseOperation2 = "OperationName" // InputService12TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService12TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService12TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService12TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService12TestCaseOperation2Request method. // req, resp := client.InputService12TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService12ProtocolTest) InputService12TestCaseOperation2Request(input *InputService12TestShapeInputShape) (req *request.Request, output *InputService12TestShapeInputService12TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService12TestCaseOperation2, HTTPPath: "/", } if input == nil { input = &InputService12TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService12TestShapeInputService12TestCaseOperation2Output{} req.Data = output return } // InputService12TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService12TestCaseOperation2 for usage and error information. func (c *InputService12ProtocolTest) InputService12TestCaseOperation2(input *InputService12TestShapeInputShape) (*InputService12TestShapeInputService12TestCaseOperation2Output, error) { req, out := c.InputService12TestCaseOperation2Request(input) err := req.Send() return out, err } const opInputService12TestCaseOperation3 = "OperationName" // InputService12TestCaseOperation3Request generates a "aws/request.Request" representing the // client's request for the InputService12TestCaseOperation3 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService12TestCaseOperation3 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService12TestCaseOperation3 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService12TestCaseOperation3Request method. // req, resp := client.InputService12TestCaseOperation3Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService12ProtocolTest) InputService12TestCaseOperation3Request(input *InputService12TestShapeInputShape) (req *request.Request, output *InputService12TestShapeInputService12TestCaseOperation3Output) { op := &request.Operation{ Name: opInputService12TestCaseOperation3, HTTPPath: "/", } if input == nil { input = &InputService12TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService12TestShapeInputService12TestCaseOperation3Output{} req.Data = output return } // InputService12TestCaseOperation3 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService12TestCaseOperation3 for usage and error information. func (c *InputService12ProtocolTest) InputService12TestCaseOperation3(input *InputService12TestShapeInputShape) (*InputService12TestShapeInputService12TestCaseOperation3Output, error) { req, out := c.InputService12TestCaseOperation3Request(input) err := req.Send() return out, err } const opInputService12TestCaseOperation4 = "OperationName" // InputService12TestCaseOperation4Request generates a "aws/request.Request" representing the // client's request for the InputService12TestCaseOperation4 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService12TestCaseOperation4 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService12TestCaseOperation4 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService12TestCaseOperation4Request method. // req, resp := client.InputService12TestCaseOperation4Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService12ProtocolTest) InputService12TestCaseOperation4Request(input *InputService12TestShapeInputShape) (req *request.Request, output *InputService12TestShapeInputService12TestCaseOperation4Output) { op := &request.Operation{ Name: opInputService12TestCaseOperation4, HTTPPath: "/", } if input == nil { input = &InputService12TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService12TestShapeInputService12TestCaseOperation4Output{} req.Data = output return } // InputService12TestCaseOperation4 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService12TestCaseOperation4 for usage and error information. func (c *InputService12ProtocolTest) InputService12TestCaseOperation4(input *InputService12TestShapeInputShape) (*InputService12TestShapeInputService12TestCaseOperation4Output, error) { req, out := c.InputService12TestCaseOperation4Request(input) err := req.Send() return out, err } const opInputService12TestCaseOperation5 = "OperationName" // InputService12TestCaseOperation5Request generates a "aws/request.Request" representing the // client's request for the InputService12TestCaseOperation5 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService12TestCaseOperation5 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService12TestCaseOperation5 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService12TestCaseOperation5Request method. // req, resp := client.InputService12TestCaseOperation5Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService12ProtocolTest) InputService12TestCaseOperation5Request(input *InputService12TestShapeInputShape) (req *request.Request, output *InputService12TestShapeInputService12TestCaseOperation5Output) { op := &request.Operation{ Name: opInputService12TestCaseOperation5, HTTPPath: "/", } if input == nil { input = &InputService12TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService12TestShapeInputService12TestCaseOperation5Output{} req.Data = output return } // InputService12TestCaseOperation5 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService12TestCaseOperation5 for usage and error information. func (c *InputService12ProtocolTest) InputService12TestCaseOperation5(input *InputService12TestShapeInputShape) (*InputService12TestShapeInputService12TestCaseOperation5Output, error) { req, out := c.InputService12TestCaseOperation5Request(input) err := req.Send() return out, err } const opInputService12TestCaseOperation6 = "OperationName" // InputService12TestCaseOperation6Request generates a "aws/request.Request" representing the // client's request for the InputService12TestCaseOperation6 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService12TestCaseOperation6 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService12TestCaseOperation6 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService12TestCaseOperation6Request method. // req, resp := client.InputService12TestCaseOperation6Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService12ProtocolTest) InputService12TestCaseOperation6Request(input *InputService12TestShapeInputShape) (req *request.Request, output *InputService12TestShapeInputService12TestCaseOperation6Output) { op := &request.Operation{ Name: opInputService12TestCaseOperation6, HTTPPath: "/", } if input == nil { input = &InputService12TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService12TestShapeInputService12TestCaseOperation6Output{} req.Data = output return } // InputService12TestCaseOperation6 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService12TestCaseOperation6 for usage and error information. func (c *InputService12ProtocolTest) InputService12TestCaseOperation6(input *InputService12TestShapeInputShape) (*InputService12TestShapeInputService12TestCaseOperation6Output, error) { req, out := c.InputService12TestCaseOperation6Request(input) err := req.Send() return out, err } type InputService12TestShapeInputService12TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService12TestShapeInputService12TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService12TestShapeInputService12TestCaseOperation3Output struct { _ struct{} `type:"structure"` } type InputService12TestShapeInputService12TestCaseOperation4Output struct { _ struct{} `type:"structure"` } type InputService12TestShapeInputService12TestCaseOperation5Output struct { _ struct{} `type:"structure"` } type InputService12TestShapeInputService12TestCaseOperation6Output struct { _ struct{} `type:"structure"` } type InputService12TestShapeInputShape struct { _ struct{} `type:"structure"` RecursiveStruct *InputService12TestShapeRecursiveStructType `type:"structure"` } type InputService12TestShapeRecursiveStructType struct { _ struct{} `type:"structure"` NoRecurse *string `type:"string"` RecursiveList []*InputService12TestShapeRecursiveStructType `type:"list"` RecursiveMap map[string]*InputService12TestShapeRecursiveStructType `type:"map"` RecursiveStruct *InputService12TestShapeRecursiveStructType `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService13ProtocolTest struct { *client.Client } // New creates a new instance of the InputService13ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService13ProtocolTest client from just a session. // svc := inputservice13protocoltest.New(mySession) // // // Create a InputService13ProtocolTest client with additional configuration // svc := inputservice13protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService13ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService13ProtocolTest { c := p.ClientConfig("inputservice13protocoltest", cfgs...) return newInputService13ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService13ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService13ProtocolTest { svc := &InputService13ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice13protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService13ProtocolTest operation and runs any // custom request initialization. func (c *InputService13ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService13TestCaseOperation1 = "OperationName" // InputService13TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService13TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService13TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService13TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService13TestCaseOperation1Request method. // req, resp := client.InputService13TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService13ProtocolTest) InputService13TestCaseOperation1Request(input *InputService13TestShapeInputShape) (req *request.Request, output *InputService13TestShapeInputService13TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService13TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService13TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService13TestShapeInputService13TestCaseOperation1Output{} req.Data = output return } // InputService13TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService13TestCaseOperation1 for usage and error information. func (c *InputService13ProtocolTest) InputService13TestCaseOperation1(input *InputService13TestShapeInputShape) (*InputService13TestShapeInputService13TestCaseOperation1Output, error) { req, out := c.InputService13TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService13TestCaseOperation2 = "OperationName" // InputService13TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService13TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService13TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService13TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService13TestCaseOperation2Request method. // req, resp := client.InputService13TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService13ProtocolTest) InputService13TestCaseOperation2Request(input *InputService13TestShapeInputShape) (req *request.Request, output *InputService13TestShapeInputService13TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService13TestCaseOperation2, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService13TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService13TestShapeInputService13TestCaseOperation2Output{} req.Data = output return } // InputService13TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService13TestCaseOperation2 for usage and error information. func (c *InputService13ProtocolTest) InputService13TestCaseOperation2(input *InputService13TestShapeInputShape) (*InputService13TestShapeInputService13TestCaseOperation2Output, error) { req, out := c.InputService13TestCaseOperation2Request(input) err := req.Send() return out, err } type InputService13TestShapeInputService13TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService13TestShapeInputService13TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService13TestShapeInputShape struct { _ struct{} `type:"structure"` Token *string `type:"string" idempotencyToken:"true"` } // // Tests begin here // func TestInputService1ProtocolTestScalarMembersCase1(t *testing.T) { svc := NewInputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService1TestShapeInputShape{ Bar: aws.String("val2"), Foo: aws.String("val1"), } req, _ := svc.InputService1TestCaseOperation1Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&Bar=val2&Foo=val1&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService1ProtocolTestScalarMembersCase2(t *testing.T) { svc := NewInputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService1TestShapeInputShape{ Baz: aws.Bool(true), } req, _ := svc.InputService1TestCaseOperation2Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&Baz=true&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService1ProtocolTestScalarMembersCase3(t *testing.T) { svc := NewInputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService1TestShapeInputShape{ Baz: aws.Bool(false), } req, _ := svc.InputService1TestCaseOperation3Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&Baz=false&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService2ProtocolTestNestedStructureMembersCase1(t *testing.T) { svc := NewInputService2ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService2TestShapeInputService2TestCaseOperation1Input{ StructArg: &InputService2TestShapeStructType{ ScalarArg: aws.String("foo"), }, } req, _ := svc.InputService2TestCaseOperation1Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&StructArg.ScalarArg=foo&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService3ProtocolTestListTypesCase1(t *testing.T) { svc := NewInputService3ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService3TestShapeInputShape{ ListArg: []*string{ aws.String("foo"), aws.String("bar"), aws.String("baz"), }, } req, _ := svc.InputService3TestCaseOperation1Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&ListArg.member.1=foo&ListArg.member.2=bar&ListArg.member.3=baz&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService3ProtocolTestListTypesCase2(t *testing.T) { svc := NewInputService3ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService3TestShapeInputShape{ ListArg: []*string{}, } req, _ := svc.InputService3TestCaseOperation2Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&ListArg=&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService4ProtocolTestFlattenedListCase1(t *testing.T) { svc := NewInputService4ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService4TestShapeInputShape{ ListArg: []*string{ aws.String("a"), aws.String("b"), aws.String("c"), }, ScalarArg: aws.String("foo"), } req, _ := svc.InputService4TestCaseOperation1Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&ListArg.1=a&ListArg.2=b&ListArg.3=c&ScalarArg=foo&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService4ProtocolTestFlattenedListCase2(t *testing.T) { svc := NewInputService4ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService4TestShapeInputShape{ NamedListArg: []*string{ aws.String("a"), }, } req, _ := svc.InputService4TestCaseOperation2Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&Foo.1=a&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService5ProtocolTestSerializeFlattenedMapTypeCase1(t *testing.T) { svc := NewInputService5ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService5TestShapeInputService5TestCaseOperation1Input{ MapArg: map[string]*string{ "key1": aws.String("val1"), "key2": aws.String("val2"), }, } req, _ := svc.InputService5TestCaseOperation1Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&MapArg.1.key=key1&MapArg.1.value=val1&MapArg.2.key=key2&MapArg.2.value=val2&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService6ProtocolTestNonFlattenedListWithLocationNameCase1(t *testing.T) { svc := NewInputService6ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService6TestShapeInputService6TestCaseOperation1Input{ ListArg: []*string{ aws.String("a"), aws.String("b"), aws.String("c"), }, } req, _ := svc.InputService6TestCaseOperation1Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&ListArg.item.1=a&ListArg.item.2=b&ListArg.item.3=c&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService7ProtocolTestFlattenedListWithLocationNameCase1(t *testing.T) { svc := NewInputService7ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService7TestShapeInputService7TestCaseOperation1Input{ ListArg: []*string{ aws.String("a"), aws.String("b"), aws.String("c"), }, ScalarArg: aws.String("foo"), } req, _ := svc.InputService7TestCaseOperation1Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&ListArgLocation.1=a&ListArgLocation.2=b&ListArgLocation.3=c&ScalarArg=foo&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService8ProtocolTestSerializeMapTypeCase1(t *testing.T) { svc := NewInputService8ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService8TestShapeInputService8TestCaseOperation1Input{ MapArg: map[string]*string{ "key1": aws.String("val1"), "key2": aws.String("val2"), }, } req, _ := svc.InputService8TestCaseOperation1Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&MapArg.entry.1.key=key1&MapArg.entry.1.value=val1&MapArg.entry.2.key=key2&MapArg.entry.2.value=val2&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService9ProtocolTestSerializeMapTypeWithLocationNameCase1(t *testing.T) { svc := NewInputService9ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService9TestShapeInputService9TestCaseOperation1Input{ MapArg: map[string]*string{ "key1": aws.String("val1"), "key2": aws.String("val2"), }, } req, _ := svc.InputService9TestCaseOperation1Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&MapArg.entry.1.TheKey=key1&MapArg.entry.1.TheValue=val1&MapArg.entry.2.TheKey=key2&MapArg.entry.2.TheValue=val2&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService10ProtocolTestBase64EncodedBlobsCase1(t *testing.T) { svc := NewInputService10ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService10TestShapeInputService10TestCaseOperation1Input{ BlobArg: []byte("foo"), } req, _ := svc.InputService10TestCaseOperation1Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&BlobArg=Zm9v&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService11ProtocolTestTimestampValuesCase1(t *testing.T) { svc := NewInputService11ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService11TestShapeInputService11TestCaseOperation1Input{ TimeArg: aws.Time(time.Unix(1422172800, 0)), } req, _ := svc.InputService11TestCaseOperation1Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&TimeArg=2015-01-25T08%3A00%3A00Z&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService12ProtocolTestRecursiveShapesCase1(t *testing.T) { svc := NewInputService12ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService12TestShapeInputShape{ RecursiveStruct: &InputService12TestShapeRecursiveStructType{ NoRecurse: aws.String("foo"), }, } req, _ := svc.InputService12TestCaseOperation1Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&RecursiveStruct.NoRecurse=foo&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService12ProtocolTestRecursiveShapesCase2(t *testing.T) { svc := NewInputService12ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService12TestShapeInputShape{ RecursiveStruct: &InputService12TestShapeRecursiveStructType{ RecursiveStruct: &InputService12TestShapeRecursiveStructType{ NoRecurse: aws.String("foo"), }, }, } req, _ := svc.InputService12TestCaseOperation2Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&RecursiveStruct.RecursiveStruct.NoRecurse=foo&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService12ProtocolTestRecursiveShapesCase3(t *testing.T) { svc := NewInputService12ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService12TestShapeInputShape{ RecursiveStruct: &InputService12TestShapeRecursiveStructType{ RecursiveStruct: &InputService12TestShapeRecursiveStructType{ RecursiveStruct: &InputService12TestShapeRecursiveStructType{ RecursiveStruct: &InputService12TestShapeRecursiveStructType{ NoRecurse: aws.String("foo"), }, }, }, }, } req, _ := svc.InputService12TestCaseOperation3Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&RecursiveStruct.RecursiveStruct.RecursiveStruct.RecursiveStruct.NoRecurse=foo&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService12ProtocolTestRecursiveShapesCase4(t *testing.T) { svc := NewInputService12ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService12TestShapeInputShape{ RecursiveStruct: &InputService12TestShapeRecursiveStructType{ RecursiveList: []*InputService12TestShapeRecursiveStructType{ { NoRecurse: aws.String("foo"), }, { NoRecurse: aws.String("bar"), }, }, }, } req, _ := svc.InputService12TestCaseOperation4Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&RecursiveStruct.RecursiveList.member.1.NoRecurse=foo&RecursiveStruct.RecursiveList.member.2.NoRecurse=bar&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService12ProtocolTestRecursiveShapesCase5(t *testing.T) { svc := NewInputService12ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService12TestShapeInputShape{ RecursiveStruct: &InputService12TestShapeRecursiveStructType{ RecursiveList: []*InputService12TestShapeRecursiveStructType{ { NoRecurse: aws.String("foo"), }, { RecursiveStruct: &InputService12TestShapeRecursiveStructType{ NoRecurse: aws.String("bar"), }, }, }, }, } req, _ := svc.InputService12TestCaseOperation5Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&RecursiveStruct.RecursiveList.member.1.NoRecurse=foo&RecursiveStruct.RecursiveList.member.2.RecursiveStruct.NoRecurse=bar&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService12ProtocolTestRecursiveShapesCase6(t *testing.T) { svc := NewInputService12ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService12TestShapeInputShape{ RecursiveStruct: &InputService12TestShapeRecursiveStructType{ RecursiveMap: map[string]*InputService12TestShapeRecursiveStructType{ "bar": { NoRecurse: aws.String("bar"), }, "foo": { NoRecurse: aws.String("foo"), }, }, }, } req, _ := svc.InputService12TestCaseOperation6Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Action=OperationName&RecursiveStruct.RecursiveMap.entry.1.key=foo&RecursiveStruct.RecursiveMap.entry.1.value.NoRecurse=foo&RecursiveStruct.RecursiveMap.entry.2.key=bar&RecursiveStruct.RecursiveMap.entry.2.value.NoRecurse=bar&Version=2014-01-01`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService13ProtocolTestIdempotencyTokenAutoFillCase1(t *testing.T) { svc := NewInputService13ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService13TestShapeInputShape{ Token: aws.String("abc123"), } req, _ := svc.InputService13TestCaseOperation1Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Token=abc123`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService13ProtocolTestIdempotencyTokenAutoFillCase2(t *testing.T) { svc := NewInputService13ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService13TestShapeInputShape{} req, _ := svc.InputService13TestCaseOperation2Request(input) r := req.HTTPRequest // build request query.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertQuery(t, `Token=00000000-0000-4000-8000-000000000000`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } aws-sdk-go-1.4.22/private/protocol/query/queryutil/000077500000000000000000000000001300374646400223065ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/protocol/query/queryutil/queryutil.go000066400000000000000000000123371300374646400247060ustar00rootroot00000000000000package queryutil import ( "encoding/base64" "fmt" "net/url" "reflect" "sort" "strconv" "strings" "time" "github.com/aws/aws-sdk-go/private/protocol" ) // Parse parses an object i and fills a url.Values object. The isEC2 flag // indicates if this is the EC2 Query sub-protocol. func Parse(body url.Values, i interface{}, isEC2 bool) error { q := queryParser{isEC2: isEC2} return q.parseValue(body, reflect.ValueOf(i), "", "") } func elemOf(value reflect.Value) reflect.Value { for value.Kind() == reflect.Ptr { value = value.Elem() } return value } type queryParser struct { isEC2 bool } func (q *queryParser) parseValue(v url.Values, value reflect.Value, prefix string, tag reflect.StructTag) error { value = elemOf(value) // no need to handle zero values if !value.IsValid() { return nil } t := tag.Get("type") if t == "" { switch value.Kind() { case reflect.Struct: t = "structure" case reflect.Slice: t = "list" case reflect.Map: t = "map" } } switch t { case "structure": return q.parseStruct(v, value, prefix) case "list": return q.parseList(v, value, prefix, tag) case "map": return q.parseMap(v, value, prefix, tag) default: return q.parseScalar(v, value, prefix, tag) } } func (q *queryParser) parseStruct(v url.Values, value reflect.Value, prefix string) error { if !value.IsValid() { return nil } t := value.Type() for i := 0; i < value.NumField(); i++ { elemValue := elemOf(value.Field(i)) field := t.Field(i) if field.PkgPath != "" { continue // ignore unexported fields } if protocol.CanSetIdempotencyToken(value.Field(i), field) { token := protocol.GetIdempotencyToken() elemValue = reflect.ValueOf(token) } var name string if q.isEC2 { name = field.Tag.Get("queryName") } if name == "" { if field.Tag.Get("flattened") != "" && field.Tag.Get("locationNameList") != "" { name = field.Tag.Get("locationNameList") } else if locName := field.Tag.Get("locationName"); locName != "" { name = locName } if name != "" && q.isEC2 { name = strings.ToUpper(name[0:1]) + name[1:] } } if name == "" { name = field.Name } if prefix != "" { name = prefix + "." + name } if err := q.parseValue(v, elemValue, name, field.Tag); err != nil { return err } } return nil } func (q *queryParser) parseList(v url.Values, value reflect.Value, prefix string, tag reflect.StructTag) error { // If it's empty, generate an empty value if !value.IsNil() && value.Len() == 0 { v.Set(prefix, "") return nil } // check for unflattened list member if !q.isEC2 && tag.Get("flattened") == "" { prefix += ".member" } for i := 0; i < value.Len(); i++ { slicePrefix := prefix if slicePrefix == "" { slicePrefix = strconv.Itoa(i + 1) } else { slicePrefix = slicePrefix + "." + strconv.Itoa(i+1) } if err := q.parseValue(v, value.Index(i), slicePrefix, ""); err != nil { return err } } return nil } func (q *queryParser) parseMap(v url.Values, value reflect.Value, prefix string, tag reflect.StructTag) error { // If it's empty, generate an empty value if !value.IsNil() && value.Len() == 0 { v.Set(prefix, "") return nil } // check for unflattened list member if !q.isEC2 && tag.Get("flattened") == "" { prefix += ".entry" } // sort keys for improved serialization consistency. // this is not strictly necessary for protocol support. mapKeyValues := value.MapKeys() mapKeys := map[string]reflect.Value{} mapKeyNames := make([]string, len(mapKeyValues)) for i, mapKey := range mapKeyValues { name := mapKey.String() mapKeys[name] = mapKey mapKeyNames[i] = name } sort.Strings(mapKeyNames) for i, mapKeyName := range mapKeyNames { mapKey := mapKeys[mapKeyName] mapValue := value.MapIndex(mapKey) kname := tag.Get("locationNameKey") if kname == "" { kname = "key" } vname := tag.Get("locationNameValue") if vname == "" { vname = "value" } // serialize key var keyName string if prefix == "" { keyName = strconv.Itoa(i+1) + "." + kname } else { keyName = prefix + "." + strconv.Itoa(i+1) + "." + kname } if err := q.parseValue(v, mapKey, keyName, ""); err != nil { return err } // serialize value var valueName string if prefix == "" { valueName = strconv.Itoa(i+1) + "." + vname } else { valueName = prefix + "." + strconv.Itoa(i+1) + "." + vname } if err := q.parseValue(v, mapValue, valueName, ""); err != nil { return err } } return nil } func (q *queryParser) parseScalar(v url.Values, r reflect.Value, name string, tag reflect.StructTag) error { switch value := r.Interface().(type) { case string: v.Set(name, value) case []byte: if !r.IsNil() { v.Set(name, base64.StdEncoding.EncodeToString(value)) } case bool: v.Set(name, strconv.FormatBool(value)) case int64: v.Set(name, strconv.FormatInt(value, 10)) case int: v.Set(name, strconv.Itoa(value)) case float64: v.Set(name, strconv.FormatFloat(value, 'f', -1, 64)) case float32: v.Set(name, strconv.FormatFloat(float64(value), 'f', -1, 32)) case time.Time: const ISO8601UTC = "2006-01-02T15:04:05Z" v.Set(name, value.UTC().Format(ISO8601UTC)) default: return fmt.Errorf("unsupported value for param %s: %v (%s)", name, r.Interface(), r.Type().Name()) } return nil } aws-sdk-go-1.4.22/private/protocol/query/unmarshal.go000066400000000000000000000024161300374646400225670ustar00rootroot00000000000000package query //go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/output/query.json unmarshal_test.go import ( "encoding/xml" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil" ) // UnmarshalHandler is a named request handler for unmarshaling query protocol requests var UnmarshalHandler = request.NamedHandler{Name: "awssdk.query.Unmarshal", Fn: Unmarshal} // UnmarshalMetaHandler is a named request handler for unmarshaling query protocol request metadata var UnmarshalMetaHandler = request.NamedHandler{Name: "awssdk.query.UnmarshalMeta", Fn: UnmarshalMeta} // Unmarshal unmarshals a response for an AWS Query service. func Unmarshal(r *request.Request) { defer r.HTTPResponse.Body.Close() if r.DataFilled() { decoder := xml.NewDecoder(r.HTTPResponse.Body) err := xmlutil.UnmarshalXML(r.Data, decoder, r.Operation.Name+"Result") if err != nil { r.Error = awserr.New("SerializationError", "failed decoding Query response", err) return } } } // UnmarshalMeta unmarshals header response values for an AWS Query service. func UnmarshalMeta(r *request.Request) { r.RequestID = r.HTTPResponse.Header.Get("X-Amzn-Requestid") } aws-sdk-go-1.4.22/private/protocol/query/unmarshal_error.go000066400000000000000000000034201300374646400237740ustar00rootroot00000000000000package query import ( "encoding/xml" "io/ioutil" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" ) type xmlErrorResponse struct { XMLName xml.Name `xml:"ErrorResponse"` Code string `xml:"Error>Code"` Message string `xml:"Error>Message"` RequestID string `xml:"RequestId"` } type xmlServiceUnavailableResponse struct { XMLName xml.Name `xml:"ServiceUnavailableException"` } // UnmarshalErrorHandler is a name request handler to unmarshal request errors var UnmarshalErrorHandler = request.NamedHandler{Name: "awssdk.query.UnmarshalError", Fn: UnmarshalError} // UnmarshalError unmarshals an error response for an AWS Query service. func UnmarshalError(r *request.Request) { defer r.HTTPResponse.Body.Close() bodyBytes, err := ioutil.ReadAll(r.HTTPResponse.Body) if err != nil { r.Error = awserr.New("SerializationError", "failed to read from query HTTP response body", err) return } // First check for specific error resp := xmlErrorResponse{} decodeErr := xml.Unmarshal(bodyBytes, &resp) if decodeErr == nil { reqID := resp.RequestID if reqID == "" { reqID = r.RequestID } r.Error = awserr.NewRequestFailure( awserr.New(resp.Code, resp.Message, nil), r.HTTPResponse.StatusCode, reqID, ) return } // Check for unhandled error servUnavailResp := xmlServiceUnavailableResponse{} unavailErr := xml.Unmarshal(bodyBytes, &servUnavailResp) if unavailErr == nil { r.Error = awserr.NewRequestFailure( awserr.New("ServiceUnavailableException", "service is unavailable", nil), r.HTTPResponse.StatusCode, r.RequestID, ) return } // Failed to retrieve any error message from the response body r.Error = awserr.New("SerializationError", "failed to decode query XML error response", decodeErr) } aws-sdk-go-1.4.22/private/protocol/query/unmarshal_test.go000066400000000000000000002555431300374646400236410ustar00rootroot00000000000000package query_test import ( "bytes" "encoding/json" "encoding/xml" "fmt" "io" "io/ioutil" "net/http" "net/url" "testing" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/query" "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil" "github.com/aws/aws-sdk-go/private/util" "github.com/stretchr/testify/assert" ) var _ bytes.Buffer // always import bytes var _ http.Request var _ json.Marshaler var _ time.Time var _ xmlutil.XMLNode var _ xml.Attr var _ = ioutil.Discard var _ = util.Trim("") var _ = url.Values{} var _ = io.EOF var _ = aws.String var _ = fmt.Println func init() { protocol.RandReader = &awstesting.ZeroReader{} } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService1ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService1ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService1ProtocolTest client from just a session. // svc := outputservice1protocoltest.New(mySession) // // // Create a OutputService1ProtocolTest client with additional configuration // svc := outputservice1protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService1ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService1ProtocolTest { c := p.ClientConfig("outputservice1protocoltest", cfgs...) return newOutputService1ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService1ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService1ProtocolTest { svc := &OutputService1ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice1protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService1ProtocolTest operation and runs any // custom request initialization. func (c *OutputService1ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService1TestCaseOperation1 = "OperationName" // OutputService1TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService1TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService1TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService1TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService1TestCaseOperation1Request method. // req, resp := client.OutputService1TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService1ProtocolTest) OutputService1TestCaseOperation1Request(input *OutputService1TestShapeOutputService1TestCaseOperation1Input) (req *request.Request, output *OutputService1TestShapeOutputService1TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService1TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService1TestShapeOutputService1TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService1TestShapeOutputService1TestCaseOperation1Output{} req.Data = output return } // OutputService1TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService1TestCaseOperation1 for usage and error information. func (c *OutputService1ProtocolTest) OutputService1TestCaseOperation1(input *OutputService1TestShapeOutputService1TestCaseOperation1Input) (*OutputService1TestShapeOutputService1TestCaseOperation1Output, error) { req, out := c.OutputService1TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService1TestShapeOutputService1TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService1TestShapeOutputService1TestCaseOperation1Output struct { _ struct{} `type:"structure"` Char *string `type:"character"` Double *float64 `type:"double"` FalseBool *bool `type:"boolean"` Float *float64 `type:"float"` Long *int64 `type:"long"` Num *int64 `locationName:"FooNum" type:"integer"` Str *string `type:"string"` Timestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` TrueBool *bool `type:"boolean"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService2ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService2ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService2ProtocolTest client from just a session. // svc := outputservice2protocoltest.New(mySession) // // // Create a OutputService2ProtocolTest client with additional configuration // svc := outputservice2protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService2ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService2ProtocolTest { c := p.ClientConfig("outputservice2protocoltest", cfgs...) return newOutputService2ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService2ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService2ProtocolTest { svc := &OutputService2ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice2protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService2ProtocolTest operation and runs any // custom request initialization. func (c *OutputService2ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService2TestCaseOperation1 = "OperationName" // OutputService2TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService2TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService2TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService2TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService2TestCaseOperation1Request method. // req, resp := client.OutputService2TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService2ProtocolTest) OutputService2TestCaseOperation1Request(input *OutputService2TestShapeOutputService2TestCaseOperation1Input) (req *request.Request, output *OutputService2TestShapeOutputService2TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService2TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService2TestShapeOutputService2TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService2TestShapeOutputService2TestCaseOperation1Output{} req.Data = output return } // OutputService2TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService2TestCaseOperation1 for usage and error information. func (c *OutputService2ProtocolTest) OutputService2TestCaseOperation1(input *OutputService2TestShapeOutputService2TestCaseOperation1Input) (*OutputService2TestShapeOutputService2TestCaseOperation1Output, error) { req, out := c.OutputService2TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService2TestShapeOutputService2TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService2TestShapeOutputService2TestCaseOperation1Output struct { _ struct{} `type:"structure"` Num *int64 `type:"integer"` Str *string `type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService3ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService3ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService3ProtocolTest client from just a session. // svc := outputservice3protocoltest.New(mySession) // // // Create a OutputService3ProtocolTest client with additional configuration // svc := outputservice3protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService3ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService3ProtocolTest { c := p.ClientConfig("outputservice3protocoltest", cfgs...) return newOutputService3ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService3ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService3ProtocolTest { svc := &OutputService3ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice3protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService3ProtocolTest operation and runs any // custom request initialization. func (c *OutputService3ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService3TestCaseOperation1 = "OperationName" // OutputService3TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService3TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService3TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService3TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService3TestCaseOperation1Request method. // req, resp := client.OutputService3TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService3ProtocolTest) OutputService3TestCaseOperation1Request(input *OutputService3TestShapeOutputService3TestCaseOperation1Input) (req *request.Request, output *OutputService3TestShapeOutputService3TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService3TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService3TestShapeOutputService3TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService3TestShapeOutputService3TestCaseOperation1Output{} req.Data = output return } // OutputService3TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService3TestCaseOperation1 for usage and error information. func (c *OutputService3ProtocolTest) OutputService3TestCaseOperation1(input *OutputService3TestShapeOutputService3TestCaseOperation1Input) (*OutputService3TestShapeOutputService3TestCaseOperation1Output, error) { req, out := c.OutputService3TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService3TestShapeOutputService3TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService3TestShapeOutputService3TestCaseOperation1Output struct { _ struct{} `type:"structure"` // Blob is automatically base64 encoded/decoded by the SDK. Blob []byte `type:"blob"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService4ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService4ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService4ProtocolTest client from just a session. // svc := outputservice4protocoltest.New(mySession) // // // Create a OutputService4ProtocolTest client with additional configuration // svc := outputservice4protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService4ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService4ProtocolTest { c := p.ClientConfig("outputservice4protocoltest", cfgs...) return newOutputService4ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService4ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService4ProtocolTest { svc := &OutputService4ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice4protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService4ProtocolTest operation and runs any // custom request initialization. func (c *OutputService4ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService4TestCaseOperation1 = "OperationName" // OutputService4TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService4TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService4TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService4TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService4TestCaseOperation1Request method. // req, resp := client.OutputService4TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService4ProtocolTest) OutputService4TestCaseOperation1Request(input *OutputService4TestShapeOutputService4TestCaseOperation1Input) (req *request.Request, output *OutputService4TestShapeOutputService4TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService4TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService4TestShapeOutputService4TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService4TestShapeOutputService4TestCaseOperation1Output{} req.Data = output return } // OutputService4TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService4TestCaseOperation1 for usage and error information. func (c *OutputService4ProtocolTest) OutputService4TestCaseOperation1(input *OutputService4TestShapeOutputService4TestCaseOperation1Input) (*OutputService4TestShapeOutputService4TestCaseOperation1Output, error) { req, out := c.OutputService4TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService4TestShapeOutputService4TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService4TestShapeOutputService4TestCaseOperation1Output struct { _ struct{} `type:"structure"` ListMember []*string `type:"list"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService5ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService5ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService5ProtocolTest client from just a session. // svc := outputservice5protocoltest.New(mySession) // // // Create a OutputService5ProtocolTest client with additional configuration // svc := outputservice5protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService5ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService5ProtocolTest { c := p.ClientConfig("outputservice5protocoltest", cfgs...) return newOutputService5ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService5ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService5ProtocolTest { svc := &OutputService5ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice5protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService5ProtocolTest operation and runs any // custom request initialization. func (c *OutputService5ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService5TestCaseOperation1 = "OperationName" // OutputService5TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService5TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService5TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService5TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService5TestCaseOperation1Request method. // req, resp := client.OutputService5TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService5ProtocolTest) OutputService5TestCaseOperation1Request(input *OutputService5TestShapeOutputService5TestCaseOperation1Input) (req *request.Request, output *OutputService5TestShapeOutputService5TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService5TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService5TestShapeOutputService5TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService5TestShapeOutputService5TestCaseOperation1Output{} req.Data = output return } // OutputService5TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService5TestCaseOperation1 for usage and error information. func (c *OutputService5ProtocolTest) OutputService5TestCaseOperation1(input *OutputService5TestShapeOutputService5TestCaseOperation1Input) (*OutputService5TestShapeOutputService5TestCaseOperation1Output, error) { req, out := c.OutputService5TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService5TestShapeOutputService5TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService5TestShapeOutputService5TestCaseOperation1Output struct { _ struct{} `type:"structure"` ListMember []*string `locationNameList:"item" type:"list"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService6ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService6ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService6ProtocolTest client from just a session. // svc := outputservice6protocoltest.New(mySession) // // // Create a OutputService6ProtocolTest client with additional configuration // svc := outputservice6protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService6ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService6ProtocolTest { c := p.ClientConfig("outputservice6protocoltest", cfgs...) return newOutputService6ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService6ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService6ProtocolTest { svc := &OutputService6ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice6protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService6ProtocolTest operation and runs any // custom request initialization. func (c *OutputService6ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService6TestCaseOperation1 = "OperationName" // OutputService6TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService6TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService6TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService6TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService6TestCaseOperation1Request method. // req, resp := client.OutputService6TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService6ProtocolTest) OutputService6TestCaseOperation1Request(input *OutputService6TestShapeOutputService6TestCaseOperation1Input) (req *request.Request, output *OutputService6TestShapeOutputService6TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService6TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService6TestShapeOutputService6TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService6TestShapeOutputService6TestCaseOperation1Output{} req.Data = output return } // OutputService6TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService6TestCaseOperation1 for usage and error information. func (c *OutputService6ProtocolTest) OutputService6TestCaseOperation1(input *OutputService6TestShapeOutputService6TestCaseOperation1Input) (*OutputService6TestShapeOutputService6TestCaseOperation1Output, error) { req, out := c.OutputService6TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService6TestShapeOutputService6TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService6TestShapeOutputService6TestCaseOperation1Output struct { _ struct{} `type:"structure"` ListMember []*string `type:"list" flattened:"true"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService7ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService7ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService7ProtocolTest client from just a session. // svc := outputservice7protocoltest.New(mySession) // // // Create a OutputService7ProtocolTest client with additional configuration // svc := outputservice7protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService7ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService7ProtocolTest { c := p.ClientConfig("outputservice7protocoltest", cfgs...) return newOutputService7ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService7ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService7ProtocolTest { svc := &OutputService7ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice7protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService7ProtocolTest operation and runs any // custom request initialization. func (c *OutputService7ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService7TestCaseOperation1 = "OperationName" // OutputService7TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService7TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService7TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService7TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService7TestCaseOperation1Request method. // req, resp := client.OutputService7TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService7ProtocolTest) OutputService7TestCaseOperation1Request(input *OutputService7TestShapeOutputService7TestCaseOperation1Input) (req *request.Request, output *OutputService7TestShapeOutputService7TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService7TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService7TestShapeOutputService7TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService7TestShapeOutputService7TestCaseOperation1Output{} req.Data = output return } // OutputService7TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService7TestCaseOperation1 for usage and error information. func (c *OutputService7ProtocolTest) OutputService7TestCaseOperation1(input *OutputService7TestShapeOutputService7TestCaseOperation1Input) (*OutputService7TestShapeOutputService7TestCaseOperation1Output, error) { req, out := c.OutputService7TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService7TestShapeOutputService7TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService7TestShapeOutputService7TestCaseOperation1Output struct { _ struct{} `type:"structure"` ListMember []*string `type:"list" flattened:"true"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService8ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService8ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService8ProtocolTest client from just a session. // svc := outputservice8protocoltest.New(mySession) // // // Create a OutputService8ProtocolTest client with additional configuration // svc := outputservice8protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService8ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService8ProtocolTest { c := p.ClientConfig("outputservice8protocoltest", cfgs...) return newOutputService8ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService8ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService8ProtocolTest { svc := &OutputService8ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice8protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService8ProtocolTest operation and runs any // custom request initialization. func (c *OutputService8ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService8TestCaseOperation1 = "OperationName" // OutputService8TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService8TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService8TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService8TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService8TestCaseOperation1Request method. // req, resp := client.OutputService8TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService8ProtocolTest) OutputService8TestCaseOperation1Request(input *OutputService8TestShapeOutputService8TestCaseOperation1Input) (req *request.Request, output *OutputService8TestShapeOutputService8TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService8TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService8TestShapeOutputService8TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService8TestShapeOutputService8TestCaseOperation1Output{} req.Data = output return } // OutputService8TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService8TestCaseOperation1 for usage and error information. func (c *OutputService8ProtocolTest) OutputService8TestCaseOperation1(input *OutputService8TestShapeOutputService8TestCaseOperation1Input) (*OutputService8TestShapeOutputService8TestCaseOperation1Output, error) { req, out := c.OutputService8TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService8TestShapeOutputService8TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService8TestShapeOutputService8TestCaseOperation1Output struct { _ struct{} `type:"structure"` List []*OutputService8TestShapeStructureShape `type:"list"` } type OutputService8TestShapeStructureShape struct { _ struct{} `type:"structure"` Bar *string `type:"string"` Baz *string `type:"string"` Foo *string `type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService9ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService9ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService9ProtocolTest client from just a session. // svc := outputservice9protocoltest.New(mySession) // // // Create a OutputService9ProtocolTest client with additional configuration // svc := outputservice9protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService9ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService9ProtocolTest { c := p.ClientConfig("outputservice9protocoltest", cfgs...) return newOutputService9ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService9ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService9ProtocolTest { svc := &OutputService9ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice9protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService9ProtocolTest operation and runs any // custom request initialization. func (c *OutputService9ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService9TestCaseOperation1 = "OperationName" // OutputService9TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService9TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService9TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService9TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService9TestCaseOperation1Request method. // req, resp := client.OutputService9TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService9ProtocolTest) OutputService9TestCaseOperation1Request(input *OutputService9TestShapeOutputService9TestCaseOperation1Input) (req *request.Request, output *OutputService9TestShapeOutputService9TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService9TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService9TestShapeOutputService9TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService9TestShapeOutputService9TestCaseOperation1Output{} req.Data = output return } // OutputService9TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService9TestCaseOperation1 for usage and error information. func (c *OutputService9ProtocolTest) OutputService9TestCaseOperation1(input *OutputService9TestShapeOutputService9TestCaseOperation1Input) (*OutputService9TestShapeOutputService9TestCaseOperation1Output, error) { req, out := c.OutputService9TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService9TestShapeOutputService9TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService9TestShapeOutputService9TestCaseOperation1Output struct { _ struct{} `type:"structure"` List []*OutputService9TestShapeStructureShape `type:"list" flattened:"true"` } type OutputService9TestShapeStructureShape struct { _ struct{} `type:"structure"` Bar *string `type:"string"` Baz *string `type:"string"` Foo *string `type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService10ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService10ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService10ProtocolTest client from just a session. // svc := outputservice10protocoltest.New(mySession) // // // Create a OutputService10ProtocolTest client with additional configuration // svc := outputservice10protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService10ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService10ProtocolTest { c := p.ClientConfig("outputservice10protocoltest", cfgs...) return newOutputService10ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService10ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService10ProtocolTest { svc := &OutputService10ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice10protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService10ProtocolTest operation and runs any // custom request initialization. func (c *OutputService10ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService10TestCaseOperation1 = "OperationName" // OutputService10TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService10TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService10TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService10TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService10TestCaseOperation1Request method. // req, resp := client.OutputService10TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService10ProtocolTest) OutputService10TestCaseOperation1Request(input *OutputService10TestShapeOutputService10TestCaseOperation1Input) (req *request.Request, output *OutputService10TestShapeOutputService10TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService10TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService10TestShapeOutputService10TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService10TestShapeOutputService10TestCaseOperation1Output{} req.Data = output return } // OutputService10TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService10TestCaseOperation1 for usage and error information. func (c *OutputService10ProtocolTest) OutputService10TestCaseOperation1(input *OutputService10TestShapeOutputService10TestCaseOperation1Input) (*OutputService10TestShapeOutputService10TestCaseOperation1Output, error) { req, out := c.OutputService10TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService10TestShapeOutputService10TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService10TestShapeOutputService10TestCaseOperation1Output struct { _ struct{} `type:"structure"` List []*string `locationNameList:"NamedList" type:"list" flattened:"true"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService11ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService11ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService11ProtocolTest client from just a session. // svc := outputservice11protocoltest.New(mySession) // // // Create a OutputService11ProtocolTest client with additional configuration // svc := outputservice11protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService11ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService11ProtocolTest { c := p.ClientConfig("outputservice11protocoltest", cfgs...) return newOutputService11ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService11ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService11ProtocolTest { svc := &OutputService11ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice11protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService11ProtocolTest operation and runs any // custom request initialization. func (c *OutputService11ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService11TestCaseOperation1 = "OperationName" // OutputService11TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService11TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService11TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService11TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService11TestCaseOperation1Request method. // req, resp := client.OutputService11TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService11ProtocolTest) OutputService11TestCaseOperation1Request(input *OutputService11TestShapeOutputService11TestCaseOperation1Input) (req *request.Request, output *OutputService11TestShapeOutputService11TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService11TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService11TestShapeOutputService11TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService11TestShapeOutputService11TestCaseOperation1Output{} req.Data = output return } // OutputService11TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService11TestCaseOperation1 for usage and error information. func (c *OutputService11ProtocolTest) OutputService11TestCaseOperation1(input *OutputService11TestShapeOutputService11TestCaseOperation1Input) (*OutputService11TestShapeOutputService11TestCaseOperation1Output, error) { req, out := c.OutputService11TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService11TestShapeOutputService11TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService11TestShapeOutputService11TestCaseOperation1Output struct { _ struct{} `type:"structure"` Map map[string]*OutputService11TestShapeStructType `type:"map"` } type OutputService11TestShapeStructType struct { _ struct{} `type:"structure"` Foo *string `locationName:"foo" type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService12ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService12ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService12ProtocolTest client from just a session. // svc := outputservice12protocoltest.New(mySession) // // // Create a OutputService12ProtocolTest client with additional configuration // svc := outputservice12protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService12ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService12ProtocolTest { c := p.ClientConfig("outputservice12protocoltest", cfgs...) return newOutputService12ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService12ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService12ProtocolTest { svc := &OutputService12ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice12protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService12ProtocolTest operation and runs any // custom request initialization. func (c *OutputService12ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService12TestCaseOperation1 = "OperationName" // OutputService12TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService12TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService12TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService12TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService12TestCaseOperation1Request method. // req, resp := client.OutputService12TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService12ProtocolTest) OutputService12TestCaseOperation1Request(input *OutputService12TestShapeOutputService12TestCaseOperation1Input) (req *request.Request, output *OutputService12TestShapeOutputService12TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService12TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService12TestShapeOutputService12TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService12TestShapeOutputService12TestCaseOperation1Output{} req.Data = output return } // OutputService12TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService12TestCaseOperation1 for usage and error information. func (c *OutputService12ProtocolTest) OutputService12TestCaseOperation1(input *OutputService12TestShapeOutputService12TestCaseOperation1Input) (*OutputService12TestShapeOutputService12TestCaseOperation1Output, error) { req, out := c.OutputService12TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService12TestShapeOutputService12TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService12TestShapeOutputService12TestCaseOperation1Output struct { _ struct{} `type:"structure"` Map map[string]*string `type:"map" flattened:"true"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService13ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService13ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService13ProtocolTest client from just a session. // svc := outputservice13protocoltest.New(mySession) // // // Create a OutputService13ProtocolTest client with additional configuration // svc := outputservice13protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService13ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService13ProtocolTest { c := p.ClientConfig("outputservice13protocoltest", cfgs...) return newOutputService13ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService13ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService13ProtocolTest { svc := &OutputService13ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice13protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService13ProtocolTest operation and runs any // custom request initialization. func (c *OutputService13ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService13TestCaseOperation1 = "OperationName" // OutputService13TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService13TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService13TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService13TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService13TestCaseOperation1Request method. // req, resp := client.OutputService13TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService13ProtocolTest) OutputService13TestCaseOperation1Request(input *OutputService13TestShapeOutputService13TestCaseOperation1Input) (req *request.Request, output *OutputService13TestShapeOutputService13TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService13TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService13TestShapeOutputService13TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService13TestShapeOutputService13TestCaseOperation1Output{} req.Data = output return } // OutputService13TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService13TestCaseOperation1 for usage and error information. func (c *OutputService13ProtocolTest) OutputService13TestCaseOperation1(input *OutputService13TestShapeOutputService13TestCaseOperation1Input) (*OutputService13TestShapeOutputService13TestCaseOperation1Output, error) { req, out := c.OutputService13TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService13TestShapeOutputService13TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService13TestShapeOutputService13TestCaseOperation1Output struct { _ struct{} `type:"structure"` Map map[string]*string `locationName:"Attribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService14ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService14ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService14ProtocolTest client from just a session. // svc := outputservice14protocoltest.New(mySession) // // // Create a OutputService14ProtocolTest client with additional configuration // svc := outputservice14protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService14ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService14ProtocolTest { c := p.ClientConfig("outputservice14protocoltest", cfgs...) return newOutputService14ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService14ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService14ProtocolTest { svc := &OutputService14ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice14protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService14ProtocolTest operation and runs any // custom request initialization. func (c *OutputService14ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService14TestCaseOperation1 = "OperationName" // OutputService14TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService14TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService14TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService14TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService14TestCaseOperation1Request method. // req, resp := client.OutputService14TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService14ProtocolTest) OutputService14TestCaseOperation1Request(input *OutputService14TestShapeOutputService14TestCaseOperation1Input) (req *request.Request, output *OutputService14TestShapeOutputService14TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService14TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService14TestShapeOutputService14TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService14TestShapeOutputService14TestCaseOperation1Output{} req.Data = output return } // OutputService14TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService14TestCaseOperation1 for usage and error information. func (c *OutputService14ProtocolTest) OutputService14TestCaseOperation1(input *OutputService14TestShapeOutputService14TestCaseOperation1Input) (*OutputService14TestShapeOutputService14TestCaseOperation1Output, error) { req, out := c.OutputService14TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService14TestShapeOutputService14TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService14TestShapeOutputService14TestCaseOperation1Output struct { _ struct{} `type:"structure"` Map map[string]*string `locationNameKey:"foo" locationNameValue:"bar" type:"map" flattened:"true"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService15ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService15ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService15ProtocolTest client from just a session. // svc := outputservice15protocoltest.New(mySession) // // // Create a OutputService15ProtocolTest client with additional configuration // svc := outputservice15protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService15ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService15ProtocolTest { c := p.ClientConfig("outputservice15protocoltest", cfgs...) return newOutputService15ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService15ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService15ProtocolTest { svc := &OutputService15ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice15protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService15ProtocolTest operation and runs any // custom request initialization. func (c *OutputService15ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService15TestCaseOperation1 = "OperationName" // OutputService15TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService15TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService15TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService15TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService15TestCaseOperation1Request method. // req, resp := client.OutputService15TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService15ProtocolTest) OutputService15TestCaseOperation1Request(input *OutputService15TestShapeOutputService15TestCaseOperation1Input) (req *request.Request, output *OutputService15TestShapeOutputService15TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService15TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService15TestShapeOutputService15TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService15TestShapeOutputService15TestCaseOperation1Output{} req.Data = output return } // OutputService15TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService15TestCaseOperation1 for usage and error information. func (c *OutputService15ProtocolTest) OutputService15TestCaseOperation1(input *OutputService15TestShapeOutputService15TestCaseOperation1Input) (*OutputService15TestShapeOutputService15TestCaseOperation1Output, error) { req, out := c.OutputService15TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService15TestShapeOutputService15TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService15TestShapeOutputService15TestCaseOperation1Output struct { _ struct{} `type:"structure"` Foo *string `type:"string"` } // // Tests begin here // func TestOutputService1ProtocolTestScalarMembersCase1(t *testing.T) { svc := NewOutputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("myname123falsetrue1.21.3200a2015-01-25T08:00:00Zrequest-id")) req, out := svc.OutputService1TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response query.UnmarshalMeta(req) query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "a", *out.Char) assert.Equal(t, 1.3, *out.Double) assert.Equal(t, false, *out.FalseBool) assert.Equal(t, 1.2, *out.Float) assert.Equal(t, int64(200), *out.Long) assert.Equal(t, int64(123), *out.Num) assert.Equal(t, "myname", *out.Str) assert.Equal(t, time.Unix(1.4221728e+09, 0).UTC().String(), out.Timestamp.String()) assert.Equal(t, true, *out.TrueBool) } func TestOutputService2ProtocolTestNotAllMembersInResponseCase1(t *testing.T) { svc := NewOutputService2ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("mynamerequest-id")) req, out := svc.OutputService2TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response query.UnmarshalMeta(req) query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "myname", *out.Str) } func TestOutputService3ProtocolTestBlobCase1(t *testing.T) { svc := NewOutputService3ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("dmFsdWU=requestid")) req, out := svc.OutputService3TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response query.UnmarshalMeta(req) query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "value", string(out.Blob)) } func TestOutputService4ProtocolTestListsCase1(t *testing.T) { svc := NewOutputService4ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("abc123requestid")) req, out := svc.OutputService4TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response query.UnmarshalMeta(req) query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "abc", *out.ListMember[0]) assert.Equal(t, "123", *out.ListMember[1]) } func TestOutputService5ProtocolTestListWithCustomMemberNameCase1(t *testing.T) { svc := NewOutputService5ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("abc123requestid")) req, out := svc.OutputService5TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response query.UnmarshalMeta(req) query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "abc", *out.ListMember[0]) assert.Equal(t, "123", *out.ListMember[1]) } func TestOutputService6ProtocolTestFlattenedListCase1(t *testing.T) { svc := NewOutputService6ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("abc123requestid")) req, out := svc.OutputService6TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response query.UnmarshalMeta(req) query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "abc", *out.ListMember[0]) assert.Equal(t, "123", *out.ListMember[1]) } func TestOutputService7ProtocolTestFlattenedSingleElementListCase1(t *testing.T) { svc := NewOutputService7ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("abcrequestid")) req, out := svc.OutputService7TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response query.UnmarshalMeta(req) query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "abc", *out.ListMember[0]) } func TestOutputService8ProtocolTestListOfStructuresCase1(t *testing.T) { svc := NewOutputService8ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("firstfoofirstbarfirstbazsecondfoosecondbarsecondbazrequestid")) req, out := svc.OutputService8TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response query.UnmarshalMeta(req) query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "firstbar", *out.List[0].Bar) assert.Equal(t, "firstbaz", *out.List[0].Baz) assert.Equal(t, "firstfoo", *out.List[0].Foo) assert.Equal(t, "secondbar", *out.List[1].Bar) assert.Equal(t, "secondbaz", *out.List[1].Baz) assert.Equal(t, "secondfoo", *out.List[1].Foo) } func TestOutputService9ProtocolTestFlattenedListOfStructuresCase1(t *testing.T) { svc := NewOutputService9ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("firstfoofirstbarfirstbazsecondfoosecondbarsecondbazrequestid")) req, out := svc.OutputService9TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response query.UnmarshalMeta(req) query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "firstbar", *out.List[0].Bar) assert.Equal(t, "firstbaz", *out.List[0].Baz) assert.Equal(t, "firstfoo", *out.List[0].Foo) assert.Equal(t, "secondbar", *out.List[1].Bar) assert.Equal(t, "secondbaz", *out.List[1].Baz) assert.Equal(t, "secondfoo", *out.List[1].Foo) } func TestOutputService10ProtocolTestFlattenedListWithLocationNameCase1(t *testing.T) { svc := NewOutputService10ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("abrequestid")) req, out := svc.OutputService10TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response query.UnmarshalMeta(req) query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "a", *out.List[0]) assert.Equal(t, "b", *out.List[1]) } func TestOutputService11ProtocolTestNormalMapCase1(t *testing.T) { svc := NewOutputService11ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("quxbarbazbamrequestid")) req, out := svc.OutputService11TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response query.UnmarshalMeta(req) query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "bam", *out.Map["baz"].Foo) assert.Equal(t, "bar", *out.Map["qux"].Foo) } func TestOutputService12ProtocolTestFlattenedMapCase1(t *testing.T) { svc := NewOutputService12ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("quxbarbazbamrequestid")) req, out := svc.OutputService12TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response query.UnmarshalMeta(req) query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "bam", *out.Map["baz"]) assert.Equal(t, "bar", *out.Map["qux"]) } func TestOutputService13ProtocolTestFlattenedMapInShapeDefinitionCase1(t *testing.T) { svc := NewOutputService13ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("quxbarrequestid")) req, out := svc.OutputService13TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response query.UnmarshalMeta(req) query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "bar", *out.Map["qux"]) } func TestOutputService14ProtocolTestNamedMapCase1(t *testing.T) { svc := NewOutputService14ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("quxbarbazbamrequestid")) req, out := svc.OutputService14TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response query.UnmarshalMeta(req) query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "bam", *out.Map["baz"]) assert.Equal(t, "bar", *out.Map["qux"]) } func TestOutputService15ProtocolTestEmptyStringCase1(t *testing.T) { svc := NewOutputService15ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("requestid")) req, out := svc.OutputService15TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response query.UnmarshalMeta(req) query.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "", *out.Foo) } aws-sdk-go-1.4.22/private/protocol/rest/000077500000000000000000000000001300374646400200535ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/protocol/rest/build.go000066400000000000000000000140521300374646400215030ustar00rootroot00000000000000// Package rest provides RESTful serialization of AWS requests and responses. package rest import ( "bytes" "encoding/base64" "fmt" "io" "net/http" "net/url" "path" "reflect" "strconv" "strings" "time" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" ) // RFC822 returns an RFC822 formatted timestamp for AWS protocols const RFC822 = "Mon, 2 Jan 2006 15:04:05 GMT" // Whether the byte value can be sent without escaping in AWS URLs var noEscape [256]bool var errValueNotSet = fmt.Errorf("value not set") func init() { for i := 0; i < len(noEscape); i++ { // AWS expects every character except these to be escaped noEscape[i] = (i >= 'A' && i <= 'Z') || (i >= 'a' && i <= 'z') || (i >= '0' && i <= '9') || i == '-' || i == '.' || i == '_' || i == '~' } } // BuildHandler is a named request handler for building rest protocol requests var BuildHandler = request.NamedHandler{Name: "awssdk.rest.Build", Fn: Build} // Build builds the REST component of a service request. func Build(r *request.Request) { if r.ParamsFilled() { v := reflect.ValueOf(r.Params).Elem() buildLocationElements(r, v) buildBody(r, v) } } func buildLocationElements(r *request.Request, v reflect.Value) { query := r.HTTPRequest.URL.Query() for i := 0; i < v.NumField(); i++ { m := v.Field(i) if n := v.Type().Field(i).Name; n[0:1] == strings.ToLower(n[0:1]) { continue } if m.IsValid() { field := v.Type().Field(i) name := field.Tag.Get("locationName") if name == "" { name = field.Name } if m.Kind() == reflect.Ptr { m = m.Elem() } if !m.IsValid() { continue } var err error switch field.Tag.Get("location") { case "headers": // header maps err = buildHeaderMap(&r.HTTPRequest.Header, m, field.Tag.Get("locationName")) case "header": err = buildHeader(&r.HTTPRequest.Header, m, name) case "uri": err = buildURI(r.HTTPRequest.URL, m, name) case "querystring": err = buildQueryString(query, m, name) } r.Error = err } if r.Error != nil { return } } r.HTTPRequest.URL.RawQuery = query.Encode() updatePath(r.HTTPRequest.URL, r.HTTPRequest.URL.Path) } func buildBody(r *request.Request, v reflect.Value) { if field, ok := v.Type().FieldByName("_"); ok { if payloadName := field.Tag.Get("payload"); payloadName != "" { pfield, _ := v.Type().FieldByName(payloadName) if ptag := pfield.Tag.Get("type"); ptag != "" && ptag != "structure" { payload := reflect.Indirect(v.FieldByName(payloadName)) if payload.IsValid() && payload.Interface() != nil { switch reader := payload.Interface().(type) { case io.ReadSeeker: r.SetReaderBody(reader) case []byte: r.SetBufferBody(reader) case string: r.SetStringBody(reader) default: r.Error = awserr.New("SerializationError", "failed to encode REST request", fmt.Errorf("unknown payload type %s", payload.Type())) } } } } } } func buildHeader(header *http.Header, v reflect.Value, name string) error { str, err := convertType(v) if err == errValueNotSet { return nil } else if err != nil { return awserr.New("SerializationError", "failed to encode REST request", err) } header.Add(name, str) return nil } func buildHeaderMap(header *http.Header, v reflect.Value, prefix string) error { for _, key := range v.MapKeys() { str, err := convertType(v.MapIndex(key)) if err == errValueNotSet { continue } else if err != nil { return awserr.New("SerializationError", "failed to encode REST request", err) } header.Add(prefix+key.String(), str) } return nil } func buildURI(u *url.URL, v reflect.Value, name string) error { value, err := convertType(v) if err == errValueNotSet { return nil } else if err != nil { return awserr.New("SerializationError", "failed to encode REST request", err) } uri := u.Path uri = strings.Replace(uri, "{"+name+"}", EscapePath(value, true), -1) uri = strings.Replace(uri, "{"+name+"+}", EscapePath(value, false), -1) u.Path = uri return nil } func buildQueryString(query url.Values, v reflect.Value, name string) error { switch value := v.Interface().(type) { case []*string: for _, item := range value { query.Add(name, *item) } case map[string]*string: for key, item := range value { query.Add(key, *item) } case map[string][]*string: for key, items := range value { for _, item := range items { query.Add(key, *item) } } default: str, err := convertType(v) if err == errValueNotSet { return nil } else if err != nil { return awserr.New("SerializationError", "failed to encode REST request", err) } query.Set(name, str) } return nil } func updatePath(url *url.URL, urlPath string) { scheme, query := url.Scheme, url.RawQuery hasSlash := strings.HasSuffix(urlPath, "/") // clean up path urlPath = path.Clean(urlPath) if hasSlash && !strings.HasSuffix(urlPath, "/") { urlPath += "/" } // get formatted URL minus scheme so we can build this into Opaque url.Scheme, url.Path, url.RawQuery = "", "", "" s := url.String() url.Scheme = scheme url.RawQuery = query // build opaque URI url.Opaque = s + urlPath } // EscapePath escapes part of a URL path in Amazon style func EscapePath(path string, encodeSep bool) string { var buf bytes.Buffer for i := 0; i < len(path); i++ { c := path[i] if noEscape[c] || (c == '/' && !encodeSep) { buf.WriteByte(c) } else { fmt.Fprintf(&buf, "%%%02X", c) } } return buf.String() } func convertType(v reflect.Value) (string, error) { v = reflect.Indirect(v) if !v.IsValid() { return "", errValueNotSet } var str string switch value := v.Interface().(type) { case string: str = value case []byte: str = base64.StdEncoding.EncodeToString(value) case bool: str = strconv.FormatBool(value) case int64: str = strconv.FormatInt(value, 10) case float64: str = strconv.FormatFloat(value, 'f', -1, 64) case time.Time: str = value.UTC().Format(RFC822) default: err := fmt.Errorf("Unsupported value for param %v (%s)", v.Interface(), v.Type()) return "", err } return str, nil } aws-sdk-go-1.4.22/private/protocol/rest/payload.go000066400000000000000000000021241300374646400220320ustar00rootroot00000000000000package rest import "reflect" // PayloadMember returns the payload field member of i if there is one, or nil. func PayloadMember(i interface{}) interface{} { if i == nil { return nil } v := reflect.ValueOf(i).Elem() if !v.IsValid() { return nil } if field, ok := v.Type().FieldByName("_"); ok { if payloadName := field.Tag.Get("payload"); payloadName != "" { field, _ := v.Type().FieldByName(payloadName) if field.Tag.Get("type") != "structure" { return nil } payload := v.FieldByName(payloadName) if payload.IsValid() || (payload.Kind() == reflect.Ptr && !payload.IsNil()) { return payload.Interface() } } } return nil } // PayloadType returns the type of a payload field member of i if there is one, or "". func PayloadType(i interface{}) string { v := reflect.Indirect(reflect.ValueOf(i)) if !v.IsValid() { return "" } if field, ok := v.Type().FieldByName("_"); ok { if payloadName := field.Tag.Get("payload"); payloadName != "" { if member, ok := v.Type().FieldByName(payloadName); ok { return member.Tag.Get("type") } } } return "" } aws-sdk-go-1.4.22/private/protocol/rest/unmarshal.go000066400000000000000000000124161300374646400224000ustar00rootroot00000000000000package rest import ( "encoding/base64" "fmt" "io" "io/ioutil" "net/http" "reflect" "strconv" "strings" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" ) // UnmarshalHandler is a named request handler for unmarshaling rest protocol requests var UnmarshalHandler = request.NamedHandler{Name: "awssdk.rest.Unmarshal", Fn: Unmarshal} // UnmarshalMetaHandler is a named request handler for unmarshaling rest protocol request metadata var UnmarshalMetaHandler = request.NamedHandler{Name: "awssdk.rest.UnmarshalMeta", Fn: UnmarshalMeta} // Unmarshal unmarshals the REST component of a response in a REST service. func Unmarshal(r *request.Request) { if r.DataFilled() { v := reflect.Indirect(reflect.ValueOf(r.Data)) unmarshalBody(r, v) } } // UnmarshalMeta unmarshals the REST metadata of a response in a REST service func UnmarshalMeta(r *request.Request) { r.RequestID = r.HTTPResponse.Header.Get("X-Amzn-Requestid") if r.RequestID == "" { // Alternative version of request id in the header r.RequestID = r.HTTPResponse.Header.Get("X-Amz-Request-Id") } if r.DataFilled() { v := reflect.Indirect(reflect.ValueOf(r.Data)) unmarshalLocationElements(r, v) } } func unmarshalBody(r *request.Request, v reflect.Value) { if field, ok := v.Type().FieldByName("_"); ok { if payloadName := field.Tag.Get("payload"); payloadName != "" { pfield, _ := v.Type().FieldByName(payloadName) if ptag := pfield.Tag.Get("type"); ptag != "" && ptag != "structure" { payload := v.FieldByName(payloadName) if payload.IsValid() { switch payload.Interface().(type) { case []byte: defer r.HTTPResponse.Body.Close() b, err := ioutil.ReadAll(r.HTTPResponse.Body) if err != nil { r.Error = awserr.New("SerializationError", "failed to decode REST response", err) } else { payload.Set(reflect.ValueOf(b)) } case *string: defer r.HTTPResponse.Body.Close() b, err := ioutil.ReadAll(r.HTTPResponse.Body) if err != nil { r.Error = awserr.New("SerializationError", "failed to decode REST response", err) } else { str := string(b) payload.Set(reflect.ValueOf(&str)) } default: switch payload.Type().String() { case "io.ReadSeeker": payload.Set(reflect.ValueOf(aws.ReadSeekCloser(r.HTTPResponse.Body))) case "aws.ReadSeekCloser", "io.ReadCloser": payload.Set(reflect.ValueOf(r.HTTPResponse.Body)) default: io.Copy(ioutil.Discard, r.HTTPResponse.Body) defer r.HTTPResponse.Body.Close() r.Error = awserr.New("SerializationError", "failed to decode REST response", fmt.Errorf("unknown payload type %s", payload.Type())) } } } } } } } func unmarshalLocationElements(r *request.Request, v reflect.Value) { for i := 0; i < v.NumField(); i++ { m, field := v.Field(i), v.Type().Field(i) if n := field.Name; n[0:1] == strings.ToLower(n[0:1]) { continue } if m.IsValid() { name := field.Tag.Get("locationName") if name == "" { name = field.Name } switch field.Tag.Get("location") { case "statusCode": unmarshalStatusCode(m, r.HTTPResponse.StatusCode) case "header": err := unmarshalHeader(m, r.HTTPResponse.Header.Get(name)) if err != nil { r.Error = awserr.New("SerializationError", "failed to decode REST response", err) break } case "headers": prefix := field.Tag.Get("locationName") err := unmarshalHeaderMap(m, r.HTTPResponse.Header, prefix) if err != nil { r.Error = awserr.New("SerializationError", "failed to decode REST response", err) break } } } if r.Error != nil { return } } } func unmarshalStatusCode(v reflect.Value, statusCode int) { if !v.IsValid() { return } switch v.Interface().(type) { case *int64: s := int64(statusCode) v.Set(reflect.ValueOf(&s)) } } func unmarshalHeaderMap(r reflect.Value, headers http.Header, prefix string) error { switch r.Interface().(type) { case map[string]*string: // we only support string map value types out := map[string]*string{} for k, v := range headers { k = http.CanonicalHeaderKey(k) if strings.HasPrefix(strings.ToLower(k), strings.ToLower(prefix)) { out[k[len(prefix):]] = &v[0] } } r.Set(reflect.ValueOf(out)) } return nil } func unmarshalHeader(v reflect.Value, header string) error { if !v.IsValid() || (header == "" && v.Elem().Kind() != reflect.String) { return nil } switch v.Interface().(type) { case *string: v.Set(reflect.ValueOf(&header)) case []byte: b, err := base64.StdEncoding.DecodeString(header) if err != nil { return err } v.Set(reflect.ValueOf(&b)) case *bool: b, err := strconv.ParseBool(header) if err != nil { return err } v.Set(reflect.ValueOf(&b)) case *int64: i, err := strconv.ParseInt(header, 10, 64) if err != nil { return err } v.Set(reflect.ValueOf(&i)) case *float64: f, err := strconv.ParseFloat(header, 64) if err != nil { return err } v.Set(reflect.ValueOf(&f)) case *time.Time: t, err := time.Parse(RFC822, header) if err != nil { return err } v.Set(reflect.ValueOf(&t)) default: err := fmt.Errorf("Unsupported value for param %v (%s)", v.Interface(), v.Type()) return err } return nil } aws-sdk-go-1.4.22/private/protocol/restjson/000077500000000000000000000000001300374646400207455ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/protocol/restjson/build_bench_test.go000066400000000000000000000300221300374646400245660ustar00rootroot00000000000000// +build bench package restjson_test import ( "bytes" "encoding/json" "testing" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/private/protocol/rest" "github.com/aws/aws-sdk-go/private/protocol/restjson" "github.com/aws/aws-sdk-go/service/elastictranscoder" ) func BenchmarkRESTJSONBuild_Complex_elastictranscoderCreateJobInput(b *testing.B) { svc := awstesting.NewClient() svc.ServiceName = "elastictranscoder" svc.APIVersion = "2012-09-25" for i := 0; i < b.N; i++ { r := svc.NewRequest(&request.Operation{Name: "CreateJobInput"}, restjsonBuildParms, nil) restjson.Build(r) if r.Error != nil { b.Fatal("Unexpected error", r.Error) } } } func BenchmarkRESTBuild_Complex_elastictranscoderCreateJobInput(b *testing.B) { svc := awstesting.NewClient() svc.ServiceName = "elastictranscoder" svc.APIVersion = "2012-09-25" for i := 0; i < b.N; i++ { r := svc.NewRequest(&request.Operation{Name: "CreateJobInput"}, restjsonBuildParms, nil) rest.Build(r) if r.Error != nil { b.Fatal("Unexpected error", r.Error) } } } func BenchmarkEncodingJSONMarshal_Complex_elastictranscoderCreateJobInput(b *testing.B) { params := restjsonBuildParms for i := 0; i < b.N; i++ { buf := &bytes.Buffer{} encoder := json.NewEncoder(buf) if err := encoder.Encode(params); err != nil { b.Fatal("Unexpected error", err) } } } func BenchmarkRESTJSONBuild_Simple_elastictranscoderListJobsByPipeline(b *testing.B) { svc := awstesting.NewClient() svc.ServiceName = "elastictranscoder" svc.APIVersion = "2012-09-25" params := &elastictranscoder.ListJobsByPipelineInput{ PipelineId: aws.String("Id"), // Required Ascending: aws.String("Ascending"), PageToken: aws.String("Id"), } for i := 0; i < b.N; i++ { r := svc.NewRequest(&request.Operation{Name: "ListJobsByPipeline"}, params, nil) restjson.Build(r) if r.Error != nil { b.Fatal("Unexpected error", r.Error) } } } func BenchmarkRESTBuild_Simple_elastictranscoderListJobsByPipeline(b *testing.B) { svc := awstesting.NewClient() svc.ServiceName = "elastictranscoder" svc.APIVersion = "2012-09-25" params := &elastictranscoder.ListJobsByPipelineInput{ PipelineId: aws.String("Id"), // Required Ascending: aws.String("Ascending"), PageToken: aws.String("Id"), } for i := 0; i < b.N; i++ { r := svc.NewRequest(&request.Operation{Name: "ListJobsByPipeline"}, params, nil) rest.Build(r) if r.Error != nil { b.Fatal("Unexpected error", r.Error) } } } func BenchmarkEncodingJSONMarshal_Simple_elastictranscoderListJobsByPipeline(b *testing.B) { params := &elastictranscoder.ListJobsByPipelineInput{ PipelineId: aws.String("Id"), // Required Ascending: aws.String("Ascending"), PageToken: aws.String("Id"), } for i := 0; i < b.N; i++ { buf := &bytes.Buffer{} encoder := json.NewEncoder(buf) if err := encoder.Encode(params); err != nil { b.Fatal("Unexpected error", err) } } } var restjsonBuildParms = &elastictranscoder.CreateJobInput{ Input: &elastictranscoder.JobInput{ // Required AspectRatio: aws.String("AspectRatio"), Container: aws.String("JobContainer"), DetectedProperties: &elastictranscoder.DetectedProperties{ DurationMillis: aws.Int64(1), FileSize: aws.Int64(1), FrameRate: aws.String("FloatString"), Height: aws.Int64(1), Width: aws.Int64(1), }, Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, FrameRate: aws.String("FrameRate"), Interlaced: aws.String("Interlaced"), Key: aws.String("Key"), Resolution: aws.String("Resolution"), }, PipelineId: aws.String("Id"), // Required Output: &elastictranscoder.CreateJobOutput{ AlbumArt: &elastictranscoder.JobAlbumArt{ Artwork: []*elastictranscoder.Artwork{ { // Required AlbumArtFormat: aws.String("JpgOrPng"), Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, InputKey: aws.String("WatermarkKey"), MaxHeight: aws.String("DigitsOrAuto"), MaxWidth: aws.String("DigitsOrAuto"), PaddingPolicy: aws.String("PaddingPolicy"), SizingPolicy: aws.String("SizingPolicy"), }, // More values... }, MergePolicy: aws.String("MergePolicy"), }, Captions: &elastictranscoder.Captions{ CaptionFormats: []*elastictranscoder.CaptionFormat{ { // Required Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, Format: aws.String("CaptionFormatFormat"), Pattern: aws.String("CaptionFormatPattern"), }, // More values... }, CaptionSources: []*elastictranscoder.CaptionSource{ { // Required Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, Key: aws.String("Key"), Label: aws.String("Name"), Language: aws.String("Key"), TimeOffset: aws.String("TimeOffset"), }, // More values... }, MergePolicy: aws.String("CaptionMergePolicy"), }, Composition: []*elastictranscoder.Clip{ { // Required TimeSpan: &elastictranscoder.TimeSpan{ Duration: aws.String("Time"), StartTime: aws.String("Time"), }, }, // More values... }, Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, Key: aws.String("Key"), PresetId: aws.String("Id"), Rotate: aws.String("Rotate"), SegmentDuration: aws.String("FloatString"), ThumbnailEncryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, ThumbnailPattern: aws.String("ThumbnailPattern"), Watermarks: []*elastictranscoder.JobWatermark{ { // Required Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, InputKey: aws.String("WatermarkKey"), PresetWatermarkId: aws.String("PresetWatermarkId"), }, // More values... }, }, OutputKeyPrefix: aws.String("Key"), Outputs: []*elastictranscoder.CreateJobOutput{ { // Required AlbumArt: &elastictranscoder.JobAlbumArt{ Artwork: []*elastictranscoder.Artwork{ { // Required AlbumArtFormat: aws.String("JpgOrPng"), Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, InputKey: aws.String("WatermarkKey"), MaxHeight: aws.String("DigitsOrAuto"), MaxWidth: aws.String("DigitsOrAuto"), PaddingPolicy: aws.String("PaddingPolicy"), SizingPolicy: aws.String("SizingPolicy"), }, // More values... }, MergePolicy: aws.String("MergePolicy"), }, Captions: &elastictranscoder.Captions{ CaptionFormats: []*elastictranscoder.CaptionFormat{ { // Required Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, Format: aws.String("CaptionFormatFormat"), Pattern: aws.String("CaptionFormatPattern"), }, // More values... }, CaptionSources: []*elastictranscoder.CaptionSource{ { // Required Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, Key: aws.String("Key"), Label: aws.String("Name"), Language: aws.String("Key"), TimeOffset: aws.String("TimeOffset"), }, // More values... }, MergePolicy: aws.String("CaptionMergePolicy"), }, Composition: []*elastictranscoder.Clip{ { // Required TimeSpan: &elastictranscoder.TimeSpan{ Duration: aws.String("Time"), StartTime: aws.String("Time"), }, }, // More values... }, Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, Key: aws.String("Key"), PresetId: aws.String("Id"), Rotate: aws.String("Rotate"), SegmentDuration: aws.String("FloatString"), ThumbnailEncryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, ThumbnailPattern: aws.String("ThumbnailPattern"), Watermarks: []*elastictranscoder.JobWatermark{ { // Required Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, InputKey: aws.String("WatermarkKey"), PresetWatermarkId: aws.String("PresetWatermarkId"), }, // More values... }, }, // More values... }, Playlists: []*elastictranscoder.CreateJobPlaylist{ { // Required Format: aws.String("PlaylistFormat"), HlsContentProtection: &elastictranscoder.HlsContentProtection{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), KeyStoragePolicy: aws.String("KeyStoragePolicy"), LicenseAcquisitionUrl: aws.String("ZeroTo512String"), Method: aws.String("HlsContentProtectionMethod"), }, Name: aws.String("Filename"), OutputKeys: []*string{ aws.String("Key"), // Required // More values... }, PlayReadyDrm: &elastictranscoder.PlayReadyDrm{ Format: aws.String("PlayReadyDrmFormatString"), InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("NonEmptyBase64EncodedString"), KeyId: aws.String("KeyIdGuid"), KeyMd5: aws.String("NonEmptyBase64EncodedString"), LicenseAcquisitionUrl: aws.String("OneTo512String"), }, }, // More values... }, UserMetadata: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, } aws-sdk-go-1.4.22/private/protocol/restjson/build_test.go000066400000000000000000004351031300374646400234400ustar00rootroot00000000000000package restjson_test import ( "bytes" "encoding/json" "encoding/xml" "fmt" "io" "io/ioutil" "net/http" "net/url" "testing" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/restjson" "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil" "github.com/aws/aws-sdk-go/private/util" "github.com/stretchr/testify/assert" ) var _ bytes.Buffer // always import bytes var _ http.Request var _ json.Marshaler var _ time.Time var _ xmlutil.XMLNode var _ xml.Attr var _ = ioutil.Discard var _ = util.Trim("") var _ = url.Values{} var _ = io.EOF var _ = aws.String var _ = fmt.Println func init() { protocol.RandReader = &awstesting.ZeroReader{} } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService1ProtocolTest struct { *client.Client } // New creates a new instance of the InputService1ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService1ProtocolTest client from just a session. // svc := inputservice1protocoltest.New(mySession) // // // Create a InputService1ProtocolTest client with additional configuration // svc := inputservice1protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService1ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService1ProtocolTest { c := p.ClientConfig("inputservice1protocoltest", cfgs...) return newInputService1ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService1ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService1ProtocolTest { svc := &InputService1ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice1protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService1ProtocolTest operation and runs any // custom request initialization. func (c *InputService1ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService1TestCaseOperation1 = "OperationName" // InputService1TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService1TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService1TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService1TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService1TestCaseOperation1Request method. // req, resp := client.InputService1TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService1ProtocolTest) InputService1TestCaseOperation1Request(input *InputService1TestShapeInputService1TestCaseOperation1Input) (req *request.Request, output *InputService1TestShapeInputService1TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService1TestCaseOperation1, HTTPMethod: "GET", HTTPPath: "/2014-01-01/jobs", } if input == nil { input = &InputService1TestShapeInputService1TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService1TestShapeInputService1TestCaseOperation1Output{} req.Data = output return } // InputService1TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService1TestCaseOperation1 for usage and error information. func (c *InputService1ProtocolTest) InputService1TestCaseOperation1(input *InputService1TestShapeInputService1TestCaseOperation1Input) (*InputService1TestShapeInputService1TestCaseOperation1Output, error) { req, out := c.InputService1TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService1TestShapeInputService1TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type InputService1TestShapeInputService1TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService2ProtocolTest struct { *client.Client } // New creates a new instance of the InputService2ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService2ProtocolTest client from just a session. // svc := inputservice2protocoltest.New(mySession) // // // Create a InputService2ProtocolTest client with additional configuration // svc := inputservice2protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService2ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService2ProtocolTest { c := p.ClientConfig("inputservice2protocoltest", cfgs...) return newInputService2ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService2ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService2ProtocolTest { svc := &InputService2ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice2protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService2ProtocolTest operation and runs any // custom request initialization. func (c *InputService2ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService2TestCaseOperation1 = "OperationName" // InputService2TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService2TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService2TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService2TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService2TestCaseOperation1Request method. // req, resp := client.InputService2TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService2ProtocolTest) InputService2TestCaseOperation1Request(input *InputService2TestShapeInputService2TestCaseOperation1Input) (req *request.Request, output *InputService2TestShapeInputService2TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService2TestCaseOperation1, HTTPMethod: "GET", HTTPPath: "/2014-01-01/jobsByPipeline/{PipelineId}", } if input == nil { input = &InputService2TestShapeInputService2TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService2TestShapeInputService2TestCaseOperation1Output{} req.Data = output return } // InputService2TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService2TestCaseOperation1 for usage and error information. func (c *InputService2ProtocolTest) InputService2TestCaseOperation1(input *InputService2TestShapeInputService2TestCaseOperation1Input) (*InputService2TestShapeInputService2TestCaseOperation1Output, error) { req, out := c.InputService2TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService2TestShapeInputService2TestCaseOperation1Input struct { _ struct{} `type:"structure"` PipelineId *string `location:"uri" type:"string"` } type InputService2TestShapeInputService2TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService3ProtocolTest struct { *client.Client } // New creates a new instance of the InputService3ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService3ProtocolTest client from just a session. // svc := inputservice3protocoltest.New(mySession) // // // Create a InputService3ProtocolTest client with additional configuration // svc := inputservice3protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService3ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService3ProtocolTest { c := p.ClientConfig("inputservice3protocoltest", cfgs...) return newInputService3ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService3ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService3ProtocolTest { svc := &InputService3ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice3protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService3ProtocolTest operation and runs any // custom request initialization. func (c *InputService3ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService3TestCaseOperation1 = "OperationName" // InputService3TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService3TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService3TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService3TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService3TestCaseOperation1Request method. // req, resp := client.InputService3TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService3ProtocolTest) InputService3TestCaseOperation1Request(input *InputService3TestShapeInputService3TestCaseOperation1Input) (req *request.Request, output *InputService3TestShapeInputService3TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService3TestCaseOperation1, HTTPMethod: "GET", HTTPPath: "/2014-01-01/jobsByPipeline/{PipelineId}", } if input == nil { input = &InputService3TestShapeInputService3TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService3TestShapeInputService3TestCaseOperation1Output{} req.Data = output return } // InputService3TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService3TestCaseOperation1 for usage and error information. func (c *InputService3ProtocolTest) InputService3TestCaseOperation1(input *InputService3TestShapeInputService3TestCaseOperation1Input) (*InputService3TestShapeInputService3TestCaseOperation1Output, error) { req, out := c.InputService3TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService3TestShapeInputService3TestCaseOperation1Input struct { _ struct{} `type:"structure"` Foo *string `location:"uri" locationName:"PipelineId" type:"string"` } type InputService3TestShapeInputService3TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService4ProtocolTest struct { *client.Client } // New creates a new instance of the InputService4ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService4ProtocolTest client from just a session. // svc := inputservice4protocoltest.New(mySession) // // // Create a InputService4ProtocolTest client with additional configuration // svc := inputservice4protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService4ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService4ProtocolTest { c := p.ClientConfig("inputservice4protocoltest", cfgs...) return newInputService4ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService4ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService4ProtocolTest { svc := &InputService4ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice4protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService4ProtocolTest operation and runs any // custom request initialization. func (c *InputService4ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService4TestCaseOperation1 = "OperationName" // InputService4TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService4TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService4TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService4TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService4TestCaseOperation1Request method. // req, resp := client.InputService4TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService4ProtocolTest) InputService4TestCaseOperation1Request(input *InputService4TestShapeInputService4TestCaseOperation1Input) (req *request.Request, output *InputService4TestShapeInputService4TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService4TestCaseOperation1, HTTPMethod: "GET", HTTPPath: "/path", } if input == nil { input = &InputService4TestShapeInputService4TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService4TestShapeInputService4TestCaseOperation1Output{} req.Data = output return } // InputService4TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService4TestCaseOperation1 for usage and error information. func (c *InputService4ProtocolTest) InputService4TestCaseOperation1(input *InputService4TestShapeInputService4TestCaseOperation1Input) (*InputService4TestShapeInputService4TestCaseOperation1Output, error) { req, out := c.InputService4TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService4TestShapeInputService4TestCaseOperation1Input struct { _ struct{} `type:"structure"` Items []*string `location:"querystring" locationName:"item" type:"list"` } type InputService4TestShapeInputService4TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService5ProtocolTest struct { *client.Client } // New creates a new instance of the InputService5ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService5ProtocolTest client from just a session. // svc := inputservice5protocoltest.New(mySession) // // // Create a InputService5ProtocolTest client with additional configuration // svc := inputservice5protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService5ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService5ProtocolTest { c := p.ClientConfig("inputservice5protocoltest", cfgs...) return newInputService5ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService5ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService5ProtocolTest { svc := &InputService5ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice5protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService5ProtocolTest operation and runs any // custom request initialization. func (c *InputService5ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService5TestCaseOperation1 = "OperationName" // InputService5TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService5TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService5TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService5TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService5TestCaseOperation1Request method. // req, resp := client.InputService5TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService5ProtocolTest) InputService5TestCaseOperation1Request(input *InputService5TestShapeInputService5TestCaseOperation1Input) (req *request.Request, output *InputService5TestShapeInputService5TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService5TestCaseOperation1, HTTPMethod: "GET", HTTPPath: "/2014-01-01/jobsByPipeline/{PipelineId}", } if input == nil { input = &InputService5TestShapeInputService5TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService5TestShapeInputService5TestCaseOperation1Output{} req.Data = output return } // InputService5TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService5TestCaseOperation1 for usage and error information. func (c *InputService5ProtocolTest) InputService5TestCaseOperation1(input *InputService5TestShapeInputService5TestCaseOperation1Input) (*InputService5TestShapeInputService5TestCaseOperation1Output, error) { req, out := c.InputService5TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService5TestShapeInputService5TestCaseOperation1Input struct { _ struct{} `type:"structure"` PipelineId *string `location:"uri" type:"string"` QueryDoc map[string]*string `location:"querystring" type:"map"` } type InputService5TestShapeInputService5TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService6ProtocolTest struct { *client.Client } // New creates a new instance of the InputService6ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService6ProtocolTest client from just a session. // svc := inputservice6protocoltest.New(mySession) // // // Create a InputService6ProtocolTest client with additional configuration // svc := inputservice6protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService6ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService6ProtocolTest { c := p.ClientConfig("inputservice6protocoltest", cfgs...) return newInputService6ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService6ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService6ProtocolTest { svc := &InputService6ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice6protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService6ProtocolTest operation and runs any // custom request initialization. func (c *InputService6ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService6TestCaseOperation1 = "OperationName" // InputService6TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService6TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService6TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService6TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService6TestCaseOperation1Request method. // req, resp := client.InputService6TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService6ProtocolTest) InputService6TestCaseOperation1Request(input *InputService6TestShapeInputService6TestCaseOperation1Input) (req *request.Request, output *InputService6TestShapeInputService6TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService6TestCaseOperation1, HTTPMethod: "GET", HTTPPath: "/2014-01-01/jobsByPipeline/{PipelineId}", } if input == nil { input = &InputService6TestShapeInputService6TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService6TestShapeInputService6TestCaseOperation1Output{} req.Data = output return } // InputService6TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService6TestCaseOperation1 for usage and error information. func (c *InputService6ProtocolTest) InputService6TestCaseOperation1(input *InputService6TestShapeInputService6TestCaseOperation1Input) (*InputService6TestShapeInputService6TestCaseOperation1Output, error) { req, out := c.InputService6TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService6TestShapeInputService6TestCaseOperation1Input struct { _ struct{} `type:"structure"` PipelineId *string `location:"uri" type:"string"` QueryDoc map[string][]*string `location:"querystring" type:"map"` } type InputService6TestShapeInputService6TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService7ProtocolTest struct { *client.Client } // New creates a new instance of the InputService7ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService7ProtocolTest client from just a session. // svc := inputservice7protocoltest.New(mySession) // // // Create a InputService7ProtocolTest client with additional configuration // svc := inputservice7protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService7ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService7ProtocolTest { c := p.ClientConfig("inputservice7protocoltest", cfgs...) return newInputService7ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService7ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService7ProtocolTest { svc := &InputService7ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice7protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService7ProtocolTest operation and runs any // custom request initialization. func (c *InputService7ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService7TestCaseOperation1 = "OperationName" // InputService7TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService7TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService7TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService7TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService7TestCaseOperation1Request method. // req, resp := client.InputService7TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService7ProtocolTest) InputService7TestCaseOperation1Request(input *InputService7TestShapeInputService7TestCaseOperation1Input) (req *request.Request, output *InputService7TestShapeInputService7TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService7TestCaseOperation1, HTTPMethod: "GET", HTTPPath: "/2014-01-01/jobsByPipeline/{PipelineId}", } if input == nil { input = &InputService7TestShapeInputService7TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService7TestShapeInputService7TestCaseOperation1Output{} req.Data = output return } // InputService7TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService7TestCaseOperation1 for usage and error information. func (c *InputService7ProtocolTest) InputService7TestCaseOperation1(input *InputService7TestShapeInputService7TestCaseOperation1Input) (*InputService7TestShapeInputService7TestCaseOperation1Output, error) { req, out := c.InputService7TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService7TestShapeInputService7TestCaseOperation1Input struct { _ struct{} `type:"structure"` Ascending *string `location:"querystring" locationName:"Ascending" type:"string"` PageToken *string `location:"querystring" locationName:"PageToken" type:"string"` PipelineId *string `location:"uri" locationName:"PipelineId" type:"string"` } type InputService7TestShapeInputService7TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService8ProtocolTest struct { *client.Client } // New creates a new instance of the InputService8ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService8ProtocolTest client from just a session. // svc := inputservice8protocoltest.New(mySession) // // // Create a InputService8ProtocolTest client with additional configuration // svc := inputservice8protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService8ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService8ProtocolTest { c := p.ClientConfig("inputservice8protocoltest", cfgs...) return newInputService8ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService8ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService8ProtocolTest { svc := &InputService8ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice8protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService8ProtocolTest operation and runs any // custom request initialization. func (c *InputService8ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService8TestCaseOperation1 = "OperationName" // InputService8TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService8TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService8TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService8TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService8TestCaseOperation1Request method. // req, resp := client.InputService8TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService8ProtocolTest) InputService8TestCaseOperation1Request(input *InputService8TestShapeInputService8TestCaseOperation1Input) (req *request.Request, output *InputService8TestShapeInputService8TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService8TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/2014-01-01/jobsByPipeline/{PipelineId}", } if input == nil { input = &InputService8TestShapeInputService8TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService8TestShapeInputService8TestCaseOperation1Output{} req.Data = output return } // InputService8TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService8TestCaseOperation1 for usage and error information. func (c *InputService8ProtocolTest) InputService8TestCaseOperation1(input *InputService8TestShapeInputService8TestCaseOperation1Input) (*InputService8TestShapeInputService8TestCaseOperation1Output, error) { req, out := c.InputService8TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService8TestShapeInputService8TestCaseOperation1Input struct { _ struct{} `type:"structure"` Ascending *string `location:"querystring" locationName:"Ascending" type:"string"` Config *InputService8TestShapeStructType `type:"structure"` PageToken *string `location:"querystring" locationName:"PageToken" type:"string"` PipelineId *string `location:"uri" locationName:"PipelineId" type:"string"` } type InputService8TestShapeInputService8TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService8TestShapeStructType struct { _ struct{} `type:"structure"` A *string `type:"string"` B *string `type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService9ProtocolTest struct { *client.Client } // New creates a new instance of the InputService9ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService9ProtocolTest client from just a session. // svc := inputservice9protocoltest.New(mySession) // // // Create a InputService9ProtocolTest client with additional configuration // svc := inputservice9protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService9ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService9ProtocolTest { c := p.ClientConfig("inputservice9protocoltest", cfgs...) return newInputService9ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService9ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService9ProtocolTest { svc := &InputService9ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice9protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService9ProtocolTest operation and runs any // custom request initialization. func (c *InputService9ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService9TestCaseOperation1 = "OperationName" // InputService9TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService9TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService9TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService9TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService9TestCaseOperation1Request method. // req, resp := client.InputService9TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService9ProtocolTest) InputService9TestCaseOperation1Request(input *InputService9TestShapeInputService9TestCaseOperation1Input) (req *request.Request, output *InputService9TestShapeInputService9TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService9TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/2014-01-01/jobsByPipeline/{PipelineId}", } if input == nil { input = &InputService9TestShapeInputService9TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService9TestShapeInputService9TestCaseOperation1Output{} req.Data = output return } // InputService9TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService9TestCaseOperation1 for usage and error information. func (c *InputService9ProtocolTest) InputService9TestCaseOperation1(input *InputService9TestShapeInputService9TestCaseOperation1Input) (*InputService9TestShapeInputService9TestCaseOperation1Output, error) { req, out := c.InputService9TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService9TestShapeInputService9TestCaseOperation1Input struct { _ struct{} `type:"structure"` Ascending *string `location:"querystring" locationName:"Ascending" type:"string"` Checksum *string `location:"header" locationName:"x-amz-checksum" type:"string"` Config *InputService9TestShapeStructType `type:"structure"` PageToken *string `location:"querystring" locationName:"PageToken" type:"string"` PipelineId *string `location:"uri" locationName:"PipelineId" type:"string"` } type InputService9TestShapeInputService9TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService9TestShapeStructType struct { _ struct{} `type:"structure"` A *string `type:"string"` B *string `type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService10ProtocolTest struct { *client.Client } // New creates a new instance of the InputService10ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService10ProtocolTest client from just a session. // svc := inputservice10protocoltest.New(mySession) // // // Create a InputService10ProtocolTest client with additional configuration // svc := inputservice10protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService10ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService10ProtocolTest { c := p.ClientConfig("inputservice10protocoltest", cfgs...) return newInputService10ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService10ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService10ProtocolTest { svc := &InputService10ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice10protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService10ProtocolTest operation and runs any // custom request initialization. func (c *InputService10ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService10TestCaseOperation1 = "OperationName" // InputService10TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService10TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService10TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService10TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService10TestCaseOperation1Request method. // req, resp := client.InputService10TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService10ProtocolTest) InputService10TestCaseOperation1Request(input *InputService10TestShapeInputService10TestCaseOperation1Input) (req *request.Request, output *InputService10TestShapeInputService10TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService10TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/2014-01-01/vaults/{vaultName}/archives", } if input == nil { input = &InputService10TestShapeInputService10TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService10TestShapeInputService10TestCaseOperation1Output{} req.Data = output return } // InputService10TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService10TestCaseOperation1 for usage and error information. func (c *InputService10ProtocolTest) InputService10TestCaseOperation1(input *InputService10TestShapeInputService10TestCaseOperation1Input) (*InputService10TestShapeInputService10TestCaseOperation1Output, error) { req, out := c.InputService10TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService10TestShapeInputService10TestCaseOperation1Input struct { _ struct{} `type:"structure" payload:"Body"` Body io.ReadSeeker `locationName:"body" type:"blob"` Checksum *string `location:"header" locationName:"x-amz-sha256-tree-hash" type:"string"` // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // Validate inspects the fields of the type to determine if they are valid. func (s *InputService10TestShapeInputService10TestCaseOperation1Input) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InputService10TestShapeInputService10TestCaseOperation1Input"} if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type InputService10TestShapeInputService10TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService11ProtocolTest struct { *client.Client } // New creates a new instance of the InputService11ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService11ProtocolTest client from just a session. // svc := inputservice11protocoltest.New(mySession) // // // Create a InputService11ProtocolTest client with additional configuration // svc := inputservice11protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService11ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService11ProtocolTest { c := p.ClientConfig("inputservice11protocoltest", cfgs...) return newInputService11ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService11ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService11ProtocolTest { svc := &InputService11ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice11protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService11ProtocolTest operation and runs any // custom request initialization. func (c *InputService11ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService11TestCaseOperation1 = "OperationName" // InputService11TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService11TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService11TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService11TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService11TestCaseOperation1Request method. // req, resp := client.InputService11TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService11ProtocolTest) InputService11TestCaseOperation1Request(input *InputService11TestShapeInputService11TestCaseOperation1Input) (req *request.Request, output *InputService11TestShapeInputService11TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService11TestCaseOperation1, HTTPMethod: "GET", HTTPPath: "/2014-01-01/{Foo}", } if input == nil { input = &InputService11TestShapeInputService11TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService11TestShapeInputService11TestCaseOperation1Output{} req.Data = output return } // InputService11TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService11TestCaseOperation1 for usage and error information. func (c *InputService11ProtocolTest) InputService11TestCaseOperation1(input *InputService11TestShapeInputService11TestCaseOperation1Input) (*InputService11TestShapeInputService11TestCaseOperation1Output, error) { req, out := c.InputService11TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService11TestShapeInputService11TestCaseOperation1Input struct { _ struct{} `type:"structure"` // Bar is automatically base64 encoded/decoded by the SDK. Bar []byte `type:"blob"` // Foo is a required field Foo *string `location:"uri" locationName:"Foo" type:"string" required:"true"` } // Validate inspects the fields of the type to determine if they are valid. func (s *InputService11TestShapeInputService11TestCaseOperation1Input) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InputService11TestShapeInputService11TestCaseOperation1Input"} if s.Foo == nil { invalidParams.Add(request.NewErrParamRequired("Foo")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type InputService11TestShapeInputService11TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService12ProtocolTest struct { *client.Client } // New creates a new instance of the InputService12ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService12ProtocolTest client from just a session. // svc := inputservice12protocoltest.New(mySession) // // // Create a InputService12ProtocolTest client with additional configuration // svc := inputservice12protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService12ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService12ProtocolTest { c := p.ClientConfig("inputservice12protocoltest", cfgs...) return newInputService12ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService12ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService12ProtocolTest { svc := &InputService12ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice12protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService12ProtocolTest operation and runs any // custom request initialization. func (c *InputService12ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService12TestCaseOperation1 = "OperationName" // InputService12TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService12TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService12TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService12TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService12TestCaseOperation1Request method. // req, resp := client.InputService12TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService12ProtocolTest) InputService12TestCaseOperation1Request(input *InputService12TestShapeInputShape) (req *request.Request, output *InputService12TestShapeInputService12TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService12TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InputService12TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService12TestShapeInputService12TestCaseOperation1Output{} req.Data = output return } // InputService12TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService12TestCaseOperation1 for usage and error information. func (c *InputService12ProtocolTest) InputService12TestCaseOperation1(input *InputService12TestShapeInputShape) (*InputService12TestShapeInputService12TestCaseOperation1Output, error) { req, out := c.InputService12TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService12TestCaseOperation2 = "OperationName" // InputService12TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService12TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService12TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService12TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService12TestCaseOperation2Request method. // req, resp := client.InputService12TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService12ProtocolTest) InputService12TestCaseOperation2Request(input *InputService12TestShapeInputShape) (req *request.Request, output *InputService12TestShapeInputService12TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService12TestCaseOperation2, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InputService12TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService12TestShapeInputService12TestCaseOperation2Output{} req.Data = output return } // InputService12TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService12TestCaseOperation2 for usage and error information. func (c *InputService12ProtocolTest) InputService12TestCaseOperation2(input *InputService12TestShapeInputShape) (*InputService12TestShapeInputService12TestCaseOperation2Output, error) { req, out := c.InputService12TestCaseOperation2Request(input) err := req.Send() return out, err } type InputService12TestShapeInputService12TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService12TestShapeInputService12TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService12TestShapeInputShape struct { _ struct{} `type:"structure" payload:"Foo"` Foo []byte `locationName:"foo" type:"blob"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService13ProtocolTest struct { *client.Client } // New creates a new instance of the InputService13ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService13ProtocolTest client from just a session. // svc := inputservice13protocoltest.New(mySession) // // // Create a InputService13ProtocolTest client with additional configuration // svc := inputservice13protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService13ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService13ProtocolTest { c := p.ClientConfig("inputservice13protocoltest", cfgs...) return newInputService13ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService13ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService13ProtocolTest { svc := &InputService13ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice13protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService13ProtocolTest operation and runs any // custom request initialization. func (c *InputService13ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService13TestCaseOperation1 = "OperationName" // InputService13TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService13TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService13TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService13TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService13TestCaseOperation1Request method. // req, resp := client.InputService13TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService13ProtocolTest) InputService13TestCaseOperation1Request(input *InputService13TestShapeInputShape) (req *request.Request, output *InputService13TestShapeInputService13TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService13TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InputService13TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService13TestShapeInputService13TestCaseOperation1Output{} req.Data = output return } // InputService13TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService13TestCaseOperation1 for usage and error information. func (c *InputService13ProtocolTest) InputService13TestCaseOperation1(input *InputService13TestShapeInputShape) (*InputService13TestShapeInputService13TestCaseOperation1Output, error) { req, out := c.InputService13TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService13TestCaseOperation2 = "OperationName" // InputService13TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService13TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService13TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService13TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService13TestCaseOperation2Request method. // req, resp := client.InputService13TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService13ProtocolTest) InputService13TestCaseOperation2Request(input *InputService13TestShapeInputShape) (req *request.Request, output *InputService13TestShapeInputService13TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService13TestCaseOperation2, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InputService13TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService13TestShapeInputService13TestCaseOperation2Output{} req.Data = output return } // InputService13TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService13TestCaseOperation2 for usage and error information. func (c *InputService13ProtocolTest) InputService13TestCaseOperation2(input *InputService13TestShapeInputShape) (*InputService13TestShapeInputService13TestCaseOperation2Output, error) { req, out := c.InputService13TestCaseOperation2Request(input) err := req.Send() return out, err } type InputService13TestShapeFooShape struct { _ struct{} `locationName:"foo" type:"structure"` Baz *string `locationName:"baz" type:"string"` } type InputService13TestShapeInputService13TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService13TestShapeInputService13TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService13TestShapeInputShape struct { _ struct{} `type:"structure" payload:"Foo"` Foo *InputService13TestShapeFooShape `locationName:"foo" type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService14ProtocolTest struct { *client.Client } // New creates a new instance of the InputService14ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService14ProtocolTest client from just a session. // svc := inputservice14protocoltest.New(mySession) // // // Create a InputService14ProtocolTest client with additional configuration // svc := inputservice14protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService14ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService14ProtocolTest { c := p.ClientConfig("inputservice14protocoltest", cfgs...) return newInputService14ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService14ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService14ProtocolTest { svc := &InputService14ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice14protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService14ProtocolTest operation and runs any // custom request initialization. func (c *InputService14ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService14TestCaseOperation1 = "OperationName" // InputService14TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService14TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService14TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService14TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService14TestCaseOperation1Request method. // req, resp := client.InputService14TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService14ProtocolTest) InputService14TestCaseOperation1Request(input *InputService14TestShapeInputShape) (req *request.Request, output *InputService14TestShapeInputService14TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService14TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService14TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService14TestShapeInputService14TestCaseOperation1Output{} req.Data = output return } // InputService14TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService14TestCaseOperation1 for usage and error information. func (c *InputService14ProtocolTest) InputService14TestCaseOperation1(input *InputService14TestShapeInputShape) (*InputService14TestShapeInputService14TestCaseOperation1Output, error) { req, out := c.InputService14TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService14TestCaseOperation2 = "OperationName" // InputService14TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService14TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService14TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService14TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService14TestCaseOperation2Request method. // req, resp := client.InputService14TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService14ProtocolTest) InputService14TestCaseOperation2Request(input *InputService14TestShapeInputShape) (req *request.Request, output *InputService14TestShapeInputService14TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService14TestCaseOperation2, HTTPMethod: "POST", HTTPPath: "/path?abc=mno", } if input == nil { input = &InputService14TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService14TestShapeInputService14TestCaseOperation2Output{} req.Data = output return } // InputService14TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService14TestCaseOperation2 for usage and error information. func (c *InputService14ProtocolTest) InputService14TestCaseOperation2(input *InputService14TestShapeInputShape) (*InputService14TestShapeInputService14TestCaseOperation2Output, error) { req, out := c.InputService14TestCaseOperation2Request(input) err := req.Send() return out, err } type InputService14TestShapeInputService14TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService14TestShapeInputService14TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService14TestShapeInputShape struct { _ struct{} `type:"structure"` Foo *string `location:"querystring" locationName:"param-name" type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService15ProtocolTest struct { *client.Client } // New creates a new instance of the InputService15ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService15ProtocolTest client from just a session. // svc := inputservice15protocoltest.New(mySession) // // // Create a InputService15ProtocolTest client with additional configuration // svc := inputservice15protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService15ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService15ProtocolTest { c := p.ClientConfig("inputservice15protocoltest", cfgs...) return newInputService15ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService15ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService15ProtocolTest { svc := &InputService15ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice15protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService15ProtocolTest operation and runs any // custom request initialization. func (c *InputService15ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService15TestCaseOperation1 = "OperationName" // InputService15TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService15TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService15TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService15TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService15TestCaseOperation1Request method. // req, resp := client.InputService15TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService15ProtocolTest) InputService15TestCaseOperation1Request(input *InputService15TestShapeInputShape) (req *request.Request, output *InputService15TestShapeInputService15TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService15TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService15TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService15TestShapeInputService15TestCaseOperation1Output{} req.Data = output return } // InputService15TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService15TestCaseOperation1 for usage and error information. func (c *InputService15ProtocolTest) InputService15TestCaseOperation1(input *InputService15TestShapeInputShape) (*InputService15TestShapeInputService15TestCaseOperation1Output, error) { req, out := c.InputService15TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService15TestCaseOperation2 = "OperationName" // InputService15TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService15TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService15TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService15TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService15TestCaseOperation2Request method. // req, resp := client.InputService15TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService15ProtocolTest) InputService15TestCaseOperation2Request(input *InputService15TestShapeInputShape) (req *request.Request, output *InputService15TestShapeInputService15TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService15TestCaseOperation2, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService15TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService15TestShapeInputService15TestCaseOperation2Output{} req.Data = output return } // InputService15TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService15TestCaseOperation2 for usage and error information. func (c *InputService15ProtocolTest) InputService15TestCaseOperation2(input *InputService15TestShapeInputShape) (*InputService15TestShapeInputService15TestCaseOperation2Output, error) { req, out := c.InputService15TestCaseOperation2Request(input) err := req.Send() return out, err } const opInputService15TestCaseOperation3 = "OperationName" // InputService15TestCaseOperation3Request generates a "aws/request.Request" representing the // client's request for the InputService15TestCaseOperation3 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService15TestCaseOperation3 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService15TestCaseOperation3 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService15TestCaseOperation3Request method. // req, resp := client.InputService15TestCaseOperation3Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService15ProtocolTest) InputService15TestCaseOperation3Request(input *InputService15TestShapeInputShape) (req *request.Request, output *InputService15TestShapeInputService15TestCaseOperation3Output) { op := &request.Operation{ Name: opInputService15TestCaseOperation3, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService15TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService15TestShapeInputService15TestCaseOperation3Output{} req.Data = output return } // InputService15TestCaseOperation3 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService15TestCaseOperation3 for usage and error information. func (c *InputService15ProtocolTest) InputService15TestCaseOperation3(input *InputService15TestShapeInputShape) (*InputService15TestShapeInputService15TestCaseOperation3Output, error) { req, out := c.InputService15TestCaseOperation3Request(input) err := req.Send() return out, err } const opInputService15TestCaseOperation4 = "OperationName" // InputService15TestCaseOperation4Request generates a "aws/request.Request" representing the // client's request for the InputService15TestCaseOperation4 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService15TestCaseOperation4 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService15TestCaseOperation4 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService15TestCaseOperation4Request method. // req, resp := client.InputService15TestCaseOperation4Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService15ProtocolTest) InputService15TestCaseOperation4Request(input *InputService15TestShapeInputShape) (req *request.Request, output *InputService15TestShapeInputService15TestCaseOperation4Output) { op := &request.Operation{ Name: opInputService15TestCaseOperation4, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService15TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService15TestShapeInputService15TestCaseOperation4Output{} req.Data = output return } // InputService15TestCaseOperation4 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService15TestCaseOperation4 for usage and error information. func (c *InputService15ProtocolTest) InputService15TestCaseOperation4(input *InputService15TestShapeInputShape) (*InputService15TestShapeInputService15TestCaseOperation4Output, error) { req, out := c.InputService15TestCaseOperation4Request(input) err := req.Send() return out, err } const opInputService15TestCaseOperation5 = "OperationName" // InputService15TestCaseOperation5Request generates a "aws/request.Request" representing the // client's request for the InputService15TestCaseOperation5 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService15TestCaseOperation5 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService15TestCaseOperation5 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService15TestCaseOperation5Request method. // req, resp := client.InputService15TestCaseOperation5Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService15ProtocolTest) InputService15TestCaseOperation5Request(input *InputService15TestShapeInputShape) (req *request.Request, output *InputService15TestShapeInputService15TestCaseOperation5Output) { op := &request.Operation{ Name: opInputService15TestCaseOperation5, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService15TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService15TestShapeInputService15TestCaseOperation5Output{} req.Data = output return } // InputService15TestCaseOperation5 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService15TestCaseOperation5 for usage and error information. func (c *InputService15ProtocolTest) InputService15TestCaseOperation5(input *InputService15TestShapeInputShape) (*InputService15TestShapeInputService15TestCaseOperation5Output, error) { req, out := c.InputService15TestCaseOperation5Request(input) err := req.Send() return out, err } const opInputService15TestCaseOperation6 = "OperationName" // InputService15TestCaseOperation6Request generates a "aws/request.Request" representing the // client's request for the InputService15TestCaseOperation6 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService15TestCaseOperation6 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService15TestCaseOperation6 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService15TestCaseOperation6Request method. // req, resp := client.InputService15TestCaseOperation6Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService15ProtocolTest) InputService15TestCaseOperation6Request(input *InputService15TestShapeInputShape) (req *request.Request, output *InputService15TestShapeInputService15TestCaseOperation6Output) { op := &request.Operation{ Name: opInputService15TestCaseOperation6, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService15TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService15TestShapeInputService15TestCaseOperation6Output{} req.Data = output return } // InputService15TestCaseOperation6 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService15TestCaseOperation6 for usage and error information. func (c *InputService15ProtocolTest) InputService15TestCaseOperation6(input *InputService15TestShapeInputShape) (*InputService15TestShapeInputService15TestCaseOperation6Output, error) { req, out := c.InputService15TestCaseOperation6Request(input) err := req.Send() return out, err } type InputService15TestShapeInputService15TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService15TestShapeInputService15TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService15TestShapeInputService15TestCaseOperation3Output struct { _ struct{} `type:"structure"` } type InputService15TestShapeInputService15TestCaseOperation4Output struct { _ struct{} `type:"structure"` } type InputService15TestShapeInputService15TestCaseOperation5Output struct { _ struct{} `type:"structure"` } type InputService15TestShapeInputService15TestCaseOperation6Output struct { _ struct{} `type:"structure"` } type InputService15TestShapeInputShape struct { _ struct{} `type:"structure"` RecursiveStruct *InputService15TestShapeRecursiveStructType `type:"structure"` } type InputService15TestShapeRecursiveStructType struct { _ struct{} `type:"structure"` NoRecurse *string `type:"string"` RecursiveList []*InputService15TestShapeRecursiveStructType `type:"list"` RecursiveMap map[string]*InputService15TestShapeRecursiveStructType `type:"map"` RecursiveStruct *InputService15TestShapeRecursiveStructType `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService16ProtocolTest struct { *client.Client } // New creates a new instance of the InputService16ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService16ProtocolTest client from just a session. // svc := inputservice16protocoltest.New(mySession) // // // Create a InputService16ProtocolTest client with additional configuration // svc := inputservice16protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService16ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService16ProtocolTest { c := p.ClientConfig("inputservice16protocoltest", cfgs...) return newInputService16ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService16ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService16ProtocolTest { svc := &InputService16ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice16protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService16ProtocolTest operation and runs any // custom request initialization. func (c *InputService16ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService16TestCaseOperation1 = "OperationName" // InputService16TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService16TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService16TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService16TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService16TestCaseOperation1Request method. // req, resp := client.InputService16TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService16ProtocolTest) InputService16TestCaseOperation1Request(input *InputService16TestShapeInputShape) (req *request.Request, output *InputService16TestShapeInputService16TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService16TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService16TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService16TestShapeInputService16TestCaseOperation1Output{} req.Data = output return } // InputService16TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService16TestCaseOperation1 for usage and error information. func (c *InputService16ProtocolTest) InputService16TestCaseOperation1(input *InputService16TestShapeInputShape) (*InputService16TestShapeInputService16TestCaseOperation1Output, error) { req, out := c.InputService16TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService16TestCaseOperation2 = "OperationName" // InputService16TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService16TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService16TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService16TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService16TestCaseOperation2Request method. // req, resp := client.InputService16TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService16ProtocolTest) InputService16TestCaseOperation2Request(input *InputService16TestShapeInputShape) (req *request.Request, output *InputService16TestShapeInputService16TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService16TestCaseOperation2, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService16TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService16TestShapeInputService16TestCaseOperation2Output{} req.Data = output return } // InputService16TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService16TestCaseOperation2 for usage and error information. func (c *InputService16ProtocolTest) InputService16TestCaseOperation2(input *InputService16TestShapeInputShape) (*InputService16TestShapeInputService16TestCaseOperation2Output, error) { req, out := c.InputService16TestCaseOperation2Request(input) err := req.Send() return out, err } type InputService16TestShapeInputService16TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService16TestShapeInputService16TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService16TestShapeInputShape struct { _ struct{} `type:"structure"` TimeArg *time.Time `type:"timestamp" timestampFormat:"unix"` TimeArgInHeader *time.Time `location:"header" locationName:"x-amz-timearg" type:"timestamp" timestampFormat:"rfc822"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService17ProtocolTest struct { *client.Client } // New creates a new instance of the InputService17ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService17ProtocolTest client from just a session. // svc := inputservice17protocoltest.New(mySession) // // // Create a InputService17ProtocolTest client with additional configuration // svc := inputservice17protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService17ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService17ProtocolTest { c := p.ClientConfig("inputservice17protocoltest", cfgs...) return newInputService17ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService17ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService17ProtocolTest { svc := &InputService17ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice17protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService17ProtocolTest operation and runs any // custom request initialization. func (c *InputService17ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService17TestCaseOperation1 = "OperationName" // InputService17TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService17TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService17TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService17TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService17TestCaseOperation1Request method. // req, resp := client.InputService17TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService17ProtocolTest) InputService17TestCaseOperation1Request(input *InputService17TestShapeInputService17TestCaseOperation1Input) (req *request.Request, output *InputService17TestShapeInputService17TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService17TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService17TestShapeInputService17TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService17TestShapeInputService17TestCaseOperation1Output{} req.Data = output return } // InputService17TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService17TestCaseOperation1 for usage and error information. func (c *InputService17ProtocolTest) InputService17TestCaseOperation1(input *InputService17TestShapeInputService17TestCaseOperation1Input) (*InputService17TestShapeInputService17TestCaseOperation1Output, error) { req, out := c.InputService17TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService17TestShapeInputService17TestCaseOperation1Input struct { _ struct{} `type:"structure"` TimeArg *time.Time `locationName:"timestamp_location" type:"timestamp" timestampFormat:"unix"` } type InputService17TestShapeInputService17TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService18ProtocolTest struct { *client.Client } // New creates a new instance of the InputService18ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService18ProtocolTest client from just a session. // svc := inputservice18protocoltest.New(mySession) // // // Create a InputService18ProtocolTest client with additional configuration // svc := inputservice18protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService18ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService18ProtocolTest { c := p.ClientConfig("inputservice18protocoltest", cfgs...) return newInputService18ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService18ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService18ProtocolTest { svc := &InputService18ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice18protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService18ProtocolTest operation and runs any // custom request initialization. func (c *InputService18ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService18TestCaseOperation1 = "OperationName" // InputService18TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService18TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService18TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService18TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService18TestCaseOperation1Request method. // req, resp := client.InputService18TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService18ProtocolTest) InputService18TestCaseOperation1Request(input *InputService18TestShapeInputService18TestCaseOperation1Input) (req *request.Request, output *InputService18TestShapeInputService18TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService18TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InputService18TestShapeInputService18TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService18TestShapeInputService18TestCaseOperation1Output{} req.Data = output return } // InputService18TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService18TestCaseOperation1 for usage and error information. func (c *InputService18ProtocolTest) InputService18TestCaseOperation1(input *InputService18TestShapeInputService18TestCaseOperation1Input) (*InputService18TestShapeInputService18TestCaseOperation1Output, error) { req, out := c.InputService18TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService18TestShapeInputService18TestCaseOperation1Input struct { _ struct{} `type:"structure" payload:"Foo"` Foo *string `locationName:"foo" type:"string"` } type InputService18TestShapeInputService18TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService19ProtocolTest struct { *client.Client } // New creates a new instance of the InputService19ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService19ProtocolTest client from just a session. // svc := inputservice19protocoltest.New(mySession) // // // Create a InputService19ProtocolTest client with additional configuration // svc := inputservice19protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService19ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService19ProtocolTest { c := p.ClientConfig("inputservice19protocoltest", cfgs...) return newInputService19ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService19ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService19ProtocolTest { svc := &InputService19ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice19protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService19ProtocolTest operation and runs any // custom request initialization. func (c *InputService19ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService19TestCaseOperation1 = "OperationName" // InputService19TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService19TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService19TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService19TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService19TestCaseOperation1Request method. // req, resp := client.InputService19TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService19ProtocolTest) InputService19TestCaseOperation1Request(input *InputService19TestShapeInputShape) (req *request.Request, output *InputService19TestShapeInputService19TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService19TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService19TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService19TestShapeInputService19TestCaseOperation1Output{} req.Data = output return } // InputService19TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService19TestCaseOperation1 for usage and error information. func (c *InputService19ProtocolTest) InputService19TestCaseOperation1(input *InputService19TestShapeInputShape) (*InputService19TestShapeInputService19TestCaseOperation1Output, error) { req, out := c.InputService19TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService19TestCaseOperation2 = "OperationName" // InputService19TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService19TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService19TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService19TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService19TestCaseOperation2Request method. // req, resp := client.InputService19TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService19ProtocolTest) InputService19TestCaseOperation2Request(input *InputService19TestShapeInputShape) (req *request.Request, output *InputService19TestShapeInputService19TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService19TestCaseOperation2, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService19TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService19TestShapeInputService19TestCaseOperation2Output{} req.Data = output return } // InputService19TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService19TestCaseOperation2 for usage and error information. func (c *InputService19ProtocolTest) InputService19TestCaseOperation2(input *InputService19TestShapeInputShape) (*InputService19TestShapeInputService19TestCaseOperation2Output, error) { req, out := c.InputService19TestCaseOperation2Request(input) err := req.Send() return out, err } type InputService19TestShapeInputService19TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService19TestShapeInputService19TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService19TestShapeInputShape struct { _ struct{} `type:"structure"` Token *string `type:"string" idempotencyToken:"true"` } // // Tests begin here // func TestInputService1ProtocolTestNoParametersCase1(t *testing.T) { svc := NewInputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) req, _ := svc.InputService1TestCaseOperation1Request(nil) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/jobs", r.URL.String()) // assert headers } func TestInputService2ProtocolTestURIParameterOnlyWithNoLocationNameCase1(t *testing.T) { svc := NewInputService2ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService2TestShapeInputService2TestCaseOperation1Input{ PipelineId: aws.String("foo"), } req, _ := svc.InputService2TestCaseOperation1Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/jobsByPipeline/foo", r.URL.String()) // assert headers } func TestInputService3ProtocolTestURIParameterOnlyWithLocationNameCase1(t *testing.T) { svc := NewInputService3ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService3TestShapeInputService3TestCaseOperation1Input{ Foo: aws.String("bar"), } req, _ := svc.InputService3TestCaseOperation1Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/jobsByPipeline/bar", r.URL.String()) // assert headers } func TestInputService4ProtocolTestQuerystringListOfStringsCase1(t *testing.T) { svc := NewInputService4ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService4TestShapeInputService4TestCaseOperation1Input{ Items: []*string{ aws.String("value1"), aws.String("value2"), }, } req, _ := svc.InputService4TestCaseOperation1Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/path?item=value1&item=value2", r.URL.String()) // assert headers } func TestInputService5ProtocolTestStringToStringMapsInQuerystringCase1(t *testing.T) { svc := NewInputService5ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService5TestShapeInputService5TestCaseOperation1Input{ PipelineId: aws.String("foo"), QueryDoc: map[string]*string{ "bar": aws.String("baz"), "fizz": aws.String("buzz"), }, } req, _ := svc.InputService5TestCaseOperation1Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/jobsByPipeline/foo?bar=baz&fizz=buzz", r.URL.String()) // assert headers } func TestInputService6ProtocolTestStringToStringListMapsInQuerystringCase1(t *testing.T) { svc := NewInputService6ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService6TestShapeInputService6TestCaseOperation1Input{ PipelineId: aws.String("id"), QueryDoc: map[string][]*string{ "fizz": { aws.String("buzz"), aws.String("pop"), }, "foo": { aws.String("bar"), aws.String("baz"), }, }, } req, _ := svc.InputService6TestCaseOperation1Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/jobsByPipeline/id?foo=bar&foo=baz&fizz=buzz&fizz=pop", r.URL.String()) // assert headers } func TestInputService7ProtocolTestURIParameterAndQuerystringParamsCase1(t *testing.T) { svc := NewInputService7ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService7TestShapeInputService7TestCaseOperation1Input{ Ascending: aws.String("true"), PageToken: aws.String("bar"), PipelineId: aws.String("foo"), } req, _ := svc.InputService7TestCaseOperation1Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/jobsByPipeline/foo?Ascending=true&PageToken=bar", r.URL.String()) // assert headers } func TestInputService8ProtocolTestURIParameterQuerystringParamsAndJSONBodyCase1(t *testing.T) { svc := NewInputService8ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService8TestShapeInputService8TestCaseOperation1Input{ Ascending: aws.String("true"), Config: &InputService8TestShapeStructType{ A: aws.String("one"), B: aws.String("two"), }, PageToken: aws.String("bar"), PipelineId: aws.String("foo"), } req, _ := svc.InputService8TestCaseOperation1Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"Config":{"A":"one","B":"two"}}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/jobsByPipeline/foo?Ascending=true&PageToken=bar", r.URL.String()) // assert headers } func TestInputService9ProtocolTestURIParameterQuerystringParamsHeadersAndJSONBodyCase1(t *testing.T) { svc := NewInputService9ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService9TestShapeInputService9TestCaseOperation1Input{ Ascending: aws.String("true"), Checksum: aws.String("12345"), Config: &InputService9TestShapeStructType{ A: aws.String("one"), B: aws.String("two"), }, PageToken: aws.String("bar"), PipelineId: aws.String("foo"), } req, _ := svc.InputService9TestCaseOperation1Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"Config":{"A":"one","B":"two"}}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/jobsByPipeline/foo?Ascending=true&PageToken=bar", r.URL.String()) // assert headers assert.Equal(t, "12345", r.Header.Get("x-amz-checksum")) } func TestInputService10ProtocolTestStreamingPayloadCase1(t *testing.T) { svc := NewInputService10ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService10TestShapeInputService10TestCaseOperation1Input{ Body: aws.ReadSeekCloser(bytes.NewBufferString("contents")), Checksum: aws.String("foo"), VaultName: aws.String("name"), } req, _ := svc.InputService10TestCaseOperation1Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) assert.Equal(t, `contents`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/vaults/name/archives", r.URL.String()) // assert headers assert.Equal(t, "foo", r.Header.Get("x-amz-sha256-tree-hash")) } func TestInputService11ProtocolTestSerializeBlobsInBodyCase1(t *testing.T) { svc := NewInputService11ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService11TestShapeInputService11TestCaseOperation1Input{ Bar: []byte("Blob param"), Foo: aws.String("foo_name"), } req, _ := svc.InputService11TestCaseOperation1Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"Bar":"QmxvYiBwYXJhbQ=="}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/foo_name", r.URL.String()) // assert headers } func TestInputService12ProtocolTestBlobPayloadCase1(t *testing.T) { svc := NewInputService12ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService12TestShapeInputShape{ Foo: []byte("bar"), } req, _ := svc.InputService12TestCaseOperation1Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) assert.Equal(t, `bar`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService12ProtocolTestBlobPayloadCase2(t *testing.T) { svc := NewInputService12ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService12TestShapeInputShape{} req, _ := svc.InputService12TestCaseOperation2Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService13ProtocolTestStructurePayloadCase1(t *testing.T) { svc := NewInputService13ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService13TestShapeInputShape{ Foo: &InputService13TestShapeFooShape{ Baz: aws.String("bar"), }, } req, _ := svc.InputService13TestCaseOperation1Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"baz":"bar"}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService13ProtocolTestStructurePayloadCase2(t *testing.T) { svc := NewInputService13ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService13TestShapeInputShape{} req, _ := svc.InputService13TestCaseOperation2Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService14ProtocolTestOmitsNullQueryParamsButSerializesEmptyStringsCase1(t *testing.T) { svc := NewInputService14ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService14TestShapeInputShape{} req, _ := svc.InputService14TestCaseOperation1Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService14ProtocolTestOmitsNullQueryParamsButSerializesEmptyStringsCase2(t *testing.T) { svc := NewInputService14ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService14TestShapeInputShape{ Foo: aws.String(""), } req, _ := svc.InputService14TestCaseOperation2Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/path?abc=mno¶m-name=", r.URL.String()) // assert headers } func TestInputService15ProtocolTestRecursiveShapesCase1(t *testing.T) { svc := NewInputService15ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService15TestShapeInputShape{ RecursiveStruct: &InputService15TestShapeRecursiveStructType{ NoRecurse: aws.String("foo"), }, } req, _ := svc.InputService15TestCaseOperation1Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"RecursiveStruct":{"NoRecurse":"foo"}}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService15ProtocolTestRecursiveShapesCase2(t *testing.T) { svc := NewInputService15ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService15TestShapeInputShape{ RecursiveStruct: &InputService15TestShapeRecursiveStructType{ RecursiveStruct: &InputService15TestShapeRecursiveStructType{ NoRecurse: aws.String("foo"), }, }, } req, _ := svc.InputService15TestCaseOperation2Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"RecursiveStruct":{"RecursiveStruct":{"NoRecurse":"foo"}}}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService15ProtocolTestRecursiveShapesCase3(t *testing.T) { svc := NewInputService15ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService15TestShapeInputShape{ RecursiveStruct: &InputService15TestShapeRecursiveStructType{ RecursiveStruct: &InputService15TestShapeRecursiveStructType{ RecursiveStruct: &InputService15TestShapeRecursiveStructType{ RecursiveStruct: &InputService15TestShapeRecursiveStructType{ NoRecurse: aws.String("foo"), }, }, }, }, } req, _ := svc.InputService15TestCaseOperation3Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"RecursiveStruct":{"RecursiveStruct":{"RecursiveStruct":{"RecursiveStruct":{"NoRecurse":"foo"}}}}}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService15ProtocolTestRecursiveShapesCase4(t *testing.T) { svc := NewInputService15ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService15TestShapeInputShape{ RecursiveStruct: &InputService15TestShapeRecursiveStructType{ RecursiveList: []*InputService15TestShapeRecursiveStructType{ { NoRecurse: aws.String("foo"), }, { NoRecurse: aws.String("bar"), }, }, }, } req, _ := svc.InputService15TestCaseOperation4Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"RecursiveStruct":{"RecursiveList":[{"NoRecurse":"foo"},{"NoRecurse":"bar"}]}}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService15ProtocolTestRecursiveShapesCase5(t *testing.T) { svc := NewInputService15ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService15TestShapeInputShape{ RecursiveStruct: &InputService15TestShapeRecursiveStructType{ RecursiveList: []*InputService15TestShapeRecursiveStructType{ { NoRecurse: aws.String("foo"), }, { RecursiveStruct: &InputService15TestShapeRecursiveStructType{ NoRecurse: aws.String("bar"), }, }, }, }, } req, _ := svc.InputService15TestCaseOperation5Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"RecursiveStruct":{"RecursiveList":[{"NoRecurse":"foo"},{"RecursiveStruct":{"NoRecurse":"bar"}}]}}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService15ProtocolTestRecursiveShapesCase6(t *testing.T) { svc := NewInputService15ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService15TestShapeInputShape{ RecursiveStruct: &InputService15TestShapeRecursiveStructType{ RecursiveMap: map[string]*InputService15TestShapeRecursiveStructType{ "bar": { NoRecurse: aws.String("bar"), }, "foo": { NoRecurse: aws.String("foo"), }, }, }, } req, _ := svc.InputService15TestCaseOperation6Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"RecursiveStruct":{"RecursiveMap":{"foo":{"NoRecurse":"foo"},"bar":{"NoRecurse":"bar"}}}}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService16ProtocolTestTimestampValuesCase1(t *testing.T) { svc := NewInputService16ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService16TestShapeInputShape{ TimeArg: aws.Time(time.Unix(1422172800, 0)), } req, _ := svc.InputService16TestCaseOperation1Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"TimeArg":1422172800}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService16ProtocolTestTimestampValuesCase2(t *testing.T) { svc := NewInputService16ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService16TestShapeInputShape{ TimeArgInHeader: aws.Time(time.Unix(1422172800, 0)), } req, _ := svc.InputService16TestCaseOperation2Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers assert.Equal(t, "Sun, 25 Jan 2015 08:00:00 GMT", r.Header.Get("x-amz-timearg")) } func TestInputService17ProtocolTestNamedLocationsInJSONBodyCase1(t *testing.T) { svc := NewInputService17ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService17TestShapeInputService17TestCaseOperation1Input{ TimeArg: aws.Time(time.Unix(1422172800, 0)), } req, _ := svc.InputService17TestCaseOperation1Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"timestamp_location":1422172800}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService18ProtocolTestStringPayloadCase1(t *testing.T) { svc := NewInputService18ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService18TestShapeInputService18TestCaseOperation1Input{ Foo: aws.String("bar"), } req, _ := svc.InputService18TestCaseOperation1Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) assert.Equal(t, `bar`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService19ProtocolTestIdempotencyTokenAutoFillCase1(t *testing.T) { svc := NewInputService19ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService19TestShapeInputShape{ Token: aws.String("abc123"), } req, _ := svc.InputService19TestCaseOperation1Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"Token":"abc123"}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService19ProtocolTestIdempotencyTokenAutoFillCase2(t *testing.T) { svc := NewInputService19ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService19TestShapeInputShape{} req, _ := svc.InputService19TestCaseOperation2Request(input) r := req.HTTPRequest // build request restjson.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body, _ := ioutil.ReadAll(r.Body) awstesting.AssertJSON(t, `{"Token":"00000000-0000-4000-8000-000000000000"}`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } aws-sdk-go-1.4.22/private/protocol/restjson/restjson.go000066400000000000000000000057551300374646400231570ustar00rootroot00000000000000// Package restjson provides RESTful JSON serialization of AWS // requests and responses. package restjson //go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/input/rest-json.json build_test.go //go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/output/rest-json.json unmarshal_test.go import ( "encoding/json" "io/ioutil" "strings" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" "github.com/aws/aws-sdk-go/private/protocol/rest" ) // BuildHandler is a named request handler for building restjson protocol requests var BuildHandler = request.NamedHandler{Name: "awssdk.restjson.Build", Fn: Build} // UnmarshalHandler is a named request handler for unmarshaling restjson protocol requests var UnmarshalHandler = request.NamedHandler{Name: "awssdk.restjson.Unmarshal", Fn: Unmarshal} // UnmarshalMetaHandler is a named request handler for unmarshaling restjson protocol request metadata var UnmarshalMetaHandler = request.NamedHandler{Name: "awssdk.restjson.UnmarshalMeta", Fn: UnmarshalMeta} // UnmarshalErrorHandler is a named request handler for unmarshaling restjson protocol request errors var UnmarshalErrorHandler = request.NamedHandler{Name: "awssdk.restjson.UnmarshalError", Fn: UnmarshalError} // Build builds a request for the REST JSON protocol. func Build(r *request.Request) { rest.Build(r) if t := rest.PayloadType(r.Params); t == "structure" || t == "" { jsonrpc.Build(r) } } // Unmarshal unmarshals a response body for the REST JSON protocol. func Unmarshal(r *request.Request) { if t := rest.PayloadType(r.Data); t == "structure" || t == "" { jsonrpc.Unmarshal(r) } else { rest.Unmarshal(r) } } // UnmarshalMeta unmarshals response headers for the REST JSON protocol. func UnmarshalMeta(r *request.Request) { rest.UnmarshalMeta(r) } // UnmarshalError unmarshals a response error for the REST JSON protocol. func UnmarshalError(r *request.Request) { defer r.HTTPResponse.Body.Close() code := r.HTTPResponse.Header.Get("X-Amzn-Errortype") bodyBytes, err := ioutil.ReadAll(r.HTTPResponse.Body) if err != nil { r.Error = awserr.New("SerializationError", "failed reading REST JSON error response", err) return } if len(bodyBytes) == 0 { r.Error = awserr.NewRequestFailure( awserr.New("SerializationError", r.HTTPResponse.Status, nil), r.HTTPResponse.StatusCode, "", ) return } var jsonErr jsonErrorResponse if err := json.Unmarshal(bodyBytes, &jsonErr); err != nil { r.Error = awserr.New("SerializationError", "failed decoding REST JSON error response", err) return } if code == "" { code = jsonErr.Code } code = strings.SplitN(code, ":", 2)[0] r.Error = awserr.NewRequestFailure( awserr.New(code, jsonErr.Message, nil), r.HTTPResponse.StatusCode, r.RequestID, ) } type jsonErrorResponse struct { Code string `json:"code"` Message string `json:"message"` } aws-sdk-go-1.4.22/private/protocol/restjson/unmarshal_test.go000066400000000000000000001761701300374646400243410ustar00rootroot00000000000000package restjson_test import ( "bytes" "encoding/json" "encoding/xml" "fmt" "io" "io/ioutil" "net/http" "net/url" "testing" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/restjson" "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil" "github.com/aws/aws-sdk-go/private/util" "github.com/stretchr/testify/assert" ) var _ bytes.Buffer // always import bytes var _ http.Request var _ json.Marshaler var _ time.Time var _ xmlutil.XMLNode var _ xml.Attr var _ = ioutil.Discard var _ = util.Trim("") var _ = url.Values{} var _ = io.EOF var _ = aws.String var _ = fmt.Println func init() { protocol.RandReader = &awstesting.ZeroReader{} } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService1ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService1ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService1ProtocolTest client from just a session. // svc := outputservice1protocoltest.New(mySession) // // // Create a OutputService1ProtocolTest client with additional configuration // svc := outputservice1protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService1ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService1ProtocolTest { c := p.ClientConfig("outputservice1protocoltest", cfgs...) return newOutputService1ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService1ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService1ProtocolTest { svc := &OutputService1ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice1protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService1ProtocolTest operation and runs any // custom request initialization. func (c *OutputService1ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService1TestCaseOperation1 = "OperationName" // OutputService1TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService1TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService1TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService1TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService1TestCaseOperation1Request method. // req, resp := client.OutputService1TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService1ProtocolTest) OutputService1TestCaseOperation1Request(input *OutputService1TestShapeOutputService1TestCaseOperation1Input) (req *request.Request, output *OutputService1TestShapeOutputService1TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService1TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService1TestShapeOutputService1TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService1TestShapeOutputService1TestCaseOperation1Output{} req.Data = output return } // OutputService1TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService1TestCaseOperation1 for usage and error information. func (c *OutputService1ProtocolTest) OutputService1TestCaseOperation1(input *OutputService1TestShapeOutputService1TestCaseOperation1Input) (*OutputService1TestShapeOutputService1TestCaseOperation1Output, error) { req, out := c.OutputService1TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService1TestShapeOutputService1TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService1TestShapeOutputService1TestCaseOperation1Output struct { _ struct{} `type:"structure"` Char *string `type:"character"` Double *float64 `type:"double"` FalseBool *bool `type:"boolean"` Float *float64 `type:"float"` ImaHeader *string `location:"header" type:"string"` ImaHeaderLocation *string `location:"header" locationName:"X-Foo" type:"string"` Long *int64 `type:"long"` Num *int64 `type:"integer"` Status *int64 `location:"statusCode" type:"integer"` Str *string `type:"string"` TrueBool *bool `type:"boolean"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService2ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService2ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService2ProtocolTest client from just a session. // svc := outputservice2protocoltest.New(mySession) // // // Create a OutputService2ProtocolTest client with additional configuration // svc := outputservice2protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService2ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService2ProtocolTest { c := p.ClientConfig("outputservice2protocoltest", cfgs...) return newOutputService2ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService2ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService2ProtocolTest { svc := &OutputService2ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice2protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService2ProtocolTest operation and runs any // custom request initialization. func (c *OutputService2ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService2TestCaseOperation1 = "OperationName" // OutputService2TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService2TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService2TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService2TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService2TestCaseOperation1Request method. // req, resp := client.OutputService2TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService2ProtocolTest) OutputService2TestCaseOperation1Request(input *OutputService2TestShapeOutputService2TestCaseOperation1Input) (req *request.Request, output *OutputService2TestShapeOutputService2TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService2TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService2TestShapeOutputService2TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService2TestShapeOutputService2TestCaseOperation1Output{} req.Data = output return } // OutputService2TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService2TestCaseOperation1 for usage and error information. func (c *OutputService2ProtocolTest) OutputService2TestCaseOperation1(input *OutputService2TestShapeOutputService2TestCaseOperation1Input) (*OutputService2TestShapeOutputService2TestCaseOperation1Output, error) { req, out := c.OutputService2TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService2TestShapeBlobContainer struct { _ struct{} `type:"structure"` // Foo is automatically base64 encoded/decoded by the SDK. Foo []byte `locationName:"foo" type:"blob"` } type OutputService2TestShapeOutputService2TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService2TestShapeOutputService2TestCaseOperation1Output struct { _ struct{} `type:"structure"` // BlobMember is automatically base64 encoded/decoded by the SDK. BlobMember []byte `type:"blob"` StructMember *OutputService2TestShapeBlobContainer `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService3ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService3ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService3ProtocolTest client from just a session. // svc := outputservice3protocoltest.New(mySession) // // // Create a OutputService3ProtocolTest client with additional configuration // svc := outputservice3protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService3ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService3ProtocolTest { c := p.ClientConfig("outputservice3protocoltest", cfgs...) return newOutputService3ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService3ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService3ProtocolTest { svc := &OutputService3ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice3protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService3ProtocolTest operation and runs any // custom request initialization. func (c *OutputService3ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService3TestCaseOperation1 = "OperationName" // OutputService3TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService3TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService3TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService3TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService3TestCaseOperation1Request method. // req, resp := client.OutputService3TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService3ProtocolTest) OutputService3TestCaseOperation1Request(input *OutputService3TestShapeOutputService3TestCaseOperation1Input) (req *request.Request, output *OutputService3TestShapeOutputService3TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService3TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService3TestShapeOutputService3TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService3TestShapeOutputService3TestCaseOperation1Output{} req.Data = output return } // OutputService3TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService3TestCaseOperation1 for usage and error information. func (c *OutputService3ProtocolTest) OutputService3TestCaseOperation1(input *OutputService3TestShapeOutputService3TestCaseOperation1Input) (*OutputService3TestShapeOutputService3TestCaseOperation1Output, error) { req, out := c.OutputService3TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService3TestShapeOutputService3TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService3TestShapeOutputService3TestCaseOperation1Output struct { _ struct{} `type:"structure"` StructMember *OutputService3TestShapeTimeContainer `type:"structure"` TimeMember *time.Time `type:"timestamp" timestampFormat:"unix"` } type OutputService3TestShapeTimeContainer struct { _ struct{} `type:"structure"` Foo *time.Time `locationName:"foo" type:"timestamp" timestampFormat:"unix"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService4ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService4ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService4ProtocolTest client from just a session. // svc := outputservice4protocoltest.New(mySession) // // // Create a OutputService4ProtocolTest client with additional configuration // svc := outputservice4protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService4ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService4ProtocolTest { c := p.ClientConfig("outputservice4protocoltest", cfgs...) return newOutputService4ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService4ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService4ProtocolTest { svc := &OutputService4ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice4protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService4ProtocolTest operation and runs any // custom request initialization. func (c *OutputService4ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService4TestCaseOperation1 = "OperationName" // OutputService4TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService4TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService4TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService4TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService4TestCaseOperation1Request method. // req, resp := client.OutputService4TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService4ProtocolTest) OutputService4TestCaseOperation1Request(input *OutputService4TestShapeOutputService4TestCaseOperation1Input) (req *request.Request, output *OutputService4TestShapeOutputService4TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService4TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService4TestShapeOutputService4TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService4TestShapeOutputService4TestCaseOperation1Output{} req.Data = output return } // OutputService4TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService4TestCaseOperation1 for usage and error information. func (c *OutputService4ProtocolTest) OutputService4TestCaseOperation1(input *OutputService4TestShapeOutputService4TestCaseOperation1Input) (*OutputService4TestShapeOutputService4TestCaseOperation1Output, error) { req, out := c.OutputService4TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService4TestShapeOutputService4TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService4TestShapeOutputService4TestCaseOperation1Output struct { _ struct{} `type:"structure"` ListMember []*string `type:"list"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService5ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService5ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService5ProtocolTest client from just a session. // svc := outputservice5protocoltest.New(mySession) // // // Create a OutputService5ProtocolTest client with additional configuration // svc := outputservice5protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService5ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService5ProtocolTest { c := p.ClientConfig("outputservice5protocoltest", cfgs...) return newOutputService5ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService5ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService5ProtocolTest { svc := &OutputService5ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice5protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService5ProtocolTest operation and runs any // custom request initialization. func (c *OutputService5ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService5TestCaseOperation1 = "OperationName" // OutputService5TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService5TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService5TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService5TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService5TestCaseOperation1Request method. // req, resp := client.OutputService5TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService5ProtocolTest) OutputService5TestCaseOperation1Request(input *OutputService5TestShapeOutputService5TestCaseOperation1Input) (req *request.Request, output *OutputService5TestShapeOutputService5TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService5TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService5TestShapeOutputService5TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService5TestShapeOutputService5TestCaseOperation1Output{} req.Data = output return } // OutputService5TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService5TestCaseOperation1 for usage and error information. func (c *OutputService5ProtocolTest) OutputService5TestCaseOperation1(input *OutputService5TestShapeOutputService5TestCaseOperation1Input) (*OutputService5TestShapeOutputService5TestCaseOperation1Output, error) { req, out := c.OutputService5TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService5TestShapeOutputService5TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService5TestShapeOutputService5TestCaseOperation1Output struct { _ struct{} `type:"structure"` ListMember []*OutputService5TestShapeSingleStruct `type:"list"` } type OutputService5TestShapeSingleStruct struct { _ struct{} `type:"structure"` Foo *string `type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService6ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService6ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService6ProtocolTest client from just a session. // svc := outputservice6protocoltest.New(mySession) // // // Create a OutputService6ProtocolTest client with additional configuration // svc := outputservice6protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService6ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService6ProtocolTest { c := p.ClientConfig("outputservice6protocoltest", cfgs...) return newOutputService6ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService6ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService6ProtocolTest { svc := &OutputService6ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice6protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService6ProtocolTest operation and runs any // custom request initialization. func (c *OutputService6ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService6TestCaseOperation1 = "OperationName" // OutputService6TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService6TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService6TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService6TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService6TestCaseOperation1Request method. // req, resp := client.OutputService6TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService6ProtocolTest) OutputService6TestCaseOperation1Request(input *OutputService6TestShapeOutputService6TestCaseOperation1Input) (req *request.Request, output *OutputService6TestShapeOutputService6TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService6TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService6TestShapeOutputService6TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService6TestShapeOutputService6TestCaseOperation1Output{} req.Data = output return } // OutputService6TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService6TestCaseOperation1 for usage and error information. func (c *OutputService6ProtocolTest) OutputService6TestCaseOperation1(input *OutputService6TestShapeOutputService6TestCaseOperation1Input) (*OutputService6TestShapeOutputService6TestCaseOperation1Output, error) { req, out := c.OutputService6TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService6TestShapeOutputService6TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService6TestShapeOutputService6TestCaseOperation1Output struct { _ struct{} `type:"structure"` MapMember map[string][]*int64 `type:"map"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService7ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService7ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService7ProtocolTest client from just a session. // svc := outputservice7protocoltest.New(mySession) // // // Create a OutputService7ProtocolTest client with additional configuration // svc := outputservice7protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService7ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService7ProtocolTest { c := p.ClientConfig("outputservice7protocoltest", cfgs...) return newOutputService7ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService7ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService7ProtocolTest { svc := &OutputService7ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice7protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService7ProtocolTest operation and runs any // custom request initialization. func (c *OutputService7ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService7TestCaseOperation1 = "OperationName" // OutputService7TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService7TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService7TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService7TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService7TestCaseOperation1Request method. // req, resp := client.OutputService7TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService7ProtocolTest) OutputService7TestCaseOperation1Request(input *OutputService7TestShapeOutputService7TestCaseOperation1Input) (req *request.Request, output *OutputService7TestShapeOutputService7TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService7TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService7TestShapeOutputService7TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService7TestShapeOutputService7TestCaseOperation1Output{} req.Data = output return } // OutputService7TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService7TestCaseOperation1 for usage and error information. func (c *OutputService7ProtocolTest) OutputService7TestCaseOperation1(input *OutputService7TestShapeOutputService7TestCaseOperation1Input) (*OutputService7TestShapeOutputService7TestCaseOperation1Output, error) { req, out := c.OutputService7TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService7TestShapeOutputService7TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService7TestShapeOutputService7TestCaseOperation1Output struct { _ struct{} `type:"structure"` MapMember map[string]*time.Time `type:"map"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService8ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService8ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService8ProtocolTest client from just a session. // svc := outputservice8protocoltest.New(mySession) // // // Create a OutputService8ProtocolTest client with additional configuration // svc := outputservice8protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService8ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService8ProtocolTest { c := p.ClientConfig("outputservice8protocoltest", cfgs...) return newOutputService8ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService8ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService8ProtocolTest { svc := &OutputService8ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice8protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService8ProtocolTest operation and runs any // custom request initialization. func (c *OutputService8ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService8TestCaseOperation1 = "OperationName" // OutputService8TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService8TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService8TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService8TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService8TestCaseOperation1Request method. // req, resp := client.OutputService8TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService8ProtocolTest) OutputService8TestCaseOperation1Request(input *OutputService8TestShapeOutputService8TestCaseOperation1Input) (req *request.Request, output *OutputService8TestShapeOutputService8TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService8TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService8TestShapeOutputService8TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService8TestShapeOutputService8TestCaseOperation1Output{} req.Data = output return } // OutputService8TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService8TestCaseOperation1 for usage and error information. func (c *OutputService8ProtocolTest) OutputService8TestCaseOperation1(input *OutputService8TestShapeOutputService8TestCaseOperation1Input) (*OutputService8TestShapeOutputService8TestCaseOperation1Output, error) { req, out := c.OutputService8TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService8TestShapeOutputService8TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService8TestShapeOutputService8TestCaseOperation1Output struct { _ struct{} `type:"structure"` StrType *string `type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService9ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService9ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService9ProtocolTest client from just a session. // svc := outputservice9protocoltest.New(mySession) // // // Create a OutputService9ProtocolTest client with additional configuration // svc := outputservice9protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService9ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService9ProtocolTest { c := p.ClientConfig("outputservice9protocoltest", cfgs...) return newOutputService9ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService9ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService9ProtocolTest { svc := &OutputService9ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice9protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService9ProtocolTest operation and runs any // custom request initialization. func (c *OutputService9ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService9TestCaseOperation1 = "OperationName" // OutputService9TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService9TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService9TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService9TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService9TestCaseOperation1Request method. // req, resp := client.OutputService9TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService9ProtocolTest) OutputService9TestCaseOperation1Request(input *OutputService9TestShapeOutputService9TestCaseOperation1Input) (req *request.Request, output *OutputService9TestShapeOutputService9TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService9TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService9TestShapeOutputService9TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService9TestShapeOutputService9TestCaseOperation1Output{} req.Data = output return } // OutputService9TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService9TestCaseOperation1 for usage and error information. func (c *OutputService9ProtocolTest) OutputService9TestCaseOperation1(input *OutputService9TestShapeOutputService9TestCaseOperation1Input) (*OutputService9TestShapeOutputService9TestCaseOperation1Output, error) { req, out := c.OutputService9TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService9TestShapeOutputService9TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService9TestShapeOutputService9TestCaseOperation1Output struct { _ struct{} `type:"structure"` AllHeaders map[string]*string `location:"headers" type:"map"` PrefixedHeaders map[string]*string `location:"headers" locationName:"X-" type:"map"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService10ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService10ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService10ProtocolTest client from just a session. // svc := outputservice10protocoltest.New(mySession) // // // Create a OutputService10ProtocolTest client with additional configuration // svc := outputservice10protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService10ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService10ProtocolTest { c := p.ClientConfig("outputservice10protocoltest", cfgs...) return newOutputService10ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService10ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService10ProtocolTest { svc := &OutputService10ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice10protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService10ProtocolTest operation and runs any // custom request initialization. func (c *OutputService10ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService10TestCaseOperation1 = "OperationName" // OutputService10TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService10TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService10TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService10TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService10TestCaseOperation1Request method. // req, resp := client.OutputService10TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService10ProtocolTest) OutputService10TestCaseOperation1Request(input *OutputService10TestShapeOutputService10TestCaseOperation1Input) (req *request.Request, output *OutputService10TestShapeOutputService10TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService10TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService10TestShapeOutputService10TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService10TestShapeOutputService10TestCaseOperation1Output{} req.Data = output return } // OutputService10TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService10TestCaseOperation1 for usage and error information. func (c *OutputService10ProtocolTest) OutputService10TestCaseOperation1(input *OutputService10TestShapeOutputService10TestCaseOperation1Input) (*OutputService10TestShapeOutputService10TestCaseOperation1Output, error) { req, out := c.OutputService10TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService10TestShapeBodyStructure struct { _ struct{} `type:"structure"` Foo *string `type:"string"` } type OutputService10TestShapeOutputService10TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService10TestShapeOutputService10TestCaseOperation1Output struct { _ struct{} `type:"structure" payload:"Data"` Data *OutputService10TestShapeBodyStructure `type:"structure"` Header *string `location:"header" locationName:"X-Foo" type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService11ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService11ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService11ProtocolTest client from just a session. // svc := outputservice11protocoltest.New(mySession) // // // Create a OutputService11ProtocolTest client with additional configuration // svc := outputservice11protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService11ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService11ProtocolTest { c := p.ClientConfig("outputservice11protocoltest", cfgs...) return newOutputService11ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService11ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService11ProtocolTest { svc := &OutputService11ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice11protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService11ProtocolTest operation and runs any // custom request initialization. func (c *OutputService11ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService11TestCaseOperation1 = "OperationName" // OutputService11TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService11TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService11TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService11TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService11TestCaseOperation1Request method. // req, resp := client.OutputService11TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService11ProtocolTest) OutputService11TestCaseOperation1Request(input *OutputService11TestShapeOutputService11TestCaseOperation1Input) (req *request.Request, output *OutputService11TestShapeOutputService11TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService11TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService11TestShapeOutputService11TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService11TestShapeOutputService11TestCaseOperation1Output{} req.Data = output return } // OutputService11TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService11TestCaseOperation1 for usage and error information. func (c *OutputService11ProtocolTest) OutputService11TestCaseOperation1(input *OutputService11TestShapeOutputService11TestCaseOperation1Input) (*OutputService11TestShapeOutputService11TestCaseOperation1Output, error) { req, out := c.OutputService11TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService11TestShapeOutputService11TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService11TestShapeOutputService11TestCaseOperation1Output struct { _ struct{} `type:"structure" payload:"Stream"` Stream []byte `type:"blob"` } // // Tests begin here // func TestOutputService1ProtocolTestScalarMembersCase1(t *testing.T) { svc := NewOutputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("{\"Str\": \"myname\", \"Num\": 123, \"FalseBool\": false, \"TrueBool\": true, \"Float\": 1.2, \"Double\": 1.3, \"Long\": 200, \"Char\": \"a\"}")) req, out := svc.OutputService1TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers req.HTTPResponse.Header.Set("ImaHeader", "test") req.HTTPResponse.Header.Set("X-Foo", "abc") // unmarshal response restjson.UnmarshalMeta(req) restjson.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "a", *out.Char) assert.Equal(t, 1.3, *out.Double) assert.Equal(t, false, *out.FalseBool) assert.Equal(t, 1.2, *out.Float) assert.Equal(t, "test", *out.ImaHeader) assert.Equal(t, "abc", *out.ImaHeaderLocation) assert.Equal(t, int64(200), *out.Long) assert.Equal(t, int64(123), *out.Num) assert.Equal(t, int64(200), *out.Status) assert.Equal(t, "myname", *out.Str) assert.Equal(t, true, *out.TrueBool) } func TestOutputService2ProtocolTestBlobMembersCase1(t *testing.T) { svc := NewOutputService2ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("{\"BlobMember\": \"aGkh\", \"StructMember\": {\"foo\": \"dGhlcmUh\"}}")) req, out := svc.OutputService2TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response restjson.UnmarshalMeta(req) restjson.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "hi!", string(out.BlobMember)) assert.Equal(t, "there!", string(out.StructMember.Foo)) } func TestOutputService3ProtocolTestTimestampMembersCase1(t *testing.T) { svc := NewOutputService3ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("{\"TimeMember\": 1398796238, \"StructMember\": {\"foo\": 1398796238}}")) req, out := svc.OutputService3TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response restjson.UnmarshalMeta(req) restjson.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, time.Unix(1.398796238e+09, 0).UTC().String(), out.StructMember.Foo.String()) assert.Equal(t, time.Unix(1.398796238e+09, 0).UTC().String(), out.TimeMember.String()) } func TestOutputService4ProtocolTestListsCase1(t *testing.T) { svc := NewOutputService4ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("{\"ListMember\": [\"a\", \"b\"]}")) req, out := svc.OutputService4TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response restjson.UnmarshalMeta(req) restjson.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "a", *out.ListMember[0]) assert.Equal(t, "b", *out.ListMember[1]) } func TestOutputService5ProtocolTestListsWithStructureMemberCase1(t *testing.T) { svc := NewOutputService5ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("{\"ListMember\": [{\"Foo\": \"a\"}, {\"Foo\": \"b\"}]}")) req, out := svc.OutputService5TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response restjson.UnmarshalMeta(req) restjson.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "a", *out.ListMember[0].Foo) assert.Equal(t, "b", *out.ListMember[1].Foo) } func TestOutputService6ProtocolTestMapsCase1(t *testing.T) { svc := NewOutputService6ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("{\"MapMember\": {\"a\": [1, 2], \"b\": [3, 4]}}")) req, out := svc.OutputService6TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response restjson.UnmarshalMeta(req) restjson.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, int64(1), *out.MapMember["a"][0]) assert.Equal(t, int64(2), *out.MapMember["a"][1]) assert.Equal(t, int64(3), *out.MapMember["b"][0]) assert.Equal(t, int64(4), *out.MapMember["b"][1]) } func TestOutputService7ProtocolTestComplexMapValuesCase1(t *testing.T) { svc := NewOutputService7ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("{\"MapMember\": {\"a\": 1398796238, \"b\": 1398796238}}")) req, out := svc.OutputService7TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response restjson.UnmarshalMeta(req) restjson.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, time.Unix(1.398796238e+09, 0).UTC().String(), out.MapMember["a"].String()) assert.Equal(t, time.Unix(1.398796238e+09, 0).UTC().String(), out.MapMember["b"].String()) } func TestOutputService8ProtocolTestIgnoresExtraDataCase1(t *testing.T) { svc := NewOutputService8ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("{\"foo\": \"bar\"}")) req, out := svc.OutputService8TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response restjson.UnmarshalMeta(req) restjson.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used } func TestOutputService9ProtocolTestSupportsHeaderMapsCase1(t *testing.T) { svc := NewOutputService9ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("{}")) req, out := svc.OutputService9TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers req.HTTPResponse.Header.Set("Content-Length", "10") req.HTTPResponse.Header.Set("X-Bam", "boo") req.HTTPResponse.Header.Set("X-Foo", "bar") // unmarshal response restjson.UnmarshalMeta(req) restjson.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "10", *out.AllHeaders["Content-Length"]) assert.Equal(t, "boo", *out.AllHeaders["X-Bam"]) assert.Equal(t, "bar", *out.AllHeaders["X-Foo"]) assert.Equal(t, "boo", *out.PrefixedHeaders["Bam"]) assert.Equal(t, "bar", *out.PrefixedHeaders["Foo"]) } func TestOutputService10ProtocolTestJSONPayloadCase1(t *testing.T) { svc := NewOutputService10ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("{\"Foo\": \"abc\"}")) req, out := svc.OutputService10TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers req.HTTPResponse.Header.Set("X-Foo", "baz") // unmarshal response restjson.UnmarshalMeta(req) restjson.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "abc", *out.Data.Foo) assert.Equal(t, "baz", *out.Header) } func TestOutputService11ProtocolTestStreamingPayloadCase1(t *testing.T) { svc := NewOutputService11ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("abc")) req, out := svc.OutputService11TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response restjson.UnmarshalMeta(req) restjson.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "abc", string(out.Stream)) } aws-sdk-go-1.4.22/private/protocol/restxml/000077500000000000000000000000001300374646400205745ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/protocol/restxml/build_bench_test.go000066400000000000000000000171221300374646400244230ustar00rootroot00000000000000// +build bench package restxml_test import ( "testing" "bytes" "encoding/xml" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/private/protocol/restxml" "github.com/aws/aws-sdk-go/service/cloudfront" ) func BenchmarkRESTXMLBuild_Complex_cloudfrontCreateDistribution(b *testing.B) { params := restxmlBuildCreateDistroParms op := &request.Operation{ Name: "CreateDistribution", HTTPMethod: "POST", HTTPPath: "/2015-04-17/distribution/{DistributionId}/invalidation", } benchRESTXMLBuild(b, op, params) } func BenchmarkRESTXMLBuild_Simple_cloudfrontDeleteStreamingDistribution(b *testing.B) { params := &cloudfront.DeleteDistributionInput{ Id: aws.String("string"), // Required IfMatch: aws.String("string"), } op := &request.Operation{ Name: "DeleteStreamingDistribution", HTTPMethod: "DELETE", HTTPPath: "/2015-04-17/streaming-distribution/{Id}", } benchRESTXMLBuild(b, op, params) } func BenchmarkEncodingXMLMarshal_Simple_cloudfrontDeleteStreamingDistribution(b *testing.B) { params := &cloudfront.DeleteDistributionInput{ Id: aws.String("string"), // Required IfMatch: aws.String("string"), } for i := 0; i < b.N; i++ { buf := &bytes.Buffer{} encoder := xml.NewEncoder(buf) if err := encoder.Encode(params); err != nil { b.Fatal("Unexpected error", err) } } } func benchRESTXMLBuild(b *testing.B, op *request.Operation, params interface{}) { svc := awstesting.NewClient() svc.ServiceName = "cloudfront" svc.APIVersion = "2015-04-17" for i := 0; i < b.N; i++ { r := svc.NewRequest(op, params, nil) restxml.Build(r) if r.Error != nil { b.Fatal("Unexpected error", r.Error) } } } var restxmlBuildCreateDistroParms = &cloudfront.CreateDistributionInput{ DistributionConfig: &cloudfront.DistributionConfig{ // Required CallerReference: aws.String("string"), // Required Comment: aws.String("string"), // Required DefaultCacheBehavior: &cloudfront.DefaultCacheBehavior{ // Required ForwardedValues: &cloudfront.ForwardedValues{ // Required Cookies: &cloudfront.CookiePreference{ // Required Forward: aws.String("ItemSelection"), // Required WhitelistedNames: &cloudfront.CookieNames{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, QueryString: aws.Bool(true), // Required Headers: &cloudfront.Headers{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, MinTTL: aws.Int64(1), // Required TargetOriginId: aws.String("string"), // Required TrustedSigners: &cloudfront.TrustedSigners{ // Required Enabled: aws.Bool(true), // Required Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, ViewerProtocolPolicy: aws.String("ViewerProtocolPolicy"), // Required AllowedMethods: &cloudfront.AllowedMethods{ Items: []*string{ // Required aws.String("Method"), // Required // More values... }, Quantity: aws.Int64(1), // Required CachedMethods: &cloudfront.CachedMethods{ Items: []*string{ // Required aws.String("Method"), // Required // More values... }, Quantity: aws.Int64(1), // Required }, }, DefaultTTL: aws.Int64(1), MaxTTL: aws.Int64(1), SmoothStreaming: aws.Bool(true), }, Enabled: aws.Bool(true), // Required Origins: &cloudfront.Origins{ // Required Quantity: aws.Int64(1), // Required Items: []*cloudfront.Origin{ { // Required DomainName: aws.String("string"), // Required Id: aws.String("string"), // Required CustomOriginConfig: &cloudfront.CustomOriginConfig{ HTTPPort: aws.Int64(1), // Required HTTPSPort: aws.Int64(1), // Required OriginProtocolPolicy: aws.String("OriginProtocolPolicy"), // Required }, OriginPath: aws.String("string"), S3OriginConfig: &cloudfront.S3OriginConfig{ OriginAccessIdentity: aws.String("string"), // Required }, }, // More values... }, }, Aliases: &cloudfront.Aliases{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, CacheBehaviors: &cloudfront.CacheBehaviors{ Quantity: aws.Int64(1), // Required Items: []*cloudfront.CacheBehavior{ { // Required ForwardedValues: &cloudfront.ForwardedValues{ // Required Cookies: &cloudfront.CookiePreference{ // Required Forward: aws.String("ItemSelection"), // Required WhitelistedNames: &cloudfront.CookieNames{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, QueryString: aws.Bool(true), // Required Headers: &cloudfront.Headers{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, MinTTL: aws.Int64(1), // Required PathPattern: aws.String("string"), // Required TargetOriginId: aws.String("string"), // Required TrustedSigners: &cloudfront.TrustedSigners{ // Required Enabled: aws.Bool(true), // Required Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, ViewerProtocolPolicy: aws.String("ViewerProtocolPolicy"), // Required AllowedMethods: &cloudfront.AllowedMethods{ Items: []*string{ // Required aws.String("Method"), // Required // More values... }, Quantity: aws.Int64(1), // Required CachedMethods: &cloudfront.CachedMethods{ Items: []*string{ // Required aws.String("Method"), // Required // More values... }, Quantity: aws.Int64(1), // Required }, }, DefaultTTL: aws.Int64(1), MaxTTL: aws.Int64(1), SmoothStreaming: aws.Bool(true), }, // More values... }, }, CustomErrorResponses: &cloudfront.CustomErrorResponses{ Quantity: aws.Int64(1), // Required Items: []*cloudfront.CustomErrorResponse{ { // Required ErrorCode: aws.Int64(1), // Required ErrorCachingMinTTL: aws.Int64(1), ResponseCode: aws.String("string"), ResponsePagePath: aws.String("string"), }, // More values... }, }, DefaultRootObject: aws.String("string"), Logging: &cloudfront.LoggingConfig{ Bucket: aws.String("string"), // Required Enabled: aws.Bool(true), // Required IncludeCookies: aws.Bool(true), // Required Prefix: aws.String("string"), // Required }, PriceClass: aws.String("PriceClass"), Restrictions: &cloudfront.Restrictions{ GeoRestriction: &cloudfront.GeoRestriction{ // Required Quantity: aws.Int64(1), // Required RestrictionType: aws.String("GeoRestrictionType"), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, ViewerCertificate: &cloudfront.ViewerCertificate{ CloudFrontDefaultCertificate: aws.Bool(true), IAMCertificateId: aws.String("string"), MinimumProtocolVersion: aws.String("MinimumProtocolVersion"), SSLSupportMethod: aws.String("SSLSupportMethod"), }, }, } aws-sdk-go-1.4.22/private/protocol/restxml/build_test.go000066400000000000000000005550321300374646400232730ustar00rootroot00000000000000package restxml_test import ( "bytes" "encoding/json" "encoding/xml" "fmt" "io" "io/ioutil" "net/http" "net/url" "testing" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/restxml" "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil" "github.com/aws/aws-sdk-go/private/util" "github.com/stretchr/testify/assert" ) var _ bytes.Buffer // always import bytes var _ http.Request var _ json.Marshaler var _ time.Time var _ xmlutil.XMLNode var _ xml.Attr var _ = ioutil.Discard var _ = util.Trim("") var _ = url.Values{} var _ = io.EOF var _ = aws.String var _ = fmt.Println func init() { protocol.RandReader = &awstesting.ZeroReader{} } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService1ProtocolTest struct { *client.Client } // New creates a new instance of the InputService1ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService1ProtocolTest client from just a session. // svc := inputservice1protocoltest.New(mySession) // // // Create a InputService1ProtocolTest client with additional configuration // svc := inputservice1protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService1ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService1ProtocolTest { c := p.ClientConfig("inputservice1protocoltest", cfgs...) return newInputService1ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService1ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService1ProtocolTest { svc := &InputService1ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice1protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService1ProtocolTest operation and runs any // custom request initialization. func (c *InputService1ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService1TestCaseOperation1 = "OperationName" // InputService1TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService1TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService1TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService1TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService1TestCaseOperation1Request method. // req, resp := client.InputService1TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService1ProtocolTest) InputService1TestCaseOperation1Request(input *InputService1TestShapeInputShape) (req *request.Request, output *InputService1TestShapeInputService1TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService1TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/2014-01-01/hostedzone", } if input == nil { input = &InputService1TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService1TestShapeInputService1TestCaseOperation1Output{} req.Data = output return } // InputService1TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService1TestCaseOperation1 for usage and error information. func (c *InputService1ProtocolTest) InputService1TestCaseOperation1(input *InputService1TestShapeInputShape) (*InputService1TestShapeInputService1TestCaseOperation1Output, error) { req, out := c.InputService1TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService1TestCaseOperation2 = "OperationName" // InputService1TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService1TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService1TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService1TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService1TestCaseOperation2Request method. // req, resp := client.InputService1TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService1ProtocolTest) InputService1TestCaseOperation2Request(input *InputService1TestShapeInputShape) (req *request.Request, output *InputService1TestShapeInputService1TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService1TestCaseOperation2, HTTPMethod: "PUT", HTTPPath: "/2014-01-01/hostedzone", } if input == nil { input = &InputService1TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService1TestShapeInputService1TestCaseOperation2Output{} req.Data = output return } // InputService1TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService1TestCaseOperation2 for usage and error information. func (c *InputService1ProtocolTest) InputService1TestCaseOperation2(input *InputService1TestShapeInputShape) (*InputService1TestShapeInputService1TestCaseOperation2Output, error) { req, out := c.InputService1TestCaseOperation2Request(input) err := req.Send() return out, err } const opInputService1TestCaseOperation3 = "OperationName" // InputService1TestCaseOperation3Request generates a "aws/request.Request" representing the // client's request for the InputService1TestCaseOperation3 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService1TestCaseOperation3 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService1TestCaseOperation3 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService1TestCaseOperation3Request method. // req, resp := client.InputService1TestCaseOperation3Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService1ProtocolTest) InputService1TestCaseOperation3Request(input *InputService1TestShapeInputService1TestCaseOperation3Input) (req *request.Request, output *InputService1TestShapeInputService1TestCaseOperation3Output) { op := &request.Operation{ Name: opInputService1TestCaseOperation3, HTTPMethod: "GET", HTTPPath: "/2014-01-01/hostedzone", } if input == nil { input = &InputService1TestShapeInputService1TestCaseOperation3Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService1TestShapeInputService1TestCaseOperation3Output{} req.Data = output return } // InputService1TestCaseOperation3 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService1TestCaseOperation3 for usage and error information. func (c *InputService1ProtocolTest) InputService1TestCaseOperation3(input *InputService1TestShapeInputService1TestCaseOperation3Input) (*InputService1TestShapeInputService1TestCaseOperation3Output, error) { req, out := c.InputService1TestCaseOperation3Request(input) err := req.Send() return out, err } type InputService1TestShapeInputService1TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService1TestShapeInputService1TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService1TestShapeInputService1TestCaseOperation3Input struct { _ struct{} `type:"structure"` } type InputService1TestShapeInputService1TestCaseOperation3Output struct { _ struct{} `type:"structure"` } type InputService1TestShapeInputShape struct { _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"` Description *string `type:"string"` Name *string `type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService2ProtocolTest struct { *client.Client } // New creates a new instance of the InputService2ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService2ProtocolTest client from just a session. // svc := inputservice2protocoltest.New(mySession) // // // Create a InputService2ProtocolTest client with additional configuration // svc := inputservice2protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService2ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService2ProtocolTest { c := p.ClientConfig("inputservice2protocoltest", cfgs...) return newInputService2ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService2ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService2ProtocolTest { svc := &InputService2ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice2protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService2ProtocolTest operation and runs any // custom request initialization. func (c *InputService2ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService2TestCaseOperation1 = "OperationName" // InputService2TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService2TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService2TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService2TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService2TestCaseOperation1Request method. // req, resp := client.InputService2TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService2ProtocolTest) InputService2TestCaseOperation1Request(input *InputService2TestShapeInputService2TestCaseOperation1Input) (req *request.Request, output *InputService2TestShapeInputService2TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService2TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/2014-01-01/hostedzone", } if input == nil { input = &InputService2TestShapeInputService2TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService2TestShapeInputService2TestCaseOperation1Output{} req.Data = output return } // InputService2TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService2TestCaseOperation1 for usage and error information. func (c *InputService2ProtocolTest) InputService2TestCaseOperation1(input *InputService2TestShapeInputService2TestCaseOperation1Input) (*InputService2TestShapeInputService2TestCaseOperation1Output, error) { req, out := c.InputService2TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService2TestShapeInputService2TestCaseOperation1Input struct { _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"` First *bool `type:"boolean"` Fourth *int64 `type:"integer"` Second *bool `type:"boolean"` Third *float64 `type:"float"` } type InputService2TestShapeInputService2TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService3ProtocolTest struct { *client.Client } // New creates a new instance of the InputService3ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService3ProtocolTest client from just a session. // svc := inputservice3protocoltest.New(mySession) // // // Create a InputService3ProtocolTest client with additional configuration // svc := inputservice3protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService3ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService3ProtocolTest { c := p.ClientConfig("inputservice3protocoltest", cfgs...) return newInputService3ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService3ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService3ProtocolTest { svc := &InputService3ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice3protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService3ProtocolTest operation and runs any // custom request initialization. func (c *InputService3ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService3TestCaseOperation1 = "OperationName" // InputService3TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService3TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService3TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService3TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService3TestCaseOperation1Request method. // req, resp := client.InputService3TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService3ProtocolTest) InputService3TestCaseOperation1Request(input *InputService3TestShapeInputShape) (req *request.Request, output *InputService3TestShapeInputService3TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService3TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/2014-01-01/hostedzone", } if input == nil { input = &InputService3TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService3TestShapeInputService3TestCaseOperation1Output{} req.Data = output return } // InputService3TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService3TestCaseOperation1 for usage and error information. func (c *InputService3ProtocolTest) InputService3TestCaseOperation1(input *InputService3TestShapeInputShape) (*InputService3TestShapeInputService3TestCaseOperation1Output, error) { req, out := c.InputService3TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService3TestCaseOperation2 = "OperationName" // InputService3TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService3TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService3TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService3TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService3TestCaseOperation2Request method. // req, resp := client.InputService3TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService3ProtocolTest) InputService3TestCaseOperation2Request(input *InputService3TestShapeInputShape) (req *request.Request, output *InputService3TestShapeInputService3TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService3TestCaseOperation2, HTTPMethod: "POST", HTTPPath: "/2014-01-01/hostedzone", } if input == nil { input = &InputService3TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService3TestShapeInputService3TestCaseOperation2Output{} req.Data = output return } // InputService3TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService3TestCaseOperation2 for usage and error information. func (c *InputService3ProtocolTest) InputService3TestCaseOperation2(input *InputService3TestShapeInputShape) (*InputService3TestShapeInputService3TestCaseOperation2Output, error) { req, out := c.InputService3TestCaseOperation2Request(input) err := req.Send() return out, err } type InputService3TestShapeInputService3TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService3TestShapeInputService3TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService3TestShapeInputShape struct { _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"` Description *string `type:"string"` SubStructure *InputService3TestShapeSubStructure `type:"structure"` } type InputService3TestShapeSubStructure struct { _ struct{} `type:"structure"` Bar *string `type:"string"` Foo *string `type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService4ProtocolTest struct { *client.Client } // New creates a new instance of the InputService4ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService4ProtocolTest client from just a session. // svc := inputservice4protocoltest.New(mySession) // // // Create a InputService4ProtocolTest client with additional configuration // svc := inputservice4protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService4ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService4ProtocolTest { c := p.ClientConfig("inputservice4protocoltest", cfgs...) return newInputService4ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService4ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService4ProtocolTest { svc := &InputService4ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice4protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService4ProtocolTest operation and runs any // custom request initialization. func (c *InputService4ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService4TestCaseOperation1 = "OperationName" // InputService4TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService4TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService4TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService4TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService4TestCaseOperation1Request method. // req, resp := client.InputService4TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService4ProtocolTest) InputService4TestCaseOperation1Request(input *InputService4TestShapeInputService4TestCaseOperation1Input) (req *request.Request, output *InputService4TestShapeInputService4TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService4TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/2014-01-01/hostedzone", } if input == nil { input = &InputService4TestShapeInputService4TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService4TestShapeInputService4TestCaseOperation1Output{} req.Data = output return } // InputService4TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService4TestCaseOperation1 for usage and error information. func (c *InputService4ProtocolTest) InputService4TestCaseOperation1(input *InputService4TestShapeInputService4TestCaseOperation1Input) (*InputService4TestShapeInputService4TestCaseOperation1Output, error) { req, out := c.InputService4TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService4TestShapeInputService4TestCaseOperation1Input struct { _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"` Description *string `type:"string"` SubStructure *InputService4TestShapeSubStructure `type:"structure"` } type InputService4TestShapeInputService4TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService4TestShapeSubStructure struct { _ struct{} `type:"structure"` Bar *string `type:"string"` Foo *string `type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService5ProtocolTest struct { *client.Client } // New creates a new instance of the InputService5ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService5ProtocolTest client from just a session. // svc := inputservice5protocoltest.New(mySession) // // // Create a InputService5ProtocolTest client with additional configuration // svc := inputservice5protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService5ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService5ProtocolTest { c := p.ClientConfig("inputservice5protocoltest", cfgs...) return newInputService5ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService5ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService5ProtocolTest { svc := &InputService5ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice5protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService5ProtocolTest operation and runs any // custom request initialization. func (c *InputService5ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService5TestCaseOperation1 = "OperationName" // InputService5TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService5TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService5TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService5TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService5TestCaseOperation1Request method. // req, resp := client.InputService5TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService5ProtocolTest) InputService5TestCaseOperation1Request(input *InputService5TestShapeInputService5TestCaseOperation1Input) (req *request.Request, output *InputService5TestShapeInputService5TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService5TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/2014-01-01/hostedzone", } if input == nil { input = &InputService5TestShapeInputService5TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService5TestShapeInputService5TestCaseOperation1Output{} req.Data = output return } // InputService5TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService5TestCaseOperation1 for usage and error information. func (c *InputService5ProtocolTest) InputService5TestCaseOperation1(input *InputService5TestShapeInputService5TestCaseOperation1Input) (*InputService5TestShapeInputService5TestCaseOperation1Output, error) { req, out := c.InputService5TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService5TestShapeInputService5TestCaseOperation1Input struct { _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"` ListParam []*string `type:"list"` } type InputService5TestShapeInputService5TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService6ProtocolTest struct { *client.Client } // New creates a new instance of the InputService6ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService6ProtocolTest client from just a session. // svc := inputservice6protocoltest.New(mySession) // // // Create a InputService6ProtocolTest client with additional configuration // svc := inputservice6protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService6ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService6ProtocolTest { c := p.ClientConfig("inputservice6protocoltest", cfgs...) return newInputService6ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService6ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService6ProtocolTest { svc := &InputService6ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice6protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService6ProtocolTest operation and runs any // custom request initialization. func (c *InputService6ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService6TestCaseOperation1 = "OperationName" // InputService6TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService6TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService6TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService6TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService6TestCaseOperation1Request method. // req, resp := client.InputService6TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService6ProtocolTest) InputService6TestCaseOperation1Request(input *InputService6TestShapeInputService6TestCaseOperation1Input) (req *request.Request, output *InputService6TestShapeInputService6TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService6TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/2014-01-01/hostedzone", } if input == nil { input = &InputService6TestShapeInputService6TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService6TestShapeInputService6TestCaseOperation1Output{} req.Data = output return } // InputService6TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService6TestCaseOperation1 for usage and error information. func (c *InputService6ProtocolTest) InputService6TestCaseOperation1(input *InputService6TestShapeInputService6TestCaseOperation1Input) (*InputService6TestShapeInputService6TestCaseOperation1Output, error) { req, out := c.InputService6TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService6TestShapeInputService6TestCaseOperation1Input struct { _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"` ListParam []*string `locationName:"AlternateName" locationNameList:"NotMember" type:"list"` } type InputService6TestShapeInputService6TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService7ProtocolTest struct { *client.Client } // New creates a new instance of the InputService7ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService7ProtocolTest client from just a session. // svc := inputservice7protocoltest.New(mySession) // // // Create a InputService7ProtocolTest client with additional configuration // svc := inputservice7protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService7ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService7ProtocolTest { c := p.ClientConfig("inputservice7protocoltest", cfgs...) return newInputService7ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService7ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService7ProtocolTest { svc := &InputService7ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice7protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService7ProtocolTest operation and runs any // custom request initialization. func (c *InputService7ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService7TestCaseOperation1 = "OperationName" // InputService7TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService7TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService7TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService7TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService7TestCaseOperation1Request method. // req, resp := client.InputService7TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService7ProtocolTest) InputService7TestCaseOperation1Request(input *InputService7TestShapeInputService7TestCaseOperation1Input) (req *request.Request, output *InputService7TestShapeInputService7TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService7TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/2014-01-01/hostedzone", } if input == nil { input = &InputService7TestShapeInputService7TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService7TestShapeInputService7TestCaseOperation1Output{} req.Data = output return } // InputService7TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService7TestCaseOperation1 for usage and error information. func (c *InputService7ProtocolTest) InputService7TestCaseOperation1(input *InputService7TestShapeInputService7TestCaseOperation1Input) (*InputService7TestShapeInputService7TestCaseOperation1Output, error) { req, out := c.InputService7TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService7TestShapeInputService7TestCaseOperation1Input struct { _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"` ListParam []*string `type:"list" flattened:"true"` } type InputService7TestShapeInputService7TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService8ProtocolTest struct { *client.Client } // New creates a new instance of the InputService8ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService8ProtocolTest client from just a session. // svc := inputservice8protocoltest.New(mySession) // // // Create a InputService8ProtocolTest client with additional configuration // svc := inputservice8protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService8ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService8ProtocolTest { c := p.ClientConfig("inputservice8protocoltest", cfgs...) return newInputService8ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService8ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService8ProtocolTest { svc := &InputService8ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice8protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService8ProtocolTest operation and runs any // custom request initialization. func (c *InputService8ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService8TestCaseOperation1 = "OperationName" // InputService8TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService8TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService8TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService8TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService8TestCaseOperation1Request method. // req, resp := client.InputService8TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService8ProtocolTest) InputService8TestCaseOperation1Request(input *InputService8TestShapeInputService8TestCaseOperation1Input) (req *request.Request, output *InputService8TestShapeInputService8TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService8TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/2014-01-01/hostedzone", } if input == nil { input = &InputService8TestShapeInputService8TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService8TestShapeInputService8TestCaseOperation1Output{} req.Data = output return } // InputService8TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService8TestCaseOperation1 for usage and error information. func (c *InputService8ProtocolTest) InputService8TestCaseOperation1(input *InputService8TestShapeInputService8TestCaseOperation1Input) (*InputService8TestShapeInputService8TestCaseOperation1Output, error) { req, out := c.InputService8TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService8TestShapeInputService8TestCaseOperation1Input struct { _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"` ListParam []*string `locationName:"item" type:"list" flattened:"true"` } type InputService8TestShapeInputService8TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService9ProtocolTest struct { *client.Client } // New creates a new instance of the InputService9ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService9ProtocolTest client from just a session. // svc := inputservice9protocoltest.New(mySession) // // // Create a InputService9ProtocolTest client with additional configuration // svc := inputservice9protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService9ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService9ProtocolTest { c := p.ClientConfig("inputservice9protocoltest", cfgs...) return newInputService9ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService9ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService9ProtocolTest { svc := &InputService9ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice9protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService9ProtocolTest operation and runs any // custom request initialization. func (c *InputService9ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService9TestCaseOperation1 = "OperationName" // InputService9TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService9TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService9TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService9TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService9TestCaseOperation1Request method. // req, resp := client.InputService9TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService9ProtocolTest) InputService9TestCaseOperation1Request(input *InputService9TestShapeInputService9TestCaseOperation1Input) (req *request.Request, output *InputService9TestShapeInputService9TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService9TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/2014-01-01/hostedzone", } if input == nil { input = &InputService9TestShapeInputService9TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService9TestShapeInputService9TestCaseOperation1Output{} req.Data = output return } // InputService9TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService9TestCaseOperation1 for usage and error information. func (c *InputService9ProtocolTest) InputService9TestCaseOperation1(input *InputService9TestShapeInputService9TestCaseOperation1Input) (*InputService9TestShapeInputService9TestCaseOperation1Output, error) { req, out := c.InputService9TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService9TestShapeInputService9TestCaseOperation1Input struct { _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"` ListParam []*InputService9TestShapeSingleFieldStruct `locationName:"item" type:"list" flattened:"true"` } type InputService9TestShapeInputService9TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService9TestShapeSingleFieldStruct struct { _ struct{} `type:"structure"` Element *string `locationName:"value" type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService10ProtocolTest struct { *client.Client } // New creates a new instance of the InputService10ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService10ProtocolTest client from just a session. // svc := inputservice10protocoltest.New(mySession) // // // Create a InputService10ProtocolTest client with additional configuration // svc := inputservice10protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService10ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService10ProtocolTest { c := p.ClientConfig("inputservice10protocoltest", cfgs...) return newInputService10ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService10ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService10ProtocolTest { svc := &InputService10ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice10protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService10ProtocolTest operation and runs any // custom request initialization. func (c *InputService10ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService10TestCaseOperation1 = "OperationName" // InputService10TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService10TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService10TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService10TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService10TestCaseOperation1Request method. // req, resp := client.InputService10TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService10ProtocolTest) InputService10TestCaseOperation1Request(input *InputService10TestShapeInputService10TestCaseOperation1Input) (req *request.Request, output *InputService10TestShapeInputService10TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService10TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/2014-01-01/hostedzone", } if input == nil { input = &InputService10TestShapeInputService10TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService10TestShapeInputService10TestCaseOperation1Output{} req.Data = output return } // InputService10TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService10TestCaseOperation1 for usage and error information. func (c *InputService10ProtocolTest) InputService10TestCaseOperation1(input *InputService10TestShapeInputService10TestCaseOperation1Input) (*InputService10TestShapeInputService10TestCaseOperation1Output, error) { req, out := c.InputService10TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService10TestShapeInputService10TestCaseOperation1Input struct { _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"` StructureParam *InputService10TestShapeStructureShape `type:"structure"` } type InputService10TestShapeInputService10TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService10TestShapeStructureShape struct { _ struct{} `type:"structure"` // B is automatically base64 encoded/decoded by the SDK. B []byte `locationName:"b" type:"blob"` T *time.Time `locationName:"t" type:"timestamp" timestampFormat:"iso8601"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService11ProtocolTest struct { *client.Client } // New creates a new instance of the InputService11ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService11ProtocolTest client from just a session. // svc := inputservice11protocoltest.New(mySession) // // // Create a InputService11ProtocolTest client with additional configuration // svc := inputservice11protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService11ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService11ProtocolTest { c := p.ClientConfig("inputservice11protocoltest", cfgs...) return newInputService11ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService11ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService11ProtocolTest { svc := &InputService11ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice11protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService11ProtocolTest operation and runs any // custom request initialization. func (c *InputService11ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService11TestCaseOperation1 = "OperationName" // InputService11TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService11TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService11TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService11TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService11TestCaseOperation1Request method. // req, resp := client.InputService11TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService11ProtocolTest) InputService11TestCaseOperation1Request(input *InputService11TestShapeInputService11TestCaseOperation1Input) (req *request.Request, output *InputService11TestShapeInputService11TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService11TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InputService11TestShapeInputService11TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService11TestShapeInputService11TestCaseOperation1Output{} req.Data = output return } // InputService11TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService11TestCaseOperation1 for usage and error information. func (c *InputService11ProtocolTest) InputService11TestCaseOperation1(input *InputService11TestShapeInputService11TestCaseOperation1Input) (*InputService11TestShapeInputService11TestCaseOperation1Output, error) { req, out := c.InputService11TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService11TestShapeInputService11TestCaseOperation1Input struct { _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"` Foo map[string]*string `location:"headers" locationName:"x-foo-" type:"map"` } type InputService11TestShapeInputService11TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService12ProtocolTest struct { *client.Client } // New creates a new instance of the InputService12ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService12ProtocolTest client from just a session. // svc := inputservice12protocoltest.New(mySession) // // // Create a InputService12ProtocolTest client with additional configuration // svc := inputservice12protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService12ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService12ProtocolTest { c := p.ClientConfig("inputservice12protocoltest", cfgs...) return newInputService12ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService12ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService12ProtocolTest { svc := &InputService12ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice12protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService12ProtocolTest operation and runs any // custom request initialization. func (c *InputService12ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService12TestCaseOperation1 = "OperationName" // InputService12TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService12TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService12TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService12TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService12TestCaseOperation1Request method. // req, resp := client.InputService12TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService12ProtocolTest) InputService12TestCaseOperation1Request(input *InputService12TestShapeInputService12TestCaseOperation1Input) (req *request.Request, output *InputService12TestShapeInputService12TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService12TestCaseOperation1, HTTPMethod: "GET", HTTPPath: "/path", } if input == nil { input = &InputService12TestShapeInputService12TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService12TestShapeInputService12TestCaseOperation1Output{} req.Data = output return } // InputService12TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService12TestCaseOperation1 for usage and error information. func (c *InputService12ProtocolTest) InputService12TestCaseOperation1(input *InputService12TestShapeInputService12TestCaseOperation1Input) (*InputService12TestShapeInputService12TestCaseOperation1Output, error) { req, out := c.InputService12TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService12TestShapeInputService12TestCaseOperation1Input struct { _ struct{} `type:"structure"` Items []*string `location:"querystring" locationName:"item" type:"list"` } type InputService12TestShapeInputService12TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService13ProtocolTest struct { *client.Client } // New creates a new instance of the InputService13ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService13ProtocolTest client from just a session. // svc := inputservice13protocoltest.New(mySession) // // // Create a InputService13ProtocolTest client with additional configuration // svc := inputservice13protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService13ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService13ProtocolTest { c := p.ClientConfig("inputservice13protocoltest", cfgs...) return newInputService13ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService13ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService13ProtocolTest { svc := &InputService13ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice13protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService13ProtocolTest operation and runs any // custom request initialization. func (c *InputService13ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService13TestCaseOperation1 = "OperationName" // InputService13TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService13TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService13TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService13TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService13TestCaseOperation1Request method. // req, resp := client.InputService13TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService13ProtocolTest) InputService13TestCaseOperation1Request(input *InputService13TestShapeInputService13TestCaseOperation1Input) (req *request.Request, output *InputService13TestShapeInputService13TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService13TestCaseOperation1, HTTPMethod: "GET", HTTPPath: "/2014-01-01/jobsByPipeline/{PipelineId}", } if input == nil { input = &InputService13TestShapeInputService13TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService13TestShapeInputService13TestCaseOperation1Output{} req.Data = output return } // InputService13TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService13TestCaseOperation1 for usage and error information. func (c *InputService13ProtocolTest) InputService13TestCaseOperation1(input *InputService13TestShapeInputService13TestCaseOperation1Input) (*InputService13TestShapeInputService13TestCaseOperation1Output, error) { req, out := c.InputService13TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService13TestShapeInputService13TestCaseOperation1Input struct { _ struct{} `type:"structure"` PipelineId *string `location:"uri" type:"string"` QueryDoc map[string]*string `location:"querystring" type:"map"` } type InputService13TestShapeInputService13TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService14ProtocolTest struct { *client.Client } // New creates a new instance of the InputService14ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService14ProtocolTest client from just a session. // svc := inputservice14protocoltest.New(mySession) // // // Create a InputService14ProtocolTest client with additional configuration // svc := inputservice14protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService14ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService14ProtocolTest { c := p.ClientConfig("inputservice14protocoltest", cfgs...) return newInputService14ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService14ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService14ProtocolTest { svc := &InputService14ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice14protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService14ProtocolTest operation and runs any // custom request initialization. func (c *InputService14ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService14TestCaseOperation1 = "OperationName" // InputService14TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService14TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService14TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService14TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService14TestCaseOperation1Request method. // req, resp := client.InputService14TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService14ProtocolTest) InputService14TestCaseOperation1Request(input *InputService14TestShapeInputService14TestCaseOperation1Input) (req *request.Request, output *InputService14TestShapeInputService14TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService14TestCaseOperation1, HTTPMethod: "GET", HTTPPath: "/2014-01-01/jobsByPipeline/{PipelineId}", } if input == nil { input = &InputService14TestShapeInputService14TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService14TestShapeInputService14TestCaseOperation1Output{} req.Data = output return } // InputService14TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService14TestCaseOperation1 for usage and error information. func (c *InputService14ProtocolTest) InputService14TestCaseOperation1(input *InputService14TestShapeInputService14TestCaseOperation1Input) (*InputService14TestShapeInputService14TestCaseOperation1Output, error) { req, out := c.InputService14TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService14TestShapeInputService14TestCaseOperation1Input struct { _ struct{} `type:"structure"` PipelineId *string `location:"uri" type:"string"` QueryDoc map[string][]*string `location:"querystring" type:"map"` } type InputService14TestShapeInputService14TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService15ProtocolTest struct { *client.Client } // New creates a new instance of the InputService15ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService15ProtocolTest client from just a session. // svc := inputservice15protocoltest.New(mySession) // // // Create a InputService15ProtocolTest client with additional configuration // svc := inputservice15protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService15ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService15ProtocolTest { c := p.ClientConfig("inputservice15protocoltest", cfgs...) return newInputService15ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService15ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService15ProtocolTest { svc := &InputService15ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice15protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService15ProtocolTest operation and runs any // custom request initialization. func (c *InputService15ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService15TestCaseOperation1 = "OperationName" // InputService15TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService15TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService15TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService15TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService15TestCaseOperation1Request method. // req, resp := client.InputService15TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService15ProtocolTest) InputService15TestCaseOperation1Request(input *InputService15TestShapeInputService15TestCaseOperation1Input) (req *request.Request, output *InputService15TestShapeInputService15TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService15TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InputService15TestShapeInputService15TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService15TestShapeInputService15TestCaseOperation1Output{} req.Data = output return } // InputService15TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService15TestCaseOperation1 for usage and error information. func (c *InputService15ProtocolTest) InputService15TestCaseOperation1(input *InputService15TestShapeInputService15TestCaseOperation1Input) (*InputService15TestShapeInputService15TestCaseOperation1Output, error) { req, out := c.InputService15TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService15TestShapeInputService15TestCaseOperation1Input struct { _ struct{} `type:"structure" payload:"Foo"` Foo *string `locationName:"foo" type:"string"` } type InputService15TestShapeInputService15TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService16ProtocolTest struct { *client.Client } // New creates a new instance of the InputService16ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService16ProtocolTest client from just a session. // svc := inputservice16protocoltest.New(mySession) // // // Create a InputService16ProtocolTest client with additional configuration // svc := inputservice16protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService16ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService16ProtocolTest { c := p.ClientConfig("inputservice16protocoltest", cfgs...) return newInputService16ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService16ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService16ProtocolTest { svc := &InputService16ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice16protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService16ProtocolTest operation and runs any // custom request initialization. func (c *InputService16ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService16TestCaseOperation1 = "OperationName" // InputService16TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService16TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService16TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService16TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService16TestCaseOperation1Request method. // req, resp := client.InputService16TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService16ProtocolTest) InputService16TestCaseOperation1Request(input *InputService16TestShapeInputShape) (req *request.Request, output *InputService16TestShapeInputService16TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService16TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InputService16TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService16TestShapeInputService16TestCaseOperation1Output{} req.Data = output return } // InputService16TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService16TestCaseOperation1 for usage and error information. func (c *InputService16ProtocolTest) InputService16TestCaseOperation1(input *InputService16TestShapeInputShape) (*InputService16TestShapeInputService16TestCaseOperation1Output, error) { req, out := c.InputService16TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService16TestCaseOperation2 = "OperationName" // InputService16TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService16TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService16TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService16TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService16TestCaseOperation2Request method. // req, resp := client.InputService16TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService16ProtocolTest) InputService16TestCaseOperation2Request(input *InputService16TestShapeInputShape) (req *request.Request, output *InputService16TestShapeInputService16TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService16TestCaseOperation2, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InputService16TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService16TestShapeInputService16TestCaseOperation2Output{} req.Data = output return } // InputService16TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService16TestCaseOperation2 for usage and error information. func (c *InputService16ProtocolTest) InputService16TestCaseOperation2(input *InputService16TestShapeInputShape) (*InputService16TestShapeInputService16TestCaseOperation2Output, error) { req, out := c.InputService16TestCaseOperation2Request(input) err := req.Send() return out, err } type InputService16TestShapeInputService16TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService16TestShapeInputService16TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService16TestShapeInputShape struct { _ struct{} `type:"structure" payload:"Foo"` Foo []byte `locationName:"foo" type:"blob"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService17ProtocolTest struct { *client.Client } // New creates a new instance of the InputService17ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService17ProtocolTest client from just a session. // svc := inputservice17protocoltest.New(mySession) // // // Create a InputService17ProtocolTest client with additional configuration // svc := inputservice17protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService17ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService17ProtocolTest { c := p.ClientConfig("inputservice17protocoltest", cfgs...) return newInputService17ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService17ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService17ProtocolTest { svc := &InputService17ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice17protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService17ProtocolTest operation and runs any // custom request initialization. func (c *InputService17ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService17TestCaseOperation1 = "OperationName" // InputService17TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService17TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService17TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService17TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService17TestCaseOperation1Request method. // req, resp := client.InputService17TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService17ProtocolTest) InputService17TestCaseOperation1Request(input *InputService17TestShapeInputShape) (req *request.Request, output *InputService17TestShapeInputService17TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService17TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InputService17TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService17TestShapeInputService17TestCaseOperation1Output{} req.Data = output return } // InputService17TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService17TestCaseOperation1 for usage and error information. func (c *InputService17ProtocolTest) InputService17TestCaseOperation1(input *InputService17TestShapeInputShape) (*InputService17TestShapeInputService17TestCaseOperation1Output, error) { req, out := c.InputService17TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService17TestCaseOperation2 = "OperationName" // InputService17TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService17TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService17TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService17TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService17TestCaseOperation2Request method. // req, resp := client.InputService17TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService17ProtocolTest) InputService17TestCaseOperation2Request(input *InputService17TestShapeInputShape) (req *request.Request, output *InputService17TestShapeInputService17TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService17TestCaseOperation2, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InputService17TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService17TestShapeInputService17TestCaseOperation2Output{} req.Data = output return } // InputService17TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService17TestCaseOperation2 for usage and error information. func (c *InputService17ProtocolTest) InputService17TestCaseOperation2(input *InputService17TestShapeInputShape) (*InputService17TestShapeInputService17TestCaseOperation2Output, error) { req, out := c.InputService17TestCaseOperation2Request(input) err := req.Send() return out, err } const opInputService17TestCaseOperation3 = "OperationName" // InputService17TestCaseOperation3Request generates a "aws/request.Request" representing the // client's request for the InputService17TestCaseOperation3 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService17TestCaseOperation3 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService17TestCaseOperation3 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService17TestCaseOperation3Request method. // req, resp := client.InputService17TestCaseOperation3Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService17ProtocolTest) InputService17TestCaseOperation3Request(input *InputService17TestShapeInputShape) (req *request.Request, output *InputService17TestShapeInputService17TestCaseOperation3Output) { op := &request.Operation{ Name: opInputService17TestCaseOperation3, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InputService17TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService17TestShapeInputService17TestCaseOperation3Output{} req.Data = output return } // InputService17TestCaseOperation3 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService17TestCaseOperation3 for usage and error information. func (c *InputService17ProtocolTest) InputService17TestCaseOperation3(input *InputService17TestShapeInputShape) (*InputService17TestShapeInputService17TestCaseOperation3Output, error) { req, out := c.InputService17TestCaseOperation3Request(input) err := req.Send() return out, err } const opInputService17TestCaseOperation4 = "OperationName" // InputService17TestCaseOperation4Request generates a "aws/request.Request" representing the // client's request for the InputService17TestCaseOperation4 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService17TestCaseOperation4 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService17TestCaseOperation4 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService17TestCaseOperation4Request method. // req, resp := client.InputService17TestCaseOperation4Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService17ProtocolTest) InputService17TestCaseOperation4Request(input *InputService17TestShapeInputShape) (req *request.Request, output *InputService17TestShapeInputService17TestCaseOperation4Output) { op := &request.Operation{ Name: opInputService17TestCaseOperation4, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InputService17TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService17TestShapeInputService17TestCaseOperation4Output{} req.Data = output return } // InputService17TestCaseOperation4 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService17TestCaseOperation4 for usage and error information. func (c *InputService17ProtocolTest) InputService17TestCaseOperation4(input *InputService17TestShapeInputShape) (*InputService17TestShapeInputService17TestCaseOperation4Output, error) { req, out := c.InputService17TestCaseOperation4Request(input) err := req.Send() return out, err } type InputService17TestShapeFooShape struct { _ struct{} `locationName:"foo" type:"structure"` Baz *string `locationName:"baz" type:"string"` } type InputService17TestShapeInputService17TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService17TestShapeInputService17TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService17TestShapeInputService17TestCaseOperation3Output struct { _ struct{} `type:"structure"` } type InputService17TestShapeInputService17TestCaseOperation4Output struct { _ struct{} `type:"structure"` } type InputService17TestShapeInputShape struct { _ struct{} `type:"structure" payload:"Foo"` Foo *InputService17TestShapeFooShape `locationName:"foo" type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService18ProtocolTest struct { *client.Client } // New creates a new instance of the InputService18ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService18ProtocolTest client from just a session. // svc := inputservice18protocoltest.New(mySession) // // // Create a InputService18ProtocolTest client with additional configuration // svc := inputservice18protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService18ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService18ProtocolTest { c := p.ClientConfig("inputservice18protocoltest", cfgs...) return newInputService18ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService18ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService18ProtocolTest { svc := &InputService18ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice18protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService18ProtocolTest operation and runs any // custom request initialization. func (c *InputService18ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService18TestCaseOperation1 = "OperationName" // InputService18TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService18TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService18TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService18TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService18TestCaseOperation1Request method. // req, resp := client.InputService18TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService18ProtocolTest) InputService18TestCaseOperation1Request(input *InputService18TestShapeInputService18TestCaseOperation1Input) (req *request.Request, output *InputService18TestShapeInputService18TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService18TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InputService18TestShapeInputService18TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService18TestShapeInputService18TestCaseOperation1Output{} req.Data = output return } // InputService18TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService18TestCaseOperation1 for usage and error information. func (c *InputService18ProtocolTest) InputService18TestCaseOperation1(input *InputService18TestShapeInputService18TestCaseOperation1Input) (*InputService18TestShapeInputService18TestCaseOperation1Output, error) { req, out := c.InputService18TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService18TestShapeGrant struct { _ struct{} `locationName:"Grant" type:"structure"` Grantee *InputService18TestShapeGrantee `type:"structure"` } type InputService18TestShapeGrantee struct { _ struct{} `type:"structure" xmlPrefix:"xsi" xmlURI:"http://www.w3.org/2001/XMLSchema-instance"` EmailAddress *string `type:"string"` Type *string `locationName:"xsi:type" type:"string" xmlAttribute:"true"` } type InputService18TestShapeInputService18TestCaseOperation1Input struct { _ struct{} `type:"structure" payload:"Grant"` Grant *InputService18TestShapeGrant `locationName:"Grant" type:"structure"` } type InputService18TestShapeInputService18TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService19ProtocolTest struct { *client.Client } // New creates a new instance of the InputService19ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService19ProtocolTest client from just a session. // svc := inputservice19protocoltest.New(mySession) // // // Create a InputService19ProtocolTest client with additional configuration // svc := inputservice19protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService19ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService19ProtocolTest { c := p.ClientConfig("inputservice19protocoltest", cfgs...) return newInputService19ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService19ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService19ProtocolTest { svc := &InputService19ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice19protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService19ProtocolTest operation and runs any // custom request initialization. func (c *InputService19ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService19TestCaseOperation1 = "OperationName" // InputService19TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService19TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService19TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService19TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService19TestCaseOperation1Request method. // req, resp := client.InputService19TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService19ProtocolTest) InputService19TestCaseOperation1Request(input *InputService19TestShapeInputService19TestCaseOperation1Input) (req *request.Request, output *InputService19TestShapeInputService19TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService19TestCaseOperation1, HTTPMethod: "GET", HTTPPath: "/{Bucket}/{Key+}", } if input == nil { input = &InputService19TestShapeInputService19TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService19TestShapeInputService19TestCaseOperation1Output{} req.Data = output return } // InputService19TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService19TestCaseOperation1 for usage and error information. func (c *InputService19ProtocolTest) InputService19TestCaseOperation1(input *InputService19TestShapeInputService19TestCaseOperation1Input) (*InputService19TestShapeInputService19TestCaseOperation1Output, error) { req, out := c.InputService19TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService19TestShapeInputService19TestCaseOperation1Input struct { _ struct{} `type:"structure"` Bucket *string `location:"uri" type:"string"` Key *string `location:"uri" type:"string"` } type InputService19TestShapeInputService19TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService20ProtocolTest struct { *client.Client } // New creates a new instance of the InputService20ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService20ProtocolTest client from just a session. // svc := inputservice20protocoltest.New(mySession) // // // Create a InputService20ProtocolTest client with additional configuration // svc := inputservice20protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService20ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService20ProtocolTest { c := p.ClientConfig("inputservice20protocoltest", cfgs...) return newInputService20ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService20ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService20ProtocolTest { svc := &InputService20ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice20protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService20ProtocolTest operation and runs any // custom request initialization. func (c *InputService20ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService20TestCaseOperation1 = "OperationName" // InputService20TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService20TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService20TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService20TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService20TestCaseOperation1Request method. // req, resp := client.InputService20TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService20ProtocolTest) InputService20TestCaseOperation1Request(input *InputService20TestShapeInputShape) (req *request.Request, output *InputService20TestShapeInputService20TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService20TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService20TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService20TestShapeInputService20TestCaseOperation1Output{} req.Data = output return } // InputService20TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService20TestCaseOperation1 for usage and error information. func (c *InputService20ProtocolTest) InputService20TestCaseOperation1(input *InputService20TestShapeInputShape) (*InputService20TestShapeInputService20TestCaseOperation1Output, error) { req, out := c.InputService20TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService20TestCaseOperation2 = "OperationName" // InputService20TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService20TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService20TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService20TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService20TestCaseOperation2Request method. // req, resp := client.InputService20TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService20ProtocolTest) InputService20TestCaseOperation2Request(input *InputService20TestShapeInputShape) (req *request.Request, output *InputService20TestShapeInputService20TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService20TestCaseOperation2, HTTPMethod: "POST", HTTPPath: "/path?abc=mno", } if input == nil { input = &InputService20TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService20TestShapeInputService20TestCaseOperation2Output{} req.Data = output return } // InputService20TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService20TestCaseOperation2 for usage and error information. func (c *InputService20ProtocolTest) InputService20TestCaseOperation2(input *InputService20TestShapeInputShape) (*InputService20TestShapeInputService20TestCaseOperation2Output, error) { req, out := c.InputService20TestCaseOperation2Request(input) err := req.Send() return out, err } type InputService20TestShapeInputService20TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService20TestShapeInputService20TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService20TestShapeInputShape struct { _ struct{} `type:"structure"` Foo *string `location:"querystring" locationName:"param-name" type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService21ProtocolTest struct { *client.Client } // New creates a new instance of the InputService21ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService21ProtocolTest client from just a session. // svc := inputservice21protocoltest.New(mySession) // // // Create a InputService21ProtocolTest client with additional configuration // svc := inputservice21protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService21ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService21ProtocolTest { c := p.ClientConfig("inputservice21protocoltest", cfgs...) return newInputService21ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService21ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService21ProtocolTest { svc := &InputService21ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice21protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService21ProtocolTest operation and runs any // custom request initialization. func (c *InputService21ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService21TestCaseOperation1 = "OperationName" // InputService21TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService21TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService21TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService21TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService21TestCaseOperation1Request method. // req, resp := client.InputService21TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService21ProtocolTest) InputService21TestCaseOperation1Request(input *InputService21TestShapeInputShape) (req *request.Request, output *InputService21TestShapeInputService21TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService21TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService21TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService21TestShapeInputService21TestCaseOperation1Output{} req.Data = output return } // InputService21TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService21TestCaseOperation1 for usage and error information. func (c *InputService21ProtocolTest) InputService21TestCaseOperation1(input *InputService21TestShapeInputShape) (*InputService21TestShapeInputService21TestCaseOperation1Output, error) { req, out := c.InputService21TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService21TestCaseOperation2 = "OperationName" // InputService21TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService21TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService21TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService21TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService21TestCaseOperation2Request method. // req, resp := client.InputService21TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService21ProtocolTest) InputService21TestCaseOperation2Request(input *InputService21TestShapeInputShape) (req *request.Request, output *InputService21TestShapeInputService21TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService21TestCaseOperation2, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService21TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService21TestShapeInputService21TestCaseOperation2Output{} req.Data = output return } // InputService21TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService21TestCaseOperation2 for usage and error information. func (c *InputService21ProtocolTest) InputService21TestCaseOperation2(input *InputService21TestShapeInputShape) (*InputService21TestShapeInputService21TestCaseOperation2Output, error) { req, out := c.InputService21TestCaseOperation2Request(input) err := req.Send() return out, err } const opInputService21TestCaseOperation3 = "OperationName" // InputService21TestCaseOperation3Request generates a "aws/request.Request" representing the // client's request for the InputService21TestCaseOperation3 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService21TestCaseOperation3 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService21TestCaseOperation3 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService21TestCaseOperation3Request method. // req, resp := client.InputService21TestCaseOperation3Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService21ProtocolTest) InputService21TestCaseOperation3Request(input *InputService21TestShapeInputShape) (req *request.Request, output *InputService21TestShapeInputService21TestCaseOperation3Output) { op := &request.Operation{ Name: opInputService21TestCaseOperation3, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService21TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService21TestShapeInputService21TestCaseOperation3Output{} req.Data = output return } // InputService21TestCaseOperation3 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService21TestCaseOperation3 for usage and error information. func (c *InputService21ProtocolTest) InputService21TestCaseOperation3(input *InputService21TestShapeInputShape) (*InputService21TestShapeInputService21TestCaseOperation3Output, error) { req, out := c.InputService21TestCaseOperation3Request(input) err := req.Send() return out, err } const opInputService21TestCaseOperation4 = "OperationName" // InputService21TestCaseOperation4Request generates a "aws/request.Request" representing the // client's request for the InputService21TestCaseOperation4 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService21TestCaseOperation4 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService21TestCaseOperation4 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService21TestCaseOperation4Request method. // req, resp := client.InputService21TestCaseOperation4Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService21ProtocolTest) InputService21TestCaseOperation4Request(input *InputService21TestShapeInputShape) (req *request.Request, output *InputService21TestShapeInputService21TestCaseOperation4Output) { op := &request.Operation{ Name: opInputService21TestCaseOperation4, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService21TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService21TestShapeInputService21TestCaseOperation4Output{} req.Data = output return } // InputService21TestCaseOperation4 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService21TestCaseOperation4 for usage and error information. func (c *InputService21ProtocolTest) InputService21TestCaseOperation4(input *InputService21TestShapeInputShape) (*InputService21TestShapeInputService21TestCaseOperation4Output, error) { req, out := c.InputService21TestCaseOperation4Request(input) err := req.Send() return out, err } const opInputService21TestCaseOperation5 = "OperationName" // InputService21TestCaseOperation5Request generates a "aws/request.Request" representing the // client's request for the InputService21TestCaseOperation5 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService21TestCaseOperation5 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService21TestCaseOperation5 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService21TestCaseOperation5Request method. // req, resp := client.InputService21TestCaseOperation5Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService21ProtocolTest) InputService21TestCaseOperation5Request(input *InputService21TestShapeInputShape) (req *request.Request, output *InputService21TestShapeInputService21TestCaseOperation5Output) { op := &request.Operation{ Name: opInputService21TestCaseOperation5, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService21TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService21TestShapeInputService21TestCaseOperation5Output{} req.Data = output return } // InputService21TestCaseOperation5 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService21TestCaseOperation5 for usage and error information. func (c *InputService21ProtocolTest) InputService21TestCaseOperation5(input *InputService21TestShapeInputShape) (*InputService21TestShapeInputService21TestCaseOperation5Output, error) { req, out := c.InputService21TestCaseOperation5Request(input) err := req.Send() return out, err } const opInputService21TestCaseOperation6 = "OperationName" // InputService21TestCaseOperation6Request generates a "aws/request.Request" representing the // client's request for the InputService21TestCaseOperation6 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService21TestCaseOperation6 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService21TestCaseOperation6 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService21TestCaseOperation6Request method. // req, resp := client.InputService21TestCaseOperation6Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService21ProtocolTest) InputService21TestCaseOperation6Request(input *InputService21TestShapeInputShape) (req *request.Request, output *InputService21TestShapeInputService21TestCaseOperation6Output) { op := &request.Operation{ Name: opInputService21TestCaseOperation6, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService21TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService21TestShapeInputService21TestCaseOperation6Output{} req.Data = output return } // InputService21TestCaseOperation6 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService21TestCaseOperation6 for usage and error information. func (c *InputService21ProtocolTest) InputService21TestCaseOperation6(input *InputService21TestShapeInputShape) (*InputService21TestShapeInputService21TestCaseOperation6Output, error) { req, out := c.InputService21TestCaseOperation6Request(input) err := req.Send() return out, err } type InputService21TestShapeInputService21TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService21TestShapeInputService21TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService21TestShapeInputService21TestCaseOperation3Output struct { _ struct{} `type:"structure"` } type InputService21TestShapeInputService21TestCaseOperation4Output struct { _ struct{} `type:"structure"` } type InputService21TestShapeInputService21TestCaseOperation5Output struct { _ struct{} `type:"structure"` } type InputService21TestShapeInputService21TestCaseOperation6Output struct { _ struct{} `type:"structure"` } type InputService21TestShapeInputShape struct { _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"` RecursiveStruct *InputService21TestShapeRecursiveStructType `type:"structure"` } type InputService21TestShapeRecursiveStructType struct { _ struct{} `type:"structure"` NoRecurse *string `type:"string"` RecursiveList []*InputService21TestShapeRecursiveStructType `type:"list"` RecursiveMap map[string]*InputService21TestShapeRecursiveStructType `type:"map"` RecursiveStruct *InputService21TestShapeRecursiveStructType `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService22ProtocolTest struct { *client.Client } // New creates a new instance of the InputService22ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService22ProtocolTest client from just a session. // svc := inputservice22protocoltest.New(mySession) // // // Create a InputService22ProtocolTest client with additional configuration // svc := inputservice22protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService22ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService22ProtocolTest { c := p.ClientConfig("inputservice22protocoltest", cfgs...) return newInputService22ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService22ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService22ProtocolTest { svc := &InputService22ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice22protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService22ProtocolTest operation and runs any // custom request initialization. func (c *InputService22ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService22TestCaseOperation1 = "OperationName" // InputService22TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService22TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService22TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService22TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService22TestCaseOperation1Request method. // req, resp := client.InputService22TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService22ProtocolTest) InputService22TestCaseOperation1Request(input *InputService22TestShapeInputService22TestCaseOperation1Input) (req *request.Request, output *InputService22TestShapeInputService22TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService22TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService22TestShapeInputService22TestCaseOperation1Input{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService22TestShapeInputService22TestCaseOperation1Output{} req.Data = output return } // InputService22TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService22TestCaseOperation1 for usage and error information. func (c *InputService22ProtocolTest) InputService22TestCaseOperation1(input *InputService22TestShapeInputService22TestCaseOperation1Input) (*InputService22TestShapeInputService22TestCaseOperation1Output, error) { req, out := c.InputService22TestCaseOperation1Request(input) err := req.Send() return out, err } type InputService22TestShapeInputService22TestCaseOperation1Input struct { _ struct{} `type:"structure"` TimeArgInHeader *time.Time `location:"header" locationName:"x-amz-timearg" type:"timestamp" timestampFormat:"rfc822"` } type InputService22TestShapeInputService22TestCaseOperation1Output struct { _ struct{} `type:"structure"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type InputService23ProtocolTest struct { *client.Client } // New creates a new instance of the InputService23ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a InputService23ProtocolTest client from just a session. // svc := inputservice23protocoltest.New(mySession) // // // Create a InputService23ProtocolTest client with additional configuration // svc := inputservice23protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewInputService23ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService23ProtocolTest { c := p.ClientConfig("inputservice23protocoltest", cfgs...) return newInputService23ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newInputService23ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService23ProtocolTest { svc := &InputService23ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice23protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a InputService23ProtocolTest operation and runs any // custom request initialization. func (c *InputService23ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opInputService23TestCaseOperation1 = "OperationName" // InputService23TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the InputService23TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService23TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService23TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService23TestCaseOperation1Request method. // req, resp := client.InputService23TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService23ProtocolTest) InputService23TestCaseOperation1Request(input *InputService23TestShapeInputShape) (req *request.Request, output *InputService23TestShapeInputService23TestCaseOperation1Output) { op := &request.Operation{ Name: opInputService23TestCaseOperation1, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService23TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService23TestShapeInputService23TestCaseOperation1Output{} req.Data = output return } // InputService23TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService23TestCaseOperation1 for usage and error information. func (c *InputService23ProtocolTest) InputService23TestCaseOperation1(input *InputService23TestShapeInputShape) (*InputService23TestShapeInputService23TestCaseOperation1Output, error) { req, out := c.InputService23TestCaseOperation1Request(input) err := req.Send() return out, err } const opInputService23TestCaseOperation2 = "OperationName" // InputService23TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the InputService23TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InputService23TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InputService23TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InputService23TestCaseOperation2Request method. // req, resp := client.InputService23TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *InputService23ProtocolTest) InputService23TestCaseOperation2Request(input *InputService23TestShapeInputShape) (req *request.Request, output *InputService23TestShapeInputService23TestCaseOperation2Output) { op := &request.Operation{ Name: opInputService23TestCaseOperation2, HTTPMethod: "POST", HTTPPath: "/path", } if input == nil { input = &InputService23TestShapeInputShape{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &InputService23TestShapeInputService23TestCaseOperation2Output{} req.Data = output return } // InputService23TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation InputService23TestCaseOperation2 for usage and error information. func (c *InputService23ProtocolTest) InputService23TestCaseOperation2(input *InputService23TestShapeInputShape) (*InputService23TestShapeInputService23TestCaseOperation2Output, error) { req, out := c.InputService23TestCaseOperation2Request(input) err := req.Send() return out, err } type InputService23TestShapeInputService23TestCaseOperation1Output struct { _ struct{} `type:"structure"` } type InputService23TestShapeInputService23TestCaseOperation2Output struct { _ struct{} `type:"structure"` } type InputService23TestShapeInputShape struct { _ struct{} `type:"structure"` Token *string `type:"string" idempotencyToken:"true"` } // // Tests begin here // func TestInputService1ProtocolTestBasicXMLSerializationCase1(t *testing.T) { svc := NewInputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService1TestShapeInputShape{ Description: aws.String("bar"), Name: aws.String("foo"), } req, _ := svc.InputService1TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `barfoo`, util.Trim(string(body)), InputService1TestShapeInputShape{}) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String()) // assert headers } func TestInputService1ProtocolTestBasicXMLSerializationCase2(t *testing.T) { svc := NewInputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService1TestShapeInputShape{ Description: aws.String("bar"), Name: aws.String("foo"), } req, _ := svc.InputService1TestCaseOperation2Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `barfoo`, util.Trim(string(body)), InputService1TestShapeInputShape{}) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String()) // assert headers } func TestInputService1ProtocolTestBasicXMLSerializationCase3(t *testing.T) { svc := NewInputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService1TestShapeInputService1TestCaseOperation3Input{} req, _ := svc.InputService1TestCaseOperation3Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String()) // assert headers } func TestInputService2ProtocolTestSerializeOtherScalarTypesCase1(t *testing.T) { svc := NewInputService2ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService2TestShapeInputService2TestCaseOperation1Input{ First: aws.Bool(true), Fourth: aws.Int64(3), Second: aws.Bool(false), Third: aws.Float64(1.2), } req, _ := svc.InputService2TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `true3false1.2`, util.Trim(string(body)), InputService2TestShapeInputService2TestCaseOperation1Input{}) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String()) // assert headers } func TestInputService3ProtocolTestNestedStructuresCase1(t *testing.T) { svc := NewInputService3ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService3TestShapeInputShape{ Description: aws.String("baz"), SubStructure: &InputService3TestShapeSubStructure{ Bar: aws.String("b"), Foo: aws.String("a"), }, } req, _ := svc.InputService3TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `bazba`, util.Trim(string(body)), InputService3TestShapeInputShape{}) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String()) // assert headers } func TestInputService3ProtocolTestNestedStructuresCase2(t *testing.T) { svc := NewInputService3ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService3TestShapeInputShape{ Description: aws.String("baz"), SubStructure: &InputService3TestShapeSubStructure{ Foo: aws.String("a"), }, } req, _ := svc.InputService3TestCaseOperation2Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `baza`, util.Trim(string(body)), InputService3TestShapeInputShape{}) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String()) // assert headers } func TestInputService4ProtocolTestNestedStructuresCase1(t *testing.T) { svc := NewInputService4ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService4TestShapeInputService4TestCaseOperation1Input{ Description: aws.String("baz"), SubStructure: &InputService4TestShapeSubStructure{}, } req, _ := svc.InputService4TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `baz`, util.Trim(string(body)), InputService4TestShapeInputService4TestCaseOperation1Input{}) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String()) // assert headers } func TestInputService5ProtocolTestNonFlattenedListsCase1(t *testing.T) { svc := NewInputService5ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService5TestShapeInputService5TestCaseOperation1Input{ ListParam: []*string{ aws.String("one"), aws.String("two"), aws.String("three"), }, } req, _ := svc.InputService5TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `onetwothree`, util.Trim(string(body)), InputService5TestShapeInputService5TestCaseOperation1Input{}) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String()) // assert headers } func TestInputService6ProtocolTestNonFlattenedListsWithLocationNameCase1(t *testing.T) { svc := NewInputService6ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService6TestShapeInputService6TestCaseOperation1Input{ ListParam: []*string{ aws.String("one"), aws.String("two"), aws.String("three"), }, } req, _ := svc.InputService6TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `onetwothree`, util.Trim(string(body)), InputService6TestShapeInputService6TestCaseOperation1Input{}) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String()) // assert headers } func TestInputService7ProtocolTestFlattenedListsCase1(t *testing.T) { svc := NewInputService7ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService7TestShapeInputService7TestCaseOperation1Input{ ListParam: []*string{ aws.String("one"), aws.String("two"), aws.String("three"), }, } req, _ := svc.InputService7TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `onetwothree`, util.Trim(string(body)), InputService7TestShapeInputService7TestCaseOperation1Input{}) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String()) // assert headers } func TestInputService8ProtocolTestFlattenedListsWithLocationNameCase1(t *testing.T) { svc := NewInputService8ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService8TestShapeInputService8TestCaseOperation1Input{ ListParam: []*string{ aws.String("one"), aws.String("two"), aws.String("three"), }, } req, _ := svc.InputService8TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `onetwothree`, util.Trim(string(body)), InputService8TestShapeInputService8TestCaseOperation1Input{}) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String()) // assert headers } func TestInputService9ProtocolTestListOfStructuresCase1(t *testing.T) { svc := NewInputService9ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService9TestShapeInputService9TestCaseOperation1Input{ ListParam: []*InputService9TestShapeSingleFieldStruct{ { Element: aws.String("one"), }, { Element: aws.String("two"), }, { Element: aws.String("three"), }, }, } req, _ := svc.InputService9TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `onetwothree`, util.Trim(string(body)), InputService9TestShapeInputService9TestCaseOperation1Input{}) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String()) // assert headers } func TestInputService10ProtocolTestBlobAndTimestampShapesCase1(t *testing.T) { svc := NewInputService10ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService10TestShapeInputService10TestCaseOperation1Input{ StructureParam: &InputService10TestShapeStructureShape{ B: []byte("foo"), T: aws.Time(time.Unix(1422172800, 0)), }, } req, _ := svc.InputService10TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `Zm9v2015-01-25T08:00:00Z`, util.Trim(string(body)), InputService10TestShapeInputService10TestCaseOperation1Input{}) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String()) // assert headers } func TestInputService11ProtocolTestHeaderMapsCase1(t *testing.T) { svc := NewInputService11ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService11TestShapeInputService11TestCaseOperation1Input{ Foo: map[string]*string{ "a": aws.String("b"), "c": aws.String("d"), }, } req, _ := svc.InputService11TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers assert.Equal(t, "b", r.Header.Get("x-foo-a")) assert.Equal(t, "d", r.Header.Get("x-foo-c")) } func TestInputService12ProtocolTestQuerystringListOfStringsCase1(t *testing.T) { svc := NewInputService12ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService12TestShapeInputService12TestCaseOperation1Input{ Items: []*string{ aws.String("value1"), aws.String("value2"), }, } req, _ := svc.InputService12TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/path?item=value1&item=value2", r.URL.String()) // assert headers } func TestInputService13ProtocolTestStringToStringMapsInQuerystringCase1(t *testing.T) { svc := NewInputService13ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService13TestShapeInputService13TestCaseOperation1Input{ PipelineId: aws.String("foo"), QueryDoc: map[string]*string{ "bar": aws.String("baz"), "fizz": aws.String("buzz"), }, } req, _ := svc.InputService13TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/jobsByPipeline/foo?bar=baz&fizz=buzz", r.URL.String()) // assert headers } func TestInputService14ProtocolTestStringToStringListMapsInQuerystringCase1(t *testing.T) { svc := NewInputService14ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService14TestShapeInputService14TestCaseOperation1Input{ PipelineId: aws.String("id"), QueryDoc: map[string][]*string{ "fizz": { aws.String("buzz"), aws.String("pop"), }, "foo": { aws.String("bar"), aws.String("baz"), }, }, } req, _ := svc.InputService14TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/2014-01-01/jobsByPipeline/id?foo=bar&foo=baz&fizz=buzz&fizz=pop", r.URL.String()) // assert headers } func TestInputService15ProtocolTestStringPayloadCase1(t *testing.T) { svc := NewInputService15ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService15TestShapeInputService15TestCaseOperation1Input{ Foo: aws.String("bar"), } req, _ := svc.InputService15TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) assert.Equal(t, `bar`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService16ProtocolTestBlobPayloadCase1(t *testing.T) { svc := NewInputService16ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService16TestShapeInputShape{ Foo: []byte("bar"), } req, _ := svc.InputService16TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) assert.Equal(t, `bar`, util.Trim(string(body))) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService16ProtocolTestBlobPayloadCase2(t *testing.T) { svc := NewInputService16ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService16TestShapeInputShape{} req, _ := svc.InputService16TestCaseOperation2Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService17ProtocolTestStructurePayloadCase1(t *testing.T) { svc := NewInputService17ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService17TestShapeInputShape{ Foo: &InputService17TestShapeFooShape{ Baz: aws.String("bar"), }, } req, _ := svc.InputService17TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `bar`, util.Trim(string(body)), InputService17TestShapeInputShape{}) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService17ProtocolTestStructurePayloadCase2(t *testing.T) { svc := NewInputService17ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService17TestShapeInputShape{} req, _ := svc.InputService17TestCaseOperation2Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService17ProtocolTestStructurePayloadCase3(t *testing.T) { svc := NewInputService17ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService17TestShapeInputShape{ Foo: &InputService17TestShapeFooShape{}, } req, _ := svc.InputService17TestCaseOperation3Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, ``, util.Trim(string(body)), InputService17TestShapeInputShape{}) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService17ProtocolTestStructurePayloadCase4(t *testing.T) { svc := NewInputService17ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService17TestShapeInputShape{} req, _ := svc.InputService17TestCaseOperation4Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService18ProtocolTestXMLAttributeCase1(t *testing.T) { svc := NewInputService18ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService18TestShapeInputService18TestCaseOperation1Input{ Grant: &InputService18TestShapeGrant{ Grantee: &InputService18TestShapeGrantee{ EmailAddress: aws.String("foo@example.com"), Type: aws.String("CanonicalUser"), }, }, } req, _ := svc.InputService18TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `foo@example.com`, util.Trim(string(body)), InputService18TestShapeInputService18TestCaseOperation1Input{}) // assert URL awstesting.AssertURL(t, "https://test/", r.URL.String()) // assert headers } func TestInputService19ProtocolTestGreedyKeysCase1(t *testing.T) { svc := NewInputService19ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService19TestShapeInputService19TestCaseOperation1Input{ Bucket: aws.String("my/bucket"), Key: aws.String("testing /123"), } req, _ := svc.InputService19TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/my%2Fbucket/testing%20/123", r.URL.String()) // assert headers } func TestInputService20ProtocolTestOmitsNullQueryParamsButSerializesEmptyStringsCase1(t *testing.T) { svc := NewInputService20ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService20TestShapeInputShape{} req, _ := svc.InputService20TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService20ProtocolTestOmitsNullQueryParamsButSerializesEmptyStringsCase2(t *testing.T) { svc := NewInputService20ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService20TestShapeInputShape{ Foo: aws.String(""), } req, _ := svc.InputService20TestCaseOperation2Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/path?abc=mno¶m-name=", r.URL.String()) // assert headers } func TestInputService21ProtocolTestRecursiveShapesCase1(t *testing.T) { svc := NewInputService21ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService21TestShapeInputShape{ RecursiveStruct: &InputService21TestShapeRecursiveStructType{ NoRecurse: aws.String("foo"), }, } req, _ := svc.InputService21TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `foo`, util.Trim(string(body)), InputService21TestShapeInputShape{}) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService21ProtocolTestRecursiveShapesCase2(t *testing.T) { svc := NewInputService21ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService21TestShapeInputShape{ RecursiveStruct: &InputService21TestShapeRecursiveStructType{ RecursiveStruct: &InputService21TestShapeRecursiveStructType{ NoRecurse: aws.String("foo"), }, }, } req, _ := svc.InputService21TestCaseOperation2Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `foo`, util.Trim(string(body)), InputService21TestShapeInputShape{}) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService21ProtocolTestRecursiveShapesCase3(t *testing.T) { svc := NewInputService21ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService21TestShapeInputShape{ RecursiveStruct: &InputService21TestShapeRecursiveStructType{ RecursiveStruct: &InputService21TestShapeRecursiveStructType{ RecursiveStruct: &InputService21TestShapeRecursiveStructType{ RecursiveStruct: &InputService21TestShapeRecursiveStructType{ NoRecurse: aws.String("foo"), }, }, }, }, } req, _ := svc.InputService21TestCaseOperation3Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `foo`, util.Trim(string(body)), InputService21TestShapeInputShape{}) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService21ProtocolTestRecursiveShapesCase4(t *testing.T) { svc := NewInputService21ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService21TestShapeInputShape{ RecursiveStruct: &InputService21TestShapeRecursiveStructType{ RecursiveList: []*InputService21TestShapeRecursiveStructType{ { NoRecurse: aws.String("foo"), }, { NoRecurse: aws.String("bar"), }, }, }, } req, _ := svc.InputService21TestCaseOperation4Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `foobar`, util.Trim(string(body)), InputService21TestShapeInputShape{}) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService21ProtocolTestRecursiveShapesCase5(t *testing.T) { svc := NewInputService21ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService21TestShapeInputShape{ RecursiveStruct: &InputService21TestShapeRecursiveStructType{ RecursiveList: []*InputService21TestShapeRecursiveStructType{ { NoRecurse: aws.String("foo"), }, { RecursiveStruct: &InputService21TestShapeRecursiveStructType{ NoRecurse: aws.String("bar"), }, }, }, }, } req, _ := svc.InputService21TestCaseOperation5Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `foobar`, util.Trim(string(body)), InputService21TestShapeInputShape{}) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService21ProtocolTestRecursiveShapesCase6(t *testing.T) { svc := NewInputService21ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService21TestShapeInputShape{ RecursiveStruct: &InputService21TestShapeRecursiveStructType{ RecursiveMap: map[string]*InputService21TestShapeRecursiveStructType{ "bar": { NoRecurse: aws.String("bar"), }, "foo": { NoRecurse: aws.String("foo"), }, }, }, } req, _ := svc.InputService21TestCaseOperation6Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `foofoobarbar`, util.Trim(string(body)), InputService21TestShapeInputShape{}) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService22ProtocolTestTimestampInHeaderCase1(t *testing.T) { svc := NewInputService22ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService22TestShapeInputService22TestCaseOperation1Input{ TimeArgInHeader: aws.Time(time.Unix(1422172800, 0)), } req, _ := svc.InputService22TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers assert.Equal(t, "Sun, 25 Jan 2015 08:00:00 GMT", r.Header.Get("x-amz-timearg")) } func TestInputService23ProtocolTestIdempotencyTokenAutoFillCase1(t *testing.T) { svc := NewInputService23ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService23TestShapeInputShape{ Token: aws.String("abc123"), } req, _ := svc.InputService23TestCaseOperation1Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `abc123`, util.Trim(string(body)), InputService23TestShapeInputShape{}) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } func TestInputService23ProtocolTestIdempotencyTokenAutoFillCase2(t *testing.T) { svc := NewInputService23ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) input := &InputService23TestShapeInputShape{} req, _ := svc.InputService23TestCaseOperation2Request(input) r := req.HTTPRequest // build request restxml.Build(req) assert.NoError(t, req.Error) // assert body assert.NotNil(t, r.Body) body := util.SortXML(r.Body) awstesting.AssertXML(t, `00000000-0000-4000-8000-000000000000`, util.Trim(string(body)), InputService23TestShapeInputShape{}) // assert URL awstesting.AssertURL(t, "https://test/path", r.URL.String()) // assert headers } aws-sdk-go-1.4.22/private/protocol/restxml/restxml.go000066400000000000000000000050541300374646400226250ustar00rootroot00000000000000// Package restxml provides RESTful XML serialization of AWS // requests and responses. package restxml //go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/input/rest-xml.json build_test.go //go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/output/rest-xml.json unmarshal_test.go import ( "bytes" "encoding/xml" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol/query" "github.com/aws/aws-sdk-go/private/protocol/rest" "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil" ) // BuildHandler is a named request handler for building restxml protocol requests var BuildHandler = request.NamedHandler{Name: "awssdk.restxml.Build", Fn: Build} // UnmarshalHandler is a named request handler for unmarshaling restxml protocol requests var UnmarshalHandler = request.NamedHandler{Name: "awssdk.restxml.Unmarshal", Fn: Unmarshal} // UnmarshalMetaHandler is a named request handler for unmarshaling restxml protocol request metadata var UnmarshalMetaHandler = request.NamedHandler{Name: "awssdk.restxml.UnmarshalMeta", Fn: UnmarshalMeta} // UnmarshalErrorHandler is a named request handler for unmarshaling restxml protocol request errors var UnmarshalErrorHandler = request.NamedHandler{Name: "awssdk.restxml.UnmarshalError", Fn: UnmarshalError} // Build builds a request payload for the REST XML protocol. func Build(r *request.Request) { rest.Build(r) if t := rest.PayloadType(r.Params); t == "structure" || t == "" { var buf bytes.Buffer err := xmlutil.BuildXML(r.Params, xml.NewEncoder(&buf)) if err != nil { r.Error = awserr.New("SerializationError", "failed to encode rest XML request", err) return } r.SetBufferBody(buf.Bytes()) } } // Unmarshal unmarshals a payload response for the REST XML protocol. func Unmarshal(r *request.Request) { if t := rest.PayloadType(r.Data); t == "structure" || t == "" { defer r.HTTPResponse.Body.Close() decoder := xml.NewDecoder(r.HTTPResponse.Body) err := xmlutil.UnmarshalXML(r.Data, decoder, "") if err != nil { r.Error = awserr.New("SerializationError", "failed to decode REST XML response", err) return } } else { rest.Unmarshal(r) } } // UnmarshalMeta unmarshals response headers for the REST XML protocol. func UnmarshalMeta(r *request.Request) { rest.UnmarshalMeta(r) } // UnmarshalError unmarshals a response error for the REST XML protocol. func UnmarshalError(r *request.Request) { query.UnmarshalError(r) } aws-sdk-go-1.4.22/private/protocol/restxml/unmarshal_test.go000066400000000000000000002221031300374646400241540ustar00rootroot00000000000000package restxml_test import ( "bytes" "encoding/json" "encoding/xml" "fmt" "io" "io/ioutil" "net/http" "net/url" "testing" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/restxml" "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil" "github.com/aws/aws-sdk-go/private/util" "github.com/stretchr/testify/assert" ) var _ bytes.Buffer // always import bytes var _ http.Request var _ json.Marshaler var _ time.Time var _ xmlutil.XMLNode var _ xml.Attr var _ = ioutil.Discard var _ = util.Trim("") var _ = url.Values{} var _ = io.EOF var _ = aws.String var _ = fmt.Println func init() { protocol.RandReader = &awstesting.ZeroReader{} } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService1ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService1ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService1ProtocolTest client from just a session. // svc := outputservice1protocoltest.New(mySession) // // // Create a OutputService1ProtocolTest client with additional configuration // svc := outputservice1protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService1ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService1ProtocolTest { c := p.ClientConfig("outputservice1protocoltest", cfgs...) return newOutputService1ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService1ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService1ProtocolTest { svc := &OutputService1ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice1protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService1ProtocolTest operation and runs any // custom request initialization. func (c *OutputService1ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService1TestCaseOperation1 = "OperationName" // OutputService1TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService1TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService1TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService1TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService1TestCaseOperation1Request method. // req, resp := client.OutputService1TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService1ProtocolTest) OutputService1TestCaseOperation1Request(input *OutputService1TestShapeOutputService1TestCaseOperation1Input) (req *request.Request, output *OutputService1TestShapeOutputShape) { op := &request.Operation{ Name: opOutputService1TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService1TestShapeOutputService1TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService1TestShapeOutputShape{} req.Data = output return } // OutputService1TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService1TestCaseOperation1 for usage and error information. func (c *OutputService1ProtocolTest) OutputService1TestCaseOperation1(input *OutputService1TestShapeOutputService1TestCaseOperation1Input) (*OutputService1TestShapeOutputShape, error) { req, out := c.OutputService1TestCaseOperation1Request(input) err := req.Send() return out, err } const opOutputService1TestCaseOperation2 = "OperationName" // OutputService1TestCaseOperation2Request generates a "aws/request.Request" representing the // client's request for the OutputService1TestCaseOperation2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService1TestCaseOperation2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService1TestCaseOperation2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService1TestCaseOperation2Request method. // req, resp := client.OutputService1TestCaseOperation2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService1ProtocolTest) OutputService1TestCaseOperation2Request(input *OutputService1TestShapeOutputService1TestCaseOperation2Input) (req *request.Request, output *OutputService1TestShapeOutputShape) { op := &request.Operation{ Name: opOutputService1TestCaseOperation2, HTTPPath: "/", } if input == nil { input = &OutputService1TestShapeOutputService1TestCaseOperation2Input{} } req = c.newRequest(op, input, output) output = &OutputService1TestShapeOutputShape{} req.Data = output return } // OutputService1TestCaseOperation2 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService1TestCaseOperation2 for usage and error information. func (c *OutputService1ProtocolTest) OutputService1TestCaseOperation2(input *OutputService1TestShapeOutputService1TestCaseOperation2Input) (*OutputService1TestShapeOutputShape, error) { req, out := c.OutputService1TestCaseOperation2Request(input) err := req.Send() return out, err } type OutputService1TestShapeOutputService1TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService1TestShapeOutputService1TestCaseOperation2Input struct { _ struct{} `type:"structure"` } type OutputService1TestShapeOutputShape struct { _ struct{} `type:"structure"` Char *string `type:"character"` Double *float64 `type:"double"` FalseBool *bool `type:"boolean"` Float *float64 `type:"float"` ImaHeader *string `location:"header" type:"string"` ImaHeaderLocation *string `location:"header" locationName:"X-Foo" type:"string"` Long *int64 `type:"long"` Num *int64 `locationName:"FooNum" type:"integer"` Str *string `type:"string"` Timestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` TrueBool *bool `type:"boolean"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService2ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService2ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService2ProtocolTest client from just a session. // svc := outputservice2protocoltest.New(mySession) // // // Create a OutputService2ProtocolTest client with additional configuration // svc := outputservice2protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService2ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService2ProtocolTest { c := p.ClientConfig("outputservice2protocoltest", cfgs...) return newOutputService2ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService2ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService2ProtocolTest { svc := &OutputService2ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice2protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService2ProtocolTest operation and runs any // custom request initialization. func (c *OutputService2ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService2TestCaseOperation1 = "OperationName" // OutputService2TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService2TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService2TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService2TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService2TestCaseOperation1Request method. // req, resp := client.OutputService2TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService2ProtocolTest) OutputService2TestCaseOperation1Request(input *OutputService2TestShapeOutputService2TestCaseOperation1Input) (req *request.Request, output *OutputService2TestShapeOutputService2TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService2TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService2TestShapeOutputService2TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService2TestShapeOutputService2TestCaseOperation1Output{} req.Data = output return } // OutputService2TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService2TestCaseOperation1 for usage and error information. func (c *OutputService2ProtocolTest) OutputService2TestCaseOperation1(input *OutputService2TestShapeOutputService2TestCaseOperation1Input) (*OutputService2TestShapeOutputService2TestCaseOperation1Output, error) { req, out := c.OutputService2TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService2TestShapeOutputService2TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService2TestShapeOutputService2TestCaseOperation1Output struct { _ struct{} `type:"structure"` // Blob is automatically base64 encoded/decoded by the SDK. Blob []byte `type:"blob"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService3ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService3ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService3ProtocolTest client from just a session. // svc := outputservice3protocoltest.New(mySession) // // // Create a OutputService3ProtocolTest client with additional configuration // svc := outputservice3protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService3ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService3ProtocolTest { c := p.ClientConfig("outputservice3protocoltest", cfgs...) return newOutputService3ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService3ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService3ProtocolTest { svc := &OutputService3ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice3protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService3ProtocolTest operation and runs any // custom request initialization. func (c *OutputService3ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService3TestCaseOperation1 = "OperationName" // OutputService3TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService3TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService3TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService3TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService3TestCaseOperation1Request method. // req, resp := client.OutputService3TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService3ProtocolTest) OutputService3TestCaseOperation1Request(input *OutputService3TestShapeOutputService3TestCaseOperation1Input) (req *request.Request, output *OutputService3TestShapeOutputService3TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService3TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService3TestShapeOutputService3TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService3TestShapeOutputService3TestCaseOperation1Output{} req.Data = output return } // OutputService3TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService3TestCaseOperation1 for usage and error information. func (c *OutputService3ProtocolTest) OutputService3TestCaseOperation1(input *OutputService3TestShapeOutputService3TestCaseOperation1Input) (*OutputService3TestShapeOutputService3TestCaseOperation1Output, error) { req, out := c.OutputService3TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService3TestShapeOutputService3TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService3TestShapeOutputService3TestCaseOperation1Output struct { _ struct{} `type:"structure"` ListMember []*string `type:"list"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService4ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService4ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService4ProtocolTest client from just a session. // svc := outputservice4protocoltest.New(mySession) // // // Create a OutputService4ProtocolTest client with additional configuration // svc := outputservice4protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService4ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService4ProtocolTest { c := p.ClientConfig("outputservice4protocoltest", cfgs...) return newOutputService4ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService4ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService4ProtocolTest { svc := &OutputService4ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice4protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService4ProtocolTest operation and runs any // custom request initialization. func (c *OutputService4ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService4TestCaseOperation1 = "OperationName" // OutputService4TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService4TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService4TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService4TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService4TestCaseOperation1Request method. // req, resp := client.OutputService4TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService4ProtocolTest) OutputService4TestCaseOperation1Request(input *OutputService4TestShapeOutputService4TestCaseOperation1Input) (req *request.Request, output *OutputService4TestShapeOutputService4TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService4TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService4TestShapeOutputService4TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService4TestShapeOutputService4TestCaseOperation1Output{} req.Data = output return } // OutputService4TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService4TestCaseOperation1 for usage and error information. func (c *OutputService4ProtocolTest) OutputService4TestCaseOperation1(input *OutputService4TestShapeOutputService4TestCaseOperation1Input) (*OutputService4TestShapeOutputService4TestCaseOperation1Output, error) { req, out := c.OutputService4TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService4TestShapeOutputService4TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService4TestShapeOutputService4TestCaseOperation1Output struct { _ struct{} `type:"structure"` ListMember []*string `locationNameList:"item" type:"list"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService5ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService5ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService5ProtocolTest client from just a session. // svc := outputservice5protocoltest.New(mySession) // // // Create a OutputService5ProtocolTest client with additional configuration // svc := outputservice5protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService5ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService5ProtocolTest { c := p.ClientConfig("outputservice5protocoltest", cfgs...) return newOutputService5ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService5ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService5ProtocolTest { svc := &OutputService5ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice5protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService5ProtocolTest operation and runs any // custom request initialization. func (c *OutputService5ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService5TestCaseOperation1 = "OperationName" // OutputService5TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService5TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService5TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService5TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService5TestCaseOperation1Request method. // req, resp := client.OutputService5TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService5ProtocolTest) OutputService5TestCaseOperation1Request(input *OutputService5TestShapeOutputService5TestCaseOperation1Input) (req *request.Request, output *OutputService5TestShapeOutputService5TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService5TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService5TestShapeOutputService5TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService5TestShapeOutputService5TestCaseOperation1Output{} req.Data = output return } // OutputService5TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService5TestCaseOperation1 for usage and error information. func (c *OutputService5ProtocolTest) OutputService5TestCaseOperation1(input *OutputService5TestShapeOutputService5TestCaseOperation1Input) (*OutputService5TestShapeOutputService5TestCaseOperation1Output, error) { req, out := c.OutputService5TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService5TestShapeOutputService5TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService5TestShapeOutputService5TestCaseOperation1Output struct { _ struct{} `type:"structure"` ListMember []*string `type:"list" flattened:"true"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService6ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService6ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService6ProtocolTest client from just a session. // svc := outputservice6protocoltest.New(mySession) // // // Create a OutputService6ProtocolTest client with additional configuration // svc := outputservice6protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService6ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService6ProtocolTest { c := p.ClientConfig("outputservice6protocoltest", cfgs...) return newOutputService6ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService6ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService6ProtocolTest { svc := &OutputService6ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice6protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService6ProtocolTest operation and runs any // custom request initialization. func (c *OutputService6ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService6TestCaseOperation1 = "OperationName" // OutputService6TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService6TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService6TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService6TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService6TestCaseOperation1Request method. // req, resp := client.OutputService6TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService6ProtocolTest) OutputService6TestCaseOperation1Request(input *OutputService6TestShapeOutputService6TestCaseOperation1Input) (req *request.Request, output *OutputService6TestShapeOutputService6TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService6TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService6TestShapeOutputService6TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService6TestShapeOutputService6TestCaseOperation1Output{} req.Data = output return } // OutputService6TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService6TestCaseOperation1 for usage and error information. func (c *OutputService6ProtocolTest) OutputService6TestCaseOperation1(input *OutputService6TestShapeOutputService6TestCaseOperation1Input) (*OutputService6TestShapeOutputService6TestCaseOperation1Output, error) { req, out := c.OutputService6TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService6TestShapeOutputService6TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService6TestShapeOutputService6TestCaseOperation1Output struct { _ struct{} `type:"structure"` Map map[string]*OutputService6TestShapeSingleStructure `type:"map"` } type OutputService6TestShapeSingleStructure struct { _ struct{} `type:"structure"` Foo *string `locationName:"foo" type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService7ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService7ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService7ProtocolTest client from just a session. // svc := outputservice7protocoltest.New(mySession) // // // Create a OutputService7ProtocolTest client with additional configuration // svc := outputservice7protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService7ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService7ProtocolTest { c := p.ClientConfig("outputservice7protocoltest", cfgs...) return newOutputService7ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService7ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService7ProtocolTest { svc := &OutputService7ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice7protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService7ProtocolTest operation and runs any // custom request initialization. func (c *OutputService7ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService7TestCaseOperation1 = "OperationName" // OutputService7TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService7TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService7TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService7TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService7TestCaseOperation1Request method. // req, resp := client.OutputService7TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService7ProtocolTest) OutputService7TestCaseOperation1Request(input *OutputService7TestShapeOutputService7TestCaseOperation1Input) (req *request.Request, output *OutputService7TestShapeOutputService7TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService7TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService7TestShapeOutputService7TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService7TestShapeOutputService7TestCaseOperation1Output{} req.Data = output return } // OutputService7TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService7TestCaseOperation1 for usage and error information. func (c *OutputService7ProtocolTest) OutputService7TestCaseOperation1(input *OutputService7TestShapeOutputService7TestCaseOperation1Input) (*OutputService7TestShapeOutputService7TestCaseOperation1Output, error) { req, out := c.OutputService7TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService7TestShapeOutputService7TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService7TestShapeOutputService7TestCaseOperation1Output struct { _ struct{} `type:"structure"` Map map[string]*string `type:"map" flattened:"true"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService8ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService8ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService8ProtocolTest client from just a session. // svc := outputservice8protocoltest.New(mySession) // // // Create a OutputService8ProtocolTest client with additional configuration // svc := outputservice8protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService8ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService8ProtocolTest { c := p.ClientConfig("outputservice8protocoltest", cfgs...) return newOutputService8ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService8ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService8ProtocolTest { svc := &OutputService8ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice8protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService8ProtocolTest operation and runs any // custom request initialization. func (c *OutputService8ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService8TestCaseOperation1 = "OperationName" // OutputService8TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService8TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService8TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService8TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService8TestCaseOperation1Request method. // req, resp := client.OutputService8TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService8ProtocolTest) OutputService8TestCaseOperation1Request(input *OutputService8TestShapeOutputService8TestCaseOperation1Input) (req *request.Request, output *OutputService8TestShapeOutputService8TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService8TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService8TestShapeOutputService8TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService8TestShapeOutputService8TestCaseOperation1Output{} req.Data = output return } // OutputService8TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService8TestCaseOperation1 for usage and error information. func (c *OutputService8ProtocolTest) OutputService8TestCaseOperation1(input *OutputService8TestShapeOutputService8TestCaseOperation1Input) (*OutputService8TestShapeOutputService8TestCaseOperation1Output, error) { req, out := c.OutputService8TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService8TestShapeOutputService8TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService8TestShapeOutputService8TestCaseOperation1Output struct { _ struct{} `type:"structure"` Map map[string]*string `locationNameKey:"foo" locationNameValue:"bar" type:"map"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService9ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService9ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService9ProtocolTest client from just a session. // svc := outputservice9protocoltest.New(mySession) // // // Create a OutputService9ProtocolTest client with additional configuration // svc := outputservice9protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService9ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService9ProtocolTest { c := p.ClientConfig("outputservice9protocoltest", cfgs...) return newOutputService9ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService9ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService9ProtocolTest { svc := &OutputService9ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice9protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService9ProtocolTest operation and runs any // custom request initialization. func (c *OutputService9ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService9TestCaseOperation1 = "OperationName" // OutputService9TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService9TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService9TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService9TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService9TestCaseOperation1Request method. // req, resp := client.OutputService9TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService9ProtocolTest) OutputService9TestCaseOperation1Request(input *OutputService9TestShapeOutputService9TestCaseOperation1Input) (req *request.Request, output *OutputService9TestShapeOutputService9TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService9TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService9TestShapeOutputService9TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService9TestShapeOutputService9TestCaseOperation1Output{} req.Data = output return } // OutputService9TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService9TestCaseOperation1 for usage and error information. func (c *OutputService9ProtocolTest) OutputService9TestCaseOperation1(input *OutputService9TestShapeOutputService9TestCaseOperation1Input) (*OutputService9TestShapeOutputService9TestCaseOperation1Output, error) { req, out := c.OutputService9TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService9TestShapeOutputService9TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService9TestShapeOutputService9TestCaseOperation1Output struct { _ struct{} `type:"structure" payload:"Data"` Data *OutputService9TestShapeSingleStructure `type:"structure"` Header *string `location:"header" locationName:"X-Foo" type:"string"` } type OutputService9TestShapeSingleStructure struct { _ struct{} `type:"structure"` Foo *string `type:"string"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService10ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService10ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService10ProtocolTest client from just a session. // svc := outputservice10protocoltest.New(mySession) // // // Create a OutputService10ProtocolTest client with additional configuration // svc := outputservice10protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService10ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService10ProtocolTest { c := p.ClientConfig("outputservice10protocoltest", cfgs...) return newOutputService10ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService10ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService10ProtocolTest { svc := &OutputService10ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice10protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService10ProtocolTest operation and runs any // custom request initialization. func (c *OutputService10ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService10TestCaseOperation1 = "OperationName" // OutputService10TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService10TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService10TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService10TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService10TestCaseOperation1Request method. // req, resp := client.OutputService10TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService10ProtocolTest) OutputService10TestCaseOperation1Request(input *OutputService10TestShapeOutputService10TestCaseOperation1Input) (req *request.Request, output *OutputService10TestShapeOutputService10TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService10TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService10TestShapeOutputService10TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService10TestShapeOutputService10TestCaseOperation1Output{} req.Data = output return } // OutputService10TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService10TestCaseOperation1 for usage and error information. func (c *OutputService10ProtocolTest) OutputService10TestCaseOperation1(input *OutputService10TestShapeOutputService10TestCaseOperation1Input) (*OutputService10TestShapeOutputService10TestCaseOperation1Output, error) { req, out := c.OutputService10TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService10TestShapeOutputService10TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService10TestShapeOutputService10TestCaseOperation1Output struct { _ struct{} `type:"structure" payload:"Stream"` Stream []byte `type:"blob"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService11ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService11ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService11ProtocolTest client from just a session. // svc := outputservice11protocoltest.New(mySession) // // // Create a OutputService11ProtocolTest client with additional configuration // svc := outputservice11protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService11ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService11ProtocolTest { c := p.ClientConfig("outputservice11protocoltest", cfgs...) return newOutputService11ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService11ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService11ProtocolTest { svc := &OutputService11ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice11protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService11ProtocolTest operation and runs any // custom request initialization. func (c *OutputService11ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService11TestCaseOperation1 = "OperationName" // OutputService11TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService11TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService11TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService11TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService11TestCaseOperation1Request method. // req, resp := client.OutputService11TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService11ProtocolTest) OutputService11TestCaseOperation1Request(input *OutputService11TestShapeOutputService11TestCaseOperation1Input) (req *request.Request, output *OutputService11TestShapeOutputService11TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService11TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService11TestShapeOutputService11TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService11TestShapeOutputService11TestCaseOperation1Output{} req.Data = output return } // OutputService11TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService11TestCaseOperation1 for usage and error information. func (c *OutputService11ProtocolTest) OutputService11TestCaseOperation1(input *OutputService11TestShapeOutputService11TestCaseOperation1Input) (*OutputService11TestShapeOutputService11TestCaseOperation1Output, error) { req, out := c.OutputService11TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService11TestShapeOutputService11TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService11TestShapeOutputService11TestCaseOperation1Output struct { _ struct{} `type:"structure"` Char *string `location:"header" locationName:"x-char" type:"character"` Double *float64 `location:"header" locationName:"x-double" type:"double"` FalseBool *bool `location:"header" locationName:"x-false-bool" type:"boolean"` Float *float64 `location:"header" locationName:"x-float" type:"float"` Integer *int64 `location:"header" locationName:"x-int" type:"integer"` Long *int64 `location:"header" locationName:"x-long" type:"long"` Str *string `location:"header" locationName:"x-str" type:"string"` Timestamp *time.Time `location:"header" locationName:"x-timestamp" type:"timestamp" timestampFormat:"iso8601"` TrueBool *bool `location:"header" locationName:"x-true-bool" type:"boolean"` } //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OutputService12ProtocolTest struct { *client.Client } // New creates a new instance of the OutputService12ProtocolTest client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OutputService12ProtocolTest client from just a session. // svc := outputservice12protocoltest.New(mySession) // // // Create a OutputService12ProtocolTest client with additional configuration // svc := outputservice12protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func NewOutputService12ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *OutputService12ProtocolTest { c := p.ClientConfig("outputservice12protocoltest", cfgs...) return newOutputService12ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newOutputService12ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService12ProtocolTest { svc := &OutputService12ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice12protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) return svc } // newRequest creates a new request for a OutputService12ProtocolTest operation and runs any // custom request initialization. func (c *OutputService12ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) return req } const opOutputService12TestCaseOperation1 = "OperationName" // OutputService12TestCaseOperation1Request generates a "aws/request.Request" representing the // client's request for the OutputService12TestCaseOperation1 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OutputService12TestCaseOperation1 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OutputService12TestCaseOperation1 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OutputService12TestCaseOperation1Request method. // req, resp := client.OutputService12TestCaseOperation1Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OutputService12ProtocolTest) OutputService12TestCaseOperation1Request(input *OutputService12TestShapeOutputService12TestCaseOperation1Input) (req *request.Request, output *OutputService12TestShapeOutputService12TestCaseOperation1Output) { op := &request.Operation{ Name: opOutputService12TestCaseOperation1, HTTPPath: "/", } if input == nil { input = &OutputService12TestShapeOutputService12TestCaseOperation1Input{} } req = c.newRequest(op, input, output) output = &OutputService12TestShapeOutputService12TestCaseOperation1Output{} req.Data = output return } // OutputService12TestCaseOperation1 API operation for . // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for 's // API operation OutputService12TestCaseOperation1 for usage and error information. func (c *OutputService12ProtocolTest) OutputService12TestCaseOperation1(input *OutputService12TestShapeOutputService12TestCaseOperation1Input) (*OutputService12TestShapeOutputService12TestCaseOperation1Output, error) { req, out := c.OutputService12TestCaseOperation1Request(input) err := req.Send() return out, err } type OutputService12TestShapeOutputService12TestCaseOperation1Input struct { _ struct{} `type:"structure"` } type OutputService12TestShapeOutputService12TestCaseOperation1Output struct { _ struct{} `type:"structure"` Foo *string `type:"string"` } // // Tests begin here // func TestOutputService1ProtocolTestScalarMembersCase1(t *testing.T) { svc := NewOutputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("myname123falsetrue1.21.3200a2015-01-25T08:00:00Z")) req, out := svc.OutputService1TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers req.HTTPResponse.Header.Set("ImaHeader", "test") req.HTTPResponse.Header.Set("X-Foo", "abc") // unmarshal response restxml.UnmarshalMeta(req) restxml.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "a", *out.Char) assert.Equal(t, 1.3, *out.Double) assert.Equal(t, false, *out.FalseBool) assert.Equal(t, 1.2, *out.Float) assert.Equal(t, "test", *out.ImaHeader) assert.Equal(t, "abc", *out.ImaHeaderLocation) assert.Equal(t, int64(200), *out.Long) assert.Equal(t, int64(123), *out.Num) assert.Equal(t, "myname", *out.Str) assert.Equal(t, time.Unix(1.4221728e+09, 0).UTC().String(), out.Timestamp.String()) assert.Equal(t, true, *out.TrueBool) } func TestOutputService1ProtocolTestScalarMembersCase2(t *testing.T) { svc := NewOutputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("123falsetrue1.21.3200a2015-01-25T08:00:00Z")) req, out := svc.OutputService1TestCaseOperation2Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers req.HTTPResponse.Header.Set("ImaHeader", "test") req.HTTPResponse.Header.Set("X-Foo", "abc") // unmarshal response restxml.UnmarshalMeta(req) restxml.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "a", *out.Char) assert.Equal(t, 1.3, *out.Double) assert.Equal(t, false, *out.FalseBool) assert.Equal(t, 1.2, *out.Float) assert.Equal(t, "test", *out.ImaHeader) assert.Equal(t, "abc", *out.ImaHeaderLocation) assert.Equal(t, int64(200), *out.Long) assert.Equal(t, int64(123), *out.Num) assert.Equal(t, "", *out.Str) assert.Equal(t, time.Unix(1.4221728e+09, 0).UTC().String(), out.Timestamp.String()) assert.Equal(t, true, *out.TrueBool) } func TestOutputService2ProtocolTestBlobCase1(t *testing.T) { svc := NewOutputService2ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("dmFsdWU=")) req, out := svc.OutputService2TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response restxml.UnmarshalMeta(req) restxml.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "value", string(out.Blob)) } func TestOutputService3ProtocolTestListsCase1(t *testing.T) { svc := NewOutputService3ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("abc123")) req, out := svc.OutputService3TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response restxml.UnmarshalMeta(req) restxml.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "abc", *out.ListMember[0]) assert.Equal(t, "123", *out.ListMember[1]) } func TestOutputService4ProtocolTestListWithCustomMemberNameCase1(t *testing.T) { svc := NewOutputService4ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("abc123")) req, out := svc.OutputService4TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response restxml.UnmarshalMeta(req) restxml.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "abc", *out.ListMember[0]) assert.Equal(t, "123", *out.ListMember[1]) } func TestOutputService5ProtocolTestFlattenedListCase1(t *testing.T) { svc := NewOutputService5ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("abc123")) req, out := svc.OutputService5TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response restxml.UnmarshalMeta(req) restxml.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "abc", *out.ListMember[0]) assert.Equal(t, "123", *out.ListMember[1]) } func TestOutputService6ProtocolTestNormalMapCase1(t *testing.T) { svc := NewOutputService6ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("quxbarbazbam")) req, out := svc.OutputService6TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response restxml.UnmarshalMeta(req) restxml.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "bam", *out.Map["baz"].Foo) assert.Equal(t, "bar", *out.Map["qux"].Foo) } func TestOutputService7ProtocolTestFlattenedMapCase1(t *testing.T) { svc := NewOutputService7ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("quxbarbazbam")) req, out := svc.OutputService7TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response restxml.UnmarshalMeta(req) restxml.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "bam", *out.Map["baz"]) assert.Equal(t, "bar", *out.Map["qux"]) } func TestOutputService8ProtocolTestNamedMapCase1(t *testing.T) { svc := NewOutputService8ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("quxbarbazbam")) req, out := svc.OutputService8TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response restxml.UnmarshalMeta(req) restxml.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "bam", *out.Map["baz"]) assert.Equal(t, "bar", *out.Map["qux"]) } func TestOutputService9ProtocolTestXMLPayloadCase1(t *testing.T) { svc := NewOutputService9ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("abc")) req, out := svc.OutputService9TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers req.HTTPResponse.Header.Set("X-Foo", "baz") // unmarshal response restxml.UnmarshalMeta(req) restxml.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "abc", *out.Data.Foo) assert.Equal(t, "baz", *out.Header) } func TestOutputService10ProtocolTestStreamingPayloadCase1(t *testing.T) { svc := NewOutputService10ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("abc")) req, out := svc.OutputService10TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response restxml.UnmarshalMeta(req) restxml.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "abc", string(out.Stream)) } func TestOutputService11ProtocolTestScalarMembersInHeadersCase1(t *testing.T) { svc := NewOutputService11ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("")) req, out := svc.OutputService11TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers req.HTTPResponse.Header.Set("x-char", "a") req.HTTPResponse.Header.Set("x-double", "1.5") req.HTTPResponse.Header.Set("x-false-bool", "false") req.HTTPResponse.Header.Set("x-float", "1.5") req.HTTPResponse.Header.Set("x-int", "1") req.HTTPResponse.Header.Set("x-long", "100") req.HTTPResponse.Header.Set("x-str", "string") req.HTTPResponse.Header.Set("x-timestamp", "Sun, 25 Jan 2015 08:00:00 GMT") req.HTTPResponse.Header.Set("x-true-bool", "true") // unmarshal response restxml.UnmarshalMeta(req) restxml.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "a", *out.Char) assert.Equal(t, 1.5, *out.Double) assert.Equal(t, false, *out.FalseBool) assert.Equal(t, 1.5, *out.Float) assert.Equal(t, int64(1), *out.Integer) assert.Equal(t, int64(100), *out.Long) assert.Equal(t, "string", *out.Str) assert.Equal(t, time.Unix(1.4221728e+09, 0).UTC().String(), out.Timestamp.String()) assert.Equal(t, true, *out.TrueBool) } func TestOutputService12ProtocolTestEmptyStringCase1(t *testing.T) { svc := NewOutputService12ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")}) buf := bytes.NewReader([]byte("requestid")) req, out := svc.OutputService12TestCaseOperation1Request(nil) req.HTTPResponse = &http.Response{StatusCode: 200, Body: ioutil.NopCloser(buf), Header: http.Header{}} // set headers // unmarshal response restxml.UnmarshalMeta(req) restxml.Unmarshal(req) assert.NoError(t, req.Error) // assert response assert.NotNil(t, out) // ensure out variable is used assert.Equal(t, "", *out.Foo) } aws-sdk-go-1.4.22/private/protocol/unmarshal.go000066400000000000000000000011241300374646400214150ustar00rootroot00000000000000package protocol import ( "io" "io/ioutil" "github.com/aws/aws-sdk-go/aws/request" ) // UnmarshalDiscardBodyHandler is a named request handler to empty and close a response's body var UnmarshalDiscardBodyHandler = request.NamedHandler{Name: "awssdk.shared.UnmarshalDiscardBody", Fn: UnmarshalDiscardBody} // UnmarshalDiscardBody is a request handler to empty a response's body and closing it. func UnmarshalDiscardBody(r *request.Request) { if r.HTTPResponse == nil || r.HTTPResponse.Body == nil { return } io.Copy(ioutil.Discard, r.HTTPResponse.Body) r.HTTPResponse.Body.Close() } aws-sdk-go-1.4.22/private/protocol/unmarshal_test.go000066400000000000000000000014221300374646400224550ustar00rootroot00000000000000package protocol_test import ( "net/http" "strings" "testing" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/stretchr/testify/assert" ) type mockCloser struct { *strings.Reader Closed bool } func (m *mockCloser) Close() error { m.Closed = true return nil } func TestUnmarshalDrainBody(t *testing.T) { b := &mockCloser{Reader: strings.NewReader("example body")} r := &request.Request{HTTPResponse: &http.Response{ Body: b, }} protocol.UnmarshalDiscardBody(r) assert.NoError(t, r.Error) assert.Equal(t, 0, b.Len()) assert.True(t, b.Closed) } func TestUnmarshalDrainBodyNoBody(t *testing.T) { r := &request.Request{HTTPResponse: &http.Response{}} protocol.UnmarshalDiscardBody(r) assert.NoError(t, r.Error) } aws-sdk-go-1.4.22/private/protocol/xml/000077500000000000000000000000001300374646400176765ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/protocol/xml/xmlutil/000077500000000000000000000000001300374646400213745ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/protocol/xml/xmlutil/build.go000066400000000000000000000172231300374646400230270ustar00rootroot00000000000000// Package xmlutil provides XML serialization of AWS requests and responses. package xmlutil import ( "encoding/base64" "encoding/xml" "fmt" "reflect" "sort" "strconv" "time" "github.com/aws/aws-sdk-go/private/protocol" ) // BuildXML will serialize params into an xml.Encoder. // Error will be returned if the serialization of any of the params or nested values fails. func BuildXML(params interface{}, e *xml.Encoder) error { b := xmlBuilder{encoder: e, namespaces: map[string]string{}} root := NewXMLElement(xml.Name{}) if err := b.buildValue(reflect.ValueOf(params), root, ""); err != nil { return err } for _, c := range root.Children { for _, v := range c { return StructToXML(e, v, false) } } return nil } // Returns the reflection element of a value, if it is a pointer. func elemOf(value reflect.Value) reflect.Value { for value.Kind() == reflect.Ptr { value = value.Elem() } return value } // A xmlBuilder serializes values from Go code to XML type xmlBuilder struct { encoder *xml.Encoder namespaces map[string]string } // buildValue generic XMLNode builder for any type. Will build value for their specific type // struct, list, map, scalar. // // Also takes a "type" tag value to set what type a value should be converted to XMLNode as. If // type is not provided reflect will be used to determine the value's type. func (b *xmlBuilder) buildValue(value reflect.Value, current *XMLNode, tag reflect.StructTag) error { value = elemOf(value) if !value.IsValid() { // no need to handle zero values return nil } else if tag.Get("location") != "" { // don't handle non-body location values return nil } t := tag.Get("type") if t == "" { switch value.Kind() { case reflect.Struct: t = "structure" case reflect.Slice: t = "list" case reflect.Map: t = "map" } } switch t { case "structure": if field, ok := value.Type().FieldByName("_"); ok { tag = tag + reflect.StructTag(" ") + field.Tag } return b.buildStruct(value, current, tag) case "list": return b.buildList(value, current, tag) case "map": return b.buildMap(value, current, tag) default: return b.buildScalar(value, current, tag) } } // buildStruct adds a struct and its fields to the current XMLNode. All fields any any nested // types are converted to XMLNodes also. func (b *xmlBuilder) buildStruct(value reflect.Value, current *XMLNode, tag reflect.StructTag) error { if !value.IsValid() { return nil } fieldAdded := false // unwrap payloads if payload := tag.Get("payload"); payload != "" { field, _ := value.Type().FieldByName(payload) tag = field.Tag value = elemOf(value.FieldByName(payload)) if !value.IsValid() { return nil } } child := NewXMLElement(xml.Name{Local: tag.Get("locationName")}) // there is an xmlNamespace associated with this struct if prefix, uri := tag.Get("xmlPrefix"), tag.Get("xmlURI"); uri != "" { ns := xml.Attr{ Name: xml.Name{Local: "xmlns"}, Value: uri, } if prefix != "" { b.namespaces[prefix] = uri // register the namespace ns.Name.Local = "xmlns:" + prefix } child.Attr = append(child.Attr, ns) } t := value.Type() for i := 0; i < value.NumField(); i++ { member := elemOf(value.Field(i)) field := t.Field(i) if field.PkgPath != "" { continue // ignore unexported fields } mTag := field.Tag if mTag.Get("location") != "" { // skip non-body members continue } if protocol.CanSetIdempotencyToken(value.Field(i), field) { token := protocol.GetIdempotencyToken() member = reflect.ValueOf(token) } memberName := mTag.Get("locationName") if memberName == "" { memberName = field.Name mTag = reflect.StructTag(string(mTag) + ` locationName:"` + memberName + `"`) } if err := b.buildValue(member, child, mTag); err != nil { return err } fieldAdded = true } if fieldAdded { // only append this child if we have one ore more valid members current.AddChild(child) } return nil } // buildList adds the value's list items to the current XMLNode as children nodes. All // nested values in the list are converted to XMLNodes also. func (b *xmlBuilder) buildList(value reflect.Value, current *XMLNode, tag reflect.StructTag) error { if value.IsNil() { // don't build omitted lists return nil } // check for unflattened list member flattened := tag.Get("flattened") != "" xname := xml.Name{Local: tag.Get("locationName")} if flattened { for i := 0; i < value.Len(); i++ { child := NewXMLElement(xname) current.AddChild(child) if err := b.buildValue(value.Index(i), child, ""); err != nil { return err } } } else { list := NewXMLElement(xname) current.AddChild(list) for i := 0; i < value.Len(); i++ { iname := tag.Get("locationNameList") if iname == "" { iname = "member" } child := NewXMLElement(xml.Name{Local: iname}) list.AddChild(child) if err := b.buildValue(value.Index(i), child, ""); err != nil { return err } } } return nil } // buildMap adds the value's key/value pairs to the current XMLNode as children nodes. All // nested values in the map are converted to XMLNodes also. // // Error will be returned if it is unable to build the map's values into XMLNodes func (b *xmlBuilder) buildMap(value reflect.Value, current *XMLNode, tag reflect.StructTag) error { if value.IsNil() { // don't build omitted maps return nil } maproot := NewXMLElement(xml.Name{Local: tag.Get("locationName")}) current.AddChild(maproot) current = maproot kname, vname := "key", "value" if n := tag.Get("locationNameKey"); n != "" { kname = n } if n := tag.Get("locationNameValue"); n != "" { vname = n } // sorting is not required for compliance, but it makes testing easier keys := make([]string, value.Len()) for i, k := range value.MapKeys() { keys[i] = k.String() } sort.Strings(keys) for _, k := range keys { v := value.MapIndex(reflect.ValueOf(k)) mapcur := current if tag.Get("flattened") == "" { // add "entry" tag to non-flat maps child := NewXMLElement(xml.Name{Local: "entry"}) mapcur.AddChild(child) mapcur = child } kchild := NewXMLElement(xml.Name{Local: kname}) kchild.Text = k vchild := NewXMLElement(xml.Name{Local: vname}) mapcur.AddChild(kchild) mapcur.AddChild(vchild) if err := b.buildValue(v, vchild, ""); err != nil { return err } } return nil } // buildScalar will convert the value into a string and append it as a attribute or child // of the current XMLNode. // // The value will be added as an attribute if tag contains a "xmlAttribute" attribute value. // // Error will be returned if the value type is unsupported. func (b *xmlBuilder) buildScalar(value reflect.Value, current *XMLNode, tag reflect.StructTag) error { var str string switch converted := value.Interface().(type) { case string: str = converted case []byte: if !value.IsNil() { str = base64.StdEncoding.EncodeToString(converted) } case bool: str = strconv.FormatBool(converted) case int64: str = strconv.FormatInt(converted, 10) case int: str = strconv.Itoa(converted) case float64: str = strconv.FormatFloat(converted, 'f', -1, 64) case float32: str = strconv.FormatFloat(float64(converted), 'f', -1, 32) case time.Time: const ISO8601UTC = "2006-01-02T15:04:05Z" str = converted.UTC().Format(ISO8601UTC) default: return fmt.Errorf("unsupported value for param %s: %v (%s)", tag.Get("locationName"), value.Interface(), value.Type().Name()) } xname := xml.Name{Local: tag.Get("locationName")} if tag.Get("xmlAttribute") != "" { // put into current node's attribute list attr := xml.Attr{Name: xname, Value: str} current.Attr = append(current.Attr, attr) } else { // regular text node current.AddChild(&XMLNode{Name: xname, Text: str}) } return nil } aws-sdk-go-1.4.22/private/protocol/xml/xmlutil/unmarshal.go000066400000000000000000000141661300374646400237250ustar00rootroot00000000000000package xmlutil import ( "encoding/base64" "encoding/xml" "fmt" "io" "reflect" "strconv" "strings" "time" ) // UnmarshalXML deserializes an xml.Decoder into the container v. V // needs to match the shape of the XML expected to be decoded. // If the shape doesn't match unmarshaling will fail. func UnmarshalXML(v interface{}, d *xml.Decoder, wrapper string) error { n, _ := XMLToStruct(d, nil) if n.Children != nil { for _, root := range n.Children { for _, c := range root { if wrappedChild, ok := c.Children[wrapper]; ok { c = wrappedChild[0] // pull out wrapped element } err := parse(reflect.ValueOf(v), c, "") if err != nil { if err == io.EOF { return nil } return err } } } return nil } return nil } // parse deserializes any value from the XMLNode. The type tag is used to infer the type, or reflect // will be used to determine the type from r. func parse(r reflect.Value, node *XMLNode, tag reflect.StructTag) error { rtype := r.Type() if rtype.Kind() == reflect.Ptr { rtype = rtype.Elem() // check kind of actual element type } t := tag.Get("type") if t == "" { switch rtype.Kind() { case reflect.Struct: t = "structure" case reflect.Slice: t = "list" case reflect.Map: t = "map" } } switch t { case "structure": if field, ok := rtype.FieldByName("_"); ok { tag = field.Tag } return parseStruct(r, node, tag) case "list": return parseList(r, node, tag) case "map": return parseMap(r, node, tag) default: return parseScalar(r, node, tag) } } // parseStruct deserializes a structure and its fields from an XMLNode. Any nested // types in the structure will also be deserialized. func parseStruct(r reflect.Value, node *XMLNode, tag reflect.StructTag) error { t := r.Type() if r.Kind() == reflect.Ptr { if r.IsNil() { // create the structure if it's nil s := reflect.New(r.Type().Elem()) r.Set(s) r = s } r = r.Elem() t = t.Elem() } // unwrap any payloads if payload := tag.Get("payload"); payload != "" { field, _ := t.FieldByName(payload) return parseStruct(r.FieldByName(payload), node, field.Tag) } for i := 0; i < t.NumField(); i++ { field := t.Field(i) if c := field.Name[0:1]; strings.ToLower(c) == c { continue // ignore unexported fields } // figure out what this field is called name := field.Name if field.Tag.Get("flattened") != "" && field.Tag.Get("locationNameList") != "" { name = field.Tag.Get("locationNameList") } else if locName := field.Tag.Get("locationName"); locName != "" { name = locName } // try to find the field by name in elements elems := node.Children[name] if elems == nil { // try to find the field in attributes for _, a := range node.Attr { if name == a.Name.Local { // turn this into a text node for de-serializing elems = []*XMLNode{{Text: a.Value}} } } } member := r.FieldByName(field.Name) for _, elem := range elems { err := parse(member, elem, field.Tag) if err != nil { return err } } } return nil } // parseList deserializes a list of values from an XML node. Each list entry // will also be deserialized. func parseList(r reflect.Value, node *XMLNode, tag reflect.StructTag) error { t := r.Type() if tag.Get("flattened") == "" { // look at all item entries mname := "member" if name := tag.Get("locationNameList"); name != "" { mname = name } if Children, ok := node.Children[mname]; ok { if r.IsNil() { r.Set(reflect.MakeSlice(t, len(Children), len(Children))) } for i, c := range Children { err := parse(r.Index(i), c, "") if err != nil { return err } } } } else { // flattened list means this is a single element if r.IsNil() { r.Set(reflect.MakeSlice(t, 0, 0)) } childR := reflect.Zero(t.Elem()) r.Set(reflect.Append(r, childR)) err := parse(r.Index(r.Len()-1), node, "") if err != nil { return err } } return nil } // parseMap deserializes a map from an XMLNode. The direct children of the XMLNode // will also be deserialized as map entries. func parseMap(r reflect.Value, node *XMLNode, tag reflect.StructTag) error { if r.IsNil() { r.Set(reflect.MakeMap(r.Type())) } if tag.Get("flattened") == "" { // look at all child entries for _, entry := range node.Children["entry"] { parseMapEntry(r, entry, tag) } } else { // this element is itself an entry parseMapEntry(r, node, tag) } return nil } // parseMapEntry deserializes a map entry from a XML node. func parseMapEntry(r reflect.Value, node *XMLNode, tag reflect.StructTag) error { kname, vname := "key", "value" if n := tag.Get("locationNameKey"); n != "" { kname = n } if n := tag.Get("locationNameValue"); n != "" { vname = n } keys, ok := node.Children[kname] values := node.Children[vname] if ok { for i, key := range keys { keyR := reflect.ValueOf(key.Text) value := values[i] valueR := reflect.New(r.Type().Elem()).Elem() parse(valueR, value, "") r.SetMapIndex(keyR, valueR) } } return nil } // parseScaller deserializes an XMLNode value into a concrete type based on the // interface type of r. // // Error is returned if the deserialization fails due to invalid type conversion, // or unsupported interface type. func parseScalar(r reflect.Value, node *XMLNode, tag reflect.StructTag) error { switch r.Interface().(type) { case *string: r.Set(reflect.ValueOf(&node.Text)) return nil case []byte: b, err := base64.StdEncoding.DecodeString(node.Text) if err != nil { return err } r.Set(reflect.ValueOf(b)) case *bool: v, err := strconv.ParseBool(node.Text) if err != nil { return err } r.Set(reflect.ValueOf(&v)) case *int64: v, err := strconv.ParseInt(node.Text, 10, 64) if err != nil { return err } r.Set(reflect.ValueOf(&v)) case *float64: v, err := strconv.ParseFloat(node.Text, 64) if err != nil { return err } r.Set(reflect.ValueOf(&v)) case *time.Time: const ISO8601UTC = "2006-01-02T15:04:05Z" t, err := time.Parse(ISO8601UTC, node.Text) if err != nil { return err } r.Set(reflect.ValueOf(&t)) default: return fmt.Errorf("unsupported value: %v (%s)", r.Interface(), r.Type()) } return nil } aws-sdk-go-1.4.22/private/protocol/xml/xmlutil/xml_to_struct.go000066400000000000000000000047131300374646400246360ustar00rootroot00000000000000package xmlutil import ( "encoding/xml" "io" "sort" ) // A XMLNode contains the values to be encoded or decoded. type XMLNode struct { Name xml.Name `json:",omitempty"` Children map[string][]*XMLNode `json:",omitempty"` Text string `json:",omitempty"` Attr []xml.Attr `json:",omitempty"` } // NewXMLElement returns a pointer to a new XMLNode initialized to default values. func NewXMLElement(name xml.Name) *XMLNode { return &XMLNode{ Name: name, Children: map[string][]*XMLNode{}, Attr: []xml.Attr{}, } } // AddChild adds child to the XMLNode. func (n *XMLNode) AddChild(child *XMLNode) { if _, ok := n.Children[child.Name.Local]; !ok { n.Children[child.Name.Local] = []*XMLNode{} } n.Children[child.Name.Local] = append(n.Children[child.Name.Local], child) } // XMLToStruct converts a xml.Decoder stream to XMLNode with nested values. func XMLToStruct(d *xml.Decoder, s *xml.StartElement) (*XMLNode, error) { out := &XMLNode{} for { tok, err := d.Token() if tok == nil || err == io.EOF { break } if err != nil { return out, err } switch typed := tok.(type) { case xml.CharData: out.Text = string(typed.Copy()) case xml.StartElement: el := typed.Copy() out.Attr = el.Attr if out.Children == nil { out.Children = map[string][]*XMLNode{} } name := typed.Name.Local slice := out.Children[name] if slice == nil { slice = []*XMLNode{} } node, e := XMLToStruct(d, &el) if e != nil { return out, e } node.Name = typed.Name slice = append(slice, node) out.Children[name] = slice case xml.EndElement: if s != nil && s.Name.Local == typed.Name.Local { // matching end token return out, nil } } } return out, nil } // StructToXML writes an XMLNode to a xml.Encoder as tokens. func StructToXML(e *xml.Encoder, node *XMLNode, sorted bool) error { e.EncodeToken(xml.StartElement{Name: node.Name, Attr: node.Attr}) if node.Text != "" { e.EncodeToken(xml.CharData([]byte(node.Text))) } else if sorted { sortedNames := []string{} for k := range node.Children { sortedNames = append(sortedNames, k) } sort.Strings(sortedNames) for _, k := range sortedNames { for _, v := range node.Children[k] { StructToXML(e, v, sorted) } } } else { for _, c := range node.Children { for _, v := range c { StructToXML(e, v, sorted) } } } e.EncodeToken(xml.EndElement{Name: node.Name}) return e.Flush() } aws-sdk-go-1.4.22/private/signer/000077500000000000000000000000001300374646400165245ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/signer/v2/000077500000000000000000000000001300374646400170535ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/signer/v2/v2.go000066400000000000000000000111671300374646400177370ustar00rootroot00000000000000package v2 import ( "crypto/hmac" "crypto/sha256" "encoding/base64" "errors" "fmt" "net/http" "net/url" "sort" "strings" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/aws/request" ) var ( errInvalidMethod = errors.New("v2 signer only handles HTTP POST") ) const ( signatureVersion = "2" signatureMethod = "HmacSHA256" timeFormat = "2006-01-02T15:04:05Z" ) type signer struct { // Values that must be populated from the request Request *http.Request Time time.Time Credentials *credentials.Credentials Debug aws.LogLevelType Logger aws.Logger Query url.Values stringToSign string signature string } // SignRequestHandler is a named request handler the SDK will use to sign // service client request with using the V4 signature. var SignRequestHandler = request.NamedHandler{ Name: "v2.SignRequestHandler", Fn: SignSDKRequest, } // SignSDKRequest requests with signature version 2. // // Will sign the requests with the service config's Credentials object // Signing is skipped if the credentials is the credentials.AnonymousCredentials // object. func SignSDKRequest(req *request.Request) { // If the request does not need to be signed ignore the signing of the // request if the AnonymousCredentials object is used. if req.Config.Credentials == credentials.AnonymousCredentials { return } if req.HTTPRequest.Method != "POST" && req.HTTPRequest.Method != "GET" { // The V2 signer only supports GET and POST req.Error = errInvalidMethod return } v2 := signer{ Request: req.HTTPRequest, Time: req.Time, Credentials: req.Config.Credentials, Debug: req.Config.LogLevel.Value(), Logger: req.Config.Logger, } req.Error = v2.Sign() if req.Error != nil { return } if req.HTTPRequest.Method == "POST" { // Set the body of the request based on the modified query parameters req.SetStringBody(v2.Query.Encode()) // Now that the body has changed, remove any Content-Length header, // because it will be incorrect req.HTTPRequest.ContentLength = 0 req.HTTPRequest.Header.Del("Content-Length") } else { req.HTTPRequest.URL.RawQuery = v2.Query.Encode() } } func (v2 *signer) Sign() error { credValue, err := v2.Credentials.Get() if err != nil { return err } if v2.Request.Method == "POST" { // Parse the HTTP request to obtain the query parameters that will // be used to build the string to sign. Note that because the HTTP // request will need to be modified, the PostForm and Form properties // are reset to nil after parsing. v2.Request.ParseForm() v2.Query = v2.Request.PostForm v2.Request.PostForm = nil v2.Request.Form = nil } else { v2.Query = v2.Request.URL.Query() } // Set new query parameters v2.Query.Set("AWSAccessKeyId", credValue.AccessKeyID) v2.Query.Set("SignatureVersion", signatureVersion) v2.Query.Set("SignatureMethod", signatureMethod) v2.Query.Set("Timestamp", v2.Time.UTC().Format(timeFormat)) if credValue.SessionToken != "" { v2.Query.Set("SecurityToken", credValue.SessionToken) } // in case this is a retry, ensure no signature present v2.Query.Del("Signature") method := v2.Request.Method host := v2.Request.URL.Host path := v2.Request.URL.Path if path == "" { path = "/" } // obtain all of the query keys and sort them queryKeys := make([]string, 0, len(v2.Query)) for key := range v2.Query { queryKeys = append(queryKeys, key) } sort.Strings(queryKeys) // build URL-encoded query keys and values queryKeysAndValues := make([]string, len(queryKeys)) for i, key := range queryKeys { k := strings.Replace(url.QueryEscape(key), "+", "%20", -1) v := strings.Replace(url.QueryEscape(v2.Query.Get(key)), "+", "%20", -1) queryKeysAndValues[i] = k + "=" + v } // join into one query string query := strings.Join(queryKeysAndValues, "&") // build the canonical string for the V2 signature v2.stringToSign = strings.Join([]string{ method, host, path, query, }, "\n") hash := hmac.New(sha256.New, []byte(credValue.SecretAccessKey)) hash.Write([]byte(v2.stringToSign)) v2.signature = base64.StdEncoding.EncodeToString(hash.Sum(nil)) v2.Query.Set("Signature", v2.signature) if v2.Debug.Matches(aws.LogDebugWithSigning) { v2.logSigningInfo() } return nil } const logSignInfoMsg = `DEBUG: Request Signature: ---[ STRING TO SIGN ]-------------------------------- %s ---[ SIGNATURE ]------------------------------------- %s -----------------------------------------------------` func (v2 *signer) logSigningInfo() { msg := fmt.Sprintf(logSignInfoMsg, v2.stringToSign, v2.Query.Get("Signature")) v2.Logger.Log(msg) } aws-sdk-go-1.4.22/private/signer/v2/v2_test.go000066400000000000000000000122711300374646400207730ustar00rootroot00000000000000package v2 import ( "bytes" "net/http" "net/url" "os" "testing" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting" "github.com/stretchr/testify/assert" ) type signerBuilder struct { ServiceName string Region string SignTime time.Time Query url.Values Method string SessionToken string } func (sb signerBuilder) BuildSigner() signer { endpoint := "https://" + sb.ServiceName + "." + sb.Region + ".amazonaws.com" var req *http.Request if sb.Method == "POST" { body := []byte(sb.Query.Encode()) reader := bytes.NewReader(body) req, _ = http.NewRequest(sb.Method, endpoint, reader) req.Header.Add("Content-Type", "application/x-www-form-urlencoded") req.Header.Add("Content-Length", string(len(body))) } else { req, _ = http.NewRequest(sb.Method, endpoint, nil) req.URL.RawQuery = sb.Query.Encode() } sig := signer{ Request: req, Time: sb.SignTime, Credentials: credentials.NewStaticCredentials( "AKID", "SECRET", sb.SessionToken), } if os.Getenv("DEBUG") != "" { sig.Debug = aws.LogDebug sig.Logger = aws.NewDefaultLogger() } return sig } func TestSignRequestWithAndWithoutSession(t *testing.T) { assert := assert.New(t) // have to create more than once, so use a function newQuery := func() url.Values { query := make(url.Values) query.Add("Action", "CreateDomain") query.Add("DomainName", "TestDomain-1437033376") query.Add("Version", "2009-04-15") return query } // create request without a SecurityToken (session) in the credentials query := newQuery() timestamp := time.Date(2015, 7, 16, 7, 56, 16, 0, time.UTC) builder := signerBuilder{ Method: "POST", ServiceName: "sdb", Region: "ap-southeast-2", SignTime: timestamp, Query: query, } signer := builder.BuildSigner() err := signer.Sign() assert.NoError(err) assert.Equal("tm4dX8Ks7pzFSVHz7qHdoJVXKRLuC4gWz9eti60d8ks=", signer.signature) assert.Equal(8, len(signer.Query)) assert.Equal("AKID", signer.Query.Get("AWSAccessKeyId")) assert.Equal("2015-07-16T07:56:16Z", signer.Query.Get("Timestamp")) assert.Equal("HmacSHA256", signer.Query.Get("SignatureMethod")) assert.Equal("2", signer.Query.Get("SignatureVersion")) assert.Equal("tm4dX8Ks7pzFSVHz7qHdoJVXKRLuC4gWz9eti60d8ks=", signer.Query.Get("Signature")) assert.Equal("CreateDomain", signer.Query.Get("Action")) assert.Equal("TestDomain-1437033376", signer.Query.Get("DomainName")) assert.Equal("2009-04-15", signer.Query.Get("Version")) // should not have a SecurityToken parameter _, ok := signer.Query["SecurityToken"] assert.False(ok) // now sign again, this time with a security token (session) query = newQuery() builder.SessionToken = "SESSION" signer = builder.BuildSigner() err = signer.Sign() assert.NoError(err) assert.Equal("Ch6qv3rzXB1SLqY2vFhsgA1WQ9rnQIE2WJCigOvAJwI=", signer.signature) assert.Equal(9, len(signer.Query)) // expect one more parameter assert.Equal("Ch6qv3rzXB1SLqY2vFhsgA1WQ9rnQIE2WJCigOvAJwI=", signer.Query.Get("Signature")) assert.Equal("SESSION", signer.Query.Get("SecurityToken")) } func TestMoreComplexSignRequest(t *testing.T) { assert := assert.New(t) query := make(url.Values) query.Add("Action", "PutAttributes") query.Add("DomainName", "TestDomain-1437041569") query.Add("Version", "2009-04-15") query.Add("Attribute.2.Name", "Attr2") query.Add("Attribute.2.Value", "Value2") query.Add("Attribute.2.Replace", "true") query.Add("Attribute.1.Name", "Attr1-%\\+ %") query.Add("Attribute.1.Value", " \tValue1 +!@#$%^&*(){}[]\"';:?/.>,<\x12\x00") query.Add("Attribute.1.Replace", "true") query.Add("ItemName", "Item 1") timestamp := time.Date(2015, 7, 16, 10, 12, 51, 0, time.UTC) builder := signerBuilder{ Method: "POST", ServiceName: "sdb", Region: "ap-southeast-2", SignTime: timestamp, Query: query, SessionToken: "SESSION", } signer := builder.BuildSigner() err := signer.Sign() assert.NoError(err) assert.Equal("WNdE62UJKLKoA6XncVY/9RDbrKmcVMdQPQOTAs8SgwQ=", signer.signature) } func TestGet(t *testing.T) { assert := assert.New(t) svc := awstesting.NewClient(&aws.Config{ Credentials: credentials.NewStaticCredentials("AKID", "SECRET", "SESSION"), Region: aws.String("ap-southeast-2"), }) r := svc.NewRequest( &request.Operation{ Name: "OpName", HTTPMethod: "GET", HTTPPath: "/", }, nil, nil, ) r.Build() assert.Equal("GET", r.HTTPRequest.Method) assert.Equal("", r.HTTPRequest.URL.Query().Get("Signature")) SignSDKRequest(r) assert.NoError(r.Error) t.Logf("Signature: %s", r.HTTPRequest.URL.Query().Get("Signature")) assert.NotEqual("", r.HTTPRequest.URL.Query().Get("Signature")) } func TestAnonymousCredentials(t *testing.T) { assert := assert.New(t) svc := awstesting.NewClient(&aws.Config{ Credentials: credentials.AnonymousCredentials, Region: aws.String("ap-southeast-2"), }) r := svc.NewRequest( &request.Operation{ Name: "PutAttributes", HTTPMethod: "POST", HTTPPath: "/", }, nil, nil, ) r.Build() SignSDKRequest(r) req := r.HTTPRequest req.ParseForm() assert.Empty(req.PostForm.Get("Signature")) } aws-sdk-go-1.4.22/private/util/000077500000000000000000000000001300374646400162125ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/util/sort_keys.go000066400000000000000000000004051300374646400205620ustar00rootroot00000000000000package util import "sort" // SortedKeys returns a sorted slice of keys of a map. func SortedKeys(m map[string]interface{}) []string { i, sorted := 0, make([]string, len(m)) for k := range m { sorted[i] = k i++ } sort.Strings(sorted) return sorted } aws-sdk-go-1.4.22/private/util/util.go000066400000000000000000000050451300374646400175220ustar00rootroot00000000000000package util import ( "bytes" "encoding/xml" "fmt" "go/format" "io" "reflect" "regexp" "strings" "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil" ) // GoFmt returns the Go formated string of the input. // // Panics if the format fails. func GoFmt(buf string) string { formatted, err := format.Source([]byte(buf)) if err != nil { panic(fmt.Errorf("%s\nOriginal code:\n%s", err.Error(), buf)) } return string(formatted) } var reTrim = regexp.MustCompile(`\s{2,}`) // Trim removes all leading and trailing white space. // // All consecutive spaces will be reduced to a single space. func Trim(s string) string { return strings.TrimSpace(reTrim.ReplaceAllString(s, " ")) } // Capitalize capitalizes the first character of the string. func Capitalize(s string) string { if len(s) == 1 { return strings.ToUpper(s) } return strings.ToUpper(s[0:1]) + s[1:] } // SortXML sorts the reader's XML elements func SortXML(r io.Reader) string { var buf bytes.Buffer d := xml.NewDecoder(r) root, _ := xmlutil.XMLToStruct(d, nil) e := xml.NewEncoder(&buf) xmlutil.StructToXML(e, root, true) return buf.String() } // PrettyPrint generates a human readable representation of the value v. // All values of v are recursively found and pretty printed also. func PrettyPrint(v interface{}) string { value := reflect.ValueOf(v) switch value.Kind() { case reflect.Struct: str := fullName(value.Type()) + "{\n" for i := 0; i < value.NumField(); i++ { l := string(value.Type().Field(i).Name[0]) if strings.ToUpper(l) == l { str += value.Type().Field(i).Name + ": " str += PrettyPrint(value.Field(i).Interface()) str += ",\n" } } str += "}" return str case reflect.Map: str := "map[" + fullName(value.Type().Key()) + "]" + fullName(value.Type().Elem()) + "{\n" for _, k := range value.MapKeys() { str += "\"" + k.String() + "\": " str += PrettyPrint(value.MapIndex(k).Interface()) str += ",\n" } str += "}" return str case reflect.Ptr: if e := value.Elem(); e.IsValid() { return "&" + PrettyPrint(e.Interface()) } return "nil" case reflect.Slice: str := "[]" + fullName(value.Type().Elem()) + "{\n" for i := 0; i < value.Len(); i++ { str += PrettyPrint(value.Index(i).Interface()) str += ",\n" } str += "}" return str default: return fmt.Sprintf("%#v", v) } } func pkgName(t reflect.Type) string { pkg := t.PkgPath() c := strings.Split(pkg, "/") return c[len(c)-1] } func fullName(t reflect.Type) string { if pkg := pkgName(t); pkg != "" { return pkg + "." + t.Name() } return t.Name() } aws-sdk-go-1.4.22/private/waiter/000077500000000000000000000000001300374646400165305ustar00rootroot00000000000000aws-sdk-go-1.4.22/private/waiter/waiter.go000066400000000000000000000065411300374646400203600ustar00rootroot00000000000000package waiter import ( "fmt" "reflect" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) // A Config provides a collection of configuration values to setup a generated // waiter code with. type Config struct { Name string Delay int MaxAttempts int Operation string Acceptors []WaitAcceptor } // A WaitAcceptor provides the information needed to wait for an API operation // to complete. type WaitAcceptor struct { Expected interface{} Matcher string State string Argument string } // A Waiter provides waiting for an operation to complete. type Waiter struct { Config Client interface{} Input interface{} } // Wait waits for an operation to complete, expire max attempts, or fail. Error // is returned if the operation fails. func (w *Waiter) Wait() error { client := reflect.ValueOf(w.Client) in := reflect.ValueOf(w.Input) method := client.MethodByName(w.Config.Operation + "Request") for i := 0; i < w.MaxAttempts; i++ { res := method.Call([]reflect.Value{in}) req := res[0].Interface().(*request.Request) req.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Waiter")) err := req.Send() for _, a := range w.Acceptors { result := false var vals []interface{} switch a.Matcher { case "pathAll", "path": // Require all matches to be equal for result to match vals, _ = awsutil.ValuesAtPath(req.Data, a.Argument) if len(vals) == 0 { break } result = true for _, val := range vals { if !awsutil.DeepEqual(val, a.Expected) { result = false break } } case "pathAny": // Only a single match needs to equal for the result to match vals, _ = awsutil.ValuesAtPath(req.Data, a.Argument) for _, val := range vals { if awsutil.DeepEqual(val, a.Expected) { result = true break } } case "status": s := a.Expected.(int) result = s == req.HTTPResponse.StatusCode case "error": if aerr, ok := err.(awserr.Error); ok { result = aerr.Code() == a.Expected.(string) } case "pathList": // ignored matcher default: logf(client, "WARNING: Waiter for %s encountered unexpected matcher: %s", w.Config.Operation, a.Matcher) } if !result { // If there was no matching result found there is nothing more to do // for this response, retry the request. continue } switch a.State { case "success": // waiter completed return nil case "failure": // Waiter failure state triggered return awserr.New("ResourceNotReady", fmt.Sprintf("failed waiting for successful resource state"), err) case "retry": // clear the error and retry the operation err = nil default: logf(client, "WARNING: Waiter for %s encountered unexpected state: %s", w.Config.Operation, a.State) } } if err != nil { return err } time.Sleep(time.Second * time.Duration(w.Delay)) } return awserr.New("ResourceNotReady", fmt.Sprintf("exceeded %d wait attempts", w.MaxAttempts), nil) } func logf(client reflect.Value, msg string, args ...interface{}) { cfgVal := client.FieldByName("Config") if !cfgVal.IsValid() { return } if cfg, ok := cfgVal.Interface().(*aws.Config); ok && cfg.Logger != nil { cfg.Logger.Log(fmt.Sprintf(msg, args...)) } } aws-sdk-go-1.4.22/private/waiter/waiter_test.go000066400000000000000000000205641300374646400214200ustar00rootroot00000000000000package waiter_test import ( "bytes" "io/ioutil" "net/http" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/private/waiter" ) type mockClient struct { *client.Client } type MockInput struct{} type MockOutput struct { States []*MockState } type MockState struct { State *string } func (c *mockClient) MockRequest(input *MockInput) (*request.Request, *MockOutput) { op := &request.Operation{ Name: "Mock", HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &MockInput{} } output := &MockOutput{} req := c.NewRequest(op, input, output) req.Data = output return req, output } func TestWaiterPathAll(t *testing.T) { svc := &mockClient{Client: awstesting.NewClient(&aws.Config{ Region: aws.String("mock-region"), })} svc.Handlers.Send.Clear() // mock sending svc.Handlers.Unmarshal.Clear() svc.Handlers.UnmarshalMeta.Clear() svc.Handlers.ValidateResponse.Clear() reqNum := 0 resps := []*MockOutput{ { // Request 1 States: []*MockState{ {State: aws.String("pending")}, {State: aws.String("pending")}, }, }, { // Request 2 States: []*MockState{ {State: aws.String("running")}, {State: aws.String("pending")}, }, }, { // Request 3 States: []*MockState{ {State: aws.String("running")}, {State: aws.String("running")}, }, }, } numBuiltReq := 0 svc.Handlers.Build.PushBack(func(r *request.Request) { numBuiltReq++ }) svc.Handlers.Unmarshal.PushBack(func(r *request.Request) { if reqNum >= len(resps) { assert.Fail(t, "too many polling requests made") return } r.Data = resps[reqNum] reqNum++ }) waiterCfg := waiter.Config{ Operation: "Mock", Delay: 0, MaxAttempts: 10, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "States[].State", Expected: "running", }, }, } w := waiter.Waiter{ Client: svc, Input: &MockInput{}, Config: waiterCfg, } err := w.Wait() assert.NoError(t, err) assert.Equal(t, 3, numBuiltReq) assert.Equal(t, 3, reqNum) } func TestWaiterPath(t *testing.T) { svc := &mockClient{Client: awstesting.NewClient(&aws.Config{ Region: aws.String("mock-region"), })} svc.Handlers.Send.Clear() // mock sending svc.Handlers.Unmarshal.Clear() svc.Handlers.UnmarshalMeta.Clear() svc.Handlers.ValidateResponse.Clear() reqNum := 0 resps := []*MockOutput{ { // Request 1 States: []*MockState{ {State: aws.String("pending")}, {State: aws.String("pending")}, }, }, { // Request 2 States: []*MockState{ {State: aws.String("running")}, {State: aws.String("pending")}, }, }, { // Request 3 States: []*MockState{ {State: aws.String("running")}, {State: aws.String("running")}, }, }, } numBuiltReq := 0 svc.Handlers.Build.PushBack(func(r *request.Request) { numBuiltReq++ }) svc.Handlers.Unmarshal.PushBack(func(r *request.Request) { if reqNum >= len(resps) { assert.Fail(t, "too many polling requests made") return } r.Data = resps[reqNum] reqNum++ }) waiterCfg := waiter.Config{ Operation: "Mock", Delay: 0, MaxAttempts: 10, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "path", Argument: "States[].State", Expected: "running", }, }, } w := waiter.Waiter{ Client: svc, Input: &MockInput{}, Config: waiterCfg, } err := w.Wait() assert.NoError(t, err) assert.Equal(t, 3, numBuiltReq) assert.Equal(t, 3, reqNum) } func TestWaiterFailure(t *testing.T) { svc := &mockClient{Client: awstesting.NewClient(&aws.Config{ Region: aws.String("mock-region"), })} svc.Handlers.Send.Clear() // mock sending svc.Handlers.Unmarshal.Clear() svc.Handlers.UnmarshalMeta.Clear() svc.Handlers.ValidateResponse.Clear() reqNum := 0 resps := []*MockOutput{ { // Request 1 States: []*MockState{ {State: aws.String("pending")}, {State: aws.String("pending")}, }, }, { // Request 2 States: []*MockState{ {State: aws.String("running")}, {State: aws.String("pending")}, }, }, { // Request 3 States: []*MockState{ {State: aws.String("running")}, {State: aws.String("stopping")}, }, }, } numBuiltReq := 0 svc.Handlers.Build.PushBack(func(r *request.Request) { numBuiltReq++ }) svc.Handlers.Unmarshal.PushBack(func(r *request.Request) { if reqNum >= len(resps) { assert.Fail(t, "too many polling requests made") return } r.Data = resps[reqNum] reqNum++ }) waiterCfg := waiter.Config{ Operation: "Mock", Delay: 0, MaxAttempts: 10, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "States[].State", Expected: "running", }, { State: "failure", Matcher: "pathAny", Argument: "States[].State", Expected: "stopping", }, }, } w := waiter.Waiter{ Client: svc, Input: &MockInput{}, Config: waiterCfg, } err := w.Wait().(awserr.Error) assert.Error(t, err) assert.Equal(t, "ResourceNotReady", err.Code()) assert.Equal(t, "failed waiting for successful resource state", err.Message()) assert.Equal(t, 3, numBuiltReq) assert.Equal(t, 3, reqNum) } func TestWaiterError(t *testing.T) { svc := &mockClient{Client: awstesting.NewClient(&aws.Config{ Region: aws.String("mock-region"), })} svc.Handlers.Send.Clear() // mock sending svc.Handlers.Unmarshal.Clear() svc.Handlers.UnmarshalMeta.Clear() svc.Handlers.UnmarshalError.Clear() svc.Handlers.ValidateResponse.Clear() reqNum := 0 resps := []*MockOutput{ { // Request 1 States: []*MockState{ {State: aws.String("pending")}, {State: aws.String("pending")}, }, }, { // Request 2, error case }, { // Request 3 States: []*MockState{ {State: aws.String("running")}, {State: aws.String("running")}, }, }, } numBuiltReq := 0 svc.Handlers.Build.PushBack(func(r *request.Request) { numBuiltReq++ }) svc.Handlers.Send.PushBack(func(r *request.Request) { code := 200 if reqNum == 1 { code = 400 } r.HTTPResponse = &http.Response{ StatusCode: code, Status: http.StatusText(code), Body: ioutil.NopCloser(bytes.NewReader([]byte{})), } }) svc.Handlers.Unmarshal.PushBack(func(r *request.Request) { if reqNum >= len(resps) { assert.Fail(t, "too many polling requests made") return } r.Data = resps[reqNum] reqNum++ }) svc.Handlers.UnmarshalMeta.PushBack(func(r *request.Request) { if reqNum == 1 { r.Error = awserr.New("MockException", "mock exception message", nil) // If there was an error unmarshal error will be called instead of unmarshal // need to increment count here also reqNum++ } }) waiterCfg := waiter.Config{ Operation: "Mock", Delay: 0, MaxAttempts: 10, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "States[].State", Expected: "running", }, { State: "retry", Matcher: "error", Argument: "", Expected: "MockException", }, }, } w := waiter.Waiter{ Client: svc, Input: &MockInput{}, Config: waiterCfg, } err := w.Wait() assert.NoError(t, err) assert.Equal(t, 3, numBuiltReq) assert.Equal(t, 3, reqNum) } func TestWaiterStatus(t *testing.T) { svc := &mockClient{Client: awstesting.NewClient(&aws.Config{ Region: aws.String("mock-region"), })} svc.Handlers.Send.Clear() // mock sending svc.Handlers.Unmarshal.Clear() svc.Handlers.UnmarshalMeta.Clear() svc.Handlers.ValidateResponse.Clear() reqNum := 0 svc.Handlers.Build.PushBack(func(r *request.Request) { reqNum++ }) svc.Handlers.Send.PushBack(func(r *request.Request) { code := 200 if reqNum == 3 { code = 404 r.Error = awserr.New("NotFound", "Not Found", nil) } r.HTTPResponse = &http.Response{ StatusCode: code, Status: http.StatusText(code), Body: ioutil.NopCloser(bytes.NewReader([]byte{})), } }) waiterCfg := waiter.Config{ Operation: "Mock", Delay: 0, MaxAttempts: 10, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "status", Argument: "", Expected: 404, }, }, } w := waiter.Waiter{ Client: svc, Input: &MockInput{}, Config: waiterCfg, } err := w.Wait() assert.NoError(t, err) assert.Equal(t, 3, reqNum) } aws-sdk-go-1.4.22/sdk.go000066400000000000000000000003341300374646400146730ustar00rootroot00000000000000// Package sdk is the official AWS SDK for the Go programming language. // // See our Developer Guide for information for on getting started and using // the SDK. // // https://github.com/aws/aws-sdk-go/wiki package sdk aws-sdk-go-1.4.22/service/000077500000000000000000000000001300374646400152235ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/acm/000077500000000000000000000000001300374646400157635ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/acm/acmiface/000077500000000000000000000000001300374646400175135ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/acm/acmiface/interface.go000066400000000000000000000102441300374646400220030ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package acmiface provides an interface to enable mocking the AWS Certificate Manager service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package acmiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/acm" ) // ACMAPI provides an interface to enable mocking the // acm.ACM service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Certificate Manager. // func myFunc(svc acmiface.ACMAPI) bool { // // Make svc.AddTagsToCertificate request // } // // func main() { // sess := session.New() // svc := acm.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockACMClient struct { // acmiface.ACMAPI // } // func (m *mockACMClient) AddTagsToCertificate(input *acm.AddTagsToCertificateInput) (*acm.AddTagsToCertificateOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockACMClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type ACMAPI interface { AddTagsToCertificateRequest(*acm.AddTagsToCertificateInput) (*request.Request, *acm.AddTagsToCertificateOutput) AddTagsToCertificate(*acm.AddTagsToCertificateInput) (*acm.AddTagsToCertificateOutput, error) DeleteCertificateRequest(*acm.DeleteCertificateInput) (*request.Request, *acm.DeleteCertificateOutput) DeleteCertificate(*acm.DeleteCertificateInput) (*acm.DeleteCertificateOutput, error) DescribeCertificateRequest(*acm.DescribeCertificateInput) (*request.Request, *acm.DescribeCertificateOutput) DescribeCertificate(*acm.DescribeCertificateInput) (*acm.DescribeCertificateOutput, error) GetCertificateRequest(*acm.GetCertificateInput) (*request.Request, *acm.GetCertificateOutput) GetCertificate(*acm.GetCertificateInput) (*acm.GetCertificateOutput, error) ImportCertificateRequest(*acm.ImportCertificateInput) (*request.Request, *acm.ImportCertificateOutput) ImportCertificate(*acm.ImportCertificateInput) (*acm.ImportCertificateOutput, error) ListCertificatesRequest(*acm.ListCertificatesInput) (*request.Request, *acm.ListCertificatesOutput) ListCertificates(*acm.ListCertificatesInput) (*acm.ListCertificatesOutput, error) ListCertificatesPages(*acm.ListCertificatesInput, func(*acm.ListCertificatesOutput, bool) bool) error ListTagsForCertificateRequest(*acm.ListTagsForCertificateInput) (*request.Request, *acm.ListTagsForCertificateOutput) ListTagsForCertificate(*acm.ListTagsForCertificateInput) (*acm.ListTagsForCertificateOutput, error) RemoveTagsFromCertificateRequest(*acm.RemoveTagsFromCertificateInput) (*request.Request, *acm.RemoveTagsFromCertificateOutput) RemoveTagsFromCertificate(*acm.RemoveTagsFromCertificateInput) (*acm.RemoveTagsFromCertificateOutput, error) RequestCertificateRequest(*acm.RequestCertificateInput) (*request.Request, *acm.RequestCertificateOutput) RequestCertificate(*acm.RequestCertificateInput) (*acm.RequestCertificateOutput, error) ResendValidationEmailRequest(*acm.ResendValidationEmailInput) (*request.Request, *acm.ResendValidationEmailOutput) ResendValidationEmail(*acm.ResendValidationEmailInput) (*acm.ResendValidationEmailOutput, error) } var _ ACMAPI = (*acm.ACM)(nil) aws-sdk-go-1.4.22/service/acm/api.go000066400000000000000000002121031300374646400170620ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package acm provides a client for AWS Certificate Manager. package acm import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opAddTagsToCertificate = "AddTagsToCertificate" // AddTagsToCertificateRequest generates a "aws/request.Request" representing the // client's request for the AddTagsToCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddTagsToCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddTagsToCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddTagsToCertificateRequest method. // req, resp := client.AddTagsToCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ACM) AddTagsToCertificateRequest(input *AddTagsToCertificateInput) (req *request.Request, output *AddTagsToCertificateOutput) { op := &request.Operation{ Name: opAddTagsToCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddTagsToCertificateInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AddTagsToCertificateOutput{} req.Data = output return } // AddTagsToCertificate API operation for AWS Certificate Manager. // // Adds one or more tags to an ACM Certificate. Tags are labels that you can // use to identify and organize your AWS resources. Each tag consists of a key // and an optional value. You specify the certificate on input by its Amazon // Resource Name (ARN). You specify the tag by using a key-value pair. // // You can apply a tag to just one certificate if you want to identify a specific // characteristic of that certificate, or you can apply the same tag to multiple // certificates if you want to filter for a common relationship among those // certificates. Similarly, you can apply the same tag to multiple resources // if you want to specify a relationship among those resources. For example, // you can add the same tag to an ACM Certificate and an Elastic Load Balancing // load balancer to indicate that they are both used by the same website. For // more information, see Tagging ACM Certificates (http://docs.aws.amazon.com/acm/latest/userguide/tags.html). // // To remove one or more tags, use the RemoveTagsFromCertificate action. To // view all of the tags that have been applied to the certificate, use the ListTagsForCertificate // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Certificate Manager's // API operation AddTagsToCertificate for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified certificate cannot be found in the caller's account, or the // caller's account cannot be found. // // * InvalidArnException // The requested Amazon Resource Name (ARN) does not refer to an existing resource. // // * InvalidTagException // One or both of the values that make up the key-value pair is not valid. For // example, you cannot specify a tag value that begins with aws:. // // * TooManyTagsException // The request contains too many tags. Try the request again with fewer tags. // func (c *ACM) AddTagsToCertificate(input *AddTagsToCertificateInput) (*AddTagsToCertificateOutput, error) { req, out := c.AddTagsToCertificateRequest(input) err := req.Send() return out, err } const opDeleteCertificate = "DeleteCertificate" // DeleteCertificateRequest generates a "aws/request.Request" representing the // client's request for the DeleteCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteCertificateRequest method. // req, resp := client.DeleteCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ACM) DeleteCertificateRequest(input *DeleteCertificateInput) (req *request.Request, output *DeleteCertificateOutput) { op := &request.Operation{ Name: opDeleteCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteCertificateInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteCertificateOutput{} req.Data = output return } // DeleteCertificate API operation for AWS Certificate Manager. // // Deletes an ACM Certificate and its associated private key. If this action // succeeds, the certificate no longer appears in the list of ACM Certificates // that can be displayed by calling the ListCertificates action or be retrieved // by calling the GetCertificate action. The certificate will not be available // for use by other AWS services. // // You cannot delete an ACM Certificate that is being used by another AWS service. // To delete a certificate that is in use, the certificate association must // first be removed. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Certificate Manager's // API operation DeleteCertificate for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified certificate cannot be found in the caller's account, or the // caller's account cannot be found. // // * ResourceInUseException // The certificate is in use by another AWS service in the caller's account. // Remove the association and try again. // // * InvalidArnException // The requested Amazon Resource Name (ARN) does not refer to an existing resource. // func (c *ACM) DeleteCertificate(input *DeleteCertificateInput) (*DeleteCertificateOutput, error) { req, out := c.DeleteCertificateRequest(input) err := req.Send() return out, err } const opDescribeCertificate = "DescribeCertificate" // DescribeCertificateRequest generates a "aws/request.Request" representing the // client's request for the DescribeCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeCertificateRequest method. // req, resp := client.DescribeCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ACM) DescribeCertificateRequest(input *DescribeCertificateInput) (req *request.Request, output *DescribeCertificateOutput) { op := &request.Operation{ Name: opDescribeCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeCertificateInput{} } req = c.newRequest(op, input, output) output = &DescribeCertificateOutput{} req.Data = output return } // DescribeCertificate API operation for AWS Certificate Manager. // // Returns a list of the fields contained in the specified ACM Certificate. // For example, this action returns the certificate status, a flag that indicates // whether the certificate is associated with any other AWS service, and the // date at which the certificate request was created. You specify the ACM Certificate // on input by its Amazon Resource Name (ARN). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Certificate Manager's // API operation DescribeCertificate for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified certificate cannot be found in the caller's account, or the // caller's account cannot be found. // // * InvalidArnException // The requested Amazon Resource Name (ARN) does not refer to an existing resource. // func (c *ACM) DescribeCertificate(input *DescribeCertificateInput) (*DescribeCertificateOutput, error) { req, out := c.DescribeCertificateRequest(input) err := req.Send() return out, err } const opGetCertificate = "GetCertificate" // GetCertificateRequest generates a "aws/request.Request" representing the // client's request for the GetCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetCertificateRequest method. // req, resp := client.GetCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ACM) GetCertificateRequest(input *GetCertificateInput) (req *request.Request, output *GetCertificateOutput) { op := &request.Operation{ Name: opGetCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetCertificateInput{} } req = c.newRequest(op, input, output) output = &GetCertificateOutput{} req.Data = output return } // GetCertificate API operation for AWS Certificate Manager. // // Retrieves an ACM Certificate and certificate chain for the certificate specified // by an ARN. The chain is an ordered list of certificates that contains the // root certificate, intermediate certificates of subordinate CAs, and the ACM // Certificate. The certificate and certificate chain are base64 encoded. If // you want to decode the certificate chain to see the individual certificate // fields, you can use OpenSSL. // // Currently, ACM Certificates can be used only with Elastic Load Balancing // and Amazon CloudFront. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Certificate Manager's // API operation GetCertificate for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified certificate cannot be found in the caller's account, or the // caller's account cannot be found. // // * RequestInProgressException // The certificate request is in process and the certificate in your account // has not yet been issued. // // * InvalidArnException // The requested Amazon Resource Name (ARN) does not refer to an existing resource. // func (c *ACM) GetCertificate(input *GetCertificateInput) (*GetCertificateOutput, error) { req, out := c.GetCertificateRequest(input) err := req.Send() return out, err } const opImportCertificate = "ImportCertificate" // ImportCertificateRequest generates a "aws/request.Request" representing the // client's request for the ImportCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ImportCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ImportCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ImportCertificateRequest method. // req, resp := client.ImportCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ACM) ImportCertificateRequest(input *ImportCertificateInput) (req *request.Request, output *ImportCertificateOutput) { op := &request.Operation{ Name: opImportCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ImportCertificateInput{} } req = c.newRequest(op, input, output) output = &ImportCertificateOutput{} req.Data = output return } // ImportCertificate API operation for AWS Certificate Manager. // // Imports an SSL/TLS certificate into AWS Certificate Manager (ACM) to use // with ACM's integrated AWS services (http://docs.aws.amazon.com/acm/latest/userguide/acm-services.html). // // ACM does not provide managed renewal (http://docs.aws.amazon.com/acm/latest/userguide/acm-renewal.html) // for certificates that you import. // // For more information about importing certificates into ACM, including the // differences between certificates that you import and those that ACM provides, // see Importing Certificates (http://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html) // in the AWS Certificate Manager User Guide. // // To import a certificate, you must provide the certificate and the matching // private key. When the certificate is not self-signed, you must also provide // a certificate chain. You can omit the certificate chain when importing a // self-signed certificate. // // The certificate, private key, and certificate chain must be PEM-encoded. // For more information about converting these items to PEM format, see Importing // Certificates Troubleshooting (http://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html#import-certificate-troubleshooting) // in the AWS Certificate Manager User Guide. // // To import a new certificate, omit the CertificateArn field. Include this // field only when you want to replace a previously imported certificate. // // This operation returns the Amazon Resource Name (ARN) (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // of the imported certificate. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Certificate Manager's // API operation ImportCertificate for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified certificate cannot be found in the caller's account, or the // caller's account cannot be found. // // * LimitExceededException // An ACM limit has been exceeded. For example, you may have input more domains // than are allowed or you've requested too many certificates for your account. // See the exception message returned by ACM to determine which limit you have // violated. For more information about ACM limits, see the Limits (http://docs.aws.amazon.com/acm/latest/userguide/acm-limits.html) // topic. // func (c *ACM) ImportCertificate(input *ImportCertificateInput) (*ImportCertificateOutput, error) { req, out := c.ImportCertificateRequest(input) err := req.Send() return out, err } const opListCertificates = "ListCertificates" // ListCertificatesRequest generates a "aws/request.Request" representing the // client's request for the ListCertificates operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListCertificates for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListCertificates method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListCertificatesRequest method. // req, resp := client.ListCertificatesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ACM) ListCertificatesRequest(input *ListCertificatesInput) (req *request.Request, output *ListCertificatesOutput) { op := &request.Operation{ Name: opListCertificates, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxItems", TruncationToken: "", }, } if input == nil { input = &ListCertificatesInput{} } req = c.newRequest(op, input, output) output = &ListCertificatesOutput{} req.Data = output return } // ListCertificates API operation for AWS Certificate Manager. // // Retrieves a list of ACM Certificates and the domain name for each. You can // optionally filter the list to return only the certificates that match the // specified status. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Certificate Manager's // API operation ListCertificates for usage and error information. func (c *ACM) ListCertificates(input *ListCertificatesInput) (*ListCertificatesOutput, error) { req, out := c.ListCertificatesRequest(input) err := req.Send() return out, err } // ListCertificatesPages iterates over the pages of a ListCertificates operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListCertificates method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListCertificates operation. // pageNum := 0 // err := client.ListCertificatesPages(params, // func(page *ListCertificatesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ACM) ListCertificatesPages(input *ListCertificatesInput, fn func(p *ListCertificatesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListCertificatesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListCertificatesOutput), lastPage) }) } const opListTagsForCertificate = "ListTagsForCertificate" // ListTagsForCertificateRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTagsForCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTagsForCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTagsForCertificateRequest method. // req, resp := client.ListTagsForCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ACM) ListTagsForCertificateRequest(input *ListTagsForCertificateInput) (req *request.Request, output *ListTagsForCertificateOutput) { op := &request.Operation{ Name: opListTagsForCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListTagsForCertificateInput{} } req = c.newRequest(op, input, output) output = &ListTagsForCertificateOutput{} req.Data = output return } // ListTagsForCertificate API operation for AWS Certificate Manager. // // Lists the tags that have been applied to the ACM Certificate. Use the certificate // ARN to specify the certificate. To add a tag to an ACM Certificate, use the // AddTagsToCertificate action. To delete a tag, use the RemoveTagsFromCertificate // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Certificate Manager's // API operation ListTagsForCertificate for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified certificate cannot be found in the caller's account, or the // caller's account cannot be found. // // * InvalidArnException // The requested Amazon Resource Name (ARN) does not refer to an existing resource. // func (c *ACM) ListTagsForCertificate(input *ListTagsForCertificateInput) (*ListTagsForCertificateOutput, error) { req, out := c.ListTagsForCertificateRequest(input) err := req.Send() return out, err } const opRemoveTagsFromCertificate = "RemoveTagsFromCertificate" // RemoveTagsFromCertificateRequest generates a "aws/request.Request" representing the // client's request for the RemoveTagsFromCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveTagsFromCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveTagsFromCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveTagsFromCertificateRequest method. // req, resp := client.RemoveTagsFromCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ACM) RemoveTagsFromCertificateRequest(input *RemoveTagsFromCertificateInput) (req *request.Request, output *RemoveTagsFromCertificateOutput) { op := &request.Operation{ Name: opRemoveTagsFromCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveTagsFromCertificateInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RemoveTagsFromCertificateOutput{} req.Data = output return } // RemoveTagsFromCertificate API operation for AWS Certificate Manager. // // Remove one or more tags from an ACM Certificate. A tag consists of a key-value // pair. If you do not specify the value portion of the tag when calling this // function, the tag will be removed regardless of value. If you specify a value, // the tag is removed only if it is associated with the specified value. // // To add tags to a certificate, use the AddTagsToCertificate action. To view // all of the tags that have been applied to a specific ACM Certificate, use // the ListTagsForCertificate action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Certificate Manager's // API operation RemoveTagsFromCertificate for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified certificate cannot be found in the caller's account, or the // caller's account cannot be found. // // * InvalidArnException // The requested Amazon Resource Name (ARN) does not refer to an existing resource. // // * InvalidTagException // One or both of the values that make up the key-value pair is not valid. For // example, you cannot specify a tag value that begins with aws:. // func (c *ACM) RemoveTagsFromCertificate(input *RemoveTagsFromCertificateInput) (*RemoveTagsFromCertificateOutput, error) { req, out := c.RemoveTagsFromCertificateRequest(input) err := req.Send() return out, err } const opRequestCertificate = "RequestCertificate" // RequestCertificateRequest generates a "aws/request.Request" representing the // client's request for the RequestCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RequestCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RequestCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RequestCertificateRequest method. // req, resp := client.RequestCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ACM) RequestCertificateRequest(input *RequestCertificateInput) (req *request.Request, output *RequestCertificateOutput) { op := &request.Operation{ Name: opRequestCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RequestCertificateInput{} } req = c.newRequest(op, input, output) output = &RequestCertificateOutput{} req.Data = output return } // RequestCertificate API operation for AWS Certificate Manager. // // Requests an ACM Certificate for use with other AWS services. To request an // ACM Certificate, you must specify the fully qualified domain name (FQDN) // for your site. You can also specify additional FQDNs if users can reach your // site by using other names. For each domain name you specify, email is sent // to the domain owner to request approval to issue the certificate. After receiving // approval from the domain owner, the ACM Certificate is issued. For more information, // see the AWS Certificate Manager User Guide (http://docs.aws.amazon.com/acm/latest/userguide/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Certificate Manager's // API operation RequestCertificate for usage and error information. // // Returned Error Codes: // * LimitExceededException // An ACM limit has been exceeded. For example, you may have input more domains // than are allowed or you've requested too many certificates for your account. // See the exception message returned by ACM to determine which limit you have // violated. For more information about ACM limits, see the Limits (http://docs.aws.amazon.com/acm/latest/userguide/acm-limits.html) // topic. // // * InvalidDomainValidationOptionsException // One or more values in the DomainValidationOption structure is incorrect. // func (c *ACM) RequestCertificate(input *RequestCertificateInput) (*RequestCertificateOutput, error) { req, out := c.RequestCertificateRequest(input) err := req.Send() return out, err } const opResendValidationEmail = "ResendValidationEmail" // ResendValidationEmailRequest generates a "aws/request.Request" representing the // client's request for the ResendValidationEmail operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ResendValidationEmail for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ResendValidationEmail method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ResendValidationEmailRequest method. // req, resp := client.ResendValidationEmailRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ACM) ResendValidationEmailRequest(input *ResendValidationEmailInput) (req *request.Request, output *ResendValidationEmailOutput) { op := &request.Operation{ Name: opResendValidationEmail, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ResendValidationEmailInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ResendValidationEmailOutput{} req.Data = output return } // ResendValidationEmail API operation for AWS Certificate Manager. // // Resends the email that requests domain ownership validation. The domain owner // or an authorized representative must approve the ACM Certificate before it // can be issued. The certificate can be approved by clicking a link in the // mail to navigate to the Amazon certificate approval website and then clicking // I Approve. However, the validation email can be blocked by spam filters. // Therefore, if you do not receive the original mail, you can request that // the mail be resent within 72 hours of requesting the ACM Certificate. If // more than 72 hours have elapsed since your original request or since your // last attempt to resend validation mail, you must request a new certificate. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Certificate Manager's // API operation ResendValidationEmail for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified certificate cannot be found in the caller's account, or the // caller's account cannot be found. // // * InvalidStateException // Processing has reached an invalid state. For example, this exception can // occur if the specified domain is not using email validation, or the current // certificate status does not permit the requested operation. See the exception // message returned by ACM to determine which state is not valid. // // * InvalidArnException // The requested Amazon Resource Name (ARN) does not refer to an existing resource. // // * InvalidDomainValidationOptionsException // One or more values in the DomainValidationOption structure is incorrect. // func (c *ACM) ResendValidationEmail(input *ResendValidationEmailInput) (*ResendValidationEmailOutput, error) { req, out := c.ResendValidationEmailRequest(input) err := req.Send() return out, err } type AddTagsToCertificateInput struct { _ struct{} `type:"structure"` // String that contains the ARN of the ACM Certificate to which the tag is to // be applied. This must be of the form: // // arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012 // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). // // CertificateArn is a required field CertificateArn *string `min:"20" type:"string" required:"true"` // The key-value pair that defines the tag. The tag value is optional. // // Tags is a required field Tags []*Tag `min:"1" type:"list" required:"true"` } // String returns the string representation func (s AddTagsToCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsToCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsToCertificateInput"} if s.CertificateArn == nil { invalidParams.Add(request.NewErrParamRequired("CertificateArn")) } if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil && len(s.Tags) < 1 { invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddTagsToCertificateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddTagsToCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToCertificateOutput) GoString() string { return s.String() } // Contains detailed metadata about an ACM Certificate. This structure is returned // in the response to a DescribeCertificate request. type CertificateDetail struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the certificate. For more information about // ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. CertificateArn *string `min:"20" type:"string"` // The time at which the certificate was requested. This value exists only when // the certificate type is AMAZON_ISSUED. CreatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The fully qualified domain name for the certificate, such as www.example.com // or example.com. DomainName *string `min:"1" type:"string"` // Contains information about the email address or addresses used for domain // validation. This field exists only when the certificate type is AMAZON_ISSUED. DomainValidationOptions []*DomainValidation `min:"1" type:"list"` // The reason the certificate request failed. This value exists only when the // certificate status is FAILED. For more information, see Certificate Request // Failed (http://docs.aws.amazon.com/acm/latest/userguide/troubleshooting.html#troubleshooting-failed) // in the AWS Certificate Manager User Guide. FailureReason *string `type:"string" enum:"FailureReason"` // The date and time at which the certificate was imported. This value exists // only when the certificate type is IMPORTED. ImportedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // A list of ARNs for the AWS resources that are using the certificate. A certificate // can be used by multiple AWS resources. InUseBy []*string `type:"list"` // The time at which the certificate was issued. This value exists only when // the certificate type is AMAZON_ISSUED. IssuedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The name of the certificate authority that issued and signed the certificate. Issuer *string `type:"string"` // The algorithm that was used to generate the key pair (the public and private // key). KeyAlgorithm *string `type:"string" enum:"KeyAlgorithm"` // The time after which the certificate is not valid. NotAfter *time.Time `type:"timestamp" timestampFormat:"unix"` // The time before which the certificate is not valid. NotBefore *time.Time `type:"timestamp" timestampFormat:"unix"` // The reason the certificate was revoked. This value exists only when the certificate // status is REVOKED. RevocationReason *string `type:"string" enum:"RevocationReason"` // The time at which the certificate was revoked. This value exists only when // the certificate status is REVOKED. RevokedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The serial number of the certificate. Serial *string `type:"string"` // The algorithm that was used to sign the certificate. SignatureAlgorithm *string `type:"string"` // The status of the certificate. Status *string `type:"string" enum:"CertificateStatus"` // The name of the entity that is associated with the public key contained in // the certificate. Subject *string `type:"string"` // One or more domain names (subject alternative names) included in the certificate. // This list contains the domain names that are bound to the public key that // is contained in the certificate. The subject alternative names include the // canonical domain name (CN) of the certificate and additional domain names // that can be used to connect to the website. SubjectAlternativeNames []*string `min:"1" type:"list"` // The source of the certificate. For certificates provided by ACM, this value // is AMAZON_ISSUED. For certificates that you imported with ImportCertificate, // this value is IMPORTED. ACM does not provide managed renewal (http://docs.aws.amazon.com/acm/latest/userguide/acm-renewal.html) // for imported certificates. For more information about the differences between // certificates that you import and those that ACM provides, see Importing Certificates // (http://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html) // in the AWS Certificate Manager User Guide. Type *string `type:"string" enum:"CertificateType"` } // String returns the string representation func (s CertificateDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CertificateDetail) GoString() string { return s.String() } // This structure is returned in the response object of ListCertificates action. type CertificateSummary struct { _ struct{} `type:"structure"` // Amazon Resource Name (ARN) of the certificate. This is of the form: // // arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012 // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). CertificateArn *string `min:"20" type:"string"` // Fully qualified domain name (FQDN), such as www.example.com or example.com, // for the certificate. DomainName *string `min:"1" type:"string"` } // String returns the string representation func (s CertificateSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CertificateSummary) GoString() string { return s.String() } type DeleteCertificateInput struct { _ struct{} `type:"structure"` // String that contains the ARN of the ACM Certificate to be deleted. This must // be of the form: // // arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012 // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). // // CertificateArn is a required field CertificateArn *string `min:"20" type:"string" required:"true"` } // String returns the string representation func (s DeleteCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteCertificateInput"} if s.CertificateArn == nil { invalidParams.Add(request.NewErrParamRequired("CertificateArn")) } if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteCertificateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCertificateOutput) GoString() string { return s.String() } type DescribeCertificateInput struct { _ struct{} `type:"structure"` // String that contains an ACM Certificate ARN. The ARN must be of the form: // // arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012 // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). // // CertificateArn is a required field CertificateArn *string `min:"20" type:"string" required:"true"` } // String returns the string representation func (s DescribeCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeCertificateInput"} if s.CertificateArn == nil { invalidParams.Add(request.NewErrParamRequired("CertificateArn")) } if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeCertificateOutput struct { _ struct{} `type:"structure"` // Contains a CertificateDetail structure that lists the fields of an ACM Certificate. Certificate *CertificateDetail `type:"structure"` } // String returns the string representation func (s DescribeCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCertificateOutput) GoString() string { return s.String() } // Structure that contains the domain name, the base validation domain to which // validation email is sent, and the email addresses used to validate the domain // identity. type DomainValidation struct { _ struct{} `type:"structure"` // Fully Qualified Domain Name (FQDN) of the form www.example.com or example.com. // // DomainName is a required field DomainName *string `min:"1" type:"string" required:"true"` // The base validation domain that acts as the suffix of the email addresses // that are used to send the emails. ValidationDomain *string `min:"1" type:"string"` // A list of contact address for the domain registrant. ValidationEmails []*string `type:"list"` } // String returns the string representation func (s DomainValidation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DomainValidation) GoString() string { return s.String() } // This structure is used in the request object of the RequestCertificate action. type DomainValidationOption struct { _ struct{} `type:"structure"` // Fully Qualified Domain Name (FQDN) of the certificate being requested. // // DomainName is a required field DomainName *string `min:"1" type:"string" required:"true"` // The domain to which validation email is sent. This is the base validation // domain that will act as the suffix of the email addresses. This must be the // same as the DomainName value or a superdomain of the DomainName value. For // example, if you requested a certificate for site.subdomain.example.com and // specify a ValidationDomain of subdomain.example.com, ACM sends email to the // domain registrant, technical contact, and administrative contact in WHOIS // for the base domain and the following five addresses: // // * admin@subdomain.example.com // // * administrator@subdomain.example.com // // * hostmaster@subdomain.example.com // // * postmaster@subdomain.example.com // // * webmaster@subdomain.example.com // // ValidationDomain is a required field ValidationDomain *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DomainValidationOption) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DomainValidationOption) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DomainValidationOption) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DomainValidationOption"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 1)) } if s.ValidationDomain == nil { invalidParams.Add(request.NewErrParamRequired("ValidationDomain")) } if s.ValidationDomain != nil && len(*s.ValidationDomain) < 1 { invalidParams.Add(request.NewErrParamMinLen("ValidationDomain", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetCertificateInput struct { _ struct{} `type:"structure"` // String that contains a certificate ARN in the following format: // // arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012 // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). // // CertificateArn is a required field CertificateArn *string `min:"20" type:"string" required:"true"` } // String returns the string representation func (s GetCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetCertificateInput"} if s.CertificateArn == nil { invalidParams.Add(request.NewErrParamRequired("CertificateArn")) } if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetCertificateOutput struct { _ struct{} `type:"structure"` // String that contains the ACM Certificate represented by the ARN specified // at input. Certificate *string `min:"1" type:"string"` // The certificate chain that contains the root certificate issued by the certificate // authority (CA). CertificateChain *string `min:"1" type:"string"` } // String returns the string representation func (s GetCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCertificateOutput) GoString() string { return s.String() } type ImportCertificateInput struct { _ struct{} `type:"structure"` // The certificate to import. It must meet the following requirements: // // * Must be PEM-encoded. // // * Must contain a 1024-bit or 2048-bit RSA public key. // // * Must be valid at the time of import. You cannot import a certificate // before its validity period begins (the certificate's NotBefore date) or // after it expires (the certificate's NotAfter date). // // Certificate is automatically base64 encoded/decoded by the SDK. // // Certificate is a required field Certificate []byte `min:"1" type:"blob" required:"true"` // The Amazon Resource Name (ARN) (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // of an imported certificate to replace. To import a new certificate, omit // this field. CertificateArn *string `min:"20" type:"string"` // The certificate chain. It must be PEM-encoded. // // CertificateChain is automatically base64 encoded/decoded by the SDK. CertificateChain []byte `min:"1" type:"blob"` // The private key that matches the public key in the certificate. It must meet // the following requirements: // // * Must be PEM-encoded. // // * Must be unencrypted. You cannot import a private key that is protected // by a password or passphrase. // // PrivateKey is automatically base64 encoded/decoded by the SDK. // // PrivateKey is a required field PrivateKey []byte `min:"1" type:"blob" required:"true"` } // String returns the string representation func (s ImportCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ImportCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ImportCertificateInput"} if s.Certificate == nil { invalidParams.Add(request.NewErrParamRequired("Certificate")) } if s.Certificate != nil && len(s.Certificate) < 1 { invalidParams.Add(request.NewErrParamMinLen("Certificate", 1)) } if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) } if s.CertificateChain != nil && len(s.CertificateChain) < 1 { invalidParams.Add(request.NewErrParamMinLen("CertificateChain", 1)) } if s.PrivateKey == nil { invalidParams.Add(request.NewErrParamRequired("PrivateKey")) } if s.PrivateKey != nil && len(s.PrivateKey) < 1 { invalidParams.Add(request.NewErrParamMinLen("PrivateKey", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ImportCertificateOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // of the imported certificate. CertificateArn *string `min:"20" type:"string"` } // String returns the string representation func (s ImportCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportCertificateOutput) GoString() string { return s.String() } type ListCertificatesInput struct { _ struct{} `type:"structure"` // The status or statuses on which to filter the list of ACM Certificates. CertificateStatuses []*string `type:"list"` // Use this parameter when paginating results to specify the maximum number // of items to return in the response. If additional items exist beyond the // number you specify, the NextToken element is sent in the response. Use this // NextToken value in a subsequent request to retrieve additional items. MaxItems *int64 `min:"1" type:"integer"` // Use this parameter only when paginating results and only in a subsequent // request after you receive a response with truncated results. Set it to the // value of NextToken from the response you just received. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s ListCertificatesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListCertificatesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListCertificatesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListCertificatesInput"} if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListCertificatesOutput struct { _ struct{} `type:"structure"` // A list of ACM Certificates. CertificateSummaryList []*CertificateSummary `type:"list"` // When the list is truncated, this value is present and contains the value // to use for the NextToken parameter in a subsequent pagination request. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s ListCertificatesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListCertificatesOutput) GoString() string { return s.String() } type ListTagsForCertificateInput struct { _ struct{} `type:"structure"` // String that contains the ARN of the ACM Certificate for which you want to // list the tags. This must be of the form: // // arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012 // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). // // CertificateArn is a required field CertificateArn *string `min:"20" type:"string" required:"true"` } // String returns the string representation func (s ListTagsForCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsForCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsForCertificateInput"} if s.CertificateArn == nil { invalidParams.Add(request.NewErrParamRequired("CertificateArn")) } if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListTagsForCertificateOutput struct { _ struct{} `type:"structure"` // The key-value pairs that define the applied tags. Tags []*Tag `min:"1" type:"list"` } // String returns the string representation func (s ListTagsForCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForCertificateOutput) GoString() string { return s.String() } type RemoveTagsFromCertificateInput struct { _ struct{} `type:"structure"` // String that contains the ARN of the ACM Certificate with one or more tags // that you want to remove. This must be of the form: // // arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012 // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). // // CertificateArn is a required field CertificateArn *string `min:"20" type:"string" required:"true"` // The key-value pair that defines the tag to remove. // // Tags is a required field Tags []*Tag `min:"1" type:"list" required:"true"` } // String returns the string representation func (s RemoveTagsFromCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTagsFromCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTagsFromCertificateInput"} if s.CertificateArn == nil { invalidParams.Add(request.NewErrParamRequired("CertificateArn")) } if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil && len(s.Tags) < 1 { invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemoveTagsFromCertificateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveTagsFromCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromCertificateOutput) GoString() string { return s.String() } type RequestCertificateInput struct { _ struct{} `type:"structure"` // Fully qualified domain name (FQDN), such as www.example.com, of the site // you want to secure with an ACM Certificate. Use an asterisk (*) to create // a wildcard certificate that protects several sites in the same domain. For // example, *.example.com protects www.example.com, site.example.com, and images.example.com. // // DomainName is a required field DomainName *string `min:"1" type:"string" required:"true"` // The base validation domain that will act as the suffix of the email addresses // that are used to send the emails. This must be the same as the Domain value // or a superdomain of the Domain value. For example, if you requested a certificate // for test.example.com and specify DomainValidationOptions of example.com, // ACM sends email to the domain registrant, technical contact, and administrative // contact in WHOIS and the following five addresses: // // * admin@example.com // // * administrator@example.com // // * hostmaster@example.com // // * postmaster@example.com // // * webmaster@example.com DomainValidationOptions []*DomainValidationOption `min:"1" type:"list"` // Customer chosen string that can be used to distinguish between calls to RequestCertificate. // Idempotency tokens time out after one hour. Therefore, if you call RequestCertificate // multiple times with the same idempotency token within one hour, ACM recognizes // that you are requesting only one certificate and will issue only one. If // you change the idempotency token for each call, ACM recognizes that you are // requesting multiple certificates. IdempotencyToken *string `min:"1" type:"string"` // Additional FQDNs to be included in the Subject Alternative Name extension // of the ACM Certificate. For example, add the name www.example.net to a certificate // for which the DomainName field is www.example.com if users can reach your // site by using either name. SubjectAlternativeNames []*string `min:"1" type:"list"` } // String returns the string representation func (s RequestCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RequestCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RequestCertificateInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 1)) } if s.DomainValidationOptions != nil && len(s.DomainValidationOptions) < 1 { invalidParams.Add(request.NewErrParamMinLen("DomainValidationOptions", 1)) } if s.IdempotencyToken != nil && len(*s.IdempotencyToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdempotencyToken", 1)) } if s.SubjectAlternativeNames != nil && len(s.SubjectAlternativeNames) < 1 { invalidParams.Add(request.NewErrParamMinLen("SubjectAlternativeNames", 1)) } if s.DomainValidationOptions != nil { for i, v := range s.DomainValidationOptions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DomainValidationOptions", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type RequestCertificateOutput struct { _ struct{} `type:"structure"` // String that contains the ARN of the issued certificate. This must be of the // form: // // arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012 CertificateArn *string `min:"20" type:"string"` } // String returns the string representation func (s RequestCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestCertificateOutput) GoString() string { return s.String() } type ResendValidationEmailInput struct { _ struct{} `type:"structure"` // String that contains the ARN of the requested certificate. The certificate // ARN is generated and returned by the RequestCertificate action as soon as // the request is made. By default, using this parameter causes email to be // sent to all top-level domains you specified in the certificate request. // // The ARN must be of the form: // // arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012 // // CertificateArn is a required field CertificateArn *string `min:"20" type:"string" required:"true"` // The Fully Qualified Domain Name (FQDN) of the certificate that needs to be // validated. // // Domain is a required field Domain *string `min:"1" type:"string" required:"true"` // The base validation domain that will act as the suffix of the email addresses // that are used to send the emails. This must be the same as the Domain value // or a superdomain of the Domain value. For example, if you requested a certificate // for site.subdomain.example.com and specify a ValidationDomain of subdomain.example.com, // ACM sends email to the domain registrant, technical contact, and administrative // contact in WHOIS and the following five addresses: // // * admin@subdomain.example.com // // * administrator@subdomain.example.com // // * hostmaster@subdomain.example.com // // * postmaster@subdomain.example.com // // * webmaster@subdomain.example.com // // ValidationDomain is a required field ValidationDomain *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ResendValidationEmailInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResendValidationEmailInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ResendValidationEmailInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ResendValidationEmailInput"} if s.CertificateArn == nil { invalidParams.Add(request.NewErrParamRequired("CertificateArn")) } if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) } if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.ValidationDomain == nil { invalidParams.Add(request.NewErrParamRequired("ValidationDomain")) } if s.ValidationDomain != nil && len(*s.ValidationDomain) < 1 { invalidParams.Add(request.NewErrParamMinLen("ValidationDomain", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ResendValidationEmailOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ResendValidationEmailOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResendValidationEmailOutput) GoString() string { return s.String() } // A key-value pair that identifies or specifies metadata about an ACM resource. type Tag struct { _ struct{} `type:"structure"` // The key of the tag. // // Key is a required field Key *string `min:"1" type:"string" required:"true"` // The value of the tag. Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } const ( // CertificateStatusPendingValidation is a CertificateStatus enum value CertificateStatusPendingValidation = "PENDING_VALIDATION" // CertificateStatusIssued is a CertificateStatus enum value CertificateStatusIssued = "ISSUED" // CertificateStatusInactive is a CertificateStatus enum value CertificateStatusInactive = "INACTIVE" // CertificateStatusExpired is a CertificateStatus enum value CertificateStatusExpired = "EXPIRED" // CertificateStatusValidationTimedOut is a CertificateStatus enum value CertificateStatusValidationTimedOut = "VALIDATION_TIMED_OUT" // CertificateStatusRevoked is a CertificateStatus enum value CertificateStatusRevoked = "REVOKED" // CertificateStatusFailed is a CertificateStatus enum value CertificateStatusFailed = "FAILED" ) const ( // CertificateTypeImported is a CertificateType enum value CertificateTypeImported = "IMPORTED" // CertificateTypeAmazonIssued is a CertificateType enum value CertificateTypeAmazonIssued = "AMAZON_ISSUED" ) const ( // FailureReasonNoAvailableContacts is a FailureReason enum value FailureReasonNoAvailableContacts = "NO_AVAILABLE_CONTACTS" // FailureReasonAdditionalVerificationRequired is a FailureReason enum value FailureReasonAdditionalVerificationRequired = "ADDITIONAL_VERIFICATION_REQUIRED" // FailureReasonDomainNotAllowed is a FailureReason enum value FailureReasonDomainNotAllowed = "DOMAIN_NOT_ALLOWED" // FailureReasonInvalidPublicDomain is a FailureReason enum value FailureReasonInvalidPublicDomain = "INVALID_PUBLIC_DOMAIN" // FailureReasonOther is a FailureReason enum value FailureReasonOther = "OTHER" ) const ( // KeyAlgorithmRsa2048 is a KeyAlgorithm enum value KeyAlgorithmRsa2048 = "RSA_2048" // KeyAlgorithmRsa1024 is a KeyAlgorithm enum value KeyAlgorithmRsa1024 = "RSA_1024" // KeyAlgorithmEcPrime256v1 is a KeyAlgorithm enum value KeyAlgorithmEcPrime256v1 = "EC_prime256v1" ) const ( // RevocationReasonUnspecified is a RevocationReason enum value RevocationReasonUnspecified = "UNSPECIFIED" // RevocationReasonKeyCompromise is a RevocationReason enum value RevocationReasonKeyCompromise = "KEY_COMPROMISE" // RevocationReasonCaCompromise is a RevocationReason enum value RevocationReasonCaCompromise = "CA_COMPROMISE" // RevocationReasonAffiliationChanged is a RevocationReason enum value RevocationReasonAffiliationChanged = "AFFILIATION_CHANGED" // RevocationReasonSuperceded is a RevocationReason enum value RevocationReasonSuperceded = "SUPERCEDED" // RevocationReasonCessationOfOperation is a RevocationReason enum value RevocationReasonCessationOfOperation = "CESSATION_OF_OPERATION" // RevocationReasonCertificateHold is a RevocationReason enum value RevocationReasonCertificateHold = "CERTIFICATE_HOLD" // RevocationReasonRemoveFromCrl is a RevocationReason enum value RevocationReasonRemoveFromCrl = "REMOVE_FROM_CRL" // RevocationReasonPrivilegeWithdrawn is a RevocationReason enum value RevocationReasonPrivilegeWithdrawn = "PRIVILEGE_WITHDRAWN" // RevocationReasonAACompromise is a RevocationReason enum value RevocationReasonAACompromise = "A_A_COMPROMISE" ) aws-sdk-go-1.4.22/service/acm/examples_test.go000066400000000000000000000150061300374646400211710ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package acm_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/acm" ) var _ time.Duration var _ bytes.Buffer func ExampleACM_AddTagsToCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := acm.New(sess) params := &acm.AddTagsToCertificateInput{ CertificateArn: aws.String("Arn"), // Required Tags: []*acm.Tag{ // Required { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), }, // More values... }, } resp, err := svc.AddTagsToCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleACM_DeleteCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := acm.New(sess) params := &acm.DeleteCertificateInput{ CertificateArn: aws.String("Arn"), // Required } resp, err := svc.DeleteCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleACM_DescribeCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := acm.New(sess) params := &acm.DescribeCertificateInput{ CertificateArn: aws.String("Arn"), // Required } resp, err := svc.DescribeCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleACM_GetCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := acm.New(sess) params := &acm.GetCertificateInput{ CertificateArn: aws.String("Arn"), // Required } resp, err := svc.GetCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleACM_ImportCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := acm.New(sess) params := &acm.ImportCertificateInput{ Certificate: []byte("PAYLOAD"), // Required PrivateKey: []byte("PAYLOAD"), // Required CertificateArn: aws.String("Arn"), CertificateChain: []byte("PAYLOAD"), } resp, err := svc.ImportCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleACM_ListCertificates() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := acm.New(sess) params := &acm.ListCertificatesInput{ CertificateStatuses: []*string{ aws.String("CertificateStatus"), // Required // More values... }, MaxItems: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.ListCertificates(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleACM_ListTagsForCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := acm.New(sess) params := &acm.ListTagsForCertificateInput{ CertificateArn: aws.String("Arn"), // Required } resp, err := svc.ListTagsForCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleACM_RemoveTagsFromCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := acm.New(sess) params := &acm.RemoveTagsFromCertificateInput{ CertificateArn: aws.String("Arn"), // Required Tags: []*acm.Tag{ // Required { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), }, // More values... }, } resp, err := svc.RemoveTagsFromCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleACM_RequestCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := acm.New(sess) params := &acm.RequestCertificateInput{ DomainName: aws.String("DomainNameString"), // Required DomainValidationOptions: []*acm.DomainValidationOption{ { // Required DomainName: aws.String("DomainNameString"), // Required ValidationDomain: aws.String("DomainNameString"), // Required }, // More values... }, IdempotencyToken: aws.String("IdempotencyToken"), SubjectAlternativeNames: []*string{ aws.String("DomainNameString"), // Required // More values... }, } resp, err := svc.RequestCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleACM_ResendValidationEmail() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := acm.New(sess) params := &acm.ResendValidationEmailInput{ CertificateArn: aws.String("Arn"), // Required Domain: aws.String("DomainNameString"), // Required ValidationDomain: aws.String("DomainNameString"), // Required } resp, err := svc.ResendValidationEmail(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/acm/service.go000066400000000000000000000056341300374646400177620ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package acm import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Welcome to the AWS Certificate Manager (ACM) API documentation. // // You can use ACM to manage SSL/TLS certificates for your AWS-based websites // and applications. For general information about using ACM, see the AWS Certificate // Manager User Guide (http://docs.aws.amazon.com/acm/latest/userguide/). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type ACM struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "acm" // New creates a new instance of the ACM client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a ACM client from just a session. // svc := acm.New(mySession) // // // Create a ACM client with additional configuration // svc := acm.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *ACM { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *ACM { svc := &ACM{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-12-08", JSONVersion: "1.1", TargetPrefix: "CertificateManager", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a ACM operation and runs any // custom request initialization. func (c *ACM) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/apigateway/000077500000000000000000000000001300374646400173565ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/apigateway/api.go000066400000000000000000015173621300374646400204750ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package apigateway provides a client for Amazon API Gateway. package apigateway import ( "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) const opCreateApiKey = "CreateApiKey" // CreateApiKeyRequest generates a "aws/request.Request" representing the // client's request for the CreateApiKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateApiKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateApiKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateApiKeyRequest method. // req, resp := client.CreateApiKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) CreateApiKeyRequest(input *CreateApiKeyInput) (req *request.Request, output *ApiKey) { op := &request.Operation{ Name: opCreateApiKey, HTTPMethod: "POST", HTTPPath: "/apikeys", } if input == nil { input = &CreateApiKeyInput{} } req = c.newRequest(op, input, output) output = &ApiKey{} req.Data = output return } // CreateApiKey API operation for Amazon API Gateway. // // Create an ApiKey resource. // // AWS CLI (http://docs.aws.amazon.com/cli/latest/reference/apigateway/create-api-key.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation CreateApiKey for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // // * LimitExceededException // // * BadRequestException // // * ConflictException // func (c *APIGateway) CreateApiKey(input *CreateApiKeyInput) (*ApiKey, error) { req, out := c.CreateApiKeyRequest(input) err := req.Send() return out, err } const opCreateAuthorizer = "CreateAuthorizer" // CreateAuthorizerRequest generates a "aws/request.Request" representing the // client's request for the CreateAuthorizer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateAuthorizer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateAuthorizer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateAuthorizerRequest method. // req, resp := client.CreateAuthorizerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) CreateAuthorizerRequest(input *CreateAuthorizerInput) (req *request.Request, output *Authorizer) { op := &request.Operation{ Name: opCreateAuthorizer, HTTPMethod: "POST", HTTPPath: "/restapis/{restapi_id}/authorizers", } if input == nil { input = &CreateAuthorizerInput{} } req = c.newRequest(op, input, output) output = &Authorizer{} req.Data = output return } // CreateAuthorizer API operation for Amazon API Gateway. // // Adds a new Authorizer resource to an existing RestApi resource. // // AWS CLI (http://docs.aws.amazon.com/cli/latest/reference/apigateway/create-authorizer.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation CreateAuthorizer for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * NotFoundException // // * LimitExceededException // // * TooManyRequestsException // func (c *APIGateway) CreateAuthorizer(input *CreateAuthorizerInput) (*Authorizer, error) { req, out := c.CreateAuthorizerRequest(input) err := req.Send() return out, err } const opCreateBasePathMapping = "CreateBasePathMapping" // CreateBasePathMappingRequest generates a "aws/request.Request" representing the // client's request for the CreateBasePathMapping operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateBasePathMapping for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateBasePathMapping method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateBasePathMappingRequest method. // req, resp := client.CreateBasePathMappingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) CreateBasePathMappingRequest(input *CreateBasePathMappingInput) (req *request.Request, output *BasePathMapping) { op := &request.Operation{ Name: opCreateBasePathMapping, HTTPMethod: "POST", HTTPPath: "/domainnames/{domain_name}/basepathmappings", } if input == nil { input = &CreateBasePathMappingInput{} } req = c.newRequest(op, input, output) output = &BasePathMapping{} req.Data = output return } // CreateBasePathMapping API operation for Amazon API Gateway. // // Creates a new BasePathMapping resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation CreateBasePathMapping for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * ConflictException // // * BadRequestException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) CreateBasePathMapping(input *CreateBasePathMappingInput) (*BasePathMapping, error) { req, out := c.CreateBasePathMappingRequest(input) err := req.Send() return out, err } const opCreateDeployment = "CreateDeployment" // CreateDeploymentRequest generates a "aws/request.Request" representing the // client's request for the CreateDeployment operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDeployment for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDeployment method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDeploymentRequest method. // req, resp := client.CreateDeploymentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) CreateDeploymentRequest(input *CreateDeploymentInput) (req *request.Request, output *Deployment) { op := &request.Operation{ Name: opCreateDeployment, HTTPMethod: "POST", HTTPPath: "/restapis/{restapi_id}/deployments", } if input == nil { input = &CreateDeploymentInput{} } req = c.newRequest(op, input, output) output = &Deployment{} req.Data = output return } // CreateDeployment API operation for Amazon API Gateway. // // Creates a Deployment resource, which makes a specified RestApi callable over // the internet. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation CreateDeployment for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * BadRequestException // // * NotFoundException // // * ConflictException // // * LimitExceededException // // * TooManyRequestsException // // * ServiceUnavailableException // func (c *APIGateway) CreateDeployment(input *CreateDeploymentInput) (*Deployment, error) { req, out := c.CreateDeploymentRequest(input) err := req.Send() return out, err } const opCreateDomainName = "CreateDomainName" // CreateDomainNameRequest generates a "aws/request.Request" representing the // client's request for the CreateDomainName operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDomainName for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDomainName method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDomainNameRequest method. // req, resp := client.CreateDomainNameRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) CreateDomainNameRequest(input *CreateDomainNameInput) (req *request.Request, output *DomainName) { op := &request.Operation{ Name: opCreateDomainName, HTTPMethod: "POST", HTTPPath: "/domainnames", } if input == nil { input = &CreateDomainNameInput{} } req = c.newRequest(op, input, output) output = &DomainName{} req.Data = output return } // CreateDomainName API operation for Amazon API Gateway. // // Creates a new domain name. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation CreateDomainName for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * BadRequestException // // * ConflictException // // * TooManyRequestsException // func (c *APIGateway) CreateDomainName(input *CreateDomainNameInput) (*DomainName, error) { req, out := c.CreateDomainNameRequest(input) err := req.Send() return out, err } const opCreateModel = "CreateModel" // CreateModelRequest generates a "aws/request.Request" representing the // client's request for the CreateModel operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateModel for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateModel method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateModelRequest method. // req, resp := client.CreateModelRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) CreateModelRequest(input *CreateModelInput) (req *request.Request, output *Model) { op := &request.Operation{ Name: opCreateModel, HTTPMethod: "POST", HTTPPath: "/restapis/{restapi_id}/models", } if input == nil { input = &CreateModelInput{} } req = c.newRequest(op, input, output) output = &Model{} req.Data = output return } // CreateModel API operation for Amazon API Gateway. // // Adds a new Model resource to an existing RestApi resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation CreateModel for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * NotFoundException // // * ConflictException // // * LimitExceededException // // * TooManyRequestsException // func (c *APIGateway) CreateModel(input *CreateModelInput) (*Model, error) { req, out := c.CreateModelRequest(input) err := req.Send() return out, err } const opCreateResource = "CreateResource" // CreateResourceRequest generates a "aws/request.Request" representing the // client's request for the CreateResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateResourceRequest method. // req, resp := client.CreateResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) CreateResourceRequest(input *CreateResourceInput) (req *request.Request, output *Resource) { op := &request.Operation{ Name: opCreateResource, HTTPMethod: "POST", HTTPPath: "/restapis/{restapi_id}/resources/{parent_id}", } if input == nil { input = &CreateResourceInput{} } req = c.newRequest(op, input, output) output = &Resource{} req.Data = output return } // CreateResource API operation for Amazon API Gateway. // // Creates a Resource resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation CreateResource for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * ConflictException // // * LimitExceededException // // * BadRequestException // // * TooManyRequestsException // func (c *APIGateway) CreateResource(input *CreateResourceInput) (*Resource, error) { req, out := c.CreateResourceRequest(input) err := req.Send() return out, err } const opCreateRestApi = "CreateRestApi" // CreateRestApiRequest generates a "aws/request.Request" representing the // client's request for the CreateRestApi operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateRestApi for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateRestApi method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateRestApiRequest method. // req, resp := client.CreateRestApiRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) CreateRestApiRequest(input *CreateRestApiInput) (req *request.Request, output *RestApi) { op := &request.Operation{ Name: opCreateRestApi, HTTPMethod: "POST", HTTPPath: "/restapis", } if input == nil { input = &CreateRestApiInput{} } req = c.newRequest(op, input, output) output = &RestApi{} req.Data = output return } // CreateRestApi API operation for Amazon API Gateway. // // Creates a new RestApi resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation CreateRestApi for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * LimitExceededException // // * BadRequestException // // * TooManyRequestsException // func (c *APIGateway) CreateRestApi(input *CreateRestApiInput) (*RestApi, error) { req, out := c.CreateRestApiRequest(input) err := req.Send() return out, err } const opCreateStage = "CreateStage" // CreateStageRequest generates a "aws/request.Request" representing the // client's request for the CreateStage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateStage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateStage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateStageRequest method. // req, resp := client.CreateStageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) CreateStageRequest(input *CreateStageInput) (req *request.Request, output *Stage) { op := &request.Operation{ Name: opCreateStage, HTTPMethod: "POST", HTTPPath: "/restapis/{restapi_id}/stages", } if input == nil { input = &CreateStageInput{} } req = c.newRequest(op, input, output) output = &Stage{} req.Data = output return } // CreateStage API operation for Amazon API Gateway. // // Creates a new Stage resource that references a pre-existing Deployment for // the API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation CreateStage for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * BadRequestException // // * NotFoundException // // * ConflictException // // * LimitExceededException // // * TooManyRequestsException // func (c *APIGateway) CreateStage(input *CreateStageInput) (*Stage, error) { req, out := c.CreateStageRequest(input) err := req.Send() return out, err } const opCreateUsagePlan = "CreateUsagePlan" // CreateUsagePlanRequest generates a "aws/request.Request" representing the // client's request for the CreateUsagePlan operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateUsagePlan for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateUsagePlan method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateUsagePlanRequest method. // req, resp := client.CreateUsagePlanRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) CreateUsagePlanRequest(input *CreateUsagePlanInput) (req *request.Request, output *UsagePlan) { op := &request.Operation{ Name: opCreateUsagePlan, HTTPMethod: "POST", HTTPPath: "/usageplans", } if input == nil { input = &CreateUsagePlanInput{} } req = c.newRequest(op, input, output) output = &UsagePlan{} req.Data = output return } // CreateUsagePlan API operation for Amazon API Gateway. // // Creates a usage plan with the throttle and quota limits, as well as the associated // API stages, specified in the payload. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation CreateUsagePlan for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * TooManyRequestsException // // * LimitExceededException // // * ConflictException // func (c *APIGateway) CreateUsagePlan(input *CreateUsagePlanInput) (*UsagePlan, error) { req, out := c.CreateUsagePlanRequest(input) err := req.Send() return out, err } const opCreateUsagePlanKey = "CreateUsagePlanKey" // CreateUsagePlanKeyRequest generates a "aws/request.Request" representing the // client's request for the CreateUsagePlanKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateUsagePlanKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateUsagePlanKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateUsagePlanKeyRequest method. // req, resp := client.CreateUsagePlanKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) CreateUsagePlanKeyRequest(input *CreateUsagePlanKeyInput) (req *request.Request, output *UsagePlanKey) { op := &request.Operation{ Name: opCreateUsagePlanKey, HTTPMethod: "POST", HTTPPath: "/usageplans/{usageplanId}/keys", } if input == nil { input = &CreateUsagePlanKeyInput{} } req = c.newRequest(op, input, output) output = &UsagePlanKey{} req.Data = output return } // CreateUsagePlanKey API operation for Amazon API Gateway. // // Creates a usage plan key for adding an existing API key to a usage plan. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation CreateUsagePlanKey for usage and error information. // // Returned Error Codes: // * BadRequestException // // * ConflictException // // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) CreateUsagePlanKey(input *CreateUsagePlanKeyInput) (*UsagePlanKey, error) { req, out := c.CreateUsagePlanKeyRequest(input) err := req.Send() return out, err } const opDeleteApiKey = "DeleteApiKey" // DeleteApiKeyRequest generates a "aws/request.Request" representing the // client's request for the DeleteApiKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteApiKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteApiKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteApiKeyRequest method. // req, resp := client.DeleteApiKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) DeleteApiKeyRequest(input *DeleteApiKeyInput) (req *request.Request, output *DeleteApiKeyOutput) { op := &request.Operation{ Name: opDeleteApiKey, HTTPMethod: "DELETE", HTTPPath: "/apikeys/{api_Key}", } if input == nil { input = &DeleteApiKeyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteApiKeyOutput{} req.Data = output return } // DeleteApiKey API operation for Amazon API Gateway. // // Deletes the ApiKey resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation DeleteApiKey for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) DeleteApiKey(input *DeleteApiKeyInput) (*DeleteApiKeyOutput, error) { req, out := c.DeleteApiKeyRequest(input) err := req.Send() return out, err } const opDeleteAuthorizer = "DeleteAuthorizer" // DeleteAuthorizerRequest generates a "aws/request.Request" representing the // client's request for the DeleteAuthorizer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteAuthorizer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteAuthorizer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteAuthorizerRequest method. // req, resp := client.DeleteAuthorizerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) DeleteAuthorizerRequest(input *DeleteAuthorizerInput) (req *request.Request, output *DeleteAuthorizerOutput) { op := &request.Operation{ Name: opDeleteAuthorizer, HTTPMethod: "DELETE", HTTPPath: "/restapis/{restapi_id}/authorizers/{authorizer_id}", } if input == nil { input = &DeleteAuthorizerInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteAuthorizerOutput{} req.Data = output return } // DeleteAuthorizer API operation for Amazon API Gateway. // // Deletes an existing Authorizer resource. // // AWS CLI (http://docs.aws.amazon.com/cli/latest/reference/apigateway/delete-authorizer.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation DeleteAuthorizer for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // // * BadRequestException // // * ConflictException // func (c *APIGateway) DeleteAuthorizer(input *DeleteAuthorizerInput) (*DeleteAuthorizerOutput, error) { req, out := c.DeleteAuthorizerRequest(input) err := req.Send() return out, err } const opDeleteBasePathMapping = "DeleteBasePathMapping" // DeleteBasePathMappingRequest generates a "aws/request.Request" representing the // client's request for the DeleteBasePathMapping operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteBasePathMapping for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteBasePathMapping method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteBasePathMappingRequest method. // req, resp := client.DeleteBasePathMappingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) DeleteBasePathMappingRequest(input *DeleteBasePathMappingInput) (req *request.Request, output *DeleteBasePathMappingOutput) { op := &request.Operation{ Name: opDeleteBasePathMapping, HTTPMethod: "DELETE", HTTPPath: "/domainnames/{domain_name}/basepathmappings/{base_path}", } if input == nil { input = &DeleteBasePathMappingInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteBasePathMappingOutput{} req.Data = output return } // DeleteBasePathMapping API operation for Amazon API Gateway. // // Deletes the BasePathMapping resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation DeleteBasePathMapping for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) DeleteBasePathMapping(input *DeleteBasePathMappingInput) (*DeleteBasePathMappingOutput, error) { req, out := c.DeleteBasePathMappingRequest(input) err := req.Send() return out, err } const opDeleteClientCertificate = "DeleteClientCertificate" // DeleteClientCertificateRequest generates a "aws/request.Request" representing the // client's request for the DeleteClientCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteClientCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteClientCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteClientCertificateRequest method. // req, resp := client.DeleteClientCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) DeleteClientCertificateRequest(input *DeleteClientCertificateInput) (req *request.Request, output *DeleteClientCertificateOutput) { op := &request.Operation{ Name: opDeleteClientCertificate, HTTPMethod: "DELETE", HTTPPath: "/clientcertificates/{clientcertificate_id}", } if input == nil { input = &DeleteClientCertificateInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteClientCertificateOutput{} req.Data = output return } // DeleteClientCertificate API operation for Amazon API Gateway. // // Deletes the ClientCertificate resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation DeleteClientCertificate for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * TooManyRequestsException // // * BadRequestException // // * NotFoundException // func (c *APIGateway) DeleteClientCertificate(input *DeleteClientCertificateInput) (*DeleteClientCertificateOutput, error) { req, out := c.DeleteClientCertificateRequest(input) err := req.Send() return out, err } const opDeleteDeployment = "DeleteDeployment" // DeleteDeploymentRequest generates a "aws/request.Request" representing the // client's request for the DeleteDeployment operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDeployment for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDeployment method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDeploymentRequest method. // req, resp := client.DeleteDeploymentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) DeleteDeploymentRequest(input *DeleteDeploymentInput) (req *request.Request, output *DeleteDeploymentOutput) { op := &request.Operation{ Name: opDeleteDeployment, HTTPMethod: "DELETE", HTTPPath: "/restapis/{restapi_id}/deployments/{deployment_id}", } if input == nil { input = &DeleteDeploymentInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteDeploymentOutput{} req.Data = output return } // DeleteDeployment API operation for Amazon API Gateway. // // Deletes a Deployment resource. Deleting a deployment will only succeed if // there are no Stage resources associated with it. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation DeleteDeployment for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * BadRequestException // // * TooManyRequestsException // func (c *APIGateway) DeleteDeployment(input *DeleteDeploymentInput) (*DeleteDeploymentOutput, error) { req, out := c.DeleteDeploymentRequest(input) err := req.Send() return out, err } const opDeleteDomainName = "DeleteDomainName" // DeleteDomainNameRequest generates a "aws/request.Request" representing the // client's request for the DeleteDomainName operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDomainName for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDomainName method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDomainNameRequest method. // req, resp := client.DeleteDomainNameRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) DeleteDomainNameRequest(input *DeleteDomainNameInput) (req *request.Request, output *DeleteDomainNameOutput) { op := &request.Operation{ Name: opDeleteDomainName, HTTPMethod: "DELETE", HTTPPath: "/domainnames/{domain_name}", } if input == nil { input = &DeleteDomainNameInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteDomainNameOutput{} req.Data = output return } // DeleteDomainName API operation for Amazon API Gateway. // // Deletes the DomainName resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation DeleteDomainName for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) DeleteDomainName(input *DeleteDomainNameInput) (*DeleteDomainNameOutput, error) { req, out := c.DeleteDomainNameRequest(input) err := req.Send() return out, err } const opDeleteIntegration = "DeleteIntegration" // DeleteIntegrationRequest generates a "aws/request.Request" representing the // client's request for the DeleteIntegration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteIntegration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteIntegration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteIntegrationRequest method. // req, resp := client.DeleteIntegrationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) DeleteIntegrationRequest(input *DeleteIntegrationInput) (req *request.Request, output *DeleteIntegrationOutput) { op := &request.Operation{ Name: opDeleteIntegration, HTTPMethod: "DELETE", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration", } if input == nil { input = &DeleteIntegrationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteIntegrationOutput{} req.Data = output return } // DeleteIntegration API operation for Amazon API Gateway. // // Represents a delete integration. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation DeleteIntegration for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // // * ConflictException // func (c *APIGateway) DeleteIntegration(input *DeleteIntegrationInput) (*DeleteIntegrationOutput, error) { req, out := c.DeleteIntegrationRequest(input) err := req.Send() return out, err } const opDeleteIntegrationResponse = "DeleteIntegrationResponse" // DeleteIntegrationResponseRequest generates a "aws/request.Request" representing the // client's request for the DeleteIntegrationResponse operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteIntegrationResponse for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteIntegrationResponse method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteIntegrationResponseRequest method. // req, resp := client.DeleteIntegrationResponseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) DeleteIntegrationResponseRequest(input *DeleteIntegrationResponseInput) (req *request.Request, output *DeleteIntegrationResponseOutput) { op := &request.Operation{ Name: opDeleteIntegrationResponse, HTTPMethod: "DELETE", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration/responses/{status_code}", } if input == nil { input = &DeleteIntegrationResponseInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteIntegrationResponseOutput{} req.Data = output return } // DeleteIntegrationResponse API operation for Amazon API Gateway. // // Represents a delete integration response. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation DeleteIntegrationResponse for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // // * BadRequestException // // * ConflictException // func (c *APIGateway) DeleteIntegrationResponse(input *DeleteIntegrationResponseInput) (*DeleteIntegrationResponseOutput, error) { req, out := c.DeleteIntegrationResponseRequest(input) err := req.Send() return out, err } const opDeleteMethod = "DeleteMethod" // DeleteMethodRequest generates a "aws/request.Request" representing the // client's request for the DeleteMethod operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteMethod for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteMethod method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteMethodRequest method. // req, resp := client.DeleteMethodRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) DeleteMethodRequest(input *DeleteMethodInput) (req *request.Request, output *DeleteMethodOutput) { op := &request.Operation{ Name: opDeleteMethod, HTTPMethod: "DELETE", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}", } if input == nil { input = &DeleteMethodInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteMethodOutput{} req.Data = output return } // DeleteMethod API operation for Amazon API Gateway. // // Deletes an existing Method resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation DeleteMethod for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // // * ConflictException // func (c *APIGateway) DeleteMethod(input *DeleteMethodInput) (*DeleteMethodOutput, error) { req, out := c.DeleteMethodRequest(input) err := req.Send() return out, err } const opDeleteMethodResponse = "DeleteMethodResponse" // DeleteMethodResponseRequest generates a "aws/request.Request" representing the // client's request for the DeleteMethodResponse operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteMethodResponse for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteMethodResponse method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteMethodResponseRequest method. // req, resp := client.DeleteMethodResponseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) DeleteMethodResponseRequest(input *DeleteMethodResponseInput) (req *request.Request, output *DeleteMethodResponseOutput) { op := &request.Operation{ Name: opDeleteMethodResponse, HTTPMethod: "DELETE", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/responses/{status_code}", } if input == nil { input = &DeleteMethodResponseInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteMethodResponseOutput{} req.Data = output return } // DeleteMethodResponse API operation for Amazon API Gateway. // // Deletes an existing MethodResponse resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation DeleteMethodResponse for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // // * BadRequestException // // * ConflictException // func (c *APIGateway) DeleteMethodResponse(input *DeleteMethodResponseInput) (*DeleteMethodResponseOutput, error) { req, out := c.DeleteMethodResponseRequest(input) err := req.Send() return out, err } const opDeleteModel = "DeleteModel" // DeleteModelRequest generates a "aws/request.Request" representing the // client's request for the DeleteModel operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteModel for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteModel method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteModelRequest method. // req, resp := client.DeleteModelRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) DeleteModelRequest(input *DeleteModelInput) (req *request.Request, output *DeleteModelOutput) { op := &request.Operation{ Name: opDeleteModel, HTTPMethod: "DELETE", HTTPPath: "/restapis/{restapi_id}/models/{model_name}", } if input == nil { input = &DeleteModelInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteModelOutput{} req.Data = output return } // DeleteModel API operation for Amazon API Gateway. // // Deletes a model. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation DeleteModel for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // // * BadRequestException // // * ConflictException // func (c *APIGateway) DeleteModel(input *DeleteModelInput) (*DeleteModelOutput, error) { req, out := c.DeleteModelRequest(input) err := req.Send() return out, err } const opDeleteResource = "DeleteResource" // DeleteResourceRequest generates a "aws/request.Request" representing the // client's request for the DeleteResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteResourceRequest method. // req, resp := client.DeleteResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) DeleteResourceRequest(input *DeleteResourceInput) (req *request.Request, output *DeleteResourceOutput) { op := &request.Operation{ Name: opDeleteResource, HTTPMethod: "DELETE", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}", } if input == nil { input = &DeleteResourceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteResourceOutput{} req.Data = output return } // DeleteResource API operation for Amazon API Gateway. // // Deletes a Resource resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation DeleteResource for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * BadRequestException // // * ConflictException // // * TooManyRequestsException // func (c *APIGateway) DeleteResource(input *DeleteResourceInput) (*DeleteResourceOutput, error) { req, out := c.DeleteResourceRequest(input) err := req.Send() return out, err } const opDeleteRestApi = "DeleteRestApi" // DeleteRestApiRequest generates a "aws/request.Request" representing the // client's request for the DeleteRestApi operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteRestApi for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteRestApi method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteRestApiRequest method. // req, resp := client.DeleteRestApiRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) DeleteRestApiRequest(input *DeleteRestApiInput) (req *request.Request, output *DeleteRestApiOutput) { op := &request.Operation{ Name: opDeleteRestApi, HTTPMethod: "DELETE", HTTPPath: "/restapis/{restapi_id}", } if input == nil { input = &DeleteRestApiInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteRestApiOutput{} req.Data = output return } // DeleteRestApi API operation for Amazon API Gateway. // // Deletes the specified API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation DeleteRestApi for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // // * BadRequestException // func (c *APIGateway) DeleteRestApi(input *DeleteRestApiInput) (*DeleteRestApiOutput, error) { req, out := c.DeleteRestApiRequest(input) err := req.Send() return out, err } const opDeleteStage = "DeleteStage" // DeleteStageRequest generates a "aws/request.Request" representing the // client's request for the DeleteStage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteStage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteStage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteStageRequest method. // req, resp := client.DeleteStageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) DeleteStageRequest(input *DeleteStageInput) (req *request.Request, output *DeleteStageOutput) { op := &request.Operation{ Name: opDeleteStage, HTTPMethod: "DELETE", HTTPPath: "/restapis/{restapi_id}/stages/{stage_name}", } if input == nil { input = &DeleteStageInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteStageOutput{} req.Data = output return } // DeleteStage API operation for Amazon API Gateway. // // Deletes a Stage resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation DeleteStage for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // // * BadRequestException // func (c *APIGateway) DeleteStage(input *DeleteStageInput) (*DeleteStageOutput, error) { req, out := c.DeleteStageRequest(input) err := req.Send() return out, err } const opDeleteUsagePlan = "DeleteUsagePlan" // DeleteUsagePlanRequest generates a "aws/request.Request" representing the // client's request for the DeleteUsagePlan operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteUsagePlan for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteUsagePlan method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteUsagePlanRequest method. // req, resp := client.DeleteUsagePlanRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) DeleteUsagePlanRequest(input *DeleteUsagePlanInput) (req *request.Request, output *DeleteUsagePlanOutput) { op := &request.Operation{ Name: opDeleteUsagePlan, HTTPMethod: "DELETE", HTTPPath: "/usageplans/{usageplanId}", } if input == nil { input = &DeleteUsagePlanInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteUsagePlanOutput{} req.Data = output return } // DeleteUsagePlan API operation for Amazon API Gateway. // // Deletes a usage plan of a given plan Id. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation DeleteUsagePlan for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * TooManyRequestsException // // * BadRequestException // // * NotFoundException // func (c *APIGateway) DeleteUsagePlan(input *DeleteUsagePlanInput) (*DeleteUsagePlanOutput, error) { req, out := c.DeleteUsagePlanRequest(input) err := req.Send() return out, err } const opDeleteUsagePlanKey = "DeleteUsagePlanKey" // DeleteUsagePlanKeyRequest generates a "aws/request.Request" representing the // client's request for the DeleteUsagePlanKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteUsagePlanKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteUsagePlanKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteUsagePlanKeyRequest method. // req, resp := client.DeleteUsagePlanKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) DeleteUsagePlanKeyRequest(input *DeleteUsagePlanKeyInput) (req *request.Request, output *DeleteUsagePlanKeyOutput) { op := &request.Operation{ Name: opDeleteUsagePlanKey, HTTPMethod: "DELETE", HTTPPath: "/usageplans/{usageplanId}/keys/{keyId}", } if input == nil { input = &DeleteUsagePlanKeyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteUsagePlanKeyOutput{} req.Data = output return } // DeleteUsagePlanKey API operation for Amazon API Gateway. // // Deletes a usage plan key and remove the underlying API key from the associated // usage plan. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation DeleteUsagePlanKey for usage and error information. // // Returned Error Codes: // * BadRequestException // // * ConflictException // // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) DeleteUsagePlanKey(input *DeleteUsagePlanKeyInput) (*DeleteUsagePlanKeyOutput, error) { req, out := c.DeleteUsagePlanKeyRequest(input) err := req.Send() return out, err } const opFlushStageAuthorizersCache = "FlushStageAuthorizersCache" // FlushStageAuthorizersCacheRequest generates a "aws/request.Request" representing the // client's request for the FlushStageAuthorizersCache operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See FlushStageAuthorizersCache for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the FlushStageAuthorizersCache method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the FlushStageAuthorizersCacheRequest method. // req, resp := client.FlushStageAuthorizersCacheRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) FlushStageAuthorizersCacheRequest(input *FlushStageAuthorizersCacheInput) (req *request.Request, output *FlushStageAuthorizersCacheOutput) { op := &request.Operation{ Name: opFlushStageAuthorizersCache, HTTPMethod: "DELETE", HTTPPath: "/restapis/{restapi_id}/stages/{stage_name}/cache/authorizers", } if input == nil { input = &FlushStageAuthorizersCacheInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &FlushStageAuthorizersCacheOutput{} req.Data = output return } // FlushStageAuthorizersCache API operation for Amazon API Gateway. // // Flushes all authorizer cache entries on a stage. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation FlushStageAuthorizersCache for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * BadRequestException // // * TooManyRequestsException // func (c *APIGateway) FlushStageAuthorizersCache(input *FlushStageAuthorizersCacheInput) (*FlushStageAuthorizersCacheOutput, error) { req, out := c.FlushStageAuthorizersCacheRequest(input) err := req.Send() return out, err } const opFlushStageCache = "FlushStageCache" // FlushStageCacheRequest generates a "aws/request.Request" representing the // client's request for the FlushStageCache operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See FlushStageCache for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the FlushStageCache method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the FlushStageCacheRequest method. // req, resp := client.FlushStageCacheRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) FlushStageCacheRequest(input *FlushStageCacheInput) (req *request.Request, output *FlushStageCacheOutput) { op := &request.Operation{ Name: opFlushStageCache, HTTPMethod: "DELETE", HTTPPath: "/restapis/{restapi_id}/stages/{stage_name}/cache/data", } if input == nil { input = &FlushStageCacheInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &FlushStageCacheOutput{} req.Data = output return } // FlushStageCache API operation for Amazon API Gateway. // // Flushes a stage's cache. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation FlushStageCache for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * BadRequestException // // * TooManyRequestsException // func (c *APIGateway) FlushStageCache(input *FlushStageCacheInput) (*FlushStageCacheOutput, error) { req, out := c.FlushStageCacheRequest(input) err := req.Send() return out, err } const opGenerateClientCertificate = "GenerateClientCertificate" // GenerateClientCertificateRequest generates a "aws/request.Request" representing the // client's request for the GenerateClientCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GenerateClientCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GenerateClientCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GenerateClientCertificateRequest method. // req, resp := client.GenerateClientCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GenerateClientCertificateRequest(input *GenerateClientCertificateInput) (req *request.Request, output *ClientCertificate) { op := &request.Operation{ Name: opGenerateClientCertificate, HTTPMethod: "POST", HTTPPath: "/clientcertificates", } if input == nil { input = &GenerateClientCertificateInput{} } req = c.newRequest(op, input, output) output = &ClientCertificate{} req.Data = output return } // GenerateClientCertificate API operation for Amazon API Gateway. // // Generates a ClientCertificate resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GenerateClientCertificate for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * TooManyRequestsException // // * LimitExceededException // func (c *APIGateway) GenerateClientCertificate(input *GenerateClientCertificateInput) (*ClientCertificate, error) { req, out := c.GenerateClientCertificateRequest(input) err := req.Send() return out, err } const opGetAccount = "GetAccount" // GetAccountRequest generates a "aws/request.Request" representing the // client's request for the GetAccount operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetAccount for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetAccount method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetAccountRequest method. // req, resp := client.GetAccountRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetAccountRequest(input *GetAccountInput) (req *request.Request, output *Account) { op := &request.Operation{ Name: opGetAccount, HTTPMethod: "GET", HTTPPath: "/account", } if input == nil { input = &GetAccountInput{} } req = c.newRequest(op, input, output) output = &Account{} req.Data = output return } // GetAccount API operation for Amazon API Gateway. // // Gets information about the current Account resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetAccount for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetAccount(input *GetAccountInput) (*Account, error) { req, out := c.GetAccountRequest(input) err := req.Send() return out, err } const opGetApiKey = "GetApiKey" // GetApiKeyRequest generates a "aws/request.Request" representing the // client's request for the GetApiKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetApiKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetApiKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetApiKeyRequest method. // req, resp := client.GetApiKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetApiKeyRequest(input *GetApiKeyInput) (req *request.Request, output *ApiKey) { op := &request.Operation{ Name: opGetApiKey, HTTPMethod: "GET", HTTPPath: "/apikeys/{api_Key}", } if input == nil { input = &GetApiKeyInput{} } req = c.newRequest(op, input, output) output = &ApiKey{} req.Data = output return } // GetApiKey API operation for Amazon API Gateway. // // Gets information about the current ApiKey resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetApiKey for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetApiKey(input *GetApiKeyInput) (*ApiKey, error) { req, out := c.GetApiKeyRequest(input) err := req.Send() return out, err } const opGetApiKeys = "GetApiKeys" // GetApiKeysRequest generates a "aws/request.Request" representing the // client's request for the GetApiKeys operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetApiKeys for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetApiKeys method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetApiKeysRequest method. // req, resp := client.GetApiKeysRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetApiKeysRequest(input *GetApiKeysInput) (req *request.Request, output *GetApiKeysOutput) { op := &request.Operation{ Name: opGetApiKeys, HTTPMethod: "GET", HTTPPath: "/apikeys", Paginator: &request.Paginator{ InputTokens: []string{"position"}, OutputTokens: []string{"position"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &GetApiKeysInput{} } req = c.newRequest(op, input, output) output = &GetApiKeysOutput{} req.Data = output return } // GetApiKeys API operation for Amazon API Gateway. // // Gets information about the current ApiKeys resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetApiKeys for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * TooManyRequestsException // func (c *APIGateway) GetApiKeys(input *GetApiKeysInput) (*GetApiKeysOutput, error) { req, out := c.GetApiKeysRequest(input) err := req.Send() return out, err } // GetApiKeysPages iterates over the pages of a GetApiKeys operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetApiKeys method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetApiKeys operation. // pageNum := 0 // err := client.GetApiKeysPages(params, // func(page *GetApiKeysOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *APIGateway) GetApiKeysPages(input *GetApiKeysInput, fn func(p *GetApiKeysOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetApiKeysRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetApiKeysOutput), lastPage) }) } const opGetAuthorizer = "GetAuthorizer" // GetAuthorizerRequest generates a "aws/request.Request" representing the // client's request for the GetAuthorizer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetAuthorizer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetAuthorizer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetAuthorizerRequest method. // req, resp := client.GetAuthorizerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetAuthorizerRequest(input *GetAuthorizerInput) (req *request.Request, output *Authorizer) { op := &request.Operation{ Name: opGetAuthorizer, HTTPMethod: "GET", HTTPPath: "/restapis/{restapi_id}/authorizers/{authorizer_id}", } if input == nil { input = &GetAuthorizerInput{} } req = c.newRequest(op, input, output) output = &Authorizer{} req.Data = output return } // GetAuthorizer API operation for Amazon API Gateway. // // Describe an existing Authorizer resource. // // AWS CLI (http://docs.aws.amazon.com/cli/latest/reference/apigateway/get-authorizer.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetAuthorizer for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetAuthorizer(input *GetAuthorizerInput) (*Authorizer, error) { req, out := c.GetAuthorizerRequest(input) err := req.Send() return out, err } const opGetAuthorizers = "GetAuthorizers" // GetAuthorizersRequest generates a "aws/request.Request" representing the // client's request for the GetAuthorizers operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetAuthorizers for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetAuthorizers method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetAuthorizersRequest method. // req, resp := client.GetAuthorizersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetAuthorizersRequest(input *GetAuthorizersInput) (req *request.Request, output *GetAuthorizersOutput) { op := &request.Operation{ Name: opGetAuthorizers, HTTPMethod: "GET", HTTPPath: "/restapis/{restapi_id}/authorizers", } if input == nil { input = &GetAuthorizersInput{} } req = c.newRequest(op, input, output) output = &GetAuthorizersOutput{} req.Data = output return } // GetAuthorizers API operation for Amazon API Gateway. // // Describe an existing Authorizers resource. // // AWS CLI (http://docs.aws.amazon.com/cli/latest/reference/apigateway/get-authorizers.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetAuthorizers for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetAuthorizers(input *GetAuthorizersInput) (*GetAuthorizersOutput, error) { req, out := c.GetAuthorizersRequest(input) err := req.Send() return out, err } const opGetBasePathMapping = "GetBasePathMapping" // GetBasePathMappingRequest generates a "aws/request.Request" representing the // client's request for the GetBasePathMapping operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBasePathMapping for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBasePathMapping method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBasePathMappingRequest method. // req, resp := client.GetBasePathMappingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetBasePathMappingRequest(input *GetBasePathMappingInput) (req *request.Request, output *BasePathMapping) { op := &request.Operation{ Name: opGetBasePathMapping, HTTPMethod: "GET", HTTPPath: "/domainnames/{domain_name}/basepathmappings/{base_path}", } if input == nil { input = &GetBasePathMappingInput{} } req = c.newRequest(op, input, output) output = &BasePathMapping{} req.Data = output return } // GetBasePathMapping API operation for Amazon API Gateway. // // Describe a BasePathMapping resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetBasePathMapping for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetBasePathMapping(input *GetBasePathMappingInput) (*BasePathMapping, error) { req, out := c.GetBasePathMappingRequest(input) err := req.Send() return out, err } const opGetBasePathMappings = "GetBasePathMappings" // GetBasePathMappingsRequest generates a "aws/request.Request" representing the // client's request for the GetBasePathMappings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBasePathMappings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBasePathMappings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBasePathMappingsRequest method. // req, resp := client.GetBasePathMappingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetBasePathMappingsRequest(input *GetBasePathMappingsInput) (req *request.Request, output *GetBasePathMappingsOutput) { op := &request.Operation{ Name: opGetBasePathMappings, HTTPMethod: "GET", HTTPPath: "/domainnames/{domain_name}/basepathmappings", Paginator: &request.Paginator{ InputTokens: []string{"position"}, OutputTokens: []string{"position"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &GetBasePathMappingsInput{} } req = c.newRequest(op, input, output) output = &GetBasePathMappingsOutput{} req.Data = output return } // GetBasePathMappings API operation for Amazon API Gateway. // // Represents a collection of BasePathMapping resources. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetBasePathMappings for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetBasePathMappings(input *GetBasePathMappingsInput) (*GetBasePathMappingsOutput, error) { req, out := c.GetBasePathMappingsRequest(input) err := req.Send() return out, err } // GetBasePathMappingsPages iterates over the pages of a GetBasePathMappings operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetBasePathMappings method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetBasePathMappings operation. // pageNum := 0 // err := client.GetBasePathMappingsPages(params, // func(page *GetBasePathMappingsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *APIGateway) GetBasePathMappingsPages(input *GetBasePathMappingsInput, fn func(p *GetBasePathMappingsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetBasePathMappingsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetBasePathMappingsOutput), lastPage) }) } const opGetClientCertificate = "GetClientCertificate" // GetClientCertificateRequest generates a "aws/request.Request" representing the // client's request for the GetClientCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetClientCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetClientCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetClientCertificateRequest method. // req, resp := client.GetClientCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetClientCertificateRequest(input *GetClientCertificateInput) (req *request.Request, output *ClientCertificate) { op := &request.Operation{ Name: opGetClientCertificate, HTTPMethod: "GET", HTTPPath: "/clientcertificates/{clientcertificate_id}", } if input == nil { input = &GetClientCertificateInput{} } req = c.newRequest(op, input, output) output = &ClientCertificate{} req.Data = output return } // GetClientCertificate API operation for Amazon API Gateway. // // Gets information about the current ClientCertificate resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetClientCertificate for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetClientCertificate(input *GetClientCertificateInput) (*ClientCertificate, error) { req, out := c.GetClientCertificateRequest(input) err := req.Send() return out, err } const opGetClientCertificates = "GetClientCertificates" // GetClientCertificatesRequest generates a "aws/request.Request" representing the // client's request for the GetClientCertificates operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetClientCertificates for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetClientCertificates method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetClientCertificatesRequest method. // req, resp := client.GetClientCertificatesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetClientCertificatesRequest(input *GetClientCertificatesInput) (req *request.Request, output *GetClientCertificatesOutput) { op := &request.Operation{ Name: opGetClientCertificates, HTTPMethod: "GET", HTTPPath: "/clientcertificates", Paginator: &request.Paginator{ InputTokens: []string{"position"}, OutputTokens: []string{"position"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &GetClientCertificatesInput{} } req = c.newRequest(op, input, output) output = &GetClientCertificatesOutput{} req.Data = output return } // GetClientCertificates API operation for Amazon API Gateway. // // Gets a collection of ClientCertificate resources. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetClientCertificates for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * TooManyRequestsException // func (c *APIGateway) GetClientCertificates(input *GetClientCertificatesInput) (*GetClientCertificatesOutput, error) { req, out := c.GetClientCertificatesRequest(input) err := req.Send() return out, err } // GetClientCertificatesPages iterates over the pages of a GetClientCertificates operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetClientCertificates method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetClientCertificates operation. // pageNum := 0 // err := client.GetClientCertificatesPages(params, // func(page *GetClientCertificatesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *APIGateway) GetClientCertificatesPages(input *GetClientCertificatesInput, fn func(p *GetClientCertificatesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetClientCertificatesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetClientCertificatesOutput), lastPage) }) } const opGetDeployment = "GetDeployment" // GetDeploymentRequest generates a "aws/request.Request" representing the // client's request for the GetDeployment operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDeployment for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDeployment method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDeploymentRequest method. // req, resp := client.GetDeploymentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetDeploymentRequest(input *GetDeploymentInput) (req *request.Request, output *Deployment) { op := &request.Operation{ Name: opGetDeployment, HTTPMethod: "GET", HTTPPath: "/restapis/{restapi_id}/deployments/{deployment_id}", } if input == nil { input = &GetDeploymentInput{} } req = c.newRequest(op, input, output) output = &Deployment{} req.Data = output return } // GetDeployment API operation for Amazon API Gateway. // // Gets information about a Deployment resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetDeployment for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // // * ServiceUnavailableException // func (c *APIGateway) GetDeployment(input *GetDeploymentInput) (*Deployment, error) { req, out := c.GetDeploymentRequest(input) err := req.Send() return out, err } const opGetDeployments = "GetDeployments" // GetDeploymentsRequest generates a "aws/request.Request" representing the // client's request for the GetDeployments operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDeployments for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDeployments method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDeploymentsRequest method. // req, resp := client.GetDeploymentsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetDeploymentsRequest(input *GetDeploymentsInput) (req *request.Request, output *GetDeploymentsOutput) { op := &request.Operation{ Name: opGetDeployments, HTTPMethod: "GET", HTTPPath: "/restapis/{restapi_id}/deployments", Paginator: &request.Paginator{ InputTokens: []string{"position"}, OutputTokens: []string{"position"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &GetDeploymentsInput{} } req = c.newRequest(op, input, output) output = &GetDeploymentsOutput{} req.Data = output return } // GetDeployments API operation for Amazon API Gateway. // // Gets information about a Deployments collection. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetDeployments for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * TooManyRequestsException // // * ServiceUnavailableException // func (c *APIGateway) GetDeployments(input *GetDeploymentsInput) (*GetDeploymentsOutput, error) { req, out := c.GetDeploymentsRequest(input) err := req.Send() return out, err } // GetDeploymentsPages iterates over the pages of a GetDeployments operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetDeployments method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetDeployments operation. // pageNum := 0 // err := client.GetDeploymentsPages(params, // func(page *GetDeploymentsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *APIGateway) GetDeploymentsPages(input *GetDeploymentsInput, fn func(p *GetDeploymentsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetDeploymentsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetDeploymentsOutput), lastPage) }) } const opGetDomainName = "GetDomainName" // GetDomainNameRequest generates a "aws/request.Request" representing the // client's request for the GetDomainName operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDomainName for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDomainName method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDomainNameRequest method. // req, resp := client.GetDomainNameRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetDomainNameRequest(input *GetDomainNameInput) (req *request.Request, output *DomainName) { op := &request.Operation{ Name: opGetDomainName, HTTPMethod: "GET", HTTPPath: "/domainnames/{domain_name}", } if input == nil { input = &GetDomainNameInput{} } req = c.newRequest(op, input, output) output = &DomainName{} req.Data = output return } // GetDomainName API operation for Amazon API Gateway. // // Represents a domain name that is contained in a simpler, more intuitive URL // that can be called. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetDomainName for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * ServiceUnavailableException // // * TooManyRequestsException // func (c *APIGateway) GetDomainName(input *GetDomainNameInput) (*DomainName, error) { req, out := c.GetDomainNameRequest(input) err := req.Send() return out, err } const opGetDomainNames = "GetDomainNames" // GetDomainNamesRequest generates a "aws/request.Request" representing the // client's request for the GetDomainNames operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDomainNames for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDomainNames method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDomainNamesRequest method. // req, resp := client.GetDomainNamesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetDomainNamesRequest(input *GetDomainNamesInput) (req *request.Request, output *GetDomainNamesOutput) { op := &request.Operation{ Name: opGetDomainNames, HTTPMethod: "GET", HTTPPath: "/domainnames", Paginator: &request.Paginator{ InputTokens: []string{"position"}, OutputTokens: []string{"position"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &GetDomainNamesInput{} } req = c.newRequest(op, input, output) output = &GetDomainNamesOutput{} req.Data = output return } // GetDomainNames API operation for Amazon API Gateway. // // Represents a collection of DomainName resources. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetDomainNames for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * TooManyRequestsException // func (c *APIGateway) GetDomainNames(input *GetDomainNamesInput) (*GetDomainNamesOutput, error) { req, out := c.GetDomainNamesRequest(input) err := req.Send() return out, err } // GetDomainNamesPages iterates over the pages of a GetDomainNames operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetDomainNames method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetDomainNames operation. // pageNum := 0 // err := client.GetDomainNamesPages(params, // func(page *GetDomainNamesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *APIGateway) GetDomainNamesPages(input *GetDomainNamesInput, fn func(p *GetDomainNamesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetDomainNamesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetDomainNamesOutput), lastPage) }) } const opGetExport = "GetExport" // GetExportRequest generates a "aws/request.Request" representing the // client's request for the GetExport operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetExport for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetExport method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetExportRequest method. // req, resp := client.GetExportRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetExportRequest(input *GetExportInput) (req *request.Request, output *GetExportOutput) { op := &request.Operation{ Name: opGetExport, HTTPMethod: "GET", HTTPPath: "/restapis/{restapi_id}/stages/{stage_name}/exports/{export_type}", } if input == nil { input = &GetExportInput{} } req = c.newRequest(op, input, output) output = &GetExportOutput{} req.Data = output return } // GetExport API operation for Amazon API Gateway. // // Exports a deployed version of a RestApi in a specified format. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetExport for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * BadRequestException // // * TooManyRequestsException // func (c *APIGateway) GetExport(input *GetExportInput) (*GetExportOutput, error) { req, out := c.GetExportRequest(input) err := req.Send() return out, err } const opGetIntegration = "GetIntegration" // GetIntegrationRequest generates a "aws/request.Request" representing the // client's request for the GetIntegration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetIntegration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetIntegration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetIntegrationRequest method. // req, resp := client.GetIntegrationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetIntegrationRequest(input *GetIntegrationInput) (req *request.Request, output *Integration) { op := &request.Operation{ Name: opGetIntegration, HTTPMethod: "GET", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration", } if input == nil { input = &GetIntegrationInput{} } req = c.newRequest(op, input, output) output = &Integration{} req.Data = output return } // GetIntegration API operation for Amazon API Gateway. // // Represents a get integration. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetIntegration for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetIntegration(input *GetIntegrationInput) (*Integration, error) { req, out := c.GetIntegrationRequest(input) err := req.Send() return out, err } const opGetIntegrationResponse = "GetIntegrationResponse" // GetIntegrationResponseRequest generates a "aws/request.Request" representing the // client's request for the GetIntegrationResponse operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetIntegrationResponse for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetIntegrationResponse method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetIntegrationResponseRequest method. // req, resp := client.GetIntegrationResponseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetIntegrationResponseRequest(input *GetIntegrationResponseInput) (req *request.Request, output *IntegrationResponse) { op := &request.Operation{ Name: opGetIntegrationResponse, HTTPMethod: "GET", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration/responses/{status_code}", } if input == nil { input = &GetIntegrationResponseInput{} } req = c.newRequest(op, input, output) output = &IntegrationResponse{} req.Data = output return } // GetIntegrationResponse API operation for Amazon API Gateway. // // Represents a get integration response. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetIntegrationResponse for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetIntegrationResponse(input *GetIntegrationResponseInput) (*IntegrationResponse, error) { req, out := c.GetIntegrationResponseRequest(input) err := req.Send() return out, err } const opGetMethod = "GetMethod" // GetMethodRequest generates a "aws/request.Request" representing the // client's request for the GetMethod operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetMethod for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetMethod method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetMethodRequest method. // req, resp := client.GetMethodRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetMethodRequest(input *GetMethodInput) (req *request.Request, output *Method) { op := &request.Operation{ Name: opGetMethod, HTTPMethod: "GET", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}", } if input == nil { input = &GetMethodInput{} } req = c.newRequest(op, input, output) output = &Method{} req.Data = output return } // GetMethod API operation for Amazon API Gateway. // // Describe an existing Method resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetMethod for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetMethod(input *GetMethodInput) (*Method, error) { req, out := c.GetMethodRequest(input) err := req.Send() return out, err } const opGetMethodResponse = "GetMethodResponse" // GetMethodResponseRequest generates a "aws/request.Request" representing the // client's request for the GetMethodResponse operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetMethodResponse for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetMethodResponse method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetMethodResponseRequest method. // req, resp := client.GetMethodResponseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetMethodResponseRequest(input *GetMethodResponseInput) (req *request.Request, output *MethodResponse) { op := &request.Operation{ Name: opGetMethodResponse, HTTPMethod: "GET", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/responses/{status_code}", } if input == nil { input = &GetMethodResponseInput{} } req = c.newRequest(op, input, output) output = &MethodResponse{} req.Data = output return } // GetMethodResponse API operation for Amazon API Gateway. // // Describes a MethodResponse resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetMethodResponse for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetMethodResponse(input *GetMethodResponseInput) (*MethodResponse, error) { req, out := c.GetMethodResponseRequest(input) err := req.Send() return out, err } const opGetModel = "GetModel" // GetModelRequest generates a "aws/request.Request" representing the // client's request for the GetModel operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetModel for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetModel method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetModelRequest method. // req, resp := client.GetModelRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetModelRequest(input *GetModelInput) (req *request.Request, output *Model) { op := &request.Operation{ Name: opGetModel, HTTPMethod: "GET", HTTPPath: "/restapis/{restapi_id}/models/{model_name}", } if input == nil { input = &GetModelInput{} } req = c.newRequest(op, input, output) output = &Model{} req.Data = output return } // GetModel API operation for Amazon API Gateway. // // Describes an existing model defined for a RestApi resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetModel for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetModel(input *GetModelInput) (*Model, error) { req, out := c.GetModelRequest(input) err := req.Send() return out, err } const opGetModelTemplate = "GetModelTemplate" // GetModelTemplateRequest generates a "aws/request.Request" representing the // client's request for the GetModelTemplate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetModelTemplate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetModelTemplate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetModelTemplateRequest method. // req, resp := client.GetModelTemplateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetModelTemplateRequest(input *GetModelTemplateInput) (req *request.Request, output *GetModelTemplateOutput) { op := &request.Operation{ Name: opGetModelTemplate, HTTPMethod: "GET", HTTPPath: "/restapis/{restapi_id}/models/{model_name}/default_template", } if input == nil { input = &GetModelTemplateInput{} } req = c.newRequest(op, input, output) output = &GetModelTemplateOutput{} req.Data = output return } // GetModelTemplate API operation for Amazon API Gateway. // // Generates a sample mapping template that can be used to transform a payload // into the structure of a model. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetModelTemplate for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * BadRequestException // // * TooManyRequestsException // func (c *APIGateway) GetModelTemplate(input *GetModelTemplateInput) (*GetModelTemplateOutput, error) { req, out := c.GetModelTemplateRequest(input) err := req.Send() return out, err } const opGetModels = "GetModels" // GetModelsRequest generates a "aws/request.Request" representing the // client's request for the GetModels operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetModels for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetModels method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetModelsRequest method. // req, resp := client.GetModelsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetModelsRequest(input *GetModelsInput) (req *request.Request, output *GetModelsOutput) { op := &request.Operation{ Name: opGetModels, HTTPMethod: "GET", HTTPPath: "/restapis/{restapi_id}/models", Paginator: &request.Paginator{ InputTokens: []string{"position"}, OutputTokens: []string{"position"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &GetModelsInput{} } req = c.newRequest(op, input, output) output = &GetModelsOutput{} req.Data = output return } // GetModels API operation for Amazon API Gateway. // // Describes existing Models defined for a RestApi resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetModels for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetModels(input *GetModelsInput) (*GetModelsOutput, error) { req, out := c.GetModelsRequest(input) err := req.Send() return out, err } // GetModelsPages iterates over the pages of a GetModels operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetModels method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetModels operation. // pageNum := 0 // err := client.GetModelsPages(params, // func(page *GetModelsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *APIGateway) GetModelsPages(input *GetModelsInput, fn func(p *GetModelsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetModelsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetModelsOutput), lastPage) }) } const opGetResource = "GetResource" // GetResourceRequest generates a "aws/request.Request" representing the // client's request for the GetResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetResourceRequest method. // req, resp := client.GetResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetResourceRequest(input *GetResourceInput) (req *request.Request, output *Resource) { op := &request.Operation{ Name: opGetResource, HTTPMethod: "GET", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}", } if input == nil { input = &GetResourceInput{} } req = c.newRequest(op, input, output) output = &Resource{} req.Data = output return } // GetResource API operation for Amazon API Gateway. // // Lists information about a resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetResource for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetResource(input *GetResourceInput) (*Resource, error) { req, out := c.GetResourceRequest(input) err := req.Send() return out, err } const opGetResources = "GetResources" // GetResourcesRequest generates a "aws/request.Request" representing the // client's request for the GetResources operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetResources for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetResources method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetResourcesRequest method. // req, resp := client.GetResourcesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetResourcesRequest(input *GetResourcesInput) (req *request.Request, output *GetResourcesOutput) { op := &request.Operation{ Name: opGetResources, HTTPMethod: "GET", HTTPPath: "/restapis/{restapi_id}/resources", Paginator: &request.Paginator{ InputTokens: []string{"position"}, OutputTokens: []string{"position"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &GetResourcesInput{} } req = c.newRequest(op, input, output) output = &GetResourcesOutput{} req.Data = output return } // GetResources API operation for Amazon API Gateway. // // Lists information about a collection of Resource resources. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetResources for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetResources(input *GetResourcesInput) (*GetResourcesOutput, error) { req, out := c.GetResourcesRequest(input) err := req.Send() return out, err } // GetResourcesPages iterates over the pages of a GetResources operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetResources method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetResources operation. // pageNum := 0 // err := client.GetResourcesPages(params, // func(page *GetResourcesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *APIGateway) GetResourcesPages(input *GetResourcesInput, fn func(p *GetResourcesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetResourcesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetResourcesOutput), lastPage) }) } const opGetRestApi = "GetRestApi" // GetRestApiRequest generates a "aws/request.Request" representing the // client's request for the GetRestApi operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetRestApi for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetRestApi method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetRestApiRequest method. // req, resp := client.GetRestApiRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetRestApiRequest(input *GetRestApiInput) (req *request.Request, output *RestApi) { op := &request.Operation{ Name: opGetRestApi, HTTPMethod: "GET", HTTPPath: "/restapis/{restapi_id}", } if input == nil { input = &GetRestApiInput{} } req = c.newRequest(op, input, output) output = &RestApi{} req.Data = output return } // GetRestApi API operation for Amazon API Gateway. // // Lists the RestApi resource in the collection. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetRestApi for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetRestApi(input *GetRestApiInput) (*RestApi, error) { req, out := c.GetRestApiRequest(input) err := req.Send() return out, err } const opGetRestApis = "GetRestApis" // GetRestApisRequest generates a "aws/request.Request" representing the // client's request for the GetRestApis operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetRestApis for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetRestApis method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetRestApisRequest method. // req, resp := client.GetRestApisRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetRestApisRequest(input *GetRestApisInput) (req *request.Request, output *GetRestApisOutput) { op := &request.Operation{ Name: opGetRestApis, HTTPMethod: "GET", HTTPPath: "/restapis", Paginator: &request.Paginator{ InputTokens: []string{"position"}, OutputTokens: []string{"position"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &GetRestApisInput{} } req = c.newRequest(op, input, output) output = &GetRestApisOutput{} req.Data = output return } // GetRestApis API operation for Amazon API Gateway. // // Lists the RestApis resources for your collection. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetRestApis for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * TooManyRequestsException // func (c *APIGateway) GetRestApis(input *GetRestApisInput) (*GetRestApisOutput, error) { req, out := c.GetRestApisRequest(input) err := req.Send() return out, err } // GetRestApisPages iterates over the pages of a GetRestApis operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetRestApis method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetRestApis operation. // pageNum := 0 // err := client.GetRestApisPages(params, // func(page *GetRestApisOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *APIGateway) GetRestApisPages(input *GetRestApisInput, fn func(p *GetRestApisOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetRestApisRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetRestApisOutput), lastPage) }) } const opGetSdk = "GetSdk" // GetSdkRequest generates a "aws/request.Request" representing the // client's request for the GetSdk operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetSdk for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetSdk method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetSdkRequest method. // req, resp := client.GetSdkRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetSdkRequest(input *GetSdkInput) (req *request.Request, output *GetSdkOutput) { op := &request.Operation{ Name: opGetSdk, HTTPMethod: "GET", HTTPPath: "/restapis/{restapi_id}/stages/{stage_name}/sdks/{sdk_type}", } if input == nil { input = &GetSdkInput{} } req = c.newRequest(op, input, output) output = &GetSdkOutput{} req.Data = output return } // GetSdk API operation for Amazon API Gateway. // // Generates a client SDK for a RestApi and Stage. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetSdk for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * BadRequestException // // * TooManyRequestsException // func (c *APIGateway) GetSdk(input *GetSdkInput) (*GetSdkOutput, error) { req, out := c.GetSdkRequest(input) err := req.Send() return out, err } const opGetStage = "GetStage" // GetStageRequest generates a "aws/request.Request" representing the // client's request for the GetStage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetStage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetStage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetStageRequest method. // req, resp := client.GetStageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetStageRequest(input *GetStageInput) (req *request.Request, output *Stage) { op := &request.Operation{ Name: opGetStage, HTTPMethod: "GET", HTTPPath: "/restapis/{restapi_id}/stages/{stage_name}", } if input == nil { input = &GetStageInput{} } req = c.newRequest(op, input, output) output = &Stage{} req.Data = output return } // GetStage API operation for Amazon API Gateway. // // Gets information about a Stage resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetStage for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetStage(input *GetStageInput) (*Stage, error) { req, out := c.GetStageRequest(input) err := req.Send() return out, err } const opGetStages = "GetStages" // GetStagesRequest generates a "aws/request.Request" representing the // client's request for the GetStages operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetStages for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetStages method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetStagesRequest method. // req, resp := client.GetStagesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetStagesRequest(input *GetStagesInput) (req *request.Request, output *GetStagesOutput) { op := &request.Operation{ Name: opGetStages, HTTPMethod: "GET", HTTPPath: "/restapis/{restapi_id}/stages", } if input == nil { input = &GetStagesInput{} } req = c.newRequest(op, input, output) output = &GetStagesOutput{} req.Data = output return } // GetStages API operation for Amazon API Gateway. // // Gets information about one or more Stage resources. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetStages for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetStages(input *GetStagesInput) (*GetStagesOutput, error) { req, out := c.GetStagesRequest(input) err := req.Send() return out, err } const opGetUsage = "GetUsage" // GetUsageRequest generates a "aws/request.Request" representing the // client's request for the GetUsage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetUsage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetUsage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetUsageRequest method. // req, resp := client.GetUsageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetUsageRequest(input *GetUsageInput) (req *request.Request, output *Usage) { op := &request.Operation{ Name: opGetUsage, HTTPMethod: "GET", HTTPPath: "/usageplans/{usageplanId}/usage", Paginator: &request.Paginator{ InputTokens: []string{"position"}, OutputTokens: []string{"position"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &GetUsageInput{} } req = c.newRequest(op, input, output) output = &Usage{} req.Data = output return } // GetUsage API operation for Amazon API Gateway. // // Gets the usage data of a usage plan in a specified time interval. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetUsage for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetUsage(input *GetUsageInput) (*Usage, error) { req, out := c.GetUsageRequest(input) err := req.Send() return out, err } // GetUsagePages iterates over the pages of a GetUsage operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetUsage method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetUsage operation. // pageNum := 0 // err := client.GetUsagePages(params, // func(page *Usage, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *APIGateway) GetUsagePages(input *GetUsageInput, fn func(p *Usage, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetUsageRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*Usage), lastPage) }) } const opGetUsagePlan = "GetUsagePlan" // GetUsagePlanRequest generates a "aws/request.Request" representing the // client's request for the GetUsagePlan operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetUsagePlan for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetUsagePlan method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetUsagePlanRequest method. // req, resp := client.GetUsagePlanRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetUsagePlanRequest(input *GetUsagePlanInput) (req *request.Request, output *UsagePlan) { op := &request.Operation{ Name: opGetUsagePlan, HTTPMethod: "GET", HTTPPath: "/usageplans/{usageplanId}", } if input == nil { input = &GetUsagePlanInput{} } req = c.newRequest(op, input, output) output = &UsagePlan{} req.Data = output return } // GetUsagePlan API operation for Amazon API Gateway. // // Gets a usage plan of a given plan identifier. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetUsagePlan for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetUsagePlan(input *GetUsagePlanInput) (*UsagePlan, error) { req, out := c.GetUsagePlanRequest(input) err := req.Send() return out, err } const opGetUsagePlanKey = "GetUsagePlanKey" // GetUsagePlanKeyRequest generates a "aws/request.Request" representing the // client's request for the GetUsagePlanKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetUsagePlanKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetUsagePlanKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetUsagePlanKeyRequest method. // req, resp := client.GetUsagePlanKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetUsagePlanKeyRequest(input *GetUsagePlanKeyInput) (req *request.Request, output *UsagePlanKey) { op := &request.Operation{ Name: opGetUsagePlanKey, HTTPMethod: "GET", HTTPPath: "/usageplans/{usageplanId}/keys/{keyId}", } if input == nil { input = &GetUsagePlanKeyInput{} } req = c.newRequest(op, input, output) output = &UsagePlanKey{} req.Data = output return } // GetUsagePlanKey API operation for Amazon API Gateway. // // Gets a usage plan key of a given key identifier. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetUsagePlanKey for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetUsagePlanKey(input *GetUsagePlanKeyInput) (*UsagePlanKey, error) { req, out := c.GetUsagePlanKeyRequest(input) err := req.Send() return out, err } const opGetUsagePlanKeys = "GetUsagePlanKeys" // GetUsagePlanKeysRequest generates a "aws/request.Request" representing the // client's request for the GetUsagePlanKeys operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetUsagePlanKeys for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetUsagePlanKeys method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetUsagePlanKeysRequest method. // req, resp := client.GetUsagePlanKeysRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetUsagePlanKeysRequest(input *GetUsagePlanKeysInput) (req *request.Request, output *GetUsagePlanKeysOutput) { op := &request.Operation{ Name: opGetUsagePlanKeys, HTTPMethod: "GET", HTTPPath: "/usageplans/{usageplanId}/keys", Paginator: &request.Paginator{ InputTokens: []string{"position"}, OutputTokens: []string{"position"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &GetUsagePlanKeysInput{} } req = c.newRequest(op, input, output) output = &GetUsagePlanKeysOutput{} req.Data = output return } // GetUsagePlanKeys API operation for Amazon API Gateway. // // Gets all the usage plan keys representing the API keys added to a specified // usage plan. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetUsagePlanKeys for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) GetUsagePlanKeys(input *GetUsagePlanKeysInput) (*GetUsagePlanKeysOutput, error) { req, out := c.GetUsagePlanKeysRequest(input) err := req.Send() return out, err } // GetUsagePlanKeysPages iterates over the pages of a GetUsagePlanKeys operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetUsagePlanKeys method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetUsagePlanKeys operation. // pageNum := 0 // err := client.GetUsagePlanKeysPages(params, // func(page *GetUsagePlanKeysOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *APIGateway) GetUsagePlanKeysPages(input *GetUsagePlanKeysInput, fn func(p *GetUsagePlanKeysOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetUsagePlanKeysRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetUsagePlanKeysOutput), lastPage) }) } const opGetUsagePlans = "GetUsagePlans" // GetUsagePlansRequest generates a "aws/request.Request" representing the // client's request for the GetUsagePlans operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetUsagePlans for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetUsagePlans method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetUsagePlansRequest method. // req, resp := client.GetUsagePlansRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) GetUsagePlansRequest(input *GetUsagePlansInput) (req *request.Request, output *GetUsagePlansOutput) { op := &request.Operation{ Name: opGetUsagePlans, HTTPMethod: "GET", HTTPPath: "/usageplans", Paginator: &request.Paginator{ InputTokens: []string{"position"}, OutputTokens: []string{"position"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &GetUsagePlansInput{} } req = c.newRequest(op, input, output) output = &GetUsagePlansOutput{} req.Data = output return } // GetUsagePlans API operation for Amazon API Gateway. // // Gets all the usage plans of the caller's account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation GetUsagePlans for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * TooManyRequestsException // // * ConflictException // func (c *APIGateway) GetUsagePlans(input *GetUsagePlansInput) (*GetUsagePlansOutput, error) { req, out := c.GetUsagePlansRequest(input) err := req.Send() return out, err } // GetUsagePlansPages iterates over the pages of a GetUsagePlans operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetUsagePlans method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetUsagePlans operation. // pageNum := 0 // err := client.GetUsagePlansPages(params, // func(page *GetUsagePlansOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *APIGateway) GetUsagePlansPages(input *GetUsagePlansInput, fn func(p *GetUsagePlansOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetUsagePlansRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetUsagePlansOutput), lastPage) }) } const opImportApiKeys = "ImportApiKeys" // ImportApiKeysRequest generates a "aws/request.Request" representing the // client's request for the ImportApiKeys operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ImportApiKeys for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ImportApiKeys method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ImportApiKeysRequest method. // req, resp := client.ImportApiKeysRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) ImportApiKeysRequest(input *ImportApiKeysInput) (req *request.Request, output *ImportApiKeysOutput) { op := &request.Operation{ Name: opImportApiKeys, HTTPMethod: "POST", HTTPPath: "/apikeys?mode=import", } if input == nil { input = &ImportApiKeysInput{} } req = c.newRequest(op, input, output) output = &ImportApiKeysOutput{} req.Data = output return } // ImportApiKeys API operation for Amazon API Gateway. // // Import API keys from an external source, such as a CSV-formatted file. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation ImportApiKeys for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // // * LimitExceededException // // * BadRequestException // // * ConflictException // func (c *APIGateway) ImportApiKeys(input *ImportApiKeysInput) (*ImportApiKeysOutput, error) { req, out := c.ImportApiKeysRequest(input) err := req.Send() return out, err } const opImportRestApi = "ImportRestApi" // ImportRestApiRequest generates a "aws/request.Request" representing the // client's request for the ImportRestApi operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ImportRestApi for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ImportRestApi method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ImportRestApiRequest method. // req, resp := client.ImportRestApiRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) ImportRestApiRequest(input *ImportRestApiInput) (req *request.Request, output *RestApi) { op := &request.Operation{ Name: opImportRestApi, HTTPMethod: "POST", HTTPPath: "/restapis?mode=import", } if input == nil { input = &ImportRestApiInput{} } req = c.newRequest(op, input, output) output = &RestApi{} req.Data = output return } // ImportRestApi API operation for Amazon API Gateway. // // A feature of the Amazon API Gateway control service for creating a new API // from an external API definition file. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation ImportRestApi for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * LimitExceededException // // * BadRequestException // // * TooManyRequestsException // // * ConflictException // func (c *APIGateway) ImportRestApi(input *ImportRestApiInput) (*RestApi, error) { req, out := c.ImportRestApiRequest(input) err := req.Send() return out, err } const opPutIntegration = "PutIntegration" // PutIntegrationRequest generates a "aws/request.Request" representing the // client's request for the PutIntegration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutIntegration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutIntegration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutIntegrationRequest method. // req, resp := client.PutIntegrationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) PutIntegrationRequest(input *PutIntegrationInput) (req *request.Request, output *Integration) { op := &request.Operation{ Name: opPutIntegration, HTTPMethod: "PUT", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration", } if input == nil { input = &PutIntegrationInput{} } req = c.newRequest(op, input, output) output = &Integration{} req.Data = output return } // PutIntegration API operation for Amazon API Gateway. // // Represents a put integration. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation PutIntegration for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * BadRequestException // // * ConflictException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) PutIntegration(input *PutIntegrationInput) (*Integration, error) { req, out := c.PutIntegrationRequest(input) err := req.Send() return out, err } const opPutIntegrationResponse = "PutIntegrationResponse" // PutIntegrationResponseRequest generates a "aws/request.Request" representing the // client's request for the PutIntegrationResponse operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutIntegrationResponse for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutIntegrationResponse method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutIntegrationResponseRequest method. // req, resp := client.PutIntegrationResponseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) PutIntegrationResponseRequest(input *PutIntegrationResponseInput) (req *request.Request, output *IntegrationResponse) { op := &request.Operation{ Name: opPutIntegrationResponse, HTTPMethod: "PUT", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration/responses/{status_code}", } if input == nil { input = &PutIntegrationResponseInput{} } req = c.newRequest(op, input, output) output = &IntegrationResponse{} req.Data = output return } // PutIntegrationResponse API operation for Amazon API Gateway. // // Represents a put integration. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation PutIntegrationResponse for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * LimitExceededException // // * BadRequestException // // * TooManyRequestsException // // * ConflictException // func (c *APIGateway) PutIntegrationResponse(input *PutIntegrationResponseInput) (*IntegrationResponse, error) { req, out := c.PutIntegrationResponseRequest(input) err := req.Send() return out, err } const opPutMethod = "PutMethod" // PutMethodRequest generates a "aws/request.Request" representing the // client's request for the PutMethod operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutMethod for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutMethod method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutMethodRequest method. // req, resp := client.PutMethodRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) PutMethodRequest(input *PutMethodInput) (req *request.Request, output *Method) { op := &request.Operation{ Name: opPutMethod, HTTPMethod: "PUT", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}", } if input == nil { input = &PutMethodInput{} } req = c.newRequest(op, input, output) output = &Method{} req.Data = output return } // PutMethod API operation for Amazon API Gateway. // // Add a method to an existing Resource resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation PutMethod for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * NotFoundException // // * ConflictException // // * LimitExceededException // // * TooManyRequestsException // func (c *APIGateway) PutMethod(input *PutMethodInput) (*Method, error) { req, out := c.PutMethodRequest(input) err := req.Send() return out, err } const opPutMethodResponse = "PutMethodResponse" // PutMethodResponseRequest generates a "aws/request.Request" representing the // client's request for the PutMethodResponse operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutMethodResponse for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutMethodResponse method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutMethodResponseRequest method. // req, resp := client.PutMethodResponseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) PutMethodResponseRequest(input *PutMethodResponseInput) (req *request.Request, output *MethodResponse) { op := &request.Operation{ Name: opPutMethodResponse, HTTPMethod: "PUT", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/responses/{status_code}", } if input == nil { input = &PutMethodResponseInput{} } req = c.newRequest(op, input, output) output = &MethodResponse{} req.Data = output return } // PutMethodResponse API operation for Amazon API Gateway. // // Adds a MethodResponse to an existing Method resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation PutMethodResponse for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * ConflictException // // * LimitExceededException // // * BadRequestException // // * TooManyRequestsException // func (c *APIGateway) PutMethodResponse(input *PutMethodResponseInput) (*MethodResponse, error) { req, out := c.PutMethodResponseRequest(input) err := req.Send() return out, err } const opPutRestApi = "PutRestApi" // PutRestApiRequest generates a "aws/request.Request" representing the // client's request for the PutRestApi operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutRestApi for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutRestApi method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutRestApiRequest method. // req, resp := client.PutRestApiRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) PutRestApiRequest(input *PutRestApiInput) (req *request.Request, output *RestApi) { op := &request.Operation{ Name: opPutRestApi, HTTPMethod: "PUT", HTTPPath: "/restapis/{restapi_id}", } if input == nil { input = &PutRestApiInput{} } req = c.newRequest(op, input, output) output = &RestApi{} req.Data = output return } // PutRestApi API operation for Amazon API Gateway. // // A feature of the Amazon API Gateway control service for updating an existing // API with an input of external API definitions. The update can take the form // of merging the supplied definition into the existing API or overwriting the // existing API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation PutRestApi for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * LimitExceededException // // * NotFoundException // // * BadRequestException // // * TooManyRequestsException // // * ConflictException // func (c *APIGateway) PutRestApi(input *PutRestApiInput) (*RestApi, error) { req, out := c.PutRestApiRequest(input) err := req.Send() return out, err } const opTestInvokeAuthorizer = "TestInvokeAuthorizer" // TestInvokeAuthorizerRequest generates a "aws/request.Request" representing the // client's request for the TestInvokeAuthorizer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See TestInvokeAuthorizer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the TestInvokeAuthorizer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the TestInvokeAuthorizerRequest method. // req, resp := client.TestInvokeAuthorizerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) TestInvokeAuthorizerRequest(input *TestInvokeAuthorizerInput) (req *request.Request, output *TestInvokeAuthorizerOutput) { op := &request.Operation{ Name: opTestInvokeAuthorizer, HTTPMethod: "POST", HTTPPath: "/restapis/{restapi_id}/authorizers/{authorizer_id}", } if input == nil { input = &TestInvokeAuthorizerInput{} } req = c.newRequest(op, input, output) output = &TestInvokeAuthorizerOutput{} req.Data = output return } // TestInvokeAuthorizer API operation for Amazon API Gateway. // // Simulate the execution of an Authorizer in your RestApi with headers, parameters, // and an incoming request body. // // Enable custom authorizers (http://docs.aws.amazon.com/apigateway/latest/developerguide/use-custom-authorizer.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation TestInvokeAuthorizer for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) TestInvokeAuthorizer(input *TestInvokeAuthorizerInput) (*TestInvokeAuthorizerOutput, error) { req, out := c.TestInvokeAuthorizerRequest(input) err := req.Send() return out, err } const opTestInvokeMethod = "TestInvokeMethod" // TestInvokeMethodRequest generates a "aws/request.Request" representing the // client's request for the TestInvokeMethod operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See TestInvokeMethod for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the TestInvokeMethod method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the TestInvokeMethodRequest method. // req, resp := client.TestInvokeMethodRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) TestInvokeMethodRequest(input *TestInvokeMethodInput) (req *request.Request, output *TestInvokeMethodOutput) { op := &request.Operation{ Name: opTestInvokeMethod, HTTPMethod: "POST", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}", } if input == nil { input = &TestInvokeMethodInput{} } req = c.newRequest(op, input, output) output = &TestInvokeMethodOutput{} req.Data = output return } // TestInvokeMethod API operation for Amazon API Gateway. // // Simulate the execution of a Method in your RestApi with headers, parameters, // and an incoming request body. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation TestInvokeMethod for usage and error information. // // Returned Error Codes: // * BadRequestException // // * UnauthorizedException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) TestInvokeMethod(input *TestInvokeMethodInput) (*TestInvokeMethodOutput, error) { req, out := c.TestInvokeMethodRequest(input) err := req.Send() return out, err } const opUpdateAccount = "UpdateAccount" // UpdateAccountRequest generates a "aws/request.Request" representing the // client's request for the UpdateAccount operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateAccount for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateAccount method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateAccountRequest method. // req, resp := client.UpdateAccountRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) UpdateAccountRequest(input *UpdateAccountInput) (req *request.Request, output *Account) { op := &request.Operation{ Name: opUpdateAccount, HTTPMethod: "PATCH", HTTPPath: "/account", } if input == nil { input = &UpdateAccountInput{} } req = c.newRequest(op, input, output) output = &Account{} req.Data = output return } // UpdateAccount API operation for Amazon API Gateway. // // Changes information about the current Account resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation UpdateAccount for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * BadRequestException // // * NotFoundException // // * TooManyRequestsException // func (c *APIGateway) UpdateAccount(input *UpdateAccountInput) (*Account, error) { req, out := c.UpdateAccountRequest(input) err := req.Send() return out, err } const opUpdateApiKey = "UpdateApiKey" // UpdateApiKeyRequest generates a "aws/request.Request" representing the // client's request for the UpdateApiKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateApiKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateApiKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateApiKeyRequest method. // req, resp := client.UpdateApiKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) UpdateApiKeyRequest(input *UpdateApiKeyInput) (req *request.Request, output *ApiKey) { op := &request.Operation{ Name: opUpdateApiKey, HTTPMethod: "PATCH", HTTPPath: "/apikeys/{api_Key}", } if input == nil { input = &UpdateApiKeyInput{} } req = c.newRequest(op, input, output) output = &ApiKey{} req.Data = output return } // UpdateApiKey API operation for Amazon API Gateway. // // Changes information about an ApiKey resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation UpdateApiKey for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * BadRequestException // // * TooManyRequestsException // // * ConflictException // func (c *APIGateway) UpdateApiKey(input *UpdateApiKeyInput) (*ApiKey, error) { req, out := c.UpdateApiKeyRequest(input) err := req.Send() return out, err } const opUpdateAuthorizer = "UpdateAuthorizer" // UpdateAuthorizerRequest generates a "aws/request.Request" representing the // client's request for the UpdateAuthorizer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateAuthorizer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateAuthorizer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateAuthorizerRequest method. // req, resp := client.UpdateAuthorizerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) UpdateAuthorizerRequest(input *UpdateAuthorizerInput) (req *request.Request, output *Authorizer) { op := &request.Operation{ Name: opUpdateAuthorizer, HTTPMethod: "PATCH", HTTPPath: "/restapis/{restapi_id}/authorizers/{authorizer_id}", } if input == nil { input = &UpdateAuthorizerInput{} } req = c.newRequest(op, input, output) output = &Authorizer{} req.Data = output return } // UpdateAuthorizer API operation for Amazon API Gateway. // // Updates an existing Authorizer resource. // // AWS CLI (http://docs.aws.amazon.com/cli/latest/reference/apigateway/update-authorizer.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation UpdateAuthorizer for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * BadRequestException // // * TooManyRequestsException // func (c *APIGateway) UpdateAuthorizer(input *UpdateAuthorizerInput) (*Authorizer, error) { req, out := c.UpdateAuthorizerRequest(input) err := req.Send() return out, err } const opUpdateBasePathMapping = "UpdateBasePathMapping" // UpdateBasePathMappingRequest generates a "aws/request.Request" representing the // client's request for the UpdateBasePathMapping operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateBasePathMapping for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateBasePathMapping method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateBasePathMappingRequest method. // req, resp := client.UpdateBasePathMappingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) UpdateBasePathMappingRequest(input *UpdateBasePathMappingInput) (req *request.Request, output *BasePathMapping) { op := &request.Operation{ Name: opUpdateBasePathMapping, HTTPMethod: "PATCH", HTTPPath: "/domainnames/{domain_name}/basepathmappings/{base_path}", } if input == nil { input = &UpdateBasePathMappingInput{} } req = c.newRequest(op, input, output) output = &BasePathMapping{} req.Data = output return } // UpdateBasePathMapping API operation for Amazon API Gateway. // // Changes information about the BasePathMapping resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation UpdateBasePathMapping for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * ConflictException // // * BadRequestException // // * TooManyRequestsException // func (c *APIGateway) UpdateBasePathMapping(input *UpdateBasePathMappingInput) (*BasePathMapping, error) { req, out := c.UpdateBasePathMappingRequest(input) err := req.Send() return out, err } const opUpdateClientCertificate = "UpdateClientCertificate" // UpdateClientCertificateRequest generates a "aws/request.Request" representing the // client's request for the UpdateClientCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateClientCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateClientCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateClientCertificateRequest method. // req, resp := client.UpdateClientCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) UpdateClientCertificateRequest(input *UpdateClientCertificateInput) (req *request.Request, output *ClientCertificate) { op := &request.Operation{ Name: opUpdateClientCertificate, HTTPMethod: "PATCH", HTTPPath: "/clientcertificates/{clientcertificate_id}", } if input == nil { input = &UpdateClientCertificateInput{} } req = c.newRequest(op, input, output) output = &ClientCertificate{} req.Data = output return } // UpdateClientCertificate API operation for Amazon API Gateway. // // Changes information about an ClientCertificate resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation UpdateClientCertificate for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * TooManyRequestsException // // * BadRequestException // // * NotFoundException // func (c *APIGateway) UpdateClientCertificate(input *UpdateClientCertificateInput) (*ClientCertificate, error) { req, out := c.UpdateClientCertificateRequest(input) err := req.Send() return out, err } const opUpdateDeployment = "UpdateDeployment" // UpdateDeploymentRequest generates a "aws/request.Request" representing the // client's request for the UpdateDeployment operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateDeployment for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateDeployment method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateDeploymentRequest method. // req, resp := client.UpdateDeploymentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) UpdateDeploymentRequest(input *UpdateDeploymentInput) (req *request.Request, output *Deployment) { op := &request.Operation{ Name: opUpdateDeployment, HTTPMethod: "PATCH", HTTPPath: "/restapis/{restapi_id}/deployments/{deployment_id}", } if input == nil { input = &UpdateDeploymentInput{} } req = c.newRequest(op, input, output) output = &Deployment{} req.Data = output return } // UpdateDeployment API operation for Amazon API Gateway. // // Changes information about a Deployment resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation UpdateDeployment for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * BadRequestException // // * TooManyRequestsException // // * ServiceUnavailableException // func (c *APIGateway) UpdateDeployment(input *UpdateDeploymentInput) (*Deployment, error) { req, out := c.UpdateDeploymentRequest(input) err := req.Send() return out, err } const opUpdateDomainName = "UpdateDomainName" // UpdateDomainNameRequest generates a "aws/request.Request" representing the // client's request for the UpdateDomainName operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateDomainName for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateDomainName method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateDomainNameRequest method. // req, resp := client.UpdateDomainNameRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) UpdateDomainNameRequest(input *UpdateDomainNameInput) (req *request.Request, output *DomainName) { op := &request.Operation{ Name: opUpdateDomainName, HTTPMethod: "PATCH", HTTPPath: "/domainnames/{domain_name}", } if input == nil { input = &UpdateDomainNameInput{} } req = c.newRequest(op, input, output) output = &DomainName{} req.Data = output return } // UpdateDomainName API operation for Amazon API Gateway. // // Changes information about the DomainName resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation UpdateDomainName for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * BadRequestException // // * ConflictException // // * TooManyRequestsException // func (c *APIGateway) UpdateDomainName(input *UpdateDomainNameInput) (*DomainName, error) { req, out := c.UpdateDomainNameRequest(input) err := req.Send() return out, err } const opUpdateIntegration = "UpdateIntegration" // UpdateIntegrationRequest generates a "aws/request.Request" representing the // client's request for the UpdateIntegration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateIntegration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateIntegration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateIntegrationRequest method. // req, resp := client.UpdateIntegrationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) UpdateIntegrationRequest(input *UpdateIntegrationInput) (req *request.Request, output *Integration) { op := &request.Operation{ Name: opUpdateIntegration, HTTPMethod: "PATCH", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration", } if input == nil { input = &UpdateIntegrationInput{} } req = c.newRequest(op, input, output) output = &Integration{} req.Data = output return } // UpdateIntegration API operation for Amazon API Gateway. // // Represents an update integration. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation UpdateIntegration for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * BadRequestException // // * TooManyRequestsException // // * ConflictException // func (c *APIGateway) UpdateIntegration(input *UpdateIntegrationInput) (*Integration, error) { req, out := c.UpdateIntegrationRequest(input) err := req.Send() return out, err } const opUpdateIntegrationResponse = "UpdateIntegrationResponse" // UpdateIntegrationResponseRequest generates a "aws/request.Request" representing the // client's request for the UpdateIntegrationResponse operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateIntegrationResponse for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateIntegrationResponse method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateIntegrationResponseRequest method. // req, resp := client.UpdateIntegrationResponseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) UpdateIntegrationResponseRequest(input *UpdateIntegrationResponseInput) (req *request.Request, output *IntegrationResponse) { op := &request.Operation{ Name: opUpdateIntegrationResponse, HTTPMethod: "PATCH", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration/responses/{status_code}", } if input == nil { input = &UpdateIntegrationResponseInput{} } req = c.newRequest(op, input, output) output = &IntegrationResponse{} req.Data = output return } // UpdateIntegrationResponse API operation for Amazon API Gateway. // // Represents an update integration response. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation UpdateIntegrationResponse for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * ConflictException // // * BadRequestException // // * TooManyRequestsException // func (c *APIGateway) UpdateIntegrationResponse(input *UpdateIntegrationResponseInput) (*IntegrationResponse, error) { req, out := c.UpdateIntegrationResponseRequest(input) err := req.Send() return out, err } const opUpdateMethod = "UpdateMethod" // UpdateMethodRequest generates a "aws/request.Request" representing the // client's request for the UpdateMethod operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateMethod for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateMethod method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateMethodRequest method. // req, resp := client.UpdateMethodRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) UpdateMethodRequest(input *UpdateMethodInput) (req *request.Request, output *Method) { op := &request.Operation{ Name: opUpdateMethod, HTTPMethod: "PATCH", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}", } if input == nil { input = &UpdateMethodInput{} } req = c.newRequest(op, input, output) output = &Method{} req.Data = output return } // UpdateMethod API operation for Amazon API Gateway. // // Updates an existing Method resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation UpdateMethod for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * BadRequestException // // * ConflictException // // * TooManyRequestsException // func (c *APIGateway) UpdateMethod(input *UpdateMethodInput) (*Method, error) { req, out := c.UpdateMethodRequest(input) err := req.Send() return out, err } const opUpdateMethodResponse = "UpdateMethodResponse" // UpdateMethodResponseRequest generates a "aws/request.Request" representing the // client's request for the UpdateMethodResponse operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateMethodResponse for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateMethodResponse method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateMethodResponseRequest method. // req, resp := client.UpdateMethodResponseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) UpdateMethodResponseRequest(input *UpdateMethodResponseInput) (req *request.Request, output *MethodResponse) { op := &request.Operation{ Name: opUpdateMethodResponse, HTTPMethod: "PATCH", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/responses/{status_code}", } if input == nil { input = &UpdateMethodResponseInput{} } req = c.newRequest(op, input, output) output = &MethodResponse{} req.Data = output return } // UpdateMethodResponse API operation for Amazon API Gateway. // // Updates an existing MethodResponse resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation UpdateMethodResponse for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * ConflictException // // * LimitExceededException // // * BadRequestException // // * TooManyRequestsException // func (c *APIGateway) UpdateMethodResponse(input *UpdateMethodResponseInput) (*MethodResponse, error) { req, out := c.UpdateMethodResponseRequest(input) err := req.Send() return out, err } const opUpdateModel = "UpdateModel" // UpdateModelRequest generates a "aws/request.Request" representing the // client's request for the UpdateModel operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateModel for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateModel method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateModelRequest method. // req, resp := client.UpdateModelRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) UpdateModelRequest(input *UpdateModelInput) (req *request.Request, output *Model) { op := &request.Operation{ Name: opUpdateModel, HTTPMethod: "PATCH", HTTPPath: "/restapis/{restapi_id}/models/{model_name}", } if input == nil { input = &UpdateModelInput{} } req = c.newRequest(op, input, output) output = &Model{} req.Data = output return } // UpdateModel API operation for Amazon API Gateway. // // Changes information about a model. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation UpdateModel for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * BadRequestException // // * ConflictException // // * TooManyRequestsException // func (c *APIGateway) UpdateModel(input *UpdateModelInput) (*Model, error) { req, out := c.UpdateModelRequest(input) err := req.Send() return out, err } const opUpdateResource = "UpdateResource" // UpdateResourceRequest generates a "aws/request.Request" representing the // client's request for the UpdateResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateResourceRequest method. // req, resp := client.UpdateResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) UpdateResourceRequest(input *UpdateResourceInput) (req *request.Request, output *Resource) { op := &request.Operation{ Name: opUpdateResource, HTTPMethod: "PATCH", HTTPPath: "/restapis/{restapi_id}/resources/{resource_id}", } if input == nil { input = &UpdateResourceInput{} } req = c.newRequest(op, input, output) output = &Resource{} req.Data = output return } // UpdateResource API operation for Amazon API Gateway. // // Changes information about a Resource resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation UpdateResource for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * ConflictException // // * BadRequestException // // * TooManyRequestsException // func (c *APIGateway) UpdateResource(input *UpdateResourceInput) (*Resource, error) { req, out := c.UpdateResourceRequest(input) err := req.Send() return out, err } const opUpdateRestApi = "UpdateRestApi" // UpdateRestApiRequest generates a "aws/request.Request" representing the // client's request for the UpdateRestApi operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateRestApi for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateRestApi method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateRestApiRequest method. // req, resp := client.UpdateRestApiRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) UpdateRestApiRequest(input *UpdateRestApiInput) (req *request.Request, output *RestApi) { op := &request.Operation{ Name: opUpdateRestApi, HTTPMethod: "PATCH", HTTPPath: "/restapis/{restapi_id}", } if input == nil { input = &UpdateRestApiInput{} } req = c.newRequest(op, input, output) output = &RestApi{} req.Data = output return } // UpdateRestApi API operation for Amazon API Gateway. // // Changes information about the specified API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation UpdateRestApi for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * ConflictException // // * BadRequestException // // * TooManyRequestsException // func (c *APIGateway) UpdateRestApi(input *UpdateRestApiInput) (*RestApi, error) { req, out := c.UpdateRestApiRequest(input) err := req.Send() return out, err } const opUpdateStage = "UpdateStage" // UpdateStageRequest generates a "aws/request.Request" representing the // client's request for the UpdateStage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateStage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateStage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateStageRequest method. // req, resp := client.UpdateStageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) UpdateStageRequest(input *UpdateStageInput) (req *request.Request, output *Stage) { op := &request.Operation{ Name: opUpdateStage, HTTPMethod: "PATCH", HTTPPath: "/restapis/{restapi_id}/stages/{stage_name}", } if input == nil { input = &UpdateStageInput{} } req = c.newRequest(op, input, output) output = &Stage{} req.Data = output return } // UpdateStage API operation for Amazon API Gateway. // // Changes information about a Stage resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation UpdateStage for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * NotFoundException // // * ConflictException // // * BadRequestException // // * TooManyRequestsException // func (c *APIGateway) UpdateStage(input *UpdateStageInput) (*Stage, error) { req, out := c.UpdateStageRequest(input) err := req.Send() return out, err } const opUpdateUsage = "UpdateUsage" // UpdateUsageRequest generates a "aws/request.Request" representing the // client's request for the UpdateUsage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateUsage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateUsage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateUsageRequest method. // req, resp := client.UpdateUsageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) UpdateUsageRequest(input *UpdateUsageInput) (req *request.Request, output *Usage) { op := &request.Operation{ Name: opUpdateUsage, HTTPMethod: "PATCH", HTTPPath: "/usageplans/{usageplanId}/keys/{keyId}/usage", } if input == nil { input = &UpdateUsageInput{} } req = c.newRequest(op, input, output) output = &Usage{} req.Data = output return } // UpdateUsage API operation for Amazon API Gateway. // // Grants a temporary extension to the reamining quota of a usage plan associated // with a specified API key. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation UpdateUsage for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * TooManyRequestsException // // * BadRequestException // // * NotFoundException // func (c *APIGateway) UpdateUsage(input *UpdateUsageInput) (*Usage, error) { req, out := c.UpdateUsageRequest(input) err := req.Send() return out, err } const opUpdateUsagePlan = "UpdateUsagePlan" // UpdateUsagePlanRequest generates a "aws/request.Request" representing the // client's request for the UpdateUsagePlan operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateUsagePlan for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateUsagePlan method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateUsagePlanRequest method. // req, resp := client.UpdateUsagePlanRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *APIGateway) UpdateUsagePlanRequest(input *UpdateUsagePlanInput) (req *request.Request, output *UsagePlan) { op := &request.Operation{ Name: opUpdateUsagePlan, HTTPMethod: "PATCH", HTTPPath: "/usageplans/{usageplanId}", } if input == nil { input = &UpdateUsagePlanInput{} } req = c.newRequest(op, input, output) output = &UsagePlan{} req.Data = output return } // UpdateUsagePlan API operation for Amazon API Gateway. // // Updates a usage plan of a given plan Id. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon API Gateway's // API operation UpdateUsagePlan for usage and error information. // // Returned Error Codes: // * UnauthorizedException // // * TooManyRequestsException // // * BadRequestException // // * NotFoundException // // * ConflictException // func (c *APIGateway) UpdateUsagePlan(input *UpdateUsagePlanInput) (*UsagePlan, error) { req, out := c.UpdateUsagePlanRequest(input) err := req.Send() return out, err } // Represents an AWS account that is associated with Amazon API Gateway. // // To view the account info, call GET on this resource. // // Error Codes // // The following exception may be thrown when the request fails. // // UnauthorizedException // NotFoundException // TooManyRequestsException // For detailed error code information, including the corresponding HTTP Status // Codes, see API Gateway Error Codes (http://docs.aws.amazon.com/apigateway/api-reference/handling-errors/#api-error-codes) // // Example: Get the information about an account. // // Request // // GET /account HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com // X-Amz-Date: 20160531T184618Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/us-east-1/apigateway/aws4_request, // SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash} // Response // // The successful response returns a 200 OK status code and a payload similar // to the following: // // { "_links": { "curies": { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/account-apigateway-{rel}.html", // "name": "account", "templated": true }, "self": { "href": "/account" }, "account:update": // { "href": "/account" } }, "cloudwatchRoleArn": "arn:aws:iam::123456789012:role/apigAwsProxyRole", // "throttleSettings": { "rateLimit": 500, "burstLimit": 1000 } } // In addition to making the REST API call directly, you can use the AWS CLI // and an AWS SDK to access this resource. // // API Gateway Limits (http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-limits.html)Developer // Guide (http://docs.aws.amazon.com/apigateway/latest/developerguide/welcome.html), // AWS CLI (http://docs.aws.amazon.com/cli/latest/reference/apigateway/get-account.html) type Account struct { _ struct{} `type:"structure"` // The version of the API keys used for the account. ApiKeyVersion *string `locationName:"apiKeyVersion" type:"string"` // The ARN of an Amazon CloudWatch role for the current Account. CloudwatchRoleArn *string `locationName:"cloudwatchRoleArn" type:"string"` // A list of features supported for the account. When usage plans are enabled, // the features list will include an entry of "UsagePlans". Features []*string `locationName:"features" type:"list"` // Specifies the API request limits configured for the current Account. ThrottleSettings *ThrottleSettings `locationName:"throttleSettings" type:"structure"` } // String returns the string representation func (s Account) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Account) GoString() string { return s.String() } // A resource that can be distributed to callers for executing Method resources // that require an API key. API keys can be mapped to any Stage on any RestApi, // which indicates that the callers with the API key can make requests to that // stage. // // Use API Keys (http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-api-keys.html) type ApiKey struct { _ struct{} `type:"structure"` // The date when the API Key was created, in ISO 8601 format (http://www.iso.org/iso/home/standards/iso8601.htm). CreatedDate *time.Time `locationName:"createdDate" type:"timestamp" timestampFormat:"unix"` // The description of the API Key. Description *string `locationName:"description" type:"string"` // Specifies whether the API Key can be used by callers. Enabled *bool `locationName:"enabled" type:"boolean"` // The identifier of the API Key. Id *string `locationName:"id" type:"string"` // When the API Key was last updated, in ISO 8601 format. LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp" timestampFormat:"unix"` // The name of the API Key. Name *string `locationName:"name" type:"string"` // A list of Stage resources that are associated with the ApiKey resource. StageKeys []*string `locationName:"stageKeys" type:"list"` // The value of the API Key. Value *string `locationName:"value" type:"string"` } // String returns the string representation func (s ApiKey) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ApiKey) GoString() string { return s.String() } // API stage name of the associated API stage in a usage plan. type ApiStage struct { _ struct{} `type:"structure"` // API Id of the associated API stage in a usage plan. ApiId *string `locationName:"apiId" type:"string"` // API stage name of the associated API stage in a usage plan. Stage *string `locationName:"stage" type:"string"` } // String returns the string representation func (s ApiStage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ApiStage) GoString() string { return s.String() } // Represents an authorization layer for methods. If enabled on a method, API // Gateway will activate the authorizer when a client calls the method. // // Enable custom authorization (http://docs.aws.amazon.com/apigateway/latest/developerguide/use-custom-authorizer.html) type Authorizer struct { _ struct{} `type:"structure"` // Optional customer-defined field, used in Swagger imports/exports. Has no // functional impact. AuthType *string `locationName:"authType" type:"string"` // Specifies the credentials required for the authorizer, if any. Two options // are available. To specify an IAM role for Amazon API Gateway to assume, use // the role's Amazon Resource Name (ARN). To use resource-based permissions // on the Lambda function, specify null. AuthorizerCredentials *string `locationName:"authorizerCredentials" type:"string"` // The TTL in seconds of cached authorizer results. If greater than 0, API Gateway // will cache authorizer responses. If this field is not set, the default value // is 300. The maximum value is 3600, or 1 hour. AuthorizerResultTtlInSeconds *int64 `locationName:"authorizerResultTtlInSeconds" type:"integer"` // [Required] Specifies the authorizer's Uniform Resource Identifier (URI). // For TOKEN authorizers, this must be a well-formed Lambda function URI. The // URI should be of the form arn:aws:apigateway:{region}:lambda:path/{service_api}. // Region is used to determine the right endpoint. In this case, path is used // to indicate that the remaining substring in the URI should be treated as // the path to the resource, including the initial /. For Lambda functions, // this is usually of the form /2015-03-31/functions/[FunctionARN]/invocations AuthorizerUri *string `locationName:"authorizerUri" type:"string"` // The identifier for the authorizer resource. Id *string `locationName:"id" type:"string"` // [Required] The source of the identity in an incoming request. For TOKEN authorizers, // this value is a mapping expression with the same syntax as integration parameter // mappings. The only valid source for tokens is 'header', so the expression // should match 'method.request.header.[headerName]'. The value of the header // '[headerName]' will be interpreted as the incoming token. IdentitySource *string `locationName:"identitySource" type:"string"` // A validation expression for the incoming identity. For TOKEN authorizers, // this value should be a regular expression. The incoming token from the client // is matched against this expression, and will proceed if the token matches. // If the token doesn't match, the client receives a 401 Unauthorized response. IdentityValidationExpression *string `locationName:"identityValidationExpression" type:"string"` // [Required] The name of the authorizer. Name *string `locationName:"name" type:"string"` // A list of the provider ARNs of the authorizer. ProviderARNs []*string `locationName:"providerARNs" type:"list"` // [Required] The type of the authorizer. Currently, the only valid type is // TOKEN. Type *string `locationName:"type" type:"string" enum:"AuthorizerType"` } // String returns the string representation func (s Authorizer) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Authorizer) GoString() string { return s.String() } // Represents the base path that callers of the API must provide as part of // the URL after the domain name. // // A custom domain name plus a BasePathMapping specification identifies a deployed // RestApi in a given stage of the owner Account. // Use Custom Domain Names (http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html) type BasePathMapping struct { _ struct{} `type:"structure"` // The base path name that callers of the API must provide as part of the URL // after the domain name. BasePath *string `locationName:"basePath" type:"string"` // The name of the API. RestApiId *string `locationName:"restApiId" type:"string"` // The name of the API's stage. Stage *string `locationName:"stage" type:"string"` } // String returns the string representation func (s BasePathMapping) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BasePathMapping) GoString() string { return s.String() } // Represents a client certificate used to configure client-side SSL authentication // while sending requests to the integration endpoint. // // Client certificates are used authenticate an API by the back-end server. // To authenticate an API client (or user), use a custom Authorizer. // Use Client-Side Certificate (http://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started-client-side-ssl-authentication.html) type ClientCertificate struct { _ struct{} `type:"structure"` // The identifier of the client certificate. ClientCertificateId *string `locationName:"clientCertificateId" type:"string"` // The date when the client certificate was created, in ISO 8601 format (http://www.iso.org/iso/home/standards/iso8601.htm). CreatedDate *time.Time `locationName:"createdDate" type:"timestamp" timestampFormat:"unix"` // The description of the client certificate. Description *string `locationName:"description" type:"string"` // The date when the client certificate will expire, in ISO 8601 format (http://www.iso.org/iso/home/standards/iso8601.htm). ExpirationDate *time.Time `locationName:"expirationDate" type:"timestamp" timestampFormat:"unix"` // The PEM-encoded public key of the client certificate, which can be used to // configure certificate authentication in the integration endpoint . PemEncodedCertificate *string `locationName:"pemEncodedCertificate" type:"string"` } // String returns the string representation func (s ClientCertificate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClientCertificate) GoString() string { return s.String() } // Request to create an ApiKey resource. type CreateApiKeyInput struct { _ struct{} `type:"structure"` // The description of the ApiKey. Description *string `locationName:"description" type:"string"` // Specifies whether the ApiKey can be used by callers. Enabled *bool `locationName:"enabled" type:"boolean"` // Specifies whether (true) or not (false) the key identifier is distinct from // the created API key value. GenerateDistinctId *bool `locationName:"generateDistinctId" type:"boolean"` // The name of the ApiKey. Name *string `locationName:"name" type:"string"` // DEPRECATED FOR USAGE PLANS - Specifies stages associated with the API key. StageKeys []*StageKey `locationName:"stageKeys" type:"list"` // Specifies a value of the API key. Value *string `locationName:"value" type:"string"` } // String returns the string representation func (s CreateApiKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateApiKeyInput) GoString() string { return s.String() } // Request to add a new Authorizer to an existing RestApi resource. type CreateAuthorizerInput struct { _ struct{} `type:"structure"` // Optional customer-defined field, used in Swagger imports/exports. Has no // functional impact. AuthType *string `locationName:"authType" type:"string"` // Specifies the credentials required for the authorizer, if any. AuthorizerCredentials *string `locationName:"authorizerCredentials" type:"string"` // The TTL of cached authorizer results. AuthorizerResultTtlInSeconds *int64 `locationName:"authorizerResultTtlInSeconds" type:"integer"` // [Required] Specifies the authorizer's Uniform Resource Identifier (URI). AuthorizerUri *string `locationName:"authorizerUri" type:"string"` // [Required] The source of the identity in an incoming request. // // IdentitySource is a required field IdentitySource *string `locationName:"identitySource" type:"string" required:"true"` // A validation expression for the incoming identity. IdentityValidationExpression *string `locationName:"identityValidationExpression" type:"string"` // [Required] The name of the authorizer. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` // A list of the Cognito Your User Pool authorizer's provider ARNs. ProviderARNs []*string `locationName:"providerARNs" type:"list"` // The RestApi identifier under which the Authorizer will be created. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // [Required] The type of the authorizer. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"AuthorizerType"` } // String returns the string representation func (s CreateAuthorizerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAuthorizerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateAuthorizerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateAuthorizerInput"} if s.IdentitySource == nil { invalidParams.Add(request.NewErrParamRequired("IdentitySource")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Requests Amazon API Gateway to create a new BasePathMapping resource. type CreateBasePathMappingInput struct { _ struct{} `type:"structure"` // The base path name that callers of the API must provide as part of the URL // after the domain name. This value must be unique for all of the mappings // across a single API. Leave this blank if you do not want callers to specify // a base path name after the domain name. BasePath *string `locationName:"basePath" type:"string"` // The domain name of the BasePathMapping resource to create. // // DomainName is a required field DomainName *string `location:"uri" locationName:"domain_name" type:"string" required:"true"` // The name of the API that you want to apply this mapping to. // // RestApiId is a required field RestApiId *string `locationName:"restApiId" type:"string" required:"true"` // The name of the API's stage that you want to use for this mapping. Leave // this blank if you do not want callers to explicitly specify the stage name // after any base path name. Stage *string `locationName:"stage" type:"string"` } // String returns the string representation func (s CreateBasePathMappingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateBasePathMappingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateBasePathMappingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateBasePathMappingInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Requests Amazon API Gateway to create a Deployment resource. type CreateDeploymentInput struct { _ struct{} `type:"structure"` // Enables a cache cluster for the Stage resource specified in the input. CacheClusterEnabled *bool `locationName:"cacheClusterEnabled" type:"boolean"` // Specifies the cache cluster size for the Stage resource specified in the // input, if a cache cluster is enabled. CacheClusterSize *string `locationName:"cacheClusterSize" type:"string" enum:"CacheClusterSize"` // The description for the Deployment resource to create. Description *string `locationName:"description" type:"string"` // The RestApi resource identifier for the Deployment resource to create. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // The description of the Stage resource for the Deployment resource to create. StageDescription *string `locationName:"stageDescription" type:"string"` // The name of the Stage resource for the Deployment resource to create. // // StageName is a required field StageName *string `locationName:"stageName" type:"string" required:"true"` // A map that defines the stage variables for the Stage resource that is associated // with the new deployment. Variable names can have alphanumeric and underscore // characters, and the values must match [A-Za-z0-9-._~:/?#&=,]+. Variables map[string]*string `locationName:"variables" type:"map"` } // String returns the string representation func (s CreateDeploymentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDeploymentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDeploymentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDeploymentInput"} if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.StageName == nil { invalidParams.Add(request.NewErrParamRequired("StageName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A request to create a new domain name. type CreateDomainNameInput struct { _ struct{} `type:"structure"` // The body of the server certificate provided by your certificate authority. // // CertificateBody is a required field CertificateBody *string `locationName:"certificateBody" type:"string" required:"true"` // The intermediate certificates and optionally the root certificate, one after // the other without any blank lines. If you include the root certificate, your // certificate chain must start with intermediate certificates and end with // the root certificate. Use the intermediate certificates that were provided // by your certificate authority. Do not include any intermediaries that are // not in the chain of trust path. // // CertificateChain is a required field CertificateChain *string `locationName:"certificateChain" type:"string" required:"true"` // The name of the certificate. // // CertificateName is a required field CertificateName *string `locationName:"certificateName" type:"string" required:"true"` // Your certificate's private key. // // CertificatePrivateKey is a required field CertificatePrivateKey *string `locationName:"certificatePrivateKey" type:"string" required:"true"` // The name of the DomainName resource. // // DomainName is a required field DomainName *string `locationName:"domainName" type:"string" required:"true"` } // String returns the string representation func (s CreateDomainNameInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDomainNameInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDomainNameInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDomainNameInput"} if s.CertificateBody == nil { invalidParams.Add(request.NewErrParamRequired("CertificateBody")) } if s.CertificateChain == nil { invalidParams.Add(request.NewErrParamRequired("CertificateChain")) } if s.CertificateName == nil { invalidParams.Add(request.NewErrParamRequired("CertificateName")) } if s.CertificatePrivateKey == nil { invalidParams.Add(request.NewErrParamRequired("CertificatePrivateKey")) } if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to add a new Model to an existing RestApi resource. type CreateModelInput struct { _ struct{} `type:"structure"` // The content-type for the model. // // ContentType is a required field ContentType *string `locationName:"contentType" type:"string" required:"true"` // The description of the model. Description *string `locationName:"description" type:"string"` // The name of the model. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` // The RestApi identifier under which the Model will be created. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // The schema for the model. For application/json models, this should be JSON-schema // draft v4 (http://json-schema.org/documentation.html) model. Schema *string `locationName:"schema" type:"string"` } // String returns the string representation func (s CreateModelInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateModelInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateModelInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateModelInput"} if s.ContentType == nil { invalidParams.Add(request.NewErrParamRequired("ContentType")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Requests Amazon API Gateway to create a Resource resource. type CreateResourceInput struct { _ struct{} `type:"structure"` // The parent resource's identifier. // // ParentId is a required field ParentId *string `location:"uri" locationName:"parent_id" type:"string" required:"true"` // The last path segment for this resource. // // PathPart is a required field PathPart *string `locationName:"pathPart" type:"string" required:"true"` // The identifier of the RestApi for the resource. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s CreateResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateResourceInput"} if s.ParentId == nil { invalidParams.Add(request.NewErrParamRequired("ParentId")) } if s.PathPart == nil { invalidParams.Add(request.NewErrParamRequired("PathPart")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The POST Request to add a new RestApi resource to your collection. type CreateRestApiInput struct { _ struct{} `type:"structure"` // The ID of the RestApi that you want to clone from. CloneFrom *string `locationName:"cloneFrom" type:"string"` // The description of the RestApi. Description *string `locationName:"description" type:"string"` // The name of the RestApi. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` } // String returns the string representation func (s CreateRestApiInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRestApiInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateRestApiInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateRestApiInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Requests Amazon API Gateway to create a Stage resource. type CreateStageInput struct { _ struct{} `type:"structure"` // Whether cache clustering is enabled for the stage. CacheClusterEnabled *bool `locationName:"cacheClusterEnabled" type:"boolean"` // The stage's cache cluster size. CacheClusterSize *string `locationName:"cacheClusterSize" type:"string" enum:"CacheClusterSize"` // The identifier of the Deployment resource for the Stage resource. // // DeploymentId is a required field DeploymentId *string `locationName:"deploymentId" type:"string" required:"true"` // The description of the Stage resource. Description *string `locationName:"description" type:"string"` // The identifier of the RestApi resource for the Stage resource to create. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // The name for the Stage resource. // // StageName is a required field StageName *string `locationName:"stageName" type:"string" required:"true"` // A map that defines the stage variables for the new Stage resource. Variable // names can have alphanumeric and underscore characters, and the values must // match [A-Za-z0-9-._~:/?#&=,]+. Variables map[string]*string `locationName:"variables" type:"map"` } // String returns the string representation func (s CreateStageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateStageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateStageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateStageInput"} if s.DeploymentId == nil { invalidParams.Add(request.NewErrParamRequired("DeploymentId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.StageName == nil { invalidParams.Add(request.NewErrParamRequired("StageName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The POST request to create a usage plan with the name, description, throttle // limits and quota limits, as well as the associated API stages, specified // in the payload. type CreateUsagePlanInput struct { _ struct{} `type:"structure"` // The associated API stages of the usage plan. ApiStages []*ApiStage `locationName:"apiStages" type:"list"` // The description of the usage plan. Description *string `locationName:"description" type:"string"` // The name of the usage plan. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` // The quota of the usage plan. Quota *QuotaSettings `locationName:"quota" type:"structure"` // The throttling limits of the usage plan. Throttle *ThrottleSettings `locationName:"throttle" type:"structure"` } // String returns the string representation func (s CreateUsagePlanInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateUsagePlanInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateUsagePlanInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateUsagePlanInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The POST request to create a usage plan key for adding an existing API key // to a usage plan. type CreateUsagePlanKeyInput struct { _ struct{} `type:"structure"` // The identifier of a UsagePlanKey resource for a plan customer. // // KeyId is a required field KeyId *string `locationName:"keyId" type:"string" required:"true"` // The type of a UsagePlanKey resource for a plan customer. // // KeyType is a required field KeyType *string `locationName:"keyType" type:"string" required:"true"` // The Id of the UsagePlan resource representing the usage plan containing the // to-be-created UsagePlanKey resource representing a plan customer. // // UsagePlanId is a required field UsagePlanId *string `location:"uri" locationName:"usageplanId" type:"string" required:"true"` } // String returns the string representation func (s CreateUsagePlanKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateUsagePlanKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateUsagePlanKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateUsagePlanKeyInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyType == nil { invalidParams.Add(request.NewErrParamRequired("KeyType")) } if s.UsagePlanId == nil { invalidParams.Add(request.NewErrParamRequired("UsagePlanId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A request to delete the ApiKey resource. type DeleteApiKeyInput struct { _ struct{} `type:"structure"` // The identifier of the ApiKey resource to be deleted. // // ApiKey is a required field ApiKey *string `location:"uri" locationName:"api_Key" type:"string" required:"true"` } // String returns the string representation func (s DeleteApiKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteApiKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteApiKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteApiKeyInput"} if s.ApiKey == nil { invalidParams.Add(request.NewErrParamRequired("ApiKey")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteApiKeyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteApiKeyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteApiKeyOutput) GoString() string { return s.String() } // Request to delete an existing Authorizer resource. type DeleteAuthorizerInput struct { _ struct{} `type:"structure"` // The identifier of the Authorizer resource. // // AuthorizerId is a required field AuthorizerId *string `location:"uri" locationName:"authorizer_id" type:"string" required:"true"` // The RestApi identifier for the Authorizer resource. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s DeleteAuthorizerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAuthorizerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAuthorizerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAuthorizerInput"} if s.AuthorizerId == nil { invalidParams.Add(request.NewErrParamRequired("AuthorizerId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteAuthorizerOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteAuthorizerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAuthorizerOutput) GoString() string { return s.String() } // A request to delete the BasePathMapping resource. type DeleteBasePathMappingInput struct { _ struct{} `type:"structure"` // The base path name of the BasePathMapping resource to delete. // // BasePath is a required field BasePath *string `location:"uri" locationName:"base_path" type:"string" required:"true"` // The domain name of the BasePathMapping resource to delete. // // DomainName is a required field DomainName *string `location:"uri" locationName:"domain_name" type:"string" required:"true"` } // String returns the string representation func (s DeleteBasePathMappingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBasePathMappingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteBasePathMappingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteBasePathMappingInput"} if s.BasePath == nil { invalidParams.Add(request.NewErrParamRequired("BasePath")) } if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteBasePathMappingOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteBasePathMappingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBasePathMappingOutput) GoString() string { return s.String() } // A request to delete the ClientCertificate resource. type DeleteClientCertificateInput struct { _ struct{} `type:"structure"` // The identifier of the ClientCertificate resource to be deleted. // // ClientCertificateId is a required field ClientCertificateId *string `location:"uri" locationName:"clientcertificate_id" type:"string" required:"true"` } // String returns the string representation func (s DeleteClientCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteClientCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteClientCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteClientCertificateInput"} if s.ClientCertificateId == nil { invalidParams.Add(request.NewErrParamRequired("ClientCertificateId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteClientCertificateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteClientCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteClientCertificateOutput) GoString() string { return s.String() } // Requests Amazon API Gateway to delete a Deployment resource. type DeleteDeploymentInput struct { _ struct{} `type:"structure"` // The identifier of the Deployment resource to delete. // // DeploymentId is a required field DeploymentId *string `location:"uri" locationName:"deployment_id" type:"string" required:"true"` // The identifier of the RestApi resource for the Deployment resource to delete. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s DeleteDeploymentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDeploymentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDeploymentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDeploymentInput"} if s.DeploymentId == nil { invalidParams.Add(request.NewErrParamRequired("DeploymentId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteDeploymentOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteDeploymentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDeploymentOutput) GoString() string { return s.String() } // A request to delete the DomainName resource. type DeleteDomainNameInput struct { _ struct{} `type:"structure"` // The name of the DomainName resource to be deleted. // // DomainName is a required field DomainName *string `location:"uri" locationName:"domain_name" type:"string" required:"true"` } // String returns the string representation func (s DeleteDomainNameInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDomainNameInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDomainNameInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDomainNameInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteDomainNameOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteDomainNameOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDomainNameOutput) GoString() string { return s.String() } // Represents a delete integration request. type DeleteIntegrationInput struct { _ struct{} `type:"structure"` // Specifies a delete integration request's HTTP method. // // HttpMethod is a required field HttpMethod *string `location:"uri" locationName:"http_method" type:"string" required:"true"` // Specifies a delete integration request's resource identifier. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // Specifies a delete integration request's API identifier. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s DeleteIntegrationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteIntegrationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteIntegrationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteIntegrationInput"} if s.HttpMethod == nil { invalidParams.Add(request.NewErrParamRequired("HttpMethod")) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteIntegrationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteIntegrationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteIntegrationOutput) GoString() string { return s.String() } // Represents a delete integration response request. type DeleteIntegrationResponseInput struct { _ struct{} `type:"structure"` // Specifies a delete integration response request's HTTP method. // // HttpMethod is a required field HttpMethod *string `location:"uri" locationName:"http_method" type:"string" required:"true"` // Specifies a delete integration response request's resource identifier. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // Specifies a delete integration response request's API identifier. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // Specifies a delete integration response request's status code. // // StatusCode is a required field StatusCode *string `location:"uri" locationName:"status_code" type:"string" required:"true"` } // String returns the string representation func (s DeleteIntegrationResponseInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteIntegrationResponseInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteIntegrationResponseInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteIntegrationResponseInput"} if s.HttpMethod == nil { invalidParams.Add(request.NewErrParamRequired("HttpMethod")) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.StatusCode == nil { invalidParams.Add(request.NewErrParamRequired("StatusCode")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteIntegrationResponseOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteIntegrationResponseOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteIntegrationResponseOutput) GoString() string { return s.String() } // Request to delete an existing Method resource. type DeleteMethodInput struct { _ struct{} `type:"structure"` // The HTTP verb of the Method resource. // // HttpMethod is a required field HttpMethod *string `location:"uri" locationName:"http_method" type:"string" required:"true"` // The Resource identifier for the Method resource. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // The RestApi identifier for the Method resource. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s DeleteMethodInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteMethodInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteMethodInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteMethodInput"} if s.HttpMethod == nil { invalidParams.Add(request.NewErrParamRequired("HttpMethod")) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteMethodOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteMethodOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteMethodOutput) GoString() string { return s.String() } // A request to delete an existing MethodResponse resource. type DeleteMethodResponseInput struct { _ struct{} `type:"structure"` // The HTTP verb of the Method resource. // // HttpMethod is a required field HttpMethod *string `location:"uri" locationName:"http_method" type:"string" required:"true"` // The Resource identifier for the MethodResponse resource. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // The RestApi identifier for the MethodResponse resource. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // The status code identifier for the MethodResponse resource. // // StatusCode is a required field StatusCode *string `location:"uri" locationName:"status_code" type:"string" required:"true"` } // String returns the string representation func (s DeleteMethodResponseInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteMethodResponseInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteMethodResponseInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteMethodResponseInput"} if s.HttpMethod == nil { invalidParams.Add(request.NewErrParamRequired("HttpMethod")) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.StatusCode == nil { invalidParams.Add(request.NewErrParamRequired("StatusCode")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteMethodResponseOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteMethodResponseOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteMethodResponseOutput) GoString() string { return s.String() } // Request to delete an existing model in an existing RestApi resource. type DeleteModelInput struct { _ struct{} `type:"structure"` // The name of the model to delete. // // ModelName is a required field ModelName *string `location:"uri" locationName:"model_name" type:"string" required:"true"` // The RestApi under which the model will be deleted. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s DeleteModelInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteModelInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteModelInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteModelInput"} if s.ModelName == nil { invalidParams.Add(request.NewErrParamRequired("ModelName")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteModelOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteModelOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteModelOutput) GoString() string { return s.String() } // Request to delete a Resource. type DeleteResourceInput struct { _ struct{} `type:"structure"` // The identifier of the Resource resource. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // The RestApi identifier for the Resource resource. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s DeleteResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteResourceInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteResourceOutput) GoString() string { return s.String() } // Request to delete the specified API from your collection. type DeleteRestApiInput struct { _ struct{} `type:"structure"` // The ID of the RestApi you want to delete. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s DeleteRestApiInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRestApiInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteRestApiInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteRestApiInput"} if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteRestApiOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteRestApiOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRestApiOutput) GoString() string { return s.String() } // Requests Amazon API Gateway to delete a Stage resource. type DeleteStageInput struct { _ struct{} `type:"structure"` // The identifier of the RestApi resource for the Stage resource to delete. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // The name of the Stage resource to delete. // // StageName is a required field StageName *string `location:"uri" locationName:"stage_name" type:"string" required:"true"` } // String returns the string representation func (s DeleteStageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteStageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteStageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteStageInput"} if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.StageName == nil { invalidParams.Add(request.NewErrParamRequired("StageName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteStageOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteStageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteStageOutput) GoString() string { return s.String() } // The DELETE request to delete a uasge plan of a given plan Id. type DeleteUsagePlanInput struct { _ struct{} `type:"structure"` // The Id of the to-be-deleted usage plan. // // UsagePlanId is a required field UsagePlanId *string `location:"uri" locationName:"usageplanId" type:"string" required:"true"` } // String returns the string representation func (s DeleteUsagePlanInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUsagePlanInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteUsagePlanInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteUsagePlanInput"} if s.UsagePlanId == nil { invalidParams.Add(request.NewErrParamRequired("UsagePlanId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The DELETE request to delete a usage plan key and remove the underlying API // key from the associated usage plan. type DeleteUsagePlanKeyInput struct { _ struct{} `type:"structure"` // The Id of the UsagePlanKey resource to be deleted. // // KeyId is a required field KeyId *string `location:"uri" locationName:"keyId" type:"string" required:"true"` // The Id of the UsagePlan resource representing the usage plan containing the // to-be-deleted UsagePlanKey resource representing a plan customer. // // UsagePlanId is a required field UsagePlanId *string `location:"uri" locationName:"usageplanId" type:"string" required:"true"` } // String returns the string representation func (s DeleteUsagePlanKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUsagePlanKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteUsagePlanKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteUsagePlanKeyInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.UsagePlanId == nil { invalidParams.Add(request.NewErrParamRequired("UsagePlanId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteUsagePlanKeyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteUsagePlanKeyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUsagePlanKeyOutput) GoString() string { return s.String() } type DeleteUsagePlanOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteUsagePlanOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUsagePlanOutput) GoString() string { return s.String() } // An immutable representation of a RestApi resource that can be called by users // using Stages. A deployment must be associated with a Stage for it to be callable // over the Internet. // // To create a deployment, call POST on the Deployments resource of a RestApi. // To view, update, or delete a deployment, call GET, PATCH, or DELETE on the // specified deployment resource (/restapis/{restapi_id}/deployments/{deployment_id}). // // RestApi, Deployments, Stage, AWS CLI (http://docs.aws.amazon.com/cli/latest/reference/apigateway/get-deployment.html), // AWS SDKs (https://aws.amazon.com/tools/) type Deployment struct { _ struct{} `type:"structure"` // A summary of the RestApi at the date and time that the deployment resource // was created. ApiSummary map[string]map[string]*MethodSnapshot `locationName:"apiSummary" type:"map"` // The date and time that the deployment resource was created. CreatedDate *time.Time `locationName:"createdDate" type:"timestamp" timestampFormat:"unix"` // The description for the deployment resource. Description *string `locationName:"description" type:"string"` // The identifier for the deployment resource. Id *string `locationName:"id" type:"string"` } // String returns the string representation func (s Deployment) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Deployment) GoString() string { return s.String() } // Represents a domain name that is contained in a simpler, more intuitive URL // that can be called. // // Use Client-Side Certificate (http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html) type DomainName struct { _ struct{} `type:"structure"` // The name of the certificate. CertificateName *string `locationName:"certificateName" type:"string"` // The date when the certificate was uploaded, in ISO 8601 format (http://www.iso.org/iso/home/standards/iso8601.htm). CertificateUploadDate *time.Time `locationName:"certificateUploadDate" type:"timestamp" timestampFormat:"unix"` // The domain name of the Amazon CloudFront distribution. For more information, // see the Amazon CloudFront documentation (http://aws.amazon.com/documentation/cloudfront/). DistributionDomainName *string `locationName:"distributionDomainName" type:"string"` // The name of the DomainName resource. DomainName *string `locationName:"domainName" type:"string"` } // String returns the string representation func (s DomainName) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DomainName) GoString() string { return s.String() } // Request to flush authorizer cache entries on a specified stage. type FlushStageAuthorizersCacheInput struct { _ struct{} `type:"structure"` // The API identifier of the stage to flush. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // The name of the stage to flush. // // StageName is a required field StageName *string `location:"uri" locationName:"stage_name" type:"string" required:"true"` } // String returns the string representation func (s FlushStageAuthorizersCacheInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FlushStageAuthorizersCacheInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *FlushStageAuthorizersCacheInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "FlushStageAuthorizersCacheInput"} if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.StageName == nil { invalidParams.Add(request.NewErrParamRequired("StageName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type FlushStageAuthorizersCacheOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s FlushStageAuthorizersCacheOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FlushStageAuthorizersCacheOutput) GoString() string { return s.String() } // Requests Amazon API Gateway to flush a stage's cache. type FlushStageCacheInput struct { _ struct{} `type:"structure"` // The API identifier of the stage to flush its cache. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // The name of the stage to flush its cache. // // StageName is a required field StageName *string `location:"uri" locationName:"stage_name" type:"string" required:"true"` } // String returns the string representation func (s FlushStageCacheInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FlushStageCacheInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *FlushStageCacheInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "FlushStageCacheInput"} if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.StageName == nil { invalidParams.Add(request.NewErrParamRequired("StageName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type FlushStageCacheOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s FlushStageCacheOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FlushStageCacheOutput) GoString() string { return s.String() } // A request to generate a ClientCertificate resource. type GenerateClientCertificateInput struct { _ struct{} `type:"structure"` // The description of the ClientCertificate. Description *string `locationName:"description" type:"string"` } // String returns the string representation func (s GenerateClientCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GenerateClientCertificateInput) GoString() string { return s.String() } // Requests Amazon API Gateway to get information about the current Account // resource. type GetAccountInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GetAccountInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAccountInput) GoString() string { return s.String() } // A request to get information about the current ApiKey resource. type GetApiKeyInput struct { _ struct{} `type:"structure"` // The identifier of the ApiKey resource. // // ApiKey is a required field ApiKey *string `location:"uri" locationName:"api_Key" type:"string" required:"true"` // A boolean flag to specify whether (true) or not (false) the result contains // the key value. IncludeValue *bool `location:"querystring" locationName:"includeValue" type:"boolean"` } // String returns the string representation func (s GetApiKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetApiKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetApiKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetApiKeyInput"} if s.ApiKey == nil { invalidParams.Add(request.NewErrParamRequired("ApiKey")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A request to get information about the current ApiKeys resource. type GetApiKeysInput struct { _ struct{} `type:"structure"` // A boolean flag to specify whether (true) or not (false) the result contains // key values. IncludeValues *bool `location:"querystring" locationName:"includeValues" type:"boolean"` // The maximum number of ApiKeys to get information about. Limit *int64 `location:"querystring" locationName:"limit" type:"integer"` // The name of queried API keys. NameQuery *string `location:"querystring" locationName:"name" type:"string"` // The position of the current ApiKeys resource to get information about. Position *string `location:"querystring" locationName:"position" type:"string"` } // String returns the string representation func (s GetApiKeysInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetApiKeysInput) GoString() string { return s.String() } // Represents a collection of API keys as represented by an ApiKeys resource. // // Use API Keys (http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-api-keys.html) type GetApiKeysOutput struct { _ struct{} `type:"structure"` // The current page of any ApiKey resources in the collection of ApiKey resources. Items []*ApiKey `locationName:"item" type:"list"` Position *string `locationName:"position" type:"string"` // A list of warning messages logged during the import of API keys when the // failOnWarnings option is set to true. Warnings []*string `locationName:"warnings" type:"list"` } // String returns the string representation func (s GetApiKeysOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetApiKeysOutput) GoString() string { return s.String() } // Request to describe an existing Authorizer resource. type GetAuthorizerInput struct { _ struct{} `type:"structure"` // The identifier of the Authorizer resource. // // AuthorizerId is a required field AuthorizerId *string `location:"uri" locationName:"authorizer_id" type:"string" required:"true"` // The RestApi identifier for the Authorizer resource. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s GetAuthorizerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAuthorizerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetAuthorizerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetAuthorizerInput"} if s.AuthorizerId == nil { invalidParams.Add(request.NewErrParamRequired("AuthorizerId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to describe an existing Authorizers resource. type GetAuthorizersInput struct { _ struct{} `type:"structure"` // Limit the number of Authorizer resources in the response. Limit *int64 `location:"querystring" locationName:"limit" type:"integer"` // If not all Authorizer resources in the response were present, the position // will specify where to start the next page of results. Position *string `location:"querystring" locationName:"position" type:"string"` // The RestApi identifier for the Authorizers resource. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s GetAuthorizersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAuthorizersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetAuthorizersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetAuthorizersInput"} if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a collection of Authorizer resources. // // Enable custom authorization (http://docs.aws.amazon.com/apigateway/latest/developerguide/use-custom-authorizer.html) type GetAuthorizersOutput struct { _ struct{} `type:"structure"` // Gets the current list of Authorizer resources in the collection. Items []*Authorizer `locationName:"item" type:"list"` Position *string `locationName:"position" type:"string"` } // String returns the string representation func (s GetAuthorizersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAuthorizersOutput) GoString() string { return s.String() } // Request to describe a BasePathMapping resource. type GetBasePathMappingInput struct { _ struct{} `type:"structure"` // The base path name that callers of the API must provide as part of the URL // after the domain name. This value must be unique for all of the mappings // across a single API. Leave this blank if you do not want callers to specify // any base path name after the domain name. // // BasePath is a required field BasePath *string `location:"uri" locationName:"base_path" type:"string" required:"true"` // The domain name of the BasePathMapping resource to be described. // // DomainName is a required field DomainName *string `location:"uri" locationName:"domain_name" type:"string" required:"true"` } // String returns the string representation func (s GetBasePathMappingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBasePathMappingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBasePathMappingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBasePathMappingInput"} if s.BasePath == nil { invalidParams.Add(request.NewErrParamRequired("BasePath")) } if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A request to get information about a collection of BasePathMapping resources. type GetBasePathMappingsInput struct { _ struct{} `type:"structure"` // The domain name of a BasePathMapping resource. // // DomainName is a required field DomainName *string `location:"uri" locationName:"domain_name" type:"string" required:"true"` // The maximum number of BasePathMapping resources in the collection to get // information about. The default limit is 25. It should be an integer between // 1 - 500. Limit *int64 `location:"querystring" locationName:"limit" type:"integer"` // The position of the current BasePathMapping resource in the collection to // get information about. Position *string `location:"querystring" locationName:"position" type:"string"` } // String returns the string representation func (s GetBasePathMappingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBasePathMappingsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBasePathMappingsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBasePathMappingsInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a collection of BasePathMapping resources. // // Use Custom Domain Names (http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html) type GetBasePathMappingsOutput struct { _ struct{} `type:"structure"` // The current page of any BasePathMapping resources in the collection of base // path mapping resources. Items []*BasePathMapping `locationName:"item" type:"list"` Position *string `locationName:"position" type:"string"` } // String returns the string representation func (s GetBasePathMappingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBasePathMappingsOutput) GoString() string { return s.String() } // A request to get information about the current ClientCertificate resource. type GetClientCertificateInput struct { _ struct{} `type:"structure"` // The identifier of the ClientCertificate resource to be described. // // ClientCertificateId is a required field ClientCertificateId *string `location:"uri" locationName:"clientcertificate_id" type:"string" required:"true"` } // String returns the string representation func (s GetClientCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetClientCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetClientCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetClientCertificateInput"} if s.ClientCertificateId == nil { invalidParams.Add(request.NewErrParamRequired("ClientCertificateId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A request to get information about a collection of ClientCertificate resources. type GetClientCertificatesInput struct { _ struct{} `type:"structure"` // The maximum number of ClientCertificate resources in the collection to get // information about. The default limit is 25. It should be an integer between // 1 - 500. Limit *int64 `location:"querystring" locationName:"limit" type:"integer"` // The position of the current ClientCertificate resource in the collection // to get information about. Position *string `location:"querystring" locationName:"position" type:"string"` } // String returns the string representation func (s GetClientCertificatesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetClientCertificatesInput) GoString() string { return s.String() } // Represents a collection of ClientCertificate resources. // // Use Client-Side Certificate (http://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started-client-side-ssl-authentication.html) type GetClientCertificatesOutput struct { _ struct{} `type:"structure"` // The current page of any ClientCertificate resources in the collection of // ClientCertificate resources. Items []*ClientCertificate `locationName:"item" type:"list"` Position *string `locationName:"position" type:"string"` } // String returns the string representation func (s GetClientCertificatesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetClientCertificatesOutput) GoString() string { return s.String() } // Requests Amazon API Gateway to get information about a Deployment resource. type GetDeploymentInput struct { _ struct{} `type:"structure"` // The identifier of the Deployment resource to get information about. // // DeploymentId is a required field DeploymentId *string `location:"uri" locationName:"deployment_id" type:"string" required:"true"` // The identifier of the RestApi resource for the Deployment resource to get // information about. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s GetDeploymentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDeploymentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDeploymentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDeploymentInput"} if s.DeploymentId == nil { invalidParams.Add(request.NewErrParamRequired("DeploymentId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Requests Amazon API Gateway to get information about a Deployments collection. type GetDeploymentsInput struct { _ struct{} `type:"structure"` // The maximum number of Deployment resources in the collection to get information // about. The default limit is 25. It should be an integer between 1 - 500. Limit *int64 `location:"querystring" locationName:"limit" type:"integer"` // The position of the current Deployment resource in the collection to get // information about. Position *string `location:"querystring" locationName:"position" type:"string"` // The identifier of the RestApi resource for the collection of Deployment resources // to get information about. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s GetDeploymentsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDeploymentsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDeploymentsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDeploymentsInput"} if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a collection resource that contains zero or more references to // your existing deployments, and links that guide you on how to interact with // your collection. The collection offers a paginated view of the contained // deployments. // // To create a new deployment of a RestApi, make a POST request against this // resource. To view, update, or delete an existing deployment, make a GET, // PATCH, or DELETE request, respectively, on a specified Deployment resource. // // Deploying an API (http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-deploy-api.html), // AWS CLI (http://docs.aws.amazon.com/cli/latest/reference/apigateway/get-deployment.html), // AWS SDKs (https://aws.amazon.com/tools/) type GetDeploymentsOutput struct { _ struct{} `type:"structure"` // The current page of any Deployment resources in the collection of deployment // resources. Items []*Deployment `locationName:"item" type:"list"` Position *string `locationName:"position" type:"string"` } // String returns the string representation func (s GetDeploymentsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDeploymentsOutput) GoString() string { return s.String() } // Request to get the name of a DomainName resource. type GetDomainNameInput struct { _ struct{} `type:"structure"` // The name of the DomainName resource. // // DomainName is a required field DomainName *string `location:"uri" locationName:"domain_name" type:"string" required:"true"` } // String returns the string representation func (s GetDomainNameInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDomainNameInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDomainNameInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDomainNameInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to describe a collection of DomainName resources. type GetDomainNamesInput struct { _ struct{} `type:"structure"` // The maximum number of DomainName resources in the collection to get information // about. The default limit is 25. It should be an integer between 1 - 500. Limit *int64 `location:"querystring" locationName:"limit" type:"integer"` // The position of the current domain names to get information about. Position *string `location:"querystring" locationName:"position" type:"string"` } // String returns the string representation func (s GetDomainNamesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDomainNamesInput) GoString() string { return s.String() } // Represents a collection of DomainName resources. // // Use Client-Side Certificate (http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html) type GetDomainNamesOutput struct { _ struct{} `type:"structure"` // The current page of any DomainName resources in the collection of DomainName // resources. Items []*DomainName `locationName:"item" type:"list"` Position *string `locationName:"position" type:"string"` } // String returns the string representation func (s GetDomainNamesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDomainNamesOutput) GoString() string { return s.String() } // Request a new export of a RestApi for a particular Stage. type GetExportInput struct { _ struct{} `type:"structure"` // The content-type of the export, for example application/json. Currently application/json // and application/yaml are supported for exportType of swagger. This should // be specified in the Accept header for direct API requests. Accepts *string `location:"header" locationName:"Accept" type:"string"` // The type of export. Currently only 'swagger' is supported. // // ExportType is a required field ExportType *string `location:"uri" locationName:"export_type" type:"string" required:"true"` // A key-value map of query string parameters that specify properties of the // export, depending on the requested exportType. For exportTypeswagger, any // combination of the following parameters are supported: integrations will // export the API with x-amazon-apigateway-integration extensions. authorizers // will export the API with x-amazon-apigateway-authorizer extensions. postman // will export the API with Postman extensions, allowing for import to the Postman // tool Parameters map[string]*string `location:"querystring" locationName:"parameters" type:"map"` // The identifier of the RestApi to be exported. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // The name of the Stage that will be exported. // // StageName is a required field StageName *string `location:"uri" locationName:"stage_name" type:"string" required:"true"` } // String returns the string representation func (s GetExportInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetExportInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetExportInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetExportInput"} if s.ExportType == nil { invalidParams.Add(request.NewErrParamRequired("ExportType")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.StageName == nil { invalidParams.Add(request.NewErrParamRequired("StageName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The binary blob response to GetExport, which contains the generated SDK. type GetExportOutput struct { _ struct{} `type:"structure" payload:"Body"` // The binary blob response to GetExport, which contains the export. Body []byte `locationName:"body" type:"blob"` // The content-disposition header value in the HTTP response. ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"` // The content-type header value in the HTTP response. This will correspond // to a valid 'accept' type in the request. ContentType *string `location:"header" locationName:"Content-Type" type:"string"` } // String returns the string representation func (s GetExportOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetExportOutput) GoString() string { return s.String() } // Represents a get integration request. type GetIntegrationInput struct { _ struct{} `type:"structure"` // Specifies a get integration request's HTTP method. // // HttpMethod is a required field HttpMethod *string `location:"uri" locationName:"http_method" type:"string" required:"true"` // Specifies a get integration request's resource identifier // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // Specifies a get integration request's API identifier. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s GetIntegrationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIntegrationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetIntegrationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetIntegrationInput"} if s.HttpMethod == nil { invalidParams.Add(request.NewErrParamRequired("HttpMethod")) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a get integration response request. type GetIntegrationResponseInput struct { _ struct{} `type:"structure"` // Specifies a get integration response request's HTTP method. // // HttpMethod is a required field HttpMethod *string `location:"uri" locationName:"http_method" type:"string" required:"true"` // Specifies a get integration response request's resource identifier. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // Specifies a get integration response request's API identifier. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // Specifies a get integration response request's status code. // // StatusCode is a required field StatusCode *string `location:"uri" locationName:"status_code" type:"string" required:"true"` } // String returns the string representation func (s GetIntegrationResponseInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIntegrationResponseInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetIntegrationResponseInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetIntegrationResponseInput"} if s.HttpMethod == nil { invalidParams.Add(request.NewErrParamRequired("HttpMethod")) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.StatusCode == nil { invalidParams.Add(request.NewErrParamRequired("StatusCode")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to describe an existing Method resource. type GetMethodInput struct { _ struct{} `type:"structure"` // Specifies the method request's HTTP method type. // // HttpMethod is a required field HttpMethod *string `location:"uri" locationName:"http_method" type:"string" required:"true"` // The Resource identifier for the Method resource. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // The RestApi identifier for the Method resource. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s GetMethodInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetMethodInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetMethodInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetMethodInput"} if s.HttpMethod == nil { invalidParams.Add(request.NewErrParamRequired("HttpMethod")) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to describe a MethodResponse resource. type GetMethodResponseInput struct { _ struct{} `type:"structure"` // The HTTP verb of the Method resource. // // HttpMethod is a required field HttpMethod *string `location:"uri" locationName:"http_method" type:"string" required:"true"` // The Resource identifier for the MethodResponse resource. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // The RestApi identifier for the MethodResponse resource. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // The status code for the MethodResponse resource. // // StatusCode is a required field StatusCode *string `location:"uri" locationName:"status_code" type:"string" required:"true"` } // String returns the string representation func (s GetMethodResponseInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetMethodResponseInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetMethodResponseInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetMethodResponseInput"} if s.HttpMethod == nil { invalidParams.Add(request.NewErrParamRequired("HttpMethod")) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.StatusCode == nil { invalidParams.Add(request.NewErrParamRequired("StatusCode")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to list information about a model in an existing RestApi resource. type GetModelInput struct { _ struct{} `type:"structure"` // A query parameter of a Boolean value to resolve (true) all external model // references and returns a flattened model schema or not (false) The default // is false. Flatten *bool `location:"querystring" locationName:"flatten" type:"boolean"` // The name of the model as an identifier. // // ModelName is a required field ModelName *string `location:"uri" locationName:"model_name" type:"string" required:"true"` // The RestApi identifier under which the Model exists. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s GetModelInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetModelInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetModelInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetModelInput"} if s.ModelName == nil { invalidParams.Add(request.NewErrParamRequired("ModelName")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to generate a sample mapping template used to transform the payload. type GetModelTemplateInput struct { _ struct{} `type:"structure"` // The name of the model for which to generate a template. // // ModelName is a required field ModelName *string `location:"uri" locationName:"model_name" type:"string" required:"true"` // The ID of the RestApi under which the model exists. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s GetModelTemplateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetModelTemplateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetModelTemplateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetModelTemplateInput"} if s.ModelName == nil { invalidParams.Add(request.NewErrParamRequired("ModelName")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a mapping template used to transform a payload. // // Mapping Templates (http://docs.aws.amazon.com/apigateway/latest/developerguide/models-mappings.html#models-mappings-mappings) type GetModelTemplateOutput struct { _ struct{} `type:"structure"` // The Apache Velocity Template Language (VTL) (http://velocity.apache.org/engine/devel/vtl-reference-guide.html) // template content used for the template resource. Value *string `locationName:"value" type:"string"` } // String returns the string representation func (s GetModelTemplateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetModelTemplateOutput) GoString() string { return s.String() } // Request to list existing Models defined for a RestApi resource. type GetModelsInput struct { _ struct{} `type:"structure"` // The maximum number of models in the collection to get information about. // The default limit is 25. It should be an integer between 1 - 500. Limit *int64 `location:"querystring" locationName:"limit" type:"integer"` // The position of the next set of results in the Models resource to get information // about. Position *string `location:"querystring" locationName:"position" type:"string"` // The RestApi identifier. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s GetModelsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetModelsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetModelsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetModelsInput"} if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a collection of Model resources. // // Method, MethodResponse, Models and Mappings (http://docs.aws.amazon.com/apigateway/latest/developerguide/models-mappings.html) type GetModelsOutput struct { _ struct{} `type:"structure"` // Gets the current Model resource in the collection. Items []*Model `locationName:"item" type:"list"` Position *string `locationName:"position" type:"string"` } // String returns the string representation func (s GetModelsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetModelsOutput) GoString() string { return s.String() } // Request to list information about a resource. type GetResourceInput struct { _ struct{} `type:"structure"` // The identifier for the Resource resource. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // The RestApi identifier for the resource. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s GetResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetResourceInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to list information about a collection of resources. type GetResourcesInput struct { _ struct{} `type:"structure"` // The maximum number of Resource resources in the collection to get information // about. The default limit is 25. It should be an integer between 1 - 500. Limit *int64 `location:"querystring" locationName:"limit" type:"integer"` // The position of the next set of results in the current Resources resource // to get information about. Position *string `location:"querystring" locationName:"position" type:"string"` // The RestApi identifier for the Resource. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s GetResourcesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetResourcesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetResourcesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetResourcesInput"} if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a collection of Resource resources. // // Create an API (http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html) type GetResourcesOutput struct { _ struct{} `type:"structure"` // Gets the current Resource resource in the collection. Items []*Resource `locationName:"item" type:"list"` Position *string `locationName:"position" type:"string"` } // String returns the string representation func (s GetResourcesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetResourcesOutput) GoString() string { return s.String() } // The GET request to list an existing RestApi defined for your collection. type GetRestApiInput struct { _ struct{} `type:"structure"` // The identifier of the RestApi resource. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s GetRestApiInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRestApiInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetRestApiInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetRestApiInput"} if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The GET request to list existing RestApis defined for your collection. type GetRestApisInput struct { _ struct{} `type:"structure"` // The maximum number of RestApi resources in the collection to get information // about. The default limit is 25. It should be an integer between 1 - 500. Limit *int64 `location:"querystring" locationName:"limit" type:"integer"` // The position of the current RestApis resource in the collection to get information // about. Position *string `location:"querystring" locationName:"position" type:"string"` } // String returns the string representation func (s GetRestApisInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRestApisInput) GoString() string { return s.String() } // Contains references to your APIs and links that guide you in how to interact // with your collection. A collection offers a paginated view of your APIs. // // Create an API (http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html) type GetRestApisOutput struct { _ struct{} `type:"structure"` // An array of links to the current page of RestApi resources. Items []*RestApi `locationName:"item" type:"list"` Position *string `locationName:"position" type:"string"` } // String returns the string representation func (s GetRestApisOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRestApisOutput) GoString() string { return s.String() } // Request a new generated client SDK for a RestApi and Stage. type GetSdkInput struct { _ struct{} `type:"structure"` // A key-value map of query string parameters that specify properties of the // SDK, depending on the requested sdkType. For sdkType of objectivec, a parameter // named classPrefix is required. For sdkType of android, parameters named groupId, // artifactId, artifactVersion, and invokerPackage are required. Parameters map[string]*string `location:"querystring" locationName:"parameters" type:"map"` // The identifier of the RestApi that the SDK will use. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // The language for the generated SDK. Currently javascript, android, and objectivec // (for iOS) are supported. // // SdkType is a required field SdkType *string `location:"uri" locationName:"sdk_type" type:"string" required:"true"` // The name of the Stage that the SDK will use. // // StageName is a required field StageName *string `location:"uri" locationName:"stage_name" type:"string" required:"true"` } // String returns the string representation func (s GetSdkInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSdkInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetSdkInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetSdkInput"} if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.SdkType == nil { invalidParams.Add(request.NewErrParamRequired("SdkType")) } if s.StageName == nil { invalidParams.Add(request.NewErrParamRequired("StageName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The binary blob response to GetSdk, which contains the generated SDK. type GetSdkOutput struct { _ struct{} `type:"structure" payload:"Body"` // The binary blob response to GetSdk, which contains the generated SDK. Body []byte `locationName:"body" type:"blob"` // The content-disposition header value in the HTTP response. ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"` // The content-type header value in the HTTP response. ContentType *string `location:"header" locationName:"Content-Type" type:"string"` } // String returns the string representation func (s GetSdkOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSdkOutput) GoString() string { return s.String() } // Requests Amazon API Gateway to get information about a Stage resource. type GetStageInput struct { _ struct{} `type:"structure"` // The identifier of the RestApi resource for the Stage resource to get information // about. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // The name of the Stage resource to get information about. // // StageName is a required field StageName *string `location:"uri" locationName:"stage_name" type:"string" required:"true"` } // String returns the string representation func (s GetStageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetStageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetStageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetStageInput"} if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.StageName == nil { invalidParams.Add(request.NewErrParamRequired("StageName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Requests Amazon API Gateway to get information about one or more Stage resources. type GetStagesInput struct { _ struct{} `type:"structure"` // The stages' deployment identifiers. DeploymentId *string `location:"querystring" locationName:"deploymentId" type:"string"` // The stages' API identifiers. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s GetStagesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetStagesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetStagesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetStagesInput"} if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A list of Stage resources that are associated with the ApiKey resource. // // Deploying API in Stages (http://docs.aws.amazon.com/apigateway/latest/developerguide/stages.html) type GetStagesOutput struct { _ struct{} `type:"structure"` // An individual Stage resource. Item []*Stage `locationName:"item" type:"list"` } // String returns the string representation func (s GetStagesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetStagesOutput) GoString() string { return s.String() } // The GET request to get the usage data of a usage plan in a specified time // interval. type GetUsageInput struct { _ struct{} `type:"structure"` // The ending date (e.g., 2016-12-31) of the usage data. // // EndDate is a required field EndDate *string `location:"querystring" locationName:"endDate" type:"string" required:"true"` // The Id of the API key associated with the resultant usage data. KeyId *string `location:"querystring" locationName:"keyId" type:"string"` // The maximum number of results to be returned. Limit *int64 `location:"querystring" locationName:"limit" type:"integer"` // Position Position *string `location:"querystring" locationName:"position" type:"string"` // The starting date (e.g., 2016-01-01) of the usage data. // // StartDate is a required field StartDate *string `location:"querystring" locationName:"startDate" type:"string" required:"true"` // The Id of the usage plan associated with the usage data. // // UsagePlanId is a required field UsagePlanId *string `location:"uri" locationName:"usageplanId" type:"string" required:"true"` } // String returns the string representation func (s GetUsageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetUsageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetUsageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetUsageInput"} if s.EndDate == nil { invalidParams.Add(request.NewErrParamRequired("EndDate")) } if s.StartDate == nil { invalidParams.Add(request.NewErrParamRequired("StartDate")) } if s.UsagePlanId == nil { invalidParams.Add(request.NewErrParamRequired("UsagePlanId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The GET request to get a usage plan of a given plan identifier. type GetUsagePlanInput struct { _ struct{} `type:"structure"` // The identifier of the UsagePlan resource to be retrieved. // // UsagePlanId is a required field UsagePlanId *string `location:"uri" locationName:"usageplanId" type:"string" required:"true"` } // String returns the string representation func (s GetUsagePlanInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetUsagePlanInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetUsagePlanInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetUsagePlanInput"} if s.UsagePlanId == nil { invalidParams.Add(request.NewErrParamRequired("UsagePlanId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The GET request to get a usage plan key of a given key identifier. type GetUsagePlanKeyInput struct { _ struct{} `type:"structure"` // The key Id of the to-be-retrieved UsagePlanKey resource representing a plan // customer. // // KeyId is a required field KeyId *string `location:"uri" locationName:"keyId" type:"string" required:"true"` // The Id of the UsagePlan resource representing the usage plan containing the // to-be-retrieved UsagePlanKey resource representing a plan customer. // // UsagePlanId is a required field UsagePlanId *string `location:"uri" locationName:"usageplanId" type:"string" required:"true"` } // String returns the string representation func (s GetUsagePlanKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetUsagePlanKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetUsagePlanKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetUsagePlanKeyInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.UsagePlanId == nil { invalidParams.Add(request.NewErrParamRequired("UsagePlanId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The GET request to get all the usage plan keys representing the API keys // added to a specified usage plan. type GetUsagePlanKeysInput struct { _ struct{} `type:"structure"` // A query parameter specifying the maximum number usage plan keys returned // by the GET request. Limit *int64 `location:"querystring" locationName:"limit" type:"integer"` // A query parameter specifying the name of the to-be-returned usage plan keys. NameQuery *string `location:"querystring" locationName:"name" type:"string"` // A query parameter specifying the zero-based index specifying the position // of a usage plan key. Position *string `location:"querystring" locationName:"position" type:"string"` // The Id of the UsagePlan resource representing the usage plan containing the // to-be-retrieved UsagePlanKey resource representing a plan customer. // // UsagePlanId is a required field UsagePlanId *string `location:"uri" locationName:"usageplanId" type:"string" required:"true"` } // String returns the string representation func (s GetUsagePlanKeysInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetUsagePlanKeysInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetUsagePlanKeysInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetUsagePlanKeysInput"} if s.UsagePlanId == nil { invalidParams.Add(request.NewErrParamRequired("UsagePlanId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the collection of usage plan keys added to usage plans for the // associated API keys and, possibly, other types of keys. // // Create and Use Usage Plans (http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) type GetUsagePlanKeysOutput struct { _ struct{} `type:"structure"` // Gets the current item of the usage plan keys collection. Items []*UsagePlanKey `locationName:"item" type:"list"` Position *string `locationName:"position" type:"string"` } // String returns the string representation func (s GetUsagePlanKeysOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetUsagePlanKeysOutput) GoString() string { return s.String() } // The GET request to get all the usage plans of the caller's account. type GetUsagePlansInput struct { _ struct{} `type:"structure"` // The identifier of the API key associated with the usage plans. KeyId *string `location:"querystring" locationName:"keyId" type:"string"` // The number of UsagePlan resources to be returned as the result. Limit *int64 `location:"querystring" locationName:"limit" type:"integer"` // The zero-based array index specifying the position of the to-be-retrieved // UsagePlan resource. Position *string `location:"querystring" locationName:"position" type:"string"` } // String returns the string representation func (s GetUsagePlansInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetUsagePlansInput) GoString() string { return s.String() } // Represents a collection of usage plans for an AWS account. // // Create and Use Usage Plans (http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) type GetUsagePlansOutput struct { _ struct{} `type:"structure"` // Gets the current item when enumerating the collection of UsagePlan. Items []*UsagePlan `locationName:"item" type:"list"` Position *string `locationName:"position" type:"string"` } // String returns the string representation func (s GetUsagePlansOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetUsagePlansOutput) GoString() string { return s.String() } // The POST request to import API keys from an external source, such as a CSV-formatted // file. type ImportApiKeysInput struct { _ struct{} `type:"structure" payload:"Body"` // The payload of the POST request to import API keys. For the payload format, // see API Key File Format (http://docs.aws.amazon.com/apigateway/latest/developerguide/api-key-file-format.html). // // Body is a required field Body []byte `locationName:"body" type:"blob" required:"true"` // A query parameter to indicate whether to rollback ApiKey importation (true) // or not (false) when error is encountered. FailOnWarnings *bool `location:"querystring" locationName:"failonwarnings" type:"boolean"` // A query parameter to specify the input format to imported API keys. Currently, // only the csv format is supported. // // Format is a required field Format *string `location:"querystring" locationName:"format" type:"string" required:"true" enum:"ApiKeysFormat"` } // String returns the string representation func (s ImportApiKeysInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportApiKeysInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ImportApiKeysInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ImportApiKeysInput"} if s.Body == nil { invalidParams.Add(request.NewErrParamRequired("Body")) } if s.Format == nil { invalidParams.Add(request.NewErrParamRequired("Format")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The identifier of an API key used to reference an API key in a usage plan. type ImportApiKeysOutput struct { _ struct{} `type:"structure"` // A list of all the ApiKey identifiers. Ids []*string `locationName:"ids" type:"list"` // A list of warning messages. Warnings []*string `locationName:"warnings" type:"list"` } // String returns the string representation func (s ImportApiKeysOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportApiKeysOutput) GoString() string { return s.String() } // A POST request to import an API to Amazon API Gateway using an input of an // API definition file. type ImportRestApiInput struct { _ struct{} `type:"structure" payload:"Body"` // The POST request body containing external API definitions. Currently, only // Swagger definition JSON files are supported. // // Body is a required field Body []byte `locationName:"body" type:"blob" required:"true"` // A query parameter to indicate whether to rollback the API creation (true) // or not (false) when a warning is encountered. The default value is false. FailOnWarnings *bool `location:"querystring" locationName:"failonwarnings" type:"boolean"` // Custom header parameters as part of the request. Parameters map[string]*string `location:"querystring" locationName:"parameters" type:"map"` } // String returns the string representation func (s ImportRestApiInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportRestApiInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ImportRestApiInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ImportRestApiInput"} if s.Body == nil { invalidParams.Add(request.NewErrParamRequired("Body")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents an HTTP, AWS, or Mock integration. // // In the API Gateway console, the built-in Lambda integration is an AWS integration. // // Creating an API (http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html) type Integration struct { _ struct{} `type:"structure"` // Specifies the integration's cache key parameters. CacheKeyParameters []*string `locationName:"cacheKeyParameters" type:"list"` // Specifies the integration's cache namespace. CacheNamespace *string `locationName:"cacheNamespace" type:"string"` // Specifies the credentials required for the integration, if any. For AWS integrations, // three options are available. To specify an IAM Role for Amazon API Gateway // to assume, use the role's Amazon Resource Name (ARN). To require that the // caller's identity be passed through from the request, specify the string // arn:aws:iam::\*:user/\*. To use resource-based permissions on supported AWS // services, specify null. Credentials *string `locationName:"credentials" type:"string"` // Specifies the integration's HTTP method type. HttpMethod *string `locationName:"httpMethod" type:"string"` // Specifies the integration's responses. // // Example: Get integration responses of a method // // Request // // GET /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200 // HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com // X-Amz-Date: 20160607T191449Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160607/us-east-1/apigateway/aws4_request, // SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash} // Response // // The successful response returns 200 OKstatus and a payload as follows: // // { "_links": { "curies": { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html", // "name": "integrationresponse", "templated": true }, "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200", // "title": "200" }, "integrationresponse:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200" // }, "integrationresponse:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200" // } }, "responseParameters": { "method.response.header.Content-Type": "'application/xml'" // }, "responseTemplates": { "application/json": "$util.urlDecode(\"%3CkinesisStreams%3E#foreach($stream // in $input.path('$.StreamNames'))%3Cstream%3E%3Cname%3E$stream%3C/name%3E%3C/stream%3E#end%3C/kinesisStreams%3E\")\n" // }, "statusCode": "200" } IntegrationResponses map[string]*IntegrationResponse `locationName:"integrationResponses" type:"map"` // Specifies how the method request body of an unmapped content type will be // passed through the integration request to the back end without transformation. // A content type is unmapped if no mapping template is defined in the integration // or the content type does not match any of the mapped content types, as specified // in requestTemplates. There are three valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, // and NEVER. // // WHEN_NO_MATCH passes the method request body through the integration request // to the back end without transformation when the method request content type // does not match any content type associated with the mapping templates defined // in the integration request. // WHEN_NO_TEMPLATES passes the method request body through the integration // request to the back end without transformation when no mapping template is // defined in the integration request. If a template is defined when this option // is selected, the method request of an unmapped content-type will be rejected // with an HTTP 415 Unsupported Media Type response. // NEVER rejects the method request with an HTTP 415 Unsupported Media Type // response when either the method request content type does not match any content // type associated with the mapping templates defined in the integration request // or no mapping template is defined in the integration request. PassthroughBehavior *string `locationName:"passthroughBehavior" type:"string"` // A key-value map specifying request parameters that are passed from the method // request to the back end. The key is an integration request parameter name // and the associated value is a method request parameter value or static value // that must be enclosed within single quotes and pre-encoded as required by // the back end. The method request parameter value must match the pattern of // method.request.{location}.{name}, where location is querystring, path, or // header and name must be a valid and unique method request parameter name. RequestParameters map[string]*string `locationName:"requestParameters" type:"map"` // Represents a map of Velocity templates that are applied on the request payload // based on the value of the Content-Type header sent by the client. The content // type value is the key in this map, and the template (as a String) is the // value. RequestTemplates map[string]*string `locationName:"requestTemplates" type:"map"` // Specifies the integration's type. The valid value is HTTP for integrating // with an HTTP back end, AWS for any AWS service endpoints, MOCK for testing // without actually invoking the back end, HTTP_PROXY for integrating with the // HTTP proxy integration, or AWS_PROXY for integrating with the Lambda proxy // integration type. Type *string `locationName:"type" type:"string" enum:"IntegrationType"` // Specifies the integration's Uniform Resource Identifier (URI). For HTTP integrations, // the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 // specification (https://www.ietf.org/rfc/rfc3986.txt). For AWS integrations, // the URI should be of the form arn:aws:apigateway:{region}:{subdomain.service|service}:{path|action}/{service_api}. // Region, subdomain and service are used to determine the right endpoint. For // AWS services that use the Action= query string parameter, service_api should // be a valid action for the desired service. For RESTful AWS service APIs, // path is used to indicate that the remaining substring in the URI should be // treated as the path to the resource, including the initial /. Uri *string `locationName:"uri" type:"string"` } // String returns the string representation func (s Integration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Integration) GoString() string { return s.String() } // Represents an integration response. The status code must map to an existing // MethodResponse, and parameters and templates can be used to transform the // back-end response. // // Creating an API (http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html) type IntegrationResponse struct { _ struct{} `type:"structure"` // A key-value map specifying response parameters that are passed to the method // response from the back end. The key is a method response header parameter // name and the mapped value is an integration response header value, a static // value enclosed within a pair of single quotes, or a JSON expression from // the integration response body. The mapping key must match the pattern of // method.response.header.{name}, where name is a valid and unique header name. // The mapped non-static value must match the pattern of integration.response.header.{name} // or integration.response.body.{JSON-expression}, where name is a valid and // unique response header name and JSON-expression is a valid JSON expression // without the $ prefix. ResponseParameters map[string]*string `locationName:"responseParameters" type:"map"` // Specifies the templates used to transform the integration response body. // Response templates are represented as a key/value map, with a content-type // as the key and a template as the value. ResponseTemplates map[string]*string `locationName:"responseTemplates" type:"map"` // Specifies the regular expression (regex) pattern used to choose an integration // response based on the response from the back end. For example, if the success // response returns nothing and the error response returns some string, you // could use the .+ regex to match error response. However, make sure that the // error response does not contain any newline (\n) character in such cases. // If the back end is an AWS Lambda function, the AWS Lambda function error // header is matched. For all other HTTP and AWS back ends, the HTTP status // code is matched. SelectionPattern *string `locationName:"selectionPattern" type:"string"` // Specifies the status code that is used to map the integration response to // an existing MethodResponse. StatusCode *string `locationName:"statusCode" type:"string"` } // String returns the string representation func (s IntegrationResponse) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IntegrationResponse) GoString() string { return s.String() } // Represents a client-facing interface by which the client calls the API to // access back-end resources. A Method resource is integrated with an Integration // resource. Both consist of a request and one or more responses. The method // request takes the client input that is passed to the back end through the // integration request. A method response returns the output from the back end // to the client through an integration response. A method request is embodied // in a Method resource, whereas an integration request is embodied in an Integration // resource. On the other hand, a method response is represented by a MethodResponse // resource, whereas an integration response is represented by an IntegrationResponse // resource. // // Example: Retrive the GET method on a specified resource // // Request // // The following example request retrieves the information about the GET method // on an API resource (3kzxbg5sa2) of an API (fugvjdxtri). // // GET /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET HTTP/1.1 Content-Type: // application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date: // 20160603T210259Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160603/us-east-1/apigateway/aws4_request, // SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash} // Response // // The successful response returns a 200 OK status code and a payload similar // to the following: // // { "_links": { "curies": [ { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-{rel}.html", // "name": "integration", "templated": true }, { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html", // "name": "integrationresponse", "templated": true }, { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-{rel}.html", // "name": "method", "templated": true }, { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html", // "name": "methodresponse", "templated": true } ], "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET", // "name": "GET", "title": "GET" }, "integration:put": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" // }, "method:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET" // }, "method:integration": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" // }, "method:responses": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200", // "name": "200", "title": "200" }, "method:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET" // }, "methodresponse:put": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/{status_code}", // "templated": true } }, "apiKeyRequired": true, "authorizationType": "NONE", // "httpMethod": "GET", "_embedded": { "method:integration": { "_links": // { "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" // }, "integration:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" // }, "integration:responses": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200", // "name": "200", "title": "200" }, "integration:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" // }, "integrationresponse:put": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/{status_code}", // "templated": true } }, "cacheKeyParameters": [], "cacheNamespace": "3kzxbg5sa2", // "credentials": "arn:aws:iam::123456789012:role/apigAwsProxyRole", "httpMethod": // "POST", "passthroughBehavior": "WHEN_NO_MATCH", "requestParameters": { // "integration.request.header.Content-Type": "'application/x-amz-json-1.1'" // }, "requestTemplates": { "application/json": "{\n}" }, "type": "AWS", // "uri": "arn:aws:apigateway:us-east-1:kinesis:action/ListStreams", "_embedded": // { "integration:responses": { "_links": { "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200", // "name": "200", "title": "200" }, "integrationresponse:delete": { "href": // "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200" // }, "integrationresponse:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200" // } }, "responseParameters": { "method.response.header.Content-Type": "'application/xml'" // }, "responseTemplates": { "application/json": "$util.urlDecode(\"%3CkinesisStreams%3E%23foreach(%24stream%20in%20%24input.path(%27%24.StreamNames%27))%3Cstream%3E%3Cname%3E%24stream%3C%2Fname%3E%3C%2Fstream%3E%23end%3C%2FkinesisStreams%3E\")" // }, "statusCode": "200" } } }, "method:responses": { "_links": { "self": // { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200", // "name": "200", "title": "200" }, "methodresponse:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" // }, "methodresponse:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" // } }, "responseModels": { "application/json": "Empty" }, "responseParameters": // { "method.response.header.Content-Type": false }, "statusCode": "200" // } } } // In the example above, the response template for the 200 OK response maps // the JSON output from the ListStreams action in the back end to an XML output. // The mapping template is URL-encoded as %3CkinesisStreams%3E%23foreach(%24stream%20in%20%24input.path(%27%24.StreamNames%27))%3Cstream%3E%3Cname%3E%24stream%3C%2Fname%3E%3C%2Fstream%3E%23end%3C%2FkinesisStreams%3E // and the output is decoded using the $util.urlDecode() (http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#util-templat-reference) // helper function. // // MethodResponse, Integration, IntegrationResponse, Resource, Set up an API's method (http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-method-settings.html) type Method struct { _ struct{} `type:"structure"` // A boolean flag specifying whether a valid ApiKey is required to invoke this // method. ApiKeyRequired *bool `locationName:"apiKeyRequired" type:"boolean"` // The method's authorization type. AuthorizationType *string `locationName:"authorizationType" type:"string"` // The identifier of an Authorizer to use on this method. The authorizationType // must be CUSTOM. AuthorizerId *string `locationName:"authorizerId" type:"string"` // The method's HTTP verb. HttpMethod *string `locationName:"httpMethod" type:"string"` // Gets the method's integration responsible for passing the client-submitted // request to the back end and performing necessary transformations to make // the request compliant with the back end. // // Example: // // Request // // GET /restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration HTTP/1.1 // Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com Content-Length: // 117 X-Amz-Date: 20160613T213210Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160613/us-east-1/apigateway/aws4_request, // SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash} // Response // // The successful response returns a 200 OKstatus code and a payload similar to the following: // // { "_links": { "curies": [ { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-{rel}.html", // "name": "integration", "templated": true }, { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html", // "name": "integrationresponse", "templated": true } ], "self": { "href": "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration" // }, "integration:delete": { "href": "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration" // }, "integration:responses": { "href": "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200", // "name": "200", "title": "200" }, "integration:update": { "href": "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration" // }, "integrationresponse:put": { "href": "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/{status_code}", // "templated": true } }, "cacheKeyParameters": [], "cacheNamespace": "0cjtch", // "credentials": "arn:aws:iam::123456789012:role/apigAwsProxyRole", "httpMethod": // "POST", "passthroughBehavior": "WHEN_NO_MATCH", "requestTemplates": { "application/json": // "{\n \"a\": \"$input.params('operand1')\",\n \"b\": \"$input.params('operand2')\", // \n \"op\": \"$input.params('operator')\" \n}" }, "type": "AWS", "uri": "arn:aws:apigateway:us-west-2:lambda:path//2015-03-31/functions/arn:aws:lambda:us-west-2:123456789012:function:Calc/invocations", // "_embedded": { "integration:responses": { "_links": { "self": { "href": "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200", // "name": "200", "title": "200" }, "integrationresponse:delete": { "href": // "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200" // }, "integrationresponse:update": { "href": "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200" // } }, "responseParameters": { "method.response.header.operator": "integration.response.body.op", // "method.response.header.operand_2": "integration.response.body.b", "method.response.header.operand_1": // "integration.response.body.a" }, "responseTemplates": { "application/json": // "#set($res = $input.path('$'))\n{\n \"result\": \"$res.a, $res.b, $res.op // => $res.c\",\n \"a\" : \"$res.a\",\n \"b\" : \"$res.b\",\n \"op\" : \"$res.op\",\n // \"c\" : \"$res.c\"\n}" }, "selectionPattern": "", "statusCode": "200" } } // } MethodIntegration *Integration `locationName:"methodIntegration" type:"structure"` // Gets a method response associated with a given HTTP status code. // // The collection of method responses are encapsulated in a key-value map, where // the key is a response's HTTP status code and the value is a MethodResponse // resource that specifies the response returned to the caller from the back // end through the integration response. // // Example: Get a 200 OK response of a GET method // // Request // // GET /restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200 HTTP/1.1 // Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com // Content-Length: 117 X-Amz-Date: 20160613T215008Z Authorization: AWS4-HMAC-SHA256 // Credential={access_key_ID}/20160613/us-east-1/apigateway/aws4_request, // SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash} // Response // // The successful response returns a 200 OK status code and a payload similar // to the following: // // { "_links": { "curies": { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html", // "name": "methodresponse", "templated": true }, "self": { "href": "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200", // "title": "200" }, "methodresponse:delete": { "href": "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200" // }, "methodresponse:update": { "href": "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200" // } }, "responseModels": { "application/json": "Empty" }, "responseParameters": // { "method.response.header.operator": false, "method.response.header.operand_2": // false, "method.response.header.operand_1": false }, "statusCode": "200" // } MethodResponses map[string]*MethodResponse `locationName:"methodResponses" type:"map"` // A key-value map specifying data schemas, represented by Model resources, // (as the mapped value) of the request payloads of given content types (as // the mapping key). RequestModels map[string]*string `locationName:"requestModels" type:"map"` // A key-value map defining required or optional method request parameters that // can be accepted by Amazon API Gateway. A key is a method request parameter // name matching the pattern of method.request.{location}.{name}, where location // is querystring, path, or header and name is a valid and unique parameter // name. The value associated with the key is a Boolean flag indicating whether // the parameter is required (true) or optional (false). The method request // parameter names defined here are available in Integration to be mapped to // integration request parameters or templates. RequestParameters map[string]*bool `locationName:"requestParameters" type:"map"` } // String returns the string representation func (s Method) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Method) GoString() string { return s.String() } // Represents a method response of a given HTTP status code returned to the // client. The method response is passed from the back end through the associated // integration response that can be transformed using a mapping template. // // Example: A MethodResponse instance of an API // // Request // // The example request retrieves a MethodResponse of the 200 status code. // // GET /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200 // HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com // X-Amz-Date: 20160603T222952Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160603/us-east-1/apigateway/aws4_request, // SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash} // Response // // The successful response returns 200 OK status and a payload as follows: // // { "_links": { "curies": { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html", // "name": "methodresponse", "templated": true }, "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200", // "title": "200" }, "methodresponse:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" // }, "methodresponse:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" // } }, "responseModels": { "application/json": "Empty" }, "responseParameters": // { "method.response.header.Content-Type": false }, "statusCode": "200" // } type MethodResponse struct { _ struct{} `type:"structure"` // Specifies the Model resources used for the response's content-type. Response // models are represented as a key/value map, with a content-type as the key // and a Model name as the value. ResponseModels map[string]*string `locationName:"responseModels" type:"map"` // A key-value map specifying required or optional response parameters that // Amazon API Gateway can send back to the caller. A key defines a method response // header and the value specifies whether the associated method response header // is required or not. The expression of the key must match the pattern method.response.header.{name}, // where name is a valid and unique header name. Amazon API Gateway passes certain // integration response data to the method response headers specified here according // to the mapping you prescribe in the API's IntegrationResponse. The integration // response data that can be mapped include an integration response header expressed // in integration.response.header.{name}, a static value enclosed within a pair // of single quotes (e.g., 'application/json'), or a JSON expression from the // back-end response payload in the form of integration.response.body.{JSON-expression}, // where JSON-expression is a valid JSON expression without the $ prefix.) ResponseParameters map[string]*bool `locationName:"responseParameters" type:"map"` // The method response's status code. StatusCode *string `locationName:"statusCode" type:"string"` } // String returns the string representation func (s MethodResponse) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MethodResponse) GoString() string { return s.String() } // Specifies the method setting properties. type MethodSetting struct { _ struct{} `type:"structure"` // Specifies whether the cached responses are encrypted. The PATCH path for // this setting is /{method_setting_key}/caching/dataEncrypted, and the value // is a Boolean. CacheDataEncrypted *bool `locationName:"cacheDataEncrypted" type:"boolean"` // Specifies the time to live (TTL), in seconds, for cached responses. The higher // the TTL, the longer the response will be cached. The PATCH path for this // setting is /{method_setting_key}/caching/ttlInSeconds, and the value is an // integer. CacheTtlInSeconds *int64 `locationName:"cacheTtlInSeconds" type:"integer"` // Specifies whether responses should be cached and returned for requests. A // cache cluster must be enabled on the stage for responses to be cached. The // PATCH path for this setting is /{method_setting_key}/caching/enabled, and // the value is a Boolean. CachingEnabled *bool `locationName:"cachingEnabled" type:"boolean"` // Specifies whether data trace logging is enabled for this method, which effects // the log entries pushed to Amazon CloudWatch Logs. The PATCH path for this // setting is /{method_setting_key}/logging/dataTrace, and the value is a Boolean. DataTraceEnabled *bool `locationName:"dataTraceEnabled" type:"boolean"` // Specifies the logging level for this method, which effects the log entries // pushed to Amazon CloudWatch Logs. The PATCH path for this setting is /{method_setting_key}/logging/loglevel, // and the available levels are OFF, ERROR, and INFO. LoggingLevel *string `locationName:"loggingLevel" type:"string"` // Specifies whether Amazon CloudWatch metrics are enabled for this method. // The PATCH path for this setting is /{method_setting_key}/metrics/enabled, // and the value is a Boolean. MetricsEnabled *bool `locationName:"metricsEnabled" type:"boolean"` // Specifies whether authorization is required for a cache invalidation request. // The PATCH path for this setting is /{method_setting_key}/caching/requireAuthorizationForCacheControl, // and the value is a Boolean. RequireAuthorizationForCacheControl *bool `locationName:"requireAuthorizationForCacheControl" type:"boolean"` // Specifies the throttling burst limit. The PATCH path for this setting is // /{method_setting_key}/throttling/burstLimit, and the value is an integer. ThrottlingBurstLimit *int64 `locationName:"throttlingBurstLimit" type:"integer"` // Specifies the throttling rate limit. The PATCH path for this setting is /{method_setting_key}/throttling/rateLimit, // and the value is a double. ThrottlingRateLimit *float64 `locationName:"throttlingRateLimit" type:"double"` // Specifies how to handle unauthorized requests for cache invalidation. The // PATCH path for this setting is /{method_setting_key}/caching/unauthorizedCacheControlHeaderStrategy, // and the available values are FAIL_WITH_403, SUCCEED_WITH_RESPONSE_HEADER, // SUCCEED_WITHOUT_RESPONSE_HEADER. UnauthorizedCacheControlHeaderStrategy *string `locationName:"unauthorizedCacheControlHeaderStrategy" type:"string" enum:"UnauthorizedCacheControlHeaderStrategy"` } // String returns the string representation func (s MethodSetting) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MethodSetting) GoString() string { return s.String() } // Represents a summary of a Method resource, given a particular date and time. type MethodSnapshot struct { _ struct{} `type:"structure"` // Specifies whether the method requires a valid ApiKey. ApiKeyRequired *bool `locationName:"apiKeyRequired" type:"boolean"` // Specifies the type of authorization used for the method. AuthorizationType *string `locationName:"authorizationType" type:"string"` } // String returns the string representation func (s MethodSnapshot) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MethodSnapshot) GoString() string { return s.String() } // Represents the data structure of a method's request or response payload. // // A request model defines the data structure of the client-supplied request // payload. A response model defines the data structure of the response payload // returned by the back end. Although not required, models are useful for mapping // payloads between the front end and back end. // // A model is used for generating an API's SDK, validating the input request // body, and creating a skeletal mapping template. // // Method, MethodResponse, Models and Mappings (http://docs.aws.amazon.com/apigateway/latest/developerguide/models-mappings.html) type Model struct { _ struct{} `type:"structure"` // The content-type for the model. ContentType *string `locationName:"contentType" type:"string"` // The description of the model. Description *string `locationName:"description" type:"string"` // The identifier for the model resource. Id *string `locationName:"id" type:"string"` // The name of the model. Name *string `locationName:"name" type:"string"` // The schema for the model. For application/json models, this should be JSON-schema // draft v4 (http://json-schema.org/documentation.html) model. Do not include // "\*/" characters in the description of any properties because such "\*/" // characters may be interpreted as the closing marker for comments in some // languages, such as Java or JavaScript, causing the installation of your API's // SDK generated by API Gateway to fail. Schema *string `locationName:"schema" type:"string"` } // String returns the string representation func (s Model) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Model) GoString() string { return s.String() } // A single patch operation to apply to the specified resource. Please refer // to http://tools.ietf.org/html/rfc6902#section-4 for an explanation of how // each operation is used. type PatchOperation struct { _ struct{} `type:"structure"` // Not supported. From *string `locationName:"from" type:"string"` // An update operation to be performed with this PATCH request. The valid value // can be "add", "remove", or "replace". Not all valid operations are supported // for a given resource. Support of the operations depends on specific operational // contexts. Attempts to apply an unsupported operation on a resource will return // an error message. Op *string `locationName:"op" type:"string" enum:"Op"` // The op operation's target, as identified by a JSON Pointer (https://tools.ietf.org/html/draft-ietf-appsawg-json-pointer-08) // value that references a location within the targeted resource. For example, // if the target resource has an updateable property of {"name":"value"}, the // path for this property is /name. If the name property value is a JSON object // (e.g., {"name": {"child/name": "child-value"}}), the path for the child/name // property will be /name/child~1name. Any slash ("/") character appearing in // path names must be escaped with "~1", as shown in the example above. Each // op operation can have only one path associated with it. Path *string `locationName:"path" type:"string"` // The new target value of the update operation. Value *string `locationName:"value" type:"string"` } // String returns the string representation func (s PatchOperation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PatchOperation) GoString() string { return s.String() } // Represents a put integration request. type PutIntegrationInput struct { _ struct{} `type:"structure"` // Specifies a put integration input's cache key parameters. CacheKeyParameters []*string `locationName:"cacheKeyParameters" type:"list"` // Specifies a put integration input's cache namespace. CacheNamespace *string `locationName:"cacheNamespace" type:"string"` // Specifies whether credentials are required for a put integration. Credentials *string `locationName:"credentials" type:"string"` // Specifies a put integration request's HTTP method. // // HttpMethod is a required field HttpMethod *string `location:"uri" locationName:"http_method" type:"string" required:"true"` // Specifies a put integration HTTP method. When the integration type is HTTP // or AWS, this field is required. IntegrationHttpMethod *string `locationName:"httpMethod" type:"string"` // Specifies the pass-through behavior for incoming requests based on the Content-Type // header in the request, and the available mapping templates specified as the // requestTemplates property on the Integration resource. There are three valid // values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and NEVER. // // * WHEN_NO_MATCH passes the request body for unmapped content types through // to the integration back end without transformation. // // * NEVER rejects unmapped content types with an HTTP 415 'Unsupported Media // Type' response. // // * WHEN_NO_TEMPLATES allows pass-through when the integration has NO content // types mapped to templates. However if there is at least one content type // defined, unmapped content types will be rejected with the same 415 response. PassthroughBehavior *string `locationName:"passthroughBehavior" type:"string"` // A key-value map specifying request parameters that are passed from the method // request to the back end. The key is an integration request parameter name // and the associated value is a method request parameter value or static value // that must be enclosed within single quotes and pre-encoded as required by // the back end. The method request parameter value must match the pattern of // method.request.{location}.{name}, where location is querystring, path, or // header and name must be a valid and unique method request parameter name. RequestParameters map[string]*string `locationName:"requestParameters" type:"map"` // Represents a map of Velocity templates that are applied on the request payload // based on the value of the Content-Type header sent by the client. The content // type value is the key in this map, and the template (as a String) is the // value. RequestTemplates map[string]*string `locationName:"requestTemplates" type:"map"` // Specifies a put integration request's resource ID. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // Specifies a put integration request's API identifier. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // Specifies a put integration input's type. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"IntegrationType"` // Specifies a put integration input's Uniform Resource Identifier (URI). When // the integration type is HTTP or AWS, this field is required. For integration // with Lambda as an AWS service proxy, this value is of the 'arn:aws:apigateway::lambda:path/2015-03-31/functions//invocations' // format. Uri *string `locationName:"uri" type:"string"` } // String returns the string representation func (s PutIntegrationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutIntegrationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutIntegrationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutIntegrationInput"} if s.HttpMethod == nil { invalidParams.Add(request.NewErrParamRequired("HttpMethod")) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a put integration response request. type PutIntegrationResponseInput struct { _ struct{} `type:"structure"` // Specifies a put integration response request's HTTP method. // // HttpMethod is a required field HttpMethod *string `location:"uri" locationName:"http_method" type:"string" required:"true"` // Specifies a put integration response request's resource identifier. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // A key-value map specifying response parameters that are passed to the method // response from the back end. The key is a method response header parameter // name and the mapped value is an integration response header value, a static // value enclosed within a pair of single quotes, or a JSON expression from // the integration response body. The mapping key must match the pattern of // method.response.header.{name}, where name is a valid and unique header name. // The mapped non-static value must match the pattern of integration.response.header.{name} // or integration.response.body.{JSON-expression}, where name must be a valid // and unique response header name and JSON-expression a valid JSON expression // without the $ prefix. ResponseParameters map[string]*string `locationName:"responseParameters" type:"map"` // Specifies a put integration response's templates. ResponseTemplates map[string]*string `locationName:"responseTemplates" type:"map"` // Specifies a put integration response request's API identifier. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // Specifies the selection pattern of a put integration response. SelectionPattern *string `locationName:"selectionPattern" type:"string"` // Specifies the status code that is used to map the integration response to // an existing MethodResponse. // // StatusCode is a required field StatusCode *string `location:"uri" locationName:"status_code" type:"string" required:"true"` } // String returns the string representation func (s PutIntegrationResponseInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutIntegrationResponseInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutIntegrationResponseInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutIntegrationResponseInput"} if s.HttpMethod == nil { invalidParams.Add(request.NewErrParamRequired("HttpMethod")) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.StatusCode == nil { invalidParams.Add(request.NewErrParamRequired("StatusCode")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to add a method to an existing Resource resource. type PutMethodInput struct { _ struct{} `type:"structure"` // Specifies whether the method required a valid ApiKey. ApiKeyRequired *bool `locationName:"apiKeyRequired" type:"boolean"` // Specifies the type of authorization used for the method. // // AuthorizationType is a required field AuthorizationType *string `locationName:"authorizationType" type:"string" required:"true"` // Specifies the identifier of an Authorizer to use on this Method, if the type // is CUSTOM. AuthorizerId *string `locationName:"authorizerId" type:"string"` // Specifies the method request's HTTP method type. // // HttpMethod is a required field HttpMethod *string `location:"uri" locationName:"http_method" type:"string" required:"true"` // Specifies the Model resources used for the request's content type. Request // models are represented as a key/value map, with a content type as the key // and a Model name as the value. RequestModels map[string]*string `locationName:"requestModels" type:"map"` // A key-value map defining required or optional method request parameters that // can be accepted by Amazon API Gateway. A key defines a method request parameter // name matching the pattern of method.request.{location}.{name}, where location // is querystring, path, or header and name is a valid and unique parameter // name. The value associated with the key is a Boolean flag indicating whether // the parameter is required (true) or optional (false). The method request // parameter names defined here are available in Integration to be mapped to // integration request parameters or body-mapping templates. RequestParameters map[string]*bool `locationName:"requestParameters" type:"map"` // The Resource identifier for the new Method resource. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // The RestApi identifier for the new Method resource. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s PutMethodInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutMethodInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutMethodInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutMethodInput"} if s.AuthorizationType == nil { invalidParams.Add(request.NewErrParamRequired("AuthorizationType")) } if s.HttpMethod == nil { invalidParams.Add(request.NewErrParamRequired("HttpMethod")) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to add a MethodResponse to an existing Method resource. type PutMethodResponseInput struct { _ struct{} `type:"structure"` // The HTTP verb of the Method resource. // // HttpMethod is a required field HttpMethod *string `location:"uri" locationName:"http_method" type:"string" required:"true"` // The Resource identifier for the Method resource. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // Specifies the Model resources used for the response's content type. Response // models are represented as a key/value map, with a content type as the key // and a Model name as the value. ResponseModels map[string]*string `locationName:"responseModels" type:"map"` // A key-value map specifying required or optional response parameters that // Amazon API Gateway can send back to the caller. A key defines a method response // header name and the associated value is a Boolean flag indicating whether // the method response parameter is required or not. The method response header // names must match the pattern of method.response.header.{name}, where name // is a valid and unique header name. The response parameter names defined here // are available in the integration response to be mapped from an integration // response header expressed in integration.response.header.{name}, a static // value enclosed within a pair of single quotes (e.g., 'application/json'), // or a JSON expression from the back-end response payload in the form of integration.response.body.{JSON-expression}, // where JSON-expression is a valid JSON expression without the $ prefix.) ResponseParameters map[string]*bool `locationName:"responseParameters" type:"map"` // The RestApi identifier for the Method resource. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // The method response's status code. // // StatusCode is a required field StatusCode *string `location:"uri" locationName:"status_code" type:"string" required:"true"` } // String returns the string representation func (s PutMethodResponseInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutMethodResponseInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutMethodResponseInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutMethodResponseInput"} if s.HttpMethod == nil { invalidParams.Add(request.NewErrParamRequired("HttpMethod")) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.StatusCode == nil { invalidParams.Add(request.NewErrParamRequired("StatusCode")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A PUT request to update an existing API, with external API definitions specified // as the request body. type PutRestApiInput struct { _ struct{} `type:"structure" payload:"Body"` // The PUT request body containing external API definitions. Currently, only // Swagger definition JSON files are supported. // // Body is a required field Body []byte `locationName:"body" type:"blob" required:"true"` // A query parameter to indicate whether to rollback the API update (true) or // not (false) when a warning is encountered. The default value is false. FailOnWarnings *bool `location:"querystring" locationName:"failonwarnings" type:"boolean"` // The mode query parameter to specify the update mode. Valid values are "merge" // and "overwrite". By default, the update mode is "merge". Mode *string `location:"querystring" locationName:"mode" type:"string" enum:"PutMode"` // Custom headers supplied as part of the request. Parameters map[string]*string `location:"querystring" locationName:"parameters" type:"map"` // The identifier of the RestApi to be updated. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s PutRestApiInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRestApiInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutRestApiInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutRestApiInput"} if s.Body == nil { invalidParams.Add(request.NewErrParamRequired("Body")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Quotas configured for a usage plan. type QuotaSettings struct { _ struct{} `type:"structure"` // The maximum number of requests that can be made in a given time period. Limit *int64 `locationName:"limit" type:"integer"` // The number of requests subtracted from the given limit in the initial time // period. Offset *int64 `locationName:"offset" type:"integer"` // The time period in which the limit applies. Valid values are "DAY", "WEEK" // or "MONTH". Period *string `locationName:"period" type:"string" enum:"QuotaPeriodType"` } // String returns the string representation func (s QuotaSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s QuotaSettings) GoString() string { return s.String() } // Represents an API resource. // // Create an API (http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html) type Resource struct { _ struct{} `type:"structure"` // The resource's identifier. Id *string `locationName:"id" type:"string"` // The parent resource's identifier. ParentId *string `locationName:"parentId" type:"string"` // The full path for this resource. Path *string `locationName:"path" type:"string"` // The last path segment for this resource. PathPart *string `locationName:"pathPart" type:"string"` // Gets an API resource's method of a given HTTP verb. // // The resource methods are a map of methods indexed by methods' HTTP verbs // enabled on the resource. This method map is included in the 200 OK response // of the GET /restapis/{restapi_id}/resources/{resource_id} or GET /restapis/{restapi_id}/resources/{resource_id}?embed=methods // request. // // Example: Get the GET method of an API resource // // Request // // GET /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET HTTP/1.1 Content-Type: // application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date: 20160608T031827Z // Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160608/us-east-1/apigateway/aws4_request, // SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash} // Response // // { "_links": { "curies": [ { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-{rel}.html", // "name": "integration", "templated": true }, { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html", // "name": "integrationresponse", "templated": true }, { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-{rel}.html", // "name": "method", "templated": true }, { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html", // "name": "methodresponse", "templated": true } ], "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET", // "name": "GET", "title": "GET" }, "integration:put": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" // }, "method:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET" // }, "method:integration": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" // }, "method:responses": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200", // "name": "200", "title": "200" }, "method:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET" // }, "methodresponse:put": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/{status_code}", // "templated": true } }, "apiKeyRequired": false, "authorizationType": "NONE", // "httpMethod": "GET", "_embedded": { "method:integration": { "_links": { "self": // { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" // }, "integration:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" // }, "integration:responses": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200", // "name": "200", "title": "200" }, "integration:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" // }, "integrationresponse:put": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/{status_code}", // "templated": true } }, "cacheKeyParameters": [], "cacheNamespace": "3kzxbg5sa2", // "credentials": "arn:aws:iam::123456789012:role/apigAwsProxyRole", "httpMethod": // "POST", "passthroughBehavior": "WHEN_NO_MATCH", "requestParameters": { "integration.request.header.Content-Type": // "'application/x-amz-json-1.1'" }, "requestTemplates": { "application/json": // "{\n}" }, "type": "AWS", "uri": "arn:aws:apigateway:us-east-1:kinesis:action/ListStreams", // "_embedded": { "integration:responses": { "_links": { "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200", // "name": "200", "title": "200" }, "integrationresponse:delete": { "href": // "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200" // }, "integrationresponse:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200" // } }, "responseParameters": { "method.response.header.Content-Type": "'application/xml'" // }, "responseTemplates": { "application/json": "$util.urlDecode(\"%3CkinesisStreams%3E#foreach($stream // in $input.path('$.StreamNames'))%3Cstream%3E%3Cname%3E$stream%3C/name%3E%3C/stream%3E#end%3C/kinesisStreams%3E\")\n" // }, "statusCode": "200" } } }, "method:responses": { "_links": { "self": { // "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200", // "name": "200", "title": "200" }, "methodresponse:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" // }, "methodresponse:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" // } }, "responseModels": { "application/json": "Empty" }, "responseParameters": // { "method.response.header.Content-Type": false }, "statusCode": "200" } } // } // If the OPTIONS is enabled on the resource, you can follow the example here // to get that method. Just replace the GET of the last path segment in the // request URL with OPTIONS. ResourceMethods map[string]*Method `locationName:"resourceMethods" type:"map"` } // String returns the string representation func (s Resource) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Resource) GoString() string { return s.String() } // Represents a REST API. // // Create an API (http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html) type RestApi struct { _ struct{} `type:"structure"` // The date when the API was created, in ISO 8601 format (http://www.iso.org/iso/home/standards/iso8601.htm). CreatedDate *time.Time `locationName:"createdDate" type:"timestamp" timestampFormat:"unix"` // The API's description. Description *string `locationName:"description" type:"string"` // The API's identifier. This identifier is unique across all of your APIs in // Amazon API Gateway. Id *string `locationName:"id" type:"string"` // The API's name. Name *string `locationName:"name" type:"string"` // The warning messages reported when failonwarnings is turned on during API // import. Warnings []*string `locationName:"warnings" type:"list"` } // String returns the string representation func (s RestApi) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestApi) GoString() string { return s.String() } // Represents a unique identifier for a version of a deployed RestApi that is // callable by users. // // Deploy an API (http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-deploy-api.html) type Stage struct { _ struct{} `type:"structure"` // Specifies whether a cache cluster is enabled for the stage. CacheClusterEnabled *bool `locationName:"cacheClusterEnabled" type:"boolean"` // The size of the cache cluster for the stage, if enabled. CacheClusterSize *string `locationName:"cacheClusterSize" type:"string" enum:"CacheClusterSize"` // The status of the cache cluster for the stage, if enabled. CacheClusterStatus *string `locationName:"cacheClusterStatus" type:"string" enum:"CacheClusterStatus"` // The identifier of a client certificate for an API stage. ClientCertificateId *string `locationName:"clientCertificateId" type:"string"` // The date and time that the stage was created, in ISO 8601 format (http://www.iso.org/iso/home/standards/iso8601.htm). CreatedDate *time.Time `locationName:"createdDate" type:"timestamp" timestampFormat:"unix"` // The identifier of the Deployment that the stage points to. DeploymentId *string `locationName:"deploymentId" type:"string"` // The stage's description. Description *string `locationName:"description" type:"string"` // The date and time that information about the stage was last updated, in ISO // 8601 format (http://www.iso.org/iso/home/standards/iso8601.htm). LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp" timestampFormat:"unix"` // A map that defines the method settings for a Stage resource. Keys (designated // as /{method_setting_key below) are method paths defined as {resource_path}/{http_method} // for an individual method override, or /\*/\* for overriding all methods in // the stage. MethodSettings map[string]*MethodSetting `locationName:"methodSettings" type:"map"` // The name of the stage is the first path segment in the Uniform Resource Identifier // (URI) of a call to Amazon API Gateway. StageName *string `locationName:"stageName" type:"string"` // A map that defines the stage variables for a Stage resource. Variable names // can have alphanumeric and underscore characters, and the values must match // [A-Za-z0-9-._~:/?#&=,]+. Variables map[string]*string `locationName:"variables" type:"map"` } // String returns the string representation func (s Stage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Stage) GoString() string { return s.String() } // A reference to a unique stage identified in the format {restApiId}/{stage}. type StageKey struct { _ struct{} `type:"structure"` // A list of Stage resources that are associated with the ApiKey resource. RestApiId *string `locationName:"restApiId" type:"string"` // The stage name in the RestApi that the stage key references. StageName *string `locationName:"stageName" type:"string"` } // String returns the string representation func (s StageKey) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StageKey) GoString() string { return s.String() } // Make a request to simulate the execution of an Authorizer. type TestInvokeAuthorizerInput struct { _ struct{} `type:"structure"` // [Optional] A key-value map of additional context variables. AdditionalContext map[string]*string `locationName:"additionalContext" type:"map"` // Specifies a test invoke authorizer request's Authorizer ID. // // AuthorizerId is a required field AuthorizerId *string `location:"uri" locationName:"authorizer_id" type:"string" required:"true"` // [Optional] The simulated request body of an incoming invocation request. Body *string `locationName:"body" type:"string"` // [Required] A key-value map of headers to simulate an incoming invocation // request. This is where the incoming authorization token, or identity source, // should be specified. Headers map[string]*string `locationName:"headers" type:"map"` // [Optional] The URI path, including query string, of the simulated invocation // request. Use this to specify path parameters and query string parameters. PathWithQueryString *string `locationName:"pathWithQueryString" type:"string"` // Specifies a test invoke authorizer request's RestApi identifier. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // A key-value map of stage variables to simulate an invocation on a deployed // Stage. StageVariables map[string]*string `locationName:"stageVariables" type:"map"` } // String returns the string representation func (s TestInvokeAuthorizerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TestInvokeAuthorizerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TestInvokeAuthorizerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TestInvokeAuthorizerInput"} if s.AuthorizerId == nil { invalidParams.Add(request.NewErrParamRequired("AuthorizerId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response of the test invoke request for a custom Authorizer type TestInvokeAuthorizerOutput struct { _ struct{} `type:"structure"` Authorization map[string][]*string `locationName:"authorization" type:"map"` // The open identity claims (http://openid.net/specs/openid-connect-core-1_0.html#StandardClaims), // with any supported custom attributes, returned from the Cognito Your User // Pool configured for the API. Claims map[string]*string `locationName:"claims" type:"map"` // The HTTP status code that the client would have received. Value is 0 if the // authorizer succeeded. ClientStatus *int64 `locationName:"clientStatus" type:"integer"` // The execution latency of the test authorizer request. Latency *int64 `locationName:"latency" type:"long"` // The Amazon API Gateway execution log for the test authorizer request. Log *string `locationName:"log" type:"string"` // The JSON policy document returned by the Authorizer Policy *string `locationName:"policy" type:"string"` // The principal identity returned by the Authorizer PrincipalId *string `locationName:"principalId" type:"string"` } // String returns the string representation func (s TestInvokeAuthorizerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TestInvokeAuthorizerOutput) GoString() string { return s.String() } // Make a request to simulate the execution of a Method. type TestInvokeMethodInput struct { _ struct{} `type:"structure"` // The simulated request body of an incoming invocation request. Body *string `locationName:"body" type:"string"` // A ClientCertificate identifier to use in the test invocation. API Gateway // will use the certificate when making the HTTPS request to the defined back-end // endpoint. ClientCertificateId *string `locationName:"clientCertificateId" type:"string"` // A key-value map of headers to simulate an incoming invocation request. Headers map[string]*string `locationName:"headers" type:"map"` // Specifies a test invoke method request's HTTP method. // // HttpMethod is a required field HttpMethod *string `location:"uri" locationName:"http_method" type:"string" required:"true"` // The URI path, including query string, of the simulated invocation request. // Use this to specify path parameters and query string parameters. PathWithQueryString *string `locationName:"pathWithQueryString" type:"string"` // Specifies a test invoke method request's resource ID. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // Specifies a test invoke method request's API identifier. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // A key-value map of stage variables to simulate an invocation on a deployed // Stage. StageVariables map[string]*string `locationName:"stageVariables" type:"map"` } // String returns the string representation func (s TestInvokeMethodInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TestInvokeMethodInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TestInvokeMethodInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TestInvokeMethodInput"} if s.HttpMethod == nil { invalidParams.Add(request.NewErrParamRequired("HttpMethod")) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response of the test invoke request in the HTTP method. // // Test API using the API Gateway console (http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-test-method.html#how-to-test-method-console) type TestInvokeMethodOutput struct { _ struct{} `type:"structure"` // The body of the HTTP response. Body *string `locationName:"body" type:"string"` // The headers of the HTTP response. Headers map[string]*string `locationName:"headers" type:"map"` // The execution latency of the test invoke request. Latency *int64 `locationName:"latency" type:"long"` // The Amazon API Gateway execution log for the test invoke request. Log *string `locationName:"log" type:"string"` // The HTTP status code. Status *int64 `locationName:"status" type:"integer"` } // String returns the string representation func (s TestInvokeMethodOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TestInvokeMethodOutput) GoString() string { return s.String() } // The API request rate limits. type ThrottleSettings struct { _ struct{} `type:"structure"` // The API request burst limit, the maximum rate limit over a time ranging from // one to a few seconds, depending upon whether the underlying token bucket // is at its full capacity. BurstLimit *int64 `locationName:"burstLimit" type:"integer"` // The API request steady-state rate limit. RateLimit *float64 `locationName:"rateLimit" type:"double"` } // String returns the string representation func (s ThrottleSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ThrottleSettings) GoString() string { return s.String() } // Requests Amazon API Gateway to change information about the current Account // resource. type UpdateAccountInput struct { _ struct{} `type:"structure"` // A list of update operations to be applied to the specified resource and in // the order specified in this list. PatchOperations []*PatchOperation `locationName:"patchOperations" type:"list"` } // String returns the string representation func (s UpdateAccountInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAccountInput) GoString() string { return s.String() } // A request to change information about an ApiKey resource. type UpdateApiKeyInput struct { _ struct{} `type:"structure"` // The identifier of the ApiKey resource to be updated. // // ApiKey is a required field ApiKey *string `location:"uri" locationName:"api_Key" type:"string" required:"true"` // A list of update operations to be applied to the specified resource and in // the order specified in this list. PatchOperations []*PatchOperation `locationName:"patchOperations" type:"list"` } // String returns the string representation func (s UpdateApiKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateApiKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateApiKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateApiKeyInput"} if s.ApiKey == nil { invalidParams.Add(request.NewErrParamRequired("ApiKey")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to update an existing Authorizer resource. type UpdateAuthorizerInput struct { _ struct{} `type:"structure"` // The identifier of the Authorizer resource. // // AuthorizerId is a required field AuthorizerId *string `location:"uri" locationName:"authorizer_id" type:"string" required:"true"` // A list of update operations to be applied to the specified resource and in // the order specified in this list. PatchOperations []*PatchOperation `locationName:"patchOperations" type:"list"` // The RestApi identifier for the Authorizer resource. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s UpdateAuthorizerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAuthorizerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateAuthorizerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateAuthorizerInput"} if s.AuthorizerId == nil { invalidParams.Add(request.NewErrParamRequired("AuthorizerId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A request to change information about the BasePathMapping resource. type UpdateBasePathMappingInput struct { _ struct{} `type:"structure"` // The base path of the BasePathMapping resource to change. // // BasePath is a required field BasePath *string `location:"uri" locationName:"base_path" type:"string" required:"true"` // The domain name of the BasePathMapping resource to change. // // DomainName is a required field DomainName *string `location:"uri" locationName:"domain_name" type:"string" required:"true"` // A list of update operations to be applied to the specified resource and in // the order specified in this list. PatchOperations []*PatchOperation `locationName:"patchOperations" type:"list"` } // String returns the string representation func (s UpdateBasePathMappingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateBasePathMappingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateBasePathMappingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateBasePathMappingInput"} if s.BasePath == nil { invalidParams.Add(request.NewErrParamRequired("BasePath")) } if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A request to change information about an ClientCertificate resource. type UpdateClientCertificateInput struct { _ struct{} `type:"structure"` // The identifier of the ClientCertificate resource to be updated. // // ClientCertificateId is a required field ClientCertificateId *string `location:"uri" locationName:"clientcertificate_id" type:"string" required:"true"` // A list of update operations to be applied to the specified resource and in // the order specified in this list. PatchOperations []*PatchOperation `locationName:"patchOperations" type:"list"` } // String returns the string representation func (s UpdateClientCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateClientCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateClientCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateClientCertificateInput"} if s.ClientCertificateId == nil { invalidParams.Add(request.NewErrParamRequired("ClientCertificateId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Requests Amazon API Gateway to change information about a Deployment resource. type UpdateDeploymentInput struct { _ struct{} `type:"structure"` // The replacement identifier for the Deployment resource to change information // about. // // DeploymentId is a required field DeploymentId *string `location:"uri" locationName:"deployment_id" type:"string" required:"true"` // A list of update operations to be applied to the specified resource and in // the order specified in this list. PatchOperations []*PatchOperation `locationName:"patchOperations" type:"list"` // The replacement identifier of the RestApi resource for the Deployment resource // to change information about. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s UpdateDeploymentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDeploymentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateDeploymentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateDeploymentInput"} if s.DeploymentId == nil { invalidParams.Add(request.NewErrParamRequired("DeploymentId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A request to change information about the DomainName resource. type UpdateDomainNameInput struct { _ struct{} `type:"structure"` // The name of the DomainName resource to be changed. // // DomainName is a required field DomainName *string `location:"uri" locationName:"domain_name" type:"string" required:"true"` // A list of update operations to be applied to the specified resource and in // the order specified in this list. PatchOperations []*PatchOperation `locationName:"patchOperations" type:"list"` } // String returns the string representation func (s UpdateDomainNameInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDomainNameInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateDomainNameInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateDomainNameInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents an update integration request. type UpdateIntegrationInput struct { _ struct{} `type:"structure"` // Represents an update integration request's HTTP method. // // HttpMethod is a required field HttpMethod *string `location:"uri" locationName:"http_method" type:"string" required:"true"` // A list of update operations to be applied to the specified resource and in // the order specified in this list. PatchOperations []*PatchOperation `locationName:"patchOperations" type:"list"` // Represents an update integration request's resource identifier. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // Represents an update integration request's API identifier. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s UpdateIntegrationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateIntegrationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateIntegrationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateIntegrationInput"} if s.HttpMethod == nil { invalidParams.Add(request.NewErrParamRequired("HttpMethod")) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents an update integration response request. type UpdateIntegrationResponseInput struct { _ struct{} `type:"structure"` // Specifies an update integration response request's HTTP method. // // HttpMethod is a required field HttpMethod *string `location:"uri" locationName:"http_method" type:"string" required:"true"` // A list of update operations to be applied to the specified resource and in // the order specified in this list. PatchOperations []*PatchOperation `locationName:"patchOperations" type:"list"` // Specifies an update integration response request's resource identifier. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // Specifies an update integration response request's API identifier. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // Specifies an update integration response request's status code. // // StatusCode is a required field StatusCode *string `location:"uri" locationName:"status_code" type:"string" required:"true"` } // String returns the string representation func (s UpdateIntegrationResponseInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateIntegrationResponseInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateIntegrationResponseInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateIntegrationResponseInput"} if s.HttpMethod == nil { invalidParams.Add(request.NewErrParamRequired("HttpMethod")) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.StatusCode == nil { invalidParams.Add(request.NewErrParamRequired("StatusCode")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to update an existing Method resource. type UpdateMethodInput struct { _ struct{} `type:"structure"` // The HTTP verb of the Method resource. // // HttpMethod is a required field HttpMethod *string `location:"uri" locationName:"http_method" type:"string" required:"true"` // A list of update operations to be applied to the specified resource and in // the order specified in this list. PatchOperations []*PatchOperation `locationName:"patchOperations" type:"list"` // The Resource identifier for the Method resource. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // The RestApi identifier for the Method resource. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s UpdateMethodInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateMethodInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateMethodInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateMethodInput"} if s.HttpMethod == nil { invalidParams.Add(request.NewErrParamRequired("HttpMethod")) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A request to update an existing MethodResponse resource. type UpdateMethodResponseInput struct { _ struct{} `type:"structure"` // The HTTP verb of the Method resource. // // HttpMethod is a required field HttpMethod *string `location:"uri" locationName:"http_method" type:"string" required:"true"` // A list of update operations to be applied to the specified resource and in // the order specified in this list. PatchOperations []*PatchOperation `locationName:"patchOperations" type:"list"` // The Resource identifier for the MethodResponse resource. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // The RestApi identifier for the MethodResponse resource. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // The status code for the MethodResponse resource. // // StatusCode is a required field StatusCode *string `location:"uri" locationName:"status_code" type:"string" required:"true"` } // String returns the string representation func (s UpdateMethodResponseInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateMethodResponseInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateMethodResponseInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateMethodResponseInput"} if s.HttpMethod == nil { invalidParams.Add(request.NewErrParamRequired("HttpMethod")) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.StatusCode == nil { invalidParams.Add(request.NewErrParamRequired("StatusCode")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to update an existing model in an existing RestApi resource. type UpdateModelInput struct { _ struct{} `type:"structure"` // The name of the model to update. // // ModelName is a required field ModelName *string `location:"uri" locationName:"model_name" type:"string" required:"true"` // A list of update operations to be applied to the specified resource and in // the order specified in this list. PatchOperations []*PatchOperation `locationName:"patchOperations" type:"list"` // The RestApi identifier under which the model exists. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s UpdateModelInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateModelInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateModelInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateModelInput"} if s.ModelName == nil { invalidParams.Add(request.NewErrParamRequired("ModelName")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to change information about a Resource resource. type UpdateResourceInput struct { _ struct{} `type:"structure"` // A list of update operations to be applied to the specified resource and in // the order specified in this list. PatchOperations []*PatchOperation `locationName:"patchOperations" type:"list"` // The identifier of the Resource resource. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"resource_id" type:"string" required:"true"` // The RestApi identifier for the Resource resource. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s UpdateResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateResourceInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to update an existing RestApi resource in your collection. type UpdateRestApiInput struct { _ struct{} `type:"structure"` // A list of update operations to be applied to the specified resource and in // the order specified in this list. PatchOperations []*PatchOperation `locationName:"patchOperations" type:"list"` // The ID of the RestApi you want to update. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` } // String returns the string representation func (s UpdateRestApiInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateRestApiInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateRestApiInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateRestApiInput"} if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Requests Amazon API Gateway to change information about a Stage resource. type UpdateStageInput struct { _ struct{} `type:"structure"` // A list of update operations to be applied to the specified resource and in // the order specified in this list. PatchOperations []*PatchOperation `locationName:"patchOperations" type:"list"` // The identifier of the RestApi resource for the Stage resource to change information // about. // // RestApiId is a required field RestApiId *string `location:"uri" locationName:"restapi_id" type:"string" required:"true"` // The name of the Stage resource to change information about. // // StageName is a required field StageName *string `location:"uri" locationName:"stage_name" type:"string" required:"true"` } // String returns the string representation func (s UpdateStageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateStageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateStageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateStageInput"} if s.RestApiId == nil { invalidParams.Add(request.NewErrParamRequired("RestApiId")) } if s.StageName == nil { invalidParams.Add(request.NewErrParamRequired("StageName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The PATCH request to grant a temporary extension to the reamining quota of // a usage plan associated with a specified API key. type UpdateUsageInput struct { _ struct{} `type:"structure"` // The identifier of the API key associated with the usage plan in which a temporary // extension is granted to the remaining quota. // // KeyId is a required field KeyId *string `location:"uri" locationName:"keyId" type:"string" required:"true"` // A list of update operations to be applied to the specified resource and in // the order specified in this list. PatchOperations []*PatchOperation `locationName:"patchOperations" type:"list"` // The Id of the usage plan associated with the usage data. // // UsagePlanId is a required field UsagePlanId *string `location:"uri" locationName:"usageplanId" type:"string" required:"true"` } // String returns the string representation func (s UpdateUsageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateUsageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateUsageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateUsageInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.UsagePlanId == nil { invalidParams.Add(request.NewErrParamRequired("UsagePlanId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The PATCH request to update a usage plan of a given plan Id. type UpdateUsagePlanInput struct { _ struct{} `type:"structure"` // A list of update operations to be applied to the specified resource and in // the order specified in this list. PatchOperations []*PatchOperation `locationName:"patchOperations" type:"list"` // The Id of the to-be-updated usage plan. // // UsagePlanId is a required field UsagePlanId *string `location:"uri" locationName:"usageplanId" type:"string" required:"true"` } // String returns the string representation func (s UpdateUsagePlanInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateUsagePlanInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateUsagePlanInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateUsagePlanInput"} if s.UsagePlanId == nil { invalidParams.Add(request.NewErrParamRequired("UsagePlanId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the usage data of a usage plan. // // Create and Use Usage Plans (http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html), Manage Usage in a Usage Plan (http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-create-usage-plans-with-console.html#api-gateway-usage-plan-manage-usage) type Usage struct { _ struct{} `type:"structure"` // The ending date of the usage data. EndDate *string `locationName:"endDate" type:"string"` // The usage data, as daily logs of used and remaining quotas, over the specified // time interval indexed over the API keys in a usage plan. For example, {..., // "values" : { "{api_key}" : [ [0, 100], [10, 90], [100, 10]]}, where {api_key} // stands for an API key value and the daily log entry is of the format [used // quota, remaining quota]. Items map[string][][]*int64 `locationName:"values" type:"map"` Position *string `locationName:"position" type:"string"` // The starting date of the usage data. StartDate *string `locationName:"startDate" type:"string"` // The plan Id associated with this usage data. UsagePlanId *string `locationName:"usagePlanId" type:"string"` } // String returns the string representation func (s Usage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Usage) GoString() string { return s.String() } // Represents a usage plan than can specify who can assess associated API stages // with specified request limits and quotas. // // In a usage plan, you associate an API by specifying the API's Id and a stage // name of the specified API. You add plan customers by adding API keys to the // plan. // // Create and Use Usage Plans (http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) type UsagePlan struct { _ struct{} `type:"structure"` // The associated API stages of a usage plan. ApiStages []*ApiStage `locationName:"apiStages" type:"list"` // The description of a usage plan. Description *string `locationName:"description" type:"string"` // The identifier of a UsagePlan resource. Id *string `locationName:"id" type:"string"` // The name of a usage plan. Name *string `locationName:"name" type:"string"` // The maximum number of permitted requests per a given unit time interval. Quota *QuotaSettings `locationName:"quota" type:"structure"` // The request throttle limits of a usage plan. Throttle *ThrottleSettings `locationName:"throttle" type:"structure"` } // String returns the string representation func (s UsagePlan) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UsagePlan) GoString() string { return s.String() } // Represents a usage plan key to identify a plan customer. // // To associate an API stage with a selected API key in a usage plan, you must // create a UsagePlanKey resource to represent the selected ApiKey. // // " Create and Use Usage Plans (http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) type UsagePlanKey struct { _ struct{} `type:"structure"` // The Id of a usage plan key. Id *string `locationName:"id" type:"string"` // The name of a usage plan key. Name *string `locationName:"name" type:"string"` // The type of a usage plan key. Currently, the valid key type is API_KEY. Type *string `locationName:"type" type:"string"` // The value of a usage plan key. Value *string `locationName:"value" type:"string"` } // String returns the string representation func (s UsagePlanKey) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UsagePlanKey) GoString() string { return s.String() } const ( // ApiKeysFormatCsv is a ApiKeysFormat enum value ApiKeysFormatCsv = "csv" ) // The authorizer type. the only current value is TOKEN. const ( // AuthorizerTypeToken is a AuthorizerType enum value AuthorizerTypeToken = "TOKEN" // AuthorizerTypeCognitoUserPools is a AuthorizerType enum value AuthorizerTypeCognitoUserPools = "COGNITO_USER_POOLS" ) // Returns the size of the CacheCluster. const ( // CacheClusterSize05 is a CacheClusterSize enum value CacheClusterSize05 = "0.5" // CacheClusterSize16 is a CacheClusterSize enum value CacheClusterSize16 = "1.6" // CacheClusterSize61 is a CacheClusterSize enum value CacheClusterSize61 = "6.1" // CacheClusterSize135 is a CacheClusterSize enum value CacheClusterSize135 = "13.5" // CacheClusterSize284 is a CacheClusterSize enum value CacheClusterSize284 = "28.4" // CacheClusterSize582 is a CacheClusterSize enum value CacheClusterSize582 = "58.2" // CacheClusterSize118 is a CacheClusterSize enum value CacheClusterSize118 = "118" // CacheClusterSize237 is a CacheClusterSize enum value CacheClusterSize237 = "237" ) // Returns the status of the CacheCluster. const ( // CacheClusterStatusCreateInProgress is a CacheClusterStatus enum value CacheClusterStatusCreateInProgress = "CREATE_IN_PROGRESS" // CacheClusterStatusAvailable is a CacheClusterStatus enum value CacheClusterStatusAvailable = "AVAILABLE" // CacheClusterStatusDeleteInProgress is a CacheClusterStatus enum value CacheClusterStatusDeleteInProgress = "DELETE_IN_PROGRESS" // CacheClusterStatusNotAvailable is a CacheClusterStatus enum value CacheClusterStatusNotAvailable = "NOT_AVAILABLE" // CacheClusterStatusFlushInProgress is a CacheClusterStatus enum value CacheClusterStatusFlushInProgress = "FLUSH_IN_PROGRESS" ) // The integration type. The valid value is HTTP for integrating with an HTTP // back end, AWS for any AWS service endpoints, MOCK for testing without actually // invoking the back end, HTTP_PROXY for integrating with the HTTP proxy integration, // or AWS_PROXY for integrating with the Lambda proxy integration type. const ( // IntegrationTypeHttp is a IntegrationType enum value IntegrationTypeHttp = "HTTP" // IntegrationTypeAws is a IntegrationType enum value IntegrationTypeAws = "AWS" // IntegrationTypeMock is a IntegrationType enum value IntegrationTypeMock = "MOCK" // IntegrationTypeHttpProxy is a IntegrationType enum value IntegrationTypeHttpProxy = "HTTP_PROXY" // IntegrationTypeAwsProxy is a IntegrationType enum value IntegrationTypeAwsProxy = "AWS_PROXY" ) const ( // OpAdd is a Op enum value OpAdd = "add" // OpRemove is a Op enum value OpRemove = "remove" // OpReplace is a Op enum value OpReplace = "replace" // OpMove is a Op enum value OpMove = "move" // OpCopy is a Op enum value OpCopy = "copy" // OpTest is a Op enum value OpTest = "test" ) const ( // PutModeMerge is a PutMode enum value PutModeMerge = "merge" // PutModeOverwrite is a PutMode enum value PutModeOverwrite = "overwrite" ) const ( // QuotaPeriodTypeDay is a QuotaPeriodType enum value QuotaPeriodTypeDay = "DAY" // QuotaPeriodTypeWeek is a QuotaPeriodType enum value QuotaPeriodTypeWeek = "WEEK" // QuotaPeriodTypeMonth is a QuotaPeriodType enum value QuotaPeriodTypeMonth = "MONTH" ) const ( // UnauthorizedCacheControlHeaderStrategyFailWith403 is a UnauthorizedCacheControlHeaderStrategy enum value UnauthorizedCacheControlHeaderStrategyFailWith403 = "FAIL_WITH_403" // UnauthorizedCacheControlHeaderStrategySucceedWithResponseHeader is a UnauthorizedCacheControlHeaderStrategy enum value UnauthorizedCacheControlHeaderStrategySucceedWithResponseHeader = "SUCCEED_WITH_RESPONSE_HEADER" // UnauthorizedCacheControlHeaderStrategySucceedWithoutResponseHeader is a UnauthorizedCacheControlHeaderStrategy enum value UnauthorizedCacheControlHeaderStrategySucceedWithoutResponseHeader = "SUCCEED_WITHOUT_RESPONSE_HEADER" ) aws-sdk-go-1.4.22/service/apigateway/apigatewayiface/000077500000000000000000000000001300374646400225015ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/apigateway/apigatewayiface/interface.go000066400000000000000000000502461300374646400247770ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package apigatewayiface provides an interface to enable mocking the Amazon API Gateway service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package apigatewayiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/apigateway" ) // APIGatewayAPI provides an interface to enable mocking the // apigateway.APIGateway service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon API Gateway. // func myFunc(svc apigatewayiface.APIGatewayAPI) bool { // // Make svc.CreateApiKey request // } // // func main() { // sess := session.New() // svc := apigateway.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockAPIGatewayClient struct { // apigatewayiface.APIGatewayAPI // } // func (m *mockAPIGatewayClient) CreateApiKey(input *apigateway.CreateApiKeyInput) (*apigateway.ApiKey, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockAPIGatewayClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type APIGatewayAPI interface { CreateApiKeyRequest(*apigateway.CreateApiKeyInput) (*request.Request, *apigateway.ApiKey) CreateApiKey(*apigateway.CreateApiKeyInput) (*apigateway.ApiKey, error) CreateAuthorizerRequest(*apigateway.CreateAuthorizerInput) (*request.Request, *apigateway.Authorizer) CreateAuthorizer(*apigateway.CreateAuthorizerInput) (*apigateway.Authorizer, error) CreateBasePathMappingRequest(*apigateway.CreateBasePathMappingInput) (*request.Request, *apigateway.BasePathMapping) CreateBasePathMapping(*apigateway.CreateBasePathMappingInput) (*apigateway.BasePathMapping, error) CreateDeploymentRequest(*apigateway.CreateDeploymentInput) (*request.Request, *apigateway.Deployment) CreateDeployment(*apigateway.CreateDeploymentInput) (*apigateway.Deployment, error) CreateDomainNameRequest(*apigateway.CreateDomainNameInput) (*request.Request, *apigateway.DomainName) CreateDomainName(*apigateway.CreateDomainNameInput) (*apigateway.DomainName, error) CreateModelRequest(*apigateway.CreateModelInput) (*request.Request, *apigateway.Model) CreateModel(*apigateway.CreateModelInput) (*apigateway.Model, error) CreateResourceRequest(*apigateway.CreateResourceInput) (*request.Request, *apigateway.Resource) CreateResource(*apigateway.CreateResourceInput) (*apigateway.Resource, error) CreateRestApiRequest(*apigateway.CreateRestApiInput) (*request.Request, *apigateway.RestApi) CreateRestApi(*apigateway.CreateRestApiInput) (*apigateway.RestApi, error) CreateStageRequest(*apigateway.CreateStageInput) (*request.Request, *apigateway.Stage) CreateStage(*apigateway.CreateStageInput) (*apigateway.Stage, error) CreateUsagePlanRequest(*apigateway.CreateUsagePlanInput) (*request.Request, *apigateway.UsagePlan) CreateUsagePlan(*apigateway.CreateUsagePlanInput) (*apigateway.UsagePlan, error) CreateUsagePlanKeyRequest(*apigateway.CreateUsagePlanKeyInput) (*request.Request, *apigateway.UsagePlanKey) CreateUsagePlanKey(*apigateway.CreateUsagePlanKeyInput) (*apigateway.UsagePlanKey, error) DeleteApiKeyRequest(*apigateway.DeleteApiKeyInput) (*request.Request, *apigateway.DeleteApiKeyOutput) DeleteApiKey(*apigateway.DeleteApiKeyInput) (*apigateway.DeleteApiKeyOutput, error) DeleteAuthorizerRequest(*apigateway.DeleteAuthorizerInput) (*request.Request, *apigateway.DeleteAuthorizerOutput) DeleteAuthorizer(*apigateway.DeleteAuthorizerInput) (*apigateway.DeleteAuthorizerOutput, error) DeleteBasePathMappingRequest(*apigateway.DeleteBasePathMappingInput) (*request.Request, *apigateway.DeleteBasePathMappingOutput) DeleteBasePathMapping(*apigateway.DeleteBasePathMappingInput) (*apigateway.DeleteBasePathMappingOutput, error) DeleteClientCertificateRequest(*apigateway.DeleteClientCertificateInput) (*request.Request, *apigateway.DeleteClientCertificateOutput) DeleteClientCertificate(*apigateway.DeleteClientCertificateInput) (*apigateway.DeleteClientCertificateOutput, error) DeleteDeploymentRequest(*apigateway.DeleteDeploymentInput) (*request.Request, *apigateway.DeleteDeploymentOutput) DeleteDeployment(*apigateway.DeleteDeploymentInput) (*apigateway.DeleteDeploymentOutput, error) DeleteDomainNameRequest(*apigateway.DeleteDomainNameInput) (*request.Request, *apigateway.DeleteDomainNameOutput) DeleteDomainName(*apigateway.DeleteDomainNameInput) (*apigateway.DeleteDomainNameOutput, error) DeleteIntegrationRequest(*apigateway.DeleteIntegrationInput) (*request.Request, *apigateway.DeleteIntegrationOutput) DeleteIntegration(*apigateway.DeleteIntegrationInput) (*apigateway.DeleteIntegrationOutput, error) DeleteIntegrationResponseRequest(*apigateway.DeleteIntegrationResponseInput) (*request.Request, *apigateway.DeleteIntegrationResponseOutput) DeleteIntegrationResponse(*apigateway.DeleteIntegrationResponseInput) (*apigateway.DeleteIntegrationResponseOutput, error) DeleteMethodRequest(*apigateway.DeleteMethodInput) (*request.Request, *apigateway.DeleteMethodOutput) DeleteMethod(*apigateway.DeleteMethodInput) (*apigateway.DeleteMethodOutput, error) DeleteMethodResponseRequest(*apigateway.DeleteMethodResponseInput) (*request.Request, *apigateway.DeleteMethodResponseOutput) DeleteMethodResponse(*apigateway.DeleteMethodResponseInput) (*apigateway.DeleteMethodResponseOutput, error) DeleteModelRequest(*apigateway.DeleteModelInput) (*request.Request, *apigateway.DeleteModelOutput) DeleteModel(*apigateway.DeleteModelInput) (*apigateway.DeleteModelOutput, error) DeleteResourceRequest(*apigateway.DeleteResourceInput) (*request.Request, *apigateway.DeleteResourceOutput) DeleteResource(*apigateway.DeleteResourceInput) (*apigateway.DeleteResourceOutput, error) DeleteRestApiRequest(*apigateway.DeleteRestApiInput) (*request.Request, *apigateway.DeleteRestApiOutput) DeleteRestApi(*apigateway.DeleteRestApiInput) (*apigateway.DeleteRestApiOutput, error) DeleteStageRequest(*apigateway.DeleteStageInput) (*request.Request, *apigateway.DeleteStageOutput) DeleteStage(*apigateway.DeleteStageInput) (*apigateway.DeleteStageOutput, error) DeleteUsagePlanRequest(*apigateway.DeleteUsagePlanInput) (*request.Request, *apigateway.DeleteUsagePlanOutput) DeleteUsagePlan(*apigateway.DeleteUsagePlanInput) (*apigateway.DeleteUsagePlanOutput, error) DeleteUsagePlanKeyRequest(*apigateway.DeleteUsagePlanKeyInput) (*request.Request, *apigateway.DeleteUsagePlanKeyOutput) DeleteUsagePlanKey(*apigateway.DeleteUsagePlanKeyInput) (*apigateway.DeleteUsagePlanKeyOutput, error) FlushStageAuthorizersCacheRequest(*apigateway.FlushStageAuthorizersCacheInput) (*request.Request, *apigateway.FlushStageAuthorizersCacheOutput) FlushStageAuthorizersCache(*apigateway.FlushStageAuthorizersCacheInput) (*apigateway.FlushStageAuthorizersCacheOutput, error) FlushStageCacheRequest(*apigateway.FlushStageCacheInput) (*request.Request, *apigateway.FlushStageCacheOutput) FlushStageCache(*apigateway.FlushStageCacheInput) (*apigateway.FlushStageCacheOutput, error) GenerateClientCertificateRequest(*apigateway.GenerateClientCertificateInput) (*request.Request, *apigateway.ClientCertificate) GenerateClientCertificate(*apigateway.GenerateClientCertificateInput) (*apigateway.ClientCertificate, error) GetAccountRequest(*apigateway.GetAccountInput) (*request.Request, *apigateway.Account) GetAccount(*apigateway.GetAccountInput) (*apigateway.Account, error) GetApiKeyRequest(*apigateway.GetApiKeyInput) (*request.Request, *apigateway.ApiKey) GetApiKey(*apigateway.GetApiKeyInput) (*apigateway.ApiKey, error) GetApiKeysRequest(*apigateway.GetApiKeysInput) (*request.Request, *apigateway.GetApiKeysOutput) GetApiKeys(*apigateway.GetApiKeysInput) (*apigateway.GetApiKeysOutput, error) GetApiKeysPages(*apigateway.GetApiKeysInput, func(*apigateway.GetApiKeysOutput, bool) bool) error GetAuthorizerRequest(*apigateway.GetAuthorizerInput) (*request.Request, *apigateway.Authorizer) GetAuthorizer(*apigateway.GetAuthorizerInput) (*apigateway.Authorizer, error) GetAuthorizersRequest(*apigateway.GetAuthorizersInput) (*request.Request, *apigateway.GetAuthorizersOutput) GetAuthorizers(*apigateway.GetAuthorizersInput) (*apigateway.GetAuthorizersOutput, error) GetBasePathMappingRequest(*apigateway.GetBasePathMappingInput) (*request.Request, *apigateway.BasePathMapping) GetBasePathMapping(*apigateway.GetBasePathMappingInput) (*apigateway.BasePathMapping, error) GetBasePathMappingsRequest(*apigateway.GetBasePathMappingsInput) (*request.Request, *apigateway.GetBasePathMappingsOutput) GetBasePathMappings(*apigateway.GetBasePathMappingsInput) (*apigateway.GetBasePathMappingsOutput, error) GetBasePathMappingsPages(*apigateway.GetBasePathMappingsInput, func(*apigateway.GetBasePathMappingsOutput, bool) bool) error GetClientCertificateRequest(*apigateway.GetClientCertificateInput) (*request.Request, *apigateway.ClientCertificate) GetClientCertificate(*apigateway.GetClientCertificateInput) (*apigateway.ClientCertificate, error) GetClientCertificatesRequest(*apigateway.GetClientCertificatesInput) (*request.Request, *apigateway.GetClientCertificatesOutput) GetClientCertificates(*apigateway.GetClientCertificatesInput) (*apigateway.GetClientCertificatesOutput, error) GetClientCertificatesPages(*apigateway.GetClientCertificatesInput, func(*apigateway.GetClientCertificatesOutput, bool) bool) error GetDeploymentRequest(*apigateway.GetDeploymentInput) (*request.Request, *apigateway.Deployment) GetDeployment(*apigateway.GetDeploymentInput) (*apigateway.Deployment, error) GetDeploymentsRequest(*apigateway.GetDeploymentsInput) (*request.Request, *apigateway.GetDeploymentsOutput) GetDeployments(*apigateway.GetDeploymentsInput) (*apigateway.GetDeploymentsOutput, error) GetDeploymentsPages(*apigateway.GetDeploymentsInput, func(*apigateway.GetDeploymentsOutput, bool) bool) error GetDomainNameRequest(*apigateway.GetDomainNameInput) (*request.Request, *apigateway.DomainName) GetDomainName(*apigateway.GetDomainNameInput) (*apigateway.DomainName, error) GetDomainNamesRequest(*apigateway.GetDomainNamesInput) (*request.Request, *apigateway.GetDomainNamesOutput) GetDomainNames(*apigateway.GetDomainNamesInput) (*apigateway.GetDomainNamesOutput, error) GetDomainNamesPages(*apigateway.GetDomainNamesInput, func(*apigateway.GetDomainNamesOutput, bool) bool) error GetExportRequest(*apigateway.GetExportInput) (*request.Request, *apigateway.GetExportOutput) GetExport(*apigateway.GetExportInput) (*apigateway.GetExportOutput, error) GetIntegrationRequest(*apigateway.GetIntegrationInput) (*request.Request, *apigateway.Integration) GetIntegration(*apigateway.GetIntegrationInput) (*apigateway.Integration, error) GetIntegrationResponseRequest(*apigateway.GetIntegrationResponseInput) (*request.Request, *apigateway.IntegrationResponse) GetIntegrationResponse(*apigateway.GetIntegrationResponseInput) (*apigateway.IntegrationResponse, error) GetMethodRequest(*apigateway.GetMethodInput) (*request.Request, *apigateway.Method) GetMethod(*apigateway.GetMethodInput) (*apigateway.Method, error) GetMethodResponseRequest(*apigateway.GetMethodResponseInput) (*request.Request, *apigateway.MethodResponse) GetMethodResponse(*apigateway.GetMethodResponseInput) (*apigateway.MethodResponse, error) GetModelRequest(*apigateway.GetModelInput) (*request.Request, *apigateway.Model) GetModel(*apigateway.GetModelInput) (*apigateway.Model, error) GetModelTemplateRequest(*apigateway.GetModelTemplateInput) (*request.Request, *apigateway.GetModelTemplateOutput) GetModelTemplate(*apigateway.GetModelTemplateInput) (*apigateway.GetModelTemplateOutput, error) GetModelsRequest(*apigateway.GetModelsInput) (*request.Request, *apigateway.GetModelsOutput) GetModels(*apigateway.GetModelsInput) (*apigateway.GetModelsOutput, error) GetModelsPages(*apigateway.GetModelsInput, func(*apigateway.GetModelsOutput, bool) bool) error GetResourceRequest(*apigateway.GetResourceInput) (*request.Request, *apigateway.Resource) GetResource(*apigateway.GetResourceInput) (*apigateway.Resource, error) GetResourcesRequest(*apigateway.GetResourcesInput) (*request.Request, *apigateway.GetResourcesOutput) GetResources(*apigateway.GetResourcesInput) (*apigateway.GetResourcesOutput, error) GetResourcesPages(*apigateway.GetResourcesInput, func(*apigateway.GetResourcesOutput, bool) bool) error GetRestApiRequest(*apigateway.GetRestApiInput) (*request.Request, *apigateway.RestApi) GetRestApi(*apigateway.GetRestApiInput) (*apigateway.RestApi, error) GetRestApisRequest(*apigateway.GetRestApisInput) (*request.Request, *apigateway.GetRestApisOutput) GetRestApis(*apigateway.GetRestApisInput) (*apigateway.GetRestApisOutput, error) GetRestApisPages(*apigateway.GetRestApisInput, func(*apigateway.GetRestApisOutput, bool) bool) error GetSdkRequest(*apigateway.GetSdkInput) (*request.Request, *apigateway.GetSdkOutput) GetSdk(*apigateway.GetSdkInput) (*apigateway.GetSdkOutput, error) GetStageRequest(*apigateway.GetStageInput) (*request.Request, *apigateway.Stage) GetStage(*apigateway.GetStageInput) (*apigateway.Stage, error) GetStagesRequest(*apigateway.GetStagesInput) (*request.Request, *apigateway.GetStagesOutput) GetStages(*apigateway.GetStagesInput) (*apigateway.GetStagesOutput, error) GetUsageRequest(*apigateway.GetUsageInput) (*request.Request, *apigateway.Usage) GetUsage(*apigateway.GetUsageInput) (*apigateway.Usage, error) GetUsagePages(*apigateway.GetUsageInput, func(*apigateway.Usage, bool) bool) error GetUsagePlanRequest(*apigateway.GetUsagePlanInput) (*request.Request, *apigateway.UsagePlan) GetUsagePlan(*apigateway.GetUsagePlanInput) (*apigateway.UsagePlan, error) GetUsagePlanKeyRequest(*apigateway.GetUsagePlanKeyInput) (*request.Request, *apigateway.UsagePlanKey) GetUsagePlanKey(*apigateway.GetUsagePlanKeyInput) (*apigateway.UsagePlanKey, error) GetUsagePlanKeysRequest(*apigateway.GetUsagePlanKeysInput) (*request.Request, *apigateway.GetUsagePlanKeysOutput) GetUsagePlanKeys(*apigateway.GetUsagePlanKeysInput) (*apigateway.GetUsagePlanKeysOutput, error) GetUsagePlanKeysPages(*apigateway.GetUsagePlanKeysInput, func(*apigateway.GetUsagePlanKeysOutput, bool) bool) error GetUsagePlansRequest(*apigateway.GetUsagePlansInput) (*request.Request, *apigateway.GetUsagePlansOutput) GetUsagePlans(*apigateway.GetUsagePlansInput) (*apigateway.GetUsagePlansOutput, error) GetUsagePlansPages(*apigateway.GetUsagePlansInput, func(*apigateway.GetUsagePlansOutput, bool) bool) error ImportApiKeysRequest(*apigateway.ImportApiKeysInput) (*request.Request, *apigateway.ImportApiKeysOutput) ImportApiKeys(*apigateway.ImportApiKeysInput) (*apigateway.ImportApiKeysOutput, error) ImportRestApiRequest(*apigateway.ImportRestApiInput) (*request.Request, *apigateway.RestApi) ImportRestApi(*apigateway.ImportRestApiInput) (*apigateway.RestApi, error) PutIntegrationRequest(*apigateway.PutIntegrationInput) (*request.Request, *apigateway.Integration) PutIntegration(*apigateway.PutIntegrationInput) (*apigateway.Integration, error) PutIntegrationResponseRequest(*apigateway.PutIntegrationResponseInput) (*request.Request, *apigateway.IntegrationResponse) PutIntegrationResponse(*apigateway.PutIntegrationResponseInput) (*apigateway.IntegrationResponse, error) PutMethodRequest(*apigateway.PutMethodInput) (*request.Request, *apigateway.Method) PutMethod(*apigateway.PutMethodInput) (*apigateway.Method, error) PutMethodResponseRequest(*apigateway.PutMethodResponseInput) (*request.Request, *apigateway.MethodResponse) PutMethodResponse(*apigateway.PutMethodResponseInput) (*apigateway.MethodResponse, error) PutRestApiRequest(*apigateway.PutRestApiInput) (*request.Request, *apigateway.RestApi) PutRestApi(*apigateway.PutRestApiInput) (*apigateway.RestApi, error) TestInvokeAuthorizerRequest(*apigateway.TestInvokeAuthorizerInput) (*request.Request, *apigateway.TestInvokeAuthorizerOutput) TestInvokeAuthorizer(*apigateway.TestInvokeAuthorizerInput) (*apigateway.TestInvokeAuthorizerOutput, error) TestInvokeMethodRequest(*apigateway.TestInvokeMethodInput) (*request.Request, *apigateway.TestInvokeMethodOutput) TestInvokeMethod(*apigateway.TestInvokeMethodInput) (*apigateway.TestInvokeMethodOutput, error) UpdateAccountRequest(*apigateway.UpdateAccountInput) (*request.Request, *apigateway.Account) UpdateAccount(*apigateway.UpdateAccountInput) (*apigateway.Account, error) UpdateApiKeyRequest(*apigateway.UpdateApiKeyInput) (*request.Request, *apigateway.ApiKey) UpdateApiKey(*apigateway.UpdateApiKeyInput) (*apigateway.ApiKey, error) UpdateAuthorizerRequest(*apigateway.UpdateAuthorizerInput) (*request.Request, *apigateway.Authorizer) UpdateAuthorizer(*apigateway.UpdateAuthorizerInput) (*apigateway.Authorizer, error) UpdateBasePathMappingRequest(*apigateway.UpdateBasePathMappingInput) (*request.Request, *apigateway.BasePathMapping) UpdateBasePathMapping(*apigateway.UpdateBasePathMappingInput) (*apigateway.BasePathMapping, error) UpdateClientCertificateRequest(*apigateway.UpdateClientCertificateInput) (*request.Request, *apigateway.ClientCertificate) UpdateClientCertificate(*apigateway.UpdateClientCertificateInput) (*apigateway.ClientCertificate, error) UpdateDeploymentRequest(*apigateway.UpdateDeploymentInput) (*request.Request, *apigateway.Deployment) UpdateDeployment(*apigateway.UpdateDeploymentInput) (*apigateway.Deployment, error) UpdateDomainNameRequest(*apigateway.UpdateDomainNameInput) (*request.Request, *apigateway.DomainName) UpdateDomainName(*apigateway.UpdateDomainNameInput) (*apigateway.DomainName, error) UpdateIntegrationRequest(*apigateway.UpdateIntegrationInput) (*request.Request, *apigateway.Integration) UpdateIntegration(*apigateway.UpdateIntegrationInput) (*apigateway.Integration, error) UpdateIntegrationResponseRequest(*apigateway.UpdateIntegrationResponseInput) (*request.Request, *apigateway.IntegrationResponse) UpdateIntegrationResponse(*apigateway.UpdateIntegrationResponseInput) (*apigateway.IntegrationResponse, error) UpdateMethodRequest(*apigateway.UpdateMethodInput) (*request.Request, *apigateway.Method) UpdateMethod(*apigateway.UpdateMethodInput) (*apigateway.Method, error) UpdateMethodResponseRequest(*apigateway.UpdateMethodResponseInput) (*request.Request, *apigateway.MethodResponse) UpdateMethodResponse(*apigateway.UpdateMethodResponseInput) (*apigateway.MethodResponse, error) UpdateModelRequest(*apigateway.UpdateModelInput) (*request.Request, *apigateway.Model) UpdateModel(*apigateway.UpdateModelInput) (*apigateway.Model, error) UpdateResourceRequest(*apigateway.UpdateResourceInput) (*request.Request, *apigateway.Resource) UpdateResource(*apigateway.UpdateResourceInput) (*apigateway.Resource, error) UpdateRestApiRequest(*apigateway.UpdateRestApiInput) (*request.Request, *apigateway.RestApi) UpdateRestApi(*apigateway.UpdateRestApiInput) (*apigateway.RestApi, error) UpdateStageRequest(*apigateway.UpdateStageInput) (*request.Request, *apigateway.Stage) UpdateStage(*apigateway.UpdateStageInput) (*apigateway.Stage, error) UpdateUsageRequest(*apigateway.UpdateUsageInput) (*request.Request, *apigateway.Usage) UpdateUsage(*apigateway.UpdateUsageInput) (*apigateway.Usage, error) UpdateUsagePlanRequest(*apigateway.UpdateUsagePlanInput) (*request.Request, *apigateway.UsagePlan) UpdateUsagePlan(*apigateway.UpdateUsagePlanInput) (*apigateway.UsagePlan, error) } var _ APIGatewayAPI = (*apigateway.APIGateway)(nil) aws-sdk-go-1.4.22/service/apigateway/customization.go000066400000000000000000000004411300374646400226140ustar00rootroot00000000000000package apigateway import ( "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/request" ) func init() { initClient = func(c *client.Client) { c.Handlers.Build.PushBack(func(r *request.Request) { r.HTTPRequest.Header.Add("Accept", "application/json") }) } } aws-sdk-go-1.4.22/service/apigateway/examples_test.go000066400000000000000000001706041300374646400225720ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package apigateway_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/apigateway" ) var _ time.Duration var _ bytes.Buffer func ExampleAPIGateway_CreateApiKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.CreateApiKeyInput{ Description: aws.String("String"), Enabled: aws.Bool(true), GenerateDistinctId: aws.Bool(true), Name: aws.String("String"), StageKeys: []*apigateway.StageKey{ { // Required RestApiId: aws.String("String"), StageName: aws.String("String"), }, // More values... }, Value: aws.String("String"), } resp, err := svc.CreateApiKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_CreateAuthorizer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.CreateAuthorizerInput{ IdentitySource: aws.String("String"), // Required Name: aws.String("String"), // Required RestApiId: aws.String("String"), // Required Type: aws.String("AuthorizerType"), // Required AuthType: aws.String("String"), AuthorizerCredentials: aws.String("String"), AuthorizerResultTtlInSeconds: aws.Int64(1), AuthorizerUri: aws.String("String"), IdentityValidationExpression: aws.String("String"), ProviderARNs: []*string{ aws.String("ProviderARN"), // Required // More values... }, } resp, err := svc.CreateAuthorizer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_CreateBasePathMapping() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.CreateBasePathMappingInput{ DomainName: aws.String("String"), // Required RestApiId: aws.String("String"), // Required BasePath: aws.String("String"), Stage: aws.String("String"), } resp, err := svc.CreateBasePathMapping(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_CreateDeployment() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.CreateDeploymentInput{ RestApiId: aws.String("String"), // Required StageName: aws.String("String"), // Required CacheClusterEnabled: aws.Bool(true), CacheClusterSize: aws.String("CacheClusterSize"), Description: aws.String("String"), StageDescription: aws.String("String"), Variables: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, } resp, err := svc.CreateDeployment(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_CreateDomainName() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.CreateDomainNameInput{ CertificateBody: aws.String("String"), // Required CertificateChain: aws.String("String"), // Required CertificateName: aws.String("String"), // Required CertificatePrivateKey: aws.String("String"), // Required DomainName: aws.String("String"), // Required } resp, err := svc.CreateDomainName(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_CreateModel() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.CreateModelInput{ ContentType: aws.String("String"), // Required Name: aws.String("String"), // Required RestApiId: aws.String("String"), // Required Description: aws.String("String"), Schema: aws.String("String"), } resp, err := svc.CreateModel(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_CreateResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.CreateResourceInput{ ParentId: aws.String("String"), // Required PathPart: aws.String("String"), // Required RestApiId: aws.String("String"), // Required } resp, err := svc.CreateResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_CreateRestApi() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.CreateRestApiInput{ Name: aws.String("String"), // Required CloneFrom: aws.String("String"), Description: aws.String("String"), } resp, err := svc.CreateRestApi(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_CreateStage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.CreateStageInput{ DeploymentId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required StageName: aws.String("String"), // Required CacheClusterEnabled: aws.Bool(true), CacheClusterSize: aws.String("CacheClusterSize"), Description: aws.String("String"), Variables: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, } resp, err := svc.CreateStage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_CreateUsagePlan() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.CreateUsagePlanInput{ Name: aws.String("String"), // Required ApiStages: []*apigateway.ApiStage{ { // Required ApiId: aws.String("String"), Stage: aws.String("String"), }, // More values... }, Description: aws.String("String"), Quota: &apigateway.QuotaSettings{ Limit: aws.Int64(1), Offset: aws.Int64(1), Period: aws.String("QuotaPeriodType"), }, Throttle: &apigateway.ThrottleSettings{ BurstLimit: aws.Int64(1), RateLimit: aws.Float64(1.0), }, } resp, err := svc.CreateUsagePlan(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_CreateUsagePlanKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.CreateUsagePlanKeyInput{ KeyId: aws.String("String"), // Required KeyType: aws.String("String"), // Required UsagePlanId: aws.String("String"), // Required } resp, err := svc.CreateUsagePlanKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_DeleteApiKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.DeleteApiKeyInput{ ApiKey: aws.String("String"), // Required } resp, err := svc.DeleteApiKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_DeleteAuthorizer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.DeleteAuthorizerInput{ AuthorizerId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required } resp, err := svc.DeleteAuthorizer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_DeleteBasePathMapping() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.DeleteBasePathMappingInput{ BasePath: aws.String("String"), // Required DomainName: aws.String("String"), // Required } resp, err := svc.DeleteBasePathMapping(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_DeleteClientCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.DeleteClientCertificateInput{ ClientCertificateId: aws.String("String"), // Required } resp, err := svc.DeleteClientCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_DeleteDeployment() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.DeleteDeploymentInput{ DeploymentId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required } resp, err := svc.DeleteDeployment(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_DeleteDomainName() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.DeleteDomainNameInput{ DomainName: aws.String("String"), // Required } resp, err := svc.DeleteDomainName(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_DeleteIntegration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.DeleteIntegrationInput{ HttpMethod: aws.String("String"), // Required ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required } resp, err := svc.DeleteIntegration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_DeleteIntegrationResponse() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.DeleteIntegrationResponseInput{ HttpMethod: aws.String("String"), // Required ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required StatusCode: aws.String("StatusCode"), // Required } resp, err := svc.DeleteIntegrationResponse(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_DeleteMethod() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.DeleteMethodInput{ HttpMethod: aws.String("String"), // Required ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required } resp, err := svc.DeleteMethod(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_DeleteMethodResponse() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.DeleteMethodResponseInput{ HttpMethod: aws.String("String"), // Required ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required StatusCode: aws.String("StatusCode"), // Required } resp, err := svc.DeleteMethodResponse(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_DeleteModel() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.DeleteModelInput{ ModelName: aws.String("String"), // Required RestApiId: aws.String("String"), // Required } resp, err := svc.DeleteModel(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_DeleteResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.DeleteResourceInput{ ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required } resp, err := svc.DeleteResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_DeleteRestApi() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.DeleteRestApiInput{ RestApiId: aws.String("String"), // Required } resp, err := svc.DeleteRestApi(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_DeleteStage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.DeleteStageInput{ RestApiId: aws.String("String"), // Required StageName: aws.String("String"), // Required } resp, err := svc.DeleteStage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_DeleteUsagePlan() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.DeleteUsagePlanInput{ UsagePlanId: aws.String("String"), // Required } resp, err := svc.DeleteUsagePlan(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_DeleteUsagePlanKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.DeleteUsagePlanKeyInput{ KeyId: aws.String("String"), // Required UsagePlanId: aws.String("String"), // Required } resp, err := svc.DeleteUsagePlanKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_FlushStageAuthorizersCache() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.FlushStageAuthorizersCacheInput{ RestApiId: aws.String("String"), // Required StageName: aws.String("String"), // Required } resp, err := svc.FlushStageAuthorizersCache(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_FlushStageCache() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.FlushStageCacheInput{ RestApiId: aws.String("String"), // Required StageName: aws.String("String"), // Required } resp, err := svc.FlushStageCache(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GenerateClientCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GenerateClientCertificateInput{ Description: aws.String("String"), } resp, err := svc.GenerateClientCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetAccount() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) var params *apigateway.GetAccountInput resp, err := svc.GetAccount(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetApiKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetApiKeyInput{ ApiKey: aws.String("String"), // Required IncludeValue: aws.Bool(true), } resp, err := svc.GetApiKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetApiKeys() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetApiKeysInput{ IncludeValues: aws.Bool(true), Limit: aws.Int64(1), NameQuery: aws.String("String"), Position: aws.String("String"), } resp, err := svc.GetApiKeys(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetAuthorizer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetAuthorizerInput{ AuthorizerId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required } resp, err := svc.GetAuthorizer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetAuthorizers() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetAuthorizersInput{ RestApiId: aws.String("String"), // Required Limit: aws.Int64(1), Position: aws.String("String"), } resp, err := svc.GetAuthorizers(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetBasePathMapping() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetBasePathMappingInput{ BasePath: aws.String("String"), // Required DomainName: aws.String("String"), // Required } resp, err := svc.GetBasePathMapping(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetBasePathMappings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetBasePathMappingsInput{ DomainName: aws.String("String"), // Required Limit: aws.Int64(1), Position: aws.String("String"), } resp, err := svc.GetBasePathMappings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetClientCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetClientCertificateInput{ ClientCertificateId: aws.String("String"), // Required } resp, err := svc.GetClientCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetClientCertificates() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetClientCertificatesInput{ Limit: aws.Int64(1), Position: aws.String("String"), } resp, err := svc.GetClientCertificates(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetDeployment() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetDeploymentInput{ DeploymentId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required } resp, err := svc.GetDeployment(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetDeployments() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetDeploymentsInput{ RestApiId: aws.String("String"), // Required Limit: aws.Int64(1), Position: aws.String("String"), } resp, err := svc.GetDeployments(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetDomainName() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetDomainNameInput{ DomainName: aws.String("String"), // Required } resp, err := svc.GetDomainName(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetDomainNames() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetDomainNamesInput{ Limit: aws.Int64(1), Position: aws.String("String"), } resp, err := svc.GetDomainNames(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetExport() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetExportInput{ ExportType: aws.String("String"), // Required RestApiId: aws.String("String"), // Required StageName: aws.String("String"), // Required Accepts: aws.String("String"), Parameters: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, } resp, err := svc.GetExport(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetIntegration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetIntegrationInput{ HttpMethod: aws.String("String"), // Required ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required } resp, err := svc.GetIntegration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetIntegrationResponse() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetIntegrationResponseInput{ HttpMethod: aws.String("String"), // Required ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required StatusCode: aws.String("StatusCode"), // Required } resp, err := svc.GetIntegrationResponse(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetMethod() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetMethodInput{ HttpMethod: aws.String("String"), // Required ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required } resp, err := svc.GetMethod(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetMethodResponse() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetMethodResponseInput{ HttpMethod: aws.String("String"), // Required ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required StatusCode: aws.String("StatusCode"), // Required } resp, err := svc.GetMethodResponse(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetModel() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetModelInput{ ModelName: aws.String("String"), // Required RestApiId: aws.String("String"), // Required Flatten: aws.Bool(true), } resp, err := svc.GetModel(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetModelTemplate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetModelTemplateInput{ ModelName: aws.String("String"), // Required RestApiId: aws.String("String"), // Required } resp, err := svc.GetModelTemplate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetModels() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetModelsInput{ RestApiId: aws.String("String"), // Required Limit: aws.Int64(1), Position: aws.String("String"), } resp, err := svc.GetModels(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetResourceInput{ ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required } resp, err := svc.GetResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetResources() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetResourcesInput{ RestApiId: aws.String("String"), // Required Limit: aws.Int64(1), Position: aws.String("String"), } resp, err := svc.GetResources(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetRestApi() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetRestApiInput{ RestApiId: aws.String("String"), // Required } resp, err := svc.GetRestApi(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetRestApis() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetRestApisInput{ Limit: aws.Int64(1), Position: aws.String("String"), } resp, err := svc.GetRestApis(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetSdk() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetSdkInput{ RestApiId: aws.String("String"), // Required SdkType: aws.String("String"), // Required StageName: aws.String("String"), // Required Parameters: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, } resp, err := svc.GetSdk(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetStage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetStageInput{ RestApiId: aws.String("String"), // Required StageName: aws.String("String"), // Required } resp, err := svc.GetStage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetStages() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetStagesInput{ RestApiId: aws.String("String"), // Required DeploymentId: aws.String("String"), } resp, err := svc.GetStages(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetUsage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetUsageInput{ EndDate: aws.String("String"), // Required StartDate: aws.String("String"), // Required UsagePlanId: aws.String("String"), // Required KeyId: aws.String("String"), Limit: aws.Int64(1), Position: aws.String("String"), } resp, err := svc.GetUsage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetUsagePlan() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetUsagePlanInput{ UsagePlanId: aws.String("String"), // Required } resp, err := svc.GetUsagePlan(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetUsagePlanKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetUsagePlanKeyInput{ KeyId: aws.String("String"), // Required UsagePlanId: aws.String("String"), // Required } resp, err := svc.GetUsagePlanKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetUsagePlanKeys() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetUsagePlanKeysInput{ UsagePlanId: aws.String("String"), // Required Limit: aws.Int64(1), NameQuery: aws.String("String"), Position: aws.String("String"), } resp, err := svc.GetUsagePlanKeys(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_GetUsagePlans() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.GetUsagePlansInput{ KeyId: aws.String("String"), Limit: aws.Int64(1), Position: aws.String("String"), } resp, err := svc.GetUsagePlans(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_ImportApiKeys() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.ImportApiKeysInput{ Body: []byte("PAYLOAD"), // Required Format: aws.String("ApiKeysFormat"), // Required FailOnWarnings: aws.Bool(true), } resp, err := svc.ImportApiKeys(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_ImportRestApi() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.ImportRestApiInput{ Body: []byte("PAYLOAD"), // Required FailOnWarnings: aws.Bool(true), Parameters: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, } resp, err := svc.ImportRestApi(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_PutIntegration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.PutIntegrationInput{ HttpMethod: aws.String("String"), // Required ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required Type: aws.String("IntegrationType"), // Required CacheKeyParameters: []*string{ aws.String("String"), // Required // More values... }, CacheNamespace: aws.String("String"), Credentials: aws.String("String"), IntegrationHttpMethod: aws.String("String"), PassthroughBehavior: aws.String("String"), RequestParameters: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, RequestTemplates: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, Uri: aws.String("String"), } resp, err := svc.PutIntegration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_PutIntegrationResponse() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.PutIntegrationResponseInput{ HttpMethod: aws.String("String"), // Required ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required StatusCode: aws.String("StatusCode"), // Required ResponseParameters: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, ResponseTemplates: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, SelectionPattern: aws.String("String"), } resp, err := svc.PutIntegrationResponse(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_PutMethod() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.PutMethodInput{ AuthorizationType: aws.String("String"), // Required HttpMethod: aws.String("String"), // Required ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required ApiKeyRequired: aws.Bool(true), AuthorizerId: aws.String("String"), RequestModels: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, RequestParameters: map[string]*bool{ "Key": aws.Bool(true), // Required // More values... }, } resp, err := svc.PutMethod(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_PutMethodResponse() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.PutMethodResponseInput{ HttpMethod: aws.String("String"), // Required ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required StatusCode: aws.String("StatusCode"), // Required ResponseModels: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, ResponseParameters: map[string]*bool{ "Key": aws.Bool(true), // Required // More values... }, } resp, err := svc.PutMethodResponse(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_PutRestApi() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.PutRestApiInput{ Body: []byte("PAYLOAD"), // Required RestApiId: aws.String("String"), // Required FailOnWarnings: aws.Bool(true), Mode: aws.String("PutMode"), Parameters: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, } resp, err := svc.PutRestApi(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_TestInvokeAuthorizer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.TestInvokeAuthorizerInput{ AuthorizerId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required AdditionalContext: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, Body: aws.String("String"), Headers: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, PathWithQueryString: aws.String("String"), StageVariables: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, } resp, err := svc.TestInvokeAuthorizer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_TestInvokeMethod() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.TestInvokeMethodInput{ HttpMethod: aws.String("String"), // Required ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required Body: aws.String("String"), ClientCertificateId: aws.String("String"), Headers: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, PathWithQueryString: aws.String("String"), StageVariables: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, } resp, err := svc.TestInvokeMethod(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_UpdateAccount() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.UpdateAccountInput{ PatchOperations: []*apigateway.PatchOperation{ { // Required From: aws.String("String"), Op: aws.String("Op"), Path: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateAccount(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_UpdateApiKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.UpdateApiKeyInput{ ApiKey: aws.String("String"), // Required PatchOperations: []*apigateway.PatchOperation{ { // Required From: aws.String("String"), Op: aws.String("Op"), Path: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateApiKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_UpdateAuthorizer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.UpdateAuthorizerInput{ AuthorizerId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required PatchOperations: []*apigateway.PatchOperation{ { // Required From: aws.String("String"), Op: aws.String("Op"), Path: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateAuthorizer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_UpdateBasePathMapping() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.UpdateBasePathMappingInput{ BasePath: aws.String("String"), // Required DomainName: aws.String("String"), // Required PatchOperations: []*apigateway.PatchOperation{ { // Required From: aws.String("String"), Op: aws.String("Op"), Path: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateBasePathMapping(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_UpdateClientCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.UpdateClientCertificateInput{ ClientCertificateId: aws.String("String"), // Required PatchOperations: []*apigateway.PatchOperation{ { // Required From: aws.String("String"), Op: aws.String("Op"), Path: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateClientCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_UpdateDeployment() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.UpdateDeploymentInput{ DeploymentId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required PatchOperations: []*apigateway.PatchOperation{ { // Required From: aws.String("String"), Op: aws.String("Op"), Path: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateDeployment(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_UpdateDomainName() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.UpdateDomainNameInput{ DomainName: aws.String("String"), // Required PatchOperations: []*apigateway.PatchOperation{ { // Required From: aws.String("String"), Op: aws.String("Op"), Path: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateDomainName(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_UpdateIntegration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.UpdateIntegrationInput{ HttpMethod: aws.String("String"), // Required ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required PatchOperations: []*apigateway.PatchOperation{ { // Required From: aws.String("String"), Op: aws.String("Op"), Path: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateIntegration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_UpdateIntegrationResponse() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.UpdateIntegrationResponseInput{ HttpMethod: aws.String("String"), // Required ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required StatusCode: aws.String("StatusCode"), // Required PatchOperations: []*apigateway.PatchOperation{ { // Required From: aws.String("String"), Op: aws.String("Op"), Path: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateIntegrationResponse(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_UpdateMethod() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.UpdateMethodInput{ HttpMethod: aws.String("String"), // Required ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required PatchOperations: []*apigateway.PatchOperation{ { // Required From: aws.String("String"), Op: aws.String("Op"), Path: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateMethod(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_UpdateMethodResponse() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.UpdateMethodResponseInput{ HttpMethod: aws.String("String"), // Required ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required StatusCode: aws.String("StatusCode"), // Required PatchOperations: []*apigateway.PatchOperation{ { // Required From: aws.String("String"), Op: aws.String("Op"), Path: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateMethodResponse(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_UpdateModel() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.UpdateModelInput{ ModelName: aws.String("String"), // Required RestApiId: aws.String("String"), // Required PatchOperations: []*apigateway.PatchOperation{ { // Required From: aws.String("String"), Op: aws.String("Op"), Path: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateModel(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_UpdateResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.UpdateResourceInput{ ResourceId: aws.String("String"), // Required RestApiId: aws.String("String"), // Required PatchOperations: []*apigateway.PatchOperation{ { // Required From: aws.String("String"), Op: aws.String("Op"), Path: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_UpdateRestApi() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.UpdateRestApiInput{ RestApiId: aws.String("String"), // Required PatchOperations: []*apigateway.PatchOperation{ { // Required From: aws.String("String"), Op: aws.String("Op"), Path: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateRestApi(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_UpdateStage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.UpdateStageInput{ RestApiId: aws.String("String"), // Required StageName: aws.String("String"), // Required PatchOperations: []*apigateway.PatchOperation{ { // Required From: aws.String("String"), Op: aws.String("Op"), Path: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateStage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_UpdateUsage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.UpdateUsageInput{ KeyId: aws.String("String"), // Required UsagePlanId: aws.String("String"), // Required PatchOperations: []*apigateway.PatchOperation{ { // Required From: aws.String("String"), Op: aws.String("Op"), Path: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateUsage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAPIGateway_UpdateUsagePlan() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := apigateway.New(sess) params := &apigateway.UpdateUsagePlanInput{ UsagePlanId: aws.String("String"), // Required PatchOperations: []*apigateway.PatchOperation{ { // Required From: aws.String("String"), Op: aws.String("Op"), Path: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateUsagePlan(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/apigateway/service.go000066400000000000000000000057171300374646400213570ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package apigateway import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) // Amazon API Gateway helps developers deliver robust, secure, and scalable // mobile and web application back ends. Amazon API Gateway allows developers // to securely connect mobile and web applications to APIs that run on AWS Lambda, // Amazon EC2, or other publicly addressable web services that are hosted outside // of AWS. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type APIGateway struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "apigateway" // New creates a new instance of the APIGateway client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a APIGateway client from just a session. // svc := apigateway.New(mySession) // // // Create a APIGateway client with additional configuration // svc := apigateway.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *APIGateway { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *APIGateway { svc := &APIGateway{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-07-09", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a APIGateway operation and runs any // custom request initialization. func (c *APIGateway) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/applicationautoscaling/000077500000000000000000000000001300374646400217605ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/applicationautoscaling/api.go000066400000000000000000002165451300374646400230750ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package applicationautoscaling provides a client for Application Auto Scaling. package applicationautoscaling import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opDeleteScalingPolicy = "DeleteScalingPolicy" // DeleteScalingPolicyRequest generates a "aws/request.Request" representing the // client's request for the DeleteScalingPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteScalingPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteScalingPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteScalingPolicyRequest method. // req, resp := client.DeleteScalingPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ApplicationAutoScaling) DeleteScalingPolicyRequest(input *DeleteScalingPolicyInput) (req *request.Request, output *DeleteScalingPolicyOutput) { op := &request.Operation{ Name: opDeleteScalingPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteScalingPolicyInput{} } req = c.newRequest(op, input, output) output = &DeleteScalingPolicyOutput{} req.Data = output return } // DeleteScalingPolicy API operation for Application Auto Scaling. // // Deletes an Application Auto Scaling scaling policy that was previously created. // If you are no longer using a scaling policy, you can delete it with this // operation. // // Deleting a policy deletes the underlying alarm action, but does not delete // the CloudWatch alarm associated with the scaling policy, even if it no longer // has an associated action. // // To create a new scaling policy or update an existing one, see PutScalingPolicy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Application Auto Scaling's // API operation DeleteScalingPolicy for usage and error information. // // Returned Error Codes: // * ValidationException // An exception was thrown for a validation issue. Review the available parameters // for the API request. // // * ObjectNotFoundException // The specified object could not be found. For any Put or Register API operation, // which depends on the existence of a scalable target, this exception is thrown // if the scalable target with the specified service namespace, resource ID, // and scalable dimension does not exist. For any Delete or Deregister API operation, // this exception is thrown if the resource that is to be deleted or deregistered // cannot be found. // // * ConcurrentUpdateException // Concurrent updates caused an exception, for example, if you request an update // to an Application Auto Scaling resource that already has a pending update. // // * InternalServiceException // The service encountered an internal error. // func (c *ApplicationAutoScaling) DeleteScalingPolicy(input *DeleteScalingPolicyInput) (*DeleteScalingPolicyOutput, error) { req, out := c.DeleteScalingPolicyRequest(input) err := req.Send() return out, err } const opDeregisterScalableTarget = "DeregisterScalableTarget" // DeregisterScalableTargetRequest generates a "aws/request.Request" representing the // client's request for the DeregisterScalableTarget operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeregisterScalableTarget for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeregisterScalableTarget method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeregisterScalableTargetRequest method. // req, resp := client.DeregisterScalableTargetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ApplicationAutoScaling) DeregisterScalableTargetRequest(input *DeregisterScalableTargetInput) (req *request.Request, output *DeregisterScalableTargetOutput) { op := &request.Operation{ Name: opDeregisterScalableTarget, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeregisterScalableTargetInput{} } req = c.newRequest(op, input, output) output = &DeregisterScalableTargetOutput{} req.Data = output return } // DeregisterScalableTarget API operation for Application Auto Scaling. // // Deregisters a scalable target that was previously registered. If you are // no longer using a scalable target, you can delete it with this operation. // When you deregister a scalable target, all of the scaling policies that are // associated with that scalable target are deleted. // // To create a new scalable target or update an existing one, see RegisterScalableTarget. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Application Auto Scaling's // API operation DeregisterScalableTarget for usage and error information. // // Returned Error Codes: // * ValidationException // An exception was thrown for a validation issue. Review the available parameters // for the API request. // // * ObjectNotFoundException // The specified object could not be found. For any Put or Register API operation, // which depends on the existence of a scalable target, this exception is thrown // if the scalable target with the specified service namespace, resource ID, // and scalable dimension does not exist. For any Delete or Deregister API operation, // this exception is thrown if the resource that is to be deleted or deregistered // cannot be found. // // * ConcurrentUpdateException // Concurrent updates caused an exception, for example, if you request an update // to an Application Auto Scaling resource that already has a pending update. // // * InternalServiceException // The service encountered an internal error. // func (c *ApplicationAutoScaling) DeregisterScalableTarget(input *DeregisterScalableTargetInput) (*DeregisterScalableTargetOutput, error) { req, out := c.DeregisterScalableTargetRequest(input) err := req.Send() return out, err } const opDescribeScalableTargets = "DescribeScalableTargets" // DescribeScalableTargetsRequest generates a "aws/request.Request" representing the // client's request for the DescribeScalableTargets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeScalableTargets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeScalableTargets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeScalableTargetsRequest method. // req, resp := client.DescribeScalableTargetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ApplicationAutoScaling) DescribeScalableTargetsRequest(input *DescribeScalableTargetsInput) (req *request.Request, output *DescribeScalableTargetsOutput) { op := &request.Operation{ Name: opDescribeScalableTargets, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &DescribeScalableTargetsInput{} } req = c.newRequest(op, input, output) output = &DescribeScalableTargetsOutput{} req.Data = output return } // DescribeScalableTargets API operation for Application Auto Scaling. // // Provides descriptive information for scalable targets with a specified service // namespace. // // You can filter the results in a service namespace with the ResourceIds and // ScalableDimension parameters. // // To create a new scalable target or update an existing one, see RegisterScalableTarget. // If you are no longer using a scalable target, you can deregister it with // DeregisterScalableTarget. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Application Auto Scaling's // API operation DescribeScalableTargets for usage and error information. // // Returned Error Codes: // * ValidationException // An exception was thrown for a validation issue. Review the available parameters // for the API request. // // * InvalidNextTokenException // The next token supplied was invalid. // // * ConcurrentUpdateException // Concurrent updates caused an exception, for example, if you request an update // to an Application Auto Scaling resource that already has a pending update. // // * InternalServiceException // The service encountered an internal error. // func (c *ApplicationAutoScaling) DescribeScalableTargets(input *DescribeScalableTargetsInput) (*DescribeScalableTargetsOutput, error) { req, out := c.DescribeScalableTargetsRequest(input) err := req.Send() return out, err } // DescribeScalableTargetsPages iterates over the pages of a DescribeScalableTargets operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeScalableTargets method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeScalableTargets operation. // pageNum := 0 // err := client.DescribeScalableTargetsPages(params, // func(page *DescribeScalableTargetsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ApplicationAutoScaling) DescribeScalableTargetsPages(input *DescribeScalableTargetsInput, fn func(p *DescribeScalableTargetsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeScalableTargetsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeScalableTargetsOutput), lastPage) }) } const opDescribeScalingActivities = "DescribeScalingActivities" // DescribeScalingActivitiesRequest generates a "aws/request.Request" representing the // client's request for the DescribeScalingActivities operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeScalingActivities for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeScalingActivities method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeScalingActivitiesRequest method. // req, resp := client.DescribeScalingActivitiesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ApplicationAutoScaling) DescribeScalingActivitiesRequest(input *DescribeScalingActivitiesInput) (req *request.Request, output *DescribeScalingActivitiesOutput) { op := &request.Operation{ Name: opDescribeScalingActivities, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &DescribeScalingActivitiesInput{} } req = c.newRequest(op, input, output) output = &DescribeScalingActivitiesOutput{} req.Data = output return } // DescribeScalingActivities API operation for Application Auto Scaling. // // Provides descriptive information for scaling activities with a specified // service namespace for the previous six weeks. // // You can filter the results in a service namespace with the ResourceId and // ScalableDimension parameters. // // Scaling activities are triggered by CloudWatch alarms that are associated // with scaling policies. To view the existing scaling policies for a service // namespace, see DescribeScalingPolicies. To create a new scaling policy or // update an existing one, see PutScalingPolicy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Application Auto Scaling's // API operation DescribeScalingActivities for usage and error information. // // Returned Error Codes: // * ValidationException // An exception was thrown for a validation issue. Review the available parameters // for the API request. // // * InvalidNextTokenException // The next token supplied was invalid. // // * ConcurrentUpdateException // Concurrent updates caused an exception, for example, if you request an update // to an Application Auto Scaling resource that already has a pending update. // // * InternalServiceException // The service encountered an internal error. // func (c *ApplicationAutoScaling) DescribeScalingActivities(input *DescribeScalingActivitiesInput) (*DescribeScalingActivitiesOutput, error) { req, out := c.DescribeScalingActivitiesRequest(input) err := req.Send() return out, err } // DescribeScalingActivitiesPages iterates over the pages of a DescribeScalingActivities operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeScalingActivities method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeScalingActivities operation. // pageNum := 0 // err := client.DescribeScalingActivitiesPages(params, // func(page *DescribeScalingActivitiesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ApplicationAutoScaling) DescribeScalingActivitiesPages(input *DescribeScalingActivitiesInput, fn func(p *DescribeScalingActivitiesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeScalingActivitiesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeScalingActivitiesOutput), lastPage) }) } const opDescribeScalingPolicies = "DescribeScalingPolicies" // DescribeScalingPoliciesRequest generates a "aws/request.Request" representing the // client's request for the DescribeScalingPolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeScalingPolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeScalingPolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeScalingPoliciesRequest method. // req, resp := client.DescribeScalingPoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ApplicationAutoScaling) DescribeScalingPoliciesRequest(input *DescribeScalingPoliciesInput) (req *request.Request, output *DescribeScalingPoliciesOutput) { op := &request.Operation{ Name: opDescribeScalingPolicies, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &DescribeScalingPoliciesInput{} } req = c.newRequest(op, input, output) output = &DescribeScalingPoliciesOutput{} req.Data = output return } // DescribeScalingPolicies API operation for Application Auto Scaling. // // Provides descriptive information for scaling policies with a specified service // namespace. // // You can filter the results in a service namespace with the ResourceId, ScalableDimension, // and PolicyNames parameters. // // To create a new scaling policy or update an existing one, see PutScalingPolicy. // If you are no longer using a scaling policy, you can delete it with DeleteScalingPolicy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Application Auto Scaling's // API operation DescribeScalingPolicies for usage and error information. // // Returned Error Codes: // * ValidationException // An exception was thrown for a validation issue. Review the available parameters // for the API request. // // * FailedResourceAccessException // Failed access to resources caused an exception. This exception currently // only applies to DescribeScalingPolicies. It is thrown when Application Auto // Scaling is unable to retrieve the alarms associated with a scaling policy // due to a client error, for example, if the role ARN specified for a scalable // target does not have the proper permissions to call the CloudWatch DescribeAlarms // (http://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_DescribeAlarms.html) // API operation on behalf of your account. // // * InvalidNextTokenException // The next token supplied was invalid. // // * ConcurrentUpdateException // Concurrent updates caused an exception, for example, if you request an update // to an Application Auto Scaling resource that already has a pending update. // // * InternalServiceException // The service encountered an internal error. // func (c *ApplicationAutoScaling) DescribeScalingPolicies(input *DescribeScalingPoliciesInput) (*DescribeScalingPoliciesOutput, error) { req, out := c.DescribeScalingPoliciesRequest(input) err := req.Send() return out, err } // DescribeScalingPoliciesPages iterates over the pages of a DescribeScalingPolicies operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeScalingPolicies method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeScalingPolicies operation. // pageNum := 0 // err := client.DescribeScalingPoliciesPages(params, // func(page *DescribeScalingPoliciesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ApplicationAutoScaling) DescribeScalingPoliciesPages(input *DescribeScalingPoliciesInput, fn func(p *DescribeScalingPoliciesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeScalingPoliciesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeScalingPoliciesOutput), lastPage) }) } const opPutScalingPolicy = "PutScalingPolicy" // PutScalingPolicyRequest generates a "aws/request.Request" representing the // client's request for the PutScalingPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutScalingPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutScalingPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutScalingPolicyRequest method. // req, resp := client.PutScalingPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ApplicationAutoScaling) PutScalingPolicyRequest(input *PutScalingPolicyInput) (req *request.Request, output *PutScalingPolicyOutput) { op := &request.Operation{ Name: opPutScalingPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutScalingPolicyInput{} } req = c.newRequest(op, input, output) output = &PutScalingPolicyOutput{} req.Data = output return } // PutScalingPolicy API operation for Application Auto Scaling. // // Creates or updates a policy for an existing Application Auto Scaling scalable // target. Each scalable target is identified by service namespace, a resource // ID, and a scalable dimension, and a scaling policy applies to a scalable // target that is identified by those three attributes. You cannot create a // scaling policy without first registering a scalable target with RegisterScalableTarget. // // To update an existing policy, use the existing policy name and set the parameters // you want to change. Any existing parameter not changed in an update to an // existing policy is not changed in this update request. // // You can view the existing scaling policies for a service namespace with DescribeScalingPolicies. // If you are no longer using a scaling policy, you can delete it with DeleteScalingPolicy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Application Auto Scaling's // API operation PutScalingPolicy for usage and error information. // // Returned Error Codes: // * ValidationException // An exception was thrown for a validation issue. Review the available parameters // for the API request. // // * LimitExceededException // Your account exceeded a limit. This exception is thrown when a per-account // resource limit is exceeded. For more information, see Application Auto Scaling // Limits (http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_as-app). // // * ObjectNotFoundException // The specified object could not be found. For any Put or Register API operation, // which depends on the existence of a scalable target, this exception is thrown // if the scalable target with the specified service namespace, resource ID, // and scalable dimension does not exist. For any Delete or Deregister API operation, // this exception is thrown if the resource that is to be deleted or deregistered // cannot be found. // // * ConcurrentUpdateException // Concurrent updates caused an exception, for example, if you request an update // to an Application Auto Scaling resource that already has a pending update. // // * InternalServiceException // The service encountered an internal error. // func (c *ApplicationAutoScaling) PutScalingPolicy(input *PutScalingPolicyInput) (*PutScalingPolicyOutput, error) { req, out := c.PutScalingPolicyRequest(input) err := req.Send() return out, err } const opRegisterScalableTarget = "RegisterScalableTarget" // RegisterScalableTargetRequest generates a "aws/request.Request" representing the // client's request for the RegisterScalableTarget operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterScalableTarget for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterScalableTarget method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterScalableTargetRequest method. // req, resp := client.RegisterScalableTargetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ApplicationAutoScaling) RegisterScalableTargetRequest(input *RegisterScalableTargetInput) (req *request.Request, output *RegisterScalableTargetOutput) { op := &request.Operation{ Name: opRegisterScalableTarget, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterScalableTargetInput{} } req = c.newRequest(op, input, output) output = &RegisterScalableTargetOutput{} req.Data = output return } // RegisterScalableTarget API operation for Application Auto Scaling. // // Registers or updates a scalable target. A scalable target is a resource that // can be scaled out or in with Application Auto Scaling. After you have registered // a scalable target, you can use this operation to update the minimum and maximum // values for your scalable dimension. // // After you register a scalable target with Application Auto Scaling, you can // create and apply scaling policies to it with PutScalingPolicy. You can view // the existing scaling policies for a service namespace with DescribeScalableTargets. // If you are no longer using a scalable target, you can deregister it with // DeregisterScalableTarget. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Application Auto Scaling's // API operation RegisterScalableTarget for usage and error information. // // Returned Error Codes: // * ValidationException // An exception was thrown for a validation issue. Review the available parameters // for the API request. // // * LimitExceededException // Your account exceeded a limit. This exception is thrown when a per-account // resource limit is exceeded. For more information, see Application Auto Scaling // Limits (http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_as-app). // // * ConcurrentUpdateException // Concurrent updates caused an exception, for example, if you request an update // to an Application Auto Scaling resource that already has a pending update. // // * InternalServiceException // The service encountered an internal error. // func (c *ApplicationAutoScaling) RegisterScalableTarget(input *RegisterScalableTargetInput) (*RegisterScalableTargetOutput, error) { req, out := c.RegisterScalableTargetRequest(input) err := req.Send() return out, err } // An object representing a CloudWatch alarm associated with a scaling policy. type Alarm struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the alarm. // // AlarmARN is a required field AlarmARN *string `type:"string" required:"true"` // The name of the alarm. // // AlarmName is a required field AlarmName *string `type:"string" required:"true"` } // String returns the string representation func (s Alarm) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Alarm) GoString() string { return s.String() } type DeleteScalingPolicyInput struct { _ struct{} `type:"structure"` // The name of the scaling policy to delete. // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` // The resource type and unique identifier string for the resource associated // with the scaling policy. For Amazon ECS services, the resource type is services, // and the identifier is the cluster name and service name; for example, service/default/sample-webapp. // For Amazon EC2 Spot fleet requests, the resource type is spot-fleet-request, // and the identifier is the Spot fleet request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` // The scalable dimension associated with the scaling policy. The scalable dimension // contains the service namespace, resource type, and scaling property, such // as ecs:service:DesiredCount for the desired task count of an Amazon ECS service, // or ec2:spot-fleet-request:TargetCapacity for the target capacity of an Amazon // EC2 Spot fleet request. // // ScalableDimension is a required field ScalableDimension *string `type:"string" required:"true" enum:"ScalableDimension"` // The namespace for the AWS service that the scaling policy is associated with. // For more information, see AWS Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces) // in the Amazon Web Services General Reference. // // ServiceNamespace is a required field ServiceNamespace *string `type:"string" required:"true" enum:"ServiceNamespace"` } // String returns the string representation func (s DeleteScalingPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteScalingPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteScalingPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteScalingPolicyInput"} if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceId != nil && len(*s.ResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) } if s.ScalableDimension == nil { invalidParams.Add(request.NewErrParamRequired("ScalableDimension")) } if s.ServiceNamespace == nil { invalidParams.Add(request.NewErrParamRequired("ServiceNamespace")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteScalingPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteScalingPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteScalingPolicyOutput) GoString() string { return s.String() } type DeregisterScalableTargetInput struct { _ struct{} `type:"structure"` // The resource type and unique identifier string for the resource associated // with the scalable target. For Amazon ECS services, the resource type is services, // and the identifier is the cluster name and service name; for example, service/default/sample-webapp. // For Amazon EC2 Spot fleet requests, the resource type is spot-fleet-request, // and the identifier is the Spot fleet request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` // The scalable dimension associated with the scalable target. The scalable // dimension contains the service namespace, resource type, and scaling property, // such as ecs:service:DesiredCount for the desired task count of an Amazon // ECS service, or ec2:spot-fleet-request:TargetCapacity for the target capacity // of an Amazon EC2 Spot fleet request. // // ScalableDimension is a required field ScalableDimension *string `type:"string" required:"true" enum:"ScalableDimension"` // The namespace for the AWS service that the scalable target is associated // with. For more information, see AWS Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces) // in the Amazon Web Services General Reference. // // ServiceNamespace is a required field ServiceNamespace *string `type:"string" required:"true" enum:"ServiceNamespace"` } // String returns the string representation func (s DeregisterScalableTargetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterScalableTargetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeregisterScalableTargetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeregisterScalableTargetInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceId != nil && len(*s.ResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) } if s.ScalableDimension == nil { invalidParams.Add(request.NewErrParamRequired("ScalableDimension")) } if s.ServiceNamespace == nil { invalidParams.Add(request.NewErrParamRequired("ServiceNamespace")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeregisterScalableTargetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeregisterScalableTargetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterScalableTargetOutput) GoString() string { return s.String() } type DescribeScalableTargetsInput struct { _ struct{} `type:"structure"` // The maximum number of scalable target results returned by DescribeScalableTargets // in paginated output. When this parameter is used, DescribeScalableTargets // returns up to MaxResults results in a single page along with a NextToken // response element. The remaining results of the initial request can be seen // by sending another DescribeScalableTargets request with the returned NextToken // value. This value can be between 1 and 50. If this parameter is not used, // then DescribeScalableTargets returns up to 50 results and a NextToken value, // if applicable. MaxResults *int64 `type:"integer"` // The NextToken value returned from a previous paginated DescribeScalableTargets // request. Pagination continues from the end of the previous results that returned // the NextToken value. This value is null when there are no more results to // return. NextToken *string `type:"string"` // The resource type and unique identifier string for the resource associated // with the scalable target. For Amazon ECS services, the resource type is services, // and the identifier is the cluster name and service name; for example, service/default/sample-webapp. // For Amazon EC2 Spot fleet requests, the resource type is spot-fleet-request, // and the identifier is the Spot fleet request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. // If you specify a scalable dimension, you must also specify a resource ID. ResourceIds []*string `type:"list"` // The scalable dimension associated with the scalable target. The scalable // dimension contains the service namespace, resource type, and scaling property, // such as ecs:service:DesiredCount for the desired task count of an Amazon // ECS service, or ec2:spot-fleet-request:TargetCapacity for the target capacity // of an Amazon EC2 Spot fleet request. If you specify a scalable dimension, // you must also specify a resource ID. ScalableDimension *string `type:"string" enum:"ScalableDimension"` // The namespace for the AWS service that the scalable target is associated // with. For more information, see AWS Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces) // in the Amazon Web Services General Reference. // // ServiceNamespace is a required field ServiceNamespace *string `type:"string" required:"true" enum:"ServiceNamespace"` } // String returns the string representation func (s DescribeScalableTargetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScalableTargetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeScalableTargetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeScalableTargetsInput"} if s.ServiceNamespace == nil { invalidParams.Add(request.NewErrParamRequired("ServiceNamespace")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeScalableTargetsOutput struct { _ struct{} `type:"structure"` // The NextToken value to include in a future DescribeScalableTargets request. // When the results of a DescribeScalableTargets request exceed MaxResults, // this value can be used to retrieve the next page of results. This value is // null when there are no more results to return. NextToken *string `type:"string"` // The list of scalable targets that matches the request parameters. ScalableTargets []*ScalableTarget `type:"list"` } // String returns the string representation func (s DescribeScalableTargetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScalableTargetsOutput) GoString() string { return s.String() } type DescribeScalingActivitiesInput struct { _ struct{} `type:"structure"` // The maximum number of scaling activity results returned by DescribeScalingActivities // in paginated output. When this parameter is used, DescribeScalingActivities // returns up to MaxResults results in a single page along with a NextToken // response element. The remaining results of the initial request can be seen // by sending another DescribeScalingActivities request with the returned NextToken // value. This value can be between 1 and 50. If this parameter is not used, // then DescribeScalingActivities returns up to 50 results and a NextToken value, // if applicable. MaxResults *int64 `type:"integer"` // The NextToken value returned from a previous paginated DescribeScalingActivities // request. Pagination continues from the end of the previous results that returned // the NextToken value. This value is null when there are no more results to // return. NextToken *string `type:"string"` // The resource type and unique identifier string for the resource associated // with the scaling activity. For Amazon ECS services, the resource type is // services, and the identifier is the cluster name and service name; for example, // service/default/sample-webapp. For Amazon EC2 Spot fleet requests, the resource // type is spot-fleet-request, and the identifier is the Spot fleet request // ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. // If you specify a scalable dimension, you must also specify a resource ID. ResourceId *string `min:"1" type:"string"` // The scalable dimension associated with the scaling activity. The scalable // dimension contains the service namespace, resource type, and scaling property, // such as ecs:service:DesiredCount for the desired task count of an Amazon // ECS service, or ec2:spot-fleet-request:TargetCapacity for the target capacity // of an Amazon EC2 Spot fleet request. If you specify a scalable dimension, // you must also specify a resource ID. ScalableDimension *string `type:"string" enum:"ScalableDimension"` // The namespace for the AWS service that the scaling activity is associated // with. For more information, see AWS Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces) // in the Amazon Web Services General Reference. // // ServiceNamespace is a required field ServiceNamespace *string `type:"string" required:"true" enum:"ServiceNamespace"` } // String returns the string representation func (s DescribeScalingActivitiesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScalingActivitiesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeScalingActivitiesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeScalingActivitiesInput"} if s.ResourceId != nil && len(*s.ResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) } if s.ServiceNamespace == nil { invalidParams.Add(request.NewErrParamRequired("ServiceNamespace")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeScalingActivitiesOutput struct { _ struct{} `type:"structure"` // The NextToken value to include in a future DescribeScalingActivities request. // When the results of a DescribeScalingActivities request exceed MaxResults, // this value can be used to retrieve the next page of results. This value is // null when there are no more results to return. NextToken *string `type:"string"` // A list of scaling activity objects. ScalingActivities []*ScalingActivity `type:"list"` } // String returns the string representation func (s DescribeScalingActivitiesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScalingActivitiesOutput) GoString() string { return s.String() } type DescribeScalingPoliciesInput struct { _ struct{} `type:"structure"` // The maximum number of scaling policy results returned by DescribeScalingPolicies // in paginated output. When this parameter is used, DescribeScalingPolicies // returns up to MaxResults results in a single page along with a NextToken // response element. The remaining results of the initial request can be seen // by sending another DescribeScalingPolicies request with the returned NextToken // value. This value can be between 1 and 50. If this parameter is not used, // then DescribeScalingPolicies returns up to 50 results and a NextToken value, // if applicable. MaxResults *int64 `type:"integer"` // The NextToken value returned from a previous paginated DescribeScalingPolicies // request. Pagination continues from the end of the previous results that returned // the NextToken value. This value is null when there are no more results to // return. NextToken *string `type:"string"` // The names of the scaling policies to describe. PolicyNames []*string `type:"list"` // The unique resource identifier string of the scalable target that the scaling // policy is associated with. For Amazon ECS services, the resource type is // services, and the identifier is the cluster name and service name; for example, // service/default/sample-webapp. For Amazon EC2 Spot fleet requests, the resource // type is spot-fleet-request, and the identifier is the Spot fleet request // ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. // If you specify a scalable dimension, you must also specify a resource ID. ResourceId *string `min:"1" type:"string"` // The scalable dimension of the scalable target that the scaling policy is // associated with. The scalable dimension contains the service namespace, resource // type, and scaling property, such as ecs:service:DesiredCount for the desired // task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity // for the target capacity of an Amazon EC2 Spot fleet request. If you specify // a scalable dimension, you must also specify a resource ID. ScalableDimension *string `type:"string" enum:"ScalableDimension"` // The AWS service namespace of the scalable target that the scaling policy // is associated with. For more information, see AWS Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces) // in the Amazon Web Services General Reference. // // ServiceNamespace is a required field ServiceNamespace *string `type:"string" required:"true" enum:"ServiceNamespace"` } // String returns the string representation func (s DescribeScalingPoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScalingPoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeScalingPoliciesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeScalingPoliciesInput"} if s.ResourceId != nil && len(*s.ResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) } if s.ServiceNamespace == nil { invalidParams.Add(request.NewErrParamRequired("ServiceNamespace")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeScalingPoliciesOutput struct { _ struct{} `type:"structure"` // The NextToken value to include in a future DescribeScalingPolicies request. // When the results of a DescribeScalingPolicies request exceed MaxResults, // this value can be used to retrieve the next page of results. This value is // null when there are no more results to return. NextToken *string `type:"string"` // A list of scaling policy objects. ScalingPolicies []*ScalingPolicy `type:"list"` } // String returns the string representation func (s DescribeScalingPoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScalingPoliciesOutput) GoString() string { return s.String() } type PutScalingPolicyInput struct { _ struct{} `type:"structure"` // The name of the scaling policy. // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` // The policy type. If you are creating a new policy, this parameter is required. // If you are updating an existing policy, this parameter is not required. PolicyType *string `type:"string" enum:"PolicyType"` // The unique resource identifier string for the scalable target that this scaling // policy applies to. For Amazon ECS services, the resource type is services, // and the identifier is the cluster name and service name; for example, service/default/sample-webapp. // For Amazon EC2 Spot fleet requests, the resource type is spot-fleet-request, // and the identifier is the Spot fleet request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` // The scalable dimension of the scalable target that this scaling policy applies // to. The scalable dimension contains the service namespace, resource type, // and scaling property, such as ecs:service:DesiredCount for the desired task // count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity // for the target capacity of an Amazon EC2 Spot fleet request. // // ScalableDimension is a required field ScalableDimension *string `type:"string" required:"true" enum:"ScalableDimension"` // The AWS service namespace of the scalable target that this scaling policy // applies to. For more information, see AWS Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces) // in the Amazon Web Services General Reference. // // ServiceNamespace is a required field ServiceNamespace *string `type:"string" required:"true" enum:"ServiceNamespace"` // The configuration for the step scaling policy. If you are creating a new // policy, this parameter is required. If you are updating an existing policy, // this parameter is not required. For more information, see StepScalingPolicyConfiguration // and StepAdjustment. StepScalingPolicyConfiguration *StepScalingPolicyConfiguration `type:"structure"` } // String returns the string representation func (s PutScalingPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutScalingPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutScalingPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutScalingPolicyInput"} if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceId != nil && len(*s.ResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) } if s.ScalableDimension == nil { invalidParams.Add(request.NewErrParamRequired("ScalableDimension")) } if s.ServiceNamespace == nil { invalidParams.Add(request.NewErrParamRequired("ServiceNamespace")) } if s.StepScalingPolicyConfiguration != nil { if err := s.StepScalingPolicyConfiguration.Validate(); err != nil { invalidParams.AddNested("StepScalingPolicyConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutScalingPolicyOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the resulting scaling policy. // // PolicyARN is a required field PolicyARN *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s PutScalingPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutScalingPolicyOutput) GoString() string { return s.String() } type RegisterScalableTargetInput struct { _ struct{} `type:"structure"` // The maximum value for this scalable target to scale out to in response to // scaling activities. This parameter is required if you are registering a new // scalable target, and it is optional if you are updating an existing one. MaxCapacity *int64 `type:"integer"` // The minimum value for this scalable target to scale in to in response to // scaling activities. This parameter is required if you are registering a new // scalable target, and it is optional if you are updating an existing one. MinCapacity *int64 `type:"integer"` // The resource type and unique identifier string for the resource to associate // with the scalable target. For Amazon ECS services, the resource type is services, // and the identifier is the cluster name and service name; for example, service/default/sample-webapp. // For Amazon EC2 Spot fleet requests, the resource type is spot-fleet-request, // and the identifier is the Spot fleet request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` // The ARN of the IAM role that allows Application Auto Scaling to modify your // scalable target on your behalf. This parameter is required if you are registering // a new scalable target, and it is optional if you are updating an existing // one. RoleARN *string `min:"1" type:"string"` // The scalable dimension associated with the scalable target. The scalable // dimension contains the service namespace, resource type, and scaling property, // such as ecs:service:DesiredCount for the desired task count of an Amazon // ECS service, or ec2:spot-fleet-request:TargetCapacity for the target capacity // of an Amazon EC2 Spot fleet request. // // ScalableDimension is a required field ScalableDimension *string `type:"string" required:"true" enum:"ScalableDimension"` // The namespace for the AWS service that the scalable target is associated // with. For Amazon ECS services, the namespace value is ecs. For more information, // see AWS Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces) // in the Amazon Web Services General Reference. // // ServiceNamespace is a required field ServiceNamespace *string `type:"string" required:"true" enum:"ServiceNamespace"` } // String returns the string representation func (s RegisterScalableTargetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterScalableTargetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterScalableTargetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterScalableTargetInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceId != nil && len(*s.ResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) } if s.RoleARN != nil && len(*s.RoleARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 1)) } if s.ScalableDimension == nil { invalidParams.Add(request.NewErrParamRequired("ScalableDimension")) } if s.ServiceNamespace == nil { invalidParams.Add(request.NewErrParamRequired("ServiceNamespace")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RegisterScalableTargetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RegisterScalableTargetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterScalableTargetOutput) GoString() string { return s.String() } // An object representing a scalable target. type ScalableTarget struct { _ struct{} `type:"structure"` // The Unix timestamp for when the scalable target was created. // // CreationTime is a required field CreationTime *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` // The maximum value for this scalable target to scale out to in response to // scaling activities. // // MaxCapacity is a required field MaxCapacity *int64 `type:"integer" required:"true"` // The minimum value for this scalable target to scale in to in response to // scaling activities. // // MinCapacity is a required field MinCapacity *int64 `type:"integer" required:"true"` // The resource type and unique identifier string for the resource associated // with the scalable target. For Amazon ECS services, the resource type is services, // and the identifier is the cluster name and service name; for example, service/default/sample-webapp. // For Amazon EC2 Spot fleet requests, the resource type is spot-fleet-request, // and the identifier is the Spot fleet request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` // The ARN of the IAM role that allows Application Auto Scaling to modify your // scalable target on your behalf. // // RoleARN is a required field RoleARN *string `min:"1" type:"string" required:"true"` // The scalable dimension associated with the scalable target. The scalable // dimension contains the service namespace, resource type, and scaling property, // such as ecs:service:DesiredCount for the desired task count of an Amazon // ECS service, or ec2:spot-fleet-request:TargetCapacity for the target capacity // of an Amazon EC2 Spot fleet request. // // ScalableDimension is a required field ScalableDimension *string `type:"string" required:"true" enum:"ScalableDimension"` // The namespace for the AWS service that the scalable target is associated // with. For more information, see AWS Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces) // in the Amazon Web Services General Reference. // // ServiceNamespace is a required field ServiceNamespace *string `type:"string" required:"true" enum:"ServiceNamespace"` } // String returns the string representation func (s ScalableTarget) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScalableTarget) GoString() string { return s.String() } // An object representing a scaling activity. type ScalingActivity struct { _ struct{} `type:"structure"` // The unique identifier string for the scaling activity. // // ActivityId is a required field ActivityId *string `type:"string" required:"true"` // A simple description of what caused the scaling activity to happen. // // Cause is a required field Cause *string `type:"string" required:"true"` // A simple description of what action the scaling activity intends to accomplish. // // Description is a required field Description *string `type:"string" required:"true"` // The details about the scaling activity. Details *string `type:"string"` // The Unix timestamp for when the scaling activity ended. EndTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The resource type and unique identifier string for the resource associated // with the scaling activity. For Amazon ECS services, the resource type is // services, and the identifier is the cluster name and service name; for example, // service/default/sample-webapp. For Amazon EC2 Spot fleet requests, the resource // type is spot-fleet-request, and the identifier is the Spot fleet request // ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` // The scalable dimension associated with the scaling activity. The scalable // dimension contains the service namespace, resource type, and scaling property, // such as ecs:service:DesiredCount for the desired task count of an Amazon // ECS service, or ec2:spot-fleet-request:TargetCapacity for the target capacity // of an Amazon EC2 Spot fleet request. // // ScalableDimension is a required field ScalableDimension *string `type:"string" required:"true" enum:"ScalableDimension"` // The namespace for the AWS service that the scaling activity is associated // with. For more information, see AWS Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces) // in the Amazon Web Services General Reference. // // ServiceNamespace is a required field ServiceNamespace *string `type:"string" required:"true" enum:"ServiceNamespace"` // The Unix timestamp for when the scaling activity began. // // StartTime is a required field StartTime *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` // Indicates the status of the scaling activity. // // StatusCode is a required field StatusCode *string `type:"string" required:"true" enum:"ScalingActivityStatusCode"` // A simple message about the current status of the scaling activity. StatusMessage *string `type:"string"` } // String returns the string representation func (s ScalingActivity) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScalingActivity) GoString() string { return s.String() } // An object representing a scaling policy. type ScalingPolicy struct { _ struct{} `type:"structure"` // The CloudWatch alarms that are associated with the scaling policy. Alarms []*Alarm `type:"list"` // The Unix timestamp for when the scaling policy was created. // // CreationTime is a required field CreationTime *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` // The Amazon Resource Name (ARN) of the scaling policy. // // PolicyARN is a required field PolicyARN *string `min:"1" type:"string" required:"true"` // The name of the scaling policy. // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` // The scaling policy type. // // PolicyType is a required field PolicyType *string `type:"string" required:"true" enum:"PolicyType"` // The resource type and unique identifier string for the resource associated // with the scaling policy. For Amazon ECS services, the resource type is services, // and the identifier is the cluster name and service name; for example, service/default/sample-webapp. // For Amazon EC2 Spot fleet requests, the resource type is spot-fleet-request, // and the identifier is the Spot fleet request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` // The scalable dimension associated with the scaling policy. The scalable dimension // contains the service namespace, resource type, and scaling property, such // as ecs:service:DesiredCount for the desired task count of an Amazon ECS service, // or ec2:spot-fleet-request:TargetCapacity for the target capacity of an Amazon // EC2 Spot fleet request. // // ScalableDimension is a required field ScalableDimension *string `type:"string" required:"true" enum:"ScalableDimension"` // The namespace for the AWS service that the scaling policy is associated with. // For more information, see AWS Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces) // in the Amazon Web Services General Reference. // // ServiceNamespace is a required field ServiceNamespace *string `type:"string" required:"true" enum:"ServiceNamespace"` // The configuration for the step scaling policy. StepScalingPolicyConfiguration *StepScalingPolicyConfiguration `type:"structure"` } // String returns the string representation func (s ScalingPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScalingPolicy) GoString() string { return s.String() } // An object representing a step adjustment for a StepScalingPolicyConfiguration. // Describes an adjustment based on the difference between the value of the // aggregated CloudWatch metric and the breach threshold that you've defined // for the alarm. // // For the following examples, suppose that you have an alarm with a breach // threshold of 50: // // * If you want the adjustment to be triggered when the metric is greater // than or equal to 50 and less than 60, specify a lower bound of 0 and an // upper bound of 10. // // * If you want the adjustment to be triggered when the metric is greater // than 40 and less than or equal to 50, specify a lower bound of -10 and // an upper bound of 0. // // There are a few rules for the step adjustments for your step policy: // // * The ranges of your step adjustments can't overlap or have a gap. // // * At most one step adjustment can have a null lower bound. If one step // adjustment has a negative lower bound, then there must be a step adjustment // with a null lower bound. // // * At most one step adjustment can have a null upper bound. If one step // adjustment has a positive upper bound, then there must be a step adjustment // with a null upper bound. // // * The upper and lower bound can't be null in the same step adjustment. type StepAdjustment struct { _ struct{} `type:"structure"` // The lower bound for the difference between the alarm threshold and the CloudWatch // metric. If the metric value is above the breach threshold, the lower bound // is inclusive (the metric must be greater than or equal to the threshold plus // the lower bound). Otherwise, it is exclusive (the metric must be greater // than the threshold plus the lower bound). A null value indicates negative // infinity. MetricIntervalLowerBound *float64 `type:"double"` // The upper bound for the difference between the alarm threshold and the CloudWatch // metric. If the metric value is above the breach threshold, the upper bound // is exclusive (the metric must be less than the threshold plus the upper bound). // Otherwise, it is inclusive (the metric must be less than or equal to the // threshold plus the upper bound). A null value indicates positive infinity. // // The upper bound must be greater than the lower bound. MetricIntervalUpperBound *float64 `type:"double"` // The amount by which to scale, based on the specified adjustment type. A positive // value adds to the current scalable dimension while a negative number removes // from the current scalable dimension. // // ScalingAdjustment is a required field ScalingAdjustment *int64 `type:"integer" required:"true"` } // String returns the string representation func (s StepAdjustment) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StepAdjustment) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StepAdjustment) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StepAdjustment"} if s.ScalingAdjustment == nil { invalidParams.Add(request.NewErrParamRequired("ScalingAdjustment")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An object representing a step scaling policy configuration. type StepScalingPolicyConfiguration struct { _ struct{} `type:"structure"` // The adjustment type, which specifies how the ScalingAdjustment parameter // in a StepAdjustment is interpreted. AdjustmentType *string `type:"string" enum:"AdjustmentType"` // The amount of time, in seconds, after a scaling activity completes where // previous trigger-related scaling activities can influence future scaling // events. // // For scale out policies, while Cooldown is in effect, the capacity that has // been added by the previous scale out event that initiated the Cooldown is // calculated as part of the desired capacity for the next scale out. The intention // is to continuously (but not excessively) scale out. For example, an alarm // triggers a step scaling policy to scale out an Amazon ECS service by 2 tasks, // the scaling activity completes successfully, and a Cooldown period of 5 minutes // starts. During the Cooldown period, if the alarm triggers the same policy // again but at a more aggressive step adjustment to scale out the service by // 3 tasks, the 2 tasks that were added in the previous scale out event are // considered part of that capacity and only 1 additional task is added to the // desired count. // // For scale in policies, the Cooldown period is used to block subsequent scale // in requests until it has expired. The intention is to scale in conservatively // to protect your application's availability. However, if another alarm triggers // a scale out policy during the Cooldown period after a scale-in, Application // Auto Scaling scales out your scalable target immediately. Cooldown *int64 `type:"integer"` // The aggregation type for the CloudWatch metrics. Valid values are Minimum, // Maximum, and Average. MetricAggregationType *string `type:"string" enum:"MetricAggregationType"` // The minimum number to adjust your scalable dimension as a result of a scaling // activity. If the adjustment type is PercentChangeInCapacity, the scaling // policy changes the scalable dimension of the scalable target by this amount. MinAdjustmentMagnitude *int64 `type:"integer"` // A set of adjustments that enable you to scale based on the size of the alarm // breach. StepAdjustments []*StepAdjustment `type:"list"` } // String returns the string representation func (s StepScalingPolicyConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StepScalingPolicyConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StepScalingPolicyConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StepScalingPolicyConfiguration"} if s.StepAdjustments != nil { for i, v := range s.StepAdjustments { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "StepAdjustments", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } const ( // AdjustmentTypeChangeInCapacity is a AdjustmentType enum value AdjustmentTypeChangeInCapacity = "ChangeInCapacity" // AdjustmentTypePercentChangeInCapacity is a AdjustmentType enum value AdjustmentTypePercentChangeInCapacity = "PercentChangeInCapacity" // AdjustmentTypeExactCapacity is a AdjustmentType enum value AdjustmentTypeExactCapacity = "ExactCapacity" ) const ( // MetricAggregationTypeAverage is a MetricAggregationType enum value MetricAggregationTypeAverage = "Average" // MetricAggregationTypeMinimum is a MetricAggregationType enum value MetricAggregationTypeMinimum = "Minimum" // MetricAggregationTypeMaximum is a MetricAggregationType enum value MetricAggregationTypeMaximum = "Maximum" ) const ( // PolicyTypeStepScaling is a PolicyType enum value PolicyTypeStepScaling = "StepScaling" ) const ( // ScalableDimensionEcsServiceDesiredCount is a ScalableDimension enum value ScalableDimensionEcsServiceDesiredCount = "ecs:service:DesiredCount" // ScalableDimensionEc2SpotFleetRequestTargetCapacity is a ScalableDimension enum value ScalableDimensionEc2SpotFleetRequestTargetCapacity = "ec2:spot-fleet-request:TargetCapacity" ) const ( // ScalingActivityStatusCodePending is a ScalingActivityStatusCode enum value ScalingActivityStatusCodePending = "Pending" // ScalingActivityStatusCodeInProgress is a ScalingActivityStatusCode enum value ScalingActivityStatusCodeInProgress = "InProgress" // ScalingActivityStatusCodeSuccessful is a ScalingActivityStatusCode enum value ScalingActivityStatusCodeSuccessful = "Successful" // ScalingActivityStatusCodeOverridden is a ScalingActivityStatusCode enum value ScalingActivityStatusCodeOverridden = "Overridden" // ScalingActivityStatusCodeUnfulfilled is a ScalingActivityStatusCode enum value ScalingActivityStatusCodeUnfulfilled = "Unfulfilled" // ScalingActivityStatusCodeFailed is a ScalingActivityStatusCode enum value ScalingActivityStatusCodeFailed = "Failed" ) const ( // ServiceNamespaceEcs is a ServiceNamespace enum value ServiceNamespaceEcs = "ecs" // ServiceNamespaceEc2 is a ServiceNamespace enum value ServiceNamespaceEc2 = "ec2" ) aws-sdk-go-1.4.22/service/applicationautoscaling/applicationautoscalingiface/000077500000000000000000000000001300374646400275055ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/applicationautoscaling/applicationautoscalingiface/interface.go000066400000000000000000000117151300374646400320010ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package applicationautoscalingiface provides an interface to enable mocking the Application Auto Scaling service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package applicationautoscalingiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/applicationautoscaling" ) // ApplicationAutoScalingAPI provides an interface to enable mocking the // applicationautoscaling.ApplicationAutoScaling service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Application Auto Scaling. // func myFunc(svc applicationautoscalingiface.ApplicationAutoScalingAPI) bool { // // Make svc.DeleteScalingPolicy request // } // // func main() { // sess := session.New() // svc := applicationautoscaling.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockApplicationAutoScalingClient struct { // applicationautoscalingiface.ApplicationAutoScalingAPI // } // func (m *mockApplicationAutoScalingClient) DeleteScalingPolicy(input *applicationautoscaling.DeleteScalingPolicyInput) (*applicationautoscaling.DeleteScalingPolicyOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockApplicationAutoScalingClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type ApplicationAutoScalingAPI interface { DeleteScalingPolicyRequest(*applicationautoscaling.DeleteScalingPolicyInput) (*request.Request, *applicationautoscaling.DeleteScalingPolicyOutput) DeleteScalingPolicy(*applicationautoscaling.DeleteScalingPolicyInput) (*applicationautoscaling.DeleteScalingPolicyOutput, error) DeregisterScalableTargetRequest(*applicationautoscaling.DeregisterScalableTargetInput) (*request.Request, *applicationautoscaling.DeregisterScalableTargetOutput) DeregisterScalableTarget(*applicationautoscaling.DeregisterScalableTargetInput) (*applicationautoscaling.DeregisterScalableTargetOutput, error) DescribeScalableTargetsRequest(*applicationautoscaling.DescribeScalableTargetsInput) (*request.Request, *applicationautoscaling.DescribeScalableTargetsOutput) DescribeScalableTargets(*applicationautoscaling.DescribeScalableTargetsInput) (*applicationautoscaling.DescribeScalableTargetsOutput, error) DescribeScalableTargetsPages(*applicationautoscaling.DescribeScalableTargetsInput, func(*applicationautoscaling.DescribeScalableTargetsOutput, bool) bool) error DescribeScalingActivitiesRequest(*applicationautoscaling.DescribeScalingActivitiesInput) (*request.Request, *applicationautoscaling.DescribeScalingActivitiesOutput) DescribeScalingActivities(*applicationautoscaling.DescribeScalingActivitiesInput) (*applicationautoscaling.DescribeScalingActivitiesOutput, error) DescribeScalingActivitiesPages(*applicationautoscaling.DescribeScalingActivitiesInput, func(*applicationautoscaling.DescribeScalingActivitiesOutput, bool) bool) error DescribeScalingPoliciesRequest(*applicationautoscaling.DescribeScalingPoliciesInput) (*request.Request, *applicationautoscaling.DescribeScalingPoliciesOutput) DescribeScalingPolicies(*applicationautoscaling.DescribeScalingPoliciesInput) (*applicationautoscaling.DescribeScalingPoliciesOutput, error) DescribeScalingPoliciesPages(*applicationautoscaling.DescribeScalingPoliciesInput, func(*applicationautoscaling.DescribeScalingPoliciesOutput, bool) bool) error PutScalingPolicyRequest(*applicationautoscaling.PutScalingPolicyInput) (*request.Request, *applicationautoscaling.PutScalingPolicyOutput) PutScalingPolicy(*applicationautoscaling.PutScalingPolicyInput) (*applicationautoscaling.PutScalingPolicyOutput, error) RegisterScalableTargetRequest(*applicationautoscaling.RegisterScalableTargetInput) (*request.Request, *applicationautoscaling.RegisterScalableTargetOutput) RegisterScalableTarget(*applicationautoscaling.RegisterScalableTargetInput) (*applicationautoscaling.RegisterScalableTargetOutput, error) } var _ ApplicationAutoScalingAPI = (*applicationautoscaling.ApplicationAutoScaling)(nil) aws-sdk-go-1.4.22/service/applicationautoscaling/examples_test.go000066400000000000000000000151061300374646400251670ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package applicationautoscaling_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/applicationautoscaling" ) var _ time.Duration var _ bytes.Buffer func ExampleApplicationAutoScaling_DeleteScalingPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := applicationautoscaling.New(sess) params := &applicationautoscaling.DeleteScalingPolicyInput{ PolicyName: aws.String("ResourceIdMaxLen1600"), // Required ResourceId: aws.String("ResourceIdMaxLen1600"), // Required ScalableDimension: aws.String("ScalableDimension"), // Required ServiceNamespace: aws.String("ServiceNamespace"), // Required } resp, err := svc.DeleteScalingPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleApplicationAutoScaling_DeregisterScalableTarget() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := applicationautoscaling.New(sess) params := &applicationautoscaling.DeregisterScalableTargetInput{ ResourceId: aws.String("ResourceIdMaxLen1600"), // Required ScalableDimension: aws.String("ScalableDimension"), // Required ServiceNamespace: aws.String("ServiceNamespace"), // Required } resp, err := svc.DeregisterScalableTarget(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleApplicationAutoScaling_DescribeScalableTargets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := applicationautoscaling.New(sess) params := &applicationautoscaling.DescribeScalableTargetsInput{ ServiceNamespace: aws.String("ServiceNamespace"), // Required MaxResults: aws.Int64(1), NextToken: aws.String("XmlString"), ResourceIds: []*string{ aws.String("ResourceIdMaxLen1600"), // Required // More values... }, ScalableDimension: aws.String("ScalableDimension"), } resp, err := svc.DescribeScalableTargets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleApplicationAutoScaling_DescribeScalingActivities() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := applicationautoscaling.New(sess) params := &applicationautoscaling.DescribeScalingActivitiesInput{ ServiceNamespace: aws.String("ServiceNamespace"), // Required MaxResults: aws.Int64(1), NextToken: aws.String("XmlString"), ResourceId: aws.String("ResourceIdMaxLen1600"), ScalableDimension: aws.String("ScalableDimension"), } resp, err := svc.DescribeScalingActivities(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleApplicationAutoScaling_DescribeScalingPolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := applicationautoscaling.New(sess) params := &applicationautoscaling.DescribeScalingPoliciesInput{ ServiceNamespace: aws.String("ServiceNamespace"), // Required MaxResults: aws.Int64(1), NextToken: aws.String("XmlString"), PolicyNames: []*string{ aws.String("ResourceIdMaxLen1600"), // Required // More values... }, ResourceId: aws.String("ResourceIdMaxLen1600"), ScalableDimension: aws.String("ScalableDimension"), } resp, err := svc.DescribeScalingPolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleApplicationAutoScaling_PutScalingPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := applicationautoscaling.New(sess) params := &applicationautoscaling.PutScalingPolicyInput{ PolicyName: aws.String("PolicyName"), // Required ResourceId: aws.String("ResourceIdMaxLen1600"), // Required ScalableDimension: aws.String("ScalableDimension"), // Required ServiceNamespace: aws.String("ServiceNamespace"), // Required PolicyType: aws.String("PolicyType"), StepScalingPolicyConfiguration: &applicationautoscaling.StepScalingPolicyConfiguration{ AdjustmentType: aws.String("AdjustmentType"), Cooldown: aws.Int64(1), MetricAggregationType: aws.String("MetricAggregationType"), MinAdjustmentMagnitude: aws.Int64(1), StepAdjustments: []*applicationautoscaling.StepAdjustment{ { // Required ScalingAdjustment: aws.Int64(1), // Required MetricIntervalLowerBound: aws.Float64(1.0), MetricIntervalUpperBound: aws.Float64(1.0), }, // More values... }, }, } resp, err := svc.PutScalingPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleApplicationAutoScaling_RegisterScalableTarget() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := applicationautoscaling.New(sess) params := &applicationautoscaling.RegisterScalableTargetInput{ ResourceId: aws.String("ResourceIdMaxLen1600"), // Required ScalableDimension: aws.String("ScalableDimension"), // Required ServiceNamespace: aws.String("ServiceNamespace"), // Required MaxCapacity: aws.Int64(1), MinCapacity: aws.Int64(1), RoleARN: aws.String("ResourceIdMaxLen1600"), } resp, err := svc.RegisterScalableTarget(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/applicationautoscaling/service.go000066400000000000000000000074421300374646400237560ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package applicationautoscaling import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Application Auto Scaling is a general purpose Auto Scaling service for supported // elastic AWS resources. With Application Auto Scaling, you can automatically // scale your AWS resources, with an experience similar to that of Auto Scaling. // // Application Auto Scaling supports scaling the following AWS resources: // // * Amazon ECS services // // * Amazon EC2 Spot fleet instances // // You can use Application Auto Scaling to accomplish the following tasks: // // * Define scaling policies for automatically adjusting your AWS resources // // * Scale your resources in response to CloudWatch alarms // // * View history of your scaling events // // Application Auto Scaling is available in the following regions: // // * us-east-1 // // * us-west-1 // // * us-west-2 // // * ap-southeast-1 // // * ap-southeast-2 // // * ap-northeast-1 // // * eu-central-1 // // * eu-west-1 //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type ApplicationAutoScaling struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "autoscaling" // New creates a new instance of the ApplicationAutoScaling client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a ApplicationAutoScaling client from just a session. // svc := applicationautoscaling.New(mySession) // // // Create a ApplicationAutoScaling client with additional configuration // svc := applicationautoscaling.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *ApplicationAutoScaling { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *ApplicationAutoScaling { svc := &ApplicationAutoScaling{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningName: "application-autoscaling", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2016-02-06", JSONVersion: "1.1", TargetPrefix: "AnyScaleFrontendService", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a ApplicationAutoScaling operation and runs any // custom request initialization. func (c *ApplicationAutoScaling) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/applicationdiscoveryservice/000077500000000000000000000000001300374646400230375ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/applicationdiscoveryservice/api.go000066400000000000000000001634121300374646400241460ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package applicationdiscoveryservice provides a client for AWS Application Discovery Service. package applicationdiscoveryservice import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opCreateTags = "CreateTags" // CreateTagsRequest generates a "aws/request.Request" representing the // client's request for the CreateTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateTagsRequest method. // req, resp := client.CreateTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ApplicationDiscoveryService) CreateTagsRequest(input *CreateTagsInput) (req *request.Request, output *CreateTagsOutput) { op := &request.Operation{ Name: opCreateTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateTagsInput{} } req = c.newRequest(op, input, output) output = &CreateTagsOutput{} req.Data = output return } // CreateTags API operation for AWS Application Discovery Service. // // Creates one or more tags for configuration items. Tags are metadata that // help you categorize IT assets. This API accepts a list of multiple configuration // items. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Application Discovery Service's // API operation CreateTags for usage and error information. // // Returned Error Codes: // * AuthorizationErrorException // The AWS user account does not have permission to perform the action. Check // the IAM policy associated with this account. // // * ResourceNotFoundException // The specified configuration ID was not located. Verify the configuration // ID and try again. // // * InvalidParameterException // One or more parameters are not valid. Verify the parameters and try again. // // * InvalidParameterValueException // The value of one or more parameters are either invalid or out of range. Verify // the parameter values and try again. // // * ServerInternalErrorException // The server experienced an internal error. Try again. // func (c *ApplicationDiscoveryService) CreateTags(input *CreateTagsInput) (*CreateTagsOutput, error) { req, out := c.CreateTagsRequest(input) err := req.Send() return out, err } const opDeleteTags = "DeleteTags" // DeleteTagsRequest generates a "aws/request.Request" representing the // client's request for the DeleteTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteTagsRequest method. // req, resp := client.DeleteTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ApplicationDiscoveryService) DeleteTagsRequest(input *DeleteTagsInput) (req *request.Request, output *DeleteTagsOutput) { op := &request.Operation{ Name: opDeleteTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteTagsInput{} } req = c.newRequest(op, input, output) output = &DeleteTagsOutput{} req.Data = output return } // DeleteTags API operation for AWS Application Discovery Service. // // Deletes the association between configuration items and one or more tags. // This API accepts a list of multiple configuration items. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Application Discovery Service's // API operation DeleteTags for usage and error information. // // Returned Error Codes: // * AuthorizationErrorException // The AWS user account does not have permission to perform the action. Check // the IAM policy associated with this account. // // * ResourceNotFoundException // The specified configuration ID was not located. Verify the configuration // ID and try again. // // * InvalidParameterException // One or more parameters are not valid. Verify the parameters and try again. // // * InvalidParameterValueException // The value of one or more parameters are either invalid or out of range. Verify // the parameter values and try again. // // * ServerInternalErrorException // The server experienced an internal error. Try again. // func (c *ApplicationDiscoveryService) DeleteTags(input *DeleteTagsInput) (*DeleteTagsOutput, error) { req, out := c.DeleteTagsRequest(input) err := req.Send() return out, err } const opDescribeAgents = "DescribeAgents" // DescribeAgentsRequest generates a "aws/request.Request" representing the // client's request for the DescribeAgents operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAgents for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAgents method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAgentsRequest method. // req, resp := client.DescribeAgentsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ApplicationDiscoveryService) DescribeAgentsRequest(input *DescribeAgentsInput) (req *request.Request, output *DescribeAgentsOutput) { op := &request.Operation{ Name: opDescribeAgents, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAgentsInput{} } req = c.newRequest(op, input, output) output = &DescribeAgentsOutput{} req.Data = output return } // DescribeAgents API operation for AWS Application Discovery Service. // // Lists AWS agents by ID or lists all agents associated with your user account // if you did not specify an agent ID. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Application Discovery Service's // API operation DescribeAgents for usage and error information. // // Returned Error Codes: // * AuthorizationErrorException // The AWS user account does not have permission to perform the action. Check // the IAM policy associated with this account. // // * InvalidParameterException // One or more parameters are not valid. Verify the parameters and try again. // // * InvalidParameterValueException // The value of one or more parameters are either invalid or out of range. Verify // the parameter values and try again. // // * ServerInternalErrorException // The server experienced an internal error. Try again. // func (c *ApplicationDiscoveryService) DescribeAgents(input *DescribeAgentsInput) (*DescribeAgentsOutput, error) { req, out := c.DescribeAgentsRequest(input) err := req.Send() return out, err } const opDescribeConfigurations = "DescribeConfigurations" // DescribeConfigurationsRequest generates a "aws/request.Request" representing the // client's request for the DescribeConfigurations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeConfigurations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeConfigurations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeConfigurationsRequest method. // req, resp := client.DescribeConfigurationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ApplicationDiscoveryService) DescribeConfigurationsRequest(input *DescribeConfigurationsInput) (req *request.Request, output *DescribeConfigurationsOutput) { op := &request.Operation{ Name: opDescribeConfigurations, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeConfigurationsInput{} } req = c.newRequest(op, input, output) output = &DescribeConfigurationsOutput{} req.Data = output return } // DescribeConfigurations API operation for AWS Application Discovery Service. // // Retrieves a list of attributes for a specific configuration ID. For example, // the output for a server configuration item includes a list of attributes // about the server, including host name, operating system, number of network // cards, etc. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Application Discovery Service's // API operation DescribeConfigurations for usage and error information. // // Returned Error Codes: // * AuthorizationErrorException // The AWS user account does not have permission to perform the action. Check // the IAM policy associated with this account. // // * InvalidParameterException // One or more parameters are not valid. Verify the parameters and try again. // // * InvalidParameterValueException // The value of one or more parameters are either invalid or out of range. Verify // the parameter values and try again. // // * ServerInternalErrorException // The server experienced an internal error. Try again. // func (c *ApplicationDiscoveryService) DescribeConfigurations(input *DescribeConfigurationsInput) (*DescribeConfigurationsOutput, error) { req, out := c.DescribeConfigurationsRequest(input) err := req.Send() return out, err } const opDescribeExportConfigurations = "DescribeExportConfigurations" // DescribeExportConfigurationsRequest generates a "aws/request.Request" representing the // client's request for the DescribeExportConfigurations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeExportConfigurations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeExportConfigurations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeExportConfigurationsRequest method. // req, resp := client.DescribeExportConfigurationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ApplicationDiscoveryService) DescribeExportConfigurationsRequest(input *DescribeExportConfigurationsInput) (req *request.Request, output *DescribeExportConfigurationsOutput) { op := &request.Operation{ Name: opDescribeExportConfigurations, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeExportConfigurationsInput{} } req = c.newRequest(op, input, output) output = &DescribeExportConfigurationsOutput{} req.Data = output return } // DescribeExportConfigurations API operation for AWS Application Discovery Service. // // Retrieves the status of a given export process. You can retrieve status from // a maximum of 100 processes. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Application Discovery Service's // API operation DescribeExportConfigurations for usage and error information. // // Returned Error Codes: // * AuthorizationErrorException // The AWS user account does not have permission to perform the action. Check // the IAM policy associated with this account. // // * ResourceNotFoundException // The specified configuration ID was not located. Verify the configuration // ID and try again. // // * InvalidParameterException // One or more parameters are not valid. Verify the parameters and try again. // // * InvalidParameterValueException // The value of one or more parameters are either invalid or out of range. Verify // the parameter values and try again. // // * ServerInternalErrorException // The server experienced an internal error. Try again. // func (c *ApplicationDiscoveryService) DescribeExportConfigurations(input *DescribeExportConfigurationsInput) (*DescribeExportConfigurationsOutput, error) { req, out := c.DescribeExportConfigurationsRequest(input) err := req.Send() return out, err } const opDescribeTags = "DescribeTags" // DescribeTagsRequest generates a "aws/request.Request" representing the // client's request for the DescribeTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTagsRequest method. // req, resp := client.DescribeTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ApplicationDiscoveryService) DescribeTagsRequest(input *DescribeTagsInput) (req *request.Request, output *DescribeTagsOutput) { op := &request.Operation{ Name: opDescribeTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTagsInput{} } req = c.newRequest(op, input, output) output = &DescribeTagsOutput{} req.Data = output return } // DescribeTags API operation for AWS Application Discovery Service. // // Retrieves a list of configuration items that are tagged with a specific tag. // Or retrieves a list of all tags assigned to a specific configuration item. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Application Discovery Service's // API operation DescribeTags for usage and error information. // // Returned Error Codes: // * AuthorizationErrorException // The AWS user account does not have permission to perform the action. Check // the IAM policy associated with this account. // // * ResourceNotFoundException // The specified configuration ID was not located. Verify the configuration // ID and try again. // // * InvalidParameterException // One or more parameters are not valid. Verify the parameters and try again. // // * InvalidParameterValueException // The value of one or more parameters are either invalid or out of range. Verify // the parameter values and try again. // // * ServerInternalErrorException // The server experienced an internal error. Try again. // func (c *ApplicationDiscoveryService) DescribeTags(input *DescribeTagsInput) (*DescribeTagsOutput, error) { req, out := c.DescribeTagsRequest(input) err := req.Send() return out, err } const opExportConfigurations = "ExportConfigurations" // ExportConfigurationsRequest generates a "aws/request.Request" representing the // client's request for the ExportConfigurations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ExportConfigurations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ExportConfigurations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ExportConfigurationsRequest method. // req, resp := client.ExportConfigurationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ApplicationDiscoveryService) ExportConfigurationsRequest(input *ExportConfigurationsInput) (req *request.Request, output *ExportConfigurationsOutput) { op := &request.Operation{ Name: opExportConfigurations, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ExportConfigurationsInput{} } req = c.newRequest(op, input, output) output = &ExportConfigurationsOutput{} req.Data = output return } // ExportConfigurations API operation for AWS Application Discovery Service. // // Exports all discovered configuration data to an Amazon S3 bucket or an application // that enables you to view and evaluate the data. Data includes tags and tag // associations, processes, connections, servers, and system performance. This // API returns an export ID which you can query using the GetExportStatus API. // The system imposes a limit of two configuration exports in six hours. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Application Discovery Service's // API operation ExportConfigurations for usage and error information. // // Returned Error Codes: // * AuthorizationErrorException // The AWS user account does not have permission to perform the action. Check // the IAM policy associated with this account. // // * InvalidParameterException // One or more parameters are not valid. Verify the parameters and try again. // // * InvalidParameterValueException // The value of one or more parameters are either invalid or out of range. Verify // the parameter values and try again. // // * ServerInternalErrorException // The server experienced an internal error. Try again. // // * OperationNotPermittedException // This operation is not permitted. // func (c *ApplicationDiscoveryService) ExportConfigurations(input *ExportConfigurationsInput) (*ExportConfigurationsOutput, error) { req, out := c.ExportConfigurationsRequest(input) err := req.Send() return out, err } const opListConfigurations = "ListConfigurations" // ListConfigurationsRequest generates a "aws/request.Request" representing the // client's request for the ListConfigurations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListConfigurations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListConfigurations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListConfigurationsRequest method. // req, resp := client.ListConfigurationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ApplicationDiscoveryService) ListConfigurationsRequest(input *ListConfigurationsInput) (req *request.Request, output *ListConfigurationsOutput) { op := &request.Operation{ Name: opListConfigurations, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListConfigurationsInput{} } req = c.newRequest(op, input, output) output = &ListConfigurationsOutput{} req.Data = output return } // ListConfigurations API operation for AWS Application Discovery Service. // // Retrieves a list of configurations items according to the criteria you specify // in a filter. The filter criteria identify relationship requirements. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Application Discovery Service's // API operation ListConfigurations for usage and error information. // // Returned Error Codes: // * AuthorizationErrorException // The AWS user account does not have permission to perform the action. Check // the IAM policy associated with this account. // // * ResourceNotFoundException // The specified configuration ID was not located. Verify the configuration // ID and try again. // // * InvalidParameterException // One or more parameters are not valid. Verify the parameters and try again. // // * InvalidParameterValueException // The value of one or more parameters are either invalid or out of range. Verify // the parameter values and try again. // // * ServerInternalErrorException // The server experienced an internal error. Try again. // func (c *ApplicationDiscoveryService) ListConfigurations(input *ListConfigurationsInput) (*ListConfigurationsOutput, error) { req, out := c.ListConfigurationsRequest(input) err := req.Send() return out, err } const opStartDataCollectionByAgentIds = "StartDataCollectionByAgentIds" // StartDataCollectionByAgentIdsRequest generates a "aws/request.Request" representing the // client's request for the StartDataCollectionByAgentIds operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StartDataCollectionByAgentIds for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StartDataCollectionByAgentIds method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StartDataCollectionByAgentIdsRequest method. // req, resp := client.StartDataCollectionByAgentIdsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ApplicationDiscoveryService) StartDataCollectionByAgentIdsRequest(input *StartDataCollectionByAgentIdsInput) (req *request.Request, output *StartDataCollectionByAgentIdsOutput) { op := &request.Operation{ Name: opStartDataCollectionByAgentIds, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartDataCollectionByAgentIdsInput{} } req = c.newRequest(op, input, output) output = &StartDataCollectionByAgentIdsOutput{} req.Data = output return } // StartDataCollectionByAgentIds API operation for AWS Application Discovery Service. // // Instructs the specified agents to start collecting data. Agents can reside // on host servers or virtual machines in your data center. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Application Discovery Service's // API operation StartDataCollectionByAgentIds for usage and error information. // // Returned Error Codes: // * AuthorizationErrorException // The AWS user account does not have permission to perform the action. Check // the IAM policy associated with this account. // // * InvalidParameterException // One or more parameters are not valid. Verify the parameters and try again. // // * InvalidParameterValueException // The value of one or more parameters are either invalid or out of range. Verify // the parameter values and try again. // // * ServerInternalErrorException // The server experienced an internal error. Try again. // func (c *ApplicationDiscoveryService) StartDataCollectionByAgentIds(input *StartDataCollectionByAgentIdsInput) (*StartDataCollectionByAgentIdsOutput, error) { req, out := c.StartDataCollectionByAgentIdsRequest(input) err := req.Send() return out, err } const opStopDataCollectionByAgentIds = "StopDataCollectionByAgentIds" // StopDataCollectionByAgentIdsRequest generates a "aws/request.Request" representing the // client's request for the StopDataCollectionByAgentIds operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StopDataCollectionByAgentIds for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StopDataCollectionByAgentIds method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StopDataCollectionByAgentIdsRequest method. // req, resp := client.StopDataCollectionByAgentIdsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ApplicationDiscoveryService) StopDataCollectionByAgentIdsRequest(input *StopDataCollectionByAgentIdsInput) (req *request.Request, output *StopDataCollectionByAgentIdsOutput) { op := &request.Operation{ Name: opStopDataCollectionByAgentIds, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StopDataCollectionByAgentIdsInput{} } req = c.newRequest(op, input, output) output = &StopDataCollectionByAgentIdsOutput{} req.Data = output return } // StopDataCollectionByAgentIds API operation for AWS Application Discovery Service. // // Instructs the specified agents to stop collecting data. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Application Discovery Service's // API operation StopDataCollectionByAgentIds for usage and error information. // // Returned Error Codes: // * AuthorizationErrorException // The AWS user account does not have permission to perform the action. Check // the IAM policy associated with this account. // // * InvalidParameterException // One or more parameters are not valid. Verify the parameters and try again. // // * InvalidParameterValueException // The value of one or more parameters are either invalid or out of range. Verify // the parameter values and try again. // // * ServerInternalErrorException // The server experienced an internal error. Try again. // func (c *ApplicationDiscoveryService) StopDataCollectionByAgentIds(input *StopDataCollectionByAgentIdsInput) (*StopDataCollectionByAgentIdsOutput, error) { req, out := c.StopDataCollectionByAgentIdsRequest(input) err := req.Send() return out, err } // Information about agents that were instructed to start collecting data. Information // includes the agent ID, a description of the operation, and whether or not // the agent configuration was updated. type AgentConfigurationStatus struct { _ struct{} `type:"structure"` // The agent ID. AgentId *string `locationName:"agentId" type:"string"` // A description of the operation performed. Description *string `locationName:"description" type:"string"` // Information about the status of the StartDataCollection and StopDataCollection // operations. The system has recorded the data collection operation. The agent // receives this command the next time it polls for a new command. OperationSucceeded *bool `locationName:"operationSucceeded" type:"boolean"` } // String returns the string representation func (s AgentConfigurationStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AgentConfigurationStatus) GoString() string { return s.String() } // Information about agents associated with the user’s AWS account. Information // includes agent IDs, IP addresses, media access control (MAC) addresses, agent // health, hostname where the agent resides, and agent version for each agent. type AgentInfo struct { _ struct{} `type:"structure"` // The agent ID. AgentId *string `locationName:"agentId" type:"string"` // Network details about the host where the agent resides. AgentNetworkInfoList []*AgentNetworkInfo `locationName:"agentNetworkInfoList" type:"list"` // This data type is currently not valid. ConnectorId *string `locationName:"connectorId" type:"string"` // The health of the agent. Health *string `locationName:"health" type:"string" enum:"AgentStatus"` // The name of the host where the agent resides. The host can be a server or // virtual machine. HostName *string `locationName:"hostName" type:"string"` // The agent version. Version *string `locationName:"version" type:"string"` } // String returns the string representation func (s AgentInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AgentInfo) GoString() string { return s.String() } // Network details about the host where the agent resides. type AgentNetworkInfo struct { _ struct{} `type:"structure"` // The IP address for the host where the agent resides. IpAddress *string `locationName:"ipAddress" type:"string"` // The MAC address for the host where the agent resides. MacAddress *string `locationName:"macAddress" type:"string"` } // String returns the string representation func (s AgentNetworkInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AgentNetworkInfo) GoString() string { return s.String() } // Tags for a configuration item. Tags are metadata that help you categorize // IT assets. type ConfigurationTag struct { _ struct{} `type:"structure"` // The configuration ID for the item you want to tag. You can specify a list // of keys and values. ConfigurationId *string `locationName:"configurationId" type:"string"` // A type of IT asset that you want to tag. ConfigurationType *string `locationName:"configurationType" type:"string" enum:"ConfigurationItemType"` // A type of tag to filter on. For example, serverType. Key *string `locationName:"key" type:"string"` // The time the configuration tag was created in Coordinated Universal Time // (UTC). TimeOfCreation *time.Time `locationName:"timeOfCreation" type:"timestamp" timestampFormat:"unix"` // A value to filter on. For example key = serverType and value = web server. Value *string `locationName:"value" type:"string"` } // String returns the string representation func (s ConfigurationTag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfigurationTag) GoString() string { return s.String() } type CreateTagsInput struct { _ struct{} `type:"structure"` // A list of configuration items that you want to tag. // // ConfigurationIds is a required field ConfigurationIds []*string `locationName:"configurationIds" type:"list" required:"true"` // Tags that you want to associate with one or more configuration items. Specify // the tags that you want to create in a key-value format. For example: // // {"key": "serverType", "value": "webServer"} // // Tags is a required field Tags []*Tag `locationName:"tags" locationNameList:"item" type:"list" required:"true"` } // String returns the string representation func (s CreateTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateTagsInput"} if s.ConfigurationIds == nil { invalidParams.Add(request.NewErrParamRequired("ConfigurationIds")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTagsOutput) GoString() string { return s.String() } type DeleteTagsInput struct { _ struct{} `type:"structure"` // A list of configuration items with tags that you want to delete. // // ConfigurationIds is a required field ConfigurationIds []*string `locationName:"configurationIds" type:"list" required:"true"` // Tags that you want to delete from one or more configuration items. Specify // the tags that you want to delete in a key-value format. For example: // // {"key": "serverType", "value": "webServer"} Tags []*Tag `locationName:"tags" locationNameList:"item" type:"list"` } // String returns the string representation func (s DeleteTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTagsInput"} if s.ConfigurationIds == nil { invalidParams.Add(request.NewErrParamRequired("ConfigurationIds")) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTagsOutput) GoString() string { return s.String() } type DescribeAgentsInput struct { _ struct{} `type:"structure"` // The agent IDs for which you want information. If you specify no IDs, the // system returns information about all agents associated with your AWS user // account. AgentIds []*string `locationName:"agentIds" type:"list"` // The total number of agents to return. The maximum value is 100. MaxResults *int64 `locationName:"maxResults" type:"integer"` // A token to start the list. Use this token to get the next set of results. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeAgentsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAgentsInput) GoString() string { return s.String() } type DescribeAgentsOutput struct { _ struct{} `type:"structure"` // Lists AWS agents by ID or lists all agents associated with your user account // if you did not specify an agent ID. The output includes agent IDs, IP addresses, // media access control (MAC) addresses, agent health, host name where the agent // resides, and the version number of each agent. AgentsInfo []*AgentInfo `locationName:"agentsInfo" type:"list"` // The call returns a token. Use this token to get the next set of results. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeAgentsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAgentsOutput) GoString() string { return s.String() } type DescribeConfigurationsInput struct { _ struct{} `type:"structure"` // One or more configuration IDs. // // ConfigurationIds is a required field ConfigurationIds []*string `locationName:"configurationIds" type:"list" required:"true"` } // String returns the string representation func (s DescribeConfigurationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConfigurationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeConfigurationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeConfigurationsInput"} if s.ConfigurationIds == nil { invalidParams.Add(request.NewErrParamRequired("ConfigurationIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeConfigurationsOutput struct { _ struct{} `type:"structure"` // A key in the response map. The value is an array of data. Configurations []map[string]*string `locationName:"configurations" type:"list"` } // String returns the string representation func (s DescribeConfigurationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConfigurationsOutput) GoString() string { return s.String() } type DescribeExportConfigurationsInput struct { _ struct{} `type:"structure"` // A unique identifier that you can use to query the export status. ExportIds []*string `locationName:"exportIds" type:"list"` // The maximum number of results that you want to display as a part of the query. MaxResults *int64 `locationName:"maxResults" type:"integer"` // A token to get the next set of results. For example, if you specified 100 // IDs for DescribeConfigurationsRequest$configurationIds but set DescribeExportConfigurationsRequest$maxResults // to 10, you will get results in a set of 10. Use the token in the query to // get the next set of 10. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeExportConfigurationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeExportConfigurationsInput) GoString() string { return s.String() } type DescribeExportConfigurationsOutput struct { _ struct{} `type:"structure"` // Returns export details. When the status is complete, the response includes // a URL for an Amazon S3 bucket where you can view the data in a CSV file. ExportsInfo []*ExportInfo `locationName:"exportsInfo" type:"list"` // A token to get the next set of results. For example, if you specified 100 // IDs for DescribeConfigurationsRequest$configurationIds but set DescribeExportConfigurationsRequest$maxResults // to 10, you will get results in a set of 10. Use the token in the query to // get the next set of 10. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeExportConfigurationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeExportConfigurationsOutput) GoString() string { return s.String() } type DescribeTagsInput struct { _ struct{} `type:"structure"` // You can filter the list using a key-value format. You can separate these // items by using logical operators. Allowed filters include tagKey, tagValue, // and configurationId. Filters []*TagFilter `locationName:"filters" type:"list"` // The total number of items to return. The maximum value is 100. MaxResults *int64 `locationName:"maxResults" type:"integer"` // A token to start the list. Use this token to get the next set of results. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTagsInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeTagsOutput struct { _ struct{} `type:"structure"` // The call returns a token. Use this token to get the next set of results. NextToken *string `locationName:"nextToken" type:"string"` // Depending on the input, this is a list of configuration items tagged with // a specific tag, or a list of tags for a specific configuration item. Tags []*ConfigurationTag `locationName:"tags" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsOutput) GoString() string { return s.String() } type ExportConfigurationsInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ExportConfigurationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExportConfigurationsInput) GoString() string { return s.String() } type ExportConfigurationsOutput struct { _ struct{} `type:"structure"` // A unique identifier that you can use to query the export status. ExportId *string `locationName:"exportId" type:"string"` } // String returns the string representation func (s ExportConfigurationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExportConfigurationsOutput) GoString() string { return s.String() } // Information regarding the export status of the discovered data. The value // is an array of objects. type ExportInfo struct { _ struct{} `type:"structure"` // A URL for an Amazon S3 bucket where you can review the configuration data. // The URL is displayed only if the export succeeded. ConfigurationsDownloadUrl *string `locationName:"configurationsDownloadUrl" type:"string"` // A unique identifier that you can use to query the export. // // ExportId is a required field ExportId *string `locationName:"exportId" type:"string" required:"true"` // The time the configuration data export was initiated. // // ExportRequestTime is a required field ExportRequestTime *time.Time `locationName:"exportRequestTime" type:"timestamp" timestampFormat:"unix" required:"true"` // The status of the configuration data export. The status can succeed, fail, // or be in-progress. // // ExportStatus is a required field ExportStatus *string `locationName:"exportStatus" type:"string" required:"true" enum:"ExportStatus"` // Helpful status messages for API callers. For example: Too many exports in // the last 6 hours. Export in progress. Export was successful. // // StatusMessage is a required field StatusMessage *string `locationName:"statusMessage" type:"string" required:"true"` } // String returns the string representation func (s ExportInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExportInfo) GoString() string { return s.String() } // A filter that can use conditional operators. type Filter struct { _ struct{} `type:"structure"` // A conditional operator. The following operators are valid: EQUALS, NOT_EQUALS, // CONTAINS, NOT_CONTAINS. If you specify multiple filters, the system utilizes // all filters as though concatenated by AND. If you specify multiple values // for a particular filter, the system differentiates the values using OR. Calling // either DescribeConfigurations or ListConfigurations returns attributes of // matching configuration items. // // Condition is a required field Condition *string `locationName:"condition" type:"string" required:"true"` // The name of the filter. The following filter names are allowed for SERVER // configuration items. // // Server // // * server.hostName // // * server.osName // // * server.osVersion // // * server.configurationid // // * server.agentid // // The name of the filter. The following filter names are allowed for PROCESS // configuration items. // // Process // // * process.configurationid // // * process.name // // * process.commandLine // // * server.configurationid // // * server.hostName // // * server.osName // // * server.osVersion // // * server.agentId // // The name of the filter. The following filter names are allowed for CONNECTION // configuration items. // // Connection // // * connection.sourceIp // // * connection.destinationIp // // * connection.destinationPort // // * sourceProcess.configurationId // // * sourceProcess.name // // * sourceProcess.commandLine // // * destinationProcess.configurationId // // * destinationProcess.name // // * destinationProcess.commandLine // // * sourceServer.configurationId // // * sourceServer.hostName // // * sourceServer.osName // // * sourceServer.osVersion // // * sourceServer.agentId // // * destinationServer.configurationId // // * destinationServer.hostName // // * destinationServer.osName // // * destinationServer.osVersion // // * destinationServer.agentId // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` // A string value that you want to filter on. For example, if you choose the // destinationServer.osVersion filter name, you could specify Ubuntu for the // value. // // Values is a required field Values []*string `locationName:"values" locationNameList:"item" type:"list" required:"true"` } // String returns the string representation func (s Filter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Filter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Filter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Filter"} if s.Condition == nil { invalidParams.Add(request.NewErrParamRequired("Condition")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Values == nil { invalidParams.Add(request.NewErrParamRequired("Values")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListConfigurationsInput struct { _ struct{} `type:"structure"` // A valid configuration identified by the Discovery Service. // // ConfigurationType is a required field ConfigurationType *string `locationName:"configurationType" type:"string" required:"true" enum:"ConfigurationItemType"` // You can filter the list using a key-value format. For example: // // {"key": "serverType", "value": "webServer"} // // You can separate these items by using logical operators. Filters []*Filter `locationName:"filters" type:"list"` // The total number of items to return. The maximum value is 100. MaxResults *int64 `locationName:"maxResults" type:"integer"` // A token to start the list. Use this token to get the next set of results. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListConfigurationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListConfigurationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListConfigurationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListConfigurationsInput"} if s.ConfigurationType == nil { invalidParams.Add(request.NewErrParamRequired("ConfigurationType")) } if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListConfigurationsOutput struct { _ struct{} `type:"structure"` // Returns configuration details, including the configuration ID, attribute // names, and attribute values. Configurations []map[string]*string `locationName:"configurations" type:"list"` // The call returns a token. Use this token to get the next set of results. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListConfigurationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListConfigurationsOutput) GoString() string { return s.String() } type StartDataCollectionByAgentIdsInput struct { _ struct{} `type:"structure"` // The IDs of the agents that you want to start collecting data. If you send // a request to an AWS agent ID that you do not have permission to contact, // according to your AWS account, the service does not throw an exception. Instead, // it returns the error in the Description field. If you send a request to multiple // agents and you do not have permission to contact some of those agents, the // system does not throw an exception. Instead, the system shows Failed in the // Description field. // // AgentIds is a required field AgentIds []*string `locationName:"agentIds" type:"list" required:"true"` } // String returns the string representation func (s StartDataCollectionByAgentIdsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartDataCollectionByAgentIdsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartDataCollectionByAgentIdsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartDataCollectionByAgentIdsInput"} if s.AgentIds == nil { invalidParams.Add(request.NewErrParamRequired("AgentIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type StartDataCollectionByAgentIdsOutput struct { _ struct{} `type:"structure"` // Information about agents that were instructed to start collecting data. Information // includes the agent ID, a description of the operation performed, and whether // or not the agent configuration was updated. AgentsConfigurationStatus []*AgentConfigurationStatus `locationName:"agentsConfigurationStatus" type:"list"` } // String returns the string representation func (s StartDataCollectionByAgentIdsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartDataCollectionByAgentIdsOutput) GoString() string { return s.String() } type StopDataCollectionByAgentIdsInput struct { _ struct{} `type:"structure"` // The IDs of the agents that you want to stop collecting data. // // AgentIds is a required field AgentIds []*string `locationName:"agentIds" type:"list" required:"true"` } // String returns the string representation func (s StopDataCollectionByAgentIdsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopDataCollectionByAgentIdsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StopDataCollectionByAgentIdsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StopDataCollectionByAgentIdsInput"} if s.AgentIds == nil { invalidParams.Add(request.NewErrParamRequired("AgentIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type StopDataCollectionByAgentIdsOutput struct { _ struct{} `type:"structure"` // Information about agents that were instructed to stop collecting data. Information // includes the agent ID, a description of the operation performed, and whether // or not the agent configuration was updated. AgentsConfigurationStatus []*AgentConfigurationStatus `locationName:"agentsConfigurationStatus" type:"list"` } // String returns the string representation func (s StopDataCollectionByAgentIdsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopDataCollectionByAgentIdsOutput) GoString() string { return s.String() } // Metadata that help you categorize IT assets. type Tag struct { _ struct{} `type:"structure"` // A type of tag to filter on. // // Key is a required field Key *string `locationName:"key" type:"string" required:"true"` // A value for a tag key to filter on. // // Value is a required field Value *string `locationName:"value" type:"string" required:"true"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The name of a tag filter. Valid names are: tagKey, tagValue, configurationId. type TagFilter struct { _ struct{} `type:"structure"` // A name of a tag filter. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` // Values of a tag filter. // // Values is a required field Values []*string `locationName:"values" locationNameList:"item" type:"list" required:"true"` } // String returns the string representation func (s TagFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TagFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TagFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TagFilter"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Values == nil { invalidParams.Add(request.NewErrParamRequired("Values")) } if invalidParams.Len() > 0 { return invalidParams } return nil } const ( // AgentStatusHealthy is a AgentStatus enum value AgentStatusHealthy = "HEALTHY" // AgentStatusUnhealthy is a AgentStatus enum value AgentStatusUnhealthy = "UNHEALTHY" // AgentStatusRunning is a AgentStatus enum value AgentStatusRunning = "RUNNING" // AgentStatusUnknown is a AgentStatus enum value AgentStatusUnknown = "UNKNOWN" // AgentStatusBlacklisted is a AgentStatus enum value AgentStatusBlacklisted = "BLACKLISTED" // AgentStatusShutdown is a AgentStatus enum value AgentStatusShutdown = "SHUTDOWN" ) const ( // ConfigurationItemTypeServer is a ConfigurationItemType enum value ConfigurationItemTypeServer = "SERVER" // ConfigurationItemTypeProcess is a ConfigurationItemType enum value ConfigurationItemTypeProcess = "PROCESS" // ConfigurationItemTypeConnection is a ConfigurationItemType enum value ConfigurationItemTypeConnection = "CONNECTION" ) const ( // ExportStatusFailed is a ExportStatus enum value ExportStatusFailed = "FAILED" // ExportStatusSucceeded is a ExportStatus enum value ExportStatusSucceeded = "SUCCEEDED" // ExportStatusInProgress is a ExportStatus enum value ExportStatusInProgress = "IN_PROGRESS" ) aws-sdk-go-1.4.22/service/applicationdiscoveryservice/applicationdiscoveryserviceiface/000077500000000000000000000000001300374646400316435ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/applicationdiscoveryservice/applicationdiscoveryserviceiface/interface.go000066400000000000000000000127241300374646400341400ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package applicationdiscoveryserviceiface provides an interface to enable mocking the AWS Application Discovery Service service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package applicationdiscoveryserviceiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/applicationdiscoveryservice" ) // ApplicationDiscoveryServiceAPI provides an interface to enable mocking the // applicationdiscoveryservice.ApplicationDiscoveryService service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Application Discovery Service. // func myFunc(svc applicationdiscoveryserviceiface.ApplicationDiscoveryServiceAPI) bool { // // Make svc.CreateTags request // } // // func main() { // sess := session.New() // svc := applicationdiscoveryservice.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockApplicationDiscoveryServiceClient struct { // applicationdiscoveryserviceiface.ApplicationDiscoveryServiceAPI // } // func (m *mockApplicationDiscoveryServiceClient) CreateTags(input *applicationdiscoveryservice.CreateTagsInput) (*applicationdiscoveryservice.CreateTagsOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockApplicationDiscoveryServiceClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type ApplicationDiscoveryServiceAPI interface { CreateTagsRequest(*applicationdiscoveryservice.CreateTagsInput) (*request.Request, *applicationdiscoveryservice.CreateTagsOutput) CreateTags(*applicationdiscoveryservice.CreateTagsInput) (*applicationdiscoveryservice.CreateTagsOutput, error) DeleteTagsRequest(*applicationdiscoveryservice.DeleteTagsInput) (*request.Request, *applicationdiscoveryservice.DeleteTagsOutput) DeleteTags(*applicationdiscoveryservice.DeleteTagsInput) (*applicationdiscoveryservice.DeleteTagsOutput, error) DescribeAgentsRequest(*applicationdiscoveryservice.DescribeAgentsInput) (*request.Request, *applicationdiscoveryservice.DescribeAgentsOutput) DescribeAgents(*applicationdiscoveryservice.DescribeAgentsInput) (*applicationdiscoveryservice.DescribeAgentsOutput, error) DescribeConfigurationsRequest(*applicationdiscoveryservice.DescribeConfigurationsInput) (*request.Request, *applicationdiscoveryservice.DescribeConfigurationsOutput) DescribeConfigurations(*applicationdiscoveryservice.DescribeConfigurationsInput) (*applicationdiscoveryservice.DescribeConfigurationsOutput, error) DescribeExportConfigurationsRequest(*applicationdiscoveryservice.DescribeExportConfigurationsInput) (*request.Request, *applicationdiscoveryservice.DescribeExportConfigurationsOutput) DescribeExportConfigurations(*applicationdiscoveryservice.DescribeExportConfigurationsInput) (*applicationdiscoveryservice.DescribeExportConfigurationsOutput, error) DescribeTagsRequest(*applicationdiscoveryservice.DescribeTagsInput) (*request.Request, *applicationdiscoveryservice.DescribeTagsOutput) DescribeTags(*applicationdiscoveryservice.DescribeTagsInput) (*applicationdiscoveryservice.DescribeTagsOutput, error) ExportConfigurationsRequest(*applicationdiscoveryservice.ExportConfigurationsInput) (*request.Request, *applicationdiscoveryservice.ExportConfigurationsOutput) ExportConfigurations(*applicationdiscoveryservice.ExportConfigurationsInput) (*applicationdiscoveryservice.ExportConfigurationsOutput, error) ListConfigurationsRequest(*applicationdiscoveryservice.ListConfigurationsInput) (*request.Request, *applicationdiscoveryservice.ListConfigurationsOutput) ListConfigurations(*applicationdiscoveryservice.ListConfigurationsInput) (*applicationdiscoveryservice.ListConfigurationsOutput, error) StartDataCollectionByAgentIdsRequest(*applicationdiscoveryservice.StartDataCollectionByAgentIdsInput) (*request.Request, *applicationdiscoveryservice.StartDataCollectionByAgentIdsOutput) StartDataCollectionByAgentIds(*applicationdiscoveryservice.StartDataCollectionByAgentIdsInput) (*applicationdiscoveryservice.StartDataCollectionByAgentIdsOutput, error) StopDataCollectionByAgentIdsRequest(*applicationdiscoveryservice.StopDataCollectionByAgentIdsInput) (*request.Request, *applicationdiscoveryservice.StopDataCollectionByAgentIdsOutput) StopDataCollectionByAgentIds(*applicationdiscoveryservice.StopDataCollectionByAgentIdsInput) (*applicationdiscoveryservice.StopDataCollectionByAgentIdsOutput, error) } var _ ApplicationDiscoveryServiceAPI = (*applicationdiscoveryservice.ApplicationDiscoveryService)(nil) aws-sdk-go-1.4.22/service/applicationdiscoveryservice/examples_test.go000066400000000000000000000172401300374646400262470ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package applicationdiscoveryservice_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/applicationdiscoveryservice" ) var _ time.Duration var _ bytes.Buffer func ExampleApplicationDiscoveryService_CreateTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := applicationdiscoveryservice.New(sess) params := &applicationdiscoveryservice.CreateTagsInput{ ConfigurationIds: []*string{ // Required aws.String("ConfigurationId"), // Required // More values... }, Tags: []*applicationdiscoveryservice.Tag{ // Required { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), // Required }, // More values... }, } resp, err := svc.CreateTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleApplicationDiscoveryService_DeleteTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := applicationdiscoveryservice.New(sess) params := &applicationdiscoveryservice.DeleteTagsInput{ ConfigurationIds: []*string{ // Required aws.String("ConfigurationId"), // Required // More values... }, Tags: []*applicationdiscoveryservice.Tag{ { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), // Required }, // More values... }, } resp, err := svc.DeleteTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleApplicationDiscoveryService_DescribeAgents() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := applicationdiscoveryservice.New(sess) params := &applicationdiscoveryservice.DescribeAgentsInput{ AgentIds: []*string{ aws.String("AgentId"), // Required // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.DescribeAgents(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleApplicationDiscoveryService_DescribeConfigurations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := applicationdiscoveryservice.New(sess) params := &applicationdiscoveryservice.DescribeConfigurationsInput{ ConfigurationIds: []*string{ // Required aws.String("ConfigurationId"), // Required // More values... }, } resp, err := svc.DescribeConfigurations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleApplicationDiscoveryService_DescribeExportConfigurations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := applicationdiscoveryservice.New(sess) params := &applicationdiscoveryservice.DescribeExportConfigurationsInput{ ExportIds: []*string{ aws.String("ConfigurationsExportId"), // Required // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.DescribeExportConfigurations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleApplicationDiscoveryService_DescribeTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := applicationdiscoveryservice.New(sess) params := &applicationdiscoveryservice.DescribeTagsInput{ Filters: []*applicationdiscoveryservice.TagFilter{ { // Required Name: aws.String("FilterName"), // Required Values: []*string{ // Required aws.String("FilterValue"), // Required // More values... }, }, // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.DescribeTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleApplicationDiscoveryService_ExportConfigurations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := applicationdiscoveryservice.New(sess) var params *applicationdiscoveryservice.ExportConfigurationsInput resp, err := svc.ExportConfigurations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleApplicationDiscoveryService_ListConfigurations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := applicationdiscoveryservice.New(sess) params := &applicationdiscoveryservice.ListConfigurationsInput{ ConfigurationType: aws.String("ConfigurationItemType"), // Required Filters: []*applicationdiscoveryservice.Filter{ { // Required Condition: aws.String("Condition"), // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("FilterValue"), // Required // More values... }, }, // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.ListConfigurations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleApplicationDiscoveryService_StartDataCollectionByAgentIds() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := applicationdiscoveryservice.New(sess) params := &applicationdiscoveryservice.StartDataCollectionByAgentIdsInput{ AgentIds: []*string{ // Required aws.String("AgentId"), // Required // More values... }, } resp, err := svc.StartDataCollectionByAgentIds(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleApplicationDiscoveryService_StopDataCollectionByAgentIds() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := applicationdiscoveryservice.New(sess) params := &applicationdiscoveryservice.StopDataCollectionByAgentIdsInput{ AgentIds: []*string{ // Required aws.String("AgentId"), // Required // More values... }, } resp, err := svc.StopDataCollectionByAgentIds(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/applicationdiscoveryservice/service.go000066400000000000000000000242641300374646400250360ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package applicationdiscoveryservice import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // The AWS Application Discovery Service helps Systems Integrators quickly and // reliably plan application migration projects by automatically identifying // applications running in on-premises data centers, their associated dependencies, // and their performance profile. // // Planning data center migrations can involve thousands of workloads that are // often deeply interdependent. Application discovery and dependency mapping // are important early first steps in the migration process, but difficult to // perform at scale due to the lack of automated tools. // // The AWS Application Discovery Service automatically collects configuration // and usage data from servers to develop a list of applications, how they perform, // and how they are interdependent. This information is securely retained in // an AWS Application Discovery Service database which you can export as a CSV // file into your preferred visualization tool or cloud migration solution to // help reduce the complexity and time in planning your cloud migration. // // The Application Discovery Service is currently available for preview. Only // customers who are engaged with AWS Professional Services (https://aws.amazon.com/professional-services/) // or a certified AWS partner can use the service. To see the list of certified // partners and request access to the Application Discovery Service, complete // the following preview form (http://aws.amazon.com/application-discovery/preview/). // // This API reference provides descriptions, syntax, and usage examples for // each of the actions and data types for the Discovery Service. The topic for // each action shows the API request parameters and the response. Alternatively, // you can use one of the AWS SDKs to access an API that is tailored to the // programming language or platform that you're using. For more information, // see AWS SDKs (http://aws.amazon.com/tools/#SDKs). // // This guide is intended for use with the AWS Discovery Service User Guide // (http://docs.aws.amazon.com/application-discovery/latest/userguide/what-is-appdiscovery.html). // // The following are short descriptions of each API action, organized by function. // // Managing AWS Agents Using the Application Discovery Service // // An AWS agent is software that you install on on-premises servers and virtual // machines that are targeted for discovery and migration. Agents run on Linux // and Windows Server and collect server configuration and activity information // about your applications and infrastructure. Specifically, agents collect // the following information and send it to the Application Discovery Service // using Secure Sockets Layer (SSL) encryption: // // * User information (user name, home directory) // // * Group information (name) // // * List of installed packages // // * List of kernel modules // // * All create and stop process events // // * DNS queries // // * NIC information // // * TCP/UDP process listening ports // // * TCPV4/V6 connections // // * Operating system information // // * System performance // // * Process performance // // The Application Discovery Service API includes the following actions to manage // AWS agents: // // * StartDataCollectionByAgentIds: Instructs the specified agents to start // collecting data. The Application Discovery Service takes several minutes // to receive and process data after you initiate data collection. // // * StopDataCollectionByAgentIds: Instructs the specified agents to stop // collecting data. // // * DescribeAgents: Lists AWS agents by ID or lists all agents associated // with your user account if you did not specify an agent ID. The output // includes agent IDs, IP addresses, media access control (MAC) addresses, // agent health, host name where the agent resides, and the version number // of each agent. // // Querying Configuration Items // // A configuration item is an IT asset that was discovered in your data center // by an AWS agent. When you use the Application Discovery Service, you can // specify filters and query specific configuration items. The service supports // Server, Process, and Connection configuration items. This means you can specify // a value for the following keys and query your IT assets: // // Server // // * server.HostName // // * server.osName // // * server.osVersion // // * server.configurationId // // * server.agentId // // Process // // * process.name // // * process.CommandLine // // * process.configurationId // // * server.hostName // // * server.osName // // * server.osVersion // // * server.configurationId // // * server.agentId // // Connection // // * connection.sourceIp // // * connection.sourcePort // // * connection.destinationIp // // * connection.destinationPort // // * sourceProcess.configurationId // // * sourceProcess.commandLine // // * sourceProcess.name // // * destinationProcessId.configurationId // // * destinationProcess.commandLine // // * destinationProcess.name // // * sourceServer.configurationId // // * sourceServer.hostName // // * sourceServer.osName // // * sourceServer.osVersion // // * destinationServer.configurationId // // * destinationServer.hostName // // * destinationServer.osName // // * destinationServer.osVersion // // The Application Discovery Service includes the following actions for querying // configuration items. // // * DescribeConfigurations: Retrieves a list of attributes for a specific // configuration ID. For example, the output for a server configuration item // includes a list of attributes about the server, including host name, operating // system, number of network cards, etc. // // * ListConfigurations: Retrieves a list of configuration items according // to the criteria you specify in a filter. The filter criteria identify // relationship requirements. For example, you can specify filter criteria // of process.name with values of nginx and apache. // // Tagging Discovered Configuration Items // // You can tag discovered configuration items. Tags are metadata that help you // categorize IT assets in your data center. Tags use a key-value format. For // example, {"key": "serverType", "value": "webServer"}. // // * CreateTags: Creates one or more tags for a configuration items. // // * DescribeTags: Retrieves a list of configuration items that are tagged // with a specific tag. Or, retrieves a list of all tags assigned to a specific // configuration item. // // * DeleteTags: Deletes the association between a configuration item and // one or more tags. // // Exporting Data // // You can export data as a CSV file to an Amazon S3 bucket or into your preferred // visualization tool or cloud migration solution to help reduce the complexity // and time in planning your cloud migration. // // * ExportConfigurations: Exports all discovered configuration data to an // Amazon S3 bucket. Data includes tags and tag associations, processes, // connections, servers, and system performance. This API returns an export // ID which you can query using the GetExportStatus API. // // * DescribeExportConfigurations: Gets the status of the data export. When // the export is complete, the service returns an Amazon S3 URL where you // can download CSV files that include the data. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type ApplicationDiscoveryService struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "discovery" // New creates a new instance of the ApplicationDiscoveryService client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a ApplicationDiscoveryService client from just a session. // svc := applicationdiscoveryservice.New(mySession) // // // Create a ApplicationDiscoveryService client with additional configuration // svc := applicationdiscoveryservice.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *ApplicationDiscoveryService { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *ApplicationDiscoveryService { svc := &ApplicationDiscoveryService{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-11-01", JSONVersion: "1.1", TargetPrefix: "AWSPoseidonService_V2015_11_01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a ApplicationDiscoveryService operation and runs any // custom request initialization. func (c *ApplicationDiscoveryService) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/autoscaling/000077500000000000000000000000001300374646400175345ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/autoscaling/api.go000066400000000000000000011415271300374646400206470ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package autoscaling provides a client for Auto Scaling. package autoscaling import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/query" ) const opAttachInstances = "AttachInstances" // AttachInstancesRequest generates a "aws/request.Request" representing the // client's request for the AttachInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AttachInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AttachInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AttachInstancesRequest method. // req, resp := client.AttachInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) AttachInstancesRequest(input *AttachInstancesInput) (req *request.Request, output *AttachInstancesOutput) { op := &request.Operation{ Name: opAttachInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AttachInstancesInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AttachInstancesOutput{} req.Data = output return } // AttachInstances API operation for Auto Scaling. // // Attaches one or more EC2 instances to the specified Auto Scaling group. // // When you attach instances, Auto Scaling increases the desired capacity of // the group by the number of instances being attached. If the number of instances // being attached plus the desired capacity of the group exceeds the maximum // size of the group, the operation fails. // // If there is a Classic load balancer attached to your Auto Scaling group, // the instances are also registered with the load balancer. If there are target // groups attached to your Auto Scaling group, the instances are also registered // with the target groups. // // For more information, see Attach EC2 Instances to Your Auto Scaling Group // (http://docs.aws.amazon.com/autoscaling/latest/userguide/attach-instance-asg.html) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation AttachInstances for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) AttachInstances(input *AttachInstancesInput) (*AttachInstancesOutput, error) { req, out := c.AttachInstancesRequest(input) err := req.Send() return out, err } const opAttachLoadBalancerTargetGroups = "AttachLoadBalancerTargetGroups" // AttachLoadBalancerTargetGroupsRequest generates a "aws/request.Request" representing the // client's request for the AttachLoadBalancerTargetGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AttachLoadBalancerTargetGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AttachLoadBalancerTargetGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AttachLoadBalancerTargetGroupsRequest method. // req, resp := client.AttachLoadBalancerTargetGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) AttachLoadBalancerTargetGroupsRequest(input *AttachLoadBalancerTargetGroupsInput) (req *request.Request, output *AttachLoadBalancerTargetGroupsOutput) { op := &request.Operation{ Name: opAttachLoadBalancerTargetGroups, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AttachLoadBalancerTargetGroupsInput{} } req = c.newRequest(op, input, output) output = &AttachLoadBalancerTargetGroupsOutput{} req.Data = output return } // AttachLoadBalancerTargetGroups API operation for Auto Scaling. // // Attaches one or more target groups to the specified Auto Scaling group. // // To describe the target groups for an Auto Scaling group, use DescribeLoadBalancerTargetGroups. // To detach the target group from the Auto Scaling group, use DetachLoadBalancerTargetGroups. // // For more information, see Attach a Load Balancer to Your Auto Scaling Group // (http://docs.aws.amazon.com/autoscaling/latest/userguide/attach-load-balancer-asg.html) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation AttachLoadBalancerTargetGroups for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) AttachLoadBalancerTargetGroups(input *AttachLoadBalancerTargetGroupsInput) (*AttachLoadBalancerTargetGroupsOutput, error) { req, out := c.AttachLoadBalancerTargetGroupsRequest(input) err := req.Send() return out, err } const opAttachLoadBalancers = "AttachLoadBalancers" // AttachLoadBalancersRequest generates a "aws/request.Request" representing the // client's request for the AttachLoadBalancers operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AttachLoadBalancers for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AttachLoadBalancers method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AttachLoadBalancersRequest method. // req, resp := client.AttachLoadBalancersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) AttachLoadBalancersRequest(input *AttachLoadBalancersInput) (req *request.Request, output *AttachLoadBalancersOutput) { op := &request.Operation{ Name: opAttachLoadBalancers, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AttachLoadBalancersInput{} } req = c.newRequest(op, input, output) output = &AttachLoadBalancersOutput{} req.Data = output return } // AttachLoadBalancers API operation for Auto Scaling. // // Attaches one or more Classic load balancers to the specified Auto Scaling // group. // // To attach an Application load balancer instead, see AttachLoadBalancerTargetGroups. // // To describe the load balancers for an Auto Scaling group, use DescribeLoadBalancers. // To detach the load balancer from the Auto Scaling group, use DetachLoadBalancers. // // For more information, see Attach a Load Balancer to Your Auto Scaling Group // (http://docs.aws.amazon.com/autoscaling/latest/userguide/attach-load-balancer-asg.html) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation AttachLoadBalancers for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) AttachLoadBalancers(input *AttachLoadBalancersInput) (*AttachLoadBalancersOutput, error) { req, out := c.AttachLoadBalancersRequest(input) err := req.Send() return out, err } const opCompleteLifecycleAction = "CompleteLifecycleAction" // CompleteLifecycleActionRequest generates a "aws/request.Request" representing the // client's request for the CompleteLifecycleAction operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CompleteLifecycleAction for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CompleteLifecycleAction method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CompleteLifecycleActionRequest method. // req, resp := client.CompleteLifecycleActionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) CompleteLifecycleActionRequest(input *CompleteLifecycleActionInput) (req *request.Request, output *CompleteLifecycleActionOutput) { op := &request.Operation{ Name: opCompleteLifecycleAction, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CompleteLifecycleActionInput{} } req = c.newRequest(op, input, output) output = &CompleteLifecycleActionOutput{} req.Data = output return } // CompleteLifecycleAction API operation for Auto Scaling. // // Completes the lifecycle action for the specified token or instance with the // specified result. // // This step is a part of the procedure for adding a lifecycle hook to an Auto // Scaling group: // // (Optional) Create a Lambda function and a rule that allows CloudWatch Events // to invoke your Lambda function when Auto Scaling launches or terminates instances. // // (Optional) Create a notification target and an IAM role. The target can be // either an Amazon SQS queue or an Amazon SNS topic. The role allows Auto Scaling // to publish lifecycle notifications to the target. // // Create the lifecycle hook. Specify whether the hook is used when the instances // launch or terminate. // // If you need more time, record the lifecycle action heartbeat to keep the // instance in a pending state. // // If you finish before the timeout period ends, complete the lifecycle action. // // For more information, see Auto Scaling Lifecycle (http://docs.aws.amazon.com/autoscaling/latest/userguide/AutoScalingGroupLifecycle.html) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation CompleteLifecycleAction for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) CompleteLifecycleAction(input *CompleteLifecycleActionInput) (*CompleteLifecycleActionOutput, error) { req, out := c.CompleteLifecycleActionRequest(input) err := req.Send() return out, err } const opCreateAutoScalingGroup = "CreateAutoScalingGroup" // CreateAutoScalingGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateAutoScalingGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateAutoScalingGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateAutoScalingGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateAutoScalingGroupRequest method. // req, resp := client.CreateAutoScalingGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) CreateAutoScalingGroupRequest(input *CreateAutoScalingGroupInput) (req *request.Request, output *CreateAutoScalingGroupOutput) { op := &request.Operation{ Name: opCreateAutoScalingGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateAutoScalingGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CreateAutoScalingGroupOutput{} req.Data = output return } // CreateAutoScalingGroup API operation for Auto Scaling. // // Creates an Auto Scaling group with the specified name and attributes. // // If you exceed your maximum limit of Auto Scaling groups, which by default // is 20 per region, the call fails. For information about viewing and updating // this limit, see DescribeAccountLimits. // // For more information, see Auto Scaling Groups (http://docs.aws.amazon.com/autoscaling/latest/userguide/AutoScalingGroup.html) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation CreateAutoScalingGroup for usage and error information. // // Returned Error Codes: // * AlreadyExists // You already have an Auto Scaling group or launch configuration with this // name. // // * LimitExceeded // You have already reached a limit for your Auto Scaling resources (for example, // groups, launch configurations, or lifecycle hooks). For more information, // see DescribeAccountLimits. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) CreateAutoScalingGroup(input *CreateAutoScalingGroupInput) (*CreateAutoScalingGroupOutput, error) { req, out := c.CreateAutoScalingGroupRequest(input) err := req.Send() return out, err } const opCreateLaunchConfiguration = "CreateLaunchConfiguration" // CreateLaunchConfigurationRequest generates a "aws/request.Request" representing the // client's request for the CreateLaunchConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateLaunchConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateLaunchConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateLaunchConfigurationRequest method. // req, resp := client.CreateLaunchConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) CreateLaunchConfigurationRequest(input *CreateLaunchConfigurationInput) (req *request.Request, output *CreateLaunchConfigurationOutput) { op := &request.Operation{ Name: opCreateLaunchConfiguration, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateLaunchConfigurationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CreateLaunchConfigurationOutput{} req.Data = output return } // CreateLaunchConfiguration API operation for Auto Scaling. // // Creates a launch configuration. // // If you exceed your maximum limit of launch configurations, which by default // is 100 per region, the call fails. For information about viewing and updating // this limit, see DescribeAccountLimits. // // For more information, see Launch Configurations (http://docs.aws.amazon.com/autoscaling/latest/userguide/LaunchConfiguration.html) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation CreateLaunchConfiguration for usage and error information. // // Returned Error Codes: // * AlreadyExists // You already have an Auto Scaling group or launch configuration with this // name. // // * LimitExceeded // You have already reached a limit for your Auto Scaling resources (for example, // groups, launch configurations, or lifecycle hooks). For more information, // see DescribeAccountLimits. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) CreateLaunchConfiguration(input *CreateLaunchConfigurationInput) (*CreateLaunchConfigurationOutput, error) { req, out := c.CreateLaunchConfigurationRequest(input) err := req.Send() return out, err } const opCreateOrUpdateTags = "CreateOrUpdateTags" // CreateOrUpdateTagsRequest generates a "aws/request.Request" representing the // client's request for the CreateOrUpdateTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateOrUpdateTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateOrUpdateTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateOrUpdateTagsRequest method. // req, resp := client.CreateOrUpdateTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) CreateOrUpdateTagsRequest(input *CreateOrUpdateTagsInput) (req *request.Request, output *CreateOrUpdateTagsOutput) { op := &request.Operation{ Name: opCreateOrUpdateTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateOrUpdateTagsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CreateOrUpdateTagsOutput{} req.Data = output return } // CreateOrUpdateTags API operation for Auto Scaling. // // Creates or updates tags for the specified Auto Scaling group. // // When you specify a tag with a key that already exists, the operation overwrites // the previous tag definition, and you do not get an error message. // // For more information, see Tagging Auto Scaling Groups and Instances (http://docs.aws.amazon.com/autoscaling/latest/userguide/autoscaling-tagging.html) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation CreateOrUpdateTags for usage and error information. // // Returned Error Codes: // * LimitExceeded // You have already reached a limit for your Auto Scaling resources (for example, // groups, launch configurations, or lifecycle hooks). For more information, // see DescribeAccountLimits. // // * AlreadyExists // You already have an Auto Scaling group or launch configuration with this // name. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) CreateOrUpdateTags(input *CreateOrUpdateTagsInput) (*CreateOrUpdateTagsOutput, error) { req, out := c.CreateOrUpdateTagsRequest(input) err := req.Send() return out, err } const opDeleteAutoScalingGroup = "DeleteAutoScalingGroup" // DeleteAutoScalingGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteAutoScalingGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteAutoScalingGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteAutoScalingGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteAutoScalingGroupRequest method. // req, resp := client.DeleteAutoScalingGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DeleteAutoScalingGroupRequest(input *DeleteAutoScalingGroupInput) (req *request.Request, output *DeleteAutoScalingGroupOutput) { op := &request.Operation{ Name: opDeleteAutoScalingGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteAutoScalingGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteAutoScalingGroupOutput{} req.Data = output return } // DeleteAutoScalingGroup API operation for Auto Scaling. // // Deletes the specified Auto Scaling group. // // If the group has instances or scaling activities in progress, you must specify // the option to force the deletion in order for it to succeed. // // If the group has policies, deleting the group deletes the policies, the underlying // alarm actions, and any alarm that no longer has an associated action. // // To remove instances from the Auto Scaling group before deleting it, call // DetachInstances with the list of instances and the option to decrement the // desired capacity so that Auto Scaling does not launch replacement instances. // // To terminate all instances before deleting the Auto Scaling group, call UpdateAutoScalingGroup // and set the minimum size and desired capacity of the Auto Scaling group to // zero. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DeleteAutoScalingGroup for usage and error information. // // Returned Error Codes: // * ScalingActivityInProgress // The operation can't be performed because there are scaling activities in // progress. // // * ResourceInUse // The operation can't be performed because the resource is in use. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DeleteAutoScalingGroup(input *DeleteAutoScalingGroupInput) (*DeleteAutoScalingGroupOutput, error) { req, out := c.DeleteAutoScalingGroupRequest(input) err := req.Send() return out, err } const opDeleteLaunchConfiguration = "DeleteLaunchConfiguration" // DeleteLaunchConfigurationRequest generates a "aws/request.Request" representing the // client's request for the DeleteLaunchConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteLaunchConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteLaunchConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteLaunchConfigurationRequest method. // req, resp := client.DeleteLaunchConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DeleteLaunchConfigurationRequest(input *DeleteLaunchConfigurationInput) (req *request.Request, output *DeleteLaunchConfigurationOutput) { op := &request.Operation{ Name: opDeleteLaunchConfiguration, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteLaunchConfigurationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteLaunchConfigurationOutput{} req.Data = output return } // DeleteLaunchConfiguration API operation for Auto Scaling. // // Deletes the specified launch configuration. // // The launch configuration must not be attached to an Auto Scaling group. When // this call completes, the launch configuration is no longer available for // use. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DeleteLaunchConfiguration for usage and error information. // // Returned Error Codes: // * ResourceInUse // The operation can't be performed because the resource is in use. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DeleteLaunchConfiguration(input *DeleteLaunchConfigurationInput) (*DeleteLaunchConfigurationOutput, error) { req, out := c.DeleteLaunchConfigurationRequest(input) err := req.Send() return out, err } const opDeleteLifecycleHook = "DeleteLifecycleHook" // DeleteLifecycleHookRequest generates a "aws/request.Request" representing the // client's request for the DeleteLifecycleHook operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteLifecycleHook for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteLifecycleHook method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteLifecycleHookRequest method. // req, resp := client.DeleteLifecycleHookRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DeleteLifecycleHookRequest(input *DeleteLifecycleHookInput) (req *request.Request, output *DeleteLifecycleHookOutput) { op := &request.Operation{ Name: opDeleteLifecycleHook, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteLifecycleHookInput{} } req = c.newRequest(op, input, output) output = &DeleteLifecycleHookOutput{} req.Data = output return } // DeleteLifecycleHook API operation for Auto Scaling. // // Deletes the specified lifecycle hook. // // If there are any outstanding lifecycle actions, they are completed first // (ABANDON for launching instances, CONTINUE for terminating instances). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DeleteLifecycleHook for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DeleteLifecycleHook(input *DeleteLifecycleHookInput) (*DeleteLifecycleHookOutput, error) { req, out := c.DeleteLifecycleHookRequest(input) err := req.Send() return out, err } const opDeleteNotificationConfiguration = "DeleteNotificationConfiguration" // DeleteNotificationConfigurationRequest generates a "aws/request.Request" representing the // client's request for the DeleteNotificationConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteNotificationConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteNotificationConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteNotificationConfigurationRequest method. // req, resp := client.DeleteNotificationConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DeleteNotificationConfigurationRequest(input *DeleteNotificationConfigurationInput) (req *request.Request, output *DeleteNotificationConfigurationOutput) { op := &request.Operation{ Name: opDeleteNotificationConfiguration, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteNotificationConfigurationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteNotificationConfigurationOutput{} req.Data = output return } // DeleteNotificationConfiguration API operation for Auto Scaling. // // Deletes the specified notification. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DeleteNotificationConfiguration for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DeleteNotificationConfiguration(input *DeleteNotificationConfigurationInput) (*DeleteNotificationConfigurationOutput, error) { req, out := c.DeleteNotificationConfigurationRequest(input) err := req.Send() return out, err } const opDeletePolicy = "DeletePolicy" // DeletePolicyRequest generates a "aws/request.Request" representing the // client's request for the DeletePolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeletePolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeletePolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeletePolicyRequest method. // req, resp := client.DeletePolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DeletePolicyRequest(input *DeletePolicyInput) (req *request.Request, output *DeletePolicyOutput) { op := &request.Operation{ Name: opDeletePolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeletePolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeletePolicyOutput{} req.Data = output return } // DeletePolicy API operation for Auto Scaling. // // Deletes the specified Auto Scaling policy. // // Deleting a policy deletes the underlying alarm action, but does not delete // the alarm, even if it no longer has an associated action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DeletePolicy for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DeletePolicy(input *DeletePolicyInput) (*DeletePolicyOutput, error) { req, out := c.DeletePolicyRequest(input) err := req.Send() return out, err } const opDeleteScheduledAction = "DeleteScheduledAction" // DeleteScheduledActionRequest generates a "aws/request.Request" representing the // client's request for the DeleteScheduledAction operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteScheduledAction for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteScheduledAction method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteScheduledActionRequest method. // req, resp := client.DeleteScheduledActionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DeleteScheduledActionRequest(input *DeleteScheduledActionInput) (req *request.Request, output *DeleteScheduledActionOutput) { op := &request.Operation{ Name: opDeleteScheduledAction, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteScheduledActionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteScheduledActionOutput{} req.Data = output return } // DeleteScheduledAction API operation for Auto Scaling. // // Deletes the specified scheduled action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DeleteScheduledAction for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DeleteScheduledAction(input *DeleteScheduledActionInput) (*DeleteScheduledActionOutput, error) { req, out := c.DeleteScheduledActionRequest(input) err := req.Send() return out, err } const opDeleteTags = "DeleteTags" // DeleteTagsRequest generates a "aws/request.Request" representing the // client's request for the DeleteTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteTagsRequest method. // req, resp := client.DeleteTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DeleteTagsRequest(input *DeleteTagsInput) (req *request.Request, output *DeleteTagsOutput) { op := &request.Operation{ Name: opDeleteTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteTagsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteTagsOutput{} req.Data = output return } // DeleteTags API operation for Auto Scaling. // // Deletes the specified tags. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DeleteTags for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DeleteTags(input *DeleteTagsInput) (*DeleteTagsOutput, error) { req, out := c.DeleteTagsRequest(input) err := req.Send() return out, err } const opDescribeAccountLimits = "DescribeAccountLimits" // DescribeAccountLimitsRequest generates a "aws/request.Request" representing the // client's request for the DescribeAccountLimits operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAccountLimits for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAccountLimits method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAccountLimitsRequest method. // req, resp := client.DescribeAccountLimitsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DescribeAccountLimitsRequest(input *DescribeAccountLimitsInput) (req *request.Request, output *DescribeAccountLimitsOutput) { op := &request.Operation{ Name: opDescribeAccountLimits, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAccountLimitsInput{} } req = c.newRequest(op, input, output) output = &DescribeAccountLimitsOutput{} req.Data = output return } // DescribeAccountLimits API operation for Auto Scaling. // // Describes the current Auto Scaling resource limits for your AWS account. // // For information about requesting an increase in these limits, see AWS Service // Limits (http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) // in the Amazon Web Services General Reference. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DescribeAccountLimits for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DescribeAccountLimits(input *DescribeAccountLimitsInput) (*DescribeAccountLimitsOutput, error) { req, out := c.DescribeAccountLimitsRequest(input) err := req.Send() return out, err } const opDescribeAdjustmentTypes = "DescribeAdjustmentTypes" // DescribeAdjustmentTypesRequest generates a "aws/request.Request" representing the // client's request for the DescribeAdjustmentTypes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAdjustmentTypes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAdjustmentTypes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAdjustmentTypesRequest method. // req, resp := client.DescribeAdjustmentTypesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DescribeAdjustmentTypesRequest(input *DescribeAdjustmentTypesInput) (req *request.Request, output *DescribeAdjustmentTypesOutput) { op := &request.Operation{ Name: opDescribeAdjustmentTypes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAdjustmentTypesInput{} } req = c.newRequest(op, input, output) output = &DescribeAdjustmentTypesOutput{} req.Data = output return } // DescribeAdjustmentTypes API operation for Auto Scaling. // // Describes the policy adjustment types for use with PutScalingPolicy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DescribeAdjustmentTypes for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DescribeAdjustmentTypes(input *DescribeAdjustmentTypesInput) (*DescribeAdjustmentTypesOutput, error) { req, out := c.DescribeAdjustmentTypesRequest(input) err := req.Send() return out, err } const opDescribeAutoScalingGroups = "DescribeAutoScalingGroups" // DescribeAutoScalingGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeAutoScalingGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAutoScalingGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAutoScalingGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAutoScalingGroupsRequest method. // req, resp := client.DescribeAutoScalingGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DescribeAutoScalingGroupsRequest(input *DescribeAutoScalingGroupsInput) (req *request.Request, output *DescribeAutoScalingGroupsOutput) { op := &request.Operation{ Name: opDescribeAutoScalingGroups, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeAutoScalingGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeAutoScalingGroupsOutput{} req.Data = output return } // DescribeAutoScalingGroups API operation for Auto Scaling. // // Describes one or more Auto Scaling groups. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DescribeAutoScalingGroups for usage and error information. // // Returned Error Codes: // * InvalidNextToken // The NextToken value is not valid. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DescribeAutoScalingGroups(input *DescribeAutoScalingGroupsInput) (*DescribeAutoScalingGroupsOutput, error) { req, out := c.DescribeAutoScalingGroupsRequest(input) err := req.Send() return out, err } // DescribeAutoScalingGroupsPages iterates over the pages of a DescribeAutoScalingGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeAutoScalingGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeAutoScalingGroups operation. // pageNum := 0 // err := client.DescribeAutoScalingGroupsPages(params, // func(page *DescribeAutoScalingGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *AutoScaling) DescribeAutoScalingGroupsPages(input *DescribeAutoScalingGroupsInput, fn func(p *DescribeAutoScalingGroupsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeAutoScalingGroupsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeAutoScalingGroupsOutput), lastPage) }) } const opDescribeAutoScalingInstances = "DescribeAutoScalingInstances" // DescribeAutoScalingInstancesRequest generates a "aws/request.Request" representing the // client's request for the DescribeAutoScalingInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAutoScalingInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAutoScalingInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAutoScalingInstancesRequest method. // req, resp := client.DescribeAutoScalingInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DescribeAutoScalingInstancesRequest(input *DescribeAutoScalingInstancesInput) (req *request.Request, output *DescribeAutoScalingInstancesOutput) { op := &request.Operation{ Name: opDescribeAutoScalingInstances, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeAutoScalingInstancesInput{} } req = c.newRequest(op, input, output) output = &DescribeAutoScalingInstancesOutput{} req.Data = output return } // DescribeAutoScalingInstances API operation for Auto Scaling. // // Describes one or more Auto Scaling instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DescribeAutoScalingInstances for usage and error information. // // Returned Error Codes: // * InvalidNextToken // The NextToken value is not valid. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DescribeAutoScalingInstances(input *DescribeAutoScalingInstancesInput) (*DescribeAutoScalingInstancesOutput, error) { req, out := c.DescribeAutoScalingInstancesRequest(input) err := req.Send() return out, err } // DescribeAutoScalingInstancesPages iterates over the pages of a DescribeAutoScalingInstances operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeAutoScalingInstances method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeAutoScalingInstances operation. // pageNum := 0 // err := client.DescribeAutoScalingInstancesPages(params, // func(page *DescribeAutoScalingInstancesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *AutoScaling) DescribeAutoScalingInstancesPages(input *DescribeAutoScalingInstancesInput, fn func(p *DescribeAutoScalingInstancesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeAutoScalingInstancesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeAutoScalingInstancesOutput), lastPage) }) } const opDescribeAutoScalingNotificationTypes = "DescribeAutoScalingNotificationTypes" // DescribeAutoScalingNotificationTypesRequest generates a "aws/request.Request" representing the // client's request for the DescribeAutoScalingNotificationTypes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAutoScalingNotificationTypes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAutoScalingNotificationTypes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAutoScalingNotificationTypesRequest method. // req, resp := client.DescribeAutoScalingNotificationTypesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DescribeAutoScalingNotificationTypesRequest(input *DescribeAutoScalingNotificationTypesInput) (req *request.Request, output *DescribeAutoScalingNotificationTypesOutput) { op := &request.Operation{ Name: opDescribeAutoScalingNotificationTypes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAutoScalingNotificationTypesInput{} } req = c.newRequest(op, input, output) output = &DescribeAutoScalingNotificationTypesOutput{} req.Data = output return } // DescribeAutoScalingNotificationTypes API operation for Auto Scaling. // // Describes the notification types that are supported by Auto Scaling. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DescribeAutoScalingNotificationTypes for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DescribeAutoScalingNotificationTypes(input *DescribeAutoScalingNotificationTypesInput) (*DescribeAutoScalingNotificationTypesOutput, error) { req, out := c.DescribeAutoScalingNotificationTypesRequest(input) err := req.Send() return out, err } const opDescribeLaunchConfigurations = "DescribeLaunchConfigurations" // DescribeLaunchConfigurationsRequest generates a "aws/request.Request" representing the // client's request for the DescribeLaunchConfigurations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLaunchConfigurations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLaunchConfigurations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLaunchConfigurationsRequest method. // req, resp := client.DescribeLaunchConfigurationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DescribeLaunchConfigurationsRequest(input *DescribeLaunchConfigurationsInput) (req *request.Request, output *DescribeLaunchConfigurationsOutput) { op := &request.Operation{ Name: opDescribeLaunchConfigurations, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeLaunchConfigurationsInput{} } req = c.newRequest(op, input, output) output = &DescribeLaunchConfigurationsOutput{} req.Data = output return } // DescribeLaunchConfigurations API operation for Auto Scaling. // // Describes one or more launch configurations. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DescribeLaunchConfigurations for usage and error information. // // Returned Error Codes: // * InvalidNextToken // The NextToken value is not valid. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DescribeLaunchConfigurations(input *DescribeLaunchConfigurationsInput) (*DescribeLaunchConfigurationsOutput, error) { req, out := c.DescribeLaunchConfigurationsRequest(input) err := req.Send() return out, err } // DescribeLaunchConfigurationsPages iterates over the pages of a DescribeLaunchConfigurations operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeLaunchConfigurations method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeLaunchConfigurations operation. // pageNum := 0 // err := client.DescribeLaunchConfigurationsPages(params, // func(page *DescribeLaunchConfigurationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *AutoScaling) DescribeLaunchConfigurationsPages(input *DescribeLaunchConfigurationsInput, fn func(p *DescribeLaunchConfigurationsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeLaunchConfigurationsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeLaunchConfigurationsOutput), lastPage) }) } const opDescribeLifecycleHookTypes = "DescribeLifecycleHookTypes" // DescribeLifecycleHookTypesRequest generates a "aws/request.Request" representing the // client's request for the DescribeLifecycleHookTypes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLifecycleHookTypes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLifecycleHookTypes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLifecycleHookTypesRequest method. // req, resp := client.DescribeLifecycleHookTypesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DescribeLifecycleHookTypesRequest(input *DescribeLifecycleHookTypesInput) (req *request.Request, output *DescribeLifecycleHookTypesOutput) { op := &request.Operation{ Name: opDescribeLifecycleHookTypes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeLifecycleHookTypesInput{} } req = c.newRequest(op, input, output) output = &DescribeLifecycleHookTypesOutput{} req.Data = output return } // DescribeLifecycleHookTypes API operation for Auto Scaling. // // Describes the available types of lifecycle hooks. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DescribeLifecycleHookTypes for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DescribeLifecycleHookTypes(input *DescribeLifecycleHookTypesInput) (*DescribeLifecycleHookTypesOutput, error) { req, out := c.DescribeLifecycleHookTypesRequest(input) err := req.Send() return out, err } const opDescribeLifecycleHooks = "DescribeLifecycleHooks" // DescribeLifecycleHooksRequest generates a "aws/request.Request" representing the // client's request for the DescribeLifecycleHooks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLifecycleHooks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLifecycleHooks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLifecycleHooksRequest method. // req, resp := client.DescribeLifecycleHooksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DescribeLifecycleHooksRequest(input *DescribeLifecycleHooksInput) (req *request.Request, output *DescribeLifecycleHooksOutput) { op := &request.Operation{ Name: opDescribeLifecycleHooks, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeLifecycleHooksInput{} } req = c.newRequest(op, input, output) output = &DescribeLifecycleHooksOutput{} req.Data = output return } // DescribeLifecycleHooks API operation for Auto Scaling. // // Describes the lifecycle hooks for the specified Auto Scaling group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DescribeLifecycleHooks for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DescribeLifecycleHooks(input *DescribeLifecycleHooksInput) (*DescribeLifecycleHooksOutput, error) { req, out := c.DescribeLifecycleHooksRequest(input) err := req.Send() return out, err } const opDescribeLoadBalancerTargetGroups = "DescribeLoadBalancerTargetGroups" // DescribeLoadBalancerTargetGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeLoadBalancerTargetGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLoadBalancerTargetGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLoadBalancerTargetGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLoadBalancerTargetGroupsRequest method. // req, resp := client.DescribeLoadBalancerTargetGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DescribeLoadBalancerTargetGroupsRequest(input *DescribeLoadBalancerTargetGroupsInput) (req *request.Request, output *DescribeLoadBalancerTargetGroupsOutput) { op := &request.Operation{ Name: opDescribeLoadBalancerTargetGroups, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeLoadBalancerTargetGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeLoadBalancerTargetGroupsOutput{} req.Data = output return } // DescribeLoadBalancerTargetGroups API operation for Auto Scaling. // // Describes the target groups for the specified Auto Scaling group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DescribeLoadBalancerTargetGroups for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DescribeLoadBalancerTargetGroups(input *DescribeLoadBalancerTargetGroupsInput) (*DescribeLoadBalancerTargetGroupsOutput, error) { req, out := c.DescribeLoadBalancerTargetGroupsRequest(input) err := req.Send() return out, err } const opDescribeLoadBalancers = "DescribeLoadBalancers" // DescribeLoadBalancersRequest generates a "aws/request.Request" representing the // client's request for the DescribeLoadBalancers operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLoadBalancers for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLoadBalancers method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLoadBalancersRequest method. // req, resp := client.DescribeLoadBalancersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DescribeLoadBalancersRequest(input *DescribeLoadBalancersInput) (req *request.Request, output *DescribeLoadBalancersOutput) { op := &request.Operation{ Name: opDescribeLoadBalancers, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeLoadBalancersInput{} } req = c.newRequest(op, input, output) output = &DescribeLoadBalancersOutput{} req.Data = output return } // DescribeLoadBalancers API operation for Auto Scaling. // // Describes the load balancers for the specified Auto Scaling group. // // Note that this operation describes only Classic load balancers. If you have // Application load balancers, use DescribeLoadBalancerTargetGroups instead. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DescribeLoadBalancers for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DescribeLoadBalancers(input *DescribeLoadBalancersInput) (*DescribeLoadBalancersOutput, error) { req, out := c.DescribeLoadBalancersRequest(input) err := req.Send() return out, err } const opDescribeMetricCollectionTypes = "DescribeMetricCollectionTypes" // DescribeMetricCollectionTypesRequest generates a "aws/request.Request" representing the // client's request for the DescribeMetricCollectionTypes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeMetricCollectionTypes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeMetricCollectionTypes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeMetricCollectionTypesRequest method. // req, resp := client.DescribeMetricCollectionTypesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DescribeMetricCollectionTypesRequest(input *DescribeMetricCollectionTypesInput) (req *request.Request, output *DescribeMetricCollectionTypesOutput) { op := &request.Operation{ Name: opDescribeMetricCollectionTypes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeMetricCollectionTypesInput{} } req = c.newRequest(op, input, output) output = &DescribeMetricCollectionTypesOutput{} req.Data = output return } // DescribeMetricCollectionTypes API operation for Auto Scaling. // // Describes the available CloudWatch metrics for Auto Scaling. // // Note that the GroupStandbyInstances metric is not returned by default. You // must explicitly request this metric when calling EnableMetricsCollection. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DescribeMetricCollectionTypes for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DescribeMetricCollectionTypes(input *DescribeMetricCollectionTypesInput) (*DescribeMetricCollectionTypesOutput, error) { req, out := c.DescribeMetricCollectionTypesRequest(input) err := req.Send() return out, err } const opDescribeNotificationConfigurations = "DescribeNotificationConfigurations" // DescribeNotificationConfigurationsRequest generates a "aws/request.Request" representing the // client's request for the DescribeNotificationConfigurations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeNotificationConfigurations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeNotificationConfigurations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeNotificationConfigurationsRequest method. // req, resp := client.DescribeNotificationConfigurationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DescribeNotificationConfigurationsRequest(input *DescribeNotificationConfigurationsInput) (req *request.Request, output *DescribeNotificationConfigurationsOutput) { op := &request.Operation{ Name: opDescribeNotificationConfigurations, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeNotificationConfigurationsInput{} } req = c.newRequest(op, input, output) output = &DescribeNotificationConfigurationsOutput{} req.Data = output return } // DescribeNotificationConfigurations API operation for Auto Scaling. // // Describes the notification actions associated with the specified Auto Scaling // group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DescribeNotificationConfigurations for usage and error information. // // Returned Error Codes: // * InvalidNextToken // The NextToken value is not valid. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DescribeNotificationConfigurations(input *DescribeNotificationConfigurationsInput) (*DescribeNotificationConfigurationsOutput, error) { req, out := c.DescribeNotificationConfigurationsRequest(input) err := req.Send() return out, err } // DescribeNotificationConfigurationsPages iterates over the pages of a DescribeNotificationConfigurations operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeNotificationConfigurations method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeNotificationConfigurations operation. // pageNum := 0 // err := client.DescribeNotificationConfigurationsPages(params, // func(page *DescribeNotificationConfigurationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *AutoScaling) DescribeNotificationConfigurationsPages(input *DescribeNotificationConfigurationsInput, fn func(p *DescribeNotificationConfigurationsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeNotificationConfigurationsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeNotificationConfigurationsOutput), lastPage) }) } const opDescribePolicies = "DescribePolicies" // DescribePoliciesRequest generates a "aws/request.Request" representing the // client's request for the DescribePolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribePolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribePolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribePoliciesRequest method. // req, resp := client.DescribePoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DescribePoliciesRequest(input *DescribePoliciesInput) (req *request.Request, output *DescribePoliciesOutput) { op := &request.Operation{ Name: opDescribePolicies, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribePoliciesInput{} } req = c.newRequest(op, input, output) output = &DescribePoliciesOutput{} req.Data = output return } // DescribePolicies API operation for Auto Scaling. // // Describes the policies for the specified Auto Scaling group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DescribePolicies for usage and error information. // // Returned Error Codes: // * InvalidNextToken // The NextToken value is not valid. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DescribePolicies(input *DescribePoliciesInput) (*DescribePoliciesOutput, error) { req, out := c.DescribePoliciesRequest(input) err := req.Send() return out, err } // DescribePoliciesPages iterates over the pages of a DescribePolicies operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribePolicies method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribePolicies operation. // pageNum := 0 // err := client.DescribePoliciesPages(params, // func(page *DescribePoliciesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *AutoScaling) DescribePoliciesPages(input *DescribePoliciesInput, fn func(p *DescribePoliciesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribePoliciesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribePoliciesOutput), lastPage) }) } const opDescribeScalingActivities = "DescribeScalingActivities" // DescribeScalingActivitiesRequest generates a "aws/request.Request" representing the // client's request for the DescribeScalingActivities operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeScalingActivities for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeScalingActivities method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeScalingActivitiesRequest method. // req, resp := client.DescribeScalingActivitiesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DescribeScalingActivitiesRequest(input *DescribeScalingActivitiesInput) (req *request.Request, output *DescribeScalingActivitiesOutput) { op := &request.Operation{ Name: opDescribeScalingActivities, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeScalingActivitiesInput{} } req = c.newRequest(op, input, output) output = &DescribeScalingActivitiesOutput{} req.Data = output return } // DescribeScalingActivities API operation for Auto Scaling. // // Describes one or more scaling activities for the specified Auto Scaling group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DescribeScalingActivities for usage and error information. // // Returned Error Codes: // * InvalidNextToken // The NextToken value is not valid. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DescribeScalingActivities(input *DescribeScalingActivitiesInput) (*DescribeScalingActivitiesOutput, error) { req, out := c.DescribeScalingActivitiesRequest(input) err := req.Send() return out, err } // DescribeScalingActivitiesPages iterates over the pages of a DescribeScalingActivities operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeScalingActivities method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeScalingActivities operation. // pageNum := 0 // err := client.DescribeScalingActivitiesPages(params, // func(page *DescribeScalingActivitiesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *AutoScaling) DescribeScalingActivitiesPages(input *DescribeScalingActivitiesInput, fn func(p *DescribeScalingActivitiesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeScalingActivitiesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeScalingActivitiesOutput), lastPage) }) } const opDescribeScalingProcessTypes = "DescribeScalingProcessTypes" // DescribeScalingProcessTypesRequest generates a "aws/request.Request" representing the // client's request for the DescribeScalingProcessTypes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeScalingProcessTypes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeScalingProcessTypes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeScalingProcessTypesRequest method. // req, resp := client.DescribeScalingProcessTypesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DescribeScalingProcessTypesRequest(input *DescribeScalingProcessTypesInput) (req *request.Request, output *DescribeScalingProcessTypesOutput) { op := &request.Operation{ Name: opDescribeScalingProcessTypes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeScalingProcessTypesInput{} } req = c.newRequest(op, input, output) output = &DescribeScalingProcessTypesOutput{} req.Data = output return } // DescribeScalingProcessTypes API operation for Auto Scaling. // // Describes the scaling process types for use with ResumeProcesses and SuspendProcesses. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DescribeScalingProcessTypes for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DescribeScalingProcessTypes(input *DescribeScalingProcessTypesInput) (*DescribeScalingProcessTypesOutput, error) { req, out := c.DescribeScalingProcessTypesRequest(input) err := req.Send() return out, err } const opDescribeScheduledActions = "DescribeScheduledActions" // DescribeScheduledActionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeScheduledActions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeScheduledActions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeScheduledActions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeScheduledActionsRequest method. // req, resp := client.DescribeScheduledActionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DescribeScheduledActionsRequest(input *DescribeScheduledActionsInput) (req *request.Request, output *DescribeScheduledActionsOutput) { op := &request.Operation{ Name: opDescribeScheduledActions, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeScheduledActionsInput{} } req = c.newRequest(op, input, output) output = &DescribeScheduledActionsOutput{} req.Data = output return } // DescribeScheduledActions API operation for Auto Scaling. // // Describes the actions scheduled for your Auto Scaling group that haven't // run. To describe the actions that have already run, use DescribeScalingActivities. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DescribeScheduledActions for usage and error information. // // Returned Error Codes: // * InvalidNextToken // The NextToken value is not valid. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DescribeScheduledActions(input *DescribeScheduledActionsInput) (*DescribeScheduledActionsOutput, error) { req, out := c.DescribeScheduledActionsRequest(input) err := req.Send() return out, err } // DescribeScheduledActionsPages iterates over the pages of a DescribeScheduledActions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeScheduledActions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeScheduledActions operation. // pageNum := 0 // err := client.DescribeScheduledActionsPages(params, // func(page *DescribeScheduledActionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *AutoScaling) DescribeScheduledActionsPages(input *DescribeScheduledActionsInput, fn func(p *DescribeScheduledActionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeScheduledActionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeScheduledActionsOutput), lastPage) }) } const opDescribeTags = "DescribeTags" // DescribeTagsRequest generates a "aws/request.Request" representing the // client's request for the DescribeTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTagsRequest method. // req, resp := client.DescribeTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DescribeTagsRequest(input *DescribeTagsInput) (req *request.Request, output *DescribeTagsOutput) { op := &request.Operation{ Name: opDescribeTags, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeTagsInput{} } req = c.newRequest(op, input, output) output = &DescribeTagsOutput{} req.Data = output return } // DescribeTags API operation for Auto Scaling. // // Describes the specified tags. // // You can use filters to limit the results. For example, you can query for // the tags for a specific Auto Scaling group. You can specify multiple values // for a filter. A tag must match at least one of the specified values for it // to be included in the results. // // You can also specify multiple filters. The result includes information for // a particular tag only if it matches all the filters. If there's no match, // no special message is returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DescribeTags for usage and error information. // // Returned Error Codes: // * InvalidNextToken // The NextToken value is not valid. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DescribeTags(input *DescribeTagsInput) (*DescribeTagsOutput, error) { req, out := c.DescribeTagsRequest(input) err := req.Send() return out, err } // DescribeTagsPages iterates over the pages of a DescribeTags operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeTags method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeTags operation. // pageNum := 0 // err := client.DescribeTagsPages(params, // func(page *DescribeTagsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *AutoScaling) DescribeTagsPages(input *DescribeTagsInput, fn func(p *DescribeTagsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeTagsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeTagsOutput), lastPage) }) } const opDescribeTerminationPolicyTypes = "DescribeTerminationPolicyTypes" // DescribeTerminationPolicyTypesRequest generates a "aws/request.Request" representing the // client's request for the DescribeTerminationPolicyTypes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTerminationPolicyTypes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTerminationPolicyTypes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTerminationPolicyTypesRequest method. // req, resp := client.DescribeTerminationPolicyTypesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DescribeTerminationPolicyTypesRequest(input *DescribeTerminationPolicyTypesInput) (req *request.Request, output *DescribeTerminationPolicyTypesOutput) { op := &request.Operation{ Name: opDescribeTerminationPolicyTypes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTerminationPolicyTypesInput{} } req = c.newRequest(op, input, output) output = &DescribeTerminationPolicyTypesOutput{} req.Data = output return } // DescribeTerminationPolicyTypes API operation for Auto Scaling. // // Describes the termination policies supported by Auto Scaling. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DescribeTerminationPolicyTypes for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DescribeTerminationPolicyTypes(input *DescribeTerminationPolicyTypesInput) (*DescribeTerminationPolicyTypesOutput, error) { req, out := c.DescribeTerminationPolicyTypesRequest(input) err := req.Send() return out, err } const opDetachInstances = "DetachInstances" // DetachInstancesRequest generates a "aws/request.Request" representing the // client's request for the DetachInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DetachInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DetachInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DetachInstancesRequest method. // req, resp := client.DetachInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DetachInstancesRequest(input *DetachInstancesInput) (req *request.Request, output *DetachInstancesOutput) { op := &request.Operation{ Name: opDetachInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DetachInstancesInput{} } req = c.newRequest(op, input, output) output = &DetachInstancesOutput{} req.Data = output return } // DetachInstances API operation for Auto Scaling. // // Removes one or more instances from the specified Auto Scaling group. // // After the instances are detached, you can manage them independently from // the rest of the Auto Scaling group. // // If you do not specify the option to decrement the desired capacity, Auto // Scaling launches instances to replace the ones that are detached. // // If there is a Classic load balancer attached to the Auto Scaling group, the // instances are deregistered from the load balancer. If there are target groups // attached to the Auto Scaling group, the instances are deregistered from the // target groups. // // For more information, see Detach EC2 Instances from Your Auto Scaling Group // (http://docs.aws.amazon.com/autoscaling/latest/userguide/detach-instance-asg.html) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DetachInstances for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DetachInstances(input *DetachInstancesInput) (*DetachInstancesOutput, error) { req, out := c.DetachInstancesRequest(input) err := req.Send() return out, err } const opDetachLoadBalancerTargetGroups = "DetachLoadBalancerTargetGroups" // DetachLoadBalancerTargetGroupsRequest generates a "aws/request.Request" representing the // client's request for the DetachLoadBalancerTargetGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DetachLoadBalancerTargetGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DetachLoadBalancerTargetGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DetachLoadBalancerTargetGroupsRequest method. // req, resp := client.DetachLoadBalancerTargetGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DetachLoadBalancerTargetGroupsRequest(input *DetachLoadBalancerTargetGroupsInput) (req *request.Request, output *DetachLoadBalancerTargetGroupsOutput) { op := &request.Operation{ Name: opDetachLoadBalancerTargetGroups, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DetachLoadBalancerTargetGroupsInput{} } req = c.newRequest(op, input, output) output = &DetachLoadBalancerTargetGroupsOutput{} req.Data = output return } // DetachLoadBalancerTargetGroups API operation for Auto Scaling. // // Detaches one or more target groups from the specified Auto Scaling group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DetachLoadBalancerTargetGroups for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DetachLoadBalancerTargetGroups(input *DetachLoadBalancerTargetGroupsInput) (*DetachLoadBalancerTargetGroupsOutput, error) { req, out := c.DetachLoadBalancerTargetGroupsRequest(input) err := req.Send() return out, err } const opDetachLoadBalancers = "DetachLoadBalancers" // DetachLoadBalancersRequest generates a "aws/request.Request" representing the // client's request for the DetachLoadBalancers operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DetachLoadBalancers for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DetachLoadBalancers method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DetachLoadBalancersRequest method. // req, resp := client.DetachLoadBalancersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DetachLoadBalancersRequest(input *DetachLoadBalancersInput) (req *request.Request, output *DetachLoadBalancersOutput) { op := &request.Operation{ Name: opDetachLoadBalancers, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DetachLoadBalancersInput{} } req = c.newRequest(op, input, output) output = &DetachLoadBalancersOutput{} req.Data = output return } // DetachLoadBalancers API operation for Auto Scaling. // // Detaches one or more Classic load balancers from the specified Auto Scaling // group. // // Note that this operation detaches only Classic load balancers. If you have // Application load balancers, use DetachLoadBalancerTargetGroups instead. // // When you detach a load balancer, it enters the Removing state while deregistering // the instances in the group. When all instances are deregistered, then you // can no longer describe the load balancer using DescribeLoadBalancers. Note // that the instances remain running. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DetachLoadBalancers for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DetachLoadBalancers(input *DetachLoadBalancersInput) (*DetachLoadBalancersOutput, error) { req, out := c.DetachLoadBalancersRequest(input) err := req.Send() return out, err } const opDisableMetricsCollection = "DisableMetricsCollection" // DisableMetricsCollectionRequest generates a "aws/request.Request" representing the // client's request for the DisableMetricsCollection operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableMetricsCollection for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableMetricsCollection method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableMetricsCollectionRequest method. // req, resp := client.DisableMetricsCollectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) DisableMetricsCollectionRequest(input *DisableMetricsCollectionInput) (req *request.Request, output *DisableMetricsCollectionOutput) { op := &request.Operation{ Name: opDisableMetricsCollection, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableMetricsCollectionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DisableMetricsCollectionOutput{} req.Data = output return } // DisableMetricsCollection API operation for Auto Scaling. // // Disables group metrics for the specified Auto Scaling group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation DisableMetricsCollection for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) DisableMetricsCollection(input *DisableMetricsCollectionInput) (*DisableMetricsCollectionOutput, error) { req, out := c.DisableMetricsCollectionRequest(input) err := req.Send() return out, err } const opEnableMetricsCollection = "EnableMetricsCollection" // EnableMetricsCollectionRequest generates a "aws/request.Request" representing the // client's request for the EnableMetricsCollection operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableMetricsCollection for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableMetricsCollection method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableMetricsCollectionRequest method. // req, resp := client.EnableMetricsCollectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) EnableMetricsCollectionRequest(input *EnableMetricsCollectionInput) (req *request.Request, output *EnableMetricsCollectionOutput) { op := &request.Operation{ Name: opEnableMetricsCollection, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableMetricsCollectionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &EnableMetricsCollectionOutput{} req.Data = output return } // EnableMetricsCollection API operation for Auto Scaling. // // Enables group metrics for the specified Auto Scaling group. For more information, // see Monitoring Your Auto Scaling Groups and Instances (http://docs.aws.amazon.com/autoscaling/latest/userguide/as-instance-monitoring.html) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation EnableMetricsCollection for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) EnableMetricsCollection(input *EnableMetricsCollectionInput) (*EnableMetricsCollectionOutput, error) { req, out := c.EnableMetricsCollectionRequest(input) err := req.Send() return out, err } const opEnterStandby = "EnterStandby" // EnterStandbyRequest generates a "aws/request.Request" representing the // client's request for the EnterStandby operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnterStandby for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnterStandby method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnterStandbyRequest method. // req, resp := client.EnterStandbyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) EnterStandbyRequest(input *EnterStandbyInput) (req *request.Request, output *EnterStandbyOutput) { op := &request.Operation{ Name: opEnterStandby, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnterStandbyInput{} } req = c.newRequest(op, input, output) output = &EnterStandbyOutput{} req.Data = output return } // EnterStandby API operation for Auto Scaling. // // Moves the specified instances into Standby mode. // // For more information, see Auto Scaling Lifecycle (http://docs.aws.amazon.com/autoscaling/latest/userguide/AutoScalingGroupLifecycle.html) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation EnterStandby for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) EnterStandby(input *EnterStandbyInput) (*EnterStandbyOutput, error) { req, out := c.EnterStandbyRequest(input) err := req.Send() return out, err } const opExecutePolicy = "ExecutePolicy" // ExecutePolicyRequest generates a "aws/request.Request" representing the // client's request for the ExecutePolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ExecutePolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ExecutePolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ExecutePolicyRequest method. // req, resp := client.ExecutePolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) ExecutePolicyRequest(input *ExecutePolicyInput) (req *request.Request, output *ExecutePolicyOutput) { op := &request.Operation{ Name: opExecutePolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ExecutePolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ExecutePolicyOutput{} req.Data = output return } // ExecutePolicy API operation for Auto Scaling. // // Executes the specified policy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation ExecutePolicy for usage and error information. // // Returned Error Codes: // * ScalingActivityInProgress // The operation can't be performed because there are scaling activities in // progress. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) ExecutePolicy(input *ExecutePolicyInput) (*ExecutePolicyOutput, error) { req, out := c.ExecutePolicyRequest(input) err := req.Send() return out, err } const opExitStandby = "ExitStandby" // ExitStandbyRequest generates a "aws/request.Request" representing the // client's request for the ExitStandby operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ExitStandby for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ExitStandby method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ExitStandbyRequest method. // req, resp := client.ExitStandbyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) ExitStandbyRequest(input *ExitStandbyInput) (req *request.Request, output *ExitStandbyOutput) { op := &request.Operation{ Name: opExitStandby, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ExitStandbyInput{} } req = c.newRequest(op, input, output) output = &ExitStandbyOutput{} req.Data = output return } // ExitStandby API operation for Auto Scaling. // // Moves the specified instances out of Standby mode. // // For more information, see Auto Scaling Lifecycle (http://docs.aws.amazon.com/autoscaling/latest/userguide/AutoScalingGroupLifecycle.html) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation ExitStandby for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) ExitStandby(input *ExitStandbyInput) (*ExitStandbyOutput, error) { req, out := c.ExitStandbyRequest(input) err := req.Send() return out, err } const opPutLifecycleHook = "PutLifecycleHook" // PutLifecycleHookRequest generates a "aws/request.Request" representing the // client's request for the PutLifecycleHook operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutLifecycleHook for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutLifecycleHook method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutLifecycleHookRequest method. // req, resp := client.PutLifecycleHookRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) PutLifecycleHookRequest(input *PutLifecycleHookInput) (req *request.Request, output *PutLifecycleHookOutput) { op := &request.Operation{ Name: opPutLifecycleHook, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutLifecycleHookInput{} } req = c.newRequest(op, input, output) output = &PutLifecycleHookOutput{} req.Data = output return } // PutLifecycleHook API operation for Auto Scaling. // // Creates or updates a lifecycle hook for the specified Auto Scaling Group. // // A lifecycle hook tells Auto Scaling that you want to perform an action on // an instance that is not actively in service; for example, either when the // instance launches or before the instance terminates. // // This step is a part of the procedure for adding a lifecycle hook to an Auto // Scaling group: // // (Optional) Create a Lambda function and a rule that allows CloudWatch Events // to invoke your Lambda function when Auto Scaling launches or terminates instances. // // (Optional) Create a notification target and an IAM role. The target can be // either an Amazon SQS queue or an Amazon SNS topic. The role allows Auto Scaling // to publish lifecycle notifications to the target. // // Create the lifecycle hook. Specify whether the hook is used when the instances // launch or terminate. // // If you need more time, record the lifecycle action heartbeat to keep the // instance in a pending state. // // If you finish before the timeout period ends, complete the lifecycle action. // // For more information, see Auto Scaling Lifecycle Hooks (http://docs.aws.amazon.com/autoscaling/latest/userguide/lifecycle-hooks.html) // in the Auto Scaling User Guide. // // If you exceed your maximum limit of lifecycle hooks, which by default is // 50 per Auto Scaling group, the call fails. For information about updating // this limit, see AWS Service Limits (http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) // in the Amazon Web Services General Reference. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation PutLifecycleHook for usage and error information. // // Returned Error Codes: // * LimitExceeded // You have already reached a limit for your Auto Scaling resources (for example, // groups, launch configurations, or lifecycle hooks). For more information, // see DescribeAccountLimits. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) PutLifecycleHook(input *PutLifecycleHookInput) (*PutLifecycleHookOutput, error) { req, out := c.PutLifecycleHookRequest(input) err := req.Send() return out, err } const opPutNotificationConfiguration = "PutNotificationConfiguration" // PutNotificationConfigurationRequest generates a "aws/request.Request" representing the // client's request for the PutNotificationConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutNotificationConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutNotificationConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutNotificationConfigurationRequest method. // req, resp := client.PutNotificationConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) PutNotificationConfigurationRequest(input *PutNotificationConfigurationInput) (req *request.Request, output *PutNotificationConfigurationOutput) { op := &request.Operation{ Name: opPutNotificationConfiguration, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutNotificationConfigurationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutNotificationConfigurationOutput{} req.Data = output return } // PutNotificationConfiguration API operation for Auto Scaling. // // Configures an Auto Scaling group to send notifications when specified events // take place. Subscribers to the specified topic can have messages delivered // to an endpoint such as a web server or an email address. // // This configuration overwrites any existing configuration. // // For more information see Getting SNS Notifications When Your Auto Scaling // Group Scales (http://docs.aws.amazon.com/autoscaling/latest/userguide/ASGettingNotifications.html) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation PutNotificationConfiguration for usage and error information. // // Returned Error Codes: // * LimitExceeded // You have already reached a limit for your Auto Scaling resources (for example, // groups, launch configurations, or lifecycle hooks). For more information, // see DescribeAccountLimits. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) PutNotificationConfiguration(input *PutNotificationConfigurationInput) (*PutNotificationConfigurationOutput, error) { req, out := c.PutNotificationConfigurationRequest(input) err := req.Send() return out, err } const opPutScalingPolicy = "PutScalingPolicy" // PutScalingPolicyRequest generates a "aws/request.Request" representing the // client's request for the PutScalingPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutScalingPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutScalingPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutScalingPolicyRequest method. // req, resp := client.PutScalingPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) PutScalingPolicyRequest(input *PutScalingPolicyInput) (req *request.Request, output *PutScalingPolicyOutput) { op := &request.Operation{ Name: opPutScalingPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutScalingPolicyInput{} } req = c.newRequest(op, input, output) output = &PutScalingPolicyOutput{} req.Data = output return } // PutScalingPolicy API operation for Auto Scaling. // // Creates or updates a policy for an Auto Scaling group. To update an existing // policy, use the existing policy name and set the parameters you want to change. // Any existing parameter not changed in an update to an existing policy is // not changed in this update request. // // If you exceed your maximum limit of step adjustments, which by default is // 20 per region, the call fails. For information about updating this limit, // see AWS Service Limits (http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) // in the Amazon Web Services General Reference. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation PutScalingPolicy for usage and error information. // // Returned Error Codes: // * LimitExceeded // You have already reached a limit for your Auto Scaling resources (for example, // groups, launch configurations, or lifecycle hooks). For more information, // see DescribeAccountLimits. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) PutScalingPolicy(input *PutScalingPolicyInput) (*PutScalingPolicyOutput, error) { req, out := c.PutScalingPolicyRequest(input) err := req.Send() return out, err } const opPutScheduledUpdateGroupAction = "PutScheduledUpdateGroupAction" // PutScheduledUpdateGroupActionRequest generates a "aws/request.Request" representing the // client's request for the PutScheduledUpdateGroupAction operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutScheduledUpdateGroupAction for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutScheduledUpdateGroupAction method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutScheduledUpdateGroupActionRequest method. // req, resp := client.PutScheduledUpdateGroupActionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) PutScheduledUpdateGroupActionRequest(input *PutScheduledUpdateGroupActionInput) (req *request.Request, output *PutScheduledUpdateGroupActionOutput) { op := &request.Operation{ Name: opPutScheduledUpdateGroupAction, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutScheduledUpdateGroupActionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutScheduledUpdateGroupActionOutput{} req.Data = output return } // PutScheduledUpdateGroupAction API operation for Auto Scaling. // // Creates or updates a scheduled scaling action for an Auto Scaling group. // When updating a scheduled scaling action, if you leave a parameter unspecified, // the corresponding value remains unchanged. // // For more information, see Scheduled Scaling (http://docs.aws.amazon.com/autoscaling/latest/userguide/schedule_time.html) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation PutScheduledUpdateGroupAction for usage and error information. // // Returned Error Codes: // * AlreadyExists // You already have an Auto Scaling group or launch configuration with this // name. // // * LimitExceeded // You have already reached a limit for your Auto Scaling resources (for example, // groups, launch configurations, or lifecycle hooks). For more information, // see DescribeAccountLimits. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) PutScheduledUpdateGroupAction(input *PutScheduledUpdateGroupActionInput) (*PutScheduledUpdateGroupActionOutput, error) { req, out := c.PutScheduledUpdateGroupActionRequest(input) err := req.Send() return out, err } const opRecordLifecycleActionHeartbeat = "RecordLifecycleActionHeartbeat" // RecordLifecycleActionHeartbeatRequest generates a "aws/request.Request" representing the // client's request for the RecordLifecycleActionHeartbeat operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RecordLifecycleActionHeartbeat for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RecordLifecycleActionHeartbeat method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RecordLifecycleActionHeartbeatRequest method. // req, resp := client.RecordLifecycleActionHeartbeatRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) RecordLifecycleActionHeartbeatRequest(input *RecordLifecycleActionHeartbeatInput) (req *request.Request, output *RecordLifecycleActionHeartbeatOutput) { op := &request.Operation{ Name: opRecordLifecycleActionHeartbeat, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RecordLifecycleActionHeartbeatInput{} } req = c.newRequest(op, input, output) output = &RecordLifecycleActionHeartbeatOutput{} req.Data = output return } // RecordLifecycleActionHeartbeat API operation for Auto Scaling. // // Records a heartbeat for the lifecycle action associated with the specified // token or instance. This extends the timeout by the length of time defined // using PutLifecycleHook. // // This step is a part of the procedure for adding a lifecycle hook to an Auto // Scaling group: // // (Optional) Create a Lambda function and a rule that allows CloudWatch Events // to invoke your Lambda function when Auto Scaling launches or terminates instances. // // (Optional) Create a notification target and an IAM role. The target can be // either an Amazon SQS queue or an Amazon SNS topic. The role allows Auto Scaling // to publish lifecycle notifications to the target. // // Create the lifecycle hook. Specify whether the hook is used when the instances // launch or terminate. // // If you need more time, record the lifecycle action heartbeat to keep the // instance in a pending state. // // If you finish before the timeout period ends, complete the lifecycle action. // // For more information, see Auto Scaling Lifecycle (http://docs.aws.amazon.com/autoscaling/latest/userguide/AutoScalingGroupLifecycle.html) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation RecordLifecycleActionHeartbeat for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) RecordLifecycleActionHeartbeat(input *RecordLifecycleActionHeartbeatInput) (*RecordLifecycleActionHeartbeatOutput, error) { req, out := c.RecordLifecycleActionHeartbeatRequest(input) err := req.Send() return out, err } const opResumeProcesses = "ResumeProcesses" // ResumeProcessesRequest generates a "aws/request.Request" representing the // client's request for the ResumeProcesses operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ResumeProcesses for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ResumeProcesses method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ResumeProcessesRequest method. // req, resp := client.ResumeProcessesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) ResumeProcessesRequest(input *ScalingProcessQuery) (req *request.Request, output *ResumeProcessesOutput) { op := &request.Operation{ Name: opResumeProcesses, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ScalingProcessQuery{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ResumeProcessesOutput{} req.Data = output return } // ResumeProcesses API operation for Auto Scaling. // // Resumes the specified suspended Auto Scaling processes, or all suspended // process, for the specified Auto Scaling group. // // For more information, see Suspending and Resuming Auto Scaling Processes // (http://docs.aws.amazon.com/autoscaling/latest/userguide/as-suspend-resume-processes.html) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation ResumeProcesses for usage and error information. // // Returned Error Codes: // * ResourceInUse // The operation can't be performed because the resource is in use. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) ResumeProcesses(input *ScalingProcessQuery) (*ResumeProcessesOutput, error) { req, out := c.ResumeProcessesRequest(input) err := req.Send() return out, err } const opSetDesiredCapacity = "SetDesiredCapacity" // SetDesiredCapacityRequest generates a "aws/request.Request" representing the // client's request for the SetDesiredCapacity operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetDesiredCapacity for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetDesiredCapacity method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetDesiredCapacityRequest method. // req, resp := client.SetDesiredCapacityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) SetDesiredCapacityRequest(input *SetDesiredCapacityInput) (req *request.Request, output *SetDesiredCapacityOutput) { op := &request.Operation{ Name: opSetDesiredCapacity, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetDesiredCapacityInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetDesiredCapacityOutput{} req.Data = output return } // SetDesiredCapacity API operation for Auto Scaling. // // Sets the size of the specified Auto Scaling group. // // For more information about desired capacity, see What Is Auto Scaling? (http://docs.aws.amazon.com/autoscaling/latest/userguide/WhatIsAutoScaling.html) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation SetDesiredCapacity for usage and error information. // // Returned Error Codes: // * ScalingActivityInProgress // The operation can't be performed because there are scaling activities in // progress. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) SetDesiredCapacity(input *SetDesiredCapacityInput) (*SetDesiredCapacityOutput, error) { req, out := c.SetDesiredCapacityRequest(input) err := req.Send() return out, err } const opSetInstanceHealth = "SetInstanceHealth" // SetInstanceHealthRequest generates a "aws/request.Request" representing the // client's request for the SetInstanceHealth operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetInstanceHealth for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetInstanceHealth method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetInstanceHealthRequest method. // req, resp := client.SetInstanceHealthRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) SetInstanceHealthRequest(input *SetInstanceHealthInput) (req *request.Request, output *SetInstanceHealthOutput) { op := &request.Operation{ Name: opSetInstanceHealth, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetInstanceHealthInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetInstanceHealthOutput{} req.Data = output return } // SetInstanceHealth API operation for Auto Scaling. // // Sets the health status of the specified instance. // // For more information, see Health Checks (http://docs.aws.amazon.com/autoscaling/latest/userguide/healthcheck.html) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation SetInstanceHealth for usage and error information. // // Returned Error Codes: // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) SetInstanceHealth(input *SetInstanceHealthInput) (*SetInstanceHealthOutput, error) { req, out := c.SetInstanceHealthRequest(input) err := req.Send() return out, err } const opSetInstanceProtection = "SetInstanceProtection" // SetInstanceProtectionRequest generates a "aws/request.Request" representing the // client's request for the SetInstanceProtection operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetInstanceProtection for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetInstanceProtection method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetInstanceProtectionRequest method. // req, resp := client.SetInstanceProtectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) SetInstanceProtectionRequest(input *SetInstanceProtectionInput) (req *request.Request, output *SetInstanceProtectionOutput) { op := &request.Operation{ Name: opSetInstanceProtection, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetInstanceProtectionInput{} } req = c.newRequest(op, input, output) output = &SetInstanceProtectionOutput{} req.Data = output return } // SetInstanceProtection API operation for Auto Scaling. // // Updates the instance protection settings of the specified instances. // // For more information, see Instance Protection (http://docs.aws.amazon.com/autoscaling/latest/userguide/as-instance-termination.html#instance-protection) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation SetInstanceProtection for usage and error information. // // Returned Error Codes: // * LimitExceeded // You have already reached a limit for your Auto Scaling resources (for example, // groups, launch configurations, or lifecycle hooks). For more information, // see DescribeAccountLimits. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) SetInstanceProtection(input *SetInstanceProtectionInput) (*SetInstanceProtectionOutput, error) { req, out := c.SetInstanceProtectionRequest(input) err := req.Send() return out, err } const opSuspendProcesses = "SuspendProcesses" // SuspendProcessesRequest generates a "aws/request.Request" representing the // client's request for the SuspendProcesses operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SuspendProcesses for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SuspendProcesses method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SuspendProcessesRequest method. // req, resp := client.SuspendProcessesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) SuspendProcessesRequest(input *ScalingProcessQuery) (req *request.Request, output *SuspendProcessesOutput) { op := &request.Operation{ Name: opSuspendProcesses, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ScalingProcessQuery{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SuspendProcessesOutput{} req.Data = output return } // SuspendProcesses API operation for Auto Scaling. // // Suspends the specified Auto Scaling processes, or all processes, for the // specified Auto Scaling group. // // Note that if you suspend either the Launch or Terminate process types, it // can prevent other process types from functioning properly. // // To resume processes that have been suspended, use ResumeProcesses. // // For more information, see Suspending and Resuming Auto Scaling Processes // (http://docs.aws.amazon.com/autoscaling/latest/userguide/as-suspend-resume-processes.html) // in the Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation SuspendProcesses for usage and error information. // // Returned Error Codes: // * ResourceInUse // The operation can't be performed because the resource is in use. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) SuspendProcesses(input *ScalingProcessQuery) (*SuspendProcessesOutput, error) { req, out := c.SuspendProcessesRequest(input) err := req.Send() return out, err } const opTerminateInstanceInAutoScalingGroup = "TerminateInstanceInAutoScalingGroup" // TerminateInstanceInAutoScalingGroupRequest generates a "aws/request.Request" representing the // client's request for the TerminateInstanceInAutoScalingGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See TerminateInstanceInAutoScalingGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the TerminateInstanceInAutoScalingGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the TerminateInstanceInAutoScalingGroupRequest method. // req, resp := client.TerminateInstanceInAutoScalingGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) TerminateInstanceInAutoScalingGroupRequest(input *TerminateInstanceInAutoScalingGroupInput) (req *request.Request, output *TerminateInstanceInAutoScalingGroupOutput) { op := &request.Operation{ Name: opTerminateInstanceInAutoScalingGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &TerminateInstanceInAutoScalingGroupInput{} } req = c.newRequest(op, input, output) output = &TerminateInstanceInAutoScalingGroupOutput{} req.Data = output return } // TerminateInstanceInAutoScalingGroup API operation for Auto Scaling. // // Terminates the specified instance and optionally adjusts the desired group // size. // // This call simply makes a termination request. The instance is not terminated // immediately. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation TerminateInstanceInAutoScalingGroup for usage and error information. // // Returned Error Codes: // * ScalingActivityInProgress // The operation can't be performed because there are scaling activities in // progress. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) TerminateInstanceInAutoScalingGroup(input *TerminateInstanceInAutoScalingGroupInput) (*TerminateInstanceInAutoScalingGroupOutput, error) { req, out := c.TerminateInstanceInAutoScalingGroupRequest(input) err := req.Send() return out, err } const opUpdateAutoScalingGroup = "UpdateAutoScalingGroup" // UpdateAutoScalingGroupRequest generates a "aws/request.Request" representing the // client's request for the UpdateAutoScalingGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateAutoScalingGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateAutoScalingGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateAutoScalingGroupRequest method. // req, resp := client.UpdateAutoScalingGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *AutoScaling) UpdateAutoScalingGroupRequest(input *UpdateAutoScalingGroupInput) (req *request.Request, output *UpdateAutoScalingGroupOutput) { op := &request.Operation{ Name: opUpdateAutoScalingGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateAutoScalingGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateAutoScalingGroupOutput{} req.Data = output return } // UpdateAutoScalingGroup API operation for Auto Scaling. // // Updates the configuration for the specified Auto Scaling group. // // To update an Auto Scaling group with a launch configuration with InstanceMonitoring // set to False, you must first disable the collection of group metrics. Otherwise, // you will get an error. If you have previously enabled the collection of group // metrics, you can disable it using DisableMetricsCollection. // // The new settings are registered upon the completion of this call. Any launch // configuration settings take effect on any triggers after this call returns. // Scaling activities that are currently in progress aren't affected. // // Note the following: // // * If you specify a new value for MinSize without specifying a value for // DesiredCapacity, and the new MinSize is larger than the current size of // the group, we implicitly call SetDesiredCapacity to set the size of the // group to the new value of MinSize. // // * If you specify a new value for MaxSize without specifying a value for // DesiredCapacity, and the new MaxSize is smaller than the current size // of the group, we implicitly call SetDesiredCapacity to set the size of // the group to the new value of MaxSize. // // * All other optional parameters are left unchanged if not specified. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Auto Scaling's // API operation UpdateAutoScalingGroup for usage and error information. // // Returned Error Codes: // * ScalingActivityInProgress // The operation can't be performed because there are scaling activities in // progress. // // * ResourceContention // You already have a pending update to an Auto Scaling resource (for example, // a group, instance, or load balancer). // func (c *AutoScaling) UpdateAutoScalingGroup(input *UpdateAutoScalingGroupInput) (*UpdateAutoScalingGroupOutput, error) { req, out := c.UpdateAutoScalingGroupRequest(input) err := req.Send() return out, err } // Describes scaling activity, which is a long-running process that represents // a change to your Auto Scaling group, such as changing its size or replacing // an instance. type Activity struct { _ struct{} `type:"structure"` // The ID of the activity. // // ActivityId is a required field ActivityId *string `type:"string" required:"true"` // The name of the Auto Scaling group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // The reason the activity began. // // Cause is a required field Cause *string `min:"1" type:"string" required:"true"` // A friendly, more verbose description of the activity. Description *string `type:"string"` // The details about the activity. Details *string `type:"string"` // The end time of the activity. EndTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // A value between 0 and 100 that indicates the progress of the activity. Progress *int64 `type:"integer"` // The start time of the activity. // // StartTime is a required field StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The current status of the activity. // // StatusCode is a required field StatusCode *string `type:"string" required:"true" enum:"ScalingActivityStatusCode"` // A friendly, more verbose description of the activity status. StatusMessage *string `min:"1" type:"string"` } // String returns the string representation func (s Activity) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Activity) GoString() string { return s.String() } // Describes a policy adjustment type. // // For more information, see Dynamic Scaling (http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/as-scale-based-on-demand.html) // in the Auto Scaling User Guide. type AdjustmentType struct { _ struct{} `type:"structure"` // The policy adjustment type. The valid values are ChangeInCapacity, ExactCapacity, // and PercentChangeInCapacity. AdjustmentType *string `min:"1" type:"string"` } // String returns the string representation func (s AdjustmentType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdjustmentType) GoString() string { return s.String() } // Describes an alarm. type Alarm struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the alarm. AlarmARN *string `min:"1" type:"string"` // The name of the alarm. AlarmName *string `min:"1" type:"string"` } // String returns the string representation func (s Alarm) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Alarm) GoString() string { return s.String() } // Contains the parameters for AttachInstances. type AttachInstancesInput struct { _ struct{} `type:"structure"` // The name of the group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // One or more instance IDs. InstanceIds []*string `type:"list"` } // String returns the string representation func (s AttachInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttachInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttachInstancesInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AttachInstancesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AttachInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachInstancesOutput) GoString() string { return s.String() } // Contains the parameters for AttachLoadBalancerTargetGroups. type AttachLoadBalancerTargetGroupsInput struct { _ struct{} `type:"structure"` // The name of the Auto Scaling group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // The Amazon Resource Names (ARN) of the target groups. // // TargetGroupARNs is a required field TargetGroupARNs []*string `type:"list" required:"true"` } // String returns the string representation func (s AttachLoadBalancerTargetGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachLoadBalancerTargetGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttachLoadBalancerTargetGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttachLoadBalancerTargetGroupsInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.TargetGroupARNs == nil { invalidParams.Add(request.NewErrParamRequired("TargetGroupARNs")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AttachLoadBalancerTargetGroupsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AttachLoadBalancerTargetGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachLoadBalancerTargetGroupsOutput) GoString() string { return s.String() } // Contains the parameters for AttachLoadBalancers. type AttachLoadBalancersInput struct { _ struct{} `type:"structure"` // The name of the group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // One or more load balancer names. // // LoadBalancerNames is a required field LoadBalancerNames []*string `type:"list" required:"true"` } // String returns the string representation func (s AttachLoadBalancersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachLoadBalancersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttachLoadBalancersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttachLoadBalancersInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.LoadBalancerNames == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerNames")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of AttachLoadBalancers. type AttachLoadBalancersOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AttachLoadBalancersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachLoadBalancersOutput) GoString() string { return s.String() } // Describes a block device mapping. type BlockDeviceMapping struct { _ struct{} `type:"structure"` // The device name exposed to the EC2 instance (for example, /dev/sdh or xvdh). // // DeviceName is a required field DeviceName *string `min:"1" type:"string" required:"true"` // The information about the Amazon EBS volume. Ebs *Ebs `type:"structure"` // Suppresses a device mapping. // // If this parameter is true for the root device, the instance might fail the // EC2 health check. Auto Scaling launches a replacement instance if the instance // fails the health check. NoDevice *bool `type:"boolean"` // The name of the virtual device (for example, ephemeral0). VirtualName *string `min:"1" type:"string"` } // String returns the string representation func (s BlockDeviceMapping) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BlockDeviceMapping) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BlockDeviceMapping) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BlockDeviceMapping"} if s.DeviceName == nil { invalidParams.Add(request.NewErrParamRequired("DeviceName")) } if s.DeviceName != nil && len(*s.DeviceName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeviceName", 1)) } if s.VirtualName != nil && len(*s.VirtualName) < 1 { invalidParams.Add(request.NewErrParamMinLen("VirtualName", 1)) } if s.Ebs != nil { if err := s.Ebs.Validate(); err != nil { invalidParams.AddNested("Ebs", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for CompleteLifecycleAction. type CompleteLifecycleActionInput struct { _ struct{} `type:"structure"` // The name of the group for the lifecycle hook. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // The ID of the instance. InstanceId *string `min:"1" type:"string"` // The action for the group to take. This parameter can be either CONTINUE or // ABANDON. // // LifecycleActionResult is a required field LifecycleActionResult *string `type:"string" required:"true"` // A universally unique identifier (UUID) that identifies a specific lifecycle // action associated with an instance. Auto Scaling sends this token to the // notification target you specified when you created the lifecycle hook. LifecycleActionToken *string `min:"36" type:"string"` // The name of the lifecycle hook. // // LifecycleHookName is a required field LifecycleHookName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CompleteLifecycleActionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CompleteLifecycleActionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CompleteLifecycleActionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CompleteLifecycleActionInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.InstanceId != nil && len(*s.InstanceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) } if s.LifecycleActionResult == nil { invalidParams.Add(request.NewErrParamRequired("LifecycleActionResult")) } if s.LifecycleActionToken != nil && len(*s.LifecycleActionToken) < 36 { invalidParams.Add(request.NewErrParamMinLen("LifecycleActionToken", 36)) } if s.LifecycleHookName == nil { invalidParams.Add(request.NewErrParamRequired("LifecycleHookName")) } if s.LifecycleHookName != nil && len(*s.LifecycleHookName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LifecycleHookName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CompleteLifecycleAction. type CompleteLifecycleActionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CompleteLifecycleActionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CompleteLifecycleActionOutput) GoString() string { return s.String() } // Contains the parameters for CreateAutoScalingGroup. type CreateAutoScalingGroupInput struct { _ struct{} `type:"structure"` // The name of the group. This name must be unique within the scope of your // AWS account. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // One or more Availability Zones for the group. This parameter is optional // if you specify one or more subnets. AvailabilityZones []*string `min:"1" type:"list"` // The amount of time, in seconds, after a scaling activity completes before // another scaling activity can start. The default is 300. // // For more information, see Auto Scaling Cooldowns (http://docs.aws.amazon.com/autoscaling/latest/userguide/Cooldown.html) // in the Auto Scaling User Guide. DefaultCooldown *int64 `type:"integer"` // The number of EC2 instances that should be running in the group. This number // must be greater than or equal to the minimum size of the group and less than // or equal to the maximum size of the group. DesiredCapacity *int64 `type:"integer"` // The amount of time, in seconds, that Auto Scaling waits before checking the // health status of an EC2 instance that has come into service. During this // time, any health check failures for the instance are ignored. The default // is 0. // // This parameter is required if you are adding an ELB health check. // // For more information, see Health Checks (http://docs.aws.amazon.com/autoscaling/latest/userguide/healthcheck.html) // in the Auto Scaling User Guide. HealthCheckGracePeriod *int64 `type:"integer"` // The service to use for the health checks. The valid values are EC2 and ELB. // // By default, health checks use Amazon EC2 instance status checks to determine // the health of an instance. For more information, see Health Checks (http://docs.aws.amazon.com/autoscaling/latest/userguide/healthcheck.html) // in the Auto Scaling User Guide. HealthCheckType *string `min:"1" type:"string"` // The ID of the instance used to create a launch configuration for the group. // Alternatively, specify a launch configuration instead of an EC2 instance. // // When you specify an ID of an instance, Auto Scaling creates a new launch // configuration and associates it with the group. This launch configuration // derives its attributes from the specified instance, with the exception of // the block device mapping. // // For more information, see Create an Auto Scaling Group Using an EC2 Instance // (http://docs.aws.amazon.com/autoscaling/latest/userguide/create-asg-from-instance.html) // in the Auto Scaling User Guide. InstanceId *string `min:"1" type:"string"` // The name of the launch configuration. Alternatively, specify an EC2 instance // instead of a launch configuration. LaunchConfigurationName *string `min:"1" type:"string"` // One or more Classic load balancers. To specify an Application load balancer, // use TargetGroupARNs instead. // // For more information, see Using a Load Balancer With an Auto Scaling Group // (http://docs.aws.amazon.com/autoscaling/latest/userguide/create-asg-from-instance.html) // in the Auto Scaling User Guide. LoadBalancerNames []*string `type:"list"` // The maximum size of the group. // // MaxSize is a required field MaxSize *int64 `type:"integer" required:"true"` // The minimum size of the group. // // MinSize is a required field MinSize *int64 `type:"integer" required:"true"` // Indicates whether newly launched instances are protected from termination // by Auto Scaling when scaling in. NewInstancesProtectedFromScaleIn *bool `type:"boolean"` // The name of the placement group into which you'll launch your instances, // if any. For more information, see Placement Groups (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) // in the Amazon Elastic Compute Cloud User Guide. PlacementGroup *string `min:"1" type:"string"` // One or more tags. // // For more information, see Tagging Auto Scaling Groups and Instances (http://docs.aws.amazon.com/autoscaling/latest/userguide/autoscaling-tagging.html) // in the Auto Scaling User Guide. Tags []*Tag `type:"list"` // The Amazon Resource Names (ARN) of the target groups. TargetGroupARNs []*string `type:"list"` // One or more termination policies used to select the instance to terminate. // These policies are executed in the order that they are listed. // // For more information, see Controlling Which Instances Auto Scaling Terminates // During Scale In (http://docs.aws.amazon.com/autoscaling/latest/userguide/as-instance-termination.html) // in the Auto Scaling User Guide. TerminationPolicies []*string `type:"list"` // A comma-separated list of subnet identifiers for your virtual private cloud // (VPC). // // If you specify subnets and Availability Zones with this call, ensure that // the subnets' Availability Zones match the Availability Zones specified. // // For more information, see Launching Auto Scaling Instances in a VPC (http://docs.aws.amazon.com/autoscaling/latest/userguide/asg-in-vpc.html) // in the Auto Scaling User Guide. VPCZoneIdentifier *string `min:"1" type:"string"` } // String returns the string representation func (s CreateAutoScalingGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAutoScalingGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateAutoScalingGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateAutoScalingGroupInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.AvailabilityZones != nil && len(s.AvailabilityZones) < 1 { invalidParams.Add(request.NewErrParamMinLen("AvailabilityZones", 1)) } if s.HealthCheckType != nil && len(*s.HealthCheckType) < 1 { invalidParams.Add(request.NewErrParamMinLen("HealthCheckType", 1)) } if s.InstanceId != nil && len(*s.InstanceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) } if s.LaunchConfigurationName != nil && len(*s.LaunchConfigurationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LaunchConfigurationName", 1)) } if s.MaxSize == nil { invalidParams.Add(request.NewErrParamRequired("MaxSize")) } if s.MinSize == nil { invalidParams.Add(request.NewErrParamRequired("MinSize")) } if s.PlacementGroup != nil && len(*s.PlacementGroup) < 1 { invalidParams.Add(request.NewErrParamMinLen("PlacementGroup", 1)) } if s.VPCZoneIdentifier != nil && len(*s.VPCZoneIdentifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("VPCZoneIdentifier", 1)) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateAutoScalingGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateAutoScalingGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAutoScalingGroupOutput) GoString() string { return s.String() } // Contains the parameters for CreateLaunchConfiguration. type CreateLaunchConfigurationInput struct { _ struct{} `type:"structure"` // Used for groups that launch instances into a virtual private cloud (VPC). // Specifies whether to assign a public IP address to each instance. For more // information, see Launching Auto Scaling Instances in a VPC (http://docs.aws.amazon.com/autoscaling/latest/userguide/asg-in-vpc.html) // in the Auto Scaling User Guide. // // If you specify this parameter, be sure to specify at least one subnet when // you create your group. // // Default: If the instance is launched into a default subnet, the default is // true. If the instance is launched into a nondefault subnet, the default is // false. For more information, see Supported Platforms (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html) // in the Amazon Elastic Compute Cloud User Guide. AssociatePublicIpAddress *bool `type:"boolean"` // One or more mappings that specify how block devices are exposed to the instance. // For more information, see Block Device Mapping (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-device-mapping-concepts.html) // in the Amazon Elastic Compute Cloud User Guide. BlockDeviceMappings []*BlockDeviceMapping `type:"list"` // The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to. // This parameter is supported only if you are launching EC2-Classic instances. // For more information, see ClassicLink (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html) // in the Amazon Elastic Compute Cloud User Guide. ClassicLinkVPCId *string `min:"1" type:"string"` // The IDs of one or more security groups for the specified ClassicLink-enabled // VPC. This parameter is required if you specify a ClassicLink-enabled VPC, // and is not supported otherwise. For more information, see ClassicLink (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html) // in the Amazon Elastic Compute Cloud User Guide. ClassicLinkVPCSecurityGroups []*string `type:"list"` // Indicates whether the instance is optimized for Amazon EBS I/O. By default, // the instance is not optimized for EBS I/O. The optimization provides dedicated // throughput to Amazon EBS and an optimized configuration stack to provide // optimal I/O performance. This optimization is not available with all instance // types. Additional usage charges apply. For more information, see Amazon EBS-Optimized // Instances (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html) // in the Amazon Elastic Compute Cloud User Guide. EbsOptimized *bool `type:"boolean"` // The name or the Amazon Resource Name (ARN) of the instance profile associated // with the IAM role for the instance. // // EC2 instances launched with an IAM role will automatically have AWS security // credentials available. You can use IAM roles with Auto Scaling to automatically // enable applications running on your EC2 instances to securely access other // AWS resources. For more information, see Launch Auto Scaling Instances with // an IAM Role (http://docs.aws.amazon.com/autoscaling/latest/userguide/us-iam-role.html) // in the Auto Scaling User Guide. IamInstanceProfile *string `min:"1" type:"string"` // The ID of the Amazon Machine Image (AMI) to use to launch your EC2 instances. // For more information, see Finding an AMI (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/finding-an-ami.html) // in the Amazon Elastic Compute Cloud User Guide. ImageId *string `min:"1" type:"string"` // The ID of the instance to use to create the launch configuration. // // The new launch configuration derives attributes from the instance, with the // exception of the block device mapping. // // To create a launch configuration with a block device mapping or override // any other instance attributes, specify them as part of the same request. // // For more information, see Create a Launch Configuration Using an EC2 Instance // (http://docs.aws.amazon.com/autoscaling/latest/userguide/create-lc-with-instanceID.html) // in the Auto Scaling User Guide. InstanceId *string `min:"1" type:"string"` // Enables detailed monitoring (true) or basic monitoring (false) for the Auto // Scaling instances. InstanceMonitoring *InstanceMonitoring `type:"structure"` // The instance type of the EC2 instance. For information about available instance // types, see Available Instance Types (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#AvailableInstanceTypes) // in the Amazon Elastic Compute Cloud User Guide. InstanceType *string `min:"1" type:"string"` // The ID of the kernel associated with the AMI. KernelId *string `min:"1" type:"string"` // The name of the key pair. For more information, see Amazon EC2 Key Pairs // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) in // the Amazon Elastic Compute Cloud User Guide. KeyName *string `min:"1" type:"string"` // The name of the launch configuration. This name must be unique within the // scope of your AWS account. // // LaunchConfigurationName is a required field LaunchConfigurationName *string `min:"1" type:"string" required:"true"` // The tenancy of the instance. An instance with a tenancy of dedicated runs // on single-tenant hardware and can only be launched into a VPC. // // You must set the value of this parameter to dedicated if want to launch Dedicated // Instances into a shared tenancy VPC (VPC with instance placement tenancy // attribute set to default). // // If you specify this parameter, be sure to specify at least one subnet when // you create your group. // // For more information, see Launching Auto Scaling Instances in a VPC (http://docs.aws.amazon.com/autoscaling/latest/userguide/asg-in-vpc.html) // in the Auto Scaling User Guide. // // Valid values: default | dedicated PlacementTenancy *string `min:"1" type:"string"` // The ID of the RAM disk associated with the AMI. RamdiskId *string `min:"1" type:"string"` // One or more security groups with which to associate the instances. // // If your instances are launched in EC2-Classic, you can either specify security // group names or the security group IDs. For more information about security // groups for EC2-Classic, see Amazon EC2 Security Groups (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html) // in the Amazon Elastic Compute Cloud User Guide. // // If your instances are launched into a VPC, specify security group IDs. For // more information, see Security Groups for Your VPC (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_SecurityGroups.html) // in the Amazon Virtual Private Cloud User Guide. SecurityGroups []*string `type:"list"` // The maximum hourly price to be paid for any Spot Instance launched to fulfill // the request. Spot Instances are launched when the price you specify exceeds // the current Spot market price. For more information, see Launching Spot Instances // in Your Auto Scaling Group (http://docs.aws.amazon.com/autoscaling/latest/userguide/US-SpotInstances.html) // in the Auto Scaling User Guide. SpotPrice *string `min:"1" type:"string"` // The user data to make available to the launched EC2 instances. For more information, // see Instance Metadata and User Data (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html) // in the Amazon Elastic Compute Cloud User Guide. UserData *string `type:"string"` } // String returns the string representation func (s CreateLaunchConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLaunchConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateLaunchConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateLaunchConfigurationInput"} if s.ClassicLinkVPCId != nil && len(*s.ClassicLinkVPCId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClassicLinkVPCId", 1)) } if s.IamInstanceProfile != nil && len(*s.IamInstanceProfile) < 1 { invalidParams.Add(request.NewErrParamMinLen("IamInstanceProfile", 1)) } if s.ImageId != nil && len(*s.ImageId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ImageId", 1)) } if s.InstanceId != nil && len(*s.InstanceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) } if s.InstanceType != nil && len(*s.InstanceType) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceType", 1)) } if s.KernelId != nil && len(*s.KernelId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KernelId", 1)) } if s.KeyName != nil && len(*s.KeyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyName", 1)) } if s.LaunchConfigurationName == nil { invalidParams.Add(request.NewErrParamRequired("LaunchConfigurationName")) } if s.LaunchConfigurationName != nil && len(*s.LaunchConfigurationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LaunchConfigurationName", 1)) } if s.PlacementTenancy != nil && len(*s.PlacementTenancy) < 1 { invalidParams.Add(request.NewErrParamMinLen("PlacementTenancy", 1)) } if s.RamdiskId != nil && len(*s.RamdiskId) < 1 { invalidParams.Add(request.NewErrParamMinLen("RamdiskId", 1)) } if s.SpotPrice != nil && len(*s.SpotPrice) < 1 { invalidParams.Add(request.NewErrParamMinLen("SpotPrice", 1)) } if s.BlockDeviceMappings != nil { for i, v := range s.BlockDeviceMappings { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "BlockDeviceMappings", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateLaunchConfigurationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateLaunchConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLaunchConfigurationOutput) GoString() string { return s.String() } // Contains the parameters for CreateOrUpdateTags. type CreateOrUpdateTagsInput struct { _ struct{} `type:"structure"` // One or more tags. // // Tags is a required field Tags []*Tag `type:"list" required:"true"` } // String returns the string representation func (s CreateOrUpdateTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateOrUpdateTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateOrUpdateTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateOrUpdateTagsInput"} if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateOrUpdateTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateOrUpdateTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateOrUpdateTagsOutput) GoString() string { return s.String() } // Contains the parameters for DeleteAutoScalingGroup. type DeleteAutoScalingGroupInput struct { _ struct{} `type:"structure"` // The name of the group to delete. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // Specifies that the group will be deleted along with all instances associated // with the group, without waiting for all instances to be terminated. This // parameter also deletes any lifecycle actions associated with the group. ForceDelete *bool `type:"boolean"` } // String returns the string representation func (s DeleteAutoScalingGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAutoScalingGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAutoScalingGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAutoScalingGroupInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteAutoScalingGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteAutoScalingGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAutoScalingGroupOutput) GoString() string { return s.String() } // Contains the parameters for DeleteLaunchConfiguration. type DeleteLaunchConfigurationInput struct { _ struct{} `type:"structure"` // The name of the launch configuration. // // LaunchConfigurationName is a required field LaunchConfigurationName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteLaunchConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLaunchConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteLaunchConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteLaunchConfigurationInput"} if s.LaunchConfigurationName == nil { invalidParams.Add(request.NewErrParamRequired("LaunchConfigurationName")) } if s.LaunchConfigurationName != nil && len(*s.LaunchConfigurationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LaunchConfigurationName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteLaunchConfigurationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteLaunchConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLaunchConfigurationOutput) GoString() string { return s.String() } // Contains the parameters for DeleteLifecycleHook. type DeleteLifecycleHookInput struct { _ struct{} `type:"structure"` // The name of the Auto Scaling group for the lifecycle hook. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // The name of the lifecycle hook. // // LifecycleHookName is a required field LifecycleHookName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteLifecycleHookInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLifecycleHookInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteLifecycleHookInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteLifecycleHookInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.LifecycleHookName == nil { invalidParams.Add(request.NewErrParamRequired("LifecycleHookName")) } if s.LifecycleHookName != nil && len(*s.LifecycleHookName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LifecycleHookName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DeleteLifecycleHook. type DeleteLifecycleHookOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteLifecycleHookOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLifecycleHookOutput) GoString() string { return s.String() } // Contains the parameters for DeleteNotificationConfiguration. type DeleteNotificationConfigurationInput struct { _ struct{} `type:"structure"` // The name of the Auto Scaling group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the Amazon Simple Notification Service // (SNS) topic. // // TopicARN is a required field TopicARN *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteNotificationConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteNotificationConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteNotificationConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteNotificationConfigurationInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.TopicARN == nil { invalidParams.Add(request.NewErrParamRequired("TopicARN")) } if s.TopicARN != nil && len(*s.TopicARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("TopicARN", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteNotificationConfigurationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteNotificationConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteNotificationConfigurationOutput) GoString() string { return s.String() } // Contains the parameters for DeletePolicy. type DeletePolicyInput struct { _ struct{} `type:"structure"` // The name of the Auto Scaling group. AutoScalingGroupName *string `min:"1" type:"string"` // The name or Amazon Resource Name (ARN) of the policy. // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeletePolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeletePolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeletePolicyInput"} if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeletePolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeletePolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePolicyOutput) GoString() string { return s.String() } // Contains the parameters for DeleteScheduledAction. type DeleteScheduledActionInput struct { _ struct{} `type:"structure"` // The name of the Auto Scaling group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // The name of the action to delete. // // ScheduledActionName is a required field ScheduledActionName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteScheduledActionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteScheduledActionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteScheduledActionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteScheduledActionInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.ScheduledActionName == nil { invalidParams.Add(request.NewErrParamRequired("ScheduledActionName")) } if s.ScheduledActionName != nil && len(*s.ScheduledActionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ScheduledActionName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteScheduledActionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteScheduledActionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteScheduledActionOutput) GoString() string { return s.String() } // Contains the parameters for DeleteTags. type DeleteTagsInput struct { _ struct{} `type:"structure"` // One or more tags. // // Tags is a required field Tags []*Tag `type:"list" required:"true"` } // String returns the string representation func (s DeleteTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTagsInput"} if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTagsOutput) GoString() string { return s.String() } type DescribeAccountLimitsInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DescribeAccountLimitsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAccountLimitsInput) GoString() string { return s.String() } // Contains the parameters for DescribeAccountLimits. type DescribeAccountLimitsOutput struct { _ struct{} `type:"structure"` // The maximum number of groups allowed for your AWS account. The default limit // is 20 per region. MaxNumberOfAutoScalingGroups *int64 `type:"integer"` // The maximum number of launch configurations allowed for your AWS account. // The default limit is 100 per region. MaxNumberOfLaunchConfigurations *int64 `type:"integer"` // The current number of groups for your AWS account. NumberOfAutoScalingGroups *int64 `type:"integer"` // The current number of launch configurations for your AWS account. NumberOfLaunchConfigurations *int64 `type:"integer"` } // String returns the string representation func (s DescribeAccountLimitsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAccountLimitsOutput) GoString() string { return s.String() } type DescribeAdjustmentTypesInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DescribeAdjustmentTypesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAdjustmentTypesInput) GoString() string { return s.String() } // Contains the parameters for DescribeAdjustmentTypes. type DescribeAdjustmentTypesOutput struct { _ struct{} `type:"structure"` // The policy adjustment types. AdjustmentTypes []*AdjustmentType `type:"list"` } // String returns the string representation func (s DescribeAdjustmentTypesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAdjustmentTypesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeAutoScalingGroups. type DescribeAutoScalingGroupsInput struct { _ struct{} `type:"structure"` // The group names. If you omit this parameter, all Auto Scaling groups are // described. AutoScalingGroupNames []*string `type:"list"` // The maximum number of items to return with this call. MaxRecords *int64 `type:"integer"` // The token for the next set of items to return. (You received this token from // a previous call.) NextToken *string `type:"string"` } // String returns the string representation func (s DescribeAutoScalingGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAutoScalingGroupsInput) GoString() string { return s.String() } // Contains the output for DescribeAutoScalingGroups. type DescribeAutoScalingGroupsOutput struct { _ struct{} `type:"structure"` // The groups. // // AutoScalingGroups is a required field AutoScalingGroups []*Group `type:"list" required:"true"` // The token to use when requesting the next set of items. If there are no additional // items to return, the string is empty. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeAutoScalingGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAutoScalingGroupsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeAutoScalingInstances. type DescribeAutoScalingInstancesInput struct { _ struct{} `type:"structure"` // The instances to describe; up to 50 instance IDs. If you omit this parameter, // all Auto Scaling instances are described. If you specify an ID that does // not exist, it is ignored with no error. InstanceIds []*string `type:"list"` // The maximum number of items to return with this call. MaxRecords *int64 `type:"integer"` // The token for the next set of items to return. (You received this token from // a previous call.) NextToken *string `type:"string"` } // String returns the string representation func (s DescribeAutoScalingInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAutoScalingInstancesInput) GoString() string { return s.String() } // Contains the output of DescribeAutoScalingInstances. type DescribeAutoScalingInstancesOutput struct { _ struct{} `type:"structure"` // The instances. AutoScalingInstances []*InstanceDetails `type:"list"` // The token to use when requesting the next set of items. If there are no additional // items to return, the string is empty. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeAutoScalingInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAutoScalingInstancesOutput) GoString() string { return s.String() } type DescribeAutoScalingNotificationTypesInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DescribeAutoScalingNotificationTypesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAutoScalingNotificationTypesInput) GoString() string { return s.String() } // Contains the output of DescribeAutoScalingNotificationTypes. type DescribeAutoScalingNotificationTypesOutput struct { _ struct{} `type:"structure"` // The notification types. AutoScalingNotificationTypes []*string `type:"list"` } // String returns the string representation func (s DescribeAutoScalingNotificationTypesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAutoScalingNotificationTypesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeLaunchConfigurations. type DescribeLaunchConfigurationsInput struct { _ struct{} `type:"structure"` // The launch configuration names. If you omit this parameter, all launch configurations // are described. LaunchConfigurationNames []*string `type:"list"` // The maximum number of items to return with this call. The default is 100. MaxRecords *int64 `type:"integer"` // The token for the next set of items to return. (You received this token from // a previous call.) NextToken *string `type:"string"` } // String returns the string representation func (s DescribeLaunchConfigurationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLaunchConfigurationsInput) GoString() string { return s.String() } // Contains the output of DescribeLaunchConfigurations. type DescribeLaunchConfigurationsOutput struct { _ struct{} `type:"structure"` // The launch configurations. // // LaunchConfigurations is a required field LaunchConfigurations []*LaunchConfiguration `type:"list" required:"true"` // The token to use when requesting the next set of items. If there are no additional // items to return, the string is empty. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeLaunchConfigurationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLaunchConfigurationsOutput) GoString() string { return s.String() } type DescribeLifecycleHookTypesInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DescribeLifecycleHookTypesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLifecycleHookTypesInput) GoString() string { return s.String() } // Contains the output of DescribeLifecycleHookTypes. type DescribeLifecycleHookTypesOutput struct { _ struct{} `type:"structure"` // The lifecycle hook types. LifecycleHookTypes []*string `type:"list"` } // String returns the string representation func (s DescribeLifecycleHookTypesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLifecycleHookTypesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeLifecycleHooks. type DescribeLifecycleHooksInput struct { _ struct{} `type:"structure"` // The name of the group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // The names of one or more lifecycle hooks. If you omit this parameter, all // lifecycle hooks are described. LifecycleHookNames []*string `type:"list"` } // String returns the string representation func (s DescribeLifecycleHooksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLifecycleHooksInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeLifecycleHooksInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeLifecycleHooksInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeLifecycleHooks. type DescribeLifecycleHooksOutput struct { _ struct{} `type:"structure"` // The lifecycle hooks for the specified group. LifecycleHooks []*LifecycleHook `type:"list"` } // String returns the string representation func (s DescribeLifecycleHooksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLifecycleHooksOutput) GoString() string { return s.String() } // Contains the parameters for DescribeLoadBalancerTargetGroups. type DescribeLoadBalancerTargetGroupsInput struct { _ struct{} `type:"structure"` // The name of the Auto Scaling group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // The maximum number of items to return with this call. MaxRecords *int64 `type:"integer"` // The token for the next set of items to return. (You received this token from // a previous call.) NextToken *string `type:"string"` } // String returns the string representation func (s DescribeLoadBalancerTargetGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoadBalancerTargetGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeLoadBalancerTargetGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeLoadBalancerTargetGroupsInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeLoadBalancerTargetGroups. type DescribeLoadBalancerTargetGroupsOutput struct { _ struct{} `type:"structure"` // Information about the target groups. LoadBalancerTargetGroups []*LoadBalancerTargetGroupState `type:"list"` // The token to use when requesting the next set of items. If there are no additional // items to return, the string is empty. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeLoadBalancerTargetGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoadBalancerTargetGroupsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeLoadBalancers. type DescribeLoadBalancersInput struct { _ struct{} `type:"structure"` // The name of the group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // The maximum number of items to return with this call. MaxRecords *int64 `type:"integer"` // The token for the next set of items to return. (You received this token from // a previous call.) NextToken *string `type:"string"` } // String returns the string representation func (s DescribeLoadBalancersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoadBalancersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeLoadBalancersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeLoadBalancersInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeLoadBalancers. type DescribeLoadBalancersOutput struct { _ struct{} `type:"structure"` // The load balancers. LoadBalancers []*LoadBalancerState `type:"list"` // The token to use when requesting the next set of items. If there are no additional // items to return, the string is empty. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeLoadBalancersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoadBalancersOutput) GoString() string { return s.String() } type DescribeMetricCollectionTypesInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DescribeMetricCollectionTypesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeMetricCollectionTypesInput) GoString() string { return s.String() } // Contains the output of DescribeMetricsCollectionTypes. type DescribeMetricCollectionTypesOutput struct { _ struct{} `type:"structure"` // The granularities for the metrics. Granularities []*MetricGranularityType `type:"list"` // One or more metrics. Metrics []*MetricCollectionType `type:"list"` } // String returns the string representation func (s DescribeMetricCollectionTypesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeMetricCollectionTypesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeNotificationConfigurations. type DescribeNotificationConfigurationsInput struct { _ struct{} `type:"structure"` // The name of the group. AutoScalingGroupNames []*string `type:"list"` // The maximum number of items to return with this call. MaxRecords *int64 `type:"integer"` // The token for the next set of items to return. (You received this token from // a previous call.) NextToken *string `type:"string"` } // String returns the string representation func (s DescribeNotificationConfigurationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeNotificationConfigurationsInput) GoString() string { return s.String() } // Contains the output from DescribeNotificationConfigurations. type DescribeNotificationConfigurationsOutput struct { _ struct{} `type:"structure"` // The token to use when requesting the next set of items. If there are no additional // items to return, the string is empty. NextToken *string `type:"string"` // The notification configurations. // // NotificationConfigurations is a required field NotificationConfigurations []*NotificationConfiguration `type:"list" required:"true"` } // String returns the string representation func (s DescribeNotificationConfigurationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeNotificationConfigurationsOutput) GoString() string { return s.String() } // Contains the parameters for DescribePolicies. type DescribePoliciesInput struct { _ struct{} `type:"structure"` // The name of the group. AutoScalingGroupName *string `min:"1" type:"string"` // The maximum number of items to be returned with each call. MaxRecords *int64 `type:"integer"` // The token for the next set of items to return. (You received this token from // a previous call.) NextToken *string `type:"string"` // One or more policy names or policy ARNs to be described. If you omit this // parameter, all policy names are described. If an group name is provided, // the results are limited to that group. This list is limited to 50 items. // If you specify an unknown policy name, it is ignored with no error. PolicyNames []*string `type:"list"` // One or more policy types. Valid values are SimpleScaling and StepScaling. PolicyTypes []*string `type:"list"` } // String returns the string representation func (s DescribePoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribePoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribePoliciesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribePoliciesInput"} if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribePolicies. type DescribePoliciesOutput struct { _ struct{} `type:"structure"` // The token to use when requesting the next set of items. If there are no additional // items to return, the string is empty. NextToken *string `type:"string"` // The scaling policies. ScalingPolicies []*ScalingPolicy `type:"list"` } // String returns the string representation func (s DescribePoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribePoliciesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeScalingActivities. type DescribeScalingActivitiesInput struct { _ struct{} `type:"structure"` // The activity IDs of the desired scaling activities. If you omit this parameter, // all activities for the past six weeks are described. If you specify an Auto // Scaling group, the results are limited to that group. The list of requested // activities cannot contain more than 50 items. If unknown activities are requested, // they are ignored with no error. ActivityIds []*string `type:"list"` // The name of the group. AutoScalingGroupName *string `min:"1" type:"string"` // The maximum number of items to return with this call. MaxRecords *int64 `type:"integer"` // The token for the next set of items to return. (You received this token from // a previous call.) NextToken *string `type:"string"` } // String returns the string representation func (s DescribeScalingActivitiesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScalingActivitiesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeScalingActivitiesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeScalingActivitiesInput"} if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeScalingActivities. type DescribeScalingActivitiesOutput struct { _ struct{} `type:"structure"` // The scaling activities. Activities are sorted by start time. Activities still // in progress are described first. // // Activities is a required field Activities []*Activity `type:"list" required:"true"` // The token to use when requesting the next set of items. If there are no additional // items to return, the string is empty. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeScalingActivitiesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScalingActivitiesOutput) GoString() string { return s.String() } type DescribeScalingProcessTypesInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DescribeScalingProcessTypesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScalingProcessTypesInput) GoString() string { return s.String() } // Contains the output of DescribeScalingProcessTypes. type DescribeScalingProcessTypesOutput struct { _ struct{} `type:"structure"` // The names of the process types. Processes []*ProcessType `type:"list"` } // String returns the string representation func (s DescribeScalingProcessTypesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScalingProcessTypesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeScheduledActions. type DescribeScheduledActionsInput struct { _ struct{} `type:"structure"` // The name of the group. AutoScalingGroupName *string `min:"1" type:"string"` // The latest scheduled start time to return. If scheduled action names are // provided, this parameter is ignored. EndTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The maximum number of items to return with this call. MaxRecords *int64 `type:"integer"` // The token for the next set of items to return. (You received this token from // a previous call.) NextToken *string `type:"string"` // Describes one or more scheduled actions. If you omit this parameter, all // scheduled actions are described. If you specify an unknown scheduled action, // it is ignored with no error. // // You can describe up to a maximum of 50 instances with a single call. If there // are more items to return, the call returns a token. To get the next set of // items, repeat the call with the returned token. ScheduledActionNames []*string `type:"list"` // The earliest scheduled start time to return. If scheduled action names are // provided, this parameter is ignored. StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s DescribeScheduledActionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScheduledActionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeScheduledActionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeScheduledActionsInput"} if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeScheduledActions. type DescribeScheduledActionsOutput struct { _ struct{} `type:"structure"` // The token to use when requesting the next set of items. If there are no additional // items to return, the string is empty. NextToken *string `type:"string"` // The scheduled actions. ScheduledUpdateGroupActions []*ScheduledUpdateGroupAction `type:"list"` } // String returns the string representation func (s DescribeScheduledActionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScheduledActionsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeTags. type DescribeTagsInput struct { _ struct{} `type:"structure"` // A filter used to scope the tags to return. Filters []*Filter `type:"list"` // The maximum number of items to return with this call. MaxRecords *int64 `type:"integer"` // The token for the next set of items to return. (You received this token from // a previous call.) NextToken *string `type:"string"` } // String returns the string representation func (s DescribeTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsInput) GoString() string { return s.String() } // Contains the output of DescribeTags. type DescribeTagsOutput struct { _ struct{} `type:"structure"` // The token to use when requesting the next set of items. If there are no additional // items to return, the string is empty. NextToken *string `type:"string"` // One or more tags. Tags []*TagDescription `type:"list"` } // String returns the string representation func (s DescribeTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsOutput) GoString() string { return s.String() } type DescribeTerminationPolicyTypesInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DescribeTerminationPolicyTypesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTerminationPolicyTypesInput) GoString() string { return s.String() } // Contains the output of DescribeTerminationPolicyTypes. type DescribeTerminationPolicyTypesOutput struct { _ struct{} `type:"structure"` // The termination policies supported by Auto Scaling (OldestInstance, OldestLaunchConfiguration, // NewestInstance, ClosestToNextInstanceHour, and Default). TerminationPolicyTypes []*string `type:"list"` } // String returns the string representation func (s DescribeTerminationPolicyTypesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTerminationPolicyTypesOutput) GoString() string { return s.String() } // Contains the parameters for DetachInstances. type DetachInstancesInput struct { _ struct{} `type:"structure"` // The name of the group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // One or more instance IDs. InstanceIds []*string `type:"list"` // If True, the Auto Scaling group decrements the desired capacity value by // the number of instances detached. // // ShouldDecrementDesiredCapacity is a required field ShouldDecrementDesiredCapacity *bool `type:"boolean" required:"true"` } // String returns the string representation func (s DetachInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DetachInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DetachInstancesInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.ShouldDecrementDesiredCapacity == nil { invalidParams.Add(request.NewErrParamRequired("ShouldDecrementDesiredCapacity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DetachInstances. type DetachInstancesOutput struct { _ struct{} `type:"structure"` // The activities related to detaching the instances from the Auto Scaling group. Activities []*Activity `type:"list"` } // String returns the string representation func (s DetachInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachInstancesOutput) GoString() string { return s.String() } type DetachLoadBalancerTargetGroupsInput struct { _ struct{} `type:"structure"` // The name of the Auto Scaling group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // The Amazon Resource Names (ARN) of the target groups. // // TargetGroupARNs is a required field TargetGroupARNs []*string `type:"list" required:"true"` } // String returns the string representation func (s DetachLoadBalancerTargetGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachLoadBalancerTargetGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DetachLoadBalancerTargetGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DetachLoadBalancerTargetGroupsInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.TargetGroupARNs == nil { invalidParams.Add(request.NewErrParamRequired("TargetGroupARNs")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DetachLoadBalancerTargetGroupsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DetachLoadBalancerTargetGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachLoadBalancerTargetGroupsOutput) GoString() string { return s.String() } // Contains the parameters for DetachLoadBalancers. type DetachLoadBalancersInput struct { _ struct{} `type:"structure"` // The name of the Auto Scaling group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // One or more load balancer names. // // LoadBalancerNames is a required field LoadBalancerNames []*string `type:"list" required:"true"` } // String returns the string representation func (s DetachLoadBalancersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachLoadBalancersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DetachLoadBalancersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DetachLoadBalancersInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.LoadBalancerNames == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerNames")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output for DetachLoadBalancers. type DetachLoadBalancersOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DetachLoadBalancersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachLoadBalancersOutput) GoString() string { return s.String() } // Contains the parameters for DisableMetricsCollection. type DisableMetricsCollectionInput struct { _ struct{} `type:"structure"` // The name or Amazon Resource Name (ARN) of the group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // One or more of the following metrics. If you omit this parameter, all metrics // are disabled. // // * GroupMinSize // // * GroupMaxSize // // * GroupDesiredCapacity // // * GroupInServiceInstances // // * GroupPendingInstances // // * GroupStandbyInstances // // * GroupTerminatingInstances // // * GroupTotalInstances Metrics []*string `type:"list"` } // String returns the string representation func (s DisableMetricsCollectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableMetricsCollectionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisableMetricsCollectionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisableMetricsCollectionInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DisableMetricsCollectionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DisableMetricsCollectionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableMetricsCollectionOutput) GoString() string { return s.String() } // Describes an Amazon EBS volume. type Ebs struct { _ struct{} `type:"structure"` // Indicates whether the volume is deleted on instance termination. // // Default: true DeleteOnTermination *bool `type:"boolean"` // Indicates whether the volume should be encrypted. Encrypted EBS volumes must // be attached to instances that support Amazon EBS encryption. Volumes that // are created from encrypted snapshots are automatically encrypted. There is // no way to create an encrypted volume from an unencrypted snapshot or an unencrypted // volume from an encrypted snapshot. For more information, see Amazon EBS Encryption // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) in // the Amazon Elastic Compute Cloud User Guide. Encrypted *bool `type:"boolean"` // The number of I/O operations per second (IOPS) to provision for the volume. // // Constraint: Required when the volume type is io1. Iops *int64 `min:"100" type:"integer"` // The ID of the snapshot. SnapshotId *string `min:"1" type:"string"` // The volume size, in GiB. For standard volumes, specify a value from 1 to // 1,024. For io1 volumes, specify a value from 4 to 16,384. For gp2 volumes, // specify a value from 1 to 16,384. If you specify a snapshot, the volume size // must be equal to or larger than the snapshot size. // // Default: If you create a volume from a snapshot and you don't specify a volume // size, the default is the snapshot size. VolumeSize *int64 `min:"1" type:"integer"` // The volume type. For more information, see Amazon EBS Volume Types (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) // in the Amazon Elastic Compute Cloud User Guide. // // Valid values: standard | io1 | gp2 // // Default: standard VolumeType *string `min:"1" type:"string"` } // String returns the string representation func (s Ebs) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Ebs) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Ebs) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Ebs"} if s.Iops != nil && *s.Iops < 100 { invalidParams.Add(request.NewErrParamMinValue("Iops", 100)) } if s.SnapshotId != nil && len(*s.SnapshotId) < 1 { invalidParams.Add(request.NewErrParamMinLen("SnapshotId", 1)) } if s.VolumeSize != nil && *s.VolumeSize < 1 { invalidParams.Add(request.NewErrParamMinValue("VolumeSize", 1)) } if s.VolumeType != nil && len(*s.VolumeType) < 1 { invalidParams.Add(request.NewErrParamMinLen("VolumeType", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for EnableMetricsCollection. type EnableMetricsCollectionInput struct { _ struct{} `type:"structure"` // The name or ARN of the Auto Scaling group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // The granularity to associate with the metrics to collect. The only valid // value is 1Minute. // // Granularity is a required field Granularity *string `min:"1" type:"string" required:"true"` // One or more of the following metrics. If you omit this parameter, all metrics // are enabled. // // * GroupMinSize // // * GroupMaxSize // // * GroupDesiredCapacity // // * GroupInServiceInstances // // * GroupPendingInstances // // * GroupStandbyInstances // // * GroupTerminatingInstances // // * GroupTotalInstances Metrics []*string `type:"list"` } // String returns the string representation func (s EnableMetricsCollectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableMetricsCollectionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableMetricsCollectionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableMetricsCollectionInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.Granularity == nil { invalidParams.Add(request.NewErrParamRequired("Granularity")) } if s.Granularity != nil && len(*s.Granularity) < 1 { invalidParams.Add(request.NewErrParamMinLen("Granularity", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type EnableMetricsCollectionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s EnableMetricsCollectionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableMetricsCollectionOutput) GoString() string { return s.String() } // Describes an enabled metric. type EnabledMetric struct { _ struct{} `type:"structure"` // The granularity of the metric. The only valid value is 1Minute. Granularity *string `min:"1" type:"string"` // One of the following metrics: // // * GroupMinSize // // * GroupMaxSize // // * GroupDesiredCapacity // // * GroupInServiceInstances // // * GroupPendingInstances // // * GroupStandbyInstances // // * GroupTerminatingInstances // // * GroupTotalInstances Metric *string `min:"1" type:"string"` } // String returns the string representation func (s EnabledMetric) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnabledMetric) GoString() string { return s.String() } // Contains the parameters for EnteStandby. type EnterStandbyInput struct { _ struct{} `type:"structure"` // The name of the Auto Scaling group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // One or more instances to move into Standby mode. You must specify at least // one instance ID. InstanceIds []*string `type:"list"` // Specifies whether the instances moved to Standby mode count as part of the // Auto Scaling group's desired capacity. If set, the desired capacity for the // Auto Scaling group decrements by the number of instances moved to Standby // mode. // // ShouldDecrementDesiredCapacity is a required field ShouldDecrementDesiredCapacity *bool `type:"boolean" required:"true"` } // String returns the string representation func (s EnterStandbyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnterStandbyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnterStandbyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnterStandbyInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.ShouldDecrementDesiredCapacity == nil { invalidParams.Add(request.NewErrParamRequired("ShouldDecrementDesiredCapacity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of EnterStandby. type EnterStandbyOutput struct { _ struct{} `type:"structure"` // The activities related to moving instances into Standby mode. Activities []*Activity `type:"list"` } // String returns the string representation func (s EnterStandbyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnterStandbyOutput) GoString() string { return s.String() } // Contains the parameters for ExecutePolicy. type ExecutePolicyInput struct { _ struct{} `type:"structure"` // The name or Amazon Resource Name (ARN) of the Auto Scaling group. AutoScalingGroupName *string `min:"1" type:"string"` // The breach threshold for the alarm. // // This parameter is required if the policy type is StepScaling and not supported // otherwise. BreachThreshold *float64 `type:"double"` // If this parameter is true, Auto Scaling waits for the cooldown period to // complete before executing the policy. Otherwise, Auto Scaling executes the // policy without waiting for the cooldown period to complete. // // This parameter is not supported if the policy type is StepScaling. // // For more information, see Auto Scaling Cooldowns (http://docs.aws.amazon.com/autoscaling/latest/userguide/Cooldown.html) // in the Auto Scaling User Guide. HonorCooldown *bool `type:"boolean"` // The metric value to compare to BreachThreshold. This enables you to execute // a policy of type StepScaling and determine which step adjustment to use. // For example, if the breach threshold is 50 and you want to use a step adjustment // with a lower bound of 0 and an upper bound of 10, you can set the metric // value to 59. // // If you specify a metric value that doesn't correspond to a step adjustment // for the policy, the call returns an error. // // This parameter is required if the policy type is StepScaling and not supported // otherwise. MetricValue *float64 `type:"double"` // The name or ARN of the policy. // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ExecutePolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExecutePolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ExecutePolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ExecutePolicyInput"} if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ExecutePolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ExecutePolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExecutePolicyOutput) GoString() string { return s.String() } // Contains the parameters for ExitStandby. type ExitStandbyInput struct { _ struct{} `type:"structure"` // The name of the Auto Scaling group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // One or more instance IDs. You must specify at least one instance ID. InstanceIds []*string `type:"list"` } // String returns the string representation func (s ExitStandbyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExitStandbyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ExitStandbyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ExitStandbyInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for ExitStandby. type ExitStandbyOutput struct { _ struct{} `type:"structure"` // The activities related to moving instances out of Standby mode. Activities []*Activity `type:"list"` } // String returns the string representation func (s ExitStandbyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExitStandbyOutput) GoString() string { return s.String() } // Describes a filter. type Filter struct { _ struct{} `type:"structure"` // The name of the filter. The valid values are: "auto-scaling-group", "key", // "value", and "propagate-at-launch". Name *string `type:"string"` // The value of the filter. Values []*string `type:"list"` } // String returns the string representation func (s Filter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Filter) GoString() string { return s.String() } // Describes an Auto Scaling group. type Group struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the group. AutoScalingGroupARN *string `min:"1" type:"string"` // The name of the group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // One or more Availability Zones for the group. // // AvailabilityZones is a required field AvailabilityZones []*string `min:"1" type:"list" required:"true"` // The date and time the group was created. // // CreatedTime is a required field CreatedTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The amount of time, in seconds, after a scaling activity completes before // another scaling activity can start. // // DefaultCooldown is a required field DefaultCooldown *int64 `type:"integer" required:"true"` // The desired size of the group. // // DesiredCapacity is a required field DesiredCapacity *int64 `type:"integer" required:"true"` // The metrics enabled for the group. EnabledMetrics []*EnabledMetric `type:"list"` // The amount of time, in seconds, that Auto Scaling waits before checking the // health status of an EC2 instance that has come into service. HealthCheckGracePeriod *int64 `type:"integer"` // The service to use for the health checks. The valid values are EC2 and ELB. // // HealthCheckType is a required field HealthCheckType *string `min:"1" type:"string" required:"true"` // The EC2 instances associated with the group. Instances []*Instance `type:"list"` // The name of the associated launch configuration. LaunchConfigurationName *string `min:"1" type:"string"` // One or more load balancers associated with the group. LoadBalancerNames []*string `type:"list"` // The maximum size of the group. // // MaxSize is a required field MaxSize *int64 `type:"integer" required:"true"` // The minimum size of the group. // // MinSize is a required field MinSize *int64 `type:"integer" required:"true"` // Indicates whether newly launched instances are protected from termination // by Auto Scaling when scaling in. NewInstancesProtectedFromScaleIn *bool `type:"boolean"` // The name of the placement group into which you'll launch your instances, // if any. For more information, see Placement Groups (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) // in the Amazon Elastic Compute Cloud User Guide. PlacementGroup *string `min:"1" type:"string"` // The current state of the group when DeleteAutoScalingGroup is in progress. Status *string `min:"1" type:"string"` // The suspended processes associated with the group. SuspendedProcesses []*SuspendedProcess `type:"list"` // The tags for the group. Tags []*TagDescription `type:"list"` // The Amazon Resource Names (ARN) of the target groups for your load balancer. TargetGroupARNs []*string `type:"list"` // The termination policies for the group. TerminationPolicies []*string `type:"list"` // One or more subnet IDs, if applicable, separated by commas. // // If you specify VPCZoneIdentifier and AvailabilityZones, ensure that the Availability // Zones of the subnets match the values for AvailabilityZones. VPCZoneIdentifier *string `min:"1" type:"string"` } // String returns the string representation func (s Group) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Group) GoString() string { return s.String() } // Describes an EC2 instance. type Instance struct { _ struct{} `type:"structure"` // The Availability Zone in which the instance is running. // // AvailabilityZone is a required field AvailabilityZone *string `min:"1" type:"string" required:"true"` // The last reported health status of the instance. "Healthy" means that the // instance is healthy and should remain in service. "Unhealthy" means that // the instance is unhealthy and Auto Scaling should terminate and replace it. // // HealthStatus is a required field HealthStatus *string `min:"1" type:"string" required:"true"` // The ID of the instance. // // InstanceId is a required field InstanceId *string `min:"1" type:"string" required:"true"` // The launch configuration associated with the instance. // // LaunchConfigurationName is a required field LaunchConfigurationName *string `min:"1" type:"string" required:"true"` // A description of the current lifecycle state. Note that the Quarantined state // is not used. // // LifecycleState is a required field LifecycleState *string `type:"string" required:"true" enum:"LifecycleState"` // Indicates whether the instance is protected from termination by Auto Scaling // when scaling in. // // ProtectedFromScaleIn is a required field ProtectedFromScaleIn *bool `type:"boolean" required:"true"` } // String returns the string representation func (s Instance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Instance) GoString() string { return s.String() } // Describes an EC2 instance associated with an Auto Scaling group. type InstanceDetails struct { _ struct{} `type:"structure"` // The name of the Auto Scaling group associated with the instance. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // The Availability Zone for the instance. // // AvailabilityZone is a required field AvailabilityZone *string `min:"1" type:"string" required:"true"` // The last reported health status of this instance. "Healthy" means that the // instance is healthy and should remain in service. "Unhealthy" means that // the instance is unhealthy and Auto Scaling should terminate and replace it. // // HealthStatus is a required field HealthStatus *string `min:"1" type:"string" required:"true"` // The ID of the instance. // // InstanceId is a required field InstanceId *string `min:"1" type:"string" required:"true"` // The launch configuration associated with the instance. // // LaunchConfigurationName is a required field LaunchConfigurationName *string `min:"1" type:"string" required:"true"` // The lifecycle state for the instance. For more information, see Auto Scaling // Lifecycle (http://docs.aws.amazon.com/autoscaling/latest/userguide/AutoScalingGroupLifecycle.html) // in the Auto Scaling User Guide. // // LifecycleState is a required field LifecycleState *string `min:"1" type:"string" required:"true"` // Indicates whether the instance is protected from termination by Auto Scaling // when scaling in. // // ProtectedFromScaleIn is a required field ProtectedFromScaleIn *bool `type:"boolean" required:"true"` } // String returns the string representation func (s InstanceDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceDetails) GoString() string { return s.String() } // Describes whether instance monitoring is enabled. type InstanceMonitoring struct { _ struct{} `type:"structure"` // If True, instance monitoring is enabled. Enabled *bool `type:"boolean"` } // String returns the string representation func (s InstanceMonitoring) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceMonitoring) GoString() string { return s.String() } // Describes a launch configuration. type LaunchConfiguration struct { _ struct{} `type:"structure"` // [EC2-VPC] Indicates whether to assign a public IP address to each instance. AssociatePublicIpAddress *bool `type:"boolean"` // A block device mapping, which specifies the block devices for the instance. BlockDeviceMappings []*BlockDeviceMapping `type:"list"` // The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to. // This parameter can only be used if you are launching EC2-Classic instances. // For more information, see ClassicLink (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html) // in the Amazon Elastic Compute Cloud User Guide. ClassicLinkVPCId *string `min:"1" type:"string"` // The IDs of one or more security groups for the VPC specified in ClassicLinkVPCId. // This parameter is required if you specify a ClassicLink-enabled VPC, and // cannot be used otherwise. For more information, see ClassicLink (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html) // in the Amazon Elastic Compute Cloud User Guide. ClassicLinkVPCSecurityGroups []*string `type:"list"` // The creation date and time for the launch configuration. // // CreatedTime is a required field CreatedTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // Controls whether the instance is optimized for EBS I/O (true) or not (false). EbsOptimized *bool `type:"boolean"` // The name or Amazon Resource Name (ARN) of the instance profile associated // with the IAM role for the instance. IamInstanceProfile *string `min:"1" type:"string"` // The ID of the Amazon Machine Image (AMI). // // ImageId is a required field ImageId *string `min:"1" type:"string" required:"true"` // Controls whether instances in this group are launched with detailed (true) // or basic (false) monitoring. InstanceMonitoring *InstanceMonitoring `type:"structure"` // The instance type for the instances. // // InstanceType is a required field InstanceType *string `min:"1" type:"string" required:"true"` // The ID of the kernel associated with the AMI. KernelId *string `min:"1" type:"string"` // The name of the key pair. KeyName *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of the launch configuration. LaunchConfigurationARN *string `min:"1" type:"string"` // The name of the launch configuration. // // LaunchConfigurationName is a required field LaunchConfigurationName *string `min:"1" type:"string" required:"true"` // The tenancy of the instance, either default or dedicated. An instance with // dedicated tenancy runs in an isolated, single-tenant hardware and can only // be launched into a VPC. PlacementTenancy *string `min:"1" type:"string"` // The ID of the RAM disk associated with the AMI. RamdiskId *string `min:"1" type:"string"` // The security groups to associate with the instances. SecurityGroups []*string `type:"list"` // The price to bid when launching Spot Instances. SpotPrice *string `min:"1" type:"string"` // The user data available to the instances. UserData *string `type:"string"` } // String returns the string representation func (s LaunchConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LaunchConfiguration) GoString() string { return s.String() } // Describes a lifecycle hook, which tells Auto Scaling that you want to perform // an action when an instance launches or terminates. When you have a lifecycle // hook in place, the Auto Scaling group will either: // // * Pause the instance after it launches, but before it is put into service // // * Pause the instance as it terminates, but before it is fully terminated // // For more information, see Auto Scaling Lifecycle (http://docs.aws.amazon.com/autoscaling/latest/userguide/AutoScalingGroupLifecycle.html) // in the Auto Scaling User Guide. type LifecycleHook struct { _ struct{} `type:"structure"` // The name of the Auto Scaling group for the lifecycle hook. AutoScalingGroupName *string `min:"1" type:"string"` // Defines the action the Auto Scaling group should take when the lifecycle // hook timeout elapses or if an unexpected failure occurs. The valid values // are CONTINUE and ABANDON. The default value is CONTINUE. DefaultResult *string `type:"string"` // The maximum time, in seconds, that an instance can remain in a Pending:Wait // or Terminating:Wait state. The maximum is 172800 seconds (48 hours) or 100 // times HeartbeatTimeout, whichever is smaller. GlobalTimeout *int64 `type:"integer"` // The maximum time, in seconds, that can elapse before the lifecycle hook times // out. The default is 3600 seconds (1 hour). When the lifecycle hook times // out, Auto Scaling performs the default action. You can prevent the lifecycle // hook from timing out by calling RecordLifecycleActionHeartbeat. HeartbeatTimeout *int64 `type:"integer"` // The name of the lifecycle hook. LifecycleHookName *string `min:"1" type:"string"` // The state of the EC2 instance to which you want to attach the lifecycle hook. // For a list of lifecycle hook types, see DescribeLifecycleHookTypes. LifecycleTransition *string `type:"string"` // Additional information that you want to include any time Auto Scaling sends // a message to the notification target. NotificationMetadata *string `min:"1" type:"string"` // The ARN of the notification target that Auto Scaling uses to notify you when // an instance is in the transition state for the lifecycle hook. This ARN target // can be either an SQS queue or an SNS topic. The notification message sent // to the target includes the following: // // * Lifecycle action token // // * User account ID // // * Name of the Auto Scaling group // // * Lifecycle hook name // // * EC2 instance ID // // * Lifecycle transition // // * Notification metadata NotificationTargetARN *string `min:"1" type:"string"` // The ARN of the IAM role that allows the Auto Scaling group to publish to // the specified notification target. RoleARN *string `min:"1" type:"string"` } // String returns the string representation func (s LifecycleHook) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LifecycleHook) GoString() string { return s.String() } // Describes the state of a Classic load balancer. // // If you specify a load balancer when creating the Auto Scaling group, the // state of the load balancer is InService. // // If you attach a load balancer to an existing Auto Scaling group, the initial // state is Adding. The state transitions to Added after all instances in the // group are registered with the load balancer. If ELB health checks are enabled // for the load balancer, the state transitions to InService after at least // one instance in the group passes the health check. If EC2 health checks are // enabled instead, the load balancer remains in the Added state. type LoadBalancerState struct { _ struct{} `type:"structure"` // The name of the load balancer. LoadBalancerName *string `min:"1" type:"string"` // One of the following load balancer states: // // * Adding - The instances in the group are being registered with the load // balancer. // // * Added - All instances in the group are registered with the load balancer. // // * InService - At least one instance in the group passed an ELB health // check. // // * Removing - The instances in the group are being deregistered from the // load balancer. If connection draining is enabled, Elastic Load Balancing // waits for in-flight requests to complete before deregistering the instances. // // * Removed - All instances in the group are deregistered from the load // balancer. State *string `min:"1" type:"string"` } // String returns the string representation func (s LoadBalancerState) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LoadBalancerState) GoString() string { return s.String() } // Describes the state of a target group. // // If you attach a target group to an existing Auto Scaling group, the initial // state is Adding. The state transitions to Added after all Auto Scaling instances // are registered with the target group. If ELB health checks are enabled, the // state transitions to InService after at least one Auto Scaling instance passes // the health check. If EC2 health checks are enabled instead, the target group // remains in the Added state. type LoadBalancerTargetGroupState struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the target group. LoadBalancerTargetGroupARN *string `min:"1" type:"string"` // The state of the target group. // // * Adding - The Auto Scaling instances are being registered with the target // group. // // * Added - All Auto Scaling instances are registered with the target group. // // * InService - At least one Auto Scaling instance passed an ELB health // check. // // * Removing - The Auto Scaling instances are being deregistered from the // target group. If connection draining is enabled, Elastic Load Balancing // waits for in-flight requests to complete before deregistering the instances. // // * Removed - All Auto Scaling instances are deregistered from the target // group. State *string `min:"1" type:"string"` } // String returns the string representation func (s LoadBalancerTargetGroupState) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LoadBalancerTargetGroupState) GoString() string { return s.String() } // Describes a metric. type MetricCollectionType struct { _ struct{} `type:"structure"` // One of the following metrics: // // * GroupMinSize // // * GroupMaxSize // // * GroupDesiredCapacity // // * GroupInServiceInstances // // * GroupPendingInstances // // * GroupStandbyInstances // // * GroupTerminatingInstances // // * GroupTotalInstances Metric *string `min:"1" type:"string"` } // String returns the string representation func (s MetricCollectionType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MetricCollectionType) GoString() string { return s.String() } // Describes a granularity of a metric. type MetricGranularityType struct { _ struct{} `type:"structure"` // The granularity. The only valid value is 1Minute. Granularity *string `min:"1" type:"string"` } // String returns the string representation func (s MetricGranularityType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MetricGranularityType) GoString() string { return s.String() } // Describes a notification. type NotificationConfiguration struct { _ struct{} `type:"structure"` // The name of the group. AutoScalingGroupName *string `min:"1" type:"string"` // One of the following event notification types: // // * autoscaling:EC2_INSTANCE_LAUNCH // // * autoscaling:EC2_INSTANCE_LAUNCH_ERROR // // * autoscaling:EC2_INSTANCE_TERMINATE // // * autoscaling:EC2_INSTANCE_TERMINATE_ERROR // // * autoscaling:TEST_NOTIFICATION NotificationType *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of the Amazon Simple Notification Service // (SNS) topic. TopicARN *string `min:"1" type:"string"` } // String returns the string representation func (s NotificationConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NotificationConfiguration) GoString() string { return s.String() } // Describes a process type. // // For more information, see Auto Scaling Processes (http://docs.aws.amazon.com/autoscaling/latest/userguide/as-suspend-resume-processes.html#process-types) // in the Auto Scaling User Guide. type ProcessType struct { _ struct{} `type:"structure"` // One of the following processes: // // * Launch // // * Terminate // // * AddToLoadBalancer // // * AlarmNotification // // * AZRebalance // // * HealthCheck // // * ReplaceUnhealthy // // * ScheduledActions // // ProcessName is a required field ProcessName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ProcessType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ProcessType) GoString() string { return s.String() } // Contains the parameters for PutLifecycleHook. type PutLifecycleHookInput struct { _ struct{} `type:"structure"` // The name of the Auto Scaling group to which you want to assign the lifecycle // hook. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // Defines the action the Auto Scaling group should take when the lifecycle // hook timeout elapses or if an unexpected failure occurs. This parameter can // be either CONTINUE or ABANDON. The default value is ABANDON. DefaultResult *string `type:"string"` // The amount of time, in seconds, that can elapse before the lifecycle hook // times out. When the lifecycle hook times out, Auto Scaling performs the default // action. You can prevent the lifecycle hook from timing out by calling RecordLifecycleActionHeartbeat. // The default is 3600 seconds (1 hour). HeartbeatTimeout *int64 `type:"integer"` // The name of the lifecycle hook. // // LifecycleHookName is a required field LifecycleHookName *string `min:"1" type:"string" required:"true"` // The instance state to which you want to attach the lifecycle hook. For a // list of lifecycle hook types, see DescribeLifecycleHookTypes. // // This parameter is required for new lifecycle hooks, but optional when updating // existing hooks. LifecycleTransition *string `type:"string"` // Contains additional information that you want to include any time Auto Scaling // sends a message to the notification target. NotificationMetadata *string `min:"1" type:"string"` // The ARN of the notification target that Auto Scaling will use to notify you // when an instance is in the transition state for the lifecycle hook. This // target can be either an SQS queue or an SNS topic. If you specify an empty // string, this overrides the current ARN. // // This operation uses the JSON format when sending notifications to an Amazon // SQS queue, and an email key/value pair format when sending notifications // to an Amazon SNS topic. // // When you specify a notification target, Auto Scaling sends it a test message. // Test messages contains the following additional key/value pair: "Event": // "autoscaling:TEST_NOTIFICATION". NotificationTargetARN *string `type:"string"` // The ARN of the IAM role that allows the Auto Scaling group to publish to // the specified notification target. // // This parameter is required for new lifecycle hooks, but optional when updating // existing hooks. RoleARN *string `min:"1" type:"string"` } // String returns the string representation func (s PutLifecycleHookInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutLifecycleHookInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutLifecycleHookInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutLifecycleHookInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.LifecycleHookName == nil { invalidParams.Add(request.NewErrParamRequired("LifecycleHookName")) } if s.LifecycleHookName != nil && len(*s.LifecycleHookName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LifecycleHookName", 1)) } if s.NotificationMetadata != nil && len(*s.NotificationMetadata) < 1 { invalidParams.Add(request.NewErrParamMinLen("NotificationMetadata", 1)) } if s.RoleARN != nil && len(*s.RoleARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of PutLifecycleHook. type PutLifecycleHookOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutLifecycleHookOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutLifecycleHookOutput) GoString() string { return s.String() } // Contains the parameters for PutNotificationConfiguration. type PutNotificationConfigurationInput struct { _ struct{} `type:"structure"` // The name of the Auto Scaling group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // The type of event that will cause the notification to be sent. For details // about notification types supported by Auto Scaling, see DescribeAutoScalingNotificationTypes. // // NotificationTypes is a required field NotificationTypes []*string `type:"list" required:"true"` // The Amazon Resource Name (ARN) of the Amazon Simple Notification Service // (SNS) topic. // // TopicARN is a required field TopicARN *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s PutNotificationConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutNotificationConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutNotificationConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutNotificationConfigurationInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.NotificationTypes == nil { invalidParams.Add(request.NewErrParamRequired("NotificationTypes")) } if s.TopicARN == nil { invalidParams.Add(request.NewErrParamRequired("TopicARN")) } if s.TopicARN != nil && len(*s.TopicARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("TopicARN", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutNotificationConfigurationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutNotificationConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutNotificationConfigurationOutput) GoString() string { return s.String() } // Contains the parameters for PutScalingPolicy. type PutScalingPolicyInput struct { _ struct{} `type:"structure"` // The adjustment type. Valid values are ChangeInCapacity, ExactCapacity, and // PercentChangeInCapacity. // // For more information, see Dynamic Scaling (http://docs.aws.amazon.com/autoscaling/latest/userguide/as-scale-based-on-demand.html) // in the Auto Scaling User Guide. // // AdjustmentType is a required field AdjustmentType *string `min:"1" type:"string" required:"true"` // The name or ARN of the group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // The amount of time, in seconds, after a scaling activity completes and before // the next scaling activity can start. If this parameter is not specified, // the default cooldown period for the group applies. // // This parameter is not supported unless the policy type is SimpleScaling. // // For more information, see Auto Scaling Cooldowns (http://docs.aws.amazon.com/autoscaling/latest/userguide/Cooldown.html) // in the Auto Scaling User Guide. Cooldown *int64 `type:"integer"` // The estimated time, in seconds, until a newly launched instance can contribute // to the CloudWatch metrics. The default is to use the value specified for // the default cooldown period for the group. // // This parameter is not supported if the policy type is SimpleScaling. EstimatedInstanceWarmup *int64 `type:"integer"` // The aggregation type for the CloudWatch metrics. Valid values are Minimum, // Maximum, and Average. If the aggregation type is null, the value is treated // as Average. // // This parameter is not supported if the policy type is SimpleScaling. MetricAggregationType *string `min:"1" type:"string"` // The minimum number of instances to scale. If the value of AdjustmentType // is PercentChangeInCapacity, the scaling policy changes the DesiredCapacity // of the Auto Scaling group by at least this many instances. Otherwise, the // error is ValidationError. MinAdjustmentMagnitude *int64 `type:"integer"` // Available for backward compatibility. Use MinAdjustmentMagnitude instead. MinAdjustmentStep *int64 `deprecated:"true" type:"integer"` // The name of the policy. // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` // The policy type. Valid values are SimpleScaling and StepScaling. If the policy // type is null, the value is treated as SimpleScaling. PolicyType *string `min:"1" type:"string"` // The amount by which to scale, based on the specified adjustment type. A positive // value adds to the current capacity while a negative number removes from the // current capacity. // // This parameter is required if the policy type is SimpleScaling and not supported // otherwise. ScalingAdjustment *int64 `type:"integer"` // A set of adjustments that enable you to scale based on the size of the alarm // breach. // // This parameter is required if the policy type is StepScaling and not supported // otherwise. StepAdjustments []*StepAdjustment `type:"list"` } // String returns the string representation func (s PutScalingPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutScalingPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutScalingPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutScalingPolicyInput"} if s.AdjustmentType == nil { invalidParams.Add(request.NewErrParamRequired("AdjustmentType")) } if s.AdjustmentType != nil && len(*s.AdjustmentType) < 1 { invalidParams.Add(request.NewErrParamMinLen("AdjustmentType", 1)) } if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.MetricAggregationType != nil && len(*s.MetricAggregationType) < 1 { invalidParams.Add(request.NewErrParamMinLen("MetricAggregationType", 1)) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if s.PolicyType != nil && len(*s.PolicyType) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyType", 1)) } if s.StepAdjustments != nil { for i, v := range s.StepAdjustments { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "StepAdjustments", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of PutScalingPolicy. type PutScalingPolicyOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the policy. PolicyARN *string `min:"1" type:"string"` } // String returns the string representation func (s PutScalingPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutScalingPolicyOutput) GoString() string { return s.String() } // Contains the parameters for PutScheduledUpdateGroupAction. type PutScheduledUpdateGroupActionInput struct { _ struct{} `type:"structure"` // The name or Amazon Resource Name (ARN) of the Auto Scaling group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // The number of EC2 instances that should be running in the group. DesiredCapacity *int64 `type:"integer"` // The time for the recurring schedule to end. Auto Scaling does not perform // the action after this time. EndTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The maximum size for the Auto Scaling group. MaxSize *int64 `type:"integer"` // The minimum size for the Auto Scaling group. MinSize *int64 `type:"integer"` // The recurring schedule for this action, in Unix cron syntax format. For more // information, see Cron (http://en.wikipedia.org/wiki/Cron) in Wikipedia. Recurrence *string `min:"1" type:"string"` // The name of this scaling action. // // ScheduledActionName is a required field ScheduledActionName *string `min:"1" type:"string" required:"true"` // The time for this action to start, in "YYYY-MM-DDThh:mm:ssZ" format in UTC/GMT // only (for example, 2014-06-01T00:00:00Z). // // If you specify Recurrence and StartTime, Auto Scaling performs the action // at this time, and then performs the action based on the specified recurrence. // // If you try to schedule your action in the past, Auto Scaling returns an error // message. StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // This parameter is deprecated. Time *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s PutScheduledUpdateGroupActionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutScheduledUpdateGroupActionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutScheduledUpdateGroupActionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutScheduledUpdateGroupActionInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.Recurrence != nil && len(*s.Recurrence) < 1 { invalidParams.Add(request.NewErrParamMinLen("Recurrence", 1)) } if s.ScheduledActionName == nil { invalidParams.Add(request.NewErrParamRequired("ScheduledActionName")) } if s.ScheduledActionName != nil && len(*s.ScheduledActionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ScheduledActionName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutScheduledUpdateGroupActionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutScheduledUpdateGroupActionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutScheduledUpdateGroupActionOutput) GoString() string { return s.String() } // Contains the parameters for RecordLifecycleActionHeartbeat. type RecordLifecycleActionHeartbeatInput struct { _ struct{} `type:"structure"` // The name of the Auto Scaling group for the hook. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // The ID of the instance. InstanceId *string `min:"1" type:"string"` // A token that uniquely identifies a specific lifecycle action associated with // an instance. Auto Scaling sends this token to the notification target you // specified when you created the lifecycle hook. LifecycleActionToken *string `min:"36" type:"string"` // The name of the lifecycle hook. // // LifecycleHookName is a required field LifecycleHookName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s RecordLifecycleActionHeartbeatInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecordLifecycleActionHeartbeatInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RecordLifecycleActionHeartbeatInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RecordLifecycleActionHeartbeatInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.InstanceId != nil && len(*s.InstanceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) } if s.LifecycleActionToken != nil && len(*s.LifecycleActionToken) < 36 { invalidParams.Add(request.NewErrParamMinLen("LifecycleActionToken", 36)) } if s.LifecycleHookName == nil { invalidParams.Add(request.NewErrParamRequired("LifecycleHookName")) } if s.LifecycleHookName != nil && len(*s.LifecycleHookName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LifecycleHookName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of RecordLifecycleActionHeartBeat. type RecordLifecycleActionHeartbeatOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RecordLifecycleActionHeartbeatOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecordLifecycleActionHeartbeatOutput) GoString() string { return s.String() } type ResumeProcessesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ResumeProcessesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResumeProcessesOutput) GoString() string { return s.String() } // Describes a scaling policy. type ScalingPolicy struct { _ struct{} `type:"structure"` // The adjustment type, which specifies how ScalingAdjustment is interpreted. // Valid values are ChangeInCapacity, ExactCapacity, and PercentChangeInCapacity. AdjustmentType *string `min:"1" type:"string"` // The CloudWatch alarms related to the policy. Alarms []*Alarm `type:"list"` // The name of the Auto Scaling group associated with this scaling policy. AutoScalingGroupName *string `min:"1" type:"string"` // The amount of time, in seconds, after a scaling activity completes before // any further trigger-related scaling activities can start. Cooldown *int64 `type:"integer"` // The estimated time, in seconds, until a newly launched instance can contribute // to the CloudWatch metrics. EstimatedInstanceWarmup *int64 `type:"integer"` // The aggregation type for the CloudWatch metrics. Valid values are Minimum, // Maximum, and Average. MetricAggregationType *string `min:"1" type:"string"` // The minimum number of instances to scale. If the value of AdjustmentType // is PercentChangeInCapacity, the scaling policy changes the DesiredCapacity // of the Auto Scaling group by at least this many instances. Otherwise, the // error is ValidationError. MinAdjustmentMagnitude *int64 `type:"integer"` // Available for backward compatibility. Use MinAdjustmentMagnitude instead. MinAdjustmentStep *int64 `deprecated:"true" type:"integer"` // The Amazon Resource Name (ARN) of the policy. PolicyARN *string `min:"1" type:"string"` // The name of the scaling policy. PolicyName *string `min:"1" type:"string"` // The policy type. Valid values are SimpleScaling and StepScaling. PolicyType *string `min:"1" type:"string"` // The amount by which to scale, based on the specified adjustment type. A positive // value adds to the current capacity while a negative number removes from the // current capacity. ScalingAdjustment *int64 `type:"integer"` // A set of adjustments that enable you to scale based on the size of the alarm // breach. StepAdjustments []*StepAdjustment `type:"list"` } // String returns the string representation func (s ScalingPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScalingPolicy) GoString() string { return s.String() } // Contains the parameters for SuspendProcesses and ResumeProcesses. type ScalingProcessQuery struct { _ struct{} `type:"structure"` // The name or Amazon Resource Name (ARN) of the Auto Scaling group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // One or more of the following processes. If you omit this parameter, all processes // are specified. // // * Launch // // * Terminate // // * HealthCheck // // * ReplaceUnhealthy // // * AZRebalance // // * AlarmNotification // // * ScheduledActions // // * AddToLoadBalancer ScalingProcesses []*string `type:"list"` } // String returns the string representation func (s ScalingProcessQuery) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScalingProcessQuery) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ScalingProcessQuery) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ScalingProcessQuery"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a scheduled update to an Auto Scaling group. type ScheduledUpdateGroupAction struct { _ struct{} `type:"structure"` // The name of the group. AutoScalingGroupName *string `min:"1" type:"string"` // The number of instances you prefer to maintain in the group. DesiredCapacity *int64 `type:"integer"` // The date and time that the action is scheduled to end. This date and time // can be up to one month in the future. EndTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The maximum size of the group. MaxSize *int64 `type:"integer"` // The minimum size of the group. MinSize *int64 `type:"integer"` // The recurring schedule for the action. Recurrence *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of the scheduled action. ScheduledActionARN *string `min:"1" type:"string"` // The name of the scheduled action. ScheduledActionName *string `min:"1" type:"string"` // The date and time that the action is scheduled to begin. This date and time // can be up to one month in the future. // // When StartTime and EndTime are specified with Recurrence, they form the boundaries // of when the recurring action will start and stop. StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // This parameter is deprecated. Time *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s ScheduledUpdateGroupAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduledUpdateGroupAction) GoString() string { return s.String() } // Contains the parameters for SetDesiredCapacity. type SetDesiredCapacityInput struct { _ struct{} `type:"structure"` // The name of the Auto Scaling group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // The number of EC2 instances that should be running in the Auto Scaling group. // // DesiredCapacity is a required field DesiredCapacity *int64 `type:"integer" required:"true"` // By default, SetDesiredCapacity overrides any cooldown period associated with // the Auto Scaling group. Specify True to make Auto Scaling to wait for the // cool-down period associated with the Auto Scaling group to complete before // initiating a scaling activity to set your Auto Scaling group to its new capacity. HonorCooldown *bool `type:"boolean"` } // String returns the string representation func (s SetDesiredCapacityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetDesiredCapacityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetDesiredCapacityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetDesiredCapacityInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.DesiredCapacity == nil { invalidParams.Add(request.NewErrParamRequired("DesiredCapacity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetDesiredCapacityOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetDesiredCapacityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetDesiredCapacityOutput) GoString() string { return s.String() } // Contains the parameters for SetInstanceHealth. type SetInstanceHealthInput struct { _ struct{} `type:"structure"` // The health status of the instance. Set to Healthy if you want the instance // to remain in service. Set to Unhealthy if you want the instance to be out // of service. Auto Scaling will terminate and replace the unhealthy instance. // // HealthStatus is a required field HealthStatus *string `min:"1" type:"string" required:"true"` // The ID of the instance. // // InstanceId is a required field InstanceId *string `min:"1" type:"string" required:"true"` // If the Auto Scaling group of the specified instance has a HealthCheckGracePeriod // specified for the group, by default, this call will respect the grace period. // Set this to False, if you do not want the call to respect the grace period // associated with the group. // // For more information, see the description of the health check grace period // for CreateAutoScalingGroup. ShouldRespectGracePeriod *bool `type:"boolean"` } // String returns the string representation func (s SetInstanceHealthInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetInstanceHealthInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetInstanceHealthInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetInstanceHealthInput"} if s.HealthStatus == nil { invalidParams.Add(request.NewErrParamRequired("HealthStatus")) } if s.HealthStatus != nil && len(*s.HealthStatus) < 1 { invalidParams.Add(request.NewErrParamMinLen("HealthStatus", 1)) } if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if s.InstanceId != nil && len(*s.InstanceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetInstanceHealthOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetInstanceHealthOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetInstanceHealthOutput) GoString() string { return s.String() } // Contains the parameters for SetInstanceProtection. type SetInstanceProtectionInput struct { _ struct{} `type:"structure"` // The name of the group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // One or more instance IDs. // // InstanceIds is a required field InstanceIds []*string `type:"list" required:"true"` // Indicates whether the instance is protected from termination by Auto Scaling // when scaling in. // // ProtectedFromScaleIn is a required field ProtectedFromScaleIn *bool `type:"boolean" required:"true"` } // String returns the string representation func (s SetInstanceProtectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetInstanceProtectionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetInstanceProtectionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetInstanceProtectionInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.InstanceIds == nil { invalidParams.Add(request.NewErrParamRequired("InstanceIds")) } if s.ProtectedFromScaleIn == nil { invalidParams.Add(request.NewErrParamRequired("ProtectedFromScaleIn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of SetInstanceProtection. type SetInstanceProtectionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetInstanceProtectionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetInstanceProtectionOutput) GoString() string { return s.String() } // Describes an adjustment based on the difference between the value of the // aggregated CloudWatch metric and the breach threshold that you've defined // for the alarm. // // For the following examples, suppose that you have an alarm with a breach // threshold of 50: // // * If you want the adjustment to be triggered when the metric is greater // than or equal to 50 and less than 60, specify a lower bound of 0 and an // upper bound of 10. // // * If you want the adjustment to be triggered when the metric is greater // than 40 and less than or equal to 50, specify a lower bound of -10 and // an upper bound of 0. // // There are a few rules for the step adjustments for your step policy: // // * The ranges of your step adjustments can't overlap or have a gap. // // * At most one step adjustment can have a null lower bound. If one step // adjustment has a negative lower bound, then there must be a step adjustment // with a null lower bound. // // * At most one step adjustment can have a null upper bound. If one step // adjustment has a positive upper bound, then there must be a step adjustment // with a null upper bound. // // * The upper and lower bound can't be null in the same step adjustment. type StepAdjustment struct { _ struct{} `type:"structure"` // The lower bound for the difference between the alarm threshold and the CloudWatch // metric. If the metric value is above the breach threshold, the lower bound // is inclusive (the metric must be greater than or equal to the threshold plus // the lower bound). Otherwise, it is exclusive (the metric must be greater // than the threshold plus the lower bound). A null value indicates negative // infinity. MetricIntervalLowerBound *float64 `type:"double"` // The upper bound for the difference between the alarm threshold and the CloudWatch // metric. If the metric value is above the breach threshold, the upper bound // is exclusive (the metric must be less than the threshold plus the upper bound). // Otherwise, it is inclusive (the metric must be less than or equal to the // threshold plus the upper bound). A null value indicates positive infinity. // // The upper bound must be greater than the lower bound. MetricIntervalUpperBound *float64 `type:"double"` // The amount by which to scale, based on the specified adjustment type. A positive // value adds to the current capacity while a negative number removes from the // current capacity. // // ScalingAdjustment is a required field ScalingAdjustment *int64 `type:"integer" required:"true"` } // String returns the string representation func (s StepAdjustment) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StepAdjustment) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StepAdjustment) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StepAdjustment"} if s.ScalingAdjustment == nil { invalidParams.Add(request.NewErrParamRequired("ScalingAdjustment")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SuspendProcessesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SuspendProcessesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SuspendProcessesOutput) GoString() string { return s.String() } // Describes an Auto Scaling process that has been suspended. For more information, // see ProcessType. type SuspendedProcess struct { _ struct{} `type:"structure"` // The name of the suspended process. ProcessName *string `min:"1" type:"string"` // The reason that the process was suspended. SuspensionReason *string `min:"1" type:"string"` } // String returns the string representation func (s SuspendedProcess) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SuspendedProcess) GoString() string { return s.String() } // Describes a tag for an Auto Scaling group. type Tag struct { _ struct{} `type:"structure"` // The tag key. // // Key is a required field Key *string `min:"1" type:"string" required:"true"` // Determines whether the tag is added to new instances as they are launched // in the group. PropagateAtLaunch *bool `type:"boolean"` // The name of the group. ResourceId *string `type:"string"` // The type of resource. The only supported value is auto-scaling-group. ResourceType *string `type:"string"` // The tag value. Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a tag for an Auto Scaling group. type TagDescription struct { _ struct{} `type:"structure"` // The tag key. Key *string `min:"1" type:"string"` // Determines whether the tag is added to new instances as they are launched // in the group. PropagateAtLaunch *bool `type:"boolean"` // The name of the group. ResourceId *string `type:"string"` // The type of resource. The only supported value is auto-scaling-group. ResourceType *string `type:"string"` // The tag value. Value *string `type:"string"` } // String returns the string representation func (s TagDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TagDescription) GoString() string { return s.String() } // Contains the parameters for TerminateInstanceInAutoScalingGroup. type TerminateInstanceInAutoScalingGroupInput struct { _ struct{} `type:"structure"` // The ID of the instance. // // InstanceId is a required field InstanceId *string `min:"1" type:"string" required:"true"` // If true, terminating the instance also decrements the size of the Auto Scaling // group. // // ShouldDecrementDesiredCapacity is a required field ShouldDecrementDesiredCapacity *bool `type:"boolean" required:"true"` } // String returns the string representation func (s TerminateInstanceInAutoScalingGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TerminateInstanceInAutoScalingGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TerminateInstanceInAutoScalingGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TerminateInstanceInAutoScalingGroupInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if s.InstanceId != nil && len(*s.InstanceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceId", 1)) } if s.ShouldDecrementDesiredCapacity == nil { invalidParams.Add(request.NewErrParamRequired("ShouldDecrementDesiredCapacity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of TerminateInstancesInAutoScalingGroup. type TerminateInstanceInAutoScalingGroupOutput struct { _ struct{} `type:"structure"` // A scaling activity. Activity *Activity `type:"structure"` } // String returns the string representation func (s TerminateInstanceInAutoScalingGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TerminateInstanceInAutoScalingGroupOutput) GoString() string { return s.String() } // Contains the parameters for UpdateAutoScalingGroup. type UpdateAutoScalingGroupInput struct { _ struct{} `type:"structure"` // The name of the Auto Scaling group. // // AutoScalingGroupName is a required field AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // One or more Availability Zones for the group. AvailabilityZones []*string `min:"1" type:"list"` // The amount of time, in seconds, after a scaling activity completes before // another scaling activity can start. The default is 300. // // For more information, see Auto Scaling Cooldowns (http://docs.aws.amazon.com/autoscaling/latest/userguide/Cooldown.html) // in the Auto Scaling User Guide. DefaultCooldown *int64 `type:"integer"` // The number of EC2 instances that should be running in the Auto Scaling group. // This number must be greater than or equal to the minimum size of the group // and less than or equal to the maximum size of the group. DesiredCapacity *int64 `type:"integer"` // The amount of time, in seconds, that Auto Scaling waits before checking the // health status of an EC2 instance that has come into service. The default // is 0. // // For more information, see Health Checks (http://docs.aws.amazon.com/autoscaling/latest/userguide/healthcheck.html) // in the Auto Scaling User Guide. HealthCheckGracePeriod *int64 `type:"integer"` // The service to use for the health checks. The valid values are EC2 and ELB. HealthCheckType *string `min:"1" type:"string"` // The name of the launch configuration. LaunchConfigurationName *string `min:"1" type:"string"` // The maximum size of the Auto Scaling group. MaxSize *int64 `type:"integer"` // The minimum size of the Auto Scaling group. MinSize *int64 `type:"integer"` // Indicates whether newly launched instances are protected from termination // by Auto Scaling when scaling in. NewInstancesProtectedFromScaleIn *bool `type:"boolean"` // The name of the placement group into which you'll launch your instances, // if any. For more information, see Placement Groups (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) // in the Amazon Elastic Compute Cloud User Guide. PlacementGroup *string `min:"1" type:"string"` // A standalone termination policy or a list of termination policies used to // select the instance to terminate. The policies are executed in the order // that they are listed. // // For more information, see Controlling Which Instances Auto Scaling Terminates // During Scale In (http://docs.aws.amazon.com/autoscaling/latest/userguide/as-instance-termination.html) // in the Auto Scaling User Guide. TerminationPolicies []*string `type:"list"` // The ID of the subnet, if you are launching into a VPC. You can specify several // subnets in a comma-separated list. // // When you specify VPCZoneIdentifier with AvailabilityZones, ensure that the // subnets' Availability Zones match the values you specify for AvailabilityZones. // // For more information, see Launching Auto Scaling Instances in a VPC (http://docs.aws.amazon.com/autoscaling/latest/userguide/asg-in-vpc.html) // in the Auto Scaling User Guide. VPCZoneIdentifier *string `min:"1" type:"string"` } // String returns the string representation func (s UpdateAutoScalingGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAutoScalingGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateAutoScalingGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateAutoScalingGroupInput"} if s.AutoScalingGroupName == nil { invalidParams.Add(request.NewErrParamRequired("AutoScalingGroupName")) } if s.AutoScalingGroupName != nil && len(*s.AutoScalingGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AutoScalingGroupName", 1)) } if s.AvailabilityZones != nil && len(s.AvailabilityZones) < 1 { invalidParams.Add(request.NewErrParamMinLen("AvailabilityZones", 1)) } if s.HealthCheckType != nil && len(*s.HealthCheckType) < 1 { invalidParams.Add(request.NewErrParamMinLen("HealthCheckType", 1)) } if s.LaunchConfigurationName != nil && len(*s.LaunchConfigurationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LaunchConfigurationName", 1)) } if s.PlacementGroup != nil && len(*s.PlacementGroup) < 1 { invalidParams.Add(request.NewErrParamMinLen("PlacementGroup", 1)) } if s.VPCZoneIdentifier != nil && len(*s.VPCZoneIdentifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("VPCZoneIdentifier", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateAutoScalingGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateAutoScalingGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAutoScalingGroupOutput) GoString() string { return s.String() } const ( // LifecycleStatePending is a LifecycleState enum value LifecycleStatePending = "Pending" // LifecycleStatePendingWait is a LifecycleState enum value LifecycleStatePendingWait = "Pending:Wait" // LifecycleStatePendingProceed is a LifecycleState enum value LifecycleStatePendingProceed = "Pending:Proceed" // LifecycleStateQuarantined is a LifecycleState enum value LifecycleStateQuarantined = "Quarantined" // LifecycleStateInService is a LifecycleState enum value LifecycleStateInService = "InService" // LifecycleStateTerminating is a LifecycleState enum value LifecycleStateTerminating = "Terminating" // LifecycleStateTerminatingWait is a LifecycleState enum value LifecycleStateTerminatingWait = "Terminating:Wait" // LifecycleStateTerminatingProceed is a LifecycleState enum value LifecycleStateTerminatingProceed = "Terminating:Proceed" // LifecycleStateTerminated is a LifecycleState enum value LifecycleStateTerminated = "Terminated" // LifecycleStateDetaching is a LifecycleState enum value LifecycleStateDetaching = "Detaching" // LifecycleStateDetached is a LifecycleState enum value LifecycleStateDetached = "Detached" // LifecycleStateEnteringStandby is a LifecycleState enum value LifecycleStateEnteringStandby = "EnteringStandby" // LifecycleStateStandby is a LifecycleState enum value LifecycleStateStandby = "Standby" ) const ( // ScalingActivityStatusCodePendingSpotBidPlacement is a ScalingActivityStatusCode enum value ScalingActivityStatusCodePendingSpotBidPlacement = "PendingSpotBidPlacement" // ScalingActivityStatusCodeWaitingForSpotInstanceRequestId is a ScalingActivityStatusCode enum value ScalingActivityStatusCodeWaitingForSpotInstanceRequestId = "WaitingForSpotInstanceRequestId" // ScalingActivityStatusCodeWaitingForSpotInstanceId is a ScalingActivityStatusCode enum value ScalingActivityStatusCodeWaitingForSpotInstanceId = "WaitingForSpotInstanceId" // ScalingActivityStatusCodeWaitingForInstanceId is a ScalingActivityStatusCode enum value ScalingActivityStatusCodeWaitingForInstanceId = "WaitingForInstanceId" // ScalingActivityStatusCodePreInService is a ScalingActivityStatusCode enum value ScalingActivityStatusCodePreInService = "PreInService" // ScalingActivityStatusCodeInProgress is a ScalingActivityStatusCode enum value ScalingActivityStatusCodeInProgress = "InProgress" // ScalingActivityStatusCodeWaitingForElbconnectionDraining is a ScalingActivityStatusCode enum value ScalingActivityStatusCodeWaitingForElbconnectionDraining = "WaitingForELBConnectionDraining" // ScalingActivityStatusCodeMidLifecycleAction is a ScalingActivityStatusCode enum value ScalingActivityStatusCodeMidLifecycleAction = "MidLifecycleAction" // ScalingActivityStatusCodeWaitingForInstanceWarmup is a ScalingActivityStatusCode enum value ScalingActivityStatusCodeWaitingForInstanceWarmup = "WaitingForInstanceWarmup" // ScalingActivityStatusCodeSuccessful is a ScalingActivityStatusCode enum value ScalingActivityStatusCodeSuccessful = "Successful" // ScalingActivityStatusCodeFailed is a ScalingActivityStatusCode enum value ScalingActivityStatusCodeFailed = "Failed" // ScalingActivityStatusCodeCancelled is a ScalingActivityStatusCode enum value ScalingActivityStatusCodeCancelled = "Cancelled" ) aws-sdk-go-1.4.22/service/autoscaling/autoscalingiface/000077500000000000000000000000001300374646400230355ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/autoscaling/autoscalingiface/interface.go000066400000000000000000000410341300374646400253260ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package autoscalingiface provides an interface to enable mocking the Auto Scaling service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package autoscalingiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/autoscaling" ) // AutoScalingAPI provides an interface to enable mocking the // autoscaling.AutoScaling service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Auto Scaling. // func myFunc(svc autoscalingiface.AutoScalingAPI) bool { // // Make svc.AttachInstances request // } // // func main() { // sess := session.New() // svc := autoscaling.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockAutoScalingClient struct { // autoscalingiface.AutoScalingAPI // } // func (m *mockAutoScalingClient) AttachInstances(input *autoscaling.AttachInstancesInput) (*autoscaling.AttachInstancesOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockAutoScalingClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type AutoScalingAPI interface { AttachInstancesRequest(*autoscaling.AttachInstancesInput) (*request.Request, *autoscaling.AttachInstancesOutput) AttachInstances(*autoscaling.AttachInstancesInput) (*autoscaling.AttachInstancesOutput, error) AttachLoadBalancerTargetGroupsRequest(*autoscaling.AttachLoadBalancerTargetGroupsInput) (*request.Request, *autoscaling.AttachLoadBalancerTargetGroupsOutput) AttachLoadBalancerTargetGroups(*autoscaling.AttachLoadBalancerTargetGroupsInput) (*autoscaling.AttachLoadBalancerTargetGroupsOutput, error) AttachLoadBalancersRequest(*autoscaling.AttachLoadBalancersInput) (*request.Request, *autoscaling.AttachLoadBalancersOutput) AttachLoadBalancers(*autoscaling.AttachLoadBalancersInput) (*autoscaling.AttachLoadBalancersOutput, error) CompleteLifecycleActionRequest(*autoscaling.CompleteLifecycleActionInput) (*request.Request, *autoscaling.CompleteLifecycleActionOutput) CompleteLifecycleAction(*autoscaling.CompleteLifecycleActionInput) (*autoscaling.CompleteLifecycleActionOutput, error) CreateAutoScalingGroupRequest(*autoscaling.CreateAutoScalingGroupInput) (*request.Request, *autoscaling.CreateAutoScalingGroupOutput) CreateAutoScalingGroup(*autoscaling.CreateAutoScalingGroupInput) (*autoscaling.CreateAutoScalingGroupOutput, error) CreateLaunchConfigurationRequest(*autoscaling.CreateLaunchConfigurationInput) (*request.Request, *autoscaling.CreateLaunchConfigurationOutput) CreateLaunchConfiguration(*autoscaling.CreateLaunchConfigurationInput) (*autoscaling.CreateLaunchConfigurationOutput, error) CreateOrUpdateTagsRequest(*autoscaling.CreateOrUpdateTagsInput) (*request.Request, *autoscaling.CreateOrUpdateTagsOutput) CreateOrUpdateTags(*autoscaling.CreateOrUpdateTagsInput) (*autoscaling.CreateOrUpdateTagsOutput, error) DeleteAutoScalingGroupRequest(*autoscaling.DeleteAutoScalingGroupInput) (*request.Request, *autoscaling.DeleteAutoScalingGroupOutput) DeleteAutoScalingGroup(*autoscaling.DeleteAutoScalingGroupInput) (*autoscaling.DeleteAutoScalingGroupOutput, error) DeleteLaunchConfigurationRequest(*autoscaling.DeleteLaunchConfigurationInput) (*request.Request, *autoscaling.DeleteLaunchConfigurationOutput) DeleteLaunchConfiguration(*autoscaling.DeleteLaunchConfigurationInput) (*autoscaling.DeleteLaunchConfigurationOutput, error) DeleteLifecycleHookRequest(*autoscaling.DeleteLifecycleHookInput) (*request.Request, *autoscaling.DeleteLifecycleHookOutput) DeleteLifecycleHook(*autoscaling.DeleteLifecycleHookInput) (*autoscaling.DeleteLifecycleHookOutput, error) DeleteNotificationConfigurationRequest(*autoscaling.DeleteNotificationConfigurationInput) (*request.Request, *autoscaling.DeleteNotificationConfigurationOutput) DeleteNotificationConfiguration(*autoscaling.DeleteNotificationConfigurationInput) (*autoscaling.DeleteNotificationConfigurationOutput, error) DeletePolicyRequest(*autoscaling.DeletePolicyInput) (*request.Request, *autoscaling.DeletePolicyOutput) DeletePolicy(*autoscaling.DeletePolicyInput) (*autoscaling.DeletePolicyOutput, error) DeleteScheduledActionRequest(*autoscaling.DeleteScheduledActionInput) (*request.Request, *autoscaling.DeleteScheduledActionOutput) DeleteScheduledAction(*autoscaling.DeleteScheduledActionInput) (*autoscaling.DeleteScheduledActionOutput, error) DeleteTagsRequest(*autoscaling.DeleteTagsInput) (*request.Request, *autoscaling.DeleteTagsOutput) DeleteTags(*autoscaling.DeleteTagsInput) (*autoscaling.DeleteTagsOutput, error) DescribeAccountLimitsRequest(*autoscaling.DescribeAccountLimitsInput) (*request.Request, *autoscaling.DescribeAccountLimitsOutput) DescribeAccountLimits(*autoscaling.DescribeAccountLimitsInput) (*autoscaling.DescribeAccountLimitsOutput, error) DescribeAdjustmentTypesRequest(*autoscaling.DescribeAdjustmentTypesInput) (*request.Request, *autoscaling.DescribeAdjustmentTypesOutput) DescribeAdjustmentTypes(*autoscaling.DescribeAdjustmentTypesInput) (*autoscaling.DescribeAdjustmentTypesOutput, error) DescribeAutoScalingGroupsRequest(*autoscaling.DescribeAutoScalingGroupsInput) (*request.Request, *autoscaling.DescribeAutoScalingGroupsOutput) DescribeAutoScalingGroups(*autoscaling.DescribeAutoScalingGroupsInput) (*autoscaling.DescribeAutoScalingGroupsOutput, error) DescribeAutoScalingGroupsPages(*autoscaling.DescribeAutoScalingGroupsInput, func(*autoscaling.DescribeAutoScalingGroupsOutput, bool) bool) error DescribeAutoScalingInstancesRequest(*autoscaling.DescribeAutoScalingInstancesInput) (*request.Request, *autoscaling.DescribeAutoScalingInstancesOutput) DescribeAutoScalingInstances(*autoscaling.DescribeAutoScalingInstancesInput) (*autoscaling.DescribeAutoScalingInstancesOutput, error) DescribeAutoScalingInstancesPages(*autoscaling.DescribeAutoScalingInstancesInput, func(*autoscaling.DescribeAutoScalingInstancesOutput, bool) bool) error DescribeAutoScalingNotificationTypesRequest(*autoscaling.DescribeAutoScalingNotificationTypesInput) (*request.Request, *autoscaling.DescribeAutoScalingNotificationTypesOutput) DescribeAutoScalingNotificationTypes(*autoscaling.DescribeAutoScalingNotificationTypesInput) (*autoscaling.DescribeAutoScalingNotificationTypesOutput, error) DescribeLaunchConfigurationsRequest(*autoscaling.DescribeLaunchConfigurationsInput) (*request.Request, *autoscaling.DescribeLaunchConfigurationsOutput) DescribeLaunchConfigurations(*autoscaling.DescribeLaunchConfigurationsInput) (*autoscaling.DescribeLaunchConfigurationsOutput, error) DescribeLaunchConfigurationsPages(*autoscaling.DescribeLaunchConfigurationsInput, func(*autoscaling.DescribeLaunchConfigurationsOutput, bool) bool) error DescribeLifecycleHookTypesRequest(*autoscaling.DescribeLifecycleHookTypesInput) (*request.Request, *autoscaling.DescribeLifecycleHookTypesOutput) DescribeLifecycleHookTypes(*autoscaling.DescribeLifecycleHookTypesInput) (*autoscaling.DescribeLifecycleHookTypesOutput, error) DescribeLifecycleHooksRequest(*autoscaling.DescribeLifecycleHooksInput) (*request.Request, *autoscaling.DescribeLifecycleHooksOutput) DescribeLifecycleHooks(*autoscaling.DescribeLifecycleHooksInput) (*autoscaling.DescribeLifecycleHooksOutput, error) DescribeLoadBalancerTargetGroupsRequest(*autoscaling.DescribeLoadBalancerTargetGroupsInput) (*request.Request, *autoscaling.DescribeLoadBalancerTargetGroupsOutput) DescribeLoadBalancerTargetGroups(*autoscaling.DescribeLoadBalancerTargetGroupsInput) (*autoscaling.DescribeLoadBalancerTargetGroupsOutput, error) DescribeLoadBalancersRequest(*autoscaling.DescribeLoadBalancersInput) (*request.Request, *autoscaling.DescribeLoadBalancersOutput) DescribeLoadBalancers(*autoscaling.DescribeLoadBalancersInput) (*autoscaling.DescribeLoadBalancersOutput, error) DescribeMetricCollectionTypesRequest(*autoscaling.DescribeMetricCollectionTypesInput) (*request.Request, *autoscaling.DescribeMetricCollectionTypesOutput) DescribeMetricCollectionTypes(*autoscaling.DescribeMetricCollectionTypesInput) (*autoscaling.DescribeMetricCollectionTypesOutput, error) DescribeNotificationConfigurationsRequest(*autoscaling.DescribeNotificationConfigurationsInput) (*request.Request, *autoscaling.DescribeNotificationConfigurationsOutput) DescribeNotificationConfigurations(*autoscaling.DescribeNotificationConfigurationsInput) (*autoscaling.DescribeNotificationConfigurationsOutput, error) DescribeNotificationConfigurationsPages(*autoscaling.DescribeNotificationConfigurationsInput, func(*autoscaling.DescribeNotificationConfigurationsOutput, bool) bool) error DescribePoliciesRequest(*autoscaling.DescribePoliciesInput) (*request.Request, *autoscaling.DescribePoliciesOutput) DescribePolicies(*autoscaling.DescribePoliciesInput) (*autoscaling.DescribePoliciesOutput, error) DescribePoliciesPages(*autoscaling.DescribePoliciesInput, func(*autoscaling.DescribePoliciesOutput, bool) bool) error DescribeScalingActivitiesRequest(*autoscaling.DescribeScalingActivitiesInput) (*request.Request, *autoscaling.DescribeScalingActivitiesOutput) DescribeScalingActivities(*autoscaling.DescribeScalingActivitiesInput) (*autoscaling.DescribeScalingActivitiesOutput, error) DescribeScalingActivitiesPages(*autoscaling.DescribeScalingActivitiesInput, func(*autoscaling.DescribeScalingActivitiesOutput, bool) bool) error DescribeScalingProcessTypesRequest(*autoscaling.DescribeScalingProcessTypesInput) (*request.Request, *autoscaling.DescribeScalingProcessTypesOutput) DescribeScalingProcessTypes(*autoscaling.DescribeScalingProcessTypesInput) (*autoscaling.DescribeScalingProcessTypesOutput, error) DescribeScheduledActionsRequest(*autoscaling.DescribeScheduledActionsInput) (*request.Request, *autoscaling.DescribeScheduledActionsOutput) DescribeScheduledActions(*autoscaling.DescribeScheduledActionsInput) (*autoscaling.DescribeScheduledActionsOutput, error) DescribeScheduledActionsPages(*autoscaling.DescribeScheduledActionsInput, func(*autoscaling.DescribeScheduledActionsOutput, bool) bool) error DescribeTagsRequest(*autoscaling.DescribeTagsInput) (*request.Request, *autoscaling.DescribeTagsOutput) DescribeTags(*autoscaling.DescribeTagsInput) (*autoscaling.DescribeTagsOutput, error) DescribeTagsPages(*autoscaling.DescribeTagsInput, func(*autoscaling.DescribeTagsOutput, bool) bool) error DescribeTerminationPolicyTypesRequest(*autoscaling.DescribeTerminationPolicyTypesInput) (*request.Request, *autoscaling.DescribeTerminationPolicyTypesOutput) DescribeTerminationPolicyTypes(*autoscaling.DescribeTerminationPolicyTypesInput) (*autoscaling.DescribeTerminationPolicyTypesOutput, error) DetachInstancesRequest(*autoscaling.DetachInstancesInput) (*request.Request, *autoscaling.DetachInstancesOutput) DetachInstances(*autoscaling.DetachInstancesInput) (*autoscaling.DetachInstancesOutput, error) DetachLoadBalancerTargetGroupsRequest(*autoscaling.DetachLoadBalancerTargetGroupsInput) (*request.Request, *autoscaling.DetachLoadBalancerTargetGroupsOutput) DetachLoadBalancerTargetGroups(*autoscaling.DetachLoadBalancerTargetGroupsInput) (*autoscaling.DetachLoadBalancerTargetGroupsOutput, error) DetachLoadBalancersRequest(*autoscaling.DetachLoadBalancersInput) (*request.Request, *autoscaling.DetachLoadBalancersOutput) DetachLoadBalancers(*autoscaling.DetachLoadBalancersInput) (*autoscaling.DetachLoadBalancersOutput, error) DisableMetricsCollectionRequest(*autoscaling.DisableMetricsCollectionInput) (*request.Request, *autoscaling.DisableMetricsCollectionOutput) DisableMetricsCollection(*autoscaling.DisableMetricsCollectionInput) (*autoscaling.DisableMetricsCollectionOutput, error) EnableMetricsCollectionRequest(*autoscaling.EnableMetricsCollectionInput) (*request.Request, *autoscaling.EnableMetricsCollectionOutput) EnableMetricsCollection(*autoscaling.EnableMetricsCollectionInput) (*autoscaling.EnableMetricsCollectionOutput, error) EnterStandbyRequest(*autoscaling.EnterStandbyInput) (*request.Request, *autoscaling.EnterStandbyOutput) EnterStandby(*autoscaling.EnterStandbyInput) (*autoscaling.EnterStandbyOutput, error) ExecutePolicyRequest(*autoscaling.ExecutePolicyInput) (*request.Request, *autoscaling.ExecutePolicyOutput) ExecutePolicy(*autoscaling.ExecutePolicyInput) (*autoscaling.ExecutePolicyOutput, error) ExitStandbyRequest(*autoscaling.ExitStandbyInput) (*request.Request, *autoscaling.ExitStandbyOutput) ExitStandby(*autoscaling.ExitStandbyInput) (*autoscaling.ExitStandbyOutput, error) PutLifecycleHookRequest(*autoscaling.PutLifecycleHookInput) (*request.Request, *autoscaling.PutLifecycleHookOutput) PutLifecycleHook(*autoscaling.PutLifecycleHookInput) (*autoscaling.PutLifecycleHookOutput, error) PutNotificationConfigurationRequest(*autoscaling.PutNotificationConfigurationInput) (*request.Request, *autoscaling.PutNotificationConfigurationOutput) PutNotificationConfiguration(*autoscaling.PutNotificationConfigurationInput) (*autoscaling.PutNotificationConfigurationOutput, error) PutScalingPolicyRequest(*autoscaling.PutScalingPolicyInput) (*request.Request, *autoscaling.PutScalingPolicyOutput) PutScalingPolicy(*autoscaling.PutScalingPolicyInput) (*autoscaling.PutScalingPolicyOutput, error) PutScheduledUpdateGroupActionRequest(*autoscaling.PutScheduledUpdateGroupActionInput) (*request.Request, *autoscaling.PutScheduledUpdateGroupActionOutput) PutScheduledUpdateGroupAction(*autoscaling.PutScheduledUpdateGroupActionInput) (*autoscaling.PutScheduledUpdateGroupActionOutput, error) RecordLifecycleActionHeartbeatRequest(*autoscaling.RecordLifecycleActionHeartbeatInput) (*request.Request, *autoscaling.RecordLifecycleActionHeartbeatOutput) RecordLifecycleActionHeartbeat(*autoscaling.RecordLifecycleActionHeartbeatInput) (*autoscaling.RecordLifecycleActionHeartbeatOutput, error) ResumeProcessesRequest(*autoscaling.ScalingProcessQuery) (*request.Request, *autoscaling.ResumeProcessesOutput) ResumeProcesses(*autoscaling.ScalingProcessQuery) (*autoscaling.ResumeProcessesOutput, error) SetDesiredCapacityRequest(*autoscaling.SetDesiredCapacityInput) (*request.Request, *autoscaling.SetDesiredCapacityOutput) SetDesiredCapacity(*autoscaling.SetDesiredCapacityInput) (*autoscaling.SetDesiredCapacityOutput, error) SetInstanceHealthRequest(*autoscaling.SetInstanceHealthInput) (*request.Request, *autoscaling.SetInstanceHealthOutput) SetInstanceHealth(*autoscaling.SetInstanceHealthInput) (*autoscaling.SetInstanceHealthOutput, error) SetInstanceProtectionRequest(*autoscaling.SetInstanceProtectionInput) (*request.Request, *autoscaling.SetInstanceProtectionOutput) SetInstanceProtection(*autoscaling.SetInstanceProtectionInput) (*autoscaling.SetInstanceProtectionOutput, error) SuspendProcessesRequest(*autoscaling.ScalingProcessQuery) (*request.Request, *autoscaling.SuspendProcessesOutput) SuspendProcesses(*autoscaling.ScalingProcessQuery) (*autoscaling.SuspendProcessesOutput, error) TerminateInstanceInAutoScalingGroupRequest(*autoscaling.TerminateInstanceInAutoScalingGroupInput) (*request.Request, *autoscaling.TerminateInstanceInAutoScalingGroupOutput) TerminateInstanceInAutoScalingGroup(*autoscaling.TerminateInstanceInAutoScalingGroupInput) (*autoscaling.TerminateInstanceInAutoScalingGroupOutput, error) UpdateAutoScalingGroupRequest(*autoscaling.UpdateAutoScalingGroupInput) (*request.Request, *autoscaling.UpdateAutoScalingGroupOutput) UpdateAutoScalingGroup(*autoscaling.UpdateAutoScalingGroupInput) (*autoscaling.UpdateAutoScalingGroupOutput, error) WaitUntilGroupExists(*autoscaling.DescribeAutoScalingGroupsInput) error WaitUntilGroupInService(*autoscaling.DescribeAutoScalingGroupsInput) error WaitUntilGroupNotExists(*autoscaling.DescribeAutoScalingGroupsInput) error } var _ AutoScalingAPI = (*autoscaling.AutoScaling)(nil) aws-sdk-go-1.4.22/service/autoscaling/examples_test.go000066400000000000000000001164331300374646400227500ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package autoscaling_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/autoscaling" ) var _ time.Duration var _ bytes.Buffer func ExampleAutoScaling_AttachInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.AttachInstancesInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required InstanceIds: []*string{ aws.String("XmlStringMaxLen19"), // Required // More values... }, } resp, err := svc.AttachInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_AttachLoadBalancerTargetGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.AttachLoadBalancerTargetGroupsInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required TargetGroupARNs: []*string{ // Required aws.String("XmlStringMaxLen511"), // Required // More values... }, } resp, err := svc.AttachLoadBalancerTargetGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_AttachLoadBalancers() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.AttachLoadBalancersInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required LoadBalancerNames: []*string{ // Required aws.String("XmlStringMaxLen255"), // Required // More values... }, } resp, err := svc.AttachLoadBalancers(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_CompleteLifecycleAction() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.CompleteLifecycleActionInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required LifecycleActionResult: aws.String("LifecycleActionResult"), // Required LifecycleHookName: aws.String("AsciiStringMaxLen255"), // Required InstanceId: aws.String("XmlStringMaxLen19"), LifecycleActionToken: aws.String("LifecycleActionToken"), } resp, err := svc.CompleteLifecycleAction(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_CreateAutoScalingGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.CreateAutoScalingGroupInput{ AutoScalingGroupName: aws.String("XmlStringMaxLen255"), // Required MaxSize: aws.Int64(1), // Required MinSize: aws.Int64(1), // Required AvailabilityZones: []*string{ aws.String("XmlStringMaxLen255"), // Required // More values... }, DefaultCooldown: aws.Int64(1), DesiredCapacity: aws.Int64(1), HealthCheckGracePeriod: aws.Int64(1), HealthCheckType: aws.String("XmlStringMaxLen32"), InstanceId: aws.String("XmlStringMaxLen19"), LaunchConfigurationName: aws.String("ResourceName"), LoadBalancerNames: []*string{ aws.String("XmlStringMaxLen255"), // Required // More values... }, NewInstancesProtectedFromScaleIn: aws.Bool(true), PlacementGroup: aws.String("XmlStringMaxLen255"), Tags: []*autoscaling.Tag{ { // Required Key: aws.String("TagKey"), // Required PropagateAtLaunch: aws.Bool(true), ResourceId: aws.String("XmlString"), ResourceType: aws.String("XmlString"), Value: aws.String("TagValue"), }, // More values... }, TargetGroupARNs: []*string{ aws.String("XmlStringMaxLen511"), // Required // More values... }, TerminationPolicies: []*string{ aws.String("XmlStringMaxLen1600"), // Required // More values... }, VPCZoneIdentifier: aws.String("XmlStringMaxLen2047"), } resp, err := svc.CreateAutoScalingGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_CreateLaunchConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.CreateLaunchConfigurationInput{ LaunchConfigurationName: aws.String("XmlStringMaxLen255"), // Required AssociatePublicIpAddress: aws.Bool(true), BlockDeviceMappings: []*autoscaling.BlockDeviceMapping{ { // Required DeviceName: aws.String("XmlStringMaxLen255"), // Required Ebs: &autoscaling.Ebs{ DeleteOnTermination: aws.Bool(true), Encrypted: aws.Bool(true), Iops: aws.Int64(1), SnapshotId: aws.String("XmlStringMaxLen255"), VolumeSize: aws.Int64(1), VolumeType: aws.String("BlockDeviceEbsVolumeType"), }, NoDevice: aws.Bool(true), VirtualName: aws.String("XmlStringMaxLen255"), }, // More values... }, ClassicLinkVPCId: aws.String("XmlStringMaxLen255"), ClassicLinkVPCSecurityGroups: []*string{ aws.String("XmlStringMaxLen255"), // Required // More values... }, EbsOptimized: aws.Bool(true), IamInstanceProfile: aws.String("XmlStringMaxLen1600"), ImageId: aws.String("XmlStringMaxLen255"), InstanceId: aws.String("XmlStringMaxLen19"), InstanceMonitoring: &autoscaling.InstanceMonitoring{ Enabled: aws.Bool(true), }, InstanceType: aws.String("XmlStringMaxLen255"), KernelId: aws.String("XmlStringMaxLen255"), KeyName: aws.String("XmlStringMaxLen255"), PlacementTenancy: aws.String("XmlStringMaxLen64"), RamdiskId: aws.String("XmlStringMaxLen255"), SecurityGroups: []*string{ aws.String("XmlString"), // Required // More values... }, SpotPrice: aws.String("SpotPrice"), UserData: aws.String("XmlStringUserData"), } resp, err := svc.CreateLaunchConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_CreateOrUpdateTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.CreateOrUpdateTagsInput{ Tags: []*autoscaling.Tag{ // Required { // Required Key: aws.String("TagKey"), // Required PropagateAtLaunch: aws.Bool(true), ResourceId: aws.String("XmlString"), ResourceType: aws.String("XmlString"), Value: aws.String("TagValue"), }, // More values... }, } resp, err := svc.CreateOrUpdateTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DeleteAutoScalingGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DeleteAutoScalingGroupInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required ForceDelete: aws.Bool(true), } resp, err := svc.DeleteAutoScalingGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DeleteLaunchConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DeleteLaunchConfigurationInput{ LaunchConfigurationName: aws.String("ResourceName"), // Required } resp, err := svc.DeleteLaunchConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DeleteLifecycleHook() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DeleteLifecycleHookInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required LifecycleHookName: aws.String("AsciiStringMaxLen255"), // Required } resp, err := svc.DeleteLifecycleHook(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DeleteNotificationConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DeleteNotificationConfigurationInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required TopicARN: aws.String("ResourceName"), // Required } resp, err := svc.DeleteNotificationConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DeletePolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DeletePolicyInput{ PolicyName: aws.String("ResourceName"), // Required AutoScalingGroupName: aws.String("ResourceName"), } resp, err := svc.DeletePolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DeleteScheduledAction() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DeleteScheduledActionInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required ScheduledActionName: aws.String("ResourceName"), // Required } resp, err := svc.DeleteScheduledAction(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DeleteTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DeleteTagsInput{ Tags: []*autoscaling.Tag{ // Required { // Required Key: aws.String("TagKey"), // Required PropagateAtLaunch: aws.Bool(true), ResourceId: aws.String("XmlString"), ResourceType: aws.String("XmlString"), Value: aws.String("TagValue"), }, // More values... }, } resp, err := svc.DeleteTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DescribeAccountLimits() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) var params *autoscaling.DescribeAccountLimitsInput resp, err := svc.DescribeAccountLimits(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DescribeAdjustmentTypes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) var params *autoscaling.DescribeAdjustmentTypesInput resp, err := svc.DescribeAdjustmentTypes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DescribeAutoScalingGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DescribeAutoScalingGroupsInput{ AutoScalingGroupNames: []*string{ aws.String("ResourceName"), // Required // More values... }, MaxRecords: aws.Int64(1), NextToken: aws.String("XmlString"), } resp, err := svc.DescribeAutoScalingGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DescribeAutoScalingInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DescribeAutoScalingInstancesInput{ InstanceIds: []*string{ aws.String("XmlStringMaxLen19"), // Required // More values... }, MaxRecords: aws.Int64(1), NextToken: aws.String("XmlString"), } resp, err := svc.DescribeAutoScalingInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DescribeAutoScalingNotificationTypes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) var params *autoscaling.DescribeAutoScalingNotificationTypesInput resp, err := svc.DescribeAutoScalingNotificationTypes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DescribeLaunchConfigurations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DescribeLaunchConfigurationsInput{ LaunchConfigurationNames: []*string{ aws.String("ResourceName"), // Required // More values... }, MaxRecords: aws.Int64(1), NextToken: aws.String("XmlString"), } resp, err := svc.DescribeLaunchConfigurations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DescribeLifecycleHookTypes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) var params *autoscaling.DescribeLifecycleHookTypesInput resp, err := svc.DescribeLifecycleHookTypes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DescribeLifecycleHooks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DescribeLifecycleHooksInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required LifecycleHookNames: []*string{ aws.String("AsciiStringMaxLen255"), // Required // More values... }, } resp, err := svc.DescribeLifecycleHooks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DescribeLoadBalancerTargetGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DescribeLoadBalancerTargetGroupsInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required MaxRecords: aws.Int64(1), NextToken: aws.String("XmlString"), } resp, err := svc.DescribeLoadBalancerTargetGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DescribeLoadBalancers() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DescribeLoadBalancersInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required MaxRecords: aws.Int64(1), NextToken: aws.String("XmlString"), } resp, err := svc.DescribeLoadBalancers(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DescribeMetricCollectionTypes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) var params *autoscaling.DescribeMetricCollectionTypesInput resp, err := svc.DescribeMetricCollectionTypes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DescribeNotificationConfigurations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DescribeNotificationConfigurationsInput{ AutoScalingGroupNames: []*string{ aws.String("ResourceName"), // Required // More values... }, MaxRecords: aws.Int64(1), NextToken: aws.String("XmlString"), } resp, err := svc.DescribeNotificationConfigurations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DescribePolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DescribePoliciesInput{ AutoScalingGroupName: aws.String("ResourceName"), MaxRecords: aws.Int64(1), NextToken: aws.String("XmlString"), PolicyNames: []*string{ aws.String("ResourceName"), // Required // More values... }, PolicyTypes: []*string{ aws.String("XmlStringMaxLen64"), // Required // More values... }, } resp, err := svc.DescribePolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DescribeScalingActivities() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DescribeScalingActivitiesInput{ ActivityIds: []*string{ aws.String("XmlString"), // Required // More values... }, AutoScalingGroupName: aws.String("ResourceName"), MaxRecords: aws.Int64(1), NextToken: aws.String("XmlString"), } resp, err := svc.DescribeScalingActivities(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DescribeScalingProcessTypes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) var params *autoscaling.DescribeScalingProcessTypesInput resp, err := svc.DescribeScalingProcessTypes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DescribeScheduledActions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DescribeScheduledActionsInput{ AutoScalingGroupName: aws.String("ResourceName"), EndTime: aws.Time(time.Now()), MaxRecords: aws.Int64(1), NextToken: aws.String("XmlString"), ScheduledActionNames: []*string{ aws.String("ResourceName"), // Required // More values... }, StartTime: aws.Time(time.Now()), } resp, err := svc.DescribeScheduledActions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DescribeTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DescribeTagsInput{ Filters: []*autoscaling.Filter{ { // Required Name: aws.String("XmlString"), Values: []*string{ aws.String("XmlString"), // Required // More values... }, }, // More values... }, MaxRecords: aws.Int64(1), NextToken: aws.String("XmlString"), } resp, err := svc.DescribeTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DescribeTerminationPolicyTypes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) var params *autoscaling.DescribeTerminationPolicyTypesInput resp, err := svc.DescribeTerminationPolicyTypes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DetachInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DetachInstancesInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required ShouldDecrementDesiredCapacity: aws.Bool(true), // Required InstanceIds: []*string{ aws.String("XmlStringMaxLen19"), // Required // More values... }, } resp, err := svc.DetachInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DetachLoadBalancerTargetGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DetachLoadBalancerTargetGroupsInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required TargetGroupARNs: []*string{ // Required aws.String("XmlStringMaxLen511"), // Required // More values... }, } resp, err := svc.DetachLoadBalancerTargetGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DetachLoadBalancers() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DetachLoadBalancersInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required LoadBalancerNames: []*string{ // Required aws.String("XmlStringMaxLen255"), // Required // More values... }, } resp, err := svc.DetachLoadBalancers(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_DisableMetricsCollection() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.DisableMetricsCollectionInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required Metrics: []*string{ aws.String("XmlStringMaxLen255"), // Required // More values... }, } resp, err := svc.DisableMetricsCollection(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_EnableMetricsCollection() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.EnableMetricsCollectionInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required Granularity: aws.String("XmlStringMaxLen255"), // Required Metrics: []*string{ aws.String("XmlStringMaxLen255"), // Required // More values... }, } resp, err := svc.EnableMetricsCollection(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_EnterStandby() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.EnterStandbyInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required ShouldDecrementDesiredCapacity: aws.Bool(true), // Required InstanceIds: []*string{ aws.String("XmlStringMaxLen19"), // Required // More values... }, } resp, err := svc.EnterStandby(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_ExecutePolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.ExecutePolicyInput{ PolicyName: aws.String("ResourceName"), // Required AutoScalingGroupName: aws.String("ResourceName"), BreachThreshold: aws.Float64(1.0), HonorCooldown: aws.Bool(true), MetricValue: aws.Float64(1.0), } resp, err := svc.ExecutePolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_ExitStandby() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.ExitStandbyInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required InstanceIds: []*string{ aws.String("XmlStringMaxLen19"), // Required // More values... }, } resp, err := svc.ExitStandby(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_PutLifecycleHook() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.PutLifecycleHookInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required LifecycleHookName: aws.String("AsciiStringMaxLen255"), // Required DefaultResult: aws.String("LifecycleActionResult"), HeartbeatTimeout: aws.Int64(1), LifecycleTransition: aws.String("LifecycleTransition"), NotificationMetadata: aws.String("XmlStringMaxLen1023"), NotificationTargetARN: aws.String("NotificationTargetResourceName"), RoleARN: aws.String("ResourceName"), } resp, err := svc.PutLifecycleHook(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_PutNotificationConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.PutNotificationConfigurationInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required NotificationTypes: []*string{ // Required aws.String("XmlStringMaxLen255"), // Required // More values... }, TopicARN: aws.String("ResourceName"), // Required } resp, err := svc.PutNotificationConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_PutScalingPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.PutScalingPolicyInput{ AdjustmentType: aws.String("XmlStringMaxLen255"), // Required AutoScalingGroupName: aws.String("ResourceName"), // Required PolicyName: aws.String("XmlStringMaxLen255"), // Required Cooldown: aws.Int64(1), EstimatedInstanceWarmup: aws.Int64(1), MetricAggregationType: aws.String("XmlStringMaxLen32"), MinAdjustmentMagnitude: aws.Int64(1), MinAdjustmentStep: aws.Int64(1), PolicyType: aws.String("XmlStringMaxLen64"), ScalingAdjustment: aws.Int64(1), StepAdjustments: []*autoscaling.StepAdjustment{ { // Required ScalingAdjustment: aws.Int64(1), // Required MetricIntervalLowerBound: aws.Float64(1.0), MetricIntervalUpperBound: aws.Float64(1.0), }, // More values... }, } resp, err := svc.PutScalingPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_PutScheduledUpdateGroupAction() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.PutScheduledUpdateGroupActionInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required ScheduledActionName: aws.String("XmlStringMaxLen255"), // Required DesiredCapacity: aws.Int64(1), EndTime: aws.Time(time.Now()), MaxSize: aws.Int64(1), MinSize: aws.Int64(1), Recurrence: aws.String("XmlStringMaxLen255"), StartTime: aws.Time(time.Now()), Time: aws.Time(time.Now()), } resp, err := svc.PutScheduledUpdateGroupAction(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_RecordLifecycleActionHeartbeat() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.RecordLifecycleActionHeartbeatInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required LifecycleHookName: aws.String("AsciiStringMaxLen255"), // Required InstanceId: aws.String("XmlStringMaxLen19"), LifecycleActionToken: aws.String("LifecycleActionToken"), } resp, err := svc.RecordLifecycleActionHeartbeat(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_ResumeProcesses() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.ScalingProcessQuery{ AutoScalingGroupName: aws.String("ResourceName"), // Required ScalingProcesses: []*string{ aws.String("XmlStringMaxLen255"), // Required // More values... }, } resp, err := svc.ResumeProcesses(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_SetDesiredCapacity() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.SetDesiredCapacityInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required DesiredCapacity: aws.Int64(1), // Required HonorCooldown: aws.Bool(true), } resp, err := svc.SetDesiredCapacity(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_SetInstanceHealth() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.SetInstanceHealthInput{ HealthStatus: aws.String("XmlStringMaxLen32"), // Required InstanceId: aws.String("XmlStringMaxLen19"), // Required ShouldRespectGracePeriod: aws.Bool(true), } resp, err := svc.SetInstanceHealth(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_SetInstanceProtection() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.SetInstanceProtectionInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required InstanceIds: []*string{ // Required aws.String("XmlStringMaxLen19"), // Required // More values... }, ProtectedFromScaleIn: aws.Bool(true), // Required } resp, err := svc.SetInstanceProtection(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_SuspendProcesses() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.ScalingProcessQuery{ AutoScalingGroupName: aws.String("ResourceName"), // Required ScalingProcesses: []*string{ aws.String("XmlStringMaxLen255"), // Required // More values... }, } resp, err := svc.SuspendProcesses(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_TerminateInstanceInAutoScalingGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.TerminateInstanceInAutoScalingGroupInput{ InstanceId: aws.String("XmlStringMaxLen19"), // Required ShouldDecrementDesiredCapacity: aws.Bool(true), // Required } resp, err := svc.TerminateInstanceInAutoScalingGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleAutoScaling_UpdateAutoScalingGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := autoscaling.New(sess) params := &autoscaling.UpdateAutoScalingGroupInput{ AutoScalingGroupName: aws.String("ResourceName"), // Required AvailabilityZones: []*string{ aws.String("XmlStringMaxLen255"), // Required // More values... }, DefaultCooldown: aws.Int64(1), DesiredCapacity: aws.Int64(1), HealthCheckGracePeriod: aws.Int64(1), HealthCheckType: aws.String("XmlStringMaxLen32"), LaunchConfigurationName: aws.String("ResourceName"), MaxSize: aws.Int64(1), MinSize: aws.Int64(1), NewInstancesProtectedFromScaleIn: aws.Bool(true), PlacementGroup: aws.String("XmlStringMaxLen255"), TerminationPolicies: []*string{ aws.String("XmlStringMaxLen1600"), // Required // More values... }, VPCZoneIdentifier: aws.String("XmlStringMaxLen2047"), } resp, err := svc.UpdateAutoScalingGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/autoscaling/service.go000066400000000000000000000055661300374646400215370ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package autoscaling import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/query" ) // Auto Scaling is designed to automatically launch or terminate EC2 instances // based on user-defined policies, schedules, and health checks. Use this service // in conjunction with the Amazon CloudWatch and Elastic Load Balancing services. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type AutoScaling struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "autoscaling" // New creates a new instance of the AutoScaling client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a AutoScaling client from just a session. // svc := autoscaling.New(mySession) // // // Create a AutoScaling client with additional configuration // svc := autoscaling.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *AutoScaling { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *AutoScaling { svc := &AutoScaling{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2011-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a AutoScaling operation and runs any // custom request initialization. func (c *AutoScaling) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/autoscaling/waiters.go000066400000000000000000000053131300374646400215430ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package autoscaling import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilGroupExists uses the Auto Scaling API operation // DescribeAutoScalingGroups to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *AutoScaling) WaitUntilGroupExists(input *DescribeAutoScalingGroupsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeAutoScalingGroups", Delay: 5, MaxAttempts: 10, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "path", Argument: "length(AutoScalingGroups) > `0`", Expected: true, }, { State: "retry", Matcher: "path", Argument: "length(AutoScalingGroups) > `0`", Expected: false, }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilGroupInService uses the Auto Scaling API operation // DescribeAutoScalingGroups to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *AutoScaling) WaitUntilGroupInService(input *DescribeAutoScalingGroupsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeAutoScalingGroups", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "path", Argument: "contains(AutoScalingGroups[].[length(Instances[?LifecycleState=='InService']) >= MinSize][], `false`)", Expected: false, }, { State: "retry", Matcher: "path", Argument: "contains(AutoScalingGroups[].[length(Instances[?LifecycleState=='InService']) >= MinSize][], `false`)", Expected: true, }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilGroupNotExists uses the Auto Scaling API operation // DescribeAutoScalingGroups to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *AutoScaling) WaitUntilGroupNotExists(input *DescribeAutoScalingGroupsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeAutoScalingGroups", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "path", Argument: "length(AutoScalingGroups) > `0`", Expected: false, }, { State: "retry", Matcher: "path", Argument: "length(AutoScalingGroups) > `0`", Expected: true, }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/budgets/000077500000000000000000000000001300374646400166605ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/budgets/api.go000066400000000000000000002266341300374646400177750ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package budgets provides a client for AWS Budgets. package budgets import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opCreateBudget = "CreateBudget" // CreateBudgetRequest generates a "aws/request.Request" representing the // client's request for the CreateBudget operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateBudget for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateBudget method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateBudgetRequest method. // req, resp := client.CreateBudgetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Budgets) CreateBudgetRequest(input *CreateBudgetInput) (req *request.Request, output *CreateBudgetOutput) { op := &request.Operation{ Name: opCreateBudget, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateBudgetInput{} } req = c.newRequest(op, input, output) output = &CreateBudgetOutput{} req.Data = output return } // CreateBudget API operation for AWS Budgets. // // Create a new budget // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Budgets's // API operation CreateBudget for usage and error information. // // Returned Error Codes: // * InvalidParameterException // This exception is thrown if any request is given an invalid parameter. E.g., // if a required Date field is null. // // * InternalErrorException // This exception is thrown on an unknown internal failure. // // * CreationLimitExceededException // The exception is thrown when customer tries to create a record (e.g. budget), // but the number this record already exceeds the limitation. // // * DuplicateRecordException // The exception is thrown when customer tries to create a record (e.g. budget) // that already exists. // func (c *Budgets) CreateBudget(input *CreateBudgetInput) (*CreateBudgetOutput, error) { req, out := c.CreateBudgetRequest(input) err := req.Send() return out, err } const opCreateNotification = "CreateNotification" // CreateNotificationRequest generates a "aws/request.Request" representing the // client's request for the CreateNotification operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateNotification for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateNotification method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateNotificationRequest method. // req, resp := client.CreateNotificationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Budgets) CreateNotificationRequest(input *CreateNotificationInput) (req *request.Request, output *CreateNotificationOutput) { op := &request.Operation{ Name: opCreateNotification, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateNotificationInput{} } req = c.newRequest(op, input, output) output = &CreateNotificationOutput{} req.Data = output return } // CreateNotification API operation for AWS Budgets. // // Create a new Notification with subscribers for a budget // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Budgets's // API operation CreateNotification for usage and error information. // // Returned Error Codes: // * InternalErrorException // This exception is thrown on an unknown internal failure. // // * InvalidParameterException // This exception is thrown if any request is given an invalid parameter. E.g., // if a required Date field is null. // // * NotFoundException // This exception is thrown if a requested entity is not found. E.g., if a budget // id doesn't exist for an account ID. // // * CreationLimitExceededException // The exception is thrown when customer tries to create a record (e.g. budget), // but the number this record already exceeds the limitation. // // * DuplicateRecordException // The exception is thrown when customer tries to create a record (e.g. budget) // that already exists. // func (c *Budgets) CreateNotification(input *CreateNotificationInput) (*CreateNotificationOutput, error) { req, out := c.CreateNotificationRequest(input) err := req.Send() return out, err } const opCreateSubscriber = "CreateSubscriber" // CreateSubscriberRequest generates a "aws/request.Request" representing the // client's request for the CreateSubscriber operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateSubscriber for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateSubscriber method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateSubscriberRequest method. // req, resp := client.CreateSubscriberRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Budgets) CreateSubscriberRequest(input *CreateSubscriberInput) (req *request.Request, output *CreateSubscriberOutput) { op := &request.Operation{ Name: opCreateSubscriber, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateSubscriberInput{} } req = c.newRequest(op, input, output) output = &CreateSubscriberOutput{} req.Data = output return } // CreateSubscriber API operation for AWS Budgets. // // Create a new Subscriber for a notification // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Budgets's // API operation CreateSubscriber for usage and error information. // // Returned Error Codes: // * InternalErrorException // This exception is thrown on an unknown internal failure. // // * InvalidParameterException // This exception is thrown if any request is given an invalid parameter. E.g., // if a required Date field is null. // // * CreationLimitExceededException // The exception is thrown when customer tries to create a record (e.g. budget), // but the number this record already exceeds the limitation. // // * DuplicateRecordException // The exception is thrown when customer tries to create a record (e.g. budget) // that already exists. // func (c *Budgets) CreateSubscriber(input *CreateSubscriberInput) (*CreateSubscriberOutput, error) { req, out := c.CreateSubscriberRequest(input) err := req.Send() return out, err } const opDeleteBudget = "DeleteBudget" // DeleteBudgetRequest generates a "aws/request.Request" representing the // client's request for the DeleteBudget operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteBudget for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteBudget method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteBudgetRequest method. // req, resp := client.DeleteBudgetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Budgets) DeleteBudgetRequest(input *DeleteBudgetInput) (req *request.Request, output *DeleteBudgetOutput) { op := &request.Operation{ Name: opDeleteBudget, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteBudgetInput{} } req = c.newRequest(op, input, output) output = &DeleteBudgetOutput{} req.Data = output return } // DeleteBudget API operation for AWS Budgets. // // Delete a budget and related notifications // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Budgets's // API operation DeleteBudget for usage and error information. // // Returned Error Codes: // * InternalErrorException // This exception is thrown on an unknown internal failure. // // * InvalidParameterException // This exception is thrown if any request is given an invalid parameter. E.g., // if a required Date field is null. // // * NotFoundException // This exception is thrown if a requested entity is not found. E.g., if a budget // id doesn't exist for an account ID. // func (c *Budgets) DeleteBudget(input *DeleteBudgetInput) (*DeleteBudgetOutput, error) { req, out := c.DeleteBudgetRequest(input) err := req.Send() return out, err } const opDeleteNotification = "DeleteNotification" // DeleteNotificationRequest generates a "aws/request.Request" representing the // client's request for the DeleteNotification operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteNotification for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteNotification method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteNotificationRequest method. // req, resp := client.DeleteNotificationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Budgets) DeleteNotificationRequest(input *DeleteNotificationInput) (req *request.Request, output *DeleteNotificationOutput) { op := &request.Operation{ Name: opDeleteNotification, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteNotificationInput{} } req = c.newRequest(op, input, output) output = &DeleteNotificationOutput{} req.Data = output return } // DeleteNotification API operation for AWS Budgets. // // Delete a notification and related subscribers // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Budgets's // API operation DeleteNotification for usage and error information. // // Returned Error Codes: // * InvalidParameterException // This exception is thrown if any request is given an invalid parameter. E.g., // if a required Date field is null. // // * InternalErrorException // This exception is thrown on an unknown internal failure. // // * NotFoundException // This exception is thrown if a requested entity is not found. E.g., if a budget // id doesn't exist for an account ID. // func (c *Budgets) DeleteNotification(input *DeleteNotificationInput) (*DeleteNotificationOutput, error) { req, out := c.DeleteNotificationRequest(input) err := req.Send() return out, err } const opDeleteSubscriber = "DeleteSubscriber" // DeleteSubscriberRequest generates a "aws/request.Request" representing the // client's request for the DeleteSubscriber operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteSubscriber for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteSubscriber method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteSubscriberRequest method. // req, resp := client.DeleteSubscriberRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Budgets) DeleteSubscriberRequest(input *DeleteSubscriberInput) (req *request.Request, output *DeleteSubscriberOutput) { op := &request.Operation{ Name: opDeleteSubscriber, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteSubscriberInput{} } req = c.newRequest(op, input, output) output = &DeleteSubscriberOutput{} req.Data = output return } // DeleteSubscriber API operation for AWS Budgets. // // Delete a Subscriber for a notification // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Budgets's // API operation DeleteSubscriber for usage and error information. // // Returned Error Codes: // * InternalErrorException // This exception is thrown on an unknown internal failure. // // * InvalidParameterException // This exception is thrown if any request is given an invalid parameter. E.g., // if a required Date field is null. // // * NotFoundException // This exception is thrown if a requested entity is not found. E.g., if a budget // id doesn't exist for an account ID. // func (c *Budgets) DeleteSubscriber(input *DeleteSubscriberInput) (*DeleteSubscriberOutput, error) { req, out := c.DeleteSubscriberRequest(input) err := req.Send() return out, err } const opDescribeBudget = "DescribeBudget" // DescribeBudgetRequest generates a "aws/request.Request" representing the // client's request for the DescribeBudget operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeBudget for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeBudget method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeBudgetRequest method. // req, resp := client.DescribeBudgetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Budgets) DescribeBudgetRequest(input *DescribeBudgetInput) (req *request.Request, output *DescribeBudgetOutput) { op := &request.Operation{ Name: opDescribeBudget, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeBudgetInput{} } req = c.newRequest(op, input, output) output = &DescribeBudgetOutput{} req.Data = output return } // DescribeBudget API operation for AWS Budgets. // // Get a single budget // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Budgets's // API operation DescribeBudget for usage and error information. // // Returned Error Codes: // * InternalErrorException // This exception is thrown on an unknown internal failure. // // * InvalidParameterException // This exception is thrown if any request is given an invalid parameter. E.g., // if a required Date field is null. // // * NotFoundException // This exception is thrown if a requested entity is not found. E.g., if a budget // id doesn't exist for an account ID. // func (c *Budgets) DescribeBudget(input *DescribeBudgetInput) (*DescribeBudgetOutput, error) { req, out := c.DescribeBudgetRequest(input) err := req.Send() return out, err } const opDescribeBudgets = "DescribeBudgets" // DescribeBudgetsRequest generates a "aws/request.Request" representing the // client's request for the DescribeBudgets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeBudgets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeBudgets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeBudgetsRequest method. // req, resp := client.DescribeBudgetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Budgets) DescribeBudgetsRequest(input *DescribeBudgetsInput) (req *request.Request, output *DescribeBudgetsOutput) { op := &request.Operation{ Name: opDescribeBudgets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeBudgetsInput{} } req = c.newRequest(op, input, output) output = &DescribeBudgetsOutput{} req.Data = output return } // DescribeBudgets API operation for AWS Budgets. // // Get all budgets for an account // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Budgets's // API operation DescribeBudgets for usage and error information. // // Returned Error Codes: // * InternalErrorException // This exception is thrown on an unknown internal failure. // // * InvalidParameterException // This exception is thrown if any request is given an invalid parameter. E.g., // if a required Date field is null. // // * NotFoundException // This exception is thrown if a requested entity is not found. E.g., if a budget // id doesn't exist for an account ID. // // * InvalidNextTokenException // This exception is thrown if paging token signature didn't match the token, // or the paging token isn't for this request // // * ExpiredNextTokenException // This exception is thrown if the paging token is expired - past its TTL // func (c *Budgets) DescribeBudgets(input *DescribeBudgetsInput) (*DescribeBudgetsOutput, error) { req, out := c.DescribeBudgetsRequest(input) err := req.Send() return out, err } const opDescribeNotificationsForBudget = "DescribeNotificationsForBudget" // DescribeNotificationsForBudgetRequest generates a "aws/request.Request" representing the // client's request for the DescribeNotificationsForBudget operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeNotificationsForBudget for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeNotificationsForBudget method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeNotificationsForBudgetRequest method. // req, resp := client.DescribeNotificationsForBudgetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Budgets) DescribeNotificationsForBudgetRequest(input *DescribeNotificationsForBudgetInput) (req *request.Request, output *DescribeNotificationsForBudgetOutput) { op := &request.Operation{ Name: opDescribeNotificationsForBudget, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeNotificationsForBudgetInput{} } req = c.newRequest(op, input, output) output = &DescribeNotificationsForBudgetOutput{} req.Data = output return } // DescribeNotificationsForBudget API operation for AWS Budgets. // // Get notifications of a budget // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Budgets's // API operation DescribeNotificationsForBudget for usage and error information. // // Returned Error Codes: // * InternalErrorException // This exception is thrown on an unknown internal failure. // // * InvalidParameterException // This exception is thrown if any request is given an invalid parameter. E.g., // if a required Date field is null. // // * NotFoundException // This exception is thrown if a requested entity is not found. E.g., if a budget // id doesn't exist for an account ID. // // * InvalidNextTokenException // This exception is thrown if paging token signature didn't match the token, // or the paging token isn't for this request // // * ExpiredNextTokenException // This exception is thrown if the paging token is expired - past its TTL // func (c *Budgets) DescribeNotificationsForBudget(input *DescribeNotificationsForBudgetInput) (*DescribeNotificationsForBudgetOutput, error) { req, out := c.DescribeNotificationsForBudgetRequest(input) err := req.Send() return out, err } const opDescribeSubscribersForNotification = "DescribeSubscribersForNotification" // DescribeSubscribersForNotificationRequest generates a "aws/request.Request" representing the // client's request for the DescribeSubscribersForNotification operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSubscribersForNotification for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSubscribersForNotification method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSubscribersForNotificationRequest method. // req, resp := client.DescribeSubscribersForNotificationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Budgets) DescribeSubscribersForNotificationRequest(input *DescribeSubscribersForNotificationInput) (req *request.Request, output *DescribeSubscribersForNotificationOutput) { op := &request.Operation{ Name: opDescribeSubscribersForNotification, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSubscribersForNotificationInput{} } req = c.newRequest(op, input, output) output = &DescribeSubscribersForNotificationOutput{} req.Data = output return } // DescribeSubscribersForNotification API operation for AWS Budgets. // // Get subscribers of a notification // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Budgets's // API operation DescribeSubscribersForNotification for usage and error information. // // Returned Error Codes: // * InternalErrorException // This exception is thrown on an unknown internal failure. // // * NotFoundException // This exception is thrown if a requested entity is not found. E.g., if a budget // id doesn't exist for an account ID. // // * InvalidParameterException // This exception is thrown if any request is given an invalid parameter. E.g., // if a required Date field is null. // // * InvalidNextTokenException // This exception is thrown if paging token signature didn't match the token, // or the paging token isn't for this request // // * ExpiredNextTokenException // This exception is thrown if the paging token is expired - past its TTL // func (c *Budgets) DescribeSubscribersForNotification(input *DescribeSubscribersForNotificationInput) (*DescribeSubscribersForNotificationOutput, error) { req, out := c.DescribeSubscribersForNotificationRequest(input) err := req.Send() return out, err } const opUpdateBudget = "UpdateBudget" // UpdateBudgetRequest generates a "aws/request.Request" representing the // client's request for the UpdateBudget operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateBudget for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateBudget method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateBudgetRequest method. // req, resp := client.UpdateBudgetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Budgets) UpdateBudgetRequest(input *UpdateBudgetInput) (req *request.Request, output *UpdateBudgetOutput) { op := &request.Operation{ Name: opUpdateBudget, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateBudgetInput{} } req = c.newRequest(op, input, output) output = &UpdateBudgetOutput{} req.Data = output return } // UpdateBudget API operation for AWS Budgets. // // Update the information of a budget already created // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Budgets's // API operation UpdateBudget for usage and error information. // // Returned Error Codes: // * InternalErrorException // This exception is thrown on an unknown internal failure. // // * InvalidParameterException // This exception is thrown if any request is given an invalid parameter. E.g., // if a required Date field is null. // // * NotFoundException // This exception is thrown if a requested entity is not found. E.g., if a budget // id doesn't exist for an account ID. // func (c *Budgets) UpdateBudget(input *UpdateBudgetInput) (*UpdateBudgetOutput, error) { req, out := c.UpdateBudgetRequest(input) err := req.Send() return out, err } const opUpdateNotification = "UpdateNotification" // UpdateNotificationRequest generates a "aws/request.Request" representing the // client's request for the UpdateNotification operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateNotification for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateNotification method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateNotificationRequest method. // req, resp := client.UpdateNotificationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Budgets) UpdateNotificationRequest(input *UpdateNotificationInput) (req *request.Request, output *UpdateNotificationOutput) { op := &request.Operation{ Name: opUpdateNotification, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateNotificationInput{} } req = c.newRequest(op, input, output) output = &UpdateNotificationOutput{} req.Data = output return } // UpdateNotification API operation for AWS Budgets. // // Update the information about a notification already created // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Budgets's // API operation UpdateNotification for usage and error information. // // Returned Error Codes: // * InternalErrorException // This exception is thrown on an unknown internal failure. // // * InvalidParameterException // This exception is thrown if any request is given an invalid parameter. E.g., // if a required Date field is null. // // * NotFoundException // This exception is thrown if a requested entity is not found. E.g., if a budget // id doesn't exist for an account ID. // func (c *Budgets) UpdateNotification(input *UpdateNotificationInput) (*UpdateNotificationOutput, error) { req, out := c.UpdateNotificationRequest(input) err := req.Send() return out, err } const opUpdateSubscriber = "UpdateSubscriber" // UpdateSubscriberRequest generates a "aws/request.Request" representing the // client's request for the UpdateSubscriber operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateSubscriber for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateSubscriber method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateSubscriberRequest method. // req, resp := client.UpdateSubscriberRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Budgets) UpdateSubscriberRequest(input *UpdateSubscriberInput) (req *request.Request, output *UpdateSubscriberOutput) { op := &request.Operation{ Name: opUpdateSubscriber, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateSubscriberInput{} } req = c.newRequest(op, input, output) output = &UpdateSubscriberOutput{} req.Data = output return } // UpdateSubscriber API operation for AWS Budgets. // // Update a subscriber // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Budgets's // API operation UpdateSubscriber for usage and error information. // // Returned Error Codes: // * InternalErrorException // This exception is thrown on an unknown internal failure. // // * InvalidParameterException // This exception is thrown if any request is given an invalid parameter. E.g., // if a required Date field is null. // // * NotFoundException // This exception is thrown if a requested entity is not found. E.g., if a budget // id doesn't exist for an account ID. // func (c *Budgets) UpdateSubscriber(input *UpdateSubscriberInput) (*UpdateSubscriberOutput, error) { req, out := c.UpdateSubscriberRequest(input) err := req.Send() return out, err } // AWS Budget model type Budget struct { _ struct{} `type:"structure"` // A structure represent either a cost spend or usage spend. Contains an amount // and a unit. // // BudgetLimit is a required field BudgetLimit *Spend `type:"structure" required:"true"` // A string represents the budget name. No ":" character is allowed. // // BudgetName is a required field BudgetName *string `type:"string" required:"true"` // The type of a budget. Can be COST or USAGE. // // BudgetType is a required field BudgetType *string `type:"string" required:"true" enum:"BudgetType"` // A structure holds the actual and forecasted spend for a budget. CalculatedSpend *CalculatedSpend `type:"structure"` // A map represents the cost filters applied to the budget. CostFilters map[string][]*string `type:"map"` // This includes the options for getting the cost of a budget. // // CostTypes is a required field CostTypes *CostTypes `type:"structure" required:"true"` // A time period indicated the start date and end date of a budget. // // TimePeriod is a required field TimePeriod *TimePeriod `type:"structure" required:"true"` // The time unit of the budget. e.g. weekly, monthly, etc. // // TimeUnit is a required field TimeUnit *string `type:"string" required:"true" enum:"TimeUnit"` } // String returns the string representation func (s Budget) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Budget) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Budget) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Budget"} if s.BudgetLimit == nil { invalidParams.Add(request.NewErrParamRequired("BudgetLimit")) } if s.BudgetName == nil { invalidParams.Add(request.NewErrParamRequired("BudgetName")) } if s.BudgetType == nil { invalidParams.Add(request.NewErrParamRequired("BudgetType")) } if s.CostTypes == nil { invalidParams.Add(request.NewErrParamRequired("CostTypes")) } if s.TimePeriod == nil { invalidParams.Add(request.NewErrParamRequired("TimePeriod")) } if s.TimeUnit == nil { invalidParams.Add(request.NewErrParamRequired("TimeUnit")) } if s.BudgetLimit != nil { if err := s.BudgetLimit.Validate(); err != nil { invalidParams.AddNested("BudgetLimit", err.(request.ErrInvalidParams)) } } if s.CalculatedSpend != nil { if err := s.CalculatedSpend.Validate(); err != nil { invalidParams.AddNested("CalculatedSpend", err.(request.ErrInvalidParams)) } } if s.CostTypes != nil { if err := s.CostTypes.Validate(); err != nil { invalidParams.AddNested("CostTypes", err.(request.ErrInvalidParams)) } } if s.TimePeriod != nil { if err := s.TimePeriod.Validate(); err != nil { invalidParams.AddNested("TimePeriod", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A structure holds the actual and forecasted spend for a budget. type CalculatedSpend struct { _ struct{} `type:"structure"` // A structure represent either a cost spend or usage spend. Contains an amount // and a unit. // // ActualSpend is a required field ActualSpend *Spend `type:"structure" required:"true"` // A structure represent either a cost spend or usage spend. Contains an amount // and a unit. ForecastedSpend *Spend `type:"structure"` } // String returns the string representation func (s CalculatedSpend) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CalculatedSpend) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CalculatedSpend) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CalculatedSpend"} if s.ActualSpend == nil { invalidParams.Add(request.NewErrParamRequired("ActualSpend")) } if s.ActualSpend != nil { if err := s.ActualSpend.Validate(); err != nil { invalidParams.AddNested("ActualSpend", err.(request.ErrInvalidParams)) } } if s.ForecastedSpend != nil { if err := s.ForecastedSpend.Validate(); err != nil { invalidParams.AddNested("ForecastedSpend", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // This includes the options for getting the cost of a budget. type CostTypes struct { _ struct{} `type:"structure"` // A generic boolean value. // // IncludeSubscription is a required field IncludeSubscription *bool `type:"boolean" required:"true"` // A generic boolean value. // // IncludeTax is a required field IncludeTax *bool `type:"boolean" required:"true"` // A generic boolean value. // // UseBlended is a required field UseBlended *bool `type:"boolean" required:"true"` } // String returns the string representation func (s CostTypes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CostTypes) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CostTypes) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CostTypes"} if s.IncludeSubscription == nil { invalidParams.Add(request.NewErrParamRequired("IncludeSubscription")) } if s.IncludeTax == nil { invalidParams.Add(request.NewErrParamRequired("IncludeTax")) } if s.UseBlended == nil { invalidParams.Add(request.NewErrParamRequired("UseBlended")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request of CreateBudget type CreateBudgetInput struct { _ struct{} `type:"structure"` // Account Id of the customer. It should be a 12 digit number. // // AccountId is a required field AccountId *string `min:"12" type:"string" required:"true"` // AWS Budget model // // Budget is a required field Budget *Budget `type:"structure" required:"true"` // A list of Notifications, each with a list of subscribers. NotificationsWithSubscribers []*NotificationWithSubscribers `type:"list"` } // String returns the string representation func (s CreateBudgetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateBudgetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateBudgetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateBudgetInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) } if s.Budget == nil { invalidParams.Add(request.NewErrParamRequired("Budget")) } if s.Budget != nil { if err := s.Budget.Validate(); err != nil { invalidParams.AddNested("Budget", err.(request.ErrInvalidParams)) } } if s.NotificationsWithSubscribers != nil { for i, v := range s.NotificationsWithSubscribers { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "NotificationsWithSubscribers", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response of CreateBudget type CreateBudgetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateBudgetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateBudgetOutput) GoString() string { return s.String() } // Request of CreateNotification type CreateNotificationInput struct { _ struct{} `type:"structure"` // Account Id of the customer. It should be a 12 digit number. // // AccountId is a required field AccountId *string `min:"12" type:"string" required:"true"` // A string represents the budget name. No ":" character is allowed. // // BudgetName is a required field BudgetName *string `type:"string" required:"true"` // Notification model. Each budget may contain multiple notifications with different // settings. // // Notification is a required field Notification *Notification `type:"structure" required:"true"` // A list of subscribers. // // Subscribers is a required field Subscribers []*Subscriber `min:"1" type:"list" required:"true"` } // String returns the string representation func (s CreateNotificationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateNotificationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateNotificationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateNotificationInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) } if s.BudgetName == nil { invalidParams.Add(request.NewErrParamRequired("BudgetName")) } if s.Notification == nil { invalidParams.Add(request.NewErrParamRequired("Notification")) } if s.Subscribers == nil { invalidParams.Add(request.NewErrParamRequired("Subscribers")) } if s.Subscribers != nil && len(s.Subscribers) < 1 { invalidParams.Add(request.NewErrParamMinLen("Subscribers", 1)) } if s.Notification != nil { if err := s.Notification.Validate(); err != nil { invalidParams.AddNested("Notification", err.(request.ErrInvalidParams)) } } if s.Subscribers != nil { for i, v := range s.Subscribers { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Subscribers", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response of CreateNotification type CreateNotificationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateNotificationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateNotificationOutput) GoString() string { return s.String() } // Request of CreateSubscriber type CreateSubscriberInput struct { _ struct{} `type:"structure"` // Account Id of the customer. It should be a 12 digit number. // // AccountId is a required field AccountId *string `min:"12" type:"string" required:"true"` // A string represents the budget name. No ":" character is allowed. // // BudgetName is a required field BudgetName *string `type:"string" required:"true"` // Notification model. Each budget may contain multiple notifications with different // settings. // // Notification is a required field Notification *Notification `type:"structure" required:"true"` // Subscriber model. Each notification may contain multiple subscribers with // different addresses. // // Subscriber is a required field Subscriber *Subscriber `type:"structure" required:"true"` } // String returns the string representation func (s CreateSubscriberInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSubscriberInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateSubscriberInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateSubscriberInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) } if s.BudgetName == nil { invalidParams.Add(request.NewErrParamRequired("BudgetName")) } if s.Notification == nil { invalidParams.Add(request.NewErrParamRequired("Notification")) } if s.Subscriber == nil { invalidParams.Add(request.NewErrParamRequired("Subscriber")) } if s.Notification != nil { if err := s.Notification.Validate(); err != nil { invalidParams.AddNested("Notification", err.(request.ErrInvalidParams)) } } if s.Subscriber != nil { if err := s.Subscriber.Validate(); err != nil { invalidParams.AddNested("Subscriber", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response of CreateSubscriber type CreateSubscriberOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateSubscriberOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSubscriberOutput) GoString() string { return s.String() } // Request of DeleteBudget type DeleteBudgetInput struct { _ struct{} `type:"structure"` // Account Id of the customer. It should be a 12 digit number. // // AccountId is a required field AccountId *string `min:"12" type:"string" required:"true"` // A string represents the budget name. No ":" character is allowed. // // BudgetName is a required field BudgetName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteBudgetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBudgetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteBudgetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteBudgetInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) } if s.BudgetName == nil { invalidParams.Add(request.NewErrParamRequired("BudgetName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response of DeleteBudget type DeleteBudgetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteBudgetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBudgetOutput) GoString() string { return s.String() } // Request of DeleteNotification type DeleteNotificationInput struct { _ struct{} `type:"structure"` // Account Id of the customer. It should be a 12 digit number. // // AccountId is a required field AccountId *string `min:"12" type:"string" required:"true"` // A string represents the budget name. No ":" character is allowed. // // BudgetName is a required field BudgetName *string `type:"string" required:"true"` // Notification model. Each budget may contain multiple notifications with different // settings. // // Notification is a required field Notification *Notification `type:"structure" required:"true"` } // String returns the string representation func (s DeleteNotificationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteNotificationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteNotificationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteNotificationInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) } if s.BudgetName == nil { invalidParams.Add(request.NewErrParamRequired("BudgetName")) } if s.Notification == nil { invalidParams.Add(request.NewErrParamRequired("Notification")) } if s.Notification != nil { if err := s.Notification.Validate(); err != nil { invalidParams.AddNested("Notification", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response of DeleteNotification type DeleteNotificationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteNotificationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteNotificationOutput) GoString() string { return s.String() } // Request of DeleteSubscriber type DeleteSubscriberInput struct { _ struct{} `type:"structure"` // Account Id of the customer. It should be a 12 digit number. // // AccountId is a required field AccountId *string `min:"12" type:"string" required:"true"` // A string represents the budget name. No ":" character is allowed. // // BudgetName is a required field BudgetName *string `type:"string" required:"true"` // Notification model. Each budget may contain multiple notifications with different // settings. // // Notification is a required field Notification *Notification `type:"structure" required:"true"` // Subscriber model. Each notification may contain multiple subscribers with // different addresses. // // Subscriber is a required field Subscriber *Subscriber `type:"structure" required:"true"` } // String returns the string representation func (s DeleteSubscriberInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSubscriberInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteSubscriberInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteSubscriberInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) } if s.BudgetName == nil { invalidParams.Add(request.NewErrParamRequired("BudgetName")) } if s.Notification == nil { invalidParams.Add(request.NewErrParamRequired("Notification")) } if s.Subscriber == nil { invalidParams.Add(request.NewErrParamRequired("Subscriber")) } if s.Notification != nil { if err := s.Notification.Validate(); err != nil { invalidParams.AddNested("Notification", err.(request.ErrInvalidParams)) } } if s.Subscriber != nil { if err := s.Subscriber.Validate(); err != nil { invalidParams.AddNested("Subscriber", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response of DeleteSubscriber type DeleteSubscriberOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteSubscriberOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSubscriberOutput) GoString() string { return s.String() } // Request of DescribeBudget type DescribeBudgetInput struct { _ struct{} `type:"structure"` // Account Id of the customer. It should be a 12 digit number. // // AccountId is a required field AccountId *string `min:"12" type:"string" required:"true"` // A string represents the budget name. No ":" character is allowed. // // BudgetName is a required field BudgetName *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeBudgetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeBudgetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeBudgetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeBudgetInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) } if s.BudgetName == nil { invalidParams.Add(request.NewErrParamRequired("BudgetName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response of DescribeBudget type DescribeBudgetOutput struct { _ struct{} `type:"structure"` // AWS Budget model Budget *Budget `type:"structure"` } // String returns the string representation func (s DescribeBudgetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeBudgetOutput) GoString() string { return s.String() } // Request of DescribeBudgets type DescribeBudgetsInput struct { _ struct{} `type:"structure"` // Account Id of the customer. It should be a 12 digit number. // // AccountId is a required field AccountId *string `min:"12" type:"string" required:"true"` // An integer to represent how many entries should a pagianted response contains. // Maxium is set to 100. MaxResults *int64 `min:"1" type:"integer"` // A generic String. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeBudgetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeBudgetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeBudgetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeBudgetsInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response of DescribeBudgets type DescribeBudgetsOutput struct { _ struct{} `type:"structure"` // A list of budgets Budgets []*Budget `type:"list"` // A generic String. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeBudgetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeBudgetsOutput) GoString() string { return s.String() } // Request of DescribeNotificationsForBudget type DescribeNotificationsForBudgetInput struct { _ struct{} `type:"structure"` // Account Id of the customer. It should be a 12 digit number. // // AccountId is a required field AccountId *string `min:"12" type:"string" required:"true"` // A string represents the budget name. No ":" character is allowed. // // BudgetName is a required field BudgetName *string `type:"string" required:"true"` // An integer to represent how many entries should a pagianted response contains. // Maxium is set to 100. MaxResults *int64 `min:"1" type:"integer"` // A generic String. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeNotificationsForBudgetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeNotificationsForBudgetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeNotificationsForBudgetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeNotificationsForBudgetInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) } if s.BudgetName == nil { invalidParams.Add(request.NewErrParamRequired("BudgetName")) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response of GetNotificationsForBudget type DescribeNotificationsForBudgetOutput struct { _ struct{} `type:"structure"` // A generic String. NextToken *string `type:"string"` // A list of notifications. Notifications []*Notification `type:"list"` } // String returns the string representation func (s DescribeNotificationsForBudgetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeNotificationsForBudgetOutput) GoString() string { return s.String() } // Request of DescribeSubscribersForNotification type DescribeSubscribersForNotificationInput struct { _ struct{} `type:"structure"` // Account Id of the customer. It should be a 12 digit number. // // AccountId is a required field AccountId *string `min:"12" type:"string" required:"true"` // A string represents the budget name. No ":" character is allowed. // // BudgetName is a required field BudgetName *string `type:"string" required:"true"` // An integer to represent how many entries should a pagianted response contains. // Maxium is set to 100. MaxResults *int64 `min:"1" type:"integer"` // A generic String. NextToken *string `type:"string"` // Notification model. Each budget may contain multiple notifications with different // settings. // // Notification is a required field Notification *Notification `type:"structure" required:"true"` } // String returns the string representation func (s DescribeSubscribersForNotificationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSubscribersForNotificationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeSubscribersForNotificationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeSubscribersForNotificationInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) } if s.BudgetName == nil { invalidParams.Add(request.NewErrParamRequired("BudgetName")) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.Notification == nil { invalidParams.Add(request.NewErrParamRequired("Notification")) } if s.Notification != nil { if err := s.Notification.Validate(); err != nil { invalidParams.AddNested("Notification", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response of DescribeSubscribersForNotification type DescribeSubscribersForNotificationOutput struct { _ struct{} `type:"structure"` // A generic String. NextToken *string `type:"string"` // A list of subscribers. Subscribers []*Subscriber `min:"1" type:"list"` } // String returns the string representation func (s DescribeSubscribersForNotificationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSubscribersForNotificationOutput) GoString() string { return s.String() } // Notification model. Each budget may contain multiple notifications with different // settings. type Notification struct { _ struct{} `type:"structure"` // The comparison operator of a notification. Currently we support less than, // equal to and greater than. // // ComparisonOperator is a required field ComparisonOperator *string `type:"string" required:"true" enum:"ComparisonOperator"` // The type of a notification. It should be ACTUAL or FORECASTED. // // NotificationType is a required field NotificationType *string `type:"string" required:"true" enum:"NotificationType"` // The threshold of the a notification. It should be a number between 0 and // 100. // // Threshold is a required field Threshold *float64 `min:"0.1" type:"double" required:"true"` } // String returns the string representation func (s Notification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Notification) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Notification) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Notification"} if s.ComparisonOperator == nil { invalidParams.Add(request.NewErrParamRequired("ComparisonOperator")) } if s.NotificationType == nil { invalidParams.Add(request.NewErrParamRequired("NotificationType")) } if s.Threshold == nil { invalidParams.Add(request.NewErrParamRequired("Threshold")) } if s.Threshold != nil && *s.Threshold < 0.1 { invalidParams.Add(request.NewErrParamMinValue("Threshold", 0.1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A structure to relate notification and a list of subscribers who belong to // the notification. type NotificationWithSubscribers struct { _ struct{} `type:"structure"` // Notification model. Each budget may contain multiple notifications with different // settings. // // Notification is a required field Notification *Notification `type:"structure" required:"true"` // A list of subscribers. // // Subscribers is a required field Subscribers []*Subscriber `min:"1" type:"list" required:"true"` } // String returns the string representation func (s NotificationWithSubscribers) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NotificationWithSubscribers) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *NotificationWithSubscribers) Validate() error { invalidParams := request.ErrInvalidParams{Context: "NotificationWithSubscribers"} if s.Notification == nil { invalidParams.Add(request.NewErrParamRequired("Notification")) } if s.Subscribers == nil { invalidParams.Add(request.NewErrParamRequired("Subscribers")) } if s.Subscribers != nil && len(s.Subscribers) < 1 { invalidParams.Add(request.NewErrParamMinLen("Subscribers", 1)) } if s.Notification != nil { if err := s.Notification.Validate(); err != nil { invalidParams.AddNested("Notification", err.(request.ErrInvalidParams)) } } if s.Subscribers != nil { for i, v := range s.Subscribers { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Subscribers", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A structure represent either a cost spend or usage spend. Contains an amount // and a unit. type Spend struct { _ struct{} `type:"structure"` // A string to represent NumericValue. // // Amount is a required field Amount *string `type:"string" required:"true"` // A generic String. // // Unit is a required field Unit *string `type:"string" required:"true"` } // String returns the string representation func (s Spend) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Spend) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Spend) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Spend"} if s.Amount == nil { invalidParams.Add(request.NewErrParamRequired("Amount")) } if s.Unit == nil { invalidParams.Add(request.NewErrParamRequired("Unit")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Subscriber model. Each notification may contain multiple subscribers with // different addresses. type Subscriber struct { _ struct{} `type:"structure"` // A generic String. // // Address is a required field Address *string `type:"string" required:"true"` // The subscription type of the subscriber. It can be SMS or EMAIL. // // SubscriptionType is a required field SubscriptionType *string `type:"string" required:"true" enum:"SubscriptionType"` } // String returns the string representation func (s Subscriber) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Subscriber) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Subscriber) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Subscriber"} if s.Address == nil { invalidParams.Add(request.NewErrParamRequired("Address")) } if s.SubscriptionType == nil { invalidParams.Add(request.NewErrParamRequired("SubscriptionType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A time period indicated the start date and end date of a budget. type TimePeriod struct { _ struct{} `type:"structure"` // A generic timestamp. In Java it is transformed to a Date object. // // End is a required field End *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` // A generic timestamp. In Java it is transformed to a Date object. // // Start is a required field Start *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` } // String returns the string representation func (s TimePeriod) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TimePeriod) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TimePeriod) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TimePeriod"} if s.End == nil { invalidParams.Add(request.NewErrParamRequired("End")) } if s.Start == nil { invalidParams.Add(request.NewErrParamRequired("Start")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request of UpdateBudget type UpdateBudgetInput struct { _ struct{} `type:"structure"` // Account Id of the customer. It should be a 12 digit number. // // AccountId is a required field AccountId *string `min:"12" type:"string" required:"true"` // AWS Budget model // // NewBudget is a required field NewBudget *Budget `type:"structure" required:"true"` } // String returns the string representation func (s UpdateBudgetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateBudgetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateBudgetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateBudgetInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) } if s.NewBudget == nil { invalidParams.Add(request.NewErrParamRequired("NewBudget")) } if s.NewBudget != nil { if err := s.NewBudget.Validate(); err != nil { invalidParams.AddNested("NewBudget", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response of UpdateBudget type UpdateBudgetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateBudgetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateBudgetOutput) GoString() string { return s.String() } // Request of UpdateNotification type UpdateNotificationInput struct { _ struct{} `type:"structure"` // Account Id of the customer. It should be a 12 digit number. // // AccountId is a required field AccountId *string `min:"12" type:"string" required:"true"` // A string represents the budget name. No ":" character is allowed. // // BudgetName is a required field BudgetName *string `type:"string" required:"true"` // Notification model. Each budget may contain multiple notifications with different // settings. // // NewNotification is a required field NewNotification *Notification `type:"structure" required:"true"` // Notification model. Each budget may contain multiple notifications with different // settings. // // OldNotification is a required field OldNotification *Notification `type:"structure" required:"true"` } // String returns the string representation func (s UpdateNotificationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateNotificationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateNotificationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateNotificationInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) } if s.BudgetName == nil { invalidParams.Add(request.NewErrParamRequired("BudgetName")) } if s.NewNotification == nil { invalidParams.Add(request.NewErrParamRequired("NewNotification")) } if s.OldNotification == nil { invalidParams.Add(request.NewErrParamRequired("OldNotification")) } if s.NewNotification != nil { if err := s.NewNotification.Validate(); err != nil { invalidParams.AddNested("NewNotification", err.(request.ErrInvalidParams)) } } if s.OldNotification != nil { if err := s.OldNotification.Validate(); err != nil { invalidParams.AddNested("OldNotification", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response of UpdateNotification type UpdateNotificationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateNotificationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateNotificationOutput) GoString() string { return s.String() } // Request of UpdateSubscriber type UpdateSubscriberInput struct { _ struct{} `type:"structure"` // Account Id of the customer. It should be a 12 digit number. // // AccountId is a required field AccountId *string `min:"12" type:"string" required:"true"` // A string represents the budget name. No ":" character is allowed. // // BudgetName is a required field BudgetName *string `type:"string" required:"true"` // Subscriber model. Each notification may contain multiple subscribers with // different addresses. // // NewSubscriber is a required field NewSubscriber *Subscriber `type:"structure" required:"true"` // Notification model. Each budget may contain multiple notifications with different // settings. // // Notification is a required field Notification *Notification `type:"structure" required:"true"` // Subscriber model. Each notification may contain multiple subscribers with // different addresses. // // OldSubscriber is a required field OldSubscriber *Subscriber `type:"structure" required:"true"` } // String returns the string representation func (s UpdateSubscriberInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateSubscriberInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateSubscriberInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateSubscriberInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.AccountId != nil && len(*s.AccountId) < 12 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) } if s.BudgetName == nil { invalidParams.Add(request.NewErrParamRequired("BudgetName")) } if s.NewSubscriber == nil { invalidParams.Add(request.NewErrParamRequired("NewSubscriber")) } if s.Notification == nil { invalidParams.Add(request.NewErrParamRequired("Notification")) } if s.OldSubscriber == nil { invalidParams.Add(request.NewErrParamRequired("OldSubscriber")) } if s.NewSubscriber != nil { if err := s.NewSubscriber.Validate(); err != nil { invalidParams.AddNested("NewSubscriber", err.(request.ErrInvalidParams)) } } if s.Notification != nil { if err := s.Notification.Validate(); err != nil { invalidParams.AddNested("Notification", err.(request.ErrInvalidParams)) } } if s.OldSubscriber != nil { if err := s.OldSubscriber.Validate(); err != nil { invalidParams.AddNested("OldSubscriber", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response of UpdateSubscriber type UpdateSubscriberOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateSubscriberOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateSubscriberOutput) GoString() string { return s.String() } // The type of a budget. Can be COST or USAGE. const ( // BudgetTypeUsage is a BudgetType enum value BudgetTypeUsage = "USAGE" // BudgetTypeCost is a BudgetType enum value BudgetTypeCost = "COST" ) // The comparison operator of a notification. Currently we support less than, // equal to and greater than. const ( // ComparisonOperatorGreaterThan is a ComparisonOperator enum value ComparisonOperatorGreaterThan = "GREATER_THAN" // ComparisonOperatorLessThan is a ComparisonOperator enum value ComparisonOperatorLessThan = "LESS_THAN" // ComparisonOperatorEqualTo is a ComparisonOperator enum value ComparisonOperatorEqualTo = "EQUAL_TO" ) // The type of a notification. It should be ACTUAL or FORECASTED. const ( // NotificationTypeActual is a NotificationType enum value NotificationTypeActual = "ACTUAL" // NotificationTypeForecasted is a NotificationType enum value NotificationTypeForecasted = "FORECASTED" ) // The subscription type of the subscriber. It can be SMS or EMAIL. const ( // SubscriptionTypeSns is a SubscriptionType enum value SubscriptionTypeSns = "SNS" // SubscriptionTypeEmail is a SubscriptionType enum value SubscriptionTypeEmail = "EMAIL" ) // The time unit of the budget. e.g. weekly, monthly, etc. const ( // TimeUnitMonthly is a TimeUnit enum value TimeUnitMonthly = "MONTHLY" // TimeUnitQuarterly is a TimeUnit enum value TimeUnitQuarterly = "QUARTERLY" // TimeUnitAnnually is a TimeUnit enum value TimeUnitAnnually = "ANNUALLY" ) aws-sdk-go-1.4.22/service/budgets/budgetsiface/000077500000000000000000000000001300374646400213055ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/budgets/budgetsiface/interface.go000066400000000000000000000114561300374646400236030ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package budgetsiface provides an interface to enable mocking the AWS Budgets service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package budgetsiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/budgets" ) // BudgetsAPI provides an interface to enable mocking the // budgets.Budgets service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Budgets. // func myFunc(svc budgetsiface.BudgetsAPI) bool { // // Make svc.CreateBudget request // } // // func main() { // sess := session.New() // svc := budgets.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockBudgetsClient struct { // budgetsiface.BudgetsAPI // } // func (m *mockBudgetsClient) CreateBudget(input *budgets.CreateBudgetInput) (*budgets.CreateBudgetOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockBudgetsClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type BudgetsAPI interface { CreateBudgetRequest(*budgets.CreateBudgetInput) (*request.Request, *budgets.CreateBudgetOutput) CreateBudget(*budgets.CreateBudgetInput) (*budgets.CreateBudgetOutput, error) CreateNotificationRequest(*budgets.CreateNotificationInput) (*request.Request, *budgets.CreateNotificationOutput) CreateNotification(*budgets.CreateNotificationInput) (*budgets.CreateNotificationOutput, error) CreateSubscriberRequest(*budgets.CreateSubscriberInput) (*request.Request, *budgets.CreateSubscriberOutput) CreateSubscriber(*budgets.CreateSubscriberInput) (*budgets.CreateSubscriberOutput, error) DeleteBudgetRequest(*budgets.DeleteBudgetInput) (*request.Request, *budgets.DeleteBudgetOutput) DeleteBudget(*budgets.DeleteBudgetInput) (*budgets.DeleteBudgetOutput, error) DeleteNotificationRequest(*budgets.DeleteNotificationInput) (*request.Request, *budgets.DeleteNotificationOutput) DeleteNotification(*budgets.DeleteNotificationInput) (*budgets.DeleteNotificationOutput, error) DeleteSubscriberRequest(*budgets.DeleteSubscriberInput) (*request.Request, *budgets.DeleteSubscriberOutput) DeleteSubscriber(*budgets.DeleteSubscriberInput) (*budgets.DeleteSubscriberOutput, error) DescribeBudgetRequest(*budgets.DescribeBudgetInput) (*request.Request, *budgets.DescribeBudgetOutput) DescribeBudget(*budgets.DescribeBudgetInput) (*budgets.DescribeBudgetOutput, error) DescribeBudgetsRequest(*budgets.DescribeBudgetsInput) (*request.Request, *budgets.DescribeBudgetsOutput) DescribeBudgets(*budgets.DescribeBudgetsInput) (*budgets.DescribeBudgetsOutput, error) DescribeNotificationsForBudgetRequest(*budgets.DescribeNotificationsForBudgetInput) (*request.Request, *budgets.DescribeNotificationsForBudgetOutput) DescribeNotificationsForBudget(*budgets.DescribeNotificationsForBudgetInput) (*budgets.DescribeNotificationsForBudgetOutput, error) DescribeSubscribersForNotificationRequest(*budgets.DescribeSubscribersForNotificationInput) (*request.Request, *budgets.DescribeSubscribersForNotificationOutput) DescribeSubscribersForNotification(*budgets.DescribeSubscribersForNotificationInput) (*budgets.DescribeSubscribersForNotificationOutput, error) UpdateBudgetRequest(*budgets.UpdateBudgetInput) (*request.Request, *budgets.UpdateBudgetOutput) UpdateBudget(*budgets.UpdateBudgetInput) (*budgets.UpdateBudgetOutput, error) UpdateNotificationRequest(*budgets.UpdateNotificationInput) (*request.Request, *budgets.UpdateNotificationOutput) UpdateNotification(*budgets.UpdateNotificationInput) (*budgets.UpdateNotificationOutput, error) UpdateSubscriberRequest(*budgets.UpdateSubscriberInput) (*request.Request, *budgets.UpdateSubscriberOutput) UpdateSubscriber(*budgets.UpdateSubscriberInput) (*budgets.UpdateSubscriberOutput, error) } var _ BudgetsAPI = (*budgets.Budgets)(nil) aws-sdk-go-1.4.22/service/budgets/examples_test.go000066400000000000000000000335651300374646400221000ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package budgets_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/budgets" ) var _ time.Duration var _ bytes.Buffer func ExampleBudgets_CreateBudget() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := budgets.New(sess) params := &budgets.CreateBudgetInput{ AccountId: aws.String("AccountId"), // Required Budget: &budgets.Budget{ // Required BudgetLimit: &budgets.Spend{ // Required Amount: aws.String("NumericValue"), // Required Unit: aws.String("GenericString"), // Required }, BudgetName: aws.String("BudgetName"), // Required BudgetType: aws.String("BudgetType"), // Required CostTypes: &budgets.CostTypes{ // Required IncludeSubscription: aws.Bool(true), // Required IncludeTax: aws.Bool(true), // Required UseBlended: aws.Bool(true), // Required }, TimePeriod: &budgets.TimePeriod{ // Required End: aws.Time(time.Now()), // Required Start: aws.Time(time.Now()), // Required }, TimeUnit: aws.String("TimeUnit"), // Required CalculatedSpend: &budgets.CalculatedSpend{ ActualSpend: &budgets.Spend{ // Required Amount: aws.String("NumericValue"), // Required Unit: aws.String("GenericString"), // Required }, ForecastedSpend: &budgets.Spend{ Amount: aws.String("NumericValue"), // Required Unit: aws.String("GenericString"), // Required }, }, CostFilters: map[string][]*string{ "Key": { // Required aws.String("GenericString"), // Required // More values... }, // More values... }, }, NotificationsWithSubscribers: []*budgets.NotificationWithSubscribers{ { // Required Notification: &budgets.Notification{ // Required ComparisonOperator: aws.String("ComparisonOperator"), // Required NotificationType: aws.String("NotificationType"), // Required Threshold: aws.Float64(1.0), // Required }, Subscribers: []*budgets.Subscriber{ // Required { // Required Address: aws.String("GenericString"), // Required SubscriptionType: aws.String("SubscriptionType"), // Required }, // More values... }, }, // More values... }, } resp, err := svc.CreateBudget(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleBudgets_CreateNotification() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := budgets.New(sess) params := &budgets.CreateNotificationInput{ AccountId: aws.String("AccountId"), // Required BudgetName: aws.String("BudgetName"), // Required Notification: &budgets.Notification{ // Required ComparisonOperator: aws.String("ComparisonOperator"), // Required NotificationType: aws.String("NotificationType"), // Required Threshold: aws.Float64(1.0), // Required }, Subscribers: []*budgets.Subscriber{ // Required { // Required Address: aws.String("GenericString"), // Required SubscriptionType: aws.String("SubscriptionType"), // Required }, // More values... }, } resp, err := svc.CreateNotification(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleBudgets_CreateSubscriber() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := budgets.New(sess) params := &budgets.CreateSubscriberInput{ AccountId: aws.String("AccountId"), // Required BudgetName: aws.String("BudgetName"), // Required Notification: &budgets.Notification{ // Required ComparisonOperator: aws.String("ComparisonOperator"), // Required NotificationType: aws.String("NotificationType"), // Required Threshold: aws.Float64(1.0), // Required }, Subscriber: &budgets.Subscriber{ // Required Address: aws.String("GenericString"), // Required SubscriptionType: aws.String("SubscriptionType"), // Required }, } resp, err := svc.CreateSubscriber(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleBudgets_DeleteBudget() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := budgets.New(sess) params := &budgets.DeleteBudgetInput{ AccountId: aws.String("AccountId"), // Required BudgetName: aws.String("BudgetName"), // Required } resp, err := svc.DeleteBudget(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleBudgets_DeleteNotification() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := budgets.New(sess) params := &budgets.DeleteNotificationInput{ AccountId: aws.String("AccountId"), // Required BudgetName: aws.String("BudgetName"), // Required Notification: &budgets.Notification{ // Required ComparisonOperator: aws.String("ComparisonOperator"), // Required NotificationType: aws.String("NotificationType"), // Required Threshold: aws.Float64(1.0), // Required }, } resp, err := svc.DeleteNotification(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleBudgets_DeleteSubscriber() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := budgets.New(sess) params := &budgets.DeleteSubscriberInput{ AccountId: aws.String("AccountId"), // Required BudgetName: aws.String("BudgetName"), // Required Notification: &budgets.Notification{ // Required ComparisonOperator: aws.String("ComparisonOperator"), // Required NotificationType: aws.String("NotificationType"), // Required Threshold: aws.Float64(1.0), // Required }, Subscriber: &budgets.Subscriber{ // Required Address: aws.String("GenericString"), // Required SubscriptionType: aws.String("SubscriptionType"), // Required }, } resp, err := svc.DeleteSubscriber(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleBudgets_DescribeBudget() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := budgets.New(sess) params := &budgets.DescribeBudgetInput{ AccountId: aws.String("AccountId"), // Required BudgetName: aws.String("BudgetName"), // Required } resp, err := svc.DescribeBudget(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleBudgets_DescribeBudgets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := budgets.New(sess) params := &budgets.DescribeBudgetsInput{ AccountId: aws.String("AccountId"), // Required MaxResults: aws.Int64(1), NextToken: aws.String("GenericString"), } resp, err := svc.DescribeBudgets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleBudgets_DescribeNotificationsForBudget() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := budgets.New(sess) params := &budgets.DescribeNotificationsForBudgetInput{ AccountId: aws.String("AccountId"), // Required BudgetName: aws.String("BudgetName"), // Required MaxResults: aws.Int64(1), NextToken: aws.String("GenericString"), } resp, err := svc.DescribeNotificationsForBudget(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleBudgets_DescribeSubscribersForNotification() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := budgets.New(sess) params := &budgets.DescribeSubscribersForNotificationInput{ AccountId: aws.String("AccountId"), // Required BudgetName: aws.String("BudgetName"), // Required Notification: &budgets.Notification{ // Required ComparisonOperator: aws.String("ComparisonOperator"), // Required NotificationType: aws.String("NotificationType"), // Required Threshold: aws.Float64(1.0), // Required }, MaxResults: aws.Int64(1), NextToken: aws.String("GenericString"), } resp, err := svc.DescribeSubscribersForNotification(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleBudgets_UpdateBudget() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := budgets.New(sess) params := &budgets.UpdateBudgetInput{ AccountId: aws.String("AccountId"), // Required NewBudget: &budgets.Budget{ // Required BudgetLimit: &budgets.Spend{ // Required Amount: aws.String("NumericValue"), // Required Unit: aws.String("GenericString"), // Required }, BudgetName: aws.String("BudgetName"), // Required BudgetType: aws.String("BudgetType"), // Required CostTypes: &budgets.CostTypes{ // Required IncludeSubscription: aws.Bool(true), // Required IncludeTax: aws.Bool(true), // Required UseBlended: aws.Bool(true), // Required }, TimePeriod: &budgets.TimePeriod{ // Required End: aws.Time(time.Now()), // Required Start: aws.Time(time.Now()), // Required }, TimeUnit: aws.String("TimeUnit"), // Required CalculatedSpend: &budgets.CalculatedSpend{ ActualSpend: &budgets.Spend{ // Required Amount: aws.String("NumericValue"), // Required Unit: aws.String("GenericString"), // Required }, ForecastedSpend: &budgets.Spend{ Amount: aws.String("NumericValue"), // Required Unit: aws.String("GenericString"), // Required }, }, CostFilters: map[string][]*string{ "Key": { // Required aws.String("GenericString"), // Required // More values... }, // More values... }, }, } resp, err := svc.UpdateBudget(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleBudgets_UpdateNotification() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := budgets.New(sess) params := &budgets.UpdateNotificationInput{ AccountId: aws.String("AccountId"), // Required BudgetName: aws.String("BudgetName"), // Required NewNotification: &budgets.Notification{ // Required ComparisonOperator: aws.String("ComparisonOperator"), // Required NotificationType: aws.String("NotificationType"), // Required Threshold: aws.Float64(1.0), // Required }, OldNotification: &budgets.Notification{ // Required ComparisonOperator: aws.String("ComparisonOperator"), // Required NotificationType: aws.String("NotificationType"), // Required Threshold: aws.Float64(1.0), // Required }, } resp, err := svc.UpdateNotification(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleBudgets_UpdateSubscriber() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := budgets.New(sess) params := &budgets.UpdateSubscriberInput{ AccountId: aws.String("AccountId"), // Required BudgetName: aws.String("BudgetName"), // Required NewSubscriber: &budgets.Subscriber{ // Required Address: aws.String("GenericString"), // Required SubscriptionType: aws.String("SubscriptionType"), // Required }, Notification: &budgets.Notification{ // Required ComparisonOperator: aws.String("ComparisonOperator"), // Required NotificationType: aws.String("NotificationType"), // Required Threshold: aws.Float64(1.0), // Required }, OldSubscriber: &budgets.Subscriber{ // Required Address: aws.String("GenericString"), // Required SubscriptionType: aws.String("SubscriptionType"), // Required }, } resp, err := svc.UpdateSubscriber(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/budgets/service.go000066400000000000000000000053041300374646400206510ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package budgets import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // All public APIs for AWS Budgets //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type Budgets struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "budgets" // New creates a new instance of the Budgets client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a Budgets client from just a session. // svc := budgets.New(mySession) // // // Create a Budgets client with additional configuration // svc := budgets.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *Budgets { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *Budgets { svc := &Budgets{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2016-10-20", JSONVersion: "1.1", TargetPrefix: "AWSBudgetServiceGateway", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a Budgets operation and runs any // custom request initialization. func (c *Budgets) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/cloudformation/000077500000000000000000000000001300374646400202505ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudformation/api.go000066400000000000000000005204421300374646400213570ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cloudformation provides a client for AWS CloudFormation. package cloudformation import ( "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/query" ) const opCancelUpdateStack = "CancelUpdateStack" // CancelUpdateStackRequest generates a "aws/request.Request" representing the // client's request for the CancelUpdateStack operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CancelUpdateStack for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CancelUpdateStack method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CancelUpdateStackRequest method. // req, resp := client.CancelUpdateStackRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) CancelUpdateStackRequest(input *CancelUpdateStackInput) (req *request.Request, output *CancelUpdateStackOutput) { op := &request.Operation{ Name: opCancelUpdateStack, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CancelUpdateStackInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CancelUpdateStackOutput{} req.Data = output return } // CancelUpdateStack API operation for AWS CloudFormation. // // Cancels an update on the specified stack. If the call completes successfully, // the stack rolls back the update and reverts to the previous stack configuration. // // You can cancel only stacks that are in the UPDATE_IN_PROGRESS state. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation CancelUpdateStack for usage and error information. func (c *CloudFormation) CancelUpdateStack(input *CancelUpdateStackInput) (*CancelUpdateStackOutput, error) { req, out := c.CancelUpdateStackRequest(input) err := req.Send() return out, err } const opContinueUpdateRollback = "ContinueUpdateRollback" // ContinueUpdateRollbackRequest generates a "aws/request.Request" representing the // client's request for the ContinueUpdateRollback operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ContinueUpdateRollback for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ContinueUpdateRollback method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ContinueUpdateRollbackRequest method. // req, resp := client.ContinueUpdateRollbackRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) ContinueUpdateRollbackRequest(input *ContinueUpdateRollbackInput) (req *request.Request, output *ContinueUpdateRollbackOutput) { op := &request.Operation{ Name: opContinueUpdateRollback, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ContinueUpdateRollbackInput{} } req = c.newRequest(op, input, output) output = &ContinueUpdateRollbackOutput{} req.Data = output return } // ContinueUpdateRollback API operation for AWS CloudFormation. // // For a specified stack that is in the UPDATE_ROLLBACK_FAILED state, continues // rolling it back to the UPDATE_ROLLBACK_COMPLETE state. Depending on the cause // of the failure, you can manually fix the error (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/troubleshooting.html#troubleshooting-errors-update-rollback-failed) // and continue the rollback. By continuing the rollback, you can return your // stack to a working state (the UPDATE_ROLLBACK_COMPLETE state), and then try // to update the stack again. // // A stack goes into the UPDATE_ROLLBACK_FAILED state when AWS CloudFormation // cannot roll back all changes after a failed stack update. For example, you // might have a stack that is rolling back to an old database instance that // was deleted outside of AWS CloudFormation. Because AWS CloudFormation doesn't // know the database was deleted, it assumes that the database instance still // exists and attempts to roll back to it, causing the update rollback to fail. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation ContinueUpdateRollback for usage and error information. func (c *CloudFormation) ContinueUpdateRollback(input *ContinueUpdateRollbackInput) (*ContinueUpdateRollbackOutput, error) { req, out := c.ContinueUpdateRollbackRequest(input) err := req.Send() return out, err } const opCreateChangeSet = "CreateChangeSet" // CreateChangeSetRequest generates a "aws/request.Request" representing the // client's request for the CreateChangeSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateChangeSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateChangeSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateChangeSetRequest method. // req, resp := client.CreateChangeSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) CreateChangeSetRequest(input *CreateChangeSetInput) (req *request.Request, output *CreateChangeSetOutput) { op := &request.Operation{ Name: opCreateChangeSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateChangeSetInput{} } req = c.newRequest(op, input, output) output = &CreateChangeSetOutput{} req.Data = output return } // CreateChangeSet API operation for AWS CloudFormation. // // Creates a list of changes for a stack. AWS CloudFormation generates the change // set by comparing the stack's information with the information that you submit. // A change set can help you understand which resources AWS CloudFormation will // change and how it will change them before you update your stack. Change sets // allow you to check before you make a change so that you don't delete or replace // critical resources. // // AWS CloudFormation doesn't make any changes to the stack when you create // a change set. To make the specified changes, you must execute the change // set by using the ExecuteChangeSet action. // // After the call successfully completes, AWS CloudFormation starts creating // the change set. To check the status of the change set, use the DescribeChangeSet // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation CreateChangeSet for usage and error information. // // Returned Error Codes: // * AlreadyExistsException // Resource with the name requested already exists. // // * InsufficientCapabilitiesException // The template contains resources with capabilities that were not specified // in the Capabilities parameter. // // * LimitExceededException // Quota for the resource has already been reached. // func (c *CloudFormation) CreateChangeSet(input *CreateChangeSetInput) (*CreateChangeSetOutput, error) { req, out := c.CreateChangeSetRequest(input) err := req.Send() return out, err } const opCreateStack = "CreateStack" // CreateStackRequest generates a "aws/request.Request" representing the // client's request for the CreateStack operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateStack for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateStack method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateStackRequest method. // req, resp := client.CreateStackRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) CreateStackRequest(input *CreateStackInput) (req *request.Request, output *CreateStackOutput) { op := &request.Operation{ Name: opCreateStack, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateStackInput{} } req = c.newRequest(op, input, output) output = &CreateStackOutput{} req.Data = output return } // CreateStack API operation for AWS CloudFormation. // // Creates a stack as specified in the template. After the call completes successfully, // the stack creation starts. You can check the status of the stack via the // DescribeStacks API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation CreateStack for usage and error information. // // Returned Error Codes: // * LimitExceededException // Quota for the resource has already been reached. // // * AlreadyExistsException // Resource with the name requested already exists. // // * InsufficientCapabilitiesException // The template contains resources with capabilities that were not specified // in the Capabilities parameter. // func (c *CloudFormation) CreateStack(input *CreateStackInput) (*CreateStackOutput, error) { req, out := c.CreateStackRequest(input) err := req.Send() return out, err } const opDeleteChangeSet = "DeleteChangeSet" // DeleteChangeSetRequest generates a "aws/request.Request" representing the // client's request for the DeleteChangeSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteChangeSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteChangeSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteChangeSetRequest method. // req, resp := client.DeleteChangeSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) DeleteChangeSetRequest(input *DeleteChangeSetInput) (req *request.Request, output *DeleteChangeSetOutput) { op := &request.Operation{ Name: opDeleteChangeSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteChangeSetInput{} } req = c.newRequest(op, input, output) output = &DeleteChangeSetOutput{} req.Data = output return } // DeleteChangeSet API operation for AWS CloudFormation. // // Deletes the specified change set. Deleting change sets ensures that no one // executes the wrong change set. // // If the call successfully completes, AWS CloudFormation successfully deleted // the change set. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation DeleteChangeSet for usage and error information. // // Returned Error Codes: // * InvalidChangeSetStatus // The specified change set cannot be used to update the stack. For example, // the change set status might be CREATE_IN_PROGRESS or the stack status might // be UPDATE_IN_PROGRESS. // func (c *CloudFormation) DeleteChangeSet(input *DeleteChangeSetInput) (*DeleteChangeSetOutput, error) { req, out := c.DeleteChangeSetRequest(input) err := req.Send() return out, err } const opDeleteStack = "DeleteStack" // DeleteStackRequest generates a "aws/request.Request" representing the // client's request for the DeleteStack operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteStack for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteStack method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteStackRequest method. // req, resp := client.DeleteStackRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) DeleteStackRequest(input *DeleteStackInput) (req *request.Request, output *DeleteStackOutput) { op := &request.Operation{ Name: opDeleteStack, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteStackInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteStackOutput{} req.Data = output return } // DeleteStack API operation for AWS CloudFormation. // // Deletes a specified stack. Once the call completes successfully, stack deletion // starts. Deleted stacks do not show up in the DescribeStacks API if the deletion // has been completed successfully. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation DeleteStack for usage and error information. func (c *CloudFormation) DeleteStack(input *DeleteStackInput) (*DeleteStackOutput, error) { req, out := c.DeleteStackRequest(input) err := req.Send() return out, err } const opDescribeAccountLimits = "DescribeAccountLimits" // DescribeAccountLimitsRequest generates a "aws/request.Request" representing the // client's request for the DescribeAccountLimits operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAccountLimits for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAccountLimits method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAccountLimitsRequest method. // req, resp := client.DescribeAccountLimitsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) DescribeAccountLimitsRequest(input *DescribeAccountLimitsInput) (req *request.Request, output *DescribeAccountLimitsOutput) { op := &request.Operation{ Name: opDescribeAccountLimits, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAccountLimitsInput{} } req = c.newRequest(op, input, output) output = &DescribeAccountLimitsOutput{} req.Data = output return } // DescribeAccountLimits API operation for AWS CloudFormation. // // Retrieves your account's AWS CloudFormation limits, such as the maximum number // of stacks that you can create in your account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation DescribeAccountLimits for usage and error information. func (c *CloudFormation) DescribeAccountLimits(input *DescribeAccountLimitsInput) (*DescribeAccountLimitsOutput, error) { req, out := c.DescribeAccountLimitsRequest(input) err := req.Send() return out, err } const opDescribeChangeSet = "DescribeChangeSet" // DescribeChangeSetRequest generates a "aws/request.Request" representing the // client's request for the DescribeChangeSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeChangeSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeChangeSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeChangeSetRequest method. // req, resp := client.DescribeChangeSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) DescribeChangeSetRequest(input *DescribeChangeSetInput) (req *request.Request, output *DescribeChangeSetOutput) { op := &request.Operation{ Name: opDescribeChangeSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeChangeSetInput{} } req = c.newRequest(op, input, output) output = &DescribeChangeSetOutput{} req.Data = output return } // DescribeChangeSet API operation for AWS CloudFormation. // // Returns the inputs for the change set and a list of changes that AWS CloudFormation // will make if you execute the change set. For more information, see Updating // Stacks Using Change Sets (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-changesets.html) // in the AWS CloudFormation User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation DescribeChangeSet for usage and error information. // // Returned Error Codes: // * ChangeSetNotFound // The specified change set name or ID doesn't exit. To view valid change sets // for a stack, use the ListChangeSets action. // func (c *CloudFormation) DescribeChangeSet(input *DescribeChangeSetInput) (*DescribeChangeSetOutput, error) { req, out := c.DescribeChangeSetRequest(input) err := req.Send() return out, err } const opDescribeStackEvents = "DescribeStackEvents" // DescribeStackEventsRequest generates a "aws/request.Request" representing the // client's request for the DescribeStackEvents operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeStackEvents for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeStackEvents method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeStackEventsRequest method. // req, resp := client.DescribeStackEventsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) DescribeStackEventsRequest(input *DescribeStackEventsInput) (req *request.Request, output *DescribeStackEventsOutput) { op := &request.Operation{ Name: opDescribeStackEvents, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &DescribeStackEventsInput{} } req = c.newRequest(op, input, output) output = &DescribeStackEventsOutput{} req.Data = output return } // DescribeStackEvents API operation for AWS CloudFormation. // // Returns all stack related events for a specified stack in reverse chronological // order. For more information about a stack's event history, go to Stacks (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/concept-stack.html) // in the AWS CloudFormation User Guide. // // You can list events for stacks that have failed to create or have been deleted // by specifying the unique stack identifier (stack ID). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation DescribeStackEvents for usage and error information. func (c *CloudFormation) DescribeStackEvents(input *DescribeStackEventsInput) (*DescribeStackEventsOutput, error) { req, out := c.DescribeStackEventsRequest(input) err := req.Send() return out, err } // DescribeStackEventsPages iterates over the pages of a DescribeStackEvents operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeStackEvents method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeStackEvents operation. // pageNum := 0 // err := client.DescribeStackEventsPages(params, // func(page *DescribeStackEventsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CloudFormation) DescribeStackEventsPages(input *DescribeStackEventsInput, fn func(p *DescribeStackEventsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeStackEventsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeStackEventsOutput), lastPage) }) } const opDescribeStackResource = "DescribeStackResource" // DescribeStackResourceRequest generates a "aws/request.Request" representing the // client's request for the DescribeStackResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeStackResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeStackResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeStackResourceRequest method. // req, resp := client.DescribeStackResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) DescribeStackResourceRequest(input *DescribeStackResourceInput) (req *request.Request, output *DescribeStackResourceOutput) { op := &request.Operation{ Name: opDescribeStackResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeStackResourceInput{} } req = c.newRequest(op, input, output) output = &DescribeStackResourceOutput{} req.Data = output return } // DescribeStackResource API operation for AWS CloudFormation. // // Returns a description of the specified resource in the specified stack. // // For deleted stacks, DescribeStackResource returns resource information for // up to 90 days after the stack has been deleted. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation DescribeStackResource for usage and error information. func (c *CloudFormation) DescribeStackResource(input *DescribeStackResourceInput) (*DescribeStackResourceOutput, error) { req, out := c.DescribeStackResourceRequest(input) err := req.Send() return out, err } const opDescribeStackResources = "DescribeStackResources" // DescribeStackResourcesRequest generates a "aws/request.Request" representing the // client's request for the DescribeStackResources operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeStackResources for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeStackResources method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeStackResourcesRequest method. // req, resp := client.DescribeStackResourcesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) DescribeStackResourcesRequest(input *DescribeStackResourcesInput) (req *request.Request, output *DescribeStackResourcesOutput) { op := &request.Operation{ Name: opDescribeStackResources, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeStackResourcesInput{} } req = c.newRequest(op, input, output) output = &DescribeStackResourcesOutput{} req.Data = output return } // DescribeStackResources API operation for AWS CloudFormation. // // Returns AWS resource descriptions for running and deleted stacks. If StackName // is specified, all the associated resources that are part of the stack are // returned. If PhysicalResourceId is specified, the associated resources of // the stack that the resource belongs to are returned. // // Only the first 100 resources will be returned. If your stack has more resources // than this, you should use ListStackResources instead. // // For deleted stacks, DescribeStackResources returns resource information for // up to 90 days after the stack has been deleted. // // You must specify either StackName or PhysicalResourceId, but not both. In // addition, you can specify LogicalResourceId to filter the returned result. // For more information about resources, the LogicalResourceId and PhysicalResourceId, // go to the AWS CloudFormation User Guide (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/). // // A ValidationError is returned if you specify both StackName and PhysicalResourceId // in the same request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation DescribeStackResources for usage and error information. func (c *CloudFormation) DescribeStackResources(input *DescribeStackResourcesInput) (*DescribeStackResourcesOutput, error) { req, out := c.DescribeStackResourcesRequest(input) err := req.Send() return out, err } const opDescribeStacks = "DescribeStacks" // DescribeStacksRequest generates a "aws/request.Request" representing the // client's request for the DescribeStacks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeStacks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeStacks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeStacksRequest method. // req, resp := client.DescribeStacksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) DescribeStacksRequest(input *DescribeStacksInput) (req *request.Request, output *DescribeStacksOutput) { op := &request.Operation{ Name: opDescribeStacks, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &DescribeStacksInput{} } req = c.newRequest(op, input, output) output = &DescribeStacksOutput{} req.Data = output return } // DescribeStacks API operation for AWS CloudFormation. // // Returns the description for the specified stack; if no stack name was specified, // then it returns the description for all the stacks created. // // If the stack does not exist, an AmazonCloudFormationException is returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation DescribeStacks for usage and error information. func (c *CloudFormation) DescribeStacks(input *DescribeStacksInput) (*DescribeStacksOutput, error) { req, out := c.DescribeStacksRequest(input) err := req.Send() return out, err } // DescribeStacksPages iterates over the pages of a DescribeStacks operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeStacks method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeStacks operation. // pageNum := 0 // err := client.DescribeStacksPages(params, // func(page *DescribeStacksOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CloudFormation) DescribeStacksPages(input *DescribeStacksInput, fn func(p *DescribeStacksOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeStacksRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeStacksOutput), lastPage) }) } const opEstimateTemplateCost = "EstimateTemplateCost" // EstimateTemplateCostRequest generates a "aws/request.Request" representing the // client's request for the EstimateTemplateCost operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EstimateTemplateCost for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EstimateTemplateCost method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EstimateTemplateCostRequest method. // req, resp := client.EstimateTemplateCostRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) EstimateTemplateCostRequest(input *EstimateTemplateCostInput) (req *request.Request, output *EstimateTemplateCostOutput) { op := &request.Operation{ Name: opEstimateTemplateCost, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EstimateTemplateCostInput{} } req = c.newRequest(op, input, output) output = &EstimateTemplateCostOutput{} req.Data = output return } // EstimateTemplateCost API operation for AWS CloudFormation. // // Returns the estimated monthly cost of a template. The return value is an // AWS Simple Monthly Calculator URL with a query string that describes the // resources required to run the template. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation EstimateTemplateCost for usage and error information. func (c *CloudFormation) EstimateTemplateCost(input *EstimateTemplateCostInput) (*EstimateTemplateCostOutput, error) { req, out := c.EstimateTemplateCostRequest(input) err := req.Send() return out, err } const opExecuteChangeSet = "ExecuteChangeSet" // ExecuteChangeSetRequest generates a "aws/request.Request" representing the // client's request for the ExecuteChangeSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ExecuteChangeSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ExecuteChangeSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ExecuteChangeSetRequest method. // req, resp := client.ExecuteChangeSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) ExecuteChangeSetRequest(input *ExecuteChangeSetInput) (req *request.Request, output *ExecuteChangeSetOutput) { op := &request.Operation{ Name: opExecuteChangeSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ExecuteChangeSetInput{} } req = c.newRequest(op, input, output) output = &ExecuteChangeSetOutput{} req.Data = output return } // ExecuteChangeSet API operation for AWS CloudFormation. // // Updates a stack using the input information that was provided when the specified // change set was created. After the call successfully completes, AWS CloudFormation // starts updating the stack. Use the DescribeStacks action to view the status // of the update. // // When you execute a change set, AWS CloudFormation deletes all other change // sets associated with the stack because they aren't valid for the updated // stack. // // If a stack policy is associated with the stack, AWS CloudFormation enforces // the policy during the update. You can't specify a temporary stack policy // that overrides the current policy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation ExecuteChangeSet for usage and error information. // // Returned Error Codes: // * InvalidChangeSetStatus // The specified change set cannot be used to update the stack. For example, // the change set status might be CREATE_IN_PROGRESS or the stack status might // be UPDATE_IN_PROGRESS. // // * ChangeSetNotFound // The specified change set name or ID doesn't exit. To view valid change sets // for a stack, use the ListChangeSets action. // func (c *CloudFormation) ExecuteChangeSet(input *ExecuteChangeSetInput) (*ExecuteChangeSetOutput, error) { req, out := c.ExecuteChangeSetRequest(input) err := req.Send() return out, err } const opGetStackPolicy = "GetStackPolicy" // GetStackPolicyRequest generates a "aws/request.Request" representing the // client's request for the GetStackPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetStackPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetStackPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetStackPolicyRequest method. // req, resp := client.GetStackPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) GetStackPolicyRequest(input *GetStackPolicyInput) (req *request.Request, output *GetStackPolicyOutput) { op := &request.Operation{ Name: opGetStackPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetStackPolicyInput{} } req = c.newRequest(op, input, output) output = &GetStackPolicyOutput{} req.Data = output return } // GetStackPolicy API operation for AWS CloudFormation. // // Returns the stack policy for a specified stack. If a stack doesn't have a // policy, a null value is returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation GetStackPolicy for usage and error information. func (c *CloudFormation) GetStackPolicy(input *GetStackPolicyInput) (*GetStackPolicyOutput, error) { req, out := c.GetStackPolicyRequest(input) err := req.Send() return out, err } const opGetTemplate = "GetTemplate" // GetTemplateRequest generates a "aws/request.Request" representing the // client's request for the GetTemplate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetTemplate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetTemplate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetTemplateRequest method. // req, resp := client.GetTemplateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) GetTemplateRequest(input *GetTemplateInput) (req *request.Request, output *GetTemplateOutput) { op := &request.Operation{ Name: opGetTemplate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetTemplateInput{} } req = c.newRequest(op, input, output) output = &GetTemplateOutput{} req.Data = output return } // GetTemplate API operation for AWS CloudFormation. // // Returns the template body for a specified stack. You can get the template // for running or deleted stacks. // // For deleted stacks, GetTemplate returns the template for up to 90 days after // the stack has been deleted. // // If the template does not exist, a ValidationError is returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation GetTemplate for usage and error information. func (c *CloudFormation) GetTemplate(input *GetTemplateInput) (*GetTemplateOutput, error) { req, out := c.GetTemplateRequest(input) err := req.Send() return out, err } const opGetTemplateSummary = "GetTemplateSummary" // GetTemplateSummaryRequest generates a "aws/request.Request" representing the // client's request for the GetTemplateSummary operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetTemplateSummary for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetTemplateSummary method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetTemplateSummaryRequest method. // req, resp := client.GetTemplateSummaryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) GetTemplateSummaryRequest(input *GetTemplateSummaryInput) (req *request.Request, output *GetTemplateSummaryOutput) { op := &request.Operation{ Name: opGetTemplateSummary, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetTemplateSummaryInput{} } req = c.newRequest(op, input, output) output = &GetTemplateSummaryOutput{} req.Data = output return } // GetTemplateSummary API operation for AWS CloudFormation. // // Returns information about a new or existing template. The GetTemplateSummary // action is useful for viewing parameter information, such as default parameter // values and parameter types, before you create or update a stack. // // You can use the GetTemplateSummary action when you submit a template, or // you can get template information for a running or deleted stack. // // For deleted stacks, GetTemplateSummary returns the template information for // up to 90 days after the stack has been deleted. If the template does not // exist, a ValidationError is returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation GetTemplateSummary for usage and error information. func (c *CloudFormation) GetTemplateSummary(input *GetTemplateSummaryInput) (*GetTemplateSummaryOutput, error) { req, out := c.GetTemplateSummaryRequest(input) err := req.Send() return out, err } const opListChangeSets = "ListChangeSets" // ListChangeSetsRequest generates a "aws/request.Request" representing the // client's request for the ListChangeSets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListChangeSets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListChangeSets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListChangeSetsRequest method. // req, resp := client.ListChangeSetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) ListChangeSetsRequest(input *ListChangeSetsInput) (req *request.Request, output *ListChangeSetsOutput) { op := &request.Operation{ Name: opListChangeSets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListChangeSetsInput{} } req = c.newRequest(op, input, output) output = &ListChangeSetsOutput{} req.Data = output return } // ListChangeSets API operation for AWS CloudFormation. // // Returns the ID and status of each active change set for a stack. For example, // AWS CloudFormation lists change sets that are in the CREATE_IN_PROGRESS or // CREATE_PENDING state. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation ListChangeSets for usage and error information. func (c *CloudFormation) ListChangeSets(input *ListChangeSetsInput) (*ListChangeSetsOutput, error) { req, out := c.ListChangeSetsRequest(input) err := req.Send() return out, err } const opListStackResources = "ListStackResources" // ListStackResourcesRequest generates a "aws/request.Request" representing the // client's request for the ListStackResources operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListStackResources for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListStackResources method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListStackResourcesRequest method. // req, resp := client.ListStackResourcesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) ListStackResourcesRequest(input *ListStackResourcesInput) (req *request.Request, output *ListStackResourcesOutput) { op := &request.Operation{ Name: opListStackResources, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListStackResourcesInput{} } req = c.newRequest(op, input, output) output = &ListStackResourcesOutput{} req.Data = output return } // ListStackResources API operation for AWS CloudFormation. // // Returns descriptions of all resources of the specified stack. // // For deleted stacks, ListStackResources returns resource information for up // to 90 days after the stack has been deleted. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation ListStackResources for usage and error information. func (c *CloudFormation) ListStackResources(input *ListStackResourcesInput) (*ListStackResourcesOutput, error) { req, out := c.ListStackResourcesRequest(input) err := req.Send() return out, err } // ListStackResourcesPages iterates over the pages of a ListStackResources operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListStackResources method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListStackResources operation. // pageNum := 0 // err := client.ListStackResourcesPages(params, // func(page *ListStackResourcesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CloudFormation) ListStackResourcesPages(input *ListStackResourcesInput, fn func(p *ListStackResourcesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListStackResourcesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListStackResourcesOutput), lastPage) }) } const opListStacks = "ListStacks" // ListStacksRequest generates a "aws/request.Request" representing the // client's request for the ListStacks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListStacks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListStacks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListStacksRequest method. // req, resp := client.ListStacksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) ListStacksRequest(input *ListStacksInput) (req *request.Request, output *ListStacksOutput) { op := &request.Operation{ Name: opListStacks, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListStacksInput{} } req = c.newRequest(op, input, output) output = &ListStacksOutput{} req.Data = output return } // ListStacks API operation for AWS CloudFormation. // // Returns the summary information for stacks whose status matches the specified // StackStatusFilter. Summary information for stacks that have been deleted // is kept for 90 days after the stack is deleted. If no StackStatusFilter is // specified, summary information for all stacks is returned (including existing // stacks and stacks that have been deleted). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation ListStacks for usage and error information. func (c *CloudFormation) ListStacks(input *ListStacksInput) (*ListStacksOutput, error) { req, out := c.ListStacksRequest(input) err := req.Send() return out, err } // ListStacksPages iterates over the pages of a ListStacks operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListStacks method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListStacks operation. // pageNum := 0 // err := client.ListStacksPages(params, // func(page *ListStacksOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CloudFormation) ListStacksPages(input *ListStacksInput, fn func(p *ListStacksOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListStacksRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListStacksOutput), lastPage) }) } const opSetStackPolicy = "SetStackPolicy" // SetStackPolicyRequest generates a "aws/request.Request" representing the // client's request for the SetStackPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetStackPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetStackPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetStackPolicyRequest method. // req, resp := client.SetStackPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) SetStackPolicyRequest(input *SetStackPolicyInput) (req *request.Request, output *SetStackPolicyOutput) { op := &request.Operation{ Name: opSetStackPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetStackPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetStackPolicyOutput{} req.Data = output return } // SetStackPolicy API operation for AWS CloudFormation. // // Sets a stack policy for a specified stack. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation SetStackPolicy for usage and error information. func (c *CloudFormation) SetStackPolicy(input *SetStackPolicyInput) (*SetStackPolicyOutput, error) { req, out := c.SetStackPolicyRequest(input) err := req.Send() return out, err } const opSignalResource = "SignalResource" // SignalResourceRequest generates a "aws/request.Request" representing the // client's request for the SignalResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SignalResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SignalResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SignalResourceRequest method. // req, resp := client.SignalResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) SignalResourceRequest(input *SignalResourceInput) (req *request.Request, output *SignalResourceOutput) { op := &request.Operation{ Name: opSignalResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SignalResourceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SignalResourceOutput{} req.Data = output return } // SignalResource API operation for AWS CloudFormation. // // Sends a signal to the specified resource with a success or failure status. // You can use the SignalResource API in conjunction with a creation policy // or update policy. AWS CloudFormation doesn't proceed with a stack creation // or update until resources receive the required number of signals or the timeout // period is exceeded. The SignalResource API is useful in cases where you want // to send signals from anywhere other than an Amazon EC2 instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation SignalResource for usage and error information. func (c *CloudFormation) SignalResource(input *SignalResourceInput) (*SignalResourceOutput, error) { req, out := c.SignalResourceRequest(input) err := req.Send() return out, err } const opUpdateStack = "UpdateStack" // UpdateStackRequest generates a "aws/request.Request" representing the // client's request for the UpdateStack operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateStack for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateStack method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateStackRequest method. // req, resp := client.UpdateStackRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) UpdateStackRequest(input *UpdateStackInput) (req *request.Request, output *UpdateStackOutput) { op := &request.Operation{ Name: opUpdateStack, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateStackInput{} } req = c.newRequest(op, input, output) output = &UpdateStackOutput{} req.Data = output return } // UpdateStack API operation for AWS CloudFormation. // // Updates a stack as specified in the template. After the call completes successfully, // the stack update starts. You can check the status of the stack via the DescribeStacks // action. // // To get a copy of the template for an existing stack, you can use the GetTemplate // action. // // For more information about creating an update template, updating a stack, // and monitoring the progress of the update, see Updating a Stack (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation UpdateStack for usage and error information. // // Returned Error Codes: // * InsufficientCapabilitiesException // The template contains resources with capabilities that were not specified // in the Capabilities parameter. // func (c *CloudFormation) UpdateStack(input *UpdateStackInput) (*UpdateStackOutput, error) { req, out := c.UpdateStackRequest(input) err := req.Send() return out, err } const opValidateTemplate = "ValidateTemplate" // ValidateTemplateRequest generates a "aws/request.Request" representing the // client's request for the ValidateTemplate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ValidateTemplate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ValidateTemplate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ValidateTemplateRequest method. // req, resp := client.ValidateTemplateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFormation) ValidateTemplateRequest(input *ValidateTemplateInput) (req *request.Request, output *ValidateTemplateOutput) { op := &request.Operation{ Name: opValidateTemplate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ValidateTemplateInput{} } req = c.newRequest(op, input, output) output = &ValidateTemplateOutput{} req.Data = output return } // ValidateTemplate API operation for AWS CloudFormation. // // Validates a specified template. AWS CloudFormation first checks if the template // is valid JSON. If it isn't, AWS CloudFormation checks if the template is // valid YAML. If both these checks fail, AWS CloudFormation returns a template // validation error. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudFormation's // API operation ValidateTemplate for usage and error information. func (c *CloudFormation) ValidateTemplate(input *ValidateTemplateInput) (*ValidateTemplateOutput, error) { req, out := c.ValidateTemplateRequest(input) err := req.Send() return out, err } // The AccountLimit data type. type AccountLimit struct { _ struct{} `type:"structure"` // The name of the account limit. Currently, the only account limit is StackLimit. Name *string `type:"string"` // The value that is associated with the account limit name. Value *int64 `type:"integer"` } // String returns the string representation func (s AccountLimit) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AccountLimit) GoString() string { return s.String() } // The input for the CancelUpdateStack action. type CancelUpdateStackInput struct { _ struct{} `type:"structure"` // The name or the unique stack ID that is associated with the stack. // // StackName is a required field StackName *string `type:"string" required:"true"` } // String returns the string representation func (s CancelUpdateStackInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelUpdateStackInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CancelUpdateStackInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelUpdateStackInput"} if s.StackName == nil { invalidParams.Add(request.NewErrParamRequired("StackName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CancelUpdateStackOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CancelUpdateStackOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelUpdateStackOutput) GoString() string { return s.String() } // The Change structure describes the changes AWS CloudFormation will perform // if you execute the change set. type Change struct { _ struct{} `type:"structure"` // A ResourceChange structure that describes the resource and action that AWS // CloudFormation will perform. ResourceChange *ResourceChange `type:"structure"` // The type of entity that AWS CloudFormation changes. Currently, the only entity // type is Resource. Type *string `type:"string" enum:"ChangeType"` } // String returns the string representation func (s Change) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Change) GoString() string { return s.String() } // The ChangeSetSummary structure describes a change set, its status, and the // stack with which it's associated. type ChangeSetSummary struct { _ struct{} `type:"structure"` // The ID of the change set. ChangeSetId *string `min:"1" type:"string"` // The name of the change set. ChangeSetName *string `min:"1" type:"string"` // The start time when the change set was created, in UTC. CreationTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Descriptive information about the change set. Description *string `min:"1" type:"string"` // If the change set execution status is AVAILABLE, you can execute the change // set. If you can’t execute the change set, the status indicates why. For example, // a change set might be in an UNAVAILABLE state because AWS CloudFormation // is still creating it or in an OBSOLETE state because the stack was already // updated. ExecutionStatus *string `type:"string" enum:"ExecutionStatus"` // The ID of the stack with which the change set is associated. StackId *string `type:"string"` // The name of the stack with which the change set is associated. StackName *string `type:"string"` // The state of the change set, such as CREATE_IN_PROGRESS, CREATE_COMPLETE, // or FAILED. Status *string `type:"string" enum:"ChangeSetStatus"` // A description of the change set's status. For example, if your change set // is in the FAILED state, AWS CloudFormation shows the error message. StatusReason *string `type:"string"` } // String returns the string representation func (s ChangeSetSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChangeSetSummary) GoString() string { return s.String() } // The input for the ContinueUpdateRollback action. type ContinueUpdateRollbackInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) // role that AWS CloudFormation assumes to roll back the stack. AWS CloudFormation // uses the role's credentials to make calls on your behalf. AWS CloudFormation // always uses this role for all future operations on the stack. As long as // users have permission to operate on the stack, AWS CloudFormation uses this // role even if the users don't have permission to pass it. Ensure that the // role grants least privilege. // // If you don't specify a value, AWS CloudFormation uses the role that was previously // associated with the stack. If no role is available, AWS CloudFormation uses // a temporary session that is generated from your user credentials. RoleARN *string `min:"20" type:"string"` // The name or the unique ID of the stack that you want to continue rolling // back. // // StackName is a required field StackName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ContinueUpdateRollbackInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ContinueUpdateRollbackInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ContinueUpdateRollbackInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ContinueUpdateRollbackInput"} if s.RoleARN != nil && len(*s.RoleARN) < 20 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 20)) } if s.StackName == nil { invalidParams.Add(request.NewErrParamRequired("StackName")) } if s.StackName != nil && len(*s.StackName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StackName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for a ContinueUpdateRollback action. type ContinueUpdateRollbackOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ContinueUpdateRollbackOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ContinueUpdateRollbackOutput) GoString() string { return s.String() } // The input for the CreateChangeSet action. type CreateChangeSetInput struct { _ struct{} `type:"structure"` // A list of values that you must specify before AWS CloudFormation can update // certain stacks. Some stack templates might include resources that can affect // permissions in your AWS account, for example, by creating new AWS Identity // and Access Management (IAM) users. For those stacks, you must explicitly // acknowledge their capabilities by specifying this parameter. // // The only valid values are CAPABILITY_IAM and CAPABILITY_NAMED_IAM. The following // resources require you to specify this parameter: AWS::IAM::AccessKey (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html), // AWS::IAM::Group (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html), // AWS::IAM::InstanceProfile (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html), // AWS::IAM::Policy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html), // AWS::IAM::Role (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html), // AWS::IAM::User (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html), // and AWS::IAM::UserToGroupAddition (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html). // If your stack template contains these resources, we recommend that you review // all permissions associated with them and edit their permissions if necessary. // // If you have IAM resources, you can specify either capability. If you have // IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM. If // you don't specify this parameter, this action returns an InsufficientCapabilities // error. // // For more information, see Acknowledging IAM Resources in AWS CloudFormation // Templates (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities). Capabilities []*string `type:"list"` // The name of the change set. The name must be unique among all change sets // that are associated with the specified stack. // // A change set name can contain only alphanumeric, case sensitive characters // and hyphens. It must start with an alphabetic character and cannot exceed // 128 characters. // // ChangeSetName is a required field ChangeSetName *string `min:"1" type:"string" required:"true"` // A unique identifier for this CreateChangeSet request. Specify this token // if you plan to retry requests so that AWS CloudFormation knows that you're // not attempting to create another change set with the same name. You might // retry CreateChangeSet requests to ensure that AWS CloudFormation successfully // received them. ClientToken *string `min:"1" type:"string"` // A description to help you identify this change set. Description *string `min:"1" type:"string"` // The Amazon Resource Names (ARNs) of Amazon Simple Notification Service (Amazon // SNS) topics that AWS CloudFormation associates with the stack. To remove // all associated notification topics, specify an empty list. NotificationARNs []*string `type:"list"` // A list of Parameter structures that specify input parameters for the change // set. For more information, see the Parameter (http://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_Parameter.html) // data type. Parameters []*Parameter `type:"list"` // The template resource types that you have permissions to work with if you // execute this change set, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance. // // If the list of resource types doesn't include a resource type that you're // updating, the stack update fails. By default, AWS CloudFormation grants permissions // to all resource types. AWS Identity and Access Management (IAM) uses this // parameter for condition keys in IAM policies for AWS CloudFormation. For // more information, see Controlling Access with AWS Identity and Access Management // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html) // in the AWS CloudFormation User Guide. ResourceTypes []*string `type:"list"` // The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) // role that AWS CloudFormation assumes when executing the change set. AWS CloudFormation // uses the role's credentials to make calls on your behalf. AWS CloudFormation // always uses this role for all future operations on the stack. As long as // users have permission to operate on the stack, AWS CloudFormation uses this // role even if the users don't have permission to pass it. Ensure that the // role grants least privilege. // // If you don't specify a value, AWS CloudFormation uses the role that was previously // associated with the stack. If no role is available, AWS CloudFormation uses // a temporary session that is generated from your user credentials. RoleARN *string `min:"20" type:"string"` // The name or the unique ID of the stack for which you are creating a change // set. AWS CloudFormation generates the change set by comparing this stack's // information with the information that you submit, such as a modified template // or different parameter input values. // // StackName is a required field StackName *string `min:"1" type:"string" required:"true"` // Key-value pairs to associate with this stack. AWS CloudFormation also propagates // these tags to resources in the stack. You can specify a maximum of 10 tags. Tags []*Tag `type:"list"` // A structure that contains the body of the revised template, with a minimum // length of 1 byte and a maximum length of 51,200 bytes. AWS CloudFormation // generates the change set by comparing this template with the template of // the stack that you specified. // // Conditional: You must specify only TemplateBody or TemplateURL. TemplateBody *string `min:"1" type:"string"` // The location of the file that contains the revised template. The URL must // point to a template (max size: 460,800 bytes) that is located in an S3 bucket. // AWS CloudFormation generates the change set by comparing this template with // the stack that you specified. // // Conditional: You must specify only TemplateBody or TemplateURL. TemplateURL *string `min:"1" type:"string"` // Whether to reuse the template that is associated with the stack to create // the change set. UsePreviousTemplate *bool `type:"boolean"` } // String returns the string representation func (s CreateChangeSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateChangeSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateChangeSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateChangeSetInput"} if s.ChangeSetName == nil { invalidParams.Add(request.NewErrParamRequired("ChangeSetName")) } if s.ChangeSetName != nil && len(*s.ChangeSetName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeSetName", 1)) } if s.ClientToken != nil && len(*s.ClientToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) } if s.Description != nil && len(*s.Description) < 1 { invalidParams.Add(request.NewErrParamMinLen("Description", 1)) } if s.RoleARN != nil && len(*s.RoleARN) < 20 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 20)) } if s.StackName == nil { invalidParams.Add(request.NewErrParamRequired("StackName")) } if s.StackName != nil && len(*s.StackName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StackName", 1)) } if s.TemplateBody != nil && len(*s.TemplateBody) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateBody", 1)) } if s.TemplateURL != nil && len(*s.TemplateURL) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateURL", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the CreateChangeSet action. type CreateChangeSetOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the change set. Id *string `min:"1" type:"string"` } // String returns the string representation func (s CreateChangeSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateChangeSetOutput) GoString() string { return s.String() } // The input for CreateStack action. type CreateStackInput struct { _ struct{} `type:"structure"` // A list of values that you must specify before AWS CloudFormation can create // certain stacks. Some stack templates might include resources that can affect // permissions in your AWS account, for example, by creating new AWS Identity // and Access Management (IAM) users. For those stacks, you must explicitly // acknowledge their capabilities by specifying this parameter. // // The only valid values are CAPABILITY_IAM and CAPABILITY_NAMED_IAM. The following // resources require you to specify this parameter: AWS::IAM::AccessKey (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html), // AWS::IAM::Group (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html), // AWS::IAM::InstanceProfile (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html), // AWS::IAM::Policy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html), // AWS::IAM::Role (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html), // AWS::IAM::User (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html), // and AWS::IAM::UserToGroupAddition (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html). // If your stack template contains these resources, we recommend that you review // all permissions associated with them and edit their permissions if necessary. // // If you have IAM resources, you can specify either capability. If you have // IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM. If // you don't specify this parameter, this action returns an InsufficientCapabilities // error. // // For more information, see Acknowledging IAM Resources in AWS CloudFormation // Templates (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities). Capabilities []*string `type:"list"` // Set to true to disable rollback of the stack if stack creation failed. You // can specify either DisableRollback or OnFailure, but not both. // // Default: false DisableRollback *bool `type:"boolean"` // The Simple Notification Service (SNS) topic ARNs to publish stack related // events. You can find your SNS topic ARNs using the SNS console (https://console.aws.amazon.com/sns) // or your Command Line Interface (CLI). NotificationARNs []*string `type:"list"` // Determines what action will be taken if stack creation fails. This must be // one of: DO_NOTHING, ROLLBACK, or DELETE. You can specify either OnFailure // or DisableRollback, but not both. // // Default: ROLLBACK OnFailure *string `type:"string" enum:"OnFailure"` // A list of Parameter structures that specify input parameters for the stack. // For more information, see the Parameter (http://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_Parameter.html) // data type. Parameters []*Parameter `type:"list"` // The template resource types that you have permissions to work with for this // create stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance. // Use the following syntax to describe template resource types: AWS::* (for // all AWS resource), Custom::* (for all custom resources), Custom::logical_ID // (for a specific custom resource), AWS::service_name::* (for all resources // of a particular AWS service), and AWS::service_name::resource_logical_ID // (for a specific AWS resource). // // If the list of resource types doesn't include a resource that you're creating, // the stack creation fails. By default, AWS CloudFormation grants permissions // to all resource types. AWS Identity and Access Management (IAM) uses this // parameter for AWS CloudFormation-specific condition keys in IAM policies. // For more information, see Controlling Access with AWS Identity and Access // Management (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html). ResourceTypes []*string `type:"list"` // The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) // role that AWS CloudFormation assumes to create the stack. AWS CloudFormation // uses the role's credentials to make calls on your behalf. AWS CloudFormation // always uses this role for all future operations on the stack. As long as // users have permission to operate on the stack, AWS CloudFormation uses this // role even if the users don't have permission to pass it. Ensure that the // role grants least privilege. // // If you don't specify a value, AWS CloudFormation uses the role that was previously // associated with the stack. If no role is available, AWS CloudFormation uses // a temporary session that is generated from your user credentials. RoleARN *string `min:"20" type:"string"` // The name that is associated with the stack. The name must be unique in the // region in which you are creating the stack. // // A stack name can contain only alphanumeric characters (case sensitive) and // hyphens. It must start with an alphabetic character and cannot be longer // than 128 characters. // // StackName is a required field StackName *string `type:"string" required:"true"` // Structure containing the stack policy body. For more information, go to // Prevent Updates to Stack Resources (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) // in the AWS CloudFormation User Guide. You can specify either the StackPolicyBody // or the StackPolicyURL parameter, but not both. StackPolicyBody *string `min:"1" type:"string"` // Location of a file containing the stack policy. The URL must point to a policy // (maximum size: 16 KB) located in an S3 bucket in the same region as the stack. // You can specify either the StackPolicyBody or the StackPolicyURL parameter, // but not both. StackPolicyURL *string `min:"1" type:"string"` // Key-value pairs to associate with this stack. AWS CloudFormation also propagates // these tags to the resources created in the stack. A maximum number of 10 // tags can be specified. Tags []*Tag `type:"list"` // Structure containing the template body with a minimum length of 1 byte and // a maximum length of 51,200 bytes. For more information, go to Template Anatomy // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) // in the AWS CloudFormation User Guide. // // Conditional: You must specify either the TemplateBody or the TemplateURL // parameter, but not both. TemplateBody *string `min:"1" type:"string"` // Location of file containing the template body. The URL must point to a template // (max size: 460,800 bytes) that is located in an Amazon S3 bucket. For more // information, go to the Template Anatomy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) // in the AWS CloudFormation User Guide. // // Conditional: You must specify either the TemplateBody or the TemplateURL // parameter, but not both. TemplateURL *string `min:"1" type:"string"` // The amount of time that can pass before the stack status becomes CREATE_FAILED; // if DisableRollback is not set or is set to false, the stack will be rolled // back. TimeoutInMinutes *int64 `min:"1" type:"integer"` } // String returns the string representation func (s CreateStackInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateStackInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateStackInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateStackInput"} if s.RoleARN != nil && len(*s.RoleARN) < 20 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 20)) } if s.StackName == nil { invalidParams.Add(request.NewErrParamRequired("StackName")) } if s.StackPolicyBody != nil && len(*s.StackPolicyBody) < 1 { invalidParams.Add(request.NewErrParamMinLen("StackPolicyBody", 1)) } if s.StackPolicyURL != nil && len(*s.StackPolicyURL) < 1 { invalidParams.Add(request.NewErrParamMinLen("StackPolicyURL", 1)) } if s.TemplateBody != nil && len(*s.TemplateBody) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateBody", 1)) } if s.TemplateURL != nil && len(*s.TemplateURL) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateURL", 1)) } if s.TimeoutInMinutes != nil && *s.TimeoutInMinutes < 1 { invalidParams.Add(request.NewErrParamMinValue("TimeoutInMinutes", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for a CreateStack action. type CreateStackOutput struct { _ struct{} `type:"structure"` // Unique identifier of the stack. StackId *string `type:"string"` } // String returns the string representation func (s CreateStackOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateStackOutput) GoString() string { return s.String() } // The input for the DeleteChangeSet action. type DeleteChangeSetInput struct { _ struct{} `type:"structure"` // The name or Amazon Resource Name (ARN) of the change set that you want to // delete. // // ChangeSetName is a required field ChangeSetName *string `min:"1" type:"string" required:"true"` // If you specified the name of a change set to delete, specify the stack name // or ID (ARN) that is associated with it. StackName *string `min:"1" type:"string"` } // String returns the string representation func (s DeleteChangeSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteChangeSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteChangeSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteChangeSetInput"} if s.ChangeSetName == nil { invalidParams.Add(request.NewErrParamRequired("ChangeSetName")) } if s.ChangeSetName != nil && len(*s.ChangeSetName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeSetName", 1)) } if s.StackName != nil && len(*s.StackName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StackName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the DeleteChangeSet action. type DeleteChangeSetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteChangeSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteChangeSetOutput) GoString() string { return s.String() } // The input for DeleteStack action. type DeleteStackInput struct { _ struct{} `type:"structure"` // For stacks in the DELETE_FAILED state, a list of resource logical IDs that // are associated with the resources you want to retain. During deletion, AWS // CloudFormation deletes the stack but does not delete the retained resources. // // Retaining resources is useful when you cannot delete a resource, such as // a non-empty S3 bucket, but you want to delete the stack. RetainResources []*string `type:"list"` // The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) // role that AWS CloudFormation assumes to delete the stack. AWS CloudFormation // uses the role's credentials to make calls on your behalf. // // If you don't specify a value, AWS CloudFormation uses the role that was previously // associated with the stack. If no role is available, AWS CloudFormation uses // a temporary session that is generated from your user credentials. RoleARN *string `min:"20" type:"string"` // The name or the unique stack ID that is associated with the stack. // // StackName is a required field StackName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteStackInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteStackInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteStackInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteStackInput"} if s.RoleARN != nil && len(*s.RoleARN) < 20 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 20)) } if s.StackName == nil { invalidParams.Add(request.NewErrParamRequired("StackName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteStackOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteStackOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteStackOutput) GoString() string { return s.String() } // The input for the DescribeAccountLimits action. type DescribeAccountLimitsInput struct { _ struct{} `type:"structure"` // A string that identifies the next page of limits that you want to retrieve. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeAccountLimitsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAccountLimitsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeAccountLimitsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeAccountLimitsInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the DescribeAccountLimits action. type DescribeAccountLimitsOutput struct { _ struct{} `type:"structure"` // An account limit structure that contain a list of AWS CloudFormation account // limits and their values. AccountLimits []*AccountLimit `type:"list"` // If the output exceeds 1 MB in size, a string that identifies the next page // of limits. If no additional page exists, this value is null. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeAccountLimitsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAccountLimitsOutput) GoString() string { return s.String() } // The input for the DescribeChangeSet action. type DescribeChangeSetInput struct { _ struct{} `type:"structure"` // The name or Amazon Resource Name (ARN) of the change set that you want to // describe. // // ChangeSetName is a required field ChangeSetName *string `min:"1" type:"string" required:"true"` // A string (provided by the DescribeChangeSet response output) that identifies // the next page of information that you want to retrieve. NextToken *string `min:"1" type:"string"` // If you specified the name of a change set, specify the stack name or ID (ARN) // of the change set you want to describe. StackName *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeChangeSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeChangeSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeChangeSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeChangeSetInput"} if s.ChangeSetName == nil { invalidParams.Add(request.NewErrParamRequired("ChangeSetName")) } if s.ChangeSetName != nil && len(*s.ChangeSetName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeSetName", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.StackName != nil && len(*s.StackName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StackName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the DescribeChangeSet action. type DescribeChangeSetOutput struct { _ struct{} `type:"structure"` // If you execute the change set, the list of capabilities that were explicitly // acknowledged when the change set was created. Capabilities []*string `type:"list"` // The ARN of the change set. ChangeSetId *string `min:"1" type:"string"` // The name of the change set. ChangeSetName *string `min:"1" type:"string"` // A list of Change structures that describes the resources AWS CloudFormation // changes if you execute the change set. Changes []*Change `type:"list"` // The start time when the change set was created, in UTC. CreationTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Information about the change set. Description *string `min:"1" type:"string"` // If the change set execution status is AVAILABLE, you can execute the change // set. If you can’t execute the change set, the status indicates why. For example, // a change set might be in an UNAVAILABLE state because AWS CloudFormation // is still creating it or in an OBSOLETE state because the stack was already // updated. ExecutionStatus *string `type:"string" enum:"ExecutionStatus"` // If the output exceeds 1 MB, a string that identifies the next page of changes. // If there is no additional page, this value is null. NextToken *string `min:"1" type:"string"` // The ARNs of the Amazon Simple Notification Service (Amazon SNS) topics that // will be associated with the stack if you execute the change set. NotificationARNs []*string `type:"list"` // A list of Parameter structures that describes the input parameters and their // values used to create the change set. For more information, see the Parameter // (http://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_Parameter.html) // data type. Parameters []*Parameter `type:"list"` // The ARN of the stack that is associated with the change set. StackId *string `type:"string"` // The name of the stack that is associated with the change set. StackName *string `type:"string"` // The current status of the change set, such as CREATE_IN_PROGRESS, CREATE_COMPLETE, // or FAILED. Status *string `type:"string" enum:"ChangeSetStatus"` // A description of the change set's status. For example, if your attempt to // create a change set failed, AWS CloudFormation shows the error message. StatusReason *string `type:"string"` // If you execute the change set, the tags that will be associated with the // stack. Tags []*Tag `type:"list"` } // String returns the string representation func (s DescribeChangeSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeChangeSetOutput) GoString() string { return s.String() } // The input for DescribeStackEvents action. type DescribeStackEventsInput struct { _ struct{} `type:"structure"` // A string that identifies the next page of events that you want to retrieve. NextToken *string `min:"1" type:"string"` // The name or the unique stack ID that is associated with the stack, which // are not always interchangeable: // // * Running stacks: You can specify either the stack's name or its unique // stack ID. // // * Deleted stacks: You must specify the unique stack ID. // // Default: There is no default value. StackName *string `type:"string"` } // String returns the string representation func (s DescribeStackEventsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStackEventsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeStackEventsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeStackEventsInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for a DescribeStackEvents action. type DescribeStackEventsOutput struct { _ struct{} `type:"structure"` // If the output exceeds 1 MB in size, a string that identifies the next page // of events. If no additional page exists, this value is null. NextToken *string `min:"1" type:"string"` // A list of StackEvents structures. StackEvents []*StackEvent `type:"list"` } // String returns the string representation func (s DescribeStackEventsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStackEventsOutput) GoString() string { return s.String() } // The input for DescribeStackResource action. type DescribeStackResourceInput struct { _ struct{} `type:"structure"` // The logical name of the resource as specified in the template. // // Default: There is no default value. // // LogicalResourceId is a required field LogicalResourceId *string `type:"string" required:"true"` // The name or the unique stack ID that is associated with the stack, which // are not always interchangeable: // // * Running stacks: You can specify either the stack's name or its unique // stack ID. // // * Deleted stacks: You must specify the unique stack ID. // // Default: There is no default value. // // StackName is a required field StackName *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeStackResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStackResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeStackResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeStackResourceInput"} if s.LogicalResourceId == nil { invalidParams.Add(request.NewErrParamRequired("LogicalResourceId")) } if s.StackName == nil { invalidParams.Add(request.NewErrParamRequired("StackName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for a DescribeStackResource action. type DescribeStackResourceOutput struct { _ struct{} `type:"structure"` // A StackResourceDetail structure containing the description of the specified // resource in the specified stack. StackResourceDetail *StackResourceDetail `type:"structure"` } // String returns the string representation func (s DescribeStackResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStackResourceOutput) GoString() string { return s.String() } // The input for DescribeStackResources action. type DescribeStackResourcesInput struct { _ struct{} `type:"structure"` // The logical name of the resource as specified in the template. // // Default: There is no default value. LogicalResourceId *string `type:"string"` // The name or unique identifier that corresponds to a physical instance ID // of a resource supported by AWS CloudFormation. // // For example, for an Amazon Elastic Compute Cloud (EC2) instance, PhysicalResourceId // corresponds to the InstanceId. You can pass the EC2 InstanceId to DescribeStackResources // to find which stack the instance belongs to and what other resources are // part of the stack. // // Required: Conditional. If you do not specify PhysicalResourceId, you must // specify StackName. // // Default: There is no default value. PhysicalResourceId *string `type:"string"` // The name or the unique stack ID that is associated with the stack, which // are not always interchangeable: // // * Running stacks: You can specify either the stack's name or its unique // stack ID. // // * Deleted stacks: You must specify the unique stack ID. // // Default: There is no default value. // // Required: Conditional. If you do not specify StackName, you must specify // PhysicalResourceId. StackName *string `type:"string"` } // String returns the string representation func (s DescribeStackResourcesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStackResourcesInput) GoString() string { return s.String() } // The output for a DescribeStackResources action. type DescribeStackResourcesOutput struct { _ struct{} `type:"structure"` // A list of StackResource structures. StackResources []*StackResource `type:"list"` } // String returns the string representation func (s DescribeStackResourcesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStackResourcesOutput) GoString() string { return s.String() } // The input for DescribeStacks action. type DescribeStacksInput struct { _ struct{} `type:"structure"` // A string that identifies the next page of stacks that you want to retrieve. NextToken *string `min:"1" type:"string"` // The name or the unique stack ID that is associated with the stack, which // are not always interchangeable: // // * Running stacks: You can specify either the stack's name or its unique // stack ID. // // * Deleted stacks: You must specify the unique stack ID. // // Default: There is no default value. StackName *string `type:"string"` } // String returns the string representation func (s DescribeStacksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStacksInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeStacksInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeStacksInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for a DescribeStacks action. type DescribeStacksOutput struct { _ struct{} `type:"structure"` // If the output exceeds 1 MB in size, a string that identifies the next page // of stacks. If no additional page exists, this value is null. NextToken *string `min:"1" type:"string"` // A list of stack structures. Stacks []*Stack `type:"list"` } // String returns the string representation func (s DescribeStacksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStacksOutput) GoString() string { return s.String() } // The input for an EstimateTemplateCost action. type EstimateTemplateCostInput struct { _ struct{} `type:"structure"` // A list of Parameter structures that specify input parameters. Parameters []*Parameter `type:"list"` // Structure containing the template body with a minimum length of 1 byte and // a maximum length of 51,200 bytes. (For more information, go to Template Anatomy // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) // in the AWS CloudFormation User Guide.) // // Conditional: You must pass TemplateBody or TemplateURL. If both are passed, // only TemplateBody is used. TemplateBody *string `min:"1" type:"string"` // Location of file containing the template body. The URL must point to a template // that is located in an Amazon S3 bucket. For more information, go to Template // Anatomy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) // in the AWS CloudFormation User Guide. // // Conditional: You must pass TemplateURL or TemplateBody. If both are passed, // only TemplateBody is used. TemplateURL *string `min:"1" type:"string"` } // String returns the string representation func (s EstimateTemplateCostInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EstimateTemplateCostInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EstimateTemplateCostInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EstimateTemplateCostInput"} if s.TemplateBody != nil && len(*s.TemplateBody) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateBody", 1)) } if s.TemplateURL != nil && len(*s.TemplateURL) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateURL", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for a EstimateTemplateCost action. type EstimateTemplateCostOutput struct { _ struct{} `type:"structure"` // An AWS Simple Monthly Calculator URL with a query string that describes the // resources required to run the template. Url *string `type:"string"` } // String returns the string representation func (s EstimateTemplateCostOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EstimateTemplateCostOutput) GoString() string { return s.String() } // The input for the ExecuteChangeSet action. type ExecuteChangeSetInput struct { _ struct{} `type:"structure"` // The name or ARN of the change set that you want use to update the specified // stack. // // ChangeSetName is a required field ChangeSetName *string `min:"1" type:"string" required:"true"` // If you specified the name of a change set, specify the stack name or ID (ARN) // that is associated with the change set you want to execute. StackName *string `min:"1" type:"string"` } // String returns the string representation func (s ExecuteChangeSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExecuteChangeSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ExecuteChangeSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ExecuteChangeSetInput"} if s.ChangeSetName == nil { invalidParams.Add(request.NewErrParamRequired("ChangeSetName")) } if s.ChangeSetName != nil && len(*s.ChangeSetName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeSetName", 1)) } if s.StackName != nil && len(*s.StackName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StackName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the ExecuteChangeSet action. type ExecuteChangeSetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ExecuteChangeSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExecuteChangeSetOutput) GoString() string { return s.String() } // The input for the GetStackPolicy action. type GetStackPolicyInput struct { _ struct{} `type:"structure"` // The name or unique stack ID that is associated with the stack whose policy // you want to get. // // StackName is a required field StackName *string `type:"string" required:"true"` } // String returns the string representation func (s GetStackPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetStackPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetStackPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetStackPolicyInput"} if s.StackName == nil { invalidParams.Add(request.NewErrParamRequired("StackName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the GetStackPolicy action. type GetStackPolicyOutput struct { _ struct{} `type:"structure"` // Structure containing the stack policy body. (For more information, go to // Prevent Updates to Stack Resources (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) // in the AWS CloudFormation User Guide.) StackPolicyBody *string `min:"1" type:"string"` } // String returns the string representation func (s GetStackPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetStackPolicyOutput) GoString() string { return s.String() } // The input for a GetTemplate action. type GetTemplateInput struct { _ struct{} `type:"structure"` // The name or the unique stack ID that is associated with the stack, which // are not always interchangeable: // // * Running stacks: You can specify either the stack's name or its unique // stack ID. // // * Deleted stacks: You must specify the unique stack ID. // // Default: There is no default value. // // StackName is a required field StackName *string `type:"string" required:"true"` } // String returns the string representation func (s GetTemplateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTemplateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetTemplateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetTemplateInput"} if s.StackName == nil { invalidParams.Add(request.NewErrParamRequired("StackName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for GetTemplate action. type GetTemplateOutput struct { _ struct{} `type:"structure"` // Structure containing the template body. (For more information, go to Template // Anatomy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) // in the AWS CloudFormation User Guide.) // // AWS CloudFormation returns the same template that was used when the stack // was created. TemplateBody *string `min:"1" type:"string"` } // String returns the string representation func (s GetTemplateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTemplateOutput) GoString() string { return s.String() } // The input for the GetTemplateSummary action. type GetTemplateSummaryInput struct { _ struct{} `type:"structure"` // The name or the stack ID that is associated with the stack, which are not // always interchangeable. For running stacks, you can specify either the stack's // name or its unique stack ID. For deleted stack, you must specify the unique // stack ID. // // Conditional: You must specify only one of the following parameters: StackName, // TemplateBody, or TemplateURL. StackName *string `min:"1" type:"string"` // Structure containing the template body with a minimum length of 1 byte and // a maximum length of 51,200 bytes. For more information about templates, see // Template Anatomy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) // in the AWS CloudFormation User Guide. // // Conditional: You must specify only one of the following parameters: StackName, // TemplateBody, or TemplateURL. TemplateBody *string `min:"1" type:"string"` // Location of file containing the template body. The URL must point to a template // (max size: 460,800 bytes) that is located in an Amazon S3 bucket. For more // information about templates, see Template Anatomy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) // in the AWS CloudFormation User Guide. // // Conditional: You must specify only one of the following parameters: StackName, // TemplateBody, or TemplateURL. TemplateURL *string `min:"1" type:"string"` } // String returns the string representation func (s GetTemplateSummaryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTemplateSummaryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetTemplateSummaryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetTemplateSummaryInput"} if s.StackName != nil && len(*s.StackName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StackName", 1)) } if s.TemplateBody != nil && len(*s.TemplateBody) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateBody", 1)) } if s.TemplateURL != nil && len(*s.TemplateURL) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateURL", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the GetTemplateSummary action. type GetTemplateSummaryOutput struct { _ struct{} `type:"structure"` // The capabilities found within the template. If your template contains IAM // resources, you must specify the CAPABILITY_IAM or CAPABILITY_NAMED_IAM value // for this parameter when you use the CreateStack or UpdateStack actions with // your template; otherwise, those actions return an InsufficientCapabilities // error. // // For more information, see Acknowledging IAM Resources in AWS CloudFormation // Templates (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities). Capabilities []*string `type:"list"` // The list of resources that generated the values in the Capabilities response // element. CapabilitiesReason *string `type:"string"` // The value that is defined in the Description property of the template. Description *string `min:"1" type:"string"` // The value that is defined for the Metadata property of the template. Metadata *string `type:"string"` // A list of parameter declarations that describe various properties for each // parameter. Parameters []*ParameterDeclaration `type:"list"` // A list of all the template resource types that are defined in the template, // such as AWS::EC2::Instance, AWS::Dynamo::Table, and Custom::MyCustomInstance. ResourceTypes []*string `type:"list"` // The AWS template format version, which identifies the capabilities of the // template. Version *string `type:"string"` } // String returns the string representation func (s GetTemplateSummaryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTemplateSummaryOutput) GoString() string { return s.String() } // The input for the ListChangeSets action. type ListChangeSetsInput struct { _ struct{} `type:"structure"` // A string (provided by the ListChangeSets response output) that identifies // the next page of change sets that you want to retrieve. NextToken *string `min:"1" type:"string"` // The name or the Amazon Resource Name (ARN) of the stack for which you want // to list change sets. // // StackName is a required field StackName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListChangeSetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListChangeSetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListChangeSetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListChangeSetsInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.StackName == nil { invalidParams.Add(request.NewErrParamRequired("StackName")) } if s.StackName != nil && len(*s.StackName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StackName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the ListChangeSets action. type ListChangeSetsOutput struct { _ struct{} `type:"structure"` // If the output exceeds 1 MB, a string that identifies the next page of change // sets. If there is no additional page, this value is null. NextToken *string `min:"1" type:"string"` // A list of ChangeSetSummary structures that provides the ID and status of // each change set for the specified stack. Summaries []*ChangeSetSummary `type:"list"` } // String returns the string representation func (s ListChangeSetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListChangeSetsOutput) GoString() string { return s.String() } // The input for the ListStackResource action. type ListStackResourcesInput struct { _ struct{} `type:"structure"` // A string that identifies the next page of stack resources that you want to // retrieve. NextToken *string `min:"1" type:"string"` // The name or the unique stack ID that is associated with the stack, which // are not always interchangeable: // // * Running stacks: You can specify either the stack's name or its unique // stack ID. // // * Deleted stacks: You must specify the unique stack ID. // // Default: There is no default value. // // StackName is a required field StackName *string `type:"string" required:"true"` } // String returns the string representation func (s ListStackResourcesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListStackResourcesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListStackResourcesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListStackResourcesInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.StackName == nil { invalidParams.Add(request.NewErrParamRequired("StackName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for a ListStackResources action. type ListStackResourcesOutput struct { _ struct{} `type:"structure"` // If the output exceeds 1 MB, a string that identifies the next page of stack // resources. If no additional page exists, this value is null. NextToken *string `min:"1" type:"string"` // A list of StackResourceSummary structures. StackResourceSummaries []*StackResourceSummary `type:"list"` } // String returns the string representation func (s ListStackResourcesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListStackResourcesOutput) GoString() string { return s.String() } // The input for ListStacks action. type ListStacksInput struct { _ struct{} `type:"structure"` // A string that identifies the next page of stacks that you want to retrieve. NextToken *string `min:"1" type:"string"` // Stack status to use as a filter. Specify one or more stack status codes to // list only stacks with the specified status codes. For a complete list of // stack status codes, see the StackStatus parameter of the Stack data type. StackStatusFilter []*string `type:"list"` } // String returns the string representation func (s ListStacksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListStacksInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListStacksInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListStacksInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for ListStacks action. type ListStacksOutput struct { _ struct{} `type:"structure"` // If the output exceeds 1 MB in size, a string that identifies the next page // of stacks. If no additional page exists, this value is null. NextToken *string `min:"1" type:"string"` // A list of StackSummary structures containing information about the specified // stacks. StackSummaries []*StackSummary `type:"list"` } // String returns the string representation func (s ListStacksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListStacksOutput) GoString() string { return s.String() } // The Output data type. type Output struct { _ struct{} `type:"structure"` // User defined description associated with the output. Description *string `min:"1" type:"string"` // The key associated with the output. OutputKey *string `type:"string"` // The value associated with the output. OutputValue *string `type:"string"` } // String returns the string representation func (s Output) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Output) GoString() string { return s.String() } // The Parameter data type. type Parameter struct { _ struct{} `type:"structure"` // The key associated with the parameter. If you don't specify a key and value // for a particular parameter, AWS CloudFormation uses the default value that // is specified in your template. ParameterKey *string `type:"string"` // The value associated with the parameter. ParameterValue *string `type:"string"` // During a stack update, use the existing parameter value that the stack is // using for a given parameter key. If you specify true, do not specify a parameter // value. UsePreviousValue *bool `type:"boolean"` } // String returns the string representation func (s Parameter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Parameter) GoString() string { return s.String() } // A set of criteria that AWS CloudFormation uses to validate parameter values. // Although other constraints might be defined in the stack template, AWS CloudFormation // returns only the AllowedValues property. type ParameterConstraints struct { _ struct{} `type:"structure"` // A list of values that are permitted for a parameter. AllowedValues []*string `type:"list"` } // String returns the string representation func (s ParameterConstraints) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ParameterConstraints) GoString() string { return s.String() } // The ParameterDeclaration data type. type ParameterDeclaration struct { _ struct{} `type:"structure"` // The default value of the parameter. DefaultValue *string `type:"string"` // The description that is associate with the parameter. Description *string `min:"1" type:"string"` // Flag that indicates whether the parameter value is shown as plain text in // logs and in the AWS Management Console. NoEcho *bool `type:"boolean"` // The criteria that AWS CloudFormation uses to validate parameter values. ParameterConstraints *ParameterConstraints `type:"structure"` // The name that is associated with the parameter. ParameterKey *string `type:"string"` // The type of parameter. ParameterType *string `type:"string"` } // String returns the string representation func (s ParameterDeclaration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ParameterDeclaration) GoString() string { return s.String() } // The ResourceChange structure describes the resource and the action that AWS // CloudFormation will perform on it if you execute this change set. type ResourceChange struct { _ struct{} `type:"structure"` // The action that AWS CloudFormation takes on the resource, such as Add (adds // a new resource), Modify (changes a resource), or Remove (deletes a resource). Action *string `type:"string" enum:"ChangeAction"` // For the Modify action, a list of ResourceChangeDetail structures that describes // the changes that AWS CloudFormation will make to the resource. Details []*ResourceChangeDetail `type:"list"` // The resource's logical ID, which is defined in the stack's template. LogicalResourceId *string `type:"string"` // The resource's physical ID (resource name). Resources that you are adding // don't have physical IDs because they haven't been created. PhysicalResourceId *string `type:"string"` // For the Modify action, indicates whether AWS CloudFormation will replace // the resource by creating a new one and deleting the old one. This value depends // on the value of the RequiresRecreation property in the ResourceTargetDefinition // structure. For example, if the RequiresRecreation field is Always and the // Evaluation field is Static, Replacement is True. If the RequiresRecreation // field is Always and the Evaluation field is Dynamic, Replacement is Conditionally. // // If you have multiple changes with different RequiresRecreation values, the // Replacement value depends on the change with the most impact. A RequiresRecreation // value of Always has the most impact, followed by Conditionally, and then // Never. Replacement *string `type:"string" enum:"Replacement"` // The type of AWS CloudFormation resource, such as AWS::S3::Bucket. ResourceType *string `min:"1" type:"string"` // For the Modify action, indicates which resource attribute is triggering this // update, such as a change in the resource attribute's Metadata, Properties, // or Tags. Scope []*string `type:"list"` } // String returns the string representation func (s ResourceChange) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResourceChange) GoString() string { return s.String() } // For a resource with Modify as the action, the ResourceChange structure describes // the changes AWS CloudFormation will make to that resource. type ResourceChangeDetail struct { _ struct{} `type:"structure"` // The identity of the entity that triggered this change. This entity is a member // of the group that is specified by the ChangeSource field. For example, if // you modified the value of the KeyPairName parameter, the CausingEntity is // the name of the parameter (KeyPairName). // // If the ChangeSource value is DirectModification, no value is given for CausingEntity. CausingEntity *string `type:"string"` // The group to which the CausingEntity value belongs. There are five entity // groups: // // * ResourceReference entities are Ref intrinsic functions that refer to // resources in the template, such as { "Ref" : "MyEC2InstanceResource" }. // // * ParameterReference entities are Ref intrinsic functions that get template // parameter values, such as { "Ref" : "MyPasswordParameter" }. // // * ResourceAttribute entities are Fn::GetAtt intrinsic functions that get // resource attribute values, such as { "Fn::GetAtt" : [ "MyEC2InstanceResource", // "PublicDnsName" ] }. // // * DirectModification entities are changes that are made directly to the // template. // // * Automatic entities are AWS::CloudFormation::Stack resource types, which // are also known as nested stacks. If you made no changes to the AWS::CloudFormation::Stack // resource, AWS CloudFormation sets the ChangeSource to Automatic because // the nested stack's template might have changed. Changes to a nested stack's // template aren't visible to AWS CloudFormation until you run an update // on the parent stack. ChangeSource *string `type:"string" enum:"ChangeSource"` // Indicates whether AWS CloudFormation can determine the target value, and // whether the target value will change before you execute a change set. // // For Static evaluations, AWS CloudFormation can determine that the target // value will change, and its value. For example, if you directly modify the // InstanceType property of an EC2 instance, AWS CloudFormation knows that this // property value will change, and its value, so this is a Static evaluation. // // For Dynamic evaluations, cannot determine the target value because it depends // on the result of an intrinsic function, such as a Ref or Fn::GetAtt intrinsic // function, when the stack is updated. For example, if your template includes // a reference to a resource that is conditionally recreated, the value of the // reference (the physical ID of the resource) might change, depending on if // the resource is recreated. If the resource is recreated, it will have a new // physical ID, so all references to that resource will also be updated. Evaluation *string `type:"string" enum:"EvaluationType"` // A ResourceTargetDefinition structure that describes the field that AWS CloudFormation // will change and whether the resource will be recreated. Target *ResourceTargetDefinition `type:"structure"` } // String returns the string representation func (s ResourceChangeDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResourceChangeDetail) GoString() string { return s.String() } // The field that AWS CloudFormation will change, such as the name of a resource's // property, and whether the resource will be recreated. type ResourceTargetDefinition struct { _ struct{} `type:"structure"` // Indicates which resource attribute is triggering this update, such as a change // in the resource attribute's Metadata, Properties, or Tags. Attribute *string `type:"string" enum:"ResourceAttribute"` // If the Attribute value is Properties, the name of the property. For all other // attributes, the value is null. Name *string `type:"string"` // If the Attribute value is Properties, indicates whether a change to this // property causes the resource to be recreated. The value can be Never, Always, // or Conditionally. To determine the conditions for a Conditionally recreation, // see the update behavior for that property (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html) // in the AWS CloudFormation User Guide. RequiresRecreation *string `type:"string" enum:"RequiresRecreation"` } // String returns the string representation func (s ResourceTargetDefinition) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResourceTargetDefinition) GoString() string { return s.String() } // The input for the SetStackPolicy action. type SetStackPolicyInput struct { _ struct{} `type:"structure"` // The name or unique stack ID that you want to associate a policy with. // // StackName is a required field StackName *string `type:"string" required:"true"` // Structure containing the stack policy body. For more information, go to // Prevent Updates to Stack Resources (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html) // in the AWS CloudFormation User Guide. You can specify either the StackPolicyBody // or the StackPolicyURL parameter, but not both. StackPolicyBody *string `min:"1" type:"string"` // Location of a file containing the stack policy. The URL must point to a policy // (maximum size: 16 KB) located in an S3 bucket in the same region as the stack. // You can specify either the StackPolicyBody or the StackPolicyURL parameter, // but not both. StackPolicyURL *string `min:"1" type:"string"` } // String returns the string representation func (s SetStackPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetStackPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetStackPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetStackPolicyInput"} if s.StackName == nil { invalidParams.Add(request.NewErrParamRequired("StackName")) } if s.StackPolicyBody != nil && len(*s.StackPolicyBody) < 1 { invalidParams.Add(request.NewErrParamMinLen("StackPolicyBody", 1)) } if s.StackPolicyURL != nil && len(*s.StackPolicyURL) < 1 { invalidParams.Add(request.NewErrParamMinLen("StackPolicyURL", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetStackPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetStackPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetStackPolicyOutput) GoString() string { return s.String() } // The input for the SignalResource action. type SignalResourceInput struct { _ struct{} `type:"structure"` // The logical ID of the resource that you want to signal. The logical ID is // the name of the resource that given in the template. // // LogicalResourceId is a required field LogicalResourceId *string `type:"string" required:"true"` // The stack name or unique stack ID that includes the resource that you want // to signal. // // StackName is a required field StackName *string `min:"1" type:"string" required:"true"` // The status of the signal, which is either success or failure. A failure signal // causes AWS CloudFormation to immediately fail the stack creation or update. // // Status is a required field Status *string `type:"string" required:"true" enum:"ResourceSignalStatus"` // A unique ID of the signal. When you signal Amazon EC2 instances or Auto Scaling // groups, specify the instance ID that you are signaling as the unique ID. // If you send multiple signals to a single resource (such as signaling a wait // condition), each signal requires a different unique ID. // // UniqueId is a required field UniqueId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s SignalResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SignalResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SignalResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SignalResourceInput"} if s.LogicalResourceId == nil { invalidParams.Add(request.NewErrParamRequired("LogicalResourceId")) } if s.StackName == nil { invalidParams.Add(request.NewErrParamRequired("StackName")) } if s.StackName != nil && len(*s.StackName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StackName", 1)) } if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if s.UniqueId == nil { invalidParams.Add(request.NewErrParamRequired("UniqueId")) } if s.UniqueId != nil && len(*s.UniqueId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UniqueId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SignalResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SignalResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SignalResourceOutput) GoString() string { return s.String() } // The Stack data type. type Stack struct { _ struct{} `type:"structure"` // The capabilities allowed in the stack. Capabilities []*string `type:"list"` // The time at which the stack was created. // // CreationTime is a required field CreationTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // A user-defined description associated with the stack. Description *string `min:"1" type:"string"` // Boolean to enable or disable rollback on stack creation failures: // // * true: disable rollback // // * false: enable rollback DisableRollback *bool `type:"boolean"` // The time the stack was last updated. This field will only be returned if // the stack has been updated at least once. LastUpdatedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // SNS topic ARNs to which stack related events are published. NotificationARNs []*string `type:"list"` // A list of output structures. Outputs []*Output `type:"list"` // A list of Parameter structures. Parameters []*Parameter `type:"list"` // The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) // role that is associated with the stack. During a stack operation, AWS CloudFormation // uses this role's credentials to make calls on your behalf. RoleARN *string `min:"20" type:"string"` // Unique identifier of the stack. StackId *string `type:"string"` // The name associated with the stack. // // StackName is a required field StackName *string `type:"string" required:"true"` // Current status of the stack. // // StackStatus is a required field StackStatus *string `type:"string" required:"true" enum:"StackStatus"` // Success/failure message associated with the stack status. StackStatusReason *string `type:"string"` // A list of Tags that specify information about the stack. Tags []*Tag `type:"list"` // The amount of time within which stack creation should complete. TimeoutInMinutes *int64 `min:"1" type:"integer"` } // String returns the string representation func (s Stack) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Stack) GoString() string { return s.String() } // The StackEvent data type. type StackEvent struct { _ struct{} `type:"structure"` // The unique ID of this event. // // EventId is a required field EventId *string `type:"string" required:"true"` // The logical name of the resource specified in the template. LogicalResourceId *string `type:"string"` // The name or unique identifier associated with the physical instance of the // resource. PhysicalResourceId *string `type:"string"` // BLOB of the properties used to create the resource. ResourceProperties *string `type:"string"` // Current status of the resource. ResourceStatus *string `type:"string" enum:"ResourceStatus"` // Success/failure message associated with the resource. ResourceStatusReason *string `type:"string"` // Type of resource. (For more information, go to AWS Resource Types Reference // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html) // in the AWS CloudFormation User Guide.) ResourceType *string `min:"1" type:"string"` // The unique ID name of the instance of the stack. // // StackId is a required field StackId *string `type:"string" required:"true"` // The name associated with a stack. // // StackName is a required field StackName *string `type:"string" required:"true"` // Time the status was updated. // // Timestamp is a required field Timestamp *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` } // String returns the string representation func (s StackEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StackEvent) GoString() string { return s.String() } // The StackResource data type. type StackResource struct { _ struct{} `type:"structure"` // User defined description associated with the resource. Description *string `min:"1" type:"string"` // The logical name of the resource specified in the template. // // LogicalResourceId is a required field LogicalResourceId *string `type:"string" required:"true"` // The name or unique identifier that corresponds to a physical instance ID // of a resource supported by AWS CloudFormation. PhysicalResourceId *string `type:"string"` // Current status of the resource. // // ResourceStatus is a required field ResourceStatus *string `type:"string" required:"true" enum:"ResourceStatus"` // Success/failure message associated with the resource. ResourceStatusReason *string `type:"string"` // Type of resource. (For more information, go to AWS Resource Types Reference // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html) // in the AWS CloudFormation User Guide.) // // ResourceType is a required field ResourceType *string `min:"1" type:"string" required:"true"` // Unique identifier of the stack. StackId *string `type:"string"` // The name associated with the stack. StackName *string `type:"string"` // Time the status was updated. // // Timestamp is a required field Timestamp *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` } // String returns the string representation func (s StackResource) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StackResource) GoString() string { return s.String() } // Contains detailed information about the specified stack resource. type StackResourceDetail struct { _ struct{} `type:"structure"` // User defined description associated with the resource. Description *string `min:"1" type:"string"` // Time the status was updated. // // LastUpdatedTimestamp is a required field LastUpdatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The logical name of the resource specified in the template. // // LogicalResourceId is a required field LogicalResourceId *string `type:"string" required:"true"` // The content of the Metadata attribute declared for the resource. For more // information, see Metadata Attribute (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html) // in the AWS CloudFormation User Guide. Metadata *string `type:"string"` // The name or unique identifier that corresponds to a physical instance ID // of a resource supported by AWS CloudFormation. PhysicalResourceId *string `type:"string"` // Current status of the resource. // // ResourceStatus is a required field ResourceStatus *string `type:"string" required:"true" enum:"ResourceStatus"` // Success/failure message associated with the resource. ResourceStatusReason *string `type:"string"` // Type of resource. ((For more information, go to AWS Resource Types Reference // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html) // in the AWS CloudFormation User Guide.) // // ResourceType is a required field ResourceType *string `min:"1" type:"string" required:"true"` // Unique identifier of the stack. StackId *string `type:"string"` // The name associated with the stack. StackName *string `type:"string"` } // String returns the string representation func (s StackResourceDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StackResourceDetail) GoString() string { return s.String() } // Contains high-level information about the specified stack resource. type StackResourceSummary struct { _ struct{} `type:"structure"` // Time the status was updated. // // LastUpdatedTimestamp is a required field LastUpdatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The logical name of the resource specified in the template. // // LogicalResourceId is a required field LogicalResourceId *string `type:"string" required:"true"` // The name or unique identifier that corresponds to a physical instance ID // of the resource. PhysicalResourceId *string `type:"string"` // Current status of the resource. // // ResourceStatus is a required field ResourceStatus *string `type:"string" required:"true" enum:"ResourceStatus"` // Success/failure message associated with the resource. ResourceStatusReason *string `type:"string"` // Type of resource. (For more information, go to AWS Resource Types Reference // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html) // in the AWS CloudFormation User Guide.) // // ResourceType is a required field ResourceType *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s StackResourceSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StackResourceSummary) GoString() string { return s.String() } // The StackSummary Data Type type StackSummary struct { _ struct{} `type:"structure"` // The time the stack was created. // // CreationTime is a required field CreationTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The time the stack was deleted. DeletionTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The time the stack was last updated. This field will only be returned if // the stack has been updated at least once. LastUpdatedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Unique stack identifier. StackId *string `type:"string"` // The name associated with the stack. // // StackName is a required field StackName *string `type:"string" required:"true"` // The current status of the stack. // // StackStatus is a required field StackStatus *string `type:"string" required:"true" enum:"StackStatus"` // Success/Failure message associated with the stack status. StackStatusReason *string `type:"string"` // The template description of the template used to create the stack. TemplateDescription *string `type:"string"` } // String returns the string representation func (s StackSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StackSummary) GoString() string { return s.String() } // The Tag type enables you to specify a key-value pair that can be used to // store information about an AWS CloudFormation stack. type Tag struct { _ struct{} `type:"structure"` // Required. A string used to identify this tag. You can specify a maximum of // 128 characters for a tag key. Tags owned by Amazon Web Services (AWS) have // the reserved prefix: aws:. Key *string `type:"string"` // Required. A string containing the value for this tag. You can specify a maximum // of 256 characters for a tag value. Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // The TemplateParameter data type. type TemplateParameter struct { _ struct{} `type:"structure"` // The default value associated with the parameter. DefaultValue *string `type:"string"` // User defined description associated with the parameter. Description *string `min:"1" type:"string"` // Flag indicating whether the parameter should be displayed as plain text in // logs and UIs. NoEcho *bool `type:"boolean"` // The name associated with the parameter. ParameterKey *string `type:"string"` } // String returns the string representation func (s TemplateParameter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TemplateParameter) GoString() string { return s.String() } // The input for an UpdateStack action. type UpdateStackInput struct { _ struct{} `type:"structure"` // A list of values that you must specify before AWS CloudFormation can update // certain stacks. Some stack templates might include resources that can affect // permissions in your AWS account, for example, by creating new AWS Identity // and Access Management (IAM) users. For those stacks, you must explicitly // acknowledge their capabilities by specifying this parameter. // // The only valid values are CAPABILITY_IAM and CAPABILITY_NAMED_IAM. The following // resources require you to specify this parameter: AWS::IAM::AccessKey (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html), // AWS::IAM::Group (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html), // AWS::IAM::InstanceProfile (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html), // AWS::IAM::Policy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html), // AWS::IAM::Role (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html), // AWS::IAM::User (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html), // and AWS::IAM::UserToGroupAddition (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html). // If your stack template contains these resources, we recommend that you review // all permissions associated with them and edit their permissions if necessary. // // If you have IAM resources, you can specify either capability. If you have // IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM. If // you don't specify this parameter, this action returns an InsufficientCapabilities // error. // // For more information, see Acknowledging IAM Resources in AWS CloudFormation // Templates (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities). Capabilities []*string `type:"list"` // Amazon Simple Notification Service topic Amazon Resource Names (ARNs) that // AWS CloudFormation associates with the stack. Specify an empty list to remove // all notification topics. NotificationARNs []*string `type:"list"` // A list of Parameter structures that specify input parameters for the stack. // For more information, see the Parameter (http://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_Parameter.html) // data type. Parameters []*Parameter `type:"list"` // The template resource types that you have permissions to work with for this // update stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance. // // If the list of resource types doesn't include a resource that you're updating, // the stack update fails. By default, AWS CloudFormation grants permissions // to all resource types. AWS Identity and Access Management (IAM) uses this // parameter for AWS CloudFormation-specific condition keys in IAM policies. // For more information, see Controlling Access with AWS Identity and Access // Management (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html). ResourceTypes []*string `type:"list"` // The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) // role that AWS CloudFormation assumes to update the stack. AWS CloudFormation // uses the role's credentials to make calls on your behalf. AWS CloudFormation // always uses this role for all future operations on the stack. As long as // users have permission to operate on the stack, AWS CloudFormation uses this // role even if the users don't have permission to pass it. Ensure that the // role grants least privilege. // // If you don't specify a value, AWS CloudFormation uses the role that was previously // associated with the stack. If no role is available, AWS CloudFormation uses // a temporary session that is generated from your user credentials. RoleARN *string `min:"20" type:"string"` // The name or unique stack ID of the stack to update. // // StackName is a required field StackName *string `type:"string" required:"true"` // Structure containing a new stack policy body. You can specify either the // StackPolicyBody or the StackPolicyURL parameter, but not both. // // You might update the stack policy, for example, in order to protect a new // resource that you created during a stack update. If you do not specify a // stack policy, the current policy that is associated with the stack is unchanged. StackPolicyBody *string `min:"1" type:"string"` // Structure containing the temporary overriding stack policy body. You can // specify either the StackPolicyDuringUpdateBody or the StackPolicyDuringUpdateURL // parameter, but not both. // // If you want to update protected resources, specify a temporary overriding // stack policy during this update. If you do not specify a stack policy, the // current policy that is associated with the stack will be used. StackPolicyDuringUpdateBody *string `min:"1" type:"string"` // Location of a file containing the temporary overriding stack policy. The // URL must point to a policy (max size: 16KB) located in an S3 bucket in the // same region as the stack. You can specify either the StackPolicyDuringUpdateBody // or the StackPolicyDuringUpdateURL parameter, but not both. // // If you want to update protected resources, specify a temporary overriding // stack policy during this update. If you do not specify a stack policy, the // current policy that is associated with the stack will be used. StackPolicyDuringUpdateURL *string `min:"1" type:"string"` // Location of a file containing the updated stack policy. The URL must point // to a policy (max size: 16KB) located in an S3 bucket in the same region as // the stack. You can specify either the StackPolicyBody or the StackPolicyURL // parameter, but not both. // // You might update the stack policy, for example, in order to protect a new // resource that you created during a stack update. If you do not specify a // stack policy, the current policy that is associated with the stack is unchanged. StackPolicyURL *string `min:"1" type:"string"` // Key-value pairs to associate with this stack. AWS CloudFormation also propagates // these tags to supported resources in the stack. You can specify a maximum // number of 10 tags. // // If you don't specify this parameter, AWS CloudFormation doesn't modify the // stack's tags. If you specify an empty value, AWS CloudFormation removes all // associated tags. Tags []*Tag `type:"list"` // Structure containing the template body with a minimum length of 1 byte and // a maximum length of 51,200 bytes. (For more information, go to Template Anatomy // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) // in the AWS CloudFormation User Guide.) // // Conditional: You must specify either the TemplateBody or the TemplateURL // parameter, but not both. TemplateBody *string `min:"1" type:"string"` // Location of file containing the template body. The URL must point to a template // that is located in an Amazon S3 bucket. For more information, go to Template // Anatomy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) // in the AWS CloudFormation User Guide. // // Conditional: You must specify either the TemplateBody or the TemplateURL // parameter, but not both. TemplateURL *string `min:"1" type:"string"` // Reuse the existing template that is associated with the stack that you are // updating. UsePreviousTemplate *bool `type:"boolean"` } // String returns the string representation func (s UpdateStackInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateStackInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateStackInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateStackInput"} if s.RoleARN != nil && len(*s.RoleARN) < 20 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 20)) } if s.StackName == nil { invalidParams.Add(request.NewErrParamRequired("StackName")) } if s.StackPolicyBody != nil && len(*s.StackPolicyBody) < 1 { invalidParams.Add(request.NewErrParamMinLen("StackPolicyBody", 1)) } if s.StackPolicyDuringUpdateBody != nil && len(*s.StackPolicyDuringUpdateBody) < 1 { invalidParams.Add(request.NewErrParamMinLen("StackPolicyDuringUpdateBody", 1)) } if s.StackPolicyDuringUpdateURL != nil && len(*s.StackPolicyDuringUpdateURL) < 1 { invalidParams.Add(request.NewErrParamMinLen("StackPolicyDuringUpdateURL", 1)) } if s.StackPolicyURL != nil && len(*s.StackPolicyURL) < 1 { invalidParams.Add(request.NewErrParamMinLen("StackPolicyURL", 1)) } if s.TemplateBody != nil && len(*s.TemplateBody) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateBody", 1)) } if s.TemplateURL != nil && len(*s.TemplateURL) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateURL", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for an UpdateStack action. type UpdateStackOutput struct { _ struct{} `type:"structure"` // Unique identifier of the stack. StackId *string `type:"string"` } // String returns the string representation func (s UpdateStackOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateStackOutput) GoString() string { return s.String() } // The input for ValidateTemplate action. type ValidateTemplateInput struct { _ struct{} `type:"structure"` // Structure containing the template body with a minimum length of 1 byte and // a maximum length of 51,200 bytes. For more information, go to Template Anatomy // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) // in the AWS CloudFormation User Guide. // // Conditional: You must pass TemplateURL or TemplateBody. If both are passed, // only TemplateBody is used. TemplateBody *string `min:"1" type:"string"` // Location of file containing the template body. The URL must point to a template // (max size: 460,800 bytes) that is located in an Amazon S3 bucket. For more // information, go to Template Anatomy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) // in the AWS CloudFormation User Guide. // // Conditional: You must pass TemplateURL or TemplateBody. If both are passed, // only TemplateBody is used. TemplateURL *string `min:"1" type:"string"` } // String returns the string representation func (s ValidateTemplateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ValidateTemplateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ValidateTemplateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ValidateTemplateInput"} if s.TemplateBody != nil && len(*s.TemplateBody) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateBody", 1)) } if s.TemplateURL != nil && len(*s.TemplateURL) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateURL", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for ValidateTemplate action. type ValidateTemplateOutput struct { _ struct{} `type:"structure"` // The capabilities found within the template. If your template contains IAM // resources, you must specify the CAPABILITY_IAM or CAPABILITY_NAMED_IAM value // for this parameter when you use the CreateStack or UpdateStack actions with // your template; otherwise, those actions return an InsufficientCapabilities // error. // // For more information, see Acknowledging IAM Resources in AWS CloudFormation // Templates (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities). Capabilities []*string `type:"list"` // The list of resources that generated the values in the Capabilities response // element. CapabilitiesReason *string `type:"string"` // The description found within the template. Description *string `min:"1" type:"string"` // A list of TemplateParameter structures. Parameters []*TemplateParameter `type:"list"` } // String returns the string representation func (s ValidateTemplateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ValidateTemplateOutput) GoString() string { return s.String() } const ( // CapabilityCapabilityIam is a Capability enum value CapabilityCapabilityIam = "CAPABILITY_IAM" // CapabilityCapabilityNamedIam is a Capability enum value CapabilityCapabilityNamedIam = "CAPABILITY_NAMED_IAM" ) const ( // ChangeActionAdd is a ChangeAction enum value ChangeActionAdd = "Add" // ChangeActionModify is a ChangeAction enum value ChangeActionModify = "Modify" // ChangeActionRemove is a ChangeAction enum value ChangeActionRemove = "Remove" ) const ( // ChangeSetStatusCreatePending is a ChangeSetStatus enum value ChangeSetStatusCreatePending = "CREATE_PENDING" // ChangeSetStatusCreateInProgress is a ChangeSetStatus enum value ChangeSetStatusCreateInProgress = "CREATE_IN_PROGRESS" // ChangeSetStatusCreateComplete is a ChangeSetStatus enum value ChangeSetStatusCreateComplete = "CREATE_COMPLETE" // ChangeSetStatusDeleteComplete is a ChangeSetStatus enum value ChangeSetStatusDeleteComplete = "DELETE_COMPLETE" // ChangeSetStatusFailed is a ChangeSetStatus enum value ChangeSetStatusFailed = "FAILED" ) const ( // ChangeSourceResourceReference is a ChangeSource enum value ChangeSourceResourceReference = "ResourceReference" // ChangeSourceParameterReference is a ChangeSource enum value ChangeSourceParameterReference = "ParameterReference" // ChangeSourceResourceAttribute is a ChangeSource enum value ChangeSourceResourceAttribute = "ResourceAttribute" // ChangeSourceDirectModification is a ChangeSource enum value ChangeSourceDirectModification = "DirectModification" // ChangeSourceAutomatic is a ChangeSource enum value ChangeSourceAutomatic = "Automatic" ) const ( // ChangeTypeResource is a ChangeType enum value ChangeTypeResource = "Resource" ) const ( // EvaluationTypeStatic is a EvaluationType enum value EvaluationTypeStatic = "Static" // EvaluationTypeDynamic is a EvaluationType enum value EvaluationTypeDynamic = "Dynamic" ) const ( // ExecutionStatusUnavailable is a ExecutionStatus enum value ExecutionStatusUnavailable = "UNAVAILABLE" // ExecutionStatusAvailable is a ExecutionStatus enum value ExecutionStatusAvailable = "AVAILABLE" // ExecutionStatusExecuteInProgress is a ExecutionStatus enum value ExecutionStatusExecuteInProgress = "EXECUTE_IN_PROGRESS" // ExecutionStatusExecuteComplete is a ExecutionStatus enum value ExecutionStatusExecuteComplete = "EXECUTE_COMPLETE" // ExecutionStatusExecuteFailed is a ExecutionStatus enum value ExecutionStatusExecuteFailed = "EXECUTE_FAILED" // ExecutionStatusObsolete is a ExecutionStatus enum value ExecutionStatusObsolete = "OBSOLETE" ) const ( // OnFailureDoNothing is a OnFailure enum value OnFailureDoNothing = "DO_NOTHING" // OnFailureRollback is a OnFailure enum value OnFailureRollback = "ROLLBACK" // OnFailureDelete is a OnFailure enum value OnFailureDelete = "DELETE" ) const ( // ReplacementTrue is a Replacement enum value ReplacementTrue = "True" // ReplacementFalse is a Replacement enum value ReplacementFalse = "False" // ReplacementConditional is a Replacement enum value ReplacementConditional = "Conditional" ) const ( // RequiresRecreationNever is a RequiresRecreation enum value RequiresRecreationNever = "Never" // RequiresRecreationConditionally is a RequiresRecreation enum value RequiresRecreationConditionally = "Conditionally" // RequiresRecreationAlways is a RequiresRecreation enum value RequiresRecreationAlways = "Always" ) const ( // ResourceAttributeProperties is a ResourceAttribute enum value ResourceAttributeProperties = "Properties" // ResourceAttributeMetadata is a ResourceAttribute enum value ResourceAttributeMetadata = "Metadata" // ResourceAttributeCreationPolicy is a ResourceAttribute enum value ResourceAttributeCreationPolicy = "CreationPolicy" // ResourceAttributeUpdatePolicy is a ResourceAttribute enum value ResourceAttributeUpdatePolicy = "UpdatePolicy" // ResourceAttributeDeletionPolicy is a ResourceAttribute enum value ResourceAttributeDeletionPolicy = "DeletionPolicy" // ResourceAttributeTags is a ResourceAttribute enum value ResourceAttributeTags = "Tags" ) const ( // ResourceSignalStatusSuccess is a ResourceSignalStatus enum value ResourceSignalStatusSuccess = "SUCCESS" // ResourceSignalStatusFailure is a ResourceSignalStatus enum value ResourceSignalStatusFailure = "FAILURE" ) const ( // ResourceStatusCreateInProgress is a ResourceStatus enum value ResourceStatusCreateInProgress = "CREATE_IN_PROGRESS" // ResourceStatusCreateFailed is a ResourceStatus enum value ResourceStatusCreateFailed = "CREATE_FAILED" // ResourceStatusCreateComplete is a ResourceStatus enum value ResourceStatusCreateComplete = "CREATE_COMPLETE" // ResourceStatusDeleteInProgress is a ResourceStatus enum value ResourceStatusDeleteInProgress = "DELETE_IN_PROGRESS" // ResourceStatusDeleteFailed is a ResourceStatus enum value ResourceStatusDeleteFailed = "DELETE_FAILED" // ResourceStatusDeleteComplete is a ResourceStatus enum value ResourceStatusDeleteComplete = "DELETE_COMPLETE" // ResourceStatusDeleteSkipped is a ResourceStatus enum value ResourceStatusDeleteSkipped = "DELETE_SKIPPED" // ResourceStatusUpdateInProgress is a ResourceStatus enum value ResourceStatusUpdateInProgress = "UPDATE_IN_PROGRESS" // ResourceStatusUpdateFailed is a ResourceStatus enum value ResourceStatusUpdateFailed = "UPDATE_FAILED" // ResourceStatusUpdateComplete is a ResourceStatus enum value ResourceStatusUpdateComplete = "UPDATE_COMPLETE" ) const ( // StackStatusCreateInProgress is a StackStatus enum value StackStatusCreateInProgress = "CREATE_IN_PROGRESS" // StackStatusCreateFailed is a StackStatus enum value StackStatusCreateFailed = "CREATE_FAILED" // StackStatusCreateComplete is a StackStatus enum value StackStatusCreateComplete = "CREATE_COMPLETE" // StackStatusRollbackInProgress is a StackStatus enum value StackStatusRollbackInProgress = "ROLLBACK_IN_PROGRESS" // StackStatusRollbackFailed is a StackStatus enum value StackStatusRollbackFailed = "ROLLBACK_FAILED" // StackStatusRollbackComplete is a StackStatus enum value StackStatusRollbackComplete = "ROLLBACK_COMPLETE" // StackStatusDeleteInProgress is a StackStatus enum value StackStatusDeleteInProgress = "DELETE_IN_PROGRESS" // StackStatusDeleteFailed is a StackStatus enum value StackStatusDeleteFailed = "DELETE_FAILED" // StackStatusDeleteComplete is a StackStatus enum value StackStatusDeleteComplete = "DELETE_COMPLETE" // StackStatusUpdateInProgress is a StackStatus enum value StackStatusUpdateInProgress = "UPDATE_IN_PROGRESS" // StackStatusUpdateCompleteCleanupInProgress is a StackStatus enum value StackStatusUpdateCompleteCleanupInProgress = "UPDATE_COMPLETE_CLEANUP_IN_PROGRESS" // StackStatusUpdateComplete is a StackStatus enum value StackStatusUpdateComplete = "UPDATE_COMPLETE" // StackStatusUpdateRollbackInProgress is a StackStatus enum value StackStatusUpdateRollbackInProgress = "UPDATE_ROLLBACK_IN_PROGRESS" // StackStatusUpdateRollbackFailed is a StackStatus enum value StackStatusUpdateRollbackFailed = "UPDATE_ROLLBACK_FAILED" // StackStatusUpdateRollbackCompleteCleanupInProgress is a StackStatus enum value StackStatusUpdateRollbackCompleteCleanupInProgress = "UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS" // StackStatusUpdateRollbackComplete is a StackStatus enum value StackStatusUpdateRollbackComplete = "UPDATE_ROLLBACK_COMPLETE" ) aws-sdk-go-1.4.22/service/cloudformation/cloudformationiface/000077500000000000000000000000001300374646400242655ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudformation/cloudformationiface/interface.go000066400000000000000000000206351300374646400265620ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cloudformationiface provides an interface to enable mocking the AWS CloudFormation service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package cloudformationiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/cloudformation" ) // CloudFormationAPI provides an interface to enable mocking the // cloudformation.CloudFormation service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS CloudFormation. // func myFunc(svc cloudformationiface.CloudFormationAPI) bool { // // Make svc.CancelUpdateStack request // } // // func main() { // sess := session.New() // svc := cloudformation.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockCloudFormationClient struct { // cloudformationiface.CloudFormationAPI // } // func (m *mockCloudFormationClient) CancelUpdateStack(input *cloudformation.CancelUpdateStackInput) (*cloudformation.CancelUpdateStackOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockCloudFormationClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type CloudFormationAPI interface { CancelUpdateStackRequest(*cloudformation.CancelUpdateStackInput) (*request.Request, *cloudformation.CancelUpdateStackOutput) CancelUpdateStack(*cloudformation.CancelUpdateStackInput) (*cloudformation.CancelUpdateStackOutput, error) ContinueUpdateRollbackRequest(*cloudformation.ContinueUpdateRollbackInput) (*request.Request, *cloudformation.ContinueUpdateRollbackOutput) ContinueUpdateRollback(*cloudformation.ContinueUpdateRollbackInput) (*cloudformation.ContinueUpdateRollbackOutput, error) CreateChangeSetRequest(*cloudformation.CreateChangeSetInput) (*request.Request, *cloudformation.CreateChangeSetOutput) CreateChangeSet(*cloudformation.CreateChangeSetInput) (*cloudformation.CreateChangeSetOutput, error) CreateStackRequest(*cloudformation.CreateStackInput) (*request.Request, *cloudformation.CreateStackOutput) CreateStack(*cloudformation.CreateStackInput) (*cloudformation.CreateStackOutput, error) DeleteChangeSetRequest(*cloudformation.DeleteChangeSetInput) (*request.Request, *cloudformation.DeleteChangeSetOutput) DeleteChangeSet(*cloudformation.DeleteChangeSetInput) (*cloudformation.DeleteChangeSetOutput, error) DeleteStackRequest(*cloudformation.DeleteStackInput) (*request.Request, *cloudformation.DeleteStackOutput) DeleteStack(*cloudformation.DeleteStackInput) (*cloudformation.DeleteStackOutput, error) DescribeAccountLimitsRequest(*cloudformation.DescribeAccountLimitsInput) (*request.Request, *cloudformation.DescribeAccountLimitsOutput) DescribeAccountLimits(*cloudformation.DescribeAccountLimitsInput) (*cloudformation.DescribeAccountLimitsOutput, error) DescribeChangeSetRequest(*cloudformation.DescribeChangeSetInput) (*request.Request, *cloudformation.DescribeChangeSetOutput) DescribeChangeSet(*cloudformation.DescribeChangeSetInput) (*cloudformation.DescribeChangeSetOutput, error) DescribeStackEventsRequest(*cloudformation.DescribeStackEventsInput) (*request.Request, *cloudformation.DescribeStackEventsOutput) DescribeStackEvents(*cloudformation.DescribeStackEventsInput) (*cloudformation.DescribeStackEventsOutput, error) DescribeStackEventsPages(*cloudformation.DescribeStackEventsInput, func(*cloudformation.DescribeStackEventsOutput, bool) bool) error DescribeStackResourceRequest(*cloudformation.DescribeStackResourceInput) (*request.Request, *cloudformation.DescribeStackResourceOutput) DescribeStackResource(*cloudformation.DescribeStackResourceInput) (*cloudformation.DescribeStackResourceOutput, error) DescribeStackResourcesRequest(*cloudformation.DescribeStackResourcesInput) (*request.Request, *cloudformation.DescribeStackResourcesOutput) DescribeStackResources(*cloudformation.DescribeStackResourcesInput) (*cloudformation.DescribeStackResourcesOutput, error) DescribeStacksRequest(*cloudformation.DescribeStacksInput) (*request.Request, *cloudformation.DescribeStacksOutput) DescribeStacks(*cloudformation.DescribeStacksInput) (*cloudformation.DescribeStacksOutput, error) DescribeStacksPages(*cloudformation.DescribeStacksInput, func(*cloudformation.DescribeStacksOutput, bool) bool) error EstimateTemplateCostRequest(*cloudformation.EstimateTemplateCostInput) (*request.Request, *cloudformation.EstimateTemplateCostOutput) EstimateTemplateCost(*cloudformation.EstimateTemplateCostInput) (*cloudformation.EstimateTemplateCostOutput, error) ExecuteChangeSetRequest(*cloudformation.ExecuteChangeSetInput) (*request.Request, *cloudformation.ExecuteChangeSetOutput) ExecuteChangeSet(*cloudformation.ExecuteChangeSetInput) (*cloudformation.ExecuteChangeSetOutput, error) GetStackPolicyRequest(*cloudformation.GetStackPolicyInput) (*request.Request, *cloudformation.GetStackPolicyOutput) GetStackPolicy(*cloudformation.GetStackPolicyInput) (*cloudformation.GetStackPolicyOutput, error) GetTemplateRequest(*cloudformation.GetTemplateInput) (*request.Request, *cloudformation.GetTemplateOutput) GetTemplate(*cloudformation.GetTemplateInput) (*cloudformation.GetTemplateOutput, error) GetTemplateSummaryRequest(*cloudformation.GetTemplateSummaryInput) (*request.Request, *cloudformation.GetTemplateSummaryOutput) GetTemplateSummary(*cloudformation.GetTemplateSummaryInput) (*cloudformation.GetTemplateSummaryOutput, error) ListChangeSetsRequest(*cloudformation.ListChangeSetsInput) (*request.Request, *cloudformation.ListChangeSetsOutput) ListChangeSets(*cloudformation.ListChangeSetsInput) (*cloudformation.ListChangeSetsOutput, error) ListStackResourcesRequest(*cloudformation.ListStackResourcesInput) (*request.Request, *cloudformation.ListStackResourcesOutput) ListStackResources(*cloudformation.ListStackResourcesInput) (*cloudformation.ListStackResourcesOutput, error) ListStackResourcesPages(*cloudformation.ListStackResourcesInput, func(*cloudformation.ListStackResourcesOutput, bool) bool) error ListStacksRequest(*cloudformation.ListStacksInput) (*request.Request, *cloudformation.ListStacksOutput) ListStacks(*cloudformation.ListStacksInput) (*cloudformation.ListStacksOutput, error) ListStacksPages(*cloudformation.ListStacksInput, func(*cloudformation.ListStacksOutput, bool) bool) error SetStackPolicyRequest(*cloudformation.SetStackPolicyInput) (*request.Request, *cloudformation.SetStackPolicyOutput) SetStackPolicy(*cloudformation.SetStackPolicyInput) (*cloudformation.SetStackPolicyOutput, error) SignalResourceRequest(*cloudformation.SignalResourceInput) (*request.Request, *cloudformation.SignalResourceOutput) SignalResource(*cloudformation.SignalResourceInput) (*cloudformation.SignalResourceOutput, error) UpdateStackRequest(*cloudformation.UpdateStackInput) (*request.Request, *cloudformation.UpdateStackOutput) UpdateStack(*cloudformation.UpdateStackInput) (*cloudformation.UpdateStackOutput, error) ValidateTemplateRequest(*cloudformation.ValidateTemplateInput) (*request.Request, *cloudformation.ValidateTemplateOutput) ValidateTemplate(*cloudformation.ValidateTemplateInput) (*cloudformation.ValidateTemplateOutput, error) WaitUntilStackCreateComplete(*cloudformation.DescribeStacksInput) error WaitUntilStackDeleteComplete(*cloudformation.DescribeStacksInput) error WaitUntilStackExists(*cloudformation.DescribeStacksInput) error WaitUntilStackUpdateComplete(*cloudformation.DescribeStacksInput) error } var _ CloudFormationAPI = (*cloudformation.CloudFormation)(nil) aws-sdk-go-1.4.22/service/cloudformation/examples_test.go000066400000000000000000000434251300374646400234640ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudformation_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/cloudformation" ) var _ time.Duration var _ bytes.Buffer func ExampleCloudFormation_CancelUpdateStack() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.CancelUpdateStackInput{ StackName: aws.String("StackName"), // Required } resp, err := svc.CancelUpdateStack(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_ContinueUpdateRollback() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.ContinueUpdateRollbackInput{ StackName: aws.String("StackNameOrId"), // Required RoleARN: aws.String("RoleARN"), } resp, err := svc.ContinueUpdateRollback(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_CreateChangeSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.CreateChangeSetInput{ ChangeSetName: aws.String("ChangeSetName"), // Required StackName: aws.String("StackNameOrId"), // Required Capabilities: []*string{ aws.String("Capability"), // Required // More values... }, ClientToken: aws.String("ClientToken"), Description: aws.String("Description"), NotificationARNs: []*string{ aws.String("NotificationARN"), // Required // More values... }, Parameters: []*cloudformation.Parameter{ { // Required ParameterKey: aws.String("ParameterKey"), ParameterValue: aws.String("ParameterValue"), UsePreviousValue: aws.Bool(true), }, // More values... }, ResourceTypes: []*string{ aws.String("ResourceType"), // Required // More values... }, RoleARN: aws.String("RoleARN"), Tags: []*cloudformation.Tag{ { // Required Key: aws.String("TagKey"), Value: aws.String("TagValue"), }, // More values... }, TemplateBody: aws.String("TemplateBody"), TemplateURL: aws.String("TemplateURL"), UsePreviousTemplate: aws.Bool(true), } resp, err := svc.CreateChangeSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_CreateStack() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.CreateStackInput{ StackName: aws.String("StackName"), // Required Capabilities: []*string{ aws.String("Capability"), // Required // More values... }, DisableRollback: aws.Bool(true), NotificationARNs: []*string{ aws.String("NotificationARN"), // Required // More values... }, OnFailure: aws.String("OnFailure"), Parameters: []*cloudformation.Parameter{ { // Required ParameterKey: aws.String("ParameterKey"), ParameterValue: aws.String("ParameterValue"), UsePreviousValue: aws.Bool(true), }, // More values... }, ResourceTypes: []*string{ aws.String("ResourceType"), // Required // More values... }, RoleARN: aws.String("RoleARN"), StackPolicyBody: aws.String("StackPolicyBody"), StackPolicyURL: aws.String("StackPolicyURL"), Tags: []*cloudformation.Tag{ { // Required Key: aws.String("TagKey"), Value: aws.String("TagValue"), }, // More values... }, TemplateBody: aws.String("TemplateBody"), TemplateURL: aws.String("TemplateURL"), TimeoutInMinutes: aws.Int64(1), } resp, err := svc.CreateStack(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_DeleteChangeSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.DeleteChangeSetInput{ ChangeSetName: aws.String("ChangeSetNameOrId"), // Required StackName: aws.String("StackNameOrId"), } resp, err := svc.DeleteChangeSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_DeleteStack() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.DeleteStackInput{ StackName: aws.String("StackName"), // Required RetainResources: []*string{ aws.String("LogicalResourceId"), // Required // More values... }, RoleARN: aws.String("RoleARN"), } resp, err := svc.DeleteStack(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_DescribeAccountLimits() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.DescribeAccountLimitsInput{ NextToken: aws.String("NextToken"), } resp, err := svc.DescribeAccountLimits(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_DescribeChangeSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.DescribeChangeSetInput{ ChangeSetName: aws.String("ChangeSetNameOrId"), // Required NextToken: aws.String("NextToken"), StackName: aws.String("StackNameOrId"), } resp, err := svc.DescribeChangeSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_DescribeStackEvents() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.DescribeStackEventsInput{ NextToken: aws.String("NextToken"), StackName: aws.String("StackName"), } resp, err := svc.DescribeStackEvents(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_DescribeStackResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.DescribeStackResourceInput{ LogicalResourceId: aws.String("LogicalResourceId"), // Required StackName: aws.String("StackName"), // Required } resp, err := svc.DescribeStackResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_DescribeStackResources() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.DescribeStackResourcesInput{ LogicalResourceId: aws.String("LogicalResourceId"), PhysicalResourceId: aws.String("PhysicalResourceId"), StackName: aws.String("StackName"), } resp, err := svc.DescribeStackResources(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_DescribeStacks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.DescribeStacksInput{ NextToken: aws.String("NextToken"), StackName: aws.String("StackName"), } resp, err := svc.DescribeStacks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_EstimateTemplateCost() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.EstimateTemplateCostInput{ Parameters: []*cloudformation.Parameter{ { // Required ParameterKey: aws.String("ParameterKey"), ParameterValue: aws.String("ParameterValue"), UsePreviousValue: aws.Bool(true), }, // More values... }, TemplateBody: aws.String("TemplateBody"), TemplateURL: aws.String("TemplateURL"), } resp, err := svc.EstimateTemplateCost(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_ExecuteChangeSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.ExecuteChangeSetInput{ ChangeSetName: aws.String("ChangeSetNameOrId"), // Required StackName: aws.String("StackNameOrId"), } resp, err := svc.ExecuteChangeSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_GetStackPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.GetStackPolicyInput{ StackName: aws.String("StackName"), // Required } resp, err := svc.GetStackPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_GetTemplate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.GetTemplateInput{ StackName: aws.String("StackName"), // Required } resp, err := svc.GetTemplate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_GetTemplateSummary() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.GetTemplateSummaryInput{ StackName: aws.String("StackNameOrId"), TemplateBody: aws.String("TemplateBody"), TemplateURL: aws.String("TemplateURL"), } resp, err := svc.GetTemplateSummary(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_ListChangeSets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.ListChangeSetsInput{ StackName: aws.String("StackNameOrId"), // Required NextToken: aws.String("NextToken"), } resp, err := svc.ListChangeSets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_ListStackResources() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.ListStackResourcesInput{ StackName: aws.String("StackName"), // Required NextToken: aws.String("NextToken"), } resp, err := svc.ListStackResources(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_ListStacks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.ListStacksInput{ NextToken: aws.String("NextToken"), StackStatusFilter: []*string{ aws.String("StackStatus"), // Required // More values... }, } resp, err := svc.ListStacks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_SetStackPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.SetStackPolicyInput{ StackName: aws.String("StackName"), // Required StackPolicyBody: aws.String("StackPolicyBody"), StackPolicyURL: aws.String("StackPolicyURL"), } resp, err := svc.SetStackPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_SignalResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.SignalResourceInput{ LogicalResourceId: aws.String("LogicalResourceId"), // Required StackName: aws.String("StackNameOrId"), // Required Status: aws.String("ResourceSignalStatus"), // Required UniqueId: aws.String("ResourceSignalUniqueId"), // Required } resp, err := svc.SignalResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_UpdateStack() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.UpdateStackInput{ StackName: aws.String("StackName"), // Required Capabilities: []*string{ aws.String("Capability"), // Required // More values... }, NotificationARNs: []*string{ aws.String("NotificationARN"), // Required // More values... }, Parameters: []*cloudformation.Parameter{ { // Required ParameterKey: aws.String("ParameterKey"), ParameterValue: aws.String("ParameterValue"), UsePreviousValue: aws.Bool(true), }, // More values... }, ResourceTypes: []*string{ aws.String("ResourceType"), // Required // More values... }, RoleARN: aws.String("RoleARN"), StackPolicyBody: aws.String("StackPolicyBody"), StackPolicyDuringUpdateBody: aws.String("StackPolicyDuringUpdateBody"), StackPolicyDuringUpdateURL: aws.String("StackPolicyDuringUpdateURL"), StackPolicyURL: aws.String("StackPolicyURL"), Tags: []*cloudformation.Tag{ { // Required Key: aws.String("TagKey"), Value: aws.String("TagValue"), }, // More values... }, TemplateBody: aws.String("TemplateBody"), TemplateURL: aws.String("TemplateURL"), UsePreviousTemplate: aws.Bool(true), } resp, err := svc.UpdateStack(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFormation_ValidateTemplate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudformation.New(sess) params := &cloudformation.ValidateTemplateInput{ TemplateBody: aws.String("TemplateBody"), TemplateURL: aws.String("TemplateURL"), } resp, err := svc.ValidateTemplate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/cloudformation/service.go000066400000000000000000000074001300374646400222400ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudformation import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/query" ) // AWS CloudFormation enables you to create and manage AWS infrastructure deployments // predictably and repeatedly. AWS CloudFormation helps you leverage AWS products // such as Amazon EC2, EBS, Amazon SNS, ELB, and Auto Scaling to build highly-reliable, // highly scalable, cost effective applications without worrying about creating // and configuring the underlying AWS infrastructure. // // With AWS CloudFormation, you declare all of your resources and dependencies // in a template file. The template defines a collection of resources as a single // unit called a stack. AWS CloudFormation creates and deletes all member resources // of the stack together and manages all dependencies between the resources // for you. // // For more information about this product, go to the CloudFormation Product // Page (http://aws.amazon.com/cloudformation/). // // Amazon CloudFormation makes use of other AWS products. If you need additional // technical information about a specific AWS product, you can find the product's // technical documentation at http://docs.aws.amazon.com/ (http://docs.aws.amazon.com/). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type CloudFormation struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "cloudformation" // New creates a new instance of the CloudFormation client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a CloudFormation client from just a session. // svc := cloudformation.New(mySession) // // // Create a CloudFormation client with additional configuration // svc := cloudformation.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *CloudFormation { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *CloudFormation { svc := &CloudFormation{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2010-05-15", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a CloudFormation operation and runs any // custom request initialization. func (c *CloudFormation) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/cloudformation/waiters.go000066400000000000000000000153561300374646400222670ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudformation import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilStackCreateComplete uses the AWS CloudFormation API operation // DescribeStacks to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *CloudFormation) WaitUntilStackCreateComplete(input *DescribeStacksInput) error { waiterCfg := waiter.Config{ Operation: "DescribeStacks", Delay: 30, MaxAttempts: 120, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Stacks[].StackStatus", Expected: "CREATE_COMPLETE", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "CREATE_FAILED", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "DELETE_COMPLETE", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "DELETE_IN_PROGRESS", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "DELETE_FAILED", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "ROLLBACK_COMPLETE", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "ROLLBACK_FAILED", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "ROLLBACK_IN_PROGRESS", }, { State: "failure", Matcher: "error", Argument: "", Expected: "ValidationError", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilStackDeleteComplete uses the AWS CloudFormation API operation // DescribeStacks to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *CloudFormation) WaitUntilStackDeleteComplete(input *DescribeStacksInput) error { waiterCfg := waiter.Config{ Operation: "DescribeStacks", Delay: 30, MaxAttempts: 120, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Stacks[].StackStatus", Expected: "DELETE_COMPLETE", }, { State: "success", Matcher: "error", Argument: "", Expected: "ValidationError", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "DELETE_FAILED", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "CREATE_COMPLETE", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "CREATE_FAILED", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "CREATE_IN_PROGRESS", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "ROLLBACK_COMPLETE", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "ROLLBACK_FAILED", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "ROLLBACK_IN_PROGRESS", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "UPDATE_COMPLETE", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "UPDATE_COMPLETE_CLEANUP_IN_PROGRESS", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "UPDATE_IN_PROGRESS", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "UPDATE_ROLLBACK_COMPLETE", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "UPDATE_ROLLBACK_FAILED", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "UPDATE_ROLLBACK_IN_PROGRESS", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilStackExists uses the AWS CloudFormation API operation // DescribeStacks to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *CloudFormation) WaitUntilStackExists(input *DescribeStacksInput) error { waiterCfg := waiter.Config{ Operation: "DescribeStacks", Delay: 5, MaxAttempts: 20, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "status", Argument: "", Expected: 200, }, { State: "retry", Matcher: "error", Argument: "", Expected: "ValidationError", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilStackUpdateComplete uses the AWS CloudFormation API operation // DescribeStacks to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *CloudFormation) WaitUntilStackUpdateComplete(input *DescribeStacksInput) error { waiterCfg := waiter.Config{ Operation: "DescribeStacks", Delay: 30, MaxAttempts: 120, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Stacks[].StackStatus", Expected: "UPDATE_COMPLETE", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "UPDATE_FAILED", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "UPDATE_ROLLBACK_COMPLETE", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "UPDATE_ROLLBACK_FAILED", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS", }, { State: "failure", Matcher: "pathAny", Argument: "Stacks[].StackStatus", Expected: "UPDATE_ROLLBACK_IN_PROGRESS", }, { State: "failure", Matcher: "error", Argument: "", Expected: "ValidationError", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/cloudfront/000077500000000000000000000000001300374646400174025ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudfront/api.go000066400000000000000000010467421300374646400205200ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cloudfront provides a client for Amazon CloudFront. package cloudfront import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/restxml" ) const opCreateCloudFrontOriginAccessIdentity = "CreateCloudFrontOriginAccessIdentity2016_09_29" // CreateCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the // client's request for the CreateCloudFrontOriginAccessIdentity operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateCloudFrontOriginAccessIdentity for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateCloudFrontOriginAccessIdentity method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateCloudFrontOriginAccessIdentityRequest method. // req, resp := client.CreateCloudFrontOriginAccessIdentityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) CreateCloudFrontOriginAccessIdentityRequest(input *CreateCloudFrontOriginAccessIdentityInput) (req *request.Request, output *CreateCloudFrontOriginAccessIdentityOutput) { op := &request.Operation{ Name: opCreateCloudFrontOriginAccessIdentity, HTTPMethod: "POST", HTTPPath: "/2016-09-29/origin-access-identity/cloudfront", } if input == nil { input = &CreateCloudFrontOriginAccessIdentityInput{} } req = c.newRequest(op, input, output) output = &CreateCloudFrontOriginAccessIdentityOutput{} req.Data = output return } // CreateCloudFrontOriginAccessIdentity API operation for Amazon CloudFront. // // Creates a new origin access identity. If you're using Amazon S3 for your // origin, you can use an origin access identity to require users to access // your content using a CloudFront URL instead of the Amazon S3 URL. For more // information about how to use origin access identities, see Serving Private // Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) // in the Amazon CloudFront Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation CreateCloudFrontOriginAccessIdentity for usage and error information. // // Returned Error Codes: // * OriginAccessIdentityAlreadyExists // If the CallerReference is a value you already sent in a previous request // to create an identity but the content of the CloudFrontOriginAccessIdentityConfig // is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists // error. // // * MissingBody // This operation requires a body. Ensure that the body is present and the Content-Type // header is set. // // * TooManyCloudFrontOriginAccessIdentities // Processing your request would cause you to exceed the maximum number of origin // access identities allowed. // // * InvalidArgument // The argument is invalid. // // * InconsistentQuantities // The value of Quantity and the size of Items do not match. // func (c *CloudFront) CreateCloudFrontOriginAccessIdentity(input *CreateCloudFrontOriginAccessIdentityInput) (*CreateCloudFrontOriginAccessIdentityOutput, error) { req, out := c.CreateCloudFrontOriginAccessIdentityRequest(input) err := req.Send() return out, err } const opCreateDistribution = "CreateDistribution2016_09_29" // CreateDistributionRequest generates a "aws/request.Request" representing the // client's request for the CreateDistribution operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDistribution for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDistribution method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDistributionRequest method. // req, resp := client.CreateDistributionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) CreateDistributionRequest(input *CreateDistributionInput) (req *request.Request, output *CreateDistributionOutput) { op := &request.Operation{ Name: opCreateDistribution, HTTPMethod: "POST", HTTPPath: "/2016-09-29/distribution", } if input == nil { input = &CreateDistributionInput{} } req = c.newRequest(op, input, output) output = &CreateDistributionOutput{} req.Data = output return } // CreateDistribution API operation for Amazon CloudFront. // // Creates a new web distribution. Send a GET request to the /CloudFront API // version/distribution/distribution ID resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation CreateDistribution for usage and error information. // // Returned Error Codes: // * CNAMEAlreadyExists // // * DistributionAlreadyExists // The caller reference you attempted to create the distribution with is associated // with another distribution. // // * InvalidOrigin // The Amazon S3 origin server specified does not refer to a valid Amazon S3 // bucket. // // * InvalidOriginAccessIdentity // The origin access identity is not valid or doesn't exist. // // * AccessDenied // Access denied. // // * TooManyTrustedSigners // Your request contains more trusted signers than are allowed per distribution. // // * TrustedSignerDoesNotExist // One or more of your trusted signers do not exist. // // * InvalidViewerCertificate // // * InvalidMinimumProtocolVersion // // * MissingBody // This operation requires a body. Ensure that the body is present and the Content-Type // header is set. // // * TooManyDistributionCNAMEs // Your request contains more CNAMEs than are allowed per distribution. // // * TooManyDistributions // Processing your request would cause you to exceed the maximum number of distributions // allowed. // // * InvalidDefaultRootObject // The default root object file name is too big or contains an invalid character. // // * InvalidRelativePath // The relative path is too big, is not URL-encoded, or does not begin with // a slash (/). // // * InvalidErrorCode // // * InvalidResponseCode // // * InvalidArgument // The argument is invalid. // // * InvalidRequiredProtocol // This operation requires the HTTPS protocol. Ensure that you specify the HTTPS // protocol in your request, or omit the RequiredProtocols element from your // distribution configuration. // // * NoSuchOrigin // No origin exists with the specified Origin Id. // // * TooManyOrigins // You cannot create more origins for the distribution. // // * TooManyCacheBehaviors // You cannot create more cache behaviors for the distribution. // // * TooManyCookieNamesInWhiteList // Your request contains more cookie names in the whitelist than are allowed // per cache behavior. // // * InvalidForwardCookies // Your request contains forward cookies option which doesn't match with the // expectation for the whitelisted list of cookie names. Either list of cookie // names has been specified when not allowed or list of cookie names is missing // when expected. // // * TooManyHeadersInForwardedValues // // * InvalidHeadersForS3Origin // // * InconsistentQuantities // The value of Quantity and the size of Items do not match. // // * TooManyCertificates // You cannot create anymore custom SSL/TLS certificates. // // * InvalidLocationCode // // * InvalidGeoRestrictionParameter // // * InvalidProtocolSettings // You cannot specify SSLv3 as the minimum protocol version if you only want // to support only clients that support Server Name Indication (SNI). // // * InvalidTTLOrder // // * InvalidWebACLId // // * TooManyOriginCustomHeaders // // * TooManyQueryStringParameters // // * InvalidQueryStringParameters // func (c *CloudFront) CreateDistribution(input *CreateDistributionInput) (*CreateDistributionOutput, error) { req, out := c.CreateDistributionRequest(input) err := req.Send() return out, err } const opCreateDistributionWithTags = "CreateDistributionWithTags2016_09_29" // CreateDistributionWithTagsRequest generates a "aws/request.Request" representing the // client's request for the CreateDistributionWithTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDistributionWithTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDistributionWithTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDistributionWithTagsRequest method. // req, resp := client.CreateDistributionWithTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) CreateDistributionWithTagsRequest(input *CreateDistributionWithTagsInput) (req *request.Request, output *CreateDistributionWithTagsOutput) { op := &request.Operation{ Name: opCreateDistributionWithTags, HTTPMethod: "POST", HTTPPath: "/2016-09-29/distribution?WithTags", } if input == nil { input = &CreateDistributionWithTagsInput{} } req = c.newRequest(op, input, output) output = &CreateDistributionWithTagsOutput{} req.Data = output return } // CreateDistributionWithTags API operation for Amazon CloudFront. // // Create a new distribution with tags. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation CreateDistributionWithTags for usage and error information. // // Returned Error Codes: // * CNAMEAlreadyExists // // * DistributionAlreadyExists // The caller reference you attempted to create the distribution with is associated // with another distribution. // // * InvalidOrigin // The Amazon S3 origin server specified does not refer to a valid Amazon S3 // bucket. // // * InvalidOriginAccessIdentity // The origin access identity is not valid or doesn't exist. // // * AccessDenied // Access denied. // // * TooManyTrustedSigners // Your request contains more trusted signers than are allowed per distribution. // // * TrustedSignerDoesNotExist // One or more of your trusted signers do not exist. // // * InvalidViewerCertificate // // * InvalidMinimumProtocolVersion // // * MissingBody // This operation requires a body. Ensure that the body is present and the Content-Type // header is set. // // * TooManyDistributionCNAMEs // Your request contains more CNAMEs than are allowed per distribution. // // * TooManyDistributions // Processing your request would cause you to exceed the maximum number of distributions // allowed. // // * InvalidDefaultRootObject // The default root object file name is too big or contains an invalid character. // // * InvalidRelativePath // The relative path is too big, is not URL-encoded, or does not begin with // a slash (/). // // * InvalidErrorCode // // * InvalidResponseCode // // * InvalidArgument // The argument is invalid. // // * InvalidRequiredProtocol // This operation requires the HTTPS protocol. Ensure that you specify the HTTPS // protocol in your request, or omit the RequiredProtocols element from your // distribution configuration. // // * NoSuchOrigin // No origin exists with the specified Origin Id. // // * TooManyOrigins // You cannot create more origins for the distribution. // // * TooManyCacheBehaviors // You cannot create more cache behaviors for the distribution. // // * TooManyCookieNamesInWhiteList // Your request contains more cookie names in the whitelist than are allowed // per cache behavior. // // * InvalidForwardCookies // Your request contains forward cookies option which doesn't match with the // expectation for the whitelisted list of cookie names. Either list of cookie // names has been specified when not allowed or list of cookie names is missing // when expected. // // * TooManyHeadersInForwardedValues // // * InvalidHeadersForS3Origin // // * InconsistentQuantities // The value of Quantity and the size of Items do not match. // // * TooManyCertificates // You cannot create anymore custom SSL/TLS certificates. // // * InvalidLocationCode // // * InvalidGeoRestrictionParameter // // * InvalidProtocolSettings // You cannot specify SSLv3 as the minimum protocol version if you only want // to support only clients that support Server Name Indication (SNI). // // * InvalidTTLOrder // // * InvalidWebACLId // // * TooManyOriginCustomHeaders // // * InvalidTagging // // * TooManyQueryStringParameters // // * InvalidQueryStringParameters // func (c *CloudFront) CreateDistributionWithTags(input *CreateDistributionWithTagsInput) (*CreateDistributionWithTagsOutput, error) { req, out := c.CreateDistributionWithTagsRequest(input) err := req.Send() return out, err } const opCreateInvalidation = "CreateInvalidation2016_09_29" // CreateInvalidationRequest generates a "aws/request.Request" representing the // client's request for the CreateInvalidation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateInvalidation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateInvalidation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateInvalidationRequest method. // req, resp := client.CreateInvalidationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) CreateInvalidationRequest(input *CreateInvalidationInput) (req *request.Request, output *CreateInvalidationOutput) { op := &request.Operation{ Name: opCreateInvalidation, HTTPMethod: "POST", HTTPPath: "/2016-09-29/distribution/{DistributionId}/invalidation", } if input == nil { input = &CreateInvalidationInput{} } req = c.newRequest(op, input, output) output = &CreateInvalidationOutput{} req.Data = output return } // CreateInvalidation API operation for Amazon CloudFront. // // Create a new invalidation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation CreateInvalidation for usage and error information. // // Returned Error Codes: // * AccessDenied // Access denied. // // * MissingBody // This operation requires a body. Ensure that the body is present and the Content-Type // header is set. // // * InvalidArgument // The argument is invalid. // // * NoSuchDistribution // The specified distribution does not exist. // // * BatchTooLarge // // * TooManyInvalidationsInProgress // You have exceeded the maximum number of allowable InProgress invalidation // batch requests, or invalidation objects. // // * InconsistentQuantities // The value of Quantity and the size of Items do not match. // func (c *CloudFront) CreateInvalidation(input *CreateInvalidationInput) (*CreateInvalidationOutput, error) { req, out := c.CreateInvalidationRequest(input) err := req.Send() return out, err } const opCreateStreamingDistribution = "CreateStreamingDistribution2016_09_29" // CreateStreamingDistributionRequest generates a "aws/request.Request" representing the // client's request for the CreateStreamingDistribution operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateStreamingDistribution for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateStreamingDistribution method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateStreamingDistributionRequest method. // req, resp := client.CreateStreamingDistributionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) CreateStreamingDistributionRequest(input *CreateStreamingDistributionInput) (req *request.Request, output *CreateStreamingDistributionOutput) { op := &request.Operation{ Name: opCreateStreamingDistribution, HTTPMethod: "POST", HTTPPath: "/2016-09-29/streaming-distribution", } if input == nil { input = &CreateStreamingDistributionInput{} } req = c.newRequest(op, input, output) output = &CreateStreamingDistributionOutput{} req.Data = output return } // CreateStreamingDistribution API operation for Amazon CloudFront. // // Creates a new RMTP distribution. An RTMP distribution is similar to a web // distribution, but an RTMP distribution streams media files using the Adobe // Real-Time Messaging Protocol (RTMP) instead of serving files using HTTP. // // To create a new web distribution, submit a POST request to the CloudFront // API version/distribution resource. The request body must include a document // with a StreamingDistributionConfig element. The response echoes the StreamingDistributionConfig // element and returns other information about the RTMP distribution. // // To get the status of your request, use the GET StreamingDistribution API // action. When the value of Enabled is true and the value of Status is Deployed, // your distribution is ready. A distribution usually deploys in less than 15 // minutes. // // For more information about web distributions, see Working with RTMP Distributions // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-rtmp.html) // in the Amazon CloudFront Developer Guide. // // Beginning with the 2012-05-05 version of the CloudFront API, we made substantial // changes to the format of the XML document that you include in the request // body when you create or update a web distribution or an RTMP distribution, // and when you invalidate objects. With previous versions of the API, we discovered // that it was too easy to accidentally delete one or more values for an element // that accepts multiple values, for example, CNAMEs and trusted signers. Our // changes for the 2012-05-05 release are intended to prevent these accidental // deletions and to notify you when there's a mismatch between the number of // values you say you're specifying in the Quantity element and the number of // values specified. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation CreateStreamingDistribution for usage and error information. // // Returned Error Codes: // * CNAMEAlreadyExists // // * StreamingDistributionAlreadyExists // // * InvalidOrigin // The Amazon S3 origin server specified does not refer to a valid Amazon S3 // bucket. // // * InvalidOriginAccessIdentity // The origin access identity is not valid or doesn't exist. // // * AccessDenied // Access denied. // // * TooManyTrustedSigners // Your request contains more trusted signers than are allowed per distribution. // // * TrustedSignerDoesNotExist // One or more of your trusted signers do not exist. // // * MissingBody // This operation requires a body. Ensure that the body is present and the Content-Type // header is set. // // * TooManyStreamingDistributionCNAMEs // // * TooManyStreamingDistributions // Processing your request would cause you to exceed the maximum number of streaming // distributions allowed. // // * InvalidArgument // The argument is invalid. // // * InconsistentQuantities // The value of Quantity and the size of Items do not match. // func (c *CloudFront) CreateStreamingDistribution(input *CreateStreamingDistributionInput) (*CreateStreamingDistributionOutput, error) { req, out := c.CreateStreamingDistributionRequest(input) err := req.Send() return out, err } const opCreateStreamingDistributionWithTags = "CreateStreamingDistributionWithTags2016_09_29" // CreateStreamingDistributionWithTagsRequest generates a "aws/request.Request" representing the // client's request for the CreateStreamingDistributionWithTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateStreamingDistributionWithTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateStreamingDistributionWithTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateStreamingDistributionWithTagsRequest method. // req, resp := client.CreateStreamingDistributionWithTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) CreateStreamingDistributionWithTagsRequest(input *CreateStreamingDistributionWithTagsInput) (req *request.Request, output *CreateStreamingDistributionWithTagsOutput) { op := &request.Operation{ Name: opCreateStreamingDistributionWithTags, HTTPMethod: "POST", HTTPPath: "/2016-09-29/streaming-distribution?WithTags", } if input == nil { input = &CreateStreamingDistributionWithTagsInput{} } req = c.newRequest(op, input, output) output = &CreateStreamingDistributionWithTagsOutput{} req.Data = output return } // CreateStreamingDistributionWithTags API operation for Amazon CloudFront. // // Create a new streaming distribution with tags. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation CreateStreamingDistributionWithTags for usage and error information. // // Returned Error Codes: // * CNAMEAlreadyExists // // * StreamingDistributionAlreadyExists // // * InvalidOrigin // The Amazon S3 origin server specified does not refer to a valid Amazon S3 // bucket. // // * InvalidOriginAccessIdentity // The origin access identity is not valid or doesn't exist. // // * AccessDenied // Access denied. // // * TooManyTrustedSigners // Your request contains more trusted signers than are allowed per distribution. // // * TrustedSignerDoesNotExist // One or more of your trusted signers do not exist. // // * MissingBody // This operation requires a body. Ensure that the body is present and the Content-Type // header is set. // // * TooManyStreamingDistributionCNAMEs // // * TooManyStreamingDistributions // Processing your request would cause you to exceed the maximum number of streaming // distributions allowed. // // * InvalidArgument // The argument is invalid. // // * InconsistentQuantities // The value of Quantity and the size of Items do not match. // // * InvalidTagging // func (c *CloudFront) CreateStreamingDistributionWithTags(input *CreateStreamingDistributionWithTagsInput) (*CreateStreamingDistributionWithTagsOutput, error) { req, out := c.CreateStreamingDistributionWithTagsRequest(input) err := req.Send() return out, err } const opDeleteCloudFrontOriginAccessIdentity = "DeleteCloudFrontOriginAccessIdentity2016_09_29" // DeleteCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the // client's request for the DeleteCloudFrontOriginAccessIdentity operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteCloudFrontOriginAccessIdentity for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteCloudFrontOriginAccessIdentity method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteCloudFrontOriginAccessIdentityRequest method. // req, resp := client.DeleteCloudFrontOriginAccessIdentityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) DeleteCloudFrontOriginAccessIdentityRequest(input *DeleteCloudFrontOriginAccessIdentityInput) (req *request.Request, output *DeleteCloudFrontOriginAccessIdentityOutput) { op := &request.Operation{ Name: opDeleteCloudFrontOriginAccessIdentity, HTTPMethod: "DELETE", HTTPPath: "/2016-09-29/origin-access-identity/cloudfront/{Id}", } if input == nil { input = &DeleteCloudFrontOriginAccessIdentityInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteCloudFrontOriginAccessIdentityOutput{} req.Data = output return } // DeleteCloudFrontOriginAccessIdentity API operation for Amazon CloudFront. // // Delete an origin access identity. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation DeleteCloudFrontOriginAccessIdentity for usage and error information. // // Returned Error Codes: // * AccessDenied // Access denied. // // * InvalidIfMatchVersion // The If-Match version is missing or not valid for the distribution. // // * NoSuchCloudFrontOriginAccessIdentity // The specified origin access identity does not exist. // // * PreconditionFailed // The precondition given in one or more of the request-header fields evaluated // to false. // // * OriginAccessIdentityInUse // func (c *CloudFront) DeleteCloudFrontOriginAccessIdentity(input *DeleteCloudFrontOriginAccessIdentityInput) (*DeleteCloudFrontOriginAccessIdentityOutput, error) { req, out := c.DeleteCloudFrontOriginAccessIdentityRequest(input) err := req.Send() return out, err } const opDeleteDistribution = "DeleteDistribution2016_09_29" // DeleteDistributionRequest generates a "aws/request.Request" representing the // client's request for the DeleteDistribution operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDistribution for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDistribution method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDistributionRequest method. // req, resp := client.DeleteDistributionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) DeleteDistributionRequest(input *DeleteDistributionInput) (req *request.Request, output *DeleteDistributionOutput) { op := &request.Operation{ Name: opDeleteDistribution, HTTPMethod: "DELETE", HTTPPath: "/2016-09-29/distribution/{Id}", } if input == nil { input = &DeleteDistributionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteDistributionOutput{} req.Data = output return } // DeleteDistribution API operation for Amazon CloudFront. // // Delete a distribution. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation DeleteDistribution for usage and error information. // // Returned Error Codes: // * AccessDenied // Access denied. // // * DistributionNotDisabled // // * InvalidIfMatchVersion // The If-Match version is missing or not valid for the distribution. // // * NoSuchDistribution // The specified distribution does not exist. // // * PreconditionFailed // The precondition given in one or more of the request-header fields evaluated // to false. // func (c *CloudFront) DeleteDistribution(input *DeleteDistributionInput) (*DeleteDistributionOutput, error) { req, out := c.DeleteDistributionRequest(input) err := req.Send() return out, err } const opDeleteStreamingDistribution = "DeleteStreamingDistribution2016_09_29" // DeleteStreamingDistributionRequest generates a "aws/request.Request" representing the // client's request for the DeleteStreamingDistribution operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteStreamingDistribution for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteStreamingDistribution method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteStreamingDistributionRequest method. // req, resp := client.DeleteStreamingDistributionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) DeleteStreamingDistributionRequest(input *DeleteStreamingDistributionInput) (req *request.Request, output *DeleteStreamingDistributionOutput) { op := &request.Operation{ Name: opDeleteStreamingDistribution, HTTPMethod: "DELETE", HTTPPath: "/2016-09-29/streaming-distribution/{Id}", } if input == nil { input = &DeleteStreamingDistributionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteStreamingDistributionOutput{} req.Data = output return } // DeleteStreamingDistribution API operation for Amazon CloudFront. // // Delete a streaming distribution. To delete an RTMP distribution using the // CloudFront API, perform the following steps. // // To delete an RTMP distribution using the CloudFront API: // // Disable the RTMP distribution. // // Submit a GET Streaming Distribution Config request to get the current configuration // and the Etag header for the distribution. // // Update the XML document that was returned in the response to your GET Streaming // Distribution Config request to change the value of Enabled to false. // // Submit a PUT Streaming Distribution Config request to update the configuration // for your distribution. In the request body, include the XML document that // you updated in Step 3. Then set the value of the HTTP If-Match header to // the value of the ETag header that CloudFront returned when you submitted // the GET Streaming Distribution Config request in Step 2. // // Review the response to the PUT Streaming Distribution Config request to confirm // that the distribution was successfully disabled. // // Submit a GET Streaming Distribution Config request to confirm that your changes // have propagated. When propagation is complete, the value of Status is Deployed. // // Submit a DELETE Streaming Distribution request. Set the value of the HTTP // If-Match header to the value of the ETag header that CloudFront returned // when you submitted the GET Streaming Distribution Config request in Step // 2. // // Review the response to your DELETE Streaming Distribution request to confirm // that the distribution was successfully deleted. // // For information about deleting a distribution using the CloudFront console, // see Deleting a Distribution (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/HowToDeleteDistribution.html) // in the Amazon CloudFront Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation DeleteStreamingDistribution for usage and error information. // // Returned Error Codes: // * AccessDenied // Access denied. // // * StreamingDistributionNotDisabled // // * InvalidIfMatchVersion // The If-Match version is missing or not valid for the distribution. // // * NoSuchStreamingDistribution // The specified streaming distribution does not exist. // // * PreconditionFailed // The precondition given in one or more of the request-header fields evaluated // to false. // func (c *CloudFront) DeleteStreamingDistribution(input *DeleteStreamingDistributionInput) (*DeleteStreamingDistributionOutput, error) { req, out := c.DeleteStreamingDistributionRequest(input) err := req.Send() return out, err } const opGetCloudFrontOriginAccessIdentity = "GetCloudFrontOriginAccessIdentity2016_09_29" // GetCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the // client's request for the GetCloudFrontOriginAccessIdentity operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetCloudFrontOriginAccessIdentity for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetCloudFrontOriginAccessIdentity method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetCloudFrontOriginAccessIdentityRequest method. // req, resp := client.GetCloudFrontOriginAccessIdentityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) GetCloudFrontOriginAccessIdentityRequest(input *GetCloudFrontOriginAccessIdentityInput) (req *request.Request, output *GetCloudFrontOriginAccessIdentityOutput) { op := &request.Operation{ Name: opGetCloudFrontOriginAccessIdentity, HTTPMethod: "GET", HTTPPath: "/2016-09-29/origin-access-identity/cloudfront/{Id}", } if input == nil { input = &GetCloudFrontOriginAccessIdentityInput{} } req = c.newRequest(op, input, output) output = &GetCloudFrontOriginAccessIdentityOutput{} req.Data = output return } // GetCloudFrontOriginAccessIdentity API operation for Amazon CloudFront. // // Get the information about an origin access identity. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation GetCloudFrontOriginAccessIdentity for usage and error information. // // Returned Error Codes: // * NoSuchCloudFrontOriginAccessIdentity // The specified origin access identity does not exist. // // * AccessDenied // Access denied. // func (c *CloudFront) GetCloudFrontOriginAccessIdentity(input *GetCloudFrontOriginAccessIdentityInput) (*GetCloudFrontOriginAccessIdentityOutput, error) { req, out := c.GetCloudFrontOriginAccessIdentityRequest(input) err := req.Send() return out, err } const opGetCloudFrontOriginAccessIdentityConfig = "GetCloudFrontOriginAccessIdentityConfig2016_09_29" // GetCloudFrontOriginAccessIdentityConfigRequest generates a "aws/request.Request" representing the // client's request for the GetCloudFrontOriginAccessIdentityConfig operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetCloudFrontOriginAccessIdentityConfig for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetCloudFrontOriginAccessIdentityConfig method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetCloudFrontOriginAccessIdentityConfigRequest method. // req, resp := client.GetCloudFrontOriginAccessIdentityConfigRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) GetCloudFrontOriginAccessIdentityConfigRequest(input *GetCloudFrontOriginAccessIdentityConfigInput) (req *request.Request, output *GetCloudFrontOriginAccessIdentityConfigOutput) { op := &request.Operation{ Name: opGetCloudFrontOriginAccessIdentityConfig, HTTPMethod: "GET", HTTPPath: "/2016-09-29/origin-access-identity/cloudfront/{Id}/config", } if input == nil { input = &GetCloudFrontOriginAccessIdentityConfigInput{} } req = c.newRequest(op, input, output) output = &GetCloudFrontOriginAccessIdentityConfigOutput{} req.Data = output return } // GetCloudFrontOriginAccessIdentityConfig API operation for Amazon CloudFront. // // Get the configuration information about an origin access identity. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation GetCloudFrontOriginAccessIdentityConfig for usage and error information. // // Returned Error Codes: // * NoSuchCloudFrontOriginAccessIdentity // The specified origin access identity does not exist. // // * AccessDenied // Access denied. // func (c *CloudFront) GetCloudFrontOriginAccessIdentityConfig(input *GetCloudFrontOriginAccessIdentityConfigInput) (*GetCloudFrontOriginAccessIdentityConfigOutput, error) { req, out := c.GetCloudFrontOriginAccessIdentityConfigRequest(input) err := req.Send() return out, err } const opGetDistribution = "GetDistribution2016_09_29" // GetDistributionRequest generates a "aws/request.Request" representing the // client's request for the GetDistribution operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDistribution for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDistribution method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDistributionRequest method. // req, resp := client.GetDistributionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) GetDistributionRequest(input *GetDistributionInput) (req *request.Request, output *GetDistributionOutput) { op := &request.Operation{ Name: opGetDistribution, HTTPMethod: "GET", HTTPPath: "/2016-09-29/distribution/{Id}", } if input == nil { input = &GetDistributionInput{} } req = c.newRequest(op, input, output) output = &GetDistributionOutput{} req.Data = output return } // GetDistribution API operation for Amazon CloudFront. // // Get the information about a distribution. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation GetDistribution for usage and error information. // // Returned Error Codes: // * NoSuchDistribution // The specified distribution does not exist. // // * AccessDenied // Access denied. // func (c *CloudFront) GetDistribution(input *GetDistributionInput) (*GetDistributionOutput, error) { req, out := c.GetDistributionRequest(input) err := req.Send() return out, err } const opGetDistributionConfig = "GetDistributionConfig2016_09_29" // GetDistributionConfigRequest generates a "aws/request.Request" representing the // client's request for the GetDistributionConfig operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDistributionConfig for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDistributionConfig method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDistributionConfigRequest method. // req, resp := client.GetDistributionConfigRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) GetDistributionConfigRequest(input *GetDistributionConfigInput) (req *request.Request, output *GetDistributionConfigOutput) { op := &request.Operation{ Name: opGetDistributionConfig, HTTPMethod: "GET", HTTPPath: "/2016-09-29/distribution/{Id}/config", } if input == nil { input = &GetDistributionConfigInput{} } req = c.newRequest(op, input, output) output = &GetDistributionConfigOutput{} req.Data = output return } // GetDistributionConfig API operation for Amazon CloudFront. // // Get the configuration information about a distribution. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation GetDistributionConfig for usage and error information. // // Returned Error Codes: // * NoSuchDistribution // The specified distribution does not exist. // // * AccessDenied // Access denied. // func (c *CloudFront) GetDistributionConfig(input *GetDistributionConfigInput) (*GetDistributionConfigOutput, error) { req, out := c.GetDistributionConfigRequest(input) err := req.Send() return out, err } const opGetInvalidation = "GetInvalidation2016_09_29" // GetInvalidationRequest generates a "aws/request.Request" representing the // client's request for the GetInvalidation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetInvalidation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetInvalidation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetInvalidationRequest method. // req, resp := client.GetInvalidationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) GetInvalidationRequest(input *GetInvalidationInput) (req *request.Request, output *GetInvalidationOutput) { op := &request.Operation{ Name: opGetInvalidation, HTTPMethod: "GET", HTTPPath: "/2016-09-29/distribution/{DistributionId}/invalidation/{Id}", } if input == nil { input = &GetInvalidationInput{} } req = c.newRequest(op, input, output) output = &GetInvalidationOutput{} req.Data = output return } // GetInvalidation API operation for Amazon CloudFront. // // Get the information about an invalidation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation GetInvalidation for usage and error information. // // Returned Error Codes: // * NoSuchInvalidation // The specified invalidation does not exist. // // * NoSuchDistribution // The specified distribution does not exist. // // * AccessDenied // Access denied. // func (c *CloudFront) GetInvalidation(input *GetInvalidationInput) (*GetInvalidationOutput, error) { req, out := c.GetInvalidationRequest(input) err := req.Send() return out, err } const opGetStreamingDistribution = "GetStreamingDistribution2016_09_29" // GetStreamingDistributionRequest generates a "aws/request.Request" representing the // client's request for the GetStreamingDistribution operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetStreamingDistribution for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetStreamingDistribution method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetStreamingDistributionRequest method. // req, resp := client.GetStreamingDistributionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) GetStreamingDistributionRequest(input *GetStreamingDistributionInput) (req *request.Request, output *GetStreamingDistributionOutput) { op := &request.Operation{ Name: opGetStreamingDistribution, HTTPMethod: "GET", HTTPPath: "/2016-09-29/streaming-distribution/{Id}", } if input == nil { input = &GetStreamingDistributionInput{} } req = c.newRequest(op, input, output) output = &GetStreamingDistributionOutput{} req.Data = output return } // GetStreamingDistribution API operation for Amazon CloudFront. // // Gets information about a specified RTMP distribution, including the distribution // configuration. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation GetStreamingDistribution for usage and error information. // // Returned Error Codes: // * NoSuchStreamingDistribution // The specified streaming distribution does not exist. // // * AccessDenied // Access denied. // func (c *CloudFront) GetStreamingDistribution(input *GetStreamingDistributionInput) (*GetStreamingDistributionOutput, error) { req, out := c.GetStreamingDistributionRequest(input) err := req.Send() return out, err } const opGetStreamingDistributionConfig = "GetStreamingDistributionConfig2016_09_29" // GetStreamingDistributionConfigRequest generates a "aws/request.Request" representing the // client's request for the GetStreamingDistributionConfig operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetStreamingDistributionConfig for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetStreamingDistributionConfig method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetStreamingDistributionConfigRequest method. // req, resp := client.GetStreamingDistributionConfigRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) GetStreamingDistributionConfigRequest(input *GetStreamingDistributionConfigInput) (req *request.Request, output *GetStreamingDistributionConfigOutput) { op := &request.Operation{ Name: opGetStreamingDistributionConfig, HTTPMethod: "GET", HTTPPath: "/2016-09-29/streaming-distribution/{Id}/config", } if input == nil { input = &GetStreamingDistributionConfigInput{} } req = c.newRequest(op, input, output) output = &GetStreamingDistributionConfigOutput{} req.Data = output return } // GetStreamingDistributionConfig API operation for Amazon CloudFront. // // Get the configuration information about a streaming distribution. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation GetStreamingDistributionConfig for usage and error information. // // Returned Error Codes: // * NoSuchStreamingDistribution // The specified streaming distribution does not exist. // // * AccessDenied // Access denied. // func (c *CloudFront) GetStreamingDistributionConfig(input *GetStreamingDistributionConfigInput) (*GetStreamingDistributionConfigOutput, error) { req, out := c.GetStreamingDistributionConfigRequest(input) err := req.Send() return out, err } const opListCloudFrontOriginAccessIdentities = "ListCloudFrontOriginAccessIdentities2016_09_29" // ListCloudFrontOriginAccessIdentitiesRequest generates a "aws/request.Request" representing the // client's request for the ListCloudFrontOriginAccessIdentities operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListCloudFrontOriginAccessIdentities for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListCloudFrontOriginAccessIdentities method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListCloudFrontOriginAccessIdentitiesRequest method. // req, resp := client.ListCloudFrontOriginAccessIdentitiesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) ListCloudFrontOriginAccessIdentitiesRequest(input *ListCloudFrontOriginAccessIdentitiesInput) (req *request.Request, output *ListCloudFrontOriginAccessIdentitiesOutput) { op := &request.Operation{ Name: opListCloudFrontOriginAccessIdentities, HTTPMethod: "GET", HTTPPath: "/2016-09-29/origin-access-identity/cloudfront", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"CloudFrontOriginAccessIdentityList.NextMarker"}, LimitToken: "MaxItems", TruncationToken: "CloudFrontOriginAccessIdentityList.IsTruncated", }, } if input == nil { input = &ListCloudFrontOriginAccessIdentitiesInput{} } req = c.newRequest(op, input, output) output = &ListCloudFrontOriginAccessIdentitiesOutput{} req.Data = output return } // ListCloudFrontOriginAccessIdentities API operation for Amazon CloudFront. // // Lists origin access identities. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation ListCloudFrontOriginAccessIdentities for usage and error information. // // Returned Error Codes: // * InvalidArgument // The argument is invalid. // func (c *CloudFront) ListCloudFrontOriginAccessIdentities(input *ListCloudFrontOriginAccessIdentitiesInput) (*ListCloudFrontOriginAccessIdentitiesOutput, error) { req, out := c.ListCloudFrontOriginAccessIdentitiesRequest(input) err := req.Send() return out, err } // ListCloudFrontOriginAccessIdentitiesPages iterates over the pages of a ListCloudFrontOriginAccessIdentities operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListCloudFrontOriginAccessIdentities method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListCloudFrontOriginAccessIdentities operation. // pageNum := 0 // err := client.ListCloudFrontOriginAccessIdentitiesPages(params, // func(page *ListCloudFrontOriginAccessIdentitiesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CloudFront) ListCloudFrontOriginAccessIdentitiesPages(input *ListCloudFrontOriginAccessIdentitiesInput, fn func(p *ListCloudFrontOriginAccessIdentitiesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListCloudFrontOriginAccessIdentitiesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListCloudFrontOriginAccessIdentitiesOutput), lastPage) }) } const opListDistributions = "ListDistributions2016_09_29" // ListDistributionsRequest generates a "aws/request.Request" representing the // client's request for the ListDistributions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDistributions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDistributions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDistributionsRequest method. // req, resp := client.ListDistributionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) ListDistributionsRequest(input *ListDistributionsInput) (req *request.Request, output *ListDistributionsOutput) { op := &request.Operation{ Name: opListDistributions, HTTPMethod: "GET", HTTPPath: "/2016-09-29/distribution", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"DistributionList.NextMarker"}, LimitToken: "MaxItems", TruncationToken: "DistributionList.IsTruncated", }, } if input == nil { input = &ListDistributionsInput{} } req = c.newRequest(op, input, output) output = &ListDistributionsOutput{} req.Data = output return } // ListDistributions API operation for Amazon CloudFront. // // List distributions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation ListDistributions for usage and error information. // // Returned Error Codes: // * InvalidArgument // The argument is invalid. // func (c *CloudFront) ListDistributions(input *ListDistributionsInput) (*ListDistributionsOutput, error) { req, out := c.ListDistributionsRequest(input) err := req.Send() return out, err } // ListDistributionsPages iterates over the pages of a ListDistributions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListDistributions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListDistributions operation. // pageNum := 0 // err := client.ListDistributionsPages(params, // func(page *ListDistributionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CloudFront) ListDistributionsPages(input *ListDistributionsInput, fn func(p *ListDistributionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListDistributionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListDistributionsOutput), lastPage) }) } const opListDistributionsByWebACLId = "ListDistributionsByWebACLId2016_09_29" // ListDistributionsByWebACLIdRequest generates a "aws/request.Request" representing the // client's request for the ListDistributionsByWebACLId operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDistributionsByWebACLId for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDistributionsByWebACLId method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDistributionsByWebACLIdRequest method. // req, resp := client.ListDistributionsByWebACLIdRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) ListDistributionsByWebACLIdRequest(input *ListDistributionsByWebACLIdInput) (req *request.Request, output *ListDistributionsByWebACLIdOutput) { op := &request.Operation{ Name: opListDistributionsByWebACLId, HTTPMethod: "GET", HTTPPath: "/2016-09-29/distributionsByWebACLId/{WebACLId}", } if input == nil { input = &ListDistributionsByWebACLIdInput{} } req = c.newRequest(op, input, output) output = &ListDistributionsByWebACLIdOutput{} req.Data = output return } // ListDistributionsByWebACLId API operation for Amazon CloudFront. // // List the distributions that are associated with a specified AWS WAF web ACL. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation ListDistributionsByWebACLId for usage and error information. // // Returned Error Codes: // * InvalidArgument // The argument is invalid. // // * InvalidWebACLId // func (c *CloudFront) ListDistributionsByWebACLId(input *ListDistributionsByWebACLIdInput) (*ListDistributionsByWebACLIdOutput, error) { req, out := c.ListDistributionsByWebACLIdRequest(input) err := req.Send() return out, err } const opListInvalidations = "ListInvalidations2016_09_29" // ListInvalidationsRequest generates a "aws/request.Request" representing the // client's request for the ListInvalidations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListInvalidations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListInvalidations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListInvalidationsRequest method. // req, resp := client.ListInvalidationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) ListInvalidationsRequest(input *ListInvalidationsInput) (req *request.Request, output *ListInvalidationsOutput) { op := &request.Operation{ Name: opListInvalidations, HTTPMethod: "GET", HTTPPath: "/2016-09-29/distribution/{DistributionId}/invalidation", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"InvalidationList.NextMarker"}, LimitToken: "MaxItems", TruncationToken: "InvalidationList.IsTruncated", }, } if input == nil { input = &ListInvalidationsInput{} } req = c.newRequest(op, input, output) output = &ListInvalidationsOutput{} req.Data = output return } // ListInvalidations API operation for Amazon CloudFront. // // Lists invalidation batches. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation ListInvalidations for usage and error information. // // Returned Error Codes: // * InvalidArgument // The argument is invalid. // // * NoSuchDistribution // The specified distribution does not exist. // // * AccessDenied // Access denied. // func (c *CloudFront) ListInvalidations(input *ListInvalidationsInput) (*ListInvalidationsOutput, error) { req, out := c.ListInvalidationsRequest(input) err := req.Send() return out, err } // ListInvalidationsPages iterates over the pages of a ListInvalidations operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListInvalidations method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListInvalidations operation. // pageNum := 0 // err := client.ListInvalidationsPages(params, // func(page *ListInvalidationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CloudFront) ListInvalidationsPages(input *ListInvalidationsInput, fn func(p *ListInvalidationsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListInvalidationsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListInvalidationsOutput), lastPage) }) } const opListStreamingDistributions = "ListStreamingDistributions2016_09_29" // ListStreamingDistributionsRequest generates a "aws/request.Request" representing the // client's request for the ListStreamingDistributions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListStreamingDistributions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListStreamingDistributions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListStreamingDistributionsRequest method. // req, resp := client.ListStreamingDistributionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) ListStreamingDistributionsRequest(input *ListStreamingDistributionsInput) (req *request.Request, output *ListStreamingDistributionsOutput) { op := &request.Operation{ Name: opListStreamingDistributions, HTTPMethod: "GET", HTTPPath: "/2016-09-29/streaming-distribution", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"StreamingDistributionList.NextMarker"}, LimitToken: "MaxItems", TruncationToken: "StreamingDistributionList.IsTruncated", }, } if input == nil { input = &ListStreamingDistributionsInput{} } req = c.newRequest(op, input, output) output = &ListStreamingDistributionsOutput{} req.Data = output return } // ListStreamingDistributions API operation for Amazon CloudFront. // // List streaming distributions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation ListStreamingDistributions for usage and error information. // // Returned Error Codes: // * InvalidArgument // The argument is invalid. // func (c *CloudFront) ListStreamingDistributions(input *ListStreamingDistributionsInput) (*ListStreamingDistributionsOutput, error) { req, out := c.ListStreamingDistributionsRequest(input) err := req.Send() return out, err } // ListStreamingDistributionsPages iterates over the pages of a ListStreamingDistributions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListStreamingDistributions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListStreamingDistributions operation. // pageNum := 0 // err := client.ListStreamingDistributionsPages(params, // func(page *ListStreamingDistributionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CloudFront) ListStreamingDistributionsPages(input *ListStreamingDistributionsInput, fn func(p *ListStreamingDistributionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListStreamingDistributionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListStreamingDistributionsOutput), lastPage) }) } const opListTagsForResource = "ListTagsForResource2016_09_29" // ListTagsForResourceRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTagsForResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTagsForResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTagsForResourceRequest method. // req, resp := client.ListTagsForResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { op := &request.Operation{ Name: opListTagsForResource, HTTPMethod: "GET", HTTPPath: "/2016-09-29/tagging", } if input == nil { input = &ListTagsForResourceInput{} } req = c.newRequest(op, input, output) output = &ListTagsForResourceOutput{} req.Data = output return } // ListTagsForResource API operation for Amazon CloudFront. // // List tags for a CloudFront resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation ListTagsForResource for usage and error information. // // Returned Error Codes: // * AccessDenied // Access denied. // // * InvalidArgument // The argument is invalid. // // * InvalidTagging // // * NoSuchResource // func (c *CloudFront) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { req, out := c.ListTagsForResourceRequest(input) err := req.Send() return out, err } const opTagResource = "TagResource2016_09_29" // TagResourceRequest generates a "aws/request.Request" representing the // client's request for the TagResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See TagResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the TagResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the TagResourceRequest method. // req, resp := client.TagResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { op := &request.Operation{ Name: opTagResource, HTTPMethod: "POST", HTTPPath: "/2016-09-29/tagging?Operation=Tag", } if input == nil { input = &TagResourceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &TagResourceOutput{} req.Data = output return } // TagResource API operation for Amazon CloudFront. // // Add tags to a CloudFront resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation TagResource for usage and error information. // // Returned Error Codes: // * AccessDenied // Access denied. // // * InvalidArgument // The argument is invalid. // // * InvalidTagging // // * NoSuchResource // func (c *CloudFront) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { req, out := c.TagResourceRequest(input) err := req.Send() return out, err } const opUntagResource = "UntagResource2016_09_29" // UntagResourceRequest generates a "aws/request.Request" representing the // client's request for the UntagResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UntagResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UntagResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UntagResourceRequest method. // req, resp := client.UntagResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { op := &request.Operation{ Name: opUntagResource, HTTPMethod: "POST", HTTPPath: "/2016-09-29/tagging?Operation=Untag", } if input == nil { input = &UntagResourceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UntagResourceOutput{} req.Data = output return } // UntagResource API operation for Amazon CloudFront. // // Remove tags from a CloudFront resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation UntagResource for usage and error information. // // Returned Error Codes: // * AccessDenied // Access denied. // // * InvalidArgument // The argument is invalid. // // * InvalidTagging // // * NoSuchResource // func (c *CloudFront) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { req, out := c.UntagResourceRequest(input) err := req.Send() return out, err } const opUpdateCloudFrontOriginAccessIdentity = "UpdateCloudFrontOriginAccessIdentity2016_09_29" // UpdateCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the // client's request for the UpdateCloudFrontOriginAccessIdentity operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateCloudFrontOriginAccessIdentity for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateCloudFrontOriginAccessIdentity method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateCloudFrontOriginAccessIdentityRequest method. // req, resp := client.UpdateCloudFrontOriginAccessIdentityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) UpdateCloudFrontOriginAccessIdentityRequest(input *UpdateCloudFrontOriginAccessIdentityInput) (req *request.Request, output *UpdateCloudFrontOriginAccessIdentityOutput) { op := &request.Operation{ Name: opUpdateCloudFrontOriginAccessIdentity, HTTPMethod: "PUT", HTTPPath: "/2016-09-29/origin-access-identity/cloudfront/{Id}/config", } if input == nil { input = &UpdateCloudFrontOriginAccessIdentityInput{} } req = c.newRequest(op, input, output) output = &UpdateCloudFrontOriginAccessIdentityOutput{} req.Data = output return } // UpdateCloudFrontOriginAccessIdentity API operation for Amazon CloudFront. // // Update an origin access identity. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation UpdateCloudFrontOriginAccessIdentity for usage and error information. // // Returned Error Codes: // * AccessDenied // Access denied. // // * IllegalUpdate // Origin and CallerReference cannot be updated. // // * InvalidIfMatchVersion // The If-Match version is missing or not valid for the distribution. // // * MissingBody // This operation requires a body. Ensure that the body is present and the Content-Type // header is set. // // * NoSuchCloudFrontOriginAccessIdentity // The specified origin access identity does not exist. // // * PreconditionFailed // The precondition given in one or more of the request-header fields evaluated // to false. // // * InvalidArgument // The argument is invalid. // // * InconsistentQuantities // The value of Quantity and the size of Items do not match. // func (c *CloudFront) UpdateCloudFrontOriginAccessIdentity(input *UpdateCloudFrontOriginAccessIdentityInput) (*UpdateCloudFrontOriginAccessIdentityOutput, error) { req, out := c.UpdateCloudFrontOriginAccessIdentityRequest(input) err := req.Send() return out, err } const opUpdateDistribution = "UpdateDistribution2016_09_29" // UpdateDistributionRequest generates a "aws/request.Request" representing the // client's request for the UpdateDistribution operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateDistribution for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateDistribution method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateDistributionRequest method. // req, resp := client.UpdateDistributionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) UpdateDistributionRequest(input *UpdateDistributionInput) (req *request.Request, output *UpdateDistributionOutput) { op := &request.Operation{ Name: opUpdateDistribution, HTTPMethod: "PUT", HTTPPath: "/2016-09-29/distribution/{Id}/config", } if input == nil { input = &UpdateDistributionInput{} } req = c.newRequest(op, input, output) output = &UpdateDistributionOutput{} req.Data = output return } // UpdateDistribution API operation for Amazon CloudFront. // // Update a distribution. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation UpdateDistribution for usage and error information. // // Returned Error Codes: // * AccessDenied // Access denied. // // * CNAMEAlreadyExists // // * IllegalUpdate // Origin and CallerReference cannot be updated. // // * InvalidIfMatchVersion // The If-Match version is missing or not valid for the distribution. // // * MissingBody // This operation requires a body. Ensure that the body is present and the Content-Type // header is set. // // * NoSuchDistribution // The specified distribution does not exist. // // * PreconditionFailed // The precondition given in one or more of the request-header fields evaluated // to false. // // * TooManyDistributionCNAMEs // Your request contains more CNAMEs than are allowed per distribution. // // * InvalidDefaultRootObject // The default root object file name is too big or contains an invalid character. // // * InvalidRelativePath // The relative path is too big, is not URL-encoded, or does not begin with // a slash (/). // // * InvalidErrorCode // // * InvalidResponseCode // // * InvalidArgument // The argument is invalid. // // * InvalidOriginAccessIdentity // The origin access identity is not valid or doesn't exist. // // * TooManyTrustedSigners // Your request contains more trusted signers than are allowed per distribution. // // * TrustedSignerDoesNotExist // One or more of your trusted signers do not exist. // // * InvalidViewerCertificate // // * InvalidMinimumProtocolVersion // // * InvalidRequiredProtocol // This operation requires the HTTPS protocol. Ensure that you specify the HTTPS // protocol in your request, or omit the RequiredProtocols element from your // distribution configuration. // // * NoSuchOrigin // No origin exists with the specified Origin Id. // // * TooManyOrigins // You cannot create more origins for the distribution. // // * TooManyCacheBehaviors // You cannot create more cache behaviors for the distribution. // // * TooManyCookieNamesInWhiteList // Your request contains more cookie names in the whitelist than are allowed // per cache behavior. // // * InvalidForwardCookies // Your request contains forward cookies option which doesn't match with the // expectation for the whitelisted list of cookie names. Either list of cookie // names has been specified when not allowed or list of cookie names is missing // when expected. // // * TooManyHeadersInForwardedValues // // * InvalidHeadersForS3Origin // // * InconsistentQuantities // The value of Quantity and the size of Items do not match. // // * TooManyCertificates // You cannot create anymore custom SSL/TLS certificates. // // * InvalidLocationCode // // * InvalidGeoRestrictionParameter // // * InvalidTTLOrder // // * InvalidWebACLId // // * TooManyOriginCustomHeaders // // * TooManyQueryStringParameters // // * InvalidQueryStringParameters // func (c *CloudFront) UpdateDistribution(input *UpdateDistributionInput) (*UpdateDistributionOutput, error) { req, out := c.UpdateDistributionRequest(input) err := req.Send() return out, err } const opUpdateStreamingDistribution = "UpdateStreamingDistribution2016_09_29" // UpdateStreamingDistributionRequest generates a "aws/request.Request" representing the // client's request for the UpdateStreamingDistribution operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateStreamingDistribution for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateStreamingDistribution method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateStreamingDistributionRequest method. // req, resp := client.UpdateStreamingDistributionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudFront) UpdateStreamingDistributionRequest(input *UpdateStreamingDistributionInput) (req *request.Request, output *UpdateStreamingDistributionOutput) { op := &request.Operation{ Name: opUpdateStreamingDistribution, HTTPMethod: "PUT", HTTPPath: "/2016-09-29/streaming-distribution/{Id}/config", } if input == nil { input = &UpdateStreamingDistributionInput{} } req = c.newRequest(op, input, output) output = &UpdateStreamingDistributionOutput{} req.Data = output return } // UpdateStreamingDistribution API operation for Amazon CloudFront. // // Update a streaming distribution. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudFront's // API operation UpdateStreamingDistribution for usage and error information. // // Returned Error Codes: // * AccessDenied // Access denied. // // * CNAMEAlreadyExists // // * IllegalUpdate // Origin and CallerReference cannot be updated. // // * InvalidIfMatchVersion // The If-Match version is missing or not valid for the distribution. // // * MissingBody // This operation requires a body. Ensure that the body is present and the Content-Type // header is set. // // * NoSuchStreamingDistribution // The specified streaming distribution does not exist. // // * PreconditionFailed // The precondition given in one or more of the request-header fields evaluated // to false. // // * TooManyStreamingDistributionCNAMEs // // * InvalidArgument // The argument is invalid. // // * InvalidOriginAccessIdentity // The origin access identity is not valid or doesn't exist. // // * TooManyTrustedSigners // Your request contains more trusted signers than are allowed per distribution. // // * TrustedSignerDoesNotExist // One or more of your trusted signers do not exist. // // * InconsistentQuantities // The value of Quantity and the size of Items do not match. // func (c *CloudFront) UpdateStreamingDistribution(input *UpdateStreamingDistributionInput) (*UpdateStreamingDistributionOutput, error) { req, out := c.UpdateStreamingDistributionRequest(input) err := req.Send() return out, err } // A complex type that lists the AWS accounts, if any, that you included in // the TrustedSigners complex type for this distribution. These are the accounts // that you want to allow to create signed URLs for private content. // // The Signer complex type lists the AWS account number of the trusted signer // or self if the signer is the AWS account that created the distribution. The // Signer element also includes the IDs of any active CloudFront key pairs that // are associated with the trusted signer's AWS account. If no KeyPairId element // appears for a Signer, that signer can't create signed URLs. // // For more information, see Serving Private Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) // in the Amazon CloudFront Developer Guide. type ActiveTrustedSigners struct { _ struct{} `type:"structure"` // Enabled is true if any of the AWS accounts listed in the TrustedSigners complex // type for this RTMP distribution have active CloudFront key pairs. If not, // Enabled is false. // // For more information, see ActiveTrustedSigners. // // Enabled is a required field Enabled *bool `type:"boolean" required:"true"` // A complex type that contains one Signer complex type for each trusted signer // that is specified in the TrustedSigners complex type. // // For more information, see ActiveTrustedSigners. Items []*Signer `locationNameList:"Signer" type:"list"` // A complex type that contains one Signer complex type for each trusted signer // specified in the TrustedSigners complex type. // // For more information, see ActiveTrustedSigners. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s ActiveTrustedSigners) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActiveTrustedSigners) GoString() string { return s.String() } // A complex type that contains information about CNAMEs (alternate domain names), // if any, for this distribution. type Aliases struct { _ struct{} `type:"structure"` // A complex type that contains the CNAME aliases, if any, that you want to // associate with this distribution. Items []*string `locationNameList:"CNAME" type:"list"` // The number of CNAME aliases, if any, that you want to associate with this // distribution. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s Aliases) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Aliases) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Aliases) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Aliases"} if s.Quantity == nil { invalidParams.Add(request.NewErrParamRequired("Quantity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that controls which HTTP methods CloudFront processes and // forwards to your Amazon S3 bucket or your custom origin. There are three // choices: // // * CloudFront forwards only GET and HEAD requests. // // * CloudFront forwards only GET, HEAD, and OPTIONS requests. // // * CloudFront forwards GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE // requests. // // If you pick the third choice, you may need to restrict access to your Amazon // S3 bucket or to your custom origin so users can't perform operations that // you don't want them to. For example, you might not want users to have permissions // to delete objects from your origin. type AllowedMethods struct { _ struct{} `type:"structure"` // A complex type that controls whether CloudFront caches the response to requests // using the specified HTTP methods. There are two choices: // // * CloudFront caches responses to GET and HEAD requests. // // * CloudFront caches responses to GET, HEAD, and OPTIONS requests. // // If you pick the second choice for your Amazon S3 Origin, you may need to // forward Access-Control-Request-Method, Access-Control-Request-Headers, and // Origin headers for the responses to be cached correctly. CachedMethods *CachedMethods `type:"structure"` // A complex type that contains the HTTP methods that you want CloudFront to // process and forward to your origin. // // Items is a required field Items []*string `locationNameList:"Method" type:"list" required:"true"` // The number of HTTP methods that you want CloudFront to forward to your origin. // Valid values are 2 (for GET and HEAD requests), 3 (for GET, HEAD, and OPTIONS // requests) and 7 (for GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests). // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s AllowedMethods) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AllowedMethods) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AllowedMethods) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AllowedMethods"} if s.Items == nil { invalidParams.Add(request.NewErrParamRequired("Items")) } if s.Quantity == nil { invalidParams.Add(request.NewErrParamRequired("Quantity")) } if s.CachedMethods != nil { if err := s.CachedMethods.Validate(); err != nil { invalidParams.AddNested("CachedMethods", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that describes how CloudFront processes requests. // // You must create at least as many cache behaviors (including the default cache // behavior) as you have origins if you want CloudFront to distribute objects // from all of the origins. Each cache behavior specifies the one origin from // which you want CloudFront to get objects. If you have two origins and only // the default cache behavior, the default cache behavior will cause CloudFront // to get objects from one of the origins, but the other origin is never used. // // For the current limit on the number of cache behaviors that you can add to // a distribution, see Amazon CloudFront Limits (http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_cloudfront) // in the AWS General Reference. // // If you don't want to specify any cache behaviors, include only an empty CacheBehaviors // element. Don't include an empty CacheBehavior element, or CloudFront returns // a MalformedXML error. // // To delete all cache behaviors in an existing distribution, update the distribution // configuration and include only an empty CacheBehaviors element. // // To add, change, or remove one or more cache behaviors, update the distribution // configuration and specify all of the cache behaviors that you want to include // in the updated distribution. // // For more information about cache behaviors, see Cache Behaviors (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesCacheBehavior) // in the Amazon CloudFront Developer Guide. type CacheBehavior struct { _ struct{} `type:"structure"` // A complex type that controls which HTTP methods CloudFront processes and // forwards to your Amazon S3 bucket or your custom origin. There are three // choices: // // * CloudFront forwards only GET and HEAD requests. // // * CloudFront forwards only GET, HEAD, and OPTIONS requests. // // * CloudFront forwards GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE // requests. // // If you pick the third choice, you may need to restrict access to your Amazon // S3 bucket or to your custom origin so users can't perform operations that // you don't want them to. For example, you might not want users to have permissions // to delete objects from your origin. AllowedMethods *AllowedMethods `type:"structure"` // Whether you want CloudFront to automatically compress certain files for this // cache behavior. If so, specify true; if not, specify false. For more information, // see Serving Compressed Files (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/ServingCompressedFiles.html) // in the Amazon CloudFront Developer Guide. Compress *bool `type:"boolean"` // The default amount of time that you want objects to stay in CloudFront caches // before CloudFront forwards another request to your origin to determine whether // the object has been updated. The value that you specify applies only when // your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control // s-maxage, and Expires to objects. For more information, see Specifying How // Long Objects and Errors Stay in a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) // in the Amazon CloudFront Developer Guide. DefaultTTL *int64 `type:"long"` // A complex type that specifies how CloudFront handles query strings and cookies. // // ForwardedValues is a required field ForwardedValues *ForwardedValues `type:"structure" required:"true"` // The maximum amount of time that you want objects to stay in CloudFront caches // before CloudFront forwards another request to your origin to determine whether // the object has been updated. The value that you specify applies only when // your origin adds HTTP headers such as Cache-Control max-age, Cache-Control // s-maxage, and Expires to objects. For more information, see Specifying How // Long Objects and Errors Stay in a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) // in the Amazon CloudFront Developer Guide. MaxTTL *int64 `type:"long"` // The minimum amount of time that you want objects to stay in CloudFront caches // before CloudFront forwards another request to your origin to determine whether // the object has been updated. For more information, see Specifying How Long // Objects and Errors Stay in a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) // in the Amazon Amazon CloudFront Developer Guide. // // You must specify 0 for MinTTL if you configure CloudFront to forward all // headers to your origin (under Headers, if you specify 1 for Quantity and // * for Name). // // MinTTL is a required field MinTTL *int64 `type:"long" required:"true"` // The pattern (for example, images/*.jpg) that specifies which requests to // apply the behavior to. When CloudFront receives a viewer request, the requested // path is compared with path patterns in the order in which cache behaviors // are listed in the distribution. // // You can optionally include a slash (/) at the beginning of the path pattern. // For example, /images/*.jpg. CloudFront behavior is the same with or without // the leading /. // // The path pattern for the default cache behavior is * and cannot be changed. // If the request for an object does not match the path pattern for any cache // behaviors, CloudFront applies the behavior in the default cache behavior. // // For more information, see Path Pattern (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesPathPattern) // in the Amazon CloudFront Developer Guide. // // PathPattern is a required field PathPattern *string `type:"string" required:"true"` // Indicates whether you want to distribute media files in the Microsoft Smooth // Streaming format using the origin that is associated with this cache behavior. // If so, specify true; if not, specify false. If you specify true for SmoothStreaming, // you can still distribute other content using this cache behavior if the content // matches the value of PathPattern. SmoothStreaming *bool `type:"boolean"` // The value of ID for the origin that you want CloudFront to route requests // to when a request matches the path pattern either for a cache behavior or // for the default cache behavior. // // TargetOriginId is a required field TargetOriginId *string `type:"string" required:"true"` // A complex type that specifies the AWS accounts, if any, that you want to // allow to create signed URLs for private content. // // If you want to require signed URLs in requests for objects in the target // origin that match the PathPattern for this cache behavior, specify true for // Enabled, and specify the applicable values for Quantity and Items. For more // information, see Serving Private Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) // in the Amazon Amazon CloudFront Developer Guide. // // If you don't want to require signed URLs in requests for objects that match // PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. // // To add, change, or remove one or more trusted signers, change Enabled to // true (if it's currently false), change Quantity as applicable, and specify // all of the trusted signers that you want to include in the updated distribution. // // TrustedSigners is a required field TrustedSigners *TrustedSigners `type:"structure" required:"true"` // The protocol that viewers can use to access the files in the origin specified // by TargetOriginId when a request matches the path pattern in PathPattern. // You can specify the following options: // // * allow-all: Viewers can use HTTP or HTTPS. // // * redirect-to-https: If a viewer submits an HTTP request, CloudFront returns // an HTTP status code of 301 (Moved Permanently) to the viewer along with // the HTTPS URL. The viewer then resubmits the request using the new URL. // // // * https-only: If a viewer sends an HTTP request, CloudFront returns an // HTTP status code of 403 (Forbidden). // // For more information about requiring the HTTPS protocol, see Using an HTTPS // Connection to Access Your Objects (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html) // in the Amazon CloudFront Developer Guide. // // The only way to guarantee that viewers retrieve an object that was fetched // from the origin using HTTPS is never to use any other protocol to fetch the // object. If you have recently changed from HTTP to HTTPS, we recommend that // you clear your objects' cache because cached objects are protocol agnostic. // That means that an edge location will return an object from the cache regardless // of whether the current request protocol matches the protocol used previously. // For more information, see Specifying How Long Objects and Errors Stay in // a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) // in the Amazon CloudFront Developer Guide. // // ViewerProtocolPolicy is a required field ViewerProtocolPolicy *string `type:"string" required:"true" enum:"ViewerProtocolPolicy"` } // String returns the string representation func (s CacheBehavior) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CacheBehavior) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CacheBehavior) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CacheBehavior"} if s.ForwardedValues == nil { invalidParams.Add(request.NewErrParamRequired("ForwardedValues")) } if s.MinTTL == nil { invalidParams.Add(request.NewErrParamRequired("MinTTL")) } if s.PathPattern == nil { invalidParams.Add(request.NewErrParamRequired("PathPattern")) } if s.TargetOriginId == nil { invalidParams.Add(request.NewErrParamRequired("TargetOriginId")) } if s.TrustedSigners == nil { invalidParams.Add(request.NewErrParamRequired("TrustedSigners")) } if s.ViewerProtocolPolicy == nil { invalidParams.Add(request.NewErrParamRequired("ViewerProtocolPolicy")) } if s.AllowedMethods != nil { if err := s.AllowedMethods.Validate(); err != nil { invalidParams.AddNested("AllowedMethods", err.(request.ErrInvalidParams)) } } if s.ForwardedValues != nil { if err := s.ForwardedValues.Validate(); err != nil { invalidParams.AddNested("ForwardedValues", err.(request.ErrInvalidParams)) } } if s.TrustedSigners != nil { if err := s.TrustedSigners.Validate(); err != nil { invalidParams.AddNested("TrustedSigners", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains zero or more CacheBehavior elements. type CacheBehaviors struct { _ struct{} `type:"structure"` // Optional: A complex type that contains cache behaviors for this distribution. // If Quantity is 0, you can omit Items. Items []*CacheBehavior `locationNameList:"CacheBehavior" type:"list"` // The number of cache behaviors for this distribution. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s CacheBehaviors) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CacheBehaviors) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CacheBehaviors) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CacheBehaviors"} if s.Quantity == nil { invalidParams.Add(request.NewErrParamRequired("Quantity")) } if s.Items != nil { for i, v := range s.Items { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that controls whether CloudFront caches the response to requests // using the specified HTTP methods. There are two choices: // // * CloudFront caches responses to GET and HEAD requests. // // * CloudFront caches responses to GET, HEAD, and OPTIONS requests. // // If you pick the second choice for your Amazon S3 Origin, you may need to // forward Access-Control-Request-Method, Access-Control-Request-Headers, and // Origin headers for the responses to be cached correctly. type CachedMethods struct { _ struct{} `type:"structure"` // A complex type that contains the HTTP methods that you want CloudFront to // cache responses to. // // Items is a required field Items []*string `locationNameList:"Method" type:"list" required:"true"` // The number of HTTP methods for which you want CloudFront to cache responses. // Valid values are 2 (for caching responses to GET and HEAD requests) and 3 // (for caching responses to GET, HEAD, and OPTIONS requests). // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s CachedMethods) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CachedMethods) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CachedMethods) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CachedMethods"} if s.Items == nil { invalidParams.Add(request.NewErrParamRequired("Items")) } if s.Quantity == nil { invalidParams.Add(request.NewErrParamRequired("Quantity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that specifies whether you want CloudFront to forward cookies // to the origin and, if so, which ones. For more information about forwarding // cookies to the origin, see How CloudFront Forwards, Caches, and Logs Cookies // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html) // in the Amazon CloudFront Developer Guide. type CookieNames struct { _ struct{} `type:"structure"` // A complex type that contains one Name element for each cookie that you want // CloudFront to forward to the origin for this cache behavior. Items []*string `locationNameList:"Name" type:"list"` // The number of different cookies that you want CloudFront to forward to the // origin for this cache behavior. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s CookieNames) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CookieNames) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CookieNames) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CookieNames"} if s.Quantity == nil { invalidParams.Add(request.NewErrParamRequired("Quantity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that specifies whether you want CloudFront to forward cookies // to the origin and, if so, which ones. For more information about forwarding // cookies to the origin, see How CloudFront Forwards, Caches, and Logs Cookies // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html) // in the Amazon CloudFront Developer Guide. type CookiePreference struct { _ struct{} `type:"structure"` // Specifies which cookies to forward to the origin for this cache behavior: // all, none, or the list of cookies specified in the WhitelistedNames complex // type. // // Amazon S3 doesn't process cookies. When the cache behavior is forwarding // requests to an Amazon S3 origin, specify none for the Forward element. // // Forward is a required field Forward *string `type:"string" required:"true" enum:"ItemSelection"` // Required if you specify whitelist for the value of Forward:. A complex type // that specifies how many different cookies you want CloudFront to forward // to the origin for this cache behavior and, if you want to forward selected // cookies, the names of those cookies. // // If you specify all or none for the value of Forward, omit WhitelistedNames. // If you change the value of Forward from whitelist to all or none and you // don't delete the WhitelistedNames element and its child elements, CloudFront // deletes them automatically. // // For the current limit on the number of cookie names that you can whitelist // for each cache behavior, see Amazon CloudFront Limits (http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_cloudfront) // in the AWS General Reference. WhitelistedNames *CookieNames `type:"structure"` } // String returns the string representation func (s CookiePreference) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CookiePreference) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CookiePreference) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CookiePreference"} if s.Forward == nil { invalidParams.Add(request.NewErrParamRequired("Forward")) } if s.WhitelistedNames != nil { if err := s.WhitelistedNames.Validate(); err != nil { invalidParams.AddNested("WhitelistedNames", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The request to create a new origin access identity. type CreateCloudFrontOriginAccessIdentityInput struct { _ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentityConfig"` // The current configuration information for the identity. // // CloudFrontOriginAccessIdentityConfig is a required field CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `locationName:"CloudFrontOriginAccessIdentityConfig" type:"structure" required:"true"` } // String returns the string representation func (s CreateCloudFrontOriginAccessIdentityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCloudFrontOriginAccessIdentityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateCloudFrontOriginAccessIdentityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateCloudFrontOriginAccessIdentityInput"} if s.CloudFrontOriginAccessIdentityConfig == nil { invalidParams.Add(request.NewErrParamRequired("CloudFrontOriginAccessIdentityConfig")) } if s.CloudFrontOriginAccessIdentityConfig != nil { if err := s.CloudFrontOriginAccessIdentityConfig.Validate(); err != nil { invalidParams.AddNested("CloudFrontOriginAccessIdentityConfig", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The returned result of the corresponding request. type CreateCloudFrontOriginAccessIdentityOutput struct { _ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentity"` // The origin access identity's information. CloudFrontOriginAccessIdentity *OriginAccessIdentity `type:"structure"` // The current version of the origin access identity created. ETag *string `location:"header" locationName:"ETag" type:"string"` // The fully qualified URI of the new origin access identity just created. For // example: https://cloudfront.amazonaws.com/2010-11-01/origin-access-identity/cloudfront/E74FTE3AJFJ256A. Location *string `location:"header" locationName:"Location" type:"string"` } // String returns the string representation func (s CreateCloudFrontOriginAccessIdentityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCloudFrontOriginAccessIdentityOutput) GoString() string { return s.String() } // The request to create a new distribution. type CreateDistributionInput struct { _ struct{} `type:"structure" payload:"DistributionConfig"` // The distribution's configuration information. // // DistributionConfig is a required field DistributionConfig *DistributionConfig `locationName:"DistributionConfig" type:"structure" required:"true"` } // String returns the string representation func (s CreateDistributionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDistributionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDistributionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDistributionInput"} if s.DistributionConfig == nil { invalidParams.Add(request.NewErrParamRequired("DistributionConfig")) } if s.DistributionConfig != nil { if err := s.DistributionConfig.Validate(); err != nil { invalidParams.AddNested("DistributionConfig", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The returned result of the corresponding request. type CreateDistributionOutput struct { _ struct{} `type:"structure" payload:"Distribution"` // The distribution's information. Distribution *Distribution `type:"structure"` // The current version of the distribution created. ETag *string `location:"header" locationName:"ETag" type:"string"` // The fully qualified URI of the new distribution resource just created. For // example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5. Location *string `location:"header" locationName:"Location" type:"string"` } // String returns the string representation func (s CreateDistributionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDistributionOutput) GoString() string { return s.String() } // The request to create a new distribution with tags. type CreateDistributionWithTagsInput struct { _ struct{} `type:"structure" payload:"DistributionConfigWithTags"` // The distribution's configuration information. // // DistributionConfigWithTags is a required field DistributionConfigWithTags *DistributionConfigWithTags `locationName:"DistributionConfigWithTags" type:"structure" required:"true"` } // String returns the string representation func (s CreateDistributionWithTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDistributionWithTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDistributionWithTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDistributionWithTagsInput"} if s.DistributionConfigWithTags == nil { invalidParams.Add(request.NewErrParamRequired("DistributionConfigWithTags")) } if s.DistributionConfigWithTags != nil { if err := s.DistributionConfigWithTags.Validate(); err != nil { invalidParams.AddNested("DistributionConfigWithTags", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The returned result of the corresponding request. type CreateDistributionWithTagsOutput struct { _ struct{} `type:"structure" payload:"Distribution"` // The distribution's information. Distribution *Distribution `type:"structure"` // The current version of the distribution created. ETag *string `location:"header" locationName:"ETag" type:"string"` // The fully qualified URI of the new distribution resource just created. For // example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5. Location *string `location:"header" locationName:"Location" type:"string"` } // String returns the string representation func (s CreateDistributionWithTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDistributionWithTagsOutput) GoString() string { return s.String() } // The request to create an invalidation. type CreateInvalidationInput struct { _ struct{} `type:"structure" payload:"InvalidationBatch"` // The distribution's id. // // DistributionId is a required field DistributionId *string `location:"uri" locationName:"DistributionId" type:"string" required:"true"` // The batch information for the invalidation. // // InvalidationBatch is a required field InvalidationBatch *InvalidationBatch `locationName:"InvalidationBatch" type:"structure" required:"true"` } // String returns the string representation func (s CreateInvalidationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateInvalidationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateInvalidationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateInvalidationInput"} if s.DistributionId == nil { invalidParams.Add(request.NewErrParamRequired("DistributionId")) } if s.InvalidationBatch == nil { invalidParams.Add(request.NewErrParamRequired("InvalidationBatch")) } if s.InvalidationBatch != nil { if err := s.InvalidationBatch.Validate(); err != nil { invalidParams.AddNested("InvalidationBatch", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The returned result of the corresponding request. type CreateInvalidationOutput struct { _ struct{} `type:"structure" payload:"Invalidation"` // The invalidation's information. Invalidation *Invalidation `type:"structure"` // The fully qualified URI of the distribution and invalidation batch request, // including the Invalidation ID. Location *string `location:"header" locationName:"Location" type:"string"` } // String returns the string representation func (s CreateInvalidationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateInvalidationOutput) GoString() string { return s.String() } // The request to create a new streaming distribution. type CreateStreamingDistributionInput struct { _ struct{} `type:"structure" payload:"StreamingDistributionConfig"` // The streaming distribution's configuration information. // // StreamingDistributionConfig is a required field StreamingDistributionConfig *StreamingDistributionConfig `locationName:"StreamingDistributionConfig" type:"structure" required:"true"` } // String returns the string representation func (s CreateStreamingDistributionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateStreamingDistributionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateStreamingDistributionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateStreamingDistributionInput"} if s.StreamingDistributionConfig == nil { invalidParams.Add(request.NewErrParamRequired("StreamingDistributionConfig")) } if s.StreamingDistributionConfig != nil { if err := s.StreamingDistributionConfig.Validate(); err != nil { invalidParams.AddNested("StreamingDistributionConfig", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The returned result of the corresponding request. type CreateStreamingDistributionOutput struct { _ struct{} `type:"structure" payload:"StreamingDistribution"` // The current version of the streaming distribution created. ETag *string `location:"header" locationName:"ETag" type:"string"` // The fully qualified URI of the new streaming distribution resource just created. // For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8. Location *string `location:"header" locationName:"Location" type:"string"` // The streaming distribution's information. StreamingDistribution *StreamingDistribution `type:"structure"` } // String returns the string representation func (s CreateStreamingDistributionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateStreamingDistributionOutput) GoString() string { return s.String() } // The request to create a new streaming distribution with tags. type CreateStreamingDistributionWithTagsInput struct { _ struct{} `type:"structure" payload:"StreamingDistributionConfigWithTags"` // The streaming distribution's configuration information. // // StreamingDistributionConfigWithTags is a required field StreamingDistributionConfigWithTags *StreamingDistributionConfigWithTags `locationName:"StreamingDistributionConfigWithTags" type:"structure" required:"true"` } // String returns the string representation func (s CreateStreamingDistributionWithTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateStreamingDistributionWithTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateStreamingDistributionWithTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateStreamingDistributionWithTagsInput"} if s.StreamingDistributionConfigWithTags == nil { invalidParams.Add(request.NewErrParamRequired("StreamingDistributionConfigWithTags")) } if s.StreamingDistributionConfigWithTags != nil { if err := s.StreamingDistributionConfigWithTags.Validate(); err != nil { invalidParams.AddNested("StreamingDistributionConfigWithTags", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The returned result of the corresponding request. type CreateStreamingDistributionWithTagsOutput struct { _ struct{} `type:"structure" payload:"StreamingDistribution"` ETag *string `location:"header" locationName:"ETag" type:"string"` // The fully qualified URI of the new streaming distribution resource just created. // For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8. Location *string `location:"header" locationName:"Location" type:"string"` // The streaming distribution's information. StreamingDistribution *StreamingDistribution `type:"structure"` } // String returns the string representation func (s CreateStreamingDistributionWithTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateStreamingDistributionWithTagsOutput) GoString() string { return s.String() } // A complex type that controls: // // * Whether CloudFront replaces HTTP status codes in the 4xx and 5xx range // with custom error messages before returning the response to the viewer. // // // * How long CloudFront caches HTTP status codes in the 4xx and 5xx range. // // For more information about custom error pages, see Customizing Error Responses // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/custom-error-pages.html) // in the Amazon CloudFront Developer Guide. type CustomErrorResponse struct { _ struct{} `type:"structure"` // The minimum amount of time, in seconds, that you want CloudFront to cache // the HTTP status code specified in ErrorCode. When this time period has elapsed, // CloudFront queries your origin to see whether the problem that caused the // error has been resolved and the requested object is now available. // // If you don't want to specify a value, include an empty element, , // in the XML document. // // For more information, see Customizing Error Responses (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/custom-error-pages.html) // in the Amazon CloudFront Developer Guide. ErrorCachingMinTTL *int64 `type:"long"` // The HTTP status code for which you want to specify a custom error page and/or // a caching duration. // // ErrorCode is a required field ErrorCode *int64 `type:"integer" required:"true"` // The HTTP status code that you want CloudFront to return to the viewer along // with the custom error page. There are a variety of reasons that you might // want CloudFront to return a status code different from the status code that // your origin returned to CloudFront, for example: // // * Some Internet devices (some firewalls and corporate proxies, for example) // intercept HTTP 4xx and 5xx and prevent the response from being returned // to the viewer. If you substitute 200, the response typically won't be // intercepted. // // * If you don't care about distinguishing among different client errors // or server errors, you can specify 400 or 500 as the ResponseCode for all // 4xx or 5xx errors. // // * You might want to return a 200 status code (OK) and static website so // your customers don't know that your website is down. // // If you specify a value for ResponseCode, you must also specify a value for // ResponsePagePath. If you don't want to specify a value, include an empty // element, , in the XML document. ResponseCode *string `type:"string"` // The path to the custom error page that you want CloudFront to return to a // viewer when your origin returns the HTTP status code specified by ErrorCode, // for example, /4xx-errors/403-forbidden.html. If you want to store your objects // and your custom error pages in different locations, your distribution must // include a cache behavior for which the following is true: // // * The value of PathPattern matches the path to your custom error messages. // For example, suppose you saved custom error pages for 4xx errors in an // Amazon S3 bucket in a directory named /4xx-errors. Your distribution must // include a cache behavior for which the path pattern routes requests for // your custom error pages to that location, for example, /4xx-errors/*. // // // * The value of TargetOriginId specifies the value of the ID element for // the origin that contains your custom error pages. // // If you specify a value for ResponsePagePath, you must also specify a value // for ResponseCode. If you don't want to specify a value, include an empty // element, , in the XML document. // // We recommend that you store custom error pages in an Amazon S3 bucket. If // you store custom error pages on an HTTP server and the server starts to return // 5xx errors, CloudFront can't get the files that you want to return to viewers // because the origin server is unavailable. ResponsePagePath *string `type:"string"` } // String returns the string representation func (s CustomErrorResponse) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CustomErrorResponse) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CustomErrorResponse) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CustomErrorResponse"} if s.ErrorCode == nil { invalidParams.Add(request.NewErrParamRequired("ErrorCode")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that controls: // // * Whether CloudFront replaces HTTP status codes in the 4xx and 5xx range // with custom error messages before returning the response to the viewer. // // * How long CloudFront caches HTTP status codes in the 4xx and 5xx range. // // For more information about custom error pages, see Customizing Error Responses // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/custom-error-pages.html) // in the Amazon CloudFront Developer Guide. type CustomErrorResponses struct { _ struct{} `type:"structure"` // A complex type that contains a CustomErrorResponse element for each HTTP // status code for which you want to specify a custom error page and/or a caching // duration. Items []*CustomErrorResponse `locationNameList:"CustomErrorResponse" type:"list"` // The number of HTTP status codes for which you want to specify a custom error // page and/or a caching duration. If Quantity is 0, you can omit Items. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s CustomErrorResponses) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CustomErrorResponses) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CustomErrorResponses) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CustomErrorResponses"} if s.Quantity == nil { invalidParams.Add(request.NewErrParamRequired("Quantity")) } if s.Items != nil { for i, v := range s.Items { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the list of Custom Headers for each origin. type CustomHeaders struct { _ struct{} `type:"structure"` // Optional: A list that contains one OriginCustomHeader element for each custom // header that you want CloudFront to forward to the origin. If Quantity is // 0, omit Items. Items []*OriginCustomHeader `locationNameList:"OriginCustomHeader" type:"list"` // The number of custom headers, if any, for this distribution. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s CustomHeaders) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CustomHeaders) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CustomHeaders) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CustomHeaders"} if s.Quantity == nil { invalidParams.Add(request.NewErrParamRequired("Quantity")) } if s.Items != nil { for i, v := range s.Items { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A customer origin. type CustomOriginConfig struct { _ struct{} `type:"structure"` // The HTTP port the custom origin listens on. // // HTTPPort is a required field HTTPPort *int64 `type:"integer" required:"true"` // The HTTPS port the custom origin listens on. // // HTTPSPort is a required field HTTPSPort *int64 `type:"integer" required:"true"` // The origin protocol policy to apply to your origin. // // OriginProtocolPolicy is a required field OriginProtocolPolicy *string `type:"string" required:"true" enum:"OriginProtocolPolicy"` // The SSL/TLS protocols that you want CloudFront to use when communicating // with your origin over HTTPS. OriginSslProtocols *OriginSslProtocols `type:"structure"` } // String returns the string representation func (s CustomOriginConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CustomOriginConfig) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CustomOriginConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CustomOriginConfig"} if s.HTTPPort == nil { invalidParams.Add(request.NewErrParamRequired("HTTPPort")) } if s.HTTPSPort == nil { invalidParams.Add(request.NewErrParamRequired("HTTPSPort")) } if s.OriginProtocolPolicy == nil { invalidParams.Add(request.NewErrParamRequired("OriginProtocolPolicy")) } if s.OriginSslProtocols != nil { if err := s.OriginSslProtocols.Validate(); err != nil { invalidParams.AddNested("OriginSslProtocols", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that describes the default cache behavior if you do not specify // a CacheBehavior element or if files don't match any of the values of PathPattern // in CacheBehavior elements. You must create exactly one default cache behavior. type DefaultCacheBehavior struct { _ struct{} `type:"structure"` // A complex type that controls which HTTP methods CloudFront processes and // forwards to your Amazon S3 bucket or your custom origin. There are three // choices: // // * CloudFront forwards only GET and HEAD requests. // // * CloudFront forwards only GET, HEAD, and OPTIONS requests. // // * CloudFront forwards GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE // requests. // // If you pick the third choice, you may need to restrict access to your Amazon // S3 bucket or to your custom origin so users can't perform operations that // you don't want them to. For example, you might not want users to have permissions // to delete objects from your origin. AllowedMethods *AllowedMethods `type:"structure"` // Whether you want CloudFront to automatically compress certain files for this // cache behavior. If so, specify true; if not, specify false. For more information, // see Serving Compressed Files (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/ServingCompressedFiles.html) // in the Amazon CloudFront Developer Guide. Compress *bool `type:"boolean"` // The default amount of time that you want objects to stay in CloudFront caches // before CloudFront forwards another request to your origin to determine whether // the object has been updated. The value that you specify applies only when // your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control // s-maxage, and Expires to objects. For more information, see Specifying How // Long Objects and Errors Stay in a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) // in the Amazon CloudFront Developer Guide. DefaultTTL *int64 `type:"long"` // A complex type that specifies how CloudFront handles query strings and cookies. // // ForwardedValues is a required field ForwardedValues *ForwardedValues `type:"structure" required:"true"` MaxTTL *int64 `type:"long"` // The minimum amount of time that you want objects to stay in CloudFront caches // before CloudFront forwards another request to your origin to determine whether // the object has been updated. For more information, see Specifying How Long // Objects and Errors Stay in a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) // in the Amazon Amazon CloudFront Developer Guide. // // You must specify 0 for MinTTL if you configure CloudFront to forward all // headers to your origin (under Headers, if you specify 1 for Quantity and // * for Name). // // MinTTL is a required field MinTTL *int64 `type:"long" required:"true"` // Indicates whether you want to distribute media files in the Microsoft Smooth // Streaming format using the origin that is associated with this cache behavior. // If so, specify true; if not, specify false. If you specify true for SmoothStreaming, // you can still distribute other content using this cache behavior if the content // matches the value of PathPattern. SmoothStreaming *bool `type:"boolean"` // The value of ID for the origin that you want CloudFront to route requests // to when a request matches the path pattern either for a cache behavior or // for the default cache behavior. // // TargetOriginId is a required field TargetOriginId *string `type:"string" required:"true"` // A complex type that specifies the AWS accounts, if any, that you want to // allow to create signed URLs for private content. // // If you want to require signed URLs in requests for objects in the target // origin that match the PathPattern for this cache behavior, specify true for // Enabled, and specify the applicable values for Quantity and Items. For more // information, see Serving Private Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) // in the Amazon Amazon CloudFront Developer Guide. // // If you don't want to require signed URLs in requests for objects that match // PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. // // To add, change, or remove one or more trusted signers, change Enabled to // true (if it's currently false), change Quantity as applicable, and specify // all of the trusted signers that you want to include in the updated distribution. // // TrustedSigners is a required field TrustedSigners *TrustedSigners `type:"structure" required:"true"` // The protocol that viewers can use to access the files in the origin specified // by TargetOriginId when a request matches the path pattern in PathPattern. // You can specify the following options: // // * allow-all: Viewers can use HTTP or HTTPS. // // * redirect-to-https: If a viewer submits an HTTP request, CloudFront returns // an HTTP status code of 301 (Moved Permanently) to the viewer along with // the HTTPS URL. The viewer then resubmits the request using the new URL. // // * https-only: If a viewer sends an HTTP request, CloudFront returns an // HTTP status code of 403 (Forbidden). // // For more information about requiring the HTTPS protocol, see Using an HTTPS // Connection to Access Your Objects (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html) // in the Amazon CloudFront Developer Guide. // // The only way to guarantee that viewers retrieve an object that was fetched // from the origin using HTTPS is never to use any other protocol to fetch the // object. If you have recently changed from HTTP to HTTPS, we recommend that // you clear your objects' cache because cached objects are protocol agnostic. // That means that an edge location will return an object from the cache regardless // of whether the current request protocol matches the protocol used previously. // For more information, see Specifying How Long Objects and Errors Stay in // a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html) // in the Amazon CloudFront Developer Guide. // // ViewerProtocolPolicy is a required field ViewerProtocolPolicy *string `type:"string" required:"true" enum:"ViewerProtocolPolicy"` } // String returns the string representation func (s DefaultCacheBehavior) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DefaultCacheBehavior) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DefaultCacheBehavior) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DefaultCacheBehavior"} if s.ForwardedValues == nil { invalidParams.Add(request.NewErrParamRequired("ForwardedValues")) } if s.MinTTL == nil { invalidParams.Add(request.NewErrParamRequired("MinTTL")) } if s.TargetOriginId == nil { invalidParams.Add(request.NewErrParamRequired("TargetOriginId")) } if s.TrustedSigners == nil { invalidParams.Add(request.NewErrParamRequired("TrustedSigners")) } if s.ViewerProtocolPolicy == nil { invalidParams.Add(request.NewErrParamRequired("ViewerProtocolPolicy")) } if s.AllowedMethods != nil { if err := s.AllowedMethods.Validate(); err != nil { invalidParams.AddNested("AllowedMethods", err.(request.ErrInvalidParams)) } } if s.ForwardedValues != nil { if err := s.ForwardedValues.Validate(); err != nil { invalidParams.AddNested("ForwardedValues", err.(request.ErrInvalidParams)) } } if s.TrustedSigners != nil { if err := s.TrustedSigners.Validate(); err != nil { invalidParams.AddNested("TrustedSigners", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Deletes a origin access identity. type DeleteCloudFrontOriginAccessIdentityInput struct { _ struct{} `type:"structure"` // The origin access identity's ID. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` // The value of the ETag header you received from a previous GET or PUT request. // For example: E2QWRUHAPOMQZL. IfMatch *string `location:"header" locationName:"If-Match" type:"string"` } // String returns the string representation func (s DeleteCloudFrontOriginAccessIdentityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCloudFrontOriginAccessIdentityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteCloudFrontOriginAccessIdentityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteCloudFrontOriginAccessIdentityInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteCloudFrontOriginAccessIdentityOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteCloudFrontOriginAccessIdentityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCloudFrontOriginAccessIdentityOutput) GoString() string { return s.String() } // This action deletes a web distribution. To delete a web distribution using // the CloudFront API, perform the following steps. // // To delete a web distribution using the CloudFront API: // // Disable the web distribution // // Submit a GET Distribution Config request to get the current configuration // and the Etag header for the distribution. // // Update the XML document that was returned in the response to your GET Distribution // Config request to change the value of Enabled to false. // // Submit a PUT Distribution Config request to update the configuration for // your distribution. In the request body, include the XML document that you // updated in Step 3. Set the value of the HTTP If-Match header to the value // of the ETag header that CloudFront returned when you submitted the GET Distribution // Config request in Step 2. // // Review the response to the PUT Distribution Config request to confirm that // the distribution was successfully disabled. // // Submit a GET Distribution request to confirm that your changes have propagated. // When propagation is complete, the value of Status is Deployed. // // Submit a DELETE Distribution request. Set the value of the HTTP If-Match // header to the value of the ETag header that CloudFront returned when you // submitted the GET Distribution Config request in Step 6. // // Review the response to your DELETE Distribution request to confirm that the // distribution was successfully deleted. // // For information about deleting a distribution using the CloudFront console, // see Deleting a Distribution (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/HowToDeleteDistribution.html) // in the Amazon CloudFront Developer Guide. type DeleteDistributionInput struct { _ struct{} `type:"structure"` // The distribution ID. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` // The value of the ETag header that you received when you disabled the distribution. // For example: E2QWRUHAPOMQZL. IfMatch *string `location:"header" locationName:"If-Match" type:"string"` } // String returns the string representation func (s DeleteDistributionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDistributionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDistributionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDistributionInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteDistributionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteDistributionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDistributionOutput) GoString() string { return s.String() } // The request to delete a streaming distribution. type DeleteStreamingDistributionInput struct { _ struct{} `type:"structure"` // The distribution ID. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` // The value of the ETag header that you received when you disabled the streaming // distribution. For example: E2QWRUHAPOMQZL. IfMatch *string `location:"header" locationName:"If-Match" type:"string"` } // String returns the string representation func (s DeleteStreamingDistributionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteStreamingDistributionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteStreamingDistributionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteStreamingDistributionInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteStreamingDistributionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteStreamingDistributionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteStreamingDistributionOutput) GoString() string { return s.String() } // The distribution's information. type Distribution struct { _ struct{} `type:"structure"` // The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5, // where 123456789012 is your AWS account ID. // // ARN is a required field ARN *string `type:"string" required:"true"` // CloudFront automatically adds this element to the response only if you've // set up the distribution to serve private content with signed URLs. The element // lists the key pair IDs that CloudFront is aware of for each trusted signer. // The Signer child element lists the AWS account number of the trusted signer // (or an empty Self element if the signer is you). The Signer element also // includes the IDs of any active key pairs associated with the trusted signer's // AWS account. If no KeyPairId element appears for a Signer, that signer can't // create working signed URLs. // // ActiveTrustedSigners is a required field ActiveTrustedSigners *ActiveTrustedSigners `type:"structure" required:"true"` // The current configuration information for the distribution. Send a GET request // to the /CloudFront API version/distribution ID/config resource. // // DistributionConfig is a required field DistributionConfig *DistributionConfig `type:"structure" required:"true"` // The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net. // // DomainName is a required field DomainName *string `type:"string" required:"true"` // The identifier for the distribution. For example: EDFDVBD632BHDS5. // // Id is a required field Id *string `type:"string" required:"true"` // The number of invalidation batches currently in progress. // // InProgressInvalidationBatches is a required field InProgressInvalidationBatches *int64 `type:"integer" required:"true"` // The date and time the distribution was last modified. // // LastModifiedTime is a required field LastModifiedTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // This response element indicates the current status of the distribution. When // the status is Deployed, the distribution's information is fully propagated // to all CloudFront edge locations. // // Status is a required field Status *string `type:"string" required:"true"` } // String returns the string representation func (s Distribution) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Distribution) GoString() string { return s.String() } // A distribution configuration. type DistributionConfig struct { _ struct{} `type:"structure"` // A complex type that contains information about CNAMEs (alternate domain names), // if any, for this distribution. Aliases *Aliases `type:"structure"` // A complex type that contains zero or more CacheBehavior elements. CacheBehaviors *CacheBehaviors `type:"structure"` // A unique value (for example, a date-time stamp) that ensures that the request // can't be replayed. // // If the value of CallerReference is new (regardless of the content of the // DistributionConfig object), CloudFront creates a new distribution. // // If CallerReference is a value you already sent in a previous request to create // a distribution, and if the content of the DistributionConfig is identical // to the original request (ignoring white space), CloudFront returns the same // the response that it returned to the original request. // // If CallerReference is a value you already sent in a previous request to create // a distribution but the content of the DistributionConfig is different from // the original request, CloudFront returns a DistributionAlreadyExists error. // // CallerReference is a required field CallerReference *string `type:"string" required:"true"` // Any comments you want to include about the distribution. // // If you don't want to specify a comment, include an empty Comment element. // // To delete an existing comment, update the distribution configuration and // include an empty Comment element. // // To add or change a comment, update the distribution configuration and specify // the new comment. // // Comment is a required field Comment *string `type:"string" required:"true"` // A complex type that controls the following: // // * Whether CloudFront replaces HTTP status codes in the 4xx and 5xx range // with custom error messages before returning the response to the viewer. // // * How long CloudFront caches HTTP status codes in the 4xx and 5xx range. // // For more information about custom error pages, see Customizing Error Responses // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/custom-error-pages.html) // in the Amazon CloudFront Developer Guide. CustomErrorResponses *CustomErrorResponses `type:"structure"` // A complex type that describes the default cache behavior if you do not specify // a CacheBehavior element or if files don't match any of the values of PathPattern // in CacheBehavior elements. You must create exactly one default cache behavior. // // DefaultCacheBehavior is a required field DefaultCacheBehavior *DefaultCacheBehavior `type:"structure" required:"true"` // The object that you want CloudFront to request from your origin (for example, // index.html) when a viewer requests the root URL for your distribution (http://www.example.com) // instead of an object in your distribution (http://www.example.com/product-description.html). // Specifying a default root object avoids exposing the contents of your distribution. // // Specify only the object name, for example, index.html. Do not add a / before // the object name. // // If you don't want to specify a default root object when you create a distribution, // include an empty DefaultRootObject element. // // To delete the default root object from an existing distribution, update the // distribution configuration and include an empty DefaultRootObject element. // // To replace the default root object, update the distribution configuration // and specify the new object. // // For more information about the default root object, see Creating a Default // Root Object (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/DefaultRootObject.html) // in the Amazon CloudFront Developer Guide. DefaultRootObject *string `type:"string"` // Specifies whether you want CloudFront to save access logs to an Amazon S3 // bucket. // // If you do not want to enable logging when you create a distribution, or if // you want to disable logging for an existing distribution, specify false for // Enabled, and specify empty Bucket and Prefix elements. // // If you specify false for Enabled but you specify values for Bucket and Prefix, // the values are automatically deleted. // // Enabled is a required field Enabled *bool `type:"boolean" required:"true"` // (Optional) Specify the maximum HTTP version that you want viewers to use // to communicate with CloudFront. The default value for new web distributions // is http2. Viewers that don't support HTTP/2 automatically use an earlier // HTTP version. // // For viewers and CloudFront to use HTTP/2, viewers must support TLS 1.2 or // later, and must support Server Name Identification (SNI). // // In general, configuring CloudFront to communicate with viewers using HTTP/2 // reduces latency. You can improve performance by optimizing for HTTP/2. For // more information, do an Internet search for "http/2 optimization." HttpVersion *string `type:"string" enum:"HttpVersion"` // If you want CloudFront to respond to IPv6 DNS requests with an IPv6 address // for your distribution, specify true. If you specify false, CloudFront responds // to IPv6 DNS requests with the DNS response code NOERROR and with no IP addresses. // This allows viewers to submit a second request, for an IPv4 address for your // distribution. // // In general, you should enable IPv6 if you have users on IPv6 networks who // want to access your content. However, if you're using signed URLs or signed // cookies to restrict access to your content, and if you're using a custom // policy that includes the IpAddress parameter to restrict the IP addresses // that can access your content, do not enable IPv6. If you want to restrict // access to some content by IP address and not restrict access to other content // (or restrict access but not by IP address), you can create two distributions. // For more information, see Creating a Signed URL Using a Custom Policy (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-creating-signed-url-custom-policy.html) // in the Amazon CloudFront Developer Guide. // // If you're using an Amazon Route 53 alias resource record set to route traffic // to your CloudFront distribution, you need to create a second alias resource // record set when both of the following are true: // // * You enable IPv6 for the distribution // // * You're using alternate domain names in the URLs for your objects // // For more information, see Routing Traffic to an Amazon CloudFront Web Distribution // by Using Your Domain Name (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html) // in the Amazon Route 53 Developer Guide. // // If you created a CNAME resource record set, either with Amazon Route 53 or // with another DNS service, you don't need to make any changes. A CNAME record // will route traffic to your distribution regardless of the IP address format // of the viewer request. IsIPV6Enabled *bool `type:"boolean"` // A complex type that controls whether access logs are written for the distribution. // // For more information about logging, see Access Logs (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/AccessLogs.html) // in the Amazon CloudFront Developer Guide. Logging *LoggingConfig `type:"structure"` // A complex type that contains information about origins for this distribution. // // Origins is a required field Origins *Origins `type:"structure" required:"true"` // The price class that corresponds with the maximum price that you want to // pay for CloudFront service. If you specify PriceClass_All, CloudFront responds // to requests for your objects from all CloudFront edge locations. // // If you specify a price class other than PriceClass_All, CloudFront serves // your objects from the CloudFront edge location that has the lowest latency // among the edge locations in your price class. Viewers who are in or near // regions that are excluded from your specified price class may encounter slower // performance. // // For more information about price classes, see Choosing the Price Class for // a CloudFront Distribution (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PriceClass.html) // in the Amazon CloudFront Developer Guide. For information about CloudFront // pricing, including how price classes map to CloudFront regions, see Amazon // CloudFront Pricing (https://aws.amazon.com/cloudfront/pricing/). PriceClass *string `type:"string" enum:"PriceClass"` // A complex type that identifies ways in which you want to restrict distribution // of your content. Restrictions *Restrictions `type:"structure"` // A complex type that specifies the following: // // * Which SSL/TLS certificate to use when viewers request objects using // HTTPS // // * Whether you want CloudFront to use dedicated IP addresses or SNI when // you're using alternate domain names in your object names // // * The minimum protocol version that you want CloudFront to use when communicating // with viewers // // For more information, see Using an HTTPS Connection to Access Your Objects // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html) // in the Amazon Amazon CloudFront Developer Guide. ViewerCertificate *ViewerCertificate `type:"structure"` // A unique identifier that specifies the AWS WAF web ACL, if any, to associate // with this distribution. // // AWS WAF is a web application firewall that lets you monitor the HTTP and // HTTPS requests that are forwarded to CloudFront, and lets you control access // to your content. Based on conditions that you specify, such as the IP addresses // that requests originate from or the values of query strings, CloudFront responds // to requests either with the requested content or with an HTTP 403 status // code (Forbidden). You can also configure CloudFront to return a custom error // page when a request is blocked. For more information about AWS WAF, see the // AWS WAF Developer Guide (http://docs.aws.amazon.com/waf/latest/developerguide/what-is-aws-waf.html). WebACLId *string `type:"string"` } // String returns the string representation func (s DistributionConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DistributionConfig) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DistributionConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DistributionConfig"} if s.CallerReference == nil { invalidParams.Add(request.NewErrParamRequired("CallerReference")) } if s.Comment == nil { invalidParams.Add(request.NewErrParamRequired("Comment")) } if s.DefaultCacheBehavior == nil { invalidParams.Add(request.NewErrParamRequired("DefaultCacheBehavior")) } if s.Enabled == nil { invalidParams.Add(request.NewErrParamRequired("Enabled")) } if s.Origins == nil { invalidParams.Add(request.NewErrParamRequired("Origins")) } if s.Aliases != nil { if err := s.Aliases.Validate(); err != nil { invalidParams.AddNested("Aliases", err.(request.ErrInvalidParams)) } } if s.CacheBehaviors != nil { if err := s.CacheBehaviors.Validate(); err != nil { invalidParams.AddNested("CacheBehaviors", err.(request.ErrInvalidParams)) } } if s.CustomErrorResponses != nil { if err := s.CustomErrorResponses.Validate(); err != nil { invalidParams.AddNested("CustomErrorResponses", err.(request.ErrInvalidParams)) } } if s.DefaultCacheBehavior != nil { if err := s.DefaultCacheBehavior.Validate(); err != nil { invalidParams.AddNested("DefaultCacheBehavior", err.(request.ErrInvalidParams)) } } if s.Logging != nil { if err := s.Logging.Validate(); err != nil { invalidParams.AddNested("Logging", err.(request.ErrInvalidParams)) } } if s.Origins != nil { if err := s.Origins.Validate(); err != nil { invalidParams.AddNested("Origins", err.(request.ErrInvalidParams)) } } if s.Restrictions != nil { if err := s.Restrictions.Validate(); err != nil { invalidParams.AddNested("Restrictions", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A distribution Configuration and a list of tags to be associated with the // distribution. type DistributionConfigWithTags struct { _ struct{} `type:"structure"` // A distribution configuration. // // DistributionConfig is a required field DistributionConfig *DistributionConfig `type:"structure" required:"true"` // A complex type that contains zero or more Tag elements. // // Tags is a required field Tags *Tags `type:"structure" required:"true"` } // String returns the string representation func (s DistributionConfigWithTags) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DistributionConfigWithTags) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DistributionConfigWithTags) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DistributionConfigWithTags"} if s.DistributionConfig == nil { invalidParams.Add(request.NewErrParamRequired("DistributionConfig")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.DistributionConfig != nil { if err := s.DistributionConfig.Validate(); err != nil { invalidParams.AddNested("DistributionConfig", err.(request.ErrInvalidParams)) } } if s.Tags != nil { if err := s.Tags.Validate(); err != nil { invalidParams.AddNested("Tags", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A distribution list. type DistributionList struct { _ struct{} `type:"structure"` // A flag that indicates whether more distributions remain to be listed. If // your results were truncated, you can make a follow-up pagination request // using the Marker request parameter to retrieve more distributions in the // list. // // IsTruncated is a required field IsTruncated *bool `type:"boolean" required:"true"` // A complex type that contains one DistributionSummary element for each distribution // that was created by the current AWS account. Items []*DistributionSummary `locationNameList:"DistributionSummary" type:"list"` // The value you provided for the Marker request parameter. // // Marker is a required field Marker *string `type:"string" required:"true"` // The value you provided for the MaxItems request parameter. // // MaxItems is a required field MaxItems *int64 `type:"integer" required:"true"` // If IsTruncated is true, this element is present and contains the value you // can use for the Marker request parameter to continue listing your distributions // where they left off. NextMarker *string `type:"string"` // The number of distributions that were created by the current AWS account. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s DistributionList) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DistributionList) GoString() string { return s.String() } // A summary of the information about a CloudFront distribution. type DistributionSummary struct { _ struct{} `type:"structure"` // The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5, // where 123456789012 is your AWS account ID. // // ARN is a required field ARN *string `type:"string" required:"true"` // A complex type that contains information about CNAMEs (alternate domain names), // if any, for this distribution. // // Aliases is a required field Aliases *Aliases `type:"structure" required:"true"` // A complex type that contains zero or more CacheBehavior elements. // // CacheBehaviors is a required field CacheBehaviors *CacheBehaviors `type:"structure" required:"true"` // The comment originally specified when this distribution was created. // // Comment is a required field Comment *string `type:"string" required:"true"` // A complex type that contains zero or more CustomErrorResponses elements. // // CustomErrorResponses is a required field CustomErrorResponses *CustomErrorResponses `type:"structure" required:"true"` // A complex type that describes the default cache behavior if you do not specify // a CacheBehavior element or if files don't match any of the values of PathPattern // in CacheBehavior elements. You must create exactly one default cache behavior. // // DefaultCacheBehavior is a required field DefaultCacheBehavior *DefaultCacheBehavior `type:"structure" required:"true"` // The domain name that corresponds to the distribution. For example: d604721fxaaqy9.cloudfront.net. // // DomainName is a required field DomainName *string `type:"string" required:"true"` // Whether the distribution is enabled to accept user requests for content. // // Enabled is a required field Enabled *bool `type:"boolean" required:"true"` // Specify the maximum HTTP version that you want viewers to use to communicate // with CloudFront. The default value for new web distributions is http2. Viewers // that don't support HTTP/2 will automatically use an earlier version. // // HttpVersion is a required field HttpVersion *string `type:"string" required:"true" enum:"HttpVersion"` // The identifier for the distribution. For example: EDFDVBD632BHDS5. // // Id is a required field Id *string `type:"string" required:"true"` // Whether CloudFront responds to IPv6 DNS requests with an IPv6 address for // your distribution. // // IsIPV6Enabled is a required field IsIPV6Enabled *bool `type:"boolean" required:"true"` // The date and time the distribution was last modified. // // LastModifiedTime is a required field LastModifiedTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // A complex type that contains information about origins for this distribution. // // Origins is a required field Origins *Origins `type:"structure" required:"true"` // PriceClass is a required field PriceClass *string `type:"string" required:"true" enum:"PriceClass"` // A complex type that identifies ways in which you want to restrict distribution // of your content. // // Restrictions is a required field Restrictions *Restrictions `type:"structure" required:"true"` // The current status of the distribution. When the status is Deployed, the // distribution's information is propagated to all CloudFront edge locations. // // Status is a required field Status *string `type:"string" required:"true"` // A complex type that specifies the following: // // * Which SSL/TLS certificate to use when viewers request objects using // HTTPS // // * Whether you want CloudFront to use dedicated IP addresses or SNI when // you're using alternate domain names in your object names // // * The minimum protocol version that you want CloudFront to use when communicating // with viewers // // For more information, see Using an HTTPS Connection to Access Your Objects // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html) // in the Amazon Amazon CloudFront Developer Guide. // // ViewerCertificate is a required field ViewerCertificate *ViewerCertificate `type:"structure" required:"true"` // The Web ACL Id (if any) associated with the distribution. // // WebACLId is a required field WebACLId *string `type:"string" required:"true"` } // String returns the string representation func (s DistributionSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DistributionSummary) GoString() string { return s.String() } // A complex type that specifies how CloudFront handles query strings and cookies. type ForwardedValues struct { _ struct{} `type:"structure"` // A complex type that specifies whether you want CloudFront to forward cookies // to the origin and, if so, which ones. For more information about forwarding // cookies to the origin, see How CloudFront Forwards, Caches, and Logs Cookies // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html) // in the Amazon CloudFront Developer Guide. // // Cookies is a required field Cookies *CookiePreference `type:"structure" required:"true"` // A complex type that specifies the Headers, if any, that you want CloudFront // to vary upon for this cache behavior. Headers *Headers `type:"structure"` // Indicates whether you want CloudFront to forward query strings to the origin // that is associated with this cache behavior and cache based on the query // string parameters. CloudFront behavior depends on the value of QueryString // and on the values that you specify for QueryStringCacheKeys, if any: // // If you specify true for QueryString and you don't specify any values for // QueryStringCacheKeys, CloudFront forwards all query string parameters to // the origin and caches based on all query string parameters. Depending on // how many query string parameters and values you have, this can adversely // affect performance because CloudFront must forward more requests to the origin. // // If you specify true for QueryString and you specify one or more values for // QueryStringCacheKeys, CloudFront forwards all query string parameters to // the origin, but it only caches based on the query string parameters that // you specify. // // If you specify false for QueryString, CloudFront doesn't forward any query // string parameters to the origin, and doesn't cache based on query string // parameters. // // For more information, see Configuring CloudFront to Cache Based on Query // String Parameters (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/QueryStringParameters.html) // in the Amazon CloudFront Developer Guide. // // QueryString is a required field QueryString *bool `type:"boolean" required:"true"` // A complex type that contains information about the query string parameters // that you want CloudFront to use for caching for this cache behavior. QueryStringCacheKeys *QueryStringCacheKeys `type:"structure"` } // String returns the string representation func (s ForwardedValues) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ForwardedValues) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ForwardedValues) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ForwardedValues"} if s.Cookies == nil { invalidParams.Add(request.NewErrParamRequired("Cookies")) } if s.QueryString == nil { invalidParams.Add(request.NewErrParamRequired("QueryString")) } if s.Cookies != nil { if err := s.Cookies.Validate(); err != nil { invalidParams.AddNested("Cookies", err.(request.ErrInvalidParams)) } } if s.Headers != nil { if err := s.Headers.Validate(); err != nil { invalidParams.AddNested("Headers", err.(request.ErrInvalidParams)) } } if s.QueryStringCacheKeys != nil { if err := s.QueryStringCacheKeys.Validate(); err != nil { invalidParams.AddNested("QueryStringCacheKeys", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that controls the countries in which your content is distributed. // CloudFront determines the location of your users using MaxMind GeoIP databases. type GeoRestriction struct { _ struct{} `type:"structure"` // A complex type that contains a Location element for each country in which // you want CloudFront either to distribute your content (whitelist) or not // distribute your content (blacklist). // // The Location element is a two-letter, uppercase country code for a country // that you want to include in your blacklist or whitelist. Include one Location // element for each country. // // CloudFront and MaxMind both use ISO 3166 country codes. For the current list // of countries and the corresponding codes, see ISO 3166-1-alpha-2 code on // the International Organization for Standardization website. You can also // refer to the country list in the CloudFront console, which includes both // country names and codes. Items []*string `locationNameList:"Location" type:"list"` // When geo restriction is enabled, this is the number of countries in your // whitelist or blacklist. Otherwise, when it is not enabled, Quantity is 0, // and you can omit Items. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` // The method that you want to use to restrict distribution of your content // by country: // // * none: No geo restriction is enabled, meaning access to content is not // restricted by client geo location. // // * blacklist: The Location elements specify the countries in which you // do not want CloudFront to distribute your content. // // * whitelist: The Location elements specify the countries in which you // want CloudFront to distribute your content. // // RestrictionType is a required field RestrictionType *string `type:"string" required:"true" enum:"GeoRestrictionType"` } // String returns the string representation func (s GeoRestriction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GeoRestriction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GeoRestriction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GeoRestriction"} if s.Quantity == nil { invalidParams.Add(request.NewErrParamRequired("Quantity")) } if s.RestrictionType == nil { invalidParams.Add(request.NewErrParamRequired("RestrictionType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The origin access identity's configuration information. For more information, // see CloudFrontOriginAccessIdentityConfigComplexType. type GetCloudFrontOriginAccessIdentityConfigInput struct { _ struct{} `type:"structure"` // The identity's ID. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s GetCloudFrontOriginAccessIdentityConfigInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCloudFrontOriginAccessIdentityConfigInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetCloudFrontOriginAccessIdentityConfigInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetCloudFrontOriginAccessIdentityConfigInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The returned result of the corresponding request. type GetCloudFrontOriginAccessIdentityConfigOutput struct { _ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentityConfig"` // The origin access identity's configuration information. CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `type:"structure"` // The current version of the configuration. For example: E2QWRUHAPOMQZL. ETag *string `location:"header" locationName:"ETag" type:"string"` } // String returns the string representation func (s GetCloudFrontOriginAccessIdentityConfigOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCloudFrontOriginAccessIdentityConfigOutput) GoString() string { return s.String() } // The request to get an origin access identity's information. type GetCloudFrontOriginAccessIdentityInput struct { _ struct{} `type:"structure"` // The identity's ID. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s GetCloudFrontOriginAccessIdentityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCloudFrontOriginAccessIdentityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetCloudFrontOriginAccessIdentityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetCloudFrontOriginAccessIdentityInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The returned result of the corresponding request. type GetCloudFrontOriginAccessIdentityOutput struct { _ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentity"` // The origin access identity's information. CloudFrontOriginAccessIdentity *OriginAccessIdentity `type:"structure"` // The current version of the origin access identity's information. For example: // E2QWRUHAPOMQZL. ETag *string `location:"header" locationName:"ETag" type:"string"` } // String returns the string representation func (s GetCloudFrontOriginAccessIdentityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCloudFrontOriginAccessIdentityOutput) GoString() string { return s.String() } // The request to get a distribution configuration. type GetDistributionConfigInput struct { _ struct{} `type:"structure"` // The distribution's ID. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s GetDistributionConfigInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDistributionConfigInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDistributionConfigInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDistributionConfigInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The returned result of the corresponding request. type GetDistributionConfigOutput struct { _ struct{} `type:"structure" payload:"DistributionConfig"` // The distribution's configuration information. DistributionConfig *DistributionConfig `type:"structure"` // The current version of the configuration. For example: E2QWRUHAPOMQZL. ETag *string `location:"header" locationName:"ETag" type:"string"` } // String returns the string representation func (s GetDistributionConfigOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDistributionConfigOutput) GoString() string { return s.String() } // The request to get a distribution's information. type GetDistributionInput struct { _ struct{} `type:"structure"` // The distribution's ID. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s GetDistributionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDistributionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDistributionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDistributionInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The returned result of the corresponding request. type GetDistributionOutput struct { _ struct{} `type:"structure" payload:"Distribution"` // The distribution's information. Distribution *Distribution `type:"structure"` // The current version of the distribution's information. For example: E2QWRUHAPOMQZL. ETag *string `location:"header" locationName:"ETag" type:"string"` } // String returns the string representation func (s GetDistributionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDistributionOutput) GoString() string { return s.String() } // The request to get an invalidation's information. type GetInvalidationInput struct { _ struct{} `type:"structure"` // The distribution's ID. // // DistributionId is a required field DistributionId *string `location:"uri" locationName:"DistributionId" type:"string" required:"true"` // The identifier for the invalidation request, for example, IDFDVBD632BHDS5. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s GetInvalidationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetInvalidationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetInvalidationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetInvalidationInput"} if s.DistributionId == nil { invalidParams.Add(request.NewErrParamRequired("DistributionId")) } if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The returned result of the corresponding request. type GetInvalidationOutput struct { _ struct{} `type:"structure" payload:"Invalidation"` // The invalidation's information. For more information, see Invalidation Complex // Type (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/InvalidationDatatype.html). Invalidation *Invalidation `type:"structure"` } // String returns the string representation func (s GetInvalidationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetInvalidationOutput) GoString() string { return s.String() } // To request to get a streaming distribution configuration. type GetStreamingDistributionConfigInput struct { _ struct{} `type:"structure"` // The streaming distribution's ID. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s GetStreamingDistributionConfigInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetStreamingDistributionConfigInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetStreamingDistributionConfigInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetStreamingDistributionConfigInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The returned result of the corresponding request. type GetStreamingDistributionConfigOutput struct { _ struct{} `type:"structure" payload:"StreamingDistributionConfig"` // The current version of the configuration. For example: E2QWRUHAPOMQZL. ETag *string `location:"header" locationName:"ETag" type:"string"` // The streaming distribution's configuration information. StreamingDistributionConfig *StreamingDistributionConfig `type:"structure"` } // String returns the string representation func (s GetStreamingDistributionConfigOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetStreamingDistributionConfigOutput) GoString() string { return s.String() } // The request to get a streaming distribution's information. type GetStreamingDistributionInput struct { _ struct{} `type:"structure"` // The streaming distribution's ID. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s GetStreamingDistributionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetStreamingDistributionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetStreamingDistributionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetStreamingDistributionInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The returned result of the corresponding request. type GetStreamingDistributionOutput struct { _ struct{} `type:"structure" payload:"StreamingDistribution"` // The current version of the streaming distribution's information. For example: // E2QWRUHAPOMQZL. ETag *string `location:"header" locationName:"ETag" type:"string"` // The streaming distribution's information. StreamingDistribution *StreamingDistribution `type:"structure"` } // String returns the string representation func (s GetStreamingDistributionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetStreamingDistributionOutput) GoString() string { return s.String() } // A complex type that specifies the headers that you want CloudFront to forward // to the origin for this cache behavior. // // For the headers that you specify, CloudFront also caches separate versions // of a specified object based on the header values in viewer requests. For // example, suppose viewer requests for logo.jpg contain a custom Product header // that has a value of either Acme or Apex, and you configure CloudFront to // cache your content based on values in the Product header. CloudFront forwards // the Product header to the origin and caches the response from the origin // once for each header value. For more information about caching based on header // values, see How CloudFront Forwards and Caches Headers (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/header-caching.html) // in the Amazon CloudFront Developer Guide. type Headers struct { _ struct{} `type:"structure"` // A complex type that contains one Name element for each header that you want // CloudFront to forward to the origin and to vary on for this cache behavior. // If Quantity is 0, omit Items. Items []*string `locationNameList:"Name" type:"list"` // The number of different headers that you want CloudFront to forward to the // origin for this cache behavior. You can configure each cache behavior in // a web distribution to do one of the following: // // * Forward all headers to your origin: Specify 1 for Quantity and * for // Name. // // If you configure CloudFront to forward all headers to your origin, CloudFront // doesn't cache the objects associated with this cache behavior. Instead, // it sends every request to the origin. // // * Forward a whitelist of headers you specify: Specify the number of headers // that you want to forward, and specify the header names in Name elements. // CloudFront caches your objects based on the values in all of the specified // headers. CloudFront also forwards the headers that it forwards by default, // but it caches your objects based only on the headers that you specify. // // // * Forward only the default headers: Specify 0 for Quantity and omit Items. // In this configuration, CloudFront doesn't cache based on the values in // the request headers. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s Headers) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Headers) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Headers) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Headers"} if s.Quantity == nil { invalidParams.Add(request.NewErrParamRequired("Quantity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An invalidation. type Invalidation struct { _ struct{} `type:"structure"` // The date and time the invalidation request was first made. // // CreateTime is a required field CreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The identifier for the invalidation request. For example: IDFDVBD632BHDS5. // // Id is a required field Id *string `type:"string" required:"true"` // The current invalidation information for the batch request. // // InvalidationBatch is a required field InvalidationBatch *InvalidationBatch `type:"structure" required:"true"` // The status of the invalidation request. When the invalidation batch is finished, // the status is Completed. // // Status is a required field Status *string `type:"string" required:"true"` } // String returns the string representation func (s Invalidation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Invalidation) GoString() string { return s.String() } // An invalidation batch. type InvalidationBatch struct { _ struct{} `type:"structure"` // A value that you specify to uniquely identify an invalidation request. CloudFront // uses the value to prevent you from accidentally resubmitting an identical // request. Whenever you create a new invalidation request, you must specify // a new value for CallerReference and change other values in the request as // applicable. One way to ensure that the value of CallerReference is unique // is to use a timestamp, for example, 20120301090000. // // If you make a second invalidation request with the same value for CallerReference, // and if the rest of the request is the same, CloudFront doesn't create a new // invalidation request. Instead, CloudFront returns information about the invalidation // request that you previously created with the same CallerReference. // // If CallerReference is a value you already sent in a previous invalidation // batch request but the content of any Path is different from the original // request, CloudFront returns an InvalidationBatchAlreadyExists error. // // CallerReference is a required field CallerReference *string `type:"string" required:"true"` // A complex type that contains information about the objects that you want // to invalidate. For more information, see Specifying the Objects to Invalidate // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Invalidation.html#invalidation-specifying-objects) // in the Amazon CloudFront Developer Guide. // // Paths is a required field Paths *Paths `type:"structure" required:"true"` } // String returns the string representation func (s InvalidationBatch) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InvalidationBatch) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InvalidationBatch) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InvalidationBatch"} if s.CallerReference == nil { invalidParams.Add(request.NewErrParamRequired("CallerReference")) } if s.Paths == nil { invalidParams.Add(request.NewErrParamRequired("Paths")) } if s.Paths != nil { if err := s.Paths.Validate(); err != nil { invalidParams.AddNested("Paths", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The InvalidationList complex type describes the list of invalidation objects. // For more information about invalidation, see Invalidating Objects (Web Distributions // Only) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Invalidation.html) // in the Amazon CloudFront Developer Guide. type InvalidationList struct { _ struct{} `type:"structure"` // A flag that indicates whether more invalidation batch requests remain to // be listed. If your results were truncated, you can make a follow-up pagination // request using the Marker request parameter to retrieve more invalidation // batches in the list. // // IsTruncated is a required field IsTruncated *bool `type:"boolean" required:"true"` // A complex type that contains one InvalidationSummary element for each invalidation // batch created by the current AWS account. Items []*InvalidationSummary `locationNameList:"InvalidationSummary" type:"list"` // The value that you provided for the Marker request parameter. // // Marker is a required field Marker *string `type:"string" required:"true"` // The value that you provided for the MaxItems request parameter. // // MaxItems is a required field MaxItems *int64 `type:"integer" required:"true"` // If IsTruncated is true, this element is present and contains the value that // you can use for the Marker request parameter to continue listing your invalidation // batches where they left off. NextMarker *string `type:"string"` // The number of invalidation batches that were created by the current AWS account. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s InvalidationList) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InvalidationList) GoString() string { return s.String() } // A summary of an invalidation request. type InvalidationSummary struct { _ struct{} `type:"structure"` // CreateTime is a required field CreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The unique ID for an invalidation request. // // Id is a required field Id *string `type:"string" required:"true"` // The status of an invalidation request. // // Status is a required field Status *string `type:"string" required:"true"` } // String returns the string representation func (s InvalidationSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InvalidationSummary) GoString() string { return s.String() } // A complex type that lists the active CloudFront key pairs, if any, that are // associated with AwsAccountNumber. // // For more information, see ActiveTrustedSigners. type KeyPairIds struct { _ struct{} `type:"structure"` // A complex type that lists the active CloudFront key pairs, if any, that are // associated with AwsAccountNumber. // // For more information, see ActiveTrustedSigners. Items []*string `locationNameList:"KeyPairId" type:"list"` // The number of active CloudFront key pairs for AwsAccountNumber. // // For more information, see ActiveTrustedSigners. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s KeyPairIds) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KeyPairIds) GoString() string { return s.String() } // The request to list origin access identities. type ListCloudFrontOriginAccessIdentitiesInput struct { _ struct{} `type:"structure"` // Use this when paginating results to indicate where to begin in your list // of origin access identities. The results include identities in the list that // occur after the marker. To get the next page of results, set the Marker to // the value of the NextMarker from the current page's response (which is also // the ID of the last identity on that page). Marker *string `location:"querystring" locationName:"Marker" type:"string"` // The maximum number of origin access identities you want in the response body. MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"` } // String returns the string representation func (s ListCloudFrontOriginAccessIdentitiesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListCloudFrontOriginAccessIdentitiesInput) GoString() string { return s.String() } // The returned result of the corresponding request. type ListCloudFrontOriginAccessIdentitiesOutput struct { _ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentityList"` // The CloudFrontOriginAccessIdentityList type. CloudFrontOriginAccessIdentityList *OriginAccessIdentityList `type:"structure"` } // String returns the string representation func (s ListCloudFrontOriginAccessIdentitiesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListCloudFrontOriginAccessIdentitiesOutput) GoString() string { return s.String() } // The request to list distributions that are associated with a specified AWS // WAF web ACL. type ListDistributionsByWebACLIdInput struct { _ struct{} `type:"structure"` // Use Marker and MaxItems to control pagination of results. If you have more // than MaxItems distributions that satisfy the request, the response includes // a NextMarker element. To get the next page of results, submit another request. // For the value of Marker, specify the value of NextMarker from the last response. // (For the first request, omit Marker.) Marker *string `location:"querystring" locationName:"Marker" type:"string"` // The maximum number of distributions that you want CloudFront to return in // the response body. The maximum and default values are both 100. MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"` // The ID of the AWS WAF web ACL that you want to list the associated distributions. // If you specify "null" for the ID, the request returns a list of the distributions // that aren't associated with a web ACL. // // WebACLId is a required field WebACLId *string `location:"uri" locationName:"WebACLId" type:"string" required:"true"` } // String returns the string representation func (s ListDistributionsByWebACLIdInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDistributionsByWebACLIdInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListDistributionsByWebACLIdInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListDistributionsByWebACLIdInput"} if s.WebACLId == nil { invalidParams.Add(request.NewErrParamRequired("WebACLId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response to a request to list the distributions that are associated with // a specified AWS WAF web ACL. type ListDistributionsByWebACLIdOutput struct { _ struct{} `type:"structure" payload:"DistributionList"` // The DistributionList type. DistributionList *DistributionList `type:"structure"` } // String returns the string representation func (s ListDistributionsByWebACLIdOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDistributionsByWebACLIdOutput) GoString() string { return s.String() } // The request to list your distributions. type ListDistributionsInput struct { _ struct{} `type:"structure"` // Use this when paginating results to indicate where to begin in your list // of distributions. The results include distributions in the list that occur // after the marker. To get the next page of results, set the Marker to the // value of the NextMarker from the current page's response (which is also the // ID of the last distribution on that page). Marker *string `location:"querystring" locationName:"Marker" type:"string"` // The maximum number of distributions you want in the response body. MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"` } // String returns the string representation func (s ListDistributionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDistributionsInput) GoString() string { return s.String() } // The returned result of the corresponding request. type ListDistributionsOutput struct { _ struct{} `type:"structure" payload:"DistributionList"` // The DistributionList type. DistributionList *DistributionList `type:"structure"` } // String returns the string representation func (s ListDistributionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDistributionsOutput) GoString() string { return s.String() } // The request to list invalidations. type ListInvalidationsInput struct { _ struct{} `type:"structure"` // The distribution's ID. // // DistributionId is a required field DistributionId *string `location:"uri" locationName:"DistributionId" type:"string" required:"true"` // Use this parameter when paginating results to indicate where to begin in // your list of invalidation batches. Because the results are returned in decreasing // order from most recent to oldest, the most recent results are on the first // page, the second page will contain earlier results, and so on. To get the // next page of results, set Marker to the value of the NextMarker from the // current page's response. This value is the same as the ID of the last invalidation // batch on that page. Marker *string `location:"querystring" locationName:"Marker" type:"string"` // The maximum number of invalidation batches that you want in the response // body. MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"` } // String returns the string representation func (s ListInvalidationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListInvalidationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListInvalidationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListInvalidationsInput"} if s.DistributionId == nil { invalidParams.Add(request.NewErrParamRequired("DistributionId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The returned result of the corresponding request. type ListInvalidationsOutput struct { _ struct{} `type:"structure" payload:"InvalidationList"` // Information about invalidation batches. InvalidationList *InvalidationList `type:"structure"` } // String returns the string representation func (s ListInvalidationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListInvalidationsOutput) GoString() string { return s.String() } // The request to list your streaming distributions. type ListStreamingDistributionsInput struct { _ struct{} `type:"structure"` // The value that you provided for the Marker request parameter. Marker *string `location:"querystring" locationName:"Marker" type:"string"` // The value that you provided for the MaxItems request parameter. MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"` } // String returns the string representation func (s ListStreamingDistributionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListStreamingDistributionsInput) GoString() string { return s.String() } // The returned result of the corresponding request. type ListStreamingDistributionsOutput struct { _ struct{} `type:"structure" payload:"StreamingDistributionList"` // The StreamingDistributionList type. StreamingDistributionList *StreamingDistributionList `type:"structure"` } // String returns the string representation func (s ListStreamingDistributionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListStreamingDistributionsOutput) GoString() string { return s.String() } // The request to list tags for a CloudFront resource. type ListTagsForResourceInput struct { _ struct{} `type:"structure"` // An ARN of a CloudFront resource. // // Resource is a required field Resource *string `location:"querystring" locationName:"Resource" type:"string" required:"true"` } // String returns the string representation func (s ListTagsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsForResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} if s.Resource == nil { invalidParams.Add(request.NewErrParamRequired("Resource")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The returned result of the corresponding request. type ListTagsForResourceOutput struct { _ struct{} `type:"structure" payload:"Tags"` // A complex type that contains zero or more Tag elements. // // Tags is a required field Tags *Tags `type:"structure" required:"true"` } // String returns the string representation func (s ListTagsForResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceOutput) GoString() string { return s.String() } // A complex type that controls whether access logs are written for the distribution. type LoggingConfig struct { _ struct{} `type:"structure"` // The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com. // // Bucket is a required field Bucket *string `type:"string" required:"true"` // Specifies whether you want CloudFront to save access logs to an Amazon S3 // bucket. If you do not want to enable logging when you create a distribution // or if you want to disable logging for an existing distribution, specify false // for Enabled, and specify empty Bucket and Prefix elements. If you specify // false for Enabled but you specify values for Bucket, prefix, and IncludeCookies, // the values are automatically deleted. // // Enabled is a required field Enabled *bool `type:"boolean" required:"true"` // Specifies whether you want CloudFront to include cookies in access logs, // specify true for IncludeCookies. If you choose to include cookies in logs, // CloudFront logs all cookies regardless of how you configure the cache behaviors // for this distribution. If you do not want to include cookies when you create // a distribution or if you want to disable include cookies for an existing // distribution, specify false for IncludeCookies. // // IncludeCookies is a required field IncludeCookies *bool `type:"boolean" required:"true"` // An optional string that you want CloudFront to prefix to the access log filenames // for this distribution, for example, myprefix/. If you want to enable logging, // but you do not want to specify a prefix, you still must include an empty // Prefix element in the Logging element. // // Prefix is a required field Prefix *string `type:"string" required:"true"` } // String returns the string representation func (s LoggingConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LoggingConfig) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LoggingConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LoggingConfig"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Enabled == nil { invalidParams.Add(request.NewErrParamRequired("Enabled")) } if s.IncludeCookies == nil { invalidParams.Add(request.NewErrParamRequired("IncludeCookies")) } if s.Prefix == nil { invalidParams.Add(request.NewErrParamRequired("Prefix")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that describes the Amazon S3 bucket or the HTTP server (for // example, a web server) from which CloudFront gets your files. You must create // at least one origin. // // For the current limit on the number of origins that you can create for a // distribution, see Amazon CloudFront Limits (http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_cloudfront) // in the AWS General Reference. type Origin struct { _ struct{} `type:"structure"` // A complex type that contains names and values for the custom headers that // you want. CustomHeaders *CustomHeaders `type:"structure"` // A complex type that contains information about a custom origin. If the origin // is an Amazon S3 bucket, use the S3OriginConfig element instead. CustomOriginConfig *CustomOriginConfig `type:"structure"` // Amazon S3 origins: The DNS name of the Amazon S3 bucket from which you want // CloudFront to get objects for this origin, for example, myawsbucket.s3.amazonaws.com. // // Constraints for Amazon S3 origins: // // * If you configured Amazon S3 Transfer Acceleration for your bucket, do // not specify the s3-accelerate endpoint for DomainName. // // * The bucket name must be between 3 and 63 characters long (inclusive). // // * The bucket name must contain only lowercase characters, numbers, periods, // underscores, and dashes. // // * The bucket name must not contain adjacent periods. // // Custom Origins: The DNS domain name for the HTTP server from which you want // CloudFront to get objects for this origin, for example, www.example.com. // // Constraints for custom origins: // // * DomainName must be a valid DNS name that contains only a-z, A-Z, 0-9, // dot (.), hyphen (-), or underscore (_) characters. // // * The name cannot exceed 128 characters. // // DomainName is a required field DomainName *string `type:"string" required:"true"` // A unique identifier for the origin. The value of Id must be unique within // the distribution. // // When you specify the value of TargetOriginId for the default cache behavior // or for another cache behavior, you indicate the origin to which you want // the cache behavior to route requests by specifying the value of the Id element // for that origin. When a request matches the path pattern for that cache behavior, // CloudFront routes the request to the specified origin. For more information, // see Cache Behavior Settings (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesCacheBehavior) // in the Amazon CloudFront Developer Guide. // // Id is a required field Id *string `type:"string" required:"true"` // An optional element that causes CloudFront to request your content from a // directory in your Amazon S3 bucket or your custom origin. When you include // the OriginPath element, specify the directory name, beginning with a /. CloudFront // appends the directory name to the value of DomainName, for example, example.com/production. // Do not include a / at the end of the directory name. // // For example, suppose you've specified the following values for your distribution: // // * DomainName: An Amazon S3 bucket named myawsbucket. // // * OriginPath: /production // // * CNAME: example.com // // When a user enters example.com/index.html in a browser, CloudFront sends // a request to Amazon S3 for myawsbucket/production/index.html. // // When a user enters example.com/acme/index.html in a browser, CloudFront sends // a request to Amazon S3 for myawsbucket/production/acme/index.html. OriginPath *string `type:"string"` // A complex type that contains information about the Amazon S3 origin. If the // origin is a custom origin, use the CustomOriginConfig element instead. S3OriginConfig *S3OriginConfig `type:"structure"` } // String returns the string representation func (s Origin) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Origin) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Origin) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Origin"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.CustomHeaders != nil { if err := s.CustomHeaders.Validate(); err != nil { invalidParams.AddNested("CustomHeaders", err.(request.ErrInvalidParams)) } } if s.CustomOriginConfig != nil { if err := s.CustomOriginConfig.Validate(); err != nil { invalidParams.AddNested("CustomOriginConfig", err.(request.ErrInvalidParams)) } } if s.S3OriginConfig != nil { if err := s.S3OriginConfig.Validate(); err != nil { invalidParams.AddNested("S3OriginConfig", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // CloudFront origin access identity. type OriginAccessIdentity struct { _ struct{} `type:"structure"` // The current configuration information for the identity. CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `type:"structure"` // The ID for the origin access identity. For example: E74FTE3AJFJ256A. // // Id is a required field Id *string `type:"string" required:"true"` // The Amazon S3 canonical user ID for the origin access identity, used when // giving the origin access identity read permission to an object in Amazon // S3. // // S3CanonicalUserId is a required field S3CanonicalUserId *string `type:"string" required:"true"` } // String returns the string representation func (s OriginAccessIdentity) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OriginAccessIdentity) GoString() string { return s.String() } // Origin access identity configuration. Send a GET request to the /CloudFront // API version/CloudFront/identity ID/config resource. type OriginAccessIdentityConfig struct { _ struct{} `type:"structure"` // A unique number that ensures the request can't be replayed. // // If the CallerReference is new (no matter the content of the CloudFrontOriginAccessIdentityConfig // object), a new origin access identity is created. // // If the CallerReference is a value already sent in a previous identity request, // and the content of the CloudFrontOriginAccessIdentityConfig is identical // to the original request (ignoring white space), the response includes the // same information returned to the original request. // // If the CallerReference is a value you already sent in a previous request // to create an identity, but the content of the CloudFrontOriginAccessIdentityConfig // is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists // error. // // CallerReference is a required field CallerReference *string `type:"string" required:"true"` // Any comments you want to include about the origin access identity. // // Comment is a required field Comment *string `type:"string" required:"true"` } // String returns the string representation func (s OriginAccessIdentityConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OriginAccessIdentityConfig) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *OriginAccessIdentityConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "OriginAccessIdentityConfig"} if s.CallerReference == nil { invalidParams.Add(request.NewErrParamRequired("CallerReference")) } if s.Comment == nil { invalidParams.Add(request.NewErrParamRequired("Comment")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Lists the origin access identities for CloudFront.Send a GET request to the // /CloudFront API version/origin-access-identity/cloudfront resource. The response // includes a CloudFrontOriginAccessIdentityList element with zero or more CloudFrontOriginAccessIdentitySummary // child elements. By default, your entire list of origin access identities // is returned in one single page. If the list is long, you can paginate it // using the MaxItems and Marker parameters. type OriginAccessIdentityList struct { _ struct{} `type:"structure"` // A flag that indicates whether more origin access identities remain to be // listed. If your results were truncated, you can make a follow-up pagination // request using the Marker request parameter to retrieve more items in the // list. // // IsTruncated is a required field IsTruncated *bool `type:"boolean" required:"true"` // A complex type that contains one CloudFrontOriginAccessIdentitySummary element // for each origin access identity that was created by the current AWS account. Items []*OriginAccessIdentitySummary `locationNameList:"CloudFrontOriginAccessIdentitySummary" type:"list"` // Use this when paginating results to indicate where to begin in your list // of origin access identities. The results include identities in the list that // occur after the marker. To get the next page of results, set the Marker to // the value of the NextMarker from the current page's response (which is also // the ID of the last identity on that page). // // Marker is a required field Marker *string `type:"string" required:"true"` // The maximum number of origin access identities you want in the response body. // // MaxItems is a required field MaxItems *int64 `type:"integer" required:"true"` // If IsTruncated is true, this element is present and contains the value you // can use for the Marker request parameter to continue listing your origin // access identities where they left off. NextMarker *string `type:"string"` // The number of CloudFront origin access identities that were created by the // current AWS account. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s OriginAccessIdentityList) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OriginAccessIdentityList) GoString() string { return s.String() } // Summary of the information about a CloudFront origin access identity. type OriginAccessIdentitySummary struct { _ struct{} `type:"structure"` // The comment for this origin access identity, as originally specified when // created. // // Comment is a required field Comment *string `type:"string" required:"true"` // The ID for the origin access identity. For example: E74FTE3AJFJ256A. // // Id is a required field Id *string `type:"string" required:"true"` // The Amazon S3 canonical user ID for the origin access identity, which you // use when giving the origin access identity read permission to an object in // Amazon S3. // // S3CanonicalUserId is a required field S3CanonicalUserId *string `type:"string" required:"true"` } // String returns the string representation func (s OriginAccessIdentitySummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OriginAccessIdentitySummary) GoString() string { return s.String() } // A complex type that contains HeaderName and HeaderValue elements, if any, // for this distribution. type OriginCustomHeader struct { _ struct{} `type:"structure"` // The name of a header that you want CloudFront to forward to your origin. // For more information, see Forwarding Custom Headers to Your Origin (Web Distributions // Only) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/forward-custom-headers.html) // in the Amazon Amazon CloudFront Developer Guide. // // HeaderName is a required field HeaderName *string `type:"string" required:"true"` // The value for the header that you specified in the HeaderName field. // // HeaderValue is a required field HeaderValue *string `type:"string" required:"true"` } // String returns the string representation func (s OriginCustomHeader) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OriginCustomHeader) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *OriginCustomHeader) Validate() error { invalidParams := request.ErrInvalidParams{Context: "OriginCustomHeader"} if s.HeaderName == nil { invalidParams.Add(request.NewErrParamRequired("HeaderName")) } if s.HeaderValue == nil { invalidParams.Add(request.NewErrParamRequired("HeaderValue")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains information about the SSL/TLS protocols that // CloudFront can use when establishing an HTTPS connection with your origin. type OriginSslProtocols struct { _ struct{} `type:"structure"` // A list that contains allowed SSL/TLS protocols for this distribution. // // Items is a required field Items []*string `locationNameList:"SslProtocol" type:"list" required:"true"` // The number of SSL/TLS protocols that you want to allow CloudFront to use // when establishing an HTTPS connection with this origin. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s OriginSslProtocols) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OriginSslProtocols) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *OriginSslProtocols) Validate() error { invalidParams := request.ErrInvalidParams{Context: "OriginSslProtocols"} if s.Items == nil { invalidParams.Add(request.NewErrParamRequired("Items")) } if s.Quantity == nil { invalidParams.Add(request.NewErrParamRequired("Quantity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains information about origins for this distribution. type Origins struct { _ struct{} `type:"structure"` // A complex type that contains origins for this distribution. Items []*Origin `locationNameList:"Origin" min:"1" type:"list"` // The number of origins for this distribution. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s Origins) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Origins) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Origins) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Origins"} if s.Items != nil && len(s.Items) < 1 { invalidParams.Add(request.NewErrParamMinLen("Items", 1)) } if s.Quantity == nil { invalidParams.Add(request.NewErrParamRequired("Quantity")) } if s.Items != nil { for i, v := range s.Items { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains information about the objects that you want // to invalidate. For more information, see Specifying the Objects to Invalidate // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Invalidation.html#invalidation-specifying-objects) // in the Amazon CloudFront Developer Guide. type Paths struct { _ struct{} `type:"structure"` // A complex type that contains a list of the paths that you want to invalidate. Items []*string `locationNameList:"Path" type:"list"` // The number of objects that you want to invalidate. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s Paths) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Paths) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Paths) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Paths"} if s.Quantity == nil { invalidParams.Add(request.NewErrParamRequired("Quantity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type QueryStringCacheKeys struct { _ struct{} `type:"structure"` // (Optional) A list that contains the query string parameters that you want // CloudFront to use as a basis for caching for this cache behavior. If Quantity // is 0, you can omit Items. Items []*string `locationNameList:"Name" type:"list"` // The number of whitelisted query string parameters for this cache behavior. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s QueryStringCacheKeys) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s QueryStringCacheKeys) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *QueryStringCacheKeys) Validate() error { invalidParams := request.ErrInvalidParams{Context: "QueryStringCacheKeys"} if s.Quantity == nil { invalidParams.Add(request.NewErrParamRequired("Quantity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that identifies ways in which you want to restrict distribution // of your content. type Restrictions struct { _ struct{} `type:"structure"` // A complex type that controls the countries in which your content is distributed. // CloudFront determines the location of your users using MaxMind GeoIP databases. // // GeoRestriction is a required field GeoRestriction *GeoRestriction `type:"structure" required:"true"` } // String returns the string representation func (s Restrictions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Restrictions) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Restrictions) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Restrictions"} if s.GeoRestriction == nil { invalidParams.Add(request.NewErrParamRequired("GeoRestriction")) } if s.GeoRestriction != nil { if err := s.GeoRestriction.Validate(); err != nil { invalidParams.AddNested("GeoRestriction", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains information about the Amazon S3 bucket from // which you want CloudFront to get your media files for distribution. type S3Origin struct { _ struct{} `type:"structure"` // The DNS name of the Amazon S3 origin. // // DomainName is a required field DomainName *string `type:"string" required:"true"` // The CloudFront origin access identity to associate with the RTMP distribution. // Use an origin access identity to configure the distribution so that end users // can only access objects in an Amazon S3 bucket through CloudFront. // // If you want end users to be able to access objects using either the CloudFront // URL or the Amazon S3 URL, specify an empty OriginAccessIdentity element. // // To delete the origin access identity from an existing distribution, update // the distribution configuration and include an empty OriginAccessIdentity // element. // // To replace the origin access identity, update the distribution configuration // and specify the new origin access identity. // // For more information, see Using an Origin Access Identity to Restrict Access // to Your Amazon S3 Content (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html) // in the Amazon Amazon CloudFront Developer Guide. // // OriginAccessIdentity is a required field OriginAccessIdentity *string `type:"string" required:"true"` } // String returns the string representation func (s S3Origin) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s S3Origin) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3Origin) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3Origin"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.OriginAccessIdentity == nil { invalidParams.Add(request.NewErrParamRequired("OriginAccessIdentity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains information about the Amazon S3 origin. If the // origin is a custom origin, use the CustomOriginConfig element instead. type S3OriginConfig struct { _ struct{} `type:"structure"` // The CloudFront origin access identity to associate with the origin. Use an // origin access identity to configure the origin so that viewers can only access // objects in an Amazon S3 bucket through CloudFront. The format of the value // is: // // origin-access-identity/CloudFront/ID-of-origin-access-identity // // where ID-of-origin-access-identity is the value that CloudFront returned // in the ID element when you created the origin access identity. // // If you want viewers to be able to access objects using either the CloudFront // URL or the Amazon S3 URL, specify an empty OriginAccessIdentity element. // // To delete the origin access identity from an existing distribution, update // the distribution configuration and include an empty OriginAccessIdentity // element. // // To replace the origin access identity, update the distribution configuration // and specify the new origin access identity. // // For more information about the origin access identity, see Serving Private // Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) // in the Amazon CloudFront Developer Guide. // // OriginAccessIdentity is a required field OriginAccessIdentity *string `type:"string" required:"true"` } // String returns the string representation func (s S3OriginConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s S3OriginConfig) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3OriginConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3OriginConfig"} if s.OriginAccessIdentity == nil { invalidParams.Add(request.NewErrParamRequired("OriginAccessIdentity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that lists the AWS accounts that were included in the TrustedSigners // complex type, as well as their active CloudFront key pair IDs, if any. type Signer struct { _ struct{} `type:"structure"` // An AWS account that is included in the TrustedSigners complex type for this // RTMP distribution. Valid values include: // // * self, which is the AWS account used to create the distribution. // // * An AWS account number. AwsAccountNumber *string `type:"string"` // A complex type that lists the active CloudFront key pairs, if any, that are // associated with AwsAccountNumber. KeyPairIds *KeyPairIds `type:"structure"` } // String returns the string representation func (s Signer) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Signer) GoString() string { return s.String() } // A streaming distribution. type StreamingDistribution struct { _ struct{} `type:"structure"` // ARN is a required field ARN *string `type:"string" required:"true"` // A complex type that lists the AWS accounts, if any, that you included in // the TrustedSigners complex type for this distribution. These are the accounts // that you want to allow to create signed URLs for private content. // // The Signer complex type lists the AWS account number of the trusted signer // or self if the signer is the AWS account that created the distribution. The // Signer element also includes the IDs of any active CloudFront key pairs that // are associated with the trusted signer's AWS account. If no KeyPairId element // appears for a Signer, that signer can't create signed URLs. // // For more information, see Serving Private Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) // in the Amazon CloudFront Developer Guide. // // ActiveTrustedSigners is a required field ActiveTrustedSigners *ActiveTrustedSigners `type:"structure" required:"true"` // The domain name that corresponds to the streaming distribution. For example: // s5c39gqb8ow64r.cloudfront.net. // // DomainName is a required field DomainName *string `type:"string" required:"true"` // The identifier for the RTMP distribution. For example: EGTXBD79EXAMPLE. // // Id is a required field Id *string `type:"string" required:"true"` // The date and time that the distribution was last modified. LastModifiedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The current status of the RTMP distribution. When the status is Deployed, // the distribution's information is propagated to all CloudFront edge locations. // // Status is a required field Status *string `type:"string" required:"true"` // The current configuration information for the RTMP distribution. // // StreamingDistributionConfig is a required field StreamingDistributionConfig *StreamingDistributionConfig `type:"structure" required:"true"` } // String returns the string representation func (s StreamingDistribution) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StreamingDistribution) GoString() string { return s.String() } // The RTMP distribution's configuration information. type StreamingDistributionConfig struct { _ struct{} `type:"structure"` // A complex type that contains information about CNAMEs (alternate domain names), // if any, for this streaming distribution. Aliases *Aliases `type:"structure"` // A unique number that ensures that the request can't be replayed. If the CallerReference // is new (no matter the content of the StreamingDistributionConfig object), // a new streaming distribution is created. If the CallerReference is a value // that you already sent in a previous request to create a streaming distribution, // and the content of the StreamingDistributionConfig is identical to the original // request (ignoring white space), the response includes the same information // returned to the original request. If the CallerReference is a value that // you already sent in a previous request to create a streaming distribution // but the content of the StreamingDistributionConfig is different from the // original request, CloudFront returns a DistributionAlreadyExists error. // // CallerReference is a required field CallerReference *string `type:"string" required:"true"` // Any comments you want to include about the streaming distribution. // // Comment is a required field Comment *string `type:"string" required:"true"` // Whether the streaming distribution is enabled to accept user requests for // content. // // Enabled is a required field Enabled *bool `type:"boolean" required:"true"` // A complex type that controls whether access logs are written for the streaming // distribution. Logging *StreamingLoggingConfig `type:"structure"` // A complex type that contains information about price class for this streaming // distribution. PriceClass *string `type:"string" enum:"PriceClass"` // A complex type that contains information about the Amazon S3 bucket from // which you want CloudFront to get your media files for distribution. // // S3Origin is a required field S3Origin *S3Origin `type:"structure" required:"true"` // A complex type that specifies any AWS accounts that you want to permit to // create signed URLs for private content. If you want the distribution to use // signed URLs, include this element; if you want the distribution to use public // URLs, remove this element. For more information, see Serving Private Content // through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) // in the Amazon CloudFront Developer Guide. // // TrustedSigners is a required field TrustedSigners *TrustedSigners `type:"structure" required:"true"` } // String returns the string representation func (s StreamingDistributionConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StreamingDistributionConfig) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StreamingDistributionConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StreamingDistributionConfig"} if s.CallerReference == nil { invalidParams.Add(request.NewErrParamRequired("CallerReference")) } if s.Comment == nil { invalidParams.Add(request.NewErrParamRequired("Comment")) } if s.Enabled == nil { invalidParams.Add(request.NewErrParamRequired("Enabled")) } if s.S3Origin == nil { invalidParams.Add(request.NewErrParamRequired("S3Origin")) } if s.TrustedSigners == nil { invalidParams.Add(request.NewErrParamRequired("TrustedSigners")) } if s.Aliases != nil { if err := s.Aliases.Validate(); err != nil { invalidParams.AddNested("Aliases", err.(request.ErrInvalidParams)) } } if s.Logging != nil { if err := s.Logging.Validate(); err != nil { invalidParams.AddNested("Logging", err.(request.ErrInvalidParams)) } } if s.S3Origin != nil { if err := s.S3Origin.Validate(); err != nil { invalidParams.AddNested("S3Origin", err.(request.ErrInvalidParams)) } } if s.TrustedSigners != nil { if err := s.TrustedSigners.Validate(); err != nil { invalidParams.AddNested("TrustedSigners", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A streaming distribution Configuration and a list of tags to be associated // with the streaming distribution. type StreamingDistributionConfigWithTags struct { _ struct{} `type:"structure"` // A streaming distribution Configuration. // // StreamingDistributionConfig is a required field StreamingDistributionConfig *StreamingDistributionConfig `type:"structure" required:"true"` // A complex type that contains zero or more Tag elements. // // Tags is a required field Tags *Tags `type:"structure" required:"true"` } // String returns the string representation func (s StreamingDistributionConfigWithTags) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StreamingDistributionConfigWithTags) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StreamingDistributionConfigWithTags) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StreamingDistributionConfigWithTags"} if s.StreamingDistributionConfig == nil { invalidParams.Add(request.NewErrParamRequired("StreamingDistributionConfig")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.StreamingDistributionConfig != nil { if err := s.StreamingDistributionConfig.Validate(); err != nil { invalidParams.AddNested("StreamingDistributionConfig", err.(request.ErrInvalidParams)) } } if s.Tags != nil { if err := s.Tags.Validate(); err != nil { invalidParams.AddNested("Tags", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A streaming distribution list. type StreamingDistributionList struct { _ struct{} `type:"structure"` // A flag that indicates whether more streaming distributions remain to be listed. // If your results were truncated, you can make a follow-up pagination request // using the Marker request parameter to retrieve more distributions in the // list. // // IsTruncated is a required field IsTruncated *bool `type:"boolean" required:"true"` // A complex type that contains one StreamingDistributionSummary element for // each distribution that was created by the current AWS account. Items []*StreamingDistributionSummary `locationNameList:"StreamingDistributionSummary" type:"list"` // The value you provided for the Marker request parameter. // // Marker is a required field Marker *string `type:"string" required:"true"` // The value you provided for the MaxItems request parameter. // // MaxItems is a required field MaxItems *int64 `type:"integer" required:"true"` // If IsTruncated is true, this element is present and contains the value you // can use for the Marker request parameter to continue listing your RTMP distributions // where they left off. NextMarker *string `type:"string"` // The number of streaming distributions that were created by the current AWS // account. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s StreamingDistributionList) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StreamingDistributionList) GoString() string { return s.String() } // A summary of the information for an Amazon CloudFront streaming distribution. type StreamingDistributionSummary struct { _ struct{} `type:"structure"` // The ARN (Amazon Resource Name) for the streaming distribution. For example: // arn:aws:cloudfront::123456789012:streaming-distribution/EDFDVBD632BHDS5, // where 123456789012 is your AWS account ID. // // ARN is a required field ARN *string `type:"string" required:"true"` // A complex type that contains information about CNAMEs (alternate domain names), // if any, for this streaming distribution. // // Aliases is a required field Aliases *Aliases `type:"structure" required:"true"` // The comment originally specified when this distribution was created. // // Comment is a required field Comment *string `type:"string" required:"true"` // The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net. // // DomainName is a required field DomainName *string `type:"string" required:"true"` // Whether the distribution is enabled to accept end user requests for content. // // Enabled is a required field Enabled *bool `type:"boolean" required:"true"` // The identifier for the distribution. For example: EDFDVBD632BHDS5. // // Id is a required field Id *string `type:"string" required:"true"` // The date and time the distribution was last modified. // // LastModifiedTime is a required field LastModifiedTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // PriceClass is a required field PriceClass *string `type:"string" required:"true" enum:"PriceClass"` // A complex type that contains information about the Amazon S3 bucket from // which you want CloudFront to get your media files for distribution. // // S3Origin is a required field S3Origin *S3Origin `type:"structure" required:"true"` // Indicates the current status of the distribution. When the status is Deployed, // the distribution's information is fully propagated throughout the Amazon // CloudFront system. // // Status is a required field Status *string `type:"string" required:"true"` // A complex type that specifies the AWS accounts, if any, that you want to // allow to create signed URLs for private content. If you want to require signed // URLs in requests for objects in the target origin that match the PathPattern // for this cache behavior, specify true for Enabled, and specify the applicable // values for Quantity and Items.If you don't want to require signed URLs in // requests for objects that match PathPattern, specify false for Enabled and // 0 for Quantity. Omit Items. To add, change, or remove one or more trusted // signers, change Enabled to true (if it's currently false), change Quantity // as applicable, and specify all of the trusted signers that you want to include // in the updated distribution. // // TrustedSigners is a required field TrustedSigners *TrustedSigners `type:"structure" required:"true"` } // String returns the string representation func (s StreamingDistributionSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StreamingDistributionSummary) GoString() string { return s.String() } // A complex type that controls whether access logs are written for this streaming // distribution. type StreamingLoggingConfig struct { _ struct{} `type:"structure"` // The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com. // // Bucket is a required field Bucket *string `type:"string" required:"true"` // Specifies whether you want CloudFront to save access logs to an Amazon S3 // bucket. If you do not want to enable logging when you create a streaming // distribution or if you want to disable logging for an existing streaming // distribution, specify false for Enabled, and specify empty Bucket and Prefix // elements. If you specify false for Enabled but you specify values for Bucket // and Prefix, the values are automatically deleted. // // Enabled is a required field Enabled *bool `type:"boolean" required:"true"` // An optional string that you want CloudFront to prefix to the access log filenames // for this streaming distribution, for example, myprefix/. If you want to enable // logging, but you do not want to specify a prefix, you still must include // an empty Prefix element in the Logging element. // // Prefix is a required field Prefix *string `type:"string" required:"true"` } // String returns the string representation func (s StreamingLoggingConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StreamingLoggingConfig) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StreamingLoggingConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StreamingLoggingConfig"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Enabled == nil { invalidParams.Add(request.NewErrParamRequired("Enabled")) } if s.Prefix == nil { invalidParams.Add(request.NewErrParamRequired("Prefix")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains Tag key and Tag value. type Tag struct { _ struct{} `type:"structure"` // A string that contains Tag key. // // The string length should be between 1 and 128 characters. Valid characters // include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @. // // Key is a required field Key *string `min:"1" type:"string" required:"true"` // A string that contains an optional Tag value. // // The string length should be between 0 and 256 characters. Valid characters // include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @. Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains zero or more Tag elements. type TagKeys struct { _ struct{} `type:"structure"` // A complex type that contains Tag key elements. Items []*string `locationNameList:"Key" type:"list"` } // String returns the string representation func (s TagKeys) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TagKeys) GoString() string { return s.String() } // The request to add tags to a CloudFront resource. type TagResourceInput struct { _ struct{} `type:"structure" payload:"Tags"` // An ARN of a CloudFront resource. // // Resource is a required field Resource *string `location:"querystring" locationName:"Resource" type:"string" required:"true"` // A complex type that contains zero or more Tag elements. // // Tags is a required field Tags *Tags `locationName:"Tags" type:"structure" required:"true"` } // String returns the string representation func (s TagResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TagResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TagResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} if s.Resource == nil { invalidParams.Add(request.NewErrParamRequired("Resource")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil { if err := s.Tags.Validate(); err != nil { invalidParams.AddNested("Tags", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type TagResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s TagResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TagResourceOutput) GoString() string { return s.String() } // A complex type that contains zero or more Tag elements. type Tags struct { _ struct{} `type:"structure"` // A complex type that contains Tag elements. Items []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s Tags) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tags) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tags) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tags"} if s.Items != nil { for i, v := range s.Items { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that specifies the AWS accounts, if any, that you want to // allow to create signed URLs for private content. // // If you want to require signed URLs in requests for objects in the target // origin that match the PathPattern for this cache behavior, specify true for // Enabled, and specify the applicable values for Quantity and Items. For more // information, see Serving Private Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) // in the Amazon Amazon CloudFront Developer Guide. // // If you don't want to require signed URLs in requests for objects that match // PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. // // To add, change, or remove one or more trusted signers, change Enabled to // true (if it's currently false), change Quantity as applicable, and specify // all of the trusted signers that you want to include in the updated distribution. // // For more information about updating the distribution configuration, see DistributionConfig // . type TrustedSigners struct { _ struct{} `type:"structure"` // Specifies whether you want to require viewers to use signed URLs to access // the files specified by PathPattern and TargetOriginId. // // Enabled is a required field Enabled *bool `type:"boolean" required:"true"` // Optional: A complex type that contains trusted signers for this cache behavior. // If Quantity is 0, you can omit Items. Items []*string `locationNameList:"AwsAccountNumber" type:"list"` // The number of trusted signers for this cache behavior. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s TrustedSigners) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TrustedSigners) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TrustedSigners) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TrustedSigners"} if s.Enabled == nil { invalidParams.Add(request.NewErrParamRequired("Enabled")) } if s.Quantity == nil { invalidParams.Add(request.NewErrParamRequired("Quantity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The request to remove tags from a CloudFront resource. type UntagResourceInput struct { _ struct{} `type:"structure" payload:"TagKeys"` // An ARN of a CloudFront resource. // // Resource is a required field Resource *string `location:"querystring" locationName:"Resource" type:"string" required:"true"` // A complex type that contains zero or more Tag key elements. // // TagKeys is a required field TagKeys *TagKeys `locationName:"TagKeys" type:"structure" required:"true"` } // String returns the string representation func (s UntagResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UntagResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UntagResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} if s.Resource == nil { invalidParams.Add(request.NewErrParamRequired("Resource")) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UntagResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UntagResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UntagResourceOutput) GoString() string { return s.String() } // The request to update an origin access identity. type UpdateCloudFrontOriginAccessIdentityInput struct { _ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentityConfig"` // The identity's configuration information. // // CloudFrontOriginAccessIdentityConfig is a required field CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `locationName:"CloudFrontOriginAccessIdentityConfig" type:"structure" required:"true"` // The identity's id. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` // The value of the ETag header that you received when retrieving the identity's // configuration. For example: E2QWRUHAPOMQZL. IfMatch *string `location:"header" locationName:"If-Match" type:"string"` } // String returns the string representation func (s UpdateCloudFrontOriginAccessIdentityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateCloudFrontOriginAccessIdentityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateCloudFrontOriginAccessIdentityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateCloudFrontOriginAccessIdentityInput"} if s.CloudFrontOriginAccessIdentityConfig == nil { invalidParams.Add(request.NewErrParamRequired("CloudFrontOriginAccessIdentityConfig")) } if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.CloudFrontOriginAccessIdentityConfig != nil { if err := s.CloudFrontOriginAccessIdentityConfig.Validate(); err != nil { invalidParams.AddNested("CloudFrontOriginAccessIdentityConfig", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The returned result of the corresponding request. type UpdateCloudFrontOriginAccessIdentityOutput struct { _ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentity"` // The origin access identity's information. CloudFrontOriginAccessIdentity *OriginAccessIdentity `type:"structure"` // The current version of the configuration. For example: E2QWRUHAPOMQZL. ETag *string `location:"header" locationName:"ETag" type:"string"` } // String returns the string representation func (s UpdateCloudFrontOriginAccessIdentityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateCloudFrontOriginAccessIdentityOutput) GoString() string { return s.String() } // The request to update a distribution. type UpdateDistributionInput struct { _ struct{} `type:"structure" payload:"DistributionConfig"` // The distribution's configuration information. // // DistributionConfig is a required field DistributionConfig *DistributionConfig `locationName:"DistributionConfig" type:"structure" required:"true"` // The distribution's id. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` // The value of the ETag header that you received when retrieving the distribution's // configuration. For example: E2QWRUHAPOMQZL. IfMatch *string `location:"header" locationName:"If-Match" type:"string"` } // String returns the string representation func (s UpdateDistributionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDistributionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateDistributionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateDistributionInput"} if s.DistributionConfig == nil { invalidParams.Add(request.NewErrParamRequired("DistributionConfig")) } if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.DistributionConfig != nil { if err := s.DistributionConfig.Validate(); err != nil { invalidParams.AddNested("DistributionConfig", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The returned result of the corresponding request. type UpdateDistributionOutput struct { _ struct{} `type:"structure" payload:"Distribution"` // The distribution's information. Distribution *Distribution `type:"structure"` // The current version of the configuration. For example: E2QWRUHAPOMQZL. ETag *string `location:"header" locationName:"ETag" type:"string"` } // String returns the string representation func (s UpdateDistributionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDistributionOutput) GoString() string { return s.String() } // The request to update a streaming distribution. type UpdateStreamingDistributionInput struct { _ struct{} `type:"structure" payload:"StreamingDistributionConfig"` // The streaming distribution's id. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` // The value of the ETag header that you received when retrieving the streaming // distribution's configuration. For example: E2QWRUHAPOMQZL. IfMatch *string `location:"header" locationName:"If-Match" type:"string"` // The streaming distribution's configuration information. // // StreamingDistributionConfig is a required field StreamingDistributionConfig *StreamingDistributionConfig `locationName:"StreamingDistributionConfig" type:"structure" required:"true"` } // String returns the string representation func (s UpdateStreamingDistributionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateStreamingDistributionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateStreamingDistributionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateStreamingDistributionInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.StreamingDistributionConfig == nil { invalidParams.Add(request.NewErrParamRequired("StreamingDistributionConfig")) } if s.StreamingDistributionConfig != nil { if err := s.StreamingDistributionConfig.Validate(); err != nil { invalidParams.AddNested("StreamingDistributionConfig", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The returned result of the corresponding request. type UpdateStreamingDistributionOutput struct { _ struct{} `type:"structure" payload:"StreamingDistribution"` // The current version of the configuration. For example: E2QWRUHAPOMQZL. ETag *string `location:"header" locationName:"ETag" type:"string"` // The streaming distribution's information. StreamingDistribution *StreamingDistribution `type:"structure"` } // String returns the string representation func (s UpdateStreamingDistributionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateStreamingDistributionOutput) GoString() string { return s.String() } // A complex type that specifies the following: // // * Which SSL/TLS certificate to use when viewers request objects using // HTTPS // // * Whether you want CloudFront to use dedicated IP addresses or SNI when // you're using alternate domain names in your object names // // * The minimum protocol version that you want CloudFront to use when communicating // with viewers // // For more information, see Using an HTTPS Connection to Access Your Objects // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html) // in the Amazon Amazon CloudFront Developer Guide. type ViewerCertificate struct { _ struct{} `type:"structure"` // If you want viewers to use HTTPS to request your objects and you're using // an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), // specify the ACM certificate ARN of the custom viewer certificate for this // distribution. Specify either this value, IAMCertificateId, or CloudFrontDefaultCertificate. ACMCertificateArn *string `type:"string"` // Include one of these values to specify the following: // // * Whether you want viewers to use HTTP or HTTPS to request your objects. // // * If you want viewers to use HTTPS, whether you're using an alternate // domain name such as example.com or the CloudFront domain name for your // distribution, such as d111111abcdef8.cloudfront.net. // // * If you're using an alternate domain name, whether AWS Certificate Manager // (ACM) provided the certificate, or you purchased a certificate from a // third-party certificate authority and imported it into ACM or uploaded // it to the IAM certificate store. // // You must specify one (and only one) of the three values. Do not specify false // for CloudFrontDefaultCertificate. // // If you want viewers to use HTTP to request your objects: Specify the following // value: // // true // // In addition, specify allow-all for ViewerProtocolPolicy for all of your cache // behaviors. // // If you want viewers to use HTTPS to request your objects: Choose the type // of certificate that you want to use based on whether you're using an alternate // domain name for your objects or the CloudFront domain name: // // * If you're using an alternate domain name, such as example.com: Specify // one of the following values, depending on whether ACM provided your certificate // or you purchased your certificate from third-party certificate authority: // // ARN for ACM SSL/TLS certificate where // ARN for ACM SSL/TLS certificate is the ARN for the ACM SSL/TLS certificate // that you want to use for this distribution. // // IAM certificate ID where IAM certificate // ID is the ID that IAM returned when you added the certificate to the IAM // certificate store. // // If you specify ACMCertificateArn or IAMCertificateId, you must also specify // a value for SSLSupportMethod. // // If you choose to use an ACM certificate or a certificate in the IAM certificate // store, we recommend that you use only an alternate domain name in your // object URLs (https://example.com/logo.jpg). If you use the domain name // that is associated with your CloudFront distribution (https://d111111abcdef8.cloudfront.net/logo.jpg) // and the viewer supports SNI, then CloudFront behaves normally. However, // if the browser does not support SNI, the user's experience depends on // the value that you choose for SSLSupportMethod: // // vip: The viewer displays a warning because there is a mismatch between the // CloudFront domain name and the domain name in your SSL/TLS certificate. // // sni-only: CloudFront drops the connection with the browser without returning // the object. // // * If you're using the CloudFront domain name for your distribution, such // as d111111abcdef8.cloudfront.net: Specify the following value: // // true // // If you want viewers to use HTTPS, you must also specify one of the following // values in your cache behaviors: // // https-only // // redirect-to-https // // You can also optionally require that CloudFront use HTTPS to communicate // with your origin by specifying one of the following values for the applicable // origins: // // https-only // // match-viewer // // For more information, see Using Alternate Domain Names and HTTPS (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html#CNAMEsAndHTTPS) // in the Amazon CloudFront Developer Guide. Certificate *string `deprecated:"true" type:"string"` // This field is deprecated. You can use one of the following: [ACMCertificateArn, // IAMCertificateId, or CloudFrontDefaultCertificate]. CertificateSource *string `deprecated:"true" type:"string" enum:"CertificateSource"` // If you want viewers to use HTTPS to request your objects and you're using // the CloudFront domain name of your distribution in your object URLs (for // example, https://d111111abcdef8.cloudfront.net/logo.jpg), set to true. Omit // this value if you are setting an ACMCertificateArn or IAMCertificateId. CloudFrontDefaultCertificate *bool `type:"boolean"` // If you want viewers to use HTTPS to request your objects and you're using // an alternate domain name in your object URLs (for example, https://example.com/logo.jpg), // specify the IAM certificate identifier of the custom viewer certificate for // this distribution. Specify either this value, ACMCertificateArn, or CloudFrontDefaultCertificate. IAMCertificateId *string `type:"string"` // Specify the minimum version of the SSL/TLS protocol that you want CloudFront // to use for HTTPS connections between viewers and CloudFront: SSLv3 or TLSv1. // CloudFront serves your objects only to viewers that support SSL/TLS version // that you specify and later versions. The TLSv1 protocol is more secure, so // we recommend that you specify SSLv3 only if your users are using browsers // or devices that don't support TLSv1. Note the following: // // * If you specify true, // the minimum SSL protocol version is TLSv1 and can't be changed. // // * If you're using a custom certificate (if you specify a value for ACMCertificateArn // or for IAMCertificateId) and if you're using SNI (if you specify sni-only // for SSLSupportMethod), you must specify TLSv1 for MinimumProtocolVersion. MinimumProtocolVersion *string `type:"string" enum:"MinimumProtocolVersion"` // If you specify a value for ACMCertificateArn or for IAMCertificateId, you // must also specify how you want CloudFront to serve HTTPS requests: using // a method that works for all clients or one that works for most clients: // // * vip: CloudFront uses dedicated IP addresses for your content and can // respond to HTTPS requests from any viewer. However, you must request permission // to use this feature, and you incur additional monthly charges. // // * sni-only: CloudFront can respond to HTTPS requests from viewers that // support Server Name Indication (SNI). All modern browsers support SNI, // but some browsers still in use don't support SNI. If some of your users' // browsers don't support SNI, we recommend that you do one of the following: // // Use the vip option (dedicated IP addresses) instead of sni-only. // // Use the CloudFront SSL/TLS certificate instead of a custom certificate. This // requires that you use the CloudFront domain name of your distribution // in the URLs for your objects, for example, https://d111111abcdef8.cloudfront.net/logo.png. // // If you can control which browser your users use, upgrade the browser to one // that supports SNI. // // Use HTTP instead of HTTPS. // // Do not specify a value for SSLSupportMethod if you specified true. // // For more information, see Using Alternate Domain Names and HTTPS (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html#CNAMEsAndHTTPS.html) // in the Amazon CloudFront Developer Guide. SSLSupportMethod *string `type:"string" enum:"SSLSupportMethod"` } // String returns the string representation func (s ViewerCertificate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ViewerCertificate) GoString() string { return s.String() } const ( // CertificateSourceCloudfront is a CertificateSource enum value CertificateSourceCloudfront = "cloudfront" // CertificateSourceIam is a CertificateSource enum value CertificateSourceIam = "iam" // CertificateSourceAcm is a CertificateSource enum value CertificateSourceAcm = "acm" ) const ( // GeoRestrictionTypeBlacklist is a GeoRestrictionType enum value GeoRestrictionTypeBlacklist = "blacklist" // GeoRestrictionTypeWhitelist is a GeoRestrictionType enum value GeoRestrictionTypeWhitelist = "whitelist" // GeoRestrictionTypeNone is a GeoRestrictionType enum value GeoRestrictionTypeNone = "none" ) const ( // HttpVersionHttp11 is a HttpVersion enum value HttpVersionHttp11 = "http1.1" // HttpVersionHttp2 is a HttpVersion enum value HttpVersionHttp2 = "http2" ) const ( // ItemSelectionNone is a ItemSelection enum value ItemSelectionNone = "none" // ItemSelectionWhitelist is a ItemSelection enum value ItemSelectionWhitelist = "whitelist" // ItemSelectionAll is a ItemSelection enum value ItemSelectionAll = "all" ) const ( // MethodGet is a Method enum value MethodGet = "GET" // MethodHead is a Method enum value MethodHead = "HEAD" // MethodPost is a Method enum value MethodPost = "POST" // MethodPut is a Method enum value MethodPut = "PUT" // MethodPatch is a Method enum value MethodPatch = "PATCH" // MethodOptions is a Method enum value MethodOptions = "OPTIONS" // MethodDelete is a Method enum value MethodDelete = "DELETE" ) const ( // MinimumProtocolVersionSslv3 is a MinimumProtocolVersion enum value MinimumProtocolVersionSslv3 = "SSLv3" // MinimumProtocolVersionTlsv1 is a MinimumProtocolVersion enum value MinimumProtocolVersionTlsv1 = "TLSv1" ) const ( // OriginProtocolPolicyHttpOnly is a OriginProtocolPolicy enum value OriginProtocolPolicyHttpOnly = "http-only" // OriginProtocolPolicyMatchViewer is a OriginProtocolPolicy enum value OriginProtocolPolicyMatchViewer = "match-viewer" // OriginProtocolPolicyHttpsOnly is a OriginProtocolPolicy enum value OriginProtocolPolicyHttpsOnly = "https-only" ) const ( // PriceClassPriceClass100 is a PriceClass enum value PriceClassPriceClass100 = "PriceClass_100" // PriceClassPriceClass200 is a PriceClass enum value PriceClassPriceClass200 = "PriceClass_200" // PriceClassPriceClassAll is a PriceClass enum value PriceClassPriceClassAll = "PriceClass_All" ) const ( // SSLSupportMethodSniOnly is a SSLSupportMethod enum value SSLSupportMethodSniOnly = "sni-only" // SSLSupportMethodVip is a SSLSupportMethod enum value SSLSupportMethodVip = "vip" ) const ( // SslProtocolSslv3 is a SslProtocol enum value SslProtocolSslv3 = "SSLv3" // SslProtocolTlsv1 is a SslProtocol enum value SslProtocolTlsv1 = "TLSv1" // SslProtocolTlsv11 is a SslProtocol enum value SslProtocolTlsv11 = "TLSv1.1" // SslProtocolTlsv12 is a SslProtocol enum value SslProtocolTlsv12 = "TLSv1.2" ) const ( // ViewerProtocolPolicyAllowAll is a ViewerProtocolPolicy enum value ViewerProtocolPolicyAllowAll = "allow-all" // ViewerProtocolPolicyHttpsOnly is a ViewerProtocolPolicy enum value ViewerProtocolPolicyHttpsOnly = "https-only" // ViewerProtocolPolicyRedirectToHttps is a ViewerProtocolPolicy enum value ViewerProtocolPolicyRedirectToHttps = "redirect-to-https" ) aws-sdk-go-1.4.22/service/cloudfront/cloudfrontiface/000077500000000000000000000000001300374646400225515ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudfront/cloudfrontiface/interface.go000066400000000000000000000240651300374646400250470ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cloudfrontiface provides an interface to enable mocking the Amazon CloudFront service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package cloudfrontiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/cloudfront" ) // CloudFrontAPI provides an interface to enable mocking the // cloudfront.CloudFront service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon CloudFront. // func myFunc(svc cloudfrontiface.CloudFrontAPI) bool { // // Make svc.CreateCloudFrontOriginAccessIdentity request // } // // func main() { // sess := session.New() // svc := cloudfront.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockCloudFrontClient struct { // cloudfrontiface.CloudFrontAPI // } // func (m *mockCloudFrontClient) CreateCloudFrontOriginAccessIdentity(input *cloudfront.CreateCloudFrontOriginAccessIdentityInput) (*cloudfront.CreateCloudFrontOriginAccessIdentityOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockCloudFrontClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type CloudFrontAPI interface { CreateCloudFrontOriginAccessIdentityRequest(*cloudfront.CreateCloudFrontOriginAccessIdentityInput) (*request.Request, *cloudfront.CreateCloudFrontOriginAccessIdentityOutput) CreateCloudFrontOriginAccessIdentity(*cloudfront.CreateCloudFrontOriginAccessIdentityInput) (*cloudfront.CreateCloudFrontOriginAccessIdentityOutput, error) CreateDistributionRequest(*cloudfront.CreateDistributionInput) (*request.Request, *cloudfront.CreateDistributionOutput) CreateDistribution(*cloudfront.CreateDistributionInput) (*cloudfront.CreateDistributionOutput, error) CreateDistributionWithTagsRequest(*cloudfront.CreateDistributionWithTagsInput) (*request.Request, *cloudfront.CreateDistributionWithTagsOutput) CreateDistributionWithTags(*cloudfront.CreateDistributionWithTagsInput) (*cloudfront.CreateDistributionWithTagsOutput, error) CreateInvalidationRequest(*cloudfront.CreateInvalidationInput) (*request.Request, *cloudfront.CreateInvalidationOutput) CreateInvalidation(*cloudfront.CreateInvalidationInput) (*cloudfront.CreateInvalidationOutput, error) CreateStreamingDistributionRequest(*cloudfront.CreateStreamingDistributionInput) (*request.Request, *cloudfront.CreateStreamingDistributionOutput) CreateStreamingDistribution(*cloudfront.CreateStreamingDistributionInput) (*cloudfront.CreateStreamingDistributionOutput, error) CreateStreamingDistributionWithTagsRequest(*cloudfront.CreateStreamingDistributionWithTagsInput) (*request.Request, *cloudfront.CreateStreamingDistributionWithTagsOutput) CreateStreamingDistributionWithTags(*cloudfront.CreateStreamingDistributionWithTagsInput) (*cloudfront.CreateStreamingDistributionWithTagsOutput, error) DeleteCloudFrontOriginAccessIdentityRequest(*cloudfront.DeleteCloudFrontOriginAccessIdentityInput) (*request.Request, *cloudfront.DeleteCloudFrontOriginAccessIdentityOutput) DeleteCloudFrontOriginAccessIdentity(*cloudfront.DeleteCloudFrontOriginAccessIdentityInput) (*cloudfront.DeleteCloudFrontOriginAccessIdentityOutput, error) DeleteDistributionRequest(*cloudfront.DeleteDistributionInput) (*request.Request, *cloudfront.DeleteDistributionOutput) DeleteDistribution(*cloudfront.DeleteDistributionInput) (*cloudfront.DeleteDistributionOutput, error) DeleteStreamingDistributionRequest(*cloudfront.DeleteStreamingDistributionInput) (*request.Request, *cloudfront.DeleteStreamingDistributionOutput) DeleteStreamingDistribution(*cloudfront.DeleteStreamingDistributionInput) (*cloudfront.DeleteStreamingDistributionOutput, error) GetCloudFrontOriginAccessIdentityRequest(*cloudfront.GetCloudFrontOriginAccessIdentityInput) (*request.Request, *cloudfront.GetCloudFrontOriginAccessIdentityOutput) GetCloudFrontOriginAccessIdentity(*cloudfront.GetCloudFrontOriginAccessIdentityInput) (*cloudfront.GetCloudFrontOriginAccessIdentityOutput, error) GetCloudFrontOriginAccessIdentityConfigRequest(*cloudfront.GetCloudFrontOriginAccessIdentityConfigInput) (*request.Request, *cloudfront.GetCloudFrontOriginAccessIdentityConfigOutput) GetCloudFrontOriginAccessIdentityConfig(*cloudfront.GetCloudFrontOriginAccessIdentityConfigInput) (*cloudfront.GetCloudFrontOriginAccessIdentityConfigOutput, error) GetDistributionRequest(*cloudfront.GetDistributionInput) (*request.Request, *cloudfront.GetDistributionOutput) GetDistribution(*cloudfront.GetDistributionInput) (*cloudfront.GetDistributionOutput, error) GetDistributionConfigRequest(*cloudfront.GetDistributionConfigInput) (*request.Request, *cloudfront.GetDistributionConfigOutput) GetDistributionConfig(*cloudfront.GetDistributionConfigInput) (*cloudfront.GetDistributionConfigOutput, error) GetInvalidationRequest(*cloudfront.GetInvalidationInput) (*request.Request, *cloudfront.GetInvalidationOutput) GetInvalidation(*cloudfront.GetInvalidationInput) (*cloudfront.GetInvalidationOutput, error) GetStreamingDistributionRequest(*cloudfront.GetStreamingDistributionInput) (*request.Request, *cloudfront.GetStreamingDistributionOutput) GetStreamingDistribution(*cloudfront.GetStreamingDistributionInput) (*cloudfront.GetStreamingDistributionOutput, error) GetStreamingDistributionConfigRequest(*cloudfront.GetStreamingDistributionConfigInput) (*request.Request, *cloudfront.GetStreamingDistributionConfigOutput) GetStreamingDistributionConfig(*cloudfront.GetStreamingDistributionConfigInput) (*cloudfront.GetStreamingDistributionConfigOutput, error) ListCloudFrontOriginAccessIdentitiesRequest(*cloudfront.ListCloudFrontOriginAccessIdentitiesInput) (*request.Request, *cloudfront.ListCloudFrontOriginAccessIdentitiesOutput) ListCloudFrontOriginAccessIdentities(*cloudfront.ListCloudFrontOriginAccessIdentitiesInput) (*cloudfront.ListCloudFrontOriginAccessIdentitiesOutput, error) ListCloudFrontOriginAccessIdentitiesPages(*cloudfront.ListCloudFrontOriginAccessIdentitiesInput, func(*cloudfront.ListCloudFrontOriginAccessIdentitiesOutput, bool) bool) error ListDistributionsRequest(*cloudfront.ListDistributionsInput) (*request.Request, *cloudfront.ListDistributionsOutput) ListDistributions(*cloudfront.ListDistributionsInput) (*cloudfront.ListDistributionsOutput, error) ListDistributionsPages(*cloudfront.ListDistributionsInput, func(*cloudfront.ListDistributionsOutput, bool) bool) error ListDistributionsByWebACLIdRequest(*cloudfront.ListDistributionsByWebACLIdInput) (*request.Request, *cloudfront.ListDistributionsByWebACLIdOutput) ListDistributionsByWebACLId(*cloudfront.ListDistributionsByWebACLIdInput) (*cloudfront.ListDistributionsByWebACLIdOutput, error) ListInvalidationsRequest(*cloudfront.ListInvalidationsInput) (*request.Request, *cloudfront.ListInvalidationsOutput) ListInvalidations(*cloudfront.ListInvalidationsInput) (*cloudfront.ListInvalidationsOutput, error) ListInvalidationsPages(*cloudfront.ListInvalidationsInput, func(*cloudfront.ListInvalidationsOutput, bool) bool) error ListStreamingDistributionsRequest(*cloudfront.ListStreamingDistributionsInput) (*request.Request, *cloudfront.ListStreamingDistributionsOutput) ListStreamingDistributions(*cloudfront.ListStreamingDistributionsInput) (*cloudfront.ListStreamingDistributionsOutput, error) ListStreamingDistributionsPages(*cloudfront.ListStreamingDistributionsInput, func(*cloudfront.ListStreamingDistributionsOutput, bool) bool) error ListTagsForResourceRequest(*cloudfront.ListTagsForResourceInput) (*request.Request, *cloudfront.ListTagsForResourceOutput) ListTagsForResource(*cloudfront.ListTagsForResourceInput) (*cloudfront.ListTagsForResourceOutput, error) TagResourceRequest(*cloudfront.TagResourceInput) (*request.Request, *cloudfront.TagResourceOutput) TagResource(*cloudfront.TagResourceInput) (*cloudfront.TagResourceOutput, error) UntagResourceRequest(*cloudfront.UntagResourceInput) (*request.Request, *cloudfront.UntagResourceOutput) UntagResource(*cloudfront.UntagResourceInput) (*cloudfront.UntagResourceOutput, error) UpdateCloudFrontOriginAccessIdentityRequest(*cloudfront.UpdateCloudFrontOriginAccessIdentityInput) (*request.Request, *cloudfront.UpdateCloudFrontOriginAccessIdentityOutput) UpdateCloudFrontOriginAccessIdentity(*cloudfront.UpdateCloudFrontOriginAccessIdentityInput) (*cloudfront.UpdateCloudFrontOriginAccessIdentityOutput, error) UpdateDistributionRequest(*cloudfront.UpdateDistributionInput) (*request.Request, *cloudfront.UpdateDistributionOutput) UpdateDistribution(*cloudfront.UpdateDistributionInput) (*cloudfront.UpdateDistributionOutput, error) UpdateStreamingDistributionRequest(*cloudfront.UpdateStreamingDistributionInput) (*request.Request, *cloudfront.UpdateStreamingDistributionOutput) UpdateStreamingDistribution(*cloudfront.UpdateStreamingDistributionInput) (*cloudfront.UpdateStreamingDistributionOutput, error) WaitUntilDistributionDeployed(*cloudfront.GetDistributionInput) error WaitUntilInvalidationCompleted(*cloudfront.GetInvalidationInput) error WaitUntilStreamingDistributionDeployed(*cloudfront.GetStreamingDistributionInput) error } var _ CloudFrontAPI = (*cloudfront.CloudFront)(nil) aws-sdk-go-1.4.22/service/cloudfront/examples_test.go000066400000000000000000001242201300374646400226070ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudfront_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/cloudfront" ) var _ time.Duration var _ bytes.Buffer func ExampleCloudFront_CreateCloudFrontOriginAccessIdentity() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.CreateCloudFrontOriginAccessIdentityInput{ CloudFrontOriginAccessIdentityConfig: &cloudfront.OriginAccessIdentityConfig{ // Required CallerReference: aws.String("string"), // Required Comment: aws.String("string"), // Required }, } resp, err := svc.CreateCloudFrontOriginAccessIdentity(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_CreateDistribution() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.CreateDistributionInput{ DistributionConfig: &cloudfront.DistributionConfig{ // Required CallerReference: aws.String("string"), // Required Comment: aws.String("string"), // Required DefaultCacheBehavior: &cloudfront.DefaultCacheBehavior{ // Required ForwardedValues: &cloudfront.ForwardedValues{ // Required Cookies: &cloudfront.CookiePreference{ // Required Forward: aws.String("ItemSelection"), // Required WhitelistedNames: &cloudfront.CookieNames{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, QueryString: aws.Bool(true), // Required Headers: &cloudfront.Headers{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, QueryStringCacheKeys: &cloudfront.QueryStringCacheKeys{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, MinTTL: aws.Int64(1), // Required TargetOriginId: aws.String("string"), // Required TrustedSigners: &cloudfront.TrustedSigners{ // Required Enabled: aws.Bool(true), // Required Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, ViewerProtocolPolicy: aws.String("ViewerProtocolPolicy"), // Required AllowedMethods: &cloudfront.AllowedMethods{ Items: []*string{ // Required aws.String("Method"), // Required // More values... }, Quantity: aws.Int64(1), // Required CachedMethods: &cloudfront.CachedMethods{ Items: []*string{ // Required aws.String("Method"), // Required // More values... }, Quantity: aws.Int64(1), // Required }, }, Compress: aws.Bool(true), DefaultTTL: aws.Int64(1), MaxTTL: aws.Int64(1), SmoothStreaming: aws.Bool(true), }, Enabled: aws.Bool(true), // Required Origins: &cloudfront.Origins{ // Required Quantity: aws.Int64(1), // Required Items: []*cloudfront.Origin{ { // Required DomainName: aws.String("string"), // Required Id: aws.String("string"), // Required CustomHeaders: &cloudfront.CustomHeaders{ Quantity: aws.Int64(1), // Required Items: []*cloudfront.OriginCustomHeader{ { // Required HeaderName: aws.String("string"), // Required HeaderValue: aws.String("string"), // Required }, // More values... }, }, CustomOriginConfig: &cloudfront.CustomOriginConfig{ HTTPPort: aws.Int64(1), // Required HTTPSPort: aws.Int64(1), // Required OriginProtocolPolicy: aws.String("OriginProtocolPolicy"), // Required OriginSslProtocols: &cloudfront.OriginSslProtocols{ Items: []*string{ // Required aws.String("SslProtocol"), // Required // More values... }, Quantity: aws.Int64(1), // Required }, }, OriginPath: aws.String("string"), S3OriginConfig: &cloudfront.S3OriginConfig{ OriginAccessIdentity: aws.String("string"), // Required }, }, // More values... }, }, Aliases: &cloudfront.Aliases{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, CacheBehaviors: &cloudfront.CacheBehaviors{ Quantity: aws.Int64(1), // Required Items: []*cloudfront.CacheBehavior{ { // Required ForwardedValues: &cloudfront.ForwardedValues{ // Required Cookies: &cloudfront.CookiePreference{ // Required Forward: aws.String("ItemSelection"), // Required WhitelistedNames: &cloudfront.CookieNames{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, QueryString: aws.Bool(true), // Required Headers: &cloudfront.Headers{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, QueryStringCacheKeys: &cloudfront.QueryStringCacheKeys{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, MinTTL: aws.Int64(1), // Required PathPattern: aws.String("string"), // Required TargetOriginId: aws.String("string"), // Required TrustedSigners: &cloudfront.TrustedSigners{ // Required Enabled: aws.Bool(true), // Required Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, ViewerProtocolPolicy: aws.String("ViewerProtocolPolicy"), // Required AllowedMethods: &cloudfront.AllowedMethods{ Items: []*string{ // Required aws.String("Method"), // Required // More values... }, Quantity: aws.Int64(1), // Required CachedMethods: &cloudfront.CachedMethods{ Items: []*string{ // Required aws.String("Method"), // Required // More values... }, Quantity: aws.Int64(1), // Required }, }, Compress: aws.Bool(true), DefaultTTL: aws.Int64(1), MaxTTL: aws.Int64(1), SmoothStreaming: aws.Bool(true), }, // More values... }, }, CustomErrorResponses: &cloudfront.CustomErrorResponses{ Quantity: aws.Int64(1), // Required Items: []*cloudfront.CustomErrorResponse{ { // Required ErrorCode: aws.Int64(1), // Required ErrorCachingMinTTL: aws.Int64(1), ResponseCode: aws.String("string"), ResponsePagePath: aws.String("string"), }, // More values... }, }, DefaultRootObject: aws.String("string"), HttpVersion: aws.String("HttpVersion"), IsIPV6Enabled: aws.Bool(true), Logging: &cloudfront.LoggingConfig{ Bucket: aws.String("string"), // Required Enabled: aws.Bool(true), // Required IncludeCookies: aws.Bool(true), // Required Prefix: aws.String("string"), // Required }, PriceClass: aws.String("PriceClass"), Restrictions: &cloudfront.Restrictions{ GeoRestriction: &cloudfront.GeoRestriction{ // Required Quantity: aws.Int64(1), // Required RestrictionType: aws.String("GeoRestrictionType"), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, ViewerCertificate: &cloudfront.ViewerCertificate{ ACMCertificateArn: aws.String("string"), Certificate: aws.String("string"), CertificateSource: aws.String("CertificateSource"), CloudFrontDefaultCertificate: aws.Bool(true), IAMCertificateId: aws.String("string"), MinimumProtocolVersion: aws.String("MinimumProtocolVersion"), SSLSupportMethod: aws.String("SSLSupportMethod"), }, WebACLId: aws.String("string"), }, } resp, err := svc.CreateDistribution(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_CreateDistributionWithTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.CreateDistributionWithTagsInput{ DistributionConfigWithTags: &cloudfront.DistributionConfigWithTags{ // Required DistributionConfig: &cloudfront.DistributionConfig{ // Required CallerReference: aws.String("string"), // Required Comment: aws.String("string"), // Required DefaultCacheBehavior: &cloudfront.DefaultCacheBehavior{ // Required ForwardedValues: &cloudfront.ForwardedValues{ // Required Cookies: &cloudfront.CookiePreference{ // Required Forward: aws.String("ItemSelection"), // Required WhitelistedNames: &cloudfront.CookieNames{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, QueryString: aws.Bool(true), // Required Headers: &cloudfront.Headers{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, QueryStringCacheKeys: &cloudfront.QueryStringCacheKeys{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, MinTTL: aws.Int64(1), // Required TargetOriginId: aws.String("string"), // Required TrustedSigners: &cloudfront.TrustedSigners{ // Required Enabled: aws.Bool(true), // Required Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, ViewerProtocolPolicy: aws.String("ViewerProtocolPolicy"), // Required AllowedMethods: &cloudfront.AllowedMethods{ Items: []*string{ // Required aws.String("Method"), // Required // More values... }, Quantity: aws.Int64(1), // Required CachedMethods: &cloudfront.CachedMethods{ Items: []*string{ // Required aws.String("Method"), // Required // More values... }, Quantity: aws.Int64(1), // Required }, }, Compress: aws.Bool(true), DefaultTTL: aws.Int64(1), MaxTTL: aws.Int64(1), SmoothStreaming: aws.Bool(true), }, Enabled: aws.Bool(true), // Required Origins: &cloudfront.Origins{ // Required Quantity: aws.Int64(1), // Required Items: []*cloudfront.Origin{ { // Required DomainName: aws.String("string"), // Required Id: aws.String("string"), // Required CustomHeaders: &cloudfront.CustomHeaders{ Quantity: aws.Int64(1), // Required Items: []*cloudfront.OriginCustomHeader{ { // Required HeaderName: aws.String("string"), // Required HeaderValue: aws.String("string"), // Required }, // More values... }, }, CustomOriginConfig: &cloudfront.CustomOriginConfig{ HTTPPort: aws.Int64(1), // Required HTTPSPort: aws.Int64(1), // Required OriginProtocolPolicy: aws.String("OriginProtocolPolicy"), // Required OriginSslProtocols: &cloudfront.OriginSslProtocols{ Items: []*string{ // Required aws.String("SslProtocol"), // Required // More values... }, Quantity: aws.Int64(1), // Required }, }, OriginPath: aws.String("string"), S3OriginConfig: &cloudfront.S3OriginConfig{ OriginAccessIdentity: aws.String("string"), // Required }, }, // More values... }, }, Aliases: &cloudfront.Aliases{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, CacheBehaviors: &cloudfront.CacheBehaviors{ Quantity: aws.Int64(1), // Required Items: []*cloudfront.CacheBehavior{ { // Required ForwardedValues: &cloudfront.ForwardedValues{ // Required Cookies: &cloudfront.CookiePreference{ // Required Forward: aws.String("ItemSelection"), // Required WhitelistedNames: &cloudfront.CookieNames{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, QueryString: aws.Bool(true), // Required Headers: &cloudfront.Headers{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, QueryStringCacheKeys: &cloudfront.QueryStringCacheKeys{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, MinTTL: aws.Int64(1), // Required PathPattern: aws.String("string"), // Required TargetOriginId: aws.String("string"), // Required TrustedSigners: &cloudfront.TrustedSigners{ // Required Enabled: aws.Bool(true), // Required Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, ViewerProtocolPolicy: aws.String("ViewerProtocolPolicy"), // Required AllowedMethods: &cloudfront.AllowedMethods{ Items: []*string{ // Required aws.String("Method"), // Required // More values... }, Quantity: aws.Int64(1), // Required CachedMethods: &cloudfront.CachedMethods{ Items: []*string{ // Required aws.String("Method"), // Required // More values... }, Quantity: aws.Int64(1), // Required }, }, Compress: aws.Bool(true), DefaultTTL: aws.Int64(1), MaxTTL: aws.Int64(1), SmoothStreaming: aws.Bool(true), }, // More values... }, }, CustomErrorResponses: &cloudfront.CustomErrorResponses{ Quantity: aws.Int64(1), // Required Items: []*cloudfront.CustomErrorResponse{ { // Required ErrorCode: aws.Int64(1), // Required ErrorCachingMinTTL: aws.Int64(1), ResponseCode: aws.String("string"), ResponsePagePath: aws.String("string"), }, // More values... }, }, DefaultRootObject: aws.String("string"), HttpVersion: aws.String("HttpVersion"), IsIPV6Enabled: aws.Bool(true), Logging: &cloudfront.LoggingConfig{ Bucket: aws.String("string"), // Required Enabled: aws.Bool(true), // Required IncludeCookies: aws.Bool(true), // Required Prefix: aws.String("string"), // Required }, PriceClass: aws.String("PriceClass"), Restrictions: &cloudfront.Restrictions{ GeoRestriction: &cloudfront.GeoRestriction{ // Required Quantity: aws.Int64(1), // Required RestrictionType: aws.String("GeoRestrictionType"), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, ViewerCertificate: &cloudfront.ViewerCertificate{ ACMCertificateArn: aws.String("string"), Certificate: aws.String("string"), CertificateSource: aws.String("CertificateSource"), CloudFrontDefaultCertificate: aws.Bool(true), IAMCertificateId: aws.String("string"), MinimumProtocolVersion: aws.String("MinimumProtocolVersion"), SSLSupportMethod: aws.String("SSLSupportMethod"), }, WebACLId: aws.String("string"), }, Tags: &cloudfront.Tags{ // Required Items: []*cloudfront.Tag{ { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), }, // More values... }, }, }, } resp, err := svc.CreateDistributionWithTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_CreateInvalidation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.CreateInvalidationInput{ DistributionId: aws.String("string"), // Required InvalidationBatch: &cloudfront.InvalidationBatch{ // Required CallerReference: aws.String("string"), // Required Paths: &cloudfront.Paths{ // Required Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, } resp, err := svc.CreateInvalidation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_CreateStreamingDistribution() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.CreateStreamingDistributionInput{ StreamingDistributionConfig: &cloudfront.StreamingDistributionConfig{ // Required CallerReference: aws.String("string"), // Required Comment: aws.String("string"), // Required Enabled: aws.Bool(true), // Required S3Origin: &cloudfront.S3Origin{ // Required DomainName: aws.String("string"), // Required OriginAccessIdentity: aws.String("string"), // Required }, TrustedSigners: &cloudfront.TrustedSigners{ // Required Enabled: aws.Bool(true), // Required Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, Aliases: &cloudfront.Aliases{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, Logging: &cloudfront.StreamingLoggingConfig{ Bucket: aws.String("string"), // Required Enabled: aws.Bool(true), // Required Prefix: aws.String("string"), // Required }, PriceClass: aws.String("PriceClass"), }, } resp, err := svc.CreateStreamingDistribution(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_CreateStreamingDistributionWithTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.CreateStreamingDistributionWithTagsInput{ StreamingDistributionConfigWithTags: &cloudfront.StreamingDistributionConfigWithTags{ // Required StreamingDistributionConfig: &cloudfront.StreamingDistributionConfig{ // Required CallerReference: aws.String("string"), // Required Comment: aws.String("string"), // Required Enabled: aws.Bool(true), // Required S3Origin: &cloudfront.S3Origin{ // Required DomainName: aws.String("string"), // Required OriginAccessIdentity: aws.String("string"), // Required }, TrustedSigners: &cloudfront.TrustedSigners{ // Required Enabled: aws.Bool(true), // Required Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, Aliases: &cloudfront.Aliases{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, Logging: &cloudfront.StreamingLoggingConfig{ Bucket: aws.String("string"), // Required Enabled: aws.Bool(true), // Required Prefix: aws.String("string"), // Required }, PriceClass: aws.String("PriceClass"), }, Tags: &cloudfront.Tags{ // Required Items: []*cloudfront.Tag{ { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), }, // More values... }, }, }, } resp, err := svc.CreateStreamingDistributionWithTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_DeleteCloudFrontOriginAccessIdentity() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.DeleteCloudFrontOriginAccessIdentityInput{ Id: aws.String("string"), // Required IfMatch: aws.String("string"), } resp, err := svc.DeleteCloudFrontOriginAccessIdentity(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_DeleteDistribution() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.DeleteDistributionInput{ Id: aws.String("string"), // Required IfMatch: aws.String("string"), } resp, err := svc.DeleteDistribution(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_DeleteStreamingDistribution() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.DeleteStreamingDistributionInput{ Id: aws.String("string"), // Required IfMatch: aws.String("string"), } resp, err := svc.DeleteStreamingDistribution(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_GetCloudFrontOriginAccessIdentity() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.GetCloudFrontOriginAccessIdentityInput{ Id: aws.String("string"), // Required } resp, err := svc.GetCloudFrontOriginAccessIdentity(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_GetCloudFrontOriginAccessIdentityConfig() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.GetCloudFrontOriginAccessIdentityConfigInput{ Id: aws.String("string"), // Required } resp, err := svc.GetCloudFrontOriginAccessIdentityConfig(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_GetDistribution() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.GetDistributionInput{ Id: aws.String("string"), // Required } resp, err := svc.GetDistribution(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_GetDistributionConfig() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.GetDistributionConfigInput{ Id: aws.String("string"), // Required } resp, err := svc.GetDistributionConfig(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_GetInvalidation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.GetInvalidationInput{ DistributionId: aws.String("string"), // Required Id: aws.String("string"), // Required } resp, err := svc.GetInvalidation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_GetStreamingDistribution() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.GetStreamingDistributionInput{ Id: aws.String("string"), // Required } resp, err := svc.GetStreamingDistribution(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_GetStreamingDistributionConfig() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.GetStreamingDistributionConfigInput{ Id: aws.String("string"), // Required } resp, err := svc.GetStreamingDistributionConfig(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_ListCloudFrontOriginAccessIdentities() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.ListCloudFrontOriginAccessIdentitiesInput{ Marker: aws.String("string"), MaxItems: aws.Int64(1), } resp, err := svc.ListCloudFrontOriginAccessIdentities(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_ListDistributions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.ListDistributionsInput{ Marker: aws.String("string"), MaxItems: aws.Int64(1), } resp, err := svc.ListDistributions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_ListDistributionsByWebACLId() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.ListDistributionsByWebACLIdInput{ WebACLId: aws.String("string"), // Required Marker: aws.String("string"), MaxItems: aws.Int64(1), } resp, err := svc.ListDistributionsByWebACLId(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_ListInvalidations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.ListInvalidationsInput{ DistributionId: aws.String("string"), // Required Marker: aws.String("string"), MaxItems: aws.Int64(1), } resp, err := svc.ListInvalidations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_ListStreamingDistributions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.ListStreamingDistributionsInput{ Marker: aws.String("string"), MaxItems: aws.Int64(1), } resp, err := svc.ListStreamingDistributions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_ListTagsForResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.ListTagsForResourceInput{ Resource: aws.String("ResourceARN"), // Required } resp, err := svc.ListTagsForResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_TagResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.TagResourceInput{ Resource: aws.String("ResourceARN"), // Required Tags: &cloudfront.Tags{ // Required Items: []*cloudfront.Tag{ { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), }, // More values... }, }, } resp, err := svc.TagResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_UntagResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.UntagResourceInput{ Resource: aws.String("ResourceARN"), // Required TagKeys: &cloudfront.TagKeys{ // Required Items: []*string{ aws.String("TagKey"), // Required // More values... }, }, } resp, err := svc.UntagResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_UpdateCloudFrontOriginAccessIdentity() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.UpdateCloudFrontOriginAccessIdentityInput{ CloudFrontOriginAccessIdentityConfig: &cloudfront.OriginAccessIdentityConfig{ // Required CallerReference: aws.String("string"), // Required Comment: aws.String("string"), // Required }, Id: aws.String("string"), // Required IfMatch: aws.String("string"), } resp, err := svc.UpdateCloudFrontOriginAccessIdentity(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_UpdateDistribution() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.UpdateDistributionInput{ DistributionConfig: &cloudfront.DistributionConfig{ // Required CallerReference: aws.String("string"), // Required Comment: aws.String("string"), // Required DefaultCacheBehavior: &cloudfront.DefaultCacheBehavior{ // Required ForwardedValues: &cloudfront.ForwardedValues{ // Required Cookies: &cloudfront.CookiePreference{ // Required Forward: aws.String("ItemSelection"), // Required WhitelistedNames: &cloudfront.CookieNames{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, QueryString: aws.Bool(true), // Required Headers: &cloudfront.Headers{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, QueryStringCacheKeys: &cloudfront.QueryStringCacheKeys{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, MinTTL: aws.Int64(1), // Required TargetOriginId: aws.String("string"), // Required TrustedSigners: &cloudfront.TrustedSigners{ // Required Enabled: aws.Bool(true), // Required Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, ViewerProtocolPolicy: aws.String("ViewerProtocolPolicy"), // Required AllowedMethods: &cloudfront.AllowedMethods{ Items: []*string{ // Required aws.String("Method"), // Required // More values... }, Quantity: aws.Int64(1), // Required CachedMethods: &cloudfront.CachedMethods{ Items: []*string{ // Required aws.String("Method"), // Required // More values... }, Quantity: aws.Int64(1), // Required }, }, Compress: aws.Bool(true), DefaultTTL: aws.Int64(1), MaxTTL: aws.Int64(1), SmoothStreaming: aws.Bool(true), }, Enabled: aws.Bool(true), // Required Origins: &cloudfront.Origins{ // Required Quantity: aws.Int64(1), // Required Items: []*cloudfront.Origin{ { // Required DomainName: aws.String("string"), // Required Id: aws.String("string"), // Required CustomHeaders: &cloudfront.CustomHeaders{ Quantity: aws.Int64(1), // Required Items: []*cloudfront.OriginCustomHeader{ { // Required HeaderName: aws.String("string"), // Required HeaderValue: aws.String("string"), // Required }, // More values... }, }, CustomOriginConfig: &cloudfront.CustomOriginConfig{ HTTPPort: aws.Int64(1), // Required HTTPSPort: aws.Int64(1), // Required OriginProtocolPolicy: aws.String("OriginProtocolPolicy"), // Required OriginSslProtocols: &cloudfront.OriginSslProtocols{ Items: []*string{ // Required aws.String("SslProtocol"), // Required // More values... }, Quantity: aws.Int64(1), // Required }, }, OriginPath: aws.String("string"), S3OriginConfig: &cloudfront.S3OriginConfig{ OriginAccessIdentity: aws.String("string"), // Required }, }, // More values... }, }, Aliases: &cloudfront.Aliases{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, CacheBehaviors: &cloudfront.CacheBehaviors{ Quantity: aws.Int64(1), // Required Items: []*cloudfront.CacheBehavior{ { // Required ForwardedValues: &cloudfront.ForwardedValues{ // Required Cookies: &cloudfront.CookiePreference{ // Required Forward: aws.String("ItemSelection"), // Required WhitelistedNames: &cloudfront.CookieNames{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, QueryString: aws.Bool(true), // Required Headers: &cloudfront.Headers{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, QueryStringCacheKeys: &cloudfront.QueryStringCacheKeys{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, MinTTL: aws.Int64(1), // Required PathPattern: aws.String("string"), // Required TargetOriginId: aws.String("string"), // Required TrustedSigners: &cloudfront.TrustedSigners{ // Required Enabled: aws.Bool(true), // Required Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, ViewerProtocolPolicy: aws.String("ViewerProtocolPolicy"), // Required AllowedMethods: &cloudfront.AllowedMethods{ Items: []*string{ // Required aws.String("Method"), // Required // More values... }, Quantity: aws.Int64(1), // Required CachedMethods: &cloudfront.CachedMethods{ Items: []*string{ // Required aws.String("Method"), // Required // More values... }, Quantity: aws.Int64(1), // Required }, }, Compress: aws.Bool(true), DefaultTTL: aws.Int64(1), MaxTTL: aws.Int64(1), SmoothStreaming: aws.Bool(true), }, // More values... }, }, CustomErrorResponses: &cloudfront.CustomErrorResponses{ Quantity: aws.Int64(1), // Required Items: []*cloudfront.CustomErrorResponse{ { // Required ErrorCode: aws.Int64(1), // Required ErrorCachingMinTTL: aws.Int64(1), ResponseCode: aws.String("string"), ResponsePagePath: aws.String("string"), }, // More values... }, }, DefaultRootObject: aws.String("string"), HttpVersion: aws.String("HttpVersion"), IsIPV6Enabled: aws.Bool(true), Logging: &cloudfront.LoggingConfig{ Bucket: aws.String("string"), // Required Enabled: aws.Bool(true), // Required IncludeCookies: aws.Bool(true), // Required Prefix: aws.String("string"), // Required }, PriceClass: aws.String("PriceClass"), Restrictions: &cloudfront.Restrictions{ GeoRestriction: &cloudfront.GeoRestriction{ // Required Quantity: aws.Int64(1), // Required RestrictionType: aws.String("GeoRestrictionType"), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, }, ViewerCertificate: &cloudfront.ViewerCertificate{ ACMCertificateArn: aws.String("string"), Certificate: aws.String("string"), CertificateSource: aws.String("CertificateSource"), CloudFrontDefaultCertificate: aws.Bool(true), IAMCertificateId: aws.String("string"), MinimumProtocolVersion: aws.String("MinimumProtocolVersion"), SSLSupportMethod: aws.String("SSLSupportMethod"), }, WebACLId: aws.String("string"), }, Id: aws.String("string"), // Required IfMatch: aws.String("string"), } resp, err := svc.UpdateDistribution(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudFront_UpdateStreamingDistribution() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudfront.New(sess) params := &cloudfront.UpdateStreamingDistributionInput{ Id: aws.String("string"), // Required StreamingDistributionConfig: &cloudfront.StreamingDistributionConfig{ // Required CallerReference: aws.String("string"), // Required Comment: aws.String("string"), // Required Enabled: aws.Bool(true), // Required S3Origin: &cloudfront.S3Origin{ // Required DomainName: aws.String("string"), // Required OriginAccessIdentity: aws.String("string"), // Required }, TrustedSigners: &cloudfront.TrustedSigners{ // Required Enabled: aws.Bool(true), // Required Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, Aliases: &cloudfront.Aliases{ Quantity: aws.Int64(1), // Required Items: []*string{ aws.String("string"), // Required // More values... }, }, Logging: &cloudfront.StreamingLoggingConfig{ Bucket: aws.String("string"), // Required Enabled: aws.Bool(true), // Required Prefix: aws.String("string"), // Required }, PriceClass: aws.String("PriceClass"), }, IfMatch: aws.String("string"), } resp, err := svc.UpdateStreamingDistribution(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/cloudfront/service.go000066400000000000000000000056541300374646400214030ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudfront import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/restxml" ) // This is the Amazon CloudFront API Reference. This guide is for developers // who need detailed information about the CloudFront API actions, data types, // and errors. For detailed information about CloudFront features and their // associated API calls, see the Amazon CloudFront Developer Guide. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type CloudFront struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "cloudfront" // New creates a new instance of the CloudFront client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a CloudFront client from just a session. // svc := cloudfront.New(mySession) // // // Create a CloudFront client with additional configuration // svc := cloudfront.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *CloudFront { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *CloudFront { svc := &CloudFront{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2016-09-29", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a CloudFront operation and runs any // custom request initialization. func (c *CloudFront) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/cloudfront/sign/000077500000000000000000000000001300374646400203425ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudfront/sign/policy.go000066400000000000000000000154211300374646400221730ustar00rootroot00000000000000package sign import ( "bytes" "crypto" "crypto/rand" "crypto/rsa" "crypto/sha1" "encoding/base64" "encoding/json" "fmt" "io" "net/url" "strings" "time" "unicode" ) // An AWSEpochTime wraps a time value providing JSON serialization needed for // AWS Policy epoch time fields. type AWSEpochTime struct { time.Time } // NewAWSEpochTime returns a new AWSEpochTime pointer wrapping the Go time provided. func NewAWSEpochTime(t time.Time) *AWSEpochTime { return &AWSEpochTime{t} } // MarshalJSON serializes the epoch time as AWS Profile epoch time. func (t AWSEpochTime) MarshalJSON() ([]byte, error) { return []byte(fmt.Sprintf(`{"AWS:EpochTime":%d}`, t.UTC().Unix())), nil } // An IPAddress wraps an IPAddress source IP providing JSON serialization information type IPAddress struct { SourceIP string `json:"AWS:SourceIp"` } // A Condition defines the restrictions for how a signed URL can be used. type Condition struct { // Optional IP address mask the signed URL must be requested from. IPAddress *IPAddress `json:"IpAddress,omitempty"` // Optional date that the signed URL cannot be used until. It is invalid // to make requests with the signed URL prior to this date. DateGreaterThan *AWSEpochTime `json:",omitempty"` // Required date that the signed URL will expire. A DateLessThan is required // sign cloud front URLs DateLessThan *AWSEpochTime `json:",omitempty"` } // A Statement is a collection of conditions for resources type Statement struct { // The Web or RTMP resource the URL will be signed for Resource string // The set of conditions for this resource Condition Condition } // A Policy defines the resources that a signed will be signed for. // // See the following page for more information on how policies are constructed. // http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-creating-signed-url-custom-policy.html#private-content-custom-policy-statement type Policy struct { // List of resource and condition statements. // Signed URLs should only provide a single statement. Statements []Statement `json:"Statement"` } // Override for testing to mock out usage of crypto/rand.Reader var randReader = rand.Reader // Sign will sign a policy using an RSA private key. It will return a base 64 // encoded signature and policy if no error is encountered. // // The signature and policy should be added to the signed URL following the // guidelines in: // http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-signed-urls.html func (p *Policy) Sign(privKey *rsa.PrivateKey) (b64Signature, b64Policy []byte, err error) { if err = p.Validate(); err != nil { return nil, nil, err } // Build and escape the policy b64Policy, jsonPolicy, err := encodePolicy(p) if err != nil { return nil, nil, err } awsEscapeEncoded(b64Policy) // Build and escape the signature b64Signature, err = signEncodedPolicy(randReader, jsonPolicy, privKey) if err != nil { return nil, nil, err } awsEscapeEncoded(b64Signature) return b64Signature, b64Policy, nil } // Validate verifies that the policy is valid and usable, and returns an // error if there is a problem. func (p *Policy) Validate() error { if len(p.Statements) == 0 { return fmt.Errorf("at least one policy statement is required") } for i, s := range p.Statements { if s.Resource == "" { return fmt.Errorf("statement at index %d does not have a resource", i) } if !isASCII(s.Resource) { return fmt.Errorf("unable to sign resource, [%s]. "+ "Resources must only contain ascii characters. "+ "Hostnames with unicode should be encoded as Punycode, (e.g. golang.org/x/net/idna), "+ "and URL unicode path/query characters should be escaped.", s.Resource) } } return nil } // CreateResource constructs, validates, and returns a resource URL string. An // error will be returned if unable to create the resource string. func CreateResource(scheme, u string) (string, error) { scheme = strings.ToLower(scheme) if scheme == "http" || scheme == "https" || scheme == "http*" || scheme == "*" { return u, nil } if scheme == "rtmp" { parsed, err := url.Parse(u) if err != nil { return "", fmt.Errorf("unable to parse rtmp URL, err: %s", err) } rtmpURL := strings.TrimLeft(parsed.Path, "/") if parsed.RawQuery != "" { rtmpURL = fmt.Sprintf("%s?%s", rtmpURL, parsed.RawQuery) } return rtmpURL, nil } return "", fmt.Errorf("invalid URL scheme must be http, https, or rtmp. Provided: %s", scheme) } // NewCannedPolicy returns a new Canned Policy constructed using the resource // and expires time. This can be used to generate the basic model for a Policy // that can be then augmented with additional conditions. // // See the following page for more information on how policies are constructed. // http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-creating-signed-url-custom-policy.html#private-content-custom-policy-statement func NewCannedPolicy(resource string, expires time.Time) *Policy { return &Policy{ Statements: []Statement{ { Resource: resource, Condition: Condition{ DateLessThan: NewAWSEpochTime(expires), }, }, }, } } // encodePolicy encodes the Policy as JSON and also base 64 encodes it. func encodePolicy(p *Policy) (b64Policy, jsonPolicy []byte, err error) { jsonPolicy, err = json.Marshal(p) if err != nil { return nil, nil, fmt.Errorf("failed to encode policy, %s", err.Error()) } // Remove leading and trailing white space, JSON encoding will note include // whitespace within the encoding. jsonPolicy = bytes.TrimSpace(jsonPolicy) b64Policy = make([]byte, base64.StdEncoding.EncodedLen(len(jsonPolicy))) base64.StdEncoding.Encode(b64Policy, jsonPolicy) return b64Policy, jsonPolicy, nil } // signEncodedPolicy will sign and base 64 encode the JSON encoded policy. func signEncodedPolicy(randReader io.Reader, jsonPolicy []byte, privKey *rsa.PrivateKey) ([]byte, error) { hash := sha1.New() if _, err := bytes.NewReader(jsonPolicy).WriteTo(hash); err != nil { return nil, fmt.Errorf("failed to calculate signing hash, %s", err.Error()) } sig, err := rsa.SignPKCS1v15(randReader, privKey, crypto.SHA1, hash.Sum(nil)) if err != nil { return nil, fmt.Errorf("failed to sign policy, %s", err.Error()) } b64Sig := make([]byte, base64.StdEncoding.EncodedLen(len(sig))) base64.StdEncoding.Encode(b64Sig, sig) return b64Sig, nil } // special characters to be replaced with awsEscapeEncoded var invalidEncodedChar = map[byte]byte{ '+': '-', '=': '_', '/': '~', } // awsEscapeEncoded will replace base64 encoding's special characters to be URL safe. func awsEscapeEncoded(b []byte) { for i, v := range b { if r, ok := invalidEncodedChar[v]; ok { b[i] = r } } } func isASCII(u string) bool { for _, c := range u { if c > unicode.MaxASCII { return false } } return true } aws-sdk-go-1.4.22/service/cloudfront/sign/policy_test.go000066400000000000000000000070201300374646400232260ustar00rootroot00000000000000package sign import ( "bytes" "crypto" "crypto/rsa" "crypto/sha1" "encoding/base64" "fmt" "math/rand" "strings" "testing" "time" ) func TestEpochTimeMarshal(t *testing.T) { v := AWSEpochTime{time.Now()} b, err := v.MarshalJSON() if err != nil { t.Fatalf("Unexpected error, %#v", err) } expected := fmt.Sprintf(`{"AWS:EpochTime":%d}`, v.UTC().Unix()) if string(b) != expected { t.Errorf("Expected marshaled time to match, expect: %s, actual: %s", expected, string(b)) } } var testCreateResource = []struct { scheme, u string expect string errPrefix string }{ { "https", "https://example.com/a?b=1", "https://example.com/a?b=1", "", }, { "http", "http*://example.com/a?b=1", "http*://example.com/a?b=1", "", }, { "rtmp", "https://example.com/a?b=1", "a?b=1", "", }, { "ftp", "ftp://example.com/a?b=1", "", "invalid URL scheme", }, } func TestCreateResource(t *testing.T) { for i, v := range testCreateResource { r, err := CreateResource(v.scheme, v.u) if err != nil { if v.errPrefix == "" { t.Errorf("%d, Unexpected error %s", i, err.Error()) continue } if !strings.HasPrefix(err.Error(), v.errPrefix) { t.Errorf("%d, Expected to find prefix\nexpect: %s\nactual: %s", i, v.errPrefix, err.Error()) continue } } else if v.errPrefix != "" { t.Errorf("%d, Expected error %s", i, v.errPrefix) continue } if v.expect != r { t.Errorf("%d, Expected to find prefix\nexpect: %s\nactual: %s", i, v.expect, r) } } } var testTime = time.Date(2009, time.November, 10, 23, 0, 0, 0, time.UTC) const expectedJSONPolicy = `{"Statement":[{"Resource":"https://example.com/a","Condition":{"DateLessThan":{"AWS:EpochTime":1257894000}}}]}` const expectedB64Policy = `eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9leGFtcGxlLmNvbS9hIiwiQ29uZGl0aW9uIjp7IkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxMjU3ODk0MDAwfX19XX0=` func TestEncodePolicy(t *testing.T) { p := NewCannedPolicy("https://example.com/a", testTime) b64Policy, jsonPolicy, err := encodePolicy(p) if err != nil { t.Fatalf("Unexpected error, %#v", err) } if string(jsonPolicy) != expectedJSONPolicy { t.Errorf("Expected json encoding to match, \nexpect: %s\nactual: %s\n", expectedJSONPolicy, jsonPolicy) } if string(b64Policy) != expectedB64Policy { t.Errorf("Expected b64 encoding to match, \nexpect: %s\nactual: %s\n", expectedB64Policy, b64Policy) } } func TestSignEncodedPolicy(t *testing.T) { p := NewCannedPolicy("https://example.com/a", testTime) _, jsonPolicy, err := encodePolicy(p) if err != nil { t.Fatalf("Unexpected policy encode error, %#v", err) } r := newRandomReader(rand.New(rand.NewSource(1))) privKey, err := rsa.GenerateKey(r, 1024) if err != nil { t.Fatalf("Unexpected priv key error, %#v", err) } b64Signature, err := signEncodedPolicy(r, jsonPolicy, privKey) if err != nil { t.Fatalf("Unexpected policy sign error, %#v", err) } hash := sha1.New() if _, err = bytes.NewReader(jsonPolicy).WriteTo(hash); err != nil { t.Fatalf("Unexpected hash error, %#v", err) } decodedSig, err := base64.StdEncoding.DecodeString(string(b64Signature)) if err != nil { t.Fatalf("Unexpected base64 decode signature, %#v", err) } if err := rsa.VerifyPKCS1v15(&privKey.PublicKey, crypto.SHA1, hash.Sum(nil), decodedSig); err != nil { t.Fatalf("Unable to verify signature, %#v", err) } } func TestAWSEscape(t *testing.T) { expect := "a-b_c~" actual := []byte("a+b=c/") awsEscapeEncoded(actual) if string(actual) != expect { t.Errorf("expect: %s, actual: %s", expect, string(actual)) } } aws-sdk-go-1.4.22/service/cloudfront/sign/privkey.go000066400000000000000000000032041300374646400223610ustar00rootroot00000000000000package sign import ( "crypto/rsa" "crypto/x509" "encoding/pem" "fmt" "io" "io/ioutil" "os" ) // LoadPEMPrivKeyFile reads a PEM encoded RSA private key from the file name. // A new RSA private key will be returned if no error. func LoadPEMPrivKeyFile(name string) (*rsa.PrivateKey, error) { file, err := os.Open(name) if err != nil { return nil, err } defer file.Close() return LoadPEMPrivKey(file) } // LoadPEMPrivKey reads a PEM encoded RSA private key from the io.Reader. // A new RSA private key will be returned if no error. func LoadPEMPrivKey(reader io.Reader) (*rsa.PrivateKey, error) { block, err := loadPem(reader) if err != nil { return nil, err } return x509.ParsePKCS1PrivateKey(block.Bytes) } // LoadEncryptedPEMPrivKey decrypts the PEM encoded private key using the // password provided returning a RSA private key. If the PEM data is invalid, // or unable to decrypt an error will be returned. func LoadEncryptedPEMPrivKey(reader io.Reader, password []byte) (*rsa.PrivateKey, error) { block, err := loadPem(reader) if err != nil { return nil, err } decryptedBlock, err := x509.DecryptPEMBlock(block, password) if err != nil { return nil, err } return x509.ParsePKCS1PrivateKey(decryptedBlock) } func loadPem(reader io.Reader) (*pem.Block, error) { b, err := ioutil.ReadAll(reader) if err != nil { return nil, err } block, _ := pem.Decode(b) if block == nil { // pem.Decode will set block to nil if there is no PEM data in the input // the second parameter will contain the provided bytes that failed // to be decoded. return nil, fmt.Errorf("no valid PEM data provided") } return block, nil } aws-sdk-go-1.4.22/service/cloudfront/sign/privkey_test.go000066400000000000000000000042011300374646400234160ustar00rootroot00000000000000package sign import ( "bytes" "crypto/rsa" "crypto/x509" "encoding/pem" "io" "math/rand" "strings" "testing" ) func generatePEM(randReader io.Reader, password []byte) (buf *bytes.Buffer, err error) { k, err := rsa.GenerateKey(randReader, 1024) if err != nil { return nil, err } derBytes := x509.MarshalPKCS1PrivateKey(k) var block *pem.Block if password != nil { block, err = x509.EncryptPEMBlock(randReader, "RSA PRIVATE KEY", derBytes, password, x509.PEMCipherAES128) } else { block = &pem.Block{ Type: "RSA PRIVATE KEY", Bytes: derBytes, } } buf = &bytes.Buffer{} err = pem.Encode(buf, block) return buf, err } func TestLoadPemPrivKey(t *testing.T) { reader, err := generatePEM(newRandomReader(rand.New(rand.NewSource(1))), nil) if err != nil { t.Errorf("Unexpected pem generation err %s", err.Error()) } privKey, err := LoadPEMPrivKey(reader) if err != nil { t.Errorf("Unexpected key load error, %s", err.Error()) } if privKey == nil { t.Errorf("Expected valid privKey, but got nil") } } func TestLoadPemPrivKeyInvalidPEM(t *testing.T) { reader := strings.NewReader("invalid PEM data") privKey, err := LoadPEMPrivKey(reader) if err == nil { t.Errorf("Expected error invalid PEM data error") } if privKey != nil { t.Errorf("Expected nil privKey but got %#v", privKey) } } func TestLoadEncryptedPEMPrivKey(t *testing.T) { reader, err := generatePEM(newRandomReader(rand.New(rand.NewSource(1))), []byte("password")) if err != nil { t.Errorf("Unexpected pem generation err %s", err.Error()) } privKey, err := LoadEncryptedPEMPrivKey(reader, []byte("password")) if err != nil { t.Errorf("Unexpected key load error, %s", err.Error()) } if privKey == nil { t.Errorf("Expected valid privKey, but got nil") } } func TestLoadEncryptedPEMPrivKeyWrongPassword(t *testing.T) { reader, err := generatePEM(newRandomReader(rand.New(rand.NewSource(1))), []byte("password")) privKey, err := LoadEncryptedPEMPrivKey(reader, []byte("wrong password")) if err == nil { t.Errorf("Expected error invalid PEM data error") } if privKey != nil { t.Errorf("Expected nil privKey but got %#v", privKey) } } aws-sdk-go-1.4.22/service/cloudfront/sign/randomreader.go000066400000000000000000000012601300374646400233330ustar00rootroot00000000000000package sign import ( "bytes" "encoding/binary" "math/rand" ) // A randomReader wraps a math/rand.Rand within an reader so that it can used // as a predictable testing replacement for crypto/rand.Reader type randomReader struct { b *bytes.Buffer r *rand.Rand } // newRandomReader returns a new instance of the random reader func newRandomReader(r *rand.Rand) *randomReader { return &randomReader{b: &bytes.Buffer{}, r: r} } // Read will read random bytes from up to the length of b. func (m *randomReader) Read(b []byte) (int, error) { for i := 0; i < len(b); { binary.Write(m.b, binary.LittleEndian, m.r.Int63()) n, _ := m.b.Read(b[i:]) i += n } return len(b), nil } aws-sdk-go-1.4.22/service/cloudfront/sign/sign_cookie.go000066400000000000000000000166011300374646400231660ustar00rootroot00000000000000package sign import ( "crypto/rsa" "fmt" "net/http" "strings" "time" ) const ( // CookiePolicyName name of the policy cookie CookiePolicyName = "CloudFront-Policy" // CookieSignatureName name of the signature cookie CookieSignatureName = "CloudFront-Signature" // CookieKeyIDName name of the signing Key ID cookie CookieKeyIDName = "CloudFront-Key-Pair-Id" ) // A CookieOptions optional additional options that can be applied to the signed // cookies. type CookieOptions struct { Path string Domain string Secure bool } // apply will integration the options provided into the base cookie options // a new copy will be returned. The base CookieOption will not be modified. func (o CookieOptions) apply(opts ...func(*CookieOptions)) CookieOptions { if len(opts) == 0 { return o } for _, opt := range opts { opt(&o) } return o } // A CookieSigner provides signing utilities to sign Cookies for Amazon CloudFront // resources. Using a private key and Credential Key Pair key ID the CookieSigner // only needs to be created once per Credential Key Pair key ID and private key. // // More information about signed Cookies and their structure can be found at: // http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-setting-signed-cookie-custom-policy.html // // To sign a Cookie, create a CookieSigner with your private key and credential // pair key ID. Once you have a CookieSigner instance you can call Sign or // SignWithPolicy to sign the URLs. // // The signer is safe to use concurrently, but the optional cookies options // are not safe to modify concurrently. type CookieSigner struct { keyID string privKey *rsa.PrivateKey Opts CookieOptions } // NewCookieSigner constructs and returns a new CookieSigner to be used to for // signing Amazon CloudFront URL resources with. func NewCookieSigner(keyID string, privKey *rsa.PrivateKey, opts ...func(*CookieOptions)) *CookieSigner { signer := &CookieSigner{ keyID: keyID, privKey: privKey, Opts: CookieOptions{}.apply(opts...), } return signer } // Sign returns the cookies needed to allow user agents to make arbetrary // requests to cloudfront for the resource(s) defined by the policy. // // Sign will create a CloudFront policy with only a resource and condition of // DateLessThan equal to the expires time provided. // // The returned slice cookies should all be added to the Client's cookies or // server's response. // // Example: // s := NewCookieSigner(keyID, privKey) // // // Get Signed cookies for a resource that will expire in 1 hour // cookies, err := s.Sign("*", time.Now().Add(1 * time.Hour)) // if err != nil { // fmt.Println("failed to create signed cookies", err) // return // } // // // Or get Signed cookies for a resource that will expire in 1 hour // // and set path and domain of cookies // cookies, err := s.Sign("*", time.Now().Add(1 * time.Hour), func(o *sign.CookieOptions) { // o.Path = "/" // o.Domain = ".example.com" // }) // if err != nil { // fmt.Println("failed to create signed cookies", err) // return // } // // // Server Response via http.ResponseWriter // for _, c := range cookies { // http.SetCookie(w, c) // } // // // Client request via the cookie jar // if client.CookieJar != nil { // for _, c := range cookies { // client.Cookie(w, c) // } // } func (s CookieSigner) Sign(u string, expires time.Time, opts ...func(*CookieOptions)) ([]*http.Cookie, error) { scheme, err := cookieURLScheme(u) if err != nil { return nil, err } resource, err := CreateResource(scheme, u) if err != nil { return nil, err } p := NewCannedPolicy(resource, expires) return createCookies(p, s.keyID, s.privKey, s.Opts.apply(opts...)) } // Returns and validates the URL's scheme. // http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-setting-signed-cookie-custom-policy.html#private-content-custom-policy-statement-cookies func cookieURLScheme(u string) (string, error) { parts := strings.SplitN(u, "://", 2) if len(parts) != 2 { return "", fmt.Errorf("invalid cookie URL, missing scheme") } scheme := strings.ToLower(parts[0]) if scheme != "http" && scheme != "https" && scheme != "http*" { return "", fmt.Errorf("invalid cookie URL scheme. Expect http, https, or http*. Go, %s", scheme) } return scheme, nil } // SignWithPolicy returns the cookies needed to allow user agents to make // arbetrairy requets to cloudfront for the resource(s) defined by the policy. // // The returned slice cookies should all be added to the Client's cookies or // server's response. // // Example: // s := NewCookieSigner(keyID, privKey) // // policy := &sign.Policy{ // Statements: []sign.Statement{ // { // // Read the provided documentation on how to set this // // correctly, you'll probably want to use wildcards. // Resource: RawCloudFrontURL, // Condition: sign.Condition{ // // Optional IP source address range // IPAddress: &sign.IPAddress{SourceIP: "192.0.2.0/24"}, // // Optional date URL is not valid until // DateGreaterThan: &sign.AWSEpochTime{time.Now().Add(30 * time.Minute)}, // // Required date the URL will expire after // DateLessThan: &sign.AWSEpochTime{time.Now().Add(1 * time.Hour)}, // }, // }, // }, // } // // // Get Signed cookies for a resource that will expire in 1 hour // cookies, err := s.SignWithPolicy(policy) // if err != nil { // fmt.Println("failed to create signed cookies", err) // return // } // // // Or get Signed cookies for a resource that will expire in 1 hour // // and set path and domain of cookies // cookies, err := s.Sign(policy, func(o *sign.CookieOptions) { // o.Path = "/" // o.Domain = ".example.com" // }) // if err != nil { // fmt.Println("failed to create signed cookies", err) // return // } // // // Server Response via http.ResponseWriter // for _, c := range cookies { // http.SetCookie(w, c) // } // // // Client request via the cookie jar // if client.CookieJar != nil { // for _, c := range cookies { // client.Cookie(w, c) // } // } func (s CookieSigner) SignWithPolicy(p *Policy, opts ...func(*CookieOptions)) ([]*http.Cookie, error) { return createCookies(p, s.keyID, s.privKey, s.Opts.apply(opts...)) } // Prepares the cookies to be attached to the header. An (optional) options // struct is provided in case people don't want to manually edit their cookies. func createCookies(p *Policy, keyID string, privKey *rsa.PrivateKey, opt CookieOptions) ([]*http.Cookie, error) { b64Sig, b64Policy, err := p.Sign(privKey) if err != nil { return nil, err } // Creates proper cookies cPolicy := &http.Cookie{ Name: CookiePolicyName, Value: string(b64Policy), HttpOnly: true, } cSignature := &http.Cookie{ Name: CookieSignatureName, Value: string(b64Sig), HttpOnly: true, } cKey := &http.Cookie{ Name: CookieKeyIDName, Value: keyID, HttpOnly: true, } cookies := []*http.Cookie{cPolicy, cSignature, cKey} // Applie the cookie options for _, c := range cookies { c.Path = opt.Path c.Domain = opt.Domain c.Secure = opt.Secure } return cookies, nil } aws-sdk-go-1.4.22/service/cloudfront/sign/sign_cookie_example_test.go000066400000000000000000000135201300374646400257350ustar00rootroot00000000000000package sign import ( "fmt" "io" "math/rand" "net/http" "time" ) func examplePEMReader() io.Reader { reader, err := generatePEM(randReader, nil) if err != nil { panic(fmt.Sprintf("Unexpected pem generation err %v", err)) } return reader } func ExampleCookieSigner_Sign() { origRandReader := randReader randReader = newRandomReader(rand.New(rand.NewSource(1))) defer func() { randReader = origRandReader }() // Load your private key so it can be used by the CookieSigner // To load private key from file use `sign.LoadPEMPrivKeyFile`. privKey, err := LoadPEMPrivKey(examplePEMReader()) if err != nil { fmt.Println("failed to load private key", err) return } cookieSigner := NewCookieSigner("keyID", privKey) // Use the signer to sign the URL cookies, err := cookieSigner.Sign("http://example.com/somepath/*", testSignTime.Add(30*time.Minute)) if err != nil { fmt.Println("failed to sign cookies with policy,", err) return } printExampleCookies(cookies) // Output: // Cookies: // CloudFront-Policy: eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cDovL2V4YW1wbGUuY29tL3NvbWVwYXRoLyoiLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjEyNTc4OTU4MDB9fX1dfQ__, , , false // CloudFront-Signature: o~jvj~CFkvGZB~yYED3elicKZag-CRijy8yD2E5yF1s7VNV7kNeQWC7MDtEcBQ8-eh7Xgjh0wMPQdAVdh09gBObd-hXDpKUyh8YKxogj~oloV~8KOvqE5xzWiKcqjdfJjmT5iEqIui~H1ExYjyKjgir79npmlyYkaJS5s62EQa8_, , , false // CloudFront-Key-Pair-Id: keyID, , , false } func ExampleCookieSigner_SignWithPolicy() { origRandReader := randReader randReader = newRandomReader(rand.New(rand.NewSource(1))) defer func() { randReader = origRandReader }() // Sign cookie to be valid for 30 minutes from now, expires one hour // from now, and restricted to the 192.0.2.0/24 IP address range. // http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-setting-signed-cookie-custom-policy.html p := &Policy{ // Only a single policy statement can be used with CloudFront // cookie signatures. Statements: []Statement{{ // Read the provided documentation on how to set this correctly, // you'll probably want to use wildcards Resource: "http://sub.cloudfront.com", Condition: Condition{ // Optional IP source address range IPAddress: &IPAddress{SourceIP: "192.0.2.0/24"}, // Optional date URL is not valid until DateGreaterThan: &AWSEpochTime{testSignTime.Add(30 * time.Minute)}, // Required date the URL will expire after DateLessThan: &AWSEpochTime{testSignTime.Add(1 * time.Hour)}, }, }, }, } // Load your private key so it can be used by the CookieSigner // To load private key from file use `sign.LoadPEMPrivKeyFile`. privKey, err := LoadPEMPrivKey(examplePEMReader()) if err != nil { fmt.Println("failed to load private key", err) return } // Key ID that represents the key pair associated with the private key keyID := "privateKeyID" // Set credentials to the CookieSigner. cookieSigner := NewCookieSigner(keyID, privKey) // Avoid adding an Expire or MaxAge. See provided AWS Documentation for // more info. cookies, err := cookieSigner.SignWithPolicy(p) if err != nil { fmt.Println("failed to sign cookies with policy,", err) return } printExampleCookies(cookies) // Output: // Cookies: // CloudFront-Policy: eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cDovL3N1Yi5jbG91ZGZyb250LmNvbSIsIkNvbmRpdGlvbiI6eyJJcEFkZHJlc3MiOnsiQVdTOlNvdXJjZUlwIjoiMTkyLjAuMi4wLzI0In0sIkRhdGVHcmVhdGVyVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxMjU3ODk1ODAwfSwiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjEyNTc4OTc2MDB9fX1dfQ__, , , false // CloudFront-Signature: JaWdcbr98colrDAhOpkyxqCZev2IAxURu1RKKo1wS~sI5XdNXWYbZJs2FdpbJ475ZvmhZ1-r4ENUqBXAlRfPfOc21Hm4~24jRmPTO3512D4uuJHrPVxSfgeGuFeigfCGWAqyfYYH1DsFl5JQDpzetsNI3ZhGRkQb8V-oYFanddg_, , , false // CloudFront-Key-Pair-Id: privateKeyID, , , false } func ExampleCookieOptions() { origRandReader := randReader randReader = newRandomReader(rand.New(rand.NewSource(1))) defer func() { randReader = origRandReader }() // Load your private key so it can be used by the CookieSigner // To load private key from file use `sign.LoadPEMPrivKeyFile`. privKey, err := LoadPEMPrivKey(examplePEMReader()) if err != nil { fmt.Println("failed to load private key", err) return } // Create the CookieSigner with options set. These options can be set // directly with cookieSigner.Opts. These values can be overridden on // individual Sign and SignWithProfile calls. cookieSigner := NewCookieSigner("keyID", privKey, func(o *CookieOptions) { //provide an optional struct fields to specify other options o.Path = "/" // http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/CNAMEs.html o.Domain = ".cNameAssociatedWithMyDistribution.com" // Make sure your app/site can handle https payloads, otherwise // set this to false. o.Secure = true }) // Use the signer to sign the URL cookies, err := cookieSigner.Sign("http*://*", testSignTime.Add(30*time.Minute), func(o *CookieOptions) { o.Path = "/mypath/" }) if err != nil { fmt.Println("failed to sign cookies with policy,", err) return } printExampleCookies(cookies) // Output: // Cookies: // CloudFront-Policy: eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cCo6Ly8qIiwiQ29uZGl0aW9uIjp7IkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxMjU3ODk1ODAwfX19XX0_, /mypath/, .cNameAssociatedWithMyDistribution.com, true // CloudFront-Signature: Yco06vgowwvSYgTSY9XbXpBcTlUlqpyyYXgRhus3nfnC74A7oQ~fMBH0we-rGxvph8ZyHnTxC5ubbPKSzo3EHUm2IcQeEo4p6WCgZZMzCuLlkpeMKhMAkCqX7rmUfkXhTslBHe~ylcmaZqo-hdnOiWrXk2U974ZQbbt5cOjwQG0_, /mypath/, .cNameAssociatedWithMyDistribution.com, true // CloudFront-Key-Pair-Id: keyID, /mypath/, .cNameAssociatedWithMyDistribution.com, true } func printExampleCookies(cookies []*http.Cookie) { fmt.Println("Cookies:") for _, c := range cookies { fmt.Printf("%s: %s, %s, %s, %t\n", c.Name, c.Value, c.Path, c.Domain, c.Secure) } } aws-sdk-go-1.4.22/service/cloudfront/sign/sign_cookie_test.go000066400000000000000000000040301300374646400242160ustar00rootroot00000000000000package sign import ( "crypto/rsa" "testing" "time" "github.com/stretchr/testify/assert" ) func TestNewCookieSigner(t *testing.T) { privKey, err := rsa.GenerateKey(randReader, 1024) if err != nil { t.Fatalf("Unexpected priv key error, %#v", err) } signer := NewCookieSigner("keyID", privKey) assert.Equal(t, "keyID", signer.keyID) assert.Equal(t, privKey, signer.privKey) } func TestSignCookie(t *testing.T) { privKey, err := rsa.GenerateKey(randReader, 1024) assert.NoError(t, err) signer := NewCookieSigner("keyID", privKey) cookies, err := signer.Sign("http*://*", time.Now().Add(1*time.Hour)) assert.NoError(t, err) assert.Equal(t, CookiePolicyName, cookies[0].Name) assert.Equal(t, CookieSignatureName, cookies[1].Name) assert.Equal(t, CookieKeyIDName, cookies[2].Name) } func TestSignCookie_WithPolicy(t *testing.T) { privKey, err := rsa.GenerateKey(randReader, 1024) assert.NoError(t, err) p := &Policy{ Statements: []Statement{ { Resource: "*", Condition: Condition{ DateLessThan: &AWSEpochTime{time.Now().Add(1 * time.Hour)}, }, }, }, } signer := NewCookieSigner("keyID", privKey) cookies, err := signer.SignWithPolicy(p) assert.NoError(t, err) assert.Equal(t, CookiePolicyName, cookies[0].Name) assert.Equal(t, CookieSignatureName, cookies[1].Name) assert.Equal(t, CookieKeyIDName, cookies[2].Name) } func TestSignCookie_WithCookieOptions(t *testing.T) { privKey, err := rsa.GenerateKey(randReader, 1024) assert.NoError(t, err) expires := time.Now().Add(1 * time.Hour) signer := NewCookieSigner("keyID", privKey) cookies, err := signer.Sign("https://example.com/*", expires, func(o *CookieOptions) { o.Path = "/" o.Domain = ".example.com" o.Secure = true }) assert.NoError(t, err) assert.Equal(t, CookiePolicyName, cookies[0].Name) assert.Equal(t, CookieSignatureName, cookies[1].Name) assert.Equal(t, CookieKeyIDName, cookies[2].Name) for _, c := range cookies { assert.Equal(t, "/", c.Path) assert.Equal(t, ".example.com", c.Domain) assert.True(t, c.Secure) } } aws-sdk-go-1.4.22/service/cloudfront/sign/sign_url.go000066400000000000000000000146031300374646400225170ustar00rootroot00000000000000// Package sign provides utilities to generate signed URLs for Amazon CloudFront. // // More information about signed URLs and their structure can be found at: // http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-creating-signed-url-canned-policy.html // // To sign a URL create a URLSigner with your private key and credential pair key ID. // Once you have a URLSigner instance you can call Sign or SignWithPolicy to // sign the URLs. // // Example: // // // Sign URL to be valid for 1 hour from now. // signer := sign.NewURLSigner(keyID, privKey) // signedURL, err := signer.Sign(rawURL, time.Now().Add(1*time.Hour)) // if err != nil { // log.Fatalf("Failed to sign url, err: %s\n", err.Error()) // } // package sign import ( "crypto/rsa" "fmt" "net/url" "strings" "time" ) // An URLSigner provides URL signing utilities to sign URLs for Amazon CloudFront // resources. Using a private key and Credential Key Pair key ID the URLSigner // only needs to be created once per Credential Key Pair key ID and private key. // // The signer is safe to use concurrently. type URLSigner struct { keyID string privKey *rsa.PrivateKey } // NewURLSigner constructs and returns a new URLSigner to be used to for signing // Amazon CloudFront URL resources with. func NewURLSigner(keyID string, privKey *rsa.PrivateKey) *URLSigner { return &URLSigner{ keyID: keyID, privKey: privKey, } } // Sign will sign a single URL to expire at the time of expires sign using the // Amazon CloudFront default Canned Policy. The URL will be signed with the // private key and Credential Key Pair Key ID previously provided to URLSigner. // // This is the default method of signing Amazon CloudFront URLs. If extra policy // conditions are need other than URL expiry use SignWithPolicy instead. // // Example: // // // Sign URL to be valid for 1 hour from now. // signer := sign.NewURLSigner(keyID, privKey) // signedURL, err := signer.Sign(rawURL, time.Now().Add(1*time.Hour)) // if err != nil { // log.Fatalf("Failed to sign url, err: %s\n", err.Error()) // } // func (s URLSigner) Sign(url string, expires time.Time) (string, error) { scheme, cleanedURL, err := cleanURLScheme(url) if err != nil { return "", err } resource, err := CreateResource(scheme, url) if err != nil { return "", err } return signURL(scheme, cleanedURL, s.keyID, NewCannedPolicy(resource, expires), false, s.privKey) } // SignWithPolicy will sign a URL with the Policy provided. The URL will be // signed with the private key and Credential Key Pair Key ID previously provided to URLSigner. // // Use this signing method if you are looking to sign a URL with more than just // the URL's expiry time, or reusing Policies between multiple URL signings. // If only the expiry time is needed you can use Sign and provide just the // URL's expiry time. A minimum of at least one policy statement is required for a signed URL. // // Note: It is not safe to use Polices between multiple signers concurrently // // Example: // // // Sign URL to be valid for 30 minutes from now, expires one hour from now, and // // restricted to the 192.0.2.0/24 IP address range. // policy := &sign.Policy{ // Statements: []sign.Statement{ // { // Resource: rawURL, // Condition: sign.Condition{ // // Optional IP source address range // IPAddress: &sign.IPAddress{SourceIP: "192.0.2.0/24"}, // // Optional date URL is not valid until // DateGreaterThan: &sign.AWSEpochTime{time.Now().Add(30 * time.Minute)}, // // Required date the URL will expire after // DateLessThan: &sign.AWSEpochTime{time.Now().Add(1 * time.Hour)}, // }, // }, // }, // } // // signer := sign.NewURLSigner(keyID, privKey) // signedURL, err := signer.SignWithPolicy(rawURL, policy) // if err != nil { // log.Fatalf("Failed to sign url, err: %s\n", err.Error()) // } // func (s URLSigner) SignWithPolicy(url string, p *Policy) (string, error) { scheme, cleanedURL, err := cleanURLScheme(url) if err != nil { return "", err } return signURL(scheme, cleanedURL, s.keyID, p, true, s.privKey) } func signURL(scheme, url, keyID string, p *Policy, customPolicy bool, privKey *rsa.PrivateKey) (string, error) { // Validation URL elements if err := validateURL(url); err != nil { return "", err } b64Signature, b64Policy, err := p.Sign(privKey) if err != nil { return "", err } // build and return signed URL builtURL := buildSignedURL(url, keyID, p, customPolicy, b64Policy, b64Signature) if scheme == "rtmp" { return buildRTMPURL(builtURL) } return builtURL, nil } func buildSignedURL(baseURL, keyID string, p *Policy, customPolicy bool, b64Policy, b64Signature []byte) string { pred := "?" if strings.Contains(baseURL, "?") { pred = "&" } signedURL := baseURL + pred if customPolicy { signedURL += "Policy=" + string(b64Policy) } else { signedURL += fmt.Sprintf("Expires=%d", p.Statements[0].Condition.DateLessThan.UTC().Unix()) } signedURL += fmt.Sprintf("&Signature=%s&Key-Pair-Id=%s", string(b64Signature), keyID) return signedURL } func buildRTMPURL(u string) (string, error) { parsed, err := url.Parse(u) if err != nil { return "", fmt.Errorf("unable to parse rtmp signed URL, err: %s", err) } rtmpURL := strings.TrimLeft(parsed.Path, "/") if parsed.RawQuery != "" { rtmpURL = fmt.Sprintf("%s?%s", rtmpURL, parsed.RawQuery) } return rtmpURL, nil } func cleanURLScheme(u string) (scheme, cleanedURL string, err error) { parts := strings.SplitN(u, "://", 2) if len(parts) != 2 { return "", "", fmt.Errorf("invalid URL, missing scheme and domain/path") } scheme = strings.Replace(parts[0], "*", "", 1) cleanedURL = fmt.Sprintf("%s://%s", scheme, parts[1]) return strings.ToLower(scheme), cleanedURL, nil } var illegalQueryParms = []string{"Expires", "Policy", "Signature", "Key-Pair-Id"} func validateURL(u string) error { parsed, err := url.Parse(u) if err != nil { return fmt.Errorf("unable to parse URL, err: %s", err.Error()) } if parsed.Scheme == "" { return fmt.Errorf("URL missing valid scheme, %s", u) } q := parsed.Query() for _, p := range illegalQueryParms { if _, ok := q[p]; ok { return fmt.Errorf("%s cannot be a query parameter for a signed URL", p) } } return nil } aws-sdk-go-1.4.22/service/cloudfront/sign/sign_url_test.go000066400000000000000000000133611300374646400235560ustar00rootroot00000000000000package sign import ( "crypto/rsa" "math/rand" "strings" "testing" "time" ) var testSignTime = time.Date(2009, time.November, 10, 23, 0, 0, 0, time.UTC) var testSignURL = []struct { u string p *Policy t time.Time customPolicy bool expectErr bool out string }{ { "http://example.com/a", NewCannedPolicy("http://example.com/a", testSignTime), time.Time{}, true, false, "http://example.com/a?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cDovL2V4YW1wbGUuY29tL2EiLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjEyNTc4OTQwMDB9fX1dfQ__&Signature=Y6qvWOZNl99uNPMGprvrKXEmXpLWJ-xXKVHL~nmF0BR1jPb2XA2jor0MUYKBE4ViTkWZZ1dz46zSFMsEEfw~n6-SVYXZ2QHBBTkSAoxGtH6dH33Ph9pz~f9Wy7aYXq~9I-Ah0E6yC~BMiQuXe5qAOucuMPorKgPfC0dvLMw2EF0_&Key-Pair-Id=KeyID", }, { "http://example.com/a", nil, testSignTime, false, false, "http://example.com/a?Expires=1257894000&Signature=Y6qvWOZNl99uNPMGprvrKXEmXpLWJ-xXKVHL~nmF0BR1jPb2XA2jor0MUYKBE4ViTkWZZ1dz46zSFMsEEfw~n6-SVYXZ2QHBBTkSAoxGtH6dH33Ph9pz~f9Wy7aYXq~9I-Ah0E6yC~BMiQuXe5qAOucuMPorKgPfC0dvLMw2EF0_&Key-Pair-Id=KeyID", }, { "http://example.com/Ƿ", nil, testSignTime, false, true, "http://example.com/Ƿ?Expires=1257894000&Signature=Y6qvWOZNl99uNPMGprvrKXEmXpLWJ-xXKVHL~nmF0BR1jPb2XA2jor0MUYKBE4ViTkWZZ1dz46zSFMsEEfw~n6-SVYXZ2QHBBTkSAoxGtH6dH33Ph9pz~f9Wy7aYXq~9I-Ah0E6yC~BMiQuXe5qAOucuMPorKgPfC0dvLMw2EF0_&Key-Pair-Id=KeyID", }, { "http://example.com/a", &Policy{}, time.Time{}, true, true, "http://example.com/a?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cDovL2V4YW1wbGUuY29tL2EiLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjEyNTc4OTQwMDB9fX1dfQ__&Signature=Y6qvWOZNl99uNPMGprvrKXEmXpLWJ-xXKVHL~nmF0BR1jPb2XA2jor0MUYKBE4ViTkWZZ1dz46zSFMsEEfw~n6-SVYXZ2QHBBTkSAoxGtH6dH33Ph9pz~f9Wy7aYXq~9I-Ah0E6yC~BMiQuXe5qAOucuMPorKgPfC0dvLMw2EF0_&Key-Pair-Id=KeyID", }, { "http://example.com/a", NewCannedPolicy("", testSignTime), time.Time{}, true, true, "http://example.com/a?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cDovL2V4YW1wbGUuY29tL2EiLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjEyNTc4OTQwMDB9fX1dfQ__&Signature=Y6qvWOZNl99uNPMGprvrKXEmXpLWJ-xXKVHL~nmF0BR1jPb2XA2jor0MUYKBE4ViTkWZZ1dz46zSFMsEEfw~n6-SVYXZ2QHBBTkSAoxGtH6dH33Ph9pz~f9Wy7aYXq~9I-Ah0E6yC~BMiQuXe5qAOucuMPorKgPfC0dvLMw2EF0_&Key-Pair-Id=KeyID", }, { "rtmp://example.com/a", nil, testSignTime, false, false, "a?Expires=1257894000&Signature=Ds9NbpGwIcDKG1iZDyjfPXp0ZFYSIzfvGzJj-x28XlXfrarHrJbTOQj3bec~aAyb8NAqghBYRdKF9~RdjNrdyxyiequo-SCjFgFHnRNIk0FiqH0fVt2NO63f0X8-Kbur9cPtJoHR9Jzk0I1CQnECqhL6A0OgPhijTfKUITocmzA_&Key-Pair-Id=KeyID", }, { "rtmp://example.com/a", NewCannedPolicy("a", testSignTime), time.Time{}, true, false, "a?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiYSIsIkNvbmRpdGlvbiI6eyJEYXRlTGVzc1RoYW4iOnsiQVdTOkVwb2NoVGltZSI6MTI1Nzg5NDAwMH19fV19&Signature=Ds9NbpGwIcDKG1iZDyjfPXp0ZFYSIzfvGzJj-x28XlXfrarHrJbTOQj3bec~aAyb8NAqghBYRdKF9~RdjNrdyxyiequo-SCjFgFHnRNIk0FiqH0fVt2NO63f0X8-Kbur9cPtJoHR9Jzk0I1CQnECqhL6A0OgPhijTfKUITocmzA_&Key-Pair-Id=KeyID", }, } // TODO Sign URL HTTP // TODO Sign URL RMTP func TestSignURL(t *testing.T) { origRandReader := randReader randReader = newRandomReader(rand.New(rand.NewSource(1))) defer func() { randReader = origRandReader }() privKey, err := rsa.GenerateKey(randReader, 1024) if err != nil { t.Fatalf("Unexpected priv key error, %#v", err) } s := NewURLSigner("KeyID", privKey) for i, v := range testSignURL { var u string var err error if v.customPolicy { u, err = s.SignWithPolicy(v.u, v.p) } else { u, err = s.Sign(v.u, v.t) } if err != nil { if v.expectErr { continue } t.Errorf("%d, Unexpected error, %s", i, err.Error()) continue } else if v.expectErr { t.Errorf("%d Expected error, but got none", i) continue } if u != v.out { t.Errorf("%d, Unexpected URL\nexpect: %s\nactual: %s\n", i, v.out, u) } } } var testBuildSignedURL = []struct { u, keyID string p *Policy customPolicy bool b64Policy, b64Sig []byte out string }{ { "https://example.com/a?b=1", "KeyID", NewCannedPolicy("", testSignTime), true, []byte("b64Policy"), []byte("b64Sig"), "https://example.com/a?b=1&Policy=b64Policy&Signature=b64Sig&Key-Pair-Id=KeyID", }, { "https://example.com/a", "KeyID", NewCannedPolicy("", testSignTime), true, []byte("b64Policy"), []byte("b64Sig"), "https://example.com/a?Policy=b64Policy&Signature=b64Sig&Key-Pair-Id=KeyID", }, { "https://example.com/a?b=1", "KeyID", NewCannedPolicy("https://example.com/a?b=1", testSignTime), false, []byte("b64Policy"), []byte("b64Sig"), "https://example.com/a?b=1&Expires=1257894000&Signature=b64Sig&Key-Pair-Id=KeyID", }, } func TestBuildSignedURL(t *testing.T) { for i, v := range testBuildSignedURL { u := buildSignedURL(v.u, v.keyID, v.p, v.customPolicy, v.b64Policy, v.b64Sig) if u != v.out { t.Errorf("%d, Unexpected URL\nexpect: %s\nactual: %s\n", i, v.out, u) } } } var testValidURL = []struct { in, errPrefix string }{ {"https://example.com/a?b=1&else=b", ""}, {"https://example.com/a?b=1&Policy=something&else=b", "Policy"}, {"https://example.com/a?b=1&Signature=something&else=b", "Signature"}, {"https://example.com/a?b=1&Key-Pair-Id=something&else=b", "Key-Pair-Id"}, {"http?://example.com/a?b=1", "URL missing valid scheme"}, } func TestValidateURL(t *testing.T) { for i, v := range testValidURL { err := validateURL(v.in) if err != nil { if v.errPrefix == "" { t.Errorf("%d, Unexpected error %s", i, err.Error()) } if !strings.HasPrefix(err.Error(), v.errPrefix) { t.Errorf("%d, Expected to find prefix\nexpect: %s\nactual: %s", i, v.errPrefix, err.Error()) } } else if v.errPrefix != "" { t.Errorf("%d, Expected error %s", i, v.errPrefix) } } } aws-sdk-go-1.4.22/service/cloudfront/waiters.go000066400000000000000000000042631300374646400214140ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudfront import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilDistributionDeployed uses the CloudFront API operation // GetDistribution to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *CloudFront) WaitUntilDistributionDeployed(input *GetDistributionInput) error { waiterCfg := waiter.Config{ Operation: "GetDistribution", Delay: 60, MaxAttempts: 25, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "path", Argument: "Distribution.Status", Expected: "Deployed", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilInvalidationCompleted uses the CloudFront API operation // GetInvalidation to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *CloudFront) WaitUntilInvalidationCompleted(input *GetInvalidationInput) error { waiterCfg := waiter.Config{ Operation: "GetInvalidation", Delay: 20, MaxAttempts: 30, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "path", Argument: "Invalidation.Status", Expected: "Completed", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilStreamingDistributionDeployed uses the CloudFront API operation // GetStreamingDistribution to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *CloudFront) WaitUntilStreamingDistributionDeployed(input *GetStreamingDistributionInput) error { waiterCfg := waiter.Config{ Operation: "GetStreamingDistribution", Delay: 60, MaxAttempts: 25, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "path", Argument: "StreamingDistribution.Status", Expected: "Deployed", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/cloudhsm/000077500000000000000000000000001300374646400170415ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudhsm/api.go000066400000000000000000002422001300374646400201410ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cloudhsm provides a client for Amazon CloudHSM. package cloudhsm import ( "fmt" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opAddTagsToResource = "AddTagsToResource" // AddTagsToResourceRequest generates a "aws/request.Request" representing the // client's request for the AddTagsToResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddTagsToResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddTagsToResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddTagsToResourceRequest method. // req, resp := client.AddTagsToResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) AddTagsToResourceRequest(input *AddTagsToResourceInput) (req *request.Request, output *AddTagsToResourceOutput) { op := &request.Operation{ Name: opAddTagsToResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddTagsToResourceInput{} } req = c.newRequest(op, input, output) output = &AddTagsToResourceOutput{} req.Data = output return } // AddTagsToResource API operation for Amazon CloudHSM. // // Adds or overwrites one or more tags for the specified AWS CloudHSM resource. // // Each tag consists of a key and a value. Tag keys must be unique to each resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation AddTagsToResource for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) AddTagsToResource(input *AddTagsToResourceInput) (*AddTagsToResourceOutput, error) { req, out := c.AddTagsToResourceRequest(input) err := req.Send() return out, err } const opCreateHapg = "CreateHapg" // CreateHapgRequest generates a "aws/request.Request" representing the // client's request for the CreateHapg operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateHapg for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateHapg method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateHapgRequest method. // req, resp := client.CreateHapgRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) CreateHapgRequest(input *CreateHapgInput) (req *request.Request, output *CreateHapgOutput) { op := &request.Operation{ Name: opCreateHapg, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateHapgInput{} } req = c.newRequest(op, input, output) output = &CreateHapgOutput{} req.Data = output return } // CreateHapg API operation for Amazon CloudHSM. // // Creates a high-availability partition group. A high-availability partition // group is a group of partitions that spans multiple physical HSMs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation CreateHapg for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) CreateHapg(input *CreateHapgInput) (*CreateHapgOutput, error) { req, out := c.CreateHapgRequest(input) err := req.Send() return out, err } const opCreateHsm = "CreateHsm" // CreateHsmRequest generates a "aws/request.Request" representing the // client's request for the CreateHsm operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateHsm for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateHsm method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateHsmRequest method. // req, resp := client.CreateHsmRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) CreateHsmRequest(input *CreateHsmInput) (req *request.Request, output *CreateHsmOutput) { op := &request.Operation{ Name: opCreateHsm, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateHsmInput{} } req = c.newRequest(op, input, output) output = &CreateHsmOutput{} req.Data = output return } // CreateHsm API operation for Amazon CloudHSM. // // Creates an uninitialized HSM instance. // // There is an upfront fee charged for each HSM instance that you create with // the CreateHsm operation. If you accidentally provision an HSM and want to // request a refund, delete the instance using the DeleteHsm operation, go to // the AWS Support Center (https://console.aws.amazon.com/support/home#/), create // a new case, and select Account and Billing Support. // // It can take up to 20 minutes to create and provision an HSM. You can monitor // the status of the HSM with the DescribeHsm operation. The HSM is ready to // be initialized when the status changes to RUNNING. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation CreateHsm for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) CreateHsm(input *CreateHsmInput) (*CreateHsmOutput, error) { req, out := c.CreateHsmRequest(input) err := req.Send() return out, err } const opCreateLunaClient = "CreateLunaClient" // CreateLunaClientRequest generates a "aws/request.Request" representing the // client's request for the CreateLunaClient operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateLunaClient for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateLunaClient method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateLunaClientRequest method. // req, resp := client.CreateLunaClientRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) CreateLunaClientRequest(input *CreateLunaClientInput) (req *request.Request, output *CreateLunaClientOutput) { op := &request.Operation{ Name: opCreateLunaClient, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateLunaClientInput{} } req = c.newRequest(op, input, output) output = &CreateLunaClientOutput{} req.Data = output return } // CreateLunaClient API operation for Amazon CloudHSM. // // Creates an HSM client. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation CreateLunaClient for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) CreateLunaClient(input *CreateLunaClientInput) (*CreateLunaClientOutput, error) { req, out := c.CreateLunaClientRequest(input) err := req.Send() return out, err } const opDeleteHapg = "DeleteHapg" // DeleteHapgRequest generates a "aws/request.Request" representing the // client's request for the DeleteHapg operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteHapg for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteHapg method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteHapgRequest method. // req, resp := client.DeleteHapgRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) DeleteHapgRequest(input *DeleteHapgInput) (req *request.Request, output *DeleteHapgOutput) { op := &request.Operation{ Name: opDeleteHapg, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteHapgInput{} } req = c.newRequest(op, input, output) output = &DeleteHapgOutput{} req.Data = output return } // DeleteHapg API operation for Amazon CloudHSM. // // Deletes a high-availability partition group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation DeleteHapg for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) DeleteHapg(input *DeleteHapgInput) (*DeleteHapgOutput, error) { req, out := c.DeleteHapgRequest(input) err := req.Send() return out, err } const opDeleteHsm = "DeleteHsm" // DeleteHsmRequest generates a "aws/request.Request" representing the // client's request for the DeleteHsm operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteHsm for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteHsm method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteHsmRequest method. // req, resp := client.DeleteHsmRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) DeleteHsmRequest(input *DeleteHsmInput) (req *request.Request, output *DeleteHsmOutput) { op := &request.Operation{ Name: opDeleteHsm, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteHsmInput{} } req = c.newRequest(op, input, output) output = &DeleteHsmOutput{} req.Data = output return } // DeleteHsm API operation for Amazon CloudHSM. // // Deletes an HSM. After completion, this operation cannot be undone and your // key material cannot be recovered. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation DeleteHsm for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) DeleteHsm(input *DeleteHsmInput) (*DeleteHsmOutput, error) { req, out := c.DeleteHsmRequest(input) err := req.Send() return out, err } const opDeleteLunaClient = "DeleteLunaClient" // DeleteLunaClientRequest generates a "aws/request.Request" representing the // client's request for the DeleteLunaClient operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteLunaClient for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteLunaClient method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteLunaClientRequest method. // req, resp := client.DeleteLunaClientRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) DeleteLunaClientRequest(input *DeleteLunaClientInput) (req *request.Request, output *DeleteLunaClientOutput) { op := &request.Operation{ Name: opDeleteLunaClient, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteLunaClientInput{} } req = c.newRequest(op, input, output) output = &DeleteLunaClientOutput{} req.Data = output return } // DeleteLunaClient API operation for Amazon CloudHSM. // // Deletes a client. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation DeleteLunaClient for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) DeleteLunaClient(input *DeleteLunaClientInput) (*DeleteLunaClientOutput, error) { req, out := c.DeleteLunaClientRequest(input) err := req.Send() return out, err } const opDescribeHapg = "DescribeHapg" // DescribeHapgRequest generates a "aws/request.Request" representing the // client's request for the DescribeHapg operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeHapg for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeHapg method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeHapgRequest method. // req, resp := client.DescribeHapgRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) DescribeHapgRequest(input *DescribeHapgInput) (req *request.Request, output *DescribeHapgOutput) { op := &request.Operation{ Name: opDescribeHapg, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeHapgInput{} } req = c.newRequest(op, input, output) output = &DescribeHapgOutput{} req.Data = output return } // DescribeHapg API operation for Amazon CloudHSM. // // Retrieves information about a high-availability partition group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation DescribeHapg for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) DescribeHapg(input *DescribeHapgInput) (*DescribeHapgOutput, error) { req, out := c.DescribeHapgRequest(input) err := req.Send() return out, err } const opDescribeHsm = "DescribeHsm" // DescribeHsmRequest generates a "aws/request.Request" representing the // client's request for the DescribeHsm operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeHsm for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeHsm method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeHsmRequest method. // req, resp := client.DescribeHsmRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) DescribeHsmRequest(input *DescribeHsmInput) (req *request.Request, output *DescribeHsmOutput) { op := &request.Operation{ Name: opDescribeHsm, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeHsmInput{} } req = c.newRequest(op, input, output) output = &DescribeHsmOutput{} req.Data = output return } // DescribeHsm API operation for Amazon CloudHSM. // // Retrieves information about an HSM. You can identify the HSM by its ARN or // its serial number. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation DescribeHsm for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) DescribeHsm(input *DescribeHsmInput) (*DescribeHsmOutput, error) { req, out := c.DescribeHsmRequest(input) err := req.Send() return out, err } const opDescribeLunaClient = "DescribeLunaClient" // DescribeLunaClientRequest generates a "aws/request.Request" representing the // client's request for the DescribeLunaClient operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLunaClient for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLunaClient method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLunaClientRequest method. // req, resp := client.DescribeLunaClientRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) DescribeLunaClientRequest(input *DescribeLunaClientInput) (req *request.Request, output *DescribeLunaClientOutput) { op := &request.Operation{ Name: opDescribeLunaClient, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeLunaClientInput{} } req = c.newRequest(op, input, output) output = &DescribeLunaClientOutput{} req.Data = output return } // DescribeLunaClient API operation for Amazon CloudHSM. // // Retrieves information about an HSM client. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation DescribeLunaClient for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) DescribeLunaClient(input *DescribeLunaClientInput) (*DescribeLunaClientOutput, error) { req, out := c.DescribeLunaClientRequest(input) err := req.Send() return out, err } const opGetConfig = "GetConfig" // GetConfigRequest generates a "aws/request.Request" representing the // client's request for the GetConfig operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetConfig for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetConfig method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetConfigRequest method. // req, resp := client.GetConfigRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) GetConfigRequest(input *GetConfigInput) (req *request.Request, output *GetConfigOutput) { op := &request.Operation{ Name: opGetConfig, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetConfigInput{} } req = c.newRequest(op, input, output) output = &GetConfigOutput{} req.Data = output return } // GetConfig API operation for Amazon CloudHSM. // // Gets the configuration files necessary to connect to all high availability // partition groups the client is associated with. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation GetConfig for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) GetConfig(input *GetConfigInput) (*GetConfigOutput, error) { req, out := c.GetConfigRequest(input) err := req.Send() return out, err } const opListAvailableZones = "ListAvailableZones" // ListAvailableZonesRequest generates a "aws/request.Request" representing the // client's request for the ListAvailableZones operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListAvailableZones for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListAvailableZones method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListAvailableZonesRequest method. // req, resp := client.ListAvailableZonesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) ListAvailableZonesRequest(input *ListAvailableZonesInput) (req *request.Request, output *ListAvailableZonesOutput) { op := &request.Operation{ Name: opListAvailableZones, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListAvailableZonesInput{} } req = c.newRequest(op, input, output) output = &ListAvailableZonesOutput{} req.Data = output return } // ListAvailableZones API operation for Amazon CloudHSM. // // Lists the Availability Zones that have available AWS CloudHSM capacity. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation ListAvailableZones for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) ListAvailableZones(input *ListAvailableZonesInput) (*ListAvailableZonesOutput, error) { req, out := c.ListAvailableZonesRequest(input) err := req.Send() return out, err } const opListHapgs = "ListHapgs" // ListHapgsRequest generates a "aws/request.Request" representing the // client's request for the ListHapgs operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListHapgs for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListHapgs method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListHapgsRequest method. // req, resp := client.ListHapgsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) ListHapgsRequest(input *ListHapgsInput) (req *request.Request, output *ListHapgsOutput) { op := &request.Operation{ Name: opListHapgs, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListHapgsInput{} } req = c.newRequest(op, input, output) output = &ListHapgsOutput{} req.Data = output return } // ListHapgs API operation for Amazon CloudHSM. // // Lists the high-availability partition groups for the account. // // This operation supports pagination with the use of the NextToken member. // If more results are available, the NextToken member of the response contains // a token that you pass in the next call to ListHapgs to retrieve the next // set of items. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation ListHapgs for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) ListHapgs(input *ListHapgsInput) (*ListHapgsOutput, error) { req, out := c.ListHapgsRequest(input) err := req.Send() return out, err } const opListHsms = "ListHsms" // ListHsmsRequest generates a "aws/request.Request" representing the // client's request for the ListHsms operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListHsms for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListHsms method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListHsmsRequest method. // req, resp := client.ListHsmsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) ListHsmsRequest(input *ListHsmsInput) (req *request.Request, output *ListHsmsOutput) { op := &request.Operation{ Name: opListHsms, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListHsmsInput{} } req = c.newRequest(op, input, output) output = &ListHsmsOutput{} req.Data = output return } // ListHsms API operation for Amazon CloudHSM. // // Retrieves the identifiers of all of the HSMs provisioned for the current // customer. // // This operation supports pagination with the use of the NextToken member. // If more results are available, the NextToken member of the response contains // a token that you pass in the next call to ListHsms to retrieve the next set // of items. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation ListHsms for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) ListHsms(input *ListHsmsInput) (*ListHsmsOutput, error) { req, out := c.ListHsmsRequest(input) err := req.Send() return out, err } const opListLunaClients = "ListLunaClients" // ListLunaClientsRequest generates a "aws/request.Request" representing the // client's request for the ListLunaClients operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListLunaClients for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListLunaClients method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListLunaClientsRequest method. // req, resp := client.ListLunaClientsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) ListLunaClientsRequest(input *ListLunaClientsInput) (req *request.Request, output *ListLunaClientsOutput) { op := &request.Operation{ Name: opListLunaClients, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListLunaClientsInput{} } req = c.newRequest(op, input, output) output = &ListLunaClientsOutput{} req.Data = output return } // ListLunaClients API operation for Amazon CloudHSM. // // Lists all of the clients. // // This operation supports pagination with the use of the NextToken member. // If more results are available, the NextToken member of the response contains // a token that you pass in the next call to ListLunaClients to retrieve the // next set of items. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation ListLunaClients for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) ListLunaClients(input *ListLunaClientsInput) (*ListLunaClientsOutput, error) { req, out := c.ListLunaClientsRequest(input) err := req.Send() return out, err } const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTagsForResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTagsForResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTagsForResourceRequest method. // req, resp := client.ListTagsForResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { op := &request.Operation{ Name: opListTagsForResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListTagsForResourceInput{} } req = c.newRequest(op, input, output) output = &ListTagsForResourceOutput{} req.Data = output return } // ListTagsForResource API operation for Amazon CloudHSM. // // Returns a list of all tags for the specified AWS CloudHSM resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation ListTagsForResource for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { req, out := c.ListTagsForResourceRequest(input) err := req.Send() return out, err } const opModifyHapg = "ModifyHapg" // ModifyHapgRequest generates a "aws/request.Request" representing the // client's request for the ModifyHapg operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyHapg for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyHapg method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyHapgRequest method. // req, resp := client.ModifyHapgRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) ModifyHapgRequest(input *ModifyHapgInput) (req *request.Request, output *ModifyHapgOutput) { op := &request.Operation{ Name: opModifyHapg, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyHapgInput{} } req = c.newRequest(op, input, output) output = &ModifyHapgOutput{} req.Data = output return } // ModifyHapg API operation for Amazon CloudHSM. // // Modifies an existing high-availability partition group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation ModifyHapg for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) ModifyHapg(input *ModifyHapgInput) (*ModifyHapgOutput, error) { req, out := c.ModifyHapgRequest(input) err := req.Send() return out, err } const opModifyHsm = "ModifyHsm" // ModifyHsmRequest generates a "aws/request.Request" representing the // client's request for the ModifyHsm operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyHsm for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyHsm method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyHsmRequest method. // req, resp := client.ModifyHsmRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) ModifyHsmRequest(input *ModifyHsmInput) (req *request.Request, output *ModifyHsmOutput) { op := &request.Operation{ Name: opModifyHsm, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyHsmInput{} } req = c.newRequest(op, input, output) output = &ModifyHsmOutput{} req.Data = output return } // ModifyHsm API operation for Amazon CloudHSM. // // Modifies an HSM. // // This operation can result in the HSM being offline for up to 15 minutes while // the AWS CloudHSM service is reconfigured. If you are modifying a production // HSM, you should ensure that your AWS CloudHSM service is configured for high // availability, and consider executing this operation during a maintenance // window. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation ModifyHsm for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) ModifyHsm(input *ModifyHsmInput) (*ModifyHsmOutput, error) { req, out := c.ModifyHsmRequest(input) err := req.Send() return out, err } const opModifyLunaClient = "ModifyLunaClient" // ModifyLunaClientRequest generates a "aws/request.Request" representing the // client's request for the ModifyLunaClient operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyLunaClient for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyLunaClient method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyLunaClientRequest method. // req, resp := client.ModifyLunaClientRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) ModifyLunaClientRequest(input *ModifyLunaClientInput) (req *request.Request, output *ModifyLunaClientOutput) { op := &request.Operation{ Name: opModifyLunaClient, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyLunaClientInput{} } req = c.newRequest(op, input, output) output = &ModifyLunaClientOutput{} req.Data = output return } // ModifyLunaClient API operation for Amazon CloudHSM. // // Modifies the certificate used by the client. // // This action can potentially start a workflow to install the new certificate // on the client's HSMs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation ModifyLunaClient for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // func (c *CloudHSM) ModifyLunaClient(input *ModifyLunaClientInput) (*ModifyLunaClientOutput, error) { req, out := c.ModifyLunaClientRequest(input) err := req.Send() return out, err } const opRemoveTagsFromResource = "RemoveTagsFromResource" // RemoveTagsFromResourceRequest generates a "aws/request.Request" representing the // client's request for the RemoveTagsFromResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveTagsFromResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveTagsFromResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveTagsFromResourceRequest method. // req, resp := client.RemoveTagsFromResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudHSM) RemoveTagsFromResourceRequest(input *RemoveTagsFromResourceInput) (req *request.Request, output *RemoveTagsFromResourceOutput) { op := &request.Operation{ Name: opRemoveTagsFromResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveTagsFromResourceInput{} } req = c.newRequest(op, input, output) output = &RemoveTagsFromResourceOutput{} req.Data = output return } // RemoveTagsFromResource API operation for Amazon CloudHSM. // // Removes one or more tags from the specified AWS CloudHSM resource. // // To remove a tag, specify only the tag key to remove (not the value). To overwrite // the value for an existing tag, use AddTagsToResource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudHSM's // API operation RemoveTagsFromResource for usage and error information. // // Returned Error Codes: // * CloudHsmServiceException // Indicates that an exception occurred in the AWS CloudHSM service. // // * CloudHsmInternalException // Indicates that an internal error occurred. // // * InvalidRequestException // Indicates that one or more of the request parameters are not valid. // func (c *CloudHSM) RemoveTagsFromResource(input *RemoveTagsFromResourceInput) (*RemoveTagsFromResourceOutput, error) { req, out := c.RemoveTagsFromResourceRequest(input) err := req.Send() return out, err } type AddTagsToResourceInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the AWS CloudHSM resource to tag. // // ResourceArn is a required field ResourceArn *string `type:"string" required:"true"` // One or more tags. // // TagList is a required field TagList []*Tag `type:"list" required:"true"` } // String returns the string representation func (s AddTagsToResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsToResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsToResourceInput"} if s.ResourceArn == nil { invalidParams.Add(request.NewErrParamRequired("ResourceArn")) } if s.TagList == nil { invalidParams.Add(request.NewErrParamRequired("TagList")) } if s.TagList != nil { for i, v := range s.TagList { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TagList", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddTagsToResourceOutput struct { _ struct{} `type:"structure"` // The status of the operation. // // Status is a required field Status *string `type:"string" required:"true"` } // String returns the string representation func (s AddTagsToResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToResourceOutput) GoString() string { return s.String() } // Contains the inputs for the CreateHapgRequest action. type CreateHapgInput struct { _ struct{} `type:"structure"` // The label of the new high-availability partition group. // // Label is a required field Label *string `type:"string" required:"true"` } // String returns the string representation func (s CreateHapgInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateHapgInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateHapgInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateHapgInput"} if s.Label == nil { invalidParams.Add(request.NewErrParamRequired("Label")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of the CreateHAPartitionGroup action. type CreateHapgOutput struct { _ struct{} `type:"structure"` // The ARN of the high-availability partition group. HapgArn *string `type:"string"` } // String returns the string representation func (s CreateHapgOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateHapgOutput) GoString() string { return s.String() } // Contains the inputs for the CreateHsm operation. type CreateHsmInput struct { _ struct{} `locationName:"CreateHsmRequest" type:"structure"` // A user-defined token to ensure idempotence. Subsequent calls to this operation // with the same token will be ignored. ClientToken *string `locationName:"ClientToken" type:"string"` // The IP address to assign to the HSM's ENI. // // If an IP address is not specified, an IP address will be randomly chosen // from the CIDR range of the subnet. EniIp *string `locationName:"EniIp" type:"string"` // The external ID from IamRoleArn, if present. ExternalId *string `locationName:"ExternalId" type:"string"` // The ARN of an IAM role to enable the AWS CloudHSM service to allocate an // ENI on your behalf. // // IamRoleArn is a required field IamRoleArn *string `locationName:"IamRoleArn" type:"string" required:"true"` // The SSH public key to install on the HSM. // // SshKey is a required field SshKey *string `locationName:"SshKey" type:"string" required:"true"` // The identifier of the subnet in your VPC in which to place the HSM. // // SubnetId is a required field SubnetId *string `locationName:"SubnetId" type:"string" required:"true"` // Specifies the type of subscription for the HSM. // // * PRODUCTION - The HSM is being used in a production environment. // * TRIAL - The HSM is being used in a product trial. // // SubscriptionType is a required field SubscriptionType *string `locationName:"SubscriptionType" type:"string" required:"true" enum:"SubscriptionType"` // The IP address for the syslog monitoring server. The AWS CloudHSM service // only supports one syslog monitoring server. SyslogIp *string `locationName:"SyslogIp" type:"string"` } // String returns the string representation func (s CreateHsmInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateHsmInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateHsmInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateHsmInput"} if s.IamRoleArn == nil { invalidParams.Add(request.NewErrParamRequired("IamRoleArn")) } if s.SshKey == nil { invalidParams.Add(request.NewErrParamRequired("SshKey")) } if s.SubnetId == nil { invalidParams.Add(request.NewErrParamRequired("SubnetId")) } if s.SubscriptionType == nil { invalidParams.Add(request.NewErrParamRequired("SubscriptionType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of the CreateHsm operation. type CreateHsmOutput struct { _ struct{} `type:"structure"` // The ARN of the HSM. HsmArn *string `type:"string"` } // String returns the string representation func (s CreateHsmOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateHsmOutput) GoString() string { return s.String() } // Contains the inputs for the CreateLunaClient action. type CreateLunaClientInput struct { _ struct{} `type:"structure"` // The contents of a Base64-Encoded X.509 v3 certificate to be installed on // the HSMs used by this client. // // Certificate is a required field Certificate *string `min:"600" type:"string" required:"true"` // The label for the client. Label *string `type:"string"` } // String returns the string representation func (s CreateLunaClientInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLunaClientInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateLunaClientInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateLunaClientInput"} if s.Certificate == nil { invalidParams.Add(request.NewErrParamRequired("Certificate")) } if s.Certificate != nil && len(*s.Certificate) < 600 { invalidParams.Add(request.NewErrParamMinLen("Certificate", 600)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of the CreateLunaClient action. type CreateLunaClientOutput struct { _ struct{} `type:"structure"` // The ARN of the client. ClientArn *string `type:"string"` } // String returns the string representation func (s CreateLunaClientOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLunaClientOutput) GoString() string { return s.String() } // Contains the inputs for the DeleteHapg action. type DeleteHapgInput struct { _ struct{} `type:"structure"` // The ARN of the high-availability partition group to delete. // // HapgArn is a required field HapgArn *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteHapgInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteHapgInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteHapgInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteHapgInput"} if s.HapgArn == nil { invalidParams.Add(request.NewErrParamRequired("HapgArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of the DeleteHapg action. type DeleteHapgOutput struct { _ struct{} `type:"structure"` // The status of the action. // // Status is a required field Status *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteHapgOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteHapgOutput) GoString() string { return s.String() } // Contains the inputs for the DeleteHsm operation. type DeleteHsmInput struct { _ struct{} `locationName:"DeleteHsmRequest" type:"structure"` // The ARN of the HSM to delete. // // HsmArn is a required field HsmArn *string `locationName:"HsmArn" type:"string" required:"true"` } // String returns the string representation func (s DeleteHsmInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteHsmInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteHsmInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteHsmInput"} if s.HsmArn == nil { invalidParams.Add(request.NewErrParamRequired("HsmArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of the DeleteHsm operation. type DeleteHsmOutput struct { _ struct{} `type:"structure"` // The status of the operation. // // Status is a required field Status *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteHsmOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteHsmOutput) GoString() string { return s.String() } type DeleteLunaClientInput struct { _ struct{} `type:"structure"` // The ARN of the client to delete. // // ClientArn is a required field ClientArn *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteLunaClientInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLunaClientInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteLunaClientInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteLunaClientInput"} if s.ClientArn == nil { invalidParams.Add(request.NewErrParamRequired("ClientArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteLunaClientOutput struct { _ struct{} `type:"structure"` // The status of the action. // // Status is a required field Status *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteLunaClientOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLunaClientOutput) GoString() string { return s.String() } // Contains the inputs for the DescribeHapg action. type DescribeHapgInput struct { _ struct{} `type:"structure"` // The ARN of the high-availability partition group to describe. // // HapgArn is a required field HapgArn *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeHapgInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeHapgInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeHapgInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeHapgInput"} if s.HapgArn == nil { invalidParams.Add(request.NewErrParamRequired("HapgArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of the DescribeHapg action. type DescribeHapgOutput struct { _ struct{} `type:"structure"` // The ARN of the high-availability partition group. HapgArn *string `type:"string"` // The serial number of the high-availability partition group. HapgSerial *string `type:"string"` // Contains a list of ARNs that identify the HSMs. HsmsLastActionFailed []*string `type:"list"` // Contains a list of ARNs that identify the HSMs. HsmsPendingDeletion []*string `type:"list"` // Contains a list of ARNs that identify the HSMs. HsmsPendingRegistration []*string `type:"list"` // The label for the high-availability partition group. Label *string `type:"string"` // The date and time the high-availability partition group was last modified. LastModifiedTimestamp *string `type:"string"` // The list of partition serial numbers that belong to the high-availability // partition group. PartitionSerialList []*string `type:"list"` // The state of the high-availability partition group. State *string `type:"string" enum:"CloudHsmObjectState"` } // String returns the string representation func (s DescribeHapgOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeHapgOutput) GoString() string { return s.String() } // Contains the inputs for the DescribeHsm operation. type DescribeHsmInput struct { _ struct{} `type:"structure"` // The ARN of the HSM. Either the HsmArn or the SerialNumber parameter must // be specified. HsmArn *string `type:"string"` // The serial number of the HSM. Either the HsmArn or the HsmSerialNumber parameter // must be specified. HsmSerialNumber *string `type:"string"` } // String returns the string representation func (s DescribeHsmInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeHsmInput) GoString() string { return s.String() } // Contains the output of the DescribeHsm operation. type DescribeHsmOutput struct { _ struct{} `type:"structure"` // The Availability Zone that the HSM is in. AvailabilityZone *string `type:"string"` // The identifier of the elastic network interface (ENI) attached to the HSM. EniId *string `type:"string"` // The IP address assigned to the HSM's ENI. EniIp *string `type:"string"` // The ARN of the HSM. HsmArn *string `type:"string"` // The HSM model type. HsmType *string `type:"string"` // The ARN of the IAM role assigned to the HSM. IamRoleArn *string `type:"string"` // The list of partitions on the HSM. Partitions []*string `type:"list"` // The serial number of the HSM. SerialNumber *string `type:"string"` // The date and time that the server certificate was last updated. ServerCertLastUpdated *string `type:"string"` // The URI of the certificate server. ServerCertUri *string `type:"string"` // The HSM software version. SoftwareVersion *string `type:"string"` // The date and time that the SSH key was last updated. SshKeyLastUpdated *string `type:"string"` // The public SSH key. SshPublicKey *string `type:"string"` // The status of the HSM. Status *string `type:"string" enum:"HsmStatus"` // Contains additional information about the status of the HSM. StatusDetails *string `type:"string"` // The identifier of the subnet that the HSM is in. SubnetId *string `type:"string"` // The subscription end date. SubscriptionEndDate *string `type:"string"` // The subscription start date. SubscriptionStartDate *string `type:"string"` // Specifies the type of subscription for the HSM. // // * PRODUCTION - The HSM is being used in a production environment. // * TRIAL - The HSM is being used in a product trial. SubscriptionType *string `type:"string" enum:"SubscriptionType"` // The name of the HSM vendor. VendorName *string `type:"string"` // The identifier of the VPC that the HSM is in. VpcId *string `type:"string"` } // String returns the string representation func (s DescribeHsmOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeHsmOutput) GoString() string { return s.String() } type DescribeLunaClientInput struct { _ struct{} `type:"structure"` // The certificate fingerprint. CertificateFingerprint *string `type:"string"` // The ARN of the client. ClientArn *string `type:"string"` } // String returns the string representation func (s DescribeLunaClientInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLunaClientInput) GoString() string { return s.String() } type DescribeLunaClientOutput struct { _ struct{} `type:"structure"` // The certificate installed on the HSMs used by this client. Certificate *string `min:"600" type:"string"` // The certificate fingerprint. CertificateFingerprint *string `type:"string"` // The ARN of the client. ClientArn *string `type:"string"` // The label of the client. Label *string `type:"string"` // The date and time the client was last modified. LastModifiedTimestamp *string `type:"string"` } // String returns the string representation func (s DescribeLunaClientOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLunaClientOutput) GoString() string { return s.String() } type GetConfigInput struct { _ struct{} `type:"structure"` // The ARN of the client. // // ClientArn is a required field ClientArn *string `type:"string" required:"true"` // The client version. // // ClientVersion is a required field ClientVersion *string `type:"string" required:"true" enum:"ClientVersion"` // A list of ARNs that identify the high-availability partition groups that // are associated with the client. // // HapgList is a required field HapgList []*string `type:"list" required:"true"` } // String returns the string representation func (s GetConfigInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetConfigInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetConfigInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetConfigInput"} if s.ClientArn == nil { invalidParams.Add(request.NewErrParamRequired("ClientArn")) } if s.ClientVersion == nil { invalidParams.Add(request.NewErrParamRequired("ClientVersion")) } if s.HapgList == nil { invalidParams.Add(request.NewErrParamRequired("HapgList")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetConfigOutput struct { _ struct{} `type:"structure"` // The certificate file containing the server.pem files of the HSMs. ConfigCred *string `type:"string"` // The chrystoki.conf configuration file. ConfigFile *string `type:"string"` // The type of credentials. ConfigType *string `type:"string"` } // String returns the string representation func (s GetConfigOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetConfigOutput) GoString() string { return s.String() } // Contains the inputs for the ListAvailableZones action. type ListAvailableZonesInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ListAvailableZonesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAvailableZonesInput) GoString() string { return s.String() } type ListAvailableZonesOutput struct { _ struct{} `type:"structure"` // The list of Availability Zones that have available AWS CloudHSM capacity. AZList []*string `type:"list"` } // String returns the string representation func (s ListAvailableZonesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAvailableZonesOutput) GoString() string { return s.String() } type ListHapgsInput struct { _ struct{} `type:"structure"` // The NextToken value from a previous call to ListHapgs. Pass null if this // is the first call. NextToken *string `type:"string"` } // String returns the string representation func (s ListHapgsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListHapgsInput) GoString() string { return s.String() } type ListHapgsOutput struct { _ struct{} `type:"structure"` // The list of high-availability partition groups. // // HapgList is a required field HapgList []*string `type:"list" required:"true"` // If not null, more results are available. Pass this value to ListHapgs to // retrieve the next set of items. NextToken *string `type:"string"` } // String returns the string representation func (s ListHapgsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListHapgsOutput) GoString() string { return s.String() } type ListHsmsInput struct { _ struct{} `type:"structure"` // The NextToken value from a previous call to ListHsms. Pass null if this is // the first call. NextToken *string `type:"string"` } // String returns the string representation func (s ListHsmsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListHsmsInput) GoString() string { return s.String() } // Contains the output of the ListHsms operation. type ListHsmsOutput struct { _ struct{} `type:"structure"` // The list of ARNs that identify the HSMs. HsmList []*string `type:"list"` // If not null, more results are available. Pass this value to ListHsms to retrieve // the next set of items. NextToken *string `type:"string"` } // String returns the string representation func (s ListHsmsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListHsmsOutput) GoString() string { return s.String() } type ListLunaClientsInput struct { _ struct{} `type:"structure"` // The NextToken value from a previous call to ListLunaClients. Pass null if // this is the first call. NextToken *string `type:"string"` } // String returns the string representation func (s ListLunaClientsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListLunaClientsInput) GoString() string { return s.String() } type ListLunaClientsOutput struct { _ struct{} `type:"structure"` // The list of clients. // // ClientList is a required field ClientList []*string `type:"list" required:"true"` // If not null, more results are available. Pass this to ListLunaClients to // retrieve the next set of items. NextToken *string `type:"string"` } // String returns the string representation func (s ListLunaClientsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListLunaClientsOutput) GoString() string { return s.String() } type ListTagsForResourceInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the AWS CloudHSM resource. // // ResourceArn is a required field ResourceArn *string `type:"string" required:"true"` } // String returns the string representation func (s ListTagsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsForResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} if s.ResourceArn == nil { invalidParams.Add(request.NewErrParamRequired("ResourceArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListTagsForResourceOutput struct { _ struct{} `type:"structure"` // One or more tags. // // TagList is a required field TagList []*Tag `type:"list" required:"true"` } // String returns the string representation func (s ListTagsForResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceOutput) GoString() string { return s.String() } type ModifyHapgInput struct { _ struct{} `type:"structure"` // The ARN of the high-availability partition group to modify. // // HapgArn is a required field HapgArn *string `type:"string" required:"true"` // The new label for the high-availability partition group. Label *string `type:"string"` // The list of partition serial numbers to make members of the high-availability // partition group. PartitionSerialList []*string `type:"list"` } // String returns the string representation func (s ModifyHapgInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyHapgInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyHapgInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyHapgInput"} if s.HapgArn == nil { invalidParams.Add(request.NewErrParamRequired("HapgArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyHapgOutput struct { _ struct{} `type:"structure"` // The ARN of the high-availability partition group. HapgArn *string `type:"string"` } // String returns the string representation func (s ModifyHapgOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyHapgOutput) GoString() string { return s.String() } // Contains the inputs for the ModifyHsm operation. type ModifyHsmInput struct { _ struct{} `locationName:"ModifyHsmRequest" type:"structure"` // The new IP address for the elastic network interface (ENI) attached to the // HSM. // // If the HSM is moved to a different subnet, and an IP address is not specified, // an IP address will be randomly chosen from the CIDR range of the new subnet. EniIp *string `locationName:"EniIp" type:"string"` // The new external ID. ExternalId *string `locationName:"ExternalId" type:"string"` // The ARN of the HSM to modify. // // HsmArn is a required field HsmArn *string `locationName:"HsmArn" type:"string" required:"true"` // The new IAM role ARN. IamRoleArn *string `locationName:"IamRoleArn" type:"string"` // The new identifier of the subnet that the HSM is in. The new subnet must // be in the same Availability Zone as the current subnet. SubnetId *string `locationName:"SubnetId" type:"string"` // The new IP address for the syslog monitoring server. The AWS CloudHSM service // only supports one syslog monitoring server. SyslogIp *string `locationName:"SyslogIp" type:"string"` } // String returns the string representation func (s ModifyHsmInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyHsmInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyHsmInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyHsmInput"} if s.HsmArn == nil { invalidParams.Add(request.NewErrParamRequired("HsmArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of the ModifyHsm operation. type ModifyHsmOutput struct { _ struct{} `type:"structure"` // The ARN of the HSM. HsmArn *string `type:"string"` } // String returns the string representation func (s ModifyHsmOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyHsmOutput) GoString() string { return s.String() } type ModifyLunaClientInput struct { _ struct{} `type:"structure"` // The new certificate for the client. // // Certificate is a required field Certificate *string `min:"600" type:"string" required:"true"` // The ARN of the client. // // ClientArn is a required field ClientArn *string `type:"string" required:"true"` } // String returns the string representation func (s ModifyLunaClientInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyLunaClientInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyLunaClientInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyLunaClientInput"} if s.Certificate == nil { invalidParams.Add(request.NewErrParamRequired("Certificate")) } if s.Certificate != nil && len(*s.Certificate) < 600 { invalidParams.Add(request.NewErrParamMinLen("Certificate", 600)) } if s.ClientArn == nil { invalidParams.Add(request.NewErrParamRequired("ClientArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyLunaClientOutput struct { _ struct{} `type:"structure"` // The ARN of the client. ClientArn *string `type:"string"` } // String returns the string representation func (s ModifyLunaClientOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyLunaClientOutput) GoString() string { return s.String() } type RemoveTagsFromResourceInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the AWS CloudHSM resource. // // ResourceArn is a required field ResourceArn *string `type:"string" required:"true"` // The tag key or keys to remove. // // Specify only the tag key to remove (not the value). To overwrite the value // for an existing tag, use AddTagsToResource. // // TagKeyList is a required field TagKeyList []*string `type:"list" required:"true"` } // String returns the string representation func (s RemoveTagsFromResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTagsFromResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTagsFromResourceInput"} if s.ResourceArn == nil { invalidParams.Add(request.NewErrParamRequired("ResourceArn")) } if s.TagKeyList == nil { invalidParams.Add(request.NewErrParamRequired("TagKeyList")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemoveTagsFromResourceOutput struct { _ struct{} `type:"structure"` // The status of the operation. // // Status is a required field Status *string `type:"string" required:"true"` } // String returns the string representation func (s RemoveTagsFromResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromResourceOutput) GoString() string { return s.String() } // A key-value pair that identifies or specifies metadata about an AWS CloudHSM // resource. type Tag struct { _ struct{} `type:"structure"` // The key of the tag. // // Key is a required field Key *string `min:"1" type:"string" required:"true"` // The value of the tag. // // Value is a required field Value *string `type:"string" required:"true"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } const ( // ClientVersion51 is a ClientVersion enum value ClientVersion51 = "5.1" // ClientVersion53 is a ClientVersion enum value ClientVersion53 = "5.3" ) const ( // CloudHsmObjectStateReady is a CloudHsmObjectState enum value CloudHsmObjectStateReady = "READY" // CloudHsmObjectStateUpdating is a CloudHsmObjectState enum value CloudHsmObjectStateUpdating = "UPDATING" // CloudHsmObjectStateDegraded is a CloudHsmObjectState enum value CloudHsmObjectStateDegraded = "DEGRADED" ) const ( // HsmStatusPending is a HsmStatus enum value HsmStatusPending = "PENDING" // HsmStatusRunning is a HsmStatus enum value HsmStatusRunning = "RUNNING" // HsmStatusUpdating is a HsmStatus enum value HsmStatusUpdating = "UPDATING" // HsmStatusSuspended is a HsmStatus enum value HsmStatusSuspended = "SUSPENDED" // HsmStatusTerminating is a HsmStatus enum value HsmStatusTerminating = "TERMINATING" // HsmStatusTerminated is a HsmStatus enum value HsmStatusTerminated = "TERMINATED" // HsmStatusDegraded is a HsmStatus enum value HsmStatusDegraded = "DEGRADED" ) // Specifies the type of subscription for the HSM. // // * PRODUCTION - The HSM is being used in a production environment. // * TRIAL - The HSM is being used in a product trial. const ( // SubscriptionTypeProduction is a SubscriptionType enum value SubscriptionTypeProduction = "PRODUCTION" ) aws-sdk-go-1.4.22/service/cloudhsm/cloudhsmiface/000077500000000000000000000000001300374646400216475ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudhsm/cloudhsmiface/interface.go000066400000000000000000000135241300374646400241430ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cloudhsmiface provides an interface to enable mocking the Amazon CloudHSM service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package cloudhsmiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/cloudhsm" ) // CloudHSMAPI provides an interface to enable mocking the // cloudhsm.CloudHSM service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon CloudHSM. // func myFunc(svc cloudhsmiface.CloudHSMAPI) bool { // // Make svc.AddTagsToResource request // } // // func main() { // sess := session.New() // svc := cloudhsm.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockCloudHSMClient struct { // cloudhsmiface.CloudHSMAPI // } // func (m *mockCloudHSMClient) AddTagsToResource(input *cloudhsm.AddTagsToResourceInput) (*cloudhsm.AddTagsToResourceOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockCloudHSMClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type CloudHSMAPI interface { AddTagsToResourceRequest(*cloudhsm.AddTagsToResourceInput) (*request.Request, *cloudhsm.AddTagsToResourceOutput) AddTagsToResource(*cloudhsm.AddTagsToResourceInput) (*cloudhsm.AddTagsToResourceOutput, error) CreateHapgRequest(*cloudhsm.CreateHapgInput) (*request.Request, *cloudhsm.CreateHapgOutput) CreateHapg(*cloudhsm.CreateHapgInput) (*cloudhsm.CreateHapgOutput, error) CreateHsmRequest(*cloudhsm.CreateHsmInput) (*request.Request, *cloudhsm.CreateHsmOutput) CreateHsm(*cloudhsm.CreateHsmInput) (*cloudhsm.CreateHsmOutput, error) CreateLunaClientRequest(*cloudhsm.CreateLunaClientInput) (*request.Request, *cloudhsm.CreateLunaClientOutput) CreateLunaClient(*cloudhsm.CreateLunaClientInput) (*cloudhsm.CreateLunaClientOutput, error) DeleteHapgRequest(*cloudhsm.DeleteHapgInput) (*request.Request, *cloudhsm.DeleteHapgOutput) DeleteHapg(*cloudhsm.DeleteHapgInput) (*cloudhsm.DeleteHapgOutput, error) DeleteHsmRequest(*cloudhsm.DeleteHsmInput) (*request.Request, *cloudhsm.DeleteHsmOutput) DeleteHsm(*cloudhsm.DeleteHsmInput) (*cloudhsm.DeleteHsmOutput, error) DeleteLunaClientRequest(*cloudhsm.DeleteLunaClientInput) (*request.Request, *cloudhsm.DeleteLunaClientOutput) DeleteLunaClient(*cloudhsm.DeleteLunaClientInput) (*cloudhsm.DeleteLunaClientOutput, error) DescribeHapgRequest(*cloudhsm.DescribeHapgInput) (*request.Request, *cloudhsm.DescribeHapgOutput) DescribeHapg(*cloudhsm.DescribeHapgInput) (*cloudhsm.DescribeHapgOutput, error) DescribeHsmRequest(*cloudhsm.DescribeHsmInput) (*request.Request, *cloudhsm.DescribeHsmOutput) DescribeHsm(*cloudhsm.DescribeHsmInput) (*cloudhsm.DescribeHsmOutput, error) DescribeLunaClientRequest(*cloudhsm.DescribeLunaClientInput) (*request.Request, *cloudhsm.DescribeLunaClientOutput) DescribeLunaClient(*cloudhsm.DescribeLunaClientInput) (*cloudhsm.DescribeLunaClientOutput, error) GetConfigRequest(*cloudhsm.GetConfigInput) (*request.Request, *cloudhsm.GetConfigOutput) GetConfig(*cloudhsm.GetConfigInput) (*cloudhsm.GetConfigOutput, error) ListAvailableZonesRequest(*cloudhsm.ListAvailableZonesInput) (*request.Request, *cloudhsm.ListAvailableZonesOutput) ListAvailableZones(*cloudhsm.ListAvailableZonesInput) (*cloudhsm.ListAvailableZonesOutput, error) ListHapgsRequest(*cloudhsm.ListHapgsInput) (*request.Request, *cloudhsm.ListHapgsOutput) ListHapgs(*cloudhsm.ListHapgsInput) (*cloudhsm.ListHapgsOutput, error) ListHsmsRequest(*cloudhsm.ListHsmsInput) (*request.Request, *cloudhsm.ListHsmsOutput) ListHsms(*cloudhsm.ListHsmsInput) (*cloudhsm.ListHsmsOutput, error) ListLunaClientsRequest(*cloudhsm.ListLunaClientsInput) (*request.Request, *cloudhsm.ListLunaClientsOutput) ListLunaClients(*cloudhsm.ListLunaClientsInput) (*cloudhsm.ListLunaClientsOutput, error) ListTagsForResourceRequest(*cloudhsm.ListTagsForResourceInput) (*request.Request, *cloudhsm.ListTagsForResourceOutput) ListTagsForResource(*cloudhsm.ListTagsForResourceInput) (*cloudhsm.ListTagsForResourceOutput, error) ModifyHapgRequest(*cloudhsm.ModifyHapgInput) (*request.Request, *cloudhsm.ModifyHapgOutput) ModifyHapg(*cloudhsm.ModifyHapgInput) (*cloudhsm.ModifyHapgOutput, error) ModifyHsmRequest(*cloudhsm.ModifyHsmInput) (*request.Request, *cloudhsm.ModifyHsmOutput) ModifyHsm(*cloudhsm.ModifyHsmInput) (*cloudhsm.ModifyHsmOutput, error) ModifyLunaClientRequest(*cloudhsm.ModifyLunaClientInput) (*request.Request, *cloudhsm.ModifyLunaClientOutput) ModifyLunaClient(*cloudhsm.ModifyLunaClientInput) (*cloudhsm.ModifyLunaClientOutput, error) RemoveTagsFromResourceRequest(*cloudhsm.RemoveTagsFromResourceInput) (*request.Request, *cloudhsm.RemoveTagsFromResourceOutput) RemoveTagsFromResource(*cloudhsm.RemoveTagsFromResourceInput) (*cloudhsm.RemoveTagsFromResourceOutput, error) } var _ CloudHSMAPI = (*cloudhsm.CloudHSM)(nil) aws-sdk-go-1.4.22/service/cloudhsm/examples_test.go000066400000000000000000000274361300374646400222610ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudhsm_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/cloudhsm" ) var _ time.Duration var _ bytes.Buffer func ExampleCloudHSM_AddTagsToResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.AddTagsToResourceInput{ ResourceArn: aws.String("String"), // Required TagList: []*cloudhsm.Tag{ // Required { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), // Required }, // More values... }, } resp, err := svc.AddTagsToResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_CreateHapg() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.CreateHapgInput{ Label: aws.String("Label"), // Required } resp, err := svc.CreateHapg(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_CreateHsm() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.CreateHsmInput{ IamRoleArn: aws.String("IamRoleArn"), // Required SshKey: aws.String("SshKey"), // Required SubnetId: aws.String("SubnetId"), // Required SubscriptionType: aws.String("SubscriptionType"), // Required ClientToken: aws.String("ClientToken"), EniIp: aws.String("IpAddress"), ExternalId: aws.String("ExternalId"), SyslogIp: aws.String("IpAddress"), } resp, err := svc.CreateHsm(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_CreateLunaClient() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.CreateLunaClientInput{ Certificate: aws.String("Certificate"), // Required Label: aws.String("ClientLabel"), } resp, err := svc.CreateLunaClient(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_DeleteHapg() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.DeleteHapgInput{ HapgArn: aws.String("HapgArn"), // Required } resp, err := svc.DeleteHapg(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_DeleteHsm() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.DeleteHsmInput{ HsmArn: aws.String("HsmArn"), // Required } resp, err := svc.DeleteHsm(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_DeleteLunaClient() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.DeleteLunaClientInput{ ClientArn: aws.String("ClientArn"), // Required } resp, err := svc.DeleteLunaClient(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_DescribeHapg() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.DescribeHapgInput{ HapgArn: aws.String("HapgArn"), // Required } resp, err := svc.DescribeHapg(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_DescribeHsm() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.DescribeHsmInput{ HsmArn: aws.String("HsmArn"), HsmSerialNumber: aws.String("HsmSerialNumber"), } resp, err := svc.DescribeHsm(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_DescribeLunaClient() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.DescribeLunaClientInput{ CertificateFingerprint: aws.String("CertificateFingerprint"), ClientArn: aws.String("ClientArn"), } resp, err := svc.DescribeLunaClient(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_GetConfig() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.GetConfigInput{ ClientArn: aws.String("ClientArn"), // Required ClientVersion: aws.String("ClientVersion"), // Required HapgList: []*string{ // Required aws.String("HapgArn"), // Required // More values... }, } resp, err := svc.GetConfig(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_ListAvailableZones() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) var params *cloudhsm.ListAvailableZonesInput resp, err := svc.ListAvailableZones(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_ListHapgs() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.ListHapgsInput{ NextToken: aws.String("PaginationToken"), } resp, err := svc.ListHapgs(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_ListHsms() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.ListHsmsInput{ NextToken: aws.String("PaginationToken"), } resp, err := svc.ListHsms(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_ListLunaClients() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.ListLunaClientsInput{ NextToken: aws.String("PaginationToken"), } resp, err := svc.ListLunaClients(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_ListTagsForResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.ListTagsForResourceInput{ ResourceArn: aws.String("String"), // Required } resp, err := svc.ListTagsForResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_ModifyHapg() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.ModifyHapgInput{ HapgArn: aws.String("HapgArn"), // Required Label: aws.String("Label"), PartitionSerialList: []*string{ aws.String("PartitionSerial"), // Required // More values... }, } resp, err := svc.ModifyHapg(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_ModifyHsm() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.ModifyHsmInput{ HsmArn: aws.String("HsmArn"), // Required EniIp: aws.String("IpAddress"), ExternalId: aws.String("ExternalId"), IamRoleArn: aws.String("IamRoleArn"), SubnetId: aws.String("SubnetId"), SyslogIp: aws.String("IpAddress"), } resp, err := svc.ModifyHsm(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_ModifyLunaClient() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.ModifyLunaClientInput{ Certificate: aws.String("Certificate"), // Required ClientArn: aws.String("ClientArn"), // Required } resp, err := svc.ModifyLunaClient(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudHSM_RemoveTagsFromResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudhsm.New(sess) params := &cloudhsm.RemoveTagsFromResourceInput{ ResourceArn: aws.String("String"), // Required TagKeyList: []*string{ // Required aws.String("TagKey"), // Required // More values... }, } resp, err := svc.RemoveTagsFromResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/cloudhsm/service.go000066400000000000000000000052561300374646400210400ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudhsm import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type CloudHSM struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "cloudhsm" // New creates a new instance of the CloudHSM client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a CloudHSM client from just a session. // svc := cloudhsm.New(mySession) // // // Create a CloudHSM client with additional configuration // svc := cloudhsm.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *CloudHSM { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *CloudHSM { svc := &CloudHSM{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-05-30", JSONVersion: "1.1", TargetPrefix: "CloudHsmFrontendService", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a CloudHSM operation and runs any // custom request initialization. func (c *CloudHSM) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/cloudsearch/000077500000000000000000000000001300374646400175175ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudsearch/api.go000066400000000000000000005263771300374646400206430ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cloudsearch provides a client for Amazon CloudSearch. package cloudsearch import ( "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opBuildSuggesters = "BuildSuggesters" // BuildSuggestersRequest generates a "aws/request.Request" representing the // client's request for the BuildSuggesters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See BuildSuggesters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the BuildSuggesters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the BuildSuggestersRequest method. // req, resp := client.BuildSuggestersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) BuildSuggestersRequest(input *BuildSuggestersInput) (req *request.Request, output *BuildSuggestersOutput) { op := &request.Operation{ Name: opBuildSuggesters, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &BuildSuggestersInput{} } req = c.newRequest(op, input, output) output = &BuildSuggestersOutput{} req.Data = output return } // BuildSuggesters API operation for Amazon CloudSearch. // // Indexes the search suggestions. For more information, see Configuring Suggesters // (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/getting-suggestions.html#configuring-suggesters) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation BuildSuggesters for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // func (c *CloudSearch) BuildSuggesters(input *BuildSuggestersInput) (*BuildSuggestersOutput, error) { req, out := c.BuildSuggestersRequest(input) err := req.Send() return out, err } const opCreateDomain = "CreateDomain" // CreateDomainRequest generates a "aws/request.Request" representing the // client's request for the CreateDomain operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDomain for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDomain method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDomainRequest method. // req, resp := client.CreateDomainRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) CreateDomainRequest(input *CreateDomainInput) (req *request.Request, output *CreateDomainOutput) { op := &request.Operation{ Name: opCreateDomain, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDomainInput{} } req = c.newRequest(op, input, output) output = &CreateDomainOutput{} req.Data = output return } // CreateDomain API operation for Amazon CloudSearch. // // Creates a new search domain. For more information, see Creating a Search // Domain (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/creating-domains.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation CreateDomain for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * LimitExceeded // The request was rejected because a resource limit has already been met. // func (c *CloudSearch) CreateDomain(input *CreateDomainInput) (*CreateDomainOutput, error) { req, out := c.CreateDomainRequest(input) err := req.Send() return out, err } const opDefineAnalysisScheme = "DefineAnalysisScheme" // DefineAnalysisSchemeRequest generates a "aws/request.Request" representing the // client's request for the DefineAnalysisScheme operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DefineAnalysisScheme for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DefineAnalysisScheme method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DefineAnalysisSchemeRequest method. // req, resp := client.DefineAnalysisSchemeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) DefineAnalysisSchemeRequest(input *DefineAnalysisSchemeInput) (req *request.Request, output *DefineAnalysisSchemeOutput) { op := &request.Operation{ Name: opDefineAnalysisScheme, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DefineAnalysisSchemeInput{} } req = c.newRequest(op, input, output) output = &DefineAnalysisSchemeOutput{} req.Data = output return } // DefineAnalysisScheme API operation for Amazon CloudSearch. // // Configures an analysis scheme that can be applied to a text or text-array // field to define language-specific text processing options. For more information, // see Configuring Analysis Schemes (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-analysis-schemes.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation DefineAnalysisScheme for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * LimitExceeded // The request was rejected because a resource limit has already been met. // // * InvalidType // The request was rejected because it specified an invalid type definition. // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // func (c *CloudSearch) DefineAnalysisScheme(input *DefineAnalysisSchemeInput) (*DefineAnalysisSchemeOutput, error) { req, out := c.DefineAnalysisSchemeRequest(input) err := req.Send() return out, err } const opDefineExpression = "DefineExpression" // DefineExpressionRequest generates a "aws/request.Request" representing the // client's request for the DefineExpression operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DefineExpression for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DefineExpression method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DefineExpressionRequest method. // req, resp := client.DefineExpressionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) DefineExpressionRequest(input *DefineExpressionInput) (req *request.Request, output *DefineExpressionOutput) { op := &request.Operation{ Name: opDefineExpression, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DefineExpressionInput{} } req = c.newRequest(op, input, output) output = &DefineExpressionOutput{} req.Data = output return } // DefineExpression API operation for Amazon CloudSearch. // // Configures an Expression for the search domain. Used to create new expressions // and modify existing ones. If the expression exists, the new configuration // replaces the old one. For more information, see Configuring Expressions (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-expressions.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation DefineExpression for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * LimitExceeded // The request was rejected because a resource limit has already been met. // // * InvalidType // The request was rejected because it specified an invalid type definition. // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // func (c *CloudSearch) DefineExpression(input *DefineExpressionInput) (*DefineExpressionOutput, error) { req, out := c.DefineExpressionRequest(input) err := req.Send() return out, err } const opDefineIndexField = "DefineIndexField" // DefineIndexFieldRequest generates a "aws/request.Request" representing the // client's request for the DefineIndexField operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DefineIndexField for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DefineIndexField method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DefineIndexFieldRequest method. // req, resp := client.DefineIndexFieldRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) DefineIndexFieldRequest(input *DefineIndexFieldInput) (req *request.Request, output *DefineIndexFieldOutput) { op := &request.Operation{ Name: opDefineIndexField, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DefineIndexFieldInput{} } req = c.newRequest(op, input, output) output = &DefineIndexFieldOutput{} req.Data = output return } // DefineIndexField API operation for Amazon CloudSearch. // // Configures an IndexField for the search domain. Used to create new fields // and modify existing ones. You must specify the name of the domain you are // configuring and an index field configuration. The index field configuration // specifies a unique name, the index field type, and the options you want to // configure for the field. The options you can specify depend on the IndexFieldType. // If the field exists, the new configuration replaces the old one. For more // information, see Configuring Index Fields (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-index-fields.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation DefineIndexField for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * LimitExceeded // The request was rejected because a resource limit has already been met. // // * InvalidType // The request was rejected because it specified an invalid type definition. // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // func (c *CloudSearch) DefineIndexField(input *DefineIndexFieldInput) (*DefineIndexFieldOutput, error) { req, out := c.DefineIndexFieldRequest(input) err := req.Send() return out, err } const opDefineSuggester = "DefineSuggester" // DefineSuggesterRequest generates a "aws/request.Request" representing the // client's request for the DefineSuggester operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DefineSuggester for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DefineSuggester method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DefineSuggesterRequest method. // req, resp := client.DefineSuggesterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) DefineSuggesterRequest(input *DefineSuggesterInput) (req *request.Request, output *DefineSuggesterOutput) { op := &request.Operation{ Name: opDefineSuggester, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DefineSuggesterInput{} } req = c.newRequest(op, input, output) output = &DefineSuggesterOutput{} req.Data = output return } // DefineSuggester API operation for Amazon CloudSearch. // // Configures a suggester for a domain. A suggester enables you to display possible // matches before users finish typing their queries. When you configure a suggester, // you must specify the name of the text field you want to search for possible // matches and a unique name for the suggester. For more information, see Getting // Search Suggestions (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/getting-suggestions.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation DefineSuggester for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * LimitExceeded // The request was rejected because a resource limit has already been met. // // * InvalidType // The request was rejected because it specified an invalid type definition. // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // func (c *CloudSearch) DefineSuggester(input *DefineSuggesterInput) (*DefineSuggesterOutput, error) { req, out := c.DefineSuggesterRequest(input) err := req.Send() return out, err } const opDeleteAnalysisScheme = "DeleteAnalysisScheme" // DeleteAnalysisSchemeRequest generates a "aws/request.Request" representing the // client's request for the DeleteAnalysisScheme operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteAnalysisScheme for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteAnalysisScheme method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteAnalysisSchemeRequest method. // req, resp := client.DeleteAnalysisSchemeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) DeleteAnalysisSchemeRequest(input *DeleteAnalysisSchemeInput) (req *request.Request, output *DeleteAnalysisSchemeOutput) { op := &request.Operation{ Name: opDeleteAnalysisScheme, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteAnalysisSchemeInput{} } req = c.newRequest(op, input, output) output = &DeleteAnalysisSchemeOutput{} req.Data = output return } // DeleteAnalysisScheme API operation for Amazon CloudSearch. // // Deletes an analysis scheme. For more information, see Configuring Analysis // Schemes (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-analysis-schemes.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation DeleteAnalysisScheme for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * InvalidType // The request was rejected because it specified an invalid type definition. // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // func (c *CloudSearch) DeleteAnalysisScheme(input *DeleteAnalysisSchemeInput) (*DeleteAnalysisSchemeOutput, error) { req, out := c.DeleteAnalysisSchemeRequest(input) err := req.Send() return out, err } const opDeleteDomain = "DeleteDomain" // DeleteDomainRequest generates a "aws/request.Request" representing the // client's request for the DeleteDomain operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDomain for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDomain method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDomainRequest method. // req, resp := client.DeleteDomainRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) DeleteDomainRequest(input *DeleteDomainInput) (req *request.Request, output *DeleteDomainOutput) { op := &request.Operation{ Name: opDeleteDomain, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDomainInput{} } req = c.newRequest(op, input, output) output = &DeleteDomainOutput{} req.Data = output return } // DeleteDomain API operation for Amazon CloudSearch. // // Permanently deletes a search domain and all of its data. Once a domain has // been deleted, it cannot be recovered. For more information, see Deleting // a Search Domain (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/deleting-domains.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation DeleteDomain for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // func (c *CloudSearch) DeleteDomain(input *DeleteDomainInput) (*DeleteDomainOutput, error) { req, out := c.DeleteDomainRequest(input) err := req.Send() return out, err } const opDeleteExpression = "DeleteExpression" // DeleteExpressionRequest generates a "aws/request.Request" representing the // client's request for the DeleteExpression operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteExpression for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteExpression method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteExpressionRequest method. // req, resp := client.DeleteExpressionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) DeleteExpressionRequest(input *DeleteExpressionInput) (req *request.Request, output *DeleteExpressionOutput) { op := &request.Operation{ Name: opDeleteExpression, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteExpressionInput{} } req = c.newRequest(op, input, output) output = &DeleteExpressionOutput{} req.Data = output return } // DeleteExpression API operation for Amazon CloudSearch. // // Removes an Expression from the search domain. For more information, see Configuring // Expressions (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-expressions.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation DeleteExpression for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * InvalidType // The request was rejected because it specified an invalid type definition. // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // func (c *CloudSearch) DeleteExpression(input *DeleteExpressionInput) (*DeleteExpressionOutput, error) { req, out := c.DeleteExpressionRequest(input) err := req.Send() return out, err } const opDeleteIndexField = "DeleteIndexField" // DeleteIndexFieldRequest generates a "aws/request.Request" representing the // client's request for the DeleteIndexField operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteIndexField for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteIndexField method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteIndexFieldRequest method. // req, resp := client.DeleteIndexFieldRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) DeleteIndexFieldRequest(input *DeleteIndexFieldInput) (req *request.Request, output *DeleteIndexFieldOutput) { op := &request.Operation{ Name: opDeleteIndexField, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteIndexFieldInput{} } req = c.newRequest(op, input, output) output = &DeleteIndexFieldOutput{} req.Data = output return } // DeleteIndexField API operation for Amazon CloudSearch. // // Removes an IndexField from the search domain. For more information, see Configuring // Index Fields (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-index-fields.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation DeleteIndexField for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * InvalidType // The request was rejected because it specified an invalid type definition. // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // func (c *CloudSearch) DeleteIndexField(input *DeleteIndexFieldInput) (*DeleteIndexFieldOutput, error) { req, out := c.DeleteIndexFieldRequest(input) err := req.Send() return out, err } const opDeleteSuggester = "DeleteSuggester" // DeleteSuggesterRequest generates a "aws/request.Request" representing the // client's request for the DeleteSuggester operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteSuggester for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteSuggester method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteSuggesterRequest method. // req, resp := client.DeleteSuggesterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) DeleteSuggesterRequest(input *DeleteSuggesterInput) (req *request.Request, output *DeleteSuggesterOutput) { op := &request.Operation{ Name: opDeleteSuggester, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteSuggesterInput{} } req = c.newRequest(op, input, output) output = &DeleteSuggesterOutput{} req.Data = output return } // DeleteSuggester API operation for Amazon CloudSearch. // // Deletes a suggester. For more information, see Getting Search Suggestions // (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/getting-suggestions.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation DeleteSuggester for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * InvalidType // The request was rejected because it specified an invalid type definition. // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // func (c *CloudSearch) DeleteSuggester(input *DeleteSuggesterInput) (*DeleteSuggesterOutput, error) { req, out := c.DeleteSuggesterRequest(input) err := req.Send() return out, err } const opDescribeAnalysisSchemes = "DescribeAnalysisSchemes" // DescribeAnalysisSchemesRequest generates a "aws/request.Request" representing the // client's request for the DescribeAnalysisSchemes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAnalysisSchemes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAnalysisSchemes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAnalysisSchemesRequest method. // req, resp := client.DescribeAnalysisSchemesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) DescribeAnalysisSchemesRequest(input *DescribeAnalysisSchemesInput) (req *request.Request, output *DescribeAnalysisSchemesOutput) { op := &request.Operation{ Name: opDescribeAnalysisSchemes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAnalysisSchemesInput{} } req = c.newRequest(op, input, output) output = &DescribeAnalysisSchemesOutput{} req.Data = output return } // DescribeAnalysisSchemes API operation for Amazon CloudSearch. // // Gets the analysis schemes configured for a domain. An analysis scheme defines // language-specific text processing options for a text field. Can be limited // to specific analysis schemes by name. By default, shows all analysis schemes // and includes any pending changes to the configuration. Set the Deployed option // to true to show the active configuration and exclude pending changes. For // more information, see Configuring Analysis Schemes (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-analysis-schemes.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation DescribeAnalysisSchemes for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // func (c *CloudSearch) DescribeAnalysisSchemes(input *DescribeAnalysisSchemesInput) (*DescribeAnalysisSchemesOutput, error) { req, out := c.DescribeAnalysisSchemesRequest(input) err := req.Send() return out, err } const opDescribeAvailabilityOptions = "DescribeAvailabilityOptions" // DescribeAvailabilityOptionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeAvailabilityOptions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAvailabilityOptions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAvailabilityOptions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAvailabilityOptionsRequest method. // req, resp := client.DescribeAvailabilityOptionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) DescribeAvailabilityOptionsRequest(input *DescribeAvailabilityOptionsInput) (req *request.Request, output *DescribeAvailabilityOptionsOutput) { op := &request.Operation{ Name: opDescribeAvailabilityOptions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAvailabilityOptionsInput{} } req = c.newRequest(op, input, output) output = &DescribeAvailabilityOptionsOutput{} req.Data = output return } // DescribeAvailabilityOptions API operation for Amazon CloudSearch. // // Gets the availability options configured for a domain. By default, shows // the configuration with any pending changes. Set the Deployed option to true // to show the active configuration and exclude pending changes. For more information, // see Configuring Availability Options (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-availability-options.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation DescribeAvailabilityOptions for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * InvalidType // The request was rejected because it specified an invalid type definition. // // * LimitExceeded // The request was rejected because a resource limit has already been met. // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // // * DisabledAction // The request was rejected because it attempted an operation which is not enabled. // func (c *CloudSearch) DescribeAvailabilityOptions(input *DescribeAvailabilityOptionsInput) (*DescribeAvailabilityOptionsOutput, error) { req, out := c.DescribeAvailabilityOptionsRequest(input) err := req.Send() return out, err } const opDescribeDomains = "DescribeDomains" // DescribeDomainsRequest generates a "aws/request.Request" representing the // client's request for the DescribeDomains operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDomains for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDomains method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDomainsRequest method. // req, resp := client.DescribeDomainsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) DescribeDomainsRequest(input *DescribeDomainsInput) (req *request.Request, output *DescribeDomainsOutput) { op := &request.Operation{ Name: opDescribeDomains, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeDomainsInput{} } req = c.newRequest(op, input, output) output = &DescribeDomainsOutput{} req.Data = output return } // DescribeDomains API operation for Amazon CloudSearch. // // Gets information about the search domains owned by this account. Can be limited // to specific domains. Shows all domains by default. To get the number of searchable // documents in a domain, use the console or submit a matchall request to your // domain's search endpoint: q=matchall&q.parser=structured&size=0. // For more information, see Getting Information about a Search Domain (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/getting-domain-info.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation DescribeDomains for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // func (c *CloudSearch) DescribeDomains(input *DescribeDomainsInput) (*DescribeDomainsOutput, error) { req, out := c.DescribeDomainsRequest(input) err := req.Send() return out, err } const opDescribeExpressions = "DescribeExpressions" // DescribeExpressionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeExpressions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeExpressions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeExpressions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeExpressionsRequest method. // req, resp := client.DescribeExpressionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) DescribeExpressionsRequest(input *DescribeExpressionsInput) (req *request.Request, output *DescribeExpressionsOutput) { op := &request.Operation{ Name: opDescribeExpressions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeExpressionsInput{} } req = c.newRequest(op, input, output) output = &DescribeExpressionsOutput{} req.Data = output return } // DescribeExpressions API operation for Amazon CloudSearch. // // Gets the expressions configured for the search domain. Can be limited to // specific expressions by name. By default, shows all expressions and includes // any pending changes to the configuration. Set the Deployed option to true // to show the active configuration and exclude pending changes. For more information, // see Configuring Expressions (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-expressions.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation DescribeExpressions for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // func (c *CloudSearch) DescribeExpressions(input *DescribeExpressionsInput) (*DescribeExpressionsOutput, error) { req, out := c.DescribeExpressionsRequest(input) err := req.Send() return out, err } const opDescribeIndexFields = "DescribeIndexFields" // DescribeIndexFieldsRequest generates a "aws/request.Request" representing the // client's request for the DescribeIndexFields operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeIndexFields for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeIndexFields method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeIndexFieldsRequest method. // req, resp := client.DescribeIndexFieldsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) DescribeIndexFieldsRequest(input *DescribeIndexFieldsInput) (req *request.Request, output *DescribeIndexFieldsOutput) { op := &request.Operation{ Name: opDescribeIndexFields, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeIndexFieldsInput{} } req = c.newRequest(op, input, output) output = &DescribeIndexFieldsOutput{} req.Data = output return } // DescribeIndexFields API operation for Amazon CloudSearch. // // Gets information about the index fields configured for the search domain. // Can be limited to specific fields by name. By default, shows all fields and // includes any pending changes to the configuration. Set the Deployed option // to true to show the active configuration and exclude pending changes. For // more information, see Getting Domain Information (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/getting-domain-info.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation DescribeIndexFields for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // func (c *CloudSearch) DescribeIndexFields(input *DescribeIndexFieldsInput) (*DescribeIndexFieldsOutput, error) { req, out := c.DescribeIndexFieldsRequest(input) err := req.Send() return out, err } const opDescribeScalingParameters = "DescribeScalingParameters" // DescribeScalingParametersRequest generates a "aws/request.Request" representing the // client's request for the DescribeScalingParameters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeScalingParameters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeScalingParameters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeScalingParametersRequest method. // req, resp := client.DescribeScalingParametersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) DescribeScalingParametersRequest(input *DescribeScalingParametersInput) (req *request.Request, output *DescribeScalingParametersOutput) { op := &request.Operation{ Name: opDescribeScalingParameters, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeScalingParametersInput{} } req = c.newRequest(op, input, output) output = &DescribeScalingParametersOutput{} req.Data = output return } // DescribeScalingParameters API operation for Amazon CloudSearch. // // Gets the scaling parameters configured for a domain. A domain's scaling parameters // specify the desired search instance type and replication count. For more // information, see Configuring Scaling Options (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-scaling-options.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation DescribeScalingParameters for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // func (c *CloudSearch) DescribeScalingParameters(input *DescribeScalingParametersInput) (*DescribeScalingParametersOutput, error) { req, out := c.DescribeScalingParametersRequest(input) err := req.Send() return out, err } const opDescribeServiceAccessPolicies = "DescribeServiceAccessPolicies" // DescribeServiceAccessPoliciesRequest generates a "aws/request.Request" representing the // client's request for the DescribeServiceAccessPolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeServiceAccessPolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeServiceAccessPolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeServiceAccessPoliciesRequest method. // req, resp := client.DescribeServiceAccessPoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) DescribeServiceAccessPoliciesRequest(input *DescribeServiceAccessPoliciesInput) (req *request.Request, output *DescribeServiceAccessPoliciesOutput) { op := &request.Operation{ Name: opDescribeServiceAccessPolicies, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeServiceAccessPoliciesInput{} } req = c.newRequest(op, input, output) output = &DescribeServiceAccessPoliciesOutput{} req.Data = output return } // DescribeServiceAccessPolicies API operation for Amazon CloudSearch. // // Gets information about the access policies that control access to the domain's // document and search endpoints. By default, shows the configuration with any // pending changes. Set the Deployed option to true to show the active configuration // and exclude pending changes. For more information, see Configuring Access // for a Search Domain (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-access.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation DescribeServiceAccessPolicies for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // func (c *CloudSearch) DescribeServiceAccessPolicies(input *DescribeServiceAccessPoliciesInput) (*DescribeServiceAccessPoliciesOutput, error) { req, out := c.DescribeServiceAccessPoliciesRequest(input) err := req.Send() return out, err } const opDescribeSuggesters = "DescribeSuggesters" // DescribeSuggestersRequest generates a "aws/request.Request" representing the // client's request for the DescribeSuggesters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSuggesters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSuggesters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSuggestersRequest method. // req, resp := client.DescribeSuggestersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) DescribeSuggestersRequest(input *DescribeSuggestersInput) (req *request.Request, output *DescribeSuggestersOutput) { op := &request.Operation{ Name: opDescribeSuggesters, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSuggestersInput{} } req = c.newRequest(op, input, output) output = &DescribeSuggestersOutput{} req.Data = output return } // DescribeSuggesters API operation for Amazon CloudSearch. // // Gets the suggesters configured for a domain. A suggester enables you to display // possible matches before users finish typing their queries. Can be limited // to specific suggesters by name. By default, shows all suggesters and includes // any pending changes to the configuration. Set the Deployed option to true // to show the active configuration and exclude pending changes. For more information, // see Getting Search Suggestions (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/getting-suggestions.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation DescribeSuggesters for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // func (c *CloudSearch) DescribeSuggesters(input *DescribeSuggestersInput) (*DescribeSuggestersOutput, error) { req, out := c.DescribeSuggestersRequest(input) err := req.Send() return out, err } const opIndexDocuments = "IndexDocuments" // IndexDocumentsRequest generates a "aws/request.Request" representing the // client's request for the IndexDocuments operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See IndexDocuments for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the IndexDocuments method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the IndexDocumentsRequest method. // req, resp := client.IndexDocumentsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) IndexDocumentsRequest(input *IndexDocumentsInput) (req *request.Request, output *IndexDocumentsOutput) { op := &request.Operation{ Name: opIndexDocuments, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &IndexDocumentsInput{} } req = c.newRequest(op, input, output) output = &IndexDocumentsOutput{} req.Data = output return } // IndexDocuments API operation for Amazon CloudSearch. // // Tells the search domain to start indexing its documents using the latest // indexing options. This operation must be invoked to activate options whose // OptionStatus is RequiresIndexDocuments. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation IndexDocuments for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // func (c *CloudSearch) IndexDocuments(input *IndexDocumentsInput) (*IndexDocumentsOutput, error) { req, out := c.IndexDocumentsRequest(input) err := req.Send() return out, err } const opListDomainNames = "ListDomainNames" // ListDomainNamesRequest generates a "aws/request.Request" representing the // client's request for the ListDomainNames operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDomainNames for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDomainNames method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDomainNamesRequest method. // req, resp := client.ListDomainNamesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) ListDomainNamesRequest(input *ListDomainNamesInput) (req *request.Request, output *ListDomainNamesOutput) { op := &request.Operation{ Name: opListDomainNames, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListDomainNamesInput{} } req = c.newRequest(op, input, output) output = &ListDomainNamesOutput{} req.Data = output return } // ListDomainNames API operation for Amazon CloudSearch. // // Lists all search domains owned by an account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation ListDomainNames for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // func (c *CloudSearch) ListDomainNames(input *ListDomainNamesInput) (*ListDomainNamesOutput, error) { req, out := c.ListDomainNamesRequest(input) err := req.Send() return out, err } const opUpdateAvailabilityOptions = "UpdateAvailabilityOptions" // UpdateAvailabilityOptionsRequest generates a "aws/request.Request" representing the // client's request for the UpdateAvailabilityOptions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateAvailabilityOptions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateAvailabilityOptions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateAvailabilityOptionsRequest method. // req, resp := client.UpdateAvailabilityOptionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) UpdateAvailabilityOptionsRequest(input *UpdateAvailabilityOptionsInput) (req *request.Request, output *UpdateAvailabilityOptionsOutput) { op := &request.Operation{ Name: opUpdateAvailabilityOptions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateAvailabilityOptionsInput{} } req = c.newRequest(op, input, output) output = &UpdateAvailabilityOptionsOutput{} req.Data = output return } // UpdateAvailabilityOptions API operation for Amazon CloudSearch. // // Configures the availability options for a domain. Enabling the Multi-AZ option // expands an Amazon CloudSearch domain to an additional Availability Zone in // the same Region to increase fault tolerance in the event of a service disruption. // Changes to the Multi-AZ option can take about half an hour to become active. // For more information, see Configuring Availability Options (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-availability-options.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation UpdateAvailabilityOptions for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * InvalidType // The request was rejected because it specified an invalid type definition. // // * LimitExceeded // The request was rejected because a resource limit has already been met. // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // // * DisabledAction // The request was rejected because it attempted an operation which is not enabled. // func (c *CloudSearch) UpdateAvailabilityOptions(input *UpdateAvailabilityOptionsInput) (*UpdateAvailabilityOptionsOutput, error) { req, out := c.UpdateAvailabilityOptionsRequest(input) err := req.Send() return out, err } const opUpdateScalingParameters = "UpdateScalingParameters" // UpdateScalingParametersRequest generates a "aws/request.Request" representing the // client's request for the UpdateScalingParameters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateScalingParameters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateScalingParameters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateScalingParametersRequest method. // req, resp := client.UpdateScalingParametersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) UpdateScalingParametersRequest(input *UpdateScalingParametersInput) (req *request.Request, output *UpdateScalingParametersOutput) { op := &request.Operation{ Name: opUpdateScalingParameters, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateScalingParametersInput{} } req = c.newRequest(op, input, output) output = &UpdateScalingParametersOutput{} req.Data = output return } // UpdateScalingParameters API operation for Amazon CloudSearch. // // Configures scaling parameters for a domain. A domain's scaling parameters // specify the desired search instance type and replication count. Amazon CloudSearch // will still automatically scale your domain based on the volume of data and // traffic, but not below the desired instance type and replication count. If // the Multi-AZ option is enabled, these values control the resources used per // Availability Zone. For more information, see Configuring Scaling Options // (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-scaling-options.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation UpdateScalingParameters for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * LimitExceeded // The request was rejected because a resource limit has already been met. // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // // * InvalidType // The request was rejected because it specified an invalid type definition. // func (c *CloudSearch) UpdateScalingParameters(input *UpdateScalingParametersInput) (*UpdateScalingParametersOutput, error) { req, out := c.UpdateScalingParametersRequest(input) err := req.Send() return out, err } const opUpdateServiceAccessPolicies = "UpdateServiceAccessPolicies" // UpdateServiceAccessPoliciesRequest generates a "aws/request.Request" representing the // client's request for the UpdateServiceAccessPolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateServiceAccessPolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateServiceAccessPolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateServiceAccessPoliciesRequest method. // req, resp := client.UpdateServiceAccessPoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearch) UpdateServiceAccessPoliciesRequest(input *UpdateServiceAccessPoliciesInput) (req *request.Request, output *UpdateServiceAccessPoliciesOutput) { op := &request.Operation{ Name: opUpdateServiceAccessPolicies, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateServiceAccessPoliciesInput{} } req = c.newRequest(op, input, output) output = &UpdateServiceAccessPoliciesOutput{} req.Data = output return } // UpdateServiceAccessPolicies API operation for Amazon CloudSearch. // // Configures the access rules that control access to the domain's document // and search endpoints. For more information, see Configuring Access for an // Amazon CloudSearch Domain (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-access.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch's // API operation UpdateServiceAccessPolicies for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // An internal error occurred while processing the request. If this problem // persists, report an issue from the Service Health Dashboard (http://status.aws.amazon.com/). // // * LimitExceeded // The request was rejected because a resource limit has already been met. // // * ResourceNotFound // The request was rejected because it attempted to reference a resource that // does not exist. // // * InvalidType // The request was rejected because it specified an invalid type definition. // func (c *CloudSearch) UpdateServiceAccessPolicies(input *UpdateServiceAccessPoliciesInput) (*UpdateServiceAccessPoliciesOutput, error) { req, out := c.UpdateServiceAccessPoliciesRequest(input) err := req.Send() return out, err } // The configured access rules for the domain's document and search endpoints, // and the current status of those rules. type AccessPoliciesStatus struct { _ struct{} `type:"structure"` // Access rules for a domain's document or search service endpoints. For more // information, see Configuring Access for a Search Domain (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-access.html) // in the Amazon CloudSearch Developer Guide. The maximum size of a policy document // is 100 KB. // // Options is a required field Options *string `type:"string" required:"true"` // The status of domain configuration option. // // Status is a required field Status *OptionStatus `type:"structure" required:"true"` } // String returns the string representation func (s AccessPoliciesStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AccessPoliciesStatus) GoString() string { return s.String() } // Synonyms, stopwords, and stemming options for an analysis scheme. Includes // tokenization dictionary for Japanese. type AnalysisOptions struct { _ struct{} `type:"structure"` // The level of algorithmic stemming to perform: none, minimal, light, or full. // The available levels vary depending on the language. For more information, // see Language Specific Text Processing Settings (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/text-processing.html#text-processing-settings) // in the Amazon CloudSearch Developer Guide AlgorithmicStemming *string `type:"string" enum:"AlgorithmicStemming"` // A JSON array that contains a collection of terms, tokens, readings and part // of speech for Japanese Tokenizaiton. The Japanese tokenization dictionary // enables you to override the default tokenization for selected terms. This // is only valid for Japanese language fields. JapaneseTokenizationDictionary *string `type:"string"` // A JSON object that contains a collection of string:value pairs that each // map a term to its stem. For example, {"term1": "stem1", "term2": "stem2", // "term3": "stem3"}. The stemming dictionary is applied in addition to any // algorithmic stemming. This enables you to override the results of the algorithmic // stemming to correct specific cases of overstemming or understemming. The // maximum size of a stemming dictionary is 500 KB. StemmingDictionary *string `type:"string"` // A JSON array of terms to ignore during indexing and searching. For example, // ["a", "an", "the", "of"]. The stopwords dictionary must explicitly list each // word you want to ignore. Wildcards and regular expressions are not supported. Stopwords *string `type:"string"` // A JSON object that defines synonym groups and aliases. A synonym group is // an array of arrays, where each sub-array is a group of terms where each term // in the group is considered a synonym of every other term in the group. The // aliases value is an object that contains a collection of string:value pairs // where the string specifies a term and the array of values specifies each // of the aliases for that term. An alias is considered a synonym of the specified // term, but the term is not considered a synonym of the alias. For more information // about specifying synonyms, see Synonyms (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-analysis-schemes.html#synonyms) // in the Amazon CloudSearch Developer Guide. Synonyms *string `type:"string"` } // String returns the string representation func (s AnalysisOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AnalysisOptions) GoString() string { return s.String() } // Configuration information for an analysis scheme. Each analysis scheme has // a unique name and specifies the language of the text to be processed. The // following options can be configured for an analysis scheme: Synonyms, Stopwords, // StemmingDictionary, JapaneseTokenizationDictionary and AlgorithmicStemming. type AnalysisScheme struct { _ struct{} `type:"structure"` // Synonyms, stopwords, and stemming options for an analysis scheme. Includes // tokenization dictionary for Japanese. AnalysisOptions *AnalysisOptions `type:"structure"` // An IETF RFC 4646 (http://tools.ietf.org/html/rfc4646) language code or mul // for multiple languages. // // AnalysisSchemeLanguage is a required field AnalysisSchemeLanguage *string `type:"string" required:"true" enum:"AnalysisSchemeLanguage"` // Names must begin with a letter and can contain the following characters: // a-z (lowercase), 0-9, and _ (underscore). // // AnalysisSchemeName is a required field AnalysisSchemeName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AnalysisScheme) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AnalysisScheme) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AnalysisScheme) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AnalysisScheme"} if s.AnalysisSchemeLanguage == nil { invalidParams.Add(request.NewErrParamRequired("AnalysisSchemeLanguage")) } if s.AnalysisSchemeName == nil { invalidParams.Add(request.NewErrParamRequired("AnalysisSchemeName")) } if s.AnalysisSchemeName != nil && len(*s.AnalysisSchemeName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AnalysisSchemeName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The status and configuration of an AnalysisScheme. type AnalysisSchemeStatus struct { _ struct{} `type:"structure"` // Configuration information for an analysis scheme. Each analysis scheme has // a unique name and specifies the language of the text to be processed. The // following options can be configured for an analysis scheme: Synonyms, Stopwords, // StemmingDictionary, JapaneseTokenizationDictionary and AlgorithmicStemming. // // Options is a required field Options *AnalysisScheme `type:"structure" required:"true"` // The status of domain configuration option. // // Status is a required field Status *OptionStatus `type:"structure" required:"true"` } // String returns the string representation func (s AnalysisSchemeStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AnalysisSchemeStatus) GoString() string { return s.String() } // The status and configuration of the domain's availability options. type AvailabilityOptionsStatus struct { _ struct{} `type:"structure"` // The availability options configured for the domain. // // Options is a required field Options *bool `type:"boolean" required:"true"` // The status of domain configuration option. // // Status is a required field Status *OptionStatus `type:"structure" required:"true"` } // String returns the string representation func (s AvailabilityOptionsStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AvailabilityOptionsStatus) GoString() string { return s.String() } // Container for the parameters to the BuildSuggester operation. Specifies the // name of the domain you want to update. type BuildSuggestersInput struct { _ struct{} `type:"structure"` // A string that represents the name of a domain. Domain names are unique across // the domains owned by an account within an AWS region. Domain names start // with a letter or number and can contain the following characters: a-z (lowercase), // 0-9, and - (hyphen). // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s BuildSuggestersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BuildSuggestersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BuildSuggestersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BuildSuggestersInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a BuildSuggester request. Contains a list of the fields used // for suggestions. type BuildSuggestersOutput struct { _ struct{} `type:"structure"` // A list of field names. FieldNames []*string `type:"list"` } // String returns the string representation func (s BuildSuggestersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BuildSuggestersOutput) GoString() string { return s.String() } // Container for the parameters to the CreateDomain operation. Specifies a name // for the new search domain. type CreateDomainInput struct { _ struct{} `type:"structure"` // A name for the domain you are creating. Allowed characters are a-z (lower-case // letters), 0-9, and hyphen (-). Domain names must start with a letter or number // and be at least 3 and no more than 28 characters long. // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s CreateDomainInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDomainInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDomainInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDomainInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a CreateDomainRequest. Contains the status of a newly created // domain. type CreateDomainOutput struct { _ struct{} `type:"structure"` // The current status of the search domain. DomainStatus *DomainStatus `type:"structure"` } // String returns the string representation func (s CreateDomainOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDomainOutput) GoString() string { return s.String() } // Options for a field that contains an array of dates. Present if IndexFieldType // specifies the field is of type date-array. All options are enabled by default. type DateArrayOptions struct { _ struct{} `type:"structure"` // A value to use for the field if the field isn't specified for a document. DefaultValue *string `type:"string"` // Whether facet information can be returned for the field. FacetEnabled *bool `type:"boolean"` // Whether the contents of the field can be returned in the search results. ReturnEnabled *bool `type:"boolean"` // Whether the contents of the field are searchable. SearchEnabled *bool `type:"boolean"` // A list of source fields to map to the field. SourceFields *string `type:"string"` } // String returns the string representation func (s DateArrayOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DateArrayOptions) GoString() string { return s.String() } // Options for a date field. Dates and times are specified in UTC (Coordinated // Universal Time) according to IETF RFC3339: yyyy-mm-ddT00:00:00Z. Present // if IndexFieldType specifies the field is of type date. All options are enabled // by default. type DateOptions struct { _ struct{} `type:"structure"` // A value to use for the field if the field isn't specified for a document. DefaultValue *string `type:"string"` // Whether facet information can be returned for the field. FacetEnabled *bool `type:"boolean"` // Whether the contents of the field can be returned in the search results. ReturnEnabled *bool `type:"boolean"` // Whether the contents of the field are searchable. SearchEnabled *bool `type:"boolean"` // Whether the field can be used to sort the search results. SortEnabled *bool `type:"boolean"` // A string that represents the name of an index field. CloudSearch supports // regular index fields as well as dynamic fields. A dynamic field's name defines // a pattern that begins or ends with a wildcard. Any document fields that don't // map to a regular index field but do match a dynamic field's pattern are configured // with the dynamic field's indexing options. // // Regular field names begin with a letter and can contain the following characters: // a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must begin // or end with a wildcard (*). The wildcard can also be the only character in // a dynamic field name. Multiple wildcards, and wildcards embedded within a // string are not supported. // // The name score is reserved and cannot be used as a field name. To reference // a document's ID, you can use the name _id. SourceField *string `min:"1" type:"string"` } // String returns the string representation func (s DateOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DateOptions) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DateOptions) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DateOptions"} if s.SourceField != nil && len(*s.SourceField) < 1 { invalidParams.Add(request.NewErrParamMinLen("SourceField", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for the parameters to the DefineAnalysisScheme operation. Specifies // the name of the domain you want to update and the analysis scheme configuration. type DefineAnalysisSchemeInput struct { _ struct{} `type:"structure"` // Configuration information for an analysis scheme. Each analysis scheme has // a unique name and specifies the language of the text to be processed. The // following options can be configured for an analysis scheme: Synonyms, Stopwords, // StemmingDictionary, JapaneseTokenizationDictionary and AlgorithmicStemming. // // AnalysisScheme is a required field AnalysisScheme *AnalysisScheme `type:"structure" required:"true"` // A string that represents the name of a domain. Domain names are unique across // the domains owned by an account within an AWS region. Domain names start // with a letter or number and can contain the following characters: a-z (lowercase), // 0-9, and - (hyphen). // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s DefineAnalysisSchemeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DefineAnalysisSchemeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DefineAnalysisSchemeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DefineAnalysisSchemeInput"} if s.AnalysisScheme == nil { invalidParams.Add(request.NewErrParamRequired("AnalysisScheme")) } if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if s.AnalysisScheme != nil { if err := s.AnalysisScheme.Validate(); err != nil { invalidParams.AddNested("AnalysisScheme", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DefineAnalysisScheme request. Contains the status of the // newly-configured analysis scheme. type DefineAnalysisSchemeOutput struct { _ struct{} `type:"structure"` // The status and configuration of an AnalysisScheme. // // AnalysisScheme is a required field AnalysisScheme *AnalysisSchemeStatus `type:"structure" required:"true"` } // String returns the string representation func (s DefineAnalysisSchemeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DefineAnalysisSchemeOutput) GoString() string { return s.String() } // Container for the parameters to the DefineExpression operation. Specifies // the name of the domain you want to update and the expression you want to // configure. type DefineExpressionInput struct { _ struct{} `type:"structure"` // A string that represents the name of a domain. Domain names are unique across // the domains owned by an account within an AWS region. Domain names start // with a letter or number and can contain the following characters: a-z (lowercase), // 0-9, and - (hyphen). // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` // A named expression that can be evaluated at search time. Can be used to sort // the search results, define other expressions, or return computed information // in the search results. // // Expression is a required field Expression *Expression `type:"structure" required:"true"` } // String returns the string representation func (s DefineExpressionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DefineExpressionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DefineExpressionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DefineExpressionInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if s.Expression == nil { invalidParams.Add(request.NewErrParamRequired("Expression")) } if s.Expression != nil { if err := s.Expression.Validate(); err != nil { invalidParams.AddNested("Expression", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DefineExpression request. Contains the status of the newly-configured // expression. type DefineExpressionOutput struct { _ struct{} `type:"structure"` // The value of an Expression and its current status. // // Expression is a required field Expression *ExpressionStatus `type:"structure" required:"true"` } // String returns the string representation func (s DefineExpressionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DefineExpressionOutput) GoString() string { return s.String() } // Container for the parameters to the DefineIndexField operation. Specifies // the name of the domain you want to update and the index field configuration. type DefineIndexFieldInput struct { _ struct{} `type:"structure"` // A string that represents the name of a domain. Domain names are unique across // the domains owned by an account within an AWS region. Domain names start // with a letter or number and can contain the following characters: a-z (lowercase), // 0-9, and - (hyphen). // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` // The index field and field options you want to configure. // // IndexField is a required field IndexField *IndexField `type:"structure" required:"true"` } // String returns the string representation func (s DefineIndexFieldInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DefineIndexFieldInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DefineIndexFieldInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DefineIndexFieldInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if s.IndexField == nil { invalidParams.Add(request.NewErrParamRequired("IndexField")) } if s.IndexField != nil { if err := s.IndexField.Validate(); err != nil { invalidParams.AddNested("IndexField", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DefineIndexField request. Contains the status of the newly-configured // index field. type DefineIndexFieldOutput struct { _ struct{} `type:"structure"` // The value of an IndexField and its current status. // // IndexField is a required field IndexField *IndexFieldStatus `type:"structure" required:"true"` } // String returns the string representation func (s DefineIndexFieldOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DefineIndexFieldOutput) GoString() string { return s.String() } // Container for the parameters to the DefineSuggester operation. Specifies // the name of the domain you want to update and the suggester configuration. type DefineSuggesterInput struct { _ struct{} `type:"structure"` // A string that represents the name of a domain. Domain names are unique across // the domains owned by an account within an AWS region. Domain names start // with a letter or number and can contain the following characters: a-z (lowercase), // 0-9, and - (hyphen). // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` // Configuration information for a search suggester. Each suggester has a unique // name and specifies the text field you want to use for suggestions. The following // options can be configured for a suggester: FuzzyMatching, SortExpression. // // Suggester is a required field Suggester *Suggester `type:"structure" required:"true"` } // String returns the string representation func (s DefineSuggesterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DefineSuggesterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DefineSuggesterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DefineSuggesterInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if s.Suggester == nil { invalidParams.Add(request.NewErrParamRequired("Suggester")) } if s.Suggester != nil { if err := s.Suggester.Validate(); err != nil { invalidParams.AddNested("Suggester", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DefineSuggester request. Contains the status of the newly-configured // suggester. type DefineSuggesterOutput struct { _ struct{} `type:"structure"` // The value of a Suggester and its current status. // // Suggester is a required field Suggester *SuggesterStatus `type:"structure" required:"true"` } // String returns the string representation func (s DefineSuggesterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DefineSuggesterOutput) GoString() string { return s.String() } // Container for the parameters to the DeleteAnalysisScheme operation. Specifies // the name of the domain you want to update and the analysis scheme you want // to delete. type DeleteAnalysisSchemeInput struct { _ struct{} `type:"structure"` // The name of the analysis scheme you want to delete. // // AnalysisSchemeName is a required field AnalysisSchemeName *string `min:"1" type:"string" required:"true"` // A string that represents the name of a domain. Domain names are unique across // the domains owned by an account within an AWS region. Domain names start // with a letter or number and can contain the following characters: a-z (lowercase), // 0-9, and - (hyphen). // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s DeleteAnalysisSchemeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAnalysisSchemeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAnalysisSchemeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAnalysisSchemeInput"} if s.AnalysisSchemeName == nil { invalidParams.Add(request.NewErrParamRequired("AnalysisSchemeName")) } if s.AnalysisSchemeName != nil && len(*s.AnalysisSchemeName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AnalysisSchemeName", 1)) } if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DeleteAnalysisScheme request. Contains the status of the // deleted analysis scheme. type DeleteAnalysisSchemeOutput struct { _ struct{} `type:"structure"` // The status of the analysis scheme being deleted. // // AnalysisScheme is a required field AnalysisScheme *AnalysisSchemeStatus `type:"structure" required:"true"` } // String returns the string representation func (s DeleteAnalysisSchemeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAnalysisSchemeOutput) GoString() string { return s.String() } // Container for the parameters to the DeleteDomain operation. Specifies the // name of the domain you want to delete. type DeleteDomainInput struct { _ struct{} `type:"structure"` // The name of the domain you want to permanently delete. // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s DeleteDomainInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDomainInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDomainInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDomainInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DeleteDomain request. Contains the status of a newly deleted // domain, or no status if the domain has already been completely deleted. type DeleteDomainOutput struct { _ struct{} `type:"structure"` // The current status of the search domain. DomainStatus *DomainStatus `type:"structure"` } // String returns the string representation func (s DeleteDomainOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDomainOutput) GoString() string { return s.String() } // Container for the parameters to the DeleteExpression operation. Specifies // the name of the domain you want to update and the name of the expression // you want to delete. type DeleteExpressionInput struct { _ struct{} `type:"structure"` // A string that represents the name of a domain. Domain names are unique across // the domains owned by an account within an AWS region. Domain names start // with a letter or number and can contain the following characters: a-z (lowercase), // 0-9, and - (hyphen). // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` // The name of the Expression to delete. // // ExpressionName is a required field ExpressionName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteExpressionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteExpressionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteExpressionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteExpressionInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if s.ExpressionName == nil { invalidParams.Add(request.NewErrParamRequired("ExpressionName")) } if s.ExpressionName != nil && len(*s.ExpressionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ExpressionName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DeleteExpression request. Specifies the expression being // deleted. type DeleteExpressionOutput struct { _ struct{} `type:"structure"` // The status of the expression being deleted. // // Expression is a required field Expression *ExpressionStatus `type:"structure" required:"true"` } // String returns the string representation func (s DeleteExpressionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteExpressionOutput) GoString() string { return s.String() } // Container for the parameters to the DeleteIndexField operation. Specifies // the name of the domain you want to update and the name of the index field // you want to delete. type DeleteIndexFieldInput struct { _ struct{} `type:"structure"` // A string that represents the name of a domain. Domain names are unique across // the domains owned by an account within an AWS region. Domain names start // with a letter or number and can contain the following characters: a-z (lowercase), // 0-9, and - (hyphen). // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` // The name of the index field your want to remove from the domain's indexing // options. // // IndexFieldName is a required field IndexFieldName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteIndexFieldInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteIndexFieldInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteIndexFieldInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteIndexFieldInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if s.IndexFieldName == nil { invalidParams.Add(request.NewErrParamRequired("IndexFieldName")) } if s.IndexFieldName != nil && len(*s.IndexFieldName) < 1 { invalidParams.Add(request.NewErrParamMinLen("IndexFieldName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DeleteIndexField request. type DeleteIndexFieldOutput struct { _ struct{} `type:"structure"` // The status of the index field being deleted. // // IndexField is a required field IndexField *IndexFieldStatus `type:"structure" required:"true"` } // String returns the string representation func (s DeleteIndexFieldOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteIndexFieldOutput) GoString() string { return s.String() } // Container for the parameters to the DeleteSuggester operation. Specifies // the name of the domain you want to update and name of the suggester you want // to delete. type DeleteSuggesterInput struct { _ struct{} `type:"structure"` // A string that represents the name of a domain. Domain names are unique across // the domains owned by an account within an AWS region. Domain names start // with a letter or number and can contain the following characters: a-z (lowercase), // 0-9, and - (hyphen). // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` // Specifies the name of the suggester you want to delete. // // SuggesterName is a required field SuggesterName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteSuggesterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSuggesterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteSuggesterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteSuggesterInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if s.SuggesterName == nil { invalidParams.Add(request.NewErrParamRequired("SuggesterName")) } if s.SuggesterName != nil && len(*s.SuggesterName) < 1 { invalidParams.Add(request.NewErrParamMinLen("SuggesterName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DeleteSuggester request. Contains the status of the deleted // suggester. type DeleteSuggesterOutput struct { _ struct{} `type:"structure"` // The status of the suggester being deleted. // // Suggester is a required field Suggester *SuggesterStatus `type:"structure" required:"true"` } // String returns the string representation func (s DeleteSuggesterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSuggesterOutput) GoString() string { return s.String() } // Container for the parameters to the DescribeAnalysisSchemes operation. Specifies // the name of the domain you want to describe. To limit the response to particular // analysis schemes, specify the names of the analysis schemes you want to describe. // To show the active configuration and exclude any pending changes, set the // Deployed option to true. type DescribeAnalysisSchemesInput struct { _ struct{} `type:"structure"` // The analysis schemes you want to describe. AnalysisSchemeNames []*string `type:"list"` // Whether to display the deployed configuration (true) or include any pending // changes (false). Defaults to false. Deployed *bool `type:"boolean"` // The name of the domain you want to describe. // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s DescribeAnalysisSchemesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAnalysisSchemesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeAnalysisSchemesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeAnalysisSchemesInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DescribeAnalysisSchemes request. Contains the analysis schemes // configured for the domain specified in the request. type DescribeAnalysisSchemesOutput struct { _ struct{} `type:"structure"` // The analysis scheme descriptions. // // AnalysisSchemes is a required field AnalysisSchemes []*AnalysisSchemeStatus `type:"list" required:"true"` } // String returns the string representation func (s DescribeAnalysisSchemesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAnalysisSchemesOutput) GoString() string { return s.String() } // Container for the parameters to the DescribeAvailabilityOptions operation. // Specifies the name of the domain you want to describe. To show the active // configuration and exclude any pending changes, set the Deployed option to // true. type DescribeAvailabilityOptionsInput struct { _ struct{} `type:"structure"` // Whether to display the deployed configuration (true) or include any pending // changes (false). Defaults to false. Deployed *bool `type:"boolean"` // The name of the domain you want to describe. // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s DescribeAvailabilityOptionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAvailabilityOptionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeAvailabilityOptionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeAvailabilityOptionsInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DescribeAvailabilityOptions request. Indicates whether or // not the Multi-AZ option is enabled for the domain specified in the request. type DescribeAvailabilityOptionsOutput struct { _ struct{} `type:"structure"` // The availability options configured for the domain. Indicates whether Multi-AZ // is enabled for the domain. AvailabilityOptions *AvailabilityOptionsStatus `type:"structure"` } // String returns the string representation func (s DescribeAvailabilityOptionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAvailabilityOptionsOutput) GoString() string { return s.String() } // Container for the parameters to the DescribeDomains operation. By default // shows the status of all domains. To restrict the response to particular domains, // specify the names of the domains you want to describe. type DescribeDomainsInput struct { _ struct{} `type:"structure"` // The names of the domains you want to include in the response. DomainNames []*string `type:"list"` } // String returns the string representation func (s DescribeDomainsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDomainsInput) GoString() string { return s.String() } // The result of a DescribeDomains request. Contains the status of the domains // specified in the request or all domains owned by the account. type DescribeDomainsOutput struct { _ struct{} `type:"structure"` // A list that contains the status of each requested domain. // // DomainStatusList is a required field DomainStatusList []*DomainStatus `type:"list" required:"true"` } // String returns the string representation func (s DescribeDomainsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDomainsOutput) GoString() string { return s.String() } // Container for the parameters to the DescribeDomains operation. Specifies // the name of the domain you want to describe. To restrict the response to // particular expressions, specify the names of the expressions you want to // describe. To show the active configuration and exclude any pending changes, // set the Deployed option to true. type DescribeExpressionsInput struct { _ struct{} `type:"structure"` // Whether to display the deployed configuration (true) or include any pending // changes (false). Defaults to false. Deployed *bool `type:"boolean"` // The name of the domain you want to describe. // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` // Limits the DescribeExpressions response to the specified expressions. If // not specified, all expressions are shown. ExpressionNames []*string `type:"list"` } // String returns the string representation func (s DescribeExpressionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeExpressionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeExpressionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeExpressionsInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DescribeExpressions request. Contains the expressions configured // for the domain specified in the request. type DescribeExpressionsOutput struct { _ struct{} `type:"structure"` // The expressions configured for the domain. // // Expressions is a required field Expressions []*ExpressionStatus `type:"list" required:"true"` } // String returns the string representation func (s DescribeExpressionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeExpressionsOutput) GoString() string { return s.String() } // Container for the parameters to the DescribeIndexFields operation. Specifies // the name of the domain you want to describe. To restrict the response to // particular index fields, specify the names of the index fields you want to // describe. To show the active configuration and exclude any pending changes, // set the Deployed option to true. type DescribeIndexFieldsInput struct { _ struct{} `type:"structure"` // Whether to display the deployed configuration (true) or include any pending // changes (false). Defaults to false. Deployed *bool `type:"boolean"` // The name of the domain you want to describe. // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` // A list of the index fields you want to describe. If not specified, information // is returned for all configured index fields. FieldNames []*string `type:"list"` } // String returns the string representation func (s DescribeIndexFieldsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeIndexFieldsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeIndexFieldsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeIndexFieldsInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DescribeIndexFields request. Contains the index fields configured // for the domain specified in the request. type DescribeIndexFieldsOutput struct { _ struct{} `type:"structure"` // The index fields configured for the domain. // // IndexFields is a required field IndexFields []*IndexFieldStatus `type:"list" required:"true"` } // String returns the string representation func (s DescribeIndexFieldsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeIndexFieldsOutput) GoString() string { return s.String() } // Container for the parameters to the DescribeScalingParameters operation. // Specifies the name of the domain you want to describe. type DescribeScalingParametersInput struct { _ struct{} `type:"structure"` // A string that represents the name of a domain. Domain names are unique across // the domains owned by an account within an AWS region. Domain names start // with a letter or number and can contain the following characters: a-z (lowercase), // 0-9, and - (hyphen). // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s DescribeScalingParametersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScalingParametersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeScalingParametersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeScalingParametersInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DescribeScalingParameters request. Contains the scaling parameters // configured for the domain specified in the request. type DescribeScalingParametersOutput struct { _ struct{} `type:"structure"` // The status and configuration of a search domain's scaling parameters. // // ScalingParameters is a required field ScalingParameters *ScalingParametersStatus `type:"structure" required:"true"` } // String returns the string representation func (s DescribeScalingParametersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScalingParametersOutput) GoString() string { return s.String() } // Container for the parameters to the DescribeServiceAccessPolicies operation. // Specifies the name of the domain you want to describe. To show the active // configuration and exclude any pending changes, set the Deployed option to // true. type DescribeServiceAccessPoliciesInput struct { _ struct{} `type:"structure"` // Whether to display the deployed configuration (true) or include any pending // changes (false). Defaults to false. Deployed *bool `type:"boolean"` // The name of the domain you want to describe. // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s DescribeServiceAccessPoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeServiceAccessPoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeServiceAccessPoliciesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeServiceAccessPoliciesInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DescribeServiceAccessPolicies request. type DescribeServiceAccessPoliciesOutput struct { _ struct{} `type:"structure"` // The access rules configured for the domain specified in the request. // // AccessPolicies is a required field AccessPolicies *AccessPoliciesStatus `type:"structure" required:"true"` } // String returns the string representation func (s DescribeServiceAccessPoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeServiceAccessPoliciesOutput) GoString() string { return s.String() } // Container for the parameters to the DescribeSuggester operation. Specifies // the name of the domain you want to describe. To restrict the response to // particular suggesters, specify the names of the suggesters you want to describe. // To show the active configuration and exclude any pending changes, set the // Deployed option to true. type DescribeSuggestersInput struct { _ struct{} `type:"structure"` // Whether to display the deployed configuration (true) or include any pending // changes (false). Defaults to false. Deployed *bool `type:"boolean"` // The name of the domain you want to describe. // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` // The suggesters you want to describe. SuggesterNames []*string `type:"list"` } // String returns the string representation func (s DescribeSuggestersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSuggestersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeSuggestersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeSuggestersInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DescribeSuggesters request. type DescribeSuggestersOutput struct { _ struct{} `type:"structure"` // The suggesters configured for the domain specified in the request. // // Suggesters is a required field Suggesters []*SuggesterStatus `type:"list" required:"true"` } // String returns the string representation func (s DescribeSuggestersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSuggestersOutput) GoString() string { return s.String() } // Options for a search suggester. type DocumentSuggesterOptions struct { _ struct{} `type:"structure"` // The level of fuzziness allowed when suggesting matches for a string: none, // low, or high. With none, the specified string is treated as an exact prefix. // With low, suggestions must differ from the specified string by no more than // one character. With high, suggestions can differ by up to two characters. // The default is none. FuzzyMatching *string `type:"string" enum:"SuggesterFuzzyMatching"` // An expression that computes a score for each suggestion to control how they // are sorted. The scores are rounded to the nearest integer, with a floor of // 0 and a ceiling of 2^31-1. A document's relevance score is not computed for // suggestions, so sort expressions cannot reference the _score value. To sort // suggestions using a numeric field or existing expression, simply specify // the name of the field or expression. If no expression is configured for the // suggester, the suggestions are sorted with the closest matches listed first. SortExpression *string `type:"string"` // The name of the index field you want to use for suggestions. // // SourceField is a required field SourceField *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DocumentSuggesterOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DocumentSuggesterOptions) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DocumentSuggesterOptions) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DocumentSuggesterOptions"} if s.SourceField == nil { invalidParams.Add(request.NewErrParamRequired("SourceField")) } if s.SourceField != nil && len(*s.SourceField) < 1 { invalidParams.Add(request.NewErrParamMinLen("SourceField", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The current status of the search domain. type DomainStatus struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the search domain. See Identifiers for // IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/index.html?Using_Identifiers.html) // in Using AWS Identity and Access Management for more information. ARN *string `type:"string"` // True if the search domain is created. It can take several minutes to initialize // a domain when CreateDomain is called. Newly created search domains are returned // from DescribeDomains with a false value for Created until domain creation // is complete. Created *bool `type:"boolean"` // True if the search domain has been deleted. The system must clean up resources // dedicated to the search domain when DeleteDomain is called. Newly deleted // search domains are returned from DescribeDomains with a true value for IsDeleted // for several minutes until resource cleanup is complete. Deleted *bool `type:"boolean"` // The service endpoint for updating documents in a search domain. DocService *ServiceEndpoint `type:"structure"` // An internally generated unique identifier for a domain. // // DomainId is a required field DomainId *string `min:"1" type:"string" required:"true"` // A string that represents the name of a domain. Domain names are unique across // the domains owned by an account within an AWS region. Domain names start // with a letter or number and can contain the following characters: a-z (lowercase), // 0-9, and - (hyphen). // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` Limits *Limits `type:"structure"` // True if processing is being done to activate the current domain configuration. Processing *bool `type:"boolean"` // True if IndexDocuments needs to be called to activate the current domain // configuration. // // RequiresIndexDocuments is a required field RequiresIndexDocuments *bool `type:"boolean" required:"true"` // The number of search instances that are available to process search requests. SearchInstanceCount *int64 `min:"1" type:"integer"` // The instance type that is being used to process search requests. SearchInstanceType *string `type:"string"` // The number of partitions across which the search index is spread. SearchPartitionCount *int64 `min:"1" type:"integer"` // The service endpoint for requesting search results from a search domain. SearchService *ServiceEndpoint `type:"structure"` } // String returns the string representation func (s DomainStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DomainStatus) GoString() string { return s.String() } // Options for a field that contains an array of double-precision 64-bit floating // point values. Present if IndexFieldType specifies the field is of type double-array. // All options are enabled by default. type DoubleArrayOptions struct { _ struct{} `type:"structure"` // A value to use for the field if the field isn't specified for a document. DefaultValue *float64 `type:"double"` // Whether facet information can be returned for the field. FacetEnabled *bool `type:"boolean"` // Whether the contents of the field can be returned in the search results. ReturnEnabled *bool `type:"boolean"` // Whether the contents of the field are searchable. SearchEnabled *bool `type:"boolean"` // A list of source fields to map to the field. SourceFields *string `type:"string"` } // String returns the string representation func (s DoubleArrayOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DoubleArrayOptions) GoString() string { return s.String() } // Options for a double-precision 64-bit floating point field. Present if IndexFieldType // specifies the field is of type double. All options are enabled by default. type DoubleOptions struct { _ struct{} `type:"structure"` // A value to use for the field if the field isn't specified for a document. // This can be important if you are using the field in an expression and that // field is not present in every document. DefaultValue *float64 `type:"double"` // Whether facet information can be returned for the field. FacetEnabled *bool `type:"boolean"` // Whether the contents of the field can be returned in the search results. ReturnEnabled *bool `type:"boolean"` // Whether the contents of the field are searchable. SearchEnabled *bool `type:"boolean"` // Whether the field can be used to sort the search results. SortEnabled *bool `type:"boolean"` // The name of the source field to map to the field. SourceField *string `min:"1" type:"string"` } // String returns the string representation func (s DoubleOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DoubleOptions) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DoubleOptions) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DoubleOptions"} if s.SourceField != nil && len(*s.SourceField) < 1 { invalidParams.Add(request.NewErrParamMinLen("SourceField", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A named expression that can be evaluated at search time. Can be used to sort // the search results, define other expressions, or return computed information // in the search results. type Expression struct { _ struct{} `type:"structure"` // Names must begin with a letter and can contain the following characters: // a-z (lowercase), 0-9, and _ (underscore). // // ExpressionName is a required field ExpressionName *string `min:"1" type:"string" required:"true"` // The expression to evaluate for sorting while processing a search request. // The Expression syntax is based on JavaScript expressions. For more information, // see Configuring Expressions (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-expressions.html) // in the Amazon CloudSearch Developer Guide. // // ExpressionValue is a required field ExpressionValue *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s Expression) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Expression) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Expression) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Expression"} if s.ExpressionName == nil { invalidParams.Add(request.NewErrParamRequired("ExpressionName")) } if s.ExpressionName != nil && len(*s.ExpressionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ExpressionName", 1)) } if s.ExpressionValue == nil { invalidParams.Add(request.NewErrParamRequired("ExpressionValue")) } if s.ExpressionValue != nil && len(*s.ExpressionValue) < 1 { invalidParams.Add(request.NewErrParamMinLen("ExpressionValue", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The value of an Expression and its current status. type ExpressionStatus struct { _ struct{} `type:"structure"` // The expression that is evaluated for sorting while processing a search request. // // Options is a required field Options *Expression `type:"structure" required:"true"` // The status of domain configuration option. // // Status is a required field Status *OptionStatus `type:"structure" required:"true"` } // String returns the string representation func (s ExpressionStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExpressionStatus) GoString() string { return s.String() } // Container for the parameters to the IndexDocuments operation. Specifies the // name of the domain you want to re-index. type IndexDocumentsInput struct { _ struct{} `type:"structure"` // A string that represents the name of a domain. Domain names are unique across // the domains owned by an account within an AWS region. Domain names start // with a letter or number and can contain the following characters: a-z (lowercase), // 0-9, and - (hyphen). // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s IndexDocumentsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IndexDocumentsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *IndexDocumentsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "IndexDocumentsInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of an IndexDocuments request. Contains the status of the indexing // operation, including the fields being indexed. type IndexDocumentsOutput struct { _ struct{} `type:"structure"` // The names of the fields that are currently being indexed. FieldNames []*string `type:"list"` } // String returns the string representation func (s IndexDocumentsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IndexDocumentsOutput) GoString() string { return s.String() } // Configuration information for a field in the index, including its name, type, // and options. The supported options depend on the IndexFieldType. type IndexField struct { _ struct{} `type:"structure"` // Options for a field that contains an array of dates. Present if IndexFieldType // specifies the field is of type date-array. All options are enabled by default. DateArrayOptions *DateArrayOptions `type:"structure"` // Options for a date field. Dates and times are specified in UTC (Coordinated // Universal Time) according to IETF RFC3339: yyyy-mm-ddT00:00:00Z. Present // if IndexFieldType specifies the field is of type date. All options are enabled // by default. DateOptions *DateOptions `type:"structure"` // Options for a field that contains an array of double-precision 64-bit floating // point values. Present if IndexFieldType specifies the field is of type double-array. // All options are enabled by default. DoubleArrayOptions *DoubleArrayOptions `type:"structure"` // Options for a double-precision 64-bit floating point field. Present if IndexFieldType // specifies the field is of type double. All options are enabled by default. DoubleOptions *DoubleOptions `type:"structure"` // A string that represents the name of an index field. CloudSearch supports // regular index fields as well as dynamic fields. A dynamic field's name defines // a pattern that begins or ends with a wildcard. Any document fields that don't // map to a regular index field but do match a dynamic field's pattern are configured // with the dynamic field's indexing options. // // Regular field names begin with a letter and can contain the following characters: // a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must begin // or end with a wildcard (*). The wildcard can also be the only character in // a dynamic field name. Multiple wildcards, and wildcards embedded within a // string are not supported. // // The name score is reserved and cannot be used as a field name. To reference // a document's ID, you can use the name _id. // // IndexFieldName is a required field IndexFieldName *string `min:"1" type:"string" required:"true"` // The type of field. The valid options for a field depend on the field type. // For more information about the supported field types, see Configuring Index // Fields (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-index-fields.html) // in the Amazon CloudSearch Developer Guide. // // IndexFieldType is a required field IndexFieldType *string `type:"string" required:"true" enum:"IndexFieldType"` // Options for a field that contains an array of 64-bit signed integers. Present // if IndexFieldType specifies the field is of type int-array. All options are // enabled by default. IntArrayOptions *IntArrayOptions `type:"structure"` // Options for a 64-bit signed integer field. Present if IndexFieldType specifies // the field is of type int. All options are enabled by default. IntOptions *IntOptions `type:"structure"` // Options for a latlon field. A latlon field contains a location stored as // a latitude and longitude value pair. Present if IndexFieldType specifies // the field is of type latlon. All options are enabled by default. LatLonOptions *LatLonOptions `type:"structure"` // Options for a field that contains an array of literal strings. Present if // IndexFieldType specifies the field is of type literal-array. All options // are enabled by default. LiteralArrayOptions *LiteralArrayOptions `type:"structure"` // Options for literal field. Present if IndexFieldType specifies the field // is of type literal. All options are enabled by default. LiteralOptions *LiteralOptions `type:"structure"` // Options for a field that contains an array of text strings. Present if IndexFieldType // specifies the field is of type text-array. A text-array field is always searchable. // All options are enabled by default. TextArrayOptions *TextArrayOptions `type:"structure"` // Options for text field. Present if IndexFieldType specifies the field is // of type text. A text field is always searchable. All options are enabled // by default. TextOptions *TextOptions `type:"structure"` } // String returns the string representation func (s IndexField) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IndexField) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *IndexField) Validate() error { invalidParams := request.ErrInvalidParams{Context: "IndexField"} if s.IndexFieldName == nil { invalidParams.Add(request.NewErrParamRequired("IndexFieldName")) } if s.IndexFieldName != nil && len(*s.IndexFieldName) < 1 { invalidParams.Add(request.NewErrParamMinLen("IndexFieldName", 1)) } if s.IndexFieldType == nil { invalidParams.Add(request.NewErrParamRequired("IndexFieldType")) } if s.DateOptions != nil { if err := s.DateOptions.Validate(); err != nil { invalidParams.AddNested("DateOptions", err.(request.ErrInvalidParams)) } } if s.DoubleOptions != nil { if err := s.DoubleOptions.Validate(); err != nil { invalidParams.AddNested("DoubleOptions", err.(request.ErrInvalidParams)) } } if s.IntOptions != nil { if err := s.IntOptions.Validate(); err != nil { invalidParams.AddNested("IntOptions", err.(request.ErrInvalidParams)) } } if s.LatLonOptions != nil { if err := s.LatLonOptions.Validate(); err != nil { invalidParams.AddNested("LatLonOptions", err.(request.ErrInvalidParams)) } } if s.LiteralOptions != nil { if err := s.LiteralOptions.Validate(); err != nil { invalidParams.AddNested("LiteralOptions", err.(request.ErrInvalidParams)) } } if s.TextOptions != nil { if err := s.TextOptions.Validate(); err != nil { invalidParams.AddNested("TextOptions", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The value of an IndexField and its current status. type IndexFieldStatus struct { _ struct{} `type:"structure"` // Configuration information for a field in the index, including its name, type, // and options. The supported options depend on the IndexFieldType. // // Options is a required field Options *IndexField `type:"structure" required:"true"` // The status of domain configuration option. // // Status is a required field Status *OptionStatus `type:"structure" required:"true"` } // String returns the string representation func (s IndexFieldStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IndexFieldStatus) GoString() string { return s.String() } // Options for a field that contains an array of 64-bit signed integers. Present // if IndexFieldType specifies the field is of type int-array. All options are // enabled by default. type IntArrayOptions struct { _ struct{} `type:"structure"` // A value to use for the field if the field isn't specified for a document. DefaultValue *int64 `type:"long"` // Whether facet information can be returned for the field. FacetEnabled *bool `type:"boolean"` // Whether the contents of the field can be returned in the search results. ReturnEnabled *bool `type:"boolean"` // Whether the contents of the field are searchable. SearchEnabled *bool `type:"boolean"` // A list of source fields to map to the field. SourceFields *string `type:"string"` } // String returns the string representation func (s IntArrayOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IntArrayOptions) GoString() string { return s.String() } // Options for a 64-bit signed integer field. Present if IndexFieldType specifies // the field is of type int. All options are enabled by default. type IntOptions struct { _ struct{} `type:"structure"` // A value to use for the field if the field isn't specified for a document. // This can be important if you are using the field in an expression and that // field is not present in every document. DefaultValue *int64 `type:"long"` // Whether facet information can be returned for the field. FacetEnabled *bool `type:"boolean"` // Whether the contents of the field can be returned in the search results. ReturnEnabled *bool `type:"boolean"` // Whether the contents of the field are searchable. SearchEnabled *bool `type:"boolean"` // Whether the field can be used to sort the search results. SortEnabled *bool `type:"boolean"` // The name of the source field to map to the field. SourceField *string `min:"1" type:"string"` } // String returns the string representation func (s IntOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IntOptions) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *IntOptions) Validate() error { invalidParams := request.ErrInvalidParams{Context: "IntOptions"} if s.SourceField != nil && len(*s.SourceField) < 1 { invalidParams.Add(request.NewErrParamMinLen("SourceField", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Options for a latlon field. A latlon field contains a location stored as // a latitude and longitude value pair. Present if IndexFieldType specifies // the field is of type latlon. All options are enabled by default. type LatLonOptions struct { _ struct{} `type:"structure"` // A value to use for the field if the field isn't specified for a document. DefaultValue *string `type:"string"` // Whether facet information can be returned for the field. FacetEnabled *bool `type:"boolean"` // Whether the contents of the field can be returned in the search results. ReturnEnabled *bool `type:"boolean"` // Whether the contents of the field are searchable. SearchEnabled *bool `type:"boolean"` // Whether the field can be used to sort the search results. SortEnabled *bool `type:"boolean"` // A string that represents the name of an index field. CloudSearch supports // regular index fields as well as dynamic fields. A dynamic field's name defines // a pattern that begins or ends with a wildcard. Any document fields that don't // map to a regular index field but do match a dynamic field's pattern are configured // with the dynamic field's indexing options. // // Regular field names begin with a letter and can contain the following characters: // a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must begin // or end with a wildcard (*). The wildcard can also be the only character in // a dynamic field name. Multiple wildcards, and wildcards embedded within a // string are not supported. // // The name score is reserved and cannot be used as a field name. To reference // a document's ID, you can use the name _id. SourceField *string `min:"1" type:"string"` } // String returns the string representation func (s LatLonOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LatLonOptions) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LatLonOptions) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LatLonOptions"} if s.SourceField != nil && len(*s.SourceField) < 1 { invalidParams.Add(request.NewErrParamMinLen("SourceField", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type Limits struct { _ struct{} `type:"structure"` // MaximumPartitionCount is a required field MaximumPartitionCount *int64 `min:"1" type:"integer" required:"true"` // MaximumReplicationCount is a required field MaximumReplicationCount *int64 `min:"1" type:"integer" required:"true"` } // String returns the string representation func (s Limits) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Limits) GoString() string { return s.String() } type ListDomainNamesInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ListDomainNamesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDomainNamesInput) GoString() string { return s.String() } // The result of a ListDomainNames request. Contains a list of the domains owned // by an account. type ListDomainNamesOutput struct { _ struct{} `type:"structure"` // The names of the search domains owned by an account. DomainNames map[string]*string `type:"map"` } // String returns the string representation func (s ListDomainNamesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDomainNamesOutput) GoString() string { return s.String() } // Options for a field that contains an array of literal strings. Present if // IndexFieldType specifies the field is of type literal-array. All options // are enabled by default. type LiteralArrayOptions struct { _ struct{} `type:"structure"` // A value to use for the field if the field isn't specified for a document. DefaultValue *string `type:"string"` // Whether facet information can be returned for the field. FacetEnabled *bool `type:"boolean"` // Whether the contents of the field can be returned in the search results. ReturnEnabled *bool `type:"boolean"` // Whether the contents of the field are searchable. SearchEnabled *bool `type:"boolean"` // A list of source fields to map to the field. SourceFields *string `type:"string"` } // String returns the string representation func (s LiteralArrayOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LiteralArrayOptions) GoString() string { return s.String() } // Options for literal field. Present if IndexFieldType specifies the field // is of type literal. All options are enabled by default. type LiteralOptions struct { _ struct{} `type:"structure"` // A value to use for the field if the field isn't specified for a document. DefaultValue *string `type:"string"` // Whether facet information can be returned for the field. FacetEnabled *bool `type:"boolean"` // Whether the contents of the field can be returned in the search results. ReturnEnabled *bool `type:"boolean"` // Whether the contents of the field are searchable. SearchEnabled *bool `type:"boolean"` // Whether the field can be used to sort the search results. SortEnabled *bool `type:"boolean"` // A string that represents the name of an index field. CloudSearch supports // regular index fields as well as dynamic fields. A dynamic field's name defines // a pattern that begins or ends with a wildcard. Any document fields that don't // map to a regular index field but do match a dynamic field's pattern are configured // with the dynamic field's indexing options. // // Regular field names begin with a letter and can contain the following characters: // a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must begin // or end with a wildcard (*). The wildcard can also be the only character in // a dynamic field name. Multiple wildcards, and wildcards embedded within a // string are not supported. // // The name score is reserved and cannot be used as a field name. To reference // a document's ID, you can use the name _id. SourceField *string `min:"1" type:"string"` } // String returns the string representation func (s LiteralOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LiteralOptions) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LiteralOptions) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LiteralOptions"} if s.SourceField != nil && len(*s.SourceField) < 1 { invalidParams.Add(request.NewErrParamMinLen("SourceField", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The status of domain configuration option. type OptionStatus struct { _ struct{} `type:"structure"` // A timestamp for when this option was created. // // CreationDate is a required field CreationDate *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // Indicates that the option will be deleted once processing is complete. PendingDeletion *bool `type:"boolean"` // The state of processing a change to an option. Possible values: // // * RequiresIndexDocuments: the option's latest value will not be deployed // until IndexDocuments has been called and indexing is complete. // * Processing: the option's latest value is in the process of being activated. // // * Active: the option's latest value is completely deployed. // * FailedToValidate: the option value is not compatible with the domain's // data and cannot be used to index the data. You must either modify the // option value or update or remove the incompatible documents. // // State is a required field State *string `type:"string" required:"true" enum:"OptionState"` // A timestamp for when this option was last updated. // // UpdateDate is a required field UpdateDate *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // A unique integer that indicates when this option was last updated. UpdateVersion *int64 `type:"integer"` } // String returns the string representation func (s OptionStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OptionStatus) GoString() string { return s.String() } // The desired instance type and desired number of replicas of each index partition. type ScalingParameters struct { _ struct{} `type:"structure"` // The instance type that you want to preconfigure for your domain. For example, // search.m1.small. DesiredInstanceType *string `type:"string" enum:"PartitionInstanceType"` // The number of partitions you want to preconfigure for your domain. Only valid // when you select m2.2xlarge as the desired instance type. DesiredPartitionCount *int64 `type:"integer"` // The number of replicas you want to preconfigure for each index partition. DesiredReplicationCount *int64 `type:"integer"` } // String returns the string representation func (s ScalingParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScalingParameters) GoString() string { return s.String() } // The status and configuration of a search domain's scaling parameters. type ScalingParametersStatus struct { _ struct{} `type:"structure"` // The desired instance type and desired number of replicas of each index partition. // // Options is a required field Options *ScalingParameters `type:"structure" required:"true"` // The status of domain configuration option. // // Status is a required field Status *OptionStatus `type:"structure" required:"true"` } // String returns the string representation func (s ScalingParametersStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScalingParametersStatus) GoString() string { return s.String() } // The endpoint to which service requests can be submitted. type ServiceEndpoint struct { _ struct{} `type:"structure"` // The endpoint to which service requests can be submitted. For example, search-imdb-movies-oopcnjfn6ugofer3zx5iadxxca.eu-west-1.cloudsearch.amazonaws.com // or doc-imdb-movies-oopcnjfn6ugofer3zx5iadxxca.eu-west-1.cloudsearch.amazonaws.com. Endpoint *string `type:"string"` } // String returns the string representation func (s ServiceEndpoint) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ServiceEndpoint) GoString() string { return s.String() } // Configuration information for a search suggester. Each suggester has a unique // name and specifies the text field you want to use for suggestions. The following // options can be configured for a suggester: FuzzyMatching, SortExpression. type Suggester struct { _ struct{} `type:"structure"` // Options for a search suggester. // // DocumentSuggesterOptions is a required field DocumentSuggesterOptions *DocumentSuggesterOptions `type:"structure" required:"true"` // Names must begin with a letter and can contain the following characters: // a-z (lowercase), 0-9, and _ (underscore). // // SuggesterName is a required field SuggesterName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s Suggester) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Suggester) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Suggester) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Suggester"} if s.DocumentSuggesterOptions == nil { invalidParams.Add(request.NewErrParamRequired("DocumentSuggesterOptions")) } if s.SuggesterName == nil { invalidParams.Add(request.NewErrParamRequired("SuggesterName")) } if s.SuggesterName != nil && len(*s.SuggesterName) < 1 { invalidParams.Add(request.NewErrParamMinLen("SuggesterName", 1)) } if s.DocumentSuggesterOptions != nil { if err := s.DocumentSuggesterOptions.Validate(); err != nil { invalidParams.AddNested("DocumentSuggesterOptions", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The value of a Suggester and its current status. type SuggesterStatus struct { _ struct{} `type:"structure"` // Configuration information for a search suggester. Each suggester has a unique // name and specifies the text field you want to use for suggestions. The following // options can be configured for a suggester: FuzzyMatching, SortExpression. // // Options is a required field Options *Suggester `type:"structure" required:"true"` // The status of domain configuration option. // // Status is a required field Status *OptionStatus `type:"structure" required:"true"` } // String returns the string representation func (s SuggesterStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SuggesterStatus) GoString() string { return s.String() } // Options for a field that contains an array of text strings. Present if IndexFieldType // specifies the field is of type text-array. A text-array field is always searchable. // All options are enabled by default. type TextArrayOptions struct { _ struct{} `type:"structure"` // The name of an analysis scheme for a text-array field. AnalysisScheme *string `type:"string"` // A value to use for the field if the field isn't specified for a document. DefaultValue *string `type:"string"` // Whether highlights can be returned for the field. HighlightEnabled *bool `type:"boolean"` // Whether the contents of the field can be returned in the search results. ReturnEnabled *bool `type:"boolean"` // A list of source fields to map to the field. SourceFields *string `type:"string"` } // String returns the string representation func (s TextArrayOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TextArrayOptions) GoString() string { return s.String() } // Options for text field. Present if IndexFieldType specifies the field is // of type text. A text field is always searchable. All options are enabled // by default. type TextOptions struct { _ struct{} `type:"structure"` // The name of an analysis scheme for a text field. AnalysisScheme *string `type:"string"` // A value to use for the field if the field isn't specified for a document. DefaultValue *string `type:"string"` // Whether highlights can be returned for the field. HighlightEnabled *bool `type:"boolean"` // Whether the contents of the field can be returned in the search results. ReturnEnabled *bool `type:"boolean"` // Whether the field can be used to sort the search results. SortEnabled *bool `type:"boolean"` // A string that represents the name of an index field. CloudSearch supports // regular index fields as well as dynamic fields. A dynamic field's name defines // a pattern that begins or ends with a wildcard. Any document fields that don't // map to a regular index field but do match a dynamic field's pattern are configured // with the dynamic field's indexing options. // // Regular field names begin with a letter and can contain the following characters: // a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must begin // or end with a wildcard (*). The wildcard can also be the only character in // a dynamic field name. Multiple wildcards, and wildcards embedded within a // string are not supported. // // The name score is reserved and cannot be used as a field name. To reference // a document's ID, you can use the name _id. SourceField *string `min:"1" type:"string"` } // String returns the string representation func (s TextOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TextOptions) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TextOptions) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TextOptions"} if s.SourceField != nil && len(*s.SourceField) < 1 { invalidParams.Add(request.NewErrParamMinLen("SourceField", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for the parameters to the UpdateAvailabilityOptions operation. // Specifies the name of the domain you want to update and the Multi-AZ availability // option. type UpdateAvailabilityOptionsInput struct { _ struct{} `type:"structure"` // A string that represents the name of a domain. Domain names are unique across // the domains owned by an account within an AWS region. Domain names start // with a letter or number and can contain the following characters: a-z (lowercase), // 0-9, and - (hyphen). // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` // You expand an existing search domain to a second Availability Zone by setting // the Multi-AZ option to true. Similarly, you can turn off the Multi-AZ option // to downgrade the domain to a single Availability Zone by setting the Multi-AZ // option to false. // // MultiAZ is a required field MultiAZ *bool `type:"boolean" required:"true"` } // String returns the string representation func (s UpdateAvailabilityOptionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAvailabilityOptionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateAvailabilityOptionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateAvailabilityOptionsInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if s.MultiAZ == nil { invalidParams.Add(request.NewErrParamRequired("MultiAZ")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a UpdateAvailabilityOptions request. Contains the status of // the domain's availability options. type UpdateAvailabilityOptionsOutput struct { _ struct{} `type:"structure"` // The newly-configured availability options. Indicates whether Multi-AZ is // enabled for the domain. AvailabilityOptions *AvailabilityOptionsStatus `type:"structure"` } // String returns the string representation func (s UpdateAvailabilityOptionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAvailabilityOptionsOutput) GoString() string { return s.String() } // Container for the parameters to the UpdateScalingParameters operation. Specifies // the name of the domain you want to update and the scaling parameters you // want to configure. type UpdateScalingParametersInput struct { _ struct{} `type:"structure"` // A string that represents the name of a domain. Domain names are unique across // the domains owned by an account within an AWS region. Domain names start // with a letter or number and can contain the following characters: a-z (lowercase), // 0-9, and - (hyphen). // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` // The desired instance type and desired number of replicas of each index partition. // // ScalingParameters is a required field ScalingParameters *ScalingParameters `type:"structure" required:"true"` } // String returns the string representation func (s UpdateScalingParametersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateScalingParametersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateScalingParametersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateScalingParametersInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if s.ScalingParameters == nil { invalidParams.Add(request.NewErrParamRequired("ScalingParameters")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a UpdateScalingParameters request. Contains the status of the // newly-configured scaling parameters. type UpdateScalingParametersOutput struct { _ struct{} `type:"structure"` // The status and configuration of a search domain's scaling parameters. // // ScalingParameters is a required field ScalingParameters *ScalingParametersStatus `type:"structure" required:"true"` } // String returns the string representation func (s UpdateScalingParametersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateScalingParametersOutput) GoString() string { return s.String() } // Container for the parameters to the UpdateServiceAccessPolicies operation. // Specifies the name of the domain you want to update and the access rules // you want to configure. type UpdateServiceAccessPoliciesInput struct { _ struct{} `type:"structure"` // The access rules you want to configure. These rules replace any existing // rules. // // AccessPolicies is a required field AccessPolicies *string `type:"string" required:"true"` // A string that represents the name of a domain. Domain names are unique across // the domains owned by an account within an AWS region. Domain names start // with a letter or number and can contain the following characters: a-z (lowercase), // 0-9, and - (hyphen). // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s UpdateServiceAccessPoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateServiceAccessPoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateServiceAccessPoliciesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateServiceAccessPoliciesInput"} if s.AccessPolicies == nil { invalidParams.Add(request.NewErrParamRequired("AccessPolicies")) } if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of an UpdateServiceAccessPolicies request. Contains the new access // policies. type UpdateServiceAccessPoliciesOutput struct { _ struct{} `type:"structure"` // The access rules configured for the domain. // // AccessPolicies is a required field AccessPolicies *AccessPoliciesStatus `type:"structure" required:"true"` } // String returns the string representation func (s UpdateServiceAccessPoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateServiceAccessPoliciesOutput) GoString() string { return s.String() } const ( // AlgorithmicStemmingNone is a AlgorithmicStemming enum value AlgorithmicStemmingNone = "none" // AlgorithmicStemmingMinimal is a AlgorithmicStemming enum value AlgorithmicStemmingMinimal = "minimal" // AlgorithmicStemmingLight is a AlgorithmicStemming enum value AlgorithmicStemmingLight = "light" // AlgorithmicStemmingFull is a AlgorithmicStemming enum value AlgorithmicStemmingFull = "full" ) // An IETF RFC 4646 (http://tools.ietf.org/html/rfc4646) language code or mul // for multiple languages. const ( // AnalysisSchemeLanguageAr is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageAr = "ar" // AnalysisSchemeLanguageBg is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageBg = "bg" // AnalysisSchemeLanguageCa is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageCa = "ca" // AnalysisSchemeLanguageCs is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageCs = "cs" // AnalysisSchemeLanguageDa is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageDa = "da" // AnalysisSchemeLanguageDe is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageDe = "de" // AnalysisSchemeLanguageEl is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageEl = "el" // AnalysisSchemeLanguageEn is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageEn = "en" // AnalysisSchemeLanguageEs is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageEs = "es" // AnalysisSchemeLanguageEu is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageEu = "eu" // AnalysisSchemeLanguageFa is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageFa = "fa" // AnalysisSchemeLanguageFi is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageFi = "fi" // AnalysisSchemeLanguageFr is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageFr = "fr" // AnalysisSchemeLanguageGa is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageGa = "ga" // AnalysisSchemeLanguageGl is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageGl = "gl" // AnalysisSchemeLanguageHe is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageHe = "he" // AnalysisSchemeLanguageHi is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageHi = "hi" // AnalysisSchemeLanguageHu is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageHu = "hu" // AnalysisSchemeLanguageHy is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageHy = "hy" // AnalysisSchemeLanguageId is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageId = "id" // AnalysisSchemeLanguageIt is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageIt = "it" // AnalysisSchemeLanguageJa is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageJa = "ja" // AnalysisSchemeLanguageKo is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageKo = "ko" // AnalysisSchemeLanguageLv is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageLv = "lv" // AnalysisSchemeLanguageMul is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageMul = "mul" // AnalysisSchemeLanguageNl is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageNl = "nl" // AnalysisSchemeLanguageNo is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageNo = "no" // AnalysisSchemeLanguagePt is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguagePt = "pt" // AnalysisSchemeLanguageRo is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageRo = "ro" // AnalysisSchemeLanguageRu is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageRu = "ru" // AnalysisSchemeLanguageSv is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageSv = "sv" // AnalysisSchemeLanguageTh is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageTh = "th" // AnalysisSchemeLanguageTr is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageTr = "tr" // AnalysisSchemeLanguageZhHans is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageZhHans = "zh-Hans" // AnalysisSchemeLanguageZhHant is a AnalysisSchemeLanguage enum value AnalysisSchemeLanguageZhHant = "zh-Hant" ) // The type of field. The valid options for a field depend on the field type. // For more information about the supported field types, see Configuring Index // Fields (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-index-fields.html) // in the Amazon CloudSearch Developer Guide. const ( // IndexFieldTypeInt is a IndexFieldType enum value IndexFieldTypeInt = "int" // IndexFieldTypeDouble is a IndexFieldType enum value IndexFieldTypeDouble = "double" // IndexFieldTypeLiteral is a IndexFieldType enum value IndexFieldTypeLiteral = "literal" // IndexFieldTypeText is a IndexFieldType enum value IndexFieldTypeText = "text" // IndexFieldTypeDate is a IndexFieldType enum value IndexFieldTypeDate = "date" // IndexFieldTypeLatlon is a IndexFieldType enum value IndexFieldTypeLatlon = "latlon" // IndexFieldTypeIntArray is a IndexFieldType enum value IndexFieldTypeIntArray = "int-array" // IndexFieldTypeDoubleArray is a IndexFieldType enum value IndexFieldTypeDoubleArray = "double-array" // IndexFieldTypeLiteralArray is a IndexFieldType enum value IndexFieldTypeLiteralArray = "literal-array" // IndexFieldTypeTextArray is a IndexFieldType enum value IndexFieldTypeTextArray = "text-array" // IndexFieldTypeDateArray is a IndexFieldType enum value IndexFieldTypeDateArray = "date-array" ) // The state of processing a change to an option. One of: // // * RequiresIndexDocuments: The option's latest value will not be deployed // until IndexDocuments has been called and indexing is complete. // * Processing: The option's latest value is in the process of being activated. // // * Active: The option's latest value is fully deployed. // * FailedToValidate: The option value is not compatible with the domain's // data and cannot be used to index the data. You must either modify the // option value or update or remove the incompatible documents. const ( // OptionStateRequiresIndexDocuments is a OptionState enum value OptionStateRequiresIndexDocuments = "RequiresIndexDocuments" // OptionStateProcessing is a OptionState enum value OptionStateProcessing = "Processing" // OptionStateActive is a OptionState enum value OptionStateActive = "Active" // OptionStateFailedToValidate is a OptionState enum value OptionStateFailedToValidate = "FailedToValidate" ) // The instance type (such as search.m1.small) on which an index partition is // hosted. const ( // PartitionInstanceTypeSearchM1Small is a PartitionInstanceType enum value PartitionInstanceTypeSearchM1Small = "search.m1.small" // PartitionInstanceTypeSearchM1Large is a PartitionInstanceType enum value PartitionInstanceTypeSearchM1Large = "search.m1.large" // PartitionInstanceTypeSearchM2Xlarge is a PartitionInstanceType enum value PartitionInstanceTypeSearchM2Xlarge = "search.m2.xlarge" // PartitionInstanceTypeSearchM22xlarge is a PartitionInstanceType enum value PartitionInstanceTypeSearchM22xlarge = "search.m2.2xlarge" // PartitionInstanceTypeSearchM3Medium is a PartitionInstanceType enum value PartitionInstanceTypeSearchM3Medium = "search.m3.medium" // PartitionInstanceTypeSearchM3Large is a PartitionInstanceType enum value PartitionInstanceTypeSearchM3Large = "search.m3.large" // PartitionInstanceTypeSearchM3Xlarge is a PartitionInstanceType enum value PartitionInstanceTypeSearchM3Xlarge = "search.m3.xlarge" // PartitionInstanceTypeSearchM32xlarge is a PartitionInstanceType enum value PartitionInstanceTypeSearchM32xlarge = "search.m3.2xlarge" ) const ( // SuggesterFuzzyMatchingNone is a SuggesterFuzzyMatching enum value SuggesterFuzzyMatchingNone = "none" // SuggesterFuzzyMatchingLow is a SuggesterFuzzyMatching enum value SuggesterFuzzyMatchingLow = "low" // SuggesterFuzzyMatchingHigh is a SuggesterFuzzyMatching enum value SuggesterFuzzyMatchingHigh = "high" ) aws-sdk-go-1.4.22/service/cloudsearch/cloudsearchiface/000077500000000000000000000000001300374646400230035ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudsearch/cloudsearchiface/interface.go000066400000000000000000000173241300374646400253010ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cloudsearchiface provides an interface to enable mocking the Amazon CloudSearch service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package cloudsearchiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/cloudsearch" ) // CloudSearchAPI provides an interface to enable mocking the // cloudsearch.CloudSearch service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon CloudSearch. // func myFunc(svc cloudsearchiface.CloudSearchAPI) bool { // // Make svc.BuildSuggesters request // } // // func main() { // sess := session.New() // svc := cloudsearch.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockCloudSearchClient struct { // cloudsearchiface.CloudSearchAPI // } // func (m *mockCloudSearchClient) BuildSuggesters(input *cloudsearch.BuildSuggestersInput) (*cloudsearch.BuildSuggestersOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockCloudSearchClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type CloudSearchAPI interface { BuildSuggestersRequest(*cloudsearch.BuildSuggestersInput) (*request.Request, *cloudsearch.BuildSuggestersOutput) BuildSuggesters(*cloudsearch.BuildSuggestersInput) (*cloudsearch.BuildSuggestersOutput, error) CreateDomainRequest(*cloudsearch.CreateDomainInput) (*request.Request, *cloudsearch.CreateDomainOutput) CreateDomain(*cloudsearch.CreateDomainInput) (*cloudsearch.CreateDomainOutput, error) DefineAnalysisSchemeRequest(*cloudsearch.DefineAnalysisSchemeInput) (*request.Request, *cloudsearch.DefineAnalysisSchemeOutput) DefineAnalysisScheme(*cloudsearch.DefineAnalysisSchemeInput) (*cloudsearch.DefineAnalysisSchemeOutput, error) DefineExpressionRequest(*cloudsearch.DefineExpressionInput) (*request.Request, *cloudsearch.DefineExpressionOutput) DefineExpression(*cloudsearch.DefineExpressionInput) (*cloudsearch.DefineExpressionOutput, error) DefineIndexFieldRequest(*cloudsearch.DefineIndexFieldInput) (*request.Request, *cloudsearch.DefineIndexFieldOutput) DefineIndexField(*cloudsearch.DefineIndexFieldInput) (*cloudsearch.DefineIndexFieldOutput, error) DefineSuggesterRequest(*cloudsearch.DefineSuggesterInput) (*request.Request, *cloudsearch.DefineSuggesterOutput) DefineSuggester(*cloudsearch.DefineSuggesterInput) (*cloudsearch.DefineSuggesterOutput, error) DeleteAnalysisSchemeRequest(*cloudsearch.DeleteAnalysisSchemeInput) (*request.Request, *cloudsearch.DeleteAnalysisSchemeOutput) DeleteAnalysisScheme(*cloudsearch.DeleteAnalysisSchemeInput) (*cloudsearch.DeleteAnalysisSchemeOutput, error) DeleteDomainRequest(*cloudsearch.DeleteDomainInput) (*request.Request, *cloudsearch.DeleteDomainOutput) DeleteDomain(*cloudsearch.DeleteDomainInput) (*cloudsearch.DeleteDomainOutput, error) DeleteExpressionRequest(*cloudsearch.DeleteExpressionInput) (*request.Request, *cloudsearch.DeleteExpressionOutput) DeleteExpression(*cloudsearch.DeleteExpressionInput) (*cloudsearch.DeleteExpressionOutput, error) DeleteIndexFieldRequest(*cloudsearch.DeleteIndexFieldInput) (*request.Request, *cloudsearch.DeleteIndexFieldOutput) DeleteIndexField(*cloudsearch.DeleteIndexFieldInput) (*cloudsearch.DeleteIndexFieldOutput, error) DeleteSuggesterRequest(*cloudsearch.DeleteSuggesterInput) (*request.Request, *cloudsearch.DeleteSuggesterOutput) DeleteSuggester(*cloudsearch.DeleteSuggesterInput) (*cloudsearch.DeleteSuggesterOutput, error) DescribeAnalysisSchemesRequest(*cloudsearch.DescribeAnalysisSchemesInput) (*request.Request, *cloudsearch.DescribeAnalysisSchemesOutput) DescribeAnalysisSchemes(*cloudsearch.DescribeAnalysisSchemesInput) (*cloudsearch.DescribeAnalysisSchemesOutput, error) DescribeAvailabilityOptionsRequest(*cloudsearch.DescribeAvailabilityOptionsInput) (*request.Request, *cloudsearch.DescribeAvailabilityOptionsOutput) DescribeAvailabilityOptions(*cloudsearch.DescribeAvailabilityOptionsInput) (*cloudsearch.DescribeAvailabilityOptionsOutput, error) DescribeDomainsRequest(*cloudsearch.DescribeDomainsInput) (*request.Request, *cloudsearch.DescribeDomainsOutput) DescribeDomains(*cloudsearch.DescribeDomainsInput) (*cloudsearch.DescribeDomainsOutput, error) DescribeExpressionsRequest(*cloudsearch.DescribeExpressionsInput) (*request.Request, *cloudsearch.DescribeExpressionsOutput) DescribeExpressions(*cloudsearch.DescribeExpressionsInput) (*cloudsearch.DescribeExpressionsOutput, error) DescribeIndexFieldsRequest(*cloudsearch.DescribeIndexFieldsInput) (*request.Request, *cloudsearch.DescribeIndexFieldsOutput) DescribeIndexFields(*cloudsearch.DescribeIndexFieldsInput) (*cloudsearch.DescribeIndexFieldsOutput, error) DescribeScalingParametersRequest(*cloudsearch.DescribeScalingParametersInput) (*request.Request, *cloudsearch.DescribeScalingParametersOutput) DescribeScalingParameters(*cloudsearch.DescribeScalingParametersInput) (*cloudsearch.DescribeScalingParametersOutput, error) DescribeServiceAccessPoliciesRequest(*cloudsearch.DescribeServiceAccessPoliciesInput) (*request.Request, *cloudsearch.DescribeServiceAccessPoliciesOutput) DescribeServiceAccessPolicies(*cloudsearch.DescribeServiceAccessPoliciesInput) (*cloudsearch.DescribeServiceAccessPoliciesOutput, error) DescribeSuggestersRequest(*cloudsearch.DescribeSuggestersInput) (*request.Request, *cloudsearch.DescribeSuggestersOutput) DescribeSuggesters(*cloudsearch.DescribeSuggestersInput) (*cloudsearch.DescribeSuggestersOutput, error) IndexDocumentsRequest(*cloudsearch.IndexDocumentsInput) (*request.Request, *cloudsearch.IndexDocumentsOutput) IndexDocuments(*cloudsearch.IndexDocumentsInput) (*cloudsearch.IndexDocumentsOutput, error) ListDomainNamesRequest(*cloudsearch.ListDomainNamesInput) (*request.Request, *cloudsearch.ListDomainNamesOutput) ListDomainNames(*cloudsearch.ListDomainNamesInput) (*cloudsearch.ListDomainNamesOutput, error) UpdateAvailabilityOptionsRequest(*cloudsearch.UpdateAvailabilityOptionsInput) (*request.Request, *cloudsearch.UpdateAvailabilityOptionsOutput) UpdateAvailabilityOptions(*cloudsearch.UpdateAvailabilityOptionsInput) (*cloudsearch.UpdateAvailabilityOptionsOutput, error) UpdateScalingParametersRequest(*cloudsearch.UpdateScalingParametersInput) (*request.Request, *cloudsearch.UpdateScalingParametersOutput) UpdateScalingParameters(*cloudsearch.UpdateScalingParametersInput) (*cloudsearch.UpdateScalingParametersOutput, error) UpdateServiceAccessPoliciesRequest(*cloudsearch.UpdateServiceAccessPoliciesInput) (*request.Request, *cloudsearch.UpdateServiceAccessPoliciesOutput) UpdateServiceAccessPolicies(*cloudsearch.UpdateServiceAccessPoliciesInput) (*cloudsearch.UpdateServiceAccessPoliciesOutput, error) } var _ CloudSearchAPI = (*cloudsearch.CloudSearch)(nil) aws-sdk-go-1.4.22/service/cloudsearch/examples_test.go000066400000000000000000000451131300374646400227270ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudsearch_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/cloudsearch" ) var _ time.Duration var _ bytes.Buffer func ExampleCloudSearch_BuildSuggesters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.BuildSuggestersInput{ DomainName: aws.String("DomainName"), // Required } resp, err := svc.BuildSuggesters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_CreateDomain() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.CreateDomainInput{ DomainName: aws.String("DomainName"), // Required } resp, err := svc.CreateDomain(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_DefineAnalysisScheme() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.DefineAnalysisSchemeInput{ AnalysisScheme: &cloudsearch.AnalysisScheme{ // Required AnalysisSchemeLanguage: aws.String("AnalysisSchemeLanguage"), // Required AnalysisSchemeName: aws.String("StandardName"), // Required AnalysisOptions: &cloudsearch.AnalysisOptions{ AlgorithmicStemming: aws.String("AlgorithmicStemming"), JapaneseTokenizationDictionary: aws.String("String"), StemmingDictionary: aws.String("String"), Stopwords: aws.String("String"), Synonyms: aws.String("String"), }, }, DomainName: aws.String("DomainName"), // Required } resp, err := svc.DefineAnalysisScheme(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_DefineExpression() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.DefineExpressionInput{ DomainName: aws.String("DomainName"), // Required Expression: &cloudsearch.Expression{ // Required ExpressionName: aws.String("StandardName"), // Required ExpressionValue: aws.String("ExpressionValue"), // Required }, } resp, err := svc.DefineExpression(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_DefineIndexField() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.DefineIndexFieldInput{ DomainName: aws.String("DomainName"), // Required IndexField: &cloudsearch.IndexField{ // Required IndexFieldName: aws.String("DynamicFieldName"), // Required IndexFieldType: aws.String("IndexFieldType"), // Required DateArrayOptions: &cloudsearch.DateArrayOptions{ DefaultValue: aws.String("FieldValue"), FacetEnabled: aws.Bool(true), ReturnEnabled: aws.Bool(true), SearchEnabled: aws.Bool(true), SourceFields: aws.String("FieldNameCommaList"), }, DateOptions: &cloudsearch.DateOptions{ DefaultValue: aws.String("FieldValue"), FacetEnabled: aws.Bool(true), ReturnEnabled: aws.Bool(true), SearchEnabled: aws.Bool(true), SortEnabled: aws.Bool(true), SourceField: aws.String("FieldName"), }, DoubleArrayOptions: &cloudsearch.DoubleArrayOptions{ DefaultValue: aws.Float64(1.0), FacetEnabled: aws.Bool(true), ReturnEnabled: aws.Bool(true), SearchEnabled: aws.Bool(true), SourceFields: aws.String("FieldNameCommaList"), }, DoubleOptions: &cloudsearch.DoubleOptions{ DefaultValue: aws.Float64(1.0), FacetEnabled: aws.Bool(true), ReturnEnabled: aws.Bool(true), SearchEnabled: aws.Bool(true), SortEnabled: aws.Bool(true), SourceField: aws.String("FieldName"), }, IntArrayOptions: &cloudsearch.IntArrayOptions{ DefaultValue: aws.Int64(1), FacetEnabled: aws.Bool(true), ReturnEnabled: aws.Bool(true), SearchEnabled: aws.Bool(true), SourceFields: aws.String("FieldNameCommaList"), }, IntOptions: &cloudsearch.IntOptions{ DefaultValue: aws.Int64(1), FacetEnabled: aws.Bool(true), ReturnEnabled: aws.Bool(true), SearchEnabled: aws.Bool(true), SortEnabled: aws.Bool(true), SourceField: aws.String("FieldName"), }, LatLonOptions: &cloudsearch.LatLonOptions{ DefaultValue: aws.String("FieldValue"), FacetEnabled: aws.Bool(true), ReturnEnabled: aws.Bool(true), SearchEnabled: aws.Bool(true), SortEnabled: aws.Bool(true), SourceField: aws.String("FieldName"), }, LiteralArrayOptions: &cloudsearch.LiteralArrayOptions{ DefaultValue: aws.String("FieldValue"), FacetEnabled: aws.Bool(true), ReturnEnabled: aws.Bool(true), SearchEnabled: aws.Bool(true), SourceFields: aws.String("FieldNameCommaList"), }, LiteralOptions: &cloudsearch.LiteralOptions{ DefaultValue: aws.String("FieldValue"), FacetEnabled: aws.Bool(true), ReturnEnabled: aws.Bool(true), SearchEnabled: aws.Bool(true), SortEnabled: aws.Bool(true), SourceField: aws.String("FieldName"), }, TextArrayOptions: &cloudsearch.TextArrayOptions{ AnalysisScheme: aws.String("Word"), DefaultValue: aws.String("FieldValue"), HighlightEnabled: aws.Bool(true), ReturnEnabled: aws.Bool(true), SourceFields: aws.String("FieldNameCommaList"), }, TextOptions: &cloudsearch.TextOptions{ AnalysisScheme: aws.String("Word"), DefaultValue: aws.String("FieldValue"), HighlightEnabled: aws.Bool(true), ReturnEnabled: aws.Bool(true), SortEnabled: aws.Bool(true), SourceField: aws.String("FieldName"), }, }, } resp, err := svc.DefineIndexField(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_DefineSuggester() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.DefineSuggesterInput{ DomainName: aws.String("DomainName"), // Required Suggester: &cloudsearch.Suggester{ // Required DocumentSuggesterOptions: &cloudsearch.DocumentSuggesterOptions{ // Required SourceField: aws.String("FieldName"), // Required FuzzyMatching: aws.String("SuggesterFuzzyMatching"), SortExpression: aws.String("String"), }, SuggesterName: aws.String("StandardName"), // Required }, } resp, err := svc.DefineSuggester(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_DeleteAnalysisScheme() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.DeleteAnalysisSchemeInput{ AnalysisSchemeName: aws.String("StandardName"), // Required DomainName: aws.String("DomainName"), // Required } resp, err := svc.DeleteAnalysisScheme(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_DeleteDomain() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.DeleteDomainInput{ DomainName: aws.String("DomainName"), // Required } resp, err := svc.DeleteDomain(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_DeleteExpression() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.DeleteExpressionInput{ DomainName: aws.String("DomainName"), // Required ExpressionName: aws.String("StandardName"), // Required } resp, err := svc.DeleteExpression(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_DeleteIndexField() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.DeleteIndexFieldInput{ DomainName: aws.String("DomainName"), // Required IndexFieldName: aws.String("DynamicFieldName"), // Required } resp, err := svc.DeleteIndexField(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_DeleteSuggester() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.DeleteSuggesterInput{ DomainName: aws.String("DomainName"), // Required SuggesterName: aws.String("StandardName"), // Required } resp, err := svc.DeleteSuggester(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_DescribeAnalysisSchemes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.DescribeAnalysisSchemesInput{ DomainName: aws.String("DomainName"), // Required AnalysisSchemeNames: []*string{ aws.String("StandardName"), // Required // More values... }, Deployed: aws.Bool(true), } resp, err := svc.DescribeAnalysisSchemes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_DescribeAvailabilityOptions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.DescribeAvailabilityOptionsInput{ DomainName: aws.String("DomainName"), // Required Deployed: aws.Bool(true), } resp, err := svc.DescribeAvailabilityOptions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_DescribeDomains() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.DescribeDomainsInput{ DomainNames: []*string{ aws.String("DomainName"), // Required // More values... }, } resp, err := svc.DescribeDomains(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_DescribeExpressions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.DescribeExpressionsInput{ DomainName: aws.String("DomainName"), // Required Deployed: aws.Bool(true), ExpressionNames: []*string{ aws.String("StandardName"), // Required // More values... }, } resp, err := svc.DescribeExpressions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_DescribeIndexFields() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.DescribeIndexFieldsInput{ DomainName: aws.String("DomainName"), // Required Deployed: aws.Bool(true), FieldNames: []*string{ aws.String("DynamicFieldName"), // Required // More values... }, } resp, err := svc.DescribeIndexFields(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_DescribeScalingParameters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.DescribeScalingParametersInput{ DomainName: aws.String("DomainName"), // Required } resp, err := svc.DescribeScalingParameters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_DescribeServiceAccessPolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.DescribeServiceAccessPoliciesInput{ DomainName: aws.String("DomainName"), // Required Deployed: aws.Bool(true), } resp, err := svc.DescribeServiceAccessPolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_DescribeSuggesters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.DescribeSuggestersInput{ DomainName: aws.String("DomainName"), // Required Deployed: aws.Bool(true), SuggesterNames: []*string{ aws.String("StandardName"), // Required // More values... }, } resp, err := svc.DescribeSuggesters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_IndexDocuments() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.IndexDocumentsInput{ DomainName: aws.String("DomainName"), // Required } resp, err := svc.IndexDocuments(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_ListDomainNames() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) var params *cloudsearch.ListDomainNamesInput resp, err := svc.ListDomainNames(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_UpdateAvailabilityOptions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.UpdateAvailabilityOptionsInput{ DomainName: aws.String("DomainName"), // Required MultiAZ: aws.Bool(true), // Required } resp, err := svc.UpdateAvailabilityOptions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_UpdateScalingParameters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.UpdateScalingParametersInput{ DomainName: aws.String("DomainName"), // Required ScalingParameters: &cloudsearch.ScalingParameters{ // Required DesiredInstanceType: aws.String("PartitionInstanceType"), DesiredPartitionCount: aws.Int64(1), DesiredReplicationCount: aws.Int64(1), }, } resp, err := svc.UpdateScalingParameters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearch_UpdateServiceAccessPolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearch.New(sess) params := &cloudsearch.UpdateServiceAccessPoliciesInput{ AccessPolicies: aws.String("PolicyDocument"), // Required DomainName: aws.String("DomainName"), // Required } resp, err := svc.UpdateServiceAccessPolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/cloudsearch/service.go000066400000000000000000000063651300374646400215200ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudsearch import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/query" ) // You use the Amazon CloudSearch configuration service to create, configure, // and manage search domains. Configuration service requests are submitted using // the AWS Query protocol. AWS Query requests are HTTP or HTTPS requests submitted // via HTTP GET or POST with a query parameter named Action. // // The endpoint for configuration service requests is region-specific: cloudsearch.region.amazonaws.com. // For example, cloudsearch.us-east-1.amazonaws.com. For a current list of supported // regions and endpoints, see Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html#cloudsearch_region). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type CloudSearch struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "cloudsearch" // New creates a new instance of the CloudSearch client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a CloudSearch client from just a session. // svc := cloudsearch.New(mySession) // // // Create a CloudSearch client with additional configuration // svc := cloudsearch.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *CloudSearch { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *CloudSearch { svc := &CloudSearch{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2013-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a CloudSearch operation and runs any // custom request initialization. func (c *CloudSearch) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/cloudsearchdomain/000077500000000000000000000000001300374646400207075ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudsearchdomain/api.go000066400000000000000000001270641300374646400220210ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cloudsearchdomain provides a client for Amazon CloudSearch Domain. package cloudsearchdomain import ( "io" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opSearch = "Search" // SearchRequest generates a "aws/request.Request" representing the // client's request for the Search operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See Search for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the Search method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SearchRequest method. // req, resp := client.SearchRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearchDomain) SearchRequest(input *SearchInput) (req *request.Request, output *SearchOutput) { op := &request.Operation{ Name: opSearch, HTTPMethod: "GET", HTTPPath: "/2013-01-01/search?format=sdk&pretty=true", } if input == nil { input = &SearchInput{} } req = c.newRequest(op, input, output) output = &SearchOutput{} req.Data = output return } // Search API operation for Amazon CloudSearch Domain. // // Retrieves a list of documents that match the specified search criteria. How // you specify the search criteria depends on which query parser you use. Amazon // CloudSearch supports four query parsers: // // * simple: search all text and text-array fields for the specified string. // Search for phrases, individual terms, and prefixes. // * structured: search specific fields, construct compound queries using // Boolean operators, and use advanced features such as term boosting and // proximity searching. // * lucene: specify search criteria using the Apache Lucene query parser // syntax. // * dismax: specify search criteria using the simplified subset of the Apache // Lucene query parser syntax defined by the DisMax query parser. // For more information, see Searching Your Data (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching.html) // in the Amazon CloudSearch Developer Guide. // // The endpoint for submitting Search requests is domain-specific. You submit // search requests to a domain's search endpoint. To get the search endpoint // for your domain, use the Amazon CloudSearch configuration service DescribeDomains // action. A domain's endpoints are also displayed on the domain dashboard in // the Amazon CloudSearch console. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch Domain's // API operation Search for usage and error information. // // Returned Error Codes: // * SearchException // Information about any problems encountered while processing a search request. // func (c *CloudSearchDomain) Search(input *SearchInput) (*SearchOutput, error) { req, out := c.SearchRequest(input) err := req.Send() return out, err } const opSuggest = "Suggest" // SuggestRequest generates a "aws/request.Request" representing the // client's request for the Suggest operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See Suggest for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the Suggest method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SuggestRequest method. // req, resp := client.SuggestRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearchDomain) SuggestRequest(input *SuggestInput) (req *request.Request, output *SuggestOutput) { op := &request.Operation{ Name: opSuggest, HTTPMethod: "GET", HTTPPath: "/2013-01-01/suggest?format=sdk&pretty=true", } if input == nil { input = &SuggestInput{} } req = c.newRequest(op, input, output) output = &SuggestOutput{} req.Data = output return } // Suggest API operation for Amazon CloudSearch Domain. // // Retrieves autocomplete suggestions for a partial query string. You can use // suggestions enable you to display likely matches before users finish typing. // In Amazon CloudSearch, suggestions are based on the contents of a particular // text field. When you request suggestions, Amazon CloudSearch finds all of // the documents whose values in the suggester field start with the specified // query string. The beginning of the field must match the query string to be // considered a match. // // For more information about configuring suggesters and retrieving suggestions, // see Getting Suggestions (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/getting-suggestions.html) // in the Amazon CloudSearch Developer Guide. // // The endpoint for submitting Suggest requests is domain-specific. You submit // suggest requests to a domain's search endpoint. To get the search endpoint // for your domain, use the Amazon CloudSearch configuration service DescribeDomains // action. A domain's endpoints are also displayed on the domain dashboard in // the Amazon CloudSearch console. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch Domain's // API operation Suggest for usage and error information. // // Returned Error Codes: // * SearchException // Information about any problems encountered while processing a search request. // func (c *CloudSearchDomain) Suggest(input *SuggestInput) (*SuggestOutput, error) { req, out := c.SuggestRequest(input) err := req.Send() return out, err } const opUploadDocuments = "UploadDocuments" // UploadDocumentsRequest generates a "aws/request.Request" representing the // client's request for the UploadDocuments operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UploadDocuments for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UploadDocuments method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UploadDocumentsRequest method. // req, resp := client.UploadDocumentsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudSearchDomain) UploadDocumentsRequest(input *UploadDocumentsInput) (req *request.Request, output *UploadDocumentsOutput) { op := &request.Operation{ Name: opUploadDocuments, HTTPMethod: "POST", HTTPPath: "/2013-01-01/documents/batch?format=sdk", } if input == nil { input = &UploadDocumentsInput{} } req = c.newRequest(op, input, output) output = &UploadDocumentsOutput{} req.Data = output return } // UploadDocuments API operation for Amazon CloudSearch Domain. // // Posts a batch of documents to a search domain for indexing. A document batch // is a collection of add and delete operations that represent the documents // you want to add, update, or delete from your domain. Batches can be described // in either JSON or XML. Each item that you want Amazon CloudSearch to return // as a search result (such as a product) is represented as a document. Every // document has a unique ID and one or more fields that contain the data that // you want to search and return in results. Individual documents cannot contain // more than 1 MB of data. The entire batch cannot exceed 5 MB. To get the best // possible upload performance, group add and delete operations in batches that // are close the 5 MB limit. Submitting a large volume of single-document batches // can overload a domain's document service. // // The endpoint for submitting UploadDocuments requests is domain-specific. // To get the document endpoint for your domain, use the Amazon CloudSearch // configuration service DescribeDomains action. A domain's endpoints are also // displayed on the domain dashboard in the Amazon CloudSearch console. // // For more information about formatting your data for Amazon CloudSearch, see // Preparing Your Data (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/preparing-data.html) // in the Amazon CloudSearch Developer Guide. For more information about uploading // data for indexing, see Uploading Data (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/uploading-data.html) // in the Amazon CloudSearch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudSearch Domain's // API operation UploadDocuments for usage and error information. // // Returned Error Codes: // * DocumentServiceException // Information about any problems encountered while processing an upload request. // func (c *CloudSearchDomain) UploadDocuments(input *UploadDocumentsInput) (*UploadDocumentsOutput, error) { req, out := c.UploadDocumentsRequest(input) err := req.Send() return out, err } // A container for facet information. type Bucket struct { _ struct{} `type:"structure"` // The number of hits that contain the facet value in the specified facet field. Count *int64 `locationName:"count" type:"long"` // The facet value being counted. Value *string `locationName:"value" type:"string"` } // String returns the string representation func (s Bucket) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Bucket) GoString() string { return s.String() } // A container for the calculated facet values and counts. type BucketInfo struct { _ struct{} `type:"structure"` // A list of the calculated facet values and counts. Buckets []*Bucket `locationName:"buckets" type:"list"` } // String returns the string representation func (s BucketInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BucketInfo) GoString() string { return s.String() } // A warning returned by the document service when an issue is discovered while // processing an upload request. type DocumentServiceWarning struct { _ struct{} `type:"structure"` // The description for a warning returned by the document service. Message *string `locationName:"message" type:"string"` } // String returns the string representation func (s DocumentServiceWarning) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DocumentServiceWarning) GoString() string { return s.String() } // The statistics for a field calculated in the request. type FieldStats struct { _ struct{} `type:"structure"` // The number of documents that contain a value in the specified field in the // result set. Count *int64 `locationName:"count" type:"long"` // The maximum value found in the specified field in the result set. // // If the field is numeric (int, int-array, double, or double-array), max is // the string representation of a double-precision 64-bit floating point value. // If the field is date or date-array, max is the string representation of a // date with the format specified in IETF RFC3339 (http://tools.ietf.org/html/rfc3339): // yyyy-mm-ddTHH:mm:ss.SSSZ. Max *string `locationName:"max" type:"string"` // The average of the values found in the specified field in the result set. // // If the field is numeric (int, int-array, double, or double-array), mean is // the string representation of a double-precision 64-bit floating point value. // If the field is date or date-array, mean is the string representation of // a date with the format specified in IETF RFC3339 (http://tools.ietf.org/html/rfc3339): // yyyy-mm-ddTHH:mm:ss.SSSZ. Mean *string `locationName:"mean" type:"string"` // The minimum value found in the specified field in the result set. // // If the field is numeric (int, int-array, double, or double-array), min is // the string representation of a double-precision 64-bit floating point value. // If the field is date or date-array, min is the string representation of a // date with the format specified in IETF RFC3339 (http://tools.ietf.org/html/rfc3339): // yyyy-mm-ddTHH:mm:ss.SSSZ. Min *string `locationName:"min" type:"string"` // The number of documents that do not contain a value in the specified field // in the result set. Missing *int64 `locationName:"missing" type:"long"` // The standard deviation of the values in the specified field in the result // set. Stddev *float64 `locationName:"stddev" type:"double"` // The sum of the field values across the documents in the result set. null // for date fields. Sum *float64 `locationName:"sum" type:"double"` // The sum of all field values in the result set squared. SumOfSquares *float64 `locationName:"sumOfSquares" type:"double"` } // String returns the string representation func (s FieldStats) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FieldStats) GoString() string { return s.String() } // Information about a document that matches the search request. type Hit struct { _ struct{} `type:"structure"` // The expressions returned from a document that matches the search request. Exprs map[string]*string `locationName:"exprs" type:"map"` // The fields returned from a document that matches the search request. Fields map[string][]*string `locationName:"fields" type:"map"` // The highlights returned from a document that matches the search request. Highlights map[string]*string `locationName:"highlights" type:"map"` // The document ID of a document that matches the search request. Id *string `locationName:"id" type:"string"` } // String returns the string representation func (s Hit) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Hit) GoString() string { return s.String() } // The collection of documents that match the search request. type Hits struct { _ struct{} `type:"structure"` // A cursor that can be used to retrieve the next set of matching documents // when you want to page through a large result set. Cursor *string `locationName:"cursor" type:"string"` // The total number of documents that match the search request. Found *int64 `locationName:"found" type:"long"` // A document that matches the search request. Hit []*Hit `locationName:"hit" type:"list"` // The index of the first matching document. Start *int64 `locationName:"start" type:"long"` } // String returns the string representation func (s Hits) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Hits) GoString() string { return s.String() } // Container for the parameters to the Search request. type SearchInput struct { _ struct{} `type:"structure"` // Retrieves a cursor value you can use to page through large result sets. Use // the size parameter to control the number of hits to include in each response. // You can specify either the cursor or start parameter in a request; they are // mutually exclusive. To get the first cursor, set the cursor value to initial. // In subsequent requests, specify the cursor value returned in the hits section // of the response. // // For more information, see Paginating Results (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/paginating-results.html) // in the Amazon CloudSearch Developer Guide. Cursor *string `location:"querystring" locationName:"cursor" type:"string"` // Defines one or more numeric expressions that can be used to sort results // or specify search or filter criteria. You can also specify expressions as // return fields. // // You specify the expressions in JSON using the form {"EXPRESSIONNAME":"EXPRESSION"}. // You can define and use multiple expressions in a search request. For example: // // {"expression1":"_score*rating", "expression2":"(1/rank)*year"} // // For information about the variables, operators, and functions you can use // in expressions, see Writing Expressions (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-expressions.html#writing-expressions) // in the Amazon CloudSearch Developer Guide. Expr *string `location:"querystring" locationName:"expr" type:"string"` // Specifies one or more fields for which to get facet information, and options // that control how the facet information is returned. Each specified field // must be facet-enabled in the domain configuration. The fields and options // are specified in JSON using the form {"FIELD":{"OPTION":VALUE,"OPTION:"STRING"},"FIELD":{"OPTION":VALUE,"OPTION":"STRING"}}. // // You can specify the following faceting options: // // * buckets specifies an array of the facet values or ranges to count. Ranges // are specified using the same syntax that you use to search for a range // of values. For more information, see Searching for a Range of Values // (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-ranges.html) // in the Amazon CloudSearch Developer Guide. Buckets are returned in the // order they are specified in the request. The sort and size options are // not valid if you specify buckets. // // * size specifies the maximum number of facets to include in the results. // By default, Amazon CloudSearch returns counts for the top 10. The size // parameter is only valid when you specify the sort option; it cannot be // used in conjunction with buckets. // // * sort specifies how you want to sort the facets in the results: bucket // or count. Specify bucket to sort alphabetically or numerically by facet // value (in ascending order). Specify count to sort by the facet counts // computed for each facet value (in descending order). To retrieve facet // counts for particular values or ranges of values, use the buckets option // instead of sort. // // If no facet options are specified, facet counts are computed for all field // values, the facets are sorted by facet count, and the top 10 facets are returned // in the results. // // To count particular buckets of values, use the buckets option. For example, // the following request uses the buckets option to calculate and return facet // counts by decade. // // {"year":{"buckets":["[1970,1979]","[1980,1989]","[1990,1999]","[2000,2009]","[2010,}"]}} // // To sort facets by facet count, use the count option. For example, the following // request sets the sort option to count to sort the facet values by facet count, // with the facet values that have the most matching documents listed first. // Setting the size option to 3 returns only the top three facet values. // // {"year":{"sort":"count","size":3}} // // To sort the facets by value, use the bucket option. For example, the following // request sets the sort option to bucket to sort the facet values numerically // by year, with earliest year listed first. // // {"year":{"sort":"bucket"}} // // For more information, see Getting and Using Facet Information (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/faceting.html) // in the Amazon CloudSearch Developer Guide. Facet *string `location:"querystring" locationName:"facet" type:"string"` // Specifies a structured query that filters the results of a search without // affecting how the results are scored and sorted. You use filterQuery in conjunction // with the query parameter to filter the documents that match the constraints // specified in the query parameter. Specifying a filter controls only which // matching documents are included in the results, it has no effect on how they // are scored and sorted. The filterQuery parameter supports the full structured // query syntax. // // For more information about using filters, see Filtering Matching Documents // (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/filtering-results.html) // in the Amazon CloudSearch Developer Guide. FilterQuery *string `location:"querystring" locationName:"fq" type:"string"` // Retrieves highlights for matches in the specified text or text-array fields. // Each specified field must be highlight enabled in the domain configuration. // The fields and options are specified in JSON using the form {"FIELD":{"OPTION":VALUE,"OPTION:"STRING"},"FIELD":{"OPTION":VALUE,"OPTION":"STRING"}}. // // You can specify the following highlight options: // // * format: specifies the format of the data in the text field: text or // html. When data is returned as HTML, all non-alphanumeric characters are // encoded. The default is html. // * max_phrases: specifies the maximum number of occurrences of the search // term(s) you want to highlight. By default, the first occurrence is highlighted. // // * pre_tag: specifies the string to prepend to an occurrence of a search // term. The default for HTML highlights is . The default for text // highlights is *. // * post_tag: specifies the string to append to an occurrence of a search // term. The default for HTML highlights is . The default for // text highlights is *. // If no highlight options are specified for a field, the returned field text // is treated as HTML and the first match is highlighted with emphasis tags: // search-term. // // For example, the following request retrieves highlights for the actors and // title fields. // // { "actors": {}, "title": {"format": "text","max_phrases": 2,"pre_tag": "","post_tag": // ""} } Highlight *string `location:"querystring" locationName:"highlight" type:"string"` // Enables partial results to be returned if one or more index partitions are // unavailable. When your search index is partitioned across multiple search // instances, by default Amazon CloudSearch only returns results if every partition // can be queried. This means that the failure of a single search instance can // result in 5xx (internal server) errors. When you enable partial results, // Amazon CloudSearch returns whatever results are available and includes the // percentage of documents searched in the search results (percent-searched). // This enables you to more gracefully degrade your users' search experience. // For example, rather than displaying no results, you could display the partial // results and a message indicating that the results might be incomplete due // to a temporary system outage. Partial *bool `location:"querystring" locationName:"partial" type:"boolean"` // Specifies the search criteria for the request. How you specify the search // criteria depends on the query parser used for the request and the parser // options specified in the queryOptions parameter. By default, the simple query // parser is used to process requests. To use the structured, lucene, or dismax // query parser, you must also specify the queryParser parameter. // // For more information about specifying search criteria, see Searching Your // Data (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching.html) // in the Amazon CloudSearch Developer Guide. // // Query is a required field Query *string `location:"querystring" locationName:"q" type:"string" required:"true"` // Configures options for the query parser specified in the queryParser parameter. // You specify the options in JSON using the following form {"OPTION1":"VALUE1","OPTION2":VALUE2"..."OPTIONN":"VALUEN"}. // // The options you can configure vary according to which parser you use: // // * defaultOperator: The default operator used to combine individual terms // in the search string. For example: defaultOperator: 'or'. For the dismax // parser, you specify a percentage that represents the percentage of terms // in the search string (rounded down) that must match, rather than a default // operator. A value of 0% is the equivalent to OR, and a value of 100% is // equivalent to AND. The percentage must be specified as a value in the // range 0-100 followed by the percent (%) symbol. For example, defaultOperator: // 50%. Valid values: and, or, a percentage in the range 0%-100% (dismax). // Default: and (simple, structured, lucene) or 100 (dismax). Valid for: // simple, structured, lucene, and dismax. // * fields: An array of the fields to search when no fields are specified // in a search. If no fields are specified in a search and this option is // not specified, all text and text-array fields are searched. You can specify // a weight for each field to control the relative importance of each field // when Amazon CloudSearch calculates relevance scores. To specify a field // weight, append a caret (^) symbol and the weight to the field name. For // example, to boost the importance of the title field over the description // field you could specify: "fields":["title^5","description"]. Valid values: // The name of any configured field and an optional numeric value greater // than zero. Default: All text and text-array fields. Valid for: simple, // structured, lucene, and dismax. // * operators: An array of the operators or special characters you want // to disable for the simple query parser. If you disable the and, or, or // not operators, the corresponding operators (+, |, -) have no special meaning // and are dropped from the search string. Similarly, disabling prefix disables // the wildcard operator (*) and disabling phrase disables the ability to // search for phrases by enclosing phrases in double quotes. Disabling precedence // disables the ability to control order of precedence using parentheses. // Disabling near disables the ability to use the ~ operator to perform a // sloppy phrase search. Disabling the fuzzy operator disables the ability // to use the ~ operator to perform a fuzzy search. escape disables the ability // to use a backslash (\) to escape special characters within the search // string. Disabling whitespace is an advanced option that prevents the parser // from tokenizing on whitespace, which can be useful for Vietnamese. (It // prevents Vietnamese words from being split incorrectly.) For example, // you could disable all operators other than the phrase operator to support // just simple term and phrase queries: "operators":["and","not","or", "prefix"]. // Valid values: and, escape, fuzzy, near, not, or, phrase, precedence, prefix, // whitespace. Default: All operators and special characters are enabled. // Valid for: simple. // * phraseFields: An array of the text or text-array fields you want to // use for phrase searches. When the terms in the search string appear in // close proximity within a field, the field scores higher. You can specify // a weight for each field to boost that score. The phraseSlop option controls // how much the matches can deviate from the search string and still be boosted. // To specify a field weight, append a caret (^) symbol and the weight to // the field name. For example, to boost phrase matches in the title field // over the abstract field, you could specify: "phraseFields":["title^3", // "plot"] Valid values: The name of any text or text-array field and an // optional numeric value greater than zero. Default: No fields. If you don't // specify any fields with phraseFields, proximity scoring is disabled even // if phraseSlop is specified. Valid for: dismax. // * phraseSlop: An integer value that specifies how much matches can deviate // from the search phrase and still be boosted according to the weights specified // in the phraseFields option; for example, phraseSlop: 2. You must also // specify phraseFields to enable proximity scoring. Valid values: positive // integers. Default: 0. Valid for: dismax. // * explicitPhraseSlop: An integer value that specifies how much a match // can deviate from the search phrase when the phrase is enclosed in double // quotes in the search string. (Phrases that exceed this proximity distance // are not considered a match.) For example, to specify a slop of three for // dismax phrase queries, you would specify "explicitPhraseSlop":3. Valid // values: positive integers. Default: 0. Valid for: dismax. // * tieBreaker: When a term in the search string is found in a document's // field, a score is calculated for that field based on how common the word // is in that field compared to other documents. If the term occurs in multiple // fields within a document, by default only the highest scoring field contributes // to the document's overall score. You can specify a tieBreaker value to // enable the matches in lower-scoring fields to contribute to the document's // score. That way, if two documents have the same max field score for a // particular term, the score for the document that has matches in more fields // will be higher. The formula for calculating the score with a tieBreaker // is (max field score) + (tieBreaker) * (sum of the scores for the rest // of the matching fields). Set tieBreaker to 0 to disregard all but the // highest scoring field (pure max): "tieBreaker":0. Set to 1 to sum the // scores from all fields (pure sum): "tieBreaker":1. Valid values: 0.0 to // 1.0. Default: 0.0. Valid for: dismax. QueryOptions *string `location:"querystring" locationName:"q.options" type:"string"` // Specifies which query parser to use to process the request. If queryParser // is not specified, Amazon CloudSearch uses the simple query parser. // // Amazon CloudSearch supports four query parsers: // // * simple: perform simple searches of text and text-array fields. By default, // the simple query parser searches all text and text-array fields. You can // specify which fields to search by with the queryOptions parameter. If // you prefix a search term with a plus sign (+) documents must contain the // term to be considered a match. (This is the default, unless you configure // the default operator with the queryOptions parameter.) You can use the // - (NOT), | (OR), and * (wildcard) operators to exclude particular terms, // find results that match any of the specified terms, or search for a prefix. // To search for a phrase rather than individual terms, enclose the phrase // in double quotes. For more information, see Searching for Text (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-text.html) // in the Amazon CloudSearch Developer Guide. // * structured: perform advanced searches by combining multiple expressions // to define the search criteria. You can also search within particular fields, // search for values and ranges of values, and use advanced options such // as term boosting, matchall, and near. For more information, see Constructing // Compound Queries (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/searching-compound-queries.html) // in the Amazon CloudSearch Developer Guide. // * lucene: search using the Apache Lucene query parser syntax. For more // information, see Apache Lucene Query Parser Syntax (http://lucene.apache.org/core/4_6_0/queryparser/org/apache/lucene/queryparser/classic/package-summary.html#package_description). // // * dismax: search using the simplified subset of the Apache Lucene query // parser syntax defined by the DisMax query parser. For more information, // see DisMax Query Parser Syntax (http://wiki.apache.org/solr/DisMaxQParserPlugin#Query_Syntax). // QueryParser *string `location:"querystring" locationName:"q.parser" type:"string" enum:"QueryParser"` // Specifies the field and expression values to include in the response. Multiple // fields or expressions are specified as a comma-separated list. By default, // a search response includes all return enabled fields (_all_fields). To return // only the document IDs for the matching documents, specify _no_fields. To // retrieve the relevance score calculated for each document, specify _score. Return *string `location:"querystring" locationName:"return" type:"string"` // Specifies the maximum number of search hits to include in the response. Size *int64 `location:"querystring" locationName:"size" type:"long"` // Specifies the fields or custom expressions to use to sort the search results. // Multiple fields or expressions are specified as a comma-separated list. You // must specify the sort direction (asc or desc) for each field; for example, // year desc,title asc. To use a field to sort results, the field must be sort-enabled // in the domain configuration. Array type fields cannot be used for sorting. // If no sort parameter is specified, results are sorted by their default relevance // scores in descending order: _score desc. You can also sort by document ID // (_id asc) and version (_version desc). // // For more information, see Sorting Results (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/sorting-results.html) // in the Amazon CloudSearch Developer Guide. Sort *string `location:"querystring" locationName:"sort" type:"string"` // Specifies the offset of the first search hit you want to return. Note that // the result set is zero-based; the first result is at index 0. You can specify // either the start or cursor parameter in a request, they are mutually exclusive. // // For more information, see Paginating Results (http://docs.aws.amazon.com/cloudsearch/latest/developerguide/paginating-results.html) // in the Amazon CloudSearch Developer Guide. Start *int64 `location:"querystring" locationName:"start" type:"long"` // Specifies one or more fields for which to get statistics information. Each // specified field must be facet-enabled in the domain configuration. The fields // are specified in JSON using the form: // // {"FIELD-A":{},"FIELD-B":{}}There are currently no options supported for statistics. Stats *string `location:"querystring" locationName:"stats" type:"string"` } // String returns the string representation func (s SearchInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SearchInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SearchInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SearchInput"} if s.Query == nil { invalidParams.Add(request.NewErrParamRequired("Query")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a Search request. Contains the documents that match the specified // search criteria and any requested fields, highlights, and facet information. type SearchOutput struct { _ struct{} `type:"structure"` // The requested facet information. Facets map[string]*BucketInfo `locationName:"facets" type:"map"` // The documents that match the search criteria. Hits *Hits `locationName:"hits" type:"structure"` // The requested field statistics information. Stats map[string]*FieldStats `locationName:"stats" type:"map"` // The status information returned for the search request. Status *SearchStatus `locationName:"status" type:"structure"` } // String returns the string representation func (s SearchOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SearchOutput) GoString() string { return s.String() } // Contains the resource id (rid) and the time it took to process the request // (timems). type SearchStatus struct { _ struct{} `type:"structure"` // The encrypted resource ID for the request. Rid *string `locationName:"rid" type:"string"` // How long it took to process the request, in milliseconds. Timems *int64 `locationName:"timems" type:"long"` } // String returns the string representation func (s SearchStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SearchStatus) GoString() string { return s.String() } // Container for the parameters to the Suggest request. type SuggestInput struct { _ struct{} `type:"structure"` // Specifies the string for which you want to get suggestions. // // Query is a required field Query *string `location:"querystring" locationName:"q" type:"string" required:"true"` // Specifies the maximum number of suggestions to return. Size *int64 `location:"querystring" locationName:"size" type:"long"` // Specifies the name of the suggester to use to find suggested matches. // // Suggester is a required field Suggester *string `location:"querystring" locationName:"suggester" type:"string" required:"true"` } // String returns the string representation func (s SuggestInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SuggestInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SuggestInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SuggestInput"} if s.Query == nil { invalidParams.Add(request.NewErrParamRequired("Query")) } if s.Suggester == nil { invalidParams.Add(request.NewErrParamRequired("Suggester")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for the suggestion information returned in a SuggestResponse. type SuggestModel struct { _ struct{} `type:"structure"` // The number of documents that were found to match the query string. Found *int64 `locationName:"found" type:"long"` // The query string specified in the suggest request. Query *string `locationName:"query" type:"string"` // The documents that match the query string. Suggestions []*SuggestionMatch `locationName:"suggestions" type:"list"` } // String returns the string representation func (s SuggestModel) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SuggestModel) GoString() string { return s.String() } // Contains the response to a Suggest request. type SuggestOutput struct { _ struct{} `type:"structure"` // The status of a SuggestRequest. Contains the resource ID (rid) and how long // it took to process the request (timems). Status *SuggestStatus `locationName:"status" type:"structure"` // Container for the matching search suggestion information. Suggest *SuggestModel `locationName:"suggest" type:"structure"` } // String returns the string representation func (s SuggestOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SuggestOutput) GoString() string { return s.String() } // Contains the resource id (rid) and the time it took to process the request // (timems). type SuggestStatus struct { _ struct{} `type:"structure"` // The encrypted resource ID for the request. Rid *string `locationName:"rid" type:"string"` // How long it took to process the request, in milliseconds. Timems *int64 `locationName:"timems" type:"long"` } // String returns the string representation func (s SuggestStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SuggestStatus) GoString() string { return s.String() } // An autocomplete suggestion that matches the query string specified in a SuggestRequest. type SuggestionMatch struct { _ struct{} `type:"structure"` // The document ID of the suggested document. Id *string `locationName:"id" type:"string"` // The relevance score of a suggested match. Score *int64 `locationName:"score" type:"long"` // The string that matches the query string specified in the SuggestRequest. Suggestion *string `locationName:"suggestion" type:"string"` } // String returns the string representation func (s SuggestionMatch) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SuggestionMatch) GoString() string { return s.String() } // Container for the parameters to the UploadDocuments request. type UploadDocumentsInput struct { _ struct{} `type:"structure" payload:"Documents"` // The format of the batch you are uploading. Amazon CloudSearch supports two // document batch formats: // // * application/json // * application/xml // // ContentType is a required field ContentType *string `location:"header" locationName:"Content-Type" type:"string" required:"true" enum:"ContentType"` // A batch of documents formatted in JSON or HTML. // // Documents is a required field Documents io.ReadSeeker `locationName:"documents" type:"blob" required:"true"` } // String returns the string representation func (s UploadDocumentsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UploadDocumentsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UploadDocumentsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UploadDocumentsInput"} if s.ContentType == nil { invalidParams.Add(request.NewErrParamRequired("ContentType")) } if s.Documents == nil { invalidParams.Add(request.NewErrParamRequired("Documents")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to an UploadDocuments request. type UploadDocumentsOutput struct { _ struct{} `type:"structure"` // The number of documents that were added to the search domain. Adds *int64 `locationName:"adds" type:"long"` // The number of documents that were deleted from the search domain. Deletes *int64 `locationName:"deletes" type:"long"` // The status of an UploadDocumentsRequest. Status *string `locationName:"status" type:"string"` // Any warnings returned by the document service about the documents being uploaded. Warnings []*DocumentServiceWarning `locationName:"warnings" type:"list"` } // String returns the string representation func (s UploadDocumentsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UploadDocumentsOutput) GoString() string { return s.String() } const ( // ContentTypeApplicationJson is a ContentType enum value ContentTypeApplicationJson = "application/json" // ContentTypeApplicationXml is a ContentType enum value ContentTypeApplicationXml = "application/xml" ) const ( // QueryParserSimple is a QueryParser enum value QueryParserSimple = "simple" // QueryParserStructured is a QueryParser enum value QueryParserStructured = "structured" // QueryParserLucene is a QueryParser enum value QueryParserLucene = "lucene" // QueryParserDismax is a QueryParser enum value QueryParserDismax = "dismax" ) aws-sdk-go-1.4.22/service/cloudsearchdomain/cloudsearchdomainiface/000077500000000000000000000000001300374646400253635ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudsearchdomain/cloudsearchdomainiface/interface.go000066400000000000000000000056141300374646400276600ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cloudsearchdomainiface provides an interface to enable mocking the Amazon CloudSearch Domain service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package cloudsearchdomainiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/cloudsearchdomain" ) // CloudSearchDomainAPI provides an interface to enable mocking the // cloudsearchdomain.CloudSearchDomain service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon CloudSearch Domain. // func myFunc(svc cloudsearchdomainiface.CloudSearchDomainAPI) bool { // // Make svc.Search request // } // // func main() { // sess := session.New() // svc := cloudsearchdomain.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockCloudSearchDomainClient struct { // cloudsearchdomainiface.CloudSearchDomainAPI // } // func (m *mockCloudSearchDomainClient) Search(input *cloudsearchdomain.SearchInput) (*cloudsearchdomain.SearchOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockCloudSearchDomainClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type CloudSearchDomainAPI interface { SearchRequest(*cloudsearchdomain.SearchInput) (*request.Request, *cloudsearchdomain.SearchOutput) Search(*cloudsearchdomain.SearchInput) (*cloudsearchdomain.SearchOutput, error) SuggestRequest(*cloudsearchdomain.SuggestInput) (*request.Request, *cloudsearchdomain.SuggestOutput) Suggest(*cloudsearchdomain.SuggestInput) (*cloudsearchdomain.SuggestOutput, error) UploadDocumentsRequest(*cloudsearchdomain.UploadDocumentsInput) (*request.Request, *cloudsearchdomain.UploadDocumentsOutput) UploadDocuments(*cloudsearchdomain.UploadDocumentsInput) (*cloudsearchdomain.UploadDocumentsOutput, error) } var _ CloudSearchDomainAPI = (*cloudsearchdomain.CloudSearchDomain)(nil) aws-sdk-go-1.4.22/service/cloudsearchdomain/customizations_test.go000066400000000000000000000025161300374646400253740ustar00rootroot00000000000000package cloudsearchdomain_test import ( "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/cloudsearchdomain" ) func TestRequireEndpointIfRegionProvided(t *testing.T) { svc := cloudsearchdomain.New(unit.Session, &aws.Config{ Region: aws.String("mock-region"), DisableParamValidation: aws.Bool(true), }) req, _ := svc.SearchRequest(nil) err := req.Build() assert.Equal(t, "", svc.Endpoint) assert.Error(t, err) assert.Equal(t, aws.ErrMissingEndpoint, err) } func TestRequireEndpointIfNoRegionProvided(t *testing.T) { svc := cloudsearchdomain.New(unit.Session, &aws.Config{ Region: aws.String(""), DisableParamValidation: aws.Bool(true), }) req, _ := svc.SearchRequest(nil) err := req.Build() assert.Equal(t, "", svc.Endpoint) assert.Error(t, err) assert.Equal(t, aws.ErrMissingEndpoint, err) } func TestRequireEndpointUsed(t *testing.T) { svc := cloudsearchdomain.New(unit.Session, &aws.Config{ Region: aws.String("mock-region"), DisableParamValidation: aws.Bool(true), Endpoint: aws.String("https://endpoint"), }) req, _ := svc.SearchRequest(nil) err := req.Build() assert.Equal(t, "https://endpoint", svc.Endpoint) assert.NoError(t, err) } aws-sdk-go-1.4.22/service/cloudsearchdomain/examples_test.go000066400000000000000000000047671300374646400241310ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudsearchdomain_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/cloudsearchdomain" ) var _ time.Duration var _ bytes.Buffer func ExampleCloudSearchDomain_Search() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearchdomain.New(sess) params := &cloudsearchdomain.SearchInput{ Query: aws.String("Query"), // Required Cursor: aws.String("Cursor"), Expr: aws.String("Expr"), Facet: aws.String("Facet"), FilterQuery: aws.String("FilterQuery"), Highlight: aws.String("Highlight"), Partial: aws.Bool(true), QueryOptions: aws.String("QueryOptions"), QueryParser: aws.String("QueryParser"), Return: aws.String("Return"), Size: aws.Int64(1), Sort: aws.String("Sort"), Start: aws.Int64(1), Stats: aws.String("Stat"), } resp, err := svc.Search(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearchDomain_Suggest() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearchdomain.New(sess) params := &cloudsearchdomain.SuggestInput{ Query: aws.String("Query"), // Required Suggester: aws.String("Suggester"), // Required Size: aws.Int64(1), } resp, err := svc.Suggest(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudSearchDomain_UploadDocuments() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudsearchdomain.New(sess) params := &cloudsearchdomain.UploadDocumentsInput{ ContentType: aws.String("ContentType"), // Required Documents: bytes.NewReader([]byte("PAYLOAD")), // Required } resp, err := svc.UploadDocuments(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/cloudsearchdomain/service.go000066400000000000000000000065601300374646400227050ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudsearchdomain import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) // You use the AmazonCloudSearch2013 API to upload documents to a search domain // and search those documents. // // The endpoints for submitting UploadDocuments, Search, and Suggest requests // are domain-specific. To get the endpoints for your domain, use the Amazon // CloudSearch configuration service DescribeDomains action. The domain endpoints // are also displayed on the domain dashboard in the Amazon CloudSearch console. // You submit suggest requests to the search endpoint. // // For more information, see the Amazon CloudSearch Developer Guide (http://docs.aws.amazon.com/cloudsearch/latest/developerguide). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type CloudSearchDomain struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "cloudsearchdomain" // New creates a new instance of the CloudSearchDomain client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a CloudSearchDomain client from just a session. // svc := cloudsearchdomain.New(mySession) // // // Create a CloudSearchDomain client with additional configuration // svc := cloudsearchdomain.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *CloudSearchDomain { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *CloudSearchDomain { svc := &CloudSearchDomain{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningName: "cloudsearch", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2013-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a CloudSearchDomain operation and runs any // custom request initialization. func (c *CloudSearchDomain) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/cloudtrail/000077500000000000000000000000001300374646400173655ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudtrail/api.go000066400000000000000000002507751300374646400205050ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cloudtrail provides a client for AWS CloudTrail. package cloudtrail import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opAddTags = "AddTags" // AddTagsRequest generates a "aws/request.Request" representing the // client's request for the AddTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddTagsRequest method. // req, resp := client.AddTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudTrail) AddTagsRequest(input *AddTagsInput) (req *request.Request, output *AddTagsOutput) { op := &request.Operation{ Name: opAddTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddTagsInput{} } req = c.newRequest(op, input, output) output = &AddTagsOutput{} req.Data = output return } // AddTags API operation for AWS CloudTrail. // // Adds one or more tags to a trail, up to a limit of 10. Tags must be unique // per trail. Overwrites an existing tag's value when a new value is specified // for an existing tag key. If you specify a key without a value, the tag will // be created with the specified key and a value of null. You can tag a trail // that applies to all regions only from the region in which the trail was created // (that is, from its home region). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudTrail's // API operation AddTags for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the specified resource is not found. // // * ARNInvalidException // This exception is thrown when an operation is called with an invalid trail // ARN. The format of a trail ARN is: // // arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail // // * ResourceTypeNotSupportedException // This exception is thrown when the specified resource type is not supported // by CloudTrail. // // * TagsLimitExceededException // The number of tags per trail has exceeded the permitted amount. Currently, // the limit is 10. // // * InvalidTrailNameException // This exception is thrown when the provided trail name is not valid. Trail // names must meet the following requirements: // // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores // (_), or dashes (-) // // * Start with a letter or number, and end with a letter or number // // * Be between 3 and 128 characters // // * Have no adjacent periods, underscores or dashes. Names like my-_namespace // and my--namespace are invalid. // // * Not be in IP address format (for example, 192.168.5.4) // // * InvalidTagParameterException // This exception is thrown when the key or value specified for the tag does // not match the regular expression ^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$. // // * UnsupportedOperationException // This exception is thrown when the requested operation is not supported. // // * OperationNotPermittedException // This exception is thrown when the requested operation is not permitted. // func (c *CloudTrail) AddTags(input *AddTagsInput) (*AddTagsOutput, error) { req, out := c.AddTagsRequest(input) err := req.Send() return out, err } const opCreateTrail = "CreateTrail" // CreateTrailRequest generates a "aws/request.Request" representing the // client's request for the CreateTrail operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateTrail for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateTrail method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateTrailRequest method. // req, resp := client.CreateTrailRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudTrail) CreateTrailRequest(input *CreateTrailInput) (req *request.Request, output *CreateTrailOutput) { op := &request.Operation{ Name: opCreateTrail, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateTrailInput{} } req = c.newRequest(op, input, output) output = &CreateTrailOutput{} req.Data = output return } // CreateTrail API operation for AWS CloudTrail. // // Creates a trail that specifies the settings for delivery of log data to an // Amazon S3 bucket. A maximum of five trails can exist in a region, irrespective // of the region in which they were created. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudTrail's // API operation CreateTrail for usage and error information. // // Returned Error Codes: // * MaximumNumberOfTrailsExceededException // This exception is thrown when the maximum number of trails is reached. // // * TrailAlreadyExistsException // This exception is thrown when the specified trail already exists. // // * S3BucketDoesNotExistException // This exception is thrown when the specified S3 bucket does not exist. // // * InsufficientS3BucketPolicyException // This exception is thrown when the policy on the S3 bucket is not sufficient. // // * InsufficientSnsTopicPolicyException // This exception is thrown when the policy on the SNS topic is not sufficient. // // * InsufficientEncryptionPolicyException // This exception is thrown when the policy on the S3 bucket or KMS key is not // sufficient. // // * InvalidS3BucketNameException // This exception is thrown when the provided S3 bucket name is not valid. // // * InvalidS3PrefixException // This exception is thrown when the provided S3 prefix is not valid. // // * InvalidSnsTopicNameException // This exception is thrown when the provided SNS topic name is not valid. // // * InvalidKmsKeyIdException // This exception is thrown when the KMS key ARN is invalid. // // * InvalidTrailNameException // This exception is thrown when the provided trail name is not valid. Trail // names must meet the following requirements: // // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores // (_), or dashes (-) // // * Start with a letter or number, and end with a letter or number // // * Be between 3 and 128 characters // // * Have no adjacent periods, underscores or dashes. Names like my-_namespace // and my--namespace are invalid. // // * Not be in IP address format (for example, 192.168.5.4) // // * TrailNotProvidedException // This exception is deprecated. // // * InvalidParameterCombinationException // This exception is thrown when the combination of parameters provided is not // valid. // // * KmsKeyNotFoundException // This exception is thrown when the KMS key does not exist, or when the S3 // bucket and the KMS key are not in the same region. // // * KmsKeyDisabledException // This exception is deprecated. // // * KmsException // This exception is thrown when there is an issue with the specified KMS key // and the trail can’t be updated. // // * InvalidCloudWatchLogsLogGroupArnException // This exception is thrown when the provided CloudWatch log group is not valid. // // * InvalidCloudWatchLogsRoleArnException // This exception is thrown when the provided role is not valid. // // * CloudWatchLogsDeliveryUnavailableException // Cannot set a CloudWatch Logs delivery for this region. // // * UnsupportedOperationException // This exception is thrown when the requested operation is not supported. // // * OperationNotPermittedException // This exception is thrown when the requested operation is not permitted. // func (c *CloudTrail) CreateTrail(input *CreateTrailInput) (*CreateTrailOutput, error) { req, out := c.CreateTrailRequest(input) err := req.Send() return out, err } const opDeleteTrail = "DeleteTrail" // DeleteTrailRequest generates a "aws/request.Request" representing the // client's request for the DeleteTrail operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteTrail for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteTrail method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteTrailRequest method. // req, resp := client.DeleteTrailRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudTrail) DeleteTrailRequest(input *DeleteTrailInput) (req *request.Request, output *DeleteTrailOutput) { op := &request.Operation{ Name: opDeleteTrail, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteTrailInput{} } req = c.newRequest(op, input, output) output = &DeleteTrailOutput{} req.Data = output return } // DeleteTrail API operation for AWS CloudTrail. // // Deletes a trail. This operation must be called from the region in which the // trail was created. DeleteTrail cannot be called on the shadow trails (replicated // trails in other regions) of a trail that is enabled in all regions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudTrail's // API operation DeleteTrail for usage and error information. // // Returned Error Codes: // * TrailNotFoundException // This exception is thrown when the trail with the given name is not found. // // * InvalidTrailNameException // This exception is thrown when the provided trail name is not valid. Trail // names must meet the following requirements: // // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores // (_), or dashes (-) // // * Start with a letter or number, and end with a letter or number // // * Be between 3 and 128 characters // // * Have no adjacent periods, underscores or dashes. Names like my-_namespace // and my--namespace are invalid. // // * Not be in IP address format (for example, 192.168.5.4) // // * InvalidHomeRegionException // This exception is thrown when an operation is called on a trail from a region // other than the region in which the trail was created. // func (c *CloudTrail) DeleteTrail(input *DeleteTrailInput) (*DeleteTrailOutput, error) { req, out := c.DeleteTrailRequest(input) err := req.Send() return out, err } const opDescribeTrails = "DescribeTrails" // DescribeTrailsRequest generates a "aws/request.Request" representing the // client's request for the DescribeTrails operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTrails for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTrails method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTrailsRequest method. // req, resp := client.DescribeTrailsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudTrail) DescribeTrailsRequest(input *DescribeTrailsInput) (req *request.Request, output *DescribeTrailsOutput) { op := &request.Operation{ Name: opDescribeTrails, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTrailsInput{} } req = c.newRequest(op, input, output) output = &DescribeTrailsOutput{} req.Data = output return } // DescribeTrails API operation for AWS CloudTrail. // // Retrieves settings for the trail associated with the current region for your // account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudTrail's // API operation DescribeTrails for usage and error information. // // Returned Error Codes: // * UnsupportedOperationException // This exception is thrown when the requested operation is not supported. // // * OperationNotPermittedException // This exception is thrown when the requested operation is not permitted. // func (c *CloudTrail) DescribeTrails(input *DescribeTrailsInput) (*DescribeTrailsOutput, error) { req, out := c.DescribeTrailsRequest(input) err := req.Send() return out, err } const opGetTrailStatus = "GetTrailStatus" // GetTrailStatusRequest generates a "aws/request.Request" representing the // client's request for the GetTrailStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetTrailStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetTrailStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetTrailStatusRequest method. // req, resp := client.GetTrailStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudTrail) GetTrailStatusRequest(input *GetTrailStatusInput) (req *request.Request, output *GetTrailStatusOutput) { op := &request.Operation{ Name: opGetTrailStatus, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetTrailStatusInput{} } req = c.newRequest(op, input, output) output = &GetTrailStatusOutput{} req.Data = output return } // GetTrailStatus API operation for AWS CloudTrail. // // Returns a JSON-formatted list of information about the specified trail. Fields // include information on delivery errors, Amazon SNS and Amazon S3 errors, // and start and stop logging times for each trail. This operation returns trail // status from a single region. To return trail status from all regions, you // must call the operation on each region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudTrail's // API operation GetTrailStatus for usage and error information. // // Returned Error Codes: // * TrailNotFoundException // This exception is thrown when the trail with the given name is not found. // // * InvalidTrailNameException // This exception is thrown when the provided trail name is not valid. Trail // names must meet the following requirements: // // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores // (_), or dashes (-) // // * Start with a letter or number, and end with a letter or number // // * Be between 3 and 128 characters // // * Have no adjacent periods, underscores or dashes. Names like my-_namespace // and my--namespace are invalid. // // * Not be in IP address format (for example, 192.168.5.4) // func (c *CloudTrail) GetTrailStatus(input *GetTrailStatusInput) (*GetTrailStatusOutput, error) { req, out := c.GetTrailStatusRequest(input) err := req.Send() return out, err } const opListPublicKeys = "ListPublicKeys" // ListPublicKeysRequest generates a "aws/request.Request" representing the // client's request for the ListPublicKeys operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListPublicKeys for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListPublicKeys method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListPublicKeysRequest method. // req, resp := client.ListPublicKeysRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudTrail) ListPublicKeysRequest(input *ListPublicKeysInput) (req *request.Request, output *ListPublicKeysOutput) { op := &request.Operation{ Name: opListPublicKeys, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListPublicKeysInput{} } req = c.newRequest(op, input, output) output = &ListPublicKeysOutput{} req.Data = output return } // ListPublicKeys API operation for AWS CloudTrail. // // Returns all public keys whose private keys were used to sign the digest files // within the specified time range. The public key is needed to validate digest // files that were signed with its corresponding private key. // // CloudTrail uses different private/public key pairs per region. Each digest // file is signed with a private key unique to its region. Therefore, when you // validate a digest file from a particular region, you must look in the same // region for its corresponding public key. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudTrail's // API operation ListPublicKeys for usage and error information. // // Returned Error Codes: // * InvalidTimeRangeException // Occurs if the timestamp values are invalid. Either the start time occurs // after the end time or the time range is outside the range of possible values. // // * UnsupportedOperationException // This exception is thrown when the requested operation is not supported. // // * OperationNotPermittedException // This exception is thrown when the requested operation is not permitted. // // * InvalidTokenException // Reserved for future use. // func (c *CloudTrail) ListPublicKeys(input *ListPublicKeysInput) (*ListPublicKeysOutput, error) { req, out := c.ListPublicKeysRequest(input) err := req.Send() return out, err } const opListTags = "ListTags" // ListTagsRequest generates a "aws/request.Request" representing the // client's request for the ListTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTagsRequest method. // req, resp := client.ListTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudTrail) ListTagsRequest(input *ListTagsInput) (req *request.Request, output *ListTagsOutput) { op := &request.Operation{ Name: opListTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListTagsInput{} } req = c.newRequest(op, input, output) output = &ListTagsOutput{} req.Data = output return } // ListTags API operation for AWS CloudTrail. // // Lists the tags for the trail in the current region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudTrail's // API operation ListTags for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the specified resource is not found. // // * ARNInvalidException // This exception is thrown when an operation is called with an invalid trail // ARN. The format of a trail ARN is: // // arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail // // * ResourceTypeNotSupportedException // This exception is thrown when the specified resource type is not supported // by CloudTrail. // // * InvalidTrailNameException // This exception is thrown when the provided trail name is not valid. Trail // names must meet the following requirements: // // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores // (_), or dashes (-) // // * Start with a letter or number, and end with a letter or number // // * Be between 3 and 128 characters // // * Have no adjacent periods, underscores or dashes. Names like my-_namespace // and my--namespace are invalid. // // * Not be in IP address format (for example, 192.168.5.4) // // * UnsupportedOperationException // This exception is thrown when the requested operation is not supported. // // * OperationNotPermittedException // This exception is thrown when the requested operation is not permitted. // // * InvalidTokenException // Reserved for future use. // func (c *CloudTrail) ListTags(input *ListTagsInput) (*ListTagsOutput, error) { req, out := c.ListTagsRequest(input) err := req.Send() return out, err } const opLookupEvents = "LookupEvents" // LookupEventsRequest generates a "aws/request.Request" representing the // client's request for the LookupEvents operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See LookupEvents for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the LookupEvents method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the LookupEventsRequest method. // req, resp := client.LookupEventsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudTrail) LookupEventsRequest(input *LookupEventsInput) (req *request.Request, output *LookupEventsOutput) { op := &request.Operation{ Name: opLookupEvents, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &LookupEventsInput{} } req = c.newRequest(op, input, output) output = &LookupEventsOutput{} req.Data = output return } // LookupEvents API operation for AWS CloudTrail. // // Looks up API activity events captured by CloudTrail that create, update, // or delete resources in your account. Events for a region can be looked up // for the times in which you had CloudTrail turned on in that region during // the last seven days. Lookup supports five different attributes: time range // (defined by a start time and end time), user name, event name, resource type, // and resource name. All attributes are optional. The maximum number of attributes // that can be specified in any one lookup request are time range and one other // attribute. The default number of results returned is 10, with a maximum of // 50 possible. The response includes a token that you can use to get the next // page of results. // // The rate of lookup requests is limited to one per second per account. If // this limit is exceeded, a throttling error occurs. // // Events that occurred during the selected time range will not be available // for lookup if CloudTrail logging was not enabled when the events occurred. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudTrail's // API operation LookupEvents for usage and error information. // // Returned Error Codes: // * InvalidLookupAttributesException // Occurs when an invalid lookup attribute is specified. // // * InvalidTimeRangeException // Occurs if the timestamp values are invalid. Either the start time occurs // after the end time or the time range is outside the range of possible values. // // * InvalidMaxResultsException // This exception is thrown if the limit specified is invalid. // // * InvalidNextTokenException // Invalid token or token that was previously used in a request with different // parameters. This exception is thrown if the token is invalid. // func (c *CloudTrail) LookupEvents(input *LookupEventsInput) (*LookupEventsOutput, error) { req, out := c.LookupEventsRequest(input) err := req.Send() return out, err } const opRemoveTags = "RemoveTags" // RemoveTagsRequest generates a "aws/request.Request" representing the // client's request for the RemoveTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveTagsRequest method. // req, resp := client.RemoveTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudTrail) RemoveTagsRequest(input *RemoveTagsInput) (req *request.Request, output *RemoveTagsOutput) { op := &request.Operation{ Name: opRemoveTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveTagsInput{} } req = c.newRequest(op, input, output) output = &RemoveTagsOutput{} req.Data = output return } // RemoveTags API operation for AWS CloudTrail. // // Removes the specified tags from a trail. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudTrail's // API operation RemoveTags for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the specified resource is not found. // // * ARNInvalidException // This exception is thrown when an operation is called with an invalid trail // ARN. The format of a trail ARN is: // // arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail // // * ResourceTypeNotSupportedException // This exception is thrown when the specified resource type is not supported // by CloudTrail. // // * InvalidTrailNameException // This exception is thrown when the provided trail name is not valid. Trail // names must meet the following requirements: // // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores // (_), or dashes (-) // // * Start with a letter or number, and end with a letter or number // // * Be between 3 and 128 characters // // * Have no adjacent periods, underscores or dashes. Names like my-_namespace // and my--namespace are invalid. // // * Not be in IP address format (for example, 192.168.5.4) // // * InvalidTagParameterException // This exception is thrown when the key or value specified for the tag does // not match the regular expression ^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$. // // * UnsupportedOperationException // This exception is thrown when the requested operation is not supported. // // * OperationNotPermittedException // This exception is thrown when the requested operation is not permitted. // func (c *CloudTrail) RemoveTags(input *RemoveTagsInput) (*RemoveTagsOutput, error) { req, out := c.RemoveTagsRequest(input) err := req.Send() return out, err } const opStartLogging = "StartLogging" // StartLoggingRequest generates a "aws/request.Request" representing the // client's request for the StartLogging operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StartLogging for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StartLogging method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StartLoggingRequest method. // req, resp := client.StartLoggingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudTrail) StartLoggingRequest(input *StartLoggingInput) (req *request.Request, output *StartLoggingOutput) { op := &request.Operation{ Name: opStartLogging, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartLoggingInput{} } req = c.newRequest(op, input, output) output = &StartLoggingOutput{} req.Data = output return } // StartLogging API operation for AWS CloudTrail. // // Starts the recording of AWS API calls and log file delivery for a trail. // For a trail that is enabled in all regions, this operation must be called // from the region in which the trail was created. This operation cannot be // called on the shadow trails (replicated trails in other regions) of a trail // that is enabled in all regions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudTrail's // API operation StartLogging for usage and error information. // // Returned Error Codes: // * TrailNotFoundException // This exception is thrown when the trail with the given name is not found. // // * InvalidTrailNameException // This exception is thrown when the provided trail name is not valid. Trail // names must meet the following requirements: // // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores // (_), or dashes (-) // // * Start with a letter or number, and end with a letter or number // // * Be between 3 and 128 characters // // * Have no adjacent periods, underscores or dashes. Names like my-_namespace // and my--namespace are invalid. // // * Not be in IP address format (for example, 192.168.5.4) // // * InvalidHomeRegionException // This exception is thrown when an operation is called on a trail from a region // other than the region in which the trail was created. // func (c *CloudTrail) StartLogging(input *StartLoggingInput) (*StartLoggingOutput, error) { req, out := c.StartLoggingRequest(input) err := req.Send() return out, err } const opStopLogging = "StopLogging" // StopLoggingRequest generates a "aws/request.Request" representing the // client's request for the StopLogging operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StopLogging for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StopLogging method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StopLoggingRequest method. // req, resp := client.StopLoggingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudTrail) StopLoggingRequest(input *StopLoggingInput) (req *request.Request, output *StopLoggingOutput) { op := &request.Operation{ Name: opStopLogging, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StopLoggingInput{} } req = c.newRequest(op, input, output) output = &StopLoggingOutput{} req.Data = output return } // StopLogging API operation for AWS CloudTrail. // // Suspends the recording of AWS API calls and log file delivery for the specified // trail. Under most circumstances, there is no need to use this action. You // can update a trail without stopping it first. This action is the only way // to stop recording. For a trail enabled in all regions, this operation must // be called from the region in which the trail was created, or an InvalidHomeRegionException // will occur. This operation cannot be called on the shadow trails (replicated // trails in other regions) of a trail enabled in all regions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudTrail's // API operation StopLogging for usage and error information. // // Returned Error Codes: // * TrailNotFoundException // This exception is thrown when the trail with the given name is not found. // // * InvalidTrailNameException // This exception is thrown when the provided trail name is not valid. Trail // names must meet the following requirements: // // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores // (_), or dashes (-) // // * Start with a letter or number, and end with a letter or number // // * Be between 3 and 128 characters // // * Have no adjacent periods, underscores or dashes. Names like my-_namespace // and my--namespace are invalid. // // * Not be in IP address format (for example, 192.168.5.4) // // * InvalidHomeRegionException // This exception is thrown when an operation is called on a trail from a region // other than the region in which the trail was created. // func (c *CloudTrail) StopLogging(input *StopLoggingInput) (*StopLoggingOutput, error) { req, out := c.StopLoggingRequest(input) err := req.Send() return out, err } const opUpdateTrail = "UpdateTrail" // UpdateTrailRequest generates a "aws/request.Request" representing the // client's request for the UpdateTrail operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateTrail for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateTrail method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateTrailRequest method. // req, resp := client.UpdateTrailRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudTrail) UpdateTrailRequest(input *UpdateTrailInput) (req *request.Request, output *UpdateTrailOutput) { op := &request.Operation{ Name: opUpdateTrail, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateTrailInput{} } req = c.newRequest(op, input, output) output = &UpdateTrailOutput{} req.Data = output return } // UpdateTrail API operation for AWS CloudTrail. // // Updates the settings that specify delivery of log files. Changes to a trail // do not require stopping the CloudTrail service. Use this action to designate // an existing bucket for log delivery. If the existing bucket has previously // been a target for CloudTrail log files, an IAM policy exists for the bucket. // UpdateTrail must be called from the region in which the trail was created; // otherwise, an InvalidHomeRegionException is thrown. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CloudTrail's // API operation UpdateTrail for usage and error information. // // Returned Error Codes: // * S3BucketDoesNotExistException // This exception is thrown when the specified S3 bucket does not exist. // // * InsufficientS3BucketPolicyException // This exception is thrown when the policy on the S3 bucket is not sufficient. // // * InsufficientSnsTopicPolicyException // This exception is thrown when the policy on the SNS topic is not sufficient. // // * InsufficientEncryptionPolicyException // This exception is thrown when the policy on the S3 bucket or KMS key is not // sufficient. // // * TrailNotFoundException // This exception is thrown when the trail with the given name is not found. // // * InvalidS3BucketNameException // This exception is thrown when the provided S3 bucket name is not valid. // // * InvalidS3PrefixException // This exception is thrown when the provided S3 prefix is not valid. // // * InvalidSnsTopicNameException // This exception is thrown when the provided SNS topic name is not valid. // // * InvalidKmsKeyIdException // This exception is thrown when the KMS key ARN is invalid. // // * InvalidTrailNameException // This exception is thrown when the provided trail name is not valid. Trail // names must meet the following requirements: // // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores // (_), or dashes (-) // // * Start with a letter or number, and end with a letter or number // // * Be between 3 and 128 characters // // * Have no adjacent periods, underscores or dashes. Names like my-_namespace // and my--namespace are invalid. // // * Not be in IP address format (for example, 192.168.5.4) // // * TrailNotProvidedException // This exception is deprecated. // // * InvalidParameterCombinationException // This exception is thrown when the combination of parameters provided is not // valid. // // * InvalidHomeRegionException // This exception is thrown when an operation is called on a trail from a region // other than the region in which the trail was created. // // * KmsKeyNotFoundException // This exception is thrown when the KMS key does not exist, or when the S3 // bucket and the KMS key are not in the same region. // // * KmsKeyDisabledException // This exception is deprecated. // // * KmsException // This exception is thrown when there is an issue with the specified KMS key // and the trail can’t be updated. // // * InvalidCloudWatchLogsLogGroupArnException // This exception is thrown when the provided CloudWatch log group is not valid. // // * InvalidCloudWatchLogsRoleArnException // This exception is thrown when the provided role is not valid. // // * CloudWatchLogsDeliveryUnavailableException // Cannot set a CloudWatch Logs delivery for this region. // // * UnsupportedOperationException // This exception is thrown when the requested operation is not supported. // // * OperationNotPermittedException // This exception is thrown when the requested operation is not permitted. // func (c *CloudTrail) UpdateTrail(input *UpdateTrailInput) (*UpdateTrailOutput, error) { req, out := c.UpdateTrailRequest(input) err := req.Send() return out, err } // Specifies the tags to add to a trail. type AddTagsInput struct { _ struct{} `type:"structure"` // Specifies the ARN of the trail to which one or more tags will be added. The // format of a trail ARN is: // // arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail // // ResourceId is a required field ResourceId *string `type:"string" required:"true"` // Contains a list of CloudTrail tags, up to a limit of 10. TagsList []*Tag `type:"list"` } // String returns the string representation func (s AddTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.TagsList != nil { for i, v := range s.TagsList { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TagsList", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returns the objects or data listed below if successful. Otherwise, returns // an error. type AddTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsOutput) GoString() string { return s.String() } // Specifies the settings for each trail. type CreateTrailInput struct { _ struct{} `type:"structure"` // Specifies a log group name using an Amazon Resource Name (ARN), a unique // identifier that represents the log group to which CloudTrail logs will be // delivered. Not required unless you specify CloudWatchLogsRoleArn. CloudWatchLogsLogGroupArn *string `type:"string"` // Specifies the role for the CloudWatch Logs endpoint to assume to write to // a user's log group. CloudWatchLogsRoleArn *string `type:"string"` // Specifies whether log file integrity validation is enabled. The default is // false. // // When you disable log file integrity validation, the chain of digest files // is broken after one hour. CloudTrail will not create digest files for log // files that were delivered during a period in which log file integrity validation // was disabled. For example, if you enable log file integrity validation at // noon on January 1, disable it at noon on January 2, and re-enable it at noon // on January 10, digest files will not be created for the log files delivered // from noon on January 2 to noon on January 10. The same applies whenever you // stop CloudTrail logging or delete a trail. EnableLogFileValidation *bool `type:"boolean"` // Specifies whether the trail is publishing events from global services such // as IAM to the log files. IncludeGlobalServiceEvents *bool `type:"boolean"` // Specifies whether the trail is created in the current region or in all regions. // The default is false. IsMultiRegionTrail *bool `type:"boolean"` // Specifies the KMS key ID to use to encrypt the logs delivered by CloudTrail. // The value can be a an alias name prefixed by "alias/", a fully specified // ARN to an alias, a fully specified ARN to a key, or a globally unique identifier. // // Examples: // // * alias/MyAliasName // // * arn:aws:kms:us-east-1:123456789012:alias/MyAliasName // // * arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 // // * 12345678-1234-1234-1234-123456789012 KmsKeyId *string `type:"string"` // Specifies the name of the trail. The name must meet the following requirements: // // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores // (_), or dashes (-) // // * Start with a letter or number, and end with a letter or number // // * Be between 3 and 128 characters // // * Have no adjacent periods, underscores or dashes. Names like my-_namespace // and my--namespace are invalid. // // * Not be in IP address format (for example, 192.168.5.4) // // Name is a required field Name *string `type:"string" required:"true"` // Specifies the name of the Amazon S3 bucket designated for publishing log // files. See Amazon S3 Bucket Naming Requirements (http://docs.aws.amazon.com/awscloudtrail/latest/userguide/create_trail_naming_policy.html). // // S3BucketName is a required field S3BucketName *string `type:"string" required:"true"` // Specifies the Amazon S3 key prefix that comes after the name of the bucket // you have designated for log file delivery. For more information, see Finding // Your CloudTrail Log Files (http://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-find-log-files.html). // The maximum length is 200 characters. S3KeyPrefix *string `type:"string"` // Specifies the name of the Amazon SNS topic defined for notification of log // file delivery. The maximum length is 256 characters. SnsTopicName *string `type:"string"` } // String returns the string representation func (s CreateTrailInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTrailInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateTrailInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateTrailInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.S3BucketName == nil { invalidParams.Add(request.NewErrParamRequired("S3BucketName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returns the objects or data listed below if successful. Otherwise, returns // an error. type CreateTrailOutput struct { _ struct{} `type:"structure"` // Specifies the Amazon Resource Name (ARN) of the log group to which CloudTrail // logs will be delivered. CloudWatchLogsLogGroupArn *string `type:"string"` // Specifies the role for the CloudWatch Logs endpoint to assume to write to // a user's log group. CloudWatchLogsRoleArn *string `type:"string"` // Specifies whether the trail is publishing events from global services such // as IAM to the log files. IncludeGlobalServiceEvents *bool `type:"boolean"` // Specifies whether the trail exists in one region or in all regions. IsMultiRegionTrail *bool `type:"boolean"` // Specifies the KMS key ID that encrypts the logs delivered by CloudTrail. // The value is a fully specified ARN to a KMS key in the format: // // arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 KmsKeyId *string `type:"string"` // Specifies whether log file integrity validation is enabled. LogFileValidationEnabled *bool `type:"boolean"` // Specifies the name of the trail. Name *string `type:"string"` // Specifies the name of the Amazon S3 bucket designated for publishing log // files. S3BucketName *string `type:"string"` // Specifies the Amazon S3 key prefix that comes after the name of the bucket // you have designated for log file delivery. For more information, see Finding // Your CloudTrail Log Files (http://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-find-log-files.html). S3KeyPrefix *string `type:"string"` // Specifies the ARN of the Amazon SNS topic that CloudTrail uses to send notifications // when log files are delivered. The format of a topic ARN is: // // arn:aws:sns:us-east-1:123456789012:MyTopic SnsTopicARN *string `type:"string"` // This field is deprecated. Use SnsTopicARN. SnsTopicName *string `deprecated:"true" type:"string"` // Specifies the ARN of the trail that was created. The format of a trail ARN // is: // // arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail TrailARN *string `type:"string"` } // String returns the string representation func (s CreateTrailOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTrailOutput) GoString() string { return s.String() } // The request that specifies the name of a trail to delete. type DeleteTrailInput struct { _ struct{} `type:"structure"` // Specifies the name or the CloudTrail ARN of the trail to be deleted. The // format of a trail ARN is: // // arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteTrailInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTrailInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTrailInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTrailInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returns the objects or data listed below if successful. Otherwise, returns // an error. type DeleteTrailOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteTrailOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTrailOutput) GoString() string { return s.String() } // Returns information about the trail. type DescribeTrailsInput struct { _ struct{} `type:"structure"` // Specifies whether to include shadow trails in the response. A shadow trail // is the replication in a region of a trail that was created in a different // region. The default is true. IncludeShadowTrails *bool `locationName:"includeShadowTrails" type:"boolean"` // Specifies a list of trail names, trail ARNs, or both, of the trails to describe. // The format of a trail ARN is: // // arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail // // If an empty list is specified, information for the trail in the current region // is returned. // // * If an empty list is specified and IncludeShadowTrails is false, then // information for all trails in the current region is returned. // // * If an empty list is specified and IncludeShadowTrails is null or true, // then information for all trails in the current region and any associated // shadow trails in other regions is returned. // // If one or more trail names are specified, information is returned only if // the names match the names of trails belonging only to the current region. // To return information about a trail in another region, you must specify its // trail ARN. TrailNameList []*string `locationName:"trailNameList" type:"list"` } // String returns the string representation func (s DescribeTrailsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTrailsInput) GoString() string { return s.String() } // Returns the objects or data listed below if successful. Otherwise, returns // an error. type DescribeTrailsOutput struct { _ struct{} `type:"structure"` // The list of trail objects. TrailList []*Trail `locationName:"trailList" type:"list"` } // String returns the string representation func (s DescribeTrailsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTrailsOutput) GoString() string { return s.String() } // Contains information about an event that was returned by a lookup request. // The result includes a representation of a CloudTrail event. type Event struct { _ struct{} `type:"structure"` // A JSON string that contains a representation of the event returned. CloudTrailEvent *string `type:"string"` // The CloudTrail ID of the event returned. EventId *string `type:"string"` // The name of the event returned. EventName *string `type:"string"` // The date and time of the event returned. EventTime *time.Time `type:"timestamp" timestampFormat:"unix"` // A list of resources referenced by the event returned. Resources []*Resource `type:"list"` // A user name or role name of the requester that called the API in the event // returned. Username *string `type:"string"` } // String returns the string representation func (s Event) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Event) GoString() string { return s.String() } // The name of a trail about which you want the current status. type GetTrailStatusInput struct { _ struct{} `type:"structure"` // Specifies the name or the CloudTrail ARN of the trail for which you are requesting // status. To get the status of a shadow trail (a replication of the trail in // another region), you must specify its ARN. The format of a trail ARN is: // // arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s GetTrailStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTrailStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetTrailStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetTrailStatusInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returns the objects or data listed below if successful. Otherwise, returns // an error. type GetTrailStatusOutput struct { _ struct{} `type:"structure"` // Whether the CloudTrail is currently logging AWS API calls. IsLogging *bool `type:"boolean"` // Displays any CloudWatch Logs error that CloudTrail encountered when attempting // to deliver logs to CloudWatch Logs. LatestCloudWatchLogsDeliveryError *string `type:"string"` // Displays the most recent date and time when CloudTrail delivered logs to // CloudWatch Logs. LatestCloudWatchLogsDeliveryTime *time.Time `type:"timestamp" timestampFormat:"unix"` // This field is deprecated. LatestDeliveryAttemptSucceeded *string `type:"string"` // This field is deprecated. LatestDeliveryAttemptTime *string `type:"string"` // Displays any Amazon S3 error that CloudTrail encountered when attempting // to deliver log files to the designated bucket. For more information see the // topic Error Responses (http://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html) // in the Amazon S3 API Reference. // // This error occurs only when there is a problem with the destination S3 bucket // and will not occur for timeouts. To resolve the issue, create a new bucket // and call UpdateTrail to specify the new bucket, or fix the existing objects // so that CloudTrail can again write to the bucket. LatestDeliveryError *string `type:"string"` // Specifies the date and time that CloudTrail last delivered log files to an // account's Amazon S3 bucket. LatestDeliveryTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Displays any Amazon S3 error that CloudTrail encountered when attempting // to deliver a digest file to the designated bucket. For more information see // the topic Error Responses (http://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html) // in the Amazon S3 API Reference. // // This error occurs only when there is a problem with the destination S3 bucket // and will not occur for timeouts. To resolve the issue, create a new bucket // and call UpdateTrail to specify the new bucket, or fix the existing objects // so that CloudTrail can again write to the bucket. LatestDigestDeliveryError *string `type:"string"` // Specifies the date and time that CloudTrail last delivered a digest file // to an account's Amazon S3 bucket. LatestDigestDeliveryTime *time.Time `type:"timestamp" timestampFormat:"unix"` // This field is deprecated. LatestNotificationAttemptSucceeded *string `type:"string"` // This field is deprecated. LatestNotificationAttemptTime *string `type:"string"` // Displays any Amazon SNS error that CloudTrail encountered when attempting // to send a notification. For more information about Amazon SNS errors, see // the Amazon SNS Developer Guide (http://docs.aws.amazon.com/sns/latest/dg/welcome.html). LatestNotificationError *string `type:"string"` // Specifies the date and time of the most recent Amazon SNS notification that // CloudTrail has written a new log file to an account's Amazon S3 bucket. LatestNotificationTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Specifies the most recent date and time when CloudTrail started recording // API calls for an AWS account. StartLoggingTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Specifies the most recent date and time when CloudTrail stopped recording // API calls for an AWS account. StopLoggingTime *time.Time `type:"timestamp" timestampFormat:"unix"` // This field is deprecated. TimeLoggingStarted *string `type:"string"` // This field is deprecated. TimeLoggingStopped *string `type:"string"` } // String returns the string representation func (s GetTrailStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTrailStatusOutput) GoString() string { return s.String() } // Requests the public keys for a specified time range. type ListPublicKeysInput struct { _ struct{} `type:"structure"` // Optionally specifies, in UTC, the end of the time range to look up public // keys for CloudTrail digest files. If not specified, the current time is used. EndTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Reserved for future use. NextToken *string `type:"string"` // Optionally specifies, in UTC, the start of the time range to look up public // keys for CloudTrail digest files. If not specified, the current time is used, // and the current public key is returned. StartTime *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s ListPublicKeysInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPublicKeysInput) GoString() string { return s.String() } // Returns the objects or data listed below if successful. Otherwise, returns // an error. type ListPublicKeysOutput struct { _ struct{} `type:"structure"` // Reserved for future use. NextToken *string `type:"string"` // Contains an array of PublicKey objects. // // The returned public keys may have validity time ranges that overlap. PublicKeyList []*PublicKey `type:"list"` } // String returns the string representation func (s ListPublicKeysOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPublicKeysOutput) GoString() string { return s.String() } // Specifies a list of trail tags to return. type ListTagsInput struct { _ struct{} `type:"structure"` // Reserved for future use. NextToken *string `type:"string"` // Specifies a list of trail ARNs whose tags will be listed. The list has a // limit of 20 ARNs. The format of a trail ARN is: // // arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail // // ResourceIdList is a required field ResourceIdList []*string `type:"list" required:"true"` } // String returns the string representation func (s ListTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsInput"} if s.ResourceIdList == nil { invalidParams.Add(request.NewErrParamRequired("ResourceIdList")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returns the objects or data listed below if successful. Otherwise, returns // an error. type ListTagsOutput struct { _ struct{} `type:"structure"` // Reserved for future use. NextToken *string `type:"string"` // A list of resource tags. ResourceTagList []*ResourceTag `type:"list"` } // String returns the string representation func (s ListTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsOutput) GoString() string { return s.String() } // Specifies an attribute and value that filter the events returned. type LookupAttribute struct { _ struct{} `type:"structure"` // Specifies an attribute on which to filter the events returned. // // AttributeKey is a required field AttributeKey *string `type:"string" required:"true" enum:"LookupAttributeKey"` // Specifies a value for the specified AttributeKey. // // AttributeValue is a required field AttributeValue *string `type:"string" required:"true"` } // String returns the string representation func (s LookupAttribute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LookupAttribute) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LookupAttribute) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LookupAttribute"} if s.AttributeKey == nil { invalidParams.Add(request.NewErrParamRequired("AttributeKey")) } if s.AttributeValue == nil { invalidParams.Add(request.NewErrParamRequired("AttributeValue")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains a request for LookupEvents. type LookupEventsInput struct { _ struct{} `type:"structure"` // Specifies that only events that occur before or at the specified time are // returned. If the specified end time is before the specified start time, an // error is returned. EndTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Contains a list of lookup attributes. Currently the list can contain only // one item. LookupAttributes []*LookupAttribute `type:"list"` // The number of events to return. Possible values are 1 through 50. The default // is 10. MaxResults *int64 `min:"1" type:"integer"` // The token to use to get the next page of results after a previous API call. // This token must be passed in with the same parameters that were specified // in the the original call. For example, if the original call specified an // AttributeKey of 'Username' with a value of 'root', the call with NextToken // should include those same parameters. NextToken *string `type:"string"` // Specifies that only events that occur after or at the specified time are // returned. If the specified start time is after the specified end time, an // error is returned. StartTime *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s LookupEventsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LookupEventsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LookupEventsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LookupEventsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.LookupAttributes != nil { for i, v := range s.LookupAttributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "LookupAttributes", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains a response to a LookupEvents action. type LookupEventsOutput struct { _ struct{} `type:"structure"` // A list of events returned based on the lookup attributes specified and the // CloudTrail event. The events list is sorted by time. The most recent event // is listed first. Events []*Event `type:"list"` // The token to use to get the next page of results after a previous API call. // If the token does not appear, there are no more results to return. The token // must be passed in with the same parameters as the previous call. For example, // if the original call specified an AttributeKey of 'Username' with a value // of 'root', the call with NextToken should include those same parameters. NextToken *string `type:"string"` } // String returns the string representation func (s LookupEventsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LookupEventsOutput) GoString() string { return s.String() } // Contains information about a returned public key. type PublicKey struct { _ struct{} `type:"structure"` // The fingerprint of the public key. Fingerprint *string `type:"string"` // The ending time of validity of the public key. ValidityEndTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The starting time of validity of the public key. ValidityStartTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The DER encoded public key value in PKCS#1 format. // // Value is automatically base64 encoded/decoded by the SDK. Value []byte `type:"blob"` } // String returns the string representation func (s PublicKey) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PublicKey) GoString() string { return s.String() } // Specifies the tags to remove from a trail. type RemoveTagsInput struct { _ struct{} `type:"structure"` // Specifies the ARN of the trail from which tags should be removed. The format // of a trail ARN is: // // arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail // // ResourceId is a required field ResourceId *string `type:"string" required:"true"` // Specifies a list of tags to be removed. TagsList []*Tag `type:"list"` } // String returns the string representation func (s RemoveTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTagsInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.TagsList != nil { for i, v := range s.TagsList { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TagsList", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returns the objects or data listed below if successful. Otherwise, returns // an error. type RemoveTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsOutput) GoString() string { return s.String() } // Specifies the type and name of a resource referenced by an event. type Resource struct { _ struct{} `type:"structure"` // The name of the resource referenced by the event returned. These are user-created // names whose values will depend on the environment. For example, the resource // name might be "auto-scaling-test-group" for an Auto Scaling Group or "i-1234567" // for an EC2 Instance. ResourceName *string `type:"string"` // The type of a resource referenced by the event returned. When the resource // type cannot be determined, null is returned. Some examples of resource types // are: Instance for EC2, Trail for CloudTrail, DBInstance for RDS, and AccessKey // for IAM. For a list of resource types supported for event lookup, see Resource // Types Supported for Event Lookup (http://docs.aws.amazon.com/awscloudtrail/latest/userguide/lookup_supported_resourcetypes.html). ResourceType *string `type:"string"` } // String returns the string representation func (s Resource) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Resource) GoString() string { return s.String() } // A resource tag. type ResourceTag struct { _ struct{} `type:"structure"` // Specifies the ARN of the resource. ResourceId *string `type:"string"` // A list of tags. TagsList []*Tag `type:"list"` } // String returns the string representation func (s ResourceTag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResourceTag) GoString() string { return s.String() } // The request to CloudTrail to start logging AWS API calls for an account. type StartLoggingInput struct { _ struct{} `type:"structure"` // Specifies the name or the CloudTrail ARN of the trail for which CloudTrail // logs AWS API calls. The format of a trail ARN is: // // arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s StartLoggingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartLoggingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartLoggingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartLoggingInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returns the objects or data listed below if successful. Otherwise, returns // an error. type StartLoggingOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s StartLoggingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartLoggingOutput) GoString() string { return s.String() } // Passes the request to CloudTrail to stop logging AWS API calls for the specified // account. type StopLoggingInput struct { _ struct{} `type:"structure"` // Specifies the name or the CloudTrail ARN of the trail for which CloudTrail // will stop logging AWS API calls. The format of a trail ARN is: // // arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s StopLoggingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopLoggingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StopLoggingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StopLoggingInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returns the objects or data listed below if successful. Otherwise, returns // an error. type StopLoggingOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s StopLoggingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopLoggingOutput) GoString() string { return s.String() } // A custom key-value pair associated with a resource such as a CloudTrail trail. type Tag struct { _ struct{} `type:"structure"` // The key in a key-value pair. The key must be must be no longer than 128 Unicode // characters. The key must be unique for the resource to which it applies. // // Key is a required field Key *string `type:"string" required:"true"` // The value in a key-value pair of a tag. The value must be no longer than // 256 Unicode characters. Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The settings for a trail. type Trail struct { _ struct{} `type:"structure"` // Specifies an Amazon Resource Name (ARN), a unique identifier that represents // the log group to which CloudTrail logs will be delivered. CloudWatchLogsLogGroupArn *string `type:"string"` // Specifies the role for the CloudWatch Logs endpoint to assume to write to // a user's log group. CloudWatchLogsRoleArn *string `type:"string"` // The region in which the trail was created. HomeRegion *string `type:"string"` // Set to True to include AWS API calls from AWS global services such as IAM. // Otherwise, False. IncludeGlobalServiceEvents *bool `type:"boolean"` // Specifies whether the trail belongs only to one region or exists in all regions. IsMultiRegionTrail *bool `type:"boolean"` // Specifies the KMS key ID that encrypts the logs delivered by CloudTrail. // The value is a fully specified ARN to a KMS key in the format: // // arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 KmsKeyId *string `type:"string"` // Specifies whether log file validation is enabled. LogFileValidationEnabled *bool `type:"boolean"` // Name of the trail set by calling CreateTrail. The maximum length is 128 characters. Name *string `type:"string"` // Name of the Amazon S3 bucket into which CloudTrail delivers your trail files. // See Amazon S3 Bucket Naming Requirements (http://docs.aws.amazon.com/awscloudtrail/latest/userguide/create_trail_naming_policy.html). S3BucketName *string `type:"string"` // Specifies the Amazon S3 key prefix that comes after the name of the bucket // you have designated for log file delivery. For more information, see Finding // Your CloudTrail Log Files (http://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-find-log-files.html).The // maximum length is 200 characters. S3KeyPrefix *string `type:"string"` // Specifies the ARN of the Amazon SNS topic that CloudTrail uses to send notifications // when log files are delivered. The format of a topic ARN is: // // arn:aws:sns:us-east-1:123456789012:MyTopic SnsTopicARN *string `type:"string"` // This field is deprecated. Use SnsTopicARN. SnsTopicName *string `deprecated:"true" type:"string"` // Specifies the ARN of the trail. The format of a trail ARN is: // // arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail TrailARN *string `type:"string"` } // String returns the string representation func (s Trail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Trail) GoString() string { return s.String() } // Specifies settings to update for the trail. type UpdateTrailInput struct { _ struct{} `type:"structure"` // Specifies a log group name using an Amazon Resource Name (ARN), a unique // identifier that represents the log group to which CloudTrail logs will be // delivered. Not required unless you specify CloudWatchLogsRoleArn. CloudWatchLogsLogGroupArn *string `type:"string"` // Specifies the role for the CloudWatch Logs endpoint to assume to write to // a user's log group. CloudWatchLogsRoleArn *string `type:"string"` // Specifies whether log file validation is enabled. The default is false. // // When you disable log file integrity validation, the chain of digest files // is broken after one hour. CloudTrail will not create digest files for log // files that were delivered during a period in which log file integrity validation // was disabled. For example, if you enable log file integrity validation at // noon on January 1, disable it at noon on January 2, and re-enable it at noon // on January 10, digest files will not be created for the log files delivered // from noon on January 2 to noon on January 10. The same applies whenever you // stop CloudTrail logging or delete a trail. EnableLogFileValidation *bool `type:"boolean"` // Specifies whether the trail is publishing events from global services such // as IAM to the log files. IncludeGlobalServiceEvents *bool `type:"boolean"` // Specifies whether the trail applies only to the current region or to all // regions. The default is false. If the trail exists only in the current region // and this value is set to true, shadow trails (replications of the trail) // will be created in the other regions. If the trail exists in all regions // and this value is set to false, the trail will remain in the region where // it was created, and its shadow trails in other regions will be deleted. IsMultiRegionTrail *bool `type:"boolean"` // Specifies the KMS key ID to use to encrypt the logs delivered by CloudTrail. // The value can be a an alias name prefixed by "alias/", a fully specified // ARN to an alias, a fully specified ARN to a key, or a globally unique identifier. // // Examples: // // * alias/MyAliasName // // * arn:aws:kms:us-east-1:123456789012:alias/MyAliasName // // * arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 // // * 12345678-1234-1234-1234-123456789012 KmsKeyId *string `type:"string"` // Specifies the name of the trail or trail ARN. If Name is a trail name, the // string must meet the following requirements: // // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores // (_), or dashes (-) // // * Start with a letter or number, and end with a letter or number // // * Be between 3 and 128 characters // // * Have no adjacent periods, underscores or dashes. Names like my-_namespace // and my--namespace are invalid. // // * Not be in IP address format (for example, 192.168.5.4) // // If Name is a trail ARN, it must be in the format: // // arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail // // Name is a required field Name *string `type:"string" required:"true"` // Specifies the name of the Amazon S3 bucket designated for publishing log // files. See Amazon S3 Bucket Naming Requirements (http://docs.aws.amazon.com/awscloudtrail/latest/userguide/create_trail_naming_policy.html). S3BucketName *string `type:"string"` // Specifies the Amazon S3 key prefix that comes after the name of the bucket // you have designated for log file delivery. For more information, see Finding // Your CloudTrail Log Files (http://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-find-log-files.html). // The maximum length is 200 characters. S3KeyPrefix *string `type:"string"` // Specifies the name of the Amazon SNS topic defined for notification of log // file delivery. The maximum length is 256 characters. SnsTopicName *string `type:"string"` } // String returns the string representation func (s UpdateTrailInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateTrailInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateTrailInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateTrailInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returns the objects or data listed below if successful. Otherwise, returns // an error. type UpdateTrailOutput struct { _ struct{} `type:"structure"` // Specifies the Amazon Resource Name (ARN) of the log group to which CloudTrail // logs will be delivered. CloudWatchLogsLogGroupArn *string `type:"string"` // Specifies the role for the CloudWatch Logs endpoint to assume to write to // a user's log group. CloudWatchLogsRoleArn *string `type:"string"` // Specifies whether the trail is publishing events from global services such // as IAM to the log files. IncludeGlobalServiceEvents *bool `type:"boolean"` // Specifies whether the trail exists in one region or in all regions. IsMultiRegionTrail *bool `type:"boolean"` // Specifies the KMS key ID that encrypts the logs delivered by CloudTrail. // The value is a fully specified ARN to a KMS key in the format: // // arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 KmsKeyId *string `type:"string"` // Specifies whether log file integrity validation is enabled. LogFileValidationEnabled *bool `type:"boolean"` // Specifies the name of the trail. Name *string `type:"string"` // Specifies the name of the Amazon S3 bucket designated for publishing log // files. S3BucketName *string `type:"string"` // Specifies the Amazon S3 key prefix that comes after the name of the bucket // you have designated for log file delivery. For more information, see Finding // Your CloudTrail Log Files (http://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-find-log-files.html). S3KeyPrefix *string `type:"string"` // Specifies the ARN of the Amazon SNS topic that CloudTrail uses to send notifications // when log files are delivered. The format of a topic ARN is: // // arn:aws:sns:us-east-1:123456789012:MyTopic SnsTopicARN *string `type:"string"` // This field is deprecated. Use SnsTopicARN. SnsTopicName *string `deprecated:"true" type:"string"` // Specifies the ARN of the trail that was updated. The format of a trail ARN // is: // // arn:aws:cloudtrail:us-east-1:123456789012:trail/MyTrail TrailARN *string `type:"string"` } // String returns the string representation func (s UpdateTrailOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateTrailOutput) GoString() string { return s.String() } const ( // LookupAttributeKeyEventId is a LookupAttributeKey enum value LookupAttributeKeyEventId = "EventId" // LookupAttributeKeyEventName is a LookupAttributeKey enum value LookupAttributeKeyEventName = "EventName" // LookupAttributeKeyUsername is a LookupAttributeKey enum value LookupAttributeKeyUsername = "Username" // LookupAttributeKeyResourceType is a LookupAttributeKey enum value LookupAttributeKeyResourceType = "ResourceType" // LookupAttributeKeyResourceName is a LookupAttributeKey enum value LookupAttributeKeyResourceName = "ResourceName" ) aws-sdk-go-1.4.22/service/cloudtrail/cloudtrailiface/000077500000000000000000000000001300374646400225175ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudtrail/cloudtrailiface/interface.go000066400000000000000000000105021300374646400250040ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cloudtrailiface provides an interface to enable mocking the AWS CloudTrail service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package cloudtrailiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/cloudtrail" ) // CloudTrailAPI provides an interface to enable mocking the // cloudtrail.CloudTrail service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS CloudTrail. // func myFunc(svc cloudtrailiface.CloudTrailAPI) bool { // // Make svc.AddTags request // } // // func main() { // sess := session.New() // svc := cloudtrail.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockCloudTrailClient struct { // cloudtrailiface.CloudTrailAPI // } // func (m *mockCloudTrailClient) AddTags(input *cloudtrail.AddTagsInput) (*cloudtrail.AddTagsOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockCloudTrailClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type CloudTrailAPI interface { AddTagsRequest(*cloudtrail.AddTagsInput) (*request.Request, *cloudtrail.AddTagsOutput) AddTags(*cloudtrail.AddTagsInput) (*cloudtrail.AddTagsOutput, error) CreateTrailRequest(*cloudtrail.CreateTrailInput) (*request.Request, *cloudtrail.CreateTrailOutput) CreateTrail(*cloudtrail.CreateTrailInput) (*cloudtrail.CreateTrailOutput, error) DeleteTrailRequest(*cloudtrail.DeleteTrailInput) (*request.Request, *cloudtrail.DeleteTrailOutput) DeleteTrail(*cloudtrail.DeleteTrailInput) (*cloudtrail.DeleteTrailOutput, error) DescribeTrailsRequest(*cloudtrail.DescribeTrailsInput) (*request.Request, *cloudtrail.DescribeTrailsOutput) DescribeTrails(*cloudtrail.DescribeTrailsInput) (*cloudtrail.DescribeTrailsOutput, error) GetTrailStatusRequest(*cloudtrail.GetTrailStatusInput) (*request.Request, *cloudtrail.GetTrailStatusOutput) GetTrailStatus(*cloudtrail.GetTrailStatusInput) (*cloudtrail.GetTrailStatusOutput, error) ListPublicKeysRequest(*cloudtrail.ListPublicKeysInput) (*request.Request, *cloudtrail.ListPublicKeysOutput) ListPublicKeys(*cloudtrail.ListPublicKeysInput) (*cloudtrail.ListPublicKeysOutput, error) ListTagsRequest(*cloudtrail.ListTagsInput) (*request.Request, *cloudtrail.ListTagsOutput) ListTags(*cloudtrail.ListTagsInput) (*cloudtrail.ListTagsOutput, error) LookupEventsRequest(*cloudtrail.LookupEventsInput) (*request.Request, *cloudtrail.LookupEventsOutput) LookupEvents(*cloudtrail.LookupEventsInput) (*cloudtrail.LookupEventsOutput, error) RemoveTagsRequest(*cloudtrail.RemoveTagsInput) (*request.Request, *cloudtrail.RemoveTagsOutput) RemoveTags(*cloudtrail.RemoveTagsInput) (*cloudtrail.RemoveTagsOutput, error) StartLoggingRequest(*cloudtrail.StartLoggingInput) (*request.Request, *cloudtrail.StartLoggingOutput) StartLogging(*cloudtrail.StartLoggingInput) (*cloudtrail.StartLoggingOutput, error) StopLoggingRequest(*cloudtrail.StopLoggingInput) (*request.Request, *cloudtrail.StopLoggingOutput) StopLogging(*cloudtrail.StopLoggingInput) (*cloudtrail.StopLoggingOutput, error) UpdateTrailRequest(*cloudtrail.UpdateTrailInput) (*request.Request, *cloudtrail.UpdateTrailOutput) UpdateTrail(*cloudtrail.UpdateTrailInput) (*cloudtrail.UpdateTrailOutput, error) } var _ CloudTrailAPI = (*cloudtrail.CloudTrail)(nil) aws-sdk-go-1.4.22/service/cloudtrail/examples_test.go000066400000000000000000000202071300374646400225720ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudtrail_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/cloudtrail" ) var _ time.Duration var _ bytes.Buffer func ExampleCloudTrail_AddTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudtrail.New(sess) params := &cloudtrail.AddTagsInput{ ResourceId: aws.String("String"), // Required TagsList: []*cloudtrail.Tag{ { // Required Key: aws.String("String"), // Required Value: aws.String("String"), }, // More values... }, } resp, err := svc.AddTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudTrail_CreateTrail() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudtrail.New(sess) params := &cloudtrail.CreateTrailInput{ Name: aws.String("String"), // Required S3BucketName: aws.String("String"), // Required CloudWatchLogsLogGroupArn: aws.String("String"), CloudWatchLogsRoleArn: aws.String("String"), EnableLogFileValidation: aws.Bool(true), IncludeGlobalServiceEvents: aws.Bool(true), IsMultiRegionTrail: aws.Bool(true), KmsKeyId: aws.String("String"), S3KeyPrefix: aws.String("String"), SnsTopicName: aws.String("String"), } resp, err := svc.CreateTrail(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudTrail_DeleteTrail() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudtrail.New(sess) params := &cloudtrail.DeleteTrailInput{ Name: aws.String("String"), // Required } resp, err := svc.DeleteTrail(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudTrail_DescribeTrails() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudtrail.New(sess) params := &cloudtrail.DescribeTrailsInput{ IncludeShadowTrails: aws.Bool(true), TrailNameList: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeTrails(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudTrail_GetTrailStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudtrail.New(sess) params := &cloudtrail.GetTrailStatusInput{ Name: aws.String("String"), // Required } resp, err := svc.GetTrailStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudTrail_ListPublicKeys() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudtrail.New(sess) params := &cloudtrail.ListPublicKeysInput{ EndTime: aws.Time(time.Now()), NextToken: aws.String("String"), StartTime: aws.Time(time.Now()), } resp, err := svc.ListPublicKeys(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudTrail_ListTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudtrail.New(sess) params := &cloudtrail.ListTagsInput{ ResourceIdList: []*string{ // Required aws.String("String"), // Required // More values... }, NextToken: aws.String("String"), } resp, err := svc.ListTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudTrail_LookupEvents() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudtrail.New(sess) params := &cloudtrail.LookupEventsInput{ EndTime: aws.Time(time.Now()), LookupAttributes: []*cloudtrail.LookupAttribute{ { // Required AttributeKey: aws.String("LookupAttributeKey"), // Required AttributeValue: aws.String("String"), // Required }, // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), StartTime: aws.Time(time.Now()), } resp, err := svc.LookupEvents(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudTrail_RemoveTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudtrail.New(sess) params := &cloudtrail.RemoveTagsInput{ ResourceId: aws.String("String"), // Required TagsList: []*cloudtrail.Tag{ { // Required Key: aws.String("String"), // Required Value: aws.String("String"), }, // More values... }, } resp, err := svc.RemoveTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudTrail_StartLogging() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudtrail.New(sess) params := &cloudtrail.StartLoggingInput{ Name: aws.String("String"), // Required } resp, err := svc.StartLogging(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudTrail_StopLogging() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudtrail.New(sess) params := &cloudtrail.StopLoggingInput{ Name: aws.String("String"), // Required } resp, err := svc.StopLogging(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudTrail_UpdateTrail() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudtrail.New(sess) params := &cloudtrail.UpdateTrailInput{ Name: aws.String("String"), // Required CloudWatchLogsLogGroupArn: aws.String("String"), CloudWatchLogsRoleArn: aws.String("String"), EnableLogFileValidation: aws.Bool(true), IncludeGlobalServiceEvents: aws.Bool(true), IsMultiRegionTrail: aws.Bool(true), KmsKeyId: aws.String("String"), S3BucketName: aws.String("String"), S3KeyPrefix: aws.String("String"), SnsTopicName: aws.String("String"), } resp, err := svc.UpdateTrail(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/cloudtrail/service.go000066400000000000000000000076261300374646400213670ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudtrail import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // This is the CloudTrail API Reference. It provides descriptions of actions, // data types, common parameters, and common errors for CloudTrail. // // CloudTrail is a web service that records AWS API calls for your AWS account // and delivers log files to an Amazon S3 bucket. The recorded information includes // the identity of the user, the start time of the AWS API call, the source // IP address, the request parameters, and the response elements returned by // the service. // // As an alternative to the API, you can use one of the AWS SDKs, which consist // of libraries and sample code for various programming languages and platforms // (Java, Ruby, .NET, iOS, Android, etc.). The SDKs provide a convenient way // to create programmatic access to AWSCloudTrail. For example, the SDKs take // care of cryptographically signing requests, managing errors, and retrying // requests automatically. For information about the AWS SDKs, including how // to download and install them, see the Tools for Amazon Web Services page // (http://aws.amazon.com/tools/). // // See the CloudTrail User Guide for information about the data that is included // with each AWS API call listed in the log files. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type CloudTrail struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "cloudtrail" // New creates a new instance of the CloudTrail client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a CloudTrail client from just a session. // svc := cloudtrail.New(mySession) // // // Create a CloudTrail client with additional configuration // svc := cloudtrail.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *CloudTrail { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *CloudTrail { svc := &CloudTrail{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2013-11-01", JSONVersion: "1.1", TargetPrefix: "com.amazonaws.cloudtrail.v20131101.CloudTrail_20131101", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a CloudTrail operation and runs any // custom request initialization. func (c *CloudTrail) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/cloudwatch/000077500000000000000000000000001300374646400173605ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudwatch/api.go000066400000000000000000002413031300374646400204630ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cloudwatch provides a client for Amazon CloudWatch. package cloudwatch import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/query" ) const opDeleteAlarms = "DeleteAlarms" // DeleteAlarmsRequest generates a "aws/request.Request" representing the // client's request for the DeleteAlarms operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteAlarms for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteAlarms method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteAlarmsRequest method. // req, resp := client.DeleteAlarmsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatch) DeleteAlarmsRequest(input *DeleteAlarmsInput) (req *request.Request, output *DeleteAlarmsOutput) { op := &request.Operation{ Name: opDeleteAlarms, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteAlarmsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteAlarmsOutput{} req.Data = output return } // DeleteAlarms API operation for Amazon CloudWatch. // // Deletes all specified alarms. In the event of an error, no alarms are deleted. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch's // API operation DeleteAlarms for usage and error information. // // Returned Error Codes: // * ResourceNotFound // The named resource does not exist. // func (c *CloudWatch) DeleteAlarms(input *DeleteAlarmsInput) (*DeleteAlarmsOutput, error) { req, out := c.DeleteAlarmsRequest(input) err := req.Send() return out, err } const opDescribeAlarmHistory = "DescribeAlarmHistory" // DescribeAlarmHistoryRequest generates a "aws/request.Request" representing the // client's request for the DescribeAlarmHistory operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAlarmHistory for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAlarmHistory method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAlarmHistoryRequest method. // req, resp := client.DescribeAlarmHistoryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatch) DescribeAlarmHistoryRequest(input *DescribeAlarmHistoryInput) (req *request.Request, output *DescribeAlarmHistoryOutput) { op := &request.Operation{ Name: opDescribeAlarmHistory, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeAlarmHistoryInput{} } req = c.newRequest(op, input, output) output = &DescribeAlarmHistoryOutput{} req.Data = output return } // DescribeAlarmHistory API operation for Amazon CloudWatch. // // Retrieves history for the specified alarm. Filter alarms by date range or // item type. If an alarm name is not specified, Amazon CloudWatch returns histories // for all of the owner's alarms. // // Amazon CloudWatch retains the history of an alarm for two weeks, whether // or not you delete the alarm. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch's // API operation DescribeAlarmHistory for usage and error information. // // Returned Error Codes: // * InvalidNextToken // The next token specified is invalid. // func (c *CloudWatch) DescribeAlarmHistory(input *DescribeAlarmHistoryInput) (*DescribeAlarmHistoryOutput, error) { req, out := c.DescribeAlarmHistoryRequest(input) err := req.Send() return out, err } // DescribeAlarmHistoryPages iterates over the pages of a DescribeAlarmHistory operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeAlarmHistory method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeAlarmHistory operation. // pageNum := 0 // err := client.DescribeAlarmHistoryPages(params, // func(page *DescribeAlarmHistoryOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CloudWatch) DescribeAlarmHistoryPages(input *DescribeAlarmHistoryInput, fn func(p *DescribeAlarmHistoryOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeAlarmHistoryRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeAlarmHistoryOutput), lastPage) }) } const opDescribeAlarms = "DescribeAlarms" // DescribeAlarmsRequest generates a "aws/request.Request" representing the // client's request for the DescribeAlarms operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAlarms for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAlarms method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAlarmsRequest method. // req, resp := client.DescribeAlarmsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatch) DescribeAlarmsRequest(input *DescribeAlarmsInput) (req *request.Request, output *DescribeAlarmsOutput) { op := &request.Operation{ Name: opDescribeAlarms, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeAlarmsInput{} } req = c.newRequest(op, input, output) output = &DescribeAlarmsOutput{} req.Data = output return } // DescribeAlarms API operation for Amazon CloudWatch. // // Retrieves alarms with the specified names. If no name is specified, all alarms // for the user are returned. Alarms can be retrieved by using only a prefix // for the alarm name, the alarm state, or a prefix for any action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch's // API operation DescribeAlarms for usage and error information. // // Returned Error Codes: // * InvalidNextToken // The next token specified is invalid. // func (c *CloudWatch) DescribeAlarms(input *DescribeAlarmsInput) (*DescribeAlarmsOutput, error) { req, out := c.DescribeAlarmsRequest(input) err := req.Send() return out, err } // DescribeAlarmsPages iterates over the pages of a DescribeAlarms operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeAlarms method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeAlarms operation. // pageNum := 0 // err := client.DescribeAlarmsPages(params, // func(page *DescribeAlarmsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CloudWatch) DescribeAlarmsPages(input *DescribeAlarmsInput, fn func(p *DescribeAlarmsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeAlarmsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeAlarmsOutput), lastPage) }) } const opDescribeAlarmsForMetric = "DescribeAlarmsForMetric" // DescribeAlarmsForMetricRequest generates a "aws/request.Request" representing the // client's request for the DescribeAlarmsForMetric operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAlarmsForMetric for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAlarmsForMetric method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAlarmsForMetricRequest method. // req, resp := client.DescribeAlarmsForMetricRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatch) DescribeAlarmsForMetricRequest(input *DescribeAlarmsForMetricInput) (req *request.Request, output *DescribeAlarmsForMetricOutput) { op := &request.Operation{ Name: opDescribeAlarmsForMetric, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAlarmsForMetricInput{} } req = c.newRequest(op, input, output) output = &DescribeAlarmsForMetricOutput{} req.Data = output return } // DescribeAlarmsForMetric API operation for Amazon CloudWatch. // // Retrieves all alarms for a single metric. Specify a statistic, period, or // unit to filter the set of alarms further. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch's // API operation DescribeAlarmsForMetric for usage and error information. func (c *CloudWatch) DescribeAlarmsForMetric(input *DescribeAlarmsForMetricInput) (*DescribeAlarmsForMetricOutput, error) { req, out := c.DescribeAlarmsForMetricRequest(input) err := req.Send() return out, err } const opDisableAlarmActions = "DisableAlarmActions" // DisableAlarmActionsRequest generates a "aws/request.Request" representing the // client's request for the DisableAlarmActions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableAlarmActions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableAlarmActions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableAlarmActionsRequest method. // req, resp := client.DisableAlarmActionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatch) DisableAlarmActionsRequest(input *DisableAlarmActionsInput) (req *request.Request, output *DisableAlarmActionsOutput) { op := &request.Operation{ Name: opDisableAlarmActions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableAlarmActionsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DisableAlarmActionsOutput{} req.Data = output return } // DisableAlarmActions API operation for Amazon CloudWatch. // // Disables actions for the specified alarms. When an alarm's actions are disabled // the alarm's state may change, but none of the alarm's actions will execute. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch's // API operation DisableAlarmActions for usage and error information. func (c *CloudWatch) DisableAlarmActions(input *DisableAlarmActionsInput) (*DisableAlarmActionsOutput, error) { req, out := c.DisableAlarmActionsRequest(input) err := req.Send() return out, err } const opEnableAlarmActions = "EnableAlarmActions" // EnableAlarmActionsRequest generates a "aws/request.Request" representing the // client's request for the EnableAlarmActions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableAlarmActions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableAlarmActions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableAlarmActionsRequest method. // req, resp := client.EnableAlarmActionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatch) EnableAlarmActionsRequest(input *EnableAlarmActionsInput) (req *request.Request, output *EnableAlarmActionsOutput) { op := &request.Operation{ Name: opEnableAlarmActions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableAlarmActionsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &EnableAlarmActionsOutput{} req.Data = output return } // EnableAlarmActions API operation for Amazon CloudWatch. // // Enables actions for the specified alarms. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch's // API operation EnableAlarmActions for usage and error information. func (c *CloudWatch) EnableAlarmActions(input *EnableAlarmActionsInput) (*EnableAlarmActionsOutput, error) { req, out := c.EnableAlarmActionsRequest(input) err := req.Send() return out, err } const opGetMetricStatistics = "GetMetricStatistics" // GetMetricStatisticsRequest generates a "aws/request.Request" representing the // client's request for the GetMetricStatistics operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetMetricStatistics for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetMetricStatistics method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetMetricStatisticsRequest method. // req, resp := client.GetMetricStatisticsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatch) GetMetricStatisticsRequest(input *GetMetricStatisticsInput) (req *request.Request, output *GetMetricStatisticsOutput) { op := &request.Operation{ Name: opGetMetricStatistics, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetMetricStatisticsInput{} } req = c.newRequest(op, input, output) output = &GetMetricStatisticsOutput{} req.Data = output return } // GetMetricStatistics API operation for Amazon CloudWatch. // // Gets statistics for the specified metric. // // The maximum number of data points that can be queried is 50,850, whereas // the maximum number of data points returned from a single GetMetricStatistics // request is 1,440. If you make a request that generates more than 1,440 data // points, Amazon CloudWatch returns an error. In such a case, you can alter // the request by narrowing the specified time range or increasing the specified // period. A period can be as short as one minute (60 seconds) or as long as // one day (86,400 seconds). Alternatively, you can make multiple requests across // adjacent time ranges. GetMetricStatistics does not return the data in chronological // order. // // Amazon CloudWatch aggregates data points based on the length of the period // that you specify. For example, if you request statistics with a one-minute // granularity, Amazon CloudWatch aggregates data points with time stamps that // fall within the same one-minute period. In such a case, the data points queried // can greatly outnumber the data points returned. // // The following examples show various statistics allowed by the data point // query maximum of 50,850 when you call GetMetricStatistics on Amazon EC2 instances // with detailed (one-minute) monitoring enabled: // // * Statistics for up to 400 instances for a span of one hour // // * Statistics for up to 35 instances over a span of 24 hours // // * Statistics for up to 2 instances over a span of 2 weeks // // For information about the namespace, metric names, and dimensions that other // Amazon Web Services products use to send metrics to CloudWatch, go to Amazon // CloudWatch Metrics, Namespaces, and Dimensions Reference (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/CW_Support_For_AWS.html) // in the Amazon CloudWatch Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch's // API operation GetMetricStatistics for usage and error information. // // Returned Error Codes: // * InvalidParameterValue // Bad or out-of-range value was supplied for the input parameter. // // * MissingParameter // An input parameter that is mandatory for processing the request is not supplied. // // * InvalidParameterCombination // Parameters that must not be used together were used together. // // * InternalServiceError // Indicates that the request processing has failed due to some unknown error, // exception, or failure. // func (c *CloudWatch) GetMetricStatistics(input *GetMetricStatisticsInput) (*GetMetricStatisticsOutput, error) { req, out := c.GetMetricStatisticsRequest(input) err := req.Send() return out, err } const opListMetrics = "ListMetrics" // ListMetricsRequest generates a "aws/request.Request" representing the // client's request for the ListMetrics operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListMetrics for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListMetrics method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListMetricsRequest method. // req, resp := client.ListMetricsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatch) ListMetricsRequest(input *ListMetricsInput) (req *request.Request, output *ListMetricsOutput) { op := &request.Operation{ Name: opListMetrics, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListMetricsInput{} } req = c.newRequest(op, input, output) output = &ListMetricsOutput{} req.Data = output return } // ListMetrics API operation for Amazon CloudWatch. // // Returns a list of valid metrics stored for the AWS account owner. Returned // metrics can be used with GetMetricStatistics to obtain statistical data for // a given metric. // // Up to 500 results are returned for any one call. To retrieve further results, // use returned NextToken values with subsequent ListMetrics operations. // // If you create a metric with PutMetricData, allow up to fifteen minutes for // the metric to appear in calls to ListMetrics. Statistics about the metric, // however, are available sooner using GetMetricStatistics. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch's // API operation ListMetrics for usage and error information. // // Returned Error Codes: // * InternalServiceError // Indicates that the request processing has failed due to some unknown error, // exception, or failure. // // * InvalidParameterValue // Bad or out-of-range value was supplied for the input parameter. // func (c *CloudWatch) ListMetrics(input *ListMetricsInput) (*ListMetricsOutput, error) { req, out := c.ListMetricsRequest(input) err := req.Send() return out, err } // ListMetricsPages iterates over the pages of a ListMetrics operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListMetrics method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListMetrics operation. // pageNum := 0 // err := client.ListMetricsPages(params, // func(page *ListMetricsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CloudWatch) ListMetricsPages(input *ListMetricsInput, fn func(p *ListMetricsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListMetricsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListMetricsOutput), lastPage) }) } const opPutMetricAlarm = "PutMetricAlarm" // PutMetricAlarmRequest generates a "aws/request.Request" representing the // client's request for the PutMetricAlarm operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutMetricAlarm for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutMetricAlarm method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutMetricAlarmRequest method. // req, resp := client.PutMetricAlarmRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatch) PutMetricAlarmRequest(input *PutMetricAlarmInput) (req *request.Request, output *PutMetricAlarmOutput) { op := &request.Operation{ Name: opPutMetricAlarm, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutMetricAlarmInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutMetricAlarmOutput{} req.Data = output return } // PutMetricAlarm API operation for Amazon CloudWatch. // // Creates or updates an alarm and associates it with the specified Amazon CloudWatch // metric. Optionally, this operation can associate one or more Amazon SNS resources // with the alarm. // // When this operation creates an alarm, the alarm state is immediately set // to INSUFFICIENT_DATA. The alarm is evaluated and its StateValue is set appropriately. // Any actions associated with the StateValue are then executed. // // When updating an existing alarm, its StateValue is left unchanged, but it // completely overwrites the alarm's previous configuration. // // If you are using an AWS Identity and Access Management (IAM) account to create // or modify an alarm, you must have the following Amazon EC2 permissions: // // ec2:DescribeInstanceStatus and ec2:DescribeInstances for all alarms on Amazon // EC2 instance status metrics. // // ec2:StopInstances for alarms with stop actions. // // ec2:TerminateInstances for alarms with terminate actions. // // ec2:DescribeInstanceRecoveryAttribute, and ec2:RecoverInstances for alarms // with recover actions. // // If you have read/write permissions for Amazon CloudWatch but not for Amazon // EC2, you can still create an alarm but the stop or terminate actions won't // be performed on the Amazon EC2 instance. However, if you are later granted // permission to use the associated Amazon EC2 APIs, the alarm actions you created // earlier will be performed. For more information about IAM permissions, see // Permissions and Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/PermissionsAndPolicies.html) // in Using IAM. // // If you are using an IAM role (e.g., an Amazon EC2 instance profile), you // cannot stop or terminate the instance using alarm actions. However, you can // still see the alarm state and perform any other actions such as Amazon SNS // notifications or Auto Scaling policies. // // If you are using temporary security credentials granted using the AWS Security // Token Service (AWS STS), you cannot stop or terminate an Amazon EC2 instance // using alarm actions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch's // API operation PutMetricAlarm for usage and error information. // // Returned Error Codes: // * LimitExceeded // The quota for alarms for this customer has already been reached. // func (c *CloudWatch) PutMetricAlarm(input *PutMetricAlarmInput) (*PutMetricAlarmOutput, error) { req, out := c.PutMetricAlarmRequest(input) err := req.Send() return out, err } const opPutMetricData = "PutMetricData" // PutMetricDataRequest generates a "aws/request.Request" representing the // client's request for the PutMetricData operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutMetricData for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutMetricData method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutMetricDataRequest method. // req, resp := client.PutMetricDataRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatch) PutMetricDataRequest(input *PutMetricDataInput) (req *request.Request, output *PutMetricDataOutput) { op := &request.Operation{ Name: opPutMetricData, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutMetricDataInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutMetricDataOutput{} req.Data = output return } // PutMetricData API operation for Amazon CloudWatch. // // Publishes metric data points to Amazon CloudWatch. Amazon CloudWatch associates // the data points with the specified metric. If the specified metric does not // exist, Amazon CloudWatch creates the metric. When Amazon CloudWatch creates // a metric, it can take up to fifteen minutes for the metric to appear in calls // to ListMetrics. // // Each PutMetricData request is limited to 8 KB in size for HTTP GET requests // and is limited to 40 KB in size for HTTP POST requests. // // Although the Value parameter accepts numbers of type Double, Amazon CloudWatch // rejects values that are either too small or too large. Values must be in // the range of 8.515920e-109 to 1.174271e+108 (Base 10) or 2e-360 to 2e360 // (Base 2). In addition, special values (e.g., NaN, +Infinity, -Infinity) are // not supported. // // Data that is timestamped 24 hours or more in the past may take in excess // of 48 hours to become available from submission time using GetMetricStatistics. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch's // API operation PutMetricData for usage and error information. // // Returned Error Codes: // * InvalidParameterValue // Bad or out-of-range value was supplied for the input parameter. // // * MissingParameter // An input parameter that is mandatory for processing the request is not supplied. // // * InvalidParameterCombination // Parameters that must not be used together were used together. // // * InternalServiceError // Indicates that the request processing has failed due to some unknown error, // exception, or failure. // func (c *CloudWatch) PutMetricData(input *PutMetricDataInput) (*PutMetricDataOutput, error) { req, out := c.PutMetricDataRequest(input) err := req.Send() return out, err } const opSetAlarmState = "SetAlarmState" // SetAlarmStateRequest generates a "aws/request.Request" representing the // client's request for the SetAlarmState operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetAlarmState for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetAlarmState method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetAlarmStateRequest method. // req, resp := client.SetAlarmStateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatch) SetAlarmStateRequest(input *SetAlarmStateInput) (req *request.Request, output *SetAlarmStateOutput) { op := &request.Operation{ Name: opSetAlarmState, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetAlarmStateInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetAlarmStateOutput{} req.Data = output return } // SetAlarmState API operation for Amazon CloudWatch. // // Temporarily sets the state of an alarm for testing purposes. When the updated // StateValue differs from the previous value, the action configured for the // appropriate state is invoked. For example, if your alarm is configured to // send an Amazon SNS message when an alarm is triggered, temporarily changing // the alarm's state to ALARM sends an Amazon SNS message. The alarm returns // to its actual state (often within seconds). Because the alarm state change // happens very quickly, it is typically only visible in the alarm's History // tab in the Amazon CloudWatch console or through DescribeAlarmHistory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch's // API operation SetAlarmState for usage and error information. // // Returned Error Codes: // * ResourceNotFound // The named resource does not exist. // // * InvalidFormat // Data was not syntactically valid JSON. // func (c *CloudWatch) SetAlarmState(input *SetAlarmStateInput) (*SetAlarmStateOutput, error) { req, out := c.SetAlarmStateRequest(input) err := req.Send() return out, err } // The AlarmHistoryItem data type contains descriptive information about the // history of a specific alarm. If you call DescribeAlarmHistory, Amazon CloudWatch // returns this data type as part of the DescribeAlarmHistoryResult data type. type AlarmHistoryItem struct { _ struct{} `type:"structure"` // The descriptive name for the alarm. AlarmName *string `min:"1" type:"string"` // Machine-readable data about the alarm in JSON format. HistoryData *string `min:"1" type:"string"` // The type of alarm history item. HistoryItemType *string `type:"string" enum:"HistoryItemType"` // A human-readable summary of the alarm history. HistorySummary *string `min:"1" type:"string"` // The time stamp for the alarm history item. Timestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s AlarmHistoryItem) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AlarmHistoryItem) GoString() string { return s.String() } // The Datapoint data type encapsulates the statistical data that Amazon CloudWatch // computes from metric data. type Datapoint struct { _ struct{} `type:"structure"` // The average of metric values that correspond to the datapoint. Average *float64 `type:"double"` // The maximum of the metric value used for the datapoint. Maximum *float64 `type:"double"` // The minimum metric value used for the datapoint. Minimum *float64 `type:"double"` // The number of metric values that contributed to the aggregate value of this // datapoint. SampleCount *float64 `type:"double"` // The sum of metric values used for the datapoint. Sum *float64 `type:"double"` // The time stamp used for the datapoint. Timestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The standard unit used for the datapoint. Unit *string `type:"string" enum:"StandardUnit"` } // String returns the string representation func (s Datapoint) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Datapoint) GoString() string { return s.String() } // Describes the inputs for DeleteAlarms. type DeleteAlarmsInput struct { _ struct{} `type:"structure"` // A list of alarms to be deleted. // // AlarmNames is a required field AlarmNames []*string `type:"list" required:"true"` } // String returns the string representation func (s DeleteAlarmsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAlarmsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAlarmsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAlarmsInput"} if s.AlarmNames == nil { invalidParams.Add(request.NewErrParamRequired("AlarmNames")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteAlarmsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteAlarmsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAlarmsOutput) GoString() string { return s.String() } // Describes the inputs for DescribeAlarmHistory. type DescribeAlarmHistoryInput struct { _ struct{} `type:"structure"` // The name of the alarm. AlarmName *string `min:"1" type:"string"` // The ending date to retrieve alarm history. EndDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The type of alarm histories to retrieve. HistoryItemType *string `type:"string" enum:"HistoryItemType"` // The maximum number of alarm history records to retrieve. MaxRecords *int64 `min:"1" type:"integer"` // The token returned by a previous call to indicate that there is more data // available. NextToken *string `type:"string"` // The starting date to retrieve alarm history. StartDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s DescribeAlarmHistoryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAlarmHistoryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeAlarmHistoryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeAlarmHistoryInput"} if s.AlarmName != nil && len(*s.AlarmName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AlarmName", 1)) } if s.MaxRecords != nil && *s.MaxRecords < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxRecords", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for DescribeAlarmHistory. type DescribeAlarmHistoryOutput struct { _ struct{} `type:"structure"` // A list of alarm histories in JSON format. AlarmHistoryItems []*AlarmHistoryItem `type:"list"` // A string that marks the start of the next batch of returned results. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeAlarmHistoryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAlarmHistoryOutput) GoString() string { return s.String() } // Describes the inputs for DescribeAlarmsForMetric. type DescribeAlarmsForMetricInput struct { _ struct{} `type:"structure"` // The list of dimensions associated with the metric. If the metric has any // associated dimensions, you must specify them in order for the DescribeAlarmsForMetric // to succeed. Dimensions []*Dimension `type:"list"` // The name of the metric. // // MetricName is a required field MetricName *string `min:"1" type:"string" required:"true"` // The namespace of the metric. // // Namespace is a required field Namespace *string `min:"1" type:"string" required:"true"` // The period in seconds over which the statistic is applied. Period *int64 `min:"60" type:"integer"` // The statistic for the metric. Statistic *string `type:"string" enum:"Statistic"` // The unit for the metric. Unit *string `type:"string" enum:"StandardUnit"` } // String returns the string representation func (s DescribeAlarmsForMetricInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAlarmsForMetricInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeAlarmsForMetricInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeAlarmsForMetricInput"} if s.MetricName == nil { invalidParams.Add(request.NewErrParamRequired("MetricName")) } if s.MetricName != nil && len(*s.MetricName) < 1 { invalidParams.Add(request.NewErrParamMinLen("MetricName", 1)) } if s.Namespace == nil { invalidParams.Add(request.NewErrParamRequired("Namespace")) } if s.Namespace != nil && len(*s.Namespace) < 1 { invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) } if s.Period != nil && *s.Period < 60 { invalidParams.Add(request.NewErrParamMinValue("Period", 60)) } if s.Dimensions != nil { for i, v := range s.Dimensions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Dimensions", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for DescribeAlarmsForMetric. type DescribeAlarmsForMetricOutput struct { _ struct{} `type:"structure"` // A list of information for each alarm with the specified metric. MetricAlarms []*MetricAlarm `type:"list"` } // String returns the string representation func (s DescribeAlarmsForMetricOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAlarmsForMetricOutput) GoString() string { return s.String() } // Describes the inputs for DescribeAlarms. type DescribeAlarmsInput struct { _ struct{} `type:"structure"` // The action name prefix. ActionPrefix *string `min:"1" type:"string"` // The alarm name prefix. AlarmNames cannot be specified if this parameter is // specified. AlarmNamePrefix *string `min:"1" type:"string"` // A list of alarm names to retrieve information for. AlarmNames []*string `type:"list"` // The maximum number of alarm descriptions to retrieve. MaxRecords *int64 `min:"1" type:"integer"` // The token returned by a previous call to indicate that there is more data // available. NextToken *string `type:"string"` // The state value to be used in matching alarms. StateValue *string `type:"string" enum:"StateValue"` } // String returns the string representation func (s DescribeAlarmsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAlarmsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeAlarmsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeAlarmsInput"} if s.ActionPrefix != nil && len(*s.ActionPrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("ActionPrefix", 1)) } if s.AlarmNamePrefix != nil && len(*s.AlarmNamePrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("AlarmNamePrefix", 1)) } if s.MaxRecords != nil && *s.MaxRecords < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxRecords", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for DescribeAlarms. type DescribeAlarmsOutput struct { _ struct{} `type:"structure"` // A list of information for the specified alarms. MetricAlarms []*MetricAlarm `type:"list"` // A string that marks the start of the next batch of returned results. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeAlarmsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAlarmsOutput) GoString() string { return s.String() } // The Dimension data type further expands on the identity of a metric using // a Name, Value pair. // // For examples that use one or more dimensions, see PutMetricData. type Dimension struct { _ struct{} `type:"structure"` // The name of the dimension. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // The value representing the dimension measurement // // Value is a required field Value *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s Dimension) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Dimension) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Dimension) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Dimension"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if s.Value != nil && len(*s.Value) < 1 { invalidParams.Add(request.NewErrParamMinLen("Value", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The DimensionFilter data type is used to filter ListMetrics results. type DimensionFilter struct { _ struct{} `type:"structure"` // The dimension name to be matched. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // The value of the dimension to be matched. // // Specifying a Name without specifying a Value returns all values associated // with that Name. Value *string `min:"1" type:"string"` } // String returns the string representation func (s DimensionFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DimensionFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DimensionFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DimensionFilter"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Value != nil && len(*s.Value) < 1 { invalidParams.Add(request.NewErrParamMinLen("Value", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DisableAlarmActionsInput struct { _ struct{} `type:"structure"` // The names of the alarms to disable actions for. // // AlarmNames is a required field AlarmNames []*string `type:"list" required:"true"` } // String returns the string representation func (s DisableAlarmActionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableAlarmActionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisableAlarmActionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisableAlarmActionsInput"} if s.AlarmNames == nil { invalidParams.Add(request.NewErrParamRequired("AlarmNames")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DisableAlarmActionsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DisableAlarmActionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableAlarmActionsOutput) GoString() string { return s.String() } // Describes the inputs for EnableAlarmActions. type EnableAlarmActionsInput struct { _ struct{} `type:"structure"` // The names of the alarms to enable actions for. // // AlarmNames is a required field AlarmNames []*string `type:"list" required:"true"` } // String returns the string representation func (s EnableAlarmActionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableAlarmActionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableAlarmActionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableAlarmActionsInput"} if s.AlarmNames == nil { invalidParams.Add(request.NewErrParamRequired("AlarmNames")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type EnableAlarmActionsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s EnableAlarmActionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableAlarmActionsOutput) GoString() string { return s.String() } // Describes the inputs for GetMetricStatistics. type GetMetricStatisticsInput struct { _ struct{} `type:"structure"` // A list of dimensions describing qualities of the metric. Dimensions []*Dimension `type:"list"` // The time stamp to use for determining the last datapoint to return. The value // specified is exclusive; results will include datapoints up to the time stamp // specified. The time stamp must be in ISO 8601 UTC format (e.g., 2014-09-03T23:00:00Z). // // EndTime is a required field EndTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The name of the metric, with or without spaces. // // MetricName is a required field MetricName *string `min:"1" type:"string" required:"true"` // The namespace of the metric, with or without spaces. // // Namespace is a required field Namespace *string `min:"1" type:"string" required:"true"` // The granularity, in seconds, of the returned datapoints. A Period can be // as short as one minute (60 seconds) or as long as one day (86,400 seconds), // and must be a multiple of 60. The default value is 60. // // Period is a required field Period *int64 `min:"60" type:"integer" required:"true"` // The time stamp to use for determining the first datapoint to return. The // value specified is inclusive; results include datapoints with the time stamp // specified. The time stamp must be in ISO 8601 UTC format (e.g., 2014-09-03T23:00:00Z). // // The specified start time is rounded down to the nearest value. Datapoints // are returned for start times up to two weeks in the past. Specified start // times that are more than two weeks in the past will not return datapoints // for metrics that are older than two weeks. // // Data that is timestamped 24 hours or more in the past may take in excess // of 48 hours to become available from submission time using GetMetricStatistics. // // StartTime is a required field StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The metric statistics to return. For information about specific statistics // returned by GetMetricStatistics, see Statistics (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#Statistic) // in the Amazon CloudWatch Developer Guide. // // Statistics is a required field Statistics []*string `min:"1" type:"list" required:"true"` // The specific unit for a given metric. Metrics may be reported in multiple // units. Not supplying a unit results in all units being returned. If the metric // only ever reports one unit, specifying a unit will have no effect. Unit *string `type:"string" enum:"StandardUnit"` } // String returns the string representation func (s GetMetricStatisticsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetMetricStatisticsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetMetricStatisticsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetMetricStatisticsInput"} if s.EndTime == nil { invalidParams.Add(request.NewErrParamRequired("EndTime")) } if s.MetricName == nil { invalidParams.Add(request.NewErrParamRequired("MetricName")) } if s.MetricName != nil && len(*s.MetricName) < 1 { invalidParams.Add(request.NewErrParamMinLen("MetricName", 1)) } if s.Namespace == nil { invalidParams.Add(request.NewErrParamRequired("Namespace")) } if s.Namespace != nil && len(*s.Namespace) < 1 { invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) } if s.Period == nil { invalidParams.Add(request.NewErrParamRequired("Period")) } if s.Period != nil && *s.Period < 60 { invalidParams.Add(request.NewErrParamMinValue("Period", 60)) } if s.StartTime == nil { invalidParams.Add(request.NewErrParamRequired("StartTime")) } if s.Statistics == nil { invalidParams.Add(request.NewErrParamRequired("Statistics")) } if s.Statistics != nil && len(s.Statistics) < 1 { invalidParams.Add(request.NewErrParamMinLen("Statistics", 1)) } if s.Dimensions != nil { for i, v := range s.Dimensions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Dimensions", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for GetMetricStatistics. type GetMetricStatisticsOutput struct { _ struct{} `type:"structure"` // The datapoints for the specified metric. Datapoints []*Datapoint `type:"list"` // A label describing the specified metric. Label *string `type:"string"` } // String returns the string representation func (s GetMetricStatisticsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetMetricStatisticsOutput) GoString() string { return s.String() } // Describes the inputs for ListMetrics. type ListMetricsInput struct { _ struct{} `type:"structure"` // A list of dimensions to filter against. Dimensions []*DimensionFilter `type:"list"` // The name of the metric to filter against. MetricName *string `min:"1" type:"string"` // The namespace to filter against. Namespace *string `min:"1" type:"string"` // The token returned by a previous call to indicate that there is more data // available. NextToken *string `type:"string"` } // String returns the string representation func (s ListMetricsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListMetricsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListMetricsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListMetricsInput"} if s.MetricName != nil && len(*s.MetricName) < 1 { invalidParams.Add(request.NewErrParamMinLen("MetricName", 1)) } if s.Namespace != nil && len(*s.Namespace) < 1 { invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) } if s.Dimensions != nil { for i, v := range s.Dimensions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Dimensions", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for ListMetrics. type ListMetricsOutput struct { _ struct{} `type:"structure"` // A list of metrics used to generate statistics for an AWS account. Metrics []*Metric `type:"list"` // A string that marks the start of the next batch of returned results. NextToken *string `type:"string"` } // String returns the string representation func (s ListMetricsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListMetricsOutput) GoString() string { return s.String() } // The Metric data type contains information about a specific metric. If you // call ListMetrics, Amazon CloudWatch returns information contained by this // data type. // // The example in the Examples section publishes two metrics named buffers and // latency. Both metrics are in the examples namespace. Both metrics have two // dimensions, InstanceID and InstanceType. type Metric struct { _ struct{} `type:"structure"` // A list of dimensions associated with the metric. Dimensions []*Dimension `type:"list"` // The name of the metric. MetricName *string `min:"1" type:"string"` // The namespace of the metric. Namespace *string `min:"1" type:"string"` } // String returns the string representation func (s Metric) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Metric) GoString() string { return s.String() } // The MetricAlarm data type represents an alarm. You can use PutMetricAlarm // to create or update an alarm. type MetricAlarm struct { _ struct{} `type:"structure"` // Indicates whether actions should be executed during any changes to the alarm's // state. ActionsEnabled *bool `type:"boolean"` // The list of actions to execute when this alarm transitions into an ALARM // state from any other state. Each action is specified as an Amazon Resource // Name (ARN). AlarmActions []*string `type:"list"` // The Amazon Resource Name (ARN) of the alarm. AlarmArn *string `min:"1" type:"string"` // The time stamp of the last update to the alarm configuration. AlarmConfigurationUpdatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The description for the alarm. AlarmDescription *string `type:"string"` // The name of the alarm. AlarmName *string `min:"1" type:"string"` // The arithmetic operation to use when comparing the specified Statistic and // Threshold. The specified Statistic value is used as the first operand. ComparisonOperator *string `type:"string" enum:"ComparisonOperator"` // The list of dimensions associated with the alarm's associated metric. Dimensions []*Dimension `type:"list"` // The number of periods over which data is compared to the specified threshold. EvaluationPeriods *int64 `min:"1" type:"integer"` // The list of actions to execute when this alarm transitions into an INSUFFICIENT_DATA // state from any other state. Each action is specified as an Amazon Resource // Name (ARN). // // The current WSDL lists this attribute as UnknownActions. InsufficientDataActions []*string `type:"list"` // The name of the alarm's metric. MetricName *string `min:"1" type:"string"` // The namespace of alarm's associated metric. Namespace *string `min:"1" type:"string"` // The list of actions to execute when this alarm transitions into an OK state // from any other state. Each action is specified as an Amazon Resource Name // (ARN). OKActions []*string `type:"list"` // The period in seconds over which the statistic is applied. Period *int64 `min:"60" type:"integer"` // A human-readable explanation for the alarm's state. StateReason *string `type:"string"` // An explanation for the alarm's state in machine-readable JSON format StateReasonData *string `type:"string"` // The time stamp of the last update to the alarm's state. StateUpdatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The state value for the alarm. StateValue *string `type:"string" enum:"StateValue"` // The statistic to apply to the alarm's associated metric. Statistic *string `type:"string" enum:"Statistic"` // The value against which the specified statistic is compared. Threshold *float64 `type:"double"` // The unit of the alarm's associated metric. Unit *string `type:"string" enum:"StandardUnit"` } // String returns the string representation func (s MetricAlarm) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MetricAlarm) GoString() string { return s.String() } // The MetricDatum data type encapsulates the information sent with PutMetricData // to either create a new metric or add new values to be aggregated into an // existing metric. type MetricDatum struct { _ struct{} `type:"structure"` // A list of dimensions associated with the metric. Note, when using the Dimensions // value in a query, you need to append .member.N to it (e.g., Dimensions.member.N). Dimensions []*Dimension `type:"list"` // The name of the metric. // // MetricName is a required field MetricName *string `min:"1" type:"string" required:"true"` // A set of statistical values describing the metric. StatisticValues *StatisticSet `type:"structure"` // The time stamp used for the metric in ISO 8601 Universal Coordinated Time // (UTC) format. If not specified, the default value is set to the time the // metric data was received. Timestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The unit of the metric. Unit *string `type:"string" enum:"StandardUnit"` // The value for the metric. // // Although the Value parameter accepts numbers of type Double, Amazon CloudWatch // rejects values that are either too small or too large. Values must be in // the range of 8.515920e-109 to 1.174271e+108 (Base 10) or 2e-360 to 2e360 // (Base 2). In addition, special values (e.g., NaN, +Infinity, -Infinity) are // not supported. Value *float64 `type:"double"` } // String returns the string representation func (s MetricDatum) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MetricDatum) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MetricDatum) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MetricDatum"} if s.MetricName == nil { invalidParams.Add(request.NewErrParamRequired("MetricName")) } if s.MetricName != nil && len(*s.MetricName) < 1 { invalidParams.Add(request.NewErrParamMinLen("MetricName", 1)) } if s.Dimensions != nil { for i, v := range s.Dimensions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Dimensions", i), err.(request.ErrInvalidParams)) } } } if s.StatisticValues != nil { if err := s.StatisticValues.Validate(); err != nil { invalidParams.AddNested("StatisticValues", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the inputs for PutMetricAlarm. type PutMetricAlarmInput struct { _ struct{} `type:"structure"` // Indicates whether or not actions should be executed during any changes to // the alarm's state. ActionsEnabled *bool `type:"boolean"` // The list of actions to execute when this alarm transitions into an ALARM // state from any other state. Each action is specified as an Amazon Resource // Name (ARN). // // Valid Values: arn:aws:automate:region (e.g., us-east-1):ec2:stop | arn:aws:automate:region // (e.g., us-east-1):ec2:terminate | arn:aws:automate:region (e.g., us-east-1):ec2:recover // // Valid Values (for use with IAM roles): arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Stop/1.0 // | arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Terminate/1.0 // | arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Reboot/1.0 // // Note: You must create at least one stop, terminate, or reboot alarm using // the Amazon EC2 or CloudWatch console to create the EC2ActionsAccess IAM role // for the first time. After this IAM role is created, you can create stop, // terminate, or reboot alarms using the CLI. AlarmActions []*string `type:"list"` // The description for the alarm. AlarmDescription *string `type:"string"` // The descriptive name for the alarm. This name must be unique within the user's // AWS account // // AlarmName is a required field AlarmName *string `min:"1" type:"string" required:"true"` // The arithmetic operation to use when comparing the specified Statistic and // Threshold. The specified Statistic value is used as the first operand. // // ComparisonOperator is a required field ComparisonOperator *string `type:"string" required:"true" enum:"ComparisonOperator"` // The dimensions for the alarm's associated metric. Dimensions []*Dimension `type:"list"` // The number of periods over which data is compared to the specified threshold. // // EvaluationPeriods is a required field EvaluationPeriods *int64 `min:"1" type:"integer" required:"true"` // The list of actions to execute when this alarm transitions into an INSUFFICIENT_DATA // state from any other state. Each action is specified as an Amazon Resource // Name (ARN). // // Valid Values: arn:aws:automate:region (e.g., us-east-1):ec2:stop | arn:aws:automate:region // (e.g., us-east-1):ec2:terminate | arn:aws:automate:region (e.g., us-east-1):ec2:recover // // Valid Values (for use with IAM roles): arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Stop/1.0 // | arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Terminate/1.0 // | arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Reboot/1.0 // // Note: You must create at least one stop, terminate, or reboot alarm using // the Amazon EC2 or CloudWatch console to create the EC2ActionsAccess IAM role // for the first time. After this IAM role is created, you can create stop, // terminate, or reboot alarms using the CLI. InsufficientDataActions []*string `type:"list"` // The name for the alarm's associated metric. // // MetricName is a required field MetricName *string `min:"1" type:"string" required:"true"` // The namespace for the alarm's associated metric. // // Namespace is a required field Namespace *string `min:"1" type:"string" required:"true"` // The list of actions to execute when this alarm transitions into an OK state // from any other state. Each action is specified as an Amazon Resource Name // (ARN). // // Valid Values: arn:aws:automate:region (e.g., us-east-1):ec2:stop | arn:aws:automate:region // (e.g., us-east-1):ec2:terminate | arn:aws:automate:region (e.g., us-east-1):ec2:recover // // Valid Values (for use with IAM roles): arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Stop/1.0 // | arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Terminate/1.0 // | arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Reboot/1.0 // // Note: You must create at least one stop, terminate, or reboot alarm using // the Amazon EC2 or CloudWatch console to create the EC2ActionsAccess IAM role // for the first time. After this IAM role is created, you can create stop, // terminate, or reboot alarms using the CLI. OKActions []*string `type:"list"` // The period in seconds over which the specified statistic is applied. // // Period is a required field Period *int64 `min:"60" type:"integer" required:"true"` // The statistic to apply to the alarm's associated metric. // // Statistic is a required field Statistic *string `type:"string" required:"true" enum:"Statistic"` // The value against which the specified statistic is compared. // // Threshold is a required field Threshold *float64 `type:"double" required:"true"` // The statistic's unit of measure. For example, the units for the Amazon EC2 // NetworkIn metric are Bytes because NetworkIn tracks the number of bytes that // an instance receives on all network interfaces. You can also specify a unit // when you create a custom metric. Units help provide conceptual meaning to // your data. Metric data points that specify a unit of measure, such as Percent, // are aggregated separately. // // Note: If you specify a unit, you must use a unit that is appropriate for // the metric. Otherwise, this can cause an Amazon CloudWatch alarm to get stuck // in the INSUFFICIENT DATA state. Unit *string `type:"string" enum:"StandardUnit"` } // String returns the string representation func (s PutMetricAlarmInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutMetricAlarmInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutMetricAlarmInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutMetricAlarmInput"} if s.AlarmName == nil { invalidParams.Add(request.NewErrParamRequired("AlarmName")) } if s.AlarmName != nil && len(*s.AlarmName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AlarmName", 1)) } if s.ComparisonOperator == nil { invalidParams.Add(request.NewErrParamRequired("ComparisonOperator")) } if s.EvaluationPeriods == nil { invalidParams.Add(request.NewErrParamRequired("EvaluationPeriods")) } if s.EvaluationPeriods != nil && *s.EvaluationPeriods < 1 { invalidParams.Add(request.NewErrParamMinValue("EvaluationPeriods", 1)) } if s.MetricName == nil { invalidParams.Add(request.NewErrParamRequired("MetricName")) } if s.MetricName != nil && len(*s.MetricName) < 1 { invalidParams.Add(request.NewErrParamMinLen("MetricName", 1)) } if s.Namespace == nil { invalidParams.Add(request.NewErrParamRequired("Namespace")) } if s.Namespace != nil && len(*s.Namespace) < 1 { invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) } if s.Period == nil { invalidParams.Add(request.NewErrParamRequired("Period")) } if s.Period != nil && *s.Period < 60 { invalidParams.Add(request.NewErrParamMinValue("Period", 60)) } if s.Statistic == nil { invalidParams.Add(request.NewErrParamRequired("Statistic")) } if s.Threshold == nil { invalidParams.Add(request.NewErrParamRequired("Threshold")) } if s.Dimensions != nil { for i, v := range s.Dimensions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Dimensions", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutMetricAlarmOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutMetricAlarmOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutMetricAlarmOutput) GoString() string { return s.String() } // Describes the inputs for PutMetricData. type PutMetricDataInput struct { _ struct{} `type:"structure"` // A list of data describing the metric. // // MetricData is a required field MetricData []*MetricDatum `type:"list" required:"true"` // The namespace for the metric data. // // You cannot specify a namespace that begins with "AWS/". Namespaces that begin // with "AWS/" are reserved for other Amazon Web Services products that send // metrics to Amazon CloudWatch. // // Namespace is a required field Namespace *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s PutMetricDataInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutMetricDataInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutMetricDataInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutMetricDataInput"} if s.MetricData == nil { invalidParams.Add(request.NewErrParamRequired("MetricData")) } if s.Namespace == nil { invalidParams.Add(request.NewErrParamRequired("Namespace")) } if s.Namespace != nil && len(*s.Namespace) < 1 { invalidParams.Add(request.NewErrParamMinLen("Namespace", 1)) } if s.MetricData != nil { for i, v := range s.MetricData { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MetricData", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutMetricDataOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutMetricDataOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutMetricDataOutput) GoString() string { return s.String() } // Describes the inputs for SetAlarmState. type SetAlarmStateInput struct { _ struct{} `type:"structure"` // The descriptive name for the alarm. This name must be unique within the user's // AWS account. The maximum length is 255 characters. // // AlarmName is a required field AlarmName *string `min:"1" type:"string" required:"true"` // The reason that this alarm is set to this specific state (in human-readable // text format) // // StateReason is a required field StateReason *string `type:"string" required:"true"` // The reason that this alarm is set to this specific state (in machine-readable // JSON format) StateReasonData *string `type:"string"` // The value of the state. // // StateValue is a required field StateValue *string `type:"string" required:"true" enum:"StateValue"` } // String returns the string representation func (s SetAlarmStateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetAlarmStateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetAlarmStateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetAlarmStateInput"} if s.AlarmName == nil { invalidParams.Add(request.NewErrParamRequired("AlarmName")) } if s.AlarmName != nil && len(*s.AlarmName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AlarmName", 1)) } if s.StateReason == nil { invalidParams.Add(request.NewErrParamRequired("StateReason")) } if s.StateValue == nil { invalidParams.Add(request.NewErrParamRequired("StateValue")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetAlarmStateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetAlarmStateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetAlarmStateOutput) GoString() string { return s.String() } // The StatisticSet data type describes the StatisticValues component of MetricDatum, // and represents a set of statistics that describes a specific metric. type StatisticSet struct { _ struct{} `type:"structure"` // The maximum value of the sample set. // // Maximum is a required field Maximum *float64 `type:"double" required:"true"` // The minimum value of the sample set. // // Minimum is a required field Minimum *float64 `type:"double" required:"true"` // The number of samples used for the statistic set. // // SampleCount is a required field SampleCount *float64 `type:"double" required:"true"` // The sum of values for the sample set. // // Sum is a required field Sum *float64 `type:"double" required:"true"` } // String returns the string representation func (s StatisticSet) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StatisticSet) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StatisticSet) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StatisticSet"} if s.Maximum == nil { invalidParams.Add(request.NewErrParamRequired("Maximum")) } if s.Minimum == nil { invalidParams.Add(request.NewErrParamRequired("Minimum")) } if s.SampleCount == nil { invalidParams.Add(request.NewErrParamRequired("SampleCount")) } if s.Sum == nil { invalidParams.Add(request.NewErrParamRequired("Sum")) } if invalidParams.Len() > 0 { return invalidParams } return nil } const ( // ComparisonOperatorGreaterThanOrEqualToThreshold is a ComparisonOperator enum value ComparisonOperatorGreaterThanOrEqualToThreshold = "GreaterThanOrEqualToThreshold" // ComparisonOperatorGreaterThanThreshold is a ComparisonOperator enum value ComparisonOperatorGreaterThanThreshold = "GreaterThanThreshold" // ComparisonOperatorLessThanThreshold is a ComparisonOperator enum value ComparisonOperatorLessThanThreshold = "LessThanThreshold" // ComparisonOperatorLessThanOrEqualToThreshold is a ComparisonOperator enum value ComparisonOperatorLessThanOrEqualToThreshold = "LessThanOrEqualToThreshold" ) const ( // HistoryItemTypeConfigurationUpdate is a HistoryItemType enum value HistoryItemTypeConfigurationUpdate = "ConfigurationUpdate" // HistoryItemTypeStateUpdate is a HistoryItemType enum value HistoryItemTypeStateUpdate = "StateUpdate" // HistoryItemTypeAction is a HistoryItemType enum value HistoryItemTypeAction = "Action" ) const ( // StandardUnitSeconds is a StandardUnit enum value StandardUnitSeconds = "Seconds" // StandardUnitMicroseconds is a StandardUnit enum value StandardUnitMicroseconds = "Microseconds" // StandardUnitMilliseconds is a StandardUnit enum value StandardUnitMilliseconds = "Milliseconds" // StandardUnitBytes is a StandardUnit enum value StandardUnitBytes = "Bytes" // StandardUnitKilobytes is a StandardUnit enum value StandardUnitKilobytes = "Kilobytes" // StandardUnitMegabytes is a StandardUnit enum value StandardUnitMegabytes = "Megabytes" // StandardUnitGigabytes is a StandardUnit enum value StandardUnitGigabytes = "Gigabytes" // StandardUnitTerabytes is a StandardUnit enum value StandardUnitTerabytes = "Terabytes" // StandardUnitBits is a StandardUnit enum value StandardUnitBits = "Bits" // StandardUnitKilobits is a StandardUnit enum value StandardUnitKilobits = "Kilobits" // StandardUnitMegabits is a StandardUnit enum value StandardUnitMegabits = "Megabits" // StandardUnitGigabits is a StandardUnit enum value StandardUnitGigabits = "Gigabits" // StandardUnitTerabits is a StandardUnit enum value StandardUnitTerabits = "Terabits" // StandardUnitPercent is a StandardUnit enum value StandardUnitPercent = "Percent" // StandardUnitCount is a StandardUnit enum value StandardUnitCount = "Count" // StandardUnitBytesSecond is a StandardUnit enum value StandardUnitBytesSecond = "Bytes/Second" // StandardUnitKilobytesSecond is a StandardUnit enum value StandardUnitKilobytesSecond = "Kilobytes/Second" // StandardUnitMegabytesSecond is a StandardUnit enum value StandardUnitMegabytesSecond = "Megabytes/Second" // StandardUnitGigabytesSecond is a StandardUnit enum value StandardUnitGigabytesSecond = "Gigabytes/Second" // StandardUnitTerabytesSecond is a StandardUnit enum value StandardUnitTerabytesSecond = "Terabytes/Second" // StandardUnitBitsSecond is a StandardUnit enum value StandardUnitBitsSecond = "Bits/Second" // StandardUnitKilobitsSecond is a StandardUnit enum value StandardUnitKilobitsSecond = "Kilobits/Second" // StandardUnitMegabitsSecond is a StandardUnit enum value StandardUnitMegabitsSecond = "Megabits/Second" // StandardUnitGigabitsSecond is a StandardUnit enum value StandardUnitGigabitsSecond = "Gigabits/Second" // StandardUnitTerabitsSecond is a StandardUnit enum value StandardUnitTerabitsSecond = "Terabits/Second" // StandardUnitCountSecond is a StandardUnit enum value StandardUnitCountSecond = "Count/Second" // StandardUnitNone is a StandardUnit enum value StandardUnitNone = "None" ) const ( // StateValueOk is a StateValue enum value StateValueOk = "OK" // StateValueAlarm is a StateValue enum value StateValueAlarm = "ALARM" // StateValueInsufficientData is a StateValue enum value StateValueInsufficientData = "INSUFFICIENT_DATA" ) const ( // StatisticSampleCount is a Statistic enum value StatisticSampleCount = "SampleCount" // StatisticAverage is a Statistic enum value StatisticAverage = "Average" // StatisticSum is a Statistic enum value StatisticSum = "Sum" // StatisticMinimum is a Statistic enum value StatisticMinimum = "Minimum" // StatisticMaximum is a Statistic enum value StatisticMaximum = "Maximum" ) aws-sdk-go-1.4.22/service/cloudwatch/cloudwatchiface/000077500000000000000000000000001300374646400225055ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudwatch/cloudwatchiface/interface.go000066400000000000000000000115631300374646400250020ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cloudwatchiface provides an interface to enable mocking the Amazon CloudWatch service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package cloudwatchiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/cloudwatch" ) // CloudWatchAPI provides an interface to enable mocking the // cloudwatch.CloudWatch service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon CloudWatch. // func myFunc(svc cloudwatchiface.CloudWatchAPI) bool { // // Make svc.DeleteAlarms request // } // // func main() { // sess := session.New() // svc := cloudwatch.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockCloudWatchClient struct { // cloudwatchiface.CloudWatchAPI // } // func (m *mockCloudWatchClient) DeleteAlarms(input *cloudwatch.DeleteAlarmsInput) (*cloudwatch.DeleteAlarmsOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockCloudWatchClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type CloudWatchAPI interface { DeleteAlarmsRequest(*cloudwatch.DeleteAlarmsInput) (*request.Request, *cloudwatch.DeleteAlarmsOutput) DeleteAlarms(*cloudwatch.DeleteAlarmsInput) (*cloudwatch.DeleteAlarmsOutput, error) DescribeAlarmHistoryRequest(*cloudwatch.DescribeAlarmHistoryInput) (*request.Request, *cloudwatch.DescribeAlarmHistoryOutput) DescribeAlarmHistory(*cloudwatch.DescribeAlarmHistoryInput) (*cloudwatch.DescribeAlarmHistoryOutput, error) DescribeAlarmHistoryPages(*cloudwatch.DescribeAlarmHistoryInput, func(*cloudwatch.DescribeAlarmHistoryOutput, bool) bool) error DescribeAlarmsRequest(*cloudwatch.DescribeAlarmsInput) (*request.Request, *cloudwatch.DescribeAlarmsOutput) DescribeAlarms(*cloudwatch.DescribeAlarmsInput) (*cloudwatch.DescribeAlarmsOutput, error) DescribeAlarmsPages(*cloudwatch.DescribeAlarmsInput, func(*cloudwatch.DescribeAlarmsOutput, bool) bool) error DescribeAlarmsForMetricRequest(*cloudwatch.DescribeAlarmsForMetricInput) (*request.Request, *cloudwatch.DescribeAlarmsForMetricOutput) DescribeAlarmsForMetric(*cloudwatch.DescribeAlarmsForMetricInput) (*cloudwatch.DescribeAlarmsForMetricOutput, error) DisableAlarmActionsRequest(*cloudwatch.DisableAlarmActionsInput) (*request.Request, *cloudwatch.DisableAlarmActionsOutput) DisableAlarmActions(*cloudwatch.DisableAlarmActionsInput) (*cloudwatch.DisableAlarmActionsOutput, error) EnableAlarmActionsRequest(*cloudwatch.EnableAlarmActionsInput) (*request.Request, *cloudwatch.EnableAlarmActionsOutput) EnableAlarmActions(*cloudwatch.EnableAlarmActionsInput) (*cloudwatch.EnableAlarmActionsOutput, error) GetMetricStatisticsRequest(*cloudwatch.GetMetricStatisticsInput) (*request.Request, *cloudwatch.GetMetricStatisticsOutput) GetMetricStatistics(*cloudwatch.GetMetricStatisticsInput) (*cloudwatch.GetMetricStatisticsOutput, error) ListMetricsRequest(*cloudwatch.ListMetricsInput) (*request.Request, *cloudwatch.ListMetricsOutput) ListMetrics(*cloudwatch.ListMetricsInput) (*cloudwatch.ListMetricsOutput, error) ListMetricsPages(*cloudwatch.ListMetricsInput, func(*cloudwatch.ListMetricsOutput, bool) bool) error PutMetricAlarmRequest(*cloudwatch.PutMetricAlarmInput) (*request.Request, *cloudwatch.PutMetricAlarmOutput) PutMetricAlarm(*cloudwatch.PutMetricAlarmInput) (*cloudwatch.PutMetricAlarmOutput, error) PutMetricDataRequest(*cloudwatch.PutMetricDataInput) (*request.Request, *cloudwatch.PutMetricDataOutput) PutMetricData(*cloudwatch.PutMetricDataInput) (*cloudwatch.PutMetricDataOutput, error) SetAlarmStateRequest(*cloudwatch.SetAlarmStateInput) (*request.Request, *cloudwatch.SetAlarmStateOutput) SetAlarmState(*cloudwatch.SetAlarmStateInput) (*cloudwatch.SetAlarmStateOutput, error) WaitUntilAlarmExists(*cloudwatch.DescribeAlarmsInput) error } var _ CloudWatchAPI = (*cloudwatch.CloudWatch)(nil) aws-sdk-go-1.4.22/service/cloudwatch/examples_test.go000066400000000000000000000234001300374646400225630ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudwatch_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/cloudwatch" ) var _ time.Duration var _ bytes.Buffer func ExampleCloudWatch_DeleteAlarms() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatch.New(sess) params := &cloudwatch.DeleteAlarmsInput{ AlarmNames: []*string{ // Required aws.String("AlarmName"), // Required // More values... }, } resp, err := svc.DeleteAlarms(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatch_DescribeAlarmHistory() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatch.New(sess) params := &cloudwatch.DescribeAlarmHistoryInput{ AlarmName: aws.String("AlarmName"), EndDate: aws.Time(time.Now()), HistoryItemType: aws.String("HistoryItemType"), MaxRecords: aws.Int64(1), NextToken: aws.String("NextToken"), StartDate: aws.Time(time.Now()), } resp, err := svc.DescribeAlarmHistory(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatch_DescribeAlarms() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatch.New(sess) params := &cloudwatch.DescribeAlarmsInput{ ActionPrefix: aws.String("ActionPrefix"), AlarmNamePrefix: aws.String("AlarmNamePrefix"), AlarmNames: []*string{ aws.String("AlarmName"), // Required // More values... }, MaxRecords: aws.Int64(1), NextToken: aws.String("NextToken"), StateValue: aws.String("StateValue"), } resp, err := svc.DescribeAlarms(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatch_DescribeAlarmsForMetric() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatch.New(sess) params := &cloudwatch.DescribeAlarmsForMetricInput{ MetricName: aws.String("MetricName"), // Required Namespace: aws.String("Namespace"), // Required Dimensions: []*cloudwatch.Dimension{ { // Required Name: aws.String("DimensionName"), // Required Value: aws.String("DimensionValue"), // Required }, // More values... }, Period: aws.Int64(1), Statistic: aws.String("Statistic"), Unit: aws.String("StandardUnit"), } resp, err := svc.DescribeAlarmsForMetric(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatch_DisableAlarmActions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatch.New(sess) params := &cloudwatch.DisableAlarmActionsInput{ AlarmNames: []*string{ // Required aws.String("AlarmName"), // Required // More values... }, } resp, err := svc.DisableAlarmActions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatch_EnableAlarmActions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatch.New(sess) params := &cloudwatch.EnableAlarmActionsInput{ AlarmNames: []*string{ // Required aws.String("AlarmName"), // Required // More values... }, } resp, err := svc.EnableAlarmActions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatch_GetMetricStatistics() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatch.New(sess) params := &cloudwatch.GetMetricStatisticsInput{ EndTime: aws.Time(time.Now()), // Required MetricName: aws.String("MetricName"), // Required Namespace: aws.String("Namespace"), // Required Period: aws.Int64(1), // Required StartTime: aws.Time(time.Now()), // Required Statistics: []*string{ // Required aws.String("Statistic"), // Required // More values... }, Dimensions: []*cloudwatch.Dimension{ { // Required Name: aws.String("DimensionName"), // Required Value: aws.String("DimensionValue"), // Required }, // More values... }, Unit: aws.String("StandardUnit"), } resp, err := svc.GetMetricStatistics(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatch_ListMetrics() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatch.New(sess) params := &cloudwatch.ListMetricsInput{ Dimensions: []*cloudwatch.DimensionFilter{ { // Required Name: aws.String("DimensionName"), // Required Value: aws.String("DimensionValue"), }, // More values... }, MetricName: aws.String("MetricName"), Namespace: aws.String("Namespace"), NextToken: aws.String("NextToken"), } resp, err := svc.ListMetrics(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatch_PutMetricAlarm() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatch.New(sess) params := &cloudwatch.PutMetricAlarmInput{ AlarmName: aws.String("AlarmName"), // Required ComparisonOperator: aws.String("ComparisonOperator"), // Required EvaluationPeriods: aws.Int64(1), // Required MetricName: aws.String("MetricName"), // Required Namespace: aws.String("Namespace"), // Required Period: aws.Int64(1), // Required Statistic: aws.String("Statistic"), // Required Threshold: aws.Float64(1.0), // Required ActionsEnabled: aws.Bool(true), AlarmActions: []*string{ aws.String("ResourceName"), // Required // More values... }, AlarmDescription: aws.String("AlarmDescription"), Dimensions: []*cloudwatch.Dimension{ { // Required Name: aws.String("DimensionName"), // Required Value: aws.String("DimensionValue"), // Required }, // More values... }, InsufficientDataActions: []*string{ aws.String("ResourceName"), // Required // More values... }, OKActions: []*string{ aws.String("ResourceName"), // Required // More values... }, Unit: aws.String("StandardUnit"), } resp, err := svc.PutMetricAlarm(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatch_PutMetricData() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatch.New(sess) params := &cloudwatch.PutMetricDataInput{ MetricData: []*cloudwatch.MetricDatum{ // Required { // Required MetricName: aws.String("MetricName"), // Required Dimensions: []*cloudwatch.Dimension{ { // Required Name: aws.String("DimensionName"), // Required Value: aws.String("DimensionValue"), // Required }, // More values... }, StatisticValues: &cloudwatch.StatisticSet{ Maximum: aws.Float64(1.0), // Required Minimum: aws.Float64(1.0), // Required SampleCount: aws.Float64(1.0), // Required Sum: aws.Float64(1.0), // Required }, Timestamp: aws.Time(time.Now()), Unit: aws.String("StandardUnit"), Value: aws.Float64(1.0), }, // More values... }, Namespace: aws.String("Namespace"), // Required } resp, err := svc.PutMetricData(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatch_SetAlarmState() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatch.New(sess) params := &cloudwatch.SetAlarmStateInput{ AlarmName: aws.String("AlarmName"), // Required StateReason: aws.String("StateReason"), // Required StateValue: aws.String("StateValue"), // Required StateReasonData: aws.String("StateReasonData"), } resp, err := svc.SetAlarmState(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/cloudwatch/service.go000066400000000000000000000071041300374646400213510ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudwatch import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/query" ) // Amazon CloudWatch monitors your Amazon Web Services (AWS) resources and the // applications you run on AWS in real-time. You can use CloudWatch to collect // and track metrics, which are the variables you want to measure for your resources // and applications. // // CloudWatch alarms send notifications or automatically make changes to the // resources you are monitoring based on rules that you define. For example, // you can monitor the CPU usage and disk reads and writes of your Amazon Elastic // Compute Cloud (Amazon EC2) instances and then use this data to determine // whether you should launch additional instances to handle increased load. // You can also use this data to stop under-used instances to save money. // // In addition to monitoring the built-in metrics that come with AWS, you can // monitor your own custom metrics. With CloudWatch, you gain system-wide visibility // into resource utilization, application performance, and operational health. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type CloudWatch struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "monitoring" // New creates a new instance of the CloudWatch client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a CloudWatch client from just a session. // svc := cloudwatch.New(mySession) // // // Create a CloudWatch client with additional configuration // svc := cloudwatch.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *CloudWatch { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *CloudWatch { svc := &CloudWatch{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2010-08-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a CloudWatch operation and runs any // custom request initialization. func (c *CloudWatch) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/cloudwatch/waiters.go000066400000000000000000000014271300374646400213710ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudwatch import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilAlarmExists uses the CloudWatch API operation // DescribeAlarms to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *CloudWatch) WaitUntilAlarmExists(input *DescribeAlarmsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeAlarms", Delay: 5, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "path", Argument: "length(MetricAlarms[]) > `0`", Expected: true, }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/cloudwatchevents/000077500000000000000000000000001300374646400206055ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudwatchevents/api.go000066400000000000000000001653521300374646400217210ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cloudwatchevents provides a client for Amazon CloudWatch Events. package cloudwatchevents import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opDeleteRule = "DeleteRule" // DeleteRuleRequest generates a "aws/request.Request" representing the // client's request for the DeleteRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteRuleRequest method. // req, resp := client.DeleteRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchEvents) DeleteRuleRequest(input *DeleteRuleInput) (req *request.Request, output *DeleteRuleOutput) { op := &request.Operation{ Name: opDeleteRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteRuleInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteRuleOutput{} req.Data = output return } // DeleteRule API operation for Amazon CloudWatch Events. // // Deletes a rule. You must remove all targets from a rule using RemoveTargets // before you can delete the rule. // // Note: When you delete a rule, incoming events might still continue to match // to the deleted rule. Please allow a short period of time for changes to take // effect. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Events's // API operation DeleteRule for usage and error information. // // Returned Error Codes: // * ConcurrentModificationException // This exception occurs if there is concurrent modification on rule or target. // // * InternalException // This exception occurs due to unexpected causes. // func (c *CloudWatchEvents) DeleteRule(input *DeleteRuleInput) (*DeleteRuleOutput, error) { req, out := c.DeleteRuleRequest(input) err := req.Send() return out, err } const opDescribeRule = "DescribeRule" // DescribeRuleRequest generates a "aws/request.Request" representing the // client's request for the DescribeRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeRuleRequest method. // req, resp := client.DescribeRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchEvents) DescribeRuleRequest(input *DescribeRuleInput) (req *request.Request, output *DescribeRuleOutput) { op := &request.Operation{ Name: opDescribeRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeRuleInput{} } req = c.newRequest(op, input, output) output = &DescribeRuleOutput{} req.Data = output return } // DescribeRule API operation for Amazon CloudWatch Events. // // Describes the details of the specified rule. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Events's // API operation DescribeRule for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The rule does not exist. // // * InternalException // This exception occurs due to unexpected causes. // func (c *CloudWatchEvents) DescribeRule(input *DescribeRuleInput) (*DescribeRuleOutput, error) { req, out := c.DescribeRuleRequest(input) err := req.Send() return out, err } const opDisableRule = "DisableRule" // DisableRuleRequest generates a "aws/request.Request" representing the // client's request for the DisableRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableRuleRequest method. // req, resp := client.DisableRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchEvents) DisableRuleRequest(input *DisableRuleInput) (req *request.Request, output *DisableRuleOutput) { op := &request.Operation{ Name: opDisableRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableRuleInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DisableRuleOutput{} req.Data = output return } // DisableRule API operation for Amazon CloudWatch Events. // // Disables a rule. A disabled rule won't match any events, and won't self-trigger // if it has a schedule expression. // // Note: When you disable a rule, incoming events might still continue to match // to the disabled rule. Please allow a short period of time for changes to // take effect. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Events's // API operation DisableRule for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The rule does not exist. // // * ConcurrentModificationException // This exception occurs if there is concurrent modification on rule or target. // // * InternalException // This exception occurs due to unexpected causes. // func (c *CloudWatchEvents) DisableRule(input *DisableRuleInput) (*DisableRuleOutput, error) { req, out := c.DisableRuleRequest(input) err := req.Send() return out, err } const opEnableRule = "EnableRule" // EnableRuleRequest generates a "aws/request.Request" representing the // client's request for the EnableRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableRuleRequest method. // req, resp := client.EnableRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchEvents) EnableRuleRequest(input *EnableRuleInput) (req *request.Request, output *EnableRuleOutput) { op := &request.Operation{ Name: opEnableRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableRuleInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &EnableRuleOutput{} req.Data = output return } // EnableRule API operation for Amazon CloudWatch Events. // // Enables a rule. If the rule does not exist, the operation fails. // // Note: When you enable a rule, incoming events might not immediately start // matching to a newly enabled rule. Please allow a short period of time for // changes to take effect. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Events's // API operation EnableRule for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The rule does not exist. // // * ConcurrentModificationException // This exception occurs if there is concurrent modification on rule or target. // // * InternalException // This exception occurs due to unexpected causes. // func (c *CloudWatchEvents) EnableRule(input *EnableRuleInput) (*EnableRuleOutput, error) { req, out := c.EnableRuleRequest(input) err := req.Send() return out, err } const opListRuleNamesByTarget = "ListRuleNamesByTarget" // ListRuleNamesByTargetRequest generates a "aws/request.Request" representing the // client's request for the ListRuleNamesByTarget operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListRuleNamesByTarget for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListRuleNamesByTarget method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListRuleNamesByTargetRequest method. // req, resp := client.ListRuleNamesByTargetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchEvents) ListRuleNamesByTargetRequest(input *ListRuleNamesByTargetInput) (req *request.Request, output *ListRuleNamesByTargetOutput) { op := &request.Operation{ Name: opListRuleNamesByTarget, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListRuleNamesByTargetInput{} } req = c.newRequest(op, input, output) output = &ListRuleNamesByTargetOutput{} req.Data = output return } // ListRuleNamesByTarget API operation for Amazon CloudWatch Events. // // Lists the names of the rules that the given target is put to. You can see // which of the rules in Amazon CloudWatch Events can invoke a specific target // in your account. If you have more rules in your account than the given limit, // the results will be paginated. In that case, use the next token returned // in the response and repeat ListRulesByTarget until the NextToken in the response // is returned as null. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Events's // API operation ListRuleNamesByTarget for usage and error information. // // Returned Error Codes: // * InternalException // This exception occurs due to unexpected causes. // func (c *CloudWatchEvents) ListRuleNamesByTarget(input *ListRuleNamesByTargetInput) (*ListRuleNamesByTargetOutput, error) { req, out := c.ListRuleNamesByTargetRequest(input) err := req.Send() return out, err } const opListRules = "ListRules" // ListRulesRequest generates a "aws/request.Request" representing the // client's request for the ListRules operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListRules for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListRules method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListRulesRequest method. // req, resp := client.ListRulesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchEvents) ListRulesRequest(input *ListRulesInput) (req *request.Request, output *ListRulesOutput) { op := &request.Operation{ Name: opListRules, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListRulesInput{} } req = c.newRequest(op, input, output) output = &ListRulesOutput{} req.Data = output return } // ListRules API operation for Amazon CloudWatch Events. // // Lists the Amazon CloudWatch Events rules in your account. You can either // list all the rules or you can provide a prefix to match to the rule names. // If you have more rules in your account than the given limit, the results // will be paginated. In that case, use the next token returned in the response // and repeat ListRules until the NextToken in the response is returned as null. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Events's // API operation ListRules for usage and error information. // // Returned Error Codes: // * InternalException // This exception occurs due to unexpected causes. // func (c *CloudWatchEvents) ListRules(input *ListRulesInput) (*ListRulesOutput, error) { req, out := c.ListRulesRequest(input) err := req.Send() return out, err } const opListTargetsByRule = "ListTargetsByRule" // ListTargetsByRuleRequest generates a "aws/request.Request" representing the // client's request for the ListTargetsByRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTargetsByRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTargetsByRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTargetsByRuleRequest method. // req, resp := client.ListTargetsByRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchEvents) ListTargetsByRuleRequest(input *ListTargetsByRuleInput) (req *request.Request, output *ListTargetsByRuleOutput) { op := &request.Operation{ Name: opListTargetsByRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListTargetsByRuleInput{} } req = c.newRequest(op, input, output) output = &ListTargetsByRuleOutput{} req.Data = output return } // ListTargetsByRule API operation for Amazon CloudWatch Events. // // Lists of targets assigned to the rule. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Events's // API operation ListTargetsByRule for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The rule does not exist. // // * InternalException // This exception occurs due to unexpected causes. // func (c *CloudWatchEvents) ListTargetsByRule(input *ListTargetsByRuleInput) (*ListTargetsByRuleOutput, error) { req, out := c.ListTargetsByRuleRequest(input) err := req.Send() return out, err } const opPutEvents = "PutEvents" // PutEventsRequest generates a "aws/request.Request" representing the // client's request for the PutEvents operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutEvents for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutEvents method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutEventsRequest method. // req, resp := client.PutEventsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchEvents) PutEventsRequest(input *PutEventsInput) (req *request.Request, output *PutEventsOutput) { op := &request.Operation{ Name: opPutEvents, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutEventsInput{} } req = c.newRequest(op, input, output) output = &PutEventsOutput{} req.Data = output return } // PutEvents API operation for Amazon CloudWatch Events. // // Sends custom events to Amazon CloudWatch Events so that they can be matched // to rules. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Events's // API operation PutEvents for usage and error information. // // Returned Error Codes: // * InternalException // This exception occurs due to unexpected causes. // func (c *CloudWatchEvents) PutEvents(input *PutEventsInput) (*PutEventsOutput, error) { req, out := c.PutEventsRequest(input) err := req.Send() return out, err } const opPutRule = "PutRule" // PutRuleRequest generates a "aws/request.Request" representing the // client's request for the PutRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutRuleRequest method. // req, resp := client.PutRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchEvents) PutRuleRequest(input *PutRuleInput) (req *request.Request, output *PutRuleOutput) { op := &request.Operation{ Name: opPutRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutRuleInput{} } req = c.newRequest(op, input, output) output = &PutRuleOutput{} req.Data = output return } // PutRule API operation for Amazon CloudWatch Events. // // Creates or updates a rule. Rules are enabled by default, or based on value // of the State parameter. You can disable a rule using DisableRule. // // Note: When you create or update a rule, incoming events might not immediately // start matching to new or updated rules. Please allow a short period of time // for changes to take effect. // // A rule must contain at least an EventPattern or ScheduleExpression. Rules // with EventPatterns are triggered when a matching event is observed. Rules // with ScheduleExpressions self-trigger based on the given schedule. A rule // can have both an EventPattern and a ScheduleExpression, in which case the // rule will trigger on matching events as well as on a schedule. // // Note: Most services in AWS treat : or / as the same character in Amazon Resource // Names (ARNs). However, CloudWatch Events uses an exact match in event patterns // and rules. Be sure to use the correct ARN characters when creating event // patterns so that they match the ARN syntax in the event you want to match. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Events's // API operation PutRule for usage and error information. // // Returned Error Codes: // * InvalidEventPatternException // The event pattern is invalid. // // * LimitExceededException // This exception occurs if you try to create more rules or add more targets // to a rule than allowed by default. // // * ConcurrentModificationException // This exception occurs if there is concurrent modification on rule or target. // // * InternalException // This exception occurs due to unexpected causes. // func (c *CloudWatchEvents) PutRule(input *PutRuleInput) (*PutRuleOutput, error) { req, out := c.PutRuleRequest(input) err := req.Send() return out, err } const opPutTargets = "PutTargets" // PutTargetsRequest generates a "aws/request.Request" representing the // client's request for the PutTargets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutTargets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutTargets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutTargetsRequest method. // req, resp := client.PutTargetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchEvents) PutTargetsRequest(input *PutTargetsInput) (req *request.Request, output *PutTargetsOutput) { op := &request.Operation{ Name: opPutTargets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutTargetsInput{} } req = c.newRequest(op, input, output) output = &PutTargetsOutput{} req.Data = output return } // PutTargets API operation for Amazon CloudWatch Events. // // Adds target(s) to a rule. Targets are the resources that can be invoked when // a rule is triggered. For example, AWS Lambda functions, Amazon Kinesis streams, // and built-in targets. Updates the target(s) if they are already associated // with the role. In other words, if there is already a target with the given // target ID, then the target associated with that ID is updated. // // In order to be able to make API calls against the resources you own, Amazon // CloudWatch Events needs the appropriate permissions. For AWS Lambda and Amazon // SNS resources, CloudWatch Events relies on resource-based policies. For Amazon // Kinesis streams, CloudWatch Events relies on IAM roles. For more information, // see Permissions for Sending Events to Targets (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/EventsTargetPermissions.html) // in the Amazon CloudWatch Developer Guide. // // Input and InputPath are mutually-exclusive and optional parameters of a target. // When a rule is triggered due to a matched event, if for a target: // // * Neither Input nor InputPath is specified, then the entire event is passed // to the target in JSON form. // * InputPath is specified in the form of JSONPath (e.g. $.detail), then // only the part of the event specified in the path is passed to the target // (e.g. only the detail part of the event is passed). // * Input is specified in the form of a valid JSON, then the matched event // is overridden with this constant. // Note: When you add targets to a rule, when the associated rule triggers, // new or updated targets might not be immediately invoked. Please allow a short // period of time for changes to take effect. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Events's // API operation PutTargets for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The rule does not exist. // // * ConcurrentModificationException // This exception occurs if there is concurrent modification on rule or target. // // * LimitExceededException // This exception occurs if you try to create more rules or add more targets // to a rule than allowed by default. // // * InternalException // This exception occurs due to unexpected causes. // func (c *CloudWatchEvents) PutTargets(input *PutTargetsInput) (*PutTargetsOutput, error) { req, out := c.PutTargetsRequest(input) err := req.Send() return out, err } const opRemoveTargets = "RemoveTargets" // RemoveTargetsRequest generates a "aws/request.Request" representing the // client's request for the RemoveTargets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveTargets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveTargets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveTargetsRequest method. // req, resp := client.RemoveTargetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchEvents) RemoveTargetsRequest(input *RemoveTargetsInput) (req *request.Request, output *RemoveTargetsOutput) { op := &request.Operation{ Name: opRemoveTargets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveTargetsInput{} } req = c.newRequest(op, input, output) output = &RemoveTargetsOutput{} req.Data = output return } // RemoveTargets API operation for Amazon CloudWatch Events. // // Removes target(s) from a rule so that when the rule is triggered, those targets // will no longer be invoked. // // Note: When you remove a target, when the associated rule triggers, removed // targets might still continue to be invoked. Please allow a short period of // time for changes to take effect. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Events's // API operation RemoveTargets for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The rule does not exist. // // * ConcurrentModificationException // This exception occurs if there is concurrent modification on rule or target. // // * InternalException // This exception occurs due to unexpected causes. // func (c *CloudWatchEvents) RemoveTargets(input *RemoveTargetsInput) (*RemoveTargetsOutput, error) { req, out := c.RemoveTargetsRequest(input) err := req.Send() return out, err } const opTestEventPattern = "TestEventPattern" // TestEventPatternRequest generates a "aws/request.Request" representing the // client's request for the TestEventPattern operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See TestEventPattern for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the TestEventPattern method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the TestEventPatternRequest method. // req, resp := client.TestEventPatternRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchEvents) TestEventPatternRequest(input *TestEventPatternInput) (req *request.Request, output *TestEventPatternOutput) { op := &request.Operation{ Name: opTestEventPattern, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &TestEventPatternInput{} } req = c.newRequest(op, input, output) output = &TestEventPatternOutput{} req.Data = output return } // TestEventPattern API operation for Amazon CloudWatch Events. // // Tests whether an event pattern matches the provided event. // // Note: Most services in AWS treat : or / as the same character in Amazon Resource // Names (ARNs). However, CloudWatch Events uses an exact match in event patterns // and rules. Be sure to use the correct ARN characters when creating event // patterns so that they match the ARN syntax in the event you want to match. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Events's // API operation TestEventPattern for usage and error information. // // Returned Error Codes: // * InvalidEventPatternException // The event pattern is invalid. // // * InternalException // This exception occurs due to unexpected causes. // func (c *CloudWatchEvents) TestEventPattern(input *TestEventPatternInput) (*TestEventPatternOutput, error) { req, out := c.TestEventPatternRequest(input) err := req.Send() return out, err } // Container for the parameters to the DeleteRule operation. type DeleteRuleInput struct { _ struct{} `type:"structure"` // The name of the rule to be deleted. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteRuleInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteRuleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRuleOutput) GoString() string { return s.String() } // Container for the parameters to the DescribeRule operation. type DescribeRuleInput struct { _ struct{} `type:"structure"` // The name of the rule you want to describe details for. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeRuleInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of the DescribeRule operation. type DescribeRuleOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) associated with the rule. Arn *string `min:"1" type:"string"` // The rule's description. Description *string `type:"string"` // The event pattern. EventPattern *string `type:"string"` // The rule's name. Name *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of the IAM role associated with the rule. RoleArn *string `min:"1" type:"string"` // The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". ScheduleExpression *string `type:"string"` // Specifies whether the rule is enabled or disabled. State *string `type:"string" enum:"RuleState"` } // String returns the string representation func (s DescribeRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRuleOutput) GoString() string { return s.String() } // Container for the parameters to the DisableRule operation. type DisableRuleInput struct { _ struct{} `type:"structure"` // The name of the rule you want to disable. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DisableRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisableRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisableRuleInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DisableRuleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DisableRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableRuleOutput) GoString() string { return s.String() } // Container for the parameters to the EnableRule operation. type EnableRuleInput struct { _ struct{} `type:"structure"` // The name of the rule that you want to enable. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s EnableRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableRuleInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type EnableRuleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s EnableRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableRuleOutput) GoString() string { return s.String() } // Container for the parameters to the ListRuleNamesByTarget operation. type ListRuleNamesByTargetInput struct { _ struct{} `type:"structure"` // The maximum number of results to return. Limit *int64 `min:"1" type:"integer"` // The token returned by a previous call to indicate that there is more data // available. NextToken *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of the target resource that you want to list // the rules for. // // TargetArn is a required field TargetArn *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListRuleNamesByTargetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRuleNamesByTargetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListRuleNamesByTargetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListRuleNamesByTargetInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.TargetArn == nil { invalidParams.Add(request.NewErrParamRequired("TargetArn")) } if s.TargetArn != nil && len(*s.TargetArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("TargetArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of the ListRuleNamesByTarget operation. type ListRuleNamesByTargetOutput struct { _ struct{} `type:"structure"` // Indicates that there are additional results to retrieve. NextToken *string `min:"1" type:"string"` // List of rules names that can invoke the given target. RuleNames []*string `type:"list"` } // String returns the string representation func (s ListRuleNamesByTargetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRuleNamesByTargetOutput) GoString() string { return s.String() } // Container for the parameters to the ListRules operation. type ListRulesInput struct { _ struct{} `type:"structure"` // The maximum number of results to return. Limit *int64 `min:"1" type:"integer"` // The prefix matching the rule name. NamePrefix *string `min:"1" type:"string"` // The token returned by a previous call to indicate that there is more data // available. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s ListRulesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRulesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListRulesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListRulesInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NamePrefix != nil && len(*s.NamePrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("NamePrefix", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of the ListRules operation. type ListRulesOutput struct { _ struct{} `type:"structure"` // Indicates that there are additional results to retrieve. NextToken *string `min:"1" type:"string"` // List of rules matching the specified criteria. Rules []*Rule `type:"list"` } // String returns the string representation func (s ListRulesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRulesOutput) GoString() string { return s.String() } // Container for the parameters to the ListTargetsByRule operation. type ListTargetsByRuleInput struct { _ struct{} `type:"structure"` // The maximum number of results to return. Limit *int64 `min:"1" type:"integer"` // The token returned by a previous call to indicate that there is more data // available. NextToken *string `min:"1" type:"string"` // The name of the rule whose targets you want to list. // // Rule is a required field Rule *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListTargetsByRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTargetsByRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTargetsByRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTargetsByRuleInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.Rule == nil { invalidParams.Add(request.NewErrParamRequired("Rule")) } if s.Rule != nil && len(*s.Rule) < 1 { invalidParams.Add(request.NewErrParamMinLen("Rule", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of the ListTargetsByRule operation. type ListTargetsByRuleOutput struct { _ struct{} `type:"structure"` // Indicates that there are additional results to retrieve. NextToken *string `min:"1" type:"string"` // Lists the targets assigned to the rule. Targets []*Target `type:"list"` } // String returns the string representation func (s ListTargetsByRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTargetsByRuleOutput) GoString() string { return s.String() } // Container for the parameters to the PutEvents operation. type PutEventsInput struct { _ struct{} `type:"structure"` // The entry that defines an event in your system. You can specify several parameters // for the entry such as the source and type of the event, resources associated // with the event, and so on. // // Entries is a required field Entries []*PutEventsRequestEntry `min:"1" type:"list" required:"true"` } // String returns the string representation func (s PutEventsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutEventsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutEventsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutEventsInput"} if s.Entries == nil { invalidParams.Add(request.NewErrParamRequired("Entries")) } if s.Entries != nil && len(s.Entries) < 1 { invalidParams.Add(request.NewErrParamMinLen("Entries", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of the PutEvents operation. type PutEventsOutput struct { _ struct{} `type:"structure"` // A list of successfully and unsuccessfully ingested events results. If the // ingestion was successful, the entry will have the event ID in it. If not, // then the ErrorCode and ErrorMessage can be used to identify the problem with // the entry. Entries []*PutEventsResultEntry `type:"list"` // The number of failed entries. FailedEntryCount *int64 `type:"integer"` } // String returns the string representation func (s PutEventsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutEventsOutput) GoString() string { return s.String() } // Contains information about the event to be used in PutEvents. type PutEventsRequestEntry struct { _ struct{} `type:"structure"` // In the JSON sense, an object containing fields, which may also contain nested // sub-objects. No constraints are imposed on its contents. Detail *string `type:"string"` // Free-form string used to decide what fields to expect in the event detail. DetailType *string `type:"string"` // AWS resources, identified by Amazon Resource Name (ARN), which the event // primarily concerns. Any number, including zero, may be present. Resources []*string `type:"list"` // The source of the event. Source *string `type:"string"` // Timestamp of event, per RFC3339 (https://www.rfc-editor.org/rfc/rfc3339.txt). // If no timestamp is provided, the timestamp of the PutEvents call will be // used. Time *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s PutEventsRequestEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutEventsRequestEntry) GoString() string { return s.String() } // A PutEventsResult contains a list of PutEventsResultEntry. type PutEventsResultEntry struct { _ struct{} `type:"structure"` // The error code representing why the event submission failed on this entry. ErrorCode *string `type:"string"` // The error message explaining why the event submission failed on this entry. ErrorMessage *string `type:"string"` // The ID of the event submitted to Amazon CloudWatch Events. EventId *string `type:"string"` } // String returns the string representation func (s PutEventsResultEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutEventsResultEntry) GoString() string { return s.String() } // Container for the parameters to the PutRule operation. type PutRuleInput struct { _ struct{} `type:"structure"` // A description of the rule. Description *string `type:"string"` // The event pattern. EventPattern *string `type:"string"` // The name of the rule that you are creating or updating. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the IAM role associated with the rule. RoleArn *string `min:"1" type:"string"` // The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". ScheduleExpression *string `type:"string"` // Indicates whether the rule is enabled or disabled. State *string `type:"string" enum:"RuleState"` } // String returns the string representation func (s PutRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutRuleInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.RoleArn != nil && len(*s.RoleArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of the PutRule operation. type PutRuleOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) that identifies the rule. RuleArn *string `min:"1" type:"string"` } // String returns the string representation func (s PutRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRuleOutput) GoString() string { return s.String() } // Container for the parameters to the PutTargets operation. type PutTargetsInput struct { _ struct{} `type:"structure"` // The name of the rule you want to add targets to. // // Rule is a required field Rule *string `min:"1" type:"string" required:"true"` // List of targets you want to update or add to the rule. // // Targets is a required field Targets []*Target `type:"list" required:"true"` } // String returns the string representation func (s PutTargetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutTargetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutTargetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutTargetsInput"} if s.Rule == nil { invalidParams.Add(request.NewErrParamRequired("Rule")) } if s.Rule != nil && len(*s.Rule) < 1 { invalidParams.Add(request.NewErrParamMinLen("Rule", 1)) } if s.Targets == nil { invalidParams.Add(request.NewErrParamRequired("Targets")) } if s.Targets != nil { for i, v := range s.Targets { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of the PutTargets operation. type PutTargetsOutput struct { _ struct{} `type:"structure"` // An array of failed target entries. FailedEntries []*PutTargetsResultEntry `type:"list"` // The number of failed entries. FailedEntryCount *int64 `type:"integer"` } // String returns the string representation func (s PutTargetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutTargetsOutput) GoString() string { return s.String() } // A PutTargetsResult contains a list of PutTargetsResultEntry. type PutTargetsResultEntry struct { _ struct{} `type:"structure"` // The error code representing why the target submission failed on this entry. ErrorCode *string `type:"string"` // The error message explaining why the target submission failed on this entry. ErrorMessage *string `type:"string"` // The ID of the target submitted to Amazon CloudWatch Events. TargetId *string `min:"1" type:"string"` } // String returns the string representation func (s PutTargetsResultEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutTargetsResultEntry) GoString() string { return s.String() } // Container for the parameters to the RemoveTargets operation. type RemoveTargetsInput struct { _ struct{} `type:"structure"` // The list of target IDs to remove from the rule. // // Ids is a required field Ids []*string `min:"1" type:"list" required:"true"` // The name of the rule you want to remove targets from. // // Rule is a required field Rule *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s RemoveTargetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTargetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTargetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTargetsInput"} if s.Ids == nil { invalidParams.Add(request.NewErrParamRequired("Ids")) } if s.Ids != nil && len(s.Ids) < 1 { invalidParams.Add(request.NewErrParamMinLen("Ids", 1)) } if s.Rule == nil { invalidParams.Add(request.NewErrParamRequired("Rule")) } if s.Rule != nil && len(*s.Rule) < 1 { invalidParams.Add(request.NewErrParamMinLen("Rule", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of the RemoveTargets operation. type RemoveTargetsOutput struct { _ struct{} `type:"structure"` // An array of failed target entries. FailedEntries []*RemoveTargetsResultEntry `type:"list"` // The number of failed entries. FailedEntryCount *int64 `type:"integer"` } // String returns the string representation func (s RemoveTargetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTargetsOutput) GoString() string { return s.String() } // The ID of the target requested to be removed from the rule by Amazon CloudWatch // Events. type RemoveTargetsResultEntry struct { _ struct{} `type:"structure"` // The error code representing why the target removal failed on this entry. ErrorCode *string `type:"string"` // The error message explaining why the target removal failed on this entry. ErrorMessage *string `type:"string"` // The ID of the target requested to be removed by Amazon CloudWatch Events. TargetId *string `min:"1" type:"string"` } // String returns the string representation func (s RemoveTargetsResultEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTargetsResultEntry) GoString() string { return s.String() } // Contains information about a rule in Amazon CloudWatch Events. A ListRulesResult // contains a list of Rules. type Rule struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the rule. Arn *string `min:"1" type:"string"` // The description of the rule. Description *string `type:"string"` // The event pattern of the rule. EventPattern *string `type:"string"` // The rule's name. Name *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) associated with the role that is used for // target invocation. RoleArn *string `min:"1" type:"string"` // The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". ScheduleExpression *string `type:"string"` // The rule's state. State *string `type:"string" enum:"RuleState"` } // String returns the string representation func (s Rule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Rule) GoString() string { return s.String() } // Targets are the resources that can be invoked when a rule is triggered. For // example, AWS Lambda functions, Amazon Kinesis streams, and built-in targets. // // Input and InputPath are mutually-exclusive and optional parameters of a target. // When a rule is triggered due to a matched event, if for a target: // // * Neither Input nor InputPath is specified, then the entire event is passed // to the target in JSON form. // * InputPath is specified in the form of JSONPath (e.g. $.detail), then // only the part of the event specified in the path is passed to the target // (e.g. only the detail part of the event is passed). // * Input is specified in the form of a valid JSON, then the matched event // is overridden with this constant. type Target struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) associated of the target. // // Arn is a required field Arn *string `min:"1" type:"string" required:"true"` // The unique target assignment ID. // // Id is a required field Id *string `min:"1" type:"string" required:"true"` // Valid JSON text passed to the target. For more information about JSON text, // see The JavaScript Object Notation (JSON) Data Interchange Format (http://www.rfc-editor.org/rfc/rfc7159.txt). Input *string `type:"string"` // The value of the JSONPath that is used for extracting part of the matched // event when passing it to the target. For more information about JSON paths, // see JSONPath (http://goessner.net/articles/JsonPath/). InputPath *string `type:"string"` } // String returns the string representation func (s Target) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Target) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Target) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Target"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 1 { invalidParams.Add(request.NewErrParamMinLen("Arn", 1)) } if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for the parameters to the TestEventPattern operation. type TestEventPatternInput struct { _ struct{} `type:"structure"` // The event in the JSON format to test against the event pattern. // // Event is a required field Event *string `type:"string" required:"true"` // The event pattern you want to test. // // EventPattern is a required field EventPattern *string `type:"string" required:"true"` } // String returns the string representation func (s TestEventPatternInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TestEventPatternInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TestEventPatternInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TestEventPatternInput"} if s.Event == nil { invalidParams.Add(request.NewErrParamRequired("Event")) } if s.EventPattern == nil { invalidParams.Add(request.NewErrParamRequired("EventPattern")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of the TestEventPattern operation. type TestEventPatternOutput struct { _ struct{} `type:"structure"` // Indicates whether the event matches the event pattern. Result *bool `type:"boolean"` } // String returns the string representation func (s TestEventPatternOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TestEventPatternOutput) GoString() string { return s.String() } const ( // RuleStateEnabled is a RuleState enum value RuleStateEnabled = "ENABLED" // RuleStateDisabled is a RuleState enum value RuleStateDisabled = "DISABLED" ) aws-sdk-go-1.4.22/service/cloudwatchevents/cloudwatcheventsiface/000077500000000000000000000000001300374646400251575ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudwatchevents/cloudwatcheventsiface/interface.go000066400000000000000000000114661300374646400274560ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cloudwatcheventsiface provides an interface to enable mocking the Amazon CloudWatch Events service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package cloudwatcheventsiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/cloudwatchevents" ) // CloudWatchEventsAPI provides an interface to enable mocking the // cloudwatchevents.CloudWatchEvents service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon CloudWatch Events. // func myFunc(svc cloudwatcheventsiface.CloudWatchEventsAPI) bool { // // Make svc.DeleteRule request // } // // func main() { // sess := session.New() // svc := cloudwatchevents.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockCloudWatchEventsClient struct { // cloudwatcheventsiface.CloudWatchEventsAPI // } // func (m *mockCloudWatchEventsClient) DeleteRule(input *cloudwatchevents.DeleteRuleInput) (*cloudwatchevents.DeleteRuleOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockCloudWatchEventsClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type CloudWatchEventsAPI interface { DeleteRuleRequest(*cloudwatchevents.DeleteRuleInput) (*request.Request, *cloudwatchevents.DeleteRuleOutput) DeleteRule(*cloudwatchevents.DeleteRuleInput) (*cloudwatchevents.DeleteRuleOutput, error) DescribeRuleRequest(*cloudwatchevents.DescribeRuleInput) (*request.Request, *cloudwatchevents.DescribeRuleOutput) DescribeRule(*cloudwatchevents.DescribeRuleInput) (*cloudwatchevents.DescribeRuleOutput, error) DisableRuleRequest(*cloudwatchevents.DisableRuleInput) (*request.Request, *cloudwatchevents.DisableRuleOutput) DisableRule(*cloudwatchevents.DisableRuleInput) (*cloudwatchevents.DisableRuleOutput, error) EnableRuleRequest(*cloudwatchevents.EnableRuleInput) (*request.Request, *cloudwatchevents.EnableRuleOutput) EnableRule(*cloudwatchevents.EnableRuleInput) (*cloudwatchevents.EnableRuleOutput, error) ListRuleNamesByTargetRequest(*cloudwatchevents.ListRuleNamesByTargetInput) (*request.Request, *cloudwatchevents.ListRuleNamesByTargetOutput) ListRuleNamesByTarget(*cloudwatchevents.ListRuleNamesByTargetInput) (*cloudwatchevents.ListRuleNamesByTargetOutput, error) ListRulesRequest(*cloudwatchevents.ListRulesInput) (*request.Request, *cloudwatchevents.ListRulesOutput) ListRules(*cloudwatchevents.ListRulesInput) (*cloudwatchevents.ListRulesOutput, error) ListTargetsByRuleRequest(*cloudwatchevents.ListTargetsByRuleInput) (*request.Request, *cloudwatchevents.ListTargetsByRuleOutput) ListTargetsByRule(*cloudwatchevents.ListTargetsByRuleInput) (*cloudwatchevents.ListTargetsByRuleOutput, error) PutEventsRequest(*cloudwatchevents.PutEventsInput) (*request.Request, *cloudwatchevents.PutEventsOutput) PutEvents(*cloudwatchevents.PutEventsInput) (*cloudwatchevents.PutEventsOutput, error) PutRuleRequest(*cloudwatchevents.PutRuleInput) (*request.Request, *cloudwatchevents.PutRuleOutput) PutRule(*cloudwatchevents.PutRuleInput) (*cloudwatchevents.PutRuleOutput, error) PutTargetsRequest(*cloudwatchevents.PutTargetsInput) (*request.Request, *cloudwatchevents.PutTargetsOutput) PutTargets(*cloudwatchevents.PutTargetsInput) (*cloudwatchevents.PutTargetsOutput, error) RemoveTargetsRequest(*cloudwatchevents.RemoveTargetsInput) (*request.Request, *cloudwatchevents.RemoveTargetsOutput) RemoveTargets(*cloudwatchevents.RemoveTargetsInput) (*cloudwatchevents.RemoveTargetsOutput, error) TestEventPatternRequest(*cloudwatchevents.TestEventPatternInput) (*request.Request, *cloudwatchevents.TestEventPatternOutput) TestEventPattern(*cloudwatchevents.TestEventPatternInput) (*cloudwatchevents.TestEventPatternOutput, error) } var _ CloudWatchEventsAPI = (*cloudwatchevents.CloudWatchEvents)(nil) aws-sdk-go-1.4.22/service/cloudwatchevents/examples_test.go000066400000000000000000000175141300374646400240210ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudwatchevents_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/cloudwatchevents" ) var _ time.Duration var _ bytes.Buffer func ExampleCloudWatchEvents_DeleteRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchevents.New(sess) params := &cloudwatchevents.DeleteRuleInput{ Name: aws.String("RuleName"), // Required } resp, err := svc.DeleteRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchEvents_DescribeRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchevents.New(sess) params := &cloudwatchevents.DescribeRuleInput{ Name: aws.String("RuleName"), // Required } resp, err := svc.DescribeRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchEvents_DisableRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchevents.New(sess) params := &cloudwatchevents.DisableRuleInput{ Name: aws.String("RuleName"), // Required } resp, err := svc.DisableRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchEvents_EnableRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchevents.New(sess) params := &cloudwatchevents.EnableRuleInput{ Name: aws.String("RuleName"), // Required } resp, err := svc.EnableRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchEvents_ListRuleNamesByTarget() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchevents.New(sess) params := &cloudwatchevents.ListRuleNamesByTargetInput{ TargetArn: aws.String("TargetArn"), // Required Limit: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.ListRuleNamesByTarget(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchEvents_ListRules() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchevents.New(sess) params := &cloudwatchevents.ListRulesInput{ Limit: aws.Int64(1), NamePrefix: aws.String("RuleName"), NextToken: aws.String("NextToken"), } resp, err := svc.ListRules(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchEvents_ListTargetsByRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchevents.New(sess) params := &cloudwatchevents.ListTargetsByRuleInput{ Rule: aws.String("RuleName"), // Required Limit: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.ListTargetsByRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchEvents_PutEvents() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchevents.New(sess) params := &cloudwatchevents.PutEventsInput{ Entries: []*cloudwatchevents.PutEventsRequestEntry{ // Required { // Required Detail: aws.String("String"), DetailType: aws.String("String"), Resources: []*string{ aws.String("EventResource"), // Required // More values... }, Source: aws.String("String"), Time: aws.Time(time.Now()), }, // More values... }, } resp, err := svc.PutEvents(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchEvents_PutRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchevents.New(sess) params := &cloudwatchevents.PutRuleInput{ Name: aws.String("RuleName"), // Required Description: aws.String("RuleDescription"), EventPattern: aws.String("EventPattern"), RoleArn: aws.String("RoleArn"), ScheduleExpression: aws.String("ScheduleExpression"), State: aws.String("RuleState"), } resp, err := svc.PutRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchEvents_PutTargets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchevents.New(sess) params := &cloudwatchevents.PutTargetsInput{ Rule: aws.String("RuleName"), // Required Targets: []*cloudwatchevents.Target{ // Required { // Required Arn: aws.String("TargetArn"), // Required Id: aws.String("TargetId"), // Required Input: aws.String("TargetInput"), InputPath: aws.String("TargetInputPath"), }, // More values... }, } resp, err := svc.PutTargets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchEvents_RemoveTargets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchevents.New(sess) params := &cloudwatchevents.RemoveTargetsInput{ Ids: []*string{ // Required aws.String("TargetId"), // Required // More values... }, Rule: aws.String("RuleName"), // Required } resp, err := svc.RemoveTargets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchEvents_TestEventPattern() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchevents.New(sess) params := &cloudwatchevents.TestEventPatternInput{ Event: aws.String("String"), // Required EventPattern: aws.String("EventPattern"), // Required } resp, err := svc.TestEventPattern(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/cloudwatchevents/service.go000066400000000000000000000073431300374646400226030ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudwatchevents import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Amazon CloudWatch Events helps you to respond to state changes in your AWS // resources. When your resources change state they automatically send events // into an event stream. You can create rules that match selected events in // the stream and route them to targets to take action. You can also use rules // to take action on a pre-determined schedule. For example, you can configure // rules to: // // * Automatically invoke an AWS Lambda function to update DNS entries when // an event notifies you that Amazon EC2 instance enters the running state. // // * Direct specific API records from CloudTrail to an Amazon Kinesis stream // for detailed analysis of potential security or availability risks. // * Periodically invoke a built-in target to create a snapshot of an Amazon // EBS volume. // For more information about Amazon CloudWatch Events features, see the Amazon // CloudWatch Developer Guide (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type CloudWatchEvents struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "events" // New creates a new instance of the CloudWatchEvents client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a CloudWatchEvents client from just a session. // svc := cloudwatchevents.New(mySession) // // // Create a CloudWatchEvents client with additional configuration // svc := cloudwatchevents.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *CloudWatchEvents { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *CloudWatchEvents { svc := &CloudWatchEvents{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-10-07", JSONVersion: "1.1", TargetPrefix: "AWSEvents", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a CloudWatchEvents operation and runs any // custom request initialization. func (c *CloudWatchEvents) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/cloudwatchlogs/000077500000000000000000000000001300374646400202455ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudwatchlogs/api.go000066400000000000000000004632141300374646400213570ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cloudwatchlogs provides a client for Amazon CloudWatch Logs. package cloudwatchlogs import ( "fmt" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opCancelExportTask = "CancelExportTask" // CancelExportTaskRequest generates a "aws/request.Request" representing the // client's request for the CancelExportTask operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CancelExportTask for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CancelExportTask method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CancelExportTaskRequest method. // req, resp := client.CancelExportTaskRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) CancelExportTaskRequest(input *CancelExportTaskInput) (req *request.Request, output *CancelExportTaskOutput) { op := &request.Operation{ Name: opCancelExportTask, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CancelExportTaskInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CancelExportTaskOutput{} req.Data = output return } // CancelExportTask API operation for Amazon CloudWatch Logs. // // Cancels an export task if it is in PENDING or RUNNING state. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation CancelExportTask for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ResourceNotFoundException // Returned if the specified resource does not exist. // // * InvalidOperationException // Returned if the operation is not valid on the specified resource // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) CancelExportTask(input *CancelExportTaskInput) (*CancelExportTaskOutput, error) { req, out := c.CancelExportTaskRequest(input) err := req.Send() return out, err } const opCreateExportTask = "CreateExportTask" // CreateExportTaskRequest generates a "aws/request.Request" representing the // client's request for the CreateExportTask operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateExportTask for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateExportTask method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateExportTaskRequest method. // req, resp := client.CreateExportTaskRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) CreateExportTaskRequest(input *CreateExportTaskInput) (req *request.Request, output *CreateExportTaskOutput) { op := &request.Operation{ Name: opCreateExportTask, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateExportTaskInput{} } req = c.newRequest(op, input, output) output = &CreateExportTaskOutput{} req.Data = output return } // CreateExportTask API operation for Amazon CloudWatch Logs. // // Creates an ExportTask which allows you to efficiently export data from a // Log Group to your Amazon S3 bucket. // // This is an asynchronous call. If all the required information is provided, // this API will initiate an export task and respond with the task Id. Once // started, DescribeExportTasks can be used to get the status of an export task. // You can only have one active (RUNNING or PENDING) export task at a time, // per account. // // You can export logs from multiple log groups or multiple time ranges to the // same Amazon S3 bucket. To separate out log data for each export task, you // can specify a prefix that will be used as the Amazon S3 key prefix for all // exported objects. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation CreateExportTask for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * LimitExceededException // Returned if you have reached the maximum number of resources that can be // created. // // * OperationAbortedException // Returned if multiple requests to update the same resource were in conflict. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // // * ResourceNotFoundException // Returned if the specified resource does not exist. // // * ResourceAlreadyExistsException // Returned if the specified resource already exists. // func (c *CloudWatchLogs) CreateExportTask(input *CreateExportTaskInput) (*CreateExportTaskOutput, error) { req, out := c.CreateExportTaskRequest(input) err := req.Send() return out, err } const opCreateLogGroup = "CreateLogGroup" // CreateLogGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateLogGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateLogGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateLogGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateLogGroupRequest method. // req, resp := client.CreateLogGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) CreateLogGroupRequest(input *CreateLogGroupInput) (req *request.Request, output *CreateLogGroupOutput) { op := &request.Operation{ Name: opCreateLogGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateLogGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CreateLogGroupOutput{} req.Data = output return } // CreateLogGroup API operation for Amazon CloudWatch Logs. // // Creates a new log group with the specified name. The name of the log group // must be unique within a region for an AWS account. You can create up to 500 // log groups per account. // // You must use the following guidelines when naming a log group: // // * Log group names can be between 1 and 512 characters long. // // * Allowed characters are a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), // '/' (forward slash), and '.' (period). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation CreateLogGroup for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ResourceAlreadyExistsException // Returned if the specified resource already exists. // // * LimitExceededException // Returned if you have reached the maximum number of resources that can be // created. // // * OperationAbortedException // Returned if multiple requests to update the same resource were in conflict. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) CreateLogGroup(input *CreateLogGroupInput) (*CreateLogGroupOutput, error) { req, out := c.CreateLogGroupRequest(input) err := req.Send() return out, err } const opCreateLogStream = "CreateLogStream" // CreateLogStreamRequest generates a "aws/request.Request" representing the // client's request for the CreateLogStream operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateLogStream for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateLogStream method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateLogStreamRequest method. // req, resp := client.CreateLogStreamRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) CreateLogStreamRequest(input *CreateLogStreamInput) (req *request.Request, output *CreateLogStreamOutput) { op := &request.Operation{ Name: opCreateLogStream, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateLogStreamInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CreateLogStreamOutput{} req.Data = output return } // CreateLogStream API operation for Amazon CloudWatch Logs. // // Creates a new log stream in the specified log group. The name of the log // stream must be unique within the log group. There is no limit on the number // of log streams that can exist in a log group. // // You must use the following guidelines when naming a log stream: // // * Log stream names can be between 1 and 512 characters long. // // * The ':' colon character is not allowed. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation CreateLogStream for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ResourceAlreadyExistsException // Returned if the specified resource already exists. // // * ResourceNotFoundException // Returned if the specified resource does not exist. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) CreateLogStream(input *CreateLogStreamInput) (*CreateLogStreamOutput, error) { req, out := c.CreateLogStreamRequest(input) err := req.Send() return out, err } const opDeleteDestination = "DeleteDestination" // DeleteDestinationRequest generates a "aws/request.Request" representing the // client's request for the DeleteDestination operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDestination for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDestination method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDestinationRequest method. // req, resp := client.DeleteDestinationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) DeleteDestinationRequest(input *DeleteDestinationInput) (req *request.Request, output *DeleteDestinationOutput) { op := &request.Operation{ Name: opDeleteDestination, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDestinationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteDestinationOutput{} req.Data = output return } // DeleteDestination API operation for Amazon CloudWatch Logs. // // Deletes the destination with the specified name and eventually disables all // the subscription filters that publish to it. This will not delete the physical // resource encapsulated by the destination. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation DeleteDestination for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ResourceNotFoundException // Returned if the specified resource does not exist. // // * OperationAbortedException // Returned if multiple requests to update the same resource were in conflict. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) DeleteDestination(input *DeleteDestinationInput) (*DeleteDestinationOutput, error) { req, out := c.DeleteDestinationRequest(input) err := req.Send() return out, err } const opDeleteLogGroup = "DeleteLogGroup" // DeleteLogGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteLogGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteLogGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteLogGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteLogGroupRequest method. // req, resp := client.DeleteLogGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) DeleteLogGroupRequest(input *DeleteLogGroupInput) (req *request.Request, output *DeleteLogGroupOutput) { op := &request.Operation{ Name: opDeleteLogGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteLogGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteLogGroupOutput{} req.Data = output return } // DeleteLogGroup API operation for Amazon CloudWatch Logs. // // Deletes the log group with the specified name and permanently deletes all // the archived log events associated with it. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation DeleteLogGroup for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ResourceNotFoundException // Returned if the specified resource does not exist. // // * OperationAbortedException // Returned if multiple requests to update the same resource were in conflict. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) DeleteLogGroup(input *DeleteLogGroupInput) (*DeleteLogGroupOutput, error) { req, out := c.DeleteLogGroupRequest(input) err := req.Send() return out, err } const opDeleteLogStream = "DeleteLogStream" // DeleteLogStreamRequest generates a "aws/request.Request" representing the // client's request for the DeleteLogStream operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteLogStream for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteLogStream method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteLogStreamRequest method. // req, resp := client.DeleteLogStreamRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) DeleteLogStreamRequest(input *DeleteLogStreamInput) (req *request.Request, output *DeleteLogStreamOutput) { op := &request.Operation{ Name: opDeleteLogStream, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteLogStreamInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteLogStreamOutput{} req.Data = output return } // DeleteLogStream API operation for Amazon CloudWatch Logs. // // Deletes a log stream and permanently deletes all the archived log events // associated with it. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation DeleteLogStream for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ResourceNotFoundException // Returned if the specified resource does not exist. // // * OperationAbortedException // Returned if multiple requests to update the same resource were in conflict. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) DeleteLogStream(input *DeleteLogStreamInput) (*DeleteLogStreamOutput, error) { req, out := c.DeleteLogStreamRequest(input) err := req.Send() return out, err } const opDeleteMetricFilter = "DeleteMetricFilter" // DeleteMetricFilterRequest generates a "aws/request.Request" representing the // client's request for the DeleteMetricFilter operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteMetricFilter for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteMetricFilter method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteMetricFilterRequest method. // req, resp := client.DeleteMetricFilterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) DeleteMetricFilterRequest(input *DeleteMetricFilterInput) (req *request.Request, output *DeleteMetricFilterOutput) { op := &request.Operation{ Name: opDeleteMetricFilter, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteMetricFilterInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteMetricFilterOutput{} req.Data = output return } // DeleteMetricFilter API operation for Amazon CloudWatch Logs. // // Deletes a metric filter associated with the specified log group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation DeleteMetricFilter for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ResourceNotFoundException // Returned if the specified resource does not exist. // // * OperationAbortedException // Returned if multiple requests to update the same resource were in conflict. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) DeleteMetricFilter(input *DeleteMetricFilterInput) (*DeleteMetricFilterOutput, error) { req, out := c.DeleteMetricFilterRequest(input) err := req.Send() return out, err } const opDeleteRetentionPolicy = "DeleteRetentionPolicy" // DeleteRetentionPolicyRequest generates a "aws/request.Request" representing the // client's request for the DeleteRetentionPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteRetentionPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteRetentionPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteRetentionPolicyRequest method. // req, resp := client.DeleteRetentionPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) DeleteRetentionPolicyRequest(input *DeleteRetentionPolicyInput) (req *request.Request, output *DeleteRetentionPolicyOutput) { op := &request.Operation{ Name: opDeleteRetentionPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteRetentionPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteRetentionPolicyOutput{} req.Data = output return } // DeleteRetentionPolicy API operation for Amazon CloudWatch Logs. // // Deletes the retention policy of the specified log group. Log events would // not expire if they belong to log groups without a retention policy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation DeleteRetentionPolicy for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ResourceNotFoundException // Returned if the specified resource does not exist. // // * OperationAbortedException // Returned if multiple requests to update the same resource were in conflict. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) DeleteRetentionPolicy(input *DeleteRetentionPolicyInput) (*DeleteRetentionPolicyOutput, error) { req, out := c.DeleteRetentionPolicyRequest(input) err := req.Send() return out, err } const opDeleteSubscriptionFilter = "DeleteSubscriptionFilter" // DeleteSubscriptionFilterRequest generates a "aws/request.Request" representing the // client's request for the DeleteSubscriptionFilter operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteSubscriptionFilter for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteSubscriptionFilter method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteSubscriptionFilterRequest method. // req, resp := client.DeleteSubscriptionFilterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) DeleteSubscriptionFilterRequest(input *DeleteSubscriptionFilterInput) (req *request.Request, output *DeleteSubscriptionFilterOutput) { op := &request.Operation{ Name: opDeleteSubscriptionFilter, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteSubscriptionFilterInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteSubscriptionFilterOutput{} req.Data = output return } // DeleteSubscriptionFilter API operation for Amazon CloudWatch Logs. // // Deletes a subscription filter associated with the specified log group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation DeleteSubscriptionFilter for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ResourceNotFoundException // Returned if the specified resource does not exist. // // * OperationAbortedException // Returned if multiple requests to update the same resource were in conflict. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) DeleteSubscriptionFilter(input *DeleteSubscriptionFilterInput) (*DeleteSubscriptionFilterOutput, error) { req, out := c.DeleteSubscriptionFilterRequest(input) err := req.Send() return out, err } const opDescribeDestinations = "DescribeDestinations" // DescribeDestinationsRequest generates a "aws/request.Request" representing the // client's request for the DescribeDestinations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDestinations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDestinations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDestinationsRequest method. // req, resp := client.DescribeDestinationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) DescribeDestinationsRequest(input *DescribeDestinationsInput) (req *request.Request, output *DescribeDestinationsOutput) { op := &request.Operation{ Name: opDescribeDestinations, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &DescribeDestinationsInput{} } req = c.newRequest(op, input, output) output = &DescribeDestinationsOutput{} req.Data = output return } // DescribeDestinations API operation for Amazon CloudWatch Logs. // // Returns all the destinations that are associated with the AWS account making // the request. The list returned in the response is ASCII-sorted by destination // name. // // By default, this operation returns up to 50 destinations. If there are more // destinations to list, the response would contain a nextToken value in the // response body. You can also limit the number of destinations returned in // the response by specifying the limit parameter in the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation DescribeDestinations for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) DescribeDestinations(input *DescribeDestinationsInput) (*DescribeDestinationsOutput, error) { req, out := c.DescribeDestinationsRequest(input) err := req.Send() return out, err } // DescribeDestinationsPages iterates over the pages of a DescribeDestinations operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeDestinations method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeDestinations operation. // pageNum := 0 // err := client.DescribeDestinationsPages(params, // func(page *DescribeDestinationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CloudWatchLogs) DescribeDestinationsPages(input *DescribeDestinationsInput, fn func(p *DescribeDestinationsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeDestinationsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeDestinationsOutput), lastPage) }) } const opDescribeExportTasks = "DescribeExportTasks" // DescribeExportTasksRequest generates a "aws/request.Request" representing the // client's request for the DescribeExportTasks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeExportTasks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeExportTasks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeExportTasksRequest method. // req, resp := client.DescribeExportTasksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) DescribeExportTasksRequest(input *DescribeExportTasksInput) (req *request.Request, output *DescribeExportTasksOutput) { op := &request.Operation{ Name: opDescribeExportTasks, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeExportTasksInput{} } req = c.newRequest(op, input, output) output = &DescribeExportTasksOutput{} req.Data = output return } // DescribeExportTasks API operation for Amazon CloudWatch Logs. // // Returns all the export tasks that are associated with the AWS account making // the request. The export tasks can be filtered based on TaskId or TaskStatus. // // By default, this operation returns up to 50 export tasks that satisfy the // specified filters. If there are more export tasks to list, the response would // contain a nextToken value in the response body. You can also limit the number // of export tasks returned in the response by specifying the limit parameter // in the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation DescribeExportTasks for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) DescribeExportTasks(input *DescribeExportTasksInput) (*DescribeExportTasksOutput, error) { req, out := c.DescribeExportTasksRequest(input) err := req.Send() return out, err } const opDescribeLogGroups = "DescribeLogGroups" // DescribeLogGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeLogGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLogGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLogGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLogGroupsRequest method. // req, resp := client.DescribeLogGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) DescribeLogGroupsRequest(input *DescribeLogGroupsInput) (req *request.Request, output *DescribeLogGroupsOutput) { op := &request.Operation{ Name: opDescribeLogGroups, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &DescribeLogGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeLogGroupsOutput{} req.Data = output return } // DescribeLogGroups API operation for Amazon CloudWatch Logs. // // Returns all the log groups that are associated with the AWS account making // the request. The list returned in the response is ASCII-sorted by log group // name. // // By default, this operation returns up to 50 log groups. If there are more // log groups to list, the response would contain a nextToken value in the response // body. You can also limit the number of log groups returned in the response // by specifying the limit parameter in the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation DescribeLogGroups for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) DescribeLogGroups(input *DescribeLogGroupsInput) (*DescribeLogGroupsOutput, error) { req, out := c.DescribeLogGroupsRequest(input) err := req.Send() return out, err } // DescribeLogGroupsPages iterates over the pages of a DescribeLogGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeLogGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeLogGroups operation. // pageNum := 0 // err := client.DescribeLogGroupsPages(params, // func(page *DescribeLogGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CloudWatchLogs) DescribeLogGroupsPages(input *DescribeLogGroupsInput, fn func(p *DescribeLogGroupsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeLogGroupsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeLogGroupsOutput), lastPage) }) } const opDescribeLogStreams = "DescribeLogStreams" // DescribeLogStreamsRequest generates a "aws/request.Request" representing the // client's request for the DescribeLogStreams operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLogStreams for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLogStreams method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLogStreamsRequest method. // req, resp := client.DescribeLogStreamsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) DescribeLogStreamsRequest(input *DescribeLogStreamsInput) (req *request.Request, output *DescribeLogStreamsOutput) { op := &request.Operation{ Name: opDescribeLogStreams, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &DescribeLogStreamsInput{} } req = c.newRequest(op, input, output) output = &DescribeLogStreamsOutput{} req.Data = output return } // DescribeLogStreams API operation for Amazon CloudWatch Logs. // // Returns all the log streams that are associated with the specified log group. // The list returned in the response is ASCII-sorted by log stream name. // // By default, this operation returns up to 50 log streams. If there are more // log streams to list, the response would contain a nextToken value in the // response body. You can also limit the number of log streams returned in the // response by specifying the limit parameter in the request. This operation // has a limit of five transactions per second, after which transactions are // throttled. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation DescribeLogStreams for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ResourceNotFoundException // Returned if the specified resource does not exist. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) DescribeLogStreams(input *DescribeLogStreamsInput) (*DescribeLogStreamsOutput, error) { req, out := c.DescribeLogStreamsRequest(input) err := req.Send() return out, err } // DescribeLogStreamsPages iterates over the pages of a DescribeLogStreams operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeLogStreams method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeLogStreams operation. // pageNum := 0 // err := client.DescribeLogStreamsPages(params, // func(page *DescribeLogStreamsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CloudWatchLogs) DescribeLogStreamsPages(input *DescribeLogStreamsInput, fn func(p *DescribeLogStreamsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeLogStreamsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeLogStreamsOutput), lastPage) }) } const opDescribeMetricFilters = "DescribeMetricFilters" // DescribeMetricFiltersRequest generates a "aws/request.Request" representing the // client's request for the DescribeMetricFilters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeMetricFilters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeMetricFilters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeMetricFiltersRequest method. // req, resp := client.DescribeMetricFiltersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) DescribeMetricFiltersRequest(input *DescribeMetricFiltersInput) (req *request.Request, output *DescribeMetricFiltersOutput) { op := &request.Operation{ Name: opDescribeMetricFilters, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &DescribeMetricFiltersInput{} } req = c.newRequest(op, input, output) output = &DescribeMetricFiltersOutput{} req.Data = output return } // DescribeMetricFilters API operation for Amazon CloudWatch Logs. // // Returns all the metrics filters associated with the specified log group. // The list returned in the response is ASCII-sorted by filter name. // // By default, this operation returns up to 50 metric filters. If there are // more metric filters to list, the response would contain a nextToken value // in the response body. You can also limit the number of metric filters returned // in the response by specifying the limit parameter in the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation DescribeMetricFilters for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ResourceNotFoundException // Returned if the specified resource does not exist. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) DescribeMetricFilters(input *DescribeMetricFiltersInput) (*DescribeMetricFiltersOutput, error) { req, out := c.DescribeMetricFiltersRequest(input) err := req.Send() return out, err } // DescribeMetricFiltersPages iterates over the pages of a DescribeMetricFilters operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeMetricFilters method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeMetricFilters operation. // pageNum := 0 // err := client.DescribeMetricFiltersPages(params, // func(page *DescribeMetricFiltersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CloudWatchLogs) DescribeMetricFiltersPages(input *DescribeMetricFiltersInput, fn func(p *DescribeMetricFiltersOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeMetricFiltersRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeMetricFiltersOutput), lastPage) }) } const opDescribeSubscriptionFilters = "DescribeSubscriptionFilters" // DescribeSubscriptionFiltersRequest generates a "aws/request.Request" representing the // client's request for the DescribeSubscriptionFilters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSubscriptionFilters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSubscriptionFilters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSubscriptionFiltersRequest method. // req, resp := client.DescribeSubscriptionFiltersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) DescribeSubscriptionFiltersRequest(input *DescribeSubscriptionFiltersInput) (req *request.Request, output *DescribeSubscriptionFiltersOutput) { op := &request.Operation{ Name: opDescribeSubscriptionFilters, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &DescribeSubscriptionFiltersInput{} } req = c.newRequest(op, input, output) output = &DescribeSubscriptionFiltersOutput{} req.Data = output return } // DescribeSubscriptionFilters API operation for Amazon CloudWatch Logs. // // Returns all the subscription filters associated with the specified log group. // The list returned in the response is ASCII-sorted by filter name. // // By default, this operation returns up to 50 subscription filters. If there // are more subscription filters to list, the response would contain a nextToken // value in the response body. You can also limit the number of subscription // filters returned in the response by specifying the limit parameter in the // request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation DescribeSubscriptionFilters for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ResourceNotFoundException // Returned if the specified resource does not exist. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) DescribeSubscriptionFilters(input *DescribeSubscriptionFiltersInput) (*DescribeSubscriptionFiltersOutput, error) { req, out := c.DescribeSubscriptionFiltersRequest(input) err := req.Send() return out, err } // DescribeSubscriptionFiltersPages iterates over the pages of a DescribeSubscriptionFilters operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeSubscriptionFilters method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeSubscriptionFilters operation. // pageNum := 0 // err := client.DescribeSubscriptionFiltersPages(params, // func(page *DescribeSubscriptionFiltersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CloudWatchLogs) DescribeSubscriptionFiltersPages(input *DescribeSubscriptionFiltersInput, fn func(p *DescribeSubscriptionFiltersOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeSubscriptionFiltersRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeSubscriptionFiltersOutput), lastPage) }) } const opFilterLogEvents = "FilterLogEvents" // FilterLogEventsRequest generates a "aws/request.Request" representing the // client's request for the FilterLogEvents operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See FilterLogEvents for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the FilterLogEvents method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the FilterLogEventsRequest method. // req, resp := client.FilterLogEventsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) FilterLogEventsRequest(input *FilterLogEventsInput) (req *request.Request, output *FilterLogEventsOutput) { op := &request.Operation{ Name: opFilterLogEvents, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &FilterLogEventsInput{} } req = c.newRequest(op, input, output) output = &FilterLogEventsOutput{} req.Data = output return } // FilterLogEvents API operation for Amazon CloudWatch Logs. // // Retrieves log events, optionally filtered by a filter pattern from the specified // log group. You can provide an optional time range to filter the results on // the event timestamp. You can limit the streams searched to an explicit list // of logStreamNames. // // By default, this operation returns as much matching log events as can fit // in a response size of 1MB, up to 10,000 log events, or all the events found // within a time-bounded scan window. If the response includes a nextToken, // then there is more data to search, and the search can be resumed with a new // request providing the nextToken. The response will contain a list of searchedLogStreams // that contains information about which streams were searched in the request // and whether they have been searched completely or require further pagination. // The limit parameter in the request can be used to specify the maximum number // of events to return in a page. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation FilterLogEvents for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ResourceNotFoundException // Returned if the specified resource does not exist. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) FilterLogEvents(input *FilterLogEventsInput) (*FilterLogEventsOutput, error) { req, out := c.FilterLogEventsRequest(input) err := req.Send() return out, err } // FilterLogEventsPages iterates over the pages of a FilterLogEvents operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See FilterLogEvents method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a FilterLogEvents operation. // pageNum := 0 // err := client.FilterLogEventsPages(params, // func(page *FilterLogEventsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CloudWatchLogs) FilterLogEventsPages(input *FilterLogEventsInput, fn func(p *FilterLogEventsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.FilterLogEventsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*FilterLogEventsOutput), lastPage) }) } const opGetLogEvents = "GetLogEvents" // GetLogEventsRequest generates a "aws/request.Request" representing the // client's request for the GetLogEvents operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetLogEvents for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetLogEvents method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetLogEventsRequest method. // req, resp := client.GetLogEventsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) GetLogEventsRequest(input *GetLogEventsInput) (req *request.Request, output *GetLogEventsOutput) { op := &request.Operation{ Name: opGetLogEvents, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextForwardToken"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &GetLogEventsInput{} } req = c.newRequest(op, input, output) output = &GetLogEventsOutput{} req.Data = output return } // GetLogEvents API operation for Amazon CloudWatch Logs. // // Retrieves log events from the specified log stream. You can provide an optional // time range to filter the results on the event timestamp. // // By default, this operation returns as much log events as can fit in a response // size of 1MB, up to 10,000 log events. The response will always include a // nextForwardToken and a nextBackwardToken in the response body. You can use // any of these tokens in subsequent GetLogEvents requests to paginate through // events in either forward or backward direction. You can also limit the number // of log events returned in the response by specifying the limit parameter // in the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation GetLogEvents for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ResourceNotFoundException // Returned if the specified resource does not exist. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) GetLogEvents(input *GetLogEventsInput) (*GetLogEventsOutput, error) { req, out := c.GetLogEventsRequest(input) err := req.Send() return out, err } // GetLogEventsPages iterates over the pages of a GetLogEvents operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetLogEvents method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetLogEvents operation. // pageNum := 0 // err := client.GetLogEventsPages(params, // func(page *GetLogEventsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CloudWatchLogs) GetLogEventsPages(input *GetLogEventsInput, fn func(p *GetLogEventsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetLogEventsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetLogEventsOutput), lastPage) }) } const opPutDestination = "PutDestination" // PutDestinationRequest generates a "aws/request.Request" representing the // client's request for the PutDestination operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutDestination for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutDestination method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutDestinationRequest method. // req, resp := client.PutDestinationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) PutDestinationRequest(input *PutDestinationInput) (req *request.Request, output *PutDestinationOutput) { op := &request.Operation{ Name: opPutDestination, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutDestinationInput{} } req = c.newRequest(op, input, output) output = &PutDestinationOutput{} req.Data = output return } // PutDestination API operation for Amazon CloudWatch Logs. // // Creates or updates a Destination. A destination encapsulates a physical resource // (such as a Kinesis stream) and allows you to subscribe to a real-time stream // of log events of a different account, ingested through PutLogEvents requests. // Currently, the only supported physical resource is a Amazon Kinesis stream // belonging to the same account as the destination. // // A destination controls what is written to its Amazon Kinesis stream through // an access policy. By default, PutDestination does not set any access policy // with the destination, which means a cross-account user will not be able to // call PutSubscriptionFilter against this destination. To enable that, the // destination owner must call PutDestinationPolicy after PutDestination. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation PutDestination for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * OperationAbortedException // Returned if multiple requests to update the same resource were in conflict. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) PutDestination(input *PutDestinationInput) (*PutDestinationOutput, error) { req, out := c.PutDestinationRequest(input) err := req.Send() return out, err } const opPutDestinationPolicy = "PutDestinationPolicy" // PutDestinationPolicyRequest generates a "aws/request.Request" representing the // client's request for the PutDestinationPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutDestinationPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutDestinationPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutDestinationPolicyRequest method. // req, resp := client.PutDestinationPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) PutDestinationPolicyRequest(input *PutDestinationPolicyInput) (req *request.Request, output *PutDestinationPolicyOutput) { op := &request.Operation{ Name: opPutDestinationPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutDestinationPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutDestinationPolicyOutput{} req.Data = output return } // PutDestinationPolicy API operation for Amazon CloudWatch Logs. // // Creates or updates an access policy associated with an existing Destination. // An access policy is an IAM policy document (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies_overview.html) // that is used to authorize claims to register a subscription filter against // a given destination. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation PutDestinationPolicy for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * OperationAbortedException // Returned if multiple requests to update the same resource were in conflict. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) PutDestinationPolicy(input *PutDestinationPolicyInput) (*PutDestinationPolicyOutput, error) { req, out := c.PutDestinationPolicyRequest(input) err := req.Send() return out, err } const opPutLogEvents = "PutLogEvents" // PutLogEventsRequest generates a "aws/request.Request" representing the // client's request for the PutLogEvents operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutLogEvents for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutLogEvents method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutLogEventsRequest method. // req, resp := client.PutLogEventsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) PutLogEventsRequest(input *PutLogEventsInput) (req *request.Request, output *PutLogEventsOutput) { op := &request.Operation{ Name: opPutLogEvents, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutLogEventsInput{} } req = c.newRequest(op, input, output) output = &PutLogEventsOutput{} req.Data = output return } // PutLogEvents API operation for Amazon CloudWatch Logs. // // Uploads a batch of log events to the specified log stream. // // Every PutLogEvents request must include the sequenceToken obtained from the // response of the previous request. An upload in a newly created log stream // does not require a sequenceToken. You can also get the sequenceToken using // DescribeLogStreams. // // The batch of events must satisfy the following constraints: // // * The maximum batch size is 1,048,576 bytes, and this size is calculated // as the sum of all event messages in UTF-8, plus 26 bytes for each log // event. // // * None of the log events in the batch can be more than 2 hours in the // future. // // * None of the log events in the batch can be older than 14 days or the // retention period of the log group. // // * The log events in the batch must be in chronological ordered by their // timestamp. // // * The maximum number of log events in a batch is 10,000. // // * A batch of log events in a single PutLogEvents request cannot span more // than 24 hours. Otherwise, the PutLogEvents operation will fail. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation PutLogEvents for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * InvalidSequenceTokenException // // * DataAlreadyAcceptedException // // * ResourceNotFoundException // Returned if the specified resource does not exist. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) PutLogEvents(input *PutLogEventsInput) (*PutLogEventsOutput, error) { req, out := c.PutLogEventsRequest(input) err := req.Send() return out, err } const opPutMetricFilter = "PutMetricFilter" // PutMetricFilterRequest generates a "aws/request.Request" representing the // client's request for the PutMetricFilter operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutMetricFilter for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutMetricFilter method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutMetricFilterRequest method. // req, resp := client.PutMetricFilterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) PutMetricFilterRequest(input *PutMetricFilterInput) (req *request.Request, output *PutMetricFilterOutput) { op := &request.Operation{ Name: opPutMetricFilter, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutMetricFilterInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutMetricFilterOutput{} req.Data = output return } // PutMetricFilter API operation for Amazon CloudWatch Logs. // // Creates or updates a metric filter and associates it with the specified log // group. Metric filters allow you to configure rules to extract metric data // from log events ingested through PutLogEvents requests. // // The maximum number of metric filters that can be associated with a log group // is 100. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation PutMetricFilter for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ResourceNotFoundException // Returned if the specified resource does not exist. // // * OperationAbortedException // Returned if multiple requests to update the same resource were in conflict. // // * LimitExceededException // Returned if you have reached the maximum number of resources that can be // created. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) PutMetricFilter(input *PutMetricFilterInput) (*PutMetricFilterOutput, error) { req, out := c.PutMetricFilterRequest(input) err := req.Send() return out, err } const opPutRetentionPolicy = "PutRetentionPolicy" // PutRetentionPolicyRequest generates a "aws/request.Request" representing the // client's request for the PutRetentionPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutRetentionPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutRetentionPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutRetentionPolicyRequest method. // req, resp := client.PutRetentionPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) PutRetentionPolicyRequest(input *PutRetentionPolicyInput) (req *request.Request, output *PutRetentionPolicyOutput) { op := &request.Operation{ Name: opPutRetentionPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutRetentionPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutRetentionPolicyOutput{} req.Data = output return } // PutRetentionPolicy API operation for Amazon CloudWatch Logs. // // Sets the retention of the specified log group. A retention policy allows // you to configure the number of days you want to retain log events in the // specified log group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation PutRetentionPolicy for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ResourceNotFoundException // Returned if the specified resource does not exist. // // * OperationAbortedException // Returned if multiple requests to update the same resource were in conflict. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) PutRetentionPolicy(input *PutRetentionPolicyInput) (*PutRetentionPolicyOutput, error) { req, out := c.PutRetentionPolicyRequest(input) err := req.Send() return out, err } const opPutSubscriptionFilter = "PutSubscriptionFilter" // PutSubscriptionFilterRequest generates a "aws/request.Request" representing the // client's request for the PutSubscriptionFilter operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutSubscriptionFilter for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutSubscriptionFilter method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutSubscriptionFilterRequest method. // req, resp := client.PutSubscriptionFilterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) PutSubscriptionFilterRequest(input *PutSubscriptionFilterInput) (req *request.Request, output *PutSubscriptionFilterOutput) { op := &request.Operation{ Name: opPutSubscriptionFilter, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutSubscriptionFilterInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutSubscriptionFilterOutput{} req.Data = output return } // PutSubscriptionFilter API operation for Amazon CloudWatch Logs. // // Creates or updates a subscription filter and associates it with the specified // log group. Subscription filters allow you to subscribe to a real-time stream // of log events ingested through PutLogEvents requests and have them delivered // to a specific destination. Currently, the supported destinations are: // // * An Amazon Kinesis stream belonging to the same account as the subscription // filter, for same-account delivery. // // * A logical destination (used via an ARN of Destination) belonging to // a different account, for cross-account delivery. // // * An Amazon Kinesis Firehose stream belonging to the same account as the // subscription filter, for same-account delivery. // // * An AWS Lambda function belonging to the same account as the subscription // filter, for same-account delivery. // // Currently there can only be one subscription filter associated with a log // group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation PutSubscriptionFilter for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ResourceNotFoundException // Returned if the specified resource does not exist. // // * OperationAbortedException // Returned if multiple requests to update the same resource were in conflict. // // * LimitExceededException // Returned if you have reached the maximum number of resources that can be // created. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) PutSubscriptionFilter(input *PutSubscriptionFilterInput) (*PutSubscriptionFilterOutput, error) { req, out := c.PutSubscriptionFilterRequest(input) err := req.Send() return out, err } const opTestMetricFilter = "TestMetricFilter" // TestMetricFilterRequest generates a "aws/request.Request" representing the // client's request for the TestMetricFilter operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See TestMetricFilter for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the TestMetricFilter method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the TestMetricFilterRequest method. // req, resp := client.TestMetricFilterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CloudWatchLogs) TestMetricFilterRequest(input *TestMetricFilterInput) (req *request.Request, output *TestMetricFilterOutput) { op := &request.Operation{ Name: opTestMetricFilter, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &TestMetricFilterInput{} } req = c.newRequest(op, input, output) output = &TestMetricFilterOutput{} req.Data = output return } // TestMetricFilter API operation for Amazon CloudWatch Logs. // // Tests the filter pattern of a metric filter against a sample of log event // messages. You can use this operation to validate the correctness of a metric // filter pattern. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon CloudWatch Logs's // API operation TestMetricFilter for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Returned if a parameter of the request is incorrectly specified. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *CloudWatchLogs) TestMetricFilter(input *TestMetricFilterInput) (*TestMetricFilterOutput, error) { req, out := c.TestMetricFilterRequest(input) err := req.Send() return out, err } type CancelExportTaskInput struct { _ struct{} `type:"structure"` // Id of the export task to cancel. // // TaskId is a required field TaskId *string `locationName:"taskId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CancelExportTaskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelExportTaskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CancelExportTaskInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelExportTaskInput"} if s.TaskId == nil { invalidParams.Add(request.NewErrParamRequired("TaskId")) } if s.TaskId != nil && len(*s.TaskId) < 1 { invalidParams.Add(request.NewErrParamMinLen("TaskId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CancelExportTaskOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CancelExportTaskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelExportTaskOutput) GoString() string { return s.String() } type CreateExportTaskInput struct { _ struct{} `type:"structure"` // Name of Amazon S3 bucket to which the log data will be exported. // // Note: Only buckets in the same AWS region are supported. // // Destination is a required field Destination *string `locationName:"destination" min:"1" type:"string" required:"true"` // Prefix that will be used as the start of Amazon S3 key for every object exported. // If not specified, this defaults to 'exportedlogs'. DestinationPrefix *string `locationName:"destinationPrefix" type:"string"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. It indicates the start time of the range for the request. Events // with a timestamp prior to this time will not be exported. // // From is a required field From *int64 `locationName:"from" type:"long" required:"true"` // The name of the log group to export. // // LogGroupName is a required field LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` // Will only export log streams that match the provided logStreamNamePrefix. // If you don't specify a value, no prefix filter is applied. LogStreamNamePrefix *string `locationName:"logStreamNamePrefix" min:"1" type:"string"` // The name of the export task. TaskName *string `locationName:"taskName" min:"1" type:"string"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. It indicates the end time of the range for the request. Events // with a timestamp later than this time will not be exported. // // To is a required field To *int64 `locationName:"to" type:"long" required:"true"` } // String returns the string representation func (s CreateExportTaskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateExportTaskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateExportTaskInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateExportTaskInput"} if s.Destination == nil { invalidParams.Add(request.NewErrParamRequired("Destination")) } if s.Destination != nil && len(*s.Destination) < 1 { invalidParams.Add(request.NewErrParamMinLen("Destination", 1)) } if s.From == nil { invalidParams.Add(request.NewErrParamRequired("From")) } if s.LogGroupName == nil { invalidParams.Add(request.NewErrParamRequired("LogGroupName")) } if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) } if s.LogStreamNamePrefix != nil && len(*s.LogStreamNamePrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogStreamNamePrefix", 1)) } if s.TaskName != nil && len(*s.TaskName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TaskName", 1)) } if s.To == nil { invalidParams.Add(request.NewErrParamRequired("To")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateExportTaskOutput struct { _ struct{} `type:"structure"` // Id of the export task that got created. TaskId *string `locationName:"taskId" min:"1" type:"string"` } // String returns the string representation func (s CreateExportTaskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateExportTaskOutput) GoString() string { return s.String() } type CreateLogGroupInput struct { _ struct{} `type:"structure"` // The name of the log group to create. // // LogGroupName is a required field LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateLogGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLogGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateLogGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateLogGroupInput"} if s.LogGroupName == nil { invalidParams.Add(request.NewErrParamRequired("LogGroupName")) } if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateLogGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateLogGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLogGroupOutput) GoString() string { return s.String() } type CreateLogStreamInput struct { _ struct{} `type:"structure"` // The name of the log group under which the log stream is to be created. // // LogGroupName is a required field LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` // The name of the log stream to create. // // LogStreamName is a required field LogStreamName *string `locationName:"logStreamName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateLogStreamInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLogStreamInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateLogStreamInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateLogStreamInput"} if s.LogGroupName == nil { invalidParams.Add(request.NewErrParamRequired("LogGroupName")) } if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) } if s.LogStreamName == nil { invalidParams.Add(request.NewErrParamRequired("LogStreamName")) } if s.LogStreamName != nil && len(*s.LogStreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogStreamName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateLogStreamOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateLogStreamOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLogStreamOutput) GoString() string { return s.String() } type DeleteDestinationInput struct { _ struct{} `type:"structure"` // The name of destination to delete. // // DestinationName is a required field DestinationName *string `locationName:"destinationName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteDestinationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDestinationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDestinationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDestinationInput"} if s.DestinationName == nil { invalidParams.Add(request.NewErrParamRequired("DestinationName")) } if s.DestinationName != nil && len(*s.DestinationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DestinationName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteDestinationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteDestinationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDestinationOutput) GoString() string { return s.String() } type DeleteLogGroupInput struct { _ struct{} `type:"structure"` // The name of the log group to delete. // // LogGroupName is a required field LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteLogGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLogGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteLogGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteLogGroupInput"} if s.LogGroupName == nil { invalidParams.Add(request.NewErrParamRequired("LogGroupName")) } if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteLogGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteLogGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLogGroupOutput) GoString() string { return s.String() } type DeleteLogStreamInput struct { _ struct{} `type:"structure"` // The name of the log group under which the log stream to delete belongs. // // LogGroupName is a required field LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` // The name of the log stream to delete. // // LogStreamName is a required field LogStreamName *string `locationName:"logStreamName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteLogStreamInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLogStreamInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteLogStreamInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteLogStreamInput"} if s.LogGroupName == nil { invalidParams.Add(request.NewErrParamRequired("LogGroupName")) } if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) } if s.LogStreamName == nil { invalidParams.Add(request.NewErrParamRequired("LogStreamName")) } if s.LogStreamName != nil && len(*s.LogStreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogStreamName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteLogStreamOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteLogStreamOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLogStreamOutput) GoString() string { return s.String() } type DeleteMetricFilterInput struct { _ struct{} `type:"structure"` // The name of the metric filter to delete. // // FilterName is a required field FilterName *string `locationName:"filterName" min:"1" type:"string" required:"true"` // The name of the log group that is associated with the metric filter to delete. // // LogGroupName is a required field LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteMetricFilterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteMetricFilterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteMetricFilterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteMetricFilterInput"} if s.FilterName == nil { invalidParams.Add(request.NewErrParamRequired("FilterName")) } if s.FilterName != nil && len(*s.FilterName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FilterName", 1)) } if s.LogGroupName == nil { invalidParams.Add(request.NewErrParamRequired("LogGroupName")) } if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteMetricFilterOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteMetricFilterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteMetricFilterOutput) GoString() string { return s.String() } type DeleteRetentionPolicyInput struct { _ struct{} `type:"structure"` // The name of the log group that is associated with the retention policy to // delete. // // LogGroupName is a required field LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteRetentionPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRetentionPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteRetentionPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteRetentionPolicyInput"} if s.LogGroupName == nil { invalidParams.Add(request.NewErrParamRequired("LogGroupName")) } if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteRetentionPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteRetentionPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRetentionPolicyOutput) GoString() string { return s.String() } type DeleteSubscriptionFilterInput struct { _ struct{} `type:"structure"` // The name of the subscription filter to delete. // // FilterName is a required field FilterName *string `locationName:"filterName" min:"1" type:"string" required:"true"` // The name of the log group that is associated with the subscription filter // to delete. // // LogGroupName is a required field LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteSubscriptionFilterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSubscriptionFilterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteSubscriptionFilterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteSubscriptionFilterInput"} if s.FilterName == nil { invalidParams.Add(request.NewErrParamRequired("FilterName")) } if s.FilterName != nil && len(*s.FilterName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FilterName", 1)) } if s.LogGroupName == nil { invalidParams.Add(request.NewErrParamRequired("LogGroupName")) } if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteSubscriptionFilterOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteSubscriptionFilterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSubscriptionFilterOutput) GoString() string { return s.String() } type DescribeDestinationsInput struct { _ struct{} `type:"structure"` // Will only return destinations that match the provided destinationNamePrefix. // If you don't specify a value, no prefix is applied. DestinationNamePrefix *string `min:"1" type:"string"` // The maximum number of results to return. Limit *int64 `locationName:"limit" min:"1" type:"integer"` // A string token used for pagination that points to the next page of results. // It must be a value obtained from the response of the previous request. The // token expires after 24 hours. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s DescribeDestinationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDestinationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDestinationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDestinationsInput"} if s.DestinationNamePrefix != nil && len(*s.DestinationNamePrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("DestinationNamePrefix", 1)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeDestinationsOutput struct { _ struct{} `type:"structure"` Destinations []*Destination `locationName:"destinations" type:"list"` // A string token used for pagination that points to the next page of results. // It must be a value obtained from the response of the previous request. The // token expires after 24 hours. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s DescribeDestinationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDestinationsOutput) GoString() string { return s.String() } type DescribeExportTasksInput struct { _ struct{} `type:"structure"` // The maximum number of items returned in the response. If you don't specify // a value, the request would return up to 50 items. Limit *int64 `locationName:"limit" min:"1" type:"integer"` // A string token used for pagination that points to the next page of results. // It must be a value obtained from the response of the previous DescribeExportTasks // request. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // All export tasks that matches the specified status code will be returned. // This can return zero or more export tasks. StatusCode *string `locationName:"statusCode" type:"string" enum:"ExportTaskStatusCode"` // Export task that matches the specified task Id will be returned. This can // result in zero or one export task. TaskId *string `locationName:"taskId" min:"1" type:"string"` } // String returns the string representation func (s DescribeExportTasksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeExportTasksInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeExportTasksInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeExportTasksInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.TaskId != nil && len(*s.TaskId) < 1 { invalidParams.Add(request.NewErrParamMinLen("TaskId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeExportTasksOutput struct { _ struct{} `type:"structure"` // A list of export tasks. ExportTasks []*ExportTask `locationName:"exportTasks" type:"list"` // A string token used for pagination that points to the next page of results. // It must be a value obtained from the response of the previous request. The // token expires after 24 hours. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s DescribeExportTasksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeExportTasksOutput) GoString() string { return s.String() } type DescribeLogGroupsInput struct { _ struct{} `type:"structure"` // The maximum number of items returned in the response. If you don't specify // a value, the request would return up to 50 items. Limit *int64 `locationName:"limit" min:"1" type:"integer"` // Will only return log groups that match the provided logGroupNamePrefix. If // you don't specify a value, no prefix filter is applied. LogGroupNamePrefix *string `locationName:"logGroupNamePrefix" min:"1" type:"string"` // A string token used for pagination that points to the next page of results. // It must be a value obtained from the response of the previous DescribeLogGroups // request. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s DescribeLogGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLogGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeLogGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeLogGroupsInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.LogGroupNamePrefix != nil && len(*s.LogGroupNamePrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogGroupNamePrefix", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeLogGroupsOutput struct { _ struct{} `type:"structure"` // A list of log groups. LogGroups []*LogGroup `locationName:"logGroups" type:"list"` // A string token used for pagination that points to the next page of results. // It must be a value obtained from the response of the previous request. The // token expires after 24 hours. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s DescribeLogGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLogGroupsOutput) GoString() string { return s.String() } type DescribeLogStreamsInput struct { _ struct{} `type:"structure"` // If set to true, results are returned in descending order. If you don't specify // a value or set it to false, results are returned in ascending order. Descending *bool `locationName:"descending" type:"boolean"` // The maximum number of items returned in the response. If you don't specify // a value, the request would return up to 50 items. Limit *int64 `locationName:"limit" min:"1" type:"integer"` // The log group name for which log streams are to be listed. // // LogGroupName is a required field LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` // Will only return log streams that match the provided logStreamNamePrefix. // If you don't specify a value, no prefix filter is applied. LogStreamNamePrefix *string `locationName:"logStreamNamePrefix" min:"1" type:"string"` // A string token used for pagination that points to the next page of results. // It must be a value obtained from the response of the previous DescribeLogStreams // request. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // Specifies what to order the returned log streams by. Valid arguments are // 'LogStreamName' or 'LastEventTime'. If you don't specify a value, results // are ordered by LogStreamName. If 'LastEventTime' is chosen, the request cannot // also contain a logStreamNamePrefix. OrderBy *string `locationName:"orderBy" type:"string" enum:"OrderBy"` } // String returns the string representation func (s DescribeLogStreamsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLogStreamsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeLogStreamsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeLogStreamsInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.LogGroupName == nil { invalidParams.Add(request.NewErrParamRequired("LogGroupName")) } if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) } if s.LogStreamNamePrefix != nil && len(*s.LogStreamNamePrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogStreamNamePrefix", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeLogStreamsOutput struct { _ struct{} `type:"structure"` // A list of log streams. LogStreams []*LogStream `locationName:"logStreams" type:"list"` // A string token used for pagination that points to the next page of results. // It must be a value obtained from the response of the previous request. The // token expires after 24 hours. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s DescribeLogStreamsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLogStreamsOutput) GoString() string { return s.String() } type DescribeMetricFiltersInput struct { _ struct{} `type:"structure"` // Will only return metric filters that match the provided filterNamePrefix. // If you don't specify a value, no prefix filter is applied. FilterNamePrefix *string `locationName:"filterNamePrefix" min:"1" type:"string"` // The maximum number of items returned in the response. If you don't specify // a value, the request would return up to 50 items. Limit *int64 `locationName:"limit" min:"1" type:"integer"` // The log group name for which metric filters are to be listed. // // LogGroupName is a required field LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` // A string token used for pagination that points to the next page of results. // It must be a value obtained from the response of the previous DescribeMetricFilters // request. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s DescribeMetricFiltersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeMetricFiltersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeMetricFiltersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeMetricFiltersInput"} if s.FilterNamePrefix != nil && len(*s.FilterNamePrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("FilterNamePrefix", 1)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.LogGroupName == nil { invalidParams.Add(request.NewErrParamRequired("LogGroupName")) } if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeMetricFiltersOutput struct { _ struct{} `type:"structure"` MetricFilters []*MetricFilter `locationName:"metricFilters" type:"list"` // A string token used for pagination that points to the next page of results. // It must be a value obtained from the response of the previous request. The // token expires after 24 hours. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s DescribeMetricFiltersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeMetricFiltersOutput) GoString() string { return s.String() } type DescribeSubscriptionFiltersInput struct { _ struct{} `type:"structure"` // Will only return subscription filters that match the provided filterNamePrefix. // If you don't specify a value, no prefix filter is applied. FilterNamePrefix *string `locationName:"filterNamePrefix" min:"1" type:"string"` // The maximum number of results to return. Limit *int64 `locationName:"limit" min:"1" type:"integer"` // The log group name for which subscription filters are to be listed. // // LogGroupName is a required field LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` // A string token used for pagination that points to the next page of results. // It must be a value obtained from the response of the previous request. The // token expires after 24 hours. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s DescribeSubscriptionFiltersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSubscriptionFiltersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeSubscriptionFiltersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeSubscriptionFiltersInput"} if s.FilterNamePrefix != nil && len(*s.FilterNamePrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("FilterNamePrefix", 1)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.LogGroupName == nil { invalidParams.Add(request.NewErrParamRequired("LogGroupName")) } if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeSubscriptionFiltersOutput struct { _ struct{} `type:"structure"` // A string token used for pagination that points to the next page of results. // It must be a value obtained from the response of the previous request. The // token expires after 24 hours. NextToken *string `locationName:"nextToken" min:"1" type:"string"` SubscriptionFilters []*SubscriptionFilter `locationName:"subscriptionFilters" type:"list"` } // String returns the string representation func (s DescribeSubscriptionFiltersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSubscriptionFiltersOutput) GoString() string { return s.String() } // A cross account destination that is the recipient of subscription log events. type Destination struct { _ struct{} `type:"structure"` // An IAM policy document that governs which AWS accounts can create subscription // filters against this destination. AccessPolicy *string `locationName:"accessPolicy" min:"1" type:"string"` // ARN of this destination. Arn *string `locationName:"arn" type:"string"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC specifying when this destination was created. CreationTime *int64 `locationName:"creationTime" type:"long"` // Name of the destination. DestinationName *string `locationName:"destinationName" min:"1" type:"string"` // A role for impersonation for delivering log events to the target. RoleArn *string `locationName:"roleArn" min:"1" type:"string"` // ARN of the physical target where the log events will be delivered (eg. ARN // of a Kinesis stream). TargetArn *string `locationName:"targetArn" min:"1" type:"string"` } // String returns the string representation func (s Destination) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Destination) GoString() string { return s.String() } // Represents an export task. type ExportTask struct { _ struct{} `type:"structure"` // Name of Amazon S3 bucket to which the log data was exported. Destination *string `locationName:"destination" min:"1" type:"string"` // Prefix that was used as the start of Amazon S3 key for every object exported. DestinationPrefix *string `locationName:"destinationPrefix" type:"string"` // Execution info about the export task. ExecutionInfo *ExportTaskExecutionInfo `locationName:"executionInfo" type:"structure"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. Events with a timestamp prior to this time are not exported. From *int64 `locationName:"from" type:"long"` // The name of the log group from which logs data was exported. LogGroupName *string `locationName:"logGroupName" min:"1" type:"string"` // Status of the export task. Status *ExportTaskStatus `locationName:"status" type:"structure"` // Id of the export task. TaskId *string `locationName:"taskId" min:"1" type:"string"` // The name of the export task. TaskName *string `locationName:"taskName" min:"1" type:"string"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. Events with a timestamp later than this time are not exported. To *int64 `locationName:"to" type:"long"` } // String returns the string representation func (s ExportTask) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExportTask) GoString() string { return s.String() } // Represents the status of an export task. type ExportTaskExecutionInfo struct { _ struct{} `type:"structure"` // A point in time when the export task got completed. CompletionTime *int64 `locationName:"completionTime" type:"long"` // A point in time when the export task got created. CreationTime *int64 `locationName:"creationTime" type:"long"` } // String returns the string representation func (s ExportTaskExecutionInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExportTaskExecutionInfo) GoString() string { return s.String() } // Represents the status of an export task. type ExportTaskStatus struct { _ struct{} `type:"structure"` // Status code of the export task. Code *string `locationName:"code" type:"string" enum:"ExportTaskStatusCode"` // Status message related to the code. Message *string `locationName:"message" type:"string"` } // String returns the string representation func (s ExportTaskStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExportTaskStatus) GoString() string { return s.String() } type FilterLogEventsInput struct { _ struct{} `type:"structure"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. If provided, events with a timestamp later than this time are // not returned. EndTime *int64 `locationName:"endTime" type:"long"` // A valid CloudWatch Logs filter pattern to use for filtering the response. // If not provided, all the events are matched. FilterPattern *string `locationName:"filterPattern" type:"string"` // If provided, the API will make a best effort to provide responses that contain // events from multiple log streams within the log group interleaved in a single // response. If not provided, all the matched log events in the first log stream // will be searched first, then those in the next log stream, etc. Interleaved *bool `locationName:"interleaved" type:"boolean"` // The maximum number of events to return in a page of results. Default is 10,000 // events. Limit *int64 `locationName:"limit" min:"1" type:"integer"` // The name of the log group to query. // // LogGroupName is a required field LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` // Optional list of log stream names within the specified log group to search. // Defaults to all the log streams in the log group. LogStreamNames []*string `locationName:"logStreamNames" min:"1" type:"list"` // A pagination token obtained from a FilterLogEvents response to continue paginating // the FilterLogEvents results. This token is omitted from the response when // there are no other events to display. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. If provided, events with a timestamp prior to this time are // not returned. StartTime *int64 `locationName:"startTime" type:"long"` } // String returns the string representation func (s FilterLogEventsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FilterLogEventsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *FilterLogEventsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "FilterLogEventsInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.LogGroupName == nil { invalidParams.Add(request.NewErrParamRequired("LogGroupName")) } if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) } if s.LogStreamNames != nil && len(s.LogStreamNames) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogStreamNames", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type FilterLogEventsOutput struct { _ struct{} `type:"structure"` // A list of FilteredLogEvent objects representing the matched events from the // request. Events []*FilteredLogEvent `locationName:"events" type:"list"` // A pagination token obtained from a FilterLogEvents response to continue paginating // the FilterLogEvents results. This token is omitted from the response when // there are no other events to display. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // A list of SearchedLogStream objects indicating which log streams have been // searched in this request and whether each has been searched completely or // still has more to be paginated. SearchedLogStreams []*SearchedLogStream `locationName:"searchedLogStreams" type:"list"` } // String returns the string representation func (s FilterLogEventsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FilterLogEventsOutput) GoString() string { return s.String() } // Represents a matched event from a FilterLogEvents request. type FilteredLogEvent struct { _ struct{} `type:"structure"` // A unique identifier for this event. EventId *string `locationName:"eventId" type:"string"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. IngestionTime *int64 `locationName:"ingestionTime" type:"long"` // The name of the log stream this event belongs to. LogStreamName *string `locationName:"logStreamName" min:"1" type:"string"` // The data contained in the log event. Message *string `locationName:"message" min:"1" type:"string"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. Timestamp *int64 `locationName:"timestamp" type:"long"` } // String returns the string representation func (s FilteredLogEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FilteredLogEvent) GoString() string { return s.String() } type GetLogEventsInput struct { _ struct{} `type:"structure"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. EndTime *int64 `locationName:"endTime" type:"long"` // The maximum number of log events returned in the response. If you don't specify // a value, the request would return as many log events as can fit in a response // size of 1MB, up to 10,000 log events. Limit *int64 `locationName:"limit" min:"1" type:"integer"` // The name of the log group to query. // // LogGroupName is a required field LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` // The name of the log stream to query. // // LogStreamName is a required field LogStreamName *string `locationName:"logStreamName" min:"1" type:"string" required:"true"` // A string token used for pagination that points to the next page of results. // It must be a value obtained from the nextForwardToken or nextBackwardToken // fields in the response of the previous GetLogEvents request. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // If set to true, the earliest log events would be returned first. The default // is false (the latest log events are returned first). StartFromHead *bool `locationName:"startFromHead" type:"boolean"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. StartTime *int64 `locationName:"startTime" type:"long"` } // String returns the string representation func (s GetLogEventsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetLogEventsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetLogEventsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetLogEventsInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.LogGroupName == nil { invalidParams.Add(request.NewErrParamRequired("LogGroupName")) } if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) } if s.LogStreamName == nil { invalidParams.Add(request.NewErrParamRequired("LogStreamName")) } if s.LogStreamName != nil && len(*s.LogStreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogStreamName", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetLogEventsOutput struct { _ struct{} `type:"structure"` Events []*OutputLogEvent `locationName:"events" type:"list"` // A string token used for pagination that points to the next page of results. // It must be a value obtained from the response of the previous request. The // token expires after 24 hours. NextBackwardToken *string `locationName:"nextBackwardToken" min:"1" type:"string"` // A string token used for pagination that points to the next page of results. // It must be a value obtained from the response of the previous request. The // token expires after 24 hours. NextForwardToken *string `locationName:"nextForwardToken" min:"1" type:"string"` } // String returns the string representation func (s GetLogEventsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetLogEventsOutput) GoString() string { return s.String() } // A log event is a record of some activity that was recorded by the application // or resource being monitored. The log event record that CloudWatch Logs understands // contains two properties: the timestamp of when the event occurred, and the // raw event message. type InputLogEvent struct { _ struct{} `type:"structure"` // Message is a required field Message *string `locationName:"message" min:"1" type:"string" required:"true"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. // // Timestamp is a required field Timestamp *int64 `locationName:"timestamp" type:"long" required:"true"` } // String returns the string representation func (s InputLogEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InputLogEvent) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InputLogEvent) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InputLogEvent"} if s.Message == nil { invalidParams.Add(request.NewErrParamRequired("Message")) } if s.Message != nil && len(*s.Message) < 1 { invalidParams.Add(request.NewErrParamMinLen("Message", 1)) } if s.Timestamp == nil { invalidParams.Add(request.NewErrParamRequired("Timestamp")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type LogGroup struct { _ struct{} `type:"structure"` Arn *string `locationName:"arn" type:"string"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. CreationTime *int64 `locationName:"creationTime" type:"long"` LogGroupName *string `locationName:"logGroupName" min:"1" type:"string"` // The number of metric filters associated with the log group. MetricFilterCount *int64 `locationName:"metricFilterCount" type:"integer"` // Specifies the number of days you want to retain log events in the specified // log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, // 365, 400, 545, 731, 1827, 3653. RetentionInDays *int64 `locationName:"retentionInDays" type:"integer"` StoredBytes *int64 `locationName:"storedBytes" type:"long"` } // String returns the string representation func (s LogGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LogGroup) GoString() string { return s.String() } // A log stream is sequence of log events from a single emitter of logs. type LogStream struct { _ struct{} `type:"structure"` Arn *string `locationName:"arn" type:"string"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. CreationTime *int64 `locationName:"creationTime" type:"long"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. FirstEventTimestamp *int64 `locationName:"firstEventTimestamp" type:"long"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. LastEventTimestamp *int64 `locationName:"lastEventTimestamp" type:"long"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. LastIngestionTime *int64 `locationName:"lastIngestionTime" type:"long"` LogStreamName *string `locationName:"logStreamName" min:"1" type:"string"` StoredBytes *int64 `locationName:"storedBytes" type:"long"` // A string token used for making PutLogEvents requests. A sequenceToken can // only be used once, and PutLogEvents requests must include the sequenceToken // obtained from the response of the previous request. UploadSequenceToken *string `locationName:"uploadSequenceToken" min:"1" type:"string"` } // String returns the string representation func (s LogStream) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LogStream) GoString() string { return s.String() } // Metric filters can be used to express how CloudWatch Logs would extract metric // observations from ingested log events and transform them to metric data in // a CloudWatch metric. type MetricFilter struct { _ struct{} `type:"structure"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. CreationTime *int64 `locationName:"creationTime" type:"long"` // A name for a metric or subscription filter. FilterName *string `locationName:"filterName" min:"1" type:"string"` // A symbolic description of how CloudWatch Logs should interpret the data in // each log event. For example, a log event may contain timestamps, IP addresses, // strings, and so on. You use the filter pattern to specify what to look for // in the log event message. FilterPattern *string `locationName:"filterPattern" type:"string"` MetricTransformations []*MetricTransformation `locationName:"metricTransformations" min:"1" type:"list"` } // String returns the string representation func (s MetricFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MetricFilter) GoString() string { return s.String() } type MetricFilterMatchRecord struct { _ struct{} `type:"structure"` EventMessage *string `locationName:"eventMessage" min:"1" type:"string"` EventNumber *int64 `locationName:"eventNumber" type:"long"` ExtractedValues map[string]*string `locationName:"extractedValues" type:"map"` } // String returns the string representation func (s MetricFilterMatchRecord) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MetricFilterMatchRecord) GoString() string { return s.String() } type MetricTransformation struct { _ struct{} `type:"structure"` // (Optional) A default value to emit when a filter pattern does not match a // log event. Can be null. DefaultValue *float64 `locationName:"defaultValue" type:"double"` // Name of the metric. // // MetricName is a required field MetricName *string `locationName:"metricName" type:"string" required:"true"` // Namespace to which the metric belongs. // // MetricNamespace is a required field MetricNamespace *string `locationName:"metricNamespace" type:"string" required:"true"` // A string representing a value to publish to this metric when a filter pattern // matches a log event. // // MetricValue is a required field MetricValue *string `locationName:"metricValue" type:"string" required:"true"` } // String returns the string representation func (s MetricTransformation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MetricTransformation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MetricTransformation) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MetricTransformation"} if s.MetricName == nil { invalidParams.Add(request.NewErrParamRequired("MetricName")) } if s.MetricNamespace == nil { invalidParams.Add(request.NewErrParamRequired("MetricNamespace")) } if s.MetricValue == nil { invalidParams.Add(request.NewErrParamRequired("MetricValue")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type OutputLogEvent struct { _ struct{} `type:"structure"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. IngestionTime *int64 `locationName:"ingestionTime" type:"long"` Message *string `locationName:"message" min:"1" type:"string"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. Timestamp *int64 `locationName:"timestamp" type:"long"` } // String returns the string representation func (s OutputLogEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OutputLogEvent) GoString() string { return s.String() } type PutDestinationInput struct { _ struct{} `type:"structure"` // A name for the destination. // // DestinationName is a required field DestinationName *string `locationName:"destinationName" min:"1" type:"string" required:"true"` // The ARN of an IAM role that grants CloudWatch Logs permissions to do Amazon // Kinesis PutRecord requests on the destination stream. // // RoleArn is a required field RoleArn *string `locationName:"roleArn" min:"1" type:"string" required:"true"` // The ARN of an Amazon Kinesis stream to deliver matching log events to. // // TargetArn is a required field TargetArn *string `locationName:"targetArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s PutDestinationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutDestinationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutDestinationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutDestinationInput"} if s.DestinationName == nil { invalidParams.Add(request.NewErrParamRequired("DestinationName")) } if s.DestinationName != nil && len(*s.DestinationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DestinationName", 1)) } if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if s.RoleArn != nil && len(*s.RoleArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1)) } if s.TargetArn == nil { invalidParams.Add(request.NewErrParamRequired("TargetArn")) } if s.TargetArn != nil && len(*s.TargetArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("TargetArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutDestinationOutput struct { _ struct{} `type:"structure"` // A cross account destination that is the recipient of subscription log events. Destination *Destination `locationName:"destination" type:"structure"` } // String returns the string representation func (s PutDestinationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutDestinationOutput) GoString() string { return s.String() } type PutDestinationPolicyInput struct { _ struct{} `type:"structure"` // An IAM policy document that authorizes cross-account users to deliver their // log events to associated destination. // // AccessPolicy is a required field AccessPolicy *string `locationName:"accessPolicy" min:"1" type:"string" required:"true"` // A name for an existing destination. // // DestinationName is a required field DestinationName *string `locationName:"destinationName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s PutDestinationPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutDestinationPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutDestinationPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutDestinationPolicyInput"} if s.AccessPolicy == nil { invalidParams.Add(request.NewErrParamRequired("AccessPolicy")) } if s.AccessPolicy != nil && len(*s.AccessPolicy) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccessPolicy", 1)) } if s.DestinationName == nil { invalidParams.Add(request.NewErrParamRequired("DestinationName")) } if s.DestinationName != nil && len(*s.DestinationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DestinationName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutDestinationPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutDestinationPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutDestinationPolicyOutput) GoString() string { return s.String() } type PutLogEventsInput struct { _ struct{} `type:"structure"` // A list of log events belonging to a log stream. // // LogEvents is a required field LogEvents []*InputLogEvent `locationName:"logEvents" min:"1" type:"list" required:"true"` // The name of the log group to put log events to. // // LogGroupName is a required field LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` // The name of the log stream to put log events to. // // LogStreamName is a required field LogStreamName *string `locationName:"logStreamName" min:"1" type:"string" required:"true"` // A string token that must be obtained from the response of the previous PutLogEvents // request. SequenceToken *string `locationName:"sequenceToken" min:"1" type:"string"` } // String returns the string representation func (s PutLogEventsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutLogEventsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutLogEventsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutLogEventsInput"} if s.LogEvents == nil { invalidParams.Add(request.NewErrParamRequired("LogEvents")) } if s.LogEvents != nil && len(s.LogEvents) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogEvents", 1)) } if s.LogGroupName == nil { invalidParams.Add(request.NewErrParamRequired("LogGroupName")) } if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) } if s.LogStreamName == nil { invalidParams.Add(request.NewErrParamRequired("LogStreamName")) } if s.LogStreamName != nil && len(*s.LogStreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogStreamName", 1)) } if s.SequenceToken != nil && len(*s.SequenceToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("SequenceToken", 1)) } if s.LogEvents != nil { for i, v := range s.LogEvents { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "LogEvents", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutLogEventsOutput struct { _ struct{} `type:"structure"` // A string token used for making PutLogEvents requests. A sequenceToken can // only be used once, and PutLogEvents requests must include the sequenceToken // obtained from the response of the previous request. NextSequenceToken *string `locationName:"nextSequenceToken" min:"1" type:"string"` RejectedLogEventsInfo *RejectedLogEventsInfo `locationName:"rejectedLogEventsInfo" type:"structure"` } // String returns the string representation func (s PutLogEventsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutLogEventsOutput) GoString() string { return s.String() } type PutMetricFilterInput struct { _ struct{} `type:"structure"` // A name for the metric filter. // // FilterName is a required field FilterName *string `locationName:"filterName" min:"1" type:"string" required:"true"` // A valid CloudWatch Logs filter pattern for extracting metric data out of // ingested log events. // // FilterPattern is a required field FilterPattern *string `locationName:"filterPattern" type:"string" required:"true"` // The name of the log group to associate the metric filter with. // // LogGroupName is a required field LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` // A collection of information needed to define how metric data gets emitted. // // MetricTransformations is a required field MetricTransformations []*MetricTransformation `locationName:"metricTransformations" min:"1" type:"list" required:"true"` } // String returns the string representation func (s PutMetricFilterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutMetricFilterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutMetricFilterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutMetricFilterInput"} if s.FilterName == nil { invalidParams.Add(request.NewErrParamRequired("FilterName")) } if s.FilterName != nil && len(*s.FilterName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FilterName", 1)) } if s.FilterPattern == nil { invalidParams.Add(request.NewErrParamRequired("FilterPattern")) } if s.LogGroupName == nil { invalidParams.Add(request.NewErrParamRequired("LogGroupName")) } if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) } if s.MetricTransformations == nil { invalidParams.Add(request.NewErrParamRequired("MetricTransformations")) } if s.MetricTransformations != nil && len(s.MetricTransformations) < 1 { invalidParams.Add(request.NewErrParamMinLen("MetricTransformations", 1)) } if s.MetricTransformations != nil { for i, v := range s.MetricTransformations { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MetricTransformations", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutMetricFilterOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutMetricFilterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutMetricFilterOutput) GoString() string { return s.String() } type PutRetentionPolicyInput struct { _ struct{} `type:"structure"` // The name of the log group to associate the retention policy with. // // LogGroupName is a required field LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` // Specifies the number of days you want to retain log events in the specified // log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, // 365, 400, 545, 731, 1827, 3653. // // RetentionInDays is a required field RetentionInDays *int64 `locationName:"retentionInDays" type:"integer" required:"true"` } // String returns the string representation func (s PutRetentionPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRetentionPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutRetentionPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutRetentionPolicyInput"} if s.LogGroupName == nil { invalidParams.Add(request.NewErrParamRequired("LogGroupName")) } if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) } if s.RetentionInDays == nil { invalidParams.Add(request.NewErrParamRequired("RetentionInDays")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutRetentionPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutRetentionPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRetentionPolicyOutput) GoString() string { return s.String() } type PutSubscriptionFilterInput struct { _ struct{} `type:"structure"` // The ARN of the destination to deliver matching log events to. Currently, // the supported destinations are: // // * An Amazon Kinesis stream belonging to the same account as the subscription // filter, for same-account delivery. // // * A logical destination (used via an ARN of Destination) belonging to // a different account, for cross-account delivery. // // * An Amazon Kinesis Firehose stream belonging to the same account as the // subscription filter, for same-account delivery. // // * An AWS Lambda function belonging to the same account as the subscription // filter, for same-account delivery. // // DestinationArn is a required field DestinationArn *string `locationName:"destinationArn" min:"1" type:"string" required:"true"` // A name for the subscription filter. // // FilterName is a required field FilterName *string `locationName:"filterName" min:"1" type:"string" required:"true"` // A valid CloudWatch Logs filter pattern for subscribing to a filtered stream // of log events. // // FilterPattern is a required field FilterPattern *string `locationName:"filterPattern" type:"string" required:"true"` // The name of the log group to associate the subscription filter with. // // LogGroupName is a required field LogGroupName *string `locationName:"logGroupName" min:"1" type:"string" required:"true"` // The ARN of an IAM role that grants CloudWatch Logs permissions to deliver // ingested log events to the destination stream. You don't need to provide // the ARN when you are working with a logical destination (used via an ARN // of Destination) for cross-account delivery. RoleArn *string `locationName:"roleArn" min:"1" type:"string"` } // String returns the string representation func (s PutSubscriptionFilterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutSubscriptionFilterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutSubscriptionFilterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutSubscriptionFilterInput"} if s.DestinationArn == nil { invalidParams.Add(request.NewErrParamRequired("DestinationArn")) } if s.DestinationArn != nil && len(*s.DestinationArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("DestinationArn", 1)) } if s.FilterName == nil { invalidParams.Add(request.NewErrParamRequired("FilterName")) } if s.FilterName != nil && len(*s.FilterName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FilterName", 1)) } if s.FilterPattern == nil { invalidParams.Add(request.NewErrParamRequired("FilterPattern")) } if s.LogGroupName == nil { invalidParams.Add(request.NewErrParamRequired("LogGroupName")) } if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) } if s.RoleArn != nil && len(*s.RoleArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutSubscriptionFilterOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutSubscriptionFilterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutSubscriptionFilterOutput) GoString() string { return s.String() } type RejectedLogEventsInfo struct { _ struct{} `type:"structure"` ExpiredLogEventEndIndex *int64 `locationName:"expiredLogEventEndIndex" type:"integer"` TooNewLogEventStartIndex *int64 `locationName:"tooNewLogEventStartIndex" type:"integer"` TooOldLogEventEndIndex *int64 `locationName:"tooOldLogEventEndIndex" type:"integer"` } // String returns the string representation func (s RejectedLogEventsInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RejectedLogEventsInfo) GoString() string { return s.String() } // An object indicating the search status of a log stream in a FilterLogEvents // request. type SearchedLogStream struct { _ struct{} `type:"structure"` // The name of the log stream. LogStreamName *string `locationName:"logStreamName" min:"1" type:"string"` // Indicates whether all the events in this log stream were searched or more // data exists to search by paginating further. SearchedCompletely *bool `locationName:"searchedCompletely" type:"boolean"` } // String returns the string representation func (s SearchedLogStream) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SearchedLogStream) GoString() string { return s.String() } type SubscriptionFilter struct { _ struct{} `type:"structure"` // A point in time expressed as the number of milliseconds since Jan 1, 1970 // 00:00:00 UTC. CreationTime *int64 `locationName:"creationTime" type:"long"` DestinationArn *string `locationName:"destinationArn" min:"1" type:"string"` // A name for a metric or subscription filter. FilterName *string `locationName:"filterName" min:"1" type:"string"` // A symbolic description of how CloudWatch Logs should interpret the data in // each log event. For example, a log event may contain timestamps, IP addresses, // strings, and so on. You use the filter pattern to specify what to look for // in the log event message. FilterPattern *string `locationName:"filterPattern" type:"string"` LogGroupName *string `locationName:"logGroupName" min:"1" type:"string"` RoleArn *string `locationName:"roleArn" min:"1" type:"string"` } // String returns the string representation func (s SubscriptionFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SubscriptionFilter) GoString() string { return s.String() } type TestMetricFilterInput struct { _ struct{} `type:"structure"` // A symbolic description of how CloudWatch Logs should interpret the data in // each log event. For example, a log event may contain timestamps, IP addresses, // strings, and so on. You use the filter pattern to specify what to look for // in the log event message. // // FilterPattern is a required field FilterPattern *string `locationName:"filterPattern" type:"string" required:"true"` // A list of log event messages to test. // // LogEventMessages is a required field LogEventMessages []*string `locationName:"logEventMessages" min:"1" type:"list" required:"true"` } // String returns the string representation func (s TestMetricFilterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TestMetricFilterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TestMetricFilterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TestMetricFilterInput"} if s.FilterPattern == nil { invalidParams.Add(request.NewErrParamRequired("FilterPattern")) } if s.LogEventMessages == nil { invalidParams.Add(request.NewErrParamRequired("LogEventMessages")) } if s.LogEventMessages != nil && len(s.LogEventMessages) < 1 { invalidParams.Add(request.NewErrParamMinLen("LogEventMessages", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type TestMetricFilterOutput struct { _ struct{} `type:"structure"` Matches []*MetricFilterMatchRecord `locationName:"matches" type:"list"` } // String returns the string representation func (s TestMetricFilterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TestMetricFilterOutput) GoString() string { return s.String() } const ( // ExportTaskStatusCodeCancelled is a ExportTaskStatusCode enum value ExportTaskStatusCodeCancelled = "CANCELLED" // ExportTaskStatusCodeCompleted is a ExportTaskStatusCode enum value ExportTaskStatusCodeCompleted = "COMPLETED" // ExportTaskStatusCodeFailed is a ExportTaskStatusCode enum value ExportTaskStatusCodeFailed = "FAILED" // ExportTaskStatusCodePending is a ExportTaskStatusCode enum value ExportTaskStatusCodePending = "PENDING" // ExportTaskStatusCodePendingCancel is a ExportTaskStatusCode enum value ExportTaskStatusCodePendingCancel = "PENDING_CANCEL" // ExportTaskStatusCodeRunning is a ExportTaskStatusCode enum value ExportTaskStatusCodeRunning = "RUNNING" ) const ( // OrderByLogStreamName is a OrderBy enum value OrderByLogStreamName = "LogStreamName" // OrderByLastEventTime is a OrderBy enum value OrderByLastEventTime = "LastEventTime" ) aws-sdk-go-1.4.22/service/cloudwatchlogs/cloudwatchlogsiface/000077500000000000000000000000001300374646400242575ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cloudwatchlogs/cloudwatchlogsiface/interface.go000066400000000000000000000220041300374646400265440ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cloudwatchlogsiface provides an interface to enable mocking the Amazon CloudWatch Logs service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package cloudwatchlogsiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/cloudwatchlogs" ) // CloudWatchLogsAPI provides an interface to enable mocking the // cloudwatchlogs.CloudWatchLogs service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon CloudWatch Logs. // func myFunc(svc cloudwatchlogsiface.CloudWatchLogsAPI) bool { // // Make svc.CancelExportTask request // } // // func main() { // sess := session.New() // svc := cloudwatchlogs.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockCloudWatchLogsClient struct { // cloudwatchlogsiface.CloudWatchLogsAPI // } // func (m *mockCloudWatchLogsClient) CancelExportTask(input *cloudwatchlogs.CancelExportTaskInput) (*cloudwatchlogs.CancelExportTaskOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockCloudWatchLogsClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type CloudWatchLogsAPI interface { CancelExportTaskRequest(*cloudwatchlogs.CancelExportTaskInput) (*request.Request, *cloudwatchlogs.CancelExportTaskOutput) CancelExportTask(*cloudwatchlogs.CancelExportTaskInput) (*cloudwatchlogs.CancelExportTaskOutput, error) CreateExportTaskRequest(*cloudwatchlogs.CreateExportTaskInput) (*request.Request, *cloudwatchlogs.CreateExportTaskOutput) CreateExportTask(*cloudwatchlogs.CreateExportTaskInput) (*cloudwatchlogs.CreateExportTaskOutput, error) CreateLogGroupRequest(*cloudwatchlogs.CreateLogGroupInput) (*request.Request, *cloudwatchlogs.CreateLogGroupOutput) CreateLogGroup(*cloudwatchlogs.CreateLogGroupInput) (*cloudwatchlogs.CreateLogGroupOutput, error) CreateLogStreamRequest(*cloudwatchlogs.CreateLogStreamInput) (*request.Request, *cloudwatchlogs.CreateLogStreamOutput) CreateLogStream(*cloudwatchlogs.CreateLogStreamInput) (*cloudwatchlogs.CreateLogStreamOutput, error) DeleteDestinationRequest(*cloudwatchlogs.DeleteDestinationInput) (*request.Request, *cloudwatchlogs.DeleteDestinationOutput) DeleteDestination(*cloudwatchlogs.DeleteDestinationInput) (*cloudwatchlogs.DeleteDestinationOutput, error) DeleteLogGroupRequest(*cloudwatchlogs.DeleteLogGroupInput) (*request.Request, *cloudwatchlogs.DeleteLogGroupOutput) DeleteLogGroup(*cloudwatchlogs.DeleteLogGroupInput) (*cloudwatchlogs.DeleteLogGroupOutput, error) DeleteLogStreamRequest(*cloudwatchlogs.DeleteLogStreamInput) (*request.Request, *cloudwatchlogs.DeleteLogStreamOutput) DeleteLogStream(*cloudwatchlogs.DeleteLogStreamInput) (*cloudwatchlogs.DeleteLogStreamOutput, error) DeleteMetricFilterRequest(*cloudwatchlogs.DeleteMetricFilterInput) (*request.Request, *cloudwatchlogs.DeleteMetricFilterOutput) DeleteMetricFilter(*cloudwatchlogs.DeleteMetricFilterInput) (*cloudwatchlogs.DeleteMetricFilterOutput, error) DeleteRetentionPolicyRequest(*cloudwatchlogs.DeleteRetentionPolicyInput) (*request.Request, *cloudwatchlogs.DeleteRetentionPolicyOutput) DeleteRetentionPolicy(*cloudwatchlogs.DeleteRetentionPolicyInput) (*cloudwatchlogs.DeleteRetentionPolicyOutput, error) DeleteSubscriptionFilterRequest(*cloudwatchlogs.DeleteSubscriptionFilterInput) (*request.Request, *cloudwatchlogs.DeleteSubscriptionFilterOutput) DeleteSubscriptionFilter(*cloudwatchlogs.DeleteSubscriptionFilterInput) (*cloudwatchlogs.DeleteSubscriptionFilterOutput, error) DescribeDestinationsRequest(*cloudwatchlogs.DescribeDestinationsInput) (*request.Request, *cloudwatchlogs.DescribeDestinationsOutput) DescribeDestinations(*cloudwatchlogs.DescribeDestinationsInput) (*cloudwatchlogs.DescribeDestinationsOutput, error) DescribeDestinationsPages(*cloudwatchlogs.DescribeDestinationsInput, func(*cloudwatchlogs.DescribeDestinationsOutput, bool) bool) error DescribeExportTasksRequest(*cloudwatchlogs.DescribeExportTasksInput) (*request.Request, *cloudwatchlogs.DescribeExportTasksOutput) DescribeExportTasks(*cloudwatchlogs.DescribeExportTasksInput) (*cloudwatchlogs.DescribeExportTasksOutput, error) DescribeLogGroupsRequest(*cloudwatchlogs.DescribeLogGroupsInput) (*request.Request, *cloudwatchlogs.DescribeLogGroupsOutput) DescribeLogGroups(*cloudwatchlogs.DescribeLogGroupsInput) (*cloudwatchlogs.DescribeLogGroupsOutput, error) DescribeLogGroupsPages(*cloudwatchlogs.DescribeLogGroupsInput, func(*cloudwatchlogs.DescribeLogGroupsOutput, bool) bool) error DescribeLogStreamsRequest(*cloudwatchlogs.DescribeLogStreamsInput) (*request.Request, *cloudwatchlogs.DescribeLogStreamsOutput) DescribeLogStreams(*cloudwatchlogs.DescribeLogStreamsInput) (*cloudwatchlogs.DescribeLogStreamsOutput, error) DescribeLogStreamsPages(*cloudwatchlogs.DescribeLogStreamsInput, func(*cloudwatchlogs.DescribeLogStreamsOutput, bool) bool) error DescribeMetricFiltersRequest(*cloudwatchlogs.DescribeMetricFiltersInput) (*request.Request, *cloudwatchlogs.DescribeMetricFiltersOutput) DescribeMetricFilters(*cloudwatchlogs.DescribeMetricFiltersInput) (*cloudwatchlogs.DescribeMetricFiltersOutput, error) DescribeMetricFiltersPages(*cloudwatchlogs.DescribeMetricFiltersInput, func(*cloudwatchlogs.DescribeMetricFiltersOutput, bool) bool) error DescribeSubscriptionFiltersRequest(*cloudwatchlogs.DescribeSubscriptionFiltersInput) (*request.Request, *cloudwatchlogs.DescribeSubscriptionFiltersOutput) DescribeSubscriptionFilters(*cloudwatchlogs.DescribeSubscriptionFiltersInput) (*cloudwatchlogs.DescribeSubscriptionFiltersOutput, error) DescribeSubscriptionFiltersPages(*cloudwatchlogs.DescribeSubscriptionFiltersInput, func(*cloudwatchlogs.DescribeSubscriptionFiltersOutput, bool) bool) error FilterLogEventsRequest(*cloudwatchlogs.FilterLogEventsInput) (*request.Request, *cloudwatchlogs.FilterLogEventsOutput) FilterLogEvents(*cloudwatchlogs.FilterLogEventsInput) (*cloudwatchlogs.FilterLogEventsOutput, error) FilterLogEventsPages(*cloudwatchlogs.FilterLogEventsInput, func(*cloudwatchlogs.FilterLogEventsOutput, bool) bool) error GetLogEventsRequest(*cloudwatchlogs.GetLogEventsInput) (*request.Request, *cloudwatchlogs.GetLogEventsOutput) GetLogEvents(*cloudwatchlogs.GetLogEventsInput) (*cloudwatchlogs.GetLogEventsOutput, error) GetLogEventsPages(*cloudwatchlogs.GetLogEventsInput, func(*cloudwatchlogs.GetLogEventsOutput, bool) bool) error PutDestinationRequest(*cloudwatchlogs.PutDestinationInput) (*request.Request, *cloudwatchlogs.PutDestinationOutput) PutDestination(*cloudwatchlogs.PutDestinationInput) (*cloudwatchlogs.PutDestinationOutput, error) PutDestinationPolicyRequest(*cloudwatchlogs.PutDestinationPolicyInput) (*request.Request, *cloudwatchlogs.PutDestinationPolicyOutput) PutDestinationPolicy(*cloudwatchlogs.PutDestinationPolicyInput) (*cloudwatchlogs.PutDestinationPolicyOutput, error) PutLogEventsRequest(*cloudwatchlogs.PutLogEventsInput) (*request.Request, *cloudwatchlogs.PutLogEventsOutput) PutLogEvents(*cloudwatchlogs.PutLogEventsInput) (*cloudwatchlogs.PutLogEventsOutput, error) PutMetricFilterRequest(*cloudwatchlogs.PutMetricFilterInput) (*request.Request, *cloudwatchlogs.PutMetricFilterOutput) PutMetricFilter(*cloudwatchlogs.PutMetricFilterInput) (*cloudwatchlogs.PutMetricFilterOutput, error) PutRetentionPolicyRequest(*cloudwatchlogs.PutRetentionPolicyInput) (*request.Request, *cloudwatchlogs.PutRetentionPolicyOutput) PutRetentionPolicy(*cloudwatchlogs.PutRetentionPolicyInput) (*cloudwatchlogs.PutRetentionPolicyOutput, error) PutSubscriptionFilterRequest(*cloudwatchlogs.PutSubscriptionFilterInput) (*request.Request, *cloudwatchlogs.PutSubscriptionFilterOutput) PutSubscriptionFilter(*cloudwatchlogs.PutSubscriptionFilterInput) (*cloudwatchlogs.PutSubscriptionFilterOutput, error) TestMetricFilterRequest(*cloudwatchlogs.TestMetricFilterInput) (*request.Request, *cloudwatchlogs.TestMetricFilterOutput) TestMetricFilter(*cloudwatchlogs.TestMetricFilterInput) (*cloudwatchlogs.TestMetricFilterOutput, error) } var _ CloudWatchLogsAPI = (*cloudwatchlogs.CloudWatchLogs)(nil) aws-sdk-go-1.4.22/service/cloudwatchlogs/examples_test.go000066400000000000000000000423531300374646400234600ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudwatchlogs_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/cloudwatchlogs" ) var _ time.Duration var _ bytes.Buffer func ExampleCloudWatchLogs_CancelExportTask() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.CancelExportTaskInput{ TaskId: aws.String("ExportTaskId"), // Required } resp, err := svc.CancelExportTask(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_CreateExportTask() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.CreateExportTaskInput{ Destination: aws.String("ExportDestinationBucket"), // Required From: aws.Int64(1), // Required LogGroupName: aws.String("LogGroupName"), // Required To: aws.Int64(1), // Required DestinationPrefix: aws.String("ExportDestinationPrefix"), LogStreamNamePrefix: aws.String("LogStreamName"), TaskName: aws.String("ExportTaskName"), } resp, err := svc.CreateExportTask(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_CreateLogGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.CreateLogGroupInput{ LogGroupName: aws.String("LogGroupName"), // Required } resp, err := svc.CreateLogGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_CreateLogStream() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.CreateLogStreamInput{ LogGroupName: aws.String("LogGroupName"), // Required LogStreamName: aws.String("LogStreamName"), // Required } resp, err := svc.CreateLogStream(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_DeleteDestination() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.DeleteDestinationInput{ DestinationName: aws.String("DestinationName"), // Required } resp, err := svc.DeleteDestination(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_DeleteLogGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.DeleteLogGroupInput{ LogGroupName: aws.String("LogGroupName"), // Required } resp, err := svc.DeleteLogGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_DeleteLogStream() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.DeleteLogStreamInput{ LogGroupName: aws.String("LogGroupName"), // Required LogStreamName: aws.String("LogStreamName"), // Required } resp, err := svc.DeleteLogStream(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_DeleteMetricFilter() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.DeleteMetricFilterInput{ FilterName: aws.String("FilterName"), // Required LogGroupName: aws.String("LogGroupName"), // Required } resp, err := svc.DeleteMetricFilter(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_DeleteRetentionPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.DeleteRetentionPolicyInput{ LogGroupName: aws.String("LogGroupName"), // Required } resp, err := svc.DeleteRetentionPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_DeleteSubscriptionFilter() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.DeleteSubscriptionFilterInput{ FilterName: aws.String("FilterName"), // Required LogGroupName: aws.String("LogGroupName"), // Required } resp, err := svc.DeleteSubscriptionFilter(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_DescribeDestinations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.DescribeDestinationsInput{ DestinationNamePrefix: aws.String("DestinationName"), Limit: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.DescribeDestinations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_DescribeExportTasks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.DescribeExportTasksInput{ Limit: aws.Int64(1), NextToken: aws.String("NextToken"), StatusCode: aws.String("ExportTaskStatusCode"), TaskId: aws.String("ExportTaskId"), } resp, err := svc.DescribeExportTasks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_DescribeLogGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.DescribeLogGroupsInput{ Limit: aws.Int64(1), LogGroupNamePrefix: aws.String("LogGroupName"), NextToken: aws.String("NextToken"), } resp, err := svc.DescribeLogGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_DescribeLogStreams() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.DescribeLogStreamsInput{ LogGroupName: aws.String("LogGroupName"), // Required Descending: aws.Bool(true), Limit: aws.Int64(1), LogStreamNamePrefix: aws.String("LogStreamName"), NextToken: aws.String("NextToken"), OrderBy: aws.String("OrderBy"), } resp, err := svc.DescribeLogStreams(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_DescribeMetricFilters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.DescribeMetricFiltersInput{ LogGroupName: aws.String("LogGroupName"), // Required FilterNamePrefix: aws.String("FilterName"), Limit: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.DescribeMetricFilters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_DescribeSubscriptionFilters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.DescribeSubscriptionFiltersInput{ LogGroupName: aws.String("LogGroupName"), // Required FilterNamePrefix: aws.String("FilterName"), Limit: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.DescribeSubscriptionFilters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_FilterLogEvents() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.FilterLogEventsInput{ LogGroupName: aws.String("LogGroupName"), // Required EndTime: aws.Int64(1), FilterPattern: aws.String("FilterPattern"), Interleaved: aws.Bool(true), Limit: aws.Int64(1), LogStreamNames: []*string{ aws.String("LogStreamName"), // Required // More values... }, NextToken: aws.String("NextToken"), StartTime: aws.Int64(1), } resp, err := svc.FilterLogEvents(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_GetLogEvents() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.GetLogEventsInput{ LogGroupName: aws.String("LogGroupName"), // Required LogStreamName: aws.String("LogStreamName"), // Required EndTime: aws.Int64(1), Limit: aws.Int64(1), NextToken: aws.String("NextToken"), StartFromHead: aws.Bool(true), StartTime: aws.Int64(1), } resp, err := svc.GetLogEvents(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_PutDestination() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.PutDestinationInput{ DestinationName: aws.String("DestinationName"), // Required RoleArn: aws.String("RoleArn"), // Required TargetArn: aws.String("TargetArn"), // Required } resp, err := svc.PutDestination(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_PutDestinationPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.PutDestinationPolicyInput{ AccessPolicy: aws.String("AccessPolicy"), // Required DestinationName: aws.String("DestinationName"), // Required } resp, err := svc.PutDestinationPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_PutLogEvents() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.PutLogEventsInput{ LogEvents: []*cloudwatchlogs.InputLogEvent{ // Required { // Required Message: aws.String("EventMessage"), // Required Timestamp: aws.Int64(1), // Required }, // More values... }, LogGroupName: aws.String("LogGroupName"), // Required LogStreamName: aws.String("LogStreamName"), // Required SequenceToken: aws.String("SequenceToken"), } resp, err := svc.PutLogEvents(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_PutMetricFilter() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.PutMetricFilterInput{ FilterName: aws.String("FilterName"), // Required FilterPattern: aws.String("FilterPattern"), // Required LogGroupName: aws.String("LogGroupName"), // Required MetricTransformations: []*cloudwatchlogs.MetricTransformation{ // Required { // Required MetricName: aws.String("MetricName"), // Required MetricNamespace: aws.String("MetricNamespace"), // Required MetricValue: aws.String("MetricValue"), // Required DefaultValue: aws.Float64(1.0), }, // More values... }, } resp, err := svc.PutMetricFilter(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_PutRetentionPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.PutRetentionPolicyInput{ LogGroupName: aws.String("LogGroupName"), // Required RetentionInDays: aws.Int64(1), // Required } resp, err := svc.PutRetentionPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_PutSubscriptionFilter() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.PutSubscriptionFilterInput{ DestinationArn: aws.String("DestinationArn"), // Required FilterName: aws.String("FilterName"), // Required FilterPattern: aws.String("FilterPattern"), // Required LogGroupName: aws.String("LogGroupName"), // Required RoleArn: aws.String("RoleArn"), } resp, err := svc.PutSubscriptionFilter(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCloudWatchLogs_TestMetricFilter() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cloudwatchlogs.New(sess) params := &cloudwatchlogs.TestMetricFilterInput{ FilterPattern: aws.String("FilterPattern"), // Required LogEventMessages: []*string{ // Required aws.String("EventMessage"), // Required // More values... }, } resp, err := svc.TestMetricFilter(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/cloudwatchlogs/service.go000066400000000000000000000112231300374646400222330ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cloudwatchlogs import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // You can use Amazon CloudWatch Logs to monitor, store, and access your log // files from Amazon Elastic Compute Cloud (Amazon EC2) instances, Amazon CloudTrail, // or other sources. You can then retrieve the associated log data from CloudWatch // Logs using the Amazon CloudWatch console, the CloudWatch Logs commands in // the AWS CLI, the CloudWatch Logs API, or the CloudWatch Logs SDK. // // You can use CloudWatch Logs to: // // * Monitor Logs from Amazon EC2 Instances in Real-time: You can use CloudWatch // Logs to monitor applications and systems using log data. For example, // CloudWatch Logs can track the number of errors that occur in your application // logs and send you a notification whenever the rate of errors exceeds a // threshold you specify. CloudWatch Logs uses your log data for monitoring; // so, no code changes are required. For example, you can monitor application // logs for specific literal terms (such as "NullReferenceException") or // count the number of occurrences of a literal term at a particular position // in log data (such as "404" status codes in an Apache access log). When // the term you are searching for is found, CloudWatch Logs reports the data // to a Amazon CloudWatch metric that you specify. // // * Monitor Amazon CloudTrail Logged Events: You can create alarms in Amazon // CloudWatch and receive notifications of particular API activity as captured // by CloudTrail and use the notification to perform troubleshooting. // // * Archive Log Data: You can use CloudWatch Logs to store your log data // in highly durable storage. You can change the log retention setting so // that any log events older than this setting are automatically deleted. // The CloudWatch Logs agent makes it easy to quickly send both rotated and // non-rotated log data off of a host and into the log service. You can then // access the raw log data when you need it. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type CloudWatchLogs struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "logs" // New creates a new instance of the CloudWatchLogs client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a CloudWatchLogs client from just a session. // svc := cloudwatchlogs.New(mySession) // // // Create a CloudWatchLogs client with additional configuration // svc := cloudwatchlogs.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *CloudWatchLogs { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *CloudWatchLogs { svc := &CloudWatchLogs{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-03-28", JSONVersion: "1.1", TargetPrefix: "Logs_20140328", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a CloudWatchLogs operation and runs any // custom request initialization. func (c *CloudWatchLogs) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/codecommit/000077500000000000000000000000001300374646400173465ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/codecommit/api.go000066400000000000000000002605761300374646400204660ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package codecommit provides a client for AWS CodeCommit. package codecommit import ( "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opBatchGetRepositories = "BatchGetRepositories" // BatchGetRepositoriesRequest generates a "aws/request.Request" representing the // client's request for the BatchGetRepositories operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See BatchGetRepositories for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the BatchGetRepositories method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the BatchGetRepositoriesRequest method. // req, resp := client.BatchGetRepositoriesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeCommit) BatchGetRepositoriesRequest(input *BatchGetRepositoriesInput) (req *request.Request, output *BatchGetRepositoriesOutput) { op := &request.Operation{ Name: opBatchGetRepositories, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &BatchGetRepositoriesInput{} } req = c.newRequest(op, input, output) output = &BatchGetRepositoriesOutput{} req.Data = output return } // BatchGetRepositories API operation for AWS CodeCommit. // // Returns information about one or more repositories. // // The description field for a repository accepts all HTML characters and all // valid Unicode characters. Applications that do not HTML-encode the description // and display it in a web page could expose users to potentially malicious // code. Make sure that you HTML-encode the description field in any application // that uses this API to display the repository description on a web page. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeCommit's // API operation BatchGetRepositories for usage and error information. // // Returned Error Codes: // * RepositoryNamesRequiredException // A repository names object is required but was not specified. // // * MaximumRepositoryNamesExceededException // The maximum number of allowed repository names was exceeded. Currently, this // number is 25. // // * InvalidRepositoryNameException // At least one specified repository name is not valid. // // This exception only occurs when a specified repository name is not valid. // Other exceptions occur when a required repository parameter is missing, or // when a specified repository does not exist. // // * EncryptionIntegrityChecksFailedException // An encryption integrity check failed. // // * EncryptionKeyAccessDeniedException // An encryption key could not be accessed. // // * EncryptionKeyDisabledException // The encryption key is disabled. // // * EncryptionKeyNotFoundException // No encryption key was found. // // * EncryptionKeyUnavailableException // The encryption key is not available. // func (c *CodeCommit) BatchGetRepositories(input *BatchGetRepositoriesInput) (*BatchGetRepositoriesOutput, error) { req, out := c.BatchGetRepositoriesRequest(input) err := req.Send() return out, err } const opCreateBranch = "CreateBranch" // CreateBranchRequest generates a "aws/request.Request" representing the // client's request for the CreateBranch operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateBranch for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateBranch method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateBranchRequest method. // req, resp := client.CreateBranchRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeCommit) CreateBranchRequest(input *CreateBranchInput) (req *request.Request, output *CreateBranchOutput) { op := &request.Operation{ Name: opCreateBranch, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateBranchInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CreateBranchOutput{} req.Data = output return } // CreateBranch API operation for AWS CodeCommit. // // Creates a new branch in a repository and points the branch to a commit. // // Calling the create branch operation does not set a repository's default branch. // To do this, call the update default branch operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeCommit's // API operation CreateBranch for usage and error information. // // Returned Error Codes: // * RepositoryNameRequiredException // A repository name is required but was not specified. // // * InvalidRepositoryNameException // At least one specified repository name is not valid. // // This exception only occurs when a specified repository name is not valid. // Other exceptions occur when a required repository parameter is missing, or // when a specified repository does not exist. // // * RepositoryDoesNotExistException // The specified repository does not exist. // // * BranchNameRequiredException // A branch name is required but was not specified. // // * BranchNameExistsException // The specified branch name already exists. // // * InvalidBranchNameException // The specified branch name is not valid. // // * CommitIdRequiredException // A commit ID was not specified. // // * CommitDoesNotExistException // The specified commit does not exist or no commit was specified, and the specified // repository has no default branch. // // * InvalidCommitIdException // The specified commit ID is not valid. // // * EncryptionIntegrityChecksFailedException // An encryption integrity check failed. // // * EncryptionKeyAccessDeniedException // An encryption key could not be accessed. // // * EncryptionKeyDisabledException // The encryption key is disabled. // // * EncryptionKeyNotFoundException // No encryption key was found. // // * EncryptionKeyUnavailableException // The encryption key is not available. // func (c *CodeCommit) CreateBranch(input *CreateBranchInput) (*CreateBranchOutput, error) { req, out := c.CreateBranchRequest(input) err := req.Send() return out, err } const opCreateRepository = "CreateRepository" // CreateRepositoryRequest generates a "aws/request.Request" representing the // client's request for the CreateRepository operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateRepository for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateRepository method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateRepositoryRequest method. // req, resp := client.CreateRepositoryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeCommit) CreateRepositoryRequest(input *CreateRepositoryInput) (req *request.Request, output *CreateRepositoryOutput) { op := &request.Operation{ Name: opCreateRepository, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateRepositoryInput{} } req = c.newRequest(op, input, output) output = &CreateRepositoryOutput{} req.Data = output return } // CreateRepository API operation for AWS CodeCommit. // // Creates a new, empty repository. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeCommit's // API operation CreateRepository for usage and error information. // // Returned Error Codes: // * RepositoryNameExistsException // The specified repository name already exists. // // * RepositoryNameRequiredException // A repository name is required but was not specified. // // * InvalidRepositoryNameException // At least one specified repository name is not valid. // // This exception only occurs when a specified repository name is not valid. // Other exceptions occur when a required repository parameter is missing, or // when a specified repository does not exist. // // * InvalidRepositoryDescriptionException // The specified repository description is not valid. // // * RepositoryLimitExceededException // A repository resource limit was exceeded. // // * EncryptionIntegrityChecksFailedException // An encryption integrity check failed. // // * EncryptionKeyAccessDeniedException // An encryption key could not be accessed. // // * EncryptionKeyDisabledException // The encryption key is disabled. // // * EncryptionKeyNotFoundException // No encryption key was found. // // * EncryptionKeyUnavailableException // The encryption key is not available. // func (c *CodeCommit) CreateRepository(input *CreateRepositoryInput) (*CreateRepositoryOutput, error) { req, out := c.CreateRepositoryRequest(input) err := req.Send() return out, err } const opDeleteRepository = "DeleteRepository" // DeleteRepositoryRequest generates a "aws/request.Request" representing the // client's request for the DeleteRepository operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteRepository for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteRepository method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteRepositoryRequest method. // req, resp := client.DeleteRepositoryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeCommit) DeleteRepositoryRequest(input *DeleteRepositoryInput) (req *request.Request, output *DeleteRepositoryOutput) { op := &request.Operation{ Name: opDeleteRepository, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteRepositoryInput{} } req = c.newRequest(op, input, output) output = &DeleteRepositoryOutput{} req.Data = output return } // DeleteRepository API operation for AWS CodeCommit. // // Deletes a repository. If a specified repository was already deleted, a null // repository ID will be returned. // // Deleting a repository also deletes all associated objects and metadata. After // a repository is deleted, all future push calls to the deleted repository // will fail. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeCommit's // API operation DeleteRepository for usage and error information. // // Returned Error Codes: // * RepositoryNameRequiredException // A repository name is required but was not specified. // // * InvalidRepositoryNameException // At least one specified repository name is not valid. // // This exception only occurs when a specified repository name is not valid. // Other exceptions occur when a required repository parameter is missing, or // when a specified repository does not exist. // // * EncryptionIntegrityChecksFailedException // An encryption integrity check failed. // // * EncryptionKeyAccessDeniedException // An encryption key could not be accessed. // // * EncryptionKeyDisabledException // The encryption key is disabled. // // * EncryptionKeyNotFoundException // No encryption key was found. // // * EncryptionKeyUnavailableException // The encryption key is not available. // func (c *CodeCommit) DeleteRepository(input *DeleteRepositoryInput) (*DeleteRepositoryOutput, error) { req, out := c.DeleteRepositoryRequest(input) err := req.Send() return out, err } const opGetBranch = "GetBranch" // GetBranchRequest generates a "aws/request.Request" representing the // client's request for the GetBranch operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBranch for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBranch method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBranchRequest method. // req, resp := client.GetBranchRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeCommit) GetBranchRequest(input *GetBranchInput) (req *request.Request, output *GetBranchOutput) { op := &request.Operation{ Name: opGetBranch, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetBranchInput{} } req = c.newRequest(op, input, output) output = &GetBranchOutput{} req.Data = output return } // GetBranch API operation for AWS CodeCommit. // // Returns information about a repository branch, including its name and the // last commit ID. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeCommit's // API operation GetBranch for usage and error information. // // Returned Error Codes: // * RepositoryNameRequiredException // A repository name is required but was not specified. // // * RepositoryDoesNotExistException // The specified repository does not exist. // // * InvalidRepositoryNameException // At least one specified repository name is not valid. // // This exception only occurs when a specified repository name is not valid. // Other exceptions occur when a required repository parameter is missing, or // when a specified repository does not exist. // // * BranchNameRequiredException // A branch name is required but was not specified. // // * InvalidBranchNameException // The specified branch name is not valid. // // * BranchDoesNotExistException // The specified branch does not exist. // // * EncryptionIntegrityChecksFailedException // An encryption integrity check failed. // // * EncryptionKeyAccessDeniedException // An encryption key could not be accessed. // // * EncryptionKeyDisabledException // The encryption key is disabled. // // * EncryptionKeyNotFoundException // No encryption key was found. // // * EncryptionKeyUnavailableException // The encryption key is not available. // func (c *CodeCommit) GetBranch(input *GetBranchInput) (*GetBranchOutput, error) { req, out := c.GetBranchRequest(input) err := req.Send() return out, err } const opGetCommit = "GetCommit" // GetCommitRequest generates a "aws/request.Request" representing the // client's request for the GetCommit operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetCommit for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetCommit method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetCommitRequest method. // req, resp := client.GetCommitRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeCommit) GetCommitRequest(input *GetCommitInput) (req *request.Request, output *GetCommitOutput) { op := &request.Operation{ Name: opGetCommit, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetCommitInput{} } req = c.newRequest(op, input, output) output = &GetCommitOutput{} req.Data = output return } // GetCommit API operation for AWS CodeCommit. // // Returns information about a commit, including commit message and committer // information. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeCommit's // API operation GetCommit for usage and error information. // // Returned Error Codes: // * RepositoryNameRequiredException // A repository name is required but was not specified. // // * InvalidRepositoryNameException // At least one specified repository name is not valid. // // This exception only occurs when a specified repository name is not valid. // Other exceptions occur when a required repository parameter is missing, or // when a specified repository does not exist. // // * RepositoryDoesNotExistException // The specified repository does not exist. // // * CommitIdRequiredException // A commit ID was not specified. // // * InvalidCommitIdException // The specified commit ID is not valid. // // * CommitIdDoesNotExistException // The specified commit ID does not exist. // // * EncryptionIntegrityChecksFailedException // An encryption integrity check failed. // // * EncryptionKeyAccessDeniedException // An encryption key could not be accessed. // // * EncryptionKeyDisabledException // The encryption key is disabled. // // * EncryptionKeyNotFoundException // No encryption key was found. // // * EncryptionKeyUnavailableException // The encryption key is not available. // func (c *CodeCommit) GetCommit(input *GetCommitInput) (*GetCommitOutput, error) { req, out := c.GetCommitRequest(input) err := req.Send() return out, err } const opGetRepository = "GetRepository" // GetRepositoryRequest generates a "aws/request.Request" representing the // client's request for the GetRepository operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetRepository for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetRepository method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetRepositoryRequest method. // req, resp := client.GetRepositoryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeCommit) GetRepositoryRequest(input *GetRepositoryInput) (req *request.Request, output *GetRepositoryOutput) { op := &request.Operation{ Name: opGetRepository, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetRepositoryInput{} } req = c.newRequest(op, input, output) output = &GetRepositoryOutput{} req.Data = output return } // GetRepository API operation for AWS CodeCommit. // // Returns information about a repository. // // The description field for a repository accepts all HTML characters and all // valid Unicode characters. Applications that do not HTML-encode the description // and display it in a web page could expose users to potentially malicious // code. Make sure that you HTML-encode the description field in any application // that uses this API to display the repository description on a web page. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeCommit's // API operation GetRepository for usage and error information. // // Returned Error Codes: // * RepositoryNameRequiredException // A repository name is required but was not specified. // // * RepositoryDoesNotExistException // The specified repository does not exist. // // * InvalidRepositoryNameException // At least one specified repository name is not valid. // // This exception only occurs when a specified repository name is not valid. // Other exceptions occur when a required repository parameter is missing, or // when a specified repository does not exist. // // * EncryptionIntegrityChecksFailedException // An encryption integrity check failed. // // * EncryptionKeyAccessDeniedException // An encryption key could not be accessed. // // * EncryptionKeyDisabledException // The encryption key is disabled. // // * EncryptionKeyNotFoundException // No encryption key was found. // // * EncryptionKeyUnavailableException // The encryption key is not available. // func (c *CodeCommit) GetRepository(input *GetRepositoryInput) (*GetRepositoryOutput, error) { req, out := c.GetRepositoryRequest(input) err := req.Send() return out, err } const opGetRepositoryTriggers = "GetRepositoryTriggers" // GetRepositoryTriggersRequest generates a "aws/request.Request" representing the // client's request for the GetRepositoryTriggers operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetRepositoryTriggers for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetRepositoryTriggers method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetRepositoryTriggersRequest method. // req, resp := client.GetRepositoryTriggersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeCommit) GetRepositoryTriggersRequest(input *GetRepositoryTriggersInput) (req *request.Request, output *GetRepositoryTriggersOutput) { op := &request.Operation{ Name: opGetRepositoryTriggers, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetRepositoryTriggersInput{} } req = c.newRequest(op, input, output) output = &GetRepositoryTriggersOutput{} req.Data = output return } // GetRepositoryTriggers API operation for AWS CodeCommit. // // Gets information about triggers configured for a repository. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeCommit's // API operation GetRepositoryTriggers for usage and error information. // // Returned Error Codes: // * RepositoryNameRequiredException // A repository name is required but was not specified. // // * InvalidRepositoryNameException // At least one specified repository name is not valid. // // This exception only occurs when a specified repository name is not valid. // Other exceptions occur when a required repository parameter is missing, or // when a specified repository does not exist. // // * RepositoryDoesNotExistException // The specified repository does not exist. // // * EncryptionIntegrityChecksFailedException // An encryption integrity check failed. // // * EncryptionKeyAccessDeniedException // An encryption key could not be accessed. // // * EncryptionKeyDisabledException // The encryption key is disabled. // // * EncryptionKeyNotFoundException // No encryption key was found. // // * EncryptionKeyUnavailableException // The encryption key is not available. // func (c *CodeCommit) GetRepositoryTriggers(input *GetRepositoryTriggersInput) (*GetRepositoryTriggersOutput, error) { req, out := c.GetRepositoryTriggersRequest(input) err := req.Send() return out, err } const opListBranches = "ListBranches" // ListBranchesRequest generates a "aws/request.Request" representing the // client's request for the ListBranches operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListBranches for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListBranches method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListBranchesRequest method. // req, resp := client.ListBranchesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeCommit) ListBranchesRequest(input *ListBranchesInput) (req *request.Request, output *ListBranchesOutput) { op := &request.Operation{ Name: opListBranches, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListBranchesInput{} } req = c.newRequest(op, input, output) output = &ListBranchesOutput{} req.Data = output return } // ListBranches API operation for AWS CodeCommit. // // Gets information about one or more branches in a repository. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeCommit's // API operation ListBranches for usage and error information. // // Returned Error Codes: // * RepositoryNameRequiredException // A repository name is required but was not specified. // // * RepositoryDoesNotExistException // The specified repository does not exist. // // * InvalidRepositoryNameException // At least one specified repository name is not valid. // // This exception only occurs when a specified repository name is not valid. // Other exceptions occur when a required repository parameter is missing, or // when a specified repository does not exist. // // * EncryptionIntegrityChecksFailedException // An encryption integrity check failed. // // * EncryptionKeyAccessDeniedException // An encryption key could not be accessed. // // * EncryptionKeyDisabledException // The encryption key is disabled. // // * EncryptionKeyNotFoundException // No encryption key was found. // // * EncryptionKeyUnavailableException // The encryption key is not available. // // * InvalidContinuationTokenException // The specified continuation token is not valid. // func (c *CodeCommit) ListBranches(input *ListBranchesInput) (*ListBranchesOutput, error) { req, out := c.ListBranchesRequest(input) err := req.Send() return out, err } // ListBranchesPages iterates over the pages of a ListBranches operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListBranches method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListBranches operation. // pageNum := 0 // err := client.ListBranchesPages(params, // func(page *ListBranchesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CodeCommit) ListBranchesPages(input *ListBranchesInput, fn func(p *ListBranchesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListBranchesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListBranchesOutput), lastPage) }) } const opListRepositories = "ListRepositories" // ListRepositoriesRequest generates a "aws/request.Request" representing the // client's request for the ListRepositories operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListRepositories for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListRepositories method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListRepositoriesRequest method. // req, resp := client.ListRepositoriesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeCommit) ListRepositoriesRequest(input *ListRepositoriesInput) (req *request.Request, output *ListRepositoriesOutput) { op := &request.Operation{ Name: opListRepositories, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListRepositoriesInput{} } req = c.newRequest(op, input, output) output = &ListRepositoriesOutput{} req.Data = output return } // ListRepositories API operation for AWS CodeCommit. // // Gets information about one or more repositories. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeCommit's // API operation ListRepositories for usage and error information. // // Returned Error Codes: // * InvalidSortByException // The specified sort by value is not valid. // // * InvalidOrderException // The specified sort order is not valid. // // * InvalidContinuationTokenException // The specified continuation token is not valid. // func (c *CodeCommit) ListRepositories(input *ListRepositoriesInput) (*ListRepositoriesOutput, error) { req, out := c.ListRepositoriesRequest(input) err := req.Send() return out, err } // ListRepositoriesPages iterates over the pages of a ListRepositories operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListRepositories method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListRepositories operation. // pageNum := 0 // err := client.ListRepositoriesPages(params, // func(page *ListRepositoriesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CodeCommit) ListRepositoriesPages(input *ListRepositoriesInput, fn func(p *ListRepositoriesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListRepositoriesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListRepositoriesOutput), lastPage) }) } const opPutRepositoryTriggers = "PutRepositoryTriggers" // PutRepositoryTriggersRequest generates a "aws/request.Request" representing the // client's request for the PutRepositoryTriggers operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutRepositoryTriggers for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutRepositoryTriggers method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutRepositoryTriggersRequest method. // req, resp := client.PutRepositoryTriggersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeCommit) PutRepositoryTriggersRequest(input *PutRepositoryTriggersInput) (req *request.Request, output *PutRepositoryTriggersOutput) { op := &request.Operation{ Name: opPutRepositoryTriggers, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutRepositoryTriggersInput{} } req = c.newRequest(op, input, output) output = &PutRepositoryTriggersOutput{} req.Data = output return } // PutRepositoryTriggers API operation for AWS CodeCommit. // // Replaces all triggers for a repository. This can be used to create or delete // triggers. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeCommit's // API operation PutRepositoryTriggers for usage and error information. // // Returned Error Codes: // * RepositoryDoesNotExistException // The specified repository does not exist. // // * RepositoryNameRequiredException // A repository name is required but was not specified. // // * InvalidRepositoryNameException // At least one specified repository name is not valid. // // This exception only occurs when a specified repository name is not valid. // Other exceptions occur when a required repository parameter is missing, or // when a specified repository does not exist. // // * RepositoryTriggersListRequiredException // The list of triggers for the repository is required but was not specified. // // * MaximumRepositoryTriggersExceededException // The number of triggers allowed for the repository was exceeded. // // * InvalidRepositoryTriggerNameException // The name of the trigger is not valid. // // * InvalidRepositoryTriggerDestinationArnException // The Amazon Resource Name (ARN) for the trigger is not valid for the specified // destination. The most common reason for this error is that the ARN does not // meet the requirements for the service type. // // * InvalidRepositoryTriggerRegionException // The region for the trigger target does not match the region for the repository. // Triggers must be created in the same region as the target for the trigger. // // * InvalidRepositoryTriggerCustomDataException // The custom data provided for the trigger is not valid. // // * MaximumBranchesExceededException // The number of branches for the trigger was exceeded. // // * InvalidRepositoryTriggerBranchNameException // One or more branch names specified for the trigger is not valid. // // * InvalidRepositoryTriggerEventsException // One or more events specified for the trigger is not valid. Check to make // sure that all events specified match the requirements for allowed events. // // * RepositoryTriggerNameRequiredException // A name for the trigger is required but was not specified. // // * RepositoryTriggerDestinationArnRequiredException // A destination ARN for the target service for the trigger is required but // was not specified. // // * RepositoryTriggerBranchNameListRequiredException // At least one branch name is required but was not specified in the trigger // configuration. // // * RepositoryTriggerEventsListRequiredException // At least one event for the trigger is required but was not specified. // // * EncryptionIntegrityChecksFailedException // An encryption integrity check failed. // // * EncryptionKeyAccessDeniedException // An encryption key could not be accessed. // // * EncryptionKeyDisabledException // The encryption key is disabled. // // * EncryptionKeyNotFoundException // No encryption key was found. // // * EncryptionKeyUnavailableException // The encryption key is not available. // func (c *CodeCommit) PutRepositoryTriggers(input *PutRepositoryTriggersInput) (*PutRepositoryTriggersOutput, error) { req, out := c.PutRepositoryTriggersRequest(input) err := req.Send() return out, err } const opTestRepositoryTriggers = "TestRepositoryTriggers" // TestRepositoryTriggersRequest generates a "aws/request.Request" representing the // client's request for the TestRepositoryTriggers operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See TestRepositoryTriggers for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the TestRepositoryTriggers method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the TestRepositoryTriggersRequest method. // req, resp := client.TestRepositoryTriggersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeCommit) TestRepositoryTriggersRequest(input *TestRepositoryTriggersInput) (req *request.Request, output *TestRepositoryTriggersOutput) { op := &request.Operation{ Name: opTestRepositoryTriggers, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &TestRepositoryTriggersInput{} } req = c.newRequest(op, input, output) output = &TestRepositoryTriggersOutput{} req.Data = output return } // TestRepositoryTriggers API operation for AWS CodeCommit. // // Tests the functionality of repository triggers by sending information to // the trigger target. If real data is available in the repository, the test // will send data from the last commit. If no data is available, sample data // will be generated. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeCommit's // API operation TestRepositoryTriggers for usage and error information. // // Returned Error Codes: // * RepositoryDoesNotExistException // The specified repository does not exist. // // * RepositoryNameRequiredException // A repository name is required but was not specified. // // * InvalidRepositoryNameException // At least one specified repository name is not valid. // // This exception only occurs when a specified repository name is not valid. // Other exceptions occur when a required repository parameter is missing, or // when a specified repository does not exist. // // * RepositoryTriggersListRequiredException // The list of triggers for the repository is required but was not specified. // // * MaximumRepositoryTriggersExceededException // The number of triggers allowed for the repository was exceeded. // // * InvalidRepositoryTriggerNameException // The name of the trigger is not valid. // // * InvalidRepositoryTriggerDestinationArnException // The Amazon Resource Name (ARN) for the trigger is not valid for the specified // destination. The most common reason for this error is that the ARN does not // meet the requirements for the service type. // // * InvalidRepositoryTriggerRegionException // The region for the trigger target does not match the region for the repository. // Triggers must be created in the same region as the target for the trigger. // // * InvalidRepositoryTriggerCustomDataException // The custom data provided for the trigger is not valid. // // * MaximumBranchesExceededException // The number of branches for the trigger was exceeded. // // * InvalidRepositoryTriggerBranchNameException // One or more branch names specified for the trigger is not valid. // // * InvalidRepositoryTriggerEventsException // One or more events specified for the trigger is not valid. Check to make // sure that all events specified match the requirements for allowed events. // // * RepositoryTriggerNameRequiredException // A name for the trigger is required but was not specified. // // * RepositoryTriggerDestinationArnRequiredException // A destination ARN for the target service for the trigger is required but // was not specified. // // * RepositoryTriggerBranchNameListRequiredException // At least one branch name is required but was not specified in the trigger // configuration. // // * RepositoryTriggerEventsListRequiredException // At least one event for the trigger is required but was not specified. // // * EncryptionIntegrityChecksFailedException // An encryption integrity check failed. // // * EncryptionKeyAccessDeniedException // An encryption key could not be accessed. // // * EncryptionKeyDisabledException // The encryption key is disabled. // // * EncryptionKeyNotFoundException // No encryption key was found. // // * EncryptionKeyUnavailableException // The encryption key is not available. // func (c *CodeCommit) TestRepositoryTriggers(input *TestRepositoryTriggersInput) (*TestRepositoryTriggersOutput, error) { req, out := c.TestRepositoryTriggersRequest(input) err := req.Send() return out, err } const opUpdateDefaultBranch = "UpdateDefaultBranch" // UpdateDefaultBranchRequest generates a "aws/request.Request" representing the // client's request for the UpdateDefaultBranch operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateDefaultBranch for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateDefaultBranch method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateDefaultBranchRequest method. // req, resp := client.UpdateDefaultBranchRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeCommit) UpdateDefaultBranchRequest(input *UpdateDefaultBranchInput) (req *request.Request, output *UpdateDefaultBranchOutput) { op := &request.Operation{ Name: opUpdateDefaultBranch, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateDefaultBranchInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateDefaultBranchOutput{} req.Data = output return } // UpdateDefaultBranch API operation for AWS CodeCommit. // // Sets or changes the default branch name for the specified repository. // // If you use this operation to change the default branch name to the current // default branch name, a success message is returned even though the default // branch did not change. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeCommit's // API operation UpdateDefaultBranch for usage and error information. // // Returned Error Codes: // * RepositoryNameRequiredException // A repository name is required but was not specified. // // * RepositoryDoesNotExistException // The specified repository does not exist. // // * InvalidRepositoryNameException // At least one specified repository name is not valid. // // This exception only occurs when a specified repository name is not valid. // Other exceptions occur when a required repository parameter is missing, or // when a specified repository does not exist. // // * BranchNameRequiredException // A branch name is required but was not specified. // // * InvalidBranchNameException // The specified branch name is not valid. // // * BranchDoesNotExistException // The specified branch does not exist. // // * EncryptionIntegrityChecksFailedException // An encryption integrity check failed. // // * EncryptionKeyAccessDeniedException // An encryption key could not be accessed. // // * EncryptionKeyDisabledException // The encryption key is disabled. // // * EncryptionKeyNotFoundException // No encryption key was found. // // * EncryptionKeyUnavailableException // The encryption key is not available. // func (c *CodeCommit) UpdateDefaultBranch(input *UpdateDefaultBranchInput) (*UpdateDefaultBranchOutput, error) { req, out := c.UpdateDefaultBranchRequest(input) err := req.Send() return out, err } const opUpdateRepositoryDescription = "UpdateRepositoryDescription" // UpdateRepositoryDescriptionRequest generates a "aws/request.Request" representing the // client's request for the UpdateRepositoryDescription operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateRepositoryDescription for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateRepositoryDescription method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateRepositoryDescriptionRequest method. // req, resp := client.UpdateRepositoryDescriptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeCommit) UpdateRepositoryDescriptionRequest(input *UpdateRepositoryDescriptionInput) (req *request.Request, output *UpdateRepositoryDescriptionOutput) { op := &request.Operation{ Name: opUpdateRepositoryDescription, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateRepositoryDescriptionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateRepositoryDescriptionOutput{} req.Data = output return } // UpdateRepositoryDescription API operation for AWS CodeCommit. // // Sets or changes the comment or description for a repository. // // The description field for a repository accepts all HTML characters and all // valid Unicode characters. Applications that do not HTML-encode the description // and display it in a web page could expose users to potentially malicious // code. Make sure that you HTML-encode the description field in any application // that uses this API to display the repository description on a web page. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeCommit's // API operation UpdateRepositoryDescription for usage and error information. // // Returned Error Codes: // * RepositoryNameRequiredException // A repository name is required but was not specified. // // * RepositoryDoesNotExistException // The specified repository does not exist. // // * InvalidRepositoryNameException // At least one specified repository name is not valid. // // This exception only occurs when a specified repository name is not valid. // Other exceptions occur when a required repository parameter is missing, or // when a specified repository does not exist. // // * InvalidRepositoryDescriptionException // The specified repository description is not valid. // // * EncryptionIntegrityChecksFailedException // An encryption integrity check failed. // // * EncryptionKeyAccessDeniedException // An encryption key could not be accessed. // // * EncryptionKeyDisabledException // The encryption key is disabled. // // * EncryptionKeyNotFoundException // No encryption key was found. // // * EncryptionKeyUnavailableException // The encryption key is not available. // func (c *CodeCommit) UpdateRepositoryDescription(input *UpdateRepositoryDescriptionInput) (*UpdateRepositoryDescriptionOutput, error) { req, out := c.UpdateRepositoryDescriptionRequest(input) err := req.Send() return out, err } const opUpdateRepositoryName = "UpdateRepositoryName" // UpdateRepositoryNameRequest generates a "aws/request.Request" representing the // client's request for the UpdateRepositoryName operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateRepositoryName for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateRepositoryName method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateRepositoryNameRequest method. // req, resp := client.UpdateRepositoryNameRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeCommit) UpdateRepositoryNameRequest(input *UpdateRepositoryNameInput) (req *request.Request, output *UpdateRepositoryNameOutput) { op := &request.Operation{ Name: opUpdateRepositoryName, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateRepositoryNameInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateRepositoryNameOutput{} req.Data = output return } // UpdateRepositoryName API operation for AWS CodeCommit. // // Renames a repository. The repository name must be unique across the calling // AWS account. In addition, repository names are limited to 100 alphanumeric, // dash, and underscore characters, and cannot include certain characters. The // suffix ".git" is prohibited. For a full description of the limits on repository // names, see Limits (http://docs.aws.amazon.com/codecommit/latest/userguide/limits.html) // in the AWS CodeCommit User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeCommit's // API operation UpdateRepositoryName for usage and error information. // // Returned Error Codes: // * RepositoryDoesNotExistException // The specified repository does not exist. // // * RepositoryNameExistsException // The specified repository name already exists. // // * RepositoryNameRequiredException // A repository name is required but was not specified. // // * InvalidRepositoryNameException // At least one specified repository name is not valid. // // This exception only occurs when a specified repository name is not valid. // Other exceptions occur when a required repository parameter is missing, or // when a specified repository does not exist. // func (c *CodeCommit) UpdateRepositoryName(input *UpdateRepositoryNameInput) (*UpdateRepositoryNameOutput, error) { req, out := c.UpdateRepositoryNameRequest(input) err := req.Send() return out, err } // Represents the input of a batch get repositories operation. type BatchGetRepositoriesInput struct { _ struct{} `type:"structure"` // The names of the repositories to get information about. // // RepositoryNames is a required field RepositoryNames []*string `locationName:"repositoryNames" type:"list" required:"true"` } // String returns the string representation func (s BatchGetRepositoriesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchGetRepositoriesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BatchGetRepositoriesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BatchGetRepositoriesInput"} if s.RepositoryNames == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryNames")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a batch get repositories operation. type BatchGetRepositoriesOutput struct { _ struct{} `type:"structure"` // A list of repositories returned by the batch get repositories operation. Repositories []*RepositoryMetadata `locationName:"repositories" type:"list"` // Returns a list of repository names for which information could not be found. RepositoriesNotFound []*string `locationName:"repositoriesNotFound" type:"list"` } // String returns the string representation func (s BatchGetRepositoriesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchGetRepositoriesOutput) GoString() string { return s.String() } // Returns information about a branch. type BranchInfo struct { _ struct{} `type:"structure"` // The name of the branch. BranchName *string `locationName:"branchName" min:"1" type:"string"` // The ID of the last commit made to the branch. CommitId *string `locationName:"commitId" type:"string"` } // String returns the string representation func (s BranchInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BranchInfo) GoString() string { return s.String() } // Returns information about a specific commit. type Commit struct { _ struct{} `type:"structure"` // Any additional data associated with the specified commit. AdditionalData *string `locationName:"additionalData" type:"string"` // Information about the author of the specified commit. Author *UserInfo `locationName:"author" type:"structure"` // Information about the person who committed the specified commit, also known // as the committer. For more information about the difference between an author // and a committer in Git, see Viewing the Commit History (http://git-scm.com/book/ch2-3.html) // in Pro Git by Scott Chacon and Ben Straub. Committer *UserInfo `locationName:"committer" type:"structure"` // The message associated with the specified commit. Message *string `locationName:"message" type:"string"` // The parent list for the specified commit. Parents []*string `locationName:"parents" type:"list"` // Tree information for the specified commit. TreeId *string `locationName:"treeId" type:"string"` } // String returns the string representation func (s Commit) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Commit) GoString() string { return s.String() } // Represents the input of a create branch operation. type CreateBranchInput struct { _ struct{} `type:"structure"` // The name of the new branch to create. // // BranchName is a required field BranchName *string `locationName:"branchName" min:"1" type:"string" required:"true"` // The ID of the commit to point the new branch to. // // CommitId is a required field CommitId *string `locationName:"commitId" type:"string" required:"true"` // The name of the repository in which you want to create the new branch. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateBranchInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateBranchInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateBranchInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateBranchInput"} if s.BranchName == nil { invalidParams.Add(request.NewErrParamRequired("BranchName")) } if s.BranchName != nil && len(*s.BranchName) < 1 { invalidParams.Add(request.NewErrParamMinLen("BranchName", 1)) } if s.CommitId == nil { invalidParams.Add(request.NewErrParamRequired("CommitId")) } if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateBranchOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateBranchOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateBranchOutput) GoString() string { return s.String() } // Represents the input of a create repository operation. type CreateRepositoryInput struct { _ struct{} `type:"structure"` // A comment or description about the new repository. // // The description field for a repository accepts all HTML characters and all // valid Unicode characters. Applications that do not HTML-encode the description // and display it in a web page could expose users to potentially malicious // code. Make sure that you HTML-encode the description field in any application // that uses this API to display the repository description on a web page. RepositoryDescription *string `locationName:"repositoryDescription" type:"string"` // The name of the new repository to be created. // // The repository name must be unique across the calling AWS account. In addition, // repository names are limited to 100 alphanumeric, dash, and underscore characters, // and cannot include certain characters. For a full description of the limits // on repository names, see Limits (http://docs.aws.amazon.com/codecommit/latest/userguide/limits.html) // in the AWS CodeCommit User Guide. The suffix ".git" is prohibited. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateRepositoryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRepositoryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateRepositoryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateRepositoryInput"} if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a create repository operation. type CreateRepositoryOutput struct { _ struct{} `type:"structure"` // Information about the newly created repository. RepositoryMetadata *RepositoryMetadata `locationName:"repositoryMetadata" type:"structure"` } // String returns the string representation func (s CreateRepositoryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRepositoryOutput) GoString() string { return s.String() } // Represents the input of a delete repository operation. type DeleteRepositoryInput struct { _ struct{} `type:"structure"` // The name of the repository to delete. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteRepositoryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRepositoryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteRepositoryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteRepositoryInput"} if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a delete repository operation. type DeleteRepositoryOutput struct { _ struct{} `type:"structure"` // The ID of the repository that was deleted. RepositoryId *string `locationName:"repositoryId" type:"string"` } // String returns the string representation func (s DeleteRepositoryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRepositoryOutput) GoString() string { return s.String() } // Represents the input of a get branch operation. type GetBranchInput struct { _ struct{} `type:"structure"` // The name of the branch for which you want to retrieve information. BranchName *string `locationName:"branchName" min:"1" type:"string"` // The name of the repository that contains the branch for which you want to // retrieve information. RepositoryName *string `locationName:"repositoryName" min:"1" type:"string"` } // String returns the string representation func (s GetBranchInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBranchInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBranchInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBranchInput"} if s.BranchName != nil && len(*s.BranchName) < 1 { invalidParams.Add(request.NewErrParamMinLen("BranchName", 1)) } if s.RepositoryName != nil && len(*s.RepositoryName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a get branch operation. type GetBranchOutput struct { _ struct{} `type:"structure"` // The name of the branch. Branch *BranchInfo `locationName:"branch" type:"structure"` } // String returns the string representation func (s GetBranchOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBranchOutput) GoString() string { return s.String() } // Represents the input of a get commit operation. type GetCommitInput struct { _ struct{} `type:"structure"` // The commit ID. // // CommitId is a required field CommitId *string `locationName:"commitId" type:"string" required:"true"` // The name of the repository to which the commit was made. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetCommitInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCommitInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetCommitInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetCommitInput"} if s.CommitId == nil { invalidParams.Add(request.NewErrParamRequired("CommitId")) } if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a get commit operation. type GetCommitOutput struct { _ struct{} `type:"structure"` // Information about the specified commit. // // Commit is a required field Commit *Commit `locationName:"commit" type:"structure" required:"true"` } // String returns the string representation func (s GetCommitOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCommitOutput) GoString() string { return s.String() } // Represents the input of a get repository operation. type GetRepositoryInput struct { _ struct{} `type:"structure"` // The name of the repository to get information about. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetRepositoryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRepositoryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetRepositoryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetRepositoryInput"} if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a get repository operation. type GetRepositoryOutput struct { _ struct{} `type:"structure"` // Information about the repository. RepositoryMetadata *RepositoryMetadata `locationName:"repositoryMetadata" type:"structure"` } // String returns the string representation func (s GetRepositoryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRepositoryOutput) GoString() string { return s.String() } // Represents the input of a get repository triggers operation. type GetRepositoryTriggersInput struct { _ struct{} `type:"structure"` // The name of the repository for which the trigger is configured. RepositoryName *string `locationName:"repositoryName" min:"1" type:"string"` } // String returns the string representation func (s GetRepositoryTriggersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRepositoryTriggersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetRepositoryTriggersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetRepositoryTriggersInput"} if s.RepositoryName != nil && len(*s.RepositoryName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a get repository triggers operation. type GetRepositoryTriggersOutput struct { _ struct{} `type:"structure"` // The system-generated unique ID for the trigger. ConfigurationId *string `locationName:"configurationId" type:"string"` // The JSON block of configuration information for each trigger. Triggers []*RepositoryTrigger `locationName:"triggers" type:"list"` } // String returns the string representation func (s GetRepositoryTriggersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRepositoryTriggersOutput) GoString() string { return s.String() } // Represents the input of a list branches operation. type ListBranchesInput struct { _ struct{} `type:"structure"` // An enumeration token that allows the operation to batch the results. NextToken *string `locationName:"nextToken" type:"string"` // The name of the repository that contains the branches. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListBranchesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListBranchesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListBranchesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListBranchesInput"} if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a list branches operation. type ListBranchesOutput struct { _ struct{} `type:"structure"` // The list of branch names. Branches []*string `locationName:"branches" type:"list"` // An enumeration token that returns the batch of the results. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListBranchesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListBranchesOutput) GoString() string { return s.String() } // Represents the input of a list repositories operation. type ListRepositoriesInput struct { _ struct{} `type:"structure"` // An enumeration token that allows the operation to batch the results of the // operation. Batch sizes are 1,000 for list repository operations. When the // client sends the token back to AWS CodeCommit, another page of 1,000 records // is retrieved. NextToken *string `locationName:"nextToken" type:"string"` // The order in which to sort the results of a list repositories operation. Order *string `locationName:"order" type:"string" enum:"OrderEnum"` // The criteria used to sort the results of a list repositories operation. SortBy *string `locationName:"sortBy" type:"string" enum:"SortByEnum"` } // String returns the string representation func (s ListRepositoriesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRepositoriesInput) GoString() string { return s.String() } // Represents the output of a list repositories operation. type ListRepositoriesOutput struct { _ struct{} `type:"structure"` // An enumeration token that allows the operation to batch the results of the // operation. Batch sizes are 1,000 for list repository operations. When the // client sends the token back to AWS CodeCommit, another page of 1,000 records // is retrieved. NextToken *string `locationName:"nextToken" type:"string"` // Lists the repositories called by the list repositories operation. Repositories []*RepositoryNameIdPair `locationName:"repositories" type:"list"` } // String returns the string representation func (s ListRepositoriesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRepositoriesOutput) GoString() string { return s.String() } // Represents the input ofa put repository triggers operation. type PutRepositoryTriggersInput struct { _ struct{} `type:"structure"` // The name of the repository where you want to create or update the trigger. RepositoryName *string `locationName:"repositoryName" min:"1" type:"string"` // The JSON block of configuration information for each trigger. Triggers []*RepositoryTrigger `locationName:"triggers" type:"list"` } // String returns the string representation func (s PutRepositoryTriggersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRepositoryTriggersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutRepositoryTriggersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutRepositoryTriggersInput"} if s.RepositoryName != nil && len(*s.RepositoryName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a put repository triggers operation. type PutRepositoryTriggersOutput struct { _ struct{} `type:"structure"` // The system-generated unique ID for the create or update operation. ConfigurationId *string `locationName:"configurationId" type:"string"` } // String returns the string representation func (s PutRepositoryTriggersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRepositoryTriggersOutput) GoString() string { return s.String() } // Information about a repository. type RepositoryMetadata struct { _ struct{} `type:"structure"` // The ID of the AWS account associated with the repository. AccountId *string `locationName:"accountId" type:"string"` // The Amazon Resource Name (ARN) of the repository. Arn *string `type:"string"` // The URL to use for cloning the repository over HTTPS. CloneUrlHttp *string `locationName:"cloneUrlHttp" type:"string"` // The URL to use for cloning the repository over SSH. CloneUrlSsh *string `locationName:"cloneUrlSsh" type:"string"` // The date and time the repository was created, in timestamp format. CreationDate *time.Time `locationName:"creationDate" type:"timestamp" timestampFormat:"unix"` // The repository's default branch name. DefaultBranch *string `locationName:"defaultBranch" min:"1" type:"string"` // The date and time the repository was last modified, in timestamp format. LastModifiedDate *time.Time `locationName:"lastModifiedDate" type:"timestamp" timestampFormat:"unix"` // A comment or description about the repository. RepositoryDescription *string `locationName:"repositoryDescription" type:"string"` // The ID of the repository. RepositoryId *string `locationName:"repositoryId" type:"string"` // The repository's name. RepositoryName *string `locationName:"repositoryName" min:"1" type:"string"` } // String returns the string representation func (s RepositoryMetadata) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RepositoryMetadata) GoString() string { return s.String() } // Information about a repository name and ID. type RepositoryNameIdPair struct { _ struct{} `type:"structure"` // The ID associated with the repository. RepositoryId *string `locationName:"repositoryId" type:"string"` // The name associated with the repository. RepositoryName *string `locationName:"repositoryName" min:"1" type:"string"` } // String returns the string representation func (s RepositoryNameIdPair) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RepositoryNameIdPair) GoString() string { return s.String() } // Information about a trigger for a repository. type RepositoryTrigger struct { _ struct{} `type:"structure"` // The branches that will be included in the trigger configuration. If no branches // are specified, the trigger will apply to all branches. Branches []*string `locationName:"branches" type:"list"` // Any custom data associated with the trigger that will be included in the // information sent to the target of the trigger. CustomData *string `locationName:"customData" type:"string"` // The ARN of the resource that is the target for a trigger. For example, the // ARN of a topic in Amazon Simple Notification Service (SNS). DestinationArn *string `locationName:"destinationArn" type:"string"` // The repository events that will cause the trigger to run actions in another // service, such as sending a notification through Amazon Simple Notification // Service (SNS). If no events are specified, the trigger will run for all repository // events. Events []*string `locationName:"events" type:"list"` // The name of the trigger. Name *string `locationName:"name" type:"string"` } // String returns the string representation func (s RepositoryTrigger) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RepositoryTrigger) GoString() string { return s.String() } // A trigger failed to run. type RepositoryTriggerExecutionFailure struct { _ struct{} `type:"structure"` // Additional message information about the trigger that did not run. FailureMessage *string `locationName:"failureMessage" type:"string"` // The name of the trigger that did not run. Trigger *string `locationName:"trigger" type:"string"` } // String returns the string representation func (s RepositoryTriggerExecutionFailure) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RepositoryTriggerExecutionFailure) GoString() string { return s.String() } // Represents the input of a test repository triggers operation. type TestRepositoryTriggersInput struct { _ struct{} `type:"structure"` // The name of the repository in which to test the triggers. RepositoryName *string `locationName:"repositoryName" min:"1" type:"string"` // The list of triggers to test. Triggers []*RepositoryTrigger `locationName:"triggers" type:"list"` } // String returns the string representation func (s TestRepositoryTriggersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TestRepositoryTriggersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TestRepositoryTriggersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TestRepositoryTriggersInput"} if s.RepositoryName != nil && len(*s.RepositoryName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a test repository triggers operation. type TestRepositoryTriggersOutput struct { _ struct{} `type:"structure"` // The list of triggers that were not able to be tested. This list provides // the names of the triggers that could not be tested, separated by commas. FailedExecutions []*RepositoryTriggerExecutionFailure `locationName:"failedExecutions" type:"list"` // The list of triggers that were successfully tested. This list provides the // names of the triggers that were successfully tested, separated by commas. SuccessfulExecutions []*string `locationName:"successfulExecutions" type:"list"` } // String returns the string representation func (s TestRepositoryTriggersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TestRepositoryTriggersOutput) GoString() string { return s.String() } // Represents the input of an update default branch operation. type UpdateDefaultBranchInput struct { _ struct{} `type:"structure"` // The name of the branch to set as the default. // // DefaultBranchName is a required field DefaultBranchName *string `locationName:"defaultBranchName" min:"1" type:"string" required:"true"` // The name of the repository to set or change the default branch for. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateDefaultBranchInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDefaultBranchInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateDefaultBranchInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateDefaultBranchInput"} if s.DefaultBranchName == nil { invalidParams.Add(request.NewErrParamRequired("DefaultBranchName")) } if s.DefaultBranchName != nil && len(*s.DefaultBranchName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DefaultBranchName", 1)) } if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateDefaultBranchOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateDefaultBranchOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDefaultBranchOutput) GoString() string { return s.String() } // Represents the input of an update repository description operation. type UpdateRepositoryDescriptionInput struct { _ struct{} `type:"structure"` // The new comment or description for the specified repository. Repository descriptions // are limited to 1,000 characters. RepositoryDescription *string `locationName:"repositoryDescription" type:"string"` // The name of the repository to set or change the comment or description for. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateRepositoryDescriptionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateRepositoryDescriptionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateRepositoryDescriptionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateRepositoryDescriptionInput"} if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateRepositoryDescriptionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateRepositoryDescriptionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateRepositoryDescriptionOutput) GoString() string { return s.String() } // Represents the input of an update repository description operation. type UpdateRepositoryNameInput struct { _ struct{} `type:"structure"` // The new name for the repository. // // NewName is a required field NewName *string `locationName:"newName" min:"1" type:"string" required:"true"` // The existing name of the repository. // // OldName is a required field OldName *string `locationName:"oldName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateRepositoryNameInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateRepositoryNameInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateRepositoryNameInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateRepositoryNameInput"} if s.NewName == nil { invalidParams.Add(request.NewErrParamRequired("NewName")) } if s.NewName != nil && len(*s.NewName) < 1 { invalidParams.Add(request.NewErrParamMinLen("NewName", 1)) } if s.OldName == nil { invalidParams.Add(request.NewErrParamRequired("OldName")) } if s.OldName != nil && len(*s.OldName) < 1 { invalidParams.Add(request.NewErrParamMinLen("OldName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateRepositoryNameOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateRepositoryNameOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateRepositoryNameOutput) GoString() string { return s.String() } // Information about the user who made a specified commit. type UserInfo struct { _ struct{} `type:"structure"` // The date when the specified commit was pushed to the repository. Date *string `locationName:"date" type:"string"` // The email address associated with the user who made the commit, if any. Email *string `locationName:"email" type:"string"` // The name of the user who made the specified commit. Name *string `locationName:"name" type:"string"` } // String returns the string representation func (s UserInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UserInfo) GoString() string { return s.String() } const ( // OrderEnumAscending is a OrderEnum enum value OrderEnumAscending = "ascending" // OrderEnumDescending is a OrderEnum enum value OrderEnumDescending = "descending" ) const ( // RepositoryTriggerEventEnumAll is a RepositoryTriggerEventEnum enum value RepositoryTriggerEventEnumAll = "all" // RepositoryTriggerEventEnumUpdateReference is a RepositoryTriggerEventEnum enum value RepositoryTriggerEventEnumUpdateReference = "updateReference" // RepositoryTriggerEventEnumCreateReference is a RepositoryTriggerEventEnum enum value RepositoryTriggerEventEnumCreateReference = "createReference" // RepositoryTriggerEventEnumDeleteReference is a RepositoryTriggerEventEnum enum value RepositoryTriggerEventEnumDeleteReference = "deleteReference" ) const ( // SortByEnumRepositoryName is a SortByEnum enum value SortByEnumRepositoryName = "repositoryName" // SortByEnumLastModifiedDate is a SortByEnum enum value SortByEnumLastModifiedDate = "lastModifiedDate" ) aws-sdk-go-1.4.22/service/codecommit/codecommitiface/000077500000000000000000000000001300374646400224615ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/codecommit/codecommitiface/interface.go000066400000000000000000000131741300374646400247560ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package codecommitiface provides an interface to enable mocking the AWS CodeCommit service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package codecommitiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/codecommit" ) // CodeCommitAPI provides an interface to enable mocking the // codecommit.CodeCommit service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS CodeCommit. // func myFunc(svc codecommitiface.CodeCommitAPI) bool { // // Make svc.BatchGetRepositories request // } // // func main() { // sess := session.New() // svc := codecommit.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockCodeCommitClient struct { // codecommitiface.CodeCommitAPI // } // func (m *mockCodeCommitClient) BatchGetRepositories(input *codecommit.BatchGetRepositoriesInput) (*codecommit.BatchGetRepositoriesOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockCodeCommitClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type CodeCommitAPI interface { BatchGetRepositoriesRequest(*codecommit.BatchGetRepositoriesInput) (*request.Request, *codecommit.BatchGetRepositoriesOutput) BatchGetRepositories(*codecommit.BatchGetRepositoriesInput) (*codecommit.BatchGetRepositoriesOutput, error) CreateBranchRequest(*codecommit.CreateBranchInput) (*request.Request, *codecommit.CreateBranchOutput) CreateBranch(*codecommit.CreateBranchInput) (*codecommit.CreateBranchOutput, error) CreateRepositoryRequest(*codecommit.CreateRepositoryInput) (*request.Request, *codecommit.CreateRepositoryOutput) CreateRepository(*codecommit.CreateRepositoryInput) (*codecommit.CreateRepositoryOutput, error) DeleteRepositoryRequest(*codecommit.DeleteRepositoryInput) (*request.Request, *codecommit.DeleteRepositoryOutput) DeleteRepository(*codecommit.DeleteRepositoryInput) (*codecommit.DeleteRepositoryOutput, error) GetBranchRequest(*codecommit.GetBranchInput) (*request.Request, *codecommit.GetBranchOutput) GetBranch(*codecommit.GetBranchInput) (*codecommit.GetBranchOutput, error) GetCommitRequest(*codecommit.GetCommitInput) (*request.Request, *codecommit.GetCommitOutput) GetCommit(*codecommit.GetCommitInput) (*codecommit.GetCommitOutput, error) GetRepositoryRequest(*codecommit.GetRepositoryInput) (*request.Request, *codecommit.GetRepositoryOutput) GetRepository(*codecommit.GetRepositoryInput) (*codecommit.GetRepositoryOutput, error) GetRepositoryTriggersRequest(*codecommit.GetRepositoryTriggersInput) (*request.Request, *codecommit.GetRepositoryTriggersOutput) GetRepositoryTriggers(*codecommit.GetRepositoryTriggersInput) (*codecommit.GetRepositoryTriggersOutput, error) ListBranchesRequest(*codecommit.ListBranchesInput) (*request.Request, *codecommit.ListBranchesOutput) ListBranches(*codecommit.ListBranchesInput) (*codecommit.ListBranchesOutput, error) ListBranchesPages(*codecommit.ListBranchesInput, func(*codecommit.ListBranchesOutput, bool) bool) error ListRepositoriesRequest(*codecommit.ListRepositoriesInput) (*request.Request, *codecommit.ListRepositoriesOutput) ListRepositories(*codecommit.ListRepositoriesInput) (*codecommit.ListRepositoriesOutput, error) ListRepositoriesPages(*codecommit.ListRepositoriesInput, func(*codecommit.ListRepositoriesOutput, bool) bool) error PutRepositoryTriggersRequest(*codecommit.PutRepositoryTriggersInput) (*request.Request, *codecommit.PutRepositoryTriggersOutput) PutRepositoryTriggers(*codecommit.PutRepositoryTriggersInput) (*codecommit.PutRepositoryTriggersOutput, error) TestRepositoryTriggersRequest(*codecommit.TestRepositoryTriggersInput) (*request.Request, *codecommit.TestRepositoryTriggersOutput) TestRepositoryTriggers(*codecommit.TestRepositoryTriggersInput) (*codecommit.TestRepositoryTriggersOutput, error) UpdateDefaultBranchRequest(*codecommit.UpdateDefaultBranchInput) (*request.Request, *codecommit.UpdateDefaultBranchOutput) UpdateDefaultBranch(*codecommit.UpdateDefaultBranchInput) (*codecommit.UpdateDefaultBranchOutput, error) UpdateRepositoryDescriptionRequest(*codecommit.UpdateRepositoryDescriptionInput) (*request.Request, *codecommit.UpdateRepositoryDescriptionOutput) UpdateRepositoryDescription(*codecommit.UpdateRepositoryDescriptionInput) (*codecommit.UpdateRepositoryDescriptionOutput, error) UpdateRepositoryNameRequest(*codecommit.UpdateRepositoryNameInput) (*request.Request, *codecommit.UpdateRepositoryNameOutput) UpdateRepositoryName(*codecommit.UpdateRepositoryNameInput) (*codecommit.UpdateRepositoryNameOutput, error) } var _ CodeCommitAPI = (*codecommit.CodeCommit)(nil) aws-sdk-go-1.4.22/service/codecommit/examples_test.go000066400000000000000000000235021300374646400225540ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package codecommit_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/codecommit" ) var _ time.Duration var _ bytes.Buffer func ExampleCodeCommit_BatchGetRepositories() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codecommit.New(sess) params := &codecommit.BatchGetRepositoriesInput{ RepositoryNames: []*string{ // Required aws.String("RepositoryName"), // Required // More values... }, } resp, err := svc.BatchGetRepositories(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeCommit_CreateBranch() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codecommit.New(sess) params := &codecommit.CreateBranchInput{ BranchName: aws.String("BranchName"), // Required CommitId: aws.String("CommitId"), // Required RepositoryName: aws.String("RepositoryName"), // Required } resp, err := svc.CreateBranch(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeCommit_CreateRepository() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codecommit.New(sess) params := &codecommit.CreateRepositoryInput{ RepositoryName: aws.String("RepositoryName"), // Required RepositoryDescription: aws.String("RepositoryDescription"), } resp, err := svc.CreateRepository(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeCommit_DeleteRepository() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codecommit.New(sess) params := &codecommit.DeleteRepositoryInput{ RepositoryName: aws.String("RepositoryName"), // Required } resp, err := svc.DeleteRepository(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeCommit_GetBranch() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codecommit.New(sess) params := &codecommit.GetBranchInput{ BranchName: aws.String("BranchName"), RepositoryName: aws.String("RepositoryName"), } resp, err := svc.GetBranch(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeCommit_GetCommit() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codecommit.New(sess) params := &codecommit.GetCommitInput{ CommitId: aws.String("ObjectId"), // Required RepositoryName: aws.String("RepositoryName"), // Required } resp, err := svc.GetCommit(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeCommit_GetRepository() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codecommit.New(sess) params := &codecommit.GetRepositoryInput{ RepositoryName: aws.String("RepositoryName"), // Required } resp, err := svc.GetRepository(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeCommit_GetRepositoryTriggers() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codecommit.New(sess) params := &codecommit.GetRepositoryTriggersInput{ RepositoryName: aws.String("RepositoryName"), } resp, err := svc.GetRepositoryTriggers(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeCommit_ListBranches() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codecommit.New(sess) params := &codecommit.ListBranchesInput{ RepositoryName: aws.String("RepositoryName"), // Required NextToken: aws.String("NextToken"), } resp, err := svc.ListBranches(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeCommit_ListRepositories() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codecommit.New(sess) params := &codecommit.ListRepositoriesInput{ NextToken: aws.String("NextToken"), Order: aws.String("OrderEnum"), SortBy: aws.String("SortByEnum"), } resp, err := svc.ListRepositories(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeCommit_PutRepositoryTriggers() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codecommit.New(sess) params := &codecommit.PutRepositoryTriggersInput{ RepositoryName: aws.String("RepositoryName"), Triggers: []*codecommit.RepositoryTrigger{ { // Required Branches: []*string{ aws.String("BranchName"), // Required // More values... }, CustomData: aws.String("RepositoryTriggerCustomData"), DestinationArn: aws.String("Arn"), Events: []*string{ aws.String("RepositoryTriggerEventEnum"), // Required // More values... }, Name: aws.String("RepositoryTriggerName"), }, // More values... }, } resp, err := svc.PutRepositoryTriggers(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeCommit_TestRepositoryTriggers() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codecommit.New(sess) params := &codecommit.TestRepositoryTriggersInput{ RepositoryName: aws.String("RepositoryName"), Triggers: []*codecommit.RepositoryTrigger{ { // Required Branches: []*string{ aws.String("BranchName"), // Required // More values... }, CustomData: aws.String("RepositoryTriggerCustomData"), DestinationArn: aws.String("Arn"), Events: []*string{ aws.String("RepositoryTriggerEventEnum"), // Required // More values... }, Name: aws.String("RepositoryTriggerName"), }, // More values... }, } resp, err := svc.TestRepositoryTriggers(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeCommit_UpdateDefaultBranch() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codecommit.New(sess) params := &codecommit.UpdateDefaultBranchInput{ DefaultBranchName: aws.String("BranchName"), // Required RepositoryName: aws.String("RepositoryName"), // Required } resp, err := svc.UpdateDefaultBranch(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeCommit_UpdateRepositoryDescription() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codecommit.New(sess) params := &codecommit.UpdateRepositoryDescriptionInput{ RepositoryName: aws.String("RepositoryName"), // Required RepositoryDescription: aws.String("RepositoryDescription"), } resp, err := svc.UpdateRepositoryDescription(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeCommit_UpdateRepositoryName() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codecommit.New(sess) params := &codecommit.UpdateRepositoryNameInput{ NewName: aws.String("RepositoryName"), // Required OldName: aws.String("RepositoryName"), // Required } resp, err := svc.UpdateRepositoryName(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/codecommit/service.go000066400000000000000000000114051300374646400213360ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package codecommit import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // This is the AWS CodeCommit API Reference. This reference provides descriptions // of the operations and data types for AWS CodeCommit API. // // You can use the AWS CodeCommit API to work with the following objects: // // * Repositories, by calling the following: BatchGetRepositories, which // returns information about one or more repositories associated with your // AWS account // CreateRepository, which creates an AWS CodeCommit repository // DeleteRepository, which deletes an AWS CodeCommit repository // GetRepository, which returns information about a specified repository // ListRepositories, which lists all AWS CodeCommit repositories associated // with your AWS account // UpdateRepositoryDescription, which sets or updates the description of the // repository // UpdateRepositoryName, which changes the name of the repository. If you change // the name of a repository, no other users of that repository will be able // to access it until you send them the new HTTPS or SSH URL to use. // // * Branches, by calling the following: CreateBranch, which creates a new // branch in a specified repository // GetBranch, which returns information about a specified branch // ListBranches, which lists all branches for a specified repository // UpdateDefaultBranch, which changes the default branch for a repository // // * Information about committed code in a repository, by calling the following: // GetCommit, which returns information about a commit, including commit // messages and committer information. // // * Triggers, by calling the following: GetRepositoryTriggers, which returns // information about triggers configured for a repository // PutRepositoryTriggers, which replaces all triggers for a repository and can // be used to create or delete triggers // TestRepositoryTriggers, which tests the functionality of a repository trigger // by sending data to the trigger target // // For information about how to use AWS CodeCommit, see the AWS CodeCommit User // Guide (http://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type CodeCommit struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "codecommit" // New creates a new instance of the CodeCommit client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a CodeCommit client from just a session. // svc := codecommit.New(mySession) // // // Create a CodeCommit client with additional configuration // svc := codecommit.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *CodeCommit { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *CodeCommit { svc := &CodeCommit{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-04-13", JSONVersion: "1.1", TargetPrefix: "CodeCommit_20150413", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a CodeCommit operation and runs any // custom request initialization. func (c *CodeCommit) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/codedeploy/000077500000000000000000000000001300374646400173525ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/codedeploy/api.go000066400000000000000000006670431300374646400204720ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package codedeploy provides a client for AWS CodeDeploy. package codedeploy import ( "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opAddTagsToOnPremisesInstances = "AddTagsToOnPremisesInstances" // AddTagsToOnPremisesInstancesRequest generates a "aws/request.Request" representing the // client's request for the AddTagsToOnPremisesInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddTagsToOnPremisesInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddTagsToOnPremisesInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddTagsToOnPremisesInstancesRequest method. // req, resp := client.AddTagsToOnPremisesInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) AddTagsToOnPremisesInstancesRequest(input *AddTagsToOnPremisesInstancesInput) (req *request.Request, output *AddTagsToOnPremisesInstancesOutput) { op := &request.Operation{ Name: opAddTagsToOnPremisesInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddTagsToOnPremisesInstancesInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AddTagsToOnPremisesInstancesOutput{} req.Data = output return } // AddTagsToOnPremisesInstances API operation for AWS CodeDeploy. // // Adds tags to on-premises instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation AddTagsToOnPremisesInstances for usage and error information. // // Returned Error Codes: // * InstanceNameRequiredException // An on-premises instance name was not specified. // // * TagRequiredException // A tag was not specified. // // * InvalidTagException // The specified tag was specified in an invalid format. // // * TagLimitExceededException // The maximum allowed number of tags was exceeded. // // * InstanceLimitExceededException // The maximum number of allowed on-premises instances in a single call was // exceeded. // // * InstanceNotRegisteredException // The specified on-premises instance is not registered. // func (c *CodeDeploy) AddTagsToOnPremisesInstances(input *AddTagsToOnPremisesInstancesInput) (*AddTagsToOnPremisesInstancesOutput, error) { req, out := c.AddTagsToOnPremisesInstancesRequest(input) err := req.Send() return out, err } const opBatchGetApplicationRevisions = "BatchGetApplicationRevisions" // BatchGetApplicationRevisionsRequest generates a "aws/request.Request" representing the // client's request for the BatchGetApplicationRevisions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See BatchGetApplicationRevisions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the BatchGetApplicationRevisions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the BatchGetApplicationRevisionsRequest method. // req, resp := client.BatchGetApplicationRevisionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) BatchGetApplicationRevisionsRequest(input *BatchGetApplicationRevisionsInput) (req *request.Request, output *BatchGetApplicationRevisionsOutput) { op := &request.Operation{ Name: opBatchGetApplicationRevisions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &BatchGetApplicationRevisionsInput{} } req = c.newRequest(op, input, output) output = &BatchGetApplicationRevisionsOutput{} req.Data = output return } // BatchGetApplicationRevisions API operation for AWS CodeDeploy. // // Gets information about one or more application revisions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation BatchGetApplicationRevisions for usage and error information. // // Returned Error Codes: // * ApplicationDoesNotExistException // The application does not exist with the applicable IAM user or AWS account. // // * ApplicationNameRequiredException // The minimum number of required application names was not specified. // // * InvalidApplicationNameException // The application name was specified in an invalid format. // // * RevisionRequiredException // The revision ID was not specified. // // * InvalidRevisionException // The revision was specified in an invalid format. // // * BatchLimitExceededException // The maximum number of names or IDs allowed for this request (100) was exceeded. // func (c *CodeDeploy) BatchGetApplicationRevisions(input *BatchGetApplicationRevisionsInput) (*BatchGetApplicationRevisionsOutput, error) { req, out := c.BatchGetApplicationRevisionsRequest(input) err := req.Send() return out, err } const opBatchGetApplications = "BatchGetApplications" // BatchGetApplicationsRequest generates a "aws/request.Request" representing the // client's request for the BatchGetApplications operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See BatchGetApplications for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the BatchGetApplications method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the BatchGetApplicationsRequest method. // req, resp := client.BatchGetApplicationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) BatchGetApplicationsRequest(input *BatchGetApplicationsInput) (req *request.Request, output *BatchGetApplicationsOutput) { op := &request.Operation{ Name: opBatchGetApplications, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &BatchGetApplicationsInput{} } req = c.newRequest(op, input, output) output = &BatchGetApplicationsOutput{} req.Data = output return } // BatchGetApplications API operation for AWS CodeDeploy. // // Gets information about one or more applications. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation BatchGetApplications for usage and error information. // // Returned Error Codes: // * ApplicationNameRequiredException // The minimum number of required application names was not specified. // // * InvalidApplicationNameException // The application name was specified in an invalid format. // // * ApplicationDoesNotExistException // The application does not exist with the applicable IAM user or AWS account. // // * BatchLimitExceededException // The maximum number of names or IDs allowed for this request (100) was exceeded. // func (c *CodeDeploy) BatchGetApplications(input *BatchGetApplicationsInput) (*BatchGetApplicationsOutput, error) { req, out := c.BatchGetApplicationsRequest(input) err := req.Send() return out, err } const opBatchGetDeploymentGroups = "BatchGetDeploymentGroups" // BatchGetDeploymentGroupsRequest generates a "aws/request.Request" representing the // client's request for the BatchGetDeploymentGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See BatchGetDeploymentGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the BatchGetDeploymentGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the BatchGetDeploymentGroupsRequest method. // req, resp := client.BatchGetDeploymentGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) BatchGetDeploymentGroupsRequest(input *BatchGetDeploymentGroupsInput) (req *request.Request, output *BatchGetDeploymentGroupsOutput) { op := &request.Operation{ Name: opBatchGetDeploymentGroups, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &BatchGetDeploymentGroupsInput{} } req = c.newRequest(op, input, output) output = &BatchGetDeploymentGroupsOutput{} req.Data = output return } // BatchGetDeploymentGroups API operation for AWS CodeDeploy. // // Get information about one or more deployment groups. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation BatchGetDeploymentGroups for usage and error information. // // Returned Error Codes: // * ApplicationNameRequiredException // The minimum number of required application names was not specified. // // * InvalidApplicationNameException // The application name was specified in an invalid format. // // * ApplicationDoesNotExistException // The application does not exist with the applicable IAM user or AWS account. // // * DeploymentGroupNameRequiredException // The deployment group name was not specified. // // * InvalidDeploymentGroupNameException // The deployment group name was specified in an invalid format. // // * BatchLimitExceededException // The maximum number of names or IDs allowed for this request (100) was exceeded. // func (c *CodeDeploy) BatchGetDeploymentGroups(input *BatchGetDeploymentGroupsInput) (*BatchGetDeploymentGroupsOutput, error) { req, out := c.BatchGetDeploymentGroupsRequest(input) err := req.Send() return out, err } const opBatchGetDeploymentInstances = "BatchGetDeploymentInstances" // BatchGetDeploymentInstancesRequest generates a "aws/request.Request" representing the // client's request for the BatchGetDeploymentInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See BatchGetDeploymentInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the BatchGetDeploymentInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the BatchGetDeploymentInstancesRequest method. // req, resp := client.BatchGetDeploymentInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) BatchGetDeploymentInstancesRequest(input *BatchGetDeploymentInstancesInput) (req *request.Request, output *BatchGetDeploymentInstancesOutput) { op := &request.Operation{ Name: opBatchGetDeploymentInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &BatchGetDeploymentInstancesInput{} } req = c.newRequest(op, input, output) output = &BatchGetDeploymentInstancesOutput{} req.Data = output return } // BatchGetDeploymentInstances API operation for AWS CodeDeploy. // // Gets information about one or more instance that are part of a deployment // group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation BatchGetDeploymentInstances for usage and error information. // // Returned Error Codes: // * DeploymentIdRequiredException // At least one deployment ID must be specified. // // * DeploymentDoesNotExistException // The deployment does not exist with the applicable IAM user or AWS account. // // * InstanceIdRequiredException // The instance ID was not specified. // // * InvalidDeploymentIdException // At least one of the deployment IDs was specified in an invalid format. // // * InvalidInstanceNameException // The specified on-premises instance name was specified in an invalid format. // // * BatchLimitExceededException // The maximum number of names or IDs allowed for this request (100) was exceeded. // func (c *CodeDeploy) BatchGetDeploymentInstances(input *BatchGetDeploymentInstancesInput) (*BatchGetDeploymentInstancesOutput, error) { req, out := c.BatchGetDeploymentInstancesRequest(input) err := req.Send() return out, err } const opBatchGetDeployments = "BatchGetDeployments" // BatchGetDeploymentsRequest generates a "aws/request.Request" representing the // client's request for the BatchGetDeployments operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See BatchGetDeployments for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the BatchGetDeployments method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the BatchGetDeploymentsRequest method. // req, resp := client.BatchGetDeploymentsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) BatchGetDeploymentsRequest(input *BatchGetDeploymentsInput) (req *request.Request, output *BatchGetDeploymentsOutput) { op := &request.Operation{ Name: opBatchGetDeployments, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &BatchGetDeploymentsInput{} } req = c.newRequest(op, input, output) output = &BatchGetDeploymentsOutput{} req.Data = output return } // BatchGetDeployments API operation for AWS CodeDeploy. // // Gets information about one or more deployments. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation BatchGetDeployments for usage and error information. // // Returned Error Codes: // * DeploymentIdRequiredException // At least one deployment ID must be specified. // // * InvalidDeploymentIdException // At least one of the deployment IDs was specified in an invalid format. // // * BatchLimitExceededException // The maximum number of names or IDs allowed for this request (100) was exceeded. // func (c *CodeDeploy) BatchGetDeployments(input *BatchGetDeploymentsInput) (*BatchGetDeploymentsOutput, error) { req, out := c.BatchGetDeploymentsRequest(input) err := req.Send() return out, err } const opBatchGetOnPremisesInstances = "BatchGetOnPremisesInstances" // BatchGetOnPremisesInstancesRequest generates a "aws/request.Request" representing the // client's request for the BatchGetOnPremisesInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See BatchGetOnPremisesInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the BatchGetOnPremisesInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the BatchGetOnPremisesInstancesRequest method. // req, resp := client.BatchGetOnPremisesInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) BatchGetOnPremisesInstancesRequest(input *BatchGetOnPremisesInstancesInput) (req *request.Request, output *BatchGetOnPremisesInstancesOutput) { op := &request.Operation{ Name: opBatchGetOnPremisesInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &BatchGetOnPremisesInstancesInput{} } req = c.newRequest(op, input, output) output = &BatchGetOnPremisesInstancesOutput{} req.Data = output return } // BatchGetOnPremisesInstances API operation for AWS CodeDeploy. // // Gets information about one or more on-premises instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation BatchGetOnPremisesInstances for usage and error information. // // Returned Error Codes: // * InstanceNameRequiredException // An on-premises instance name was not specified. // // * InvalidInstanceNameException // The specified on-premises instance name was specified in an invalid format. // // * BatchLimitExceededException // The maximum number of names or IDs allowed for this request (100) was exceeded. // func (c *CodeDeploy) BatchGetOnPremisesInstances(input *BatchGetOnPremisesInstancesInput) (*BatchGetOnPremisesInstancesOutput, error) { req, out := c.BatchGetOnPremisesInstancesRequest(input) err := req.Send() return out, err } const opCreateApplication = "CreateApplication" // CreateApplicationRequest generates a "aws/request.Request" representing the // client's request for the CreateApplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateApplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateApplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateApplicationRequest method. // req, resp := client.CreateApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) CreateApplicationRequest(input *CreateApplicationInput) (req *request.Request, output *CreateApplicationOutput) { op := &request.Operation{ Name: opCreateApplication, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateApplicationInput{} } req = c.newRequest(op, input, output) output = &CreateApplicationOutput{} req.Data = output return } // CreateApplication API operation for AWS CodeDeploy. // // Creates an application. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation CreateApplication for usage and error information. // // Returned Error Codes: // * ApplicationNameRequiredException // The minimum number of required application names was not specified. // // * InvalidApplicationNameException // The application name was specified in an invalid format. // // * ApplicationAlreadyExistsException // An application with the specified name already exists with the applicable // IAM user or AWS account. // // * ApplicationLimitExceededException // More applications were attempted to be created than are allowed. // func (c *CodeDeploy) CreateApplication(input *CreateApplicationInput) (*CreateApplicationOutput, error) { req, out := c.CreateApplicationRequest(input) err := req.Send() return out, err } const opCreateDeployment = "CreateDeployment" // CreateDeploymentRequest generates a "aws/request.Request" representing the // client's request for the CreateDeployment operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDeployment for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDeployment method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDeploymentRequest method. // req, resp := client.CreateDeploymentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) CreateDeploymentRequest(input *CreateDeploymentInput) (req *request.Request, output *CreateDeploymentOutput) { op := &request.Operation{ Name: opCreateDeployment, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDeploymentInput{} } req = c.newRequest(op, input, output) output = &CreateDeploymentOutput{} req.Data = output return } // CreateDeployment API operation for AWS CodeDeploy. // // Deploys an application revision through the specified deployment group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation CreateDeployment for usage and error information. // // Returned Error Codes: // * ApplicationNameRequiredException // The minimum number of required application names was not specified. // // * InvalidApplicationNameException // The application name was specified in an invalid format. // // * ApplicationDoesNotExistException // The application does not exist with the applicable IAM user or AWS account. // // * DeploymentGroupNameRequiredException // The deployment group name was not specified. // // * InvalidDeploymentGroupNameException // The deployment group name was specified in an invalid format. // // * DeploymentGroupDoesNotExistException // The named deployment group does not exist with the applicable IAM user or // AWS account. // // * RevisionRequiredException // The revision ID was not specified. // // * RevisionDoesNotExistException // The named revision does not exist with the applicable IAM user or AWS account. // // * InvalidRevisionException // The revision was specified in an invalid format. // // * InvalidDeploymentConfigNameException // The deployment configuration name was specified in an invalid format. // // * DeploymentConfigDoesNotExistException // The deployment configuration does not exist with the applicable IAM user // or AWS account. // // * DescriptionTooLongException // The description is too long. // // * DeploymentLimitExceededException // The number of allowed deployments was exceeded. // // * InvalidAutoRollbackConfigException // The automatic rollback configuration was specified in an invalid format. // For example, automatic rollback is enabled but an invalid triggering event // type or no event types were listed. // func (c *CodeDeploy) CreateDeployment(input *CreateDeploymentInput) (*CreateDeploymentOutput, error) { req, out := c.CreateDeploymentRequest(input) err := req.Send() return out, err } const opCreateDeploymentConfig = "CreateDeploymentConfig" // CreateDeploymentConfigRequest generates a "aws/request.Request" representing the // client's request for the CreateDeploymentConfig operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDeploymentConfig for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDeploymentConfig method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDeploymentConfigRequest method. // req, resp := client.CreateDeploymentConfigRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) CreateDeploymentConfigRequest(input *CreateDeploymentConfigInput) (req *request.Request, output *CreateDeploymentConfigOutput) { op := &request.Operation{ Name: opCreateDeploymentConfig, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDeploymentConfigInput{} } req = c.newRequest(op, input, output) output = &CreateDeploymentConfigOutput{} req.Data = output return } // CreateDeploymentConfig API operation for AWS CodeDeploy. // // Creates a deployment configuration. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation CreateDeploymentConfig for usage and error information. // // Returned Error Codes: // * InvalidDeploymentConfigNameException // The deployment configuration name was specified in an invalid format. // // * DeploymentConfigNameRequiredException // The deployment configuration name was not specified. // // * DeploymentConfigAlreadyExistsException // A deployment configuration with the specified name already exists with the // applicable IAM user or AWS account. // // * InvalidMinimumHealthyHostValueException // The minimum healthy instance value was specified in an invalid format. // // * DeploymentConfigLimitExceededException // The deployment configurations limit was exceeded. // func (c *CodeDeploy) CreateDeploymentConfig(input *CreateDeploymentConfigInput) (*CreateDeploymentConfigOutput, error) { req, out := c.CreateDeploymentConfigRequest(input) err := req.Send() return out, err } const opCreateDeploymentGroup = "CreateDeploymentGroup" // CreateDeploymentGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateDeploymentGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDeploymentGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDeploymentGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDeploymentGroupRequest method. // req, resp := client.CreateDeploymentGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) CreateDeploymentGroupRequest(input *CreateDeploymentGroupInput) (req *request.Request, output *CreateDeploymentGroupOutput) { op := &request.Operation{ Name: opCreateDeploymentGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDeploymentGroupInput{} } req = c.newRequest(op, input, output) output = &CreateDeploymentGroupOutput{} req.Data = output return } // CreateDeploymentGroup API operation for AWS CodeDeploy. // // Creates a deployment group to which application revisions will be deployed. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation CreateDeploymentGroup for usage and error information. // // Returned Error Codes: // * ApplicationNameRequiredException // The minimum number of required application names was not specified. // // * InvalidApplicationNameException // The application name was specified in an invalid format. // // * ApplicationDoesNotExistException // The application does not exist with the applicable IAM user or AWS account. // // * DeploymentGroupNameRequiredException // The deployment group name was not specified. // // * InvalidDeploymentGroupNameException // The deployment group name was specified in an invalid format. // // * DeploymentGroupAlreadyExistsException // A deployment group with the specified name already exists with the applicable // IAM user or AWS account. // // * InvalidEC2TagException // The tag was specified in an invalid format. // // * InvalidTagException // The specified tag was specified in an invalid format. // // * InvalidAutoScalingGroupException // The Auto Scaling group was specified in an invalid format or does not exist. // // * InvalidDeploymentConfigNameException // The deployment configuration name was specified in an invalid format. // // * DeploymentConfigDoesNotExistException // The deployment configuration does not exist with the applicable IAM user // or AWS account. // // * RoleRequiredException // The role ID was not specified. // // * InvalidRoleException // The service role ARN was specified in an invalid format. Or, if an Auto Scaling // group was specified, the specified service role does not grant the appropriate // permissions to Auto Scaling. // // * DeploymentGroupLimitExceededException // The deployment groups limit was exceeded. // // * LifecycleHookLimitExceededException // The limit for lifecycle hooks was exceeded. // // * InvalidTriggerConfigException // The trigger was specified in an invalid format. // // * TriggerTargetsLimitExceededException // The maximum allowed number of triggers was exceeded. // // * InvalidAlarmConfigException // The format of the alarm configuration is invalid. Possible causes include: // // * The alarm list is null. // // * The alarm object is null. // // * The alarm name is empty or null or exceeds the 255 character limit. // // * Two alarms with the same name have been specified. // // * The alarm configuration is enabled but the alarm list is empty. // // * AlarmsLimitExceededException // The maximum number of alarms for a deployment group (10) was exceeded. // // * InvalidAutoRollbackConfigException // The automatic rollback configuration was specified in an invalid format. // For example, automatic rollback is enabled but an invalid triggering event // type or no event types were listed. // func (c *CodeDeploy) CreateDeploymentGroup(input *CreateDeploymentGroupInput) (*CreateDeploymentGroupOutput, error) { req, out := c.CreateDeploymentGroupRequest(input) err := req.Send() return out, err } const opDeleteApplication = "DeleteApplication" // DeleteApplicationRequest generates a "aws/request.Request" representing the // client's request for the DeleteApplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteApplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteApplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteApplicationRequest method. // req, resp := client.DeleteApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) DeleteApplicationRequest(input *DeleteApplicationInput) (req *request.Request, output *DeleteApplicationOutput) { op := &request.Operation{ Name: opDeleteApplication, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteApplicationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteApplicationOutput{} req.Data = output return } // DeleteApplication API operation for AWS CodeDeploy. // // Deletes an application. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation DeleteApplication for usage and error information. // // Returned Error Codes: // * ApplicationNameRequiredException // The minimum number of required application names was not specified. // // * InvalidApplicationNameException // The application name was specified in an invalid format. // func (c *CodeDeploy) DeleteApplication(input *DeleteApplicationInput) (*DeleteApplicationOutput, error) { req, out := c.DeleteApplicationRequest(input) err := req.Send() return out, err } const opDeleteDeploymentConfig = "DeleteDeploymentConfig" // DeleteDeploymentConfigRequest generates a "aws/request.Request" representing the // client's request for the DeleteDeploymentConfig operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDeploymentConfig for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDeploymentConfig method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDeploymentConfigRequest method. // req, resp := client.DeleteDeploymentConfigRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) DeleteDeploymentConfigRequest(input *DeleteDeploymentConfigInput) (req *request.Request, output *DeleteDeploymentConfigOutput) { op := &request.Operation{ Name: opDeleteDeploymentConfig, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDeploymentConfigInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteDeploymentConfigOutput{} req.Data = output return } // DeleteDeploymentConfig API operation for AWS CodeDeploy. // // Deletes a deployment configuration. // // A deployment configuration cannot be deleted if it is currently in use. Predefined // configurations cannot be deleted. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation DeleteDeploymentConfig for usage and error information. // // Returned Error Codes: // * InvalidDeploymentConfigNameException // The deployment configuration name was specified in an invalid format. // // * DeploymentConfigNameRequiredException // The deployment configuration name was not specified. // // * DeploymentConfigInUseException // The deployment configuration is still in use. // // * InvalidOperationException // An invalid operation was detected. // func (c *CodeDeploy) DeleteDeploymentConfig(input *DeleteDeploymentConfigInput) (*DeleteDeploymentConfigOutput, error) { req, out := c.DeleteDeploymentConfigRequest(input) err := req.Send() return out, err } const opDeleteDeploymentGroup = "DeleteDeploymentGroup" // DeleteDeploymentGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteDeploymentGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDeploymentGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDeploymentGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDeploymentGroupRequest method. // req, resp := client.DeleteDeploymentGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) DeleteDeploymentGroupRequest(input *DeleteDeploymentGroupInput) (req *request.Request, output *DeleteDeploymentGroupOutput) { op := &request.Operation{ Name: opDeleteDeploymentGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDeploymentGroupInput{} } req = c.newRequest(op, input, output) output = &DeleteDeploymentGroupOutput{} req.Data = output return } // DeleteDeploymentGroup API operation for AWS CodeDeploy. // // Deletes a deployment group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation DeleteDeploymentGroup for usage and error information. // // Returned Error Codes: // * ApplicationNameRequiredException // The minimum number of required application names was not specified. // // * InvalidApplicationNameException // The application name was specified in an invalid format. // // * DeploymentGroupNameRequiredException // The deployment group name was not specified. // // * InvalidDeploymentGroupNameException // The deployment group name was specified in an invalid format. // // * InvalidRoleException // The service role ARN was specified in an invalid format. Or, if an Auto Scaling // group was specified, the specified service role does not grant the appropriate // permissions to Auto Scaling. // func (c *CodeDeploy) DeleteDeploymentGroup(input *DeleteDeploymentGroupInput) (*DeleteDeploymentGroupOutput, error) { req, out := c.DeleteDeploymentGroupRequest(input) err := req.Send() return out, err } const opDeregisterOnPremisesInstance = "DeregisterOnPremisesInstance" // DeregisterOnPremisesInstanceRequest generates a "aws/request.Request" representing the // client's request for the DeregisterOnPremisesInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeregisterOnPremisesInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeregisterOnPremisesInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeregisterOnPremisesInstanceRequest method. // req, resp := client.DeregisterOnPremisesInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) DeregisterOnPremisesInstanceRequest(input *DeregisterOnPremisesInstanceInput) (req *request.Request, output *DeregisterOnPremisesInstanceOutput) { op := &request.Operation{ Name: opDeregisterOnPremisesInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeregisterOnPremisesInstanceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeregisterOnPremisesInstanceOutput{} req.Data = output return } // DeregisterOnPremisesInstance API operation for AWS CodeDeploy. // // Deregisters an on-premises instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation DeregisterOnPremisesInstance for usage and error information. // // Returned Error Codes: // * InstanceNameRequiredException // An on-premises instance name was not specified. // // * InvalidInstanceNameException // The specified on-premises instance name was specified in an invalid format. // func (c *CodeDeploy) DeregisterOnPremisesInstance(input *DeregisterOnPremisesInstanceInput) (*DeregisterOnPremisesInstanceOutput, error) { req, out := c.DeregisterOnPremisesInstanceRequest(input) err := req.Send() return out, err } const opGetApplication = "GetApplication" // GetApplicationRequest generates a "aws/request.Request" representing the // client's request for the GetApplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetApplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetApplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetApplicationRequest method. // req, resp := client.GetApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) GetApplicationRequest(input *GetApplicationInput) (req *request.Request, output *GetApplicationOutput) { op := &request.Operation{ Name: opGetApplication, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetApplicationInput{} } req = c.newRequest(op, input, output) output = &GetApplicationOutput{} req.Data = output return } // GetApplication API operation for AWS CodeDeploy. // // Gets information about an application. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation GetApplication for usage and error information. // // Returned Error Codes: // * ApplicationNameRequiredException // The minimum number of required application names was not specified. // // * InvalidApplicationNameException // The application name was specified in an invalid format. // // * ApplicationDoesNotExistException // The application does not exist with the applicable IAM user or AWS account. // func (c *CodeDeploy) GetApplication(input *GetApplicationInput) (*GetApplicationOutput, error) { req, out := c.GetApplicationRequest(input) err := req.Send() return out, err } const opGetApplicationRevision = "GetApplicationRevision" // GetApplicationRevisionRequest generates a "aws/request.Request" representing the // client's request for the GetApplicationRevision operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetApplicationRevision for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetApplicationRevision method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetApplicationRevisionRequest method. // req, resp := client.GetApplicationRevisionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) GetApplicationRevisionRequest(input *GetApplicationRevisionInput) (req *request.Request, output *GetApplicationRevisionOutput) { op := &request.Operation{ Name: opGetApplicationRevision, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetApplicationRevisionInput{} } req = c.newRequest(op, input, output) output = &GetApplicationRevisionOutput{} req.Data = output return } // GetApplicationRevision API operation for AWS CodeDeploy. // // Gets information about an application revision. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation GetApplicationRevision for usage and error information. // // Returned Error Codes: // * ApplicationDoesNotExistException // The application does not exist with the applicable IAM user or AWS account. // // * ApplicationNameRequiredException // The minimum number of required application names was not specified. // // * InvalidApplicationNameException // The application name was specified in an invalid format. // // * RevisionDoesNotExistException // The named revision does not exist with the applicable IAM user or AWS account. // // * RevisionRequiredException // The revision ID was not specified. // // * InvalidRevisionException // The revision was specified in an invalid format. // func (c *CodeDeploy) GetApplicationRevision(input *GetApplicationRevisionInput) (*GetApplicationRevisionOutput, error) { req, out := c.GetApplicationRevisionRequest(input) err := req.Send() return out, err } const opGetDeployment = "GetDeployment" // GetDeploymentRequest generates a "aws/request.Request" representing the // client's request for the GetDeployment operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDeployment for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDeployment method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDeploymentRequest method. // req, resp := client.GetDeploymentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) GetDeploymentRequest(input *GetDeploymentInput) (req *request.Request, output *GetDeploymentOutput) { op := &request.Operation{ Name: opGetDeployment, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetDeploymentInput{} } req = c.newRequest(op, input, output) output = &GetDeploymentOutput{} req.Data = output return } // GetDeployment API operation for AWS CodeDeploy. // // Gets information about a deployment. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation GetDeployment for usage and error information. // // Returned Error Codes: // * DeploymentIdRequiredException // At least one deployment ID must be specified. // // * InvalidDeploymentIdException // At least one of the deployment IDs was specified in an invalid format. // // * DeploymentDoesNotExistException // The deployment does not exist with the applicable IAM user or AWS account. // func (c *CodeDeploy) GetDeployment(input *GetDeploymentInput) (*GetDeploymentOutput, error) { req, out := c.GetDeploymentRequest(input) err := req.Send() return out, err } const opGetDeploymentConfig = "GetDeploymentConfig" // GetDeploymentConfigRequest generates a "aws/request.Request" representing the // client's request for the GetDeploymentConfig operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDeploymentConfig for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDeploymentConfig method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDeploymentConfigRequest method. // req, resp := client.GetDeploymentConfigRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) GetDeploymentConfigRequest(input *GetDeploymentConfigInput) (req *request.Request, output *GetDeploymentConfigOutput) { op := &request.Operation{ Name: opGetDeploymentConfig, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetDeploymentConfigInput{} } req = c.newRequest(op, input, output) output = &GetDeploymentConfigOutput{} req.Data = output return } // GetDeploymentConfig API operation for AWS CodeDeploy. // // Gets information about a deployment configuration. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation GetDeploymentConfig for usage and error information. // // Returned Error Codes: // * InvalidDeploymentConfigNameException // The deployment configuration name was specified in an invalid format. // // * DeploymentConfigNameRequiredException // The deployment configuration name was not specified. // // * DeploymentConfigDoesNotExistException // The deployment configuration does not exist with the applicable IAM user // or AWS account. // func (c *CodeDeploy) GetDeploymentConfig(input *GetDeploymentConfigInput) (*GetDeploymentConfigOutput, error) { req, out := c.GetDeploymentConfigRequest(input) err := req.Send() return out, err } const opGetDeploymentGroup = "GetDeploymentGroup" // GetDeploymentGroupRequest generates a "aws/request.Request" representing the // client's request for the GetDeploymentGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDeploymentGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDeploymentGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDeploymentGroupRequest method. // req, resp := client.GetDeploymentGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) GetDeploymentGroupRequest(input *GetDeploymentGroupInput) (req *request.Request, output *GetDeploymentGroupOutput) { op := &request.Operation{ Name: opGetDeploymentGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetDeploymentGroupInput{} } req = c.newRequest(op, input, output) output = &GetDeploymentGroupOutput{} req.Data = output return } // GetDeploymentGroup API operation for AWS CodeDeploy. // // Gets information about a deployment group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation GetDeploymentGroup for usage and error information. // // Returned Error Codes: // * ApplicationNameRequiredException // The minimum number of required application names was not specified. // // * InvalidApplicationNameException // The application name was specified in an invalid format. // // * ApplicationDoesNotExistException // The application does not exist with the applicable IAM user or AWS account. // // * DeploymentGroupNameRequiredException // The deployment group name was not specified. // // * InvalidDeploymentGroupNameException // The deployment group name was specified in an invalid format. // // * DeploymentGroupDoesNotExistException // The named deployment group does not exist with the applicable IAM user or // AWS account. // func (c *CodeDeploy) GetDeploymentGroup(input *GetDeploymentGroupInput) (*GetDeploymentGroupOutput, error) { req, out := c.GetDeploymentGroupRequest(input) err := req.Send() return out, err } const opGetDeploymentInstance = "GetDeploymentInstance" // GetDeploymentInstanceRequest generates a "aws/request.Request" representing the // client's request for the GetDeploymentInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDeploymentInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDeploymentInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDeploymentInstanceRequest method. // req, resp := client.GetDeploymentInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) GetDeploymentInstanceRequest(input *GetDeploymentInstanceInput) (req *request.Request, output *GetDeploymentInstanceOutput) { op := &request.Operation{ Name: opGetDeploymentInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetDeploymentInstanceInput{} } req = c.newRequest(op, input, output) output = &GetDeploymentInstanceOutput{} req.Data = output return } // GetDeploymentInstance API operation for AWS CodeDeploy. // // Gets information about an instance as part of a deployment. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation GetDeploymentInstance for usage and error information. // // Returned Error Codes: // * DeploymentIdRequiredException // At least one deployment ID must be specified. // // * DeploymentDoesNotExistException // The deployment does not exist with the applicable IAM user or AWS account. // // * InstanceIdRequiredException // The instance ID was not specified. // // * InvalidDeploymentIdException // At least one of the deployment IDs was specified in an invalid format. // // * InstanceDoesNotExistException // The specified instance does not exist in the deployment group. // // * InvalidInstanceNameException // The specified on-premises instance name was specified in an invalid format. // func (c *CodeDeploy) GetDeploymentInstance(input *GetDeploymentInstanceInput) (*GetDeploymentInstanceOutput, error) { req, out := c.GetDeploymentInstanceRequest(input) err := req.Send() return out, err } const opGetOnPremisesInstance = "GetOnPremisesInstance" // GetOnPremisesInstanceRequest generates a "aws/request.Request" representing the // client's request for the GetOnPremisesInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetOnPremisesInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetOnPremisesInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetOnPremisesInstanceRequest method. // req, resp := client.GetOnPremisesInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) GetOnPremisesInstanceRequest(input *GetOnPremisesInstanceInput) (req *request.Request, output *GetOnPremisesInstanceOutput) { op := &request.Operation{ Name: opGetOnPremisesInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetOnPremisesInstanceInput{} } req = c.newRequest(op, input, output) output = &GetOnPremisesInstanceOutput{} req.Data = output return } // GetOnPremisesInstance API operation for AWS CodeDeploy. // // Gets information about an on-premises instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation GetOnPremisesInstance for usage and error information. // // Returned Error Codes: // * InstanceNameRequiredException // An on-premises instance name was not specified. // // * InstanceNotRegisteredException // The specified on-premises instance is not registered. // // * InvalidInstanceNameException // The specified on-premises instance name was specified in an invalid format. // func (c *CodeDeploy) GetOnPremisesInstance(input *GetOnPremisesInstanceInput) (*GetOnPremisesInstanceOutput, error) { req, out := c.GetOnPremisesInstanceRequest(input) err := req.Send() return out, err } const opListApplicationRevisions = "ListApplicationRevisions" // ListApplicationRevisionsRequest generates a "aws/request.Request" representing the // client's request for the ListApplicationRevisions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListApplicationRevisions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListApplicationRevisions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListApplicationRevisionsRequest method. // req, resp := client.ListApplicationRevisionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) ListApplicationRevisionsRequest(input *ListApplicationRevisionsInput) (req *request.Request, output *ListApplicationRevisionsOutput) { op := &request.Operation{ Name: opListApplicationRevisions, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListApplicationRevisionsInput{} } req = c.newRequest(op, input, output) output = &ListApplicationRevisionsOutput{} req.Data = output return } // ListApplicationRevisions API operation for AWS CodeDeploy. // // Lists information about revisions for an application. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation ListApplicationRevisions for usage and error information. // // Returned Error Codes: // * ApplicationDoesNotExistException // The application does not exist with the applicable IAM user or AWS account. // // * ApplicationNameRequiredException // The minimum number of required application names was not specified. // // * InvalidApplicationNameException // The application name was specified in an invalid format. // // * InvalidSortByException // The column name to sort by is either not present or was specified in an invalid // format. // // * InvalidSortOrderException // The sort order was specified in an invalid format. // // * InvalidBucketNameFilterException // The bucket name either doesn't exist or was specified in an invalid format. // // * InvalidKeyPrefixFilterException // The specified key prefix filter was specified in an invalid format. // // * BucketNameFilterRequiredException // A bucket name is required, but was not provided. // // * InvalidDeployedStateFilterException // The deployed state filter was specified in an invalid format. // // * InvalidNextTokenException // The next token was specified in an invalid format. // func (c *CodeDeploy) ListApplicationRevisions(input *ListApplicationRevisionsInput) (*ListApplicationRevisionsOutput, error) { req, out := c.ListApplicationRevisionsRequest(input) err := req.Send() return out, err } // ListApplicationRevisionsPages iterates over the pages of a ListApplicationRevisions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListApplicationRevisions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListApplicationRevisions operation. // pageNum := 0 // err := client.ListApplicationRevisionsPages(params, // func(page *ListApplicationRevisionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CodeDeploy) ListApplicationRevisionsPages(input *ListApplicationRevisionsInput, fn func(p *ListApplicationRevisionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListApplicationRevisionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListApplicationRevisionsOutput), lastPage) }) } const opListApplications = "ListApplications" // ListApplicationsRequest generates a "aws/request.Request" representing the // client's request for the ListApplications operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListApplications for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListApplications method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListApplicationsRequest method. // req, resp := client.ListApplicationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) ListApplicationsRequest(input *ListApplicationsInput) (req *request.Request, output *ListApplicationsOutput) { op := &request.Operation{ Name: opListApplications, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListApplicationsInput{} } req = c.newRequest(op, input, output) output = &ListApplicationsOutput{} req.Data = output return } // ListApplications API operation for AWS CodeDeploy. // // Lists the applications registered with the applicable IAM user or AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation ListApplications for usage and error information. // // Returned Error Codes: // * InvalidNextTokenException // The next token was specified in an invalid format. // func (c *CodeDeploy) ListApplications(input *ListApplicationsInput) (*ListApplicationsOutput, error) { req, out := c.ListApplicationsRequest(input) err := req.Send() return out, err } // ListApplicationsPages iterates over the pages of a ListApplications operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListApplications method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListApplications operation. // pageNum := 0 // err := client.ListApplicationsPages(params, // func(page *ListApplicationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CodeDeploy) ListApplicationsPages(input *ListApplicationsInput, fn func(p *ListApplicationsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListApplicationsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListApplicationsOutput), lastPage) }) } const opListDeploymentConfigs = "ListDeploymentConfigs" // ListDeploymentConfigsRequest generates a "aws/request.Request" representing the // client's request for the ListDeploymentConfigs operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDeploymentConfigs for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDeploymentConfigs method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDeploymentConfigsRequest method. // req, resp := client.ListDeploymentConfigsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) ListDeploymentConfigsRequest(input *ListDeploymentConfigsInput) (req *request.Request, output *ListDeploymentConfigsOutput) { op := &request.Operation{ Name: opListDeploymentConfigs, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListDeploymentConfigsInput{} } req = c.newRequest(op, input, output) output = &ListDeploymentConfigsOutput{} req.Data = output return } // ListDeploymentConfigs API operation for AWS CodeDeploy. // // Lists the deployment configurations with the applicable IAM user or AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation ListDeploymentConfigs for usage and error information. // // Returned Error Codes: // * InvalidNextTokenException // The next token was specified in an invalid format. // func (c *CodeDeploy) ListDeploymentConfigs(input *ListDeploymentConfigsInput) (*ListDeploymentConfigsOutput, error) { req, out := c.ListDeploymentConfigsRequest(input) err := req.Send() return out, err } // ListDeploymentConfigsPages iterates over the pages of a ListDeploymentConfigs operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListDeploymentConfigs method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListDeploymentConfigs operation. // pageNum := 0 // err := client.ListDeploymentConfigsPages(params, // func(page *ListDeploymentConfigsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CodeDeploy) ListDeploymentConfigsPages(input *ListDeploymentConfigsInput, fn func(p *ListDeploymentConfigsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListDeploymentConfigsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListDeploymentConfigsOutput), lastPage) }) } const opListDeploymentGroups = "ListDeploymentGroups" // ListDeploymentGroupsRequest generates a "aws/request.Request" representing the // client's request for the ListDeploymentGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDeploymentGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDeploymentGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDeploymentGroupsRequest method. // req, resp := client.ListDeploymentGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) ListDeploymentGroupsRequest(input *ListDeploymentGroupsInput) (req *request.Request, output *ListDeploymentGroupsOutput) { op := &request.Operation{ Name: opListDeploymentGroups, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListDeploymentGroupsInput{} } req = c.newRequest(op, input, output) output = &ListDeploymentGroupsOutput{} req.Data = output return } // ListDeploymentGroups API operation for AWS CodeDeploy. // // Lists the deployment groups for an application registered with the applicable // IAM user or AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation ListDeploymentGroups for usage and error information. // // Returned Error Codes: // * ApplicationNameRequiredException // The minimum number of required application names was not specified. // // * InvalidApplicationNameException // The application name was specified in an invalid format. // // * ApplicationDoesNotExistException // The application does not exist with the applicable IAM user or AWS account. // // * InvalidNextTokenException // The next token was specified in an invalid format. // func (c *CodeDeploy) ListDeploymentGroups(input *ListDeploymentGroupsInput) (*ListDeploymentGroupsOutput, error) { req, out := c.ListDeploymentGroupsRequest(input) err := req.Send() return out, err } // ListDeploymentGroupsPages iterates over the pages of a ListDeploymentGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListDeploymentGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListDeploymentGroups operation. // pageNum := 0 // err := client.ListDeploymentGroupsPages(params, // func(page *ListDeploymentGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CodeDeploy) ListDeploymentGroupsPages(input *ListDeploymentGroupsInput, fn func(p *ListDeploymentGroupsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListDeploymentGroupsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListDeploymentGroupsOutput), lastPage) }) } const opListDeploymentInstances = "ListDeploymentInstances" // ListDeploymentInstancesRequest generates a "aws/request.Request" representing the // client's request for the ListDeploymentInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDeploymentInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDeploymentInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDeploymentInstancesRequest method. // req, resp := client.ListDeploymentInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) ListDeploymentInstancesRequest(input *ListDeploymentInstancesInput) (req *request.Request, output *ListDeploymentInstancesOutput) { op := &request.Operation{ Name: opListDeploymentInstances, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListDeploymentInstancesInput{} } req = c.newRequest(op, input, output) output = &ListDeploymentInstancesOutput{} req.Data = output return } // ListDeploymentInstances API operation for AWS CodeDeploy. // // Lists the instance for a deployment associated with the applicable IAM user // or AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation ListDeploymentInstances for usage and error information. // // Returned Error Codes: // * DeploymentIdRequiredException // At least one deployment ID must be specified. // // * DeploymentDoesNotExistException // The deployment does not exist with the applicable IAM user or AWS account. // // * DeploymentNotStartedException // The specified deployment has not started. // // * InvalidNextTokenException // The next token was specified in an invalid format. // // * InvalidDeploymentIdException // At least one of the deployment IDs was specified in an invalid format. // // * InvalidInstanceStatusException // The specified instance status does not exist. // func (c *CodeDeploy) ListDeploymentInstances(input *ListDeploymentInstancesInput) (*ListDeploymentInstancesOutput, error) { req, out := c.ListDeploymentInstancesRequest(input) err := req.Send() return out, err } // ListDeploymentInstancesPages iterates over the pages of a ListDeploymentInstances operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListDeploymentInstances method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListDeploymentInstances operation. // pageNum := 0 // err := client.ListDeploymentInstancesPages(params, // func(page *ListDeploymentInstancesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CodeDeploy) ListDeploymentInstancesPages(input *ListDeploymentInstancesInput, fn func(p *ListDeploymentInstancesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListDeploymentInstancesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListDeploymentInstancesOutput), lastPage) }) } const opListDeployments = "ListDeployments" // ListDeploymentsRequest generates a "aws/request.Request" representing the // client's request for the ListDeployments operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDeployments for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDeployments method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDeploymentsRequest method. // req, resp := client.ListDeploymentsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) ListDeploymentsRequest(input *ListDeploymentsInput) (req *request.Request, output *ListDeploymentsOutput) { op := &request.Operation{ Name: opListDeployments, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListDeploymentsInput{} } req = c.newRequest(op, input, output) output = &ListDeploymentsOutput{} req.Data = output return } // ListDeployments API operation for AWS CodeDeploy. // // Lists the deployments in a deployment group for an application registered // with the applicable IAM user or AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation ListDeployments for usage and error information. // // Returned Error Codes: // * ApplicationNameRequiredException // The minimum number of required application names was not specified. // // * InvalidApplicationNameException // The application name was specified in an invalid format. // // * ApplicationDoesNotExistException // The application does not exist with the applicable IAM user or AWS account. // // * InvalidDeploymentGroupNameException // The deployment group name was specified in an invalid format. // // * DeploymentGroupDoesNotExistException // The named deployment group does not exist with the applicable IAM user or // AWS account. // // * DeploymentGroupNameRequiredException // The deployment group name was not specified. // // * InvalidTimeRangeException // The specified time range was specified in an invalid format. // // * InvalidDeploymentStatusException // The specified deployment status doesn't exist or cannot be determined. // // * InvalidNextTokenException // The next token was specified in an invalid format. // func (c *CodeDeploy) ListDeployments(input *ListDeploymentsInput) (*ListDeploymentsOutput, error) { req, out := c.ListDeploymentsRequest(input) err := req.Send() return out, err } // ListDeploymentsPages iterates over the pages of a ListDeployments operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListDeployments method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListDeployments operation. // pageNum := 0 // err := client.ListDeploymentsPages(params, // func(page *ListDeploymentsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *CodeDeploy) ListDeploymentsPages(input *ListDeploymentsInput, fn func(p *ListDeploymentsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListDeploymentsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListDeploymentsOutput), lastPage) }) } const opListOnPremisesInstances = "ListOnPremisesInstances" // ListOnPremisesInstancesRequest generates a "aws/request.Request" representing the // client's request for the ListOnPremisesInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListOnPremisesInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListOnPremisesInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListOnPremisesInstancesRequest method. // req, resp := client.ListOnPremisesInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) ListOnPremisesInstancesRequest(input *ListOnPremisesInstancesInput) (req *request.Request, output *ListOnPremisesInstancesOutput) { op := &request.Operation{ Name: opListOnPremisesInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListOnPremisesInstancesInput{} } req = c.newRequest(op, input, output) output = &ListOnPremisesInstancesOutput{} req.Data = output return } // ListOnPremisesInstances API operation for AWS CodeDeploy. // // Gets a list of names for one or more on-premises instances. // // Unless otherwise specified, both registered and deregistered on-premises // instance names will be listed. To list only registered or deregistered on-premises // instance names, use the registration status parameter. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation ListOnPremisesInstances for usage and error information. // // Returned Error Codes: // * InvalidRegistrationStatusException // The registration status was specified in an invalid format. // // * InvalidTagFilterException // The specified tag filter was specified in an invalid format. // // * InvalidNextTokenException // The next token was specified in an invalid format. // func (c *CodeDeploy) ListOnPremisesInstances(input *ListOnPremisesInstancesInput) (*ListOnPremisesInstancesOutput, error) { req, out := c.ListOnPremisesInstancesRequest(input) err := req.Send() return out, err } const opRegisterApplicationRevision = "RegisterApplicationRevision" // RegisterApplicationRevisionRequest generates a "aws/request.Request" representing the // client's request for the RegisterApplicationRevision operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterApplicationRevision for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterApplicationRevision method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterApplicationRevisionRequest method. // req, resp := client.RegisterApplicationRevisionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) RegisterApplicationRevisionRequest(input *RegisterApplicationRevisionInput) (req *request.Request, output *RegisterApplicationRevisionOutput) { op := &request.Operation{ Name: opRegisterApplicationRevision, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterApplicationRevisionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RegisterApplicationRevisionOutput{} req.Data = output return } // RegisterApplicationRevision API operation for AWS CodeDeploy. // // Registers with AWS CodeDeploy a revision for the specified application. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation RegisterApplicationRevision for usage and error information. // // Returned Error Codes: // * ApplicationDoesNotExistException // The application does not exist with the applicable IAM user or AWS account. // // * ApplicationNameRequiredException // The minimum number of required application names was not specified. // // * InvalidApplicationNameException // The application name was specified in an invalid format. // // * DescriptionTooLongException // The description is too long. // // * RevisionRequiredException // The revision ID was not specified. // // * InvalidRevisionException // The revision was specified in an invalid format. // func (c *CodeDeploy) RegisterApplicationRevision(input *RegisterApplicationRevisionInput) (*RegisterApplicationRevisionOutput, error) { req, out := c.RegisterApplicationRevisionRequest(input) err := req.Send() return out, err } const opRegisterOnPremisesInstance = "RegisterOnPremisesInstance" // RegisterOnPremisesInstanceRequest generates a "aws/request.Request" representing the // client's request for the RegisterOnPremisesInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterOnPremisesInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterOnPremisesInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterOnPremisesInstanceRequest method. // req, resp := client.RegisterOnPremisesInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) RegisterOnPremisesInstanceRequest(input *RegisterOnPremisesInstanceInput) (req *request.Request, output *RegisterOnPremisesInstanceOutput) { op := &request.Operation{ Name: opRegisterOnPremisesInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterOnPremisesInstanceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RegisterOnPremisesInstanceOutput{} req.Data = output return } // RegisterOnPremisesInstance API operation for AWS CodeDeploy. // // Registers an on-premises instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation RegisterOnPremisesInstance for usage and error information. // // Returned Error Codes: // * InstanceNameAlreadyRegisteredException // The specified on-premises instance name is already registered. // // * IamUserArnAlreadyRegisteredException // The specified IAM user ARN is already registered with an on-premises instance. // // * InstanceNameRequiredException // An on-premises instance name was not specified. // // * IamUserArnRequiredException // An IAM user ARN was not specified. // // * InvalidInstanceNameException // The specified on-premises instance name was specified in an invalid format. // // * InvalidIamUserArnException // The IAM user ARN was specified in an invalid format. // func (c *CodeDeploy) RegisterOnPremisesInstance(input *RegisterOnPremisesInstanceInput) (*RegisterOnPremisesInstanceOutput, error) { req, out := c.RegisterOnPremisesInstanceRequest(input) err := req.Send() return out, err } const opRemoveTagsFromOnPremisesInstances = "RemoveTagsFromOnPremisesInstances" // RemoveTagsFromOnPremisesInstancesRequest generates a "aws/request.Request" representing the // client's request for the RemoveTagsFromOnPremisesInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveTagsFromOnPremisesInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveTagsFromOnPremisesInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveTagsFromOnPremisesInstancesRequest method. // req, resp := client.RemoveTagsFromOnPremisesInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) RemoveTagsFromOnPremisesInstancesRequest(input *RemoveTagsFromOnPremisesInstancesInput) (req *request.Request, output *RemoveTagsFromOnPremisesInstancesOutput) { op := &request.Operation{ Name: opRemoveTagsFromOnPremisesInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveTagsFromOnPremisesInstancesInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RemoveTagsFromOnPremisesInstancesOutput{} req.Data = output return } // RemoveTagsFromOnPremisesInstances API operation for AWS CodeDeploy. // // Removes one or more tags from one or more on-premises instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation RemoveTagsFromOnPremisesInstances for usage and error information. // // Returned Error Codes: // * InstanceNameRequiredException // An on-premises instance name was not specified. // // * TagRequiredException // A tag was not specified. // // * InvalidTagException // The specified tag was specified in an invalid format. // // * TagLimitExceededException // The maximum allowed number of tags was exceeded. // // * InstanceLimitExceededException // The maximum number of allowed on-premises instances in a single call was // exceeded. // // * InstanceNotRegisteredException // The specified on-premises instance is not registered. // func (c *CodeDeploy) RemoveTagsFromOnPremisesInstances(input *RemoveTagsFromOnPremisesInstancesInput) (*RemoveTagsFromOnPremisesInstancesOutput, error) { req, out := c.RemoveTagsFromOnPremisesInstancesRequest(input) err := req.Send() return out, err } const opStopDeployment = "StopDeployment" // StopDeploymentRequest generates a "aws/request.Request" representing the // client's request for the StopDeployment operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StopDeployment for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StopDeployment method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StopDeploymentRequest method. // req, resp := client.StopDeploymentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) StopDeploymentRequest(input *StopDeploymentInput) (req *request.Request, output *StopDeploymentOutput) { op := &request.Operation{ Name: opStopDeployment, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StopDeploymentInput{} } req = c.newRequest(op, input, output) output = &StopDeploymentOutput{} req.Data = output return } // StopDeployment API operation for AWS CodeDeploy. // // Attempts to stop an ongoing deployment. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation StopDeployment for usage and error information. // // Returned Error Codes: // * DeploymentIdRequiredException // At least one deployment ID must be specified. // // * DeploymentDoesNotExistException // The deployment does not exist with the applicable IAM user or AWS account. // // * DeploymentAlreadyCompletedException // The deployment is already complete. // // * InvalidDeploymentIdException // At least one of the deployment IDs was specified in an invalid format. // func (c *CodeDeploy) StopDeployment(input *StopDeploymentInput) (*StopDeploymentOutput, error) { req, out := c.StopDeploymentRequest(input) err := req.Send() return out, err } const opUpdateApplication = "UpdateApplication" // UpdateApplicationRequest generates a "aws/request.Request" representing the // client's request for the UpdateApplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateApplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateApplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateApplicationRequest method. // req, resp := client.UpdateApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) UpdateApplicationRequest(input *UpdateApplicationInput) (req *request.Request, output *UpdateApplicationOutput) { op := &request.Operation{ Name: opUpdateApplication, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateApplicationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateApplicationOutput{} req.Data = output return } // UpdateApplication API operation for AWS CodeDeploy. // // Changes the name of an application. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation UpdateApplication for usage and error information. // // Returned Error Codes: // * ApplicationNameRequiredException // The minimum number of required application names was not specified. // // * InvalidApplicationNameException // The application name was specified in an invalid format. // // * ApplicationAlreadyExistsException // An application with the specified name already exists with the applicable // IAM user or AWS account. // // * ApplicationDoesNotExistException // The application does not exist with the applicable IAM user or AWS account. // func (c *CodeDeploy) UpdateApplication(input *UpdateApplicationInput) (*UpdateApplicationOutput, error) { req, out := c.UpdateApplicationRequest(input) err := req.Send() return out, err } const opUpdateDeploymentGroup = "UpdateDeploymentGroup" // UpdateDeploymentGroupRequest generates a "aws/request.Request" representing the // client's request for the UpdateDeploymentGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateDeploymentGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateDeploymentGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateDeploymentGroupRequest method. // req, resp := client.UpdateDeploymentGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodeDeploy) UpdateDeploymentGroupRequest(input *UpdateDeploymentGroupInput) (req *request.Request, output *UpdateDeploymentGroupOutput) { op := &request.Operation{ Name: opUpdateDeploymentGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateDeploymentGroupInput{} } req = c.newRequest(op, input, output) output = &UpdateDeploymentGroupOutput{} req.Data = output return } // UpdateDeploymentGroup API operation for AWS CodeDeploy. // // Changes information about a deployment group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodeDeploy's // API operation UpdateDeploymentGroup for usage and error information. // // Returned Error Codes: // * ApplicationNameRequiredException // The minimum number of required application names was not specified. // // * InvalidApplicationNameException // The application name was specified in an invalid format. // // * ApplicationDoesNotExistException // The application does not exist with the applicable IAM user or AWS account. // // * InvalidDeploymentGroupNameException // The deployment group name was specified in an invalid format. // // * DeploymentGroupAlreadyExistsException // A deployment group with the specified name already exists with the applicable // IAM user or AWS account. // // * DeploymentGroupNameRequiredException // The deployment group name was not specified. // // * DeploymentGroupDoesNotExistException // The named deployment group does not exist with the applicable IAM user or // AWS account. // // * InvalidEC2TagException // The tag was specified in an invalid format. // // * InvalidTagException // The specified tag was specified in an invalid format. // // * InvalidAutoScalingGroupException // The Auto Scaling group was specified in an invalid format or does not exist. // // * InvalidDeploymentConfigNameException // The deployment configuration name was specified in an invalid format. // // * DeploymentConfigDoesNotExistException // The deployment configuration does not exist with the applicable IAM user // or AWS account. // // * InvalidRoleException // The service role ARN was specified in an invalid format. Or, if an Auto Scaling // group was specified, the specified service role does not grant the appropriate // permissions to Auto Scaling. // // * LifecycleHookLimitExceededException // The limit for lifecycle hooks was exceeded. // // * InvalidTriggerConfigException // The trigger was specified in an invalid format. // // * TriggerTargetsLimitExceededException // The maximum allowed number of triggers was exceeded. // // * InvalidAlarmConfigException // The format of the alarm configuration is invalid. Possible causes include: // // * The alarm list is null. // // * The alarm object is null. // // * The alarm name is empty or null or exceeds the 255 character limit. // // * Two alarms with the same name have been specified. // // * The alarm configuration is enabled but the alarm list is empty. // // * AlarmsLimitExceededException // The maximum number of alarms for a deployment group (10) was exceeded. // // * InvalidAutoRollbackConfigException // The automatic rollback configuration was specified in an invalid format. // For example, automatic rollback is enabled but an invalid triggering event // type or no event types were listed. // func (c *CodeDeploy) UpdateDeploymentGroup(input *UpdateDeploymentGroupInput) (*UpdateDeploymentGroupOutput, error) { req, out := c.UpdateDeploymentGroupRequest(input) err := req.Send() return out, err } // Represents the input of, and adds tags to, an on-premises instance operation. type AddTagsToOnPremisesInstancesInput struct { _ struct{} `type:"structure"` // The names of the on-premises instances to which to add tags. // // InstanceNames is a required field InstanceNames []*string `locationName:"instanceNames" type:"list" required:"true"` // The tag key-value pairs to add to the on-premises instances. // // Keys and values are both required. Keys cannot be null or empty strings. // Value-only tags are not allowed. // // Tags is a required field Tags []*Tag `locationName:"tags" type:"list" required:"true"` } // String returns the string representation func (s AddTagsToOnPremisesInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToOnPremisesInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsToOnPremisesInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsToOnPremisesInstancesInput"} if s.InstanceNames == nil { invalidParams.Add(request.NewErrParamRequired("InstanceNames")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddTagsToOnPremisesInstancesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddTagsToOnPremisesInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToOnPremisesInstancesOutput) GoString() string { return s.String() } // Information about an alarm. type Alarm struct { _ struct{} `type:"structure"` // The name of the alarm. Maximum length is 255 characters. Each alarm name // can be used only once in a list of alarms. Name *string `locationName:"name" type:"string"` } // String returns the string representation func (s Alarm) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Alarm) GoString() string { return s.String() } // Information about alarms associated with the deployment group. type AlarmConfiguration struct { _ struct{} `type:"structure"` // A list of alarms configured for the deployment group. A maximum of 10 alarms // can be added to a deployment group. Alarms []*Alarm `locationName:"alarms" type:"list"` // Indicates whether the alarm configuration is enabled. Enabled *bool `locationName:"enabled" type:"boolean"` // Indicates whether a deployment should continue if information about the current // state of alarms cannot be retrieved from Amazon CloudWatch. The default value // is false. // // * true: The deployment will proceed even if alarm status information can't // be retrieved from Amazon CloudWatch. // // * false: The deployment will stop if alarm status information can't be // retrieved from Amazon CloudWatch. IgnorePollAlarmFailure *bool `locationName:"ignorePollAlarmFailure" type:"boolean"` } // String returns the string representation func (s AlarmConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AlarmConfiguration) GoString() string { return s.String() } // Information about an application. type ApplicationInfo struct { _ struct{} `type:"structure"` // The application ID. ApplicationId *string `locationName:"applicationId" type:"string"` // The application name. ApplicationName *string `locationName:"applicationName" min:"1" type:"string"` // The time at which the application was created. CreateTime *time.Time `locationName:"createTime" type:"timestamp" timestampFormat:"unix"` // True if the user has authenticated with GitHub for the specified application; // otherwise, false. LinkedToGitHub *bool `locationName:"linkedToGitHub" type:"boolean"` } // String returns the string representation func (s ApplicationInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ApplicationInfo) GoString() string { return s.String() } // Information about a configuration for automatically rolling back to a previous // version of an application revision when a deployment doesn't complete successfully. type AutoRollbackConfiguration struct { _ struct{} `type:"structure"` // Indicates whether a defined automatic rollback configuration is currently // enabled. Enabled *bool `locationName:"enabled" type:"boolean"` // The event type or types that trigger a rollback. Events []*string `locationName:"events" type:"list"` } // String returns the string representation func (s AutoRollbackConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AutoRollbackConfiguration) GoString() string { return s.String() } // Information about an Auto Scaling group. type AutoScalingGroup struct { _ struct{} `type:"structure"` // An Auto Scaling lifecycle event hook name. Hook *string `locationName:"hook" type:"string"` // The Auto Scaling group name. Name *string `locationName:"name" type:"string"` } // String returns the string representation func (s AutoScalingGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AutoScalingGroup) GoString() string { return s.String() } // Represents the input of a batch get application revisions operation. type BatchGetApplicationRevisionsInput struct { _ struct{} `type:"structure"` // The name of an AWS CodeDeploy application about which to get revision information. // // ApplicationName is a required field ApplicationName *string `locationName:"applicationName" min:"1" type:"string" required:"true"` // Information to get about the application revisions, including type and location. // // Revisions is a required field Revisions []*RevisionLocation `locationName:"revisions" type:"list" required:"true"` } // String returns the string representation func (s BatchGetApplicationRevisionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchGetApplicationRevisionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BatchGetApplicationRevisionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BatchGetApplicationRevisionsInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.Revisions == nil { invalidParams.Add(request.NewErrParamRequired("Revisions")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a batch get application revisions operation. type BatchGetApplicationRevisionsOutput struct { _ struct{} `type:"structure"` // The name of the application that corresponds to the revisions. ApplicationName *string `locationName:"applicationName" min:"1" type:"string"` // Information about errors that may have occurred during the API call. ErrorMessage *string `locationName:"errorMessage" type:"string"` // Additional information about the revisions, including the type and location. Revisions []*RevisionInfo `locationName:"revisions" type:"list"` } // String returns the string representation func (s BatchGetApplicationRevisionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchGetApplicationRevisionsOutput) GoString() string { return s.String() } // Represents the input of a batch get applications operation. type BatchGetApplicationsInput struct { _ struct{} `type:"structure"` // A list of application names separated by spaces. ApplicationNames []*string `locationName:"applicationNames" type:"list"` } // String returns the string representation func (s BatchGetApplicationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchGetApplicationsInput) GoString() string { return s.String() } // Represents the output of a batch get applications operation. type BatchGetApplicationsOutput struct { _ struct{} `type:"structure"` // Information about the applications. ApplicationsInfo []*ApplicationInfo `locationName:"applicationsInfo" type:"list"` } // String returns the string representation func (s BatchGetApplicationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchGetApplicationsOutput) GoString() string { return s.String() } // Represents the input of a batch get deployment groups operation. type BatchGetDeploymentGroupsInput struct { _ struct{} `type:"structure"` // The name of an AWS CodeDeploy application associated with the applicable // IAM user or AWS account. // // ApplicationName is a required field ApplicationName *string `locationName:"applicationName" min:"1" type:"string" required:"true"` // The deployment groups' names. // // DeploymentGroupNames is a required field DeploymentGroupNames []*string `locationName:"deploymentGroupNames" type:"list" required:"true"` } // String returns the string representation func (s BatchGetDeploymentGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchGetDeploymentGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BatchGetDeploymentGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BatchGetDeploymentGroupsInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.DeploymentGroupNames == nil { invalidParams.Add(request.NewErrParamRequired("DeploymentGroupNames")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a batch get deployment groups operation. type BatchGetDeploymentGroupsOutput struct { _ struct{} `type:"structure"` // Information about the deployment groups. DeploymentGroupsInfo []*DeploymentGroupInfo `locationName:"deploymentGroupsInfo" type:"list"` // Information about errors that may have occurred during the API call. ErrorMessage *string `locationName:"errorMessage" type:"string"` } // String returns the string representation func (s BatchGetDeploymentGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchGetDeploymentGroupsOutput) GoString() string { return s.String() } // Represents the input of a batch get deployment instances operation. type BatchGetDeploymentInstancesInput struct { _ struct{} `type:"structure"` // The unique ID of a deployment. // // DeploymentId is a required field DeploymentId *string `locationName:"deploymentId" type:"string" required:"true"` // The unique IDs of instances in the deployment group. // // InstanceIds is a required field InstanceIds []*string `locationName:"instanceIds" type:"list" required:"true"` } // String returns the string representation func (s BatchGetDeploymentInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchGetDeploymentInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BatchGetDeploymentInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BatchGetDeploymentInstancesInput"} if s.DeploymentId == nil { invalidParams.Add(request.NewErrParamRequired("DeploymentId")) } if s.InstanceIds == nil { invalidParams.Add(request.NewErrParamRequired("InstanceIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a batch get deployment instance operation. type BatchGetDeploymentInstancesOutput struct { _ struct{} `type:"structure"` // Information about errors that may have occurred during the API call. ErrorMessage *string `locationName:"errorMessage" type:"string"` // Information about the instance. InstancesSummary []*InstanceSummary `locationName:"instancesSummary" type:"list"` } // String returns the string representation func (s BatchGetDeploymentInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchGetDeploymentInstancesOutput) GoString() string { return s.String() } // Represents the input of a batch get deployments operation. type BatchGetDeploymentsInput struct { _ struct{} `type:"structure"` // A list of deployment IDs, separated by spaces. DeploymentIds []*string `locationName:"deploymentIds" type:"list"` } // String returns the string representation func (s BatchGetDeploymentsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchGetDeploymentsInput) GoString() string { return s.String() } // Represents the output of a batch get deployments operation. type BatchGetDeploymentsOutput struct { _ struct{} `type:"structure"` // Information about the deployments. DeploymentsInfo []*DeploymentInfo `locationName:"deploymentsInfo" type:"list"` } // String returns the string representation func (s BatchGetDeploymentsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchGetDeploymentsOutput) GoString() string { return s.String() } // Represents the input of a batch get on-premises instances operation. type BatchGetOnPremisesInstancesInput struct { _ struct{} `type:"structure"` // The names of the on-premises instances about which to get information. InstanceNames []*string `locationName:"instanceNames" type:"list"` } // String returns the string representation func (s BatchGetOnPremisesInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchGetOnPremisesInstancesInput) GoString() string { return s.String() } // Represents the output of a batch get on-premises instances operation. type BatchGetOnPremisesInstancesOutput struct { _ struct{} `type:"structure"` // Information about the on-premises instances. InstanceInfos []*InstanceInfo `locationName:"instanceInfos" type:"list"` } // String returns the string representation func (s BatchGetOnPremisesInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchGetOnPremisesInstancesOutput) GoString() string { return s.String() } // Represents the input of a create application operation. type CreateApplicationInput struct { _ struct{} `type:"structure"` // The name of the application. This name must be unique with the applicable // IAM user or AWS account. // // ApplicationName is a required field ApplicationName *string `locationName:"applicationName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateApplicationInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a create application operation. type CreateApplicationOutput struct { _ struct{} `type:"structure"` // A unique application ID. ApplicationId *string `locationName:"applicationId" type:"string"` } // String returns the string representation func (s CreateApplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateApplicationOutput) GoString() string { return s.String() } // Represents the input of a create deployment configuration operation. type CreateDeploymentConfigInput struct { _ struct{} `type:"structure"` // The name of the deployment configuration to create. // // DeploymentConfigName is a required field DeploymentConfigName *string `locationName:"deploymentConfigName" min:"1" type:"string" required:"true"` // The minimum number of healthy instances that should be available at any time // during the deployment. There are two parameters expected in the input: type // and value. // // The type parameter takes either of the following values: // // * HOST_COUNT: The value parameter represents the minimum number of healthy // instances as an absolute value. // // * FLEET_PERCENT: The value parameter represents the minimum number of // healthy instances as a percentage of the total number of instances in // the deployment. If you specify FLEET_PERCENT, at the start of the deployment, // AWS CodeDeploy converts the percentage to the equivalent number of instance // and rounds up fractional instances. // // The value parameter takes an integer. // // For example, to set a minimum of 95% healthy instance, specify a type of // FLEET_PERCENT and a value of 95. MinimumHealthyHosts *MinimumHealthyHosts `locationName:"minimumHealthyHosts" type:"structure"` } // String returns the string representation func (s CreateDeploymentConfigInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDeploymentConfigInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDeploymentConfigInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDeploymentConfigInput"} if s.DeploymentConfigName == nil { invalidParams.Add(request.NewErrParamRequired("DeploymentConfigName")) } if s.DeploymentConfigName != nil && len(*s.DeploymentConfigName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeploymentConfigName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a create deployment configuration operation. type CreateDeploymentConfigOutput struct { _ struct{} `type:"structure"` // A unique deployment configuration ID. DeploymentConfigId *string `locationName:"deploymentConfigId" type:"string"` } // String returns the string representation func (s CreateDeploymentConfigOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDeploymentConfigOutput) GoString() string { return s.String() } // Represents the input of a create deployment group operation. type CreateDeploymentGroupInput struct { _ struct{} `type:"structure"` // Information to add about Amazon CloudWatch alarms when the deployment group // is created. AlarmConfiguration *AlarmConfiguration `locationName:"alarmConfiguration" type:"structure"` // The name of an AWS CodeDeploy application associated with the applicable // IAM user or AWS account. // // ApplicationName is a required field ApplicationName *string `locationName:"applicationName" min:"1" type:"string" required:"true"` // Configuration information for an automatic rollback that is added when a // deployment group is created. AutoRollbackConfiguration *AutoRollbackConfiguration `locationName:"autoRollbackConfiguration" type:"structure"` // A list of associated Auto Scaling groups. AutoScalingGroups []*string `locationName:"autoScalingGroups" type:"list"` // If specified, the deployment configuration name can be either one of the // predefined configurations provided with AWS CodeDeploy or a custom deployment // configuration that you create by calling the create deployment configuration // operation. // // CodeDeployDefault.OneAtATime is the default deployment configuration. It // is used if a configuration isn't specified for the deployment or the deployment // group. // // The predefined deployment configurations include the following: // // * CodeDeployDefault.AllAtOnce attempts to deploy an application revision // to as many instances as possible at once. The status of the overall deployment // will be displayed as Succeeded if the application revision is deployed // to one or more of the instances. The status of the overall deployment // will be displayed as Failed if the application revision is not deployed // to any of the instances. Using an example of nine instances, CodeDeployDefault.AllAtOnce // will attempt to deploy to all nine instances at once. The overall deployment // will succeed if deployment to even a single instance is successful; it // will fail only if deployments to all nine instances fail. // // * CodeDeployDefault.HalfAtATime deploys to up to half of the instances // at a time (with fractions rounded down). The overall deployment succeeds // if the application revision is deployed to at least half of the instances // (with fractions rounded up); otherwise, the deployment fails. In the example // of nine instances, it will deploy to up to four instances at a time. The // overall deployment succeeds if deployment to five or more instances succeed; // otherwise, the deployment fails. The deployment may be successfully deployed // to some instances even if the overall deployment fails. // // * CodeDeployDefault.OneAtATime deploys the application revision to only // one instance at a time. // // For deployment groups that contain more than one instance: // // The overall deployment succeeds if the application revision is deployed to // all of the instances. The exception to this rule is if deployment to the // last instance fails, the overall deployment still succeeds. This is because // AWS CodeDeploy allows only one instance at a time to be taken offline // with the CodeDeployDefault.OneAtATime configuration. // // The overall deployment fails as soon as the application revision fails to // be deployed to any but the last instance. The deployment may be successfully // deployed to some instances even if the overall deployment fails. // // In an example using nine instances, it will deploy to one instance at a time. // The overall deployment succeeds if deployment to the first eight instances // is successful; the overall deployment fails if deployment to any of the // first eight instances fails. // // For deployment groups that contain only one instance, the overall deployment // is successful only if deployment to the single instance is successful DeploymentConfigName *string `locationName:"deploymentConfigName" min:"1" type:"string"` // The name of a new deployment group for the specified application. // // DeploymentGroupName is a required field DeploymentGroupName *string `locationName:"deploymentGroupName" min:"1" type:"string" required:"true"` // The Amazon EC2 tags on which to filter. Ec2TagFilters []*EC2TagFilter `locationName:"ec2TagFilters" type:"list"` // The on-premises instance tags on which to filter. OnPremisesInstanceTagFilters []*TagFilter `locationName:"onPremisesInstanceTagFilters" type:"list"` // A service role ARN that allows AWS CodeDeploy to act on the user's behalf // when interacting with AWS services. // // ServiceRoleArn is a required field ServiceRoleArn *string `locationName:"serviceRoleArn" type:"string" required:"true"` // Information about triggers to create when the deployment group is created. // For examples, see Create a Trigger for an AWS CodeDeploy Event (http://docs.aws.amazon.com/codedeploy/latest/userguide/how-to-notify-sns.html) // in the AWS CodeDeploy User Guide. TriggerConfigurations []*TriggerConfig `locationName:"triggerConfigurations" type:"list"` } // String returns the string representation func (s CreateDeploymentGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDeploymentGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDeploymentGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDeploymentGroupInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.DeploymentConfigName != nil && len(*s.DeploymentConfigName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeploymentConfigName", 1)) } if s.DeploymentGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DeploymentGroupName")) } if s.DeploymentGroupName != nil && len(*s.DeploymentGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeploymentGroupName", 1)) } if s.ServiceRoleArn == nil { invalidParams.Add(request.NewErrParamRequired("ServiceRoleArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a create deployment group operation. type CreateDeploymentGroupOutput struct { _ struct{} `type:"structure"` // A unique deployment group ID. DeploymentGroupId *string `locationName:"deploymentGroupId" type:"string"` } // String returns the string representation func (s CreateDeploymentGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDeploymentGroupOutput) GoString() string { return s.String() } // Represents the input of a create deployment operation. type CreateDeploymentInput struct { _ struct{} `type:"structure"` // The name of an AWS CodeDeploy application associated with the applicable // IAM user or AWS account. // // ApplicationName is a required field ApplicationName *string `locationName:"applicationName" min:"1" type:"string" required:"true"` // Configuration information for an automatic rollback that is added when a // deployment is created. AutoRollbackConfiguration *AutoRollbackConfiguration `locationName:"autoRollbackConfiguration" type:"structure"` // The name of a deployment configuration associated with the applicable IAM // user or AWS account. // // If not specified, the value configured in the deployment group will be used // as the default. If the deployment group does not have a deployment configuration // associated with it, then CodeDeployDefault.OneAtATime will be used by default. DeploymentConfigName *string `locationName:"deploymentConfigName" min:"1" type:"string"` // The name of the deployment group. DeploymentGroupName *string `locationName:"deploymentGroupName" min:"1" type:"string"` // A comment about the deployment. Description *string `locationName:"description" type:"string"` // If set to true, then if the deployment causes the ApplicationStop deployment // lifecycle event to an instance to fail, the deployment to that instance will // not be considered to have failed at that point and will continue on to the // BeforeInstall deployment lifecycle event. // // If set to false or not specified, then if the deployment causes the ApplicationStop // deployment lifecycle event to fail to an instance, the deployment to that // instance will stop, and the deployment to that instance will be considered // to have failed. IgnoreApplicationStopFailures *bool `locationName:"ignoreApplicationStopFailures" type:"boolean"` // The type and location of the revision to deploy. Revision *RevisionLocation `locationName:"revision" type:"structure"` // Indicates whether to deploy to all instances or only to instances that are // not running the latest application revision. UpdateOutdatedInstancesOnly *bool `locationName:"updateOutdatedInstancesOnly" type:"boolean"` } // String returns the string representation func (s CreateDeploymentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDeploymentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDeploymentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDeploymentInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.DeploymentConfigName != nil && len(*s.DeploymentConfigName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeploymentConfigName", 1)) } if s.DeploymentGroupName != nil && len(*s.DeploymentGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeploymentGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a create deployment operation. type CreateDeploymentOutput struct { _ struct{} `type:"structure"` // A unique deployment ID. DeploymentId *string `locationName:"deploymentId" type:"string"` } // String returns the string representation func (s CreateDeploymentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDeploymentOutput) GoString() string { return s.String() } // Represents the input of a delete application operation. type DeleteApplicationInput struct { _ struct{} `type:"structure"` // The name of an AWS CodeDeploy application associated with the applicable // IAM user or AWS account. // // ApplicationName is a required field ApplicationName *string `locationName:"applicationName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteApplicationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteApplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteApplicationOutput) GoString() string { return s.String() } // Represents the input of a delete deployment configuration operation. type DeleteDeploymentConfigInput struct { _ struct{} `type:"structure"` // The name of a deployment configuration associated with the applicable IAM // user or AWS account. // // DeploymentConfigName is a required field DeploymentConfigName *string `locationName:"deploymentConfigName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteDeploymentConfigInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDeploymentConfigInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDeploymentConfigInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDeploymentConfigInput"} if s.DeploymentConfigName == nil { invalidParams.Add(request.NewErrParamRequired("DeploymentConfigName")) } if s.DeploymentConfigName != nil && len(*s.DeploymentConfigName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeploymentConfigName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteDeploymentConfigOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteDeploymentConfigOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDeploymentConfigOutput) GoString() string { return s.String() } // Represents the input of a delete deployment group operation. type DeleteDeploymentGroupInput struct { _ struct{} `type:"structure"` // The name of an AWS CodeDeploy application associated with the applicable // IAM user or AWS account. // // ApplicationName is a required field ApplicationName *string `locationName:"applicationName" min:"1" type:"string" required:"true"` // The name of an existing deployment group for the specified application. // // DeploymentGroupName is a required field DeploymentGroupName *string `locationName:"deploymentGroupName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteDeploymentGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDeploymentGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDeploymentGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDeploymentGroupInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.DeploymentGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DeploymentGroupName")) } if s.DeploymentGroupName != nil && len(*s.DeploymentGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeploymentGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a delete deployment group operation. type DeleteDeploymentGroupOutput struct { _ struct{} `type:"structure"` // If the output contains no data, and the corresponding deployment group contained // at least one Auto Scaling group, AWS CodeDeploy successfully removed all // corresponding Auto Scaling lifecycle event hooks from the Amazon EC2 instances // in the Auto Scaling group. If the output contains data, AWS CodeDeploy could // not remove some Auto Scaling lifecycle event hooks from the Amazon EC2 instances // in the Auto Scaling group. HooksNotCleanedUp []*AutoScalingGroup `locationName:"hooksNotCleanedUp" type:"list"` } // String returns the string representation func (s DeleteDeploymentGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDeploymentGroupOutput) GoString() string { return s.String() } // Information about a deployment configuration. type DeploymentConfigInfo struct { _ struct{} `type:"structure"` // The time at which the deployment configuration was created. CreateTime *time.Time `locationName:"createTime" type:"timestamp" timestampFormat:"unix"` // The deployment configuration ID. DeploymentConfigId *string `locationName:"deploymentConfigId" type:"string"` // The deployment configuration name. DeploymentConfigName *string `locationName:"deploymentConfigName" min:"1" type:"string"` // Information about the number or percentage of minimum healthy instance. MinimumHealthyHosts *MinimumHealthyHosts `locationName:"minimumHealthyHosts" type:"structure"` } // String returns the string representation func (s DeploymentConfigInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeploymentConfigInfo) GoString() string { return s.String() } // Information about a deployment group. type DeploymentGroupInfo struct { _ struct{} `type:"structure"` // A list of alarms associated with the deployment group. AlarmConfiguration *AlarmConfiguration `locationName:"alarmConfiguration" type:"structure"` // The application name. ApplicationName *string `locationName:"applicationName" min:"1" type:"string"` // Information about the automatic rollback configuration associated with the // deployment group. AutoRollbackConfiguration *AutoRollbackConfiguration `locationName:"autoRollbackConfiguration" type:"structure"` // A list of associated Auto Scaling groups. AutoScalingGroups []*AutoScalingGroup `locationName:"autoScalingGroups" type:"list"` // The deployment configuration name. DeploymentConfigName *string `locationName:"deploymentConfigName" min:"1" type:"string"` // The deployment group ID. DeploymentGroupId *string `locationName:"deploymentGroupId" type:"string"` // The deployment group name. DeploymentGroupName *string `locationName:"deploymentGroupName" min:"1" type:"string"` // The Amazon EC2 tags on which to filter. Ec2TagFilters []*EC2TagFilter `locationName:"ec2TagFilters" type:"list"` // The on-premises instance tags on which to filter. OnPremisesInstanceTagFilters []*TagFilter `locationName:"onPremisesInstanceTagFilters" type:"list"` // A service role ARN. ServiceRoleArn *string `locationName:"serviceRoleArn" type:"string"` // Information about the deployment group's target revision, including type // and location. TargetRevision *RevisionLocation `locationName:"targetRevision" type:"structure"` // Information about triggers associated with the deployment group. TriggerConfigurations []*TriggerConfig `locationName:"triggerConfigurations" type:"list"` } // String returns the string representation func (s DeploymentGroupInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeploymentGroupInfo) GoString() string { return s.String() } // Information about a deployment. type DeploymentInfo struct { _ struct{} `type:"structure"` // The application name. ApplicationName *string `locationName:"applicationName" min:"1" type:"string"` // Information about the automatic rollback configuration associated with the // deployment. AutoRollbackConfiguration *AutoRollbackConfiguration `locationName:"autoRollbackConfiguration" type:"structure"` // A timestamp indicating when the deployment was complete. CompleteTime *time.Time `locationName:"completeTime" type:"timestamp" timestampFormat:"unix"` // A timestamp indicating when the deployment was created. CreateTime *time.Time `locationName:"createTime" type:"timestamp" timestampFormat:"unix"` // The means by which the deployment was created: // // * user: A user created the deployment. // // * autoscaling: Auto Scaling created the deployment. // // * codeDeployRollback: A rollback process created the deployment. Creator *string `locationName:"creator" type:"string" enum:"DeploymentCreator"` // The deployment configuration name. DeploymentConfigName *string `locationName:"deploymentConfigName" min:"1" type:"string"` // The deployment group name. DeploymentGroupName *string `locationName:"deploymentGroupName" min:"1" type:"string"` // The deployment ID. DeploymentId *string `locationName:"deploymentId" type:"string"` // A summary of the deployment status of the instances in the deployment. DeploymentOverview *DeploymentOverview `locationName:"deploymentOverview" type:"structure"` // A comment about the deployment. Description *string `locationName:"description" type:"string"` // Information about any error associated with this deployment. ErrorInformation *ErrorInformation `locationName:"errorInformation" type:"structure"` // If true, then if the deployment causes the ApplicationStop deployment lifecycle // event to an instance to fail, the deployment to that instance will not be // considered to have failed at that point and will continue on to the BeforeInstall // deployment lifecycle event. // // If false or not specified, then if the deployment causes the ApplicationStop // deployment lifecycle event to an instance to fail, the deployment to that // instance will stop, and the deployment to that instance will be considered // to have failed. IgnoreApplicationStopFailures *bool `locationName:"ignoreApplicationStopFailures" type:"boolean"` // Information about the location of stored application artifacts and the service // from which to retrieve them. Revision *RevisionLocation `locationName:"revision" type:"structure"` // Information about a deployment rollback. RollbackInfo *RollbackInfo `locationName:"rollbackInfo" type:"structure"` // A timestamp indicating when the deployment was deployed to the deployment // group. // // In some cases, the reported value of the start time may be later than the // complete time. This is due to differences in the clock settings of back-end // servers that participate in the deployment process. StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"unix"` // The current state of the deployment as a whole. Status *string `locationName:"status" type:"string" enum:"DeploymentStatus"` // Indicates whether only instances that are not running the latest application // revision are to be deployed to. UpdateOutdatedInstancesOnly *bool `locationName:"updateOutdatedInstancesOnly" type:"boolean"` } // String returns the string representation func (s DeploymentInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeploymentInfo) GoString() string { return s.String() } // Information about the deployment status of the instances in the deployment. type DeploymentOverview struct { _ struct{} `type:"structure"` // The number of instances in the deployment in a failed state. Failed *int64 `type:"long"` // The number of instances in which the deployment is in progress. InProgress *int64 `type:"long"` // The number of instances in the deployment in a pending state. Pending *int64 `type:"long"` // The number of instances in the deployment in a skipped state. Skipped *int64 `type:"long"` // The number of instances in the deployment to which revisions have been successfully // deployed. Succeeded *int64 `type:"long"` } // String returns the string representation func (s DeploymentOverview) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeploymentOverview) GoString() string { return s.String() } // Represents the input of a deregister on-premises instance operation. type DeregisterOnPremisesInstanceInput struct { _ struct{} `type:"structure"` // The name of the on-premises instance to deregister. // // InstanceName is a required field InstanceName *string `locationName:"instanceName" type:"string" required:"true"` } // String returns the string representation func (s DeregisterOnPremisesInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterOnPremisesInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeregisterOnPremisesInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeregisterOnPremisesInstanceInput"} if s.InstanceName == nil { invalidParams.Add(request.NewErrParamRequired("InstanceName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeregisterOnPremisesInstanceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeregisterOnPremisesInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterOnPremisesInstanceOutput) GoString() string { return s.String() } // Diagnostic information about executable scripts that are part of a deployment. type Diagnostics struct { _ struct{} `type:"structure"` // The associated error code: // // * Success: The specified script ran. // // * ScriptMissing: The specified script was not found in the specified location. // // * ScriptNotExecutable: The specified script is not a recognized executable // file type. // // * ScriptTimedOut: The specified script did not finish running in the specified // time period. // // * ScriptFailed: The specified script failed to run as expected. // // * UnknownError: The specified script did not run for an unknown reason. ErrorCode *string `locationName:"errorCode" type:"string" enum:"LifecycleErrorCode"` // The last portion of the diagnostic log. // // If available, AWS CodeDeploy returns up to the last 4 KB of the diagnostic // log. LogTail *string `locationName:"logTail" type:"string"` // The message associated with the error. Message *string `locationName:"message" type:"string"` // The name of the script. ScriptName *string `locationName:"scriptName" type:"string"` } // String returns the string representation func (s Diagnostics) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Diagnostics) GoString() string { return s.String() } // Information about a tag filter. type EC2TagFilter struct { _ struct{} `type:"structure"` // The tag filter key. Key *string `type:"string"` // The tag filter type: // // * KEY_ONLY: Key only. // // * VALUE_ONLY: Value only. // // * KEY_AND_VALUE: Key and value. Type *string `type:"string" enum:"EC2TagFilterType"` // The tag filter value. Value *string `type:"string"` } // String returns the string representation func (s EC2TagFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EC2TagFilter) GoString() string { return s.String() } // Information about a deployment error. type ErrorInformation struct { _ struct{} `type:"structure"` // The error code: // // * APPLICATION_MISSING: The application was missing. This error code will // most likely be raised if the application is deleted after the deployment // is created but before it is started. // // * DEPLOYMENT_GROUP_MISSING: The deployment group was missing. This error // code will most likely be raised if the deployment group is deleted after // the deployment is created but before it is started. // // * HEALTH_CONSTRAINTS: The deployment failed on too many instances to be // successfully deployed within the instance health constraints specified. // // * HEALTH_CONSTRAINTS_INVALID: The revision cannot be successfully deployed // within the instance health constraints specified. // // * IAM_ROLE_MISSING: The service role cannot be accessed. // // * IAM_ROLE_PERMISSIONS: The service role does not have the correct permissions. // // * INTERNAL_ERROR: There was an internal error. // // * NO_EC2_SUBSCRIPTION: The calling account is not subscribed to the Amazon // EC2 service. // // * NO_INSTANCES: No instance were specified, or no instance can be found. // // * OVER_MAX_INSTANCES: The maximum number of instance was exceeded. // // * THROTTLED: The operation was throttled because the calling account exceeded // the throttling limits of one or more AWS services. // // * TIMEOUT: The deployment has timed out. // // * REVISION_MISSING: The revision ID was missing. This error code will // most likely be raised if the revision is deleted after the deployment // is created but before it is started. Code *string `locationName:"code" type:"string" enum:"ErrorCode"` // An accompanying error message. Message *string `locationName:"message" type:"string"` } // String returns the string representation func (s ErrorInformation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ErrorInformation) GoString() string { return s.String() } // Information about an application revision. type GenericRevisionInfo struct { _ struct{} `type:"structure"` // The deployment groups for which this is the current target revision. DeploymentGroups []*string `locationName:"deploymentGroups" type:"list"` // A comment about the revision. Description *string `locationName:"description" type:"string"` // When the revision was first used by AWS CodeDeploy. FirstUsedTime *time.Time `locationName:"firstUsedTime" type:"timestamp" timestampFormat:"unix"` // When the revision was last used by AWS CodeDeploy. LastUsedTime *time.Time `locationName:"lastUsedTime" type:"timestamp" timestampFormat:"unix"` // When the revision was registered with AWS CodeDeploy. RegisterTime *time.Time `locationName:"registerTime" type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s GenericRevisionInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GenericRevisionInfo) GoString() string { return s.String() } // Represents the input of a get application operation. type GetApplicationInput struct { _ struct{} `type:"structure"` // The name of an AWS CodeDeploy application associated with the applicable // IAM user or AWS account. // // ApplicationName is a required field ApplicationName *string `locationName:"applicationName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetApplicationInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a get application operation. type GetApplicationOutput struct { _ struct{} `type:"structure"` // Information about the application. Application *ApplicationInfo `locationName:"application" type:"structure"` } // String returns the string representation func (s GetApplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetApplicationOutput) GoString() string { return s.String() } // Represents the input of a get application revision operation. type GetApplicationRevisionInput struct { _ struct{} `type:"structure"` // The name of the application that corresponds to the revision. // // ApplicationName is a required field ApplicationName *string `locationName:"applicationName" min:"1" type:"string" required:"true"` // Information about the application revision to get, including type and location. // // Revision is a required field Revision *RevisionLocation `locationName:"revision" type:"structure" required:"true"` } // String returns the string representation func (s GetApplicationRevisionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetApplicationRevisionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetApplicationRevisionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetApplicationRevisionInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.Revision == nil { invalidParams.Add(request.NewErrParamRequired("Revision")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a get application revision operation. type GetApplicationRevisionOutput struct { _ struct{} `type:"structure"` // The name of the application that corresponds to the revision. ApplicationName *string `locationName:"applicationName" min:"1" type:"string"` // Additional information about the revision, including type and location. Revision *RevisionLocation `locationName:"revision" type:"structure"` // General information about the revision. RevisionInfo *GenericRevisionInfo `locationName:"revisionInfo" type:"structure"` } // String returns the string representation func (s GetApplicationRevisionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetApplicationRevisionOutput) GoString() string { return s.String() } // Represents the input of a get deployment configuration operation. type GetDeploymentConfigInput struct { _ struct{} `type:"structure"` // The name of a deployment configuration associated with the applicable IAM // user or AWS account. // // DeploymentConfigName is a required field DeploymentConfigName *string `locationName:"deploymentConfigName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetDeploymentConfigInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDeploymentConfigInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDeploymentConfigInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDeploymentConfigInput"} if s.DeploymentConfigName == nil { invalidParams.Add(request.NewErrParamRequired("DeploymentConfigName")) } if s.DeploymentConfigName != nil && len(*s.DeploymentConfigName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeploymentConfigName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a get deployment configuration operation. type GetDeploymentConfigOutput struct { _ struct{} `type:"structure"` // Information about the deployment configuration. DeploymentConfigInfo *DeploymentConfigInfo `locationName:"deploymentConfigInfo" type:"structure"` } // String returns the string representation func (s GetDeploymentConfigOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDeploymentConfigOutput) GoString() string { return s.String() } // Represents the input of a get deployment group operation. type GetDeploymentGroupInput struct { _ struct{} `type:"structure"` // The name of an AWS CodeDeploy application associated with the applicable // IAM user or AWS account. // // ApplicationName is a required field ApplicationName *string `locationName:"applicationName" min:"1" type:"string" required:"true"` // The name of an existing deployment group for the specified application. // // DeploymentGroupName is a required field DeploymentGroupName *string `locationName:"deploymentGroupName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetDeploymentGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDeploymentGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDeploymentGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDeploymentGroupInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.DeploymentGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DeploymentGroupName")) } if s.DeploymentGroupName != nil && len(*s.DeploymentGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeploymentGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a get deployment group operation. type GetDeploymentGroupOutput struct { _ struct{} `type:"structure"` // Information about the deployment group. DeploymentGroupInfo *DeploymentGroupInfo `locationName:"deploymentGroupInfo" type:"structure"` } // String returns the string representation func (s GetDeploymentGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDeploymentGroupOutput) GoString() string { return s.String() } // Represents the input of a get deployment operation. type GetDeploymentInput struct { _ struct{} `type:"structure"` // A deployment ID associated with the applicable IAM user or AWS account. // // DeploymentId is a required field DeploymentId *string `locationName:"deploymentId" type:"string" required:"true"` } // String returns the string representation func (s GetDeploymentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDeploymentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDeploymentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDeploymentInput"} if s.DeploymentId == nil { invalidParams.Add(request.NewErrParamRequired("DeploymentId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the input of a get deployment instance operation. type GetDeploymentInstanceInput struct { _ struct{} `type:"structure"` // The unique ID of a deployment. // // DeploymentId is a required field DeploymentId *string `locationName:"deploymentId" type:"string" required:"true"` // The unique ID of an instance in the deployment group. // // InstanceId is a required field InstanceId *string `locationName:"instanceId" type:"string" required:"true"` } // String returns the string representation func (s GetDeploymentInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDeploymentInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDeploymentInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDeploymentInstanceInput"} if s.DeploymentId == nil { invalidParams.Add(request.NewErrParamRequired("DeploymentId")) } if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a get deployment instance operation. type GetDeploymentInstanceOutput struct { _ struct{} `type:"structure"` // Information about the instance. InstanceSummary *InstanceSummary `locationName:"instanceSummary" type:"structure"` } // String returns the string representation func (s GetDeploymentInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDeploymentInstanceOutput) GoString() string { return s.String() } // Represents the output of a get deployment operation. type GetDeploymentOutput struct { _ struct{} `type:"structure"` // Information about the deployment. DeploymentInfo *DeploymentInfo `locationName:"deploymentInfo" type:"structure"` } // String returns the string representation func (s GetDeploymentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDeploymentOutput) GoString() string { return s.String() } // Represents the input of a get on-premises instance operation. type GetOnPremisesInstanceInput struct { _ struct{} `type:"structure"` // The name of the on-premises instance about which to get information. // // InstanceName is a required field InstanceName *string `locationName:"instanceName" type:"string" required:"true"` } // String returns the string representation func (s GetOnPremisesInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetOnPremisesInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetOnPremisesInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetOnPremisesInstanceInput"} if s.InstanceName == nil { invalidParams.Add(request.NewErrParamRequired("InstanceName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a get on-premises instance operation. type GetOnPremisesInstanceOutput struct { _ struct{} `type:"structure"` // Information about the on-premises instance. InstanceInfo *InstanceInfo `locationName:"instanceInfo" type:"structure"` } // String returns the string representation func (s GetOnPremisesInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetOnPremisesInstanceOutput) GoString() string { return s.String() } // Information about the location of application artifacts stored in GitHub. type GitHubLocation struct { _ struct{} `type:"structure"` // The SHA1 commit ID of the GitHub commit that represents the bundled artifacts // for the application revision. CommitId *string `locationName:"commitId" type:"string"` // The GitHub account and repository pair that stores a reference to the commit // that represents the bundled artifacts for the application revision. // // Specified as account/repository. Repository *string `locationName:"repository" type:"string"` } // String returns the string representation func (s GitHubLocation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GitHubLocation) GoString() string { return s.String() } // Information about an on-premises instance. type InstanceInfo struct { _ struct{} `type:"structure"` // If the on-premises instance was deregistered, the time at which the on-premises // instance was deregistered. DeregisterTime *time.Time `locationName:"deregisterTime" type:"timestamp" timestampFormat:"unix"` // The IAM user ARN associated with the on-premises instance. IamUserArn *string `locationName:"iamUserArn" type:"string"` // The ARN of the on-premises instance. InstanceArn *string `locationName:"instanceArn" type:"string"` // The name of the on-premises instance. InstanceName *string `locationName:"instanceName" type:"string"` // The time at which the on-premises instance was registered. RegisterTime *time.Time `locationName:"registerTime" type:"timestamp" timestampFormat:"unix"` // The tags currently associated with the on-premises instance. Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation func (s InstanceInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceInfo) GoString() string { return s.String() } // Information about an instance in a deployment. type InstanceSummary struct { _ struct{} `type:"structure"` // The deployment ID. DeploymentId *string `locationName:"deploymentId" type:"string"` // The instance ID. InstanceId *string `locationName:"instanceId" type:"string"` // A timestamp indicating when the instance information was last updated. LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" timestampFormat:"unix"` // A list of lifecycle events for this instance. LifecycleEvents []*LifecycleEvent `locationName:"lifecycleEvents" type:"list"` // The deployment status for this instance: // // * Pending: The deployment is pending for this instance. // // * In Progress: The deployment is in progress for this instance. // // * Succeeded: The deployment has succeeded for this instance. // // * Failed: The deployment has failed for this instance. // // * Skipped: The deployment has been skipped for this instance. // // * Unknown: The deployment status is unknown for this instance. Status *string `locationName:"status" type:"string" enum:"InstanceStatus"` } // String returns the string representation func (s InstanceSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceSummary) GoString() string { return s.String() } // Information about a deployment lifecycle event. type LifecycleEvent struct { _ struct{} `type:"structure"` // Diagnostic information about the deployment lifecycle event. Diagnostics *Diagnostics `locationName:"diagnostics" type:"structure"` // A timestamp indicating when the deployment lifecycle event ended. EndTime *time.Time `locationName:"endTime" type:"timestamp" timestampFormat:"unix"` // The deployment lifecycle event name, such as ApplicationStop, BeforeInstall, // AfterInstall, ApplicationStart, or ValidateService. LifecycleEventName *string `locationName:"lifecycleEventName" type:"string"` // A timestamp indicating when the deployment lifecycle event started. StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"unix"` // The deployment lifecycle event status: // // * Pending: The deployment lifecycle event is pending. // // * InProgress: The deployment lifecycle event is in progress. // // * Succeeded: The deployment lifecycle event ran successfully. // // * Failed: The deployment lifecycle event has failed. // // * Skipped: The deployment lifecycle event has been skipped. // // * Unknown: The deployment lifecycle event is unknown. Status *string `locationName:"status" type:"string" enum:"LifecycleEventStatus"` } // String returns the string representation func (s LifecycleEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LifecycleEvent) GoString() string { return s.String() } // Represents the input of a list application revisions operation. type ListApplicationRevisionsInput struct { _ struct{} `type:"structure"` // The name of an AWS CodeDeploy application associated with the applicable // IAM user or AWS account. // // ApplicationName is a required field ApplicationName *string `locationName:"applicationName" min:"1" type:"string" required:"true"` // Whether to list revisions based on whether the revision is the target revision // of an deployment group: // // * include: List revisions that are target revisions of a deployment group. // // * exclude: Do not list revisions that are target revisions of a deployment // group. // // * ignore: List all revisions. Deployed *string `locationName:"deployed" type:"string" enum:"ListStateFilterAction"` // An identifier returned from the previous list application revisions call. // It can be used to return the next set of applications in the list. NextToken *string `locationName:"nextToken" type:"string"` // An Amazon S3 bucket name to limit the search for revisions. // // If set to null, all of the user's buckets will be searched. S3Bucket *string `locationName:"s3Bucket" type:"string"` // A key prefix for the set of Amazon S3 objects to limit the search for revisions. S3KeyPrefix *string `locationName:"s3KeyPrefix" type:"string"` // The column name to use to sort the list results: // // * registerTime: Sort by the time the revisions were registered with AWS // CodeDeploy. // // * firstUsedTime: Sort by the time the revisions were first used in a deployment. // // * lastUsedTime: Sort by the time the revisions were last used in a deployment. // // If not specified or set to null, the results will be returned in an arbitrary // order. SortBy *string `locationName:"sortBy" type:"string" enum:"ApplicationRevisionSortBy"` // The order in which to sort the list results: // // * ascending: ascending order. // // * descending: descending order. // // If not specified, the results will be sorted in ascending order. // // If set to null, the results will be sorted in an arbitrary order. SortOrder *string `locationName:"sortOrder" type:"string" enum:"SortOrder"` } // String returns the string representation func (s ListApplicationRevisionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListApplicationRevisionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListApplicationRevisionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListApplicationRevisionsInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a list application revisions operation. type ListApplicationRevisionsOutput struct { _ struct{} `type:"structure"` // If a large amount of information is returned, an identifier will also be // returned. It can be used in a subsequent list application revisions call // to return the next set of application revisions in the list. NextToken *string `locationName:"nextToken" type:"string"` // A list of locations that contain the matching revisions. Revisions []*RevisionLocation `locationName:"revisions" type:"list"` } // String returns the string representation func (s ListApplicationRevisionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListApplicationRevisionsOutput) GoString() string { return s.String() } // Represents the input of a list applications operation. type ListApplicationsInput struct { _ struct{} `type:"structure"` // An identifier returned from the previous list applications call. It can be // used to return the next set of applications in the list. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListApplicationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListApplicationsInput) GoString() string { return s.String() } // Represents the output of a list applications operation. type ListApplicationsOutput struct { _ struct{} `type:"structure"` // A list of application names. Applications []*string `locationName:"applications" type:"list"` // If a large amount of information is returned, an identifier is also returned. // It can be used in a subsequent list applications call to return the next // set of applications, will also be returned. in the list. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListApplicationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListApplicationsOutput) GoString() string { return s.String() } // Represents the input of a list deployment configurations operation. type ListDeploymentConfigsInput struct { _ struct{} `type:"structure"` // An identifier returned from the previous list deployment configurations call. // It can be used to return the next set of deployment configurations in the // list. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListDeploymentConfigsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDeploymentConfigsInput) GoString() string { return s.String() } // Represents the output of a list deployment configurations operation. type ListDeploymentConfigsOutput struct { _ struct{} `type:"structure"` // A list of deployment configurations, including built-in configurations such // as CodeDeployDefault.OneAtATime. DeploymentConfigsList []*string `locationName:"deploymentConfigsList" type:"list"` // If a large amount of information is returned, an identifier is also returned. // It can be used in a subsequent list deployment configurations call to return // the next set of deployment configurations in the list. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListDeploymentConfigsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDeploymentConfigsOutput) GoString() string { return s.String() } // Represents the input of a list deployment groups operation. type ListDeploymentGroupsInput struct { _ struct{} `type:"structure"` // The name of an AWS CodeDeploy application associated with the applicable // IAM user or AWS account. // // ApplicationName is a required field ApplicationName *string `locationName:"applicationName" min:"1" type:"string" required:"true"` // An identifier returned from the previous list deployment groups call. It // can be used to return the next set of deployment groups in the list. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListDeploymentGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDeploymentGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListDeploymentGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListDeploymentGroupsInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a list deployment groups operation. type ListDeploymentGroupsOutput struct { _ struct{} `type:"structure"` // The application name. ApplicationName *string `locationName:"applicationName" min:"1" type:"string"` // A list of corresponding deployment group names. DeploymentGroups []*string `locationName:"deploymentGroups" type:"list"` // If a large amount of information is returned, an identifier is also returned. // It can be used in a subsequent list deployment groups call to return the // next set of deployment groups in the list. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListDeploymentGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDeploymentGroupsOutput) GoString() string { return s.String() } // Represents the input of a list deployment instances operation. type ListDeploymentInstancesInput struct { _ struct{} `type:"structure"` // The unique ID of a deployment. // // DeploymentId is a required field DeploymentId *string `locationName:"deploymentId" type:"string" required:"true"` // A subset of instances to list by status: // // * Pending: Include those instance with pending deployments. // // * InProgress: Include those instance where deployments are still in progress. // // * Succeeded: Include those instances with successful deployments. // // * Failed: Include those instance with failed deployments. // // * Skipped: Include those instance with skipped deployments. // // * Unknown: Include those instance with deployments in an unknown state. InstanceStatusFilter []*string `locationName:"instanceStatusFilter" type:"list"` // An identifier returned from the previous list deployment instances call. // It can be used to return the next set of deployment instances in the list. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListDeploymentInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDeploymentInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListDeploymentInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListDeploymentInstancesInput"} if s.DeploymentId == nil { invalidParams.Add(request.NewErrParamRequired("DeploymentId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a list deployment instances operation. type ListDeploymentInstancesOutput struct { _ struct{} `type:"structure"` // A list of instance IDs. InstancesList []*string `locationName:"instancesList" type:"list"` // If a large amount of information is returned, an identifier is also returned. // It can be used in a subsequent list deployment instances call to return the // next set of deployment instances in the list. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListDeploymentInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDeploymentInstancesOutput) GoString() string { return s.String() } // Represents the input of a list deployments operation. type ListDeploymentsInput struct { _ struct{} `type:"structure"` // The name of an AWS CodeDeploy application associated with the applicable // IAM user or AWS account. ApplicationName *string `locationName:"applicationName" min:"1" type:"string"` // A time range (start and end) for returning a subset of the list of deployments. CreateTimeRange *TimeRange `locationName:"createTimeRange" type:"structure"` // The name of an existing deployment group for the specified application. DeploymentGroupName *string `locationName:"deploymentGroupName" min:"1" type:"string"` // A subset of deployments to list by status: // // * Created: Include created deployments in the resulting list. // // * Queued: Include queued deployments in the resulting list. // // * In Progress: Include in-progress deployments in the resulting list. // // * Succeeded: Include successful deployments in the resulting list. // // * Failed: Include failed deployments in the resulting list. // // * Stopped: Include stopped deployments in the resulting list. IncludeOnlyStatuses []*string `locationName:"includeOnlyStatuses" type:"list"` // An identifier returned from the previous list deployments call. It can be // used to return the next set of deployments in the list. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListDeploymentsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDeploymentsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListDeploymentsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListDeploymentsInput"} if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.DeploymentGroupName != nil && len(*s.DeploymentGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeploymentGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a list deployments operation. type ListDeploymentsOutput struct { _ struct{} `type:"structure"` // A list of deployment IDs. Deployments []*string `locationName:"deployments" type:"list"` // If a large amount of information is returned, an identifier is also returned. // It can be used in a subsequent list deployments call to return the next set // of deployments in the list. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListDeploymentsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDeploymentsOutput) GoString() string { return s.String() } // Represents the input of a list on-premises instances operation. type ListOnPremisesInstancesInput struct { _ struct{} `type:"structure"` // An identifier returned from the previous list on-premises instances call. // It can be used to return the next set of on-premises instances in the list. NextToken *string `locationName:"nextToken" type:"string"` // The registration status of the on-premises instances: // // * Deregistered: Include deregistered on-premises instances in the resulting // list. // // * Registered: Include registered on-premises instances in the resulting // list. RegistrationStatus *string `locationName:"registrationStatus" type:"string" enum:"RegistrationStatus"` // The on-premises instance tags that will be used to restrict the corresponding // on-premises instance names returned. TagFilters []*TagFilter `locationName:"tagFilters" type:"list"` } // String returns the string representation func (s ListOnPremisesInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListOnPremisesInstancesInput) GoString() string { return s.String() } // Represents the output of list on-premises instances operation. type ListOnPremisesInstancesOutput struct { _ struct{} `type:"structure"` // The list of matching on-premises instance names. InstanceNames []*string `locationName:"instanceNames" type:"list"` // If a large amount of information is returned, an identifier is also returned. // It can be used in a subsequent list on-premises instances call to return // the next set of on-premises instances in the list. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListOnPremisesInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListOnPremisesInstancesOutput) GoString() string { return s.String() } // Information about minimum healthy instance. type MinimumHealthyHosts struct { _ struct{} `type:"structure"` // The minimum healthy instance type: // // * HOST_COUNT: The minimum number of healthy instance as an absolute value. // // * FLEET_PERCENT: The minimum number of healthy instance as a percentage // of the total number of instance in the deployment. // // In an example of nine instance, if a HOST_COUNT of six is specified, deploy // to up to three instances at a time. The deployment will be successful if // six or more instances are deployed to successfully; otherwise, the deployment // fails. If a FLEET_PERCENT of 40 is specified, deploy to up to five instance // at a time. The deployment will be successful if four or more instance are // deployed to successfully; otherwise, the deployment fails. // // In a call to the get deployment configuration operation, CodeDeployDefault.OneAtATime // will return a minimum healthy instance type of MOST_CONCURRENCY and a value // of 1. This means a deployment to only one instance at a time. (You cannot // set the type to MOST_CONCURRENCY, only to HOST_COUNT or FLEET_PERCENT.) In // addition, with CodeDeployDefault.OneAtATime, AWS CodeDeploy will try to ensure // that all instances but one are kept in a healthy state during the deployment. // Although this allows one instance at a time to be taken offline for a new // deployment, it also means that if the deployment to the last instance fails, // the overall deployment still succeeds. Type *string `locationName:"type" type:"string" enum:"MinimumHealthyHostsType"` // The minimum healthy instance value. Value *int64 `locationName:"value" type:"integer"` } // String returns the string representation func (s MinimumHealthyHosts) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MinimumHealthyHosts) GoString() string { return s.String() } // Represents the input of a register application revision operation. type RegisterApplicationRevisionInput struct { _ struct{} `type:"structure"` // The name of an AWS CodeDeploy application associated with the applicable // IAM user or AWS account. // // ApplicationName is a required field ApplicationName *string `locationName:"applicationName" min:"1" type:"string" required:"true"` // A comment about the revision. Description *string `locationName:"description" type:"string"` // Information about the application revision to register, including type and // location. // // Revision is a required field Revision *RevisionLocation `locationName:"revision" type:"structure" required:"true"` } // String returns the string representation func (s RegisterApplicationRevisionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterApplicationRevisionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterApplicationRevisionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterApplicationRevisionInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.Revision == nil { invalidParams.Add(request.NewErrParamRequired("Revision")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RegisterApplicationRevisionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RegisterApplicationRevisionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterApplicationRevisionOutput) GoString() string { return s.String() } // Represents the input of the register on-premises instance operation. type RegisterOnPremisesInstanceInput struct { _ struct{} `type:"structure"` // The ARN of the IAM user to associate with the on-premises instance. // // IamUserArn is a required field IamUserArn *string `locationName:"iamUserArn" type:"string" required:"true"` // The name of the on-premises instance to register. // // InstanceName is a required field InstanceName *string `locationName:"instanceName" type:"string" required:"true"` } // String returns the string representation func (s RegisterOnPremisesInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterOnPremisesInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterOnPremisesInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterOnPremisesInstanceInput"} if s.IamUserArn == nil { invalidParams.Add(request.NewErrParamRequired("IamUserArn")) } if s.InstanceName == nil { invalidParams.Add(request.NewErrParamRequired("InstanceName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RegisterOnPremisesInstanceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RegisterOnPremisesInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterOnPremisesInstanceOutput) GoString() string { return s.String() } // Represents the input of a remove tags from on-premises instances operation. type RemoveTagsFromOnPremisesInstancesInput struct { _ struct{} `type:"structure"` // The names of the on-premises instances from which to remove tags. // // InstanceNames is a required field InstanceNames []*string `locationName:"instanceNames" type:"list" required:"true"` // The tag key-value pairs to remove from the on-premises instances. // // Tags is a required field Tags []*Tag `locationName:"tags" type:"list" required:"true"` } // String returns the string representation func (s RemoveTagsFromOnPremisesInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromOnPremisesInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTagsFromOnPremisesInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTagsFromOnPremisesInstancesInput"} if s.InstanceNames == nil { invalidParams.Add(request.NewErrParamRequired("InstanceNames")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemoveTagsFromOnPremisesInstancesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveTagsFromOnPremisesInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromOnPremisesInstancesOutput) GoString() string { return s.String() } // Information about an application revision. type RevisionInfo struct { _ struct{} `type:"structure"` // Information about an application revision. GenericRevisionInfo *GenericRevisionInfo `locationName:"genericRevisionInfo" type:"structure"` // Information about the location of an application revision. RevisionLocation *RevisionLocation `locationName:"revisionLocation" type:"structure"` } // String returns the string representation func (s RevisionInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RevisionInfo) GoString() string { return s.String() } // Information about the location of an application revision. type RevisionLocation struct { _ struct{} `type:"structure"` // Information about the location of application artifacts stored in GitHub. GitHubLocation *GitHubLocation `locationName:"gitHubLocation" type:"structure"` // The type of application revision: // // * S3: An application revision stored in Amazon S3. // // * GitHub: An application revision stored in GitHub. RevisionType *string `locationName:"revisionType" type:"string" enum:"RevisionLocationType"` // Information about the location of application artifacts stored in Amazon // S3. S3Location *S3Location `locationName:"s3Location" type:"structure"` } // String returns the string representation func (s RevisionLocation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RevisionLocation) GoString() string { return s.String() } // Information about a deployment rollback. type RollbackInfo struct { _ struct{} `type:"structure"` // The ID of the deployment rollback. RollbackDeploymentId *string `locationName:"rollbackDeploymentId" type:"string"` // Information describing the status of a deployment rollback; for example, // whether the deployment can't be rolled back, is in progress, failed, or succeeded. RollbackMessage *string `locationName:"rollbackMessage" type:"string"` // The deployment ID of the deployment that was underway and triggered a rollback // deployment because it failed or was stopped. RollbackTriggeringDeploymentId *string `locationName:"rollbackTriggeringDeploymentId" type:"string"` } // String returns the string representation func (s RollbackInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RollbackInfo) GoString() string { return s.String() } // Information about the location of application artifacts stored in Amazon // S3. type S3Location struct { _ struct{} `type:"structure"` // The name of the Amazon S3 bucket where the application revision is stored. Bucket *string `locationName:"bucket" type:"string"` // The file type of the application revision. Must be one of the following: // // * tar: A tar archive file. // // * tgz: A compressed tar archive file. // // * zip: A zip archive file. BundleType *string `locationName:"bundleType" type:"string" enum:"BundleType"` // The ETag of the Amazon S3 object that represents the bundled artifacts for // the application revision. // // If the ETag is not specified as an input parameter, ETag validation of the // object will be skipped. ETag *string `locationName:"eTag" type:"string"` // The name of the Amazon S3 object that represents the bundled artifacts for // the application revision. Key *string `locationName:"key" type:"string"` // A specific version of the Amazon S3 object that represents the bundled artifacts // for the application revision. // // If the version is not specified, the system will use the most recent version // by default. Version *string `locationName:"version" type:"string"` } // String returns the string representation func (s S3Location) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s S3Location) GoString() string { return s.String() } // Represents the input of a stop deployment operation. type StopDeploymentInput struct { _ struct{} `type:"structure"` // Indicates, when a deployment is stopped, whether instances that have been // updated should be rolled back to the previous version of the application // revision. AutoRollbackEnabled *bool `locationName:"autoRollbackEnabled" type:"boolean"` // The unique ID of a deployment. // // DeploymentId is a required field DeploymentId *string `locationName:"deploymentId" type:"string" required:"true"` } // String returns the string representation func (s StopDeploymentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopDeploymentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StopDeploymentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StopDeploymentInput"} if s.DeploymentId == nil { invalidParams.Add(request.NewErrParamRequired("DeploymentId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a stop deployment operation. type StopDeploymentOutput struct { _ struct{} `type:"structure"` // The status of the stop deployment operation: // // * Pending: The stop operation is pending. // // * Succeeded: The stop operation was successful. Status *string `locationName:"status" type:"string" enum:"StopStatus"` // An accompanying status message. StatusMessage *string `locationName:"statusMessage" type:"string"` } // String returns the string representation func (s StopDeploymentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopDeploymentOutput) GoString() string { return s.String() } // Information about a tag. type Tag struct { _ struct{} `type:"structure"` // The tag's key. Key *string `type:"string"` // The tag's value. Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Information about an on-premises instance tag filter. type TagFilter struct { _ struct{} `type:"structure"` // The on-premises instance tag filter key. Key *string `type:"string"` // The on-premises instance tag filter type: // // * KEY_ONLY: Key only. // // * VALUE_ONLY: Value only. // // * KEY_AND_VALUE: Key and value. Type *string `type:"string" enum:"TagFilterType"` // The on-premises instance tag filter value. Value *string `type:"string"` } // String returns the string representation func (s TagFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TagFilter) GoString() string { return s.String() } // Information about a time range. type TimeRange struct { _ struct{} `type:"structure"` // The end time of the time range. // // Specify null to leave the end time open-ended. End *time.Time `locationName:"end" type:"timestamp" timestampFormat:"unix"` // The start time of the time range. // // Specify null to leave the start time open-ended. Start *time.Time `locationName:"start" type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s TimeRange) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TimeRange) GoString() string { return s.String() } // Information about notification triggers for the deployment group. type TriggerConfig struct { _ struct{} `type:"structure"` // The event type or types for which notifications are triggered. TriggerEvents []*string `locationName:"triggerEvents" type:"list"` // The name of the notification trigger. TriggerName *string `locationName:"triggerName" type:"string"` // The ARN of the Amazon Simple Notification Service topic through which notifications // about deployment or instance events are sent. TriggerTargetArn *string `locationName:"triggerTargetArn" type:"string"` } // String returns the string representation func (s TriggerConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TriggerConfig) GoString() string { return s.String() } // Represents the input of an update application operation. type UpdateApplicationInput struct { _ struct{} `type:"structure"` // The current name of the application you want to change. ApplicationName *string `locationName:"applicationName" min:"1" type:"string"` // The new name to give the application. NewApplicationName *string `locationName:"newApplicationName" min:"1" type:"string"` } // String returns the string representation func (s UpdateApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationInput"} if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.NewApplicationName != nil && len(*s.NewApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("NewApplicationName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateApplicationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateApplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateApplicationOutput) GoString() string { return s.String() } // Represents the input of an update deployment group operation. type UpdateDeploymentGroupInput struct { _ struct{} `type:"structure"` // Information to add or change about Amazon CloudWatch alarms when the deployment // group is updated. AlarmConfiguration *AlarmConfiguration `locationName:"alarmConfiguration" type:"structure"` // The application name corresponding to the deployment group to update. // // ApplicationName is a required field ApplicationName *string `locationName:"applicationName" min:"1" type:"string" required:"true"` // Information for an automatic rollback configuration that is added or changed // when a deployment group is updated. AutoRollbackConfiguration *AutoRollbackConfiguration `locationName:"autoRollbackConfiguration" type:"structure"` // The replacement list of Auto Scaling groups to be included in the deployment // group, if you want to change them. To keep the Auto Scaling groups, enter // their names. To remove Auto Scaling groups, do not enter any Auto Scaling // group names. AutoScalingGroups []*string `locationName:"autoScalingGroups" type:"list"` // The current name of the deployment group. // // CurrentDeploymentGroupName is a required field CurrentDeploymentGroupName *string `locationName:"currentDeploymentGroupName" min:"1" type:"string" required:"true"` // The replacement deployment configuration name to use, if you want to change // it. DeploymentConfigName *string `locationName:"deploymentConfigName" min:"1" type:"string"` // The replacement set of Amazon EC2 tags on which to filter, if you want to // change them. To keep the existing tags, enter their names. To remove tags, // do not enter any tag names. Ec2TagFilters []*EC2TagFilter `locationName:"ec2TagFilters" type:"list"` // The new name of the deployment group, if you want to change it. NewDeploymentGroupName *string `locationName:"newDeploymentGroupName" min:"1" type:"string"` // The replacement set of on-premises instance tags on which to filter, if you // want to change them. To keep the existing tags, enter their names. To remove // tags, do not enter any tag names. OnPremisesInstanceTagFilters []*TagFilter `locationName:"onPremisesInstanceTagFilters" type:"list"` // A replacement ARN for the service role, if you want to change it. ServiceRoleArn *string `locationName:"serviceRoleArn" type:"string"` // Information about triggers to change when the deployment group is updated. // For examples, see Modify Triggers in an AWS CodeDeploy Deployment Group (http://docs.aws.amazon.com/codedeploy/latest/userguide/how-to-notify-edit.html) // in the AWS CodeDeploy User Guide. TriggerConfigurations []*TriggerConfig `locationName:"triggerConfigurations" type:"list"` } // String returns the string representation func (s UpdateDeploymentGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDeploymentGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateDeploymentGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateDeploymentGroupInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.CurrentDeploymentGroupName == nil { invalidParams.Add(request.NewErrParamRequired("CurrentDeploymentGroupName")) } if s.CurrentDeploymentGroupName != nil && len(*s.CurrentDeploymentGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("CurrentDeploymentGroupName", 1)) } if s.DeploymentConfigName != nil && len(*s.DeploymentConfigName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeploymentConfigName", 1)) } if s.NewDeploymentGroupName != nil && len(*s.NewDeploymentGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("NewDeploymentGroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of an update deployment group operation. type UpdateDeploymentGroupOutput struct { _ struct{} `type:"structure"` // If the output contains no data, and the corresponding deployment group contained // at least one Auto Scaling group, AWS CodeDeploy successfully removed all // corresponding Auto Scaling lifecycle event hooks from the AWS account. If // the output contains data, AWS CodeDeploy could not remove some Auto Scaling // lifecycle event hooks from the AWS account. HooksNotCleanedUp []*AutoScalingGroup `locationName:"hooksNotCleanedUp" type:"list"` } // String returns the string representation func (s UpdateDeploymentGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDeploymentGroupOutput) GoString() string { return s.String() } const ( // ApplicationRevisionSortByRegisterTime is a ApplicationRevisionSortBy enum value ApplicationRevisionSortByRegisterTime = "registerTime" // ApplicationRevisionSortByFirstUsedTime is a ApplicationRevisionSortBy enum value ApplicationRevisionSortByFirstUsedTime = "firstUsedTime" // ApplicationRevisionSortByLastUsedTime is a ApplicationRevisionSortBy enum value ApplicationRevisionSortByLastUsedTime = "lastUsedTime" ) const ( // AutoRollbackEventDeploymentFailure is a AutoRollbackEvent enum value AutoRollbackEventDeploymentFailure = "DEPLOYMENT_FAILURE" // AutoRollbackEventDeploymentStopOnAlarm is a AutoRollbackEvent enum value AutoRollbackEventDeploymentStopOnAlarm = "DEPLOYMENT_STOP_ON_ALARM" // AutoRollbackEventDeploymentStopOnRequest is a AutoRollbackEvent enum value AutoRollbackEventDeploymentStopOnRequest = "DEPLOYMENT_STOP_ON_REQUEST" ) const ( // BundleTypeTar is a BundleType enum value BundleTypeTar = "tar" // BundleTypeTgz is a BundleType enum value BundleTypeTgz = "tgz" // BundleTypeZip is a BundleType enum value BundleTypeZip = "zip" ) const ( // DeploymentCreatorUser is a DeploymentCreator enum value DeploymentCreatorUser = "user" // DeploymentCreatorAutoscaling is a DeploymentCreator enum value DeploymentCreatorAutoscaling = "autoscaling" // DeploymentCreatorCodeDeployRollback is a DeploymentCreator enum value DeploymentCreatorCodeDeployRollback = "codeDeployRollback" ) const ( // DeploymentStatusCreated is a DeploymentStatus enum value DeploymentStatusCreated = "Created" // DeploymentStatusQueued is a DeploymentStatus enum value DeploymentStatusQueued = "Queued" // DeploymentStatusInProgress is a DeploymentStatus enum value DeploymentStatusInProgress = "InProgress" // DeploymentStatusSucceeded is a DeploymentStatus enum value DeploymentStatusSucceeded = "Succeeded" // DeploymentStatusFailed is a DeploymentStatus enum value DeploymentStatusFailed = "Failed" // DeploymentStatusStopped is a DeploymentStatus enum value DeploymentStatusStopped = "Stopped" ) const ( // EC2TagFilterTypeKeyOnly is a EC2TagFilterType enum value EC2TagFilterTypeKeyOnly = "KEY_ONLY" // EC2TagFilterTypeValueOnly is a EC2TagFilterType enum value EC2TagFilterTypeValueOnly = "VALUE_ONLY" // EC2TagFilterTypeKeyAndValue is a EC2TagFilterType enum value EC2TagFilterTypeKeyAndValue = "KEY_AND_VALUE" ) const ( // ErrorCodeDeploymentGroupMissing is a ErrorCode enum value ErrorCodeDeploymentGroupMissing = "DEPLOYMENT_GROUP_MISSING" // ErrorCodeApplicationMissing is a ErrorCode enum value ErrorCodeApplicationMissing = "APPLICATION_MISSING" // ErrorCodeRevisionMissing is a ErrorCode enum value ErrorCodeRevisionMissing = "REVISION_MISSING" // ErrorCodeIamRoleMissing is a ErrorCode enum value ErrorCodeIamRoleMissing = "IAM_ROLE_MISSING" // ErrorCodeIamRolePermissions is a ErrorCode enum value ErrorCodeIamRolePermissions = "IAM_ROLE_PERMISSIONS" // ErrorCodeNoEc2Subscription is a ErrorCode enum value ErrorCodeNoEc2Subscription = "NO_EC2_SUBSCRIPTION" // ErrorCodeOverMaxInstances is a ErrorCode enum value ErrorCodeOverMaxInstances = "OVER_MAX_INSTANCES" // ErrorCodeNoInstances is a ErrorCode enum value ErrorCodeNoInstances = "NO_INSTANCES" // ErrorCodeTimeout is a ErrorCode enum value ErrorCodeTimeout = "TIMEOUT" // ErrorCodeHealthConstraintsInvalid is a ErrorCode enum value ErrorCodeHealthConstraintsInvalid = "HEALTH_CONSTRAINTS_INVALID" // ErrorCodeHealthConstraints is a ErrorCode enum value ErrorCodeHealthConstraints = "HEALTH_CONSTRAINTS" // ErrorCodeInternalError is a ErrorCode enum value ErrorCodeInternalError = "INTERNAL_ERROR" // ErrorCodeThrottled is a ErrorCode enum value ErrorCodeThrottled = "THROTTLED" // ErrorCodeAlarmActive is a ErrorCode enum value ErrorCodeAlarmActive = "ALARM_ACTIVE" // ErrorCodeAgentIssue is a ErrorCode enum value ErrorCodeAgentIssue = "AGENT_ISSUE" // ErrorCodeAutoScalingIamRolePermissions is a ErrorCode enum value ErrorCodeAutoScalingIamRolePermissions = "AUTO_SCALING_IAM_ROLE_PERMISSIONS" // ErrorCodeAutoScalingConfiguration is a ErrorCode enum value ErrorCodeAutoScalingConfiguration = "AUTO_SCALING_CONFIGURATION" // ErrorCodeManualStop is a ErrorCode enum value ErrorCodeManualStop = "MANUAL_STOP" ) const ( // InstanceStatusPending is a InstanceStatus enum value InstanceStatusPending = "Pending" // InstanceStatusInProgress is a InstanceStatus enum value InstanceStatusInProgress = "InProgress" // InstanceStatusSucceeded is a InstanceStatus enum value InstanceStatusSucceeded = "Succeeded" // InstanceStatusFailed is a InstanceStatus enum value InstanceStatusFailed = "Failed" // InstanceStatusSkipped is a InstanceStatus enum value InstanceStatusSkipped = "Skipped" // InstanceStatusUnknown is a InstanceStatus enum value InstanceStatusUnknown = "Unknown" ) const ( // LifecycleErrorCodeSuccess is a LifecycleErrorCode enum value LifecycleErrorCodeSuccess = "Success" // LifecycleErrorCodeScriptMissing is a LifecycleErrorCode enum value LifecycleErrorCodeScriptMissing = "ScriptMissing" // LifecycleErrorCodeScriptNotExecutable is a LifecycleErrorCode enum value LifecycleErrorCodeScriptNotExecutable = "ScriptNotExecutable" // LifecycleErrorCodeScriptTimedOut is a LifecycleErrorCode enum value LifecycleErrorCodeScriptTimedOut = "ScriptTimedOut" // LifecycleErrorCodeScriptFailed is a LifecycleErrorCode enum value LifecycleErrorCodeScriptFailed = "ScriptFailed" // LifecycleErrorCodeUnknownError is a LifecycleErrorCode enum value LifecycleErrorCodeUnknownError = "UnknownError" ) const ( // LifecycleEventStatusPending is a LifecycleEventStatus enum value LifecycleEventStatusPending = "Pending" // LifecycleEventStatusInProgress is a LifecycleEventStatus enum value LifecycleEventStatusInProgress = "InProgress" // LifecycleEventStatusSucceeded is a LifecycleEventStatus enum value LifecycleEventStatusSucceeded = "Succeeded" // LifecycleEventStatusFailed is a LifecycleEventStatus enum value LifecycleEventStatusFailed = "Failed" // LifecycleEventStatusSkipped is a LifecycleEventStatus enum value LifecycleEventStatusSkipped = "Skipped" // LifecycleEventStatusUnknown is a LifecycleEventStatus enum value LifecycleEventStatusUnknown = "Unknown" ) const ( // ListStateFilterActionInclude is a ListStateFilterAction enum value ListStateFilterActionInclude = "include" // ListStateFilterActionExclude is a ListStateFilterAction enum value ListStateFilterActionExclude = "exclude" // ListStateFilterActionIgnore is a ListStateFilterAction enum value ListStateFilterActionIgnore = "ignore" ) const ( // MinimumHealthyHostsTypeHostCount is a MinimumHealthyHostsType enum value MinimumHealthyHostsTypeHostCount = "HOST_COUNT" // MinimumHealthyHostsTypeFleetPercent is a MinimumHealthyHostsType enum value MinimumHealthyHostsTypeFleetPercent = "FLEET_PERCENT" ) const ( // RegistrationStatusRegistered is a RegistrationStatus enum value RegistrationStatusRegistered = "Registered" // RegistrationStatusDeregistered is a RegistrationStatus enum value RegistrationStatusDeregistered = "Deregistered" ) const ( // RevisionLocationTypeS3 is a RevisionLocationType enum value RevisionLocationTypeS3 = "S3" // RevisionLocationTypeGitHub is a RevisionLocationType enum value RevisionLocationTypeGitHub = "GitHub" ) const ( // SortOrderAscending is a SortOrder enum value SortOrderAscending = "ascending" // SortOrderDescending is a SortOrder enum value SortOrderDescending = "descending" ) const ( // StopStatusPending is a StopStatus enum value StopStatusPending = "Pending" // StopStatusSucceeded is a StopStatus enum value StopStatusSucceeded = "Succeeded" ) const ( // TagFilterTypeKeyOnly is a TagFilterType enum value TagFilterTypeKeyOnly = "KEY_ONLY" // TagFilterTypeValueOnly is a TagFilterType enum value TagFilterTypeValueOnly = "VALUE_ONLY" // TagFilterTypeKeyAndValue is a TagFilterType enum value TagFilterTypeKeyAndValue = "KEY_AND_VALUE" ) const ( // TriggerEventTypeDeploymentStart is a TriggerEventType enum value TriggerEventTypeDeploymentStart = "DeploymentStart" // TriggerEventTypeDeploymentSuccess is a TriggerEventType enum value TriggerEventTypeDeploymentSuccess = "DeploymentSuccess" // TriggerEventTypeDeploymentFailure is a TriggerEventType enum value TriggerEventTypeDeploymentFailure = "DeploymentFailure" // TriggerEventTypeDeploymentStop is a TriggerEventType enum value TriggerEventTypeDeploymentStop = "DeploymentStop" // TriggerEventTypeDeploymentRollback is a TriggerEventType enum value TriggerEventTypeDeploymentRollback = "DeploymentRollback" // TriggerEventTypeInstanceStart is a TriggerEventType enum value TriggerEventTypeInstanceStart = "InstanceStart" // TriggerEventTypeInstanceSuccess is a TriggerEventType enum value TriggerEventTypeInstanceSuccess = "InstanceSuccess" // TriggerEventTypeInstanceFailure is a TriggerEventType enum value TriggerEventTypeInstanceFailure = "InstanceFailure" ) aws-sdk-go-1.4.22/service/codedeploy/codedeployiface/000077500000000000000000000000001300374646400224715ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/codedeploy/codedeployiface/interface.go000066400000000000000000000267131300374646400247710ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package codedeployiface provides an interface to enable mocking the AWS CodeDeploy service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package codedeployiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/codedeploy" ) // CodeDeployAPI provides an interface to enable mocking the // codedeploy.CodeDeploy service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS CodeDeploy. // func myFunc(svc codedeployiface.CodeDeployAPI) bool { // // Make svc.AddTagsToOnPremisesInstances request // } // // func main() { // sess := session.New() // svc := codedeploy.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockCodeDeployClient struct { // codedeployiface.CodeDeployAPI // } // func (m *mockCodeDeployClient) AddTagsToOnPremisesInstances(input *codedeploy.AddTagsToOnPremisesInstancesInput) (*codedeploy.AddTagsToOnPremisesInstancesOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockCodeDeployClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type CodeDeployAPI interface { AddTagsToOnPremisesInstancesRequest(*codedeploy.AddTagsToOnPremisesInstancesInput) (*request.Request, *codedeploy.AddTagsToOnPremisesInstancesOutput) AddTagsToOnPremisesInstances(*codedeploy.AddTagsToOnPremisesInstancesInput) (*codedeploy.AddTagsToOnPremisesInstancesOutput, error) BatchGetApplicationRevisionsRequest(*codedeploy.BatchGetApplicationRevisionsInput) (*request.Request, *codedeploy.BatchGetApplicationRevisionsOutput) BatchGetApplicationRevisions(*codedeploy.BatchGetApplicationRevisionsInput) (*codedeploy.BatchGetApplicationRevisionsOutput, error) BatchGetApplicationsRequest(*codedeploy.BatchGetApplicationsInput) (*request.Request, *codedeploy.BatchGetApplicationsOutput) BatchGetApplications(*codedeploy.BatchGetApplicationsInput) (*codedeploy.BatchGetApplicationsOutput, error) BatchGetDeploymentGroupsRequest(*codedeploy.BatchGetDeploymentGroupsInput) (*request.Request, *codedeploy.BatchGetDeploymentGroupsOutput) BatchGetDeploymentGroups(*codedeploy.BatchGetDeploymentGroupsInput) (*codedeploy.BatchGetDeploymentGroupsOutput, error) BatchGetDeploymentInstancesRequest(*codedeploy.BatchGetDeploymentInstancesInput) (*request.Request, *codedeploy.BatchGetDeploymentInstancesOutput) BatchGetDeploymentInstances(*codedeploy.BatchGetDeploymentInstancesInput) (*codedeploy.BatchGetDeploymentInstancesOutput, error) BatchGetDeploymentsRequest(*codedeploy.BatchGetDeploymentsInput) (*request.Request, *codedeploy.BatchGetDeploymentsOutput) BatchGetDeployments(*codedeploy.BatchGetDeploymentsInput) (*codedeploy.BatchGetDeploymentsOutput, error) BatchGetOnPremisesInstancesRequest(*codedeploy.BatchGetOnPremisesInstancesInput) (*request.Request, *codedeploy.BatchGetOnPremisesInstancesOutput) BatchGetOnPremisesInstances(*codedeploy.BatchGetOnPremisesInstancesInput) (*codedeploy.BatchGetOnPremisesInstancesOutput, error) CreateApplicationRequest(*codedeploy.CreateApplicationInput) (*request.Request, *codedeploy.CreateApplicationOutput) CreateApplication(*codedeploy.CreateApplicationInput) (*codedeploy.CreateApplicationOutput, error) CreateDeploymentRequest(*codedeploy.CreateDeploymentInput) (*request.Request, *codedeploy.CreateDeploymentOutput) CreateDeployment(*codedeploy.CreateDeploymentInput) (*codedeploy.CreateDeploymentOutput, error) CreateDeploymentConfigRequest(*codedeploy.CreateDeploymentConfigInput) (*request.Request, *codedeploy.CreateDeploymentConfigOutput) CreateDeploymentConfig(*codedeploy.CreateDeploymentConfigInput) (*codedeploy.CreateDeploymentConfigOutput, error) CreateDeploymentGroupRequest(*codedeploy.CreateDeploymentGroupInput) (*request.Request, *codedeploy.CreateDeploymentGroupOutput) CreateDeploymentGroup(*codedeploy.CreateDeploymentGroupInput) (*codedeploy.CreateDeploymentGroupOutput, error) DeleteApplicationRequest(*codedeploy.DeleteApplicationInput) (*request.Request, *codedeploy.DeleteApplicationOutput) DeleteApplication(*codedeploy.DeleteApplicationInput) (*codedeploy.DeleteApplicationOutput, error) DeleteDeploymentConfigRequest(*codedeploy.DeleteDeploymentConfigInput) (*request.Request, *codedeploy.DeleteDeploymentConfigOutput) DeleteDeploymentConfig(*codedeploy.DeleteDeploymentConfigInput) (*codedeploy.DeleteDeploymentConfigOutput, error) DeleteDeploymentGroupRequest(*codedeploy.DeleteDeploymentGroupInput) (*request.Request, *codedeploy.DeleteDeploymentGroupOutput) DeleteDeploymentGroup(*codedeploy.DeleteDeploymentGroupInput) (*codedeploy.DeleteDeploymentGroupOutput, error) DeregisterOnPremisesInstanceRequest(*codedeploy.DeregisterOnPremisesInstanceInput) (*request.Request, *codedeploy.DeregisterOnPremisesInstanceOutput) DeregisterOnPremisesInstance(*codedeploy.DeregisterOnPremisesInstanceInput) (*codedeploy.DeregisterOnPremisesInstanceOutput, error) GetApplicationRequest(*codedeploy.GetApplicationInput) (*request.Request, *codedeploy.GetApplicationOutput) GetApplication(*codedeploy.GetApplicationInput) (*codedeploy.GetApplicationOutput, error) GetApplicationRevisionRequest(*codedeploy.GetApplicationRevisionInput) (*request.Request, *codedeploy.GetApplicationRevisionOutput) GetApplicationRevision(*codedeploy.GetApplicationRevisionInput) (*codedeploy.GetApplicationRevisionOutput, error) GetDeploymentRequest(*codedeploy.GetDeploymentInput) (*request.Request, *codedeploy.GetDeploymentOutput) GetDeployment(*codedeploy.GetDeploymentInput) (*codedeploy.GetDeploymentOutput, error) GetDeploymentConfigRequest(*codedeploy.GetDeploymentConfigInput) (*request.Request, *codedeploy.GetDeploymentConfigOutput) GetDeploymentConfig(*codedeploy.GetDeploymentConfigInput) (*codedeploy.GetDeploymentConfigOutput, error) GetDeploymentGroupRequest(*codedeploy.GetDeploymentGroupInput) (*request.Request, *codedeploy.GetDeploymentGroupOutput) GetDeploymentGroup(*codedeploy.GetDeploymentGroupInput) (*codedeploy.GetDeploymentGroupOutput, error) GetDeploymentInstanceRequest(*codedeploy.GetDeploymentInstanceInput) (*request.Request, *codedeploy.GetDeploymentInstanceOutput) GetDeploymentInstance(*codedeploy.GetDeploymentInstanceInput) (*codedeploy.GetDeploymentInstanceOutput, error) GetOnPremisesInstanceRequest(*codedeploy.GetOnPremisesInstanceInput) (*request.Request, *codedeploy.GetOnPremisesInstanceOutput) GetOnPremisesInstance(*codedeploy.GetOnPremisesInstanceInput) (*codedeploy.GetOnPremisesInstanceOutput, error) ListApplicationRevisionsRequest(*codedeploy.ListApplicationRevisionsInput) (*request.Request, *codedeploy.ListApplicationRevisionsOutput) ListApplicationRevisions(*codedeploy.ListApplicationRevisionsInput) (*codedeploy.ListApplicationRevisionsOutput, error) ListApplicationRevisionsPages(*codedeploy.ListApplicationRevisionsInput, func(*codedeploy.ListApplicationRevisionsOutput, bool) bool) error ListApplicationsRequest(*codedeploy.ListApplicationsInput) (*request.Request, *codedeploy.ListApplicationsOutput) ListApplications(*codedeploy.ListApplicationsInput) (*codedeploy.ListApplicationsOutput, error) ListApplicationsPages(*codedeploy.ListApplicationsInput, func(*codedeploy.ListApplicationsOutput, bool) bool) error ListDeploymentConfigsRequest(*codedeploy.ListDeploymentConfigsInput) (*request.Request, *codedeploy.ListDeploymentConfigsOutput) ListDeploymentConfigs(*codedeploy.ListDeploymentConfigsInput) (*codedeploy.ListDeploymentConfigsOutput, error) ListDeploymentConfigsPages(*codedeploy.ListDeploymentConfigsInput, func(*codedeploy.ListDeploymentConfigsOutput, bool) bool) error ListDeploymentGroupsRequest(*codedeploy.ListDeploymentGroupsInput) (*request.Request, *codedeploy.ListDeploymentGroupsOutput) ListDeploymentGroups(*codedeploy.ListDeploymentGroupsInput) (*codedeploy.ListDeploymentGroupsOutput, error) ListDeploymentGroupsPages(*codedeploy.ListDeploymentGroupsInput, func(*codedeploy.ListDeploymentGroupsOutput, bool) bool) error ListDeploymentInstancesRequest(*codedeploy.ListDeploymentInstancesInput) (*request.Request, *codedeploy.ListDeploymentInstancesOutput) ListDeploymentInstances(*codedeploy.ListDeploymentInstancesInput) (*codedeploy.ListDeploymentInstancesOutput, error) ListDeploymentInstancesPages(*codedeploy.ListDeploymentInstancesInput, func(*codedeploy.ListDeploymentInstancesOutput, bool) bool) error ListDeploymentsRequest(*codedeploy.ListDeploymentsInput) (*request.Request, *codedeploy.ListDeploymentsOutput) ListDeployments(*codedeploy.ListDeploymentsInput) (*codedeploy.ListDeploymentsOutput, error) ListDeploymentsPages(*codedeploy.ListDeploymentsInput, func(*codedeploy.ListDeploymentsOutput, bool) bool) error ListOnPremisesInstancesRequest(*codedeploy.ListOnPremisesInstancesInput) (*request.Request, *codedeploy.ListOnPremisesInstancesOutput) ListOnPremisesInstances(*codedeploy.ListOnPremisesInstancesInput) (*codedeploy.ListOnPremisesInstancesOutput, error) RegisterApplicationRevisionRequest(*codedeploy.RegisterApplicationRevisionInput) (*request.Request, *codedeploy.RegisterApplicationRevisionOutput) RegisterApplicationRevision(*codedeploy.RegisterApplicationRevisionInput) (*codedeploy.RegisterApplicationRevisionOutput, error) RegisterOnPremisesInstanceRequest(*codedeploy.RegisterOnPremisesInstanceInput) (*request.Request, *codedeploy.RegisterOnPremisesInstanceOutput) RegisterOnPremisesInstance(*codedeploy.RegisterOnPremisesInstanceInput) (*codedeploy.RegisterOnPremisesInstanceOutput, error) RemoveTagsFromOnPremisesInstancesRequest(*codedeploy.RemoveTagsFromOnPremisesInstancesInput) (*request.Request, *codedeploy.RemoveTagsFromOnPremisesInstancesOutput) RemoveTagsFromOnPremisesInstances(*codedeploy.RemoveTagsFromOnPremisesInstancesInput) (*codedeploy.RemoveTagsFromOnPremisesInstancesOutput, error) StopDeploymentRequest(*codedeploy.StopDeploymentInput) (*request.Request, *codedeploy.StopDeploymentOutput) StopDeployment(*codedeploy.StopDeploymentInput) (*codedeploy.StopDeploymentOutput, error) UpdateApplicationRequest(*codedeploy.UpdateApplicationInput) (*request.Request, *codedeploy.UpdateApplicationOutput) UpdateApplication(*codedeploy.UpdateApplicationInput) (*codedeploy.UpdateApplicationOutput, error) UpdateDeploymentGroupRequest(*codedeploy.UpdateDeploymentGroupInput) (*request.Request, *codedeploy.UpdateDeploymentGroupOutput) UpdateDeploymentGroup(*codedeploy.UpdateDeploymentGroupInput) (*codedeploy.UpdateDeploymentGroupOutput, error) WaitUntilDeploymentSuccessful(*codedeploy.GetDeploymentInput) error } var _ CodeDeployAPI = (*codedeploy.CodeDeploy)(nil) aws-sdk-go-1.4.22/service/codedeploy/examples_test.go000066400000000000000000000664031300374646400225670ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package codedeploy_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/codedeploy" ) var _ time.Duration var _ bytes.Buffer func ExampleCodeDeploy_AddTagsToOnPremisesInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.AddTagsToOnPremisesInstancesInput{ InstanceNames: []*string{ // Required aws.String("InstanceName"), // Required // More values... }, Tags: []*codedeploy.Tag{ // Required { // Required Key: aws.String("Key"), Value: aws.String("Value"), }, // More values... }, } resp, err := svc.AddTagsToOnPremisesInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_BatchGetApplicationRevisions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.BatchGetApplicationRevisionsInput{ ApplicationName: aws.String("ApplicationName"), // Required Revisions: []*codedeploy.RevisionLocation{ // Required { // Required GitHubLocation: &codedeploy.GitHubLocation{ CommitId: aws.String("CommitId"), Repository: aws.String("Repository"), }, RevisionType: aws.String("RevisionLocationType"), S3Location: &codedeploy.S3Location{ Bucket: aws.String("S3Bucket"), BundleType: aws.String("BundleType"), ETag: aws.String("ETag"), Key: aws.String("S3Key"), Version: aws.String("VersionId"), }, }, // More values... }, } resp, err := svc.BatchGetApplicationRevisions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_BatchGetApplications() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.BatchGetApplicationsInput{ ApplicationNames: []*string{ aws.String("ApplicationName"), // Required // More values... }, } resp, err := svc.BatchGetApplications(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_BatchGetDeploymentGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.BatchGetDeploymentGroupsInput{ ApplicationName: aws.String("ApplicationName"), // Required DeploymentGroupNames: []*string{ // Required aws.String("DeploymentGroupName"), // Required // More values... }, } resp, err := svc.BatchGetDeploymentGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_BatchGetDeploymentInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.BatchGetDeploymentInstancesInput{ DeploymentId: aws.String("DeploymentId"), // Required InstanceIds: []*string{ // Required aws.String("InstanceId"), // Required // More values... }, } resp, err := svc.BatchGetDeploymentInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_BatchGetDeployments() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.BatchGetDeploymentsInput{ DeploymentIds: []*string{ aws.String("DeploymentId"), // Required // More values... }, } resp, err := svc.BatchGetDeployments(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_BatchGetOnPremisesInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.BatchGetOnPremisesInstancesInput{ InstanceNames: []*string{ aws.String("InstanceName"), // Required // More values... }, } resp, err := svc.BatchGetOnPremisesInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_CreateApplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.CreateApplicationInput{ ApplicationName: aws.String("ApplicationName"), // Required } resp, err := svc.CreateApplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_CreateDeployment() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.CreateDeploymentInput{ ApplicationName: aws.String("ApplicationName"), // Required AutoRollbackConfiguration: &codedeploy.AutoRollbackConfiguration{ Enabled: aws.Bool(true), Events: []*string{ aws.String("AutoRollbackEvent"), // Required // More values... }, }, DeploymentConfigName: aws.String("DeploymentConfigName"), DeploymentGroupName: aws.String("DeploymentGroupName"), Description: aws.String("Description"), IgnoreApplicationStopFailures: aws.Bool(true), Revision: &codedeploy.RevisionLocation{ GitHubLocation: &codedeploy.GitHubLocation{ CommitId: aws.String("CommitId"), Repository: aws.String("Repository"), }, RevisionType: aws.String("RevisionLocationType"), S3Location: &codedeploy.S3Location{ Bucket: aws.String("S3Bucket"), BundleType: aws.String("BundleType"), ETag: aws.String("ETag"), Key: aws.String("S3Key"), Version: aws.String("VersionId"), }, }, UpdateOutdatedInstancesOnly: aws.Bool(true), } resp, err := svc.CreateDeployment(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_CreateDeploymentConfig() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.CreateDeploymentConfigInput{ DeploymentConfigName: aws.String("DeploymentConfigName"), // Required MinimumHealthyHosts: &codedeploy.MinimumHealthyHosts{ Type: aws.String("MinimumHealthyHostsType"), Value: aws.Int64(1), }, } resp, err := svc.CreateDeploymentConfig(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_CreateDeploymentGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.CreateDeploymentGroupInput{ ApplicationName: aws.String("ApplicationName"), // Required DeploymentGroupName: aws.String("DeploymentGroupName"), // Required ServiceRoleArn: aws.String("Role"), // Required AlarmConfiguration: &codedeploy.AlarmConfiguration{ Alarms: []*codedeploy.Alarm{ { // Required Name: aws.String("AlarmName"), }, // More values... }, Enabled: aws.Bool(true), IgnorePollAlarmFailure: aws.Bool(true), }, AutoRollbackConfiguration: &codedeploy.AutoRollbackConfiguration{ Enabled: aws.Bool(true), Events: []*string{ aws.String("AutoRollbackEvent"), // Required // More values... }, }, AutoScalingGroups: []*string{ aws.String("AutoScalingGroupName"), // Required // More values... }, DeploymentConfigName: aws.String("DeploymentConfigName"), Ec2TagFilters: []*codedeploy.EC2TagFilter{ { // Required Key: aws.String("Key"), Type: aws.String("EC2TagFilterType"), Value: aws.String("Value"), }, // More values... }, OnPremisesInstanceTagFilters: []*codedeploy.TagFilter{ { // Required Key: aws.String("Key"), Type: aws.String("TagFilterType"), Value: aws.String("Value"), }, // More values... }, TriggerConfigurations: []*codedeploy.TriggerConfig{ { // Required TriggerEvents: []*string{ aws.String("TriggerEventType"), // Required // More values... }, TriggerName: aws.String("TriggerName"), TriggerTargetArn: aws.String("TriggerTargetArn"), }, // More values... }, } resp, err := svc.CreateDeploymentGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_DeleteApplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.DeleteApplicationInput{ ApplicationName: aws.String("ApplicationName"), // Required } resp, err := svc.DeleteApplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_DeleteDeploymentConfig() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.DeleteDeploymentConfigInput{ DeploymentConfigName: aws.String("DeploymentConfigName"), // Required } resp, err := svc.DeleteDeploymentConfig(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_DeleteDeploymentGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.DeleteDeploymentGroupInput{ ApplicationName: aws.String("ApplicationName"), // Required DeploymentGroupName: aws.String("DeploymentGroupName"), // Required } resp, err := svc.DeleteDeploymentGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_DeregisterOnPremisesInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.DeregisterOnPremisesInstanceInput{ InstanceName: aws.String("InstanceName"), // Required } resp, err := svc.DeregisterOnPremisesInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_GetApplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.GetApplicationInput{ ApplicationName: aws.String("ApplicationName"), // Required } resp, err := svc.GetApplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_GetApplicationRevision() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.GetApplicationRevisionInput{ ApplicationName: aws.String("ApplicationName"), // Required Revision: &codedeploy.RevisionLocation{ // Required GitHubLocation: &codedeploy.GitHubLocation{ CommitId: aws.String("CommitId"), Repository: aws.String("Repository"), }, RevisionType: aws.String("RevisionLocationType"), S3Location: &codedeploy.S3Location{ Bucket: aws.String("S3Bucket"), BundleType: aws.String("BundleType"), ETag: aws.String("ETag"), Key: aws.String("S3Key"), Version: aws.String("VersionId"), }, }, } resp, err := svc.GetApplicationRevision(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_GetDeployment() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.GetDeploymentInput{ DeploymentId: aws.String("DeploymentId"), // Required } resp, err := svc.GetDeployment(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_GetDeploymentConfig() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.GetDeploymentConfigInput{ DeploymentConfigName: aws.String("DeploymentConfigName"), // Required } resp, err := svc.GetDeploymentConfig(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_GetDeploymentGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.GetDeploymentGroupInput{ ApplicationName: aws.String("ApplicationName"), // Required DeploymentGroupName: aws.String("DeploymentGroupName"), // Required } resp, err := svc.GetDeploymentGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_GetDeploymentInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.GetDeploymentInstanceInput{ DeploymentId: aws.String("DeploymentId"), // Required InstanceId: aws.String("InstanceId"), // Required } resp, err := svc.GetDeploymentInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_GetOnPremisesInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.GetOnPremisesInstanceInput{ InstanceName: aws.String("InstanceName"), // Required } resp, err := svc.GetOnPremisesInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_ListApplicationRevisions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.ListApplicationRevisionsInput{ ApplicationName: aws.String("ApplicationName"), // Required Deployed: aws.String("ListStateFilterAction"), NextToken: aws.String("NextToken"), S3Bucket: aws.String("S3Bucket"), S3KeyPrefix: aws.String("S3Key"), SortBy: aws.String("ApplicationRevisionSortBy"), SortOrder: aws.String("SortOrder"), } resp, err := svc.ListApplicationRevisions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_ListApplications() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.ListApplicationsInput{ NextToken: aws.String("NextToken"), } resp, err := svc.ListApplications(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_ListDeploymentConfigs() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.ListDeploymentConfigsInput{ NextToken: aws.String("NextToken"), } resp, err := svc.ListDeploymentConfigs(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_ListDeploymentGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.ListDeploymentGroupsInput{ ApplicationName: aws.String("ApplicationName"), // Required NextToken: aws.String("NextToken"), } resp, err := svc.ListDeploymentGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_ListDeploymentInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.ListDeploymentInstancesInput{ DeploymentId: aws.String("DeploymentId"), // Required InstanceStatusFilter: []*string{ aws.String("InstanceStatus"), // Required // More values... }, NextToken: aws.String("NextToken"), } resp, err := svc.ListDeploymentInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_ListDeployments() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.ListDeploymentsInput{ ApplicationName: aws.String("ApplicationName"), CreateTimeRange: &codedeploy.TimeRange{ End: aws.Time(time.Now()), Start: aws.Time(time.Now()), }, DeploymentGroupName: aws.String("DeploymentGroupName"), IncludeOnlyStatuses: []*string{ aws.String("DeploymentStatus"), // Required // More values... }, NextToken: aws.String("NextToken"), } resp, err := svc.ListDeployments(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_ListOnPremisesInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.ListOnPremisesInstancesInput{ NextToken: aws.String("NextToken"), RegistrationStatus: aws.String("RegistrationStatus"), TagFilters: []*codedeploy.TagFilter{ { // Required Key: aws.String("Key"), Type: aws.String("TagFilterType"), Value: aws.String("Value"), }, // More values... }, } resp, err := svc.ListOnPremisesInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_RegisterApplicationRevision() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.RegisterApplicationRevisionInput{ ApplicationName: aws.String("ApplicationName"), // Required Revision: &codedeploy.RevisionLocation{ // Required GitHubLocation: &codedeploy.GitHubLocation{ CommitId: aws.String("CommitId"), Repository: aws.String("Repository"), }, RevisionType: aws.String("RevisionLocationType"), S3Location: &codedeploy.S3Location{ Bucket: aws.String("S3Bucket"), BundleType: aws.String("BundleType"), ETag: aws.String("ETag"), Key: aws.String("S3Key"), Version: aws.String("VersionId"), }, }, Description: aws.String("Description"), } resp, err := svc.RegisterApplicationRevision(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_RegisterOnPremisesInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.RegisterOnPremisesInstanceInput{ IamUserArn: aws.String("IamUserArn"), // Required InstanceName: aws.String("InstanceName"), // Required } resp, err := svc.RegisterOnPremisesInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_RemoveTagsFromOnPremisesInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.RemoveTagsFromOnPremisesInstancesInput{ InstanceNames: []*string{ // Required aws.String("InstanceName"), // Required // More values... }, Tags: []*codedeploy.Tag{ // Required { // Required Key: aws.String("Key"), Value: aws.String("Value"), }, // More values... }, } resp, err := svc.RemoveTagsFromOnPremisesInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_StopDeployment() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.StopDeploymentInput{ DeploymentId: aws.String("DeploymentId"), // Required AutoRollbackEnabled: aws.Bool(true), } resp, err := svc.StopDeployment(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_UpdateApplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.UpdateApplicationInput{ ApplicationName: aws.String("ApplicationName"), NewApplicationName: aws.String("ApplicationName"), } resp, err := svc.UpdateApplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodeDeploy_UpdateDeploymentGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codedeploy.New(sess) params := &codedeploy.UpdateDeploymentGroupInput{ ApplicationName: aws.String("ApplicationName"), // Required CurrentDeploymentGroupName: aws.String("DeploymentGroupName"), // Required AlarmConfiguration: &codedeploy.AlarmConfiguration{ Alarms: []*codedeploy.Alarm{ { // Required Name: aws.String("AlarmName"), }, // More values... }, Enabled: aws.Bool(true), IgnorePollAlarmFailure: aws.Bool(true), }, AutoRollbackConfiguration: &codedeploy.AutoRollbackConfiguration{ Enabled: aws.Bool(true), Events: []*string{ aws.String("AutoRollbackEvent"), // Required // More values... }, }, AutoScalingGroups: []*string{ aws.String("AutoScalingGroupName"), // Required // More values... }, DeploymentConfigName: aws.String("DeploymentConfigName"), Ec2TagFilters: []*codedeploy.EC2TagFilter{ { // Required Key: aws.String("Key"), Type: aws.String("EC2TagFilterType"), Value: aws.String("Value"), }, // More values... }, NewDeploymentGroupName: aws.String("DeploymentGroupName"), OnPremisesInstanceTagFilters: []*codedeploy.TagFilter{ { // Required Key: aws.String("Key"), Type: aws.String("TagFilterType"), Value: aws.String("Value"), }, // More values... }, ServiceRoleArn: aws.String("Role"), TriggerConfigurations: []*codedeploy.TriggerConfig{ { // Required TriggerEvents: []*string{ aws.String("TriggerEventType"), // Required // More values... }, TriggerName: aws.String("TriggerName"), TriggerTargetArn: aws.String("TriggerTargetArn"), }, // More values... }, } resp, err := svc.UpdateDeploymentGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/codedeploy/service.go000066400000000000000000000122041300374646400213400ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package codedeploy import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Overview // // This reference guide provides descriptions of the AWS CodeDeploy APIs. For // more information about AWS CodeDeploy, see the AWS CodeDeploy User Guide // (http://docs.aws.amazon.com/codedeploy/latest/userguide). // // Using the APIs // // You can use the AWS CodeDeploy APIs to work with the following: // // * Applications are unique identifiers used by AWS CodeDeploy to ensure // the correct combinations of revisions, deployment configurations, and // deployment groups are being referenced during deployments. // // You can use the AWS CodeDeploy APIs to create, delete, get, list, and update // applications. // // * Deployment configurations are sets of deployment rules and success and // failure conditions used by AWS CodeDeploy during deployments. // // You can use the AWS CodeDeploy APIs to create, delete, get, and list deployment // configurations. // // * Deployment groups are groups of instances to which application revisions // can be deployed. // // You can use the AWS CodeDeploy APIs to create, delete, get, list, and update // deployment groups. // // * Instances represent Amazon EC2 instances to which application revisions // are deployed. Instances are identified by their Amazon EC2 tags or Auto // Scaling group names. Instances belong to deployment groups. // // You can use the AWS CodeDeploy APIs to get and list instance. // // * Deployments represent the process of deploying revisions to instances. // // You can use the AWS CodeDeploy APIs to create, get, list, and stop deployments. // // * Application revisions are archive files stored in Amazon S3 buckets // or GitHub repositories. These revisions contain source content (such as // source code, web pages, executable files, and deployment scripts) along // with an application specification (AppSpec) file. (The AppSpec file is // unique to AWS CodeDeploy; it defines the deployment actions you want AWS // CodeDeploy to execute.) For application revisions stored in Amazon S3 // buckets, an application revision is uniquely identified by its Amazon // S3 object key and its ETag, version, or both. For application revisions // stored in GitHub repositories, an application revision is uniquely identified // by its repository name and commit ID. Application revisions are deployed // through deployment groups. // // You can use the AWS CodeDeploy APIs to get, list, and register application // revisions. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type CodeDeploy struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "codedeploy" // New creates a new instance of the CodeDeploy client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a CodeDeploy client from just a session. // svc := codedeploy.New(mySession) // // // Create a CodeDeploy client with additional configuration // svc := codedeploy.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *CodeDeploy { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *CodeDeploy { svc := &CodeDeploy{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-10-06", JSONVersion: "1.1", TargetPrefix: "CodeDeploy_20141006", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a CodeDeploy operation and runs any // custom request initialization. func (c *CodeDeploy) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/codedeploy/waiters.go000066400000000000000000000020331300374646400213550ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package codedeploy import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilDeploymentSuccessful uses the CodeDeploy API operation // GetDeployment to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *CodeDeploy) WaitUntilDeploymentSuccessful(input *GetDeploymentInput) error { waiterCfg := waiter.Config{ Operation: "GetDeployment", Delay: 15, MaxAttempts: 120, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "path", Argument: "deploymentInfo.status", Expected: "Succeeded", }, { State: "failure", Matcher: "path", Argument: "deploymentInfo.status", Expected: "Failed", }, { State: "failure", Matcher: "path", Argument: "deploymentInfo.status", Expected: "Stopped", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/codepipeline/000077500000000000000000000000001300374646400176635ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/codepipeline/api.go000066400000000000000000005544621300374646400210030ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package codepipeline provides a client for AWS CodePipeline. package codepipeline import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opAcknowledgeJob = "AcknowledgeJob" // AcknowledgeJobRequest generates a "aws/request.Request" representing the // client's request for the AcknowledgeJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AcknowledgeJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AcknowledgeJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AcknowledgeJobRequest method. // req, resp := client.AcknowledgeJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) AcknowledgeJobRequest(input *AcknowledgeJobInput) (req *request.Request, output *AcknowledgeJobOutput) { op := &request.Operation{ Name: opAcknowledgeJob, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AcknowledgeJobInput{} } req = c.newRequest(op, input, output) output = &AcknowledgeJobOutput{} req.Data = output return } // AcknowledgeJob API operation for AWS CodePipeline. // // Returns information about a specified job and whether that job has been received // by the job worker. Only used for custom actions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation AcknowledgeJob for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * InvalidNonceException // The specified nonce was specified in an invalid format. // // * JobNotFoundException // The specified job was specified in an invalid format or cannot be found. // func (c *CodePipeline) AcknowledgeJob(input *AcknowledgeJobInput) (*AcknowledgeJobOutput, error) { req, out := c.AcknowledgeJobRequest(input) err := req.Send() return out, err } const opAcknowledgeThirdPartyJob = "AcknowledgeThirdPartyJob" // AcknowledgeThirdPartyJobRequest generates a "aws/request.Request" representing the // client's request for the AcknowledgeThirdPartyJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AcknowledgeThirdPartyJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AcknowledgeThirdPartyJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AcknowledgeThirdPartyJobRequest method. // req, resp := client.AcknowledgeThirdPartyJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) AcknowledgeThirdPartyJobRequest(input *AcknowledgeThirdPartyJobInput) (req *request.Request, output *AcknowledgeThirdPartyJobOutput) { op := &request.Operation{ Name: opAcknowledgeThirdPartyJob, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AcknowledgeThirdPartyJobInput{} } req = c.newRequest(op, input, output) output = &AcknowledgeThirdPartyJobOutput{} req.Data = output return } // AcknowledgeThirdPartyJob API operation for AWS CodePipeline. // // Confirms a job worker has received the specified job. Only used for partner // actions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation AcknowledgeThirdPartyJob for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * InvalidNonceException // The specified nonce was specified in an invalid format. // // * JobNotFoundException // The specified job was specified in an invalid format or cannot be found. // // * InvalidClientTokenException // The client token was specified in an invalid format // func (c *CodePipeline) AcknowledgeThirdPartyJob(input *AcknowledgeThirdPartyJobInput) (*AcknowledgeThirdPartyJobOutput, error) { req, out := c.AcknowledgeThirdPartyJobRequest(input) err := req.Send() return out, err } const opCreateCustomActionType = "CreateCustomActionType" // CreateCustomActionTypeRequest generates a "aws/request.Request" representing the // client's request for the CreateCustomActionType operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateCustomActionType for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateCustomActionType method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateCustomActionTypeRequest method. // req, resp := client.CreateCustomActionTypeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) CreateCustomActionTypeRequest(input *CreateCustomActionTypeInput) (req *request.Request, output *CreateCustomActionTypeOutput) { op := &request.Operation{ Name: opCreateCustomActionType, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateCustomActionTypeInput{} } req = c.newRequest(op, input, output) output = &CreateCustomActionTypeOutput{} req.Data = output return } // CreateCustomActionType API operation for AWS CodePipeline. // // Creates a new custom action that can be used in all pipelines associated // with the AWS account. Only used for custom actions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation CreateCustomActionType for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * LimitExceededException // The number of pipelines associated with the AWS account has exceeded the // limit allowed for the account. // func (c *CodePipeline) CreateCustomActionType(input *CreateCustomActionTypeInput) (*CreateCustomActionTypeOutput, error) { req, out := c.CreateCustomActionTypeRequest(input) err := req.Send() return out, err } const opCreatePipeline = "CreatePipeline" // CreatePipelineRequest generates a "aws/request.Request" representing the // client's request for the CreatePipeline operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreatePipeline for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreatePipeline method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreatePipelineRequest method. // req, resp := client.CreatePipelineRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) CreatePipelineRequest(input *CreatePipelineInput) (req *request.Request, output *CreatePipelineOutput) { op := &request.Operation{ Name: opCreatePipeline, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreatePipelineInput{} } req = c.newRequest(op, input, output) output = &CreatePipelineOutput{} req.Data = output return } // CreatePipeline API operation for AWS CodePipeline. // // Creates a pipeline. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation CreatePipeline for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * PipelineNameInUseException // The specified pipeline name is already in use. // // * InvalidStageDeclarationException // The specified stage declaration was specified in an invalid format. // // * InvalidActionDeclarationException // The specified action declaration was specified in an invalid format. // // * InvalidBlockerDeclarationException // Reserved for future use. // // * InvalidStructureException // The specified structure was specified in an invalid format. // // * LimitExceededException // The number of pipelines associated with the AWS account has exceeded the // limit allowed for the account. // func (c *CodePipeline) CreatePipeline(input *CreatePipelineInput) (*CreatePipelineOutput, error) { req, out := c.CreatePipelineRequest(input) err := req.Send() return out, err } const opDeleteCustomActionType = "DeleteCustomActionType" // DeleteCustomActionTypeRequest generates a "aws/request.Request" representing the // client's request for the DeleteCustomActionType operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteCustomActionType for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteCustomActionType method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteCustomActionTypeRequest method. // req, resp := client.DeleteCustomActionTypeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) DeleteCustomActionTypeRequest(input *DeleteCustomActionTypeInput) (req *request.Request, output *DeleteCustomActionTypeOutput) { op := &request.Operation{ Name: opDeleteCustomActionType, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteCustomActionTypeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteCustomActionTypeOutput{} req.Data = output return } // DeleteCustomActionType API operation for AWS CodePipeline. // // Marks a custom action as deleted. PollForJobs for the custom action will // fail after the action is marked for deletion. Only used for custom actions. // // You cannot recreate a custom action after it has been deleted unless you // increase the version number of the action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation DeleteCustomActionType for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // func (c *CodePipeline) DeleteCustomActionType(input *DeleteCustomActionTypeInput) (*DeleteCustomActionTypeOutput, error) { req, out := c.DeleteCustomActionTypeRequest(input) err := req.Send() return out, err } const opDeletePipeline = "DeletePipeline" // DeletePipelineRequest generates a "aws/request.Request" representing the // client's request for the DeletePipeline operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeletePipeline for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeletePipeline method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeletePipelineRequest method. // req, resp := client.DeletePipelineRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) DeletePipelineRequest(input *DeletePipelineInput) (req *request.Request, output *DeletePipelineOutput) { op := &request.Operation{ Name: opDeletePipeline, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeletePipelineInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeletePipelineOutput{} req.Data = output return } // DeletePipeline API operation for AWS CodePipeline. // // Deletes the specified pipeline. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation DeletePipeline for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // func (c *CodePipeline) DeletePipeline(input *DeletePipelineInput) (*DeletePipelineOutput, error) { req, out := c.DeletePipelineRequest(input) err := req.Send() return out, err } const opDisableStageTransition = "DisableStageTransition" // DisableStageTransitionRequest generates a "aws/request.Request" representing the // client's request for the DisableStageTransition operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableStageTransition for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableStageTransition method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableStageTransitionRequest method. // req, resp := client.DisableStageTransitionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) DisableStageTransitionRequest(input *DisableStageTransitionInput) (req *request.Request, output *DisableStageTransitionOutput) { op := &request.Operation{ Name: opDisableStageTransition, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableStageTransitionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DisableStageTransitionOutput{} req.Data = output return } // DisableStageTransition API operation for AWS CodePipeline. // // Prevents artifacts in a pipeline from transitioning to the next stage in // the pipeline. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation DisableStageTransition for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * PipelineNotFoundException // The specified pipeline was specified in an invalid format or cannot be found. // // * StageNotFoundException // The specified stage was specified in an invalid format or cannot be found. // func (c *CodePipeline) DisableStageTransition(input *DisableStageTransitionInput) (*DisableStageTransitionOutput, error) { req, out := c.DisableStageTransitionRequest(input) err := req.Send() return out, err } const opEnableStageTransition = "EnableStageTransition" // EnableStageTransitionRequest generates a "aws/request.Request" representing the // client's request for the EnableStageTransition operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableStageTransition for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableStageTransition method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableStageTransitionRequest method. // req, resp := client.EnableStageTransitionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) EnableStageTransitionRequest(input *EnableStageTransitionInput) (req *request.Request, output *EnableStageTransitionOutput) { op := &request.Operation{ Name: opEnableStageTransition, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableStageTransitionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &EnableStageTransitionOutput{} req.Data = output return } // EnableStageTransition API operation for AWS CodePipeline. // // Enables artifacts in a pipeline to transition to a stage in a pipeline. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation EnableStageTransition for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * PipelineNotFoundException // The specified pipeline was specified in an invalid format or cannot be found. // // * StageNotFoundException // The specified stage was specified in an invalid format or cannot be found. // func (c *CodePipeline) EnableStageTransition(input *EnableStageTransitionInput) (*EnableStageTransitionOutput, error) { req, out := c.EnableStageTransitionRequest(input) err := req.Send() return out, err } const opGetJobDetails = "GetJobDetails" // GetJobDetailsRequest generates a "aws/request.Request" representing the // client's request for the GetJobDetails operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetJobDetails for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetJobDetails method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetJobDetailsRequest method. // req, resp := client.GetJobDetailsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) GetJobDetailsRequest(input *GetJobDetailsInput) (req *request.Request, output *GetJobDetailsOutput) { op := &request.Operation{ Name: opGetJobDetails, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetJobDetailsInput{} } req = c.newRequest(op, input, output) output = &GetJobDetailsOutput{} req.Data = output return } // GetJobDetails API operation for AWS CodePipeline. // // Returns information about a job. Only used for custom actions. // // When this API is called, AWS CodePipeline returns temporary credentials for // the Amazon S3 bucket used to store artifacts for the pipeline, if the action // requires access to that Amazon S3 bucket for input or output artifacts. Additionally, // this API returns any secret values defined for the action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation GetJobDetails for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * JobNotFoundException // The specified job was specified in an invalid format or cannot be found. // func (c *CodePipeline) GetJobDetails(input *GetJobDetailsInput) (*GetJobDetailsOutput, error) { req, out := c.GetJobDetailsRequest(input) err := req.Send() return out, err } const opGetPipeline = "GetPipeline" // GetPipelineRequest generates a "aws/request.Request" representing the // client's request for the GetPipeline operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetPipeline for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetPipeline method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetPipelineRequest method. // req, resp := client.GetPipelineRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) GetPipelineRequest(input *GetPipelineInput) (req *request.Request, output *GetPipelineOutput) { op := &request.Operation{ Name: opGetPipeline, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetPipelineInput{} } req = c.newRequest(op, input, output) output = &GetPipelineOutput{} req.Data = output return } // GetPipeline API operation for AWS CodePipeline. // // Returns the metadata, structure, stages, and actions of a pipeline. Can be // used to return the entire structure of a pipeline in JSON format, which can // then be modified and used to update the pipeline structure with UpdatePipeline. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation GetPipeline for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * PipelineNotFoundException // The specified pipeline was specified in an invalid format or cannot be found. // // * PipelineVersionNotFoundException // The specified pipeline version was specified in an invalid format or cannot // be found. // func (c *CodePipeline) GetPipeline(input *GetPipelineInput) (*GetPipelineOutput, error) { req, out := c.GetPipelineRequest(input) err := req.Send() return out, err } const opGetPipelineExecution = "GetPipelineExecution" // GetPipelineExecutionRequest generates a "aws/request.Request" representing the // client's request for the GetPipelineExecution operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetPipelineExecution for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetPipelineExecution method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetPipelineExecutionRequest method. // req, resp := client.GetPipelineExecutionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) GetPipelineExecutionRequest(input *GetPipelineExecutionInput) (req *request.Request, output *GetPipelineExecutionOutput) { op := &request.Operation{ Name: opGetPipelineExecution, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetPipelineExecutionInput{} } req = c.newRequest(op, input, output) output = &GetPipelineExecutionOutput{} req.Data = output return } // GetPipelineExecution API operation for AWS CodePipeline. // // Returns information about an execution of a pipeline, including details about // artifacts, the pipeline execution ID, and the name, version, and status of // the pipeline. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation GetPipelineExecution for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * PipelineNotFoundException // The specified pipeline was specified in an invalid format or cannot be found. // // * PipelineExecutionNotFoundException // The pipeline execution was specified in an invalid format or cannot be found, // or an execution ID does not belong to the specified pipeline. // func (c *CodePipeline) GetPipelineExecution(input *GetPipelineExecutionInput) (*GetPipelineExecutionOutput, error) { req, out := c.GetPipelineExecutionRequest(input) err := req.Send() return out, err } const opGetPipelineState = "GetPipelineState" // GetPipelineStateRequest generates a "aws/request.Request" representing the // client's request for the GetPipelineState operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetPipelineState for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetPipelineState method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetPipelineStateRequest method. // req, resp := client.GetPipelineStateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) GetPipelineStateRequest(input *GetPipelineStateInput) (req *request.Request, output *GetPipelineStateOutput) { op := &request.Operation{ Name: opGetPipelineState, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetPipelineStateInput{} } req = c.newRequest(op, input, output) output = &GetPipelineStateOutput{} req.Data = output return } // GetPipelineState API operation for AWS CodePipeline. // // Returns information about the state of a pipeline, including the stages and // actions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation GetPipelineState for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * PipelineNotFoundException // The specified pipeline was specified in an invalid format or cannot be found. // func (c *CodePipeline) GetPipelineState(input *GetPipelineStateInput) (*GetPipelineStateOutput, error) { req, out := c.GetPipelineStateRequest(input) err := req.Send() return out, err } const opGetThirdPartyJobDetails = "GetThirdPartyJobDetails" // GetThirdPartyJobDetailsRequest generates a "aws/request.Request" representing the // client's request for the GetThirdPartyJobDetails operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetThirdPartyJobDetails for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetThirdPartyJobDetails method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetThirdPartyJobDetailsRequest method. // req, resp := client.GetThirdPartyJobDetailsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) GetThirdPartyJobDetailsRequest(input *GetThirdPartyJobDetailsInput) (req *request.Request, output *GetThirdPartyJobDetailsOutput) { op := &request.Operation{ Name: opGetThirdPartyJobDetails, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetThirdPartyJobDetailsInput{} } req = c.newRequest(op, input, output) output = &GetThirdPartyJobDetailsOutput{} req.Data = output return } // GetThirdPartyJobDetails API operation for AWS CodePipeline. // // Requests the details of a job for a third party action. Only used for partner // actions. // // When this API is called, AWS CodePipeline returns temporary credentials for // the Amazon S3 bucket used to store artifacts for the pipeline, if the action // requires access to that Amazon S3 bucket for input or output artifacts. Additionally, // this API returns any secret values defined for the action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation GetThirdPartyJobDetails for usage and error information. // // Returned Error Codes: // * JobNotFoundException // The specified job was specified in an invalid format or cannot be found. // // * ValidationException // The validation was specified in an invalid format. // // * InvalidClientTokenException // The client token was specified in an invalid format // // * InvalidJobException // The specified job was specified in an invalid format or cannot be found. // func (c *CodePipeline) GetThirdPartyJobDetails(input *GetThirdPartyJobDetailsInput) (*GetThirdPartyJobDetailsOutput, error) { req, out := c.GetThirdPartyJobDetailsRequest(input) err := req.Send() return out, err } const opListActionTypes = "ListActionTypes" // ListActionTypesRequest generates a "aws/request.Request" representing the // client's request for the ListActionTypes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListActionTypes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListActionTypes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListActionTypesRequest method. // req, resp := client.ListActionTypesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) ListActionTypesRequest(input *ListActionTypesInput) (req *request.Request, output *ListActionTypesOutput) { op := &request.Operation{ Name: opListActionTypes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListActionTypesInput{} } req = c.newRequest(op, input, output) output = &ListActionTypesOutput{} req.Data = output return } // ListActionTypes API operation for AWS CodePipeline. // // Gets a summary of all AWS CodePipeline action types associated with your // account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation ListActionTypes for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * InvalidNextTokenException // The next token was specified in an invalid format. Make sure that the next // token you provided is the token returned by a previous call. // func (c *CodePipeline) ListActionTypes(input *ListActionTypesInput) (*ListActionTypesOutput, error) { req, out := c.ListActionTypesRequest(input) err := req.Send() return out, err } const opListPipelines = "ListPipelines" // ListPipelinesRequest generates a "aws/request.Request" representing the // client's request for the ListPipelines operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListPipelines for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListPipelines method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListPipelinesRequest method. // req, resp := client.ListPipelinesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) ListPipelinesRequest(input *ListPipelinesInput) (req *request.Request, output *ListPipelinesOutput) { op := &request.Operation{ Name: opListPipelines, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListPipelinesInput{} } req = c.newRequest(op, input, output) output = &ListPipelinesOutput{} req.Data = output return } // ListPipelines API operation for AWS CodePipeline. // // Gets a summary of all of the pipelines associated with your account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation ListPipelines for usage and error information. // // Returned Error Codes: // * InvalidNextTokenException // The next token was specified in an invalid format. Make sure that the next // token you provided is the token returned by a previous call. // func (c *CodePipeline) ListPipelines(input *ListPipelinesInput) (*ListPipelinesOutput, error) { req, out := c.ListPipelinesRequest(input) err := req.Send() return out, err } const opPollForJobs = "PollForJobs" // PollForJobsRequest generates a "aws/request.Request" representing the // client's request for the PollForJobs operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PollForJobs for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PollForJobs method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PollForJobsRequest method. // req, resp := client.PollForJobsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) PollForJobsRequest(input *PollForJobsInput) (req *request.Request, output *PollForJobsOutput) { op := &request.Operation{ Name: opPollForJobs, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PollForJobsInput{} } req = c.newRequest(op, input, output) output = &PollForJobsOutput{} req.Data = output return } // PollForJobs API operation for AWS CodePipeline. // // Returns information about any jobs for AWS CodePipeline to act upon. // // When this API is called, AWS CodePipeline returns temporary credentials for // the Amazon S3 bucket used to store artifacts for the pipeline, if the action // requires access to that Amazon S3 bucket for input or output artifacts. Additionally, // this API returns any secret values defined for the action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation PollForJobs for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * ActionTypeNotFoundException // The specified action type cannot be found. // func (c *CodePipeline) PollForJobs(input *PollForJobsInput) (*PollForJobsOutput, error) { req, out := c.PollForJobsRequest(input) err := req.Send() return out, err } const opPollForThirdPartyJobs = "PollForThirdPartyJobs" // PollForThirdPartyJobsRequest generates a "aws/request.Request" representing the // client's request for the PollForThirdPartyJobs operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PollForThirdPartyJobs for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PollForThirdPartyJobs method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PollForThirdPartyJobsRequest method. // req, resp := client.PollForThirdPartyJobsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) PollForThirdPartyJobsRequest(input *PollForThirdPartyJobsInput) (req *request.Request, output *PollForThirdPartyJobsOutput) { op := &request.Operation{ Name: opPollForThirdPartyJobs, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PollForThirdPartyJobsInput{} } req = c.newRequest(op, input, output) output = &PollForThirdPartyJobsOutput{} req.Data = output return } // PollForThirdPartyJobs API operation for AWS CodePipeline. // // Determines whether there are any third party jobs for a job worker to act // on. Only used for partner actions. // // When this API is called, AWS CodePipeline returns temporary credentials for // the Amazon S3 bucket used to store artifacts for the pipeline, if the action // requires access to that Amazon S3 bucket for input or output artifacts. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation PollForThirdPartyJobs for usage and error information. // // Returned Error Codes: // * ActionTypeNotFoundException // The specified action type cannot be found. // // * ValidationException // The validation was specified in an invalid format. // func (c *CodePipeline) PollForThirdPartyJobs(input *PollForThirdPartyJobsInput) (*PollForThirdPartyJobsOutput, error) { req, out := c.PollForThirdPartyJobsRequest(input) err := req.Send() return out, err } const opPutActionRevision = "PutActionRevision" // PutActionRevisionRequest generates a "aws/request.Request" representing the // client's request for the PutActionRevision operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutActionRevision for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutActionRevision method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutActionRevisionRequest method. // req, resp := client.PutActionRevisionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) PutActionRevisionRequest(input *PutActionRevisionInput) (req *request.Request, output *PutActionRevisionOutput) { op := &request.Operation{ Name: opPutActionRevision, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutActionRevisionInput{} } req = c.newRequest(op, input, output) output = &PutActionRevisionOutput{} req.Data = output return } // PutActionRevision API operation for AWS CodePipeline. // // Provides information to AWS CodePipeline about new revisions to a source. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation PutActionRevision for usage and error information. // // Returned Error Codes: // * PipelineNotFoundException // The specified pipeline was specified in an invalid format or cannot be found. // // * StageNotFoundException // The specified stage was specified in an invalid format or cannot be found. // // * ActionNotFoundException // The specified action cannot be found. // // * ValidationException // The validation was specified in an invalid format. // func (c *CodePipeline) PutActionRevision(input *PutActionRevisionInput) (*PutActionRevisionOutput, error) { req, out := c.PutActionRevisionRequest(input) err := req.Send() return out, err } const opPutApprovalResult = "PutApprovalResult" // PutApprovalResultRequest generates a "aws/request.Request" representing the // client's request for the PutApprovalResult operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutApprovalResult for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutApprovalResult method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutApprovalResultRequest method. // req, resp := client.PutApprovalResultRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) PutApprovalResultRequest(input *PutApprovalResultInput) (req *request.Request, output *PutApprovalResultOutput) { op := &request.Operation{ Name: opPutApprovalResult, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutApprovalResultInput{} } req = c.newRequest(op, input, output) output = &PutApprovalResultOutput{} req.Data = output return } // PutApprovalResult API operation for AWS CodePipeline. // // Provides the response to a manual approval request to AWS CodePipeline. Valid // responses include Approved and Rejected. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation PutApprovalResult for usage and error information. // // Returned Error Codes: // * InvalidApprovalTokenException // The approval request already received a response or has expired. // // * ApprovalAlreadyCompletedException // The approval action has already been approved or rejected. // // * PipelineNotFoundException // The specified pipeline was specified in an invalid format or cannot be found. // // * StageNotFoundException // The specified stage was specified in an invalid format or cannot be found. // // * ActionNotFoundException // The specified action cannot be found. // // * ValidationException // The validation was specified in an invalid format. // func (c *CodePipeline) PutApprovalResult(input *PutApprovalResultInput) (*PutApprovalResultOutput, error) { req, out := c.PutApprovalResultRequest(input) err := req.Send() return out, err } const opPutJobFailureResult = "PutJobFailureResult" // PutJobFailureResultRequest generates a "aws/request.Request" representing the // client's request for the PutJobFailureResult operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutJobFailureResult for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutJobFailureResult method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutJobFailureResultRequest method. // req, resp := client.PutJobFailureResultRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) PutJobFailureResultRequest(input *PutJobFailureResultInput) (req *request.Request, output *PutJobFailureResultOutput) { op := &request.Operation{ Name: opPutJobFailureResult, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutJobFailureResultInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutJobFailureResultOutput{} req.Data = output return } // PutJobFailureResult API operation for AWS CodePipeline. // // Represents the failure of a job as returned to the pipeline by a job worker. // Only used for custom actions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation PutJobFailureResult for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * JobNotFoundException // The specified job was specified in an invalid format or cannot be found. // // * InvalidJobStateException // The specified job state was specified in an invalid format. // func (c *CodePipeline) PutJobFailureResult(input *PutJobFailureResultInput) (*PutJobFailureResultOutput, error) { req, out := c.PutJobFailureResultRequest(input) err := req.Send() return out, err } const opPutJobSuccessResult = "PutJobSuccessResult" // PutJobSuccessResultRequest generates a "aws/request.Request" representing the // client's request for the PutJobSuccessResult operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutJobSuccessResult for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutJobSuccessResult method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutJobSuccessResultRequest method. // req, resp := client.PutJobSuccessResultRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) PutJobSuccessResultRequest(input *PutJobSuccessResultInput) (req *request.Request, output *PutJobSuccessResultOutput) { op := &request.Operation{ Name: opPutJobSuccessResult, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutJobSuccessResultInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutJobSuccessResultOutput{} req.Data = output return } // PutJobSuccessResult API operation for AWS CodePipeline. // // Represents the success of a job as returned to the pipeline by a job worker. // Only used for custom actions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation PutJobSuccessResult for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * JobNotFoundException // The specified job was specified in an invalid format or cannot be found. // // * InvalidJobStateException // The specified job state was specified in an invalid format. // func (c *CodePipeline) PutJobSuccessResult(input *PutJobSuccessResultInput) (*PutJobSuccessResultOutput, error) { req, out := c.PutJobSuccessResultRequest(input) err := req.Send() return out, err } const opPutThirdPartyJobFailureResult = "PutThirdPartyJobFailureResult" // PutThirdPartyJobFailureResultRequest generates a "aws/request.Request" representing the // client's request for the PutThirdPartyJobFailureResult operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutThirdPartyJobFailureResult for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutThirdPartyJobFailureResult method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutThirdPartyJobFailureResultRequest method. // req, resp := client.PutThirdPartyJobFailureResultRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) PutThirdPartyJobFailureResultRequest(input *PutThirdPartyJobFailureResultInput) (req *request.Request, output *PutThirdPartyJobFailureResultOutput) { op := &request.Operation{ Name: opPutThirdPartyJobFailureResult, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutThirdPartyJobFailureResultInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutThirdPartyJobFailureResultOutput{} req.Data = output return } // PutThirdPartyJobFailureResult API operation for AWS CodePipeline. // // Represents the failure of a third party job as returned to the pipeline by // a job worker. Only used for partner actions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation PutThirdPartyJobFailureResult for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * JobNotFoundException // The specified job was specified in an invalid format or cannot be found. // // * InvalidJobStateException // The specified job state was specified in an invalid format. // // * InvalidClientTokenException // The client token was specified in an invalid format // func (c *CodePipeline) PutThirdPartyJobFailureResult(input *PutThirdPartyJobFailureResultInput) (*PutThirdPartyJobFailureResultOutput, error) { req, out := c.PutThirdPartyJobFailureResultRequest(input) err := req.Send() return out, err } const opPutThirdPartyJobSuccessResult = "PutThirdPartyJobSuccessResult" // PutThirdPartyJobSuccessResultRequest generates a "aws/request.Request" representing the // client's request for the PutThirdPartyJobSuccessResult operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutThirdPartyJobSuccessResult for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutThirdPartyJobSuccessResult method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutThirdPartyJobSuccessResultRequest method. // req, resp := client.PutThirdPartyJobSuccessResultRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) PutThirdPartyJobSuccessResultRequest(input *PutThirdPartyJobSuccessResultInput) (req *request.Request, output *PutThirdPartyJobSuccessResultOutput) { op := &request.Operation{ Name: opPutThirdPartyJobSuccessResult, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutThirdPartyJobSuccessResultInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutThirdPartyJobSuccessResultOutput{} req.Data = output return } // PutThirdPartyJobSuccessResult API operation for AWS CodePipeline. // // Represents the success of a third party job as returned to the pipeline by // a job worker. Only used for partner actions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation PutThirdPartyJobSuccessResult for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * JobNotFoundException // The specified job was specified in an invalid format or cannot be found. // // * InvalidJobStateException // The specified job state was specified in an invalid format. // // * InvalidClientTokenException // The client token was specified in an invalid format // func (c *CodePipeline) PutThirdPartyJobSuccessResult(input *PutThirdPartyJobSuccessResultInput) (*PutThirdPartyJobSuccessResultOutput, error) { req, out := c.PutThirdPartyJobSuccessResultRequest(input) err := req.Send() return out, err } const opRetryStageExecution = "RetryStageExecution" // RetryStageExecutionRequest generates a "aws/request.Request" representing the // client's request for the RetryStageExecution operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RetryStageExecution for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RetryStageExecution method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RetryStageExecutionRequest method. // req, resp := client.RetryStageExecutionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) RetryStageExecutionRequest(input *RetryStageExecutionInput) (req *request.Request, output *RetryStageExecutionOutput) { op := &request.Operation{ Name: opRetryStageExecution, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RetryStageExecutionInput{} } req = c.newRequest(op, input, output) output = &RetryStageExecutionOutput{} req.Data = output return } // RetryStageExecution API operation for AWS CodePipeline. // // Resumes the pipeline execution by retrying the last failed actions in a stage. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation RetryStageExecution for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * PipelineNotFoundException // The specified pipeline was specified in an invalid format or cannot be found. // // * StageNotFoundException // The specified stage was specified in an invalid format or cannot be found. // // * StageNotRetryableException // The specified stage can't be retried because the pipeline structure or stage // state changed after the stage was not completed; the stage contains no failed // actions; one or more actions are still in progress; or another retry attempt // is already in progress. // // * NotLatestPipelineExecutionException // The stage has failed in a later run of the pipeline and the pipelineExecutionId // associated with the request is out of date. // func (c *CodePipeline) RetryStageExecution(input *RetryStageExecutionInput) (*RetryStageExecutionOutput, error) { req, out := c.RetryStageExecutionRequest(input) err := req.Send() return out, err } const opStartPipelineExecution = "StartPipelineExecution" // StartPipelineExecutionRequest generates a "aws/request.Request" representing the // client's request for the StartPipelineExecution operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StartPipelineExecution for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StartPipelineExecution method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StartPipelineExecutionRequest method. // req, resp := client.StartPipelineExecutionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) StartPipelineExecutionRequest(input *StartPipelineExecutionInput) (req *request.Request, output *StartPipelineExecutionOutput) { op := &request.Operation{ Name: opStartPipelineExecution, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartPipelineExecutionInput{} } req = c.newRequest(op, input, output) output = &StartPipelineExecutionOutput{} req.Data = output return } // StartPipelineExecution API operation for AWS CodePipeline. // // Starts the specified pipeline. Specifically, it begins processing the latest // commit to the source location specified as part of the pipeline. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation StartPipelineExecution for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * PipelineNotFoundException // The specified pipeline was specified in an invalid format or cannot be found. // func (c *CodePipeline) StartPipelineExecution(input *StartPipelineExecutionInput) (*StartPipelineExecutionOutput, error) { req, out := c.StartPipelineExecutionRequest(input) err := req.Send() return out, err } const opUpdatePipeline = "UpdatePipeline" // UpdatePipelineRequest generates a "aws/request.Request" representing the // client's request for the UpdatePipeline operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdatePipeline for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdatePipeline method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdatePipelineRequest method. // req, resp := client.UpdatePipelineRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CodePipeline) UpdatePipelineRequest(input *UpdatePipelineInput) (req *request.Request, output *UpdatePipelineOutput) { op := &request.Operation{ Name: opUpdatePipeline, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdatePipelineInput{} } req = c.newRequest(op, input, output) output = &UpdatePipelineOutput{} req.Data = output return } // UpdatePipeline API operation for AWS CodePipeline. // // Updates a specified pipeline with edits or changes to its structure. Use // a JSON file with the pipeline structure in conjunction with UpdatePipeline // to provide the full structure of the pipeline. Updating the pipeline increases // the version number of the pipeline by 1. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS CodePipeline's // API operation UpdatePipeline for usage and error information. // // Returned Error Codes: // * ValidationException // The validation was specified in an invalid format. // // * InvalidStageDeclarationException // The specified stage declaration was specified in an invalid format. // // * InvalidActionDeclarationException // The specified action declaration was specified in an invalid format. // // * InvalidBlockerDeclarationException // Reserved for future use. // // * InvalidStructureException // The specified structure was specified in an invalid format. // func (c *CodePipeline) UpdatePipeline(input *UpdatePipelineInput) (*UpdatePipelineOutput, error) { req, out := c.UpdatePipelineRequest(input) err := req.Send() return out, err } // Represents an AWS session credentials object. These credentials are temporary // credentials that are issued by AWS Secure Token Service (STS). They can be // used to access input and output artifacts in the Amazon S3 bucket used to // store artifact for the pipeline in AWS CodePipeline. type AWSSessionCredentials struct { _ struct{} `type:"structure"` // The access key for the session. // // AccessKeyId is a required field AccessKeyId *string `locationName:"accessKeyId" type:"string" required:"true"` // The secret access key for the session. // // SecretAccessKey is a required field SecretAccessKey *string `locationName:"secretAccessKey" type:"string" required:"true"` // The token for the session. // // SessionToken is a required field SessionToken *string `locationName:"sessionToken" type:"string" required:"true"` } // String returns the string representation func (s AWSSessionCredentials) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AWSSessionCredentials) GoString() string { return s.String() } // Represents the input of an acknowledge job action. type AcknowledgeJobInput struct { _ struct{} `type:"structure"` // The unique system-generated ID of the job for which you want to confirm receipt. // // JobId is a required field JobId *string `locationName:"jobId" type:"string" required:"true"` // A system-generated random number that AWS CodePipeline uses to ensure that // the job is being worked on by only one job worker. This number must be returned // in the response. // // Nonce is a required field Nonce *string `locationName:"nonce" type:"string" required:"true"` } // String returns the string representation func (s AcknowledgeJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AcknowledgeJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AcknowledgeJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AcknowledgeJobInput"} if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.Nonce == nil { invalidParams.Add(request.NewErrParamRequired("Nonce")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of an acknowledge job action. type AcknowledgeJobOutput struct { _ struct{} `type:"structure"` // Whether the job worker has received the specified job. Status *string `locationName:"status" type:"string" enum:"JobStatus"` } // String returns the string representation func (s AcknowledgeJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AcknowledgeJobOutput) GoString() string { return s.String() } // Represents the input of an acknowledge third party job action. type AcknowledgeThirdPartyJobInput struct { _ struct{} `type:"structure"` // The clientToken portion of the clientId and clientToken pair used to verify // that the calling entity is allowed access to the job and its details. // // ClientToken is a required field ClientToken *string `locationName:"clientToken" type:"string" required:"true"` // The unique system-generated ID of the job. // // JobId is a required field JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"` // A system-generated random number that AWS CodePipeline uses to ensure that // the job is being worked on by only one job worker. This number must be returned // in the response. // // Nonce is a required field Nonce *string `locationName:"nonce" type:"string" required:"true"` } // String returns the string representation func (s AcknowledgeThirdPartyJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AcknowledgeThirdPartyJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AcknowledgeThirdPartyJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AcknowledgeThirdPartyJobInput"} if s.ClientToken == nil { invalidParams.Add(request.NewErrParamRequired("ClientToken")) } if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.JobId != nil && len(*s.JobId) < 1 { invalidParams.Add(request.NewErrParamMinLen("JobId", 1)) } if s.Nonce == nil { invalidParams.Add(request.NewErrParamRequired("Nonce")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of an acknowledge third party job action. type AcknowledgeThirdPartyJobOutput struct { _ struct{} `type:"structure"` // The status information for the third party job, if any. Status *string `locationName:"status" type:"string" enum:"JobStatus"` } // String returns the string representation func (s AcknowledgeThirdPartyJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AcknowledgeThirdPartyJobOutput) GoString() string { return s.String() } // Represents information about an action configuration. type ActionConfiguration struct { _ struct{} `type:"structure"` // The configuration data for the action. Configuration map[string]*string `locationName:"configuration" type:"map"` } // String returns the string representation func (s ActionConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActionConfiguration) GoString() string { return s.String() } // Represents information about an action configuration property. type ActionConfigurationProperty struct { _ struct{} `type:"structure"` // The description of the action configuration property that will be displayed // to users. Description *string `locationName:"description" min:"1" type:"string"` // Whether the configuration property is a key. // // Key is a required field Key *bool `locationName:"key" type:"boolean" required:"true"` // The name of the action configuration property. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // Indicates that the proprety will be used in conjunction with PollForJobs. // When creating a custom action, an action can have up to one queryable property. // If it has one, that property must be both required and not secret. // // If you create a pipeline with a custom action type, and that custom action // contains a queryable property, the value for that configuration property // is subject to additional restrictions. The value must be less than or equal // to twenty (20) characters. The value can contain only alphanumeric characters, // underscores, and hyphens. Queryable *bool `locationName:"queryable" type:"boolean"` // Whether the configuration property is a required value. // // Required is a required field Required *bool `locationName:"required" type:"boolean" required:"true"` // Whether the configuration property is secret. Secrets are hidden from all // calls except for GetJobDetails, GetThirdPartyJobDetails, PollForJobs, and // PollForThirdPartyJobs. // // When updating a pipeline, passing * * * * * without changing any other values // of the action will preserve the prior value of the secret. // // Secret is a required field Secret *bool `locationName:"secret" type:"boolean" required:"true"` // The type of the configuration property. Type *string `locationName:"type" type:"string" enum:"ActionConfigurationPropertyType"` } // String returns the string representation func (s ActionConfigurationProperty) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActionConfigurationProperty) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ActionConfigurationProperty) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ActionConfigurationProperty"} if s.Description != nil && len(*s.Description) < 1 { invalidParams.Add(request.NewErrParamMinLen("Description", 1)) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Required == nil { invalidParams.Add(request.NewErrParamRequired("Required")) } if s.Secret == nil { invalidParams.Add(request.NewErrParamRequired("Secret")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the context of an action within the stage of a pipeline to a job // worker. type ActionContext struct { _ struct{} `type:"structure"` // The name of the action within the context of a job. Name *string `locationName:"name" min:"1" type:"string"` } // String returns the string representation func (s ActionContext) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActionContext) GoString() string { return s.String() } // Represents information about an action declaration. type ActionDeclaration struct { _ struct{} `type:"structure"` // The configuration information for the action type. // // ActionTypeId is a required field ActionTypeId *ActionTypeId `locationName:"actionTypeId" type:"structure" required:"true"` // The action declaration's configuration. Configuration map[string]*string `locationName:"configuration" type:"map"` // The name or ID of the artifact consumed by the action, such as a test or // build artifact. InputArtifacts []*InputArtifact `locationName:"inputArtifacts" type:"list"` // The action declaration's name. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // The name or ID of the result of the action declaration, such as a test or // build artifact. OutputArtifacts []*OutputArtifact `locationName:"outputArtifacts" type:"list"` // The ARN of the IAM service role that will perform the declared action. This // is assumed through the roleArn for the pipeline. RoleArn *string `locationName:"roleArn" type:"string"` // The order in which actions are run. RunOrder *int64 `locationName:"runOrder" min:"1" type:"integer"` } // String returns the string representation func (s ActionDeclaration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActionDeclaration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ActionDeclaration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ActionDeclaration"} if s.ActionTypeId == nil { invalidParams.Add(request.NewErrParamRequired("ActionTypeId")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.RunOrder != nil && *s.RunOrder < 1 { invalidParams.Add(request.NewErrParamMinValue("RunOrder", 1)) } if s.ActionTypeId != nil { if err := s.ActionTypeId.Validate(); err != nil { invalidParams.AddNested("ActionTypeId", err.(request.ErrInvalidParams)) } } if s.InputArtifacts != nil { for i, v := range s.InputArtifacts { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputArtifacts", i), err.(request.ErrInvalidParams)) } } } if s.OutputArtifacts != nil { for i, v := range s.OutputArtifacts { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OutputArtifacts", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents information about the run of an action. type ActionExecution struct { _ struct{} `type:"structure"` // The details of an error returned by a URL external to AWS. ErrorDetails *ErrorDetails `locationName:"errorDetails" type:"structure"` // The external ID of the run of the action. ExternalExecutionId *string `locationName:"externalExecutionId" min:"1" type:"string"` // The URL of a resource external to AWS that will be used when running the // action, for example an external repository URL. ExternalExecutionUrl *string `locationName:"externalExecutionUrl" min:"1" type:"string"` // The last status change of the action. LastStatusChange *time.Time `locationName:"lastStatusChange" type:"timestamp" timestampFormat:"unix"` // The ARN of the user who last changed the pipeline. LastUpdatedBy *string `locationName:"lastUpdatedBy" type:"string"` // A percentage of completeness of the action as it runs. PercentComplete *int64 `locationName:"percentComplete" type:"integer"` // The status of the action, or for a completed action, the last status of the // action. Status *string `locationName:"status" type:"string" enum:"ActionExecutionStatus"` // A summary of the run of the action. Summary *string `locationName:"summary" type:"string"` // The system-generated token used to identify a unique approval request. The // token for each open approval request can be obtained using the GetPipelineState // command and is used to validate that the approval request corresponding to // this token is still valid. Token *string `locationName:"token" type:"string"` } // String returns the string representation func (s ActionExecution) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActionExecution) GoString() string { return s.String() } // Represents information about the version (or revision) of an action. type ActionRevision struct { _ struct{} `type:"structure"` // The date and time when the most recent version of the action was created, // in timestamp format. // // Created is a required field Created *time.Time `locationName:"created" type:"timestamp" timestampFormat:"unix" required:"true"` // The unique identifier of the change that set the state to this revision, // for example a deployment ID or timestamp. // // RevisionChangeId is a required field RevisionChangeId *string `locationName:"revisionChangeId" min:"1" type:"string" required:"true"` // The system-generated unique ID that identifies the revision number of the // action. // // RevisionId is a required field RevisionId *string `locationName:"revisionId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s ActionRevision) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActionRevision) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ActionRevision) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ActionRevision"} if s.Created == nil { invalidParams.Add(request.NewErrParamRequired("Created")) } if s.RevisionChangeId == nil { invalidParams.Add(request.NewErrParamRequired("RevisionChangeId")) } if s.RevisionChangeId != nil && len(*s.RevisionChangeId) < 1 { invalidParams.Add(request.NewErrParamMinLen("RevisionChangeId", 1)) } if s.RevisionId == nil { invalidParams.Add(request.NewErrParamRequired("RevisionId")) } if s.RevisionId != nil && len(*s.RevisionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("RevisionId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents information about the state of an action. type ActionState struct { _ struct{} `type:"structure"` // The name of the action. ActionName *string `locationName:"actionName" min:"1" type:"string"` // Represents information about the version (or revision) of an action. CurrentRevision *ActionRevision `locationName:"currentRevision" type:"structure"` // A URL link for more information about the state of the action, such as a // deployment group details page. EntityUrl *string `locationName:"entityUrl" min:"1" type:"string"` // Represents information about the run of an action. LatestExecution *ActionExecution `locationName:"latestExecution" type:"structure"` // A URL link for more information about the revision, such as a commit details // page. RevisionUrl *string `locationName:"revisionUrl" min:"1" type:"string"` } // String returns the string representation func (s ActionState) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActionState) GoString() string { return s.String() } // Returns information about the details of an action type. type ActionType struct { _ struct{} `type:"structure"` // The configuration properties for the action type. ActionConfigurationProperties []*ActionConfigurationProperty `locationName:"actionConfigurationProperties" type:"list"` // Represents information about an action type. // // Id is a required field Id *ActionTypeId `locationName:"id" type:"structure" required:"true"` // The details of the input artifact for the action, such as its commit ID. // // InputArtifactDetails is a required field InputArtifactDetails *ArtifactDetails `locationName:"inputArtifactDetails" type:"structure" required:"true"` // The details of the output artifact of the action, such as its commit ID. // // OutputArtifactDetails is a required field OutputArtifactDetails *ArtifactDetails `locationName:"outputArtifactDetails" type:"structure" required:"true"` // The settings for the action type. Settings *ActionTypeSettings `locationName:"settings" type:"structure"` } // String returns the string representation func (s ActionType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActionType) GoString() string { return s.String() } // Represents information about an action type. type ActionTypeId struct { _ struct{} `type:"structure"` // A category defines what kind of action can be taken in the stage, and constrains // the provider type for the action. Valid categories are limited to one of // the values below. // // Category is a required field Category *string `locationName:"category" type:"string" required:"true" enum:"ActionCategory"` // The creator of the action being called. // // Owner is a required field Owner *string `locationName:"owner" type:"string" required:"true" enum:"ActionOwner"` // The provider of the service being called by the action. Valid providers are // determined by the action category. For example, an action in the Deploy category // type might have a provider of AWS CodeDeploy, which would be specified as // CodeDeploy. // // Provider is a required field Provider *string `locationName:"provider" min:"1" type:"string" required:"true"` // A string that identifies the action type. // // Version is a required field Version *string `locationName:"version" min:"1" type:"string" required:"true"` } // String returns the string representation func (s ActionTypeId) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActionTypeId) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ActionTypeId) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ActionTypeId"} if s.Category == nil { invalidParams.Add(request.NewErrParamRequired("Category")) } if s.Owner == nil { invalidParams.Add(request.NewErrParamRequired("Owner")) } if s.Provider == nil { invalidParams.Add(request.NewErrParamRequired("Provider")) } if s.Provider != nil && len(*s.Provider) < 1 { invalidParams.Add(request.NewErrParamMinLen("Provider", 1)) } if s.Version == nil { invalidParams.Add(request.NewErrParamRequired("Version")) } if s.Version != nil && len(*s.Version) < 1 { invalidParams.Add(request.NewErrParamMinLen("Version", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returns information about the settings for an action type. type ActionTypeSettings struct { _ struct{} `type:"structure"` // The URL returned to the AWS CodePipeline console that provides a deep link // to the resources of the external system, such as the configuration page for // an AWS CodeDeploy deployment group. This link is provided as part of the // action display within the pipeline. EntityUrlTemplate *string `locationName:"entityUrlTemplate" min:"1" type:"string"` // The URL returned to the AWS CodePipeline console that contains a link to // the top-level landing page for the external system, such as console page // for AWS CodeDeploy. This link is shown on the pipeline view page in the AWS // CodePipeline console and provides a link to the execution entity of the external // action. ExecutionUrlTemplate *string `locationName:"executionUrlTemplate" min:"1" type:"string"` // The URL returned to the AWS CodePipeline console that contains a link to // the page where customers can update or change the configuration of the external // action. RevisionUrlTemplate *string `locationName:"revisionUrlTemplate" min:"1" type:"string"` // The URL of a sign-up page where users can sign up for an external service // and perform initial configuration of the action provided by that service. ThirdPartyConfigurationUrl *string `locationName:"thirdPartyConfigurationUrl" min:"1" type:"string"` } // String returns the string representation func (s ActionTypeSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActionTypeSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ActionTypeSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ActionTypeSettings"} if s.EntityUrlTemplate != nil && len(*s.EntityUrlTemplate) < 1 { invalidParams.Add(request.NewErrParamMinLen("EntityUrlTemplate", 1)) } if s.ExecutionUrlTemplate != nil && len(*s.ExecutionUrlTemplate) < 1 { invalidParams.Add(request.NewErrParamMinLen("ExecutionUrlTemplate", 1)) } if s.RevisionUrlTemplate != nil && len(*s.RevisionUrlTemplate) < 1 { invalidParams.Add(request.NewErrParamMinLen("RevisionUrlTemplate", 1)) } if s.ThirdPartyConfigurationUrl != nil && len(*s.ThirdPartyConfigurationUrl) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThirdPartyConfigurationUrl", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents information about the result of an approval request. type ApprovalResult struct { _ struct{} `type:"structure"` // The response submitted by a reviewer assigned to an approval action request. // // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"ApprovalStatus"` // The summary of the current status of the approval request. // // Summary is a required field Summary *string `locationName:"summary" type:"string" required:"true"` } // String returns the string representation func (s ApprovalResult) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ApprovalResult) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ApprovalResult) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ApprovalResult"} if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if s.Summary == nil { invalidParams.Add(request.NewErrParamRequired("Summary")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents information about an artifact that will be worked upon by actions // in the pipeline. type Artifact struct { _ struct{} `type:"structure"` // The location of an artifact. Location *ArtifactLocation `locationName:"location" type:"structure"` // The artifact's name. Name *string `locationName:"name" min:"1" type:"string"` // The artifact's revision ID. Depending on the type of object, this could be // a commit ID (GitHub) or a revision ID (Amazon S3). Revision *string `locationName:"revision" min:"1" type:"string"` } // String returns the string representation func (s Artifact) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Artifact) GoString() string { return s.String() } // Returns information about the details of an artifact. type ArtifactDetails struct { _ struct{} `type:"structure"` // The maximum number of artifacts allowed for the action type. // // MaximumCount is a required field MaximumCount *int64 `locationName:"maximumCount" type:"integer" required:"true"` // The minimum number of artifacts allowed for the action type. // // MinimumCount is a required field MinimumCount *int64 `locationName:"minimumCount" type:"integer" required:"true"` } // String returns the string representation func (s ArtifactDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ArtifactDetails) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ArtifactDetails) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ArtifactDetails"} if s.MaximumCount == nil { invalidParams.Add(request.NewErrParamRequired("MaximumCount")) } if s.MinimumCount == nil { invalidParams.Add(request.NewErrParamRequired("MinimumCount")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents information about the location of an artifact. type ArtifactLocation struct { _ struct{} `type:"structure"` // The Amazon S3 bucket that contains the artifact. S3Location *S3ArtifactLocation `locationName:"s3Location" type:"structure"` // The type of artifact in the location. Type *string `locationName:"type" type:"string" enum:"ArtifactLocationType"` } // String returns the string representation func (s ArtifactLocation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ArtifactLocation) GoString() string { return s.String() } // Represents revision details of an artifact. type ArtifactRevision struct { _ struct{} `type:"structure"` // The date and time when the most recent revision of the artifact was created, // in timestamp format. Created *time.Time `locationName:"created" type:"timestamp" timestampFormat:"unix"` // The name of an artifact. This name might be system-generated, such as "MyApp", // or might be defined by the user when an action is created. Name *string `locationName:"name" min:"1" type:"string"` // An additional identifier for a revision, such as a commit date or, for artifacts // stored in Amazon S3 buckets, the ETag value. RevisionChangeIdentifier *string `locationName:"revisionChangeIdentifier" min:"1" type:"string"` // The revision ID of the artifact. RevisionId *string `locationName:"revisionId" min:"1" type:"string"` // Summary information about the most recent revision of the artifact. For GitHub // and AWS CodeCommit repositories, the commit message. For Amazon S3 buckets // or actions, the user-provided content of a codepipeline-artifact-revision-summary // key specified in the object metadata. RevisionSummary *string `locationName:"revisionSummary" min:"1" type:"string"` // The commit ID for the artifact revision. For artifacts stored in GitHub or // AWS CodeCommit repositories, the commit ID is linked to a commit details // page. RevisionUrl *string `locationName:"revisionUrl" min:"1" type:"string"` } // String returns the string representation func (s ArtifactRevision) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ArtifactRevision) GoString() string { return s.String() } // The Amazon S3 location where artifacts are stored for the pipeline. If this // Amazon S3 bucket is created manually, it must meet the requirements for AWS // CodePipeline. For more information, see the Concepts (http://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#CPS3Bucket). type ArtifactStore struct { _ struct{} `type:"structure"` // The encryption key used to encrypt the data in the artifact store, such as // an AWS Key Management Service (AWS KMS) key. If this is undefined, the default // key for Amazon S3 is used. EncryptionKey *EncryptionKey `locationName:"encryptionKey" type:"structure"` // The location for storing the artifacts for a pipeline, such as an S3 bucket // or folder. // // Location is a required field Location *string `locationName:"location" min:"3" type:"string" required:"true"` // The type of the artifact store, such as S3. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"ArtifactStoreType"` } // String returns the string representation func (s ArtifactStore) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ArtifactStore) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ArtifactStore) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ArtifactStore"} if s.Location == nil { invalidParams.Add(request.NewErrParamRequired("Location")) } if s.Location != nil && len(*s.Location) < 3 { invalidParams.Add(request.NewErrParamMinLen("Location", 3)) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if s.EncryptionKey != nil { if err := s.EncryptionKey.Validate(); err != nil { invalidParams.AddNested("EncryptionKey", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Reserved for future use. type BlockerDeclaration struct { _ struct{} `type:"structure"` // Reserved for future use. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // Reserved for future use. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"BlockerType"` } // String returns the string representation func (s BlockerDeclaration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BlockerDeclaration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BlockerDeclaration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BlockerDeclaration"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the input of a create custom action operation. type CreateCustomActionTypeInput struct { _ struct{} `type:"structure"` // The category of the custom action, such as a build action or a test action. // // Although Source and Approval are listed as valid values, they are not currently // functional. These values are reserved for future use. // // Category is a required field Category *string `locationName:"category" type:"string" required:"true" enum:"ActionCategory"` // The configuration properties for the custom action. // // You can refer to a name in the configuration properties of the custom action // within the URL templates by following the format of {Config:name}, as long // as the configuration property is both required and not secret. For more information, // see Create a Custom Action for a Pipeline (http://docs.aws.amazon.com/codepipeline/latest/userguide/how-to-create-custom-action.html). ConfigurationProperties []*ActionConfigurationProperty `locationName:"configurationProperties" type:"list"` // Returns information about the details of an artifact. // // InputArtifactDetails is a required field InputArtifactDetails *ArtifactDetails `locationName:"inputArtifactDetails" type:"structure" required:"true"` // Returns information about the details of an artifact. // // OutputArtifactDetails is a required field OutputArtifactDetails *ArtifactDetails `locationName:"outputArtifactDetails" type:"structure" required:"true"` // The provider of the service used in the custom action, such as AWS CodeDeploy. // // Provider is a required field Provider *string `locationName:"provider" min:"1" type:"string" required:"true"` // Returns information about the settings for an action type. Settings *ActionTypeSettings `locationName:"settings" type:"structure"` // The version identifier of the custom action. // // Version is a required field Version *string `locationName:"version" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateCustomActionTypeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCustomActionTypeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateCustomActionTypeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateCustomActionTypeInput"} if s.Category == nil { invalidParams.Add(request.NewErrParamRequired("Category")) } if s.InputArtifactDetails == nil { invalidParams.Add(request.NewErrParamRequired("InputArtifactDetails")) } if s.OutputArtifactDetails == nil { invalidParams.Add(request.NewErrParamRequired("OutputArtifactDetails")) } if s.Provider == nil { invalidParams.Add(request.NewErrParamRequired("Provider")) } if s.Provider != nil && len(*s.Provider) < 1 { invalidParams.Add(request.NewErrParamMinLen("Provider", 1)) } if s.Version == nil { invalidParams.Add(request.NewErrParamRequired("Version")) } if s.Version != nil && len(*s.Version) < 1 { invalidParams.Add(request.NewErrParamMinLen("Version", 1)) } if s.ConfigurationProperties != nil { for i, v := range s.ConfigurationProperties { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ConfigurationProperties", i), err.(request.ErrInvalidParams)) } } } if s.InputArtifactDetails != nil { if err := s.InputArtifactDetails.Validate(); err != nil { invalidParams.AddNested("InputArtifactDetails", err.(request.ErrInvalidParams)) } } if s.OutputArtifactDetails != nil { if err := s.OutputArtifactDetails.Validate(); err != nil { invalidParams.AddNested("OutputArtifactDetails", err.(request.ErrInvalidParams)) } } if s.Settings != nil { if err := s.Settings.Validate(); err != nil { invalidParams.AddNested("Settings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a create custom action operation. type CreateCustomActionTypeOutput struct { _ struct{} `type:"structure"` // Returns information about the details of an action type. // // ActionType is a required field ActionType *ActionType `locationName:"actionType" type:"structure" required:"true"` } // String returns the string representation func (s CreateCustomActionTypeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCustomActionTypeOutput) GoString() string { return s.String() } // Represents the input of a create pipeline action. type CreatePipelineInput struct { _ struct{} `type:"structure"` // Represents the structure of actions and stages to be performed in the pipeline. // // Pipeline is a required field Pipeline *PipelineDeclaration `locationName:"pipeline" type:"structure" required:"true"` } // String returns the string representation func (s CreatePipelineInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePipelineInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePipelineInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePipelineInput"} if s.Pipeline == nil { invalidParams.Add(request.NewErrParamRequired("Pipeline")) } if s.Pipeline != nil { if err := s.Pipeline.Validate(); err != nil { invalidParams.AddNested("Pipeline", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a create pipeline action. type CreatePipelineOutput struct { _ struct{} `type:"structure"` // Represents the structure of actions and stages to be performed in the pipeline. Pipeline *PipelineDeclaration `locationName:"pipeline" type:"structure"` } // String returns the string representation func (s CreatePipelineOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePipelineOutput) GoString() string { return s.String() } // Represents information about a current revision. type CurrentRevision struct { _ struct{} `type:"structure"` // The change identifier for the current revision. // // ChangeIdentifier is a required field ChangeIdentifier *string `locationName:"changeIdentifier" min:"1" type:"string" required:"true"` // The date and time when the most recent revision of the artifact was created, // in timestamp format. Created *time.Time `locationName:"created" type:"timestamp" timestampFormat:"unix"` // The revision ID of the current version of an artifact. // // Revision is a required field Revision *string `locationName:"revision" min:"1" type:"string" required:"true"` // The summary of the most recent revision of the artifact. RevisionSummary *string `locationName:"revisionSummary" min:"1" type:"string"` } // String returns the string representation func (s CurrentRevision) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CurrentRevision) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CurrentRevision) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CurrentRevision"} if s.ChangeIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ChangeIdentifier")) } if s.ChangeIdentifier != nil && len(*s.ChangeIdentifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeIdentifier", 1)) } if s.Revision == nil { invalidParams.Add(request.NewErrParamRequired("Revision")) } if s.Revision != nil && len(*s.Revision) < 1 { invalidParams.Add(request.NewErrParamMinLen("Revision", 1)) } if s.RevisionSummary != nil && len(*s.RevisionSummary) < 1 { invalidParams.Add(request.NewErrParamMinLen("RevisionSummary", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the input of a delete custom action operation. The custom action // will be marked as deleted. type DeleteCustomActionTypeInput struct { _ struct{} `type:"structure"` // The category of the custom action that you want to delete, such as source // or deploy. // // Category is a required field Category *string `locationName:"category" type:"string" required:"true" enum:"ActionCategory"` // The provider of the service used in the custom action, such as AWS CodeDeploy. // // Provider is a required field Provider *string `locationName:"provider" min:"1" type:"string" required:"true"` // The version of the custom action to delete. // // Version is a required field Version *string `locationName:"version" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteCustomActionTypeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCustomActionTypeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteCustomActionTypeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteCustomActionTypeInput"} if s.Category == nil { invalidParams.Add(request.NewErrParamRequired("Category")) } if s.Provider == nil { invalidParams.Add(request.NewErrParamRequired("Provider")) } if s.Provider != nil && len(*s.Provider) < 1 { invalidParams.Add(request.NewErrParamMinLen("Provider", 1)) } if s.Version == nil { invalidParams.Add(request.NewErrParamRequired("Version")) } if s.Version != nil && len(*s.Version) < 1 { invalidParams.Add(request.NewErrParamMinLen("Version", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteCustomActionTypeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteCustomActionTypeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCustomActionTypeOutput) GoString() string { return s.String() } // Represents the input of a delete pipeline action. type DeletePipelineInput struct { _ struct{} `type:"structure"` // The name of the pipeline to be deleted. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeletePipelineInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePipelineInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeletePipelineInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeletePipelineInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeletePipelineOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeletePipelineOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePipelineOutput) GoString() string { return s.String() } // Represents the input of a disable stage transition input action. type DisableStageTransitionInput struct { _ struct{} `type:"structure"` // The name of the pipeline in which you want to disable the flow of artifacts // from one stage to another. // // PipelineName is a required field PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"` // The reason given to the user why a stage is disabled, such as waiting for // manual approval or manual tests. This message is displayed in the pipeline // console UI. // // Reason is a required field Reason *string `locationName:"reason" min:"1" type:"string" required:"true"` // The name of the stage where you want to disable the inbound or outbound transition // of artifacts. // // StageName is a required field StageName *string `locationName:"stageName" min:"1" type:"string" required:"true"` // Specifies whether artifacts will be prevented from transitioning into the // stage and being processed by the actions in that stage (inbound), or prevented // from transitioning from the stage after they have been processed by the actions // in that stage (outbound). // // TransitionType is a required field TransitionType *string `locationName:"transitionType" type:"string" required:"true" enum:"StageTransitionType"` } // String returns the string representation func (s DisableStageTransitionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableStageTransitionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisableStageTransitionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisableStageTransitionInput"} if s.PipelineName == nil { invalidParams.Add(request.NewErrParamRequired("PipelineName")) } if s.PipelineName != nil && len(*s.PipelineName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1)) } if s.Reason == nil { invalidParams.Add(request.NewErrParamRequired("Reason")) } if s.Reason != nil && len(*s.Reason) < 1 { invalidParams.Add(request.NewErrParamMinLen("Reason", 1)) } if s.StageName == nil { invalidParams.Add(request.NewErrParamRequired("StageName")) } if s.StageName != nil && len(*s.StageName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StageName", 1)) } if s.TransitionType == nil { invalidParams.Add(request.NewErrParamRequired("TransitionType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DisableStageTransitionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DisableStageTransitionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableStageTransitionOutput) GoString() string { return s.String() } // Represents the input of an enable stage transition action. type EnableStageTransitionInput struct { _ struct{} `type:"structure"` // The name of the pipeline in which you want to enable the flow of artifacts // from one stage to another. // // PipelineName is a required field PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"` // The name of the stage where you want to enable the transition of artifacts, // either into the stage (inbound) or from that stage to the next stage (outbound). // // StageName is a required field StageName *string `locationName:"stageName" min:"1" type:"string" required:"true"` // Specifies whether artifacts will be allowed to enter the stage and be processed // by the actions in that stage (inbound) or whether already-processed artifacts // will be allowed to transition to the next stage (outbound). // // TransitionType is a required field TransitionType *string `locationName:"transitionType" type:"string" required:"true" enum:"StageTransitionType"` } // String returns the string representation func (s EnableStageTransitionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableStageTransitionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableStageTransitionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableStageTransitionInput"} if s.PipelineName == nil { invalidParams.Add(request.NewErrParamRequired("PipelineName")) } if s.PipelineName != nil && len(*s.PipelineName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1)) } if s.StageName == nil { invalidParams.Add(request.NewErrParamRequired("StageName")) } if s.StageName != nil && len(*s.StageName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StageName", 1)) } if s.TransitionType == nil { invalidParams.Add(request.NewErrParamRequired("TransitionType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type EnableStageTransitionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s EnableStageTransitionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableStageTransitionOutput) GoString() string { return s.String() } // Represents information about the key used to encrypt data in the artifact // store, such as an AWS Key Management Service (AWS KMS) key. type EncryptionKey struct { _ struct{} `type:"structure"` // The ID used to identify the key. For an AWS KMS key, this is the key ID or // key ARN. // // Id is a required field Id *string `locationName:"id" min:"1" type:"string" required:"true"` // The type of encryption key, such as an AWS Key Management Service (AWS KMS) // key. When creating or updating a pipeline, the value must be set to 'KMS'. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"EncryptionKeyType"` } // String returns the string representation func (s EncryptionKey) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EncryptionKey) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EncryptionKey) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EncryptionKey"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents information about an error in AWS CodePipeline. type ErrorDetails struct { _ struct{} `type:"structure"` // The system ID or error number code of the error. Code *string `locationName:"code" type:"string"` // The text of the error message. Message *string `locationName:"message" type:"string"` } // String returns the string representation func (s ErrorDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ErrorDetails) GoString() string { return s.String() } // The details of the actions taken and results produced on an artifact as it // passes through stages in the pipeline. type ExecutionDetails struct { _ struct{} `type:"structure"` // The system-generated unique ID of this action used to identify this job worker // in any external systems, such as AWS CodeDeploy. ExternalExecutionId *string `locationName:"externalExecutionId" min:"1" type:"string"` // The percentage of work completed on the action, represented on a scale of // zero to one hundred percent. PercentComplete *int64 `locationName:"percentComplete" type:"integer"` // The summary of the current status of the actions. Summary *string `locationName:"summary" type:"string"` } // String returns the string representation func (s ExecutionDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExecutionDetails) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ExecutionDetails) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ExecutionDetails"} if s.ExternalExecutionId != nil && len(*s.ExternalExecutionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ExternalExecutionId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents information about failure details. type FailureDetails struct { _ struct{} `type:"structure"` // The external ID of the run of the action that failed. ExternalExecutionId *string `locationName:"externalExecutionId" min:"1" type:"string"` // The message about the failure. // // Message is a required field Message *string `locationName:"message" type:"string" required:"true"` // The type of the failure. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"FailureType"` } // String returns the string representation func (s FailureDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FailureDetails) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *FailureDetails) Validate() error { invalidParams := request.ErrInvalidParams{Context: "FailureDetails"} if s.ExternalExecutionId != nil && len(*s.ExternalExecutionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ExternalExecutionId", 1)) } if s.Message == nil { invalidParams.Add(request.NewErrParamRequired("Message")) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the input of a get job details action. type GetJobDetailsInput struct { _ struct{} `type:"structure"` // The unique system-generated ID for the job. // // JobId is a required field JobId *string `locationName:"jobId" type:"string" required:"true"` } // String returns the string representation func (s GetJobDetailsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetJobDetailsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetJobDetailsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetJobDetailsInput"} if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a get job details action. type GetJobDetailsOutput struct { _ struct{} `type:"structure"` // The details of the job. // // If AWSSessionCredentials is used, a long-running job can call GetJobDetails // again to obtain new credentials. JobDetails *JobDetails `locationName:"jobDetails" type:"structure"` } // String returns the string representation func (s GetJobDetailsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetJobDetailsOutput) GoString() string { return s.String() } // Represents the input of a get pipeline execution action. type GetPipelineExecutionInput struct { _ struct{} `type:"structure"` // The ID of the pipeline execution about which you want to get execution details. // // PipelineExecutionId is a required field PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string" required:"true"` // The name of the pipeline about which you want to get execution details. // // PipelineName is a required field PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetPipelineExecutionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPipelineExecutionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetPipelineExecutionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetPipelineExecutionInput"} if s.PipelineExecutionId == nil { invalidParams.Add(request.NewErrParamRequired("PipelineExecutionId")) } if s.PipelineName == nil { invalidParams.Add(request.NewErrParamRequired("PipelineName")) } if s.PipelineName != nil && len(*s.PipelineName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a get pipeline execution action. type GetPipelineExecutionOutput struct { _ struct{} `type:"structure"` // Represents information about the execution of a pipeline. PipelineExecution *PipelineExecution `locationName:"pipelineExecution" type:"structure"` } // String returns the string representation func (s GetPipelineExecutionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPipelineExecutionOutput) GoString() string { return s.String() } // Represents the input of a get pipeline action. type GetPipelineInput struct { _ struct{} `type:"structure"` // The name of the pipeline for which you want to get information. Pipeline // names must be unique under an Amazon Web Services (AWS) user account. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // The version number of the pipeline. If you do not specify a version, defaults // to the most current version. Version *int64 `locationName:"version" min:"1" type:"integer"` } // String returns the string representation func (s GetPipelineInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPipelineInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetPipelineInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetPipelineInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Version != nil && *s.Version < 1 { invalidParams.Add(request.NewErrParamMinValue("Version", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a get pipeline action. type GetPipelineOutput struct { _ struct{} `type:"structure"` // Represents the structure of actions and stages to be performed in the pipeline. Pipeline *PipelineDeclaration `locationName:"pipeline" type:"structure"` } // String returns the string representation func (s GetPipelineOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPipelineOutput) GoString() string { return s.String() } // Represents the input of a get pipeline state action. type GetPipelineStateInput struct { _ struct{} `type:"structure"` // The name of the pipeline about which you want to get information. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetPipelineStateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPipelineStateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetPipelineStateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetPipelineStateInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a get pipeline state action. type GetPipelineStateOutput struct { _ struct{} `type:"structure"` // The date and time the pipeline was created, in timestamp format. Created *time.Time `locationName:"created" type:"timestamp" timestampFormat:"unix"` // The name of the pipeline for which you want to get the state. PipelineName *string `locationName:"pipelineName" min:"1" type:"string"` // The version number of the pipeline. // // A newly-created pipeline is always assigned a version number of 1. PipelineVersion *int64 `locationName:"pipelineVersion" min:"1" type:"integer"` // A list of the pipeline stage output information, including stage name, state, // most recent run details, whether the stage is disabled, and other data. StageStates []*StageState `locationName:"stageStates" type:"list"` // The date and time the pipeline was last updated, in timestamp format. Updated *time.Time `locationName:"updated" type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s GetPipelineStateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPipelineStateOutput) GoString() string { return s.String() } // Represents the input of a get third party job details action. type GetThirdPartyJobDetailsInput struct { _ struct{} `type:"structure"` // The clientToken portion of the clientId and clientToken pair used to verify // that the calling entity is allowed access to the job and its details. // // ClientToken is a required field ClientToken *string `locationName:"clientToken" type:"string" required:"true"` // The unique system-generated ID used for identifying the job. // // JobId is a required field JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetThirdPartyJobDetailsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetThirdPartyJobDetailsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetThirdPartyJobDetailsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetThirdPartyJobDetailsInput"} if s.ClientToken == nil { invalidParams.Add(request.NewErrParamRequired("ClientToken")) } if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.JobId != nil && len(*s.JobId) < 1 { invalidParams.Add(request.NewErrParamMinLen("JobId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a get third party job details action. type GetThirdPartyJobDetailsOutput struct { _ struct{} `type:"structure"` // The details of the job, including any protected values defined for the job. JobDetails *ThirdPartyJobDetails `locationName:"jobDetails" type:"structure"` } // String returns the string representation func (s GetThirdPartyJobDetailsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetThirdPartyJobDetailsOutput) GoString() string { return s.String() } // Represents information about an artifact to be worked on, such as a test // or build artifact. type InputArtifact struct { _ struct{} `type:"structure"` // The name of the artifact to be worked on, for example, "My App". // // The input artifact of an action must exactly match the output artifact declared // in a preceding action, but the input artifact does not have to be the next // action in strict sequence from the action that provided the output artifact. // Actions in parallel can declare different output artifacts, which are in // turn consumed by different following actions. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` } // String returns the string representation func (s InputArtifact) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InputArtifact) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InputArtifact) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InputArtifact"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents information about a job. type Job struct { _ struct{} `type:"structure"` // The ID of the AWS account to use when performing the job. AccountId *string `locationName:"accountId" type:"string"` // Additional data about a job. Data *JobData `locationName:"data" type:"structure"` // The unique system-generated ID of the job. Id *string `locationName:"id" type:"string"` // A system-generated random number that AWS CodePipeline uses to ensure that // the job is being worked on by only one job worker. This number must be returned // in the response. Nonce *string `locationName:"nonce" type:"string"` } // String returns the string representation func (s Job) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Job) GoString() string { return s.String() } // Represents additional information about a job required for a job worker to // complete the job. type JobData struct { _ struct{} `type:"structure"` // Represents information about an action configuration. ActionConfiguration *ActionConfiguration `locationName:"actionConfiguration" type:"structure"` // Represents information about an action type. ActionTypeId *ActionTypeId `locationName:"actionTypeId" type:"structure"` // Represents an AWS session credentials object. These credentials are temporary // credentials that are issued by AWS Secure Token Service (STS). They can be // used to access input and output artifacts in the Amazon S3 bucket used to // store artifact for the pipeline in AWS CodePipeline. ArtifactCredentials *AWSSessionCredentials `locationName:"artifactCredentials" type:"structure"` // A system-generated token, such as a AWS CodeDeploy deployment ID, that a // job requires in order to continue the job asynchronously. ContinuationToken *string `locationName:"continuationToken" type:"string"` // Represents information about the key used to encrypt data in the artifact // store, such as an AWS Key Management Service (AWS KMS) key. EncryptionKey *EncryptionKey `locationName:"encryptionKey" type:"structure"` // The artifact supplied to the job. InputArtifacts []*Artifact `locationName:"inputArtifacts" type:"list"` // The output of the job. OutputArtifacts []*Artifact `locationName:"outputArtifacts" type:"list"` // Represents information about a pipeline to a job worker. PipelineContext *PipelineContext `locationName:"pipelineContext" type:"structure"` } // String returns the string representation func (s JobData) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobData) GoString() string { return s.String() } // Represents information about the details of a job. type JobDetails struct { _ struct{} `type:"structure"` // The AWS account ID associated with the job. AccountId *string `locationName:"accountId" type:"string"` // Represents additional information about a job required for a job worker to // complete the job. Data *JobData `locationName:"data" type:"structure"` // The unique system-generated ID of the job. Id *string `locationName:"id" type:"string"` } // String returns the string representation func (s JobDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobDetails) GoString() string { return s.String() } // Represents the input of a list action types action. type ListActionTypesInput struct { _ struct{} `type:"structure"` // Filters the list of action types to those created by a specified entity. ActionOwnerFilter *string `locationName:"actionOwnerFilter" type:"string" enum:"ActionOwner"` // An identifier that was returned from the previous list action types call, // which can be used to return the next set of action types in the list. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListActionTypesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListActionTypesInput) GoString() string { return s.String() } // Represents the output of a list action types action. type ListActionTypesOutput struct { _ struct{} `type:"structure"` // Provides details of the action types. // // ActionTypes is a required field ActionTypes []*ActionType `locationName:"actionTypes" type:"list" required:"true"` // If the amount of returned information is significantly large, an identifier // is also returned which can be used in a subsequent list action types call // to return the next set of action types in the list. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListActionTypesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListActionTypesOutput) GoString() string { return s.String() } // Represents the input of a list pipelines action. type ListPipelinesInput struct { _ struct{} `type:"structure"` // An identifier that was returned from the previous list pipelines call, which // can be used to return the next set of pipelines in the list. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListPipelinesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPipelinesInput) GoString() string { return s.String() } // Represents the output of a list pipelines action. type ListPipelinesOutput struct { _ struct{} `type:"structure"` // If the amount of returned information is significantly large, an identifier // is also returned which can be used in a subsequent list pipelines call to // return the next set of pipelines in the list. NextToken *string `locationName:"nextToken" type:"string"` // The list of pipelines. Pipelines []*PipelineSummary `locationName:"pipelines" type:"list"` } // String returns the string representation func (s ListPipelinesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPipelinesOutput) GoString() string { return s.String() } // Represents information about the output of an action. type OutputArtifact struct { _ struct{} `type:"structure"` // The name of the output of an artifact, such as "My App". // // The input artifact of an action must exactly match the output artifact declared // in a preceding action, but the input artifact does not have to be the next // action in strict sequence from the action that provided the output artifact. // Actions in parallel can declare different output artifacts, which are in // turn consumed by different following actions. // // Output artifact names must be unique within a pipeline. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` } // String returns the string representation func (s OutputArtifact) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OutputArtifact) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *OutputArtifact) Validate() error { invalidParams := request.ErrInvalidParams{Context: "OutputArtifact"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents information about a pipeline to a job worker. type PipelineContext struct { _ struct{} `type:"structure"` // Represents the context of an action within the stage of a pipeline to a job // worker. Action *ActionContext `locationName:"action" type:"structure"` // The name of the pipeline. This is a user-specified value. Pipeline names // must be unique across all pipeline names under an Amazon Web Services account. PipelineName *string `locationName:"pipelineName" min:"1" type:"string"` // The stage of the pipeline. Stage *StageContext `locationName:"stage" type:"structure"` } // String returns the string representation func (s PipelineContext) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PipelineContext) GoString() string { return s.String() } // Represents the structure of actions and stages to be performed in the pipeline. type PipelineDeclaration struct { _ struct{} `type:"structure"` // The Amazon S3 location where artifacts are stored for the pipeline. If this // Amazon S3 bucket is created manually, it must meet the requirements for AWS // CodePipeline. For more information, see the Concepts (http://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#CPS3Bucket). // // ArtifactStore is a required field ArtifactStore *ArtifactStore `locationName:"artifactStore" type:"structure" required:"true"` // The name of the action to be performed. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // The Amazon Resource Name (ARN) for AWS CodePipeline to use to either perform // actions with no actionRoleArn, or to use to assume roles for actions with // an actionRoleArn. // // RoleArn is a required field RoleArn *string `locationName:"roleArn" type:"string" required:"true"` // The stage in which to perform the action. // // Stages is a required field Stages []*StageDeclaration `locationName:"stages" type:"list" required:"true"` // The version number of the pipeline. A new pipeline always has a version number // of 1. This number is automatically incremented when a pipeline is updated. Version *int64 `locationName:"version" min:"1" type:"integer"` } // String returns the string representation func (s PipelineDeclaration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PipelineDeclaration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PipelineDeclaration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PipelineDeclaration"} if s.ArtifactStore == nil { invalidParams.Add(request.NewErrParamRequired("ArtifactStore")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if s.Stages == nil { invalidParams.Add(request.NewErrParamRequired("Stages")) } if s.Version != nil && *s.Version < 1 { invalidParams.Add(request.NewErrParamMinValue("Version", 1)) } if s.ArtifactStore != nil { if err := s.ArtifactStore.Validate(); err != nil { invalidParams.AddNested("ArtifactStore", err.(request.ErrInvalidParams)) } } if s.Stages != nil { for i, v := range s.Stages { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Stages", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents information about an execution of a pipeline. type PipelineExecution struct { _ struct{} `type:"structure"` // A list of ArtifactRevision objects included in a pipeline execution. ArtifactRevisions []*ArtifactRevision `locationName:"artifactRevisions" type:"list"` // The ID of the pipeline execution. PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"` // The name of the pipeline that was executed. PipelineName *string `locationName:"pipelineName" min:"1" type:"string"` // The version number of the pipeline that was executed. PipelineVersion *int64 `locationName:"pipelineVersion" min:"1" type:"integer"` // The status of the pipeline execution. // // * InProgress: The pipeline execution is currently running. // // * Succeeded: The pipeline execution completed successfully. // // * Superseded: While this pipeline execution was waiting for the next stage // to be completed, a newer pipeline execution caught up and continued through // the pipeline instead. // // * Failed: The pipeline did not complete successfully. Status *string `locationName:"status" type:"string" enum:"PipelineExecutionStatus"` } // String returns the string representation func (s PipelineExecution) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PipelineExecution) GoString() string { return s.String() } // Returns a summary of a pipeline. type PipelineSummary struct { _ struct{} `type:"structure"` // The date and time the pipeline was created, in timestamp format. Created *time.Time `locationName:"created" type:"timestamp" timestampFormat:"unix"` // The name of the pipeline. Name *string `locationName:"name" min:"1" type:"string"` // The date and time of the last update to the pipeline, in timestamp format. Updated *time.Time `locationName:"updated" type:"timestamp" timestampFormat:"unix"` // The version number of the pipeline. Version *int64 `locationName:"version" min:"1" type:"integer"` } // String returns the string representation func (s PipelineSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PipelineSummary) GoString() string { return s.String() } // Represents the input of a poll for jobs action. type PollForJobsInput struct { _ struct{} `type:"structure"` // Represents information about an action type. // // ActionTypeId is a required field ActionTypeId *ActionTypeId `locationName:"actionTypeId" type:"structure" required:"true"` // The maximum number of jobs to return in a poll for jobs call. MaxBatchSize *int64 `locationName:"maxBatchSize" min:"1" type:"integer"` // A map of property names and values. For an action type with no queryable // properties, this value must be null or an empty map. For an action type with // a queryable property, you must supply that property as a key in the map. // Only jobs whose action configuration matches the mapped value will be returned. QueryParam map[string]*string `locationName:"queryParam" type:"map"` } // String returns the string representation func (s PollForJobsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PollForJobsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PollForJobsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PollForJobsInput"} if s.ActionTypeId == nil { invalidParams.Add(request.NewErrParamRequired("ActionTypeId")) } if s.MaxBatchSize != nil && *s.MaxBatchSize < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxBatchSize", 1)) } if s.ActionTypeId != nil { if err := s.ActionTypeId.Validate(); err != nil { invalidParams.AddNested("ActionTypeId", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a poll for jobs action. type PollForJobsOutput struct { _ struct{} `type:"structure"` // Information about the jobs to take action on. Jobs []*Job `locationName:"jobs" type:"list"` } // String returns the string representation func (s PollForJobsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PollForJobsOutput) GoString() string { return s.String() } // Represents the input of a poll for third party jobs action. type PollForThirdPartyJobsInput struct { _ struct{} `type:"structure"` // Represents information about an action type. // // ActionTypeId is a required field ActionTypeId *ActionTypeId `locationName:"actionTypeId" type:"structure" required:"true"` // The maximum number of jobs to return in a poll for jobs call. MaxBatchSize *int64 `locationName:"maxBatchSize" min:"1" type:"integer"` } // String returns the string representation func (s PollForThirdPartyJobsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PollForThirdPartyJobsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PollForThirdPartyJobsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PollForThirdPartyJobsInput"} if s.ActionTypeId == nil { invalidParams.Add(request.NewErrParamRequired("ActionTypeId")) } if s.MaxBatchSize != nil && *s.MaxBatchSize < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxBatchSize", 1)) } if s.ActionTypeId != nil { if err := s.ActionTypeId.Validate(); err != nil { invalidParams.AddNested("ActionTypeId", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a poll for third party jobs action. type PollForThirdPartyJobsOutput struct { _ struct{} `type:"structure"` // Information about the jobs to take action on. Jobs []*ThirdPartyJob `locationName:"jobs" type:"list"` } // String returns the string representation func (s PollForThirdPartyJobsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PollForThirdPartyJobsOutput) GoString() string { return s.String() } // Represents the input of a put action revision action. type PutActionRevisionInput struct { _ struct{} `type:"structure"` // The name of the action that will process the revision. // // ActionName is a required field ActionName *string `locationName:"actionName" min:"1" type:"string" required:"true"` // Represents information about the version (or revision) of an action. // // ActionRevision is a required field ActionRevision *ActionRevision `locationName:"actionRevision" type:"structure" required:"true"` // The name of the pipeline that will start processing the revision to the source. // // PipelineName is a required field PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"` // The name of the stage that contains the action that will act upon the revision. // // StageName is a required field StageName *string `locationName:"stageName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s PutActionRevisionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutActionRevisionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutActionRevisionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutActionRevisionInput"} if s.ActionName == nil { invalidParams.Add(request.NewErrParamRequired("ActionName")) } if s.ActionName != nil && len(*s.ActionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ActionName", 1)) } if s.ActionRevision == nil { invalidParams.Add(request.NewErrParamRequired("ActionRevision")) } if s.PipelineName == nil { invalidParams.Add(request.NewErrParamRequired("PipelineName")) } if s.PipelineName != nil && len(*s.PipelineName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1)) } if s.StageName == nil { invalidParams.Add(request.NewErrParamRequired("StageName")) } if s.StageName != nil && len(*s.StageName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StageName", 1)) } if s.ActionRevision != nil { if err := s.ActionRevision.Validate(); err != nil { invalidParams.AddNested("ActionRevision", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a put action revision action. type PutActionRevisionOutput struct { _ struct{} `type:"structure"` // Indicates whether the artifact revision was previously used in an execution // of the specified pipeline. NewRevision *bool `locationName:"newRevision" type:"boolean"` // The ID of the current workflow state of the pipeline. PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"` } // String returns the string representation func (s PutActionRevisionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutActionRevisionOutput) GoString() string { return s.String() } // Represents the input of a put approval result action. type PutApprovalResultInput struct { _ struct{} `type:"structure"` // The name of the action for which approval is requested. // // ActionName is a required field ActionName *string `locationName:"actionName" min:"1" type:"string" required:"true"` // The name of the pipeline that contains the action. // // PipelineName is a required field PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"` // Represents information about the result of the approval request. // // Result is a required field Result *ApprovalResult `locationName:"result" type:"structure" required:"true"` // The name of the stage that contains the action. // // StageName is a required field StageName *string `locationName:"stageName" min:"1" type:"string" required:"true"` // The system-generated token used to identify a unique approval request. The // token for each open approval request can be obtained using the GetPipelineState // action and is used to validate that the approval request corresponding to // this token is still valid. // // Token is a required field Token *string `locationName:"token" type:"string" required:"true"` } // String returns the string representation func (s PutApprovalResultInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutApprovalResultInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutApprovalResultInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutApprovalResultInput"} if s.ActionName == nil { invalidParams.Add(request.NewErrParamRequired("ActionName")) } if s.ActionName != nil && len(*s.ActionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ActionName", 1)) } if s.PipelineName == nil { invalidParams.Add(request.NewErrParamRequired("PipelineName")) } if s.PipelineName != nil && len(*s.PipelineName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1)) } if s.Result == nil { invalidParams.Add(request.NewErrParamRequired("Result")) } if s.StageName == nil { invalidParams.Add(request.NewErrParamRequired("StageName")) } if s.StageName != nil && len(*s.StageName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StageName", 1)) } if s.Token == nil { invalidParams.Add(request.NewErrParamRequired("Token")) } if s.Result != nil { if err := s.Result.Validate(); err != nil { invalidParams.AddNested("Result", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a put approval result action. type PutApprovalResultOutput struct { _ struct{} `type:"structure"` // The timestamp showing when the approval or rejection was submitted. ApprovedAt *time.Time `locationName:"approvedAt" type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s PutApprovalResultOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutApprovalResultOutput) GoString() string { return s.String() } // Represents the input of a put job failure result action. type PutJobFailureResultInput struct { _ struct{} `type:"structure"` // The details about the failure of a job. // // FailureDetails is a required field FailureDetails *FailureDetails `locationName:"failureDetails" type:"structure" required:"true"` // The unique system-generated ID of the job that failed. This is the same ID // returned from PollForJobs. // // JobId is a required field JobId *string `locationName:"jobId" type:"string" required:"true"` } // String returns the string representation func (s PutJobFailureResultInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutJobFailureResultInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutJobFailureResultInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutJobFailureResultInput"} if s.FailureDetails == nil { invalidParams.Add(request.NewErrParamRequired("FailureDetails")) } if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.FailureDetails != nil { if err := s.FailureDetails.Validate(); err != nil { invalidParams.AddNested("FailureDetails", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutJobFailureResultOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutJobFailureResultOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutJobFailureResultOutput) GoString() string { return s.String() } // Represents the input of a put job success result action. type PutJobSuccessResultInput struct { _ struct{} `type:"structure"` // A token generated by a job worker, such as an AWS CodeDeploy deployment ID, // that a successful job provides to identify a custom action in progress. Future // jobs will use this token in order to identify the running instance of the // action. It can be reused to return additional information about the progress // of the custom action. When the action is complete, no continuation token // should be supplied. ContinuationToken *string `locationName:"continuationToken" type:"string"` // The ID of the current revision of the artifact successfully worked upon by // the job. CurrentRevision *CurrentRevision `locationName:"currentRevision" type:"structure"` // The execution details of the successful job, such as the actions taken by // the job worker. ExecutionDetails *ExecutionDetails `locationName:"executionDetails" type:"structure"` // The unique system-generated ID of the job that succeeded. This is the same // ID returned from PollForJobs. // // JobId is a required field JobId *string `locationName:"jobId" type:"string" required:"true"` } // String returns the string representation func (s PutJobSuccessResultInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutJobSuccessResultInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutJobSuccessResultInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutJobSuccessResultInput"} if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.CurrentRevision != nil { if err := s.CurrentRevision.Validate(); err != nil { invalidParams.AddNested("CurrentRevision", err.(request.ErrInvalidParams)) } } if s.ExecutionDetails != nil { if err := s.ExecutionDetails.Validate(); err != nil { invalidParams.AddNested("ExecutionDetails", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutJobSuccessResultOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutJobSuccessResultOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutJobSuccessResultOutput) GoString() string { return s.String() } // Represents the input of a third party job failure result action. type PutThirdPartyJobFailureResultInput struct { _ struct{} `type:"structure"` // The clientToken portion of the clientId and clientToken pair used to verify // that the calling entity is allowed access to the job and its details. // // ClientToken is a required field ClientToken *string `locationName:"clientToken" type:"string" required:"true"` // Represents information about failure details. // // FailureDetails is a required field FailureDetails *FailureDetails `locationName:"failureDetails" type:"structure" required:"true"` // The ID of the job that failed. This is the same ID returned from PollForThirdPartyJobs. // // JobId is a required field JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s PutThirdPartyJobFailureResultInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutThirdPartyJobFailureResultInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutThirdPartyJobFailureResultInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutThirdPartyJobFailureResultInput"} if s.ClientToken == nil { invalidParams.Add(request.NewErrParamRequired("ClientToken")) } if s.FailureDetails == nil { invalidParams.Add(request.NewErrParamRequired("FailureDetails")) } if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.JobId != nil && len(*s.JobId) < 1 { invalidParams.Add(request.NewErrParamMinLen("JobId", 1)) } if s.FailureDetails != nil { if err := s.FailureDetails.Validate(); err != nil { invalidParams.AddNested("FailureDetails", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutThirdPartyJobFailureResultOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutThirdPartyJobFailureResultOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutThirdPartyJobFailureResultOutput) GoString() string { return s.String() } // Represents the input of a put third party job success result action. type PutThirdPartyJobSuccessResultInput struct { _ struct{} `type:"structure"` // The clientToken portion of the clientId and clientToken pair used to verify // that the calling entity is allowed access to the job and its details. // // ClientToken is a required field ClientToken *string `locationName:"clientToken" type:"string" required:"true"` // A token generated by a job worker, such as an AWS CodeDeploy deployment ID, // that a successful job provides to identify a partner action in progress. // Future jobs will use this token in order to identify the running instance // of the action. It can be reused to return additional information about the // progress of the partner action. When the action is complete, no continuation // token should be supplied. ContinuationToken *string `locationName:"continuationToken" type:"string"` // Represents information about a current revision. CurrentRevision *CurrentRevision `locationName:"currentRevision" type:"structure"` // The details of the actions taken and results produced on an artifact as it // passes through stages in the pipeline. ExecutionDetails *ExecutionDetails `locationName:"executionDetails" type:"structure"` // The ID of the job that successfully completed. This is the same ID returned // from PollForThirdPartyJobs. // // JobId is a required field JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s PutThirdPartyJobSuccessResultInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutThirdPartyJobSuccessResultInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutThirdPartyJobSuccessResultInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutThirdPartyJobSuccessResultInput"} if s.ClientToken == nil { invalidParams.Add(request.NewErrParamRequired("ClientToken")) } if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.JobId != nil && len(*s.JobId) < 1 { invalidParams.Add(request.NewErrParamMinLen("JobId", 1)) } if s.CurrentRevision != nil { if err := s.CurrentRevision.Validate(); err != nil { invalidParams.AddNested("CurrentRevision", err.(request.ErrInvalidParams)) } } if s.ExecutionDetails != nil { if err := s.ExecutionDetails.Validate(); err != nil { invalidParams.AddNested("ExecutionDetails", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutThirdPartyJobSuccessResultOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutThirdPartyJobSuccessResultOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutThirdPartyJobSuccessResultOutput) GoString() string { return s.String() } // Represents the input of a retry stage execution action. type RetryStageExecutionInput struct { _ struct{} `type:"structure"` // The ID of the pipeline execution in the failed stage to be retried. Use the // GetPipelineState action to retrieve the current pipelineExecutionId of the // failed stage // // PipelineExecutionId is a required field PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string" required:"true"` // The name of the pipeline that contains the failed stage. // // PipelineName is a required field PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"` // The scope of the retry attempt. Currently, the only supported value is FAILED_ACTIONS. // // RetryMode is a required field RetryMode *string `locationName:"retryMode" type:"string" required:"true" enum:"StageRetryMode"` // The name of the failed stage to be retried. // // StageName is a required field StageName *string `locationName:"stageName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RetryStageExecutionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RetryStageExecutionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RetryStageExecutionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RetryStageExecutionInput"} if s.PipelineExecutionId == nil { invalidParams.Add(request.NewErrParamRequired("PipelineExecutionId")) } if s.PipelineName == nil { invalidParams.Add(request.NewErrParamRequired("PipelineName")) } if s.PipelineName != nil && len(*s.PipelineName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1)) } if s.RetryMode == nil { invalidParams.Add(request.NewErrParamRequired("RetryMode")) } if s.StageName == nil { invalidParams.Add(request.NewErrParamRequired("StageName")) } if s.StageName != nil && len(*s.StageName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StageName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a retry stage execution action. type RetryStageExecutionOutput struct { _ struct{} `type:"structure"` // The ID of the current workflow execution in the failed stage. PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"` } // String returns the string representation func (s RetryStageExecutionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RetryStageExecutionOutput) GoString() string { return s.String() } // The location of the Amazon S3 bucket that contains a revision. type S3ArtifactLocation struct { _ struct{} `type:"structure"` // The name of the Amazon S3 bucket. // // BucketName is a required field BucketName *string `locationName:"bucketName" type:"string" required:"true"` // The key of the object in the Amazon S3 bucket, which uniquely identifies // the object in the bucket. // // ObjectKey is a required field ObjectKey *string `locationName:"objectKey" type:"string" required:"true"` } // String returns the string representation func (s S3ArtifactLocation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s S3ArtifactLocation) GoString() string { return s.String() } // Represents information about a stage to a job worker. type StageContext struct { _ struct{} `type:"structure"` // The name of the stage. Name *string `locationName:"name" min:"1" type:"string"` } // String returns the string representation func (s StageContext) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StageContext) GoString() string { return s.String() } // Represents information about a stage and its definition. type StageDeclaration struct { _ struct{} `type:"structure"` // The actions included in a stage. // // Actions is a required field Actions []*ActionDeclaration `locationName:"actions" type:"list" required:"true"` // Reserved for future use. Blockers []*BlockerDeclaration `locationName:"blockers" type:"list"` // The name of the stage. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` } // String returns the string representation func (s StageDeclaration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StageDeclaration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StageDeclaration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StageDeclaration"} if s.Actions == nil { invalidParams.Add(request.NewErrParamRequired("Actions")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Actions != nil { for i, v := range s.Actions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Actions", i), err.(request.ErrInvalidParams)) } } } if s.Blockers != nil { for i, v := range s.Blockers { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Blockers", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents information about the run of a stage. type StageExecution struct { _ struct{} `type:"structure"` // The ID of the pipeline execution associated with the stage. // // PipelineExecutionId is a required field PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string" required:"true"` // The status of the stage, or for a completed stage, the last status of the // stage. // // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"StageExecutionStatus"` } // String returns the string representation func (s StageExecution) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StageExecution) GoString() string { return s.String() } // Represents information about the state of the stage. type StageState struct { _ struct{} `type:"structure"` // The state of the stage. ActionStates []*ActionState `locationName:"actionStates" type:"list"` // The state of the inbound transition, which is either enabled or disabled. InboundTransitionState *TransitionState `locationName:"inboundTransitionState" type:"structure"` // Information about the latest execution in the stage, including its ID and // status. LatestExecution *StageExecution `locationName:"latestExecution" type:"structure"` // The name of the stage. StageName *string `locationName:"stageName" min:"1" type:"string"` } // String returns the string representation func (s StageState) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StageState) GoString() string { return s.String() } // Represents the input of a start pipeline execution action. type StartPipelineExecutionInput struct { _ struct{} `type:"structure"` // The name of the pipeline to start. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` } // String returns the string representation func (s StartPipelineExecutionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartPipelineExecutionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartPipelineExecutionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartPipelineExecutionInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a start pipeline execution action. type StartPipelineExecutionOutput struct { _ struct{} `type:"structure"` // The unique system-generated ID of the pipeline execution that was started. PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"` } // String returns the string representation func (s StartPipelineExecutionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartPipelineExecutionOutput) GoString() string { return s.String() } // A response to a PollForThirdPartyJobs request returned by AWS CodePipeline // when there is a job to be worked upon by a partner action. type ThirdPartyJob struct { _ struct{} `type:"structure"` // The clientToken portion of the clientId and clientToken pair used to verify // that the calling entity is allowed access to the job and its details. ClientId *string `locationName:"clientId" type:"string"` // The identifier used to identify the job in AWS CodePipeline. JobId *string `locationName:"jobId" type:"string"` } // String returns the string representation func (s ThirdPartyJob) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ThirdPartyJob) GoString() string { return s.String() } // Represents information about the job data for a partner action. type ThirdPartyJobData struct { _ struct{} `type:"structure"` // Represents information about an action configuration. ActionConfiguration *ActionConfiguration `locationName:"actionConfiguration" type:"structure"` // Represents information about an action type. ActionTypeId *ActionTypeId `locationName:"actionTypeId" type:"structure"` // Represents an AWS session credentials object. These credentials are temporary // credentials that are issued by AWS Secure Token Service (STS). They can be // used to access input and output artifacts in the Amazon S3 bucket used to // store artifact for the pipeline in AWS CodePipeline. ArtifactCredentials *AWSSessionCredentials `locationName:"artifactCredentials" type:"structure"` // A system-generated token, such as a AWS CodeDeploy deployment ID, that a // job requires in order to continue the job asynchronously. ContinuationToken *string `locationName:"continuationToken" type:"string"` // The encryption key used to encrypt and decrypt data in the artifact store // for the pipeline, such as an AWS Key Management Service (AWS KMS) key. This // is optional and might not be present. EncryptionKey *EncryptionKey `locationName:"encryptionKey" type:"structure"` // The name of the artifact that will be worked upon by the action, if any. // This name might be system-generated, such as "MyApp", or might be defined // by the user when the action is created. The input artifact name must match // the name of an output artifact generated by an action in an earlier action // or stage of the pipeline. InputArtifacts []*Artifact `locationName:"inputArtifacts" type:"list"` // The name of the artifact that will be the result of the action, if any. This // name might be system-generated, such as "MyBuiltApp", or might be defined // by the user when the action is created. OutputArtifacts []*Artifact `locationName:"outputArtifacts" type:"list"` // Represents information about a pipeline to a job worker. PipelineContext *PipelineContext `locationName:"pipelineContext" type:"structure"` } // String returns the string representation func (s ThirdPartyJobData) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ThirdPartyJobData) GoString() string { return s.String() } // The details of a job sent in response to a GetThirdPartyJobDetails request. type ThirdPartyJobDetails struct { _ struct{} `type:"structure"` // The data to be returned by the third party job worker. Data *ThirdPartyJobData `locationName:"data" type:"structure"` // The identifier used to identify the job details in AWS CodePipeline. Id *string `locationName:"id" min:"1" type:"string"` // A system-generated random number that AWS CodePipeline uses to ensure that // the job is being worked on by only one job worker. This number must be returned // in the response. Nonce *string `locationName:"nonce" type:"string"` } // String returns the string representation func (s ThirdPartyJobDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ThirdPartyJobDetails) GoString() string { return s.String() } // Represents information about the state of transitions between one stage and // another stage. type TransitionState struct { _ struct{} `type:"structure"` // The user-specified reason why the transition between two stages of a pipeline // was disabled. DisabledReason *string `locationName:"disabledReason" min:"1" type:"string"` // Whether the transition between stages is enabled (true) or disabled (false). Enabled *bool `locationName:"enabled" type:"boolean"` // The timestamp when the transition state was last changed. LastChangedAt *time.Time `locationName:"lastChangedAt" type:"timestamp" timestampFormat:"unix"` // The ID of the user who last changed the transition state. LastChangedBy *string `locationName:"lastChangedBy" type:"string"` } // String returns the string representation func (s TransitionState) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TransitionState) GoString() string { return s.String() } // Represents the input of an update pipeline action. type UpdatePipelineInput struct { _ struct{} `type:"structure"` // The name of the pipeline to be updated. // // Pipeline is a required field Pipeline *PipelineDeclaration `locationName:"pipeline" type:"structure" required:"true"` } // String returns the string representation func (s UpdatePipelineInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdatePipelineInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdatePipelineInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdatePipelineInput"} if s.Pipeline == nil { invalidParams.Add(request.NewErrParamRequired("Pipeline")) } if s.Pipeline != nil { if err := s.Pipeline.Validate(); err != nil { invalidParams.AddNested("Pipeline", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of an update pipeline action. type UpdatePipelineOutput struct { _ struct{} `type:"structure"` // The structure of the updated pipeline. Pipeline *PipelineDeclaration `locationName:"pipeline" type:"structure"` } // String returns the string representation func (s UpdatePipelineOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdatePipelineOutput) GoString() string { return s.String() } const ( // ActionCategorySource is a ActionCategory enum value ActionCategorySource = "Source" // ActionCategoryBuild is a ActionCategory enum value ActionCategoryBuild = "Build" // ActionCategoryDeploy is a ActionCategory enum value ActionCategoryDeploy = "Deploy" // ActionCategoryTest is a ActionCategory enum value ActionCategoryTest = "Test" // ActionCategoryInvoke is a ActionCategory enum value ActionCategoryInvoke = "Invoke" // ActionCategoryApproval is a ActionCategory enum value ActionCategoryApproval = "Approval" ) const ( // ActionConfigurationPropertyTypeString is a ActionConfigurationPropertyType enum value ActionConfigurationPropertyTypeString = "String" // ActionConfigurationPropertyTypeNumber is a ActionConfigurationPropertyType enum value ActionConfigurationPropertyTypeNumber = "Number" // ActionConfigurationPropertyTypeBoolean is a ActionConfigurationPropertyType enum value ActionConfigurationPropertyTypeBoolean = "Boolean" ) const ( // ActionExecutionStatusInProgress is a ActionExecutionStatus enum value ActionExecutionStatusInProgress = "InProgress" // ActionExecutionStatusSucceeded is a ActionExecutionStatus enum value ActionExecutionStatusSucceeded = "Succeeded" // ActionExecutionStatusFailed is a ActionExecutionStatus enum value ActionExecutionStatusFailed = "Failed" ) const ( // ActionOwnerAws is a ActionOwner enum value ActionOwnerAws = "AWS" // ActionOwnerThirdParty is a ActionOwner enum value ActionOwnerThirdParty = "ThirdParty" // ActionOwnerCustom is a ActionOwner enum value ActionOwnerCustom = "Custom" ) const ( // ApprovalStatusApproved is a ApprovalStatus enum value ApprovalStatusApproved = "Approved" // ApprovalStatusRejected is a ApprovalStatus enum value ApprovalStatusRejected = "Rejected" ) const ( // ArtifactLocationTypeS3 is a ArtifactLocationType enum value ArtifactLocationTypeS3 = "S3" ) const ( // ArtifactStoreTypeS3 is a ArtifactStoreType enum value ArtifactStoreTypeS3 = "S3" ) const ( // BlockerTypeSchedule is a BlockerType enum value BlockerTypeSchedule = "Schedule" ) const ( // EncryptionKeyTypeKms is a EncryptionKeyType enum value EncryptionKeyTypeKms = "KMS" ) const ( // FailureTypeJobFailed is a FailureType enum value FailureTypeJobFailed = "JobFailed" // FailureTypeConfigurationError is a FailureType enum value FailureTypeConfigurationError = "ConfigurationError" // FailureTypePermissionError is a FailureType enum value FailureTypePermissionError = "PermissionError" // FailureTypeRevisionOutOfSync is a FailureType enum value FailureTypeRevisionOutOfSync = "RevisionOutOfSync" // FailureTypeRevisionUnavailable is a FailureType enum value FailureTypeRevisionUnavailable = "RevisionUnavailable" // FailureTypeSystemUnavailable is a FailureType enum value FailureTypeSystemUnavailable = "SystemUnavailable" ) const ( // JobStatusCreated is a JobStatus enum value JobStatusCreated = "Created" // JobStatusQueued is a JobStatus enum value JobStatusQueued = "Queued" // JobStatusDispatched is a JobStatus enum value JobStatusDispatched = "Dispatched" // JobStatusInProgress is a JobStatus enum value JobStatusInProgress = "InProgress" // JobStatusTimedOut is a JobStatus enum value JobStatusTimedOut = "TimedOut" // JobStatusSucceeded is a JobStatus enum value JobStatusSucceeded = "Succeeded" // JobStatusFailed is a JobStatus enum value JobStatusFailed = "Failed" ) const ( // PipelineExecutionStatusInProgress is a PipelineExecutionStatus enum value PipelineExecutionStatusInProgress = "InProgress" // PipelineExecutionStatusSucceeded is a PipelineExecutionStatus enum value PipelineExecutionStatusSucceeded = "Succeeded" // PipelineExecutionStatusSuperseded is a PipelineExecutionStatus enum value PipelineExecutionStatusSuperseded = "Superseded" // PipelineExecutionStatusFailed is a PipelineExecutionStatus enum value PipelineExecutionStatusFailed = "Failed" ) const ( // StageExecutionStatusInProgress is a StageExecutionStatus enum value StageExecutionStatusInProgress = "InProgress" // StageExecutionStatusFailed is a StageExecutionStatus enum value StageExecutionStatusFailed = "Failed" // StageExecutionStatusSucceeded is a StageExecutionStatus enum value StageExecutionStatusSucceeded = "Succeeded" ) const ( // StageRetryModeFailedActions is a StageRetryMode enum value StageRetryModeFailedActions = "FAILED_ACTIONS" ) const ( // StageTransitionTypeInbound is a StageTransitionType enum value StageTransitionTypeInbound = "Inbound" // StageTransitionTypeOutbound is a StageTransitionType enum value StageTransitionTypeOutbound = "Outbound" ) aws-sdk-go-1.4.22/service/codepipeline/codepipelineiface/000077500000000000000000000000001300374646400233135ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/codepipeline/codepipelineiface/interface.go000066400000000000000000000203521300374646400256040ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package codepipelineiface provides an interface to enable mocking the AWS CodePipeline service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package codepipelineiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/codepipeline" ) // CodePipelineAPI provides an interface to enable mocking the // codepipeline.CodePipeline service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS CodePipeline. // func myFunc(svc codepipelineiface.CodePipelineAPI) bool { // // Make svc.AcknowledgeJob request // } // // func main() { // sess := session.New() // svc := codepipeline.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockCodePipelineClient struct { // codepipelineiface.CodePipelineAPI // } // func (m *mockCodePipelineClient) AcknowledgeJob(input *codepipeline.AcknowledgeJobInput) (*codepipeline.AcknowledgeJobOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockCodePipelineClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type CodePipelineAPI interface { AcknowledgeJobRequest(*codepipeline.AcknowledgeJobInput) (*request.Request, *codepipeline.AcknowledgeJobOutput) AcknowledgeJob(*codepipeline.AcknowledgeJobInput) (*codepipeline.AcknowledgeJobOutput, error) AcknowledgeThirdPartyJobRequest(*codepipeline.AcknowledgeThirdPartyJobInput) (*request.Request, *codepipeline.AcknowledgeThirdPartyJobOutput) AcknowledgeThirdPartyJob(*codepipeline.AcknowledgeThirdPartyJobInput) (*codepipeline.AcknowledgeThirdPartyJobOutput, error) CreateCustomActionTypeRequest(*codepipeline.CreateCustomActionTypeInput) (*request.Request, *codepipeline.CreateCustomActionTypeOutput) CreateCustomActionType(*codepipeline.CreateCustomActionTypeInput) (*codepipeline.CreateCustomActionTypeOutput, error) CreatePipelineRequest(*codepipeline.CreatePipelineInput) (*request.Request, *codepipeline.CreatePipelineOutput) CreatePipeline(*codepipeline.CreatePipelineInput) (*codepipeline.CreatePipelineOutput, error) DeleteCustomActionTypeRequest(*codepipeline.DeleteCustomActionTypeInput) (*request.Request, *codepipeline.DeleteCustomActionTypeOutput) DeleteCustomActionType(*codepipeline.DeleteCustomActionTypeInput) (*codepipeline.DeleteCustomActionTypeOutput, error) DeletePipelineRequest(*codepipeline.DeletePipelineInput) (*request.Request, *codepipeline.DeletePipelineOutput) DeletePipeline(*codepipeline.DeletePipelineInput) (*codepipeline.DeletePipelineOutput, error) DisableStageTransitionRequest(*codepipeline.DisableStageTransitionInput) (*request.Request, *codepipeline.DisableStageTransitionOutput) DisableStageTransition(*codepipeline.DisableStageTransitionInput) (*codepipeline.DisableStageTransitionOutput, error) EnableStageTransitionRequest(*codepipeline.EnableStageTransitionInput) (*request.Request, *codepipeline.EnableStageTransitionOutput) EnableStageTransition(*codepipeline.EnableStageTransitionInput) (*codepipeline.EnableStageTransitionOutput, error) GetJobDetailsRequest(*codepipeline.GetJobDetailsInput) (*request.Request, *codepipeline.GetJobDetailsOutput) GetJobDetails(*codepipeline.GetJobDetailsInput) (*codepipeline.GetJobDetailsOutput, error) GetPipelineRequest(*codepipeline.GetPipelineInput) (*request.Request, *codepipeline.GetPipelineOutput) GetPipeline(*codepipeline.GetPipelineInput) (*codepipeline.GetPipelineOutput, error) GetPipelineExecutionRequest(*codepipeline.GetPipelineExecutionInput) (*request.Request, *codepipeline.GetPipelineExecutionOutput) GetPipelineExecution(*codepipeline.GetPipelineExecutionInput) (*codepipeline.GetPipelineExecutionOutput, error) GetPipelineStateRequest(*codepipeline.GetPipelineStateInput) (*request.Request, *codepipeline.GetPipelineStateOutput) GetPipelineState(*codepipeline.GetPipelineStateInput) (*codepipeline.GetPipelineStateOutput, error) GetThirdPartyJobDetailsRequest(*codepipeline.GetThirdPartyJobDetailsInput) (*request.Request, *codepipeline.GetThirdPartyJobDetailsOutput) GetThirdPartyJobDetails(*codepipeline.GetThirdPartyJobDetailsInput) (*codepipeline.GetThirdPartyJobDetailsOutput, error) ListActionTypesRequest(*codepipeline.ListActionTypesInput) (*request.Request, *codepipeline.ListActionTypesOutput) ListActionTypes(*codepipeline.ListActionTypesInput) (*codepipeline.ListActionTypesOutput, error) ListPipelinesRequest(*codepipeline.ListPipelinesInput) (*request.Request, *codepipeline.ListPipelinesOutput) ListPipelines(*codepipeline.ListPipelinesInput) (*codepipeline.ListPipelinesOutput, error) PollForJobsRequest(*codepipeline.PollForJobsInput) (*request.Request, *codepipeline.PollForJobsOutput) PollForJobs(*codepipeline.PollForJobsInput) (*codepipeline.PollForJobsOutput, error) PollForThirdPartyJobsRequest(*codepipeline.PollForThirdPartyJobsInput) (*request.Request, *codepipeline.PollForThirdPartyJobsOutput) PollForThirdPartyJobs(*codepipeline.PollForThirdPartyJobsInput) (*codepipeline.PollForThirdPartyJobsOutput, error) PutActionRevisionRequest(*codepipeline.PutActionRevisionInput) (*request.Request, *codepipeline.PutActionRevisionOutput) PutActionRevision(*codepipeline.PutActionRevisionInput) (*codepipeline.PutActionRevisionOutput, error) PutApprovalResultRequest(*codepipeline.PutApprovalResultInput) (*request.Request, *codepipeline.PutApprovalResultOutput) PutApprovalResult(*codepipeline.PutApprovalResultInput) (*codepipeline.PutApprovalResultOutput, error) PutJobFailureResultRequest(*codepipeline.PutJobFailureResultInput) (*request.Request, *codepipeline.PutJobFailureResultOutput) PutJobFailureResult(*codepipeline.PutJobFailureResultInput) (*codepipeline.PutJobFailureResultOutput, error) PutJobSuccessResultRequest(*codepipeline.PutJobSuccessResultInput) (*request.Request, *codepipeline.PutJobSuccessResultOutput) PutJobSuccessResult(*codepipeline.PutJobSuccessResultInput) (*codepipeline.PutJobSuccessResultOutput, error) PutThirdPartyJobFailureResultRequest(*codepipeline.PutThirdPartyJobFailureResultInput) (*request.Request, *codepipeline.PutThirdPartyJobFailureResultOutput) PutThirdPartyJobFailureResult(*codepipeline.PutThirdPartyJobFailureResultInput) (*codepipeline.PutThirdPartyJobFailureResultOutput, error) PutThirdPartyJobSuccessResultRequest(*codepipeline.PutThirdPartyJobSuccessResultInput) (*request.Request, *codepipeline.PutThirdPartyJobSuccessResultOutput) PutThirdPartyJobSuccessResult(*codepipeline.PutThirdPartyJobSuccessResultInput) (*codepipeline.PutThirdPartyJobSuccessResultOutput, error) RetryStageExecutionRequest(*codepipeline.RetryStageExecutionInput) (*request.Request, *codepipeline.RetryStageExecutionOutput) RetryStageExecution(*codepipeline.RetryStageExecutionInput) (*codepipeline.RetryStageExecutionOutput, error) StartPipelineExecutionRequest(*codepipeline.StartPipelineExecutionInput) (*request.Request, *codepipeline.StartPipelineExecutionOutput) StartPipelineExecution(*codepipeline.StartPipelineExecutionInput) (*codepipeline.StartPipelineExecutionOutput, error) UpdatePipelineRequest(*codepipeline.UpdatePipelineInput) (*request.Request, *codepipeline.UpdatePipelineOutput) UpdatePipeline(*codepipeline.UpdatePipelineInput) (*codepipeline.UpdatePipelineOutput, error) } var _ CodePipelineAPI = (*codepipeline.CodePipeline)(nil) aws-sdk-go-1.4.22/service/codepipeline/examples_test.go000066400000000000000000000566001300374646400230760ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package codepipeline_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/codepipeline" ) var _ time.Duration var _ bytes.Buffer func ExampleCodePipeline_AcknowledgeJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.AcknowledgeJobInput{ JobId: aws.String("JobId"), // Required Nonce: aws.String("Nonce"), // Required } resp, err := svc.AcknowledgeJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_AcknowledgeThirdPartyJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.AcknowledgeThirdPartyJobInput{ ClientToken: aws.String("ClientToken"), // Required JobId: aws.String("ThirdPartyJobId"), // Required Nonce: aws.String("Nonce"), // Required } resp, err := svc.AcknowledgeThirdPartyJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_CreateCustomActionType() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.CreateCustomActionTypeInput{ Category: aws.String("ActionCategory"), // Required InputArtifactDetails: &codepipeline.ArtifactDetails{ // Required MaximumCount: aws.Int64(1), // Required MinimumCount: aws.Int64(1), // Required }, OutputArtifactDetails: &codepipeline.ArtifactDetails{ // Required MaximumCount: aws.Int64(1), // Required MinimumCount: aws.Int64(1), // Required }, Provider: aws.String("ActionProvider"), // Required Version: aws.String("Version"), // Required ConfigurationProperties: []*codepipeline.ActionConfigurationProperty{ { // Required Key: aws.Bool(true), // Required Name: aws.String("ActionConfigurationKey"), // Required Required: aws.Bool(true), // Required Secret: aws.Bool(true), // Required Description: aws.String("Description"), Queryable: aws.Bool(true), Type: aws.String("ActionConfigurationPropertyType"), }, // More values... }, Settings: &codepipeline.ActionTypeSettings{ EntityUrlTemplate: aws.String("UrlTemplate"), ExecutionUrlTemplate: aws.String("UrlTemplate"), RevisionUrlTemplate: aws.String("UrlTemplate"), ThirdPartyConfigurationUrl: aws.String("Url"), }, } resp, err := svc.CreateCustomActionType(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_CreatePipeline() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.CreatePipelineInput{ Pipeline: &codepipeline.PipelineDeclaration{ // Required ArtifactStore: &codepipeline.ArtifactStore{ // Required Location: aws.String("ArtifactStoreLocation"), // Required Type: aws.String("ArtifactStoreType"), // Required EncryptionKey: &codepipeline.EncryptionKey{ Id: aws.String("EncryptionKeyId"), // Required Type: aws.String("EncryptionKeyType"), // Required }, }, Name: aws.String("PipelineName"), // Required RoleArn: aws.String("RoleArn"), // Required Stages: []*codepipeline.StageDeclaration{ // Required { // Required Actions: []*codepipeline.ActionDeclaration{ // Required { // Required ActionTypeId: &codepipeline.ActionTypeId{ // Required Category: aws.String("ActionCategory"), // Required Owner: aws.String("ActionOwner"), // Required Provider: aws.String("ActionProvider"), // Required Version: aws.String("Version"), // Required }, Name: aws.String("ActionName"), // Required Configuration: map[string]*string{ "Key": aws.String("ActionConfigurationValue"), // Required // More values... }, InputArtifacts: []*codepipeline.InputArtifact{ { // Required Name: aws.String("ArtifactName"), // Required }, // More values... }, OutputArtifacts: []*codepipeline.OutputArtifact{ { // Required Name: aws.String("ArtifactName"), // Required }, // More values... }, RoleArn: aws.String("RoleArn"), RunOrder: aws.Int64(1), }, // More values... }, Name: aws.String("StageName"), // Required Blockers: []*codepipeline.BlockerDeclaration{ { // Required Name: aws.String("BlockerName"), // Required Type: aws.String("BlockerType"), // Required }, // More values... }, }, // More values... }, Version: aws.Int64(1), }, } resp, err := svc.CreatePipeline(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_DeleteCustomActionType() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.DeleteCustomActionTypeInput{ Category: aws.String("ActionCategory"), // Required Provider: aws.String("ActionProvider"), // Required Version: aws.String("Version"), // Required } resp, err := svc.DeleteCustomActionType(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_DeletePipeline() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.DeletePipelineInput{ Name: aws.String("PipelineName"), // Required } resp, err := svc.DeletePipeline(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_DisableStageTransition() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.DisableStageTransitionInput{ PipelineName: aws.String("PipelineName"), // Required Reason: aws.String("DisabledReason"), // Required StageName: aws.String("StageName"), // Required TransitionType: aws.String("StageTransitionType"), // Required } resp, err := svc.DisableStageTransition(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_EnableStageTransition() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.EnableStageTransitionInput{ PipelineName: aws.String("PipelineName"), // Required StageName: aws.String("StageName"), // Required TransitionType: aws.String("StageTransitionType"), // Required } resp, err := svc.EnableStageTransition(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_GetJobDetails() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.GetJobDetailsInput{ JobId: aws.String("JobId"), // Required } resp, err := svc.GetJobDetails(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_GetPipeline() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.GetPipelineInput{ Name: aws.String("PipelineName"), // Required Version: aws.Int64(1), } resp, err := svc.GetPipeline(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_GetPipelineExecution() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.GetPipelineExecutionInput{ PipelineExecutionId: aws.String("PipelineExecutionId"), // Required PipelineName: aws.String("PipelineName"), // Required } resp, err := svc.GetPipelineExecution(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_GetPipelineState() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.GetPipelineStateInput{ Name: aws.String("PipelineName"), // Required } resp, err := svc.GetPipelineState(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_GetThirdPartyJobDetails() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.GetThirdPartyJobDetailsInput{ ClientToken: aws.String("ClientToken"), // Required JobId: aws.String("ThirdPartyJobId"), // Required } resp, err := svc.GetThirdPartyJobDetails(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_ListActionTypes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.ListActionTypesInput{ ActionOwnerFilter: aws.String("ActionOwner"), NextToken: aws.String("NextToken"), } resp, err := svc.ListActionTypes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_ListPipelines() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.ListPipelinesInput{ NextToken: aws.String("NextToken"), } resp, err := svc.ListPipelines(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_PollForJobs() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.PollForJobsInput{ ActionTypeId: &codepipeline.ActionTypeId{ // Required Category: aws.String("ActionCategory"), // Required Owner: aws.String("ActionOwner"), // Required Provider: aws.String("ActionProvider"), // Required Version: aws.String("Version"), // Required }, MaxBatchSize: aws.Int64(1), QueryParam: map[string]*string{ "Key": aws.String("ActionConfigurationQueryableValue"), // Required // More values... }, } resp, err := svc.PollForJobs(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_PollForThirdPartyJobs() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.PollForThirdPartyJobsInput{ ActionTypeId: &codepipeline.ActionTypeId{ // Required Category: aws.String("ActionCategory"), // Required Owner: aws.String("ActionOwner"), // Required Provider: aws.String("ActionProvider"), // Required Version: aws.String("Version"), // Required }, MaxBatchSize: aws.Int64(1), } resp, err := svc.PollForThirdPartyJobs(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_PutActionRevision() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.PutActionRevisionInput{ ActionName: aws.String("ActionName"), // Required ActionRevision: &codepipeline.ActionRevision{ // Required Created: aws.Time(time.Now()), // Required RevisionChangeId: aws.String("RevisionChangeIdentifier"), // Required RevisionId: aws.String("Revision"), // Required }, PipelineName: aws.String("PipelineName"), // Required StageName: aws.String("StageName"), // Required } resp, err := svc.PutActionRevision(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_PutApprovalResult() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.PutApprovalResultInput{ ActionName: aws.String("ActionName"), // Required PipelineName: aws.String("PipelineName"), // Required Result: &codepipeline.ApprovalResult{ // Required Status: aws.String("ApprovalStatus"), // Required Summary: aws.String("ApprovalSummary"), // Required }, StageName: aws.String("StageName"), // Required Token: aws.String("ApprovalToken"), // Required } resp, err := svc.PutApprovalResult(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_PutJobFailureResult() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.PutJobFailureResultInput{ FailureDetails: &codepipeline.FailureDetails{ // Required Message: aws.String("Message"), // Required Type: aws.String("FailureType"), // Required ExternalExecutionId: aws.String("ExecutionId"), }, JobId: aws.String("JobId"), // Required } resp, err := svc.PutJobFailureResult(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_PutJobSuccessResult() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.PutJobSuccessResultInput{ JobId: aws.String("JobId"), // Required ContinuationToken: aws.String("ContinuationToken"), CurrentRevision: &codepipeline.CurrentRevision{ ChangeIdentifier: aws.String("RevisionChangeIdentifier"), // Required Revision: aws.String("Revision"), // Required Created: aws.Time(time.Now()), RevisionSummary: aws.String("RevisionSummary"), }, ExecutionDetails: &codepipeline.ExecutionDetails{ ExternalExecutionId: aws.String("ExecutionId"), PercentComplete: aws.Int64(1), Summary: aws.String("ExecutionSummary"), }, } resp, err := svc.PutJobSuccessResult(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_PutThirdPartyJobFailureResult() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.PutThirdPartyJobFailureResultInput{ ClientToken: aws.String("ClientToken"), // Required FailureDetails: &codepipeline.FailureDetails{ // Required Message: aws.String("Message"), // Required Type: aws.String("FailureType"), // Required ExternalExecutionId: aws.String("ExecutionId"), }, JobId: aws.String("ThirdPartyJobId"), // Required } resp, err := svc.PutThirdPartyJobFailureResult(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_PutThirdPartyJobSuccessResult() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.PutThirdPartyJobSuccessResultInput{ ClientToken: aws.String("ClientToken"), // Required JobId: aws.String("ThirdPartyJobId"), // Required ContinuationToken: aws.String("ContinuationToken"), CurrentRevision: &codepipeline.CurrentRevision{ ChangeIdentifier: aws.String("RevisionChangeIdentifier"), // Required Revision: aws.String("Revision"), // Required Created: aws.Time(time.Now()), RevisionSummary: aws.String("RevisionSummary"), }, ExecutionDetails: &codepipeline.ExecutionDetails{ ExternalExecutionId: aws.String("ExecutionId"), PercentComplete: aws.Int64(1), Summary: aws.String("ExecutionSummary"), }, } resp, err := svc.PutThirdPartyJobSuccessResult(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_RetryStageExecution() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.RetryStageExecutionInput{ PipelineExecutionId: aws.String("PipelineExecutionId"), // Required PipelineName: aws.String("PipelineName"), // Required RetryMode: aws.String("StageRetryMode"), // Required StageName: aws.String("StageName"), // Required } resp, err := svc.RetryStageExecution(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_StartPipelineExecution() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.StartPipelineExecutionInput{ Name: aws.String("PipelineName"), // Required } resp, err := svc.StartPipelineExecution(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCodePipeline_UpdatePipeline() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := codepipeline.New(sess) params := &codepipeline.UpdatePipelineInput{ Pipeline: &codepipeline.PipelineDeclaration{ // Required ArtifactStore: &codepipeline.ArtifactStore{ // Required Location: aws.String("ArtifactStoreLocation"), // Required Type: aws.String("ArtifactStoreType"), // Required EncryptionKey: &codepipeline.EncryptionKey{ Id: aws.String("EncryptionKeyId"), // Required Type: aws.String("EncryptionKeyType"), // Required }, }, Name: aws.String("PipelineName"), // Required RoleArn: aws.String("RoleArn"), // Required Stages: []*codepipeline.StageDeclaration{ // Required { // Required Actions: []*codepipeline.ActionDeclaration{ // Required { // Required ActionTypeId: &codepipeline.ActionTypeId{ // Required Category: aws.String("ActionCategory"), // Required Owner: aws.String("ActionOwner"), // Required Provider: aws.String("ActionProvider"), // Required Version: aws.String("Version"), // Required }, Name: aws.String("ActionName"), // Required Configuration: map[string]*string{ "Key": aws.String("ActionConfigurationValue"), // Required // More values... }, InputArtifacts: []*codepipeline.InputArtifact{ { // Required Name: aws.String("ArtifactName"), // Required }, // More values... }, OutputArtifacts: []*codepipeline.OutputArtifact{ { // Required Name: aws.String("ArtifactName"), // Required }, // More values... }, RoleArn: aws.String("RoleArn"), RunOrder: aws.Int64(1), }, // More values... }, Name: aws.String("StageName"), // Required Blockers: []*codepipeline.BlockerDeclaration{ { // Required Name: aws.String("BlockerName"), // Required Type: aws.String("BlockerType"), // Required }, // More values... }, }, // More values... }, Version: aws.Int64(1), }, } resp, err := svc.UpdatePipeline(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/codepipeline/service.go000066400000000000000000000170651300374646400216630ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package codepipeline import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Overview // // This is the AWS CodePipeline API Reference. This guide provides descriptions // of the actions and data types for AWS CodePipeline. Some functionality for // your pipeline is only configurable through the API. For additional information, // see the AWS CodePipeline User Guide (http://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html). // // You can use the AWS CodePipeline API to work with pipelines, stages, actions, // gates, and transitions, as described below. // // Pipelines are models of automated release processes. Each pipeline is uniquely // named, and consists of actions, gates, and stages. // // You can work with pipelines by calling: // // * CreatePipeline, which creates a uniquely-named pipeline. // // * DeletePipeline, which deletes the specified pipeline. // // * GetPipeline, which returns information about a pipeline structure. // // * GetPipelineExecution, which returns information about a specific execution // of a pipeline. // // * GetPipelineState, which returns information about the current state // of the stages and actions of a pipeline. // // * ListPipelines, which gets a summary of all of the pipelines associated // with your account. // // * StartPipelineExecution, which runs the the most recent revision of an // artifact through the pipeline. // // * UpdatePipeline, which updates a pipeline with edits or changes to the // structure of the pipeline. // // Pipelines include stages, which are which are logical groupings of gates // and actions. Each stage contains one or more actions that must complete before // the next stage begins. A stage will result in success or failure. If a stage // fails, then the pipeline stops at that stage and will remain stopped until // either a new version of an artifact appears in the source location, or a // user takes action to re-run the most recent artifact through the pipeline. // You can call GetPipelineState, which displays the status of a pipeline, including // the status of stages in the pipeline, or GetPipeline, which returns the entire // structure of the pipeline, including the stages of that pipeline. For more // information about the structure of stages and actions, also refer to the // AWS CodePipeline Pipeline Structure Reference (http://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-structure.html). // // Pipeline stages include actions, which are categorized into categories such // as source or build actions performed within a stage of a pipeline. For example, // you can use a source action to import artifacts into a pipeline from a source // such as Amazon S3. Like stages, you do not work with actions directly in // most cases, but you do define and interact with actions when working with // pipeline operations such as CreatePipeline and GetPipelineState. // // Pipelines also include transitions, which allow the transition of artifacts // from one stage to the next in a pipeline after the actions in one stage complete. // // You can work with transitions by calling: // // * DisableStageTransition, which prevents artifacts from transitioning // to the next stage in a pipeline. // // * EnableStageTransition, which enables transition of artifacts between // stages in a pipeline. // // Using the API to integrate with AWS CodePipeline // // For third-party integrators or developers who want to create their own integrations // with AWS CodePipeline, the expected sequence varies from the standard API // user. In order to integrate with AWS CodePipeline, developers will need to // work with the following items: // // Jobs, which are instances of an action. For example, a job for a source action // might import a revision of an artifact from a source. // // You can work with jobs by calling: // // * AcknowledgeJob, which confirms whether a job worker has received the // specified job, // // * GetJobDetails, which returns the details of a job, // // * PollForJobs, which determines whether there are any jobs to act upon, // // // * PutJobFailureResult, which provides details of a job failure, and // // * PutJobSuccessResult, which provides details of a job success. // // Third party jobs, which are instances of an action created by a partner action // and integrated into AWS CodePipeline. Partner actions are created by members // of the AWS Partner Network. // // You can work with third party jobs by calling: // // * AcknowledgeThirdPartyJob, which confirms whether a job worker has received // the specified job, // // * GetThirdPartyJobDetails, which requests the details of a job for a partner // action, // // * PollForThirdPartyJobs, which determines whether there are any jobs to // act upon, // // * PutThirdPartyJobFailureResult, which provides details of a job failure, // and // // * PutThirdPartyJobSuccessResult, which provides details of a job success. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type CodePipeline struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "codepipeline" // New creates a new instance of the CodePipeline client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a CodePipeline client from just a session. // svc := codepipeline.New(mySession) // // // Create a CodePipeline client with additional configuration // svc := codepipeline.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *CodePipeline { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *CodePipeline { svc := &CodePipeline{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-07-09", JSONVersion: "1.1", TargetPrefix: "CodePipeline_20150709", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a CodePipeline operation and runs any // custom request initialization. func (c *CodePipeline) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/cognitoidentity/000077500000000000000000000000001300374646400204375ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cognitoidentity/api.go000066400000000000000000003030541300374646400215440ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cognitoidentity provides a client for Amazon Cognito Identity. package cognitoidentity import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opCreateIdentityPool = "CreateIdentityPool" // CreateIdentityPoolRequest generates a "aws/request.Request" representing the // client's request for the CreateIdentityPool operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateIdentityPool for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateIdentityPool method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateIdentityPoolRequest method. // req, resp := client.CreateIdentityPoolRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentity) CreateIdentityPoolRequest(input *CreateIdentityPoolInput) (req *request.Request, output *IdentityPool) { op := &request.Operation{ Name: opCreateIdentityPool, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateIdentityPoolInput{} } req = c.newRequest(op, input, output) output = &IdentityPool{} req.Data = output return } // CreateIdentityPool API operation for Amazon Cognito Identity. // // Creates a new identity pool. The identity pool is a store of user identity // information that is specific to your AWS account. The limit on identity pools // is 60 per account. The keys for SupportedLoginProviders are as follows: Facebook: // graph.facebook.com // Google: accounts.google.com // Amazon: www.amazon.com // Twitter: api.twitter.com // Digits: www.digits.com // You must use AWS Developer credentials to call this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity's // API operation CreateIdentityPool for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown for missing or bad input parameter(s). // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * ResourceConflictException // Thrown when a user tries to use a login which is already linked to another // account. // // * TooManyRequestsException // Thrown when a request is throttled. // // * InternalErrorException // Thrown when the service encounters an error during processing the request. // // * LimitExceededException // Thrown when the total number of user pools has exceeded a preset limit. // func (c *CognitoIdentity) CreateIdentityPool(input *CreateIdentityPoolInput) (*IdentityPool, error) { req, out := c.CreateIdentityPoolRequest(input) err := req.Send() return out, err } const opDeleteIdentities = "DeleteIdentities" // DeleteIdentitiesRequest generates a "aws/request.Request" representing the // client's request for the DeleteIdentities operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteIdentities for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteIdentities method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteIdentitiesRequest method. // req, resp := client.DeleteIdentitiesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentity) DeleteIdentitiesRequest(input *DeleteIdentitiesInput) (req *request.Request, output *DeleteIdentitiesOutput) { op := &request.Operation{ Name: opDeleteIdentities, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteIdentitiesInput{} } req = c.newRequest(op, input, output) output = &DeleteIdentitiesOutput{} req.Data = output return } // DeleteIdentities API operation for Amazon Cognito Identity. // // Deletes identities from an identity pool. You can specify a list of 1-60 // identities that you want to delete. // // You must use AWS Developer credentials to call this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity's // API operation DeleteIdentities for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown for missing or bad input parameter(s). // // * TooManyRequestsException // Thrown when a request is throttled. // // * InternalErrorException // Thrown when the service encounters an error during processing the request. // func (c *CognitoIdentity) DeleteIdentities(input *DeleteIdentitiesInput) (*DeleteIdentitiesOutput, error) { req, out := c.DeleteIdentitiesRequest(input) err := req.Send() return out, err } const opDeleteIdentityPool = "DeleteIdentityPool" // DeleteIdentityPoolRequest generates a "aws/request.Request" representing the // client's request for the DeleteIdentityPool operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteIdentityPool for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteIdentityPool method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteIdentityPoolRequest method. // req, resp := client.DeleteIdentityPoolRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentity) DeleteIdentityPoolRequest(input *DeleteIdentityPoolInput) (req *request.Request, output *DeleteIdentityPoolOutput) { op := &request.Operation{ Name: opDeleteIdentityPool, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteIdentityPoolInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteIdentityPoolOutput{} req.Data = output return } // DeleteIdentityPool API operation for Amazon Cognito Identity. // // Deletes a user pool. Once a pool is deleted, users will not be able to authenticate // with the pool. // // You must use AWS Developer credentials to call this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity's // API operation DeleteIdentityPool for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown for missing or bad input parameter(s). // // * ResourceNotFoundException // Thrown when the requested resource (for example, a dataset or record) does // not exist. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * TooManyRequestsException // Thrown when a request is throttled. // // * InternalErrorException // Thrown when the service encounters an error during processing the request. // func (c *CognitoIdentity) DeleteIdentityPool(input *DeleteIdentityPoolInput) (*DeleteIdentityPoolOutput, error) { req, out := c.DeleteIdentityPoolRequest(input) err := req.Send() return out, err } const opDescribeIdentity = "DescribeIdentity" // DescribeIdentityRequest generates a "aws/request.Request" representing the // client's request for the DescribeIdentity operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeIdentity for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeIdentity method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeIdentityRequest method. // req, resp := client.DescribeIdentityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentity) DescribeIdentityRequest(input *DescribeIdentityInput) (req *request.Request, output *IdentityDescription) { op := &request.Operation{ Name: opDescribeIdentity, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeIdentityInput{} } req = c.newRequest(op, input, output) output = &IdentityDescription{} req.Data = output return } // DescribeIdentity API operation for Amazon Cognito Identity. // // Returns metadata related to the given identity, including when the identity // was created and any associated linked logins. // // You must use AWS Developer credentials to call this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity's // API operation DescribeIdentity for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown for missing or bad input parameter(s). // // * ResourceNotFoundException // Thrown when the requested resource (for example, a dataset or record) does // not exist. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * TooManyRequestsException // Thrown when a request is throttled. // // * InternalErrorException // Thrown when the service encounters an error during processing the request. // func (c *CognitoIdentity) DescribeIdentity(input *DescribeIdentityInput) (*IdentityDescription, error) { req, out := c.DescribeIdentityRequest(input) err := req.Send() return out, err } const opDescribeIdentityPool = "DescribeIdentityPool" // DescribeIdentityPoolRequest generates a "aws/request.Request" representing the // client's request for the DescribeIdentityPool operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeIdentityPool for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeIdentityPool method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeIdentityPoolRequest method. // req, resp := client.DescribeIdentityPoolRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentity) DescribeIdentityPoolRequest(input *DescribeIdentityPoolInput) (req *request.Request, output *IdentityPool) { op := &request.Operation{ Name: opDescribeIdentityPool, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeIdentityPoolInput{} } req = c.newRequest(op, input, output) output = &IdentityPool{} req.Data = output return } // DescribeIdentityPool API operation for Amazon Cognito Identity. // // Gets details about a particular identity pool, including the pool name, ID // description, creation date, and current number of users. // // You must use AWS Developer credentials to call this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity's // API operation DescribeIdentityPool for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown for missing or bad input parameter(s). // // * ResourceNotFoundException // Thrown when the requested resource (for example, a dataset or record) does // not exist. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * TooManyRequestsException // Thrown when a request is throttled. // // * InternalErrorException // Thrown when the service encounters an error during processing the request. // func (c *CognitoIdentity) DescribeIdentityPool(input *DescribeIdentityPoolInput) (*IdentityPool, error) { req, out := c.DescribeIdentityPoolRequest(input) err := req.Send() return out, err } const opGetCredentialsForIdentity = "GetCredentialsForIdentity" // GetCredentialsForIdentityRequest generates a "aws/request.Request" representing the // client's request for the GetCredentialsForIdentity operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetCredentialsForIdentity for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetCredentialsForIdentity method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetCredentialsForIdentityRequest method. // req, resp := client.GetCredentialsForIdentityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentity) GetCredentialsForIdentityRequest(input *GetCredentialsForIdentityInput) (req *request.Request, output *GetCredentialsForIdentityOutput) { op := &request.Operation{ Name: opGetCredentialsForIdentity, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetCredentialsForIdentityInput{} } req = c.newRequest(op, input, output) output = &GetCredentialsForIdentityOutput{} req.Data = output return } // GetCredentialsForIdentity API operation for Amazon Cognito Identity. // // Returns credentials for the provided identity ID. Any provided logins will // be validated against supported login providers. If the token is for cognito-identity.amazonaws.com, // it will be passed through to AWS Security Token Service with the appropriate // role for the token. // // This is a public API. You do not need any credentials to call this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity's // API operation GetCredentialsForIdentity for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown for missing or bad input parameter(s). // // * ResourceNotFoundException // Thrown when the requested resource (for example, a dataset or record) does // not exist. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * ResourceConflictException // Thrown when a user tries to use a login which is already linked to another // account. // // * TooManyRequestsException // Thrown when a request is throttled. // // * InvalidIdentityPoolConfigurationException // Thrown if the identity pool has no role associated for the given auth type // (auth/unauth) or if the AssumeRole fails. // // * InternalErrorException // Thrown when the service encounters an error during processing the request. // // * ExternalServiceException // An exception thrown when a dependent service such as Facebook or Twitter // is not responding // func (c *CognitoIdentity) GetCredentialsForIdentity(input *GetCredentialsForIdentityInput) (*GetCredentialsForIdentityOutput, error) { req, out := c.GetCredentialsForIdentityRequest(input) err := req.Send() return out, err } const opGetId = "GetId" // GetIdRequest generates a "aws/request.Request" representing the // client's request for the GetId operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetId for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetId method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetIdRequest method. // req, resp := client.GetIdRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentity) GetIdRequest(input *GetIdInput) (req *request.Request, output *GetIdOutput) { op := &request.Operation{ Name: opGetId, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetIdInput{} } req = c.newRequest(op, input, output) output = &GetIdOutput{} req.Data = output return } // GetId API operation for Amazon Cognito Identity. // // Generates (or retrieves) a Cognito ID. Supplying multiple logins will create // an implicit linked account. // // This is a public API. You do not need any credentials to call this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity's // API operation GetId for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown for missing or bad input parameter(s). // // * ResourceNotFoundException // Thrown when the requested resource (for example, a dataset or record) does // not exist. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * ResourceConflictException // Thrown when a user tries to use a login which is already linked to another // account. // // * TooManyRequestsException // Thrown when a request is throttled. // // * InternalErrorException // Thrown when the service encounters an error during processing the request. // // * LimitExceededException // Thrown when the total number of user pools has exceeded a preset limit. // // * ExternalServiceException // An exception thrown when a dependent service such as Facebook or Twitter // is not responding // func (c *CognitoIdentity) GetId(input *GetIdInput) (*GetIdOutput, error) { req, out := c.GetIdRequest(input) err := req.Send() return out, err } const opGetIdentityPoolRoles = "GetIdentityPoolRoles" // GetIdentityPoolRolesRequest generates a "aws/request.Request" representing the // client's request for the GetIdentityPoolRoles operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetIdentityPoolRoles for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetIdentityPoolRoles method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetIdentityPoolRolesRequest method. // req, resp := client.GetIdentityPoolRolesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentity) GetIdentityPoolRolesRequest(input *GetIdentityPoolRolesInput) (req *request.Request, output *GetIdentityPoolRolesOutput) { op := &request.Operation{ Name: opGetIdentityPoolRoles, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetIdentityPoolRolesInput{} } req = c.newRequest(op, input, output) output = &GetIdentityPoolRolesOutput{} req.Data = output return } // GetIdentityPoolRoles API operation for Amazon Cognito Identity. // // Gets the roles for an identity pool. // // You must use AWS Developer credentials to call this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity's // API operation GetIdentityPoolRoles for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown for missing or bad input parameter(s). // // * ResourceNotFoundException // Thrown when the requested resource (for example, a dataset or record) does // not exist. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * ResourceConflictException // Thrown when a user tries to use a login which is already linked to another // account. // // * TooManyRequestsException // Thrown when a request is throttled. // // * InternalErrorException // Thrown when the service encounters an error during processing the request. // func (c *CognitoIdentity) GetIdentityPoolRoles(input *GetIdentityPoolRolesInput) (*GetIdentityPoolRolesOutput, error) { req, out := c.GetIdentityPoolRolesRequest(input) err := req.Send() return out, err } const opGetOpenIdToken = "GetOpenIdToken" // GetOpenIdTokenRequest generates a "aws/request.Request" representing the // client's request for the GetOpenIdToken operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetOpenIdToken for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetOpenIdToken method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetOpenIdTokenRequest method. // req, resp := client.GetOpenIdTokenRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentity) GetOpenIdTokenRequest(input *GetOpenIdTokenInput) (req *request.Request, output *GetOpenIdTokenOutput) { op := &request.Operation{ Name: opGetOpenIdToken, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetOpenIdTokenInput{} } req = c.newRequest(op, input, output) output = &GetOpenIdTokenOutput{} req.Data = output return } // GetOpenIdToken API operation for Amazon Cognito Identity. // // Gets an OpenID token, using a known Cognito ID. This known Cognito ID is // returned by GetId. You can optionally add additional logins for the identity. // Supplying multiple logins creates an implicit link. // // The OpenId token is valid for 15 minutes. // // This is a public API. You do not need any credentials to call this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity's // API operation GetOpenIdToken for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown for missing or bad input parameter(s). // // * ResourceNotFoundException // Thrown when the requested resource (for example, a dataset or record) does // not exist. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * ResourceConflictException // Thrown when a user tries to use a login which is already linked to another // account. // // * TooManyRequestsException // Thrown when a request is throttled. // // * InternalErrorException // Thrown when the service encounters an error during processing the request. // // * ExternalServiceException // An exception thrown when a dependent service such as Facebook or Twitter // is not responding // func (c *CognitoIdentity) GetOpenIdToken(input *GetOpenIdTokenInput) (*GetOpenIdTokenOutput, error) { req, out := c.GetOpenIdTokenRequest(input) err := req.Send() return out, err } const opGetOpenIdTokenForDeveloperIdentity = "GetOpenIdTokenForDeveloperIdentity" // GetOpenIdTokenForDeveloperIdentityRequest generates a "aws/request.Request" representing the // client's request for the GetOpenIdTokenForDeveloperIdentity operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetOpenIdTokenForDeveloperIdentity for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetOpenIdTokenForDeveloperIdentity method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetOpenIdTokenForDeveloperIdentityRequest method. // req, resp := client.GetOpenIdTokenForDeveloperIdentityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentity) GetOpenIdTokenForDeveloperIdentityRequest(input *GetOpenIdTokenForDeveloperIdentityInput) (req *request.Request, output *GetOpenIdTokenForDeveloperIdentityOutput) { op := &request.Operation{ Name: opGetOpenIdTokenForDeveloperIdentity, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetOpenIdTokenForDeveloperIdentityInput{} } req = c.newRequest(op, input, output) output = &GetOpenIdTokenForDeveloperIdentityOutput{} req.Data = output return } // GetOpenIdTokenForDeveloperIdentity API operation for Amazon Cognito Identity. // // Registers (or retrieves) a Cognito IdentityId and an OpenID Connect token // for a user authenticated by your backend authentication process. Supplying // multiple logins will create an implicit linked account. You can only specify // one developer provider as part of the Logins map, which is linked to the // identity pool. The developer provider is the "domain" by which Cognito will // refer to your users. // // You can use GetOpenIdTokenForDeveloperIdentity to create a new identity and // to link new logins (that is, user credentials issued by a public provider // or developer provider) to an existing identity. When you want to create a // new identity, the IdentityId should be null. When you want to associate a // new login with an existing authenticated/unauthenticated identity, you can // do so by providing the existing IdentityId. This API will create the identity // in the specified IdentityPoolId. // // You must use AWS Developer credentials to call this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity's // API operation GetOpenIdTokenForDeveloperIdentity for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown for missing or bad input parameter(s). // // * ResourceNotFoundException // Thrown when the requested resource (for example, a dataset or record) does // not exist. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * ResourceConflictException // Thrown when a user tries to use a login which is already linked to another // account. // // * TooManyRequestsException // Thrown when a request is throttled. // // * InternalErrorException // Thrown when the service encounters an error during processing the request. // // * DeveloperUserAlreadyRegisteredException // The provided developer user identifier is already registered with Cognito // under a different identity ID. // func (c *CognitoIdentity) GetOpenIdTokenForDeveloperIdentity(input *GetOpenIdTokenForDeveloperIdentityInput) (*GetOpenIdTokenForDeveloperIdentityOutput, error) { req, out := c.GetOpenIdTokenForDeveloperIdentityRequest(input) err := req.Send() return out, err } const opListIdentities = "ListIdentities" // ListIdentitiesRequest generates a "aws/request.Request" representing the // client's request for the ListIdentities operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListIdentities for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListIdentities method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListIdentitiesRequest method. // req, resp := client.ListIdentitiesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentity) ListIdentitiesRequest(input *ListIdentitiesInput) (req *request.Request, output *ListIdentitiesOutput) { op := &request.Operation{ Name: opListIdentities, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListIdentitiesInput{} } req = c.newRequest(op, input, output) output = &ListIdentitiesOutput{} req.Data = output return } // ListIdentities API operation for Amazon Cognito Identity. // // Lists the identities in a pool. // // You must use AWS Developer credentials to call this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity's // API operation ListIdentities for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown for missing or bad input parameter(s). // // * ResourceNotFoundException // Thrown when the requested resource (for example, a dataset or record) does // not exist. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * TooManyRequestsException // Thrown when a request is throttled. // // * InternalErrorException // Thrown when the service encounters an error during processing the request. // func (c *CognitoIdentity) ListIdentities(input *ListIdentitiesInput) (*ListIdentitiesOutput, error) { req, out := c.ListIdentitiesRequest(input) err := req.Send() return out, err } const opListIdentityPools = "ListIdentityPools" // ListIdentityPoolsRequest generates a "aws/request.Request" representing the // client's request for the ListIdentityPools operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListIdentityPools for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListIdentityPools method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListIdentityPoolsRequest method. // req, resp := client.ListIdentityPoolsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentity) ListIdentityPoolsRequest(input *ListIdentityPoolsInput) (req *request.Request, output *ListIdentityPoolsOutput) { op := &request.Operation{ Name: opListIdentityPools, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListIdentityPoolsInput{} } req = c.newRequest(op, input, output) output = &ListIdentityPoolsOutput{} req.Data = output return } // ListIdentityPools API operation for Amazon Cognito Identity. // // Lists all of the Cognito identity pools registered for your account. // // You must use AWS Developer credentials to call this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity's // API operation ListIdentityPools for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown for missing or bad input parameter(s). // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * TooManyRequestsException // Thrown when a request is throttled. // // * InternalErrorException // Thrown when the service encounters an error during processing the request. // func (c *CognitoIdentity) ListIdentityPools(input *ListIdentityPoolsInput) (*ListIdentityPoolsOutput, error) { req, out := c.ListIdentityPoolsRequest(input) err := req.Send() return out, err } const opLookupDeveloperIdentity = "LookupDeveloperIdentity" // LookupDeveloperIdentityRequest generates a "aws/request.Request" representing the // client's request for the LookupDeveloperIdentity operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See LookupDeveloperIdentity for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the LookupDeveloperIdentity method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the LookupDeveloperIdentityRequest method. // req, resp := client.LookupDeveloperIdentityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentity) LookupDeveloperIdentityRequest(input *LookupDeveloperIdentityInput) (req *request.Request, output *LookupDeveloperIdentityOutput) { op := &request.Operation{ Name: opLookupDeveloperIdentity, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &LookupDeveloperIdentityInput{} } req = c.newRequest(op, input, output) output = &LookupDeveloperIdentityOutput{} req.Data = output return } // LookupDeveloperIdentity API operation for Amazon Cognito Identity. // // Retrieves the IdentityID associated with a DeveloperUserIdentifier or the // list of DeveloperUserIdentifiers associated with an IdentityId for an existing // identity. Either IdentityID or DeveloperUserIdentifier must not be null. // If you supply only one of these values, the other value will be searched // in the database and returned as a part of the response. If you supply both, // DeveloperUserIdentifier will be matched against IdentityID. If the values // are verified against the database, the response returns both values and is // the same as the request. Otherwise a ResourceConflictException is thrown. // // You must use AWS Developer credentials to call this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity's // API operation LookupDeveloperIdentity for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown for missing or bad input parameter(s). // // * ResourceNotFoundException // Thrown when the requested resource (for example, a dataset or record) does // not exist. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * ResourceConflictException // Thrown when a user tries to use a login which is already linked to another // account. // // * TooManyRequestsException // Thrown when a request is throttled. // // * InternalErrorException // Thrown when the service encounters an error during processing the request. // func (c *CognitoIdentity) LookupDeveloperIdentity(input *LookupDeveloperIdentityInput) (*LookupDeveloperIdentityOutput, error) { req, out := c.LookupDeveloperIdentityRequest(input) err := req.Send() return out, err } const opMergeDeveloperIdentities = "MergeDeveloperIdentities" // MergeDeveloperIdentitiesRequest generates a "aws/request.Request" representing the // client's request for the MergeDeveloperIdentities operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See MergeDeveloperIdentities for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the MergeDeveloperIdentities method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the MergeDeveloperIdentitiesRequest method. // req, resp := client.MergeDeveloperIdentitiesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentity) MergeDeveloperIdentitiesRequest(input *MergeDeveloperIdentitiesInput) (req *request.Request, output *MergeDeveloperIdentitiesOutput) { op := &request.Operation{ Name: opMergeDeveloperIdentities, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &MergeDeveloperIdentitiesInput{} } req = c.newRequest(op, input, output) output = &MergeDeveloperIdentitiesOutput{} req.Data = output return } // MergeDeveloperIdentities API operation for Amazon Cognito Identity. // // Merges two users having different IdentityIds, existing in the same identity // pool, and identified by the same developer provider. You can use this action // to request that discrete users be merged and identified as a single user // in the Cognito environment. Cognito associates the given source user (SourceUserIdentifier) // with the IdentityId of the DestinationUserIdentifier. Only developer-authenticated // users can be merged. If the users to be merged are associated with the same // public provider, but as two different users, an exception will be thrown. // // You must use AWS Developer credentials to call this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity's // API operation MergeDeveloperIdentities for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown for missing or bad input parameter(s). // // * ResourceNotFoundException // Thrown when the requested resource (for example, a dataset or record) does // not exist. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * ResourceConflictException // Thrown when a user tries to use a login which is already linked to another // account. // // * TooManyRequestsException // Thrown when a request is throttled. // // * InternalErrorException // Thrown when the service encounters an error during processing the request. // func (c *CognitoIdentity) MergeDeveloperIdentities(input *MergeDeveloperIdentitiesInput) (*MergeDeveloperIdentitiesOutput, error) { req, out := c.MergeDeveloperIdentitiesRequest(input) err := req.Send() return out, err } const opSetIdentityPoolRoles = "SetIdentityPoolRoles" // SetIdentityPoolRolesRequest generates a "aws/request.Request" representing the // client's request for the SetIdentityPoolRoles operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetIdentityPoolRoles for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetIdentityPoolRoles method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetIdentityPoolRolesRequest method. // req, resp := client.SetIdentityPoolRolesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentity) SetIdentityPoolRolesRequest(input *SetIdentityPoolRolesInput) (req *request.Request, output *SetIdentityPoolRolesOutput) { op := &request.Operation{ Name: opSetIdentityPoolRoles, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetIdentityPoolRolesInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetIdentityPoolRolesOutput{} req.Data = output return } // SetIdentityPoolRoles API operation for Amazon Cognito Identity. // // Sets the roles for an identity pool. These roles are used when making calls // to GetCredentialsForIdentity action. // // You must use AWS Developer credentials to call this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity's // API operation SetIdentityPoolRoles for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown for missing or bad input parameter(s). // // * ResourceNotFoundException // Thrown when the requested resource (for example, a dataset or record) does // not exist. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * ResourceConflictException // Thrown when a user tries to use a login which is already linked to another // account. // // * TooManyRequestsException // Thrown when a request is throttled. // // * InternalErrorException // Thrown when the service encounters an error during processing the request. // // * ConcurrentModificationException // Thrown if there are parallel requests to modify a resource. // func (c *CognitoIdentity) SetIdentityPoolRoles(input *SetIdentityPoolRolesInput) (*SetIdentityPoolRolesOutput, error) { req, out := c.SetIdentityPoolRolesRequest(input) err := req.Send() return out, err } const opUnlinkDeveloperIdentity = "UnlinkDeveloperIdentity" // UnlinkDeveloperIdentityRequest generates a "aws/request.Request" representing the // client's request for the UnlinkDeveloperIdentity operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UnlinkDeveloperIdentity for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UnlinkDeveloperIdentity method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UnlinkDeveloperIdentityRequest method. // req, resp := client.UnlinkDeveloperIdentityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentity) UnlinkDeveloperIdentityRequest(input *UnlinkDeveloperIdentityInput) (req *request.Request, output *UnlinkDeveloperIdentityOutput) { op := &request.Operation{ Name: opUnlinkDeveloperIdentity, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UnlinkDeveloperIdentityInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UnlinkDeveloperIdentityOutput{} req.Data = output return } // UnlinkDeveloperIdentity API operation for Amazon Cognito Identity. // // Unlinks a DeveloperUserIdentifier from an existing identity. Unlinked developer // users will be considered new identities next time they are seen. If, for // a given Cognito identity, you remove all federated identities as well as // the developer user identifier, the Cognito identity becomes inaccessible. // // You must use AWS Developer credentials to call this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity's // API operation UnlinkDeveloperIdentity for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown for missing or bad input parameter(s). // // * ResourceNotFoundException // Thrown when the requested resource (for example, a dataset or record) does // not exist. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * ResourceConflictException // Thrown when a user tries to use a login which is already linked to another // account. // // * TooManyRequestsException // Thrown when a request is throttled. // // * InternalErrorException // Thrown when the service encounters an error during processing the request. // func (c *CognitoIdentity) UnlinkDeveloperIdentity(input *UnlinkDeveloperIdentityInput) (*UnlinkDeveloperIdentityOutput, error) { req, out := c.UnlinkDeveloperIdentityRequest(input) err := req.Send() return out, err } const opUnlinkIdentity = "UnlinkIdentity" // UnlinkIdentityRequest generates a "aws/request.Request" representing the // client's request for the UnlinkIdentity operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UnlinkIdentity for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UnlinkIdentity method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UnlinkIdentityRequest method. // req, resp := client.UnlinkIdentityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentity) UnlinkIdentityRequest(input *UnlinkIdentityInput) (req *request.Request, output *UnlinkIdentityOutput) { op := &request.Operation{ Name: opUnlinkIdentity, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UnlinkIdentityInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UnlinkIdentityOutput{} req.Data = output return } // UnlinkIdentity API operation for Amazon Cognito Identity. // // Unlinks a federated identity from an existing account. Unlinked logins will // be considered new identities next time they are seen. Removing the last linked // login will make this identity inaccessible. // // This is a public API. You do not need any credentials to call this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity's // API operation UnlinkIdentity for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown for missing or bad input parameter(s). // // * ResourceNotFoundException // Thrown when the requested resource (for example, a dataset or record) does // not exist. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * ResourceConflictException // Thrown when a user tries to use a login which is already linked to another // account. // // * TooManyRequestsException // Thrown when a request is throttled. // // * InternalErrorException // Thrown when the service encounters an error during processing the request. // // * ExternalServiceException // An exception thrown when a dependent service such as Facebook or Twitter // is not responding // func (c *CognitoIdentity) UnlinkIdentity(input *UnlinkIdentityInput) (*UnlinkIdentityOutput, error) { req, out := c.UnlinkIdentityRequest(input) err := req.Send() return out, err } const opUpdateIdentityPool = "UpdateIdentityPool" // UpdateIdentityPoolRequest generates a "aws/request.Request" representing the // client's request for the UpdateIdentityPool operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateIdentityPool for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateIdentityPool method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateIdentityPoolRequest method. // req, resp := client.UpdateIdentityPoolRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentity) UpdateIdentityPoolRequest(input *IdentityPool) (req *request.Request, output *IdentityPool) { op := &request.Operation{ Name: opUpdateIdentityPool, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &IdentityPool{} } req = c.newRequest(op, input, output) output = &IdentityPool{} req.Data = output return } // UpdateIdentityPool API operation for Amazon Cognito Identity. // // Updates a user pool. // // You must use AWS Developer credentials to call this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity's // API operation UpdateIdentityPool for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown for missing or bad input parameter(s). // // * ResourceNotFoundException // Thrown when the requested resource (for example, a dataset or record) does // not exist. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * ResourceConflictException // Thrown when a user tries to use a login which is already linked to another // account. // // * TooManyRequestsException // Thrown when a request is throttled. // // * InternalErrorException // Thrown when the service encounters an error during processing the request. // // * ConcurrentModificationException // Thrown if there are parallel requests to modify a resource. // // * LimitExceededException // Thrown when the total number of user pools has exceeded a preset limit. // func (c *CognitoIdentity) UpdateIdentityPool(input *IdentityPool) (*IdentityPool, error) { req, out := c.UpdateIdentityPoolRequest(input) err := req.Send() return out, err } // Input to the CreateIdentityPool action. type CreateIdentityPoolInput struct { _ struct{} `type:"structure"` // TRUE if the identity pool supports unauthenticated logins. // // AllowUnauthenticatedIdentities is a required field AllowUnauthenticatedIdentities *bool `type:"boolean" required:"true"` // An array of Amazon Cognito Identity user pools. CognitoIdentityProviders []*Provider `type:"list"` // The "domain" by which Cognito will refer to your users. This name acts as // a placeholder that allows your backend and the Cognito service to communicate // about the developer provider. For the DeveloperProviderName, you can use // letters as well as period (.), underscore (_), and dash (-). // // Once you have set a developer provider name, you cannot change it. Please // take care in setting this parameter. DeveloperProviderName *string `min:"1" type:"string"` // A string that you provide. // // IdentityPoolName is a required field IdentityPoolName *string `min:"1" type:"string" required:"true"` // A list of OpendID Connect provider ARNs. OpenIdConnectProviderARNs []*string `type:"list"` // An array of Amazon Resource Names (ARNs) of the SAML provider for your identity // pool. SamlProviderARNs []*string `type:"list"` // Optional key:value pairs mapping provider names to provider app IDs. SupportedLoginProviders map[string]*string `type:"map"` } // String returns the string representation func (s CreateIdentityPoolInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateIdentityPoolInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateIdentityPoolInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateIdentityPoolInput"} if s.AllowUnauthenticatedIdentities == nil { invalidParams.Add(request.NewErrParamRequired("AllowUnauthenticatedIdentities")) } if s.DeveloperProviderName != nil && len(*s.DeveloperProviderName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeveloperProviderName", 1)) } if s.IdentityPoolName == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolName")) } if s.IdentityPoolName != nil && len(*s.IdentityPoolName) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolName", 1)) } if s.CognitoIdentityProviders != nil { for i, v := range s.CognitoIdentityProviders { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CognitoIdentityProviders", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Credentials for the provided identity ID. type Credentials struct { _ struct{} `type:"structure"` // The Access Key portion of the credentials. AccessKeyId *string `type:"string"` // The date at which these credentials will expire. Expiration *time.Time `type:"timestamp" timestampFormat:"unix"` // The Secret Access Key portion of the credentials SecretKey *string `type:"string"` // The Session Token portion of the credentials SessionToken *string `type:"string"` } // String returns the string representation func (s Credentials) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Credentials) GoString() string { return s.String() } // Input to the DeleteIdentities action. type DeleteIdentitiesInput struct { _ struct{} `type:"structure"` // A list of 1-60 identities that you want to delete. // // IdentityIdsToDelete is a required field IdentityIdsToDelete []*string `min:"1" type:"list" required:"true"` } // String returns the string representation func (s DeleteIdentitiesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteIdentitiesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteIdentitiesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteIdentitiesInput"} if s.IdentityIdsToDelete == nil { invalidParams.Add(request.NewErrParamRequired("IdentityIdsToDelete")) } if s.IdentityIdsToDelete != nil && len(s.IdentityIdsToDelete) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityIdsToDelete", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returned in response to a successful DeleteIdentities operation. type DeleteIdentitiesOutput struct { _ struct{} `type:"structure"` // An array of UnprocessedIdentityId objects, each of which contains an ErrorCode // and IdentityId. UnprocessedIdentityIds []*UnprocessedIdentityId `type:"list"` } // String returns the string representation func (s DeleteIdentitiesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteIdentitiesOutput) GoString() string { return s.String() } // Input to the DeleteIdentityPool action. type DeleteIdentityPoolInput struct { _ struct{} `type:"structure"` // An identity pool ID in the format REGION:GUID. // // IdentityPoolId is a required field IdentityPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteIdentityPoolInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteIdentityPoolInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteIdentityPoolInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteIdentityPoolInput"} if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteIdentityPoolOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteIdentityPoolOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteIdentityPoolOutput) GoString() string { return s.String() } // Input to the DescribeIdentity action. type DescribeIdentityInput struct { _ struct{} `type:"structure"` // A unique identifier in the format REGION:GUID. // // IdentityId is a required field IdentityId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeIdentityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeIdentityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeIdentityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeIdentityInput"} if s.IdentityId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityId")) } if s.IdentityId != nil && len(*s.IdentityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Input to the DescribeIdentityPool action. type DescribeIdentityPoolInput struct { _ struct{} `type:"structure"` // An identity pool ID in the format REGION:GUID. // // IdentityPoolId is a required field IdentityPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeIdentityPoolInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeIdentityPoolInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeIdentityPoolInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeIdentityPoolInput"} if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Input to the GetCredentialsForIdentity action. type GetCredentialsForIdentityInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the role to be assumed when multiple roles // were received in the token from the identity provider. For example, a SAML-based // identity provider. This parameter is optional for identity providers that // do not support role customization. CustomRoleArn *string `min:"20" type:"string"` // A unique identifier in the format REGION:GUID. // // IdentityId is a required field IdentityId *string `min:"1" type:"string" required:"true"` // A set of optional name-value pairs that map provider names to provider tokens. Logins map[string]*string `type:"map"` } // String returns the string representation func (s GetCredentialsForIdentityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCredentialsForIdentityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetCredentialsForIdentityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetCredentialsForIdentityInput"} if s.CustomRoleArn != nil && len(*s.CustomRoleArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("CustomRoleArn", 20)) } if s.IdentityId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityId")) } if s.IdentityId != nil && len(*s.IdentityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returned in response to a successful GetCredentialsForIdentity operation. type GetCredentialsForIdentityOutput struct { _ struct{} `type:"structure"` // Credentials for the provided identity ID. Credentials *Credentials `type:"structure"` // A unique identifier in the format REGION:GUID. IdentityId *string `min:"1" type:"string"` } // String returns the string representation func (s GetCredentialsForIdentityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCredentialsForIdentityOutput) GoString() string { return s.String() } // Input to the GetId action. type GetIdInput struct { _ struct{} `type:"structure"` // A standard AWS account ID (9+ digits). AccountId *string `min:"1" type:"string"` // An identity pool ID in the format REGION:GUID. // // IdentityPoolId is a required field IdentityPoolId *string `min:"1" type:"string" required:"true"` // A set of optional name-value pairs that map provider names to provider tokens. // // The available provider names for Logins are as follows: Facebook: graph.facebook.com // // Google: accounts.google.com // Amazon: www.amazon.com // Twitter: api.twitter.com // Digits: www.digits.com Logins map[string]*string `type:"map"` } // String returns the string representation func (s GetIdInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIdInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetIdInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetIdInput"} if s.AccountId != nil && len(*s.AccountId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AccountId", 1)) } if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returned in response to a GetId request. type GetIdOutput struct { _ struct{} `type:"structure"` // A unique identifier in the format REGION:GUID. IdentityId *string `min:"1" type:"string"` } // String returns the string representation func (s GetIdOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIdOutput) GoString() string { return s.String() } // Input to the GetIdentityPoolRoles action. type GetIdentityPoolRolesInput struct { _ struct{} `type:"structure"` // An identity pool ID in the format REGION:GUID. // // IdentityPoolId is a required field IdentityPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetIdentityPoolRolesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIdentityPoolRolesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetIdentityPoolRolesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetIdentityPoolRolesInput"} if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returned in response to a successful GetIdentityPoolRoles operation. type GetIdentityPoolRolesOutput struct { _ struct{} `type:"structure"` // An identity pool ID in the format REGION:GUID. IdentityPoolId *string `min:"1" type:"string"` // The map of roles associated with this pool. Currently only authenticated // and unauthenticated roles are supported. Roles map[string]*string `type:"map"` } // String returns the string representation func (s GetIdentityPoolRolesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIdentityPoolRolesOutput) GoString() string { return s.String() } // Input to the GetOpenIdTokenForDeveloperIdentity action. type GetOpenIdTokenForDeveloperIdentityInput struct { _ struct{} `type:"structure"` // A unique identifier in the format REGION:GUID. IdentityId *string `min:"1" type:"string"` // An identity pool ID in the format REGION:GUID. // // IdentityPoolId is a required field IdentityPoolId *string `min:"1" type:"string" required:"true"` // A set of optional name-value pairs that map provider names to provider tokens. // Each name-value pair represents a user from a public provider or developer // provider. If the user is from a developer provider, the name-value pair will // follow the syntax "developer_provider_name": "developer_user_identifier". // The developer provider is the "domain" by which Cognito will refer to your // users; you provided this domain while creating/updating the identity pool. // The developer user identifier is an identifier from your backend that uniquely // identifies a user. When you create an identity pool, you can specify the // supported logins. // // Logins is a required field Logins map[string]*string `type:"map" required:"true"` // The expiration time of the token, in seconds. You can specify a custom expiration // time for the token so that you can cache it. If you don't provide an expiration // time, the token is valid for 15 minutes. You can exchange the token with // Amazon STS for temporary AWS credentials, which are valid for a maximum of // one hour. The maximum token duration you can set is 24 hours. You should // take care in setting the expiration time for a token, as there are significant // security implications: an attacker could use a leaked token to access your // AWS resources for the token's duration. TokenDuration *int64 `min:"1" type:"long"` } // String returns the string representation func (s GetOpenIdTokenForDeveloperIdentityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetOpenIdTokenForDeveloperIdentityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetOpenIdTokenForDeveloperIdentityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetOpenIdTokenForDeveloperIdentityInput"} if s.IdentityId != nil && len(*s.IdentityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityId", 1)) } if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if s.Logins == nil { invalidParams.Add(request.NewErrParamRequired("Logins")) } if s.TokenDuration != nil && *s.TokenDuration < 1 { invalidParams.Add(request.NewErrParamMinValue("TokenDuration", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returned in response to a successful GetOpenIdTokenForDeveloperIdentity request. type GetOpenIdTokenForDeveloperIdentityOutput struct { _ struct{} `type:"structure"` // A unique identifier in the format REGION:GUID. IdentityId *string `min:"1" type:"string"` // An OpenID token. Token *string `type:"string"` } // String returns the string representation func (s GetOpenIdTokenForDeveloperIdentityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetOpenIdTokenForDeveloperIdentityOutput) GoString() string { return s.String() } // Input to the GetOpenIdToken action. type GetOpenIdTokenInput struct { _ struct{} `type:"structure"` // A unique identifier in the format REGION:GUID. // // IdentityId is a required field IdentityId *string `min:"1" type:"string" required:"true"` // A set of optional name-value pairs that map provider names to provider tokens. // When using graph.facebook.com and www.amazon.com, supply the access_token // returned from the provider's authflow. For accounts.google.com or any other // OpenId Connect provider, always include the id_token. Logins map[string]*string `type:"map"` } // String returns the string representation func (s GetOpenIdTokenInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetOpenIdTokenInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetOpenIdTokenInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetOpenIdTokenInput"} if s.IdentityId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityId")) } if s.IdentityId != nil && len(*s.IdentityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returned in response to a successful GetOpenIdToken request. type GetOpenIdTokenOutput struct { _ struct{} `type:"structure"` // A unique identifier in the format REGION:GUID. Note that the IdentityId returned // may not match the one passed on input. IdentityId *string `min:"1" type:"string"` // An OpenID token, valid for 15 minutes. Token *string `type:"string"` } // String returns the string representation func (s GetOpenIdTokenOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetOpenIdTokenOutput) GoString() string { return s.String() } // A description of the identity. type IdentityDescription struct { _ struct{} `type:"structure"` // Date on which the identity was created. CreationDate *time.Time `type:"timestamp" timestampFormat:"unix"` // A unique identifier in the format REGION:GUID. IdentityId *string `min:"1" type:"string"` // Date on which the identity was last modified. LastModifiedDate *time.Time `type:"timestamp" timestampFormat:"unix"` // A set of optional name-value pairs that map provider names to provider tokens. Logins []*string `type:"list"` } // String returns the string representation func (s IdentityDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IdentityDescription) GoString() string { return s.String() } // An object representing a Cognito identity pool. type IdentityPool struct { _ struct{} `type:"structure"` // TRUE if the identity pool supports unauthenticated logins. // // AllowUnauthenticatedIdentities is a required field AllowUnauthenticatedIdentities *bool `type:"boolean" required:"true"` // A list representing an Amazon Cognito Identity User Pool and its client ID. CognitoIdentityProviders []*Provider `type:"list"` // The "domain" by which Cognito will refer to your users. DeveloperProviderName *string `min:"1" type:"string"` // An identity pool ID in the format REGION:GUID. // // IdentityPoolId is a required field IdentityPoolId *string `min:"1" type:"string" required:"true"` // A string that you provide. // // IdentityPoolName is a required field IdentityPoolName *string `min:"1" type:"string" required:"true"` // A list of OpendID Connect provider ARNs. OpenIdConnectProviderARNs []*string `type:"list"` // An array of Amazon Resource Names (ARNs) of the SAML provider for your identity // pool. SamlProviderARNs []*string `type:"list"` // Optional key:value pairs mapping provider names to provider app IDs. SupportedLoginProviders map[string]*string `type:"map"` } // String returns the string representation func (s IdentityPool) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IdentityPool) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *IdentityPool) Validate() error { invalidParams := request.ErrInvalidParams{Context: "IdentityPool"} if s.AllowUnauthenticatedIdentities == nil { invalidParams.Add(request.NewErrParamRequired("AllowUnauthenticatedIdentities")) } if s.DeveloperProviderName != nil && len(*s.DeveloperProviderName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeveloperProviderName", 1)) } if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if s.IdentityPoolName == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolName")) } if s.IdentityPoolName != nil && len(*s.IdentityPoolName) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolName", 1)) } if s.CognitoIdentityProviders != nil { for i, v := range s.CognitoIdentityProviders { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CognitoIdentityProviders", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A description of the identity pool. type IdentityPoolShortDescription struct { _ struct{} `type:"structure"` // An identity pool ID in the format REGION:GUID. IdentityPoolId *string `min:"1" type:"string"` // A string that you provide. IdentityPoolName *string `min:"1" type:"string"` } // String returns the string representation func (s IdentityPoolShortDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IdentityPoolShortDescription) GoString() string { return s.String() } // Input to the ListIdentities action. type ListIdentitiesInput struct { _ struct{} `type:"structure"` // An optional boolean parameter that allows you to hide disabled identities. // If omitted, the ListIdentities API will include disabled identities in the // response. HideDisabled *bool `type:"boolean"` // An identity pool ID in the format REGION:GUID. // // IdentityPoolId is a required field IdentityPoolId *string `min:"1" type:"string" required:"true"` // The maximum number of identities to return. // // MaxResults is a required field MaxResults *int64 `min:"1" type:"integer" required:"true"` // A pagination token. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s ListIdentitiesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListIdentitiesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListIdentitiesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListIdentitiesInput"} if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if s.MaxResults == nil { invalidParams.Add(request.NewErrParamRequired("MaxResults")) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response to a ListIdentities request. type ListIdentitiesOutput struct { _ struct{} `type:"structure"` // An object containing a set of identities and associated mappings. Identities []*IdentityDescription `type:"list"` // An identity pool ID in the format REGION:GUID. IdentityPoolId *string `min:"1" type:"string"` // A pagination token. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s ListIdentitiesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListIdentitiesOutput) GoString() string { return s.String() } // Input to the ListIdentityPools action. type ListIdentityPoolsInput struct { _ struct{} `type:"structure"` // The maximum number of identities to return. // // MaxResults is a required field MaxResults *int64 `min:"1" type:"integer" required:"true"` // A pagination token. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s ListIdentityPoolsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListIdentityPoolsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListIdentityPoolsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListIdentityPoolsInput"} if s.MaxResults == nil { invalidParams.Add(request.NewErrParamRequired("MaxResults")) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a successful ListIdentityPools action. type ListIdentityPoolsOutput struct { _ struct{} `type:"structure"` // The identity pools returned by the ListIdentityPools action. IdentityPools []*IdentityPoolShortDescription `type:"list"` // A pagination token. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s ListIdentityPoolsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListIdentityPoolsOutput) GoString() string { return s.String() } // Input to the LookupDeveloperIdentityInput action. type LookupDeveloperIdentityInput struct { _ struct{} `type:"structure"` // A unique ID used by your backend authentication process to identify a user. // Typically, a developer identity provider would issue many developer user // identifiers, in keeping with the number of users. DeveloperUserIdentifier *string `min:"1" type:"string"` // A unique identifier in the format REGION:GUID. IdentityId *string `min:"1" type:"string"` // An identity pool ID in the format REGION:GUID. // // IdentityPoolId is a required field IdentityPoolId *string `min:"1" type:"string" required:"true"` // The maximum number of identities to return. MaxResults *int64 `min:"1" type:"integer"` // A pagination token. The first call you make will have NextToken set to null. // After that the service will return NextToken values as needed. For example, // let's say you make a request with MaxResults set to 10, and there are 20 // matches in the database. The service will return a pagination token as a // part of the response. This token can be used to call the API again and get // results starting from the 11th match. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s LookupDeveloperIdentityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LookupDeveloperIdentityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LookupDeveloperIdentityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LookupDeveloperIdentityInput"} if s.DeveloperUserIdentifier != nil && len(*s.DeveloperUserIdentifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeveloperUserIdentifier", 1)) } if s.IdentityId != nil && len(*s.IdentityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityId", 1)) } if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returned in response to a successful LookupDeveloperIdentity action. type LookupDeveloperIdentityOutput struct { _ struct{} `type:"structure"` // This is the list of developer user identifiers associated with an identity // ID. Cognito supports the association of multiple developer user identifiers // with an identity ID. DeveloperUserIdentifierList []*string `type:"list"` // A unique identifier in the format REGION:GUID. IdentityId *string `min:"1" type:"string"` // A pagination token. The first call you make will have NextToken set to null. // After that the service will return NextToken values as needed. For example, // let's say you make a request with MaxResults set to 10, and there are 20 // matches in the database. The service will return a pagination token as a // part of the response. This token can be used to call the API again and get // results starting from the 11th match. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s LookupDeveloperIdentityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LookupDeveloperIdentityOutput) GoString() string { return s.String() } // Input to the MergeDeveloperIdentities action. type MergeDeveloperIdentitiesInput struct { _ struct{} `type:"structure"` // User identifier for the destination user. The value should be a DeveloperUserIdentifier. // // DestinationUserIdentifier is a required field DestinationUserIdentifier *string `min:"1" type:"string" required:"true"` // The "domain" by which Cognito will refer to your users. This is a (pseudo) // domain name that you provide while creating an identity pool. This name acts // as a placeholder that allows your backend and the Cognito service to communicate // about the developer provider. For the DeveloperProviderName, you can use // letters as well as period (.), underscore (_), and dash (-). // // DeveloperProviderName is a required field DeveloperProviderName *string `min:"1" type:"string" required:"true"` // An identity pool ID in the format REGION:GUID. // // IdentityPoolId is a required field IdentityPoolId *string `min:"1" type:"string" required:"true"` // User identifier for the source user. The value should be a DeveloperUserIdentifier. // // SourceUserIdentifier is a required field SourceUserIdentifier *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s MergeDeveloperIdentitiesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MergeDeveloperIdentitiesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MergeDeveloperIdentitiesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MergeDeveloperIdentitiesInput"} if s.DestinationUserIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DestinationUserIdentifier")) } if s.DestinationUserIdentifier != nil && len(*s.DestinationUserIdentifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("DestinationUserIdentifier", 1)) } if s.DeveloperProviderName == nil { invalidParams.Add(request.NewErrParamRequired("DeveloperProviderName")) } if s.DeveloperProviderName != nil && len(*s.DeveloperProviderName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeveloperProviderName", 1)) } if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if s.SourceUserIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SourceUserIdentifier")) } if s.SourceUserIdentifier != nil && len(*s.SourceUserIdentifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("SourceUserIdentifier", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returned in response to a successful MergeDeveloperIdentities action. type MergeDeveloperIdentitiesOutput struct { _ struct{} `type:"structure"` // A unique identifier in the format REGION:GUID. IdentityId *string `min:"1" type:"string"` } // String returns the string representation func (s MergeDeveloperIdentitiesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MergeDeveloperIdentitiesOutput) GoString() string { return s.String() } // A provider representing an Amazon Cognito Identity User Pool and its client // ID. type Provider struct { _ struct{} `type:"structure"` // The client ID for the Amazon Cognito Identity User Pool. ClientId *string `min:"1" type:"string"` // The provider name for an Amazon Cognito Identity User Pool. For example, // cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789. ProviderName *string `min:"1" type:"string"` } // String returns the string representation func (s Provider) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Provider) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Provider) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Provider"} if s.ClientId != nil && len(*s.ClientId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientId", 1)) } if s.ProviderName != nil && len(*s.ProviderName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProviderName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Input to the SetIdentityPoolRoles action. type SetIdentityPoolRolesInput struct { _ struct{} `type:"structure"` // An identity pool ID in the format REGION:GUID. // // IdentityPoolId is a required field IdentityPoolId *string `min:"1" type:"string" required:"true"` // The map of roles associated with this pool. For a given role, the key will // be either "authenticated" or "unauthenticated" and the value will be the // Role ARN. // // Roles is a required field Roles map[string]*string `type:"map" required:"true"` } // String returns the string representation func (s SetIdentityPoolRolesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetIdentityPoolRolesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetIdentityPoolRolesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetIdentityPoolRolesInput"} if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if s.Roles == nil { invalidParams.Add(request.NewErrParamRequired("Roles")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetIdentityPoolRolesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetIdentityPoolRolesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetIdentityPoolRolesOutput) GoString() string { return s.String() } // Input to the UnlinkDeveloperIdentity action. type UnlinkDeveloperIdentityInput struct { _ struct{} `type:"structure"` // The "domain" by which Cognito will refer to your users. // // DeveloperProviderName is a required field DeveloperProviderName *string `min:"1" type:"string" required:"true"` // A unique ID used by your backend authentication process to identify a user. // // DeveloperUserIdentifier is a required field DeveloperUserIdentifier *string `min:"1" type:"string" required:"true"` // A unique identifier in the format REGION:GUID. // // IdentityId is a required field IdentityId *string `min:"1" type:"string" required:"true"` // An identity pool ID in the format REGION:GUID. // // IdentityPoolId is a required field IdentityPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s UnlinkDeveloperIdentityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnlinkDeveloperIdentityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UnlinkDeveloperIdentityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UnlinkDeveloperIdentityInput"} if s.DeveloperProviderName == nil { invalidParams.Add(request.NewErrParamRequired("DeveloperProviderName")) } if s.DeveloperProviderName != nil && len(*s.DeveloperProviderName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeveloperProviderName", 1)) } if s.DeveloperUserIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DeveloperUserIdentifier")) } if s.DeveloperUserIdentifier != nil && len(*s.DeveloperUserIdentifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeveloperUserIdentifier", 1)) } if s.IdentityId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityId")) } if s.IdentityId != nil && len(*s.IdentityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityId", 1)) } if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UnlinkDeveloperIdentityOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UnlinkDeveloperIdentityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnlinkDeveloperIdentityOutput) GoString() string { return s.String() } // Input to the UnlinkIdentity action. type UnlinkIdentityInput struct { _ struct{} `type:"structure"` // A unique identifier in the format REGION:GUID. // // IdentityId is a required field IdentityId *string `min:"1" type:"string" required:"true"` // A set of optional name-value pairs that map provider names to provider tokens. // // Logins is a required field Logins map[string]*string `type:"map" required:"true"` // Provider names to unlink from this identity. // // LoginsToRemove is a required field LoginsToRemove []*string `type:"list" required:"true"` } // String returns the string representation func (s UnlinkIdentityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnlinkIdentityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UnlinkIdentityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UnlinkIdentityInput"} if s.IdentityId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityId")) } if s.IdentityId != nil && len(*s.IdentityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityId", 1)) } if s.Logins == nil { invalidParams.Add(request.NewErrParamRequired("Logins")) } if s.LoginsToRemove == nil { invalidParams.Add(request.NewErrParamRequired("LoginsToRemove")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UnlinkIdentityOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UnlinkIdentityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnlinkIdentityOutput) GoString() string { return s.String() } // An array of UnprocessedIdentityId objects, each of which contains an ErrorCode // and IdentityId. type UnprocessedIdentityId struct { _ struct{} `type:"structure"` // The error code indicating the type of error that occurred. ErrorCode *string `type:"string" enum:"ErrorCode"` // A unique identifier in the format REGION:GUID. IdentityId *string `min:"1" type:"string"` } // String returns the string representation func (s UnprocessedIdentityId) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnprocessedIdentityId) GoString() string { return s.String() } const ( // ErrorCodeAccessDenied is a ErrorCode enum value ErrorCodeAccessDenied = "AccessDenied" // ErrorCodeInternalServerError is a ErrorCode enum value ErrorCodeInternalServerError = "InternalServerError" ) aws-sdk-go-1.4.22/service/cognitoidentity/cognitoidentityiface/000077500000000000000000000000001300374646400246435ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cognitoidentity/cognitoidentityiface/interface.go000066400000000000000000000151441300374646400271370ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cognitoidentityiface provides an interface to enable mocking the Amazon Cognito Identity service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package cognitoidentityiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/cognitoidentity" ) // CognitoIdentityAPI provides an interface to enable mocking the // cognitoidentity.CognitoIdentity service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Cognito Identity. // func myFunc(svc cognitoidentityiface.CognitoIdentityAPI) bool { // // Make svc.CreateIdentityPool request // } // // func main() { // sess := session.New() // svc := cognitoidentity.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockCognitoIdentityClient struct { // cognitoidentityiface.CognitoIdentityAPI // } // func (m *mockCognitoIdentityClient) CreateIdentityPool(input *cognitoidentity.CreateIdentityPoolInput) (*cognitoidentity.IdentityPool, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockCognitoIdentityClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type CognitoIdentityAPI interface { CreateIdentityPoolRequest(*cognitoidentity.CreateIdentityPoolInput) (*request.Request, *cognitoidentity.IdentityPool) CreateIdentityPool(*cognitoidentity.CreateIdentityPoolInput) (*cognitoidentity.IdentityPool, error) DeleteIdentitiesRequest(*cognitoidentity.DeleteIdentitiesInput) (*request.Request, *cognitoidentity.DeleteIdentitiesOutput) DeleteIdentities(*cognitoidentity.DeleteIdentitiesInput) (*cognitoidentity.DeleteIdentitiesOutput, error) DeleteIdentityPoolRequest(*cognitoidentity.DeleteIdentityPoolInput) (*request.Request, *cognitoidentity.DeleteIdentityPoolOutput) DeleteIdentityPool(*cognitoidentity.DeleteIdentityPoolInput) (*cognitoidentity.DeleteIdentityPoolOutput, error) DescribeIdentityRequest(*cognitoidentity.DescribeIdentityInput) (*request.Request, *cognitoidentity.IdentityDescription) DescribeIdentity(*cognitoidentity.DescribeIdentityInput) (*cognitoidentity.IdentityDescription, error) DescribeIdentityPoolRequest(*cognitoidentity.DescribeIdentityPoolInput) (*request.Request, *cognitoidentity.IdentityPool) DescribeIdentityPool(*cognitoidentity.DescribeIdentityPoolInput) (*cognitoidentity.IdentityPool, error) GetCredentialsForIdentityRequest(*cognitoidentity.GetCredentialsForIdentityInput) (*request.Request, *cognitoidentity.GetCredentialsForIdentityOutput) GetCredentialsForIdentity(*cognitoidentity.GetCredentialsForIdentityInput) (*cognitoidentity.GetCredentialsForIdentityOutput, error) GetIdRequest(*cognitoidentity.GetIdInput) (*request.Request, *cognitoidentity.GetIdOutput) GetId(*cognitoidentity.GetIdInput) (*cognitoidentity.GetIdOutput, error) GetIdentityPoolRolesRequest(*cognitoidentity.GetIdentityPoolRolesInput) (*request.Request, *cognitoidentity.GetIdentityPoolRolesOutput) GetIdentityPoolRoles(*cognitoidentity.GetIdentityPoolRolesInput) (*cognitoidentity.GetIdentityPoolRolesOutput, error) GetOpenIdTokenRequest(*cognitoidentity.GetOpenIdTokenInput) (*request.Request, *cognitoidentity.GetOpenIdTokenOutput) GetOpenIdToken(*cognitoidentity.GetOpenIdTokenInput) (*cognitoidentity.GetOpenIdTokenOutput, error) GetOpenIdTokenForDeveloperIdentityRequest(*cognitoidentity.GetOpenIdTokenForDeveloperIdentityInput) (*request.Request, *cognitoidentity.GetOpenIdTokenForDeveloperIdentityOutput) GetOpenIdTokenForDeveloperIdentity(*cognitoidentity.GetOpenIdTokenForDeveloperIdentityInput) (*cognitoidentity.GetOpenIdTokenForDeveloperIdentityOutput, error) ListIdentitiesRequest(*cognitoidentity.ListIdentitiesInput) (*request.Request, *cognitoidentity.ListIdentitiesOutput) ListIdentities(*cognitoidentity.ListIdentitiesInput) (*cognitoidentity.ListIdentitiesOutput, error) ListIdentityPoolsRequest(*cognitoidentity.ListIdentityPoolsInput) (*request.Request, *cognitoidentity.ListIdentityPoolsOutput) ListIdentityPools(*cognitoidentity.ListIdentityPoolsInput) (*cognitoidentity.ListIdentityPoolsOutput, error) LookupDeveloperIdentityRequest(*cognitoidentity.LookupDeveloperIdentityInput) (*request.Request, *cognitoidentity.LookupDeveloperIdentityOutput) LookupDeveloperIdentity(*cognitoidentity.LookupDeveloperIdentityInput) (*cognitoidentity.LookupDeveloperIdentityOutput, error) MergeDeveloperIdentitiesRequest(*cognitoidentity.MergeDeveloperIdentitiesInput) (*request.Request, *cognitoidentity.MergeDeveloperIdentitiesOutput) MergeDeveloperIdentities(*cognitoidentity.MergeDeveloperIdentitiesInput) (*cognitoidentity.MergeDeveloperIdentitiesOutput, error) SetIdentityPoolRolesRequest(*cognitoidentity.SetIdentityPoolRolesInput) (*request.Request, *cognitoidentity.SetIdentityPoolRolesOutput) SetIdentityPoolRoles(*cognitoidentity.SetIdentityPoolRolesInput) (*cognitoidentity.SetIdentityPoolRolesOutput, error) UnlinkDeveloperIdentityRequest(*cognitoidentity.UnlinkDeveloperIdentityInput) (*request.Request, *cognitoidentity.UnlinkDeveloperIdentityOutput) UnlinkDeveloperIdentity(*cognitoidentity.UnlinkDeveloperIdentityInput) (*cognitoidentity.UnlinkDeveloperIdentityOutput, error) UnlinkIdentityRequest(*cognitoidentity.UnlinkIdentityInput) (*request.Request, *cognitoidentity.UnlinkIdentityOutput) UnlinkIdentity(*cognitoidentity.UnlinkIdentityInput) (*cognitoidentity.UnlinkIdentityOutput, error) UpdateIdentityPoolRequest(*cognitoidentity.IdentityPool) (*request.Request, *cognitoidentity.IdentityPool) UpdateIdentityPool(*cognitoidentity.IdentityPool) (*cognitoidentity.IdentityPool, error) } var _ CognitoIdentityAPI = (*cognitoidentity.CognitoIdentity)(nil) aws-sdk-go-1.4.22/service/cognitoidentity/customizations.go000066400000000000000000000004411300374646400240600ustar00rootroot00000000000000package cognitoidentity import "github.com/aws/aws-sdk-go/aws/request" func init() { initRequest = func(r *request.Request) { switch r.Operation.Name { case opGetOpenIdToken, opGetId, opGetCredentialsForIdentity: r.Handlers.Sign.Clear() // these operations are unsigned } } } aws-sdk-go-1.4.22/service/cognitoidentity/customizations_test.go000066400000000000000000000021711300374646400251210ustar00rootroot00000000000000package cognitoidentity_test import ( "testing" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/cognitoidentity" "github.com/stretchr/testify/assert" ) var svc = cognitoidentity.New(unit.Session) func TestUnsignedRequest_GetID(t *testing.T) { req, _ := svc.GetIdRequest(&cognitoidentity.GetIdInput{ IdentityPoolId: aws.String("IdentityPoolId"), }) err := req.Sign() assert.NoError(t, err) assert.Equal(t, "", req.HTTPRequest.Header.Get("Authorization")) } func TestUnsignedRequest_GetOpenIDToken(t *testing.T) { req, _ := svc.GetOpenIdTokenRequest(&cognitoidentity.GetOpenIdTokenInput{ IdentityId: aws.String("IdentityId"), }) err := req.Sign() assert.NoError(t, err) assert.Equal(t, "", req.HTTPRequest.Header.Get("Authorization")) } func TestUnsignedRequest_GetCredentialsForIdentity(t *testing.T) { req, _ := svc.GetCredentialsForIdentityRequest(&cognitoidentity.GetCredentialsForIdentityInput{ IdentityId: aws.String("IdentityId"), }) err := req.Sign() assert.NoError(t, err) assert.Equal(t, "", req.HTTPRequest.Header.Get("Authorization")) } aws-sdk-go-1.4.22/service/cognitoidentity/examples_test.go000066400000000000000000000332311300374646400236450ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cognitoidentity_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/cognitoidentity" ) var _ time.Duration var _ bytes.Buffer func ExampleCognitoIdentity_CreateIdentityPool() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentity.New(sess) params := &cognitoidentity.CreateIdentityPoolInput{ AllowUnauthenticatedIdentities: aws.Bool(true), // Required IdentityPoolName: aws.String("IdentityPoolName"), // Required CognitoIdentityProviders: []*cognitoidentity.Provider{ { // Required ClientId: aws.String("ProviderClientId"), ProviderName: aws.String("ProviderName"), }, // More values... }, DeveloperProviderName: aws.String("DeveloperProviderName"), OpenIdConnectProviderARNs: []*string{ aws.String("ARNString"), // Required // More values... }, SamlProviderARNs: []*string{ aws.String("ARNString"), // Required // More values... }, SupportedLoginProviders: map[string]*string{ "Key": aws.String("IdentityProviderId"), // Required // More values... }, } resp, err := svc.CreateIdentityPool(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentity_DeleteIdentities() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentity.New(sess) params := &cognitoidentity.DeleteIdentitiesInput{ IdentityIdsToDelete: []*string{ // Required aws.String("IdentityId"), // Required // More values... }, } resp, err := svc.DeleteIdentities(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentity_DeleteIdentityPool() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentity.New(sess) params := &cognitoidentity.DeleteIdentityPoolInput{ IdentityPoolId: aws.String("IdentityPoolId"), // Required } resp, err := svc.DeleteIdentityPool(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentity_DescribeIdentity() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentity.New(sess) params := &cognitoidentity.DescribeIdentityInput{ IdentityId: aws.String("IdentityId"), // Required } resp, err := svc.DescribeIdentity(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentity_DescribeIdentityPool() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentity.New(sess) params := &cognitoidentity.DescribeIdentityPoolInput{ IdentityPoolId: aws.String("IdentityPoolId"), // Required } resp, err := svc.DescribeIdentityPool(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentity_GetCredentialsForIdentity() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentity.New(sess) params := &cognitoidentity.GetCredentialsForIdentityInput{ IdentityId: aws.String("IdentityId"), // Required CustomRoleArn: aws.String("ARNString"), Logins: map[string]*string{ "Key": aws.String("IdentityProviderToken"), // Required // More values... }, } resp, err := svc.GetCredentialsForIdentity(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentity_GetId() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentity.New(sess) params := &cognitoidentity.GetIdInput{ IdentityPoolId: aws.String("IdentityPoolId"), // Required AccountId: aws.String("AccountId"), Logins: map[string]*string{ "Key": aws.String("IdentityProviderToken"), // Required // More values... }, } resp, err := svc.GetId(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentity_GetIdentityPoolRoles() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentity.New(sess) params := &cognitoidentity.GetIdentityPoolRolesInput{ IdentityPoolId: aws.String("IdentityPoolId"), // Required } resp, err := svc.GetIdentityPoolRoles(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentity_GetOpenIdToken() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentity.New(sess) params := &cognitoidentity.GetOpenIdTokenInput{ IdentityId: aws.String("IdentityId"), // Required Logins: map[string]*string{ "Key": aws.String("IdentityProviderToken"), // Required // More values... }, } resp, err := svc.GetOpenIdToken(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentity_GetOpenIdTokenForDeveloperIdentity() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentity.New(sess) params := &cognitoidentity.GetOpenIdTokenForDeveloperIdentityInput{ IdentityPoolId: aws.String("IdentityPoolId"), // Required Logins: map[string]*string{ // Required "Key": aws.String("IdentityProviderToken"), // Required // More values... }, IdentityId: aws.String("IdentityId"), TokenDuration: aws.Int64(1), } resp, err := svc.GetOpenIdTokenForDeveloperIdentity(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentity_ListIdentities() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentity.New(sess) params := &cognitoidentity.ListIdentitiesInput{ IdentityPoolId: aws.String("IdentityPoolId"), // Required MaxResults: aws.Int64(1), // Required HideDisabled: aws.Bool(true), NextToken: aws.String("PaginationKey"), } resp, err := svc.ListIdentities(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentity_ListIdentityPools() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentity.New(sess) params := &cognitoidentity.ListIdentityPoolsInput{ MaxResults: aws.Int64(1), // Required NextToken: aws.String("PaginationKey"), } resp, err := svc.ListIdentityPools(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentity_LookupDeveloperIdentity() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentity.New(sess) params := &cognitoidentity.LookupDeveloperIdentityInput{ IdentityPoolId: aws.String("IdentityPoolId"), // Required DeveloperUserIdentifier: aws.String("DeveloperUserIdentifier"), IdentityId: aws.String("IdentityId"), MaxResults: aws.Int64(1), NextToken: aws.String("PaginationKey"), } resp, err := svc.LookupDeveloperIdentity(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentity_MergeDeveloperIdentities() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentity.New(sess) params := &cognitoidentity.MergeDeveloperIdentitiesInput{ DestinationUserIdentifier: aws.String("DeveloperUserIdentifier"), // Required DeveloperProviderName: aws.String("DeveloperProviderName"), // Required IdentityPoolId: aws.String("IdentityPoolId"), // Required SourceUserIdentifier: aws.String("DeveloperUserIdentifier"), // Required } resp, err := svc.MergeDeveloperIdentities(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentity_SetIdentityPoolRoles() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentity.New(sess) params := &cognitoidentity.SetIdentityPoolRolesInput{ IdentityPoolId: aws.String("IdentityPoolId"), // Required Roles: map[string]*string{ // Required "Key": aws.String("ARNString"), // Required // More values... }, } resp, err := svc.SetIdentityPoolRoles(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentity_UnlinkDeveloperIdentity() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentity.New(sess) params := &cognitoidentity.UnlinkDeveloperIdentityInput{ DeveloperProviderName: aws.String("DeveloperProviderName"), // Required DeveloperUserIdentifier: aws.String("DeveloperUserIdentifier"), // Required IdentityId: aws.String("IdentityId"), // Required IdentityPoolId: aws.String("IdentityPoolId"), // Required } resp, err := svc.UnlinkDeveloperIdentity(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentity_UnlinkIdentity() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentity.New(sess) params := &cognitoidentity.UnlinkIdentityInput{ IdentityId: aws.String("IdentityId"), // Required Logins: map[string]*string{ // Required "Key": aws.String("IdentityProviderToken"), // Required // More values... }, LoginsToRemove: []*string{ // Required aws.String("IdentityProviderName"), // Required // More values... }, } resp, err := svc.UnlinkIdentity(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentity_UpdateIdentityPool() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentity.New(sess) params := &cognitoidentity.IdentityPool{ AllowUnauthenticatedIdentities: aws.Bool(true), // Required IdentityPoolId: aws.String("IdentityPoolId"), // Required IdentityPoolName: aws.String("IdentityPoolName"), // Required CognitoIdentityProviders: []*cognitoidentity.Provider{ { // Required ClientId: aws.String("ProviderClientId"), ProviderName: aws.String("ProviderName"), }, // More values... }, DeveloperProviderName: aws.String("DeveloperProviderName"), OpenIdConnectProviderARNs: []*string{ aws.String("ARNString"), // Required // More values... }, SamlProviderARNs: []*string{ aws.String("ARNString"), // Required // More values... }, SupportedLoginProviders: map[string]*string{ "Key": aws.String("IdentityProviderId"), // Required // More values... }, } resp, err := svc.UpdateIdentityPool(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/cognitoidentity/service.go000066400000000000000000000115371300374646400224350ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cognitoidentity import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Amazon Cognito is a web service that delivers scoped temporary credentials // to mobile devices and other untrusted environments. Amazon Cognito uniquely // identifies a device and supplies the user with a consistent identity over // the lifetime of an application. // // Using Amazon Cognito, you can enable authentication with one or more third-party // identity providers (Facebook, Google, or Login with Amazon), and you can // also choose to support unauthenticated access from your app. Cognito delivers // a unique identifier for each user and acts as an OpenID token provider trusted // by AWS Security Token Service (STS) to access temporary, limited-privilege // AWS credentials. // // To provide end-user credentials, first make an unsigned call to GetId. If // the end user is authenticated with one of the supported identity providers, // set the Logins map with the identity provider token. GetId returns a unique // identifier for the user. // // Next, make an unsigned call to GetCredentialsForIdentity. This call expects // the same Logins map as the GetId call, as well as the IdentityID originally // returned by GetId. Assuming your identity pool has been configured via the // SetIdentityPoolRoles operation, GetCredentialsForIdentity will return AWS // credentials for your use. If your pool has not been configured with SetIdentityPoolRoles, // or if you want to follow legacy flow, make an unsigned call to GetOpenIdToken, // which returns the OpenID token necessary to call STS and retrieve AWS credentials. // This call expects the same Logins map as the GetId call, as well as the IdentityID // originally returned by GetId. The token returned by GetOpenIdToken can be // passed to the STS operation AssumeRoleWithWebIdentity (http://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html) // to retrieve AWS credentials. // // If you want to use Amazon Cognito in an Android, iOS, or Unity application, // you will probably want to make API calls via the AWS Mobile SDK. To learn // more, see the AWS Mobile SDK Developer Guide (http://docs.aws.amazon.com/mobile/index.html). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type CognitoIdentity struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "cognito-identity" // New creates a new instance of the CognitoIdentity client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a CognitoIdentity client from just a session. // svc := cognitoidentity.New(mySession) // // // Create a CognitoIdentity client with additional configuration // svc := cognitoidentity.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *CognitoIdentity { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *CognitoIdentity { svc := &CognitoIdentity{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-06-30", JSONVersion: "1.1", TargetPrefix: "AWSCognitoIdentityService", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a CognitoIdentity operation and runs any // custom request initialization. func (c *CognitoIdentity) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/cognitoidentityprovider/000077500000000000000000000000001300374646400222125ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cognitoidentityprovider/api.go000066400000000000000000012506711300374646400233260ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cognitoidentityprovider provides a client for Amazon Cognito Identity Provider. package cognitoidentityprovider import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opAddCustomAttributes = "AddCustomAttributes" // AddCustomAttributesRequest generates a "aws/request.Request" representing the // client's request for the AddCustomAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddCustomAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddCustomAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddCustomAttributesRequest method. // req, resp := client.AddCustomAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) AddCustomAttributesRequest(input *AddCustomAttributesInput) (req *request.Request, output *AddCustomAttributesOutput) { op := &request.Operation{ Name: opAddCustomAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddCustomAttributesInput{} } req = c.newRequest(op, input, output) output = &AddCustomAttributesOutput{} req.Data = output return } // AddCustomAttributes API operation for Amazon Cognito Identity Provider. // // Adds additional user attributes to the user pool schema. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation AddCustomAttributes for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * UserImportInProgressException // This exception is thrown when you are trying to modify a user pool while // a user import job is in progress for that pool. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) AddCustomAttributes(input *AddCustomAttributesInput) (*AddCustomAttributesOutput, error) { req, out := c.AddCustomAttributesRequest(input) err := req.Send() return out, err } const opAdminConfirmSignUp = "AdminConfirmSignUp" // AdminConfirmSignUpRequest generates a "aws/request.Request" representing the // client's request for the AdminConfirmSignUp operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AdminConfirmSignUp for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AdminConfirmSignUp method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AdminConfirmSignUpRequest method. // req, resp := client.AdminConfirmSignUpRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) AdminConfirmSignUpRequest(input *AdminConfirmSignUpInput) (req *request.Request, output *AdminConfirmSignUpOutput) { op := &request.Operation{ Name: opAdminConfirmSignUp, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AdminConfirmSignUpInput{} } req = c.newRequest(op, input, output) output = &AdminConfirmSignUpOutput{} req.Data = output return } // AdminConfirmSignUp API operation for Amazon Cognito Identity Provider. // // Confirms user registration as an admin without using a confirmation code. // Works on any user. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation AdminConfirmSignUp for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * UnexpectedLambdaException // This exception gets thrown when the Amazon Cognito service encounters an // unexpected exception with the AWS Lambda service. // // * UserLambdaValidationException // This exception gets thrown when the Amazon Cognito service encounters a user // validation exception with the AWS Lambda service. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * TooManyFailedAttemptsException // This exception gets thrown when the user has made too many failed attempts // for a given action (e.g., sign in). // // * InvalidLambdaResponseException // This exception is thrown when the Amazon Cognito service encounters an invalid // AWS Lambda response. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * LimitExceededException // This exception is thrown when a user exceeds the limit for a requested AWS // resource. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) AdminConfirmSignUp(input *AdminConfirmSignUpInput) (*AdminConfirmSignUpOutput, error) { req, out := c.AdminConfirmSignUpRequest(input) err := req.Send() return out, err } const opAdminCreateUser = "AdminCreateUser" // AdminCreateUserRequest generates a "aws/request.Request" representing the // client's request for the AdminCreateUser operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AdminCreateUser for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AdminCreateUser method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AdminCreateUserRequest method. // req, resp := client.AdminCreateUserRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) AdminCreateUserRequest(input *AdminCreateUserInput) (req *request.Request, output *AdminCreateUserOutput) { op := &request.Operation{ Name: opAdminCreateUser, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AdminCreateUserInput{} } req = c.newRequest(op, input, output) output = &AdminCreateUserOutput{} req.Data = output return } // AdminCreateUser API operation for Amazon Cognito Identity Provider. // // Creates a new user in the specified user pool and sends a welcome message // via email or phone (SMS). This message is based on a template that you configured // in your call to CreateUserPool or UpdateUserPool. This template includes // your custom sign-up instructions and placeholders for user name and temporary // password. // // Requires developer credentials. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation AdminCreateUser for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UsernameExistsException // This exception is thrown when Amazon Cognito encounters a user name that // already exists in the user pool. // // * InvalidPasswordException // This exception is thrown when the Amazon Cognito service encounters an invalid // password. // // * CodeDeliveryFailureException // This exception is thrown when a verification code fails to deliver successfully. // // * UnexpectedLambdaException // This exception gets thrown when the Amazon Cognito service encounters an // unexpected exception with the AWS Lambda service. // // * UserLambdaValidationException // This exception gets thrown when the Amazon Cognito service encounters a user // validation exception with the AWS Lambda service. // // * InvalidLambdaResponseException // This exception is thrown when the Amazon Cognito service encounters an invalid // AWS Lambda response. // // * PreconditionNotMetException // This exception is thrown when a precondition is not met. // // * InvalidSmsRoleAccessPolicyException // This exception is returned when the role provided for SMS configuration does // not have permission to publish using Amazon SNS. // // * InvalidSmsRoleTrustRelationshipException // This exception is thrown when the trust relationship is invalid for the role // provided for SMS configuration. This can happen if you do not trust cognito-idp.amazonaws.com // or the external ID provided in the role does not match what is provided in // the SMS configuration for the user pool. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * UnsupportedUserStateException // The request failed because the user is in an unsupported state. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) AdminCreateUser(input *AdminCreateUserInput) (*AdminCreateUserOutput, error) { req, out := c.AdminCreateUserRequest(input) err := req.Send() return out, err } const opAdminDeleteUser = "AdminDeleteUser" // AdminDeleteUserRequest generates a "aws/request.Request" representing the // client's request for the AdminDeleteUser operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AdminDeleteUser for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AdminDeleteUser method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AdminDeleteUserRequest method. // req, resp := client.AdminDeleteUserRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) AdminDeleteUserRequest(input *AdminDeleteUserInput) (req *request.Request, output *AdminDeleteUserOutput) { op := &request.Operation{ Name: opAdminDeleteUser, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AdminDeleteUserInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AdminDeleteUserOutput{} req.Data = output return } // AdminDeleteUser API operation for Amazon Cognito Identity Provider. // // Deletes a user as an administrator. Works on any user. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation AdminDeleteUser for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) AdminDeleteUser(input *AdminDeleteUserInput) (*AdminDeleteUserOutput, error) { req, out := c.AdminDeleteUserRequest(input) err := req.Send() return out, err } const opAdminDeleteUserAttributes = "AdminDeleteUserAttributes" // AdminDeleteUserAttributesRequest generates a "aws/request.Request" representing the // client's request for the AdminDeleteUserAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AdminDeleteUserAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AdminDeleteUserAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AdminDeleteUserAttributesRequest method. // req, resp := client.AdminDeleteUserAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) AdminDeleteUserAttributesRequest(input *AdminDeleteUserAttributesInput) (req *request.Request, output *AdminDeleteUserAttributesOutput) { op := &request.Operation{ Name: opAdminDeleteUserAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AdminDeleteUserAttributesInput{} } req = c.newRequest(op, input, output) output = &AdminDeleteUserAttributesOutput{} req.Data = output return } // AdminDeleteUserAttributes API operation for Amazon Cognito Identity Provider. // // Deletes the user attributes in a user pool as an administrator. Works on // any user. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation AdminDeleteUserAttributes for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) AdminDeleteUserAttributes(input *AdminDeleteUserAttributesInput) (*AdminDeleteUserAttributesOutput, error) { req, out := c.AdminDeleteUserAttributesRequest(input) err := req.Send() return out, err } const opAdminDisableUser = "AdminDisableUser" // AdminDisableUserRequest generates a "aws/request.Request" representing the // client's request for the AdminDisableUser operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AdminDisableUser for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AdminDisableUser method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AdminDisableUserRequest method. // req, resp := client.AdminDisableUserRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) AdminDisableUserRequest(input *AdminDisableUserInput) (req *request.Request, output *AdminDisableUserOutput) { op := &request.Operation{ Name: opAdminDisableUser, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AdminDisableUserInput{} } req = c.newRequest(op, input, output) output = &AdminDisableUserOutput{} req.Data = output return } // AdminDisableUser API operation for Amazon Cognito Identity Provider. // // Disables the specified user as an administrator. Works on any user. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation AdminDisableUser for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) AdminDisableUser(input *AdminDisableUserInput) (*AdminDisableUserOutput, error) { req, out := c.AdminDisableUserRequest(input) err := req.Send() return out, err } const opAdminEnableUser = "AdminEnableUser" // AdminEnableUserRequest generates a "aws/request.Request" representing the // client's request for the AdminEnableUser operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AdminEnableUser for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AdminEnableUser method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AdminEnableUserRequest method. // req, resp := client.AdminEnableUserRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) AdminEnableUserRequest(input *AdminEnableUserInput) (req *request.Request, output *AdminEnableUserOutput) { op := &request.Operation{ Name: opAdminEnableUser, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AdminEnableUserInput{} } req = c.newRequest(op, input, output) output = &AdminEnableUserOutput{} req.Data = output return } // AdminEnableUser API operation for Amazon Cognito Identity Provider. // // Enables the specified user as an administrator. Works on any user. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation AdminEnableUser for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) AdminEnableUser(input *AdminEnableUserInput) (*AdminEnableUserOutput, error) { req, out := c.AdminEnableUserRequest(input) err := req.Send() return out, err } const opAdminForgetDevice = "AdminForgetDevice" // AdminForgetDeviceRequest generates a "aws/request.Request" representing the // client's request for the AdminForgetDevice operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AdminForgetDevice for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AdminForgetDevice method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AdminForgetDeviceRequest method. // req, resp := client.AdminForgetDeviceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) AdminForgetDeviceRequest(input *AdminForgetDeviceInput) (req *request.Request, output *AdminForgetDeviceOutput) { op := &request.Operation{ Name: opAdminForgetDevice, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AdminForgetDeviceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AdminForgetDeviceOutput{} req.Data = output return } // AdminForgetDevice API operation for Amazon Cognito Identity Provider. // // Forgets the device, as an administrator. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation AdminForgetDevice for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * InvalidUserPoolConfigurationException // This exception is thrown when the user pool configuration is invalid. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) AdminForgetDevice(input *AdminForgetDeviceInput) (*AdminForgetDeviceOutput, error) { req, out := c.AdminForgetDeviceRequest(input) err := req.Send() return out, err } const opAdminGetDevice = "AdminGetDevice" // AdminGetDeviceRequest generates a "aws/request.Request" representing the // client's request for the AdminGetDevice operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AdminGetDevice for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AdminGetDevice method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AdminGetDeviceRequest method. // req, resp := client.AdminGetDeviceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) AdminGetDeviceRequest(input *AdminGetDeviceInput) (req *request.Request, output *AdminGetDeviceOutput) { op := &request.Operation{ Name: opAdminGetDevice, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AdminGetDeviceInput{} } req = c.newRequest(op, input, output) output = &AdminGetDeviceOutput{} req.Data = output return } // AdminGetDevice API operation for Amazon Cognito Identity Provider. // // Gets the device, as an administrator. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation AdminGetDevice for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * InvalidUserPoolConfigurationException // This exception is thrown when the user pool configuration is invalid. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // func (c *CognitoIdentityProvider) AdminGetDevice(input *AdminGetDeviceInput) (*AdminGetDeviceOutput, error) { req, out := c.AdminGetDeviceRequest(input) err := req.Send() return out, err } const opAdminGetUser = "AdminGetUser" // AdminGetUserRequest generates a "aws/request.Request" representing the // client's request for the AdminGetUser operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AdminGetUser for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AdminGetUser method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AdminGetUserRequest method. // req, resp := client.AdminGetUserRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) AdminGetUserRequest(input *AdminGetUserInput) (req *request.Request, output *AdminGetUserOutput) { op := &request.Operation{ Name: opAdminGetUser, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AdminGetUserInput{} } req = c.newRequest(op, input, output) output = &AdminGetUserOutput{} req.Data = output return } // AdminGetUser API operation for Amazon Cognito Identity Provider. // // Gets the specified user by user name in a user pool as an administrator. // Works on any user. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation AdminGetUser for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) AdminGetUser(input *AdminGetUserInput) (*AdminGetUserOutput, error) { req, out := c.AdminGetUserRequest(input) err := req.Send() return out, err } const opAdminInitiateAuth = "AdminInitiateAuth" // AdminInitiateAuthRequest generates a "aws/request.Request" representing the // client's request for the AdminInitiateAuth operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AdminInitiateAuth for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AdminInitiateAuth method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AdminInitiateAuthRequest method. // req, resp := client.AdminInitiateAuthRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) AdminInitiateAuthRequest(input *AdminInitiateAuthInput) (req *request.Request, output *AdminInitiateAuthOutput) { op := &request.Operation{ Name: opAdminInitiateAuth, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AdminInitiateAuthInput{} } req = c.newRequest(op, input, output) output = &AdminInitiateAuthOutput{} req.Data = output return } // AdminInitiateAuth API operation for Amazon Cognito Identity Provider. // // Initiates the authentication flow, as an administrator. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation AdminInitiateAuth for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // // * UnexpectedLambdaException // This exception gets thrown when the Amazon Cognito service encounters an // unexpected exception with the AWS Lambda service. // // * InvalidUserPoolConfigurationException // This exception is thrown when the user pool configuration is invalid. // // * UserLambdaValidationException // This exception gets thrown when the Amazon Cognito service encounters a user // validation exception with the AWS Lambda service. // // * InvalidLambdaResponseException // This exception is thrown when the Amazon Cognito service encounters an invalid // AWS Lambda response. // // * MFAMethodNotFoundException // This exception is thrown when Amazon Cognito cannot find a multi-factor authentication // (MFA) method. // // * InvalidSmsRoleAccessPolicyException // This exception is returned when the role provided for SMS configuration does // not have permission to publish using Amazon SNS. // // * InvalidSmsRoleTrustRelationshipException // This exception is thrown when the trust relationship is invalid for the role // provided for SMS configuration. This can happen if you do not trust cognito-idp.amazonaws.com // or the external ID provided in the role does not match what is provided in // the SMS configuration for the user pool. // // * PasswordResetRequiredException // This exception is thrown when a password reset is required. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // func (c *CognitoIdentityProvider) AdminInitiateAuth(input *AdminInitiateAuthInput) (*AdminInitiateAuthOutput, error) { req, out := c.AdminInitiateAuthRequest(input) err := req.Send() return out, err } const opAdminListDevices = "AdminListDevices" // AdminListDevicesRequest generates a "aws/request.Request" representing the // client's request for the AdminListDevices operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AdminListDevices for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AdminListDevices method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AdminListDevicesRequest method. // req, resp := client.AdminListDevicesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) AdminListDevicesRequest(input *AdminListDevicesInput) (req *request.Request, output *AdminListDevicesOutput) { op := &request.Operation{ Name: opAdminListDevices, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AdminListDevicesInput{} } req = c.newRequest(op, input, output) output = &AdminListDevicesOutput{} req.Data = output return } // AdminListDevices API operation for Amazon Cognito Identity Provider. // // Lists devices, as an administrator. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation AdminListDevices for usage and error information. // // Returned Error Codes: // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidUserPoolConfigurationException // This exception is thrown when the user pool configuration is invalid. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // func (c *CognitoIdentityProvider) AdminListDevices(input *AdminListDevicesInput) (*AdminListDevicesOutput, error) { req, out := c.AdminListDevicesRequest(input) err := req.Send() return out, err } const opAdminResetUserPassword = "AdminResetUserPassword" // AdminResetUserPasswordRequest generates a "aws/request.Request" representing the // client's request for the AdminResetUserPassword operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AdminResetUserPassword for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AdminResetUserPassword method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AdminResetUserPasswordRequest method. // req, resp := client.AdminResetUserPasswordRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) AdminResetUserPasswordRequest(input *AdminResetUserPasswordInput) (req *request.Request, output *AdminResetUserPasswordOutput) { op := &request.Operation{ Name: opAdminResetUserPassword, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AdminResetUserPasswordInput{} } req = c.newRequest(op, input, output) output = &AdminResetUserPasswordOutput{} req.Data = output return } // AdminResetUserPassword API operation for Amazon Cognito Identity Provider. // // Resets the specified user's password in a user pool as an administrator. // Works on any user. // // When a developer calls this API, the current password is invalidated, so // it must be changed. If a user tries to sign in after the API is called, the // app will get a PasswordResetRequiredException exception back and should direct // the user down the flow to reset the password, which is the same as the forgot // password flow. In addition, if the user pool has phone verification selected // and a verified phone number exists for the user, or if email verification // is selected and a verified email exists for the user, calling this API will // also result in sending a message to the end user with the code to change // their password. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation AdminResetUserPassword for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * UnexpectedLambdaException // This exception gets thrown when the Amazon Cognito service encounters an // unexpected exception with the AWS Lambda service. // // * UserLambdaValidationException // This exception gets thrown when the Amazon Cognito service encounters a user // validation exception with the AWS Lambda service. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InvalidLambdaResponseException // This exception is thrown when the Amazon Cognito service encounters an invalid // AWS Lambda response. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * LimitExceededException // This exception is thrown when a user exceeds the limit for a requested AWS // resource. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) AdminResetUserPassword(input *AdminResetUserPasswordInput) (*AdminResetUserPasswordOutput, error) { req, out := c.AdminResetUserPasswordRequest(input) err := req.Send() return out, err } const opAdminRespondToAuthChallenge = "AdminRespondToAuthChallenge" // AdminRespondToAuthChallengeRequest generates a "aws/request.Request" representing the // client's request for the AdminRespondToAuthChallenge operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AdminRespondToAuthChallenge for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AdminRespondToAuthChallenge method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AdminRespondToAuthChallengeRequest method. // req, resp := client.AdminRespondToAuthChallengeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) AdminRespondToAuthChallengeRequest(input *AdminRespondToAuthChallengeInput) (req *request.Request, output *AdminRespondToAuthChallengeOutput) { op := &request.Operation{ Name: opAdminRespondToAuthChallenge, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AdminRespondToAuthChallengeInput{} } req = c.newRequest(op, input, output) output = &AdminRespondToAuthChallengeOutput{} req.Data = output return } // AdminRespondToAuthChallenge API operation for Amazon Cognito Identity Provider. // // Responds to an authentication challenge, as an administrator. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation AdminRespondToAuthChallenge for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * CodeMismatchException // This exception is thrown if the provided code does not match what the server // was expecting. // // * ExpiredCodeException // This exception is thrown if a code has expired. // // * UnexpectedLambdaException // This exception gets thrown when the Amazon Cognito service encounters an // unexpected exception with the AWS Lambda service. // // * InvalidPasswordException // This exception is thrown when the Amazon Cognito service encounters an invalid // password. // // * UserLambdaValidationException // This exception gets thrown when the Amazon Cognito service encounters a user // validation exception with the AWS Lambda service. // // * InvalidLambdaResponseException // This exception is thrown when the Amazon Cognito service encounters an invalid // AWS Lambda response. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * InvalidUserPoolConfigurationException // This exception is thrown when the user pool configuration is invalid. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // // * MFAMethodNotFoundException // This exception is thrown when Amazon Cognito cannot find a multi-factor authentication // (MFA) method. // // * InvalidSmsRoleAccessPolicyException // This exception is returned when the role provided for SMS configuration does // not have permission to publish using Amazon SNS. // // * InvalidSmsRoleTrustRelationshipException // This exception is thrown when the trust relationship is invalid for the role // provided for SMS configuration. This can happen if you do not trust cognito-idp.amazonaws.com // or the external ID provided in the role does not match what is provided in // the SMS configuration for the user pool. // // * AliasExistsException // This exception is thrown when a user tries to confirm the account with an // email or phone number that has already been supplied as an alias from a different // account. This exception tells user that an account with this email or phone // already exists. // // * PasswordResetRequiredException // This exception is thrown when a password reset is required. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // func (c *CognitoIdentityProvider) AdminRespondToAuthChallenge(input *AdminRespondToAuthChallengeInput) (*AdminRespondToAuthChallengeOutput, error) { req, out := c.AdminRespondToAuthChallengeRequest(input) err := req.Send() return out, err } const opAdminSetUserSettings = "AdminSetUserSettings" // AdminSetUserSettingsRequest generates a "aws/request.Request" representing the // client's request for the AdminSetUserSettings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AdminSetUserSettings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AdminSetUserSettings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AdminSetUserSettingsRequest method. // req, resp := client.AdminSetUserSettingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) AdminSetUserSettingsRequest(input *AdminSetUserSettingsInput) (req *request.Request, output *AdminSetUserSettingsOutput) { op := &request.Operation{ Name: opAdminSetUserSettings, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AdminSetUserSettingsInput{} } req = c.newRequest(op, input, output) output = &AdminSetUserSettingsOutput{} req.Data = output return } // AdminSetUserSettings API operation for Amazon Cognito Identity Provider. // // Sets all the user settings for a specified user name. Works on any user. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation AdminSetUserSettings for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) AdminSetUserSettings(input *AdminSetUserSettingsInput) (*AdminSetUserSettingsOutput, error) { req, out := c.AdminSetUserSettingsRequest(input) err := req.Send() return out, err } const opAdminUpdateDeviceStatus = "AdminUpdateDeviceStatus" // AdminUpdateDeviceStatusRequest generates a "aws/request.Request" representing the // client's request for the AdminUpdateDeviceStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AdminUpdateDeviceStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AdminUpdateDeviceStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AdminUpdateDeviceStatusRequest method. // req, resp := client.AdminUpdateDeviceStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) AdminUpdateDeviceStatusRequest(input *AdminUpdateDeviceStatusInput) (req *request.Request, output *AdminUpdateDeviceStatusOutput) { op := &request.Operation{ Name: opAdminUpdateDeviceStatus, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AdminUpdateDeviceStatusInput{} } req = c.newRequest(op, input, output) output = &AdminUpdateDeviceStatusOutput{} req.Data = output return } // AdminUpdateDeviceStatus API operation for Amazon Cognito Identity Provider. // // Updates the device status as an administrator. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation AdminUpdateDeviceStatus for usage and error information. // // Returned Error Codes: // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidUserPoolConfigurationException // This exception is thrown when the user pool configuration is invalid. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) AdminUpdateDeviceStatus(input *AdminUpdateDeviceStatusInput) (*AdminUpdateDeviceStatusOutput, error) { req, out := c.AdminUpdateDeviceStatusRequest(input) err := req.Send() return out, err } const opAdminUpdateUserAttributes = "AdminUpdateUserAttributes" // AdminUpdateUserAttributesRequest generates a "aws/request.Request" representing the // client's request for the AdminUpdateUserAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AdminUpdateUserAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AdminUpdateUserAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AdminUpdateUserAttributesRequest method. // req, resp := client.AdminUpdateUserAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) AdminUpdateUserAttributesRequest(input *AdminUpdateUserAttributesInput) (req *request.Request, output *AdminUpdateUserAttributesOutput) { op := &request.Operation{ Name: opAdminUpdateUserAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AdminUpdateUserAttributesInput{} } req = c.newRequest(op, input, output) output = &AdminUpdateUserAttributesOutput{} req.Data = output return } // AdminUpdateUserAttributes API operation for Amazon Cognito Identity Provider. // // Updates the specified user's attributes, including developer attributes, // as an administrator. Works on any user. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation AdminUpdateUserAttributes for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * UnexpectedLambdaException // This exception gets thrown when the Amazon Cognito service encounters an // unexpected exception with the AWS Lambda service. // // * UserLambdaValidationException // This exception gets thrown when the Amazon Cognito service encounters a user // validation exception with the AWS Lambda service. // // * InvalidLambdaResponseException // This exception is thrown when the Amazon Cognito service encounters an invalid // AWS Lambda response. // // * AliasExistsException // This exception is thrown when a user tries to confirm the account with an // email or phone number that has already been supplied as an alias from a different // account. This exception tells user that an account with this email or phone // already exists. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) AdminUpdateUserAttributes(input *AdminUpdateUserAttributesInput) (*AdminUpdateUserAttributesOutput, error) { req, out := c.AdminUpdateUserAttributesRequest(input) err := req.Send() return out, err } const opAdminUserGlobalSignOut = "AdminUserGlobalSignOut" // AdminUserGlobalSignOutRequest generates a "aws/request.Request" representing the // client's request for the AdminUserGlobalSignOut operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AdminUserGlobalSignOut for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AdminUserGlobalSignOut method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AdminUserGlobalSignOutRequest method. // req, resp := client.AdminUserGlobalSignOutRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) AdminUserGlobalSignOutRequest(input *AdminUserGlobalSignOutInput) (req *request.Request, output *AdminUserGlobalSignOutOutput) { op := &request.Operation{ Name: opAdminUserGlobalSignOut, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AdminUserGlobalSignOutInput{} } req = c.newRequest(op, input, output) output = &AdminUserGlobalSignOutOutput{} req.Data = output return } // AdminUserGlobalSignOut API operation for Amazon Cognito Identity Provider. // // Signs out users from all devices, as an administrator. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation AdminUserGlobalSignOut for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) AdminUserGlobalSignOut(input *AdminUserGlobalSignOutInput) (*AdminUserGlobalSignOutOutput, error) { req, out := c.AdminUserGlobalSignOutRequest(input) err := req.Send() return out, err } const opChangePassword = "ChangePassword" // ChangePasswordRequest generates a "aws/request.Request" representing the // client's request for the ChangePassword operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ChangePassword for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ChangePassword method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ChangePasswordRequest method. // req, resp := client.ChangePasswordRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) ChangePasswordRequest(input *ChangePasswordInput) (req *request.Request, output *ChangePasswordOutput) { op := &request.Operation{ Name: opChangePassword, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ChangePasswordInput{} } req = c.newRequest(op, input, output) req.Config.Credentials = credentials.AnonymousCredentials output = &ChangePasswordOutput{} req.Data = output return } // ChangePassword API operation for Amazon Cognito Identity Provider. // // Changes the password for a specified user in a user pool. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation ChangePassword for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * InvalidPasswordException // This exception is thrown when the Amazon Cognito service encounters an invalid // password. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * LimitExceededException // This exception is thrown when a user exceeds the limit for a requested AWS // resource. // // * PasswordResetRequiredException // This exception is thrown when a password reset is required. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) ChangePassword(input *ChangePasswordInput) (*ChangePasswordOutput, error) { req, out := c.ChangePasswordRequest(input) err := req.Send() return out, err } const opConfirmDevice = "ConfirmDevice" // ConfirmDeviceRequest generates a "aws/request.Request" representing the // client's request for the ConfirmDevice operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ConfirmDevice for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ConfirmDevice method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ConfirmDeviceRequest method. // req, resp := client.ConfirmDeviceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) ConfirmDeviceRequest(input *ConfirmDeviceInput) (req *request.Request, output *ConfirmDeviceOutput) { op := &request.Operation{ Name: opConfirmDevice, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ConfirmDeviceInput{} } req = c.newRequest(op, input, output) output = &ConfirmDeviceOutput{} req.Data = output return } // ConfirmDevice API operation for Amazon Cognito Identity Provider. // // Confirms tracking of the device. This API call is the call that beings device // tracking. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation ConfirmDevice for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InvalidPasswordException // This exception is thrown when the Amazon Cognito service encounters an invalid // password. // // * InvalidLambdaResponseException // This exception is thrown when the Amazon Cognito service encounters an invalid // AWS Lambda response. // // * UsernameExistsException // This exception is thrown when Amazon Cognito encounters a user name that // already exists in the user pool. // // * InvalidUserPoolConfigurationException // This exception is thrown when the user pool configuration is invalid. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * PasswordResetRequiredException // This exception is thrown when a password reset is required. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) ConfirmDevice(input *ConfirmDeviceInput) (*ConfirmDeviceOutput, error) { req, out := c.ConfirmDeviceRequest(input) err := req.Send() return out, err } const opConfirmForgotPassword = "ConfirmForgotPassword" // ConfirmForgotPasswordRequest generates a "aws/request.Request" representing the // client's request for the ConfirmForgotPassword operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ConfirmForgotPassword for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ConfirmForgotPassword method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ConfirmForgotPasswordRequest method. // req, resp := client.ConfirmForgotPasswordRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) ConfirmForgotPasswordRequest(input *ConfirmForgotPasswordInput) (req *request.Request, output *ConfirmForgotPasswordOutput) { op := &request.Operation{ Name: opConfirmForgotPassword, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ConfirmForgotPasswordInput{} } req = c.newRequest(op, input, output) req.Config.Credentials = credentials.AnonymousCredentials output = &ConfirmForgotPasswordOutput{} req.Data = output return } // ConfirmForgotPassword API operation for Amazon Cognito Identity Provider. // // Allows a user to enter a code provided when they reset their password to // update their password. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation ConfirmForgotPassword for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * UnexpectedLambdaException // This exception gets thrown when the Amazon Cognito service encounters an // unexpected exception with the AWS Lambda service. // // * UserLambdaValidationException // This exception gets thrown when the Amazon Cognito service encounters a user // validation exception with the AWS Lambda service. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * InvalidPasswordException // This exception is thrown when the Amazon Cognito service encounters an invalid // password. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * CodeMismatchException // This exception is thrown if the provided code does not match what the server // was expecting. // // * ExpiredCodeException // This exception is thrown if a code has expired. // // * TooManyFailedAttemptsException // This exception gets thrown when the user has made too many failed attempts // for a given action (e.g., sign in). // // * InvalidLambdaResponseException // This exception is thrown when the Amazon Cognito service encounters an invalid // AWS Lambda response. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * LimitExceededException // This exception is thrown when a user exceeds the limit for a requested AWS // resource. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) ConfirmForgotPassword(input *ConfirmForgotPasswordInput) (*ConfirmForgotPasswordOutput, error) { req, out := c.ConfirmForgotPasswordRequest(input) err := req.Send() return out, err } const opConfirmSignUp = "ConfirmSignUp" // ConfirmSignUpRequest generates a "aws/request.Request" representing the // client's request for the ConfirmSignUp operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ConfirmSignUp for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ConfirmSignUp method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ConfirmSignUpRequest method. // req, resp := client.ConfirmSignUpRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) ConfirmSignUpRequest(input *ConfirmSignUpInput) (req *request.Request, output *ConfirmSignUpOutput) { op := &request.Operation{ Name: opConfirmSignUp, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ConfirmSignUpInput{} } req = c.newRequest(op, input, output) req.Config.Credentials = credentials.AnonymousCredentials output = &ConfirmSignUpOutput{} req.Data = output return } // ConfirmSignUp API operation for Amazon Cognito Identity Provider. // // Confirms registration of a user and handles the existing alias from a previous // user. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation ConfirmSignUp for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * UnexpectedLambdaException // This exception gets thrown when the Amazon Cognito service encounters an // unexpected exception with the AWS Lambda service. // // * UserLambdaValidationException // This exception gets thrown when the Amazon Cognito service encounters a user // validation exception with the AWS Lambda service. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * TooManyFailedAttemptsException // This exception gets thrown when the user has made too many failed attempts // for a given action (e.g., sign in). // // * CodeMismatchException // This exception is thrown if the provided code does not match what the server // was expecting. // // * ExpiredCodeException // This exception is thrown if a code has expired. // // * InvalidLambdaResponseException // This exception is thrown when the Amazon Cognito service encounters an invalid // AWS Lambda response. // // * AliasExistsException // This exception is thrown when a user tries to confirm the account with an // email or phone number that has already been supplied as an alias from a different // account. This exception tells user that an account with this email or phone // already exists. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * LimitExceededException // This exception is thrown when a user exceeds the limit for a requested AWS // resource. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) ConfirmSignUp(input *ConfirmSignUpInput) (*ConfirmSignUpOutput, error) { req, out := c.ConfirmSignUpRequest(input) err := req.Send() return out, err } const opCreateUserImportJob = "CreateUserImportJob" // CreateUserImportJobRequest generates a "aws/request.Request" representing the // client's request for the CreateUserImportJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateUserImportJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateUserImportJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateUserImportJobRequest method. // req, resp := client.CreateUserImportJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) CreateUserImportJobRequest(input *CreateUserImportJobInput) (req *request.Request, output *CreateUserImportJobOutput) { op := &request.Operation{ Name: opCreateUserImportJob, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateUserImportJobInput{} } req = c.newRequest(op, input, output) output = &CreateUserImportJobOutput{} req.Data = output return } // CreateUserImportJob API operation for Amazon Cognito Identity Provider. // // Creates the user import job. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation CreateUserImportJob for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * PreconditionNotMetException // This exception is thrown when a precondition is not met. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * LimitExceededException // This exception is thrown when a user exceeds the limit for a requested AWS // resource. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) CreateUserImportJob(input *CreateUserImportJobInput) (*CreateUserImportJobOutput, error) { req, out := c.CreateUserImportJobRequest(input) err := req.Send() return out, err } const opCreateUserPool = "CreateUserPool" // CreateUserPoolRequest generates a "aws/request.Request" representing the // client's request for the CreateUserPool operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateUserPool for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateUserPool method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateUserPoolRequest method. // req, resp := client.CreateUserPoolRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) CreateUserPoolRequest(input *CreateUserPoolInput) (req *request.Request, output *CreateUserPoolOutput) { op := &request.Operation{ Name: opCreateUserPool, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateUserPoolInput{} } req = c.newRequest(op, input, output) output = &CreateUserPoolOutput{} req.Data = output return } // CreateUserPool API operation for Amazon Cognito Identity Provider. // // Creates a new Amazon Cognito user pool and sets the password policy for the // pool. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation CreateUserPool for usage and error information. // // Returned Error Codes: // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * LimitExceededException // This exception is thrown when a user exceeds the limit for a requested AWS // resource. // // * InvalidSmsRoleAccessPolicyException // This exception is returned when the role provided for SMS configuration does // not have permission to publish using Amazon SNS. // // * InvalidSmsRoleTrustRelationshipException // This exception is thrown when the trust relationship is invalid for the role // provided for SMS configuration. This can happen if you do not trust cognito-idp.amazonaws.com // or the external ID provided in the role does not match what is provided in // the SMS configuration for the user pool. // // * InvalidEmailRoleAccessPolicyException // This exception is thrown when Amazon Cognito is not allowed to use your email // identity. HTTP status code: 400. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) CreateUserPool(input *CreateUserPoolInput) (*CreateUserPoolOutput, error) { req, out := c.CreateUserPoolRequest(input) err := req.Send() return out, err } const opCreateUserPoolClient = "CreateUserPoolClient" // CreateUserPoolClientRequest generates a "aws/request.Request" representing the // client's request for the CreateUserPoolClient operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateUserPoolClient for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateUserPoolClient method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateUserPoolClientRequest method. // req, resp := client.CreateUserPoolClientRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) CreateUserPoolClientRequest(input *CreateUserPoolClientInput) (req *request.Request, output *CreateUserPoolClientOutput) { op := &request.Operation{ Name: opCreateUserPoolClient, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateUserPoolClientInput{} } req = c.newRequest(op, input, output) output = &CreateUserPoolClientOutput{} req.Data = output return } // CreateUserPoolClient API operation for Amazon Cognito Identity Provider. // // Creates the user pool client. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation CreateUserPoolClient for usage and error information. // // Returned Error Codes: // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * LimitExceededException // This exception is thrown when a user exceeds the limit for a requested AWS // resource. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) CreateUserPoolClient(input *CreateUserPoolClientInput) (*CreateUserPoolClientOutput, error) { req, out := c.CreateUserPoolClientRequest(input) err := req.Send() return out, err } const opDeleteUser = "DeleteUser" // DeleteUserRequest generates a "aws/request.Request" representing the // client's request for the DeleteUser operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteUser for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteUser method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteUserRequest method. // req, resp := client.DeleteUserRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) DeleteUserRequest(input *DeleteUserInput) (req *request.Request, output *DeleteUserOutput) { op := &request.Operation{ Name: opDeleteUser, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteUserInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) req.Config.Credentials = credentials.AnonymousCredentials output = &DeleteUserOutput{} req.Data = output return } // DeleteUser API operation for Amazon Cognito Identity Provider. // // Allows a user to delete one's self. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation DeleteUser for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * PasswordResetRequiredException // This exception is thrown when a password reset is required. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) DeleteUser(input *DeleteUserInput) (*DeleteUserOutput, error) { req, out := c.DeleteUserRequest(input) err := req.Send() return out, err } const opDeleteUserAttributes = "DeleteUserAttributes" // DeleteUserAttributesRequest generates a "aws/request.Request" representing the // client's request for the DeleteUserAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteUserAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteUserAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteUserAttributesRequest method. // req, resp := client.DeleteUserAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) DeleteUserAttributesRequest(input *DeleteUserAttributesInput) (req *request.Request, output *DeleteUserAttributesOutput) { op := &request.Operation{ Name: opDeleteUserAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteUserAttributesInput{} } req = c.newRequest(op, input, output) req.Config.Credentials = credentials.AnonymousCredentials output = &DeleteUserAttributesOutput{} req.Data = output return } // DeleteUserAttributes API operation for Amazon Cognito Identity Provider. // // Deletes the attributes for a user. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation DeleteUserAttributes for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * PasswordResetRequiredException // This exception is thrown when a password reset is required. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) DeleteUserAttributes(input *DeleteUserAttributesInput) (*DeleteUserAttributesOutput, error) { req, out := c.DeleteUserAttributesRequest(input) err := req.Send() return out, err } const opDeleteUserPool = "DeleteUserPool" // DeleteUserPoolRequest generates a "aws/request.Request" representing the // client's request for the DeleteUserPool operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteUserPool for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteUserPool method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteUserPoolRequest method. // req, resp := client.DeleteUserPoolRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) DeleteUserPoolRequest(input *DeleteUserPoolInput) (req *request.Request, output *DeleteUserPoolOutput) { op := &request.Operation{ Name: opDeleteUserPool, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteUserPoolInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteUserPoolOutput{} req.Data = output return } // DeleteUserPool API operation for Amazon Cognito Identity Provider. // // Deletes the specified Amazon Cognito user pool. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation DeleteUserPool for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * UserImportInProgressException // This exception is thrown when you are trying to modify a user pool while // a user import job is in progress for that pool. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) DeleteUserPool(input *DeleteUserPoolInput) (*DeleteUserPoolOutput, error) { req, out := c.DeleteUserPoolRequest(input) err := req.Send() return out, err } const opDeleteUserPoolClient = "DeleteUserPoolClient" // DeleteUserPoolClientRequest generates a "aws/request.Request" representing the // client's request for the DeleteUserPoolClient operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteUserPoolClient for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteUserPoolClient method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteUserPoolClientRequest method. // req, resp := client.DeleteUserPoolClientRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) DeleteUserPoolClientRequest(input *DeleteUserPoolClientInput) (req *request.Request, output *DeleteUserPoolClientOutput) { op := &request.Operation{ Name: opDeleteUserPoolClient, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteUserPoolClientInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteUserPoolClientOutput{} req.Data = output return } // DeleteUserPoolClient API operation for Amazon Cognito Identity Provider. // // Allows the developer to delete the user pool client. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation DeleteUserPoolClient for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) DeleteUserPoolClient(input *DeleteUserPoolClientInput) (*DeleteUserPoolClientOutput, error) { req, out := c.DeleteUserPoolClientRequest(input) err := req.Send() return out, err } const opDescribeUserImportJob = "DescribeUserImportJob" // DescribeUserImportJobRequest generates a "aws/request.Request" representing the // client's request for the DescribeUserImportJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeUserImportJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeUserImportJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeUserImportJobRequest method. // req, resp := client.DescribeUserImportJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) DescribeUserImportJobRequest(input *DescribeUserImportJobInput) (req *request.Request, output *DescribeUserImportJobOutput) { op := &request.Operation{ Name: opDescribeUserImportJob, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeUserImportJobInput{} } req = c.newRequest(op, input, output) output = &DescribeUserImportJobOutput{} req.Data = output return } // DescribeUserImportJob API operation for Amazon Cognito Identity Provider. // // Describes the user import job. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation DescribeUserImportJob for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) DescribeUserImportJob(input *DescribeUserImportJobInput) (*DescribeUserImportJobOutput, error) { req, out := c.DescribeUserImportJobRequest(input) err := req.Send() return out, err } const opDescribeUserPool = "DescribeUserPool" // DescribeUserPoolRequest generates a "aws/request.Request" representing the // client's request for the DescribeUserPool operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeUserPool for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeUserPool method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeUserPoolRequest method. // req, resp := client.DescribeUserPoolRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) DescribeUserPoolRequest(input *DescribeUserPoolInput) (req *request.Request, output *DescribeUserPoolOutput) { op := &request.Operation{ Name: opDescribeUserPool, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeUserPoolInput{} } req = c.newRequest(op, input, output) output = &DescribeUserPoolOutput{} req.Data = output return } // DescribeUserPool API operation for Amazon Cognito Identity Provider. // // Returns the configuration information and metadata of the specified user // pool. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation DescribeUserPool for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) DescribeUserPool(input *DescribeUserPoolInput) (*DescribeUserPoolOutput, error) { req, out := c.DescribeUserPoolRequest(input) err := req.Send() return out, err } const opDescribeUserPoolClient = "DescribeUserPoolClient" // DescribeUserPoolClientRequest generates a "aws/request.Request" representing the // client's request for the DescribeUserPoolClient operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeUserPoolClient for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeUserPoolClient method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeUserPoolClientRequest method. // req, resp := client.DescribeUserPoolClientRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) DescribeUserPoolClientRequest(input *DescribeUserPoolClientInput) (req *request.Request, output *DescribeUserPoolClientOutput) { op := &request.Operation{ Name: opDescribeUserPoolClient, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeUserPoolClientInput{} } req = c.newRequest(op, input, output) output = &DescribeUserPoolClientOutput{} req.Data = output return } // DescribeUserPoolClient API operation for Amazon Cognito Identity Provider. // // Client method for returning the configuration information and metadata of // the specified user pool client. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation DescribeUserPoolClient for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) DescribeUserPoolClient(input *DescribeUserPoolClientInput) (*DescribeUserPoolClientOutput, error) { req, out := c.DescribeUserPoolClientRequest(input) err := req.Send() return out, err } const opForgetDevice = "ForgetDevice" // ForgetDeviceRequest generates a "aws/request.Request" representing the // client's request for the ForgetDevice operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ForgetDevice for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ForgetDevice method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ForgetDeviceRequest method. // req, resp := client.ForgetDeviceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) ForgetDeviceRequest(input *ForgetDeviceInput) (req *request.Request, output *ForgetDeviceOutput) { op := &request.Operation{ Name: opForgetDevice, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ForgetDeviceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ForgetDeviceOutput{} req.Data = output return } // ForgetDevice API operation for Amazon Cognito Identity Provider. // // Forgets the specified device. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation ForgetDevice for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * InvalidUserPoolConfigurationException // This exception is thrown when the user pool configuration is invalid. // // * PasswordResetRequiredException // This exception is thrown when a password reset is required. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) ForgetDevice(input *ForgetDeviceInput) (*ForgetDeviceOutput, error) { req, out := c.ForgetDeviceRequest(input) err := req.Send() return out, err } const opForgotPassword = "ForgotPassword" // ForgotPasswordRequest generates a "aws/request.Request" representing the // client's request for the ForgotPassword operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ForgotPassword for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ForgotPassword method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ForgotPasswordRequest method. // req, resp := client.ForgotPasswordRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) ForgotPasswordRequest(input *ForgotPasswordInput) (req *request.Request, output *ForgotPasswordOutput) { op := &request.Operation{ Name: opForgotPassword, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ForgotPasswordInput{} } req = c.newRequest(op, input, output) req.Config.Credentials = credentials.AnonymousCredentials output = &ForgotPasswordOutput{} req.Data = output return } // ForgotPassword API operation for Amazon Cognito Identity Provider. // // Retrieves the password for the specified client ID or username. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation ForgotPassword for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * UnexpectedLambdaException // This exception gets thrown when the Amazon Cognito service encounters an // unexpected exception with the AWS Lambda service. // // * UserLambdaValidationException // This exception gets thrown when the Amazon Cognito service encounters a user // validation exception with the AWS Lambda service. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InvalidLambdaResponseException // This exception is thrown when the Amazon Cognito service encounters an invalid // AWS Lambda response. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * LimitExceededException // This exception is thrown when a user exceeds the limit for a requested AWS // resource. // // * InvalidSmsRoleAccessPolicyException // This exception is returned when the role provided for SMS configuration does // not have permission to publish using Amazon SNS. // // * InvalidSmsRoleTrustRelationshipException // This exception is thrown when the trust relationship is invalid for the role // provided for SMS configuration. This can happen if you do not trust cognito-idp.amazonaws.com // or the external ID provided in the role does not match what is provided in // the SMS configuration for the user pool. // // * InvalidEmailRoleAccessPolicyException // This exception is thrown when Amazon Cognito is not allowed to use your email // identity. HTTP status code: 400. // // * CodeDeliveryFailureException // This exception is thrown when a verification code fails to deliver successfully. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) ForgotPassword(input *ForgotPasswordInput) (*ForgotPasswordOutput, error) { req, out := c.ForgotPasswordRequest(input) err := req.Send() return out, err } const opGetCSVHeader = "GetCSVHeader" // GetCSVHeaderRequest generates a "aws/request.Request" representing the // client's request for the GetCSVHeader operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetCSVHeader for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetCSVHeader method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetCSVHeaderRequest method. // req, resp := client.GetCSVHeaderRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) GetCSVHeaderRequest(input *GetCSVHeaderInput) (req *request.Request, output *GetCSVHeaderOutput) { op := &request.Operation{ Name: opGetCSVHeader, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetCSVHeaderInput{} } req = c.newRequest(op, input, output) output = &GetCSVHeaderOutput{} req.Data = output return } // GetCSVHeader API operation for Amazon Cognito Identity Provider. // // Gets the header information for the .csv file to be used as input for the // user import job. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation GetCSVHeader for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) GetCSVHeader(input *GetCSVHeaderInput) (*GetCSVHeaderOutput, error) { req, out := c.GetCSVHeaderRequest(input) err := req.Send() return out, err } const opGetDevice = "GetDevice" // GetDeviceRequest generates a "aws/request.Request" representing the // client's request for the GetDevice operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDevice for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDevice method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDeviceRequest method. // req, resp := client.GetDeviceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) GetDeviceRequest(input *GetDeviceInput) (req *request.Request, output *GetDeviceOutput) { op := &request.Operation{ Name: opGetDevice, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetDeviceInput{} } req = c.newRequest(op, input, output) output = &GetDeviceOutput{} req.Data = output return } // GetDevice API operation for Amazon Cognito Identity Provider. // // Gets the device. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation GetDevice for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * InvalidUserPoolConfigurationException // This exception is thrown when the user pool configuration is invalid. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * PasswordResetRequiredException // This exception is thrown when a password reset is required. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) GetDevice(input *GetDeviceInput) (*GetDeviceOutput, error) { req, out := c.GetDeviceRequest(input) err := req.Send() return out, err } const opGetUser = "GetUser" // GetUserRequest generates a "aws/request.Request" representing the // client's request for the GetUser operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetUser for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetUser method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetUserRequest method. // req, resp := client.GetUserRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) GetUserRequest(input *GetUserInput) (req *request.Request, output *GetUserOutput) { op := &request.Operation{ Name: opGetUser, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetUserInput{} } req = c.newRequest(op, input, output) req.Config.Credentials = credentials.AnonymousCredentials output = &GetUserOutput{} req.Data = output return } // GetUser API operation for Amazon Cognito Identity Provider. // // Gets the user attributes and metadata for a user. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation GetUser for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * PasswordResetRequiredException // This exception is thrown when a password reset is required. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) GetUser(input *GetUserInput) (*GetUserOutput, error) { req, out := c.GetUserRequest(input) err := req.Send() return out, err } const opGetUserAttributeVerificationCode = "GetUserAttributeVerificationCode" // GetUserAttributeVerificationCodeRequest generates a "aws/request.Request" representing the // client's request for the GetUserAttributeVerificationCode operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetUserAttributeVerificationCode for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetUserAttributeVerificationCode method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetUserAttributeVerificationCodeRequest method. // req, resp := client.GetUserAttributeVerificationCodeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) GetUserAttributeVerificationCodeRequest(input *GetUserAttributeVerificationCodeInput) (req *request.Request, output *GetUserAttributeVerificationCodeOutput) { op := &request.Operation{ Name: opGetUserAttributeVerificationCode, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetUserAttributeVerificationCodeInput{} } req = c.newRequest(op, input, output) req.Config.Credentials = credentials.AnonymousCredentials output = &GetUserAttributeVerificationCodeOutput{} req.Data = output return } // GetUserAttributeVerificationCode API operation for Amazon Cognito Identity Provider. // // Gets the user attribute verification code for the specified attribute name. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation GetUserAttributeVerificationCode for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * UnexpectedLambdaException // This exception gets thrown when the Amazon Cognito service encounters an // unexpected exception with the AWS Lambda service. // // * UserLambdaValidationException // This exception gets thrown when the Amazon Cognito service encounters a user // validation exception with the AWS Lambda service. // // * InvalidLambdaResponseException // This exception is thrown when the Amazon Cognito service encounters an invalid // AWS Lambda response. // // * InvalidSmsRoleAccessPolicyException // This exception is returned when the role provided for SMS configuration does // not have permission to publish using Amazon SNS. // // * InvalidSmsRoleTrustRelationshipException // This exception is thrown when the trust relationship is invalid for the role // provided for SMS configuration. This can happen if you do not trust cognito-idp.amazonaws.com // or the external ID provided in the role does not match what is provided in // the SMS configuration for the user pool. // // * InvalidEmailRoleAccessPolicyException // This exception is thrown when Amazon Cognito is not allowed to use your email // identity. HTTP status code: 400. // // * CodeDeliveryFailureException // This exception is thrown when a verification code fails to deliver successfully. // // * LimitExceededException // This exception is thrown when a user exceeds the limit for a requested AWS // resource. // // * PasswordResetRequiredException // This exception is thrown when a password reset is required. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) GetUserAttributeVerificationCode(input *GetUserAttributeVerificationCodeInput) (*GetUserAttributeVerificationCodeOutput, error) { req, out := c.GetUserAttributeVerificationCodeRequest(input) err := req.Send() return out, err } const opGlobalSignOut = "GlobalSignOut" // GlobalSignOutRequest generates a "aws/request.Request" representing the // client's request for the GlobalSignOut operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GlobalSignOut for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GlobalSignOut method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GlobalSignOutRequest method. // req, resp := client.GlobalSignOutRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) GlobalSignOutRequest(input *GlobalSignOutInput) (req *request.Request, output *GlobalSignOutOutput) { op := &request.Operation{ Name: opGlobalSignOut, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GlobalSignOutInput{} } req = c.newRequest(op, input, output) output = &GlobalSignOutOutput{} req.Data = output return } // GlobalSignOut API operation for Amazon Cognito Identity Provider. // // Signs out users from all devices. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation GlobalSignOut for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * PasswordResetRequiredException // This exception is thrown when a password reset is required. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) GlobalSignOut(input *GlobalSignOutInput) (*GlobalSignOutOutput, error) { req, out := c.GlobalSignOutRequest(input) err := req.Send() return out, err } const opInitiateAuth = "InitiateAuth" // InitiateAuthRequest generates a "aws/request.Request" representing the // client's request for the InitiateAuth operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InitiateAuth for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InitiateAuth method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InitiateAuthRequest method. // req, resp := client.InitiateAuthRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) InitiateAuthRequest(input *InitiateAuthInput) (req *request.Request, output *InitiateAuthOutput) { op := &request.Operation{ Name: opInitiateAuth, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InitiateAuthInput{} } req = c.newRequest(op, input, output) output = &InitiateAuthOutput{} req.Data = output return } // InitiateAuth API operation for Amazon Cognito Identity Provider. // // Initiates the authentication flow. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation InitiateAuth for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * UnexpectedLambdaException // This exception gets thrown when the Amazon Cognito service encounters an // unexpected exception with the AWS Lambda service. // // * InvalidUserPoolConfigurationException // This exception is thrown when the user pool configuration is invalid. // // * UserLambdaValidationException // This exception gets thrown when the Amazon Cognito service encounters a user // validation exception with the AWS Lambda service. // // * InvalidLambdaResponseException // This exception is thrown when the Amazon Cognito service encounters an invalid // AWS Lambda response. // // * PasswordResetRequiredException // This exception is thrown when a password reset is required. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) InitiateAuth(input *InitiateAuthInput) (*InitiateAuthOutput, error) { req, out := c.InitiateAuthRequest(input) err := req.Send() return out, err } const opListDevices = "ListDevices" // ListDevicesRequest generates a "aws/request.Request" representing the // client's request for the ListDevices operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDevices for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDevices method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDevicesRequest method. // req, resp := client.ListDevicesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) ListDevicesRequest(input *ListDevicesInput) (req *request.Request, output *ListDevicesOutput) { op := &request.Operation{ Name: opListDevices, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListDevicesInput{} } req = c.newRequest(op, input, output) output = &ListDevicesOutput{} req.Data = output return } // ListDevices API operation for Amazon Cognito Identity Provider. // // Lists the devices. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation ListDevices for usage and error information. // // Returned Error Codes: // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InvalidUserPoolConfigurationException // This exception is thrown when the user pool configuration is invalid. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * PasswordResetRequiredException // This exception is thrown when a password reset is required. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) ListDevices(input *ListDevicesInput) (*ListDevicesOutput, error) { req, out := c.ListDevicesRequest(input) err := req.Send() return out, err } const opListUserImportJobs = "ListUserImportJobs" // ListUserImportJobsRequest generates a "aws/request.Request" representing the // client's request for the ListUserImportJobs operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListUserImportJobs for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListUserImportJobs method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListUserImportJobsRequest method. // req, resp := client.ListUserImportJobsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) ListUserImportJobsRequest(input *ListUserImportJobsInput) (req *request.Request, output *ListUserImportJobsOutput) { op := &request.Operation{ Name: opListUserImportJobs, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListUserImportJobsInput{} } req = c.newRequest(op, input, output) output = &ListUserImportJobsOutput{} req.Data = output return } // ListUserImportJobs API operation for Amazon Cognito Identity Provider. // // Lists the user import jobs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation ListUserImportJobs for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) ListUserImportJobs(input *ListUserImportJobsInput) (*ListUserImportJobsOutput, error) { req, out := c.ListUserImportJobsRequest(input) err := req.Send() return out, err } const opListUserPoolClients = "ListUserPoolClients" // ListUserPoolClientsRequest generates a "aws/request.Request" representing the // client's request for the ListUserPoolClients operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListUserPoolClients for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListUserPoolClients method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListUserPoolClientsRequest method. // req, resp := client.ListUserPoolClientsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) ListUserPoolClientsRequest(input *ListUserPoolClientsInput) (req *request.Request, output *ListUserPoolClientsOutput) { op := &request.Operation{ Name: opListUserPoolClients, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListUserPoolClientsInput{} } req = c.newRequest(op, input, output) output = &ListUserPoolClientsOutput{} req.Data = output return } // ListUserPoolClients API operation for Amazon Cognito Identity Provider. // // Lists the clients that have been created for the specified user pool. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation ListUserPoolClients for usage and error information. // // Returned Error Codes: // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) ListUserPoolClients(input *ListUserPoolClientsInput) (*ListUserPoolClientsOutput, error) { req, out := c.ListUserPoolClientsRequest(input) err := req.Send() return out, err } const opListUserPools = "ListUserPools" // ListUserPoolsRequest generates a "aws/request.Request" representing the // client's request for the ListUserPools operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListUserPools for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListUserPools method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListUserPoolsRequest method. // req, resp := client.ListUserPoolsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) ListUserPoolsRequest(input *ListUserPoolsInput) (req *request.Request, output *ListUserPoolsOutput) { op := &request.Operation{ Name: opListUserPools, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListUserPoolsInput{} } req = c.newRequest(op, input, output) output = &ListUserPoolsOutput{} req.Data = output return } // ListUserPools API operation for Amazon Cognito Identity Provider. // // Lists the user pools associated with an AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation ListUserPools for usage and error information. // // Returned Error Codes: // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) ListUserPools(input *ListUserPoolsInput) (*ListUserPoolsOutput, error) { req, out := c.ListUserPoolsRequest(input) err := req.Send() return out, err } const opListUsers = "ListUsers" // ListUsersRequest generates a "aws/request.Request" representing the // client's request for the ListUsers operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListUsers for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListUsers method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListUsersRequest method. // req, resp := client.ListUsersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) ListUsersRequest(input *ListUsersInput) (req *request.Request, output *ListUsersOutput) { op := &request.Operation{ Name: opListUsers, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListUsersInput{} } req = c.newRequest(op, input, output) output = &ListUsersOutput{} req.Data = output return } // ListUsers API operation for Amazon Cognito Identity Provider. // // Lists the users in the Amazon Cognito user pool. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation ListUsers for usage and error information. // // Returned Error Codes: // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) ListUsers(input *ListUsersInput) (*ListUsersOutput, error) { req, out := c.ListUsersRequest(input) err := req.Send() return out, err } const opResendConfirmationCode = "ResendConfirmationCode" // ResendConfirmationCodeRequest generates a "aws/request.Request" representing the // client's request for the ResendConfirmationCode operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ResendConfirmationCode for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ResendConfirmationCode method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ResendConfirmationCodeRequest method. // req, resp := client.ResendConfirmationCodeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) ResendConfirmationCodeRequest(input *ResendConfirmationCodeInput) (req *request.Request, output *ResendConfirmationCodeOutput) { op := &request.Operation{ Name: opResendConfirmationCode, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ResendConfirmationCodeInput{} } req = c.newRequest(op, input, output) req.Config.Credentials = credentials.AnonymousCredentials output = &ResendConfirmationCodeOutput{} req.Data = output return } // ResendConfirmationCode API operation for Amazon Cognito Identity Provider. // // Resends the confirmation (for confirmation of registration) to a specific // user in the user pool. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation ResendConfirmationCode for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * UnexpectedLambdaException // This exception gets thrown when the Amazon Cognito service encounters an // unexpected exception with the AWS Lambda service. // // * UserLambdaValidationException // This exception gets thrown when the Amazon Cognito service encounters a user // validation exception with the AWS Lambda service. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InvalidLambdaResponseException // This exception is thrown when the Amazon Cognito service encounters an invalid // AWS Lambda response. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * LimitExceededException // This exception is thrown when a user exceeds the limit for a requested AWS // resource. // // * InvalidSmsRoleAccessPolicyException // This exception is returned when the role provided for SMS configuration does // not have permission to publish using Amazon SNS. // // * InvalidSmsRoleTrustRelationshipException // This exception is thrown when the trust relationship is invalid for the role // provided for SMS configuration. This can happen if you do not trust cognito-idp.amazonaws.com // or the external ID provided in the role does not match what is provided in // the SMS configuration for the user pool. // // * InvalidEmailRoleAccessPolicyException // This exception is thrown when Amazon Cognito is not allowed to use your email // identity. HTTP status code: 400. // // * CodeDeliveryFailureException // This exception is thrown when a verification code fails to deliver successfully. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) ResendConfirmationCode(input *ResendConfirmationCodeInput) (*ResendConfirmationCodeOutput, error) { req, out := c.ResendConfirmationCodeRequest(input) err := req.Send() return out, err } const opRespondToAuthChallenge = "RespondToAuthChallenge" // RespondToAuthChallengeRequest generates a "aws/request.Request" representing the // client's request for the RespondToAuthChallenge operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RespondToAuthChallenge for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RespondToAuthChallenge method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RespondToAuthChallengeRequest method. // req, resp := client.RespondToAuthChallengeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) RespondToAuthChallengeRequest(input *RespondToAuthChallengeInput) (req *request.Request, output *RespondToAuthChallengeOutput) { op := &request.Operation{ Name: opRespondToAuthChallenge, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RespondToAuthChallengeInput{} } req = c.newRequest(op, input, output) output = &RespondToAuthChallengeOutput{} req.Data = output return } // RespondToAuthChallenge API operation for Amazon Cognito Identity Provider. // // Responds to the authentication challenge. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation RespondToAuthChallenge for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * CodeMismatchException // This exception is thrown if the provided code does not match what the server // was expecting. // // * ExpiredCodeException // This exception is thrown if a code has expired. // // * UnexpectedLambdaException // This exception gets thrown when the Amazon Cognito service encounters an // unexpected exception with the AWS Lambda service. // // * UserLambdaValidationException // This exception gets thrown when the Amazon Cognito service encounters a user // validation exception with the AWS Lambda service. // // * InvalidPasswordException // This exception is thrown when the Amazon Cognito service encounters an invalid // password. // // * InvalidLambdaResponseException // This exception is thrown when the Amazon Cognito service encounters an invalid // AWS Lambda response. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * InvalidUserPoolConfigurationException // This exception is thrown when the user pool configuration is invalid. // // * MFAMethodNotFoundException // This exception is thrown when Amazon Cognito cannot find a multi-factor authentication // (MFA) method. // // * PasswordResetRequiredException // This exception is thrown when a password reset is required. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // // * InvalidSmsRoleAccessPolicyException // This exception is returned when the role provided for SMS configuration does // not have permission to publish using Amazon SNS. // // * InvalidSmsRoleTrustRelationshipException // This exception is thrown when the trust relationship is invalid for the role // provided for SMS configuration. This can happen if you do not trust cognito-idp.amazonaws.com // or the external ID provided in the role does not match what is provided in // the SMS configuration for the user pool. // // * AliasExistsException // This exception is thrown when a user tries to confirm the account with an // email or phone number that has already been supplied as an alias from a different // account. This exception tells user that an account with this email or phone // already exists. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) RespondToAuthChallenge(input *RespondToAuthChallengeInput) (*RespondToAuthChallengeOutput, error) { req, out := c.RespondToAuthChallengeRequest(input) err := req.Send() return out, err } const opSetUserSettings = "SetUserSettings" // SetUserSettingsRequest generates a "aws/request.Request" representing the // client's request for the SetUserSettings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetUserSettings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetUserSettings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetUserSettingsRequest method. // req, resp := client.SetUserSettingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) SetUserSettingsRequest(input *SetUserSettingsInput) (req *request.Request, output *SetUserSettingsOutput) { op := &request.Operation{ Name: opSetUserSettings, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetUserSettingsInput{} } req = c.newRequest(op, input, output) req.Config.Credentials = credentials.AnonymousCredentials output = &SetUserSettingsOutput{} req.Data = output return } // SetUserSettings API operation for Amazon Cognito Identity Provider. // // Sets the user settings like multi-factor authentication (MFA). If MFA is // to be removed for a particular attribute pass the attribute with code delivery // as null. If null list is passed, all MFA options are removed. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation SetUserSettings for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * PasswordResetRequiredException // This exception is thrown when a password reset is required. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) SetUserSettings(input *SetUserSettingsInput) (*SetUserSettingsOutput, error) { req, out := c.SetUserSettingsRequest(input) err := req.Send() return out, err } const opSignUp = "SignUp" // SignUpRequest generates a "aws/request.Request" representing the // client's request for the SignUp operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SignUp for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SignUp method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SignUpRequest method. // req, resp := client.SignUpRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) SignUpRequest(input *SignUpInput) (req *request.Request, output *SignUpOutput) { op := &request.Operation{ Name: opSignUp, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SignUpInput{} } req = c.newRequest(op, input, output) req.Config.Credentials = credentials.AnonymousCredentials output = &SignUpOutput{} req.Data = output return } // SignUp API operation for Amazon Cognito Identity Provider. // // Registers the user in the specified user pool and creates a user name, password, // and user attributes. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation SignUp for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * UnexpectedLambdaException // This exception gets thrown when the Amazon Cognito service encounters an // unexpected exception with the AWS Lambda service. // // * UserLambdaValidationException // This exception gets thrown when the Amazon Cognito service encounters a user // validation exception with the AWS Lambda service. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InvalidPasswordException // This exception is thrown when the Amazon Cognito service encounters an invalid // password. // // * InvalidLambdaResponseException // This exception is thrown when the Amazon Cognito service encounters an invalid // AWS Lambda response. // // * UsernameExistsException // This exception is thrown when Amazon Cognito encounters a user name that // already exists in the user pool. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // // * InvalidSmsRoleAccessPolicyException // This exception is returned when the role provided for SMS configuration does // not have permission to publish using Amazon SNS. // // * InvalidSmsRoleTrustRelationshipException // This exception is thrown when the trust relationship is invalid for the role // provided for SMS configuration. This can happen if you do not trust cognito-idp.amazonaws.com // or the external ID provided in the role does not match what is provided in // the SMS configuration for the user pool. // // * InvalidEmailRoleAccessPolicyException // This exception is thrown when Amazon Cognito is not allowed to use your email // identity. HTTP status code: 400. // // * CodeDeliveryFailureException // This exception is thrown when a verification code fails to deliver successfully. // func (c *CognitoIdentityProvider) SignUp(input *SignUpInput) (*SignUpOutput, error) { req, out := c.SignUpRequest(input) err := req.Send() return out, err } const opStartUserImportJob = "StartUserImportJob" // StartUserImportJobRequest generates a "aws/request.Request" representing the // client's request for the StartUserImportJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StartUserImportJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StartUserImportJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StartUserImportJobRequest method. // req, resp := client.StartUserImportJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) StartUserImportJobRequest(input *StartUserImportJobInput) (req *request.Request, output *StartUserImportJobOutput) { op := &request.Operation{ Name: opStartUserImportJob, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartUserImportJobInput{} } req = c.newRequest(op, input, output) output = &StartUserImportJobOutput{} req.Data = output return } // StartUserImportJob API operation for Amazon Cognito Identity Provider. // // Starts the user import. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation StartUserImportJob for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // // * PreconditionNotMetException // This exception is thrown when a precondition is not met. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // func (c *CognitoIdentityProvider) StartUserImportJob(input *StartUserImportJobInput) (*StartUserImportJobOutput, error) { req, out := c.StartUserImportJobRequest(input) err := req.Send() return out, err } const opStopUserImportJob = "StopUserImportJob" // StopUserImportJobRequest generates a "aws/request.Request" representing the // client's request for the StopUserImportJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StopUserImportJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StopUserImportJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StopUserImportJobRequest method. // req, resp := client.StopUserImportJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) StopUserImportJobRequest(input *StopUserImportJobInput) (req *request.Request, output *StopUserImportJobOutput) { op := &request.Operation{ Name: opStopUserImportJob, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StopUserImportJobInput{} } req = c.newRequest(op, input, output) output = &StopUserImportJobOutput{} req.Data = output return } // StopUserImportJob API operation for Amazon Cognito Identity Provider. // // Stops the user import job. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation StopUserImportJob for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // // * PreconditionNotMetException // This exception is thrown when a precondition is not met. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // func (c *CognitoIdentityProvider) StopUserImportJob(input *StopUserImportJobInput) (*StopUserImportJobOutput, error) { req, out := c.StopUserImportJobRequest(input) err := req.Send() return out, err } const opUpdateDeviceStatus = "UpdateDeviceStatus" // UpdateDeviceStatusRequest generates a "aws/request.Request" representing the // client's request for the UpdateDeviceStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateDeviceStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateDeviceStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateDeviceStatusRequest method. // req, resp := client.UpdateDeviceStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) UpdateDeviceStatusRequest(input *UpdateDeviceStatusInput) (req *request.Request, output *UpdateDeviceStatusOutput) { op := &request.Operation{ Name: opUpdateDeviceStatus, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateDeviceStatusInput{} } req = c.newRequest(op, input, output) output = &UpdateDeviceStatusOutput{} req.Data = output return } // UpdateDeviceStatus API operation for Amazon Cognito Identity Provider. // // Updates the device status. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation UpdateDeviceStatus for usage and error information. // // Returned Error Codes: // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InvalidUserPoolConfigurationException // This exception is thrown when the user pool configuration is invalid. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * PasswordResetRequiredException // This exception is thrown when a password reset is required. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) UpdateDeviceStatus(input *UpdateDeviceStatusInput) (*UpdateDeviceStatusOutput, error) { req, out := c.UpdateDeviceStatusRequest(input) err := req.Send() return out, err } const opUpdateUserAttributes = "UpdateUserAttributes" // UpdateUserAttributesRequest generates a "aws/request.Request" representing the // client's request for the UpdateUserAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateUserAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateUserAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateUserAttributesRequest method. // req, resp := client.UpdateUserAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) UpdateUserAttributesRequest(input *UpdateUserAttributesInput) (req *request.Request, output *UpdateUserAttributesOutput) { op := &request.Operation{ Name: opUpdateUserAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateUserAttributesInput{} } req = c.newRequest(op, input, output) req.Config.Credentials = credentials.AnonymousCredentials output = &UpdateUserAttributesOutput{} req.Data = output return } // UpdateUserAttributes API operation for Amazon Cognito Identity Provider. // // Allows a user to update a specific attribute (one at a time). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation UpdateUserAttributes for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * CodeMismatchException // This exception is thrown if the provided code does not match what the server // was expecting. // // * ExpiredCodeException // This exception is thrown if a code has expired. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * UnexpectedLambdaException // This exception gets thrown when the Amazon Cognito service encounters an // unexpected exception with the AWS Lambda service. // // * UserLambdaValidationException // This exception gets thrown when the Amazon Cognito service encounters a user // validation exception with the AWS Lambda service. // // * InvalidLambdaResponseException // This exception is thrown when the Amazon Cognito service encounters an invalid // AWS Lambda response. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * AliasExistsException // This exception is thrown when a user tries to confirm the account with an // email or phone number that has already been supplied as an alias from a different // account. This exception tells user that an account with this email or phone // already exists. // // * InvalidSmsRoleAccessPolicyException // This exception is returned when the role provided for SMS configuration does // not have permission to publish using Amazon SNS. // // * InvalidSmsRoleTrustRelationshipException // This exception is thrown when the trust relationship is invalid for the role // provided for SMS configuration. This can happen if you do not trust cognito-idp.amazonaws.com // or the external ID provided in the role does not match what is provided in // the SMS configuration for the user pool. // // * InvalidEmailRoleAccessPolicyException // This exception is thrown when Amazon Cognito is not allowed to use your email // identity. HTTP status code: 400. // // * CodeDeliveryFailureException // This exception is thrown when a verification code fails to deliver successfully. // // * PasswordResetRequiredException // This exception is thrown when a password reset is required. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) UpdateUserAttributes(input *UpdateUserAttributesInput) (*UpdateUserAttributesOutput, error) { req, out := c.UpdateUserAttributesRequest(input) err := req.Send() return out, err } const opUpdateUserPool = "UpdateUserPool" // UpdateUserPoolRequest generates a "aws/request.Request" representing the // client's request for the UpdateUserPool operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateUserPool for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateUserPool method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateUserPoolRequest method. // req, resp := client.UpdateUserPoolRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) UpdateUserPoolRequest(input *UpdateUserPoolInput) (req *request.Request, output *UpdateUserPoolOutput) { op := &request.Operation{ Name: opUpdateUserPool, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateUserPoolInput{} } req = c.newRequest(op, input, output) output = &UpdateUserPoolOutput{} req.Data = output return } // UpdateUserPool API operation for Amazon Cognito Identity Provider. // // Updates the specified user pool with the specified attributes. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation UpdateUserPool for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * ConcurrentModificationException // This exception is thrown if two or more modifications are happening concurrently. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * UserImportInProgressException // This exception is thrown when you are trying to modify a user pool while // a user import job is in progress for that pool. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // // * InvalidSmsRoleAccessPolicyException // This exception is returned when the role provided for SMS configuration does // not have permission to publish using Amazon SNS. // // * InvalidSmsRoleTrustRelationshipException // This exception is thrown when the trust relationship is invalid for the role // provided for SMS configuration. This can happen if you do not trust cognito-idp.amazonaws.com // or the external ID provided in the role does not match what is provided in // the SMS configuration for the user pool. // // * InvalidEmailRoleAccessPolicyException // This exception is thrown when Amazon Cognito is not allowed to use your email // identity. HTTP status code: 400. // func (c *CognitoIdentityProvider) UpdateUserPool(input *UpdateUserPoolInput) (*UpdateUserPoolOutput, error) { req, out := c.UpdateUserPoolRequest(input) err := req.Send() return out, err } const opUpdateUserPoolClient = "UpdateUserPoolClient" // UpdateUserPoolClientRequest generates a "aws/request.Request" representing the // client's request for the UpdateUserPoolClient operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateUserPoolClient for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateUserPoolClient method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateUserPoolClientRequest method. // req, resp := client.UpdateUserPoolClientRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) UpdateUserPoolClientRequest(input *UpdateUserPoolClientInput) (req *request.Request, output *UpdateUserPoolClientOutput) { op := &request.Operation{ Name: opUpdateUserPoolClient, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateUserPoolClientInput{} } req = c.newRequest(op, input, output) output = &UpdateUserPoolClientOutput{} req.Data = output return } // UpdateUserPoolClient API operation for Amazon Cognito Identity Provider. // // Allows the developer to update the specified user pool client and password // policy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation UpdateUserPoolClient for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) UpdateUserPoolClient(input *UpdateUserPoolClientInput) (*UpdateUserPoolClientOutput, error) { req, out := c.UpdateUserPoolClientRequest(input) err := req.Send() return out, err } const opVerifyUserAttribute = "VerifyUserAttribute" // VerifyUserAttributeRequest generates a "aws/request.Request" representing the // client's request for the VerifyUserAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See VerifyUserAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the VerifyUserAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the VerifyUserAttributeRequest method. // req, resp := client.VerifyUserAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoIdentityProvider) VerifyUserAttributeRequest(input *VerifyUserAttributeInput) (req *request.Request, output *VerifyUserAttributeOutput) { op := &request.Operation{ Name: opVerifyUserAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &VerifyUserAttributeInput{} } req = c.newRequest(op, input, output) req.Config.Credentials = credentials.AnonymousCredentials output = &VerifyUserAttributeOutput{} req.Data = output return } // VerifyUserAttribute API operation for Amazon Cognito Identity Provider. // // Verifies the specified user attributes in the user pool. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Identity Provider's // API operation VerifyUserAttribute for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // This exception is thrown when the Amazon Cognito service cannot find the // requested resource. // // * InvalidParameterException // This exception is thrown when the Amazon Cognito service encounters an invalid // parameter. // // * CodeMismatchException // This exception is thrown if the provided code does not match what the server // was expecting. // // * ExpiredCodeException // This exception is thrown if a code has expired. // // * NotAuthorizedException // This exception gets thrown when a user is not authorized. // // * TooManyRequestsException // This exception gets thrown when the user has made too many requests for a // given operation. // // * LimitExceededException // This exception is thrown when a user exceeds the limit for a requested AWS // resource. // // * PasswordResetRequiredException // This exception is thrown when a password reset is required. // // * UserNotFoundException // This exception is thrown when a user is not found. // // * UserNotConfirmedException // This exception is thrown when a user is not confirmed successfully. // // * InternalErrorException // This exception is thrown when Amazon Cognito encounters an internal error. // func (c *CognitoIdentityProvider) VerifyUserAttribute(input *VerifyUserAttributeInput) (*VerifyUserAttributeOutput, error) { req, out := c.VerifyUserAttributeRequest(input) err := req.Send() return out, err } // Represents the request to add custom attributes. type AddCustomAttributesInput struct { _ struct{} `type:"structure"` // An array of custom attributes, such as Mutable and Name. // // CustomAttributes is a required field CustomAttributes []*SchemaAttributeType `min:"1" type:"list" required:"true"` // The user pool ID for the user pool where you want to add custom attributes. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AddCustomAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddCustomAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddCustomAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddCustomAttributesInput"} if s.CustomAttributes == nil { invalidParams.Add(request.NewErrParamRequired("CustomAttributes")) } if s.CustomAttributes != nil && len(s.CustomAttributes) < 1 { invalidParams.Add(request.NewErrParamMinLen("CustomAttributes", 1)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if s.CustomAttributes != nil { for i, v := range s.CustomAttributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CustomAttributes", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server for the request to add custom attributes. type AddCustomAttributesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddCustomAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddCustomAttributesOutput) GoString() string { return s.String() } // Represents the request to confirm user registration. type AdminConfirmSignUpInput struct { _ struct{} `type:"structure"` // The user pool ID for which you want to confirm user registration. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` // The user name for which you want to confirm user registration. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AdminConfirmSignUpInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminConfirmSignUpInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AdminConfirmSignUpInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AdminConfirmSignUpInput"} if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server for the request to confirm registration. type AdminConfirmSignUpOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AdminConfirmSignUpOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminConfirmSignUpOutput) GoString() string { return s.String() } // The type of configuration for creating a new user profile. type AdminCreateUserConfigType struct { _ struct{} `type:"structure"` // Set to True if only the administrator is allowed to create user profiles. // Set to False if users can sign themselves up via an app. AllowAdminCreateUserOnly *bool `type:"boolean"` // The message template to be used for the welcome message to new users. InviteMessageTemplate *MessageTemplateType `type:"structure"` // The user account expiration limit, in days, after which the account is no // longer usable. To reset the account after that time limit, you must call // AdminCreateUser again, specifying "RESEND" for the MessageAction parameter. UnusedAccountValidityDays *int64 `type:"integer"` } // String returns the string representation func (s AdminCreateUserConfigType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminCreateUserConfigType) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AdminCreateUserConfigType) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AdminCreateUserConfigType"} if s.InviteMessageTemplate != nil { if err := s.InviteMessageTemplate.Validate(); err != nil { invalidParams.AddNested("InviteMessageTemplate", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the request to create a user in the specified user pool. type AdminCreateUserInput struct { _ struct{} `type:"structure"` // Specify "EMAIL" if email will be used to send the welcome message. Specify // "SMS" if the phone number will be used. The default value is "SMS". More // than one value can be specified. DesiredDeliveryMediums []*string `type:"list"` // This parameter is only used if the phone_number_verified or email_verified // attribute is set to True. Otherwise, it is ignored. // // If this parameter is set to True and the phone number or email address specified // in the UserAttributes parameter already exists as an alias with a different // user, the API call will migrate the alias from the previous user to the newly // created user. The previous user will no longer be able to log in using that // alias. // // If this parameter is set to False, the API throws an AliasExistsException // error if the alias already exists. The default value is False. ForceAliasCreation *bool `type:"boolean"` // Set to "RESEND" to resend the invitation message to a user that already exists // and reset the expiration limit on the user's account. Set to "SUPPRESS" to // suppress sending the message. Only one value can be specified. MessageAction *string `type:"string" enum:"MessageActionType"` // The user's temporary password. This password must conform to the password // policy that you specified when you created the user pool. // // The temporary password is valid only once. To complete the Admin Create User // flow, the user must enter the temporary password in the sign-in page along // with a new password to be used in all future sign-ins. // // This parameter is not required. If you do not specify a value, Amazon Cognito // generates one for you. // // The temporary password can only be used until the user account expiration // limit that you specified when you created the user pool. To reset the account // after that time limit, you must call AdminCreateUser again, specifying "RESEND" // for the MessageAction parameter. TemporaryPassword *string `min:"6" type:"string"` // An array of name-value pairs that contain user attributes and attribute values // to be set for the user to be created. You can create a user without specifying // any attributes other than Username. However, any attributes that you specify // as required (in CreateUserPool or in the Attributes tab of the console) must // be supplied either by you (in your call to AdminCreateUser) or by the user // (when he or she signs up in response to your welcome message). // // To send a message inviting the user to sign up, you must specify the user's // email address or phone number. This can be done in your call to AdminCreateUser // or in the Users tab of the Amazon Cognito console for managing your user // pools. // // In your call to AdminCreateUser, you can set the email_verified attribute // to True, and you can set the phone_number_verified attribute to True. (You // cannot do this by calling other operations such as AdminUpdateUserAttributes.) // // * email: The email address of the user to whom the message that contains // the code and username will be sent. Required if the email_verified attribute // is set to True, or if "EMAIL" is specified in the DesiredDeliveryMediums // parameter. // // * phone_number: The phone number of the user to whom the message that // contains the code and username will be sent. Required if the phone_number_verified // attribute is set to True, or if "SMS" is specified in the DesiredDeliveryMediums // parameter. UserAttributes []*AttributeType `type:"list"` // The user pool ID for the user pool where the user will be created. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` // The username for the user. Must be unique within the user pool. Must be a // UTF-8 string between 1 and 128 characters. After the user is created, the // username cannot be changed. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` // The user's validation data. This is an array of name-value pairs that contain // user attributes and attribute values that you can use for custom validation, // such as restricting the types of user accounts that can be registered. For // example, you might choose to allow or disallow user sign-up based on the // user's domain. // // To configure custom validation, you must create a Pre Sign-up Lambda trigger // for the user pool as described in the Amazon Cognito Developer Guide. The // Lambda trigger receives the validation data and uses it in the validation // process. // // The user's validation data is not persisted. ValidationData []*AttributeType `type:"list"` } // String returns the string representation func (s AdminCreateUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminCreateUserInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AdminCreateUserInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AdminCreateUserInput"} if s.TemporaryPassword != nil && len(*s.TemporaryPassword) < 6 { invalidParams.Add(request.NewErrParamMinLen("TemporaryPassword", 6)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if s.UserAttributes != nil { for i, v := range s.UserAttributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UserAttributes", i), err.(request.ErrInvalidParams)) } } } if s.ValidationData != nil { for i, v := range s.ValidationData { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ValidationData", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server to the request to create the user. type AdminCreateUserOutput struct { _ struct{} `type:"structure"` // The user returned in the request to create a new user. User *UserType `type:"structure"` } // String returns the string representation func (s AdminCreateUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminCreateUserOutput) GoString() string { return s.String() } // Represents the request to delete user attributes as an administrator. type AdminDeleteUserAttributesInput struct { _ struct{} `type:"structure"` // An array of strings representing the user attribute names you wish to delete. // // UserAttributeNames is a required field UserAttributeNames []*string `type:"list" required:"true"` // The user pool ID for the user pool where you want to delete user attributes. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` // The user name of the user from which you would like to delete attributes. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AdminDeleteUserAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminDeleteUserAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AdminDeleteUserAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AdminDeleteUserAttributesInput"} if s.UserAttributeNames == nil { invalidParams.Add(request.NewErrParamRequired("UserAttributeNames")) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response received from the server for a request to delete // user attributes. type AdminDeleteUserAttributesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AdminDeleteUserAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminDeleteUserAttributesOutput) GoString() string { return s.String() } // Represents the request to delete a user as an administrator. type AdminDeleteUserInput struct { _ struct{} `type:"structure"` // The user pool ID for the user pool where you want to delete the user. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` // The user name of the user you wish to delete. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AdminDeleteUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminDeleteUserInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AdminDeleteUserInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AdminDeleteUserInput"} if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AdminDeleteUserOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AdminDeleteUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminDeleteUserOutput) GoString() string { return s.String() } // Represents the request to disable any user as an administrator. type AdminDisableUserInput struct { _ struct{} `type:"structure"` // The user pool ID for the user pool where you want to disable the user. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` // The user name of the user you wish to disable. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AdminDisableUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminDisableUserInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AdminDisableUserInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AdminDisableUserInput"} if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response received from the server to disable the user as an // administrator. type AdminDisableUserOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AdminDisableUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminDisableUserOutput) GoString() string { return s.String() } // Represents the request that enables the user as an administrator. type AdminEnableUserInput struct { _ struct{} `type:"structure"` // The user pool ID for the user pool where you want to enable the user. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` // The user name of the user you wish to ebable. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AdminEnableUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminEnableUserInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AdminEnableUserInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AdminEnableUserInput"} if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server for the request to enable a user // as an administrator. type AdminEnableUserOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AdminEnableUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminEnableUserOutput) GoString() string { return s.String() } // Sends the forgot device request, as an administrator. type AdminForgetDeviceInput struct { _ struct{} `type:"structure"` // The device key. // // DeviceKey is a required field DeviceKey *string `min:"1" type:"string" required:"true"` // The user pool ID. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` // The user name. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AdminForgetDeviceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminForgetDeviceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AdminForgetDeviceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AdminForgetDeviceInput"} if s.DeviceKey == nil { invalidParams.Add(request.NewErrParamRequired("DeviceKey")) } if s.DeviceKey != nil && len(*s.DeviceKey) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeviceKey", 1)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AdminForgetDeviceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AdminForgetDeviceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminForgetDeviceOutput) GoString() string { return s.String() } // Represents the request to get the device, as an administrator. type AdminGetDeviceInput struct { _ struct{} `type:"structure"` // The device key. // // DeviceKey is a required field DeviceKey *string `min:"1" type:"string" required:"true"` // The user pool ID. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` // The user name. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AdminGetDeviceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminGetDeviceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AdminGetDeviceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AdminGetDeviceInput"} if s.DeviceKey == nil { invalidParams.Add(request.NewErrParamRequired("DeviceKey")) } if s.DeviceKey != nil && len(*s.DeviceKey) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeviceKey", 1)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Gets the device response, as an administrator. type AdminGetDeviceOutput struct { _ struct{} `type:"structure"` // The device. // // Device is a required field Device *DeviceType `type:"structure" required:"true"` } // String returns the string representation func (s AdminGetDeviceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminGetDeviceOutput) GoString() string { return s.String() } // Represents the request to get the specified user as an administrator. type AdminGetUserInput struct { _ struct{} `type:"structure"` // The user pool ID for the user pool where you want to get information about // the user. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` // The user name of the user you wish to retrieve. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AdminGetUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminGetUserInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AdminGetUserInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AdminGetUserInput"} if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server from the request to get the specified // user as an administrator. type AdminGetUserOutput struct { _ struct{} `type:"structure"` // Indicates that the status is enabled. Enabled *bool `type:"boolean"` // Specifies the options for MFA (e.g., email or phone number). MFAOptions []*MFAOptionType `type:"list"` // An array of name-value pairs representing user attributes. UserAttributes []*AttributeType `type:"list"` // The date the user was created. UserCreateDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The date the user was last modified. UserLastModifiedDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The user status. Can be one of the following: // // * UNCONFIRMED - User has been created but not confirmed. // // * CONFIRMED - User has been confirmed. // // * ARCHIVED - User is no longer active. // // * COMPROMISED - User is disabled due to a potential security threat. // // * UNKNOWN - User status is not known. UserStatus *string `type:"string" enum:"UserStatusType"` // The user name of the user about whom you are receiving information. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AdminGetUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminGetUserOutput) GoString() string { return s.String() } // Initiates the authorization request, as an administrator. type AdminInitiateAuthInput struct { _ struct{} `type:"structure"` // The authentication flow. // // AuthFlow is a required field AuthFlow *string `type:"string" required:"true" enum:"AuthFlowType"` // The authentication parameters. AuthParameters map[string]*string `type:"map"` // The client app ID. // // ClientId is a required field ClientId *string `min:"1" type:"string" required:"true"` // The client app metadata. ClientMetadata map[string]*string `type:"map"` // The ID of the Amazon Cognito user pool. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AdminInitiateAuthInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminInitiateAuthInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AdminInitiateAuthInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AdminInitiateAuthInput"} if s.AuthFlow == nil { invalidParams.Add(request.NewErrParamRequired("AuthFlow")) } if s.ClientId == nil { invalidParams.Add(request.NewErrParamRequired("ClientId")) } if s.ClientId != nil && len(*s.ClientId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientId", 1)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Initiates the authentication response, as an administrator. type AdminInitiateAuthOutput struct { _ struct{} `type:"structure"` // The result type of the authentication result. AuthenticationResult *AuthenticationResultType `type:"structure"` // The name of the challenge. ChallengeName *string `type:"string" enum:"ChallengeNameType"` // The challenge parameters. ChallengeParameters map[string]*string `type:"map"` // The session. Session *string `min:"20" type:"string"` } // String returns the string representation func (s AdminInitiateAuthOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminInitiateAuthOutput) GoString() string { return s.String() } // Represents the request to list devices, as an administrator. type AdminListDevicesInput struct { _ struct{} `type:"structure"` // The limit of the devices request. Limit *int64 `type:"integer"` // The pagination token. PaginationToken *string `min:"1" type:"string"` // The user pool ID. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` // The user name. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AdminListDevicesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminListDevicesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AdminListDevicesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AdminListDevicesInput"} if s.PaginationToken != nil && len(*s.PaginationToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("PaginationToken", 1)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Lists the device's response, as an administrator. type AdminListDevicesOutput struct { _ struct{} `type:"structure"` // The devices in the list of devices response. Devices []*DeviceType `type:"list"` // The pagination token. PaginationToken *string `min:"1" type:"string"` } // String returns the string representation func (s AdminListDevicesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminListDevicesOutput) GoString() string { return s.String() } // Represents the request to reset a user's password as an administrator. type AdminResetUserPasswordInput struct { _ struct{} `type:"structure"` // The user pool ID for the user pool where you want to reset the user's password. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` // The user name of the user whose password you wish to reset. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AdminResetUserPasswordInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminResetUserPasswordInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AdminResetUserPasswordInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AdminResetUserPasswordInput"} if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server to reset a user password as an administrator. type AdminResetUserPasswordOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AdminResetUserPasswordOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminResetUserPasswordOutput) GoString() string { return s.String() } // The request to respond to the authentication challenge, as an administrator. type AdminRespondToAuthChallengeInput struct { _ struct{} `type:"structure"` // The name of the challenge. // // ChallengeName is a required field ChallengeName *string `type:"string" required:"true" enum:"ChallengeNameType"` // The challenge response. ChallengeResponses map[string]*string `type:"map"` // The client ID. // // ClientId is a required field ClientId *string `min:"1" type:"string" required:"true"` // The session. Session *string `min:"20" type:"string"` // The ID of the Amazon Cognito user pool. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AdminRespondToAuthChallengeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminRespondToAuthChallengeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AdminRespondToAuthChallengeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AdminRespondToAuthChallengeInput"} if s.ChallengeName == nil { invalidParams.Add(request.NewErrParamRequired("ChallengeName")) } if s.ClientId == nil { invalidParams.Add(request.NewErrParamRequired("ClientId")) } if s.ClientId != nil && len(*s.ClientId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientId", 1)) } if s.Session != nil && len(*s.Session) < 20 { invalidParams.Add(request.NewErrParamMinLen("Session", 20)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Responds to the authentication challenge, as an administrator. type AdminRespondToAuthChallengeOutput struct { _ struct{} `type:"structure"` // The result type of the authentication result. AuthenticationResult *AuthenticationResultType `type:"structure"` // The name of the challenge. ChallengeName *string `type:"string" enum:"ChallengeNameType"` // The challenge parameters. ChallengeParameters map[string]*string `type:"map"` // The session. Session *string `min:"20" type:"string"` } // String returns the string representation func (s AdminRespondToAuthChallengeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminRespondToAuthChallengeOutput) GoString() string { return s.String() } // Represents the request to set user settings as an administrator. type AdminSetUserSettingsInput struct { _ struct{} `type:"structure"` // Specifies the options for MFA (e.g., email or phone number). // // MFAOptions is a required field MFAOptions []*MFAOptionType `type:"list" required:"true"` // The user pool ID for the user pool where you want to set the user's settings, // such as MFA options. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` // The user name of the user for whom you wish to set user settings. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AdminSetUserSettingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminSetUserSettingsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AdminSetUserSettingsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AdminSetUserSettingsInput"} if s.MFAOptions == nil { invalidParams.Add(request.NewErrParamRequired("MFAOptions")) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if s.MFAOptions != nil { for i, v := range s.MFAOptions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MFAOptions", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server to set user settings as an administrator. type AdminSetUserSettingsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AdminSetUserSettingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminSetUserSettingsOutput) GoString() string { return s.String() } // The request to update the device status, as an administrator. type AdminUpdateDeviceStatusInput struct { _ struct{} `type:"structure"` // The device key. // // DeviceKey is a required field DeviceKey *string `min:"1" type:"string" required:"true"` // The status indicating whether a device has been remembered or not. DeviceRememberedStatus *string `type:"string" enum:"DeviceRememberedStatusType"` // The user pool ID> // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` // The user name. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AdminUpdateDeviceStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminUpdateDeviceStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AdminUpdateDeviceStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AdminUpdateDeviceStatusInput"} if s.DeviceKey == nil { invalidParams.Add(request.NewErrParamRequired("DeviceKey")) } if s.DeviceKey != nil && len(*s.DeviceKey) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeviceKey", 1)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The status response from the request to update the device, as an administrator. type AdminUpdateDeviceStatusOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AdminUpdateDeviceStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminUpdateDeviceStatusOutput) GoString() string { return s.String() } // Represents the request to update the user's attributes as an administrator. type AdminUpdateUserAttributesInput struct { _ struct{} `type:"structure"` // An array of name-value pairs representing user attributes. // // UserAttributes is a required field UserAttributes []*AttributeType `type:"list" required:"true"` // The user pool ID for the user pool where you want to update user attributes. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` // The user name of the user for whom you want to update user attributes. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AdminUpdateUserAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminUpdateUserAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AdminUpdateUserAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AdminUpdateUserAttributesInput"} if s.UserAttributes == nil { invalidParams.Add(request.NewErrParamRequired("UserAttributes")) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if s.UserAttributes != nil { for i, v := range s.UserAttributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UserAttributes", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server for the request to update user attributes // as an administrator. type AdminUpdateUserAttributesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AdminUpdateUserAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminUpdateUserAttributesOutput) GoString() string { return s.String() } // The request to sign out of all devices, as an administrator. type AdminUserGlobalSignOutInput struct { _ struct{} `type:"structure"` // The user pool ID. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` // The user name. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AdminUserGlobalSignOutInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminUserGlobalSignOutInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AdminUserGlobalSignOutInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AdminUserGlobalSignOutInput"} if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The global sign-out response, as an administrator. type AdminUserGlobalSignOutOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AdminUserGlobalSignOutOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdminUserGlobalSignOutOutput) GoString() string { return s.String() } // Specifies whether the attribute is standard or custom. type AttributeType struct { _ struct{} `type:"structure"` // The name of the attribute. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // The value of the attribute. Value *string `type:"string"` } // String returns the string representation func (s AttributeType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttributeType) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttributeType) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttributeType"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result type of the authentication result. type AuthenticationResultType struct { _ struct{} `type:"structure"` // The access token of the authentication result. AccessToken *string `type:"string"` // The expiration period of the authentication result. ExpiresIn *int64 `type:"integer"` // The ID token of the authentication result. IdToken *string `type:"string"` // The new device metadata from an authentication result. NewDeviceMetadata *NewDeviceMetadataType `type:"structure"` // The refresh token of the authentication result. RefreshToken *string `type:"string"` // The token type of the authentication result. TokenType *string `type:"string"` } // String returns the string representation func (s AuthenticationResultType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AuthenticationResultType) GoString() string { return s.String() } // Represents the request to change a user password. type ChangePasswordInput struct { _ struct{} `type:"structure"` // The access token in the change password request. AccessToken *string `type:"string"` // The old password in the change password request. // // PreviousPassword is a required field PreviousPassword *string `min:"6" type:"string" required:"true"` // The new password in the change password request. // // ProposedPassword is a required field ProposedPassword *string `min:"6" type:"string" required:"true"` } // String returns the string representation func (s ChangePasswordInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChangePasswordInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ChangePasswordInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ChangePasswordInput"} if s.PreviousPassword == nil { invalidParams.Add(request.NewErrParamRequired("PreviousPassword")) } if s.PreviousPassword != nil && len(*s.PreviousPassword) < 6 { invalidParams.Add(request.NewErrParamMinLen("PreviousPassword", 6)) } if s.ProposedPassword == nil { invalidParams.Add(request.NewErrParamRequired("ProposedPassword")) } if s.ProposedPassword != nil && len(*s.ProposedPassword) < 6 { invalidParams.Add(request.NewErrParamMinLen("ProposedPassword", 6)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response from the server to the change password request. type ChangePasswordOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ChangePasswordOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChangePasswordOutput) GoString() string { return s.String() } // The type of code delivery details being returned from the server. type CodeDeliveryDetailsType struct { _ struct{} `type:"structure"` // The name of the attribute in the code delivery details type. AttributeName *string `min:"1" type:"string"` // The delivery medium (email message or phone number). DeliveryMedium *string `type:"string" enum:"DeliveryMediumType"` // The destination for the code delivery details. Destination *string `type:"string"` } // String returns the string representation func (s CodeDeliveryDetailsType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CodeDeliveryDetailsType) GoString() string { return s.String() } // Confirms the device request. type ConfirmDeviceInput struct { _ struct{} `type:"structure"` // The access token. // // AccessToken is a required field AccessToken *string `type:"string" required:"true"` // The device key. // // DeviceKey is a required field DeviceKey *string `min:"1" type:"string" required:"true"` // The device name. DeviceName *string `min:"1" type:"string"` // The configuration of the device secret verifier. DeviceSecretVerifierConfig *DeviceSecretVerifierConfigType `type:"structure"` } // String returns the string representation func (s ConfirmDeviceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfirmDeviceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ConfirmDeviceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ConfirmDeviceInput"} if s.AccessToken == nil { invalidParams.Add(request.NewErrParamRequired("AccessToken")) } if s.DeviceKey == nil { invalidParams.Add(request.NewErrParamRequired("DeviceKey")) } if s.DeviceKey != nil && len(*s.DeviceKey) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeviceKey", 1)) } if s.DeviceName != nil && len(*s.DeviceName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeviceName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Confirms the device response. type ConfirmDeviceOutput struct { _ struct{} `type:"structure"` // Indicates whether the user confirmation is necessary to confirm the device // response. UserConfirmationNecessary *bool `type:"boolean"` } // String returns the string representation func (s ConfirmDeviceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfirmDeviceOutput) GoString() string { return s.String() } // The request representing the confirmation for a password reset. type ConfirmForgotPasswordInput struct { _ struct{} `type:"structure"` // The ID of the client associated with the user pool. // // ClientId is a required field ClientId *string `min:"1" type:"string" required:"true"` // The confirmation code sent by a user's request to retrieve a forgotten password. // // ConfirmationCode is a required field ConfirmationCode *string `min:"1" type:"string" required:"true"` // The password sent by sent by a user's request to retrieve a forgotten password. // // Password is a required field Password *string `min:"6" type:"string" required:"true"` // A keyed-hash message authentication code (HMAC) calculated using the secret // key of a user pool client and username plus the client ID in the message. SecretHash *string `min:"1" type:"string"` // The user name of the user for whom you want to enter a code to retrieve a // forgotten password. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ConfirmForgotPasswordInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfirmForgotPasswordInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ConfirmForgotPasswordInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ConfirmForgotPasswordInput"} if s.ClientId == nil { invalidParams.Add(request.NewErrParamRequired("ClientId")) } if s.ClientId != nil && len(*s.ClientId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientId", 1)) } if s.ConfirmationCode == nil { invalidParams.Add(request.NewErrParamRequired("ConfirmationCode")) } if s.ConfirmationCode != nil && len(*s.ConfirmationCode) < 1 { invalidParams.Add(request.NewErrParamMinLen("ConfirmationCode", 1)) } if s.Password == nil { invalidParams.Add(request.NewErrParamRequired("Password")) } if s.Password != nil && len(*s.Password) < 6 { invalidParams.Add(request.NewErrParamMinLen("Password", 6)) } if s.SecretHash != nil && len(*s.SecretHash) < 1 { invalidParams.Add(request.NewErrParamMinLen("SecretHash", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response from the server that results from a user's request to retrieve // a forgotten password. type ConfirmForgotPasswordOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ConfirmForgotPasswordOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfirmForgotPasswordOutput) GoString() string { return s.String() } // Represents the request to confirm registration of a user. type ConfirmSignUpInput struct { _ struct{} `type:"structure"` // The ID of the client associated with the user pool. // // ClientId is a required field ClientId *string `min:"1" type:"string" required:"true"` // The confirmation code sent by a user's request to confirm registration. // // ConfirmationCode is a required field ConfirmationCode *string `min:"1" type:"string" required:"true"` // Boolean to be specified to force user confirmation irrespective of existing // alias. By default set to False. If this parameter is set to True and the // phone number/email used for sign up confirmation already exists as an alias // with a different user, the API call will migrate the alias from the previous // user to the newly created user being confirmed. If set to False, the API // will throw an AliasExistsException error. ForceAliasCreation *bool `type:"boolean"` // A keyed-hash message authentication code (HMAC) calculated using the secret // key of a user pool client and username plus the client ID in the message. SecretHash *string `min:"1" type:"string"` // The user name of the user whose registration you wish to confirm. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ConfirmSignUpInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfirmSignUpInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ConfirmSignUpInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ConfirmSignUpInput"} if s.ClientId == nil { invalidParams.Add(request.NewErrParamRequired("ClientId")) } if s.ClientId != nil && len(*s.ClientId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientId", 1)) } if s.ConfirmationCode == nil { invalidParams.Add(request.NewErrParamRequired("ConfirmationCode")) } if s.ConfirmationCode != nil && len(*s.ConfirmationCode) < 1 { invalidParams.Add(request.NewErrParamMinLen("ConfirmationCode", 1)) } if s.SecretHash != nil && len(*s.SecretHash) < 1 { invalidParams.Add(request.NewErrParamMinLen("SecretHash", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server for the registration confirmation. type ConfirmSignUpOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ConfirmSignUpOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfirmSignUpOutput) GoString() string { return s.String() } // Represents the request to create the user import job. type CreateUserImportJobInput struct { _ struct{} `type:"structure"` // The role ARN for the Amazon CloudWatch Logging role for the user import job. // // CloudWatchLogsRoleArn is a required field CloudWatchLogsRoleArn *string `min:"20" type:"string" required:"true"` // The job name for the user import job. // // JobName is a required field JobName *string `min:"1" type:"string" required:"true"` // The user pool ID for the user pool that the users are being imported into. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateUserImportJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateUserImportJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateUserImportJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateUserImportJobInput"} if s.CloudWatchLogsRoleArn == nil { invalidParams.Add(request.NewErrParamRequired("CloudWatchLogsRoleArn")) } if s.CloudWatchLogsRoleArn != nil && len(*s.CloudWatchLogsRoleArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("CloudWatchLogsRoleArn", 20)) } if s.JobName == nil { invalidParams.Add(request.NewErrParamRequired("JobName")) } if s.JobName != nil && len(*s.JobName) < 1 { invalidParams.Add(request.NewErrParamMinLen("JobName", 1)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server to the request to create the user // import job. type CreateUserImportJobOutput struct { _ struct{} `type:"structure"` // The job object that represents the user import job. UserImportJob *UserImportJobType `type:"structure"` } // String returns the string representation func (s CreateUserImportJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateUserImportJobOutput) GoString() string { return s.String() } // Represents the request to create a user pool client. type CreateUserPoolClientInput struct { _ struct{} `type:"structure"` // The client name for the user pool client you would like to create. // // ClientName is a required field ClientName *string `min:"1" type:"string" required:"true"` // The explicit authentication flows. ExplicitAuthFlows []*string `type:"list"` // Boolean to specify whether you want to generate a secret for the user pool // client being created. GenerateSecret *bool `type:"boolean"` // The read attributes. ReadAttributes []*string `type:"list"` // Refreshes the token validity. RefreshTokenValidity *int64 `type:"integer"` // The user pool ID for the user pool where you want to create a user pool client. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` // The write attributes. WriteAttributes []*string `type:"list"` } // String returns the string representation func (s CreateUserPoolClientInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateUserPoolClientInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateUserPoolClientInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateUserPoolClientInput"} if s.ClientName == nil { invalidParams.Add(request.NewErrParamRequired("ClientName")) } if s.ClientName != nil && len(*s.ClientName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientName", 1)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server to create a user pool client. type CreateUserPoolClientOutput struct { _ struct{} `type:"structure"` // The user pool client that was just created. UserPoolClient *UserPoolClientType `type:"structure"` } // String returns the string representation func (s CreateUserPoolClientOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateUserPoolClientOutput) GoString() string { return s.String() } // Represents the request to create a user pool. type CreateUserPoolInput struct { _ struct{} `type:"structure"` // The configuration for AdminCreateUser requests. AdminCreateUserConfig *AdminCreateUserConfigType `type:"structure"` // Attributes supported as an alias for this user pool. Possible values: phone_number, // email, or preferred_username. AliasAttributes []*string `type:"list"` // The attributes to be auto-verified. Possible values: email, phone_number. AutoVerifiedAttributes []*string `type:"list"` // The device configuration. DeviceConfiguration *DeviceConfigurationType `type:"structure"` // The email configuration. EmailConfiguration *EmailConfigurationType `type:"structure"` // A string representing the email verification message. EmailVerificationMessage *string `min:"6" type:"string"` // A string representing the email verification subject. EmailVerificationSubject *string `min:"1" type:"string"` // The Lambda trigger configuration information for the new user pool. LambdaConfig *LambdaConfigType `type:"structure"` // Specifies MFA configuration details. MfaConfiguration *string `type:"string" enum:"UserPoolMfaType"` // The policies associated with the new user pool. Policies *UserPoolPolicyType `type:"structure"` // A string used to name the user pool. // // PoolName is a required field PoolName *string `min:"1" type:"string" required:"true"` // A string representing the SMS authentication message. SmsAuthenticationMessage *string `min:"6" type:"string"` // The SMS configuration. SmsConfiguration *SmsConfigurationType `type:"structure"` // A string representing the SMS verification message. SmsVerificationMessage *string `min:"6" type:"string"` } // String returns the string representation func (s CreateUserPoolInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateUserPoolInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateUserPoolInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateUserPoolInput"} if s.EmailVerificationMessage != nil && len(*s.EmailVerificationMessage) < 6 { invalidParams.Add(request.NewErrParamMinLen("EmailVerificationMessage", 6)) } if s.EmailVerificationSubject != nil && len(*s.EmailVerificationSubject) < 1 { invalidParams.Add(request.NewErrParamMinLen("EmailVerificationSubject", 1)) } if s.PoolName == nil { invalidParams.Add(request.NewErrParamRequired("PoolName")) } if s.PoolName != nil && len(*s.PoolName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PoolName", 1)) } if s.SmsAuthenticationMessage != nil && len(*s.SmsAuthenticationMessage) < 6 { invalidParams.Add(request.NewErrParamMinLen("SmsAuthenticationMessage", 6)) } if s.SmsVerificationMessage != nil && len(*s.SmsVerificationMessage) < 6 { invalidParams.Add(request.NewErrParamMinLen("SmsVerificationMessage", 6)) } if s.AdminCreateUserConfig != nil { if err := s.AdminCreateUserConfig.Validate(); err != nil { invalidParams.AddNested("AdminCreateUserConfig", err.(request.ErrInvalidParams)) } } if s.EmailConfiguration != nil { if err := s.EmailConfiguration.Validate(); err != nil { invalidParams.AddNested("EmailConfiguration", err.(request.ErrInvalidParams)) } } if s.LambdaConfig != nil { if err := s.LambdaConfig.Validate(); err != nil { invalidParams.AddNested("LambdaConfig", err.(request.ErrInvalidParams)) } } if s.Policies != nil { if err := s.Policies.Validate(); err != nil { invalidParams.AddNested("Policies", err.(request.ErrInvalidParams)) } } if s.SmsConfiguration != nil { if err := s.SmsConfiguration.Validate(); err != nil { invalidParams.AddNested("SmsConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server for the request to create a user // pool. type CreateUserPoolOutput struct { _ struct{} `type:"structure"` // A container for the user pool details. UserPool *UserPoolType `type:"structure"` } // String returns the string representation func (s CreateUserPoolOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateUserPoolOutput) GoString() string { return s.String() } // Represents the request to delete user attributes. type DeleteUserAttributesInput struct { _ struct{} `type:"structure"` // The access token used in the request to delete user attributes. AccessToken *string `type:"string"` // An array of strings representing the user attribute names you wish to delete. // // UserAttributeNames is a required field UserAttributeNames []*string `type:"list" required:"true"` } // String returns the string representation func (s DeleteUserAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUserAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteUserAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteUserAttributesInput"} if s.UserAttributeNames == nil { invalidParams.Add(request.NewErrParamRequired("UserAttributeNames")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server to delete user attributes. type DeleteUserAttributesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteUserAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUserAttributesOutput) GoString() string { return s.String() } // Represents the request to delete a user. type DeleteUserInput struct { _ struct{} `type:"structure"` // The access token from a request to delete a user. AccessToken *string `type:"string"` } // String returns the string representation func (s DeleteUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUserInput) GoString() string { return s.String() } type DeleteUserOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUserOutput) GoString() string { return s.String() } // Represents the request to delete a user pool client. type DeleteUserPoolClientInput struct { _ struct{} `type:"structure"` // The ID of the client associated with the user pool. // // ClientId is a required field ClientId *string `min:"1" type:"string" required:"true"` // The user pool ID for the user pool where you want to delete the client. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteUserPoolClientInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUserPoolClientInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteUserPoolClientInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteUserPoolClientInput"} if s.ClientId == nil { invalidParams.Add(request.NewErrParamRequired("ClientId")) } if s.ClientId != nil && len(*s.ClientId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientId", 1)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteUserPoolClientOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteUserPoolClientOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUserPoolClientOutput) GoString() string { return s.String() } // Represents the request to delete a user pool. type DeleteUserPoolInput struct { _ struct{} `type:"structure"` // The user pool ID for the user pool you want to delete. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteUserPoolInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUserPoolInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteUserPoolInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteUserPoolInput"} if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteUserPoolOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteUserPoolOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUserPoolOutput) GoString() string { return s.String() } // Represents the request to describe the user import job. type DescribeUserImportJobInput struct { _ struct{} `type:"structure"` // The job ID for the user import job. // // JobId is a required field JobId *string `min:"1" type:"string" required:"true"` // The user pool ID for the user pool that the users are being imported into. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeUserImportJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeUserImportJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeUserImportJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeUserImportJobInput"} if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.JobId != nil && len(*s.JobId) < 1 { invalidParams.Add(request.NewErrParamMinLen("JobId", 1)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server to the request to describe the user // import job. type DescribeUserImportJobOutput struct { _ struct{} `type:"structure"` // The job object that represents the user import job. UserImportJob *UserImportJobType `type:"structure"` } // String returns the string representation func (s DescribeUserImportJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeUserImportJobOutput) GoString() string { return s.String() } // Represents the request to describe a user pool client. type DescribeUserPoolClientInput struct { _ struct{} `type:"structure"` // The ID of the client associated with the user pool. // // ClientId is a required field ClientId *string `min:"1" type:"string" required:"true"` // The user pool ID for the user pool you want to describe. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeUserPoolClientInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeUserPoolClientInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeUserPoolClientInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeUserPoolClientInput"} if s.ClientId == nil { invalidParams.Add(request.NewErrParamRequired("ClientId")) } if s.ClientId != nil && len(*s.ClientId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientId", 1)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server from a request to describe the user // pool client. type DescribeUserPoolClientOutput struct { _ struct{} `type:"structure"` // The user pool client from a server response to describe the user pool client. UserPoolClient *UserPoolClientType `type:"structure"` } // String returns the string representation func (s DescribeUserPoolClientOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeUserPoolClientOutput) GoString() string { return s.String() } // Represents the request to describe the user pool. type DescribeUserPoolInput struct { _ struct{} `type:"structure"` // The user pool ID for the user pool you want to describe. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeUserPoolInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeUserPoolInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeUserPoolInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeUserPoolInput"} if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response to describe the user pool. type DescribeUserPoolOutput struct { _ struct{} `type:"structure"` // The container of metadata returned by the server to describe the pool. UserPool *UserPoolType `type:"structure"` } // String returns the string representation func (s DescribeUserPoolOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeUserPoolOutput) GoString() string { return s.String() } // The type of configuration for the user pool's device tracking. type DeviceConfigurationType struct { _ struct{} `type:"structure"` // Indicates whether a challenge is required on a new device. Only applicable // to a new device. ChallengeRequiredOnNewDevice *bool `type:"boolean"` // If true, a device is only remembered on user prompt. DeviceOnlyRememberedOnUserPrompt *bool `type:"boolean"` } // String returns the string representation func (s DeviceConfigurationType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeviceConfigurationType) GoString() string { return s.String() } // The device verifier against which it will be authenticated. type DeviceSecretVerifierConfigType struct { _ struct{} `type:"structure"` // The password verifier. PasswordVerifier *string `type:"string"` // The salt. Salt *string `type:"string"` } // String returns the string representation func (s DeviceSecretVerifierConfigType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeviceSecretVerifierConfigType) GoString() string { return s.String() } // The device type. type DeviceType struct { _ struct{} `type:"structure"` // The device attributes. DeviceAttributes []*AttributeType `type:"list"` // The creation date of the device. DeviceCreateDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The device key. DeviceKey *string `min:"1" type:"string"` // The date in which the device was last authenticated. DeviceLastAuthenticatedDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The last modified date of the device. DeviceLastModifiedDate *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s DeviceType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeviceType) GoString() string { return s.String() } // The email configuration type. type EmailConfigurationType struct { _ struct{} `type:"structure"` // The REPLY-TO email address. ReplyToEmailAddress *string `type:"string"` // The Amazon Resource Name (ARN) of the email source. SourceArn *string `min:"20" type:"string"` } // String returns the string representation func (s EmailConfigurationType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EmailConfigurationType) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EmailConfigurationType) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EmailConfigurationType"} if s.SourceArn != nil && len(*s.SourceArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("SourceArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the request to forget the device. type ForgetDeviceInput struct { _ struct{} `type:"structure"` // The access token for the forgotten device request. AccessToken *string `type:"string"` // The device key. // // DeviceKey is a required field DeviceKey *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ForgetDeviceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ForgetDeviceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ForgetDeviceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ForgetDeviceInput"} if s.DeviceKey == nil { invalidParams.Add(request.NewErrParamRequired("DeviceKey")) } if s.DeviceKey != nil && len(*s.DeviceKey) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeviceKey", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ForgetDeviceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ForgetDeviceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ForgetDeviceOutput) GoString() string { return s.String() } // Represents the request to reset a user's password. type ForgotPasswordInput struct { _ struct{} `type:"structure"` // The ID of the client associated with the user pool. // // ClientId is a required field ClientId *string `min:"1" type:"string" required:"true"` // A keyed-hash message authentication code (HMAC) calculated using the secret // key of a user pool client and username plus the client ID in the message. SecretHash *string `min:"1" type:"string"` // The user name of the user for whom you want to enter a code to retrieve a // forgotten password. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ForgotPasswordInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ForgotPasswordInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ForgotPasswordInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ForgotPasswordInput"} if s.ClientId == nil { invalidParams.Add(request.NewErrParamRequired("ClientId")) } if s.ClientId != nil && len(*s.ClientId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientId", 1)) } if s.SecretHash != nil && len(*s.SecretHash) < 1 { invalidParams.Add(request.NewErrParamMinLen("SecretHash", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Respresents the response from the server regarding the request to reset a // password. type ForgotPasswordOutput struct { _ struct{} `type:"structure"` // The type of code delivery details being returned from the server. CodeDeliveryDetails *CodeDeliveryDetailsType `type:"structure"` } // String returns the string representation func (s ForgotPasswordOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ForgotPasswordOutput) GoString() string { return s.String() } // Represents the request to get the header information for the .csv file for // the user import job. type GetCSVHeaderInput struct { _ struct{} `type:"structure"` // The user pool ID for the user pool that the users are to be imported into. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetCSVHeaderInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCSVHeaderInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetCSVHeaderInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetCSVHeaderInput"} if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server to the request to get the header // information for the .csv file for the user import job. type GetCSVHeaderOutput struct { _ struct{} `type:"structure"` // The header information for the .csv file for the user import job. CSVHeader []*string `type:"list"` // The user pool ID for the user pool that the users are to be imported into. UserPoolId *string `min:"1" type:"string"` } // String returns the string representation func (s GetCSVHeaderOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCSVHeaderOutput) GoString() string { return s.String() } // Represents the request to get the device. type GetDeviceInput struct { _ struct{} `type:"structure"` // The access token. AccessToken *string `type:"string"` // The device key. // // DeviceKey is a required field DeviceKey *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetDeviceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDeviceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDeviceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDeviceInput"} if s.DeviceKey == nil { invalidParams.Add(request.NewErrParamRequired("DeviceKey")) } if s.DeviceKey != nil && len(*s.DeviceKey) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeviceKey", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Gets the device response. type GetDeviceOutput struct { _ struct{} `type:"structure"` // The device. // // Device is a required field Device *DeviceType `type:"structure" required:"true"` } // String returns the string representation func (s GetDeviceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDeviceOutput) GoString() string { return s.String() } // Represents the request to get user attribute verification. type GetUserAttributeVerificationCodeInput struct { _ struct{} `type:"structure"` // The access token returned by the server response to get the user attribute // verification code. AccessToken *string `type:"string"` // The attribute name returned by the server response to get the user attribute // verification code. // // AttributeName is a required field AttributeName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetUserAttributeVerificationCodeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetUserAttributeVerificationCodeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetUserAttributeVerificationCodeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetUserAttributeVerificationCodeInput"} if s.AttributeName == nil { invalidParams.Add(request.NewErrParamRequired("AttributeName")) } if s.AttributeName != nil && len(*s.AttributeName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AttributeName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The verification code response returned by the server response to get the // user attribute verification code. type GetUserAttributeVerificationCodeOutput struct { _ struct{} `type:"structure"` // The code delivery details returned by the server response to get the user // attribute verification code. CodeDeliveryDetails *CodeDeliveryDetailsType `type:"structure"` } // String returns the string representation func (s GetUserAttributeVerificationCodeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetUserAttributeVerificationCodeOutput) GoString() string { return s.String() } // Represents the request to get information about the user. type GetUserInput struct { _ struct{} `type:"structure"` // The access token returned by the server response to get information about // the user. AccessToken *string `type:"string"` } // String returns the string representation func (s GetUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetUserInput) GoString() string { return s.String() } // Represents the response from the server from the request to get information // about the user. type GetUserOutput struct { _ struct{} `type:"structure"` // Specifies the options for MFA (e.g., email or phone number). MFAOptions []*MFAOptionType `type:"list"` // An array of name-value pairs representing user attributes. // // UserAttributes is a required field UserAttributes []*AttributeType `type:"list" required:"true"` // The user name of the user you wish to retrieve from the get user request. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetUserOutput) GoString() string { return s.String() } // Represents the request to sign out all devices. type GlobalSignOutInput struct { _ struct{} `type:"structure"` // The access token. AccessToken *string `type:"string"` } // String returns the string representation func (s GlobalSignOutInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GlobalSignOutInput) GoString() string { return s.String() } // The response to the request to sign out all devices. type GlobalSignOutOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GlobalSignOutOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GlobalSignOutOutput) GoString() string { return s.String() } // Initiates the authentication request. type InitiateAuthInput struct { _ struct{} `type:"structure"` // The authentication flow. // // AuthFlow is a required field AuthFlow *string `type:"string" required:"true" enum:"AuthFlowType"` // The authentication parameters. AuthParameters map[string]*string `type:"map"` // The client ID. // // ClientId is a required field ClientId *string `min:"1" type:"string" required:"true"` // The client app's metadata. ClientMetadata map[string]*string `type:"map"` } // String returns the string representation func (s InitiateAuthInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InitiateAuthInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InitiateAuthInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InitiateAuthInput"} if s.AuthFlow == nil { invalidParams.Add(request.NewErrParamRequired("AuthFlow")) } if s.ClientId == nil { invalidParams.Add(request.NewErrParamRequired("ClientId")) } if s.ClientId != nil && len(*s.ClientId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Initiates the authentication response. type InitiateAuthOutput struct { _ struct{} `type:"structure"` // The result type of the authentication result. AuthenticationResult *AuthenticationResultType `type:"structure"` // The name of the challenge. ChallengeName *string `type:"string" enum:"ChallengeNameType"` // The challenge parameters. ChallengeParameters map[string]*string `type:"map"` // The session. Session *string `min:"20" type:"string"` } // String returns the string representation func (s InitiateAuthOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InitiateAuthOutput) GoString() string { return s.String() } // Specifies the type of configuration for AWS Lambda triggers. type LambdaConfigType struct { _ struct{} `type:"structure"` // Creates an authentication challenge. CreateAuthChallenge *string `min:"20" type:"string"` // A custom Message AWS Lambda trigger. CustomMessage *string `min:"20" type:"string"` // Defines the authentication challenge. DefineAuthChallenge *string `min:"20" type:"string"` // A post-authentication AWS Lambda trigger. PostAuthentication *string `min:"20" type:"string"` // A post-confirmation AWS Lambda trigger. PostConfirmation *string `min:"20" type:"string"` // A pre-authentication AWS Lambda trigger. PreAuthentication *string `min:"20" type:"string"` // A pre-registration AWS Lambda trigger. PreSignUp *string `min:"20" type:"string"` // Verifies the authentication challenge response. VerifyAuthChallengeResponse *string `min:"20" type:"string"` } // String returns the string representation func (s LambdaConfigType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LambdaConfigType) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LambdaConfigType) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LambdaConfigType"} if s.CreateAuthChallenge != nil && len(*s.CreateAuthChallenge) < 20 { invalidParams.Add(request.NewErrParamMinLen("CreateAuthChallenge", 20)) } if s.CustomMessage != nil && len(*s.CustomMessage) < 20 { invalidParams.Add(request.NewErrParamMinLen("CustomMessage", 20)) } if s.DefineAuthChallenge != nil && len(*s.DefineAuthChallenge) < 20 { invalidParams.Add(request.NewErrParamMinLen("DefineAuthChallenge", 20)) } if s.PostAuthentication != nil && len(*s.PostAuthentication) < 20 { invalidParams.Add(request.NewErrParamMinLen("PostAuthentication", 20)) } if s.PostConfirmation != nil && len(*s.PostConfirmation) < 20 { invalidParams.Add(request.NewErrParamMinLen("PostConfirmation", 20)) } if s.PreAuthentication != nil && len(*s.PreAuthentication) < 20 { invalidParams.Add(request.NewErrParamMinLen("PreAuthentication", 20)) } if s.PreSignUp != nil && len(*s.PreSignUp) < 20 { invalidParams.Add(request.NewErrParamMinLen("PreSignUp", 20)) } if s.VerifyAuthChallengeResponse != nil && len(*s.VerifyAuthChallengeResponse) < 20 { invalidParams.Add(request.NewErrParamMinLen("VerifyAuthChallengeResponse", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the request to list the devices. type ListDevicesInput struct { _ struct{} `type:"structure"` // The access tokens for the request to list devices. // // AccessToken is a required field AccessToken *string `type:"string" required:"true"` // The limit of the device request. Limit *int64 `type:"integer"` // The pagination token for the list request. PaginationToken *string `min:"1" type:"string"` } // String returns the string representation func (s ListDevicesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDevicesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListDevicesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListDevicesInput"} if s.AccessToken == nil { invalidParams.Add(request.NewErrParamRequired("AccessToken")) } if s.PaginationToken != nil && len(*s.PaginationToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("PaginationToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response to list devices. type ListDevicesOutput struct { _ struct{} `type:"structure"` // The devices returned in the list devices response. Devices []*DeviceType `type:"list"` // The pagination token for the list device response. PaginationToken *string `min:"1" type:"string"` } // String returns the string representation func (s ListDevicesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDevicesOutput) GoString() string { return s.String() } // Represents the request to list the user import jobs. type ListUserImportJobsInput struct { _ struct{} `type:"structure"` // The maximum number of import jobs you want the request to return. // // MaxResults is a required field MaxResults *int64 `min:"1" type:"integer" required:"true"` // An identifier that was returned from the previous call to ListUserImportJobs, // which can be used to return the next set of import jobs in the list. PaginationToken *string `min:"1" type:"string"` // The user pool ID for the user pool that the users are being imported into. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListUserImportJobsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListUserImportJobsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListUserImportJobsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListUserImportJobsInput"} if s.MaxResults == nil { invalidParams.Add(request.NewErrParamRequired("MaxResults")) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.PaginationToken != nil && len(*s.PaginationToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("PaginationToken", 1)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server to the request to list the user import // jobs. type ListUserImportJobsOutput struct { _ struct{} `type:"structure"` // An identifier that can be used to return the next set of user import jobs // in the list. PaginationToken *string `min:"1" type:"string"` // The user import jobs. UserImportJobs []*UserImportJobType `min:"1" type:"list"` } // String returns the string representation func (s ListUserImportJobsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListUserImportJobsOutput) GoString() string { return s.String() } // Represents the request to list the user pool clients. type ListUserPoolClientsInput struct { _ struct{} `type:"structure"` // The maximum number of results you want the request to return when listing // the user pool clients. MaxResults *int64 `min:"1" type:"integer"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `min:"1" type:"string"` // The user pool ID for the user pool where you want to list user pool clients. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListUserPoolClientsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListUserPoolClientsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListUserPoolClientsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListUserPoolClientsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server that lists user pool clients. type ListUserPoolClientsOutput struct { _ struct{} `type:"structure"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `min:"1" type:"string"` // The user pool clients in the response that lists user pool clients. UserPoolClients []*UserPoolClientDescription `type:"list"` } // String returns the string representation func (s ListUserPoolClientsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListUserPoolClientsOutput) GoString() string { return s.String() } // Represents the request to list user pools. type ListUserPoolsInput struct { _ struct{} `type:"structure"` // The maximum number of results you want the request to return when listing // the user pools. // // MaxResults is a required field MaxResults *int64 `min:"1" type:"integer" required:"true"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s ListUserPoolsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListUserPoolsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListUserPoolsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListUserPoolsInput"} if s.MaxResults == nil { invalidParams.Add(request.NewErrParamRequired("MaxResults")) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response to list user pools. type ListUserPoolsOutput struct { _ struct{} `type:"structure"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `min:"1" type:"string"` // The user pools from the response to list users. UserPools []*UserPoolDescriptionType `type:"list"` } // String returns the string representation func (s ListUserPoolsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListUserPoolsOutput) GoString() string { return s.String() } // Represents the request to list users. type ListUsersInput struct { _ struct{} `type:"structure"` // The attributes to get from the request to list users. AttributesToGet []*string `type:"list"` // The filter for the list users request. Filter *string `type:"string"` // The limit of the request to list users. Limit *int64 `type:"integer"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. PaginationToken *string `min:"1" type:"string"` // The user pool ID for which you want to list users. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListUsersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListUsersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListUsersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListUsersInput"} if s.PaginationToken != nil && len(*s.PaginationToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("PaginationToken", 1)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response from the request to list users. type ListUsersOutput struct { _ struct{} `type:"structure"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. PaginationToken *string `min:"1" type:"string"` // The users returned in the request to list users. Users []*UserType `type:"list"` } // String returns the string representation func (s ListUsersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListUsersOutput) GoString() string { return s.String() } // Specifies the different settings for multi-factor authentication (MFA). type MFAOptionType struct { _ struct{} `type:"structure"` // The attribute name of the MFA option type. AttributeName *string `min:"1" type:"string"` // The delivery medium (email message or SMS message) to send the MFA code. DeliveryMedium *string `type:"string" enum:"DeliveryMediumType"` } // String returns the string representation func (s MFAOptionType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MFAOptionType) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MFAOptionType) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MFAOptionType"} if s.AttributeName != nil && len(*s.AttributeName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AttributeName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The message template structure. type MessageTemplateType struct { _ struct{} `type:"structure"` // The message template for email messages. EmailMessage *string `min:"6" type:"string"` // The subject line for email messages. EmailSubject *string `min:"1" type:"string"` // The message template for SMS messages. SMSMessage *string `min:"6" type:"string"` } // String returns the string representation func (s MessageTemplateType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MessageTemplateType) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MessageTemplateType) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MessageTemplateType"} if s.EmailMessage != nil && len(*s.EmailMessage) < 6 { invalidParams.Add(request.NewErrParamMinLen("EmailMessage", 6)) } if s.EmailSubject != nil && len(*s.EmailSubject) < 1 { invalidParams.Add(request.NewErrParamMinLen("EmailSubject", 1)) } if s.SMSMessage != nil && len(*s.SMSMessage) < 6 { invalidParams.Add(request.NewErrParamMinLen("SMSMessage", 6)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The new device metadata type. type NewDeviceMetadataType struct { _ struct{} `type:"structure"` // The device group key. DeviceGroupKey *string `type:"string"` // The device key. DeviceKey *string `min:"1" type:"string"` } // String returns the string representation func (s NewDeviceMetadataType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NewDeviceMetadataType) GoString() string { return s.String() } // The minimum and maximum value of an attribute that is of the number data // type. type NumberAttributeConstraintsType struct { _ struct{} `type:"structure"` // The maximum value of an attribute that is of the number data type. MaxValue *string `type:"string"` // The minimum value of an attribute that is of the number data type. MinValue *string `type:"string"` } // String returns the string representation func (s NumberAttributeConstraintsType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NumberAttributeConstraintsType) GoString() string { return s.String() } // The password policy type. type PasswordPolicyType struct { _ struct{} `type:"structure"` // The minimum length of the password policy that you have set. Cannot be less // than 6. MinimumLength *int64 `min:"6" type:"integer"` // In the password policy that you have set, refers to whether you have required // users to use at least one lowercase letter in their password. RequireLowercase *bool `type:"boolean"` // In the password policy that you have set, refers to whether you have required // users to use at least one number in their password. RequireNumbers *bool `type:"boolean"` // In the password policy that you have set, refers to whether you have required // users to use at least one symbol in their password. RequireSymbols *bool `type:"boolean"` // In the password policy that you have set, refers to whether you have required // users to use at least one uppercase letter in their password. RequireUppercase *bool `type:"boolean"` } // String returns the string representation func (s PasswordPolicyType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PasswordPolicyType) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PasswordPolicyType) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PasswordPolicyType"} if s.MinimumLength != nil && *s.MinimumLength < 6 { invalidParams.Add(request.NewErrParamMinValue("MinimumLength", 6)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the request to resend the confirmation code. type ResendConfirmationCodeInput struct { _ struct{} `type:"structure"` // The ID of the client associated with the user pool. // // ClientId is a required field ClientId *string `min:"1" type:"string" required:"true"` // A keyed-hash message authentication code (HMAC) calculated using the secret // key of a user pool client and username plus the client ID in the message. SecretHash *string `min:"1" type:"string"` // The user name of the user to whom you wish to resend a confirmation code. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ResendConfirmationCodeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResendConfirmationCodeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ResendConfirmationCodeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ResendConfirmationCodeInput"} if s.ClientId == nil { invalidParams.Add(request.NewErrParamRequired("ClientId")) } if s.ClientId != nil && len(*s.ClientId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientId", 1)) } if s.SecretHash != nil && len(*s.SecretHash) < 1 { invalidParams.Add(request.NewErrParamMinLen("SecretHash", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response from the server when the Amazon Cognito service makes the request // to resend a confirmation code. type ResendConfirmationCodeOutput struct { _ struct{} `type:"structure"` // The type of code delivery details being returned from the server. CodeDeliveryDetails *CodeDeliveryDetailsType `type:"structure"` } // String returns the string representation func (s ResendConfirmationCodeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResendConfirmationCodeOutput) GoString() string { return s.String() } // The request to respond to an authentication challenge. type RespondToAuthChallengeInput struct { _ struct{} `type:"structure"` // The name of the challenge. // // ChallengeName is a required field ChallengeName *string `type:"string" required:"true" enum:"ChallengeNameType"` // The responses to the authentication challenge. ChallengeResponses map[string]*string `type:"map"` // The client ID. // // ClientId is a required field ClientId *string `min:"1" type:"string" required:"true"` // The session. Session *string `min:"20" type:"string"` } // String returns the string representation func (s RespondToAuthChallengeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RespondToAuthChallengeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RespondToAuthChallengeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RespondToAuthChallengeInput"} if s.ChallengeName == nil { invalidParams.Add(request.NewErrParamRequired("ChallengeName")) } if s.ClientId == nil { invalidParams.Add(request.NewErrParamRequired("ClientId")) } if s.ClientId != nil && len(*s.ClientId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientId", 1)) } if s.Session != nil && len(*s.Session) < 20 { invalidParams.Add(request.NewErrParamMinLen("Session", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response to respond to the authentication challenge. type RespondToAuthChallengeOutput struct { _ struct{} `type:"structure"` // The result type of the authentication result. AuthenticationResult *AuthenticationResultType `type:"structure"` // The challenge name. ChallengeName *string `type:"string" enum:"ChallengeNameType"` // The challenge parameters. ChallengeParameters map[string]*string `type:"map"` // The session. Session *string `min:"20" type:"string"` } // String returns the string representation func (s RespondToAuthChallengeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RespondToAuthChallengeOutput) GoString() string { return s.String() } // Contains information about the schema attribute. type SchemaAttributeType struct { _ struct{} `type:"structure"` // The attribute data type. AttributeDataType *string `type:"string" enum:"AttributeDataType"` // Specifies whether the attribute type is developer only. DeveloperOnlyAttribute *bool `type:"boolean"` // Specifies whether the attribute can be changed once it has been created. Mutable *bool `type:"boolean"` // A schema attribute of the name type. Name *string `min:"1" type:"string"` // Specifies the constraints for an attribute of the number type. NumberAttributeConstraints *NumberAttributeConstraintsType `type:"structure"` // Specifies whether a user pool attribute is required. If the attribute is // required and the user does not provide a value, registration or sign-in will // fail. Required *bool `type:"boolean"` // Specifies the constraints for an attribute of the string type. StringAttributeConstraints *StringAttributeConstraintsType `type:"structure"` } // String returns the string representation func (s SchemaAttributeType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SchemaAttributeType) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SchemaAttributeType) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SchemaAttributeType"} if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the request to set user settings. type SetUserSettingsInput struct { _ struct{} `type:"structure"` // The access token for the set user settings request. // // AccessToken is a required field AccessToken *string `type:"string" required:"true"` // Specifies the options for MFA (e.g., email or phone number). // // MFAOptions is a required field MFAOptions []*MFAOptionType `type:"list" required:"true"` } // String returns the string representation func (s SetUserSettingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetUserSettingsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetUserSettingsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetUserSettingsInput"} if s.AccessToken == nil { invalidParams.Add(request.NewErrParamRequired("AccessToken")) } if s.MFAOptions == nil { invalidParams.Add(request.NewErrParamRequired("MFAOptions")) } if s.MFAOptions != nil { for i, v := range s.MFAOptions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MFAOptions", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response from the server for a set user settings request. type SetUserSettingsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetUserSettingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetUserSettingsOutput) GoString() string { return s.String() } // Represents the request to register a user. type SignUpInput struct { _ struct{} `type:"structure"` // The ID of the client associated with the user pool. // // ClientId is a required field ClientId *string `min:"1" type:"string" required:"true"` // The password of the user you wish to register. // // Password is a required field Password *string `min:"6" type:"string" required:"true"` // A keyed-hash message authentication code (HMAC) calculated using the secret // key of a user pool client and username plus the client ID in the message. SecretHash *string `min:"1" type:"string"` // An array of name-value pairs representing user attributes. UserAttributes []*AttributeType `type:"list"` // The user name of the user you wish to register. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` // The validation data in the request to register a user. ValidationData []*AttributeType `type:"list"` } // String returns the string representation func (s SignUpInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SignUpInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SignUpInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SignUpInput"} if s.ClientId == nil { invalidParams.Add(request.NewErrParamRequired("ClientId")) } if s.ClientId != nil && len(*s.ClientId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientId", 1)) } if s.Password == nil { invalidParams.Add(request.NewErrParamRequired("Password")) } if s.Password != nil && len(*s.Password) < 6 { invalidParams.Add(request.NewErrParamMinLen("Password", 6)) } if s.SecretHash != nil && len(*s.SecretHash) < 1 { invalidParams.Add(request.NewErrParamMinLen("SecretHash", 1)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if s.UserAttributes != nil { for i, v := range s.UserAttributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UserAttributes", i), err.(request.ErrInvalidParams)) } } } if s.ValidationData != nil { for i, v := range s.ValidationData { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ValidationData", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response from the server for a registration request. type SignUpOutput struct { _ struct{} `type:"structure"` // The type of code delivery details being returned from the server. CodeDeliveryDetails *CodeDeliveryDetailsType `type:"structure"` // A response from the server indicating that a user registration has been confirmed. UserConfirmed *bool `type:"boolean"` } // String returns the string representation func (s SignUpOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SignUpOutput) GoString() string { return s.String() } // The SMS configuratoin type. type SmsConfigurationType struct { _ struct{} `type:"structure"` // The external ID. ExternalId *string `type:"string"` // The Amazon Resource Name (ARN) of the Amazon Simple Notification Service // (SNS) caller. SnsCallerArn *string `min:"20" type:"string"` } // String returns the string representation func (s SmsConfigurationType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SmsConfigurationType) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SmsConfigurationType) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SmsConfigurationType"} if s.SnsCallerArn != nil && len(*s.SnsCallerArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("SnsCallerArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the request to start the user import job. type StartUserImportJobInput struct { _ struct{} `type:"structure"` // The job ID for the user import job. // // JobId is a required field JobId *string `min:"1" type:"string" required:"true"` // The user pool ID for the user pool that the users are being imported into. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s StartUserImportJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartUserImportJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartUserImportJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartUserImportJobInput"} if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.JobId != nil && len(*s.JobId) < 1 { invalidParams.Add(request.NewErrParamMinLen("JobId", 1)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server to the request to start the user // import job. type StartUserImportJobOutput struct { _ struct{} `type:"structure"` // The job object that represents the user import job. UserImportJob *UserImportJobType `type:"structure"` } // String returns the string representation func (s StartUserImportJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartUserImportJobOutput) GoString() string { return s.String() } // Represents the request to stop the user import job. type StopUserImportJobInput struct { _ struct{} `type:"structure"` // The job ID for the user import job. // // JobId is a required field JobId *string `min:"1" type:"string" required:"true"` // The user pool ID for the user pool that the users are being imported into. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s StopUserImportJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopUserImportJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StopUserImportJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StopUserImportJobInput"} if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.JobId != nil && len(*s.JobId) < 1 { invalidParams.Add(request.NewErrParamMinLen("JobId", 1)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server to the request to stop the user import // job. type StopUserImportJobOutput struct { _ struct{} `type:"structure"` // The job object that represents the user import job. UserImportJob *UserImportJobType `type:"structure"` } // String returns the string representation func (s StopUserImportJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopUserImportJobOutput) GoString() string { return s.String() } // The type of constraints associated with an attribute of the string type. type StringAttributeConstraintsType struct { _ struct{} `type:"structure"` // The maximum length of an attribute value of the string type. MaxLength *string `type:"string"` // The minimum length of an attribute value of the string type. MinLength *string `type:"string"` } // String returns the string representation func (s StringAttributeConstraintsType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StringAttributeConstraintsType) GoString() string { return s.String() } // Represents the request to update the device status. type UpdateDeviceStatusInput struct { _ struct{} `type:"structure"` // The access token. // // AccessToken is a required field AccessToken *string `type:"string" required:"true"` // The device key. // // DeviceKey is a required field DeviceKey *string `min:"1" type:"string" required:"true"` // The status of whether a device is remembered. DeviceRememberedStatus *string `type:"string" enum:"DeviceRememberedStatusType"` } // String returns the string representation func (s UpdateDeviceStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDeviceStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateDeviceStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateDeviceStatusInput"} if s.AccessToken == nil { invalidParams.Add(request.NewErrParamRequired("AccessToken")) } if s.DeviceKey == nil { invalidParams.Add(request.NewErrParamRequired("DeviceKey")) } if s.DeviceKey != nil && len(*s.DeviceKey) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeviceKey", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response to the request to update the device status. type UpdateDeviceStatusOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateDeviceStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDeviceStatusOutput) GoString() string { return s.String() } // Represents the request to update user attributes. type UpdateUserAttributesInput struct { _ struct{} `type:"structure"` // The access token for the request to update user attributes. AccessToken *string `type:"string"` // An array of name-value pairs representing user attributes. // // UserAttributes is a required field UserAttributes []*AttributeType `type:"list" required:"true"` } // String returns the string representation func (s UpdateUserAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateUserAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateUserAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateUserAttributesInput"} if s.UserAttributes == nil { invalidParams.Add(request.NewErrParamRequired("UserAttributes")) } if s.UserAttributes != nil { for i, v := range s.UserAttributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UserAttributes", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server for the request to update user attributes. type UpdateUserAttributesOutput struct { _ struct{} `type:"structure"` // The code delivery details list from the server for the request to update // user attributes. CodeDeliveryDetailsList []*CodeDeliveryDetailsType `type:"list"` } // String returns the string representation func (s UpdateUserAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateUserAttributesOutput) GoString() string { return s.String() } // Represents the request to update the user pool client. type UpdateUserPoolClientInput struct { _ struct{} `type:"structure"` // The ID of the client associated with the user pool. // // ClientId is a required field ClientId *string `min:"1" type:"string" required:"true"` // The client name from the update user pool client request. ClientName *string `min:"1" type:"string"` // Explicit authentication flows. ExplicitAuthFlows []*string `type:"list"` // The read-only attributes of the user pool. ReadAttributes []*string `type:"list"` // The validity of the refresh token. RefreshTokenValidity *int64 `type:"integer"` // The user pool ID for the user pool where you want to update the user pool // client. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` // The writeable attributes of the user pool. WriteAttributes []*string `type:"list"` } // String returns the string representation func (s UpdateUserPoolClientInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateUserPoolClientInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateUserPoolClientInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateUserPoolClientInput"} if s.ClientId == nil { invalidParams.Add(request.NewErrParamRequired("ClientId")) } if s.ClientId != nil && len(*s.ClientId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientId", 1)) } if s.ClientName != nil && len(*s.ClientName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientName", 1)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server to the request to update the user // pool client. type UpdateUserPoolClientOutput struct { _ struct{} `type:"structure"` // The user pool client value from the response from the server when an update // user pool client request is made. UserPoolClient *UserPoolClientType `type:"structure"` } // String returns the string representation func (s UpdateUserPoolClientOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateUserPoolClientOutput) GoString() string { return s.String() } // Represents the request to update the user pool. type UpdateUserPoolInput struct { _ struct{} `type:"structure"` // The configuration for AdminCreateUser requests. AdminCreateUserConfig *AdminCreateUserConfigType `type:"structure"` // The attributes that are automatically verified when the Amazon Cognito service // makes a request to update user pools. AutoVerifiedAttributes []*string `type:"list"` // Device configuration. DeviceConfiguration *DeviceConfigurationType `type:"structure"` // Email configuration. EmailConfiguration *EmailConfigurationType `type:"structure"` // The contents of the email verification message. EmailVerificationMessage *string `min:"6" type:"string"` // The subject of the email verfication message. EmailVerificationSubject *string `min:"1" type:"string"` // The AWS Lambda configuration information from the request to update the user // pool. LambdaConfig *LambdaConfigType `type:"structure"` // Can be one of the following values: // // * OFF - MFA tokens are not required and cannot be specified during user // registration. // // * ON - MFA tokens are required for all user registrations. You can only // specify required when you are initially creating a user pool. // // * OPTIONAL - Users have the option when registering to create an MFA token. MfaConfiguration *string `type:"string" enum:"UserPoolMfaType"` // A container with the policies you wish to update in a user pool. Policies *UserPoolPolicyType `type:"structure"` // The contents of the SMS authentication message. SmsAuthenticationMessage *string `min:"6" type:"string"` // SMS configuration. SmsConfiguration *SmsConfigurationType `type:"structure"` // A container with information about the SMS verification message. SmsVerificationMessage *string `min:"6" type:"string"` // The user pool ID for the user pool you want to update. // // UserPoolId is a required field UserPoolId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateUserPoolInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateUserPoolInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateUserPoolInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateUserPoolInput"} if s.EmailVerificationMessage != nil && len(*s.EmailVerificationMessage) < 6 { invalidParams.Add(request.NewErrParamMinLen("EmailVerificationMessage", 6)) } if s.EmailVerificationSubject != nil && len(*s.EmailVerificationSubject) < 1 { invalidParams.Add(request.NewErrParamMinLen("EmailVerificationSubject", 1)) } if s.SmsAuthenticationMessage != nil && len(*s.SmsAuthenticationMessage) < 6 { invalidParams.Add(request.NewErrParamMinLen("SmsAuthenticationMessage", 6)) } if s.SmsVerificationMessage != nil && len(*s.SmsVerificationMessage) < 6 { invalidParams.Add(request.NewErrParamMinLen("SmsVerificationMessage", 6)) } if s.UserPoolId == nil { invalidParams.Add(request.NewErrParamRequired("UserPoolId")) } if s.UserPoolId != nil && len(*s.UserPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserPoolId", 1)) } if s.AdminCreateUserConfig != nil { if err := s.AdminCreateUserConfig.Validate(); err != nil { invalidParams.AddNested("AdminCreateUserConfig", err.(request.ErrInvalidParams)) } } if s.EmailConfiguration != nil { if err := s.EmailConfiguration.Validate(); err != nil { invalidParams.AddNested("EmailConfiguration", err.(request.ErrInvalidParams)) } } if s.LambdaConfig != nil { if err := s.LambdaConfig.Validate(); err != nil { invalidParams.AddNested("LambdaConfig", err.(request.ErrInvalidParams)) } } if s.Policies != nil { if err := s.Policies.Validate(); err != nil { invalidParams.AddNested("Policies", err.(request.ErrInvalidParams)) } } if s.SmsConfiguration != nil { if err := s.SmsConfiguration.Validate(); err != nil { invalidParams.AddNested("SmsConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server when you make a request to update // the user pool. type UpdateUserPoolOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateUserPoolOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateUserPoolOutput) GoString() string { return s.String() } // The user import job type. type UserImportJobType struct { _ struct{} `type:"structure"` // The role ARN for the Amazon CloudWatch Logging role for the user import job. // For more information, see "Creating the CloudWatch Logs IAM Role" in the // Amazon Cognito Developer Guide. CloudWatchLogsRoleArn *string `min:"20" type:"string"` // The date when the user imoprt job was completed. CompletionDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The message returned when the user import job is completed. CompletionMessage *string `min:"1" type:"string"` // The date when the user import job was created. CreationDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The number of users that could not be imported. FailedUsers *int64 `type:"long"` // The number of users that were successfully imported. ImportedUsers *int64 `type:"long"` // The job ID for the user import job. JobId *string `min:"1" type:"string"` // The job name for the user import job. JobName *string `min:"1" type:"string"` // The pre-signed URL to be used to upload the .csv file. PreSignedUrl *string `type:"string"` // The number of users that were skipped. SkippedUsers *int64 `type:"long"` // The date when the user import job was started. StartDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The status of the user import job. One of the following: // // * Created - The job was created but not started. // // * Pending - A transition state. You have started the job, but it has not // begun importing users yet. // // * InProgress - The job has started, and users are being imported. // // * Stopping - You have stopped the job, but the job has not stopped importing // users yet. // // * Stopped - You have stopped the job, and the job has stopped importing // users. // // * Succeeded - The job has completed successfully. // // * Failed - The job has stopped due to an error. // // * Expired - You created a job, but did not start the job within 24-48 // hours. All data associated with the job was deleted, and the job cannot // be started. Status *string `type:"string" enum:"UserImportJobStatusType"` // The user pool ID for the user pool that the users are being imported into. UserPoolId *string `min:"1" type:"string"` } // String returns the string representation func (s UserImportJobType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UserImportJobType) GoString() string { return s.String() } // The description of the user poool client. type UserPoolClientDescription struct { _ struct{} `type:"structure"` // The ID of the client associated with the user pool. ClientId *string `min:"1" type:"string"` // The client name from the user pool client description. ClientName *string `min:"1" type:"string"` // The user pool ID for the user pool where you want to describe the user pool // client. UserPoolId *string `min:"1" type:"string"` } // String returns the string representation func (s UserPoolClientDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UserPoolClientDescription) GoString() string { return s.String() } // A user pool of the client type. type UserPoolClientType struct { _ struct{} `type:"structure"` // The ID of the client associated with the user pool. ClientId *string `min:"1" type:"string"` // The client name from the user pool request of the client type. ClientName *string `min:"1" type:"string"` // The client secret from the user pool request of the client type. ClientSecret *string `min:"1" type:"string"` // The creation date from the user pool request of the client type. CreationDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The explicit authentication flows. ExplicitAuthFlows []*string `type:"list"` // The last modified date from the user pool request of the client type. LastModifiedDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The Read-only attributes. ReadAttributes []*string `type:"list"` // The validity of the refresh token. RefreshTokenValidity *int64 `type:"integer"` // The user pool ID for the user pool client. UserPoolId *string `min:"1" type:"string"` // The writeable attributes. WriteAttributes []*string `type:"list"` } // String returns the string representation func (s UserPoolClientType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UserPoolClientType) GoString() string { return s.String() } // A user pool description. type UserPoolDescriptionType struct { _ struct{} `type:"structure"` // The creation date in a user pool description. CreationDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The ID in a user pool description. Id *string `min:"1" type:"string"` // The AWS Lambda configuration information in a user pool description. LambdaConfig *LambdaConfigType `type:"structure"` // The last modified date in a user pool description. LastModifiedDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The name in a user pool description. Name *string `min:"1" type:"string"` // The user pool status in a user pool description. Status *string `type:"string" enum:"StatusType"` } // String returns the string representation func (s UserPoolDescriptionType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UserPoolDescriptionType) GoString() string { return s.String() } // The type of policy in a user pool. type UserPoolPolicyType struct { _ struct{} `type:"structure"` // A container with information about the user pool password policy. PasswordPolicy *PasswordPolicyType `type:"structure"` } // String returns the string representation func (s UserPoolPolicyType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UserPoolPolicyType) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UserPoolPolicyType) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UserPoolPolicyType"} if s.PasswordPolicy != nil { if err := s.PasswordPolicy.Validate(); err != nil { invalidParams.AddNested("PasswordPolicy", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A container with information about the user pool type. type UserPoolType struct { _ struct{} `type:"structure"` // The configuration for AdminCreateUser requests. AdminCreateUserConfig *AdminCreateUserConfigType `type:"structure"` // Specifies the attributes that are aliased in a user pool. AliasAttributes []*string `type:"list"` // Specifies the attributes that are auto-verified in a user pool. AutoVerifiedAttributes []*string `type:"list"` // The creation date of a user pool. CreationDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The device configuration. DeviceConfiguration *DeviceConfigurationType `type:"structure"` // The email configuration. EmailConfiguration *EmailConfigurationType `type:"structure"` // The reason why the email configuration cannot send the messages to your users. EmailConfigurationFailure *string `type:"string"` // The contents of the email verification message. EmailVerificationMessage *string `min:"6" type:"string"` // The subject of the email verification message. EmailVerificationSubject *string `min:"1" type:"string"` // A number estimating the size of the user pool. EstimatedNumberOfUsers *int64 `type:"integer"` // The ID of the user pool. Id *string `min:"1" type:"string"` // A container describing the AWS Lambda triggers associated with a user pool. LambdaConfig *LambdaConfigType `type:"structure"` // The last modified date of a user pool. LastModifiedDate *time.Time `type:"timestamp" timestampFormat:"unix"` // Can be one of the following values: // // * OFF - MFA tokens are not required and cannot be specified during user // registration. // // * ON - MFA tokens are required for all user registrations. You can only // specify required when you are initially creating a user pool. // // * OPTIONAL - Users have the option when registering to create an MFA token. MfaConfiguration *string `type:"string" enum:"UserPoolMfaType"` // The name of the user pool. Name *string `min:"1" type:"string"` // A container describing the policies associated with a user pool. Policies *UserPoolPolicyType `type:"structure"` // A container with the schema attributes of a user pool. SchemaAttributes []*SchemaAttributeType `min:"1" type:"list"` // The contents of the SMS authentication message. SmsAuthenticationMessage *string `min:"6" type:"string"` // The SMS configuration. SmsConfiguration *SmsConfigurationType `type:"structure"` // The reason why the SMS configuration cannot send the message(s) to your users. SmsConfigurationFailure *string `type:"string"` // The contents of the SMS verification message. SmsVerificationMessage *string `min:"6" type:"string"` // The status of a user pool. Status *string `type:"string" enum:"StatusType"` } // String returns the string representation func (s UserPoolType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UserPoolType) GoString() string { return s.String() } // The user type. type UserType struct { _ struct{} `type:"structure"` // A container with information about the user type attributes. Attributes []*AttributeType `type:"list"` // Specifies whether the user is enabled. Enabled *bool `type:"boolean"` // The MFA options for the user. MFAOptions []*MFAOptionType `type:"list"` // The creation date of the user. UserCreateDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The last modified date of the user. UserLastModifiedDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The user status. Can be one of the following: // // * UNCONFIRMED - User has been created but not confirmed. // // * CONFIRMED - User has been confirmed. // // * ARCHIVED - User is no longer active. // // * COMPROMISED - User is disabled due to a potential security threat. // // * UNKNOWN - User status is not known. UserStatus *string `type:"string" enum:"UserStatusType"` // The user name of the user you wish to describe. Username *string `min:"1" type:"string"` } // String returns the string representation func (s UserType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UserType) GoString() string { return s.String() } // Represents the request to verify user attributes. type VerifyUserAttributeInput struct { _ struct{} `type:"structure"` // Represents the access token of the request to verify user attributes. AccessToken *string `type:"string"` // The attribute name in the request to verify user attributes. // // AttributeName is a required field AttributeName *string `min:"1" type:"string" required:"true"` // The verification code in the request to verify user attributes. // // Code is a required field Code *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s VerifyUserAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VerifyUserAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *VerifyUserAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "VerifyUserAttributeInput"} if s.AttributeName == nil { invalidParams.Add(request.NewErrParamRequired("AttributeName")) } if s.AttributeName != nil && len(*s.AttributeName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AttributeName", 1)) } if s.Code == nil { invalidParams.Add(request.NewErrParamRequired("Code")) } if s.Code != nil && len(*s.Code) < 1 { invalidParams.Add(request.NewErrParamMinLen("Code", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A container representing the response from the server from the request to // verify user attributes. type VerifyUserAttributeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s VerifyUserAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VerifyUserAttributeOutput) GoString() string { return s.String() } const ( // AliasAttributeTypePhoneNumber is a AliasAttributeType enum value AliasAttributeTypePhoneNumber = "phone_number" // AliasAttributeTypeEmail is a AliasAttributeType enum value AliasAttributeTypeEmail = "email" // AliasAttributeTypePreferredUsername is a AliasAttributeType enum value AliasAttributeTypePreferredUsername = "preferred_username" ) const ( // AttributeDataTypeString is a AttributeDataType enum value AttributeDataTypeString = "String" // AttributeDataTypeNumber is a AttributeDataType enum value AttributeDataTypeNumber = "Number" // AttributeDataTypeDateTime is a AttributeDataType enum value AttributeDataTypeDateTime = "DateTime" // AttributeDataTypeBoolean is a AttributeDataType enum value AttributeDataTypeBoolean = "Boolean" ) const ( // AuthFlowTypeUserSrpAuth is a AuthFlowType enum value AuthFlowTypeUserSrpAuth = "USER_SRP_AUTH" // AuthFlowTypeRefreshTokenAuth is a AuthFlowType enum value AuthFlowTypeRefreshTokenAuth = "REFRESH_TOKEN_AUTH" // AuthFlowTypeRefreshToken is a AuthFlowType enum value AuthFlowTypeRefreshToken = "REFRESH_TOKEN" // AuthFlowTypeCustomAuth is a AuthFlowType enum value AuthFlowTypeCustomAuth = "CUSTOM_AUTH" // AuthFlowTypeAdminNoSrpAuth is a AuthFlowType enum value AuthFlowTypeAdminNoSrpAuth = "ADMIN_NO_SRP_AUTH" ) const ( // ChallengeNameTypeSmsMfa is a ChallengeNameType enum value ChallengeNameTypeSmsMfa = "SMS_MFA" // ChallengeNameTypePasswordVerifier is a ChallengeNameType enum value ChallengeNameTypePasswordVerifier = "PASSWORD_VERIFIER" // ChallengeNameTypeCustomChallenge is a ChallengeNameType enum value ChallengeNameTypeCustomChallenge = "CUSTOM_CHALLENGE" // ChallengeNameTypeDeviceSrpAuth is a ChallengeNameType enum value ChallengeNameTypeDeviceSrpAuth = "DEVICE_SRP_AUTH" // ChallengeNameTypeDevicePasswordVerifier is a ChallengeNameType enum value ChallengeNameTypeDevicePasswordVerifier = "DEVICE_PASSWORD_VERIFIER" // ChallengeNameTypeAdminNoSrpAuth is a ChallengeNameType enum value ChallengeNameTypeAdminNoSrpAuth = "ADMIN_NO_SRP_AUTH" // ChallengeNameTypeNewPasswordRequired is a ChallengeNameType enum value ChallengeNameTypeNewPasswordRequired = "NEW_PASSWORD_REQUIRED" ) const ( // DeliveryMediumTypeSms is a DeliveryMediumType enum value DeliveryMediumTypeSms = "SMS" // DeliveryMediumTypeEmail is a DeliveryMediumType enum value DeliveryMediumTypeEmail = "EMAIL" ) const ( // DeviceRememberedStatusTypeRemembered is a DeviceRememberedStatusType enum value DeviceRememberedStatusTypeRemembered = "remembered" // DeviceRememberedStatusTypeNotRemembered is a DeviceRememberedStatusType enum value DeviceRememberedStatusTypeNotRemembered = "not_remembered" ) const ( // ExplicitAuthFlowsTypeAdminNoSrpAuth is a ExplicitAuthFlowsType enum value ExplicitAuthFlowsTypeAdminNoSrpAuth = "ADMIN_NO_SRP_AUTH" // ExplicitAuthFlowsTypeCustomAuthFlowOnly is a ExplicitAuthFlowsType enum value ExplicitAuthFlowsTypeCustomAuthFlowOnly = "CUSTOM_AUTH_FLOW_ONLY" ) const ( // MessageActionTypeResend is a MessageActionType enum value MessageActionTypeResend = "RESEND" // MessageActionTypeSuppress is a MessageActionType enum value MessageActionTypeSuppress = "SUPPRESS" ) const ( // StatusTypeEnabled is a StatusType enum value StatusTypeEnabled = "Enabled" // StatusTypeDisabled is a StatusType enum value StatusTypeDisabled = "Disabled" ) const ( // UserImportJobStatusTypeCreated is a UserImportJobStatusType enum value UserImportJobStatusTypeCreated = "Created" // UserImportJobStatusTypePending is a UserImportJobStatusType enum value UserImportJobStatusTypePending = "Pending" // UserImportJobStatusTypeInProgress is a UserImportJobStatusType enum value UserImportJobStatusTypeInProgress = "InProgress" // UserImportJobStatusTypeStopping is a UserImportJobStatusType enum value UserImportJobStatusTypeStopping = "Stopping" // UserImportJobStatusTypeExpired is a UserImportJobStatusType enum value UserImportJobStatusTypeExpired = "Expired" // UserImportJobStatusTypeStopped is a UserImportJobStatusType enum value UserImportJobStatusTypeStopped = "Stopped" // UserImportJobStatusTypeFailed is a UserImportJobStatusType enum value UserImportJobStatusTypeFailed = "Failed" // UserImportJobStatusTypeSucceeded is a UserImportJobStatusType enum value UserImportJobStatusTypeSucceeded = "Succeeded" ) const ( // UserPoolMfaTypeOff is a UserPoolMfaType enum value UserPoolMfaTypeOff = "OFF" // UserPoolMfaTypeOn is a UserPoolMfaType enum value UserPoolMfaTypeOn = "ON" // UserPoolMfaTypeOptional is a UserPoolMfaType enum value UserPoolMfaTypeOptional = "OPTIONAL" ) const ( // UserStatusTypeUnconfirmed is a UserStatusType enum value UserStatusTypeUnconfirmed = "UNCONFIRMED" // UserStatusTypeConfirmed is a UserStatusType enum value UserStatusTypeConfirmed = "CONFIRMED" // UserStatusTypeArchived is a UserStatusType enum value UserStatusTypeArchived = "ARCHIVED" // UserStatusTypeCompromised is a UserStatusType enum value UserStatusTypeCompromised = "COMPROMISED" // UserStatusTypeUnknown is a UserStatusType enum value UserStatusTypeUnknown = "UNKNOWN" // UserStatusTypeResetRequired is a UserStatusType enum value UserStatusTypeResetRequired = "RESET_REQUIRED" // UserStatusTypeForceChangePassword is a UserStatusType enum value UserStatusTypeForceChangePassword = "FORCE_CHANGE_PASSWORD" ) const ( // VerifiedAttributeTypePhoneNumber is a VerifiedAttributeType enum value VerifiedAttributeTypePhoneNumber = "phone_number" // VerifiedAttributeTypeEmail is a VerifiedAttributeType enum value VerifiedAttributeTypeEmail = "email" ) aws-sdk-go-1.4.22/service/cognitoidentityprovider/cognitoidentityprovideriface/000077500000000000000000000000001300374646400301715ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cognitoidentityprovider/cognitoidentityprovideriface/interface.go000066400000000000000000000425121300374646400324640ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cognitoidentityprovideriface provides an interface to enable mocking the Amazon Cognito Identity Provider service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package cognitoidentityprovideriface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/cognitoidentityprovider" ) // CognitoIdentityProviderAPI provides an interface to enable mocking the // cognitoidentityprovider.CognitoIdentityProvider service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Cognito Identity Provider. // func myFunc(svc cognitoidentityprovideriface.CognitoIdentityProviderAPI) bool { // // Make svc.AddCustomAttributes request // } // // func main() { // sess := session.New() // svc := cognitoidentityprovider.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockCognitoIdentityProviderClient struct { // cognitoidentityprovideriface.CognitoIdentityProviderAPI // } // func (m *mockCognitoIdentityProviderClient) AddCustomAttributes(input *cognitoidentityprovider.AddCustomAttributesInput) (*cognitoidentityprovider.AddCustomAttributesOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockCognitoIdentityProviderClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type CognitoIdentityProviderAPI interface { AddCustomAttributesRequest(*cognitoidentityprovider.AddCustomAttributesInput) (*request.Request, *cognitoidentityprovider.AddCustomAttributesOutput) AddCustomAttributes(*cognitoidentityprovider.AddCustomAttributesInput) (*cognitoidentityprovider.AddCustomAttributesOutput, error) AdminConfirmSignUpRequest(*cognitoidentityprovider.AdminConfirmSignUpInput) (*request.Request, *cognitoidentityprovider.AdminConfirmSignUpOutput) AdminConfirmSignUp(*cognitoidentityprovider.AdminConfirmSignUpInput) (*cognitoidentityprovider.AdminConfirmSignUpOutput, error) AdminCreateUserRequest(*cognitoidentityprovider.AdminCreateUserInput) (*request.Request, *cognitoidentityprovider.AdminCreateUserOutput) AdminCreateUser(*cognitoidentityprovider.AdminCreateUserInput) (*cognitoidentityprovider.AdminCreateUserOutput, error) AdminDeleteUserRequest(*cognitoidentityprovider.AdminDeleteUserInput) (*request.Request, *cognitoidentityprovider.AdminDeleteUserOutput) AdminDeleteUser(*cognitoidentityprovider.AdminDeleteUserInput) (*cognitoidentityprovider.AdminDeleteUserOutput, error) AdminDeleteUserAttributesRequest(*cognitoidentityprovider.AdminDeleteUserAttributesInput) (*request.Request, *cognitoidentityprovider.AdminDeleteUserAttributesOutput) AdminDeleteUserAttributes(*cognitoidentityprovider.AdminDeleteUserAttributesInput) (*cognitoidentityprovider.AdminDeleteUserAttributesOutput, error) AdminDisableUserRequest(*cognitoidentityprovider.AdminDisableUserInput) (*request.Request, *cognitoidentityprovider.AdminDisableUserOutput) AdminDisableUser(*cognitoidentityprovider.AdminDisableUserInput) (*cognitoidentityprovider.AdminDisableUserOutput, error) AdminEnableUserRequest(*cognitoidentityprovider.AdminEnableUserInput) (*request.Request, *cognitoidentityprovider.AdminEnableUserOutput) AdminEnableUser(*cognitoidentityprovider.AdminEnableUserInput) (*cognitoidentityprovider.AdminEnableUserOutput, error) AdminForgetDeviceRequest(*cognitoidentityprovider.AdminForgetDeviceInput) (*request.Request, *cognitoidentityprovider.AdminForgetDeviceOutput) AdminForgetDevice(*cognitoidentityprovider.AdminForgetDeviceInput) (*cognitoidentityprovider.AdminForgetDeviceOutput, error) AdminGetDeviceRequest(*cognitoidentityprovider.AdminGetDeviceInput) (*request.Request, *cognitoidentityprovider.AdminGetDeviceOutput) AdminGetDevice(*cognitoidentityprovider.AdminGetDeviceInput) (*cognitoidentityprovider.AdminGetDeviceOutput, error) AdminGetUserRequest(*cognitoidentityprovider.AdminGetUserInput) (*request.Request, *cognitoidentityprovider.AdminGetUserOutput) AdminGetUser(*cognitoidentityprovider.AdminGetUserInput) (*cognitoidentityprovider.AdminGetUserOutput, error) AdminInitiateAuthRequest(*cognitoidentityprovider.AdminInitiateAuthInput) (*request.Request, *cognitoidentityprovider.AdminInitiateAuthOutput) AdminInitiateAuth(*cognitoidentityprovider.AdminInitiateAuthInput) (*cognitoidentityprovider.AdminInitiateAuthOutput, error) AdminListDevicesRequest(*cognitoidentityprovider.AdminListDevicesInput) (*request.Request, *cognitoidentityprovider.AdminListDevicesOutput) AdminListDevices(*cognitoidentityprovider.AdminListDevicesInput) (*cognitoidentityprovider.AdminListDevicesOutput, error) AdminResetUserPasswordRequest(*cognitoidentityprovider.AdminResetUserPasswordInput) (*request.Request, *cognitoidentityprovider.AdminResetUserPasswordOutput) AdminResetUserPassword(*cognitoidentityprovider.AdminResetUserPasswordInput) (*cognitoidentityprovider.AdminResetUserPasswordOutput, error) AdminRespondToAuthChallengeRequest(*cognitoidentityprovider.AdminRespondToAuthChallengeInput) (*request.Request, *cognitoidentityprovider.AdminRespondToAuthChallengeOutput) AdminRespondToAuthChallenge(*cognitoidentityprovider.AdminRespondToAuthChallengeInput) (*cognitoidentityprovider.AdminRespondToAuthChallengeOutput, error) AdminSetUserSettingsRequest(*cognitoidentityprovider.AdminSetUserSettingsInput) (*request.Request, *cognitoidentityprovider.AdminSetUserSettingsOutput) AdminSetUserSettings(*cognitoidentityprovider.AdminSetUserSettingsInput) (*cognitoidentityprovider.AdminSetUserSettingsOutput, error) AdminUpdateDeviceStatusRequest(*cognitoidentityprovider.AdminUpdateDeviceStatusInput) (*request.Request, *cognitoidentityprovider.AdminUpdateDeviceStatusOutput) AdminUpdateDeviceStatus(*cognitoidentityprovider.AdminUpdateDeviceStatusInput) (*cognitoidentityprovider.AdminUpdateDeviceStatusOutput, error) AdminUpdateUserAttributesRequest(*cognitoidentityprovider.AdminUpdateUserAttributesInput) (*request.Request, *cognitoidentityprovider.AdminUpdateUserAttributesOutput) AdminUpdateUserAttributes(*cognitoidentityprovider.AdminUpdateUserAttributesInput) (*cognitoidentityprovider.AdminUpdateUserAttributesOutput, error) AdminUserGlobalSignOutRequest(*cognitoidentityprovider.AdminUserGlobalSignOutInput) (*request.Request, *cognitoidentityprovider.AdminUserGlobalSignOutOutput) AdminUserGlobalSignOut(*cognitoidentityprovider.AdminUserGlobalSignOutInput) (*cognitoidentityprovider.AdminUserGlobalSignOutOutput, error) ChangePasswordRequest(*cognitoidentityprovider.ChangePasswordInput) (*request.Request, *cognitoidentityprovider.ChangePasswordOutput) ChangePassword(*cognitoidentityprovider.ChangePasswordInput) (*cognitoidentityprovider.ChangePasswordOutput, error) ConfirmDeviceRequest(*cognitoidentityprovider.ConfirmDeviceInput) (*request.Request, *cognitoidentityprovider.ConfirmDeviceOutput) ConfirmDevice(*cognitoidentityprovider.ConfirmDeviceInput) (*cognitoidentityprovider.ConfirmDeviceOutput, error) ConfirmForgotPasswordRequest(*cognitoidentityprovider.ConfirmForgotPasswordInput) (*request.Request, *cognitoidentityprovider.ConfirmForgotPasswordOutput) ConfirmForgotPassword(*cognitoidentityprovider.ConfirmForgotPasswordInput) (*cognitoidentityprovider.ConfirmForgotPasswordOutput, error) ConfirmSignUpRequest(*cognitoidentityprovider.ConfirmSignUpInput) (*request.Request, *cognitoidentityprovider.ConfirmSignUpOutput) ConfirmSignUp(*cognitoidentityprovider.ConfirmSignUpInput) (*cognitoidentityprovider.ConfirmSignUpOutput, error) CreateUserImportJobRequest(*cognitoidentityprovider.CreateUserImportJobInput) (*request.Request, *cognitoidentityprovider.CreateUserImportJobOutput) CreateUserImportJob(*cognitoidentityprovider.CreateUserImportJobInput) (*cognitoidentityprovider.CreateUserImportJobOutput, error) CreateUserPoolRequest(*cognitoidentityprovider.CreateUserPoolInput) (*request.Request, *cognitoidentityprovider.CreateUserPoolOutput) CreateUserPool(*cognitoidentityprovider.CreateUserPoolInput) (*cognitoidentityprovider.CreateUserPoolOutput, error) CreateUserPoolClientRequest(*cognitoidentityprovider.CreateUserPoolClientInput) (*request.Request, *cognitoidentityprovider.CreateUserPoolClientOutput) CreateUserPoolClient(*cognitoidentityprovider.CreateUserPoolClientInput) (*cognitoidentityprovider.CreateUserPoolClientOutput, error) DeleteUserRequest(*cognitoidentityprovider.DeleteUserInput) (*request.Request, *cognitoidentityprovider.DeleteUserOutput) DeleteUser(*cognitoidentityprovider.DeleteUserInput) (*cognitoidentityprovider.DeleteUserOutput, error) DeleteUserAttributesRequest(*cognitoidentityprovider.DeleteUserAttributesInput) (*request.Request, *cognitoidentityprovider.DeleteUserAttributesOutput) DeleteUserAttributes(*cognitoidentityprovider.DeleteUserAttributesInput) (*cognitoidentityprovider.DeleteUserAttributesOutput, error) DeleteUserPoolRequest(*cognitoidentityprovider.DeleteUserPoolInput) (*request.Request, *cognitoidentityprovider.DeleteUserPoolOutput) DeleteUserPool(*cognitoidentityprovider.DeleteUserPoolInput) (*cognitoidentityprovider.DeleteUserPoolOutput, error) DeleteUserPoolClientRequest(*cognitoidentityprovider.DeleteUserPoolClientInput) (*request.Request, *cognitoidentityprovider.DeleteUserPoolClientOutput) DeleteUserPoolClient(*cognitoidentityprovider.DeleteUserPoolClientInput) (*cognitoidentityprovider.DeleteUserPoolClientOutput, error) DescribeUserImportJobRequest(*cognitoidentityprovider.DescribeUserImportJobInput) (*request.Request, *cognitoidentityprovider.DescribeUserImportJobOutput) DescribeUserImportJob(*cognitoidentityprovider.DescribeUserImportJobInput) (*cognitoidentityprovider.DescribeUserImportJobOutput, error) DescribeUserPoolRequest(*cognitoidentityprovider.DescribeUserPoolInput) (*request.Request, *cognitoidentityprovider.DescribeUserPoolOutput) DescribeUserPool(*cognitoidentityprovider.DescribeUserPoolInput) (*cognitoidentityprovider.DescribeUserPoolOutput, error) DescribeUserPoolClientRequest(*cognitoidentityprovider.DescribeUserPoolClientInput) (*request.Request, *cognitoidentityprovider.DescribeUserPoolClientOutput) DescribeUserPoolClient(*cognitoidentityprovider.DescribeUserPoolClientInput) (*cognitoidentityprovider.DescribeUserPoolClientOutput, error) ForgetDeviceRequest(*cognitoidentityprovider.ForgetDeviceInput) (*request.Request, *cognitoidentityprovider.ForgetDeviceOutput) ForgetDevice(*cognitoidentityprovider.ForgetDeviceInput) (*cognitoidentityprovider.ForgetDeviceOutput, error) ForgotPasswordRequest(*cognitoidentityprovider.ForgotPasswordInput) (*request.Request, *cognitoidentityprovider.ForgotPasswordOutput) ForgotPassword(*cognitoidentityprovider.ForgotPasswordInput) (*cognitoidentityprovider.ForgotPasswordOutput, error) GetCSVHeaderRequest(*cognitoidentityprovider.GetCSVHeaderInput) (*request.Request, *cognitoidentityprovider.GetCSVHeaderOutput) GetCSVHeader(*cognitoidentityprovider.GetCSVHeaderInput) (*cognitoidentityprovider.GetCSVHeaderOutput, error) GetDeviceRequest(*cognitoidentityprovider.GetDeviceInput) (*request.Request, *cognitoidentityprovider.GetDeviceOutput) GetDevice(*cognitoidentityprovider.GetDeviceInput) (*cognitoidentityprovider.GetDeviceOutput, error) GetUserRequest(*cognitoidentityprovider.GetUserInput) (*request.Request, *cognitoidentityprovider.GetUserOutput) GetUser(*cognitoidentityprovider.GetUserInput) (*cognitoidentityprovider.GetUserOutput, error) GetUserAttributeVerificationCodeRequest(*cognitoidentityprovider.GetUserAttributeVerificationCodeInput) (*request.Request, *cognitoidentityprovider.GetUserAttributeVerificationCodeOutput) GetUserAttributeVerificationCode(*cognitoidentityprovider.GetUserAttributeVerificationCodeInput) (*cognitoidentityprovider.GetUserAttributeVerificationCodeOutput, error) GlobalSignOutRequest(*cognitoidentityprovider.GlobalSignOutInput) (*request.Request, *cognitoidentityprovider.GlobalSignOutOutput) GlobalSignOut(*cognitoidentityprovider.GlobalSignOutInput) (*cognitoidentityprovider.GlobalSignOutOutput, error) InitiateAuthRequest(*cognitoidentityprovider.InitiateAuthInput) (*request.Request, *cognitoidentityprovider.InitiateAuthOutput) InitiateAuth(*cognitoidentityprovider.InitiateAuthInput) (*cognitoidentityprovider.InitiateAuthOutput, error) ListDevicesRequest(*cognitoidentityprovider.ListDevicesInput) (*request.Request, *cognitoidentityprovider.ListDevicesOutput) ListDevices(*cognitoidentityprovider.ListDevicesInput) (*cognitoidentityprovider.ListDevicesOutput, error) ListUserImportJobsRequest(*cognitoidentityprovider.ListUserImportJobsInput) (*request.Request, *cognitoidentityprovider.ListUserImportJobsOutput) ListUserImportJobs(*cognitoidentityprovider.ListUserImportJobsInput) (*cognitoidentityprovider.ListUserImportJobsOutput, error) ListUserPoolClientsRequest(*cognitoidentityprovider.ListUserPoolClientsInput) (*request.Request, *cognitoidentityprovider.ListUserPoolClientsOutput) ListUserPoolClients(*cognitoidentityprovider.ListUserPoolClientsInput) (*cognitoidentityprovider.ListUserPoolClientsOutput, error) ListUserPoolsRequest(*cognitoidentityprovider.ListUserPoolsInput) (*request.Request, *cognitoidentityprovider.ListUserPoolsOutput) ListUserPools(*cognitoidentityprovider.ListUserPoolsInput) (*cognitoidentityprovider.ListUserPoolsOutput, error) ListUsersRequest(*cognitoidentityprovider.ListUsersInput) (*request.Request, *cognitoidentityprovider.ListUsersOutput) ListUsers(*cognitoidentityprovider.ListUsersInput) (*cognitoidentityprovider.ListUsersOutput, error) ResendConfirmationCodeRequest(*cognitoidentityprovider.ResendConfirmationCodeInput) (*request.Request, *cognitoidentityprovider.ResendConfirmationCodeOutput) ResendConfirmationCode(*cognitoidentityprovider.ResendConfirmationCodeInput) (*cognitoidentityprovider.ResendConfirmationCodeOutput, error) RespondToAuthChallengeRequest(*cognitoidentityprovider.RespondToAuthChallengeInput) (*request.Request, *cognitoidentityprovider.RespondToAuthChallengeOutput) RespondToAuthChallenge(*cognitoidentityprovider.RespondToAuthChallengeInput) (*cognitoidentityprovider.RespondToAuthChallengeOutput, error) SetUserSettingsRequest(*cognitoidentityprovider.SetUserSettingsInput) (*request.Request, *cognitoidentityprovider.SetUserSettingsOutput) SetUserSettings(*cognitoidentityprovider.SetUserSettingsInput) (*cognitoidentityprovider.SetUserSettingsOutput, error) SignUpRequest(*cognitoidentityprovider.SignUpInput) (*request.Request, *cognitoidentityprovider.SignUpOutput) SignUp(*cognitoidentityprovider.SignUpInput) (*cognitoidentityprovider.SignUpOutput, error) StartUserImportJobRequest(*cognitoidentityprovider.StartUserImportJobInput) (*request.Request, *cognitoidentityprovider.StartUserImportJobOutput) StartUserImportJob(*cognitoidentityprovider.StartUserImportJobInput) (*cognitoidentityprovider.StartUserImportJobOutput, error) StopUserImportJobRequest(*cognitoidentityprovider.StopUserImportJobInput) (*request.Request, *cognitoidentityprovider.StopUserImportJobOutput) StopUserImportJob(*cognitoidentityprovider.StopUserImportJobInput) (*cognitoidentityprovider.StopUserImportJobOutput, error) UpdateDeviceStatusRequest(*cognitoidentityprovider.UpdateDeviceStatusInput) (*request.Request, *cognitoidentityprovider.UpdateDeviceStatusOutput) UpdateDeviceStatus(*cognitoidentityprovider.UpdateDeviceStatusInput) (*cognitoidentityprovider.UpdateDeviceStatusOutput, error) UpdateUserAttributesRequest(*cognitoidentityprovider.UpdateUserAttributesInput) (*request.Request, *cognitoidentityprovider.UpdateUserAttributesOutput) UpdateUserAttributes(*cognitoidentityprovider.UpdateUserAttributesInput) (*cognitoidentityprovider.UpdateUserAttributesOutput, error) UpdateUserPoolRequest(*cognitoidentityprovider.UpdateUserPoolInput) (*request.Request, *cognitoidentityprovider.UpdateUserPoolOutput) UpdateUserPool(*cognitoidentityprovider.UpdateUserPoolInput) (*cognitoidentityprovider.UpdateUserPoolOutput, error) UpdateUserPoolClientRequest(*cognitoidentityprovider.UpdateUserPoolClientInput) (*request.Request, *cognitoidentityprovider.UpdateUserPoolClientOutput) UpdateUserPoolClient(*cognitoidentityprovider.UpdateUserPoolClientInput) (*cognitoidentityprovider.UpdateUserPoolClientOutput, error) VerifyUserAttributeRequest(*cognitoidentityprovider.VerifyUserAttributeInput) (*request.Request, *cognitoidentityprovider.VerifyUserAttributeOutput) VerifyUserAttribute(*cognitoidentityprovider.VerifyUserAttributeInput) (*cognitoidentityprovider.VerifyUserAttributeOutput, error) } var _ CognitoIdentityProviderAPI = (*cognitoidentityprovider.CognitoIdentityProvider)(nil) aws-sdk-go-1.4.22/service/cognitoidentityprovider/examples_test.go000066400000000000000000001330341300374646400254220ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cognitoidentityprovider_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/cognitoidentityprovider" ) var _ time.Duration var _ bytes.Buffer func ExampleCognitoIdentityProvider_AddCustomAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.AddCustomAttributesInput{ CustomAttributes: []*cognitoidentityprovider.SchemaAttributeType{ // Required { // Required AttributeDataType: aws.String("AttributeDataType"), DeveloperOnlyAttribute: aws.Bool(true), Mutable: aws.Bool(true), Name: aws.String("CustomAttributeNameType"), NumberAttributeConstraints: &cognitoidentityprovider.NumberAttributeConstraintsType{ MaxValue: aws.String("StringType"), MinValue: aws.String("StringType"), }, Required: aws.Bool(true), StringAttributeConstraints: &cognitoidentityprovider.StringAttributeConstraintsType{ MaxLength: aws.String("StringType"), MinLength: aws.String("StringType"), }, }, // More values... }, UserPoolId: aws.String("UserPoolIdType"), // Required } resp, err := svc.AddCustomAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_AdminConfirmSignUp() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.AdminConfirmSignUpInput{ UserPoolId: aws.String("UserPoolIdType"), // Required Username: aws.String("UsernameType"), // Required } resp, err := svc.AdminConfirmSignUp(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_AdminCreateUser() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.AdminCreateUserInput{ UserPoolId: aws.String("UserPoolIdType"), // Required Username: aws.String("UsernameType"), // Required DesiredDeliveryMediums: []*string{ aws.String("DeliveryMediumType"), // Required // More values... }, ForceAliasCreation: aws.Bool(true), MessageAction: aws.String("MessageActionType"), TemporaryPassword: aws.String("PasswordType"), UserAttributes: []*cognitoidentityprovider.AttributeType{ { // Required Name: aws.String("AttributeNameType"), // Required Value: aws.String("AttributeValueType"), }, // More values... }, ValidationData: []*cognitoidentityprovider.AttributeType{ { // Required Name: aws.String("AttributeNameType"), // Required Value: aws.String("AttributeValueType"), }, // More values... }, } resp, err := svc.AdminCreateUser(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_AdminDeleteUser() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.AdminDeleteUserInput{ UserPoolId: aws.String("UserPoolIdType"), // Required Username: aws.String("UsernameType"), // Required } resp, err := svc.AdminDeleteUser(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_AdminDeleteUserAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.AdminDeleteUserAttributesInput{ UserAttributeNames: []*string{ // Required aws.String("AttributeNameType"), // Required // More values... }, UserPoolId: aws.String("UserPoolIdType"), // Required Username: aws.String("UsernameType"), // Required } resp, err := svc.AdminDeleteUserAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_AdminDisableUser() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.AdminDisableUserInput{ UserPoolId: aws.String("UserPoolIdType"), // Required Username: aws.String("UsernameType"), // Required } resp, err := svc.AdminDisableUser(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_AdminEnableUser() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.AdminEnableUserInput{ UserPoolId: aws.String("UserPoolIdType"), // Required Username: aws.String("UsernameType"), // Required } resp, err := svc.AdminEnableUser(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_AdminForgetDevice() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.AdminForgetDeviceInput{ DeviceKey: aws.String("DeviceKeyType"), // Required UserPoolId: aws.String("UserPoolIdType"), // Required Username: aws.String("UsernameType"), // Required } resp, err := svc.AdminForgetDevice(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_AdminGetDevice() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.AdminGetDeviceInput{ DeviceKey: aws.String("DeviceKeyType"), // Required UserPoolId: aws.String("UserPoolIdType"), // Required Username: aws.String("UsernameType"), // Required } resp, err := svc.AdminGetDevice(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_AdminGetUser() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.AdminGetUserInput{ UserPoolId: aws.String("UserPoolIdType"), // Required Username: aws.String("UsernameType"), // Required } resp, err := svc.AdminGetUser(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_AdminInitiateAuth() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.AdminInitiateAuthInput{ AuthFlow: aws.String("AuthFlowType"), // Required ClientId: aws.String("ClientIdType"), // Required UserPoolId: aws.String("UserPoolIdType"), // Required AuthParameters: map[string]*string{ "Key": aws.String("StringType"), // Required // More values... }, ClientMetadata: map[string]*string{ "Key": aws.String("StringType"), // Required // More values... }, } resp, err := svc.AdminInitiateAuth(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_AdminListDevices() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.AdminListDevicesInput{ UserPoolId: aws.String("UserPoolIdType"), // Required Username: aws.String("UsernameType"), // Required Limit: aws.Int64(1), PaginationToken: aws.String("SearchPaginationTokenType"), } resp, err := svc.AdminListDevices(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_AdminResetUserPassword() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.AdminResetUserPasswordInput{ UserPoolId: aws.String("UserPoolIdType"), // Required Username: aws.String("UsernameType"), // Required } resp, err := svc.AdminResetUserPassword(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_AdminRespondToAuthChallenge() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.AdminRespondToAuthChallengeInput{ ChallengeName: aws.String("ChallengeNameType"), // Required ClientId: aws.String("ClientIdType"), // Required UserPoolId: aws.String("UserPoolIdType"), // Required ChallengeResponses: map[string]*string{ "Key": aws.String("StringType"), // Required // More values... }, Session: aws.String("SessionType"), } resp, err := svc.AdminRespondToAuthChallenge(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_AdminSetUserSettings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.AdminSetUserSettingsInput{ MFAOptions: []*cognitoidentityprovider.MFAOptionType{ // Required { // Required AttributeName: aws.String("AttributeNameType"), DeliveryMedium: aws.String("DeliveryMediumType"), }, // More values... }, UserPoolId: aws.String("UserPoolIdType"), // Required Username: aws.String("UsernameType"), // Required } resp, err := svc.AdminSetUserSettings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_AdminUpdateDeviceStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.AdminUpdateDeviceStatusInput{ DeviceKey: aws.String("DeviceKeyType"), // Required UserPoolId: aws.String("UserPoolIdType"), // Required Username: aws.String("UsernameType"), // Required DeviceRememberedStatus: aws.String("DeviceRememberedStatusType"), } resp, err := svc.AdminUpdateDeviceStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_AdminUpdateUserAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.AdminUpdateUserAttributesInput{ UserAttributes: []*cognitoidentityprovider.AttributeType{ // Required { // Required Name: aws.String("AttributeNameType"), // Required Value: aws.String("AttributeValueType"), }, // More values... }, UserPoolId: aws.String("UserPoolIdType"), // Required Username: aws.String("UsernameType"), // Required } resp, err := svc.AdminUpdateUserAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_AdminUserGlobalSignOut() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.AdminUserGlobalSignOutInput{ UserPoolId: aws.String("UserPoolIdType"), // Required Username: aws.String("UsernameType"), // Required } resp, err := svc.AdminUserGlobalSignOut(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_ChangePassword() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.ChangePasswordInput{ PreviousPassword: aws.String("PasswordType"), // Required ProposedPassword: aws.String("PasswordType"), // Required AccessToken: aws.String("TokenModelType"), } resp, err := svc.ChangePassword(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_ConfirmDevice() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.ConfirmDeviceInput{ AccessToken: aws.String("TokenModelType"), // Required DeviceKey: aws.String("DeviceKeyType"), // Required DeviceName: aws.String("DeviceNameType"), DeviceSecretVerifierConfig: &cognitoidentityprovider.DeviceSecretVerifierConfigType{ PasswordVerifier: aws.String("StringType"), Salt: aws.String("StringType"), }, } resp, err := svc.ConfirmDevice(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_ConfirmForgotPassword() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.ConfirmForgotPasswordInput{ ClientId: aws.String("ClientIdType"), // Required ConfirmationCode: aws.String("ConfirmationCodeType"), // Required Password: aws.String("PasswordType"), // Required Username: aws.String("UsernameType"), // Required SecretHash: aws.String("SecretHashType"), } resp, err := svc.ConfirmForgotPassword(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_ConfirmSignUp() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.ConfirmSignUpInput{ ClientId: aws.String("ClientIdType"), // Required ConfirmationCode: aws.String("ConfirmationCodeType"), // Required Username: aws.String("UsernameType"), // Required ForceAliasCreation: aws.Bool(true), SecretHash: aws.String("SecretHashType"), } resp, err := svc.ConfirmSignUp(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_CreateUserImportJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.CreateUserImportJobInput{ CloudWatchLogsRoleArn: aws.String("ArnType"), // Required JobName: aws.String("UserImportJobNameType"), // Required UserPoolId: aws.String("UserPoolIdType"), // Required } resp, err := svc.CreateUserImportJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_CreateUserPool() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.CreateUserPoolInput{ PoolName: aws.String("UserPoolNameType"), // Required AdminCreateUserConfig: &cognitoidentityprovider.AdminCreateUserConfigType{ AllowAdminCreateUserOnly: aws.Bool(true), InviteMessageTemplate: &cognitoidentityprovider.MessageTemplateType{ EmailMessage: aws.String("EmailVerificationMessageType"), EmailSubject: aws.String("EmailVerificationSubjectType"), SMSMessage: aws.String("SmsVerificationMessageType"), }, UnusedAccountValidityDays: aws.Int64(1), }, AliasAttributes: []*string{ aws.String("AliasAttributeType"), // Required // More values... }, AutoVerifiedAttributes: []*string{ aws.String("VerifiedAttributeType"), // Required // More values... }, DeviceConfiguration: &cognitoidentityprovider.DeviceConfigurationType{ ChallengeRequiredOnNewDevice: aws.Bool(true), DeviceOnlyRememberedOnUserPrompt: aws.Bool(true), }, EmailConfiguration: &cognitoidentityprovider.EmailConfigurationType{ ReplyToEmailAddress: aws.String("EmailAddressType"), SourceArn: aws.String("ArnType"), }, EmailVerificationMessage: aws.String("EmailVerificationMessageType"), EmailVerificationSubject: aws.String("EmailVerificationSubjectType"), LambdaConfig: &cognitoidentityprovider.LambdaConfigType{ CreateAuthChallenge: aws.String("ArnType"), CustomMessage: aws.String("ArnType"), DefineAuthChallenge: aws.String("ArnType"), PostAuthentication: aws.String("ArnType"), PostConfirmation: aws.String("ArnType"), PreAuthentication: aws.String("ArnType"), PreSignUp: aws.String("ArnType"), VerifyAuthChallengeResponse: aws.String("ArnType"), }, MfaConfiguration: aws.String("UserPoolMfaType"), Policies: &cognitoidentityprovider.UserPoolPolicyType{ PasswordPolicy: &cognitoidentityprovider.PasswordPolicyType{ MinimumLength: aws.Int64(1), RequireLowercase: aws.Bool(true), RequireNumbers: aws.Bool(true), RequireSymbols: aws.Bool(true), RequireUppercase: aws.Bool(true), }, }, SmsAuthenticationMessage: aws.String("SmsVerificationMessageType"), SmsConfiguration: &cognitoidentityprovider.SmsConfigurationType{ ExternalId: aws.String("StringType"), SnsCallerArn: aws.String("ArnType"), }, SmsVerificationMessage: aws.String("SmsVerificationMessageType"), } resp, err := svc.CreateUserPool(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_CreateUserPoolClient() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.CreateUserPoolClientInput{ ClientName: aws.String("ClientNameType"), // Required UserPoolId: aws.String("UserPoolIdType"), // Required ExplicitAuthFlows: []*string{ aws.String("ExplicitAuthFlowsType"), // Required // More values... }, GenerateSecret: aws.Bool(true), ReadAttributes: []*string{ aws.String("ClientPermissionType"), // Required // More values... }, RefreshTokenValidity: aws.Int64(1), WriteAttributes: []*string{ aws.String("ClientPermissionType"), // Required // More values... }, } resp, err := svc.CreateUserPoolClient(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_DeleteUser() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.DeleteUserInput{ AccessToken: aws.String("TokenModelType"), } resp, err := svc.DeleteUser(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_DeleteUserAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.DeleteUserAttributesInput{ UserAttributeNames: []*string{ // Required aws.String("AttributeNameType"), // Required // More values... }, AccessToken: aws.String("TokenModelType"), } resp, err := svc.DeleteUserAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_DeleteUserPool() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.DeleteUserPoolInput{ UserPoolId: aws.String("UserPoolIdType"), // Required } resp, err := svc.DeleteUserPool(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_DeleteUserPoolClient() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.DeleteUserPoolClientInput{ ClientId: aws.String("ClientIdType"), // Required UserPoolId: aws.String("UserPoolIdType"), // Required } resp, err := svc.DeleteUserPoolClient(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_DescribeUserImportJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.DescribeUserImportJobInput{ JobId: aws.String("UserImportJobIdType"), // Required UserPoolId: aws.String("UserPoolIdType"), // Required } resp, err := svc.DescribeUserImportJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_DescribeUserPool() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.DescribeUserPoolInput{ UserPoolId: aws.String("UserPoolIdType"), // Required } resp, err := svc.DescribeUserPool(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_DescribeUserPoolClient() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.DescribeUserPoolClientInput{ ClientId: aws.String("ClientIdType"), // Required UserPoolId: aws.String("UserPoolIdType"), // Required } resp, err := svc.DescribeUserPoolClient(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_ForgetDevice() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.ForgetDeviceInput{ DeviceKey: aws.String("DeviceKeyType"), // Required AccessToken: aws.String("TokenModelType"), } resp, err := svc.ForgetDevice(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_ForgotPassword() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.ForgotPasswordInput{ ClientId: aws.String("ClientIdType"), // Required Username: aws.String("UsernameType"), // Required SecretHash: aws.String("SecretHashType"), } resp, err := svc.ForgotPassword(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_GetCSVHeader() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.GetCSVHeaderInput{ UserPoolId: aws.String("UserPoolIdType"), // Required } resp, err := svc.GetCSVHeader(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_GetDevice() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.GetDeviceInput{ DeviceKey: aws.String("DeviceKeyType"), // Required AccessToken: aws.String("TokenModelType"), } resp, err := svc.GetDevice(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_GetUser() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.GetUserInput{ AccessToken: aws.String("TokenModelType"), } resp, err := svc.GetUser(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_GetUserAttributeVerificationCode() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.GetUserAttributeVerificationCodeInput{ AttributeName: aws.String("AttributeNameType"), // Required AccessToken: aws.String("TokenModelType"), } resp, err := svc.GetUserAttributeVerificationCode(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_GlobalSignOut() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.GlobalSignOutInput{ AccessToken: aws.String("TokenModelType"), } resp, err := svc.GlobalSignOut(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_InitiateAuth() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.InitiateAuthInput{ AuthFlow: aws.String("AuthFlowType"), // Required ClientId: aws.String("ClientIdType"), // Required AuthParameters: map[string]*string{ "Key": aws.String("StringType"), // Required // More values... }, ClientMetadata: map[string]*string{ "Key": aws.String("StringType"), // Required // More values... }, } resp, err := svc.InitiateAuth(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_ListDevices() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.ListDevicesInput{ AccessToken: aws.String("TokenModelType"), // Required Limit: aws.Int64(1), PaginationToken: aws.String("SearchPaginationTokenType"), } resp, err := svc.ListDevices(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_ListUserImportJobs() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.ListUserImportJobsInput{ MaxResults: aws.Int64(1), // Required UserPoolId: aws.String("UserPoolIdType"), // Required PaginationToken: aws.String("PaginationKeyType"), } resp, err := svc.ListUserImportJobs(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_ListUserPoolClients() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.ListUserPoolClientsInput{ UserPoolId: aws.String("UserPoolIdType"), // Required MaxResults: aws.Int64(1), NextToken: aws.String("PaginationKey"), } resp, err := svc.ListUserPoolClients(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_ListUserPools() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.ListUserPoolsInput{ MaxResults: aws.Int64(1), // Required NextToken: aws.String("PaginationKeyType"), } resp, err := svc.ListUserPools(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_ListUsers() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.ListUsersInput{ UserPoolId: aws.String("UserPoolIdType"), // Required AttributesToGet: []*string{ aws.String("AttributeNameType"), // Required // More values... }, Filter: aws.String("UserFilterType"), Limit: aws.Int64(1), PaginationToken: aws.String("SearchPaginationTokenType"), } resp, err := svc.ListUsers(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_ResendConfirmationCode() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.ResendConfirmationCodeInput{ ClientId: aws.String("ClientIdType"), // Required Username: aws.String("UsernameType"), // Required SecretHash: aws.String("SecretHashType"), } resp, err := svc.ResendConfirmationCode(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_RespondToAuthChallenge() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.RespondToAuthChallengeInput{ ChallengeName: aws.String("ChallengeNameType"), // Required ClientId: aws.String("ClientIdType"), // Required ChallengeResponses: map[string]*string{ "Key": aws.String("StringType"), // Required // More values... }, Session: aws.String("SessionType"), } resp, err := svc.RespondToAuthChallenge(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_SetUserSettings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.SetUserSettingsInput{ AccessToken: aws.String("TokenModelType"), // Required MFAOptions: []*cognitoidentityprovider.MFAOptionType{ // Required { // Required AttributeName: aws.String("AttributeNameType"), DeliveryMedium: aws.String("DeliveryMediumType"), }, // More values... }, } resp, err := svc.SetUserSettings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_SignUp() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.SignUpInput{ ClientId: aws.String("ClientIdType"), // Required Password: aws.String("PasswordType"), // Required Username: aws.String("UsernameType"), // Required SecretHash: aws.String("SecretHashType"), UserAttributes: []*cognitoidentityprovider.AttributeType{ { // Required Name: aws.String("AttributeNameType"), // Required Value: aws.String("AttributeValueType"), }, // More values... }, ValidationData: []*cognitoidentityprovider.AttributeType{ { // Required Name: aws.String("AttributeNameType"), // Required Value: aws.String("AttributeValueType"), }, // More values... }, } resp, err := svc.SignUp(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_StartUserImportJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.StartUserImportJobInput{ JobId: aws.String("UserImportJobIdType"), // Required UserPoolId: aws.String("UserPoolIdType"), // Required } resp, err := svc.StartUserImportJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_StopUserImportJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.StopUserImportJobInput{ JobId: aws.String("UserImportJobIdType"), // Required UserPoolId: aws.String("UserPoolIdType"), // Required } resp, err := svc.StopUserImportJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_UpdateDeviceStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.UpdateDeviceStatusInput{ AccessToken: aws.String("TokenModelType"), // Required DeviceKey: aws.String("DeviceKeyType"), // Required DeviceRememberedStatus: aws.String("DeviceRememberedStatusType"), } resp, err := svc.UpdateDeviceStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_UpdateUserAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.UpdateUserAttributesInput{ UserAttributes: []*cognitoidentityprovider.AttributeType{ // Required { // Required Name: aws.String("AttributeNameType"), // Required Value: aws.String("AttributeValueType"), }, // More values... }, AccessToken: aws.String("TokenModelType"), } resp, err := svc.UpdateUserAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_UpdateUserPool() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.UpdateUserPoolInput{ UserPoolId: aws.String("UserPoolIdType"), // Required AdminCreateUserConfig: &cognitoidentityprovider.AdminCreateUserConfigType{ AllowAdminCreateUserOnly: aws.Bool(true), InviteMessageTemplate: &cognitoidentityprovider.MessageTemplateType{ EmailMessage: aws.String("EmailVerificationMessageType"), EmailSubject: aws.String("EmailVerificationSubjectType"), SMSMessage: aws.String("SmsVerificationMessageType"), }, UnusedAccountValidityDays: aws.Int64(1), }, AutoVerifiedAttributes: []*string{ aws.String("VerifiedAttributeType"), // Required // More values... }, DeviceConfiguration: &cognitoidentityprovider.DeviceConfigurationType{ ChallengeRequiredOnNewDevice: aws.Bool(true), DeviceOnlyRememberedOnUserPrompt: aws.Bool(true), }, EmailConfiguration: &cognitoidentityprovider.EmailConfigurationType{ ReplyToEmailAddress: aws.String("EmailAddressType"), SourceArn: aws.String("ArnType"), }, EmailVerificationMessage: aws.String("EmailVerificationMessageType"), EmailVerificationSubject: aws.String("EmailVerificationSubjectType"), LambdaConfig: &cognitoidentityprovider.LambdaConfigType{ CreateAuthChallenge: aws.String("ArnType"), CustomMessage: aws.String("ArnType"), DefineAuthChallenge: aws.String("ArnType"), PostAuthentication: aws.String("ArnType"), PostConfirmation: aws.String("ArnType"), PreAuthentication: aws.String("ArnType"), PreSignUp: aws.String("ArnType"), VerifyAuthChallengeResponse: aws.String("ArnType"), }, MfaConfiguration: aws.String("UserPoolMfaType"), Policies: &cognitoidentityprovider.UserPoolPolicyType{ PasswordPolicy: &cognitoidentityprovider.PasswordPolicyType{ MinimumLength: aws.Int64(1), RequireLowercase: aws.Bool(true), RequireNumbers: aws.Bool(true), RequireSymbols: aws.Bool(true), RequireUppercase: aws.Bool(true), }, }, SmsAuthenticationMessage: aws.String("SmsVerificationMessageType"), SmsConfiguration: &cognitoidentityprovider.SmsConfigurationType{ ExternalId: aws.String("StringType"), SnsCallerArn: aws.String("ArnType"), }, SmsVerificationMessage: aws.String("SmsVerificationMessageType"), } resp, err := svc.UpdateUserPool(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_UpdateUserPoolClient() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.UpdateUserPoolClientInput{ ClientId: aws.String("ClientIdType"), // Required UserPoolId: aws.String("UserPoolIdType"), // Required ClientName: aws.String("ClientNameType"), ExplicitAuthFlows: []*string{ aws.String("ExplicitAuthFlowsType"), // Required // More values... }, ReadAttributes: []*string{ aws.String("ClientPermissionType"), // Required // More values... }, RefreshTokenValidity: aws.Int64(1), WriteAttributes: []*string{ aws.String("ClientPermissionType"), // Required // More values... }, } resp, err := svc.UpdateUserPoolClient(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoIdentityProvider_VerifyUserAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitoidentityprovider.New(sess) params := &cognitoidentityprovider.VerifyUserAttributeInput{ AttributeName: aws.String("AttributeNameType"), // Required Code: aws.String("ConfirmationCodeType"), // Required AccessToken: aws.String("TokenModelType"), } resp, err := svc.VerifyUserAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/cognitoidentityprovider/service.go000066400000000000000000000063441300374646400242100ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cognitoidentityprovider import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Using the Amazon Cognito Your User Pools API, you can create a user pool // to manage directories and users. You can authenticate a user to obtain tokens // related to user identity and access policies. // // This API reference provides information about user pools in Amazon Cognito // Your User Pools. // // For more information, see the Amazon Cognito Documentation. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type CognitoIdentityProvider struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "cognito-idp" // New creates a new instance of the CognitoIdentityProvider client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a CognitoIdentityProvider client from just a session. // svc := cognitoidentityprovider.New(mySession) // // // Create a CognitoIdentityProvider client with additional configuration // svc := cognitoidentityprovider.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *CognitoIdentityProvider { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *CognitoIdentityProvider { svc := &CognitoIdentityProvider{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2016-04-18", JSONVersion: "1.1", TargetPrefix: "AWSCognitoIdentityProviderService", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a CognitoIdentityProvider operation and runs any // custom request initialization. func (c *CognitoIdentityProvider) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/cognitosync/000077500000000000000000000000001300374646400175625ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cognitosync/api.go000066400000000000000000003107201300374646400206650ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cognitosync provides a client for Amazon Cognito Sync. package cognitosync import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) const opBulkPublish = "BulkPublish" // BulkPublishRequest generates a "aws/request.Request" representing the // client's request for the BulkPublish operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See BulkPublish for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the BulkPublish method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the BulkPublishRequest method. // req, resp := client.BulkPublishRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoSync) BulkPublishRequest(input *BulkPublishInput) (req *request.Request, output *BulkPublishOutput) { op := &request.Operation{ Name: opBulkPublish, HTTPMethod: "POST", HTTPPath: "/identitypools/{IdentityPoolId}/bulkpublish", } if input == nil { input = &BulkPublishInput{} } req = c.newRequest(op, input, output) output = &BulkPublishOutput{} req.Data = output return } // BulkPublish API operation for Amazon Cognito Sync. // // Initiates a bulk publish of all existing datasets for an Identity Pool to // the configured stream. Customers are limited to one successful bulk publish // per 24 hours. Bulk publish is an asynchronous request, customers can see // the status of the request via the GetBulkPublishDetails operation. // // This API can only be called with developer credentials. You cannot call this // API with the temporary user credentials provided by Cognito Identity. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Sync's // API operation BulkPublish for usage and error information. // // Returned Error Codes: // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * InvalidParameterException // Thrown when a request parameter does not comply with the associated constraints. // // * ResourceNotFoundException // Thrown if the resource doesn't exist. // // * InternalErrorException // Indicates an internal service error. // // * DuplicateRequestException // An exception thrown when there is an IN_PROGRESS bulk publish operation for // the given identity pool. // // * AlreadyStreamedException // An exception thrown when a bulk publish operation is requested less than // 24 hours after a previous bulk publish operation completed successfully. // func (c *CognitoSync) BulkPublish(input *BulkPublishInput) (*BulkPublishOutput, error) { req, out := c.BulkPublishRequest(input) err := req.Send() return out, err } const opDeleteDataset = "DeleteDataset" // DeleteDatasetRequest generates a "aws/request.Request" representing the // client's request for the DeleteDataset operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDataset for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDataset method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDatasetRequest method. // req, resp := client.DeleteDatasetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoSync) DeleteDatasetRequest(input *DeleteDatasetInput) (req *request.Request, output *DeleteDatasetOutput) { op := &request.Operation{ Name: opDeleteDataset, HTTPMethod: "DELETE", HTTPPath: "/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}", } if input == nil { input = &DeleteDatasetInput{} } req = c.newRequest(op, input, output) output = &DeleteDatasetOutput{} req.Data = output return } // DeleteDataset API operation for Amazon Cognito Sync. // // Deletes the specific dataset. The dataset will be deleted permanently, and // the action can't be undone. Datasets that this dataset was merged with will // no longer report the merge. Any subsequent operation on this dataset will // result in a ResourceNotFoundException. // // This API can be called with temporary user credentials provided by Cognito // Identity or with developer credentials. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Sync's // API operation DeleteDataset for usage and error information. // // Returned Error Codes: // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * InvalidParameterException // Thrown when a request parameter does not comply with the associated constraints. // // * ResourceNotFoundException // Thrown if the resource doesn't exist. // // * InternalErrorException // Indicates an internal service error. // // * TooManyRequestsException // Thrown if the request is throttled. // // * ResourceConflictException // Thrown if an update can't be applied because the resource was changed by // another call and this would result in a conflict. // func (c *CognitoSync) DeleteDataset(input *DeleteDatasetInput) (*DeleteDatasetOutput, error) { req, out := c.DeleteDatasetRequest(input) err := req.Send() return out, err } const opDescribeDataset = "DescribeDataset" // DescribeDatasetRequest generates a "aws/request.Request" representing the // client's request for the DescribeDataset operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDataset for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDataset method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDatasetRequest method. // req, resp := client.DescribeDatasetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoSync) DescribeDatasetRequest(input *DescribeDatasetInput) (req *request.Request, output *DescribeDatasetOutput) { op := &request.Operation{ Name: opDescribeDataset, HTTPMethod: "GET", HTTPPath: "/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}", } if input == nil { input = &DescribeDatasetInput{} } req = c.newRequest(op, input, output) output = &DescribeDatasetOutput{} req.Data = output return } // DescribeDataset API operation for Amazon Cognito Sync. // // Gets meta data about a dataset by identity and dataset name. With Amazon // Cognito Sync, each identity has access only to its own data. Thus, the credentials // used to make this API call need to have access to the identity data. // // This API can be called with temporary user credentials provided by Cognito // Identity or with developer credentials. You should use Cognito Identity credentials // to make this API call. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Sync's // API operation DescribeDataset for usage and error information. // // Returned Error Codes: // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * InvalidParameterException // Thrown when a request parameter does not comply with the associated constraints. // // * ResourceNotFoundException // Thrown if the resource doesn't exist. // // * InternalErrorException // Indicates an internal service error. // // * TooManyRequestsException // Thrown if the request is throttled. // func (c *CognitoSync) DescribeDataset(input *DescribeDatasetInput) (*DescribeDatasetOutput, error) { req, out := c.DescribeDatasetRequest(input) err := req.Send() return out, err } const opDescribeIdentityPoolUsage = "DescribeIdentityPoolUsage" // DescribeIdentityPoolUsageRequest generates a "aws/request.Request" representing the // client's request for the DescribeIdentityPoolUsage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeIdentityPoolUsage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeIdentityPoolUsage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeIdentityPoolUsageRequest method. // req, resp := client.DescribeIdentityPoolUsageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoSync) DescribeIdentityPoolUsageRequest(input *DescribeIdentityPoolUsageInput) (req *request.Request, output *DescribeIdentityPoolUsageOutput) { op := &request.Operation{ Name: opDescribeIdentityPoolUsage, HTTPMethod: "GET", HTTPPath: "/identitypools/{IdentityPoolId}", } if input == nil { input = &DescribeIdentityPoolUsageInput{} } req = c.newRequest(op, input, output) output = &DescribeIdentityPoolUsageOutput{} req.Data = output return } // DescribeIdentityPoolUsage API operation for Amazon Cognito Sync. // // Gets usage details (for example, data storage) about a particular identity // pool. // // This API can only be called with developer credentials. You cannot call this // API with the temporary user credentials provided by Cognito Identity. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Sync's // API operation DescribeIdentityPoolUsage for usage and error information. // // Returned Error Codes: // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * InvalidParameterException // Thrown when a request parameter does not comply with the associated constraints. // // * ResourceNotFoundException // Thrown if the resource doesn't exist. // // * InternalErrorException // Indicates an internal service error. // // * TooManyRequestsException // Thrown if the request is throttled. // func (c *CognitoSync) DescribeIdentityPoolUsage(input *DescribeIdentityPoolUsageInput) (*DescribeIdentityPoolUsageOutput, error) { req, out := c.DescribeIdentityPoolUsageRequest(input) err := req.Send() return out, err } const opDescribeIdentityUsage = "DescribeIdentityUsage" // DescribeIdentityUsageRequest generates a "aws/request.Request" representing the // client's request for the DescribeIdentityUsage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeIdentityUsage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeIdentityUsage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeIdentityUsageRequest method. // req, resp := client.DescribeIdentityUsageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoSync) DescribeIdentityUsageRequest(input *DescribeIdentityUsageInput) (req *request.Request, output *DescribeIdentityUsageOutput) { op := &request.Operation{ Name: opDescribeIdentityUsage, HTTPMethod: "GET", HTTPPath: "/identitypools/{IdentityPoolId}/identities/{IdentityId}", } if input == nil { input = &DescribeIdentityUsageInput{} } req = c.newRequest(op, input, output) output = &DescribeIdentityUsageOutput{} req.Data = output return } // DescribeIdentityUsage API operation for Amazon Cognito Sync. // // Gets usage information for an identity, including number of datasets and // data usage. // // This API can be called with temporary user credentials provided by Cognito // Identity or with developer credentials. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Sync's // API operation DescribeIdentityUsage for usage and error information. // // Returned Error Codes: // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * InvalidParameterException // Thrown when a request parameter does not comply with the associated constraints. // // * ResourceNotFoundException // Thrown if the resource doesn't exist. // // * InternalErrorException // Indicates an internal service error. // // * TooManyRequestsException // Thrown if the request is throttled. // func (c *CognitoSync) DescribeIdentityUsage(input *DescribeIdentityUsageInput) (*DescribeIdentityUsageOutput, error) { req, out := c.DescribeIdentityUsageRequest(input) err := req.Send() return out, err } const opGetBulkPublishDetails = "GetBulkPublishDetails" // GetBulkPublishDetailsRequest generates a "aws/request.Request" representing the // client's request for the GetBulkPublishDetails operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBulkPublishDetails for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBulkPublishDetails method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBulkPublishDetailsRequest method. // req, resp := client.GetBulkPublishDetailsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoSync) GetBulkPublishDetailsRequest(input *GetBulkPublishDetailsInput) (req *request.Request, output *GetBulkPublishDetailsOutput) { op := &request.Operation{ Name: opGetBulkPublishDetails, HTTPMethod: "POST", HTTPPath: "/identitypools/{IdentityPoolId}/getBulkPublishDetails", } if input == nil { input = &GetBulkPublishDetailsInput{} } req = c.newRequest(op, input, output) output = &GetBulkPublishDetailsOutput{} req.Data = output return } // GetBulkPublishDetails API operation for Amazon Cognito Sync. // // Get the status of the last BulkPublish operation for an identity pool. // // This API can only be called with developer credentials. You cannot call this // API with the temporary user credentials provided by Cognito Identity. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Sync's // API operation GetBulkPublishDetails for usage and error information. // // Returned Error Codes: // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * InvalidParameterException // Thrown when a request parameter does not comply with the associated constraints. // // * ResourceNotFoundException // Thrown if the resource doesn't exist. // // * InternalErrorException // Indicates an internal service error. // func (c *CognitoSync) GetBulkPublishDetails(input *GetBulkPublishDetailsInput) (*GetBulkPublishDetailsOutput, error) { req, out := c.GetBulkPublishDetailsRequest(input) err := req.Send() return out, err } const opGetCognitoEvents = "GetCognitoEvents" // GetCognitoEventsRequest generates a "aws/request.Request" representing the // client's request for the GetCognitoEvents operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetCognitoEvents for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetCognitoEvents method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetCognitoEventsRequest method. // req, resp := client.GetCognitoEventsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoSync) GetCognitoEventsRequest(input *GetCognitoEventsInput) (req *request.Request, output *GetCognitoEventsOutput) { op := &request.Operation{ Name: opGetCognitoEvents, HTTPMethod: "GET", HTTPPath: "/identitypools/{IdentityPoolId}/events", } if input == nil { input = &GetCognitoEventsInput{} } req = c.newRequest(op, input, output) output = &GetCognitoEventsOutput{} req.Data = output return } // GetCognitoEvents API operation for Amazon Cognito Sync. // // Gets the events and the corresponding Lambda functions associated with an // identity pool. // // This API can only be called with developer credentials. You cannot call this // API with the temporary user credentials provided by Cognito Identity. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Sync's // API operation GetCognitoEvents for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown when a request parameter does not comply with the associated constraints. // // * ResourceNotFoundException // Thrown if the resource doesn't exist. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * InternalErrorException // Indicates an internal service error. // // * TooManyRequestsException // Thrown if the request is throttled. // func (c *CognitoSync) GetCognitoEvents(input *GetCognitoEventsInput) (*GetCognitoEventsOutput, error) { req, out := c.GetCognitoEventsRequest(input) err := req.Send() return out, err } const opGetIdentityPoolConfiguration = "GetIdentityPoolConfiguration" // GetIdentityPoolConfigurationRequest generates a "aws/request.Request" representing the // client's request for the GetIdentityPoolConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetIdentityPoolConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetIdentityPoolConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetIdentityPoolConfigurationRequest method. // req, resp := client.GetIdentityPoolConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoSync) GetIdentityPoolConfigurationRequest(input *GetIdentityPoolConfigurationInput) (req *request.Request, output *GetIdentityPoolConfigurationOutput) { op := &request.Operation{ Name: opGetIdentityPoolConfiguration, HTTPMethod: "GET", HTTPPath: "/identitypools/{IdentityPoolId}/configuration", } if input == nil { input = &GetIdentityPoolConfigurationInput{} } req = c.newRequest(op, input, output) output = &GetIdentityPoolConfigurationOutput{} req.Data = output return } // GetIdentityPoolConfiguration API operation for Amazon Cognito Sync. // // Gets the configuration settings of an identity pool. // // This API can only be called with developer credentials. You cannot call this // API with the temporary user credentials provided by Cognito Identity. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Sync's // API operation GetIdentityPoolConfiguration for usage and error information. // // Returned Error Codes: // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * InvalidParameterException // Thrown when a request parameter does not comply with the associated constraints. // // * ResourceNotFoundException // Thrown if the resource doesn't exist. // // * InternalErrorException // Indicates an internal service error. // // * TooManyRequestsException // Thrown if the request is throttled. // func (c *CognitoSync) GetIdentityPoolConfiguration(input *GetIdentityPoolConfigurationInput) (*GetIdentityPoolConfigurationOutput, error) { req, out := c.GetIdentityPoolConfigurationRequest(input) err := req.Send() return out, err } const opListDatasets = "ListDatasets" // ListDatasetsRequest generates a "aws/request.Request" representing the // client's request for the ListDatasets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDatasets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDatasets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDatasetsRequest method. // req, resp := client.ListDatasetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoSync) ListDatasetsRequest(input *ListDatasetsInput) (req *request.Request, output *ListDatasetsOutput) { op := &request.Operation{ Name: opListDatasets, HTTPMethod: "GET", HTTPPath: "/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets", } if input == nil { input = &ListDatasetsInput{} } req = c.newRequest(op, input, output) output = &ListDatasetsOutput{} req.Data = output return } // ListDatasets API operation for Amazon Cognito Sync. // // Lists datasets for an identity. With Amazon Cognito Sync, each identity has // access only to its own data. Thus, the credentials used to make this API // call need to have access to the identity data. // // ListDatasets can be called with temporary user credentials provided by Cognito // Identity or with developer credentials. You should use the Cognito Identity // credentials to make this API call. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Sync's // API operation ListDatasets for usage and error information. // // Returned Error Codes: // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * InvalidParameterException // Thrown when a request parameter does not comply with the associated constraints. // // * InternalErrorException // Indicates an internal service error. // // * TooManyRequestsException // Thrown if the request is throttled. // func (c *CognitoSync) ListDatasets(input *ListDatasetsInput) (*ListDatasetsOutput, error) { req, out := c.ListDatasetsRequest(input) err := req.Send() return out, err } const opListIdentityPoolUsage = "ListIdentityPoolUsage" // ListIdentityPoolUsageRequest generates a "aws/request.Request" representing the // client's request for the ListIdentityPoolUsage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListIdentityPoolUsage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListIdentityPoolUsage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListIdentityPoolUsageRequest method. // req, resp := client.ListIdentityPoolUsageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoSync) ListIdentityPoolUsageRequest(input *ListIdentityPoolUsageInput) (req *request.Request, output *ListIdentityPoolUsageOutput) { op := &request.Operation{ Name: opListIdentityPoolUsage, HTTPMethod: "GET", HTTPPath: "/identitypools", } if input == nil { input = &ListIdentityPoolUsageInput{} } req = c.newRequest(op, input, output) output = &ListIdentityPoolUsageOutput{} req.Data = output return } // ListIdentityPoolUsage API operation for Amazon Cognito Sync. // // Gets a list of identity pools registered with Cognito. // // ListIdentityPoolUsage can only be called with developer credentials. You // cannot make this API call with the temporary user credentials provided by // Cognito Identity. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Sync's // API operation ListIdentityPoolUsage for usage and error information. // // Returned Error Codes: // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * InvalidParameterException // Thrown when a request parameter does not comply with the associated constraints. // // * InternalErrorException // Indicates an internal service error. // // * TooManyRequestsException // Thrown if the request is throttled. // func (c *CognitoSync) ListIdentityPoolUsage(input *ListIdentityPoolUsageInput) (*ListIdentityPoolUsageOutput, error) { req, out := c.ListIdentityPoolUsageRequest(input) err := req.Send() return out, err } const opListRecords = "ListRecords" // ListRecordsRequest generates a "aws/request.Request" representing the // client's request for the ListRecords operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListRecords for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListRecords method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListRecordsRequest method. // req, resp := client.ListRecordsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoSync) ListRecordsRequest(input *ListRecordsInput) (req *request.Request, output *ListRecordsOutput) { op := &request.Operation{ Name: opListRecords, HTTPMethod: "GET", HTTPPath: "/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}/records", } if input == nil { input = &ListRecordsInput{} } req = c.newRequest(op, input, output) output = &ListRecordsOutput{} req.Data = output return } // ListRecords API operation for Amazon Cognito Sync. // // Gets paginated records, optionally changed after a particular sync count // for a dataset and identity. With Amazon Cognito Sync, each identity has access // only to its own data. Thus, the credentials used to make this API call need // to have access to the identity data. // // ListRecords can be called with temporary user credentials provided by Cognito // Identity or with developer credentials. You should use Cognito Identity credentials // to make this API call. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Sync's // API operation ListRecords for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown when a request parameter does not comply with the associated constraints. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * TooManyRequestsException // Thrown if the request is throttled. // // * InternalErrorException // Indicates an internal service error. // func (c *CognitoSync) ListRecords(input *ListRecordsInput) (*ListRecordsOutput, error) { req, out := c.ListRecordsRequest(input) err := req.Send() return out, err } const opRegisterDevice = "RegisterDevice" // RegisterDeviceRequest generates a "aws/request.Request" representing the // client's request for the RegisterDevice operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterDevice for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterDevice method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterDeviceRequest method. // req, resp := client.RegisterDeviceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoSync) RegisterDeviceRequest(input *RegisterDeviceInput) (req *request.Request, output *RegisterDeviceOutput) { op := &request.Operation{ Name: opRegisterDevice, HTTPMethod: "POST", HTTPPath: "/identitypools/{IdentityPoolId}/identity/{IdentityId}/device", } if input == nil { input = &RegisterDeviceInput{} } req = c.newRequest(op, input, output) output = &RegisterDeviceOutput{} req.Data = output return } // RegisterDevice API operation for Amazon Cognito Sync. // // Registers a device to receive push sync notifications. // // This API can only be called with temporary credentials provided by Cognito // Identity. You cannot call this API with developer credentials. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Sync's // API operation RegisterDevice for usage and error information. // // Returned Error Codes: // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * InvalidParameterException // Thrown when a request parameter does not comply with the associated constraints. // // * ResourceNotFoundException // Thrown if the resource doesn't exist. // // * InternalErrorException // Indicates an internal service error. // // * InvalidConfigurationException // // * TooManyRequestsException // Thrown if the request is throttled. // func (c *CognitoSync) RegisterDevice(input *RegisterDeviceInput) (*RegisterDeviceOutput, error) { req, out := c.RegisterDeviceRequest(input) err := req.Send() return out, err } const opSetCognitoEvents = "SetCognitoEvents" // SetCognitoEventsRequest generates a "aws/request.Request" representing the // client's request for the SetCognitoEvents operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetCognitoEvents for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetCognitoEvents method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetCognitoEventsRequest method. // req, resp := client.SetCognitoEventsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoSync) SetCognitoEventsRequest(input *SetCognitoEventsInput) (req *request.Request, output *SetCognitoEventsOutput) { op := &request.Operation{ Name: opSetCognitoEvents, HTTPMethod: "POST", HTTPPath: "/identitypools/{IdentityPoolId}/events", } if input == nil { input = &SetCognitoEventsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetCognitoEventsOutput{} req.Data = output return } // SetCognitoEvents API operation for Amazon Cognito Sync. // // Sets the AWS Lambda function for a given event type for an identity pool. // This request only updates the key/value pair specified. Other key/values // pairs are not updated. To remove a key value pair, pass a empty value for // the particular key. // // This API can only be called with developer credentials. You cannot call this // API with the temporary user credentials provided by Cognito Identity. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Sync's // API operation SetCognitoEvents for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown when a request parameter does not comply with the associated constraints. // // * ResourceNotFoundException // Thrown if the resource doesn't exist. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * InternalErrorException // Indicates an internal service error. // // * TooManyRequestsException // Thrown if the request is throttled. // func (c *CognitoSync) SetCognitoEvents(input *SetCognitoEventsInput) (*SetCognitoEventsOutput, error) { req, out := c.SetCognitoEventsRequest(input) err := req.Send() return out, err } const opSetIdentityPoolConfiguration = "SetIdentityPoolConfiguration" // SetIdentityPoolConfigurationRequest generates a "aws/request.Request" representing the // client's request for the SetIdentityPoolConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetIdentityPoolConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetIdentityPoolConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetIdentityPoolConfigurationRequest method. // req, resp := client.SetIdentityPoolConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoSync) SetIdentityPoolConfigurationRequest(input *SetIdentityPoolConfigurationInput) (req *request.Request, output *SetIdentityPoolConfigurationOutput) { op := &request.Operation{ Name: opSetIdentityPoolConfiguration, HTTPMethod: "POST", HTTPPath: "/identitypools/{IdentityPoolId}/configuration", } if input == nil { input = &SetIdentityPoolConfigurationInput{} } req = c.newRequest(op, input, output) output = &SetIdentityPoolConfigurationOutput{} req.Data = output return } // SetIdentityPoolConfiguration API operation for Amazon Cognito Sync. // // Sets the necessary configuration for push sync. // // This API can only be called with developer credentials. You cannot call this // API with the temporary user credentials provided by Cognito Identity. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Sync's // API operation SetIdentityPoolConfiguration for usage and error information. // // Returned Error Codes: // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * InvalidParameterException // Thrown when a request parameter does not comply with the associated constraints. // // * ResourceNotFoundException // Thrown if the resource doesn't exist. // // * InternalErrorException // Indicates an internal service error. // // * TooManyRequestsException // Thrown if the request is throttled. // // * ConcurrentModificationException // Thrown if there are parallel requests to modify a resource. // func (c *CognitoSync) SetIdentityPoolConfiguration(input *SetIdentityPoolConfigurationInput) (*SetIdentityPoolConfigurationOutput, error) { req, out := c.SetIdentityPoolConfigurationRequest(input) err := req.Send() return out, err } const opSubscribeToDataset = "SubscribeToDataset" // SubscribeToDatasetRequest generates a "aws/request.Request" representing the // client's request for the SubscribeToDataset operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SubscribeToDataset for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SubscribeToDataset method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SubscribeToDatasetRequest method. // req, resp := client.SubscribeToDatasetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoSync) SubscribeToDatasetRequest(input *SubscribeToDatasetInput) (req *request.Request, output *SubscribeToDatasetOutput) { op := &request.Operation{ Name: opSubscribeToDataset, HTTPMethod: "POST", HTTPPath: "/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}/subscriptions/{DeviceId}", } if input == nil { input = &SubscribeToDatasetInput{} } req = c.newRequest(op, input, output) output = &SubscribeToDatasetOutput{} req.Data = output return } // SubscribeToDataset API operation for Amazon Cognito Sync. // // Subscribes to receive notifications when a dataset is modified by another // device. // // This API can only be called with temporary credentials provided by Cognito // Identity. You cannot call this API with developer credentials. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Sync's // API operation SubscribeToDataset for usage and error information. // // Returned Error Codes: // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * InvalidParameterException // Thrown when a request parameter does not comply with the associated constraints. // // * ResourceNotFoundException // Thrown if the resource doesn't exist. // // * InternalErrorException // Indicates an internal service error. // // * InvalidConfigurationException // // * TooManyRequestsException // Thrown if the request is throttled. // func (c *CognitoSync) SubscribeToDataset(input *SubscribeToDatasetInput) (*SubscribeToDatasetOutput, error) { req, out := c.SubscribeToDatasetRequest(input) err := req.Send() return out, err } const opUnsubscribeFromDataset = "UnsubscribeFromDataset" // UnsubscribeFromDatasetRequest generates a "aws/request.Request" representing the // client's request for the UnsubscribeFromDataset operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UnsubscribeFromDataset for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UnsubscribeFromDataset method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UnsubscribeFromDatasetRequest method. // req, resp := client.UnsubscribeFromDatasetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoSync) UnsubscribeFromDatasetRequest(input *UnsubscribeFromDatasetInput) (req *request.Request, output *UnsubscribeFromDatasetOutput) { op := &request.Operation{ Name: opUnsubscribeFromDataset, HTTPMethod: "DELETE", HTTPPath: "/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}/subscriptions/{DeviceId}", } if input == nil { input = &UnsubscribeFromDatasetInput{} } req = c.newRequest(op, input, output) output = &UnsubscribeFromDatasetOutput{} req.Data = output return } // UnsubscribeFromDataset API operation for Amazon Cognito Sync. // // Unsubscribes from receiving notifications when a dataset is modified by another // device. // // This API can only be called with temporary credentials provided by Cognito // Identity. You cannot call this API with developer credentials. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Sync's // API operation UnsubscribeFromDataset for usage and error information. // // Returned Error Codes: // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * InvalidParameterException // Thrown when a request parameter does not comply with the associated constraints. // // * ResourceNotFoundException // Thrown if the resource doesn't exist. // // * InternalErrorException // Indicates an internal service error. // // * InvalidConfigurationException // // * TooManyRequestsException // Thrown if the request is throttled. // func (c *CognitoSync) UnsubscribeFromDataset(input *UnsubscribeFromDatasetInput) (*UnsubscribeFromDatasetOutput, error) { req, out := c.UnsubscribeFromDatasetRequest(input) err := req.Send() return out, err } const opUpdateRecords = "UpdateRecords" // UpdateRecordsRequest generates a "aws/request.Request" representing the // client's request for the UpdateRecords operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateRecords for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateRecords method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateRecordsRequest method. // req, resp := client.UpdateRecordsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *CognitoSync) UpdateRecordsRequest(input *UpdateRecordsInput) (req *request.Request, output *UpdateRecordsOutput) { op := &request.Operation{ Name: opUpdateRecords, HTTPMethod: "POST", HTTPPath: "/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}", } if input == nil { input = &UpdateRecordsInput{} } req = c.newRequest(op, input, output) output = &UpdateRecordsOutput{} req.Data = output return } // UpdateRecords API operation for Amazon Cognito Sync. // // Posts updates to records and adds and deletes records for a dataset and user. // // The sync count in the record patch is your last known sync count for that // record. The server will reject an UpdateRecords request with a ResourceConflictException // if you try to patch a record with a new value but a stale sync count. // // For example, if the sync count on the server is 5 for a key called highScore // and you try and submit a new highScore with sync count of 4, the request // will be rejected. To obtain the current sync count for a record, call ListRecords. // On a successful update of the record, the response returns the new sync count // for that record. You should present that sync count the next time you try // to update that same record. When the record does not exist, specify the sync // count as 0. // // This API can be called with temporary user credentials provided by Cognito // Identity or with developer credentials. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Cognito Sync's // API operation UpdateRecords for usage and error information. // // Returned Error Codes: // * InvalidParameterException // Thrown when a request parameter does not comply with the associated constraints. // // * LimitExceededException // Thrown when the limit on the number of objects or operations has been exceeded. // // * NotAuthorizedException // Thrown when a user is not authorized to access the requested resource. // // * ResourceNotFoundException // Thrown if the resource doesn't exist. // // * ResourceConflictException // Thrown if an update can't be applied because the resource was changed by // another call and this would result in a conflict. // // * InvalidLambdaFunctionOutputException // The AWS Lambda function returned invalid output or an exception. // // * LambdaThrottledException // AWS Lambda throttled your account, please contact AWS Support // // * TooManyRequestsException // Thrown if the request is throttled. // // * InternalErrorException // Indicates an internal service error. // func (c *CognitoSync) UpdateRecords(input *UpdateRecordsInput) (*UpdateRecordsOutput, error) { req, out := c.UpdateRecordsRequest(input) err := req.Send() return out, err } // The input for the BulkPublish operation. type BulkPublishInput struct { _ struct{} `type:"structure"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. // // IdentityPoolId is a required field IdentityPoolId *string `location:"uri" locationName:"IdentityPoolId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s BulkPublishInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BulkPublishInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BulkPublishInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BulkPublishInput"} if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the BulkPublish operation. type BulkPublishOutput struct { _ struct{} `type:"structure"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. IdentityPoolId *string `min:"1" type:"string"` } // String returns the string representation func (s BulkPublishOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BulkPublishOutput) GoString() string { return s.String() } // Configuration options for configure Cognito streams. type CognitoStreams struct { _ struct{} `type:"structure"` // The ARN of the role Amazon Cognito can assume in order to publish to the // stream. This role must grant access to Amazon Cognito (cognito-sync) to invoke // PutRecord on your Cognito stream. RoleArn *string `min:"20" type:"string"` // The name of the Cognito stream to receive updates. This stream must be in // the developers account and in the same region as the identity pool. StreamName *string `min:"1" type:"string"` // Status of the Cognito streams. Valid values are: ENABLED - Streaming of updates // to identity pool is enabled. // // DISABLED - Streaming of updates to identity pool is disabled. Bulk publish // will also fail if StreamingStatus is DISABLED. StreamingStatus *string `type:"string" enum:"StreamingStatus"` } // String returns the string representation func (s CognitoStreams) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CognitoStreams) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CognitoStreams) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CognitoStreams"} if s.RoleArn != nil && len(*s.RoleArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A collection of data for an identity pool. An identity pool can have multiple // datasets. A dataset is per identity and can be general or associated with // a particular entity in an application (like a saved game). Datasets are automatically // created if they don't exist. Data is synced by dataset, and a dataset can // hold up to 1MB of key-value pairs. type Dataset struct { _ struct{} `type:"structure"` // Date on which the dataset was created. CreationDate *time.Time `type:"timestamp" timestampFormat:"unix"` // Total size in bytes of the records in this dataset. DataStorage *int64 `type:"long"` // A string of up to 128 characters. Allowed characters are a-z, A-Z, 0-9, '_' // (underscore), '-' (dash), and '.' (dot). DatasetName *string `min:"1" type:"string"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. IdentityId *string `min:"1" type:"string"` // The device that made the last change to this dataset. LastModifiedBy *string `type:"string"` // Date when the dataset was last modified. LastModifiedDate *time.Time `type:"timestamp" timestampFormat:"unix"` // Number of records in this dataset. NumRecords *int64 `type:"long"` } // String returns the string representation func (s Dataset) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Dataset) GoString() string { return s.String() } // A request to delete the specific dataset. type DeleteDatasetInput struct { _ struct{} `type:"structure"` // A string of up to 128 characters. Allowed characters are a-z, A-Z, 0-9, '_' // (underscore), '-' (dash), and '.' (dot). // // DatasetName is a required field DatasetName *string `location:"uri" locationName:"DatasetName" min:"1" type:"string" required:"true"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. // // IdentityId is a required field IdentityId *string `location:"uri" locationName:"IdentityId" min:"1" type:"string" required:"true"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. // // IdentityPoolId is a required field IdentityPoolId *string `location:"uri" locationName:"IdentityPoolId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteDatasetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDatasetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDatasetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDatasetInput"} if s.DatasetName == nil { invalidParams.Add(request.NewErrParamRequired("DatasetName")) } if s.DatasetName != nil && len(*s.DatasetName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DatasetName", 1)) } if s.IdentityId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityId")) } if s.IdentityId != nil && len(*s.IdentityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityId", 1)) } if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response to a successful DeleteDataset request. type DeleteDatasetOutput struct { _ struct{} `type:"structure"` // A collection of data for an identity pool. An identity pool can have multiple // datasets. A dataset is per identity and can be general or associated with // a particular entity in an application (like a saved game). Datasets are automatically // created if they don't exist. Data is synced by dataset, and a dataset can // hold up to 1MB of key-value pairs. Dataset *Dataset `type:"structure"` } // String returns the string representation func (s DeleteDatasetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDatasetOutput) GoString() string { return s.String() } // A request for meta data about a dataset (creation date, number of records, // size) by owner and dataset name. type DescribeDatasetInput struct { _ struct{} `type:"structure"` // A string of up to 128 characters. Allowed characters are a-z, A-Z, 0-9, '_' // (underscore), '-' (dash), and '.' (dot). // // DatasetName is a required field DatasetName *string `location:"uri" locationName:"DatasetName" min:"1" type:"string" required:"true"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. // // IdentityId is a required field IdentityId *string `location:"uri" locationName:"IdentityId" min:"1" type:"string" required:"true"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. // // IdentityPoolId is a required field IdentityPoolId *string `location:"uri" locationName:"IdentityPoolId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeDatasetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDatasetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDatasetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDatasetInput"} if s.DatasetName == nil { invalidParams.Add(request.NewErrParamRequired("DatasetName")) } if s.DatasetName != nil && len(*s.DatasetName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DatasetName", 1)) } if s.IdentityId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityId")) } if s.IdentityId != nil && len(*s.IdentityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityId", 1)) } if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response to a successful DescribeDataset request. type DescribeDatasetOutput struct { _ struct{} `type:"structure"` // Meta data for a collection of data for an identity. An identity can have // multiple datasets. A dataset can be general or associated with a particular // entity in an application (like a saved game). Datasets are automatically // created if they don't exist. Data is synced by dataset, and a dataset can // hold up to 1MB of key-value pairs. Dataset *Dataset `type:"structure"` } // String returns the string representation func (s DescribeDatasetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDatasetOutput) GoString() string { return s.String() } // A request for usage information about the identity pool. type DescribeIdentityPoolUsageInput struct { _ struct{} `type:"structure"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. // // IdentityPoolId is a required field IdentityPoolId *string `location:"uri" locationName:"IdentityPoolId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeIdentityPoolUsageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeIdentityPoolUsageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeIdentityPoolUsageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeIdentityPoolUsageInput"} if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response to a successful DescribeIdentityPoolUsage request. type DescribeIdentityPoolUsageOutput struct { _ struct{} `type:"structure"` // Information about the usage of the identity pool. IdentityPoolUsage *IdentityPoolUsage `type:"structure"` } // String returns the string representation func (s DescribeIdentityPoolUsageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeIdentityPoolUsageOutput) GoString() string { return s.String() } // A request for information about the usage of an identity pool. type DescribeIdentityUsageInput struct { _ struct{} `type:"structure"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. // // IdentityId is a required field IdentityId *string `location:"uri" locationName:"IdentityId" min:"1" type:"string" required:"true"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. // // IdentityPoolId is a required field IdentityPoolId *string `location:"uri" locationName:"IdentityPoolId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeIdentityUsageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeIdentityUsageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeIdentityUsageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeIdentityUsageInput"} if s.IdentityId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityId")) } if s.IdentityId != nil && len(*s.IdentityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityId", 1)) } if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response to a successful DescribeIdentityUsage request. type DescribeIdentityUsageOutput struct { _ struct{} `type:"structure"` // Usage information for the identity. IdentityUsage *IdentityUsage `type:"structure"` } // String returns the string representation func (s DescribeIdentityUsageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeIdentityUsageOutput) GoString() string { return s.String() } // The input for the GetBulkPublishDetails operation. type GetBulkPublishDetailsInput struct { _ struct{} `type:"structure"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. // // IdentityPoolId is a required field IdentityPoolId *string `location:"uri" locationName:"IdentityPoolId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetBulkPublishDetailsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBulkPublishDetailsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBulkPublishDetailsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBulkPublishDetailsInput"} if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the GetBulkPublishDetails operation. type GetBulkPublishDetailsOutput struct { _ struct{} `type:"structure"` // If BulkPublishStatus is SUCCEEDED, the time the last bulk publish operation // completed. BulkPublishCompleteTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The date/time at which the last bulk publish was initiated. BulkPublishStartTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Status of the last bulk publish operation, valid values are: NOT_STARTED // - No bulk publish has been requested for this identity pool // // IN_PROGRESS - Data is being published to the configured stream // // SUCCEEDED - All data for the identity pool has been published to the configured // stream // // FAILED - Some portion of the data has failed to publish, check FailureMessage // for the cause. BulkPublishStatus *string `type:"string" enum:"BulkPublishStatus"` // If BulkPublishStatus is FAILED this field will contain the error message // that caused the bulk publish to fail. FailureMessage *string `type:"string"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. IdentityPoolId *string `min:"1" type:"string"` } // String returns the string representation func (s GetBulkPublishDetailsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBulkPublishDetailsOutput) GoString() string { return s.String() } // A request for a list of the configured Cognito Events type GetCognitoEventsInput struct { _ struct{} `type:"structure"` // The Cognito Identity Pool ID for the request // // IdentityPoolId is a required field IdentityPoolId *string `location:"uri" locationName:"IdentityPoolId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetCognitoEventsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCognitoEventsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetCognitoEventsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetCognitoEventsInput"} if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response from the GetCognitoEvents request type GetCognitoEventsOutput struct { _ struct{} `type:"structure"` // The Cognito Events returned from the GetCognitoEvents request Events map[string]*string `type:"map"` } // String returns the string representation func (s GetCognitoEventsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCognitoEventsOutput) GoString() string { return s.String() } // The input for the GetIdentityPoolConfiguration operation. type GetIdentityPoolConfigurationInput struct { _ struct{} `type:"structure"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. This is the ID of the pool for which to return // a configuration. // // IdentityPoolId is a required field IdentityPoolId *string `location:"uri" locationName:"IdentityPoolId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetIdentityPoolConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIdentityPoolConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetIdentityPoolConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetIdentityPoolConfigurationInput"} if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the GetIdentityPoolConfiguration operation. type GetIdentityPoolConfigurationOutput struct { _ struct{} `type:"structure"` // Options to apply to this identity pool for Amazon Cognito streams. CognitoStreams *CognitoStreams `type:"structure"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. IdentityPoolId *string `min:"1" type:"string"` // Options to apply to this identity pool for push synchronization. PushSync *PushSync `type:"structure"` } // String returns the string representation func (s GetIdentityPoolConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIdentityPoolConfigurationOutput) GoString() string { return s.String() } // Usage information for the identity pool. type IdentityPoolUsage struct { _ struct{} `type:"structure"` // Data storage information for the identity pool. DataStorage *int64 `type:"long"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. IdentityPoolId *string `min:"1" type:"string"` // Date on which the identity pool was last modified. LastModifiedDate *time.Time `type:"timestamp" timestampFormat:"unix"` // Number of sync sessions for the identity pool. SyncSessionsCount *int64 `type:"long"` } // String returns the string representation func (s IdentityPoolUsage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IdentityPoolUsage) GoString() string { return s.String() } // Usage information for the identity. type IdentityUsage struct { _ struct{} `type:"structure"` // Total data storage for this identity. DataStorage *int64 `type:"long"` // Number of datasets for the identity. DatasetCount *int64 `type:"integer"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. IdentityId *string `min:"1" type:"string"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. IdentityPoolId *string `min:"1" type:"string"` // Date on which the identity was last modified. LastModifiedDate *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s IdentityUsage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IdentityUsage) GoString() string { return s.String() } // Request for a list of datasets for an identity. type ListDatasetsInput struct { _ struct{} `type:"structure"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. // // IdentityId is a required field IdentityId *string `location:"uri" locationName:"IdentityId" min:"1" type:"string" required:"true"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. // // IdentityPoolId is a required field IdentityPoolId *string `location:"uri" locationName:"IdentityPoolId" min:"1" type:"string" required:"true"` // The maximum number of results to be returned. MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` // A pagination token for obtaining the next page of results. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListDatasetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDatasetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListDatasetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListDatasetsInput"} if s.IdentityId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityId")) } if s.IdentityId != nil && len(*s.IdentityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityId", 1)) } if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returned for a successful ListDatasets request. type ListDatasetsOutput struct { _ struct{} `type:"structure"` // Number of datasets returned. Count *int64 `type:"integer"` // A set of datasets. Datasets []*Dataset `type:"list"` // A pagination token for obtaining the next page of results. NextToken *string `type:"string"` } // String returns the string representation func (s ListDatasetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDatasetsOutput) GoString() string { return s.String() } // A request for usage information on an identity pool. type ListIdentityPoolUsageInput struct { _ struct{} `type:"structure"` // The maximum number of results to be returned. MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` // A pagination token for obtaining the next page of results. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListIdentityPoolUsageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListIdentityPoolUsageInput) GoString() string { return s.String() } // Returned for a successful ListIdentityPoolUsage request. type ListIdentityPoolUsageOutput struct { _ struct{} `type:"structure"` // Total number of identities for the identity pool. Count *int64 `type:"integer"` // Usage information for the identity pools. IdentityPoolUsages []*IdentityPoolUsage `type:"list"` // The maximum number of results to be returned. MaxResults *int64 `type:"integer"` // A pagination token for obtaining the next page of results. NextToken *string `type:"string"` } // String returns the string representation func (s ListIdentityPoolUsageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListIdentityPoolUsageOutput) GoString() string { return s.String() } // A request for a list of records. type ListRecordsInput struct { _ struct{} `type:"structure"` // A string of up to 128 characters. Allowed characters are a-z, A-Z, 0-9, '_' // (underscore), '-' (dash), and '.' (dot). // // DatasetName is a required field DatasetName *string `location:"uri" locationName:"DatasetName" min:"1" type:"string" required:"true"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. // // IdentityId is a required field IdentityId *string `location:"uri" locationName:"IdentityId" min:"1" type:"string" required:"true"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. // // IdentityPoolId is a required field IdentityPoolId *string `location:"uri" locationName:"IdentityPoolId" min:"1" type:"string" required:"true"` // The last server sync count for this record. LastSyncCount *int64 `location:"querystring" locationName:"lastSyncCount" type:"long"` // The maximum number of results to be returned. MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` // A pagination token for obtaining the next page of results. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` // A token containing a session ID, identity ID, and expiration. SyncSessionToken *string `location:"querystring" locationName:"syncSessionToken" type:"string"` } // String returns the string representation func (s ListRecordsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRecordsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListRecordsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListRecordsInput"} if s.DatasetName == nil { invalidParams.Add(request.NewErrParamRequired("DatasetName")) } if s.DatasetName != nil && len(*s.DatasetName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DatasetName", 1)) } if s.IdentityId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityId")) } if s.IdentityId != nil && len(*s.IdentityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityId", 1)) } if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returned for a successful ListRecordsRequest. type ListRecordsOutput struct { _ struct{} `type:"structure"` // Total number of records. Count *int64 `type:"integer"` // A boolean value specifying whether to delete the dataset locally. DatasetDeletedAfterRequestedSyncCount *bool `type:"boolean"` // Indicates whether the dataset exists. DatasetExists *bool `type:"boolean"` // Server sync count for this dataset. DatasetSyncCount *int64 `type:"long"` // The user/device that made the last change to this record. LastModifiedBy *string `type:"string"` // Names of merged datasets. MergedDatasetNames []*string `type:"list"` // A pagination token for obtaining the next page of results. NextToken *string `type:"string"` // A list of all records. Records []*Record `type:"list"` // A token containing a session ID, identity ID, and expiration. SyncSessionToken *string `type:"string"` } // String returns the string representation func (s ListRecordsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRecordsOutput) GoString() string { return s.String() } // Configuration options to be applied to the identity pool. type PushSync struct { _ struct{} `type:"structure"` // List of SNS platform application ARNs that could be used by clients. ApplicationArns []*string `type:"list"` // A role configured to allow Cognito to call SNS on behalf of the developer. RoleArn *string `min:"20" type:"string"` } // String returns the string representation func (s PushSync) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PushSync) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PushSync) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PushSync"} if s.RoleArn != nil && len(*s.RoleArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The basic data structure of a dataset. type Record struct { _ struct{} `type:"structure"` // The last modified date of the client device. DeviceLastModifiedDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The key for the record. Key *string `min:"1" type:"string"` // The user/device that made the last change to this record. LastModifiedBy *string `type:"string"` // The date on which the record was last modified. LastModifiedDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The server sync count for this record. SyncCount *int64 `type:"long"` // The value for the record. Value *string `type:"string"` } // String returns the string representation func (s Record) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Record) GoString() string { return s.String() } // An update operation for a record. type RecordPatch struct { _ struct{} `type:"structure"` // The last modified date of the client device. DeviceLastModifiedDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The key associated with the record patch. // // Key is a required field Key *string `min:"1" type:"string" required:"true"` // An operation, either replace or remove. // // Op is a required field Op *string `type:"string" required:"true" enum:"Operation"` // Last known server sync count for this record. Set to 0 if unknown. // // SyncCount is a required field SyncCount *int64 `type:"long" required:"true"` // The value associated with the record patch. Value *string `type:"string"` } // String returns the string representation func (s RecordPatch) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecordPatch) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RecordPatch) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RecordPatch"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Op == nil { invalidParams.Add(request.NewErrParamRequired("Op")) } if s.SyncCount == nil { invalidParams.Add(request.NewErrParamRequired("SyncCount")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A request to RegisterDevice. type RegisterDeviceInput struct { _ struct{} `type:"structure"` // The unique ID for this identity. // // IdentityId is a required field IdentityId *string `location:"uri" locationName:"IdentityId" min:"1" type:"string" required:"true"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. Here, the ID of the pool that the identity belongs // to. // // IdentityPoolId is a required field IdentityPoolId *string `location:"uri" locationName:"IdentityPoolId" min:"1" type:"string" required:"true"` // The SNS platform type (e.g. GCM, SDM, APNS, APNS_SANDBOX). // // Platform is a required field Platform *string `type:"string" required:"true" enum:"Platform"` // The push token. // // Token is a required field Token *string `type:"string" required:"true"` } // String returns the string representation func (s RegisterDeviceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterDeviceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterDeviceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterDeviceInput"} if s.IdentityId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityId")) } if s.IdentityId != nil && len(*s.IdentityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityId", 1)) } if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if s.Platform == nil { invalidParams.Add(request.NewErrParamRequired("Platform")) } if s.Token == nil { invalidParams.Add(request.NewErrParamRequired("Token")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response to a RegisterDevice request. type RegisterDeviceOutput struct { _ struct{} `type:"structure"` // The unique ID generated for this device by Cognito. DeviceId *string `min:"1" type:"string"` } // String returns the string representation func (s RegisterDeviceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterDeviceOutput) GoString() string { return s.String() } // A request to configure Cognito Events" type SetCognitoEventsInput struct { _ struct{} `type:"structure"` // The events to configure // // Events is a required field Events map[string]*string `type:"map" required:"true"` // The Cognito Identity Pool to use when configuring Cognito Events // // IdentityPoolId is a required field IdentityPoolId *string `location:"uri" locationName:"IdentityPoolId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s SetCognitoEventsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetCognitoEventsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetCognitoEventsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetCognitoEventsInput"} if s.Events == nil { invalidParams.Add(request.NewErrParamRequired("Events")) } if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetCognitoEventsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetCognitoEventsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetCognitoEventsOutput) GoString() string { return s.String() } // The input for the SetIdentityPoolConfiguration operation. type SetIdentityPoolConfigurationInput struct { _ struct{} `type:"structure"` // Options to apply to this identity pool for Amazon Cognito streams. CognitoStreams *CognitoStreams `type:"structure"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. This is the ID of the pool to modify. // // IdentityPoolId is a required field IdentityPoolId *string `location:"uri" locationName:"IdentityPoolId" min:"1" type:"string" required:"true"` // Options to apply to this identity pool for push synchronization. PushSync *PushSync `type:"structure"` } // String returns the string representation func (s SetIdentityPoolConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetIdentityPoolConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetIdentityPoolConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetIdentityPoolConfigurationInput"} if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if s.CognitoStreams != nil { if err := s.CognitoStreams.Validate(); err != nil { invalidParams.AddNested("CognitoStreams", err.(request.ErrInvalidParams)) } } if s.PushSync != nil { if err := s.PushSync.Validate(); err != nil { invalidParams.AddNested("PushSync", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the SetIdentityPoolConfiguration operation type SetIdentityPoolConfigurationOutput struct { _ struct{} `type:"structure"` // Options to apply to this identity pool for Amazon Cognito streams. CognitoStreams *CognitoStreams `type:"structure"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. IdentityPoolId *string `min:"1" type:"string"` // Options to apply to this identity pool for push synchronization. PushSync *PushSync `type:"structure"` } // String returns the string representation func (s SetIdentityPoolConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetIdentityPoolConfigurationOutput) GoString() string { return s.String() } // A request to SubscribeToDatasetRequest. type SubscribeToDatasetInput struct { _ struct{} `type:"structure"` // The name of the dataset to subcribe to. // // DatasetName is a required field DatasetName *string `location:"uri" locationName:"DatasetName" min:"1" type:"string" required:"true"` // The unique ID generated for this device by Cognito. // // DeviceId is a required field DeviceId *string `location:"uri" locationName:"DeviceId" min:"1" type:"string" required:"true"` // Unique ID for this identity. // // IdentityId is a required field IdentityId *string `location:"uri" locationName:"IdentityId" min:"1" type:"string" required:"true"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. The ID of the pool to which the identity belongs. // // IdentityPoolId is a required field IdentityPoolId *string `location:"uri" locationName:"IdentityPoolId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s SubscribeToDatasetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SubscribeToDatasetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SubscribeToDatasetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SubscribeToDatasetInput"} if s.DatasetName == nil { invalidParams.Add(request.NewErrParamRequired("DatasetName")) } if s.DatasetName != nil && len(*s.DatasetName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DatasetName", 1)) } if s.DeviceId == nil { invalidParams.Add(request.NewErrParamRequired("DeviceId")) } if s.DeviceId != nil && len(*s.DeviceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeviceId", 1)) } if s.IdentityId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityId")) } if s.IdentityId != nil && len(*s.IdentityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityId", 1)) } if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response to a SubscribeToDataset request. type SubscribeToDatasetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SubscribeToDatasetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SubscribeToDatasetOutput) GoString() string { return s.String() } // A request to UnsubscribeFromDataset. type UnsubscribeFromDatasetInput struct { _ struct{} `type:"structure"` // The name of the dataset from which to unsubcribe. // // DatasetName is a required field DatasetName *string `location:"uri" locationName:"DatasetName" min:"1" type:"string" required:"true"` // The unique ID generated for this device by Cognito. // // DeviceId is a required field DeviceId *string `location:"uri" locationName:"DeviceId" min:"1" type:"string" required:"true"` // Unique ID for this identity. // // IdentityId is a required field IdentityId *string `location:"uri" locationName:"IdentityId" min:"1" type:"string" required:"true"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. The ID of the pool to which this identity belongs. // // IdentityPoolId is a required field IdentityPoolId *string `location:"uri" locationName:"IdentityPoolId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s UnsubscribeFromDatasetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnsubscribeFromDatasetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UnsubscribeFromDatasetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UnsubscribeFromDatasetInput"} if s.DatasetName == nil { invalidParams.Add(request.NewErrParamRequired("DatasetName")) } if s.DatasetName != nil && len(*s.DatasetName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DatasetName", 1)) } if s.DeviceId == nil { invalidParams.Add(request.NewErrParamRequired("DeviceId")) } if s.DeviceId != nil && len(*s.DeviceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeviceId", 1)) } if s.IdentityId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityId")) } if s.IdentityId != nil && len(*s.IdentityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityId", 1)) } if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response to an UnsubscribeFromDataset request. type UnsubscribeFromDatasetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UnsubscribeFromDatasetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnsubscribeFromDatasetOutput) GoString() string { return s.String() } // A request to post updates to records or add and delete records for a dataset // and user. type UpdateRecordsInput struct { _ struct{} `type:"structure"` // Intended to supply a device ID that will populate the lastModifiedBy field // referenced in other methods. The ClientContext field is not yet implemented. ClientContext *string `location:"header" locationName:"x-amz-Client-Context" type:"string"` // A string of up to 128 characters. Allowed characters are a-z, A-Z, 0-9, '_' // (underscore), '-' (dash), and '.' (dot). // // DatasetName is a required field DatasetName *string `location:"uri" locationName:"DatasetName" min:"1" type:"string" required:"true"` // The unique ID generated for this device by Cognito. DeviceId *string `min:"1" type:"string"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. // // IdentityId is a required field IdentityId *string `location:"uri" locationName:"IdentityId" min:"1" type:"string" required:"true"` // A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) // created by Amazon Cognito. GUID generation is unique within a region. // // IdentityPoolId is a required field IdentityPoolId *string `location:"uri" locationName:"IdentityPoolId" min:"1" type:"string" required:"true"` // A list of patch operations. RecordPatches []*RecordPatch `type:"list"` // The SyncSessionToken returned by a previous call to ListRecords for this // dataset and identity. // // SyncSessionToken is a required field SyncSessionToken *string `type:"string" required:"true"` } // String returns the string representation func (s UpdateRecordsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateRecordsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateRecordsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateRecordsInput"} if s.DatasetName == nil { invalidParams.Add(request.NewErrParamRequired("DatasetName")) } if s.DatasetName != nil && len(*s.DatasetName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DatasetName", 1)) } if s.DeviceId != nil && len(*s.DeviceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeviceId", 1)) } if s.IdentityId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityId")) } if s.IdentityId != nil && len(*s.IdentityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityId", 1)) } if s.IdentityPoolId == nil { invalidParams.Add(request.NewErrParamRequired("IdentityPoolId")) } if s.IdentityPoolId != nil && len(*s.IdentityPoolId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IdentityPoolId", 1)) } if s.SyncSessionToken == nil { invalidParams.Add(request.NewErrParamRequired("SyncSessionToken")) } if s.RecordPatches != nil { for i, v := range s.RecordPatches { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RecordPatches", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returned for a successful UpdateRecordsRequest. type UpdateRecordsOutput struct { _ struct{} `type:"structure"` // A list of records that have been updated. Records []*Record `type:"list"` } // String returns the string representation func (s UpdateRecordsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateRecordsOutput) GoString() string { return s.String() } const ( // BulkPublishStatusNotStarted is a BulkPublishStatus enum value BulkPublishStatusNotStarted = "NOT_STARTED" // BulkPublishStatusInProgress is a BulkPublishStatus enum value BulkPublishStatusInProgress = "IN_PROGRESS" // BulkPublishStatusFailed is a BulkPublishStatus enum value BulkPublishStatusFailed = "FAILED" // BulkPublishStatusSucceeded is a BulkPublishStatus enum value BulkPublishStatusSucceeded = "SUCCEEDED" ) const ( // OperationReplace is a Operation enum value OperationReplace = "replace" // OperationRemove is a Operation enum value OperationRemove = "remove" ) const ( // PlatformApns is a Platform enum value PlatformApns = "APNS" // PlatformApnsSandbox is a Platform enum value PlatformApnsSandbox = "APNS_SANDBOX" // PlatformGcm is a Platform enum value PlatformGcm = "GCM" // PlatformAdm is a Platform enum value PlatformAdm = "ADM" ) const ( // StreamingStatusEnabled is a StreamingStatus enum value StreamingStatusEnabled = "ENABLED" // StreamingStatusDisabled is a StreamingStatus enum value StreamingStatusDisabled = "DISABLED" ) aws-sdk-go-1.4.22/service/cognitosync/cognitosynciface/000077500000000000000000000000001300374646400231115ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/cognitosync/cognitosynciface/interface.go000066400000000000000000000137761300374646400254160ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package cognitosynciface provides an interface to enable mocking the Amazon Cognito Sync service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package cognitosynciface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/cognitosync" ) // CognitoSyncAPI provides an interface to enable mocking the // cognitosync.CognitoSync service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Cognito Sync. // func myFunc(svc cognitosynciface.CognitoSyncAPI) bool { // // Make svc.BulkPublish request // } // // func main() { // sess := session.New() // svc := cognitosync.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockCognitoSyncClient struct { // cognitosynciface.CognitoSyncAPI // } // func (m *mockCognitoSyncClient) BulkPublish(input *cognitosync.BulkPublishInput) (*cognitosync.BulkPublishOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockCognitoSyncClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type CognitoSyncAPI interface { BulkPublishRequest(*cognitosync.BulkPublishInput) (*request.Request, *cognitosync.BulkPublishOutput) BulkPublish(*cognitosync.BulkPublishInput) (*cognitosync.BulkPublishOutput, error) DeleteDatasetRequest(*cognitosync.DeleteDatasetInput) (*request.Request, *cognitosync.DeleteDatasetOutput) DeleteDataset(*cognitosync.DeleteDatasetInput) (*cognitosync.DeleteDatasetOutput, error) DescribeDatasetRequest(*cognitosync.DescribeDatasetInput) (*request.Request, *cognitosync.DescribeDatasetOutput) DescribeDataset(*cognitosync.DescribeDatasetInput) (*cognitosync.DescribeDatasetOutput, error) DescribeIdentityPoolUsageRequest(*cognitosync.DescribeIdentityPoolUsageInput) (*request.Request, *cognitosync.DescribeIdentityPoolUsageOutput) DescribeIdentityPoolUsage(*cognitosync.DescribeIdentityPoolUsageInput) (*cognitosync.DescribeIdentityPoolUsageOutput, error) DescribeIdentityUsageRequest(*cognitosync.DescribeIdentityUsageInput) (*request.Request, *cognitosync.DescribeIdentityUsageOutput) DescribeIdentityUsage(*cognitosync.DescribeIdentityUsageInput) (*cognitosync.DescribeIdentityUsageOutput, error) GetBulkPublishDetailsRequest(*cognitosync.GetBulkPublishDetailsInput) (*request.Request, *cognitosync.GetBulkPublishDetailsOutput) GetBulkPublishDetails(*cognitosync.GetBulkPublishDetailsInput) (*cognitosync.GetBulkPublishDetailsOutput, error) GetCognitoEventsRequest(*cognitosync.GetCognitoEventsInput) (*request.Request, *cognitosync.GetCognitoEventsOutput) GetCognitoEvents(*cognitosync.GetCognitoEventsInput) (*cognitosync.GetCognitoEventsOutput, error) GetIdentityPoolConfigurationRequest(*cognitosync.GetIdentityPoolConfigurationInput) (*request.Request, *cognitosync.GetIdentityPoolConfigurationOutput) GetIdentityPoolConfiguration(*cognitosync.GetIdentityPoolConfigurationInput) (*cognitosync.GetIdentityPoolConfigurationOutput, error) ListDatasetsRequest(*cognitosync.ListDatasetsInput) (*request.Request, *cognitosync.ListDatasetsOutput) ListDatasets(*cognitosync.ListDatasetsInput) (*cognitosync.ListDatasetsOutput, error) ListIdentityPoolUsageRequest(*cognitosync.ListIdentityPoolUsageInput) (*request.Request, *cognitosync.ListIdentityPoolUsageOutput) ListIdentityPoolUsage(*cognitosync.ListIdentityPoolUsageInput) (*cognitosync.ListIdentityPoolUsageOutput, error) ListRecordsRequest(*cognitosync.ListRecordsInput) (*request.Request, *cognitosync.ListRecordsOutput) ListRecords(*cognitosync.ListRecordsInput) (*cognitosync.ListRecordsOutput, error) RegisterDeviceRequest(*cognitosync.RegisterDeviceInput) (*request.Request, *cognitosync.RegisterDeviceOutput) RegisterDevice(*cognitosync.RegisterDeviceInput) (*cognitosync.RegisterDeviceOutput, error) SetCognitoEventsRequest(*cognitosync.SetCognitoEventsInput) (*request.Request, *cognitosync.SetCognitoEventsOutput) SetCognitoEvents(*cognitosync.SetCognitoEventsInput) (*cognitosync.SetCognitoEventsOutput, error) SetIdentityPoolConfigurationRequest(*cognitosync.SetIdentityPoolConfigurationInput) (*request.Request, *cognitosync.SetIdentityPoolConfigurationOutput) SetIdentityPoolConfiguration(*cognitosync.SetIdentityPoolConfigurationInput) (*cognitosync.SetIdentityPoolConfigurationOutput, error) SubscribeToDatasetRequest(*cognitosync.SubscribeToDatasetInput) (*request.Request, *cognitosync.SubscribeToDatasetOutput) SubscribeToDataset(*cognitosync.SubscribeToDatasetInput) (*cognitosync.SubscribeToDatasetOutput, error) UnsubscribeFromDatasetRequest(*cognitosync.UnsubscribeFromDatasetInput) (*request.Request, *cognitosync.UnsubscribeFromDatasetOutput) UnsubscribeFromDataset(*cognitosync.UnsubscribeFromDatasetInput) (*cognitosync.UnsubscribeFromDatasetOutput, error) UpdateRecordsRequest(*cognitosync.UpdateRecordsInput) (*request.Request, *cognitosync.UpdateRecordsOutput) UpdateRecords(*cognitosync.UpdateRecordsInput) (*cognitosync.UpdateRecordsOutput, error) } var _ CognitoSyncAPI = (*cognitosync.CognitoSync)(nil) aws-sdk-go-1.4.22/service/cognitosync/examples_test.go000066400000000000000000000276711300374646400230030ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cognitosync_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/cognitosync" ) var _ time.Duration var _ bytes.Buffer func ExampleCognitoSync_BulkPublish() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitosync.New(sess) params := &cognitosync.BulkPublishInput{ IdentityPoolId: aws.String("IdentityPoolId"), // Required } resp, err := svc.BulkPublish(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoSync_DeleteDataset() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitosync.New(sess) params := &cognitosync.DeleteDatasetInput{ DatasetName: aws.String("DatasetName"), // Required IdentityId: aws.String("IdentityId"), // Required IdentityPoolId: aws.String("IdentityPoolId"), // Required } resp, err := svc.DeleteDataset(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoSync_DescribeDataset() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitosync.New(sess) params := &cognitosync.DescribeDatasetInput{ DatasetName: aws.String("DatasetName"), // Required IdentityId: aws.String("IdentityId"), // Required IdentityPoolId: aws.String("IdentityPoolId"), // Required } resp, err := svc.DescribeDataset(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoSync_DescribeIdentityPoolUsage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitosync.New(sess) params := &cognitosync.DescribeIdentityPoolUsageInput{ IdentityPoolId: aws.String("IdentityPoolId"), // Required } resp, err := svc.DescribeIdentityPoolUsage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoSync_DescribeIdentityUsage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitosync.New(sess) params := &cognitosync.DescribeIdentityUsageInput{ IdentityId: aws.String("IdentityId"), // Required IdentityPoolId: aws.String("IdentityPoolId"), // Required } resp, err := svc.DescribeIdentityUsage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoSync_GetBulkPublishDetails() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitosync.New(sess) params := &cognitosync.GetBulkPublishDetailsInput{ IdentityPoolId: aws.String("IdentityPoolId"), // Required } resp, err := svc.GetBulkPublishDetails(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoSync_GetCognitoEvents() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitosync.New(sess) params := &cognitosync.GetCognitoEventsInput{ IdentityPoolId: aws.String("IdentityPoolId"), // Required } resp, err := svc.GetCognitoEvents(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoSync_GetIdentityPoolConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitosync.New(sess) params := &cognitosync.GetIdentityPoolConfigurationInput{ IdentityPoolId: aws.String("IdentityPoolId"), // Required } resp, err := svc.GetIdentityPoolConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoSync_ListDatasets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitosync.New(sess) params := &cognitosync.ListDatasetsInput{ IdentityId: aws.String("IdentityId"), // Required IdentityPoolId: aws.String("IdentityPoolId"), // Required MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.ListDatasets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoSync_ListIdentityPoolUsage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitosync.New(sess) params := &cognitosync.ListIdentityPoolUsageInput{ MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.ListIdentityPoolUsage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoSync_ListRecords() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitosync.New(sess) params := &cognitosync.ListRecordsInput{ DatasetName: aws.String("DatasetName"), // Required IdentityId: aws.String("IdentityId"), // Required IdentityPoolId: aws.String("IdentityPoolId"), // Required LastSyncCount: aws.Int64(1), MaxResults: aws.Int64(1), NextToken: aws.String("String"), SyncSessionToken: aws.String("SyncSessionToken"), } resp, err := svc.ListRecords(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoSync_RegisterDevice() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitosync.New(sess) params := &cognitosync.RegisterDeviceInput{ IdentityId: aws.String("IdentityId"), // Required IdentityPoolId: aws.String("IdentityPoolId"), // Required Platform: aws.String("Platform"), // Required Token: aws.String("PushToken"), // Required } resp, err := svc.RegisterDevice(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoSync_SetCognitoEvents() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitosync.New(sess) params := &cognitosync.SetCognitoEventsInput{ Events: map[string]*string{ // Required "Key": aws.String("LambdaFunctionArn"), // Required // More values... }, IdentityPoolId: aws.String("IdentityPoolId"), // Required } resp, err := svc.SetCognitoEvents(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoSync_SetIdentityPoolConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitosync.New(sess) params := &cognitosync.SetIdentityPoolConfigurationInput{ IdentityPoolId: aws.String("IdentityPoolId"), // Required CognitoStreams: &cognitosync.CognitoStreams{ RoleArn: aws.String("AssumeRoleArn"), StreamName: aws.String("StreamName"), StreamingStatus: aws.String("StreamingStatus"), }, PushSync: &cognitosync.PushSync{ ApplicationArns: []*string{ aws.String("ApplicationArn"), // Required // More values... }, RoleArn: aws.String("AssumeRoleArn"), }, } resp, err := svc.SetIdentityPoolConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoSync_SubscribeToDataset() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitosync.New(sess) params := &cognitosync.SubscribeToDatasetInput{ DatasetName: aws.String("DatasetName"), // Required DeviceId: aws.String("DeviceId"), // Required IdentityId: aws.String("IdentityId"), // Required IdentityPoolId: aws.String("IdentityPoolId"), // Required } resp, err := svc.SubscribeToDataset(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoSync_UnsubscribeFromDataset() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitosync.New(sess) params := &cognitosync.UnsubscribeFromDatasetInput{ DatasetName: aws.String("DatasetName"), // Required DeviceId: aws.String("DeviceId"), // Required IdentityId: aws.String("IdentityId"), // Required IdentityPoolId: aws.String("IdentityPoolId"), // Required } resp, err := svc.UnsubscribeFromDataset(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleCognitoSync_UpdateRecords() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := cognitosync.New(sess) params := &cognitosync.UpdateRecordsInput{ DatasetName: aws.String("DatasetName"), // Required IdentityId: aws.String("IdentityId"), // Required IdentityPoolId: aws.String("IdentityPoolId"), // Required SyncSessionToken: aws.String("SyncSessionToken"), // Required ClientContext: aws.String("ClientContext"), DeviceId: aws.String("DeviceId"), RecordPatches: []*cognitosync.RecordPatch{ { // Required Key: aws.String("RecordKey"), // Required Op: aws.String("Operation"), // Required SyncCount: aws.Int64(1), // Required DeviceLastModifiedDate: aws.Time(time.Now()), Value: aws.String("RecordValue"), }, // More values... }, } resp, err := svc.UpdateRecords(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/cognitosync/service.go000066400000000000000000000077551300374646400215670ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package cognitosync import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) // Amazon Cognito Sync provides an AWS service and client library that enable // cross-device syncing of application-related user data. High-level client // libraries are available for both iOS and Android. You can use these libraries // to persist data locally so that it's available even if the device is offline. // Developer credentials don't need to be stored on the mobile device to access // the service. You can use Amazon Cognito to obtain a normalized user ID and // credentials. User data is persisted in a dataset that can store up to 1 MB // of key-value pairs, and you can have up to 20 datasets per user identity. // // With Amazon Cognito Sync, the data stored for each identity is accessible // only to credentials assigned to that identity. In order to use the Cognito // Sync service, you need to make API calls using credentials retrieved with // Amazon Cognito Identity service (http://docs.aws.amazon.com/cognitoidentity/latest/APIReference/Welcome.html). // // If you want to use Cognito Sync in an Android or iOS application, you will // probably want to make API calls via the AWS Mobile SDK. To learn more, see // the Developer Guide for Android (http://docs.aws.amazon.com/mobile/sdkforandroid/developerguide/cognito-sync.html) // and the Developer Guide for iOS (http://docs.aws.amazon.com/mobile/sdkforios/developerguide/cognito-sync.html). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type CognitoSync struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "cognito-sync" // New creates a new instance of the CognitoSync client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a CognitoSync client from just a session. // svc := cognitosync.New(mySession) // // // Create a CognitoSync client with additional configuration // svc := cognitosync.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *CognitoSync { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *CognitoSync { svc := &CognitoSync{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-06-30", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a CognitoSync operation and runs any // custom request initialization. func (c *CognitoSync) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/configservice/000077500000000000000000000000001300374646400200515ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/configservice/api.go000066400000000000000000005372151300374646400211660ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package configservice provides a client for AWS Config. package configservice import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opDeleteConfigRule = "DeleteConfigRule" // DeleteConfigRuleRequest generates a "aws/request.Request" representing the // client's request for the DeleteConfigRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteConfigRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteConfigRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteConfigRuleRequest method. // req, resp := client.DeleteConfigRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) DeleteConfigRuleRequest(input *DeleteConfigRuleInput) (req *request.Request, output *DeleteConfigRuleOutput) { op := &request.Operation{ Name: opDeleteConfigRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteConfigRuleInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteConfigRuleOutput{} req.Data = output return } // DeleteConfigRule API operation for AWS Config. // // Deletes the specified AWS Config rule and all of its evaluation results. // // AWS Config sets the state of a rule to DELETING until the deletion is complete. // You cannot update a rule while it is in this state. If you make a PutConfigRule // or DeleteConfigRule request for the rule, you will receive a ResourceInUseException. // // You can check the state of a rule by using the DescribeConfigRules request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation DeleteConfigRule for usage and error information. // // Returned Error Codes: // * NoSuchConfigRuleException // One or more AWS Config rules in the request are invalid. Verify that the // rule names are correct and try again. // // * ResourceInUseException // The rule is currently being deleted or the rule is deleting your evaluation // results. Try your request again later. // func (c *ConfigService) DeleteConfigRule(input *DeleteConfigRuleInput) (*DeleteConfigRuleOutput, error) { req, out := c.DeleteConfigRuleRequest(input) err := req.Send() return out, err } const opDeleteConfigurationRecorder = "DeleteConfigurationRecorder" // DeleteConfigurationRecorderRequest generates a "aws/request.Request" representing the // client's request for the DeleteConfigurationRecorder operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteConfigurationRecorder for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteConfigurationRecorder method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteConfigurationRecorderRequest method. // req, resp := client.DeleteConfigurationRecorderRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) DeleteConfigurationRecorderRequest(input *DeleteConfigurationRecorderInput) (req *request.Request, output *DeleteConfigurationRecorderOutput) { op := &request.Operation{ Name: opDeleteConfigurationRecorder, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteConfigurationRecorderInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteConfigurationRecorderOutput{} req.Data = output return } // DeleteConfigurationRecorder API operation for AWS Config. // // Deletes the configuration recorder. // // After the configuration recorder is deleted, AWS Config will not record resource // configuration changes until you create a new configuration recorder. // // This action does not delete the configuration information that was previously // recorded. You will be able to access the previously recorded information // by using the GetResourceConfigHistory action, but you will not be able to // access this information in the AWS Config console until you create a new // configuration recorder. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation DeleteConfigurationRecorder for usage and error information. // // Returned Error Codes: // * NoSuchConfigurationRecorderException // You have specified a configuration recorder that does not exist. // func (c *ConfigService) DeleteConfigurationRecorder(input *DeleteConfigurationRecorderInput) (*DeleteConfigurationRecorderOutput, error) { req, out := c.DeleteConfigurationRecorderRequest(input) err := req.Send() return out, err } const opDeleteDeliveryChannel = "DeleteDeliveryChannel" // DeleteDeliveryChannelRequest generates a "aws/request.Request" representing the // client's request for the DeleteDeliveryChannel operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDeliveryChannel for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDeliveryChannel method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDeliveryChannelRequest method. // req, resp := client.DeleteDeliveryChannelRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) DeleteDeliveryChannelRequest(input *DeleteDeliveryChannelInput) (req *request.Request, output *DeleteDeliveryChannelOutput) { op := &request.Operation{ Name: opDeleteDeliveryChannel, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDeliveryChannelInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteDeliveryChannelOutput{} req.Data = output return } // DeleteDeliveryChannel API operation for AWS Config. // // Deletes the delivery channel. // // Before you can delete the delivery channel, you must stop the configuration // recorder by using the StopConfigurationRecorder action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation DeleteDeliveryChannel for usage and error information. // // Returned Error Codes: // * NoSuchDeliveryChannelException // You have specified a delivery channel that does not exist. // // * LastDeliveryChannelDeleteFailedException // You cannot delete the delivery channel you specified because the configuration // recorder is running. // func (c *ConfigService) DeleteDeliveryChannel(input *DeleteDeliveryChannelInput) (*DeleteDeliveryChannelOutput, error) { req, out := c.DeleteDeliveryChannelRequest(input) err := req.Send() return out, err } const opDeleteEvaluationResults = "DeleteEvaluationResults" // DeleteEvaluationResultsRequest generates a "aws/request.Request" representing the // client's request for the DeleteEvaluationResults operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteEvaluationResults for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteEvaluationResults method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteEvaluationResultsRequest method. // req, resp := client.DeleteEvaluationResultsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) DeleteEvaluationResultsRequest(input *DeleteEvaluationResultsInput) (req *request.Request, output *DeleteEvaluationResultsOutput) { op := &request.Operation{ Name: opDeleteEvaluationResults, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteEvaluationResultsInput{} } req = c.newRequest(op, input, output) output = &DeleteEvaluationResultsOutput{} req.Data = output return } // DeleteEvaluationResults API operation for AWS Config. // // Deletes the evaluation results for the specified Config rule. You can specify // one Config rule per request. After you delete the evaluation results, you // can call the StartConfigRulesEvaluation API to start evaluating your AWS // resources against the rule. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation DeleteEvaluationResults for usage and error information. // // Returned Error Codes: // * NoSuchConfigRuleException // One or more AWS Config rules in the request are invalid. Verify that the // rule names are correct and try again. // // * ResourceInUseException // The rule is currently being deleted or the rule is deleting your evaluation // results. Try your request again later. // func (c *ConfigService) DeleteEvaluationResults(input *DeleteEvaluationResultsInput) (*DeleteEvaluationResultsOutput, error) { req, out := c.DeleteEvaluationResultsRequest(input) err := req.Send() return out, err } const opDeliverConfigSnapshot = "DeliverConfigSnapshot" // DeliverConfigSnapshotRequest generates a "aws/request.Request" representing the // client's request for the DeliverConfigSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeliverConfigSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeliverConfigSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeliverConfigSnapshotRequest method. // req, resp := client.DeliverConfigSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) DeliverConfigSnapshotRequest(input *DeliverConfigSnapshotInput) (req *request.Request, output *DeliverConfigSnapshotOutput) { op := &request.Operation{ Name: opDeliverConfigSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeliverConfigSnapshotInput{} } req = c.newRequest(op, input, output) output = &DeliverConfigSnapshotOutput{} req.Data = output return } // DeliverConfigSnapshot API operation for AWS Config. // // Schedules delivery of a configuration snapshot to the Amazon S3 bucket in // the specified delivery channel. After the delivery has started, AWS Config // sends following notifications using an Amazon SNS topic that you have specified. // // * Notification of starting the delivery. // // * Notification of delivery completed, if the delivery was successfully // completed. // // * Notification of delivery failure, if the delivery failed to complete. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation DeliverConfigSnapshot for usage and error information. // // Returned Error Codes: // * NoSuchDeliveryChannelException // You have specified a delivery channel that does not exist. // // * NoAvailableConfigurationRecorderException // There are no configuration recorders available to provide the role needed // to describe your resources. Create a configuration recorder. // // * NoRunningConfigurationRecorderException // There is no configuration recorder running. // func (c *ConfigService) DeliverConfigSnapshot(input *DeliverConfigSnapshotInput) (*DeliverConfigSnapshotOutput, error) { req, out := c.DeliverConfigSnapshotRequest(input) err := req.Send() return out, err } const opDescribeComplianceByConfigRule = "DescribeComplianceByConfigRule" // DescribeComplianceByConfigRuleRequest generates a "aws/request.Request" representing the // client's request for the DescribeComplianceByConfigRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeComplianceByConfigRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeComplianceByConfigRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeComplianceByConfigRuleRequest method. // req, resp := client.DescribeComplianceByConfigRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) DescribeComplianceByConfigRuleRequest(input *DescribeComplianceByConfigRuleInput) (req *request.Request, output *DescribeComplianceByConfigRuleOutput) { op := &request.Operation{ Name: opDescribeComplianceByConfigRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeComplianceByConfigRuleInput{} } req = c.newRequest(op, input, output) output = &DescribeComplianceByConfigRuleOutput{} req.Data = output return } // DescribeComplianceByConfigRule API operation for AWS Config. // // Indicates whether the specified AWS Config rules are compliant. If a rule // is noncompliant, this action returns the number of AWS resources that do // not comply with the rule. // // A rule is compliant if all of the evaluated resources comply with it, and // it is noncompliant if any of these resources do not comply. // // If AWS Config has no current evaluation results for the rule, it returns // INSUFFICIENT_DATA. This result might indicate one of the following conditions: // // * AWS Config has never invoked an evaluation for the rule. To check whether // it has, use the DescribeConfigRuleEvaluationStatus action to get the LastSuccessfulInvocationTime // and LastFailedInvocationTime. // // * The rule's AWS Lambda function is failing to send evaluation results // to AWS Config. Verify that the role that you assigned to your configuration // recorder includes the config:PutEvaluations permission. If the rule is // a custom rule, verify that the AWS Lambda execution role includes the // config:PutEvaluations permission. // // * The rule's AWS Lambda function has returned NOT_APPLICABLE for all evaluation // results. This can occur if the resources were deleted or removed from // the rule's scope. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation DescribeComplianceByConfigRule for usage and error information. // // Returned Error Codes: // * InvalidParameterValueException // One or more of the specified parameters are invalid. Verify that your parameters // are valid and try again. // // * NoSuchConfigRuleException // One or more AWS Config rules in the request are invalid. Verify that the // rule names are correct and try again. // func (c *ConfigService) DescribeComplianceByConfigRule(input *DescribeComplianceByConfigRuleInput) (*DescribeComplianceByConfigRuleOutput, error) { req, out := c.DescribeComplianceByConfigRuleRequest(input) err := req.Send() return out, err } const opDescribeComplianceByResource = "DescribeComplianceByResource" // DescribeComplianceByResourceRequest generates a "aws/request.Request" representing the // client's request for the DescribeComplianceByResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeComplianceByResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeComplianceByResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeComplianceByResourceRequest method. // req, resp := client.DescribeComplianceByResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) DescribeComplianceByResourceRequest(input *DescribeComplianceByResourceInput) (req *request.Request, output *DescribeComplianceByResourceOutput) { op := &request.Operation{ Name: opDescribeComplianceByResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeComplianceByResourceInput{} } req = c.newRequest(op, input, output) output = &DescribeComplianceByResourceOutput{} req.Data = output return } // DescribeComplianceByResource API operation for AWS Config. // // Indicates whether the specified AWS resources are compliant. If a resource // is noncompliant, this action returns the number of AWS Config rules that // the resource does not comply with. // // A resource is compliant if it complies with all the AWS Config rules that // evaluate it. It is noncompliant if it does not comply with one or more of // these rules. // // If AWS Config has no current evaluation results for the resource, it returns // INSUFFICIENT_DATA. This result might indicate one of the following conditions // about the rules that evaluate the resource: // // * AWS Config has never invoked an evaluation for the rule. To check whether // it has, use the DescribeConfigRuleEvaluationStatus action to get the LastSuccessfulInvocationTime // and LastFailedInvocationTime. // // * The rule's AWS Lambda function is failing to send evaluation results // to AWS Config. Verify that the role that you assigned to your configuration // recorder includes the config:PutEvaluations permission. If the rule is // a custom rule, verify that the AWS Lambda execution role includes the // config:PutEvaluations permission. // // * The rule's AWS Lambda function has returned NOT_APPLICABLE for all evaluation // results. This can occur if the resources were deleted or removed from // the rule's scope. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation DescribeComplianceByResource for usage and error information. // // Returned Error Codes: // * InvalidParameterValueException // One or more of the specified parameters are invalid. Verify that your parameters // are valid and try again. // // * InvalidNextTokenException // The specified next token is invalid. Specify the nextToken string that was // returned in the previous response to get the next page of results. // func (c *ConfigService) DescribeComplianceByResource(input *DescribeComplianceByResourceInput) (*DescribeComplianceByResourceOutput, error) { req, out := c.DescribeComplianceByResourceRequest(input) err := req.Send() return out, err } const opDescribeConfigRuleEvaluationStatus = "DescribeConfigRuleEvaluationStatus" // DescribeConfigRuleEvaluationStatusRequest generates a "aws/request.Request" representing the // client's request for the DescribeConfigRuleEvaluationStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeConfigRuleEvaluationStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeConfigRuleEvaluationStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeConfigRuleEvaluationStatusRequest method. // req, resp := client.DescribeConfigRuleEvaluationStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) DescribeConfigRuleEvaluationStatusRequest(input *DescribeConfigRuleEvaluationStatusInput) (req *request.Request, output *DescribeConfigRuleEvaluationStatusOutput) { op := &request.Operation{ Name: opDescribeConfigRuleEvaluationStatus, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeConfigRuleEvaluationStatusInput{} } req = c.newRequest(op, input, output) output = &DescribeConfigRuleEvaluationStatusOutput{} req.Data = output return } // DescribeConfigRuleEvaluationStatus API operation for AWS Config. // // Returns status information for each of your AWS managed Config rules. The // status includes information such as the last time AWS Config invoked the // rule, the last time AWS Config failed to invoke the rule, and the related // error for the last failure. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation DescribeConfigRuleEvaluationStatus for usage and error information. // // Returned Error Codes: // * NoSuchConfigRuleException // One or more AWS Config rules in the request are invalid. Verify that the // rule names are correct and try again. // func (c *ConfigService) DescribeConfigRuleEvaluationStatus(input *DescribeConfigRuleEvaluationStatusInput) (*DescribeConfigRuleEvaluationStatusOutput, error) { req, out := c.DescribeConfigRuleEvaluationStatusRequest(input) err := req.Send() return out, err } const opDescribeConfigRules = "DescribeConfigRules" // DescribeConfigRulesRequest generates a "aws/request.Request" representing the // client's request for the DescribeConfigRules operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeConfigRules for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeConfigRules method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeConfigRulesRequest method. // req, resp := client.DescribeConfigRulesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) DescribeConfigRulesRequest(input *DescribeConfigRulesInput) (req *request.Request, output *DescribeConfigRulesOutput) { op := &request.Operation{ Name: opDescribeConfigRules, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeConfigRulesInput{} } req = c.newRequest(op, input, output) output = &DescribeConfigRulesOutput{} req.Data = output return } // DescribeConfigRules API operation for AWS Config. // // Returns details about your AWS Config rules. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation DescribeConfigRules for usage and error information. // // Returned Error Codes: // * NoSuchConfigRuleException // One or more AWS Config rules in the request are invalid. Verify that the // rule names are correct and try again. // func (c *ConfigService) DescribeConfigRules(input *DescribeConfigRulesInput) (*DescribeConfigRulesOutput, error) { req, out := c.DescribeConfigRulesRequest(input) err := req.Send() return out, err } const opDescribeConfigurationRecorderStatus = "DescribeConfigurationRecorderStatus" // DescribeConfigurationRecorderStatusRequest generates a "aws/request.Request" representing the // client's request for the DescribeConfigurationRecorderStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeConfigurationRecorderStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeConfigurationRecorderStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeConfigurationRecorderStatusRequest method. // req, resp := client.DescribeConfigurationRecorderStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) DescribeConfigurationRecorderStatusRequest(input *DescribeConfigurationRecorderStatusInput) (req *request.Request, output *DescribeConfigurationRecorderStatusOutput) { op := &request.Operation{ Name: opDescribeConfigurationRecorderStatus, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeConfigurationRecorderStatusInput{} } req = c.newRequest(op, input, output) output = &DescribeConfigurationRecorderStatusOutput{} req.Data = output return } // DescribeConfigurationRecorderStatus API operation for AWS Config. // // Returns the current status of the specified configuration recorder. If a // configuration recorder is not specified, this action returns the status of // all configuration recorder associated with the account. // // Currently, you can specify only one configuration recorder per region in // your account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation DescribeConfigurationRecorderStatus for usage and error information. // // Returned Error Codes: // * NoSuchConfigurationRecorderException // You have specified a configuration recorder that does not exist. // func (c *ConfigService) DescribeConfigurationRecorderStatus(input *DescribeConfigurationRecorderStatusInput) (*DescribeConfigurationRecorderStatusOutput, error) { req, out := c.DescribeConfigurationRecorderStatusRequest(input) err := req.Send() return out, err } const opDescribeConfigurationRecorders = "DescribeConfigurationRecorders" // DescribeConfigurationRecordersRequest generates a "aws/request.Request" representing the // client's request for the DescribeConfigurationRecorders operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeConfigurationRecorders for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeConfigurationRecorders method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeConfigurationRecordersRequest method. // req, resp := client.DescribeConfigurationRecordersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) DescribeConfigurationRecordersRequest(input *DescribeConfigurationRecordersInput) (req *request.Request, output *DescribeConfigurationRecordersOutput) { op := &request.Operation{ Name: opDescribeConfigurationRecorders, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeConfigurationRecordersInput{} } req = c.newRequest(op, input, output) output = &DescribeConfigurationRecordersOutput{} req.Data = output return } // DescribeConfigurationRecorders API operation for AWS Config. // // Returns the details for the specified configuration recorders. If the configuration // recorder is not specified, this action returns the details for all configuration // recorders associated with the account. // // Currently, you can specify only one configuration recorder per region in // your account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation DescribeConfigurationRecorders for usage and error information. // // Returned Error Codes: // * NoSuchConfigurationRecorderException // You have specified a configuration recorder that does not exist. // func (c *ConfigService) DescribeConfigurationRecorders(input *DescribeConfigurationRecordersInput) (*DescribeConfigurationRecordersOutput, error) { req, out := c.DescribeConfigurationRecordersRequest(input) err := req.Send() return out, err } const opDescribeDeliveryChannelStatus = "DescribeDeliveryChannelStatus" // DescribeDeliveryChannelStatusRequest generates a "aws/request.Request" representing the // client's request for the DescribeDeliveryChannelStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDeliveryChannelStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDeliveryChannelStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDeliveryChannelStatusRequest method. // req, resp := client.DescribeDeliveryChannelStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) DescribeDeliveryChannelStatusRequest(input *DescribeDeliveryChannelStatusInput) (req *request.Request, output *DescribeDeliveryChannelStatusOutput) { op := &request.Operation{ Name: opDescribeDeliveryChannelStatus, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeDeliveryChannelStatusInput{} } req = c.newRequest(op, input, output) output = &DescribeDeliveryChannelStatusOutput{} req.Data = output return } // DescribeDeliveryChannelStatus API operation for AWS Config. // // Returns the current status of the specified delivery channel. If a delivery // channel is not specified, this action returns the current status of all delivery // channels associated with the account. // // Currently, you can specify only one delivery channel per region in your account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation DescribeDeliveryChannelStatus for usage and error information. // // Returned Error Codes: // * NoSuchDeliveryChannelException // You have specified a delivery channel that does not exist. // func (c *ConfigService) DescribeDeliveryChannelStatus(input *DescribeDeliveryChannelStatusInput) (*DescribeDeliveryChannelStatusOutput, error) { req, out := c.DescribeDeliveryChannelStatusRequest(input) err := req.Send() return out, err } const opDescribeDeliveryChannels = "DescribeDeliveryChannels" // DescribeDeliveryChannelsRequest generates a "aws/request.Request" representing the // client's request for the DescribeDeliveryChannels operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDeliveryChannels for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDeliveryChannels method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDeliveryChannelsRequest method. // req, resp := client.DescribeDeliveryChannelsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) DescribeDeliveryChannelsRequest(input *DescribeDeliveryChannelsInput) (req *request.Request, output *DescribeDeliveryChannelsOutput) { op := &request.Operation{ Name: opDescribeDeliveryChannels, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeDeliveryChannelsInput{} } req = c.newRequest(op, input, output) output = &DescribeDeliveryChannelsOutput{} req.Data = output return } // DescribeDeliveryChannels API operation for AWS Config. // // Returns details about the specified delivery channel. If a delivery channel // is not specified, this action returns the details of all delivery channels // associated with the account. // // Currently, you can specify only one delivery channel per region in your account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation DescribeDeliveryChannels for usage and error information. // // Returned Error Codes: // * NoSuchDeliveryChannelException // You have specified a delivery channel that does not exist. // func (c *ConfigService) DescribeDeliveryChannels(input *DescribeDeliveryChannelsInput) (*DescribeDeliveryChannelsOutput, error) { req, out := c.DescribeDeliveryChannelsRequest(input) err := req.Send() return out, err } const opGetComplianceDetailsByConfigRule = "GetComplianceDetailsByConfigRule" // GetComplianceDetailsByConfigRuleRequest generates a "aws/request.Request" representing the // client's request for the GetComplianceDetailsByConfigRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetComplianceDetailsByConfigRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetComplianceDetailsByConfigRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetComplianceDetailsByConfigRuleRequest method. // req, resp := client.GetComplianceDetailsByConfigRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) GetComplianceDetailsByConfigRuleRequest(input *GetComplianceDetailsByConfigRuleInput) (req *request.Request, output *GetComplianceDetailsByConfigRuleOutput) { op := &request.Operation{ Name: opGetComplianceDetailsByConfigRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetComplianceDetailsByConfigRuleInput{} } req = c.newRequest(op, input, output) output = &GetComplianceDetailsByConfigRuleOutput{} req.Data = output return } // GetComplianceDetailsByConfigRule API operation for AWS Config. // // Returns the evaluation results for the specified AWS Config rule. The results // indicate which AWS resources were evaluated by the rule, when each resource // was last evaluated, and whether each resource complies with the rule. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation GetComplianceDetailsByConfigRule for usage and error information. // // Returned Error Codes: // * InvalidParameterValueException // One or more of the specified parameters are invalid. Verify that your parameters // are valid and try again. // // * InvalidNextTokenException // The specified next token is invalid. Specify the nextToken string that was // returned in the previous response to get the next page of results. // // * NoSuchConfigRuleException // One or more AWS Config rules in the request are invalid. Verify that the // rule names are correct and try again. // func (c *ConfigService) GetComplianceDetailsByConfigRule(input *GetComplianceDetailsByConfigRuleInput) (*GetComplianceDetailsByConfigRuleOutput, error) { req, out := c.GetComplianceDetailsByConfigRuleRequest(input) err := req.Send() return out, err } const opGetComplianceDetailsByResource = "GetComplianceDetailsByResource" // GetComplianceDetailsByResourceRequest generates a "aws/request.Request" representing the // client's request for the GetComplianceDetailsByResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetComplianceDetailsByResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetComplianceDetailsByResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetComplianceDetailsByResourceRequest method. // req, resp := client.GetComplianceDetailsByResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) GetComplianceDetailsByResourceRequest(input *GetComplianceDetailsByResourceInput) (req *request.Request, output *GetComplianceDetailsByResourceOutput) { op := &request.Operation{ Name: opGetComplianceDetailsByResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetComplianceDetailsByResourceInput{} } req = c.newRequest(op, input, output) output = &GetComplianceDetailsByResourceOutput{} req.Data = output return } // GetComplianceDetailsByResource API operation for AWS Config. // // Returns the evaluation results for the specified AWS resource. The results // indicate which AWS Config rules were used to evaluate the resource, when // each rule was last used, and whether the resource complies with each rule. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation GetComplianceDetailsByResource for usage and error information. // // Returned Error Codes: // * InvalidParameterValueException // One or more of the specified parameters are invalid. Verify that your parameters // are valid and try again. // func (c *ConfigService) GetComplianceDetailsByResource(input *GetComplianceDetailsByResourceInput) (*GetComplianceDetailsByResourceOutput, error) { req, out := c.GetComplianceDetailsByResourceRequest(input) err := req.Send() return out, err } const opGetComplianceSummaryByConfigRule = "GetComplianceSummaryByConfigRule" // GetComplianceSummaryByConfigRuleRequest generates a "aws/request.Request" representing the // client's request for the GetComplianceSummaryByConfigRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetComplianceSummaryByConfigRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetComplianceSummaryByConfigRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetComplianceSummaryByConfigRuleRequest method. // req, resp := client.GetComplianceSummaryByConfigRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) GetComplianceSummaryByConfigRuleRequest(input *GetComplianceSummaryByConfigRuleInput) (req *request.Request, output *GetComplianceSummaryByConfigRuleOutput) { op := &request.Operation{ Name: opGetComplianceSummaryByConfigRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetComplianceSummaryByConfigRuleInput{} } req = c.newRequest(op, input, output) output = &GetComplianceSummaryByConfigRuleOutput{} req.Data = output return } // GetComplianceSummaryByConfigRule API operation for AWS Config. // // Returns the number of AWS Config rules that are compliant and noncompliant, // up to a maximum of 25 for each. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation GetComplianceSummaryByConfigRule for usage and error information. func (c *ConfigService) GetComplianceSummaryByConfigRule(input *GetComplianceSummaryByConfigRuleInput) (*GetComplianceSummaryByConfigRuleOutput, error) { req, out := c.GetComplianceSummaryByConfigRuleRequest(input) err := req.Send() return out, err } const opGetComplianceSummaryByResourceType = "GetComplianceSummaryByResourceType" // GetComplianceSummaryByResourceTypeRequest generates a "aws/request.Request" representing the // client's request for the GetComplianceSummaryByResourceType operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetComplianceSummaryByResourceType for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetComplianceSummaryByResourceType method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetComplianceSummaryByResourceTypeRequest method. // req, resp := client.GetComplianceSummaryByResourceTypeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) GetComplianceSummaryByResourceTypeRequest(input *GetComplianceSummaryByResourceTypeInput) (req *request.Request, output *GetComplianceSummaryByResourceTypeOutput) { op := &request.Operation{ Name: opGetComplianceSummaryByResourceType, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetComplianceSummaryByResourceTypeInput{} } req = c.newRequest(op, input, output) output = &GetComplianceSummaryByResourceTypeOutput{} req.Data = output return } // GetComplianceSummaryByResourceType API operation for AWS Config. // // Returns the number of resources that are compliant and the number that are // noncompliant. You can specify one or more resource types to get these numbers // for each resource type. The maximum number returned is 100. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation GetComplianceSummaryByResourceType for usage and error information. // // Returned Error Codes: // * InvalidParameterValueException // One or more of the specified parameters are invalid. Verify that your parameters // are valid and try again. // func (c *ConfigService) GetComplianceSummaryByResourceType(input *GetComplianceSummaryByResourceTypeInput) (*GetComplianceSummaryByResourceTypeOutput, error) { req, out := c.GetComplianceSummaryByResourceTypeRequest(input) err := req.Send() return out, err } const opGetResourceConfigHistory = "GetResourceConfigHistory" // GetResourceConfigHistoryRequest generates a "aws/request.Request" representing the // client's request for the GetResourceConfigHistory operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetResourceConfigHistory for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetResourceConfigHistory method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetResourceConfigHistoryRequest method. // req, resp := client.GetResourceConfigHistoryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) GetResourceConfigHistoryRequest(input *GetResourceConfigHistoryInput) (req *request.Request, output *GetResourceConfigHistoryOutput) { op := &request.Operation{ Name: opGetResourceConfigHistory, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &GetResourceConfigHistoryInput{} } req = c.newRequest(op, input, output) output = &GetResourceConfigHistoryOutput{} req.Data = output return } // GetResourceConfigHistory API operation for AWS Config. // // Returns a list of configuration items for the specified resource. The list // contains details about each state of the resource during the specified time // interval. // // The response is paginated, and by default, AWS Config returns a limit of // 10 configuration items per page. You can customize this number with the limit // parameter. The response includes a nextToken string, and to get the next // page of results, run the request again and enter this string for the nextToken // parameter. // // Each call to the API is limited to span a duration of seven days. It is likely // that the number of records returned is smaller than the specified limit. // In such cases, you can make another call, using the nextToken. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation GetResourceConfigHistory for usage and error information. // // Returned Error Codes: // * ValidationException // The requested action is not valid. // // * InvalidTimeRangeException // The specified time range is not valid. The earlier time is not chronologically // before the later time. // // * InvalidLimitException // The specified limit is outside the allowable range. // // * InvalidNextTokenException // The specified next token is invalid. Specify the nextToken string that was // returned in the previous response to get the next page of results. // // * NoAvailableConfigurationRecorderException // There are no configuration recorders available to provide the role needed // to describe your resources. Create a configuration recorder. // // * ResourceNotDiscoveredException // You have specified a resource that is either unknown or has not been discovered. // func (c *ConfigService) GetResourceConfigHistory(input *GetResourceConfigHistoryInput) (*GetResourceConfigHistoryOutput, error) { req, out := c.GetResourceConfigHistoryRequest(input) err := req.Send() return out, err } // GetResourceConfigHistoryPages iterates over the pages of a GetResourceConfigHistory operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetResourceConfigHistory method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetResourceConfigHistory operation. // pageNum := 0 // err := client.GetResourceConfigHistoryPages(params, // func(page *GetResourceConfigHistoryOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ConfigService) GetResourceConfigHistoryPages(input *GetResourceConfigHistoryInput, fn func(p *GetResourceConfigHistoryOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetResourceConfigHistoryRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetResourceConfigHistoryOutput), lastPage) }) } const opListDiscoveredResources = "ListDiscoveredResources" // ListDiscoveredResourcesRequest generates a "aws/request.Request" representing the // client's request for the ListDiscoveredResources operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDiscoveredResources for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDiscoveredResources method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDiscoveredResourcesRequest method. // req, resp := client.ListDiscoveredResourcesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) ListDiscoveredResourcesRequest(input *ListDiscoveredResourcesInput) (req *request.Request, output *ListDiscoveredResourcesOutput) { op := &request.Operation{ Name: opListDiscoveredResources, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListDiscoveredResourcesInput{} } req = c.newRequest(op, input, output) output = &ListDiscoveredResourcesOutput{} req.Data = output return } // ListDiscoveredResources API operation for AWS Config. // // Accepts a resource type and returns a list of resource identifiers for the // resources of that type. A resource identifier includes the resource type, // ID, and (if available) the custom resource name. The results consist of resources // that AWS Config has discovered, including those that AWS Config is not currently // recording. You can narrow the results to include only resources that have // specific resource IDs or a resource name. // // You can specify either resource IDs or a resource name but not both in the // same request. // // The response is paginated, and by default AWS Config lists 100 resource identifiers // on each page. You can customize this number with the limit parameter. The // response includes a nextToken string, and to get the next page of results, // run the request again and enter this string for the nextToken parameter. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation ListDiscoveredResources for usage and error information. // // Returned Error Codes: // * ValidationException // The requested action is not valid. // // * InvalidLimitException // The specified limit is outside the allowable range. // // * InvalidNextTokenException // The specified next token is invalid. Specify the nextToken string that was // returned in the previous response to get the next page of results. // // * NoAvailableConfigurationRecorderException // There are no configuration recorders available to provide the role needed // to describe your resources. Create a configuration recorder. // func (c *ConfigService) ListDiscoveredResources(input *ListDiscoveredResourcesInput) (*ListDiscoveredResourcesOutput, error) { req, out := c.ListDiscoveredResourcesRequest(input) err := req.Send() return out, err } const opPutConfigRule = "PutConfigRule" // PutConfigRuleRequest generates a "aws/request.Request" representing the // client's request for the PutConfigRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutConfigRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutConfigRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutConfigRuleRequest method. // req, resp := client.PutConfigRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) PutConfigRuleRequest(input *PutConfigRuleInput) (req *request.Request, output *PutConfigRuleOutput) { op := &request.Operation{ Name: opPutConfigRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutConfigRuleInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutConfigRuleOutput{} req.Data = output return } // PutConfigRule API operation for AWS Config. // // Adds or updates an AWS Config rule for evaluating whether your AWS resources // comply with your desired configurations. // // You can use this action for custom Config rules and AWS managed Config rules. // A custom Config rule is a rule that you develop and maintain. An AWS managed // Config rule is a customizable, predefined rule that AWS Config provides. // // If you are adding a new custom Config rule, you must first create the AWS // Lambda function that the rule invokes to evaluate your resources. When you // use the PutConfigRule action to add the rule to AWS Config, you must specify // the Amazon Resource Name (ARN) that AWS Lambda assigns to the function. Specify // the ARN for the SourceIdentifier key. This key is part of the Source object, // which is part of the ConfigRule object. // // If you are adding a new AWS managed Config rule, specify the rule's identifier // for the SourceIdentifier key. To reference AWS managed Config rule identifiers, // see Using AWS Managed Config Rules (http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_use-managed-rules.html). // // For any new rule that you add, specify the ConfigRuleName in the ConfigRule // object. Do not specify the ConfigRuleArn or the ConfigRuleId. These values // are generated by AWS Config for new rules. // // If you are updating a rule that you added previously, you can specify the // rule by ConfigRuleName, ConfigRuleId, or ConfigRuleArn in the ConfigRule // data type that you use in this request. // // The maximum number of rules that AWS Config supports is 25. // // For more information about developing and using AWS Config rules, see Evaluating // AWS Resource Configurations with AWS Config (http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html) // in the AWS Config Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation PutConfigRule for usage and error information. // // Returned Error Codes: // * InvalidParameterValueException // One or more of the specified parameters are invalid. Verify that your parameters // are valid and try again. // // * MaxNumberOfConfigRulesExceededException // Failed to add the AWS Config rule because the account already contains the // maximum number of 25 rules. Consider deleting any deactivated rules before // adding new rules. // // * ResourceInUseException // The rule is currently being deleted or the rule is deleting your evaluation // results. Try your request again later. // // * InsufficientPermissionsException // Indicates one of the following errors: // // * The rule cannot be created because the IAM role assigned to AWS Config // lacks permissions to perform the config:Put* action. // // * The AWS Lambda function cannot be invoked. Check the function ARN, and // check the function's permissions. // // * NoAvailableConfigurationRecorderException // There are no configuration recorders available to provide the role needed // to describe your resources. Create a configuration recorder. // func (c *ConfigService) PutConfigRule(input *PutConfigRuleInput) (*PutConfigRuleOutput, error) { req, out := c.PutConfigRuleRequest(input) err := req.Send() return out, err } const opPutConfigurationRecorder = "PutConfigurationRecorder" // PutConfigurationRecorderRequest generates a "aws/request.Request" representing the // client's request for the PutConfigurationRecorder operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutConfigurationRecorder for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutConfigurationRecorder method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutConfigurationRecorderRequest method. // req, resp := client.PutConfigurationRecorderRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) PutConfigurationRecorderRequest(input *PutConfigurationRecorderInput) (req *request.Request, output *PutConfigurationRecorderOutput) { op := &request.Operation{ Name: opPutConfigurationRecorder, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutConfigurationRecorderInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutConfigurationRecorderOutput{} req.Data = output return } // PutConfigurationRecorder API operation for AWS Config. // // Creates a new configuration recorder to record the selected resource configurations. // // You can use this action to change the role roleARN and/or the recordingGroup // of an existing recorder. To change the role, call the action on the existing // configuration recorder and specify a role. // // Currently, you can specify only one configuration recorder per region in // your account. // // If ConfigurationRecorder does not have the recordingGroup parameter specified, // the default is to record all supported resource types. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation PutConfigurationRecorder for usage and error information. // // Returned Error Codes: // * MaxNumberOfConfigurationRecordersExceededException // You have reached the limit on the number of recorders you can create. // // * InvalidConfigurationRecorderNameException // You have provided a configuration recorder name that is not valid. // // * InvalidRoleException // You have provided a null or empty role ARN. // // * InvalidRecordingGroupException // AWS Config throws an exception if the recording group does not contain a // valid list of resource types. Invalid values could also be incorrectly formatted. // func (c *ConfigService) PutConfigurationRecorder(input *PutConfigurationRecorderInput) (*PutConfigurationRecorderOutput, error) { req, out := c.PutConfigurationRecorderRequest(input) err := req.Send() return out, err } const opPutDeliveryChannel = "PutDeliveryChannel" // PutDeliveryChannelRequest generates a "aws/request.Request" representing the // client's request for the PutDeliveryChannel operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutDeliveryChannel for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutDeliveryChannel method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutDeliveryChannelRequest method. // req, resp := client.PutDeliveryChannelRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) PutDeliveryChannelRequest(input *PutDeliveryChannelInput) (req *request.Request, output *PutDeliveryChannelOutput) { op := &request.Operation{ Name: opPutDeliveryChannel, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutDeliveryChannelInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutDeliveryChannelOutput{} req.Data = output return } // PutDeliveryChannel API operation for AWS Config. // // Creates a delivery channel object to deliver configuration information to // an Amazon S3 bucket and Amazon SNS topic. // // Before you can create a delivery channel, you must create a configuration // recorder. // // You can use this action to change the Amazon S3 bucket or an Amazon SNS topic // of the existing delivery channel. To change the Amazon S3 bucket or an Amazon // SNS topic, call this action and specify the changed values for the S3 bucket // and the SNS topic. If you specify a different value for either the S3 bucket // or the SNS topic, this action will keep the existing value for the parameter // that is not changed. // // You can have only one delivery channel per region in your account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation PutDeliveryChannel for usage and error information. // // Returned Error Codes: // * MaxNumberOfDeliveryChannelsExceededException // You have reached the limit on the number of delivery channels you can create. // // * NoAvailableConfigurationRecorderException // There are no configuration recorders available to provide the role needed // to describe your resources. Create a configuration recorder. // // * InvalidDeliveryChannelNameException // The specified delivery channel name is not valid. // // * NoSuchBucketException // The specified Amazon S3 bucket does not exist. // // * InvalidS3KeyPrefixException // The specified Amazon S3 key prefix is not valid. // // * InvalidSNSTopicARNException // The specified Amazon SNS topic does not exist. // // * InsufficientDeliveryPolicyException // Your Amazon S3 bucket policy does not permit AWS Config to write to it. // func (c *ConfigService) PutDeliveryChannel(input *PutDeliveryChannelInput) (*PutDeliveryChannelOutput, error) { req, out := c.PutDeliveryChannelRequest(input) err := req.Send() return out, err } const opPutEvaluations = "PutEvaluations" // PutEvaluationsRequest generates a "aws/request.Request" representing the // client's request for the PutEvaluations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutEvaluations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutEvaluations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutEvaluationsRequest method. // req, resp := client.PutEvaluationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) PutEvaluationsRequest(input *PutEvaluationsInput) (req *request.Request, output *PutEvaluationsOutput) { op := &request.Operation{ Name: opPutEvaluations, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutEvaluationsInput{} } req = c.newRequest(op, input, output) output = &PutEvaluationsOutput{} req.Data = output return } // PutEvaluations API operation for AWS Config. // // Used by an AWS Lambda function to deliver evaluation results to AWS Config. // This action is required in every AWS Lambda function that is invoked by an // AWS Config rule. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation PutEvaluations for usage and error information. // // Returned Error Codes: // * InvalidParameterValueException // One or more of the specified parameters are invalid. Verify that your parameters // are valid and try again. // // * InvalidResultTokenException // The result token is invalid. // // * NoSuchConfigRuleException // One or more AWS Config rules in the request are invalid. Verify that the // rule names are correct and try again. // func (c *ConfigService) PutEvaluations(input *PutEvaluationsInput) (*PutEvaluationsOutput, error) { req, out := c.PutEvaluationsRequest(input) err := req.Send() return out, err } const opStartConfigRulesEvaluation = "StartConfigRulesEvaluation" // StartConfigRulesEvaluationRequest generates a "aws/request.Request" representing the // client's request for the StartConfigRulesEvaluation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StartConfigRulesEvaluation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StartConfigRulesEvaluation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StartConfigRulesEvaluationRequest method. // req, resp := client.StartConfigRulesEvaluationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) StartConfigRulesEvaluationRequest(input *StartConfigRulesEvaluationInput) (req *request.Request, output *StartConfigRulesEvaluationOutput) { op := &request.Operation{ Name: opStartConfigRulesEvaluation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartConfigRulesEvaluationInput{} } req = c.newRequest(op, input, output) output = &StartConfigRulesEvaluationOutput{} req.Data = output return } // StartConfigRulesEvaluation API operation for AWS Config. // // Evaluates your resources against the specified Config rules. You can specify // up to 25 Config rules per request. // // An existing StartConfigRulesEvaluation call must complete for the specified // rules before you can call the API again. If you chose to have AWS Config // stream to an Amazon SNS topic, you will receive a ConfigRuleEvaluationStarted // notification when the evaluation starts. // // You don't need to call the StartConfigRulesEvaluation API to run an evaluation // for a new rule. When you create a new rule, AWS Config automatically evaluates // your resources against the rule. // // The StartConfigRulesEvaluation API is useful if you want to run on-demand // evaluations, such as the following example: // // You have a custom rule that evaluates your IAM resources every 24 hours. // // You update your Lambda function to add additional conditions to your rule. // // Instead of waiting for the next periodic evaluation, you call the StartConfigRulesEvaluation // API. // // AWS Config invokes your Lambda function and evaluates your IAM resources. // // Your custom rule will still run periodic evaluations every 24 hours. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation StartConfigRulesEvaluation for usage and error information. // // Returned Error Codes: // * NoSuchConfigRuleException // One or more AWS Config rules in the request are invalid. Verify that the // rule names are correct and try again. // // * LimitExceededException // This exception is thrown if an evaluation is in progress or if you call the // StartConfigRulesEvaluation API more than once per minute. // // * ResourceInUseException // The rule is currently being deleted or the rule is deleting your evaluation // results. Try your request again later. // // * InvalidParameterValueException // One or more of the specified parameters are invalid. Verify that your parameters // are valid and try again. // func (c *ConfigService) StartConfigRulesEvaluation(input *StartConfigRulesEvaluationInput) (*StartConfigRulesEvaluationOutput, error) { req, out := c.StartConfigRulesEvaluationRequest(input) err := req.Send() return out, err } const opStartConfigurationRecorder = "StartConfigurationRecorder" // StartConfigurationRecorderRequest generates a "aws/request.Request" representing the // client's request for the StartConfigurationRecorder operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StartConfigurationRecorder for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StartConfigurationRecorder method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StartConfigurationRecorderRequest method. // req, resp := client.StartConfigurationRecorderRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) StartConfigurationRecorderRequest(input *StartConfigurationRecorderInput) (req *request.Request, output *StartConfigurationRecorderOutput) { op := &request.Operation{ Name: opStartConfigurationRecorder, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartConfigurationRecorderInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &StartConfigurationRecorderOutput{} req.Data = output return } // StartConfigurationRecorder API operation for AWS Config. // // Starts recording configurations of the AWS resources you have selected to // record in your AWS account. // // You must have created at least one delivery channel to successfully start // the configuration recorder. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation StartConfigurationRecorder for usage and error information. // // Returned Error Codes: // * NoSuchConfigurationRecorderException // You have specified a configuration recorder that does not exist. // // * NoAvailableDeliveryChannelException // There is no delivery channel available to record configurations. // func (c *ConfigService) StartConfigurationRecorder(input *StartConfigurationRecorderInput) (*StartConfigurationRecorderOutput, error) { req, out := c.StartConfigurationRecorderRequest(input) err := req.Send() return out, err } const opStopConfigurationRecorder = "StopConfigurationRecorder" // StopConfigurationRecorderRequest generates a "aws/request.Request" representing the // client's request for the StopConfigurationRecorder operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StopConfigurationRecorder for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StopConfigurationRecorder method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StopConfigurationRecorderRequest method. // req, resp := client.StopConfigurationRecorderRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ConfigService) StopConfigurationRecorderRequest(input *StopConfigurationRecorderInput) (req *request.Request, output *StopConfigurationRecorderOutput) { op := &request.Operation{ Name: opStopConfigurationRecorder, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StopConfigurationRecorderInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &StopConfigurationRecorderOutput{} req.Data = output return } // StopConfigurationRecorder API operation for AWS Config. // // Stops recording configurations of the AWS resources you have selected to // record in your AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Config's // API operation StopConfigurationRecorder for usage and error information. // // Returned Error Codes: // * NoSuchConfigurationRecorderException // You have specified a configuration recorder that does not exist. // func (c *ConfigService) StopConfigurationRecorder(input *StopConfigurationRecorderInput) (*StopConfigurationRecorderOutput, error) { req, out := c.StopConfigurationRecorderRequest(input) err := req.Send() return out, err } // Indicates whether an AWS resource or AWS Config rule is compliant and provides // the number of contributors that affect the compliance. type Compliance struct { _ struct{} `type:"structure"` // The number of AWS resources or AWS Config rules that cause a result of NON_COMPLIANT, // up to a maximum number. ComplianceContributorCount *ComplianceContributorCount `type:"structure"` // Indicates whether an AWS resource or AWS Config rule is compliant. // // A resource is compliant if it complies with all of the AWS Config rules that // evaluate it, and it is noncompliant if it does not comply with one or more // of these rules. // // A rule is compliant if all of the resources that the rule evaluates comply // with it, and it is noncompliant if any of these resources do not comply. // // AWS Config returns the INSUFFICIENT_DATA value when no evaluation results // are available for the AWS resource or Config rule. // // For the Compliance data type, AWS Config supports only COMPLIANT, NON_COMPLIANT, // and INSUFFICIENT_DATA values. AWS Config does not support the NOT_APPLICABLE // value for the Compliance data type. ComplianceType *string `type:"string" enum:"ComplianceType"` } // String returns the string representation func (s Compliance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Compliance) GoString() string { return s.String() } // Indicates whether an AWS Config rule is compliant. A rule is compliant if // all of the resources that the rule evaluated comply with it, and it is noncompliant // if any of these resources do not comply. type ComplianceByConfigRule struct { _ struct{} `type:"structure"` // Indicates whether the AWS Config rule is compliant. Compliance *Compliance `type:"structure"` // The name of the AWS Config rule. ConfigRuleName *string `min:"1" type:"string"` } // String returns the string representation func (s ComplianceByConfigRule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ComplianceByConfigRule) GoString() string { return s.String() } // Indicates whether an AWS resource that is evaluated according to one or more // AWS Config rules is compliant. A resource is compliant if it complies with // all of the rules that evaluate it, and it is noncompliant if it does not // comply with one or more of these rules. type ComplianceByResource struct { _ struct{} `type:"structure"` // Indicates whether the AWS resource complies with all of the AWS Config rules // that evaluated it. Compliance *Compliance `type:"structure"` // The ID of the AWS resource that was evaluated. ResourceId *string `min:"1" type:"string"` // The type of the AWS resource that was evaluated. ResourceType *string `min:"1" type:"string"` } // String returns the string representation func (s ComplianceByResource) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ComplianceByResource) GoString() string { return s.String() } // The number of AWS resources or AWS Config rules responsible for the current // compliance of the item, up to a maximum number. type ComplianceContributorCount struct { _ struct{} `type:"structure"` // Indicates whether the maximum count is reached. CapExceeded *bool `type:"boolean"` // The number of AWS resources or AWS Config rules responsible for the current // compliance of the item. CappedCount *int64 `type:"integer"` } // String returns the string representation func (s ComplianceContributorCount) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ComplianceContributorCount) GoString() string { return s.String() } // The number of AWS Config rules or AWS resources that are compliant and noncompliant, // up to a maximum. type ComplianceSummary struct { _ struct{} `type:"structure"` // The time that AWS Config created the compliance summary. ComplianceSummaryTimestamp *time.Time `type:"timestamp" timestampFormat:"unix"` // The number of AWS Config rules or AWS resources that are compliant, up to // a maximum of 25 for rules and 100 for resources. CompliantResourceCount *ComplianceContributorCount `type:"structure"` // The number of AWS Config rules or AWS resources that are noncompliant, up // to a maximum of 25 for rules and 100 for resources. NonCompliantResourceCount *ComplianceContributorCount `type:"structure"` } // String returns the string representation func (s ComplianceSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ComplianceSummary) GoString() string { return s.String() } // The number of AWS resources of a specific type that are compliant or noncompliant, // up to a maximum of 100 for each compliance. type ComplianceSummaryByResourceType struct { _ struct{} `type:"structure"` // The number of AWS resources that are compliant or noncompliant, up to a maximum // of 100 for each compliance. ComplianceSummary *ComplianceSummary `type:"structure"` // The type of AWS resource. ResourceType *string `min:"1" type:"string"` } // String returns the string representation func (s ComplianceSummaryByResourceType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ComplianceSummaryByResourceType) GoString() string { return s.String() } // A list that contains the status of the delivery of either the snapshot or // the configuration history to the specified Amazon S3 bucket. type ConfigExportDeliveryInfo struct { _ struct{} `type:"structure"` // The time of the last attempted delivery. LastAttemptTime *time.Time `locationName:"lastAttemptTime" type:"timestamp" timestampFormat:"unix"` // The error code from the last attempted delivery. LastErrorCode *string `locationName:"lastErrorCode" type:"string"` // The error message from the last attempted delivery. LastErrorMessage *string `locationName:"lastErrorMessage" type:"string"` // Status of the last attempted delivery. LastStatus *string `locationName:"lastStatus" type:"string" enum:"DeliveryStatus"` // The time of the last successful delivery. LastSuccessfulTime *time.Time `locationName:"lastSuccessfulTime" type:"timestamp" timestampFormat:"unix"` // The time that the next delivery occurs. NextDeliveryTime *time.Time `locationName:"nextDeliveryTime" type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s ConfigExportDeliveryInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfigExportDeliveryInfo) GoString() string { return s.String() } // An AWS Config rule represents an AWS Lambda function that you create for // a custom rule or a predefined function for an AWS managed rule. The function // evaluates configuration items to assess whether your AWS resources comply // with your desired configurations. This function can run when AWS Config detects // a configuration change to an AWS resource and at a periodic frequency that // you choose (for example, every 24 hours). // // You can use the AWS CLI and AWS SDKs if you want to create a rule that triggers // evaluations for your resources when AWS Config delivers the configuration // snapshot. For more information, see ConfigSnapshotDeliveryProperties. // // For more information about developing and using AWS Config rules, see Evaluating // AWS Resource Configurations with AWS Config (http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html) // in the AWS Config Developer Guide. type ConfigRule struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the AWS Config rule. ConfigRuleArn *string `type:"string"` // The ID of the AWS Config rule. ConfigRuleId *string `type:"string"` // The name that you assign to the AWS Config rule. The name is required if // you are adding a new rule. ConfigRuleName *string `min:"1" type:"string"` // Indicates whether the AWS Config rule is active or is currently being deleted // by AWS Config. It can also indicate the evaluation status for the Config // rule. // // AWS Config sets the state of the rule to EVALUATING temporarily after you // use the StartConfigRulesEvaluation request to evaluate your resources against // the Config rule. // // AWS Config sets the state of the rule to DELETING_RESULTS temporarily after // you use the DeleteEvaluationResults request to delete the current evaluation // results for the Config rule. // // AWS Config sets the state of a rule to DELETING temporarily after you use // the DeleteConfigRule request to delete the rule. After AWS Config deletes // the rule, the rule and all of its evaluations are erased and are no longer // available. ConfigRuleState *string `type:"string" enum:"ConfigRuleState"` // The description that you provide for the AWS Config rule. Description *string `type:"string"` // A string in JSON format that is passed to the AWS Config rule Lambda function. InputParameters *string `min:"1" type:"string"` // The maximum frequency with which AWS Config runs evaluations for a rule. // You can specify a value for MaximumExecutionFrequency when: // // * You are using an AWS managed rule that is triggered at a periodic frequency. // // * Your custom rule is triggered when AWS Config delivers the configuration // snapshot. // // For more information, see ConfigSnapshotDeliveryProperties. MaximumExecutionFrequency *string `type:"string" enum:"MaximumExecutionFrequency"` // Defines which resources can trigger an evaluation for the rule. The scope // can include one or more resource types, a combination of one resource type // and one resource ID, or a combination of a tag key and value. Specify a scope // to constrain the resources that can trigger an evaluation for the rule. If // you do not specify a scope, evaluations are triggered when any resource in // the recording group changes. Scope *Scope `type:"structure"` // Provides the rule owner (AWS or customer), the rule identifier, and the notifications // that cause the function to evaluate your AWS resources. // // Source is a required field Source *Source `type:"structure" required:"true"` } // String returns the string representation func (s ConfigRule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfigRule) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ConfigRule) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ConfigRule"} if s.ConfigRuleName != nil && len(*s.ConfigRuleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ConfigRuleName", 1)) } if s.InputParameters != nil && len(*s.InputParameters) < 1 { invalidParams.Add(request.NewErrParamMinLen("InputParameters", 1)) } if s.Source == nil { invalidParams.Add(request.NewErrParamRequired("Source")) } if s.Scope != nil { if err := s.Scope.Validate(); err != nil { invalidParams.AddNested("Scope", err.(request.ErrInvalidParams)) } } if s.Source != nil { if err := s.Source.Validate(); err != nil { invalidParams.AddNested("Source", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Status information for your AWS managed Config rules. The status includes // information such as the last time the rule ran, the last time it failed, // and the related error for the last failure. // // This action does not return status information about custom Config rules. type ConfigRuleEvaluationStatus struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the AWS Config rule. ConfigRuleArn *string `type:"string"` // The ID of the AWS Config rule. ConfigRuleId *string `type:"string"` // The name of the AWS Config rule. ConfigRuleName *string `min:"1" type:"string"` // The time that you first activated the AWS Config rule. FirstActivatedTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Indicates whether AWS Config has evaluated your resources against the rule // at least once. // // * true - AWS Config has evaluated your AWS resources against the rule // at least once. // // * false - AWS Config has not once finished evaluating your AWS resources // against the rule. FirstEvaluationStarted *bool `type:"boolean"` // The error code that AWS Config returned when the rule last failed. LastErrorCode *string `type:"string"` // The error message that AWS Config returned when the rule last failed. LastErrorMessage *string `type:"string"` // The time that AWS Config last failed to evaluate your AWS resources against // the rule. LastFailedEvaluationTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The time that AWS Config last failed to invoke the AWS Config rule to evaluate // your AWS resources. LastFailedInvocationTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The time that AWS Config last successfully evaluated your AWS resources against // the rule. LastSuccessfulEvaluationTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The time that AWS Config last successfully invoked the AWS Config rule to // evaluate your AWS resources. LastSuccessfulInvocationTime *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s ConfigRuleEvaluationStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfigRuleEvaluationStatus) GoString() string { return s.String() } // Provides options for how often AWS Config delivers configuration snapshots // to the Amazon S3 bucket in your delivery channel. // // If you want to create a rule that triggers evaluations for your resources // when AWS Config delivers the configuration snapshot, see the following: // // The frequency for a rule that triggers evaluations for your resources when // AWS Config delivers the configuration snapshot is set by one of two values, // depending on which is less frequent: // // * The value for the deliveryFrequency parameter within the delivery channel // configuration, which sets how often AWS Config delivers configuration // snapshots. This value also sets how often AWS Config invokes evaluations // for Config rules. // // * The value for the MaximumExecutionFrequency parameter, which sets the // maximum frequency with which AWS Config invokes evaluations for the rule. // For more information, see ConfigRule. // // If the deliveryFrequency value is less frequent than the MaximumExecutionFrequency // value for a rule, AWS Config invokes the rule only as often as the deliveryFrequency // value. // // For example, you want your rule to run evaluations when AWS Config delivers // the configuration snapshot. // // You specify the MaximumExecutionFrequency value for Six_Hours. // // You then specify the delivery channel deliveryFrequency value for TwentyFour_Hours. // // Because the value for deliveryFrequency is less frequent than MaximumExecutionFrequency, // AWS Config invokes evaluations for the rule every 24 hours. // // You should set the MaximumExecutionFrequency value to be at least as frequent // as the deliveryFrequency value. You can view the deliveryFrequency value // by using the DescribeDeliveryChannnels action. // // To update the deliveryFrequency with which AWS Config delivers your configuration // snapshots, use the PutDeliveryChannel action. type ConfigSnapshotDeliveryProperties struct { _ struct{} `type:"structure"` // The frequency with which AWS Config delivers configuration snapshots. DeliveryFrequency *string `locationName:"deliveryFrequency" type:"string" enum:"MaximumExecutionFrequency"` } // String returns the string representation func (s ConfigSnapshotDeliveryProperties) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfigSnapshotDeliveryProperties) GoString() string { return s.String() } // A list that contains the status of the delivery of the configuration stream // notification to the Amazon SNS topic. type ConfigStreamDeliveryInfo struct { _ struct{} `type:"structure"` // The error code from the last attempted delivery. LastErrorCode *string `locationName:"lastErrorCode" type:"string"` // The error message from the last attempted delivery. LastErrorMessage *string `locationName:"lastErrorMessage" type:"string"` // Status of the last attempted delivery. // // Note Providing an SNS topic on a DeliveryChannel (http://docs.aws.amazon.com/config/latest/APIReference/API_DeliveryChannel.html) // for AWS Config is optional. If the SNS delivery is turned off, the last status // will be Not_Applicable. LastStatus *string `locationName:"lastStatus" type:"string" enum:"DeliveryStatus"` // The time from the last status change. LastStatusChangeTime *time.Time `locationName:"lastStatusChangeTime" type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s ConfigStreamDeliveryInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfigStreamDeliveryInfo) GoString() string { return s.String() } // A list that contains detailed configurations of a specified resource. // // Currently, the list does not contain information about non-AWS components // (for example, applications on your Amazon EC2 instances). type ConfigurationItem struct { _ struct{} `type:"structure"` // The 12 digit AWS account ID associated with the resource. AccountId *string `locationName:"accountId" type:"string"` // The Amazon Resource Name (ARN) of the resource. Arn *string `locationName:"arn" type:"string"` // The Availability Zone associated with the resource. AvailabilityZone *string `locationName:"availabilityZone" type:"string"` // The region where the resource resides. AwsRegion *string `locationName:"awsRegion" type:"string"` // The description of the resource configuration. Configuration *string `locationName:"configuration" type:"string"` // The time when the configuration recording was initiated. ConfigurationItemCaptureTime *time.Time `locationName:"configurationItemCaptureTime" type:"timestamp" timestampFormat:"unix"` // Unique MD5 hash that represents the configuration item's state. // // You can use MD5 hash to compare the states of two or more configuration items // that are associated with the same resource. ConfigurationItemMD5Hash *string `locationName:"configurationItemMD5Hash" type:"string"` // The configuration item status. ConfigurationItemStatus *string `locationName:"configurationItemStatus" type:"string" enum:"ConfigurationItemStatus"` // An identifier that indicates the ordering of the configuration items of a // resource. ConfigurationStateId *string `locationName:"configurationStateId" type:"string"` // A list of CloudTrail event IDs. // // A populated field indicates that the current configuration was initiated // by the events recorded in the CloudTrail log. For more information about // CloudTrail, see What is AWS CloudTrail? (http://docs.aws.amazon.com/awscloudtrail/latest/userguide/what_is_cloud_trail_top_level.html). // // An empty field indicates that the current configuration was not initiated // by any event. RelatedEvents []*string `locationName:"relatedEvents" type:"list"` // A list of related AWS resources. Relationships []*Relationship `locationName:"relationships" type:"list"` // The time stamp when the resource was created. ResourceCreationTime *time.Time `locationName:"resourceCreationTime" type:"timestamp" timestampFormat:"unix"` // The ID of the resource (for example., sg-xxxxxx). ResourceId *string `locationName:"resourceId" type:"string"` // The custom name of the resource, if available. ResourceName *string `locationName:"resourceName" type:"string"` // The type of AWS resource. ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` // Configuration attributes that AWS Config returns for certain resource types // to supplement the information returned for the configuration parameter. SupplementaryConfiguration map[string]*string `locationName:"supplementaryConfiguration" type:"map"` // A mapping of key value tags associated with the resource. Tags map[string]*string `locationName:"tags" type:"map"` // The version number of the resource configuration. Version *string `locationName:"version" type:"string"` } // String returns the string representation func (s ConfigurationItem) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfigurationItem) GoString() string { return s.String() } // An object that represents the recording of configuration changes of an AWS // resource. type ConfigurationRecorder struct { _ struct{} `type:"structure"` // The name of the recorder. By default, AWS Config automatically assigns the // name "default" when creating the configuration recorder. You cannot change // the assigned name. Name *string `locationName:"name" min:"1" type:"string"` // Specifies the types of AWS resource for which AWS Config records configuration // changes. RecordingGroup *RecordingGroup `locationName:"recordingGroup" type:"structure"` // Amazon Resource Name (ARN) of the IAM role used to describe the AWS resources // associated with the account. RoleARN *string `locationName:"roleARN" type:"string"` } // String returns the string representation func (s ConfigurationRecorder) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfigurationRecorder) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ConfigurationRecorder) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ConfigurationRecorder"} if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The current status of the configuration recorder. type ConfigurationRecorderStatus struct { _ struct{} `type:"structure"` // The error code indicating that the recording failed. LastErrorCode *string `locationName:"lastErrorCode" type:"string"` // The message indicating that the recording failed due to an error. LastErrorMessage *string `locationName:"lastErrorMessage" type:"string"` // The time the recorder was last started. LastStartTime *time.Time `locationName:"lastStartTime" type:"timestamp" timestampFormat:"unix"` // The last (previous) status of the recorder. LastStatus *string `locationName:"lastStatus" type:"string" enum:"RecorderStatus"` // The time when the status was last changed. LastStatusChangeTime *time.Time `locationName:"lastStatusChangeTime" type:"timestamp" timestampFormat:"unix"` // The time the recorder was last stopped. LastStopTime *time.Time `locationName:"lastStopTime" type:"timestamp" timestampFormat:"unix"` // The name of the configuration recorder. Name *string `locationName:"name" type:"string"` // Specifies whether the recorder is currently recording or not. Recording *bool `locationName:"recording" type:"boolean"` } // String returns the string representation func (s ConfigurationRecorderStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfigurationRecorderStatus) GoString() string { return s.String() } type DeleteConfigRuleInput struct { _ struct{} `type:"structure"` // The name of the AWS Config rule that you want to delete. // // ConfigRuleName is a required field ConfigRuleName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteConfigRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteConfigRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteConfigRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteConfigRuleInput"} if s.ConfigRuleName == nil { invalidParams.Add(request.NewErrParamRequired("ConfigRuleName")) } if s.ConfigRuleName != nil && len(*s.ConfigRuleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ConfigRuleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteConfigRuleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteConfigRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteConfigRuleOutput) GoString() string { return s.String() } // The request object for the DeleteConfigurationRecorder action. type DeleteConfigurationRecorderInput struct { _ struct{} `type:"structure"` // The name of the configuration recorder to be deleted. You can retrieve the // name of your configuration recorder by using the DescribeConfigurationRecorders // action. // // ConfigurationRecorderName is a required field ConfigurationRecorderName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteConfigurationRecorderInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteConfigurationRecorderInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteConfigurationRecorderInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteConfigurationRecorderInput"} if s.ConfigurationRecorderName == nil { invalidParams.Add(request.NewErrParamRequired("ConfigurationRecorderName")) } if s.ConfigurationRecorderName != nil && len(*s.ConfigurationRecorderName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ConfigurationRecorderName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteConfigurationRecorderOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteConfigurationRecorderOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteConfigurationRecorderOutput) GoString() string { return s.String() } // The input for the DeleteDeliveryChannel action. The action accepts the following // data in JSON format. type DeleteDeliveryChannelInput struct { _ struct{} `type:"structure"` // The name of the delivery channel to delete. // // DeliveryChannelName is a required field DeliveryChannelName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteDeliveryChannelInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDeliveryChannelInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDeliveryChannelInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDeliveryChannelInput"} if s.DeliveryChannelName == nil { invalidParams.Add(request.NewErrParamRequired("DeliveryChannelName")) } if s.DeliveryChannelName != nil && len(*s.DeliveryChannelName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeliveryChannelName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteDeliveryChannelOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteDeliveryChannelOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDeliveryChannelOutput) GoString() string { return s.String() } type DeleteEvaluationResultsInput struct { _ struct{} `type:"structure"` // The name of the Config rule for which you want to delete the evaluation results. // // ConfigRuleName is a required field ConfigRuleName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteEvaluationResultsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteEvaluationResultsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteEvaluationResultsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteEvaluationResultsInput"} if s.ConfigRuleName == nil { invalidParams.Add(request.NewErrParamRequired("ConfigRuleName")) } if s.ConfigRuleName != nil && len(*s.ConfigRuleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ConfigRuleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output when you delete the evaluation results for the specified Config // rule. type DeleteEvaluationResultsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteEvaluationResultsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteEvaluationResultsOutput) GoString() string { return s.String() } // The input for the DeliverConfigSnapshot action. type DeliverConfigSnapshotInput struct { _ struct{} `type:"structure"` // The name of the delivery channel through which the snapshot is delivered. // // DeliveryChannelName is a required field DeliveryChannelName *string `locationName:"deliveryChannelName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeliverConfigSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeliverConfigSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeliverConfigSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeliverConfigSnapshotInput"} if s.DeliveryChannelName == nil { invalidParams.Add(request.NewErrParamRequired("DeliveryChannelName")) } if s.DeliveryChannelName != nil && len(*s.DeliveryChannelName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeliveryChannelName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the DeliverConfigSnapshot action in JSON format. type DeliverConfigSnapshotOutput struct { _ struct{} `type:"structure"` // The ID of the snapshot that is being created. ConfigSnapshotId *string `locationName:"configSnapshotId" type:"string"` } // String returns the string representation func (s DeliverConfigSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeliverConfigSnapshotOutput) GoString() string { return s.String() } // The channel through which AWS Config delivers notifications and updated configuration // states. type DeliveryChannel struct { _ struct{} `type:"structure"` // Provides options for how often AWS Config delivers configuration snapshots // to the Amazon S3 bucket in your delivery channel. // // If you want to create a rule that triggers evaluations for your resources // when AWS Config delivers the configuration snapshot, see the following: // // The frequency for a rule that triggers evaluations for your resources when // AWS Config delivers the configuration snapshot is set by one of two values, // depending on which is less frequent: // // * The value for the deliveryFrequency parameter within the delivery channel // configuration, which sets how often AWS Config delivers configuration // snapshots. This value also sets how often AWS Config invokes evaluations // for Config rules. // // * The value for the MaximumExecutionFrequency parameter, which sets the // maximum frequency with which AWS Config invokes evaluations for the rule. // For more information, see ConfigRule. // // If the deliveryFrequency value is less frequent than the MaximumExecutionFrequency // value for a rule, AWS Config invokes the rule only as often as the deliveryFrequency // value. // // For example, you want your rule to run evaluations when AWS Config delivers // the configuration snapshot. // // You specify the MaximumExecutionFrequency value for Six_Hours. // // You then specify the delivery channel deliveryFrequency value for TwentyFour_Hours. // // Because the value for deliveryFrequency is less frequent than MaximumExecutionFrequency, // AWS Config invokes evaluations for the rule every 24 hours. // // You should set the MaximumExecutionFrequency value to be at least as frequent // as the deliveryFrequency value. You can view the deliveryFrequency value // by using the DescribeDeliveryChannnels action. // // To update the deliveryFrequency with which AWS Config delivers your configuration // snapshots, use the PutDeliveryChannel action. ConfigSnapshotDeliveryProperties *ConfigSnapshotDeliveryProperties `locationName:"configSnapshotDeliveryProperties" type:"structure"` // The name of the delivery channel. By default, AWS Config assigns the name // "default" when creating the delivery channel. To change the delivery channel // name, you must use the DeleteDeliveryChannel action to delete your current // delivery channel, and then you must use the PutDeliveryChannel command to // create a delivery channel that has the desired name. Name *string `locationName:"name" min:"1" type:"string"` // The name of the Amazon S3 bucket to which AWS Config delivers configuration // snapshots and configuration history files. // // If you specify a bucket that belongs to another AWS account, that bucket // must have policies that grant access permissions to AWS Config. For more // information, see Permissions for the Amazon S3 Bucket (http://docs.aws.amazon.com/config/latest/developerguide/s3-bucket-policy.html) // in the AWS Config Developer Guide. S3BucketName *string `locationName:"s3BucketName" type:"string"` // The prefix for the specified Amazon S3 bucket. S3KeyPrefix *string `locationName:"s3KeyPrefix" type:"string"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to which AWS Config // sends notifications about configuration changes. // // If you choose a topic from another account, the topic must have policies // that grant access permissions to AWS Config. For more information, see Permissions // for the Amazon SNS Topic (http://docs.aws.amazon.com/config/latest/developerguide/sns-topic-policy.html) // in the AWS Config Developer Guide. SnsTopicARN *string `locationName:"snsTopicARN" type:"string"` } // String returns the string representation func (s DeliveryChannel) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeliveryChannel) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeliveryChannel) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeliveryChannel"} if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The status of a specified delivery channel. // // Valid values: Success | Failure type DeliveryChannelStatus struct { _ struct{} `type:"structure"` // A list that contains the status of the delivery of the configuration history // to the specified Amazon S3 bucket. ConfigHistoryDeliveryInfo *ConfigExportDeliveryInfo `locationName:"configHistoryDeliveryInfo" type:"structure"` // A list containing the status of the delivery of the snapshot to the specified // Amazon S3 bucket. ConfigSnapshotDeliveryInfo *ConfigExportDeliveryInfo `locationName:"configSnapshotDeliveryInfo" type:"structure"` // A list containing the status of the delivery of the configuration stream // notification to the specified Amazon SNS topic. ConfigStreamDeliveryInfo *ConfigStreamDeliveryInfo `locationName:"configStreamDeliveryInfo" type:"structure"` // The name of the delivery channel. Name *string `locationName:"name" type:"string"` } // String returns the string representation func (s DeliveryChannelStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeliveryChannelStatus) GoString() string { return s.String() } type DescribeComplianceByConfigRuleInput struct { _ struct{} `type:"structure"` // Filters the results by compliance. // // The allowed values are COMPLIANT, NON_COMPLIANT, and INSUFFICIENT_DATA. ComplianceTypes []*string `type:"list"` // Specify one or more AWS Config rule names to filter the results by rule. ConfigRuleNames []*string `type:"list"` // The nextToken string returned on a previous page that you use to get the // next page of results in a paginated response. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeComplianceByConfigRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeComplianceByConfigRuleInput) GoString() string { return s.String() } type DescribeComplianceByConfigRuleOutput struct { _ struct{} `type:"structure"` // Indicates whether each of the specified AWS Config rules is compliant. ComplianceByConfigRules []*ComplianceByConfigRule `type:"list"` // The string that you use in a subsequent request to get the next page of results // in a paginated response. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeComplianceByConfigRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeComplianceByConfigRuleOutput) GoString() string { return s.String() } type DescribeComplianceByResourceInput struct { _ struct{} `type:"structure"` // Filters the results by compliance. // // The allowed values are COMPLIANT, NON_COMPLIANT, and INSUFFICIENT_DATA. ComplianceTypes []*string `type:"list"` // The maximum number of evaluation results returned on each page. The default // is 10. You cannot specify a limit greater than 100. If you specify 0, AWS // Config uses the default. Limit *int64 `type:"integer"` // The nextToken string returned on a previous page that you use to get the // next page of results in a paginated response. NextToken *string `type:"string"` // The ID of the AWS resource for which you want compliance information. You // can specify only one resource ID. If you specify a resource ID, you must // also specify a type for ResourceType. ResourceId *string `min:"1" type:"string"` // The types of AWS resources for which you want compliance information; for // example, AWS::EC2::Instance. For this action, you can specify that the resource // type is an AWS account by specifying AWS::::Account. ResourceType *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeComplianceByResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeComplianceByResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeComplianceByResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeComplianceByResourceInput"} if s.ResourceId != nil && len(*s.ResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) } if s.ResourceType != nil && len(*s.ResourceType) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceType", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeComplianceByResourceOutput struct { _ struct{} `type:"structure"` // Indicates whether the specified AWS resource complies with all of the AWS // Config rules that evaluate it. ComplianceByResources []*ComplianceByResource `type:"list"` // The string that you use in a subsequent request to get the next page of results // in a paginated response. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeComplianceByResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeComplianceByResourceOutput) GoString() string { return s.String() } type DescribeConfigRuleEvaluationStatusInput struct { _ struct{} `type:"structure"` // The name of the AWS managed Config rules for which you want status information. // If you do not specify any names, AWS Config returns status information for // all AWS managed Config rules that you use. ConfigRuleNames []*string `type:"list"` } // String returns the string representation func (s DescribeConfigRuleEvaluationStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConfigRuleEvaluationStatusInput) GoString() string { return s.String() } type DescribeConfigRuleEvaluationStatusOutput struct { _ struct{} `type:"structure"` // Status information about your AWS managed Config rules. ConfigRulesEvaluationStatus []*ConfigRuleEvaluationStatus `type:"list"` } // String returns the string representation func (s DescribeConfigRuleEvaluationStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConfigRuleEvaluationStatusOutput) GoString() string { return s.String() } type DescribeConfigRulesInput struct { _ struct{} `type:"structure"` // The names of the AWS Config rules for which you want details. If you do not // specify any names, AWS Config returns details for all your rules. ConfigRuleNames []*string `type:"list"` // The nextToken string returned on a previous page that you use to get the // next page of results in a paginated response. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeConfigRulesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConfigRulesInput) GoString() string { return s.String() } type DescribeConfigRulesOutput struct { _ struct{} `type:"structure"` // The details about your AWS Config rules. ConfigRules []*ConfigRule `type:"list"` // The string that you use in a subsequent request to get the next page of results // in a paginated response. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeConfigRulesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConfigRulesOutput) GoString() string { return s.String() } // The input for the DescribeConfigurationRecorderStatus action. type DescribeConfigurationRecorderStatusInput struct { _ struct{} `type:"structure"` // The name(s) of the configuration recorder. If the name is not specified, // the action returns the current status of all the configuration recorders // associated with the account. ConfigurationRecorderNames []*string `type:"list"` } // String returns the string representation func (s DescribeConfigurationRecorderStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConfigurationRecorderStatusInput) GoString() string { return s.String() } // The output for the DescribeConfigurationRecorderStatus action in JSON format. type DescribeConfigurationRecorderStatusOutput struct { _ struct{} `type:"structure"` // A list that contains status of the specified recorders. ConfigurationRecordersStatus []*ConfigurationRecorderStatus `type:"list"` } // String returns the string representation func (s DescribeConfigurationRecorderStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConfigurationRecorderStatusOutput) GoString() string { return s.String() } // The input for the DescribeConfigurationRecorders action. type DescribeConfigurationRecordersInput struct { _ struct{} `type:"structure"` // A list of configuration recorder names. ConfigurationRecorderNames []*string `type:"list"` } // String returns the string representation func (s DescribeConfigurationRecordersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConfigurationRecordersInput) GoString() string { return s.String() } // The output for the DescribeConfigurationRecorders action. type DescribeConfigurationRecordersOutput struct { _ struct{} `type:"structure"` // A list that contains the descriptions of the specified configuration recorders. ConfigurationRecorders []*ConfigurationRecorder `type:"list"` } // String returns the string representation func (s DescribeConfigurationRecordersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConfigurationRecordersOutput) GoString() string { return s.String() } // The input for the DeliveryChannelStatus action. type DescribeDeliveryChannelStatusInput struct { _ struct{} `type:"structure"` // A list of delivery channel names. DeliveryChannelNames []*string `type:"list"` } // String returns the string representation func (s DescribeDeliveryChannelStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDeliveryChannelStatusInput) GoString() string { return s.String() } // The output for the DescribeDeliveryChannelStatus action. type DescribeDeliveryChannelStatusOutput struct { _ struct{} `type:"structure"` // A list that contains the status of a specified delivery channel. DeliveryChannelsStatus []*DeliveryChannelStatus `type:"list"` } // String returns the string representation func (s DescribeDeliveryChannelStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDeliveryChannelStatusOutput) GoString() string { return s.String() } // The input for the DescribeDeliveryChannels action. type DescribeDeliveryChannelsInput struct { _ struct{} `type:"structure"` // A list of delivery channel names. DeliveryChannelNames []*string `type:"list"` } // String returns the string representation func (s DescribeDeliveryChannelsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDeliveryChannelsInput) GoString() string { return s.String() } // The output for the DescribeDeliveryChannels action. type DescribeDeliveryChannelsOutput struct { _ struct{} `type:"structure"` // A list that contains the descriptions of the specified delivery channel. DeliveryChannels []*DeliveryChannel `type:"list"` } // String returns the string representation func (s DescribeDeliveryChannelsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDeliveryChannelsOutput) GoString() string { return s.String() } // Identifies an AWS resource and indicates whether it complies with the AWS // Config rule that it was evaluated against. type Evaluation struct { _ struct{} `type:"structure"` // Supplementary information about how the evaluation determined the compliance. Annotation *string `min:"1" type:"string"` // The ID of the AWS resource that was evaluated. // // ComplianceResourceId is a required field ComplianceResourceId *string `min:"1" type:"string" required:"true"` // The type of AWS resource that was evaluated. // // ComplianceResourceType is a required field ComplianceResourceType *string `min:"1" type:"string" required:"true"` // Indicates whether the AWS resource complies with the AWS Config rule that // it was evaluated against. // // For the Evaluation data type, AWS Config supports only the COMPLIANT, NON_COMPLIANT, // and NOT_APPLICABLE values. AWS Config does not support the INSUFFICIENT_DATA // value for this data type. // // Similarly, AWS Config does not accept INSUFFICIENT_DATA as the value for // ComplianceType from a PutEvaluations request. For example, an AWS Lambda // function for a custom Config rule cannot pass an INSUFFICIENT_DATA value // to AWS Config. // // ComplianceType is a required field ComplianceType *string `type:"string" required:"true" enum:"ComplianceType"` // The time of the event in AWS Config that triggered the evaluation. For event-based // evaluations, the time indicates when AWS Config created the configuration // item that triggered the evaluation. For periodic evaluations, the time indicates // when AWS Config delivered the configuration snapshot that triggered the evaluation. // // OrderingTimestamp is a required field OrderingTimestamp *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` } // String returns the string representation func (s Evaluation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Evaluation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Evaluation) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Evaluation"} if s.Annotation != nil && len(*s.Annotation) < 1 { invalidParams.Add(request.NewErrParamMinLen("Annotation", 1)) } if s.ComplianceResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ComplianceResourceId")) } if s.ComplianceResourceId != nil && len(*s.ComplianceResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ComplianceResourceId", 1)) } if s.ComplianceResourceType == nil { invalidParams.Add(request.NewErrParamRequired("ComplianceResourceType")) } if s.ComplianceResourceType != nil && len(*s.ComplianceResourceType) < 1 { invalidParams.Add(request.NewErrParamMinLen("ComplianceResourceType", 1)) } if s.ComplianceType == nil { invalidParams.Add(request.NewErrParamRequired("ComplianceType")) } if s.OrderingTimestamp == nil { invalidParams.Add(request.NewErrParamRequired("OrderingTimestamp")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The details of an AWS Config evaluation. Provides the AWS resource that was // evaluated, the compliance of the resource, related timestamps, and supplementary // information. type EvaluationResult struct { _ struct{} `type:"structure"` // Supplementary information about how the evaluation determined the compliance. Annotation *string `min:"1" type:"string"` // Indicates whether the AWS resource complies with the AWS Config rule that // evaluated it. // // For the EvaluationResult data type, AWS Config supports only the COMPLIANT, // NON_COMPLIANT, and NOT_APPLICABLE values. AWS Config does not support the // INSUFFICIENT_DATA value for the EvaluationResult data type. ComplianceType *string `type:"string" enum:"ComplianceType"` // The time when the AWS Config rule evaluated the AWS resource. ConfigRuleInvokedTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Uniquely identifies the evaluation result. EvaluationResultIdentifier *EvaluationResultIdentifier `type:"structure"` // The time when AWS Config recorded the evaluation result. ResultRecordedTime *time.Time `type:"timestamp" timestampFormat:"unix"` // An encrypted token that associates an evaluation with an AWS Config rule. // The token identifies the rule, the AWS resource being evaluated, and the // event that triggered the evaluation. ResultToken *string `type:"string"` } // String returns the string representation func (s EvaluationResult) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EvaluationResult) GoString() string { return s.String() } // Uniquely identifies an evaluation result. type EvaluationResultIdentifier struct { _ struct{} `type:"structure"` // Identifies an AWS Config rule used to evaluate an AWS resource, and provides // the type and ID of the evaluated resource. EvaluationResultQualifier *EvaluationResultQualifier `type:"structure"` // The time of the event that triggered the evaluation of your AWS resources. // The time can indicate when AWS Config delivered a configuration item change // notification, or it can indicate when AWS Config delivered the configuration // snapshot, depending on which event triggered the evaluation. OrderingTimestamp *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s EvaluationResultIdentifier) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EvaluationResultIdentifier) GoString() string { return s.String() } // Identifies an AWS Config rule that evaluated an AWS resource, and provides // the type and ID of the resource that the rule evaluated. type EvaluationResultQualifier struct { _ struct{} `type:"structure"` // The name of the AWS Config rule that was used in the evaluation. ConfigRuleName *string `min:"1" type:"string"` // The ID of the evaluated AWS resource. ResourceId *string `min:"1" type:"string"` // The type of AWS resource that was evaluated. ResourceType *string `min:"1" type:"string"` } // String returns the string representation func (s EvaluationResultQualifier) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EvaluationResultQualifier) GoString() string { return s.String() } type GetComplianceDetailsByConfigRuleInput struct { _ struct{} `type:"structure"` // Filters the results by compliance. // // The allowed values are COMPLIANT, NON_COMPLIANT, and NOT_APPLICABLE. ComplianceTypes []*string `type:"list"` // The name of the AWS Config rule for which you want compliance information. // // ConfigRuleName is a required field ConfigRuleName *string `min:"1" type:"string" required:"true"` // The maximum number of evaluation results returned on each page. The default // is 10. You cannot specify a limit greater than 100. If you specify 0, AWS // Config uses the default. Limit *int64 `type:"integer"` // The nextToken string returned on a previous page that you use to get the // next page of results in a paginated response. NextToken *string `type:"string"` } // String returns the string representation func (s GetComplianceDetailsByConfigRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetComplianceDetailsByConfigRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetComplianceDetailsByConfigRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetComplianceDetailsByConfigRuleInput"} if s.ConfigRuleName == nil { invalidParams.Add(request.NewErrParamRequired("ConfigRuleName")) } if s.ConfigRuleName != nil && len(*s.ConfigRuleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ConfigRuleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetComplianceDetailsByConfigRuleOutput struct { _ struct{} `type:"structure"` // Indicates whether the AWS resource complies with the specified AWS Config // rule. EvaluationResults []*EvaluationResult `type:"list"` // The string that you use in a subsequent request to get the next page of results // in a paginated response. NextToken *string `type:"string"` } // String returns the string representation func (s GetComplianceDetailsByConfigRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetComplianceDetailsByConfigRuleOutput) GoString() string { return s.String() } type GetComplianceDetailsByResourceInput struct { _ struct{} `type:"structure"` // Filters the results by compliance. // // The allowed values are COMPLIANT, NON_COMPLIANT, and NOT_APPLICABLE. ComplianceTypes []*string `type:"list"` // The nextToken string returned on a previous page that you use to get the // next page of results in a paginated response. NextToken *string `type:"string"` // The ID of the AWS resource for which you want compliance information. // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` // The type of the AWS resource for which you want compliance information. // // ResourceType is a required field ResourceType *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetComplianceDetailsByResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetComplianceDetailsByResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetComplianceDetailsByResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetComplianceDetailsByResourceInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceId != nil && len(*s.ResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) } if s.ResourceType == nil { invalidParams.Add(request.NewErrParamRequired("ResourceType")) } if s.ResourceType != nil && len(*s.ResourceType) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceType", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetComplianceDetailsByResourceOutput struct { _ struct{} `type:"structure"` // Indicates whether the specified AWS resource complies each AWS Config rule. EvaluationResults []*EvaluationResult `type:"list"` // The string that you use in a subsequent request to get the next page of results // in a paginated response. NextToken *string `type:"string"` } // String returns the string representation func (s GetComplianceDetailsByResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetComplianceDetailsByResourceOutput) GoString() string { return s.String() } type GetComplianceSummaryByConfigRuleInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GetComplianceSummaryByConfigRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetComplianceSummaryByConfigRuleInput) GoString() string { return s.String() } type GetComplianceSummaryByConfigRuleOutput struct { _ struct{} `type:"structure"` // The number of AWS Config rules that are compliant and the number that are // noncompliant, up to a maximum of 25 for each. ComplianceSummary *ComplianceSummary `type:"structure"` } // String returns the string representation func (s GetComplianceSummaryByConfigRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetComplianceSummaryByConfigRuleOutput) GoString() string { return s.String() } type GetComplianceSummaryByResourceTypeInput struct { _ struct{} `type:"structure"` // Specify one or more resource types to get the number of resources that are // compliant and the number that are noncompliant for each resource type. // // For this request, you can specify an AWS resource type such as AWS::EC2::Instance, // and you can specify that the resource type is an AWS account by specifying // AWS::::Account. ResourceTypes []*string `type:"list"` } // String returns the string representation func (s GetComplianceSummaryByResourceTypeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetComplianceSummaryByResourceTypeInput) GoString() string { return s.String() } type GetComplianceSummaryByResourceTypeOutput struct { _ struct{} `type:"structure"` // The number of resources that are compliant and the number that are noncompliant. // If one or more resource types were provided with the request, the numbers // are returned for each resource type. The maximum number returned is 100. ComplianceSummariesByResourceType []*ComplianceSummaryByResourceType `type:"list"` } // String returns the string representation func (s GetComplianceSummaryByResourceTypeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetComplianceSummaryByResourceTypeOutput) GoString() string { return s.String() } // The input for the GetResourceConfigHistory action. type GetResourceConfigHistoryInput struct { _ struct{} `type:"structure"` // The chronological order for configuration items listed. By default the results // are listed in reverse chronological order. ChronologicalOrder *string `locationName:"chronologicalOrder" type:"string" enum:"ChronologicalOrder"` // The time stamp that indicates an earlier time. If not specified, the action // returns paginated results that contain configuration items that start from // when the first configuration item was recorded. EarlierTime *time.Time `locationName:"earlierTime" type:"timestamp" timestampFormat:"unix"` // The time stamp that indicates a later time. If not specified, current time // is taken. LaterTime *time.Time `locationName:"laterTime" type:"timestamp" timestampFormat:"unix"` // The maximum number of configuration items returned on each page. The default // is 10. You cannot specify a limit greater than 100. If you specify 0, AWS // Config uses the default. Limit *int64 `locationName:"limit" type:"integer"` // The nextToken string returned on a previous page that you use to get the // next page of results in a paginated response. NextToken *string `locationName:"nextToken" type:"string"` // The ID of the resource (for example., sg-xxxxxx). // // ResourceId is a required field ResourceId *string `locationName:"resourceId" type:"string" required:"true"` // The resource type. // // ResourceType is a required field ResourceType *string `locationName:"resourceType" type:"string" required:"true" enum:"ResourceType"` } // String returns the string representation func (s GetResourceConfigHistoryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetResourceConfigHistoryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetResourceConfigHistoryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetResourceConfigHistoryInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceType == nil { invalidParams.Add(request.NewErrParamRequired("ResourceType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the GetResourceConfigHistory action. type GetResourceConfigHistoryOutput struct { _ struct{} `type:"structure"` // A list that contains the configuration history of one or more resources. ConfigurationItems []*ConfigurationItem `locationName:"configurationItems" type:"list"` // The string that you use in a subsequent request to get the next page of results // in a paginated response. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s GetResourceConfigHistoryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetResourceConfigHistoryOutput) GoString() string { return s.String() } type ListDiscoveredResourcesInput struct { _ struct{} `type:"structure"` // Specifies whether AWS Config includes deleted resources in the results. By // default, deleted resources are not included. IncludeDeletedResources *bool `locationName:"includeDeletedResources" type:"boolean"` // The maximum number of resource identifiers returned on each page. The default // is 100. You cannot specify a limit greater than 100. If you specify 0, AWS // Config uses the default. Limit *int64 `locationName:"limit" type:"integer"` // The nextToken string returned on a previous page that you use to get the // next page of results in a paginated response. NextToken *string `locationName:"nextToken" type:"string"` // The IDs of only those resources that you want AWS Config to list in the response. // If you do not specify this parameter, AWS Config lists all resources of the // specified type that it has discovered. ResourceIds []*string `locationName:"resourceIds" type:"list"` // The custom name of only those resources that you want AWS Config to list // in the response. If you do not specify this parameter, AWS Config lists all // resources of the specified type that it has discovered. ResourceName *string `locationName:"resourceName" type:"string"` // The type of resources that you want AWS Config to list in the response. // // ResourceType is a required field ResourceType *string `locationName:"resourceType" type:"string" required:"true" enum:"ResourceType"` } // String returns the string representation func (s ListDiscoveredResourcesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDiscoveredResourcesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListDiscoveredResourcesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListDiscoveredResourcesInput"} if s.ResourceType == nil { invalidParams.Add(request.NewErrParamRequired("ResourceType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListDiscoveredResourcesOutput struct { _ struct{} `type:"structure"` // The string that you use in a subsequent request to get the next page of results // in a paginated response. NextToken *string `locationName:"nextToken" type:"string"` // The details that identify a resource that is discovered by AWS Config, including // the resource type, ID, and (if available) the custom resource name. ResourceIdentifiers []*ResourceIdentifier `locationName:"resourceIdentifiers" type:"list"` } // String returns the string representation func (s ListDiscoveredResourcesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDiscoveredResourcesOutput) GoString() string { return s.String() } type PutConfigRuleInput struct { _ struct{} `type:"structure"` // An AWS Config rule represents an AWS Lambda function that you create for // a custom rule or a predefined function for an AWS managed rule. The function // evaluates configuration items to assess whether your AWS resources comply // with your desired configurations. This function can run when AWS Config detects // a configuration change to an AWS resource and at a periodic frequency that // you choose (for example, every 24 hours). // // You can use the AWS CLI and AWS SDKs if you want to create a rule that triggers // evaluations for your resources when AWS Config delivers the configuration // snapshot. For more information, see ConfigSnapshotDeliveryProperties. // // For more information about developing and using AWS Config rules, see Evaluating // AWS Resource Configurations with AWS Config (http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html) // in the AWS Config Developer Guide. // // ConfigRule is a required field ConfigRule *ConfigRule `type:"structure" required:"true"` } // String returns the string representation func (s PutConfigRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutConfigRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutConfigRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutConfigRuleInput"} if s.ConfigRule == nil { invalidParams.Add(request.NewErrParamRequired("ConfigRule")) } if s.ConfigRule != nil { if err := s.ConfigRule.Validate(); err != nil { invalidParams.AddNested("ConfigRule", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutConfigRuleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutConfigRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutConfigRuleOutput) GoString() string { return s.String() } // The input for the PutConfigurationRecorder action. type PutConfigurationRecorderInput struct { _ struct{} `type:"structure"` // The configuration recorder object that records each configuration change // made to the resources. // // ConfigurationRecorder is a required field ConfigurationRecorder *ConfigurationRecorder `type:"structure" required:"true"` } // String returns the string representation func (s PutConfigurationRecorderInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutConfigurationRecorderInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutConfigurationRecorderInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutConfigurationRecorderInput"} if s.ConfigurationRecorder == nil { invalidParams.Add(request.NewErrParamRequired("ConfigurationRecorder")) } if s.ConfigurationRecorder != nil { if err := s.ConfigurationRecorder.Validate(); err != nil { invalidParams.AddNested("ConfigurationRecorder", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutConfigurationRecorderOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutConfigurationRecorderOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutConfigurationRecorderOutput) GoString() string { return s.String() } // The input for the PutDeliveryChannel action. type PutDeliveryChannelInput struct { _ struct{} `type:"structure"` // The configuration delivery channel object that delivers the configuration // information to an Amazon S3 bucket, and to an Amazon SNS topic. // // DeliveryChannel is a required field DeliveryChannel *DeliveryChannel `type:"structure" required:"true"` } // String returns the string representation func (s PutDeliveryChannelInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutDeliveryChannelInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutDeliveryChannelInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutDeliveryChannelInput"} if s.DeliveryChannel == nil { invalidParams.Add(request.NewErrParamRequired("DeliveryChannel")) } if s.DeliveryChannel != nil { if err := s.DeliveryChannel.Validate(); err != nil { invalidParams.AddNested("DeliveryChannel", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutDeliveryChannelOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutDeliveryChannelOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutDeliveryChannelOutput) GoString() string { return s.String() } type PutEvaluationsInput struct { _ struct{} `type:"structure"` // The assessments that the AWS Lambda function performs. Each evaluation identifies // an AWS resource and indicates whether it complies with the AWS Config rule // that invokes the AWS Lambda function. Evaluations []*Evaluation `type:"list"` // An encrypted token that associates an evaluation with an AWS Config rule. // Identifies the rule and the event that triggered the evaluation // // ResultToken is a required field ResultToken *string `type:"string" required:"true"` } // String returns the string representation func (s PutEvaluationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutEvaluationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutEvaluationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutEvaluationsInput"} if s.ResultToken == nil { invalidParams.Add(request.NewErrParamRequired("ResultToken")) } if s.Evaluations != nil { for i, v := range s.Evaluations { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Evaluations", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutEvaluationsOutput struct { _ struct{} `type:"structure"` // Requests that failed because of a client or server error. FailedEvaluations []*Evaluation `type:"list"` } // String returns the string representation func (s PutEvaluationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutEvaluationsOutput) GoString() string { return s.String() } // Specifies the types of AWS resource for which AWS Config records configuration // changes. // // In the recording group, you specify whether all supported types or specific // types of resources are recorded. // // By default, AWS Config records configuration changes for all supported types // of regional resources that AWS Config discovers in the region in which it // is running. Regional resources are tied to a region and can be used only // in that region. Examples of regional resources are EC2 instances and EBS // volumes. // // You can also have AWS Config record configuration changes for supported types // of global resources (for example, IAM resources). Global resources are not // tied to an individual region and can be used in all regions. // // The configuration details for any global resource are the same in all regions. // If you customize AWS Config in multiple regions to record global resources, // it will create multiple configuration items each time a global resource changes: // one configuration item for each region. These configuration items will contain // identical data. To prevent duplicate configuration items, you should consider // customizing AWS Config in only one region to record global resources, unless // you want the configuration items to be available in multiple regions. // // If you don't want AWS Config to record all resources, you can specify which // types of resources it will record with the resourceTypes parameter. // // For a list of supported resource types, see Supported resource types (http://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources). // // For more information, see Selecting Which Resources AWS Config Records (http://docs.aws.amazon.com/config/latest/developerguide/select-resources.html). type RecordingGroup struct { _ struct{} `type:"structure"` // Specifies whether AWS Config records configuration changes for every supported // type of regional resource. // // If you set this option to true, when AWS Config adds support for a new type // of regional resource, it automatically starts recording resources of that // type. // // If you set this option to true, you cannot enumerate a list of resourceTypes. AllSupported *bool `locationName:"allSupported" type:"boolean"` // Specifies whether AWS Config includes all supported types of global resources // (for example, IAM resources) with the resources that it records. // // Before you can set this option to true, you must set the allSupported option // to true. // // If you set this option to true, when AWS Config adds support for a new type // of global resource, it automatically starts recording resources of that type. // // The configuration details for any global resource are the same in all regions. // To prevent duplicate configuration items, you should consider customizing // AWS Config in only one region to record global resources. IncludeGlobalResourceTypes *bool `locationName:"includeGlobalResourceTypes" type:"boolean"` // A comma-separated list that specifies the types of AWS resources for which // AWS Config records configuration changes (for example, AWS::EC2::Instance // or AWS::CloudTrail::Trail). // // Before you can set this option to true, you must set the allSupported option // to false. // // If you set this option to true, when AWS Config adds support for a new type // of resource, it will not record resources of that type unless you manually // add that type to your recording group. // // For a list of valid resourceTypes values, see the resourceType Value column // in Supported AWS Resource Types (http://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources). ResourceTypes []*string `locationName:"resourceTypes" type:"list"` } // String returns the string representation func (s RecordingGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecordingGroup) GoString() string { return s.String() } // The relationship of the related resource to the main resource. type Relationship struct { _ struct{} `type:"structure"` // The type of relationship with the related resource. RelationshipName *string `locationName:"relationshipName" type:"string"` // The ID of the related resource (for example, sg-xxxxxx). ResourceId *string `locationName:"resourceId" type:"string"` // The custom name of the related resource, if available. ResourceName *string `locationName:"resourceName" type:"string"` // The resource type of the related resource. ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` } // String returns the string representation func (s Relationship) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Relationship) GoString() string { return s.String() } // The details that identify a resource that is discovered by AWS Config, including // the resource type, ID, and (if available) the custom resource name. type ResourceIdentifier struct { _ struct{} `type:"structure"` // The time that the resource was deleted. ResourceDeletionTime *time.Time `locationName:"resourceDeletionTime" type:"timestamp" timestampFormat:"unix"` // The ID of the resource (for example., sg-xxxxxx). ResourceId *string `locationName:"resourceId" type:"string"` // The custom name of the resource (if available). ResourceName *string `locationName:"resourceName" type:"string"` // The type of resource. ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` } // String returns the string representation func (s ResourceIdentifier) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResourceIdentifier) GoString() string { return s.String() } // Defines which resources trigger an evaluation for an AWS Config rule. The // scope can include one or more resource types, a combination of a tag key // and value, or a combination of one resource type and one resource ID. Specify // a scope to constrain which resources trigger an evaluation for a rule. Otherwise, // evaluations for the rule are triggered when any resource in your recording // group changes in configuration. type Scope struct { _ struct{} `type:"structure"` // The IDs of the only AWS resource that you want to trigger an evaluation for // the rule. If you specify a resource ID, you must specify one resource type // for ComplianceResourceTypes. ComplianceResourceId *string `min:"1" type:"string"` // The resource types of only those AWS resources that you want to trigger an // evaluation for the rule. You can only specify one type if you also specify // a resource ID for ComplianceResourceId. ComplianceResourceTypes []*string `type:"list"` // The tag key that is applied to only those AWS resources that you want you // want to trigger an evaluation for the rule. TagKey *string `min:"1" type:"string"` // The tag value applied to only those AWS resources that you want to trigger // an evaluation for the rule. If you specify a value for TagValue, you must // also specify a value for TagKey. TagValue *string `min:"1" type:"string"` } // String returns the string representation func (s Scope) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Scope) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Scope) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Scope"} if s.ComplianceResourceId != nil && len(*s.ComplianceResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ComplianceResourceId", 1)) } if s.TagKey != nil && len(*s.TagKey) < 1 { invalidParams.Add(request.NewErrParamMinLen("TagKey", 1)) } if s.TagValue != nil && len(*s.TagValue) < 1 { invalidParams.Add(request.NewErrParamMinLen("TagValue", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides the AWS Config rule owner (AWS or customer), the rule identifier, // and the events that trigger the evaluation of your AWS resources. type Source struct { _ struct{} `type:"structure"` // Indicates whether AWS or the customer owns and manages the AWS Config rule. Owner *string `type:"string" enum:"Owner"` // Provides the source and type of the event that causes AWS Config to evaluate // your AWS resources. SourceDetails []*SourceDetail `type:"list"` // For AWS Config managed rules, a predefined identifier from a list. For example, // IAM_PASSWORD_POLICY is a managed rule. To reference a managed rule, see Using // AWS Managed Config Rules (http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_use-managed-rules.html). // // For custom rules, the identifier is the Amazon Resource Name (ARN) of the // rule's AWS Lambda function, such as arn:aws:lambda:us-east-1:123456789012:function:custom_rule_name. SourceIdentifier *string `min:"1" type:"string"` } // String returns the string representation func (s Source) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Source) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Source) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Source"} if s.SourceIdentifier != nil && len(*s.SourceIdentifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("SourceIdentifier", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides the source and the message types that trigger AWS Config to evaluate // your AWS resources against a rule. It also provides the frequency with which // you want AWS Config to run evaluations for the rule if the trigger type is // periodic. You can specify the parameter values for SourceDetail only for // custom rules. type SourceDetail struct { _ struct{} `type:"structure"` // The source of the event, such as an AWS service, that triggers AWS Config // to evaluate your AWS resources. EventSource *string `type:"string" enum:"EventSource"` // The frequency that you want AWS Config to run evaluations for a rule that // is triggered periodically. If you specify a value for MaximumExecutionFrequency, // then MessageType must use the ScheduledNotification value. MaximumExecutionFrequency *string `type:"string" enum:"MaximumExecutionFrequency"` // The type of notification that triggers AWS Config to run an evaluation. You // can specify the following notification types: // // ConfigurationItemChangeNotification - Triggers an evaluation when AWS Config // delivers a configuration item change notification. // // ScheduledNotification - Triggers a periodic evaluation at the frequency specified // for MaximumExecutionFrequency. // // ConfigurationSnapshotDeliveryCompleted - Triggers a periodic evaluation when // AWS Config delivers a configuration snapshot. MessageType *string `type:"string" enum:"MessageType"` } // String returns the string representation func (s SourceDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SourceDetail) GoString() string { return s.String() } type StartConfigRulesEvaluationInput struct { _ struct{} `type:"structure"` // The list of names of Config rules that you want to run evaluations for. ConfigRuleNames []*string `min:"1" type:"list"` } // String returns the string representation func (s StartConfigRulesEvaluationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartConfigRulesEvaluationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartConfigRulesEvaluationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartConfigRulesEvaluationInput"} if s.ConfigRuleNames != nil && len(s.ConfigRuleNames) < 1 { invalidParams.Add(request.NewErrParamMinLen("ConfigRuleNames", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output when you start the evaluation for the specified Config rule. type StartConfigRulesEvaluationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s StartConfigRulesEvaluationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartConfigRulesEvaluationOutput) GoString() string { return s.String() } // The input for the StartConfigurationRecorder action. type StartConfigurationRecorderInput struct { _ struct{} `type:"structure"` // The name of the recorder object that records each configuration change made // to the resources. // // ConfigurationRecorderName is a required field ConfigurationRecorderName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s StartConfigurationRecorderInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartConfigurationRecorderInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartConfigurationRecorderInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartConfigurationRecorderInput"} if s.ConfigurationRecorderName == nil { invalidParams.Add(request.NewErrParamRequired("ConfigurationRecorderName")) } if s.ConfigurationRecorderName != nil && len(*s.ConfigurationRecorderName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ConfigurationRecorderName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type StartConfigurationRecorderOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s StartConfigurationRecorderOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartConfigurationRecorderOutput) GoString() string { return s.String() } // The input for the StopConfigurationRecorder action. type StopConfigurationRecorderInput struct { _ struct{} `type:"structure"` // The name of the recorder object that records each configuration change made // to the resources. // // ConfigurationRecorderName is a required field ConfigurationRecorderName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s StopConfigurationRecorderInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopConfigurationRecorderInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StopConfigurationRecorderInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StopConfigurationRecorderInput"} if s.ConfigurationRecorderName == nil { invalidParams.Add(request.NewErrParamRequired("ConfigurationRecorderName")) } if s.ConfigurationRecorderName != nil && len(*s.ConfigurationRecorderName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ConfigurationRecorderName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type StopConfigurationRecorderOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s StopConfigurationRecorderOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopConfigurationRecorderOutput) GoString() string { return s.String() } const ( // ChronologicalOrderReverse is a ChronologicalOrder enum value ChronologicalOrderReverse = "Reverse" // ChronologicalOrderForward is a ChronologicalOrder enum value ChronologicalOrderForward = "Forward" ) const ( // ComplianceTypeCompliant is a ComplianceType enum value ComplianceTypeCompliant = "COMPLIANT" // ComplianceTypeNonCompliant is a ComplianceType enum value ComplianceTypeNonCompliant = "NON_COMPLIANT" // ComplianceTypeNotApplicable is a ComplianceType enum value ComplianceTypeNotApplicable = "NOT_APPLICABLE" // ComplianceTypeInsufficientData is a ComplianceType enum value ComplianceTypeInsufficientData = "INSUFFICIENT_DATA" ) const ( // ConfigRuleStateActive is a ConfigRuleState enum value ConfigRuleStateActive = "ACTIVE" // ConfigRuleStateDeleting is a ConfigRuleState enum value ConfigRuleStateDeleting = "DELETING" // ConfigRuleStateDeletingResults is a ConfigRuleState enum value ConfigRuleStateDeletingResults = "DELETING_RESULTS" // ConfigRuleStateEvaluating is a ConfigRuleState enum value ConfigRuleStateEvaluating = "EVALUATING" ) const ( // ConfigurationItemStatusOk is a ConfigurationItemStatus enum value ConfigurationItemStatusOk = "Ok" // ConfigurationItemStatusFailed is a ConfigurationItemStatus enum value ConfigurationItemStatusFailed = "Failed" // ConfigurationItemStatusDiscovered is a ConfigurationItemStatus enum value ConfigurationItemStatusDiscovered = "Discovered" // ConfigurationItemStatusDeleted is a ConfigurationItemStatus enum value ConfigurationItemStatusDeleted = "Deleted" ) const ( // DeliveryStatusSuccess is a DeliveryStatus enum value DeliveryStatusSuccess = "Success" // DeliveryStatusFailure is a DeliveryStatus enum value DeliveryStatusFailure = "Failure" // DeliveryStatusNotApplicable is a DeliveryStatus enum value DeliveryStatusNotApplicable = "Not_Applicable" ) const ( // EventSourceAwsConfig is a EventSource enum value EventSourceAwsConfig = "aws.config" ) const ( // MaximumExecutionFrequencyOneHour is a MaximumExecutionFrequency enum value MaximumExecutionFrequencyOneHour = "One_Hour" // MaximumExecutionFrequencyThreeHours is a MaximumExecutionFrequency enum value MaximumExecutionFrequencyThreeHours = "Three_Hours" // MaximumExecutionFrequencySixHours is a MaximumExecutionFrequency enum value MaximumExecutionFrequencySixHours = "Six_Hours" // MaximumExecutionFrequencyTwelveHours is a MaximumExecutionFrequency enum value MaximumExecutionFrequencyTwelveHours = "Twelve_Hours" // MaximumExecutionFrequencyTwentyFourHours is a MaximumExecutionFrequency enum value MaximumExecutionFrequencyTwentyFourHours = "TwentyFour_Hours" ) const ( // MessageTypeConfigurationItemChangeNotification is a MessageType enum value MessageTypeConfigurationItemChangeNotification = "ConfigurationItemChangeNotification" // MessageTypeConfigurationSnapshotDeliveryCompleted is a MessageType enum value MessageTypeConfigurationSnapshotDeliveryCompleted = "ConfigurationSnapshotDeliveryCompleted" // MessageTypeScheduledNotification is a MessageType enum value MessageTypeScheduledNotification = "ScheduledNotification" ) const ( // OwnerCustomLambda is a Owner enum value OwnerCustomLambda = "CUSTOM_LAMBDA" // OwnerAws is a Owner enum value OwnerAws = "AWS" ) const ( // RecorderStatusPending is a RecorderStatus enum value RecorderStatusPending = "Pending" // RecorderStatusSuccess is a RecorderStatus enum value RecorderStatusSuccess = "Success" // RecorderStatusFailure is a RecorderStatus enum value RecorderStatusFailure = "Failure" ) const ( // ResourceTypeAwsEc2CustomerGateway is a ResourceType enum value ResourceTypeAwsEc2CustomerGateway = "AWS::EC2::CustomerGateway" // ResourceTypeAwsEc2Eip is a ResourceType enum value ResourceTypeAwsEc2Eip = "AWS::EC2::EIP" // ResourceTypeAwsEc2Host is a ResourceType enum value ResourceTypeAwsEc2Host = "AWS::EC2::Host" // ResourceTypeAwsEc2Instance is a ResourceType enum value ResourceTypeAwsEc2Instance = "AWS::EC2::Instance" // ResourceTypeAwsEc2InternetGateway is a ResourceType enum value ResourceTypeAwsEc2InternetGateway = "AWS::EC2::InternetGateway" // ResourceTypeAwsEc2NetworkAcl is a ResourceType enum value ResourceTypeAwsEc2NetworkAcl = "AWS::EC2::NetworkAcl" // ResourceTypeAwsEc2NetworkInterface is a ResourceType enum value ResourceTypeAwsEc2NetworkInterface = "AWS::EC2::NetworkInterface" // ResourceTypeAwsEc2RouteTable is a ResourceType enum value ResourceTypeAwsEc2RouteTable = "AWS::EC2::RouteTable" // ResourceTypeAwsEc2SecurityGroup is a ResourceType enum value ResourceTypeAwsEc2SecurityGroup = "AWS::EC2::SecurityGroup" // ResourceTypeAwsEc2Subnet is a ResourceType enum value ResourceTypeAwsEc2Subnet = "AWS::EC2::Subnet" // ResourceTypeAwsCloudTrailTrail is a ResourceType enum value ResourceTypeAwsCloudTrailTrail = "AWS::CloudTrail::Trail" // ResourceTypeAwsEc2Volume is a ResourceType enum value ResourceTypeAwsEc2Volume = "AWS::EC2::Volume" // ResourceTypeAwsEc2Vpc is a ResourceType enum value ResourceTypeAwsEc2Vpc = "AWS::EC2::VPC" // ResourceTypeAwsEc2Vpnconnection is a ResourceType enum value ResourceTypeAwsEc2Vpnconnection = "AWS::EC2::VPNConnection" // ResourceTypeAwsEc2Vpngateway is a ResourceType enum value ResourceTypeAwsEc2Vpngateway = "AWS::EC2::VPNGateway" // ResourceTypeAwsIamGroup is a ResourceType enum value ResourceTypeAwsIamGroup = "AWS::IAM::Group" // ResourceTypeAwsIamPolicy is a ResourceType enum value ResourceTypeAwsIamPolicy = "AWS::IAM::Policy" // ResourceTypeAwsIamRole is a ResourceType enum value ResourceTypeAwsIamRole = "AWS::IAM::Role" // ResourceTypeAwsIamUser is a ResourceType enum value ResourceTypeAwsIamUser = "AWS::IAM::User" // ResourceTypeAwsAcmCertificate is a ResourceType enum value ResourceTypeAwsAcmCertificate = "AWS::ACM::Certificate" // ResourceTypeAwsRdsDbinstance is a ResourceType enum value ResourceTypeAwsRdsDbinstance = "AWS::RDS::DBInstance" // ResourceTypeAwsRdsDbsubnetGroup is a ResourceType enum value ResourceTypeAwsRdsDbsubnetGroup = "AWS::RDS::DBSubnetGroup" // ResourceTypeAwsRdsDbsecurityGroup is a ResourceType enum value ResourceTypeAwsRdsDbsecurityGroup = "AWS::RDS::DBSecurityGroup" // ResourceTypeAwsRdsDbsnapshot is a ResourceType enum value ResourceTypeAwsRdsDbsnapshot = "AWS::RDS::DBSnapshot" // ResourceTypeAwsRdsEventSubscription is a ResourceType enum value ResourceTypeAwsRdsEventSubscription = "AWS::RDS::EventSubscription" // ResourceTypeAwsElasticLoadBalancingV2LoadBalancer is a ResourceType enum value ResourceTypeAwsElasticLoadBalancingV2LoadBalancer = "AWS::ElasticLoadBalancingV2::LoadBalancer" // ResourceTypeAwsS3Bucket is a ResourceType enum value ResourceTypeAwsS3Bucket = "AWS::S3::Bucket" ) aws-sdk-go-1.4.22/service/configservice/configserviceiface/000077500000000000000000000000001300374646400236675ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/configservice/configserviceiface/interface.go000066400000000000000000000230341300374646400261600ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package configserviceiface provides an interface to enable mocking the AWS Config service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package configserviceiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/configservice" ) // ConfigServiceAPI provides an interface to enable mocking the // configservice.ConfigService service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Config. // func myFunc(svc configserviceiface.ConfigServiceAPI) bool { // // Make svc.DeleteConfigRule request // } // // func main() { // sess := session.New() // svc := configservice.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockConfigServiceClient struct { // configserviceiface.ConfigServiceAPI // } // func (m *mockConfigServiceClient) DeleteConfigRule(input *configservice.DeleteConfigRuleInput) (*configservice.DeleteConfigRuleOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockConfigServiceClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type ConfigServiceAPI interface { DeleteConfigRuleRequest(*configservice.DeleteConfigRuleInput) (*request.Request, *configservice.DeleteConfigRuleOutput) DeleteConfigRule(*configservice.DeleteConfigRuleInput) (*configservice.DeleteConfigRuleOutput, error) DeleteConfigurationRecorderRequest(*configservice.DeleteConfigurationRecorderInput) (*request.Request, *configservice.DeleteConfigurationRecorderOutput) DeleteConfigurationRecorder(*configservice.DeleteConfigurationRecorderInput) (*configservice.DeleteConfigurationRecorderOutput, error) DeleteDeliveryChannelRequest(*configservice.DeleteDeliveryChannelInput) (*request.Request, *configservice.DeleteDeliveryChannelOutput) DeleteDeliveryChannel(*configservice.DeleteDeliveryChannelInput) (*configservice.DeleteDeliveryChannelOutput, error) DeleteEvaluationResultsRequest(*configservice.DeleteEvaluationResultsInput) (*request.Request, *configservice.DeleteEvaluationResultsOutput) DeleteEvaluationResults(*configservice.DeleteEvaluationResultsInput) (*configservice.DeleteEvaluationResultsOutput, error) DeliverConfigSnapshotRequest(*configservice.DeliverConfigSnapshotInput) (*request.Request, *configservice.DeliverConfigSnapshotOutput) DeliverConfigSnapshot(*configservice.DeliverConfigSnapshotInput) (*configservice.DeliverConfigSnapshotOutput, error) DescribeComplianceByConfigRuleRequest(*configservice.DescribeComplianceByConfigRuleInput) (*request.Request, *configservice.DescribeComplianceByConfigRuleOutput) DescribeComplianceByConfigRule(*configservice.DescribeComplianceByConfigRuleInput) (*configservice.DescribeComplianceByConfigRuleOutput, error) DescribeComplianceByResourceRequest(*configservice.DescribeComplianceByResourceInput) (*request.Request, *configservice.DescribeComplianceByResourceOutput) DescribeComplianceByResource(*configservice.DescribeComplianceByResourceInput) (*configservice.DescribeComplianceByResourceOutput, error) DescribeConfigRuleEvaluationStatusRequest(*configservice.DescribeConfigRuleEvaluationStatusInput) (*request.Request, *configservice.DescribeConfigRuleEvaluationStatusOutput) DescribeConfigRuleEvaluationStatus(*configservice.DescribeConfigRuleEvaluationStatusInput) (*configservice.DescribeConfigRuleEvaluationStatusOutput, error) DescribeConfigRulesRequest(*configservice.DescribeConfigRulesInput) (*request.Request, *configservice.DescribeConfigRulesOutput) DescribeConfigRules(*configservice.DescribeConfigRulesInput) (*configservice.DescribeConfigRulesOutput, error) DescribeConfigurationRecorderStatusRequest(*configservice.DescribeConfigurationRecorderStatusInput) (*request.Request, *configservice.DescribeConfigurationRecorderStatusOutput) DescribeConfigurationRecorderStatus(*configservice.DescribeConfigurationRecorderStatusInput) (*configservice.DescribeConfigurationRecorderStatusOutput, error) DescribeConfigurationRecordersRequest(*configservice.DescribeConfigurationRecordersInput) (*request.Request, *configservice.DescribeConfigurationRecordersOutput) DescribeConfigurationRecorders(*configservice.DescribeConfigurationRecordersInput) (*configservice.DescribeConfigurationRecordersOutput, error) DescribeDeliveryChannelStatusRequest(*configservice.DescribeDeliveryChannelStatusInput) (*request.Request, *configservice.DescribeDeliveryChannelStatusOutput) DescribeDeliveryChannelStatus(*configservice.DescribeDeliveryChannelStatusInput) (*configservice.DescribeDeliveryChannelStatusOutput, error) DescribeDeliveryChannelsRequest(*configservice.DescribeDeliveryChannelsInput) (*request.Request, *configservice.DescribeDeliveryChannelsOutput) DescribeDeliveryChannels(*configservice.DescribeDeliveryChannelsInput) (*configservice.DescribeDeliveryChannelsOutput, error) GetComplianceDetailsByConfigRuleRequest(*configservice.GetComplianceDetailsByConfigRuleInput) (*request.Request, *configservice.GetComplianceDetailsByConfigRuleOutput) GetComplianceDetailsByConfigRule(*configservice.GetComplianceDetailsByConfigRuleInput) (*configservice.GetComplianceDetailsByConfigRuleOutput, error) GetComplianceDetailsByResourceRequest(*configservice.GetComplianceDetailsByResourceInput) (*request.Request, *configservice.GetComplianceDetailsByResourceOutput) GetComplianceDetailsByResource(*configservice.GetComplianceDetailsByResourceInput) (*configservice.GetComplianceDetailsByResourceOutput, error) GetComplianceSummaryByConfigRuleRequest(*configservice.GetComplianceSummaryByConfigRuleInput) (*request.Request, *configservice.GetComplianceSummaryByConfigRuleOutput) GetComplianceSummaryByConfigRule(*configservice.GetComplianceSummaryByConfigRuleInput) (*configservice.GetComplianceSummaryByConfigRuleOutput, error) GetComplianceSummaryByResourceTypeRequest(*configservice.GetComplianceSummaryByResourceTypeInput) (*request.Request, *configservice.GetComplianceSummaryByResourceTypeOutput) GetComplianceSummaryByResourceType(*configservice.GetComplianceSummaryByResourceTypeInput) (*configservice.GetComplianceSummaryByResourceTypeOutput, error) GetResourceConfigHistoryRequest(*configservice.GetResourceConfigHistoryInput) (*request.Request, *configservice.GetResourceConfigHistoryOutput) GetResourceConfigHistory(*configservice.GetResourceConfigHistoryInput) (*configservice.GetResourceConfigHistoryOutput, error) GetResourceConfigHistoryPages(*configservice.GetResourceConfigHistoryInput, func(*configservice.GetResourceConfigHistoryOutput, bool) bool) error ListDiscoveredResourcesRequest(*configservice.ListDiscoveredResourcesInput) (*request.Request, *configservice.ListDiscoveredResourcesOutput) ListDiscoveredResources(*configservice.ListDiscoveredResourcesInput) (*configservice.ListDiscoveredResourcesOutput, error) PutConfigRuleRequest(*configservice.PutConfigRuleInput) (*request.Request, *configservice.PutConfigRuleOutput) PutConfigRule(*configservice.PutConfigRuleInput) (*configservice.PutConfigRuleOutput, error) PutConfigurationRecorderRequest(*configservice.PutConfigurationRecorderInput) (*request.Request, *configservice.PutConfigurationRecorderOutput) PutConfigurationRecorder(*configservice.PutConfigurationRecorderInput) (*configservice.PutConfigurationRecorderOutput, error) PutDeliveryChannelRequest(*configservice.PutDeliveryChannelInput) (*request.Request, *configservice.PutDeliveryChannelOutput) PutDeliveryChannel(*configservice.PutDeliveryChannelInput) (*configservice.PutDeliveryChannelOutput, error) PutEvaluationsRequest(*configservice.PutEvaluationsInput) (*request.Request, *configservice.PutEvaluationsOutput) PutEvaluations(*configservice.PutEvaluationsInput) (*configservice.PutEvaluationsOutput, error) StartConfigRulesEvaluationRequest(*configservice.StartConfigRulesEvaluationInput) (*request.Request, *configservice.StartConfigRulesEvaluationOutput) StartConfigRulesEvaluation(*configservice.StartConfigRulesEvaluationInput) (*configservice.StartConfigRulesEvaluationOutput, error) StartConfigurationRecorderRequest(*configservice.StartConfigurationRecorderInput) (*request.Request, *configservice.StartConfigurationRecorderOutput) StartConfigurationRecorder(*configservice.StartConfigurationRecorderInput) (*configservice.StartConfigurationRecorderOutput, error) StopConfigurationRecorderRequest(*configservice.StopConfigurationRecorderInput) (*request.Request, *configservice.StopConfigurationRecorderOutput) StopConfigurationRecorder(*configservice.StopConfigurationRecorderInput) (*configservice.StopConfigurationRecorderOutput, error) } var _ ConfigServiceAPI = (*configservice.ConfigService)(nil) aws-sdk-go-1.4.22/service/configservice/examples_test.go000066400000000000000000000462451300374646400232700ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package configservice_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/configservice" ) var _ time.Duration var _ bytes.Buffer func ExampleConfigService_DeleteConfigRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.DeleteConfigRuleInput{ ConfigRuleName: aws.String("StringWithCharLimit64"), // Required } resp, err := svc.DeleteConfigRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_DeleteConfigurationRecorder() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.DeleteConfigurationRecorderInput{ ConfigurationRecorderName: aws.String("RecorderName"), // Required } resp, err := svc.DeleteConfigurationRecorder(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_DeleteDeliveryChannel() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.DeleteDeliveryChannelInput{ DeliveryChannelName: aws.String("ChannelName"), // Required } resp, err := svc.DeleteDeliveryChannel(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_DeleteEvaluationResults() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.DeleteEvaluationResultsInput{ ConfigRuleName: aws.String("StringWithCharLimit64"), // Required } resp, err := svc.DeleteEvaluationResults(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_DeliverConfigSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.DeliverConfigSnapshotInput{ DeliveryChannelName: aws.String("ChannelName"), // Required } resp, err := svc.DeliverConfigSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_DescribeComplianceByConfigRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.DescribeComplianceByConfigRuleInput{ ComplianceTypes: []*string{ aws.String("ComplianceType"), // Required // More values... }, ConfigRuleNames: []*string{ aws.String("StringWithCharLimit64"), // Required // More values... }, NextToken: aws.String("String"), } resp, err := svc.DescribeComplianceByConfigRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_DescribeComplianceByResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.DescribeComplianceByResourceInput{ ComplianceTypes: []*string{ aws.String("ComplianceType"), // Required // More values... }, Limit: aws.Int64(1), NextToken: aws.String("NextToken"), ResourceId: aws.String("StringWithCharLimit256"), ResourceType: aws.String("StringWithCharLimit256"), } resp, err := svc.DescribeComplianceByResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_DescribeConfigRuleEvaluationStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.DescribeConfigRuleEvaluationStatusInput{ ConfigRuleNames: []*string{ aws.String("StringWithCharLimit64"), // Required // More values... }, } resp, err := svc.DescribeConfigRuleEvaluationStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_DescribeConfigRules() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.DescribeConfigRulesInput{ ConfigRuleNames: []*string{ aws.String("StringWithCharLimit64"), // Required // More values... }, NextToken: aws.String("String"), } resp, err := svc.DescribeConfigRules(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_DescribeConfigurationRecorderStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.DescribeConfigurationRecorderStatusInput{ ConfigurationRecorderNames: []*string{ aws.String("RecorderName"), // Required // More values... }, } resp, err := svc.DescribeConfigurationRecorderStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_DescribeConfigurationRecorders() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.DescribeConfigurationRecordersInput{ ConfigurationRecorderNames: []*string{ aws.String("RecorderName"), // Required // More values... }, } resp, err := svc.DescribeConfigurationRecorders(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_DescribeDeliveryChannelStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.DescribeDeliveryChannelStatusInput{ DeliveryChannelNames: []*string{ aws.String("ChannelName"), // Required // More values... }, } resp, err := svc.DescribeDeliveryChannelStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_DescribeDeliveryChannels() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.DescribeDeliveryChannelsInput{ DeliveryChannelNames: []*string{ aws.String("ChannelName"), // Required // More values... }, } resp, err := svc.DescribeDeliveryChannels(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_GetComplianceDetailsByConfigRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.GetComplianceDetailsByConfigRuleInput{ ConfigRuleName: aws.String("StringWithCharLimit64"), // Required ComplianceTypes: []*string{ aws.String("ComplianceType"), // Required // More values... }, Limit: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.GetComplianceDetailsByConfigRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_GetComplianceDetailsByResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.GetComplianceDetailsByResourceInput{ ResourceId: aws.String("StringWithCharLimit256"), // Required ResourceType: aws.String("StringWithCharLimit256"), // Required ComplianceTypes: []*string{ aws.String("ComplianceType"), // Required // More values... }, NextToken: aws.String("String"), } resp, err := svc.GetComplianceDetailsByResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_GetComplianceSummaryByConfigRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) var params *configservice.GetComplianceSummaryByConfigRuleInput resp, err := svc.GetComplianceSummaryByConfigRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_GetComplianceSummaryByResourceType() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.GetComplianceSummaryByResourceTypeInput{ ResourceTypes: []*string{ aws.String("StringWithCharLimit256"), // Required // More values... }, } resp, err := svc.GetComplianceSummaryByResourceType(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_GetResourceConfigHistory() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.GetResourceConfigHistoryInput{ ResourceId: aws.String("ResourceId"), // Required ResourceType: aws.String("ResourceType"), // Required ChronologicalOrder: aws.String("ChronologicalOrder"), EarlierTime: aws.Time(time.Now()), LaterTime: aws.Time(time.Now()), Limit: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.GetResourceConfigHistory(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_ListDiscoveredResources() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.ListDiscoveredResourcesInput{ ResourceType: aws.String("ResourceType"), // Required IncludeDeletedResources: aws.Bool(true), Limit: aws.Int64(1), NextToken: aws.String("NextToken"), ResourceIds: []*string{ aws.String("ResourceId"), // Required // More values... }, ResourceName: aws.String("ResourceName"), } resp, err := svc.ListDiscoveredResources(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_PutConfigRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.PutConfigRuleInput{ ConfigRule: &configservice.ConfigRule{ // Required Source: &configservice.Source{ // Required Owner: aws.String("Owner"), SourceDetails: []*configservice.SourceDetail{ { // Required EventSource: aws.String("EventSource"), MaximumExecutionFrequency: aws.String("MaximumExecutionFrequency"), MessageType: aws.String("MessageType"), }, // More values... }, SourceIdentifier: aws.String("StringWithCharLimit256"), }, ConfigRuleArn: aws.String("String"), ConfigRuleId: aws.String("String"), ConfigRuleName: aws.String("StringWithCharLimit64"), ConfigRuleState: aws.String("ConfigRuleState"), Description: aws.String("EmptiableStringWithCharLimit256"), InputParameters: aws.String("StringWithCharLimit256"), MaximumExecutionFrequency: aws.String("MaximumExecutionFrequency"), Scope: &configservice.Scope{ ComplianceResourceId: aws.String("StringWithCharLimit256"), ComplianceResourceTypes: []*string{ aws.String("StringWithCharLimit256"), // Required // More values... }, TagKey: aws.String("StringWithCharLimit128"), TagValue: aws.String("StringWithCharLimit256"), }, }, } resp, err := svc.PutConfigRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_PutConfigurationRecorder() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.PutConfigurationRecorderInput{ ConfigurationRecorder: &configservice.ConfigurationRecorder{ // Required Name: aws.String("RecorderName"), RecordingGroup: &configservice.RecordingGroup{ AllSupported: aws.Bool(true), IncludeGlobalResourceTypes: aws.Bool(true), ResourceTypes: []*string{ aws.String("ResourceType"), // Required // More values... }, }, RoleARN: aws.String("String"), }, } resp, err := svc.PutConfigurationRecorder(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_PutDeliveryChannel() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.PutDeliveryChannelInput{ DeliveryChannel: &configservice.DeliveryChannel{ // Required ConfigSnapshotDeliveryProperties: &configservice.ConfigSnapshotDeliveryProperties{ DeliveryFrequency: aws.String("MaximumExecutionFrequency"), }, Name: aws.String("ChannelName"), S3BucketName: aws.String("String"), S3KeyPrefix: aws.String("String"), SnsTopicARN: aws.String("String"), }, } resp, err := svc.PutDeliveryChannel(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_PutEvaluations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.PutEvaluationsInput{ ResultToken: aws.String("String"), // Required Evaluations: []*configservice.Evaluation{ { // Required ComplianceResourceId: aws.String("StringWithCharLimit256"), // Required ComplianceResourceType: aws.String("StringWithCharLimit256"), // Required ComplianceType: aws.String("ComplianceType"), // Required OrderingTimestamp: aws.Time(time.Now()), // Required Annotation: aws.String("StringWithCharLimit256"), }, // More values... }, } resp, err := svc.PutEvaluations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_StartConfigRulesEvaluation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.StartConfigRulesEvaluationInput{ ConfigRuleNames: []*string{ aws.String("StringWithCharLimit64"), // Required // More values... }, } resp, err := svc.StartConfigRulesEvaluation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_StartConfigurationRecorder() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.StartConfigurationRecorderInput{ ConfigurationRecorderName: aws.String("RecorderName"), // Required } resp, err := svc.StartConfigurationRecorder(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleConfigService_StopConfigurationRecorder() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := configservice.New(sess) params := &configservice.StopConfigurationRecorderInput{ ConfigurationRecorderName: aws.String("RecorderName"), // Required } resp, err := svc.StopConfigurationRecorder(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/configservice/service.go000066400000000000000000000104041300374646400220370ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package configservice import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // AWS Config provides a way to keep track of the configurations of all the // AWS resources associated with your AWS account. You can use AWS Config to // get the current and historical configurations of each AWS resource and also // to get information about the relationship between the resources. An AWS resource // can be an Amazon Compute Cloud (Amazon EC2) instance, an Elastic Block Store // (EBS) volume, an Elastic network Interface (ENI), or a security group. For // a complete list of resources currently supported by AWS Config, see Supported // AWS Resources (http://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources). // // You can access and manage AWS Config through the AWS Management Console, // the AWS Command Line Interface (AWS CLI), the AWS Config API, or the AWS // SDKs for AWS Config // // This reference guide contains documentation for the AWS Config API and the // AWS CLI commands that you can use to manage AWS Config. // // The AWS Config API uses the Signature Version 4 protocol for signing requests. // For more information about how to sign a request with this protocol, see // Signature Version 4 Signing Process (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). // // For detailed information about AWS Config features and their associated actions // or commands, as well as how to work with AWS Management Console, see What // Is AWS Config? (http://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html) // in the AWS Config Developer Guide. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type ConfigService struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "config" // New creates a new instance of the ConfigService client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a ConfigService client from just a session. // svc := configservice.New(mySession) // // // Create a ConfigService client with additional configuration // svc := configservice.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *ConfigService { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *ConfigService { svc := &ConfigService{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-11-12", JSONVersion: "1.1", TargetPrefix: "StarlingDoveService", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a ConfigService operation and runs any // custom request initialization. func (c *ConfigService) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/databasemigrationservice/000077500000000000000000000000001300374646400222625ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/databasemigrationservice/api.go000066400000000000000000005137451300374646400234010ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package databasemigrationservice provides a client for AWS Database Migration Service. package databasemigrationservice import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opAddTagsToResource = "AddTagsToResource" // AddTagsToResourceRequest generates a "aws/request.Request" representing the // client's request for the AddTagsToResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddTagsToResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddTagsToResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddTagsToResourceRequest method. // req, resp := client.AddTagsToResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) AddTagsToResourceRequest(input *AddTagsToResourceInput) (req *request.Request, output *AddTagsToResourceOutput) { op := &request.Operation{ Name: opAddTagsToResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddTagsToResourceInput{} } req = c.newRequest(op, input, output) output = &AddTagsToResourceOutput{} req.Data = output return } // AddTagsToResource API operation for AWS Database Migration Service. // // Adds metadata tags to a DMS resource, including replication instance, endpoint, // security group, and migration task. These tags can also be used with cost // allocation reporting to track cost associated with DMS resources, or used // in a Condition statement in an IAM policy for DMS. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation AddTagsToResource for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The resource could not be found. // func (c *DatabaseMigrationService) AddTagsToResource(input *AddTagsToResourceInput) (*AddTagsToResourceOutput, error) { req, out := c.AddTagsToResourceRequest(input) err := req.Send() return out, err } const opCreateEndpoint = "CreateEndpoint" // CreateEndpointRequest generates a "aws/request.Request" representing the // client's request for the CreateEndpoint operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateEndpoint for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateEndpoint method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateEndpointRequest method. // req, resp := client.CreateEndpointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) CreateEndpointRequest(input *CreateEndpointInput) (req *request.Request, output *CreateEndpointOutput) { op := &request.Operation{ Name: opCreateEndpoint, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateEndpointInput{} } req = c.newRequest(op, input, output) output = &CreateEndpointOutput{} req.Data = output return } // CreateEndpoint API operation for AWS Database Migration Service. // // Creates an endpoint using the provided settings. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation CreateEndpoint for usage and error information. // // Returned Error Codes: // * KMSKeyNotAccessibleFault // AWS DMS cannot access the KMS key. // // * ResourceAlreadyExistsFault // The resource you are attempting to create already exists. // // * ResourceQuotaExceededFault // The quota for this resource quota has been exceeded. // // * InvalidResourceStateFault // The resource is in a state that prevents it from being used for database // migration. // // * ResourceNotFoundFault // The resource could not be found. // func (c *DatabaseMigrationService) CreateEndpoint(input *CreateEndpointInput) (*CreateEndpointOutput, error) { req, out := c.CreateEndpointRequest(input) err := req.Send() return out, err } const opCreateReplicationInstance = "CreateReplicationInstance" // CreateReplicationInstanceRequest generates a "aws/request.Request" representing the // client's request for the CreateReplicationInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateReplicationInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateReplicationInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateReplicationInstanceRequest method. // req, resp := client.CreateReplicationInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) CreateReplicationInstanceRequest(input *CreateReplicationInstanceInput) (req *request.Request, output *CreateReplicationInstanceOutput) { op := &request.Operation{ Name: opCreateReplicationInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateReplicationInstanceInput{} } req = c.newRequest(op, input, output) output = &CreateReplicationInstanceOutput{} req.Data = output return } // CreateReplicationInstance API operation for AWS Database Migration Service. // // Creates the replication instance using the specified parameters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation CreateReplicationInstance for usage and error information. // // Returned Error Codes: // * AccessDeniedFault // AWS DMS was denied access to the endpoint. // // * ResourceAlreadyExistsFault // The resource you are attempting to create already exists. // // * InsufficientResourceCapacityFault // There are not enough resources allocated to the database migration. // // * ResourceQuotaExceededFault // The quota for this resource quota has been exceeded. // // * StorageQuotaExceededFault // The storage quota has been exceeded. // // * ResourceNotFoundFault // The resource could not be found. // // * ReplicationSubnetGroupDoesNotCoverEnoughAZs // The replication subnet group does not cover enough Availability Zones (AZs). // Edit the replication subnet group and add more AZs. // // * InvalidResourceStateFault // The resource is in a state that prevents it from being used for database // migration. // // * InvalidSubnet // The subnet provided is invalid. // // * KMSKeyNotAccessibleFault // AWS DMS cannot access the KMS key. // func (c *DatabaseMigrationService) CreateReplicationInstance(input *CreateReplicationInstanceInput) (*CreateReplicationInstanceOutput, error) { req, out := c.CreateReplicationInstanceRequest(input) err := req.Send() return out, err } const opCreateReplicationSubnetGroup = "CreateReplicationSubnetGroup" // CreateReplicationSubnetGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateReplicationSubnetGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateReplicationSubnetGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateReplicationSubnetGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateReplicationSubnetGroupRequest method. // req, resp := client.CreateReplicationSubnetGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) CreateReplicationSubnetGroupRequest(input *CreateReplicationSubnetGroupInput) (req *request.Request, output *CreateReplicationSubnetGroupOutput) { op := &request.Operation{ Name: opCreateReplicationSubnetGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateReplicationSubnetGroupInput{} } req = c.newRequest(op, input, output) output = &CreateReplicationSubnetGroupOutput{} req.Data = output return } // CreateReplicationSubnetGroup API operation for AWS Database Migration Service. // // Creates a replication subnet group given a list of the subnet IDs in a VPC. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation CreateReplicationSubnetGroup for usage and error information. // // Returned Error Codes: // * AccessDeniedFault // AWS DMS was denied access to the endpoint. // // * ResourceAlreadyExistsFault // The resource you are attempting to create already exists. // // * ResourceNotFoundFault // The resource could not be found. // // * ResourceQuotaExceededFault // The quota for this resource quota has been exceeded. // // * ReplicationSubnetGroupDoesNotCoverEnoughAZs // The replication subnet group does not cover enough Availability Zones (AZs). // Edit the replication subnet group and add more AZs. // // * InvalidSubnet // The subnet provided is invalid. // func (c *DatabaseMigrationService) CreateReplicationSubnetGroup(input *CreateReplicationSubnetGroupInput) (*CreateReplicationSubnetGroupOutput, error) { req, out := c.CreateReplicationSubnetGroupRequest(input) err := req.Send() return out, err } const opCreateReplicationTask = "CreateReplicationTask" // CreateReplicationTaskRequest generates a "aws/request.Request" representing the // client's request for the CreateReplicationTask operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateReplicationTask for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateReplicationTask method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateReplicationTaskRequest method. // req, resp := client.CreateReplicationTaskRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) CreateReplicationTaskRequest(input *CreateReplicationTaskInput) (req *request.Request, output *CreateReplicationTaskOutput) { op := &request.Operation{ Name: opCreateReplicationTask, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateReplicationTaskInput{} } req = c.newRequest(op, input, output) output = &CreateReplicationTaskOutput{} req.Data = output return } // CreateReplicationTask API operation for AWS Database Migration Service. // // Creates a replication task using the specified parameters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation CreateReplicationTask for usage and error information. // // Returned Error Codes: // * InvalidResourceStateFault // The resource is in a state that prevents it from being used for database // migration. // // * ResourceAlreadyExistsFault // The resource you are attempting to create already exists. // // * ResourceNotFoundFault // The resource could not be found. // // * KMSKeyNotAccessibleFault // AWS DMS cannot access the KMS key. // // * ResourceQuotaExceededFault // The quota for this resource quota has been exceeded. // func (c *DatabaseMigrationService) CreateReplicationTask(input *CreateReplicationTaskInput) (*CreateReplicationTaskOutput, error) { req, out := c.CreateReplicationTaskRequest(input) err := req.Send() return out, err } const opDeleteCertificate = "DeleteCertificate" // DeleteCertificateRequest generates a "aws/request.Request" representing the // client's request for the DeleteCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteCertificateRequest method. // req, resp := client.DeleteCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) DeleteCertificateRequest(input *DeleteCertificateInput) (req *request.Request, output *DeleteCertificateOutput) { op := &request.Operation{ Name: opDeleteCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteCertificateInput{} } req = c.newRequest(op, input, output) output = &DeleteCertificateOutput{} req.Data = output return } // DeleteCertificate API operation for AWS Database Migration Service. // // Deletes the specified certificate. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation DeleteCertificate for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The resource could not be found. // // * InvalidResourceStateFault // The resource is in a state that prevents it from being used for database // migration. // func (c *DatabaseMigrationService) DeleteCertificate(input *DeleteCertificateInput) (*DeleteCertificateOutput, error) { req, out := c.DeleteCertificateRequest(input) err := req.Send() return out, err } const opDeleteEndpoint = "DeleteEndpoint" // DeleteEndpointRequest generates a "aws/request.Request" representing the // client's request for the DeleteEndpoint operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteEndpoint for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteEndpoint method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteEndpointRequest method. // req, resp := client.DeleteEndpointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) DeleteEndpointRequest(input *DeleteEndpointInput) (req *request.Request, output *DeleteEndpointOutput) { op := &request.Operation{ Name: opDeleteEndpoint, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteEndpointInput{} } req = c.newRequest(op, input, output) output = &DeleteEndpointOutput{} req.Data = output return } // DeleteEndpoint API operation for AWS Database Migration Service. // // Deletes the specified endpoint. // // All tasks associated with the endpoint must be deleted before you can delete // the endpoint. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation DeleteEndpoint for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The resource could not be found. // // * InvalidResourceStateFault // The resource is in a state that prevents it from being used for database // migration. // func (c *DatabaseMigrationService) DeleteEndpoint(input *DeleteEndpointInput) (*DeleteEndpointOutput, error) { req, out := c.DeleteEndpointRequest(input) err := req.Send() return out, err } const opDeleteReplicationInstance = "DeleteReplicationInstance" // DeleteReplicationInstanceRequest generates a "aws/request.Request" representing the // client's request for the DeleteReplicationInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteReplicationInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteReplicationInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteReplicationInstanceRequest method. // req, resp := client.DeleteReplicationInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) DeleteReplicationInstanceRequest(input *DeleteReplicationInstanceInput) (req *request.Request, output *DeleteReplicationInstanceOutput) { op := &request.Operation{ Name: opDeleteReplicationInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteReplicationInstanceInput{} } req = c.newRequest(op, input, output) output = &DeleteReplicationInstanceOutput{} req.Data = output return } // DeleteReplicationInstance API operation for AWS Database Migration Service. // // Deletes the specified replication instance. // // You must delete any migration tasks that are associated with the replication // instance before you can delete it. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation DeleteReplicationInstance for usage and error information. // // Returned Error Codes: // * InvalidResourceStateFault // The resource is in a state that prevents it from being used for database // migration. // // * ResourceNotFoundFault // The resource could not be found. // func (c *DatabaseMigrationService) DeleteReplicationInstance(input *DeleteReplicationInstanceInput) (*DeleteReplicationInstanceOutput, error) { req, out := c.DeleteReplicationInstanceRequest(input) err := req.Send() return out, err } const opDeleteReplicationSubnetGroup = "DeleteReplicationSubnetGroup" // DeleteReplicationSubnetGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteReplicationSubnetGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteReplicationSubnetGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteReplicationSubnetGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteReplicationSubnetGroupRequest method. // req, resp := client.DeleteReplicationSubnetGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) DeleteReplicationSubnetGroupRequest(input *DeleteReplicationSubnetGroupInput) (req *request.Request, output *DeleteReplicationSubnetGroupOutput) { op := &request.Operation{ Name: opDeleteReplicationSubnetGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteReplicationSubnetGroupInput{} } req = c.newRequest(op, input, output) output = &DeleteReplicationSubnetGroupOutput{} req.Data = output return } // DeleteReplicationSubnetGroup API operation for AWS Database Migration Service. // // Deletes a subnet group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation DeleteReplicationSubnetGroup for usage and error information. // // Returned Error Codes: // * InvalidResourceStateFault // The resource is in a state that prevents it from being used for database // migration. // // * ResourceNotFoundFault // The resource could not be found. // func (c *DatabaseMigrationService) DeleteReplicationSubnetGroup(input *DeleteReplicationSubnetGroupInput) (*DeleteReplicationSubnetGroupOutput, error) { req, out := c.DeleteReplicationSubnetGroupRequest(input) err := req.Send() return out, err } const opDeleteReplicationTask = "DeleteReplicationTask" // DeleteReplicationTaskRequest generates a "aws/request.Request" representing the // client's request for the DeleteReplicationTask operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteReplicationTask for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteReplicationTask method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteReplicationTaskRequest method. // req, resp := client.DeleteReplicationTaskRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) DeleteReplicationTaskRequest(input *DeleteReplicationTaskInput) (req *request.Request, output *DeleteReplicationTaskOutput) { op := &request.Operation{ Name: opDeleteReplicationTask, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteReplicationTaskInput{} } req = c.newRequest(op, input, output) output = &DeleteReplicationTaskOutput{} req.Data = output return } // DeleteReplicationTask API operation for AWS Database Migration Service. // // Deletes the specified replication task. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation DeleteReplicationTask for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The resource could not be found. // // * InvalidResourceStateFault // The resource is in a state that prevents it from being used for database // migration. // func (c *DatabaseMigrationService) DeleteReplicationTask(input *DeleteReplicationTaskInput) (*DeleteReplicationTaskOutput, error) { req, out := c.DeleteReplicationTaskRequest(input) err := req.Send() return out, err } const opDescribeAccountAttributes = "DescribeAccountAttributes" // DescribeAccountAttributesRequest generates a "aws/request.Request" representing the // client's request for the DescribeAccountAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAccountAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAccountAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAccountAttributesRequest method. // req, resp := client.DescribeAccountAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) DescribeAccountAttributesRequest(input *DescribeAccountAttributesInput) (req *request.Request, output *DescribeAccountAttributesOutput) { op := &request.Operation{ Name: opDescribeAccountAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAccountAttributesInput{} } req = c.newRequest(op, input, output) output = &DescribeAccountAttributesOutput{} req.Data = output return } // DescribeAccountAttributes API operation for AWS Database Migration Service. // // Lists all of the AWS DMS attributes for a customer account. The attributes // include AWS DMS quotas for the account, such as the number of replication // instances allowed. The description for a quota includes the quota name, current // usage toward that quota, and the quota's maximum value. // // This command does not take any parameters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation DescribeAccountAttributes for usage and error information. func (c *DatabaseMigrationService) DescribeAccountAttributes(input *DescribeAccountAttributesInput) (*DescribeAccountAttributesOutput, error) { req, out := c.DescribeAccountAttributesRequest(input) err := req.Send() return out, err } const opDescribeCertificates = "DescribeCertificates" // DescribeCertificatesRequest generates a "aws/request.Request" representing the // client's request for the DescribeCertificates operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCertificates for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCertificates method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeCertificatesRequest method. // req, resp := client.DescribeCertificatesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) DescribeCertificatesRequest(input *DescribeCertificatesInput) (req *request.Request, output *DescribeCertificatesOutput) { op := &request.Operation{ Name: opDescribeCertificates, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeCertificatesInput{} } req = c.newRequest(op, input, output) output = &DescribeCertificatesOutput{} req.Data = output return } // DescribeCertificates API operation for AWS Database Migration Service. // // Provides a description of the certificate. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation DescribeCertificates for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The resource could not be found. // func (c *DatabaseMigrationService) DescribeCertificates(input *DescribeCertificatesInput) (*DescribeCertificatesOutput, error) { req, out := c.DescribeCertificatesRequest(input) err := req.Send() return out, err } const opDescribeConnections = "DescribeConnections" // DescribeConnectionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeConnections operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeConnections for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeConnections method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeConnectionsRequest method. // req, resp := client.DescribeConnectionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) DescribeConnectionsRequest(input *DescribeConnectionsInput) (req *request.Request, output *DescribeConnectionsOutput) { op := &request.Operation{ Name: opDescribeConnections, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeConnectionsInput{} } req = c.newRequest(op, input, output) output = &DescribeConnectionsOutput{} req.Data = output return } // DescribeConnections API operation for AWS Database Migration Service. // // Describes the status of the connections that have been made between the replication // instance and an endpoint. Connections are created when you test an endpoint. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation DescribeConnections for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The resource could not be found. // func (c *DatabaseMigrationService) DescribeConnections(input *DescribeConnectionsInput) (*DescribeConnectionsOutput, error) { req, out := c.DescribeConnectionsRequest(input) err := req.Send() return out, err } const opDescribeEndpointTypes = "DescribeEndpointTypes" // DescribeEndpointTypesRequest generates a "aws/request.Request" representing the // client's request for the DescribeEndpointTypes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEndpointTypes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEndpointTypes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEndpointTypesRequest method. // req, resp := client.DescribeEndpointTypesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) DescribeEndpointTypesRequest(input *DescribeEndpointTypesInput) (req *request.Request, output *DescribeEndpointTypesOutput) { op := &request.Operation{ Name: opDescribeEndpointTypes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeEndpointTypesInput{} } req = c.newRequest(op, input, output) output = &DescribeEndpointTypesOutput{} req.Data = output return } // DescribeEndpointTypes API operation for AWS Database Migration Service. // // Returns information about the type of endpoints available. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation DescribeEndpointTypes for usage and error information. func (c *DatabaseMigrationService) DescribeEndpointTypes(input *DescribeEndpointTypesInput) (*DescribeEndpointTypesOutput, error) { req, out := c.DescribeEndpointTypesRequest(input) err := req.Send() return out, err } const opDescribeEndpoints = "DescribeEndpoints" // DescribeEndpointsRequest generates a "aws/request.Request" representing the // client's request for the DescribeEndpoints operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEndpoints for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEndpoints method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEndpointsRequest method. // req, resp := client.DescribeEndpointsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) DescribeEndpointsRequest(input *DescribeEndpointsInput) (req *request.Request, output *DescribeEndpointsOutput) { op := &request.Operation{ Name: opDescribeEndpoints, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeEndpointsInput{} } req = c.newRequest(op, input, output) output = &DescribeEndpointsOutput{} req.Data = output return } // DescribeEndpoints API operation for AWS Database Migration Service. // // Returns information about the endpoints for your account in the current region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation DescribeEndpoints for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The resource could not be found. // func (c *DatabaseMigrationService) DescribeEndpoints(input *DescribeEndpointsInput) (*DescribeEndpointsOutput, error) { req, out := c.DescribeEndpointsRequest(input) err := req.Send() return out, err } const opDescribeOrderableReplicationInstances = "DescribeOrderableReplicationInstances" // DescribeOrderableReplicationInstancesRequest generates a "aws/request.Request" representing the // client's request for the DescribeOrderableReplicationInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeOrderableReplicationInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeOrderableReplicationInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeOrderableReplicationInstancesRequest method. // req, resp := client.DescribeOrderableReplicationInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) DescribeOrderableReplicationInstancesRequest(input *DescribeOrderableReplicationInstancesInput) (req *request.Request, output *DescribeOrderableReplicationInstancesOutput) { op := &request.Operation{ Name: opDescribeOrderableReplicationInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeOrderableReplicationInstancesInput{} } req = c.newRequest(op, input, output) output = &DescribeOrderableReplicationInstancesOutput{} req.Data = output return } // DescribeOrderableReplicationInstances API operation for AWS Database Migration Service. // // Returns information about the replication instance types that can be created // in the specified region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation DescribeOrderableReplicationInstances for usage and error information. func (c *DatabaseMigrationService) DescribeOrderableReplicationInstances(input *DescribeOrderableReplicationInstancesInput) (*DescribeOrderableReplicationInstancesOutput, error) { req, out := c.DescribeOrderableReplicationInstancesRequest(input) err := req.Send() return out, err } const opDescribeRefreshSchemasStatus = "DescribeRefreshSchemasStatus" // DescribeRefreshSchemasStatusRequest generates a "aws/request.Request" representing the // client's request for the DescribeRefreshSchemasStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeRefreshSchemasStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeRefreshSchemasStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeRefreshSchemasStatusRequest method. // req, resp := client.DescribeRefreshSchemasStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) DescribeRefreshSchemasStatusRequest(input *DescribeRefreshSchemasStatusInput) (req *request.Request, output *DescribeRefreshSchemasStatusOutput) { op := &request.Operation{ Name: opDescribeRefreshSchemasStatus, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeRefreshSchemasStatusInput{} } req = c.newRequest(op, input, output) output = &DescribeRefreshSchemasStatusOutput{} req.Data = output return } // DescribeRefreshSchemasStatus API operation for AWS Database Migration Service. // // Returns the status of the RefreshSchemas operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation DescribeRefreshSchemasStatus for usage and error information. // // Returned Error Codes: // * InvalidResourceStateFault // The resource is in a state that prevents it from being used for database // migration. // // * ResourceNotFoundFault // The resource could not be found. // func (c *DatabaseMigrationService) DescribeRefreshSchemasStatus(input *DescribeRefreshSchemasStatusInput) (*DescribeRefreshSchemasStatusOutput, error) { req, out := c.DescribeRefreshSchemasStatusRequest(input) err := req.Send() return out, err } const opDescribeReplicationInstances = "DescribeReplicationInstances" // DescribeReplicationInstancesRequest generates a "aws/request.Request" representing the // client's request for the DescribeReplicationInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeReplicationInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeReplicationInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeReplicationInstancesRequest method. // req, resp := client.DescribeReplicationInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) DescribeReplicationInstancesRequest(input *DescribeReplicationInstancesInput) (req *request.Request, output *DescribeReplicationInstancesOutput) { op := &request.Operation{ Name: opDescribeReplicationInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeReplicationInstancesInput{} } req = c.newRequest(op, input, output) output = &DescribeReplicationInstancesOutput{} req.Data = output return } // DescribeReplicationInstances API operation for AWS Database Migration Service. // // Returns information about replication instances for your account in the current // region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation DescribeReplicationInstances for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The resource could not be found. // func (c *DatabaseMigrationService) DescribeReplicationInstances(input *DescribeReplicationInstancesInput) (*DescribeReplicationInstancesOutput, error) { req, out := c.DescribeReplicationInstancesRequest(input) err := req.Send() return out, err } const opDescribeReplicationSubnetGroups = "DescribeReplicationSubnetGroups" // DescribeReplicationSubnetGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeReplicationSubnetGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeReplicationSubnetGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeReplicationSubnetGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeReplicationSubnetGroupsRequest method. // req, resp := client.DescribeReplicationSubnetGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) DescribeReplicationSubnetGroupsRequest(input *DescribeReplicationSubnetGroupsInput) (req *request.Request, output *DescribeReplicationSubnetGroupsOutput) { op := &request.Operation{ Name: opDescribeReplicationSubnetGroups, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeReplicationSubnetGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeReplicationSubnetGroupsOutput{} req.Data = output return } // DescribeReplicationSubnetGroups API operation for AWS Database Migration Service. // // Returns information about the replication subnet groups. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation DescribeReplicationSubnetGroups for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The resource could not be found. // func (c *DatabaseMigrationService) DescribeReplicationSubnetGroups(input *DescribeReplicationSubnetGroupsInput) (*DescribeReplicationSubnetGroupsOutput, error) { req, out := c.DescribeReplicationSubnetGroupsRequest(input) err := req.Send() return out, err } const opDescribeReplicationTasks = "DescribeReplicationTasks" // DescribeReplicationTasksRequest generates a "aws/request.Request" representing the // client's request for the DescribeReplicationTasks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeReplicationTasks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeReplicationTasks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeReplicationTasksRequest method. // req, resp := client.DescribeReplicationTasksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) DescribeReplicationTasksRequest(input *DescribeReplicationTasksInput) (req *request.Request, output *DescribeReplicationTasksOutput) { op := &request.Operation{ Name: opDescribeReplicationTasks, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeReplicationTasksInput{} } req = c.newRequest(op, input, output) output = &DescribeReplicationTasksOutput{} req.Data = output return } // DescribeReplicationTasks API operation for AWS Database Migration Service. // // Returns information about replication tasks for your account in the current // region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation DescribeReplicationTasks for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The resource could not be found. // func (c *DatabaseMigrationService) DescribeReplicationTasks(input *DescribeReplicationTasksInput) (*DescribeReplicationTasksOutput, error) { req, out := c.DescribeReplicationTasksRequest(input) err := req.Send() return out, err } const opDescribeSchemas = "DescribeSchemas" // DescribeSchemasRequest generates a "aws/request.Request" representing the // client's request for the DescribeSchemas operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSchemas for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSchemas method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSchemasRequest method. // req, resp := client.DescribeSchemasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) DescribeSchemasRequest(input *DescribeSchemasInput) (req *request.Request, output *DescribeSchemasOutput) { op := &request.Operation{ Name: opDescribeSchemas, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSchemasInput{} } req = c.newRequest(op, input, output) output = &DescribeSchemasOutput{} req.Data = output return } // DescribeSchemas API operation for AWS Database Migration Service. // // Returns information about the schema for the specified endpoint. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation DescribeSchemas for usage and error information. // // Returned Error Codes: // * InvalidResourceStateFault // The resource is in a state that prevents it from being used for database // migration. // // * ResourceNotFoundFault // The resource could not be found. // func (c *DatabaseMigrationService) DescribeSchemas(input *DescribeSchemasInput) (*DescribeSchemasOutput, error) { req, out := c.DescribeSchemasRequest(input) err := req.Send() return out, err } const opDescribeTableStatistics = "DescribeTableStatistics" // DescribeTableStatisticsRequest generates a "aws/request.Request" representing the // client's request for the DescribeTableStatistics operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTableStatistics for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTableStatistics method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTableStatisticsRequest method. // req, resp := client.DescribeTableStatisticsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) DescribeTableStatisticsRequest(input *DescribeTableStatisticsInput) (req *request.Request, output *DescribeTableStatisticsOutput) { op := &request.Operation{ Name: opDescribeTableStatistics, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTableStatisticsInput{} } req = c.newRequest(op, input, output) output = &DescribeTableStatisticsOutput{} req.Data = output return } // DescribeTableStatistics API operation for AWS Database Migration Service. // // Returns table statistics on the database migration task, including table // name, rows inserted, rows updated, and rows deleted. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation DescribeTableStatistics for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The resource could not be found. // // * InvalidResourceStateFault // The resource is in a state that prevents it from being used for database // migration. // func (c *DatabaseMigrationService) DescribeTableStatistics(input *DescribeTableStatisticsInput) (*DescribeTableStatisticsOutput, error) { req, out := c.DescribeTableStatisticsRequest(input) err := req.Send() return out, err } const opImportCertificate = "ImportCertificate" // ImportCertificateRequest generates a "aws/request.Request" representing the // client's request for the ImportCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ImportCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ImportCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ImportCertificateRequest method. // req, resp := client.ImportCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) ImportCertificateRequest(input *ImportCertificateInput) (req *request.Request, output *ImportCertificateOutput) { op := &request.Operation{ Name: opImportCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ImportCertificateInput{} } req = c.newRequest(op, input, output) output = &ImportCertificateOutput{} req.Data = output return } // ImportCertificate API operation for AWS Database Migration Service. // // Uploads the specified certificate. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation ImportCertificate for usage and error information. // // Returned Error Codes: // * ResourceAlreadyExistsFault // The resource you are attempting to create already exists. // // * InvalidCertificateFault // The certificate was not valid. // func (c *DatabaseMigrationService) ImportCertificate(input *ImportCertificateInput) (*ImportCertificateOutput, error) { req, out := c.ImportCertificateRequest(input) err := req.Send() return out, err } const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTagsForResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTagsForResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTagsForResourceRequest method. // req, resp := client.ListTagsForResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { op := &request.Operation{ Name: opListTagsForResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListTagsForResourceInput{} } req = c.newRequest(op, input, output) output = &ListTagsForResourceOutput{} req.Data = output return } // ListTagsForResource API operation for AWS Database Migration Service. // // Lists all tags for an AWS DMS resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation ListTagsForResource for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The resource could not be found. // func (c *DatabaseMigrationService) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { req, out := c.ListTagsForResourceRequest(input) err := req.Send() return out, err } const opModifyEndpoint = "ModifyEndpoint" // ModifyEndpointRequest generates a "aws/request.Request" representing the // client's request for the ModifyEndpoint operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyEndpoint for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyEndpoint method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyEndpointRequest method. // req, resp := client.ModifyEndpointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) ModifyEndpointRequest(input *ModifyEndpointInput) (req *request.Request, output *ModifyEndpointOutput) { op := &request.Operation{ Name: opModifyEndpoint, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyEndpointInput{} } req = c.newRequest(op, input, output) output = &ModifyEndpointOutput{} req.Data = output return } // ModifyEndpoint API operation for AWS Database Migration Service. // // Modifies the specified endpoint. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation ModifyEndpoint for usage and error information. // // Returned Error Codes: // * InvalidResourceStateFault // The resource is in a state that prevents it from being used for database // migration. // // * ResourceNotFoundFault // The resource could not be found. // // * ResourceAlreadyExistsFault // The resource you are attempting to create already exists. // // * KMSKeyNotAccessibleFault // AWS DMS cannot access the KMS key. // func (c *DatabaseMigrationService) ModifyEndpoint(input *ModifyEndpointInput) (*ModifyEndpointOutput, error) { req, out := c.ModifyEndpointRequest(input) err := req.Send() return out, err } const opModifyReplicationInstance = "ModifyReplicationInstance" // ModifyReplicationInstanceRequest generates a "aws/request.Request" representing the // client's request for the ModifyReplicationInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyReplicationInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyReplicationInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyReplicationInstanceRequest method. // req, resp := client.ModifyReplicationInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) ModifyReplicationInstanceRequest(input *ModifyReplicationInstanceInput) (req *request.Request, output *ModifyReplicationInstanceOutput) { op := &request.Operation{ Name: opModifyReplicationInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyReplicationInstanceInput{} } req = c.newRequest(op, input, output) output = &ModifyReplicationInstanceOutput{} req.Data = output return } // ModifyReplicationInstance API operation for AWS Database Migration Service. // // Modifies the replication instance to apply new settings. You can change one // or more parameters by specifying these parameters and the new values in the // request. // // Some settings are applied during the maintenance window. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation ModifyReplicationInstance for usage and error information. // // Returned Error Codes: // * InvalidResourceStateFault // The resource is in a state that prevents it from being used for database // migration. // // * ResourceAlreadyExistsFault // The resource you are attempting to create already exists. // // * ResourceNotFoundFault // The resource could not be found. // // * InsufficientResourceCapacityFault // There are not enough resources allocated to the database migration. // // * StorageQuotaExceededFault // The storage quota has been exceeded. // // * UpgradeDependencyFailureFault // An upgrade dependency is preventing the database migration. // func (c *DatabaseMigrationService) ModifyReplicationInstance(input *ModifyReplicationInstanceInput) (*ModifyReplicationInstanceOutput, error) { req, out := c.ModifyReplicationInstanceRequest(input) err := req.Send() return out, err } const opModifyReplicationSubnetGroup = "ModifyReplicationSubnetGroup" // ModifyReplicationSubnetGroupRequest generates a "aws/request.Request" representing the // client's request for the ModifyReplicationSubnetGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyReplicationSubnetGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyReplicationSubnetGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyReplicationSubnetGroupRequest method. // req, resp := client.ModifyReplicationSubnetGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) ModifyReplicationSubnetGroupRequest(input *ModifyReplicationSubnetGroupInput) (req *request.Request, output *ModifyReplicationSubnetGroupOutput) { op := &request.Operation{ Name: opModifyReplicationSubnetGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyReplicationSubnetGroupInput{} } req = c.newRequest(op, input, output) output = &ModifyReplicationSubnetGroupOutput{} req.Data = output return } // ModifyReplicationSubnetGroup API operation for AWS Database Migration Service. // // Modifies the settings for the specified replication subnet group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation ModifyReplicationSubnetGroup for usage and error information. // // Returned Error Codes: // * AccessDeniedFault // AWS DMS was denied access to the endpoint. // // * ResourceNotFoundFault // The resource could not be found. // // * ResourceQuotaExceededFault // The quota for this resource quota has been exceeded. // // * SubnetAlreadyInUse // The specified subnet is already in use. // // * ReplicationSubnetGroupDoesNotCoverEnoughAZs // The replication subnet group does not cover enough Availability Zones (AZs). // Edit the replication subnet group and add more AZs. // // * InvalidSubnet // The subnet provided is invalid. // func (c *DatabaseMigrationService) ModifyReplicationSubnetGroup(input *ModifyReplicationSubnetGroupInput) (*ModifyReplicationSubnetGroupOutput, error) { req, out := c.ModifyReplicationSubnetGroupRequest(input) err := req.Send() return out, err } const opRefreshSchemas = "RefreshSchemas" // RefreshSchemasRequest generates a "aws/request.Request" representing the // client's request for the RefreshSchemas operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RefreshSchemas for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RefreshSchemas method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RefreshSchemasRequest method. // req, resp := client.RefreshSchemasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) RefreshSchemasRequest(input *RefreshSchemasInput) (req *request.Request, output *RefreshSchemasOutput) { op := &request.Operation{ Name: opRefreshSchemas, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RefreshSchemasInput{} } req = c.newRequest(op, input, output) output = &RefreshSchemasOutput{} req.Data = output return } // RefreshSchemas API operation for AWS Database Migration Service. // // Populates the schema for the specified endpoint. This is an asynchronous // operation and can take several minutes. You can check the status of this // operation by calling the DescribeRefreshSchemasStatus operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation RefreshSchemas for usage and error information. // // Returned Error Codes: // * InvalidResourceStateFault // The resource is in a state that prevents it from being used for database // migration. // // * ResourceNotFoundFault // The resource could not be found. // // * KMSKeyNotAccessibleFault // AWS DMS cannot access the KMS key. // // * ResourceQuotaExceededFault // The quota for this resource quota has been exceeded. // func (c *DatabaseMigrationService) RefreshSchemas(input *RefreshSchemasInput) (*RefreshSchemasOutput, error) { req, out := c.RefreshSchemasRequest(input) err := req.Send() return out, err } const opRemoveTagsFromResource = "RemoveTagsFromResource" // RemoveTagsFromResourceRequest generates a "aws/request.Request" representing the // client's request for the RemoveTagsFromResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveTagsFromResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveTagsFromResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveTagsFromResourceRequest method. // req, resp := client.RemoveTagsFromResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) RemoveTagsFromResourceRequest(input *RemoveTagsFromResourceInput) (req *request.Request, output *RemoveTagsFromResourceOutput) { op := &request.Operation{ Name: opRemoveTagsFromResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveTagsFromResourceInput{} } req = c.newRequest(op, input, output) output = &RemoveTagsFromResourceOutput{} req.Data = output return } // RemoveTagsFromResource API operation for AWS Database Migration Service. // // Removes metadata tags from a DMS resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation RemoveTagsFromResource for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The resource could not be found. // func (c *DatabaseMigrationService) RemoveTagsFromResource(input *RemoveTagsFromResourceInput) (*RemoveTagsFromResourceOutput, error) { req, out := c.RemoveTagsFromResourceRequest(input) err := req.Send() return out, err } const opStartReplicationTask = "StartReplicationTask" // StartReplicationTaskRequest generates a "aws/request.Request" representing the // client's request for the StartReplicationTask operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StartReplicationTask for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StartReplicationTask method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StartReplicationTaskRequest method. // req, resp := client.StartReplicationTaskRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) StartReplicationTaskRequest(input *StartReplicationTaskInput) (req *request.Request, output *StartReplicationTaskOutput) { op := &request.Operation{ Name: opStartReplicationTask, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartReplicationTaskInput{} } req = c.newRequest(op, input, output) output = &StartReplicationTaskOutput{} req.Data = output return } // StartReplicationTask API operation for AWS Database Migration Service. // // Starts the replication task. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation StartReplicationTask for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The resource could not be found. // // * InvalidResourceStateFault // The resource is in a state that prevents it from being used for database // migration. // func (c *DatabaseMigrationService) StartReplicationTask(input *StartReplicationTaskInput) (*StartReplicationTaskOutput, error) { req, out := c.StartReplicationTaskRequest(input) err := req.Send() return out, err } const opStopReplicationTask = "StopReplicationTask" // StopReplicationTaskRequest generates a "aws/request.Request" representing the // client's request for the StopReplicationTask operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StopReplicationTask for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StopReplicationTask method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StopReplicationTaskRequest method. // req, resp := client.StopReplicationTaskRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) StopReplicationTaskRequest(input *StopReplicationTaskInput) (req *request.Request, output *StopReplicationTaskOutput) { op := &request.Operation{ Name: opStopReplicationTask, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StopReplicationTaskInput{} } req = c.newRequest(op, input, output) output = &StopReplicationTaskOutput{} req.Data = output return } // StopReplicationTask API operation for AWS Database Migration Service. // // Stops the replication task. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation StopReplicationTask for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The resource could not be found. // // * InvalidResourceStateFault // The resource is in a state that prevents it from being used for database // migration. // func (c *DatabaseMigrationService) StopReplicationTask(input *StopReplicationTaskInput) (*StopReplicationTaskOutput, error) { req, out := c.StopReplicationTaskRequest(input) err := req.Send() return out, err } const opTestConnection = "TestConnection" // TestConnectionRequest generates a "aws/request.Request" representing the // client's request for the TestConnection operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See TestConnection for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the TestConnection method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the TestConnectionRequest method. // req, resp := client.TestConnectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DatabaseMigrationService) TestConnectionRequest(input *TestConnectionInput) (req *request.Request, output *TestConnectionOutput) { op := &request.Operation{ Name: opTestConnection, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &TestConnectionInput{} } req = c.newRequest(op, input, output) output = &TestConnectionOutput{} req.Data = output return } // TestConnection API operation for AWS Database Migration Service. // // Tests the connection between the replication instance and the endpoint. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Database Migration Service's // API operation TestConnection for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The resource could not be found. // // * InvalidResourceStateFault // The resource is in a state that prevents it from being used for database // migration. // // * KMSKeyNotAccessibleFault // AWS DMS cannot access the KMS key. // // * ResourceQuotaExceededFault // The quota for this resource quota has been exceeded. // func (c *DatabaseMigrationService) TestConnection(input *TestConnectionInput) (*TestConnectionOutput, error) { req, out := c.TestConnectionRequest(input) err := req.Send() return out, err } // Describes a quota for an AWS account, for example, the number of replication // instances allowed. type AccountQuota struct { _ struct{} `type:"structure"` // The name of the AWS DMS quota for this AWS account. AccountQuotaName *string `type:"string"` // The maximum allowed value for the quota. Max *int64 `type:"long"` // The amount currently used toward the quota maximum. Used *int64 `type:"long"` } // String returns the string representation func (s AccountQuota) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AccountQuota) GoString() string { return s.String() } type AddTagsToResourceInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the AWS DMS resource the tag is to be added // to. AWS DMS resources include a replication instance, endpoint, and a replication // task. // // ResourceArn is a required field ResourceArn *string `type:"string" required:"true"` // The tag to be assigned to the DMS resource. // // Tags is a required field Tags []*Tag `locationNameList:"Tag" type:"list" required:"true"` } // String returns the string representation func (s AddTagsToResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsToResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsToResourceInput"} if s.ResourceArn == nil { invalidParams.Add(request.NewErrParamRequired("ResourceArn")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddTagsToResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddTagsToResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToResourceOutput) GoString() string { return s.String() } type AvailabilityZone struct { _ struct{} `type:"structure"` // The name of the availability zone. Name *string `type:"string"` } // String returns the string representation func (s AvailabilityZone) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AvailabilityZone) GoString() string { return s.String() } // The SSL certificate that can be used to encrypt connections between the endpoints // and the replication instance. type Certificate struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) for the certificate. CertificateArn *string `type:"string"` // the date the certificate was created. CertificateCreationDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The customer-assigned name of the certificate. Valid characters are [A-z_0-9]. CertificateIdentifier *string `type:"string"` // The owner of the certificate. CertificateOwner *string `type:"string"` // The contents of the .pem X.509 certificate file. CertificatePem *string `type:"string"` // The key length of the cryptographic algorithm being used. KeyLength *int64 `type:"integer"` // The signing algorithm for the certificate. SigningAlgorithm *string `type:"string"` // The beginning date the certificate is valid. ValidFromDate *time.Time `type:"timestamp" timestampFormat:"unix"` // the final date the certificate is valid. ValidToDate *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s Certificate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Certificate) GoString() string { return s.String() } type Connection struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) string that uniquely identifies the endpoint. EndpointArn *string `type:"string"` // The identifier of the endpoint. Identifiers must begin with a letter; must // contain only ASCII letters, digits, and hyphens; and must not end with a // hyphen or contain two consecutive hyphens. EndpointIdentifier *string `type:"string"` // The error message when the connection last failed. LastFailureMessage *string `type:"string"` // The Amazon Resource Name (ARN) of the replication instance. ReplicationInstanceArn *string `type:"string"` // The replication instance identifier. This parameter is stored as a lowercase // string. ReplicationInstanceIdentifier *string `type:"string"` // The connection status. Status *string `type:"string"` } // String returns the string representation func (s Connection) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Connection) GoString() string { return s.String() } type CreateEndpointInput struct { _ struct{} `type:"structure"` // The Amazon Resource Number (ARN) for the certificate. CertificateArn *string `type:"string"` // The name of the endpoint database. DatabaseName *string `type:"string"` // The database endpoint identifier. Identifiers must begin with a letter; must // contain only ASCII letters, digits, and hyphens; and must not end with a // hyphen or contain two consecutive hyphens. // // EndpointIdentifier is a required field EndpointIdentifier *string `type:"string" required:"true"` // The type of endpoint. // // EndpointType is a required field EndpointType *string `type:"string" required:"true" enum:"ReplicationEndpointTypeValue"` // The type of engine for the endpoint. Valid values include MYSQL, ORACLE, // POSTGRES, MARIADB, AURORA, REDSHIFT, and SQLSERVER. // // EngineName is a required field EngineName *string `type:"string" required:"true"` // Additional attributes associated with the connection. ExtraConnectionAttributes *string `type:"string"` // The KMS key identifier that will be used to encrypt the connection parameters. // If you do not specify a value for the KmsKeyId parameter, then AWS DMS will // use your default encryption key. AWS KMS creates the default encryption key // for your AWS account. Your AWS account has a different default encryption // key for each AWS region. KmsKeyId *string `type:"string"` // The password to be used to login to the endpoint database. // // Password is a required field Password *string `type:"string" required:"true"` // The port used by the endpoint database. // // Port is a required field Port *int64 `type:"integer" required:"true"` // The name of the server where the endpoint database resides. // // ServerName is a required field ServerName *string `type:"string" required:"true"` // The SSL mode to use for the SSL connection. // // SSL mode can be one of four values: none, require, verify-ca, verify-full. // // The default value is none. SslMode *string `type:"string" enum:"DmsSslModeValue"` // Tags to be added to the endpoint. Tags []*Tag `locationNameList:"Tag" type:"list"` // The user name to be used to login to the endpoint database. // // Username is a required field Username *string `type:"string" required:"true"` } // String returns the string representation func (s CreateEndpointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateEndpointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateEndpointInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateEndpointInput"} if s.EndpointIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("EndpointIdentifier")) } if s.EndpointType == nil { invalidParams.Add(request.NewErrParamRequired("EndpointType")) } if s.EngineName == nil { invalidParams.Add(request.NewErrParamRequired("EngineName")) } if s.Password == nil { invalidParams.Add(request.NewErrParamRequired("Password")) } if s.Port == nil { invalidParams.Add(request.NewErrParamRequired("Port")) } if s.ServerName == nil { invalidParams.Add(request.NewErrParamRequired("ServerName")) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateEndpointOutput struct { _ struct{} `type:"structure"` // The endpoint that was created. Endpoint *Endpoint `type:"structure"` } // String returns the string representation func (s CreateEndpointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateEndpointOutput) GoString() string { return s.String() } type CreateReplicationInstanceInput struct { _ struct{} `type:"structure"` // The amount of storage (in gigabytes) to be initially allocated for the replication // instance. AllocatedStorage *int64 `type:"integer"` // Indicates that minor engine upgrades will be applied automatically to the // replication instance during the maintenance window. // // Default: true AutoMinorVersionUpgrade *bool `type:"boolean"` // The EC2 Availability Zone that the replication instance will be created in. // // Default: A random, system-chosen Availability Zone in the endpoint's region. // // Example: us-east-1d AvailabilityZone *string `type:"string"` // The engine version number of the replication instance. EngineVersion *string `type:"string"` // The KMS key identifier that will be used to encrypt the content on the replication // instance. If you do not specify a value for the KmsKeyId parameter, then // AWS DMS will use your default encryption key. AWS KMS creates the default // encryption key for your AWS account. Your AWS account has a different default // encryption key for each AWS region. KmsKeyId *string `type:"string"` // Specifies if the replication instance is a Multi-AZ deployment. You cannot // set the AvailabilityZone parameter if the Multi-AZ parameter is set to true. MultiAZ *bool `type:"boolean"` // The weekly time range during which system maintenance can occur, in Universal // Coordinated Time (UTC). // // Format: ddd:hh24:mi-ddd:hh24:mi // // Default: A 30-minute window selected at random from an 8-hour block of time // per region, occurring on a random day of the week. // // Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun // // Constraints: Minimum 30-minute window. PreferredMaintenanceWindow *string `type:"string"` // Specifies the accessibility options for the replication instance. A value // of true represents an instance with a public IP address. A value of false // represents an instance with a private IP address. The default value is true. PubliclyAccessible *bool `type:"boolean"` // The compute and memory capacity of the replication instance as specified // by the replication instance class. // // Valid Values: dms.t2.micro | dms.t2.small | dms.t2.medium | dms.t2.large // | dms.c4.large | dms.c4.xlarge | dms.c4.2xlarge | dms.c4.4xlarge // // ReplicationInstanceClass is a required field ReplicationInstanceClass *string `type:"string" required:"true"` // The replication instance identifier. This parameter is stored as a lowercase // string. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // Example: myrepinstance // // ReplicationInstanceIdentifier is a required field ReplicationInstanceIdentifier *string `type:"string" required:"true"` // A subnet group to associate with the replication instance. ReplicationSubnetGroupIdentifier *string `type:"string"` // Tags to be associated with the replication instance. Tags []*Tag `locationNameList:"Tag" type:"list"` // Specifies the VPC security group to be used with the replication instance. // The VPC security group must work with the VPC containing the replication // instance. VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` } // String returns the string representation func (s CreateReplicationInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReplicationInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateReplicationInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateReplicationInstanceInput"} if s.ReplicationInstanceClass == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationInstanceClass")) } if s.ReplicationInstanceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationInstanceIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateReplicationInstanceOutput struct { _ struct{} `type:"structure"` // The replication instance that was created. ReplicationInstance *ReplicationInstance `type:"structure"` } // String returns the string representation func (s CreateReplicationInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReplicationInstanceOutput) GoString() string { return s.String() } type CreateReplicationSubnetGroupInput struct { _ struct{} `type:"structure"` // The description for the subnet group. // // ReplicationSubnetGroupDescription is a required field ReplicationSubnetGroupDescription *string `type:"string" required:"true"` // The name for the replication subnet group. This value is stored as a lowercase // string. // // Constraints: Must contain no more than 255 alphanumeric characters, periods, // spaces, underscores, or hyphens. Must not be "default". // // Example: mySubnetgroup // // ReplicationSubnetGroupIdentifier is a required field ReplicationSubnetGroupIdentifier *string `type:"string" required:"true"` // The EC2 subnet IDs for the subnet group. // // SubnetIds is a required field SubnetIds []*string `locationNameList:"SubnetIdentifier" type:"list" required:"true"` // The tag to be assigned to the subnet group. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateReplicationSubnetGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReplicationSubnetGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateReplicationSubnetGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateReplicationSubnetGroupInput"} if s.ReplicationSubnetGroupDescription == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationSubnetGroupDescription")) } if s.ReplicationSubnetGroupIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationSubnetGroupIdentifier")) } if s.SubnetIds == nil { invalidParams.Add(request.NewErrParamRequired("SubnetIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateReplicationSubnetGroupOutput struct { _ struct{} `type:"structure"` // The replication subnet group that was created. ReplicationSubnetGroup *ReplicationSubnetGroup `type:"structure"` } // String returns the string representation func (s CreateReplicationSubnetGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReplicationSubnetGroupOutput) GoString() string { return s.String() } type CreateReplicationTaskInput struct { _ struct{} `type:"structure"` // The start time for the Change Data Capture (CDC) operation. CdcStartTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The migration type. // // MigrationType is a required field MigrationType *string `type:"string" required:"true" enum:"MigrationTypeValue"` // The Amazon Resource Name (ARN) of the replication instance. // // ReplicationInstanceArn is a required field ReplicationInstanceArn *string `type:"string" required:"true"` // The replication task identifier. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // ReplicationTaskIdentifier is a required field ReplicationTaskIdentifier *string `type:"string" required:"true"` // Settings for the task, such as target metadata settings. ReplicationTaskSettings *string `type:"string"` // The Amazon Resource Name (ARN) string that uniquely identifies the endpoint. // // SourceEndpointArn is a required field SourceEndpointArn *string `type:"string" required:"true"` // The path of the JSON file that contains the table mappings. Preceed the path // with "file://". // // For example, --table-mappings file://mappingfile.json // // TableMappings is a required field TableMappings *string `type:"string" required:"true"` // Tags to be added to the replication instance. Tags []*Tag `locationNameList:"Tag" type:"list"` // The Amazon Resource Name (ARN) string that uniquely identifies the endpoint. // // TargetEndpointArn is a required field TargetEndpointArn *string `type:"string" required:"true"` } // String returns the string representation func (s CreateReplicationTaskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReplicationTaskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateReplicationTaskInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateReplicationTaskInput"} if s.MigrationType == nil { invalidParams.Add(request.NewErrParamRequired("MigrationType")) } if s.ReplicationInstanceArn == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationInstanceArn")) } if s.ReplicationTaskIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationTaskIdentifier")) } if s.SourceEndpointArn == nil { invalidParams.Add(request.NewErrParamRequired("SourceEndpointArn")) } if s.TableMappings == nil { invalidParams.Add(request.NewErrParamRequired("TableMappings")) } if s.TargetEndpointArn == nil { invalidParams.Add(request.NewErrParamRequired("TargetEndpointArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateReplicationTaskOutput struct { _ struct{} `type:"structure"` // The replication task that was created. ReplicationTask *ReplicationTask `type:"structure"` } // String returns the string representation func (s CreateReplicationTaskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReplicationTaskOutput) GoString() string { return s.String() } type DeleteCertificateInput struct { _ struct{} `type:"structure"` // the Amazon Resource Name (ARN) of the deleted certificate. // // CertificateArn is a required field CertificateArn *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteCertificateInput"} if s.CertificateArn == nil { invalidParams.Add(request.NewErrParamRequired("CertificateArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteCertificateOutput struct { _ struct{} `type:"structure"` // The SSL certificate. Certificate *Certificate `type:"structure"` } // String returns the string representation func (s DeleteCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCertificateOutput) GoString() string { return s.String() } type DeleteEndpointInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) string that uniquely identifies the endpoint. // // EndpointArn is a required field EndpointArn *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteEndpointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteEndpointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteEndpointInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteEndpointInput"} if s.EndpointArn == nil { invalidParams.Add(request.NewErrParamRequired("EndpointArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteEndpointOutput struct { _ struct{} `type:"structure"` // The endpoint that was deleted. Endpoint *Endpoint `type:"structure"` } // String returns the string representation func (s DeleteEndpointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteEndpointOutput) GoString() string { return s.String() } type DeleteReplicationInstanceInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the replication instance to be deleted. // // ReplicationInstanceArn is a required field ReplicationInstanceArn *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteReplicationInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteReplicationInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteReplicationInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteReplicationInstanceInput"} if s.ReplicationInstanceArn == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationInstanceArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteReplicationInstanceOutput struct { _ struct{} `type:"structure"` // The replication instance that was deleted. ReplicationInstance *ReplicationInstance `type:"structure"` } // String returns the string representation func (s DeleteReplicationInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteReplicationInstanceOutput) GoString() string { return s.String() } type DeleteReplicationSubnetGroupInput struct { _ struct{} `type:"structure"` // The subnet group name of the replication instance. // // ReplicationSubnetGroupIdentifier is a required field ReplicationSubnetGroupIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteReplicationSubnetGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteReplicationSubnetGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteReplicationSubnetGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteReplicationSubnetGroupInput"} if s.ReplicationSubnetGroupIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationSubnetGroupIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteReplicationSubnetGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteReplicationSubnetGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteReplicationSubnetGroupOutput) GoString() string { return s.String() } type DeleteReplicationTaskInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the replication task to be deleted. // // ReplicationTaskArn is a required field ReplicationTaskArn *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteReplicationTaskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteReplicationTaskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteReplicationTaskInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteReplicationTaskInput"} if s.ReplicationTaskArn == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationTaskArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteReplicationTaskOutput struct { _ struct{} `type:"structure"` // The deleted replication task. ReplicationTask *ReplicationTask `type:"structure"` } // String returns the string representation func (s DeleteReplicationTaskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteReplicationTaskOutput) GoString() string { return s.String() } type DescribeAccountAttributesInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DescribeAccountAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAccountAttributesInput) GoString() string { return s.String() } type DescribeAccountAttributesOutput struct { _ struct{} `type:"structure"` // Account quota information. AccountQuotas []*AccountQuota `locationNameList:"AccountQuota" type:"list"` } // String returns the string representation func (s DescribeAccountAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAccountAttributesOutput) GoString() string { return s.String() } type DescribeCertificatesInput struct { _ struct{} `type:"structure"` // Filters applied to the certificate described in the form of key-value pairs. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 10 MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeCertificatesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCertificatesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeCertificatesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeCertificatesInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeCertificatesOutput struct { _ struct{} `type:"structure"` // The SSL certificates associated with the replication instance. Certificates []*Certificate `locationNameList:"Certificate" type:"list"` // The pagination token. Marker *string `type:"string"` } // String returns the string representation func (s DescribeCertificatesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCertificatesOutput) GoString() string { return s.String() } type DescribeConnectionsInput struct { _ struct{} `type:"structure"` // The filters applied to the connection. // // Valid filter names: endpoint-arn | replication-instance-arn Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeConnectionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConnectionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeConnectionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeConnectionsInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeConnectionsOutput struct { _ struct{} `type:"structure"` // A description of the connections. Connections []*Connection `locationNameList:"Connection" type:"list"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` } // String returns the string representation func (s DescribeConnectionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConnectionsOutput) GoString() string { return s.String() } type DescribeEndpointTypesInput struct { _ struct{} `type:"structure"` // Filters applied to the describe action. // // Valid filter names: engine-name | endpoint-type Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeEndpointTypesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEndpointTypesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeEndpointTypesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeEndpointTypesInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeEndpointTypesOutput struct { _ struct{} `type:"structure"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The type of endpoints that are supported. SupportedEndpointTypes []*SupportedEndpointType `locationNameList:"SupportedEndpointType" type:"list"` } // String returns the string representation func (s DescribeEndpointTypesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEndpointTypesOutput) GoString() string { return s.String() } type DescribeEndpointsInput struct { _ struct{} `type:"structure"` // Filters applied to the describe action. // // Valid filter names: endpoint-arn | endpoint-type | endpoint-id | engine-name Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeEndpointsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEndpointsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeEndpointsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeEndpointsInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeEndpointsOutput struct { _ struct{} `type:"structure"` // Endpoint description. Endpoints []*Endpoint `locationNameList:"Endpoint" type:"list"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` } // String returns the string representation func (s DescribeEndpointsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEndpointsOutput) GoString() string { return s.String() } type DescribeOrderableReplicationInstancesInput struct { _ struct{} `type:"structure"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeOrderableReplicationInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeOrderableReplicationInstancesInput) GoString() string { return s.String() } type DescribeOrderableReplicationInstancesOutput struct { _ struct{} `type:"structure"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The order-able replication instances available. OrderableReplicationInstances []*OrderableReplicationInstance `locationNameList:"OrderableReplicationInstance" type:"list"` } // String returns the string representation func (s DescribeOrderableReplicationInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeOrderableReplicationInstancesOutput) GoString() string { return s.String() } type DescribeRefreshSchemasStatusInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) string that uniquely identifies the endpoint. // // EndpointArn is a required field EndpointArn *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeRefreshSchemasStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRefreshSchemasStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeRefreshSchemasStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeRefreshSchemasStatusInput"} if s.EndpointArn == nil { invalidParams.Add(request.NewErrParamRequired("EndpointArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeRefreshSchemasStatusOutput struct { _ struct{} `type:"structure"` // The status of the schema. RefreshSchemasStatus *RefreshSchemasStatus `type:"structure"` } // String returns the string representation func (s DescribeRefreshSchemasStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRefreshSchemasStatusOutput) GoString() string { return s.String() } type DescribeReplicationInstancesInput struct { _ struct{} `type:"structure"` // Filters applied to the describe action. // // Valid filter names: replication-instance-arn | replication-instance-id | // replication-instance-class | engine-version Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeReplicationInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReplicationInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeReplicationInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeReplicationInstancesInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeReplicationInstancesOutput struct { _ struct{} `type:"structure"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The replication instances described. ReplicationInstances []*ReplicationInstance `locationNameList:"ReplicationInstance" type:"list"` } // String returns the string representation func (s DescribeReplicationInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReplicationInstancesOutput) GoString() string { return s.String() } type DescribeReplicationSubnetGroupsInput struct { _ struct{} `type:"structure"` // Filters applied to the describe action. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeReplicationSubnetGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReplicationSubnetGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeReplicationSubnetGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeReplicationSubnetGroupsInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeReplicationSubnetGroupsOutput struct { _ struct{} `type:"structure"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // A description of the replication subnet groups. ReplicationSubnetGroups []*ReplicationSubnetGroup `locationNameList:"ReplicationSubnetGroup" type:"list"` } // String returns the string representation func (s DescribeReplicationSubnetGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReplicationSubnetGroupsOutput) GoString() string { return s.String() } type DescribeReplicationTasksInput struct { _ struct{} `type:"structure"` // Filters applied to the describe action. // // Valid filter names: replication-task-arn | replication-task-id | migration-type // | endpoint-arn | replication-instance-arn Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeReplicationTasksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReplicationTasksInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeReplicationTasksInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeReplicationTasksInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeReplicationTasksOutput struct { _ struct{} `type:"structure"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // A description of the replication tasks. ReplicationTasks []*ReplicationTask `locationNameList:"ReplicationTask" type:"list"` } // String returns the string representation func (s DescribeReplicationTasksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReplicationTasksOutput) GoString() string { return s.String() } type DescribeSchemasInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) string that uniquely identifies the endpoint. // // EndpointArn is a required field EndpointArn *string `type:"string" required:"true"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeSchemasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSchemasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeSchemasInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeSchemasInput"} if s.EndpointArn == nil { invalidParams.Add(request.NewErrParamRequired("EndpointArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeSchemasOutput struct { _ struct{} `type:"structure"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The described schema. Schemas []*string `type:"list"` } // String returns the string representation func (s DescribeSchemasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSchemasOutput) GoString() string { return s.String() } type DescribeTableStatisticsInput struct { _ struct{} `type:"structure"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The Amazon Resource Name (ARN) of the replication task. // // ReplicationTaskArn is a required field ReplicationTaskArn *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeTableStatisticsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTableStatisticsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTableStatisticsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTableStatisticsInput"} if s.ReplicationTaskArn == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationTaskArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeTableStatisticsOutput struct { _ struct{} `type:"structure"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The Amazon Resource Name (ARN) of the replication task. ReplicationTaskArn *string `type:"string"` // The table statistics. TableStatistics []*TableStatistics `type:"list"` } // String returns the string representation func (s DescribeTableStatisticsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTableStatisticsOutput) GoString() string { return s.String() } type Endpoint struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) used for SSL connection to the endpoint. CertificateArn *string `type:"string"` // The name of the database at the endpoint. DatabaseName *string `type:"string"` // The Amazon Resource Name (ARN) string that uniquely identifies the endpoint. EndpointArn *string `type:"string"` // The database endpoint identifier. Identifiers must begin with a letter; must // contain only ASCII letters, digits, and hyphens; and must not end with a // hyphen or contain two consecutive hyphens. EndpointIdentifier *string `type:"string"` // The type of endpoint. EndpointType *string `type:"string" enum:"ReplicationEndpointTypeValue"` // The database engine name. EngineName *string `type:"string"` // Additional connection attributes used to connect to the endpoint. ExtraConnectionAttributes *string `type:"string"` // The KMS key identifier that will be used to encrypt the connection parameters. // If you do not specify a value for the KmsKeyId parameter, then AWS DMS will // use your default encryption key. AWS KMS creates the default encryption key // for your AWS account. Your AWS account has a different default encryption // key for each AWS region. KmsKeyId *string `type:"string"` // The port value used to access the endpoint. Port *int64 `type:"integer"` // The name of the server at the endpoint. ServerName *string `type:"string"` // The SSL mode used to connect to the endpoint. // // SSL mode can be one of four values: none, require, verify-ca, verify-full. // // The default value is none. SslMode *string `type:"string" enum:"DmsSslModeValue"` // The status of the endpoint. Status *string `type:"string"` // The user name used to connect to the endpoint. Username *string `type:"string"` } // String returns the string representation func (s Endpoint) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Endpoint) GoString() string { return s.String() } type Filter struct { _ struct{} `type:"structure"` // The name of the filter. // // Name is a required field Name *string `type:"string" required:"true"` // The filter value. // // Values is a required field Values []*string `locationNameList:"Value" type:"list" required:"true"` } // String returns the string representation func (s Filter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Filter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Filter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Filter"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Values == nil { invalidParams.Add(request.NewErrParamRequired("Values")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ImportCertificateInput struct { _ struct{} `type:"structure"` // The customer-assigned name of the certificate. Valid characters are [A-z_0-9]. // // CertificateIdentifier is a required field CertificateIdentifier *string `type:"string" required:"true"` // The contents of the .pem X.509 certificate file. CertificatePem *string `type:"string"` } // String returns the string representation func (s ImportCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ImportCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ImportCertificateInput"} if s.CertificateIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("CertificateIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ImportCertificateOutput struct { _ struct{} `type:"structure"` // The certificate to be uploaded. Certificate *Certificate `type:"structure"` } // String returns the string representation func (s ImportCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportCertificateOutput) GoString() string { return s.String() } type ListTagsForResourceInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) string that uniquely identifies the AWS DMS // resource. // // ResourceArn is a required field ResourceArn *string `type:"string" required:"true"` } // String returns the string representation func (s ListTagsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsForResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} if s.ResourceArn == nil { invalidParams.Add(request.NewErrParamRequired("ResourceArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListTagsForResourceOutput struct { _ struct{} `type:"structure"` // A list of tags for the resource. TagList []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s ListTagsForResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceOutput) GoString() string { return s.String() } type ModifyEndpointInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the certificate used for SSL connection. CertificateArn *string `type:"string"` // The name of the endpoint database. DatabaseName *string `type:"string"` // The Amazon Resource Name (ARN) string that uniquely identifies the endpoint. // // EndpointArn is a required field EndpointArn *string `type:"string" required:"true"` // The database endpoint identifier. Identifiers must begin with a letter; must // contain only ASCII letters, digits, and hyphens; and must not end with a // hyphen or contain two consecutive hyphens. EndpointIdentifier *string `type:"string"` // The type of endpoint. EndpointType *string `type:"string" enum:"ReplicationEndpointTypeValue"` // The type of engine for the endpoint. Valid values include MYSQL, ORACLE, // POSTGRES, MARIADB, AURORA, REDSHIFT, and SQLSERVER. EngineName *string `type:"string"` // Additional attributes associated with the connection. ExtraConnectionAttributes *string `type:"string"` // The password to be used to login to the endpoint database. Password *string `type:"string"` // The port used by the endpoint database. Port *int64 `type:"integer"` // The name of the server where the endpoint database resides. ServerName *string `type:"string"` // The SSL mode to be used. // // SSL mode can be one of four values: none, require, verify-ca, verify-full. // // The default value is none. SslMode *string `type:"string" enum:"DmsSslModeValue"` // The user name to be used to login to the endpoint database. Username *string `type:"string"` } // String returns the string representation func (s ModifyEndpointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyEndpointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyEndpointInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyEndpointInput"} if s.EndpointArn == nil { invalidParams.Add(request.NewErrParamRequired("EndpointArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyEndpointOutput struct { _ struct{} `type:"structure"` // The modified endpoint. Endpoint *Endpoint `type:"structure"` } // String returns the string representation func (s ModifyEndpointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyEndpointOutput) GoString() string { return s.String() } type ModifyReplicationInstanceInput struct { _ struct{} `type:"structure"` // The amount of storage (in gigabytes) to be allocated for the replication // instance. AllocatedStorage *int64 `type:"integer"` // Indicates that major version upgrades are allowed. Changing this parameter // does not result in an outage and the change is asynchronously applied as // soon as possible. // // Constraints: This parameter must be set to true when specifying a value for // the EngineVersion parameter that is a different major version than the replication // instance's current version. AllowMajorVersionUpgrade *bool `type:"boolean"` // Indicates whether the changes should be applied immediately or during the // next maintenance window. ApplyImmediately *bool `type:"boolean"` // Indicates that minor version upgrades will be applied automatically to the // replication instance during the maintenance window. Changing this parameter // does not result in an outage except in the following case and the change // is asynchronously applied as soon as possible. An outage will result if this // parameter is set to true during the maintenance window, and a newer minor // version is available, and AWS DMS has enabled auto patching for that engine // version. AutoMinorVersionUpgrade *bool `type:"boolean"` // The engine version number of the replication instance. EngineVersion *string `type:"string"` // Specifies if the replication instance is a Multi-AZ deployment. You cannot // set the AvailabilityZone parameter if the Multi-AZ parameter is set to true. MultiAZ *bool `type:"boolean"` // The weekly time range (in UTC) during which system maintenance can occur, // which might result in an outage. Changing this parameter does not result // in an outage, except in the following situation, and the change is asynchronously // applied as soon as possible. If moving this window to the current time, there // must be at least 30 minutes between the current time and end of the window // to ensure pending changes are applied. // // Default: Uses existing setting // // Format: ddd:hh24:mi-ddd:hh24:mi // // Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun // // Constraints: Must be at least 30 minutes PreferredMaintenanceWindow *string `type:"string"` // The Amazon Resource Name (ARN) of the replication instance. // // ReplicationInstanceArn is a required field ReplicationInstanceArn *string `type:"string" required:"true"` // The compute and memory capacity of the replication instance. // // Valid Values: dms.t2.micro | dms.t2.small | dms.t2.medium | dms.t2.large // | dms.c4.large | dms.c4.xlarge | dms.c4.2xlarge | dms.c4.4xlarge ReplicationInstanceClass *string `type:"string"` // The replication instance identifier. This parameter is stored as a lowercase // string. ReplicationInstanceIdentifier *string `type:"string"` // Specifies the VPC security group to be used with the replication instance. // The VPC security group must work with the VPC containing the replication // instance. VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` } // String returns the string representation func (s ModifyReplicationInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyReplicationInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyReplicationInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyReplicationInstanceInput"} if s.ReplicationInstanceArn == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationInstanceArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyReplicationInstanceOutput struct { _ struct{} `type:"structure"` // The modified replication instance. ReplicationInstance *ReplicationInstance `type:"structure"` } // String returns the string representation func (s ModifyReplicationInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyReplicationInstanceOutput) GoString() string { return s.String() } type ModifyReplicationSubnetGroupInput struct { _ struct{} `type:"structure"` // The description of the replication instance subnet group. ReplicationSubnetGroupDescription *string `type:"string"` // The name of the replication instance subnet group. // // ReplicationSubnetGroupIdentifier is a required field ReplicationSubnetGroupIdentifier *string `type:"string" required:"true"` // A list of subnet IDs. // // SubnetIds is a required field SubnetIds []*string `locationNameList:"SubnetIdentifier" type:"list" required:"true"` } // String returns the string representation func (s ModifyReplicationSubnetGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyReplicationSubnetGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyReplicationSubnetGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyReplicationSubnetGroupInput"} if s.ReplicationSubnetGroupIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationSubnetGroupIdentifier")) } if s.SubnetIds == nil { invalidParams.Add(request.NewErrParamRequired("SubnetIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyReplicationSubnetGroupOutput struct { _ struct{} `type:"structure"` // The modified replication subnet group. ReplicationSubnetGroup *ReplicationSubnetGroup `type:"structure"` } // String returns the string representation func (s ModifyReplicationSubnetGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyReplicationSubnetGroupOutput) GoString() string { return s.String() } type OrderableReplicationInstance struct { _ struct{} `type:"structure"` // The default amount of storage (in gigabytes) that is allocated for the replication // instance. DefaultAllocatedStorage *int64 `type:"integer"` // The version of the replication engine. EngineVersion *string `type:"string"` // The amount of storage (in gigabytes) that is allocated for the replication // instance. IncludedAllocatedStorage *int64 `type:"integer"` // The minimum amount of storage (in gigabytes) that can be allocated for the // replication instance. MaxAllocatedStorage *int64 `type:"integer"` // The minimum amount of storage (in gigabytes) that can be allocated for the // replication instance. MinAllocatedStorage *int64 `type:"integer"` // The compute and memory capacity of the replication instance. // // Valid Values: dms.t2.micro | dms.t2.small | dms.t2.medium | dms.t2.large // | dms.c4.large | dms.c4.xlarge | dms.c4.2xlarge | dms.c4.4xlarge ReplicationInstanceClass *string `type:"string"` // The type of storage used by the replication instance. StorageType *string `type:"string"` } // String returns the string representation func (s OrderableReplicationInstance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OrderableReplicationInstance) GoString() string { return s.String() } type RefreshSchemasInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) string that uniquely identifies the endpoint. // // EndpointArn is a required field EndpointArn *string `type:"string" required:"true"` // The Amazon Resource Name (ARN) of the replication instance. // // ReplicationInstanceArn is a required field ReplicationInstanceArn *string `type:"string" required:"true"` } // String returns the string representation func (s RefreshSchemasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RefreshSchemasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RefreshSchemasInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RefreshSchemasInput"} if s.EndpointArn == nil { invalidParams.Add(request.NewErrParamRequired("EndpointArn")) } if s.ReplicationInstanceArn == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationInstanceArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RefreshSchemasOutput struct { _ struct{} `type:"structure"` // The status of the refreshed schema. RefreshSchemasStatus *RefreshSchemasStatus `type:"structure"` } // String returns the string representation func (s RefreshSchemasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RefreshSchemasOutput) GoString() string { return s.String() } type RefreshSchemasStatus struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) string that uniquely identifies the endpoint. EndpointArn *string `type:"string"` // The last failure message for the schema. LastFailureMessage *string `type:"string"` // The date the schema was last refreshed. LastRefreshDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The Amazon Resource Name (ARN) of the replication instance. ReplicationInstanceArn *string `type:"string"` // The status of the schema. Status *string `type:"string" enum:"RefreshSchemasStatusTypeValue"` } // String returns the string representation func (s RefreshSchemasStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RefreshSchemasStatus) GoString() string { return s.String() } type RemoveTagsFromResourceInput struct { _ struct{} `type:"structure"` // >The Amazon Resource Name (ARN) of the AWS DMS resource the tag is to be // removed from. // // ResourceArn is a required field ResourceArn *string `type:"string" required:"true"` // The tag key (name) of the tag to be removed. // // TagKeys is a required field TagKeys []*string `type:"list" required:"true"` } // String returns the string representation func (s RemoveTagsFromResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTagsFromResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTagsFromResourceInput"} if s.ResourceArn == nil { invalidParams.Add(request.NewErrParamRequired("ResourceArn")) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemoveTagsFromResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveTagsFromResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromResourceOutput) GoString() string { return s.String() } type ReplicationInstance struct { _ struct{} `type:"structure"` // The amount of storage (in gigabytes) that is allocated for the replication // instance. AllocatedStorage *int64 `type:"integer"` // Boolean value indicating if minor version upgrades will be automatically // applied to the instance. AutoMinorVersionUpgrade *bool `type:"boolean"` // The Availability Zone for the instance. AvailabilityZone *string `type:"string"` // The engine version number of the replication instance. EngineVersion *string `type:"string"` // The time the replication instance was created. InstanceCreateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The KMS key identifier that is used to encrypt the content on the replication // instance. If you do not specify a value for the KmsKeyId parameter, then // AWS DMS will use your default encryption key. AWS KMS creates the default // encryption key for your AWS account. Your AWS account has a different default // encryption key for each AWS region. KmsKeyId *string `type:"string"` // Specifies if the replication instance is a Multi-AZ deployment. You cannot // set the AvailabilityZone parameter if the Multi-AZ parameter is set to true. MultiAZ *bool `type:"boolean"` // The pending modification values. PendingModifiedValues *ReplicationPendingModifiedValues `type:"structure"` // The maintenance window times for the replication instance. PreferredMaintenanceWindow *string `type:"string"` // Specifies the accessibility options for the replication instance. A value // of true represents an instance with a public IP address. A value of false // represents an instance with a private IP address. The default value is true. PubliclyAccessible *bool `type:"boolean"` // The Amazon Resource Name (ARN) of the replication instance. ReplicationInstanceArn *string `type:"string"` // The compute and memory capacity of the replication instance. // // Valid Values: dms.t2.micro | dms.t2.small | dms.t2.medium | dms.t2.large // | dms.c4.large | dms.c4.xlarge | dms.c4.2xlarge | dms.c4.4xlarge ReplicationInstanceClass *string `type:"string"` // The replication instance identifier. This parameter is stored as a lowercase // string. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // Example: myrepinstance ReplicationInstanceIdentifier *string `type:"string"` // The private IP address of the replication instance. ReplicationInstancePrivateIpAddress *string `deprecated:"true" type:"string"` // The private IP address of the replication instance. ReplicationInstancePrivateIpAddresses []*string `type:"list"` // The public IP address of the replication instance. ReplicationInstancePublicIpAddress *string `deprecated:"true" type:"string"` // The public IP address of the replication instance. ReplicationInstancePublicIpAddresses []*string `type:"list"` // The status of the replication instance. ReplicationInstanceStatus *string `type:"string"` // The subnet group for the replication instance. ReplicationSubnetGroup *ReplicationSubnetGroup `type:"structure"` // The VPC security group for the instance. VpcSecurityGroups []*VpcSecurityGroupMembership `locationNameList:"VpcSecurityGroupMembership" type:"list"` } // String returns the string representation func (s ReplicationInstance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplicationInstance) GoString() string { return s.String() } type ReplicationPendingModifiedValues struct { _ struct{} `type:"structure"` // The amount of storage (in gigabytes) that is allocated for the replication // instance. AllocatedStorage *int64 `type:"integer"` // The engine version number of the replication instance. EngineVersion *string `type:"string"` // Specifies if the replication instance is a Multi-AZ deployment. You cannot // set the AvailabilityZone parameter if the Multi-AZ parameter is set to true. MultiAZ *bool `type:"boolean"` // The compute and memory capacity of the replication instance. // // Valid Values: dms.t2.micro | dms.t2.small | dms.t2.medium | dms.t2.large // | dms.c4.large | dms.c4.xlarge | dms.c4.2xlarge | dms.c4.4xlarge ReplicationInstanceClass *string `type:"string"` } // String returns the string representation func (s ReplicationPendingModifiedValues) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplicationPendingModifiedValues) GoString() string { return s.String() } type ReplicationSubnetGroup struct { _ struct{} `type:"structure"` // The description of the replication subnet group. ReplicationSubnetGroupDescription *string `type:"string"` // The identifier of the replication instance subnet group. ReplicationSubnetGroupIdentifier *string `type:"string"` // The status of the subnet group. SubnetGroupStatus *string `type:"string"` // The subnets that are in the subnet group. Subnets []*Subnet `locationNameList:"Subnet" type:"list"` // The ID of the VPC. VpcId *string `type:"string"` } // String returns the string representation func (s ReplicationSubnetGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplicationSubnetGroup) GoString() string { return s.String() } type ReplicationTask struct { _ struct{} `type:"structure"` // The last error (failure) message generated for the replication instance. LastFailureMessage *string `type:"string"` // The type of migration. MigrationType *string `type:"string" enum:"MigrationTypeValue"` // The Amazon Resource Name (ARN) of the replication instance. ReplicationInstanceArn *string `type:"string"` // The Amazon Resource Name (ARN) of the replication task. ReplicationTaskArn *string `type:"string"` // The date the replication task was created. ReplicationTaskCreationDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The replication task identifier. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. ReplicationTaskIdentifier *string `type:"string"` // The settings for the replication task. ReplicationTaskSettings *string `type:"string"` // The date the replication task is scheduled to start. ReplicationTaskStartDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The statistics for the task, including elapsed time, tables loaded, and table // errors. ReplicationTaskStats *ReplicationTaskStats `type:"structure"` // The Amazon Resource Name (ARN) string that uniquely identifies the endpoint. SourceEndpointArn *string `type:"string"` // The status of the replication task. Status *string `type:"string"` // Table mappings specified in the task. TableMappings *string `type:"string"` // The Amazon Resource Name (ARN) string that uniquely identifies the endpoint. TargetEndpointArn *string `type:"string"` } // String returns the string representation func (s ReplicationTask) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplicationTask) GoString() string { return s.String() } type ReplicationTaskStats struct { _ struct{} `type:"structure"` // The elapsed time of the task, in milliseconds. ElapsedTimeMillis *int64 `type:"long"` // The percent complete for the full load migration task. FullLoadProgressPercent *int64 `type:"integer"` // The number of errors that have occurred during this task. TablesErrored *int64 `type:"integer"` // The number of tables loaded for this task. TablesLoaded *int64 `type:"integer"` // The number of tables currently loading for this task. TablesLoading *int64 `type:"integer"` // The number of tables queued for this task. TablesQueued *int64 `type:"integer"` } // String returns the string representation func (s ReplicationTaskStats) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplicationTaskStats) GoString() string { return s.String() } type StartReplicationTaskInput struct { _ struct{} `type:"structure"` // The start time for the Change Data Capture (CDC) operation. CdcStartTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The Amazon Resource Number (ARN) of the replication task to be started. // // ReplicationTaskArn is a required field ReplicationTaskArn *string `type:"string" required:"true"` // The type of replication task. // // StartReplicationTaskType is a required field StartReplicationTaskType *string `type:"string" required:"true" enum:"StartReplicationTaskTypeValue"` } // String returns the string representation func (s StartReplicationTaskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartReplicationTaskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartReplicationTaskInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartReplicationTaskInput"} if s.ReplicationTaskArn == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationTaskArn")) } if s.StartReplicationTaskType == nil { invalidParams.Add(request.NewErrParamRequired("StartReplicationTaskType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type StartReplicationTaskOutput struct { _ struct{} `type:"structure"` // The replication task started. ReplicationTask *ReplicationTask `type:"structure"` } // String returns the string representation func (s StartReplicationTaskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartReplicationTaskOutput) GoString() string { return s.String() } type StopReplicationTaskInput struct { _ struct{} `type:"structure"` // The Amazon Resource Number(ARN) of the replication task to be stopped. // // ReplicationTaskArn is a required field ReplicationTaskArn *string `type:"string" required:"true"` } // String returns the string representation func (s StopReplicationTaskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopReplicationTaskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StopReplicationTaskInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StopReplicationTaskInput"} if s.ReplicationTaskArn == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationTaskArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type StopReplicationTaskOutput struct { _ struct{} `type:"structure"` // The replication task stopped. ReplicationTask *ReplicationTask `type:"structure"` } // String returns the string representation func (s StopReplicationTaskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopReplicationTaskOutput) GoString() string { return s.String() } type Subnet struct { _ struct{} `type:"structure"` // The Availability Zone of the subnet. SubnetAvailabilityZone *AvailabilityZone `type:"structure"` // The subnet identifier. SubnetIdentifier *string `type:"string"` // The status of the subnet. SubnetStatus *string `type:"string"` } // String returns the string representation func (s Subnet) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Subnet) GoString() string { return s.String() } type SupportedEndpointType struct { _ struct{} `type:"structure"` // The type of endpoint. EndpointType *string `type:"string" enum:"ReplicationEndpointTypeValue"` // The database engine name. EngineName *string `type:"string"` // Indicates if Change Data Capture (CDC) is supported. SupportsCDC *bool `type:"boolean"` } // String returns the string representation func (s SupportedEndpointType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SupportedEndpointType) GoString() string { return s.String() } type TableStatistics struct { _ struct{} `type:"structure"` // The Data Definition Language (DDL) used to build and modify the structure // of your tables. Ddls *int64 `type:"long"` // The number of delete actions performed on a table. Deletes *int64 `type:"long"` // The number of rows added during the Full Load operation. FullLoadRows *int64 `type:"long"` // The number of insert actions performed on a table. Inserts *int64 `type:"long"` // The last time the table was updated. LastUpdateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The schema name. SchemaName *string `type:"string"` // The name of the table. TableName *string `type:"string"` // The state of the table. TableState *string `type:"string"` // The number of update actions performed on a table. Updates *int64 `type:"long"` } // String returns the string representation func (s TableStatistics) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TableStatistics) GoString() string { return s.String() } type Tag struct { _ struct{} `type:"structure"` // A key is the required name of the tag. The string value can be from 1 to // 128 Unicode characters in length and cannot be prefixed with "aws:" or "dms:". // The string can only contain only the set of Unicode letters, digits, white-space, // '_', '.', '/', '=', '+', '-' (Java regex: "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-]*)$"). Key *string `type:"string"` // A value is the optional value of the tag. The string value can be from 1 // to 256 Unicode characters in length and cannot be prefixed with "aws:" or // "dms:". The string can only contain only the set of Unicode letters, digits, // white-space, '_', '.', '/', '=', '+', '-' (Java regex: "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-]*)$"). Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } type TestConnectionInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) string that uniquely identifies the endpoint. // // EndpointArn is a required field EndpointArn *string `type:"string" required:"true"` // The Amazon Resource Name (ARN) of the replication instance. // // ReplicationInstanceArn is a required field ReplicationInstanceArn *string `type:"string" required:"true"` } // String returns the string representation func (s TestConnectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TestConnectionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TestConnectionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TestConnectionInput"} if s.EndpointArn == nil { invalidParams.Add(request.NewErrParamRequired("EndpointArn")) } if s.ReplicationInstanceArn == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationInstanceArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type TestConnectionOutput struct { _ struct{} `type:"structure"` // The connection tested. Connection *Connection `type:"structure"` } // String returns the string representation func (s TestConnectionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TestConnectionOutput) GoString() string { return s.String() } type VpcSecurityGroupMembership struct { _ struct{} `type:"structure"` // The status of the VPC security group. Status *string `type:"string"` // The VPC security group Id. VpcSecurityGroupId *string `type:"string"` } // String returns the string representation func (s VpcSecurityGroupMembership) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VpcSecurityGroupMembership) GoString() string { return s.String() } const ( // DmsSslModeValueNone is a DmsSslModeValue enum value DmsSslModeValueNone = "none" // DmsSslModeValueRequire is a DmsSslModeValue enum value DmsSslModeValueRequire = "require" // DmsSslModeValueVerifyCa is a DmsSslModeValue enum value DmsSslModeValueVerifyCa = "verify-ca" // DmsSslModeValueVerifyFull is a DmsSslModeValue enum value DmsSslModeValueVerifyFull = "verify-full" ) const ( // MigrationTypeValueFullLoad is a MigrationTypeValue enum value MigrationTypeValueFullLoad = "full-load" // MigrationTypeValueCdc is a MigrationTypeValue enum value MigrationTypeValueCdc = "cdc" // MigrationTypeValueFullLoadAndCdc is a MigrationTypeValue enum value MigrationTypeValueFullLoadAndCdc = "full-load-and-cdc" ) const ( // RefreshSchemasStatusTypeValueSuccessful is a RefreshSchemasStatusTypeValue enum value RefreshSchemasStatusTypeValueSuccessful = "successful" // RefreshSchemasStatusTypeValueFailed is a RefreshSchemasStatusTypeValue enum value RefreshSchemasStatusTypeValueFailed = "failed" // RefreshSchemasStatusTypeValueRefreshing is a RefreshSchemasStatusTypeValue enum value RefreshSchemasStatusTypeValueRefreshing = "refreshing" ) const ( // ReplicationEndpointTypeValueSource is a ReplicationEndpointTypeValue enum value ReplicationEndpointTypeValueSource = "source" // ReplicationEndpointTypeValueTarget is a ReplicationEndpointTypeValue enum value ReplicationEndpointTypeValueTarget = "target" ) const ( // StartReplicationTaskTypeValueStartReplication is a StartReplicationTaskTypeValue enum value StartReplicationTaskTypeValueStartReplication = "start-replication" // StartReplicationTaskTypeValueResumeProcessing is a StartReplicationTaskTypeValue enum value StartReplicationTaskTypeValueResumeProcessing = "resume-processing" // StartReplicationTaskTypeValueReloadTarget is a StartReplicationTaskTypeValue enum value StartReplicationTaskTypeValueReloadTarget = "reload-target" ) aws-sdk-go-1.4.22/service/databasemigrationservice/databasemigrationserviceiface/000077500000000000000000000000001300374646400303115ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/databasemigrationservice/databasemigrationserviceiface/interface.go000066400000000000000000000277341300374646400326150ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package databasemigrationserviceiface provides an interface to enable mocking the AWS Database Migration Service service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package databasemigrationserviceiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/databasemigrationservice" ) // DatabaseMigrationServiceAPI provides an interface to enable mocking the // databasemigrationservice.DatabaseMigrationService service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Database Migration Service. // func myFunc(svc databasemigrationserviceiface.DatabaseMigrationServiceAPI) bool { // // Make svc.AddTagsToResource request // } // // func main() { // sess := session.New() // svc := databasemigrationservice.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockDatabaseMigrationServiceClient struct { // databasemigrationserviceiface.DatabaseMigrationServiceAPI // } // func (m *mockDatabaseMigrationServiceClient) AddTagsToResource(input *databasemigrationservice.AddTagsToResourceInput) (*databasemigrationservice.AddTagsToResourceOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockDatabaseMigrationServiceClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type DatabaseMigrationServiceAPI interface { AddTagsToResourceRequest(*databasemigrationservice.AddTagsToResourceInput) (*request.Request, *databasemigrationservice.AddTagsToResourceOutput) AddTagsToResource(*databasemigrationservice.AddTagsToResourceInput) (*databasemigrationservice.AddTagsToResourceOutput, error) CreateEndpointRequest(*databasemigrationservice.CreateEndpointInput) (*request.Request, *databasemigrationservice.CreateEndpointOutput) CreateEndpoint(*databasemigrationservice.CreateEndpointInput) (*databasemigrationservice.CreateEndpointOutput, error) CreateReplicationInstanceRequest(*databasemigrationservice.CreateReplicationInstanceInput) (*request.Request, *databasemigrationservice.CreateReplicationInstanceOutput) CreateReplicationInstance(*databasemigrationservice.CreateReplicationInstanceInput) (*databasemigrationservice.CreateReplicationInstanceOutput, error) CreateReplicationSubnetGroupRequest(*databasemigrationservice.CreateReplicationSubnetGroupInput) (*request.Request, *databasemigrationservice.CreateReplicationSubnetGroupOutput) CreateReplicationSubnetGroup(*databasemigrationservice.CreateReplicationSubnetGroupInput) (*databasemigrationservice.CreateReplicationSubnetGroupOutput, error) CreateReplicationTaskRequest(*databasemigrationservice.CreateReplicationTaskInput) (*request.Request, *databasemigrationservice.CreateReplicationTaskOutput) CreateReplicationTask(*databasemigrationservice.CreateReplicationTaskInput) (*databasemigrationservice.CreateReplicationTaskOutput, error) DeleteCertificateRequest(*databasemigrationservice.DeleteCertificateInput) (*request.Request, *databasemigrationservice.DeleteCertificateOutput) DeleteCertificate(*databasemigrationservice.DeleteCertificateInput) (*databasemigrationservice.DeleteCertificateOutput, error) DeleteEndpointRequest(*databasemigrationservice.DeleteEndpointInput) (*request.Request, *databasemigrationservice.DeleteEndpointOutput) DeleteEndpoint(*databasemigrationservice.DeleteEndpointInput) (*databasemigrationservice.DeleteEndpointOutput, error) DeleteReplicationInstanceRequest(*databasemigrationservice.DeleteReplicationInstanceInput) (*request.Request, *databasemigrationservice.DeleteReplicationInstanceOutput) DeleteReplicationInstance(*databasemigrationservice.DeleteReplicationInstanceInput) (*databasemigrationservice.DeleteReplicationInstanceOutput, error) DeleteReplicationSubnetGroupRequest(*databasemigrationservice.DeleteReplicationSubnetGroupInput) (*request.Request, *databasemigrationservice.DeleteReplicationSubnetGroupOutput) DeleteReplicationSubnetGroup(*databasemigrationservice.DeleteReplicationSubnetGroupInput) (*databasemigrationservice.DeleteReplicationSubnetGroupOutput, error) DeleteReplicationTaskRequest(*databasemigrationservice.DeleteReplicationTaskInput) (*request.Request, *databasemigrationservice.DeleteReplicationTaskOutput) DeleteReplicationTask(*databasemigrationservice.DeleteReplicationTaskInput) (*databasemigrationservice.DeleteReplicationTaskOutput, error) DescribeAccountAttributesRequest(*databasemigrationservice.DescribeAccountAttributesInput) (*request.Request, *databasemigrationservice.DescribeAccountAttributesOutput) DescribeAccountAttributes(*databasemigrationservice.DescribeAccountAttributesInput) (*databasemigrationservice.DescribeAccountAttributesOutput, error) DescribeCertificatesRequest(*databasemigrationservice.DescribeCertificatesInput) (*request.Request, *databasemigrationservice.DescribeCertificatesOutput) DescribeCertificates(*databasemigrationservice.DescribeCertificatesInput) (*databasemigrationservice.DescribeCertificatesOutput, error) DescribeConnectionsRequest(*databasemigrationservice.DescribeConnectionsInput) (*request.Request, *databasemigrationservice.DescribeConnectionsOutput) DescribeConnections(*databasemigrationservice.DescribeConnectionsInput) (*databasemigrationservice.DescribeConnectionsOutput, error) DescribeEndpointTypesRequest(*databasemigrationservice.DescribeEndpointTypesInput) (*request.Request, *databasemigrationservice.DescribeEndpointTypesOutput) DescribeEndpointTypes(*databasemigrationservice.DescribeEndpointTypesInput) (*databasemigrationservice.DescribeEndpointTypesOutput, error) DescribeEndpointsRequest(*databasemigrationservice.DescribeEndpointsInput) (*request.Request, *databasemigrationservice.DescribeEndpointsOutput) DescribeEndpoints(*databasemigrationservice.DescribeEndpointsInput) (*databasemigrationservice.DescribeEndpointsOutput, error) DescribeOrderableReplicationInstancesRequest(*databasemigrationservice.DescribeOrderableReplicationInstancesInput) (*request.Request, *databasemigrationservice.DescribeOrderableReplicationInstancesOutput) DescribeOrderableReplicationInstances(*databasemigrationservice.DescribeOrderableReplicationInstancesInput) (*databasemigrationservice.DescribeOrderableReplicationInstancesOutput, error) DescribeRefreshSchemasStatusRequest(*databasemigrationservice.DescribeRefreshSchemasStatusInput) (*request.Request, *databasemigrationservice.DescribeRefreshSchemasStatusOutput) DescribeRefreshSchemasStatus(*databasemigrationservice.DescribeRefreshSchemasStatusInput) (*databasemigrationservice.DescribeRefreshSchemasStatusOutput, error) DescribeReplicationInstancesRequest(*databasemigrationservice.DescribeReplicationInstancesInput) (*request.Request, *databasemigrationservice.DescribeReplicationInstancesOutput) DescribeReplicationInstances(*databasemigrationservice.DescribeReplicationInstancesInput) (*databasemigrationservice.DescribeReplicationInstancesOutput, error) DescribeReplicationSubnetGroupsRequest(*databasemigrationservice.DescribeReplicationSubnetGroupsInput) (*request.Request, *databasemigrationservice.DescribeReplicationSubnetGroupsOutput) DescribeReplicationSubnetGroups(*databasemigrationservice.DescribeReplicationSubnetGroupsInput) (*databasemigrationservice.DescribeReplicationSubnetGroupsOutput, error) DescribeReplicationTasksRequest(*databasemigrationservice.DescribeReplicationTasksInput) (*request.Request, *databasemigrationservice.DescribeReplicationTasksOutput) DescribeReplicationTasks(*databasemigrationservice.DescribeReplicationTasksInput) (*databasemigrationservice.DescribeReplicationTasksOutput, error) DescribeSchemasRequest(*databasemigrationservice.DescribeSchemasInput) (*request.Request, *databasemigrationservice.DescribeSchemasOutput) DescribeSchemas(*databasemigrationservice.DescribeSchemasInput) (*databasemigrationservice.DescribeSchemasOutput, error) DescribeTableStatisticsRequest(*databasemigrationservice.DescribeTableStatisticsInput) (*request.Request, *databasemigrationservice.DescribeTableStatisticsOutput) DescribeTableStatistics(*databasemigrationservice.DescribeTableStatisticsInput) (*databasemigrationservice.DescribeTableStatisticsOutput, error) ImportCertificateRequest(*databasemigrationservice.ImportCertificateInput) (*request.Request, *databasemigrationservice.ImportCertificateOutput) ImportCertificate(*databasemigrationservice.ImportCertificateInput) (*databasemigrationservice.ImportCertificateOutput, error) ListTagsForResourceRequest(*databasemigrationservice.ListTagsForResourceInput) (*request.Request, *databasemigrationservice.ListTagsForResourceOutput) ListTagsForResource(*databasemigrationservice.ListTagsForResourceInput) (*databasemigrationservice.ListTagsForResourceOutput, error) ModifyEndpointRequest(*databasemigrationservice.ModifyEndpointInput) (*request.Request, *databasemigrationservice.ModifyEndpointOutput) ModifyEndpoint(*databasemigrationservice.ModifyEndpointInput) (*databasemigrationservice.ModifyEndpointOutput, error) ModifyReplicationInstanceRequest(*databasemigrationservice.ModifyReplicationInstanceInput) (*request.Request, *databasemigrationservice.ModifyReplicationInstanceOutput) ModifyReplicationInstance(*databasemigrationservice.ModifyReplicationInstanceInput) (*databasemigrationservice.ModifyReplicationInstanceOutput, error) ModifyReplicationSubnetGroupRequest(*databasemigrationservice.ModifyReplicationSubnetGroupInput) (*request.Request, *databasemigrationservice.ModifyReplicationSubnetGroupOutput) ModifyReplicationSubnetGroup(*databasemigrationservice.ModifyReplicationSubnetGroupInput) (*databasemigrationservice.ModifyReplicationSubnetGroupOutput, error) RefreshSchemasRequest(*databasemigrationservice.RefreshSchemasInput) (*request.Request, *databasemigrationservice.RefreshSchemasOutput) RefreshSchemas(*databasemigrationservice.RefreshSchemasInput) (*databasemigrationservice.RefreshSchemasOutput, error) RemoveTagsFromResourceRequest(*databasemigrationservice.RemoveTagsFromResourceInput) (*request.Request, *databasemigrationservice.RemoveTagsFromResourceOutput) RemoveTagsFromResource(*databasemigrationservice.RemoveTagsFromResourceInput) (*databasemigrationservice.RemoveTagsFromResourceOutput, error) StartReplicationTaskRequest(*databasemigrationservice.StartReplicationTaskInput) (*request.Request, *databasemigrationservice.StartReplicationTaskOutput) StartReplicationTask(*databasemigrationservice.StartReplicationTaskInput) (*databasemigrationservice.StartReplicationTaskOutput, error) StopReplicationTaskRequest(*databasemigrationservice.StopReplicationTaskInput) (*request.Request, *databasemigrationservice.StopReplicationTaskOutput) StopReplicationTask(*databasemigrationservice.StopReplicationTaskInput) (*databasemigrationservice.StopReplicationTaskOutput, error) TestConnectionRequest(*databasemigrationservice.TestConnectionInput) (*request.Request, *databasemigrationservice.TestConnectionOutput) TestConnection(*databasemigrationservice.TestConnectionInput) (*databasemigrationservice.TestConnectionOutput, error) } var _ DatabaseMigrationServiceAPI = (*databasemigrationservice.DatabaseMigrationService)(nil) aws-sdk-go-1.4.22/service/databasemigrationservice/examples_test.go000066400000000000000000000631531300374646400254760ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package databasemigrationservice_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/databasemigrationservice" ) var _ time.Duration var _ bytes.Buffer func ExampleDatabaseMigrationService_AddTagsToResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.AddTagsToResourceInput{ ResourceArn: aws.String("String"), // Required Tags: []*databasemigrationservice.Tag{ // Required { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.AddTagsToResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_CreateEndpoint() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.CreateEndpointInput{ EndpointIdentifier: aws.String("String"), // Required EndpointType: aws.String("ReplicationEndpointTypeValue"), // Required EngineName: aws.String("String"), // Required Password: aws.String("SecretString"), // Required Port: aws.Int64(1), // Required ServerName: aws.String("String"), // Required Username: aws.String("String"), // Required CertificateArn: aws.String("String"), DatabaseName: aws.String("String"), ExtraConnectionAttributes: aws.String("String"), KmsKeyId: aws.String("String"), SslMode: aws.String("DmsSslModeValue"), Tags: []*databasemigrationservice.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateEndpoint(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_CreateReplicationInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.CreateReplicationInstanceInput{ ReplicationInstanceClass: aws.String("String"), // Required ReplicationInstanceIdentifier: aws.String("String"), // Required AllocatedStorage: aws.Int64(1), AutoMinorVersionUpgrade: aws.Bool(true), AvailabilityZone: aws.String("String"), EngineVersion: aws.String("String"), KmsKeyId: aws.String("String"), MultiAZ: aws.Bool(true), PreferredMaintenanceWindow: aws.String("String"), PubliclyAccessible: aws.Bool(true), ReplicationSubnetGroupIdentifier: aws.String("String"), Tags: []*databasemigrationservice.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, VpcSecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.CreateReplicationInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_CreateReplicationSubnetGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.CreateReplicationSubnetGroupInput{ ReplicationSubnetGroupDescription: aws.String("String"), // Required ReplicationSubnetGroupIdentifier: aws.String("String"), // Required SubnetIds: []*string{ // Required aws.String("String"), // Required // More values... }, Tags: []*databasemigrationservice.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateReplicationSubnetGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_CreateReplicationTask() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.CreateReplicationTaskInput{ MigrationType: aws.String("MigrationTypeValue"), // Required ReplicationInstanceArn: aws.String("String"), // Required ReplicationTaskIdentifier: aws.String("String"), // Required SourceEndpointArn: aws.String("String"), // Required TableMappings: aws.String("String"), // Required TargetEndpointArn: aws.String("String"), // Required CdcStartTime: aws.Time(time.Now()), ReplicationTaskSettings: aws.String("String"), Tags: []*databasemigrationservice.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateReplicationTask(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_DeleteCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.DeleteCertificateInput{ CertificateArn: aws.String("String"), // Required } resp, err := svc.DeleteCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_DeleteEndpoint() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.DeleteEndpointInput{ EndpointArn: aws.String("String"), // Required } resp, err := svc.DeleteEndpoint(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_DeleteReplicationInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.DeleteReplicationInstanceInput{ ReplicationInstanceArn: aws.String("String"), // Required } resp, err := svc.DeleteReplicationInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_DeleteReplicationSubnetGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.DeleteReplicationSubnetGroupInput{ ReplicationSubnetGroupIdentifier: aws.String("String"), // Required } resp, err := svc.DeleteReplicationSubnetGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_DeleteReplicationTask() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.DeleteReplicationTaskInput{ ReplicationTaskArn: aws.String("String"), // Required } resp, err := svc.DeleteReplicationTask(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_DescribeAccountAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) var params *databasemigrationservice.DescribeAccountAttributesInput resp, err := svc.DescribeAccountAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_DescribeCertificates() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.DescribeCertificatesInput{ Filters: []*databasemigrationservice.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeCertificates(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_DescribeConnections() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.DescribeConnectionsInput{ Filters: []*databasemigrationservice.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeConnections(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_DescribeEndpointTypes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.DescribeEndpointTypesInput{ Filters: []*databasemigrationservice.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeEndpointTypes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_DescribeEndpoints() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.DescribeEndpointsInput{ Filters: []*databasemigrationservice.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeEndpoints(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_DescribeOrderableReplicationInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.DescribeOrderableReplicationInstancesInput{ Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeOrderableReplicationInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_DescribeRefreshSchemasStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.DescribeRefreshSchemasStatusInput{ EndpointArn: aws.String("String"), // Required } resp, err := svc.DescribeRefreshSchemasStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_DescribeReplicationInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.DescribeReplicationInstancesInput{ Filters: []*databasemigrationservice.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeReplicationInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_DescribeReplicationSubnetGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.DescribeReplicationSubnetGroupsInput{ Filters: []*databasemigrationservice.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeReplicationSubnetGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_DescribeReplicationTasks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.DescribeReplicationTasksInput{ Filters: []*databasemigrationservice.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeReplicationTasks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_DescribeSchemas() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.DescribeSchemasInput{ EndpointArn: aws.String("String"), // Required Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeSchemas(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_DescribeTableStatistics() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.DescribeTableStatisticsInput{ ReplicationTaskArn: aws.String("String"), // Required Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeTableStatistics(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_ImportCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.ImportCertificateInput{ CertificateIdentifier: aws.String("String"), // Required CertificatePem: aws.String("String"), } resp, err := svc.ImportCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_ListTagsForResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.ListTagsForResourceInput{ ResourceArn: aws.String("String"), // Required } resp, err := svc.ListTagsForResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_ModifyEndpoint() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.ModifyEndpointInput{ EndpointArn: aws.String("String"), // Required CertificateArn: aws.String("String"), DatabaseName: aws.String("String"), EndpointIdentifier: aws.String("String"), EndpointType: aws.String("ReplicationEndpointTypeValue"), EngineName: aws.String("String"), ExtraConnectionAttributes: aws.String("String"), Password: aws.String("SecretString"), Port: aws.Int64(1), ServerName: aws.String("String"), SslMode: aws.String("DmsSslModeValue"), Username: aws.String("String"), } resp, err := svc.ModifyEndpoint(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_ModifyReplicationInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.ModifyReplicationInstanceInput{ ReplicationInstanceArn: aws.String("String"), // Required AllocatedStorage: aws.Int64(1), AllowMajorVersionUpgrade: aws.Bool(true), ApplyImmediately: aws.Bool(true), AutoMinorVersionUpgrade: aws.Bool(true), EngineVersion: aws.String("String"), MultiAZ: aws.Bool(true), PreferredMaintenanceWindow: aws.String("String"), ReplicationInstanceClass: aws.String("String"), ReplicationInstanceIdentifier: aws.String("String"), VpcSecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.ModifyReplicationInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_ModifyReplicationSubnetGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.ModifyReplicationSubnetGroupInput{ ReplicationSubnetGroupIdentifier: aws.String("String"), // Required SubnetIds: []*string{ // Required aws.String("String"), // Required // More values... }, ReplicationSubnetGroupDescription: aws.String("String"), } resp, err := svc.ModifyReplicationSubnetGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_RefreshSchemas() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.RefreshSchemasInput{ EndpointArn: aws.String("String"), // Required ReplicationInstanceArn: aws.String("String"), // Required } resp, err := svc.RefreshSchemas(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_RemoveTagsFromResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.RemoveTagsFromResourceInput{ ResourceArn: aws.String("String"), // Required TagKeys: []*string{ // Required aws.String("String"), // Required // More values... }, } resp, err := svc.RemoveTagsFromResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_StartReplicationTask() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.StartReplicationTaskInput{ ReplicationTaskArn: aws.String("String"), // Required StartReplicationTaskType: aws.String("StartReplicationTaskTypeValue"), // Required CdcStartTime: aws.Time(time.Now()), } resp, err := svc.StartReplicationTask(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_StopReplicationTask() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.StopReplicationTaskInput{ ReplicationTaskArn: aws.String("String"), // Required } resp, err := svc.StopReplicationTask(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDatabaseMigrationService_TestConnection() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := databasemigrationservice.New(sess) params := &databasemigrationservice.TestConnectionInput{ EndpointArn: aws.String("String"), // Required ReplicationInstanceArn: aws.String("String"), // Required } resp, err := svc.TestConnection(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/databasemigrationservice/service.go000066400000000000000000000064461300374646400242630ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package databasemigrationservice import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // AWS Database Migration Service (AWS DMS) can migrate your data to and from // the most widely used commercial and open-source databases such as Oracle, // PostgreSQL, Microsoft SQL Server, Amazon Redshift, MariaDB, Amazon Aurora, // and MySQL. The service supports homogeneous migrations such as Oracle to // Oracle, as well as heterogeneous migrations between different database platforms, // such as Oracle to MySQL or SQL Server to PostgreSQL. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type DatabaseMigrationService struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "dms" // New creates a new instance of the DatabaseMigrationService client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a DatabaseMigrationService client from just a session. // svc := databasemigrationservice.New(mySession) // // // Create a DatabaseMigrationService client with additional configuration // svc := databasemigrationservice.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *DatabaseMigrationService { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *DatabaseMigrationService { svc := &DatabaseMigrationService{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2016-01-01", JSONVersion: "1.1", TargetPrefix: "AmazonDMSv20160101", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a DatabaseMigrationService operation and runs any // custom request initialization. func (c *DatabaseMigrationService) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/datapipeline/000077500000000000000000000000001300374646400176625ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/datapipeline/api.go000066400000000000000000003563111300374646400207730ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package datapipeline provides a client for AWS Data Pipeline. package datapipeline import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opActivatePipeline = "ActivatePipeline" // ActivatePipelineRequest generates a "aws/request.Request" representing the // client's request for the ActivatePipeline operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ActivatePipeline for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ActivatePipeline method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ActivatePipelineRequest method. // req, resp := client.ActivatePipelineRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) ActivatePipelineRequest(input *ActivatePipelineInput) (req *request.Request, output *ActivatePipelineOutput) { op := &request.Operation{ Name: opActivatePipeline, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ActivatePipelineInput{} } req = c.newRequest(op, input, output) output = &ActivatePipelineOutput{} req.Data = output return } // ActivatePipeline API operation for AWS Data Pipeline. // // Validates the specified pipeline and starts processing pipeline tasks. If // the pipeline does not pass validation, activation fails. // // If you need to pause the pipeline to investigate an issue with a component, // such as a data source or script, call DeactivatePipeline. // // To activate a finished pipeline, modify the end date for the pipeline and // then activate it. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation ActivatePipeline for usage and error information. // // Returned Error Codes: // * PipelineNotFoundException // The specified pipeline was not found. Verify that you used the correct user // and account identifiers. // // * PipelineDeletedException // The specified pipeline has been deleted. // // * InternalServiceError // An internal service error occurred. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // func (c *DataPipeline) ActivatePipeline(input *ActivatePipelineInput) (*ActivatePipelineOutput, error) { req, out := c.ActivatePipelineRequest(input) err := req.Send() return out, err } const opAddTags = "AddTags" // AddTagsRequest generates a "aws/request.Request" representing the // client's request for the AddTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddTagsRequest method. // req, resp := client.AddTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) AddTagsRequest(input *AddTagsInput) (req *request.Request, output *AddTagsOutput) { op := &request.Operation{ Name: opAddTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddTagsInput{} } req = c.newRequest(op, input, output) output = &AddTagsOutput{} req.Data = output return } // AddTags API operation for AWS Data Pipeline. // // Adds or modifies tags for the specified pipeline. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation AddTags for usage and error information. // // Returned Error Codes: // * InternalServiceError // An internal service error occurred. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // // * PipelineNotFoundException // The specified pipeline was not found. Verify that you used the correct user // and account identifiers. // // * PipelineDeletedException // The specified pipeline has been deleted. // func (c *DataPipeline) AddTags(input *AddTagsInput) (*AddTagsOutput, error) { req, out := c.AddTagsRequest(input) err := req.Send() return out, err } const opCreatePipeline = "CreatePipeline" // CreatePipelineRequest generates a "aws/request.Request" representing the // client's request for the CreatePipeline operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreatePipeline for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreatePipeline method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreatePipelineRequest method. // req, resp := client.CreatePipelineRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) CreatePipelineRequest(input *CreatePipelineInput) (req *request.Request, output *CreatePipelineOutput) { op := &request.Operation{ Name: opCreatePipeline, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreatePipelineInput{} } req = c.newRequest(op, input, output) output = &CreatePipelineOutput{} req.Data = output return } // CreatePipeline API operation for AWS Data Pipeline. // // Creates a new, empty pipeline. Use PutPipelineDefinition to populate the // pipeline. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation CreatePipeline for usage and error information. // // Returned Error Codes: // * InternalServiceError // An internal service error occurred. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // func (c *DataPipeline) CreatePipeline(input *CreatePipelineInput) (*CreatePipelineOutput, error) { req, out := c.CreatePipelineRequest(input) err := req.Send() return out, err } const opDeactivatePipeline = "DeactivatePipeline" // DeactivatePipelineRequest generates a "aws/request.Request" representing the // client's request for the DeactivatePipeline operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeactivatePipeline for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeactivatePipeline method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeactivatePipelineRequest method. // req, resp := client.DeactivatePipelineRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) DeactivatePipelineRequest(input *DeactivatePipelineInput) (req *request.Request, output *DeactivatePipelineOutput) { op := &request.Operation{ Name: opDeactivatePipeline, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeactivatePipelineInput{} } req = c.newRequest(op, input, output) output = &DeactivatePipelineOutput{} req.Data = output return } // DeactivatePipeline API operation for AWS Data Pipeline. // // Deactivates the specified running pipeline. The pipeline is set to the DEACTIVATING // state until the deactivation process completes. // // To resume a deactivated pipeline, use ActivatePipeline. By default, the pipeline // resumes from the last completed execution. Optionally, you can specify the // date and time to resume the pipeline. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation DeactivatePipeline for usage and error information. // // Returned Error Codes: // * PipelineNotFoundException // The specified pipeline was not found. Verify that you used the correct user // and account identifiers. // // * PipelineDeletedException // The specified pipeline has been deleted. // // * InternalServiceError // An internal service error occurred. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // func (c *DataPipeline) DeactivatePipeline(input *DeactivatePipelineInput) (*DeactivatePipelineOutput, error) { req, out := c.DeactivatePipelineRequest(input) err := req.Send() return out, err } const opDeletePipeline = "DeletePipeline" // DeletePipelineRequest generates a "aws/request.Request" representing the // client's request for the DeletePipeline operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeletePipeline for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeletePipeline method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeletePipelineRequest method. // req, resp := client.DeletePipelineRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) DeletePipelineRequest(input *DeletePipelineInput) (req *request.Request, output *DeletePipelineOutput) { op := &request.Operation{ Name: opDeletePipeline, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeletePipelineInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeletePipelineOutput{} req.Data = output return } // DeletePipeline API operation for AWS Data Pipeline. // // Deletes a pipeline, its pipeline definition, and its run history. AWS Data // Pipeline attempts to cancel instances associated with the pipeline that are // currently being processed by task runners. // // Deleting a pipeline cannot be undone. You cannot query or restore a deleted // pipeline. To temporarily pause a pipeline instead of deleting it, call SetStatus // with the status set to PAUSE on individual components. Components that are // paused by SetStatus can be resumed. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation DeletePipeline for usage and error information. // // Returned Error Codes: // * PipelineNotFoundException // The specified pipeline was not found. Verify that you used the correct user // and account identifiers. // // * InternalServiceError // An internal service error occurred. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // func (c *DataPipeline) DeletePipeline(input *DeletePipelineInput) (*DeletePipelineOutput, error) { req, out := c.DeletePipelineRequest(input) err := req.Send() return out, err } const opDescribeObjects = "DescribeObjects" // DescribeObjectsRequest generates a "aws/request.Request" representing the // client's request for the DescribeObjects operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeObjects for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeObjects method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeObjectsRequest method. // req, resp := client.DescribeObjectsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) DescribeObjectsRequest(input *DescribeObjectsInput) (req *request.Request, output *DescribeObjectsOutput) { op := &request.Operation{ Name: opDescribeObjects, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"marker"}, OutputTokens: []string{"marker"}, LimitToken: "", TruncationToken: "hasMoreResults", }, } if input == nil { input = &DescribeObjectsInput{} } req = c.newRequest(op, input, output) output = &DescribeObjectsOutput{} req.Data = output return } // DescribeObjects API operation for AWS Data Pipeline. // // Gets the object definitions for a set of objects associated with the pipeline. // Object definitions are composed of a set of fields that define the properties // of the object. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation DescribeObjects for usage and error information. // // Returned Error Codes: // * InternalServiceError // An internal service error occurred. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // // * PipelineNotFoundException // The specified pipeline was not found. Verify that you used the correct user // and account identifiers. // // * PipelineDeletedException // The specified pipeline has been deleted. // func (c *DataPipeline) DescribeObjects(input *DescribeObjectsInput) (*DescribeObjectsOutput, error) { req, out := c.DescribeObjectsRequest(input) err := req.Send() return out, err } // DescribeObjectsPages iterates over the pages of a DescribeObjects operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeObjects method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeObjects operation. // pageNum := 0 // err := client.DescribeObjectsPages(params, // func(page *DescribeObjectsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DataPipeline) DescribeObjectsPages(input *DescribeObjectsInput, fn func(p *DescribeObjectsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeObjectsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeObjectsOutput), lastPage) }) } const opDescribePipelines = "DescribePipelines" // DescribePipelinesRequest generates a "aws/request.Request" representing the // client's request for the DescribePipelines operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribePipelines for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribePipelines method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribePipelinesRequest method. // req, resp := client.DescribePipelinesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) DescribePipelinesRequest(input *DescribePipelinesInput) (req *request.Request, output *DescribePipelinesOutput) { op := &request.Operation{ Name: opDescribePipelines, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribePipelinesInput{} } req = c.newRequest(op, input, output) output = &DescribePipelinesOutput{} req.Data = output return } // DescribePipelines API operation for AWS Data Pipeline. // // Retrieves metadata about one or more pipelines. The information retrieved // includes the name of the pipeline, the pipeline identifier, its current state, // and the user account that owns the pipeline. Using account credentials, you // can retrieve metadata about pipelines that you or your IAM users have created. // If you are using an IAM user account, you can retrieve metadata about only // those pipelines for which you have read permissions. // // To retrieve the full pipeline definition instead of metadata about the pipeline, // call GetPipelineDefinition. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation DescribePipelines for usage and error information. // // Returned Error Codes: // * PipelineNotFoundException // The specified pipeline was not found. Verify that you used the correct user // and account identifiers. // // * PipelineDeletedException // The specified pipeline has been deleted. // // * InternalServiceError // An internal service error occurred. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // func (c *DataPipeline) DescribePipelines(input *DescribePipelinesInput) (*DescribePipelinesOutput, error) { req, out := c.DescribePipelinesRequest(input) err := req.Send() return out, err } const opEvaluateExpression = "EvaluateExpression" // EvaluateExpressionRequest generates a "aws/request.Request" representing the // client's request for the EvaluateExpression operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EvaluateExpression for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EvaluateExpression method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EvaluateExpressionRequest method. // req, resp := client.EvaluateExpressionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) EvaluateExpressionRequest(input *EvaluateExpressionInput) (req *request.Request, output *EvaluateExpressionOutput) { op := &request.Operation{ Name: opEvaluateExpression, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EvaluateExpressionInput{} } req = c.newRequest(op, input, output) output = &EvaluateExpressionOutput{} req.Data = output return } // EvaluateExpression API operation for AWS Data Pipeline. // // Task runners call EvaluateExpression to evaluate a string in the context // of the specified object. For example, a task runner can evaluate SQL queries // stored in Amazon S3. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation EvaluateExpression for usage and error information. // // Returned Error Codes: // * InternalServiceError // An internal service error occurred. // // * TaskNotFoundException // The specified task was not found. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // // * PipelineNotFoundException // The specified pipeline was not found. Verify that you used the correct user // and account identifiers. // // * PipelineDeletedException // The specified pipeline has been deleted. // func (c *DataPipeline) EvaluateExpression(input *EvaluateExpressionInput) (*EvaluateExpressionOutput, error) { req, out := c.EvaluateExpressionRequest(input) err := req.Send() return out, err } const opGetPipelineDefinition = "GetPipelineDefinition" // GetPipelineDefinitionRequest generates a "aws/request.Request" representing the // client's request for the GetPipelineDefinition operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetPipelineDefinition for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetPipelineDefinition method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetPipelineDefinitionRequest method. // req, resp := client.GetPipelineDefinitionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) GetPipelineDefinitionRequest(input *GetPipelineDefinitionInput) (req *request.Request, output *GetPipelineDefinitionOutput) { op := &request.Operation{ Name: opGetPipelineDefinition, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetPipelineDefinitionInput{} } req = c.newRequest(op, input, output) output = &GetPipelineDefinitionOutput{} req.Data = output return } // GetPipelineDefinition API operation for AWS Data Pipeline. // // Gets the definition of the specified pipeline. You can call GetPipelineDefinition // to retrieve the pipeline definition that you provided using PutPipelineDefinition. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation GetPipelineDefinition for usage and error information. // // Returned Error Codes: // * InternalServiceError // An internal service error occurred. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // // * PipelineNotFoundException // The specified pipeline was not found. Verify that you used the correct user // and account identifiers. // // * PipelineDeletedException // The specified pipeline has been deleted. // func (c *DataPipeline) GetPipelineDefinition(input *GetPipelineDefinitionInput) (*GetPipelineDefinitionOutput, error) { req, out := c.GetPipelineDefinitionRequest(input) err := req.Send() return out, err } const opListPipelines = "ListPipelines" // ListPipelinesRequest generates a "aws/request.Request" representing the // client's request for the ListPipelines operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListPipelines for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListPipelines method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListPipelinesRequest method. // req, resp := client.ListPipelinesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) ListPipelinesRequest(input *ListPipelinesInput) (req *request.Request, output *ListPipelinesOutput) { op := &request.Operation{ Name: opListPipelines, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"marker"}, OutputTokens: []string{"marker"}, LimitToken: "", TruncationToken: "hasMoreResults", }, } if input == nil { input = &ListPipelinesInput{} } req = c.newRequest(op, input, output) output = &ListPipelinesOutput{} req.Data = output return } // ListPipelines API operation for AWS Data Pipeline. // // Lists the pipeline identifiers for all active pipelines that you have permission // to access. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation ListPipelines for usage and error information. // // Returned Error Codes: // * InternalServiceError // An internal service error occurred. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // func (c *DataPipeline) ListPipelines(input *ListPipelinesInput) (*ListPipelinesOutput, error) { req, out := c.ListPipelinesRequest(input) err := req.Send() return out, err } // ListPipelinesPages iterates over the pages of a ListPipelines operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListPipelines method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListPipelines operation. // pageNum := 0 // err := client.ListPipelinesPages(params, // func(page *ListPipelinesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DataPipeline) ListPipelinesPages(input *ListPipelinesInput, fn func(p *ListPipelinesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListPipelinesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListPipelinesOutput), lastPage) }) } const opPollForTask = "PollForTask" // PollForTaskRequest generates a "aws/request.Request" representing the // client's request for the PollForTask operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PollForTask for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PollForTask method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PollForTaskRequest method. // req, resp := client.PollForTaskRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) PollForTaskRequest(input *PollForTaskInput) (req *request.Request, output *PollForTaskOutput) { op := &request.Operation{ Name: opPollForTask, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PollForTaskInput{} } req = c.newRequest(op, input, output) output = &PollForTaskOutput{} req.Data = output return } // PollForTask API operation for AWS Data Pipeline. // // Task runners call PollForTask to receive a task to perform from AWS Data // Pipeline. The task runner specifies which tasks it can perform by setting // a value for the workerGroup parameter. The task returned can come from any // of the pipelines that match the workerGroup value passed in by the task runner // and that was launched using the IAM user credentials specified by the task // runner. // // If tasks are ready in the work queue, PollForTask returns a response immediately. // If no tasks are available in the queue, PollForTask uses long-polling and // holds on to a poll connection for up to a 90 seconds, during which time the // first newly scheduled task is handed to the task runner. To accomodate this, // set the socket timeout in your task runner to 90 seconds. The task runner // should not call PollForTask again on the same workerGroup until it receives // a response, and this can take up to 90 seconds. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation PollForTask for usage and error information. // // Returned Error Codes: // * InternalServiceError // An internal service error occurred. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // // * TaskNotFoundException // The specified task was not found. // func (c *DataPipeline) PollForTask(input *PollForTaskInput) (*PollForTaskOutput, error) { req, out := c.PollForTaskRequest(input) err := req.Send() return out, err } const opPutPipelineDefinition = "PutPipelineDefinition" // PutPipelineDefinitionRequest generates a "aws/request.Request" representing the // client's request for the PutPipelineDefinition operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutPipelineDefinition for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutPipelineDefinition method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutPipelineDefinitionRequest method. // req, resp := client.PutPipelineDefinitionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) PutPipelineDefinitionRequest(input *PutPipelineDefinitionInput) (req *request.Request, output *PutPipelineDefinitionOutput) { op := &request.Operation{ Name: opPutPipelineDefinition, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutPipelineDefinitionInput{} } req = c.newRequest(op, input, output) output = &PutPipelineDefinitionOutput{} req.Data = output return } // PutPipelineDefinition API operation for AWS Data Pipeline. // // Adds tasks, schedules, and preconditions to the specified pipeline. You can // use PutPipelineDefinition to populate a new pipeline. // // PutPipelineDefinition also validates the configuration as it adds it to the // pipeline. Changes to the pipeline are saved unless one of the following three // validation errors exists in the pipeline. // // An object is missing a name or identifier field. // A string or reference field is empty. // The number of objects in the pipeline exceeds the maximum allowed objects. // // The pipeline is in a FINISHED state. // Pipeline object definitions are passed to the PutPipelineDefinition action // and returned by the GetPipelineDefinition action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation PutPipelineDefinition for usage and error information. // // Returned Error Codes: // * InternalServiceError // An internal service error occurred. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // // * PipelineNotFoundException // The specified pipeline was not found. Verify that you used the correct user // and account identifiers. // // * PipelineDeletedException // The specified pipeline has been deleted. // func (c *DataPipeline) PutPipelineDefinition(input *PutPipelineDefinitionInput) (*PutPipelineDefinitionOutput, error) { req, out := c.PutPipelineDefinitionRequest(input) err := req.Send() return out, err } const opQueryObjects = "QueryObjects" // QueryObjectsRequest generates a "aws/request.Request" representing the // client's request for the QueryObjects operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See QueryObjects for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the QueryObjects method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the QueryObjectsRequest method. // req, resp := client.QueryObjectsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) QueryObjectsRequest(input *QueryObjectsInput) (req *request.Request, output *QueryObjectsOutput) { op := &request.Operation{ Name: opQueryObjects, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"marker"}, OutputTokens: []string{"marker"}, LimitToken: "limit", TruncationToken: "hasMoreResults", }, } if input == nil { input = &QueryObjectsInput{} } req = c.newRequest(op, input, output) output = &QueryObjectsOutput{} req.Data = output return } // QueryObjects API operation for AWS Data Pipeline. // // Queries the specified pipeline for the names of objects that match the specified // set of conditions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation QueryObjects for usage and error information. // // Returned Error Codes: // * PipelineNotFoundException // The specified pipeline was not found. Verify that you used the correct user // and account identifiers. // // * PipelineDeletedException // The specified pipeline has been deleted. // // * InternalServiceError // An internal service error occurred. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // func (c *DataPipeline) QueryObjects(input *QueryObjectsInput) (*QueryObjectsOutput, error) { req, out := c.QueryObjectsRequest(input) err := req.Send() return out, err } // QueryObjectsPages iterates over the pages of a QueryObjects operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See QueryObjects method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a QueryObjects operation. // pageNum := 0 // err := client.QueryObjectsPages(params, // func(page *QueryObjectsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DataPipeline) QueryObjectsPages(input *QueryObjectsInput, fn func(p *QueryObjectsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.QueryObjectsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*QueryObjectsOutput), lastPage) }) } const opRemoveTags = "RemoveTags" // RemoveTagsRequest generates a "aws/request.Request" representing the // client's request for the RemoveTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveTagsRequest method. // req, resp := client.RemoveTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) RemoveTagsRequest(input *RemoveTagsInput) (req *request.Request, output *RemoveTagsOutput) { op := &request.Operation{ Name: opRemoveTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveTagsInput{} } req = c.newRequest(op, input, output) output = &RemoveTagsOutput{} req.Data = output return } // RemoveTags API operation for AWS Data Pipeline. // // Removes existing tags from the specified pipeline. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation RemoveTags for usage and error information. // // Returned Error Codes: // * InternalServiceError // An internal service error occurred. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // // * PipelineNotFoundException // The specified pipeline was not found. Verify that you used the correct user // and account identifiers. // // * PipelineDeletedException // The specified pipeline has been deleted. // func (c *DataPipeline) RemoveTags(input *RemoveTagsInput) (*RemoveTagsOutput, error) { req, out := c.RemoveTagsRequest(input) err := req.Send() return out, err } const opReportTaskProgress = "ReportTaskProgress" // ReportTaskProgressRequest generates a "aws/request.Request" representing the // client's request for the ReportTaskProgress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ReportTaskProgress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ReportTaskProgress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ReportTaskProgressRequest method. // req, resp := client.ReportTaskProgressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) ReportTaskProgressRequest(input *ReportTaskProgressInput) (req *request.Request, output *ReportTaskProgressOutput) { op := &request.Operation{ Name: opReportTaskProgress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ReportTaskProgressInput{} } req = c.newRequest(op, input, output) output = &ReportTaskProgressOutput{} req.Data = output return } // ReportTaskProgress API operation for AWS Data Pipeline. // // Task runners call ReportTaskProgress when assigned a task to acknowledge // that it has the task. If the web service does not receive this acknowledgement // within 2 minutes, it assigns the task in a subsequent PollForTask call. After // this initial acknowledgement, the task runner only needs to report progress // every 15 minutes to maintain its ownership of the task. You can change this // reporting time from 15 minutes by specifying a reportProgressTimeout field // in your pipeline. // // If a task runner does not report its status after 5 minutes, AWS Data Pipeline // assumes that the task runner is unable to process the task and reassigns // the task in a subsequent response to PollForTask. Task runners should call // ReportTaskProgress every 60 seconds. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation ReportTaskProgress for usage and error information. // // Returned Error Codes: // * InternalServiceError // An internal service error occurred. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // // * TaskNotFoundException // The specified task was not found. // // * PipelineNotFoundException // The specified pipeline was not found. Verify that you used the correct user // and account identifiers. // // * PipelineDeletedException // The specified pipeline has been deleted. // func (c *DataPipeline) ReportTaskProgress(input *ReportTaskProgressInput) (*ReportTaskProgressOutput, error) { req, out := c.ReportTaskProgressRequest(input) err := req.Send() return out, err } const opReportTaskRunnerHeartbeat = "ReportTaskRunnerHeartbeat" // ReportTaskRunnerHeartbeatRequest generates a "aws/request.Request" representing the // client's request for the ReportTaskRunnerHeartbeat operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ReportTaskRunnerHeartbeat for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ReportTaskRunnerHeartbeat method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ReportTaskRunnerHeartbeatRequest method. // req, resp := client.ReportTaskRunnerHeartbeatRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) ReportTaskRunnerHeartbeatRequest(input *ReportTaskRunnerHeartbeatInput) (req *request.Request, output *ReportTaskRunnerHeartbeatOutput) { op := &request.Operation{ Name: opReportTaskRunnerHeartbeat, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ReportTaskRunnerHeartbeatInput{} } req = c.newRequest(op, input, output) output = &ReportTaskRunnerHeartbeatOutput{} req.Data = output return } // ReportTaskRunnerHeartbeat API operation for AWS Data Pipeline. // // Task runners call ReportTaskRunnerHeartbeat every 15 minutes to indicate // that they are operational. If the AWS Data Pipeline Task Runner is launched // on a resource managed by AWS Data Pipeline, the web service can use this // call to detect when the task runner application has failed and restart a // new instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation ReportTaskRunnerHeartbeat for usage and error information. // // Returned Error Codes: // * InternalServiceError // An internal service error occurred. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // func (c *DataPipeline) ReportTaskRunnerHeartbeat(input *ReportTaskRunnerHeartbeatInput) (*ReportTaskRunnerHeartbeatOutput, error) { req, out := c.ReportTaskRunnerHeartbeatRequest(input) err := req.Send() return out, err } const opSetStatus = "SetStatus" // SetStatusRequest generates a "aws/request.Request" representing the // client's request for the SetStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetStatusRequest method. // req, resp := client.SetStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) SetStatusRequest(input *SetStatusInput) (req *request.Request, output *SetStatusOutput) { op := &request.Operation{ Name: opSetStatus, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetStatusInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetStatusOutput{} req.Data = output return } // SetStatus API operation for AWS Data Pipeline. // // Requests that the status of the specified physical or logical pipeline objects // be updated in the specified pipeline. This update might not occur immediately, // but is eventually consistent. The status that can be set depends on the type // of object (for example, DataNode or Activity). You cannot perform this operation // on FINISHED pipelines and attempting to do so returns InvalidRequestException. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation SetStatus for usage and error information. // // Returned Error Codes: // * PipelineNotFoundException // The specified pipeline was not found. Verify that you used the correct user // and account identifiers. // // * PipelineDeletedException // The specified pipeline has been deleted. // // * InternalServiceError // An internal service error occurred. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // func (c *DataPipeline) SetStatus(input *SetStatusInput) (*SetStatusOutput, error) { req, out := c.SetStatusRequest(input) err := req.Send() return out, err } const opSetTaskStatus = "SetTaskStatus" // SetTaskStatusRequest generates a "aws/request.Request" representing the // client's request for the SetTaskStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetTaskStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetTaskStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetTaskStatusRequest method. // req, resp := client.SetTaskStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) SetTaskStatusRequest(input *SetTaskStatusInput) (req *request.Request, output *SetTaskStatusOutput) { op := &request.Operation{ Name: opSetTaskStatus, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetTaskStatusInput{} } req = c.newRequest(op, input, output) output = &SetTaskStatusOutput{} req.Data = output return } // SetTaskStatus API operation for AWS Data Pipeline. // // Task runners call SetTaskStatus to notify AWS Data Pipeline that a task is // completed and provide information about the final status. A task runner makes // this call regardless of whether the task was sucessful. A task runner does // not need to call SetTaskStatus for tasks that are canceled by the web service // during a call to ReportTaskProgress. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation SetTaskStatus for usage and error information. // // Returned Error Codes: // * InternalServiceError // An internal service error occurred. // // * TaskNotFoundException // The specified task was not found. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // // * PipelineNotFoundException // The specified pipeline was not found. Verify that you used the correct user // and account identifiers. // // * PipelineDeletedException // The specified pipeline has been deleted. // func (c *DataPipeline) SetTaskStatus(input *SetTaskStatusInput) (*SetTaskStatusOutput, error) { req, out := c.SetTaskStatusRequest(input) err := req.Send() return out, err } const opValidatePipelineDefinition = "ValidatePipelineDefinition" // ValidatePipelineDefinitionRequest generates a "aws/request.Request" representing the // client's request for the ValidatePipelineDefinition operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ValidatePipelineDefinition for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ValidatePipelineDefinition method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ValidatePipelineDefinitionRequest method. // req, resp := client.ValidatePipelineDefinitionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DataPipeline) ValidatePipelineDefinitionRequest(input *ValidatePipelineDefinitionInput) (req *request.Request, output *ValidatePipelineDefinitionOutput) { op := &request.Operation{ Name: opValidatePipelineDefinition, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ValidatePipelineDefinitionInput{} } req = c.newRequest(op, input, output) output = &ValidatePipelineDefinitionOutput{} req.Data = output return } // ValidatePipelineDefinition API operation for AWS Data Pipeline. // // Validates the specified pipeline definition to ensure that it is well formed // and can be run without error. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Data Pipeline's // API operation ValidatePipelineDefinition for usage and error information. // // Returned Error Codes: // * InternalServiceError // An internal service error occurred. // // * InvalidRequestException // The request was not valid. Verify that your request was properly formatted, // that the signature was generated with the correct credentials, and that you // haven't exceeded any of the service limits for your account. // // * PipelineNotFoundException // The specified pipeline was not found. Verify that you used the correct user // and account identifiers. // // * PipelineDeletedException // The specified pipeline has been deleted. // func (c *DataPipeline) ValidatePipelineDefinition(input *ValidatePipelineDefinitionInput) (*ValidatePipelineDefinitionOutput, error) { req, out := c.ValidatePipelineDefinitionRequest(input) err := req.Send() return out, err } // Contains the parameters for ActivatePipeline. type ActivatePipelineInput struct { _ struct{} `type:"structure"` // A list of parameter values to pass to the pipeline at activation. ParameterValues []*ParameterValue `locationName:"parameterValues" type:"list"` // The ID of the pipeline. // // PipelineId is a required field PipelineId *string `locationName:"pipelineId" min:"1" type:"string" required:"true"` // The date and time to resume the pipeline. By default, the pipeline resumes // from the last completed execution. StartTimestamp *time.Time `locationName:"startTimestamp" type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s ActivatePipelineInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActivatePipelineInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ActivatePipelineInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ActivatePipelineInput"} if s.PipelineId == nil { invalidParams.Add(request.NewErrParamRequired("PipelineId")) } if s.PipelineId != nil && len(*s.PipelineId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PipelineId", 1)) } if s.ParameterValues != nil { for i, v := range s.ParameterValues { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ParameterValues", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ActivatePipeline. type ActivatePipelineOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ActivatePipelineOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActivatePipelineOutput) GoString() string { return s.String() } // Contains the parameters for AddTags. type AddTagsInput struct { _ struct{} `type:"structure"` // The ID of the pipeline. // // PipelineId is a required field PipelineId *string `locationName:"pipelineId" min:"1" type:"string" required:"true"` // The tags to add, as key/value pairs. // // Tags is a required field Tags []*Tag `locationName:"tags" type:"list" required:"true"` } // String returns the string representation func (s AddTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsInput"} if s.PipelineId == nil { invalidParams.Add(request.NewErrParamRequired("PipelineId")) } if s.PipelineId != nil && len(*s.PipelineId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PipelineId", 1)) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of AddTags. type AddTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsOutput) GoString() string { return s.String() } // Contains the parameters for CreatePipeline. type CreatePipelineInput struct { _ struct{} `type:"structure"` // The description for the pipeline. Description *string `locationName:"description" type:"string"` // The name for the pipeline. You can use the same name for multiple pipelines // associated with your AWS account, because AWS Data Pipeline assigns each // pipeline a unique pipeline identifier. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // A list of tags to associate with the pipeline at creation. Tags let you control // access to pipelines. For more information, see Controlling User Access to // Pipelines (http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html) // in the AWS Data Pipeline Developer Guide. Tags []*Tag `locationName:"tags" type:"list"` // A unique identifier. This identifier is not the same as the pipeline identifier // assigned by AWS Data Pipeline. You are responsible for defining the format // and ensuring the uniqueness of this identifier. You use this parameter to // ensure idempotency during repeated calls to CreatePipeline. For example, // if the first call to CreatePipeline does not succeed, you can pass in the // same unique identifier and pipeline name combination on a subsequent call // to CreatePipeline. CreatePipeline ensures that if a pipeline already exists // with the same name and unique identifier, a new pipeline is not created. // Instead, you'll receive the pipeline identifier from the previous attempt. // The uniqueness of the name and unique identifier combination is scoped to // the AWS account or IAM user credentials. // // UniqueId is a required field UniqueId *string `locationName:"uniqueId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreatePipelineInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePipelineInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePipelineInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePipelineInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.UniqueId == nil { invalidParams.Add(request.NewErrParamRequired("UniqueId")) } if s.UniqueId != nil && len(*s.UniqueId) < 1 { invalidParams.Add(request.NewErrParamMinLen("UniqueId", 1)) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreatePipeline. type CreatePipelineOutput struct { _ struct{} `type:"structure"` // The ID that AWS Data Pipeline assigns the newly created pipeline. For example, // df-06372391ZG65EXAMPLE. // // PipelineId is a required field PipelineId *string `locationName:"pipelineId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreatePipelineOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePipelineOutput) GoString() string { return s.String() } // Contains the parameters for DeactivatePipeline. type DeactivatePipelineInput struct { _ struct{} `type:"structure"` // Indicates whether to cancel any running objects. The default is true, which // sets the state of any running objects to CANCELED. If this value is false, // the pipeline is deactivated after all running objects finish. CancelActive *bool `locationName:"cancelActive" type:"boolean"` // The ID of the pipeline. // // PipelineId is a required field PipelineId *string `locationName:"pipelineId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeactivatePipelineInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeactivatePipelineInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeactivatePipelineInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeactivatePipelineInput"} if s.PipelineId == nil { invalidParams.Add(request.NewErrParamRequired("PipelineId")) } if s.PipelineId != nil && len(*s.PipelineId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PipelineId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DeactivatePipeline. type DeactivatePipelineOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeactivatePipelineOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeactivatePipelineOutput) GoString() string { return s.String() } // Contains the parameters for DeletePipeline. type DeletePipelineInput struct { _ struct{} `type:"structure"` // The ID of the pipeline. // // PipelineId is a required field PipelineId *string `locationName:"pipelineId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeletePipelineInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePipelineInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeletePipelineInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeletePipelineInput"} if s.PipelineId == nil { invalidParams.Add(request.NewErrParamRequired("PipelineId")) } if s.PipelineId != nil && len(*s.PipelineId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PipelineId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeletePipelineOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeletePipelineOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePipelineOutput) GoString() string { return s.String() } // Contains the parameters for DescribeObjects. type DescribeObjectsInput struct { _ struct{} `type:"structure"` // Indicates whether any expressions in the object should be evaluated when // the object descriptions are returned. EvaluateExpressions *bool `locationName:"evaluateExpressions" type:"boolean"` // The starting point for the results to be returned. For the first call, this // value should be empty. As long as there are more results, continue to call // DescribeObjects with the marker value from the previous call to retrieve // the next set of results. Marker *string `locationName:"marker" type:"string"` // The IDs of the pipeline objects that contain the definitions to be described. // You can pass as many as 25 identifiers in a single call to DescribeObjects. // // ObjectIds is a required field ObjectIds []*string `locationName:"objectIds" type:"list" required:"true"` // The ID of the pipeline that contains the object definitions. // // PipelineId is a required field PipelineId *string `locationName:"pipelineId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeObjectsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeObjectsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeObjectsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeObjectsInput"} if s.ObjectIds == nil { invalidParams.Add(request.NewErrParamRequired("ObjectIds")) } if s.PipelineId == nil { invalidParams.Add(request.NewErrParamRequired("PipelineId")) } if s.PipelineId != nil && len(*s.PipelineId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PipelineId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeObjects. type DescribeObjectsOutput struct { _ struct{} `type:"structure"` // Indicates whether there are more results to return. HasMoreResults *bool `locationName:"hasMoreResults" type:"boolean"` // The starting point for the next page of results. To view the next page of // results, call DescribeObjects again with this marker value. If the value // is null, there are no more results. Marker *string `locationName:"marker" type:"string"` // An array of object definitions. // // PipelineObjects is a required field PipelineObjects []*PipelineObject `locationName:"pipelineObjects" type:"list" required:"true"` } // String returns the string representation func (s DescribeObjectsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeObjectsOutput) GoString() string { return s.String() } // Contains the parameters for DescribePipelines. type DescribePipelinesInput struct { _ struct{} `type:"structure"` // The IDs of the pipelines to describe. You can pass as many as 25 identifiers // in a single call. To obtain pipeline IDs, call ListPipelines. // // PipelineIds is a required field PipelineIds []*string `locationName:"pipelineIds" type:"list" required:"true"` } // String returns the string representation func (s DescribePipelinesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribePipelinesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribePipelinesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribePipelinesInput"} if s.PipelineIds == nil { invalidParams.Add(request.NewErrParamRequired("PipelineIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribePipelines. type DescribePipelinesOutput struct { _ struct{} `type:"structure"` // An array of descriptions for the specified pipelines. // // PipelineDescriptionList is a required field PipelineDescriptionList []*PipelineDescription `locationName:"pipelineDescriptionList" type:"list" required:"true"` } // String returns the string representation func (s DescribePipelinesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribePipelinesOutput) GoString() string { return s.String() } // Contains the parameters for EvaluateExpression. type EvaluateExpressionInput struct { _ struct{} `type:"structure"` // The expression to evaluate. // // Expression is a required field Expression *string `locationName:"expression" type:"string" required:"true"` // The ID of the object. // // ObjectId is a required field ObjectId *string `locationName:"objectId" min:"1" type:"string" required:"true"` // The ID of the pipeline. // // PipelineId is a required field PipelineId *string `locationName:"pipelineId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s EvaluateExpressionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EvaluateExpressionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EvaluateExpressionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EvaluateExpressionInput"} if s.Expression == nil { invalidParams.Add(request.NewErrParamRequired("Expression")) } if s.ObjectId == nil { invalidParams.Add(request.NewErrParamRequired("ObjectId")) } if s.ObjectId != nil && len(*s.ObjectId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ObjectId", 1)) } if s.PipelineId == nil { invalidParams.Add(request.NewErrParamRequired("PipelineId")) } if s.PipelineId != nil && len(*s.PipelineId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PipelineId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of EvaluateExpression. type EvaluateExpressionOutput struct { _ struct{} `type:"structure"` // The evaluated expression. // // EvaluatedExpression is a required field EvaluatedExpression *string `locationName:"evaluatedExpression" type:"string" required:"true"` } // String returns the string representation func (s EvaluateExpressionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EvaluateExpressionOutput) GoString() string { return s.String() } // A key-value pair that describes a property of a pipeline object. The value // is specified as either a string value (StringValue) or a reference to another // object (RefValue) but not as both. type Field struct { _ struct{} `type:"structure"` // The field identifier. // // Key is a required field Key *string `locationName:"key" min:"1" type:"string" required:"true"` // The field value, expressed as the identifier of another object. RefValue *string `locationName:"refValue" min:"1" type:"string"` // The field value, expressed as a String. StringValue *string `locationName:"stringValue" type:"string"` } // String returns the string representation func (s Field) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Field) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Field) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Field"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.RefValue != nil && len(*s.RefValue) < 1 { invalidParams.Add(request.NewErrParamMinLen("RefValue", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for GetPipelineDefinition. type GetPipelineDefinitionInput struct { _ struct{} `type:"structure"` // The ID of the pipeline. // // PipelineId is a required field PipelineId *string `locationName:"pipelineId" min:"1" type:"string" required:"true"` // The version of the pipeline definition to retrieve. Set this parameter to // latest (default) to use the last definition saved to the pipeline or active // to use the last definition that was activated. Version *string `locationName:"version" type:"string"` } // String returns the string representation func (s GetPipelineDefinitionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPipelineDefinitionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetPipelineDefinitionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetPipelineDefinitionInput"} if s.PipelineId == nil { invalidParams.Add(request.NewErrParamRequired("PipelineId")) } if s.PipelineId != nil && len(*s.PipelineId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PipelineId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of GetPipelineDefinition. type GetPipelineDefinitionOutput struct { _ struct{} `type:"structure"` // The parameter objects used in the pipeline definition. ParameterObjects []*ParameterObject `locationName:"parameterObjects" type:"list"` // The parameter values used in the pipeline definition. ParameterValues []*ParameterValue `locationName:"parameterValues" type:"list"` // The objects defined in the pipeline. PipelineObjects []*PipelineObject `locationName:"pipelineObjects" type:"list"` } // String returns the string representation func (s GetPipelineDefinitionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPipelineDefinitionOutput) GoString() string { return s.String() } // Identity information for the EC2 instance that is hosting the task runner. // You can get this value by calling a metadata URI from the EC2 instance. For // more information, see Instance Metadata (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AESDG-chapter-instancedata.html) // in the Amazon Elastic Compute Cloud User Guide. Passing in this value proves // that your task runner is running on an EC2 instance, and ensures the proper // AWS Data Pipeline service charges are applied to your pipeline. type InstanceIdentity struct { _ struct{} `type:"structure"` // A description of an EC2 instance that is generated when the instance is launched // and exposed to the instance via the instance metadata service in the form // of a JSON representation of an object. Document *string `locationName:"document" type:"string"` // A signature which can be used to verify the accuracy and authenticity of // the information provided in the instance identity document. Signature *string `locationName:"signature" type:"string"` } // String returns the string representation func (s InstanceIdentity) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceIdentity) GoString() string { return s.String() } // Contains the parameters for ListPipelines. type ListPipelinesInput struct { _ struct{} `type:"structure"` // The starting point for the results to be returned. For the first call, this // value should be empty. As long as there are more results, continue to call // ListPipelines with the marker value from the previous call to retrieve the // next set of results. Marker *string `locationName:"marker" type:"string"` } // String returns the string representation func (s ListPipelinesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPipelinesInput) GoString() string { return s.String() } // Contains the output of ListPipelines. type ListPipelinesOutput struct { _ struct{} `type:"structure"` // Indicates whether there are more results that can be obtained by a subsequent // call. HasMoreResults *bool `locationName:"hasMoreResults" type:"boolean"` // The starting point for the next page of results. To view the next page of // results, call ListPipelinesOutput again with this marker value. If the value // is null, there are no more results. Marker *string `locationName:"marker" type:"string"` // The pipeline identifiers. If you require additional information about the // pipelines, you can use these identifiers to call DescribePipelines and GetPipelineDefinition. // // PipelineIdList is a required field PipelineIdList []*PipelineIdName `locationName:"pipelineIdList" type:"list" required:"true"` } // String returns the string representation func (s ListPipelinesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPipelinesOutput) GoString() string { return s.String() } // Contains a logical operation for comparing the value of a field with a specified // value. type Operator struct { _ struct{} `type:"structure"` // The logical operation to be performed: equal (EQ), equal reference (REF_EQ), // less than or equal (LE), greater than or equal (GE), or between (BETWEEN). // Equal reference (REF_EQ) can be used only with reference fields. The other // comparison types can be used only with String fields. The comparison types // you can use apply only to certain object fields, as detailed below. // // The comparison operators EQ and REF_EQ act on the following fields: // // * name // * @sphere // * parent // * @componentParent // * @instanceParent // * @status // * @scheduledStartTime // * @scheduledEndTime // * @actualStartTime // * @actualEndTime // The comparison operators GE, LE, and BETWEEN act on the following fields: // // * @scheduledStartTime // * @scheduledEndTime // * @actualStartTime // * @actualEndTime // Note that fields beginning with the at sign (@) are read-only and set by // the web service. When you name fields, you should choose names containing // only alpha-numeric values, as symbols may be reserved by AWS Data Pipeline. // User-defined fields that you add to a pipeline should prefix their name with // the string "my". Type *string `locationName:"type" type:"string" enum:"OperatorType"` // The value that the actual field value will be compared with. Values []*string `locationName:"values" type:"list"` } // String returns the string representation func (s Operator) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Operator) GoString() string { return s.String() } // The attributes allowed or specified with a parameter object. type ParameterAttribute struct { _ struct{} `type:"structure"` // The field identifier. // // Key is a required field Key *string `locationName:"key" min:"1" type:"string" required:"true"` // The field value, expressed as a String. // // StringValue is a required field StringValue *string `locationName:"stringValue" type:"string" required:"true"` } // String returns the string representation func (s ParameterAttribute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ParameterAttribute) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ParameterAttribute) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ParameterAttribute"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.StringValue == nil { invalidParams.Add(request.NewErrParamRequired("StringValue")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains information about a parameter object. type ParameterObject struct { _ struct{} `type:"structure"` // The attributes of the parameter object. // // Attributes is a required field Attributes []*ParameterAttribute `locationName:"attributes" type:"list" required:"true"` // The ID of the parameter object. // // Id is a required field Id *string `locationName:"id" min:"1" type:"string" required:"true"` } // String returns the string representation func (s ParameterObject) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ParameterObject) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ParameterObject) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ParameterObject"} if s.Attributes == nil { invalidParams.Add(request.NewErrParamRequired("Attributes")) } if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } if s.Attributes != nil { for i, v := range s.Attributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attributes", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A value or list of parameter values. type ParameterValue struct { _ struct{} `type:"structure"` // The ID of the parameter value. // // Id is a required field Id *string `locationName:"id" min:"1" type:"string" required:"true"` // The field value, expressed as a String. // // StringValue is a required field StringValue *string `locationName:"stringValue" type:"string" required:"true"` } // String returns the string representation func (s ParameterValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ParameterValue) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ParameterValue) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ParameterValue"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } if s.StringValue == nil { invalidParams.Add(request.NewErrParamRequired("StringValue")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains pipeline metadata. type PipelineDescription struct { _ struct{} `type:"structure"` // Description of the pipeline. Description *string `locationName:"description" type:"string"` // A list of read-only fields that contain metadata about the pipeline: @userId, // @accountId, and @pipelineState. // // Fields is a required field Fields []*Field `locationName:"fields" type:"list" required:"true"` // The name of the pipeline. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // The pipeline identifier that was assigned by AWS Data Pipeline. This is a // string of the form df-297EG78HU43EEXAMPLE. // // PipelineId is a required field PipelineId *string `locationName:"pipelineId" min:"1" type:"string" required:"true"` // A list of tags to associated with a pipeline. Tags let you control access // to pipelines. For more information, see Controlling User Access to Pipelines // (http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html) // in the AWS Data Pipeline Developer Guide. Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation func (s PipelineDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PipelineDescription) GoString() string { return s.String() } // Contains the name and identifier of a pipeline. type PipelineIdName struct { _ struct{} `type:"structure"` // The ID of the pipeline that was assigned by AWS Data Pipeline. This is a // string of the form df-297EG78HU43EEXAMPLE. Id *string `locationName:"id" min:"1" type:"string"` // The name of the pipeline. Name *string `locationName:"name" min:"1" type:"string"` } // String returns the string representation func (s PipelineIdName) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PipelineIdName) GoString() string { return s.String() } // Contains information about a pipeline object. This can be a logical, physical, // or physical attempt pipeline object. The complete set of components of a // pipeline defines the pipeline. type PipelineObject struct { _ struct{} `type:"structure"` // Key-value pairs that define the properties of the object. // // Fields is a required field Fields []*Field `locationName:"fields" type:"list" required:"true"` // The ID of the object. // // Id is a required field Id *string `locationName:"id" min:"1" type:"string" required:"true"` // The name of the object. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` } // String returns the string representation func (s PipelineObject) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PipelineObject) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PipelineObject) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PipelineObject"} if s.Fields == nil { invalidParams.Add(request.NewErrParamRequired("Fields")) } if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Fields != nil { for i, v := range s.Fields { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Fields", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for PollForTask. type PollForTaskInput struct { _ struct{} `type:"structure"` // The public DNS name of the calling task runner. Hostname *string `locationName:"hostname" min:"1" type:"string"` // Identity information for the EC2 instance that is hosting the task runner. // You can get this value from the instance using http://169.254.169.254/latest/meta-data/instance-id. // For more information, see Instance Metadata (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AESDG-chapter-instancedata.html) // in the Amazon Elastic Compute Cloud User Guide. Passing in this value proves // that your task runner is running on an EC2 instance, and ensures the proper // AWS Data Pipeline service charges are applied to your pipeline. InstanceIdentity *InstanceIdentity `locationName:"instanceIdentity" type:"structure"` // The type of task the task runner is configured to accept and process. The // worker group is set as a field on objects in the pipeline when they are created. // You can only specify a single value for workerGroup in the call to PollForTask. // There are no wildcard values permitted in workerGroup; the string must be // an exact, case-sensitive, match. // // WorkerGroup is a required field WorkerGroup *string `locationName:"workerGroup" type:"string" required:"true"` } // String returns the string representation func (s PollForTaskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PollForTaskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PollForTaskInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PollForTaskInput"} if s.Hostname != nil && len(*s.Hostname) < 1 { invalidParams.Add(request.NewErrParamMinLen("Hostname", 1)) } if s.WorkerGroup == nil { invalidParams.Add(request.NewErrParamRequired("WorkerGroup")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of PollForTask. type PollForTaskOutput struct { _ struct{} `type:"structure"` // The information needed to complete the task that is being assigned to the // task runner. One of the fields returned in this object is taskId, which contains // an identifier for the task being assigned. The calling task runner uses taskId // in subsequent calls to ReportTaskProgress and SetTaskStatus. TaskObject *TaskObject `locationName:"taskObject" type:"structure"` } // String returns the string representation func (s PollForTaskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PollForTaskOutput) GoString() string { return s.String() } // Contains the parameters for PutPipelineDefinition. type PutPipelineDefinitionInput struct { _ struct{} `type:"structure"` // The parameter objects used with the pipeline. ParameterObjects []*ParameterObject `locationName:"parameterObjects" type:"list"` // The parameter values used with the pipeline. ParameterValues []*ParameterValue `locationName:"parameterValues" type:"list"` // The ID of the pipeline. // // PipelineId is a required field PipelineId *string `locationName:"pipelineId" min:"1" type:"string" required:"true"` // The objects that define the pipeline. These objects overwrite the existing // pipeline definition. // // PipelineObjects is a required field PipelineObjects []*PipelineObject `locationName:"pipelineObjects" type:"list" required:"true"` } // String returns the string representation func (s PutPipelineDefinitionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutPipelineDefinitionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutPipelineDefinitionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutPipelineDefinitionInput"} if s.PipelineId == nil { invalidParams.Add(request.NewErrParamRequired("PipelineId")) } if s.PipelineId != nil && len(*s.PipelineId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PipelineId", 1)) } if s.PipelineObjects == nil { invalidParams.Add(request.NewErrParamRequired("PipelineObjects")) } if s.ParameterObjects != nil { for i, v := range s.ParameterObjects { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ParameterObjects", i), err.(request.ErrInvalidParams)) } } } if s.ParameterValues != nil { for i, v := range s.ParameterValues { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ParameterValues", i), err.(request.ErrInvalidParams)) } } } if s.PipelineObjects != nil { for i, v := range s.PipelineObjects { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PipelineObjects", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of PutPipelineDefinition. type PutPipelineDefinitionOutput struct { _ struct{} `type:"structure"` // Indicates whether there were validation errors, and the pipeline definition // is stored but cannot be activated until you correct the pipeline and call // PutPipelineDefinition to commit the corrected pipeline. // // Errored is a required field Errored *bool `locationName:"errored" type:"boolean" required:"true"` // The validation errors that are associated with the objects defined in pipelineObjects. ValidationErrors []*ValidationError `locationName:"validationErrors" type:"list"` // The validation warnings that are associated with the objects defined in pipelineObjects. ValidationWarnings []*ValidationWarning `locationName:"validationWarnings" type:"list"` } // String returns the string representation func (s PutPipelineDefinitionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutPipelineDefinitionOutput) GoString() string { return s.String() } // Defines the query to run against an object. type Query struct { _ struct{} `type:"structure"` // List of selectors that define the query. An object must satisfy all of the // selectors to match the query. Selectors []*Selector `locationName:"selectors" type:"list"` } // String returns the string representation func (s Query) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Query) GoString() string { return s.String() } // Contains the parameters for QueryObjects. type QueryObjectsInput struct { _ struct{} `type:"structure"` // The maximum number of object names that QueryObjects will return in a single // call. The default value is 100. Limit *int64 `locationName:"limit" type:"integer"` // The starting point for the results to be returned. For the first call, this // value should be empty. As long as there are more results, continue to call // QueryObjects with the marker value from the previous call to retrieve the // next set of results. Marker *string `locationName:"marker" type:"string"` // The ID of the pipeline. // // PipelineId is a required field PipelineId *string `locationName:"pipelineId" min:"1" type:"string" required:"true"` // The query that defines the objects to be returned. The Query object can contain // a maximum of ten selectors. The conditions in the query are limited to top-level // String fields in the object. These filters can be applied to components, // instances, and attempts. Query *Query `locationName:"query" type:"structure"` // Indicates whether the query applies to components or instances. The possible // values are: COMPONENT, INSTANCE, and ATTEMPT. // // Sphere is a required field Sphere *string `locationName:"sphere" type:"string" required:"true"` } // String returns the string representation func (s QueryObjectsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s QueryObjectsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *QueryObjectsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "QueryObjectsInput"} if s.PipelineId == nil { invalidParams.Add(request.NewErrParamRequired("PipelineId")) } if s.PipelineId != nil && len(*s.PipelineId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PipelineId", 1)) } if s.Sphere == nil { invalidParams.Add(request.NewErrParamRequired("Sphere")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of QueryObjects. type QueryObjectsOutput struct { _ struct{} `type:"structure"` // Indicates whether there are more results that can be obtained by a subsequent // call. HasMoreResults *bool `locationName:"hasMoreResults" type:"boolean"` // The identifiers that match the query selectors. Ids []*string `locationName:"ids" type:"list"` // The starting point for the next page of results. To view the next page of // results, call QueryObjects again with this marker value. If the value is // null, there are no more results. Marker *string `locationName:"marker" type:"string"` } // String returns the string representation func (s QueryObjectsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s QueryObjectsOutput) GoString() string { return s.String() } // Contains the parameters for RemoveTags. type RemoveTagsInput struct { _ struct{} `type:"structure"` // The ID of the pipeline. // // PipelineId is a required field PipelineId *string `locationName:"pipelineId" min:"1" type:"string" required:"true"` // The keys of the tags to remove. // // TagKeys is a required field TagKeys []*string `locationName:"tagKeys" type:"list" required:"true"` } // String returns the string representation func (s RemoveTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTagsInput"} if s.PipelineId == nil { invalidParams.Add(request.NewErrParamRequired("PipelineId")) } if s.PipelineId != nil && len(*s.PipelineId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PipelineId", 1)) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of RemoveTags. type RemoveTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsOutput) GoString() string { return s.String() } // Contains the parameters for ReportTaskProgress. type ReportTaskProgressInput struct { _ struct{} `type:"structure"` // Key-value pairs that define the properties of the ReportTaskProgressInput // object. Fields []*Field `locationName:"fields" type:"list"` // The ID of the task assigned to the task runner. This value is provided in // the response for PollForTask. // // TaskId is a required field TaskId *string `locationName:"taskId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s ReportTaskProgressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReportTaskProgressInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReportTaskProgressInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReportTaskProgressInput"} if s.TaskId == nil { invalidParams.Add(request.NewErrParamRequired("TaskId")) } if s.TaskId != nil && len(*s.TaskId) < 1 { invalidParams.Add(request.NewErrParamMinLen("TaskId", 1)) } if s.Fields != nil { for i, v := range s.Fields { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Fields", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ReportTaskProgress. type ReportTaskProgressOutput struct { _ struct{} `type:"structure"` // If true, the calling task runner should cancel processing of the task. The // task runner does not need to call SetTaskStatus for canceled tasks. // // Canceled is a required field Canceled *bool `locationName:"canceled" type:"boolean" required:"true"` } // String returns the string representation func (s ReportTaskProgressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReportTaskProgressOutput) GoString() string { return s.String() } // Contains the parameters for ReportTaskRunnerHeartbeat. type ReportTaskRunnerHeartbeatInput struct { _ struct{} `type:"structure"` // The public DNS name of the task runner. Hostname *string `locationName:"hostname" min:"1" type:"string"` // The ID of the task runner. This value should be unique across your AWS account. // In the case of AWS Data Pipeline Task Runner launched on a resource managed // by AWS Data Pipeline, the web service provides a unique identifier when it // launches the application. If you have written a custom task runner, you should // assign a unique identifier for the task runner. // // TaskrunnerId is a required field TaskrunnerId *string `locationName:"taskrunnerId" min:"1" type:"string" required:"true"` // The type of task the task runner is configured to accept and process. The // worker group is set as a field on objects in the pipeline when they are created. // You can only specify a single value for workerGroup. There are no wildcard // values permitted in workerGroup; the string must be an exact, case-sensitive, // match. WorkerGroup *string `locationName:"workerGroup" type:"string"` } // String returns the string representation func (s ReportTaskRunnerHeartbeatInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReportTaskRunnerHeartbeatInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReportTaskRunnerHeartbeatInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReportTaskRunnerHeartbeatInput"} if s.Hostname != nil && len(*s.Hostname) < 1 { invalidParams.Add(request.NewErrParamMinLen("Hostname", 1)) } if s.TaskrunnerId == nil { invalidParams.Add(request.NewErrParamRequired("TaskrunnerId")) } if s.TaskrunnerId != nil && len(*s.TaskrunnerId) < 1 { invalidParams.Add(request.NewErrParamMinLen("TaskrunnerId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ReportTaskRunnerHeartbeat. type ReportTaskRunnerHeartbeatOutput struct { _ struct{} `type:"structure"` // Indicates whether the calling task runner should terminate. // // Terminate is a required field Terminate *bool `locationName:"terminate" type:"boolean" required:"true"` } // String returns the string representation func (s ReportTaskRunnerHeartbeatOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReportTaskRunnerHeartbeatOutput) GoString() string { return s.String() } // A comparision that is used to determine whether a query should return this // object. type Selector struct { _ struct{} `type:"structure"` // The name of the field that the operator will be applied to. The field name // is the "key" portion of the field definition in the pipeline definition syntax // that is used by the AWS Data Pipeline API. If the field is not set on the // object, the condition fails. FieldName *string `locationName:"fieldName" type:"string"` // Contains a logical operation for comparing the value of a field with a specified // value. Operator *Operator `locationName:"operator" type:"structure"` } // String returns the string representation func (s Selector) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Selector) GoString() string { return s.String() } // Contains the parameters for SetStatus. type SetStatusInput struct { _ struct{} `type:"structure"` // The IDs of the objects. The corresponding objects can be either physical // or components, but not a mix of both types. // // ObjectIds is a required field ObjectIds []*string `locationName:"objectIds" type:"list" required:"true"` // The ID of the pipeline that contains the objects. // // PipelineId is a required field PipelineId *string `locationName:"pipelineId" min:"1" type:"string" required:"true"` // The status to be set on all the objects specified in objectIds. For components, // use PAUSE or RESUME. For instances, use TRY_CANCEL, RERUN, or MARK_FINISHED. // // Status is a required field Status *string `locationName:"status" type:"string" required:"true"` } // String returns the string representation func (s SetStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetStatusInput"} if s.ObjectIds == nil { invalidParams.Add(request.NewErrParamRequired("ObjectIds")) } if s.PipelineId == nil { invalidParams.Add(request.NewErrParamRequired("PipelineId")) } if s.PipelineId != nil && len(*s.PipelineId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PipelineId", 1)) } if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetStatusOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetStatusOutput) GoString() string { return s.String() } // Contains the parameters for SetTaskStatus. type SetTaskStatusInput struct { _ struct{} `type:"structure"` // If an error occurred during the task, this value specifies the error code. // This value is set on the physical attempt object. It is used to display error // information to the user. It should not start with string "Service_" which // is reserved by the system. ErrorId *string `locationName:"errorId" type:"string"` // If an error occurred during the task, this value specifies a text description // of the error. This value is set on the physical attempt object. It is used // to display error information to the user. The web service does not parse // this value. ErrorMessage *string `locationName:"errorMessage" type:"string"` // If an error occurred during the task, this value specifies the stack trace // associated with the error. This value is set on the physical attempt object. // It is used to display error information to the user. The web service does // not parse this value. ErrorStackTrace *string `locationName:"errorStackTrace" type:"string"` // The ID of the task assigned to the task runner. This value is provided in // the response for PollForTask. // // TaskId is a required field TaskId *string `locationName:"taskId" min:"1" type:"string" required:"true"` // If FINISHED, the task successfully completed. If FAILED, the task ended unsuccessfully. // Preconditions use false. // // TaskStatus is a required field TaskStatus *string `locationName:"taskStatus" type:"string" required:"true" enum:"TaskStatus"` } // String returns the string representation func (s SetTaskStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetTaskStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetTaskStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetTaskStatusInput"} if s.TaskId == nil { invalidParams.Add(request.NewErrParamRequired("TaskId")) } if s.TaskId != nil && len(*s.TaskId) < 1 { invalidParams.Add(request.NewErrParamMinLen("TaskId", 1)) } if s.TaskStatus == nil { invalidParams.Add(request.NewErrParamRequired("TaskStatus")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of SetTaskStatus. type SetTaskStatusOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetTaskStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetTaskStatusOutput) GoString() string { return s.String() } // Tags are key/value pairs defined by a user and associated with a pipeline // to control access. AWS Data Pipeline allows you to associate ten tags per // pipeline. For more information, see Controlling User Access to Pipelines // (http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html) // in the AWS Data Pipeline Developer Guide. type Tag struct { _ struct{} `type:"structure"` // The key name of a tag defined by a user. For more information, see Controlling // User Access to Pipelines (http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html) // in the AWS Data Pipeline Developer Guide. // // Key is a required field Key *string `locationName:"key" min:"1" type:"string" required:"true"` // The optional value portion of a tag defined by a user. For more information, // see Controlling User Access to Pipelines (http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html) // in the AWS Data Pipeline Developer Guide. // // Value is a required field Value *string `locationName:"value" type:"string" required:"true"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains information about a pipeline task that is assigned to a task runner. type TaskObject struct { _ struct{} `type:"structure"` // The ID of the pipeline task attempt object. AWS Data Pipeline uses this value // to track how many times a task is attempted. AttemptId *string `locationName:"attemptId" min:"1" type:"string"` // Connection information for the location where the task runner will publish // the output of the task. Objects map[string]*PipelineObject `locationName:"objects" type:"map"` // The ID of the pipeline that provided the task. PipelineId *string `locationName:"pipelineId" min:"1" type:"string"` // An internal identifier for the task. This ID is passed to the SetTaskStatus // and ReportTaskProgress actions. TaskId *string `locationName:"taskId" min:"1" type:"string"` } // String returns the string representation func (s TaskObject) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TaskObject) GoString() string { return s.String() } // Contains the parameters for ValidatePipelineDefinition. type ValidatePipelineDefinitionInput struct { _ struct{} `type:"structure"` // The parameter objects used with the pipeline. ParameterObjects []*ParameterObject `locationName:"parameterObjects" type:"list"` // The parameter values used with the pipeline. ParameterValues []*ParameterValue `locationName:"parameterValues" type:"list"` // The ID of the pipeline. // // PipelineId is a required field PipelineId *string `locationName:"pipelineId" min:"1" type:"string" required:"true"` // The objects that define the pipeline changes to validate against the pipeline. // // PipelineObjects is a required field PipelineObjects []*PipelineObject `locationName:"pipelineObjects" type:"list" required:"true"` } // String returns the string representation func (s ValidatePipelineDefinitionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ValidatePipelineDefinitionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ValidatePipelineDefinitionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ValidatePipelineDefinitionInput"} if s.PipelineId == nil { invalidParams.Add(request.NewErrParamRequired("PipelineId")) } if s.PipelineId != nil && len(*s.PipelineId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PipelineId", 1)) } if s.PipelineObjects == nil { invalidParams.Add(request.NewErrParamRequired("PipelineObjects")) } if s.ParameterObjects != nil { for i, v := range s.ParameterObjects { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ParameterObjects", i), err.(request.ErrInvalidParams)) } } } if s.ParameterValues != nil { for i, v := range s.ParameterValues { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ParameterValues", i), err.(request.ErrInvalidParams)) } } } if s.PipelineObjects != nil { for i, v := range s.PipelineObjects { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PipelineObjects", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ValidatePipelineDefinition. type ValidatePipelineDefinitionOutput struct { _ struct{} `type:"structure"` // Indicates whether there were validation errors. // // Errored is a required field Errored *bool `locationName:"errored" type:"boolean" required:"true"` // Any validation errors that were found. ValidationErrors []*ValidationError `locationName:"validationErrors" type:"list"` // Any validation warnings that were found. ValidationWarnings []*ValidationWarning `locationName:"validationWarnings" type:"list"` } // String returns the string representation func (s ValidatePipelineDefinitionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ValidatePipelineDefinitionOutput) GoString() string { return s.String() } // Defines a validation error. Validation errors prevent pipeline activation. // The set of validation errors that can be returned are defined by AWS Data // Pipeline. type ValidationError struct { _ struct{} `type:"structure"` // A description of the validation error. Errors []*string `locationName:"errors" type:"list"` // The identifier of the object that contains the validation error. Id *string `locationName:"id" min:"1" type:"string"` } // String returns the string representation func (s ValidationError) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ValidationError) GoString() string { return s.String() } // Defines a validation warning. Validation warnings do not prevent pipeline // activation. The set of validation warnings that can be returned are defined // by AWS Data Pipeline. type ValidationWarning struct { _ struct{} `type:"structure"` // The identifier of the object that contains the validation warning. Id *string `locationName:"id" min:"1" type:"string"` // A description of the validation warning. Warnings []*string `locationName:"warnings" type:"list"` } // String returns the string representation func (s ValidationWarning) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ValidationWarning) GoString() string { return s.String() } const ( // OperatorTypeEq is a OperatorType enum value OperatorTypeEq = "EQ" // OperatorTypeRefEq is a OperatorType enum value OperatorTypeRefEq = "REF_EQ" // OperatorTypeLe is a OperatorType enum value OperatorTypeLe = "LE" // OperatorTypeGe is a OperatorType enum value OperatorTypeGe = "GE" // OperatorTypeBetween is a OperatorType enum value OperatorTypeBetween = "BETWEEN" ) const ( // TaskStatusFinished is a TaskStatus enum value TaskStatusFinished = "FINISHED" // TaskStatusFailed is a TaskStatus enum value TaskStatusFailed = "FAILED" // TaskStatusFalse is a TaskStatus enum value TaskStatusFalse = "FALSE" ) aws-sdk-go-1.4.22/service/datapipeline/datapipelineiface/000077500000000000000000000000001300374646400233115ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/datapipeline/datapipelineiface/interface.go000066400000000000000000000152161300374646400256050ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package datapipelineiface provides an interface to enable mocking the AWS Data Pipeline service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package datapipelineiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/datapipeline" ) // DataPipelineAPI provides an interface to enable mocking the // datapipeline.DataPipeline service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Data Pipeline. // func myFunc(svc datapipelineiface.DataPipelineAPI) bool { // // Make svc.ActivatePipeline request // } // // func main() { // sess := session.New() // svc := datapipeline.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockDataPipelineClient struct { // datapipelineiface.DataPipelineAPI // } // func (m *mockDataPipelineClient) ActivatePipeline(input *datapipeline.ActivatePipelineInput) (*datapipeline.ActivatePipelineOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockDataPipelineClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type DataPipelineAPI interface { ActivatePipelineRequest(*datapipeline.ActivatePipelineInput) (*request.Request, *datapipeline.ActivatePipelineOutput) ActivatePipeline(*datapipeline.ActivatePipelineInput) (*datapipeline.ActivatePipelineOutput, error) AddTagsRequest(*datapipeline.AddTagsInput) (*request.Request, *datapipeline.AddTagsOutput) AddTags(*datapipeline.AddTagsInput) (*datapipeline.AddTagsOutput, error) CreatePipelineRequest(*datapipeline.CreatePipelineInput) (*request.Request, *datapipeline.CreatePipelineOutput) CreatePipeline(*datapipeline.CreatePipelineInput) (*datapipeline.CreatePipelineOutput, error) DeactivatePipelineRequest(*datapipeline.DeactivatePipelineInput) (*request.Request, *datapipeline.DeactivatePipelineOutput) DeactivatePipeline(*datapipeline.DeactivatePipelineInput) (*datapipeline.DeactivatePipelineOutput, error) DeletePipelineRequest(*datapipeline.DeletePipelineInput) (*request.Request, *datapipeline.DeletePipelineOutput) DeletePipeline(*datapipeline.DeletePipelineInput) (*datapipeline.DeletePipelineOutput, error) DescribeObjectsRequest(*datapipeline.DescribeObjectsInput) (*request.Request, *datapipeline.DescribeObjectsOutput) DescribeObjects(*datapipeline.DescribeObjectsInput) (*datapipeline.DescribeObjectsOutput, error) DescribeObjectsPages(*datapipeline.DescribeObjectsInput, func(*datapipeline.DescribeObjectsOutput, bool) bool) error DescribePipelinesRequest(*datapipeline.DescribePipelinesInput) (*request.Request, *datapipeline.DescribePipelinesOutput) DescribePipelines(*datapipeline.DescribePipelinesInput) (*datapipeline.DescribePipelinesOutput, error) EvaluateExpressionRequest(*datapipeline.EvaluateExpressionInput) (*request.Request, *datapipeline.EvaluateExpressionOutput) EvaluateExpression(*datapipeline.EvaluateExpressionInput) (*datapipeline.EvaluateExpressionOutput, error) GetPipelineDefinitionRequest(*datapipeline.GetPipelineDefinitionInput) (*request.Request, *datapipeline.GetPipelineDefinitionOutput) GetPipelineDefinition(*datapipeline.GetPipelineDefinitionInput) (*datapipeline.GetPipelineDefinitionOutput, error) ListPipelinesRequest(*datapipeline.ListPipelinesInput) (*request.Request, *datapipeline.ListPipelinesOutput) ListPipelines(*datapipeline.ListPipelinesInput) (*datapipeline.ListPipelinesOutput, error) ListPipelinesPages(*datapipeline.ListPipelinesInput, func(*datapipeline.ListPipelinesOutput, bool) bool) error PollForTaskRequest(*datapipeline.PollForTaskInput) (*request.Request, *datapipeline.PollForTaskOutput) PollForTask(*datapipeline.PollForTaskInput) (*datapipeline.PollForTaskOutput, error) PutPipelineDefinitionRequest(*datapipeline.PutPipelineDefinitionInput) (*request.Request, *datapipeline.PutPipelineDefinitionOutput) PutPipelineDefinition(*datapipeline.PutPipelineDefinitionInput) (*datapipeline.PutPipelineDefinitionOutput, error) QueryObjectsRequest(*datapipeline.QueryObjectsInput) (*request.Request, *datapipeline.QueryObjectsOutput) QueryObjects(*datapipeline.QueryObjectsInput) (*datapipeline.QueryObjectsOutput, error) QueryObjectsPages(*datapipeline.QueryObjectsInput, func(*datapipeline.QueryObjectsOutput, bool) bool) error RemoveTagsRequest(*datapipeline.RemoveTagsInput) (*request.Request, *datapipeline.RemoveTagsOutput) RemoveTags(*datapipeline.RemoveTagsInput) (*datapipeline.RemoveTagsOutput, error) ReportTaskProgressRequest(*datapipeline.ReportTaskProgressInput) (*request.Request, *datapipeline.ReportTaskProgressOutput) ReportTaskProgress(*datapipeline.ReportTaskProgressInput) (*datapipeline.ReportTaskProgressOutput, error) ReportTaskRunnerHeartbeatRequest(*datapipeline.ReportTaskRunnerHeartbeatInput) (*request.Request, *datapipeline.ReportTaskRunnerHeartbeatOutput) ReportTaskRunnerHeartbeat(*datapipeline.ReportTaskRunnerHeartbeatInput) (*datapipeline.ReportTaskRunnerHeartbeatOutput, error) SetStatusRequest(*datapipeline.SetStatusInput) (*request.Request, *datapipeline.SetStatusOutput) SetStatus(*datapipeline.SetStatusInput) (*datapipeline.SetStatusOutput, error) SetTaskStatusRequest(*datapipeline.SetTaskStatusInput) (*request.Request, *datapipeline.SetTaskStatusOutput) SetTaskStatus(*datapipeline.SetTaskStatusInput) (*datapipeline.SetTaskStatusOutput, error) ValidatePipelineDefinitionRequest(*datapipeline.ValidatePipelineDefinitionInput) (*request.Request, *datapipeline.ValidatePipelineDefinitionOutput) ValidatePipelineDefinition(*datapipeline.ValidatePipelineDefinitionInput) (*datapipeline.ValidatePipelineDefinitionOutput, error) } var _ DataPipelineAPI = (*datapipeline.DataPipeline)(nil) aws-sdk-go-1.4.22/service/datapipeline/examples_test.go000066400000000000000000000355461300374646400231030ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package datapipeline_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/datapipeline" ) var _ time.Duration var _ bytes.Buffer func ExampleDataPipeline_ActivatePipeline() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.ActivatePipelineInput{ PipelineId: aws.String("id"), // Required ParameterValues: []*datapipeline.ParameterValue{ { // Required Id: aws.String("fieldNameString"), // Required StringValue: aws.String("fieldStringValue"), // Required }, // More values... }, StartTimestamp: aws.Time(time.Now()), } resp, err := svc.ActivatePipeline(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDataPipeline_AddTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.AddTagsInput{ PipelineId: aws.String("id"), // Required Tags: []*datapipeline.Tag{ // Required { // Required Key: aws.String("tagKey"), // Required Value: aws.String("tagValue"), // Required }, // More values... }, } resp, err := svc.AddTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDataPipeline_CreatePipeline() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.CreatePipelineInput{ Name: aws.String("id"), // Required UniqueId: aws.String("id"), // Required Description: aws.String("string"), Tags: []*datapipeline.Tag{ { // Required Key: aws.String("tagKey"), // Required Value: aws.String("tagValue"), // Required }, // More values... }, } resp, err := svc.CreatePipeline(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDataPipeline_DeactivatePipeline() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.DeactivatePipelineInput{ PipelineId: aws.String("id"), // Required CancelActive: aws.Bool(true), } resp, err := svc.DeactivatePipeline(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDataPipeline_DeletePipeline() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.DeletePipelineInput{ PipelineId: aws.String("id"), // Required } resp, err := svc.DeletePipeline(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDataPipeline_DescribeObjects() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.DescribeObjectsInput{ ObjectIds: []*string{ // Required aws.String("id"), // Required // More values... }, PipelineId: aws.String("id"), // Required EvaluateExpressions: aws.Bool(true), Marker: aws.String("string"), } resp, err := svc.DescribeObjects(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDataPipeline_DescribePipelines() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.DescribePipelinesInput{ PipelineIds: []*string{ // Required aws.String("id"), // Required // More values... }, } resp, err := svc.DescribePipelines(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDataPipeline_EvaluateExpression() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.EvaluateExpressionInput{ Expression: aws.String("longString"), // Required ObjectId: aws.String("id"), // Required PipelineId: aws.String("id"), // Required } resp, err := svc.EvaluateExpression(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDataPipeline_GetPipelineDefinition() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.GetPipelineDefinitionInput{ PipelineId: aws.String("id"), // Required Version: aws.String("string"), } resp, err := svc.GetPipelineDefinition(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDataPipeline_ListPipelines() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.ListPipelinesInput{ Marker: aws.String("string"), } resp, err := svc.ListPipelines(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDataPipeline_PollForTask() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.PollForTaskInput{ WorkerGroup: aws.String("string"), // Required Hostname: aws.String("id"), InstanceIdentity: &datapipeline.InstanceIdentity{ Document: aws.String("string"), Signature: aws.String("string"), }, } resp, err := svc.PollForTask(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDataPipeline_PutPipelineDefinition() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.PutPipelineDefinitionInput{ PipelineId: aws.String("id"), // Required PipelineObjects: []*datapipeline.PipelineObject{ // Required { // Required Fields: []*datapipeline.Field{ // Required { // Required Key: aws.String("fieldNameString"), // Required RefValue: aws.String("fieldNameString"), StringValue: aws.String("fieldStringValue"), }, // More values... }, Id: aws.String("id"), // Required Name: aws.String("id"), // Required }, // More values... }, ParameterObjects: []*datapipeline.ParameterObject{ { // Required Attributes: []*datapipeline.ParameterAttribute{ // Required { // Required Key: aws.String("attributeNameString"), // Required StringValue: aws.String("attributeValueString"), // Required }, // More values... }, Id: aws.String("fieldNameString"), // Required }, // More values... }, ParameterValues: []*datapipeline.ParameterValue{ { // Required Id: aws.String("fieldNameString"), // Required StringValue: aws.String("fieldStringValue"), // Required }, // More values... }, } resp, err := svc.PutPipelineDefinition(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDataPipeline_QueryObjects() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.QueryObjectsInput{ PipelineId: aws.String("id"), // Required Sphere: aws.String("string"), // Required Limit: aws.Int64(1), Marker: aws.String("string"), Query: &datapipeline.Query{ Selectors: []*datapipeline.Selector{ { // Required FieldName: aws.String("string"), Operator: &datapipeline.Operator{ Type: aws.String("OperatorType"), Values: []*string{ aws.String("string"), // Required // More values... }, }, }, // More values... }, }, } resp, err := svc.QueryObjects(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDataPipeline_RemoveTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.RemoveTagsInput{ PipelineId: aws.String("id"), // Required TagKeys: []*string{ // Required aws.String("string"), // Required // More values... }, } resp, err := svc.RemoveTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDataPipeline_ReportTaskProgress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.ReportTaskProgressInput{ TaskId: aws.String("taskId"), // Required Fields: []*datapipeline.Field{ { // Required Key: aws.String("fieldNameString"), // Required RefValue: aws.String("fieldNameString"), StringValue: aws.String("fieldStringValue"), }, // More values... }, } resp, err := svc.ReportTaskProgress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDataPipeline_ReportTaskRunnerHeartbeat() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.ReportTaskRunnerHeartbeatInput{ TaskrunnerId: aws.String("id"), // Required Hostname: aws.String("id"), WorkerGroup: aws.String("string"), } resp, err := svc.ReportTaskRunnerHeartbeat(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDataPipeline_SetStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.SetStatusInput{ ObjectIds: []*string{ // Required aws.String("id"), // Required // More values... }, PipelineId: aws.String("id"), // Required Status: aws.String("string"), // Required } resp, err := svc.SetStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDataPipeline_SetTaskStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.SetTaskStatusInput{ TaskId: aws.String("taskId"), // Required TaskStatus: aws.String("TaskStatus"), // Required ErrorId: aws.String("string"), ErrorMessage: aws.String("errorMessage"), ErrorStackTrace: aws.String("string"), } resp, err := svc.SetTaskStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDataPipeline_ValidatePipelineDefinition() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := datapipeline.New(sess) params := &datapipeline.ValidatePipelineDefinitionInput{ PipelineId: aws.String("id"), // Required PipelineObjects: []*datapipeline.PipelineObject{ // Required { // Required Fields: []*datapipeline.Field{ // Required { // Required Key: aws.String("fieldNameString"), // Required RefValue: aws.String("fieldNameString"), StringValue: aws.String("fieldStringValue"), }, // More values... }, Id: aws.String("id"), // Required Name: aws.String("id"), // Required }, // More values... }, ParameterObjects: []*datapipeline.ParameterObject{ { // Required Attributes: []*datapipeline.ParameterAttribute{ // Required { // Required Key: aws.String("attributeNameString"), // Required StringValue: aws.String("attributeValueString"), // Required }, // More values... }, Id: aws.String("fieldNameString"), // Required }, // More values... }, ParameterValues: []*datapipeline.ParameterValue{ { // Required Id: aws.String("fieldNameString"), // Required StringValue: aws.String("fieldStringValue"), // Required }, // More values... }, } resp, err := svc.ValidatePipelineDefinition(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/datapipeline/service.go000066400000000000000000000101571300374646400216550ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package datapipeline import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // AWS Data Pipeline configures and manages a data-driven workflow called a // pipeline. AWS Data Pipeline handles the details of scheduling and ensuring // that data dependencies are met so that your application can focus on processing // the data. // // AWS Data Pipeline provides a JAR implementation of a task runner called AWS // Data Pipeline Task Runner. AWS Data Pipeline Task Runner provides logic for // common data management scenarios, such as performing database queries and // running data analysis using Amazon Elastic MapReduce (Amazon EMR). You can // use AWS Data Pipeline Task Runner as your task runner, or you can write your // own task runner to provide custom data management. // // AWS Data Pipeline implements two main sets of functionality. Use the first // set to create a pipeline and define data sources, schedules, dependencies, // and the transforms to be performed on the data. Use the second set in your // task runner application to receive the next task ready for processing. The // logic for performing the task, such as querying the data, running data analysis, // or converting the data from one format to another, is contained within the // task runner. The task runner performs the task assigned to it by the web // service, reporting progress to the web service as it does so. When the task // is done, the task runner reports the final success or failure of the task // to the web service. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type DataPipeline struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "datapipeline" // New creates a new instance of the DataPipeline client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a DataPipeline client from just a session. // svc := datapipeline.New(mySession) // // // Create a DataPipeline client with additional configuration // svc := datapipeline.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *DataPipeline { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *DataPipeline { svc := &DataPipeline{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2012-10-29", JSONVersion: "1.1", TargetPrefix: "DataPipeline", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a DataPipeline operation and runs any // custom request initialization. func (c *DataPipeline) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/devicefarm/000077500000000000000000000000001300374646400173305ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/devicefarm/api.go000066400000000000000000007761231300374646400204500ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package devicefarm provides a client for AWS Device Farm. package devicefarm import ( "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opCreateDevicePool = "CreateDevicePool" // CreateDevicePoolRequest generates a "aws/request.Request" representing the // client's request for the CreateDevicePool operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDevicePool for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDevicePool method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDevicePoolRequest method. // req, resp := client.CreateDevicePoolRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) CreateDevicePoolRequest(input *CreateDevicePoolInput) (req *request.Request, output *CreateDevicePoolOutput) { op := &request.Operation{ Name: opCreateDevicePool, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDevicePoolInput{} } req = c.newRequest(op, input, output) output = &CreateDevicePoolOutput{} req.Data = output return } // CreateDevicePool API operation for AWS Device Farm. // // Creates a device pool. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation CreateDevicePool for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) CreateDevicePool(input *CreateDevicePoolInput) (*CreateDevicePoolOutput, error) { req, out := c.CreateDevicePoolRequest(input) err := req.Send() return out, err } const opCreateProject = "CreateProject" // CreateProjectRequest generates a "aws/request.Request" representing the // client's request for the CreateProject operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateProject for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateProject method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateProjectRequest method. // req, resp := client.CreateProjectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) CreateProjectRequest(input *CreateProjectInput) (req *request.Request, output *CreateProjectOutput) { op := &request.Operation{ Name: opCreateProject, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateProjectInput{} } req = c.newRequest(op, input, output) output = &CreateProjectOutput{} req.Data = output return } // CreateProject API operation for AWS Device Farm. // // Creates a new project. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation CreateProject for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) CreateProject(input *CreateProjectInput) (*CreateProjectOutput, error) { req, out := c.CreateProjectRequest(input) err := req.Send() return out, err } const opCreateRemoteAccessSession = "CreateRemoteAccessSession" // CreateRemoteAccessSessionRequest generates a "aws/request.Request" representing the // client's request for the CreateRemoteAccessSession operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateRemoteAccessSession for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateRemoteAccessSession method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateRemoteAccessSessionRequest method. // req, resp := client.CreateRemoteAccessSessionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) CreateRemoteAccessSessionRequest(input *CreateRemoteAccessSessionInput) (req *request.Request, output *CreateRemoteAccessSessionOutput) { op := &request.Operation{ Name: opCreateRemoteAccessSession, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateRemoteAccessSessionInput{} } req = c.newRequest(op, input, output) output = &CreateRemoteAccessSessionOutput{} req.Data = output return } // CreateRemoteAccessSession API operation for AWS Device Farm. // // Specifies and starts a remote access session. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation CreateRemoteAccessSession for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) CreateRemoteAccessSession(input *CreateRemoteAccessSessionInput) (*CreateRemoteAccessSessionOutput, error) { req, out := c.CreateRemoteAccessSessionRequest(input) err := req.Send() return out, err } const opCreateUpload = "CreateUpload" // CreateUploadRequest generates a "aws/request.Request" representing the // client's request for the CreateUpload operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateUpload for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateUpload method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateUploadRequest method. // req, resp := client.CreateUploadRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) CreateUploadRequest(input *CreateUploadInput) (req *request.Request, output *CreateUploadOutput) { op := &request.Operation{ Name: opCreateUpload, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateUploadInput{} } req = c.newRequest(op, input, output) output = &CreateUploadOutput{} req.Data = output return } // CreateUpload API operation for AWS Device Farm. // // Uploads an app or test scripts. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation CreateUpload for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) CreateUpload(input *CreateUploadInput) (*CreateUploadOutput, error) { req, out := c.CreateUploadRequest(input) err := req.Send() return out, err } const opDeleteDevicePool = "DeleteDevicePool" // DeleteDevicePoolRequest generates a "aws/request.Request" representing the // client's request for the DeleteDevicePool operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDevicePool for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDevicePool method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDevicePoolRequest method. // req, resp := client.DeleteDevicePoolRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) DeleteDevicePoolRequest(input *DeleteDevicePoolInput) (req *request.Request, output *DeleteDevicePoolOutput) { op := &request.Operation{ Name: opDeleteDevicePool, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDevicePoolInput{} } req = c.newRequest(op, input, output) output = &DeleteDevicePoolOutput{} req.Data = output return } // DeleteDevicePool API operation for AWS Device Farm. // // Deletes a device pool given the pool ARN. Does not allow deletion of curated // pools owned by the system. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation DeleteDevicePool for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) DeleteDevicePool(input *DeleteDevicePoolInput) (*DeleteDevicePoolOutput, error) { req, out := c.DeleteDevicePoolRequest(input) err := req.Send() return out, err } const opDeleteProject = "DeleteProject" // DeleteProjectRequest generates a "aws/request.Request" representing the // client's request for the DeleteProject operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteProject for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteProject method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteProjectRequest method. // req, resp := client.DeleteProjectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) DeleteProjectRequest(input *DeleteProjectInput) (req *request.Request, output *DeleteProjectOutput) { op := &request.Operation{ Name: opDeleteProject, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteProjectInput{} } req = c.newRequest(op, input, output) output = &DeleteProjectOutput{} req.Data = output return } // DeleteProject API operation for AWS Device Farm. // // Deletes an AWS Device Farm project, given the project ARN. // // Note Deleting this resource does not stop an in-progress run. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation DeleteProject for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) DeleteProject(input *DeleteProjectInput) (*DeleteProjectOutput, error) { req, out := c.DeleteProjectRequest(input) err := req.Send() return out, err } const opDeleteRemoteAccessSession = "DeleteRemoteAccessSession" // DeleteRemoteAccessSessionRequest generates a "aws/request.Request" representing the // client's request for the DeleteRemoteAccessSession operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteRemoteAccessSession for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteRemoteAccessSession method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteRemoteAccessSessionRequest method. // req, resp := client.DeleteRemoteAccessSessionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) DeleteRemoteAccessSessionRequest(input *DeleteRemoteAccessSessionInput) (req *request.Request, output *DeleteRemoteAccessSessionOutput) { op := &request.Operation{ Name: opDeleteRemoteAccessSession, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteRemoteAccessSessionInput{} } req = c.newRequest(op, input, output) output = &DeleteRemoteAccessSessionOutput{} req.Data = output return } // DeleteRemoteAccessSession API operation for AWS Device Farm. // // Deletes a completed remote access session and its results. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation DeleteRemoteAccessSession for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) DeleteRemoteAccessSession(input *DeleteRemoteAccessSessionInput) (*DeleteRemoteAccessSessionOutput, error) { req, out := c.DeleteRemoteAccessSessionRequest(input) err := req.Send() return out, err } const opDeleteRun = "DeleteRun" // DeleteRunRequest generates a "aws/request.Request" representing the // client's request for the DeleteRun operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteRun for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteRun method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteRunRequest method. // req, resp := client.DeleteRunRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) DeleteRunRequest(input *DeleteRunInput) (req *request.Request, output *DeleteRunOutput) { op := &request.Operation{ Name: opDeleteRun, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteRunInput{} } req = c.newRequest(op, input, output) output = &DeleteRunOutput{} req.Data = output return } // DeleteRun API operation for AWS Device Farm. // // Deletes the run, given the run ARN. // // Note Deleting this resource does not stop an in-progress run. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation DeleteRun for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) DeleteRun(input *DeleteRunInput) (*DeleteRunOutput, error) { req, out := c.DeleteRunRequest(input) err := req.Send() return out, err } const opDeleteUpload = "DeleteUpload" // DeleteUploadRequest generates a "aws/request.Request" representing the // client's request for the DeleteUpload operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteUpload for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteUpload method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteUploadRequest method. // req, resp := client.DeleteUploadRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) DeleteUploadRequest(input *DeleteUploadInput) (req *request.Request, output *DeleteUploadOutput) { op := &request.Operation{ Name: opDeleteUpload, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteUploadInput{} } req = c.newRequest(op, input, output) output = &DeleteUploadOutput{} req.Data = output return } // DeleteUpload API operation for AWS Device Farm. // // Deletes an upload given the upload ARN. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation DeleteUpload for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) DeleteUpload(input *DeleteUploadInput) (*DeleteUploadOutput, error) { req, out := c.DeleteUploadRequest(input) err := req.Send() return out, err } const opGetAccountSettings = "GetAccountSettings" // GetAccountSettingsRequest generates a "aws/request.Request" representing the // client's request for the GetAccountSettings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetAccountSettings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetAccountSettings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetAccountSettingsRequest method. // req, resp := client.GetAccountSettingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) GetAccountSettingsRequest(input *GetAccountSettingsInput) (req *request.Request, output *GetAccountSettingsOutput) { op := &request.Operation{ Name: opGetAccountSettings, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetAccountSettingsInput{} } req = c.newRequest(op, input, output) output = &GetAccountSettingsOutput{} req.Data = output return } // GetAccountSettings API operation for AWS Device Farm. // // Returns the number of unmetered iOS and/or unmetered Android devices that // have been purchased by the account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation GetAccountSettings for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) GetAccountSettings(input *GetAccountSettingsInput) (*GetAccountSettingsOutput, error) { req, out := c.GetAccountSettingsRequest(input) err := req.Send() return out, err } const opGetDevice = "GetDevice" // GetDeviceRequest generates a "aws/request.Request" representing the // client's request for the GetDevice operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDevice for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDevice method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDeviceRequest method. // req, resp := client.GetDeviceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) GetDeviceRequest(input *GetDeviceInput) (req *request.Request, output *GetDeviceOutput) { op := &request.Operation{ Name: opGetDevice, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetDeviceInput{} } req = c.newRequest(op, input, output) output = &GetDeviceOutput{} req.Data = output return } // GetDevice API operation for AWS Device Farm. // // Gets information about a unique device type. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation GetDevice for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) GetDevice(input *GetDeviceInput) (*GetDeviceOutput, error) { req, out := c.GetDeviceRequest(input) err := req.Send() return out, err } const opGetDevicePool = "GetDevicePool" // GetDevicePoolRequest generates a "aws/request.Request" representing the // client's request for the GetDevicePool operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDevicePool for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDevicePool method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDevicePoolRequest method. // req, resp := client.GetDevicePoolRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) GetDevicePoolRequest(input *GetDevicePoolInput) (req *request.Request, output *GetDevicePoolOutput) { op := &request.Operation{ Name: opGetDevicePool, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetDevicePoolInput{} } req = c.newRequest(op, input, output) output = &GetDevicePoolOutput{} req.Data = output return } // GetDevicePool API operation for AWS Device Farm. // // Gets information about a device pool. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation GetDevicePool for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) GetDevicePool(input *GetDevicePoolInput) (*GetDevicePoolOutput, error) { req, out := c.GetDevicePoolRequest(input) err := req.Send() return out, err } const opGetDevicePoolCompatibility = "GetDevicePoolCompatibility" // GetDevicePoolCompatibilityRequest generates a "aws/request.Request" representing the // client's request for the GetDevicePoolCompatibility operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDevicePoolCompatibility for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDevicePoolCompatibility method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDevicePoolCompatibilityRequest method. // req, resp := client.GetDevicePoolCompatibilityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) GetDevicePoolCompatibilityRequest(input *GetDevicePoolCompatibilityInput) (req *request.Request, output *GetDevicePoolCompatibilityOutput) { op := &request.Operation{ Name: opGetDevicePoolCompatibility, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetDevicePoolCompatibilityInput{} } req = c.newRequest(op, input, output) output = &GetDevicePoolCompatibilityOutput{} req.Data = output return } // GetDevicePoolCompatibility API operation for AWS Device Farm. // // Gets information about compatibility with a device pool. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation GetDevicePoolCompatibility for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) GetDevicePoolCompatibility(input *GetDevicePoolCompatibilityInput) (*GetDevicePoolCompatibilityOutput, error) { req, out := c.GetDevicePoolCompatibilityRequest(input) err := req.Send() return out, err } const opGetJob = "GetJob" // GetJobRequest generates a "aws/request.Request" representing the // client's request for the GetJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetJobRequest method. // req, resp := client.GetJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) GetJobRequest(input *GetJobInput) (req *request.Request, output *GetJobOutput) { op := &request.Operation{ Name: opGetJob, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetJobInput{} } req = c.newRequest(op, input, output) output = &GetJobOutput{} req.Data = output return } // GetJob API operation for AWS Device Farm. // // Gets information about a job. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation GetJob for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) GetJob(input *GetJobInput) (*GetJobOutput, error) { req, out := c.GetJobRequest(input) err := req.Send() return out, err } const opGetOfferingStatus = "GetOfferingStatus" // GetOfferingStatusRequest generates a "aws/request.Request" representing the // client's request for the GetOfferingStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetOfferingStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetOfferingStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetOfferingStatusRequest method. // req, resp := client.GetOfferingStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) GetOfferingStatusRequest(input *GetOfferingStatusInput) (req *request.Request, output *GetOfferingStatusOutput) { op := &request.Operation{ Name: opGetOfferingStatus, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &GetOfferingStatusInput{} } req = c.newRequest(op, input, output) output = &GetOfferingStatusOutput{} req.Data = output return } // GetOfferingStatus API operation for AWS Device Farm. // // Gets the current status and future status of all offerings purchased by an // AWS account. The response indicates how many offerings are currently available // and the offerings that will be available in the next period. The API returns // a NotEligible error if the user is not permitted to invoke the operation. // Please contact aws-devicefarm-support@amazon.com (mailto:aws-devicefarm-support@amazon.com) // if you believe that you should be able to invoke this operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation GetOfferingStatus for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * NotEligibleException // Exception gets thrown when a user is not eligible to perform the specified // transaction. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) GetOfferingStatus(input *GetOfferingStatusInput) (*GetOfferingStatusOutput, error) { req, out := c.GetOfferingStatusRequest(input) err := req.Send() return out, err } // GetOfferingStatusPages iterates over the pages of a GetOfferingStatus operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetOfferingStatus method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetOfferingStatus operation. // pageNum := 0 // err := client.GetOfferingStatusPages(params, // func(page *GetOfferingStatusOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DeviceFarm) GetOfferingStatusPages(input *GetOfferingStatusInput, fn func(p *GetOfferingStatusOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetOfferingStatusRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetOfferingStatusOutput), lastPage) }) } const opGetProject = "GetProject" // GetProjectRequest generates a "aws/request.Request" representing the // client's request for the GetProject operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetProject for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetProject method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetProjectRequest method. // req, resp := client.GetProjectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) GetProjectRequest(input *GetProjectInput) (req *request.Request, output *GetProjectOutput) { op := &request.Operation{ Name: opGetProject, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetProjectInput{} } req = c.newRequest(op, input, output) output = &GetProjectOutput{} req.Data = output return } // GetProject API operation for AWS Device Farm. // // Gets information about a project. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation GetProject for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) GetProject(input *GetProjectInput) (*GetProjectOutput, error) { req, out := c.GetProjectRequest(input) err := req.Send() return out, err } const opGetRemoteAccessSession = "GetRemoteAccessSession" // GetRemoteAccessSessionRequest generates a "aws/request.Request" representing the // client's request for the GetRemoteAccessSession operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetRemoteAccessSession for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetRemoteAccessSession method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetRemoteAccessSessionRequest method. // req, resp := client.GetRemoteAccessSessionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) GetRemoteAccessSessionRequest(input *GetRemoteAccessSessionInput) (req *request.Request, output *GetRemoteAccessSessionOutput) { op := &request.Operation{ Name: opGetRemoteAccessSession, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetRemoteAccessSessionInput{} } req = c.newRequest(op, input, output) output = &GetRemoteAccessSessionOutput{} req.Data = output return } // GetRemoteAccessSession API operation for AWS Device Farm. // // Returns a link to a currently running remote access session. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation GetRemoteAccessSession for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) GetRemoteAccessSession(input *GetRemoteAccessSessionInput) (*GetRemoteAccessSessionOutput, error) { req, out := c.GetRemoteAccessSessionRequest(input) err := req.Send() return out, err } const opGetRun = "GetRun" // GetRunRequest generates a "aws/request.Request" representing the // client's request for the GetRun operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetRun for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetRun method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetRunRequest method. // req, resp := client.GetRunRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) GetRunRequest(input *GetRunInput) (req *request.Request, output *GetRunOutput) { op := &request.Operation{ Name: opGetRun, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetRunInput{} } req = c.newRequest(op, input, output) output = &GetRunOutput{} req.Data = output return } // GetRun API operation for AWS Device Farm. // // Gets information about a run. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation GetRun for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) GetRun(input *GetRunInput) (*GetRunOutput, error) { req, out := c.GetRunRequest(input) err := req.Send() return out, err } const opGetSuite = "GetSuite" // GetSuiteRequest generates a "aws/request.Request" representing the // client's request for the GetSuite operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetSuite for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetSuite method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetSuiteRequest method. // req, resp := client.GetSuiteRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) GetSuiteRequest(input *GetSuiteInput) (req *request.Request, output *GetSuiteOutput) { op := &request.Operation{ Name: opGetSuite, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetSuiteInput{} } req = c.newRequest(op, input, output) output = &GetSuiteOutput{} req.Data = output return } // GetSuite API operation for AWS Device Farm. // // Gets information about a suite. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation GetSuite for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) GetSuite(input *GetSuiteInput) (*GetSuiteOutput, error) { req, out := c.GetSuiteRequest(input) err := req.Send() return out, err } const opGetTest = "GetTest" // GetTestRequest generates a "aws/request.Request" representing the // client's request for the GetTest operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetTest for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetTest method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetTestRequest method. // req, resp := client.GetTestRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) GetTestRequest(input *GetTestInput) (req *request.Request, output *GetTestOutput) { op := &request.Operation{ Name: opGetTest, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetTestInput{} } req = c.newRequest(op, input, output) output = &GetTestOutput{} req.Data = output return } // GetTest API operation for AWS Device Farm. // // Gets information about a test. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation GetTest for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) GetTest(input *GetTestInput) (*GetTestOutput, error) { req, out := c.GetTestRequest(input) err := req.Send() return out, err } const opGetUpload = "GetUpload" // GetUploadRequest generates a "aws/request.Request" representing the // client's request for the GetUpload operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetUpload for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetUpload method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetUploadRequest method. // req, resp := client.GetUploadRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) GetUploadRequest(input *GetUploadInput) (req *request.Request, output *GetUploadOutput) { op := &request.Operation{ Name: opGetUpload, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetUploadInput{} } req = c.newRequest(op, input, output) output = &GetUploadOutput{} req.Data = output return } // GetUpload API operation for AWS Device Farm. // // Gets information about an upload. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation GetUpload for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) GetUpload(input *GetUploadInput) (*GetUploadOutput, error) { req, out := c.GetUploadRequest(input) err := req.Send() return out, err } const opInstallToRemoteAccessSession = "InstallToRemoteAccessSession" // InstallToRemoteAccessSessionRequest generates a "aws/request.Request" representing the // client's request for the InstallToRemoteAccessSession operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InstallToRemoteAccessSession for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InstallToRemoteAccessSession method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InstallToRemoteAccessSessionRequest method. // req, resp := client.InstallToRemoteAccessSessionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) InstallToRemoteAccessSessionRequest(input *InstallToRemoteAccessSessionInput) (req *request.Request, output *InstallToRemoteAccessSessionOutput) { op := &request.Operation{ Name: opInstallToRemoteAccessSession, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InstallToRemoteAccessSessionInput{} } req = c.newRequest(op, input, output) output = &InstallToRemoteAccessSessionOutput{} req.Data = output return } // InstallToRemoteAccessSession API operation for AWS Device Farm. // // Installs an application to the device in a remote access session. For Android // applications, the file must be in .apk format. For iOS applications, the // file must be in .ipa format. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation InstallToRemoteAccessSession for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) InstallToRemoteAccessSession(input *InstallToRemoteAccessSessionInput) (*InstallToRemoteAccessSessionOutput, error) { req, out := c.InstallToRemoteAccessSessionRequest(input) err := req.Send() return out, err } const opListArtifacts = "ListArtifacts" // ListArtifactsRequest generates a "aws/request.Request" representing the // client's request for the ListArtifacts operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListArtifacts for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListArtifacts method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListArtifactsRequest method. // req, resp := client.ListArtifactsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) ListArtifactsRequest(input *ListArtifactsInput) (req *request.Request, output *ListArtifactsOutput) { op := &request.Operation{ Name: opListArtifacts, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListArtifactsInput{} } req = c.newRequest(op, input, output) output = &ListArtifactsOutput{} req.Data = output return } // ListArtifacts API operation for AWS Device Farm. // // Gets information about artifacts. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation ListArtifacts for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) ListArtifacts(input *ListArtifactsInput) (*ListArtifactsOutput, error) { req, out := c.ListArtifactsRequest(input) err := req.Send() return out, err } // ListArtifactsPages iterates over the pages of a ListArtifacts operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListArtifacts method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListArtifacts operation. // pageNum := 0 // err := client.ListArtifactsPages(params, // func(page *ListArtifactsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DeviceFarm) ListArtifactsPages(input *ListArtifactsInput, fn func(p *ListArtifactsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListArtifactsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListArtifactsOutput), lastPage) }) } const opListDevicePools = "ListDevicePools" // ListDevicePoolsRequest generates a "aws/request.Request" representing the // client's request for the ListDevicePools operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDevicePools for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDevicePools method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDevicePoolsRequest method. // req, resp := client.ListDevicePoolsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) ListDevicePoolsRequest(input *ListDevicePoolsInput) (req *request.Request, output *ListDevicePoolsOutput) { op := &request.Operation{ Name: opListDevicePools, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListDevicePoolsInput{} } req = c.newRequest(op, input, output) output = &ListDevicePoolsOutput{} req.Data = output return } // ListDevicePools API operation for AWS Device Farm. // // Gets information about device pools. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation ListDevicePools for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) ListDevicePools(input *ListDevicePoolsInput) (*ListDevicePoolsOutput, error) { req, out := c.ListDevicePoolsRequest(input) err := req.Send() return out, err } // ListDevicePoolsPages iterates over the pages of a ListDevicePools operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListDevicePools method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListDevicePools operation. // pageNum := 0 // err := client.ListDevicePoolsPages(params, // func(page *ListDevicePoolsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DeviceFarm) ListDevicePoolsPages(input *ListDevicePoolsInput, fn func(p *ListDevicePoolsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListDevicePoolsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListDevicePoolsOutput), lastPage) }) } const opListDevices = "ListDevices" // ListDevicesRequest generates a "aws/request.Request" representing the // client's request for the ListDevices operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDevices for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDevices method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDevicesRequest method. // req, resp := client.ListDevicesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) ListDevicesRequest(input *ListDevicesInput) (req *request.Request, output *ListDevicesOutput) { op := &request.Operation{ Name: opListDevices, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListDevicesInput{} } req = c.newRequest(op, input, output) output = &ListDevicesOutput{} req.Data = output return } // ListDevices API operation for AWS Device Farm. // // Gets information about unique device types. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation ListDevices for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) ListDevices(input *ListDevicesInput) (*ListDevicesOutput, error) { req, out := c.ListDevicesRequest(input) err := req.Send() return out, err } // ListDevicesPages iterates over the pages of a ListDevices operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListDevices method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListDevices operation. // pageNum := 0 // err := client.ListDevicesPages(params, // func(page *ListDevicesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DeviceFarm) ListDevicesPages(input *ListDevicesInput, fn func(p *ListDevicesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListDevicesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListDevicesOutput), lastPage) }) } const opListJobs = "ListJobs" // ListJobsRequest generates a "aws/request.Request" representing the // client's request for the ListJobs operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListJobs for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListJobs method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListJobsRequest method. // req, resp := client.ListJobsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) ListJobsRequest(input *ListJobsInput) (req *request.Request, output *ListJobsOutput) { op := &request.Operation{ Name: opListJobs, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListJobsInput{} } req = c.newRequest(op, input, output) output = &ListJobsOutput{} req.Data = output return } // ListJobs API operation for AWS Device Farm. // // Gets information about jobs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation ListJobs for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) ListJobs(input *ListJobsInput) (*ListJobsOutput, error) { req, out := c.ListJobsRequest(input) err := req.Send() return out, err } // ListJobsPages iterates over the pages of a ListJobs operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListJobs method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListJobs operation. // pageNum := 0 // err := client.ListJobsPages(params, // func(page *ListJobsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DeviceFarm) ListJobsPages(input *ListJobsInput, fn func(p *ListJobsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListJobsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListJobsOutput), lastPage) }) } const opListOfferingTransactions = "ListOfferingTransactions" // ListOfferingTransactionsRequest generates a "aws/request.Request" representing the // client's request for the ListOfferingTransactions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListOfferingTransactions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListOfferingTransactions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListOfferingTransactionsRequest method. // req, resp := client.ListOfferingTransactionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) ListOfferingTransactionsRequest(input *ListOfferingTransactionsInput) (req *request.Request, output *ListOfferingTransactionsOutput) { op := &request.Operation{ Name: opListOfferingTransactions, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListOfferingTransactionsInput{} } req = c.newRequest(op, input, output) output = &ListOfferingTransactionsOutput{} req.Data = output return } // ListOfferingTransactions API operation for AWS Device Farm. // // Returns a list of all historical purchases, renewals, and system renewal // transactions for an AWS account. The list is paginated and ordered by a descending // timestamp (most recent transactions are first). The API returns a NotEligible // error if the user is not permitted to invoke the operation. Please contact // aws-devicefarm-support@amazon.com (mailto:aws-devicefarm-support@amazon.com) // if you believe that you should be able to invoke this operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation ListOfferingTransactions for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * NotEligibleException // Exception gets thrown when a user is not eligible to perform the specified // transaction. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) ListOfferingTransactions(input *ListOfferingTransactionsInput) (*ListOfferingTransactionsOutput, error) { req, out := c.ListOfferingTransactionsRequest(input) err := req.Send() return out, err } // ListOfferingTransactionsPages iterates over the pages of a ListOfferingTransactions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListOfferingTransactions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListOfferingTransactions operation. // pageNum := 0 // err := client.ListOfferingTransactionsPages(params, // func(page *ListOfferingTransactionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DeviceFarm) ListOfferingTransactionsPages(input *ListOfferingTransactionsInput, fn func(p *ListOfferingTransactionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListOfferingTransactionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListOfferingTransactionsOutput), lastPage) }) } const opListOfferings = "ListOfferings" // ListOfferingsRequest generates a "aws/request.Request" representing the // client's request for the ListOfferings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListOfferings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListOfferings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListOfferingsRequest method. // req, resp := client.ListOfferingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) ListOfferingsRequest(input *ListOfferingsInput) (req *request.Request, output *ListOfferingsOutput) { op := &request.Operation{ Name: opListOfferings, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListOfferingsInput{} } req = c.newRequest(op, input, output) output = &ListOfferingsOutput{} req.Data = output return } // ListOfferings API operation for AWS Device Farm. // // Returns a list of products or offerings that the user can manage through // the API. Each offering record indicates the recurring price per unit and // the frequency for that offering. The API returns a NotEligible error if the // user is not permitted to invoke the operation. Please contact aws-devicefarm-support@amazon.com // (mailto:aws-devicefarm-support@amazon.com) if you believe that you should // be able to invoke this operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation ListOfferings for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * NotEligibleException // Exception gets thrown when a user is not eligible to perform the specified // transaction. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) ListOfferings(input *ListOfferingsInput) (*ListOfferingsOutput, error) { req, out := c.ListOfferingsRequest(input) err := req.Send() return out, err } // ListOfferingsPages iterates over the pages of a ListOfferings operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListOfferings method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListOfferings operation. // pageNum := 0 // err := client.ListOfferingsPages(params, // func(page *ListOfferingsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DeviceFarm) ListOfferingsPages(input *ListOfferingsInput, fn func(p *ListOfferingsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListOfferingsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListOfferingsOutput), lastPage) }) } const opListProjects = "ListProjects" // ListProjectsRequest generates a "aws/request.Request" representing the // client's request for the ListProjects operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListProjects for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListProjects method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListProjectsRequest method. // req, resp := client.ListProjectsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) ListProjectsRequest(input *ListProjectsInput) (req *request.Request, output *ListProjectsOutput) { op := &request.Operation{ Name: opListProjects, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListProjectsInput{} } req = c.newRequest(op, input, output) output = &ListProjectsOutput{} req.Data = output return } // ListProjects API operation for AWS Device Farm. // // Gets information about projects. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation ListProjects for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) ListProjects(input *ListProjectsInput) (*ListProjectsOutput, error) { req, out := c.ListProjectsRequest(input) err := req.Send() return out, err } // ListProjectsPages iterates over the pages of a ListProjects operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListProjects method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListProjects operation. // pageNum := 0 // err := client.ListProjectsPages(params, // func(page *ListProjectsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DeviceFarm) ListProjectsPages(input *ListProjectsInput, fn func(p *ListProjectsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListProjectsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListProjectsOutput), lastPage) }) } const opListRemoteAccessSessions = "ListRemoteAccessSessions" // ListRemoteAccessSessionsRequest generates a "aws/request.Request" representing the // client's request for the ListRemoteAccessSessions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListRemoteAccessSessions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListRemoteAccessSessions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListRemoteAccessSessionsRequest method. // req, resp := client.ListRemoteAccessSessionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) ListRemoteAccessSessionsRequest(input *ListRemoteAccessSessionsInput) (req *request.Request, output *ListRemoteAccessSessionsOutput) { op := &request.Operation{ Name: opListRemoteAccessSessions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListRemoteAccessSessionsInput{} } req = c.newRequest(op, input, output) output = &ListRemoteAccessSessionsOutput{} req.Data = output return } // ListRemoteAccessSessions API operation for AWS Device Farm. // // Returns a list of all currently running remote access sessions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation ListRemoteAccessSessions for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) ListRemoteAccessSessions(input *ListRemoteAccessSessionsInput) (*ListRemoteAccessSessionsOutput, error) { req, out := c.ListRemoteAccessSessionsRequest(input) err := req.Send() return out, err } const opListRuns = "ListRuns" // ListRunsRequest generates a "aws/request.Request" representing the // client's request for the ListRuns operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListRuns for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListRuns method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListRunsRequest method. // req, resp := client.ListRunsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) ListRunsRequest(input *ListRunsInput) (req *request.Request, output *ListRunsOutput) { op := &request.Operation{ Name: opListRuns, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListRunsInput{} } req = c.newRequest(op, input, output) output = &ListRunsOutput{} req.Data = output return } // ListRuns API operation for AWS Device Farm. // // Gets information about runs, given an AWS Device Farm project ARN. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation ListRuns for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) ListRuns(input *ListRunsInput) (*ListRunsOutput, error) { req, out := c.ListRunsRequest(input) err := req.Send() return out, err } // ListRunsPages iterates over the pages of a ListRuns operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListRuns method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListRuns operation. // pageNum := 0 // err := client.ListRunsPages(params, // func(page *ListRunsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DeviceFarm) ListRunsPages(input *ListRunsInput, fn func(p *ListRunsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListRunsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListRunsOutput), lastPage) }) } const opListSamples = "ListSamples" // ListSamplesRequest generates a "aws/request.Request" representing the // client's request for the ListSamples operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListSamples for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListSamples method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListSamplesRequest method. // req, resp := client.ListSamplesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) ListSamplesRequest(input *ListSamplesInput) (req *request.Request, output *ListSamplesOutput) { op := &request.Operation{ Name: opListSamples, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListSamplesInput{} } req = c.newRequest(op, input, output) output = &ListSamplesOutput{} req.Data = output return } // ListSamples API operation for AWS Device Farm. // // Gets information about samples, given an AWS Device Farm project ARN // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation ListSamples for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) ListSamples(input *ListSamplesInput) (*ListSamplesOutput, error) { req, out := c.ListSamplesRequest(input) err := req.Send() return out, err } // ListSamplesPages iterates over the pages of a ListSamples operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListSamples method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListSamples operation. // pageNum := 0 // err := client.ListSamplesPages(params, // func(page *ListSamplesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DeviceFarm) ListSamplesPages(input *ListSamplesInput, fn func(p *ListSamplesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListSamplesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListSamplesOutput), lastPage) }) } const opListSuites = "ListSuites" // ListSuitesRequest generates a "aws/request.Request" representing the // client's request for the ListSuites operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListSuites for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListSuites method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListSuitesRequest method. // req, resp := client.ListSuitesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) ListSuitesRequest(input *ListSuitesInput) (req *request.Request, output *ListSuitesOutput) { op := &request.Operation{ Name: opListSuites, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListSuitesInput{} } req = c.newRequest(op, input, output) output = &ListSuitesOutput{} req.Data = output return } // ListSuites API operation for AWS Device Farm. // // Gets information about suites. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation ListSuites for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) ListSuites(input *ListSuitesInput) (*ListSuitesOutput, error) { req, out := c.ListSuitesRequest(input) err := req.Send() return out, err } // ListSuitesPages iterates over the pages of a ListSuites operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListSuites method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListSuites operation. // pageNum := 0 // err := client.ListSuitesPages(params, // func(page *ListSuitesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DeviceFarm) ListSuitesPages(input *ListSuitesInput, fn func(p *ListSuitesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListSuitesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListSuitesOutput), lastPage) }) } const opListTests = "ListTests" // ListTestsRequest generates a "aws/request.Request" representing the // client's request for the ListTests operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTests for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTests method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTestsRequest method. // req, resp := client.ListTestsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) ListTestsRequest(input *ListTestsInput) (req *request.Request, output *ListTestsOutput) { op := &request.Operation{ Name: opListTests, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListTestsInput{} } req = c.newRequest(op, input, output) output = &ListTestsOutput{} req.Data = output return } // ListTests API operation for AWS Device Farm. // // Gets information about tests. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation ListTests for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) ListTests(input *ListTestsInput) (*ListTestsOutput, error) { req, out := c.ListTestsRequest(input) err := req.Send() return out, err } // ListTestsPages iterates over the pages of a ListTests operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListTests method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListTests operation. // pageNum := 0 // err := client.ListTestsPages(params, // func(page *ListTestsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DeviceFarm) ListTestsPages(input *ListTestsInput, fn func(p *ListTestsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListTestsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListTestsOutput), lastPage) }) } const opListUniqueProblems = "ListUniqueProblems" // ListUniqueProblemsRequest generates a "aws/request.Request" representing the // client's request for the ListUniqueProblems operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListUniqueProblems for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListUniqueProblems method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListUniqueProblemsRequest method. // req, resp := client.ListUniqueProblemsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) ListUniqueProblemsRequest(input *ListUniqueProblemsInput) (req *request.Request, output *ListUniqueProblemsOutput) { op := &request.Operation{ Name: opListUniqueProblems, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListUniqueProblemsInput{} } req = c.newRequest(op, input, output) output = &ListUniqueProblemsOutput{} req.Data = output return } // ListUniqueProblems API operation for AWS Device Farm. // // Gets information about unique problems. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation ListUniqueProblems for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) ListUniqueProblems(input *ListUniqueProblemsInput) (*ListUniqueProblemsOutput, error) { req, out := c.ListUniqueProblemsRequest(input) err := req.Send() return out, err } // ListUniqueProblemsPages iterates over the pages of a ListUniqueProblems operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListUniqueProblems method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListUniqueProblems operation. // pageNum := 0 // err := client.ListUniqueProblemsPages(params, // func(page *ListUniqueProblemsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DeviceFarm) ListUniqueProblemsPages(input *ListUniqueProblemsInput, fn func(p *ListUniqueProblemsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListUniqueProblemsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListUniqueProblemsOutput), lastPage) }) } const opListUploads = "ListUploads" // ListUploadsRequest generates a "aws/request.Request" representing the // client's request for the ListUploads operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListUploads for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListUploads method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListUploadsRequest method. // req, resp := client.ListUploadsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) ListUploadsRequest(input *ListUploadsInput) (req *request.Request, output *ListUploadsOutput) { op := &request.Operation{ Name: opListUploads, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListUploadsInput{} } req = c.newRequest(op, input, output) output = &ListUploadsOutput{} req.Data = output return } // ListUploads API operation for AWS Device Farm. // // Gets information about uploads, given an AWS Device Farm project ARN. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation ListUploads for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) ListUploads(input *ListUploadsInput) (*ListUploadsOutput, error) { req, out := c.ListUploadsRequest(input) err := req.Send() return out, err } // ListUploadsPages iterates over the pages of a ListUploads operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListUploads method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListUploads operation. // pageNum := 0 // err := client.ListUploadsPages(params, // func(page *ListUploadsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DeviceFarm) ListUploadsPages(input *ListUploadsInput, fn func(p *ListUploadsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListUploadsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListUploadsOutput), lastPage) }) } const opPurchaseOffering = "PurchaseOffering" // PurchaseOfferingRequest generates a "aws/request.Request" representing the // client's request for the PurchaseOffering operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PurchaseOffering for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PurchaseOffering method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PurchaseOfferingRequest method. // req, resp := client.PurchaseOfferingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) PurchaseOfferingRequest(input *PurchaseOfferingInput) (req *request.Request, output *PurchaseOfferingOutput) { op := &request.Operation{ Name: opPurchaseOffering, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PurchaseOfferingInput{} } req = c.newRequest(op, input, output) output = &PurchaseOfferingOutput{} req.Data = output return } // PurchaseOffering API operation for AWS Device Farm. // // Immediately purchases offerings for an AWS account. Offerings renew with // the latest total purchased quantity for an offering, unless the renewal was // overridden. The API returns a NotEligible error if the user is not permitted // to invoke the operation. Please contact aws-devicefarm-support@amazon.com // (mailto:aws-devicefarm-support@amazon.com) if you believe that you should // be able to invoke this operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation PurchaseOffering for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * NotEligibleException // Exception gets thrown when a user is not eligible to perform the specified // transaction. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) PurchaseOffering(input *PurchaseOfferingInput) (*PurchaseOfferingOutput, error) { req, out := c.PurchaseOfferingRequest(input) err := req.Send() return out, err } const opRenewOffering = "RenewOffering" // RenewOfferingRequest generates a "aws/request.Request" representing the // client's request for the RenewOffering operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RenewOffering for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RenewOffering method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RenewOfferingRequest method. // req, resp := client.RenewOfferingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) RenewOfferingRequest(input *RenewOfferingInput) (req *request.Request, output *RenewOfferingOutput) { op := &request.Operation{ Name: opRenewOffering, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RenewOfferingInput{} } req = c.newRequest(op, input, output) output = &RenewOfferingOutput{} req.Data = output return } // RenewOffering API operation for AWS Device Farm. // // Explicitly sets the quantity of devices to renew for an offering, starting // from the effectiveDate of the next period. The API returns a NotEligible // error if the user is not permitted to invoke the operation. Please contact // aws-devicefarm-support@amazon.com (mailto:aws-devicefarm-support@amazon.com) // if you believe that you should be able to invoke this operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation RenewOffering for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * NotEligibleException // Exception gets thrown when a user is not eligible to perform the specified // transaction. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) RenewOffering(input *RenewOfferingInput) (*RenewOfferingOutput, error) { req, out := c.RenewOfferingRequest(input) err := req.Send() return out, err } const opScheduleRun = "ScheduleRun" // ScheduleRunRequest generates a "aws/request.Request" representing the // client's request for the ScheduleRun operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ScheduleRun for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ScheduleRun method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ScheduleRunRequest method. // req, resp := client.ScheduleRunRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) ScheduleRunRequest(input *ScheduleRunInput) (req *request.Request, output *ScheduleRunOutput) { op := &request.Operation{ Name: opScheduleRun, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ScheduleRunInput{} } req = c.newRequest(op, input, output) output = &ScheduleRunOutput{} req.Data = output return } // ScheduleRun API operation for AWS Device Farm. // // Schedules a run. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation ScheduleRun for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * IdempotencyException // An entity with the same name already exists. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) ScheduleRun(input *ScheduleRunInput) (*ScheduleRunOutput, error) { req, out := c.ScheduleRunRequest(input) err := req.Send() return out, err } const opStopRemoteAccessSession = "StopRemoteAccessSession" // StopRemoteAccessSessionRequest generates a "aws/request.Request" representing the // client's request for the StopRemoteAccessSession operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StopRemoteAccessSession for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StopRemoteAccessSession method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StopRemoteAccessSessionRequest method. // req, resp := client.StopRemoteAccessSessionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) StopRemoteAccessSessionRequest(input *StopRemoteAccessSessionInput) (req *request.Request, output *StopRemoteAccessSessionOutput) { op := &request.Operation{ Name: opStopRemoteAccessSession, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StopRemoteAccessSessionInput{} } req = c.newRequest(op, input, output) output = &StopRemoteAccessSessionOutput{} req.Data = output return } // StopRemoteAccessSession API operation for AWS Device Farm. // // Ends a specified remote access session. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation StopRemoteAccessSession for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) StopRemoteAccessSession(input *StopRemoteAccessSessionInput) (*StopRemoteAccessSessionOutput, error) { req, out := c.StopRemoteAccessSessionRequest(input) err := req.Send() return out, err } const opStopRun = "StopRun" // StopRunRequest generates a "aws/request.Request" representing the // client's request for the StopRun operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StopRun for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StopRun method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StopRunRequest method. // req, resp := client.StopRunRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) StopRunRequest(input *StopRunInput) (req *request.Request, output *StopRunOutput) { op := &request.Operation{ Name: opStopRun, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StopRunInput{} } req = c.newRequest(op, input, output) output = &StopRunOutput{} req.Data = output return } // StopRun API operation for AWS Device Farm. // // Initiates a stop request for the current test run. AWS Device Farm will immediately // stop the run on devices where tests have not started executing, and you will // not be billed for these devices. On devices where tests have started executing, // Setup Suite and Teardown Suite tests will run to completion before stopping // execution on those devices. You will be billed for Setup, Teardown, and any // tests that were in progress or already completed. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation StopRun for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) StopRun(input *StopRunInput) (*StopRunOutput, error) { req, out := c.StopRunRequest(input) err := req.Send() return out, err } const opUpdateDevicePool = "UpdateDevicePool" // UpdateDevicePoolRequest generates a "aws/request.Request" representing the // client's request for the UpdateDevicePool operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateDevicePool for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateDevicePool method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateDevicePoolRequest method. // req, resp := client.UpdateDevicePoolRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) UpdateDevicePoolRequest(input *UpdateDevicePoolInput) (req *request.Request, output *UpdateDevicePoolOutput) { op := &request.Operation{ Name: opUpdateDevicePool, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateDevicePoolInput{} } req = c.newRequest(op, input, output) output = &UpdateDevicePoolOutput{} req.Data = output return } // UpdateDevicePool API operation for AWS Device Farm. // // Modifies the name, description, and rules in a device pool given the attributes // and the pool ARN. Rule updates are all-or-nothing, meaning they can only // be updated as a whole (or not at all). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation UpdateDevicePool for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) UpdateDevicePool(input *UpdateDevicePoolInput) (*UpdateDevicePoolOutput, error) { req, out := c.UpdateDevicePoolRequest(input) err := req.Send() return out, err } const opUpdateProject = "UpdateProject" // UpdateProjectRequest generates a "aws/request.Request" representing the // client's request for the UpdateProject operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateProject for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateProject method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateProjectRequest method. // req, resp := client.UpdateProjectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DeviceFarm) UpdateProjectRequest(input *UpdateProjectInput) (req *request.Request, output *UpdateProjectOutput) { op := &request.Operation{ Name: opUpdateProject, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateProjectInput{} } req = c.newRequest(op, input, output) output = &UpdateProjectOutput{} req.Data = output return } // UpdateProject API operation for AWS Device Farm. // // Modifies the specified project name, given the project ARN and a new name. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Device Farm's // API operation UpdateProject for usage and error information. // // Returned Error Codes: // * ArgumentException // An invalid argument was specified. // // * NotFoundException // The specified entity was not found. // // * LimitExceededException // A limit was exceeded. // // * ServiceAccountException // There was a problem with the service account. // func (c *DeviceFarm) UpdateProject(input *UpdateProjectInput) (*UpdateProjectOutput, error) { req, out := c.UpdateProjectRequest(input) err := req.Send() return out, err } // A container for account-level settings within AWS Device Farm. type AccountSettings struct { _ struct{} `type:"structure"` // The AWS account number specified in the AccountSettings container. AwsAccountNumber *string `locationName:"awsAccountNumber" min:"2" type:"string"` // Returns the unmetered devices you have purchased or want to purchase. UnmeteredDevices map[string]*int64 `locationName:"unmeteredDevices" type:"map"` // Returns the unmetered remote access devices you have purchased or want to // purchase. UnmeteredRemoteAccessDevices map[string]*int64 `locationName:"unmeteredRemoteAccessDevices" type:"map"` } // String returns the string representation func (s AccountSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AccountSettings) GoString() string { return s.String() } // Represents the output of a test. Examples of artifacts include logs and screenshots. type Artifact struct { _ struct{} `type:"structure"` // The artifact's ARN. Arn *string `locationName:"arn" min:"32" type:"string"` // The artifact's file extension. Extension *string `locationName:"extension" type:"string"` // The artifact's name. Name *string `locationName:"name" type:"string"` // The artifact's type. // // Allowed values include the following: // // * UNKNOWN: An unknown type. // // * SCREENSHOT: The screenshot type. // // * DEVICE_LOG: The device log type. // // * MESSAGE_LOG: The message log type. // // * RESULT_LOG: The result log type. // // * SERVICE_LOG: The service log type. // // * WEBKIT_LOG: The web kit log type. // // * INSTRUMENTATION_OUTPUT: The instrumentation type. // // * EXERCISER_MONKEY_OUTPUT: For Android, the artifact (log) generated by // an Android fuzz test. // // * CALABASH_JSON_OUTPUT: The Calabash JSON output type. // // * CALABASH_PRETTY_OUTPUT: The Calabash pretty output type. // // * CALABASH_STANDARD_OUTPUT: The Calabash standard output type. // // * CALABASH_JAVA_XML_OUTPUT: The Calabash Java XML output type. // // * AUTOMATION_OUTPUT: The automation output type. // // * APPIUM_SERVER_OUTPUT: The Appium server output type. // // * APPIUM_JAVA_OUTPUT: The Appium Java output type. // // * APPIUM_JAVA_XML_OUTPUT: The Appium Java XML output type. // // * APPIUM_PYTHON_OUTPUT: The Appium Python output type. // // * APPIUM_PYTHON_XML_OUTPUT: The Appium Python XML output type. // // * EXPLORER_EVENT_LOG: The Explorer event log output type. // // * EXPLORER_SUMMARY_LOG: The Explorer summary log output type. // // * APPLICATION_CRASH_REPORT: The application crash report output type. // // * XCTEST_LOG: The XCode test output type. Type *string `locationName:"type" type:"string" enum:"ArtifactType"` // The pre-signed Amazon S3 URL that can be used with a corresponding GET request // to download the artifact's file. Url *string `locationName:"url" type:"string"` } // String returns the string representation func (s Artifact) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Artifact) GoString() string { return s.String() } // Represents the amount of CPU that an app is using on a physical device. // // Note that this does not represent system-wide CPU usage. type CPU struct { _ struct{} `type:"structure"` // The CPU's architecture, for example x86 or ARM. Architecture *string `locationName:"architecture" type:"string"` // The clock speed of the device's CPU, expressed in hertz (Hz). For example, // a 1.2 GHz CPU is expressed as 1200000000. Clock *float64 `locationName:"clock" type:"double"` // The CPU's frequency. Frequency *string `locationName:"frequency" type:"string"` } // String returns the string representation func (s CPU) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CPU) GoString() string { return s.String() } // Represents entity counters. type Counters struct { _ struct{} `type:"structure"` // The number of errored entities. Errored *int64 `locationName:"errored" type:"integer"` // The number of failed entities. Failed *int64 `locationName:"failed" type:"integer"` // The number of passed entities. Passed *int64 `locationName:"passed" type:"integer"` // The number of skipped entities. Skipped *int64 `locationName:"skipped" type:"integer"` // The number of stopped entities. Stopped *int64 `locationName:"stopped" type:"integer"` // The total number of entities. Total *int64 `locationName:"total" type:"integer"` // The number of warned entities. Warned *int64 `locationName:"warned" type:"integer"` } // String returns the string representation func (s Counters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Counters) GoString() string { return s.String() } // Represents a request to the create device pool operation. type CreateDevicePoolInput struct { _ struct{} `type:"structure"` // The device pool's description. Description *string `locationName:"description" type:"string"` // The device pool's name. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` // The ARN of the project for the device pool. // // ProjectArn is a required field ProjectArn *string `locationName:"projectArn" min:"32" type:"string" required:"true"` // The device pool's rules. // // Rules is a required field Rules []*Rule `locationName:"rules" type:"list" required:"true"` } // String returns the string representation func (s CreateDevicePoolInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDevicePoolInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDevicePoolInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDevicePoolInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.ProjectArn == nil { invalidParams.Add(request.NewErrParamRequired("ProjectArn")) } if s.ProjectArn != nil && len(*s.ProjectArn) < 32 { invalidParams.Add(request.NewErrParamMinLen("ProjectArn", 32)) } if s.Rules == nil { invalidParams.Add(request.NewErrParamRequired("Rules")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a create device pool request. type CreateDevicePoolOutput struct { _ struct{} `type:"structure"` // The newly created device pool. DevicePool *DevicePool `locationName:"devicePool" type:"structure"` } // String returns the string representation func (s CreateDevicePoolOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDevicePoolOutput) GoString() string { return s.String() } // Represents a request to the create project operation. type CreateProjectInput struct { _ struct{} `type:"structure"` // The project's name. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` } // String returns the string representation func (s CreateProjectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateProjectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateProjectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateProjectInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a create project request. type CreateProjectOutput struct { _ struct{} `type:"structure"` // The newly created project. Project *Project `locationName:"project" type:"structure"` } // String returns the string representation func (s CreateProjectOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateProjectOutput) GoString() string { return s.String() } // Creates the configuration settings for a remote access session, including // the device model and type. type CreateRemoteAccessSessionConfiguration struct { _ struct{} `type:"structure"` // Returns the billing method for purposes of configuring a remote access session. BillingMethod *string `locationName:"billingMethod" type:"string" enum:"BillingMethod"` } // String returns the string representation func (s CreateRemoteAccessSessionConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRemoteAccessSessionConfiguration) GoString() string { return s.String() } // Creates and submits a request to start a remote access session. type CreateRemoteAccessSessionInput struct { _ struct{} `type:"structure"` // The configuration information for the remote access session request. Configuration *CreateRemoteAccessSessionConfiguration `locationName:"configuration" type:"structure"` // The Amazon Resource Name (ARN) of the device for which you want to create // a remote access session. // // DeviceArn is a required field DeviceArn *string `locationName:"deviceArn" min:"32" type:"string" required:"true"` // The name of the remote access session that you wish to create. Name *string `locationName:"name" type:"string"` // The Amazon Resource Name (ARN) of the project for which you want to create // a remote access session. // // ProjectArn is a required field ProjectArn *string `locationName:"projectArn" min:"32" type:"string" required:"true"` } // String returns the string representation func (s CreateRemoteAccessSessionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRemoteAccessSessionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateRemoteAccessSessionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateRemoteAccessSessionInput"} if s.DeviceArn == nil { invalidParams.Add(request.NewErrParamRequired("DeviceArn")) } if s.DeviceArn != nil && len(*s.DeviceArn) < 32 { invalidParams.Add(request.NewErrParamMinLen("DeviceArn", 32)) } if s.ProjectArn == nil { invalidParams.Add(request.NewErrParamRequired("ProjectArn")) } if s.ProjectArn != nil && len(*s.ProjectArn) < 32 { invalidParams.Add(request.NewErrParamMinLen("ProjectArn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the server response from a request to create a remote access session. type CreateRemoteAccessSessionOutput struct { _ struct{} `type:"structure"` // A container that describes the remote access session when the request to // create a remote access session is sent. RemoteAccessSession *RemoteAccessSession `locationName:"remoteAccessSession" type:"structure"` } // String returns the string representation func (s CreateRemoteAccessSessionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRemoteAccessSessionOutput) GoString() string { return s.String() } // Represents a request to the create upload operation. type CreateUploadInput struct { _ struct{} `type:"structure"` // The upload's content type (for example, "application/octet-stream"). ContentType *string `locationName:"contentType" type:"string"` // The upload's file name. The name should not contain the '/' character. If // uploading an iOS app, the file name needs to end with the .ipa extension. // If uploading an Android app, the file name needs to end with the .apk extension. // For all others, the file name must end with the .zip file extension. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` // The ARN of the project for the upload. // // ProjectArn is a required field ProjectArn *string `locationName:"projectArn" min:"32" type:"string" required:"true"` // The upload's upload type. // // Must be one of the following values: // // * ANDROID_APP: An Android upload. // // * IOS_APP: An iOS upload. // // * WEB_APP: A web appliction upload. // // * EXTERNAL_DATA: An external data upload. // // * APPIUM_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package upload. // // * APPIUM_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package // upload. // // * APPIUM_PYTHON_TEST_PACKAGE: An Appium Python test package upload. // // * APPIUM_WEB_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package // upload. // // * APPIUM_WEB_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package // upload. // // * APPIUM_WEB_PYTHON_TEST_PACKAGE: An Appium Python test package upload. // // * CALABASH_TEST_PACKAGE: A Calabash test package upload. // // * INSTRUMENTATION_TEST_PACKAGE: An instrumentation upload. // // * UIAUTOMATION_TEST_PACKAGE: A uiautomation test package upload. // // * UIAUTOMATOR_TEST_PACKAGE: A uiautomator test package upload. // // * XCTEST_TEST_PACKAGE: An XCode test package upload. // // * XCTEST_UI_TEST_PACKAGE: An XCode UI test package upload. // // Note If you call CreateUpload with WEB_APP specified, AWS Device Farm throws // an ArgumentException error. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"UploadType"` } // String returns the string representation func (s CreateUploadInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateUploadInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateUploadInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateUploadInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.ProjectArn == nil { invalidParams.Add(request.NewErrParamRequired("ProjectArn")) } if s.ProjectArn != nil && len(*s.ProjectArn) < 32 { invalidParams.Add(request.NewErrParamMinLen("ProjectArn", 32)) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a create upload request. type CreateUploadOutput struct { _ struct{} `type:"structure"` // The newly created upload. Upload *Upload `locationName:"upload" type:"structure"` } // String returns the string representation func (s CreateUploadOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateUploadOutput) GoString() string { return s.String() } // Represents a request to the delete device pool operation. type DeleteDevicePoolInput struct { _ struct{} `type:"structure"` // Represents the Amazon Resource Name (ARN) of the Device Farm device pool // you wish to delete. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` } // String returns the string representation func (s DeleteDevicePoolInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDevicePoolInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDevicePoolInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDevicePoolInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a delete device pool request. type DeleteDevicePoolOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteDevicePoolOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDevicePoolOutput) GoString() string { return s.String() } // Represents a request to the delete project operation. type DeleteProjectInput struct { _ struct{} `type:"structure"` // Represents the Amazon Resource Name (ARN) of the Device Farm project you // wish to delete. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` } // String returns the string representation func (s DeleteProjectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteProjectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteProjectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteProjectInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a delete project request. type DeleteProjectOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteProjectOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteProjectOutput) GoString() string { return s.String() } // Represents the request to delete the specified remote access session. type DeleteRemoteAccessSessionInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the sesssion for which you want to delete // remote access. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` } // String returns the string representation func (s DeleteRemoteAccessSessionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRemoteAccessSessionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteRemoteAccessSessionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteRemoteAccessSessionInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response from the server when a request is made to delete the remote // access session. type DeleteRemoteAccessSessionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteRemoteAccessSessionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRemoteAccessSessionOutput) GoString() string { return s.String() } // Represents a request to the delete run operation. type DeleteRunInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) for the run you wish to delete. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` } // String returns the string representation func (s DeleteRunInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRunInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteRunInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteRunInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a delete run request. type DeleteRunOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteRunOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRunOutput) GoString() string { return s.String() } // Represents a request to the delete upload operation. type DeleteUploadInput struct { _ struct{} `type:"structure"` // Represents the Amazon Resource Name (ARN) of the Device Farm upload you wish // to delete. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` } // String returns the string representation func (s DeleteUploadInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUploadInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteUploadInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteUploadInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a delete upload request. type DeleteUploadOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteUploadOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUploadOutput) GoString() string { return s.String() } // Represents a device type that an app is tested against. type Device struct { _ struct{} `type:"structure"` // The device's ARN. Arn *string `locationName:"arn" min:"32" type:"string"` // The device's carrier. Carrier *string `locationName:"carrier" type:"string"` // Information about the device's CPU. Cpu *CPU `locationName:"cpu" type:"structure"` // The name of the fleet to which this device belongs. FleetName *string `locationName:"fleetName" type:"string"` // The type of fleet to which this device belongs. Possible values for fleet // type are PRIVATE and PUBLIC. FleetType *string `locationName:"fleetType" type:"string"` // The device's form factor. // // Allowed values include: // // * PHONE: The phone form factor. // // * TABLET: The tablet form factor. FormFactor *string `locationName:"formFactor" type:"string" enum:"DeviceFormFactor"` // The device's heap size, expressed in bytes. HeapSize *int64 `locationName:"heapSize" type:"long"` // The device's image name. Image *string `locationName:"image" type:"string"` // The device's manufacturer name. Manufacturer *string `locationName:"manufacturer" type:"string"` // The device's total memory size, expressed in bytes. Memory *int64 `locationName:"memory" type:"long"` // The device's model name. Model *string `locationName:"model" type:"string"` // The device's display name. Name *string `locationName:"name" type:"string"` // The device's operating system type. Os *string `locationName:"os" type:"string"` // The device's platform. // // Allowed values include: // // * ANDROID: The Android platform. // // * IOS: The iOS platform. Platform *string `locationName:"platform" type:"string" enum:"DevicePlatform"` // The device's radio. Radio *string `locationName:"radio" type:"string"` // Specifies whether remote access has been enabled for the specified device. RemoteAccessEnabled *bool `locationName:"remoteAccessEnabled" type:"boolean"` // Represents the screen resolution of a device in height and width, expressed // in pixels. Resolution *Resolution `locationName:"resolution" type:"structure"` } // String returns the string representation func (s Device) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Device) GoString() string { return s.String() } // Represents the total (metered or unmetered) minutes used by the resource // to run tests. Contains the sum of minutes consumed by all children. type DeviceMinutes struct { _ struct{} `type:"structure"` // When specified, represents only the sum of metered minutes used by the resource // to run tests. Metered *float64 `locationName:"metered" type:"double"` // When specified, represents the total minutes used by the resource to run // tests. Total *float64 `locationName:"total" type:"double"` // When specified, represents only the sum of unmetered minutes used by the // resource to run tests. Unmetered *float64 `locationName:"unmetered" type:"double"` } // String returns the string representation func (s DeviceMinutes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeviceMinutes) GoString() string { return s.String() } // Represents a collection of device types. type DevicePool struct { _ struct{} `type:"structure"` // The device pool's ARN. Arn *string `locationName:"arn" min:"32" type:"string"` // The device pool's description. Description *string `locationName:"description" type:"string"` // The device pool's name. Name *string `locationName:"name" type:"string"` // Information about the device pool's rules. Rules []*Rule `locationName:"rules" type:"list"` // The device pool's type. // // Allowed values include: // // * CURATED: A device pool that is created and managed by AWS Device Farm. // // * PRIVATE: A device pool that is created and managed by the device pool // developer. Type *string `locationName:"type" type:"string" enum:"DevicePoolType"` } // String returns the string representation func (s DevicePool) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DevicePool) GoString() string { return s.String() } // Represents a device pool compatibility result. type DevicePoolCompatibilityResult struct { _ struct{} `type:"structure"` // Whether the result was compatible with the device pool. Compatible *bool `locationName:"compatible" type:"boolean"` // Represents a device type that an app is tested against. Device *Device `locationName:"device" type:"structure"` // Information about the compatibility. IncompatibilityMessages []*IncompatibilityMessage `locationName:"incompatibilityMessages" type:"list"` } // String returns the string representation func (s DevicePoolCompatibilityResult) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DevicePoolCompatibilityResult) GoString() string { return s.String() } // Represents the request sent to retrieve the account settings. type GetAccountSettingsInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GetAccountSettingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAccountSettingsInput) GoString() string { return s.String() } // Represents the account settings return values from the GetAccountSettings // request. type GetAccountSettingsOutput struct { _ struct{} `type:"structure"` // A container for account-level settings within AWS Device Farm. AccountSettings *AccountSettings `locationName:"accountSettings" type:"structure"` } // String returns the string representation func (s GetAccountSettingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAccountSettingsOutput) GoString() string { return s.String() } // Represents a request to the get device request. type GetDeviceInput struct { _ struct{} `type:"structure"` // The device type's ARN. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` } // String returns the string representation func (s GetDeviceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDeviceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDeviceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDeviceInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a get device request. type GetDeviceOutput struct { _ struct{} `type:"structure"` // Represents a device type that an app is tested against. Device *Device `locationName:"device" type:"structure"` } // String returns the string representation func (s GetDeviceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDeviceOutput) GoString() string { return s.String() } // Represents a request to the get device pool compatibility operation. type GetDevicePoolCompatibilityInput struct { _ struct{} `type:"structure"` // The ARN of the app that is associated with the specified device pool. AppArn *string `locationName:"appArn" min:"32" type:"string"` // The device pool's ARN. // // DevicePoolArn is a required field DevicePoolArn *string `locationName:"devicePoolArn" min:"32" type:"string" required:"true"` // The test type for the specified device pool. // // Allowed values include the following: // // * BUILTIN_FUZZ: The built-in fuzz type. // // * BUILTIN_EXPLORER: For Android, an app explorer that will traverse an // Android app, interacting with it and capturing screenshots at the same // time. // // * APPIUM_JAVA_JUNIT: The Appium Java JUnit type. // // * APPIUM_JAVA_TESTNG: The Appium Java TestNG type. // // * APPIUM_PYTHON: The Appium Python type. // // * APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps. // // * APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps. // // * APPIUM_WEB_PYTHON: The Appium Python type for Web apps. // // * CALABASH: The Calabash type. // // * INSTRUMENTATION: The Instrumentation type. // // * UIAUTOMATION: The uiautomation type. // // * UIAUTOMATOR: The uiautomator type. // // * XCTEST: The XCode test type. // // * XCTEST_UI: The XCode UI test type. TestType *string `locationName:"testType" type:"string" enum:"TestType"` } // String returns the string representation func (s GetDevicePoolCompatibilityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDevicePoolCompatibilityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDevicePoolCompatibilityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDevicePoolCompatibilityInput"} if s.AppArn != nil && len(*s.AppArn) < 32 { invalidParams.Add(request.NewErrParamMinLen("AppArn", 32)) } if s.DevicePoolArn == nil { invalidParams.Add(request.NewErrParamRequired("DevicePoolArn")) } if s.DevicePoolArn != nil && len(*s.DevicePoolArn) < 32 { invalidParams.Add(request.NewErrParamMinLen("DevicePoolArn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of describe device pool compatibility request. type GetDevicePoolCompatibilityOutput struct { _ struct{} `type:"structure"` // Information about compatible devices. CompatibleDevices []*DevicePoolCompatibilityResult `locationName:"compatibleDevices" type:"list"` // Information about incompatible devices. IncompatibleDevices []*DevicePoolCompatibilityResult `locationName:"incompatibleDevices" type:"list"` } // String returns the string representation func (s GetDevicePoolCompatibilityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDevicePoolCompatibilityOutput) GoString() string { return s.String() } // Represents a request to the get device pool operation. type GetDevicePoolInput struct { _ struct{} `type:"structure"` // The device pool's ARN. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` } // String returns the string representation func (s GetDevicePoolInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDevicePoolInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDevicePoolInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDevicePoolInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a get device pool request. type GetDevicePoolOutput struct { _ struct{} `type:"structure"` // Represents a collection of device types. DevicePool *DevicePool `locationName:"devicePool" type:"structure"` } // String returns the string representation func (s GetDevicePoolOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDevicePoolOutput) GoString() string { return s.String() } // Represents a request to the get job operation. type GetJobInput struct { _ struct{} `type:"structure"` // The job's ARN. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` } // String returns the string representation func (s GetJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetJobInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a get job request. type GetJobOutput struct { _ struct{} `type:"structure"` // Represents a device. Job *Job `locationName:"job" type:"structure"` } // String returns the string representation func (s GetJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetJobOutput) GoString() string { return s.String() } // Represents the request to retrieve the offering status for the specified // customer or account. type GetOfferingStatusInput struct { _ struct{} `type:"structure"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` } // String returns the string representation func (s GetOfferingStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetOfferingStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetOfferingStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetOfferingStatusInput"} if s.NextToken != nil && len(*s.NextToken) < 4 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returns the status result for a device offering. type GetOfferingStatusOutput struct { _ struct{} `type:"structure"` // When specified, gets the offering status for the current period. Current map[string]*OfferingStatus `locationName:"current" type:"map"` // When specified, gets the offering status for the next period. NextPeriod map[string]*OfferingStatus `locationName:"nextPeriod" type:"map"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` } // String returns the string representation func (s GetOfferingStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetOfferingStatusOutput) GoString() string { return s.String() } // Represents a request to the get project operation. type GetProjectInput struct { _ struct{} `type:"structure"` // The project's ARN. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` } // String returns the string representation func (s GetProjectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetProjectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetProjectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetProjectInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a get project request. type GetProjectOutput struct { _ struct{} `type:"structure"` // Represents an operating-system neutral workspace for running and managing // tests. Project *Project `locationName:"project" type:"structure"` } // String returns the string representation func (s GetProjectOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetProjectOutput) GoString() string { return s.String() } // Represents the request to get information about the specified remote access // session. type GetRemoteAccessSessionInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the remote access session about which you // want to get session information. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` } // String returns the string representation func (s GetRemoteAccessSessionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRemoteAccessSessionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetRemoteAccessSessionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetRemoteAccessSessionInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server that lists detailed information about // the remote access session. type GetRemoteAccessSessionOutput struct { _ struct{} `type:"structure"` // A container that lists detailed information about the remote access session. RemoteAccessSession *RemoteAccessSession `locationName:"remoteAccessSession" type:"structure"` } // String returns the string representation func (s GetRemoteAccessSessionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRemoteAccessSessionOutput) GoString() string { return s.String() } // Represents a request to the get run operation. type GetRunInput struct { _ struct{} `type:"structure"` // The run's ARN. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` } // String returns the string representation func (s GetRunInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRunInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetRunInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetRunInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a get run request. type GetRunOutput struct { _ struct{} `type:"structure"` // Represents an app on a set of devices with a specific test and configuration. Run *Run `locationName:"run" type:"structure"` } // String returns the string representation func (s GetRunOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRunOutput) GoString() string { return s.String() } // Represents a request to the get suite operation. type GetSuiteInput struct { _ struct{} `type:"structure"` // The suite's ARN. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` } // String returns the string representation func (s GetSuiteInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSuiteInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetSuiteInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetSuiteInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a get suite request. type GetSuiteOutput struct { _ struct{} `type:"structure"` // Represents a collection of one or more tests. Suite *Suite `locationName:"suite" type:"structure"` } // String returns the string representation func (s GetSuiteOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSuiteOutput) GoString() string { return s.String() } // Represents a request to the get test operation. type GetTestInput struct { _ struct{} `type:"structure"` // The test's ARN. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` } // String returns the string representation func (s GetTestInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTestInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetTestInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetTestInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a get test request. type GetTestOutput struct { _ struct{} `type:"structure"` // Represents a condition that is evaluated. Test *Test `locationName:"test" type:"structure"` } // String returns the string representation func (s GetTestOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTestOutput) GoString() string { return s.String() } // Represents a request to the get upload operation. type GetUploadInput struct { _ struct{} `type:"structure"` // The upload's ARN. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` } // String returns the string representation func (s GetUploadInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetUploadInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetUploadInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetUploadInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a get upload request. type GetUploadOutput struct { _ struct{} `type:"structure"` // An app or a set of one or more tests to upload or that have been uploaded. Upload *Upload `locationName:"upload" type:"structure"` } // String returns the string representation func (s GetUploadOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetUploadOutput) GoString() string { return s.String() } // Represents information about incompatibility. type IncompatibilityMessage struct { _ struct{} `type:"structure"` // A message about the incompatibility. Message *string `locationName:"message" type:"string"` // The type of incompatibility. // // Allowed values include: // // * ARN: The ARN. // // * FORM_FACTOR: The form factor (for example, phone or tablet). // // * MANUFACTURER: The manufacturer. // // * PLATFORM: The platform (for example, Android or iOS). Type *string `locationName:"type" type:"string" enum:"DeviceAttribute"` } // String returns the string representation func (s IncompatibilityMessage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IncompatibilityMessage) GoString() string { return s.String() } // Represents the request to install an Android application (in .apk format) // or an iOS application (in .ipa format) as part of a remote access session. type InstallToRemoteAccessSessionInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the app about which you are requesting // information. // // AppArn is a required field AppArn *string `locationName:"appArn" min:"32" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the remote access session about which you // are requesting information. // // RemoteAccessSessionArn is a required field RemoteAccessSessionArn *string `locationName:"remoteAccessSessionArn" min:"32" type:"string" required:"true"` } // String returns the string representation func (s InstallToRemoteAccessSessionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstallToRemoteAccessSessionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InstallToRemoteAccessSessionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InstallToRemoteAccessSessionInput"} if s.AppArn == nil { invalidParams.Add(request.NewErrParamRequired("AppArn")) } if s.AppArn != nil && len(*s.AppArn) < 32 { invalidParams.Add(request.NewErrParamMinLen("AppArn", 32)) } if s.RemoteAccessSessionArn == nil { invalidParams.Add(request.NewErrParamRequired("RemoteAccessSessionArn")) } if s.RemoteAccessSessionArn != nil && len(*s.RemoteAccessSessionArn) < 32 { invalidParams.Add(request.NewErrParamMinLen("RemoteAccessSessionArn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server after AWS Device Farm makes a request // to install to a remote access session. type InstallToRemoteAccessSessionOutput struct { _ struct{} `type:"structure"` // An app or a set of one or more tests to upload or that have been uploaded. AppUpload *Upload `locationName:"appUpload" type:"structure"` } // String returns the string representation func (s InstallToRemoteAccessSessionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstallToRemoteAccessSessionOutput) GoString() string { return s.String() } // Represents a device. type Job struct { _ struct{} `type:"structure"` // The job's ARN. Arn *string `locationName:"arn" min:"32" type:"string"` // The job's result counters. Counters *Counters `locationName:"counters" type:"structure"` // When the job was created. Created *time.Time `locationName:"created" type:"timestamp" timestampFormat:"unix"` // Represents a device type that an app is tested against. Device *Device `locationName:"device" type:"structure"` // Represents the total (metered or unmetered) minutes used by the job. DeviceMinutes *DeviceMinutes `locationName:"deviceMinutes" type:"structure"` // A message about the job's result. Message *string `locationName:"message" type:"string"` // The job's name. Name *string `locationName:"name" type:"string"` // The job's result. // // Allowed values include: // // * PENDING: A pending condition. // // * PASSED: A passing condition. // // * WARNED: A warning condition. // // * FAILED: A failed condition. // // * SKIPPED: A skipped condition. // // * ERRORED: An error condition. // // * STOPPED: A stopped condition. Result *string `locationName:"result" type:"string" enum:"ExecutionResult"` // The job's start time. Started *time.Time `locationName:"started" type:"timestamp" timestampFormat:"unix"` // The job's status. // // Allowed values include: // // * PENDING: A pending status. // // * PENDING_CONCURRENCY: A pending concurrency status. // // * PENDING_DEVICE: A pending device status. // // * PROCESSING: A processing status. // // * SCHEDULING: A scheduling status. // // * PREPARING: A preparing status. // // * RUNNING: A running status. // // * COMPLETED: A completed status. // // * STOPPING: A stopping status. Status *string `locationName:"status" type:"string" enum:"ExecutionStatus"` // The job's stop time. Stopped *time.Time `locationName:"stopped" type:"timestamp" timestampFormat:"unix"` // The job's type. // // Allowed values include the following: // // * BUILTIN_FUZZ: The built-in fuzz type. // // * BUILTIN_EXPLORER: For Android, an app explorer that will traverse an // Android app, interacting with it and capturing screenshots at the same // time. // // * APPIUM_JAVA_JUNIT: The Appium Java JUnit type. // // * APPIUM_JAVA_TESTNG: The Appium Java TestNG type. // // * APPIUM_PYTHON: The Appium Python type. // // * APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps. // // * APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps. // // * APPIUM_WEB_PYTHON: The Appium Python type for Web apps. // // * CALABASH: The Calabash type. // // * INSTRUMENTATION: The Instrumentation type. // // * UIAUTOMATION: The uiautomation type. // // * UIAUTOMATOR: The uiautomator type. // // * XCTEST: The XCode test type. // // * XCTEST_UI: The XCode UI test type. Type *string `locationName:"type" type:"string" enum:"TestType"` } // String returns the string representation func (s Job) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Job) GoString() string { return s.String() } // Represents a request to the list artifacts operation. type ListArtifactsInput struct { _ struct{} `type:"structure"` // The Run, Job, Suite, or Test ARN. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` // The artifacts' type. // // Allowed values include: // // * FILE: The artifacts are files. // // * LOG: The artifacts are logs. // // * SCREENSHOT: The artifacts are screenshots. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"ArtifactCategory"` } // String returns the string representation func (s ListArtifactsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListArtifactsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListArtifactsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListArtifactsInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if s.NextToken != nil && len(*s.NextToken) < 4 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a list artifacts operation. type ListArtifactsOutput struct { _ struct{} `type:"structure"` // Information about the artifacts. Artifacts []*Artifact `locationName:"artifacts" type:"list"` // If the number of items that are returned is significantly large, this is // an identifier that is also returned, which can be used in a subsequent call // to this operation to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` } // String returns the string representation func (s ListArtifactsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListArtifactsOutput) GoString() string { return s.String() } // Represents the result of a list device pools request. type ListDevicePoolsInput struct { _ struct{} `type:"structure"` // The project ARN. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` // The device pools' type. // // Allowed values include: // // * CURATED: A device pool that is created and managed by AWS Device Farm. // // * PRIVATE: A device pool that is created and managed by the device pool // developer. Type *string `locationName:"type" type:"string" enum:"DevicePoolType"` } // String returns the string representation func (s ListDevicePoolsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDevicePoolsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListDevicePoolsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListDevicePoolsInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if s.NextToken != nil && len(*s.NextToken) < 4 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a list device pools request. type ListDevicePoolsOutput struct { _ struct{} `type:"structure"` // Information about the device pools. DevicePools []*DevicePool `locationName:"devicePools" type:"list"` // If the number of items that are returned is significantly large, this is // an identifier that is also returned, which can be used in a subsequent call // to this operation to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` } // String returns the string representation func (s ListDevicePoolsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDevicePoolsOutput) GoString() string { return s.String() } // Represents the result of a list devices request. type ListDevicesInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the project. Arn *string `locationName:"arn" min:"32" type:"string"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` } // String returns the string representation func (s ListDevicesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDevicesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListDevicesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListDevicesInput"} if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if s.NextToken != nil && len(*s.NextToken) < 4 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a list devices operation. type ListDevicesOutput struct { _ struct{} `type:"structure"` // Information about the devices. Devices []*Device `locationName:"devices" type:"list"` // If the number of items that are returned is significantly large, this is // an identifier that is also returned, which can be used in a subsequent call // to this operation to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` } // String returns the string representation func (s ListDevicesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDevicesOutput) GoString() string { return s.String() } // Represents a request to the list jobs operation. type ListJobsInput struct { _ struct{} `type:"structure"` // The jobs' ARNs. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` } // String returns the string representation func (s ListJobsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListJobsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListJobsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListJobsInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if s.NextToken != nil && len(*s.NextToken) < 4 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a list jobs request. type ListJobsOutput struct { _ struct{} `type:"structure"` // Information about the jobs. Jobs []*Job `locationName:"jobs" type:"list"` // If the number of items that are returned is significantly large, this is // an identifier that is also returned, which can be used in a subsequent call // to this operation to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` } // String returns the string representation func (s ListJobsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListJobsOutput) GoString() string { return s.String() } // Represents the request to list the offering transaction history. type ListOfferingTransactionsInput struct { _ struct{} `type:"structure"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` } // String returns the string representation func (s ListOfferingTransactionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListOfferingTransactionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListOfferingTransactionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListOfferingTransactionsInput"} if s.NextToken != nil && len(*s.NextToken) < 4 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returns the transaction log of the specified offerings. type ListOfferingTransactionsOutput struct { _ struct{} `type:"structure"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` // The audit log of subscriptions you have purchased and modified through AWS // Device Farm. OfferingTransactions []*OfferingTransaction `locationName:"offeringTransactions" type:"list"` } // String returns the string representation func (s ListOfferingTransactionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListOfferingTransactionsOutput) GoString() string { return s.String() } // Represents the request to list all offerings. type ListOfferingsInput struct { _ struct{} `type:"structure"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` } // String returns the string representation func (s ListOfferingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListOfferingsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListOfferingsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListOfferingsInput"} if s.NextToken != nil && len(*s.NextToken) < 4 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the return values of the list of offerings. type ListOfferingsOutput struct { _ struct{} `type:"structure"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` // A value representing the list offering results. Offerings []*Offering `locationName:"offerings" type:"list"` } // String returns the string representation func (s ListOfferingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListOfferingsOutput) GoString() string { return s.String() } // Represents a request to the list projects operation. type ListProjectsInput struct { _ struct{} `type:"structure"` // Optional. If no Amazon Resource Name (ARN) is specified, then AWS Device // Farm returns a list of all projects for the AWS account. You can also specify // a project ARN. Arn *string `locationName:"arn" min:"32" type:"string"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` } // String returns the string representation func (s ListProjectsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListProjectsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListProjectsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListProjectsInput"} if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if s.NextToken != nil && len(*s.NextToken) < 4 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a list projects request. type ListProjectsOutput struct { _ struct{} `type:"structure"` // If the number of items that are returned is significantly large, this is // an identifier that is also returned, which can be used in a subsequent call // to this operation to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` // Information about the projects. Projects []*Project `locationName:"projects" type:"list"` } // String returns the string representation func (s ListProjectsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListProjectsOutput) GoString() string { return s.String() } // Represents the request to return information about the remote access session. type ListRemoteAccessSessionsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the remote access session about which you // are requesting information. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` } // String returns the string representation func (s ListRemoteAccessSessionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRemoteAccessSessionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListRemoteAccessSessionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListRemoteAccessSessionsInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if s.NextToken != nil && len(*s.NextToken) < 4 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server after AWS Device Farm makes a request // to return information about the remote access session. type ListRemoteAccessSessionsOutput struct { _ struct{} `type:"structure"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` // A container representing the metadata from the service about each remote // access session you are requesting. RemoteAccessSessions []*RemoteAccessSession `locationName:"remoteAccessSessions" type:"list"` } // String returns the string representation func (s ListRemoteAccessSessionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRemoteAccessSessionsOutput) GoString() string { return s.String() } // Represents a request to the list runs operation. type ListRunsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the project for which you want to list // runs. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` } // String returns the string representation func (s ListRunsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRunsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListRunsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListRunsInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if s.NextToken != nil && len(*s.NextToken) < 4 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a list runs request. type ListRunsOutput struct { _ struct{} `type:"structure"` // If the number of items that are returned is significantly large, this is // an identifier that is also returned, which can be used in a subsequent call // to this operation to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` // Information about the runs. Runs []*Run `locationName:"runs" type:"list"` } // String returns the string representation func (s ListRunsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRunsOutput) GoString() string { return s.String() } // Represents a request to the list samples operation. type ListSamplesInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the project for which you want to list // samples. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` } // String returns the string representation func (s ListSamplesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSamplesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListSamplesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListSamplesInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if s.NextToken != nil && len(*s.NextToken) < 4 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a list samples request. type ListSamplesOutput struct { _ struct{} `type:"structure"` // If the number of items that are returned is significantly large, this is // an identifier that is also returned, which can be used in a subsequent call // to this operation to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` // Information about the samples. Samples []*Sample `locationName:"samples" type:"list"` } // String returns the string representation func (s ListSamplesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSamplesOutput) GoString() string { return s.String() } // Represents a request to the list suites operation. type ListSuitesInput struct { _ struct{} `type:"structure"` // The suites' ARNs. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` } // String returns the string representation func (s ListSuitesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSuitesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListSuitesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListSuitesInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if s.NextToken != nil && len(*s.NextToken) < 4 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a list suites request. type ListSuitesOutput struct { _ struct{} `type:"structure"` // If the number of items that are returned is significantly large, this is // an identifier that is also returned, which can be used in a subsequent call // to this operation to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` // Information about the suites. Suites []*Suite `locationName:"suites" type:"list"` } // String returns the string representation func (s ListSuitesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSuitesOutput) GoString() string { return s.String() } // Represents a request to the list tests operation. type ListTestsInput struct { _ struct{} `type:"structure"` // The tests' ARNs. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` } // String returns the string representation func (s ListTestsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTestsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTestsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTestsInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if s.NextToken != nil && len(*s.NextToken) < 4 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a list tests request. type ListTestsOutput struct { _ struct{} `type:"structure"` // If the number of items that are returned is significantly large, this is // an identifier that is also returned, which can be used in a subsequent call // to this operation to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` // Information about the tests. Tests []*Test `locationName:"tests" type:"list"` } // String returns the string representation func (s ListTestsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTestsOutput) GoString() string { return s.String() } // Represents a request to the list unique problems operation. type ListUniqueProblemsInput struct { _ struct{} `type:"structure"` // The unique problems' ARNs. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` } // String returns the string representation func (s ListUniqueProblemsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListUniqueProblemsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListUniqueProblemsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListUniqueProblemsInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if s.NextToken != nil && len(*s.NextToken) < 4 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a list unique problems request. type ListUniqueProblemsOutput struct { _ struct{} `type:"structure"` // If the number of items that are returned is significantly large, this is // an identifier that is also returned, which can be used in a subsequent call // to this operation to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` // Information about the unique problems. // // Allowed values include: // // * PENDING: A pending condition. // // * PASSED: A passing condition. // // * WARNED: A warning condition. // // * FAILED: A failed condition. // // * SKIPPED: A skipped condition. // // * ERRORED: An error condition. // // * STOPPED: A stopped condition. UniqueProblems map[string][]*UniqueProblem `locationName:"uniqueProblems" type:"map"` } // String returns the string representation func (s ListUniqueProblemsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListUniqueProblemsOutput) GoString() string { return s.String() } // Represents a request to the list uploads operation. type ListUploadsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the project for which you want to list // uploads. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` // An identifier that was returned from the previous call to this operation, // which can be used to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` } // String returns the string representation func (s ListUploadsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListUploadsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListUploadsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListUploadsInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if s.NextToken != nil && len(*s.NextToken) < 4 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a list uploads request. type ListUploadsOutput struct { _ struct{} `type:"structure"` // If the number of items that are returned is significantly large, this is // an identifier that is also returned, which can be used in a subsequent call // to this operation to return the next set of items in the list. NextToken *string `locationName:"nextToken" min:"4" type:"string"` // Information about the uploads. Uploads []*Upload `locationName:"uploads" type:"list"` } // String returns the string representation func (s ListUploadsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListUploadsOutput) GoString() string { return s.String() } // Represents a latitude and longitude pair, expressed in geographic coordinate // system degrees (for example 47.6204, -122.3491). // // Elevation is currently not supported. type Location struct { _ struct{} `type:"structure"` // The latitude. // // Latitude is a required field Latitude *float64 `locationName:"latitude" type:"double" required:"true"` // The longitude. // // Longitude is a required field Longitude *float64 `locationName:"longitude" type:"double" required:"true"` } // String returns the string representation func (s Location) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Location) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Location) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Location"} if s.Latitude == nil { invalidParams.Add(request.NewErrParamRequired("Latitude")) } if s.Longitude == nil { invalidParams.Add(request.NewErrParamRequired("Longitude")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A number representing the monetary amount for an offering or transaction. type MonetaryAmount struct { _ struct{} `type:"structure"` // The numerical amount of an offering or transaction. Amount *float64 `locationName:"amount" type:"double"` // The currency code of a monetary amount. For example, USD means "U.S. dollars." CurrencyCode *string `locationName:"currencyCode" type:"string" enum:"CurrencyCode"` } // String returns the string representation func (s MonetaryAmount) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MonetaryAmount) GoString() string { return s.String() } // Represents the metadata of a device offering. type Offering struct { _ struct{} `type:"structure"` // A string describing the offering. Description *string `locationName:"description" type:"string"` // The ID that corresponds to a device offering. Id *string `locationName:"id" min:"32" type:"string"` // The platform of the device (e.g., ANDROID or IOS). Platform *string `locationName:"platform" type:"string" enum:"DevicePlatform"` // Specifies whether there are recurring charges for the offering. RecurringCharges []*RecurringCharge `locationName:"recurringCharges" type:"list"` // The type of offering (e.g., "RECURRING") for a device. Type *string `locationName:"type" type:"string" enum:"OfferingType"` } // String returns the string representation func (s Offering) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Offering) GoString() string { return s.String() } // The status of the offering. type OfferingStatus struct { _ struct{} `type:"structure"` // The date on which the offering is effective. EffectiveOn *time.Time `locationName:"effectiveOn" type:"timestamp" timestampFormat:"unix"` // Represents the metadata of an offering status. Offering *Offering `locationName:"offering" type:"structure"` // The number of available devices in the offering. Quantity *int64 `locationName:"quantity" type:"integer"` // The type specified for the offering status. Type *string `locationName:"type" type:"string" enum:"OfferingTransactionType"` } // String returns the string representation func (s OfferingStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OfferingStatus) GoString() string { return s.String() } // Represents the metadata of an offering transaction. type OfferingTransaction struct { _ struct{} `type:"structure"` // The cost of an offering transaction. Cost *MonetaryAmount `locationName:"cost" type:"structure"` // The date on which an offering transaction was created. CreatedOn *time.Time `locationName:"createdOn" type:"timestamp" timestampFormat:"unix"` // The status of an offering transaction. OfferingStatus *OfferingStatus `locationName:"offeringStatus" type:"structure"` // The transaction ID of the offering transaction. TransactionId *string `locationName:"transactionId" min:"32" type:"string"` } // String returns the string representation func (s OfferingTransaction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OfferingTransaction) GoString() string { return s.String() } // Represents a specific warning or failure. type Problem struct { _ struct{} `type:"structure"` // Information about the associated device. Device *Device `locationName:"device" type:"structure"` // Information about the associated job. Job *ProblemDetail `locationName:"job" type:"structure"` // A message about the problem's result. Message *string `locationName:"message" type:"string"` // The problem's result. // // Allowed values include: // // * PENDING: A pending condition. // // * PASSED: A passing condition. // // * WARNED: A warning condition. // // * FAILED: A failed condition. // // * SKIPPED: A skipped condition. // // * ERRORED: An error condition. // // * STOPPED: A stopped condition. Result *string `locationName:"result" type:"string" enum:"ExecutionResult"` // Information about the associated run. Run *ProblemDetail `locationName:"run" type:"structure"` // Information about the associated suite. Suite *ProblemDetail `locationName:"suite" type:"structure"` // Information about the associated test. Test *ProblemDetail `locationName:"test" type:"structure"` } // String returns the string representation func (s Problem) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Problem) GoString() string { return s.String() } // Information about a problem detail. type ProblemDetail struct { _ struct{} `type:"structure"` // The problem detail's ARN. Arn *string `locationName:"arn" min:"32" type:"string"` // The problem detail's name. Name *string `locationName:"name" type:"string"` } // String returns the string representation func (s ProblemDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ProblemDetail) GoString() string { return s.String() } // Represents an operating-system neutral workspace for running and managing // tests. type Project struct { _ struct{} `type:"structure"` // The project's ARN. Arn *string `locationName:"arn" min:"32" type:"string"` // When the project was created. Created *time.Time `locationName:"created" type:"timestamp" timestampFormat:"unix"` // The project's name. Name *string `locationName:"name" type:"string"` } // String returns the string representation func (s Project) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Project) GoString() string { return s.String() } // Represents a request for a purchase offering. type PurchaseOfferingInput struct { _ struct{} `type:"structure"` // The ID of the offering. OfferingId *string `locationName:"offeringId" min:"32" type:"string"` // The number of device slots you wish to purchase in an offering request. Quantity *int64 `locationName:"quantity" type:"integer"` } // String returns the string representation func (s PurchaseOfferingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PurchaseOfferingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PurchaseOfferingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PurchaseOfferingInput"} if s.OfferingId != nil && len(*s.OfferingId) < 32 { invalidParams.Add(request.NewErrParamMinLen("OfferingId", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of the purchase offering (e.g., success or failure). type PurchaseOfferingOutput struct { _ struct{} `type:"structure"` // Represents the offering transaction for the purchase result. OfferingTransaction *OfferingTransaction `locationName:"offeringTransaction" type:"structure"` } // String returns the string representation func (s PurchaseOfferingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PurchaseOfferingOutput) GoString() string { return s.String() } // Represents the set of radios and their states on a device. Examples of radios // include Wi-Fi, GPS, Bluetooth, and NFC. type Radios struct { _ struct{} `type:"structure"` // True if Bluetooth is enabled at the beginning of the test; otherwise, false. Bluetooth *bool `locationName:"bluetooth" type:"boolean"` // True if GPS is enabled at the beginning of the test; otherwise, false. Gps *bool `locationName:"gps" type:"boolean"` // True if NFC is enabled at the beginning of the test; otherwise, false. Nfc *bool `locationName:"nfc" type:"boolean"` // True if Wi-Fi is enabled at the beginning of the test; otherwise, false. Wifi *bool `locationName:"wifi" type:"boolean"` } // String returns the string representation func (s Radios) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Radios) GoString() string { return s.String() } // Specifies whether charges for devices will be recurring. type RecurringCharge struct { _ struct{} `type:"structure"` // The cost of the recurring charge. Cost *MonetaryAmount `locationName:"cost" type:"structure"` // The frequency in which charges will recur. Frequency *string `locationName:"frequency" type:"string" enum:"RecurringChargeFrequency"` } // String returns the string representation func (s RecurringCharge) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecurringCharge) GoString() string { return s.String() } // Represents information about the remote access session. type RemoteAccessSession struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the remote access session. Arn *string `locationName:"arn" min:"32" type:"string"` // The billing method of the remote access session. Possible values include // METERED or UNMETERED. For more information about metered devices, see AWS // Device Farm terminology (http://docs.aws.amazon.com/devicefarm/latest/developerguide/welcome.html#welcome-terminology)." BillingMethod *string `locationName:"billingMethod" type:"string" enum:"BillingMethod"` // The date and time the remote access session was created. Created *time.Time `locationName:"created" type:"timestamp" timestampFormat:"unix"` // Represents a device type that an app is tested against. Device *Device `locationName:"device" type:"structure"` // Represents the total (metered or unmetered) minutes used by the resource // to run tests. Contains the sum of minutes consumed by all children. DeviceMinutes *DeviceMinutes `locationName:"deviceMinutes" type:"structure"` // The endpoint for the remote access sesssion. Endpoint *string `locationName:"endpoint" type:"string"` // A message about the remote access session. Message *string `locationName:"message" type:"string"` // The name of the remote access session. Name *string `locationName:"name" type:"string"` // The result of the remote access session. Can be any of the following: // // * PENDING: A pending condition. // // * PASSED: A passing condition. // // * WARNED: A warning condition. // // * FAILED: A failed condition. // // * SKIPPED: A skipped condition. // // * ERRORED: An error condition. // // * STOPPED: A stopped condition. Result *string `locationName:"result" type:"string" enum:"ExecutionResult"` // The date and time the remote access session was started. Started *time.Time `locationName:"started" type:"timestamp" timestampFormat:"unix"` // The status of the remote access session. Can be any of the following: // // * PENDING: A pending status. // // * PENDING_CONCURRENCY: A pending concurrency status. // // * PENDING_DEVICE: A pending device status. // // * PROCESSING: A processing status. // // * SCHEDULING: A scheduling status. // // * PREPARING: A preparing status. // // * RUNNING: A running status. // // * COMPLETED: A completed status. // // * STOPPING: A stopping status. Status *string `locationName:"status" type:"string" enum:"ExecutionStatus"` // The date and time the remote access session was stopped. Stopped *time.Time `locationName:"stopped" type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s RemoteAccessSession) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoteAccessSession) GoString() string { return s.String() } // A request representing an offering renewal. type RenewOfferingInput struct { _ struct{} `type:"structure"` // The ID of a request to renew an offering. OfferingId *string `locationName:"offeringId" min:"32" type:"string"` // The quantity requested in an offering renewal. Quantity *int64 `locationName:"quantity" type:"integer"` } // String returns the string representation func (s RenewOfferingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RenewOfferingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RenewOfferingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RenewOfferingInput"} if s.OfferingId != nil && len(*s.OfferingId) < 32 { invalidParams.Add(request.NewErrParamMinLen("OfferingId", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a renewal offering. type RenewOfferingOutput struct { _ struct{} `type:"structure"` // Represents the status of the offering transaction for the renewal. OfferingTransaction *OfferingTransaction `locationName:"offeringTransaction" type:"structure"` } // String returns the string representation func (s RenewOfferingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RenewOfferingOutput) GoString() string { return s.String() } // Represents the screen resolution of a device in height and width, expressed // in pixels. type Resolution struct { _ struct{} `type:"structure"` // The screen resolution's height, expressed in pixels. Height *int64 `locationName:"height" type:"integer"` // The screen resolution's width, expressed in pixels. Width *int64 `locationName:"width" type:"integer"` } // String returns the string representation func (s Resolution) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Resolution) GoString() string { return s.String() } // Represents a condition for a device pool. type Rule struct { _ struct{} `type:"structure"` // The rule's stringified attribute. For example, specify the value as "\"abc\"". // // Allowed values include: // // * ARN: The ARN. // // * FORM_FACTOR: The form factor (for example, phone or tablet). // // * MANUFACTURER: The manufacturer. // // * PLATFORM: The platform (for example, Android or iOS). Attribute *string `locationName:"attribute" type:"string" enum:"DeviceAttribute"` // The rule's operator. // // * EQUALS: The equals operator. // // * GREATER_THAN: The greater-than operator. // // * IN: The in operator. // // * LESS_THAN: The less-than operator. // // * NOT_IN: The not-in operator. Operator *string `locationName:"operator" type:"string" enum:"RuleOperator"` // The rule's value. Value *string `locationName:"value" type:"string"` } // String returns the string representation func (s Rule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Rule) GoString() string { return s.String() } // Represents an app on a set of devices with a specific test and configuration. type Run struct { _ struct{} `type:"structure"` // The run's ARN. Arn *string `locationName:"arn" min:"32" type:"string"` // Specifies the billing method for a test run: metered or unmetered. If the // parameter is not specified, the default value is metered. BillingMethod *string `locationName:"billingMethod" type:"string" enum:"BillingMethod"` // The total number of completed jobs. CompletedJobs *int64 `locationName:"completedJobs" type:"integer"` // The run's result counters. Counters *Counters `locationName:"counters" type:"structure"` // When the run was created. Created *time.Time `locationName:"created" type:"timestamp" timestampFormat:"unix"` // Represents the total (metered or unmetered) minutes used by the test run. DeviceMinutes *DeviceMinutes `locationName:"deviceMinutes" type:"structure"` // A message about the run's result. Message *string `locationName:"message" type:"string"` // The run's name. Name *string `locationName:"name" type:"string"` // The run's platform. // // Allowed values include: // // * ANDROID: The Android platform. // // * IOS: The iOS platform. Platform *string `locationName:"platform" type:"string" enum:"DevicePlatform"` // The run's result. // // Allowed values include: // // * PENDING: A pending condition. // // * PASSED: A passing condition. // // * WARNED: A warning condition. // // * FAILED: A failed condition. // // * SKIPPED: A skipped condition. // // * ERRORED: An error condition. // // * STOPPED: A stopped condition. Result *string `locationName:"result" type:"string" enum:"ExecutionResult"` // The run's start time. Started *time.Time `locationName:"started" type:"timestamp" timestampFormat:"unix"` // The run's status. // // Allowed values include: // // * PENDING: A pending status. // // * PENDING_CONCURRENCY: A pending concurrency status. // // * PENDING_DEVICE: A pending device status. // // * PROCESSING: A processing status. // // * SCHEDULING: A scheduling status. // // * PREPARING: A preparing status. // // * RUNNING: A running status. // // * COMPLETED: A completed status. // // * STOPPING: A stopping status. Status *string `locationName:"status" type:"string" enum:"ExecutionStatus"` // The run's stop time. Stopped *time.Time `locationName:"stopped" type:"timestamp" timestampFormat:"unix"` // The total number of jobs for the run. TotalJobs *int64 `locationName:"totalJobs" type:"integer"` // The run's type. // // Must be one of the following values: // // * BUILTIN_FUZZ: The built-in fuzz type. // // * BUILTIN_EXPLORER: For Android, an app explorer that will traverse an // Android app, interacting with it and capturing screenshots at the same // time. // // * APPIUM_JAVA_JUNIT: The Appium Java JUnit type. // // * APPIUM_JAVA_TESTNG: The Appium Java TestNG type. // // * APPIUM_PYTHON: The Appium Python type. // // * APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps. // // * APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps. // // * APPIUM_WEB_PYTHON: The Appium Python type for Web apps. // // * CALABASH: The Calabash type. // // * INSTRUMENTATION: The Instrumentation type. // // * UIAUTOMATION: The uiautomation type. // // * UIAUTOMATOR: The uiautomator type. // // * XCTEST: The XCode test type. // // * XCTEST_UI: The XCode UI test type. Type *string `locationName:"type" type:"string" enum:"TestType"` } // String returns the string representation func (s Run) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Run) GoString() string { return s.String() } // Represents a sample of performance data. type Sample struct { _ struct{} `type:"structure"` // The sample's ARN. Arn *string `locationName:"arn" min:"32" type:"string"` // The sample's type. // // Must be one of the following values: // // * CPU: A CPU sample type. This is expressed as the app processing CPU // time (including child processes) as reported by process, as a percentage. // // * MEMORY: A memory usage sample type. This is expressed as the total proportional // set size of an app process, in kilobytes. // // * NATIVE_AVG_DRAWTIME // // * NATIVE_FPS // // * NATIVE_FRAMES // // * NATIVE_MAX_DRAWTIME // // * NATIVE_MIN_DRAWTIME // // * OPENGL_AVG_DRAWTIME // // * OPENGL_FPS // // * OPENGL_FRAMES // // * OPENGL_MAX_DRAWTIME // // * OPENGL_MIN_DRAWTIME // // * RX // // * RX_RATE: The total number of bytes per second (TCP and UDP) that are // sent, by app process. // // * THREADS: A threads sample type. This is expressed as the total number // of threads per app process. // // * TX // // * TX_RATE: The total number of bytes per second (TCP and UDP) that are // received, by app process. Type *string `locationName:"type" type:"string" enum:"SampleType"` // The pre-signed Amazon S3 URL that can be used with a corresponding GET request // to download the sample's file. Url *string `locationName:"url" type:"string"` } // String returns the string representation func (s Sample) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Sample) GoString() string { return s.String() } // Represents the settings for a run. Includes things like location, radio states, // auxiliary apps, and network profiles. type ScheduleRunConfiguration struct { _ struct{} `type:"structure"` // A list of auxiliary apps for the run. AuxiliaryApps []*string `locationName:"auxiliaryApps" type:"list"` // Specifies the billing method for a test run: metered or unmetered. If the // parameter is not specified, the default value is metered. BillingMethod *string `locationName:"billingMethod" type:"string" enum:"BillingMethod"` // The ARN of the extra data for the run. The extra data is a .zip file that // AWS Device Farm will extract to external data for Android or the app's sandbox // for iOS. ExtraDataPackageArn *string `locationName:"extraDataPackageArn" min:"32" type:"string"` // Information about the locale that is used for the run. Locale *string `locationName:"locale" type:"string"` // Information about the location that is used for the run. Location *Location `locationName:"location" type:"structure"` // Reserved for internal use. NetworkProfileArn *string `locationName:"networkProfileArn" min:"32" type:"string"` // Information about the radio states for the run. Radios *Radios `locationName:"radios" type:"structure"` } // String returns the string representation func (s ScheduleRunConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduleRunConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ScheduleRunConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ScheduleRunConfiguration"} if s.ExtraDataPackageArn != nil && len(*s.ExtraDataPackageArn) < 32 { invalidParams.Add(request.NewErrParamMinLen("ExtraDataPackageArn", 32)) } if s.NetworkProfileArn != nil && len(*s.NetworkProfileArn) < 32 { invalidParams.Add(request.NewErrParamMinLen("NetworkProfileArn", 32)) } if s.Location != nil { if err := s.Location.Validate(); err != nil { invalidParams.AddNested("Location", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a request to the schedule run operation. type ScheduleRunInput struct { _ struct{} `type:"structure"` // The ARN of the app to schedule a run. AppArn *string `locationName:"appArn" min:"32" type:"string"` // Information about the settings for the run to be scheduled. Configuration *ScheduleRunConfiguration `locationName:"configuration" type:"structure"` // The ARN of the device pool for the run to be scheduled. // // DevicePoolArn is a required field DevicePoolArn *string `locationName:"devicePoolArn" min:"32" type:"string" required:"true"` // The name for the run to be scheduled. Name *string `locationName:"name" type:"string"` // The ARN of the project for the run to be scheduled. // // ProjectArn is a required field ProjectArn *string `locationName:"projectArn" min:"32" type:"string" required:"true"` // Information about the test for the run to be scheduled. // // Test is a required field Test *ScheduleRunTest `locationName:"test" type:"structure" required:"true"` } // String returns the string representation func (s ScheduleRunInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduleRunInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ScheduleRunInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ScheduleRunInput"} if s.AppArn != nil && len(*s.AppArn) < 32 { invalidParams.Add(request.NewErrParamMinLen("AppArn", 32)) } if s.DevicePoolArn == nil { invalidParams.Add(request.NewErrParamRequired("DevicePoolArn")) } if s.DevicePoolArn != nil && len(*s.DevicePoolArn) < 32 { invalidParams.Add(request.NewErrParamMinLen("DevicePoolArn", 32)) } if s.ProjectArn == nil { invalidParams.Add(request.NewErrParamRequired("ProjectArn")) } if s.ProjectArn != nil && len(*s.ProjectArn) < 32 { invalidParams.Add(request.NewErrParamMinLen("ProjectArn", 32)) } if s.Test == nil { invalidParams.Add(request.NewErrParamRequired("Test")) } if s.Configuration != nil { if err := s.Configuration.Validate(); err != nil { invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams)) } } if s.Test != nil { if err := s.Test.Validate(); err != nil { invalidParams.AddNested("Test", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of a schedule run request. type ScheduleRunOutput struct { _ struct{} `type:"structure"` // Information about the scheduled run. Run *Run `locationName:"run" type:"structure"` } // String returns the string representation func (s ScheduleRunOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduleRunOutput) GoString() string { return s.String() } // Represents additional test settings. type ScheduleRunTest struct { _ struct{} `type:"structure"` // The test's filter. Filter *string `locationName:"filter" type:"string"` // The test's parameters, such as test framework parameters and fixture settings. Parameters map[string]*string `locationName:"parameters" type:"map"` // The ARN of the uploaded test that will be run. TestPackageArn *string `locationName:"testPackageArn" min:"32" type:"string"` // The test's type. // // Must be one of the following values: // // * BUILTIN_FUZZ: The built-in fuzz type. // // * BUILTIN_EXPLORER: For Android, an app explorer that will traverse an // Android app, interacting with it and capturing screenshots at the same // time. // // * APPIUM_JAVA_JUNIT: The Appium Java JUnit type. // // * APPIUM_JAVA_TESTNG: The Appium Java TestNG type. // // * APPIUM_PYTHON: The Appium Python type. // // * APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps. // // * APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps. // // * APPIUM_WEB_PYTHON: The Appium Python type for Web apps. // // * CALABASH: The Calabash type. // // * INSTRUMENTATION: The Instrumentation type. // // * UIAUTOMATION: The uiautomation type. // // * UIAUTOMATOR: The uiautomator type. // // * XCTEST: The XCode test type. // // * XCTEST_UI: The XCode UI test type. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"TestType"` } // String returns the string representation func (s ScheduleRunTest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduleRunTest) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ScheduleRunTest) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ScheduleRunTest"} if s.TestPackageArn != nil && len(*s.TestPackageArn) < 32 { invalidParams.Add(request.NewErrParamMinLen("TestPackageArn", 32)) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the request to stop the remote access session. type StopRemoteAccessSessionInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the remote access session you wish to stop. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` } // String returns the string representation func (s StopRemoteAccessSessionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopRemoteAccessSessionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StopRemoteAccessSessionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StopRemoteAccessSessionInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the response from the server that describes the remote access // session when AWS Device Farm stops the session. type StopRemoteAccessSessionOutput struct { _ struct{} `type:"structure"` // A container representing the metadata from the service about the remote access // session you are stopping. RemoteAccessSession *RemoteAccessSession `locationName:"remoteAccessSession" type:"structure"` } // String returns the string representation func (s StopRemoteAccessSessionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopRemoteAccessSessionOutput) GoString() string { return s.String() } // Represents the request to stop a specific run. type StopRunInput struct { _ struct{} `type:"structure"` // Represents the Amazon Resource Name (ARN) of the Device Farm run you wish // to stop. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` } // String returns the string representation func (s StopRunInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopRunInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StopRunInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StopRunInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the results of your stop run attempt. type StopRunOutput struct { _ struct{} `type:"structure"` // Represents an app on a set of devices with a specific test and configuration. Run *Run `locationName:"run" type:"structure"` } // String returns the string representation func (s StopRunOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopRunOutput) GoString() string { return s.String() } // Represents a collection of one or more tests. type Suite struct { _ struct{} `type:"structure"` // The suite's ARN. Arn *string `locationName:"arn" min:"32" type:"string"` // The suite's result counters. Counters *Counters `locationName:"counters" type:"structure"` // When the suite was created. Created *time.Time `locationName:"created" type:"timestamp" timestampFormat:"unix"` // Represents the total (metered or unmetered) minutes used by the test suite. DeviceMinutes *DeviceMinutes `locationName:"deviceMinutes" type:"structure"` // A message about the suite's result. Message *string `locationName:"message" type:"string"` // The suite's name. Name *string `locationName:"name" type:"string"` // The suite's result. // // Allowed values include: // // * PENDING: A pending condition. // // * PASSED: A passing condition. // // * WARNED: A warning condition. // // * FAILED: A failed condition. // // * SKIPPED: A skipped condition. // // * ERRORED: An error condition. // // * STOPPED: A stopped condition. Result *string `locationName:"result" type:"string" enum:"ExecutionResult"` // The suite's start time. Started *time.Time `locationName:"started" type:"timestamp" timestampFormat:"unix"` // The suite's status. // // Allowed values include: // // * PENDING: A pending status. // // * PENDING_CONCURRENCY: A pending concurrency status. // // * PENDING_DEVICE: A pending device status. // // * PROCESSING: A processing status. // // * SCHEDULING: A scheduling status. // // * PREPARING: A preparing status. // // * RUNNING: A running status. // // * COMPLETED: A completed status. // // * STOPPING: A stopping status. Status *string `locationName:"status" type:"string" enum:"ExecutionStatus"` // The suite's stop time. Stopped *time.Time `locationName:"stopped" type:"timestamp" timestampFormat:"unix"` // The suite's type. // // Must be one of the following values: // // * BUILTIN_FUZZ: The built-in fuzz type. // // * BUILTIN_EXPLORER: For Android, an app explorer that will traverse an // Android app, interacting with it and capturing screenshots at the same // time. // // * APPIUM_JAVA_JUNIT: The Appium Java JUnit type. // // * APPIUM_JAVA_TESTNG: The Appium Java TestNG type. // // * APPIUM_PYTHON: The Appium Python type. // // * APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps. // // * APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps. // // * APPIUM_WEB_PYTHON: The Appium Python type for Web apps. // // * CALABASH: The Calabash type. // // * INSTRUMENTATION: The Instrumentation type. // // * UIAUTOMATION: The uiautomation type. // // * UIAUTOMATOR: The uiautomator type. // // * XCTEST: The XCode test type. // // * XCTEST_UI: The XCode UI test type. Type *string `locationName:"type" type:"string" enum:"TestType"` } // String returns the string representation func (s Suite) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Suite) GoString() string { return s.String() } // Represents a condition that is evaluated. type Test struct { _ struct{} `type:"structure"` // The test's ARN. Arn *string `locationName:"arn" min:"32" type:"string"` // The test's result counters. Counters *Counters `locationName:"counters" type:"structure"` // When the test was created. Created *time.Time `locationName:"created" type:"timestamp" timestampFormat:"unix"` // Represents the total (metered or unmetered) minutes used by the test. DeviceMinutes *DeviceMinutes `locationName:"deviceMinutes" type:"structure"` // A message about the test's result. Message *string `locationName:"message" type:"string"` // The test's name. Name *string `locationName:"name" type:"string"` // The test's result. // // Allowed values include: // // * PENDING: A pending condition. // // * PASSED: A passing condition. // // * WARNED: A warning condition. // // * FAILED: A failed condition. // // * SKIPPED: A skipped condition. // // * ERRORED: An error condition. // // * STOPPED: A stopped condition. Result *string `locationName:"result" type:"string" enum:"ExecutionResult"` // The test's start time. Started *time.Time `locationName:"started" type:"timestamp" timestampFormat:"unix"` // The test's status. // // Allowed values include: // // * PENDING: A pending status. // // * PENDING_CONCURRENCY: A pending concurrency status. // // * PENDING_DEVICE: A pending device status. // // * PROCESSING: A processing status. // // * SCHEDULING: A scheduling status. // // * PREPARING: A preparing status. // // * RUNNING: A running status. // // * COMPLETED: A completed status. // // * STOPPING: A stopping status. Status *string `locationName:"status" type:"string" enum:"ExecutionStatus"` // The test's stop time. Stopped *time.Time `locationName:"stopped" type:"timestamp" timestampFormat:"unix"` // The test's type. // // Must be one of the following values: // // * BUILTIN_FUZZ: The built-in fuzz type. // // * BUILTIN_EXPLORER: For Android, an app explorer that will traverse an // Android app, interacting with it and capturing screenshots at the same // time. // // * APPIUM_JAVA_JUNIT: The Appium Java JUnit type. // // * APPIUM_JAVA_TESTNG: The Appium Java TestNG type. // // * APPIUM_PYTHON: The Appium Python type. // // * APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps. // // * APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps. // // * APPIUM_WEB_PYTHON: The Appium Python type for Web apps. // // * CALABASH: The Calabash type. // // * INSTRUMENTATION: The Instrumentation type. // // * UIAUTOMATION: The uiautomation type. // // * UIAUTOMATOR: The uiautomator type. // // * XCTEST: The XCode test type. // // * XCTEST_UI: The XCode UI test type. Type *string `locationName:"type" type:"string" enum:"TestType"` } // String returns the string representation func (s Test) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Test) GoString() string { return s.String() } // A collection of one or more problems, grouped by their result. type UniqueProblem struct { _ struct{} `type:"structure"` // A message about the unique problems' result. Message *string `locationName:"message" type:"string"` // Information about the problems. Problems []*Problem `locationName:"problems" type:"list"` } // String returns the string representation func (s UniqueProblem) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UniqueProblem) GoString() string { return s.String() } // Represents a request to the update device pool operation. type UpdateDevicePoolInput struct { _ struct{} `type:"structure"` // The Amazon Resourc Name (ARN) of the Device Farm device pool you wish to // update. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` // A description of the device pool you wish to update. Description *string `locationName:"description" type:"string"` // A string representing the name of the device pool you wish to update. Name *string `locationName:"name" type:"string"` // Represents the rules you wish to modify for the device pool. Updating rules // is optional; however, if you choose to update rules for your request, the // update will replace the existing rules. Rules []*Rule `locationName:"rules" type:"list"` } // String returns the string representation func (s UpdateDevicePoolInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDevicePoolInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateDevicePoolInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateDevicePoolInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of an update device pool request. type UpdateDevicePoolOutput struct { _ struct{} `type:"structure"` // Represents a collection of device types. DevicePool *DevicePool `locationName:"devicePool" type:"structure"` } // String returns the string representation func (s UpdateDevicePoolOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDevicePoolOutput) GoString() string { return s.String() } // Represents a request to the update project operation. type UpdateProjectInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the project whose name you wish to update. // // Arn is a required field Arn *string `locationName:"arn" min:"32" type:"string" required:"true"` // A string representing the new name of the project that you are updating. Name *string `locationName:"name" type:"string"` } // String returns the string representation func (s UpdateProjectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateProjectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateProjectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateProjectInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 32 { invalidParams.Add(request.NewErrParamMinLen("Arn", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of an update project request. type UpdateProjectOutput struct { _ struct{} `type:"structure"` // Represents an operating-system neutral workspace for running and managing // tests. Project *Project `locationName:"project" type:"structure"` } // String returns the string representation func (s UpdateProjectOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateProjectOutput) GoString() string { return s.String() } // An app or a set of one or more tests to upload or that have been uploaded. type Upload struct { _ struct{} `type:"structure"` // The upload's ARN. Arn *string `locationName:"arn" min:"32" type:"string"` // The upload's content type (for example, "application/octet-stream"). ContentType *string `locationName:"contentType" type:"string"` // When the upload was created. Created *time.Time `locationName:"created" type:"timestamp" timestampFormat:"unix"` // A message about the upload's result. Message *string `locationName:"message" type:"string"` // The upload's metadata. For example, for Android, this contains information // that is parsed from the manifest and is displayed in the AWS Device Farm // console after the associated app is uploaded. Metadata *string `locationName:"metadata" type:"string"` // The upload's file name. Name *string `locationName:"name" type:"string"` // The upload's status. // // Must be one of the following values: // // * FAILED: A failed status. // // * INITIALIZED: An initialized status. // // * PROCESSING: A processing status. // // * SUCCEEDED: A succeeded status. Status *string `locationName:"status" type:"string" enum:"UploadStatus"` // The upload's type. // // Must be one of the following values: // // * ANDROID_APP: An Android upload. // // * IOS_APP: An iOS upload. // // * WEB_APP: A web appliction upload. // // * EXTERNAL_DATA: An external data upload. // // * APPIUM_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package upload. // // * APPIUM_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package // upload. // // * APPIUM_PYTHON_TEST_PACKAGE: An Appium Python test package upload. // // * APPIUM_WEB_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package // upload. // // * APPIUM_WEB_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package // upload. // // * APPIUM_WEB_PYTHON_TEST_PACKAGE: An Appium Python test package upload. // // * CALABASH_TEST_PACKAGE: A Calabash test package upload. // // * INSTRUMENTATION_TEST_PACKAGE: An instrumentation upload. // // * UIAUTOMATION_TEST_PACKAGE: A uiautomation test package upload. // // * UIAUTOMATOR_TEST_PACKAGE: A uiautomator test package upload. // // * XCTEST_TEST_PACKAGE: An XCode test package upload. // // * XCTEST_UI_TEST_PACKAGE: An XCode UI test package upload. Type *string `locationName:"type" type:"string" enum:"UploadType"` // The pre-signed Amazon S3 URL that was used to store a file through a corresponding // PUT request. Url *string `locationName:"url" type:"string"` } // String returns the string representation func (s Upload) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Upload) GoString() string { return s.String() } const ( // ArtifactCategoryScreenshot is a ArtifactCategory enum value ArtifactCategoryScreenshot = "SCREENSHOT" // ArtifactCategoryFile is a ArtifactCategory enum value ArtifactCategoryFile = "FILE" // ArtifactCategoryLog is a ArtifactCategory enum value ArtifactCategoryLog = "LOG" ) const ( // ArtifactTypeUnknown is a ArtifactType enum value ArtifactTypeUnknown = "UNKNOWN" // ArtifactTypeScreenshot is a ArtifactType enum value ArtifactTypeScreenshot = "SCREENSHOT" // ArtifactTypeDeviceLog is a ArtifactType enum value ArtifactTypeDeviceLog = "DEVICE_LOG" // ArtifactTypeMessageLog is a ArtifactType enum value ArtifactTypeMessageLog = "MESSAGE_LOG" // ArtifactTypeVideoLog is a ArtifactType enum value ArtifactTypeVideoLog = "VIDEO_LOG" // ArtifactTypeResultLog is a ArtifactType enum value ArtifactTypeResultLog = "RESULT_LOG" // ArtifactTypeServiceLog is a ArtifactType enum value ArtifactTypeServiceLog = "SERVICE_LOG" // ArtifactTypeWebkitLog is a ArtifactType enum value ArtifactTypeWebkitLog = "WEBKIT_LOG" // ArtifactTypeInstrumentationOutput is a ArtifactType enum value ArtifactTypeInstrumentationOutput = "INSTRUMENTATION_OUTPUT" // ArtifactTypeExerciserMonkeyOutput is a ArtifactType enum value ArtifactTypeExerciserMonkeyOutput = "EXERCISER_MONKEY_OUTPUT" // ArtifactTypeCalabashJsonOutput is a ArtifactType enum value ArtifactTypeCalabashJsonOutput = "CALABASH_JSON_OUTPUT" // ArtifactTypeCalabashPrettyOutput is a ArtifactType enum value ArtifactTypeCalabashPrettyOutput = "CALABASH_PRETTY_OUTPUT" // ArtifactTypeCalabashStandardOutput is a ArtifactType enum value ArtifactTypeCalabashStandardOutput = "CALABASH_STANDARD_OUTPUT" // ArtifactTypeCalabashJavaXmlOutput is a ArtifactType enum value ArtifactTypeCalabashJavaXmlOutput = "CALABASH_JAVA_XML_OUTPUT" // ArtifactTypeAutomationOutput is a ArtifactType enum value ArtifactTypeAutomationOutput = "AUTOMATION_OUTPUT" // ArtifactTypeAppiumServerOutput is a ArtifactType enum value ArtifactTypeAppiumServerOutput = "APPIUM_SERVER_OUTPUT" // ArtifactTypeAppiumJavaOutput is a ArtifactType enum value ArtifactTypeAppiumJavaOutput = "APPIUM_JAVA_OUTPUT" // ArtifactTypeAppiumJavaXmlOutput is a ArtifactType enum value ArtifactTypeAppiumJavaXmlOutput = "APPIUM_JAVA_XML_OUTPUT" // ArtifactTypeAppiumPythonOutput is a ArtifactType enum value ArtifactTypeAppiumPythonOutput = "APPIUM_PYTHON_OUTPUT" // ArtifactTypeAppiumPythonXmlOutput is a ArtifactType enum value ArtifactTypeAppiumPythonXmlOutput = "APPIUM_PYTHON_XML_OUTPUT" // ArtifactTypeExplorerEventLog is a ArtifactType enum value ArtifactTypeExplorerEventLog = "EXPLORER_EVENT_LOG" // ArtifactTypeExplorerSummaryLog is a ArtifactType enum value ArtifactTypeExplorerSummaryLog = "EXPLORER_SUMMARY_LOG" // ArtifactTypeApplicationCrashReport is a ArtifactType enum value ArtifactTypeApplicationCrashReport = "APPLICATION_CRASH_REPORT" // ArtifactTypeXctestLog is a ArtifactType enum value ArtifactTypeXctestLog = "XCTEST_LOG" // ArtifactTypeVideo is a ArtifactType enum value ArtifactTypeVideo = "VIDEO" ) const ( // BillingMethodMetered is a BillingMethod enum value BillingMethodMetered = "METERED" // BillingMethodUnmetered is a BillingMethod enum value BillingMethodUnmetered = "UNMETERED" ) const ( // CurrencyCodeUsd is a CurrencyCode enum value CurrencyCodeUsd = "USD" ) const ( // DeviceAttributeArn is a DeviceAttribute enum value DeviceAttributeArn = "ARN" // DeviceAttributePlatform is a DeviceAttribute enum value DeviceAttributePlatform = "PLATFORM" // DeviceAttributeFormFactor is a DeviceAttribute enum value DeviceAttributeFormFactor = "FORM_FACTOR" // DeviceAttributeManufacturer is a DeviceAttribute enum value DeviceAttributeManufacturer = "MANUFACTURER" // DeviceAttributeRemoteAccessEnabled is a DeviceAttribute enum value DeviceAttributeRemoteAccessEnabled = "REMOTE_ACCESS_ENABLED" ) const ( // DeviceFormFactorPhone is a DeviceFormFactor enum value DeviceFormFactorPhone = "PHONE" // DeviceFormFactorTablet is a DeviceFormFactor enum value DeviceFormFactorTablet = "TABLET" ) const ( // DevicePlatformAndroid is a DevicePlatform enum value DevicePlatformAndroid = "ANDROID" // DevicePlatformIos is a DevicePlatform enum value DevicePlatformIos = "IOS" ) const ( // DevicePoolTypeCurated is a DevicePoolType enum value DevicePoolTypeCurated = "CURATED" // DevicePoolTypePrivate is a DevicePoolType enum value DevicePoolTypePrivate = "PRIVATE" ) const ( // ExecutionResultPending is a ExecutionResult enum value ExecutionResultPending = "PENDING" // ExecutionResultPassed is a ExecutionResult enum value ExecutionResultPassed = "PASSED" // ExecutionResultWarned is a ExecutionResult enum value ExecutionResultWarned = "WARNED" // ExecutionResultFailed is a ExecutionResult enum value ExecutionResultFailed = "FAILED" // ExecutionResultSkipped is a ExecutionResult enum value ExecutionResultSkipped = "SKIPPED" // ExecutionResultErrored is a ExecutionResult enum value ExecutionResultErrored = "ERRORED" // ExecutionResultStopped is a ExecutionResult enum value ExecutionResultStopped = "STOPPED" ) const ( // ExecutionStatusPending is a ExecutionStatus enum value ExecutionStatusPending = "PENDING" // ExecutionStatusPendingConcurrency is a ExecutionStatus enum value ExecutionStatusPendingConcurrency = "PENDING_CONCURRENCY" // ExecutionStatusPendingDevice is a ExecutionStatus enum value ExecutionStatusPendingDevice = "PENDING_DEVICE" // ExecutionStatusProcessing is a ExecutionStatus enum value ExecutionStatusProcessing = "PROCESSING" // ExecutionStatusScheduling is a ExecutionStatus enum value ExecutionStatusScheduling = "SCHEDULING" // ExecutionStatusPreparing is a ExecutionStatus enum value ExecutionStatusPreparing = "PREPARING" // ExecutionStatusRunning is a ExecutionStatus enum value ExecutionStatusRunning = "RUNNING" // ExecutionStatusCompleted is a ExecutionStatus enum value ExecutionStatusCompleted = "COMPLETED" // ExecutionStatusStopping is a ExecutionStatus enum value ExecutionStatusStopping = "STOPPING" ) const ( // OfferingTransactionTypePurchase is a OfferingTransactionType enum value OfferingTransactionTypePurchase = "PURCHASE" // OfferingTransactionTypeRenew is a OfferingTransactionType enum value OfferingTransactionTypeRenew = "RENEW" // OfferingTransactionTypeSystem is a OfferingTransactionType enum value OfferingTransactionTypeSystem = "SYSTEM" ) const ( // OfferingTypeRecurring is a OfferingType enum value OfferingTypeRecurring = "RECURRING" ) const ( // RecurringChargeFrequencyMonthly is a RecurringChargeFrequency enum value RecurringChargeFrequencyMonthly = "MONTHLY" ) const ( // RuleOperatorEquals is a RuleOperator enum value RuleOperatorEquals = "EQUALS" // RuleOperatorLessThan is a RuleOperator enum value RuleOperatorLessThan = "LESS_THAN" // RuleOperatorGreaterThan is a RuleOperator enum value RuleOperatorGreaterThan = "GREATER_THAN" // RuleOperatorIn is a RuleOperator enum value RuleOperatorIn = "IN" // RuleOperatorNotIn is a RuleOperator enum value RuleOperatorNotIn = "NOT_IN" ) const ( // SampleTypeCpu is a SampleType enum value SampleTypeCpu = "CPU" // SampleTypeMemory is a SampleType enum value SampleTypeMemory = "MEMORY" // SampleTypeThreads is a SampleType enum value SampleTypeThreads = "THREADS" // SampleTypeRxRate is a SampleType enum value SampleTypeRxRate = "RX_RATE" // SampleTypeTxRate is a SampleType enum value SampleTypeTxRate = "TX_RATE" // SampleTypeRx is a SampleType enum value SampleTypeRx = "RX" // SampleTypeTx is a SampleType enum value SampleTypeTx = "TX" // SampleTypeNativeFrames is a SampleType enum value SampleTypeNativeFrames = "NATIVE_FRAMES" // SampleTypeNativeFps is a SampleType enum value SampleTypeNativeFps = "NATIVE_FPS" // SampleTypeNativeMinDrawtime is a SampleType enum value SampleTypeNativeMinDrawtime = "NATIVE_MIN_DRAWTIME" // SampleTypeNativeAvgDrawtime is a SampleType enum value SampleTypeNativeAvgDrawtime = "NATIVE_AVG_DRAWTIME" // SampleTypeNativeMaxDrawtime is a SampleType enum value SampleTypeNativeMaxDrawtime = "NATIVE_MAX_DRAWTIME" // SampleTypeOpenglFrames is a SampleType enum value SampleTypeOpenglFrames = "OPENGL_FRAMES" // SampleTypeOpenglFps is a SampleType enum value SampleTypeOpenglFps = "OPENGL_FPS" // SampleTypeOpenglMinDrawtime is a SampleType enum value SampleTypeOpenglMinDrawtime = "OPENGL_MIN_DRAWTIME" // SampleTypeOpenglAvgDrawtime is a SampleType enum value SampleTypeOpenglAvgDrawtime = "OPENGL_AVG_DRAWTIME" // SampleTypeOpenglMaxDrawtime is a SampleType enum value SampleTypeOpenglMaxDrawtime = "OPENGL_MAX_DRAWTIME" ) const ( // TestTypeBuiltinFuzz is a TestType enum value TestTypeBuiltinFuzz = "BUILTIN_FUZZ" // TestTypeBuiltinExplorer is a TestType enum value TestTypeBuiltinExplorer = "BUILTIN_EXPLORER" // TestTypeAppiumJavaJunit is a TestType enum value TestTypeAppiumJavaJunit = "APPIUM_JAVA_JUNIT" // TestTypeAppiumJavaTestng is a TestType enum value TestTypeAppiumJavaTestng = "APPIUM_JAVA_TESTNG" // TestTypeAppiumPython is a TestType enum value TestTypeAppiumPython = "APPIUM_PYTHON" // TestTypeAppiumWebJavaJunit is a TestType enum value TestTypeAppiumWebJavaJunit = "APPIUM_WEB_JAVA_JUNIT" // TestTypeAppiumWebJavaTestng is a TestType enum value TestTypeAppiumWebJavaTestng = "APPIUM_WEB_JAVA_TESTNG" // TestTypeAppiumWebPython is a TestType enum value TestTypeAppiumWebPython = "APPIUM_WEB_PYTHON" // TestTypeCalabash is a TestType enum value TestTypeCalabash = "CALABASH" // TestTypeInstrumentation is a TestType enum value TestTypeInstrumentation = "INSTRUMENTATION" // TestTypeUiautomation is a TestType enum value TestTypeUiautomation = "UIAUTOMATION" // TestTypeUiautomator is a TestType enum value TestTypeUiautomator = "UIAUTOMATOR" // TestTypeXctest is a TestType enum value TestTypeXctest = "XCTEST" // TestTypeXctestUi is a TestType enum value TestTypeXctestUi = "XCTEST_UI" ) const ( // UploadStatusInitialized is a UploadStatus enum value UploadStatusInitialized = "INITIALIZED" // UploadStatusProcessing is a UploadStatus enum value UploadStatusProcessing = "PROCESSING" // UploadStatusSucceeded is a UploadStatus enum value UploadStatusSucceeded = "SUCCEEDED" // UploadStatusFailed is a UploadStatus enum value UploadStatusFailed = "FAILED" ) const ( // UploadTypeAndroidApp is a UploadType enum value UploadTypeAndroidApp = "ANDROID_APP" // UploadTypeIosApp is a UploadType enum value UploadTypeIosApp = "IOS_APP" // UploadTypeWebApp is a UploadType enum value UploadTypeWebApp = "WEB_APP" // UploadTypeExternalData is a UploadType enum value UploadTypeExternalData = "EXTERNAL_DATA" // UploadTypeAppiumJavaJunitTestPackage is a UploadType enum value UploadTypeAppiumJavaJunitTestPackage = "APPIUM_JAVA_JUNIT_TEST_PACKAGE" // UploadTypeAppiumJavaTestngTestPackage is a UploadType enum value UploadTypeAppiumJavaTestngTestPackage = "APPIUM_JAVA_TESTNG_TEST_PACKAGE" // UploadTypeAppiumPythonTestPackage is a UploadType enum value UploadTypeAppiumPythonTestPackage = "APPIUM_PYTHON_TEST_PACKAGE" // UploadTypeAppiumWebJavaJunitTestPackage is a UploadType enum value UploadTypeAppiumWebJavaJunitTestPackage = "APPIUM_WEB_JAVA_JUNIT_TEST_PACKAGE" // UploadTypeAppiumWebJavaTestngTestPackage is a UploadType enum value UploadTypeAppiumWebJavaTestngTestPackage = "APPIUM_WEB_JAVA_TESTNG_TEST_PACKAGE" // UploadTypeAppiumWebPythonTestPackage is a UploadType enum value UploadTypeAppiumWebPythonTestPackage = "APPIUM_WEB_PYTHON_TEST_PACKAGE" // UploadTypeCalabashTestPackage is a UploadType enum value UploadTypeCalabashTestPackage = "CALABASH_TEST_PACKAGE" // UploadTypeInstrumentationTestPackage is a UploadType enum value UploadTypeInstrumentationTestPackage = "INSTRUMENTATION_TEST_PACKAGE" // UploadTypeUiautomationTestPackage is a UploadType enum value UploadTypeUiautomationTestPackage = "UIAUTOMATION_TEST_PACKAGE" // UploadTypeUiautomatorTestPackage is a UploadType enum value UploadTypeUiautomatorTestPackage = "UIAUTOMATOR_TEST_PACKAGE" // UploadTypeXctestTestPackage is a UploadType enum value UploadTypeXctestTestPackage = "XCTEST_TEST_PACKAGE" // UploadTypeXctestUiTestPackage is a UploadType enum value UploadTypeXctestUiTestPackage = "XCTEST_UI_TEST_PACKAGE" ) aws-sdk-go-1.4.22/service/devicefarm/devicefarmiface/000077500000000000000000000000001300374646400224255ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/devicefarm/devicefarmiface/interface.go000066400000000000000000000302541300374646400247200ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package devicefarmiface provides an interface to enable mocking the AWS Device Farm service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package devicefarmiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/devicefarm" ) // DeviceFarmAPI provides an interface to enable mocking the // devicefarm.DeviceFarm service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Device Farm. // func myFunc(svc devicefarmiface.DeviceFarmAPI) bool { // // Make svc.CreateDevicePool request // } // // func main() { // sess := session.New() // svc := devicefarm.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockDeviceFarmClient struct { // devicefarmiface.DeviceFarmAPI // } // func (m *mockDeviceFarmClient) CreateDevicePool(input *devicefarm.CreateDevicePoolInput) (*devicefarm.CreateDevicePoolOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockDeviceFarmClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type DeviceFarmAPI interface { CreateDevicePoolRequest(*devicefarm.CreateDevicePoolInput) (*request.Request, *devicefarm.CreateDevicePoolOutput) CreateDevicePool(*devicefarm.CreateDevicePoolInput) (*devicefarm.CreateDevicePoolOutput, error) CreateProjectRequest(*devicefarm.CreateProjectInput) (*request.Request, *devicefarm.CreateProjectOutput) CreateProject(*devicefarm.CreateProjectInput) (*devicefarm.CreateProjectOutput, error) CreateRemoteAccessSessionRequest(*devicefarm.CreateRemoteAccessSessionInput) (*request.Request, *devicefarm.CreateRemoteAccessSessionOutput) CreateRemoteAccessSession(*devicefarm.CreateRemoteAccessSessionInput) (*devicefarm.CreateRemoteAccessSessionOutput, error) CreateUploadRequest(*devicefarm.CreateUploadInput) (*request.Request, *devicefarm.CreateUploadOutput) CreateUpload(*devicefarm.CreateUploadInput) (*devicefarm.CreateUploadOutput, error) DeleteDevicePoolRequest(*devicefarm.DeleteDevicePoolInput) (*request.Request, *devicefarm.DeleteDevicePoolOutput) DeleteDevicePool(*devicefarm.DeleteDevicePoolInput) (*devicefarm.DeleteDevicePoolOutput, error) DeleteProjectRequest(*devicefarm.DeleteProjectInput) (*request.Request, *devicefarm.DeleteProjectOutput) DeleteProject(*devicefarm.DeleteProjectInput) (*devicefarm.DeleteProjectOutput, error) DeleteRemoteAccessSessionRequest(*devicefarm.DeleteRemoteAccessSessionInput) (*request.Request, *devicefarm.DeleteRemoteAccessSessionOutput) DeleteRemoteAccessSession(*devicefarm.DeleteRemoteAccessSessionInput) (*devicefarm.DeleteRemoteAccessSessionOutput, error) DeleteRunRequest(*devicefarm.DeleteRunInput) (*request.Request, *devicefarm.DeleteRunOutput) DeleteRun(*devicefarm.DeleteRunInput) (*devicefarm.DeleteRunOutput, error) DeleteUploadRequest(*devicefarm.DeleteUploadInput) (*request.Request, *devicefarm.DeleteUploadOutput) DeleteUpload(*devicefarm.DeleteUploadInput) (*devicefarm.DeleteUploadOutput, error) GetAccountSettingsRequest(*devicefarm.GetAccountSettingsInput) (*request.Request, *devicefarm.GetAccountSettingsOutput) GetAccountSettings(*devicefarm.GetAccountSettingsInput) (*devicefarm.GetAccountSettingsOutput, error) GetDeviceRequest(*devicefarm.GetDeviceInput) (*request.Request, *devicefarm.GetDeviceOutput) GetDevice(*devicefarm.GetDeviceInput) (*devicefarm.GetDeviceOutput, error) GetDevicePoolRequest(*devicefarm.GetDevicePoolInput) (*request.Request, *devicefarm.GetDevicePoolOutput) GetDevicePool(*devicefarm.GetDevicePoolInput) (*devicefarm.GetDevicePoolOutput, error) GetDevicePoolCompatibilityRequest(*devicefarm.GetDevicePoolCompatibilityInput) (*request.Request, *devicefarm.GetDevicePoolCompatibilityOutput) GetDevicePoolCompatibility(*devicefarm.GetDevicePoolCompatibilityInput) (*devicefarm.GetDevicePoolCompatibilityOutput, error) GetJobRequest(*devicefarm.GetJobInput) (*request.Request, *devicefarm.GetJobOutput) GetJob(*devicefarm.GetJobInput) (*devicefarm.GetJobOutput, error) GetOfferingStatusRequest(*devicefarm.GetOfferingStatusInput) (*request.Request, *devicefarm.GetOfferingStatusOutput) GetOfferingStatus(*devicefarm.GetOfferingStatusInput) (*devicefarm.GetOfferingStatusOutput, error) GetOfferingStatusPages(*devicefarm.GetOfferingStatusInput, func(*devicefarm.GetOfferingStatusOutput, bool) bool) error GetProjectRequest(*devicefarm.GetProjectInput) (*request.Request, *devicefarm.GetProjectOutput) GetProject(*devicefarm.GetProjectInput) (*devicefarm.GetProjectOutput, error) GetRemoteAccessSessionRequest(*devicefarm.GetRemoteAccessSessionInput) (*request.Request, *devicefarm.GetRemoteAccessSessionOutput) GetRemoteAccessSession(*devicefarm.GetRemoteAccessSessionInput) (*devicefarm.GetRemoteAccessSessionOutput, error) GetRunRequest(*devicefarm.GetRunInput) (*request.Request, *devicefarm.GetRunOutput) GetRun(*devicefarm.GetRunInput) (*devicefarm.GetRunOutput, error) GetSuiteRequest(*devicefarm.GetSuiteInput) (*request.Request, *devicefarm.GetSuiteOutput) GetSuite(*devicefarm.GetSuiteInput) (*devicefarm.GetSuiteOutput, error) GetTestRequest(*devicefarm.GetTestInput) (*request.Request, *devicefarm.GetTestOutput) GetTest(*devicefarm.GetTestInput) (*devicefarm.GetTestOutput, error) GetUploadRequest(*devicefarm.GetUploadInput) (*request.Request, *devicefarm.GetUploadOutput) GetUpload(*devicefarm.GetUploadInput) (*devicefarm.GetUploadOutput, error) InstallToRemoteAccessSessionRequest(*devicefarm.InstallToRemoteAccessSessionInput) (*request.Request, *devicefarm.InstallToRemoteAccessSessionOutput) InstallToRemoteAccessSession(*devicefarm.InstallToRemoteAccessSessionInput) (*devicefarm.InstallToRemoteAccessSessionOutput, error) ListArtifactsRequest(*devicefarm.ListArtifactsInput) (*request.Request, *devicefarm.ListArtifactsOutput) ListArtifacts(*devicefarm.ListArtifactsInput) (*devicefarm.ListArtifactsOutput, error) ListArtifactsPages(*devicefarm.ListArtifactsInput, func(*devicefarm.ListArtifactsOutput, bool) bool) error ListDevicePoolsRequest(*devicefarm.ListDevicePoolsInput) (*request.Request, *devicefarm.ListDevicePoolsOutput) ListDevicePools(*devicefarm.ListDevicePoolsInput) (*devicefarm.ListDevicePoolsOutput, error) ListDevicePoolsPages(*devicefarm.ListDevicePoolsInput, func(*devicefarm.ListDevicePoolsOutput, bool) bool) error ListDevicesRequest(*devicefarm.ListDevicesInput) (*request.Request, *devicefarm.ListDevicesOutput) ListDevices(*devicefarm.ListDevicesInput) (*devicefarm.ListDevicesOutput, error) ListDevicesPages(*devicefarm.ListDevicesInput, func(*devicefarm.ListDevicesOutput, bool) bool) error ListJobsRequest(*devicefarm.ListJobsInput) (*request.Request, *devicefarm.ListJobsOutput) ListJobs(*devicefarm.ListJobsInput) (*devicefarm.ListJobsOutput, error) ListJobsPages(*devicefarm.ListJobsInput, func(*devicefarm.ListJobsOutput, bool) bool) error ListOfferingTransactionsRequest(*devicefarm.ListOfferingTransactionsInput) (*request.Request, *devicefarm.ListOfferingTransactionsOutput) ListOfferingTransactions(*devicefarm.ListOfferingTransactionsInput) (*devicefarm.ListOfferingTransactionsOutput, error) ListOfferingTransactionsPages(*devicefarm.ListOfferingTransactionsInput, func(*devicefarm.ListOfferingTransactionsOutput, bool) bool) error ListOfferingsRequest(*devicefarm.ListOfferingsInput) (*request.Request, *devicefarm.ListOfferingsOutput) ListOfferings(*devicefarm.ListOfferingsInput) (*devicefarm.ListOfferingsOutput, error) ListOfferingsPages(*devicefarm.ListOfferingsInput, func(*devicefarm.ListOfferingsOutput, bool) bool) error ListProjectsRequest(*devicefarm.ListProjectsInput) (*request.Request, *devicefarm.ListProjectsOutput) ListProjects(*devicefarm.ListProjectsInput) (*devicefarm.ListProjectsOutput, error) ListProjectsPages(*devicefarm.ListProjectsInput, func(*devicefarm.ListProjectsOutput, bool) bool) error ListRemoteAccessSessionsRequest(*devicefarm.ListRemoteAccessSessionsInput) (*request.Request, *devicefarm.ListRemoteAccessSessionsOutput) ListRemoteAccessSessions(*devicefarm.ListRemoteAccessSessionsInput) (*devicefarm.ListRemoteAccessSessionsOutput, error) ListRunsRequest(*devicefarm.ListRunsInput) (*request.Request, *devicefarm.ListRunsOutput) ListRuns(*devicefarm.ListRunsInput) (*devicefarm.ListRunsOutput, error) ListRunsPages(*devicefarm.ListRunsInput, func(*devicefarm.ListRunsOutput, bool) bool) error ListSamplesRequest(*devicefarm.ListSamplesInput) (*request.Request, *devicefarm.ListSamplesOutput) ListSamples(*devicefarm.ListSamplesInput) (*devicefarm.ListSamplesOutput, error) ListSamplesPages(*devicefarm.ListSamplesInput, func(*devicefarm.ListSamplesOutput, bool) bool) error ListSuitesRequest(*devicefarm.ListSuitesInput) (*request.Request, *devicefarm.ListSuitesOutput) ListSuites(*devicefarm.ListSuitesInput) (*devicefarm.ListSuitesOutput, error) ListSuitesPages(*devicefarm.ListSuitesInput, func(*devicefarm.ListSuitesOutput, bool) bool) error ListTestsRequest(*devicefarm.ListTestsInput) (*request.Request, *devicefarm.ListTestsOutput) ListTests(*devicefarm.ListTestsInput) (*devicefarm.ListTestsOutput, error) ListTestsPages(*devicefarm.ListTestsInput, func(*devicefarm.ListTestsOutput, bool) bool) error ListUniqueProblemsRequest(*devicefarm.ListUniqueProblemsInput) (*request.Request, *devicefarm.ListUniqueProblemsOutput) ListUniqueProblems(*devicefarm.ListUniqueProblemsInput) (*devicefarm.ListUniqueProblemsOutput, error) ListUniqueProblemsPages(*devicefarm.ListUniqueProblemsInput, func(*devicefarm.ListUniqueProblemsOutput, bool) bool) error ListUploadsRequest(*devicefarm.ListUploadsInput) (*request.Request, *devicefarm.ListUploadsOutput) ListUploads(*devicefarm.ListUploadsInput) (*devicefarm.ListUploadsOutput, error) ListUploadsPages(*devicefarm.ListUploadsInput, func(*devicefarm.ListUploadsOutput, bool) bool) error PurchaseOfferingRequest(*devicefarm.PurchaseOfferingInput) (*request.Request, *devicefarm.PurchaseOfferingOutput) PurchaseOffering(*devicefarm.PurchaseOfferingInput) (*devicefarm.PurchaseOfferingOutput, error) RenewOfferingRequest(*devicefarm.RenewOfferingInput) (*request.Request, *devicefarm.RenewOfferingOutput) RenewOffering(*devicefarm.RenewOfferingInput) (*devicefarm.RenewOfferingOutput, error) ScheduleRunRequest(*devicefarm.ScheduleRunInput) (*request.Request, *devicefarm.ScheduleRunOutput) ScheduleRun(*devicefarm.ScheduleRunInput) (*devicefarm.ScheduleRunOutput, error) StopRemoteAccessSessionRequest(*devicefarm.StopRemoteAccessSessionInput) (*request.Request, *devicefarm.StopRemoteAccessSessionOutput) StopRemoteAccessSession(*devicefarm.StopRemoteAccessSessionInput) (*devicefarm.StopRemoteAccessSessionOutput, error) StopRunRequest(*devicefarm.StopRunInput) (*request.Request, *devicefarm.StopRunOutput) StopRun(*devicefarm.StopRunInput) (*devicefarm.StopRunOutput, error) UpdateDevicePoolRequest(*devicefarm.UpdateDevicePoolInput) (*request.Request, *devicefarm.UpdateDevicePoolOutput) UpdateDevicePool(*devicefarm.UpdateDevicePoolInput) (*devicefarm.UpdateDevicePoolOutput, error) UpdateProjectRequest(*devicefarm.UpdateProjectInput) (*request.Request, *devicefarm.UpdateProjectOutput) UpdateProject(*devicefarm.UpdateProjectInput) (*devicefarm.UpdateProjectOutput, error) } var _ DeviceFarmAPI = (*devicefarm.DeviceFarm)(nil) aws-sdk-go-1.4.22/service/devicefarm/examples_test.go000066400000000000000000000633411300374646400225430ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package devicefarm_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/devicefarm" ) var _ time.Duration var _ bytes.Buffer func ExampleDeviceFarm_CreateDevicePool() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.CreateDevicePoolInput{ Name: aws.String("Name"), // Required ProjectArn: aws.String("AmazonResourceName"), // Required Rules: []*devicefarm.Rule{ // Required { // Required Attribute: aws.String("DeviceAttribute"), Operator: aws.String("RuleOperator"), Value: aws.String("String"), }, // More values... }, Description: aws.String("Message"), } resp, err := svc.CreateDevicePool(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_CreateProject() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.CreateProjectInput{ Name: aws.String("Name"), // Required } resp, err := svc.CreateProject(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_CreateRemoteAccessSession() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.CreateRemoteAccessSessionInput{ DeviceArn: aws.String("AmazonResourceName"), // Required ProjectArn: aws.String("AmazonResourceName"), // Required Configuration: &devicefarm.CreateRemoteAccessSessionConfiguration{ BillingMethod: aws.String("BillingMethod"), }, Name: aws.String("Name"), } resp, err := svc.CreateRemoteAccessSession(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_CreateUpload() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.CreateUploadInput{ Name: aws.String("Name"), // Required ProjectArn: aws.String("AmazonResourceName"), // Required Type: aws.String("UploadType"), // Required ContentType: aws.String("ContentType"), } resp, err := svc.CreateUpload(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_DeleteDevicePool() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.DeleteDevicePoolInput{ Arn: aws.String("AmazonResourceName"), // Required } resp, err := svc.DeleteDevicePool(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_DeleteProject() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.DeleteProjectInput{ Arn: aws.String("AmazonResourceName"), // Required } resp, err := svc.DeleteProject(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_DeleteRemoteAccessSession() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.DeleteRemoteAccessSessionInput{ Arn: aws.String("AmazonResourceName"), // Required } resp, err := svc.DeleteRemoteAccessSession(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_DeleteRun() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.DeleteRunInput{ Arn: aws.String("AmazonResourceName"), // Required } resp, err := svc.DeleteRun(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_DeleteUpload() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.DeleteUploadInput{ Arn: aws.String("AmazonResourceName"), // Required } resp, err := svc.DeleteUpload(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_GetAccountSettings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) var params *devicefarm.GetAccountSettingsInput resp, err := svc.GetAccountSettings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_GetDevice() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.GetDeviceInput{ Arn: aws.String("AmazonResourceName"), // Required } resp, err := svc.GetDevice(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_GetDevicePool() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.GetDevicePoolInput{ Arn: aws.String("AmazonResourceName"), // Required } resp, err := svc.GetDevicePool(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_GetDevicePoolCompatibility() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.GetDevicePoolCompatibilityInput{ DevicePoolArn: aws.String("AmazonResourceName"), // Required AppArn: aws.String("AmazonResourceName"), TestType: aws.String("TestType"), } resp, err := svc.GetDevicePoolCompatibility(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_GetJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.GetJobInput{ Arn: aws.String("AmazonResourceName"), // Required } resp, err := svc.GetJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_GetOfferingStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.GetOfferingStatusInput{ NextToken: aws.String("PaginationToken"), } resp, err := svc.GetOfferingStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_GetProject() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.GetProjectInput{ Arn: aws.String("AmazonResourceName"), // Required } resp, err := svc.GetProject(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_GetRemoteAccessSession() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.GetRemoteAccessSessionInput{ Arn: aws.String("AmazonResourceName"), // Required } resp, err := svc.GetRemoteAccessSession(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_GetRun() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.GetRunInput{ Arn: aws.String("AmazonResourceName"), // Required } resp, err := svc.GetRun(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_GetSuite() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.GetSuiteInput{ Arn: aws.String("AmazonResourceName"), // Required } resp, err := svc.GetSuite(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_GetTest() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.GetTestInput{ Arn: aws.String("AmazonResourceName"), // Required } resp, err := svc.GetTest(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_GetUpload() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.GetUploadInput{ Arn: aws.String("AmazonResourceName"), // Required } resp, err := svc.GetUpload(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_InstallToRemoteAccessSession() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.InstallToRemoteAccessSessionInput{ AppArn: aws.String("AmazonResourceName"), // Required RemoteAccessSessionArn: aws.String("AmazonResourceName"), // Required } resp, err := svc.InstallToRemoteAccessSession(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_ListArtifacts() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.ListArtifactsInput{ Arn: aws.String("AmazonResourceName"), // Required Type: aws.String("ArtifactCategory"), // Required NextToken: aws.String("PaginationToken"), } resp, err := svc.ListArtifacts(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_ListDevicePools() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.ListDevicePoolsInput{ Arn: aws.String("AmazonResourceName"), // Required NextToken: aws.String("PaginationToken"), Type: aws.String("DevicePoolType"), } resp, err := svc.ListDevicePools(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_ListDevices() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.ListDevicesInput{ Arn: aws.String("AmazonResourceName"), NextToken: aws.String("PaginationToken"), } resp, err := svc.ListDevices(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_ListJobs() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.ListJobsInput{ Arn: aws.String("AmazonResourceName"), // Required NextToken: aws.String("PaginationToken"), } resp, err := svc.ListJobs(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_ListOfferingTransactions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.ListOfferingTransactionsInput{ NextToken: aws.String("PaginationToken"), } resp, err := svc.ListOfferingTransactions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_ListOfferings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.ListOfferingsInput{ NextToken: aws.String("PaginationToken"), } resp, err := svc.ListOfferings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_ListProjects() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.ListProjectsInput{ Arn: aws.String("AmazonResourceName"), NextToken: aws.String("PaginationToken"), } resp, err := svc.ListProjects(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_ListRemoteAccessSessions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.ListRemoteAccessSessionsInput{ Arn: aws.String("AmazonResourceName"), // Required NextToken: aws.String("PaginationToken"), } resp, err := svc.ListRemoteAccessSessions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_ListRuns() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.ListRunsInput{ Arn: aws.String("AmazonResourceName"), // Required NextToken: aws.String("PaginationToken"), } resp, err := svc.ListRuns(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_ListSamples() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.ListSamplesInput{ Arn: aws.String("AmazonResourceName"), // Required NextToken: aws.String("PaginationToken"), } resp, err := svc.ListSamples(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_ListSuites() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.ListSuitesInput{ Arn: aws.String("AmazonResourceName"), // Required NextToken: aws.String("PaginationToken"), } resp, err := svc.ListSuites(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_ListTests() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.ListTestsInput{ Arn: aws.String("AmazonResourceName"), // Required NextToken: aws.String("PaginationToken"), } resp, err := svc.ListTests(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_ListUniqueProblems() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.ListUniqueProblemsInput{ Arn: aws.String("AmazonResourceName"), // Required NextToken: aws.String("PaginationToken"), } resp, err := svc.ListUniqueProblems(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_ListUploads() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.ListUploadsInput{ Arn: aws.String("AmazonResourceName"), // Required NextToken: aws.String("PaginationToken"), } resp, err := svc.ListUploads(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_PurchaseOffering() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.PurchaseOfferingInput{ OfferingId: aws.String("OfferingIdentifier"), Quantity: aws.Int64(1), } resp, err := svc.PurchaseOffering(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_RenewOffering() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.RenewOfferingInput{ OfferingId: aws.String("OfferingIdentifier"), Quantity: aws.Int64(1), } resp, err := svc.RenewOffering(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_ScheduleRun() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.ScheduleRunInput{ DevicePoolArn: aws.String("AmazonResourceName"), // Required ProjectArn: aws.String("AmazonResourceName"), // Required Test: &devicefarm.ScheduleRunTest{ // Required Type: aws.String("TestType"), // Required Filter: aws.String("Filter"), Parameters: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, TestPackageArn: aws.String("AmazonResourceName"), }, AppArn: aws.String("AmazonResourceName"), Configuration: &devicefarm.ScheduleRunConfiguration{ AuxiliaryApps: []*string{ aws.String("AmazonResourceName"), // Required // More values... }, BillingMethod: aws.String("BillingMethod"), ExtraDataPackageArn: aws.String("AmazonResourceName"), Locale: aws.String("String"), Location: &devicefarm.Location{ Latitude: aws.Float64(1.0), // Required Longitude: aws.Float64(1.0), // Required }, NetworkProfileArn: aws.String("AmazonResourceName"), Radios: &devicefarm.Radios{ Bluetooth: aws.Bool(true), Gps: aws.Bool(true), Nfc: aws.Bool(true), Wifi: aws.Bool(true), }, }, Name: aws.String("Name"), } resp, err := svc.ScheduleRun(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_StopRemoteAccessSession() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.StopRemoteAccessSessionInput{ Arn: aws.String("AmazonResourceName"), // Required } resp, err := svc.StopRemoteAccessSession(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_StopRun() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.StopRunInput{ Arn: aws.String("AmazonResourceName"), // Required } resp, err := svc.StopRun(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_UpdateDevicePool() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.UpdateDevicePoolInput{ Arn: aws.String("AmazonResourceName"), // Required Description: aws.String("Message"), Name: aws.String("Name"), Rules: []*devicefarm.Rule{ { // Required Attribute: aws.String("DeviceAttribute"), Operator: aws.String("RuleOperator"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateDevicePool(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDeviceFarm_UpdateProject() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := devicefarm.New(sess) params := &devicefarm.UpdateProjectInput{ Arn: aws.String("AmazonResourceName"), // Required Name: aws.String("Name"), } resp, err := svc.UpdateProject(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/devicefarm/service.go000066400000000000000000000055611300374646400213260ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package devicefarm import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // AWS Device Farm is a service that enables mobile app developers to test Android, // iOS, and Fire OS apps on physical phones, tablets, and other devices in the // cloud. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type DeviceFarm struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "devicefarm" // New creates a new instance of the DeviceFarm client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a DeviceFarm client from just a session. // svc := devicefarm.New(mySession) // // // Create a DeviceFarm client with additional configuration // svc := devicefarm.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *DeviceFarm { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *DeviceFarm { svc := &DeviceFarm{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-06-23", JSONVersion: "1.1", TargetPrefix: "DeviceFarm_20150623", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a DeviceFarm operation and runs any // custom request initialization. func (c *DeviceFarm) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/directconnect/000077500000000000000000000000001300374646400200475ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/directconnect/api.go000066400000000000000000003672001300374646400211570ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package directconnect provides a client for AWS Direct Connect. package directconnect import ( "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opAllocateConnectionOnInterconnect = "AllocateConnectionOnInterconnect" // AllocateConnectionOnInterconnectRequest generates a "aws/request.Request" representing the // client's request for the AllocateConnectionOnInterconnect operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AllocateConnectionOnInterconnect for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AllocateConnectionOnInterconnect method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AllocateConnectionOnInterconnectRequest method. // req, resp := client.AllocateConnectionOnInterconnectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) AllocateConnectionOnInterconnectRequest(input *AllocateConnectionOnInterconnectInput) (req *request.Request, output *Connection) { op := &request.Operation{ Name: opAllocateConnectionOnInterconnect, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AllocateConnectionOnInterconnectInput{} } req = c.newRequest(op, input, output) output = &Connection{} req.Data = output return } // AllocateConnectionOnInterconnect API operation for AWS Direct Connect. // // Creates a hosted connection on an interconnect. // // Allocates a VLAN number and a specified amount of bandwidth for use by a // hosted connection on the given interconnect. // // This is intended for use by AWS Direct Connect partners only. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation AllocateConnectionOnInterconnect for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) AllocateConnectionOnInterconnect(input *AllocateConnectionOnInterconnectInput) (*Connection, error) { req, out := c.AllocateConnectionOnInterconnectRequest(input) err := req.Send() return out, err } const opAllocatePrivateVirtualInterface = "AllocatePrivateVirtualInterface" // AllocatePrivateVirtualInterfaceRequest generates a "aws/request.Request" representing the // client's request for the AllocatePrivateVirtualInterface operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AllocatePrivateVirtualInterface for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AllocatePrivateVirtualInterface method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AllocatePrivateVirtualInterfaceRequest method. // req, resp := client.AllocatePrivateVirtualInterfaceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) AllocatePrivateVirtualInterfaceRequest(input *AllocatePrivateVirtualInterfaceInput) (req *request.Request, output *VirtualInterface) { op := &request.Operation{ Name: opAllocatePrivateVirtualInterface, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AllocatePrivateVirtualInterfaceInput{} } req = c.newRequest(op, input, output) output = &VirtualInterface{} req.Data = output return } // AllocatePrivateVirtualInterface API operation for AWS Direct Connect. // // Provisions a private virtual interface to be owned by a different customer. // // The owner of a connection calls this function to provision a private virtual // interface which will be owned by another AWS customer. // // Virtual interfaces created using this function must be confirmed by the virtual // interface owner by calling ConfirmPrivateVirtualInterface. Until this step // has been completed, the virtual interface will be in 'Confirming' state, // and will not be available for handling traffic. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation AllocatePrivateVirtualInterface for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) AllocatePrivateVirtualInterface(input *AllocatePrivateVirtualInterfaceInput) (*VirtualInterface, error) { req, out := c.AllocatePrivateVirtualInterfaceRequest(input) err := req.Send() return out, err } const opAllocatePublicVirtualInterface = "AllocatePublicVirtualInterface" // AllocatePublicVirtualInterfaceRequest generates a "aws/request.Request" representing the // client's request for the AllocatePublicVirtualInterface operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AllocatePublicVirtualInterface for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AllocatePublicVirtualInterface method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AllocatePublicVirtualInterfaceRequest method. // req, resp := client.AllocatePublicVirtualInterfaceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) AllocatePublicVirtualInterfaceRequest(input *AllocatePublicVirtualInterfaceInput) (req *request.Request, output *VirtualInterface) { op := &request.Operation{ Name: opAllocatePublicVirtualInterface, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AllocatePublicVirtualInterfaceInput{} } req = c.newRequest(op, input, output) output = &VirtualInterface{} req.Data = output return } // AllocatePublicVirtualInterface API operation for AWS Direct Connect. // // Provisions a public virtual interface to be owned by a different customer. // // The owner of a connection calls this function to provision a public virtual // interface which will be owned by another AWS customer. // // Virtual interfaces created using this function must be confirmed by the virtual // interface owner by calling ConfirmPublicVirtualInterface. Until this step // has been completed, the virtual interface will be in 'Confirming' state, // and will not be available for handling traffic. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation AllocatePublicVirtualInterface for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) AllocatePublicVirtualInterface(input *AllocatePublicVirtualInterfaceInput) (*VirtualInterface, error) { req, out := c.AllocatePublicVirtualInterfaceRequest(input) err := req.Send() return out, err } const opConfirmConnection = "ConfirmConnection" // ConfirmConnectionRequest generates a "aws/request.Request" representing the // client's request for the ConfirmConnection operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ConfirmConnection for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ConfirmConnection method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ConfirmConnectionRequest method. // req, resp := client.ConfirmConnectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) ConfirmConnectionRequest(input *ConfirmConnectionInput) (req *request.Request, output *ConfirmConnectionOutput) { op := &request.Operation{ Name: opConfirmConnection, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ConfirmConnectionInput{} } req = c.newRequest(op, input, output) output = &ConfirmConnectionOutput{} req.Data = output return } // ConfirmConnection API operation for AWS Direct Connect. // // Confirm the creation of a hosted connection on an interconnect. // // Upon creation, the hosted connection is initially in the 'Ordering' state, // and will remain in this state until the owner calls ConfirmConnection to // confirm creation of the hosted connection. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation ConfirmConnection for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) ConfirmConnection(input *ConfirmConnectionInput) (*ConfirmConnectionOutput, error) { req, out := c.ConfirmConnectionRequest(input) err := req.Send() return out, err } const opConfirmPrivateVirtualInterface = "ConfirmPrivateVirtualInterface" // ConfirmPrivateVirtualInterfaceRequest generates a "aws/request.Request" representing the // client's request for the ConfirmPrivateVirtualInterface operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ConfirmPrivateVirtualInterface for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ConfirmPrivateVirtualInterface method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ConfirmPrivateVirtualInterfaceRequest method. // req, resp := client.ConfirmPrivateVirtualInterfaceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) ConfirmPrivateVirtualInterfaceRequest(input *ConfirmPrivateVirtualInterfaceInput) (req *request.Request, output *ConfirmPrivateVirtualInterfaceOutput) { op := &request.Operation{ Name: opConfirmPrivateVirtualInterface, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ConfirmPrivateVirtualInterfaceInput{} } req = c.newRequest(op, input, output) output = &ConfirmPrivateVirtualInterfaceOutput{} req.Data = output return } // ConfirmPrivateVirtualInterface API operation for AWS Direct Connect. // // Accept ownership of a private virtual interface created by another customer. // // After the virtual interface owner calls this function, the virtual interface // will be created and attached to the given virtual private gateway, and will // be available for handling traffic. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation ConfirmPrivateVirtualInterface for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) ConfirmPrivateVirtualInterface(input *ConfirmPrivateVirtualInterfaceInput) (*ConfirmPrivateVirtualInterfaceOutput, error) { req, out := c.ConfirmPrivateVirtualInterfaceRequest(input) err := req.Send() return out, err } const opConfirmPublicVirtualInterface = "ConfirmPublicVirtualInterface" // ConfirmPublicVirtualInterfaceRequest generates a "aws/request.Request" representing the // client's request for the ConfirmPublicVirtualInterface operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ConfirmPublicVirtualInterface for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ConfirmPublicVirtualInterface method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ConfirmPublicVirtualInterfaceRequest method. // req, resp := client.ConfirmPublicVirtualInterfaceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) ConfirmPublicVirtualInterfaceRequest(input *ConfirmPublicVirtualInterfaceInput) (req *request.Request, output *ConfirmPublicVirtualInterfaceOutput) { op := &request.Operation{ Name: opConfirmPublicVirtualInterface, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ConfirmPublicVirtualInterfaceInput{} } req = c.newRequest(op, input, output) output = &ConfirmPublicVirtualInterfaceOutput{} req.Data = output return } // ConfirmPublicVirtualInterface API operation for AWS Direct Connect. // // Accept ownership of a public virtual interface created by another customer. // // After the virtual interface owner calls this function, the specified virtual // interface will be created and made available for handling traffic. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation ConfirmPublicVirtualInterface for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) ConfirmPublicVirtualInterface(input *ConfirmPublicVirtualInterfaceInput) (*ConfirmPublicVirtualInterfaceOutput, error) { req, out := c.ConfirmPublicVirtualInterfaceRequest(input) err := req.Send() return out, err } const opCreateConnection = "CreateConnection" // CreateConnectionRequest generates a "aws/request.Request" representing the // client's request for the CreateConnection operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateConnection for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateConnection method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateConnectionRequest method. // req, resp := client.CreateConnectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) CreateConnectionRequest(input *CreateConnectionInput) (req *request.Request, output *Connection) { op := &request.Operation{ Name: opCreateConnection, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateConnectionInput{} } req = c.newRequest(op, input, output) output = &Connection{} req.Data = output return } // CreateConnection API operation for AWS Direct Connect. // // Creates a new connection between the customer network and a specific AWS // Direct Connect location. // // A connection links your internal network to an AWS Direct Connect location // over a standard 1 gigabit or 10 gigabit Ethernet fiber-optic cable. One end // of the cable is connected to your router, the other to an AWS Direct Connect // router. An AWS Direct Connect location provides access to Amazon Web Services // in the region it is associated with. You can establish connections with AWS // Direct Connect locations in multiple regions, but a connection in one region // does not provide connectivity to other regions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation CreateConnection for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) CreateConnection(input *CreateConnectionInput) (*Connection, error) { req, out := c.CreateConnectionRequest(input) err := req.Send() return out, err } const opCreateInterconnect = "CreateInterconnect" // CreateInterconnectRequest generates a "aws/request.Request" representing the // client's request for the CreateInterconnect operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateInterconnect for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateInterconnect method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateInterconnectRequest method. // req, resp := client.CreateInterconnectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) CreateInterconnectRequest(input *CreateInterconnectInput) (req *request.Request, output *Interconnect) { op := &request.Operation{ Name: opCreateInterconnect, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateInterconnectInput{} } req = c.newRequest(op, input, output) output = &Interconnect{} req.Data = output return } // CreateInterconnect API operation for AWS Direct Connect. // // Creates a new interconnect between a AWS Direct Connect partner's network // and a specific AWS Direct Connect location. // // An interconnect is a connection which is capable of hosting other connections. // The AWS Direct Connect partner can use an interconnect to provide sub-1Gbps // AWS Direct Connect service to tier 2 customers who do not have their own // connections. Like a standard connection, an interconnect links the AWS Direct // Connect partner's network to an AWS Direct Connect location over a standard // 1 Gbps or 10 Gbps Ethernet fiber-optic cable. One end is connected to the // partner's router, the other to an AWS Direct Connect router. // // For each end customer, the AWS Direct Connect partner provisions a connection // on their interconnect by calling AllocateConnectionOnInterconnect. The end // customer can then connect to AWS resources by creating a virtual interface // on their connection, using the VLAN assigned to them by the AWS Direct Connect // partner. // // This is intended for use by AWS Direct Connect partners only. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation CreateInterconnect for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) CreateInterconnect(input *CreateInterconnectInput) (*Interconnect, error) { req, out := c.CreateInterconnectRequest(input) err := req.Send() return out, err } const opCreatePrivateVirtualInterface = "CreatePrivateVirtualInterface" // CreatePrivateVirtualInterfaceRequest generates a "aws/request.Request" representing the // client's request for the CreatePrivateVirtualInterface operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreatePrivateVirtualInterface for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreatePrivateVirtualInterface method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreatePrivateVirtualInterfaceRequest method. // req, resp := client.CreatePrivateVirtualInterfaceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) CreatePrivateVirtualInterfaceRequest(input *CreatePrivateVirtualInterfaceInput) (req *request.Request, output *VirtualInterface) { op := &request.Operation{ Name: opCreatePrivateVirtualInterface, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreatePrivateVirtualInterfaceInput{} } req = c.newRequest(op, input, output) output = &VirtualInterface{} req.Data = output return } // CreatePrivateVirtualInterface API operation for AWS Direct Connect. // // Creates a new private virtual interface. A virtual interface is the VLAN // that transports AWS Direct Connect traffic. A private virtual interface supports // sending traffic to a single virtual private cloud (VPC). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation CreatePrivateVirtualInterface for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) CreatePrivateVirtualInterface(input *CreatePrivateVirtualInterfaceInput) (*VirtualInterface, error) { req, out := c.CreatePrivateVirtualInterfaceRequest(input) err := req.Send() return out, err } const opCreatePublicVirtualInterface = "CreatePublicVirtualInterface" // CreatePublicVirtualInterfaceRequest generates a "aws/request.Request" representing the // client's request for the CreatePublicVirtualInterface operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreatePublicVirtualInterface for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreatePublicVirtualInterface method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreatePublicVirtualInterfaceRequest method. // req, resp := client.CreatePublicVirtualInterfaceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) CreatePublicVirtualInterfaceRequest(input *CreatePublicVirtualInterfaceInput) (req *request.Request, output *VirtualInterface) { op := &request.Operation{ Name: opCreatePublicVirtualInterface, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreatePublicVirtualInterfaceInput{} } req = c.newRequest(op, input, output) output = &VirtualInterface{} req.Data = output return } // CreatePublicVirtualInterface API operation for AWS Direct Connect. // // Creates a new public virtual interface. A virtual interface is the VLAN that // transports AWS Direct Connect traffic. A public virtual interface supports // sending traffic to public services of AWS such as Amazon Simple Storage Service // (Amazon S3). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation CreatePublicVirtualInterface for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) CreatePublicVirtualInterface(input *CreatePublicVirtualInterfaceInput) (*VirtualInterface, error) { req, out := c.CreatePublicVirtualInterfaceRequest(input) err := req.Send() return out, err } const opDeleteConnection = "DeleteConnection" // DeleteConnectionRequest generates a "aws/request.Request" representing the // client's request for the DeleteConnection operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteConnection for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteConnection method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteConnectionRequest method. // req, resp := client.DeleteConnectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) DeleteConnectionRequest(input *DeleteConnectionInput) (req *request.Request, output *Connection) { op := &request.Operation{ Name: opDeleteConnection, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteConnectionInput{} } req = c.newRequest(op, input, output) output = &Connection{} req.Data = output return } // DeleteConnection API operation for AWS Direct Connect. // // Deletes the connection. // // Deleting a connection only stops the AWS Direct Connect port hour and data // transfer charges. You need to cancel separately with the providers any services // or charges for cross-connects or network circuits that connect you to the // AWS Direct Connect location. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation DeleteConnection for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) DeleteConnection(input *DeleteConnectionInput) (*Connection, error) { req, out := c.DeleteConnectionRequest(input) err := req.Send() return out, err } const opDeleteInterconnect = "DeleteInterconnect" // DeleteInterconnectRequest generates a "aws/request.Request" representing the // client's request for the DeleteInterconnect operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteInterconnect for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteInterconnect method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteInterconnectRequest method. // req, resp := client.DeleteInterconnectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) DeleteInterconnectRequest(input *DeleteInterconnectInput) (req *request.Request, output *DeleteInterconnectOutput) { op := &request.Operation{ Name: opDeleteInterconnect, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteInterconnectInput{} } req = c.newRequest(op, input, output) output = &DeleteInterconnectOutput{} req.Data = output return } // DeleteInterconnect API operation for AWS Direct Connect. // // Deletes the specified interconnect. // // This is intended for use by AWS Direct Connect partners only. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation DeleteInterconnect for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) DeleteInterconnect(input *DeleteInterconnectInput) (*DeleteInterconnectOutput, error) { req, out := c.DeleteInterconnectRequest(input) err := req.Send() return out, err } const opDeleteVirtualInterface = "DeleteVirtualInterface" // DeleteVirtualInterfaceRequest generates a "aws/request.Request" representing the // client's request for the DeleteVirtualInterface operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteVirtualInterface for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteVirtualInterface method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteVirtualInterfaceRequest method. // req, resp := client.DeleteVirtualInterfaceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) DeleteVirtualInterfaceRequest(input *DeleteVirtualInterfaceInput) (req *request.Request, output *DeleteVirtualInterfaceOutput) { op := &request.Operation{ Name: opDeleteVirtualInterface, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteVirtualInterfaceInput{} } req = c.newRequest(op, input, output) output = &DeleteVirtualInterfaceOutput{} req.Data = output return } // DeleteVirtualInterface API operation for AWS Direct Connect. // // Deletes a virtual interface. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation DeleteVirtualInterface for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) DeleteVirtualInterface(input *DeleteVirtualInterfaceInput) (*DeleteVirtualInterfaceOutput, error) { req, out := c.DeleteVirtualInterfaceRequest(input) err := req.Send() return out, err } const opDescribeConnectionLoa = "DescribeConnectionLoa" // DescribeConnectionLoaRequest generates a "aws/request.Request" representing the // client's request for the DescribeConnectionLoa operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeConnectionLoa for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeConnectionLoa method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeConnectionLoaRequest method. // req, resp := client.DescribeConnectionLoaRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) DescribeConnectionLoaRequest(input *DescribeConnectionLoaInput) (req *request.Request, output *DescribeConnectionLoaOutput) { op := &request.Operation{ Name: opDescribeConnectionLoa, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeConnectionLoaInput{} } req = c.newRequest(op, input, output) output = &DescribeConnectionLoaOutput{} req.Data = output return } // DescribeConnectionLoa API operation for AWS Direct Connect. // // Returns the LOA-CFA for a Connection. // // The Letter of Authorization - Connecting Facility Assignment (LOA-CFA) is // a document that your APN partner or service provider uses when establishing // your cross connect to AWS at the colocation facility. For more information, // see Requesting Cross Connects at AWS Direct Connect Locations (http://docs.aws.amazon.com/directconnect/latest/UserGuide/Colocation.html) // in the AWS Direct Connect user guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation DescribeConnectionLoa for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) DescribeConnectionLoa(input *DescribeConnectionLoaInput) (*DescribeConnectionLoaOutput, error) { req, out := c.DescribeConnectionLoaRequest(input) err := req.Send() return out, err } const opDescribeConnections = "DescribeConnections" // DescribeConnectionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeConnections operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeConnections for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeConnections method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeConnectionsRequest method. // req, resp := client.DescribeConnectionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) DescribeConnectionsRequest(input *DescribeConnectionsInput) (req *request.Request, output *Connections) { op := &request.Operation{ Name: opDescribeConnections, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeConnectionsInput{} } req = c.newRequest(op, input, output) output = &Connections{} req.Data = output return } // DescribeConnections API operation for AWS Direct Connect. // // Displays all connections in this region. // // If a connection ID is provided, the call returns only that particular connection. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation DescribeConnections for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) DescribeConnections(input *DescribeConnectionsInput) (*Connections, error) { req, out := c.DescribeConnectionsRequest(input) err := req.Send() return out, err } const opDescribeConnectionsOnInterconnect = "DescribeConnectionsOnInterconnect" // DescribeConnectionsOnInterconnectRequest generates a "aws/request.Request" representing the // client's request for the DescribeConnectionsOnInterconnect operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeConnectionsOnInterconnect for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeConnectionsOnInterconnect method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeConnectionsOnInterconnectRequest method. // req, resp := client.DescribeConnectionsOnInterconnectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) DescribeConnectionsOnInterconnectRequest(input *DescribeConnectionsOnInterconnectInput) (req *request.Request, output *Connections) { op := &request.Operation{ Name: opDescribeConnectionsOnInterconnect, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeConnectionsOnInterconnectInput{} } req = c.newRequest(op, input, output) output = &Connections{} req.Data = output return } // DescribeConnectionsOnInterconnect API operation for AWS Direct Connect. // // Return a list of connections that have been provisioned on the given interconnect. // // This is intended for use by AWS Direct Connect partners only. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation DescribeConnectionsOnInterconnect for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) DescribeConnectionsOnInterconnect(input *DescribeConnectionsOnInterconnectInput) (*Connections, error) { req, out := c.DescribeConnectionsOnInterconnectRequest(input) err := req.Send() return out, err } const opDescribeInterconnectLoa = "DescribeInterconnectLoa" // DescribeInterconnectLoaRequest generates a "aws/request.Request" representing the // client's request for the DescribeInterconnectLoa operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeInterconnectLoa for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeInterconnectLoa method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeInterconnectLoaRequest method. // req, resp := client.DescribeInterconnectLoaRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) DescribeInterconnectLoaRequest(input *DescribeInterconnectLoaInput) (req *request.Request, output *DescribeInterconnectLoaOutput) { op := &request.Operation{ Name: opDescribeInterconnectLoa, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeInterconnectLoaInput{} } req = c.newRequest(op, input, output) output = &DescribeInterconnectLoaOutput{} req.Data = output return } // DescribeInterconnectLoa API operation for AWS Direct Connect. // // Returns the LOA-CFA for an Interconnect. // // The Letter of Authorization - Connecting Facility Assignment (LOA-CFA) is // a document that is used when establishing your cross connect to AWS at the // colocation facility. For more information, see Requesting Cross Connects // at AWS Direct Connect Locations (http://docs.aws.amazon.com/directconnect/latest/UserGuide/Colocation.html) // in the AWS Direct Connect user guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation DescribeInterconnectLoa for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) DescribeInterconnectLoa(input *DescribeInterconnectLoaInput) (*DescribeInterconnectLoaOutput, error) { req, out := c.DescribeInterconnectLoaRequest(input) err := req.Send() return out, err } const opDescribeInterconnects = "DescribeInterconnects" // DescribeInterconnectsRequest generates a "aws/request.Request" representing the // client's request for the DescribeInterconnects operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeInterconnects for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeInterconnects method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeInterconnectsRequest method. // req, resp := client.DescribeInterconnectsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) DescribeInterconnectsRequest(input *DescribeInterconnectsInput) (req *request.Request, output *DescribeInterconnectsOutput) { op := &request.Operation{ Name: opDescribeInterconnects, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeInterconnectsInput{} } req = c.newRequest(op, input, output) output = &DescribeInterconnectsOutput{} req.Data = output return } // DescribeInterconnects API operation for AWS Direct Connect. // // Returns a list of interconnects owned by the AWS account. // // If an interconnect ID is provided, it will only return this particular interconnect. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation DescribeInterconnects for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) DescribeInterconnects(input *DescribeInterconnectsInput) (*DescribeInterconnectsOutput, error) { req, out := c.DescribeInterconnectsRequest(input) err := req.Send() return out, err } const opDescribeLocations = "DescribeLocations" // DescribeLocationsRequest generates a "aws/request.Request" representing the // client's request for the DescribeLocations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLocations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLocations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLocationsRequest method. // req, resp := client.DescribeLocationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) DescribeLocationsRequest(input *DescribeLocationsInput) (req *request.Request, output *DescribeLocationsOutput) { op := &request.Operation{ Name: opDescribeLocations, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeLocationsInput{} } req = c.newRequest(op, input, output) output = &DescribeLocationsOutput{} req.Data = output return } // DescribeLocations API operation for AWS Direct Connect. // // Returns the list of AWS Direct Connect locations in the current AWS region. // These are the locations that may be selected when calling CreateConnection // or CreateInterconnect. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation DescribeLocations for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) DescribeLocations(input *DescribeLocationsInput) (*DescribeLocationsOutput, error) { req, out := c.DescribeLocationsRequest(input) err := req.Send() return out, err } const opDescribeVirtualGateways = "DescribeVirtualGateways" // DescribeVirtualGatewaysRequest generates a "aws/request.Request" representing the // client's request for the DescribeVirtualGateways operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeVirtualGateways for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeVirtualGateways method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeVirtualGatewaysRequest method. // req, resp := client.DescribeVirtualGatewaysRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) DescribeVirtualGatewaysRequest(input *DescribeVirtualGatewaysInput) (req *request.Request, output *DescribeVirtualGatewaysOutput) { op := &request.Operation{ Name: opDescribeVirtualGateways, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeVirtualGatewaysInput{} } req = c.newRequest(op, input, output) output = &DescribeVirtualGatewaysOutput{} req.Data = output return } // DescribeVirtualGateways API operation for AWS Direct Connect. // // Returns a list of virtual private gateways owned by the AWS account. // // You can create one or more AWS Direct Connect private virtual interfaces // linking to a virtual private gateway. A virtual private gateway can be managed // via Amazon Virtual Private Cloud (VPC) console or the EC2 CreateVpnGateway // (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateVpnGateway.html) // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation DescribeVirtualGateways for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) DescribeVirtualGateways(input *DescribeVirtualGatewaysInput) (*DescribeVirtualGatewaysOutput, error) { req, out := c.DescribeVirtualGatewaysRequest(input) err := req.Send() return out, err } const opDescribeVirtualInterfaces = "DescribeVirtualInterfaces" // DescribeVirtualInterfacesRequest generates a "aws/request.Request" representing the // client's request for the DescribeVirtualInterfaces operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeVirtualInterfaces for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeVirtualInterfaces method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeVirtualInterfacesRequest method. // req, resp := client.DescribeVirtualInterfacesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectConnect) DescribeVirtualInterfacesRequest(input *DescribeVirtualInterfacesInput) (req *request.Request, output *DescribeVirtualInterfacesOutput) { op := &request.Operation{ Name: opDescribeVirtualInterfaces, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeVirtualInterfacesInput{} } req = c.newRequest(op, input, output) output = &DescribeVirtualInterfacesOutput{} req.Data = output return } // DescribeVirtualInterfaces API operation for AWS Direct Connect. // // Displays all virtual interfaces for an AWS account. Virtual interfaces deleted // fewer than 15 minutes before DescribeVirtualInterfaces is called are also // returned. If a connection ID is included then only virtual interfaces associated // with this connection will be returned. If a virtual interface ID is included // then only a single virtual interface will be returned. // // A virtual interface (VLAN) transmits the traffic between the AWS Direct Connect // location and the customer. // // If a connection ID is provided, only virtual interfaces provisioned on the // specified connection will be returned. If a virtual interface ID is provided, // only this particular virtual interface will be returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Direct Connect's // API operation DescribeVirtualInterfaces for usage and error information. // // Returned Error Codes: // * ServerException // A server-side error occurred during the API call. The error message will // contain additional details about the cause. // // * ClientException // The API was called with invalid parameters. The error message will contain // additional details about the cause. // func (c *DirectConnect) DescribeVirtualInterfaces(input *DescribeVirtualInterfacesInput) (*DescribeVirtualInterfacesOutput, error) { req, out := c.DescribeVirtualInterfacesRequest(input) err := req.Send() return out, err } // Container for the parameters to the AllocateConnectionOnInterconnect operation. type AllocateConnectionOnInterconnectInput struct { _ struct{} `type:"structure"` // Bandwidth of the connection. // // Example: "500Mbps" // // Default: None // // Values: 50M, 100M, 200M, 300M, 400M, or 500M // // Bandwidth is a required field Bandwidth *string `locationName:"bandwidth" type:"string" required:"true"` // Name of the provisioned connection. // // Example: "500M Connection to AWS" // // Default: None // // ConnectionName is a required field ConnectionName *string `locationName:"connectionName" type:"string" required:"true"` // ID of the interconnect on which the connection will be provisioned. // // Example: dxcon-456abc78 // // Default: None // // InterconnectId is a required field InterconnectId *string `locationName:"interconnectId" type:"string" required:"true"` // Numeric account Id of the customer for whom the connection will be provisioned. // // Example: 123443215678 // // Default: None // // OwnerAccount is a required field OwnerAccount *string `locationName:"ownerAccount" type:"string" required:"true"` // The dedicated VLAN provisioned to the connection. // // Example: 101 // // Default: None // // Vlan is a required field Vlan *int64 `locationName:"vlan" type:"integer" required:"true"` } // String returns the string representation func (s AllocateConnectionOnInterconnectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AllocateConnectionOnInterconnectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AllocateConnectionOnInterconnectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AllocateConnectionOnInterconnectInput"} if s.Bandwidth == nil { invalidParams.Add(request.NewErrParamRequired("Bandwidth")) } if s.ConnectionName == nil { invalidParams.Add(request.NewErrParamRequired("ConnectionName")) } if s.InterconnectId == nil { invalidParams.Add(request.NewErrParamRequired("InterconnectId")) } if s.OwnerAccount == nil { invalidParams.Add(request.NewErrParamRequired("OwnerAccount")) } if s.Vlan == nil { invalidParams.Add(request.NewErrParamRequired("Vlan")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for the parameters to the AllocatePrivateVirtualInterface operation. type AllocatePrivateVirtualInterfaceInput struct { _ struct{} `type:"structure"` // The connection ID on which the private virtual interface is provisioned. // // Default: None // // ConnectionId is a required field ConnectionId *string `locationName:"connectionId" type:"string" required:"true"` // Detailed information for the private virtual interface to be provisioned. // // Default: None // // NewPrivateVirtualInterfaceAllocation is a required field NewPrivateVirtualInterfaceAllocation *NewPrivateVirtualInterfaceAllocation `locationName:"newPrivateVirtualInterfaceAllocation" type:"structure" required:"true"` // The AWS account that will own the new private virtual interface. // // Default: None // // OwnerAccount is a required field OwnerAccount *string `locationName:"ownerAccount" type:"string" required:"true"` } // String returns the string representation func (s AllocatePrivateVirtualInterfaceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AllocatePrivateVirtualInterfaceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AllocatePrivateVirtualInterfaceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AllocatePrivateVirtualInterfaceInput"} if s.ConnectionId == nil { invalidParams.Add(request.NewErrParamRequired("ConnectionId")) } if s.NewPrivateVirtualInterfaceAllocation == nil { invalidParams.Add(request.NewErrParamRequired("NewPrivateVirtualInterfaceAllocation")) } if s.OwnerAccount == nil { invalidParams.Add(request.NewErrParamRequired("OwnerAccount")) } if s.NewPrivateVirtualInterfaceAllocation != nil { if err := s.NewPrivateVirtualInterfaceAllocation.Validate(); err != nil { invalidParams.AddNested("NewPrivateVirtualInterfaceAllocation", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for the parameters to the AllocatePublicVirtualInterface operation. type AllocatePublicVirtualInterfaceInput struct { _ struct{} `type:"structure"` // The connection ID on which the public virtual interface is provisioned. // // Default: None // // ConnectionId is a required field ConnectionId *string `locationName:"connectionId" type:"string" required:"true"` // Detailed information for the public virtual interface to be provisioned. // // Default: None // // NewPublicVirtualInterfaceAllocation is a required field NewPublicVirtualInterfaceAllocation *NewPublicVirtualInterfaceAllocation `locationName:"newPublicVirtualInterfaceAllocation" type:"structure" required:"true"` // The AWS account that will own the new public virtual interface. // // Default: None // // OwnerAccount is a required field OwnerAccount *string `locationName:"ownerAccount" type:"string" required:"true"` } // String returns the string representation func (s AllocatePublicVirtualInterfaceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AllocatePublicVirtualInterfaceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AllocatePublicVirtualInterfaceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AllocatePublicVirtualInterfaceInput"} if s.ConnectionId == nil { invalidParams.Add(request.NewErrParamRequired("ConnectionId")) } if s.NewPublicVirtualInterfaceAllocation == nil { invalidParams.Add(request.NewErrParamRequired("NewPublicVirtualInterfaceAllocation")) } if s.OwnerAccount == nil { invalidParams.Add(request.NewErrParamRequired("OwnerAccount")) } if s.NewPublicVirtualInterfaceAllocation != nil { if err := s.NewPublicVirtualInterfaceAllocation.Validate(); err != nil { invalidParams.AddNested("NewPublicVirtualInterfaceAllocation", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for the parameters to the ConfirmConnection operation. type ConfirmConnectionInput struct { _ struct{} `type:"structure"` // ID of the connection. // // Example: dxcon-fg5678gh // // Default: None // // ConnectionId is a required field ConnectionId *string `locationName:"connectionId" type:"string" required:"true"` } // String returns the string representation func (s ConfirmConnectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfirmConnectionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ConfirmConnectionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ConfirmConnectionInput"} if s.ConnectionId == nil { invalidParams.Add(request.NewErrParamRequired("ConnectionId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response received when ConfirmConnection is called. type ConfirmConnectionOutput struct { _ struct{} `type:"structure"` // State of the connection. // // * Ordering: The initial state of a hosted connection provisioned on an // interconnect. The connection stays in the ordering state until the owner // of the hosted connection confirms or declines the connection order. // // * Requested: The initial state of a standard connection. The connection // stays in the requested state until the Letter of Authorization (LOA) is // sent to the customer. // // * Pending: The connection has been approved, and is being initialized. // // * Available: The network link is up, and the connection is ready for use. // // * Down: The network link is down. // // * Deleting: The connection is in the process of being deleted. // // * Deleted: The connection has been deleted. // // * Rejected: A hosted connection in the 'Ordering' state will enter the // 'Rejected' state if it is deleted by the end customer. ConnectionState *string `locationName:"connectionState" type:"string" enum:"ConnectionState"` } // String returns the string representation func (s ConfirmConnectionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfirmConnectionOutput) GoString() string { return s.String() } // Container for the parameters to the ConfirmPrivateVirtualInterface operation. type ConfirmPrivateVirtualInterfaceInput struct { _ struct{} `type:"structure"` // ID of the virtual private gateway that will be attached to the virtual interface. // // A virtual private gateway can be managed via the Amazon Virtual Private Cloud // (VPC) console or the EC2 CreateVpnGateway (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateVpnGateway.html) // action. // // Default: None // // VirtualGatewayId is a required field VirtualGatewayId *string `locationName:"virtualGatewayId" type:"string" required:"true"` // ID of the virtual interface. // // Example: dxvif-123dfg56 // // Default: None // // VirtualInterfaceId is a required field VirtualInterfaceId *string `locationName:"virtualInterfaceId" type:"string" required:"true"` } // String returns the string representation func (s ConfirmPrivateVirtualInterfaceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfirmPrivateVirtualInterfaceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ConfirmPrivateVirtualInterfaceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ConfirmPrivateVirtualInterfaceInput"} if s.VirtualGatewayId == nil { invalidParams.Add(request.NewErrParamRequired("VirtualGatewayId")) } if s.VirtualInterfaceId == nil { invalidParams.Add(request.NewErrParamRequired("VirtualInterfaceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response received when ConfirmPrivateVirtualInterface is called. type ConfirmPrivateVirtualInterfaceOutput struct { _ struct{} `type:"structure"` // State of the virtual interface. // // * Confirming: The creation of the virtual interface is pending confirmation // from the virtual interface owner. If the owner of the virtual interface // is different from the owner of the connection on which it is provisioned, // then the virtual interface will remain in this state until it is confirmed // by the virtual interface owner. // // * Verifying: This state only applies to public virtual interfaces. Each // public virtual interface needs validation before the virtual interface // can be created. // // * Pending: A virtual interface is in this state from the time that it // is created until the virtual interface is ready to forward traffic. // // * Available: A virtual interface that is able to forward traffic. // // * Down: A virtual interface that is BGP down. // // * Deleting: A virtual interface is in this state immediately after calling // DeleteVirtualInterface until it can no longer forward traffic. // // * Deleted: A virtual interface that cannot forward traffic. // // * Rejected: The virtual interface owner has declined creation of the virtual // interface. If a virtual interface in the 'Confirming' state is deleted // by the virtual interface owner, the virtual interface will enter the 'Rejected' // state. VirtualInterfaceState *string `locationName:"virtualInterfaceState" type:"string" enum:"VirtualInterfaceState"` } // String returns the string representation func (s ConfirmPrivateVirtualInterfaceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfirmPrivateVirtualInterfaceOutput) GoString() string { return s.String() } // Container for the parameters to the ConfirmPublicVirtualInterface operation. type ConfirmPublicVirtualInterfaceInput struct { _ struct{} `type:"structure"` // ID of the virtual interface. // // Example: dxvif-123dfg56 // // Default: None // // VirtualInterfaceId is a required field VirtualInterfaceId *string `locationName:"virtualInterfaceId" type:"string" required:"true"` } // String returns the string representation func (s ConfirmPublicVirtualInterfaceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfirmPublicVirtualInterfaceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ConfirmPublicVirtualInterfaceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ConfirmPublicVirtualInterfaceInput"} if s.VirtualInterfaceId == nil { invalidParams.Add(request.NewErrParamRequired("VirtualInterfaceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response received when ConfirmPublicVirtualInterface is called. type ConfirmPublicVirtualInterfaceOutput struct { _ struct{} `type:"structure"` // State of the virtual interface. // // * Confirming: The creation of the virtual interface is pending confirmation // from the virtual interface owner. If the owner of the virtual interface // is different from the owner of the connection on which it is provisioned, // then the virtual interface will remain in this state until it is confirmed // by the virtual interface owner. // // * Verifying: This state only applies to public virtual interfaces. Each // public virtual interface needs validation before the virtual interface // can be created. // // * Pending: A virtual interface is in this state from the time that it // is created until the virtual interface is ready to forward traffic. // // * Available: A virtual interface that is able to forward traffic. // // * Down: A virtual interface that is BGP down. // // * Deleting: A virtual interface is in this state immediately after calling // DeleteVirtualInterface until it can no longer forward traffic. // // * Deleted: A virtual interface that cannot forward traffic. // // * Rejected: The virtual interface owner has declined creation of the virtual // interface. If a virtual interface in the 'Confirming' state is deleted // by the virtual interface owner, the virtual interface will enter the 'Rejected' // state. VirtualInterfaceState *string `locationName:"virtualInterfaceState" type:"string" enum:"VirtualInterfaceState"` } // String returns the string representation func (s ConfirmPublicVirtualInterfaceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfirmPublicVirtualInterfaceOutput) GoString() string { return s.String() } // A connection represents the physical network connection between the AWS Direct // Connect location and the customer. type Connection struct { _ struct{} `type:"structure"` // Bandwidth of the connection. // // Example: 1Gbps (for regular connections), or 500Mbps (for hosted connections) // // Default: None Bandwidth *string `locationName:"bandwidth" type:"string"` // ID of the connection. // // Example: dxcon-fg5678gh // // Default: None ConnectionId *string `locationName:"connectionId" type:"string"` // The name of the connection. // // Example: "My Connection to AWS" // // Default: None ConnectionName *string `locationName:"connectionName" type:"string"` // State of the connection. // // * Ordering: The initial state of a hosted connection provisioned on an // interconnect. The connection stays in the ordering state until the owner // of the hosted connection confirms or declines the connection order. // // * Requested: The initial state of a standard connection. The connection // stays in the requested state until the Letter of Authorization (LOA) is // sent to the customer. // // * Pending: The connection has been approved, and is being initialized. // // * Available: The network link is up, and the connection is ready for use. // // * Down: The network link is down. // // * Deleting: The connection is in the process of being deleted. // // * Deleted: The connection has been deleted. // // * Rejected: A hosted connection in the 'Ordering' state will enter the // 'Rejected' state if it is deleted by the end customer. ConnectionState *string `locationName:"connectionState" type:"string" enum:"ConnectionState"` // The time of the most recent call to DescribeConnectionLoa for this Connection. LoaIssueTime *time.Time `locationName:"loaIssueTime" type:"timestamp" timestampFormat:"unix"` // Where the connection is located. // // Example: EqSV5 // // Default: None Location *string `locationName:"location" type:"string"` // The AWS account that will own the new connection. OwnerAccount *string `locationName:"ownerAccount" type:"string"` // The name of the AWS Direct Connect service provider associated with the connection. PartnerName *string `locationName:"partnerName" type:"string"` // The AWS region where the connection is located. // // Example: us-east-1 // // Default: None Region *string `locationName:"region" type:"string"` // The VLAN ID. // // Example: 101 Vlan *int64 `locationName:"vlan" type:"integer"` } // String returns the string representation func (s Connection) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Connection) GoString() string { return s.String() } // A structure containing a list of connections. type Connections struct { _ struct{} `type:"structure"` // A list of connections. Connections []*Connection `locationName:"connections" type:"list"` } // String returns the string representation func (s Connections) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Connections) GoString() string { return s.String() } // Container for the parameters to the CreateConnection operation. type CreateConnectionInput struct { _ struct{} `type:"structure"` // Bandwidth of the connection. // // Example: 1Gbps // // Default: None // // Bandwidth is a required field Bandwidth *string `locationName:"bandwidth" type:"string" required:"true"` // The name of the connection. // // Example: "My Connection to AWS" // // Default: None // // ConnectionName is a required field ConnectionName *string `locationName:"connectionName" type:"string" required:"true"` // Where the connection is located. // // Example: EqSV5 // // Default: None // // Location is a required field Location *string `locationName:"location" type:"string" required:"true"` } // String returns the string representation func (s CreateConnectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateConnectionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateConnectionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateConnectionInput"} if s.Bandwidth == nil { invalidParams.Add(request.NewErrParamRequired("Bandwidth")) } if s.ConnectionName == nil { invalidParams.Add(request.NewErrParamRequired("ConnectionName")) } if s.Location == nil { invalidParams.Add(request.NewErrParamRequired("Location")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for the parameters to the CreateInterconnect operation. type CreateInterconnectInput struct { _ struct{} `type:"structure"` // The port bandwidth // // Example: 1Gbps // // Default: None // // Available values: 1Gbps,10Gbps // // Bandwidth is a required field Bandwidth *string `locationName:"bandwidth" type:"string" required:"true"` // The name of the interconnect. // // Example: "1G Interconnect to AWS" // // Default: None // // InterconnectName is a required field InterconnectName *string `locationName:"interconnectName" type:"string" required:"true"` // Where the interconnect is located // // Example: EqSV5 // // Default: None // // Location is a required field Location *string `locationName:"location" type:"string" required:"true"` } // String returns the string representation func (s CreateInterconnectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateInterconnectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateInterconnectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateInterconnectInput"} if s.Bandwidth == nil { invalidParams.Add(request.NewErrParamRequired("Bandwidth")) } if s.InterconnectName == nil { invalidParams.Add(request.NewErrParamRequired("InterconnectName")) } if s.Location == nil { invalidParams.Add(request.NewErrParamRequired("Location")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for the parameters to the CreatePrivateVirtualInterface operation. type CreatePrivateVirtualInterfaceInput struct { _ struct{} `type:"structure"` // ID of the connection. // // Example: dxcon-fg5678gh // // Default: None // // ConnectionId is a required field ConnectionId *string `locationName:"connectionId" type:"string" required:"true"` // Detailed information for the private virtual interface to be created. // // Default: None // // NewPrivateVirtualInterface is a required field NewPrivateVirtualInterface *NewPrivateVirtualInterface `locationName:"newPrivateVirtualInterface" type:"structure" required:"true"` } // String returns the string representation func (s CreatePrivateVirtualInterfaceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePrivateVirtualInterfaceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePrivateVirtualInterfaceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePrivateVirtualInterfaceInput"} if s.ConnectionId == nil { invalidParams.Add(request.NewErrParamRequired("ConnectionId")) } if s.NewPrivateVirtualInterface == nil { invalidParams.Add(request.NewErrParamRequired("NewPrivateVirtualInterface")) } if s.NewPrivateVirtualInterface != nil { if err := s.NewPrivateVirtualInterface.Validate(); err != nil { invalidParams.AddNested("NewPrivateVirtualInterface", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for the parameters to the CreatePublicVirtualInterface operation. type CreatePublicVirtualInterfaceInput struct { _ struct{} `type:"structure"` // ID of the connection. // // Example: dxcon-fg5678gh // // Default: None // // ConnectionId is a required field ConnectionId *string `locationName:"connectionId" type:"string" required:"true"` // Detailed information for the public virtual interface to be created. // // Default: None // // NewPublicVirtualInterface is a required field NewPublicVirtualInterface *NewPublicVirtualInterface `locationName:"newPublicVirtualInterface" type:"structure" required:"true"` } // String returns the string representation func (s CreatePublicVirtualInterfaceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePublicVirtualInterfaceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePublicVirtualInterfaceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePublicVirtualInterfaceInput"} if s.ConnectionId == nil { invalidParams.Add(request.NewErrParamRequired("ConnectionId")) } if s.NewPublicVirtualInterface == nil { invalidParams.Add(request.NewErrParamRequired("NewPublicVirtualInterface")) } if s.NewPublicVirtualInterface != nil { if err := s.NewPublicVirtualInterface.Validate(); err != nil { invalidParams.AddNested("NewPublicVirtualInterface", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for the parameters to the DeleteConnection operation. type DeleteConnectionInput struct { _ struct{} `type:"structure"` // ID of the connection. // // Example: dxcon-fg5678gh // // Default: None // // ConnectionId is a required field ConnectionId *string `locationName:"connectionId" type:"string" required:"true"` } // String returns the string representation func (s DeleteConnectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteConnectionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteConnectionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteConnectionInput"} if s.ConnectionId == nil { invalidParams.Add(request.NewErrParamRequired("ConnectionId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for the parameters to the DeleteInterconnect operation. type DeleteInterconnectInput struct { _ struct{} `type:"structure"` // The ID of the interconnect. // // Example: dxcon-abc123 // // InterconnectId is a required field InterconnectId *string `locationName:"interconnectId" type:"string" required:"true"` } // String returns the string representation func (s DeleteInterconnectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteInterconnectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteInterconnectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteInterconnectInput"} if s.InterconnectId == nil { invalidParams.Add(request.NewErrParamRequired("InterconnectId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response received when DeleteInterconnect is called. type DeleteInterconnectOutput struct { _ struct{} `type:"structure"` // State of the interconnect. // // * Requested: The initial state of an interconnect. The interconnect stays // in the requested state until the Letter of Authorization (LOA) is sent // to the customer. // // * Pending>: The interconnect has been approved, and is being initialized. // // * Available: The network link is up, and the interconnect is ready for // use. // // * Down: The network link is down. // // * Deleting: The interconnect is in the process of being deleted. // // * Deleted: The interconnect has been deleted. InterconnectState *string `locationName:"interconnectState" type:"string" enum:"InterconnectState"` } // String returns the string representation func (s DeleteInterconnectOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteInterconnectOutput) GoString() string { return s.String() } // Container for the parameters to the DeleteVirtualInterface operation. type DeleteVirtualInterfaceInput struct { _ struct{} `type:"structure"` // ID of the virtual interface. // // Example: dxvif-123dfg56 // // Default: None // // VirtualInterfaceId is a required field VirtualInterfaceId *string `locationName:"virtualInterfaceId" type:"string" required:"true"` } // String returns the string representation func (s DeleteVirtualInterfaceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVirtualInterfaceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteVirtualInterfaceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteVirtualInterfaceInput"} if s.VirtualInterfaceId == nil { invalidParams.Add(request.NewErrParamRequired("VirtualInterfaceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response received when DeleteVirtualInterface is called. type DeleteVirtualInterfaceOutput struct { _ struct{} `type:"structure"` // State of the virtual interface. // // * Confirming: The creation of the virtual interface is pending confirmation // from the virtual interface owner. If the owner of the virtual interface // is different from the owner of the connection on which it is provisioned, // then the virtual interface will remain in this state until it is confirmed // by the virtual interface owner. // // * Verifying: This state only applies to public virtual interfaces. Each // public virtual interface needs validation before the virtual interface // can be created. // // * Pending: A virtual interface is in this state from the time that it // is created until the virtual interface is ready to forward traffic. // // * Available: A virtual interface that is able to forward traffic. // // * Down: A virtual interface that is BGP down. // // * Deleting: A virtual interface is in this state immediately after calling // DeleteVirtualInterface until it can no longer forward traffic. // // * Deleted: A virtual interface that cannot forward traffic. // // * Rejected: The virtual interface owner has declined creation of the virtual // interface. If a virtual interface in the 'Confirming' state is deleted // by the virtual interface owner, the virtual interface will enter the 'Rejected' // state. VirtualInterfaceState *string `locationName:"virtualInterfaceState" type:"string" enum:"VirtualInterfaceState"` } // String returns the string representation func (s DeleteVirtualInterfaceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVirtualInterfaceOutput) GoString() string { return s.String() } // Container for the parameters to the DescribeConnectionLoa operation. type DescribeConnectionLoaInput struct { _ struct{} `type:"structure"` // ID of the connection. // // Example: dxcon-fg5678gh // // Default: None // // ConnectionId is a required field ConnectionId *string `locationName:"connectionId" type:"string" required:"true"` // A standard media type indicating the content type of the LOA-CFA document. // Currently, the only supported value is "application/pdf". // // Default: application/pdf LoaContentType *string `locationName:"loaContentType" type:"string" enum:"LoaContentType"` // The name of the APN partner or service provider who establishes connectivity // on your behalf. If you supply this parameter, the LOA-CFA lists the provider // name alongside your company name as the requester of the cross connect. // // Default: None ProviderName *string `locationName:"providerName" type:"string"` } // String returns the string representation func (s DescribeConnectionLoaInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConnectionLoaInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeConnectionLoaInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeConnectionLoaInput"} if s.ConnectionId == nil { invalidParams.Add(request.NewErrParamRequired("ConnectionId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response received when DescribeConnectionLoa is called. type DescribeConnectionLoaOutput struct { _ struct{} `type:"structure"` // A structure containing the Letter of Authorization - Connecting Facility // Assignment (LOA-CFA) for a connection. Loa *Loa `locationName:"loa" type:"structure"` } // String returns the string representation func (s DescribeConnectionLoaOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConnectionLoaOutput) GoString() string { return s.String() } // Container for the parameters to the DescribeConnections operation. type DescribeConnectionsInput struct { _ struct{} `type:"structure"` // ID of the connection. // // Example: dxcon-fg5678gh // // Default: None ConnectionId *string `locationName:"connectionId" type:"string"` } // String returns the string representation func (s DescribeConnectionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConnectionsInput) GoString() string { return s.String() } // Container for the parameters to the DescribeConnectionsOnInterconnect operation. type DescribeConnectionsOnInterconnectInput struct { _ struct{} `type:"structure"` // ID of the interconnect on which a list of connection is provisioned. // // Example: dxcon-abc123 // // Default: None // // InterconnectId is a required field InterconnectId *string `locationName:"interconnectId" type:"string" required:"true"` } // String returns the string representation func (s DescribeConnectionsOnInterconnectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConnectionsOnInterconnectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeConnectionsOnInterconnectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeConnectionsOnInterconnectInput"} if s.InterconnectId == nil { invalidParams.Add(request.NewErrParamRequired("InterconnectId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for the parameters to the DescribeInterconnectLoa operation. type DescribeInterconnectLoaInput struct { _ struct{} `type:"structure"` // The ID of the interconnect. // // Example: dxcon-abc123 // // InterconnectId is a required field InterconnectId *string `locationName:"interconnectId" type:"string" required:"true"` // A standard media type indicating the content type of the LOA-CFA document. // Currently, the only supported value is "application/pdf". // // Default: application/pdf LoaContentType *string `locationName:"loaContentType" type:"string" enum:"LoaContentType"` // The name of the service provider who establishes connectivity on your behalf. // If you supply this parameter, the LOA-CFA lists the provider name alongside // your company name as the requester of the cross connect. // // Default: None ProviderName *string `locationName:"providerName" type:"string"` } // String returns the string representation func (s DescribeInterconnectLoaInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInterconnectLoaInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeInterconnectLoaInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeInterconnectLoaInput"} if s.InterconnectId == nil { invalidParams.Add(request.NewErrParamRequired("InterconnectId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response received when DescribeInterconnectLoa is called. type DescribeInterconnectLoaOutput struct { _ struct{} `type:"structure"` // A structure containing the Letter of Authorization - Connecting Facility // Assignment (LOA-CFA) for a connection. Loa *Loa `locationName:"loa" type:"structure"` } // String returns the string representation func (s DescribeInterconnectLoaOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInterconnectLoaOutput) GoString() string { return s.String() } // Container for the parameters to the DescribeInterconnects operation. type DescribeInterconnectsInput struct { _ struct{} `type:"structure"` // The ID of the interconnect. // // Example: dxcon-abc123 InterconnectId *string `locationName:"interconnectId" type:"string"` } // String returns the string representation func (s DescribeInterconnectsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInterconnectsInput) GoString() string { return s.String() } // A structure containing a list of interconnects. type DescribeInterconnectsOutput struct { _ struct{} `type:"structure"` // A list of interconnects. Interconnects []*Interconnect `locationName:"interconnects" type:"list"` } // String returns the string representation func (s DescribeInterconnectsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInterconnectsOutput) GoString() string { return s.String() } type DescribeLocationsInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DescribeLocationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLocationsInput) GoString() string { return s.String() } // A location is a network facility where AWS Direct Connect routers are available // to be connected. Generally, these are colocation hubs where many network // providers have equipment, and where cross connects can be delivered. Locations // include a name and facility code, and must be provided when creating a connection. type DescribeLocationsOutput struct { _ struct{} `type:"structure"` // A list of colocation hubs where network providers have equipment. Most regions // have multiple locations available. Locations []*Location `locationName:"locations" type:"list"` } // String returns the string representation func (s DescribeLocationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLocationsOutput) GoString() string { return s.String() } type DescribeVirtualGatewaysInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DescribeVirtualGatewaysInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVirtualGatewaysInput) GoString() string { return s.String() } // A structure containing a list of virtual private gateways. type DescribeVirtualGatewaysOutput struct { _ struct{} `type:"structure"` // A list of virtual private gateways. VirtualGateways []*VirtualGateway `locationName:"virtualGateways" type:"list"` } // String returns the string representation func (s DescribeVirtualGatewaysOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVirtualGatewaysOutput) GoString() string { return s.String() } // Container for the parameters to the DescribeVirtualInterfaces operation. type DescribeVirtualInterfacesInput struct { _ struct{} `type:"structure"` // ID of the connection. // // Example: dxcon-fg5678gh // // Default: None ConnectionId *string `locationName:"connectionId" type:"string"` // ID of the virtual interface. // // Example: dxvif-123dfg56 // // Default: None VirtualInterfaceId *string `locationName:"virtualInterfaceId" type:"string"` } // String returns the string representation func (s DescribeVirtualInterfacesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVirtualInterfacesInput) GoString() string { return s.String() } // A structure containing a list of virtual interfaces. type DescribeVirtualInterfacesOutput struct { _ struct{} `type:"structure"` // A list of virtual interfaces. VirtualInterfaces []*VirtualInterface `locationName:"virtualInterfaces" type:"list"` } // String returns the string representation func (s DescribeVirtualInterfacesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVirtualInterfacesOutput) GoString() string { return s.String() } // An interconnect is a connection that can host other connections. // // Like a standard AWS Direct Connect connection, an interconnect represents // the physical connection between an AWS Direct Connect partner's network and // a specific Direct Connect location. An AWS Direct Connect partner who owns // an interconnect can provision hosted connections on the interconnect for // their end customers, thereby providing the end customers with connectivity // to AWS services. // // The resources of the interconnect, including bandwidth and VLAN numbers, // are shared by all of the hosted connections on the interconnect, and the // owner of the interconnect determines how these resources are assigned. type Interconnect struct { _ struct{} `type:"structure"` // Bandwidth of the connection. // // Example: 1Gbps // // Default: None Bandwidth *string `locationName:"bandwidth" type:"string"` // The ID of the interconnect. // // Example: dxcon-abc123 InterconnectId *string `locationName:"interconnectId" type:"string"` // The name of the interconnect. // // Example: "1G Interconnect to AWS" InterconnectName *string `locationName:"interconnectName" type:"string"` // State of the interconnect. // // * Requested: The initial state of an interconnect. The interconnect stays // in the requested state until the Letter of Authorization (LOA) is sent // to the customer. // // * Pending>: The interconnect has been approved, and is being initialized. // // * Available: The network link is up, and the interconnect is ready for // use. // // * Down: The network link is down. // // * Deleting: The interconnect is in the process of being deleted. // // * Deleted: The interconnect has been deleted. InterconnectState *string `locationName:"interconnectState" type:"string" enum:"InterconnectState"` // The time of the most recent call to DescribeInterconnectLoa for this Interconnect. LoaIssueTime *time.Time `locationName:"loaIssueTime" type:"timestamp" timestampFormat:"unix"` // Where the connection is located. // // Example: EqSV5 // // Default: None Location *string `locationName:"location" type:"string"` // The AWS region where the connection is located. // // Example: us-east-1 // // Default: None Region *string `locationName:"region" type:"string"` } // String returns the string representation func (s Interconnect) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Interconnect) GoString() string { return s.String() } // A structure containing the Letter of Authorization - Connecting Facility // Assignment (LOA-CFA) for a connection. type Loa struct { _ struct{} `type:"structure"` // The binary contents of the LOA-CFA document. // // LoaContent is automatically base64 encoded/decoded by the SDK. LoaContent []byte `locationName:"loaContent" type:"blob"` // A standard media type indicating the content type of the LOA-CFA document. // Currently, the only supported value is "application/pdf". // // Default: application/pdf LoaContentType *string `locationName:"loaContentType" type:"string" enum:"LoaContentType"` } // String returns the string representation func (s Loa) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Loa) GoString() string { return s.String() } // An AWS Direct Connect location where connections and interconnects can be // requested. type Location struct { _ struct{} `type:"structure"` // The code used to indicate the AWS Direct Connect location. LocationCode *string `locationName:"locationCode" type:"string"` // The name of the AWS Direct Connect location. The name includes the colocation // partner name and the physical site of the lit building. LocationName *string `locationName:"locationName" type:"string"` } // String returns the string representation func (s Location) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Location) GoString() string { return s.String() } // A structure containing information about a new private virtual interface. type NewPrivateVirtualInterface struct { _ struct{} `type:"structure"` // IP address assigned to the Amazon interface. // // Example: 192.168.1.1/30 AmazonAddress *string `locationName:"amazonAddress" type:"string"` // Autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. // // Example: 65000 // // Asn is a required field Asn *int64 `locationName:"asn" type:"integer" required:"true"` // Authentication key for BGP configuration. // // Example: asdf34example AuthKey *string `locationName:"authKey" type:"string"` // IP address assigned to the customer interface. // // Example: 192.168.1.2/30 CustomerAddress *string `locationName:"customerAddress" type:"string"` // The ID of the virtual private gateway to a VPC. This only applies to private // virtual interfaces. // // Example: vgw-123er56 // // VirtualGatewayId is a required field VirtualGatewayId *string `locationName:"virtualGatewayId" type:"string" required:"true"` // The name of the virtual interface assigned by the customer. // // Example: "My VPC" // // VirtualInterfaceName is a required field VirtualInterfaceName *string `locationName:"virtualInterfaceName" type:"string" required:"true"` // The VLAN ID. // // Example: 101 // // Vlan is a required field Vlan *int64 `locationName:"vlan" type:"integer" required:"true"` } // String returns the string representation func (s NewPrivateVirtualInterface) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NewPrivateVirtualInterface) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *NewPrivateVirtualInterface) Validate() error { invalidParams := request.ErrInvalidParams{Context: "NewPrivateVirtualInterface"} if s.Asn == nil { invalidParams.Add(request.NewErrParamRequired("Asn")) } if s.VirtualGatewayId == nil { invalidParams.Add(request.NewErrParamRequired("VirtualGatewayId")) } if s.VirtualInterfaceName == nil { invalidParams.Add(request.NewErrParamRequired("VirtualInterfaceName")) } if s.Vlan == nil { invalidParams.Add(request.NewErrParamRequired("Vlan")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A structure containing information about a private virtual interface that // will be provisioned on a connection. type NewPrivateVirtualInterfaceAllocation struct { _ struct{} `type:"structure"` // IP address assigned to the Amazon interface. // // Example: 192.168.1.1/30 AmazonAddress *string `locationName:"amazonAddress" type:"string"` // Autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. // // Example: 65000 // // Asn is a required field Asn *int64 `locationName:"asn" type:"integer" required:"true"` // Authentication key for BGP configuration. // // Example: asdf34example AuthKey *string `locationName:"authKey" type:"string"` // IP address assigned to the customer interface. // // Example: 192.168.1.2/30 CustomerAddress *string `locationName:"customerAddress" type:"string"` // The name of the virtual interface assigned by the customer. // // Example: "My VPC" // // VirtualInterfaceName is a required field VirtualInterfaceName *string `locationName:"virtualInterfaceName" type:"string" required:"true"` // The VLAN ID. // // Example: 101 // // Vlan is a required field Vlan *int64 `locationName:"vlan" type:"integer" required:"true"` } // String returns the string representation func (s NewPrivateVirtualInterfaceAllocation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NewPrivateVirtualInterfaceAllocation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *NewPrivateVirtualInterfaceAllocation) Validate() error { invalidParams := request.ErrInvalidParams{Context: "NewPrivateVirtualInterfaceAllocation"} if s.Asn == nil { invalidParams.Add(request.NewErrParamRequired("Asn")) } if s.VirtualInterfaceName == nil { invalidParams.Add(request.NewErrParamRequired("VirtualInterfaceName")) } if s.Vlan == nil { invalidParams.Add(request.NewErrParamRequired("Vlan")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A structure containing information about a new public virtual interface. type NewPublicVirtualInterface struct { _ struct{} `type:"structure"` // IP address assigned to the Amazon interface. // // Example: 192.168.1.1/30 // // AmazonAddress is a required field AmazonAddress *string `locationName:"amazonAddress" type:"string" required:"true"` // Autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. // // Example: 65000 // // Asn is a required field Asn *int64 `locationName:"asn" type:"integer" required:"true"` // Authentication key for BGP configuration. // // Example: asdf34example AuthKey *string `locationName:"authKey" type:"string"` // IP address assigned to the customer interface. // // Example: 192.168.1.2/30 // // CustomerAddress is a required field CustomerAddress *string `locationName:"customerAddress" type:"string" required:"true"` // A list of routes to be advertised to the AWS network in this region (public // virtual interface). // // RouteFilterPrefixes is a required field RouteFilterPrefixes []*RouteFilterPrefix `locationName:"routeFilterPrefixes" type:"list" required:"true"` // The name of the virtual interface assigned by the customer. // // Example: "My VPC" // // VirtualInterfaceName is a required field VirtualInterfaceName *string `locationName:"virtualInterfaceName" type:"string" required:"true"` // The VLAN ID. // // Example: 101 // // Vlan is a required field Vlan *int64 `locationName:"vlan" type:"integer" required:"true"` } // String returns the string representation func (s NewPublicVirtualInterface) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NewPublicVirtualInterface) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *NewPublicVirtualInterface) Validate() error { invalidParams := request.ErrInvalidParams{Context: "NewPublicVirtualInterface"} if s.AmazonAddress == nil { invalidParams.Add(request.NewErrParamRequired("AmazonAddress")) } if s.Asn == nil { invalidParams.Add(request.NewErrParamRequired("Asn")) } if s.CustomerAddress == nil { invalidParams.Add(request.NewErrParamRequired("CustomerAddress")) } if s.RouteFilterPrefixes == nil { invalidParams.Add(request.NewErrParamRequired("RouteFilterPrefixes")) } if s.VirtualInterfaceName == nil { invalidParams.Add(request.NewErrParamRequired("VirtualInterfaceName")) } if s.Vlan == nil { invalidParams.Add(request.NewErrParamRequired("Vlan")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A structure containing information about a public virtual interface that // will be provisioned on a connection. type NewPublicVirtualInterfaceAllocation struct { _ struct{} `type:"structure"` // IP address assigned to the Amazon interface. // // Example: 192.168.1.1/30 // // AmazonAddress is a required field AmazonAddress *string `locationName:"amazonAddress" type:"string" required:"true"` // Autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. // // Example: 65000 // // Asn is a required field Asn *int64 `locationName:"asn" type:"integer" required:"true"` // Authentication key for BGP configuration. // // Example: asdf34example AuthKey *string `locationName:"authKey" type:"string"` // IP address assigned to the customer interface. // // Example: 192.168.1.2/30 // // CustomerAddress is a required field CustomerAddress *string `locationName:"customerAddress" type:"string" required:"true"` // A list of routes to be advertised to the AWS network in this region (public // virtual interface). // // RouteFilterPrefixes is a required field RouteFilterPrefixes []*RouteFilterPrefix `locationName:"routeFilterPrefixes" type:"list" required:"true"` // The name of the virtual interface assigned by the customer. // // Example: "My VPC" // // VirtualInterfaceName is a required field VirtualInterfaceName *string `locationName:"virtualInterfaceName" type:"string" required:"true"` // The VLAN ID. // // Example: 101 // // Vlan is a required field Vlan *int64 `locationName:"vlan" type:"integer" required:"true"` } // String returns the string representation func (s NewPublicVirtualInterfaceAllocation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NewPublicVirtualInterfaceAllocation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *NewPublicVirtualInterfaceAllocation) Validate() error { invalidParams := request.ErrInvalidParams{Context: "NewPublicVirtualInterfaceAllocation"} if s.AmazonAddress == nil { invalidParams.Add(request.NewErrParamRequired("AmazonAddress")) } if s.Asn == nil { invalidParams.Add(request.NewErrParamRequired("Asn")) } if s.CustomerAddress == nil { invalidParams.Add(request.NewErrParamRequired("CustomerAddress")) } if s.RouteFilterPrefixes == nil { invalidParams.Add(request.NewErrParamRequired("RouteFilterPrefixes")) } if s.VirtualInterfaceName == nil { invalidParams.Add(request.NewErrParamRequired("VirtualInterfaceName")) } if s.Vlan == nil { invalidParams.Add(request.NewErrParamRequired("Vlan")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A route filter prefix that the customer can advertise through Border Gateway // Protocol (BGP) over a public virtual interface. type RouteFilterPrefix struct { _ struct{} `type:"structure"` // CIDR notation for the advertised route. Multiple routes are separated by // commas. // // Example: 10.10.10.0/24,10.10.11.0/24 Cidr *string `locationName:"cidr" type:"string"` } // String returns the string representation func (s RouteFilterPrefix) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RouteFilterPrefix) GoString() string { return s.String() } // You can create one or more AWS Direct Connect private virtual interfaces // linking to your virtual private gateway. // // Virtual private gateways can be managed using the Amazon Virtual Private // Cloud (Amazon VPC) console or the Amazon EC2 CreateVpnGateway action (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateVpnGateway.html). type VirtualGateway struct { _ struct{} `type:"structure"` // The ID of the virtual private gateway to a VPC. This only applies to private // virtual interfaces. // // Example: vgw-123er56 VirtualGatewayId *string `locationName:"virtualGatewayId" type:"string"` // State of the virtual private gateway. // // * Pending: This is the initial state after calling CreateVpnGateway. // // * Available: Ready for use by a private virtual interface. // // * Deleting: This is the initial state after calling DeleteVpnGateway. // // * Deleted: In this state, a private virtual interface is unable to send // traffic over this gateway. VirtualGatewayState *string `locationName:"virtualGatewayState" type:"string"` } // String returns the string representation func (s VirtualGateway) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VirtualGateway) GoString() string { return s.String() } // A virtual interface (VLAN) transmits the traffic between the AWS Direct Connect // location and the customer. type VirtualInterface struct { _ struct{} `type:"structure"` // IP address assigned to the Amazon interface. // // Example: 192.168.1.1/30 AmazonAddress *string `locationName:"amazonAddress" type:"string"` // Autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. // // Example: 65000 Asn *int64 `locationName:"asn" type:"integer"` // Authentication key for BGP configuration. // // Example: asdf34example AuthKey *string `locationName:"authKey" type:"string"` // ID of the connection. // // Example: dxcon-fg5678gh // // Default: None ConnectionId *string `locationName:"connectionId" type:"string"` // IP address assigned to the customer interface. // // Example: 192.168.1.2/30 CustomerAddress *string `locationName:"customerAddress" type:"string"` // Information for generating the customer router configuration. CustomerRouterConfig *string `locationName:"customerRouterConfig" type:"string"` // Where the connection is located. // // Example: EqSV5 // // Default: None Location *string `locationName:"location" type:"string"` // The AWS account that will own the new virtual interface. OwnerAccount *string `locationName:"ownerAccount" type:"string"` // A list of routes to be advertised to the AWS network in this region (public // virtual interface). RouteFilterPrefixes []*RouteFilterPrefix `locationName:"routeFilterPrefixes" type:"list"` // The ID of the virtual private gateway to a VPC. This only applies to private // virtual interfaces. // // Example: vgw-123er56 VirtualGatewayId *string `locationName:"virtualGatewayId" type:"string"` // ID of the virtual interface. // // Example: dxvif-123dfg56 // // Default: None VirtualInterfaceId *string `locationName:"virtualInterfaceId" type:"string"` // The name of the virtual interface assigned by the customer. // // Example: "My VPC" VirtualInterfaceName *string `locationName:"virtualInterfaceName" type:"string"` // State of the virtual interface. // // * Confirming: The creation of the virtual interface is pending confirmation // from the virtual interface owner. If the owner of the virtual interface // is different from the owner of the connection on which it is provisioned, // then the virtual interface will remain in this state until it is confirmed // by the virtual interface owner. // // * Verifying: This state only applies to public virtual interfaces. Each // public virtual interface needs validation before the virtual interface // can be created. // // * Pending: A virtual interface is in this state from the time that it // is created until the virtual interface is ready to forward traffic. // // * Available: A virtual interface that is able to forward traffic. // // * Down: A virtual interface that is BGP down. // // * Deleting: A virtual interface is in this state immediately after calling // DeleteVirtualInterface until it can no longer forward traffic. // // * Deleted: A virtual interface that cannot forward traffic. // // * Rejected: The virtual interface owner has declined creation of the virtual // interface. If a virtual interface in the 'Confirming' state is deleted // by the virtual interface owner, the virtual interface will enter the 'Rejected' // state. VirtualInterfaceState *string `locationName:"virtualInterfaceState" type:"string" enum:"VirtualInterfaceState"` // The type of virtual interface. // // Example: private (Amazon VPC) or public (Amazon S3, Amazon DynamoDB, and // so on.) VirtualInterfaceType *string `locationName:"virtualInterfaceType" type:"string"` // The VLAN ID. // // Example: 101 Vlan *int64 `locationName:"vlan" type:"integer"` } // String returns the string representation func (s VirtualInterface) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VirtualInterface) GoString() string { return s.String() } // State of the connection. // // * Ordering: The initial state of a hosted connection provisioned on an // interconnect. The connection stays in the ordering state until the owner // of the hosted connection confirms or declines the connection order. // // * Requested: The initial state of a standard connection. The connection // stays in the requested state until the Letter of Authorization (LOA) is // sent to the customer. // // * Pending: The connection has been approved, and is being initialized. // // * Available: The network link is up, and the connection is ready for use. // // * Down: The network link is down. // // * Deleting: The connection is in the process of being deleted. // // * Deleted: The connection has been deleted. // // * Rejected: A hosted connection in the 'Ordering' state will enter the // 'Rejected' state if it is deleted by the end customer. const ( // ConnectionStateOrdering is a ConnectionState enum value ConnectionStateOrdering = "ordering" // ConnectionStateRequested is a ConnectionState enum value ConnectionStateRequested = "requested" // ConnectionStatePending is a ConnectionState enum value ConnectionStatePending = "pending" // ConnectionStateAvailable is a ConnectionState enum value ConnectionStateAvailable = "available" // ConnectionStateDown is a ConnectionState enum value ConnectionStateDown = "down" // ConnectionStateDeleting is a ConnectionState enum value ConnectionStateDeleting = "deleting" // ConnectionStateDeleted is a ConnectionState enum value ConnectionStateDeleted = "deleted" // ConnectionStateRejected is a ConnectionState enum value ConnectionStateRejected = "rejected" ) // State of the interconnect. // // * Requested: The initial state of an interconnect. The interconnect stays // in the requested state until the Letter of Authorization (LOA) is sent // to the customer. // // * Pending>: The interconnect has been approved, and is being initialized. // // * Available: The network link is up, and the interconnect is ready for // use. // // * Down: The network link is down. // // * Deleting: The interconnect is in the process of being deleted. // // * Deleted: The interconnect has been deleted. const ( // InterconnectStateRequested is a InterconnectState enum value InterconnectStateRequested = "requested" // InterconnectStatePending is a InterconnectState enum value InterconnectStatePending = "pending" // InterconnectStateAvailable is a InterconnectState enum value InterconnectStateAvailable = "available" // InterconnectStateDown is a InterconnectState enum value InterconnectStateDown = "down" // InterconnectStateDeleting is a InterconnectState enum value InterconnectStateDeleting = "deleting" // InterconnectStateDeleted is a InterconnectState enum value InterconnectStateDeleted = "deleted" ) // A standard media type indicating the content type of the LOA-CFA document. // Currently, the only supported value is "application/pdf". // // Default: application/pdf const ( // LoaContentTypeApplicationPdf is a LoaContentType enum value LoaContentTypeApplicationPdf = "application/pdf" ) // State of the virtual interface. // // * Confirming: The creation of the virtual interface is pending confirmation // from the virtual interface owner. If the owner of the virtual interface // is different from the owner of the connection on which it is provisioned, // then the virtual interface will remain in this state until it is confirmed // by the virtual interface owner. // // * Verifying: This state only applies to public virtual interfaces. Each // public virtual interface needs validation before the virtual interface // can be created. // // * Pending: A virtual interface is in this state from the time that it // is created until the virtual interface is ready to forward traffic. // // * Available: A virtual interface that is able to forward traffic. // // * Down: A virtual interface that is BGP down. // // * Deleting: A virtual interface is in this state immediately after calling // DeleteVirtualInterface until it can no longer forward traffic. // // * Deleted: A virtual interface that cannot forward traffic. // // * Rejected: The virtual interface owner has declined creation of the virtual // interface. If a virtual interface in the 'Confirming' state is deleted // by the virtual interface owner, the virtual interface will enter the 'Rejected' // state. const ( // VirtualInterfaceStateConfirming is a VirtualInterfaceState enum value VirtualInterfaceStateConfirming = "confirming" // VirtualInterfaceStateVerifying is a VirtualInterfaceState enum value VirtualInterfaceStateVerifying = "verifying" // VirtualInterfaceStatePending is a VirtualInterfaceState enum value VirtualInterfaceStatePending = "pending" // VirtualInterfaceStateAvailable is a VirtualInterfaceState enum value VirtualInterfaceStateAvailable = "available" // VirtualInterfaceStateDown is a VirtualInterfaceState enum value VirtualInterfaceStateDown = "down" // VirtualInterfaceStateDeleting is a VirtualInterfaceState enum value VirtualInterfaceStateDeleting = "deleting" // VirtualInterfaceStateDeleted is a VirtualInterfaceState enum value VirtualInterfaceStateDeleted = "deleted" // VirtualInterfaceStateRejected is a VirtualInterfaceState enum value VirtualInterfaceStateRejected = "rejected" ) aws-sdk-go-1.4.22/service/directconnect/directconnectiface/000077500000000000000000000000001300374646400236635ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/directconnect/directconnectiface/interface.go000066400000000000000000000170021300374646400261520ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package directconnectiface provides an interface to enable mocking the AWS Direct Connect service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package directconnectiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/directconnect" ) // DirectConnectAPI provides an interface to enable mocking the // directconnect.DirectConnect service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Direct Connect. // func myFunc(svc directconnectiface.DirectConnectAPI) bool { // // Make svc.AllocateConnectionOnInterconnect request // } // // func main() { // sess := session.New() // svc := directconnect.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockDirectConnectClient struct { // directconnectiface.DirectConnectAPI // } // func (m *mockDirectConnectClient) AllocateConnectionOnInterconnect(input *directconnect.AllocateConnectionOnInterconnectInput) (*directconnect.Connection, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockDirectConnectClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type DirectConnectAPI interface { AllocateConnectionOnInterconnectRequest(*directconnect.AllocateConnectionOnInterconnectInput) (*request.Request, *directconnect.Connection) AllocateConnectionOnInterconnect(*directconnect.AllocateConnectionOnInterconnectInput) (*directconnect.Connection, error) AllocatePrivateVirtualInterfaceRequest(*directconnect.AllocatePrivateVirtualInterfaceInput) (*request.Request, *directconnect.VirtualInterface) AllocatePrivateVirtualInterface(*directconnect.AllocatePrivateVirtualInterfaceInput) (*directconnect.VirtualInterface, error) AllocatePublicVirtualInterfaceRequest(*directconnect.AllocatePublicVirtualInterfaceInput) (*request.Request, *directconnect.VirtualInterface) AllocatePublicVirtualInterface(*directconnect.AllocatePublicVirtualInterfaceInput) (*directconnect.VirtualInterface, error) ConfirmConnectionRequest(*directconnect.ConfirmConnectionInput) (*request.Request, *directconnect.ConfirmConnectionOutput) ConfirmConnection(*directconnect.ConfirmConnectionInput) (*directconnect.ConfirmConnectionOutput, error) ConfirmPrivateVirtualInterfaceRequest(*directconnect.ConfirmPrivateVirtualInterfaceInput) (*request.Request, *directconnect.ConfirmPrivateVirtualInterfaceOutput) ConfirmPrivateVirtualInterface(*directconnect.ConfirmPrivateVirtualInterfaceInput) (*directconnect.ConfirmPrivateVirtualInterfaceOutput, error) ConfirmPublicVirtualInterfaceRequest(*directconnect.ConfirmPublicVirtualInterfaceInput) (*request.Request, *directconnect.ConfirmPublicVirtualInterfaceOutput) ConfirmPublicVirtualInterface(*directconnect.ConfirmPublicVirtualInterfaceInput) (*directconnect.ConfirmPublicVirtualInterfaceOutput, error) CreateConnectionRequest(*directconnect.CreateConnectionInput) (*request.Request, *directconnect.Connection) CreateConnection(*directconnect.CreateConnectionInput) (*directconnect.Connection, error) CreateInterconnectRequest(*directconnect.CreateInterconnectInput) (*request.Request, *directconnect.Interconnect) CreateInterconnect(*directconnect.CreateInterconnectInput) (*directconnect.Interconnect, error) CreatePrivateVirtualInterfaceRequest(*directconnect.CreatePrivateVirtualInterfaceInput) (*request.Request, *directconnect.VirtualInterface) CreatePrivateVirtualInterface(*directconnect.CreatePrivateVirtualInterfaceInput) (*directconnect.VirtualInterface, error) CreatePublicVirtualInterfaceRequest(*directconnect.CreatePublicVirtualInterfaceInput) (*request.Request, *directconnect.VirtualInterface) CreatePublicVirtualInterface(*directconnect.CreatePublicVirtualInterfaceInput) (*directconnect.VirtualInterface, error) DeleteConnectionRequest(*directconnect.DeleteConnectionInput) (*request.Request, *directconnect.Connection) DeleteConnection(*directconnect.DeleteConnectionInput) (*directconnect.Connection, error) DeleteInterconnectRequest(*directconnect.DeleteInterconnectInput) (*request.Request, *directconnect.DeleteInterconnectOutput) DeleteInterconnect(*directconnect.DeleteInterconnectInput) (*directconnect.DeleteInterconnectOutput, error) DeleteVirtualInterfaceRequest(*directconnect.DeleteVirtualInterfaceInput) (*request.Request, *directconnect.DeleteVirtualInterfaceOutput) DeleteVirtualInterface(*directconnect.DeleteVirtualInterfaceInput) (*directconnect.DeleteVirtualInterfaceOutput, error) DescribeConnectionLoaRequest(*directconnect.DescribeConnectionLoaInput) (*request.Request, *directconnect.DescribeConnectionLoaOutput) DescribeConnectionLoa(*directconnect.DescribeConnectionLoaInput) (*directconnect.DescribeConnectionLoaOutput, error) DescribeConnectionsRequest(*directconnect.DescribeConnectionsInput) (*request.Request, *directconnect.Connections) DescribeConnections(*directconnect.DescribeConnectionsInput) (*directconnect.Connections, error) DescribeConnectionsOnInterconnectRequest(*directconnect.DescribeConnectionsOnInterconnectInput) (*request.Request, *directconnect.Connections) DescribeConnectionsOnInterconnect(*directconnect.DescribeConnectionsOnInterconnectInput) (*directconnect.Connections, error) DescribeInterconnectLoaRequest(*directconnect.DescribeInterconnectLoaInput) (*request.Request, *directconnect.DescribeInterconnectLoaOutput) DescribeInterconnectLoa(*directconnect.DescribeInterconnectLoaInput) (*directconnect.DescribeInterconnectLoaOutput, error) DescribeInterconnectsRequest(*directconnect.DescribeInterconnectsInput) (*request.Request, *directconnect.DescribeInterconnectsOutput) DescribeInterconnects(*directconnect.DescribeInterconnectsInput) (*directconnect.DescribeInterconnectsOutput, error) DescribeLocationsRequest(*directconnect.DescribeLocationsInput) (*request.Request, *directconnect.DescribeLocationsOutput) DescribeLocations(*directconnect.DescribeLocationsInput) (*directconnect.DescribeLocationsOutput, error) DescribeVirtualGatewaysRequest(*directconnect.DescribeVirtualGatewaysInput) (*request.Request, *directconnect.DescribeVirtualGatewaysOutput) DescribeVirtualGateways(*directconnect.DescribeVirtualGatewaysInput) (*directconnect.DescribeVirtualGatewaysOutput, error) DescribeVirtualInterfacesRequest(*directconnect.DescribeVirtualInterfacesInput) (*request.Request, *directconnect.DescribeVirtualInterfacesOutput) DescribeVirtualInterfaces(*directconnect.DescribeVirtualInterfacesInput) (*directconnect.DescribeVirtualInterfacesOutput, error) } var _ DirectConnectAPI = (*directconnect.DirectConnect)(nil) aws-sdk-go-1.4.22/service/directconnect/examples_test.go000066400000000000000000000363241300374646400232630ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package directconnect_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/directconnect" ) var _ time.Duration var _ bytes.Buffer func ExampleDirectConnect_AllocateConnectionOnInterconnect() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.AllocateConnectionOnInterconnectInput{ Bandwidth: aws.String("Bandwidth"), // Required ConnectionName: aws.String("ConnectionName"), // Required InterconnectId: aws.String("InterconnectId"), // Required OwnerAccount: aws.String("OwnerAccount"), // Required Vlan: aws.Int64(1), // Required } resp, err := svc.AllocateConnectionOnInterconnect(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_AllocatePrivateVirtualInterface() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.AllocatePrivateVirtualInterfaceInput{ ConnectionId: aws.String("ConnectionId"), // Required NewPrivateVirtualInterfaceAllocation: &directconnect.NewPrivateVirtualInterfaceAllocation{ // Required Asn: aws.Int64(1), // Required VirtualInterfaceName: aws.String("VirtualInterfaceName"), // Required Vlan: aws.Int64(1), // Required AmazonAddress: aws.String("AmazonAddress"), AuthKey: aws.String("BGPAuthKey"), CustomerAddress: aws.String("CustomerAddress"), }, OwnerAccount: aws.String("OwnerAccount"), // Required } resp, err := svc.AllocatePrivateVirtualInterface(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_AllocatePublicVirtualInterface() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.AllocatePublicVirtualInterfaceInput{ ConnectionId: aws.String("ConnectionId"), // Required NewPublicVirtualInterfaceAllocation: &directconnect.NewPublicVirtualInterfaceAllocation{ // Required AmazonAddress: aws.String("AmazonAddress"), // Required Asn: aws.Int64(1), // Required CustomerAddress: aws.String("CustomerAddress"), // Required RouteFilterPrefixes: []*directconnect.RouteFilterPrefix{ // Required { // Required Cidr: aws.String("CIDR"), }, // More values... }, VirtualInterfaceName: aws.String("VirtualInterfaceName"), // Required Vlan: aws.Int64(1), // Required AuthKey: aws.String("BGPAuthKey"), }, OwnerAccount: aws.String("OwnerAccount"), // Required } resp, err := svc.AllocatePublicVirtualInterface(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_ConfirmConnection() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.ConfirmConnectionInput{ ConnectionId: aws.String("ConnectionId"), // Required } resp, err := svc.ConfirmConnection(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_ConfirmPrivateVirtualInterface() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.ConfirmPrivateVirtualInterfaceInput{ VirtualGatewayId: aws.String("VirtualGatewayId"), // Required VirtualInterfaceId: aws.String("VirtualInterfaceId"), // Required } resp, err := svc.ConfirmPrivateVirtualInterface(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_ConfirmPublicVirtualInterface() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.ConfirmPublicVirtualInterfaceInput{ VirtualInterfaceId: aws.String("VirtualInterfaceId"), // Required } resp, err := svc.ConfirmPublicVirtualInterface(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_CreateConnection() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.CreateConnectionInput{ Bandwidth: aws.String("Bandwidth"), // Required ConnectionName: aws.String("ConnectionName"), // Required Location: aws.String("LocationCode"), // Required } resp, err := svc.CreateConnection(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_CreateInterconnect() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.CreateInterconnectInput{ Bandwidth: aws.String("Bandwidth"), // Required InterconnectName: aws.String("InterconnectName"), // Required Location: aws.String("LocationCode"), // Required } resp, err := svc.CreateInterconnect(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_CreatePrivateVirtualInterface() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.CreatePrivateVirtualInterfaceInput{ ConnectionId: aws.String("ConnectionId"), // Required NewPrivateVirtualInterface: &directconnect.NewPrivateVirtualInterface{ // Required Asn: aws.Int64(1), // Required VirtualGatewayId: aws.String("VirtualGatewayId"), // Required VirtualInterfaceName: aws.String("VirtualInterfaceName"), // Required Vlan: aws.Int64(1), // Required AmazonAddress: aws.String("AmazonAddress"), AuthKey: aws.String("BGPAuthKey"), CustomerAddress: aws.String("CustomerAddress"), }, } resp, err := svc.CreatePrivateVirtualInterface(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_CreatePublicVirtualInterface() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.CreatePublicVirtualInterfaceInput{ ConnectionId: aws.String("ConnectionId"), // Required NewPublicVirtualInterface: &directconnect.NewPublicVirtualInterface{ // Required AmazonAddress: aws.String("AmazonAddress"), // Required Asn: aws.Int64(1), // Required CustomerAddress: aws.String("CustomerAddress"), // Required RouteFilterPrefixes: []*directconnect.RouteFilterPrefix{ // Required { // Required Cidr: aws.String("CIDR"), }, // More values... }, VirtualInterfaceName: aws.String("VirtualInterfaceName"), // Required Vlan: aws.Int64(1), // Required AuthKey: aws.String("BGPAuthKey"), }, } resp, err := svc.CreatePublicVirtualInterface(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_DeleteConnection() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.DeleteConnectionInput{ ConnectionId: aws.String("ConnectionId"), // Required } resp, err := svc.DeleteConnection(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_DeleteInterconnect() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.DeleteInterconnectInput{ InterconnectId: aws.String("InterconnectId"), // Required } resp, err := svc.DeleteInterconnect(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_DeleteVirtualInterface() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.DeleteVirtualInterfaceInput{ VirtualInterfaceId: aws.String("VirtualInterfaceId"), // Required } resp, err := svc.DeleteVirtualInterface(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_DescribeConnectionLoa() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.DescribeConnectionLoaInput{ ConnectionId: aws.String("ConnectionId"), // Required LoaContentType: aws.String("LoaContentType"), ProviderName: aws.String("ProviderName"), } resp, err := svc.DescribeConnectionLoa(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_DescribeConnections() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.DescribeConnectionsInput{ ConnectionId: aws.String("ConnectionId"), } resp, err := svc.DescribeConnections(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_DescribeConnectionsOnInterconnect() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.DescribeConnectionsOnInterconnectInput{ InterconnectId: aws.String("InterconnectId"), // Required } resp, err := svc.DescribeConnectionsOnInterconnect(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_DescribeInterconnectLoa() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.DescribeInterconnectLoaInput{ InterconnectId: aws.String("InterconnectId"), // Required LoaContentType: aws.String("LoaContentType"), ProviderName: aws.String("ProviderName"), } resp, err := svc.DescribeInterconnectLoa(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_DescribeInterconnects() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.DescribeInterconnectsInput{ InterconnectId: aws.String("InterconnectId"), } resp, err := svc.DescribeInterconnects(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_DescribeLocations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) var params *directconnect.DescribeLocationsInput resp, err := svc.DescribeLocations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_DescribeVirtualGateways() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) var params *directconnect.DescribeVirtualGatewaysInput resp, err := svc.DescribeVirtualGateways(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectConnect_DescribeVirtualInterfaces() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directconnect.New(sess) params := &directconnect.DescribeVirtualInterfacesInput{ ConnectionId: aws.String("ConnectionId"), VirtualInterfaceId: aws.String("VirtualInterfaceId"), } resp, err := svc.DescribeVirtualInterfaces(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/directconnect/service.go000066400000000000000000000071431300374646400220430ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package directconnect import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // AWS Direct Connect links your internal network to an AWS Direct Connect location // over a standard 1 gigabit or 10 gigabit Ethernet fiber-optic cable. One end // of the cable is connected to your router, the other to an AWS Direct Connect // router. With this connection in place, you can create virtual interfaces // directly to the AWS cloud (for example, to Amazon Elastic Compute Cloud (Amazon // EC2) and Amazon Simple Storage Service (Amazon S3)) and to Amazon Virtual // Private Cloud (Amazon VPC), bypassing Internet service providers in your // network path. An AWS Direct Connect location provides access to AWS in the // region it is associated with, as well as access to other US regions. For // example, you can provision a single connection to any AWS Direct Connect // location in the US and use it to access public AWS services in all US Regions // and AWS GovCloud (US). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type DirectConnect struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "directconnect" // New creates a new instance of the DirectConnect client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a DirectConnect client from just a session. // svc := directconnect.New(mySession) // // // Create a DirectConnect client with additional configuration // svc := directconnect.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *DirectConnect { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *DirectConnect { svc := &DirectConnect{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2012-10-25", JSONVersion: "1.1", TargetPrefix: "OvertureService", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a DirectConnect operation and runs any // custom request initialization. func (c *DirectConnect) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/directoryservice/000077500000000000000000000000001300374646400206105ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/directoryservice/api.go000066400000000000000000005507641300374646400217310ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package directoryservice provides a client for AWS Directory Service. package directoryservice import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opAddIpRoutes = "AddIpRoutes" // AddIpRoutesRequest generates a "aws/request.Request" representing the // client's request for the AddIpRoutes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddIpRoutes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddIpRoutes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddIpRoutesRequest method. // req, resp := client.AddIpRoutesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) AddIpRoutesRequest(input *AddIpRoutesInput) (req *request.Request, output *AddIpRoutesOutput) { op := &request.Operation{ Name: opAddIpRoutes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddIpRoutesInput{} } req = c.newRequest(op, input, output) output = &AddIpRoutesOutput{} req.Data = output return } // AddIpRoutes API operation for AWS Directory Service. // // If the DNS server for your on-premises domain uses a publicly addressable // IP address, you must add a CIDR address block to correctly route traffic // to and from your Microsoft AD on Amazon Web Services. AddIpRoutes adds this // address block. You can also use AddIpRoutes to facilitate routing traffic // that uses public IP ranges from your Microsoft AD on AWS to a peer VPC. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation AddIpRoutes for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * EntityAlreadyExistsException // The specified entity already exists. // // * InvalidParameterException // One or more parameters are not valid. // // * DirectoryUnavailableException // The specified directory is unavailable or could not be found. // // * IpRouteLimitExceededException // The maximum allowed number of IP addresses was exceeded. The default limit // is 100 IP address blocks. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) AddIpRoutes(input *AddIpRoutesInput) (*AddIpRoutesOutput, error) { req, out := c.AddIpRoutesRequest(input) err := req.Send() return out, err } const opAddTagsToResource = "AddTagsToResource" // AddTagsToResourceRequest generates a "aws/request.Request" representing the // client's request for the AddTagsToResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddTagsToResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddTagsToResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddTagsToResourceRequest method. // req, resp := client.AddTagsToResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) AddTagsToResourceRequest(input *AddTagsToResourceInput) (req *request.Request, output *AddTagsToResourceOutput) { op := &request.Operation{ Name: opAddTagsToResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddTagsToResourceInput{} } req = c.newRequest(op, input, output) output = &AddTagsToResourceOutput{} req.Data = output return } // AddTagsToResource API operation for AWS Directory Service. // // Adds or overwrites one or more tags for the specified Amazon Directory Services // directory. Each directory can have a maximum of 10 tags. Each tag consists // of a key and optional value. Tag keys must be unique to each resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation AddTagsToResource for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * TagLimitExceededException // The maximum allowed number of tags was exceeded. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) AddTagsToResource(input *AddTagsToResourceInput) (*AddTagsToResourceOutput, error) { req, out := c.AddTagsToResourceRequest(input) err := req.Send() return out, err } const opConnectDirectory = "ConnectDirectory" // ConnectDirectoryRequest generates a "aws/request.Request" representing the // client's request for the ConnectDirectory operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ConnectDirectory for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ConnectDirectory method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ConnectDirectoryRequest method. // req, resp := client.ConnectDirectoryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) ConnectDirectoryRequest(input *ConnectDirectoryInput) (req *request.Request, output *ConnectDirectoryOutput) { op := &request.Operation{ Name: opConnectDirectory, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ConnectDirectoryInput{} } req = c.newRequest(op, input, output) output = &ConnectDirectoryOutput{} req.Data = output return } // ConnectDirectory API operation for AWS Directory Service. // // Creates an AD Connector to connect to an on-premises directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation ConnectDirectory for usage and error information. // // Returned Error Codes: // * DirectoryLimitExceededException // The maximum number of directories in the region has been reached. You can // use the GetDirectoryLimits operation to determine your directory limits in // the region. // // * InvalidParameterException // One or more parameters are not valid. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) ConnectDirectory(input *ConnectDirectoryInput) (*ConnectDirectoryOutput, error) { req, out := c.ConnectDirectoryRequest(input) err := req.Send() return out, err } const opCreateAlias = "CreateAlias" // CreateAliasRequest generates a "aws/request.Request" representing the // client's request for the CreateAlias operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateAlias for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateAlias method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateAliasRequest method. // req, resp := client.CreateAliasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) CreateAliasRequest(input *CreateAliasInput) (req *request.Request, output *CreateAliasOutput) { op := &request.Operation{ Name: opCreateAlias, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateAliasInput{} } req = c.newRequest(op, input, output) output = &CreateAliasOutput{} req.Data = output return } // CreateAlias API operation for AWS Directory Service. // // Creates an alias for a directory and assigns the alias to the directory. // The alias is used to construct the access URL for the directory, such as // http://.awsapps.com. // // After an alias has been created, it cannot be deleted or reused, so this // operation should only be used when absolutely necessary. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation CreateAlias for usage and error information. // // Returned Error Codes: // * EntityAlreadyExistsException // The specified entity already exists. // // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) CreateAlias(input *CreateAliasInput) (*CreateAliasOutput, error) { req, out := c.CreateAliasRequest(input) err := req.Send() return out, err } const opCreateComputer = "CreateComputer" // CreateComputerRequest generates a "aws/request.Request" representing the // client's request for the CreateComputer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateComputer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateComputer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateComputerRequest method. // req, resp := client.CreateComputerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) CreateComputerRequest(input *CreateComputerInput) (req *request.Request, output *CreateComputerOutput) { op := &request.Operation{ Name: opCreateComputer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateComputerInput{} } req = c.newRequest(op, input, output) output = &CreateComputerOutput{} req.Data = output return } // CreateComputer API operation for AWS Directory Service. // // Creates a computer account in the specified directory, and joins the computer // to the directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation CreateComputer for usage and error information. // // Returned Error Codes: // * AuthenticationFailedException // An authentication error occurred. // // * DirectoryUnavailableException // The specified directory is unavailable or could not be found. // // * EntityAlreadyExistsException // The specified entity already exists. // // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * UnsupportedOperationException // The operation is not supported. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) CreateComputer(input *CreateComputerInput) (*CreateComputerOutput, error) { req, out := c.CreateComputerRequest(input) err := req.Send() return out, err } const opCreateConditionalForwarder = "CreateConditionalForwarder" // CreateConditionalForwarderRequest generates a "aws/request.Request" representing the // client's request for the CreateConditionalForwarder operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateConditionalForwarder for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateConditionalForwarder method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateConditionalForwarderRequest method. // req, resp := client.CreateConditionalForwarderRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) CreateConditionalForwarderRequest(input *CreateConditionalForwarderInput) (req *request.Request, output *CreateConditionalForwarderOutput) { op := &request.Operation{ Name: opCreateConditionalForwarder, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateConditionalForwarderInput{} } req = c.newRequest(op, input, output) output = &CreateConditionalForwarderOutput{} req.Data = output return } // CreateConditionalForwarder API operation for AWS Directory Service. // // Creates a conditional forwarder associated with your AWS directory. Conditional // forwarders are required in order to set up a trust relationship with another // domain. The conditional forwarder points to the trusted domain. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation CreateConditionalForwarder for usage and error information. // // Returned Error Codes: // * EntityAlreadyExistsException // The specified entity already exists. // // * EntityDoesNotExistException // The specified entity could not be found. // // * DirectoryUnavailableException // The specified directory is unavailable or could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * UnsupportedOperationException // The operation is not supported. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) CreateConditionalForwarder(input *CreateConditionalForwarderInput) (*CreateConditionalForwarderOutput, error) { req, out := c.CreateConditionalForwarderRequest(input) err := req.Send() return out, err } const opCreateDirectory = "CreateDirectory" // CreateDirectoryRequest generates a "aws/request.Request" representing the // client's request for the CreateDirectory operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDirectory for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDirectory method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDirectoryRequest method. // req, resp := client.CreateDirectoryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) CreateDirectoryRequest(input *CreateDirectoryInput) (req *request.Request, output *CreateDirectoryOutput) { op := &request.Operation{ Name: opCreateDirectory, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDirectoryInput{} } req = c.newRequest(op, input, output) output = &CreateDirectoryOutput{} req.Data = output return } // CreateDirectory API operation for AWS Directory Service. // // Creates a Simple AD directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation CreateDirectory for usage and error information. // // Returned Error Codes: // * DirectoryLimitExceededException // The maximum number of directories in the region has been reached. You can // use the GetDirectoryLimits operation to determine your directory limits in // the region. // // * InvalidParameterException // One or more parameters are not valid. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) CreateDirectory(input *CreateDirectoryInput) (*CreateDirectoryOutput, error) { req, out := c.CreateDirectoryRequest(input) err := req.Send() return out, err } const opCreateMicrosoftAD = "CreateMicrosoftAD" // CreateMicrosoftADRequest generates a "aws/request.Request" representing the // client's request for the CreateMicrosoftAD operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateMicrosoftAD for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateMicrosoftAD method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateMicrosoftADRequest method. // req, resp := client.CreateMicrosoftADRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) CreateMicrosoftADRequest(input *CreateMicrosoftADInput) (req *request.Request, output *CreateMicrosoftADOutput) { op := &request.Operation{ Name: opCreateMicrosoftAD, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateMicrosoftADInput{} } req = c.newRequest(op, input, output) output = &CreateMicrosoftADOutput{} req.Data = output return } // CreateMicrosoftAD API operation for AWS Directory Service. // // Creates a Microsoft AD in the AWS cloud. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation CreateMicrosoftAD for usage and error information. // // Returned Error Codes: // * DirectoryLimitExceededException // The maximum number of directories in the region has been reached. You can // use the GetDirectoryLimits operation to determine your directory limits in // the region. // // * InvalidParameterException // One or more parameters are not valid. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // // * UnsupportedOperationException // The operation is not supported. // func (c *DirectoryService) CreateMicrosoftAD(input *CreateMicrosoftADInput) (*CreateMicrosoftADOutput, error) { req, out := c.CreateMicrosoftADRequest(input) err := req.Send() return out, err } const opCreateSnapshot = "CreateSnapshot" // CreateSnapshotRequest generates a "aws/request.Request" representing the // client's request for the CreateSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateSnapshotRequest method. // req, resp := client.CreateSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) CreateSnapshotRequest(input *CreateSnapshotInput) (req *request.Request, output *CreateSnapshotOutput) { op := &request.Operation{ Name: opCreateSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateSnapshotInput{} } req = c.newRequest(op, input, output) output = &CreateSnapshotOutput{} req.Data = output return } // CreateSnapshot API operation for AWS Directory Service. // // Creates a snapshot of a Simple AD or Microsoft AD directory in the AWS cloud. // // You cannot take snapshots of AD Connector directories. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation CreateSnapshot for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * SnapshotLimitExceededException // The maximum number of manual snapshots for the directory has been reached. // You can use the GetSnapshotLimits operation to determine the snapshot limits // for a directory. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) CreateSnapshot(input *CreateSnapshotInput) (*CreateSnapshotOutput, error) { req, out := c.CreateSnapshotRequest(input) err := req.Send() return out, err } const opCreateTrust = "CreateTrust" // CreateTrustRequest generates a "aws/request.Request" representing the // client's request for the CreateTrust operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateTrust for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateTrust method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateTrustRequest method. // req, resp := client.CreateTrustRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) CreateTrustRequest(input *CreateTrustInput) (req *request.Request, output *CreateTrustOutput) { op := &request.Operation{ Name: opCreateTrust, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateTrustInput{} } req = c.newRequest(op, input, output) output = &CreateTrustOutput{} req.Data = output return } // CreateTrust API operation for AWS Directory Service. // // AWS Directory Service for Microsoft Active Directory allows you to configure // trust relationships. For example, you can establish a trust between your // Microsoft AD in the AWS cloud, and your existing on-premises Microsoft Active // Directory. This would allow you to provide users and groups access to resources // in either domain, with a single set of credentials. // // This action initiates the creation of the AWS side of a trust relationship // between a Microsoft AD in the AWS cloud and an external domain. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation CreateTrust for usage and error information. // // Returned Error Codes: // * EntityAlreadyExistsException // The specified entity already exists. // // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // // * UnsupportedOperationException // The operation is not supported. // func (c *DirectoryService) CreateTrust(input *CreateTrustInput) (*CreateTrustOutput, error) { req, out := c.CreateTrustRequest(input) err := req.Send() return out, err } const opDeleteConditionalForwarder = "DeleteConditionalForwarder" // DeleteConditionalForwarderRequest generates a "aws/request.Request" representing the // client's request for the DeleteConditionalForwarder operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteConditionalForwarder for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteConditionalForwarder method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteConditionalForwarderRequest method. // req, resp := client.DeleteConditionalForwarderRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) DeleteConditionalForwarderRequest(input *DeleteConditionalForwarderInput) (req *request.Request, output *DeleteConditionalForwarderOutput) { op := &request.Operation{ Name: opDeleteConditionalForwarder, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteConditionalForwarderInput{} } req = c.newRequest(op, input, output) output = &DeleteConditionalForwarderOutput{} req.Data = output return } // DeleteConditionalForwarder API operation for AWS Directory Service. // // Deletes a conditional forwarder that has been set up for your AWS directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation DeleteConditionalForwarder for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * DirectoryUnavailableException // The specified directory is unavailable or could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * UnsupportedOperationException // The operation is not supported. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) DeleteConditionalForwarder(input *DeleteConditionalForwarderInput) (*DeleteConditionalForwarderOutput, error) { req, out := c.DeleteConditionalForwarderRequest(input) err := req.Send() return out, err } const opDeleteDirectory = "DeleteDirectory" // DeleteDirectoryRequest generates a "aws/request.Request" representing the // client's request for the DeleteDirectory operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDirectory for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDirectory method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDirectoryRequest method. // req, resp := client.DeleteDirectoryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) DeleteDirectoryRequest(input *DeleteDirectoryInput) (req *request.Request, output *DeleteDirectoryOutput) { op := &request.Operation{ Name: opDeleteDirectory, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDirectoryInput{} } req = c.newRequest(op, input, output) output = &DeleteDirectoryOutput{} req.Data = output return } // DeleteDirectory API operation for AWS Directory Service. // // Deletes an AWS Directory Service directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation DeleteDirectory for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) DeleteDirectory(input *DeleteDirectoryInput) (*DeleteDirectoryOutput, error) { req, out := c.DeleteDirectoryRequest(input) err := req.Send() return out, err } const opDeleteSnapshot = "DeleteSnapshot" // DeleteSnapshotRequest generates a "aws/request.Request" representing the // client's request for the DeleteSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteSnapshotRequest method. // req, resp := client.DeleteSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) DeleteSnapshotRequest(input *DeleteSnapshotInput) (req *request.Request, output *DeleteSnapshotOutput) { op := &request.Operation{ Name: opDeleteSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteSnapshotInput{} } req = c.newRequest(op, input, output) output = &DeleteSnapshotOutput{} req.Data = output return } // DeleteSnapshot API operation for AWS Directory Service. // // Deletes a directory snapshot. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation DeleteSnapshot for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) DeleteSnapshot(input *DeleteSnapshotInput) (*DeleteSnapshotOutput, error) { req, out := c.DeleteSnapshotRequest(input) err := req.Send() return out, err } const opDeleteTrust = "DeleteTrust" // DeleteTrustRequest generates a "aws/request.Request" representing the // client's request for the DeleteTrust operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteTrust for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteTrust method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteTrustRequest method. // req, resp := client.DeleteTrustRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) DeleteTrustRequest(input *DeleteTrustInput) (req *request.Request, output *DeleteTrustOutput) { op := &request.Operation{ Name: opDeleteTrust, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteTrustInput{} } req = c.newRequest(op, input, output) output = &DeleteTrustOutput{} req.Data = output return } // DeleteTrust API operation for AWS Directory Service. // // Deletes an existing trust relationship between your Microsoft AD in the AWS // cloud and an external domain. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation DeleteTrust for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // // * UnsupportedOperationException // The operation is not supported. // func (c *DirectoryService) DeleteTrust(input *DeleteTrustInput) (*DeleteTrustOutput, error) { req, out := c.DeleteTrustRequest(input) err := req.Send() return out, err } const opDeregisterEventTopic = "DeregisterEventTopic" // DeregisterEventTopicRequest generates a "aws/request.Request" representing the // client's request for the DeregisterEventTopic operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeregisterEventTopic for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeregisterEventTopic method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeregisterEventTopicRequest method. // req, resp := client.DeregisterEventTopicRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) DeregisterEventTopicRequest(input *DeregisterEventTopicInput) (req *request.Request, output *DeregisterEventTopicOutput) { op := &request.Operation{ Name: opDeregisterEventTopic, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeregisterEventTopicInput{} } req = c.newRequest(op, input, output) output = &DeregisterEventTopicOutput{} req.Data = output return } // DeregisterEventTopic API operation for AWS Directory Service. // // Removes the specified directory as a publisher to the specified SNS topic. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation DeregisterEventTopic for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) DeregisterEventTopic(input *DeregisterEventTopicInput) (*DeregisterEventTopicOutput, error) { req, out := c.DeregisterEventTopicRequest(input) err := req.Send() return out, err } const opDescribeConditionalForwarders = "DescribeConditionalForwarders" // DescribeConditionalForwardersRequest generates a "aws/request.Request" representing the // client's request for the DescribeConditionalForwarders operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeConditionalForwarders for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeConditionalForwarders method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeConditionalForwardersRequest method. // req, resp := client.DescribeConditionalForwardersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) DescribeConditionalForwardersRequest(input *DescribeConditionalForwardersInput) (req *request.Request, output *DescribeConditionalForwardersOutput) { op := &request.Operation{ Name: opDescribeConditionalForwarders, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeConditionalForwardersInput{} } req = c.newRequest(op, input, output) output = &DescribeConditionalForwardersOutput{} req.Data = output return } // DescribeConditionalForwarders API operation for AWS Directory Service. // // Obtains information about the conditional forwarders for this account. // // If no input parameters are provided for RemoteDomainNames, this request describes // all conditional forwarders for the specified directory ID. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation DescribeConditionalForwarders for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * DirectoryUnavailableException // The specified directory is unavailable or could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * UnsupportedOperationException // The operation is not supported. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) DescribeConditionalForwarders(input *DescribeConditionalForwardersInput) (*DescribeConditionalForwardersOutput, error) { req, out := c.DescribeConditionalForwardersRequest(input) err := req.Send() return out, err } const opDescribeDirectories = "DescribeDirectories" // DescribeDirectoriesRequest generates a "aws/request.Request" representing the // client's request for the DescribeDirectories operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDirectories for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDirectories method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDirectoriesRequest method. // req, resp := client.DescribeDirectoriesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) DescribeDirectoriesRequest(input *DescribeDirectoriesInput) (req *request.Request, output *DescribeDirectoriesOutput) { op := &request.Operation{ Name: opDescribeDirectories, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeDirectoriesInput{} } req = c.newRequest(op, input, output) output = &DescribeDirectoriesOutput{} req.Data = output return } // DescribeDirectories API operation for AWS Directory Service. // // Obtains information about the directories that belong to this account. // // You can retrieve information about specific directories by passing the directory // identifiers in the DirectoryIds parameter. Otherwise, all directories that // belong to the current account are returned. // // This operation supports pagination with the use of the NextToken request // and response parameters. If more results are available, the DescribeDirectoriesResult.NextToken // member contains a token that you pass in the next call to DescribeDirectories // to retrieve the next set of items. // // You can also specify a maximum number of return results with the Limit parameter. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation DescribeDirectories for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * InvalidNextTokenException // The NextToken value is not valid. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) DescribeDirectories(input *DescribeDirectoriesInput) (*DescribeDirectoriesOutput, error) { req, out := c.DescribeDirectoriesRequest(input) err := req.Send() return out, err } const opDescribeEventTopics = "DescribeEventTopics" // DescribeEventTopicsRequest generates a "aws/request.Request" representing the // client's request for the DescribeEventTopics operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEventTopics for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEventTopics method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEventTopicsRequest method. // req, resp := client.DescribeEventTopicsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) DescribeEventTopicsRequest(input *DescribeEventTopicsInput) (req *request.Request, output *DescribeEventTopicsOutput) { op := &request.Operation{ Name: opDescribeEventTopics, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeEventTopicsInput{} } req = c.newRequest(op, input, output) output = &DescribeEventTopicsOutput{} req.Data = output return } // DescribeEventTopics API operation for AWS Directory Service. // // Obtains information about which SNS topics receive status messages from the // specified directory. // // If no input parameters are provided, such as DirectoryId or TopicName, this // request describes all of the associations in the account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation DescribeEventTopics for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) DescribeEventTopics(input *DescribeEventTopicsInput) (*DescribeEventTopicsOutput, error) { req, out := c.DescribeEventTopicsRequest(input) err := req.Send() return out, err } const opDescribeSnapshots = "DescribeSnapshots" // DescribeSnapshotsRequest generates a "aws/request.Request" representing the // client's request for the DescribeSnapshots operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSnapshots for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSnapshots method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSnapshotsRequest method. // req, resp := client.DescribeSnapshotsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) DescribeSnapshotsRequest(input *DescribeSnapshotsInput) (req *request.Request, output *DescribeSnapshotsOutput) { op := &request.Operation{ Name: opDescribeSnapshots, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSnapshotsInput{} } req = c.newRequest(op, input, output) output = &DescribeSnapshotsOutput{} req.Data = output return } // DescribeSnapshots API operation for AWS Directory Service. // // Obtains information about the directory snapshots that belong to this account. // // This operation supports pagination with the use of the NextToken request // and response parameters. If more results are available, the DescribeSnapshots.NextToken // member contains a token that you pass in the next call to DescribeSnapshots // to retrieve the next set of items. // // You can also specify a maximum number of return results with the Limit parameter. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation DescribeSnapshots for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * InvalidNextTokenException // The NextToken value is not valid. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) DescribeSnapshots(input *DescribeSnapshotsInput) (*DescribeSnapshotsOutput, error) { req, out := c.DescribeSnapshotsRequest(input) err := req.Send() return out, err } const opDescribeTrusts = "DescribeTrusts" // DescribeTrustsRequest generates a "aws/request.Request" representing the // client's request for the DescribeTrusts operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTrusts for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTrusts method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTrustsRequest method. // req, resp := client.DescribeTrustsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) DescribeTrustsRequest(input *DescribeTrustsInput) (req *request.Request, output *DescribeTrustsOutput) { op := &request.Operation{ Name: opDescribeTrusts, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTrustsInput{} } req = c.newRequest(op, input, output) output = &DescribeTrustsOutput{} req.Data = output return } // DescribeTrusts API operation for AWS Directory Service. // // Obtains information about the trust relationships for this account. // // If no input parameters are provided, such as DirectoryId or TrustIds, this // request describes all the trust relationships belonging to the account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation DescribeTrusts for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidNextTokenException // The NextToken value is not valid. // // * InvalidParameterException // One or more parameters are not valid. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // // * UnsupportedOperationException // The operation is not supported. // func (c *DirectoryService) DescribeTrusts(input *DescribeTrustsInput) (*DescribeTrustsOutput, error) { req, out := c.DescribeTrustsRequest(input) err := req.Send() return out, err } const opDisableRadius = "DisableRadius" // DisableRadiusRequest generates a "aws/request.Request" representing the // client's request for the DisableRadius operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableRadius for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableRadius method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableRadiusRequest method. // req, resp := client.DisableRadiusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) DisableRadiusRequest(input *DisableRadiusInput) (req *request.Request, output *DisableRadiusOutput) { op := &request.Operation{ Name: opDisableRadius, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableRadiusInput{} } req = c.newRequest(op, input, output) output = &DisableRadiusOutput{} req.Data = output return } // DisableRadius API operation for AWS Directory Service. // // Disables multi-factor authentication (MFA) with the Remote Authentication // Dial In User Service (RADIUS) server for an AD Connector directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation DisableRadius for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) DisableRadius(input *DisableRadiusInput) (*DisableRadiusOutput, error) { req, out := c.DisableRadiusRequest(input) err := req.Send() return out, err } const opDisableSso = "DisableSso" // DisableSsoRequest generates a "aws/request.Request" representing the // client's request for the DisableSso operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableSso for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableSso method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableSsoRequest method. // req, resp := client.DisableSsoRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) DisableSsoRequest(input *DisableSsoInput) (req *request.Request, output *DisableSsoOutput) { op := &request.Operation{ Name: opDisableSso, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableSsoInput{} } req = c.newRequest(op, input, output) output = &DisableSsoOutput{} req.Data = output return } // DisableSso API operation for AWS Directory Service. // // Disables single-sign on for a directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation DisableSso for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * InsufficientPermissionsException // The account does not have sufficient permission to perform the operation. // // * AuthenticationFailedException // An authentication error occurred. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) DisableSso(input *DisableSsoInput) (*DisableSsoOutput, error) { req, out := c.DisableSsoRequest(input) err := req.Send() return out, err } const opEnableRadius = "EnableRadius" // EnableRadiusRequest generates a "aws/request.Request" representing the // client's request for the EnableRadius operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableRadius for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableRadius method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableRadiusRequest method. // req, resp := client.EnableRadiusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) EnableRadiusRequest(input *EnableRadiusInput) (req *request.Request, output *EnableRadiusOutput) { op := &request.Operation{ Name: opEnableRadius, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableRadiusInput{} } req = c.newRequest(op, input, output) output = &EnableRadiusOutput{} req.Data = output return } // EnableRadius API operation for AWS Directory Service. // // Enables multi-factor authentication (MFA) with the Remote Authentication // Dial In User Service (RADIUS) server for an AD Connector directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation EnableRadius for usage and error information. // // Returned Error Codes: // * InvalidParameterException // One or more parameters are not valid. // // * EntityAlreadyExistsException // The specified entity already exists. // // * EntityDoesNotExistException // The specified entity could not be found. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) EnableRadius(input *EnableRadiusInput) (*EnableRadiusOutput, error) { req, out := c.EnableRadiusRequest(input) err := req.Send() return out, err } const opEnableSso = "EnableSso" // EnableSsoRequest generates a "aws/request.Request" representing the // client's request for the EnableSso operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableSso for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableSso method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableSsoRequest method. // req, resp := client.EnableSsoRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) EnableSsoRequest(input *EnableSsoInput) (req *request.Request, output *EnableSsoOutput) { op := &request.Operation{ Name: opEnableSso, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableSsoInput{} } req = c.newRequest(op, input, output) output = &EnableSsoOutput{} req.Data = output return } // EnableSso API operation for AWS Directory Service. // // Enables single-sign on for a directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation EnableSso for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * InsufficientPermissionsException // The account does not have sufficient permission to perform the operation. // // * AuthenticationFailedException // An authentication error occurred. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) EnableSso(input *EnableSsoInput) (*EnableSsoOutput, error) { req, out := c.EnableSsoRequest(input) err := req.Send() return out, err } const opGetDirectoryLimits = "GetDirectoryLimits" // GetDirectoryLimitsRequest generates a "aws/request.Request" representing the // client's request for the GetDirectoryLimits operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDirectoryLimits for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDirectoryLimits method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDirectoryLimitsRequest method. // req, resp := client.GetDirectoryLimitsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) GetDirectoryLimitsRequest(input *GetDirectoryLimitsInput) (req *request.Request, output *GetDirectoryLimitsOutput) { op := &request.Operation{ Name: opGetDirectoryLimits, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetDirectoryLimitsInput{} } req = c.newRequest(op, input, output) output = &GetDirectoryLimitsOutput{} req.Data = output return } // GetDirectoryLimits API operation for AWS Directory Service. // // Obtains directory limit information for the current region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation GetDirectoryLimits for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) GetDirectoryLimits(input *GetDirectoryLimitsInput) (*GetDirectoryLimitsOutput, error) { req, out := c.GetDirectoryLimitsRequest(input) err := req.Send() return out, err } const opGetSnapshotLimits = "GetSnapshotLimits" // GetSnapshotLimitsRequest generates a "aws/request.Request" representing the // client's request for the GetSnapshotLimits operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetSnapshotLimits for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetSnapshotLimits method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetSnapshotLimitsRequest method. // req, resp := client.GetSnapshotLimitsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) GetSnapshotLimitsRequest(input *GetSnapshotLimitsInput) (req *request.Request, output *GetSnapshotLimitsOutput) { op := &request.Operation{ Name: opGetSnapshotLimits, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetSnapshotLimitsInput{} } req = c.newRequest(op, input, output) output = &GetSnapshotLimitsOutput{} req.Data = output return } // GetSnapshotLimits API operation for AWS Directory Service. // // Obtains the manual snapshot limits for a directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation GetSnapshotLimits for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) GetSnapshotLimits(input *GetSnapshotLimitsInput) (*GetSnapshotLimitsOutput, error) { req, out := c.GetSnapshotLimitsRequest(input) err := req.Send() return out, err } const opListIpRoutes = "ListIpRoutes" // ListIpRoutesRequest generates a "aws/request.Request" representing the // client's request for the ListIpRoutes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListIpRoutes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListIpRoutes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListIpRoutesRequest method. // req, resp := client.ListIpRoutesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) ListIpRoutesRequest(input *ListIpRoutesInput) (req *request.Request, output *ListIpRoutesOutput) { op := &request.Operation{ Name: opListIpRoutes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListIpRoutesInput{} } req = c.newRequest(op, input, output) output = &ListIpRoutesOutput{} req.Data = output return } // ListIpRoutes API operation for AWS Directory Service. // // Lists the address blocks that you have added to a directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation ListIpRoutes for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidNextTokenException // The NextToken value is not valid. // // * InvalidParameterException // One or more parameters are not valid. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) ListIpRoutes(input *ListIpRoutesInput) (*ListIpRoutesOutput, error) { req, out := c.ListIpRoutesRequest(input) err := req.Send() return out, err } const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTagsForResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTagsForResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTagsForResourceRequest method. // req, resp := client.ListTagsForResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { op := &request.Operation{ Name: opListTagsForResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListTagsForResourceInput{} } req = c.newRequest(op, input, output) output = &ListTagsForResourceOutput{} req.Data = output return } // ListTagsForResource API operation for AWS Directory Service. // // Lists all tags on an Amazon Directory Services directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation ListTagsForResource for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidNextTokenException // The NextToken value is not valid. // // * InvalidParameterException // One or more parameters are not valid. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { req, out := c.ListTagsForResourceRequest(input) err := req.Send() return out, err } const opRegisterEventTopic = "RegisterEventTopic" // RegisterEventTopicRequest generates a "aws/request.Request" representing the // client's request for the RegisterEventTopic operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterEventTopic for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterEventTopic method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterEventTopicRequest method. // req, resp := client.RegisterEventTopicRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) RegisterEventTopicRequest(input *RegisterEventTopicInput) (req *request.Request, output *RegisterEventTopicOutput) { op := &request.Operation{ Name: opRegisterEventTopic, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterEventTopicInput{} } req = c.newRequest(op, input, output) output = &RegisterEventTopicOutput{} req.Data = output return } // RegisterEventTopic API operation for AWS Directory Service. // // Associates a directory with an SNS topic. This establishes the directory // as a publisher to the specified SNS topic. You can then receive email or // text (SMS) messages when the status of your directory changes. You get notified // if your directory goes from an Active status to an Impaired or Inoperable // status. You also receive a notification when the directory returns to an // Active status. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation RegisterEventTopic for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) RegisterEventTopic(input *RegisterEventTopicInput) (*RegisterEventTopicOutput, error) { req, out := c.RegisterEventTopicRequest(input) err := req.Send() return out, err } const opRemoveIpRoutes = "RemoveIpRoutes" // RemoveIpRoutesRequest generates a "aws/request.Request" representing the // client's request for the RemoveIpRoutes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveIpRoutes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveIpRoutes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveIpRoutesRequest method. // req, resp := client.RemoveIpRoutesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) RemoveIpRoutesRequest(input *RemoveIpRoutesInput) (req *request.Request, output *RemoveIpRoutesOutput) { op := &request.Operation{ Name: opRemoveIpRoutes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveIpRoutesInput{} } req = c.newRequest(op, input, output) output = &RemoveIpRoutesOutput{} req.Data = output return } // RemoveIpRoutes API operation for AWS Directory Service. // // Removes IP address blocks from a directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation RemoveIpRoutes for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * DirectoryUnavailableException // The specified directory is unavailable or could not be found. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) RemoveIpRoutes(input *RemoveIpRoutesInput) (*RemoveIpRoutesOutput, error) { req, out := c.RemoveIpRoutesRequest(input) err := req.Send() return out, err } const opRemoveTagsFromResource = "RemoveTagsFromResource" // RemoveTagsFromResourceRequest generates a "aws/request.Request" representing the // client's request for the RemoveTagsFromResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveTagsFromResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveTagsFromResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveTagsFromResourceRequest method. // req, resp := client.RemoveTagsFromResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) RemoveTagsFromResourceRequest(input *RemoveTagsFromResourceInput) (req *request.Request, output *RemoveTagsFromResourceOutput) { op := &request.Operation{ Name: opRemoveTagsFromResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveTagsFromResourceInput{} } req = c.newRequest(op, input, output) output = &RemoveTagsFromResourceOutput{} req.Data = output return } // RemoveTagsFromResource API operation for AWS Directory Service. // // Removes tags from an Amazon Directory Services directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation RemoveTagsFromResource for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) RemoveTagsFromResource(input *RemoveTagsFromResourceInput) (*RemoveTagsFromResourceOutput, error) { req, out := c.RemoveTagsFromResourceRequest(input) err := req.Send() return out, err } const opRestoreFromSnapshot = "RestoreFromSnapshot" // RestoreFromSnapshotRequest generates a "aws/request.Request" representing the // client's request for the RestoreFromSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RestoreFromSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RestoreFromSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RestoreFromSnapshotRequest method. // req, resp := client.RestoreFromSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) RestoreFromSnapshotRequest(input *RestoreFromSnapshotInput) (req *request.Request, output *RestoreFromSnapshotOutput) { op := &request.Operation{ Name: opRestoreFromSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RestoreFromSnapshotInput{} } req = c.newRequest(op, input, output) output = &RestoreFromSnapshotOutput{} req.Data = output return } // RestoreFromSnapshot API operation for AWS Directory Service. // // Restores a directory using an existing directory snapshot. // // When you restore a directory from a snapshot, any changes made to the directory // after the snapshot date are overwritten. // // This action returns as soon as the restore operation is initiated. You can // monitor the progress of the restore operation by calling the DescribeDirectories // operation with the directory identifier. When the DirectoryDescription.Stage // value changes to Active, the restore operation is complete. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation RestoreFromSnapshot for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) RestoreFromSnapshot(input *RestoreFromSnapshotInput) (*RestoreFromSnapshotOutput, error) { req, out := c.RestoreFromSnapshotRequest(input) err := req.Send() return out, err } const opUpdateConditionalForwarder = "UpdateConditionalForwarder" // UpdateConditionalForwarderRequest generates a "aws/request.Request" representing the // client's request for the UpdateConditionalForwarder operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateConditionalForwarder for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateConditionalForwarder method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateConditionalForwarderRequest method. // req, resp := client.UpdateConditionalForwarderRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) UpdateConditionalForwarderRequest(input *UpdateConditionalForwarderInput) (req *request.Request, output *UpdateConditionalForwarderOutput) { op := &request.Operation{ Name: opUpdateConditionalForwarder, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateConditionalForwarderInput{} } req = c.newRequest(op, input, output) output = &UpdateConditionalForwarderOutput{} req.Data = output return } // UpdateConditionalForwarder API operation for AWS Directory Service. // // Updates a conditional forwarder that has been set up for your AWS directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation UpdateConditionalForwarder for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * DirectoryUnavailableException // The specified directory is unavailable or could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * UnsupportedOperationException // The operation is not supported. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) UpdateConditionalForwarder(input *UpdateConditionalForwarderInput) (*UpdateConditionalForwarderOutput, error) { req, out := c.UpdateConditionalForwarderRequest(input) err := req.Send() return out, err } const opUpdateRadius = "UpdateRadius" // UpdateRadiusRequest generates a "aws/request.Request" representing the // client's request for the UpdateRadius operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateRadius for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateRadius method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateRadiusRequest method. // req, resp := client.UpdateRadiusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) UpdateRadiusRequest(input *UpdateRadiusInput) (req *request.Request, output *UpdateRadiusOutput) { op := &request.Operation{ Name: opUpdateRadius, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateRadiusInput{} } req = c.newRequest(op, input, output) output = &UpdateRadiusOutput{} req.Data = output return } // UpdateRadius API operation for AWS Directory Service. // // Updates the Remote Authentication Dial In User Service (RADIUS) server information // for an AD Connector directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation UpdateRadius for usage and error information. // // Returned Error Codes: // * InvalidParameterException // One or more parameters are not valid. // // * EntityDoesNotExistException // The specified entity could not be found. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // func (c *DirectoryService) UpdateRadius(input *UpdateRadiusInput) (*UpdateRadiusOutput, error) { req, out := c.UpdateRadiusRequest(input) err := req.Send() return out, err } const opVerifyTrust = "VerifyTrust" // VerifyTrustRequest generates a "aws/request.Request" representing the // client's request for the VerifyTrust operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See VerifyTrust for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the VerifyTrust method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the VerifyTrustRequest method. // req, resp := client.VerifyTrustRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DirectoryService) VerifyTrustRequest(input *VerifyTrustInput) (req *request.Request, output *VerifyTrustOutput) { op := &request.Operation{ Name: opVerifyTrust, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &VerifyTrustInput{} } req = c.newRequest(op, input, output) output = &VerifyTrustOutput{} req.Data = output return } // VerifyTrust API operation for AWS Directory Service. // // AWS Directory Service for Microsoft Active Directory allows you to configure // and verify trust relationships. // // This action verifies a trust relationship between your Microsoft AD in the // AWS cloud and an external domain. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Directory Service's // API operation VerifyTrust for usage and error information. // // Returned Error Codes: // * EntityDoesNotExistException // The specified entity could not be found. // // * InvalidParameterException // One or more parameters are not valid. // // * ClientException // A client exception has occurred. // // * ServiceException // An exception has occurred in AWS Directory Service. // // * UnsupportedOperationException // The operation is not supported. // func (c *DirectoryService) VerifyTrust(input *VerifyTrustInput) (*VerifyTrustOutput, error) { req, out := c.VerifyTrustRequest(input) err := req.Send() return out, err } type AddIpRoutesInput struct { _ struct{} `type:"structure"` // Identifier (ID) of the directory to which to add the address block. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // IP address blocks, using CIDR format, of the traffic to route. This is often // the IP address block of the DNS server used for your on-premises domain. // // IpRoutes is a required field IpRoutes []*IpRoute `type:"list" required:"true"` // If set to true, updates the inbound and outbound rules of the security group // that has the description: "AWS created security group for directory ID directory // controllers." Following are the new rules: // // Inbound: // // * Type: Custom UDP Rule, Protocol: UDP, Range: 88, Source: 0.0.0.0/0 // // * Type: Custom UDP Rule, Protocol: UDP, Range: 123, Source: 0.0.0.0/0 // // * Type: Custom UDP Rule, Protocol: UDP, Range: 138, Source: 0.0.0.0/0 // // * Type: Custom UDP Rule, Protocol: UDP, Range: 389, Source: 0.0.0.0/0 // // * Type: Custom UDP Rule, Protocol: UDP, Range: 464, Source: 0.0.0.0/0 // // * Type: Custom UDP Rule, Protocol: UDP, Range: 445, Source: 0.0.0.0/0 // // * Type: Custom TCP Rule, Protocol: TCP, Range: 88, Source: 0.0.0.0/0 // // * Type: Custom TCP Rule, Protocol: TCP, Range: 135, Source: 0.0.0.0/0 // // * Type: Custom TCP Rule, Protocol: TCP, Range: 445, Source: 0.0.0.0/0 // // * Type: Custom TCP Rule, Protocol: TCP, Range: 464, Source: 0.0.0.0/0 // // * Type: Custom TCP Rule, Protocol: TCP, Range: 636, Source: 0.0.0.0/0 // // * Type: Custom TCP Rule, Protocol: TCP, Range: 1024-65535, Source: 0.0.0.0/0 // // * Type: Custom TCP Rule, Protocol: TCP, Range: 3268-33269, Source: 0.0.0.0/0 // // * Type: DNS (UDP), Protocol: UDP, Range: 53, Source: 0.0.0.0/0 // // * Type: DNS (TCP), Protocol: TCP, Range: 53, Source: 0.0.0.0/0 // // * Type: LDAP, Protocol: TCP, Range: 389, Source: 0.0.0.0/0 // // * Type: All ICMP, Protocol: All, Range: N/A, Source: 0.0.0.0/0 // // Outbound: // // Type: All traffic, Protocol: All, Range: All, Destination: 0.0.0.0/0 UpdateSecurityGroupForDirectoryControllers *bool `type:"boolean"` } // String returns the string representation func (s AddIpRoutesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddIpRoutesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddIpRoutesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddIpRoutesInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if s.IpRoutes == nil { invalidParams.Add(request.NewErrParamRequired("IpRoutes")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddIpRoutesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddIpRoutesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddIpRoutesOutput) GoString() string { return s.String() } type AddTagsToResourceInput struct { _ struct{} `type:"structure"` // Identifier (ID) for the directory to which to add the tag. // // ResourceId is a required field ResourceId *string `type:"string" required:"true"` // The tags to be assigned to the Amazon Directory Services directory. // // Tags is a required field Tags []*Tag `type:"list" required:"true"` } // String returns the string representation func (s AddTagsToResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsToResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsToResourceInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddTagsToResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddTagsToResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToResourceOutput) GoString() string { return s.String() } // Represents a named directory attribute. type Attribute struct { _ struct{} `type:"structure"` // The name of the attribute. Name *string `min:"1" type:"string"` // The value of the attribute. Value *string `type:"string"` } // String returns the string representation func (s Attribute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Attribute) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Attribute) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Attribute"} if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains information about a computer account in a directory. type Computer struct { _ struct{} `type:"structure"` // An array of Attribute objects containing the LDAP attributes that belong // to the computer account. ComputerAttributes []*Attribute `type:"list"` // The identifier of the computer. ComputerId *string `min:"1" type:"string"` // The computer name. ComputerName *string `min:"1" type:"string"` } // String returns the string representation func (s Computer) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Computer) GoString() string { return s.String() } // Points to a remote domain with which you are setting up a trust relationship. // Conditional forwarders are required in order to set up a trust relationship // with another domain. type ConditionalForwarder struct { _ struct{} `type:"structure"` // The IP addresses of the remote DNS server associated with RemoteDomainName. // This is the IP address of the DNS server that your conditional forwarder // points to. DnsIpAddrs []*string `type:"list"` // The fully qualified domain name (FQDN) of the remote domains pointed to by // the conditional forwarder. RemoteDomainName *string `type:"string"` // The replication scope of the conditional forwarder. The only allowed value // is Domain, which will replicate the conditional forwarder to all of the domain // controllers for your AWS directory. ReplicationScope *string `type:"string" enum:"ReplicationScope"` } // String returns the string representation func (s ConditionalForwarder) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConditionalForwarder) GoString() string { return s.String() } // Contains the inputs for the ConnectDirectory operation. type ConnectDirectoryInput struct { _ struct{} `type:"structure"` // A DirectoryConnectSettings object that contains additional information for // the operation. // // ConnectSettings is a required field ConnectSettings *DirectoryConnectSettings `type:"structure" required:"true"` // A textual description for the directory. Description *string `type:"string"` // The fully-qualified name of the on-premises directory, such as corp.example.com. // // Name is a required field Name *string `type:"string" required:"true"` // The password for the on-premises user account. // // Password is a required field Password *string `min:"1" type:"string" required:"true"` // The NetBIOS name of the on-premises directory, such as CORP. ShortName *string `type:"string"` // The size of the directory. // // Size is a required field Size *string `type:"string" required:"true" enum:"DirectorySize"` } // String returns the string representation func (s ConnectDirectoryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConnectDirectoryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ConnectDirectoryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ConnectDirectoryInput"} if s.ConnectSettings == nil { invalidParams.Add(request.NewErrParamRequired("ConnectSettings")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Password == nil { invalidParams.Add(request.NewErrParamRequired("Password")) } if s.Password != nil && len(*s.Password) < 1 { invalidParams.Add(request.NewErrParamMinLen("Password", 1)) } if s.Size == nil { invalidParams.Add(request.NewErrParamRequired("Size")) } if s.ConnectSettings != nil { if err := s.ConnectSettings.Validate(); err != nil { invalidParams.AddNested("ConnectSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results of the ConnectDirectory operation. type ConnectDirectoryOutput struct { _ struct{} `type:"structure"` // The identifier of the new directory. DirectoryId *string `type:"string"` } // String returns the string representation func (s ConnectDirectoryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConnectDirectoryOutput) GoString() string { return s.String() } // Contains the inputs for the CreateAlias operation. type CreateAliasInput struct { _ struct{} `type:"structure"` // The requested alias. // // The alias must be unique amongst all aliases in AWS. This operation throws // an EntityAlreadyExistsException error if the alias already exists. // // Alias is a required field Alias *string `min:"1" type:"string" required:"true"` // The identifier of the directory for which to create the alias. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` } // String returns the string representation func (s CreateAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateAliasInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateAliasInput"} if s.Alias == nil { invalidParams.Add(request.NewErrParamRequired("Alias")) } if s.Alias != nil && len(*s.Alias) < 1 { invalidParams.Add(request.NewErrParamMinLen("Alias", 1)) } if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results of the CreateAlias operation. type CreateAliasOutput struct { _ struct{} `type:"structure"` // The alias for the directory. Alias *string `min:"1" type:"string"` // The identifier of the directory. DirectoryId *string `type:"string"` } // String returns the string representation func (s CreateAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAliasOutput) GoString() string { return s.String() } // Contains the inputs for the CreateComputer operation. type CreateComputerInput struct { _ struct{} `type:"structure"` // An array of Attribute objects that contain any LDAP attributes to apply to // the computer account. ComputerAttributes []*Attribute `type:"list"` // The name of the computer account. // // ComputerName is a required field ComputerName *string `min:"1" type:"string" required:"true"` // The identifier of the directory in which to create the computer account. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // The fully-qualified distinguished name of the organizational unit to place // the computer account in. OrganizationalUnitDistinguishedName *string `min:"1" type:"string"` // A one-time password that is used to join the computer to the directory. You // should generate a random, strong password to use for this parameter. // // Password is a required field Password *string `min:"8" type:"string" required:"true"` } // String returns the string representation func (s CreateComputerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateComputerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateComputerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateComputerInput"} if s.ComputerName == nil { invalidParams.Add(request.NewErrParamRequired("ComputerName")) } if s.ComputerName != nil && len(*s.ComputerName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ComputerName", 1)) } if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if s.OrganizationalUnitDistinguishedName != nil && len(*s.OrganizationalUnitDistinguishedName) < 1 { invalidParams.Add(request.NewErrParamMinLen("OrganizationalUnitDistinguishedName", 1)) } if s.Password == nil { invalidParams.Add(request.NewErrParamRequired("Password")) } if s.Password != nil && len(*s.Password) < 8 { invalidParams.Add(request.NewErrParamMinLen("Password", 8)) } if s.ComputerAttributes != nil { for i, v := range s.ComputerAttributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ComputerAttributes", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results for the CreateComputer operation. type CreateComputerOutput struct { _ struct{} `type:"structure"` // A Computer object that represents the computer account. Computer *Computer `type:"structure"` } // String returns the string representation func (s CreateComputerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateComputerOutput) GoString() string { return s.String() } // Initiates the creation of a conditional forwarder for your AWS Directory // Service for Microsoft Active Directory. Conditional forwarders are required // in order to set up a trust relationship with another domain. type CreateConditionalForwarderInput struct { _ struct{} `type:"structure"` // The directory ID of the AWS directory for which you are creating the conditional // forwarder. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // The IP addresses of the remote DNS server associated with RemoteDomainName. // // DnsIpAddrs is a required field DnsIpAddrs []*string `type:"list" required:"true"` // The fully qualified domain name (FQDN) of the remote domain with which you // will set up a trust relationship. // // RemoteDomainName is a required field RemoteDomainName *string `type:"string" required:"true"` } // String returns the string representation func (s CreateConditionalForwarderInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateConditionalForwarderInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateConditionalForwarderInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateConditionalForwarderInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if s.DnsIpAddrs == nil { invalidParams.Add(request.NewErrParamRequired("DnsIpAddrs")) } if s.RemoteDomainName == nil { invalidParams.Add(request.NewErrParamRequired("RemoteDomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a CreateConditinalForwarder request. type CreateConditionalForwarderOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateConditionalForwarderOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateConditionalForwarderOutput) GoString() string { return s.String() } // Contains the inputs for the CreateDirectory operation. type CreateDirectoryInput struct { _ struct{} `type:"structure"` // A textual description for the directory. Description *string `type:"string"` // The fully qualified name for the directory, such as corp.example.com. // // Name is a required field Name *string `type:"string" required:"true"` // The password for the directory administrator. The directory creation process // creates a directory administrator account with the username Administrator // and this password. // // Password is a required field Password *string `type:"string" required:"true"` // The short name of the directory, such as CORP. ShortName *string `type:"string"` // The size of the directory. // // Size is a required field Size *string `type:"string" required:"true" enum:"DirectorySize"` // A DirectoryVpcSettings object that contains additional information for the // operation. VpcSettings *DirectoryVpcSettings `type:"structure"` } // String returns the string representation func (s CreateDirectoryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDirectoryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDirectoryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDirectoryInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Password == nil { invalidParams.Add(request.NewErrParamRequired("Password")) } if s.Size == nil { invalidParams.Add(request.NewErrParamRequired("Size")) } if s.VpcSettings != nil { if err := s.VpcSettings.Validate(); err != nil { invalidParams.AddNested("VpcSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results of the CreateDirectory operation. type CreateDirectoryOutput struct { _ struct{} `type:"structure"` // The identifier of the directory that was created. DirectoryId *string `type:"string"` } // String returns the string representation func (s CreateDirectoryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDirectoryOutput) GoString() string { return s.String() } // Creates a Microsoft AD in the AWS cloud. type CreateMicrosoftADInput struct { _ struct{} `type:"structure"` // A textual description for the directory. This label will appear on the AWS // console Directory Details page after the directory is created. Description *string `type:"string"` // The fully qualified domain name for the directory, such as corp.example.com. // This name will resolve inside your VPC only. It does not need to be publicly // resolvable. // // Name is a required field Name *string `type:"string" required:"true"` // The password for the default administrative user named Admin. // // Password is a required field Password *string `type:"string" required:"true"` // The NetBIOS name for your domain. A short identifier for your domain, such // as CORP. If you don't specify a NetBIOS name, it will default to the first // part of your directory DNS. For example, CORP for the directory DNS corp.example.com. ShortName *string `type:"string"` // Contains VPC information for the CreateDirectory or CreateMicrosoftAD operation. // // VpcSettings is a required field VpcSettings *DirectoryVpcSettings `type:"structure" required:"true"` } // String returns the string representation func (s CreateMicrosoftADInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateMicrosoftADInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateMicrosoftADInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateMicrosoftADInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Password == nil { invalidParams.Add(request.NewErrParamRequired("Password")) } if s.VpcSettings == nil { invalidParams.Add(request.NewErrParamRequired("VpcSettings")) } if s.VpcSettings != nil { if err := s.VpcSettings.Validate(); err != nil { invalidParams.AddNested("VpcSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Result of a CreateMicrosoftAD request. type CreateMicrosoftADOutput struct { _ struct{} `type:"structure"` // The identifier of the directory that was created. DirectoryId *string `type:"string"` } // String returns the string representation func (s CreateMicrosoftADOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateMicrosoftADOutput) GoString() string { return s.String() } // Contains the inputs for the CreateSnapshot operation. type CreateSnapshotInput struct { _ struct{} `type:"structure"` // The identifier of the directory of which to take a snapshot. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // The descriptive name to apply to the snapshot. Name *string `type:"string"` } // String returns the string representation func (s CreateSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateSnapshotInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results of the CreateSnapshot operation. type CreateSnapshotOutput struct { _ struct{} `type:"structure"` // The identifier of the snapshot that was created. SnapshotId *string `type:"string"` } // String returns the string representation func (s CreateSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSnapshotOutput) GoString() string { return s.String() } // AWS Directory Service for Microsoft Active Directory allows you to configure // trust relationships. For example, you can establish a trust between your // Microsoft AD in the AWS cloud, and your existing on-premises Microsoft Active // Directory. This would allow you to provide users and groups access to resources // in either domain, with a single set of credentials. // // This action initiates the creation of the AWS side of a trust relationship // between a Microsoft AD in the AWS cloud and an external domain. type CreateTrustInput struct { _ struct{} `type:"structure"` // The IP addresses of the remote DNS server associated with RemoteDomainName. ConditionalForwarderIpAddrs []*string `type:"list"` // The Directory ID of the Microsoft AD in the AWS cloud for which to establish // the trust relationship. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // The Fully Qualified Domain Name (FQDN) of the external domain for which to // create the trust relationship. // // RemoteDomainName is a required field RemoteDomainName *string `type:"string" required:"true"` // The direction of the trust relationship. // // TrustDirection is a required field TrustDirection *string `type:"string" required:"true" enum:"TrustDirection"` // The trust password. The must be the same password that was used when creating // the trust relationship on the external domain. // // TrustPassword is a required field TrustPassword *string `min:"1" type:"string" required:"true"` // The trust relationship type. TrustType *string `type:"string" enum:"TrustType"` } // String returns the string representation func (s CreateTrustInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTrustInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateTrustInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateTrustInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if s.RemoteDomainName == nil { invalidParams.Add(request.NewErrParamRequired("RemoteDomainName")) } if s.TrustDirection == nil { invalidParams.Add(request.NewErrParamRequired("TrustDirection")) } if s.TrustPassword == nil { invalidParams.Add(request.NewErrParamRequired("TrustPassword")) } if s.TrustPassword != nil && len(*s.TrustPassword) < 1 { invalidParams.Add(request.NewErrParamMinLen("TrustPassword", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a CreateTrust request. type CreateTrustOutput struct { _ struct{} `type:"structure"` // A unique identifier for the trust relationship that was created. TrustId *string `type:"string"` } // String returns the string representation func (s CreateTrustOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTrustOutput) GoString() string { return s.String() } // Deletes a conditional forwarder. type DeleteConditionalForwarderInput struct { _ struct{} `type:"structure"` // The directory ID for which you are deleting the conditional forwarder. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // The fully qualified domain name (FQDN) of the remote domain with which you // are deleting the conditional forwarder. // // RemoteDomainName is a required field RemoteDomainName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteConditionalForwarderInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteConditionalForwarderInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteConditionalForwarderInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteConditionalForwarderInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if s.RemoteDomainName == nil { invalidParams.Add(request.NewErrParamRequired("RemoteDomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DeleteConditionalForwarder request. type DeleteConditionalForwarderOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteConditionalForwarderOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteConditionalForwarderOutput) GoString() string { return s.String() } // Contains the inputs for the DeleteDirectory operation. type DeleteDirectoryInput struct { _ struct{} `type:"structure"` // The identifier of the directory to delete. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteDirectoryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDirectoryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDirectoryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDirectoryInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results of the DeleteDirectory operation. type DeleteDirectoryOutput struct { _ struct{} `type:"structure"` // The directory identifier. DirectoryId *string `type:"string"` } // String returns the string representation func (s DeleteDirectoryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDirectoryOutput) GoString() string { return s.String() } // Contains the inputs for the DeleteSnapshot operation. type DeleteSnapshotInput struct { _ struct{} `type:"structure"` // The identifier of the directory snapshot to be deleted. // // SnapshotId is a required field SnapshotId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteSnapshotInput"} if s.SnapshotId == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results of the DeleteSnapshot operation. type DeleteSnapshotOutput struct { _ struct{} `type:"structure"` // The identifier of the directory snapshot that was deleted. SnapshotId *string `type:"string"` } // String returns the string representation func (s DeleteSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSnapshotOutput) GoString() string { return s.String() } // Deletes the local side of an existing trust relationship between the Microsoft // AD in the AWS cloud and the external domain. type DeleteTrustInput struct { _ struct{} `type:"structure"` // Delete a conditional forwarder as part of a DeleteTrustRequest. DeleteAssociatedConditionalForwarder *bool `type:"boolean"` // The Trust ID of the trust relationship to be deleted. // // TrustId is a required field TrustId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteTrustInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTrustInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTrustInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTrustInput"} if s.TrustId == nil { invalidParams.Add(request.NewErrParamRequired("TrustId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DeleteTrust request. type DeleteTrustOutput struct { _ struct{} `type:"structure"` // The Trust ID of the trust relationship that was deleted. TrustId *string `type:"string"` } // String returns the string representation func (s DeleteTrustOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTrustOutput) GoString() string { return s.String() } // Removes the specified directory as a publisher to the specified SNS topic. type DeregisterEventTopicInput struct { _ struct{} `type:"structure"` // The Directory ID to remove as a publisher. This directory will no longer // send messages to the specified SNS topic. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // The name of the SNS topic from which to remove the directory as a publisher. // // TopicName is a required field TopicName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeregisterEventTopicInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterEventTopicInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeregisterEventTopicInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeregisterEventTopicInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if s.TopicName == nil { invalidParams.Add(request.NewErrParamRequired("TopicName")) } if s.TopicName != nil && len(*s.TopicName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TopicName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DeregisterEventTopic request. type DeregisterEventTopicOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeregisterEventTopicOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterEventTopicOutput) GoString() string { return s.String() } // Describes a conditional forwarder. type DescribeConditionalForwardersInput struct { _ struct{} `type:"structure"` // The directory ID for which to get the list of associated conditional forwarders. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // The fully qualified domain names (FQDN) of the remote domains for which to // get the list of associated conditional forwarders. If this member is null, // all conditional forwarders are returned. RemoteDomainNames []*string `type:"list"` } // String returns the string representation func (s DescribeConditionalForwardersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConditionalForwardersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeConditionalForwardersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeConditionalForwardersInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DescribeConditionalForwarder request. type DescribeConditionalForwardersOutput struct { _ struct{} `type:"structure"` // The list of conditional forwarders that have been created. ConditionalForwarders []*ConditionalForwarder `type:"list"` } // String returns the string representation func (s DescribeConditionalForwardersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConditionalForwardersOutput) GoString() string { return s.String() } // Contains the inputs for the DescribeDirectories operation. type DescribeDirectoriesInput struct { _ struct{} `type:"structure"` // A list of identifiers of the directories for which to obtain the information. // If this member is null, all directories that belong to the current account // are returned. // // An empty list results in an InvalidParameterException being thrown. DirectoryIds []*string `type:"list"` // The maximum number of items to return. If this value is zero, the maximum // number of items is specified by the limitations of the operation. Limit *int64 `type:"integer"` // The DescribeDirectoriesResult.NextToken value from a previous call to DescribeDirectories. // Pass null if this is the first call. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeDirectoriesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDirectoriesInput) GoString() string { return s.String() } // Contains the results of the DescribeDirectories operation. type DescribeDirectoriesOutput struct { _ struct{} `type:"structure"` // The list of DirectoryDescription objects that were retrieved. // // It is possible that this list contains less than the number of items specified // in the Limit member of the request. This occurs if there are less than the // requested number of items left to retrieve, or if the limitations of the // operation have been exceeded. DirectoryDescriptions []*DirectoryDescription `type:"list"` // If not null, more results are available. Pass this value for the NextToken // parameter in a subsequent call to DescribeDirectories to retrieve the next // set of items. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeDirectoriesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDirectoriesOutput) GoString() string { return s.String() } // Describes event topics. type DescribeEventTopicsInput struct { _ struct{} `type:"structure"` // The Directory ID for which to get the list of associated SNS topics. If this // member is null, associations for all Directory IDs are returned. DirectoryId *string `type:"string"` // A list of SNS topic names for which to obtain the information. If this member // is null, all associations for the specified Directory ID are returned. // // An empty list results in an InvalidParameterException being thrown. TopicNames []*string `type:"list"` } // String returns the string representation func (s DescribeEventTopicsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEventTopicsInput) GoString() string { return s.String() } // The result of a DescribeEventTopic request. type DescribeEventTopicsOutput struct { _ struct{} `type:"structure"` // A list of SNS topic names that receive status messages from the specified // Directory ID. EventTopics []*EventTopic `type:"list"` } // String returns the string representation func (s DescribeEventTopicsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEventTopicsOutput) GoString() string { return s.String() } // Contains the inputs for the DescribeSnapshots operation. type DescribeSnapshotsInput struct { _ struct{} `type:"structure"` // The identifier of the directory for which to retrieve snapshot information. DirectoryId *string `type:"string"` // The maximum number of objects to return. Limit *int64 `type:"integer"` // The DescribeSnapshotsResult.NextToken value from a previous call to DescribeSnapshots. // Pass null if this is the first call. NextToken *string `type:"string"` // A list of identifiers of the snapshots to obtain the information for. If // this member is null or empty, all snapshots are returned using the Limit // and NextToken members. SnapshotIds []*string `type:"list"` } // String returns the string representation func (s DescribeSnapshotsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSnapshotsInput) GoString() string { return s.String() } // Contains the results of the DescribeSnapshots operation. type DescribeSnapshotsOutput struct { _ struct{} `type:"structure"` // If not null, more results are available. Pass this value in the NextToken // member of a subsequent call to DescribeSnapshots. NextToken *string `type:"string"` // The list of Snapshot objects that were retrieved. // // It is possible that this list contains less than the number of items specified // in the Limit member of the request. This occurs if there are less than the // requested number of items left to retrieve, or if the limitations of the // operation have been exceeded. Snapshots []*Snapshot `type:"list"` } // String returns the string representation func (s DescribeSnapshotsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSnapshotsOutput) GoString() string { return s.String() } // Describes the trust relationships for a particular Microsoft AD in the AWS // cloud. If no input parameters are are provided, such as directory ID or trust // ID, this request describes all the trust relationships. type DescribeTrustsInput struct { _ struct{} `type:"structure"` // The Directory ID of the AWS directory that is a part of the requested trust // relationship. DirectoryId *string `type:"string"` // The maximum number of objects to return. Limit *int64 `type:"integer"` // The DescribeTrustsResult.NextToken value from a previous call to DescribeTrusts. // Pass null if this is the first call. NextToken *string `type:"string"` // A list of identifiers of the trust relationships for which to obtain the // information. If this member is null, all trust relationships that belong // to the current account are returned. // // An empty list results in an InvalidParameterException being thrown. TrustIds []*string `type:"list"` } // String returns the string representation func (s DescribeTrustsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTrustsInput) GoString() string { return s.String() } // The result of a DescribeTrust request. type DescribeTrustsOutput struct { _ struct{} `type:"structure"` // If not null, more results are available. Pass this value for the NextToken // parameter in a subsequent call to DescribeTrusts to retrieve the next set // of items. NextToken *string `type:"string"` // The list of Trust objects that were retrieved. // // It is possible that this list contains less than the number of items specified // in the Limit member of the request. This occurs if there are less than the // requested number of items left to retrieve, or if the limitations of the // operation have been exceeded. Trusts []*Trust `type:"list"` } // String returns the string representation func (s DescribeTrustsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTrustsOutput) GoString() string { return s.String() } // Contains information for the ConnectDirectory operation when an AD Connector // directory is being created. type DirectoryConnectSettings struct { _ struct{} `type:"structure"` // A list of one or more IP addresses of DNS servers or domain controllers in // the on-premises directory. // // CustomerDnsIps is a required field CustomerDnsIps []*string `type:"list" required:"true"` // The username of an account in the on-premises directory that is used to connect // to the directory. This account must have the following privileges: // // * Read users and groups // // * Create computer objects // // * Join computers to the domain // // CustomerUserName is a required field CustomerUserName *string `min:"1" type:"string" required:"true"` // A list of subnet identifiers in the VPC in which the AD Connector is created. // // SubnetIds is a required field SubnetIds []*string `type:"list" required:"true"` // The identifier of the VPC in which the AD Connector is created. // // VpcId is a required field VpcId *string `type:"string" required:"true"` } // String returns the string representation func (s DirectoryConnectSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DirectoryConnectSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DirectoryConnectSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DirectoryConnectSettings"} if s.CustomerDnsIps == nil { invalidParams.Add(request.NewErrParamRequired("CustomerDnsIps")) } if s.CustomerUserName == nil { invalidParams.Add(request.NewErrParamRequired("CustomerUserName")) } if s.CustomerUserName != nil && len(*s.CustomerUserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("CustomerUserName", 1)) } if s.SubnetIds == nil { invalidParams.Add(request.NewErrParamRequired("SubnetIds")) } if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains information about an AD Connector directory. type DirectoryConnectSettingsDescription struct { _ struct{} `type:"structure"` // A list of the Availability Zones that the directory is in. AvailabilityZones []*string `type:"list"` // The IP addresses of the AD Connector servers. ConnectIps []*string `type:"list"` // The username of the service account in the on-premises directory. CustomerUserName *string `min:"1" type:"string"` // The security group identifier for the AD Connector directory. SecurityGroupId *string `type:"string"` // A list of subnet identifiers in the VPC that the AD connector is in. SubnetIds []*string `type:"list"` // The identifier of the VPC that the AD Connector is in. VpcId *string `type:"string"` } // String returns the string representation func (s DirectoryConnectSettingsDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DirectoryConnectSettingsDescription) GoString() string { return s.String() } // Contains information about an AWS Directory Service directory. type DirectoryDescription struct { _ struct{} `type:"structure"` // The access URL for the directory, such as http://.awsapps.com. If // no alias has been created for the directory, is the directory identifier, // such as d-XXXXXXXXXX. AccessUrl *string `min:"1" type:"string"` // The alias for the directory. If no alias has been created for the directory, // the alias is the directory identifier, such as d-XXXXXXXXXX. Alias *string `min:"1" type:"string"` // A DirectoryConnectSettingsDescription object that contains additional information // about an AD Connector directory. This member is only present if the directory // is an AD Connector directory. ConnectSettings *DirectoryConnectSettingsDescription `type:"structure"` // The textual description for the directory. Description *string `type:"string"` // The directory identifier. DirectoryId *string `type:"string"` // The IP addresses of the DNS servers for the directory. For a Simple AD or // Microsoft AD directory, these are the IP addresses of the Simple AD or Microsoft // AD directory servers. For an AD Connector directory, these are the IP addresses // of the DNS servers or domain controllers in the on-premises directory to // which the AD Connector is connected. DnsIpAddrs []*string `type:"list"` // Specifies when the directory was created. LaunchTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The fully-qualified name of the directory. Name *string `type:"string"` // A RadiusSettings object that contains information about the RADIUS server // configured for this directory. RadiusSettings *RadiusSettings `type:"structure"` // The status of the RADIUS MFA server connection. RadiusStatus *string `type:"string" enum:"RadiusStatus"` // The short name of the directory. ShortName *string `type:"string"` // The directory size. Size *string `type:"string" enum:"DirectorySize"` // Indicates if single-sign on is enabled for the directory. For more information, // see EnableSso and DisableSso. SsoEnabled *bool `type:"boolean"` // The current stage of the directory. Stage *string `type:"string" enum:"DirectoryStage"` // The date and time that the stage was last updated. StageLastUpdatedDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Additional information about the directory stage. StageReason *string `type:"string"` // The directory size. Type *string `type:"string" enum:"DirectoryType"` // A DirectoryVpcSettingsDescription object that contains additional information // about a directory. This member is only present if the directory is a Simple // AD or Managed AD directory. VpcSettings *DirectoryVpcSettingsDescription `type:"structure"` } // String returns the string representation func (s DirectoryDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DirectoryDescription) GoString() string { return s.String() } // Contains directory limit information for a region. type DirectoryLimits struct { _ struct{} `type:"structure"` // The current number of cloud directories in the region. CloudOnlyDirectoriesCurrentCount *int64 `type:"integer"` // The maximum number of cloud directories allowed in the region. CloudOnlyDirectoriesLimit *int64 `type:"integer"` // Indicates if the cloud directory limit has been reached. CloudOnlyDirectoriesLimitReached *bool `type:"boolean"` // The current number of Microsoft AD directories in the region. CloudOnlyMicrosoftADCurrentCount *int64 `type:"integer"` // The maximum number of Microsoft AD directories allowed in the region. CloudOnlyMicrosoftADLimit *int64 `type:"integer"` // Indicates if the Microsoft AD directory limit has been reached. CloudOnlyMicrosoftADLimitReached *bool `type:"boolean"` // The current number of connected directories in the region. ConnectedDirectoriesCurrentCount *int64 `type:"integer"` // The maximum number of connected directories allowed in the region. ConnectedDirectoriesLimit *int64 `type:"integer"` // Indicates if the connected directory limit has been reached. ConnectedDirectoriesLimitReached *bool `type:"boolean"` } // String returns the string representation func (s DirectoryLimits) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DirectoryLimits) GoString() string { return s.String() } // Contains VPC information for the CreateDirectory or CreateMicrosoftAD operation. type DirectoryVpcSettings struct { _ struct{} `type:"structure"` // The identifiers of the subnets for the directory servers. The two subnets // must be in different Availability Zones. AWS Directory Service creates a // directory server and a DNS server in each of these subnets. // // SubnetIds is a required field SubnetIds []*string `type:"list" required:"true"` // The identifier of the VPC in which to create the directory. // // VpcId is a required field VpcId *string `type:"string" required:"true"` } // String returns the string representation func (s DirectoryVpcSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DirectoryVpcSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DirectoryVpcSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DirectoryVpcSettings"} if s.SubnetIds == nil { invalidParams.Add(request.NewErrParamRequired("SubnetIds")) } if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains information about the directory. type DirectoryVpcSettingsDescription struct { _ struct{} `type:"structure"` // The list of Availability Zones that the directory is in. AvailabilityZones []*string `type:"list"` // The security group identifier for the directory. If the directory was created // before 8/1/2014, this is the identifier of the directory members security // group that was created when the directory was created. If the directory was // created after this date, this value is null. SecurityGroupId *string `type:"string"` // The identifiers of the subnets for the directory servers. SubnetIds []*string `type:"list"` // The identifier of the VPC that the directory is in. VpcId *string `type:"string"` } // String returns the string representation func (s DirectoryVpcSettingsDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DirectoryVpcSettingsDescription) GoString() string { return s.String() } // Contains the inputs for the DisableRadius operation. type DisableRadiusInput struct { _ struct{} `type:"structure"` // The identifier of the directory for which to disable MFA. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` } // String returns the string representation func (s DisableRadiusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableRadiusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisableRadiusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisableRadiusInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results of the DisableRadius operation. type DisableRadiusOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DisableRadiusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableRadiusOutput) GoString() string { return s.String() } // Contains the inputs for the DisableSso operation. type DisableSsoInput struct { _ struct{} `type:"structure"` // The identifier of the directory for which to disable single-sign on. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // The password of an alternate account to use to disable single-sign on. This // is only used for AD Connector directories. For more information, see the // UserName parameter. Password *string `min:"1" type:"string"` // The username of an alternate account to use to disable single-sign on. This // is only used for AD Connector directories. This account must have privileges // to remove a service principal name. // // If the AD Connector service account does not have privileges to remove a // service principal name, you can specify an alternate account with the UserName // and Password parameters. These credentials are only used to disable single // sign-on and are not stored by the service. The AD Connector service account // is not changed. UserName *string `min:"1" type:"string"` } // String returns the string representation func (s DisableSsoInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableSsoInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisableSsoInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisableSsoInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if s.Password != nil && len(*s.Password) < 1 { invalidParams.Add(request.NewErrParamMinLen("Password", 1)) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results of the DisableSso operation. type DisableSsoOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DisableSsoOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableSsoOutput) GoString() string { return s.String() } // Contains the inputs for the EnableRadius operation. type EnableRadiusInput struct { _ struct{} `type:"structure"` // The identifier of the directory for which to enable MFA. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // A RadiusSettings object that contains information about the RADIUS server. // // RadiusSettings is a required field RadiusSettings *RadiusSettings `type:"structure" required:"true"` } // String returns the string representation func (s EnableRadiusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableRadiusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableRadiusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableRadiusInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if s.RadiusSettings == nil { invalidParams.Add(request.NewErrParamRequired("RadiusSettings")) } if s.RadiusSettings != nil { if err := s.RadiusSettings.Validate(); err != nil { invalidParams.AddNested("RadiusSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results of the EnableRadius operation. type EnableRadiusOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s EnableRadiusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableRadiusOutput) GoString() string { return s.String() } // Contains the inputs for the EnableSso operation. type EnableSsoInput struct { _ struct{} `type:"structure"` // The identifier of the directory for which to enable single-sign on. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // The password of an alternate account to use to enable single-sign on. This // is only used for AD Connector directories. For more information, see the // UserName parameter. Password *string `min:"1" type:"string"` // The username of an alternate account to use to enable single-sign on. This // is only used for AD Connector directories. This account must have privileges // to add a service principal name. // // If the AD Connector service account does not have privileges to add a service // principal name, you can specify an alternate account with the UserName and // Password parameters. These credentials are only used to enable single sign-on // and are not stored by the service. The AD Connector service account is not // changed. UserName *string `min:"1" type:"string"` } // String returns the string representation func (s EnableSsoInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableSsoInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableSsoInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableSsoInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if s.Password != nil && len(*s.Password) < 1 { invalidParams.Add(request.NewErrParamMinLen("Password", 1)) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results of the EnableSso operation. type EnableSsoOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s EnableSsoOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableSsoOutput) GoString() string { return s.String() } // Information about SNS topic and AWS Directory Service directory associations. type EventTopic struct { _ struct{} `type:"structure"` // The date and time of when you associated your directory with the SNS topic. CreatedDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The Directory ID of an AWS Directory Service directory that will publish // status messages to an SNS topic. DirectoryId *string `type:"string"` // The topic registration status. Status *string `type:"string" enum:"TopicStatus"` // The SNS topic ARN (Amazon Resource Name). TopicArn *string `type:"string"` // The name of an AWS SNS topic the receives status messages from the directory. TopicName *string `min:"1" type:"string"` } // String returns the string representation func (s EventTopic) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EventTopic) GoString() string { return s.String() } // Contains the inputs for the GetDirectoryLimits operation. type GetDirectoryLimitsInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GetDirectoryLimitsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDirectoryLimitsInput) GoString() string { return s.String() } // Contains the results of the GetDirectoryLimits operation. type GetDirectoryLimitsOutput struct { _ struct{} `type:"structure"` // A DirectoryLimits object that contains the directory limits for the current // region. DirectoryLimits *DirectoryLimits `type:"structure"` } // String returns the string representation func (s GetDirectoryLimitsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDirectoryLimitsOutput) GoString() string { return s.String() } // Contains the inputs for the GetSnapshotLimits operation. type GetSnapshotLimitsInput struct { _ struct{} `type:"structure"` // Contains the identifier of the directory to obtain the limits for. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` } // String returns the string representation func (s GetSnapshotLimitsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSnapshotLimitsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetSnapshotLimitsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetSnapshotLimitsInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results of the GetSnapshotLimits operation. type GetSnapshotLimitsOutput struct { _ struct{} `type:"structure"` // A SnapshotLimits object that contains the manual snapshot limits for the // specified directory. SnapshotLimits *SnapshotLimits `type:"structure"` } // String returns the string representation func (s GetSnapshotLimitsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSnapshotLimitsOutput) GoString() string { return s.String() } // IP address block. This is often the address block of the DNS server used // for your on-premises domain. type IpRoute struct { _ struct{} `type:"structure"` // IP address block using CIDR format, for example 10.0.0.0/24. This is often // the address block of the DNS server used for your on-premises domain. For // a single IP address use a CIDR address block with /32. For example 10.0.0.0/32. CidrIp *string `type:"string"` // Description of the address block. Description *string `type:"string"` } // String returns the string representation func (s IpRoute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IpRoute) GoString() string { return s.String() } // Information about one or more IP address blocks. type IpRouteInfo struct { _ struct{} `type:"structure"` // The date and time the address block was added to the directory. AddedDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // IP address block in the IpRoute. CidrIp *string `type:"string"` // Description of the IpRouteInfo. Description *string `type:"string"` // Identifier (ID) of the directory associated with the IP addresses. DirectoryId *string `type:"string"` // The status of the IP address block. IpRouteStatusMsg *string `type:"string" enum:"IpRouteStatusMsg"` // The reason for the IpRouteStatusMsg. IpRouteStatusReason *string `type:"string"` } // String returns the string representation func (s IpRouteInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IpRouteInfo) GoString() string { return s.String() } type ListIpRoutesInput struct { _ struct{} `type:"structure"` // Identifier (ID) of the directory for which you want to retrieve the IP addresses. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // Maximum number of items to return. If this value is zero, the maximum number // of items is specified by the limitations of the operation. Limit *int64 `type:"integer"` // The ListIpRoutes.NextToken value from a previous call to ListIpRoutes. Pass // null if this is the first call. NextToken *string `type:"string"` } // String returns the string representation func (s ListIpRoutesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListIpRoutesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListIpRoutesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListIpRoutesInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListIpRoutesOutput struct { _ struct{} `type:"structure"` // A list of IpRoutes. IpRoutesInfo []*IpRouteInfo `type:"list"` // If not null, more results are available. Pass this value for the NextToken // parameter in a subsequent call to ListIpRoutes to retrieve the next set of // items. NextToken *string `type:"string"` } // String returns the string representation func (s ListIpRoutesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListIpRoutesOutput) GoString() string { return s.String() } type ListTagsForResourceInput struct { _ struct{} `type:"structure"` // Reserved for future use. Limit *int64 `type:"integer"` // Reserved for future use. NextToken *string `type:"string"` // Identifier (ID) of the directory for which you want to retrieve tags. // // ResourceId is a required field ResourceId *string `type:"string" required:"true"` } // String returns the string representation func (s ListTagsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsForResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListTagsForResourceOutput struct { _ struct{} `type:"structure"` // Reserved for future use. NextToken *string `type:"string"` // List of tags returned by the ListTagsForResource operation. Tags []*Tag `type:"list"` } // String returns the string representation func (s ListTagsForResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceOutput) GoString() string { return s.String() } // Contains information about a Remote Authentication Dial In User Service (RADIUS) // server. type RadiusSettings struct { _ struct{} `type:"structure"` // The protocol specified for your RADIUS endpoints. AuthenticationProtocol *string `type:"string" enum:"RadiusAuthenticationProtocol"` // Not currently used. DisplayLabel *string `min:"1" type:"string"` // The port that your RADIUS server is using for communications. Your on-premises // network must allow inbound traffic over this port from the AWS Directory // Service servers. RadiusPort *int64 `min:"1025" type:"integer"` // The maximum number of times that communication with the RADIUS server is // attempted. RadiusRetries *int64 `type:"integer"` // An array of strings that contains the IP addresses of the RADIUS server endpoints, // or the IP addresses of your RADIUS server load balancer. RadiusServers []*string `type:"list"` // The amount of time, in seconds, to wait for the RADIUS server to respond. RadiusTimeout *int64 `min:"1" type:"integer"` // Not currently used. SharedSecret *string `min:"8" type:"string"` // Not currently used. UseSameUsername *bool `type:"boolean"` } // String returns the string representation func (s RadiusSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RadiusSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RadiusSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RadiusSettings"} if s.DisplayLabel != nil && len(*s.DisplayLabel) < 1 { invalidParams.Add(request.NewErrParamMinLen("DisplayLabel", 1)) } if s.RadiusPort != nil && *s.RadiusPort < 1025 { invalidParams.Add(request.NewErrParamMinValue("RadiusPort", 1025)) } if s.RadiusTimeout != nil && *s.RadiusTimeout < 1 { invalidParams.Add(request.NewErrParamMinValue("RadiusTimeout", 1)) } if s.SharedSecret != nil && len(*s.SharedSecret) < 8 { invalidParams.Add(request.NewErrParamMinLen("SharedSecret", 8)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Registers a new event topic. type RegisterEventTopicInput struct { _ struct{} `type:"structure"` // The Directory ID that will publish status messages to the SNS topic. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // The SNS topic name to which the directory will publish status messages. This // SNS topic must be in the same region as the specified Directory ID. // // TopicName is a required field TopicName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s RegisterEventTopicInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterEventTopicInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterEventTopicInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterEventTopicInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if s.TopicName == nil { invalidParams.Add(request.NewErrParamRequired("TopicName")) } if s.TopicName != nil && len(*s.TopicName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TopicName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a RegisterEventTopic request. type RegisterEventTopicOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RegisterEventTopicOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterEventTopicOutput) GoString() string { return s.String() } type RemoveIpRoutesInput struct { _ struct{} `type:"structure"` // IP address blocks that you want to remove. // // CidrIps is a required field CidrIps []*string `type:"list" required:"true"` // Identifier (ID) of the directory from which you want to remove the IP addresses. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` } // String returns the string representation func (s RemoveIpRoutesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveIpRoutesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveIpRoutesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveIpRoutesInput"} if s.CidrIps == nil { invalidParams.Add(request.NewErrParamRequired("CidrIps")) } if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemoveIpRoutesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveIpRoutesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveIpRoutesOutput) GoString() string { return s.String() } type RemoveTagsFromResourceInput struct { _ struct{} `type:"structure"` // Identifier (ID) of the directory from which to remove the tag. // // ResourceId is a required field ResourceId *string `type:"string" required:"true"` // The tag key (name) of the tag to be removed. // // TagKeys is a required field TagKeys []*string `type:"list" required:"true"` } // String returns the string representation func (s RemoveTagsFromResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTagsFromResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTagsFromResourceInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemoveTagsFromResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveTagsFromResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromResourceOutput) GoString() string { return s.String() } // An object representing the inputs for the RestoreFromSnapshot operation. type RestoreFromSnapshotInput struct { _ struct{} `type:"structure"` // The identifier of the snapshot to restore from. // // SnapshotId is a required field SnapshotId *string `type:"string" required:"true"` } // String returns the string representation func (s RestoreFromSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreFromSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RestoreFromSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RestoreFromSnapshotInput"} if s.SnapshotId == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results of the RestoreFromSnapshot operation. type RestoreFromSnapshotOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RestoreFromSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreFromSnapshotOutput) GoString() string { return s.String() } // Describes a directory snapshot. type Snapshot struct { _ struct{} `type:"structure"` // The directory identifier. DirectoryId *string `type:"string"` // The descriptive name of the snapshot. Name *string `type:"string"` // The snapshot identifier. SnapshotId *string `type:"string"` // The date and time that the snapshot was taken. StartTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The snapshot status. Status *string `type:"string" enum:"SnapshotStatus"` // The snapshot type. Type *string `type:"string" enum:"SnapshotType"` } // String returns the string representation func (s Snapshot) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Snapshot) GoString() string { return s.String() } // Contains manual snapshot limit information for a directory. type SnapshotLimits struct { _ struct{} `type:"structure"` // The current number of manual snapshots of the directory. ManualSnapshotsCurrentCount *int64 `type:"integer"` // The maximum number of manual snapshots allowed. ManualSnapshotsLimit *int64 `type:"integer"` // Indicates if the manual snapshot limit has been reached. ManualSnapshotsLimitReached *bool `type:"boolean"` } // String returns the string representation func (s SnapshotLimits) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SnapshotLimits) GoString() string { return s.String() } // Metadata assigned to an Amazon Directory Services directory consisting of // a key-value pair. type Tag struct { _ struct{} `type:"structure"` // Required name of the tag. The string value can be Unicode characters and // cannot be prefixed with "aws:". The string can contain only the set of Unicode // letters, digits, white-space, '_', '.', '/', '=', '+', '-' (Java regex: "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-]*)$"). // // Key is a required field Key *string `min:"1" type:"string" required:"true"` // The optional value of the tag. The string value can be Unicode characters. // The string can contain only the set of Unicode letters, digits, white-space, // '_', '.', '/', '=', '+', '-' (Java regex: "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-]*)$"). // // Value is a required field Value *string `type:"string" required:"true"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a trust relationship between an Microsoft AD in the AWS cloud and // an external domain. type Trust struct { _ struct{} `type:"structure"` // The date and time that the trust relationship was created. CreatedDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The Directory ID of the AWS directory involved in the trust relationship. DirectoryId *string `type:"string"` // The date and time that the trust relationship was last updated. LastUpdatedDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The Fully Qualified Domain Name (FQDN) of the external domain involved in // the trust relationship. RemoteDomainName *string `type:"string"` // The date and time that the TrustState was last updated. StateLastUpdatedDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The trust relationship direction. TrustDirection *string `type:"string" enum:"TrustDirection"` // The unique ID of the trust relationship. TrustId *string `type:"string"` // The trust relationship state. TrustState *string `type:"string" enum:"TrustState"` // The reason for the TrustState. TrustStateReason *string `type:"string"` // The trust relationship type. TrustType *string `type:"string" enum:"TrustType"` } // String returns the string representation func (s Trust) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Trust) GoString() string { return s.String() } // Updates a conditional forwarder. type UpdateConditionalForwarderInput struct { _ struct{} `type:"structure"` // The directory ID of the AWS directory for which to update the conditional // forwarder. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // The updated IP addresses of the remote DNS server associated with the conditional // forwarder. // // DnsIpAddrs is a required field DnsIpAddrs []*string `type:"list" required:"true"` // The fully qualified domain name (FQDN) of the remote domain with which you // will set up a trust relationship. // // RemoteDomainName is a required field RemoteDomainName *string `type:"string" required:"true"` } // String returns the string representation func (s UpdateConditionalForwarderInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateConditionalForwarderInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateConditionalForwarderInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateConditionalForwarderInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if s.DnsIpAddrs == nil { invalidParams.Add(request.NewErrParamRequired("DnsIpAddrs")) } if s.RemoteDomainName == nil { invalidParams.Add(request.NewErrParamRequired("RemoteDomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of an UpdateConditionalForwarder request. type UpdateConditionalForwarderOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateConditionalForwarderOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateConditionalForwarderOutput) GoString() string { return s.String() } // Contains the inputs for the UpdateRadius operation. type UpdateRadiusInput struct { _ struct{} `type:"structure"` // The identifier of the directory for which to update the RADIUS server information. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // A RadiusSettings object that contains information about the RADIUS server. // // RadiusSettings is a required field RadiusSettings *RadiusSettings `type:"structure" required:"true"` } // String returns the string representation func (s UpdateRadiusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateRadiusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateRadiusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateRadiusInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if s.RadiusSettings == nil { invalidParams.Add(request.NewErrParamRequired("RadiusSettings")) } if s.RadiusSettings != nil { if err := s.RadiusSettings.Validate(); err != nil { invalidParams.AddNested("RadiusSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results of the UpdateRadius operation. type UpdateRadiusOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateRadiusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateRadiusOutput) GoString() string { return s.String() } // Initiates the verification of an existing trust relationship between a Microsoft // AD in the AWS cloud and an external domain. type VerifyTrustInput struct { _ struct{} `type:"structure"` // The unique Trust ID of the trust relationship to verify. // // TrustId is a required field TrustId *string `type:"string" required:"true"` } // String returns the string representation func (s VerifyTrustInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VerifyTrustInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *VerifyTrustInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "VerifyTrustInput"} if s.TrustId == nil { invalidParams.Add(request.NewErrParamRequired("TrustId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Result of a VerifyTrust request. type VerifyTrustOutput struct { _ struct{} `type:"structure"` // The unique Trust ID of the trust relationship that was verified. TrustId *string `type:"string"` } // String returns the string representation func (s VerifyTrustOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VerifyTrustOutput) GoString() string { return s.String() } const ( // DirectorySizeSmall is a DirectorySize enum value DirectorySizeSmall = "Small" // DirectorySizeLarge is a DirectorySize enum value DirectorySizeLarge = "Large" ) const ( // DirectoryStageRequested is a DirectoryStage enum value DirectoryStageRequested = "Requested" // DirectoryStageCreating is a DirectoryStage enum value DirectoryStageCreating = "Creating" // DirectoryStageCreated is a DirectoryStage enum value DirectoryStageCreated = "Created" // DirectoryStageActive is a DirectoryStage enum value DirectoryStageActive = "Active" // DirectoryStageInoperable is a DirectoryStage enum value DirectoryStageInoperable = "Inoperable" // DirectoryStageImpaired is a DirectoryStage enum value DirectoryStageImpaired = "Impaired" // DirectoryStageRestoring is a DirectoryStage enum value DirectoryStageRestoring = "Restoring" // DirectoryStageRestoreFailed is a DirectoryStage enum value DirectoryStageRestoreFailed = "RestoreFailed" // DirectoryStageDeleting is a DirectoryStage enum value DirectoryStageDeleting = "Deleting" // DirectoryStageDeleted is a DirectoryStage enum value DirectoryStageDeleted = "Deleted" // DirectoryStageFailed is a DirectoryStage enum value DirectoryStageFailed = "Failed" ) const ( // DirectoryTypeSimpleAd is a DirectoryType enum value DirectoryTypeSimpleAd = "SimpleAD" // DirectoryTypeAdconnector is a DirectoryType enum value DirectoryTypeAdconnector = "ADConnector" // DirectoryTypeMicrosoftAd is a DirectoryType enum value DirectoryTypeMicrosoftAd = "MicrosoftAD" ) const ( // IpRouteStatusMsgAdding is a IpRouteStatusMsg enum value IpRouteStatusMsgAdding = "Adding" // IpRouteStatusMsgAdded is a IpRouteStatusMsg enum value IpRouteStatusMsgAdded = "Added" // IpRouteStatusMsgRemoving is a IpRouteStatusMsg enum value IpRouteStatusMsgRemoving = "Removing" // IpRouteStatusMsgRemoved is a IpRouteStatusMsg enum value IpRouteStatusMsgRemoved = "Removed" // IpRouteStatusMsgAddFailed is a IpRouteStatusMsg enum value IpRouteStatusMsgAddFailed = "AddFailed" // IpRouteStatusMsgRemoveFailed is a IpRouteStatusMsg enum value IpRouteStatusMsgRemoveFailed = "RemoveFailed" ) const ( // RadiusAuthenticationProtocolPap is a RadiusAuthenticationProtocol enum value RadiusAuthenticationProtocolPap = "PAP" // RadiusAuthenticationProtocolChap is a RadiusAuthenticationProtocol enum value RadiusAuthenticationProtocolChap = "CHAP" // RadiusAuthenticationProtocolMsChapv1 is a RadiusAuthenticationProtocol enum value RadiusAuthenticationProtocolMsChapv1 = "MS-CHAPv1" // RadiusAuthenticationProtocolMsChapv2 is a RadiusAuthenticationProtocol enum value RadiusAuthenticationProtocolMsChapv2 = "MS-CHAPv2" ) const ( // RadiusStatusCreating is a RadiusStatus enum value RadiusStatusCreating = "Creating" // RadiusStatusCompleted is a RadiusStatus enum value RadiusStatusCompleted = "Completed" // RadiusStatusFailed is a RadiusStatus enum value RadiusStatusFailed = "Failed" ) const ( // ReplicationScopeDomain is a ReplicationScope enum value ReplicationScopeDomain = "Domain" ) const ( // SnapshotStatusCreating is a SnapshotStatus enum value SnapshotStatusCreating = "Creating" // SnapshotStatusCompleted is a SnapshotStatus enum value SnapshotStatusCompleted = "Completed" // SnapshotStatusFailed is a SnapshotStatus enum value SnapshotStatusFailed = "Failed" ) const ( // SnapshotTypeAuto is a SnapshotType enum value SnapshotTypeAuto = "Auto" // SnapshotTypeManual is a SnapshotType enum value SnapshotTypeManual = "Manual" ) const ( // TopicStatusRegistered is a TopicStatus enum value TopicStatusRegistered = "Registered" // TopicStatusTopicnotfound is a TopicStatus enum value TopicStatusTopicnotfound = "Topic not found" // TopicStatusFailed is a TopicStatus enum value TopicStatusFailed = "Failed" // TopicStatusDeleted is a TopicStatus enum value TopicStatusDeleted = "Deleted" ) const ( // TrustDirectionOneWayOutgoing is a TrustDirection enum value TrustDirectionOneWayOutgoing = "One-Way: Outgoing" // TrustDirectionOneWayIncoming is a TrustDirection enum value TrustDirectionOneWayIncoming = "One-Way: Incoming" // TrustDirectionTwoWay is a TrustDirection enum value TrustDirectionTwoWay = "Two-Way" ) const ( // TrustStateCreating is a TrustState enum value TrustStateCreating = "Creating" // TrustStateCreated is a TrustState enum value TrustStateCreated = "Created" // TrustStateVerifying is a TrustState enum value TrustStateVerifying = "Verifying" // TrustStateVerifyFailed is a TrustState enum value TrustStateVerifyFailed = "VerifyFailed" // TrustStateVerified is a TrustState enum value TrustStateVerified = "Verified" // TrustStateDeleting is a TrustState enum value TrustStateDeleting = "Deleting" // TrustStateDeleted is a TrustState enum value TrustStateDeleted = "Deleted" // TrustStateFailed is a TrustState enum value TrustStateFailed = "Failed" ) const ( // TrustTypeForest is a TrustType enum value TrustTypeForest = "Forest" ) aws-sdk-go-1.4.22/service/directoryservice/directoryserviceiface/000077500000000000000000000000001300374646400251655ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/directoryservice/directoryserviceiface/interface.go000066400000000000000000000247401300374646400274630ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package directoryserviceiface provides an interface to enable mocking the AWS Directory Service service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package directoryserviceiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/directoryservice" ) // DirectoryServiceAPI provides an interface to enable mocking the // directoryservice.DirectoryService service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Directory Service. // func myFunc(svc directoryserviceiface.DirectoryServiceAPI) bool { // // Make svc.AddIpRoutes request // } // // func main() { // sess := session.New() // svc := directoryservice.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockDirectoryServiceClient struct { // directoryserviceiface.DirectoryServiceAPI // } // func (m *mockDirectoryServiceClient) AddIpRoutes(input *directoryservice.AddIpRoutesInput) (*directoryservice.AddIpRoutesOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockDirectoryServiceClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type DirectoryServiceAPI interface { AddIpRoutesRequest(*directoryservice.AddIpRoutesInput) (*request.Request, *directoryservice.AddIpRoutesOutput) AddIpRoutes(*directoryservice.AddIpRoutesInput) (*directoryservice.AddIpRoutesOutput, error) AddTagsToResourceRequest(*directoryservice.AddTagsToResourceInput) (*request.Request, *directoryservice.AddTagsToResourceOutput) AddTagsToResource(*directoryservice.AddTagsToResourceInput) (*directoryservice.AddTagsToResourceOutput, error) ConnectDirectoryRequest(*directoryservice.ConnectDirectoryInput) (*request.Request, *directoryservice.ConnectDirectoryOutput) ConnectDirectory(*directoryservice.ConnectDirectoryInput) (*directoryservice.ConnectDirectoryOutput, error) CreateAliasRequest(*directoryservice.CreateAliasInput) (*request.Request, *directoryservice.CreateAliasOutput) CreateAlias(*directoryservice.CreateAliasInput) (*directoryservice.CreateAliasOutput, error) CreateComputerRequest(*directoryservice.CreateComputerInput) (*request.Request, *directoryservice.CreateComputerOutput) CreateComputer(*directoryservice.CreateComputerInput) (*directoryservice.CreateComputerOutput, error) CreateConditionalForwarderRequest(*directoryservice.CreateConditionalForwarderInput) (*request.Request, *directoryservice.CreateConditionalForwarderOutput) CreateConditionalForwarder(*directoryservice.CreateConditionalForwarderInput) (*directoryservice.CreateConditionalForwarderOutput, error) CreateDirectoryRequest(*directoryservice.CreateDirectoryInput) (*request.Request, *directoryservice.CreateDirectoryOutput) CreateDirectory(*directoryservice.CreateDirectoryInput) (*directoryservice.CreateDirectoryOutput, error) CreateMicrosoftADRequest(*directoryservice.CreateMicrosoftADInput) (*request.Request, *directoryservice.CreateMicrosoftADOutput) CreateMicrosoftAD(*directoryservice.CreateMicrosoftADInput) (*directoryservice.CreateMicrosoftADOutput, error) CreateSnapshotRequest(*directoryservice.CreateSnapshotInput) (*request.Request, *directoryservice.CreateSnapshotOutput) CreateSnapshot(*directoryservice.CreateSnapshotInput) (*directoryservice.CreateSnapshotOutput, error) CreateTrustRequest(*directoryservice.CreateTrustInput) (*request.Request, *directoryservice.CreateTrustOutput) CreateTrust(*directoryservice.CreateTrustInput) (*directoryservice.CreateTrustOutput, error) DeleteConditionalForwarderRequest(*directoryservice.DeleteConditionalForwarderInput) (*request.Request, *directoryservice.DeleteConditionalForwarderOutput) DeleteConditionalForwarder(*directoryservice.DeleteConditionalForwarderInput) (*directoryservice.DeleteConditionalForwarderOutput, error) DeleteDirectoryRequest(*directoryservice.DeleteDirectoryInput) (*request.Request, *directoryservice.DeleteDirectoryOutput) DeleteDirectory(*directoryservice.DeleteDirectoryInput) (*directoryservice.DeleteDirectoryOutput, error) DeleteSnapshotRequest(*directoryservice.DeleteSnapshotInput) (*request.Request, *directoryservice.DeleteSnapshotOutput) DeleteSnapshot(*directoryservice.DeleteSnapshotInput) (*directoryservice.DeleteSnapshotOutput, error) DeleteTrustRequest(*directoryservice.DeleteTrustInput) (*request.Request, *directoryservice.DeleteTrustOutput) DeleteTrust(*directoryservice.DeleteTrustInput) (*directoryservice.DeleteTrustOutput, error) DeregisterEventTopicRequest(*directoryservice.DeregisterEventTopicInput) (*request.Request, *directoryservice.DeregisterEventTopicOutput) DeregisterEventTopic(*directoryservice.DeregisterEventTopicInput) (*directoryservice.DeregisterEventTopicOutput, error) DescribeConditionalForwardersRequest(*directoryservice.DescribeConditionalForwardersInput) (*request.Request, *directoryservice.DescribeConditionalForwardersOutput) DescribeConditionalForwarders(*directoryservice.DescribeConditionalForwardersInput) (*directoryservice.DescribeConditionalForwardersOutput, error) DescribeDirectoriesRequest(*directoryservice.DescribeDirectoriesInput) (*request.Request, *directoryservice.DescribeDirectoriesOutput) DescribeDirectories(*directoryservice.DescribeDirectoriesInput) (*directoryservice.DescribeDirectoriesOutput, error) DescribeEventTopicsRequest(*directoryservice.DescribeEventTopicsInput) (*request.Request, *directoryservice.DescribeEventTopicsOutput) DescribeEventTopics(*directoryservice.DescribeEventTopicsInput) (*directoryservice.DescribeEventTopicsOutput, error) DescribeSnapshotsRequest(*directoryservice.DescribeSnapshotsInput) (*request.Request, *directoryservice.DescribeSnapshotsOutput) DescribeSnapshots(*directoryservice.DescribeSnapshotsInput) (*directoryservice.DescribeSnapshotsOutput, error) DescribeTrustsRequest(*directoryservice.DescribeTrustsInput) (*request.Request, *directoryservice.DescribeTrustsOutput) DescribeTrusts(*directoryservice.DescribeTrustsInput) (*directoryservice.DescribeTrustsOutput, error) DisableRadiusRequest(*directoryservice.DisableRadiusInput) (*request.Request, *directoryservice.DisableRadiusOutput) DisableRadius(*directoryservice.DisableRadiusInput) (*directoryservice.DisableRadiusOutput, error) DisableSsoRequest(*directoryservice.DisableSsoInput) (*request.Request, *directoryservice.DisableSsoOutput) DisableSso(*directoryservice.DisableSsoInput) (*directoryservice.DisableSsoOutput, error) EnableRadiusRequest(*directoryservice.EnableRadiusInput) (*request.Request, *directoryservice.EnableRadiusOutput) EnableRadius(*directoryservice.EnableRadiusInput) (*directoryservice.EnableRadiusOutput, error) EnableSsoRequest(*directoryservice.EnableSsoInput) (*request.Request, *directoryservice.EnableSsoOutput) EnableSso(*directoryservice.EnableSsoInput) (*directoryservice.EnableSsoOutput, error) GetDirectoryLimitsRequest(*directoryservice.GetDirectoryLimitsInput) (*request.Request, *directoryservice.GetDirectoryLimitsOutput) GetDirectoryLimits(*directoryservice.GetDirectoryLimitsInput) (*directoryservice.GetDirectoryLimitsOutput, error) GetSnapshotLimitsRequest(*directoryservice.GetSnapshotLimitsInput) (*request.Request, *directoryservice.GetSnapshotLimitsOutput) GetSnapshotLimits(*directoryservice.GetSnapshotLimitsInput) (*directoryservice.GetSnapshotLimitsOutput, error) ListIpRoutesRequest(*directoryservice.ListIpRoutesInput) (*request.Request, *directoryservice.ListIpRoutesOutput) ListIpRoutes(*directoryservice.ListIpRoutesInput) (*directoryservice.ListIpRoutesOutput, error) ListTagsForResourceRequest(*directoryservice.ListTagsForResourceInput) (*request.Request, *directoryservice.ListTagsForResourceOutput) ListTagsForResource(*directoryservice.ListTagsForResourceInput) (*directoryservice.ListTagsForResourceOutput, error) RegisterEventTopicRequest(*directoryservice.RegisterEventTopicInput) (*request.Request, *directoryservice.RegisterEventTopicOutput) RegisterEventTopic(*directoryservice.RegisterEventTopicInput) (*directoryservice.RegisterEventTopicOutput, error) RemoveIpRoutesRequest(*directoryservice.RemoveIpRoutesInput) (*request.Request, *directoryservice.RemoveIpRoutesOutput) RemoveIpRoutes(*directoryservice.RemoveIpRoutesInput) (*directoryservice.RemoveIpRoutesOutput, error) RemoveTagsFromResourceRequest(*directoryservice.RemoveTagsFromResourceInput) (*request.Request, *directoryservice.RemoveTagsFromResourceOutput) RemoveTagsFromResource(*directoryservice.RemoveTagsFromResourceInput) (*directoryservice.RemoveTagsFromResourceOutput, error) RestoreFromSnapshotRequest(*directoryservice.RestoreFromSnapshotInput) (*request.Request, *directoryservice.RestoreFromSnapshotOutput) RestoreFromSnapshot(*directoryservice.RestoreFromSnapshotInput) (*directoryservice.RestoreFromSnapshotOutput, error) UpdateConditionalForwarderRequest(*directoryservice.UpdateConditionalForwarderInput) (*request.Request, *directoryservice.UpdateConditionalForwarderOutput) UpdateConditionalForwarder(*directoryservice.UpdateConditionalForwarderInput) (*directoryservice.UpdateConditionalForwarderOutput, error) UpdateRadiusRequest(*directoryservice.UpdateRadiusInput) (*request.Request, *directoryservice.UpdateRadiusOutput) UpdateRadius(*directoryservice.UpdateRadiusInput) (*directoryservice.UpdateRadiusOutput, error) VerifyTrustRequest(*directoryservice.VerifyTrustInput) (*request.Request, *directoryservice.VerifyTrustOutput) VerifyTrust(*directoryservice.VerifyTrustInput) (*directoryservice.VerifyTrustOutput, error) } var _ DirectoryServiceAPI = (*directoryservice.DirectoryService)(nil) aws-sdk-go-1.4.22/service/directoryservice/examples_test.go000066400000000000000000000611541300374646400240230ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package directoryservice_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/directoryservice" ) var _ time.Duration var _ bytes.Buffer func ExampleDirectoryService_AddIpRoutes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.AddIpRoutesInput{ DirectoryId: aws.String("DirectoryId"), // Required IpRoutes: []*directoryservice.IpRoute{ // Required { // Required CidrIp: aws.String("CidrIp"), Description: aws.String("Description"), }, // More values... }, UpdateSecurityGroupForDirectoryControllers: aws.Bool(true), } resp, err := svc.AddIpRoutes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_AddTagsToResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.AddTagsToResourceInput{ ResourceId: aws.String("ResourceId"), // Required Tags: []*directoryservice.Tag{ // Required { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), // Required }, // More values... }, } resp, err := svc.AddTagsToResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_ConnectDirectory() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.ConnectDirectoryInput{ ConnectSettings: &directoryservice.DirectoryConnectSettings{ // Required CustomerDnsIps: []*string{ // Required aws.String("IpAddr"), // Required // More values... }, CustomerUserName: aws.String("UserName"), // Required SubnetIds: []*string{ // Required aws.String("SubnetId"), // Required // More values... }, VpcId: aws.String("VpcId"), // Required }, Name: aws.String("DirectoryName"), // Required Password: aws.String("ConnectPassword"), // Required Size: aws.String("DirectorySize"), // Required Description: aws.String("Description"), ShortName: aws.String("DirectoryShortName"), } resp, err := svc.ConnectDirectory(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_CreateAlias() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.CreateAliasInput{ Alias: aws.String("AliasName"), // Required DirectoryId: aws.String("DirectoryId"), // Required } resp, err := svc.CreateAlias(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_CreateComputer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.CreateComputerInput{ ComputerName: aws.String("ComputerName"), // Required DirectoryId: aws.String("DirectoryId"), // Required Password: aws.String("ComputerPassword"), // Required ComputerAttributes: []*directoryservice.Attribute{ { // Required Name: aws.String("AttributeName"), Value: aws.String("AttributeValue"), }, // More values... }, OrganizationalUnitDistinguishedName: aws.String("OrganizationalUnitDN"), } resp, err := svc.CreateComputer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_CreateConditionalForwarder() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.CreateConditionalForwarderInput{ DirectoryId: aws.String("DirectoryId"), // Required DnsIpAddrs: []*string{ // Required aws.String("IpAddr"), // Required // More values... }, RemoteDomainName: aws.String("RemoteDomainName"), // Required } resp, err := svc.CreateConditionalForwarder(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_CreateDirectory() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.CreateDirectoryInput{ Name: aws.String("DirectoryName"), // Required Password: aws.String("Password"), // Required Size: aws.String("DirectorySize"), // Required Description: aws.String("Description"), ShortName: aws.String("DirectoryShortName"), VpcSettings: &directoryservice.DirectoryVpcSettings{ SubnetIds: []*string{ // Required aws.String("SubnetId"), // Required // More values... }, VpcId: aws.String("VpcId"), // Required }, } resp, err := svc.CreateDirectory(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_CreateMicrosoftAD() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.CreateMicrosoftADInput{ Name: aws.String("DirectoryName"), // Required Password: aws.String("Password"), // Required VpcSettings: &directoryservice.DirectoryVpcSettings{ // Required SubnetIds: []*string{ // Required aws.String("SubnetId"), // Required // More values... }, VpcId: aws.String("VpcId"), // Required }, Description: aws.String("Description"), ShortName: aws.String("DirectoryShortName"), } resp, err := svc.CreateMicrosoftAD(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_CreateSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.CreateSnapshotInput{ DirectoryId: aws.String("DirectoryId"), // Required Name: aws.String("SnapshotName"), } resp, err := svc.CreateSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_CreateTrust() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.CreateTrustInput{ DirectoryId: aws.String("DirectoryId"), // Required RemoteDomainName: aws.String("RemoteDomainName"), // Required TrustDirection: aws.String("TrustDirection"), // Required TrustPassword: aws.String("TrustPassword"), // Required ConditionalForwarderIpAddrs: []*string{ aws.String("IpAddr"), // Required // More values... }, TrustType: aws.String("TrustType"), } resp, err := svc.CreateTrust(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_DeleteConditionalForwarder() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.DeleteConditionalForwarderInput{ DirectoryId: aws.String("DirectoryId"), // Required RemoteDomainName: aws.String("RemoteDomainName"), // Required } resp, err := svc.DeleteConditionalForwarder(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_DeleteDirectory() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.DeleteDirectoryInput{ DirectoryId: aws.String("DirectoryId"), // Required } resp, err := svc.DeleteDirectory(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_DeleteSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.DeleteSnapshotInput{ SnapshotId: aws.String("SnapshotId"), // Required } resp, err := svc.DeleteSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_DeleteTrust() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.DeleteTrustInput{ TrustId: aws.String("TrustId"), // Required DeleteAssociatedConditionalForwarder: aws.Bool(true), } resp, err := svc.DeleteTrust(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_DeregisterEventTopic() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.DeregisterEventTopicInput{ DirectoryId: aws.String("DirectoryId"), // Required TopicName: aws.String("TopicName"), // Required } resp, err := svc.DeregisterEventTopic(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_DescribeConditionalForwarders() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.DescribeConditionalForwardersInput{ DirectoryId: aws.String("DirectoryId"), // Required RemoteDomainNames: []*string{ aws.String("RemoteDomainName"), // Required // More values... }, } resp, err := svc.DescribeConditionalForwarders(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_DescribeDirectories() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.DescribeDirectoriesInput{ DirectoryIds: []*string{ aws.String("DirectoryId"), // Required // More values... }, Limit: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.DescribeDirectories(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_DescribeEventTopics() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.DescribeEventTopicsInput{ DirectoryId: aws.String("DirectoryId"), TopicNames: []*string{ aws.String("TopicName"), // Required // More values... }, } resp, err := svc.DescribeEventTopics(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_DescribeSnapshots() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.DescribeSnapshotsInput{ DirectoryId: aws.String("DirectoryId"), Limit: aws.Int64(1), NextToken: aws.String("NextToken"), SnapshotIds: []*string{ aws.String("SnapshotId"), // Required // More values... }, } resp, err := svc.DescribeSnapshots(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_DescribeTrusts() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.DescribeTrustsInput{ DirectoryId: aws.String("DirectoryId"), Limit: aws.Int64(1), NextToken: aws.String("NextToken"), TrustIds: []*string{ aws.String("TrustId"), // Required // More values... }, } resp, err := svc.DescribeTrusts(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_DisableRadius() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.DisableRadiusInput{ DirectoryId: aws.String("DirectoryId"), // Required } resp, err := svc.DisableRadius(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_DisableSso() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.DisableSsoInput{ DirectoryId: aws.String("DirectoryId"), // Required Password: aws.String("ConnectPassword"), UserName: aws.String("UserName"), } resp, err := svc.DisableSso(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_EnableRadius() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.EnableRadiusInput{ DirectoryId: aws.String("DirectoryId"), // Required RadiusSettings: &directoryservice.RadiusSettings{ // Required AuthenticationProtocol: aws.String("RadiusAuthenticationProtocol"), DisplayLabel: aws.String("RadiusDisplayLabel"), RadiusPort: aws.Int64(1), RadiusRetries: aws.Int64(1), RadiusServers: []*string{ aws.String("Server"), // Required // More values... }, RadiusTimeout: aws.Int64(1), SharedSecret: aws.String("RadiusSharedSecret"), UseSameUsername: aws.Bool(true), }, } resp, err := svc.EnableRadius(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_EnableSso() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.EnableSsoInput{ DirectoryId: aws.String("DirectoryId"), // Required Password: aws.String("ConnectPassword"), UserName: aws.String("UserName"), } resp, err := svc.EnableSso(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_GetDirectoryLimits() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) var params *directoryservice.GetDirectoryLimitsInput resp, err := svc.GetDirectoryLimits(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_GetSnapshotLimits() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.GetSnapshotLimitsInput{ DirectoryId: aws.String("DirectoryId"), // Required } resp, err := svc.GetSnapshotLimits(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_ListIpRoutes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.ListIpRoutesInput{ DirectoryId: aws.String("DirectoryId"), // Required Limit: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.ListIpRoutes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_ListTagsForResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.ListTagsForResourceInput{ ResourceId: aws.String("ResourceId"), // Required Limit: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.ListTagsForResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_RegisterEventTopic() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.RegisterEventTopicInput{ DirectoryId: aws.String("DirectoryId"), // Required TopicName: aws.String("TopicName"), // Required } resp, err := svc.RegisterEventTopic(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_RemoveIpRoutes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.RemoveIpRoutesInput{ CidrIps: []*string{ // Required aws.String("CidrIp"), // Required // More values... }, DirectoryId: aws.String("DirectoryId"), // Required } resp, err := svc.RemoveIpRoutes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_RemoveTagsFromResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.RemoveTagsFromResourceInput{ ResourceId: aws.String("ResourceId"), // Required TagKeys: []*string{ // Required aws.String("TagKey"), // Required // More values... }, } resp, err := svc.RemoveTagsFromResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_RestoreFromSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.RestoreFromSnapshotInput{ SnapshotId: aws.String("SnapshotId"), // Required } resp, err := svc.RestoreFromSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_UpdateConditionalForwarder() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.UpdateConditionalForwarderInput{ DirectoryId: aws.String("DirectoryId"), // Required DnsIpAddrs: []*string{ // Required aws.String("IpAddr"), // Required // More values... }, RemoteDomainName: aws.String("RemoteDomainName"), // Required } resp, err := svc.UpdateConditionalForwarder(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_UpdateRadius() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.UpdateRadiusInput{ DirectoryId: aws.String("DirectoryId"), // Required RadiusSettings: &directoryservice.RadiusSettings{ // Required AuthenticationProtocol: aws.String("RadiusAuthenticationProtocol"), DisplayLabel: aws.String("RadiusDisplayLabel"), RadiusPort: aws.Int64(1), RadiusRetries: aws.Int64(1), RadiusServers: []*string{ aws.String("Server"), // Required // More values... }, RadiusTimeout: aws.Int64(1), SharedSecret: aws.String("RadiusSharedSecret"), UseSameUsername: aws.Bool(true), }, } resp, err := svc.UpdateRadius(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDirectoryService_VerifyTrust() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := directoryservice.New(sess) params := &directoryservice.VerifyTrustInput{ TrustId: aws.String("TrustId"), // Required } resp, err := svc.VerifyTrust(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/directoryservice/service.go000066400000000000000000000056711300374646400226100ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package directoryservice import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // This is the AWS Directory Service API Reference. This guide provides detailed // information about AWS Directory Service operations, data types, parameters, // and errors. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type DirectoryService struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "ds" // New creates a new instance of the DirectoryService client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a DirectoryService client from just a session. // svc := directoryservice.New(mySession) // // // Create a DirectoryService client with additional configuration // svc := directoryservice.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *DirectoryService { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *DirectoryService { svc := &DirectoryService{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-04-16", JSONVersion: "1.1", TargetPrefix: "DirectoryService_20150416", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a DirectoryService operation and runs any // custom request initialization. func (c *DirectoryService) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/dynamodb/000077500000000000000000000000001300374646400170205ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/dynamodb/api.go000066400000000000000000010370641300374646400201330ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package dynamodb provides a client for Amazon DynamoDB. package dynamodb import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opBatchGetItem = "BatchGetItem" // BatchGetItemRequest generates a "aws/request.Request" representing the // client's request for the BatchGetItem operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See BatchGetItem for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the BatchGetItem method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the BatchGetItemRequest method. // req, resp := client.BatchGetItemRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DynamoDB) BatchGetItemRequest(input *BatchGetItemInput) (req *request.Request, output *BatchGetItemOutput) { op := &request.Operation{ Name: opBatchGetItem, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"RequestItems"}, OutputTokens: []string{"UnprocessedKeys"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &BatchGetItemInput{} } req = c.newRequest(op, input, output) output = &BatchGetItemOutput{} req.Data = output return } // BatchGetItem API operation for Amazon DynamoDB. // // The BatchGetItem operation returns the attributes of one or more items from // one or more tables. You identify requested items by primary key. // // A single operation can retrieve up to 16 MB of data, which can contain as // many as 100 items. BatchGetItem will return a partial result if the response // size limit is exceeded, the table's provisioned throughput is exceeded, or // an internal processing failure occurs. If a partial result is returned, the // operation returns a value for UnprocessedKeys. You can use this value to // retry the operation starting with the next item to get. // // If you request more than 100 items BatchGetItem will return a ValidationException // with the message "Too many items requested for the BatchGetItem call". // // For example, if you ask to retrieve 100 items, but each individual item is // 300 KB in size, the system returns 52 items (so as not to exceed the 16 MB // limit). It also returns an appropriate UnprocessedKeys value so you can get // the next page of results. If desired, your application can include its own // logic to assemble the pages of results into one data set. // // If none of the items can be processed due to insufficient provisioned throughput // on all of the tables in the request, then BatchGetItem will return a ProvisionedThroughputExceededException. // If at least one of the items is successfully processed, then BatchGetItem // completes successfully, while returning the keys of the unread items in UnprocessedKeys. // // If DynamoDB returns any unprocessed items, you should retry the batch operation // on those items. However, we strongly recommend that you use an exponential // backoff algorithm. If you retry the batch operation immediately, the underlying // read or write requests can still fail due to throttling on the individual // tables. If you delay the batch operation using exponential backoff, the individual // requests in the batch are much more likely to succeed. // // For more information, see Batch Operations and Error Handling (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ErrorHandling.html#BatchOperations) // in the Amazon DynamoDB Developer Guide. // // By default, BatchGetItem performs eventually consistent reads on every table // in the request. If you want strongly consistent reads instead, you can set // ConsistentRead to true for any or all tables. // // In order to minimize response latency, BatchGetItem retrieves items in parallel. // // When designing your application, keep in mind that DynamoDB does not return // items in any particular order. To help parse the response by item, include // the primary key values for the items in your request in the AttributesToGet // parameter. // // If a requested item does not exist, it is not returned in the result. Requests // for nonexistent items consume the minimum read capacity units according to // the type of read. For more information, see Capacity Units Calculations (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithTables.html#CapacityUnitCalculations) // in the Amazon DynamoDB Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon DynamoDB's // API operation BatchGetItem for usage and error information. // // Returned Error Codes: // * ProvisionedThroughputExceededException // Your request rate is too high. The AWS SDKs for DynamoDB automatically retry // requests that receive this exception. Your request is eventually successful, // unless your retry queue is too large to finish. Reduce the frequency of requests // and use exponential backoff. For more information, go to Error Retries and // Exponential Backoff (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ErrorHandling.html#APIRetries) // in the Amazon DynamoDB Developer Guide. // // * ResourceNotFoundException // The operation tried to access a nonexistent table or index. The resource // might not be specified correctly, or its status might not be ACTIVE. // // * InternalServerError // An error occurred on the server side. // func (c *DynamoDB) BatchGetItem(input *BatchGetItemInput) (*BatchGetItemOutput, error) { req, out := c.BatchGetItemRequest(input) err := req.Send() return out, err } // BatchGetItemPages iterates over the pages of a BatchGetItem operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See BatchGetItem method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a BatchGetItem operation. // pageNum := 0 // err := client.BatchGetItemPages(params, // func(page *BatchGetItemOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DynamoDB) BatchGetItemPages(input *BatchGetItemInput, fn func(p *BatchGetItemOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.BatchGetItemRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*BatchGetItemOutput), lastPage) }) } const opBatchWriteItem = "BatchWriteItem" // BatchWriteItemRequest generates a "aws/request.Request" representing the // client's request for the BatchWriteItem operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See BatchWriteItem for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the BatchWriteItem method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the BatchWriteItemRequest method. // req, resp := client.BatchWriteItemRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DynamoDB) BatchWriteItemRequest(input *BatchWriteItemInput) (req *request.Request, output *BatchWriteItemOutput) { op := &request.Operation{ Name: opBatchWriteItem, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &BatchWriteItemInput{} } req = c.newRequest(op, input, output) output = &BatchWriteItemOutput{} req.Data = output return } // BatchWriteItem API operation for Amazon DynamoDB. // // The BatchWriteItem operation puts or deletes multiple items in one or more // tables. A single call to BatchWriteItem can write up to 16 MB of data, which // can comprise as many as 25 put or delete requests. Individual items to be // written can be as large as 400 KB. // // BatchWriteItem cannot update items. To update items, use the UpdateItem API. // // The individual PutItem and DeleteItem operations specified in BatchWriteItem // are atomic; however BatchWriteItem as a whole is not. If any requested operations // fail because the table's provisioned throughput is exceeded or an internal // processing failure occurs, the failed operations are returned in the UnprocessedItems // response parameter. You can investigate and optionally resend the requests. // Typically, you would call BatchWriteItem in a loop. Each iteration would // check for unprocessed items and submit a new BatchWriteItem request with // those unprocessed items until all items have been processed. // // Note that if none of the items can be processed due to insufficient provisioned // throughput on all of the tables in the request, then BatchWriteItem will // return a ProvisionedThroughputExceededException. // // If DynamoDB returns any unprocessed items, you should retry the batch operation // on those items. However, we strongly recommend that you use an exponential // backoff algorithm. If you retry the batch operation immediately, the underlying // read or write requests can still fail due to throttling on the individual // tables. If you delay the batch operation using exponential backoff, the individual // requests in the batch are much more likely to succeed. // // For more information, see Batch Operations and Error Handling (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ErrorHandling.html#BatchOperations) // in the Amazon DynamoDB Developer Guide. // // With BatchWriteItem, you can efficiently write or delete large amounts of // data, such as from Amazon Elastic MapReduce (EMR), or copy data from another // database into DynamoDB. In order to improve performance with these large-scale // operations, BatchWriteItem does not behave in the same way as individual // PutItem and DeleteItem calls would. For example, you cannot specify conditions // on individual put and delete requests, and BatchWriteItem does not return // deleted items in the response. // // If you use a programming language that supports concurrency, you can use // threads to write items in parallel. Your application must include the necessary // logic to manage the threads. With languages that don't support threading, // you must update or delete the specified items one at a time. In both situations, // BatchWriteItem provides an alternative where the API performs the specified // put and delete operations in parallel, giving you the power of the thread // pool approach without having to introduce complexity into your application. // // Parallel processing reduces latency, but each specified put and delete request // consumes the same number of write capacity units whether it is processed // in parallel or not. Delete operations on nonexistent items consume one write // capacity unit. // // If one or more of the following is true, DynamoDB rejects the entire batch // write operation: // // * One or more tables specified in the BatchWriteItem request does not // exist. // // * Primary key attributes specified on an item in the request do not match // those in the corresponding table's primary key schema. // // * You try to perform multiple operations on the same item in the same // BatchWriteItem request. For example, you cannot put and delete the same // item in the same BatchWriteItem request. // // * There are more than 25 requests in the batch. // // * Any individual item in a batch exceeds 400 KB. // // * The total request size exceeds 16 MB. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon DynamoDB's // API operation BatchWriteItem for usage and error information. // // Returned Error Codes: // * ProvisionedThroughputExceededException // Your request rate is too high. The AWS SDKs for DynamoDB automatically retry // requests that receive this exception. Your request is eventually successful, // unless your retry queue is too large to finish. Reduce the frequency of requests // and use exponential backoff. For more information, go to Error Retries and // Exponential Backoff (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ErrorHandling.html#APIRetries) // in the Amazon DynamoDB Developer Guide. // // * ResourceNotFoundException // The operation tried to access a nonexistent table or index. The resource // might not be specified correctly, or its status might not be ACTIVE. // // * ItemCollectionSizeLimitExceededException // An item collection is too large. This exception is only returned for tables // that have one or more local secondary indexes. // // * InternalServerError // An error occurred on the server side. // func (c *DynamoDB) BatchWriteItem(input *BatchWriteItemInput) (*BatchWriteItemOutput, error) { req, out := c.BatchWriteItemRequest(input) err := req.Send() return out, err } const opCreateTable = "CreateTable" // CreateTableRequest generates a "aws/request.Request" representing the // client's request for the CreateTable operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateTable for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateTable method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateTableRequest method. // req, resp := client.CreateTableRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DynamoDB) CreateTableRequest(input *CreateTableInput) (req *request.Request, output *CreateTableOutput) { op := &request.Operation{ Name: opCreateTable, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateTableInput{} } req = c.newRequest(op, input, output) output = &CreateTableOutput{} req.Data = output return } // CreateTable API operation for Amazon DynamoDB. // // The CreateTable operation adds a new table to your account. In an AWS account, // table names must be unique within each region. That is, you can have two // tables with same name if you create the tables in different regions. // // CreateTable is an asynchronous operation. Upon receiving a CreateTable request, // DynamoDB immediately returns a response with a TableStatus of CREATING. After // the table is created, DynamoDB sets the TableStatus to ACTIVE. You can perform // read and write operations only on an ACTIVE table. // // You can optionally define secondary indexes on the new table, as part of // the CreateTable operation. If you want to create multiple tables with secondary // indexes on them, you must create the tables sequentially. Only one table // with secondary indexes can be in the CREATING state at any given time. // // You can use the DescribeTable API to check the table status. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon DynamoDB's // API operation CreateTable for usage and error information. // // Returned Error Codes: // * ResourceInUseException // The operation conflicts with the resource's availability. For example, you // attempted to recreate an existing table, or tried to delete a table currently // in the CREATING state. // // * LimitExceededException // The number of concurrent table requests (cumulative number of tables in the // CREATING, DELETING or UPDATING state) exceeds the maximum allowed of 10. // // Also, for tables with secondary indexes, only one of those tables can be // in the CREATING state at any point in time. Do not attempt to create more // than one such table simultaneously. // // The total limit of tables in the ACTIVE state is 250. // // * InternalServerError // An error occurred on the server side. // func (c *DynamoDB) CreateTable(input *CreateTableInput) (*CreateTableOutput, error) { req, out := c.CreateTableRequest(input) err := req.Send() return out, err } const opDeleteItem = "DeleteItem" // DeleteItemRequest generates a "aws/request.Request" representing the // client's request for the DeleteItem operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteItem for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteItem method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteItemRequest method. // req, resp := client.DeleteItemRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DynamoDB) DeleteItemRequest(input *DeleteItemInput) (req *request.Request, output *DeleteItemOutput) { op := &request.Operation{ Name: opDeleteItem, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteItemInput{} } req = c.newRequest(op, input, output) output = &DeleteItemOutput{} req.Data = output return } // DeleteItem API operation for Amazon DynamoDB. // // Deletes a single item in a table by primary key. You can perform a conditional // delete operation that deletes the item if it exists, or if it has an expected // attribute value. // // In addition to deleting an item, you can also return the item's attribute // values in the same operation, using the ReturnValues parameter. // // Unless you specify conditions, the DeleteItem is an idempotent operation; // running it multiple times on the same item or attribute does not result in // an error response. // // Conditional deletes are useful for deleting items only if specific conditions // are met. If those conditions are met, DynamoDB performs the delete. Otherwise, // the item is not deleted. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon DynamoDB's // API operation DeleteItem for usage and error information. // // Returned Error Codes: // * ConditionalCheckFailedException // A condition specified in the operation could not be evaluated. // // * ProvisionedThroughputExceededException // Your request rate is too high. The AWS SDKs for DynamoDB automatically retry // requests that receive this exception. Your request is eventually successful, // unless your retry queue is too large to finish. Reduce the frequency of requests // and use exponential backoff. For more information, go to Error Retries and // Exponential Backoff (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ErrorHandling.html#APIRetries) // in the Amazon DynamoDB Developer Guide. // // * ResourceNotFoundException // The operation tried to access a nonexistent table or index. The resource // might not be specified correctly, or its status might not be ACTIVE. // // * ItemCollectionSizeLimitExceededException // An item collection is too large. This exception is only returned for tables // that have one or more local secondary indexes. // // * InternalServerError // An error occurred on the server side. // func (c *DynamoDB) DeleteItem(input *DeleteItemInput) (*DeleteItemOutput, error) { req, out := c.DeleteItemRequest(input) err := req.Send() return out, err } const opDeleteTable = "DeleteTable" // DeleteTableRequest generates a "aws/request.Request" representing the // client's request for the DeleteTable operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteTable for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteTable method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteTableRequest method. // req, resp := client.DeleteTableRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DynamoDB) DeleteTableRequest(input *DeleteTableInput) (req *request.Request, output *DeleteTableOutput) { op := &request.Operation{ Name: opDeleteTable, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteTableInput{} } req = c.newRequest(op, input, output) output = &DeleteTableOutput{} req.Data = output return } // DeleteTable API operation for Amazon DynamoDB. // // The DeleteTable operation deletes a table and all of its items. After a DeleteTable // request, the specified table is in the DELETING state until DynamoDB completes // the deletion. If the table is in the ACTIVE state, you can delete it. If // a table is in CREATING or UPDATING states, then DynamoDB returns a ResourceInUseException. // If the specified table does not exist, DynamoDB returns a ResourceNotFoundException. // If table is already in the DELETING state, no error is returned. // // DynamoDB might continue to accept data read and write operations, such as // GetItem and PutItem, on a table in the DELETING state until the table deletion // is complete. // // When you delete a table, any indexes on that table are also deleted. // // If you have DynamoDB Streams enabled on the table, then the corresponding // stream on that table goes into the DISABLED state, and the stream is automatically // deleted after 24 hours. // // Use the DescribeTable API to check the status of the table. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon DynamoDB's // API operation DeleteTable for usage and error information. // // Returned Error Codes: // * ResourceInUseException // The operation conflicts with the resource's availability. For example, you // attempted to recreate an existing table, or tried to delete a table currently // in the CREATING state. // // * ResourceNotFoundException // The operation tried to access a nonexistent table or index. The resource // might not be specified correctly, or its status might not be ACTIVE. // // * LimitExceededException // The number of concurrent table requests (cumulative number of tables in the // CREATING, DELETING or UPDATING state) exceeds the maximum allowed of 10. // // Also, for tables with secondary indexes, only one of those tables can be // in the CREATING state at any point in time. Do not attempt to create more // than one such table simultaneously. // // The total limit of tables in the ACTIVE state is 250. // // * InternalServerError // An error occurred on the server side. // func (c *DynamoDB) DeleteTable(input *DeleteTableInput) (*DeleteTableOutput, error) { req, out := c.DeleteTableRequest(input) err := req.Send() return out, err } const opDescribeLimits = "DescribeLimits" // DescribeLimitsRequest generates a "aws/request.Request" representing the // client's request for the DescribeLimits operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLimits for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLimits method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLimitsRequest method. // req, resp := client.DescribeLimitsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DynamoDB) DescribeLimitsRequest(input *DescribeLimitsInput) (req *request.Request, output *DescribeLimitsOutput) { op := &request.Operation{ Name: opDescribeLimits, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeLimitsInput{} } req = c.newRequest(op, input, output) output = &DescribeLimitsOutput{} req.Data = output return } // DescribeLimits API operation for Amazon DynamoDB. // // Returns the current provisioned-capacity limits for your AWS account in a // region, both for the region as a whole and for any one DynamoDB table that // you create there. // // When you establish an AWS account, the account has initial limits on the // maximum read capacity units and write capacity units that you can provision // across all of your DynamoDB tables in a given region. Also, there are per-table // limits that apply when you create a table there. For more information, see // Limits (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html) // page in the Amazon DynamoDB Developer Guide. // // Although you can increase these limits by filing a case at AWS Support Center // (https://console.aws.amazon.com/support/home#/), obtaining the increase is // not instantaneous. The DescribeLimits API lets you write code to compare // the capacity you are currently using to those limits imposed by your account // so that you have enough time to apply for an increase before you hit a limit. // // For example, you could use one of the AWS SDKs to do the following: // // Call DescribeLimits for a particular region to obtain your current account // limits on provisioned capacity there. // // Create a variable to hold the aggregate read capacity units provisioned for // all your tables in that region, and one to hold the aggregate write capacity // units. Zero them both. // // Call ListTables to obtain a list of all your DynamoDB tables. // // For each table name listed by ListTables, do the following: // // Call DescribeTable with the table name. // // Use the data returned by DescribeTable to add the read capacity units and // write capacity units provisioned for the table itself to your variables. // // If the table has one or more global secondary indexes (GSIs), loop over these // GSIs and add their provisioned capacity values to your variables as well. // // Report the account limits for that region returned by DescribeLimits, along // with the total current provisioned capacity levels you have calculated. // // This will let you see whether you are getting close to your account-level // limits. // // The per-table limits apply only when you are creating a new table. They restrict // the sum of the provisioned capacity of the new table itself and all its global // secondary indexes. // // For existing tables and their GSIs, DynamoDB will not let you increase provisioned // capacity extremely rapidly, but the only upper limit that applies is that // the aggregate provisioned capacity over all your tables and GSIs cannot exceed // either of the per-account limits. // // DescribeLimits should only be called periodically. You can expect throttling // errors if you call it more than once in a minute. // // The DescribeLimits Request element has no content. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon DynamoDB's // API operation DescribeLimits for usage and error information. // // Returned Error Codes: // * InternalServerError // An error occurred on the server side. // func (c *DynamoDB) DescribeLimits(input *DescribeLimitsInput) (*DescribeLimitsOutput, error) { req, out := c.DescribeLimitsRequest(input) err := req.Send() return out, err } const opDescribeTable = "DescribeTable" // DescribeTableRequest generates a "aws/request.Request" representing the // client's request for the DescribeTable operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTable for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTable method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTableRequest method. // req, resp := client.DescribeTableRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DynamoDB) DescribeTableRequest(input *DescribeTableInput) (req *request.Request, output *DescribeTableOutput) { op := &request.Operation{ Name: opDescribeTable, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTableInput{} } req = c.newRequest(op, input, output) output = &DescribeTableOutput{} req.Data = output return } // DescribeTable API operation for Amazon DynamoDB. // // Returns information about the table, including the current status of the // table, when it was created, the primary key schema, and any indexes on the // table. // // If you issue a DescribeTable request immediately after a CreateTable request, // DynamoDB might return a ResourceNotFoundException. This is because DescribeTable // uses an eventually consistent query, and the metadata for your table might // not be available at that moment. Wait for a few seconds, and then try the // DescribeTable request again. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon DynamoDB's // API operation DescribeTable for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The operation tried to access a nonexistent table or index. The resource // might not be specified correctly, or its status might not be ACTIVE. // // * InternalServerError // An error occurred on the server side. // func (c *DynamoDB) DescribeTable(input *DescribeTableInput) (*DescribeTableOutput, error) { req, out := c.DescribeTableRequest(input) err := req.Send() return out, err } const opGetItem = "GetItem" // GetItemRequest generates a "aws/request.Request" representing the // client's request for the GetItem operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetItem for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetItem method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetItemRequest method. // req, resp := client.GetItemRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DynamoDB) GetItemRequest(input *GetItemInput) (req *request.Request, output *GetItemOutput) { op := &request.Operation{ Name: opGetItem, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetItemInput{} } req = c.newRequest(op, input, output) output = &GetItemOutput{} req.Data = output return } // GetItem API operation for Amazon DynamoDB. // // The GetItem operation returns a set of attributes for the item with the given // primary key. If there is no matching item, GetItem does not return any data. // // GetItem provides an eventually consistent read by default. If your application // requires a strongly consistent read, set ConsistentRead to true. Although // a strongly consistent read might take more time than an eventually consistent // read, it always returns the last updated value. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon DynamoDB's // API operation GetItem for usage and error information. // // Returned Error Codes: // * ProvisionedThroughputExceededException // Your request rate is too high. The AWS SDKs for DynamoDB automatically retry // requests that receive this exception. Your request is eventually successful, // unless your retry queue is too large to finish. Reduce the frequency of requests // and use exponential backoff. For more information, go to Error Retries and // Exponential Backoff (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ErrorHandling.html#APIRetries) // in the Amazon DynamoDB Developer Guide. // // * ResourceNotFoundException // The operation tried to access a nonexistent table or index. The resource // might not be specified correctly, or its status might not be ACTIVE. // // * InternalServerError // An error occurred on the server side. // func (c *DynamoDB) GetItem(input *GetItemInput) (*GetItemOutput, error) { req, out := c.GetItemRequest(input) err := req.Send() return out, err } const opListTables = "ListTables" // ListTablesRequest generates a "aws/request.Request" representing the // client's request for the ListTables operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTables for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTables method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTablesRequest method. // req, resp := client.ListTablesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DynamoDB) ListTablesRequest(input *ListTablesInput) (req *request.Request, output *ListTablesOutput) { op := &request.Operation{ Name: opListTables, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"ExclusiveStartTableName"}, OutputTokens: []string{"LastEvaluatedTableName"}, LimitToken: "Limit", TruncationToken: "", }, } if input == nil { input = &ListTablesInput{} } req = c.newRequest(op, input, output) output = &ListTablesOutput{} req.Data = output return } // ListTables API operation for Amazon DynamoDB. // // Returns an array of table names associated with the current account and endpoint. // The output from ListTables is paginated, with each page returning a maximum // of 100 table names. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon DynamoDB's // API operation ListTables for usage and error information. // // Returned Error Codes: // * InternalServerError // An error occurred on the server side. // func (c *DynamoDB) ListTables(input *ListTablesInput) (*ListTablesOutput, error) { req, out := c.ListTablesRequest(input) err := req.Send() return out, err } // ListTablesPages iterates over the pages of a ListTables operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListTables method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListTables operation. // pageNum := 0 // err := client.ListTablesPages(params, // func(page *ListTablesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DynamoDB) ListTablesPages(input *ListTablesInput, fn func(p *ListTablesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListTablesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListTablesOutput), lastPage) }) } const opPutItem = "PutItem" // PutItemRequest generates a "aws/request.Request" representing the // client's request for the PutItem operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutItem for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutItem method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutItemRequest method. // req, resp := client.PutItemRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DynamoDB) PutItemRequest(input *PutItemInput) (req *request.Request, output *PutItemOutput) { op := &request.Operation{ Name: opPutItem, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutItemInput{} } req = c.newRequest(op, input, output) output = &PutItemOutput{} req.Data = output return } // PutItem API operation for Amazon DynamoDB. // // Creates a new item, or replaces an old item with a new item. If an item that // has the same primary key as the new item already exists in the specified // table, the new item completely replaces the existing item. You can perform // a conditional put operation (add a new item if one with the specified primary // key doesn't exist), or replace an existing item if it has certain attribute // values. // // In addition to putting an item, you can also return the item's attribute // values in the same operation, using the ReturnValues parameter. // // When you add an item, the primary key attribute(s) are the only required // attributes. Attribute values cannot be null. String and Binary type attributes // must have lengths greater than zero. Set type attributes cannot be empty. // Requests with empty values will be rejected with a ValidationException exception. // // You can request that PutItem return either a copy of the original item (before // the update) or a copy of the updated item (after the update). For more information, // see the ReturnValues description below. // // To prevent a new item from replacing an existing item, use a conditional // expression that contains the attribute_not_exists function with the name // of the attribute being used as the partition key for the table. Since every // record must contain that attribute, the attribute_not_exists function will // only succeed if no matching item exists. // // For more information about using this API, see Working with Items (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithItems.html) // in the Amazon DynamoDB Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon DynamoDB's // API operation PutItem for usage and error information. // // Returned Error Codes: // * ConditionalCheckFailedException // A condition specified in the operation could not be evaluated. // // * ProvisionedThroughputExceededException // Your request rate is too high. The AWS SDKs for DynamoDB automatically retry // requests that receive this exception. Your request is eventually successful, // unless your retry queue is too large to finish. Reduce the frequency of requests // and use exponential backoff. For more information, go to Error Retries and // Exponential Backoff (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ErrorHandling.html#APIRetries) // in the Amazon DynamoDB Developer Guide. // // * ResourceNotFoundException // The operation tried to access a nonexistent table or index. The resource // might not be specified correctly, or its status might not be ACTIVE. // // * ItemCollectionSizeLimitExceededException // An item collection is too large. This exception is only returned for tables // that have one or more local secondary indexes. // // * InternalServerError // An error occurred on the server side. // func (c *DynamoDB) PutItem(input *PutItemInput) (*PutItemOutput, error) { req, out := c.PutItemRequest(input) err := req.Send() return out, err } const opQuery = "Query" // QueryRequest generates a "aws/request.Request" representing the // client's request for the Query operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See Query for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the Query method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the QueryRequest method. // req, resp := client.QueryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DynamoDB) QueryRequest(input *QueryInput) (req *request.Request, output *QueryOutput) { op := &request.Operation{ Name: opQuery, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"ExclusiveStartKey"}, OutputTokens: []string{"LastEvaluatedKey"}, LimitToken: "Limit", TruncationToken: "", }, } if input == nil { input = &QueryInput{} } req = c.newRequest(op, input, output) output = &QueryOutput{} req.Data = output return } // Query API operation for Amazon DynamoDB. // // A Query operation uses the primary key of a table or a secondary index to // directly access items from that table or index. // // Use the KeyConditionExpression parameter to provide a specific value for // the partition key. The Query operation will return all of the items from // the table or index with that partition key value. You can optionally narrow // the scope of the Query operation by specifying a sort key value and a comparison // operator in KeyConditionExpression. You can use the ScanIndexForward parameter // to get results in forward or reverse order, by sort key. // // Queries that do not return results consume the minimum number of read capacity // units for that type of read operation. // // If the total number of items meeting the query criteria exceeds the result // set size limit of 1 MB, the query stops and results are returned to the user // with the LastEvaluatedKey element to continue the query in a subsequent operation. // Unlike a Scan operation, a Query operation never returns both an empty result // set and a LastEvaluatedKey value. LastEvaluatedKey is only provided if you // have used the Limit parameter, or if the result set exceeds 1 MB (prior to // applying a filter). // // You can query a table, a local secondary index, or a global secondary index. // For a query on a table or on a local secondary index, you can set the ConsistentRead // parameter to true and obtain a strongly consistent result. Global secondary // indexes support eventually consistent reads only, so do not specify ConsistentRead // when querying a global secondary index. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon DynamoDB's // API operation Query for usage and error information. // // Returned Error Codes: // * ProvisionedThroughputExceededException // Your request rate is too high. The AWS SDKs for DynamoDB automatically retry // requests that receive this exception. Your request is eventually successful, // unless your retry queue is too large to finish. Reduce the frequency of requests // and use exponential backoff. For more information, go to Error Retries and // Exponential Backoff (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ErrorHandling.html#APIRetries) // in the Amazon DynamoDB Developer Guide. // // * ResourceNotFoundException // The operation tried to access a nonexistent table or index. The resource // might not be specified correctly, or its status might not be ACTIVE. // // * InternalServerError // An error occurred on the server side. // func (c *DynamoDB) Query(input *QueryInput) (*QueryOutput, error) { req, out := c.QueryRequest(input) err := req.Send() return out, err } // QueryPages iterates over the pages of a Query operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See Query method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a Query operation. // pageNum := 0 // err := client.QueryPages(params, // func(page *QueryOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DynamoDB) QueryPages(input *QueryInput, fn func(p *QueryOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.QueryRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*QueryOutput), lastPage) }) } const opScan = "Scan" // ScanRequest generates a "aws/request.Request" representing the // client's request for the Scan operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See Scan for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the Scan method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ScanRequest method. // req, resp := client.ScanRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DynamoDB) ScanRequest(input *ScanInput) (req *request.Request, output *ScanOutput) { op := &request.Operation{ Name: opScan, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"ExclusiveStartKey"}, OutputTokens: []string{"LastEvaluatedKey"}, LimitToken: "Limit", TruncationToken: "", }, } if input == nil { input = &ScanInput{} } req = c.newRequest(op, input, output) output = &ScanOutput{} req.Data = output return } // Scan API operation for Amazon DynamoDB. // // The Scan operation returns one or more items and item attributes by accessing // every item in a table or a secondary index. To have DynamoDB return fewer // items, you can provide a ScanFilter operation. // // If the total number of scanned items exceeds the maximum data set size limit // of 1 MB, the scan stops and results are returned to the user as a LastEvaluatedKey // value to continue the scan in a subsequent operation. The results also include // the number of items exceeding the limit. A scan can result in no table data // meeting the filter criteria. // // By default, Scan operations proceed sequentially; however, for faster performance // on a large table or secondary index, applications can request a parallel // Scan operation by providing the Segment and TotalSegments parameters. For // more information, see Parallel Scan (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#QueryAndScanParallelScan) // in the Amazon DynamoDB Developer Guide. // // By default, Scan uses eventually consistent reads when accessing the data // in a table; therefore, the result set might not include the changes to data // in the table immediately before the operation began. If you need a consistent // copy of the data, as of the time that the Scan begins, you can set the ConsistentRead // parameter to true. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon DynamoDB's // API operation Scan for usage and error information. // // Returned Error Codes: // * ProvisionedThroughputExceededException // Your request rate is too high. The AWS SDKs for DynamoDB automatically retry // requests that receive this exception. Your request is eventually successful, // unless your retry queue is too large to finish. Reduce the frequency of requests // and use exponential backoff. For more information, go to Error Retries and // Exponential Backoff (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ErrorHandling.html#APIRetries) // in the Amazon DynamoDB Developer Guide. // // * ResourceNotFoundException // The operation tried to access a nonexistent table or index. The resource // might not be specified correctly, or its status might not be ACTIVE. // // * InternalServerError // An error occurred on the server side. // func (c *DynamoDB) Scan(input *ScanInput) (*ScanOutput, error) { req, out := c.ScanRequest(input) err := req.Send() return out, err } // ScanPages iterates over the pages of a Scan operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See Scan method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a Scan operation. // pageNum := 0 // err := client.ScanPages(params, // func(page *ScanOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *DynamoDB) ScanPages(input *ScanInput, fn func(p *ScanOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ScanRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ScanOutput), lastPage) }) } const opUpdateItem = "UpdateItem" // UpdateItemRequest generates a "aws/request.Request" representing the // client's request for the UpdateItem operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateItem for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateItem method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateItemRequest method. // req, resp := client.UpdateItemRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DynamoDB) UpdateItemRequest(input *UpdateItemInput) (req *request.Request, output *UpdateItemOutput) { op := &request.Operation{ Name: opUpdateItem, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateItemInput{} } req = c.newRequest(op, input, output) output = &UpdateItemOutput{} req.Data = output return } // UpdateItem API operation for Amazon DynamoDB. // // Edits an existing item's attributes, or adds a new item to the table if it // does not already exist. You can put, delete, or add attribute values. You // can also perform a conditional update on an existing item (insert a new attribute // name-value pair if it doesn't exist, or replace an existing name-value pair // if it has certain expected attribute values). // // You can also return the item's attribute values in the same UpdateItem operation // using the ReturnValues parameter. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon DynamoDB's // API operation UpdateItem for usage and error information. // // Returned Error Codes: // * ConditionalCheckFailedException // A condition specified in the operation could not be evaluated. // // * ProvisionedThroughputExceededException // Your request rate is too high. The AWS SDKs for DynamoDB automatically retry // requests that receive this exception. Your request is eventually successful, // unless your retry queue is too large to finish. Reduce the frequency of requests // and use exponential backoff. For more information, go to Error Retries and // Exponential Backoff (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ErrorHandling.html#APIRetries) // in the Amazon DynamoDB Developer Guide. // // * ResourceNotFoundException // The operation tried to access a nonexistent table or index. The resource // might not be specified correctly, or its status might not be ACTIVE. // // * ItemCollectionSizeLimitExceededException // An item collection is too large. This exception is only returned for tables // that have one or more local secondary indexes. // // * InternalServerError // An error occurred on the server side. // func (c *DynamoDB) UpdateItem(input *UpdateItemInput) (*UpdateItemOutput, error) { req, out := c.UpdateItemRequest(input) err := req.Send() return out, err } const opUpdateTable = "UpdateTable" // UpdateTableRequest generates a "aws/request.Request" representing the // client's request for the UpdateTable operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateTable for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateTable method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateTableRequest method. // req, resp := client.UpdateTableRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DynamoDB) UpdateTableRequest(input *UpdateTableInput) (req *request.Request, output *UpdateTableOutput) { op := &request.Operation{ Name: opUpdateTable, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateTableInput{} } req = c.newRequest(op, input, output) output = &UpdateTableOutput{} req.Data = output return } // UpdateTable API operation for Amazon DynamoDB. // // Modifies the provisioned throughput settings, global secondary indexes, or // DynamoDB Streams settings for a given table. // // You can only perform one of the following operations at once: // // * Modify the provisioned throughput settings of the table. // // * Enable or disable Streams on the table. // // * Remove a global secondary index from the table. // // * Create a new global secondary index on the table. Once the index begins // backfilling, you can use UpdateTable to perform other operations. // // UpdateTable is an asynchronous operation; while it is executing, the table // status changes from ACTIVE to UPDATING. While it is UPDATING, you cannot // issue another UpdateTable request. When the table returns to the ACTIVE state, // the UpdateTable operation is complete. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon DynamoDB's // API operation UpdateTable for usage and error information. // // Returned Error Codes: // * ResourceInUseException // The operation conflicts with the resource's availability. For example, you // attempted to recreate an existing table, or tried to delete a table currently // in the CREATING state. // // * ResourceNotFoundException // The operation tried to access a nonexistent table or index. The resource // might not be specified correctly, or its status might not be ACTIVE. // // * LimitExceededException // The number of concurrent table requests (cumulative number of tables in the // CREATING, DELETING or UPDATING state) exceeds the maximum allowed of 10. // // Also, for tables with secondary indexes, only one of those tables can be // in the CREATING state at any point in time. Do not attempt to create more // than one such table simultaneously. // // The total limit of tables in the ACTIVE state is 250. // // * InternalServerError // An error occurred on the server side. // func (c *DynamoDB) UpdateTable(input *UpdateTableInput) (*UpdateTableOutput, error) { req, out := c.UpdateTableRequest(input) err := req.Send() return out, err } // Represents an attribute for describing the key schema for the table and indexes. type AttributeDefinition struct { _ struct{} `type:"structure"` // A name for the attribute. // // AttributeName is a required field AttributeName *string `min:"1" type:"string" required:"true"` // The data type for the attribute, where: // // * S - the attribute is of type String // // * N - the attribute is of type Number // // * B - the attribute is of type Binary // // AttributeType is a required field AttributeType *string `type:"string" required:"true" enum:"ScalarAttributeType"` } // String returns the string representation func (s AttributeDefinition) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttributeDefinition) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttributeDefinition) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttributeDefinition"} if s.AttributeName == nil { invalidParams.Add(request.NewErrParamRequired("AttributeName")) } if s.AttributeName != nil && len(*s.AttributeName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AttributeName", 1)) } if s.AttributeType == nil { invalidParams.Add(request.NewErrParamRequired("AttributeType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the data for an attribute. You can set one, and only one, of the // elements. // // Each attribute in an item is a name-value pair. An attribute can be single-valued // or multi-valued set. For example, a book item can have title and authors // attributes. Each book has one title but can have many authors. The multi-valued // attribute is a set; duplicate values are not allowed. type AttributeValue struct { _ struct{} `type:"structure"` // A Binary data type. // // B is automatically base64 encoded/decoded by the SDK. B []byte `type:"blob"` // A Boolean data type. BOOL *bool `type:"boolean"` // A Binary Set data type. BS [][]byte `type:"list"` // A List of attribute values. L []*AttributeValue `type:"list"` // A Map of attribute values. M map[string]*AttributeValue `type:"map"` // A Number data type. N *string `type:"string"` // A Number Set data type. NS []*string `type:"list"` // A Null data type. NULL *bool `type:"boolean"` // A String data type. S *string `type:"string"` // A String Set data type. SS []*string `type:"list"` } // String returns the string representation func (s AttributeValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttributeValue) GoString() string { return s.String() } // For the UpdateItem operation, represents the attributes to be modified, the // action to perform on each, and the new value for each. // // You cannot use UpdateItem to update any primary key attributes. Instead, // you will need to delete the item, and then use PutItem to create a new item // with new attributes. // // Attribute values cannot be null; string and binary type attributes must have // lengths greater than zero; and set type attributes must not be empty. Requests // with empty values will be rejected with a ValidationException exception. type AttributeValueUpdate struct { _ struct{} `type:"structure"` // Specifies how to perform the update. Valid values are PUT (default), DELETE, // and ADD. The behavior depends on whether the specified primary key already // exists in the table. // // If an item with the specified Key is found in the table: // // * PUT - Adds the specified attribute to the item. If the attribute already // exists, it is replaced by the new value. // // * DELETE - If no value is specified, the attribute and its value are removed // from the item. The data type of the specified value must match the existing // value's data type. // // If a set of values is specified, then those values are subtracted from the // old set. For example, if the attribute value was the set [a,b,c] and the // DELETE action specified [a,c], then the final attribute value would be // [b]. Specifying an empty set is an error. // // * ADD - If the attribute does not already exist, then the attribute and // its values are added to the item. If the attribute does exist, then the // behavior of ADD depends on the data type of the attribute: // // If the existing attribute is a number, and if Value is also a number, then // the Value is mathematically added to the existing attribute. If Value // is a negative number, then it is subtracted from the existing attribute. // // If you use ADD to increment or decrement a number value for an item that // doesn't exist before the update, DynamoDB uses 0 as the initial value. // // In addition, if you use ADD to update an existing item, and intend to increment // or decrement an attribute value which does not yet exist, DynamoDB uses // 0 as the initial value. For example, suppose that the item you want to // update does not yet have an attribute named itemcount, but you decide // to ADD the number 3 to this attribute anyway, even though it currently // does not exist. DynamoDB will create the itemcount attribute, set its // initial value to 0, and finally add 3 to it. The result will be a new // itemcount attribute in the item, with a value of 3. // // If the existing data type is a set, and if the Value is also a set, then // the Value is added to the existing set. (This is a set operation, not // mathematical addition.) For example, if the attribute value was the set // [1,2], and the ADD action specified [3], then the final attribute value // would be [1,2,3]. An error occurs if an Add action is specified for a // set attribute and the attribute type specified does not match the existing // set type. // // Both sets must have the same primitive data type. For example, if the existing // data type is a set of strings, the Value must also be a set of strings. // The same holds true for number sets and binary sets. // // This action is only valid for an existing attribute whose data type is number // or is a set. Do not use ADD for any other data types. // // If no item with the specified Key is found: // // * PUT - DynamoDB creates a new item with the specified primary key, and // then adds the attribute. // // * DELETE - Nothing happens; there is no attribute to delete. // // * ADD - DynamoDB creates an item with the supplied primary key and number // (or set of numbers) for the attribute value. The only data types allowed // are number and number set; no other data types can be specified. Action *string `type:"string" enum:"AttributeAction"` // Represents the data for an attribute. You can set one, and only one, of the // elements. // // Each attribute in an item is a name-value pair. An attribute can be single-valued // or multi-valued set. For example, a book item can have title and authors // attributes. Each book has one title but can have many authors. The multi-valued // attribute is a set; duplicate values are not allowed. Value *AttributeValue `type:"structure"` } // String returns the string representation func (s AttributeValueUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttributeValueUpdate) GoString() string { return s.String() } // Represents the input of a BatchGetItem operation. type BatchGetItemInput struct { _ struct{} `type:"structure"` // A map of one or more table names and, for each table, a map that describes // one or more items to retrieve from that table. Each table name can be used // only once per BatchGetItem request. // // Each element in the map of items to retrieve consists of the following: // // * ConsistentRead - If true, a strongly consistent read is used; if false // (the default), an eventually consistent read is used. // // * ExpressionAttributeNames - One or more substitution tokens for attribute // names in the ProjectionExpression parameter. The following are some use // cases for using ExpressionAttributeNames: // // To access an attribute whose name conflicts with a DynamoDB reserved word. // // To create a placeholder for repeating occurrences of an attribute name in // an expression. // // To prevent special characters in an attribute name from being misinterpreted // in an expression. // // Use the # character in an expression to dereference an attribute name. For // example, consider the following attribute name: // // Percentile // // The name of this attribute conflicts with a reserved word, so it cannot be // used directly in an expression. (For the complete list of reserved words, // see Reserved Words (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ReservedWords.html) // in the Amazon DynamoDB Developer Guide). To work around this, you could // specify the following for ExpressionAttributeNames: // // {"#P":"Percentile"} // // You could then use this substitution in an expression, as in this example: // // #P = :val // // Tokens that begin with the : character are expression attribute values, which // are placeholders for the actual value at runtime. // // For more information on expression attribute names, see Accessing Item Attributes // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.AccessingItemAttributes.html) // in the Amazon DynamoDB Developer Guide. // // * Keys - An array of primary key attribute values that define specific // items in the table. For each primary key, you must provide all of the // key attributes. For example, with a simple primary key, you only need // to provide the partition key value. For a composite key, you must provide // both the partition key value and the sort key value. // // * ProjectionExpression - A string that identifies one or more attributes // to retrieve from the table. These attributes can include scalars, sets, // or elements of a JSON document. The attributes in the expression must // be separated by commas. // // If no attribute names are specified, then all attributes will be returned. // If any of the requested attributes are not found, they will not appear // in the result. // // For more information, see Accessing Item Attributes (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.AccessingItemAttributes.html) // in the Amazon DynamoDB Developer Guide. // // * AttributesToGet - // // This is a legacy parameter, for backward compatibility. New applications // should use ProjectionExpression instead. Do not combine legacy parameters // and expression parameters in a single API call; otherwise, DynamoDB will // return a ValidationException exception. // // This parameter allows you to retrieve attributes of type List or Map; however, // it cannot retrieve individual elements within a List or a Map. // // The names of one or more attributes to retrieve. If no attribute names are // provided, then all attributes will be returned. If any of the requested // attributes are not found, they will not appear in the result. // // Note that AttributesToGet has no effect on provisioned throughput consumption. // DynamoDB determines capacity units consumed based on item size, not on // the amount of data that is returned to an application. // // RequestItems is a required field RequestItems map[string]*KeysAndAttributes `min:"1" type:"map" required:"true"` // Determines the level of detail about provisioned throughput consumption that // is returned in the response: // // * INDEXES - The response includes the aggregate ConsumedCapacity for the // operation, together with ConsumedCapacity for each table and secondary // index that was accessed. // // Note that some operations, such as GetItem and BatchGetItem, do not access // any indexes at all. In these cases, specifying INDEXES will only return // ConsumedCapacity information for table(s). // // * TOTAL - The response includes only the aggregate ConsumedCapacity for // the operation. // // * NONE - No ConsumedCapacity details are included in the response. ReturnConsumedCapacity *string `type:"string" enum:"ReturnConsumedCapacity"` } // String returns the string representation func (s BatchGetItemInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchGetItemInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BatchGetItemInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BatchGetItemInput"} if s.RequestItems == nil { invalidParams.Add(request.NewErrParamRequired("RequestItems")) } if s.RequestItems != nil && len(s.RequestItems) < 1 { invalidParams.Add(request.NewErrParamMinLen("RequestItems", 1)) } if s.RequestItems != nil { for i, v := range s.RequestItems { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RequestItems", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a BatchGetItem operation. type BatchGetItemOutput struct { _ struct{} `type:"structure"` // The read capacity units consumed by the operation. // // Each element consists of: // // * TableName - The table that consumed the provisioned throughput. // // * CapacityUnits - The total number of capacity units consumed. ConsumedCapacity []*ConsumedCapacity `type:"list"` // A map of table name to a list of items. Each object in Responses consists // of a table name, along with a map of attribute data consisting of the data // type and attribute value. Responses map[string][]map[string]*AttributeValue `type:"map"` // A map of tables and their respective keys that were not processed with the // current response. The UnprocessedKeys value is in the same form as RequestItems, // so the value can be provided directly to a subsequent BatchGetItem operation. // For more information, see RequestItems in the Request Parameters section. // // Each element consists of: // // * Keys - An array of primary key attribute values that define specific // items in the table. // // * AttributesToGet - One or more attributes to be retrieved from the table // or index. By default, all attributes are returned. If a requested attribute // is not found, it does not appear in the result. // // * ConsistentRead - The consistency of a read operation. If set to true, // then a strongly consistent read is used; otherwise, an eventually consistent // read is used. // // If there are no unprocessed keys remaining, the response contains an empty // UnprocessedKeys map. UnprocessedKeys map[string]*KeysAndAttributes `min:"1" type:"map"` } // String returns the string representation func (s BatchGetItemOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchGetItemOutput) GoString() string { return s.String() } // Represents the input of a BatchWriteItem operation. type BatchWriteItemInput struct { _ struct{} `type:"structure"` // A map of one or more table names and, for each table, a list of operations // to be performed (DeleteRequest or PutRequest). Each element in the map consists // of the following: // // * DeleteRequest - Perform a DeleteItem operation on the specified item. // The item to be deleted is identified by a Key subelement: // // Key - A map of primary key attribute values that uniquely identify the ! // item. Each entry in this map consists of an attribute name and an attribute // value. For each primary key, you must provide all of the key attributes. // For example, with a simple primary key, you only need to provide a value // for the partition key. For a composite primary key, you must provide values // for both the partition key and the sort key. // // * PutRequest - Perform a PutItem operation on the specified item. The // item to be put is identified by an Item subelement: // // Item - A map of attributes and their values. Each entry in this map consists // of an attribute name and an attribute value. Attribute values must not // be null; string and binary type attributes must have lengths greater than // zero; and set type attributes must not be empty. Requests that contain // empty values will be rejected with a ValidationException exception. // // If you specify any attributes that are part of an index key, then the data // types for those attributes must match those of the schema in the table's // attribute definition. // // RequestItems is a required field RequestItems map[string][]*WriteRequest `min:"1" type:"map" required:"true"` // Determines the level of detail about provisioned throughput consumption that // is returned in the response: // // * INDEXES - The response includes the aggregate ConsumedCapacity for the // operation, together with ConsumedCapacity for each table and secondary // index that was accessed. // // Note that some operations, such as GetItem and BatchGetItem, do not access // any indexes at all. In these cases, specifying INDEXES will only return // ConsumedCapacity information for table(s). // // * TOTAL - The response includes only the aggregate ConsumedCapacity for // the operation. // // * NONE - No ConsumedCapacity details are included in the response. ReturnConsumedCapacity *string `type:"string" enum:"ReturnConsumedCapacity"` // Determines whether item collection metrics are returned. If set to SIZE, // the response includes statistics about item collections, if any, that were // modified during the operation are returned in the response. If set to NONE // (the default), no statistics are returned. ReturnItemCollectionMetrics *string `type:"string" enum:"ReturnItemCollectionMetrics"` } // String returns the string representation func (s BatchWriteItemInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchWriteItemInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BatchWriteItemInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BatchWriteItemInput"} if s.RequestItems == nil { invalidParams.Add(request.NewErrParamRequired("RequestItems")) } if s.RequestItems != nil && len(s.RequestItems) < 1 { invalidParams.Add(request.NewErrParamMinLen("RequestItems", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a BatchWriteItem operation. type BatchWriteItemOutput struct { _ struct{} `type:"structure"` // The capacity units consumed by the operation. // // Each element consists of: // // * TableName - The table that consumed the provisioned throughput. // // * CapacityUnits - The total number of capacity units consumed. ConsumedCapacity []*ConsumedCapacity `type:"list"` // A list of tables that were processed by BatchWriteItem and, for each table, // information about any item collections that were affected by individual DeleteItem // or PutItem operations. // // Each entry consists of the following subelements: // // * ItemCollectionKey - The partition key value of the item collection. // This is the same as the partition key value of the item. // // * SizeEstimateRange - An estimate of item collection size, expressed in // GB. This is a two-element array containing a lower bound and an upper // bound for the estimate. The estimate includes the size of all the items // in the table, plus the size of all attributes projected into all of the // local secondary indexes on the table. Use this estimate to measure whether // a local secondary index is approaching its size limit. // // The estimate is subject to change over time; therefore, do not rely on the // precision or accuracy of the estimate. ItemCollectionMetrics map[string][]*ItemCollectionMetrics `type:"map"` // A map of tables and requests against those tables that were not processed. // The UnprocessedItems value is in the same form as RequestItems, so you can // provide this value directly to a subsequent BatchGetItem operation. For more // information, see RequestItems in the Request Parameters section. // // Each UnprocessedItems entry consists of a table name and, for that table, // a list of operations to perform (DeleteRequest or PutRequest). // // * DeleteRequest - Perform a DeleteItem operation on the specified item. // The item to be deleted is identified by a Key subelement: // // Key - A map of primary key attribute values that uniquely identify the item. // Each entry in this map consists of an attribute name and an attribute // value. // // * PutRequest - Perform a PutItem operation on the specified item. The // item to be put is identified by an Item subelement: // // Item - A map of attributes and their values. Each entry in this map consists // of an attribute name and an attribute value. Attribute values must not // be null; string and binary type attributes must have lengths greater than // zero; and set type attributes must not be empty. Requests that contain // empty values will be rejected with a ValidationException exception. // // If you specify any attributes that are part of an index key, then the data // types for those attributes must match those of the schema in the table's // attribute definition. // // If there are no unprocessed items remaining, the response contains an empty // UnprocessedItems map. UnprocessedItems map[string][]*WriteRequest `min:"1" type:"map"` } // String returns the string representation func (s BatchWriteItemOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchWriteItemOutput) GoString() string { return s.String() } // Represents the amount of provisioned throughput capacity consumed on a table // or an index. type Capacity struct { _ struct{} `type:"structure"` // The total number of capacity units consumed on a table or an index. CapacityUnits *float64 `type:"double"` } // String returns the string representation func (s Capacity) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Capacity) GoString() string { return s.String() } // Represents the selection criteria for a Query or Scan operation: // // * For a Query operation, Condition is used for specifying the KeyConditions // to use when querying a table or an index. For KeyConditions, only the // following comparison operators are supported: // // EQ | LE | LT | GE | GT | BEGINS_WITH | BETWEEN // // Condition is also used in a QueryFilter, which evaluates the query results // and returns only the desired values. // // * For a Scan operation, Condition is used in a ScanFilter, which evaluates // the scan results and returns only the desired values. type Condition struct { _ struct{} `type:"structure"` // One or more values to evaluate against the supplied attribute. The number // of values in the list depends on the ComparisonOperator being used. // // For type Number, value comparisons are numeric. // // String value comparisons for greater than, equals, or less than are based // on ASCII character code values. For example, a is greater than A, and a is // greater than B. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters // (http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters). // // For Binary, DynamoDB treats each byte of the binary data as unsigned when // it compares binary values. AttributeValueList []*AttributeValue `type:"list"` // A comparator for evaluating attributes. For example, equals, greater than, // less than, etc. // // The following comparison operators are available: // // EQ | NE | LE | LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | // BEGINS_WITH | IN | BETWEEN // // The following are descriptions of each comparison operator. // // * EQ : Equal. EQ is supported for all datatypes, including lists and maps. // // AttributeValueList can contain only one AttributeValue element of type String, // Number, Binary, String Set, Number Set, or Binary Set. If an item contains // an AttributeValue element of a different type than the one provided in // the request, the value does not match. For example, {"S":"6"} does not // equal {"N":"6"}. Also, {"N":"6"} does not equal {"NS":["6", "2", "1"]}. // // * NE : Not equal. NE is supported for all datatypes, including lists and // maps. // // * AttributeValueList can contain only one AttributeValue of type String, // Number, Binary, String Set, Number Set, or Binary Set. If an item contains // an AttributeValue of a different type than the one provided in the request, // the value does not match. For example, {"S":"6"} does not equal {"N":"6"}. // Also, {"N":"6"} does not equal {"NS":["6", "2", "1"]}. // // * LE : Less than or equal. // // AttributeValueList can contain only one AttributeValue element of type String, // Number, or Binary (not a set type). If an item contains an AttributeValue // element of a different type than the one provided in the request, the value // does not match. For example, {"S":"6"} does not equal {"N":"6"}. Also, {"N":"6"} // does not compare to {"NS":["6", "2", "1"]}. // // LT: Less than. // // AttributeValueListcan contain only one AttributeValueof type String, Number, or Binary (not a set type). If an item contains an // AttributeValueelement of a different type than the one provided in the request, the value // does not match. For example, {"S":"6"}does not equal {"N":"6"}. Also, {"N":"6"}does not compare to {"NS":["6", "2", "1"]} // // ComparisonOperator is a required field ComparisonOperator *string `type:"string" required:"true" enum:"ComparisonOperator"` } // String returns the string representation func (s Condition) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Condition) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Condition) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Condition"} if s.ComparisonOperator == nil { invalidParams.Add(request.NewErrParamRequired("ComparisonOperator")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The capacity units consumed by an operation. The data returned includes the // total provisioned throughput consumed, along with statistics for the table // and any indexes involved in the operation. ConsumedCapacity is only returned // if the request asked for it. For more information, see Provisioned Throughput // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughputIntro.html) // in the Amazon DynamoDB Developer Guide. type ConsumedCapacity struct { _ struct{} `type:"structure"` // The total number of capacity units consumed by the operation. CapacityUnits *float64 `type:"double"` // The amount of throughput consumed on each global index affected by the operation. GlobalSecondaryIndexes map[string]*Capacity `type:"map"` // The amount of throughput consumed on each local index affected by the operation. LocalSecondaryIndexes map[string]*Capacity `type:"map"` // The amount of throughput consumed on the table affected by the operation. Table *Capacity `type:"structure"` // The name of the table that was affected by the operation. TableName *string `min:"3" type:"string"` } // String returns the string representation func (s ConsumedCapacity) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConsumedCapacity) GoString() string { return s.String() } // Represents a new global secondary index to be added to an existing table. type CreateGlobalSecondaryIndexAction struct { _ struct{} `type:"structure"` // The name of the global secondary index to be created. // // IndexName is a required field IndexName *string `min:"3" type:"string" required:"true"` // The key schema for the global secondary index. // // KeySchema is a required field KeySchema []*KeySchemaElement `min:"1" type:"list" required:"true"` // Represents attributes that are copied (projected) from the table into an // index. These are in addition to the primary key attributes and index key // attributes, which are automatically projected. // // Projection is a required field Projection *Projection `type:"structure" required:"true"` // Represents the provisioned throughput settings for a specified table or index. // The settings can be modified using the UpdateTable operation. // // For current minimum and maximum provisioned throughput values, see Limits // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html) // in the Amazon DynamoDB Developer Guide. // // ProvisionedThroughput is a required field ProvisionedThroughput *ProvisionedThroughput `type:"structure" required:"true"` } // String returns the string representation func (s CreateGlobalSecondaryIndexAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateGlobalSecondaryIndexAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateGlobalSecondaryIndexAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateGlobalSecondaryIndexAction"} if s.IndexName == nil { invalidParams.Add(request.NewErrParamRequired("IndexName")) } if s.IndexName != nil && len(*s.IndexName) < 3 { invalidParams.Add(request.NewErrParamMinLen("IndexName", 3)) } if s.KeySchema == nil { invalidParams.Add(request.NewErrParamRequired("KeySchema")) } if s.KeySchema != nil && len(s.KeySchema) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeySchema", 1)) } if s.Projection == nil { invalidParams.Add(request.NewErrParamRequired("Projection")) } if s.ProvisionedThroughput == nil { invalidParams.Add(request.NewErrParamRequired("ProvisionedThroughput")) } if s.KeySchema != nil { for i, v := range s.KeySchema { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "KeySchema", i), err.(request.ErrInvalidParams)) } } } if s.Projection != nil { if err := s.Projection.Validate(); err != nil { invalidParams.AddNested("Projection", err.(request.ErrInvalidParams)) } } if s.ProvisionedThroughput != nil { if err := s.ProvisionedThroughput.Validate(); err != nil { invalidParams.AddNested("ProvisionedThroughput", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the input of a CreateTable operation. type CreateTableInput struct { _ struct{} `type:"structure"` // An array of attributes that describe the key schema for the table and indexes. // // AttributeDefinitions is a required field AttributeDefinitions []*AttributeDefinition `type:"list" required:"true"` // One or more global secondary indexes (the maximum is five) to be created // on the table. Each global secondary index in the array includes the following: // // * IndexName - The name of the global secondary index. Must be unique only // for this table. // // * KeySchema - Specifies the key schema for the global secondary index. // // * Projection - Specifies attributes that are copied (projected) from the // table into the index. These are in addition to the primary key attributes // and index key attributes, which are automatically projected. Each attribute // specification is composed of: // // * ProjectionType - One of the following: // // KEYS_ONLY - Only the index and primary keys are projected into the index. // // INCLUDE - Only the specified table attributes are projected into the index. // The list of projected attributes are in NonKeyAttributes. // // ALL - All of the table attributes are projected into the index. // // NonKeyAttributes - A list of one or more non-key attribute names that are // projected into the secondary index. The total count of attributes provided // in NonKeyAttributes, summed across all of the secondary indexes, must // not exceed 20. If you project the same attribute into two different indexes, // this counts as two distinct attributes when determining the total. // // * ProvisionedThroughput - The provisioned throughput settings for the // global secondary index, consisting of read and write capacity units. GlobalSecondaryIndexes []*GlobalSecondaryIndex `type:"list"` // Specifies the attributes that make up the primary key for a table or an index. // The attributes in KeySchema must also be defined in the AttributeDefinitions // array. For more information, see Data Model (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DataModel.html) // in the Amazon DynamoDB Developer Guide. // // Each KeySchemaElement in the array is composed of: // // * AttributeName - The name of this key attribute. // // * KeyType - The role that the key attribute will assume: // // HASH - partition key // // RANGE - sort key // // The partition key of an item is also known as its hash attribute. The term // "hash attribute" derives from DynamoDB' usage of an internal hash function // to evenly distribute data items across partitions, based on their partition // key values. // // The sort key of an item is also known as its range attribute. The term "range // attribute" derives from the way DynamoDB stores items with the same partition // key physically close together, in sorted order by the sort key value. // // For a simple primary key (partition key), you must provide exactly one element // with a KeyType of HASH. // // For a composite primary key (partition key and sort key), you must provide // exactly two elements, in this order: The first element must have a KeyType // of HASH, and the second element must have a KeyType of RANGE. // // For more information, see Specifying the Primary Key (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithTables.html#WorkingWithTables.primary.key) // in the Amazon DynamoDB Developer Guide. // // KeySchema is a required field KeySchema []*KeySchemaElement `min:"1" type:"list" required:"true"` // One or more local secondary indexes (the maximum is five) to be created on // the table. Each index is scoped to a given partition key value. There is // a 10 GB size limit per partition key value; otherwise, the size of a local // secondary index is unconstrained. // // Each local secondary index in the array includes the following: // // * IndexName - The name of the local secondary index. Must be unique only // for this table. // // * KeySchema - Specifies the key schema for the local secondary index. // The key schema must begin with the same partition key as the table. // // * Projection - Specifies attributes that are copied (projected) from the // table into the index. These are in addition to the primary key attributes // and index key attributes, which are automatically projected. Each attribute // specification is composed of: // // * ProjectionType - One of the following: // // KEYS_ONLY - Only the index and primary keys are projected into the index. // // INCLUDE - Only the specified table attributes are projected into the index. // The list of projected attributes are in NonKeyAttributes. // // ALL - All of the table attributes are projected into the index. // // NonKeyAttributes - A list of one or more non-key attribute names that are // projected into the secondary index. The total count of attributes provided // in NonKeyAttributes, summed across all of the secondary indexes, must // not exceed 20. If you project the same attribute into two different indexes, // this counts as two distinct attributes when determining the total. LocalSecondaryIndexes []*LocalSecondaryIndex `type:"list"` // Represents the provisioned throughput settings for a specified table or index. // The settings can be modified using the UpdateTable operation. // // For current minimum and maximum provisioned throughput values, see Limits // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html) // in the Amazon DynamoDB Developer Guide. // // ProvisionedThroughput is a required field ProvisionedThroughput *ProvisionedThroughput `type:"structure" required:"true"` // The settings for DynamoDB Streams on the table. These settings consist of: // // * StreamEnabled - Indicates whether Streams is to be enabled (true) or // disabled (false). // // * StreamViewType - When an item in the table is modified, StreamViewType // determines what information is written to the table's stream. Valid values // for StreamViewType are: // // KEYS_ONLY - Only the key attributes of the modified item are written to the // stream. // // NEW_IMAGE - The entire item, as it appears after it was modified, is written // to the stream. // // OLD_IMAGE - The entire item, as it appeared before it was modified, is written // to the stream. // // NEW_AND_OLD_IMAGES - Both the new and the old item images of the item are // written to the stream. StreamSpecification *StreamSpecification `type:"structure"` // The name of the table to create. // // TableName is a required field TableName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s CreateTableInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTableInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateTableInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateTableInput"} if s.AttributeDefinitions == nil { invalidParams.Add(request.NewErrParamRequired("AttributeDefinitions")) } if s.KeySchema == nil { invalidParams.Add(request.NewErrParamRequired("KeySchema")) } if s.KeySchema != nil && len(s.KeySchema) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeySchema", 1)) } if s.ProvisionedThroughput == nil { invalidParams.Add(request.NewErrParamRequired("ProvisionedThroughput")) } if s.TableName == nil { invalidParams.Add(request.NewErrParamRequired("TableName")) } if s.TableName != nil && len(*s.TableName) < 3 { invalidParams.Add(request.NewErrParamMinLen("TableName", 3)) } if s.AttributeDefinitions != nil { for i, v := range s.AttributeDefinitions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AttributeDefinitions", i), err.(request.ErrInvalidParams)) } } } if s.GlobalSecondaryIndexes != nil { for i, v := range s.GlobalSecondaryIndexes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "GlobalSecondaryIndexes", i), err.(request.ErrInvalidParams)) } } } if s.KeySchema != nil { for i, v := range s.KeySchema { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "KeySchema", i), err.(request.ErrInvalidParams)) } } } if s.LocalSecondaryIndexes != nil { for i, v := range s.LocalSecondaryIndexes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "LocalSecondaryIndexes", i), err.(request.ErrInvalidParams)) } } } if s.ProvisionedThroughput != nil { if err := s.ProvisionedThroughput.Validate(); err != nil { invalidParams.AddNested("ProvisionedThroughput", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a CreateTable operation. type CreateTableOutput struct { _ struct{} `type:"structure"` // Represents the properties of a table. TableDescription *TableDescription `type:"structure"` } // String returns the string representation func (s CreateTableOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTableOutput) GoString() string { return s.String() } // Represents a global secondary index to be deleted from an existing table. type DeleteGlobalSecondaryIndexAction struct { _ struct{} `type:"structure"` // The name of the global secondary index to be deleted. // // IndexName is a required field IndexName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s DeleteGlobalSecondaryIndexAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteGlobalSecondaryIndexAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteGlobalSecondaryIndexAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteGlobalSecondaryIndexAction"} if s.IndexName == nil { invalidParams.Add(request.NewErrParamRequired("IndexName")) } if s.IndexName != nil && len(*s.IndexName) < 3 { invalidParams.Add(request.NewErrParamMinLen("IndexName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the input of a DeleteItem operation. type DeleteItemInput struct { _ struct{} `type:"structure"` // A condition that must be satisfied in order for a conditional DeleteItem // to succeed. // // An expression can contain any of the following: // // * Functions: attribute_exists | attribute_not_exists | attribute_type // | contains | begins_with | size // // These function names are case-sensitive. // // * Comparison operators: = | <> | < | > | <= // | >= | BETWEEN | IN // // * Logical operators: AND | OR | NOT // // For more information on condition expressions, see Specifying Conditions // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.SpecifyingConditions.html) // in the Amazon DynamoDB Developer Guide. // // ConditionExpression replaces the legacy ConditionalOperator and Expected // parameters. ConditionExpression *string `type:"string"` // This is a legacy parameter, for backward compatibility. New applications // should use ConditionExpression instead. Do not combine legacy parameters // and expression parameters in a single API call; otherwise, DynamoDB will // return a ValidationException exception. // // A logical operator to apply to the conditions in the Expected map: // // * AND - If all of the conditions evaluate to true, then the entire map // evaluates to true. // // * OR - If at least one of the conditions evaluate to true, then the entire // map evaluates to true. // // If you omit ConditionalOperator, then AND is the default. // // The operation will succeed only if the entire map evaluates to true. // // This parameter does not support attributes of type List or Map. ConditionalOperator *string `type:"string" enum:"ConditionalOperator"` // This is a legacy parameter, for backward compatibility. New applications // should use ConditionExpression instead. Do not combine legacy parameters // and expression parameters in a single API call; otherwise, DynamoDB will // return a ValidationException exception. // // A map of attribute/condition pairs. Expected provides a conditional block // for the DeleteItem operation. // // Each element of Expected consists of an attribute name, a comparison operator, // and one or more values. DynamoDB compares the attribute with the value(s) // you supplied, using the comparison operator. For each Expected element, the // result of the evaluation is either true or false. // // If you specify more than one element in the Expected map, then by default // all of the conditions must evaluate to true. In other words, the conditions // are ANDed together. (You can use the ConditionalOperator parameter to OR // the conditions instead. If you do this, then at least one of the conditions // must evaluate to true, rather than all of them.) // // If the Expected map evaluates to true, then the conditional operation succeeds; // otherwise, it fails. // // Expected contains the following: // // * AttributeValueList - One or more values to evaluate against the supplied // attribute. The number of values in the list depends on the ComparisonOperator // being used. // // For type Number, value comparisons are numeric. // // String value comparisons for greater than, equals, or less than are based // on ASCII character code values. For example, a is greater than A, and // a is greater than B. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters // (http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters). // // For type Binary, DynamoDB treats each byte of the binary data as unsigned // when it compares binary values. // // * ComparisonOperator - A comparator for evaluating attributes in the AttributeValueList. // When performing the comparison, DynamoDB uses strongly consistent reads. // // The following comparison operators are available: // // EQ | NE | LE | LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | // BEGINS_WITH | IN | BETWEEN // // The following are descriptions of each comparison operator. // // EQ : Equal. EQ is supported for all datatypes, including lists and maps. // // AttributeValueList can contain only one AttributeValue element of type String, // Number, Binary, String Set, Number Set, or Binary Set. If an item contains // an AttributeValue element of a different type than the one provided in // the request, the value does not match. For example, {"S":"6"} does not // equal {"N":"6"}. Also, {"N":"6"} does not equal {"NS":["6", "2", "1"]}. // // NE : Not equal. NE is supported for all datatypes, including lists and maps. // // AttributeValueList can contain only one AttributeValue of type String, Number, // Binary, String Set, Number Set, or Binary Set. If an item contains an // AttributeValue of a different type than the one provided in the request, // the value does not match. For example, {"S":"6"} does not equal {"N":"6"}. // Also, {"N":"6"} does not equal {"NS":["6", "2", "1"]}. // // * LE : Less than or equal. // // AttributeValueList can contain only one AttributeValue element of type String, // Number, or Binary (not a set type). If an item contains an AttributeValue // element of a different type than the one provided in the request, the // value does not match. For example, {"S":"6"} does not equal {"N":"6"}. // Also, {"N":"6"} does not compare to {"NS":["6", "2", "1"]}. // // * LT : Less than. // // * AttributeValueList can contain only one AttributeValue of type String, // Number, or Binary (not a set type). If an item contains an AttributeValue // element of a different type than the one provided in the request, the // value does not match. For example, {"S":"6"} does not equal {"N":"6"}. // Also, {"N":"6"} does not compare to {"NS":["6", "2", "1"]}. // // * GE : Greater than or equal. // // AttributeValueList can contain only one AttributeValue element of type String, // Number, or Binary (not a set type). If an item contains an AttributeValue // element of a different type than the one provided in the request, the value // does not match. For example, {"S":"6"} does not equal {"N":"6"}. Also, {"N":"6"} // does not compare to {"NS":["6", "2", "1"]}. // // GT: Greater than. // // AttributeValueListcan contain only one AttributeValueelement of type String, Number, or Binary (not a set type). If an item contains // an AttributeValueelement of a different type than the one provided in the request, the value // does not match. For example, {"S":"6"}does not equal {"N":"6"}. Also, {"N":"6"}does not compare to {"NS":["6", "2", "1"]}. // // NOT_NULL // : The attribute exists. NOT_NULL // is supported for all datatypes, including lists and maps. // // This operator tests for the existence of an attribute, not its data type. // If the data type of attribute "a" is null, and you evaluate it using NOT_NULL, the result is a Boolean true. This result is because the attribute "a" exists; its data type is not relevant to the NOT_NULLcomparison operator. // // NULL // : The attribute does not exist. NULL // is supported for all datatypes, including lists and maps. // // This operator tests for the nonexistence of an attribute, not its data type. // If the data type of attribute "a" is null, and you evaluate it using NULL, the result is a Boolean false. This is because the attribute "a" exists; its data type is not relevant to the NULL Expected map[string]*ExpectedAttributeValue `type:"map"` // One or more substitution tokens for attribute names in an expression. The // following are some use cases for using ExpressionAttributeNames: // // * To access an attribute whose name conflicts with a DynamoDB reserved // word. // // * To create a placeholder for repeating occurrences of an attribute name // in an expression. // // * To prevent special characters in an attribute name from being misinterpreted // in an expression. // // Use the # character in an expression to dereference an attribute name. For // example, consider the following attribute name: // // * Percentile // // The name of this attribute conflicts with a reserved word, so it cannot be // used directly in an expression. (For the complete list of reserved words, // see Reserved Words (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ReservedWords.html) // in the Amazon DynamoDB Developer Guide). To work around this, you could specify // the following for ExpressionAttributeNames: // // * {"#P":"Percentile"} // // You could then use this substitution in an expression, as in this example: // // * #P = :val // // Tokens that begin with the : character are expression attribute values, which // are placeholders for the actual value at runtime. // // For more information on expression attribute names, see Accessing Item Attributes // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.AccessingItemAttributes.html) // in the Amazon DynamoDB Developer Guide. ExpressionAttributeNames map[string]*string `type:"map"` // One or more values that can be substituted in an expression. // // Use the : (colon) character in an expression to dereference an attribute // value. For example, suppose that you wanted to check whether the value of // the ProductStatus attribute was one of the following: // // Available | Backordered | Discontinued // // You would first need to specify ExpressionAttributeValues as follows: // // { ":avail":{"S":"Available"}, ":back":{"S":"Backordered"}, ":disc":{"S":"Discontinued"} // } // // You could then use these values in an expression, such as this: // // ProductStatus IN (:avail, :back, :disc) // // For more information on expression attribute values, see Specifying Conditions // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.SpecifyingConditions.html) // in the Amazon DynamoDB Developer Guide. ExpressionAttributeValues map[string]*AttributeValue `type:"map"` // A map of attribute names to AttributeValue objects, representing the primary // key of the item to delete. // // For the primary key, you must provide all of the attributes. For example, // with a simple primary key, you only need to provide a value for the partition // key. For a composite primary key, you must provide values for both the partition // key and the sort key. // // Key is a required field Key map[string]*AttributeValue `type:"map" required:"true"` // Determines the level of detail about provisioned throughput consumption that // is returned in the response: // // * INDEXES - The response includes the aggregate ConsumedCapacity for the // operation, together with ConsumedCapacity for each table and secondary // index that was accessed. // // Note that some operations, such as GetItem and BatchGetItem, do not access // any indexes at all. In these cases, specifying INDEXES will only return // ConsumedCapacity information for table(s). // // * TOTAL - The response includes only the aggregate ConsumedCapacity for // the operation. // // * NONE - No ConsumedCapacity details are included in the response. ReturnConsumedCapacity *string `type:"string" enum:"ReturnConsumedCapacity"` // Determines whether item collection metrics are returned. If set to SIZE, // the response includes statistics about item collections, if any, that were // modified during the operation are returned in the response. If set to NONE // (the default), no statistics are returned. ReturnItemCollectionMetrics *string `type:"string" enum:"ReturnItemCollectionMetrics"` // Use ReturnValues if you want to get the item attributes as they appeared // before they were deleted. For DeleteItem, the valid values are: // // * NONE - If ReturnValues is not specified, or if its value is NONE, then // nothing is returned. (This setting is the default for ReturnValues.) // // * ALL_OLD - The content of the old item is returned. // // The ReturnValues parameter is used by several DynamoDB operations; however, // DeleteItem does not recognize any values other than NONE or ALL_OLD. ReturnValues *string `type:"string" enum:"ReturnValue"` // The name of the table from which to delete the item. // // TableName is a required field TableName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s DeleteItemInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteItemInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteItemInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteItemInput"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.TableName == nil { invalidParams.Add(request.NewErrParamRequired("TableName")) } if s.TableName != nil && len(*s.TableName) < 3 { invalidParams.Add(request.NewErrParamMinLen("TableName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a DeleteItem operation. type DeleteItemOutput struct { _ struct{} `type:"structure"` // A map of attribute names to AttributeValue objects, representing the item // as it appeared before the DeleteItem operation. This map appears in the response // only if ReturnValues was specified as ALL_OLD in the request. Attributes map[string]*AttributeValue `type:"map"` // The capacity units consumed by an operation. The data returned includes the // total provisioned throughput consumed, along with statistics for the table // and any indexes involved in the operation. ConsumedCapacity is only returned // if the request asked for it. For more information, see Provisioned Throughput // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughputIntro.html) // in the Amazon DynamoDB Developer Guide. ConsumedCapacity *ConsumedCapacity `type:"structure"` // Information about item collections, if any, that were affected by the operation. // ItemCollectionMetrics is only returned if the request asked for it. If the // table does not have any local secondary indexes, this information is not // returned in the response. // // Each ItemCollectionMetrics element consists of: // // * ItemCollectionKey - The partition key value of the item collection. // This is the same as the partition key value of the item itself. // // * SizeEstimateRange - An estimate of item collection size, in gigabytes. // This value is a two-element array containing a lower bound and an upper // bound for the estimate. The estimate includes the size of all the items // in the table, plus the size of all attributes projected into all of the // local secondary indexes on that table. Use this estimate to measure whether // a local secondary index is approaching its size limit. // // The estimate is subject to change over time; therefore, do not rely on the // precision or accuracy of the estimate. ItemCollectionMetrics *ItemCollectionMetrics `type:"structure"` } // String returns the string representation func (s DeleteItemOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteItemOutput) GoString() string { return s.String() } // Represents a request to perform a DeleteItem operation on an item. type DeleteRequest struct { _ struct{} `type:"structure"` // A map of attribute name to attribute values, representing the primary key // of the item to delete. All of the table's primary key attributes must be // specified, and their data types must match those of the table's key schema. // // Key is a required field Key map[string]*AttributeValue `type:"map" required:"true"` } // String returns the string representation func (s DeleteRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRequest) GoString() string { return s.String() } // Represents the input of a DeleteTable operation. type DeleteTableInput struct { _ struct{} `type:"structure"` // The name of the table to delete. // // TableName is a required field TableName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s DeleteTableInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTableInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTableInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTableInput"} if s.TableName == nil { invalidParams.Add(request.NewErrParamRequired("TableName")) } if s.TableName != nil && len(*s.TableName) < 3 { invalidParams.Add(request.NewErrParamMinLen("TableName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a DeleteTable operation. type DeleteTableOutput struct { _ struct{} `type:"structure"` // Represents the properties of a table. TableDescription *TableDescription `type:"structure"` } // String returns the string representation func (s DeleteTableOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTableOutput) GoString() string { return s.String() } // Represents the input of a DescribeLimits operation. Has no content. type DescribeLimitsInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DescribeLimitsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLimitsInput) GoString() string { return s.String() } // Represents the output of a DescribeLimits operation. type DescribeLimitsOutput struct { _ struct{} `type:"structure"` // The maximum total read capacity units that your account allows you to provision // across all of your tables in this region. AccountMaxReadCapacityUnits *int64 `min:"1" type:"long"` // The maximum total write capacity units that your account allows you to provision // across all of your tables in this region. AccountMaxWriteCapacityUnits *int64 `min:"1" type:"long"` // The maximum read capacity units that your account allows you to provision // for a new table that you are creating in this region, including the read // capacity units provisioned for its global secondary indexes (GSIs). TableMaxReadCapacityUnits *int64 `min:"1" type:"long"` // The maximum write capacity units that your account allows you to provision // for a new table that you are creating in this region, including the write // capacity units provisioned for its global secondary indexes (GSIs). TableMaxWriteCapacityUnits *int64 `min:"1" type:"long"` } // String returns the string representation func (s DescribeLimitsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLimitsOutput) GoString() string { return s.String() } // Represents the input of a DescribeTable operation. type DescribeTableInput struct { _ struct{} `type:"structure"` // The name of the table to describe. // // TableName is a required field TableName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s DescribeTableInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTableInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTableInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTableInput"} if s.TableName == nil { invalidParams.Add(request.NewErrParamRequired("TableName")) } if s.TableName != nil && len(*s.TableName) < 3 { invalidParams.Add(request.NewErrParamMinLen("TableName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a DescribeTable operation. type DescribeTableOutput struct { _ struct{} `type:"structure"` // Represents the properties of a table. Table *TableDescription `type:"structure"` } // String returns the string representation func (s DescribeTableOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTableOutput) GoString() string { return s.String() } // Represents a condition to be compared with an attribute value. This condition // can be used with DeleteItem, PutItem or UpdateItem operations; if the comparison // evaluates to true, the operation succeeds; if not, the operation fails. You // can use ExpectedAttributeValue in one of two different ways: // // * Use AttributeValueList to specify one or more values to compare against // an attribute. Use ComparisonOperator to specify how you want to perform // the comparison. If the comparison evaluates to true, then the conditional // operation succeeds. // // * Use Value to specify a value that DynamoDB will compare against an attribute. // If the values match, then ExpectedAttributeValue evaluates to true and // the conditional operation succeeds. Optionally, you can also set Exists // to false, indicating that you do not expect to find the attribute value // in the table. In this case, the conditional operation succeeds only if // the comparison evaluates to false. // // Value and Exists are incompatible with AttributeValueList and ComparisonOperator. // Note that if you use both sets of parameters at once, DynamoDB will return // a ValidationException exception. type ExpectedAttributeValue struct { _ struct{} `type:"structure"` // One or more values to evaluate against the supplied attribute. The number // of values in the list depends on the ComparisonOperator being used. // // For type Number, value comparisons are numeric. // // String value comparisons for greater than, equals, or less than are based // on ASCII character code values. For example, a is greater than A, and a is // greater than B. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters // (http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters). // // For Binary, DynamoDB treats each byte of the binary data as unsigned when // it compares binary values. // // For information on specifying data types in JSON, see JSON Data Format (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DataFormat.html) // in the Amazon DynamoDB Developer Guide. AttributeValueList []*AttributeValue `type:"list"` // A comparator for evaluating attributes in the AttributeValueList. For example, // equals, greater than, less than, etc. // // The following comparison operators are available: // // EQ | NE | LE | LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | // BEGINS_WITH | IN | BETWEEN // // The following are descriptions of each comparison operator. // // * EQ : Equal. EQ is supported for all datatypes, including lists and maps. // // AttributeValueList can contain only one AttributeValue element of type String, // Number, Binary, String Set, Number Set, or Binary Set. If an item contains // an AttributeValue element of a different type than the one provided in // the request, the value does not match. For example, {"S":"6"} does not // equal {"N":"6"}. Also, {"N":"6"} does not equal {"NS":["6", "2", "1"]}. // // * NE : Not equal. NE is supported for all datatypes, including lists and // maps. // // * AttributeValueList can contain only one AttributeValue of type String, // Number, Binary, String Set, Number Set, or Binary Set. If an item contains // an AttributeValue of a different type than the one provided in the request, // the value does not match. For example, {"S":"6"} does not equal {"N":"6"}. // Also, {"N":"6"} does not equal {"NS":["6", "2", "1"]}. // // * LE : Less than or equal. // // AttributeValueList can contain only one AttributeValue element of type String, // Number, or Binary (not a set type). If an item contains an AttributeValue // element of a different type than the one provided in the request, the value // does not match. For example, {"S":"6"} does not equal {"N":"6"}. Also, {"N":"6"} // does not compare to {"NS":["6", "2", "1"]}. // // LT: Less than. // // AttributeValueListcan contain only one AttributeValueof type String, Number, or Binary (not a set type). If an item contains an // AttributeValueelement of a different type than the one provided in the request, the value // does not match. For example, {"S":"6"}does not equal {"N":"6"}. Also, {"N":"6"}does not compare to {"NS":["6", "2", "1"]} ComparisonOperator *string `type:"string" enum:"ComparisonOperator"` // Causes DynamoDB to evaluate the value before attempting a conditional operation: // // * If Exists is true, DynamoDB will check to see if that attribute value // already exists in the table. If it is found, then the operation succeeds. // If it is not found, the operation fails with a ConditionalCheckFailedException. // // * If Exists is false, DynamoDB assumes that the attribute value does not // exist in the table. If in fact the value does not exist, then the assumption // is valid and the operation succeeds. If the value is found, despite the // assumption that it does not exist, the operation fails with a ConditionalCheckFailedException. // // The default setting for Exists is true. If you supply a Value all by itself, // DynamoDB assumes the attribute exists: You don't have to set Exists to true, // because it is implied. // // DynamoDB returns a ValidationException if: // // * Exists is true but there is no Value to check. (You expect a value to // exist, but don't specify what that value is.) // // * Exists is false but you also provide a Value. (You cannot expect an // attribute to have a value, while also expecting it not to exist.) Exists *bool `type:"boolean"` // Represents the data for an attribute. You can set one, and only one, of the // elements. // // Each attribute in an item is a name-value pair. An attribute can be single-valued // or multi-valued set. For example, a book item can have title and authors // attributes. Each book has one title but can have many authors. The multi-valued // attribute is a set; duplicate values are not allowed. Value *AttributeValue `type:"structure"` } // String returns the string representation func (s ExpectedAttributeValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExpectedAttributeValue) GoString() string { return s.String() } // Represents the input of a GetItem operation. type GetItemInput struct { _ struct{} `type:"structure"` // This is a legacy parameter, for backward compatibility. New applications // should use ProjectionExpression instead. Do not combine legacy parameters // and expression parameters in a single API call; otherwise, DynamoDB will // return a ValidationException exception. // // This parameter allows you to retrieve attributes of type List or Map; however, // it cannot retrieve individual elements within a List or a Map. // // The names of one or more attributes to retrieve. If no attribute names are // provided, then all attributes will be returned. If any of the requested attributes // are not found, they will not appear in the result. // // Note that AttributesToGet has no effect on provisioned throughput consumption. // DynamoDB determines capacity units consumed based on item size, not on the // amount of data that is returned to an application. AttributesToGet []*string `min:"1" type:"list"` // Determines the read consistency model: If set to true, then the operation // uses strongly consistent reads; otherwise, the operation uses eventually // consistent reads. ConsistentRead *bool `type:"boolean"` // One or more substitution tokens for attribute names in an expression. The // following are some use cases for using ExpressionAttributeNames: // // * To access an attribute whose name conflicts with a DynamoDB reserved // word. // // * To create a placeholder for repeating occurrences of an attribute name // in an expression. // // * To prevent special characters in an attribute name from being misinterpreted // in an expression. // // Use the # character in an expression to dereference an attribute name. For // example, consider the following attribute name: // // * Percentile // // The name of this attribute conflicts with a reserved word, so it cannot be // used directly in an expression. (For the complete list of reserved words, // see Reserved Words (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ReservedWords.html) // in the Amazon DynamoDB Developer Guide). To work around this, you could specify // the following for ExpressionAttributeNames: // // * {"#P":"Percentile"} // // You could then use this substitution in an expression, as in this example: // // * #P = :val // // Tokens that begin with the : character are expression attribute values, which // are placeholders for the actual value at runtime. // // For more information on expression attribute names, see Accessing Item Attributes // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.AccessingItemAttributes.html) // in the Amazon DynamoDB Developer Guide. ExpressionAttributeNames map[string]*string `type:"map"` // A map of attribute names to AttributeValue objects, representing the primary // key of the item to retrieve. // // For the primary key, you must provide all of the attributes. For example, // with a simple primary key, you only need to provide a value for the partition // key. For a composite primary key, you must provide values for both the partition // key and the sort key. // // Key is a required field Key map[string]*AttributeValue `type:"map" required:"true"` // A string that identifies one or more attributes to retrieve from the table. // These attributes can include scalars, sets, or elements of a JSON document. // The attributes in the expression must be separated by commas. // // If no attribute names are specified, then all attributes will be returned. // If any of the requested attributes are not found, they will not appear in // the result. // // For more information, see Accessing Item Attributes (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.AccessingItemAttributes.html) // in the Amazon DynamoDB Developer Guide. // // ProjectionExpression replaces the legacy AttributesToGet parameter. ProjectionExpression *string `type:"string"` // Determines the level of detail about provisioned throughput consumption that // is returned in the response: // // * INDEXES - The response includes the aggregate ConsumedCapacity for the // operation, together with ConsumedCapacity for each table and secondary // index that was accessed. // // Note that some operations, such as GetItem and BatchGetItem, do not access // any indexes at all. In these cases, specifying INDEXES will only return // ConsumedCapacity information for table(s). // // * TOTAL - The response includes only the aggregate ConsumedCapacity for // the operation. // // * NONE - No ConsumedCapacity details are included in the response. ReturnConsumedCapacity *string `type:"string" enum:"ReturnConsumedCapacity"` // The name of the table containing the requested item. // // TableName is a required field TableName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s GetItemInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetItemInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetItemInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetItemInput"} if s.AttributesToGet != nil && len(s.AttributesToGet) < 1 { invalidParams.Add(request.NewErrParamMinLen("AttributesToGet", 1)) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.TableName == nil { invalidParams.Add(request.NewErrParamRequired("TableName")) } if s.TableName != nil && len(*s.TableName) < 3 { invalidParams.Add(request.NewErrParamMinLen("TableName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a GetItem operation. type GetItemOutput struct { _ struct{} `type:"structure"` // The capacity units consumed by an operation. The data returned includes the // total provisioned throughput consumed, along with statistics for the table // and any indexes involved in the operation. ConsumedCapacity is only returned // if the request asked for it. For more information, see Provisioned Throughput // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughputIntro.html) // in the Amazon DynamoDB Developer Guide. ConsumedCapacity *ConsumedCapacity `type:"structure"` // A map of attribute names to AttributeValue objects, as specified by AttributesToGet. Item map[string]*AttributeValue `type:"map"` } // String returns the string representation func (s GetItemOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetItemOutput) GoString() string { return s.String() } // Represents the properties of a global secondary index. type GlobalSecondaryIndex struct { _ struct{} `type:"structure"` // The name of the global secondary index. The name must be unique among all // other indexes on this table. // // IndexName is a required field IndexName *string `min:"3" type:"string" required:"true"` // The complete key schema for a global secondary index, which consists of one // or more pairs of attribute names and key types: // // * HASH - partition key // // * RANGE - sort key // // The partition key of an item is also known as its hash attribute. The term // "hash attribute" derives from DynamoDB' usage of an internal hash function // to evenly distribute data items across partitions, based on their partition // key values. // // The sort key of an item is also known as its range attribute. The term "range // attribute" derives from the way DynamoDB stores items with the same partition // key physically close together, in sorted order by the sort key value. // // KeySchema is a required field KeySchema []*KeySchemaElement `min:"1" type:"list" required:"true"` // Represents attributes that are copied (projected) from the table into an // index. These are in addition to the primary key attributes and index key // attributes, which are automatically projected. // // Projection is a required field Projection *Projection `type:"structure" required:"true"` // Represents the provisioned throughput settings for a specified table or index. // The settings can be modified using the UpdateTable operation. // // For current minimum and maximum provisioned throughput values, see Limits // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html) // in the Amazon DynamoDB Developer Guide. // // ProvisionedThroughput is a required field ProvisionedThroughput *ProvisionedThroughput `type:"structure" required:"true"` } // String returns the string representation func (s GlobalSecondaryIndex) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GlobalSecondaryIndex) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GlobalSecondaryIndex) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GlobalSecondaryIndex"} if s.IndexName == nil { invalidParams.Add(request.NewErrParamRequired("IndexName")) } if s.IndexName != nil && len(*s.IndexName) < 3 { invalidParams.Add(request.NewErrParamMinLen("IndexName", 3)) } if s.KeySchema == nil { invalidParams.Add(request.NewErrParamRequired("KeySchema")) } if s.KeySchema != nil && len(s.KeySchema) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeySchema", 1)) } if s.Projection == nil { invalidParams.Add(request.NewErrParamRequired("Projection")) } if s.ProvisionedThroughput == nil { invalidParams.Add(request.NewErrParamRequired("ProvisionedThroughput")) } if s.KeySchema != nil { for i, v := range s.KeySchema { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "KeySchema", i), err.(request.ErrInvalidParams)) } } } if s.Projection != nil { if err := s.Projection.Validate(); err != nil { invalidParams.AddNested("Projection", err.(request.ErrInvalidParams)) } } if s.ProvisionedThroughput != nil { if err := s.ProvisionedThroughput.Validate(); err != nil { invalidParams.AddNested("ProvisionedThroughput", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the properties of a global secondary index. type GlobalSecondaryIndexDescription struct { _ struct{} `type:"structure"` // Indicates whether the index is currently backfilling. Backfilling is the // process of reading items from the table and determining whether they can // be added to the index. (Not all items will qualify: For example, a partition // key cannot have any duplicate values.) If an item can be added to the index, // DynamoDB will do so. After all items have been processed, the backfilling // operation is complete and Backfilling is false. // // For indexes that were created during a CreateTable operation, the Backfilling // attribute does not appear in the DescribeTable output. Backfilling *bool `type:"boolean"` // The Amazon Resource Name (ARN) that uniquely identifies the index. IndexArn *string `type:"string"` // The name of the global secondary index. IndexName *string `min:"3" type:"string"` // The total size of the specified index, in bytes. DynamoDB updates this value // approximately every six hours. Recent changes might not be reflected in this // value. IndexSizeBytes *int64 `type:"long"` // The current state of the global secondary index: // // * CREATING - The index is being created. // // * UPDATING - The index is being updated. // // * DELETING - The index is being deleted. // // * ACTIVE - The index is ready for use. IndexStatus *string `type:"string" enum:"IndexStatus"` // The number of items in the specified index. DynamoDB updates this value approximately // every six hours. Recent changes might not be reflected in this value. ItemCount *int64 `type:"long"` // The complete key schema for a global secondary index, which consists of one // or more pairs of attribute names and key types: // // * HASH - partition key // // * RANGE - sort key // // The partition key of an item is also known as its hash attribute. The term // "hash attribute" derives from DynamoDB' usage of an internal hash function // to evenly distribute data items across partitions, based on their partition // key values. // // The sort key of an item is also known as its range attribute. The term "range // attribute" derives from the way DynamoDB stores items with the same partition // key physically close together, in sorted order by the sort key value. KeySchema []*KeySchemaElement `min:"1" type:"list"` // Represents attributes that are copied (projected) from the table into an // index. These are in addition to the primary key attributes and index key // attributes, which are automatically projected. Projection *Projection `type:"structure"` // Represents the provisioned throughput settings for the table, consisting // of read and write capacity units, along with data about increases and decreases. ProvisionedThroughput *ProvisionedThroughputDescription `type:"structure"` } // String returns the string representation func (s GlobalSecondaryIndexDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GlobalSecondaryIndexDescription) GoString() string { return s.String() } // Represents one of the following: // // * A new global secondary index to be added to an existing table. // // * New provisioned throughput parameters for an existing global secondary // index. // // * An existing global secondary index to be removed from an existing table. type GlobalSecondaryIndexUpdate struct { _ struct{} `type:"structure"` // The parameters required for creating a global secondary index on an existing // table: // // * IndexName // // * KeySchema // // * AttributeDefinitions // // * Projection // // * ProvisionedThroughput Create *CreateGlobalSecondaryIndexAction `type:"structure"` // The name of an existing global secondary index to be removed. Delete *DeleteGlobalSecondaryIndexAction `type:"structure"` // The name of an existing global secondary index, along with new provisioned // throughput settings to be applied to that index. Update *UpdateGlobalSecondaryIndexAction `type:"structure"` } // String returns the string representation func (s GlobalSecondaryIndexUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GlobalSecondaryIndexUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GlobalSecondaryIndexUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GlobalSecondaryIndexUpdate"} if s.Create != nil { if err := s.Create.Validate(); err != nil { invalidParams.AddNested("Create", err.(request.ErrInvalidParams)) } } if s.Delete != nil { if err := s.Delete.Validate(); err != nil { invalidParams.AddNested("Delete", err.(request.ErrInvalidParams)) } } if s.Update != nil { if err := s.Update.Validate(); err != nil { invalidParams.AddNested("Update", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Information about item collections, if any, that were affected by the operation. // ItemCollectionMetrics is only returned if the request asked for it. If the // table does not have any local secondary indexes, this information is not // returned in the response. type ItemCollectionMetrics struct { _ struct{} `type:"structure"` // The partition key value of the item collection. This value is the same as // the partition key value of the item. ItemCollectionKey map[string]*AttributeValue `type:"map"` // An estimate of item collection size, in gigabytes. This value is a two-element // array containing a lower bound and an upper bound for the estimate. The estimate // includes the size of all the items in the table, plus the size of all attributes // projected into all of the local secondary indexes on that table. Use this // estimate to measure whether a local secondary index is approaching its size // limit. // // The estimate is subject to change over time; therefore, do not rely on the // precision or accuracy of the estimate. SizeEstimateRangeGB []*float64 `type:"list"` } // String returns the string representation func (s ItemCollectionMetrics) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ItemCollectionMetrics) GoString() string { return s.String() } // Represents a single element of a key schema. A key schema specifies the attributes // that make up the primary key of a table, or the key attributes of an index. // // A KeySchemaElement represents exactly one attribute of the primary key. For // example, a simple primary key would be represented by one KeySchemaElement // (for the partition key). A composite primary key would require one KeySchemaElement // for the partition key, and another KeySchemaElement for the sort key. // // A KeySchemaElement must be a scalar, top-level attribute (not a nested attribute). // The data type must be one of String, Number, or Binary. The attribute cannot // be nested within a List or a Map. type KeySchemaElement struct { _ struct{} `type:"structure"` // The name of a key attribute. // // AttributeName is a required field AttributeName *string `min:"1" type:"string" required:"true"` // The role that this key attribute will assume: // // * HASH - partition key // // * RANGE - sort key // // The partition key of an item is also known as its hash attribute. The term // "hash attribute" derives from DynamoDB' usage of an internal hash function // to evenly distribute data items across partitions, based on their partition // key values. // // The sort key of an item is also known as its range attribute. The term "range // attribute" derives from the way DynamoDB stores items with the same partition // key physically close together, in sorted order by the sort key value. // // KeyType is a required field KeyType *string `type:"string" required:"true" enum:"KeyType"` } // String returns the string representation func (s KeySchemaElement) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KeySchemaElement) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *KeySchemaElement) Validate() error { invalidParams := request.ErrInvalidParams{Context: "KeySchemaElement"} if s.AttributeName == nil { invalidParams.Add(request.NewErrParamRequired("AttributeName")) } if s.AttributeName != nil && len(*s.AttributeName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AttributeName", 1)) } if s.KeyType == nil { invalidParams.Add(request.NewErrParamRequired("KeyType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a set of primary keys and, for each key, the attributes to retrieve // from the table. // // For each primary key, you must provide all of the key attributes. For example, // with a simple primary key, you only need to provide the partition key. For // a composite primary key, you must provide both the partition key and the // sort key. type KeysAndAttributes struct { _ struct{} `type:"structure"` // One or more attributes to retrieve from the table or index. If no attribute // names are specified then all attributes will be returned. If any of the specified // attributes are not found, they will not appear in the result. AttributesToGet []*string `min:"1" type:"list"` // The consistency of a read operation. If set to true, then a strongly consistent // read is used; otherwise, an eventually consistent read is used. ConsistentRead *bool `type:"boolean"` // One or more substitution tokens for attribute names in an expression. The // following are some use cases for using ExpressionAttributeNames: // // * To access an attribute whose name conflicts with a DynamoDB reserved // word. // // * To create a placeholder for repeating occurrences of an attribute name // in an expression. // // * To prevent special characters in an attribute name from being misinterpreted // in an expression. // // Use the # character in an expression to dereference an attribute name. For // example, consider the following attribute name: // // * Percentile // // The name of this attribute conflicts with a reserved word, so it cannot be // used directly in an expression. (For the complete list of reserved words, // see Reserved Words (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ReservedWords.html) // in the Amazon DynamoDB Developer Guide). To work around this, you could specify // the following for ExpressionAttributeNames: // // * {"#P":"Percentile"} // // You could then use this substitution in an expression, as in this example: // // * #P = :val // // Tokens that begin with the : character are expression attribute values, which // are placeholders for the actual value at runtime. // // For more information on expression attribute names, see Accessing Item Attributes // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.AccessingItemAttributes.html) // in the Amazon DynamoDB Developer Guide. ExpressionAttributeNames map[string]*string `type:"map"` // The primary key attribute values that define the items and the attributes // associated with the items. // // Keys is a required field Keys []map[string]*AttributeValue `min:"1" type:"list" required:"true"` // A string that identifies one or more attributes to retrieve from the table. // These attributes can include scalars, sets, or elements of a JSON document. // The attributes in the ProjectionExpression must be separated by commas. // // If no attribute names are specified, then all attributes will be returned. // If any of the requested attributes are not found, they will not appear in // the result. // // For more information, see Accessing Item Attributes (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.AccessingItemAttributes.html) // in the Amazon DynamoDB Developer Guide. // // ProjectionExpression replaces the legacy AttributesToGet parameter. ProjectionExpression *string `type:"string"` } // String returns the string representation func (s KeysAndAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KeysAndAttributes) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *KeysAndAttributes) Validate() error { invalidParams := request.ErrInvalidParams{Context: "KeysAndAttributes"} if s.AttributesToGet != nil && len(s.AttributesToGet) < 1 { invalidParams.Add(request.NewErrParamMinLen("AttributesToGet", 1)) } if s.Keys == nil { invalidParams.Add(request.NewErrParamRequired("Keys")) } if s.Keys != nil && len(s.Keys) < 1 { invalidParams.Add(request.NewErrParamMinLen("Keys", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the input of a ListTables operation. type ListTablesInput struct { _ struct{} `type:"structure"` // The first table name that this operation will evaluate. Use the value that // was returned for LastEvaluatedTableName in a previous operation, so that // you can obtain the next page of results. ExclusiveStartTableName *string `min:"3" type:"string"` // A maximum number of table names to return. If this parameter is not specified, // the limit is 100. Limit *int64 `min:"1" type:"integer"` } // String returns the string representation func (s ListTablesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTablesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTablesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTablesInput"} if s.ExclusiveStartTableName != nil && len(*s.ExclusiveStartTableName) < 3 { invalidParams.Add(request.NewErrParamMinLen("ExclusiveStartTableName", 3)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a ListTables operation. type ListTablesOutput struct { _ struct{} `type:"structure"` // The name of the last table in the current page of results. Use this value // as the ExclusiveStartTableName in a new request to obtain the next page of // results, until all the table names are returned. // // If you do not receive a LastEvaluatedTableName value in the response, this // means that there are no more table names to be retrieved. LastEvaluatedTableName *string `min:"3" type:"string"` // The names of the tables associated with the current account at the current // endpoint. The maximum size of this array is 100. // // If LastEvaluatedTableName also appears in the output, you can use this value // as the ExclusiveStartTableName parameter in a subsequent ListTables request // and obtain the next page of results. TableNames []*string `type:"list"` } // String returns the string representation func (s ListTablesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTablesOutput) GoString() string { return s.String() } // Represents the properties of a local secondary index. type LocalSecondaryIndex struct { _ struct{} `type:"structure"` // The name of the local secondary index. The name must be unique among all // other indexes on this table. // // IndexName is a required field IndexName *string `min:"3" type:"string" required:"true"` // The complete key schema for the local secondary index, consisting of one // or more pairs of attribute names and key types: // // * HASH - partition key // // * RANGE - sort key // // The partition key of an item is also known as its hash attribute. The term // "hash attribute" derives from DynamoDB' usage of an internal hash function // to evenly distribute data items across partitions, based on their partition // key values. // // The sort key of an item is also known as its range attribute. The term "range // attribute" derives from the way DynamoDB stores items with the same partition // key physically close together, in sorted order by the sort key value. // // KeySchema is a required field KeySchema []*KeySchemaElement `min:"1" type:"list" required:"true"` // Represents attributes that are copied (projected) from the table into an // index. These are in addition to the primary key attributes and index key // attributes, which are automatically projected. // // Projection is a required field Projection *Projection `type:"structure" required:"true"` } // String returns the string representation func (s LocalSecondaryIndex) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LocalSecondaryIndex) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LocalSecondaryIndex) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LocalSecondaryIndex"} if s.IndexName == nil { invalidParams.Add(request.NewErrParamRequired("IndexName")) } if s.IndexName != nil && len(*s.IndexName) < 3 { invalidParams.Add(request.NewErrParamMinLen("IndexName", 3)) } if s.KeySchema == nil { invalidParams.Add(request.NewErrParamRequired("KeySchema")) } if s.KeySchema != nil && len(s.KeySchema) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeySchema", 1)) } if s.Projection == nil { invalidParams.Add(request.NewErrParamRequired("Projection")) } if s.KeySchema != nil { for i, v := range s.KeySchema { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "KeySchema", i), err.(request.ErrInvalidParams)) } } } if s.Projection != nil { if err := s.Projection.Validate(); err != nil { invalidParams.AddNested("Projection", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the properties of a local secondary index. type LocalSecondaryIndexDescription struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) that uniquely identifies the index. IndexArn *string `type:"string"` // Represents the name of the local secondary index. IndexName *string `min:"3" type:"string"` // The total size of the specified index, in bytes. DynamoDB updates this value // approximately every six hours. Recent changes might not be reflected in this // value. IndexSizeBytes *int64 `type:"long"` // The number of items in the specified index. DynamoDB updates this value approximately // every six hours. Recent changes might not be reflected in this value. ItemCount *int64 `type:"long"` // The complete key schema for the local secondary index, consisting of one // or more pairs of attribute names and key types: // // * HASH - partition key // // * RANGE - sort key // // The partition key of an item is also known as its hash attribute. The term // "hash attribute" derives from DynamoDB' usage of an internal hash function // to evenly distribute data items across partitions, based on their partition // key values. // // The sort key of an item is also known as its range attribute. The term "range // attribute" derives from the way DynamoDB stores items with the same partition // key physically close together, in sorted order by the sort key value. KeySchema []*KeySchemaElement `min:"1" type:"list"` // Represents attributes that are copied (projected) from the table into an // index. These are in addition to the primary key attributes and index key // attributes, which are automatically projected. Projection *Projection `type:"structure"` } // String returns the string representation func (s LocalSecondaryIndexDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LocalSecondaryIndexDescription) GoString() string { return s.String() } // Represents attributes that are copied (projected) from the table into an // index. These are in addition to the primary key attributes and index key // attributes, which are automatically projected. type Projection struct { _ struct{} `type:"structure"` // Represents the non-key attribute names which will be projected into the index. // // For local secondary indexes, the total count of NonKeyAttributes summed across // all of the local secondary indexes, must not exceed 20. If you project the // same attribute into two different indexes, this counts as two distinct attributes // when determining the total. NonKeyAttributes []*string `min:"1" type:"list"` // The set of attributes that are projected into the index: // // * KEYS_ONLY - Only the index and primary keys are projected into the index. // // * INCLUDE - Only the specified table attributes are projected into the // index. The list of projected attributes are in NonKeyAttributes. // // * ALL - All of the table attributes are projected into the index. ProjectionType *string `type:"string" enum:"ProjectionType"` } // String returns the string representation func (s Projection) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Projection) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Projection) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Projection"} if s.NonKeyAttributes != nil && len(s.NonKeyAttributes) < 1 { invalidParams.Add(request.NewErrParamMinLen("NonKeyAttributes", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the provisioned throughput settings for a specified table or index. // The settings can be modified using the UpdateTable operation. // // For current minimum and maximum provisioned throughput values, see Limits // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html) // in the Amazon DynamoDB Developer Guide. type ProvisionedThroughput struct { _ struct{} `type:"structure"` // The maximum number of strongly consistent reads consumed per second before // DynamoDB returns a ThrottlingException. For more information, see Specifying // Read and Write Requirements (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithTables.html#ProvisionedThroughput) // in the Amazon DynamoDB Developer Guide. // // ReadCapacityUnits is a required field ReadCapacityUnits *int64 `min:"1" type:"long" required:"true"` // The maximum number of writes consumed per second before DynamoDB returns // a ThrottlingException. For more information, see Specifying Read and Write // Requirements (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithTables.html#ProvisionedThroughput) // in the Amazon DynamoDB Developer Guide. // // WriteCapacityUnits is a required field WriteCapacityUnits *int64 `min:"1" type:"long" required:"true"` } // String returns the string representation func (s ProvisionedThroughput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ProvisionedThroughput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ProvisionedThroughput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ProvisionedThroughput"} if s.ReadCapacityUnits == nil { invalidParams.Add(request.NewErrParamRequired("ReadCapacityUnits")) } if s.ReadCapacityUnits != nil && *s.ReadCapacityUnits < 1 { invalidParams.Add(request.NewErrParamMinValue("ReadCapacityUnits", 1)) } if s.WriteCapacityUnits == nil { invalidParams.Add(request.NewErrParamRequired("WriteCapacityUnits")) } if s.WriteCapacityUnits != nil && *s.WriteCapacityUnits < 1 { invalidParams.Add(request.NewErrParamMinValue("WriteCapacityUnits", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the provisioned throughput settings for the table, consisting // of read and write capacity units, along with data about increases and decreases. type ProvisionedThroughputDescription struct { _ struct{} `type:"structure"` // The date and time of the last provisioned throughput decrease for this table. LastDecreaseDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The date and time of the last provisioned throughput increase for this table. LastIncreaseDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The number of provisioned throughput decreases for this table during this // UTC calendar day. For current maximums on provisioned throughput decreases, // see Limits (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html) // in the Amazon DynamoDB Developer Guide. NumberOfDecreasesToday *int64 `min:"1" type:"long"` // The maximum number of strongly consistent reads consumed per second before // DynamoDB returns a ThrottlingException. Eventually consistent reads require // less effort than strongly consistent reads, so a setting of 50 ReadCapacityUnits // per second provides 100 eventually consistent ReadCapacityUnits per second. ReadCapacityUnits *int64 `min:"1" type:"long"` // The maximum number of writes consumed per second before DynamoDB returns // a ThrottlingException. WriteCapacityUnits *int64 `min:"1" type:"long"` } // String returns the string representation func (s ProvisionedThroughputDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ProvisionedThroughputDescription) GoString() string { return s.String() } // Represents the input of a PutItem operation. type PutItemInput struct { _ struct{} `type:"structure"` // A condition that must be satisfied in order for a conditional PutItem operation // to succeed. // // An expression can contain any of the following: // // * Functions: attribute_exists | attribute_not_exists | attribute_type // | contains | begins_with | size // // These function names are case-sensitive. // // * Comparison operators: = | <> | < | > | <= // | >= | BETWEEN | IN // // * Logical operators: AND | OR | NOT // // For more information on condition expressions, see Specifying Conditions // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.SpecifyingConditions.html) // in the Amazon DynamoDB Developer Guide. // // ConditionExpression replaces the legacy ConditionalOperator and Expected // parameters. ConditionExpression *string `type:"string"` // This is a legacy parameter, for backward compatibility. New applications // should use ConditionExpression instead. Do not combine legacy parameters // and expression parameters in a single API call; otherwise, DynamoDB will // return a ValidationException exception. // // A logical operator to apply to the conditions in the Expected map: // // * AND - If all of the conditions evaluate to true, then the entire map // evaluates to true. // // * OR - If at least one of the conditions evaluate to true, then the entire // map evaluates to true. // // If you omit ConditionalOperator, then AND is the default. // // The operation will succeed only if the entire map evaluates to true. // // This parameter does not support attributes of type List or Map. ConditionalOperator *string `type:"string" enum:"ConditionalOperator"` // This is a legacy parameter, for backward compatibility. New applications // should use ConditionExpression instead. Do not combine legacy parameters // and expression parameters in a single API call; otherwise, DynamoDB will // return a ValidationException exception. // // A map of attribute/condition pairs. Expected provides a conditional block // for the PutItem operation. // // This parameter does not support attributes of type List or Map. // // Each element of Expected consists of an attribute name, a comparison operator, // and one or more values. DynamoDB compares the attribute with the value(s) // you supplied, using the comparison operator. For each Expected element, the // result of the evaluation is either true or false. // // If you specify more than one element in the Expected map, then by default // all of the conditions must evaluate to true. In other words, the conditions // are ANDed together. (You can use the ConditionalOperator parameter to OR // the conditions instead. If you do this, then at least one of the conditions // must evaluate to true, rather than all of them.) // // If the Expected map evaluates to true, then the conditional operation succeeds; // otherwise, it fails. // // Expected contains the following: // // * AttributeValueList - One or more values to evaluate against the supplied // attribute. The number of values in the list depends on the ComparisonOperator // being used. // // For type Number, value comparisons are numeric. // // String value comparisons for greater than, equals, or less than are based // on ASCII character code values. For example, a is greater than A, and // a is greater than B. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters // (http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters). // // For type Binary, DynamoDB treats each byte of the binary data as unsigned // when it compares binary values. // // * ComparisonOperator - A comparator for evaluating attributes in the AttributeValueList. // When performing the comparison, DynamoDB uses strongly consistent reads. // // The following comparison operators are available: // // EQ | NE | LE | LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | // BEGINS_WITH | IN | BETWEEN // // The following are descriptions of each comparison operator. // // EQ : Equal. EQ is supported for all datatypes, including lists and maps. // // AttributeValueList can contain only one AttributeValue element of type String, // Number, Binary, String Set, Number Set, or Binary Set. If an item contains // an AttributeValue element of a different type than the one provided in // the request, the value does not match. For example, {"S":"6"} does not // equal {"N":"6"}. Also, {"N":"6"} does not equal {"NS":["6", "2", "1"]}. // // NE : Not equal. NE is supported for all datatypes, including lists and maps. // // AttributeValueList can contain only one AttributeValue of type String, Number, // Binary, String Set, Number Set, or Binary Set. If an item contains an // AttributeValue of a different type than the one provided in the request, // the value does not match. For example, {"S":"6"} does not equal {"N":"6"}. // Also, {"N":"6"} does not equal {"NS":["6", "2", "1"]}. // // * LE : Less than or equal. // // AttributeValueList can contain only one AttributeValue element of type String, // Number, or Binary (not a set type). If an item contains an AttributeValue // element of a different type than the one provided in the request, the // value does not match. For example, {"S":"6"} does not equal {"N":"6"}. // Also, {"N":"6"} does not compare to {"NS":["6", "2", "1"]}. // // * LT : Less than. // // * AttributeValueList can contain only one AttributeValue of type String, // Number, or Binary (not a set type). If an item contains an AttributeValue // element of a different type than the one provided in the request, the // value does not match. For example, {"S":"6"} does not equal {"N":"6"}. // Also, {"N":"6"} does not compare to {"NS":["6", "2", "1"]}. // // * GE : Greater than or equal. // // AttributeValueList can contain only one AttributeValue element of type String, // Number, or Binary (not a set type). If an item contains an AttributeValue // element of a different type than the one provided in the request, the value // does not match. For example, {"S":"6"} does not equal {"N":"6"}. Also, {"N":"6"} // does not compare to {"NS":["6", "2", "1"]}. // // GT: Greater than. // // AttributeValueListcan contain only one AttributeValueelement of type String, Number, or Binary (not a set type). If an item contains // an AttributeValueelement of a different type than the one provided in the request, the value // does not match. For example, {"S":"6"}does not equal {"N":"6"}. Also, {"N":"6"}does not compare to {"NS":["6", "2", "1"]}. // // NOT_NULL // : The attribute exists. NOT_NULL // is supported for all datatypes, including lists and maps. // // This operator tests for the existence of an attribute, not its data type. // If the data type of attribute "a" is null, and you evaluate it using NOT_NULL, the result is a Boolean true. This result is because the attribute "a" exists; its data type is not relevant to the NOT_NULLcomparison operator. // // NULL // : The attribute does not exist. NULL // is supported for all datatypes, including lists and maps. // // This operator tests for the nonexistence of an attribute, not its data type. // If the data type of attribute "a" is null, and you evaluate it using NULL, the result is a Boolean false. This is because the attribute "a" exists; its data type is not relevant to the NULL Expected map[string]*ExpectedAttributeValue `type:"map"` // One or more substitution tokens for attribute names in an expression. The // following are some use cases for using ExpressionAttributeNames: // // * To access an attribute whose name conflicts with a DynamoDB reserved // word. // // * To create a placeholder for repeating occurrences of an attribute name // in an expression. // // * To prevent special characters in an attribute name from being misinterpreted // in an expression. // // Use the # character in an expression to dereference an attribute name. For // example, consider the following attribute name: // // * Percentile // // The name of this attribute conflicts with a reserved word, so it cannot be // used directly in an expression. (For the complete list of reserved words, // see Reserved Words (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ReservedWords.html) // in the Amazon DynamoDB Developer Guide). To work around this, you could specify // the following for ExpressionAttributeNames: // // * {"#P":"Percentile"} // // You could then use this substitution in an expression, as in this example: // // * #P = :val // // Tokens that begin with the : character are expression attribute values, which // are placeholders for the actual value at runtime. // // For more information on expression attribute names, see Accessing Item Attributes // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.AccessingItemAttributes.html) // in the Amazon DynamoDB Developer Guide. ExpressionAttributeNames map[string]*string `type:"map"` // One or more values that can be substituted in an expression. // // Use the : (colon) character in an expression to dereference an attribute // value. For example, suppose that you wanted to check whether the value of // the ProductStatus attribute was one of the following: // // Available | Backordered | Discontinued // // You would first need to specify ExpressionAttributeValues as follows: // // { ":avail":{"S":"Available"}, ":back":{"S":"Backordered"}, ":disc":{"S":"Discontinued"} // } // // You could then use these values in an expression, such as this: // // ProductStatus IN (:avail, :back, :disc) // // For more information on expression attribute values, see Specifying Conditions // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.SpecifyingConditions.html) // in the Amazon DynamoDB Developer Guide. ExpressionAttributeValues map[string]*AttributeValue `type:"map"` // A map of attribute name/value pairs, one for each attribute. Only the primary // key attributes are required; you can optionally provide other attribute name-value // pairs for the item. // // You must provide all of the attributes for the primary key. For example, // with a simple primary key, you only need to provide a value for the partition // key. For a composite primary key, you must provide both values for both the // partition key and the sort key. // // If you specify any attributes that are part of an index key, then the data // types for those attributes must match those of the schema in the table's // attribute definition. // // For more information about primary keys, see Primary Key (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DataModel.html#DataModelPrimaryKey) // in the Amazon DynamoDB Developer Guide. // // Each element in the Item map is an AttributeValue object. // // Item is a required field Item map[string]*AttributeValue `type:"map" required:"true"` // Determines the level of detail about provisioned throughput consumption that // is returned in the response: // // * INDEXES - The response includes the aggregate ConsumedCapacity for the // operation, together with ConsumedCapacity for each table and secondary // index that was accessed. // // Note that some operations, such as GetItem and BatchGetItem, do not access // any indexes at all. In these cases, specifying INDEXES will only return // ConsumedCapacity information for table(s). // // * TOTAL - The response includes only the aggregate ConsumedCapacity for // the operation. // // * NONE - No ConsumedCapacity details are included in the response. ReturnConsumedCapacity *string `type:"string" enum:"ReturnConsumedCapacity"` // Determines whether item collection metrics are returned. If set to SIZE, // the response includes statistics about item collections, if any, that were // modified during the operation are returned in the response. If set to NONE // (the default), no statistics are returned. ReturnItemCollectionMetrics *string `type:"string" enum:"ReturnItemCollectionMetrics"` // Use ReturnValues if you want to get the item attributes as they appeared // before they were updated with the PutItem request. For PutItem, the valid // values are: // // * NONE - If ReturnValues is not specified, or if its value is NONE, then // nothing is returned. (This setting is the default for ReturnValues.) // // * ALL_OLD - If PutItem overwrote an attribute name-value pair, then the // content of the old item is returned. // // The ReturnValues parameter is used by several DynamoDB operations; however, // PutItem does not recognize any values other than NONE or ALL_OLD. ReturnValues *string `type:"string" enum:"ReturnValue"` // The name of the table to contain the item. // // TableName is a required field TableName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s PutItemInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutItemInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutItemInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutItemInput"} if s.Item == nil { invalidParams.Add(request.NewErrParamRequired("Item")) } if s.TableName == nil { invalidParams.Add(request.NewErrParamRequired("TableName")) } if s.TableName != nil && len(*s.TableName) < 3 { invalidParams.Add(request.NewErrParamMinLen("TableName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a PutItem operation. type PutItemOutput struct { _ struct{} `type:"structure"` // The attribute values as they appeared before the PutItem operation, but only // if ReturnValues is specified as ALL_OLD in the request. Each element consists // of an attribute name and an attribute value. Attributes map[string]*AttributeValue `type:"map"` // The capacity units consumed by an operation. The data returned includes the // total provisioned throughput consumed, along with statistics for the table // and any indexes involved in the operation. ConsumedCapacity is only returned // if the request asked for it. For more information, see Provisioned Throughput // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughputIntro.html) // in the Amazon DynamoDB Developer Guide. ConsumedCapacity *ConsumedCapacity `type:"structure"` // Information about item collections, if any, that were affected by the operation. // ItemCollectionMetrics is only returned if the request asked for it. If the // table does not have any local secondary indexes, this information is not // returned in the response. // // Each ItemCollectionMetrics element consists of: // // * ItemCollectionKey - The partition key value of the item collection. // This is the same as the partition key value of the item itself. // // * SizeEstimateRange - An estimate of item collection size, in gigabytes. // This value is a two-element array containing a lower bound and an upper // bound for the estimate. The estimate includes the size of all the items // in the table, plus the size of all attributes projected into all of the // local secondary indexes on that table. Use this estimate to measure whether // a local secondary index is approaching its size limit. // // The estimate is subject to change over time; therefore, do not rely on the // precision or accuracy of the estimate. ItemCollectionMetrics *ItemCollectionMetrics `type:"structure"` } // String returns the string representation func (s PutItemOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutItemOutput) GoString() string { return s.String() } // Represents a request to perform a PutItem operation on an item. type PutRequest struct { _ struct{} `type:"structure"` // A map of attribute name to attribute values, representing the primary key // of an item to be processed by PutItem. All of the table's primary key attributes // must be specified, and their data types must match those of the table's key // schema. If any attributes are present in the item which are part of an index // key schema for the table, their types must match the index key schema. // // Item is a required field Item map[string]*AttributeValue `type:"map" required:"true"` } // String returns the string representation func (s PutRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRequest) GoString() string { return s.String() } // Represents the input of a Query operation. type QueryInput struct { _ struct{} `type:"structure"` // This is a legacy parameter, for backward compatibility. New applications // should use ProjectionExpression instead. Do not combine legacy parameters // and expression parameters in a single API call; otherwise, DynamoDB will // return a ValidationException exception. // // This parameter allows you to retrieve attributes of type List or Map; however, // it cannot retrieve individual elements within a List or a Map. // // The names of one or more attributes to retrieve. If no attribute names are // provided, then all attributes will be returned. If any of the requested attributes // are not found, they will not appear in the result. // // Note that AttributesToGet has no effect on provisioned throughput consumption. // DynamoDB determines capacity units consumed based on item size, not on the // amount of data that is returned to an application. // // You cannot use both AttributesToGet and Select together in a Query request, // unless the value for Select is SPECIFIC_ATTRIBUTES. (This usage is equivalent // to specifying AttributesToGet without any value for Select.) // // If you query a local secondary index and request only attributes that are // projected into that index, the operation will read only the index and not // the table. If any of the requested attributes are not projected into the // local secondary index, DynamoDB will fetch each of these attributes from // the parent table. This extra fetching incurs additional throughput cost and // latency. // // If you query a global secondary index, you can only request attributes that // are projected into the index. Global secondary index queries cannot fetch // attributes from the parent table. AttributesToGet []*string `min:"1" type:"list"` // This is a legacy parameter, for backward compatibility. New applications // should use FilterExpression instead. Do not combine legacy parameters and // expression parameters in a single API call; otherwise, DynamoDB will return // a ValidationException exception. // // A logical operator to apply to the conditions in a QueryFilter map: // // * AND - If all of the conditions evaluate to true, then the entire map // evaluates to true. // // * OR - If at least one of the conditions evaluate to true, then the entire // map evaluates to true. // // If you omit ConditionalOperator, then AND is the default. // // The operation will succeed only if the entire map evaluates to true. // // This parameter does not support attributes of type List or Map. ConditionalOperator *string `type:"string" enum:"ConditionalOperator"` // Determines the read consistency model: If set to true, then the operation // uses strongly consistent reads; otherwise, the operation uses eventually // consistent reads. // // Strongly consistent reads are not supported on global secondary indexes. // If you query a global secondary index with ConsistentRead set to true, you // will receive a ValidationException. ConsistentRead *bool `type:"boolean"` // The primary key of the first item that this operation will evaluate. Use // the value that was returned for LastEvaluatedKey in the previous operation. // // The data type for ExclusiveStartKey must be String, Number or Binary. No // set data types are allowed. ExclusiveStartKey map[string]*AttributeValue `type:"map"` // One or more substitution tokens for attribute names in an expression. The // following are some use cases for using ExpressionAttributeNames: // // * To access an attribute whose name conflicts with a DynamoDB reserved // word. // // * To create a placeholder for repeating occurrences of an attribute name // in an expression. // // * To prevent special characters in an attribute name from being misinterpreted // in an expression. // // Use the # character in an expression to dereference an attribute name. For // example, consider the following attribute name: // // * Percentile // // The name of this attribute conflicts with a reserved word, so it cannot be // used directly in an expression. (For the complete list of reserved words, // see Reserved Words (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ReservedWords.html) // in the Amazon DynamoDB Developer Guide). To work around this, you could specify // the following for ExpressionAttributeNames: // // * {"#P":"Percentile"} // // You could then use this substitution in an expression, as in this example: // // * #P = :val // // Tokens that begin with the : character are expression attribute values, which // are placeholders for the actual value at runtime. // // For more information on expression attribute names, see Accessing Item Attributes // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.AccessingItemAttributes.html) // in the Amazon DynamoDB Developer Guide. ExpressionAttributeNames map[string]*string `type:"map"` // One or more values that can be substituted in an expression. // // Use the : (colon) character in an expression to dereference an attribute // value. For example, suppose that you wanted to check whether the value of // the ProductStatus attribute was one of the following: // // Available | Backordered | Discontinued // // You would first need to specify ExpressionAttributeValues as follows: // // { ":avail":{"S":"Available"}, ":back":{"S":"Backordered"}, ":disc":{"S":"Discontinued"} // } // // You could then use these values in an expression, such as this: // // ProductStatus IN (:avail, :back, :disc) // // For more information on expression attribute values, see Specifying Conditions // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.SpecifyingConditions.html) // in the Amazon DynamoDB Developer Guide. ExpressionAttributeValues map[string]*AttributeValue `type:"map"` // A string that contains conditions that DynamoDB applies after the Query operation, // but before the data is returned to you. Items that do not satisfy the FilterExpression // criteria are not returned. // // A FilterExpression is applied after the items have already been read; the // process of filtering does not consume any additional read capacity units. // // For more information, see Filter Expressions (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#FilteringResults) // in the Amazon DynamoDB Developer Guide. // // FilterExpression replaces the legacy QueryFilter and ConditionalOperator // parameters. FilterExpression *string `type:"string"` // The name of an index to query. This index can be any local secondary index // or global secondary index on the table. Note that if you use the IndexName // parameter, you must also provide TableName. IndexName *string `min:"3" type:"string"` // The condition that specifies the key value(s) for items to be retrieved by // the Query action. // // The condition must perform an equality test on a single partition key value. // The condition can also perform one of several comparison tests on a single // sort key value. Query can use KeyConditionExpression to retrieve one item // with a given partition key value and sort key value, or several items that // have the same partition key value but different sort key values. // // The partition key equality test is required, and must be specified in the // following format: // // partitionKeyName=:partitionkeyval // // If you also want to provide a condition for the sort key, it must be combined // using AND with the condition for the sort key. Following is an example, using // the = comparison operator for the sort key: // // partitionKeyName=:partitionkeyvalANDsortKeyName=:sortkeyval // // Valid comparisons for the sort key condition are as follows: // // * sortKeyName=:sortkeyval - true if the sort key value is equal to :sortkeyval. // // * sortKeyName<:sortkeyval - true if the sort key value is less than :sortkeyval. // // * sortKeyName<=:sortkeyval - true if the sort key value is less than or // equal to :sortkeyval. // // * sortKeyName>:sortkeyval - true if the sort key value is greater than // :sortkeyval. // // * sortKeyName>= :sortkeyval - true if the sort key value is greater than // or equal to :sortkeyval. // // * sortKeyNameBETWEEN:sortkeyval1AND:sortkeyval2 - true if the sort key // value is greater than or equal to :sortkeyval1, and less than or equal // to :sortkeyval2. // // * begins_with (sortKeyName, :sortkeyval) - true if the sort key value // begins with a particular operand. (You cannot use this function with a // sort key that is of type Number.) Note that the function name begins_with // is case-sensitive. // // Use the ExpressionAttributeValues parameter to replace tokens such as :partitionval // and :sortval with actual values at runtime. // // You can optionally use the ExpressionAttributeNames parameter to replace // the names of the partition key and sort key with placeholder tokens. This // option might be necessary if an attribute name conflicts with a DynamoDB // reserved word. For example, the following KeyConditionExpression parameter // causes an error because Size is a reserved word: // // * Size = :myval // // To work around this, define a placeholder (such a #S) to represent the attribute // name Size. KeyConditionExpression then is as follows: // // * #S = :myval // // For a list of reserved words, see Reserved Words (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ReservedWords.html) // in the Amazon DynamoDB Developer Guide. // // For more information on ExpressionAttributeNames and ExpressionAttributeValues, // see Using Placeholders for Attribute Names and Values (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ExpressionPlaceholders.html) // in the Amazon DynamoDB Developer Guide. // // KeyConditionExpression replaces the legacy KeyConditions parameter. KeyConditionExpression *string `type:"string"` // This is a legacy parameter, for backward compatibility. New applications // should use KeyConditionExpression instead. Do not combine legacy parameters // and expression parameters in a single API call; otherwise, DynamoDB will // return a ValidationException exception. // // The selection criteria for the query. For a query on a table, you can have // conditions only on the table primary key attributes. You must provide the // partition key name and value as an EQ condition. You can optionally provide // a second condition, referring to the sort key. // // If you don't provide a sort key condition, all of the items that match the // partition key will be retrieved. If a FilterExpression or QueryFilter is // present, it will be applied after the items are retrieved. // // For a query on an index, you can have conditions only on the index key attributes. // You must provide the index partition key name and value as an EQ condition. // You can optionally provide a second condition, referring to the index sort // key. // // Each KeyConditions element consists of an attribute name to compare, along // with the following: // // * AttributeValueList - One or more values to evaluate against the supplied // attribute. The number of values in the list depends on the ComparisonOperator // being used. // // For type Number, value comparisons are numeric. // // String value comparisons for greater than, equals, or less than are based // on ASCII character code values. For example, a is greater than A, and // a is greater than B. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters // (http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters). // // For Binary, DynamoDB treats each byte of the binary data as unsigned when // it compares binary values. // // * ComparisonOperator - A comparator for evaluating attributes, for example, // equals, greater than, less than, and so on. // // For KeyConditions, only the following comparison operators are supported: // // EQ | LE | LT | GE | GT | BEGINS_WITH | BETWEEN // // The following are descriptions of these comparison operators. // // EQ : Equal. // // AttributeValueList can contain only one AttributeValue of type String, Number, // or Binary (not a set type). If an item contains an AttributeValue element // of a different type than the one specified in the request, the value does // not match. For example, {"S":"6"} does not equal {"N":"6"}. Also, {"N":"6"} // does not equal {"NS":["6", "2", "1"]}. // // LE : Less than or equal. // // AttributeValueList can contain only one AttributeValue element of type String, // Number, or Binary (not a set type). If an item contains an AttributeValue // element of a different type than the one provided in the request, the // value does not match. For example, {"S":"6"} does not equal {"N":"6"}. // Also, {"N":"6"} does not compare to {"NS":["6", "2", "1"]}. // // * LT : Less than. // // AttributeValueList can contain only one AttributeValue of type String, Number, // or Binary (not a set type). If an item contains an AttributeValue element // of a different type than the one provided in the request, the value does // not match. For example, {"S":"6"} does not equal {"N":"6"}. Also, {"N":"6"} // does not compare to {"NS":["6", "2", "1"]}. // // * GE : Greater than or equal. // // * AttributeValueList can contain only one AttributeValue element of type // String, Number, or Binary (not a set type). If an item contains an AttributeValue // element of a different type than the one provided in the request, the // value does not match. For example, {"S":"6"} does not equal {"N":"6"}. // Also, {"N":"6"} does not compare to {"NS":["6", "2", "1"]}. // // * GT : Greater than. // // AttributeValueList can contain only one AttributeValue element of type String, // Number, or Binary (not a set type). If an item contains an AttributeValue // element of a different type than the one provided in the request, the value // does not match. For example, {"S":"6"} does not equal {"N":"6"}. Also, {"N":"6"} // does not compare to {"NS":["6", "2", "1"]}. // // BEGINS_WITH: Checks for a prefix. // // AttributeValueListcan contain only one AttributeValue KeyConditions map[string]*Condition `type:"map"` // The maximum number of items to evaluate (not necessarily the number of matching // items). If DynamoDB processes the number of items up to the limit while processing // the results, it stops the operation and returns the matching values up to // that point, and a key in LastEvaluatedKey to apply in a subsequent operation, // so that you can pick up where you left off. Also, if the processed data set // size exceeds 1 MB before DynamoDB reaches this limit, it stops the operation // and returns the matching values up to the limit, and a key in LastEvaluatedKey // to apply in a subsequent operation to continue the operation. For more information, // see Query and Scan (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html) // in the Amazon DynamoDB Developer Guide. Limit *int64 `min:"1" type:"integer"` // A string that identifies one or more attributes to retrieve from the table. // These attributes can include scalars, sets, or elements of a JSON document. // The attributes in the expression must be separated by commas. // // If no attribute names are specified, then all attributes will be returned. // If any of the requested attributes are not found, they will not appear in // the result. // // For more information, see Accessing Item Attributes (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.AccessingItemAttributes.html) // in the Amazon DynamoDB Developer Guide. // // ProjectionExpression replaces the legacy AttributesToGet parameter. ProjectionExpression *string `type:"string"` // This is a legacy parameter, for backward compatibility. New applications // should use FilterExpression instead. Do not combine legacy parameters and // expression parameters in a single API call; otherwise, DynamoDB will return // a ValidationException exception. // // A condition that evaluates the query results after the items are read and // returns only the desired values. // // This parameter does not support attributes of type List or Map. // // A QueryFilter is applied after the items have already been read; the process // of filtering does not consume any additional read capacity units. // // If you provide more than one condition in the QueryFilter map, then by default // all of the conditions must evaluate to true. In other words, the conditions // are ANDed together. (You can use the ConditionalOperator parameter to OR // the conditions instead. If you do this, then at least one of the conditions // must evaluate to true, rather than all of them.) // // Note that QueryFilter does not allow key attributes. You cannot define a // filter condition on a partition key or a sort key. // // Each QueryFilter element consists of an attribute name to compare, along // with the following: // // * AttributeValueList - One or more values to evaluate against the supplied // attribute. The number of values in the list depends on the operator specified // in ComparisonOperator. // // For type Number, value comparisons are numeric. // // String value comparisons for greater than, equals, or less than are based // on ASCII character code values. For example, a is greater than A, and // a is greater than B. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters // (http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters). // // For type Binary, DynamoDB treats each byte of the binary data as unsigned // when it compares binary values. // // For information on specifying data types in JSON, see JSON Data Format (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DataFormat.html) // in the Amazon DynamoDB Developer Guide. // // * ComparisonOperator - A comparator for evaluating attributes. For example, // equals, greater than, less than, etc. // // The following comparison operators are available: // // EQ | NE | LE | LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | // BEGINS_WITH | IN | BETWEEN // // For complete descriptions of all comparison operators, see the Condition // (http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Condition.html) // data type. QueryFilter map[string]*Condition `type:"map"` // Determines the level of detail about provisioned throughput consumption that // is returned in the response: // // * INDEXES - The response includes the aggregate ConsumedCapacity for the // operation, together with ConsumedCapacity for each table and secondary // index that was accessed. // // Note that some operations, such as GetItem and BatchGetItem, do not access // any indexes at all. In these cases, specifying INDEXES will only return // ConsumedCapacity information for table(s). // // * TOTAL - The response includes only the aggregate ConsumedCapacity for // the operation. // // * NONE - No ConsumedCapacity details are included in the response. ReturnConsumedCapacity *string `type:"string" enum:"ReturnConsumedCapacity"` // Specifies the order for index traversal: If true (default), the traversal // is performed in ascending order; if false, the traversal is performed in // descending order. // // Items with the same partition key value are stored in sorted order by sort // key. If the sort key data type is Number, the results are stored in numeric // order. For type String, the results are stored in order of ASCII character // code values. For type Binary, DynamoDB treats each byte of the binary data // as unsigned. // // If ScanIndexForward is true, DynamoDB returns the results in the order in // which they are stored (by sort key value). This is the default behavior. // If ScanIndexForward is false, DynamoDB reads the results in reverse order // by sort key value, and then returns the results to the client. ScanIndexForward *bool `type:"boolean"` // The attributes to be returned in the result. You can retrieve all item attributes, // specific item attributes, the count of matching items, or in the case of // an index, some or all of the attributes projected into the index. // // * ALL_ATTRIBUTES - Returns all of the item attributes from the specified // table or index. If you query a local secondary index, then for each matching // item in the index DynamoDB will fetch the entire item from the parent // table. If the index is configured to project all item attributes, then // all of the data can be obtained from the local secondary index, and no // fetching is required. // // * ALL_PROJECTED_ATTRIBUTES - Allowed only when querying an index. Retrieves // all attributes that have been projected into the index. If the index is // configured to project all attributes, this return value is equivalent // to specifying ALL_ATTRIBUTES. // // * COUNT - Returns the number of matching items, rather than the matching // items themselves. // // * SPECIFIC_ATTRIBUTES - Returns only the attributes listed in AttributesToGet. // This return value is equivalent to specifying AttributesToGet without // specifying any value for Select. // // If you query a local secondary index and request only attributes that are // projected into that index, the operation will read only the index and // not the table. If any of the requested attributes are not projected into // the local secondary index, DynamoDB will fetch each of these attributes // from the parent table. This extra fetching incurs additional throughput // cost and latency. // // If you query a global secondary index, you can only request attributes that // are projected into the index. Global secondary index queries cannot fetch // attributes from the parent table. // // If neither Select nor AttributesToGet are specified, DynamoDB defaults to // ALL_ATTRIBUTES when accessing a table, and ALL_PROJECTED_ATTRIBUTES when // accessing an index. You cannot use both Select and AttributesToGet together // in a single request, unless the value for Select is SPECIFIC_ATTRIBUTES. // (This usage is equivalent to specifying AttributesToGet without any value // for Select.) // // If you use the ProjectionExpression parameter, then the value for Select // can only be SPECIFIC_ATTRIBUTES. Any other value for Select will return an // error. Select *string `type:"string" enum:"Select"` // The name of the table containing the requested items. // // TableName is a required field TableName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s QueryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s QueryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *QueryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "QueryInput"} if s.AttributesToGet != nil && len(s.AttributesToGet) < 1 { invalidParams.Add(request.NewErrParamMinLen("AttributesToGet", 1)) } if s.IndexName != nil && len(*s.IndexName) < 3 { invalidParams.Add(request.NewErrParamMinLen("IndexName", 3)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.TableName == nil { invalidParams.Add(request.NewErrParamRequired("TableName")) } if s.TableName != nil && len(*s.TableName) < 3 { invalidParams.Add(request.NewErrParamMinLen("TableName", 3)) } if s.KeyConditions != nil { for i, v := range s.KeyConditions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "KeyConditions", i), err.(request.ErrInvalidParams)) } } } if s.QueryFilter != nil { for i, v := range s.QueryFilter { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "QueryFilter", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a Query operation. type QueryOutput struct { _ struct{} `type:"structure"` // The capacity units consumed by an operation. The data returned includes the // total provisioned throughput consumed, along with statistics for the table // and any indexes involved in the operation. ConsumedCapacity is only returned // if the request asked for it. For more information, see Provisioned Throughput // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughputIntro.html) // in the Amazon DynamoDB Developer Guide. ConsumedCapacity *ConsumedCapacity `type:"structure"` // The number of items in the response. // // If you used a QueryFilter in the request, then Count is the number of items // returned after the filter was applied, and ScannedCount is the number of // matching items before the filter was applied. // // If you did not use a filter in the request, then Count and ScannedCount are // the same. Count *int64 `type:"integer"` // An array of item attributes that match the query criteria. Each element in // this array consists of an attribute name and the value for that attribute. Items []map[string]*AttributeValue `type:"list"` // The primary key of the item where the operation stopped, inclusive of the // previous result set. Use this value to start a new operation, excluding this // value in the new request. // // If LastEvaluatedKey is empty, then the "last page" of results has been processed // and there is no more data to be retrieved. // // If LastEvaluatedKey is not empty, it does not necessarily mean that there // is more data in the result set. The only way to know when you have reached // the end of the result set is when LastEvaluatedKey is empty. LastEvaluatedKey map[string]*AttributeValue `type:"map"` // The number of items evaluated, before any QueryFilter is applied. A high // ScannedCount value with few, or no, Count results indicates an inefficient // Query operation. For more information, see Count and ScannedCount (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#Count) // in the Amazon DynamoDB Developer Guide. // // If you did not use a filter in the request, then ScannedCount is the same // as Count. ScannedCount *int64 `type:"integer"` } // String returns the string representation func (s QueryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s QueryOutput) GoString() string { return s.String() } // Represents the input of a Scan operation. type ScanInput struct { _ struct{} `type:"structure"` // This is a legacy parameter, for backward compatibility. New applications // should use ProjectionExpression instead. Do not combine legacy parameters // and expression parameters in a single API call; otherwise, DynamoDB will // return a ValidationException exception. // // This parameter allows you to retrieve attributes of type List or Map; however, // it cannot retrieve individual elements within a List or a Map. // // The names of one or more attributes to retrieve. If no attribute names are // provided, then all attributes will be returned. If any of the requested attributes // are not found, they will not appear in the result. // // Note that AttributesToGet has no effect on provisioned throughput consumption. // DynamoDB determines capacity units consumed based on item size, not on the // amount of data that is returned to an application. AttributesToGet []*string `min:"1" type:"list"` // This is a legacy parameter, for backward compatibility. New applications // should use FilterExpression instead. Do not combine legacy parameters and // expression parameters in a single API call; otherwise, DynamoDB will return // a ValidationException exception. // // A logical operator to apply to the conditions in a ScanFilter map: // // * AND - If all of the conditions evaluate to true, then the entire map // evaluates to true. // // * OR - If at least one of the conditions evaluate to true, then the entire // map evaluates to true. // // If you omit ConditionalOperator, then AND is the default. // // The operation will succeed only if the entire map evaluates to true. // // This parameter does not support attributes of type List or Map. ConditionalOperator *string `type:"string" enum:"ConditionalOperator"` // A Boolean value that determines the read consistency model during the scan: // // * If ConsistentRead is false, then the data returned from Scan might not // contain the results from other recently completed write operations (PutItem, // UpdateItem or DeleteItem). // // * If ConsistentRead is true, then all of the write operations that completed // before the Scan began are guaranteed to be contained in the Scan response. // // The default setting for ConsistentRead is false. // // The ConsistentRead parameter is not supported on global secondary indexes. // If you scan a global secondary index with ConsistentRead set to true, you // will receive a ValidationException. ConsistentRead *bool `type:"boolean"` // The primary key of the first item that this operation will evaluate. Use // the value that was returned for LastEvaluatedKey in the previous operation. // // The data type for ExclusiveStartKey must be String, Number or Binary. No // set data types are allowed. // // In a parallel scan, a Scan request that includes ExclusiveStartKey must specify // the same segment whose previous Scan returned the corresponding value of // LastEvaluatedKey. ExclusiveStartKey map[string]*AttributeValue `type:"map"` // One or more substitution tokens for attribute names in an expression. The // following are some use cases for using ExpressionAttributeNames: // // * To access an attribute whose name conflicts with a DynamoDB reserved // word. // // * To create a placeholder for repeating occurrences of an attribute name // in an expression. // // * To prevent special characters in an attribute name from being misinterpreted // in an expression. // // Use the # character in an expression to dereference an attribute name. For // example, consider the following attribute name: // // * Percentile // // The name of this attribute conflicts with a reserved word, so it cannot be // used directly in an expression. (For the complete list of reserved words, // see Reserved Words (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ReservedWords.html) // in the Amazon DynamoDB Developer Guide). To work around this, you could specify // the following for ExpressionAttributeNames: // // * {"#P":"Percentile"} // // You could then use this substitution in an expression, as in this example: // // * #P = :val // // Tokens that begin with the : character are expression attribute values, which // are placeholders for the actual value at runtime. // // For more information on expression attribute names, see Accessing Item Attributes // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.AccessingItemAttributes.html) // in the Amazon DynamoDB Developer Guide. ExpressionAttributeNames map[string]*string `type:"map"` // One or more values that can be substituted in an expression. // // Use the : (colon) character in an expression to dereference an attribute // value. For example, suppose that you wanted to check whether the value of // the ProductStatus attribute was one of the following: // // Available | Backordered | Discontinued // // You would first need to specify ExpressionAttributeValues as follows: // // { ":avail":{"S":"Available"}, ":back":{"S":"Backordered"}, ":disc":{"S":"Discontinued"} // } // // You could then use these values in an expression, such as this: // // ProductStatus IN (:avail, :back, :disc) // // For more information on expression attribute values, see Specifying Conditions // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.SpecifyingConditions.html) // in the Amazon DynamoDB Developer Guide. ExpressionAttributeValues map[string]*AttributeValue `type:"map"` // A string that contains conditions that DynamoDB applies after the Scan operation, // but before the data is returned to you. Items that do not satisfy the FilterExpression // criteria are not returned. // // A FilterExpression is applied after the items have already been read; the // process of filtering does not consume any additional read capacity units. // // For more information, see Filter Expressions (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#FilteringResults) // in the Amazon DynamoDB Developer Guide. // // FilterExpression replaces the legacy ScanFilter and ConditionalOperator parameters. FilterExpression *string `type:"string"` // The name of a secondary index to scan. This index can be any local secondary // index or global secondary index. Note that if you use the IndexName parameter, // you must also provide TableName. IndexName *string `min:"3" type:"string"` // The maximum number of items to evaluate (not necessarily the number of matching // items). If DynamoDB processes the number of items up to the limit while processing // the results, it stops the operation and returns the matching values up to // that point, and a key in LastEvaluatedKey to apply in a subsequent operation, // so that you can pick up where you left off. Also, if the processed data set // size exceeds 1 MB before DynamoDB reaches this limit, it stops the operation // and returns the matching values up to the limit, and a key in LastEvaluatedKey // to apply in a subsequent operation to continue the operation. For more information, // see Query and Scan (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html) // in the Amazon DynamoDB Developer Guide. Limit *int64 `min:"1" type:"integer"` // A string that identifies one or more attributes to retrieve from the specified // table or index. These attributes can include scalars, sets, or elements of // a JSON document. The attributes in the expression must be separated by commas. // // If no attribute names are specified, then all attributes will be returned. // If any of the requested attributes are not found, they will not appear in // the result. // // For more information, see Accessing Item Attributes (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.AccessingItemAttributes.html) // in the Amazon DynamoDB Developer Guide. // // ProjectionExpression replaces the legacy AttributesToGet parameter. ProjectionExpression *string `type:"string"` // Determines the level of detail about provisioned throughput consumption that // is returned in the response: // // * INDEXES - The response includes the aggregate ConsumedCapacity for the // operation, together with ConsumedCapacity for each table and secondary // index that was accessed. // // Note that some operations, such as GetItem and BatchGetItem, do not access // any indexes at all. In these cases, specifying INDEXES will only return // ConsumedCapacity information for table(s). // // * TOTAL - The response includes only the aggregate ConsumedCapacity for // the operation. // // * NONE - No ConsumedCapacity details are included in the response. ReturnConsumedCapacity *string `type:"string" enum:"ReturnConsumedCapacity"` // This is a legacy parameter, for backward compatibility. New applications // should use FilterExpression instead. Do not combine legacy parameters and // expression parameters in a single API call; otherwise, DynamoDB will return // a ValidationException exception. // // A condition that evaluates the scan results and returns only the desired // values. // // This parameter does not support attributes of type List or Map. // // If you specify more than one condition in the ScanFilter map, then by default // all of the conditions must evaluate to true. In other words, the conditions // are ANDed together. (You can use the ConditionalOperator parameter to OR // the conditions instead. If you do this, then at least one of the conditions // must evaluate to true, rather than all of them.) // // Each ScanFilter element consists of an attribute name to compare, along with // the following: // // * AttributeValueList - One or more values to evaluate against the supplied // attribute. The number of values in the list depends on the operator specified // in ComparisonOperator . // // For type Number, value comparisons are numeric. // // String value comparisons for greater than, equals, or less than are based // on ASCII character code values. For example, a is greater than A, and // a is greater than B. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters // (http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters). // // For Binary, DynamoDB treats each byte of the binary data as unsigned when // it compares binary values. // // For information on specifying data types in JSON, see JSON Data Format (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DataFormat.html) // in the Amazon DynamoDB Developer Guide. // // * ComparisonOperator - A comparator for evaluating attributes. For example, // equals, greater than, less than, etc. // // The following comparison operators are available: // // EQ | NE | LE | LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | // BEGINS_WITH | IN | BETWEEN // // For complete descriptions of all comparison operators, see Condition (http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Condition.html). ScanFilter map[string]*Condition `type:"map"` // For a parallel Scan request, Segment identifies an individual segment to // be scanned by an application worker. // // Segment IDs are zero-based, so the first segment is always 0. For example, // if you want to use four application threads to scan a table or an index, // then the first thread specifies a Segment value of 0, the second thread specifies // 1, and so on. // // The value of LastEvaluatedKey returned from a parallel Scan request must // be used as ExclusiveStartKey with the same segment ID in a subsequent Scan // operation. // // The value for Segment must be greater than or equal to 0, and less than the // value provided for TotalSegments. // // If you provide Segment, you must also provide TotalSegments. Segment *int64 `type:"integer"` // The attributes to be returned in the result. You can retrieve all item attributes, // specific item attributes, or the count of matching items. // // * ALL_ATTRIBUTES - Returns all of the item attributes. // // * ALL_PROJECTED_ATTRIBUTES - Allowed only when querying an index. Retrieves // all attributes that have been projected into the index. If the index is // configured to project all attributes, this return value is equivalent // to specifying ALL_ATTRIBUTES. // // * COUNT - Returns the number of matching items, rather than the matching // items themselves. // // * SPECIFIC_ATTRIBUTES - Returns only the attributes listed in AttributesToGet. // This return value is equivalent to specifying AttributesToGet without // specifying any value for Select. // // If neither Select nor AttributesToGet are specified, DynamoDB defaults to // ALL_ATTRIBUTES. You cannot use both AttributesToGet and Select together in // a single request, unless the value for Select is SPECIFIC_ATTRIBUTES. (This // usage is equivalent to specifying AttributesToGet without any value for Select.) Select *string `type:"string" enum:"Select"` // The name of the table containing the requested items; or, if you provide // IndexName, the name of the table to which that index belongs. // // TableName is a required field TableName *string `min:"3" type:"string" required:"true"` // For a parallel Scan request, TotalSegments represents the total number of // segments into which the Scan operation will be divided. The value of TotalSegments // corresponds to the number of application workers that will perform the parallel // scan. For example, if you want to use four application threads to scan a // table or an index, specify a TotalSegments value of 4. // // The value for TotalSegments must be greater than or equal to 1, and less // than or equal to 1000000. If you specify a TotalSegments value of 1, the // Scan operation will be sequential rather than parallel. // // If you specify TotalSegments, you must also specify Segment. TotalSegments *int64 `min:"1" type:"integer"` } // String returns the string representation func (s ScanInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScanInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ScanInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ScanInput"} if s.AttributesToGet != nil && len(s.AttributesToGet) < 1 { invalidParams.Add(request.NewErrParamMinLen("AttributesToGet", 1)) } if s.IndexName != nil && len(*s.IndexName) < 3 { invalidParams.Add(request.NewErrParamMinLen("IndexName", 3)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.TableName == nil { invalidParams.Add(request.NewErrParamRequired("TableName")) } if s.TableName != nil && len(*s.TableName) < 3 { invalidParams.Add(request.NewErrParamMinLen("TableName", 3)) } if s.TotalSegments != nil && *s.TotalSegments < 1 { invalidParams.Add(request.NewErrParamMinValue("TotalSegments", 1)) } if s.ScanFilter != nil { for i, v := range s.ScanFilter { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ScanFilter", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a Scan operation. type ScanOutput struct { _ struct{} `type:"structure"` // The capacity units consumed by an operation. The data returned includes the // total provisioned throughput consumed, along with statistics for the table // and any indexes involved in the operation. ConsumedCapacity is only returned // if the request asked for it. For more information, see Provisioned Throughput // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughputIntro.html) // in the Amazon DynamoDB Developer Guide. ConsumedCapacity *ConsumedCapacity `type:"structure"` // The number of items in the response. // // If you set ScanFilter in the request, then Count is the number of items returned // after the filter was applied, and ScannedCount is the number of matching // items before the filter was applied. // // If you did not use a filter in the request, then Count is the same as ScannedCount. Count *int64 `type:"integer"` // An array of item attributes that match the scan criteria. Each element in // this array consists of an attribute name and the value for that attribute. Items []map[string]*AttributeValue `type:"list"` // The primary key of the item where the operation stopped, inclusive of the // previous result set. Use this value to start a new operation, excluding this // value in the new request. // // If LastEvaluatedKey is empty, then the "last page" of results has been processed // and there is no more data to be retrieved. // // If LastEvaluatedKey is not empty, it does not necessarily mean that there // is more data in the result set. The only way to know when you have reached // the end of the result set is when LastEvaluatedKey is empty. LastEvaluatedKey map[string]*AttributeValue `type:"map"` // The number of items evaluated, before any ScanFilter is applied. A high ScannedCount // value with few, or no, Count results indicates an inefficient Scan operation. // For more information, see Count and ScannedCount (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#Count) // in the Amazon DynamoDB Developer Guide. // // If you did not use a filter in the request, then ScannedCount is the same // as Count. ScannedCount *int64 `type:"integer"` } // String returns the string representation func (s ScanOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScanOutput) GoString() string { return s.String() } // Represents the DynamoDB Streams configuration for a table in DynamoDB. type StreamSpecification struct { _ struct{} `type:"structure"` // Indicates whether DynamoDB Streams is enabled (true) or disabled (false) // on the table. StreamEnabled *bool `type:"boolean"` // The DynamoDB Streams settings for the table. These settings consist of: // // * StreamEnabled - Indicates whether DynamoDB Streams is enabled (true) // or disabled (false) on the table. // // * StreamViewType - When an item in the table is modified, StreamViewType // determines what information is written to the stream for this table. Valid // values for StreamViewType are: // // KEYS_ONLY - Only the key attributes of the modified item are written to the // stream. // // NEW_IMAGE - The entire item, as it appears after it was modified, is written // to the stream. // // OLD_IMAGE - The entire item, as it appeared before it was modified, is written // to the stream. // // NEW_AND_OLD_IMAGES - Both the new and the old item images of the item are // written to the stream. StreamViewType *string `type:"string" enum:"StreamViewType"` } // String returns the string representation func (s StreamSpecification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StreamSpecification) GoString() string { return s.String() } // Represents the properties of a table. type TableDescription struct { _ struct{} `type:"structure"` // An array of AttributeDefinition objects. Each of these objects describes // one attribute in the table and index key schema. // // Each AttributeDefinition object in this array is composed of: // // * AttributeName - The name of the attribute. // // * AttributeType - The data type for the attribute. AttributeDefinitions []*AttributeDefinition `type:"list"` // The date and time when the table was created, in UNIX epoch time (http://www.epochconverter.com/) // format. CreationDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The global secondary indexes, if any, on the table. Each index is scoped // to a given partition key value. Each element is composed of: // // * Backfilling - If true, then the index is currently in the backfilling // phase. Backfilling occurs only when a new global secondary index is added // to the table; it is the process by which DynamoDB populates the new index // with data from the table. (This attribute does not appear for indexes // that were created during a CreateTable operation.) // // * IndexName - The name of the global secondary index. // // * IndexSizeBytes - The total size of the global secondary index, in bytes. // DynamoDB updates this value approximately every six hours. Recent changes // might not be reflected in this value. // // * IndexStatus - The current status of the global secondary index: // // CREATING - The index is being created. // // UPDATING - The index is being updated. // // DELETING - The index is being deleted. // // ACTIVE - The index is ready for use. // // * ItemCount - The number of items in the global secondary index. DynamoDB // updates this value approximately every six hours. Recent changes might // not be reflected in this value. // // * KeySchema - Specifies the complete index key schema. The attribute names // in the key schema must be between 1 and 255 characters (inclusive). The // key schema must begin with the same partition key as the table. // // * Projection - Specifies attributes that are copied (projected) from the // table into the index. These are in addition to the primary key attributes // and index key attributes, which are automatically projected. Each attribute // specification is composed of: // // ProjectionType - One of the following: // // KEYS_ONLY - Only the index and primary keys are projected into the index. // // INCLUDE - Only the specified table attributes are projected into the index. // The list of projected attributes are in NonKeyAttributes. // // ALL - All of the table attributes are projected into the index. // // NonKeyAttributes - A list of one or more non-key attribute names that are // projected into the secondary index. The total count of attributes provided // in NonKeyAttributes, summed across all of the secondary indexes, must // not exceed 20. If you project the same attribute into two different indexes, // this counts as two distinct attributes when determining the total. // // * ProvisionedThroughput - The provisioned throughput settings for the // global secondary index, consisting of read and write capacity units, along // with data about increases and decreases. // // If the table is in the DELETING state, no information about indexes will // be returned. GlobalSecondaryIndexes []*GlobalSecondaryIndexDescription `type:"list"` // The number of items in the specified table. DynamoDB updates this value approximately // every six hours. Recent changes might not be reflected in this value. ItemCount *int64 `type:"long"` // The primary key structure for the table. Each KeySchemaElement consists of: // // * AttributeName - The name of the attribute. // // * KeyType - The role of the attribute: // // HASH - partition key // // RANGE - sort key // // The partition key of an item is also known as its hash attribute. The term // "hash attribute" derives from DynamoDB' usage of an internal hash function // to evenly distribute data items across partitions, based on their partition // key values. // // The sort key of an item is also known as its range attribute. The term "range // attribute" derives from the way DynamoDB stores items with the same partition // key physically close together, in sorted order by the sort key value. // // For more information about primary keys, see Primary Key (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DataModel.html#DataModelPrimaryKey) // in the Amazon DynamoDB Developer Guide. KeySchema []*KeySchemaElement `min:"1" type:"list"` // The Amazon Resource Name (ARN) that uniquely identifies the latest stream // for this table. LatestStreamArn *string `min:"37" type:"string"` // A timestamp, in ISO 8601 format, for this stream. // // Note that LatestStreamLabel is not a unique identifier for the stream, because // it is possible that a stream from another table might have the same timestamp. // However, the combination of the following three elements is guaranteed to // be unique: // // * the AWS customer ID. // // * the table name. // // * the StreamLabel. LatestStreamLabel *string `type:"string"` // Represents one or more local secondary indexes on the table. Each index is // scoped to a given partition key value. Tables with one or more local secondary // indexes are subject to an item collection size limit, where the amount of // data within a given item collection cannot exceed 10 GB. Each element is // composed of: // // * IndexName - The name of the local secondary index. // // * KeySchema - Specifies the complete index key schema. The attribute names // in the key schema must be between 1 and 255 characters (inclusive). The // key schema must begin with the same partition key as the table. // // * Projection - Specifies attributes that are copied (projected) from the // table into the index. These are in addition to the primary key attributes // and index key attributes, which are automatically projected. Each attribute // specification is composed of: // // ProjectionType - One of the following: // // KEYS_ONLY - Only the index and primary keys are projected into the index. // // INCLUDE - Only the specified table attributes are projected into the index. // The list of projected attributes are in NonKeyAttributes. // // ALL - All of the table attributes are projected into the index. // // NonKeyAttributes - A list of one or more non-key attribute names that are // projected into the secondary index. The total count of attributes provided // in NonKeyAttributes, summed across all of the secondary indexes, must // not exceed 20. If you project the same attribute into two different indexes, // this counts as two distinct attributes when determining the total. // // * IndexSizeBytes - Represents the total size of the index, in bytes. DynamoDB // updates this value approximately every six hours. Recent changes might // not be reflected in this value. // // * ItemCount - Represents the number of items in the index. DynamoDB updates // this value approximately every six hours. Recent changes might not be // reflected in this value. // // If the table is in the DELETING state, no information about indexes will // be returned. LocalSecondaryIndexes []*LocalSecondaryIndexDescription `type:"list"` // The provisioned throughput settings for the table, consisting of read and // write capacity units, along with data about increases and decreases. ProvisionedThroughput *ProvisionedThroughputDescription `type:"structure"` // The current DynamoDB Streams configuration for the table. StreamSpecification *StreamSpecification `type:"structure"` // The Amazon Resource Name (ARN) that uniquely identifies the table. TableArn *string `type:"string"` // The name of the table. TableName *string `min:"3" type:"string"` // The total size of the specified table, in bytes. DynamoDB updates this value // approximately every six hours. Recent changes might not be reflected in this // value. TableSizeBytes *int64 `type:"long"` // The current state of the table: // // * CREATING - The table is being created. // // * UPDATING - The table is being updated. // // * DELETING - The table is being deleted. // // * ACTIVE - The table is ready for use. TableStatus *string `type:"string" enum:"TableStatus"` } // String returns the string representation func (s TableDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TableDescription) GoString() string { return s.String() } // Represents the new provisioned throughput settings to be applied to a global // secondary index. type UpdateGlobalSecondaryIndexAction struct { _ struct{} `type:"structure"` // The name of the global secondary index to be updated. // // IndexName is a required field IndexName *string `min:"3" type:"string" required:"true"` // Represents the provisioned throughput settings for a specified table or index. // The settings can be modified using the UpdateTable operation. // // For current minimum and maximum provisioned throughput values, see Limits // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html) // in the Amazon DynamoDB Developer Guide. // // ProvisionedThroughput is a required field ProvisionedThroughput *ProvisionedThroughput `type:"structure" required:"true"` } // String returns the string representation func (s UpdateGlobalSecondaryIndexAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateGlobalSecondaryIndexAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateGlobalSecondaryIndexAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateGlobalSecondaryIndexAction"} if s.IndexName == nil { invalidParams.Add(request.NewErrParamRequired("IndexName")) } if s.IndexName != nil && len(*s.IndexName) < 3 { invalidParams.Add(request.NewErrParamMinLen("IndexName", 3)) } if s.ProvisionedThroughput == nil { invalidParams.Add(request.NewErrParamRequired("ProvisionedThroughput")) } if s.ProvisionedThroughput != nil { if err := s.ProvisionedThroughput.Validate(); err != nil { invalidParams.AddNested("ProvisionedThroughput", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the input of an UpdateItem operation. type UpdateItemInput struct { _ struct{} `type:"structure"` // This is a legacy parameter, for backward compatibility. New applications // should use UpdateExpression instead. Do not combine legacy parameters and // expression parameters in a single API call; otherwise, DynamoDB will return // a ValidationException exception. // // This parameter can be used for modifying top-level attributes; however, it // does not support individual list or map elements. // // The names of attributes to be modified, the action to perform on each, and // the new value for each. If you are updating an attribute that is an index // key attribute for any indexes on that table, the attribute type must match // the index key type defined in the AttributesDefinition of the table description. // You can use UpdateItem to update any non-key attributes. // // Attribute values cannot be null. String and Binary type attributes must have // lengths greater than zero. Set type attributes must not be empty. Requests // with empty values will be rejected with a ValidationException exception. // // Each AttributeUpdates element consists of an attribute name to modify, along // with the following: // // * Value - The new value, if applicable, for this attribute. // // * Action - A value that specifies how to perform the update. This action // is only valid for an existing attribute whose data type is Number or is // a set; do not use ADD for other data types. // // If an item with the specified primary key is found in the table, the following // values perform the following actions: // // PUT - Adds the specified attribute to the item. If the attribute already // exists, it is replaced by the new value. // // DELETE - Removes the attribute and its value, if no value is specified for // DELETE. The data type of the specified value must match the existing value's // data type. // // If a set of values is specified, then those values are subtracted from the // old set. For example, if the attribute value was the set [a,b,c] and the // DELETE action specifies [a,c], then the final attribute value is [b]. // Specifying an empty set is an error. // // ADD - Adds the specified value to the item, if the attribute does not already // exist. If the attribute does exist, then the behavior of ADD depends on // the data type of the attribute: // // If the existing attribute is a number, and if Value is also a number, then // Value is mathematically added to the existing attribute. If Value is a // negative number, then it is subtracted from the existing attribute. // // If you use ADD to increment or decrement a number value for an item that // doesn't exist before the update, DynamoDB uses 0 as the initial value. // // Similarly, if you use ADD for an existing item to increment or decrement // an attribute value that doesn't exist before the update, DynamoDB uses // 0 as the initial value. For example, suppose that the item you want to // update doesn't have an attribute named itemcount, but you decide to ADD // the number 3 to this attribute anyway. DynamoDB will create the itemcount // attribute, set its initial value to 0, and finally add 3 to it. The result // will be a new itemcount attribute, with a value of 3. // // If the existing data type is a set, and if Value is also a set, then Value // is appended to the existing set. For example, if the attribute value is // the set [1,2], and the ADD action specified [3], then the final attribute // value is [1,2,3]. An error occurs if an ADD action is specified for a // set attribute and the attribute type specified does not match the existing // set type. // // Both sets must have the same primitive data type. For example, if the existing // data type is a set of strings, Value must also be a set of strings. // // If no item with the specified key is found in the table, the following values // perform the following actions: // // PUT - Causes DynamoDB to create a new item with the specified primary key, // and then adds the attribute. // // DELETE - Nothing happens, because attributes cannot be deleted from a nonexistent // item. The operation succeeds, but DynamoDB does not create a new item. // // ADD - Causes DynamoDB to create an item with the supplied primary key and // number (or set of numbers) for the attribute value. The only data types // allowed are Number and Number Set. // // If you provide any attributes that are part of an index key, then the data // types for those attributes must match those of the schema in the table's // attribute definition. AttributeUpdates map[string]*AttributeValueUpdate `type:"map"` // A condition that must be satisfied in order for a conditional update to succeed. // // An expression can contain any of the following: // // * Functions: attribute_exists | attribute_not_exists | attribute_type // | contains | begins_with | size // // These function names are case-sensitive. // // * Comparison operators: = | <> | < | > | <= // | >= | BETWEEN | IN // // * Logical operators: AND | OR | NOT // // For more information on condition expressions, see Specifying Conditions // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.SpecifyingConditions.html) // in the Amazon DynamoDB Developer Guide. // // ConditionExpression replaces the legacy ConditionalOperator and Expected // parameters. ConditionExpression *string `type:"string"` // This is a legacy parameter, for backward compatibility. New applications // should use ConditionExpression instead. Do not combine legacy parameters // and expression parameters in a single API call; otherwise, DynamoDB will // return a ValidationException exception. // // A logical operator to apply to the conditions in the Expected map: // // * AND - If all of the conditions evaluate to true, then the entire map // evaluates to true. // // * OR - If at least one of the conditions evaluate to true, then the entire // map evaluates to true. // // If you omit ConditionalOperator, then AND is the default. // // The operation will succeed only if the entire map evaluates to true. // // This parameter does not support attributes of type List or Map. ConditionalOperator *string `type:"string" enum:"ConditionalOperator"` // This is a legacy parameter, for backward compatibility. New applications // should use ConditionExpression instead. Do not combine legacy parameters // and expression parameters in a single API call; otherwise, DynamoDB will // return a ValidationException exception. // // A map of attribute/condition pairs. Expected provides a conditional block // for the UpdateItem operation. // // Each element of Expected consists of an attribute name, a comparison operator, // and one or more values. DynamoDB compares the attribute with the value(s) // you supplied, using the comparison operator. For each Expected element, the // result of the evaluation is either true or false. // // If you specify more than one element in the Expected map, then by default // all of the conditions must evaluate to true. In other words, the conditions // are ANDed together. (You can use the ConditionalOperator parameter to OR // the conditions instead. If you do this, then at least one of the conditions // must evaluate to true, rather than all of them.) // // If the Expected map evaluates to true, then the conditional operation succeeds; // otherwise, it fails. // // Expected contains the following: // // * AttributeValueList - One or more values to evaluate against the supplied // attribute. The number of values in the list depends on the ComparisonOperator // being used. // // For type Number, value comparisons are numeric. // // String value comparisons for greater than, equals, or less than are based // on ASCII character code values. For example, a is greater than A, and // a is greater than B. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters // (http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters). // // For type Binary, DynamoDB treats each byte of the binary data as unsigned // when it compares binary values. // // * ComparisonOperator - A comparator for evaluating attributes in the AttributeValueList. // When performing the comparison, DynamoDB uses strongly consistent reads. // // The following comparison operators are available: // // EQ | NE | LE | LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | // BEGINS_WITH | IN | BETWEEN // // The following are descriptions of each comparison operator. // // EQ : Equal. EQ is supported for all datatypes, including lists and maps. // // AttributeValueList can contain only one AttributeValue element of type String, // Number, Binary, String Set, Number Set, or Binary Set. If an item contains // an AttributeValue element of a different type than the one provided in // the request, the value does not match. For example, {"S":"6"} does not // equal {"N":"6"}. Also, {"N":"6"} does not equal {"NS":["6", "2", "1"]}. // // NE : Not equal. NE is supported for all datatypes, including lists and maps. // // AttributeValueList can contain only one AttributeValue of type String, Number, // Binary, String Set, Number Set, or Binary Set. If an item contains an // AttributeValue of a different type than the one provided in the request, // the value does not match. For example, {"S":"6"} does not equal {"N":"6"}. // Also, {"N":"6"} does not equal {"NS":["6", "2", "1"]}. // // * LE : Less than or equal. // // AttributeValueList can contain only one AttributeValue element of type String, // Number, or Binary (not a set type). If an item contains an AttributeValue // element of a different type than the one provided in the request, the // value does not match. For example, {"S":"6"} does not equal {"N":"6"}. // Also, {"N":"6"} does not compare to {"NS":["6", "2", "1"]}. // // * LT : Less than. // // * AttributeValueList can contain only one AttributeValue of type String, // Number, or Binary (not a set type). If an item contains an AttributeValue // element of a different type than the one provided in the request, the // value does not match. For example, {"S":"6"} does not equal {"N":"6"}. // Also, {"N":"6"} does not compare to {"NS":["6", "2", "1"]}. // // * GE : Greater than or equal. // // AttributeValueList can contain only one AttributeValue element of type String, // Number, or Binary (not a set type). If an item contains an AttributeValue // element of a different type than the one provided in the request, the value // does not match. For example, {"S":"6"} does not equal {"N":"6"}. Also, {"N":"6"} // does not compare to {"NS":["6", "2", "1"]}. // // GT: Greater than. // // AttributeValueListcan contain only one AttributeValueelement of type String, Number, or Binary (not a set type). If an item contains // an AttributeValueelement of a different type than the one provided in the request, the value // does not match. For example, {"S":"6"}does not equal {"N":"6"}. Also, {"N":"6"}does not compare to {"NS":["6", "2", "1"]}. // // NOT_NULL // : The attribute exists. NOT_NULL // is supported for all datatypes, including lists and maps. // // This operator tests for the existence of an attribute, not its data type. // If the data type of attribute "a" is null, and you evaluate it using NOT_NULL, the result is a Boolean true. This result is because the attribute "a" exists; its data type is not relevant to the NOT_NULLcomparison operator. // // NULL // : The attribute does not exist. NULL // is supported for all datatypes, including lists and maps. // // This operator tests for the nonexistence of an attribute, not its data type. // If the data type of attribute "a" is null, and you evaluate it using NULL, the result is a Boolean false. This is because the attribute "a" exists; its data type is not relevant to the NULL Expected map[string]*ExpectedAttributeValue `type:"map"` // One or more substitution tokens for attribute names in an expression. The // following are some use cases for using ExpressionAttributeNames: // // * To access an attribute whose name conflicts with a DynamoDB reserved // word. // // * To create a placeholder for repeating occurrences of an attribute name // in an expression. // // * To prevent special characters in an attribute name from being misinterpreted // in an expression. // // Use the # character in an expression to dereference an attribute name. For // example, consider the following attribute name: // // * Percentile // // The name of this attribute conflicts with a reserved word, so it cannot be // used directly in an expression. (For the complete list of reserved words, // see Reserved Words (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ReservedWords.html) // in the Amazon DynamoDB Developer Guide). To work around this, you could specify // the following for ExpressionAttributeNames: // // * {"#P":"Percentile"} // // You could then use this substitution in an expression, as in this example: // // * #P = :val // // Tokens that begin with the : character are expression attribute values, which // are placeholders for the actual value at runtime. // // For more information on expression attribute names, see Accessing Item Attributes // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.AccessingItemAttributes.html) // in the Amazon DynamoDB Developer Guide. ExpressionAttributeNames map[string]*string `type:"map"` // One or more values that can be substituted in an expression. // // Use the : (colon) character in an expression to dereference an attribute // value. For example, suppose that you wanted to check whether the value of // the ProductStatus attribute was one of the following: // // Available | Backordered | Discontinued // // You would first need to specify ExpressionAttributeValues as follows: // // { ":avail":{"S":"Available"}, ":back":{"S":"Backordered"}, ":disc":{"S":"Discontinued"} // } // // You could then use these values in an expression, such as this: // // ProductStatus IN (:avail, :back, :disc) // // For more information on expression attribute values, see Specifying Conditions // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.SpecifyingConditions.html) // in the Amazon DynamoDB Developer Guide. ExpressionAttributeValues map[string]*AttributeValue `type:"map"` // The primary key of the item to be updated. Each element consists of an attribute // name and a value for that attribute. // // For the primary key, you must provide all of the attributes. For example, // with a simple primary key, you only need to provide a value for the partition // key. For a composite primary key, you must provide values for both the partition // key and the sort key. // // Key is a required field Key map[string]*AttributeValue `type:"map" required:"true"` // Determines the level of detail about provisioned throughput consumption that // is returned in the response: // // * INDEXES - The response includes the aggregate ConsumedCapacity for the // operation, together with ConsumedCapacity for each table and secondary // index that was accessed. // // Note that some operations, such as GetItem and BatchGetItem, do not access // any indexes at all. In these cases, specifying INDEXES will only return // ConsumedCapacity information for table(s). // // * TOTAL - The response includes only the aggregate ConsumedCapacity for // the operation. // // * NONE - No ConsumedCapacity details are included in the response. ReturnConsumedCapacity *string `type:"string" enum:"ReturnConsumedCapacity"` // Determines whether item collection metrics are returned. If set to SIZE, // the response includes statistics about item collections, if any, that were // modified during the operation are returned in the response. If set to NONE // (the default), no statistics are returned. ReturnItemCollectionMetrics *string `type:"string" enum:"ReturnItemCollectionMetrics"` // Use ReturnValues if you want to get the item attributes as they appeared // either before or after they were updated. For UpdateItem, the valid values // are: // // * NONE - If ReturnValues is not specified, or if its value is NONE, then // nothing is returned. (This setting is the default for ReturnValues.) // // * ALL_OLD - If UpdateItem overwrote an attribute name-value pair, then // the content of the old item is returned. // // * UPDATED_OLD - The old versions of only the updated attributes are returned. // // * ALL_NEW - All of the attributes of the new version of the item are returned. // // * UPDATED_NEW - The new versions of only the updated attributes are returned. // // There is no additional cost associated with requesting a return value aside // from the small network and processing overhead of receiving a larger response. // No Read Capacity Units are consumed. // // Values returned are strongly consistent ReturnValues *string `type:"string" enum:"ReturnValue"` // The name of the table containing the item to update. // // TableName is a required field TableName *string `min:"3" type:"string" required:"true"` // An expression that defines one or more attributes to be updated, the action // to be performed on them, and new value(s) for them. // // The following action values are available for UpdateExpression. // // * SET - Adds one or more attributes and values to an item. If any of these // attribute already exist, they are replaced by the new values. You can // also use SET to add or subtract from an attribute that is of type Number. // For example: SET myNum = myNum + :val // // SET supports the following functions: // // if_not_exists (path, operand) - if the item does not contain an attribute // at the specified path, then if_not_exists evaluates to operand; otherwise, // it evaluates to path. You can use this function to avoid overwriting an // attribute that may already be present in the item. // // list_append (operand, operand) - evaluates to a list with a new element added // to it. You can append the new element to the start or the end of the list // by reversing the order of the operands. // // These function names are case-sensitive. // // * REMOVE - Removes one or more attributes from an item. // // * ADD - Adds the specified value to the item, if the attribute does not // already exist. If the attribute does exist, then the behavior of ADD depends // on the data type of the attribute: // // If the existing attribute is a number, and if Value is also a number, then // Value is mathematically added to the existing attribute. If Value is a // negative number, then it is subtracted from the existing attribute. // // If you use ADD to increment or decrement a number value for an item that // doesn't exist before the update, DynamoDB uses 0 as the initial value. // // Similarly, if you use ADD for an existing item to increment or decrement // an attribute value that doesn't exist before the update, DynamoDB uses // 0 as the initial value. For example, suppose that the item you want to // update doesn't have an attribute named itemcount, but you decide to ADD // the number 3 to this attribute anyway. DynamoDB will create the itemcount // attribute, set its initial value to 0, and finally add 3 to it. The result // will be a new itemcount attribute in the item, with a value of 3. // // If the existing data type is a set and if Value is also a set, then Value // is added to the existing set. For example, if the attribute value is the // set [1,2], and the ADD action specified [3], then the final attribute // value is [1,2,3]. An error occurs if an ADD action is specified for a // set attribute and the attribute type specified does not match the existing // set type. // // Both sets must have the same primitive data type. For example, if the existing // data type is a set of strings, the Value must also be a set of strings. // // The ADD action only supports Number and set data types. In addition, ADD // can only be used on top-level attributes, not nested attributes. // // * DELETE - Deletes an element from a set. // // If a set of values is specified, then those values are subtracted from the // old set. For example, if the attribute value was the set [a,b,c] and the // DELETE action specifies [a,c], then the final attribute value is [b]. // Specifying an empty set is an error. // // The DELETE action only supports set data types. In addition, DELETE can only // be used on top-level attributes, not nested attributes. // // You can have many actions in a single expression, such as the following: // SET a=:value1, b=:value2 DELETE :value3, :value4, :value5 // // For more information on update expressions, see Modifying Items and Attributes // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.Modifying.html) // in the Amazon DynamoDB Developer Guide. // // UpdateExpression replaces the legacy AttributeUpdates parameter. UpdateExpression *string `type:"string"` } // String returns the string representation func (s UpdateItemInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateItemInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateItemInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateItemInput"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.TableName == nil { invalidParams.Add(request.NewErrParamRequired("TableName")) } if s.TableName != nil && len(*s.TableName) < 3 { invalidParams.Add(request.NewErrParamMinLen("TableName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of an UpdateItem operation. type UpdateItemOutput struct { _ struct{} `type:"structure"` // A map of attribute values as they appeared before the UpdateItem operation. // This map only appears if ReturnValues was specified as something other than // NONE in the request. Each element represents one attribute. Attributes map[string]*AttributeValue `type:"map"` // The capacity units consumed by an operation. The data returned includes the // total provisioned throughput consumed, along with statistics for the table // and any indexes involved in the operation. ConsumedCapacity is only returned // if the request asked for it. For more information, see Provisioned Throughput // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughputIntro.html) // in the Amazon DynamoDB Developer Guide. ConsumedCapacity *ConsumedCapacity `type:"structure"` // Information about item collections, if any, that were affected by the operation. // ItemCollectionMetrics is only returned if the request asked for it. If the // table does not have any local secondary indexes, this information is not // returned in the response. ItemCollectionMetrics *ItemCollectionMetrics `type:"structure"` } // String returns the string representation func (s UpdateItemOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateItemOutput) GoString() string { return s.String() } // Represents the input of an UpdateTable operation. type UpdateTableInput struct { _ struct{} `type:"structure"` // An array of attributes that describe the key schema for the table and indexes. // If you are adding a new global secondary index to the table, AttributeDefinitions // must include the key element(s) of the new index. AttributeDefinitions []*AttributeDefinition `type:"list"` // An array of one or more global secondary indexes for the table. For each // index in the array, you can request one action: // // * Create - add a new global secondary index to the table. // // * Update - modify the provisioned throughput settings of an existing global // secondary index. // // * Delete - remove a global secondary index from the table. // // For more information, see Managing Global Secondary Indexes (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GSI.OnlineOps.html) // in the Amazon DynamoDB Developer Guide. GlobalSecondaryIndexUpdates []*GlobalSecondaryIndexUpdate `type:"list"` // Represents the provisioned throughput settings for a specified table or index. // The settings can be modified using the UpdateTable operation. // // For current minimum and maximum provisioned throughput values, see Limits // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html) // in the Amazon DynamoDB Developer Guide. ProvisionedThroughput *ProvisionedThroughput `type:"structure"` // Represents the DynamoDB Streams configuration for the table. // // You will receive a ResourceInUseException if you attempt to enable a stream // on a table that already has a stream, or if you attempt to disable a stream // on a table which does not have a stream. StreamSpecification *StreamSpecification `type:"structure"` // The name of the table to be updated. // // TableName is a required field TableName *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s UpdateTableInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateTableInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateTableInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateTableInput"} if s.TableName == nil { invalidParams.Add(request.NewErrParamRequired("TableName")) } if s.TableName != nil && len(*s.TableName) < 3 { invalidParams.Add(request.NewErrParamMinLen("TableName", 3)) } if s.AttributeDefinitions != nil { for i, v := range s.AttributeDefinitions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AttributeDefinitions", i), err.(request.ErrInvalidParams)) } } } if s.GlobalSecondaryIndexUpdates != nil { for i, v := range s.GlobalSecondaryIndexUpdates { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "GlobalSecondaryIndexUpdates", i), err.(request.ErrInvalidParams)) } } } if s.ProvisionedThroughput != nil { if err := s.ProvisionedThroughput.Validate(); err != nil { invalidParams.AddNested("ProvisionedThroughput", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of an UpdateTable operation. type UpdateTableOutput struct { _ struct{} `type:"structure"` // Represents the properties of a table. TableDescription *TableDescription `type:"structure"` } // String returns the string representation func (s UpdateTableOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateTableOutput) GoString() string { return s.String() } // Represents an operation to perform - either DeleteItem or PutItem. You can // only request one of these operations, not both, in a single WriteRequest. // If you do need to perform both of these operations, you will need to provide // two separate WriteRequest objects. type WriteRequest struct { _ struct{} `type:"structure"` // A request to perform a DeleteItem operation. DeleteRequest *DeleteRequest `type:"structure"` // A request to perform a PutItem operation. PutRequest *PutRequest `type:"structure"` } // String returns the string representation func (s WriteRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WriteRequest) GoString() string { return s.String() } const ( // AttributeActionAdd is a AttributeAction enum value AttributeActionAdd = "ADD" // AttributeActionPut is a AttributeAction enum value AttributeActionPut = "PUT" // AttributeActionDelete is a AttributeAction enum value AttributeActionDelete = "DELETE" ) const ( // ComparisonOperatorEq is a ComparisonOperator enum value ComparisonOperatorEq = "EQ" // ComparisonOperatorNe is a ComparisonOperator enum value ComparisonOperatorNe = "NE" // ComparisonOperatorIn is a ComparisonOperator enum value ComparisonOperatorIn = "IN" // ComparisonOperatorLe is a ComparisonOperator enum value ComparisonOperatorLe = "LE" // ComparisonOperatorLt is a ComparisonOperator enum value ComparisonOperatorLt = "LT" // ComparisonOperatorGe is a ComparisonOperator enum value ComparisonOperatorGe = "GE" // ComparisonOperatorGt is a ComparisonOperator enum value ComparisonOperatorGt = "GT" // ComparisonOperatorBetween is a ComparisonOperator enum value ComparisonOperatorBetween = "BETWEEN" // ComparisonOperatorNotNull is a ComparisonOperator enum value ComparisonOperatorNotNull = "NOT_NULL" // ComparisonOperatorNull is a ComparisonOperator enum value ComparisonOperatorNull = "NULL" // ComparisonOperatorContains is a ComparisonOperator enum value ComparisonOperatorContains = "CONTAINS" // ComparisonOperatorNotContains is a ComparisonOperator enum value ComparisonOperatorNotContains = "NOT_CONTAINS" // ComparisonOperatorBeginsWith is a ComparisonOperator enum value ComparisonOperatorBeginsWith = "BEGINS_WITH" ) const ( // ConditionalOperatorAnd is a ConditionalOperator enum value ConditionalOperatorAnd = "AND" // ConditionalOperatorOr is a ConditionalOperator enum value ConditionalOperatorOr = "OR" ) const ( // IndexStatusCreating is a IndexStatus enum value IndexStatusCreating = "CREATING" // IndexStatusUpdating is a IndexStatus enum value IndexStatusUpdating = "UPDATING" // IndexStatusDeleting is a IndexStatus enum value IndexStatusDeleting = "DELETING" // IndexStatusActive is a IndexStatus enum value IndexStatusActive = "ACTIVE" ) const ( // KeyTypeHash is a KeyType enum value KeyTypeHash = "HASH" // KeyTypeRange is a KeyType enum value KeyTypeRange = "RANGE" ) const ( // ProjectionTypeAll is a ProjectionType enum value ProjectionTypeAll = "ALL" // ProjectionTypeKeysOnly is a ProjectionType enum value ProjectionTypeKeysOnly = "KEYS_ONLY" // ProjectionTypeInclude is a ProjectionType enum value ProjectionTypeInclude = "INCLUDE" ) // Determines the level of detail about provisioned throughput consumption that // is returned in the response: // // * INDEXES - The response includes the aggregate ConsumedCapacity for the // operation, together with ConsumedCapacity for each table and secondary // index that was accessed. // // Note that some operations, such as GetItem and BatchGetItem, do not access // any indexes at all. In these cases, specifying INDEXES will only return // ConsumedCapacity information for table(s). // // * TOTAL - The response includes only the aggregate ConsumedCapacity for // the operation. // // * NONE - No ConsumedCapacity details are included in the response. const ( // ReturnConsumedCapacityIndexes is a ReturnConsumedCapacity enum value ReturnConsumedCapacityIndexes = "INDEXES" // ReturnConsumedCapacityTotal is a ReturnConsumedCapacity enum value ReturnConsumedCapacityTotal = "TOTAL" // ReturnConsumedCapacityNone is a ReturnConsumedCapacity enum value ReturnConsumedCapacityNone = "NONE" ) const ( // ReturnItemCollectionMetricsSize is a ReturnItemCollectionMetrics enum value ReturnItemCollectionMetricsSize = "SIZE" // ReturnItemCollectionMetricsNone is a ReturnItemCollectionMetrics enum value ReturnItemCollectionMetricsNone = "NONE" ) const ( // ReturnValueNone is a ReturnValue enum value ReturnValueNone = "NONE" // ReturnValueAllOld is a ReturnValue enum value ReturnValueAllOld = "ALL_OLD" // ReturnValueUpdatedOld is a ReturnValue enum value ReturnValueUpdatedOld = "UPDATED_OLD" // ReturnValueAllNew is a ReturnValue enum value ReturnValueAllNew = "ALL_NEW" // ReturnValueUpdatedNew is a ReturnValue enum value ReturnValueUpdatedNew = "UPDATED_NEW" ) const ( // ScalarAttributeTypeS is a ScalarAttributeType enum value ScalarAttributeTypeS = "S" // ScalarAttributeTypeN is a ScalarAttributeType enum value ScalarAttributeTypeN = "N" // ScalarAttributeTypeB is a ScalarAttributeType enum value ScalarAttributeTypeB = "B" ) const ( // SelectAllAttributes is a Select enum value SelectAllAttributes = "ALL_ATTRIBUTES" // SelectAllProjectedAttributes is a Select enum value SelectAllProjectedAttributes = "ALL_PROJECTED_ATTRIBUTES" // SelectSpecificAttributes is a Select enum value SelectSpecificAttributes = "SPECIFIC_ATTRIBUTES" // SelectCount is a Select enum value SelectCount = "COUNT" ) const ( // StreamViewTypeNewImage is a StreamViewType enum value StreamViewTypeNewImage = "NEW_IMAGE" // StreamViewTypeOldImage is a StreamViewType enum value StreamViewTypeOldImage = "OLD_IMAGE" // StreamViewTypeNewAndOldImages is a StreamViewType enum value StreamViewTypeNewAndOldImages = "NEW_AND_OLD_IMAGES" // StreamViewTypeKeysOnly is a StreamViewType enum value StreamViewTypeKeysOnly = "KEYS_ONLY" ) const ( // TableStatusCreating is a TableStatus enum value TableStatusCreating = "CREATING" // TableStatusUpdating is a TableStatus enum value TableStatusUpdating = "UPDATING" // TableStatusDeleting is a TableStatus enum value TableStatusDeleting = "DELETING" // TableStatusActive is a TableStatus enum value TableStatusActive = "ACTIVE" ) aws-sdk-go-1.4.22/service/dynamodb/customizations.go000066400000000000000000000043071300374646400224460ustar00rootroot00000000000000package dynamodb import ( "bytes" "hash/crc32" "io" "io/ioutil" "math" "strconv" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/request" ) type retryer struct { client.DefaultRetryer } func (d retryer) RetryRules(r *request.Request) time.Duration { delay := time.Duration(math.Pow(2, float64(r.RetryCount))) * 50 return delay * time.Millisecond } func init() { initClient = func(c *client.Client) { r := retryer{} if c.Config.MaxRetries == nil || aws.IntValue(c.Config.MaxRetries) == aws.UseServiceDefaultRetries { r.NumMaxRetries = 10 } else { r.NumMaxRetries = *c.Config.MaxRetries } c.Retryer = r c.Handlers.Build.PushBack(disableCompression) c.Handlers.Unmarshal.PushFront(validateCRC32) } } func drainBody(b io.ReadCloser, length int64) (out *bytes.Buffer, err error) { if length < 0 { length = 0 } buf := bytes.NewBuffer(make([]byte, 0, length)) if _, err = buf.ReadFrom(b); err != nil { return nil, err } if err = b.Close(); err != nil { return nil, err } return buf, nil } func disableCompression(r *request.Request) { r.HTTPRequest.Header.Set("Accept-Encoding", "identity") } func validateCRC32(r *request.Request) { if r.Error != nil { return // already have an error, no need to verify CRC } // Checksum validation is off, skip if aws.BoolValue(r.Config.DisableComputeChecksums) { return } // Try to get CRC from response header := r.HTTPResponse.Header.Get("X-Amz-Crc32") if header == "" { return // No header, skip } expected, err := strconv.ParseUint(header, 10, 32) if err != nil { return // Could not determine CRC value, skip } buf, err := drainBody(r.HTTPResponse.Body, r.HTTPResponse.ContentLength) if err != nil { // failed to read the response body, skip return } // Reset body for subsequent reads r.HTTPResponse.Body = ioutil.NopCloser(bytes.NewReader(buf.Bytes())) // Compute the CRC checksum crc := crc32.ChecksumIEEE(buf.Bytes()) if crc != uint32(expected) { // CRC does not match, set a retryable error r.Retryable = aws.Bool(true) r.Error = awserr.New("CRC32CheckFailed", "CRC32 integrity check failed", nil) } } aws-sdk-go-1.4.22/service/dynamodb/customizations_test.go000066400000000000000000000054071300374646400235070ustar00rootroot00000000000000package dynamodb_test import ( "bytes" "io/ioutil" "net/http" "os" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/dynamodb" ) var db *dynamodb.DynamoDB func TestMain(m *testing.M) { db = dynamodb.New(unit.Session, &aws.Config{ MaxRetries: aws.Int(2), }) db.Handlers.Send.Clear() // mock sending os.Exit(m.Run()) } func mockCRCResponse(svc *dynamodb.DynamoDB, status int, body, crc string) (req *request.Request) { header := http.Header{} header.Set("x-amz-crc32", crc) req, _ = svc.ListTablesRequest(nil) req.Handlers.Send.PushBack(func(*request.Request) { req.HTTPResponse = &http.Response{ ContentLength: int64(len(body)), StatusCode: status, Body: ioutil.NopCloser(bytes.NewReader([]byte(body))), Header: header, } }) req.Send() return } func TestDefaultRetryRules(t *testing.T) { d := dynamodb.New(unit.Session, &aws.Config{MaxRetries: aws.Int(-1)}) assert.Equal(t, d.MaxRetries(), 10) } func TestCustomRetryRules(t *testing.T) { d := dynamodb.New(unit.Session, &aws.Config{MaxRetries: aws.Int(2)}) assert.Equal(t, d.MaxRetries(), 2) } func TestValidateCRC32NoHeaderSkip(t *testing.T) { req := mockCRCResponse(db, 200, "{}", "") assert.NoError(t, req.Error) } func TestValidateCRC32InvalidHeaderSkip(t *testing.T) { req := mockCRCResponse(db, 200, "{}", "ABC") assert.NoError(t, req.Error) } func TestValidateCRC32AlreadyErrorSkip(t *testing.T) { req := mockCRCResponse(db, 400, "{}", "1234") assert.Error(t, req.Error) assert.NotEqual(t, "CRC32CheckFailed", req.Error.(awserr.Error).Code()) } func TestValidateCRC32IsValid(t *testing.T) { req := mockCRCResponse(db, 200, `{"TableNames":["A"]}`, "3090163698") assert.NoError(t, req.Error) // CRC check does not affect output parsing out := req.Data.(*dynamodb.ListTablesOutput) assert.Equal(t, "A", *out.TableNames[0]) } func TestValidateCRC32DoesNotMatch(t *testing.T) { req := mockCRCResponse(db, 200, "{}", "1234") assert.Error(t, req.Error) assert.Equal(t, "CRC32CheckFailed", req.Error.(awserr.Error).Code()) assert.Equal(t, 2, req.RetryCount) } func TestValidateCRC32DoesNotMatchNoComputeChecksum(t *testing.T) { svc := dynamodb.New(unit.Session, &aws.Config{ MaxRetries: aws.Int(2), DisableComputeChecksums: aws.Bool(true), }) svc.Handlers.Send.Clear() // mock sending req := mockCRCResponse(svc, 200, `{"TableNames":["A"]}`, "1234") assert.NoError(t, req.Error) assert.Equal(t, 0, int(req.RetryCount)) // CRC check disabled. Does not affect output parsing out := req.Data.(*dynamodb.ListTablesOutput) assert.Equal(t, "A", *out.TableNames[0]) } aws-sdk-go-1.4.22/service/dynamodb/dynamodbattribute/000077500000000000000000000000001300374646400225415ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/dynamodb/dynamodbattribute/converter.go000066400000000000000000000247621300374646400251120ustar00rootroot00000000000000package dynamodbattribute import ( "bytes" "encoding/json" "fmt" "reflect" "runtime" "strconv" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/service/dynamodb" ) // ConvertToMap accepts a map[string]interface{} or struct and converts it to a // map[string]*dynamodb.AttributeValue. // // If in contains any structs, it is first JSON encoded/decoded it to convert it // to a map[string]interface{}, so `json` struct tags are respected. // // Deprecated: Use MarshalMap instead func ConvertToMap(in interface{}) (item map[string]*dynamodb.AttributeValue, err error) { defer func() { if r := recover(); r != nil { if e, ok := r.(runtime.Error); ok { err = e } else if s, ok := r.(string); ok { err = fmt.Errorf(s) } else { err = r.(error) } item = nil } }() if in == nil { return nil, awserr.New("SerializationError", "in must be a map[string]interface{} or struct, got ", nil) } v := reflect.ValueOf(in) if v.Kind() != reflect.Struct && !(v.Kind() == reflect.Map && v.Type().Key().Kind() == reflect.String) { return nil, awserr.New("SerializationError", fmt.Sprintf("in must be a map[string]interface{} or struct, got %s", v.Type().String()), nil) } if isTyped(reflect.TypeOf(in)) { var out map[string]interface{} in = convertToUntyped(in, out) } item = make(map[string]*dynamodb.AttributeValue) for k, v := range in.(map[string]interface{}) { item[k] = convertTo(v) } return item, nil } // ConvertFromMap accepts a map[string]*dynamodb.AttributeValue and converts it to a // map[string]interface{} or struct. // // If v points to a struct, the result is first converted it to a // map[string]interface{}, then JSON encoded/decoded it to convert to a struct, // so `json` struct tags are respected. // // Deprecated: Use UnmarshalMap instead func ConvertFromMap(item map[string]*dynamodb.AttributeValue, v interface{}) (err error) { defer func() { if r := recover(); r != nil { if e, ok := r.(runtime.Error); ok { err = e } else if s, ok := r.(string); ok { err = fmt.Errorf(s) } else { err = r.(error) } item = nil } }() rv := reflect.ValueOf(v) if rv.Kind() != reflect.Ptr || rv.IsNil() { return awserr.New("SerializationError", fmt.Sprintf("v must be a non-nil pointer to a map[string]interface{} or struct, got %s", rv.Type()), nil) } if rv.Elem().Kind() != reflect.Struct && !(rv.Elem().Kind() == reflect.Map && rv.Elem().Type().Key().Kind() == reflect.String) { return awserr.New("SerializationError", fmt.Sprintf("v must be a non-nil pointer to a map[string]interface{} or struct, got %s", rv.Type()), nil) } m := make(map[string]interface{}) for k, v := range item { m[k] = convertFrom(v) } if isTyped(reflect.TypeOf(v)) { err = convertToTyped(m, v) } else { rv.Elem().Set(reflect.ValueOf(m)) } return err } // ConvertToList accepts an array or slice and converts it to a // []*dynamodb.AttributeValue. // // Converting []byte fields to dynamodb.AttributeValue are only currently supported // if the input is a map[string]interface{} type. []byte within typed structs are not // converted correctly and are converted into base64 strings. This is a known bug, // and will be fixed in a later release. // // If in contains any structs, it is first JSON encoded/decoded it to convert it // to a []interface{}, so `json` struct tags are respected. // // Deprecated: Use MarshalList instead func ConvertToList(in interface{}) (item []*dynamodb.AttributeValue, err error) { defer func() { if r := recover(); r != nil { if e, ok := r.(runtime.Error); ok { err = e } else if s, ok := r.(string); ok { err = fmt.Errorf(s) } else { err = r.(error) } item = nil } }() if in == nil { return nil, awserr.New("SerializationError", "in must be an array or slice, got ", nil) } v := reflect.ValueOf(in) if v.Kind() != reflect.Array && v.Kind() != reflect.Slice { return nil, awserr.New("SerializationError", fmt.Sprintf("in must be an array or slice, got %s", v.Type().String()), nil) } if isTyped(reflect.TypeOf(in)) { var out []interface{} in = convertToUntyped(in, out) } item = make([]*dynamodb.AttributeValue, 0, len(in.([]interface{}))) for _, v := range in.([]interface{}) { item = append(item, convertTo(v)) } return item, nil } // ConvertFromList accepts a []*dynamodb.AttributeValue and converts it to an array or // slice. // // If v contains any structs, the result is first converted it to a // []interface{}, then JSON encoded/decoded it to convert to a typed array or // slice, so `json` struct tags are respected. // // Deprecated: Use UnmarshalList instead func ConvertFromList(item []*dynamodb.AttributeValue, v interface{}) (err error) { defer func() { if r := recover(); r != nil { if e, ok := r.(runtime.Error); ok { err = e } else if s, ok := r.(string); ok { err = fmt.Errorf(s) } else { err = r.(error) } item = nil } }() rv := reflect.ValueOf(v) if rv.Kind() != reflect.Ptr || rv.IsNil() { return awserr.New("SerializationError", fmt.Sprintf("v must be a non-nil pointer to an array or slice, got %s", rv.Type()), nil) } if rv.Elem().Kind() != reflect.Array && rv.Elem().Kind() != reflect.Slice { return awserr.New("SerializationError", fmt.Sprintf("v must be a non-nil pointer to an array or slice, got %s", rv.Type()), nil) } l := make([]interface{}, 0, len(item)) for _, v := range item { l = append(l, convertFrom(v)) } if isTyped(reflect.TypeOf(v)) { err = convertToTyped(l, v) } else { rv.Elem().Set(reflect.ValueOf(l)) } return err } // ConvertTo accepts any interface{} and converts it to a *dynamodb.AttributeValue. // // If in contains any structs, it is first JSON encoded/decoded it to convert it // to a interface{}, so `json` struct tags are respected. // // Deprecated: Use Marshal instead func ConvertTo(in interface{}) (item *dynamodb.AttributeValue, err error) { defer func() { if r := recover(); r != nil { if e, ok := r.(runtime.Error); ok { err = e } else if s, ok := r.(string); ok { err = fmt.Errorf(s) } else { err = r.(error) } item = nil } }() if in != nil && isTyped(reflect.TypeOf(in)) { var out interface{} in = convertToUntyped(in, out) } item = convertTo(in) return item, nil } // ConvertFrom accepts a *dynamodb.AttributeValue and converts it to any interface{}. // // If v contains any structs, the result is first converted it to a interface{}, // then JSON encoded/decoded it to convert to a struct, so `json` struct tags // are respected. // // Deprecated: Use Unmarshal instead func ConvertFrom(item *dynamodb.AttributeValue, v interface{}) (err error) { defer func() { if r := recover(); r != nil { if e, ok := r.(runtime.Error); ok { err = e } else if s, ok := r.(string); ok { err = fmt.Errorf(s) } else { err = r.(error) } item = nil } }() rv := reflect.ValueOf(v) if rv.Kind() != reflect.Ptr || rv.IsNil() { return awserr.New("SerializationError", fmt.Sprintf("v must be a non-nil pointer to an interface{} or struct, got %s", rv.Type()), nil) } if rv.Elem().Kind() != reflect.Interface && rv.Elem().Kind() != reflect.Struct { return awserr.New("SerializationError", fmt.Sprintf("v must be a non-nil pointer to an interface{} or struct, got %s", rv.Type()), nil) } res := convertFrom(item) if isTyped(reflect.TypeOf(v)) { err = convertToTyped(res, v) } else if res != nil { rv.Elem().Set(reflect.ValueOf(res)) } return err } func isTyped(v reflect.Type) bool { switch v.Kind() { case reflect.Struct: return true case reflect.Array, reflect.Slice: if isTyped(v.Elem()) { return true } case reflect.Map: if isTyped(v.Key()) { return true } if isTyped(v.Elem()) { return true } case reflect.Ptr: return isTyped(v.Elem()) } return false } func convertToUntyped(in, out interface{}) interface{} { b, err := json.Marshal(in) if err != nil { panic(err) } decoder := json.NewDecoder(bytes.NewReader(b)) decoder.UseNumber() err = decoder.Decode(&out) if err != nil { panic(err) } return out } func convertToTyped(in, out interface{}) error { b, err := json.Marshal(in) if err != nil { return err } decoder := json.NewDecoder(bytes.NewReader(b)) return decoder.Decode(&out) } func convertTo(in interface{}) *dynamodb.AttributeValue { a := &dynamodb.AttributeValue{} if in == nil { a.NULL = new(bool) *a.NULL = true return a } if m, ok := in.(map[string]interface{}); ok { a.M = make(map[string]*dynamodb.AttributeValue) for k, v := range m { a.M[k] = convertTo(v) } return a } v := reflect.ValueOf(in) switch v.Kind() { case reflect.Bool: a.BOOL = new(bool) *a.BOOL = v.Bool() case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64: a.N = new(string) *a.N = strconv.FormatInt(v.Int(), 10) case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64: a.N = new(string) *a.N = strconv.FormatUint(v.Uint(), 10) case reflect.Float32, reflect.Float64: a.N = new(string) *a.N = strconv.FormatFloat(v.Float(), 'f', -1, 64) case reflect.String: if n, ok := in.(json.Number); ok { a.N = new(string) *a.N = n.String() } else { a.S = new(string) *a.S = v.String() } case reflect.Slice: switch v.Type() { case reflect.TypeOf(([]byte)(nil)): a.B = v.Bytes() default: a.L = make([]*dynamodb.AttributeValue, v.Len()) for i := 0; i < v.Len(); i++ { a.L[i] = convertTo(v.Index(i).Interface()) } } default: panic(fmt.Sprintf("the type %s is not supported", v.Type().String())) } return a } func convertFrom(a *dynamodb.AttributeValue) interface{} { if a.S != nil { return *a.S } if a.N != nil { // Number is tricky b/c we don't know which numeric type to use. Here we // simply try the different types from most to least restrictive. if n, err := strconv.ParseInt(*a.N, 10, 64); err == nil { return int(n) } if n, err := strconv.ParseUint(*a.N, 10, 64); err == nil { return uint(n) } n, err := strconv.ParseFloat(*a.N, 64) if err != nil { panic(err) } return n } if a.BOOL != nil { return *a.BOOL } if a.NULL != nil { return nil } if a.M != nil { m := make(map[string]interface{}) for k, v := range a.M { m[k] = convertFrom(v) } return m } if a.L != nil { l := make([]interface{}, len(a.L)) for index, v := range a.L { l[index] = convertFrom(v) } return l } if a.B != nil { return a.B } panic(fmt.Sprintf("%#v is not a supported dynamodb.AttributeValue", a)) } aws-sdk-go-1.4.22/service/dynamodb/dynamodbattribute/converter_examples_test.go000066400000000000000000000025031300374646400300340ustar00rootroot00000000000000package dynamodbattribute_test import ( "fmt" "reflect" "github.com/aws/aws-sdk-go/service/dynamodb/dynamodbattribute" ) func ExampleConvertTo() { type Record struct { MyField string Letters []string Numbers []int } r := Record{ MyField: "MyFieldValue", Letters: []string{"a", "b", "c", "d"}, Numbers: []int{1, 2, 3}, } av, err := dynamodbattribute.ConvertTo(r) fmt.Println("err", err) fmt.Println("MyField", av.M["MyField"]) fmt.Println("Letters", av.M["Letters"]) fmt.Println("Numbers", av.M["Numbers"]) // Output: // err // MyField { // S: "MyFieldValue" // } // Letters { // L: [ // { // S: "a" // }, // { // S: "b" // }, // { // S: "c" // }, // { // S: "d" // } // ] // } // Numbers { // L: [{ // N: "1" // },{ // N: "2" // },{ // N: "3" // }] // } } func ExampleConvertFrom() { type Record struct { MyField string Letters []string A2Num map[string]int } r := Record{ MyField: "MyFieldValue", Letters: []string{"a", "b", "c", "d"}, A2Num: map[string]int{"a": 1, "b": 2, "c": 3}, } av, err := dynamodbattribute.ConvertTo(r) r2 := Record{} err = dynamodbattribute.ConvertFrom(av, &r2) fmt.Println(err, reflect.DeepEqual(r, r2)) // Output: // true } aws-sdk-go-1.4.22/service/dynamodb/dynamodbattribute/converter_test.go000066400000000000000000000405151300374646400261430ustar00rootroot00000000000000package dynamodbattribute import ( "math" "testing" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/service/dynamodb" ) type mySimpleStruct struct { String string Int int Uint uint Float32 float32 Float64 float64 Bool bool Null *interface{} } type myComplexStruct struct { Simple []mySimpleStruct } type converterTestInput struct { input interface{} expected interface{} err awserr.Error inputType string // "enum" of types } var trueValue = true var falseValue = false var converterScalarInputs = []converterTestInput{ { input: nil, expected: &dynamodb.AttributeValue{NULL: &trueValue}, }, { input: "some string", expected: &dynamodb.AttributeValue{S: aws.String("some string")}, }, { input: true, expected: &dynamodb.AttributeValue{BOOL: &trueValue}, }, { input: false, expected: &dynamodb.AttributeValue{BOOL: &falseValue}, }, { input: 3.14, expected: &dynamodb.AttributeValue{N: aws.String("3.14")}, }, { input: math.MaxFloat32, expected: &dynamodb.AttributeValue{N: aws.String("340282346638528860000000000000000000000")}, }, { input: math.MaxFloat64, expected: &dynamodb.AttributeValue{N: aws.String("179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000")}, }, { input: 12, expected: &dynamodb.AttributeValue{N: aws.String("12")}, }, { input: mySimpleStruct{}, expected: &dynamodb.AttributeValue{ M: map[string]*dynamodb.AttributeValue{ "Bool": {BOOL: &falseValue}, "Float32": {N: aws.String("0")}, "Float64": {N: aws.String("0")}, "Int": {N: aws.String("0")}, "Null": {NULL: &trueValue}, "String": {S: aws.String("")}, "Uint": {N: aws.String("0")}, }, }, inputType: "mySimpleStruct", }, } var converterMapTestInputs = []converterTestInput{ // Scalar tests { input: nil, err: awserr.New("SerializationError", "in must be a map[string]interface{} or struct, got ", nil), }, { input: map[string]interface{}{"string": "some string"}, expected: map[string]*dynamodb.AttributeValue{"string": {S: aws.String("some string")}}, }, { input: map[string]interface{}{"bool": true}, expected: map[string]*dynamodb.AttributeValue{"bool": {BOOL: &trueValue}}, }, { input: map[string]interface{}{"bool": false}, expected: map[string]*dynamodb.AttributeValue{"bool": {BOOL: &falseValue}}, }, { input: map[string]interface{}{"null": nil}, expected: map[string]*dynamodb.AttributeValue{"null": {NULL: &trueValue}}, }, { input: map[string]interface{}{"float": 3.14}, expected: map[string]*dynamodb.AttributeValue{"float": {N: aws.String("3.14")}}, }, { input: map[string]interface{}{"float": math.MaxFloat32}, expected: map[string]*dynamodb.AttributeValue{"float": {N: aws.String("340282346638528860000000000000000000000")}}, }, { input: map[string]interface{}{"float": math.MaxFloat64}, expected: map[string]*dynamodb.AttributeValue{"float": {N: aws.String("179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000")}}, }, { input: map[string]interface{}{"int": int(12)}, expected: map[string]*dynamodb.AttributeValue{"int": {N: aws.String("12")}}, }, { input: map[string]interface{}{"byte": []byte{48, 49}}, expected: map[string]*dynamodb.AttributeValue{"byte": {B: []byte{48, 49}}}, }, // List { input: map[string]interface{}{"list": []interface{}{"a string", 12, 3.14, true, nil, false}}, expected: map[string]*dynamodb.AttributeValue{ "list": { L: []*dynamodb.AttributeValue{ {S: aws.String("a string")}, {N: aws.String("12")}, {N: aws.String("3.14")}, {BOOL: &trueValue}, {NULL: &trueValue}, {BOOL: &falseValue}, }, }, }, }, // Map { input: map[string]interface{}{"map": map[string]interface{}{"nestedint": 12}}, expected: map[string]*dynamodb.AttributeValue{ "map": { M: map[string]*dynamodb.AttributeValue{ "nestedint": { N: aws.String("12"), }, }, }, }, }, // Structs { input: mySimpleStruct{}, expected: map[string]*dynamodb.AttributeValue{ "Bool": {BOOL: &falseValue}, "Float32": {N: aws.String("0")}, "Float64": {N: aws.String("0")}, "Int": {N: aws.String("0")}, "Null": {NULL: &trueValue}, "String": {S: aws.String("")}, "Uint": {N: aws.String("0")}, }, inputType: "mySimpleStruct", }, { input: myComplexStruct{}, expected: map[string]*dynamodb.AttributeValue{ "Simple": {NULL: &trueValue}, }, inputType: "myComplexStruct", }, { input: myComplexStruct{Simple: []mySimpleStruct{{Int: -2}, {Uint: 5}}}, expected: map[string]*dynamodb.AttributeValue{ "Simple": { L: []*dynamodb.AttributeValue{ { M: map[string]*dynamodb.AttributeValue{ "Bool": {BOOL: &falseValue}, "Float32": {N: aws.String("0")}, "Float64": {N: aws.String("0")}, "Int": {N: aws.String("-2")}, "Null": {NULL: &trueValue}, "String": {S: aws.String("")}, "Uint": {N: aws.String("0")}, }, }, { M: map[string]*dynamodb.AttributeValue{ "Bool": {BOOL: &falseValue}, "Float32": {N: aws.String("0")}, "Float64": {N: aws.String("0")}, "Int": {N: aws.String("0")}, "Null": {NULL: &trueValue}, "String": {S: aws.String("")}, "Uint": {N: aws.String("5")}, }, }, }, }, }, inputType: "myComplexStruct", }, } var converterListTestInputs = []converterTestInput{ { input: nil, err: awserr.New("SerializationError", "in must be an array or slice, got ", nil), }, { input: []interface{}{}, expected: []*dynamodb.AttributeValue{}, }, { input: []interface{}{"a string", 12, 3.14, true, nil, false}, expected: []*dynamodb.AttributeValue{ {S: aws.String("a string")}, {N: aws.String("12")}, {N: aws.String("3.14")}, {BOOL: &trueValue}, {NULL: &trueValue}, {BOOL: &falseValue}, }, }, { input: []mySimpleStruct{{}}, expected: []*dynamodb.AttributeValue{ { M: map[string]*dynamodb.AttributeValue{ "Bool": {BOOL: &falseValue}, "Float32": {N: aws.String("0")}, "Float64": {N: aws.String("0")}, "Int": {N: aws.String("0")}, "Null": {NULL: &trueValue}, "String": {S: aws.String("")}, "Uint": {N: aws.String("0")}, }, }, }, inputType: "mySimpleStruct", }, } func TestConvertTo(t *testing.T) { for _, test := range converterScalarInputs { testConvertTo(t, test) } } func testConvertTo(t *testing.T, test converterTestInput) { actual, err := ConvertTo(test.input) if test.err != nil { if err == nil { t.Errorf("ConvertTo with input %#v retured %#v, expected error `%s`", test.input, actual, test.err) } else if err.Error() != test.err.Error() { t.Errorf("ConvertTo with input %#v retured error `%s`, expected error `%s`", test.input, err, test.err) } } else { if err != nil { t.Errorf("ConvertTo with input %#v retured error `%s`", test.input, err) } compareObjects(t, test.expected, actual) } } func TestConvertFrom(t *testing.T) { // Using the same inputs from TestConvertTo, test the reverse mapping. for _, test := range converterScalarInputs { if test.expected != nil { testConvertFrom(t, test) } } } func testConvertFrom(t *testing.T, test converterTestInput) { switch test.inputType { case "mySimpleStruct": var actual mySimpleStruct if err := ConvertFrom(test.expected.(*dynamodb.AttributeValue), &actual); err != nil { t.Errorf("ConvertFrom with input %#v retured error `%s`", test.expected, err) } compareObjects(t, test.input, actual) case "myComplexStruct": var actual myComplexStruct if err := ConvertFrom(test.expected.(*dynamodb.AttributeValue), &actual); err != nil { t.Errorf("ConvertFrom with input %#v retured error `%s`", test.expected, err) } compareObjects(t, test.input, actual) default: var actual interface{} if err := ConvertFrom(test.expected.(*dynamodb.AttributeValue), &actual); err != nil { t.Errorf("ConvertFrom with input %#v retured error `%s`", test.expected, err) } compareObjects(t, test.input, actual) } } func TestConvertFromError(t *testing.T) { // Test that we get an error using ConvertFrom to convert to a map. var actual map[string]interface{} expected := awserr.New("SerializationError", `v must be a non-nil pointer to an interface{} or struct, got *map[string]interface {}`, nil).Error() if err := ConvertFrom(nil, &actual); err == nil { t.Errorf("ConvertFrom with input %#v returned no error, expected error `%s`", nil, expected) } else if err.Error() != expected { t.Errorf("ConvertFrom with input %#v returned error `%s`, expected error `%s`", nil, err, expected) } // Test that we get an error using ConvertFrom to convert to a list. var actual2 []interface{} expected = awserr.New("SerializationError", `v must be a non-nil pointer to an interface{} or struct, got *[]interface {}`, nil).Error() if err := ConvertFrom(nil, &actual2); err == nil { t.Errorf("ConvertFrom with input %#v returned no error, expected error `%s`", nil, expected) } else if err.Error() != expected { t.Errorf("ConvertFrom with input %#v returned error `%s`, expected error `%s`", nil, err, expected) } } func TestConvertToMap(t *testing.T) { for _, test := range converterMapTestInputs { testConvertToMap(t, test) } } func testConvertToMap(t *testing.T, test converterTestInput) { actual, err := ConvertToMap(test.input) if test.err != nil { if err == nil { t.Errorf("ConvertToMap with input %#v retured %#v, expected error `%s`", test.input, actual, test.err) } else if err.Error() != test.err.Error() { t.Errorf("ConvertToMap with input %#v retured error `%s`, expected error `%s`", test.input, err, test.err) } } else { if err != nil { t.Errorf("ConvertToMap with input %#v retured error `%s`", test.input, err) } compareObjects(t, test.expected, actual) } } func TestConvertFromMap(t *testing.T) { // Using the same inputs from TestConvertToMap, test the reverse mapping. for _, test := range converterMapTestInputs { if test.expected != nil { testConvertFromMap(t, test) } } } func testConvertFromMap(t *testing.T, test converterTestInput) { switch test.inputType { case "mySimpleStruct": var actual mySimpleStruct if err := ConvertFromMap(test.expected.(map[string]*dynamodb.AttributeValue), &actual); err != nil { t.Errorf("ConvertFromMap with input %#v retured error `%s`", test.expected, err) } compareObjects(t, test.input, actual) case "myComplexStruct": var actual myComplexStruct if err := ConvertFromMap(test.expected.(map[string]*dynamodb.AttributeValue), &actual); err != nil { t.Errorf("ConvertFromMap with input %#v retured error `%s`", test.expected, err) } compareObjects(t, test.input, actual) default: var actual map[string]interface{} if err := ConvertFromMap(test.expected.(map[string]*dynamodb.AttributeValue), &actual); err != nil { t.Errorf("ConvertFromMap with input %#v retured error `%s`", test.expected, err) } compareObjects(t, test.input, actual) } } func TestConvertFromMapError(t *testing.T) { // Test that we get an error using ConvertFromMap to convert to an interface{}. var actual interface{} expected := awserr.New("SerializationError", `v must be a non-nil pointer to a map[string]interface{} or struct, got *interface {}`, nil).Error() if err := ConvertFromMap(nil, &actual); err == nil { t.Errorf("ConvertFromMap with input %#v returned no error, expected error `%s`", nil, expected) } else if err.Error() != expected { t.Errorf("ConvertFromMap with input %#v returned error `%s`, expected error `%s`", nil, err, expected) } // Test that we get an error using ConvertFromMap to convert to a slice. var actual2 []interface{} expected = awserr.New("SerializationError", `v must be a non-nil pointer to a map[string]interface{} or struct, got *[]interface {}`, nil).Error() if err := ConvertFromMap(nil, &actual2); err == nil { t.Errorf("ConvertFromMap with input %#v returned no error, expected error `%s`", nil, expected) } else if err.Error() != expected { t.Errorf("ConvertFromMap with input %#v returned error `%s`, expected error `%s`", nil, err, expected) } } func TestConvertToList(t *testing.T) { for _, test := range converterListTestInputs { testConvertToList(t, test) } } func testConvertToList(t *testing.T, test converterTestInput) { actual, err := ConvertToList(test.input) if test.err != nil { if err == nil { t.Errorf("ConvertToList with input %#v retured %#v, expected error `%s`", test.input, actual, test.err) } else if err.Error() != test.err.Error() { t.Errorf("ConvertToList with input %#v retured error `%s`, expected error `%s`", test.input, err, test.err) } } else { if err != nil { t.Errorf("ConvertToList with input %#v retured error `%s`", test.input, err) } compareObjects(t, test.expected, actual) } } func TestConvertFromList(t *testing.T) { // Using the same inputs from TestConvertToList, test the reverse mapping. for _, test := range converterListTestInputs { if test.expected != nil { testConvertFromList(t, test) } } } func testConvertFromList(t *testing.T, test converterTestInput) { switch test.inputType { case "mySimpleStruct": var actual []mySimpleStruct if err := ConvertFromList(test.expected.([]*dynamodb.AttributeValue), &actual); err != nil { t.Errorf("ConvertFromList with input %#v retured error `%s`", test.expected, err) } compareObjects(t, test.input, actual) case "myComplexStruct": var actual []myComplexStruct if err := ConvertFromList(test.expected.([]*dynamodb.AttributeValue), &actual); err != nil { t.Errorf("ConvertFromList with input %#v retured error `%s`", test.expected, err) } compareObjects(t, test.input, actual) default: var actual []interface{} if err := ConvertFromList(test.expected.([]*dynamodb.AttributeValue), &actual); err != nil { t.Errorf("ConvertFromList with input %#v retured error `%s`", test.expected, err) } compareObjects(t, test.input, actual) } } func TestConvertFromListError(t *testing.T) { // Test that we get an error using ConvertFromList to convert to a map. var actual map[string]interface{} expected := awserr.New("SerializationError", `v must be a non-nil pointer to an array or slice, got *map[string]interface {}`, nil).Error() if err := ConvertFromList(nil, &actual); err == nil { t.Errorf("ConvertFromList with input %#v returned no error, expected error `%s`", nil, expected) } else if err.Error() != expected { t.Errorf("ConvertFromList with input %#v returned error `%s`, expected error `%s`", nil, err, expected) } // Test that we get an error using ConvertFromList to convert to a struct. var actual2 myComplexStruct expected = awserr.New("SerializationError", `v must be a non-nil pointer to an array or slice, got *dynamodbattribute.myComplexStruct`, nil).Error() if err := ConvertFromList(nil, &actual2); err == nil { t.Errorf("ConvertFromList with input %#v returned no error, expected error `%s`", nil, expected) } else if err.Error() != expected { t.Errorf("ConvertFromList with input %#v returned error `%s`, expected error `%s`", nil, err, expected) } // Test that we get an error using ConvertFromList to convert to an interface{}. var actual3 interface{} expected = awserr.New("SerializationError", `v must be a non-nil pointer to an array or slice, got *interface {}`, nil).Error() if err := ConvertFromList(nil, &actual3); err == nil { t.Errorf("ConvertFromList with input %#v returned no error, expected error `%s`", nil, expected) } else if err.Error() != expected { t.Errorf("ConvertFromList with input %#v returned error `%s`, expected error `%s`", nil, err, expected) } } func BenchmarkConvertTo(b *testing.B) { d := mySimpleStruct{ String: "abc", Int: 123, Uint: 123, Float32: 123.321, Float64: 123.321, Bool: true, Null: nil, } for i := 0; i < b.N; i++ { _, err := ConvertTo(d) if err != nil { b.Fatal("unexpected error", err) } } } aws-sdk-go-1.4.22/service/dynamodb/dynamodbattribute/decode.go000066400000000000000000000444621300374646400243250ustar00rootroot00000000000000package dynamodbattribute import ( "fmt" "reflect" "strconv" "time" "github.com/aws/aws-sdk-go/service/dynamodb" ) // An Unmarshaler is an interface to provide custom unmarshaling of // AttributeValues. Use this to provide custom logic determining // how AttributeValues should be unmarshaled. // type ExampleUnmarshaler struct { // Value int // } // // type (u *exampleUnmarshaler) UnmarshalDynamoDBAttributeValue(av *dynamodb.AttributeValue) error { // if av.N == nil { // return nil // } // // n, err := strconv.ParseInt(*av.N, 10, 0) // if err != nil { // return err // } // // u.Value = n // return nil // } type Unmarshaler interface { UnmarshalDynamoDBAttributeValue(*dynamodb.AttributeValue) error } // Unmarshal will unmarshal DynamoDB AttributeValues to Go value types. // Both generic interface{} and concrete types are valid unmarshal // destination types. // // Unmarshal will allocate maps, slices, and pointers as needed to // unmarshal the AttributeValue into the provided type value. // // When unmarshaling AttributeValues into structs Unmarshal matches // the field names of the struct to the AttributeValue Map keys. // Initially it will look for exact field name matching, but will // fall back to case insensitive if not exact match is found. // // With the exception of omitempty, omitemptyelem, binaryset, numberset // and stringset all struct tags used by Marshal are also used by // Unmarshal. // // When decoding AttributeValues to interfaces Unmarshal will use the // following types. // // []byte, AV Binary (B) // [][]byte, AV Binary Set (BS) // bool, AV Boolean (BOOL) // []interface{}, AV List (L) // map[string]interface{}, AV Map (M) // float64, AV Number (N) // Number, AV Number (N) with UseNumber set // []float64, AV Number Set (NS) // []Number, AV Number Set (NS) with UseNumber set // string, AV String (S) // []string, AV String Set (SS) // // If the Decoder option, UseNumber is set numbers will be unmarshaled // as Number values instead of float64. Use this to maintain the original // string formating of the number as it was represented in the AttributeValue. // In addition provides additional opportunities to parse the number // string based on individual use cases. // // When unmarshaling any error that occurs will halt the unmarshal // and return the error. // // The output value provided must be a non-nil pointer func Unmarshal(av *dynamodb.AttributeValue, out interface{}) error { return NewDecoder().Decode(av, out) } // UnmarshalMap is an alias for Unmarshal which unmarshals from // a map of AttributeValues. // // The output value provided must be a non-nil pointer func UnmarshalMap(m map[string]*dynamodb.AttributeValue, out interface{}) error { return NewDecoder().Decode(&dynamodb.AttributeValue{M: m}, out) } // UnmarshalList is an alias for Unmarshal func which unmarshals // a slice of AttributeValues. // // The output value provided must be a non-nil pointer func UnmarshalList(l []*dynamodb.AttributeValue, out interface{}) error { return NewDecoder().Decode(&dynamodb.AttributeValue{L: l}, out) } // UnmarshalListOfMaps is an alias for Unmarshal func which unmarshals a // slice of maps of attribute values. // // This is useful for when you need to unmarshal the Items from a DynamoDB // Query API call. // // The output value provided must be a non-nil pointer func UnmarshalListOfMaps(l []map[string]*dynamodb.AttributeValue, out interface{}) error { items := make([]*dynamodb.AttributeValue, len(l)) for i, m := range l { items[i] = &dynamodb.AttributeValue{M: m} } return UnmarshalList(items, out) } // A Decoder provides unmarshaling AttributeValues to Go value types. type Decoder struct { MarshalOptions // Instructs the decoder to decode AttributeValue Numbers as // Number type instead of float64 when the destination type // is interface{}. Similar to encoding/json.Number UseNumber bool } // NewDecoder creates a new Decoder with default configuration. Use // the `opts` functional options to override the default configuration. func NewDecoder(opts ...func(*Decoder)) *Decoder { d := &Decoder{ MarshalOptions: MarshalOptions{ SupportJSONTags: true, }, } for _, o := range opts { o(d) } return d } // Decode will unmarshal an AttributeValue into a Go value type. An error // will be return if the decoder is unable to unmarshal the AttributeValue // to the provide Go value type. // // The output value provided must be a non-nil pointer func (d *Decoder) Decode(av *dynamodb.AttributeValue, out interface{}, opts ...func(*Decoder)) error { v := reflect.ValueOf(out) if v.Kind() != reflect.Ptr || v.IsNil() || !v.IsValid() { return &InvalidUnmarshalError{Type: reflect.TypeOf(out)} } return d.decode(av, v, tag{}) } var stringInterfaceMapType = reflect.TypeOf(map[string]interface{}(nil)) var byteSliceType = reflect.TypeOf([]byte(nil)) var byteSliceSlicetype = reflect.TypeOf([][]byte(nil)) var numberType = reflect.TypeOf(Number("")) func (d *Decoder) decode(av *dynamodb.AttributeValue, v reflect.Value, fieldTag tag) error { var u Unmarshaler if av == nil || av.NULL != nil { u, v = indirect(v, true) if u != nil { return u.UnmarshalDynamoDBAttributeValue(av) } return d.decodeNull(v) } u, v = indirect(v, false) if u != nil { return u.UnmarshalDynamoDBAttributeValue(av) } switch { case len(av.B) != 0: return d.decodeBinary(av.B, v) case av.BOOL != nil: return d.decodeBool(av.BOOL, v) case len(av.BS) != 0: return d.decodeBinarySet(av.BS, v) case len(av.L) != 0: return d.decodeList(av.L, v) case len(av.M) != 0: return d.decodeMap(av.M, v) case av.N != nil: return d.decodeNumber(av.N, v) case len(av.NS) != 0: return d.decodeNumberSet(av.NS, v) case av.S != nil: return d.decodeString(av.S, v, fieldTag) case len(av.SS) != 0: return d.decodeStringSet(av.SS, v) } return nil } func (d *Decoder) decodeBinary(b []byte, v reflect.Value) error { if v.Kind() == reflect.Interface { buf := make([]byte, len(b)) copy(buf, b) v.Set(reflect.ValueOf(buf)) return nil } if v.Kind() != reflect.Slice { return &UnmarshalTypeError{Value: "binary", Type: v.Type()} } if v.Type() == byteSliceType { // Optimization for []byte types if v.IsNil() || v.Cap() < len(b) { v.Set(reflect.MakeSlice(byteSliceType, len(b), len(b))) } else if v.Len() != len(b) { v.SetLen(len(b)) } copy(v.Interface().([]byte), b) return nil } switch v.Type().Elem().Kind() { case reflect.Uint8: // Fallback to reflection copy for type aliased of []byte type if v.IsNil() || v.Cap() < len(b) { v.Set(reflect.MakeSlice(v.Type(), len(b), len(b))) } else if v.Len() != len(b) { v.SetLen(len(b)) } for i := 0; i < len(b); i++ { v.Index(i).SetUint(uint64(b[i])) } default: if v.Kind() == reflect.Array && v.Type().Elem().Kind() == reflect.Uint8 { reflect.Copy(v, reflect.ValueOf(b)) break } return &UnmarshalTypeError{Value: "binary", Type: v.Type()} } return nil } func (d *Decoder) decodeBool(b *bool, v reflect.Value) error { switch v.Kind() { case reflect.Bool, reflect.Interface: v.Set(reflect.ValueOf(*b)) default: return &UnmarshalTypeError{Value: "bool", Type: v.Type()} } return nil } func (d *Decoder) decodeBinarySet(bs [][]byte, v reflect.Value) error { switch v.Kind() { case reflect.Slice: // Make room for the slice elements if needed if v.IsNil() || v.Cap() < len(bs) { // What about if ignoring nil/empty values? v.Set(reflect.MakeSlice(v.Type(), 0, len(bs))) } case reflect.Array: // Limited to capacity of existing array. case reflect.Interface: set := make([][]byte, len(bs)) for i, b := range bs { if err := d.decodeBinary(b, reflect.ValueOf(&set[i]).Elem()); err != nil { return err } } v.Set(reflect.ValueOf(set)) return nil default: return &UnmarshalTypeError{Value: "binary set", Type: v.Type()} } for i := 0; i < v.Cap() && i < len(bs); i++ { v.SetLen(i + 1) u, elem := indirect(v.Index(i), false) if u != nil { return u.UnmarshalDynamoDBAttributeValue(&dynamodb.AttributeValue{BS: bs}) } if err := d.decodeBinary(bs[i], elem); err != nil { return err } } return nil } func (d *Decoder) decodeNumber(n *string, v reflect.Value) error { switch v.Kind() { case reflect.Interface: i, err := d.decodeNumberToInterface(n) if err != nil { return err } v.Set(reflect.ValueOf(i)) return nil case reflect.String: if v.Type() == numberType { // Support Number value type v.Set(reflect.ValueOf(Number(*n))) return nil } v.Set(reflect.ValueOf(*n)) case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64: i, err := strconv.ParseInt(*n, 10, 64) if err != nil { return err } if v.OverflowInt(i) { return &UnmarshalTypeError{ Value: fmt.Sprintf("number overflow, %s", *n), Type: v.Type(), } } v.SetInt(i) case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64: i, err := strconv.ParseUint(*n, 10, 64) if err != nil { return err } if v.OverflowUint(i) { return &UnmarshalTypeError{ Value: fmt.Sprintf("number overflow, %s", *n), Type: v.Type(), } } v.SetUint(i) case reflect.Float32, reflect.Float64: i, err := strconv.ParseFloat(*n, 64) if err != nil { return err } if v.OverflowFloat(i) { return &UnmarshalTypeError{ Value: fmt.Sprintf("number overflow, %s", *n), Type: v.Type(), } } v.SetFloat(i) default: return &UnmarshalTypeError{Value: "number", Type: v.Type()} } return nil } func (d *Decoder) decodeNumberToInterface(n *string) (interface{}, error) { if d.UseNumber { return Number(*n), nil } // Default to float64 for all numbers return strconv.ParseFloat(*n, 64) } func (d *Decoder) decodeNumberSet(ns []*string, v reflect.Value) error { switch v.Kind() { case reflect.Slice: // Make room for the slice elements if needed if v.IsNil() || v.Cap() < len(ns) { // What about if ignoring nil/empty values? v.Set(reflect.MakeSlice(v.Type(), 0, len(ns))) } case reflect.Array: // Limited to capacity of existing array. case reflect.Interface: if d.UseNumber { set := make([]Number, len(ns)) for i, n := range ns { if err := d.decodeNumber(n, reflect.ValueOf(&set[i]).Elem()); err != nil { return err } } v.Set(reflect.ValueOf(set)) } else { set := make([]float64, len(ns)) for i, n := range ns { if err := d.decodeNumber(n, reflect.ValueOf(&set[i]).Elem()); err != nil { return err } } v.Set(reflect.ValueOf(set)) } return nil default: return &UnmarshalTypeError{Value: "number set", Type: v.Type()} } for i := 0; i < v.Cap() && i < len(ns); i++ { v.SetLen(i + 1) u, elem := indirect(v.Index(i), false) if u != nil { return u.UnmarshalDynamoDBAttributeValue(&dynamodb.AttributeValue{NS: ns}) } if err := d.decodeNumber(ns[i], elem); err != nil { return err } } return nil } func (d *Decoder) decodeList(avList []*dynamodb.AttributeValue, v reflect.Value) error { switch v.Kind() { case reflect.Slice: // Make room for the slice elements if needed if v.IsNil() || v.Cap() < len(avList) { // What about if ignoring nil/empty values? v.Set(reflect.MakeSlice(v.Type(), 0, len(avList))) } case reflect.Array: // Limited to capacity of existing array. case reflect.Interface: s := make([]interface{}, len(avList)) for i, av := range avList { if err := d.decode(av, reflect.ValueOf(&s[i]).Elem(), tag{}); err != nil { return err } } v.Set(reflect.ValueOf(s)) return nil default: return &UnmarshalTypeError{Value: "list", Type: v.Type()} } // If v is not a slice, array for i := 0; i < v.Cap() && i < len(avList); i++ { v.SetLen(i + 1) if err := d.decode(avList[i], v.Index(i), tag{}); err != nil { return err } } return nil } func (d *Decoder) decodeMap(avMap map[string]*dynamodb.AttributeValue, v reflect.Value) error { switch v.Kind() { case reflect.Map: t := v.Type() if t.Key().Kind() != reflect.String { return &UnmarshalTypeError{Value: "map string key", Type: t.Key()} } if v.IsNil() { v.Set(reflect.MakeMap(t)) } case reflect.Struct: case reflect.Interface: v.Set(reflect.MakeMap(stringInterfaceMapType)) v = v.Elem() default: return &UnmarshalTypeError{Value: "map", Type: v.Type()} } if v.Kind() == reflect.Map { for k, av := range avMap { key := reflect.ValueOf(k) elem := reflect.New(v.Type().Elem()).Elem() if err := d.decode(av, elem, tag{}); err != nil { return err } v.SetMapIndex(key, elem) } } else if v.Kind() == reflect.Struct { fields := unionStructFields(v.Type(), d.MarshalOptions) for k, av := range avMap { if f, ok := fieldByName(fields, k); ok { fv := fieldByIndex(v, f.Index, func(v *reflect.Value) bool { v.Set(reflect.New(v.Type().Elem())) return true // to continue the loop. }) if err := d.decode(av, fv, f.tag); err != nil { return err } } } } return nil } func (d *Decoder) decodeNull(v reflect.Value) error { if v.IsValid() && v.CanSet() { v.Set(reflect.Zero(v.Type())) } return nil } func (d *Decoder) decodeString(s *string, v reflect.Value, fieldTag tag) error { if fieldTag.AsString { return d.decodeNumber(s, v) } // To maintain backwards compatibility with ConvertFrom family of methods which // converted strings to time.Time structs if _, ok := v.Interface().(time.Time); ok { t, err := time.Parse(time.RFC3339, *s) if err != nil { return err } v.Set(reflect.ValueOf(t)) return nil } switch v.Kind() { case reflect.String: v.SetString(*s) case reflect.Interface: // Ensure type aliasing is handled properly v.Set(reflect.ValueOf(*s).Convert(v.Type())) default: return &UnmarshalTypeError{Value: "string", Type: v.Type()} } return nil } func (d *Decoder) decodeStringSet(ss []*string, v reflect.Value) error { switch v.Kind() { case reflect.Slice: // Make room for the slice elements if needed if v.IsNil() || v.Cap() < len(ss) { v.Set(reflect.MakeSlice(v.Type(), 0, len(ss))) } case reflect.Array: // Limited to capacity of existing array. case reflect.Interface: set := make([]string, len(ss)) for i, s := range ss { if err := d.decodeString(s, reflect.ValueOf(&set[i]).Elem(), tag{}); err != nil { return err } } v.Set(reflect.ValueOf(set)) return nil default: return &UnmarshalTypeError{Value: "string set", Type: v.Type()} } for i := 0; i < v.Cap() && i < len(ss); i++ { v.SetLen(i + 1) u, elem := indirect(v.Index(i), false) if u != nil { return u.UnmarshalDynamoDBAttributeValue(&dynamodb.AttributeValue{SS: ss}) } if err := d.decodeString(ss[i], elem, tag{}); err != nil { return err } } return nil } // indirect will walk a value's interface or pointer value types. Returning // the final value or the value a unmarshaler is defined on. // // Based on the enoding/json type reflect value type indirection in Go Stdlib // https://golang.org/src/encoding/json/decode.go indirect func. func indirect(v reflect.Value, decodingNull bool) (Unmarshaler, reflect.Value) { if v.Kind() != reflect.Ptr && v.Type().Name() != "" && v.CanAddr() { v = v.Addr() } for { if v.Kind() == reflect.Interface && !v.IsNil() { e := v.Elem() if e.Kind() == reflect.Ptr && !e.IsNil() && (!decodingNull || e.Elem().Kind() == reflect.Ptr) { v = e continue } } if v.Kind() != reflect.Ptr { break } if v.Elem().Kind() != reflect.Ptr && decodingNull && v.CanSet() { break } if v.IsNil() { v.Set(reflect.New(v.Type().Elem())) } if v.Type().NumMethod() > 0 { if u, ok := v.Interface().(Unmarshaler); ok { return u, reflect.Value{} } } v = v.Elem() } return nil, v } // A Number represents a Attributevalue number literal. type Number string // Float64 attempts to cast the number ot a float64, returning // the result of the case or error if the case failed. func (n Number) Float64() (float64, error) { return strconv.ParseFloat(string(n), 64) } // Int64 attempts to cast the number ot a int64, returning // the result of the case or error if the case failed. func (n Number) Int64() (int64, error) { return strconv.ParseInt(string(n), 10, 64) } // Uint64 attempts to cast the number ot a uint64, returning // the result of the case or error if the case failed. func (n Number) Uint64() (uint64, error) { return strconv.ParseUint(string(n), 10, 64) } // String returns the raw number represented as a string func (n Number) String() string { return string(n) } type emptyOrigError struct{} func (e emptyOrigError) OrigErr() error { return nil } // An UnmarshalTypeError is an error type representing a error // unmarshaling the AttributeValue's element to a Go value type. // Includes details about the AttributeValue type and Go value type. type UnmarshalTypeError struct { emptyOrigError Value string Type reflect.Type } // Error returns the string representation of the error. // satisfying the error interface func (e *UnmarshalTypeError) Error() string { return fmt.Sprintf("%s: %s", e.Code(), e.Message()) } // Code returns the code of the error, satisfying the awserr.Error // interface. func (e *UnmarshalTypeError) Code() string { return "UnmarshalTypeError" } // Message returns the detailed message of the error, satisfying // the awserr.Error interface. func (e *UnmarshalTypeError) Message() string { return "cannot unmarshal " + e.Value + " into Go value of type " + e.Type.String() } // An InvalidUnmarshalError is an error type representing an invalid type // encountered while unmarshaling a AttributeValue to a Go value type. type InvalidUnmarshalError struct { emptyOrigError Type reflect.Type } // Error returns the string representation of the error. // satisfying the error interface func (e *InvalidUnmarshalError) Error() string { return fmt.Sprintf("%s: %s", e.Code(), e.Message()) } // Code returns the code of the error, satisfying the awserr.Error // interface. func (e *InvalidUnmarshalError) Code() string { return "InvalidUnmarshalError" } // Message returns the detailed message of the error, satisfying // the awserr.Error interface. func (e *InvalidUnmarshalError) Message() string { if e.Type == nil { return "cannot unmarshal to nil value" } if e.Type.Kind() != reflect.Ptr { return "cannot unmarshal to non-pointer value, got " + e.Type.String() } return "cannot unmarshal to nil value, " + e.Type.String() } aws-sdk-go-1.4.22/service/dynamodb/dynamodbattribute/decode_test.go000066400000000000000000000252001300374646400253510ustar00rootroot00000000000000package dynamodbattribute import ( "fmt" "reflect" "strconv" "testing" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/service/dynamodb" "github.com/stretchr/testify/assert" ) func TestUnmarshalErrorTypes(t *testing.T) { var _ awserr.Error = (*UnmarshalTypeError)(nil) var _ awserr.Error = (*InvalidUnmarshalError)(nil) } func TestUnmarshalShared(t *testing.T) { for i, c := range sharedTestCases { err := Unmarshal(c.in, c.actual) assertConvertTest(t, i, c.actual, c.expected, err, c.err) } } func TestUnmarshal(t *testing.T) { cases := []struct { in *dynamodb.AttributeValue actual, expected interface{} err error }{ //------------ // Sets //------------ { in: &dynamodb.AttributeValue{BS: [][]byte{ {48, 49}, {50, 51}, }}, actual: &[][]byte{}, expected: [][]byte{{48, 49}, {50, 51}}, }, { in: &dynamodb.AttributeValue{NS: []*string{ aws.String("123"), aws.String("321"), }}, actual: &[]int{}, expected: []int{123, 321}, }, { in: &dynamodb.AttributeValue{NS: []*string{ aws.String("123"), aws.String("321"), }}, actual: &[]interface{}{}, expected: []interface{}{123., 321.}, }, { in: &dynamodb.AttributeValue{SS: []*string{ aws.String("abc"), aws.String("123"), }}, actual: &[]string{}, expected: &[]string{"abc", "123"}, }, { in: &dynamodb.AttributeValue{SS: []*string{ aws.String("abc"), aws.String("123"), }}, actual: &[]*string{}, expected: &[]*string{aws.String("abc"), aws.String("123")}, }, //------------ // Interfaces //------------ { in: &dynamodb.AttributeValue{B: []byte{48, 49}}, actual: func() interface{} { var v interface{} return &v }(), expected: []byte{48, 49}, }, { in: &dynamodb.AttributeValue{BS: [][]byte{ {48, 49}, {50, 51}, }}, actual: func() interface{} { var v interface{} return &v }(), expected: [][]byte{{48, 49}, {50, 51}}, }, { in: &dynamodb.AttributeValue{BOOL: aws.Bool(true)}, actual: func() interface{} { var v interface{} return &v }(), expected: bool(true), }, { in: &dynamodb.AttributeValue{L: []*dynamodb.AttributeValue{ {S: aws.String("abc")}, {S: aws.String("123")}, }}, actual: func() interface{} { var v interface{} return &v }(), expected: []interface{}{"abc", "123"}, }, { in: &dynamodb.AttributeValue{M: map[string]*dynamodb.AttributeValue{ "123": {S: aws.String("abc")}, "abc": {S: aws.String("123")}, }}, actual: func() interface{} { var v interface{} return &v }(), expected: map[string]interface{}{"123": "abc", "abc": "123"}, }, { in: &dynamodb.AttributeValue{N: aws.String("123")}, actual: func() interface{} { var v interface{} return &v }(), expected: float64(123), }, { in: &dynamodb.AttributeValue{NS: []*string{ aws.String("123"), aws.String("321"), }}, actual: func() interface{} { var v interface{} return &v }(), expected: []float64{123., 321.}, }, { in: &dynamodb.AttributeValue{S: aws.String("123")}, actual: func() interface{} { var v interface{} return &v }(), expected: "123", }, { in: &dynamodb.AttributeValue{SS: []*string{ aws.String("123"), aws.String("321"), }}, actual: func() interface{} { var v interface{} return &v }(), expected: []string{"123", "321"}, }, { in: &dynamodb.AttributeValue{M: map[string]*dynamodb.AttributeValue{ "abc": {S: aws.String("123")}, "Cba": {S: aws.String("321")}, }}, actual: &struct{ Abc, Cba string }{}, expected: struct{ Abc, Cba string }{Abc: "123", Cba: "321"}, }, { in: &dynamodb.AttributeValue{N: aws.String("512")}, actual: new(uint8), err: &UnmarshalTypeError{ Value: fmt.Sprintf("number overflow, 512"), Type: reflect.TypeOf(uint8(0)), }, }, } for i, c := range cases { err := Unmarshal(c.in, c.actual) assertConvertTest(t, i, c.actual, c.expected, err, c.err) } } func TestInterfaceInput(t *testing.T) { var v interface{} expected := []interface{}{"abc", "123"} err := Unmarshal(&dynamodb.AttributeValue{L: []*dynamodb.AttributeValue{ {S: aws.String("abc")}, {S: aws.String("123")}, }}, &v) assertConvertTest(t, 0, v, expected, err, nil) } func TestUnmarshalError(t *testing.T) { cases := []struct { in *dynamodb.AttributeValue actual, expected interface{} err error }{ { in: &dynamodb.AttributeValue{}, actual: int(0), expected: nil, err: &InvalidUnmarshalError{Type: reflect.TypeOf(int(0))}, }, } for i, c := range cases { err := Unmarshal(c.in, c.actual) assertConvertTest(t, i, c.actual, c.expected, err, c.err) } } func TestUnmarshalListShared(t *testing.T) { for i, c := range sharedListTestCases { err := UnmarshalList(c.in, c.actual) assertConvertTest(t, i, c.actual, c.expected, err, c.err) } } func TestUnmarshalListError(t *testing.T) { cases := []struct { in []*dynamodb.AttributeValue actual, expected interface{} err error }{ { in: []*dynamodb.AttributeValue{}, actual: []interface{}{}, expected: nil, err: &InvalidUnmarshalError{Type: reflect.TypeOf([]interface{}{})}, }, } for i, c := range cases { err := UnmarshalList(c.in, c.actual) assertConvertTest(t, i, c.actual, c.expected, err, c.err) } } func TestUnmarshalMapShared(t *testing.T) { for i, c := range sharedMapTestCases { err := UnmarshalMap(c.in, c.actual) assertConvertTest(t, i, c.actual, c.expected, err, c.err) } } func TestUnmarshalMapError(t *testing.T) { cases := []struct { in map[string]*dynamodb.AttributeValue actual, expected interface{} err error }{ { in: map[string]*dynamodb.AttributeValue{}, actual: map[string]interface{}{}, expected: nil, err: &InvalidUnmarshalError{Type: reflect.TypeOf(map[string]interface{}{})}, }, { in: map[string]*dynamodb.AttributeValue{ "BOOL": {BOOL: aws.Bool(true)}, }, actual: &map[int]interface{}{}, expected: nil, err: &UnmarshalTypeError{Value: "map string key", Type: reflect.TypeOf(int(0))}, }, } for i, c := range cases { err := UnmarshalMap(c.in, c.actual) assertConvertTest(t, i, c.actual, c.expected, err, c.err) } } func TestUnmarshalListOfMaps(t *testing.T) { type testItem struct { Value string Value2 int } cases := []struct { in []map[string]*dynamodb.AttributeValue actual, expected interface{} err error }{ { // Simple map conversion. in: []map[string]*dynamodb.AttributeValue{ { "Value": &dynamodb.AttributeValue{ BOOL: aws.Bool(true), }, }, }, actual: &[]map[string]interface{}{}, expected: []map[string]interface{}{ { "Value": true, }, }, }, { // attribute to struct. in: []map[string]*dynamodb.AttributeValue{ { "Value": &dynamodb.AttributeValue{ S: aws.String("abc"), }, "Value2": &dynamodb.AttributeValue{ N: aws.String("123"), }, }, }, actual: &[]testItem{}, expected: []testItem{ { Value: "abc", Value2: 123, }, }, }, } for i, c := range cases { err := UnmarshalListOfMaps(c.in, c.actual) assertConvertTest(t, i, c.actual, c.expected, err, c.err) } } type unmarshalUnmarshaler struct { Value string Value2 int Value3 bool Value4 time.Time } func (u *unmarshalUnmarshaler) UnmarshalDynamoDBAttributeValue(av *dynamodb.AttributeValue) error { if av.M == nil { return fmt.Errorf("expected AttributeValue to be map") } if v, ok := av.M["abc"]; !ok { return fmt.Errorf("expected `abc` map key") } else if v.S == nil { return fmt.Errorf("expected `abc` map value string") } else { u.Value = *v.S } if v, ok := av.M["def"]; !ok { return fmt.Errorf("expected `def` map key") } else if v.N == nil { return fmt.Errorf("expected `def` map value number") } else { n, err := strconv.ParseInt(*v.N, 10, 64) if err != nil { return err } u.Value2 = int(n) } if v, ok := av.M["ghi"]; !ok { return fmt.Errorf("expected `ghi` map key") } else if v.BOOL == nil { return fmt.Errorf("expected `ghi` map value number") } else { u.Value3 = *v.BOOL } if v, ok := av.M["jkl"]; !ok { return fmt.Errorf("expected `jkl` map key") } else if v.S == nil { return fmt.Errorf("expected `jkl` map value string") } else { t, err := time.Parse(time.RFC3339, *v.S) if err != nil { return err } u.Value4 = t } return nil } func TestUnmarshalUnmashaler(t *testing.T) { u := &unmarshalUnmarshaler{} av := &dynamodb.AttributeValue{ M: map[string]*dynamodb.AttributeValue{ "abc": {S: aws.String("value")}, "def": {N: aws.String("123")}, "ghi": {BOOL: aws.Bool(true)}, "jkl": {S: aws.String("2016-05-03T17:06:26.209072Z")}, }, } err := Unmarshal(av, u) assert.NoError(t, err) assert.Equal(t, "value", u.Value) assert.Equal(t, 123, u.Value2) assert.Equal(t, true, u.Value3) assert.Equal(t, testDate, u.Value4) } func TestDecodeUseNumber(t *testing.T) { u := map[string]interface{}{} av := &dynamodb.AttributeValue{ M: map[string]*dynamodb.AttributeValue{ "abc": {S: aws.String("value")}, "def": {N: aws.String("123")}, "ghi": {BOOL: aws.Bool(true)}, }, } decoder := NewDecoder(func(d *Decoder) { d.UseNumber = true }) err := decoder.Decode(av, &u) assert.NoError(t, err) assert.Equal(t, "value", u["abc"]) n, ok := u["def"].(Number) assert.True(t, ok) assert.Equal(t, "123", n.String()) assert.Equal(t, true, u["ghi"]) } func TestDecodeUseNumberNumberSet(t *testing.T) { u := map[string]interface{}{} av := &dynamodb.AttributeValue{ M: map[string]*dynamodb.AttributeValue{ "ns": { NS: []*string{ aws.String("123"), aws.String("321"), }, }, }, } decoder := NewDecoder(func(d *Decoder) { d.UseNumber = true }) err := decoder.Decode(av, &u) assert.NoError(t, err) ns, ok := u["ns"].([]Number) assert.True(t, ok) assert.Equal(t, "123", ns[0].String()) assert.Equal(t, "321", ns[1].String()) } func TestDecodeEmbeddedPointerStruct(t *testing.T) { type B struct { Bint int } type C struct { Cint int } type A struct { Aint int *B *C } av := &dynamodb.AttributeValue{ M: map[string]*dynamodb.AttributeValue{ "Aint": { N: aws.String("321"), }, "Bint": { N: aws.String("123"), }, }, } decoder := NewDecoder() a := A{} err := decoder.Decode(av, &a) assert.NoError(t, err) assert.Equal(t, 321, a.Aint) // Embedded pointer struct can be created automatically. assert.Equal(t, 123, a.Bint) // But not for absent fields. assert.Nil(t, a.C) } aws-sdk-go-1.4.22/service/dynamodb/dynamodbattribute/doc.go000066400000000000000000000047521300374646400236450ustar00rootroot00000000000000// Package dynamodbattribute provides marshaling utilities for marshaling to // dynamodb.AttributeValue types and unmarshaling to Go value types. These // utilities allow you to marshal slices, maps, structs, and scalar values // to and from dynamodb.AttributeValue. These are useful when marshaling // Go value tyes to dynamodb.AttributeValue for DynamoDB requests, or // unmarshaling the dynamodb.AttributeValue back into a Go value type. // // Marshal Go value types to dynamodb.AttributeValue: See (ExampleMarshal) // // type Record struct { // MyField string // Letters []string // A2Num map[string]int // } // // ... // // r := Record{ // MyField: "dynamodbattribute.Marshal example", // Letters: []string{"a", "b", "c", "d"}, // A2Num: map[string]int{"a": 1, "b": 2, "c": 3}, // } // av, err := dynamodbattribute.Marshal(r) // fmt.Println(av, err) // // Unmarshal dynamodb.AttributeValue to Go value type: See (ExampleUnmarshal) // // r2 := Record{} // err = dynamodbattribute.Unmarshal(av, &r2) // fmt.Println(err, reflect.DeepEqual(r, r2)) // // Marshal Go value type for DynamoDB.PutItem: // // sess, err := session.NewSession() // if err != nil { // fmt.Println("Failed create session", err) // return // } // // svc := dynamodb.New(sess) // item, err := dynamodbattribute.MarshalMap(r) // if err != nil { // fmt.Println("Failed to convert", err) // return // } // result, err := svc.PutItem(&dynamodb.PutItemInput{ // Item: item, // TableName: aws.String("exampleTable"), // }) // // // // The ConvertTo, ConvertToList, ConvertToMap, ConvertFrom, ConvertFromMap // and ConvertFromList methods have been deprecated. The Marshal and Unmarshal // functions should be used instead. The ConvertTo|From marshallers do not // support BinarySet, NumberSet, nor StringSets, and will incorrect marshal // binary data fields in structs as base64 strings. // // The Marshal and Unmarshal functions correct this behavior, and removes // the reliance on encoding.json. `json` struct tags are still supported. In // addition support for a new struct tag `dynamodbav` was added. Support for // the json.Marshaler and json.Unmarshaler interfaces have been removed and // replaced with have been replaced with dynamodbattribute.Marshaler and // dynamodbattribute.Unmarshaler interfaces. // // `time.Time` is marshaled as RFC3339 format. package dynamodbattribute aws-sdk-go-1.4.22/service/dynamodb/dynamodbattribute/encode.go000066400000000000000000000371241300374646400243340ustar00rootroot00000000000000package dynamodbattribute import ( "fmt" "reflect" "strconv" "time" "github.com/aws/aws-sdk-go/service/dynamodb" ) // A Marshaler is an interface to provide custom marshaling of Go value types // to AttributeValues. Use this to provide custom logic determining how a // Go Value type should be marshaled. // // type ExampleMarshaler struct { // Value int // } // type (m *ExampleMarshaler) MarshalDynamoDBAttributeValue(av *dynamodb.AttributeValue) error { // n := fmt.Sprintf("%v", m.Value) // av.N = &n // // return nil // } // type Marshaler interface { MarshalDynamoDBAttributeValue(*dynamodb.AttributeValue) error } // Marshal will serialize the passed in Go value type into a DynamoDB AttributeValue // type. This value can be used in DynamoDB API operations to simplify marshaling // your Go value types into AttributeValues. // // Marshal will recursively transverse the passed in value marshaling its // contents into a AttributeValue. Marshal supports basic scalars // (int,uint,float,bool,string), maps, slices, and structs. Anonymous // nested types are flattened based on Go anonymous type visibility. // // Marshaling slices to AttributeValue will default to a List for all // types except for []byte and [][]byte. []byte will be marshaled as // Binary data (B), and [][]byte will be marshaled as binary data set // (BS). // // `dynamodbav` struct tag can be used to control how the value will be // marshaled into a AttributeValue. // // // Field is ignored // Field int `dynamodbav:"-"` // // // Field AttributeValue map key "myName" // Field int `dynamodbav:"myName"` // // // Field AttributeValue map key "myName", and // // Field is omitted if it is empty // Field int `dynamodbav:"myName,omitempty"` // // // Field AttributeValue map key "Field", and // // Field is omitted if it is empty // Field int `dynamodbav:",omitempty"` // // // Field's elems will be omitted if empty // // only valid for slices, and maps. // Field []string `dynamodbav:",omitemptyelem"` // // // Field will be marshaled as a AttributeValue string // // only value for number types, (int,uint,float) // Field int `dynamodbav:",string"` // // // Field will be marshaled as a binary set // Field [][]byte `dynamodbav:",binaryset"` // // // Field will be marshaled as a number set // Field []int `dynamodbav:",numberset"` // // // Field will be marshaled as a string set // Field []string `dynamodbav:",stringset"` // // The omitempty tag is only used during Marshaling and is ignored for // Unmarshal. Any zero value or a value when marshaled results in a // AttributeValue NULL will be added to AttributeValue Maps during struct // marshal. The omitemptyelem tag works the same as omitempty except it // applies to maps and slices instead of struct fields, and will not be // included in the marshaled AttributeValue Map, List, or Set. // // For convenience and backwards compatibility with ConvertTo functions // json struct tags are supported by the Marshal and Unmarshal. If // both json and dynamodbav struct tags are provided the json tag will // be ignored in favor of dynamodbav. // // All struct fields and with anonymous fields, are marshaled unless the // any of the following conditions are meet. // // - the field is not exported // - json or dynamodbav field tag is "-" // - json or dynamodbav field tag specifies "omitempty", and is empty. // // Pointer and interfaces values encode as the value pointed to or contained // in the interface. A nil value encodes as the AttributeValue NULL value. // // Channel, complex, and function values are not encoded and will be skipped // when walking the value to be marshaled. // // When marshaling any error that occurs will halt the marshal and return // the error. // // Marshal cannot represent cyclic data structures and will not handle them. // Passing cyclic structures to Marshal will result in an infinite recursion. func Marshal(in interface{}) (*dynamodb.AttributeValue, error) { return NewEncoder().Encode(in) } // MarshalMap is an alias for Marshal func which marshals Go value // type to a map of AttributeValues. func MarshalMap(in interface{}) (map[string]*dynamodb.AttributeValue, error) { av, err := NewEncoder().Encode(in) if err != nil || av == nil || av.M == nil { return map[string]*dynamodb.AttributeValue{}, err } return av.M, nil } // MarshalList is an alias for Marshal func which marshals Go value // type to a slice of AttributeValues. func MarshalList(in interface{}) ([]*dynamodb.AttributeValue, error) { av, err := NewEncoder().Encode(in) if err != nil || av == nil || av.L == nil { return []*dynamodb.AttributeValue{}, err } return av.L, nil } // A MarshalOptions is a collection of options shared between marshaling // and unmarshaling type MarshalOptions struct { // States that the encoding/json struct tags should be supported. // if a `dynamodbav` struct tag is also provided the encoding/json // tag will be ignored. // // Enabled by default. SupportJSONTags bool } // An Encoder provides marshaling Go value types to AttributeValues. type Encoder struct { MarshalOptions // Empty strings, "", will be marked as NULL AttributeValue types. // Empty strings are not valid values for DynamoDB. Will not apply // to lists, sets, or maps. Use the struct tag `omitemptyelem` // to skip empty (zero) values in lists, sets and maps. // // Enabled by default. NullEmptyString bool } // NewEncoder creates a new Encoder with default configuration. Use // the `opts` functional options to override the default configuration. func NewEncoder(opts ...func(*Encoder)) *Encoder { e := &Encoder{ MarshalOptions: MarshalOptions{ SupportJSONTags: true, }, NullEmptyString: true, } for _, o := range opts { o(e) } return e } // Encode will marshal a Go value type to an AttributeValue. Returning // the AttributeValue constructed or error. func (e *Encoder) Encode(in interface{}) (*dynamodb.AttributeValue, error) { av := &dynamodb.AttributeValue{} if err := e.encode(av, reflect.ValueOf(in), tag{}); err != nil { return nil, err } return av, nil } func fieldByIndex(v reflect.Value, index []int, OnEmbeddedNilStruct func(*reflect.Value) bool) reflect.Value { fv := v for i, x := range index { if i > 0 { if fv.Kind() == reflect.Ptr && fv.Type().Elem().Kind() == reflect.Struct { if fv.IsNil() && !OnEmbeddedNilStruct(&fv) { break } fv = fv.Elem() } } fv = fv.Field(x) } return fv } func (e *Encoder) encode(av *dynamodb.AttributeValue, v reflect.Value, fieldTag tag) error { // We should check for omitted values first before dereferencing. if fieldTag.OmitEmpty && emptyValue(v) { encodeNull(av) return nil } // Handle both pointers and interface conversion into types v = valueElem(v) if v.Kind() != reflect.Invalid { if used, err := tryMarshaler(av, v); used { return err } } switch v.Kind() { case reflect.Invalid: encodeNull(av) case reflect.Struct: return e.encodeStruct(av, v) case reflect.Map: return e.encodeMap(av, v, fieldTag) case reflect.Slice, reflect.Array: return e.encodeSlice(av, v, fieldTag) case reflect.Chan, reflect.Func, reflect.UnsafePointer: // do nothing for unsupported types default: return e.encodeScalar(av, v, fieldTag) } return nil } func (e *Encoder) encodeStruct(av *dynamodb.AttributeValue, v reflect.Value) error { // To maintain backwards compatibility with ConvertTo family of methods which // converted time.Time structs to strings if t, ok := v.Interface().(time.Time); ok { s := t.Format(time.RFC3339Nano) av.S = &s return nil } av.M = map[string]*dynamodb.AttributeValue{} fields := unionStructFields(v.Type(), e.MarshalOptions) for _, f := range fields { if f.Name == "" { return &InvalidMarshalError{msg: "map key cannot be empty"} } found := true fv := fieldByIndex(v, f.Index, func(v *reflect.Value) bool { found = false return false // to break the loop. }) if !found { continue } elem := &dynamodb.AttributeValue{} err := e.encode(elem, fv, f.tag) if err != nil { return err } skip, err := keepOrOmitEmpty(f.OmitEmpty, elem, err) if err != nil { return err } else if skip { continue } av.M[f.Name] = elem } if len(av.M) == 0 { encodeNull(av) } return nil } func (e *Encoder) encodeMap(av *dynamodb.AttributeValue, v reflect.Value, fieldTag tag) error { av.M = map[string]*dynamodb.AttributeValue{} for _, key := range v.MapKeys() { keyName := fmt.Sprint(key.Interface()) if keyName == "" { return &InvalidMarshalError{msg: "map key cannot be empty"} } elemVal := v.MapIndex(key) elem := &dynamodb.AttributeValue{} err := e.encode(elem, elemVal, tag{}) skip, err := keepOrOmitEmpty(fieldTag.OmitEmptyElem, elem, err) if err != nil { return err } else if skip { continue } av.M[keyName] = elem } if len(av.M) == 0 { encodeNull(av) } return nil } func (e *Encoder) encodeSlice(av *dynamodb.AttributeValue, v reflect.Value, fieldTag tag) error { switch v.Type().Elem().Kind() { case reflect.Uint8: b := v.Bytes() if len(b) == 0 { encodeNull(av) return nil } av.B = append([]byte{}, b...) default: var elemFn func(dynamodb.AttributeValue) error if fieldTag.AsBinSet || v.Type() == byteSliceSlicetype { // Binary Set av.BS = make([][]byte, 0, v.Len()) elemFn = func(elem dynamodb.AttributeValue) error { if elem.B == nil { return &InvalidMarshalError{msg: "binary set must only contain non-nil byte slices"} } av.BS = append(av.BS, elem.B) return nil } } else if fieldTag.AsNumSet { // Number Set av.NS = make([]*string, 0, v.Len()) elemFn = func(elem dynamodb.AttributeValue) error { if elem.N == nil { return &InvalidMarshalError{msg: "number set must only contain non-nil string numbers"} } av.NS = append(av.NS, elem.N) return nil } } else if fieldTag.AsStrSet { // String Set av.SS = make([]*string, 0, v.Len()) elemFn = func(elem dynamodb.AttributeValue) error { if elem.S == nil { return &InvalidMarshalError{msg: "string set must only contain non-nil strings"} } av.SS = append(av.SS, elem.S) return nil } } else { // List av.L = make([]*dynamodb.AttributeValue, 0, v.Len()) elemFn = func(elem dynamodb.AttributeValue) error { av.L = append(av.L, &elem) return nil } } if n, err := e.encodeList(v, fieldTag, elemFn); err != nil { return err } else if n == 0 { encodeNull(av) } } return nil } func (e *Encoder) encodeList(v reflect.Value, fieldTag tag, elemFn func(dynamodb.AttributeValue) error) (int, error) { count := 0 for i := 0; i < v.Len(); i++ { elem := dynamodb.AttributeValue{} err := e.encode(&elem, v.Index(i), tag{OmitEmpty: fieldTag.OmitEmptyElem}) skip, err := keepOrOmitEmpty(fieldTag.OmitEmptyElem, &elem, err) if err != nil { return 0, err } else if skip { continue } if err := elemFn(elem); err != nil { return 0, err } count++ } return count, nil } func (e *Encoder) encodeScalar(av *dynamodb.AttributeValue, v reflect.Value, fieldTag tag) error { if v.Type() == numberType { s := v.String() if fieldTag.AsString { av.S = &s } else { av.N = &s } return nil } switch v.Kind() { case reflect.Bool: av.BOOL = new(bool) *av.BOOL = v.Bool() case reflect.String: if err := e.encodeString(av, v); err != nil { return err } default: // Fallback to encoding numbers, will return invalid type if not supported if err := e.encodeNumber(av, v); err != nil { return err } if fieldTag.AsString && av.NULL == nil && av.N != nil { av.S = av.N av.N = nil } } return nil } func (e *Encoder) encodeNumber(av *dynamodb.AttributeValue, v reflect.Value) error { if used, err := tryMarshaler(av, v); used { return err } var out string switch v.Kind() { case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64: out = encodeInt(v.Int()) case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64: out = encodeUint(v.Uint()) case reflect.Float32, reflect.Float64: out = encodeFloat(v.Float()) default: return &unsupportedMarshalTypeError{Type: v.Type()} } av.N = &out return nil } func (e *Encoder) encodeString(av *dynamodb.AttributeValue, v reflect.Value) error { if used, err := tryMarshaler(av, v); used { return err } switch v.Kind() { case reflect.String: s := v.String() if len(s) == 0 && e.NullEmptyString { encodeNull(av) } else { av.S = &s } default: return &unsupportedMarshalTypeError{Type: v.Type()} } return nil } func encodeInt(i int64) string { return strconv.FormatInt(i, 10) } func encodeUint(u uint64) string { return strconv.FormatUint(u, 10) } func encodeFloat(f float64) string { return strconv.FormatFloat(f, 'f', -1, 64) } func encodeNull(av *dynamodb.AttributeValue) { t := true *av = dynamodb.AttributeValue{NULL: &t} } func valueElem(v reflect.Value) reflect.Value { switch v.Kind() { case reflect.Interface, reflect.Ptr: for v.Kind() == reflect.Interface || v.Kind() == reflect.Ptr { v = v.Elem() } } return v } func emptyValue(v reflect.Value) bool { switch v.Kind() { case reflect.Array, reflect.Map, reflect.Slice, reflect.String: return v.Len() == 0 case reflect.Bool: return !v.Bool() case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64: return v.Int() == 0 case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr: return v.Uint() == 0 case reflect.Float32, reflect.Float64: return v.Float() == 0 case reflect.Interface, reflect.Ptr: return v.IsNil() } return false } func tryMarshaler(av *dynamodb.AttributeValue, v reflect.Value) (bool, error) { if v.Kind() != reflect.Ptr && v.Type().Name() != "" && v.CanAddr() { v = v.Addr() } if v.Type().NumMethod() == 0 { return false, nil } if m, ok := v.Interface().(Marshaler); ok { return true, m.MarshalDynamoDBAttributeValue(av) } return false, nil } func keepOrOmitEmpty(omitEmpty bool, av *dynamodb.AttributeValue, err error) (bool, error) { if err != nil { if _, ok := err.(*unsupportedMarshalTypeError); ok { return true, nil } return false, err } if av.NULL != nil && omitEmpty { return true, nil } return false, nil } // An InvalidMarshalError is an error type representing an error // occurring when marshaling a Go value type to an AttributeValue. type InvalidMarshalError struct { emptyOrigError msg string } // Error returns the string representation of the error. // satisfying the error interface func (e *InvalidMarshalError) Error() string { return fmt.Sprintf("%s: %s", e.Code(), e.Message()) } // Code returns the code of the error, satisfying the awserr.Error // interface. func (e *InvalidMarshalError) Code() string { return "InvalidMarshalError" } // Message returns the detailed message of the error, satisfying // the awserr.Error interface. func (e *InvalidMarshalError) Message() string { return e.msg } // An unsupportedMarshalTypeError represents a Go value type // which cannot be marshaled into an AttributeValue and should // be skipped by the marshaler. type unsupportedMarshalTypeError struct { emptyOrigError Type reflect.Type } // Error returns the string representation of the error. // satisfying the error interface func (e *unsupportedMarshalTypeError) Error() string { return fmt.Sprintf("%s: %s", e.Code(), e.Message()) } // Code returns the code of the error, satisfying the awserr.Error // interface. func (e *unsupportedMarshalTypeError) Code() string { return "unsupportedMarshalTypeError" } // Message returns the detailed message of the error, satisfying // the awserr.Error interface. func (e *unsupportedMarshalTypeError) Message() string { return "Go value type " + e.Type.String() + " is not supported" } aws-sdk-go-1.4.22/service/dynamodb/dynamodbattribute/encode_test.go000066400000000000000000000074561300374646400254000ustar00rootroot00000000000000package dynamodbattribute import ( "fmt" "testing" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/service/dynamodb" "github.com/stretchr/testify/assert" ) func TestMarshalErrorTypes(t *testing.T) { var _ awserr.Error = (*InvalidMarshalError)(nil) var _ awserr.Error = (*unsupportedMarshalTypeError)(nil) } func TestMarshalShared(t *testing.T) { for i, c := range sharedTestCases { av, err := Marshal(c.expected) assertConvertTest(t, i, av, c.in, err, c.err) } } func TestMarshalListShared(t *testing.T) { for i, c := range sharedListTestCases { av, err := MarshalList(c.expected) assertConvertTest(t, i, av, c.in, err, c.err) } } func TestMarshalMapShared(t *testing.T) { for i, c := range sharedMapTestCases { av, err := MarshalMap(c.expected) assertConvertTest(t, i, av, c.in, err, c.err) } } type marshalMarshaler struct { Value string Value2 int Value3 bool Value4 time.Time } func (m *marshalMarshaler) MarshalDynamoDBAttributeValue(av *dynamodb.AttributeValue) error { av.M = map[string]*dynamodb.AttributeValue{ "abc": {S: &m.Value}, "def": {N: aws.String(fmt.Sprintf("%d", m.Value2))}, "ghi": {BOOL: &m.Value3}, "jkl": {S: aws.String(m.Value4.Format(time.RFC3339Nano))}, } return nil } func TestMarshalMashaler(t *testing.T) { m := &marshalMarshaler{ Value: "value", Value2: 123, Value3: true, Value4: testDate, } expect := &dynamodb.AttributeValue{ M: map[string]*dynamodb.AttributeValue{ "abc": {S: aws.String("value")}, "def": {N: aws.String("123")}, "ghi": {BOOL: aws.Bool(true)}, "jkl": {S: aws.String("2016-05-03T17:06:26.209072Z")}, }, } actual, err := Marshal(m) assert.NoError(t, err) assert.Equal(t, expect, actual) } type testOmitEmptyElemListStruct struct { Values []string `dynamodbav:",omitemptyelem"` } type testOmitEmptyElemMapStruct struct { Values map[string]interface{} `dynamodbav:",omitemptyelem"` } func TestMarshalListOmitEmptyElem(t *testing.T) { expect := &dynamodb.AttributeValue{ M: map[string]*dynamodb.AttributeValue{ "Values": {L: []*dynamodb.AttributeValue{ {S: aws.String("abc")}, {S: aws.String("123")}, }}, }, } m := testOmitEmptyElemListStruct{Values: []string{"abc", "", "123"}} actual, err := Marshal(m) assert.NoError(t, err) assert.Equal(t, expect, actual) } func TestMarshalMapOmitEmptyElem(t *testing.T) { expect := &dynamodb.AttributeValue{ M: map[string]*dynamodb.AttributeValue{ "Values": {M: map[string]*dynamodb.AttributeValue{ "abc": {N: aws.String("123")}, "klm": {S: aws.String("abc")}, }}, }, } m := testOmitEmptyElemMapStruct{Values: map[string]interface{}{ "abc": 123., "efg": nil, "hij": "", "klm": "abc", }} actual, err := Marshal(m) assert.NoError(t, err) assert.Equal(t, expect, actual) } type testOmitEmptyScalar struct { IntZero int `dynamodbav:",omitempty"` IntPtrNil *int `dynamodbav:",omitempty"` IntPtrSetZero *int `dynamodbav:",omitempty"` } func TestMarshalOmitEmpty(t *testing.T) { expect := &dynamodb.AttributeValue{ M: map[string]*dynamodb.AttributeValue{ "IntPtrSetZero": {N: aws.String("0")}, }, } m := testOmitEmptyScalar{IntPtrSetZero: aws.Int(0)} actual, err := Marshal(m) assert.NoError(t, err) assert.Equal(t, expect, actual) } func TestEncodeEmbeddedPointerStruct(t *testing.T) { type B struct { Bint int } type C struct { Cint int } type A struct { Aint int *B *C } a := A{Aint: 321, B: &B{123}} assert.Equal(t, 321, a.Aint) assert.Equal(t, 123, a.Bint) assert.Nil(t, a.C) actual, err := Marshal(a) assert.NoError(t, err) expect := &dynamodb.AttributeValue{ M: map[string]*dynamodb.AttributeValue{ "Aint": { N: aws.String("321"), }, "Bint": { N: aws.String("123"), }, }, } assert.Equal(t, expect, actual) } aws-sdk-go-1.4.22/service/dynamodb/dynamodbattribute/field.go000066400000000000000000000155201300374646400241560ustar00rootroot00000000000000package dynamodbattribute import ( "reflect" "sort" "strings" ) type field struct { tag Name string NameFromTag bool Index []int Type reflect.Type } func fieldByName(fields []field, name string) (field, bool) { foldExists := false foldField := field{} for _, f := range fields { if f.Name == name { return f, true } if !foldExists && strings.EqualFold(f.Name, name) { foldField = f foldExists = true } } return foldField, foldExists } func buildField(pIdx []int, i int, sf reflect.StructField, fieldTag tag) field { f := field{ Name: sf.Name, Type: sf.Type, tag: fieldTag, } if len(fieldTag.Name) != 0 { f.NameFromTag = true f.Name = fieldTag.Name } f.Index = make([]int, len(pIdx)+1) copy(f.Index, pIdx) f.Index[len(pIdx)] = i return f } func unionStructFields(t reflect.Type, opts MarshalOptions) []field { fields := enumFields(t, opts) sort.Sort(fieldsByName(fields)) fields = visibleFields(fields) return fields } // enumFields will recursively iterate through a structure and its nested // anonymous fields. // // Based on the enoding/json struct field enumeration of the Go Stdlib // https://golang.org/src/encoding/json/encode.go typeField func. func enumFields(t reflect.Type, opts MarshalOptions) []field { // Fields to explore current := []field{} next := []field{{Type: t}} // count of queued names count := map[reflect.Type]int{} nextCount := map[reflect.Type]int{} visited := map[reflect.Type]struct{}{} fields := []field{} for len(next) > 0 { current, next = next, current[:0] count, nextCount = nextCount, map[reflect.Type]int{} for _, f := range current { if _, ok := visited[f.Type]; ok { continue } visited[f.Type] = struct{}{} for i := 0; i < f.Type.NumField(); i++ { sf := f.Type.Field(i) if sf.PkgPath != "" && !sf.Anonymous { // Ignore unexported and non-anonymous fields // unexported but anonymous field may still be used if // the type has exported nested fields continue } fieldTag := tag{} fieldTag.parseAVTag(sf.Tag) if opts.SupportJSONTags && fieldTag == (tag{}) { fieldTag.parseJSONTag(sf.Tag) } if fieldTag.Ignore { continue } ft := sf.Type if ft.Name() == "" && ft.Kind() == reflect.Ptr { ft = ft.Elem() } structField := buildField(f.Index, i, sf, fieldTag) structField.Type = ft if !sf.Anonymous || ft.Kind() != reflect.Struct { fields = append(fields, structField) if count[f.Type] > 1 { // If there were multiple instances, add a second, // so that the annihilation code will see a duplicate. // It only cares about the distinction between 1 or 2, // so don't bother generating any more copies. fields = append(fields, structField) } continue } // Record new anon struct to explore next round nextCount[ft]++ if nextCount[ft] == 1 { next = append(next, structField) } } } } return fields } // visibleFields will return a slice of fields which are visible based on // Go's standard visiblity rules with the exception of ties being broken // by depth and struct tag naming. // // Based on the enoding/json field filtering of the Go Stdlib // https://golang.org/src/encoding/json/encode.go typeField func. func visibleFields(fields []field) []field { // Delete all fields that are hidden by the Go rules for embedded fields, // except that fields with JSON tags are promoted. // The fields are sorted in primary order of name, secondary order // of field index length. Loop over names; for each name, delete // hidden fields by choosing the one dominant field that survives. out := fields[:0] for advance, i := 0, 0; i < len(fields); i += advance { // One iteration per name. // Find the sequence of fields with the name of this first field. fi := fields[i] name := fi.Name for advance = 1; i+advance < len(fields); advance++ { fj := fields[i+advance] if fj.Name != name { break } } if advance == 1 { // Only one field with this name out = append(out, fi) continue } dominant, ok := dominantField(fields[i : i+advance]) if ok { out = append(out, dominant) } } fields = out sort.Sort(fieldsByIndex(fields)) return fields } // dominantField looks through the fields, all of which are known to // have the same name, to find the single field that dominates the // others using Go's embedding rules, modified by the presence of // JSON tags. If there are multiple top-level fields, the boolean // will be false: This condition is an error in Go and we skip all // the fields. // // Based on the enoding/json field filtering of the Go Stdlib // https://golang.org/src/encoding/json/encode.go dominantField func. func dominantField(fields []field) (field, bool) { // The fields are sorted in increasing index-length order. The winner // must therefore be one with the shortest index length. Drop all // longer entries, which is easy: just truncate the slice. length := len(fields[0].Index) tagged := -1 // Index of first tagged field. for i, f := range fields { if len(f.Index) > length { fields = fields[:i] break } if f.NameFromTag { if tagged >= 0 { // Multiple tagged fields at the same level: conflict. // Return no field. return field{}, false } tagged = i } } if tagged >= 0 { return fields[tagged], true } // All remaining fields have the same length. If there's more than one, // we have a conflict (two fields named "X" at the same level) and we // return no field. if len(fields) > 1 { return field{}, false } return fields[0], true } // fieldsByName sorts field by name, breaking ties with depth, // then breaking ties with "name came from json tag", then // breaking ties with index sequence. // // Based on the enoding/json field filtering of the Go Stdlib // https://golang.org/src/encoding/json/encode.go fieldsByName type. type fieldsByName []field func (x fieldsByName) Len() int { return len(x) } func (x fieldsByName) Swap(i, j int) { x[i], x[j] = x[j], x[i] } func (x fieldsByName) Less(i, j int) bool { if x[i].Name != x[j].Name { return x[i].Name < x[j].Name } if len(x[i].Index) != len(x[j].Index) { return len(x[i].Index) < len(x[j].Index) } if x[i].NameFromTag != x[j].NameFromTag { return x[i].NameFromTag } return fieldsByIndex(x).Less(i, j) } // fieldsByIndex sorts field by index sequence. // // Based on the enoding/json field filtering of the Go Stdlib // https://golang.org/src/encoding/json/encode.go fieldsByIndex type. type fieldsByIndex []field func (x fieldsByIndex) Len() int { return len(x) } func (x fieldsByIndex) Swap(i, j int) { x[i], x[j] = x[j], x[i] } func (x fieldsByIndex) Less(i, j int) bool { for k, xik := range x[i].Index { if k >= len(x[j].Index) { return false } if xik != x[j].Index[k] { return xik < x[j].Index[k] } } return len(x[i].Index) < len(x[j].Index) } aws-sdk-go-1.4.22/service/dynamodb/dynamodbattribute/field_test.go000066400000000000000000000040331300374646400252120ustar00rootroot00000000000000package dynamodbattribute import ( "reflect" "testing" "github.com/stretchr/testify/assert" ) type testUnionValues struct { Name string Value interface{} } type unionSimple struct { A int B string C []string } type unionComplex struct { unionSimple A int } type unionTagged struct { A int `json:"A"` } type unionTaggedComplex struct { unionSimple unionTagged B string } func TestUnionStructFields(t *testing.T) { var cases = []struct { in interface{} expect []testUnionValues }{ { in: unionSimple{1, "2", []string{"abc"}}, expect: []testUnionValues{ {"A", 1}, {"B", "2"}, {"C", []string{"abc"}}, }, }, { in: unionComplex{ unionSimple: unionSimple{1, "2", []string{"abc"}}, A: 2, }, expect: []testUnionValues{ {"B", "2"}, {"C", []string{"abc"}}, {"A", 2}, }, }, { in: unionTaggedComplex{ unionSimple: unionSimple{1, "2", []string{"abc"}}, unionTagged: unionTagged{3}, B: "3", }, expect: []testUnionValues{ {"C", []string{"abc"}}, {"A", 3}, {"B", "3"}, }, }, } for i, c := range cases { v := reflect.ValueOf(c.in) fields := unionStructFields(v.Type(), MarshalOptions{SupportJSONTags: true}) for j, f := range fields { expected := c.expect[j] assert.Equal(t, expected.Name, f.Name, "case %d, field %d", i, j) actual := v.FieldByIndex(f.Index).Interface() assert.EqualValues(t, expected.Value, actual, "case %d, field %d", i, j) } } } func TestFieldByName(t *testing.T) { fields := []field{ {Name: "Abc"}, {Name: "mixCase"}, {Name: "UPPERCASE"}, } cases := []struct { Name, FieldName string Found bool }{ {"abc", "Abc", true}, {"ABC", "Abc", true}, {"Abc", "Abc", true}, {"123", "", false}, {"ab", "", false}, {"MixCase", "mixCase", true}, {"uppercase", "UPPERCASE", true}, {"UPPERCASE", "UPPERCASE", true}, } for _, c := range cases { f, ok := fieldByName(fields, c.Name) assert.Equal(t, c.Found, ok) if ok { assert.Equal(t, c.FieldName, f.Name) } } } aws-sdk-go-1.4.22/service/dynamodb/dynamodbattribute/marshaler_examples_test.go000066400000000000000000000037461300374646400300150ustar00rootroot00000000000000package dynamodbattribute_test import ( "fmt" "reflect" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/service/dynamodb" "github.com/aws/aws-sdk-go/service/dynamodb/dynamodbattribute" ) func ExampleMarshal() { type Record struct { Bytes []byte MyField string Letters []string Numbers []int } r := Record{ Bytes: []byte{48, 49}, MyField: "MyFieldValue", Letters: []string{"a", "b", "c", "d"}, Numbers: []int{1, 2, 3}, } av, err := dynamodbattribute.Marshal(r) fmt.Println("err", err) fmt.Println("Bytes", av.M["Bytes"]) fmt.Println("MyField", av.M["MyField"]) fmt.Println("Letters", av.M["Letters"]) fmt.Println("Numbers", av.M["Numbers"]) // Output: // err // Bytes { // B: [48,49] // } // MyField { // S: "MyFieldValue" // } // Letters { // L: [ // { // S: "a" // }, // { // S: "b" // }, // { // S: "c" // }, // { // S: "d" // } // ] // } // Numbers { // L: [{ // N: "1" // },{ // N: "2" // },{ // N: "3" // }] // } } func ExampleUnmarshal() { type Record struct { Bytes []byte MyField string Letters []string A2Num map[string]int } expect := Record{ Bytes: []byte{48, 49}, MyField: "MyFieldValue", Letters: []string{"a", "b", "c", "d"}, A2Num: map[string]int{"a": 1, "b": 2, "c": 3}, } av := &dynamodb.AttributeValue{ M: map[string]*dynamodb.AttributeValue{ "Bytes": {B: []byte{48, 49}}, "MyField": {S: aws.String("MyFieldValue")}, "Letters": {L: []*dynamodb.AttributeValue{ {S: aws.String("a")}, {S: aws.String("b")}, {S: aws.String("c")}, {S: aws.String("d")}, }}, "A2Num": {M: map[string]*dynamodb.AttributeValue{ "a": {N: aws.String("1")}, "b": {N: aws.String("2")}, "c": {N: aws.String("3")}, }}, }, } actual := Record{} err := dynamodbattribute.Unmarshal(av, &actual) fmt.Println(err, reflect.DeepEqual(expect, actual)) // Output: // true } aws-sdk-go-1.4.22/service/dynamodb/dynamodbattribute/marshaler_test.go000066400000000000000000000407331300374646400261140ustar00rootroot00000000000000package dynamodbattribute import ( "math" "reflect" "testing" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/service/dynamodb" ) type simpleMarshalStruct struct { Byte []byte String string Int int Uint uint Float32 float32 Float64 float64 Bool bool Null *interface{} } type complexMarshalStruct struct { Simple []simpleMarshalStruct } type myByteStruct struct { Byte []byte } type myByteSetStruct struct { ByteSet [][]byte } type marshallerTestInput struct { input interface{} expected interface{} err awserr.Error } var marshalerScalarInputs = []marshallerTestInput{ { input: nil, expected: &dynamodb.AttributeValue{NULL: &trueValue}, }, { input: "some string", expected: &dynamodb.AttributeValue{S: aws.String("some string")}, }, { input: true, expected: &dynamodb.AttributeValue{BOOL: &trueValue}, }, { input: false, expected: &dynamodb.AttributeValue{BOOL: &falseValue}, }, { input: 3.14, expected: &dynamodb.AttributeValue{N: aws.String("3.14")}, }, { input: math.MaxFloat32, expected: &dynamodb.AttributeValue{N: aws.String("340282346638528860000000000000000000000")}, }, { input: math.MaxFloat64, expected: &dynamodb.AttributeValue{N: aws.String("179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000")}, }, { input: 12, expected: &dynamodb.AttributeValue{N: aws.String("12")}, }, { input: Number("12"), expected: &dynamodb.AttributeValue{N: aws.String("12")}, }, { input: simpleMarshalStruct{}, expected: &dynamodb.AttributeValue{ M: map[string]*dynamodb.AttributeValue{ "Byte": {NULL: &trueValue}, "Bool": {BOOL: &falseValue}, "Float32": {N: aws.String("0")}, "Float64": {N: aws.String("0")}, "Int": {N: aws.String("0")}, "Null": {NULL: &trueValue}, "String": {NULL: &trueValue}, "Uint": {N: aws.String("0")}, }, }, }, } var marshallerMapTestInputs = []marshallerTestInput{ // Scalar tests { input: nil, expected: map[string]*dynamodb.AttributeValue{}, }, { input: map[string]interface{}{"string": "some string"}, expected: map[string]*dynamodb.AttributeValue{"string": {S: aws.String("some string")}}, }, { input: map[string]interface{}{"bool": true}, expected: map[string]*dynamodb.AttributeValue{"bool": {BOOL: &trueValue}}, }, { input: map[string]interface{}{"bool": false}, expected: map[string]*dynamodb.AttributeValue{"bool": {BOOL: &falseValue}}, }, { input: map[string]interface{}{"null": nil}, expected: map[string]*dynamodb.AttributeValue{"null": {NULL: &trueValue}}, }, { input: map[string]interface{}{"float": 3.14}, expected: map[string]*dynamodb.AttributeValue{"float": {N: aws.String("3.14")}}, }, { input: map[string]interface{}{"float": math.MaxFloat32}, expected: map[string]*dynamodb.AttributeValue{"float": {N: aws.String("340282346638528860000000000000000000000")}}, }, { input: map[string]interface{}{"float": math.MaxFloat64}, expected: map[string]*dynamodb.AttributeValue{"float": {N: aws.String("179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000")}}, }, { input: map[string]interface{}{"num": 12.}, expected: map[string]*dynamodb.AttributeValue{"num": {N: aws.String("12")}}, }, { input: map[string]interface{}{"byte": []byte{48, 49}}, expected: map[string]*dynamodb.AttributeValue{"byte": {B: []byte{48, 49}}}, }, { input: struct{ Byte []byte }{Byte: []byte{48, 49}}, expected: map[string]*dynamodb.AttributeValue{"Byte": {B: []byte{48, 49}}}, }, { input: map[string]interface{}{"byte_set": [][]byte{{48, 49}, {50, 51}}}, expected: map[string]*dynamodb.AttributeValue{"byte_set": {BS: [][]byte{{48, 49}, {50, 51}}}}, }, { input: struct{ ByteSet [][]byte }{ByteSet: [][]byte{{48, 49}, {50, 51}}}, expected: map[string]*dynamodb.AttributeValue{"ByteSet": {BS: [][]byte{{48, 49}, {50, 51}}}}, }, // List { input: map[string]interface{}{"list": []interface{}{"a string", 12., 3.14, true, nil, false}}, expected: map[string]*dynamodb.AttributeValue{ "list": { L: []*dynamodb.AttributeValue{ {S: aws.String("a string")}, {N: aws.String("12")}, {N: aws.String("3.14")}, {BOOL: &trueValue}, {NULL: &trueValue}, {BOOL: &falseValue}, }, }, }, }, // Map { input: map[string]interface{}{"map": map[string]interface{}{"nestednum": 12.}}, expected: map[string]*dynamodb.AttributeValue{ "map": { M: map[string]*dynamodb.AttributeValue{ "nestednum": { N: aws.String("12"), }, }, }, }, }, // Structs { input: simpleMarshalStruct{}, expected: map[string]*dynamodb.AttributeValue{ "Byte": {NULL: &trueValue}, "Bool": {BOOL: &falseValue}, "Float32": {N: aws.String("0")}, "Float64": {N: aws.String("0")}, "Int": {N: aws.String("0")}, "Null": {NULL: &trueValue}, "String": {NULL: &trueValue}, "Uint": {N: aws.String("0")}, }, }, { input: complexMarshalStruct{}, expected: map[string]*dynamodb.AttributeValue{ "Simple": {NULL: &trueValue}, }, }, { input: struct { Simple []string `json:"simple"` }{}, expected: map[string]*dynamodb.AttributeValue{ "simple": {NULL: &trueValue}, }, }, { input: struct { Simple []string `json:"simple,omitempty"` }{}, expected: map[string]*dynamodb.AttributeValue{}, }, { input: struct { Simple []string `json:"-"` }{}, expected: map[string]*dynamodb.AttributeValue{}, }, { input: complexMarshalStruct{Simple: []simpleMarshalStruct{{Int: -2}, {Uint: 5}}}, expected: map[string]*dynamodb.AttributeValue{ "Simple": { L: []*dynamodb.AttributeValue{ { M: map[string]*dynamodb.AttributeValue{ "Byte": {NULL: &trueValue}, "Bool": {BOOL: &falseValue}, "Float32": {N: aws.String("0")}, "Float64": {N: aws.String("0")}, "Int": {N: aws.String("-2")}, "Null": {NULL: &trueValue}, "String": {NULL: &trueValue}, "Uint": {N: aws.String("0")}, }, }, { M: map[string]*dynamodb.AttributeValue{ "Byte": {NULL: &trueValue}, "Bool": {BOOL: &falseValue}, "Float32": {N: aws.String("0")}, "Float64": {N: aws.String("0")}, "Int": {N: aws.String("0")}, "Null": {NULL: &trueValue}, "String": {NULL: &trueValue}, "Uint": {N: aws.String("5")}, }, }, }, }, }, }, } var marshallerListTestInputs = []marshallerTestInput{ { input: nil, expected: []*dynamodb.AttributeValue{}, }, { input: []interface{}{}, expected: []*dynamodb.AttributeValue{}, }, { input: []simpleMarshalStruct{}, expected: []*dynamodb.AttributeValue{}, }, { input: []interface{}{"a string", 12., 3.14, true, nil, false}, expected: []*dynamodb.AttributeValue{ {S: aws.String("a string")}, {N: aws.String("12")}, {N: aws.String("3.14")}, {BOOL: &trueValue}, {NULL: &trueValue}, {BOOL: &falseValue}, }, }, { input: []simpleMarshalStruct{{}}, expected: []*dynamodb.AttributeValue{ { M: map[string]*dynamodb.AttributeValue{ "Byte": {NULL: &trueValue}, "Bool": {BOOL: &falseValue}, "Float32": {N: aws.String("0")}, "Float64": {N: aws.String("0")}, "Int": {N: aws.String("0")}, "Null": {NULL: &trueValue}, "String": {NULL: &trueValue}, "Uint": {N: aws.String("0")}, }, }, }, }, } func Test_New_Marshal(t *testing.T) { for _, test := range marshalerScalarInputs { testMarshal(t, test) } } func testMarshal(t *testing.T, test marshallerTestInput) { actual, err := Marshal(test.input) if test.err != nil { if err == nil { t.Errorf("Marshal with input %#v retured %#v, expected error `%s`", test.input, actual, test.err) } else if err.Error() != test.err.Error() { t.Errorf("Marshal with input %#v retured error `%s`, expected error `%s`", test.input, err, test.err) } } else { if err != nil { t.Errorf("Marshal with input %#v retured error `%s`", test.input, err) } compareObjects(t, test.expected, actual) } } func Test_New_Unmarshal(t *testing.T) { // Using the same inputs from Marshal, test the reverse mapping. for i, test := range marshalerScalarInputs { if test.input == nil { continue } actual := reflect.New(reflect.TypeOf(test.input)).Interface() if err := Unmarshal(test.expected.(*dynamodb.AttributeValue), actual); err != nil { t.Errorf("Unmarshal %d, with input %#v retured error `%s`", i+1, test.expected, err) } compareObjects(t, test.input, reflect.ValueOf(actual).Elem().Interface()) } } func Test_New_UnmarshalError(t *testing.T) { // Test that we get an error using Unmarshal to convert to a nil value. expected := &InvalidUnmarshalError{Type: reflect.TypeOf(nil)} if err := Unmarshal(nil, nil); err == nil { t.Errorf("Unmarshal with input %T returned no error, expected error `%v`", nil, expected) } else if err.Error() != expected.Error() { t.Errorf("Unmarshal with input %T returned error `%v`, expected error `%v`", nil, err, expected) } // Test that we get an error using Unmarshal to convert to a non-pointer value. var actual map[string]interface{} expected = &InvalidUnmarshalError{Type: reflect.TypeOf(actual)} if err := Unmarshal(nil, actual); err == nil { t.Errorf("Unmarshal with input %T returned no error, expected error `%v`", actual, expected) } else if err.Error() != expected.Error() { t.Errorf("Unmarshal with input %T returned error `%v`, expected error `%v`", actual, err, expected) } // Test that we get an error using Unmarshal to convert to nil struct. var actual2 *struct{ A int } expected = &InvalidUnmarshalError{Type: reflect.TypeOf(actual2)} if err := Unmarshal(nil, actual2); err == nil { t.Errorf("Unmarshal with input %T returned no error, expected error `%v`", actual2, expected) } else if err.Error() != expected.Error() { t.Errorf("Unmarshal with input %T returned error `%v`, expected error `%v`", actual2, err, expected) } } func Test_New_MarshalMap(t *testing.T) { for _, test := range marshallerMapTestInputs { testMarshalMap(t, test) } } func testMarshalMap(t *testing.T, test marshallerTestInput) { actual, err := MarshalMap(test.input) if test.err != nil { if err == nil { t.Errorf("MarshalMap with input %#v retured %#v, expected error `%s`", test.input, actual, test.err) } else if err.Error() != test.err.Error() { t.Errorf("MarshalMap with input %#v retured error `%s`, expected error `%s`", test.input, err, test.err) } } else { if err != nil { t.Errorf("MarshalMap with input %#v retured error `%s`", test.input, err) } compareObjects(t, test.expected, actual) } } func Test_New_UnmarshalMap(t *testing.T) { // Using the same inputs from MarshalMap, test the reverse mapping. for i, test := range marshallerMapTestInputs { if test.input == nil { continue } actual := reflect.New(reflect.TypeOf(test.input)).Interface() if err := UnmarshalMap(test.expected.(map[string]*dynamodb.AttributeValue), actual); err != nil { t.Errorf("Unmarshal %d, with input %#v retured error `%s`", i+1, test.expected, err) } compareObjects(t, test.input, reflect.ValueOf(actual).Elem().Interface()) } } func Test_New_UnmarshalMapError(t *testing.T) { // Test that we get an error using UnmarshalMap to convert to a nil value. expected := &InvalidUnmarshalError{Type: reflect.TypeOf(nil)} if err := UnmarshalMap(nil, nil); err == nil { t.Errorf("UnmarshalMap with input %T returned no error, expected error `%v`", nil, expected) } else if err.Error() != expected.Error() { t.Errorf("UnmarshalMap with input %T returned error `%v`, expected error `%v`", nil, err, expected) } // Test that we get an error using UnmarshalMap to convert to a non-pointer value. var actual map[string]interface{} expected = &InvalidUnmarshalError{Type: reflect.TypeOf(actual)} if err := UnmarshalMap(nil, actual); err == nil { t.Errorf("UnmarshalMap with input %T returned no error, expected error `%v`", actual, expected) } else if err.Error() != expected.Error() { t.Errorf("UnmarshalMap with input %T returned error `%v`, expected error `%v`", actual, err, expected) } // Test that we get an error using UnmarshalMap to convert to nil struct. var actual2 *struct{ A int } expected = &InvalidUnmarshalError{Type: reflect.TypeOf(actual2)} if err := UnmarshalMap(nil, actual2); err == nil { t.Errorf("UnmarshalMap with input %T returned no error, expected error `%v`", actual2, expected) } else if err.Error() != expected.Error() { t.Errorf("UnmarshalMap with input %T returned error `%v`, expected error `%v`", actual2, err, expected) } } func Test_New_MarshalList(t *testing.T) { for _, test := range marshallerListTestInputs { testMarshalList(t, test) } } func testMarshalList(t *testing.T, test marshallerTestInput) { actual, err := MarshalList(test.input) if test.err != nil { if err == nil { t.Errorf("MarshalList with input %#v retured %#v, expected error `%s`", test.input, actual, test.err) } else if err.Error() != test.err.Error() { t.Errorf("MarshalList with input %#v retured error `%s`, expected error `%s`", test.input, err, test.err) } } else { if err != nil { t.Errorf("MarshalList with input %#v retured error `%s`", test.input, err) } compareObjects(t, test.expected, actual) } } func Test_New_UnmarshalList(t *testing.T) { // Using the same inputs from MarshalList, test the reverse mapping. for i, test := range marshallerListTestInputs { if test.input == nil { continue } iv := reflect.ValueOf(test.input) actual := reflect.New(iv.Type()) if iv.Kind() == reflect.Slice { actual.Elem().Set(reflect.MakeSlice(iv.Type(), iv.Len(), iv.Cap())) } if err := UnmarshalList(test.expected.([]*dynamodb.AttributeValue), actual.Interface()); err != nil { t.Errorf("Unmarshal %d, with input %#v retured error `%s`", i+1, test.expected, err) } compareObjects(t, test.input, actual.Elem().Interface()) } } func Test_New_UnmarshalListError(t *testing.T) { // Test that we get an error using UnmarshalList to convert to a nil value. expected := &InvalidUnmarshalError{Type: reflect.TypeOf(nil)} if err := UnmarshalList(nil, nil); err == nil { t.Errorf("UnmarshalList with input %T returned no error, expected error `%v`", nil, expected) } else if err.Error() != expected.Error() { t.Errorf("UnmarshalList with input %T returned error `%v`, expected error `%v`", nil, err, expected) } // Test that we get an error using UnmarshalList to convert to a non-pointer value. var actual map[string]interface{} expected = &InvalidUnmarshalError{Type: reflect.TypeOf(actual)} if err := UnmarshalList(nil, actual); err == nil { t.Errorf("UnmarshalList with input %T returned no error, expected error `%v`", actual, expected) } else if err.Error() != expected.Error() { t.Errorf("UnmarshalList with input %T returned error `%v`, expected error `%v`", actual, err, expected) } // Test that we get an error using UnmarshalList to convert to nil struct. var actual2 *struct{ A int } expected = &InvalidUnmarshalError{Type: reflect.TypeOf(actual2)} if err := UnmarshalList(nil, actual2); err == nil { t.Errorf("UnmarshalList with input %T returned no error, expected error `%v`", actual2, expected) } else if err.Error() != expected.Error() { t.Errorf("UnmarshalList with input %T returned error `%v`, expected error `%v`", actual2, err, expected) } } func compareObjects(t *testing.T, expected interface{}, actual interface{}) { if !reflect.DeepEqual(expected, actual) { ev := reflect.ValueOf(expected) av := reflect.ValueOf(actual) t.Errorf("\nExpected kind(%s,%T):\n%s\nActual kind(%s,%T):\n%s\n", ev.Kind(), ev.Interface(), awsutil.Prettify(expected), av.Kind(), ev.Interface(), awsutil.Prettify(actual)) } } func BenchmarkMarshal(b *testing.B) { d := simpleMarshalStruct{ String: "abc", Int: 123, Uint: 123, Float32: 123.321, Float64: 123.321, Bool: true, Null: nil, } for i := 0; i < b.N; i++ { _, err := Marshal(d) if err != nil { b.Fatal("unexpected error", err) } } } aws-sdk-go-1.4.22/service/dynamodb/dynamodbattribute/shared_test.go000066400000000000000000000233551300374646400254050ustar00rootroot00000000000000package dynamodbattribute import ( "reflect" "testing" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/service/dynamodb" "github.com/stretchr/testify/assert" ) type testBinarySetStruct struct { Binarys [][]byte `dynamodbav:",binaryset"` } type testNumberSetStruct struct { Numbers []int `dynamodbav:",numberset"` } type testStringSetStruct struct { Strings []string `dynamodbav:",stringset"` } type testIntAsStringStruct struct { Value int `dynamodbav:",string"` } type testOmitEmptyStruct struct { Value string `dynamodbav:",omitempty"` Value2 *string `dynamodbav:",omitempty"` Value3 int } type testAliasedString string type testAliasedStringSlice []string type testAliasedInt int type testAliasedIntSlice []int type testAliasedMap map[string]int type testAliasedSlice []string type testAliasedByteSlice []byte type testAliasedStruct struct { Value testAliasedString Value2 testAliasedInt Value3 testAliasedMap Value4 testAliasedSlice Value5 testAliasedByteSlice Value6 []testAliasedInt Value7 []testAliasedString Value8 []testAliasedByteSlice `dynamodbav:",binaryset"` Value9 []testAliasedInt `dynamodbav:",numberset"` Value10 []testAliasedString `dynamodbav:",stringset"` Value11 testAliasedIntSlice Value12 testAliasedStringSlice } type testNamedPointer *int var testDate, _ = time.Parse(time.RFC3339, "2016-05-03T17:06:26.209072Z") var sharedTestCases = []struct { in *dynamodb.AttributeValue actual, expected interface{} err error }{ { // Binary slice in: &dynamodb.AttributeValue{B: []byte{48, 49}}, actual: &[]byte{}, expected: []byte{48, 49}, }, { // Binary slice in: &dynamodb.AttributeValue{B: []byte{48, 49}}, actual: &[]byte{}, expected: []byte{48, 49}, }, { // Binary slice oversized in: &dynamodb.AttributeValue{B: []byte{48, 49}}, actual: func() *[]byte { v := make([]byte, 0, 10) return &v }(), expected: []byte{48, 49}, }, { // Binary slice pointer in: &dynamodb.AttributeValue{B: []byte{48, 49}}, actual: func() **[]byte { v := make([]byte, 0, 10) v2 := &v return &v2 }(), expected: []byte{48, 49}, }, { // Bool in: &dynamodb.AttributeValue{BOOL: aws.Bool(true)}, actual: new(bool), expected: true, }, { // List in: &dynamodb.AttributeValue{L: []*dynamodb.AttributeValue{ {N: aws.String("123")}, }}, actual: &[]int{}, expected: []int{123}, }, { // Map, interface in: &dynamodb.AttributeValue{M: map[string]*dynamodb.AttributeValue{ "abc": {N: aws.String("123")}, }}, actual: &map[string]int{}, expected: map[string]int{"abc": 123}, }, { // Map, struct in: &dynamodb.AttributeValue{M: map[string]*dynamodb.AttributeValue{ "Abc": {N: aws.String("123")}, }}, actual: &struct{ Abc int }{}, expected: struct{ Abc int }{Abc: 123}, }, { // Map, struct in: &dynamodb.AttributeValue{M: map[string]*dynamodb.AttributeValue{ "abc": {N: aws.String("123")}, }}, actual: &struct { Abc int `json:"abc" dynamodbav:"abc"` }{}, expected: struct { Abc int `json:"abc" dynamodbav:"abc"` }{Abc: 123}, }, { // Number, int in: &dynamodb.AttributeValue{N: aws.String("123")}, actual: new(int), expected: 123, }, { // Number, Float in: &dynamodb.AttributeValue{N: aws.String("123.1")}, actual: new(float64), expected: float64(123.1), }, { // Null in: &dynamodb.AttributeValue{NULL: aws.Bool(true)}, actual: new(string), expected: "", }, { // Null ptr in: &dynamodb.AttributeValue{NULL: aws.Bool(true)}, actual: new(*string), expected: nil, }, { // String in: &dynamodb.AttributeValue{S: aws.String("abc")}, actual: new(string), expected: "abc", }, { // Binary Set in: &dynamodb.AttributeValue{ M: map[string]*dynamodb.AttributeValue{ "Binarys": {BS: [][]byte{{48, 49}, {50, 51}}}, }, }, actual: &testBinarySetStruct{}, expected: testBinarySetStruct{Binarys: [][]byte{{48, 49}, {50, 51}}}, }, { // Number Set in: &dynamodb.AttributeValue{ M: map[string]*dynamodb.AttributeValue{ "Numbers": {NS: []*string{aws.String("123"), aws.String("321")}}, }, }, actual: &testNumberSetStruct{}, expected: testNumberSetStruct{Numbers: []int{123, 321}}, }, { // String Set in: &dynamodb.AttributeValue{ M: map[string]*dynamodb.AttributeValue{ "Strings": {SS: []*string{aws.String("abc"), aws.String("efg")}}, }, }, actual: &testStringSetStruct{}, expected: testStringSetStruct{Strings: []string{"abc", "efg"}}, }, { // Int value as string in: &dynamodb.AttributeValue{ M: map[string]*dynamodb.AttributeValue{ "Value": {S: aws.String("123")}, }, }, actual: &testIntAsStringStruct{}, expected: testIntAsStringStruct{Value: 123}, }, { // Omitempty in: &dynamodb.AttributeValue{ M: map[string]*dynamodb.AttributeValue{ "Value3": {N: aws.String("0")}, }, }, actual: &testOmitEmptyStruct{}, expected: testOmitEmptyStruct{Value: "", Value2: nil, Value3: 0}, }, { // aliased type in: &dynamodb.AttributeValue{ M: map[string]*dynamodb.AttributeValue{ "Value": {S: aws.String("123")}, "Value2": {N: aws.String("123")}, "Value3": {M: map[string]*dynamodb.AttributeValue{ "Key": {N: aws.String("321")}, }}, "Value4": {L: []*dynamodb.AttributeValue{ {S: aws.String("1")}, {S: aws.String("2")}, {S: aws.String("3")}, }}, "Value5": {B: []byte{0, 1, 2}}, "Value6": {L: []*dynamodb.AttributeValue{ {N: aws.String("1")}, {N: aws.String("2")}, {N: aws.String("3")}, }}, "Value7": {L: []*dynamodb.AttributeValue{ {S: aws.String("1")}, {S: aws.String("2")}, {S: aws.String("3")}, }}, "Value8": {BS: [][]byte{ {0, 1, 2}, {3, 4, 5}, }}, "Value9": {NS: []*string{ aws.String("1"), aws.String("2"), aws.String("3"), }}, "Value10": {SS: []*string{ aws.String("1"), aws.String("2"), aws.String("3"), }}, "Value11": {L: []*dynamodb.AttributeValue{ {N: aws.String("1")}, {N: aws.String("2")}, {N: aws.String("3")}, }}, "Value12": {L: []*dynamodb.AttributeValue{ {S: aws.String("1")}, {S: aws.String("2")}, {S: aws.String("3")}, }}, }, }, actual: &testAliasedStruct{}, expected: testAliasedStruct{ Value: "123", Value2: 123, Value3: testAliasedMap{ "Key": 321, }, Value4: testAliasedSlice{"1", "2", "3"}, Value5: testAliasedByteSlice{0, 1, 2}, Value6: []testAliasedInt{1, 2, 3}, Value7: []testAliasedString{"1", "2", "3"}, Value8: []testAliasedByteSlice{ {0, 1, 2}, {3, 4, 5}, }, Value9: []testAliasedInt{1, 2, 3}, Value10: []testAliasedString{"1", "2", "3"}, Value11: testAliasedIntSlice{1, 2, 3}, Value12: testAliasedStringSlice{"1", "2", "3"}, }, }, { in: &dynamodb.AttributeValue{N: aws.String("123")}, actual: new(testNamedPointer), expected: testNamedPointer(aws.Int(123)), }, { // time.Time in: &dynamodb.AttributeValue{S: aws.String("2016-05-03T17:06:26.209072Z")}, actual: new(time.Time), expected: testDate, }, { // time.Time List in: &dynamodb.AttributeValue{L: []*dynamodb.AttributeValue{ {S: aws.String("2016-05-03T17:06:26.209072Z")}, {S: aws.String("2016-05-04T17:06:26.209072Z")}, }}, actual: new([]time.Time), expected: []time.Time{testDate, testDate.Add(24 * time.Hour)}, }, { // time.Time struct in: &dynamodb.AttributeValue{M: map[string]*dynamodb.AttributeValue{ "abc": {S: aws.String("2016-05-03T17:06:26.209072Z")}, }}, actual: &struct { Abc time.Time `json:"abc" dynamodbav:"abc"` }{}, expected: struct { Abc time.Time `json:"abc" dynamodbav:"abc"` }{Abc: testDate}, }, { // time.Time ptr struct in: &dynamodb.AttributeValue{M: map[string]*dynamodb.AttributeValue{ "abc": {S: aws.String("2016-05-03T17:06:26.209072Z")}, }}, actual: &struct { Abc *time.Time `json:"abc" dynamodbav:"abc"` }{}, expected: struct { Abc *time.Time `json:"abc" dynamodbav:"abc"` }{Abc: &testDate}, }, } var sharedListTestCases = []struct { in []*dynamodb.AttributeValue actual, expected interface{} err error }{ { in: []*dynamodb.AttributeValue{ {B: []byte{48, 49}}, {BOOL: aws.Bool(true)}, {N: aws.String("123")}, {S: aws.String("123")}, }, actual: func() *[]interface{} { v := []interface{}{} return &v }(), expected: []interface{}{[]byte{48, 49}, true, 123., "123"}, }, { in: []*dynamodb.AttributeValue{ {N: aws.String("1")}, {N: aws.String("2")}, {N: aws.String("3")}, }, actual: &[]interface{}{}, expected: []interface{}{1., 2., 3.}, }, } var sharedMapTestCases = []struct { in map[string]*dynamodb.AttributeValue actual, expected interface{} err error }{ { in: map[string]*dynamodb.AttributeValue{ "B": {B: []byte{48, 49}}, "BOOL": {BOOL: aws.Bool(true)}, "N": {N: aws.String("123")}, "S": {S: aws.String("123")}, }, actual: &map[string]interface{}{}, expected: map[string]interface{}{ "B": []byte{48, 49}, "BOOL": true, "N": 123., "S": "123", }, }, } func assertConvertTest(t *testing.T, i int, actual, expected interface{}, err, expectedErr error) { i++ if expectedErr != nil { if err != nil { assert.Equal(t, expectedErr, err, "case %d", i) } else { assert.Fail(t, "", "case %d, expected error, %v", i) } } else if err != nil { assert.Fail(t, "", "case %d, expect no error, got %v", i, err) } else { assert.Equal(t, ptrToValue(expected), ptrToValue(actual), "case %d", i) } } func ptrToValue(in interface{}) interface{} { v := reflect.ValueOf(in) if v.Kind() == reflect.Ptr { v = v.Elem() } if !v.IsValid() { return nil } if v.Kind() == reflect.Ptr { return ptrToValue(v.Interface()) } return v.Interface() } aws-sdk-go-1.4.22/service/dynamodb/dynamodbattribute/tag.go000066400000000000000000000021721300374646400236450ustar00rootroot00000000000000package dynamodbattribute import ( "reflect" "strings" ) type tag struct { Name string Ignore bool OmitEmpty bool OmitEmptyElem bool AsString bool AsBinSet, AsNumSet, AsStrSet bool } func (t *tag) parseAVTag(structTag reflect.StructTag) { tagStr := structTag.Get("dynamodbav") if len(tagStr) == 0 { return } t.parseTagStr(tagStr) } func (t *tag) parseJSONTag(structTag reflect.StructTag) { tagStr := structTag.Get("json") if len(tagStr) == 0 { return } t.parseTagStr(tagStr) } func (t *tag) parseTagStr(tagStr string) { parts := strings.Split(tagStr, ",") if len(parts) == 0 { return } if name := parts[0]; name == "-" { t.Name = "" t.Ignore = true } else { t.Name = name t.Ignore = false } for _, opt := range parts[1:] { switch opt { case "omitempty": t.OmitEmpty = true case "omitemptyelem": t.OmitEmptyElem = true case "string": t.AsString = true case "binaryset": t.AsBinSet = true case "numberset": t.AsNumSet = true case "stringset": t.AsStrSet = true } } } aws-sdk-go-1.4.22/service/dynamodb/dynamodbattribute/tag_test.go000066400000000000000000000031111300374646400246760ustar00rootroot00000000000000package dynamodbattribute import ( "reflect" "testing" "github.com/stretchr/testify/assert" ) func TestTagParse(t *testing.T) { cases := []struct { in reflect.StructTag json, av bool expect tag }{ {`json:""`, true, false, tag{}}, {`json:"name"`, true, false, tag{Name: "name"}}, {`json:"name,omitempty"`, true, false, tag{Name: "name", OmitEmpty: true}}, {`json:"-"`, true, false, tag{Ignore: true}}, {`json:",omitempty"`, true, false, tag{OmitEmpty: true}}, {`json:",string"`, true, false, tag{AsString: true}}, {`dynamodbav:""`, false, true, tag{}}, {`dynamodbav:","`, false, true, tag{}}, {`dynamodbav:"name"`, false, true, tag{Name: "name"}}, {`dynamodbav:"name"`, false, true, tag{Name: "name"}}, {`dynamodbav:"-"`, false, true, tag{Ignore: true}}, {`dynamodbav:",omitempty"`, false, true, tag{OmitEmpty: true}}, {`dynamodbav:",omitemptyelem"`, false, true, tag{OmitEmptyElem: true}}, {`dynamodbav:",string"`, false, true, tag{AsString: true}}, {`dynamodbav:",binaryset"`, false, true, tag{AsBinSet: true}}, {`dynamodbav:",numberset"`, false, true, tag{AsNumSet: true}}, {`dynamodbav:",stringset"`, false, true, tag{AsStrSet: true}}, {`dynamodbav:",stringset,omitemptyelem"`, false, true, tag{AsStrSet: true, OmitEmptyElem: true}}, {`dynamodbav:"name,stringset,omitemptyelem"`, false, true, tag{Name: "name", AsStrSet: true, OmitEmptyElem: true}}, } for i, c := range cases { actual := tag{} if c.json { actual.parseJSONTag(c.in) } if c.av { actual.parseAVTag(c.in) } assert.Equal(t, c.expect, actual, "case %d", i+1) } } aws-sdk-go-1.4.22/service/dynamodb/dynamodbiface/000077500000000000000000000000001300374646400216055ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/dynamodb/dynamodbiface/interface.go000066400000000000000000000116421300374646400241000ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package dynamodbiface provides an interface to enable mocking the Amazon DynamoDB service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package dynamodbiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/dynamodb" ) // DynamoDBAPI provides an interface to enable mocking the // dynamodb.DynamoDB service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon DynamoDB. // func myFunc(svc dynamodbiface.DynamoDBAPI) bool { // // Make svc.BatchGetItem request // } // // func main() { // sess := session.New() // svc := dynamodb.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockDynamoDBClient struct { // dynamodbiface.DynamoDBAPI // } // func (m *mockDynamoDBClient) BatchGetItem(input *dynamodb.BatchGetItemInput) (*dynamodb.BatchGetItemOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockDynamoDBClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type DynamoDBAPI interface { BatchGetItemRequest(*dynamodb.BatchGetItemInput) (*request.Request, *dynamodb.BatchGetItemOutput) BatchGetItem(*dynamodb.BatchGetItemInput) (*dynamodb.BatchGetItemOutput, error) BatchGetItemPages(*dynamodb.BatchGetItemInput, func(*dynamodb.BatchGetItemOutput, bool) bool) error BatchWriteItemRequest(*dynamodb.BatchWriteItemInput) (*request.Request, *dynamodb.BatchWriteItemOutput) BatchWriteItem(*dynamodb.BatchWriteItemInput) (*dynamodb.BatchWriteItemOutput, error) CreateTableRequest(*dynamodb.CreateTableInput) (*request.Request, *dynamodb.CreateTableOutput) CreateTable(*dynamodb.CreateTableInput) (*dynamodb.CreateTableOutput, error) DeleteItemRequest(*dynamodb.DeleteItemInput) (*request.Request, *dynamodb.DeleteItemOutput) DeleteItem(*dynamodb.DeleteItemInput) (*dynamodb.DeleteItemOutput, error) DeleteTableRequest(*dynamodb.DeleteTableInput) (*request.Request, *dynamodb.DeleteTableOutput) DeleteTable(*dynamodb.DeleteTableInput) (*dynamodb.DeleteTableOutput, error) DescribeLimitsRequest(*dynamodb.DescribeLimitsInput) (*request.Request, *dynamodb.DescribeLimitsOutput) DescribeLimits(*dynamodb.DescribeLimitsInput) (*dynamodb.DescribeLimitsOutput, error) DescribeTableRequest(*dynamodb.DescribeTableInput) (*request.Request, *dynamodb.DescribeTableOutput) DescribeTable(*dynamodb.DescribeTableInput) (*dynamodb.DescribeTableOutput, error) GetItemRequest(*dynamodb.GetItemInput) (*request.Request, *dynamodb.GetItemOutput) GetItem(*dynamodb.GetItemInput) (*dynamodb.GetItemOutput, error) ListTablesRequest(*dynamodb.ListTablesInput) (*request.Request, *dynamodb.ListTablesOutput) ListTables(*dynamodb.ListTablesInput) (*dynamodb.ListTablesOutput, error) ListTablesPages(*dynamodb.ListTablesInput, func(*dynamodb.ListTablesOutput, bool) bool) error PutItemRequest(*dynamodb.PutItemInput) (*request.Request, *dynamodb.PutItemOutput) PutItem(*dynamodb.PutItemInput) (*dynamodb.PutItemOutput, error) QueryRequest(*dynamodb.QueryInput) (*request.Request, *dynamodb.QueryOutput) Query(*dynamodb.QueryInput) (*dynamodb.QueryOutput, error) QueryPages(*dynamodb.QueryInput, func(*dynamodb.QueryOutput, bool) bool) error ScanRequest(*dynamodb.ScanInput) (*request.Request, *dynamodb.ScanOutput) Scan(*dynamodb.ScanInput) (*dynamodb.ScanOutput, error) ScanPages(*dynamodb.ScanInput, func(*dynamodb.ScanOutput, bool) bool) error UpdateItemRequest(*dynamodb.UpdateItemInput) (*request.Request, *dynamodb.UpdateItemOutput) UpdateItem(*dynamodb.UpdateItemInput) (*dynamodb.UpdateItemOutput, error) UpdateTableRequest(*dynamodb.UpdateTableInput) (*request.Request, *dynamodb.UpdateTableOutput) UpdateTable(*dynamodb.UpdateTableInput) (*dynamodb.UpdateTableOutput, error) WaitUntilTableExists(*dynamodb.DescribeTableInput) error WaitUntilTableNotExists(*dynamodb.DescribeTableInput) error } var _ DynamoDBAPI = (*dynamodb.DynamoDB)(nil) aws-sdk-go-1.4.22/service/dynamodb/examples_test.go000066400000000000000000001111731300374646400222300ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package dynamodb_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/dynamodb" ) var _ time.Duration var _ bytes.Buffer func ExampleDynamoDB_BatchGetItem() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := dynamodb.New(sess) params := &dynamodb.BatchGetItemInput{ RequestItems: map[string]*dynamodb.KeysAndAttributes{ // Required "Key": { // Required Keys: []map[string]*dynamodb.AttributeValue{ // Required { // Required "Key": { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, // More values... }, AttributesToGet: []*string{ aws.String("AttributeName"), // Required // More values... }, ConsistentRead: aws.Bool(true), ExpressionAttributeNames: map[string]*string{ "Key": aws.String("AttributeName"), // Required // More values... }, ProjectionExpression: aws.String("ProjectionExpression"), }, // More values... }, ReturnConsumedCapacity: aws.String("ReturnConsumedCapacity"), } resp, err := svc.BatchGetItem(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDynamoDB_BatchWriteItem() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := dynamodb.New(sess) params := &dynamodb.BatchWriteItemInput{ RequestItems: map[string][]*dynamodb.WriteRequest{ // Required "Key": { // Required { // Required DeleteRequest: &dynamodb.DeleteRequest{ Key: map[string]*dynamodb.AttributeValue{ // Required "Key": { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, }, PutRequest: &dynamodb.PutRequest{ Item: map[string]*dynamodb.AttributeValue{ // Required "Key": { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, }, }, // More values... }, // More values... }, ReturnConsumedCapacity: aws.String("ReturnConsumedCapacity"), ReturnItemCollectionMetrics: aws.String("ReturnItemCollectionMetrics"), } resp, err := svc.BatchWriteItem(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDynamoDB_CreateTable() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := dynamodb.New(sess) params := &dynamodb.CreateTableInput{ AttributeDefinitions: []*dynamodb.AttributeDefinition{ // Required { // Required AttributeName: aws.String("KeySchemaAttributeName"), // Required AttributeType: aws.String("ScalarAttributeType"), // Required }, // More values... }, KeySchema: []*dynamodb.KeySchemaElement{ // Required { // Required AttributeName: aws.String("KeySchemaAttributeName"), // Required KeyType: aws.String("KeyType"), // Required }, // More values... }, ProvisionedThroughput: &dynamodb.ProvisionedThroughput{ // Required ReadCapacityUnits: aws.Int64(1), // Required WriteCapacityUnits: aws.Int64(1), // Required }, TableName: aws.String("TableName"), // Required GlobalSecondaryIndexes: []*dynamodb.GlobalSecondaryIndex{ { // Required IndexName: aws.String("IndexName"), // Required KeySchema: []*dynamodb.KeySchemaElement{ // Required { // Required AttributeName: aws.String("KeySchemaAttributeName"), // Required KeyType: aws.String("KeyType"), // Required }, // More values... }, Projection: &dynamodb.Projection{ // Required NonKeyAttributes: []*string{ aws.String("NonKeyAttributeName"), // Required // More values... }, ProjectionType: aws.String("ProjectionType"), }, ProvisionedThroughput: &dynamodb.ProvisionedThroughput{ // Required ReadCapacityUnits: aws.Int64(1), // Required WriteCapacityUnits: aws.Int64(1), // Required }, }, // More values... }, LocalSecondaryIndexes: []*dynamodb.LocalSecondaryIndex{ { // Required IndexName: aws.String("IndexName"), // Required KeySchema: []*dynamodb.KeySchemaElement{ // Required { // Required AttributeName: aws.String("KeySchemaAttributeName"), // Required KeyType: aws.String("KeyType"), // Required }, // More values... }, Projection: &dynamodb.Projection{ // Required NonKeyAttributes: []*string{ aws.String("NonKeyAttributeName"), // Required // More values... }, ProjectionType: aws.String("ProjectionType"), }, }, // More values... }, StreamSpecification: &dynamodb.StreamSpecification{ StreamEnabled: aws.Bool(true), StreamViewType: aws.String("StreamViewType"), }, } resp, err := svc.CreateTable(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDynamoDB_DeleteItem() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := dynamodb.New(sess) params := &dynamodb.DeleteItemInput{ Key: map[string]*dynamodb.AttributeValue{ // Required "Key": { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, TableName: aws.String("TableName"), // Required ConditionExpression: aws.String("ConditionExpression"), ConditionalOperator: aws.String("ConditionalOperator"), Expected: map[string]*dynamodb.ExpectedAttributeValue{ "Key": { // Required AttributeValueList: []*dynamodb.AttributeValue{ { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, ComparisonOperator: aws.String("ComparisonOperator"), Exists: aws.Bool(true), Value: &dynamodb.AttributeValue{ B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, }, // More values... }, ExpressionAttributeNames: map[string]*string{ "Key": aws.String("AttributeName"), // Required // More values... }, ExpressionAttributeValues: map[string]*dynamodb.AttributeValue{ "Key": { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, ReturnConsumedCapacity: aws.String("ReturnConsumedCapacity"), ReturnItemCollectionMetrics: aws.String("ReturnItemCollectionMetrics"), ReturnValues: aws.String("ReturnValue"), } resp, err := svc.DeleteItem(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDynamoDB_DeleteTable() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := dynamodb.New(sess) params := &dynamodb.DeleteTableInput{ TableName: aws.String("TableName"), // Required } resp, err := svc.DeleteTable(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDynamoDB_DescribeLimits() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := dynamodb.New(sess) var params *dynamodb.DescribeLimitsInput resp, err := svc.DescribeLimits(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDynamoDB_DescribeTable() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := dynamodb.New(sess) params := &dynamodb.DescribeTableInput{ TableName: aws.String("TableName"), // Required } resp, err := svc.DescribeTable(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDynamoDB_GetItem() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := dynamodb.New(sess) params := &dynamodb.GetItemInput{ Key: map[string]*dynamodb.AttributeValue{ // Required "Key": { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, TableName: aws.String("TableName"), // Required AttributesToGet: []*string{ aws.String("AttributeName"), // Required // More values... }, ConsistentRead: aws.Bool(true), ExpressionAttributeNames: map[string]*string{ "Key": aws.String("AttributeName"), // Required // More values... }, ProjectionExpression: aws.String("ProjectionExpression"), ReturnConsumedCapacity: aws.String("ReturnConsumedCapacity"), } resp, err := svc.GetItem(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDynamoDB_ListTables() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := dynamodb.New(sess) params := &dynamodb.ListTablesInput{ ExclusiveStartTableName: aws.String("TableName"), Limit: aws.Int64(1), } resp, err := svc.ListTables(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDynamoDB_PutItem() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := dynamodb.New(sess) params := &dynamodb.PutItemInput{ Item: map[string]*dynamodb.AttributeValue{ // Required "Key": { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, TableName: aws.String("TableName"), // Required ConditionExpression: aws.String("ConditionExpression"), ConditionalOperator: aws.String("ConditionalOperator"), Expected: map[string]*dynamodb.ExpectedAttributeValue{ "Key": { // Required AttributeValueList: []*dynamodb.AttributeValue{ { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, ComparisonOperator: aws.String("ComparisonOperator"), Exists: aws.Bool(true), Value: &dynamodb.AttributeValue{ B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, }, // More values... }, ExpressionAttributeNames: map[string]*string{ "Key": aws.String("AttributeName"), // Required // More values... }, ExpressionAttributeValues: map[string]*dynamodb.AttributeValue{ "Key": { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, ReturnConsumedCapacity: aws.String("ReturnConsumedCapacity"), ReturnItemCollectionMetrics: aws.String("ReturnItemCollectionMetrics"), ReturnValues: aws.String("ReturnValue"), } resp, err := svc.PutItem(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDynamoDB_Query() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := dynamodb.New(sess) params := &dynamodb.QueryInput{ TableName: aws.String("TableName"), // Required AttributesToGet: []*string{ aws.String("AttributeName"), // Required // More values... }, ConditionalOperator: aws.String("ConditionalOperator"), ConsistentRead: aws.Bool(true), ExclusiveStartKey: map[string]*dynamodb.AttributeValue{ "Key": { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, ExpressionAttributeNames: map[string]*string{ "Key": aws.String("AttributeName"), // Required // More values... }, ExpressionAttributeValues: map[string]*dynamodb.AttributeValue{ "Key": { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, FilterExpression: aws.String("ConditionExpression"), IndexName: aws.String("IndexName"), KeyConditionExpression: aws.String("KeyExpression"), KeyConditions: map[string]*dynamodb.Condition{ "Key": { // Required ComparisonOperator: aws.String("ComparisonOperator"), // Required AttributeValueList: []*dynamodb.AttributeValue{ { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, }, // More values... }, Limit: aws.Int64(1), ProjectionExpression: aws.String("ProjectionExpression"), QueryFilter: map[string]*dynamodb.Condition{ "Key": { // Required ComparisonOperator: aws.String("ComparisonOperator"), // Required AttributeValueList: []*dynamodb.AttributeValue{ { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, }, // More values... }, ReturnConsumedCapacity: aws.String("ReturnConsumedCapacity"), ScanIndexForward: aws.Bool(true), Select: aws.String("Select"), } resp, err := svc.Query(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDynamoDB_Scan() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := dynamodb.New(sess) params := &dynamodb.ScanInput{ TableName: aws.String("TableName"), // Required AttributesToGet: []*string{ aws.String("AttributeName"), // Required // More values... }, ConditionalOperator: aws.String("ConditionalOperator"), ConsistentRead: aws.Bool(true), ExclusiveStartKey: map[string]*dynamodb.AttributeValue{ "Key": { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, ExpressionAttributeNames: map[string]*string{ "Key": aws.String("AttributeName"), // Required // More values... }, ExpressionAttributeValues: map[string]*dynamodb.AttributeValue{ "Key": { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, FilterExpression: aws.String("ConditionExpression"), IndexName: aws.String("IndexName"), Limit: aws.Int64(1), ProjectionExpression: aws.String("ProjectionExpression"), ReturnConsumedCapacity: aws.String("ReturnConsumedCapacity"), ScanFilter: map[string]*dynamodb.Condition{ "Key": { // Required ComparisonOperator: aws.String("ComparisonOperator"), // Required AttributeValueList: []*dynamodb.AttributeValue{ { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, }, // More values... }, Segment: aws.Int64(1), Select: aws.String("Select"), TotalSegments: aws.Int64(1), } resp, err := svc.Scan(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDynamoDB_UpdateItem() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := dynamodb.New(sess) params := &dynamodb.UpdateItemInput{ Key: map[string]*dynamodb.AttributeValue{ // Required "Key": { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, TableName: aws.String("TableName"), // Required AttributeUpdates: map[string]*dynamodb.AttributeValueUpdate{ "Key": { // Required Action: aws.String("AttributeAction"), Value: &dynamodb.AttributeValue{ B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, }, // More values... }, ConditionExpression: aws.String("ConditionExpression"), ConditionalOperator: aws.String("ConditionalOperator"), Expected: map[string]*dynamodb.ExpectedAttributeValue{ "Key": { // Required AttributeValueList: []*dynamodb.AttributeValue{ { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, ComparisonOperator: aws.String("ComparisonOperator"), Exists: aws.Bool(true), Value: &dynamodb.AttributeValue{ B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, }, // More values... }, ExpressionAttributeNames: map[string]*string{ "Key": aws.String("AttributeName"), // Required // More values... }, ExpressionAttributeValues: map[string]*dynamodb.AttributeValue{ "Key": { // Required B: []byte("PAYLOAD"), BOOL: aws.Bool(true), BS: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, L: []*dynamodb.AttributeValue{ { // Required // Recursive values... }, // More values... }, M: map[string]*dynamodb.AttributeValue{ "Key": { // Required // Recursive values... }, // More values... }, N: aws.String("NumberAttributeValue"), NS: []*string{ aws.String("NumberAttributeValue"), // Required // More values... }, NULL: aws.Bool(true), S: aws.String("StringAttributeValue"), SS: []*string{ aws.String("StringAttributeValue"), // Required // More values... }, }, // More values... }, ReturnConsumedCapacity: aws.String("ReturnConsumedCapacity"), ReturnItemCollectionMetrics: aws.String("ReturnItemCollectionMetrics"), ReturnValues: aws.String("ReturnValue"), UpdateExpression: aws.String("UpdateExpression"), } resp, err := svc.UpdateItem(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDynamoDB_UpdateTable() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := dynamodb.New(sess) params := &dynamodb.UpdateTableInput{ TableName: aws.String("TableName"), // Required AttributeDefinitions: []*dynamodb.AttributeDefinition{ { // Required AttributeName: aws.String("KeySchemaAttributeName"), // Required AttributeType: aws.String("ScalarAttributeType"), // Required }, // More values... }, GlobalSecondaryIndexUpdates: []*dynamodb.GlobalSecondaryIndexUpdate{ { // Required Create: &dynamodb.CreateGlobalSecondaryIndexAction{ IndexName: aws.String("IndexName"), // Required KeySchema: []*dynamodb.KeySchemaElement{ // Required { // Required AttributeName: aws.String("KeySchemaAttributeName"), // Required KeyType: aws.String("KeyType"), // Required }, // More values... }, Projection: &dynamodb.Projection{ // Required NonKeyAttributes: []*string{ aws.String("NonKeyAttributeName"), // Required // More values... }, ProjectionType: aws.String("ProjectionType"), }, ProvisionedThroughput: &dynamodb.ProvisionedThroughput{ // Required ReadCapacityUnits: aws.Int64(1), // Required WriteCapacityUnits: aws.Int64(1), // Required }, }, Delete: &dynamodb.DeleteGlobalSecondaryIndexAction{ IndexName: aws.String("IndexName"), // Required }, Update: &dynamodb.UpdateGlobalSecondaryIndexAction{ IndexName: aws.String("IndexName"), // Required ProvisionedThroughput: &dynamodb.ProvisionedThroughput{ // Required ReadCapacityUnits: aws.Int64(1), // Required WriteCapacityUnits: aws.Int64(1), // Required }, }, }, // More values... }, ProvisionedThroughput: &dynamodb.ProvisionedThroughput{ ReadCapacityUnits: aws.Int64(1), // Required WriteCapacityUnits: aws.Int64(1), // Required }, StreamSpecification: &dynamodb.StreamSpecification{ StreamEnabled: aws.Bool(true), StreamViewType: aws.String("StreamViewType"), }, } resp, err := svc.UpdateTable(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/dynamodb/service.go000066400000000000000000000220551300374646400210130ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package dynamodb import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // This is the Amazon DynamoDB API Reference. This guide provides descriptions // of the low-level DynamoDB API. // // This guide is intended for use with the following DynamoDB documentation: // // * Amazon DynamoDB Getting Started Guide (http://docs.aws.amazon.com/amazondynamodb/latest/gettingstartedguide/) // - provides hands-on exercises that help you learn the basics of working // with DynamoDB. If you are new to DynamoDB, we recommend that you begin // with the Getting Started Guide. // // * Amazon DynamoDB Developer Guide (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/) // - contains detailed information about DynamoDB concepts, usage, and best // practices. // // * Amazon DynamoDB Streams API Reference (http://docs.aws.amazon.com/dynamodbstreams/latest/APIReference/) // - provides descriptions and samples of the DynamoDB Streams API. (For // more information, see Capturing Table Activity with DynamoDB Streams (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Streams.html) // in the Amazon DynamoDB Developer Guide.) // // Instead of making the requests to the low-level DynamoDB API directly from // your application, we recommend that you use the AWS Software Development // Kits (SDKs). The easy-to-use libraries in the AWS SDKs make it unnecessary // to call the low-level DynamoDB API directly from your application. The libraries // take care of request authentication, serialization, and connection management. // For more information, see Using the AWS SDKs with DynamoDB (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/UsingAWSSDK.html) // in the Amazon DynamoDB Developer Guide. // // If you decide to code against the low-level DynamoDB API directly, you will // need to write the necessary code to authenticate your requests. For more // information on signing your requests, see Using the DynamoDB API (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/API.html) // in the Amazon DynamoDB Developer Guide. // // The following are short descriptions of each low-level API action, organized // by function. // // Managing Tables // // * CreateTable - Creates a table with user-specified provisioned throughput // settings. You must define a primary key for the table - either a simple // primary key (partition key), or a composite primary key (partition key // and sort key). Optionally, you can create one or more secondary indexes, // which provide fast data access using non-key attributes. // // * DescribeTable - Returns metadata for a table, such as table size, status, // and index information. // // * UpdateTable - Modifies the provisioned throughput settings for a table. // Optionally, you can modify the provisioned throughput settings for global // secondary indexes on the table. // // * ListTables - Returns a list of all tables associated with the current // AWS account and endpoint. // // * DeleteTable - Deletes a table and all of its indexes. // // For conceptual information about managing tables, see Working with Tables // (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithTables.html) // in the Amazon DynamoDB Developer Guide. // // Reading Data // // * GetItem - Returns a set of attributes for the item that has a given // primary key. By default, GetItem performs an eventually consistent read; // however, applications can request a strongly consistent read instead. // // * BatchGetItem - Performs multiple GetItem requests for data items using // their primary keys, from one table or multiple tables. The response from // BatchGetItem has a size limit of 16 MB and returns a maximum of 100 items. // Both eventually consistent and strongly consistent reads can be used. // // * Query - Returns one or more items from a table or a secondary index. // You must provide a specific value for the partition key. You can narrow // the scope of the query using comparison operators against a sort key value, // or on the index key. Query supports either eventual or strong consistency. // A single response has a size limit of 1 MB. // // * Scan - Reads every item in a table; the result set is eventually consistent. // You can limit the number of items returned by filtering the data attributes, // using conditional expressions. Scan can be used to enable ad-hoc querying // of a table against non-key attributes; however, since this is a full table // scan without using an index, Scan should not be used for any application // query use case that requires predictable performance. // // For conceptual information about reading data, see Working with Items (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithItems.html) // and Query and Scan Operations (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html) // in the Amazon DynamoDB Developer Guide. // // Modifying Data // // * PutItem - Creates a new item, or replaces an existing item with a new // item (including all the attributes). By default, if an item in the table // already exists with the same primary key, the new item completely replaces // the existing item. You can use conditional operators to replace an item // only if its attribute values match certain conditions, or to insert a // new item only if that item doesn't already exist. // // * UpdateItem - Modifies the attributes of an existing item. You can also // use conditional operators to perform an update only if the item's attribute // values match certain conditions. // // * DeleteItem - Deletes an item in a table by primary key. You can use // conditional operators to perform a delete an item only if the item's attribute // values match certain conditions. // // * BatchWriteItem - Performs multiple PutItem and DeleteItem requests across // multiple tables in a single request. A failure of any request(s) in the // batch will not cause the entire BatchWriteItem operation to fail. Supports // batches of up to 25 items to put or delete, with a maximum total request // size of 16 MB. // // For conceptual information about modifying data, see Working with Items (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithItems.html) // and Query and Scan Operations (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html) // in the Amazon DynamoDB Developer Guide. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type DynamoDB struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "dynamodb" // New creates a new instance of the DynamoDB client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a DynamoDB client from just a session. // svc := dynamodb.New(mySession) // // // Create a DynamoDB client with additional configuration // svc := dynamodb.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *DynamoDB { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *DynamoDB { svc := &DynamoDB{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2012-08-10", JSONVersion: "1.0", TargetPrefix: "DynamoDB_20120810", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a DynamoDB operation and runs any // custom request initialization. func (c *DynamoDB) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/dynamodb/waiters.go000066400000000000000000000030171300374646400210260ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package dynamodb import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilTableExists uses the DynamoDB API operation // DescribeTable to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *DynamoDB) WaitUntilTableExists(input *DescribeTableInput) error { waiterCfg := waiter.Config{ Operation: "DescribeTable", Delay: 20, MaxAttempts: 25, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "path", Argument: "Table.TableStatus", Expected: "ACTIVE", }, { State: "retry", Matcher: "error", Argument: "", Expected: "ResourceNotFoundException", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilTableNotExists uses the DynamoDB API operation // DescribeTable to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *DynamoDB) WaitUntilTableNotExists(input *DescribeTableInput) error { waiterCfg := waiter.Config{ Operation: "DescribeTable", Delay: 20, MaxAttempts: 25, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "error", Argument: "", Expected: "ResourceNotFoundException", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/dynamodbstreams/000077500000000000000000000000001300374646400204175ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/dynamodbstreams/api.go000066400000000000000000001011341300374646400215170ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package dynamodbstreams provides a client for Amazon DynamoDB Streams. package dynamodbstreams import ( "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/dynamodb" ) const opDescribeStream = "DescribeStream" // DescribeStreamRequest generates a "aws/request.Request" representing the // client's request for the DescribeStream operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeStream for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeStream method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeStreamRequest method. // req, resp := client.DescribeStreamRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DynamoDBStreams) DescribeStreamRequest(input *DescribeStreamInput) (req *request.Request, output *DescribeStreamOutput) { op := &request.Operation{ Name: opDescribeStream, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeStreamInput{} } req = c.newRequest(op, input, output) output = &DescribeStreamOutput{} req.Data = output return } // DescribeStream API operation for Amazon DynamoDB Streams. // // Returns information about a stream, including the current status of the stream, // its Amazon Resource Name (ARN), the composition of its shards, and its corresponding // DynamoDB table. // // You can call DescribeStream at a maximum rate of 10 times per second. // // Each shard in the stream has a SequenceNumberRange associated with it. If // the SequenceNumberRange has a StartingSequenceNumber but no EndingSequenceNumber, // then the shard is still open (able to receive more stream records). If both // StartingSequenceNumber and EndingSequenceNumber are present, then that shard // is closed and can no longer receive more data. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon DynamoDB Streams's // API operation DescribeStream for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The operation tried to access a nonexistent stream. // // * InternalServerError // An error occurred on the server side. // func (c *DynamoDBStreams) DescribeStream(input *DescribeStreamInput) (*DescribeStreamOutput, error) { req, out := c.DescribeStreamRequest(input) err := req.Send() return out, err } const opGetRecords = "GetRecords" // GetRecordsRequest generates a "aws/request.Request" representing the // client's request for the GetRecords operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetRecords for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetRecords method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetRecordsRequest method. // req, resp := client.GetRecordsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DynamoDBStreams) GetRecordsRequest(input *GetRecordsInput) (req *request.Request, output *GetRecordsOutput) { op := &request.Operation{ Name: opGetRecords, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetRecordsInput{} } req = c.newRequest(op, input, output) output = &GetRecordsOutput{} req.Data = output return } // GetRecords API operation for Amazon DynamoDB Streams. // // Retrieves the stream records from a given shard. // // Specify a shard iterator using the ShardIterator parameter. The shard iterator // specifies the position in the shard from which you want to start reading // stream records sequentially. If there are no stream records available in // the portion of the shard that the iterator points to, GetRecords returns // an empty list. Note that it might take multiple calls to get to a portion // of the shard that contains stream records. // // GetRecords can retrieve a maximum of 1 MB of data or 1000 stream records, // whichever comes first. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon DynamoDB Streams's // API operation GetRecords for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The operation tried to access a nonexistent stream. // // * LimitExceededException // Your request rate is too high. The AWS SDKs for DynamoDB automatically retry // requests that receive this exception. Your request is eventually successful, // unless your retry queue is too large to finish. Reduce the frequency of requests // and use exponential backoff. For more information, go to Error Retries and // Exponential Backoff (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ErrorHandling.html#APIRetries) // in the Amazon DynamoDB Developer Guide. // // * InternalServerError // An error occurred on the server side. // // * ExpiredIteratorException // The shard iterator has expired and can no longer be used to retrieve stream // records. A shard iterator expires 15 minutes after it is retrieved using // the GetShardIterator action. // // * TrimmedDataAccessException // The operation attempted to read past the oldest stream record in a shard. // // In DynamoDB Streams, there is a 24 hour limit on data retention. Stream records // whose age exceeds this limit are subject to removal (trimming) from the stream. // You might receive a TrimmedDataAccessException if: // // * You request a shard iterator with a sequence number older than the trim // point (24 hours). // // * You obtain a shard iterator, but before you use the iterator in a GetRecords // request, a stream record in the shard exceeds the 24 hour period and is // trimmed. This causes the iterator to access a record that no longer exists. // func (c *DynamoDBStreams) GetRecords(input *GetRecordsInput) (*GetRecordsOutput, error) { req, out := c.GetRecordsRequest(input) err := req.Send() return out, err } const opGetShardIterator = "GetShardIterator" // GetShardIteratorRequest generates a "aws/request.Request" representing the // client's request for the GetShardIterator operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetShardIterator for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetShardIterator method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetShardIteratorRequest method. // req, resp := client.GetShardIteratorRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DynamoDBStreams) GetShardIteratorRequest(input *GetShardIteratorInput) (req *request.Request, output *GetShardIteratorOutput) { op := &request.Operation{ Name: opGetShardIterator, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetShardIteratorInput{} } req = c.newRequest(op, input, output) output = &GetShardIteratorOutput{} req.Data = output return } // GetShardIterator API operation for Amazon DynamoDB Streams. // // Returns a shard iterator. A shard iterator provides information about how // to retrieve the stream records from within a shard. Use the shard iterator // in a subsequent GetRecords request to read the stream records from the shard. // // A shard iterator expires 15 minutes after it is returned to the requester. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon DynamoDB Streams's // API operation GetShardIterator for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The operation tried to access a nonexistent stream. // // * InternalServerError // An error occurred on the server side. // // * TrimmedDataAccessException // The operation attempted to read past the oldest stream record in a shard. // // In DynamoDB Streams, there is a 24 hour limit on data retention. Stream records // whose age exceeds this limit are subject to removal (trimming) from the stream. // You might receive a TrimmedDataAccessException if: // // * You request a shard iterator with a sequence number older than the trim // point (24 hours). // // * You obtain a shard iterator, but before you use the iterator in a GetRecords // request, a stream record in the shard exceeds the 24 hour period and is // trimmed. This causes the iterator to access a record that no longer exists. // func (c *DynamoDBStreams) GetShardIterator(input *GetShardIteratorInput) (*GetShardIteratorOutput, error) { req, out := c.GetShardIteratorRequest(input) err := req.Send() return out, err } const opListStreams = "ListStreams" // ListStreamsRequest generates a "aws/request.Request" representing the // client's request for the ListStreams operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListStreams for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListStreams method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListStreamsRequest method. // req, resp := client.ListStreamsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *DynamoDBStreams) ListStreamsRequest(input *ListStreamsInput) (req *request.Request, output *ListStreamsOutput) { op := &request.Operation{ Name: opListStreams, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListStreamsInput{} } req = c.newRequest(op, input, output) output = &ListStreamsOutput{} req.Data = output return } // ListStreams API operation for Amazon DynamoDB Streams. // // Returns an array of stream ARNs associated with the current account and endpoint. // If the TableName parameter is present, then ListStreams will return only // the streams ARNs for that table. // // You can call ListStreams at a maximum rate of 5 times per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon DynamoDB Streams's // API operation ListStreams for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The operation tried to access a nonexistent stream. // // * InternalServerError // An error occurred on the server side. // func (c *DynamoDBStreams) ListStreams(input *ListStreamsInput) (*ListStreamsOutput, error) { req, out := c.ListStreamsRequest(input) err := req.Send() return out, err } // Represents the input of a DescribeStream operation. type DescribeStreamInput struct { _ struct{} `type:"structure"` // The shard ID of the first item that this operation will evaluate. Use the // value that was returned for LastEvaluatedShardId in the previous operation. ExclusiveStartShardId *string `min:"28" type:"string"` // The maximum number of shard objects to return. The upper limit is 100. Limit *int64 `min:"1" type:"integer"` // The Amazon Resource Name (ARN) for the stream. // // StreamArn is a required field StreamArn *string `min:"37" type:"string" required:"true"` } // String returns the string representation func (s DescribeStreamInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStreamInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeStreamInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeStreamInput"} if s.ExclusiveStartShardId != nil && len(*s.ExclusiveStartShardId) < 28 { invalidParams.Add(request.NewErrParamMinLen("ExclusiveStartShardId", 28)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.StreamArn == nil { invalidParams.Add(request.NewErrParamRequired("StreamArn")) } if s.StreamArn != nil && len(*s.StreamArn) < 37 { invalidParams.Add(request.NewErrParamMinLen("StreamArn", 37)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a DescribeStream operation. type DescribeStreamOutput struct { _ struct{} `type:"structure"` // A complete description of the stream, including its creation date and time, // the DynamoDB table associated with the stream, the shard IDs within the stream, // and the beginning and ending sequence numbers of stream records within the // shards. StreamDescription *StreamDescription `type:"structure"` } // String returns the string representation func (s DescribeStreamOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStreamOutput) GoString() string { return s.String() } // Represents the input of a GetRecords operation. type GetRecordsInput struct { _ struct{} `type:"structure"` // The maximum number of records to return from the shard. The upper limit is // 1000. Limit *int64 `min:"1" type:"integer"` // A shard iterator that was retrieved from a previous GetShardIterator operation. // This iterator can be used to access the stream records in this shard. // // ShardIterator is a required field ShardIterator *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetRecordsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRecordsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetRecordsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetRecordsInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.ShardIterator == nil { invalidParams.Add(request.NewErrParamRequired("ShardIterator")) } if s.ShardIterator != nil && len(*s.ShardIterator) < 1 { invalidParams.Add(request.NewErrParamMinLen("ShardIterator", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a GetRecords operation. type GetRecordsOutput struct { _ struct{} `type:"structure"` // The next position in the shard from which to start sequentially reading stream // records. If set to null, the shard has been closed and the requested iterator // will not return any more data. NextShardIterator *string `min:"1" type:"string"` // The stream records from the shard, which were retrieved using the shard iterator. Records []*Record `type:"list"` } // String returns the string representation func (s GetRecordsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRecordsOutput) GoString() string { return s.String() } // Represents the input of a GetShardIterator operation. type GetShardIteratorInput struct { _ struct{} `type:"structure"` // The sequence number of a stream record in the shard from which to start reading. SequenceNumber *string `min:"21" type:"string"` // The identifier of the shard. The iterator will be returned for this shard // ID. // // ShardId is a required field ShardId *string `min:"28" type:"string" required:"true"` // Determines how the shard iterator is used to start reading stream records // from the shard: // // * AT_SEQUENCE_NUMBER - Start reading exactly from the position denoted // by a specific sequence number. // // * AFTER_SEQUENCE_NUMBER - Start reading right after the position denoted // by a specific sequence number. // // * TRIM_HORIZON - Start reading at the last (untrimmed) stream record, // which is the oldest record in the shard. In DynamoDB Streams, there is // a 24 hour limit on data retention. Stream records whose age exceeds this // limit are subject to removal (trimming) from the stream. // // * LATEST - Start reading just after the most recent stream record in the // shard, so that you always read the most recent data in the shard. // // ShardIteratorType is a required field ShardIteratorType *string `type:"string" required:"true" enum:"ShardIteratorType"` // The Amazon Resource Name (ARN) for the stream. // // StreamArn is a required field StreamArn *string `min:"37" type:"string" required:"true"` } // String returns the string representation func (s GetShardIteratorInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetShardIteratorInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetShardIteratorInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetShardIteratorInput"} if s.SequenceNumber != nil && len(*s.SequenceNumber) < 21 { invalidParams.Add(request.NewErrParamMinLen("SequenceNumber", 21)) } if s.ShardId == nil { invalidParams.Add(request.NewErrParamRequired("ShardId")) } if s.ShardId != nil && len(*s.ShardId) < 28 { invalidParams.Add(request.NewErrParamMinLen("ShardId", 28)) } if s.ShardIteratorType == nil { invalidParams.Add(request.NewErrParamRequired("ShardIteratorType")) } if s.StreamArn == nil { invalidParams.Add(request.NewErrParamRequired("StreamArn")) } if s.StreamArn != nil && len(*s.StreamArn) < 37 { invalidParams.Add(request.NewErrParamMinLen("StreamArn", 37)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a GetShardIterator operation. type GetShardIteratorOutput struct { _ struct{} `type:"structure"` // The position in the shard from which to start reading stream records sequentially. // A shard iterator specifies this position using the sequence number of a stream // record in a shard. ShardIterator *string `min:"1" type:"string"` } // String returns the string representation func (s GetShardIteratorOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetShardIteratorOutput) GoString() string { return s.String() } // Represents the input of a ListStreams operation. type ListStreamsInput struct { _ struct{} `type:"structure"` // The ARN (Amazon Resource Name) of the first item that this operation will // evaluate. Use the value that was returned for LastEvaluatedStreamArn in the // previous operation. ExclusiveStartStreamArn *string `min:"37" type:"string"` // The maximum number of streams to return. The upper limit is 100. Limit *int64 `min:"1" type:"integer"` // If this parameter is provided, then only the streams associated with this // table name are returned. TableName *string `min:"3" type:"string"` } // String returns the string representation func (s ListStreamsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListStreamsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListStreamsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListStreamsInput"} if s.ExclusiveStartStreamArn != nil && len(*s.ExclusiveStartStreamArn) < 37 { invalidParams.Add(request.NewErrParamMinLen("ExclusiveStartStreamArn", 37)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.TableName != nil && len(*s.TableName) < 3 { invalidParams.Add(request.NewErrParamMinLen("TableName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a ListStreams operation. type ListStreamsOutput struct { _ struct{} `type:"structure"` // The stream ARN of the item where the operation stopped, inclusive of the // previous result set. Use this value to start a new operation, excluding this // value in the new request. // // If LastEvaluatedStreamArn is empty, then the "last page" of results has been // processed and there is no more data to be retrieved. // // If LastEvaluatedStreamArn is not empty, it does not necessarily mean that // there is more data in the result set. The only way to know when you have // reached the end of the result set is when LastEvaluatedStreamArn is empty. LastEvaluatedStreamArn *string `min:"37" type:"string"` // A list of stream descriptors associated with the current account and endpoint. Streams []*Stream `type:"list"` } // String returns the string representation func (s ListStreamsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListStreamsOutput) GoString() string { return s.String() } // A description of a unique event within a stream. type Record struct { _ struct{} `type:"structure"` // The region in which the GetRecords request was received. AwsRegion *string `locationName:"awsRegion" type:"string"` // The main body of the stream record, containing all of the DynamoDB-specific // fields. Dynamodb *StreamRecord `locationName:"dynamodb" type:"structure"` // A globally unique identifier for the event that was recorded in this stream // record. EventID *string `locationName:"eventID" type:"string"` // The type of data modification that was performed on the DynamoDB table: // // * INSERT - a new item was added to the table. // // * MODIFY - one or more of an existing item's attributes were modified. // // * REMOVE - the item was deleted from the table EventName *string `locationName:"eventName" type:"string" enum:"OperationType"` // The AWS service from which the stream record originated. For DynamoDB Streams, // this is aws:dynamodb. EventSource *string `locationName:"eventSource" type:"string"` // The version number of the stream record format. This number is updated whenever // the structure of Record is modified. // // Client applications must not assume that eventVersion will remain at a particular // value, as this number is subject to change at any time. In general, eventVersion // will only increase as the low-level DynamoDB Streams API evolves. EventVersion *string `locationName:"eventVersion" type:"string"` } // String returns the string representation func (s Record) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Record) GoString() string { return s.String() } // The beginning and ending sequence numbers for the stream records contained // within a shard. type SequenceNumberRange struct { _ struct{} `type:"structure"` // The last sequence number. EndingSequenceNumber *string `min:"21" type:"string"` // The first sequence number. StartingSequenceNumber *string `min:"21" type:"string"` } // String returns the string representation func (s SequenceNumberRange) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SequenceNumberRange) GoString() string { return s.String() } // A uniquely identified group of stream records within a stream. type Shard struct { _ struct{} `type:"structure"` // The shard ID of the current shard's parent. ParentShardId *string `min:"28" type:"string"` // The range of possible sequence numbers for the shard. SequenceNumberRange *SequenceNumberRange `type:"structure"` // The system-generated identifier for this shard. ShardId *string `min:"28" type:"string"` } // String returns the string representation func (s Shard) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Shard) GoString() string { return s.String() } // Represents all of the data describing a particular stream. type Stream struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) for the stream. StreamArn *string `min:"37" type:"string"` // A timestamp, in ISO 8601 format, for this stream. // // Note that LatestStreamLabel is not a unique identifier for the stream, because // it is possible that a stream from another table might have the same timestamp. // However, the combination of the following three elements is guaranteed to // be unique: // // * the AWS customer ID. // // * the table name // // * the StreamLabel StreamLabel *string `type:"string"` // The DynamoDB table with which the stream is associated. TableName *string `min:"3" type:"string"` } // String returns the string representation func (s Stream) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Stream) GoString() string { return s.String() } // Represents all of the data describing a particular stream. type StreamDescription struct { _ struct{} `type:"structure"` // The date and time when the request to create this stream was issued. CreationRequestDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The key attribute(s) of the stream's DynamoDB table. KeySchema []*dynamodb.KeySchemaElement `min:"1" type:"list"` // The shard ID of the item where the operation stopped, inclusive of the previous // result set. Use this value to start a new operation, excluding this value // in the new request. // // If LastEvaluatedShardId is empty, then the "last page" of results has been // processed and there is currently no more data to be retrieved. // // If LastEvaluatedShardId is not empty, it does not necessarily mean that there // is more data in the result set. The only way to know when you have reached // the end of the result set is when LastEvaluatedShardId is empty. LastEvaluatedShardId *string `min:"28" type:"string"` // The shards that comprise the stream. Shards []*Shard `type:"list"` // The Amazon Resource Name (ARN) for the stream. StreamArn *string `min:"37" type:"string"` // A timestamp, in ISO 8601 format, for this stream. // // Note that LatestStreamLabel is not a unique identifier for the stream, because // it is possible that a stream from another table might have the same timestamp. // However, the combination of the following three elements is guaranteed to // be unique: // // * the AWS customer ID. // // * the table name // // * the StreamLabel StreamLabel *string `type:"string"` // Indicates the current status of the stream: // // * ENABLING - Streams is currently being enabled on the DynamoDB table. // // * ENABLED - the stream is enabled. // // * DISABLING - Streams is currently being disabled on the DynamoDB table. // // * DISABLED - the stream is disabled. StreamStatus *string `type:"string" enum:"StreamStatus"` // Indicates the format of the records within this stream: // // * KEYS_ONLY - only the key attributes of items that were modified in the // DynamoDB table. // // * NEW_IMAGE - entire items from the table, as they appeared after they // were modified. // // * OLD_IMAGE - entire items from the table, as they appeared before they // were modified. // // * NEW_AND_OLD_IMAGES - both the new and the old images of the items from // the table. StreamViewType *string `type:"string" enum:"StreamViewType"` // The DynamoDB table with which the stream is associated. TableName *string `min:"3" type:"string"` } // String returns the string representation func (s StreamDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StreamDescription) GoString() string { return s.String() } // A description of a single data modification that was performed on an item // in a DynamoDB table. type StreamRecord struct { _ struct{} `type:"structure"` // The approximate date and time when the stream record was created, in UNIX // epoch time (http://www.epochconverter.com/) format. ApproximateCreationDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The primary key attribute(s) for the DynamoDB item that was modified. Keys map[string]*dynamodb.AttributeValue `type:"map"` // The item in the DynamoDB table as it appeared after it was modified. NewImage map[string]*dynamodb.AttributeValue `type:"map"` // The item in the DynamoDB table as it appeared before it was modified. OldImage map[string]*dynamodb.AttributeValue `type:"map"` // The sequence number of the stream record. SequenceNumber *string `min:"21" type:"string"` // The size of the stream record, in bytes. SizeBytes *int64 `min:"1" type:"long"` // The type of data from the modified DynamoDB item that was captured in this // stream record: // // * KEYS_ONLY - only the key attributes of the modified item. // // * NEW_IMAGE - the entire item, as it appeared after it was modified. // // * OLD_IMAGE - the entire item, as it appeared before it was modified. // // * NEW_AND_OLD_IMAGES - both the new and the old item images of the item. StreamViewType *string `type:"string" enum:"StreamViewType"` } // String returns the string representation func (s StreamRecord) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StreamRecord) GoString() string { return s.String() } const ( // KeyTypeHash is a KeyType enum value KeyTypeHash = "HASH" // KeyTypeRange is a KeyType enum value KeyTypeRange = "RANGE" ) const ( // OperationTypeInsert is a OperationType enum value OperationTypeInsert = "INSERT" // OperationTypeModify is a OperationType enum value OperationTypeModify = "MODIFY" // OperationTypeRemove is a OperationType enum value OperationTypeRemove = "REMOVE" ) const ( // ShardIteratorTypeTrimHorizon is a ShardIteratorType enum value ShardIteratorTypeTrimHorizon = "TRIM_HORIZON" // ShardIteratorTypeLatest is a ShardIteratorType enum value ShardIteratorTypeLatest = "LATEST" // ShardIteratorTypeAtSequenceNumber is a ShardIteratorType enum value ShardIteratorTypeAtSequenceNumber = "AT_SEQUENCE_NUMBER" // ShardIteratorTypeAfterSequenceNumber is a ShardIteratorType enum value ShardIteratorTypeAfterSequenceNumber = "AFTER_SEQUENCE_NUMBER" ) const ( // StreamStatusEnabling is a StreamStatus enum value StreamStatusEnabling = "ENABLING" // StreamStatusEnabled is a StreamStatus enum value StreamStatusEnabled = "ENABLED" // StreamStatusDisabling is a StreamStatus enum value StreamStatusDisabling = "DISABLING" // StreamStatusDisabled is a StreamStatus enum value StreamStatusDisabled = "DISABLED" ) const ( // StreamViewTypeNewImage is a StreamViewType enum value StreamViewTypeNewImage = "NEW_IMAGE" // StreamViewTypeOldImage is a StreamViewType enum value StreamViewTypeOldImage = "OLD_IMAGE" // StreamViewTypeNewAndOldImages is a StreamViewType enum value StreamViewTypeNewAndOldImages = "NEW_AND_OLD_IMAGES" // StreamViewTypeKeysOnly is a StreamViewType enum value StreamViewTypeKeysOnly = "KEYS_ONLY" ) aws-sdk-go-1.4.22/service/dynamodbstreams/dynamodbstreamsiface/000077500000000000000000000000001300374646400246035ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/dynamodbstreams/dynamodbstreamsiface/interface.go000066400000000000000000000061741300374646400271020ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package dynamodbstreamsiface provides an interface to enable mocking the Amazon DynamoDB Streams service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package dynamodbstreamsiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/dynamodbstreams" ) // DynamoDBStreamsAPI provides an interface to enable mocking the // dynamodbstreams.DynamoDBStreams service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon DynamoDB Streams. // func myFunc(svc dynamodbstreamsiface.DynamoDBStreamsAPI) bool { // // Make svc.DescribeStream request // } // // func main() { // sess := session.New() // svc := dynamodbstreams.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockDynamoDBStreamsClient struct { // dynamodbstreamsiface.DynamoDBStreamsAPI // } // func (m *mockDynamoDBStreamsClient) DescribeStream(input *dynamodbstreams.DescribeStreamInput) (*dynamodbstreams.DescribeStreamOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockDynamoDBStreamsClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type DynamoDBStreamsAPI interface { DescribeStreamRequest(*dynamodbstreams.DescribeStreamInput) (*request.Request, *dynamodbstreams.DescribeStreamOutput) DescribeStream(*dynamodbstreams.DescribeStreamInput) (*dynamodbstreams.DescribeStreamOutput, error) GetRecordsRequest(*dynamodbstreams.GetRecordsInput) (*request.Request, *dynamodbstreams.GetRecordsOutput) GetRecords(*dynamodbstreams.GetRecordsInput) (*dynamodbstreams.GetRecordsOutput, error) GetShardIteratorRequest(*dynamodbstreams.GetShardIteratorInput) (*request.Request, *dynamodbstreams.GetShardIteratorOutput) GetShardIterator(*dynamodbstreams.GetShardIteratorInput) (*dynamodbstreams.GetShardIteratorOutput, error) ListStreamsRequest(*dynamodbstreams.ListStreamsInput) (*request.Request, *dynamodbstreams.ListStreamsOutput) ListStreams(*dynamodbstreams.ListStreamsInput) (*dynamodbstreams.ListStreamsOutput, error) } var _ DynamoDBStreamsAPI = (*dynamodbstreams.DynamoDBStreams)(nil) aws-sdk-go-1.4.22/service/dynamodbstreams/examples_test.go000066400000000000000000000054511300374646400236300ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package dynamodbstreams_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/dynamodbstreams" ) var _ time.Duration var _ bytes.Buffer func ExampleDynamoDBStreams_DescribeStream() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := dynamodbstreams.New(sess) params := &dynamodbstreams.DescribeStreamInput{ StreamArn: aws.String("StreamArn"), // Required ExclusiveStartShardId: aws.String("ShardId"), Limit: aws.Int64(1), } resp, err := svc.DescribeStream(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDynamoDBStreams_GetRecords() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := dynamodbstreams.New(sess) params := &dynamodbstreams.GetRecordsInput{ ShardIterator: aws.String("ShardIterator"), // Required Limit: aws.Int64(1), } resp, err := svc.GetRecords(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDynamoDBStreams_GetShardIterator() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := dynamodbstreams.New(sess) params := &dynamodbstreams.GetShardIteratorInput{ ShardId: aws.String("ShardId"), // Required ShardIteratorType: aws.String("ShardIteratorType"), // Required StreamArn: aws.String("StreamArn"), // Required SequenceNumber: aws.String("SequenceNumber"), } resp, err := svc.GetShardIterator(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleDynamoDBStreams_ListStreams() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := dynamodbstreams.New(sess) params := &dynamodbstreams.ListStreamsInput{ ExclusiveStartStreamArn: aws.String("StreamArn"), Limit: aws.Int64(1), TableName: aws.String("TableName"), } resp, err := svc.ListStreams(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/dynamodbstreams/service.go000066400000000000000000000071511300374646400224120ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package dynamodbstreams import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Amazon DynamoDB Streams provides API actions for accessing streams and processing // stream records. To learn more about application development with Streams, // see Capturing Table Activity with DynamoDB Streams (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Streams.html) // in the Amazon DynamoDB Developer Guide. // // The following are short descriptions of each low-level DynamoDB Streams action: // // * DescribeStream - Returns detailed information about a particular stream. // // * GetRecords - Retrieves the stream records from within a shard. // // * GetShardIterator - Returns information on how to retrieve the streams // record from a shard with a given shard ID. // // * ListStreams - Returns a list of all the streams associated with the // current AWS account and endpoint. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type DynamoDBStreams struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "streams.dynamodb" // New creates a new instance of the DynamoDBStreams client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a DynamoDBStreams client from just a session. // svc := dynamodbstreams.New(mySession) // // // Create a DynamoDBStreams client with additional configuration // svc := dynamodbstreams.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *DynamoDBStreams { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *DynamoDBStreams { svc := &DynamoDBStreams{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningName: "dynamodb", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2012-08-10", JSONVersion: "1.0", TargetPrefix: "DynamoDBStreams_20120810", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a DynamoDBStreams operation and runs any // custom request initialization. func (c *DynamoDBStreams) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/ec2/000077500000000000000000000000001300374646400156745ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/ec2/api.go000066400000000000000000051515771300374646400170210ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package ec2 provides a client for Amazon Elastic Compute Cloud. package ec2 import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/ec2query" ) const opAcceptReservedInstancesExchangeQuote = "AcceptReservedInstancesExchangeQuote" // AcceptReservedInstancesExchangeQuoteRequest generates a "aws/request.Request" representing the // client's request for the AcceptReservedInstancesExchangeQuote operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AcceptReservedInstancesExchangeQuote for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AcceptReservedInstancesExchangeQuote method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AcceptReservedInstancesExchangeQuoteRequest method. // req, resp := client.AcceptReservedInstancesExchangeQuoteRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) AcceptReservedInstancesExchangeQuoteRequest(input *AcceptReservedInstancesExchangeQuoteInput) (req *request.Request, output *AcceptReservedInstancesExchangeQuoteOutput) { op := &request.Operation{ Name: opAcceptReservedInstancesExchangeQuote, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AcceptReservedInstancesExchangeQuoteInput{} } req = c.newRequest(op, input, output) output = &AcceptReservedInstancesExchangeQuoteOutput{} req.Data = output return } // AcceptReservedInstancesExchangeQuote API operation for Amazon Elastic Compute Cloud. // // Purchases Convertible Reserved Instance offerings described in the GetReservedInstancesExchangeQuote // call. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation AcceptReservedInstancesExchangeQuote for usage and error information. func (c *EC2) AcceptReservedInstancesExchangeQuote(input *AcceptReservedInstancesExchangeQuoteInput) (*AcceptReservedInstancesExchangeQuoteOutput, error) { req, out := c.AcceptReservedInstancesExchangeQuoteRequest(input) err := req.Send() return out, err } const opAcceptVpcPeeringConnection = "AcceptVpcPeeringConnection" // AcceptVpcPeeringConnectionRequest generates a "aws/request.Request" representing the // client's request for the AcceptVpcPeeringConnection operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AcceptVpcPeeringConnection for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AcceptVpcPeeringConnection method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AcceptVpcPeeringConnectionRequest method. // req, resp := client.AcceptVpcPeeringConnectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) AcceptVpcPeeringConnectionRequest(input *AcceptVpcPeeringConnectionInput) (req *request.Request, output *AcceptVpcPeeringConnectionOutput) { op := &request.Operation{ Name: opAcceptVpcPeeringConnection, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AcceptVpcPeeringConnectionInput{} } req = c.newRequest(op, input, output) output = &AcceptVpcPeeringConnectionOutput{} req.Data = output return } // AcceptVpcPeeringConnection API operation for Amazon Elastic Compute Cloud. // // Accept a VPC peering connection request. To accept a request, the VPC peering // connection must be in the pending-acceptance state, and you must be the owner // of the peer VPC. Use the DescribeVpcPeeringConnections request to view your // outstanding VPC peering connection requests. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation AcceptVpcPeeringConnection for usage and error information. func (c *EC2) AcceptVpcPeeringConnection(input *AcceptVpcPeeringConnectionInput) (*AcceptVpcPeeringConnectionOutput, error) { req, out := c.AcceptVpcPeeringConnectionRequest(input) err := req.Send() return out, err } const opAllocateAddress = "AllocateAddress" // AllocateAddressRequest generates a "aws/request.Request" representing the // client's request for the AllocateAddress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AllocateAddress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AllocateAddress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AllocateAddressRequest method. // req, resp := client.AllocateAddressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) AllocateAddressRequest(input *AllocateAddressInput) (req *request.Request, output *AllocateAddressOutput) { op := &request.Operation{ Name: opAllocateAddress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AllocateAddressInput{} } req = c.newRequest(op, input, output) output = &AllocateAddressOutput{} req.Data = output return } // AllocateAddress API operation for Amazon Elastic Compute Cloud. // // Acquires an Elastic IP address. // // An Elastic IP address is for use either in the EC2-Classic platform or in // a VPC. For more information, see Elastic IP Addresses (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation AllocateAddress for usage and error information. func (c *EC2) AllocateAddress(input *AllocateAddressInput) (*AllocateAddressOutput, error) { req, out := c.AllocateAddressRequest(input) err := req.Send() return out, err } const opAllocateHosts = "AllocateHosts" // AllocateHostsRequest generates a "aws/request.Request" representing the // client's request for the AllocateHosts operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AllocateHosts for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AllocateHosts method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AllocateHostsRequest method. // req, resp := client.AllocateHostsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) AllocateHostsRequest(input *AllocateHostsInput) (req *request.Request, output *AllocateHostsOutput) { op := &request.Operation{ Name: opAllocateHosts, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AllocateHostsInput{} } req = c.newRequest(op, input, output) output = &AllocateHostsOutput{} req.Data = output return } // AllocateHosts API operation for Amazon Elastic Compute Cloud. // // Allocates a Dedicated Host to your account. At minimum you need to specify // the instance size type, Availability Zone, and quantity of hosts you want // to allocate. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation AllocateHosts for usage and error information. func (c *EC2) AllocateHosts(input *AllocateHostsInput) (*AllocateHostsOutput, error) { req, out := c.AllocateHostsRequest(input) err := req.Send() return out, err } const opAssignPrivateIpAddresses = "AssignPrivateIpAddresses" // AssignPrivateIpAddressesRequest generates a "aws/request.Request" representing the // client's request for the AssignPrivateIpAddresses operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AssignPrivateIpAddresses for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AssignPrivateIpAddresses method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AssignPrivateIpAddressesRequest method. // req, resp := client.AssignPrivateIpAddressesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) AssignPrivateIpAddressesRequest(input *AssignPrivateIpAddressesInput) (req *request.Request, output *AssignPrivateIpAddressesOutput) { op := &request.Operation{ Name: opAssignPrivateIpAddresses, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AssignPrivateIpAddressesInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AssignPrivateIpAddressesOutput{} req.Data = output return } // AssignPrivateIpAddresses API operation for Amazon Elastic Compute Cloud. // // Assigns one or more secondary private IP addresses to the specified network // interface. You can specify one or more specific secondary IP addresses, or // you can specify the number of secondary IP addresses to be automatically // assigned within the subnet's CIDR block range. The number of secondary IP // addresses that you can assign to an instance varies by instance type. For // information about instance types, see Instance Types (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) // in the Amazon Elastic Compute Cloud User Guide. For more information about // Elastic IP addresses, see Elastic IP Addresses (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) // in the Amazon Elastic Compute Cloud User Guide. // // AssignPrivateIpAddresses is available only in EC2-VPC. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation AssignPrivateIpAddresses for usage and error information. func (c *EC2) AssignPrivateIpAddresses(input *AssignPrivateIpAddressesInput) (*AssignPrivateIpAddressesOutput, error) { req, out := c.AssignPrivateIpAddressesRequest(input) err := req.Send() return out, err } const opAssociateAddress = "AssociateAddress" // AssociateAddressRequest generates a "aws/request.Request" representing the // client's request for the AssociateAddress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AssociateAddress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AssociateAddress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AssociateAddressRequest method. // req, resp := client.AssociateAddressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) AssociateAddressRequest(input *AssociateAddressInput) (req *request.Request, output *AssociateAddressOutput) { op := &request.Operation{ Name: opAssociateAddress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AssociateAddressInput{} } req = c.newRequest(op, input, output) output = &AssociateAddressOutput{} req.Data = output return } // AssociateAddress API operation for Amazon Elastic Compute Cloud. // // Associates an Elastic IP address with an instance or a network interface. // // An Elastic IP address is for use in either the EC2-Classic platform or in // a VPC. For more information, see Elastic IP Addresses (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) // in the Amazon Elastic Compute Cloud User Guide. // // [EC2-Classic, VPC in an EC2-VPC-only account] If the Elastic IP address is // already associated with a different instance, it is disassociated from that // instance and associated with the specified instance. // // [VPC in an EC2-Classic account] If you don't specify a private IP address, // the Elastic IP address is associated with the primary IP address. If the // Elastic IP address is already associated with a different instance or a network // interface, you get an error unless you allow reassociation. // // This is an idempotent operation. If you perform the operation more than once, // Amazon EC2 doesn't return an error, and you may be charged for each time // the Elastic IP address is remapped to the same instance. For more information, // see the Elastic IP Addresses section of Amazon EC2 Pricing (http://aws.amazon.com/ec2/pricing/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation AssociateAddress for usage and error information. func (c *EC2) AssociateAddress(input *AssociateAddressInput) (*AssociateAddressOutput, error) { req, out := c.AssociateAddressRequest(input) err := req.Send() return out, err } const opAssociateDhcpOptions = "AssociateDhcpOptions" // AssociateDhcpOptionsRequest generates a "aws/request.Request" representing the // client's request for the AssociateDhcpOptions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AssociateDhcpOptions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AssociateDhcpOptions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AssociateDhcpOptionsRequest method. // req, resp := client.AssociateDhcpOptionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) AssociateDhcpOptionsRequest(input *AssociateDhcpOptionsInput) (req *request.Request, output *AssociateDhcpOptionsOutput) { op := &request.Operation{ Name: opAssociateDhcpOptions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AssociateDhcpOptionsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AssociateDhcpOptionsOutput{} req.Data = output return } // AssociateDhcpOptions API operation for Amazon Elastic Compute Cloud. // // Associates a set of DHCP options (that you've previously created) with the // specified VPC, or associates no DHCP options with the VPC. // // After you associate the options with the VPC, any existing instances and // all new instances that you launch in that VPC use the options. You don't // need to restart or relaunch the instances. They automatically pick up the // changes within a few hours, depending on how frequently the instance renews // its DHCP lease. You can explicitly renew the lease using the operating system // on the instance. // // For more information, see DHCP Options Sets (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_DHCP_Options.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation AssociateDhcpOptions for usage and error information. func (c *EC2) AssociateDhcpOptions(input *AssociateDhcpOptionsInput) (*AssociateDhcpOptionsOutput, error) { req, out := c.AssociateDhcpOptionsRequest(input) err := req.Send() return out, err } const opAssociateRouteTable = "AssociateRouteTable" // AssociateRouteTableRequest generates a "aws/request.Request" representing the // client's request for the AssociateRouteTable operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AssociateRouteTable for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AssociateRouteTable method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AssociateRouteTableRequest method. // req, resp := client.AssociateRouteTableRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) AssociateRouteTableRequest(input *AssociateRouteTableInput) (req *request.Request, output *AssociateRouteTableOutput) { op := &request.Operation{ Name: opAssociateRouteTable, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AssociateRouteTableInput{} } req = c.newRequest(op, input, output) output = &AssociateRouteTableOutput{} req.Data = output return } // AssociateRouteTable API operation for Amazon Elastic Compute Cloud. // // Associates a subnet with a route table. The subnet and route table must be // in the same VPC. This association causes traffic originating from the subnet // to be routed according to the routes in the route table. The action returns // an association ID, which you need in order to disassociate the route table // from the subnet later. A route table can be associated with multiple subnets. // // For more information about route tables, see Route Tables (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Route_Tables.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation AssociateRouteTable for usage and error information. func (c *EC2) AssociateRouteTable(input *AssociateRouteTableInput) (*AssociateRouteTableOutput, error) { req, out := c.AssociateRouteTableRequest(input) err := req.Send() return out, err } const opAttachClassicLinkVpc = "AttachClassicLinkVpc" // AttachClassicLinkVpcRequest generates a "aws/request.Request" representing the // client's request for the AttachClassicLinkVpc operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AttachClassicLinkVpc for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AttachClassicLinkVpc method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AttachClassicLinkVpcRequest method. // req, resp := client.AttachClassicLinkVpcRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) AttachClassicLinkVpcRequest(input *AttachClassicLinkVpcInput) (req *request.Request, output *AttachClassicLinkVpcOutput) { op := &request.Operation{ Name: opAttachClassicLinkVpc, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AttachClassicLinkVpcInput{} } req = c.newRequest(op, input, output) output = &AttachClassicLinkVpcOutput{} req.Data = output return } // AttachClassicLinkVpc API operation for Amazon Elastic Compute Cloud. // // Links an EC2-Classic instance to a ClassicLink-enabled VPC through one or // more of the VPC's security groups. You cannot link an EC2-Classic instance // to more than one VPC at a time. You can only link an instance that's in the // running state. An instance is automatically unlinked from a VPC when it's // stopped - you can link it to the VPC again when you restart it. // // After you've linked an instance, you cannot change the VPC security groups // that are associated with it. To change the security groups, you must first // unlink the instance, and then link it again. // // Linking your instance to a VPC is sometimes referred to as attaching your // instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation AttachClassicLinkVpc for usage and error information. func (c *EC2) AttachClassicLinkVpc(input *AttachClassicLinkVpcInput) (*AttachClassicLinkVpcOutput, error) { req, out := c.AttachClassicLinkVpcRequest(input) err := req.Send() return out, err } const opAttachInternetGateway = "AttachInternetGateway" // AttachInternetGatewayRequest generates a "aws/request.Request" representing the // client's request for the AttachInternetGateway operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AttachInternetGateway for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AttachInternetGateway method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AttachInternetGatewayRequest method. // req, resp := client.AttachInternetGatewayRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) AttachInternetGatewayRequest(input *AttachInternetGatewayInput) (req *request.Request, output *AttachInternetGatewayOutput) { op := &request.Operation{ Name: opAttachInternetGateway, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AttachInternetGatewayInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AttachInternetGatewayOutput{} req.Data = output return } // AttachInternetGateway API operation for Amazon Elastic Compute Cloud. // // Attaches an Internet gateway to a VPC, enabling connectivity between the // Internet and the VPC. For more information about your VPC and Internet gateway, // see the Amazon Virtual Private Cloud User Guide (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation AttachInternetGateway for usage and error information. func (c *EC2) AttachInternetGateway(input *AttachInternetGatewayInput) (*AttachInternetGatewayOutput, error) { req, out := c.AttachInternetGatewayRequest(input) err := req.Send() return out, err } const opAttachNetworkInterface = "AttachNetworkInterface" // AttachNetworkInterfaceRequest generates a "aws/request.Request" representing the // client's request for the AttachNetworkInterface operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AttachNetworkInterface for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AttachNetworkInterface method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AttachNetworkInterfaceRequest method. // req, resp := client.AttachNetworkInterfaceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) AttachNetworkInterfaceRequest(input *AttachNetworkInterfaceInput) (req *request.Request, output *AttachNetworkInterfaceOutput) { op := &request.Operation{ Name: opAttachNetworkInterface, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AttachNetworkInterfaceInput{} } req = c.newRequest(op, input, output) output = &AttachNetworkInterfaceOutput{} req.Data = output return } // AttachNetworkInterface API operation for Amazon Elastic Compute Cloud. // // Attaches a network interface to an instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation AttachNetworkInterface for usage and error information. func (c *EC2) AttachNetworkInterface(input *AttachNetworkInterfaceInput) (*AttachNetworkInterfaceOutput, error) { req, out := c.AttachNetworkInterfaceRequest(input) err := req.Send() return out, err } const opAttachVolume = "AttachVolume" // AttachVolumeRequest generates a "aws/request.Request" representing the // client's request for the AttachVolume operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AttachVolume for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AttachVolume method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AttachVolumeRequest method. // req, resp := client.AttachVolumeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) AttachVolumeRequest(input *AttachVolumeInput) (req *request.Request, output *VolumeAttachment) { op := &request.Operation{ Name: opAttachVolume, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AttachVolumeInput{} } req = c.newRequest(op, input, output) output = &VolumeAttachment{} req.Data = output return } // AttachVolume API operation for Amazon Elastic Compute Cloud. // // Attaches an EBS volume to a running or stopped instance and exposes it to // the instance with the specified device name. // // Encrypted EBS volumes may only be attached to instances that support Amazon // EBS encryption. For more information, see Amazon EBS Encryption (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) // in the Amazon Elastic Compute Cloud User Guide. // // For a list of supported device names, see Attaching an EBS Volume to an Instance // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-attaching-volume.html). // Any device names that aren't reserved for instance store volumes can be used // for EBS volumes. For more information, see Amazon EC2 Instance Store (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html) // in the Amazon Elastic Compute Cloud User Guide. // // If a volume has an AWS Marketplace product code: // // * The volume can be attached only to a stopped instance. // // * AWS Marketplace product codes are copied from the volume to the instance. // // * You must be subscribed to the product. // // * The instance type and operating system of the instance must support // the product. For example, you can't detach a volume from a Windows instance // and attach it to a Linux instance. // // For an overview of the AWS Marketplace, see Introducing AWS Marketplace (https://aws.amazon.com/marketplace/help/200900000). // // For more information about EBS volumes, see Attaching Amazon EBS Volumes // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-attaching-volume.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation AttachVolume for usage and error information. func (c *EC2) AttachVolume(input *AttachVolumeInput) (*VolumeAttachment, error) { req, out := c.AttachVolumeRequest(input) err := req.Send() return out, err } const opAttachVpnGateway = "AttachVpnGateway" // AttachVpnGatewayRequest generates a "aws/request.Request" representing the // client's request for the AttachVpnGateway operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AttachVpnGateway for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AttachVpnGateway method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AttachVpnGatewayRequest method. // req, resp := client.AttachVpnGatewayRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) AttachVpnGatewayRequest(input *AttachVpnGatewayInput) (req *request.Request, output *AttachVpnGatewayOutput) { op := &request.Operation{ Name: opAttachVpnGateway, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AttachVpnGatewayInput{} } req = c.newRequest(op, input, output) output = &AttachVpnGatewayOutput{} req.Data = output return } // AttachVpnGateway API operation for Amazon Elastic Compute Cloud. // // Attaches a virtual private gateway to a VPC. For more information, see Adding // a Hardware Virtual Private Gateway to Your VPC (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_VPN.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation AttachVpnGateway for usage and error information. func (c *EC2) AttachVpnGateway(input *AttachVpnGatewayInput) (*AttachVpnGatewayOutput, error) { req, out := c.AttachVpnGatewayRequest(input) err := req.Send() return out, err } const opAuthorizeSecurityGroupEgress = "AuthorizeSecurityGroupEgress" // AuthorizeSecurityGroupEgressRequest generates a "aws/request.Request" representing the // client's request for the AuthorizeSecurityGroupEgress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AuthorizeSecurityGroupEgress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AuthorizeSecurityGroupEgress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AuthorizeSecurityGroupEgressRequest method. // req, resp := client.AuthorizeSecurityGroupEgressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) AuthorizeSecurityGroupEgressRequest(input *AuthorizeSecurityGroupEgressInput) (req *request.Request, output *AuthorizeSecurityGroupEgressOutput) { op := &request.Operation{ Name: opAuthorizeSecurityGroupEgress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AuthorizeSecurityGroupEgressInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AuthorizeSecurityGroupEgressOutput{} req.Data = output return } // AuthorizeSecurityGroupEgress API operation for Amazon Elastic Compute Cloud. // // [EC2-VPC only] Adds one or more egress rules to a security group for use // with a VPC. Specifically, this action permits instances to send traffic to // one or more destination CIDR IP address ranges, or to one or more destination // security groups for the same VPC. This action doesn't apply to security groups // for use in EC2-Classic. For more information, see Security Groups for Your // VPC (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_SecurityGroups.html) // in the Amazon Virtual Private Cloud User Guide. // // You can have up to 50 rules per security group (covering both ingress and // egress rules). // // Each rule consists of the protocol (for example, TCP), plus either a CIDR // range or a source group. For the TCP and UDP protocols, you must also specify // the destination port or port range. For the ICMP protocol, you must also // specify the ICMP type and code. You can use -1 for the type or code to mean // all types or all codes. // // Rule changes are propagated to affected instances as quickly as possible. // However, a small delay might occur. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation AuthorizeSecurityGroupEgress for usage and error information. func (c *EC2) AuthorizeSecurityGroupEgress(input *AuthorizeSecurityGroupEgressInput) (*AuthorizeSecurityGroupEgressOutput, error) { req, out := c.AuthorizeSecurityGroupEgressRequest(input) err := req.Send() return out, err } const opAuthorizeSecurityGroupIngress = "AuthorizeSecurityGroupIngress" // AuthorizeSecurityGroupIngressRequest generates a "aws/request.Request" representing the // client's request for the AuthorizeSecurityGroupIngress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AuthorizeSecurityGroupIngress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AuthorizeSecurityGroupIngress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AuthorizeSecurityGroupIngressRequest method. // req, resp := client.AuthorizeSecurityGroupIngressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) AuthorizeSecurityGroupIngressRequest(input *AuthorizeSecurityGroupIngressInput) (req *request.Request, output *AuthorizeSecurityGroupIngressOutput) { op := &request.Operation{ Name: opAuthorizeSecurityGroupIngress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AuthorizeSecurityGroupIngressInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AuthorizeSecurityGroupIngressOutput{} req.Data = output return } // AuthorizeSecurityGroupIngress API operation for Amazon Elastic Compute Cloud. // // Adds one or more ingress rules to a security group. // // EC2-Classic: You can have up to 100 rules per group. // // EC2-VPC: You can have up to 50 rules per group (covering both ingress and // egress rules). // // Rule changes are propagated to instances within the security group as quickly // as possible. However, a small delay might occur. // // [EC2-Classic] This action gives one or more CIDR IP address ranges permission // to access a security group in your account, or gives one or more security // groups (called the source groups) permission to access a security group for // your account. A source group can be for your own AWS account, or another. // // [EC2-VPC] This action gives one or more CIDR IP address ranges permission // to access a security group in your VPC, or gives one or more other security // groups (called the source groups) permission to access a security group for // your VPC. The security groups must all be for the same VPC. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation AuthorizeSecurityGroupIngress for usage and error information. func (c *EC2) AuthorizeSecurityGroupIngress(input *AuthorizeSecurityGroupIngressInput) (*AuthorizeSecurityGroupIngressOutput, error) { req, out := c.AuthorizeSecurityGroupIngressRequest(input) err := req.Send() return out, err } const opBundleInstance = "BundleInstance" // BundleInstanceRequest generates a "aws/request.Request" representing the // client's request for the BundleInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See BundleInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the BundleInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the BundleInstanceRequest method. // req, resp := client.BundleInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) BundleInstanceRequest(input *BundleInstanceInput) (req *request.Request, output *BundleInstanceOutput) { op := &request.Operation{ Name: opBundleInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &BundleInstanceInput{} } req = c.newRequest(op, input, output) output = &BundleInstanceOutput{} req.Data = output return } // BundleInstance API operation for Amazon Elastic Compute Cloud. // // Bundles an Amazon instance store-backed Windows instance. // // During bundling, only the root device volume (C:\) is bundled. Data on other // instance store volumes is not preserved. // // This action is not applicable for Linux/Unix instances or Windows instances // that are backed by Amazon EBS. // // For more information, see Creating an Instance Store-Backed Windows AMI (http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/Creating_InstanceStoreBacked_WinAMI.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation BundleInstance for usage and error information. func (c *EC2) BundleInstance(input *BundleInstanceInput) (*BundleInstanceOutput, error) { req, out := c.BundleInstanceRequest(input) err := req.Send() return out, err } const opCancelBundleTask = "CancelBundleTask" // CancelBundleTaskRequest generates a "aws/request.Request" representing the // client's request for the CancelBundleTask operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CancelBundleTask for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CancelBundleTask method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CancelBundleTaskRequest method. // req, resp := client.CancelBundleTaskRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CancelBundleTaskRequest(input *CancelBundleTaskInput) (req *request.Request, output *CancelBundleTaskOutput) { op := &request.Operation{ Name: opCancelBundleTask, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CancelBundleTaskInput{} } req = c.newRequest(op, input, output) output = &CancelBundleTaskOutput{} req.Data = output return } // CancelBundleTask API operation for Amazon Elastic Compute Cloud. // // Cancels a bundling operation for an instance store-backed Windows instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CancelBundleTask for usage and error information. func (c *EC2) CancelBundleTask(input *CancelBundleTaskInput) (*CancelBundleTaskOutput, error) { req, out := c.CancelBundleTaskRequest(input) err := req.Send() return out, err } const opCancelConversionTask = "CancelConversionTask" // CancelConversionTaskRequest generates a "aws/request.Request" representing the // client's request for the CancelConversionTask operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CancelConversionTask for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CancelConversionTask method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CancelConversionTaskRequest method. // req, resp := client.CancelConversionTaskRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CancelConversionTaskRequest(input *CancelConversionTaskInput) (req *request.Request, output *CancelConversionTaskOutput) { op := &request.Operation{ Name: opCancelConversionTask, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CancelConversionTaskInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CancelConversionTaskOutput{} req.Data = output return } // CancelConversionTask API operation for Amazon Elastic Compute Cloud. // // Cancels an active conversion task. The task can be the import of an instance // or volume. The action removes all artifacts of the conversion, including // a partially uploaded volume or instance. If the conversion is complete or // is in the process of transferring the final disk image, the command fails // and returns an exception. // // For more information, see Importing a Virtual Machine Using the Amazon EC2 // CLI (http://docs.aws.amazon.com/AWSEC2/latest/CommandLineReference/ec2-cli-vmimport-export.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CancelConversionTask for usage and error information. func (c *EC2) CancelConversionTask(input *CancelConversionTaskInput) (*CancelConversionTaskOutput, error) { req, out := c.CancelConversionTaskRequest(input) err := req.Send() return out, err } const opCancelExportTask = "CancelExportTask" // CancelExportTaskRequest generates a "aws/request.Request" representing the // client's request for the CancelExportTask operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CancelExportTask for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CancelExportTask method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CancelExportTaskRequest method. // req, resp := client.CancelExportTaskRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CancelExportTaskRequest(input *CancelExportTaskInput) (req *request.Request, output *CancelExportTaskOutput) { op := &request.Operation{ Name: opCancelExportTask, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CancelExportTaskInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CancelExportTaskOutput{} req.Data = output return } // CancelExportTask API operation for Amazon Elastic Compute Cloud. // // Cancels an active export task. The request removes all artifacts of the export, // including any partially-created Amazon S3 objects. If the export task is // complete or is in the process of transferring the final disk image, the command // fails and returns an error. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CancelExportTask for usage and error information. func (c *EC2) CancelExportTask(input *CancelExportTaskInput) (*CancelExportTaskOutput, error) { req, out := c.CancelExportTaskRequest(input) err := req.Send() return out, err } const opCancelImportTask = "CancelImportTask" // CancelImportTaskRequest generates a "aws/request.Request" representing the // client's request for the CancelImportTask operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CancelImportTask for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CancelImportTask method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CancelImportTaskRequest method. // req, resp := client.CancelImportTaskRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CancelImportTaskRequest(input *CancelImportTaskInput) (req *request.Request, output *CancelImportTaskOutput) { op := &request.Operation{ Name: opCancelImportTask, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CancelImportTaskInput{} } req = c.newRequest(op, input, output) output = &CancelImportTaskOutput{} req.Data = output return } // CancelImportTask API operation for Amazon Elastic Compute Cloud. // // Cancels an in-process import virtual machine or import snapshot task. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CancelImportTask for usage and error information. func (c *EC2) CancelImportTask(input *CancelImportTaskInput) (*CancelImportTaskOutput, error) { req, out := c.CancelImportTaskRequest(input) err := req.Send() return out, err } const opCancelReservedInstancesListing = "CancelReservedInstancesListing" // CancelReservedInstancesListingRequest generates a "aws/request.Request" representing the // client's request for the CancelReservedInstancesListing operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CancelReservedInstancesListing for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CancelReservedInstancesListing method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CancelReservedInstancesListingRequest method. // req, resp := client.CancelReservedInstancesListingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CancelReservedInstancesListingRequest(input *CancelReservedInstancesListingInput) (req *request.Request, output *CancelReservedInstancesListingOutput) { op := &request.Operation{ Name: opCancelReservedInstancesListing, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CancelReservedInstancesListingInput{} } req = c.newRequest(op, input, output) output = &CancelReservedInstancesListingOutput{} req.Data = output return } // CancelReservedInstancesListing API operation for Amazon Elastic Compute Cloud. // // Cancels the specified Reserved Instance listing in the Reserved Instance // Marketplace. // // For more information, see Reserved Instance Marketplace (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-market-general.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CancelReservedInstancesListing for usage and error information. func (c *EC2) CancelReservedInstancesListing(input *CancelReservedInstancesListingInput) (*CancelReservedInstancesListingOutput, error) { req, out := c.CancelReservedInstancesListingRequest(input) err := req.Send() return out, err } const opCancelSpotFleetRequests = "CancelSpotFleetRequests" // CancelSpotFleetRequestsRequest generates a "aws/request.Request" representing the // client's request for the CancelSpotFleetRequests operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CancelSpotFleetRequests for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CancelSpotFleetRequests method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CancelSpotFleetRequestsRequest method. // req, resp := client.CancelSpotFleetRequestsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CancelSpotFleetRequestsRequest(input *CancelSpotFleetRequestsInput) (req *request.Request, output *CancelSpotFleetRequestsOutput) { op := &request.Operation{ Name: opCancelSpotFleetRequests, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CancelSpotFleetRequestsInput{} } req = c.newRequest(op, input, output) output = &CancelSpotFleetRequestsOutput{} req.Data = output return } // CancelSpotFleetRequests API operation for Amazon Elastic Compute Cloud. // // Cancels the specified Spot fleet requests. // // After you cancel a Spot fleet request, the Spot fleet launches no new Spot // instances. You must specify whether the Spot fleet should also terminate // its Spot instances. If you terminate the instances, the Spot fleet request // enters the cancelled_terminating state. Otherwise, the Spot fleet request // enters the cancelled_running state and the instances continue to run until // they are interrupted or you terminate them manually. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CancelSpotFleetRequests for usage and error information. func (c *EC2) CancelSpotFleetRequests(input *CancelSpotFleetRequestsInput) (*CancelSpotFleetRequestsOutput, error) { req, out := c.CancelSpotFleetRequestsRequest(input) err := req.Send() return out, err } const opCancelSpotInstanceRequests = "CancelSpotInstanceRequests" // CancelSpotInstanceRequestsRequest generates a "aws/request.Request" representing the // client's request for the CancelSpotInstanceRequests operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CancelSpotInstanceRequests for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CancelSpotInstanceRequests method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CancelSpotInstanceRequestsRequest method. // req, resp := client.CancelSpotInstanceRequestsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CancelSpotInstanceRequestsRequest(input *CancelSpotInstanceRequestsInput) (req *request.Request, output *CancelSpotInstanceRequestsOutput) { op := &request.Operation{ Name: opCancelSpotInstanceRequests, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CancelSpotInstanceRequestsInput{} } req = c.newRequest(op, input, output) output = &CancelSpotInstanceRequestsOutput{} req.Data = output return } // CancelSpotInstanceRequests API operation for Amazon Elastic Compute Cloud. // // Cancels one or more Spot instance requests. Spot instances are instances // that Amazon EC2 starts on your behalf when the bid price that you specify // exceeds the current Spot price. Amazon EC2 periodically sets the Spot price // based on available Spot instance capacity and current Spot instance requests. // For more information, see Spot Instance Requests (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-requests.html) // in the Amazon Elastic Compute Cloud User Guide. // // Canceling a Spot instance request does not terminate running Spot instances // associated with the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CancelSpotInstanceRequests for usage and error information. func (c *EC2) CancelSpotInstanceRequests(input *CancelSpotInstanceRequestsInput) (*CancelSpotInstanceRequestsOutput, error) { req, out := c.CancelSpotInstanceRequestsRequest(input) err := req.Send() return out, err } const opConfirmProductInstance = "ConfirmProductInstance" // ConfirmProductInstanceRequest generates a "aws/request.Request" representing the // client's request for the ConfirmProductInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ConfirmProductInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ConfirmProductInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ConfirmProductInstanceRequest method. // req, resp := client.ConfirmProductInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ConfirmProductInstanceRequest(input *ConfirmProductInstanceInput) (req *request.Request, output *ConfirmProductInstanceOutput) { op := &request.Operation{ Name: opConfirmProductInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ConfirmProductInstanceInput{} } req = c.newRequest(op, input, output) output = &ConfirmProductInstanceOutput{} req.Data = output return } // ConfirmProductInstance API operation for Amazon Elastic Compute Cloud. // // Determines whether a product code is associated with an instance. This action // can only be used by the owner of the product code. It is useful when a product // code owner needs to verify whether another user's instance is eligible for // support. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ConfirmProductInstance for usage and error information. func (c *EC2) ConfirmProductInstance(input *ConfirmProductInstanceInput) (*ConfirmProductInstanceOutput, error) { req, out := c.ConfirmProductInstanceRequest(input) err := req.Send() return out, err } const opCopyImage = "CopyImage" // CopyImageRequest generates a "aws/request.Request" representing the // client's request for the CopyImage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CopyImage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CopyImage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CopyImageRequest method. // req, resp := client.CopyImageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CopyImageRequest(input *CopyImageInput) (req *request.Request, output *CopyImageOutput) { op := &request.Operation{ Name: opCopyImage, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CopyImageInput{} } req = c.newRequest(op, input, output) output = &CopyImageOutput{} req.Data = output return } // CopyImage API operation for Amazon Elastic Compute Cloud. // // Initiates the copy of an AMI from the specified source region to the current // region. You specify the destination region by using its endpoint when making // the request. // // For more information, see Copying AMIs (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/CopyingAMIs.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CopyImage for usage and error information. func (c *EC2) CopyImage(input *CopyImageInput) (*CopyImageOutput, error) { req, out := c.CopyImageRequest(input) err := req.Send() return out, err } const opCopySnapshot = "CopySnapshot" // CopySnapshotRequest generates a "aws/request.Request" representing the // client's request for the CopySnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CopySnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CopySnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CopySnapshotRequest method. // req, resp := client.CopySnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CopySnapshotRequest(input *CopySnapshotInput) (req *request.Request, output *CopySnapshotOutput) { op := &request.Operation{ Name: opCopySnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CopySnapshotInput{} } req = c.newRequest(op, input, output) output = &CopySnapshotOutput{} req.Data = output return } // CopySnapshot API operation for Amazon Elastic Compute Cloud. // // Copies a point-in-time snapshot of an EBS volume and stores it in Amazon // S3. You can copy the snapshot within the same region or from one region to // another. You can use the snapshot to create EBS volumes or Amazon Machine // Images (AMIs). The snapshot is copied to the regional endpoint that you send // the HTTP request to. // // Copies of encrypted EBS snapshots remain encrypted. Copies of unencrypted // snapshots remain unencrypted, unless the Encrypted flag is specified during // the snapshot copy operation. By default, encrypted snapshot copies use the // default AWS Key Management Service (AWS KMS) customer master key (CMK); however, // you can specify a non-default CMK with the KmsKeyId parameter. // // To copy an encrypted snapshot that has been shared from another account, // you must have permissions for the CMK used to encrypt the snapshot. // // Snapshots created by the CopySnapshot action have an arbitrary volume ID // that should not be used for any purpose. // // For more information, see Copying an Amazon EBS Snapshot (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-copy-snapshot.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CopySnapshot for usage and error information. func (c *EC2) CopySnapshot(input *CopySnapshotInput) (*CopySnapshotOutput, error) { req, out := c.CopySnapshotRequest(input) err := req.Send() return out, err } const opCreateCustomerGateway = "CreateCustomerGateway" // CreateCustomerGatewayRequest generates a "aws/request.Request" representing the // client's request for the CreateCustomerGateway operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateCustomerGateway for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateCustomerGateway method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateCustomerGatewayRequest method. // req, resp := client.CreateCustomerGatewayRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateCustomerGatewayRequest(input *CreateCustomerGatewayInput) (req *request.Request, output *CreateCustomerGatewayOutput) { op := &request.Operation{ Name: opCreateCustomerGateway, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateCustomerGatewayInput{} } req = c.newRequest(op, input, output) output = &CreateCustomerGatewayOutput{} req.Data = output return } // CreateCustomerGateway API operation for Amazon Elastic Compute Cloud. // // Provides information to AWS about your VPN customer gateway device. The customer // gateway is the appliance at your end of the VPN connection. (The device on // the AWS side of the VPN connection is the virtual private gateway.) You must // provide the Internet-routable IP address of the customer gateway's external // interface. The IP address must be static and may be behind a device performing // network address translation (NAT). // // For devices that use Border Gateway Protocol (BGP), you can also provide // the device's BGP Autonomous System Number (ASN). You can use an existing // ASN assigned to your network. If you don't have an ASN already, you can use // a private ASN (in the 64512 - 65534 range). // // Amazon EC2 supports all 2-byte ASN numbers in the range of 1 - 65534, with // the exception of 7224, which is reserved in the us-east-1 region, and 9059, // which is reserved in the eu-west-1 region. // // For more information about VPN customer gateways, see Adding a Hardware Virtual // Private Gateway to Your VPC (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_VPN.html) // in the Amazon Virtual Private Cloud User Guide. // // You cannot create more than one customer gateway with the same VPN type, // IP address, and BGP ASN parameter values. If you run an identical request // more than one time, the first request creates the customer gateway, and subsequent // requests return information about the existing customer gateway. The subsequent // requests do not create new customer gateway resources. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateCustomerGateway for usage and error information. func (c *EC2) CreateCustomerGateway(input *CreateCustomerGatewayInput) (*CreateCustomerGatewayOutput, error) { req, out := c.CreateCustomerGatewayRequest(input) err := req.Send() return out, err } const opCreateDhcpOptions = "CreateDhcpOptions" // CreateDhcpOptionsRequest generates a "aws/request.Request" representing the // client's request for the CreateDhcpOptions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDhcpOptions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDhcpOptions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDhcpOptionsRequest method. // req, resp := client.CreateDhcpOptionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateDhcpOptionsRequest(input *CreateDhcpOptionsInput) (req *request.Request, output *CreateDhcpOptionsOutput) { op := &request.Operation{ Name: opCreateDhcpOptions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDhcpOptionsInput{} } req = c.newRequest(op, input, output) output = &CreateDhcpOptionsOutput{} req.Data = output return } // CreateDhcpOptions API operation for Amazon Elastic Compute Cloud. // // Creates a set of DHCP options for your VPC. After creating the set, you must // associate it with the VPC, causing all existing and new instances that you // launch in the VPC to use this set of DHCP options. The following are the // individual DHCP options you can specify. For more information about the options, // see RFC 2132 (http://www.ietf.org/rfc/rfc2132.txt). // // * domain-name-servers - The IP addresses of up to four domain name servers, // or AmazonProvidedDNS. The default DHCP option set specifies AmazonProvidedDNS. // If specifying more than one domain name server, specify the IP addresses // in a single parameter, separated by commas. If you want your instance // to receive a custom DNS hostname as specified in domain-name, you must // set domain-name-servers to a custom DNS server. // // * domain-name - If you're using AmazonProvidedDNS in "us-east-1", specify // "ec2.internal". If you're using AmazonProvidedDNS in another region, specify // "region.compute.internal" (for example, "ap-northeast-1.compute.internal"). // Otherwise, specify a domain name (for example, "MyCompany.com"). This // value is used to complete unqualified DNS hostnames. Important: Some Linux // operating systems accept multiple domain names separated by spaces. However, // Windows and other Linux operating systems treat the value as a single // domain, which results in unexpected behavior. If your DHCP options set // is associated with a VPC that has instances with multiple operating systems, // specify only one domain name. // // * ntp-servers - The IP addresses of up to four Network Time Protocol (NTP) // servers. // // * netbios-name-servers - The IP addresses of up to four NetBIOS name servers. // // * netbios-node-type - The NetBIOS node type (1, 2, 4, or 8). We recommend // that you specify 2 (broadcast and multicast are not currently supported). // For more information about these node types, see RFC 2132 (http://www.ietf.org/rfc/rfc2132.txt). // // Your VPC automatically starts out with a set of DHCP options that includes // only a DNS server that we provide (AmazonProvidedDNS). If you create a set // of options, and if your VPC has an Internet gateway, make sure to set the // domain-name-servers option either to AmazonProvidedDNS or to a domain name // server of your choice. For more information about DHCP options, see DHCP // Options Sets (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_DHCP_Options.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateDhcpOptions for usage and error information. func (c *EC2) CreateDhcpOptions(input *CreateDhcpOptionsInput) (*CreateDhcpOptionsOutput, error) { req, out := c.CreateDhcpOptionsRequest(input) err := req.Send() return out, err } const opCreateFlowLogs = "CreateFlowLogs" // CreateFlowLogsRequest generates a "aws/request.Request" representing the // client's request for the CreateFlowLogs operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateFlowLogs for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateFlowLogs method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateFlowLogsRequest method. // req, resp := client.CreateFlowLogsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateFlowLogsRequest(input *CreateFlowLogsInput) (req *request.Request, output *CreateFlowLogsOutput) { op := &request.Operation{ Name: opCreateFlowLogs, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateFlowLogsInput{} } req = c.newRequest(op, input, output) output = &CreateFlowLogsOutput{} req.Data = output return } // CreateFlowLogs API operation for Amazon Elastic Compute Cloud. // // Creates one or more flow logs to capture IP traffic for a specific network // interface, subnet, or VPC. Flow logs are delivered to a specified log group // in Amazon CloudWatch Logs. If you specify a VPC or subnet in the request, // a log stream is created in CloudWatch Logs for each network interface in // the subnet or VPC. Log streams can include information about accepted and // rejected traffic to a network interface. You can view the data in your log // streams using Amazon CloudWatch Logs. // // In your request, you must also specify an IAM role that has permission to // publish logs to CloudWatch Logs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateFlowLogs for usage and error information. func (c *EC2) CreateFlowLogs(input *CreateFlowLogsInput) (*CreateFlowLogsOutput, error) { req, out := c.CreateFlowLogsRequest(input) err := req.Send() return out, err } const opCreateImage = "CreateImage" // CreateImageRequest generates a "aws/request.Request" representing the // client's request for the CreateImage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateImage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateImage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateImageRequest method. // req, resp := client.CreateImageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateImageRequest(input *CreateImageInput) (req *request.Request, output *CreateImageOutput) { op := &request.Operation{ Name: opCreateImage, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateImageInput{} } req = c.newRequest(op, input, output) output = &CreateImageOutput{} req.Data = output return } // CreateImage API operation for Amazon Elastic Compute Cloud. // // Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance that // is either running or stopped. // // If you customized your instance with instance store volumes or EBS volumes // in addition to the root device volume, the new AMI contains block device // mapping information for those volumes. When you launch an instance from this // new AMI, the instance automatically launches with those additional volumes. // // For more information, see Creating Amazon EBS-Backed Linux AMIs (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/creating-an-ami-ebs.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateImage for usage and error information. func (c *EC2) CreateImage(input *CreateImageInput) (*CreateImageOutput, error) { req, out := c.CreateImageRequest(input) err := req.Send() return out, err } const opCreateInstanceExportTask = "CreateInstanceExportTask" // CreateInstanceExportTaskRequest generates a "aws/request.Request" representing the // client's request for the CreateInstanceExportTask operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateInstanceExportTask for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateInstanceExportTask method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateInstanceExportTaskRequest method. // req, resp := client.CreateInstanceExportTaskRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateInstanceExportTaskRequest(input *CreateInstanceExportTaskInput) (req *request.Request, output *CreateInstanceExportTaskOutput) { op := &request.Operation{ Name: opCreateInstanceExportTask, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateInstanceExportTaskInput{} } req = c.newRequest(op, input, output) output = &CreateInstanceExportTaskOutput{} req.Data = output return } // CreateInstanceExportTask API operation for Amazon Elastic Compute Cloud. // // Exports a running or stopped instance to an S3 bucket. // // For information about the supported operating systems, image formats, and // known limitations for the types of instances you can export, see Exporting // an Instance as a VM Using VM Import/Export (http://docs.aws.amazon.com/vm-import/latest/userguide/vmexport.html) // in the VM Import/Export User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateInstanceExportTask for usage and error information. func (c *EC2) CreateInstanceExportTask(input *CreateInstanceExportTaskInput) (*CreateInstanceExportTaskOutput, error) { req, out := c.CreateInstanceExportTaskRequest(input) err := req.Send() return out, err } const opCreateInternetGateway = "CreateInternetGateway" // CreateInternetGatewayRequest generates a "aws/request.Request" representing the // client's request for the CreateInternetGateway operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateInternetGateway for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateInternetGateway method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateInternetGatewayRequest method. // req, resp := client.CreateInternetGatewayRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateInternetGatewayRequest(input *CreateInternetGatewayInput) (req *request.Request, output *CreateInternetGatewayOutput) { op := &request.Operation{ Name: opCreateInternetGateway, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateInternetGatewayInput{} } req = c.newRequest(op, input, output) output = &CreateInternetGatewayOutput{} req.Data = output return } // CreateInternetGateway API operation for Amazon Elastic Compute Cloud. // // Creates an Internet gateway for use with a VPC. After creating the Internet // gateway, you attach it to a VPC using AttachInternetGateway. // // For more information about your VPC and Internet gateway, see the Amazon // Virtual Private Cloud User Guide (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateInternetGateway for usage and error information. func (c *EC2) CreateInternetGateway(input *CreateInternetGatewayInput) (*CreateInternetGatewayOutput, error) { req, out := c.CreateInternetGatewayRequest(input) err := req.Send() return out, err } const opCreateKeyPair = "CreateKeyPair" // CreateKeyPairRequest generates a "aws/request.Request" representing the // client's request for the CreateKeyPair operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateKeyPair for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateKeyPair method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateKeyPairRequest method. // req, resp := client.CreateKeyPairRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateKeyPairRequest(input *CreateKeyPairInput) (req *request.Request, output *CreateKeyPairOutput) { op := &request.Operation{ Name: opCreateKeyPair, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateKeyPairInput{} } req = c.newRequest(op, input, output) output = &CreateKeyPairOutput{} req.Data = output return } // CreateKeyPair API operation for Amazon Elastic Compute Cloud. // // Creates a 2048-bit RSA key pair with the specified name. Amazon EC2 stores // the public key and displays the private key for you to save to a file. The // private key is returned as an unencrypted PEM encoded PKCS#8 private key. // If a key with the specified name already exists, Amazon EC2 returns an error. // // You can have up to five thousand key pairs per region. // // The key pair returned to you is available only in the region in which you // create it. To create a key pair that is available in all regions, use ImportKeyPair. // // For more information about key pairs, see Key Pairs (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateKeyPair for usage and error information. func (c *EC2) CreateKeyPair(input *CreateKeyPairInput) (*CreateKeyPairOutput, error) { req, out := c.CreateKeyPairRequest(input) err := req.Send() return out, err } const opCreateNatGateway = "CreateNatGateway" // CreateNatGatewayRequest generates a "aws/request.Request" representing the // client's request for the CreateNatGateway operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateNatGateway for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateNatGateway method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateNatGatewayRequest method. // req, resp := client.CreateNatGatewayRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateNatGatewayRequest(input *CreateNatGatewayInput) (req *request.Request, output *CreateNatGatewayOutput) { op := &request.Operation{ Name: opCreateNatGateway, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateNatGatewayInput{} } req = c.newRequest(op, input, output) output = &CreateNatGatewayOutput{} req.Data = output return } // CreateNatGateway API operation for Amazon Elastic Compute Cloud. // // Creates a NAT gateway in the specified subnet. A NAT gateway can be used // to enable instances in a private subnet to connect to the Internet. This // action creates a network interface in the specified subnet with a private // IP address from the IP address range of the subnet. For more information, // see NAT Gateways (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-nat-gateway.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateNatGateway for usage and error information. func (c *EC2) CreateNatGateway(input *CreateNatGatewayInput) (*CreateNatGatewayOutput, error) { req, out := c.CreateNatGatewayRequest(input) err := req.Send() return out, err } const opCreateNetworkAcl = "CreateNetworkAcl" // CreateNetworkAclRequest generates a "aws/request.Request" representing the // client's request for the CreateNetworkAcl operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateNetworkAcl for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateNetworkAcl method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateNetworkAclRequest method. // req, resp := client.CreateNetworkAclRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateNetworkAclRequest(input *CreateNetworkAclInput) (req *request.Request, output *CreateNetworkAclOutput) { op := &request.Operation{ Name: opCreateNetworkAcl, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateNetworkAclInput{} } req = c.newRequest(op, input, output) output = &CreateNetworkAclOutput{} req.Data = output return } // CreateNetworkAcl API operation for Amazon Elastic Compute Cloud. // // Creates a network ACL in a VPC. Network ACLs provide an optional layer of // security (in addition to security groups) for the instances in your VPC. // // For more information about network ACLs, see Network ACLs (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_ACLs.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateNetworkAcl for usage and error information. func (c *EC2) CreateNetworkAcl(input *CreateNetworkAclInput) (*CreateNetworkAclOutput, error) { req, out := c.CreateNetworkAclRequest(input) err := req.Send() return out, err } const opCreateNetworkAclEntry = "CreateNetworkAclEntry" // CreateNetworkAclEntryRequest generates a "aws/request.Request" representing the // client's request for the CreateNetworkAclEntry operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateNetworkAclEntry for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateNetworkAclEntry method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateNetworkAclEntryRequest method. // req, resp := client.CreateNetworkAclEntryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateNetworkAclEntryRequest(input *CreateNetworkAclEntryInput) (req *request.Request, output *CreateNetworkAclEntryOutput) { op := &request.Operation{ Name: opCreateNetworkAclEntry, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateNetworkAclEntryInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CreateNetworkAclEntryOutput{} req.Data = output return } // CreateNetworkAclEntry API operation for Amazon Elastic Compute Cloud. // // Creates an entry (a rule) in a network ACL with the specified rule number. // Each network ACL has a set of numbered ingress rules and a separate set of // numbered egress rules. When determining whether a packet should be allowed // in or out of a subnet associated with the ACL, we process the entries in // the ACL according to the rule numbers, in ascending order. Each network ACL // has a set of ingress rules and a separate set of egress rules. // // We recommend that you leave room between the rule numbers (for example, 100, // 110, 120, ...), and not number them one right after the other (for example, // 101, 102, 103, ...). This makes it easier to add a rule between existing // ones without having to renumber the rules. // // After you add an entry, you can't modify it; you must either replace it, // or create an entry and delete the old one. // // For more information about network ACLs, see Network ACLs (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_ACLs.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateNetworkAclEntry for usage and error information. func (c *EC2) CreateNetworkAclEntry(input *CreateNetworkAclEntryInput) (*CreateNetworkAclEntryOutput, error) { req, out := c.CreateNetworkAclEntryRequest(input) err := req.Send() return out, err } const opCreateNetworkInterface = "CreateNetworkInterface" // CreateNetworkInterfaceRequest generates a "aws/request.Request" representing the // client's request for the CreateNetworkInterface operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateNetworkInterface for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateNetworkInterface method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateNetworkInterfaceRequest method. // req, resp := client.CreateNetworkInterfaceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateNetworkInterfaceRequest(input *CreateNetworkInterfaceInput) (req *request.Request, output *CreateNetworkInterfaceOutput) { op := &request.Operation{ Name: opCreateNetworkInterface, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateNetworkInterfaceInput{} } req = c.newRequest(op, input, output) output = &CreateNetworkInterfaceOutput{} req.Data = output return } // CreateNetworkInterface API operation for Amazon Elastic Compute Cloud. // // Creates a network interface in the specified subnet. // // For more information about network interfaces, see Elastic Network Interfaces // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html) in the // Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateNetworkInterface for usage and error information. func (c *EC2) CreateNetworkInterface(input *CreateNetworkInterfaceInput) (*CreateNetworkInterfaceOutput, error) { req, out := c.CreateNetworkInterfaceRequest(input) err := req.Send() return out, err } const opCreatePlacementGroup = "CreatePlacementGroup" // CreatePlacementGroupRequest generates a "aws/request.Request" representing the // client's request for the CreatePlacementGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreatePlacementGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreatePlacementGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreatePlacementGroupRequest method. // req, resp := client.CreatePlacementGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreatePlacementGroupRequest(input *CreatePlacementGroupInput) (req *request.Request, output *CreatePlacementGroupOutput) { op := &request.Operation{ Name: opCreatePlacementGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreatePlacementGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CreatePlacementGroupOutput{} req.Data = output return } // CreatePlacementGroup API operation for Amazon Elastic Compute Cloud. // // Creates a placement group that you launch cluster instances into. You must // give the group a name that's unique within the scope of your account. // // For more information about placement groups and cluster instances, see Cluster // Instances (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using_cluster_computing.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreatePlacementGroup for usage and error information. func (c *EC2) CreatePlacementGroup(input *CreatePlacementGroupInput) (*CreatePlacementGroupOutput, error) { req, out := c.CreatePlacementGroupRequest(input) err := req.Send() return out, err } const opCreateReservedInstancesListing = "CreateReservedInstancesListing" // CreateReservedInstancesListingRequest generates a "aws/request.Request" representing the // client's request for the CreateReservedInstancesListing operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateReservedInstancesListing for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateReservedInstancesListing method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateReservedInstancesListingRequest method. // req, resp := client.CreateReservedInstancesListingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateReservedInstancesListingRequest(input *CreateReservedInstancesListingInput) (req *request.Request, output *CreateReservedInstancesListingOutput) { op := &request.Operation{ Name: opCreateReservedInstancesListing, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateReservedInstancesListingInput{} } req = c.newRequest(op, input, output) output = &CreateReservedInstancesListingOutput{} req.Data = output return } // CreateReservedInstancesListing API operation for Amazon Elastic Compute Cloud. // // Creates a listing for Amazon EC2 Standard Reserved Instances to be sold in // the Reserved Instance Marketplace. You can submit one Standard Reserved Instance // listing at a time. To get a list of your Standard Reserved Instances, you // can use the DescribeReservedInstances operation. // // The Reserved Instance Marketplace matches sellers who want to resell Standard // Reserved Instance capacity that they no longer need with buyers who want // to purchase additional capacity. Reserved Instances bought and sold through // the Reserved Instance Marketplace work like any other Reserved Instances. // // To sell your Standard Reserved Instances, you must first register as a seller // in the Reserved Instance Marketplace. After completing the registration process, // you can create a Reserved Instance Marketplace listing of some or all of // your Standard Reserved Instances, and specify the upfront price to receive // for them. Your Standard Reserved Instance listings then become available // for purchase. To view the details of your Standard Reserved Instance listing, // you can use the DescribeReservedInstancesListings operation. // // For more information, see Reserved Instance Marketplace (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-market-general.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateReservedInstancesListing for usage and error information. func (c *EC2) CreateReservedInstancesListing(input *CreateReservedInstancesListingInput) (*CreateReservedInstancesListingOutput, error) { req, out := c.CreateReservedInstancesListingRequest(input) err := req.Send() return out, err } const opCreateRoute = "CreateRoute" // CreateRouteRequest generates a "aws/request.Request" representing the // client's request for the CreateRoute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateRoute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateRoute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateRouteRequest method. // req, resp := client.CreateRouteRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateRouteRequest(input *CreateRouteInput) (req *request.Request, output *CreateRouteOutput) { op := &request.Operation{ Name: opCreateRoute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateRouteInput{} } req = c.newRequest(op, input, output) output = &CreateRouteOutput{} req.Data = output return } // CreateRoute API operation for Amazon Elastic Compute Cloud. // // Creates a route in a route table within a VPC. // // You must specify one of the following targets: Internet gateway or virtual // private gateway, NAT instance, NAT gateway, VPC peering connection, or network // interface. // // When determining how to route traffic, we use the route with the most specific // match. For example, let's say the traffic is destined for 192.0.2.3, and // the route table includes the following two routes: // // * 192.0.2.0/24 (goes to some target A) // // * 192.0.2.0/28 (goes to some target B) // // Both routes apply to the traffic destined for 192.0.2.3. However, the second // route in the list covers a smaller number of IP addresses and is therefore // more specific, so we use that route to determine where to target the traffic. // // For more information about route tables, see Route Tables (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Route_Tables.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateRoute for usage and error information. func (c *EC2) CreateRoute(input *CreateRouteInput) (*CreateRouteOutput, error) { req, out := c.CreateRouteRequest(input) err := req.Send() return out, err } const opCreateRouteTable = "CreateRouteTable" // CreateRouteTableRequest generates a "aws/request.Request" representing the // client's request for the CreateRouteTable operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateRouteTable for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateRouteTable method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateRouteTableRequest method. // req, resp := client.CreateRouteTableRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateRouteTableRequest(input *CreateRouteTableInput) (req *request.Request, output *CreateRouteTableOutput) { op := &request.Operation{ Name: opCreateRouteTable, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateRouteTableInput{} } req = c.newRequest(op, input, output) output = &CreateRouteTableOutput{} req.Data = output return } // CreateRouteTable API operation for Amazon Elastic Compute Cloud. // // Creates a route table for the specified VPC. After you create a route table, // you can add routes and associate the table with a subnet. // // For more information about route tables, see Route Tables (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Route_Tables.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateRouteTable for usage and error information. func (c *EC2) CreateRouteTable(input *CreateRouteTableInput) (*CreateRouteTableOutput, error) { req, out := c.CreateRouteTableRequest(input) err := req.Send() return out, err } const opCreateSecurityGroup = "CreateSecurityGroup" // CreateSecurityGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateSecurityGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateSecurityGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateSecurityGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateSecurityGroupRequest method. // req, resp := client.CreateSecurityGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateSecurityGroupRequest(input *CreateSecurityGroupInput) (req *request.Request, output *CreateSecurityGroupOutput) { op := &request.Operation{ Name: opCreateSecurityGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateSecurityGroupInput{} } req = c.newRequest(op, input, output) output = &CreateSecurityGroupOutput{} req.Data = output return } // CreateSecurityGroup API operation for Amazon Elastic Compute Cloud. // // Creates a security group. // // A security group is for use with instances either in the EC2-Classic platform // or in a specific VPC. For more information, see Amazon EC2 Security Groups // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html) // in the Amazon Elastic Compute Cloud User Guide and Security Groups for Your // VPC (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_SecurityGroups.html) // in the Amazon Virtual Private Cloud User Guide. // // EC2-Classic: You can have up to 500 security groups. // // EC2-VPC: You can create up to 500 security groups per VPC. // // When you create a security group, you specify a friendly name of your choice. // You can have a security group for use in EC2-Classic with the same name as // a security group for use in a VPC. However, you can't have two security groups // for use in EC2-Classic with the same name or two security groups for use // in a VPC with the same name. // // You have a default security group for use in EC2-Classic and a default security // group for use in your VPC. If you don't specify a security group when you // launch an instance, the instance is launched into the appropriate default // security group. A default security group includes a default rule that grants // instances unrestricted network access to each other. // // You can add or remove rules from your security groups using AuthorizeSecurityGroupIngress, // AuthorizeSecurityGroupEgress, RevokeSecurityGroupIngress, and RevokeSecurityGroupEgress. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateSecurityGroup for usage and error information. func (c *EC2) CreateSecurityGroup(input *CreateSecurityGroupInput) (*CreateSecurityGroupOutput, error) { req, out := c.CreateSecurityGroupRequest(input) err := req.Send() return out, err } const opCreateSnapshot = "CreateSnapshot" // CreateSnapshotRequest generates a "aws/request.Request" representing the // client's request for the CreateSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateSnapshotRequest method. // req, resp := client.CreateSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateSnapshotRequest(input *CreateSnapshotInput) (req *request.Request, output *Snapshot) { op := &request.Operation{ Name: opCreateSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateSnapshotInput{} } req = c.newRequest(op, input, output) output = &Snapshot{} req.Data = output return } // CreateSnapshot API operation for Amazon Elastic Compute Cloud. // // Creates a snapshot of an EBS volume and stores it in Amazon S3. You can use // snapshots for backups, to make copies of EBS volumes, and to save data before // shutting down an instance. // // When a snapshot is created, any AWS Marketplace product codes that are associated // with the source volume are propagated to the snapshot. // // You can take a snapshot of an attached volume that is in use. However, snapshots // only capture data that has been written to your EBS volume at the time the // snapshot command is issued; this may exclude any data that has been cached // by any applications or the operating system. If you can pause any file systems // on the volume long enough to take a snapshot, your snapshot should be complete. // However, if you cannot pause all file writes to the volume, you should unmount // the volume from within the instance, issue the snapshot command, and then // remount the volume to ensure a consistent and complete snapshot. You may // remount and use your volume while the snapshot status is pending. // // To create a snapshot for EBS volumes that serve as root devices, you should // stop the instance before taking the snapshot. // // Snapshots that are taken from encrypted volumes are automatically encrypted. // Volumes that are created from encrypted snapshots are also automatically // encrypted. Your encrypted volumes and any associated snapshots always remain // protected. // // For more information, see Amazon Elastic Block Store (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AmazonEBS.html) // and Amazon EBS Encryption (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateSnapshot for usage and error information. func (c *EC2) CreateSnapshot(input *CreateSnapshotInput) (*Snapshot, error) { req, out := c.CreateSnapshotRequest(input) err := req.Send() return out, err } const opCreateSpotDatafeedSubscription = "CreateSpotDatafeedSubscription" // CreateSpotDatafeedSubscriptionRequest generates a "aws/request.Request" representing the // client's request for the CreateSpotDatafeedSubscription operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateSpotDatafeedSubscription for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateSpotDatafeedSubscription method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateSpotDatafeedSubscriptionRequest method. // req, resp := client.CreateSpotDatafeedSubscriptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateSpotDatafeedSubscriptionRequest(input *CreateSpotDatafeedSubscriptionInput) (req *request.Request, output *CreateSpotDatafeedSubscriptionOutput) { op := &request.Operation{ Name: opCreateSpotDatafeedSubscription, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateSpotDatafeedSubscriptionInput{} } req = c.newRequest(op, input, output) output = &CreateSpotDatafeedSubscriptionOutput{} req.Data = output return } // CreateSpotDatafeedSubscription API operation for Amazon Elastic Compute Cloud. // // Creates a data feed for Spot instances, enabling you to view Spot instance // usage logs. You can create one data feed per AWS account. For more information, // see Spot Instance Data Feed (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-data-feeds.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateSpotDatafeedSubscription for usage and error information. func (c *EC2) CreateSpotDatafeedSubscription(input *CreateSpotDatafeedSubscriptionInput) (*CreateSpotDatafeedSubscriptionOutput, error) { req, out := c.CreateSpotDatafeedSubscriptionRequest(input) err := req.Send() return out, err } const opCreateSubnet = "CreateSubnet" // CreateSubnetRequest generates a "aws/request.Request" representing the // client's request for the CreateSubnet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateSubnet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateSubnet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateSubnetRequest method. // req, resp := client.CreateSubnetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateSubnetRequest(input *CreateSubnetInput) (req *request.Request, output *CreateSubnetOutput) { op := &request.Operation{ Name: opCreateSubnet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateSubnetInput{} } req = c.newRequest(op, input, output) output = &CreateSubnetOutput{} req.Data = output return } // CreateSubnet API operation for Amazon Elastic Compute Cloud. // // Creates a subnet in an existing VPC. // // When you create each subnet, you provide the VPC ID and the CIDR block you // want for the subnet. After you create a subnet, you can't change its CIDR // block. The subnet's CIDR block can be the same as the VPC's CIDR block (assuming // you want only a single subnet in the VPC), or a subset of the VPC's CIDR // block. If you create more than one subnet in a VPC, the subnets' CIDR blocks // must not overlap. The smallest subnet (and VPC) you can create uses a /28 // netmask (16 IP addresses), and the largest uses a /16 netmask (65,536 IP // addresses). // // AWS reserves both the first four and the last IP address in each subnet's // CIDR block. They're not available for use. // // If you add more than one subnet to a VPC, they're set up in a star topology // with a logical router in the middle. // // If you launch an instance in a VPC using an Amazon EBS-backed AMI, the IP // address doesn't change if you stop and restart the instance (unlike a similar // instance launched outside a VPC, which gets a new IP address when restarted). // It's therefore possible to have a subnet with no running instances (they're // all stopped), but no remaining IP addresses available. // // For more information about subnets, see Your VPC and Subnets (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Subnets.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateSubnet for usage and error information. func (c *EC2) CreateSubnet(input *CreateSubnetInput) (*CreateSubnetOutput, error) { req, out := c.CreateSubnetRequest(input) err := req.Send() return out, err } const opCreateTags = "CreateTags" // CreateTagsRequest generates a "aws/request.Request" representing the // client's request for the CreateTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateTagsRequest method. // req, resp := client.CreateTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateTagsRequest(input *CreateTagsInput) (req *request.Request, output *CreateTagsOutput) { op := &request.Operation{ Name: opCreateTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateTagsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CreateTagsOutput{} req.Data = output return } // CreateTags API operation for Amazon Elastic Compute Cloud. // // Adds or overwrites one or more tags for the specified Amazon EC2 resource // or resources. Each resource can have a maximum of 50 tags. Each tag consists // of a key and optional value. Tag keys must be unique per resource. // // For more information about tags, see Tagging Your Resources (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html) // in the Amazon Elastic Compute Cloud User Guide. For more information about // creating IAM policies that control users' access to resources based on tags, // see Supported Resource-Level Permissions for Amazon EC2 API Actions (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-iam-actions-resources.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateTags for usage and error information. func (c *EC2) CreateTags(input *CreateTagsInput) (*CreateTagsOutput, error) { req, out := c.CreateTagsRequest(input) err := req.Send() return out, err } const opCreateVolume = "CreateVolume" // CreateVolumeRequest generates a "aws/request.Request" representing the // client's request for the CreateVolume operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateVolume for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateVolume method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateVolumeRequest method. // req, resp := client.CreateVolumeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateVolumeRequest(input *CreateVolumeInput) (req *request.Request, output *Volume) { op := &request.Operation{ Name: opCreateVolume, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateVolumeInput{} } req = c.newRequest(op, input, output) output = &Volume{} req.Data = output return } // CreateVolume API operation for Amazon Elastic Compute Cloud. // // Creates an EBS volume that can be attached to an instance in the same Availability // Zone. The volume is created in the regional endpoint that you send the HTTP // request to. For more information see Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html). // // You can create a new empty volume or restore a volume from an EBS snapshot. // Any AWS Marketplace product codes from the snapshot are propagated to the // volume. // // You can create encrypted volumes with the Encrypted parameter. Encrypted // volumes may only be attached to instances that support Amazon EBS encryption. // Volumes that are created from encrypted snapshots are also automatically // encrypted. For more information, see Amazon EBS Encryption (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) // in the Amazon Elastic Compute Cloud User Guide. // // For more information, see Creating or Restoring an Amazon EBS Volume (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-creating-volume.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateVolume for usage and error information. func (c *EC2) CreateVolume(input *CreateVolumeInput) (*Volume, error) { req, out := c.CreateVolumeRequest(input) err := req.Send() return out, err } const opCreateVpc = "CreateVpc" // CreateVpcRequest generates a "aws/request.Request" representing the // client's request for the CreateVpc operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateVpc for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateVpc method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateVpcRequest method. // req, resp := client.CreateVpcRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateVpcRequest(input *CreateVpcInput) (req *request.Request, output *CreateVpcOutput) { op := &request.Operation{ Name: opCreateVpc, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateVpcInput{} } req = c.newRequest(op, input, output) output = &CreateVpcOutput{} req.Data = output return } // CreateVpc API operation for Amazon Elastic Compute Cloud. // // Creates a VPC with the specified CIDR block. // // The smallest VPC you can create uses a /28 netmask (16 IP addresses), and // the largest uses a /16 netmask (65,536 IP addresses). To help you decide // how big to make your VPC, see Your VPC and Subnets (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Subnets.html) // in the Amazon Virtual Private Cloud User Guide. // // By default, each instance you launch in the VPC has the default DHCP options, // which includes only a default DNS server that we provide (AmazonProvidedDNS). // For more information about DHCP options, see DHCP Options Sets (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_DHCP_Options.html) // in the Amazon Virtual Private Cloud User Guide. // // You can specify the instance tenancy value for the VPC when you create it. // You can't change this value for the VPC after you create it. For more information, // see Dedicated Instances (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/dedicated-instance.html.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateVpc for usage and error information. func (c *EC2) CreateVpc(input *CreateVpcInput) (*CreateVpcOutput, error) { req, out := c.CreateVpcRequest(input) err := req.Send() return out, err } const opCreateVpcEndpoint = "CreateVpcEndpoint" // CreateVpcEndpointRequest generates a "aws/request.Request" representing the // client's request for the CreateVpcEndpoint operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateVpcEndpoint for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateVpcEndpoint method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateVpcEndpointRequest method. // req, resp := client.CreateVpcEndpointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateVpcEndpointRequest(input *CreateVpcEndpointInput) (req *request.Request, output *CreateVpcEndpointOutput) { op := &request.Operation{ Name: opCreateVpcEndpoint, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateVpcEndpointInput{} } req = c.newRequest(op, input, output) output = &CreateVpcEndpointOutput{} req.Data = output return } // CreateVpcEndpoint API operation for Amazon Elastic Compute Cloud. // // Creates a VPC endpoint for a specified AWS service. An endpoint enables you // to create a private connection between your VPC and another AWS service in // your account. You can specify an endpoint policy to attach to the endpoint // that will control access to the service from your VPC. You can also specify // the VPC route tables that use the endpoint. // // Currently, only endpoints to Amazon S3 are supported. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateVpcEndpoint for usage and error information. func (c *EC2) CreateVpcEndpoint(input *CreateVpcEndpointInput) (*CreateVpcEndpointOutput, error) { req, out := c.CreateVpcEndpointRequest(input) err := req.Send() return out, err } const opCreateVpcPeeringConnection = "CreateVpcPeeringConnection" // CreateVpcPeeringConnectionRequest generates a "aws/request.Request" representing the // client's request for the CreateVpcPeeringConnection operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateVpcPeeringConnection for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateVpcPeeringConnection method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateVpcPeeringConnectionRequest method. // req, resp := client.CreateVpcPeeringConnectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateVpcPeeringConnectionRequest(input *CreateVpcPeeringConnectionInput) (req *request.Request, output *CreateVpcPeeringConnectionOutput) { op := &request.Operation{ Name: opCreateVpcPeeringConnection, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateVpcPeeringConnectionInput{} } req = c.newRequest(op, input, output) output = &CreateVpcPeeringConnectionOutput{} req.Data = output return } // CreateVpcPeeringConnection API operation for Amazon Elastic Compute Cloud. // // Requests a VPC peering connection between two VPCs: a requester VPC that // you own and a peer VPC with which to create the connection. The peer VPC // can belong to another AWS account. The requester VPC and peer VPC cannot // have overlapping CIDR blocks. // // The owner of the peer VPC must accept the peering request to activate the // peering connection. The VPC peering connection request expires after 7 days, // after which it cannot be accepted or rejected. // // A CreateVpcPeeringConnection request between VPCs with overlapping CIDR blocks // results in the VPC peering connection having a status of failed. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateVpcPeeringConnection for usage and error information. func (c *EC2) CreateVpcPeeringConnection(input *CreateVpcPeeringConnectionInput) (*CreateVpcPeeringConnectionOutput, error) { req, out := c.CreateVpcPeeringConnectionRequest(input) err := req.Send() return out, err } const opCreateVpnConnection = "CreateVpnConnection" // CreateVpnConnectionRequest generates a "aws/request.Request" representing the // client's request for the CreateVpnConnection operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateVpnConnection for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateVpnConnection method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateVpnConnectionRequest method. // req, resp := client.CreateVpnConnectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateVpnConnectionRequest(input *CreateVpnConnectionInput) (req *request.Request, output *CreateVpnConnectionOutput) { op := &request.Operation{ Name: opCreateVpnConnection, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateVpnConnectionInput{} } req = c.newRequest(op, input, output) output = &CreateVpnConnectionOutput{} req.Data = output return } // CreateVpnConnection API operation for Amazon Elastic Compute Cloud. // // Creates a VPN connection between an existing virtual private gateway and // a VPN customer gateway. The only supported connection type is ipsec.1. // // The response includes information that you need to give to your network administrator // to configure your customer gateway. // // We strongly recommend that you use HTTPS when calling this operation because // the response contains sensitive cryptographic information for configuring // your customer gateway. // // If you decide to shut down your VPN connection for any reason and later create // a new VPN connection, you must reconfigure your customer gateway with the // new information returned from this call. // // This is an idempotent operation. If you perform the operation more than once, // Amazon EC2 doesn't return an error. // // For more information about VPN connections, see Adding a Hardware Virtual // Private Gateway to Your VPC (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_VPN.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateVpnConnection for usage and error information. func (c *EC2) CreateVpnConnection(input *CreateVpnConnectionInput) (*CreateVpnConnectionOutput, error) { req, out := c.CreateVpnConnectionRequest(input) err := req.Send() return out, err } const opCreateVpnConnectionRoute = "CreateVpnConnectionRoute" // CreateVpnConnectionRouteRequest generates a "aws/request.Request" representing the // client's request for the CreateVpnConnectionRoute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateVpnConnectionRoute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateVpnConnectionRoute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateVpnConnectionRouteRequest method. // req, resp := client.CreateVpnConnectionRouteRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateVpnConnectionRouteRequest(input *CreateVpnConnectionRouteInput) (req *request.Request, output *CreateVpnConnectionRouteOutput) { op := &request.Operation{ Name: opCreateVpnConnectionRoute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateVpnConnectionRouteInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CreateVpnConnectionRouteOutput{} req.Data = output return } // CreateVpnConnectionRoute API operation for Amazon Elastic Compute Cloud. // // Creates a static route associated with a VPN connection between an existing // virtual private gateway and a VPN customer gateway. The static route allows // traffic to be routed from the virtual private gateway to the VPN customer // gateway. // // For more information about VPN connections, see Adding a Hardware Virtual // Private Gateway to Your VPC (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_VPN.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateVpnConnectionRoute for usage and error information. func (c *EC2) CreateVpnConnectionRoute(input *CreateVpnConnectionRouteInput) (*CreateVpnConnectionRouteOutput, error) { req, out := c.CreateVpnConnectionRouteRequest(input) err := req.Send() return out, err } const opCreateVpnGateway = "CreateVpnGateway" // CreateVpnGatewayRequest generates a "aws/request.Request" representing the // client's request for the CreateVpnGateway operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateVpnGateway for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateVpnGateway method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateVpnGatewayRequest method. // req, resp := client.CreateVpnGatewayRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) CreateVpnGatewayRequest(input *CreateVpnGatewayInput) (req *request.Request, output *CreateVpnGatewayOutput) { op := &request.Operation{ Name: opCreateVpnGateway, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateVpnGatewayInput{} } req = c.newRequest(op, input, output) output = &CreateVpnGatewayOutput{} req.Data = output return } // CreateVpnGateway API operation for Amazon Elastic Compute Cloud. // // Creates a virtual private gateway. A virtual private gateway is the endpoint // on the VPC side of your VPN connection. You can create a virtual private // gateway before creating the VPC itself. // // For more information about virtual private gateways, see Adding a Hardware // Virtual Private Gateway to Your VPC (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_VPN.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation CreateVpnGateway for usage and error information. func (c *EC2) CreateVpnGateway(input *CreateVpnGatewayInput) (*CreateVpnGatewayOutput, error) { req, out := c.CreateVpnGatewayRequest(input) err := req.Send() return out, err } const opDeleteCustomerGateway = "DeleteCustomerGateway" // DeleteCustomerGatewayRequest generates a "aws/request.Request" representing the // client's request for the DeleteCustomerGateway operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteCustomerGateway for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteCustomerGateway method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteCustomerGatewayRequest method. // req, resp := client.DeleteCustomerGatewayRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteCustomerGatewayRequest(input *DeleteCustomerGatewayInput) (req *request.Request, output *DeleteCustomerGatewayOutput) { op := &request.Operation{ Name: opDeleteCustomerGateway, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteCustomerGatewayInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteCustomerGatewayOutput{} req.Data = output return } // DeleteCustomerGateway API operation for Amazon Elastic Compute Cloud. // // Deletes the specified customer gateway. You must delete the VPN connection // before you can delete the customer gateway. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteCustomerGateway for usage and error information. func (c *EC2) DeleteCustomerGateway(input *DeleteCustomerGatewayInput) (*DeleteCustomerGatewayOutput, error) { req, out := c.DeleteCustomerGatewayRequest(input) err := req.Send() return out, err } const opDeleteDhcpOptions = "DeleteDhcpOptions" // DeleteDhcpOptionsRequest generates a "aws/request.Request" representing the // client's request for the DeleteDhcpOptions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDhcpOptions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDhcpOptions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDhcpOptionsRequest method. // req, resp := client.DeleteDhcpOptionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteDhcpOptionsRequest(input *DeleteDhcpOptionsInput) (req *request.Request, output *DeleteDhcpOptionsOutput) { op := &request.Operation{ Name: opDeleteDhcpOptions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDhcpOptionsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteDhcpOptionsOutput{} req.Data = output return } // DeleteDhcpOptions API operation for Amazon Elastic Compute Cloud. // // Deletes the specified set of DHCP options. You must disassociate the set // of DHCP options before you can delete it. You can disassociate the set of // DHCP options by associating either a new set of options or the default set // of options with the VPC. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteDhcpOptions for usage and error information. func (c *EC2) DeleteDhcpOptions(input *DeleteDhcpOptionsInput) (*DeleteDhcpOptionsOutput, error) { req, out := c.DeleteDhcpOptionsRequest(input) err := req.Send() return out, err } const opDeleteFlowLogs = "DeleteFlowLogs" // DeleteFlowLogsRequest generates a "aws/request.Request" representing the // client's request for the DeleteFlowLogs operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteFlowLogs for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteFlowLogs method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteFlowLogsRequest method. // req, resp := client.DeleteFlowLogsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteFlowLogsRequest(input *DeleteFlowLogsInput) (req *request.Request, output *DeleteFlowLogsOutput) { op := &request.Operation{ Name: opDeleteFlowLogs, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteFlowLogsInput{} } req = c.newRequest(op, input, output) output = &DeleteFlowLogsOutput{} req.Data = output return } // DeleteFlowLogs API operation for Amazon Elastic Compute Cloud. // // Deletes one or more flow logs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteFlowLogs for usage and error information. func (c *EC2) DeleteFlowLogs(input *DeleteFlowLogsInput) (*DeleteFlowLogsOutput, error) { req, out := c.DeleteFlowLogsRequest(input) err := req.Send() return out, err } const opDeleteInternetGateway = "DeleteInternetGateway" // DeleteInternetGatewayRequest generates a "aws/request.Request" representing the // client's request for the DeleteInternetGateway operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteInternetGateway for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteInternetGateway method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteInternetGatewayRequest method. // req, resp := client.DeleteInternetGatewayRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteInternetGatewayRequest(input *DeleteInternetGatewayInput) (req *request.Request, output *DeleteInternetGatewayOutput) { op := &request.Operation{ Name: opDeleteInternetGateway, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteInternetGatewayInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteInternetGatewayOutput{} req.Data = output return } // DeleteInternetGateway API operation for Amazon Elastic Compute Cloud. // // Deletes the specified Internet gateway. You must detach the Internet gateway // from the VPC before you can delete it. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteInternetGateway for usage and error information. func (c *EC2) DeleteInternetGateway(input *DeleteInternetGatewayInput) (*DeleteInternetGatewayOutput, error) { req, out := c.DeleteInternetGatewayRequest(input) err := req.Send() return out, err } const opDeleteKeyPair = "DeleteKeyPair" // DeleteKeyPairRequest generates a "aws/request.Request" representing the // client's request for the DeleteKeyPair operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteKeyPair for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteKeyPair method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteKeyPairRequest method. // req, resp := client.DeleteKeyPairRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteKeyPairRequest(input *DeleteKeyPairInput) (req *request.Request, output *DeleteKeyPairOutput) { op := &request.Operation{ Name: opDeleteKeyPair, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteKeyPairInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteKeyPairOutput{} req.Data = output return } // DeleteKeyPair API operation for Amazon Elastic Compute Cloud. // // Deletes the specified key pair, by removing the public key from Amazon EC2. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteKeyPair for usage and error information. func (c *EC2) DeleteKeyPair(input *DeleteKeyPairInput) (*DeleteKeyPairOutput, error) { req, out := c.DeleteKeyPairRequest(input) err := req.Send() return out, err } const opDeleteNatGateway = "DeleteNatGateway" // DeleteNatGatewayRequest generates a "aws/request.Request" representing the // client's request for the DeleteNatGateway operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteNatGateway for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteNatGateway method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteNatGatewayRequest method. // req, resp := client.DeleteNatGatewayRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteNatGatewayRequest(input *DeleteNatGatewayInput) (req *request.Request, output *DeleteNatGatewayOutput) { op := &request.Operation{ Name: opDeleteNatGateway, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteNatGatewayInput{} } req = c.newRequest(op, input, output) output = &DeleteNatGatewayOutput{} req.Data = output return } // DeleteNatGateway API operation for Amazon Elastic Compute Cloud. // // Deletes the specified NAT gateway. Deleting a NAT gateway disassociates its // Elastic IP address, but does not release the address from your account. Deleting // a NAT gateway does not delete any NAT gateway routes in your route tables. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteNatGateway for usage and error information. func (c *EC2) DeleteNatGateway(input *DeleteNatGatewayInput) (*DeleteNatGatewayOutput, error) { req, out := c.DeleteNatGatewayRequest(input) err := req.Send() return out, err } const opDeleteNetworkAcl = "DeleteNetworkAcl" // DeleteNetworkAclRequest generates a "aws/request.Request" representing the // client's request for the DeleteNetworkAcl operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteNetworkAcl for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteNetworkAcl method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteNetworkAclRequest method. // req, resp := client.DeleteNetworkAclRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteNetworkAclRequest(input *DeleteNetworkAclInput) (req *request.Request, output *DeleteNetworkAclOutput) { op := &request.Operation{ Name: opDeleteNetworkAcl, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteNetworkAclInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteNetworkAclOutput{} req.Data = output return } // DeleteNetworkAcl API operation for Amazon Elastic Compute Cloud. // // Deletes the specified network ACL. You can't delete the ACL if it's associated // with any subnets. You can't delete the default network ACL. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteNetworkAcl for usage and error information. func (c *EC2) DeleteNetworkAcl(input *DeleteNetworkAclInput) (*DeleteNetworkAclOutput, error) { req, out := c.DeleteNetworkAclRequest(input) err := req.Send() return out, err } const opDeleteNetworkAclEntry = "DeleteNetworkAclEntry" // DeleteNetworkAclEntryRequest generates a "aws/request.Request" representing the // client's request for the DeleteNetworkAclEntry operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteNetworkAclEntry for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteNetworkAclEntry method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteNetworkAclEntryRequest method. // req, resp := client.DeleteNetworkAclEntryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteNetworkAclEntryRequest(input *DeleteNetworkAclEntryInput) (req *request.Request, output *DeleteNetworkAclEntryOutput) { op := &request.Operation{ Name: opDeleteNetworkAclEntry, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteNetworkAclEntryInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteNetworkAclEntryOutput{} req.Data = output return } // DeleteNetworkAclEntry API operation for Amazon Elastic Compute Cloud. // // Deletes the specified ingress or egress entry (rule) from the specified network // ACL. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteNetworkAclEntry for usage and error information. func (c *EC2) DeleteNetworkAclEntry(input *DeleteNetworkAclEntryInput) (*DeleteNetworkAclEntryOutput, error) { req, out := c.DeleteNetworkAclEntryRequest(input) err := req.Send() return out, err } const opDeleteNetworkInterface = "DeleteNetworkInterface" // DeleteNetworkInterfaceRequest generates a "aws/request.Request" representing the // client's request for the DeleteNetworkInterface operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteNetworkInterface for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteNetworkInterface method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteNetworkInterfaceRequest method. // req, resp := client.DeleteNetworkInterfaceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteNetworkInterfaceRequest(input *DeleteNetworkInterfaceInput) (req *request.Request, output *DeleteNetworkInterfaceOutput) { op := &request.Operation{ Name: opDeleteNetworkInterface, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteNetworkInterfaceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteNetworkInterfaceOutput{} req.Data = output return } // DeleteNetworkInterface API operation for Amazon Elastic Compute Cloud. // // Deletes the specified network interface. You must detach the network interface // before you can delete it. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteNetworkInterface for usage and error information. func (c *EC2) DeleteNetworkInterface(input *DeleteNetworkInterfaceInput) (*DeleteNetworkInterfaceOutput, error) { req, out := c.DeleteNetworkInterfaceRequest(input) err := req.Send() return out, err } const opDeletePlacementGroup = "DeletePlacementGroup" // DeletePlacementGroupRequest generates a "aws/request.Request" representing the // client's request for the DeletePlacementGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeletePlacementGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeletePlacementGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeletePlacementGroupRequest method. // req, resp := client.DeletePlacementGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeletePlacementGroupRequest(input *DeletePlacementGroupInput) (req *request.Request, output *DeletePlacementGroupOutput) { op := &request.Operation{ Name: opDeletePlacementGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeletePlacementGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeletePlacementGroupOutput{} req.Data = output return } // DeletePlacementGroup API operation for Amazon Elastic Compute Cloud. // // Deletes the specified placement group. You must terminate all instances in // the placement group before you can delete the placement group. For more information // about placement groups and cluster instances, see Cluster Instances (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using_cluster_computing.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeletePlacementGroup for usage and error information. func (c *EC2) DeletePlacementGroup(input *DeletePlacementGroupInput) (*DeletePlacementGroupOutput, error) { req, out := c.DeletePlacementGroupRequest(input) err := req.Send() return out, err } const opDeleteRoute = "DeleteRoute" // DeleteRouteRequest generates a "aws/request.Request" representing the // client's request for the DeleteRoute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteRoute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteRoute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteRouteRequest method. // req, resp := client.DeleteRouteRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteRouteRequest(input *DeleteRouteInput) (req *request.Request, output *DeleteRouteOutput) { op := &request.Operation{ Name: opDeleteRoute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteRouteInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteRouteOutput{} req.Data = output return } // DeleteRoute API operation for Amazon Elastic Compute Cloud. // // Deletes the specified route from the specified route table. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteRoute for usage and error information. func (c *EC2) DeleteRoute(input *DeleteRouteInput) (*DeleteRouteOutput, error) { req, out := c.DeleteRouteRequest(input) err := req.Send() return out, err } const opDeleteRouteTable = "DeleteRouteTable" // DeleteRouteTableRequest generates a "aws/request.Request" representing the // client's request for the DeleteRouteTable operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteRouteTable for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteRouteTable method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteRouteTableRequest method. // req, resp := client.DeleteRouteTableRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteRouteTableRequest(input *DeleteRouteTableInput) (req *request.Request, output *DeleteRouteTableOutput) { op := &request.Operation{ Name: opDeleteRouteTable, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteRouteTableInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteRouteTableOutput{} req.Data = output return } // DeleteRouteTable API operation for Amazon Elastic Compute Cloud. // // Deletes the specified route table. You must disassociate the route table // from any subnets before you can delete it. You can't delete the main route // table. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteRouteTable for usage and error information. func (c *EC2) DeleteRouteTable(input *DeleteRouteTableInput) (*DeleteRouteTableOutput, error) { req, out := c.DeleteRouteTableRequest(input) err := req.Send() return out, err } const opDeleteSecurityGroup = "DeleteSecurityGroup" // DeleteSecurityGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteSecurityGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteSecurityGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteSecurityGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteSecurityGroupRequest method. // req, resp := client.DeleteSecurityGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteSecurityGroupRequest(input *DeleteSecurityGroupInput) (req *request.Request, output *DeleteSecurityGroupOutput) { op := &request.Operation{ Name: opDeleteSecurityGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteSecurityGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteSecurityGroupOutput{} req.Data = output return } // DeleteSecurityGroup API operation for Amazon Elastic Compute Cloud. // // Deletes a security group. // // If you attempt to delete a security group that is associated with an instance, // or is referenced by another security group, the operation fails with InvalidGroup.InUse // in EC2-Classic or DependencyViolation in EC2-VPC. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteSecurityGroup for usage and error information. func (c *EC2) DeleteSecurityGroup(input *DeleteSecurityGroupInput) (*DeleteSecurityGroupOutput, error) { req, out := c.DeleteSecurityGroupRequest(input) err := req.Send() return out, err } const opDeleteSnapshot = "DeleteSnapshot" // DeleteSnapshotRequest generates a "aws/request.Request" representing the // client's request for the DeleteSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteSnapshotRequest method. // req, resp := client.DeleteSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteSnapshotRequest(input *DeleteSnapshotInput) (req *request.Request, output *DeleteSnapshotOutput) { op := &request.Operation{ Name: opDeleteSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteSnapshotInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteSnapshotOutput{} req.Data = output return } // DeleteSnapshot API operation for Amazon Elastic Compute Cloud. // // Deletes the specified snapshot. // // When you make periodic snapshots of a volume, the snapshots are incremental, // and only the blocks on the device that have changed since your last snapshot // are saved in the new snapshot. When you delete a snapshot, only the data // not needed for any other snapshot is removed. So regardless of which prior // snapshots have been deleted, all active snapshots will have access to all // the information needed to restore the volume. // // You cannot delete a snapshot of the root device of an EBS volume used by // a registered AMI. You must first de-register the AMI before you can delete // the snapshot. // // For more information, see Deleting an Amazon EBS Snapshot (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-deleting-snapshot.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteSnapshot for usage and error information. func (c *EC2) DeleteSnapshot(input *DeleteSnapshotInput) (*DeleteSnapshotOutput, error) { req, out := c.DeleteSnapshotRequest(input) err := req.Send() return out, err } const opDeleteSpotDatafeedSubscription = "DeleteSpotDatafeedSubscription" // DeleteSpotDatafeedSubscriptionRequest generates a "aws/request.Request" representing the // client's request for the DeleteSpotDatafeedSubscription operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteSpotDatafeedSubscription for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteSpotDatafeedSubscription method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteSpotDatafeedSubscriptionRequest method. // req, resp := client.DeleteSpotDatafeedSubscriptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteSpotDatafeedSubscriptionRequest(input *DeleteSpotDatafeedSubscriptionInput) (req *request.Request, output *DeleteSpotDatafeedSubscriptionOutput) { op := &request.Operation{ Name: opDeleteSpotDatafeedSubscription, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteSpotDatafeedSubscriptionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteSpotDatafeedSubscriptionOutput{} req.Data = output return } // DeleteSpotDatafeedSubscription API operation for Amazon Elastic Compute Cloud. // // Deletes the data feed for Spot instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteSpotDatafeedSubscription for usage and error information. func (c *EC2) DeleteSpotDatafeedSubscription(input *DeleteSpotDatafeedSubscriptionInput) (*DeleteSpotDatafeedSubscriptionOutput, error) { req, out := c.DeleteSpotDatafeedSubscriptionRequest(input) err := req.Send() return out, err } const opDeleteSubnet = "DeleteSubnet" // DeleteSubnetRequest generates a "aws/request.Request" representing the // client's request for the DeleteSubnet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteSubnet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteSubnet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteSubnetRequest method. // req, resp := client.DeleteSubnetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteSubnetRequest(input *DeleteSubnetInput) (req *request.Request, output *DeleteSubnetOutput) { op := &request.Operation{ Name: opDeleteSubnet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteSubnetInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteSubnetOutput{} req.Data = output return } // DeleteSubnet API operation for Amazon Elastic Compute Cloud. // // Deletes the specified subnet. You must terminate all running instances in // the subnet before you can delete the subnet. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteSubnet for usage and error information. func (c *EC2) DeleteSubnet(input *DeleteSubnetInput) (*DeleteSubnetOutput, error) { req, out := c.DeleteSubnetRequest(input) err := req.Send() return out, err } const opDeleteTags = "DeleteTags" // DeleteTagsRequest generates a "aws/request.Request" representing the // client's request for the DeleteTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteTagsRequest method. // req, resp := client.DeleteTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteTagsRequest(input *DeleteTagsInput) (req *request.Request, output *DeleteTagsOutput) { op := &request.Operation{ Name: opDeleteTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteTagsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteTagsOutput{} req.Data = output return } // DeleteTags API operation for Amazon Elastic Compute Cloud. // // Deletes the specified set of tags from the specified set of resources. This // call is designed to follow a DescribeTags request. // // For more information about tags, see Tagging Your Resources (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteTags for usage and error information. func (c *EC2) DeleteTags(input *DeleteTagsInput) (*DeleteTagsOutput, error) { req, out := c.DeleteTagsRequest(input) err := req.Send() return out, err } const opDeleteVolume = "DeleteVolume" // DeleteVolumeRequest generates a "aws/request.Request" representing the // client's request for the DeleteVolume operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteVolume for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteVolume method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteVolumeRequest method. // req, resp := client.DeleteVolumeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteVolumeRequest(input *DeleteVolumeInput) (req *request.Request, output *DeleteVolumeOutput) { op := &request.Operation{ Name: opDeleteVolume, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteVolumeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteVolumeOutput{} req.Data = output return } // DeleteVolume API operation for Amazon Elastic Compute Cloud. // // Deletes the specified EBS volume. The volume must be in the available state // (not attached to an instance). // // The volume may remain in the deleting state for several minutes. // // For more information, see Deleting an Amazon EBS Volume (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-deleting-volume.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteVolume for usage and error information. func (c *EC2) DeleteVolume(input *DeleteVolumeInput) (*DeleteVolumeOutput, error) { req, out := c.DeleteVolumeRequest(input) err := req.Send() return out, err } const opDeleteVpc = "DeleteVpc" // DeleteVpcRequest generates a "aws/request.Request" representing the // client's request for the DeleteVpc operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteVpc for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteVpc method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteVpcRequest method. // req, resp := client.DeleteVpcRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteVpcRequest(input *DeleteVpcInput) (req *request.Request, output *DeleteVpcOutput) { op := &request.Operation{ Name: opDeleteVpc, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteVpcInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteVpcOutput{} req.Data = output return } // DeleteVpc API operation for Amazon Elastic Compute Cloud. // // Deletes the specified VPC. You must detach or delete all gateways and resources // that are associated with the VPC before you can delete it. For example, you // must terminate all instances running in the VPC, delete all security groups // associated with the VPC (except the default one), delete all route tables // associated with the VPC (except the default one), and so on. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteVpc for usage and error information. func (c *EC2) DeleteVpc(input *DeleteVpcInput) (*DeleteVpcOutput, error) { req, out := c.DeleteVpcRequest(input) err := req.Send() return out, err } const opDeleteVpcEndpoints = "DeleteVpcEndpoints" // DeleteVpcEndpointsRequest generates a "aws/request.Request" representing the // client's request for the DeleteVpcEndpoints operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteVpcEndpoints for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteVpcEndpoints method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteVpcEndpointsRequest method. // req, resp := client.DeleteVpcEndpointsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteVpcEndpointsRequest(input *DeleteVpcEndpointsInput) (req *request.Request, output *DeleteVpcEndpointsOutput) { op := &request.Operation{ Name: opDeleteVpcEndpoints, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteVpcEndpointsInput{} } req = c.newRequest(op, input, output) output = &DeleteVpcEndpointsOutput{} req.Data = output return } // DeleteVpcEndpoints API operation for Amazon Elastic Compute Cloud. // // Deletes one or more specified VPC endpoints. Deleting the endpoint also deletes // the endpoint routes in the route tables that were associated with the endpoint. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteVpcEndpoints for usage and error information. func (c *EC2) DeleteVpcEndpoints(input *DeleteVpcEndpointsInput) (*DeleteVpcEndpointsOutput, error) { req, out := c.DeleteVpcEndpointsRequest(input) err := req.Send() return out, err } const opDeleteVpcPeeringConnection = "DeleteVpcPeeringConnection" // DeleteVpcPeeringConnectionRequest generates a "aws/request.Request" representing the // client's request for the DeleteVpcPeeringConnection operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteVpcPeeringConnection for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteVpcPeeringConnection method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteVpcPeeringConnectionRequest method. // req, resp := client.DeleteVpcPeeringConnectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteVpcPeeringConnectionRequest(input *DeleteVpcPeeringConnectionInput) (req *request.Request, output *DeleteVpcPeeringConnectionOutput) { op := &request.Operation{ Name: opDeleteVpcPeeringConnection, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteVpcPeeringConnectionInput{} } req = c.newRequest(op, input, output) output = &DeleteVpcPeeringConnectionOutput{} req.Data = output return } // DeleteVpcPeeringConnection API operation for Amazon Elastic Compute Cloud. // // Deletes a VPC peering connection. Either the owner of the requester VPC or // the owner of the peer VPC can delete the VPC peering connection if it's in // the active state. The owner of the requester VPC can delete a VPC peering // connection in the pending-acceptance state. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteVpcPeeringConnection for usage and error information. func (c *EC2) DeleteVpcPeeringConnection(input *DeleteVpcPeeringConnectionInput) (*DeleteVpcPeeringConnectionOutput, error) { req, out := c.DeleteVpcPeeringConnectionRequest(input) err := req.Send() return out, err } const opDeleteVpnConnection = "DeleteVpnConnection" // DeleteVpnConnectionRequest generates a "aws/request.Request" representing the // client's request for the DeleteVpnConnection operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteVpnConnection for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteVpnConnection method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteVpnConnectionRequest method. // req, resp := client.DeleteVpnConnectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteVpnConnectionRequest(input *DeleteVpnConnectionInput) (req *request.Request, output *DeleteVpnConnectionOutput) { op := &request.Operation{ Name: opDeleteVpnConnection, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteVpnConnectionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteVpnConnectionOutput{} req.Data = output return } // DeleteVpnConnection API operation for Amazon Elastic Compute Cloud. // // Deletes the specified VPN connection. // // If you're deleting the VPC and its associated components, we recommend that // you detach the virtual private gateway from the VPC and delete the VPC before // deleting the VPN connection. If you believe that the tunnel credentials for // your VPN connection have been compromised, you can delete the VPN connection // and create a new one that has new keys, without needing to delete the VPC // or virtual private gateway. If you create a new VPN connection, you must // reconfigure the customer gateway using the new configuration information // returned with the new VPN connection ID. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteVpnConnection for usage and error information. func (c *EC2) DeleteVpnConnection(input *DeleteVpnConnectionInput) (*DeleteVpnConnectionOutput, error) { req, out := c.DeleteVpnConnectionRequest(input) err := req.Send() return out, err } const opDeleteVpnConnectionRoute = "DeleteVpnConnectionRoute" // DeleteVpnConnectionRouteRequest generates a "aws/request.Request" representing the // client's request for the DeleteVpnConnectionRoute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteVpnConnectionRoute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteVpnConnectionRoute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteVpnConnectionRouteRequest method. // req, resp := client.DeleteVpnConnectionRouteRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteVpnConnectionRouteRequest(input *DeleteVpnConnectionRouteInput) (req *request.Request, output *DeleteVpnConnectionRouteOutput) { op := &request.Operation{ Name: opDeleteVpnConnectionRoute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteVpnConnectionRouteInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteVpnConnectionRouteOutput{} req.Data = output return } // DeleteVpnConnectionRoute API operation for Amazon Elastic Compute Cloud. // // Deletes the specified static route associated with a VPN connection between // an existing virtual private gateway and a VPN customer gateway. The static // route allows traffic to be routed from the virtual private gateway to the // VPN customer gateway. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteVpnConnectionRoute for usage and error information. func (c *EC2) DeleteVpnConnectionRoute(input *DeleteVpnConnectionRouteInput) (*DeleteVpnConnectionRouteOutput, error) { req, out := c.DeleteVpnConnectionRouteRequest(input) err := req.Send() return out, err } const opDeleteVpnGateway = "DeleteVpnGateway" // DeleteVpnGatewayRequest generates a "aws/request.Request" representing the // client's request for the DeleteVpnGateway operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteVpnGateway for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteVpnGateway method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteVpnGatewayRequest method. // req, resp := client.DeleteVpnGatewayRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeleteVpnGatewayRequest(input *DeleteVpnGatewayInput) (req *request.Request, output *DeleteVpnGatewayOutput) { op := &request.Operation{ Name: opDeleteVpnGateway, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteVpnGatewayInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteVpnGatewayOutput{} req.Data = output return } // DeleteVpnGateway API operation for Amazon Elastic Compute Cloud. // // Deletes the specified virtual private gateway. We recommend that before you // delete a virtual private gateway, you detach it from the VPC and delete the // VPN connection. Note that you don't need to delete the virtual private gateway // if you plan to delete and recreate the VPN connection between your VPC and // your network. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeleteVpnGateway for usage and error information. func (c *EC2) DeleteVpnGateway(input *DeleteVpnGatewayInput) (*DeleteVpnGatewayOutput, error) { req, out := c.DeleteVpnGatewayRequest(input) err := req.Send() return out, err } const opDeregisterImage = "DeregisterImage" // DeregisterImageRequest generates a "aws/request.Request" representing the // client's request for the DeregisterImage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeregisterImage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeregisterImage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeregisterImageRequest method. // req, resp := client.DeregisterImageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DeregisterImageRequest(input *DeregisterImageInput) (req *request.Request, output *DeregisterImageOutput) { op := &request.Operation{ Name: opDeregisterImage, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeregisterImageInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeregisterImageOutput{} req.Data = output return } // DeregisterImage API operation for Amazon Elastic Compute Cloud. // // Deregisters the specified AMI. After you deregister an AMI, it can't be used // to launch new instances. // // This command does not delete the AMI. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DeregisterImage for usage and error information. func (c *EC2) DeregisterImage(input *DeregisterImageInput) (*DeregisterImageOutput, error) { req, out := c.DeregisterImageRequest(input) err := req.Send() return out, err } const opDescribeAccountAttributes = "DescribeAccountAttributes" // DescribeAccountAttributesRequest generates a "aws/request.Request" representing the // client's request for the DescribeAccountAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAccountAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAccountAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAccountAttributesRequest method. // req, resp := client.DescribeAccountAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeAccountAttributesRequest(input *DescribeAccountAttributesInput) (req *request.Request, output *DescribeAccountAttributesOutput) { op := &request.Operation{ Name: opDescribeAccountAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAccountAttributesInput{} } req = c.newRequest(op, input, output) output = &DescribeAccountAttributesOutput{} req.Data = output return } // DescribeAccountAttributes API operation for Amazon Elastic Compute Cloud. // // Describes attributes of your AWS account. The following are the supported // account attributes: // // * supported-platforms: Indicates whether your account can launch instances // into EC2-Classic and EC2-VPC, or only into EC2-VPC. // // * default-vpc: The ID of the default VPC for your account, or none. // // * max-instances: The maximum number of On-Demand instances that you can // run. // // * vpc-max-security-groups-per-interface: The maximum number of security // groups that you can assign to a network interface. // // * max-elastic-ips: The maximum number of Elastic IP addresses that you // can allocate for use with EC2-Classic. // // * vpc-max-elastic-ips: The maximum number of Elastic IP addresses that // you can allocate for use with EC2-VPC. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeAccountAttributes for usage and error information. func (c *EC2) DescribeAccountAttributes(input *DescribeAccountAttributesInput) (*DescribeAccountAttributesOutput, error) { req, out := c.DescribeAccountAttributesRequest(input) err := req.Send() return out, err } const opDescribeAddresses = "DescribeAddresses" // DescribeAddressesRequest generates a "aws/request.Request" representing the // client's request for the DescribeAddresses operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAddresses for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAddresses method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAddressesRequest method. // req, resp := client.DescribeAddressesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeAddressesRequest(input *DescribeAddressesInput) (req *request.Request, output *DescribeAddressesOutput) { op := &request.Operation{ Name: opDescribeAddresses, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAddressesInput{} } req = c.newRequest(op, input, output) output = &DescribeAddressesOutput{} req.Data = output return } // DescribeAddresses API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your Elastic IP addresses. // // An Elastic IP address is for use in either the EC2-Classic platform or in // a VPC. For more information, see Elastic IP Addresses (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeAddresses for usage and error information. func (c *EC2) DescribeAddresses(input *DescribeAddressesInput) (*DescribeAddressesOutput, error) { req, out := c.DescribeAddressesRequest(input) err := req.Send() return out, err } const opDescribeAvailabilityZones = "DescribeAvailabilityZones" // DescribeAvailabilityZonesRequest generates a "aws/request.Request" representing the // client's request for the DescribeAvailabilityZones operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAvailabilityZones for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAvailabilityZones method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAvailabilityZonesRequest method. // req, resp := client.DescribeAvailabilityZonesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeAvailabilityZonesRequest(input *DescribeAvailabilityZonesInput) (req *request.Request, output *DescribeAvailabilityZonesOutput) { op := &request.Operation{ Name: opDescribeAvailabilityZones, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAvailabilityZonesInput{} } req = c.newRequest(op, input, output) output = &DescribeAvailabilityZonesOutput{} req.Data = output return } // DescribeAvailabilityZones API operation for Amazon Elastic Compute Cloud. // // Describes one or more of the Availability Zones that are available to you. // The results include zones only for the region you're currently using. If // there is an event impacting an Availability Zone, you can use this request // to view the state and any provided message for that Availability Zone. // // For more information, see Regions and Availability Zones (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeAvailabilityZones for usage and error information. func (c *EC2) DescribeAvailabilityZones(input *DescribeAvailabilityZonesInput) (*DescribeAvailabilityZonesOutput, error) { req, out := c.DescribeAvailabilityZonesRequest(input) err := req.Send() return out, err } const opDescribeBundleTasks = "DescribeBundleTasks" // DescribeBundleTasksRequest generates a "aws/request.Request" representing the // client's request for the DescribeBundleTasks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeBundleTasks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeBundleTasks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeBundleTasksRequest method. // req, resp := client.DescribeBundleTasksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeBundleTasksRequest(input *DescribeBundleTasksInput) (req *request.Request, output *DescribeBundleTasksOutput) { op := &request.Operation{ Name: opDescribeBundleTasks, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeBundleTasksInput{} } req = c.newRequest(op, input, output) output = &DescribeBundleTasksOutput{} req.Data = output return } // DescribeBundleTasks API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your bundling tasks. // // Completed bundle tasks are listed for only a limited time. If your bundle // task is no longer in the list, you can still register an AMI from it. Just // use RegisterImage with the Amazon S3 bucket name and image manifest name // you provided to the bundle task. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeBundleTasks for usage and error information. func (c *EC2) DescribeBundleTasks(input *DescribeBundleTasksInput) (*DescribeBundleTasksOutput, error) { req, out := c.DescribeBundleTasksRequest(input) err := req.Send() return out, err } const opDescribeClassicLinkInstances = "DescribeClassicLinkInstances" // DescribeClassicLinkInstancesRequest generates a "aws/request.Request" representing the // client's request for the DescribeClassicLinkInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeClassicLinkInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeClassicLinkInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeClassicLinkInstancesRequest method. // req, resp := client.DescribeClassicLinkInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeClassicLinkInstancesRequest(input *DescribeClassicLinkInstancesInput) (req *request.Request, output *DescribeClassicLinkInstancesOutput) { op := &request.Operation{ Name: opDescribeClassicLinkInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeClassicLinkInstancesInput{} } req = c.newRequest(op, input, output) output = &DescribeClassicLinkInstancesOutput{} req.Data = output return } // DescribeClassicLinkInstances API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your linked EC2-Classic instances. This request // only returns information about EC2-Classic instances linked to a VPC through // ClassicLink; you cannot use this request to return information about other // instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeClassicLinkInstances for usage and error information. func (c *EC2) DescribeClassicLinkInstances(input *DescribeClassicLinkInstancesInput) (*DescribeClassicLinkInstancesOutput, error) { req, out := c.DescribeClassicLinkInstancesRequest(input) err := req.Send() return out, err } const opDescribeConversionTasks = "DescribeConversionTasks" // DescribeConversionTasksRequest generates a "aws/request.Request" representing the // client's request for the DescribeConversionTasks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeConversionTasks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeConversionTasks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeConversionTasksRequest method. // req, resp := client.DescribeConversionTasksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeConversionTasksRequest(input *DescribeConversionTasksInput) (req *request.Request, output *DescribeConversionTasksOutput) { op := &request.Operation{ Name: opDescribeConversionTasks, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeConversionTasksInput{} } req = c.newRequest(op, input, output) output = &DescribeConversionTasksOutput{} req.Data = output return } // DescribeConversionTasks API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your conversion tasks. For more information, see // the VM Import/Export User Guide (http://docs.aws.amazon.com/vm-import/latest/userguide/). // // For information about the import manifest referenced by this API action, // see VM Import Manifest (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/manifest.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeConversionTasks for usage and error information. func (c *EC2) DescribeConversionTasks(input *DescribeConversionTasksInput) (*DescribeConversionTasksOutput, error) { req, out := c.DescribeConversionTasksRequest(input) err := req.Send() return out, err } const opDescribeCustomerGateways = "DescribeCustomerGateways" // DescribeCustomerGatewaysRequest generates a "aws/request.Request" representing the // client's request for the DescribeCustomerGateways operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCustomerGateways for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCustomerGateways method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeCustomerGatewaysRequest method. // req, resp := client.DescribeCustomerGatewaysRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeCustomerGatewaysRequest(input *DescribeCustomerGatewaysInput) (req *request.Request, output *DescribeCustomerGatewaysOutput) { op := &request.Operation{ Name: opDescribeCustomerGateways, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeCustomerGatewaysInput{} } req = c.newRequest(op, input, output) output = &DescribeCustomerGatewaysOutput{} req.Data = output return } // DescribeCustomerGateways API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your VPN customer gateways. // // For more information about VPN customer gateways, see Adding a Hardware Virtual // Private Gateway to Your VPC (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_VPN.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeCustomerGateways for usage and error information. func (c *EC2) DescribeCustomerGateways(input *DescribeCustomerGatewaysInput) (*DescribeCustomerGatewaysOutput, error) { req, out := c.DescribeCustomerGatewaysRequest(input) err := req.Send() return out, err } const opDescribeDhcpOptions = "DescribeDhcpOptions" // DescribeDhcpOptionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeDhcpOptions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDhcpOptions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDhcpOptions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDhcpOptionsRequest method. // req, resp := client.DescribeDhcpOptionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeDhcpOptionsRequest(input *DescribeDhcpOptionsInput) (req *request.Request, output *DescribeDhcpOptionsOutput) { op := &request.Operation{ Name: opDescribeDhcpOptions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeDhcpOptionsInput{} } req = c.newRequest(op, input, output) output = &DescribeDhcpOptionsOutput{} req.Data = output return } // DescribeDhcpOptions API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your DHCP options sets. // // For more information about DHCP options sets, see DHCP Options Sets (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_DHCP_Options.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeDhcpOptions for usage and error information. func (c *EC2) DescribeDhcpOptions(input *DescribeDhcpOptionsInput) (*DescribeDhcpOptionsOutput, error) { req, out := c.DescribeDhcpOptionsRequest(input) err := req.Send() return out, err } const opDescribeExportTasks = "DescribeExportTasks" // DescribeExportTasksRequest generates a "aws/request.Request" representing the // client's request for the DescribeExportTasks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeExportTasks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeExportTasks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeExportTasksRequest method. // req, resp := client.DescribeExportTasksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeExportTasksRequest(input *DescribeExportTasksInput) (req *request.Request, output *DescribeExportTasksOutput) { op := &request.Operation{ Name: opDescribeExportTasks, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeExportTasksInput{} } req = c.newRequest(op, input, output) output = &DescribeExportTasksOutput{} req.Data = output return } // DescribeExportTasks API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your export tasks. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeExportTasks for usage and error information. func (c *EC2) DescribeExportTasks(input *DescribeExportTasksInput) (*DescribeExportTasksOutput, error) { req, out := c.DescribeExportTasksRequest(input) err := req.Send() return out, err } const opDescribeFlowLogs = "DescribeFlowLogs" // DescribeFlowLogsRequest generates a "aws/request.Request" representing the // client's request for the DescribeFlowLogs operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeFlowLogs for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeFlowLogs method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeFlowLogsRequest method. // req, resp := client.DescribeFlowLogsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeFlowLogsRequest(input *DescribeFlowLogsInput) (req *request.Request, output *DescribeFlowLogsOutput) { op := &request.Operation{ Name: opDescribeFlowLogs, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeFlowLogsInput{} } req = c.newRequest(op, input, output) output = &DescribeFlowLogsOutput{} req.Data = output return } // DescribeFlowLogs API operation for Amazon Elastic Compute Cloud. // // Describes one or more flow logs. To view the information in your flow logs // (the log streams for the network interfaces), you must use the CloudWatch // Logs console or the CloudWatch Logs API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeFlowLogs for usage and error information. func (c *EC2) DescribeFlowLogs(input *DescribeFlowLogsInput) (*DescribeFlowLogsOutput, error) { req, out := c.DescribeFlowLogsRequest(input) err := req.Send() return out, err } const opDescribeHostReservationOfferings = "DescribeHostReservationOfferings" // DescribeHostReservationOfferingsRequest generates a "aws/request.Request" representing the // client's request for the DescribeHostReservationOfferings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeHostReservationOfferings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeHostReservationOfferings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeHostReservationOfferingsRequest method. // req, resp := client.DescribeHostReservationOfferingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeHostReservationOfferingsRequest(input *DescribeHostReservationOfferingsInput) (req *request.Request, output *DescribeHostReservationOfferingsOutput) { op := &request.Operation{ Name: opDescribeHostReservationOfferings, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeHostReservationOfferingsInput{} } req = c.newRequest(op, input, output) output = &DescribeHostReservationOfferingsOutput{} req.Data = output return } // DescribeHostReservationOfferings API operation for Amazon Elastic Compute Cloud. // // Describes the Dedicated Host Reservations that are available to purchase. // // The results describe all the Dedicated Host Reservation offerings, including // offerings that may not match the instance family and region of your Dedicated // Hosts. When purchasing an offering, ensure that the the instance family and // region of the offering matches that of the Dedicated Host/s it will be associated // with. For an overview of supported instance types, see Dedicated Hosts Overview // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/dedicated-hosts-overview.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeHostReservationOfferings for usage and error information. func (c *EC2) DescribeHostReservationOfferings(input *DescribeHostReservationOfferingsInput) (*DescribeHostReservationOfferingsOutput, error) { req, out := c.DescribeHostReservationOfferingsRequest(input) err := req.Send() return out, err } const opDescribeHostReservations = "DescribeHostReservations" // DescribeHostReservationsRequest generates a "aws/request.Request" representing the // client's request for the DescribeHostReservations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeHostReservations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeHostReservations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeHostReservationsRequest method. // req, resp := client.DescribeHostReservationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeHostReservationsRequest(input *DescribeHostReservationsInput) (req *request.Request, output *DescribeHostReservationsOutput) { op := &request.Operation{ Name: opDescribeHostReservations, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeHostReservationsInput{} } req = c.newRequest(op, input, output) output = &DescribeHostReservationsOutput{} req.Data = output return } // DescribeHostReservations API operation for Amazon Elastic Compute Cloud. // // Describes Dedicated Host Reservations which are associated with Dedicated // Hosts in your account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeHostReservations for usage and error information. func (c *EC2) DescribeHostReservations(input *DescribeHostReservationsInput) (*DescribeHostReservationsOutput, error) { req, out := c.DescribeHostReservationsRequest(input) err := req.Send() return out, err } const opDescribeHosts = "DescribeHosts" // DescribeHostsRequest generates a "aws/request.Request" representing the // client's request for the DescribeHosts operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeHosts for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeHosts method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeHostsRequest method. // req, resp := client.DescribeHostsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeHostsRequest(input *DescribeHostsInput) (req *request.Request, output *DescribeHostsOutput) { op := &request.Operation{ Name: opDescribeHosts, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeHostsInput{} } req = c.newRequest(op, input, output) output = &DescribeHostsOutput{} req.Data = output return } // DescribeHosts API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your Dedicated Hosts. // // The results describe only the Dedicated Hosts in the region you're currently // using. All listed instances consume capacity on your Dedicated Host. Dedicated // Hosts that have recently been released will be listed with the state released. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeHosts for usage and error information. func (c *EC2) DescribeHosts(input *DescribeHostsInput) (*DescribeHostsOutput, error) { req, out := c.DescribeHostsRequest(input) err := req.Send() return out, err } const opDescribeIdFormat = "DescribeIdFormat" // DescribeIdFormatRequest generates a "aws/request.Request" representing the // client's request for the DescribeIdFormat operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeIdFormat for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeIdFormat method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeIdFormatRequest method. // req, resp := client.DescribeIdFormatRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeIdFormatRequest(input *DescribeIdFormatInput) (req *request.Request, output *DescribeIdFormatOutput) { op := &request.Operation{ Name: opDescribeIdFormat, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeIdFormatInput{} } req = c.newRequest(op, input, output) output = &DescribeIdFormatOutput{} req.Data = output return } // DescribeIdFormat API operation for Amazon Elastic Compute Cloud. // // Describes the ID format settings for your resources on a per-region basis, // for example, to view which resource types are enabled for longer IDs. This // request only returns information about resource types whose ID formats can // be modified; it does not return information about other resource types. // // The following resource types support longer IDs: instance | reservation | // snapshot | volume. // // These settings apply to the IAM user who makes the request; they do not apply // to the entire AWS account. By default, an IAM user defaults to the same settings // as the root user, unless they explicitly override the settings by running // the ModifyIdFormat command. Resources created with longer IDs are visible // to all IAM users, regardless of these settings and provided that they have // permission to use the relevant Describe command for the resource type. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeIdFormat for usage and error information. func (c *EC2) DescribeIdFormat(input *DescribeIdFormatInput) (*DescribeIdFormatOutput, error) { req, out := c.DescribeIdFormatRequest(input) err := req.Send() return out, err } const opDescribeIdentityIdFormat = "DescribeIdentityIdFormat" // DescribeIdentityIdFormatRequest generates a "aws/request.Request" representing the // client's request for the DescribeIdentityIdFormat operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeIdentityIdFormat for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeIdentityIdFormat method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeIdentityIdFormatRequest method. // req, resp := client.DescribeIdentityIdFormatRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeIdentityIdFormatRequest(input *DescribeIdentityIdFormatInput) (req *request.Request, output *DescribeIdentityIdFormatOutput) { op := &request.Operation{ Name: opDescribeIdentityIdFormat, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeIdentityIdFormatInput{} } req = c.newRequest(op, input, output) output = &DescribeIdentityIdFormatOutput{} req.Data = output return } // DescribeIdentityIdFormat API operation for Amazon Elastic Compute Cloud. // // Describes the ID format settings for resources for the specified IAM user, // IAM role, or root user. For example, you can view the resource types that // are enabled for longer IDs. This request only returns information about resource // types whose ID formats can be modified; it does not return information about // other resource types. For more information, see Resource IDs (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/resource-ids.html) // in the Amazon Elastic Compute Cloud User Guide. // // The following resource types support longer IDs: instance | reservation | // snapshot | volume. // // These settings apply to the principal specified in the request. They do not // apply to the principal that makes the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeIdentityIdFormat for usage and error information. func (c *EC2) DescribeIdentityIdFormat(input *DescribeIdentityIdFormatInput) (*DescribeIdentityIdFormatOutput, error) { req, out := c.DescribeIdentityIdFormatRequest(input) err := req.Send() return out, err } const opDescribeImageAttribute = "DescribeImageAttribute" // DescribeImageAttributeRequest generates a "aws/request.Request" representing the // client's request for the DescribeImageAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeImageAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeImageAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeImageAttributeRequest method. // req, resp := client.DescribeImageAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeImageAttributeRequest(input *DescribeImageAttributeInput) (req *request.Request, output *DescribeImageAttributeOutput) { op := &request.Operation{ Name: opDescribeImageAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeImageAttributeInput{} } req = c.newRequest(op, input, output) output = &DescribeImageAttributeOutput{} req.Data = output return } // DescribeImageAttribute API operation for Amazon Elastic Compute Cloud. // // Describes the specified attribute of the specified AMI. You can specify only // one attribute at a time. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeImageAttribute for usage and error information. func (c *EC2) DescribeImageAttribute(input *DescribeImageAttributeInput) (*DescribeImageAttributeOutput, error) { req, out := c.DescribeImageAttributeRequest(input) err := req.Send() return out, err } const opDescribeImages = "DescribeImages" // DescribeImagesRequest generates a "aws/request.Request" representing the // client's request for the DescribeImages operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeImages for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeImages method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeImagesRequest method. // req, resp := client.DescribeImagesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeImagesRequest(input *DescribeImagesInput) (req *request.Request, output *DescribeImagesOutput) { op := &request.Operation{ Name: opDescribeImages, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeImagesInput{} } req = c.newRequest(op, input, output) output = &DescribeImagesOutput{} req.Data = output return } // DescribeImages API operation for Amazon Elastic Compute Cloud. // // Describes one or more of the images (AMIs, AKIs, and ARIs) available to you. // Images available to you include public images, private images that you own, // and private images owned by other AWS accounts but for which you have explicit // launch permissions. // // Deregistered images are included in the returned results for an unspecified // interval after deregistration. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeImages for usage and error information. func (c *EC2) DescribeImages(input *DescribeImagesInput) (*DescribeImagesOutput, error) { req, out := c.DescribeImagesRequest(input) err := req.Send() return out, err } const opDescribeImportImageTasks = "DescribeImportImageTasks" // DescribeImportImageTasksRequest generates a "aws/request.Request" representing the // client's request for the DescribeImportImageTasks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeImportImageTasks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeImportImageTasks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeImportImageTasksRequest method. // req, resp := client.DescribeImportImageTasksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeImportImageTasksRequest(input *DescribeImportImageTasksInput) (req *request.Request, output *DescribeImportImageTasksOutput) { op := &request.Operation{ Name: opDescribeImportImageTasks, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeImportImageTasksInput{} } req = c.newRequest(op, input, output) output = &DescribeImportImageTasksOutput{} req.Data = output return } // DescribeImportImageTasks API operation for Amazon Elastic Compute Cloud. // // Displays details about an import virtual machine or import snapshot tasks // that are already created. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeImportImageTasks for usage and error information. func (c *EC2) DescribeImportImageTasks(input *DescribeImportImageTasksInput) (*DescribeImportImageTasksOutput, error) { req, out := c.DescribeImportImageTasksRequest(input) err := req.Send() return out, err } const opDescribeImportSnapshotTasks = "DescribeImportSnapshotTasks" // DescribeImportSnapshotTasksRequest generates a "aws/request.Request" representing the // client's request for the DescribeImportSnapshotTasks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeImportSnapshotTasks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeImportSnapshotTasks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeImportSnapshotTasksRequest method. // req, resp := client.DescribeImportSnapshotTasksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeImportSnapshotTasksRequest(input *DescribeImportSnapshotTasksInput) (req *request.Request, output *DescribeImportSnapshotTasksOutput) { op := &request.Operation{ Name: opDescribeImportSnapshotTasks, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeImportSnapshotTasksInput{} } req = c.newRequest(op, input, output) output = &DescribeImportSnapshotTasksOutput{} req.Data = output return } // DescribeImportSnapshotTasks API operation for Amazon Elastic Compute Cloud. // // Describes your import snapshot tasks. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeImportSnapshotTasks for usage and error information. func (c *EC2) DescribeImportSnapshotTasks(input *DescribeImportSnapshotTasksInput) (*DescribeImportSnapshotTasksOutput, error) { req, out := c.DescribeImportSnapshotTasksRequest(input) err := req.Send() return out, err } const opDescribeInstanceAttribute = "DescribeInstanceAttribute" // DescribeInstanceAttributeRequest generates a "aws/request.Request" representing the // client's request for the DescribeInstanceAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeInstanceAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeInstanceAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeInstanceAttributeRequest method. // req, resp := client.DescribeInstanceAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeInstanceAttributeRequest(input *DescribeInstanceAttributeInput) (req *request.Request, output *DescribeInstanceAttributeOutput) { op := &request.Operation{ Name: opDescribeInstanceAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeInstanceAttributeInput{} } req = c.newRequest(op, input, output) output = &DescribeInstanceAttributeOutput{} req.Data = output return } // DescribeInstanceAttribute API operation for Amazon Elastic Compute Cloud. // // Describes the specified attribute of the specified instance. You can specify // only one attribute at a time. Valid attribute values are: instanceType | // kernel | ramdisk | userData | disableApiTermination | instanceInitiatedShutdownBehavior // | rootDeviceName | blockDeviceMapping | productCodes | sourceDestCheck | // groupSet | ebsOptimized | sriovNetSupport // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeInstanceAttribute for usage and error information. func (c *EC2) DescribeInstanceAttribute(input *DescribeInstanceAttributeInput) (*DescribeInstanceAttributeOutput, error) { req, out := c.DescribeInstanceAttributeRequest(input) err := req.Send() return out, err } const opDescribeInstanceStatus = "DescribeInstanceStatus" // DescribeInstanceStatusRequest generates a "aws/request.Request" representing the // client's request for the DescribeInstanceStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeInstanceStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeInstanceStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeInstanceStatusRequest method. // req, resp := client.DescribeInstanceStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeInstanceStatusRequest(input *DescribeInstanceStatusInput) (req *request.Request, output *DescribeInstanceStatusOutput) { op := &request.Operation{ Name: opDescribeInstanceStatus, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &DescribeInstanceStatusInput{} } req = c.newRequest(op, input, output) output = &DescribeInstanceStatusOutput{} req.Data = output return } // DescribeInstanceStatus API operation for Amazon Elastic Compute Cloud. // // Describes the status of one or more instances. By default, only running instances // are described, unless specified otherwise. // // Instance status includes the following components: // // * Status checks - Amazon EC2 performs status checks on running EC2 instances // to identify hardware and software issues. For more information, see Status // Checks for Your Instances (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitoring-system-instance-status-check.html) // and Troubleshooting Instances with Failed Status Checks (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/TroubleshootingInstances.html) // in the Amazon Elastic Compute Cloud User Guide. // // * Scheduled events - Amazon EC2 can schedule events (such as reboot, stop, // or terminate) for your instances related to hardware issues, software // updates, or system maintenance. For more information, see Scheduled Events // for Your Instances (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitoring-instances-status-check_sched.html) // in the Amazon Elastic Compute Cloud User Guide. // // * Instance state - You can manage your instances from the moment you launch // them through their termination. For more information, see Instance Lifecycle // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-lifecycle.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeInstanceStatus for usage and error information. func (c *EC2) DescribeInstanceStatus(input *DescribeInstanceStatusInput) (*DescribeInstanceStatusOutput, error) { req, out := c.DescribeInstanceStatusRequest(input) err := req.Send() return out, err } // DescribeInstanceStatusPages iterates over the pages of a DescribeInstanceStatus operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeInstanceStatus method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeInstanceStatus operation. // pageNum := 0 // err := client.DescribeInstanceStatusPages(params, // func(page *DescribeInstanceStatusOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *EC2) DescribeInstanceStatusPages(input *DescribeInstanceStatusInput, fn func(p *DescribeInstanceStatusOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeInstanceStatusRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeInstanceStatusOutput), lastPage) }) } const opDescribeInstances = "DescribeInstances" // DescribeInstancesRequest generates a "aws/request.Request" representing the // client's request for the DescribeInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeInstancesRequest method. // req, resp := client.DescribeInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeInstancesRequest(input *DescribeInstancesInput) (req *request.Request, output *DescribeInstancesOutput) { op := &request.Operation{ Name: opDescribeInstances, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &DescribeInstancesInput{} } req = c.newRequest(op, input, output) output = &DescribeInstancesOutput{} req.Data = output return } // DescribeInstances API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your instances. // // If you specify one or more instance IDs, Amazon EC2 returns information for // those instances. If you do not specify instance IDs, Amazon EC2 returns information // for all relevant instances. If you specify an instance ID that is not valid, // an error is returned. If you specify an instance that you do not own, it // is not included in the returned results. // // Recently terminated instances might appear in the returned results. This // interval is usually less than one hour. // // If you describe instances in the rare case where an Availability Zone is // experiencing a service disruption and you specify instance IDs that are in // the affected zone, or do not specify any instance IDs at all, the call fails. // If you describe instances and specify only instance IDs that are in an unaffected // zone, the call works normally. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeInstances for usage and error information. func (c *EC2) DescribeInstances(input *DescribeInstancesInput) (*DescribeInstancesOutput, error) { req, out := c.DescribeInstancesRequest(input) err := req.Send() return out, err } // DescribeInstancesPages iterates over the pages of a DescribeInstances operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeInstances method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeInstances operation. // pageNum := 0 // err := client.DescribeInstancesPages(params, // func(page *DescribeInstancesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *EC2) DescribeInstancesPages(input *DescribeInstancesInput, fn func(p *DescribeInstancesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeInstancesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeInstancesOutput), lastPage) }) } const opDescribeInternetGateways = "DescribeInternetGateways" // DescribeInternetGatewaysRequest generates a "aws/request.Request" representing the // client's request for the DescribeInternetGateways operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeInternetGateways for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeInternetGateways method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeInternetGatewaysRequest method. // req, resp := client.DescribeInternetGatewaysRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeInternetGatewaysRequest(input *DescribeInternetGatewaysInput) (req *request.Request, output *DescribeInternetGatewaysOutput) { op := &request.Operation{ Name: opDescribeInternetGateways, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeInternetGatewaysInput{} } req = c.newRequest(op, input, output) output = &DescribeInternetGatewaysOutput{} req.Data = output return } // DescribeInternetGateways API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your Internet gateways. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeInternetGateways for usage and error information. func (c *EC2) DescribeInternetGateways(input *DescribeInternetGatewaysInput) (*DescribeInternetGatewaysOutput, error) { req, out := c.DescribeInternetGatewaysRequest(input) err := req.Send() return out, err } const opDescribeKeyPairs = "DescribeKeyPairs" // DescribeKeyPairsRequest generates a "aws/request.Request" representing the // client's request for the DescribeKeyPairs operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeKeyPairs for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeKeyPairs method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeKeyPairsRequest method. // req, resp := client.DescribeKeyPairsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeKeyPairsRequest(input *DescribeKeyPairsInput) (req *request.Request, output *DescribeKeyPairsOutput) { op := &request.Operation{ Name: opDescribeKeyPairs, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeKeyPairsInput{} } req = c.newRequest(op, input, output) output = &DescribeKeyPairsOutput{} req.Data = output return } // DescribeKeyPairs API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your key pairs. // // For more information about key pairs, see Key Pairs (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeKeyPairs for usage and error information. func (c *EC2) DescribeKeyPairs(input *DescribeKeyPairsInput) (*DescribeKeyPairsOutput, error) { req, out := c.DescribeKeyPairsRequest(input) err := req.Send() return out, err } const opDescribeMovingAddresses = "DescribeMovingAddresses" // DescribeMovingAddressesRequest generates a "aws/request.Request" representing the // client's request for the DescribeMovingAddresses operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeMovingAddresses for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeMovingAddresses method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeMovingAddressesRequest method. // req, resp := client.DescribeMovingAddressesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeMovingAddressesRequest(input *DescribeMovingAddressesInput) (req *request.Request, output *DescribeMovingAddressesOutput) { op := &request.Operation{ Name: opDescribeMovingAddresses, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeMovingAddressesInput{} } req = c.newRequest(op, input, output) output = &DescribeMovingAddressesOutput{} req.Data = output return } // DescribeMovingAddresses API operation for Amazon Elastic Compute Cloud. // // Describes your Elastic IP addresses that are being moved to the EC2-VPC platform, // or that are being restored to the EC2-Classic platform. This request does // not return information about any other Elastic IP addresses in your account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeMovingAddresses for usage and error information. func (c *EC2) DescribeMovingAddresses(input *DescribeMovingAddressesInput) (*DescribeMovingAddressesOutput, error) { req, out := c.DescribeMovingAddressesRequest(input) err := req.Send() return out, err } const opDescribeNatGateways = "DescribeNatGateways" // DescribeNatGatewaysRequest generates a "aws/request.Request" representing the // client's request for the DescribeNatGateways operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeNatGateways for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeNatGateways method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeNatGatewaysRequest method. // req, resp := client.DescribeNatGatewaysRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeNatGatewaysRequest(input *DescribeNatGatewaysInput) (req *request.Request, output *DescribeNatGatewaysOutput) { op := &request.Operation{ Name: opDescribeNatGateways, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeNatGatewaysInput{} } req = c.newRequest(op, input, output) output = &DescribeNatGatewaysOutput{} req.Data = output return } // DescribeNatGateways API operation for Amazon Elastic Compute Cloud. // // Describes one or more of the your NAT gateways. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeNatGateways for usage and error information. func (c *EC2) DescribeNatGateways(input *DescribeNatGatewaysInput) (*DescribeNatGatewaysOutput, error) { req, out := c.DescribeNatGatewaysRequest(input) err := req.Send() return out, err } const opDescribeNetworkAcls = "DescribeNetworkAcls" // DescribeNetworkAclsRequest generates a "aws/request.Request" representing the // client's request for the DescribeNetworkAcls operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeNetworkAcls for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeNetworkAcls method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeNetworkAclsRequest method. // req, resp := client.DescribeNetworkAclsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeNetworkAclsRequest(input *DescribeNetworkAclsInput) (req *request.Request, output *DescribeNetworkAclsOutput) { op := &request.Operation{ Name: opDescribeNetworkAcls, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeNetworkAclsInput{} } req = c.newRequest(op, input, output) output = &DescribeNetworkAclsOutput{} req.Data = output return } // DescribeNetworkAcls API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your network ACLs. // // For more information about network ACLs, see Network ACLs (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_ACLs.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeNetworkAcls for usage and error information. func (c *EC2) DescribeNetworkAcls(input *DescribeNetworkAclsInput) (*DescribeNetworkAclsOutput, error) { req, out := c.DescribeNetworkAclsRequest(input) err := req.Send() return out, err } const opDescribeNetworkInterfaceAttribute = "DescribeNetworkInterfaceAttribute" // DescribeNetworkInterfaceAttributeRequest generates a "aws/request.Request" representing the // client's request for the DescribeNetworkInterfaceAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeNetworkInterfaceAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeNetworkInterfaceAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeNetworkInterfaceAttributeRequest method. // req, resp := client.DescribeNetworkInterfaceAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeNetworkInterfaceAttributeRequest(input *DescribeNetworkInterfaceAttributeInput) (req *request.Request, output *DescribeNetworkInterfaceAttributeOutput) { op := &request.Operation{ Name: opDescribeNetworkInterfaceAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeNetworkInterfaceAttributeInput{} } req = c.newRequest(op, input, output) output = &DescribeNetworkInterfaceAttributeOutput{} req.Data = output return } // DescribeNetworkInterfaceAttribute API operation for Amazon Elastic Compute Cloud. // // Describes a network interface attribute. You can specify only one attribute // at a time. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeNetworkInterfaceAttribute for usage and error information. func (c *EC2) DescribeNetworkInterfaceAttribute(input *DescribeNetworkInterfaceAttributeInput) (*DescribeNetworkInterfaceAttributeOutput, error) { req, out := c.DescribeNetworkInterfaceAttributeRequest(input) err := req.Send() return out, err } const opDescribeNetworkInterfaces = "DescribeNetworkInterfaces" // DescribeNetworkInterfacesRequest generates a "aws/request.Request" representing the // client's request for the DescribeNetworkInterfaces operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeNetworkInterfaces for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeNetworkInterfaces method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeNetworkInterfacesRequest method. // req, resp := client.DescribeNetworkInterfacesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeNetworkInterfacesRequest(input *DescribeNetworkInterfacesInput) (req *request.Request, output *DescribeNetworkInterfacesOutput) { op := &request.Operation{ Name: opDescribeNetworkInterfaces, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeNetworkInterfacesInput{} } req = c.newRequest(op, input, output) output = &DescribeNetworkInterfacesOutput{} req.Data = output return } // DescribeNetworkInterfaces API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your network interfaces. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeNetworkInterfaces for usage and error information. func (c *EC2) DescribeNetworkInterfaces(input *DescribeNetworkInterfacesInput) (*DescribeNetworkInterfacesOutput, error) { req, out := c.DescribeNetworkInterfacesRequest(input) err := req.Send() return out, err } const opDescribePlacementGroups = "DescribePlacementGroups" // DescribePlacementGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribePlacementGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribePlacementGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribePlacementGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribePlacementGroupsRequest method. // req, resp := client.DescribePlacementGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribePlacementGroupsRequest(input *DescribePlacementGroupsInput) (req *request.Request, output *DescribePlacementGroupsOutput) { op := &request.Operation{ Name: opDescribePlacementGroups, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribePlacementGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribePlacementGroupsOutput{} req.Data = output return } // DescribePlacementGroups API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your placement groups. For more information about // placement groups and cluster instances, see Cluster Instances (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using_cluster_computing.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribePlacementGroups for usage and error information. func (c *EC2) DescribePlacementGroups(input *DescribePlacementGroupsInput) (*DescribePlacementGroupsOutput, error) { req, out := c.DescribePlacementGroupsRequest(input) err := req.Send() return out, err } const opDescribePrefixLists = "DescribePrefixLists" // DescribePrefixListsRequest generates a "aws/request.Request" representing the // client's request for the DescribePrefixLists operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribePrefixLists for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribePrefixLists method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribePrefixListsRequest method. // req, resp := client.DescribePrefixListsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribePrefixListsRequest(input *DescribePrefixListsInput) (req *request.Request, output *DescribePrefixListsOutput) { op := &request.Operation{ Name: opDescribePrefixLists, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribePrefixListsInput{} } req = c.newRequest(op, input, output) output = &DescribePrefixListsOutput{} req.Data = output return } // DescribePrefixLists API operation for Amazon Elastic Compute Cloud. // // Describes available AWS services in a prefix list format, which includes // the prefix list name and prefix list ID of the service and the IP address // range for the service. A prefix list ID is required for creating an outbound // security group rule that allows traffic from a VPC to access an AWS service // through a VPC endpoint. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribePrefixLists for usage and error information. func (c *EC2) DescribePrefixLists(input *DescribePrefixListsInput) (*DescribePrefixListsOutput, error) { req, out := c.DescribePrefixListsRequest(input) err := req.Send() return out, err } const opDescribeRegions = "DescribeRegions" // DescribeRegionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeRegions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeRegions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeRegions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeRegionsRequest method. // req, resp := client.DescribeRegionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeRegionsRequest(input *DescribeRegionsInput) (req *request.Request, output *DescribeRegionsOutput) { op := &request.Operation{ Name: opDescribeRegions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeRegionsInput{} } req = c.newRequest(op, input, output) output = &DescribeRegionsOutput{} req.Data = output return } // DescribeRegions API operation for Amazon Elastic Compute Cloud. // // Describes one or more regions that are currently available to you. // // For a list of the regions supported by Amazon EC2, see Regions and Endpoints // (http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeRegions for usage and error information. func (c *EC2) DescribeRegions(input *DescribeRegionsInput) (*DescribeRegionsOutput, error) { req, out := c.DescribeRegionsRequest(input) err := req.Send() return out, err } const opDescribeReservedInstances = "DescribeReservedInstances" // DescribeReservedInstancesRequest generates a "aws/request.Request" representing the // client's request for the DescribeReservedInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeReservedInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeReservedInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeReservedInstancesRequest method. // req, resp := client.DescribeReservedInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeReservedInstancesRequest(input *DescribeReservedInstancesInput) (req *request.Request, output *DescribeReservedInstancesOutput) { op := &request.Operation{ Name: opDescribeReservedInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeReservedInstancesInput{} } req = c.newRequest(op, input, output) output = &DescribeReservedInstancesOutput{} req.Data = output return } // DescribeReservedInstances API operation for Amazon Elastic Compute Cloud. // // Describes one or more of the Reserved Instances that you purchased. // // For more information about Reserved Instances, see Reserved Instances (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts-on-demand-reserved-instances.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeReservedInstances for usage and error information. func (c *EC2) DescribeReservedInstances(input *DescribeReservedInstancesInput) (*DescribeReservedInstancesOutput, error) { req, out := c.DescribeReservedInstancesRequest(input) err := req.Send() return out, err } const opDescribeReservedInstancesListings = "DescribeReservedInstancesListings" // DescribeReservedInstancesListingsRequest generates a "aws/request.Request" representing the // client's request for the DescribeReservedInstancesListings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeReservedInstancesListings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeReservedInstancesListings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeReservedInstancesListingsRequest method. // req, resp := client.DescribeReservedInstancesListingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeReservedInstancesListingsRequest(input *DescribeReservedInstancesListingsInput) (req *request.Request, output *DescribeReservedInstancesListingsOutput) { op := &request.Operation{ Name: opDescribeReservedInstancesListings, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeReservedInstancesListingsInput{} } req = c.newRequest(op, input, output) output = &DescribeReservedInstancesListingsOutput{} req.Data = output return } // DescribeReservedInstancesListings API operation for Amazon Elastic Compute Cloud. // // Describes your account's Reserved Instance listings in the Reserved Instance // Marketplace. // // The Reserved Instance Marketplace matches sellers who want to resell Reserved // Instance capacity that they no longer need with buyers who want to purchase // additional capacity. Reserved Instances bought and sold through the Reserved // Instance Marketplace work like any other Reserved Instances. // // As a seller, you choose to list some or all of your Reserved Instances, and // you specify the upfront price to receive for them. Your Reserved Instances // are then listed in the Reserved Instance Marketplace and are available for // purchase. // // As a buyer, you specify the configuration of the Reserved Instance to purchase, // and the Marketplace matches what you're searching for with what's available. // The Marketplace first sells the lowest priced Reserved Instances to you, // and continues to sell available Reserved Instance listings to you until your // demand is met. You are charged based on the total price of all of the listings // that you purchase. // // For more information, see Reserved Instance Marketplace (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-market-general.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeReservedInstancesListings for usage and error information. func (c *EC2) DescribeReservedInstancesListings(input *DescribeReservedInstancesListingsInput) (*DescribeReservedInstancesListingsOutput, error) { req, out := c.DescribeReservedInstancesListingsRequest(input) err := req.Send() return out, err } const opDescribeReservedInstancesModifications = "DescribeReservedInstancesModifications" // DescribeReservedInstancesModificationsRequest generates a "aws/request.Request" representing the // client's request for the DescribeReservedInstancesModifications operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeReservedInstancesModifications for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeReservedInstancesModifications method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeReservedInstancesModificationsRequest method. // req, resp := client.DescribeReservedInstancesModificationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeReservedInstancesModificationsRequest(input *DescribeReservedInstancesModificationsInput) (req *request.Request, output *DescribeReservedInstancesModificationsOutput) { op := &request.Operation{ Name: opDescribeReservedInstancesModifications, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &DescribeReservedInstancesModificationsInput{} } req = c.newRequest(op, input, output) output = &DescribeReservedInstancesModificationsOutput{} req.Data = output return } // DescribeReservedInstancesModifications API operation for Amazon Elastic Compute Cloud. // // Describes the modifications made to your Reserved Instances. If no parameter // is specified, information about all your Reserved Instances modification // requests is returned. If a modification ID is specified, only information // about the specific modification is returned. // // For more information, see Modifying Reserved Instances (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-modifying.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeReservedInstancesModifications for usage and error information. func (c *EC2) DescribeReservedInstancesModifications(input *DescribeReservedInstancesModificationsInput) (*DescribeReservedInstancesModificationsOutput, error) { req, out := c.DescribeReservedInstancesModificationsRequest(input) err := req.Send() return out, err } // DescribeReservedInstancesModificationsPages iterates over the pages of a DescribeReservedInstancesModifications operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeReservedInstancesModifications method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeReservedInstancesModifications operation. // pageNum := 0 // err := client.DescribeReservedInstancesModificationsPages(params, // func(page *DescribeReservedInstancesModificationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *EC2) DescribeReservedInstancesModificationsPages(input *DescribeReservedInstancesModificationsInput, fn func(p *DescribeReservedInstancesModificationsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeReservedInstancesModificationsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeReservedInstancesModificationsOutput), lastPage) }) } const opDescribeReservedInstancesOfferings = "DescribeReservedInstancesOfferings" // DescribeReservedInstancesOfferingsRequest generates a "aws/request.Request" representing the // client's request for the DescribeReservedInstancesOfferings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeReservedInstancesOfferings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeReservedInstancesOfferings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeReservedInstancesOfferingsRequest method. // req, resp := client.DescribeReservedInstancesOfferingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeReservedInstancesOfferingsRequest(input *DescribeReservedInstancesOfferingsInput) (req *request.Request, output *DescribeReservedInstancesOfferingsOutput) { op := &request.Operation{ Name: opDescribeReservedInstancesOfferings, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &DescribeReservedInstancesOfferingsInput{} } req = c.newRequest(op, input, output) output = &DescribeReservedInstancesOfferingsOutput{} req.Data = output return } // DescribeReservedInstancesOfferings API operation for Amazon Elastic Compute Cloud. // // Describes Reserved Instance offerings that are available for purchase. With // Reserved Instances, you purchase the right to launch instances for a period // of time. During that time period, you do not receive insufficient capacity // errors, and you pay a lower usage rate than the rate charged for On-Demand // instances for the actual time used. // // If you have listed your own Reserved Instances for sale in the Reserved Instance // Marketplace, they will be excluded from these results. This is to ensure // that you do not purchase your own Reserved Instances. // // For more information, see Reserved Instance Marketplace (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-market-general.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeReservedInstancesOfferings for usage and error information. func (c *EC2) DescribeReservedInstancesOfferings(input *DescribeReservedInstancesOfferingsInput) (*DescribeReservedInstancesOfferingsOutput, error) { req, out := c.DescribeReservedInstancesOfferingsRequest(input) err := req.Send() return out, err } // DescribeReservedInstancesOfferingsPages iterates over the pages of a DescribeReservedInstancesOfferings operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeReservedInstancesOfferings method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeReservedInstancesOfferings operation. // pageNum := 0 // err := client.DescribeReservedInstancesOfferingsPages(params, // func(page *DescribeReservedInstancesOfferingsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *EC2) DescribeReservedInstancesOfferingsPages(input *DescribeReservedInstancesOfferingsInput, fn func(p *DescribeReservedInstancesOfferingsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeReservedInstancesOfferingsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeReservedInstancesOfferingsOutput), lastPage) }) } const opDescribeRouteTables = "DescribeRouteTables" // DescribeRouteTablesRequest generates a "aws/request.Request" representing the // client's request for the DescribeRouteTables operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeRouteTables for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeRouteTables method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeRouteTablesRequest method. // req, resp := client.DescribeRouteTablesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeRouteTablesRequest(input *DescribeRouteTablesInput) (req *request.Request, output *DescribeRouteTablesOutput) { op := &request.Operation{ Name: opDescribeRouteTables, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeRouteTablesInput{} } req = c.newRequest(op, input, output) output = &DescribeRouteTablesOutput{} req.Data = output return } // DescribeRouteTables API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your route tables. // // Each subnet in your VPC must be associated with a route table. If a subnet // is not explicitly associated with any route table, it is implicitly associated // with the main route table. This command does not return the subnet ID for // implicit associations. // // For more information about route tables, see Route Tables (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Route_Tables.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeRouteTables for usage and error information. func (c *EC2) DescribeRouteTables(input *DescribeRouteTablesInput) (*DescribeRouteTablesOutput, error) { req, out := c.DescribeRouteTablesRequest(input) err := req.Send() return out, err } const opDescribeScheduledInstanceAvailability = "DescribeScheduledInstanceAvailability" // DescribeScheduledInstanceAvailabilityRequest generates a "aws/request.Request" representing the // client's request for the DescribeScheduledInstanceAvailability operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeScheduledInstanceAvailability for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeScheduledInstanceAvailability method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeScheduledInstanceAvailabilityRequest method. // req, resp := client.DescribeScheduledInstanceAvailabilityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeScheduledInstanceAvailabilityRequest(input *DescribeScheduledInstanceAvailabilityInput) (req *request.Request, output *DescribeScheduledInstanceAvailabilityOutput) { op := &request.Operation{ Name: opDescribeScheduledInstanceAvailability, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeScheduledInstanceAvailabilityInput{} } req = c.newRequest(op, input, output) output = &DescribeScheduledInstanceAvailabilityOutput{} req.Data = output return } // DescribeScheduledInstanceAvailability API operation for Amazon Elastic Compute Cloud. // // Finds available schedules that meet the specified criteria. // // You can search for an available schedule no more than 3 months in advance. // You must meet the minimum required duration of 1,200 hours per year. For // example, the minimum daily schedule is 4 hours, the minimum weekly schedule // is 24 hours, and the minimum monthly schedule is 100 hours. // // After you find a schedule that meets your needs, call PurchaseScheduledInstances // to purchase Scheduled Instances with that schedule. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeScheduledInstanceAvailability for usage and error information. func (c *EC2) DescribeScheduledInstanceAvailability(input *DescribeScheduledInstanceAvailabilityInput) (*DescribeScheduledInstanceAvailabilityOutput, error) { req, out := c.DescribeScheduledInstanceAvailabilityRequest(input) err := req.Send() return out, err } const opDescribeScheduledInstances = "DescribeScheduledInstances" // DescribeScheduledInstancesRequest generates a "aws/request.Request" representing the // client's request for the DescribeScheduledInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeScheduledInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeScheduledInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeScheduledInstancesRequest method. // req, resp := client.DescribeScheduledInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeScheduledInstancesRequest(input *DescribeScheduledInstancesInput) (req *request.Request, output *DescribeScheduledInstancesOutput) { op := &request.Operation{ Name: opDescribeScheduledInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeScheduledInstancesInput{} } req = c.newRequest(op, input, output) output = &DescribeScheduledInstancesOutput{} req.Data = output return } // DescribeScheduledInstances API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your Scheduled Instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeScheduledInstances for usage and error information. func (c *EC2) DescribeScheduledInstances(input *DescribeScheduledInstancesInput) (*DescribeScheduledInstancesOutput, error) { req, out := c.DescribeScheduledInstancesRequest(input) err := req.Send() return out, err } const opDescribeSecurityGroupReferences = "DescribeSecurityGroupReferences" // DescribeSecurityGroupReferencesRequest generates a "aws/request.Request" representing the // client's request for the DescribeSecurityGroupReferences operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSecurityGroupReferences for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSecurityGroupReferences method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSecurityGroupReferencesRequest method. // req, resp := client.DescribeSecurityGroupReferencesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeSecurityGroupReferencesRequest(input *DescribeSecurityGroupReferencesInput) (req *request.Request, output *DescribeSecurityGroupReferencesOutput) { op := &request.Operation{ Name: opDescribeSecurityGroupReferences, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSecurityGroupReferencesInput{} } req = c.newRequest(op, input, output) output = &DescribeSecurityGroupReferencesOutput{} req.Data = output return } // DescribeSecurityGroupReferences API operation for Amazon Elastic Compute Cloud. // // [EC2-VPC only] Describes the VPCs on the other side of a VPC peering connection // that are referencing the security groups you've specified in this request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeSecurityGroupReferences for usage and error information. func (c *EC2) DescribeSecurityGroupReferences(input *DescribeSecurityGroupReferencesInput) (*DescribeSecurityGroupReferencesOutput, error) { req, out := c.DescribeSecurityGroupReferencesRequest(input) err := req.Send() return out, err } const opDescribeSecurityGroups = "DescribeSecurityGroups" // DescribeSecurityGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeSecurityGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSecurityGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSecurityGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSecurityGroupsRequest method. // req, resp := client.DescribeSecurityGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeSecurityGroupsRequest(input *DescribeSecurityGroupsInput) (req *request.Request, output *DescribeSecurityGroupsOutput) { op := &request.Operation{ Name: opDescribeSecurityGroups, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSecurityGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeSecurityGroupsOutput{} req.Data = output return } // DescribeSecurityGroups API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your security groups. // // A security group is for use with instances either in the EC2-Classic platform // or in a specific VPC. For more information, see Amazon EC2 Security Groups // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html) // in the Amazon Elastic Compute Cloud User Guide and Security Groups for Your // VPC (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_SecurityGroups.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeSecurityGroups for usage and error information. func (c *EC2) DescribeSecurityGroups(input *DescribeSecurityGroupsInput) (*DescribeSecurityGroupsOutput, error) { req, out := c.DescribeSecurityGroupsRequest(input) err := req.Send() return out, err } const opDescribeSnapshotAttribute = "DescribeSnapshotAttribute" // DescribeSnapshotAttributeRequest generates a "aws/request.Request" representing the // client's request for the DescribeSnapshotAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSnapshotAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSnapshotAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSnapshotAttributeRequest method. // req, resp := client.DescribeSnapshotAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeSnapshotAttributeRequest(input *DescribeSnapshotAttributeInput) (req *request.Request, output *DescribeSnapshotAttributeOutput) { op := &request.Operation{ Name: opDescribeSnapshotAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSnapshotAttributeInput{} } req = c.newRequest(op, input, output) output = &DescribeSnapshotAttributeOutput{} req.Data = output return } // DescribeSnapshotAttribute API operation for Amazon Elastic Compute Cloud. // // Describes the specified attribute of the specified snapshot. You can specify // only one attribute at a time. // // For more information about EBS snapshots, see Amazon EBS Snapshots (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSSnapshots.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeSnapshotAttribute for usage and error information. func (c *EC2) DescribeSnapshotAttribute(input *DescribeSnapshotAttributeInput) (*DescribeSnapshotAttributeOutput, error) { req, out := c.DescribeSnapshotAttributeRequest(input) err := req.Send() return out, err } const opDescribeSnapshots = "DescribeSnapshots" // DescribeSnapshotsRequest generates a "aws/request.Request" representing the // client's request for the DescribeSnapshots operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSnapshots for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSnapshots method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSnapshotsRequest method. // req, resp := client.DescribeSnapshotsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeSnapshotsRequest(input *DescribeSnapshotsInput) (req *request.Request, output *DescribeSnapshotsOutput) { op := &request.Operation{ Name: opDescribeSnapshots, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &DescribeSnapshotsInput{} } req = c.newRequest(op, input, output) output = &DescribeSnapshotsOutput{} req.Data = output return } // DescribeSnapshots API operation for Amazon Elastic Compute Cloud. // // Describes one or more of the EBS snapshots available to you. Available snapshots // include public snapshots available for any AWS account to launch, private // snapshots that you own, and private snapshots owned by another AWS account // but for which you've been given explicit create volume permissions. // // The create volume permissions fall into the following categories: // // * public: The owner of the snapshot granted create volume permissions // for the snapshot to the all group. All AWS accounts have create volume // permissions for these snapshots. // // * explicit: The owner of the snapshot granted create volume permissions // to a specific AWS account. // // * implicit: An AWS account has implicit create volume permissions for // all snapshots it owns. // // The list of snapshots returned can be modified by specifying snapshot IDs, // snapshot owners, or AWS accounts with create volume permissions. If no options // are specified, Amazon EC2 returns all snapshots for which you have create // volume permissions. // // If you specify one or more snapshot IDs, only snapshots that have the specified // IDs are returned. If you specify an invalid snapshot ID, an error is returned. // If you specify a snapshot ID for which you do not have access, it is not // included in the returned results. // // If you specify one or more snapshot owners using the OwnerIds option, only // snapshots from the specified owners and for which you have access are returned. // The results can include the AWS account IDs of the specified owners, amazon // for snapshots owned by Amazon, or self for snapshots that you own. // // If you specify a list of restorable users, only snapshots with create snapshot // permissions for those users are returned. You can specify AWS account IDs // (if you own the snapshots), self for snapshots for which you own or have // explicit permissions, or all for public snapshots. // // If you are describing a long list of snapshots, you can paginate the output // to make the list more manageable. The MaxResults parameter sets the maximum // number of results returned in a single page. If the list of results exceeds // your MaxResults value, then that number of results is returned along with // a NextToken value that can be passed to a subsequent DescribeSnapshots request // to retrieve the remaining results. // // For more information about EBS snapshots, see Amazon EBS Snapshots (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSSnapshots.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeSnapshots for usage and error information. func (c *EC2) DescribeSnapshots(input *DescribeSnapshotsInput) (*DescribeSnapshotsOutput, error) { req, out := c.DescribeSnapshotsRequest(input) err := req.Send() return out, err } // DescribeSnapshotsPages iterates over the pages of a DescribeSnapshots operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeSnapshots method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeSnapshots operation. // pageNum := 0 // err := client.DescribeSnapshotsPages(params, // func(page *DescribeSnapshotsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *EC2) DescribeSnapshotsPages(input *DescribeSnapshotsInput, fn func(p *DescribeSnapshotsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeSnapshotsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeSnapshotsOutput), lastPage) }) } const opDescribeSpotDatafeedSubscription = "DescribeSpotDatafeedSubscription" // DescribeSpotDatafeedSubscriptionRequest generates a "aws/request.Request" representing the // client's request for the DescribeSpotDatafeedSubscription operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSpotDatafeedSubscription for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSpotDatafeedSubscription method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSpotDatafeedSubscriptionRequest method. // req, resp := client.DescribeSpotDatafeedSubscriptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeSpotDatafeedSubscriptionRequest(input *DescribeSpotDatafeedSubscriptionInput) (req *request.Request, output *DescribeSpotDatafeedSubscriptionOutput) { op := &request.Operation{ Name: opDescribeSpotDatafeedSubscription, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSpotDatafeedSubscriptionInput{} } req = c.newRequest(op, input, output) output = &DescribeSpotDatafeedSubscriptionOutput{} req.Data = output return } // DescribeSpotDatafeedSubscription API operation for Amazon Elastic Compute Cloud. // // Describes the data feed for Spot instances. For more information, see Spot // Instance Data Feed (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-data-feeds.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeSpotDatafeedSubscription for usage and error information. func (c *EC2) DescribeSpotDatafeedSubscription(input *DescribeSpotDatafeedSubscriptionInput) (*DescribeSpotDatafeedSubscriptionOutput, error) { req, out := c.DescribeSpotDatafeedSubscriptionRequest(input) err := req.Send() return out, err } const opDescribeSpotFleetInstances = "DescribeSpotFleetInstances" // DescribeSpotFleetInstancesRequest generates a "aws/request.Request" representing the // client's request for the DescribeSpotFleetInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSpotFleetInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSpotFleetInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSpotFleetInstancesRequest method. // req, resp := client.DescribeSpotFleetInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeSpotFleetInstancesRequest(input *DescribeSpotFleetInstancesInput) (req *request.Request, output *DescribeSpotFleetInstancesOutput) { op := &request.Operation{ Name: opDescribeSpotFleetInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSpotFleetInstancesInput{} } req = c.newRequest(op, input, output) output = &DescribeSpotFleetInstancesOutput{} req.Data = output return } // DescribeSpotFleetInstances API operation for Amazon Elastic Compute Cloud. // // Describes the running instances for the specified Spot fleet. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeSpotFleetInstances for usage and error information. func (c *EC2) DescribeSpotFleetInstances(input *DescribeSpotFleetInstancesInput) (*DescribeSpotFleetInstancesOutput, error) { req, out := c.DescribeSpotFleetInstancesRequest(input) err := req.Send() return out, err } const opDescribeSpotFleetRequestHistory = "DescribeSpotFleetRequestHistory" // DescribeSpotFleetRequestHistoryRequest generates a "aws/request.Request" representing the // client's request for the DescribeSpotFleetRequestHistory operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSpotFleetRequestHistory for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSpotFleetRequestHistory method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSpotFleetRequestHistoryRequest method. // req, resp := client.DescribeSpotFleetRequestHistoryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeSpotFleetRequestHistoryRequest(input *DescribeSpotFleetRequestHistoryInput) (req *request.Request, output *DescribeSpotFleetRequestHistoryOutput) { op := &request.Operation{ Name: opDescribeSpotFleetRequestHistory, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSpotFleetRequestHistoryInput{} } req = c.newRequest(op, input, output) output = &DescribeSpotFleetRequestHistoryOutput{} req.Data = output return } // DescribeSpotFleetRequestHistory API operation for Amazon Elastic Compute Cloud. // // Describes the events for the specified Spot fleet request during the specified // time. // // Spot fleet events are delayed by up to 30 seconds before they can be described. // This ensures that you can query by the last evaluated time and not miss a // recorded event. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeSpotFleetRequestHistory for usage and error information. func (c *EC2) DescribeSpotFleetRequestHistory(input *DescribeSpotFleetRequestHistoryInput) (*DescribeSpotFleetRequestHistoryOutput, error) { req, out := c.DescribeSpotFleetRequestHistoryRequest(input) err := req.Send() return out, err } const opDescribeSpotFleetRequests = "DescribeSpotFleetRequests" // DescribeSpotFleetRequestsRequest generates a "aws/request.Request" representing the // client's request for the DescribeSpotFleetRequests operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSpotFleetRequests for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSpotFleetRequests method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSpotFleetRequestsRequest method. // req, resp := client.DescribeSpotFleetRequestsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeSpotFleetRequestsRequest(input *DescribeSpotFleetRequestsInput) (req *request.Request, output *DescribeSpotFleetRequestsOutput) { op := &request.Operation{ Name: opDescribeSpotFleetRequests, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &DescribeSpotFleetRequestsInput{} } req = c.newRequest(op, input, output) output = &DescribeSpotFleetRequestsOutput{} req.Data = output return } // DescribeSpotFleetRequests API operation for Amazon Elastic Compute Cloud. // // Describes your Spot fleet requests. // // Spot fleet requests are deleted 48 hours after they are canceled and their // instances are terminated. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeSpotFleetRequests for usage and error information. func (c *EC2) DescribeSpotFleetRequests(input *DescribeSpotFleetRequestsInput) (*DescribeSpotFleetRequestsOutput, error) { req, out := c.DescribeSpotFleetRequestsRequest(input) err := req.Send() return out, err } // DescribeSpotFleetRequestsPages iterates over the pages of a DescribeSpotFleetRequests operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeSpotFleetRequests method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeSpotFleetRequests operation. // pageNum := 0 // err := client.DescribeSpotFleetRequestsPages(params, // func(page *DescribeSpotFleetRequestsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *EC2) DescribeSpotFleetRequestsPages(input *DescribeSpotFleetRequestsInput, fn func(p *DescribeSpotFleetRequestsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeSpotFleetRequestsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeSpotFleetRequestsOutput), lastPage) }) } const opDescribeSpotInstanceRequests = "DescribeSpotInstanceRequests" // DescribeSpotInstanceRequestsRequest generates a "aws/request.Request" representing the // client's request for the DescribeSpotInstanceRequests operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSpotInstanceRequests for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSpotInstanceRequests method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSpotInstanceRequestsRequest method. // req, resp := client.DescribeSpotInstanceRequestsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeSpotInstanceRequestsRequest(input *DescribeSpotInstanceRequestsInput) (req *request.Request, output *DescribeSpotInstanceRequestsOutput) { op := &request.Operation{ Name: opDescribeSpotInstanceRequests, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSpotInstanceRequestsInput{} } req = c.newRequest(op, input, output) output = &DescribeSpotInstanceRequestsOutput{} req.Data = output return } // DescribeSpotInstanceRequests API operation for Amazon Elastic Compute Cloud. // // Describes the Spot instance requests that belong to your account. Spot instances // are instances that Amazon EC2 launches when the bid price that you specify // exceeds the current Spot price. Amazon EC2 periodically sets the Spot price // based on available Spot instance capacity and current Spot instance requests. // For more information, see Spot Instance Requests (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-requests.html) // in the Amazon Elastic Compute Cloud User Guide. // // You can use DescribeSpotInstanceRequests to find a running Spot instance // by examining the response. If the status of the Spot instance is fulfilled, // the instance ID appears in the response and contains the identifier of the // instance. Alternatively, you can use DescribeInstances with a filter to look // for instances where the instance lifecycle is spot. // // Spot instance requests are deleted 4 hours after they are canceled and their // instances are terminated. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeSpotInstanceRequests for usage and error information. func (c *EC2) DescribeSpotInstanceRequests(input *DescribeSpotInstanceRequestsInput) (*DescribeSpotInstanceRequestsOutput, error) { req, out := c.DescribeSpotInstanceRequestsRequest(input) err := req.Send() return out, err } const opDescribeSpotPriceHistory = "DescribeSpotPriceHistory" // DescribeSpotPriceHistoryRequest generates a "aws/request.Request" representing the // client's request for the DescribeSpotPriceHistory operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSpotPriceHistory for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSpotPriceHistory method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSpotPriceHistoryRequest method. // req, resp := client.DescribeSpotPriceHistoryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeSpotPriceHistoryRequest(input *DescribeSpotPriceHistoryInput) (req *request.Request, output *DescribeSpotPriceHistoryOutput) { op := &request.Operation{ Name: opDescribeSpotPriceHistory, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &DescribeSpotPriceHistoryInput{} } req = c.newRequest(op, input, output) output = &DescribeSpotPriceHistoryOutput{} req.Data = output return } // DescribeSpotPriceHistory API operation for Amazon Elastic Compute Cloud. // // Describes the Spot price history. The prices returned are listed in chronological // order, from the oldest to the most recent, for up to the past 90 days. For // more information, see Spot Instance Pricing History (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances-history.html) // in the Amazon Elastic Compute Cloud User Guide. // // When you specify a start and end time, this operation returns the prices // of the instance types within the time range that you specified and the time // when the price changed. The price is valid within the time period that you // specified; the response merely indicates the last time that the price changed. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeSpotPriceHistory for usage and error information. func (c *EC2) DescribeSpotPriceHistory(input *DescribeSpotPriceHistoryInput) (*DescribeSpotPriceHistoryOutput, error) { req, out := c.DescribeSpotPriceHistoryRequest(input) err := req.Send() return out, err } // DescribeSpotPriceHistoryPages iterates over the pages of a DescribeSpotPriceHistory operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeSpotPriceHistory method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeSpotPriceHistory operation. // pageNum := 0 // err := client.DescribeSpotPriceHistoryPages(params, // func(page *DescribeSpotPriceHistoryOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *EC2) DescribeSpotPriceHistoryPages(input *DescribeSpotPriceHistoryInput, fn func(p *DescribeSpotPriceHistoryOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeSpotPriceHistoryRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeSpotPriceHistoryOutput), lastPage) }) } const opDescribeStaleSecurityGroups = "DescribeStaleSecurityGroups" // DescribeStaleSecurityGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeStaleSecurityGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeStaleSecurityGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeStaleSecurityGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeStaleSecurityGroupsRequest method. // req, resp := client.DescribeStaleSecurityGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeStaleSecurityGroupsRequest(input *DescribeStaleSecurityGroupsInput) (req *request.Request, output *DescribeStaleSecurityGroupsOutput) { op := &request.Operation{ Name: opDescribeStaleSecurityGroups, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeStaleSecurityGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeStaleSecurityGroupsOutput{} req.Data = output return } // DescribeStaleSecurityGroups API operation for Amazon Elastic Compute Cloud. // // [EC2-VPC only] Describes the stale security group rules for security groups // in a specified VPC. Rules are stale when they reference a deleted security // group in a peer VPC, or a security group in a peer VPC for which the VPC // peering connection has been deleted. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeStaleSecurityGroups for usage and error information. func (c *EC2) DescribeStaleSecurityGroups(input *DescribeStaleSecurityGroupsInput) (*DescribeStaleSecurityGroupsOutput, error) { req, out := c.DescribeStaleSecurityGroupsRequest(input) err := req.Send() return out, err } const opDescribeSubnets = "DescribeSubnets" // DescribeSubnetsRequest generates a "aws/request.Request" representing the // client's request for the DescribeSubnets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSubnets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSubnets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSubnetsRequest method. // req, resp := client.DescribeSubnetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeSubnetsRequest(input *DescribeSubnetsInput) (req *request.Request, output *DescribeSubnetsOutput) { op := &request.Operation{ Name: opDescribeSubnets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSubnetsInput{} } req = c.newRequest(op, input, output) output = &DescribeSubnetsOutput{} req.Data = output return } // DescribeSubnets API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your subnets. // // For more information about subnets, see Your VPC and Subnets (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Subnets.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeSubnets for usage and error information. func (c *EC2) DescribeSubnets(input *DescribeSubnetsInput) (*DescribeSubnetsOutput, error) { req, out := c.DescribeSubnetsRequest(input) err := req.Send() return out, err } const opDescribeTags = "DescribeTags" // DescribeTagsRequest generates a "aws/request.Request" representing the // client's request for the DescribeTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTagsRequest method. // req, resp := client.DescribeTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeTagsRequest(input *DescribeTagsInput) (req *request.Request, output *DescribeTagsOutput) { op := &request.Operation{ Name: opDescribeTags, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &DescribeTagsInput{} } req = c.newRequest(op, input, output) output = &DescribeTagsOutput{} req.Data = output return } // DescribeTags API operation for Amazon Elastic Compute Cloud. // // Describes one or more of the tags for your EC2 resources. // // For more information about tags, see Tagging Your Resources (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeTags for usage and error information. func (c *EC2) DescribeTags(input *DescribeTagsInput) (*DescribeTagsOutput, error) { req, out := c.DescribeTagsRequest(input) err := req.Send() return out, err } // DescribeTagsPages iterates over the pages of a DescribeTags operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeTags method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeTags operation. // pageNum := 0 // err := client.DescribeTagsPages(params, // func(page *DescribeTagsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *EC2) DescribeTagsPages(input *DescribeTagsInput, fn func(p *DescribeTagsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeTagsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeTagsOutput), lastPage) }) } const opDescribeVolumeAttribute = "DescribeVolumeAttribute" // DescribeVolumeAttributeRequest generates a "aws/request.Request" representing the // client's request for the DescribeVolumeAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeVolumeAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeVolumeAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeVolumeAttributeRequest method. // req, resp := client.DescribeVolumeAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeVolumeAttributeRequest(input *DescribeVolumeAttributeInput) (req *request.Request, output *DescribeVolumeAttributeOutput) { op := &request.Operation{ Name: opDescribeVolumeAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeVolumeAttributeInput{} } req = c.newRequest(op, input, output) output = &DescribeVolumeAttributeOutput{} req.Data = output return } // DescribeVolumeAttribute API operation for Amazon Elastic Compute Cloud. // // Describes the specified attribute of the specified volume. You can specify // only one attribute at a time. // // For more information about EBS volumes, see Amazon EBS Volumes (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumes.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeVolumeAttribute for usage and error information. func (c *EC2) DescribeVolumeAttribute(input *DescribeVolumeAttributeInput) (*DescribeVolumeAttributeOutput, error) { req, out := c.DescribeVolumeAttributeRequest(input) err := req.Send() return out, err } const opDescribeVolumeStatus = "DescribeVolumeStatus" // DescribeVolumeStatusRequest generates a "aws/request.Request" representing the // client's request for the DescribeVolumeStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeVolumeStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeVolumeStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeVolumeStatusRequest method. // req, resp := client.DescribeVolumeStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeVolumeStatusRequest(input *DescribeVolumeStatusInput) (req *request.Request, output *DescribeVolumeStatusOutput) { op := &request.Operation{ Name: opDescribeVolumeStatus, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &DescribeVolumeStatusInput{} } req = c.newRequest(op, input, output) output = &DescribeVolumeStatusOutput{} req.Data = output return } // DescribeVolumeStatus API operation for Amazon Elastic Compute Cloud. // // Describes the status of the specified volumes. Volume status provides the // result of the checks performed on your volumes to determine events that can // impair the performance of your volumes. The performance of a volume can be // affected if an issue occurs on the volume's underlying host. If the volume's // underlying host experiences a power outage or system issue, after the system // is restored, there could be data inconsistencies on the volume. Volume events // notify you if this occurs. Volume actions notify you if any action needs // to be taken in response to the event. // // The DescribeVolumeStatus operation provides the following information about // the specified volumes: // // Status: Reflects the current status of the volume. The possible values are // ok, impaired , warning, or insufficient-data. If all checks pass, the overall // status of the volume is ok. If the check fails, the overall status is impaired. // If the status is insufficient-data, then the checks may still be taking place // on your volume at the time. We recommend that you retry the request. For // more information on volume status, see Monitoring the Status of Your Volumes // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitoring-volume-status.html). // // Events: Reflect the cause of a volume status and may require you to take // action. For example, if your volume returns an impaired status, then the // volume event might be potential-data-inconsistency. This means that your // volume has been affected by an issue with the underlying host, has all I/O // operations disabled, and may have inconsistent data. // // Actions: Reflect the actions you may have to take in response to an event. // For example, if the status of the volume is impaired and the volume event // shows potential-data-inconsistency, then the action shows enable-volume-io. // This means that you may want to enable the I/O operations for the volume // by calling the EnableVolumeIO action and then check the volume for data consistency. // // Volume status is based on the volume status checks, and does not reflect // the volume state. Therefore, volume status does not indicate volumes in the // error state (for example, when a volume is incapable of accepting I/O.) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeVolumeStatus for usage and error information. func (c *EC2) DescribeVolumeStatus(input *DescribeVolumeStatusInput) (*DescribeVolumeStatusOutput, error) { req, out := c.DescribeVolumeStatusRequest(input) err := req.Send() return out, err } // DescribeVolumeStatusPages iterates over the pages of a DescribeVolumeStatus operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeVolumeStatus method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeVolumeStatus operation. // pageNum := 0 // err := client.DescribeVolumeStatusPages(params, // func(page *DescribeVolumeStatusOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *EC2) DescribeVolumeStatusPages(input *DescribeVolumeStatusInput, fn func(p *DescribeVolumeStatusOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeVolumeStatusRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeVolumeStatusOutput), lastPage) }) } const opDescribeVolumes = "DescribeVolumes" // DescribeVolumesRequest generates a "aws/request.Request" representing the // client's request for the DescribeVolumes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeVolumes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeVolumes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeVolumesRequest method. // req, resp := client.DescribeVolumesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeVolumesRequest(input *DescribeVolumesInput) (req *request.Request, output *DescribeVolumesOutput) { op := &request.Operation{ Name: opDescribeVolumes, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &DescribeVolumesInput{} } req = c.newRequest(op, input, output) output = &DescribeVolumesOutput{} req.Data = output return } // DescribeVolumes API operation for Amazon Elastic Compute Cloud. // // Describes the specified EBS volumes. // // If you are describing a long list of volumes, you can paginate the output // to make the list more manageable. The MaxResults parameter sets the maximum // number of results returned in a single page. If the list of results exceeds // your MaxResults value, then that number of results is returned along with // a NextToken value that can be passed to a subsequent DescribeVolumes request // to retrieve the remaining results. // // For more information about EBS volumes, see Amazon EBS Volumes (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumes.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeVolumes for usage and error information. func (c *EC2) DescribeVolumes(input *DescribeVolumesInput) (*DescribeVolumesOutput, error) { req, out := c.DescribeVolumesRequest(input) err := req.Send() return out, err } // DescribeVolumesPages iterates over the pages of a DescribeVolumes operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeVolumes method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeVolumes operation. // pageNum := 0 // err := client.DescribeVolumesPages(params, // func(page *DescribeVolumesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *EC2) DescribeVolumesPages(input *DescribeVolumesInput, fn func(p *DescribeVolumesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeVolumesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeVolumesOutput), lastPage) }) } const opDescribeVpcAttribute = "DescribeVpcAttribute" // DescribeVpcAttributeRequest generates a "aws/request.Request" representing the // client's request for the DescribeVpcAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeVpcAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeVpcAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeVpcAttributeRequest method. // req, resp := client.DescribeVpcAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeVpcAttributeRequest(input *DescribeVpcAttributeInput) (req *request.Request, output *DescribeVpcAttributeOutput) { op := &request.Operation{ Name: opDescribeVpcAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeVpcAttributeInput{} } req = c.newRequest(op, input, output) output = &DescribeVpcAttributeOutput{} req.Data = output return } // DescribeVpcAttribute API operation for Amazon Elastic Compute Cloud. // // Describes the specified attribute of the specified VPC. You can specify only // one attribute at a time. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeVpcAttribute for usage and error information. func (c *EC2) DescribeVpcAttribute(input *DescribeVpcAttributeInput) (*DescribeVpcAttributeOutput, error) { req, out := c.DescribeVpcAttributeRequest(input) err := req.Send() return out, err } const opDescribeVpcClassicLink = "DescribeVpcClassicLink" // DescribeVpcClassicLinkRequest generates a "aws/request.Request" representing the // client's request for the DescribeVpcClassicLink operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeVpcClassicLink for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeVpcClassicLink method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeVpcClassicLinkRequest method. // req, resp := client.DescribeVpcClassicLinkRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeVpcClassicLinkRequest(input *DescribeVpcClassicLinkInput) (req *request.Request, output *DescribeVpcClassicLinkOutput) { op := &request.Operation{ Name: opDescribeVpcClassicLink, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeVpcClassicLinkInput{} } req = c.newRequest(op, input, output) output = &DescribeVpcClassicLinkOutput{} req.Data = output return } // DescribeVpcClassicLink API operation for Amazon Elastic Compute Cloud. // // Describes the ClassicLink status of one or more VPCs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeVpcClassicLink for usage and error information. func (c *EC2) DescribeVpcClassicLink(input *DescribeVpcClassicLinkInput) (*DescribeVpcClassicLinkOutput, error) { req, out := c.DescribeVpcClassicLinkRequest(input) err := req.Send() return out, err } const opDescribeVpcClassicLinkDnsSupport = "DescribeVpcClassicLinkDnsSupport" // DescribeVpcClassicLinkDnsSupportRequest generates a "aws/request.Request" representing the // client's request for the DescribeVpcClassicLinkDnsSupport operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeVpcClassicLinkDnsSupport for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeVpcClassicLinkDnsSupport method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeVpcClassicLinkDnsSupportRequest method. // req, resp := client.DescribeVpcClassicLinkDnsSupportRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeVpcClassicLinkDnsSupportRequest(input *DescribeVpcClassicLinkDnsSupportInput) (req *request.Request, output *DescribeVpcClassicLinkDnsSupportOutput) { op := &request.Operation{ Name: opDescribeVpcClassicLinkDnsSupport, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeVpcClassicLinkDnsSupportInput{} } req = c.newRequest(op, input, output) output = &DescribeVpcClassicLinkDnsSupportOutput{} req.Data = output return } // DescribeVpcClassicLinkDnsSupport API operation for Amazon Elastic Compute Cloud. // // Describes the ClassicLink DNS support status of one or more VPCs. If enabled, // the DNS hostname of a linked EC2-Classic instance resolves to its private // IP address when addressed from an instance in the VPC to which it's linked. // Similarly, the DNS hostname of an instance in a VPC resolves to its private // IP address when addressed from a linked EC2-Classic instance. For more information // about ClassicLink, see ClassicLink (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeVpcClassicLinkDnsSupport for usage and error information. func (c *EC2) DescribeVpcClassicLinkDnsSupport(input *DescribeVpcClassicLinkDnsSupportInput) (*DescribeVpcClassicLinkDnsSupportOutput, error) { req, out := c.DescribeVpcClassicLinkDnsSupportRequest(input) err := req.Send() return out, err } const opDescribeVpcEndpointServices = "DescribeVpcEndpointServices" // DescribeVpcEndpointServicesRequest generates a "aws/request.Request" representing the // client's request for the DescribeVpcEndpointServices operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeVpcEndpointServices for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeVpcEndpointServices method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeVpcEndpointServicesRequest method. // req, resp := client.DescribeVpcEndpointServicesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeVpcEndpointServicesRequest(input *DescribeVpcEndpointServicesInput) (req *request.Request, output *DescribeVpcEndpointServicesOutput) { op := &request.Operation{ Name: opDescribeVpcEndpointServices, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeVpcEndpointServicesInput{} } req = c.newRequest(op, input, output) output = &DescribeVpcEndpointServicesOutput{} req.Data = output return } // DescribeVpcEndpointServices API operation for Amazon Elastic Compute Cloud. // // Describes all supported AWS services that can be specified when creating // a VPC endpoint. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeVpcEndpointServices for usage and error information. func (c *EC2) DescribeVpcEndpointServices(input *DescribeVpcEndpointServicesInput) (*DescribeVpcEndpointServicesOutput, error) { req, out := c.DescribeVpcEndpointServicesRequest(input) err := req.Send() return out, err } const opDescribeVpcEndpoints = "DescribeVpcEndpoints" // DescribeVpcEndpointsRequest generates a "aws/request.Request" representing the // client's request for the DescribeVpcEndpoints operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeVpcEndpoints for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeVpcEndpoints method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeVpcEndpointsRequest method. // req, resp := client.DescribeVpcEndpointsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeVpcEndpointsRequest(input *DescribeVpcEndpointsInput) (req *request.Request, output *DescribeVpcEndpointsOutput) { op := &request.Operation{ Name: opDescribeVpcEndpoints, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeVpcEndpointsInput{} } req = c.newRequest(op, input, output) output = &DescribeVpcEndpointsOutput{} req.Data = output return } // DescribeVpcEndpoints API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your VPC endpoints. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeVpcEndpoints for usage and error information. func (c *EC2) DescribeVpcEndpoints(input *DescribeVpcEndpointsInput) (*DescribeVpcEndpointsOutput, error) { req, out := c.DescribeVpcEndpointsRequest(input) err := req.Send() return out, err } const opDescribeVpcPeeringConnections = "DescribeVpcPeeringConnections" // DescribeVpcPeeringConnectionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeVpcPeeringConnections operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeVpcPeeringConnections for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeVpcPeeringConnections method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeVpcPeeringConnectionsRequest method. // req, resp := client.DescribeVpcPeeringConnectionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeVpcPeeringConnectionsRequest(input *DescribeVpcPeeringConnectionsInput) (req *request.Request, output *DescribeVpcPeeringConnectionsOutput) { op := &request.Operation{ Name: opDescribeVpcPeeringConnections, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeVpcPeeringConnectionsInput{} } req = c.newRequest(op, input, output) output = &DescribeVpcPeeringConnectionsOutput{} req.Data = output return } // DescribeVpcPeeringConnections API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your VPC peering connections. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeVpcPeeringConnections for usage and error information. func (c *EC2) DescribeVpcPeeringConnections(input *DescribeVpcPeeringConnectionsInput) (*DescribeVpcPeeringConnectionsOutput, error) { req, out := c.DescribeVpcPeeringConnectionsRequest(input) err := req.Send() return out, err } const opDescribeVpcs = "DescribeVpcs" // DescribeVpcsRequest generates a "aws/request.Request" representing the // client's request for the DescribeVpcs operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeVpcs for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeVpcs method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeVpcsRequest method. // req, resp := client.DescribeVpcsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeVpcsRequest(input *DescribeVpcsInput) (req *request.Request, output *DescribeVpcsOutput) { op := &request.Operation{ Name: opDescribeVpcs, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeVpcsInput{} } req = c.newRequest(op, input, output) output = &DescribeVpcsOutput{} req.Data = output return } // DescribeVpcs API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your VPCs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeVpcs for usage and error information. func (c *EC2) DescribeVpcs(input *DescribeVpcsInput) (*DescribeVpcsOutput, error) { req, out := c.DescribeVpcsRequest(input) err := req.Send() return out, err } const opDescribeVpnConnections = "DescribeVpnConnections" // DescribeVpnConnectionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeVpnConnections operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeVpnConnections for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeVpnConnections method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeVpnConnectionsRequest method. // req, resp := client.DescribeVpnConnectionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeVpnConnectionsRequest(input *DescribeVpnConnectionsInput) (req *request.Request, output *DescribeVpnConnectionsOutput) { op := &request.Operation{ Name: opDescribeVpnConnections, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeVpnConnectionsInput{} } req = c.newRequest(op, input, output) output = &DescribeVpnConnectionsOutput{} req.Data = output return } // DescribeVpnConnections API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your VPN connections. // // For more information about VPN connections, see Adding a Hardware Virtual // Private Gateway to Your VPC (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_VPN.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeVpnConnections for usage and error information. func (c *EC2) DescribeVpnConnections(input *DescribeVpnConnectionsInput) (*DescribeVpnConnectionsOutput, error) { req, out := c.DescribeVpnConnectionsRequest(input) err := req.Send() return out, err } const opDescribeVpnGateways = "DescribeVpnGateways" // DescribeVpnGatewaysRequest generates a "aws/request.Request" representing the // client's request for the DescribeVpnGateways operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeVpnGateways for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeVpnGateways method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeVpnGatewaysRequest method. // req, resp := client.DescribeVpnGatewaysRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DescribeVpnGatewaysRequest(input *DescribeVpnGatewaysInput) (req *request.Request, output *DescribeVpnGatewaysOutput) { op := &request.Operation{ Name: opDescribeVpnGateways, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeVpnGatewaysInput{} } req = c.newRequest(op, input, output) output = &DescribeVpnGatewaysOutput{} req.Data = output return } // DescribeVpnGateways API operation for Amazon Elastic Compute Cloud. // // Describes one or more of your virtual private gateways. // // For more information about virtual private gateways, see Adding an IPsec // Hardware VPN to Your VPC (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_VPN.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DescribeVpnGateways for usage and error information. func (c *EC2) DescribeVpnGateways(input *DescribeVpnGatewaysInput) (*DescribeVpnGatewaysOutput, error) { req, out := c.DescribeVpnGatewaysRequest(input) err := req.Send() return out, err } const opDetachClassicLinkVpc = "DetachClassicLinkVpc" // DetachClassicLinkVpcRequest generates a "aws/request.Request" representing the // client's request for the DetachClassicLinkVpc operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DetachClassicLinkVpc for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DetachClassicLinkVpc method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DetachClassicLinkVpcRequest method. // req, resp := client.DetachClassicLinkVpcRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DetachClassicLinkVpcRequest(input *DetachClassicLinkVpcInput) (req *request.Request, output *DetachClassicLinkVpcOutput) { op := &request.Operation{ Name: opDetachClassicLinkVpc, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DetachClassicLinkVpcInput{} } req = c.newRequest(op, input, output) output = &DetachClassicLinkVpcOutput{} req.Data = output return } // DetachClassicLinkVpc API operation for Amazon Elastic Compute Cloud. // // Unlinks (detaches) a linked EC2-Classic instance from a VPC. After the instance // has been unlinked, the VPC security groups are no longer associated with // it. An instance is automatically unlinked from a VPC when it's stopped. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DetachClassicLinkVpc for usage and error information. func (c *EC2) DetachClassicLinkVpc(input *DetachClassicLinkVpcInput) (*DetachClassicLinkVpcOutput, error) { req, out := c.DetachClassicLinkVpcRequest(input) err := req.Send() return out, err } const opDetachInternetGateway = "DetachInternetGateway" // DetachInternetGatewayRequest generates a "aws/request.Request" representing the // client's request for the DetachInternetGateway operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DetachInternetGateway for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DetachInternetGateway method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DetachInternetGatewayRequest method. // req, resp := client.DetachInternetGatewayRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DetachInternetGatewayRequest(input *DetachInternetGatewayInput) (req *request.Request, output *DetachInternetGatewayOutput) { op := &request.Operation{ Name: opDetachInternetGateway, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DetachInternetGatewayInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DetachInternetGatewayOutput{} req.Data = output return } // DetachInternetGateway API operation for Amazon Elastic Compute Cloud. // // Detaches an Internet gateway from a VPC, disabling connectivity between the // Internet and the VPC. The VPC must not contain any running instances with // Elastic IP addresses. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DetachInternetGateway for usage and error information. func (c *EC2) DetachInternetGateway(input *DetachInternetGatewayInput) (*DetachInternetGatewayOutput, error) { req, out := c.DetachInternetGatewayRequest(input) err := req.Send() return out, err } const opDetachNetworkInterface = "DetachNetworkInterface" // DetachNetworkInterfaceRequest generates a "aws/request.Request" representing the // client's request for the DetachNetworkInterface operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DetachNetworkInterface for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DetachNetworkInterface method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DetachNetworkInterfaceRequest method. // req, resp := client.DetachNetworkInterfaceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DetachNetworkInterfaceRequest(input *DetachNetworkInterfaceInput) (req *request.Request, output *DetachNetworkInterfaceOutput) { op := &request.Operation{ Name: opDetachNetworkInterface, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DetachNetworkInterfaceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DetachNetworkInterfaceOutput{} req.Data = output return } // DetachNetworkInterface API operation for Amazon Elastic Compute Cloud. // // Detaches a network interface from an instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DetachNetworkInterface for usage and error information. func (c *EC2) DetachNetworkInterface(input *DetachNetworkInterfaceInput) (*DetachNetworkInterfaceOutput, error) { req, out := c.DetachNetworkInterfaceRequest(input) err := req.Send() return out, err } const opDetachVolume = "DetachVolume" // DetachVolumeRequest generates a "aws/request.Request" representing the // client's request for the DetachVolume operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DetachVolume for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DetachVolume method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DetachVolumeRequest method. // req, resp := client.DetachVolumeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DetachVolumeRequest(input *DetachVolumeInput) (req *request.Request, output *VolumeAttachment) { op := &request.Operation{ Name: opDetachVolume, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DetachVolumeInput{} } req = c.newRequest(op, input, output) output = &VolumeAttachment{} req.Data = output return } // DetachVolume API operation for Amazon Elastic Compute Cloud. // // Detaches an EBS volume from an instance. Make sure to unmount any file systems // on the device within your operating system before detaching the volume. Failure // to do so can result in the volume becoming stuck in the busy state while // detaching. If this happens, detachment can be delayed indefinitely until // you unmount the volume, force detachment, reboot the instance, or all three. // If an EBS volume is the root device of an instance, it can't be detached // while the instance is running. To detach the root volume, stop the instance // first. // // When a volume with an AWS Marketplace product code is detached from an instance, // the product code is no longer associated with the instance. // // For more information, see Detaching an Amazon EBS Volume (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-detaching-volume.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DetachVolume for usage and error information. func (c *EC2) DetachVolume(input *DetachVolumeInput) (*VolumeAttachment, error) { req, out := c.DetachVolumeRequest(input) err := req.Send() return out, err } const opDetachVpnGateway = "DetachVpnGateway" // DetachVpnGatewayRequest generates a "aws/request.Request" representing the // client's request for the DetachVpnGateway operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DetachVpnGateway for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DetachVpnGateway method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DetachVpnGatewayRequest method. // req, resp := client.DetachVpnGatewayRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DetachVpnGatewayRequest(input *DetachVpnGatewayInput) (req *request.Request, output *DetachVpnGatewayOutput) { op := &request.Operation{ Name: opDetachVpnGateway, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DetachVpnGatewayInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DetachVpnGatewayOutput{} req.Data = output return } // DetachVpnGateway API operation for Amazon Elastic Compute Cloud. // // Detaches a virtual private gateway from a VPC. You do this if you're planning // to turn off the VPC and not use it anymore. You can confirm a virtual private // gateway has been completely detached from a VPC by describing the virtual // private gateway (any attachments to the virtual private gateway are also // described). // // You must wait for the attachment's state to switch to detached before you // can delete the VPC or attach a different VPC to the virtual private gateway. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DetachVpnGateway for usage and error information. func (c *EC2) DetachVpnGateway(input *DetachVpnGatewayInput) (*DetachVpnGatewayOutput, error) { req, out := c.DetachVpnGatewayRequest(input) err := req.Send() return out, err } const opDisableVgwRoutePropagation = "DisableVgwRoutePropagation" // DisableVgwRoutePropagationRequest generates a "aws/request.Request" representing the // client's request for the DisableVgwRoutePropagation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableVgwRoutePropagation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableVgwRoutePropagation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableVgwRoutePropagationRequest method. // req, resp := client.DisableVgwRoutePropagationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DisableVgwRoutePropagationRequest(input *DisableVgwRoutePropagationInput) (req *request.Request, output *DisableVgwRoutePropagationOutput) { op := &request.Operation{ Name: opDisableVgwRoutePropagation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableVgwRoutePropagationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DisableVgwRoutePropagationOutput{} req.Data = output return } // DisableVgwRoutePropagation API operation for Amazon Elastic Compute Cloud. // // Disables a virtual private gateway (VGW) from propagating routes to a specified // route table of a VPC. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DisableVgwRoutePropagation for usage and error information. func (c *EC2) DisableVgwRoutePropagation(input *DisableVgwRoutePropagationInput) (*DisableVgwRoutePropagationOutput, error) { req, out := c.DisableVgwRoutePropagationRequest(input) err := req.Send() return out, err } const opDisableVpcClassicLink = "DisableVpcClassicLink" // DisableVpcClassicLinkRequest generates a "aws/request.Request" representing the // client's request for the DisableVpcClassicLink operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableVpcClassicLink for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableVpcClassicLink method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableVpcClassicLinkRequest method. // req, resp := client.DisableVpcClassicLinkRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DisableVpcClassicLinkRequest(input *DisableVpcClassicLinkInput) (req *request.Request, output *DisableVpcClassicLinkOutput) { op := &request.Operation{ Name: opDisableVpcClassicLink, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableVpcClassicLinkInput{} } req = c.newRequest(op, input, output) output = &DisableVpcClassicLinkOutput{} req.Data = output return } // DisableVpcClassicLink API operation for Amazon Elastic Compute Cloud. // // Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC // that has EC2-Classic instances linked to it. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DisableVpcClassicLink for usage and error information. func (c *EC2) DisableVpcClassicLink(input *DisableVpcClassicLinkInput) (*DisableVpcClassicLinkOutput, error) { req, out := c.DisableVpcClassicLinkRequest(input) err := req.Send() return out, err } const opDisableVpcClassicLinkDnsSupport = "DisableVpcClassicLinkDnsSupport" // DisableVpcClassicLinkDnsSupportRequest generates a "aws/request.Request" representing the // client's request for the DisableVpcClassicLinkDnsSupport operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableVpcClassicLinkDnsSupport for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableVpcClassicLinkDnsSupport method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableVpcClassicLinkDnsSupportRequest method. // req, resp := client.DisableVpcClassicLinkDnsSupportRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DisableVpcClassicLinkDnsSupportRequest(input *DisableVpcClassicLinkDnsSupportInput) (req *request.Request, output *DisableVpcClassicLinkDnsSupportOutput) { op := &request.Operation{ Name: opDisableVpcClassicLinkDnsSupport, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableVpcClassicLinkDnsSupportInput{} } req = c.newRequest(op, input, output) output = &DisableVpcClassicLinkDnsSupportOutput{} req.Data = output return } // DisableVpcClassicLinkDnsSupport API operation for Amazon Elastic Compute Cloud. // // Disables ClassicLink DNS support for a VPC. If disabled, DNS hostnames resolve // to public IP addresses when addressed between a linked EC2-Classic instance // and instances in the VPC to which it's linked. For more information about // ClassicLink, see ClassicLink (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DisableVpcClassicLinkDnsSupport for usage and error information. func (c *EC2) DisableVpcClassicLinkDnsSupport(input *DisableVpcClassicLinkDnsSupportInput) (*DisableVpcClassicLinkDnsSupportOutput, error) { req, out := c.DisableVpcClassicLinkDnsSupportRequest(input) err := req.Send() return out, err } const opDisassociateAddress = "DisassociateAddress" // DisassociateAddressRequest generates a "aws/request.Request" representing the // client's request for the DisassociateAddress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisassociateAddress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisassociateAddress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisassociateAddressRequest method. // req, resp := client.DisassociateAddressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DisassociateAddressRequest(input *DisassociateAddressInput) (req *request.Request, output *DisassociateAddressOutput) { op := &request.Operation{ Name: opDisassociateAddress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisassociateAddressInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DisassociateAddressOutput{} req.Data = output return } // DisassociateAddress API operation for Amazon Elastic Compute Cloud. // // Disassociates an Elastic IP address from the instance or network interface // it's associated with. // // An Elastic IP address is for use in either the EC2-Classic platform or in // a VPC. For more information, see Elastic IP Addresses (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) // in the Amazon Elastic Compute Cloud User Guide. // // This is an idempotent operation. If you perform the operation more than once, // Amazon EC2 doesn't return an error. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DisassociateAddress for usage and error information. func (c *EC2) DisassociateAddress(input *DisassociateAddressInput) (*DisassociateAddressOutput, error) { req, out := c.DisassociateAddressRequest(input) err := req.Send() return out, err } const opDisassociateRouteTable = "DisassociateRouteTable" // DisassociateRouteTableRequest generates a "aws/request.Request" representing the // client's request for the DisassociateRouteTable operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisassociateRouteTable for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisassociateRouteTable method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisassociateRouteTableRequest method. // req, resp := client.DisassociateRouteTableRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) DisassociateRouteTableRequest(input *DisassociateRouteTableInput) (req *request.Request, output *DisassociateRouteTableOutput) { op := &request.Operation{ Name: opDisassociateRouteTable, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisassociateRouteTableInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DisassociateRouteTableOutput{} req.Data = output return } // DisassociateRouteTable API operation for Amazon Elastic Compute Cloud. // // Disassociates a subnet from a route table. // // After you perform this action, the subnet no longer uses the routes in the // route table. Instead, it uses the routes in the VPC's main route table. For // more information about route tables, see Route Tables (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Route_Tables.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation DisassociateRouteTable for usage and error information. func (c *EC2) DisassociateRouteTable(input *DisassociateRouteTableInput) (*DisassociateRouteTableOutput, error) { req, out := c.DisassociateRouteTableRequest(input) err := req.Send() return out, err } const opEnableVgwRoutePropagation = "EnableVgwRoutePropagation" // EnableVgwRoutePropagationRequest generates a "aws/request.Request" representing the // client's request for the EnableVgwRoutePropagation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableVgwRoutePropagation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableVgwRoutePropagation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableVgwRoutePropagationRequest method. // req, resp := client.EnableVgwRoutePropagationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) EnableVgwRoutePropagationRequest(input *EnableVgwRoutePropagationInput) (req *request.Request, output *EnableVgwRoutePropagationOutput) { op := &request.Operation{ Name: opEnableVgwRoutePropagation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableVgwRoutePropagationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &EnableVgwRoutePropagationOutput{} req.Data = output return } // EnableVgwRoutePropagation API operation for Amazon Elastic Compute Cloud. // // Enables a virtual private gateway (VGW) to propagate routes to the specified // route table of a VPC. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation EnableVgwRoutePropagation for usage and error information. func (c *EC2) EnableVgwRoutePropagation(input *EnableVgwRoutePropagationInput) (*EnableVgwRoutePropagationOutput, error) { req, out := c.EnableVgwRoutePropagationRequest(input) err := req.Send() return out, err } const opEnableVolumeIO = "EnableVolumeIO" // EnableVolumeIORequest generates a "aws/request.Request" representing the // client's request for the EnableVolumeIO operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableVolumeIO for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableVolumeIO method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableVolumeIORequest method. // req, resp := client.EnableVolumeIORequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) EnableVolumeIORequest(input *EnableVolumeIOInput) (req *request.Request, output *EnableVolumeIOOutput) { op := &request.Operation{ Name: opEnableVolumeIO, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableVolumeIOInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &EnableVolumeIOOutput{} req.Data = output return } // EnableVolumeIO API operation for Amazon Elastic Compute Cloud. // // Enables I/O operations for a volume that had I/O operations disabled because // the data on the volume was potentially inconsistent. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation EnableVolumeIO for usage and error information. func (c *EC2) EnableVolumeIO(input *EnableVolumeIOInput) (*EnableVolumeIOOutput, error) { req, out := c.EnableVolumeIORequest(input) err := req.Send() return out, err } const opEnableVpcClassicLink = "EnableVpcClassicLink" // EnableVpcClassicLinkRequest generates a "aws/request.Request" representing the // client's request for the EnableVpcClassicLink operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableVpcClassicLink for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableVpcClassicLink method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableVpcClassicLinkRequest method. // req, resp := client.EnableVpcClassicLinkRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) EnableVpcClassicLinkRequest(input *EnableVpcClassicLinkInput) (req *request.Request, output *EnableVpcClassicLinkOutput) { op := &request.Operation{ Name: opEnableVpcClassicLink, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableVpcClassicLinkInput{} } req = c.newRequest(op, input, output) output = &EnableVpcClassicLinkOutput{} req.Data = output return } // EnableVpcClassicLink API operation for Amazon Elastic Compute Cloud. // // Enables a VPC for ClassicLink. You can then link EC2-Classic instances to // your ClassicLink-enabled VPC to allow communication over private IP addresses. // You cannot enable your VPC for ClassicLink if any of your VPC's route tables // have existing routes for address ranges within the 10.0.0.0/8 IP address // range, excluding local routes for VPCs in the 10.0.0.0/16 and 10.1.0.0/16 // IP address ranges. For more information, see ClassicLink (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation EnableVpcClassicLink for usage and error information. func (c *EC2) EnableVpcClassicLink(input *EnableVpcClassicLinkInput) (*EnableVpcClassicLinkOutput, error) { req, out := c.EnableVpcClassicLinkRequest(input) err := req.Send() return out, err } const opEnableVpcClassicLinkDnsSupport = "EnableVpcClassicLinkDnsSupport" // EnableVpcClassicLinkDnsSupportRequest generates a "aws/request.Request" representing the // client's request for the EnableVpcClassicLinkDnsSupport operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableVpcClassicLinkDnsSupport for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableVpcClassicLinkDnsSupport method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableVpcClassicLinkDnsSupportRequest method. // req, resp := client.EnableVpcClassicLinkDnsSupportRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) EnableVpcClassicLinkDnsSupportRequest(input *EnableVpcClassicLinkDnsSupportInput) (req *request.Request, output *EnableVpcClassicLinkDnsSupportOutput) { op := &request.Operation{ Name: opEnableVpcClassicLinkDnsSupport, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableVpcClassicLinkDnsSupportInput{} } req = c.newRequest(op, input, output) output = &EnableVpcClassicLinkDnsSupportOutput{} req.Data = output return } // EnableVpcClassicLinkDnsSupport API operation for Amazon Elastic Compute Cloud. // // Enables a VPC to support DNS hostname resolution for ClassicLink. If enabled, // the DNS hostname of a linked EC2-Classic instance resolves to its private // IP address when addressed from an instance in the VPC to which it's linked. // Similarly, the DNS hostname of an instance in a VPC resolves to its private // IP address when addressed from a linked EC2-Classic instance. For more information // about ClassicLink, see ClassicLink (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation EnableVpcClassicLinkDnsSupport for usage and error information. func (c *EC2) EnableVpcClassicLinkDnsSupport(input *EnableVpcClassicLinkDnsSupportInput) (*EnableVpcClassicLinkDnsSupportOutput, error) { req, out := c.EnableVpcClassicLinkDnsSupportRequest(input) err := req.Send() return out, err } const opGetConsoleOutput = "GetConsoleOutput" // GetConsoleOutputRequest generates a "aws/request.Request" representing the // client's request for the GetConsoleOutput operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetConsoleOutput for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetConsoleOutput method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetConsoleOutputRequest method. // req, resp := client.GetConsoleOutputRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) GetConsoleOutputRequest(input *GetConsoleOutputInput) (req *request.Request, output *GetConsoleOutputOutput) { op := &request.Operation{ Name: opGetConsoleOutput, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetConsoleOutputInput{} } req = c.newRequest(op, input, output) output = &GetConsoleOutputOutput{} req.Data = output return } // GetConsoleOutput API operation for Amazon Elastic Compute Cloud. // // Gets the console output for the specified instance. // // Instances do not have a physical monitor through which you can view their // console output. They also lack physical controls that allow you to power // up, reboot, or shut them down. To allow these actions, we provide them through // the Amazon EC2 API and command line interface. // // Instance console output is buffered and posted shortly after instance boot, // reboot, and termination. Amazon EC2 preserves the most recent 64 KB output // which is available for at least one hour after the most recent post. // // For Linux instances, the instance console output displays the exact console // output that would normally be displayed on a physical monitor attached to // a computer. This output is buffered because the instance produces it and // then posts it to a store where the instance's owner can retrieve it. // // For Windows instances, the instance console output includes output from the // EC2Config service. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation GetConsoleOutput for usage and error information. func (c *EC2) GetConsoleOutput(input *GetConsoleOutputInput) (*GetConsoleOutputOutput, error) { req, out := c.GetConsoleOutputRequest(input) err := req.Send() return out, err } const opGetConsoleScreenshot = "GetConsoleScreenshot" // GetConsoleScreenshotRequest generates a "aws/request.Request" representing the // client's request for the GetConsoleScreenshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetConsoleScreenshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetConsoleScreenshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetConsoleScreenshotRequest method. // req, resp := client.GetConsoleScreenshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) GetConsoleScreenshotRequest(input *GetConsoleScreenshotInput) (req *request.Request, output *GetConsoleScreenshotOutput) { op := &request.Operation{ Name: opGetConsoleScreenshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetConsoleScreenshotInput{} } req = c.newRequest(op, input, output) output = &GetConsoleScreenshotOutput{} req.Data = output return } // GetConsoleScreenshot API operation for Amazon Elastic Compute Cloud. // // Retrieve a JPG-format screenshot of a running instance to help with troubleshooting. // // The returned content is Base64-encoded. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation GetConsoleScreenshot for usage and error information. func (c *EC2) GetConsoleScreenshot(input *GetConsoleScreenshotInput) (*GetConsoleScreenshotOutput, error) { req, out := c.GetConsoleScreenshotRequest(input) err := req.Send() return out, err } const opGetHostReservationPurchasePreview = "GetHostReservationPurchasePreview" // GetHostReservationPurchasePreviewRequest generates a "aws/request.Request" representing the // client's request for the GetHostReservationPurchasePreview operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetHostReservationPurchasePreview for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetHostReservationPurchasePreview method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetHostReservationPurchasePreviewRequest method. // req, resp := client.GetHostReservationPurchasePreviewRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) GetHostReservationPurchasePreviewRequest(input *GetHostReservationPurchasePreviewInput) (req *request.Request, output *GetHostReservationPurchasePreviewOutput) { op := &request.Operation{ Name: opGetHostReservationPurchasePreview, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetHostReservationPurchasePreviewInput{} } req = c.newRequest(op, input, output) output = &GetHostReservationPurchasePreviewOutput{} req.Data = output return } // GetHostReservationPurchasePreview API operation for Amazon Elastic Compute Cloud. // // Preview a reservation purchase with configurations that match those of your // Dedicated Host. You must have active Dedicated Hosts in your account before // you purchase a reservation. // // This is a preview of the PurchaseHostReservation action and does not result // in the offering being purchased. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation GetHostReservationPurchasePreview for usage and error information. func (c *EC2) GetHostReservationPurchasePreview(input *GetHostReservationPurchasePreviewInput) (*GetHostReservationPurchasePreviewOutput, error) { req, out := c.GetHostReservationPurchasePreviewRequest(input) err := req.Send() return out, err } const opGetPasswordData = "GetPasswordData" // GetPasswordDataRequest generates a "aws/request.Request" representing the // client's request for the GetPasswordData operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetPasswordData for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetPasswordData method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetPasswordDataRequest method. // req, resp := client.GetPasswordDataRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) GetPasswordDataRequest(input *GetPasswordDataInput) (req *request.Request, output *GetPasswordDataOutput) { op := &request.Operation{ Name: opGetPasswordData, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetPasswordDataInput{} } req = c.newRequest(op, input, output) output = &GetPasswordDataOutput{} req.Data = output return } // GetPasswordData API operation for Amazon Elastic Compute Cloud. // // Retrieves the encrypted administrator password for an instance running Windows. // // The Windows password is generated at boot if the EC2Config service plugin, // Ec2SetPassword, is enabled. This usually only happens the first time an AMI // is launched, and then Ec2SetPassword is automatically disabled. The password // is not generated for rebundled AMIs unless Ec2SetPassword is enabled before // bundling. // // The password is encrypted using the key pair that you specified when you // launched the instance. You must provide the corresponding key pair file. // // Password generation and encryption takes a few moments. We recommend that // you wait up to 15 minutes after launching an instance before trying to retrieve // the generated password. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation GetPasswordData for usage and error information. func (c *EC2) GetPasswordData(input *GetPasswordDataInput) (*GetPasswordDataOutput, error) { req, out := c.GetPasswordDataRequest(input) err := req.Send() return out, err } const opGetReservedInstancesExchangeQuote = "GetReservedInstancesExchangeQuote" // GetReservedInstancesExchangeQuoteRequest generates a "aws/request.Request" representing the // client's request for the GetReservedInstancesExchangeQuote operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetReservedInstancesExchangeQuote for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetReservedInstancesExchangeQuote method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetReservedInstancesExchangeQuoteRequest method. // req, resp := client.GetReservedInstancesExchangeQuoteRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) GetReservedInstancesExchangeQuoteRequest(input *GetReservedInstancesExchangeQuoteInput) (req *request.Request, output *GetReservedInstancesExchangeQuoteOutput) { op := &request.Operation{ Name: opGetReservedInstancesExchangeQuote, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetReservedInstancesExchangeQuoteInput{} } req = c.newRequest(op, input, output) output = &GetReservedInstancesExchangeQuoteOutput{} req.Data = output return } // GetReservedInstancesExchangeQuote API operation for Amazon Elastic Compute Cloud. // // Returns details about the values and term of your specified Convertible Reserved // Instances. When an offering ID is specified it returns information about // whether the exchange is valid and can be performed. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation GetReservedInstancesExchangeQuote for usage and error information. func (c *EC2) GetReservedInstancesExchangeQuote(input *GetReservedInstancesExchangeQuoteInput) (*GetReservedInstancesExchangeQuoteOutput, error) { req, out := c.GetReservedInstancesExchangeQuoteRequest(input) err := req.Send() return out, err } const opImportImage = "ImportImage" // ImportImageRequest generates a "aws/request.Request" representing the // client's request for the ImportImage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ImportImage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ImportImage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ImportImageRequest method. // req, resp := client.ImportImageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ImportImageRequest(input *ImportImageInput) (req *request.Request, output *ImportImageOutput) { op := &request.Operation{ Name: opImportImage, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ImportImageInput{} } req = c.newRequest(op, input, output) output = &ImportImageOutput{} req.Data = output return } // ImportImage API operation for Amazon Elastic Compute Cloud. // // Import single or multi-volume disk images or EBS snapshots into an Amazon // Machine Image (AMI). For more information, see Importing a VM as an Image // Using VM Import/Export (http://docs.aws.amazon.com/vm-import/latest/userguide/vmimport-image-import.html) // in the VM Import/Export User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ImportImage for usage and error information. func (c *EC2) ImportImage(input *ImportImageInput) (*ImportImageOutput, error) { req, out := c.ImportImageRequest(input) err := req.Send() return out, err } const opImportInstance = "ImportInstance" // ImportInstanceRequest generates a "aws/request.Request" representing the // client's request for the ImportInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ImportInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ImportInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ImportInstanceRequest method. // req, resp := client.ImportInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ImportInstanceRequest(input *ImportInstanceInput) (req *request.Request, output *ImportInstanceOutput) { op := &request.Operation{ Name: opImportInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ImportInstanceInput{} } req = c.newRequest(op, input, output) output = &ImportInstanceOutput{} req.Data = output return } // ImportInstance API operation for Amazon Elastic Compute Cloud. // // Creates an import instance task using metadata from the specified disk image. // ImportInstance only supports single-volume VMs. To import multi-volume VMs, // use ImportImage. For more information, see Importing a Virtual Machine Using // the Amazon EC2 CLI (http://docs.aws.amazon.com/AWSEC2/latest/CommandLineReference/ec2-cli-vmimport-export.html). // // For information about the import manifest referenced by this API action, // see VM Import Manifest (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/manifest.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ImportInstance for usage and error information. func (c *EC2) ImportInstance(input *ImportInstanceInput) (*ImportInstanceOutput, error) { req, out := c.ImportInstanceRequest(input) err := req.Send() return out, err } const opImportKeyPair = "ImportKeyPair" // ImportKeyPairRequest generates a "aws/request.Request" representing the // client's request for the ImportKeyPair operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ImportKeyPair for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ImportKeyPair method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ImportKeyPairRequest method. // req, resp := client.ImportKeyPairRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ImportKeyPairRequest(input *ImportKeyPairInput) (req *request.Request, output *ImportKeyPairOutput) { op := &request.Operation{ Name: opImportKeyPair, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ImportKeyPairInput{} } req = c.newRequest(op, input, output) output = &ImportKeyPairOutput{} req.Data = output return } // ImportKeyPair API operation for Amazon Elastic Compute Cloud. // // Imports the public key from an RSA key pair that you created with a third-party // tool. Compare this with CreateKeyPair, in which AWS creates the key pair // and gives the keys to you (AWS keeps a copy of the public key). With ImportKeyPair, // you create the key pair and give AWS just the public key. The private key // is never transferred between you and AWS. // // For more information about key pairs, see Key Pairs (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ImportKeyPair for usage and error information. func (c *EC2) ImportKeyPair(input *ImportKeyPairInput) (*ImportKeyPairOutput, error) { req, out := c.ImportKeyPairRequest(input) err := req.Send() return out, err } const opImportSnapshot = "ImportSnapshot" // ImportSnapshotRequest generates a "aws/request.Request" representing the // client's request for the ImportSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ImportSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ImportSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ImportSnapshotRequest method. // req, resp := client.ImportSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ImportSnapshotRequest(input *ImportSnapshotInput) (req *request.Request, output *ImportSnapshotOutput) { op := &request.Operation{ Name: opImportSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ImportSnapshotInput{} } req = c.newRequest(op, input, output) output = &ImportSnapshotOutput{} req.Data = output return } // ImportSnapshot API operation for Amazon Elastic Compute Cloud. // // Imports a disk into an EBS snapshot. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ImportSnapshot for usage and error information. func (c *EC2) ImportSnapshot(input *ImportSnapshotInput) (*ImportSnapshotOutput, error) { req, out := c.ImportSnapshotRequest(input) err := req.Send() return out, err } const opImportVolume = "ImportVolume" // ImportVolumeRequest generates a "aws/request.Request" representing the // client's request for the ImportVolume operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ImportVolume for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ImportVolume method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ImportVolumeRequest method. // req, resp := client.ImportVolumeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ImportVolumeRequest(input *ImportVolumeInput) (req *request.Request, output *ImportVolumeOutput) { op := &request.Operation{ Name: opImportVolume, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ImportVolumeInput{} } req = c.newRequest(op, input, output) output = &ImportVolumeOutput{} req.Data = output return } // ImportVolume API operation for Amazon Elastic Compute Cloud. // // Creates an import volume task using metadata from the specified disk image.For // more information, see Importing Disks to Amazon EBS (http://docs.aws.amazon.com/AWSEC2/latest/CommandLineReference/importing-your-volumes-into-amazon-ebs.html). // // For information about the import manifest referenced by this API action, // see VM Import Manifest (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/manifest.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ImportVolume for usage and error information. func (c *EC2) ImportVolume(input *ImportVolumeInput) (*ImportVolumeOutput, error) { req, out := c.ImportVolumeRequest(input) err := req.Send() return out, err } const opModifyHosts = "ModifyHosts" // ModifyHostsRequest generates a "aws/request.Request" representing the // client's request for the ModifyHosts operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyHosts for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyHosts method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyHostsRequest method. // req, resp := client.ModifyHostsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ModifyHostsRequest(input *ModifyHostsInput) (req *request.Request, output *ModifyHostsOutput) { op := &request.Operation{ Name: opModifyHosts, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyHostsInput{} } req = c.newRequest(op, input, output) output = &ModifyHostsOutput{} req.Data = output return } // ModifyHosts API operation for Amazon Elastic Compute Cloud. // // Modify the auto-placement setting of a Dedicated Host. When auto-placement // is enabled, AWS will place instances that you launch with a tenancy of host, // but without targeting a specific host ID, onto any available Dedicated Host // in your account which has auto-placement enabled. When auto-placement is // disabled, you need to provide a host ID if you want the instance to launch // onto a specific host. If no host ID is provided, the instance will be launched // onto a suitable host which has auto-placement enabled. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ModifyHosts for usage and error information. func (c *EC2) ModifyHosts(input *ModifyHostsInput) (*ModifyHostsOutput, error) { req, out := c.ModifyHostsRequest(input) err := req.Send() return out, err } const opModifyIdFormat = "ModifyIdFormat" // ModifyIdFormatRequest generates a "aws/request.Request" representing the // client's request for the ModifyIdFormat operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyIdFormat for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyIdFormat method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyIdFormatRequest method. // req, resp := client.ModifyIdFormatRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ModifyIdFormatRequest(input *ModifyIdFormatInput) (req *request.Request, output *ModifyIdFormatOutput) { op := &request.Operation{ Name: opModifyIdFormat, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyIdFormatInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ModifyIdFormatOutput{} req.Data = output return } // ModifyIdFormat API operation for Amazon Elastic Compute Cloud. // // Modifies the ID format for the specified resource on a per-region basis. // You can specify that resources should receive longer IDs (17-character IDs) // when they are created. The following resource types support longer IDs: instance // | reservation | snapshot | volume. // // This setting applies to the IAM user who makes the request; it does not apply // to the entire AWS account. By default, an IAM user defaults to the same settings // as the root user. If you're using this action as the root user, then these // settings apply to the entire account, unless an IAM user explicitly overrides // these settings for themselves. For more information, see Resource IDs (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/resource-ids.html) // in the Amazon Elastic Compute Cloud User Guide. // // Resources created with longer IDs are visible to all IAM roles and users, // regardless of these settings and provided that they have permission to use // the relevant Describe command for the resource type. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ModifyIdFormat for usage and error information. func (c *EC2) ModifyIdFormat(input *ModifyIdFormatInput) (*ModifyIdFormatOutput, error) { req, out := c.ModifyIdFormatRequest(input) err := req.Send() return out, err } const opModifyIdentityIdFormat = "ModifyIdentityIdFormat" // ModifyIdentityIdFormatRequest generates a "aws/request.Request" representing the // client's request for the ModifyIdentityIdFormat operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyIdentityIdFormat for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyIdentityIdFormat method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyIdentityIdFormatRequest method. // req, resp := client.ModifyIdentityIdFormatRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ModifyIdentityIdFormatRequest(input *ModifyIdentityIdFormatInput) (req *request.Request, output *ModifyIdentityIdFormatOutput) { op := &request.Operation{ Name: opModifyIdentityIdFormat, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyIdentityIdFormatInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ModifyIdentityIdFormatOutput{} req.Data = output return } // ModifyIdentityIdFormat API operation for Amazon Elastic Compute Cloud. // // Modifies the ID format of a resource for a specified IAM user, IAM role, // or the root user for an account; or all IAM users, IAM roles, and the root // user for an account. You can specify that resources should receive longer // IDs (17-character IDs) when they are created. // // The following resource types support longer IDs: instance | reservation | // snapshot | volume. For more information, see Resource IDs (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/resource-ids.html) // in the Amazon Elastic Compute Cloud User Guide. // // This setting applies to the principal specified in the request; it does not // apply to the principal that makes the request. // // Resources created with longer IDs are visible to all IAM roles and users, // regardless of these settings and provided that they have permission to use // the relevant Describe command for the resource type. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ModifyIdentityIdFormat for usage and error information. func (c *EC2) ModifyIdentityIdFormat(input *ModifyIdentityIdFormatInput) (*ModifyIdentityIdFormatOutput, error) { req, out := c.ModifyIdentityIdFormatRequest(input) err := req.Send() return out, err } const opModifyImageAttribute = "ModifyImageAttribute" // ModifyImageAttributeRequest generates a "aws/request.Request" representing the // client's request for the ModifyImageAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyImageAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyImageAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyImageAttributeRequest method. // req, resp := client.ModifyImageAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ModifyImageAttributeRequest(input *ModifyImageAttributeInput) (req *request.Request, output *ModifyImageAttributeOutput) { op := &request.Operation{ Name: opModifyImageAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyImageAttributeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ModifyImageAttributeOutput{} req.Data = output return } // ModifyImageAttribute API operation for Amazon Elastic Compute Cloud. // // Modifies the specified attribute of the specified AMI. You can specify only // one attribute at a time. // // AWS Marketplace product codes cannot be modified. Images with an AWS Marketplace // product code cannot be made public. // // The SriovNetSupport enhanced networking attribute cannot be changed using // this command. Instead, enable SriovNetSupport on an instance and create an // AMI from the instance. This will result in an image with SriovNetSupport // enabled. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ModifyImageAttribute for usage and error information. func (c *EC2) ModifyImageAttribute(input *ModifyImageAttributeInput) (*ModifyImageAttributeOutput, error) { req, out := c.ModifyImageAttributeRequest(input) err := req.Send() return out, err } const opModifyInstanceAttribute = "ModifyInstanceAttribute" // ModifyInstanceAttributeRequest generates a "aws/request.Request" representing the // client's request for the ModifyInstanceAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyInstanceAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyInstanceAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyInstanceAttributeRequest method. // req, resp := client.ModifyInstanceAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ModifyInstanceAttributeRequest(input *ModifyInstanceAttributeInput) (req *request.Request, output *ModifyInstanceAttributeOutput) { op := &request.Operation{ Name: opModifyInstanceAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyInstanceAttributeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ModifyInstanceAttributeOutput{} req.Data = output return } // ModifyInstanceAttribute API operation for Amazon Elastic Compute Cloud. // // Modifies the specified attribute of the specified instance. You can specify // only one attribute at a time. // // To modify some attributes, the instance must be stopped. For more information, // see Modifying Attributes of a Stopped Instance (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_ChangingAttributesWhileInstanceStopped.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ModifyInstanceAttribute for usage and error information. func (c *EC2) ModifyInstanceAttribute(input *ModifyInstanceAttributeInput) (*ModifyInstanceAttributeOutput, error) { req, out := c.ModifyInstanceAttributeRequest(input) err := req.Send() return out, err } const opModifyInstancePlacement = "ModifyInstancePlacement" // ModifyInstancePlacementRequest generates a "aws/request.Request" representing the // client's request for the ModifyInstancePlacement operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyInstancePlacement for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyInstancePlacement method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyInstancePlacementRequest method. // req, resp := client.ModifyInstancePlacementRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ModifyInstancePlacementRequest(input *ModifyInstancePlacementInput) (req *request.Request, output *ModifyInstancePlacementOutput) { op := &request.Operation{ Name: opModifyInstancePlacement, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyInstancePlacementInput{} } req = c.newRequest(op, input, output) output = &ModifyInstancePlacementOutput{} req.Data = output return } // ModifyInstancePlacement API operation for Amazon Elastic Compute Cloud. // // Set the instance affinity value for a specific stopped instance and modify // the instance tenancy setting. // // Instance affinity is disabled by default. When instance affinity is host // and it is not associated with a specific Dedicated Host, the next time it // is launched it will automatically be associated with the host it lands on. // This relationship will persist if the instance is stopped/started, or rebooted. // // You can modify the host ID associated with a stopped instance. If a stopped // instance has a new host ID association, the instance will target that host // when restarted. // // You can modify the tenancy of a stopped instance with a tenancy of host or // dedicated. // // Affinity, hostID, and tenancy are not required parameters, but at least one // of them must be specified in the request. Affinity and tenancy can be modified // in the same request, but tenancy can only be modified on instances that are // stopped. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ModifyInstancePlacement for usage and error information. func (c *EC2) ModifyInstancePlacement(input *ModifyInstancePlacementInput) (*ModifyInstancePlacementOutput, error) { req, out := c.ModifyInstancePlacementRequest(input) err := req.Send() return out, err } const opModifyNetworkInterfaceAttribute = "ModifyNetworkInterfaceAttribute" // ModifyNetworkInterfaceAttributeRequest generates a "aws/request.Request" representing the // client's request for the ModifyNetworkInterfaceAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyNetworkInterfaceAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyNetworkInterfaceAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyNetworkInterfaceAttributeRequest method. // req, resp := client.ModifyNetworkInterfaceAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ModifyNetworkInterfaceAttributeRequest(input *ModifyNetworkInterfaceAttributeInput) (req *request.Request, output *ModifyNetworkInterfaceAttributeOutput) { op := &request.Operation{ Name: opModifyNetworkInterfaceAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyNetworkInterfaceAttributeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ModifyNetworkInterfaceAttributeOutput{} req.Data = output return } // ModifyNetworkInterfaceAttribute API operation for Amazon Elastic Compute Cloud. // // Modifies the specified network interface attribute. You can specify only // one attribute at a time. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ModifyNetworkInterfaceAttribute for usage and error information. func (c *EC2) ModifyNetworkInterfaceAttribute(input *ModifyNetworkInterfaceAttributeInput) (*ModifyNetworkInterfaceAttributeOutput, error) { req, out := c.ModifyNetworkInterfaceAttributeRequest(input) err := req.Send() return out, err } const opModifyReservedInstances = "ModifyReservedInstances" // ModifyReservedInstancesRequest generates a "aws/request.Request" representing the // client's request for the ModifyReservedInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyReservedInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyReservedInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyReservedInstancesRequest method. // req, resp := client.ModifyReservedInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ModifyReservedInstancesRequest(input *ModifyReservedInstancesInput) (req *request.Request, output *ModifyReservedInstancesOutput) { op := &request.Operation{ Name: opModifyReservedInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyReservedInstancesInput{} } req = c.newRequest(op, input, output) output = &ModifyReservedInstancesOutput{} req.Data = output return } // ModifyReservedInstances API operation for Amazon Elastic Compute Cloud. // // Modifies the Availability Zone, instance count, instance type, or network // platform (EC2-Classic or EC2-VPC) of your Standard Reserved Instances. The // Reserved Instances to be modified must be identical, except for Availability // Zone, network platform, and instance type. // // For more information, see Modifying Reserved Instances (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-modifying.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ModifyReservedInstances for usage and error information. func (c *EC2) ModifyReservedInstances(input *ModifyReservedInstancesInput) (*ModifyReservedInstancesOutput, error) { req, out := c.ModifyReservedInstancesRequest(input) err := req.Send() return out, err } const opModifySnapshotAttribute = "ModifySnapshotAttribute" // ModifySnapshotAttributeRequest generates a "aws/request.Request" representing the // client's request for the ModifySnapshotAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifySnapshotAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifySnapshotAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifySnapshotAttributeRequest method. // req, resp := client.ModifySnapshotAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ModifySnapshotAttributeRequest(input *ModifySnapshotAttributeInput) (req *request.Request, output *ModifySnapshotAttributeOutput) { op := &request.Operation{ Name: opModifySnapshotAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifySnapshotAttributeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ModifySnapshotAttributeOutput{} req.Data = output return } // ModifySnapshotAttribute API operation for Amazon Elastic Compute Cloud. // // Adds or removes permission settings for the specified snapshot. You may add // or remove specified AWS account IDs from a snapshot's list of create volume // permissions, but you cannot do both in a single API call. If you need to // both add and remove account IDs for a snapshot, you must use multiple API // calls. // // Encrypted snapshots and snapshots with AWS Marketplace product codes cannot // be made public. Snapshots encrypted with your default CMK cannot be shared // with other accounts. // // For more information on modifying snapshot permissions, see Sharing Snapshots // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-modifying-snapshot-permissions.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ModifySnapshotAttribute for usage and error information. func (c *EC2) ModifySnapshotAttribute(input *ModifySnapshotAttributeInput) (*ModifySnapshotAttributeOutput, error) { req, out := c.ModifySnapshotAttributeRequest(input) err := req.Send() return out, err } const opModifySpotFleetRequest = "ModifySpotFleetRequest" // ModifySpotFleetRequestRequest generates a "aws/request.Request" representing the // client's request for the ModifySpotFleetRequest operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifySpotFleetRequest for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifySpotFleetRequest method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifySpotFleetRequestRequest method. // req, resp := client.ModifySpotFleetRequestRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ModifySpotFleetRequestRequest(input *ModifySpotFleetRequestInput) (req *request.Request, output *ModifySpotFleetRequestOutput) { op := &request.Operation{ Name: opModifySpotFleetRequest, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifySpotFleetRequestInput{} } req = c.newRequest(op, input, output) output = &ModifySpotFleetRequestOutput{} req.Data = output return } // ModifySpotFleetRequest API operation for Amazon Elastic Compute Cloud. // // Modifies the specified Spot fleet request. // // While the Spot fleet request is being modified, it is in the modifying state. // // To scale up your Spot fleet, increase its target capacity. The Spot fleet // launches the additional Spot instances according to the allocation strategy // for the Spot fleet request. If the allocation strategy is lowestPrice, the // Spot fleet launches instances using the Spot pool with the lowest price. // If the allocation strategy is diversified, the Spot fleet distributes the // instances across the Spot pools. // // To scale down your Spot fleet, decrease its target capacity. First, the Spot // fleet cancels any open bids that exceed the new target capacity. You can // request that the Spot fleet terminate Spot instances until the size of the // fleet no longer exceeds the new target capacity. If the allocation strategy // is lowestPrice, the Spot fleet terminates the instances with the highest // price per unit. If the allocation strategy is diversified, the Spot fleet // terminates instances across the Spot pools. Alternatively, you can request // that the Spot fleet keep the fleet at its current size, but not replace any // Spot instances that are interrupted or that you terminate manually. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ModifySpotFleetRequest for usage and error information. func (c *EC2) ModifySpotFleetRequest(input *ModifySpotFleetRequestInput) (*ModifySpotFleetRequestOutput, error) { req, out := c.ModifySpotFleetRequestRequest(input) err := req.Send() return out, err } const opModifySubnetAttribute = "ModifySubnetAttribute" // ModifySubnetAttributeRequest generates a "aws/request.Request" representing the // client's request for the ModifySubnetAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifySubnetAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifySubnetAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifySubnetAttributeRequest method. // req, resp := client.ModifySubnetAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ModifySubnetAttributeRequest(input *ModifySubnetAttributeInput) (req *request.Request, output *ModifySubnetAttributeOutput) { op := &request.Operation{ Name: opModifySubnetAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifySubnetAttributeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ModifySubnetAttributeOutput{} req.Data = output return } // ModifySubnetAttribute API operation for Amazon Elastic Compute Cloud. // // Modifies a subnet attribute. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ModifySubnetAttribute for usage and error information. func (c *EC2) ModifySubnetAttribute(input *ModifySubnetAttributeInput) (*ModifySubnetAttributeOutput, error) { req, out := c.ModifySubnetAttributeRequest(input) err := req.Send() return out, err } const opModifyVolumeAttribute = "ModifyVolumeAttribute" // ModifyVolumeAttributeRequest generates a "aws/request.Request" representing the // client's request for the ModifyVolumeAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyVolumeAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyVolumeAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyVolumeAttributeRequest method. // req, resp := client.ModifyVolumeAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ModifyVolumeAttributeRequest(input *ModifyVolumeAttributeInput) (req *request.Request, output *ModifyVolumeAttributeOutput) { op := &request.Operation{ Name: opModifyVolumeAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyVolumeAttributeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ModifyVolumeAttributeOutput{} req.Data = output return } // ModifyVolumeAttribute API operation for Amazon Elastic Compute Cloud. // // Modifies a volume attribute. // // By default, all I/O operations for the volume are suspended when the data // on the volume is determined to be potentially inconsistent, to prevent undetectable, // latent data corruption. The I/O access to the volume can be resumed by first // enabling I/O access and then checking the data consistency on your volume. // // You can change the default behavior to resume I/O operations. We recommend // that you change this only for boot volumes or for volumes that are stateless // or disposable. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ModifyVolumeAttribute for usage and error information. func (c *EC2) ModifyVolumeAttribute(input *ModifyVolumeAttributeInput) (*ModifyVolumeAttributeOutput, error) { req, out := c.ModifyVolumeAttributeRequest(input) err := req.Send() return out, err } const opModifyVpcAttribute = "ModifyVpcAttribute" // ModifyVpcAttributeRequest generates a "aws/request.Request" representing the // client's request for the ModifyVpcAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyVpcAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyVpcAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyVpcAttributeRequest method. // req, resp := client.ModifyVpcAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ModifyVpcAttributeRequest(input *ModifyVpcAttributeInput) (req *request.Request, output *ModifyVpcAttributeOutput) { op := &request.Operation{ Name: opModifyVpcAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyVpcAttributeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ModifyVpcAttributeOutput{} req.Data = output return } // ModifyVpcAttribute API operation for Amazon Elastic Compute Cloud. // // Modifies the specified attribute of the specified VPC. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ModifyVpcAttribute for usage and error information. func (c *EC2) ModifyVpcAttribute(input *ModifyVpcAttributeInput) (*ModifyVpcAttributeOutput, error) { req, out := c.ModifyVpcAttributeRequest(input) err := req.Send() return out, err } const opModifyVpcEndpoint = "ModifyVpcEndpoint" // ModifyVpcEndpointRequest generates a "aws/request.Request" representing the // client's request for the ModifyVpcEndpoint operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyVpcEndpoint for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyVpcEndpoint method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyVpcEndpointRequest method. // req, resp := client.ModifyVpcEndpointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ModifyVpcEndpointRequest(input *ModifyVpcEndpointInput) (req *request.Request, output *ModifyVpcEndpointOutput) { op := &request.Operation{ Name: opModifyVpcEndpoint, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyVpcEndpointInput{} } req = c.newRequest(op, input, output) output = &ModifyVpcEndpointOutput{} req.Data = output return } // ModifyVpcEndpoint API operation for Amazon Elastic Compute Cloud. // // Modifies attributes of a specified VPC endpoint. You can modify the policy // associated with the endpoint, and you can add and remove route tables associated // with the endpoint. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ModifyVpcEndpoint for usage and error information. func (c *EC2) ModifyVpcEndpoint(input *ModifyVpcEndpointInput) (*ModifyVpcEndpointOutput, error) { req, out := c.ModifyVpcEndpointRequest(input) err := req.Send() return out, err } const opModifyVpcPeeringConnectionOptions = "ModifyVpcPeeringConnectionOptions" // ModifyVpcPeeringConnectionOptionsRequest generates a "aws/request.Request" representing the // client's request for the ModifyVpcPeeringConnectionOptions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyVpcPeeringConnectionOptions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyVpcPeeringConnectionOptions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyVpcPeeringConnectionOptionsRequest method. // req, resp := client.ModifyVpcPeeringConnectionOptionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ModifyVpcPeeringConnectionOptionsRequest(input *ModifyVpcPeeringConnectionOptionsInput) (req *request.Request, output *ModifyVpcPeeringConnectionOptionsOutput) { op := &request.Operation{ Name: opModifyVpcPeeringConnectionOptions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyVpcPeeringConnectionOptionsInput{} } req = c.newRequest(op, input, output) output = &ModifyVpcPeeringConnectionOptionsOutput{} req.Data = output return } // ModifyVpcPeeringConnectionOptions API operation for Amazon Elastic Compute Cloud. // // Modifies the VPC peering connection options on one side of a VPC peering // connection. You can do the following: // // * Enable/disable communication over the peering connection between an // EC2-Classic instance that's linked to your VPC (using ClassicLink) and // instances in the peer VPC. // // * Enable/disable communication over the peering connection between instances // in your VPC and an EC2-Classic instance that's linked to the peer VPC. // // * Enable/disable a local VPC to resolve public DNS hostnames to private // IP addresses when queried from instances in the peer VPC. // // If the peered VPCs are in different accounts, each owner must initiate a // separate request to modify the peering connection options, depending on whether // their VPC was the requester or accepter for the VPC peering connection. If // the peered VPCs are in the same account, you can modify the requester and // accepter options in the same request. To confirm which VPC is the accepter // and requester for a VPC peering connection, use the DescribeVpcPeeringConnections // command. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ModifyVpcPeeringConnectionOptions for usage and error information. func (c *EC2) ModifyVpcPeeringConnectionOptions(input *ModifyVpcPeeringConnectionOptionsInput) (*ModifyVpcPeeringConnectionOptionsOutput, error) { req, out := c.ModifyVpcPeeringConnectionOptionsRequest(input) err := req.Send() return out, err } const opMonitorInstances = "MonitorInstances" // MonitorInstancesRequest generates a "aws/request.Request" representing the // client's request for the MonitorInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See MonitorInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the MonitorInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the MonitorInstancesRequest method. // req, resp := client.MonitorInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) MonitorInstancesRequest(input *MonitorInstancesInput) (req *request.Request, output *MonitorInstancesOutput) { op := &request.Operation{ Name: opMonitorInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &MonitorInstancesInput{} } req = c.newRequest(op, input, output) output = &MonitorInstancesOutput{} req.Data = output return } // MonitorInstances API operation for Amazon Elastic Compute Cloud. // // Enables monitoring for a running instance. For more information about monitoring // instances, see Monitoring Your Instances and Volumes (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-cloudwatch.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation MonitorInstances for usage and error information. func (c *EC2) MonitorInstances(input *MonitorInstancesInput) (*MonitorInstancesOutput, error) { req, out := c.MonitorInstancesRequest(input) err := req.Send() return out, err } const opMoveAddressToVpc = "MoveAddressToVpc" // MoveAddressToVpcRequest generates a "aws/request.Request" representing the // client's request for the MoveAddressToVpc operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See MoveAddressToVpc for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the MoveAddressToVpc method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the MoveAddressToVpcRequest method. // req, resp := client.MoveAddressToVpcRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) MoveAddressToVpcRequest(input *MoveAddressToVpcInput) (req *request.Request, output *MoveAddressToVpcOutput) { op := &request.Operation{ Name: opMoveAddressToVpc, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &MoveAddressToVpcInput{} } req = c.newRequest(op, input, output) output = &MoveAddressToVpcOutput{} req.Data = output return } // MoveAddressToVpc API operation for Amazon Elastic Compute Cloud. // // Moves an Elastic IP address from the EC2-Classic platform to the EC2-VPC // platform. The Elastic IP address must be allocated to your account for more // than 24 hours, and it must not be associated with an instance. After the // Elastic IP address is moved, it is no longer available for use in the EC2-Classic // platform, unless you move it back using the RestoreAddressToClassic request. // You cannot move an Elastic IP address that was originally allocated for use // in the EC2-VPC platform to the EC2-Classic platform. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation MoveAddressToVpc for usage and error information. func (c *EC2) MoveAddressToVpc(input *MoveAddressToVpcInput) (*MoveAddressToVpcOutput, error) { req, out := c.MoveAddressToVpcRequest(input) err := req.Send() return out, err } const opPurchaseHostReservation = "PurchaseHostReservation" // PurchaseHostReservationRequest generates a "aws/request.Request" representing the // client's request for the PurchaseHostReservation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PurchaseHostReservation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PurchaseHostReservation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PurchaseHostReservationRequest method. // req, resp := client.PurchaseHostReservationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) PurchaseHostReservationRequest(input *PurchaseHostReservationInput) (req *request.Request, output *PurchaseHostReservationOutput) { op := &request.Operation{ Name: opPurchaseHostReservation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PurchaseHostReservationInput{} } req = c.newRequest(op, input, output) output = &PurchaseHostReservationOutput{} req.Data = output return } // PurchaseHostReservation API operation for Amazon Elastic Compute Cloud. // // Purchase a reservation with configurations that match those of your Dedicated // Host. You must have active Dedicated Hosts in your account before you purchase // a reservation. This action results in the specified reservation being purchased // and charged to your account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation PurchaseHostReservation for usage and error information. func (c *EC2) PurchaseHostReservation(input *PurchaseHostReservationInput) (*PurchaseHostReservationOutput, error) { req, out := c.PurchaseHostReservationRequest(input) err := req.Send() return out, err } const opPurchaseReservedInstancesOffering = "PurchaseReservedInstancesOffering" // PurchaseReservedInstancesOfferingRequest generates a "aws/request.Request" representing the // client's request for the PurchaseReservedInstancesOffering operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PurchaseReservedInstancesOffering for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PurchaseReservedInstancesOffering method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PurchaseReservedInstancesOfferingRequest method. // req, resp := client.PurchaseReservedInstancesOfferingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) PurchaseReservedInstancesOfferingRequest(input *PurchaseReservedInstancesOfferingInput) (req *request.Request, output *PurchaseReservedInstancesOfferingOutput) { op := &request.Operation{ Name: opPurchaseReservedInstancesOffering, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PurchaseReservedInstancesOfferingInput{} } req = c.newRequest(op, input, output) output = &PurchaseReservedInstancesOfferingOutput{} req.Data = output return } // PurchaseReservedInstancesOffering API operation for Amazon Elastic Compute Cloud. // // Purchases a Reserved Instance for use with your account. With Reserved Instances, // you pay a lower hourly rate compared to On-Demand instance pricing. // // Use DescribeReservedInstancesOfferings to get a list of Reserved Instance // offerings that match your specifications. After you've purchased a Reserved // Instance, you can check for your new Reserved Instance with DescribeReservedInstances. // // For more information, see Reserved Instances (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts-on-demand-reserved-instances.html) // and Reserved Instance Marketplace (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-market-general.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation PurchaseReservedInstancesOffering for usage and error information. func (c *EC2) PurchaseReservedInstancesOffering(input *PurchaseReservedInstancesOfferingInput) (*PurchaseReservedInstancesOfferingOutput, error) { req, out := c.PurchaseReservedInstancesOfferingRequest(input) err := req.Send() return out, err } const opPurchaseScheduledInstances = "PurchaseScheduledInstances" // PurchaseScheduledInstancesRequest generates a "aws/request.Request" representing the // client's request for the PurchaseScheduledInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PurchaseScheduledInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PurchaseScheduledInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PurchaseScheduledInstancesRequest method. // req, resp := client.PurchaseScheduledInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) PurchaseScheduledInstancesRequest(input *PurchaseScheduledInstancesInput) (req *request.Request, output *PurchaseScheduledInstancesOutput) { op := &request.Operation{ Name: opPurchaseScheduledInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PurchaseScheduledInstancesInput{} } req = c.newRequest(op, input, output) output = &PurchaseScheduledInstancesOutput{} req.Data = output return } // PurchaseScheduledInstances API operation for Amazon Elastic Compute Cloud. // // Purchases one or more Scheduled Instances with the specified schedule. // // Scheduled Instances enable you to purchase Amazon EC2 compute capacity by // the hour for a one-year term. Before you can purchase a Scheduled Instance, // you must call DescribeScheduledInstanceAvailability to check for available // schedules and obtain a purchase token. After you purchase a Scheduled Instance, // you must call RunScheduledInstances during each scheduled time period. // // After you purchase a Scheduled Instance, you can't cancel, modify, or resell // your purchase. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation PurchaseScheduledInstances for usage and error information. func (c *EC2) PurchaseScheduledInstances(input *PurchaseScheduledInstancesInput) (*PurchaseScheduledInstancesOutput, error) { req, out := c.PurchaseScheduledInstancesRequest(input) err := req.Send() return out, err } const opRebootInstances = "RebootInstances" // RebootInstancesRequest generates a "aws/request.Request" representing the // client's request for the RebootInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RebootInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RebootInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RebootInstancesRequest method. // req, resp := client.RebootInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) RebootInstancesRequest(input *RebootInstancesInput) (req *request.Request, output *RebootInstancesOutput) { op := &request.Operation{ Name: opRebootInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RebootInstancesInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RebootInstancesOutput{} req.Data = output return } // RebootInstances API operation for Amazon Elastic Compute Cloud. // // Requests a reboot of one or more instances. This operation is asynchronous; // it only queues a request to reboot the specified instances. The operation // succeeds if the instances are valid and belong to you. Requests to reboot // terminated instances are ignored. // // If an instance does not cleanly shut down within four minutes, Amazon EC2 // performs a hard reboot. // // For more information about troubleshooting, see Getting Console Output and // Rebooting Instances (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-console.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation RebootInstances for usage and error information. func (c *EC2) RebootInstances(input *RebootInstancesInput) (*RebootInstancesOutput, error) { req, out := c.RebootInstancesRequest(input) err := req.Send() return out, err } const opRegisterImage = "RegisterImage" // RegisterImageRequest generates a "aws/request.Request" representing the // client's request for the RegisterImage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterImage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterImage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterImageRequest method. // req, resp := client.RegisterImageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) RegisterImageRequest(input *RegisterImageInput) (req *request.Request, output *RegisterImageOutput) { op := &request.Operation{ Name: opRegisterImage, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterImageInput{} } req = c.newRequest(op, input, output) output = &RegisterImageOutput{} req.Data = output return } // RegisterImage API operation for Amazon Elastic Compute Cloud. // // Registers an AMI. When you're creating an AMI, this is the final step you // must complete before you can launch an instance from the AMI. For more information // about creating AMIs, see Creating Your Own AMIs (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/creating-an-ami.html) // in the Amazon Elastic Compute Cloud User Guide. // // For Amazon EBS-backed instances, CreateImage creates and registers the AMI // in a single request, so you don't have to register the AMI yourself. // // You can also use RegisterImage to create an Amazon EBS-backed Linux AMI from // a snapshot of a root device volume. For more information, see Launching an // Instance from a Snapshot (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_LaunchingInstanceFromSnapshot.html) // in the Amazon Elastic Compute Cloud User Guide. // // Some Linux distributions, such as Red Hat Enterprise Linux (RHEL) and SUSE // Linux Enterprise Server (SLES), use the EC2 billingProduct code associated // with an AMI to verify subscription status for package updates. Creating an // AMI from an EBS snapshot does not maintain this billing code, and subsequent // instances launched from such an AMI will not be able to connect to package // update infrastructure. // // Similarly, although you can create a Windows AMI from a snapshot, you can't // successfully launch an instance from the AMI. // // To create Windows AMIs or to create AMIs for Linux operating systems that // must retain AMI billing codes to work properly, see CreateImage. // // If needed, you can deregister an AMI at any time. Any modifications you make // to an AMI backed by an instance store volume invalidates its registration. // If you make changes to an image, deregister the previous image and register // the new image. // // You can't register an image where a secondary (non-root) snapshot has AWS // Marketplace product codes. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation RegisterImage for usage and error information. func (c *EC2) RegisterImage(input *RegisterImageInput) (*RegisterImageOutput, error) { req, out := c.RegisterImageRequest(input) err := req.Send() return out, err } const opRejectVpcPeeringConnection = "RejectVpcPeeringConnection" // RejectVpcPeeringConnectionRequest generates a "aws/request.Request" representing the // client's request for the RejectVpcPeeringConnection operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RejectVpcPeeringConnection for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RejectVpcPeeringConnection method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RejectVpcPeeringConnectionRequest method. // req, resp := client.RejectVpcPeeringConnectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) RejectVpcPeeringConnectionRequest(input *RejectVpcPeeringConnectionInput) (req *request.Request, output *RejectVpcPeeringConnectionOutput) { op := &request.Operation{ Name: opRejectVpcPeeringConnection, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RejectVpcPeeringConnectionInput{} } req = c.newRequest(op, input, output) output = &RejectVpcPeeringConnectionOutput{} req.Data = output return } // RejectVpcPeeringConnection API operation for Amazon Elastic Compute Cloud. // // Rejects a VPC peering connection request. The VPC peering connection must // be in the pending-acceptance state. Use the DescribeVpcPeeringConnections // request to view your outstanding VPC peering connection requests. To delete // an active VPC peering connection, or to delete a VPC peering connection request // that you initiated, use DeleteVpcPeeringConnection. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation RejectVpcPeeringConnection for usage and error information. func (c *EC2) RejectVpcPeeringConnection(input *RejectVpcPeeringConnectionInput) (*RejectVpcPeeringConnectionOutput, error) { req, out := c.RejectVpcPeeringConnectionRequest(input) err := req.Send() return out, err } const opReleaseAddress = "ReleaseAddress" // ReleaseAddressRequest generates a "aws/request.Request" representing the // client's request for the ReleaseAddress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ReleaseAddress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ReleaseAddress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ReleaseAddressRequest method. // req, resp := client.ReleaseAddressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ReleaseAddressRequest(input *ReleaseAddressInput) (req *request.Request, output *ReleaseAddressOutput) { op := &request.Operation{ Name: opReleaseAddress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ReleaseAddressInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ReleaseAddressOutput{} req.Data = output return } // ReleaseAddress API operation for Amazon Elastic Compute Cloud. // // Releases the specified Elastic IP address. // // After releasing an Elastic IP address, it is released to the IP address pool // and might be unavailable to you. Be sure to update your DNS records and any // servers or devices that communicate with the address. If you attempt to release // an Elastic IP address that you already released, you'll get an AuthFailure // error if the address is already allocated to another AWS account. // // [EC2-Classic, default VPC] Releasing an Elastic IP address automatically // disassociates it from any instance that it's associated with. To disassociate // an Elastic IP address without releasing it, use DisassociateAddress. // // [Nondefault VPC] You must use DisassociateAddress to disassociate the Elastic // IP address before you try to release it. Otherwise, Amazon EC2 returns an // error (InvalidIPAddress.InUse). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ReleaseAddress for usage and error information. func (c *EC2) ReleaseAddress(input *ReleaseAddressInput) (*ReleaseAddressOutput, error) { req, out := c.ReleaseAddressRequest(input) err := req.Send() return out, err } const opReleaseHosts = "ReleaseHosts" // ReleaseHostsRequest generates a "aws/request.Request" representing the // client's request for the ReleaseHosts operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ReleaseHosts for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ReleaseHosts method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ReleaseHostsRequest method. // req, resp := client.ReleaseHostsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ReleaseHostsRequest(input *ReleaseHostsInput) (req *request.Request, output *ReleaseHostsOutput) { op := &request.Operation{ Name: opReleaseHosts, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ReleaseHostsInput{} } req = c.newRequest(op, input, output) output = &ReleaseHostsOutput{} req.Data = output return } // ReleaseHosts API operation for Amazon Elastic Compute Cloud. // // When you no longer want to use an On-Demand Dedicated Host it can be released. // On-Demand billing is stopped and the host goes into released state. The host // ID of Dedicated Hosts that have been released can no longer be specified // in another request, e.g., ModifyHosts. You must stop or terminate all instances // on a host before it can be released. // // When Dedicated Hosts are released, it make take some time for them to stop // counting toward your limit and you may receive capacity errors when trying // to allocate new Dedicated hosts. Try waiting a few minutes, and then try // again. // // Released hosts will still appear in a DescribeHosts response. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ReleaseHosts for usage and error information. func (c *EC2) ReleaseHosts(input *ReleaseHostsInput) (*ReleaseHostsOutput, error) { req, out := c.ReleaseHostsRequest(input) err := req.Send() return out, err } const opReplaceNetworkAclAssociation = "ReplaceNetworkAclAssociation" // ReplaceNetworkAclAssociationRequest generates a "aws/request.Request" representing the // client's request for the ReplaceNetworkAclAssociation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ReplaceNetworkAclAssociation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ReplaceNetworkAclAssociation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ReplaceNetworkAclAssociationRequest method. // req, resp := client.ReplaceNetworkAclAssociationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ReplaceNetworkAclAssociationRequest(input *ReplaceNetworkAclAssociationInput) (req *request.Request, output *ReplaceNetworkAclAssociationOutput) { op := &request.Operation{ Name: opReplaceNetworkAclAssociation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ReplaceNetworkAclAssociationInput{} } req = c.newRequest(op, input, output) output = &ReplaceNetworkAclAssociationOutput{} req.Data = output return } // ReplaceNetworkAclAssociation API operation for Amazon Elastic Compute Cloud. // // Changes which network ACL a subnet is associated with. By default when you // create a subnet, it's automatically associated with the default network ACL. // For more information about network ACLs, see Network ACLs (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_ACLs.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ReplaceNetworkAclAssociation for usage and error information. func (c *EC2) ReplaceNetworkAclAssociation(input *ReplaceNetworkAclAssociationInput) (*ReplaceNetworkAclAssociationOutput, error) { req, out := c.ReplaceNetworkAclAssociationRequest(input) err := req.Send() return out, err } const opReplaceNetworkAclEntry = "ReplaceNetworkAclEntry" // ReplaceNetworkAclEntryRequest generates a "aws/request.Request" representing the // client's request for the ReplaceNetworkAclEntry operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ReplaceNetworkAclEntry for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ReplaceNetworkAclEntry method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ReplaceNetworkAclEntryRequest method. // req, resp := client.ReplaceNetworkAclEntryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ReplaceNetworkAclEntryRequest(input *ReplaceNetworkAclEntryInput) (req *request.Request, output *ReplaceNetworkAclEntryOutput) { op := &request.Operation{ Name: opReplaceNetworkAclEntry, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ReplaceNetworkAclEntryInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ReplaceNetworkAclEntryOutput{} req.Data = output return } // ReplaceNetworkAclEntry API operation for Amazon Elastic Compute Cloud. // // Replaces an entry (rule) in a network ACL. For more information about network // ACLs, see Network ACLs (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_ACLs.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ReplaceNetworkAclEntry for usage and error information. func (c *EC2) ReplaceNetworkAclEntry(input *ReplaceNetworkAclEntryInput) (*ReplaceNetworkAclEntryOutput, error) { req, out := c.ReplaceNetworkAclEntryRequest(input) err := req.Send() return out, err } const opReplaceRoute = "ReplaceRoute" // ReplaceRouteRequest generates a "aws/request.Request" representing the // client's request for the ReplaceRoute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ReplaceRoute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ReplaceRoute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ReplaceRouteRequest method. // req, resp := client.ReplaceRouteRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ReplaceRouteRequest(input *ReplaceRouteInput) (req *request.Request, output *ReplaceRouteOutput) { op := &request.Operation{ Name: opReplaceRoute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ReplaceRouteInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ReplaceRouteOutput{} req.Data = output return } // ReplaceRoute API operation for Amazon Elastic Compute Cloud. // // Replaces an existing route within a route table in a VPC. You must provide // only one of the following: Internet gateway or virtual private gateway, NAT // instance, NAT gateway, VPC peering connection, or network interface. // // For more information about route tables, see Route Tables (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Route_Tables.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ReplaceRoute for usage and error information. func (c *EC2) ReplaceRoute(input *ReplaceRouteInput) (*ReplaceRouteOutput, error) { req, out := c.ReplaceRouteRequest(input) err := req.Send() return out, err } const opReplaceRouteTableAssociation = "ReplaceRouteTableAssociation" // ReplaceRouteTableAssociationRequest generates a "aws/request.Request" representing the // client's request for the ReplaceRouteTableAssociation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ReplaceRouteTableAssociation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ReplaceRouteTableAssociation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ReplaceRouteTableAssociationRequest method. // req, resp := client.ReplaceRouteTableAssociationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ReplaceRouteTableAssociationRequest(input *ReplaceRouteTableAssociationInput) (req *request.Request, output *ReplaceRouteTableAssociationOutput) { op := &request.Operation{ Name: opReplaceRouteTableAssociation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ReplaceRouteTableAssociationInput{} } req = c.newRequest(op, input, output) output = &ReplaceRouteTableAssociationOutput{} req.Data = output return } // ReplaceRouteTableAssociation API operation for Amazon Elastic Compute Cloud. // // Changes the route table associated with a given subnet in a VPC. After the // operation completes, the subnet uses the routes in the new route table it's // associated with. For more information about route tables, see Route Tables // (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Route_Tables.html) // in the Amazon Virtual Private Cloud User Guide. // // You can also use ReplaceRouteTableAssociation to change which table is the // main route table in the VPC. You just specify the main route table's association // ID and the route table to be the new main route table. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ReplaceRouteTableAssociation for usage and error information. func (c *EC2) ReplaceRouteTableAssociation(input *ReplaceRouteTableAssociationInput) (*ReplaceRouteTableAssociationOutput, error) { req, out := c.ReplaceRouteTableAssociationRequest(input) err := req.Send() return out, err } const opReportInstanceStatus = "ReportInstanceStatus" // ReportInstanceStatusRequest generates a "aws/request.Request" representing the // client's request for the ReportInstanceStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ReportInstanceStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ReportInstanceStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ReportInstanceStatusRequest method. // req, resp := client.ReportInstanceStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ReportInstanceStatusRequest(input *ReportInstanceStatusInput) (req *request.Request, output *ReportInstanceStatusOutput) { op := &request.Operation{ Name: opReportInstanceStatus, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ReportInstanceStatusInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ReportInstanceStatusOutput{} req.Data = output return } // ReportInstanceStatus API operation for Amazon Elastic Compute Cloud. // // Submits feedback about the status of an instance. The instance must be in // the running state. If your experience with the instance differs from the // instance status returned by DescribeInstanceStatus, use ReportInstanceStatus // to report your experience with the instance. Amazon EC2 collects this information // to improve the accuracy of status checks. // // Use of this action does not change the value returned by DescribeInstanceStatus. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ReportInstanceStatus for usage and error information. func (c *EC2) ReportInstanceStatus(input *ReportInstanceStatusInput) (*ReportInstanceStatusOutput, error) { req, out := c.ReportInstanceStatusRequest(input) err := req.Send() return out, err } const opRequestSpotFleet = "RequestSpotFleet" // RequestSpotFleetRequest generates a "aws/request.Request" representing the // client's request for the RequestSpotFleet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RequestSpotFleet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RequestSpotFleet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RequestSpotFleetRequest method. // req, resp := client.RequestSpotFleetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) RequestSpotFleetRequest(input *RequestSpotFleetInput) (req *request.Request, output *RequestSpotFleetOutput) { op := &request.Operation{ Name: opRequestSpotFleet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RequestSpotFleetInput{} } req = c.newRequest(op, input, output) output = &RequestSpotFleetOutput{} req.Data = output return } // RequestSpotFleet API operation for Amazon Elastic Compute Cloud. // // Creates a Spot fleet request. // // You can submit a single request that includes multiple launch specifications // that vary by instance type, AMI, Availability Zone, or subnet. // // By default, the Spot fleet requests Spot instances in the Spot pool where // the price per unit is the lowest. Each launch specification can include its // own instance weighting that reflects the value of the instance type to your // application workload. // // Alternatively, you can specify that the Spot fleet distribute the target // capacity across the Spot pools included in its launch specifications. By // ensuring that the Spot instances in your Spot fleet are in different Spot // pools, you can improve the availability of your fleet. // // For more information, see Spot Fleet Requests (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-requests.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation RequestSpotFleet for usage and error information. func (c *EC2) RequestSpotFleet(input *RequestSpotFleetInput) (*RequestSpotFleetOutput, error) { req, out := c.RequestSpotFleetRequest(input) err := req.Send() return out, err } const opRequestSpotInstances = "RequestSpotInstances" // RequestSpotInstancesRequest generates a "aws/request.Request" representing the // client's request for the RequestSpotInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RequestSpotInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RequestSpotInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RequestSpotInstancesRequest method. // req, resp := client.RequestSpotInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) RequestSpotInstancesRequest(input *RequestSpotInstancesInput) (req *request.Request, output *RequestSpotInstancesOutput) { op := &request.Operation{ Name: opRequestSpotInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RequestSpotInstancesInput{} } req = c.newRequest(op, input, output) output = &RequestSpotInstancesOutput{} req.Data = output return } // RequestSpotInstances API operation for Amazon Elastic Compute Cloud. // // Creates a Spot instance request. Spot instances are instances that Amazon // EC2 launches when the bid price that you specify exceeds the current Spot // price. Amazon EC2 periodically sets the Spot price based on available Spot // Instance capacity and current Spot instance requests. For more information, // see Spot Instance Requests (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-requests.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation RequestSpotInstances for usage and error information. func (c *EC2) RequestSpotInstances(input *RequestSpotInstancesInput) (*RequestSpotInstancesOutput, error) { req, out := c.RequestSpotInstancesRequest(input) err := req.Send() return out, err } const opResetImageAttribute = "ResetImageAttribute" // ResetImageAttributeRequest generates a "aws/request.Request" representing the // client's request for the ResetImageAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ResetImageAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ResetImageAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ResetImageAttributeRequest method. // req, resp := client.ResetImageAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ResetImageAttributeRequest(input *ResetImageAttributeInput) (req *request.Request, output *ResetImageAttributeOutput) { op := &request.Operation{ Name: opResetImageAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ResetImageAttributeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ResetImageAttributeOutput{} req.Data = output return } // ResetImageAttribute API operation for Amazon Elastic Compute Cloud. // // Resets an attribute of an AMI to its default value. // // The productCodes attribute can't be reset. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ResetImageAttribute for usage and error information. func (c *EC2) ResetImageAttribute(input *ResetImageAttributeInput) (*ResetImageAttributeOutput, error) { req, out := c.ResetImageAttributeRequest(input) err := req.Send() return out, err } const opResetInstanceAttribute = "ResetInstanceAttribute" // ResetInstanceAttributeRequest generates a "aws/request.Request" representing the // client's request for the ResetInstanceAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ResetInstanceAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ResetInstanceAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ResetInstanceAttributeRequest method. // req, resp := client.ResetInstanceAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ResetInstanceAttributeRequest(input *ResetInstanceAttributeInput) (req *request.Request, output *ResetInstanceAttributeOutput) { op := &request.Operation{ Name: opResetInstanceAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ResetInstanceAttributeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ResetInstanceAttributeOutput{} req.Data = output return } // ResetInstanceAttribute API operation for Amazon Elastic Compute Cloud. // // Resets an attribute of an instance to its default value. To reset the kernel // or ramdisk, the instance must be in a stopped state. To reset the sourceDestCheck, // the instance can be either running or stopped. // // The sourceDestCheck attribute controls whether source/destination checking // is enabled. The default value is true, which means checking is enabled. This // value must be false for a NAT instance to perform NAT. For more information, // see NAT Instances (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_NAT_Instance.html) // in the Amazon Virtual Private Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ResetInstanceAttribute for usage and error information. func (c *EC2) ResetInstanceAttribute(input *ResetInstanceAttributeInput) (*ResetInstanceAttributeOutput, error) { req, out := c.ResetInstanceAttributeRequest(input) err := req.Send() return out, err } const opResetNetworkInterfaceAttribute = "ResetNetworkInterfaceAttribute" // ResetNetworkInterfaceAttributeRequest generates a "aws/request.Request" representing the // client's request for the ResetNetworkInterfaceAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ResetNetworkInterfaceAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ResetNetworkInterfaceAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ResetNetworkInterfaceAttributeRequest method. // req, resp := client.ResetNetworkInterfaceAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ResetNetworkInterfaceAttributeRequest(input *ResetNetworkInterfaceAttributeInput) (req *request.Request, output *ResetNetworkInterfaceAttributeOutput) { op := &request.Operation{ Name: opResetNetworkInterfaceAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ResetNetworkInterfaceAttributeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ResetNetworkInterfaceAttributeOutput{} req.Data = output return } // ResetNetworkInterfaceAttribute API operation for Amazon Elastic Compute Cloud. // // Resets a network interface attribute. You can specify only one attribute // at a time. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ResetNetworkInterfaceAttribute for usage and error information. func (c *EC2) ResetNetworkInterfaceAttribute(input *ResetNetworkInterfaceAttributeInput) (*ResetNetworkInterfaceAttributeOutput, error) { req, out := c.ResetNetworkInterfaceAttributeRequest(input) err := req.Send() return out, err } const opResetSnapshotAttribute = "ResetSnapshotAttribute" // ResetSnapshotAttributeRequest generates a "aws/request.Request" representing the // client's request for the ResetSnapshotAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ResetSnapshotAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ResetSnapshotAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ResetSnapshotAttributeRequest method. // req, resp := client.ResetSnapshotAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) ResetSnapshotAttributeRequest(input *ResetSnapshotAttributeInput) (req *request.Request, output *ResetSnapshotAttributeOutput) { op := &request.Operation{ Name: opResetSnapshotAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ResetSnapshotAttributeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ResetSnapshotAttributeOutput{} req.Data = output return } // ResetSnapshotAttribute API operation for Amazon Elastic Compute Cloud. // // Resets permission settings for the specified snapshot. // // For more information on modifying snapshot permissions, see Sharing Snapshots // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-modifying-snapshot-permissions.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation ResetSnapshotAttribute for usage and error information. func (c *EC2) ResetSnapshotAttribute(input *ResetSnapshotAttributeInput) (*ResetSnapshotAttributeOutput, error) { req, out := c.ResetSnapshotAttributeRequest(input) err := req.Send() return out, err } const opRestoreAddressToClassic = "RestoreAddressToClassic" // RestoreAddressToClassicRequest generates a "aws/request.Request" representing the // client's request for the RestoreAddressToClassic operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RestoreAddressToClassic for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RestoreAddressToClassic method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RestoreAddressToClassicRequest method. // req, resp := client.RestoreAddressToClassicRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) RestoreAddressToClassicRequest(input *RestoreAddressToClassicInput) (req *request.Request, output *RestoreAddressToClassicOutput) { op := &request.Operation{ Name: opRestoreAddressToClassic, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RestoreAddressToClassicInput{} } req = c.newRequest(op, input, output) output = &RestoreAddressToClassicOutput{} req.Data = output return } // RestoreAddressToClassic API operation for Amazon Elastic Compute Cloud. // // Restores an Elastic IP address that was previously moved to the EC2-VPC platform // back to the EC2-Classic platform. You cannot move an Elastic IP address that // was originally allocated for use in EC2-VPC. The Elastic IP address must // not be associated with an instance or network interface. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation RestoreAddressToClassic for usage and error information. func (c *EC2) RestoreAddressToClassic(input *RestoreAddressToClassicInput) (*RestoreAddressToClassicOutput, error) { req, out := c.RestoreAddressToClassicRequest(input) err := req.Send() return out, err } const opRevokeSecurityGroupEgress = "RevokeSecurityGroupEgress" // RevokeSecurityGroupEgressRequest generates a "aws/request.Request" representing the // client's request for the RevokeSecurityGroupEgress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RevokeSecurityGroupEgress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RevokeSecurityGroupEgress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RevokeSecurityGroupEgressRequest method. // req, resp := client.RevokeSecurityGroupEgressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) RevokeSecurityGroupEgressRequest(input *RevokeSecurityGroupEgressInput) (req *request.Request, output *RevokeSecurityGroupEgressOutput) { op := &request.Operation{ Name: opRevokeSecurityGroupEgress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RevokeSecurityGroupEgressInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RevokeSecurityGroupEgressOutput{} req.Data = output return } // RevokeSecurityGroupEgress API operation for Amazon Elastic Compute Cloud. // // [EC2-VPC only] Removes one or more egress rules from a security group for // EC2-VPC. This action doesn't apply to security groups for use in EC2-Classic. // The values that you specify in the revoke request (for example, ports) must // match the existing rule's values for the rule to be revoked. // // Each rule consists of the protocol and the CIDR range or source security // group. For the TCP and UDP protocols, you must also specify the destination // port or range of ports. For the ICMP protocol, you must also specify the // ICMP type and code. // // Rule changes are propagated to instances within the security group as quickly // as possible. However, a small delay might occur. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation RevokeSecurityGroupEgress for usage and error information. func (c *EC2) RevokeSecurityGroupEgress(input *RevokeSecurityGroupEgressInput) (*RevokeSecurityGroupEgressOutput, error) { req, out := c.RevokeSecurityGroupEgressRequest(input) err := req.Send() return out, err } const opRevokeSecurityGroupIngress = "RevokeSecurityGroupIngress" // RevokeSecurityGroupIngressRequest generates a "aws/request.Request" representing the // client's request for the RevokeSecurityGroupIngress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RevokeSecurityGroupIngress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RevokeSecurityGroupIngress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RevokeSecurityGroupIngressRequest method. // req, resp := client.RevokeSecurityGroupIngressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) RevokeSecurityGroupIngressRequest(input *RevokeSecurityGroupIngressInput) (req *request.Request, output *RevokeSecurityGroupIngressOutput) { op := &request.Operation{ Name: opRevokeSecurityGroupIngress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RevokeSecurityGroupIngressInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RevokeSecurityGroupIngressOutput{} req.Data = output return } // RevokeSecurityGroupIngress API operation for Amazon Elastic Compute Cloud. // // Removes one or more ingress rules from a security group. The values that // you specify in the revoke request (for example, ports) must match the existing // rule's values for the rule to be removed. // // Each rule consists of the protocol and the CIDR range or source security // group. For the TCP and UDP protocols, you must also specify the destination // port or range of ports. For the ICMP protocol, you must also specify the // ICMP type and code. // // Rule changes are propagated to instances within the security group as quickly // as possible. However, a small delay might occur. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation RevokeSecurityGroupIngress for usage and error information. func (c *EC2) RevokeSecurityGroupIngress(input *RevokeSecurityGroupIngressInput) (*RevokeSecurityGroupIngressOutput, error) { req, out := c.RevokeSecurityGroupIngressRequest(input) err := req.Send() return out, err } const opRunInstances = "RunInstances" // RunInstancesRequest generates a "aws/request.Request" representing the // client's request for the RunInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RunInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RunInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RunInstancesRequest method. // req, resp := client.RunInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) RunInstancesRequest(input *RunInstancesInput) (req *request.Request, output *Reservation) { op := &request.Operation{ Name: opRunInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RunInstancesInput{} } req = c.newRequest(op, input, output) output = &Reservation{} req.Data = output return } // RunInstances API operation for Amazon Elastic Compute Cloud. // // Launches the specified number of instances using an AMI for which you have // permissions. // // When you launch an instance, it enters the pending state. After the instance // is ready for you, it enters the running state. To check the state of your // instance, call DescribeInstances. // // To ensure faster instance launches, break up large requests into smaller // batches. For example, create five separate launch requests for 100 instances // each instead of one launch request for 500 instances. // // To tag your instance, ensure that it is running as CreateTags requires a // resource ID. For more information about tagging, see Tagging Your Amazon // EC2 Resources (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html). // // If you don't specify a security group when launching an instance, Amazon // EC2 uses the default security group. For more information, see Security Groups // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html) // in the Amazon Elastic Compute Cloud User Guide. // // [EC2-VPC only accounts] If you don't specify a subnet in the request, we // choose a default subnet from your default VPC for you. // // [EC2-Classic accounts] If you're launching into EC2-Classic and you don't // specify an Availability Zone, we choose one for you. // // Linux instances have access to the public key of the key pair at boot. You // can use this key to provide secure access to the instance. Amazon EC2 public // images use this feature to provide secure access without passwords. For more // information, see Key Pairs (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) // in the Amazon Elastic Compute Cloud User Guide. // // You can provide optional user data when launching an instance. For more information, // see Instance Metadata (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AESDG-chapter-instancedata.html) // in the Amazon Elastic Compute Cloud User Guide. // // If any of the AMIs have a product code attached for which the user has not // subscribed, RunInstances fails. // // Some instance types can only be launched into a VPC. If you do not have a // default VPC, or if you do not specify a subnet ID in the request, RunInstances // fails. For more information, see Instance Types Available Only in a VPC (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-vpc.html#vpc-only-instance-types). // // For more information about troubleshooting, see What To Do If An Instance // Immediately Terminates (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_InstanceStraightToTerminated.html), // and Troubleshooting Connecting to Your Instance (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/TroubleshootingInstancesConnecting.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation RunInstances for usage and error information. func (c *EC2) RunInstances(input *RunInstancesInput) (*Reservation, error) { req, out := c.RunInstancesRequest(input) err := req.Send() return out, err } const opRunScheduledInstances = "RunScheduledInstances" // RunScheduledInstancesRequest generates a "aws/request.Request" representing the // client's request for the RunScheduledInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RunScheduledInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RunScheduledInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RunScheduledInstancesRequest method. // req, resp := client.RunScheduledInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) RunScheduledInstancesRequest(input *RunScheduledInstancesInput) (req *request.Request, output *RunScheduledInstancesOutput) { op := &request.Operation{ Name: opRunScheduledInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RunScheduledInstancesInput{} } req = c.newRequest(op, input, output) output = &RunScheduledInstancesOutput{} req.Data = output return } // RunScheduledInstances API operation for Amazon Elastic Compute Cloud. // // Launches the specified Scheduled Instances. // // Before you can launch a Scheduled Instance, you must purchase it and obtain // an identifier using PurchaseScheduledInstances. // // You must launch a Scheduled Instance during its scheduled time period. You // can't stop or reboot a Scheduled Instance, but you can terminate it as needed. // If you terminate a Scheduled Instance before the current scheduled time period // ends, you can launch it again after a few minutes. For more information, // see Scheduled Instances (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-scheduled-instances.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation RunScheduledInstances for usage and error information. func (c *EC2) RunScheduledInstances(input *RunScheduledInstancesInput) (*RunScheduledInstancesOutput, error) { req, out := c.RunScheduledInstancesRequest(input) err := req.Send() return out, err } const opStartInstances = "StartInstances" // StartInstancesRequest generates a "aws/request.Request" representing the // client's request for the StartInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StartInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StartInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StartInstancesRequest method. // req, resp := client.StartInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) StartInstancesRequest(input *StartInstancesInput) (req *request.Request, output *StartInstancesOutput) { op := &request.Operation{ Name: opStartInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartInstancesInput{} } req = c.newRequest(op, input, output) output = &StartInstancesOutput{} req.Data = output return } // StartInstances API operation for Amazon Elastic Compute Cloud. // // Starts an Amazon EBS-backed AMI that you've previously stopped. // // Instances that use Amazon EBS volumes as their root devices can be quickly // stopped and started. When an instance is stopped, the compute resources are // released and you are not billed for hourly instance usage. However, your // root partition Amazon EBS volume remains, continues to persist your data, // and you are charged for Amazon EBS volume usage. You can restart your instance // at any time. Each time you transition an instance from stopped to started, // Amazon EC2 charges a full instance hour, even if transitions happen multiple // times within a single hour. // // Before stopping an instance, make sure it is in a state from which it can // be restarted. Stopping an instance does not preserve data stored in RAM. // // Performing this operation on an instance that uses an instance store as its // root device returns an error. // // For more information, see Stopping Instances (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation StartInstances for usage and error information. func (c *EC2) StartInstances(input *StartInstancesInput) (*StartInstancesOutput, error) { req, out := c.StartInstancesRequest(input) err := req.Send() return out, err } const opStopInstances = "StopInstances" // StopInstancesRequest generates a "aws/request.Request" representing the // client's request for the StopInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StopInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StopInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StopInstancesRequest method. // req, resp := client.StopInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) StopInstancesRequest(input *StopInstancesInput) (req *request.Request, output *StopInstancesOutput) { op := &request.Operation{ Name: opStopInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StopInstancesInput{} } req = c.newRequest(op, input, output) output = &StopInstancesOutput{} req.Data = output return } // StopInstances API operation for Amazon Elastic Compute Cloud. // // Stops an Amazon EBS-backed instance. // // We don't charge hourly usage for a stopped instance, or data transfer fees; // however, your root partition Amazon EBS volume remains, continues to persist // your data, and you are charged for Amazon EBS volume usage. Each time you // transition an instance from stopped to started, Amazon EC2 charges a full // instance hour, even if transitions happen multiple times within a single // hour. // // You can't start or stop Spot instances, and you can't stop instance store-backed // instances. // // When you stop an instance, we shut it down. You can restart your instance // at any time. Before stopping an instance, make sure it is in a state from // which it can be restarted. Stopping an instance does not preserve data stored // in RAM. // // Stopping an instance is different to rebooting or terminating it. For example, // when you stop an instance, the root device and any other devices attached // to the instance persist. When you terminate an instance, the root device // and any other devices attached during the instance launch are automatically // deleted. For more information about the differences between rebooting, stopping, // and terminating instances, see Instance Lifecycle (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-lifecycle.html) // in the Amazon Elastic Compute Cloud User Guide. // // When you stop an instance, we attempt to shut it down forcibly after a short // while. If your instance appears stuck in the stopping state after a period // of time, there may be an issue with the underlying host computer. For more // information, see Troubleshooting Stopping Your Instance (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/TroubleshootingInstancesStopping.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation StopInstances for usage and error information. func (c *EC2) StopInstances(input *StopInstancesInput) (*StopInstancesOutput, error) { req, out := c.StopInstancesRequest(input) err := req.Send() return out, err } const opTerminateInstances = "TerminateInstances" // TerminateInstancesRequest generates a "aws/request.Request" representing the // client's request for the TerminateInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See TerminateInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the TerminateInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the TerminateInstancesRequest method. // req, resp := client.TerminateInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) TerminateInstancesRequest(input *TerminateInstancesInput) (req *request.Request, output *TerminateInstancesOutput) { op := &request.Operation{ Name: opTerminateInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &TerminateInstancesInput{} } req = c.newRequest(op, input, output) output = &TerminateInstancesOutput{} req.Data = output return } // TerminateInstances API operation for Amazon Elastic Compute Cloud. // // Shuts down one or more instances. This operation is idempotent; if you terminate // an instance more than once, each call succeeds. // // If you specify multiple instances and the request fails (for example, because // of a single incorrect instance ID), none of the instances are terminated. // // Terminated instances remain visible after termination (for approximately // one hour). // // By default, Amazon EC2 deletes all EBS volumes that were attached when the // instance launched. Volumes attached after instance launch continue running. // // You can stop, start, and terminate EBS-backed instances. You can only terminate // instance store-backed instances. What happens to an instance differs if you // stop it or terminate it. For example, when you stop an instance, the root // device and any other devices attached to the instance persist. When you terminate // an instance, any attached EBS volumes with the DeleteOnTermination block // device mapping parameter set to true are automatically deleted. For more // information about the differences between stopping and terminating instances, // see Instance Lifecycle (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-lifecycle.html) // in the Amazon Elastic Compute Cloud User Guide. // // For more information about troubleshooting, see Troubleshooting Terminating // Your Instance (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/TroubleshootingInstancesShuttingDown.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation TerminateInstances for usage and error information. func (c *EC2) TerminateInstances(input *TerminateInstancesInput) (*TerminateInstancesOutput, error) { req, out := c.TerminateInstancesRequest(input) err := req.Send() return out, err } const opUnassignPrivateIpAddresses = "UnassignPrivateIpAddresses" // UnassignPrivateIpAddressesRequest generates a "aws/request.Request" representing the // client's request for the UnassignPrivateIpAddresses operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UnassignPrivateIpAddresses for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UnassignPrivateIpAddresses method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UnassignPrivateIpAddressesRequest method. // req, resp := client.UnassignPrivateIpAddressesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) UnassignPrivateIpAddressesRequest(input *UnassignPrivateIpAddressesInput) (req *request.Request, output *UnassignPrivateIpAddressesOutput) { op := &request.Operation{ Name: opUnassignPrivateIpAddresses, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UnassignPrivateIpAddressesInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UnassignPrivateIpAddressesOutput{} req.Data = output return } // UnassignPrivateIpAddresses API operation for Amazon Elastic Compute Cloud. // // Unassigns one or more secondary private IP addresses from a network interface. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation UnassignPrivateIpAddresses for usage and error information. func (c *EC2) UnassignPrivateIpAddresses(input *UnassignPrivateIpAddressesInput) (*UnassignPrivateIpAddressesOutput, error) { req, out := c.UnassignPrivateIpAddressesRequest(input) err := req.Send() return out, err } const opUnmonitorInstances = "UnmonitorInstances" // UnmonitorInstancesRequest generates a "aws/request.Request" representing the // client's request for the UnmonitorInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UnmonitorInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UnmonitorInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UnmonitorInstancesRequest method. // req, resp := client.UnmonitorInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EC2) UnmonitorInstancesRequest(input *UnmonitorInstancesInput) (req *request.Request, output *UnmonitorInstancesOutput) { op := &request.Operation{ Name: opUnmonitorInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UnmonitorInstancesInput{} } req = c.newRequest(op, input, output) output = &UnmonitorInstancesOutput{} req.Data = output return } // UnmonitorInstances API operation for Amazon Elastic Compute Cloud. // // Disables monitoring for a running instance. For more information about monitoring // instances, see Monitoring Your Instances and Volumes (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-cloudwatch.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Compute Cloud's // API operation UnmonitorInstances for usage and error information. func (c *EC2) UnmonitorInstances(input *UnmonitorInstancesInput) (*UnmonitorInstancesOutput, error) { req, out := c.UnmonitorInstancesRequest(input) err := req.Send() return out, err } // Contains the parameters for accepting the quote. type AcceptReservedInstancesExchangeQuoteInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // The IDs of the Convertible Reserved Instances that you want to exchange for // other Convertible Reserved Instances of the same or higher value. // // ReservedInstanceIds is a required field ReservedInstanceIds []*string `locationName:"ReservedInstanceId" locationNameList:"ReservedInstanceId" type:"list" required:"true"` // The configurations of the Convertible Reserved Instance offerings you are // purchasing in this exchange. TargetConfigurations []*TargetConfigurationRequest `locationName:"TargetConfiguration" locationNameList:"TargetConfigurationRequest" type:"list"` } // String returns the string representation func (s AcceptReservedInstancesExchangeQuoteInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AcceptReservedInstancesExchangeQuoteInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AcceptReservedInstancesExchangeQuoteInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AcceptReservedInstancesExchangeQuoteInput"} if s.ReservedInstanceIds == nil { invalidParams.Add(request.NewErrParamRequired("ReservedInstanceIds")) } if s.TargetConfigurations != nil { for i, v := range s.TargetConfigurations { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TargetConfigurations", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of the exchange and whether it was successful. type AcceptReservedInstancesExchangeQuoteOutput struct { _ struct{} `type:"structure"` // The ID of the successful exchange. ExchangeId *string `locationName:"exchangeId" type:"string"` } // String returns the string representation func (s AcceptReservedInstancesExchangeQuoteOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AcceptReservedInstancesExchangeQuoteOutput) GoString() string { return s.String() } // Contains the parameters for AcceptVpcPeeringConnection. type AcceptVpcPeeringConnectionInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the VPC peering connection. VpcPeeringConnectionId *string `locationName:"vpcPeeringConnectionId" type:"string"` } // String returns the string representation func (s AcceptVpcPeeringConnectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AcceptVpcPeeringConnectionInput) GoString() string { return s.String() } // Contains the output of AcceptVpcPeeringConnection. type AcceptVpcPeeringConnectionOutput struct { _ struct{} `type:"structure"` // Information about the VPC peering connection. VpcPeeringConnection *VpcPeeringConnection `locationName:"vpcPeeringConnection" type:"structure"` } // String returns the string representation func (s AcceptVpcPeeringConnectionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AcceptVpcPeeringConnectionOutput) GoString() string { return s.String() } // Describes an account attribute. type AccountAttribute struct { _ struct{} `type:"structure"` // The name of the account attribute. AttributeName *string `locationName:"attributeName" type:"string"` // One or more values for the account attribute. AttributeValues []*AccountAttributeValue `locationName:"attributeValueSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s AccountAttribute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AccountAttribute) GoString() string { return s.String() } // Describes a value of an account attribute. type AccountAttributeValue struct { _ struct{} `type:"structure"` // The value of the attribute. AttributeValue *string `locationName:"attributeValue" type:"string"` } // String returns the string representation func (s AccountAttributeValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AccountAttributeValue) GoString() string { return s.String() } // Describes a running instance in a Spot fleet. type ActiveInstance struct { _ struct{} `type:"structure"` // The ID of the instance. InstanceId *string `locationName:"instanceId" type:"string"` // The instance type. InstanceType *string `locationName:"instanceType" type:"string"` // The ID of the Spot instance request. SpotInstanceRequestId *string `locationName:"spotInstanceRequestId" type:"string"` } // String returns the string representation func (s ActiveInstance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActiveInstance) GoString() string { return s.String() } // Describes an Elastic IP address. type Address struct { _ struct{} `type:"structure"` // The ID representing the allocation of the address for use with EC2-VPC. AllocationId *string `locationName:"allocationId" type:"string"` // The ID representing the association of the address with an instance in a // VPC. AssociationId *string `locationName:"associationId" type:"string"` // Indicates whether this Elastic IP address is for use with instances in EC2-Classic // (standard) or instances in a VPC (vpc). Domain *string `locationName:"domain" type:"string" enum:"DomainType"` // The ID of the instance that the address is associated with (if any). InstanceId *string `locationName:"instanceId" type:"string"` // The ID of the network interface. NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string"` // The ID of the AWS account that owns the network interface. NetworkInterfaceOwnerId *string `locationName:"networkInterfaceOwnerId" type:"string"` // The private IP address associated with the Elastic IP address. PrivateIpAddress *string `locationName:"privateIpAddress" type:"string"` // The Elastic IP address. PublicIp *string `locationName:"publicIp" type:"string"` } // String returns the string representation func (s Address) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Address) GoString() string { return s.String() } // Contains the parameters for AllocateAddress. type AllocateAddressInput struct { _ struct{} `type:"structure"` // Set to vpc to allocate the address for use with instances in a VPC. // // Default: The address is for use with instances in EC2-Classic. Domain *string `type:"string" enum:"DomainType"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` } // String returns the string representation func (s AllocateAddressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AllocateAddressInput) GoString() string { return s.String() } // Contains the output of AllocateAddress. type AllocateAddressOutput struct { _ struct{} `type:"structure"` // [EC2-VPC] The ID that AWS assigns to represent the allocation of the Elastic // IP address for use with instances in a VPC. AllocationId *string `locationName:"allocationId" type:"string"` // Indicates whether this Elastic IP address is for use with instances in EC2-Classic // (standard) or instances in a VPC (vpc). Domain *string `locationName:"domain" type:"string" enum:"DomainType"` // The Elastic IP address. PublicIp *string `locationName:"publicIp" type:"string"` } // String returns the string representation func (s AllocateAddressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AllocateAddressOutput) GoString() string { return s.String() } // Contains the parameters for AllocateHosts. type AllocateHostsInput struct { _ struct{} `type:"structure"` // This is enabled by default. This property allows instances to be automatically // placed onto available Dedicated Hosts, when you are launching instances without // specifying a host ID. // // Default: Enabled AutoPlacement *string `locationName:"autoPlacement" type:"string" enum:"AutoPlacement"` // The Availability Zone for the Dedicated Hosts. // // AvailabilityZone is a required field AvailabilityZone *string `locationName:"availabilityZone" type:"string" required:"true"` // Unique, case-sensitive identifier you provide to ensure idempotency of the // request. For more information, see How to Ensure Idempotency (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html) // in the Amazon Elastic Compute Cloud User Guide. ClientToken *string `locationName:"clientToken" type:"string"` // Specify the instance type that you want your Dedicated Hosts to be configured // for. When you specify the instance type, that is the only instance type that // you can launch onto that host. // // InstanceType is a required field InstanceType *string `locationName:"instanceType" type:"string" required:"true"` // The number of Dedicated Hosts you want to allocate to your account with these // parameters. // // Quantity is a required field Quantity *int64 `locationName:"quantity" type:"integer" required:"true"` } // String returns the string representation func (s AllocateHostsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AllocateHostsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AllocateHostsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AllocateHostsInput"} if s.AvailabilityZone == nil { invalidParams.Add(request.NewErrParamRequired("AvailabilityZone")) } if s.InstanceType == nil { invalidParams.Add(request.NewErrParamRequired("InstanceType")) } if s.Quantity == nil { invalidParams.Add(request.NewErrParamRequired("Quantity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of AllocateHosts. type AllocateHostsOutput struct { _ struct{} `type:"structure"` // The ID of the allocated Dedicated Host. This is used when you want to launch // an instance onto a specific host. HostIds []*string `locationName:"hostIdSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s AllocateHostsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AllocateHostsOutput) GoString() string { return s.String() } // Contains the parameters for AssignPrivateIpAddresses. type AssignPrivateIpAddressesInput struct { _ struct{} `type:"structure"` // Indicates whether to allow an IP address that is already assigned to another // network interface or instance to be reassigned to the specified network interface. AllowReassignment *bool `locationName:"allowReassignment" type:"boolean"` // The ID of the network interface. // // NetworkInterfaceId is a required field NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string" required:"true"` // One or more IP addresses to be assigned as a secondary private IP address // to the network interface. You can't specify this parameter when also specifying // a number of secondary IP addresses. // // If you don't specify an IP address, Amazon EC2 automatically selects an IP // address within the subnet range. PrivateIpAddresses []*string `locationName:"privateIpAddress" locationNameList:"PrivateIpAddress" type:"list"` // The number of secondary IP addresses to assign to the network interface. // You can't specify this parameter when also specifying private IP addresses. SecondaryPrivateIpAddressCount *int64 `locationName:"secondaryPrivateIpAddressCount" type:"integer"` } // String returns the string representation func (s AssignPrivateIpAddressesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssignPrivateIpAddressesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssignPrivateIpAddressesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssignPrivateIpAddressesInput"} if s.NetworkInterfaceId == nil { invalidParams.Add(request.NewErrParamRequired("NetworkInterfaceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AssignPrivateIpAddressesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AssignPrivateIpAddressesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssignPrivateIpAddressesOutput) GoString() string { return s.String() } // Contains the parameters for AssociateAddress. type AssociateAddressInput struct { _ struct{} `type:"structure"` // [EC2-VPC] The allocation ID. This is required for EC2-VPC. AllocationId *string `type:"string"` // [EC2-VPC] For a VPC in an EC2-Classic account, specify true to allow an Elastic // IP address that is already associated with an instance or network interface // to be reassociated with the specified instance or network interface. Otherwise, // the operation fails. In a VPC in an EC2-VPC-only account, reassociation is // automatic, therefore you can specify false to ensure the operation fails // if the Elastic IP address is already associated with another resource. AllowReassociation *bool `locationName:"allowReassociation" type:"boolean"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the instance. This is required for EC2-Classic. For EC2-VPC, you // can specify either the instance ID or the network interface ID, but not both. // The operation fails if you specify an instance ID unless exactly one network // interface is attached. InstanceId *string `type:"string"` // [EC2-VPC] The ID of the network interface. If the instance has more than // one network interface, you must specify a network interface ID. NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string"` // [EC2-VPC] The primary or secondary private IP address to associate with the // Elastic IP address. If no private IP address is specified, the Elastic IP // address is associated with the primary private IP address. PrivateIpAddress *string `locationName:"privateIpAddress" type:"string"` // The Elastic IP address. This is required for EC2-Classic. PublicIp *string `type:"string"` } // String returns the string representation func (s AssociateAddressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociateAddressInput) GoString() string { return s.String() } // Contains the output of AssociateAddress. type AssociateAddressOutput struct { _ struct{} `type:"structure"` // [EC2-VPC] The ID that represents the association of the Elastic IP address // with an instance. AssociationId *string `locationName:"associationId" type:"string"` } // String returns the string representation func (s AssociateAddressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociateAddressOutput) GoString() string { return s.String() } // Contains the parameters for AssociateDhcpOptions. type AssociateDhcpOptionsInput struct { _ struct{} `type:"structure"` // The ID of the DHCP options set, or default to associate no DHCP options with // the VPC. // // DhcpOptionsId is a required field DhcpOptionsId *string `type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the VPC. // // VpcId is a required field VpcId *string `type:"string" required:"true"` } // String returns the string representation func (s AssociateDhcpOptionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociateDhcpOptionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssociateDhcpOptionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssociateDhcpOptionsInput"} if s.DhcpOptionsId == nil { invalidParams.Add(request.NewErrParamRequired("DhcpOptionsId")) } if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AssociateDhcpOptionsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AssociateDhcpOptionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociateDhcpOptionsOutput) GoString() string { return s.String() } // Contains the parameters for AssociateRouteTable. type AssociateRouteTableInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the route table. // // RouteTableId is a required field RouteTableId *string `locationName:"routeTableId" type:"string" required:"true"` // The ID of the subnet. // // SubnetId is a required field SubnetId *string `locationName:"subnetId" type:"string" required:"true"` } // String returns the string representation func (s AssociateRouteTableInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociateRouteTableInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssociateRouteTableInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssociateRouteTableInput"} if s.RouteTableId == nil { invalidParams.Add(request.NewErrParamRequired("RouteTableId")) } if s.SubnetId == nil { invalidParams.Add(request.NewErrParamRequired("SubnetId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of AssociateRouteTable. type AssociateRouteTableOutput struct { _ struct{} `type:"structure"` // The route table association ID (needed to disassociate the route table). AssociationId *string `locationName:"associationId" type:"string"` } // String returns the string representation func (s AssociateRouteTableOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociateRouteTableOutput) GoString() string { return s.String() } // Contains the parameters for AttachClassicLinkVpc. type AttachClassicLinkVpcInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of one or more of the VPC's security groups. You cannot specify security // groups from a different VPC. // // Groups is a required field Groups []*string `locationName:"SecurityGroupId" locationNameList:"groupId" type:"list" required:"true"` // The ID of an EC2-Classic instance to link to the ClassicLink-enabled VPC. // // InstanceId is a required field InstanceId *string `locationName:"instanceId" type:"string" required:"true"` // The ID of a ClassicLink-enabled VPC. // // VpcId is a required field VpcId *string `locationName:"vpcId" type:"string" required:"true"` } // String returns the string representation func (s AttachClassicLinkVpcInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachClassicLinkVpcInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttachClassicLinkVpcInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttachClassicLinkVpcInput"} if s.Groups == nil { invalidParams.Add(request.NewErrParamRequired("Groups")) } if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of AttachClassicLinkVpc. type AttachClassicLinkVpcOutput struct { _ struct{} `type:"structure"` // Returns true if the request succeeds; otherwise, it returns an error. Return *bool `locationName:"return" type:"boolean"` } // String returns the string representation func (s AttachClassicLinkVpcOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachClassicLinkVpcOutput) GoString() string { return s.String() } // Contains the parameters for AttachInternetGateway. type AttachInternetGatewayInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the Internet gateway. // // InternetGatewayId is a required field InternetGatewayId *string `locationName:"internetGatewayId" type:"string" required:"true"` // The ID of the VPC. // // VpcId is a required field VpcId *string `locationName:"vpcId" type:"string" required:"true"` } // String returns the string representation func (s AttachInternetGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachInternetGatewayInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttachInternetGatewayInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttachInternetGatewayInput"} if s.InternetGatewayId == nil { invalidParams.Add(request.NewErrParamRequired("InternetGatewayId")) } if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AttachInternetGatewayOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AttachInternetGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachInternetGatewayOutput) GoString() string { return s.String() } // Contains the parameters for AttachNetworkInterface. type AttachNetworkInterfaceInput struct { _ struct{} `type:"structure"` // The index of the device for the network interface attachment. // // DeviceIndex is a required field DeviceIndex *int64 `locationName:"deviceIndex" type:"integer" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the instance. // // InstanceId is a required field InstanceId *string `locationName:"instanceId" type:"string" required:"true"` // The ID of the network interface. // // NetworkInterfaceId is a required field NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string" required:"true"` } // String returns the string representation func (s AttachNetworkInterfaceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachNetworkInterfaceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttachNetworkInterfaceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttachNetworkInterfaceInput"} if s.DeviceIndex == nil { invalidParams.Add(request.NewErrParamRequired("DeviceIndex")) } if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if s.NetworkInterfaceId == nil { invalidParams.Add(request.NewErrParamRequired("NetworkInterfaceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of AttachNetworkInterface. type AttachNetworkInterfaceOutput struct { _ struct{} `type:"structure"` // The ID of the network interface attachment. AttachmentId *string `locationName:"attachmentId" type:"string"` } // String returns the string representation func (s AttachNetworkInterfaceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachNetworkInterfaceOutput) GoString() string { return s.String() } // Contains the parameters for AttachVolume. type AttachVolumeInput struct { _ struct{} `type:"structure"` // The device name to expose to the instance (for example, /dev/sdh or xvdh). // // Device is a required field Device *string `type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the instance. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` // The ID of the EBS volume. The volume and instance must be within the same // Availability Zone. // // VolumeId is a required field VolumeId *string `type:"string" required:"true"` } // String returns the string representation func (s AttachVolumeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachVolumeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttachVolumeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttachVolumeInput"} if s.Device == nil { invalidParams.Add(request.NewErrParamRequired("Device")) } if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if s.VolumeId == nil { invalidParams.Add(request.NewErrParamRequired("VolumeId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for AttachVpnGateway. type AttachVpnGatewayInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the VPC. // // VpcId is a required field VpcId *string `type:"string" required:"true"` // The ID of the virtual private gateway. // // VpnGatewayId is a required field VpnGatewayId *string `type:"string" required:"true"` } // String returns the string representation func (s AttachVpnGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachVpnGatewayInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttachVpnGatewayInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttachVpnGatewayInput"} if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if s.VpnGatewayId == nil { invalidParams.Add(request.NewErrParamRequired("VpnGatewayId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of AttachVpnGateway. type AttachVpnGatewayOutput struct { _ struct{} `type:"structure"` // Information about the attachment. VpcAttachment *VpcAttachment `locationName:"attachment" type:"structure"` } // String returns the string representation func (s AttachVpnGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachVpnGatewayOutput) GoString() string { return s.String() } // Describes a value for a resource attribute that is a Boolean value. type AttributeBooleanValue struct { _ struct{} `type:"structure"` // The attribute value. The valid values are true or false. Value *bool `locationName:"value" type:"boolean"` } // String returns the string representation func (s AttributeBooleanValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttributeBooleanValue) GoString() string { return s.String() } // Describes a value for a resource attribute that is a String. type AttributeValue struct { _ struct{} `type:"structure"` // The attribute value. Note that the value is case-sensitive. Value *string `locationName:"value" type:"string"` } // String returns the string representation func (s AttributeValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttributeValue) GoString() string { return s.String() } // Contains the parameters for AuthorizeSecurityGroupEgress. type AuthorizeSecurityGroupEgressInput struct { _ struct{} `type:"structure"` // The CIDR IP address range. We recommend that you specify the CIDR range in // a set of IP permissions instead. CidrIp *string `locationName:"cidrIp" type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The start of port range for the TCP and UDP protocols, or an ICMP type number. // We recommend that you specify the port range in a set of IP permissions instead. FromPort *int64 `locationName:"fromPort" type:"integer"` // The ID of the security group. // // GroupId is a required field GroupId *string `locationName:"groupId" type:"string" required:"true"` // A set of IP permissions. You can't specify a destination security group and // a CIDR IP address range. IpPermissions []*IpPermission `locationName:"ipPermissions" locationNameList:"item" type:"list"` // The IP protocol name or number. We recommend that you specify the protocol // in a set of IP permissions instead. IpProtocol *string `locationName:"ipProtocol" type:"string"` // The name of a destination security group. To authorize outbound access to // a destination security group, we recommend that you use a set of IP permissions // instead. SourceSecurityGroupName *string `locationName:"sourceSecurityGroupName" type:"string"` // The AWS account number for a destination security group. To authorize outbound // access to a destination security group, we recommend that you use a set of // IP permissions instead. SourceSecurityGroupOwnerId *string `locationName:"sourceSecurityGroupOwnerId" type:"string"` // The end of port range for the TCP and UDP protocols, or an ICMP type number. // We recommend that you specify the port range in a set of IP permissions instead. ToPort *int64 `locationName:"toPort" type:"integer"` } // String returns the string representation func (s AuthorizeSecurityGroupEgressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AuthorizeSecurityGroupEgressInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AuthorizeSecurityGroupEgressInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AuthorizeSecurityGroupEgressInput"} if s.GroupId == nil { invalidParams.Add(request.NewErrParamRequired("GroupId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AuthorizeSecurityGroupEgressOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AuthorizeSecurityGroupEgressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AuthorizeSecurityGroupEgressOutput) GoString() string { return s.String() } // Contains the parameters for AuthorizeSecurityGroupIngress. type AuthorizeSecurityGroupIngressInput struct { _ struct{} `type:"structure"` // The CIDR IP address range. You can't specify this parameter when specifying // a source security group. CidrIp *string `type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The start of port range for the TCP and UDP protocols, or an ICMP type number. // For the ICMP type number, use -1 to specify all ICMP types. FromPort *int64 `type:"integer"` // The ID of the security group. Required for a nondefault VPC. GroupId *string `type:"string"` // [EC2-Classic, default VPC] The name of the security group. GroupName *string `type:"string"` // A set of IP permissions. Can be used to specify multiple rules in a single // command. IpPermissions []*IpPermission `locationNameList:"item" type:"list"` // The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers (http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml)). // (VPC only) Use -1 to specify all traffic. If you specify -1, traffic on all // ports is allowed, regardless of any ports you specify. IpProtocol *string `type:"string"` // [EC2-Classic, default VPC] The name of the source security group. You can't // specify this parameter in combination with the following parameters: the // CIDR IP address range, the start of the port range, the IP protocol, and // the end of the port range. Creates rules that grant full ICMP, UDP, and TCP // access. To create a rule with a specific IP protocol and port range, use // a set of IP permissions instead. For EC2-VPC, the source security group must // be in the same VPC. SourceSecurityGroupName *string `type:"string"` // [EC2-Classic] The AWS account number for the source security group, if the // source security group is in a different account. You can't specify this parameter // in combination with the following parameters: the CIDR IP address range, // the IP protocol, the start of the port range, and the end of the port range. // Creates rules that grant full ICMP, UDP, and TCP access. To create a rule // with a specific IP protocol and port range, use a set of IP permissions instead. SourceSecurityGroupOwnerId *string `type:"string"` // The end of port range for the TCP and UDP protocols, or an ICMP code number. // For the ICMP code number, use -1 to specify all ICMP codes for the ICMP type. ToPort *int64 `type:"integer"` } // String returns the string representation func (s AuthorizeSecurityGroupIngressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AuthorizeSecurityGroupIngressInput) GoString() string { return s.String() } type AuthorizeSecurityGroupIngressOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AuthorizeSecurityGroupIngressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AuthorizeSecurityGroupIngressOutput) GoString() string { return s.String() } // Describes an Availability Zone. type AvailabilityZone struct { _ struct{} `type:"structure"` // Any messages about the Availability Zone. Messages []*AvailabilityZoneMessage `locationName:"messageSet" locationNameList:"item" type:"list"` // The name of the region. RegionName *string `locationName:"regionName" type:"string"` // The state of the Availability Zone. State *string `locationName:"zoneState" type:"string" enum:"AvailabilityZoneState"` // The name of the Availability Zone. ZoneName *string `locationName:"zoneName" type:"string"` } // String returns the string representation func (s AvailabilityZone) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AvailabilityZone) GoString() string { return s.String() } // Describes a message about an Availability Zone. type AvailabilityZoneMessage struct { _ struct{} `type:"structure"` // The message about the Availability Zone. Message *string `locationName:"message" type:"string"` } // String returns the string representation func (s AvailabilityZoneMessage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AvailabilityZoneMessage) GoString() string { return s.String() } // The capacity information for instances launched onto the Dedicated Host. type AvailableCapacity struct { _ struct{} `type:"structure"` // The total number of instances that the Dedicated Host supports. AvailableInstanceCapacity []*InstanceCapacity `locationName:"availableInstanceCapacity" locationNameList:"item" type:"list"` // The number of vCPUs available on the Dedicated Host. AvailableVCpus *int64 `locationName:"availableVCpus" type:"integer"` } // String returns the string representation func (s AvailableCapacity) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AvailableCapacity) GoString() string { return s.String() } type BlobAttributeValue struct { _ struct{} `type:"structure"` // Value is automatically base64 encoded/decoded by the SDK. Value []byte `locationName:"value" type:"blob"` } // String returns the string representation func (s BlobAttributeValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BlobAttributeValue) GoString() string { return s.String() } // Describes a block device mapping. type BlockDeviceMapping struct { _ struct{} `type:"structure"` // The device name exposed to the instance (for example, /dev/sdh or xvdh). DeviceName *string `locationName:"deviceName" type:"string"` // Parameters used to automatically set up EBS volumes when the instance is // launched. Ebs *EbsBlockDevice `locationName:"ebs" type:"structure"` // Suppresses the specified device included in the block device mapping of the // AMI. NoDevice *string `locationName:"noDevice" type:"string"` // The virtual device name (ephemeralN). Instance store volumes are numbered // starting from 0. An instance type with 2 available instance store volumes // can specify mappings for ephemeral0 and ephemeral1.The number of available // instance store volumes depends on the instance type. After you connect to // the instance, you must mount the volume. // // Constraints: For M3 instances, you must specify instance store volumes in // the block device mapping for the instance. When you launch an M3 instance, // we ignore any instance store volumes specified in the block device mapping // for the AMI. VirtualName *string `locationName:"virtualName" type:"string"` } // String returns the string representation func (s BlockDeviceMapping) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BlockDeviceMapping) GoString() string { return s.String() } // Contains the parameters for BundleInstance. type BundleInstanceInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the instance to bundle. // // Type: String // // Default: None // // Required: Yes // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` // The bucket in which to store the AMI. You can specify a bucket that you already // own or a new bucket that Amazon EC2 creates on your behalf. If you specify // a bucket that belongs to someone else, Amazon EC2 returns an error. // // Storage is a required field Storage *Storage `type:"structure" required:"true"` } // String returns the string representation func (s BundleInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BundleInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BundleInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BundleInstanceInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if s.Storage == nil { invalidParams.Add(request.NewErrParamRequired("Storage")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of BundleInstance. type BundleInstanceOutput struct { _ struct{} `type:"structure"` // Information about the bundle task. BundleTask *BundleTask `locationName:"bundleInstanceTask" type:"structure"` } // String returns the string representation func (s BundleInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BundleInstanceOutput) GoString() string { return s.String() } // Describes a bundle task. type BundleTask struct { _ struct{} `type:"structure"` // The ID of the bundle task. BundleId *string `locationName:"bundleId" type:"string"` // If the task fails, a description of the error. BundleTaskError *BundleTaskError `locationName:"error" type:"structure"` // The ID of the instance associated with this bundle task. InstanceId *string `locationName:"instanceId" type:"string"` // The level of task completion, as a percent (for example, 20%). Progress *string `locationName:"progress" type:"string"` // The time this task started. StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"iso8601"` // The state of the task. State *string `locationName:"state" type:"string" enum:"BundleTaskState"` // The Amazon S3 storage locations. Storage *Storage `locationName:"storage" type:"structure"` // The time of the most recent update for the task. UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s BundleTask) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BundleTask) GoString() string { return s.String() } // Describes an error for BundleInstance. type BundleTaskError struct { _ struct{} `type:"structure"` // The error code. Code *string `locationName:"code" type:"string"` // The error message. Message *string `locationName:"message" type:"string"` } // String returns the string representation func (s BundleTaskError) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BundleTaskError) GoString() string { return s.String() } // Contains the parameters for CancelBundleTask. type CancelBundleTaskInput struct { _ struct{} `type:"structure"` // The ID of the bundle task. // // BundleId is a required field BundleId *string `type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` } // String returns the string representation func (s CancelBundleTaskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelBundleTaskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CancelBundleTaskInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelBundleTaskInput"} if s.BundleId == nil { invalidParams.Add(request.NewErrParamRequired("BundleId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CancelBundleTask. type CancelBundleTaskOutput struct { _ struct{} `type:"structure"` // Information about the bundle task. BundleTask *BundleTask `locationName:"bundleInstanceTask" type:"structure"` } // String returns the string representation func (s CancelBundleTaskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelBundleTaskOutput) GoString() string { return s.String() } // Contains the parameters for CancelConversionTask. type CancelConversionTaskInput struct { _ struct{} `type:"structure"` // The ID of the conversion task. // // ConversionTaskId is a required field ConversionTaskId *string `locationName:"conversionTaskId" type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The reason for canceling the conversion task. ReasonMessage *string `locationName:"reasonMessage" type:"string"` } // String returns the string representation func (s CancelConversionTaskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelConversionTaskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CancelConversionTaskInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelConversionTaskInput"} if s.ConversionTaskId == nil { invalidParams.Add(request.NewErrParamRequired("ConversionTaskId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CancelConversionTaskOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CancelConversionTaskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelConversionTaskOutput) GoString() string { return s.String() } // Contains the parameters for CancelExportTask. type CancelExportTaskInput struct { _ struct{} `type:"structure"` // The ID of the export task. This is the ID returned by CreateInstanceExportTask. // // ExportTaskId is a required field ExportTaskId *string `locationName:"exportTaskId" type:"string" required:"true"` } // String returns the string representation func (s CancelExportTaskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelExportTaskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CancelExportTaskInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelExportTaskInput"} if s.ExportTaskId == nil { invalidParams.Add(request.NewErrParamRequired("ExportTaskId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CancelExportTaskOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CancelExportTaskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelExportTaskOutput) GoString() string { return s.String() } // Contains the parameters for CancelImportTask. type CancelImportTaskInput struct { _ struct{} `type:"structure"` // The reason for canceling the task. CancelReason *string `type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // The ID of the import image or import snapshot task to be canceled. ImportTaskId *string `type:"string"` } // String returns the string representation func (s CancelImportTaskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelImportTaskInput) GoString() string { return s.String() } // Contains the output for CancelImportTask. type CancelImportTaskOutput struct { _ struct{} `type:"structure"` // The ID of the task being canceled. ImportTaskId *string `locationName:"importTaskId" type:"string"` // The current state of the task being canceled. PreviousState *string `locationName:"previousState" type:"string"` // The current state of the task being canceled. State *string `locationName:"state" type:"string"` } // String returns the string representation func (s CancelImportTaskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelImportTaskOutput) GoString() string { return s.String() } // Contains the parameters for CancelReservedInstancesListing. type CancelReservedInstancesListingInput struct { _ struct{} `type:"structure"` // The ID of the Reserved Instance listing. // // ReservedInstancesListingId is a required field ReservedInstancesListingId *string `locationName:"reservedInstancesListingId" type:"string" required:"true"` } // String returns the string representation func (s CancelReservedInstancesListingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelReservedInstancesListingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CancelReservedInstancesListingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelReservedInstancesListingInput"} if s.ReservedInstancesListingId == nil { invalidParams.Add(request.NewErrParamRequired("ReservedInstancesListingId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CancelReservedInstancesListing. type CancelReservedInstancesListingOutput struct { _ struct{} `type:"structure"` // The Reserved Instance listing. ReservedInstancesListings []*ReservedInstancesListing `locationName:"reservedInstancesListingsSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s CancelReservedInstancesListingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelReservedInstancesListingOutput) GoString() string { return s.String() } // Describes a Spot fleet error. type CancelSpotFleetRequestsError struct { _ struct{} `type:"structure"` // The error code. // // Code is a required field Code *string `locationName:"code" type:"string" required:"true" enum:"CancelBatchErrorCode"` // The description for the error code. // // Message is a required field Message *string `locationName:"message" type:"string" required:"true"` } // String returns the string representation func (s CancelSpotFleetRequestsError) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelSpotFleetRequestsError) GoString() string { return s.String() } // Describes a Spot fleet request that was not successfully canceled. type CancelSpotFleetRequestsErrorItem struct { _ struct{} `type:"structure"` // The error. // // Error is a required field Error *CancelSpotFleetRequestsError `locationName:"error" type:"structure" required:"true"` // The ID of the Spot fleet request. // // SpotFleetRequestId is a required field SpotFleetRequestId *string `locationName:"spotFleetRequestId" type:"string" required:"true"` } // String returns the string representation func (s CancelSpotFleetRequestsErrorItem) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelSpotFleetRequestsErrorItem) GoString() string { return s.String() } // Contains the parameters for CancelSpotFleetRequests. type CancelSpotFleetRequestsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The IDs of the Spot fleet requests. // // SpotFleetRequestIds is a required field SpotFleetRequestIds []*string `locationName:"spotFleetRequestId" locationNameList:"item" type:"list" required:"true"` // Indicates whether to terminate instances for a Spot fleet request if it is // canceled successfully. // // TerminateInstances is a required field TerminateInstances *bool `locationName:"terminateInstances" type:"boolean" required:"true"` } // String returns the string representation func (s CancelSpotFleetRequestsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelSpotFleetRequestsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CancelSpotFleetRequestsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelSpotFleetRequestsInput"} if s.SpotFleetRequestIds == nil { invalidParams.Add(request.NewErrParamRequired("SpotFleetRequestIds")) } if s.TerminateInstances == nil { invalidParams.Add(request.NewErrParamRequired("TerminateInstances")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CancelSpotFleetRequests. type CancelSpotFleetRequestsOutput struct { _ struct{} `type:"structure"` // Information about the Spot fleet requests that are successfully canceled. SuccessfulFleetRequests []*CancelSpotFleetRequestsSuccessItem `locationName:"successfulFleetRequestSet" locationNameList:"item" type:"list"` // Information about the Spot fleet requests that are not successfully canceled. UnsuccessfulFleetRequests []*CancelSpotFleetRequestsErrorItem `locationName:"unsuccessfulFleetRequestSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s CancelSpotFleetRequestsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelSpotFleetRequestsOutput) GoString() string { return s.String() } // Describes a Spot fleet request that was successfully canceled. type CancelSpotFleetRequestsSuccessItem struct { _ struct{} `type:"structure"` // The current state of the Spot fleet request. // // CurrentSpotFleetRequestState is a required field CurrentSpotFleetRequestState *string `locationName:"currentSpotFleetRequestState" type:"string" required:"true" enum:"BatchState"` // The previous state of the Spot fleet request. // // PreviousSpotFleetRequestState is a required field PreviousSpotFleetRequestState *string `locationName:"previousSpotFleetRequestState" type:"string" required:"true" enum:"BatchState"` // The ID of the Spot fleet request. // // SpotFleetRequestId is a required field SpotFleetRequestId *string `locationName:"spotFleetRequestId" type:"string" required:"true"` } // String returns the string representation func (s CancelSpotFleetRequestsSuccessItem) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelSpotFleetRequestsSuccessItem) GoString() string { return s.String() } // Contains the parameters for CancelSpotInstanceRequests. type CancelSpotInstanceRequestsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more Spot instance request IDs. // // SpotInstanceRequestIds is a required field SpotInstanceRequestIds []*string `locationName:"SpotInstanceRequestId" locationNameList:"SpotInstanceRequestId" type:"list" required:"true"` } // String returns the string representation func (s CancelSpotInstanceRequestsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelSpotInstanceRequestsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CancelSpotInstanceRequestsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelSpotInstanceRequestsInput"} if s.SpotInstanceRequestIds == nil { invalidParams.Add(request.NewErrParamRequired("SpotInstanceRequestIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CancelSpotInstanceRequests. type CancelSpotInstanceRequestsOutput struct { _ struct{} `type:"structure"` // One or more Spot instance requests. CancelledSpotInstanceRequests []*CancelledSpotInstanceRequest `locationName:"spotInstanceRequestSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s CancelSpotInstanceRequestsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelSpotInstanceRequestsOutput) GoString() string { return s.String() } // Describes a request to cancel a Spot instance. type CancelledSpotInstanceRequest struct { _ struct{} `type:"structure"` // The ID of the Spot instance request. SpotInstanceRequestId *string `locationName:"spotInstanceRequestId" type:"string"` // The state of the Spot instance request. State *string `locationName:"state" type:"string" enum:"CancelSpotInstanceRequestState"` } // String returns the string representation func (s CancelledSpotInstanceRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelledSpotInstanceRequest) GoString() string { return s.String() } // Describes the ClassicLink DNS support status of a VPC. type ClassicLinkDnsSupport struct { _ struct{} `type:"structure"` // Indicates whether ClassicLink DNS support is enabled for the VPC. ClassicLinkDnsSupported *bool `locationName:"classicLinkDnsSupported" type:"boolean"` // The ID of the VPC. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s ClassicLinkDnsSupport) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClassicLinkDnsSupport) GoString() string { return s.String() } // Describes a linked EC2-Classic instance. type ClassicLinkInstance struct { _ struct{} `type:"structure"` // A list of security groups. Groups []*GroupIdentifier `locationName:"groupSet" locationNameList:"item" type:"list"` // The ID of the instance. InstanceId *string `locationName:"instanceId" type:"string"` // Any tags assigned to the instance. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // The ID of the VPC. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s ClassicLinkInstance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClassicLinkInstance) GoString() string { return s.String() } // Describes the client-specific data. type ClientData struct { _ struct{} `type:"structure"` // A user-defined comment about the disk upload. Comment *string `type:"string"` // The time that the disk upload ends. UploadEnd *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The size of the uploaded disk image, in GiB. UploadSize *float64 `type:"double"` // The time that the disk upload starts. UploadStart *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s ClientData) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClientData) GoString() string { return s.String() } // Contains the parameters for ConfirmProductInstance. type ConfirmProductInstanceInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the instance. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` // The product code. This must be a product code that you own. // // ProductCode is a required field ProductCode *string `type:"string" required:"true"` } // String returns the string representation func (s ConfirmProductInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfirmProductInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ConfirmProductInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ConfirmProductInstanceInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if s.ProductCode == nil { invalidParams.Add(request.NewErrParamRequired("ProductCode")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ConfirmProductInstance. type ConfirmProductInstanceOutput struct { _ struct{} `type:"structure"` // The AWS account ID of the instance owner. This is only present if the product // code is attached to the instance. OwnerId *string `locationName:"ownerId" type:"string"` // The return value of the request. Returns true if the specified product code // is owned by the requester and associated with the specified instance. Return *bool `locationName:"return" type:"boolean"` } // String returns the string representation func (s ConfirmProductInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfirmProductInstanceOutput) GoString() string { return s.String() } // Describes a conversion task. type ConversionTask struct { _ struct{} `type:"structure"` // The ID of the conversion task. // // ConversionTaskId is a required field ConversionTaskId *string `locationName:"conversionTaskId" type:"string" required:"true"` // The time when the task expires. If the upload isn't complete before the expiration // time, we automatically cancel the task. ExpirationTime *string `locationName:"expirationTime" type:"string"` // If the task is for importing an instance, this contains information about // the import instance task. ImportInstance *ImportInstanceTaskDetails `locationName:"importInstance" type:"structure"` // If the task is for importing a volume, this contains information about the // import volume task. ImportVolume *ImportVolumeTaskDetails `locationName:"importVolume" type:"structure"` // The state of the conversion task. // // State is a required field State *string `locationName:"state" type:"string" required:"true" enum:"ConversionTaskState"` // The status message related to the conversion task. StatusMessage *string `locationName:"statusMessage" type:"string"` // Any tags assigned to the task. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s ConversionTask) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConversionTask) GoString() string { return s.String() } // Contains the parameters for CopyImage. type CopyImageInput struct { _ struct{} `type:"structure"` // Unique, case-sensitive identifier you provide to ensure idempotency of the // request. For more information, see How to Ensure Idempotency (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html) // in the Amazon Elastic Compute Cloud User Guide. ClientToken *string `type:"string"` // A description for the new AMI in the destination region. Description *string `type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // Specifies whether the destination snapshots of the copied image should be // encrypted. The default CMK for EBS is used unless a non-default AWS Key Management // Service (AWS KMS) CMK is specified with KmsKeyId. For more information, see // Amazon EBS Encryption (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) // in the Amazon Elastic Compute Cloud User Guide. Encrypted *bool `locationName:"encrypted" type:"boolean"` // The full ARN of the AWS Key Management Service (AWS KMS) CMK to use when // encrypting the snapshots of an image during a copy operation. This parameter // is only required if you want to use a non-default CMK; if this parameter // is not specified, the default CMK for EBS is used. The ARN contains the arn:aws:kms // namespace, followed by the region of the CMK, the AWS account ID of the CMK // owner, the key namespace, and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. // The specified CMK must exist in the region that the snapshot is being copied // to. If a KmsKeyId is specified, the Encrypted flag must also be set. KmsKeyId *string `locationName:"kmsKeyId" type:"string"` // The name of the new AMI in the destination region. // // Name is a required field Name *string `type:"string" required:"true"` // The ID of the AMI to copy. // // SourceImageId is a required field SourceImageId *string `type:"string" required:"true"` // The name of the region that contains the AMI to copy. // // SourceRegion is a required field SourceRegion *string `type:"string" required:"true"` } // String returns the string representation func (s CopyImageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyImageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CopyImageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CopyImageInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.SourceImageId == nil { invalidParams.Add(request.NewErrParamRequired("SourceImageId")) } if s.SourceRegion == nil { invalidParams.Add(request.NewErrParamRequired("SourceRegion")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CopyImage. type CopyImageOutput struct { _ struct{} `type:"structure"` // The ID of the new AMI. ImageId *string `locationName:"imageId" type:"string"` } // String returns the string representation func (s CopyImageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyImageOutput) GoString() string { return s.String() } // Contains the parameters for CopySnapshot. type CopySnapshotInput struct { _ struct{} `type:"structure"` // A description for the EBS snapshot. Description *string `type:"string"` // The destination region to use in the PresignedUrl parameter of a snapshot // copy operation. This parameter is only valid for specifying the destination // region in a PresignedUrl parameter, where it is required. // // CopySnapshot sends the snapshot copy to the regional endpoint that you send // the HTTP request to, such as ec2.us-east-1.amazonaws.com (in the AWS CLI, // this is specified with the --region parameter or the default region in your // AWS configuration file). DestinationRegion *string `locationName:"destinationRegion" type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // Specifies whether the destination snapshot should be encrypted. You can encrypt // a copy of an unencrypted snapshot using this flag, but you cannot use it // to create an unencrypted copy from an encrypted snapshot. Your default CMK // for EBS is used unless a non-default AWS Key Management Service (AWS KMS) // CMK is specified with KmsKeyId. For more information, see Amazon EBS Encryption // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) in // the Amazon Elastic Compute Cloud User Guide. Encrypted *bool `locationName:"encrypted" type:"boolean"` // The full ARN of the AWS Key Management Service (AWS KMS) CMK to use when // creating the snapshot copy. This parameter is only required if you want to // use a non-default CMK; if this parameter is not specified, the default CMK // for EBS is used. The ARN contains the arn:aws:kms namespace, followed by // the region of the CMK, the AWS account ID of the CMK owner, the key namespace, // and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. // The specified CMK must exist in the region that the snapshot is being copied // to. If a KmsKeyId is specified, the Encrypted flag must also be set. KmsKeyId *string `locationName:"kmsKeyId" type:"string"` // The pre-signed URL that facilitates copying an encrypted snapshot. This parameter // is only required when copying an encrypted snapshot with the Amazon EC2 Query // API; it is available as an optional parameter in all other cases. The PresignedUrl // should use the snapshot source endpoint, the CopySnapshot action, and include // the SourceRegion, SourceSnapshotId, and DestinationRegion parameters. The // PresignedUrl must be signed using AWS Signature Version 4. Because EBS snapshots // are stored in Amazon S3, the signing algorithm for this parameter uses the // same logic that is described in Authenticating Requests by Using Query Parameters // (AWS Signature Version 4) (http://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html) // in the Amazon Simple Storage Service API Reference. An invalid or improperly // signed PresignedUrl will cause the copy operation to fail asynchronously, // and the snapshot will move to an error state. PresignedUrl *string `locationName:"presignedUrl" type:"string"` // The ID of the region that contains the snapshot to be copied. // // SourceRegion is a required field SourceRegion *string `type:"string" required:"true"` // The ID of the EBS snapshot to copy. // // SourceSnapshotId is a required field SourceSnapshotId *string `type:"string" required:"true"` } // String returns the string representation func (s CopySnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopySnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CopySnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CopySnapshotInput"} if s.SourceRegion == nil { invalidParams.Add(request.NewErrParamRequired("SourceRegion")) } if s.SourceSnapshotId == nil { invalidParams.Add(request.NewErrParamRequired("SourceSnapshotId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CopySnapshot. type CopySnapshotOutput struct { _ struct{} `type:"structure"` // The ID of the new snapshot. SnapshotId *string `locationName:"snapshotId" type:"string"` } // String returns the string representation func (s CopySnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopySnapshotOutput) GoString() string { return s.String() } // Contains the parameters for CreateCustomerGateway. type CreateCustomerGatewayInput struct { _ struct{} `type:"structure"` // For devices that support BGP, the customer gateway's BGP ASN. // // Default: 65000 // // BgpAsn is a required field BgpAsn *int64 `type:"integer" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The Internet-routable IP address for the customer gateway's outside interface. // The address must be static. // // PublicIp is a required field PublicIp *string `locationName:"IpAddress" type:"string" required:"true"` // The type of VPN connection that this customer gateway supports (ipsec.1). // // Type is a required field Type *string `type:"string" required:"true" enum:"GatewayType"` } // String returns the string representation func (s CreateCustomerGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCustomerGatewayInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateCustomerGatewayInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateCustomerGatewayInput"} if s.BgpAsn == nil { invalidParams.Add(request.NewErrParamRequired("BgpAsn")) } if s.PublicIp == nil { invalidParams.Add(request.NewErrParamRequired("PublicIp")) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateCustomerGateway. type CreateCustomerGatewayOutput struct { _ struct{} `type:"structure"` // Information about the customer gateway. CustomerGateway *CustomerGateway `locationName:"customerGateway" type:"structure"` } // String returns the string representation func (s CreateCustomerGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCustomerGatewayOutput) GoString() string { return s.String() } // Contains the parameters for CreateDhcpOptions. type CreateDhcpOptionsInput struct { _ struct{} `type:"structure"` // A DHCP configuration option. // // DhcpConfigurations is a required field DhcpConfigurations []*NewDhcpConfiguration `locationName:"dhcpConfiguration" locationNameList:"item" type:"list" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` } // String returns the string representation func (s CreateDhcpOptionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDhcpOptionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDhcpOptionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDhcpOptionsInput"} if s.DhcpConfigurations == nil { invalidParams.Add(request.NewErrParamRequired("DhcpConfigurations")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateDhcpOptions. type CreateDhcpOptionsOutput struct { _ struct{} `type:"structure"` // A set of DHCP options. DhcpOptions *DhcpOptions `locationName:"dhcpOptions" type:"structure"` } // String returns the string representation func (s CreateDhcpOptionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDhcpOptionsOutput) GoString() string { return s.String() } // Contains the parameters for CreateFlowLogs. type CreateFlowLogsInput struct { _ struct{} `type:"structure"` // Unique, case-sensitive identifier you provide to ensure the idempotency of // the request. For more information, see How to Ensure Idempotency (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html). ClientToken *string `type:"string"` // The ARN for the IAM role that's used to post flow logs to a CloudWatch Logs // log group. // // DeliverLogsPermissionArn is a required field DeliverLogsPermissionArn *string `type:"string" required:"true"` // The name of the CloudWatch log group. // // LogGroupName is a required field LogGroupName *string `type:"string" required:"true"` // One or more subnet, network interface, or VPC IDs. // // Constraints: Maximum of 1000 resources // // ResourceIds is a required field ResourceIds []*string `locationName:"ResourceId" locationNameList:"item" type:"list" required:"true"` // The type of resource on which to create the flow log. // // ResourceType is a required field ResourceType *string `type:"string" required:"true" enum:"FlowLogsResourceType"` // The type of traffic to log. // // TrafficType is a required field TrafficType *string `type:"string" required:"true" enum:"TrafficType"` } // String returns the string representation func (s CreateFlowLogsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateFlowLogsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateFlowLogsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateFlowLogsInput"} if s.DeliverLogsPermissionArn == nil { invalidParams.Add(request.NewErrParamRequired("DeliverLogsPermissionArn")) } if s.LogGroupName == nil { invalidParams.Add(request.NewErrParamRequired("LogGroupName")) } if s.ResourceIds == nil { invalidParams.Add(request.NewErrParamRequired("ResourceIds")) } if s.ResourceType == nil { invalidParams.Add(request.NewErrParamRequired("ResourceType")) } if s.TrafficType == nil { invalidParams.Add(request.NewErrParamRequired("TrafficType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateFlowLogs. type CreateFlowLogsOutput struct { _ struct{} `type:"structure"` // Unique, case-sensitive identifier you provide to ensure the idempotency of // the request. ClientToken *string `locationName:"clientToken" type:"string"` // The IDs of the flow logs. FlowLogIds []*string `locationName:"flowLogIdSet" locationNameList:"item" type:"list"` // Information about the flow logs that could not be created successfully. Unsuccessful []*UnsuccessfulItem `locationName:"unsuccessful" locationNameList:"item" type:"list"` } // String returns the string representation func (s CreateFlowLogsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateFlowLogsOutput) GoString() string { return s.String() } // Contains the parameters for CreateImage. type CreateImageInput struct { _ struct{} `type:"structure"` // Information about one or more block device mappings. BlockDeviceMappings []*BlockDeviceMapping `locationName:"blockDeviceMapping" locationNameList:"BlockDeviceMapping" type:"list"` // A description for the new image. Description *string `locationName:"description" type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the instance. // // InstanceId is a required field InstanceId *string `locationName:"instanceId" type:"string" required:"true"` // A name for the new image. // // Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets // ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), // at-signs (@), or underscores(_) // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` // By default, Amazon EC2 attempts to shut down and reboot the instance before // creating the image. If the 'No Reboot' option is set, Amazon EC2 doesn't // shut down the instance before creating the image. When this option is used, // file system integrity on the created image can't be guaranteed. NoReboot *bool `locationName:"noReboot" type:"boolean"` } // String returns the string representation func (s CreateImageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateImageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateImageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateImageInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateImage. type CreateImageOutput struct { _ struct{} `type:"structure"` // The ID of the new AMI. ImageId *string `locationName:"imageId" type:"string"` } // String returns the string representation func (s CreateImageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateImageOutput) GoString() string { return s.String() } // Contains the parameters for CreateInstanceExportTask. type CreateInstanceExportTaskInput struct { _ struct{} `type:"structure"` // A description for the conversion task or the resource being exported. The // maximum length is 255 bytes. Description *string `locationName:"description" type:"string"` // The format and location for an instance export task. ExportToS3Task *ExportToS3TaskSpecification `locationName:"exportToS3" type:"structure"` // The ID of the instance. // // InstanceId is a required field InstanceId *string `locationName:"instanceId" type:"string" required:"true"` // The target virtualization environment. TargetEnvironment *string `locationName:"targetEnvironment" type:"string" enum:"ExportEnvironment"` } // String returns the string representation func (s CreateInstanceExportTaskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateInstanceExportTaskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateInstanceExportTaskInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateInstanceExportTaskInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output for CreateInstanceExportTask. type CreateInstanceExportTaskOutput struct { _ struct{} `type:"structure"` // Information about the instance export task. ExportTask *ExportTask `locationName:"exportTask" type:"structure"` } // String returns the string representation func (s CreateInstanceExportTaskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateInstanceExportTaskOutput) GoString() string { return s.String() } // Contains the parameters for CreateInternetGateway. type CreateInternetGatewayInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` } // String returns the string representation func (s CreateInternetGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateInternetGatewayInput) GoString() string { return s.String() } // Contains the output of CreateInternetGateway. type CreateInternetGatewayOutput struct { _ struct{} `type:"structure"` // Information about the Internet gateway. InternetGateway *InternetGateway `locationName:"internetGateway" type:"structure"` } // String returns the string representation func (s CreateInternetGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateInternetGatewayOutput) GoString() string { return s.String() } // Contains the parameters for CreateKeyPair. type CreateKeyPairInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // A unique name for the key pair. // // Constraints: Up to 255 ASCII characters // // KeyName is a required field KeyName *string `type:"string" required:"true"` } // String returns the string representation func (s CreateKeyPairInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateKeyPairInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateKeyPairInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateKeyPairInput"} if s.KeyName == nil { invalidParams.Add(request.NewErrParamRequired("KeyName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a key pair. type CreateKeyPairOutput struct { _ struct{} `type:"structure"` // The SHA-1 digest of the DER encoded private key. KeyFingerprint *string `locationName:"keyFingerprint" type:"string"` // An unencrypted PEM encoded RSA private key. KeyMaterial *string `locationName:"keyMaterial" type:"string"` // The name of the key pair. KeyName *string `locationName:"keyName" type:"string"` } // String returns the string representation func (s CreateKeyPairOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateKeyPairOutput) GoString() string { return s.String() } // Contains the parameters for CreateNatGateway. type CreateNatGatewayInput struct { _ struct{} `type:"structure"` // The allocation ID of an Elastic IP address to associate with the NAT gateway. // If the Elastic IP address is associated with another resource, you must first // disassociate it. // // AllocationId is a required field AllocationId *string `type:"string" required:"true"` // Unique, case-sensitive identifier you provide to ensure the idempotency of // the request. For more information, see How to Ensure Idempotency (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). // // Constraint: Maximum 64 ASCII characters. ClientToken *string `type:"string"` // The subnet in which to create the NAT gateway. // // SubnetId is a required field SubnetId *string `type:"string" required:"true"` } // String returns the string representation func (s CreateNatGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateNatGatewayInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateNatGatewayInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateNatGatewayInput"} if s.AllocationId == nil { invalidParams.Add(request.NewErrParamRequired("AllocationId")) } if s.SubnetId == nil { invalidParams.Add(request.NewErrParamRequired("SubnetId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateNatGateway. type CreateNatGatewayOutput struct { _ struct{} `type:"structure"` // Unique, case-sensitive identifier to ensure the idempotency of the request. // Only returned if a client token was provided in the request. ClientToken *string `locationName:"clientToken" type:"string"` // Information about the NAT gateway. NatGateway *NatGateway `locationName:"natGateway" type:"structure"` } // String returns the string representation func (s CreateNatGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateNatGatewayOutput) GoString() string { return s.String() } // Contains the parameters for CreateNetworkAclEntry. type CreateNetworkAclEntryInput struct { _ struct{} `type:"structure"` // The network range to allow or deny, in CIDR notation (for example 172.16.0.0/24). // // CidrBlock is a required field CidrBlock *string `locationName:"cidrBlock" type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // Indicates whether this is an egress rule (rule is applied to traffic leaving // the subnet). // // Egress is a required field Egress *bool `locationName:"egress" type:"boolean" required:"true"` // ICMP protocol: The ICMP type and code. Required if specifying ICMP for the // protocol. IcmpTypeCode *IcmpTypeCode `locationName:"Icmp" type:"structure"` // The ID of the network ACL. // // NetworkAclId is a required field NetworkAclId *string `locationName:"networkAclId" type:"string" required:"true"` // TCP or UDP protocols: The range of ports the rule applies to. PortRange *PortRange `locationName:"portRange" type:"structure"` // The protocol. A value of -1 means all protocols. // // Protocol is a required field Protocol *string `locationName:"protocol" type:"string" required:"true"` // Indicates whether to allow or deny the traffic that matches the rule. // // RuleAction is a required field RuleAction *string `locationName:"ruleAction" type:"string" required:"true" enum:"RuleAction"` // The rule number for the entry (for example, 100). ACL entries are processed // in ascending order by rule number. // // Constraints: Positive integer from 1 to 32766. The range 32767 to 65535 is // reserved for internal use. // // RuleNumber is a required field RuleNumber *int64 `locationName:"ruleNumber" type:"integer" required:"true"` } // String returns the string representation func (s CreateNetworkAclEntryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateNetworkAclEntryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateNetworkAclEntryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateNetworkAclEntryInput"} if s.CidrBlock == nil { invalidParams.Add(request.NewErrParamRequired("CidrBlock")) } if s.Egress == nil { invalidParams.Add(request.NewErrParamRequired("Egress")) } if s.NetworkAclId == nil { invalidParams.Add(request.NewErrParamRequired("NetworkAclId")) } if s.Protocol == nil { invalidParams.Add(request.NewErrParamRequired("Protocol")) } if s.RuleAction == nil { invalidParams.Add(request.NewErrParamRequired("RuleAction")) } if s.RuleNumber == nil { invalidParams.Add(request.NewErrParamRequired("RuleNumber")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateNetworkAclEntryOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateNetworkAclEntryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateNetworkAclEntryOutput) GoString() string { return s.String() } // Contains the parameters for CreateNetworkAcl. type CreateNetworkAclInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the VPC. // // VpcId is a required field VpcId *string `locationName:"vpcId" type:"string" required:"true"` } // String returns the string representation func (s CreateNetworkAclInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateNetworkAclInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateNetworkAclInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateNetworkAclInput"} if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateNetworkAcl. type CreateNetworkAclOutput struct { _ struct{} `type:"structure"` // Information about the network ACL. NetworkAcl *NetworkAcl `locationName:"networkAcl" type:"structure"` } // String returns the string representation func (s CreateNetworkAclOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateNetworkAclOutput) GoString() string { return s.String() } // Contains the parameters for CreateNetworkInterface. type CreateNetworkInterfaceInput struct { _ struct{} `type:"structure"` // A description for the network interface. Description *string `locationName:"description" type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The IDs of one or more security groups. Groups []*string `locationName:"SecurityGroupId" locationNameList:"SecurityGroupId" type:"list"` // The primary private IP address of the network interface. If you don't specify // an IP address, Amazon EC2 selects one for you from the subnet range. If you // specify an IP address, you cannot indicate any IP addresses specified in // privateIpAddresses as primary (only one IP address can be designated as primary). PrivateIpAddress *string `locationName:"privateIpAddress" type:"string"` // One or more private IP addresses. PrivateIpAddresses []*PrivateIpAddressSpecification `locationName:"privateIpAddresses" locationNameList:"item" type:"list"` // The number of secondary private IP addresses to assign to a network interface. // When you specify a number of secondary IP addresses, Amazon EC2 selects these // IP addresses within the subnet range. You can't specify this option and specify // more than one private IP address using privateIpAddresses. // // The number of IP addresses you can assign to a network interface varies by // instance type. For more information, see Private IP Addresses Per ENI Per // Instance Type (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#AvailableIpPerENI) // in the Amazon Elastic Compute Cloud User Guide. SecondaryPrivateIpAddressCount *int64 `locationName:"secondaryPrivateIpAddressCount" type:"integer"` // The ID of the subnet to associate with the network interface. // // SubnetId is a required field SubnetId *string `locationName:"subnetId" type:"string" required:"true"` } // String returns the string representation func (s CreateNetworkInterfaceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateNetworkInterfaceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateNetworkInterfaceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateNetworkInterfaceInput"} if s.SubnetId == nil { invalidParams.Add(request.NewErrParamRequired("SubnetId")) } if s.PrivateIpAddresses != nil { for i, v := range s.PrivateIpAddresses { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PrivateIpAddresses", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateNetworkInterface. type CreateNetworkInterfaceOutput struct { _ struct{} `type:"structure"` // Information about the network interface. NetworkInterface *NetworkInterface `locationName:"networkInterface" type:"structure"` } // String returns the string representation func (s CreateNetworkInterfaceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateNetworkInterfaceOutput) GoString() string { return s.String() } // Contains the parameters for CreatePlacementGroup. type CreatePlacementGroupInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // A name for the placement group. // // Constraints: Up to 255 ASCII characters // // GroupName is a required field GroupName *string `locationName:"groupName" type:"string" required:"true"` // The placement strategy. // // Strategy is a required field Strategy *string `locationName:"strategy" type:"string" required:"true" enum:"PlacementStrategy"` } // String returns the string representation func (s CreatePlacementGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePlacementGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePlacementGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePlacementGroupInput"} if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if s.Strategy == nil { invalidParams.Add(request.NewErrParamRequired("Strategy")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreatePlacementGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreatePlacementGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePlacementGroupOutput) GoString() string { return s.String() } // Contains the parameters for CreateReservedInstancesListing. type CreateReservedInstancesListingInput struct { _ struct{} `type:"structure"` // Unique, case-sensitive identifier you provide to ensure idempotency of your // listings. This helps avoid duplicate listings. For more information, see // Ensuring Idempotency (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). // // ClientToken is a required field ClientToken *string `locationName:"clientToken" type:"string" required:"true"` // The number of instances that are a part of a Reserved Instance account to // be listed in the Reserved Instance Marketplace. This number should be less // than or equal to the instance count associated with the Reserved Instance // ID specified in this call. // // InstanceCount is a required field InstanceCount *int64 `locationName:"instanceCount" type:"integer" required:"true"` // A list specifying the price of the Standard Reserved Instance for each month // remaining in the Reserved Instance term. // // PriceSchedules is a required field PriceSchedules []*PriceScheduleSpecification `locationName:"priceSchedules" locationNameList:"item" type:"list" required:"true"` // The ID of the active Standard Reserved Instance. // // ReservedInstancesId is a required field ReservedInstancesId *string `locationName:"reservedInstancesId" type:"string" required:"true"` } // String returns the string representation func (s CreateReservedInstancesListingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReservedInstancesListingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateReservedInstancesListingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateReservedInstancesListingInput"} if s.ClientToken == nil { invalidParams.Add(request.NewErrParamRequired("ClientToken")) } if s.InstanceCount == nil { invalidParams.Add(request.NewErrParamRequired("InstanceCount")) } if s.PriceSchedules == nil { invalidParams.Add(request.NewErrParamRequired("PriceSchedules")) } if s.ReservedInstancesId == nil { invalidParams.Add(request.NewErrParamRequired("ReservedInstancesId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateReservedInstancesListing. type CreateReservedInstancesListingOutput struct { _ struct{} `type:"structure"` // Information about the Standard Reserved Instance listing. ReservedInstancesListings []*ReservedInstancesListing `locationName:"reservedInstancesListingsSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s CreateReservedInstancesListingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReservedInstancesListingOutput) GoString() string { return s.String() } // Contains the parameters for CreateRoute. type CreateRouteInput struct { _ struct{} `type:"structure"` // The CIDR address block used for the destination match. Routing decisions // are based on the most specific match. // // DestinationCidrBlock is a required field DestinationCidrBlock *string `locationName:"destinationCidrBlock" type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of an Internet gateway or virtual private gateway attached to your // VPC. GatewayId *string `locationName:"gatewayId" type:"string"` // The ID of a NAT instance in your VPC. The operation fails if you specify // an instance ID unless exactly one network interface is attached. InstanceId *string `locationName:"instanceId" type:"string"` // The ID of a NAT gateway. NatGatewayId *string `locationName:"natGatewayId" type:"string"` // The ID of a network interface. NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string"` // The ID of the route table for the route. // // RouteTableId is a required field RouteTableId *string `locationName:"routeTableId" type:"string" required:"true"` // The ID of a VPC peering connection. VpcPeeringConnectionId *string `locationName:"vpcPeeringConnectionId" type:"string"` } // String returns the string representation func (s CreateRouteInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRouteInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateRouteInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateRouteInput"} if s.DestinationCidrBlock == nil { invalidParams.Add(request.NewErrParamRequired("DestinationCidrBlock")) } if s.RouteTableId == nil { invalidParams.Add(request.NewErrParamRequired("RouteTableId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateRoute. type CreateRouteOutput struct { _ struct{} `type:"structure"` // Returns true if the request succeeds; otherwise, it returns an error. Return *bool `locationName:"return" type:"boolean"` } // String returns the string representation func (s CreateRouteOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRouteOutput) GoString() string { return s.String() } // Contains the parameters for CreateRouteTable. type CreateRouteTableInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the VPC. // // VpcId is a required field VpcId *string `locationName:"vpcId" type:"string" required:"true"` } // String returns the string representation func (s CreateRouteTableInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRouteTableInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateRouteTableInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateRouteTableInput"} if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateRouteTable. type CreateRouteTableOutput struct { _ struct{} `type:"structure"` // Information about the route table. RouteTable *RouteTable `locationName:"routeTable" type:"structure"` } // String returns the string representation func (s CreateRouteTableOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRouteTableOutput) GoString() string { return s.String() } // Contains the parameters for CreateSecurityGroup. type CreateSecurityGroupInput struct { _ struct{} `type:"structure"` // A description for the security group. This is informational only. // // Constraints: Up to 255 characters in length // // Constraints for EC2-Classic: ASCII characters // // Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$* // // Description is a required field Description *string `locationName:"GroupDescription" type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The name of the security group. // // Constraints: Up to 255 characters in length // // Constraints for EC2-Classic: ASCII characters // // Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$* // // GroupName is a required field GroupName *string `type:"string" required:"true"` // [EC2-VPC] The ID of the VPC. Required for EC2-VPC. VpcId *string `type:"string"` } // String returns the string representation func (s CreateSecurityGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSecurityGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateSecurityGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateSecurityGroupInput"} if s.Description == nil { invalidParams.Add(request.NewErrParamRequired("Description")) } if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateSecurityGroup. type CreateSecurityGroupOutput struct { _ struct{} `type:"structure"` // The ID of the security group. GroupId *string `locationName:"groupId" type:"string"` } // String returns the string representation func (s CreateSecurityGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSecurityGroupOutput) GoString() string { return s.String() } // Contains the parameters for CreateSnapshot. type CreateSnapshotInput struct { _ struct{} `type:"structure"` // A description for the snapshot. Description *string `type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the EBS volume. // // VolumeId is a required field VolumeId *string `type:"string" required:"true"` } // String returns the string representation func (s CreateSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateSnapshotInput"} if s.VolumeId == nil { invalidParams.Add(request.NewErrParamRequired("VolumeId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for CreateSpotDatafeedSubscription. type CreateSpotDatafeedSubscriptionInput struct { _ struct{} `type:"structure"` // The Amazon S3 bucket in which to store the Spot instance data feed. // // Bucket is a required field Bucket *string `locationName:"bucket" type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // A prefix for the data feed file names. Prefix *string `locationName:"prefix" type:"string"` } // String returns the string representation func (s CreateSpotDatafeedSubscriptionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSpotDatafeedSubscriptionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateSpotDatafeedSubscriptionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateSpotDatafeedSubscriptionInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateSpotDatafeedSubscription. type CreateSpotDatafeedSubscriptionOutput struct { _ struct{} `type:"structure"` // The Spot instance data feed subscription. SpotDatafeedSubscription *SpotDatafeedSubscription `locationName:"spotDatafeedSubscription" type:"structure"` } // String returns the string representation func (s CreateSpotDatafeedSubscriptionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSpotDatafeedSubscriptionOutput) GoString() string { return s.String() } // Contains the parameters for CreateSubnet. type CreateSubnetInput struct { _ struct{} `type:"structure"` // The Availability Zone for the subnet. // // Default: AWS selects one for you. If you create more than one subnet in your // VPC, we may not necessarily select a different zone for each subnet. AvailabilityZone *string `type:"string"` // The network range for the subnet, in CIDR notation. For example, 10.0.0.0/24. // // CidrBlock is a required field CidrBlock *string `type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the VPC. // // VpcId is a required field VpcId *string `type:"string" required:"true"` } // String returns the string representation func (s CreateSubnetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSubnetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateSubnetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateSubnetInput"} if s.CidrBlock == nil { invalidParams.Add(request.NewErrParamRequired("CidrBlock")) } if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateSubnet. type CreateSubnetOutput struct { _ struct{} `type:"structure"` // Information about the subnet. Subnet *Subnet `locationName:"subnet" type:"structure"` } // String returns the string representation func (s CreateSubnetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSubnetOutput) GoString() string { return s.String() } // Contains the parameters for CreateTags. type CreateTagsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The IDs of one or more resources to tag. For example, ami-1a2b3c4d. // // Resources is a required field Resources []*string `locationName:"ResourceId" type:"list" required:"true"` // One or more tags. The value parameter is required, but if you don't want // the tag to have a value, specify the parameter with no value, and we set // the value to an empty string. // // Tags is a required field Tags []*Tag `locationName:"Tag" locationNameList:"item" type:"list" required:"true"` } // String returns the string representation func (s CreateTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateTagsInput"} if s.Resources == nil { invalidParams.Add(request.NewErrParamRequired("Resources")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTagsOutput) GoString() string { return s.String() } // Contains the parameters for CreateVolume. type CreateVolumeInput struct { _ struct{} `type:"structure"` // The Availability Zone in which to create the volume. Use DescribeAvailabilityZones // to list the Availability Zones that are currently available to you. // // AvailabilityZone is a required field AvailabilityZone *string `type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // Specifies whether the volume should be encrypted. Encrypted Amazon EBS volumes // may only be attached to instances that support Amazon EBS encryption. Volumes // that are created from encrypted snapshots are automatically encrypted. There // is no way to create an encrypted volume from an unencrypted snapshot or vice // versa. If your AMI uses encrypted volumes, you can only launch it on supported // instance types. For more information, see Amazon EBS Encryption (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) // in the Amazon Elastic Compute Cloud User Guide. Encrypted *bool `locationName:"encrypted" type:"boolean"` // Only valid for Provisioned IOPS SSD volumes. The number of I/O operations // per second (IOPS) to provision for the volume, with a maximum ratio of 30 // IOPS/GiB. // // Constraint: Range is 100 to 20000 for Provisioned IOPS SSD volumes Iops *int64 `type:"integer"` // The full ARN of the AWS Key Management Service (AWS KMS) customer master // key (CMK) to use when creating the encrypted volume. This parameter is only // required if you want to use a non-default CMK; if this parameter is not specified, // the default CMK for EBS is used. The ARN contains the arn:aws:kms namespace, // followed by the region of the CMK, the AWS account ID of the CMK owner, the // key namespace, and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. // If a KmsKeyId is specified, the Encrypted flag must also be set. KmsKeyId *string `type:"string"` // The size of the volume, in GiBs. // // Constraints: 1-16384 for gp2, 4-16384 for io1, 500-16384 for st1, 500-16384 // for sc1, and 1-1024 for standard. If you specify a snapshot, the volume size // must be equal to or larger than the snapshot size. // // Default: If you're creating the volume from a snapshot and don't specify // a volume size, the default is the snapshot size. Size *int64 `type:"integer"` // The snapshot from which to create the volume. SnapshotId *string `type:"string"` // The volume type. This can be gp2 for General Purpose SSD, io1 for Provisioned // IOPS SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, or standard // for Magnetic volumes. // // Default: standard VolumeType *string `type:"string" enum:"VolumeType"` } // String returns the string representation func (s CreateVolumeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVolumeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateVolumeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateVolumeInput"} if s.AvailabilityZone == nil { invalidParams.Add(request.NewErrParamRequired("AvailabilityZone")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the user or group to be added or removed from the permissions for // a volume. type CreateVolumePermission struct { _ struct{} `type:"structure"` // The specific group that is to be added or removed from a volume's list of // create volume permissions. Group *string `locationName:"group" type:"string" enum:"PermissionGroup"` // The specific AWS account ID that is to be added or removed from a volume's // list of create volume permissions. UserId *string `locationName:"userId" type:"string"` } // String returns the string representation func (s CreateVolumePermission) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVolumePermission) GoString() string { return s.String() } // Describes modifications to the permissions for a volume. type CreateVolumePermissionModifications struct { _ struct{} `type:"structure"` // Adds a specific AWS account ID or group to a volume's list of create volume // permissions. Add []*CreateVolumePermission `locationNameList:"item" type:"list"` // Removes a specific AWS account ID or group from a volume's list of create // volume permissions. Remove []*CreateVolumePermission `locationNameList:"item" type:"list"` } // String returns the string representation func (s CreateVolumePermissionModifications) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVolumePermissionModifications) GoString() string { return s.String() } // Contains the parameters for CreateVpcEndpoint. type CreateVpcEndpointInput struct { _ struct{} `type:"structure"` // Unique, case-sensitive identifier you provide to ensure the idempotency of // the request. For more information, see How to Ensure Idempotency (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). ClientToken *string `type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // A policy to attach to the endpoint that controls access to the service. The // policy must be in valid JSON format. If this parameter is not specified, // we attach a default policy that allows full access to the service. PolicyDocument *string `type:"string"` // One or more route table IDs. RouteTableIds []*string `locationName:"RouteTableId" locationNameList:"item" type:"list"` // The AWS service name, in the form com.amazonaws.region.service. To get a // list of available services, use the DescribeVpcEndpointServices request. // // ServiceName is a required field ServiceName *string `type:"string" required:"true"` // The ID of the VPC in which the endpoint will be used. // // VpcId is a required field VpcId *string `type:"string" required:"true"` } // String returns the string representation func (s CreateVpcEndpointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVpcEndpointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateVpcEndpointInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateVpcEndpointInput"} if s.ServiceName == nil { invalidParams.Add(request.NewErrParamRequired("ServiceName")) } if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateVpcEndpoint. type CreateVpcEndpointOutput struct { _ struct{} `type:"structure"` // Unique, case-sensitive identifier you provide to ensure the idempotency of // the request. ClientToken *string `locationName:"clientToken" type:"string"` // Information about the endpoint. VpcEndpoint *VpcEndpoint `locationName:"vpcEndpoint" type:"structure"` } // String returns the string representation func (s CreateVpcEndpointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVpcEndpointOutput) GoString() string { return s.String() } // Contains the parameters for CreateVpc. type CreateVpcInput struct { _ struct{} `type:"structure"` // The network range for the VPC, in CIDR notation. For example, 10.0.0.0/16. // // CidrBlock is a required field CidrBlock *string `type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The tenancy options for instances launched into the VPC. For default, instances // are launched with shared tenancy by default. You can launch instances with // any tenancy into a shared tenancy VPC. For dedicated, instances are launched // as dedicated tenancy instances by default. You can only launch instances // with a tenancy of dedicated or host into a dedicated tenancy VPC. // // Important: The host value cannot be used with this parameter. Use the default // or dedicated values only. // // Default: default InstanceTenancy *string `locationName:"instanceTenancy" type:"string" enum:"Tenancy"` } // String returns the string representation func (s CreateVpcInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVpcInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateVpcInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateVpcInput"} if s.CidrBlock == nil { invalidParams.Add(request.NewErrParamRequired("CidrBlock")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateVpc. type CreateVpcOutput struct { _ struct{} `type:"structure"` // Information about the VPC. Vpc *Vpc `locationName:"vpc" type:"structure"` } // String returns the string representation func (s CreateVpcOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVpcOutput) GoString() string { return s.String() } // Contains the parameters for CreateVpcPeeringConnection. type CreateVpcPeeringConnectionInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The AWS account ID of the owner of the peer VPC. // // Default: Your AWS account ID PeerOwnerId *string `locationName:"peerOwnerId" type:"string"` // The ID of the VPC with which you are creating the VPC peering connection. PeerVpcId *string `locationName:"peerVpcId" type:"string"` // The ID of the requester VPC. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s CreateVpcPeeringConnectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVpcPeeringConnectionInput) GoString() string { return s.String() } // Contains the output of CreateVpcPeeringConnection. type CreateVpcPeeringConnectionOutput struct { _ struct{} `type:"structure"` // Information about the VPC peering connection. VpcPeeringConnection *VpcPeeringConnection `locationName:"vpcPeeringConnection" type:"structure"` } // String returns the string representation func (s CreateVpcPeeringConnectionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVpcPeeringConnectionOutput) GoString() string { return s.String() } // Contains the parameters for CreateVpnConnection. type CreateVpnConnectionInput struct { _ struct{} `type:"structure"` // The ID of the customer gateway. // // CustomerGatewayId is a required field CustomerGatewayId *string `type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // Indicates whether the VPN connection requires static routes. If you are creating // a VPN connection for a device that does not support BGP, you must specify // true. // // Default: false Options *VpnConnectionOptionsSpecification `locationName:"options" type:"structure"` // The type of VPN connection (ipsec.1). // // Type is a required field Type *string `type:"string" required:"true"` // The ID of the virtual private gateway. // // VpnGatewayId is a required field VpnGatewayId *string `type:"string" required:"true"` } // String returns the string representation func (s CreateVpnConnectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVpnConnectionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateVpnConnectionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateVpnConnectionInput"} if s.CustomerGatewayId == nil { invalidParams.Add(request.NewErrParamRequired("CustomerGatewayId")) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if s.VpnGatewayId == nil { invalidParams.Add(request.NewErrParamRequired("VpnGatewayId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateVpnConnection. type CreateVpnConnectionOutput struct { _ struct{} `type:"structure"` // Information about the VPN connection. VpnConnection *VpnConnection `locationName:"vpnConnection" type:"structure"` } // String returns the string representation func (s CreateVpnConnectionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVpnConnectionOutput) GoString() string { return s.String() } // Contains the parameters for CreateVpnConnectionRoute. type CreateVpnConnectionRouteInput struct { _ struct{} `type:"structure"` // The CIDR block associated with the local subnet of the customer network. // // DestinationCidrBlock is a required field DestinationCidrBlock *string `type:"string" required:"true"` // The ID of the VPN connection. // // VpnConnectionId is a required field VpnConnectionId *string `type:"string" required:"true"` } // String returns the string representation func (s CreateVpnConnectionRouteInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVpnConnectionRouteInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateVpnConnectionRouteInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateVpnConnectionRouteInput"} if s.DestinationCidrBlock == nil { invalidParams.Add(request.NewErrParamRequired("DestinationCidrBlock")) } if s.VpnConnectionId == nil { invalidParams.Add(request.NewErrParamRequired("VpnConnectionId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateVpnConnectionRouteOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateVpnConnectionRouteOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVpnConnectionRouteOutput) GoString() string { return s.String() } // Contains the parameters for CreateVpnGateway. type CreateVpnGatewayInput struct { _ struct{} `type:"structure"` // The Availability Zone for the virtual private gateway. AvailabilityZone *string `type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The type of VPN connection this virtual private gateway supports. // // Type is a required field Type *string `type:"string" required:"true" enum:"GatewayType"` } // String returns the string representation func (s CreateVpnGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVpnGatewayInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateVpnGatewayInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateVpnGatewayInput"} if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateVpnGateway. type CreateVpnGatewayOutput struct { _ struct{} `type:"structure"` // Information about the virtual private gateway. VpnGateway *VpnGateway `locationName:"vpnGateway" type:"structure"` } // String returns the string representation func (s CreateVpnGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVpnGatewayOutput) GoString() string { return s.String() } // Describes a customer gateway. type CustomerGateway struct { _ struct{} `type:"structure"` // The customer gateway's Border Gateway Protocol (BGP) Autonomous System Number // (ASN). BgpAsn *string `locationName:"bgpAsn" type:"string"` // The ID of the customer gateway. CustomerGatewayId *string `locationName:"customerGatewayId" type:"string"` // The Internet-routable IP address of the customer gateway's outside interface. IpAddress *string `locationName:"ipAddress" type:"string"` // The current state of the customer gateway (pending | available | deleting // | deleted). State *string `locationName:"state" type:"string"` // Any tags assigned to the customer gateway. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // The type of VPN connection the customer gateway supports (ipsec.1). Type *string `locationName:"type" type:"string"` } // String returns the string representation func (s CustomerGateway) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CustomerGateway) GoString() string { return s.String() } // Contains the parameters for DeleteCustomerGateway. type DeleteCustomerGatewayInput struct { _ struct{} `type:"structure"` // The ID of the customer gateway. // // CustomerGatewayId is a required field CustomerGatewayId *string `type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` } // String returns the string representation func (s DeleteCustomerGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCustomerGatewayInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteCustomerGatewayInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteCustomerGatewayInput"} if s.CustomerGatewayId == nil { invalidParams.Add(request.NewErrParamRequired("CustomerGatewayId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteCustomerGatewayOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteCustomerGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCustomerGatewayOutput) GoString() string { return s.String() } // Contains the parameters for DeleteDhcpOptions. type DeleteDhcpOptionsInput struct { _ struct{} `type:"structure"` // The ID of the DHCP options set. // // DhcpOptionsId is a required field DhcpOptionsId *string `type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` } // String returns the string representation func (s DeleteDhcpOptionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDhcpOptionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDhcpOptionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDhcpOptionsInput"} if s.DhcpOptionsId == nil { invalidParams.Add(request.NewErrParamRequired("DhcpOptionsId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteDhcpOptionsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteDhcpOptionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDhcpOptionsOutput) GoString() string { return s.String() } // Contains the parameters for DeleteFlowLogs. type DeleteFlowLogsInput struct { _ struct{} `type:"structure"` // One or more flow log IDs. // // FlowLogIds is a required field FlowLogIds []*string `locationName:"FlowLogId" locationNameList:"item" type:"list" required:"true"` } // String returns the string representation func (s DeleteFlowLogsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteFlowLogsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteFlowLogsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteFlowLogsInput"} if s.FlowLogIds == nil { invalidParams.Add(request.NewErrParamRequired("FlowLogIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DeleteFlowLogs. type DeleteFlowLogsOutput struct { _ struct{} `type:"structure"` // Information about the flow logs that could not be deleted successfully. Unsuccessful []*UnsuccessfulItem `locationName:"unsuccessful" locationNameList:"item" type:"list"` } // String returns the string representation func (s DeleteFlowLogsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteFlowLogsOutput) GoString() string { return s.String() } // Contains the parameters for DeleteInternetGateway. type DeleteInternetGatewayInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the Internet gateway. // // InternetGatewayId is a required field InternetGatewayId *string `locationName:"internetGatewayId" type:"string" required:"true"` } // String returns the string representation func (s DeleteInternetGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteInternetGatewayInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteInternetGatewayInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteInternetGatewayInput"} if s.InternetGatewayId == nil { invalidParams.Add(request.NewErrParamRequired("InternetGatewayId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteInternetGatewayOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteInternetGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteInternetGatewayOutput) GoString() string { return s.String() } // Contains the parameters for DeleteKeyPair. type DeleteKeyPairInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The name of the key pair. // // KeyName is a required field KeyName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteKeyPairInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteKeyPairInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteKeyPairInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteKeyPairInput"} if s.KeyName == nil { invalidParams.Add(request.NewErrParamRequired("KeyName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteKeyPairOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteKeyPairOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteKeyPairOutput) GoString() string { return s.String() } // Contains the parameters for DeleteNatGateway. type DeleteNatGatewayInput struct { _ struct{} `type:"structure"` // The ID of the NAT gateway. // // NatGatewayId is a required field NatGatewayId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteNatGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteNatGatewayInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteNatGatewayInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteNatGatewayInput"} if s.NatGatewayId == nil { invalidParams.Add(request.NewErrParamRequired("NatGatewayId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DeleteNatGateway. type DeleteNatGatewayOutput struct { _ struct{} `type:"structure"` // The ID of the NAT gateway. NatGatewayId *string `locationName:"natGatewayId" type:"string"` } // String returns the string representation func (s DeleteNatGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteNatGatewayOutput) GoString() string { return s.String() } // Contains the parameters for DeleteNetworkAclEntry. type DeleteNetworkAclEntryInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // Indicates whether the rule is an egress rule. // // Egress is a required field Egress *bool `locationName:"egress" type:"boolean" required:"true"` // The ID of the network ACL. // // NetworkAclId is a required field NetworkAclId *string `locationName:"networkAclId" type:"string" required:"true"` // The rule number of the entry to delete. // // RuleNumber is a required field RuleNumber *int64 `locationName:"ruleNumber" type:"integer" required:"true"` } // String returns the string representation func (s DeleteNetworkAclEntryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteNetworkAclEntryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteNetworkAclEntryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteNetworkAclEntryInput"} if s.Egress == nil { invalidParams.Add(request.NewErrParamRequired("Egress")) } if s.NetworkAclId == nil { invalidParams.Add(request.NewErrParamRequired("NetworkAclId")) } if s.RuleNumber == nil { invalidParams.Add(request.NewErrParamRequired("RuleNumber")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteNetworkAclEntryOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteNetworkAclEntryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteNetworkAclEntryOutput) GoString() string { return s.String() } // Contains the parameters for DeleteNetworkAcl. type DeleteNetworkAclInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the network ACL. // // NetworkAclId is a required field NetworkAclId *string `locationName:"networkAclId" type:"string" required:"true"` } // String returns the string representation func (s DeleteNetworkAclInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteNetworkAclInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteNetworkAclInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteNetworkAclInput"} if s.NetworkAclId == nil { invalidParams.Add(request.NewErrParamRequired("NetworkAclId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteNetworkAclOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteNetworkAclOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteNetworkAclOutput) GoString() string { return s.String() } // Contains the parameters for DeleteNetworkInterface. type DeleteNetworkInterfaceInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the network interface. // // NetworkInterfaceId is a required field NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string" required:"true"` } // String returns the string representation func (s DeleteNetworkInterfaceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteNetworkInterfaceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteNetworkInterfaceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteNetworkInterfaceInput"} if s.NetworkInterfaceId == nil { invalidParams.Add(request.NewErrParamRequired("NetworkInterfaceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteNetworkInterfaceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteNetworkInterfaceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteNetworkInterfaceOutput) GoString() string { return s.String() } // Contains the parameters for DeletePlacementGroup. type DeletePlacementGroupInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The name of the placement group. // // GroupName is a required field GroupName *string `locationName:"groupName" type:"string" required:"true"` } // String returns the string representation func (s DeletePlacementGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePlacementGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeletePlacementGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeletePlacementGroupInput"} if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeletePlacementGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeletePlacementGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePlacementGroupOutput) GoString() string { return s.String() } // Contains the parameters for DeleteRoute. type DeleteRouteInput struct { _ struct{} `type:"structure"` // The CIDR range for the route. The value you specify must match the CIDR for // the route exactly. // // DestinationCidrBlock is a required field DestinationCidrBlock *string `locationName:"destinationCidrBlock" type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the route table. // // RouteTableId is a required field RouteTableId *string `locationName:"routeTableId" type:"string" required:"true"` } // String returns the string representation func (s DeleteRouteInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRouteInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteRouteInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteRouteInput"} if s.DestinationCidrBlock == nil { invalidParams.Add(request.NewErrParamRequired("DestinationCidrBlock")) } if s.RouteTableId == nil { invalidParams.Add(request.NewErrParamRequired("RouteTableId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteRouteOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteRouteOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRouteOutput) GoString() string { return s.String() } // Contains the parameters for DeleteRouteTable. type DeleteRouteTableInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the route table. // // RouteTableId is a required field RouteTableId *string `locationName:"routeTableId" type:"string" required:"true"` } // String returns the string representation func (s DeleteRouteTableInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRouteTableInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteRouteTableInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteRouteTableInput"} if s.RouteTableId == nil { invalidParams.Add(request.NewErrParamRequired("RouteTableId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteRouteTableOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteRouteTableOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRouteTableOutput) GoString() string { return s.String() } // Contains the parameters for DeleteSecurityGroup. type DeleteSecurityGroupInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the security group. Required for a nondefault VPC. GroupId *string `type:"string"` // [EC2-Classic, default VPC] The name of the security group. You can specify // either the security group name or the security group ID. GroupName *string `type:"string"` } // String returns the string representation func (s DeleteSecurityGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSecurityGroupInput) GoString() string { return s.String() } type DeleteSecurityGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteSecurityGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSecurityGroupOutput) GoString() string { return s.String() } // Contains the parameters for DeleteSnapshot. type DeleteSnapshotInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the EBS snapshot. // // SnapshotId is a required field SnapshotId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteSnapshotInput"} if s.SnapshotId == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteSnapshotOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSnapshotOutput) GoString() string { return s.String() } // Contains the parameters for DeleteSpotDatafeedSubscription. type DeleteSpotDatafeedSubscriptionInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` } // String returns the string representation func (s DeleteSpotDatafeedSubscriptionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSpotDatafeedSubscriptionInput) GoString() string { return s.String() } type DeleteSpotDatafeedSubscriptionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteSpotDatafeedSubscriptionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSpotDatafeedSubscriptionOutput) GoString() string { return s.String() } // Contains the parameters for DeleteSubnet. type DeleteSubnetInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the subnet. // // SubnetId is a required field SubnetId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteSubnetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSubnetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteSubnetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteSubnetInput"} if s.SubnetId == nil { invalidParams.Add(request.NewErrParamRequired("SubnetId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteSubnetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteSubnetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSubnetOutput) GoString() string { return s.String() } // Contains the parameters for DeleteTags. type DeleteTagsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the resource. For example, ami-1a2b3c4d. You can specify more than // one resource ID. // // Resources is a required field Resources []*string `locationName:"resourceId" type:"list" required:"true"` // One or more tags to delete. If you omit the value parameter, we delete the // tag regardless of its value. If you specify this parameter with an empty // string as the value, we delete the key only if its value is an empty string. Tags []*Tag `locationName:"tag" locationNameList:"item" type:"list"` } // String returns the string representation func (s DeleteTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTagsInput"} if s.Resources == nil { invalidParams.Add(request.NewErrParamRequired("Resources")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTagsOutput) GoString() string { return s.String() } // Contains the parameters for DeleteVolume. type DeleteVolumeInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the volume. // // VolumeId is a required field VolumeId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteVolumeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVolumeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteVolumeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteVolumeInput"} if s.VolumeId == nil { invalidParams.Add(request.NewErrParamRequired("VolumeId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteVolumeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteVolumeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVolumeOutput) GoString() string { return s.String() } // Contains the parameters for DeleteVpcEndpoints. type DeleteVpcEndpointsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // One or more endpoint IDs. // // VpcEndpointIds is a required field VpcEndpointIds []*string `locationName:"VpcEndpointId" locationNameList:"item" type:"list" required:"true"` } // String returns the string representation func (s DeleteVpcEndpointsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVpcEndpointsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteVpcEndpointsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteVpcEndpointsInput"} if s.VpcEndpointIds == nil { invalidParams.Add(request.NewErrParamRequired("VpcEndpointIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DeleteVpcEndpoints. type DeleteVpcEndpointsOutput struct { _ struct{} `type:"structure"` // Information about the endpoints that were not successfully deleted. Unsuccessful []*UnsuccessfulItem `locationName:"unsuccessful" locationNameList:"item" type:"list"` } // String returns the string representation func (s DeleteVpcEndpointsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVpcEndpointsOutput) GoString() string { return s.String() } // Contains the parameters for DeleteVpc. type DeleteVpcInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the VPC. // // VpcId is a required field VpcId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteVpcInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVpcInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteVpcInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteVpcInput"} if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteVpcOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteVpcOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVpcOutput) GoString() string { return s.String() } // Contains the parameters for DeleteVpcPeeringConnection. type DeleteVpcPeeringConnectionInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the VPC peering connection. // // VpcPeeringConnectionId is a required field VpcPeeringConnectionId *string `locationName:"vpcPeeringConnectionId" type:"string" required:"true"` } // String returns the string representation func (s DeleteVpcPeeringConnectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVpcPeeringConnectionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteVpcPeeringConnectionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteVpcPeeringConnectionInput"} if s.VpcPeeringConnectionId == nil { invalidParams.Add(request.NewErrParamRequired("VpcPeeringConnectionId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DeleteVpcPeeringConnection. type DeleteVpcPeeringConnectionOutput struct { _ struct{} `type:"structure"` // Returns true if the request succeeds; otherwise, it returns an error. Return *bool `locationName:"return" type:"boolean"` } // String returns the string representation func (s DeleteVpcPeeringConnectionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVpcPeeringConnectionOutput) GoString() string { return s.String() } // Contains the parameters for DeleteVpnConnection. type DeleteVpnConnectionInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the VPN connection. // // VpnConnectionId is a required field VpnConnectionId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteVpnConnectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVpnConnectionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteVpnConnectionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteVpnConnectionInput"} if s.VpnConnectionId == nil { invalidParams.Add(request.NewErrParamRequired("VpnConnectionId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteVpnConnectionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteVpnConnectionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVpnConnectionOutput) GoString() string { return s.String() } // Contains the parameters for DeleteVpnConnectionRoute. type DeleteVpnConnectionRouteInput struct { _ struct{} `type:"structure"` // The CIDR block associated with the local subnet of the customer network. // // DestinationCidrBlock is a required field DestinationCidrBlock *string `type:"string" required:"true"` // The ID of the VPN connection. // // VpnConnectionId is a required field VpnConnectionId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteVpnConnectionRouteInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVpnConnectionRouteInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteVpnConnectionRouteInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteVpnConnectionRouteInput"} if s.DestinationCidrBlock == nil { invalidParams.Add(request.NewErrParamRequired("DestinationCidrBlock")) } if s.VpnConnectionId == nil { invalidParams.Add(request.NewErrParamRequired("VpnConnectionId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteVpnConnectionRouteOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteVpnConnectionRouteOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVpnConnectionRouteOutput) GoString() string { return s.String() } // Contains the parameters for DeleteVpnGateway. type DeleteVpnGatewayInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the virtual private gateway. // // VpnGatewayId is a required field VpnGatewayId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteVpnGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVpnGatewayInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteVpnGatewayInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteVpnGatewayInput"} if s.VpnGatewayId == nil { invalidParams.Add(request.NewErrParamRequired("VpnGatewayId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteVpnGatewayOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteVpnGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVpnGatewayOutput) GoString() string { return s.String() } // Contains the parameters for DeregisterImage. type DeregisterImageInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the AMI. // // ImageId is a required field ImageId *string `type:"string" required:"true"` } // String returns the string representation func (s DeregisterImageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterImageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeregisterImageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeregisterImageInput"} if s.ImageId == nil { invalidParams.Add(request.NewErrParamRequired("ImageId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeregisterImageOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeregisterImageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterImageOutput) GoString() string { return s.String() } // Contains the parameters for DescribeAccountAttributes. type DescribeAccountAttributesInput struct { _ struct{} `type:"structure"` // One or more account attribute names. AttributeNames []*string `locationName:"attributeName" locationNameList:"attributeName" type:"list"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` } // String returns the string representation func (s DescribeAccountAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAccountAttributesInput) GoString() string { return s.String() } // Contains the output of DescribeAccountAttributes. type DescribeAccountAttributesOutput struct { _ struct{} `type:"structure"` // Information about one or more account attributes. AccountAttributes []*AccountAttribute `locationName:"accountAttributeSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeAccountAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAccountAttributesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeAddresses. type DescribeAddressesInput struct { _ struct{} `type:"structure"` // [EC2-VPC] One or more allocation IDs. // // Default: Describes all your Elastic IP addresses. AllocationIds []*string `locationName:"AllocationId" locationNameList:"AllocationId" type:"list"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. Filter names and values are case-sensitive. // // * allocation-id - [EC2-VPC] The allocation ID for the address. // // * association-id - [EC2-VPC] The association ID for the address. // // * domain - Indicates whether the address is for use in EC2-Classic (standard) // or in a VPC (vpc). // // * instance-id - The ID of the instance the address is associated with, // if any. // // * network-interface-id - [EC2-VPC] The ID of the network interface that // the address is associated with, if any. // // * network-interface-owner-id - The AWS account ID of the owner. // // * private-ip-address - [EC2-VPC] The private IP address associated with // the Elastic IP address. // // * public-ip - The Elastic IP address. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // [EC2-Classic] One or more Elastic IP addresses. // // Default: Describes all your Elastic IP addresses. PublicIps []*string `locationName:"PublicIp" locationNameList:"PublicIp" type:"list"` } // String returns the string representation func (s DescribeAddressesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAddressesInput) GoString() string { return s.String() } // Contains the output of DescribeAddresses. type DescribeAddressesOutput struct { _ struct{} `type:"structure"` // Information about one or more Elastic IP addresses. Addresses []*Address `locationName:"addressesSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeAddressesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAddressesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeAvailabilityZones. type DescribeAvailabilityZonesInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * message - Information about the Availability Zone. // // * region-name - The name of the region for the Availability Zone (for // example, us-east-1). // // * state - The state of the Availability Zone (available | information // | impaired | unavailable). // // * zone-name - The name of the Availability Zone (for example, us-east-1a). Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // The names of one or more Availability Zones. ZoneNames []*string `locationName:"ZoneName" locationNameList:"ZoneName" type:"list"` } // String returns the string representation func (s DescribeAvailabilityZonesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAvailabilityZonesInput) GoString() string { return s.String() } // Contains the output of DescribeAvailabiltyZones. type DescribeAvailabilityZonesOutput struct { _ struct{} `type:"structure"` // Information about one or more Availability Zones. AvailabilityZones []*AvailabilityZone `locationName:"availabilityZoneInfo" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeAvailabilityZonesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAvailabilityZonesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeBundleTasks. type DescribeBundleTasksInput struct { _ struct{} `type:"structure"` // One or more bundle task IDs. // // Default: Describes all your bundle tasks. BundleIds []*string `locationName:"BundleId" locationNameList:"BundleId" type:"list"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * bundle-id - The ID of the bundle task. // // * error-code - If the task failed, the error code returned. // // * error-message - If the task failed, the error message returned. // // * instance-id - The ID of the instance. // // * progress - The level of task completion, as a percentage (for example, // 20%). // // * s3-bucket - The Amazon S3 bucket to store the AMI. // // * s3-prefix - The beginning of the AMI name. // // * start-time - The time the task started (for example, 2013-09-15T17:15:20.000Z). // // * state - The state of the task (pending | waiting-for-shutdown | bundling // | storing | cancelling | complete | failed). // // * update-time - The time of the most recent update for the task. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` } // String returns the string representation func (s DescribeBundleTasksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeBundleTasksInput) GoString() string { return s.String() } // Contains the output of DescribeBundleTasks. type DescribeBundleTasksOutput struct { _ struct{} `type:"structure"` // Information about one or more bundle tasks. BundleTasks []*BundleTask `locationName:"bundleInstanceTasksSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeBundleTasksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeBundleTasksOutput) GoString() string { return s.String() } // Contains the parameters for DescribeClassicLinkInstances. type DescribeClassicLinkInstancesInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * group-id - The ID of a VPC security group that's associated with the // instance. // // * instance-id - The ID of the instance. // // * tag:key=value - The key/value combination of a tag assigned to the resource. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. // // * vpc-id - The ID of the VPC that the instance is linked to. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // One or more instance IDs. Must be instances linked to a VPC through ClassicLink. InstanceIds []*string `locationName:"InstanceId" locationNameList:"InstanceId" type:"list"` // The maximum number of results to return for the request in a single page. // The remaining results of the initial request can be seen by sending another // request with the returned NextToken value. This value can be between 5 and // 1000; if MaxResults is given a value larger than 1000, only 1000 results // are returned. You cannot specify this parameter and the instance IDs parameter // in the same request. // // Constraint: If the value is greater than 1000, we return only 1000 items. MaxResults *int64 `locationName:"maxResults" type:"integer"` // The token to retrieve the next page of results. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeClassicLinkInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClassicLinkInstancesInput) GoString() string { return s.String() } // Contains the output of DescribeClassicLinkInstances. type DescribeClassicLinkInstancesOutput struct { _ struct{} `type:"structure"` // Information about one or more linked EC2-Classic instances. Instances []*ClassicLinkInstance `locationName:"instancesSet" locationNameList:"item" type:"list"` // The token to use to retrieve the next page of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeClassicLinkInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClassicLinkInstancesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeConversionTasks. type DescribeConversionTasksInput struct { _ struct{} `type:"structure"` // One or more conversion task IDs. ConversionTaskIds []*string `locationName:"conversionTaskId" locationNameList:"item" type:"list"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` } // String returns the string representation func (s DescribeConversionTasksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConversionTasksInput) GoString() string { return s.String() } // Contains the output for DescribeConversionTasks. type DescribeConversionTasksOutput struct { _ struct{} `type:"structure"` // Information about the conversion tasks. ConversionTasks []*ConversionTask `locationName:"conversionTasks" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeConversionTasksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConversionTasksOutput) GoString() string { return s.String() } // Contains the parameters for DescribeCustomerGateways. type DescribeCustomerGatewaysInput struct { _ struct{} `type:"structure"` // One or more customer gateway IDs. // // Default: Describes all your customer gateways. CustomerGatewayIds []*string `locationName:"CustomerGatewayId" locationNameList:"CustomerGatewayId" type:"list"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * bgp-asn - The customer gateway's Border Gateway Protocol (BGP) Autonomous // System Number (ASN). // // * customer-gateway-id - The ID of the customer gateway. // // * ip-address - The IP address of the customer gateway's Internet-routable // external interface. // // * state - The state of the customer gateway (pending | available | deleting // | deleted). // // * type - The type of customer gateway. Currently, the only supported type // is ipsec.1. // // * tag:key=value - The key/value combination of a tag assigned to the resource. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` } // String returns the string representation func (s DescribeCustomerGatewaysInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCustomerGatewaysInput) GoString() string { return s.String() } // Contains the output of DescribeCustomerGateways. type DescribeCustomerGatewaysOutput struct { _ struct{} `type:"structure"` // Information about one or more customer gateways. CustomerGateways []*CustomerGateway `locationName:"customerGatewaySet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeCustomerGatewaysOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCustomerGatewaysOutput) GoString() string { return s.String() } // Contains the parameters for DescribeDhcpOptions. type DescribeDhcpOptionsInput struct { _ struct{} `type:"structure"` // The IDs of one or more DHCP options sets. // // Default: Describes all your DHCP options sets. DhcpOptionsIds []*string `locationName:"DhcpOptionsId" locationNameList:"DhcpOptionsId" type:"list"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * dhcp-options-id - The ID of a set of DHCP options. // // * key - The key for one of the options (for example, domain-name). // // * value - The value for one of the options. // // * tag:key=value - The key/value combination of a tag assigned to the resource. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` } // String returns the string representation func (s DescribeDhcpOptionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDhcpOptionsInput) GoString() string { return s.String() } // Contains the output of DescribeDhcpOptions. type DescribeDhcpOptionsOutput struct { _ struct{} `type:"structure"` // Information about one or more DHCP options sets. DhcpOptions []*DhcpOptions `locationName:"dhcpOptionsSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeDhcpOptionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDhcpOptionsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeExportTasks. type DescribeExportTasksInput struct { _ struct{} `type:"structure"` // One or more export task IDs. ExportTaskIds []*string `locationName:"exportTaskId" locationNameList:"ExportTaskId" type:"list"` } // String returns the string representation func (s DescribeExportTasksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeExportTasksInput) GoString() string { return s.String() } // Contains the output for DescribeExportTasks. type DescribeExportTasksOutput struct { _ struct{} `type:"structure"` // Information about the export tasks. ExportTasks []*ExportTask `locationName:"exportTaskSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeExportTasksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeExportTasksOutput) GoString() string { return s.String() } // Contains the parameters for DescribeFlowLogs. type DescribeFlowLogsInput struct { _ struct{} `type:"structure"` // One or more filters. // // * deliver-log-status - The status of the logs delivery (SUCCESS | FAILED). // // * flow-log-id - The ID of the flow log. // // * log-group-name - The name of the log group. // // * resource-id - The ID of the VPC, subnet, or network interface. // // * traffic-type - The type of traffic (ACCEPT | REJECT | ALL) Filter []*Filter `locationNameList:"Filter" type:"list"` // One or more flow log IDs. FlowLogIds []*string `locationName:"FlowLogId" locationNameList:"item" type:"list"` // The maximum number of results to return for the request in a single page. // The remaining results can be seen by sending another request with the returned // NextToken value. This value can be between 5 and 1000; if MaxResults is given // a value larger than 1000, only 1000 results are returned. You cannot specify // this parameter and the flow log IDs parameter in the same request. MaxResults *int64 `type:"integer"` // The token to retrieve the next page of results. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeFlowLogsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeFlowLogsInput) GoString() string { return s.String() } // Contains the output of DescribeFlowLogs. type DescribeFlowLogsOutput struct { _ struct{} `type:"structure"` // Information about the flow logs. FlowLogs []*FlowLog `locationName:"flowLogSet" locationNameList:"item" type:"list"` // The token to use to retrieve the next page of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeFlowLogsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeFlowLogsOutput) GoString() string { return s.String() } type DescribeHostReservationOfferingsInput struct { _ struct{} `type:"structure"` // One or more filters. // // * instance-family - The instance family of the offering (e.g., m4). // // * payment-option - The payment option (No Upfront | Partial Upfront | // All Upfront). Filter []*Filter `locationNameList:"Filter" type:"list"` // This is the maximum duration of the reservation you'd like to purchase, specified // in seconds. Reservations are available in one-year and three-year terms. // The number of seconds specified must be the number of seconds in a year (365x24x60x60) // times one of the supported durations (1 or 3). For example, specify 94608000 // for three years. MaxDuration *int64 `type:"integer"` // The maximum number of results to return for the request in a single page. // The remaining results can be seen by sending another request with the returned // nextToken value. This value can be between 5 and 500; if maxResults is given // a larger value than 500, you will receive an error. MaxResults *int64 `type:"integer"` // This is the minimum duration of the reservation you'd like to purchase, specified // in seconds. Reservations are available in one-year and three-year terms. // The number of seconds specified must be the number of seconds in a year (365x24x60x60) // times one of the supported durations (1 or 3). For example, specify 31536000 // for one year. MinDuration *int64 `type:"integer"` // The token to use to retrieve the next page of results. NextToken *string `type:"string"` // The ID of the reservation offering. OfferingId *string `type:"string"` } // String returns the string representation func (s DescribeHostReservationOfferingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeHostReservationOfferingsInput) GoString() string { return s.String() } type DescribeHostReservationOfferingsOutput struct { _ struct{} `type:"structure"` // The token to use to retrieve the next page of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` // Information about the offerings. OfferingSet []*HostOffering `locationName:"offeringSet" type:"list"` } // String returns the string representation func (s DescribeHostReservationOfferingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeHostReservationOfferingsOutput) GoString() string { return s.String() } type DescribeHostReservationsInput struct { _ struct{} `type:"structure"` // One or more filters. // // * instance-family - The instance family (e.g., m4). // // * payment-option - The payment option (No Upfront | Partial Upfront | // All Upfront). // // * state - The state of the reservation (payment-pending | payment-failed // | active | retired). Filter []*Filter `locationNameList:"Filter" type:"list"` // One or more host reservation IDs. HostReservationIdSet []*string `locationNameList:"item" type:"list"` // The maximum number of results to return for the request in a single page. // The remaining results can be seen by sending another request with the returned // nextToken value. This value can be between 5 and 500; if maxResults is given // a larger value than 500, you will receive an error. MaxResults *int64 `type:"integer"` // The token to use to retrieve the next page of results. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeHostReservationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeHostReservationsInput) GoString() string { return s.String() } type DescribeHostReservationsOutput struct { _ struct{} `type:"structure"` // Details about the reservation's configuration. HostReservationSet []*HostReservation `locationName:"hostReservationSet" type:"list"` // The token to use to retrieve the next page of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeHostReservationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeHostReservationsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeHosts. type DescribeHostsInput struct { _ struct{} `type:"structure"` // One or more filters. // // * instance-type - The instance type size that the Dedicated Host is configured // to support. // // * auto-placement - Whether auto-placement is enabled or disabled (on | // off). // // * host-reservation-id - The ID of the reservation assigned to this host. // // * client-token - The idempotency token you provided when you launched // the instance // // * state- The allocation state of the Dedicated Host (available | under-assessment // | permanent-failure | released | released-permanent-failure). // // * availability-zone - The Availability Zone of the host. Filter []*Filter `locationName:"filter" locationNameList:"Filter" type:"list"` // The IDs of the Dedicated Hosts. The IDs are used for targeted instance launches. HostIds []*string `locationName:"hostId" locationNameList:"item" type:"list"` // The maximum number of results to return for the request in a single page. // The remaining results can be seen by sending another request with the returned // nextToken value. This value can be between 5 and 500; if maxResults is given // a larger value than 500, you will receive an error. You cannot specify this // parameter and the host IDs parameter in the same request. MaxResults *int64 `locationName:"maxResults" type:"integer"` // The token to retrieve the next page of results. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeHostsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeHostsInput) GoString() string { return s.String() } // Contains the output of DescribeHosts. type DescribeHostsOutput struct { _ struct{} `type:"structure"` // Information about the Dedicated Hosts. Hosts []*Host `locationName:"hostSet" locationNameList:"item" type:"list"` // The token to use to retrieve the next page of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeHostsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeHostsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeIdFormat. type DescribeIdFormatInput struct { _ struct{} `type:"structure"` // The type of resource: instance | reservation | snapshot | volume Resource *string `type:"string"` } // String returns the string representation func (s DescribeIdFormatInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeIdFormatInput) GoString() string { return s.String() } // Contains the output of DescribeIdFormat. type DescribeIdFormatOutput struct { _ struct{} `type:"structure"` // Information about the ID format for the resource. Statuses []*IdFormat `locationName:"statusSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeIdFormatOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeIdFormatOutput) GoString() string { return s.String() } // Contains the parameters for DescribeIdentityIdFormat. type DescribeIdentityIdFormatInput struct { _ struct{} `type:"structure"` // The ARN of the principal, which can be an IAM role, IAM user, or the root // user. // // PrincipalArn is a required field PrincipalArn *string `locationName:"principalArn" type:"string" required:"true"` // The type of resource: instance | reservation | snapshot | volume Resource *string `locationName:"resource" type:"string"` } // String returns the string representation func (s DescribeIdentityIdFormatInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeIdentityIdFormatInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeIdentityIdFormatInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeIdentityIdFormatInput"} if s.PrincipalArn == nil { invalidParams.Add(request.NewErrParamRequired("PrincipalArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeIdentityIdFormat. type DescribeIdentityIdFormatOutput struct { _ struct{} `type:"structure"` // Information about the ID format for the resources. Statuses []*IdFormat `locationName:"statusSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeIdentityIdFormatOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeIdentityIdFormatOutput) GoString() string { return s.String() } // Contains the parameters for DescribeImageAttribute. type DescribeImageAttributeInput struct { _ struct{} `type:"structure"` // The AMI attribute. // // Note: Depending on your account privileges, the blockDeviceMapping attribute // may return a Client.AuthFailure error. If this happens, use DescribeImages // to get information about the block device mapping for the AMI. // // Attribute is a required field Attribute *string `type:"string" required:"true" enum:"ImageAttributeName"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the AMI. // // ImageId is a required field ImageId *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeImageAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeImageAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeImageAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeImageAttributeInput"} if s.Attribute == nil { invalidParams.Add(request.NewErrParamRequired("Attribute")) } if s.ImageId == nil { invalidParams.Add(request.NewErrParamRequired("ImageId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes an image attribute. type DescribeImageAttributeOutput struct { _ struct{} `type:"structure"` // One or more block device mapping entries. BlockDeviceMappings []*BlockDeviceMapping `locationName:"blockDeviceMapping" locationNameList:"item" type:"list"` // A description for the AMI. Description *AttributeValue `locationName:"description" type:"structure"` // The ID of the AMI. ImageId *string `locationName:"imageId" type:"string"` // The kernel ID. KernelId *AttributeValue `locationName:"kernel" type:"structure"` // One or more launch permissions. LaunchPermissions []*LaunchPermission `locationName:"launchPermission" locationNameList:"item" type:"list"` // One or more product codes. ProductCodes []*ProductCode `locationName:"productCodes" locationNameList:"item" type:"list"` // The RAM disk ID. RamdiskId *AttributeValue `locationName:"ramdisk" type:"structure"` // Indicates whether enhanced networking with the Intel 82599 Virtual Function // interface is enabled. SriovNetSupport *AttributeValue `locationName:"sriovNetSupport" type:"structure"` } // String returns the string representation func (s DescribeImageAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeImageAttributeOutput) GoString() string { return s.String() } // Contains the parameters for DescribeImages. type DescribeImagesInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // Scopes the images by users with explicit launch permissions. Specify an AWS // account ID, self (the sender of the request), or all (public AMIs). ExecutableUsers []*string `locationName:"ExecutableBy" locationNameList:"ExecutableBy" type:"list"` // One or more filters. // // * architecture - The image architecture (i386 | x86_64). // // * block-device-mapping.delete-on-termination - A Boolean value that indicates // whether the Amazon EBS volume is deleted on instance termination. // // * block-device-mapping.device-name - The device name for the EBS volume // (for example, /dev/sdh). // // * block-device-mapping.snapshot-id - The ID of the snapshot used for the // EBS volume. // // * block-device-mapping.volume-size - The volume size of the EBS volume, // in GiB. // // * block-device-mapping.volume-type - The volume type of the EBS volume // (gp2 | io1 | st1 | sc1 | standard). // // * description - The description of the image (provided during image creation). // // * hypervisor - The hypervisor type (ovm | xen). // // * image-id - The ID of the image. // // * image-type - The image type (machine | kernel | ramdisk). // // * is-public - A Boolean that indicates whether the image is public. // // * kernel-id - The kernel ID. // // * manifest-location - The location of the image manifest. // // * name - The name of the AMI (provided during image creation). // // * owner-alias - String value from an Amazon-maintained list (amazon | // aws-marketplace | microsoft) of snapshot owners. Not to be confused with // the user-configured AWS account alias, which is set from the IAM console. // // * owner-id - The AWS account ID of the image owner. // // * platform - The platform. To only list Windows-based AMIs, use windows. // // * product-code - The product code. // // * product-code.type - The type of the product code (devpay | marketplace). // // * ramdisk-id - The RAM disk ID. // // * root-device-name - The name of the root device volume (for example, // /dev/sda1). // // * root-device-type - The type of the root device volume (ebs | instance-store). // // * state - The state of the image (available | pending | failed). // // * state-reason-code - The reason code for the state change. // // * state-reason-message - The message for the state change. // // * tag:key=value - The key/value combination of a tag assigned to the resource. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. // // * virtualization-type - The virtualization type (paravirtual | hvm). Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // One or more image IDs. // // Default: Describes all images available to you. ImageIds []*string `locationName:"ImageId" locationNameList:"ImageId" type:"list"` // Filters the images by the owner. Specify an AWS account ID, self (owner is // the sender of the request), or an AWS owner alias (valid values are amazon // | aws-marketplace | microsoft). Omitting this option returns all images for // which you have launch permissions, regardless of ownership. Owners []*string `locationName:"Owner" locationNameList:"Owner" type:"list"` } // String returns the string representation func (s DescribeImagesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeImagesInput) GoString() string { return s.String() } // Contains the output of DescribeImages. type DescribeImagesOutput struct { _ struct{} `type:"structure"` // Information about one or more images. Images []*Image `locationName:"imagesSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeImagesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeImagesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeImportImageTasks. type DescribeImportImageTasksInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // Filter tasks using the task-state filter and one of the following values: // active, completed, deleting, deleted. Filters []*Filter `locationNameList:"Filter" type:"list"` // A list of import image task IDs. ImportTaskIds []*string `locationName:"ImportTaskId" locationNameList:"ImportTaskId" type:"list"` // The maximum number of results to return in a single call. To retrieve the // remaining results, make another call with the returned NextToken value. MaxResults *int64 `type:"integer"` // A token that indicates the next page of results. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeImportImageTasksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeImportImageTasksInput) GoString() string { return s.String() } // Contains the output for DescribeImportImageTasks. type DescribeImportImageTasksOutput struct { _ struct{} `type:"structure"` // A list of zero or more import image tasks that are currently active or were // completed or canceled in the previous 7 days. ImportImageTasks []*ImportImageTask `locationName:"importImageTaskSet" locationNameList:"item" type:"list"` // The token to use to get the next page of results. This value is null when // there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeImportImageTasksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeImportImageTasksOutput) GoString() string { return s.String() } // Contains the parameters for DescribeImportSnapshotTasks. type DescribeImportSnapshotTasksInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // One or more filters. Filters []*Filter `locationNameList:"Filter" type:"list"` // A list of import snapshot task IDs. ImportTaskIds []*string `locationName:"ImportTaskId" locationNameList:"ImportTaskId" type:"list"` // The maximum number of results to return in a single call. To retrieve the // remaining results, make another call with the returned NextToken value. MaxResults *int64 `type:"integer"` // A token that indicates the next page of results. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeImportSnapshotTasksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeImportSnapshotTasksInput) GoString() string { return s.String() } // Contains the output for DescribeImportSnapshotTasks. type DescribeImportSnapshotTasksOutput struct { _ struct{} `type:"structure"` // A list of zero or more import snapshot tasks that are currently active or // were completed or canceled in the previous 7 days. ImportSnapshotTasks []*ImportSnapshotTask `locationName:"importSnapshotTaskSet" locationNameList:"item" type:"list"` // The token to use to get the next page of results. This value is null when // there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeImportSnapshotTasksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeImportSnapshotTasksOutput) GoString() string { return s.String() } // Contains the parameters for DescribeInstanceAttribute. type DescribeInstanceAttributeInput struct { _ struct{} `type:"structure"` // The instance attribute. // // Note: The enaSupport attribute is not supported at this time. // // Attribute is a required field Attribute *string `locationName:"attribute" type:"string" required:"true" enum:"InstanceAttributeName"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the instance. // // InstanceId is a required field InstanceId *string `locationName:"instanceId" type:"string" required:"true"` } // String returns the string representation func (s DescribeInstanceAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInstanceAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeInstanceAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeInstanceAttributeInput"} if s.Attribute == nil { invalidParams.Add(request.NewErrParamRequired("Attribute")) } if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes an instance attribute. type DescribeInstanceAttributeOutput struct { _ struct{} `type:"structure"` // The block device mapping of the instance. BlockDeviceMappings []*InstanceBlockDeviceMapping `locationName:"blockDeviceMapping" locationNameList:"item" type:"list"` // If the value is true, you can't terminate the instance through the Amazon // EC2 console, CLI, or API; otherwise, you can. DisableApiTermination *AttributeBooleanValue `locationName:"disableApiTermination" type:"structure"` // Indicates whether the instance is optimized for EBS I/O. EbsOptimized *AttributeBooleanValue `locationName:"ebsOptimized" type:"structure"` // Indicates whether enhanced networking with ENA is enabled. EnaSupport *AttributeBooleanValue `locationName:"enaSupport" type:"structure"` // The security groups associated with the instance. Groups []*GroupIdentifier `locationName:"groupSet" locationNameList:"item" type:"list"` // The ID of the instance. InstanceId *string `locationName:"instanceId" type:"string"` // Indicates whether an instance stops or terminates when you initiate shutdown // from the instance (using the operating system command for system shutdown). InstanceInitiatedShutdownBehavior *AttributeValue `locationName:"instanceInitiatedShutdownBehavior" type:"structure"` // The instance type. InstanceType *AttributeValue `locationName:"instanceType" type:"structure"` // The kernel ID. KernelId *AttributeValue `locationName:"kernel" type:"structure"` // A list of product codes. ProductCodes []*ProductCode `locationName:"productCodes" locationNameList:"item" type:"list"` // The RAM disk ID. RamdiskId *AttributeValue `locationName:"ramdisk" type:"structure"` // The name of the root device (for example, /dev/sda1 or /dev/xvda). RootDeviceName *AttributeValue `locationName:"rootDeviceName" type:"structure"` // Indicates whether source/destination checking is enabled. A value of true // means checking is enabled, and false means checking is disabled. This value // must be false for a NAT instance to perform NAT. SourceDestCheck *AttributeBooleanValue `locationName:"sourceDestCheck" type:"structure"` // Indicates whether enhanced networking with the Intel 82599 Virtual Function // interface is enabled. SriovNetSupport *AttributeValue `locationName:"sriovNetSupport" type:"structure"` // The user data. UserData *AttributeValue `locationName:"userData" type:"structure"` } // String returns the string representation func (s DescribeInstanceAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInstanceAttributeOutput) GoString() string { return s.String() } // Contains the parameters for DescribeInstanceStatus. type DescribeInstanceStatusInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * availability-zone - The Availability Zone of the instance. // // * event.code - The code for the scheduled event (instance-reboot | system-reboot // | system-maintenance | instance-retirement | instance-stop). // // * event.description - A description of the event. // // * event.not-after - The latest end time for the scheduled event (for example, // 2014-09-15T17:15:20.000Z). // // * event.not-before - The earliest start time for the scheduled event (for // example, 2014-09-15T17:15:20.000Z). // // * instance-state-code - The code for the instance state, as a 16-bit unsigned // integer. The high byte is an opaque internal value and should be ignored. // The low byte is set based on the state represented. The valid values are // 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64 (stopping), // and 80 (stopped). // // * instance-state-name - The state of the instance (pending | running | // shutting-down | terminated | stopping | stopped). // // * instance-status.reachability - Filters on instance status where the // name is reachability (passed | failed | initializing | insufficient-data). // // * instance-status.status - The status of the instance (ok | impaired | // initializing | insufficient-data | not-applicable). // // * system-status.reachability - Filters on system status where the name // is reachability (passed | failed | initializing | insufficient-data). // // * system-status.status - The system status of the instance (ok | impaired // | initializing | insufficient-data | not-applicable). Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // When true, includes the health status for all instances. When false, includes // the health status for running instances only. // // Default: false IncludeAllInstances *bool `locationName:"includeAllInstances" type:"boolean"` // One or more instance IDs. // // Default: Describes all your instances. // // Constraints: Maximum 100 explicitly specified instance IDs. InstanceIds []*string `locationName:"InstanceId" locationNameList:"InstanceId" type:"list"` // The maximum number of results to return in a single call. To retrieve the // remaining results, make another call with the returned NextToken value. This // value can be between 5 and 1000. You cannot specify this parameter and the // instance IDs parameter in the same call. MaxResults *int64 `type:"integer"` // The token to retrieve the next page of results. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeInstanceStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInstanceStatusInput) GoString() string { return s.String() } // Contains the output of DescribeInstanceStatus. type DescribeInstanceStatusOutput struct { _ struct{} `type:"structure"` // One or more instance status descriptions. InstanceStatuses []*InstanceStatus `locationName:"instanceStatusSet" locationNameList:"item" type:"list"` // The token to use to retrieve the next page of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeInstanceStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInstanceStatusOutput) GoString() string { return s.String() } // Contains the parameters for DescribeInstances. type DescribeInstancesInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * affinity - The affinity setting for an instance running on a Dedicated // Host (default | host). // // * architecture - The instance architecture (i386 | x86_64). // // * availability-zone - The Availability Zone of the instance. // // * block-device-mapping.attach-time - The attach time for an EBS volume // mapped to the instance, for example, 2010-09-15T17:15:20.000Z. // // * block-device-mapping.delete-on-termination - A Boolean that indicates // whether the EBS volume is deleted on instance termination. // // * block-device-mapping.device-name - The device name for the EBS volume // (for example, /dev/sdh or xvdh). // // * block-device-mapping.status - The status for the EBS volume (attaching // | attached | detaching | detached). // // * block-device-mapping.volume-id - The volume ID of the EBS volume. // // * client-token - The idempotency token you provided when you launched // the instance. // // * dns-name - The public DNS name of the instance. // // * group-id - The ID of the security group for the instance. EC2-Classic // only. // // * group-name - The name of the security group for the instance. EC2-Classic // only. // // * host-id - The ID of the Dedicated Host on which the instance is running, // if applicable. // // * hypervisor - The hypervisor type of the instance (ovm | xen). // // * iam-instance-profile.arn - The instance profile associated with the // instance. Specified as an ARN. // // * image-id - The ID of the image used to launch the instance. // // * instance-id - The ID of the instance. // // * instance-lifecycle - Indicates whether this is a Spot Instance or a // Scheduled Instance (spot | scheduled). // // * instance-state-code - The state of the instance, as a 16-bit unsigned // integer. The high byte is an opaque internal value and should be ignored. // The low byte is set based on the state represented. The valid values are: // 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64 (stopping), // and 80 (stopped). // // * instance-state-name - The state of the instance (pending | running | // shutting-down | terminated | stopping | stopped). // // * instance-type - The type of instance (for example, t2.micro). // // * instance.group-id - The ID of the security group for the instance. // // * instance.group-name - The name of the security group for the instance. // // // * ip-address - The public IP address of the instance. // // * kernel-id - The kernel ID. // // * key-name - The name of the key pair used when the instance was launched. // // * launch-index - When launching multiple instances, this is the index // for the instance in the launch group (for example, 0, 1, 2, and so on). // // // * launch-time - The time when the instance was launched. // // * monitoring-state - Indicates whether monitoring is enabled for the instance // (disabled | enabled). // // * owner-id - The AWS account ID of the instance owner. // // * placement-group-name - The name of the placement group for the instance. // // * platform - The platform. Use windows if you have Windows instances; // otherwise, leave blank. // // * private-dns-name - The private DNS name of the instance. // // * private-ip-address - The private IP address of the instance. // // * product-code - The product code associated with the AMI used to launch // the instance. // // * product-code.type - The type of product code (devpay | marketplace). // // * ramdisk-id - The RAM disk ID. // // * reason - The reason for the current state of the instance (for example, // shows "User Initiated [date]" when you stop or terminate the instance). // Similar to the state-reason-code filter. // // * requester-id - The ID of the entity that launched the instance on your // behalf (for example, AWS Management Console, Auto Scaling, and so on). // // * reservation-id - The ID of the instance's reservation. A reservation // ID is created any time you launch an instance. A reservation ID has a // one-to-one relationship with an instance launch request, but can be associated // with more than one instance if you launch multiple instances using the // same launch request. For example, if you launch one instance, you'll get // one reservation ID. If you launch ten instances using the same launch // request, you'll also get one reservation ID. // // * root-device-name - The name of the root device for the instance (for // example, /dev/sda1 or /dev/xvda). // // * root-device-type - The type of root device that the instance uses (ebs // | instance-store). // // * source-dest-check - Indicates whether the instance performs source/destination // checking. A value of true means that checking is enabled, and false means // checking is disabled. The value must be false for the instance to perform // network address translation (NAT) in your VPC. // // * spot-instance-request-id - The ID of the Spot instance request. // // * state-reason-code - The reason code for the state change. // // * state-reason-message - A message that describes the state change. // // * subnet-id - The ID of the subnet for the instance. // // * tag:key=value - The key/value combination of a tag assigned to the resource, // where tag:key is the tag's key. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. // // * tenancy - The tenancy of an instance (dedicated | default | host). // // * virtualization-type - The virtualization type of the instance (paravirtual // | hvm). // // * vpc-id - The ID of the VPC that the instance is running in. // // * network-interface.description - The description of the network interface. // // * network-interface.subnet-id - The ID of the subnet for the network interface. // // * network-interface.vpc-id - The ID of the VPC for the network interface. // // * network-interface.network-interface-id - The ID of the network interface. // // * network-interface.owner-id - The ID of the owner of the network interface. // // * network-interface.availability-zone - The Availability Zone for the // network interface. // // * network-interface.requester-id - The requester ID for the network interface. // // * network-interface.requester-managed - Indicates whether the network // interface is being managed by AWS. // // * network-interface.status - The status of the network interface (available) // | in-use). // // * network-interface.mac-address - The MAC address of the network interface. // // * network-interface.private-dns-name - The private DNS name of the network // interface. // // * network-interface.source-dest-check - Whether the network interface // performs source/destination checking. A value of true means checking is // enabled, and false means checking is disabled. The value must be false // for the network interface to perform network address translation (NAT) // in your VPC. // // * network-interface.group-id - The ID of a security group associated with // the network interface. // // * network-interface.group-name - The name of a security group associated // with the network interface. // // * network-interface.attachment.attachment-id - The ID of the interface // attachment. // // * network-interface.attachment.instance-id - The ID of the instance to // which the network interface is attached. // // * network-interface.attachment.instance-owner-id - The owner ID of the // instance to which the network interface is attached. // // * network-interface.addresses.private-ip-address - The private IP address // associated with the network interface. // // * network-interface.attachment.device-index - The device index to which // the network interface is attached. // // * network-interface.attachment.status - The status of the attachment (attaching // | attached | detaching | detached). // // * network-interface.attachment.attach-time - The time that the network // interface was attached to an instance. // // * network-interface.attachment.delete-on-termination - Specifies whether // the attachment is deleted when an instance is terminated. // // * network-interface.addresses.primary - Specifies whether the IP address // of the network interface is the primary private IP address. // // * network-interface.addresses.association.public-ip - The ID of the association // of an Elastic IP address with a network interface. // // * network-interface.addresses.association.ip-owner-id - The owner ID of // the private IP address associated with the network interface. // // * association.public-ip - The address of the Elastic IP address bound // to the network interface. // // * association.ip-owner-id - The owner of the Elastic IP address associated // with the network interface. // // * association.allocation-id - The allocation ID returned when you allocated // the Elastic IP address for your network interface. // // * association.association-id - The association ID returned when the network // interface was associated with an IP address. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // One or more instance IDs. // // Default: Describes all your instances. InstanceIds []*string `locationName:"InstanceId" locationNameList:"InstanceId" type:"list"` // The maximum number of results to return in a single call. To retrieve the // remaining results, make another call with the returned NextToken value. This // value can be between 5 and 1000. You cannot specify this parameter and the // instance IDs parameter or tag filters in the same call. MaxResults *int64 `locationName:"maxResults" type:"integer"` // The token to request the next page of results. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInstancesInput) GoString() string { return s.String() } // Contains the output of DescribeInstances. type DescribeInstancesOutput struct { _ struct{} `type:"structure"` // The token to use to retrieve the next page of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` // Zero or more reservations. Reservations []*Reservation `locationName:"reservationSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInstancesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeInternetGateways. type DescribeInternetGatewaysInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * attachment.state - The current state of the attachment between the gateway // and the VPC (available). Present only if a VPC is attached. // // * attachment.vpc-id - The ID of an attached VPC. // // * internet-gateway-id - The ID of the Internet gateway. // // * tag:key=value - The key/value combination of a tag assigned to the resource. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // One or more Internet gateway IDs. // // Default: Describes all your Internet gateways. InternetGatewayIds []*string `locationName:"internetGatewayId" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeInternetGatewaysInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInternetGatewaysInput) GoString() string { return s.String() } // Contains the output of DescribeInternetGateways. type DescribeInternetGatewaysOutput struct { _ struct{} `type:"structure"` // Information about one or more Internet gateways. InternetGateways []*InternetGateway `locationName:"internetGatewaySet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeInternetGatewaysOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInternetGatewaysOutput) GoString() string { return s.String() } // Contains the parameters for DescribeKeyPairs. type DescribeKeyPairsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * fingerprint - The fingerprint of the key pair. // // * key-name - The name of the key pair. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // One or more key pair names. // // Default: Describes all your key pairs. KeyNames []*string `locationName:"KeyName" locationNameList:"KeyName" type:"list"` } // String returns the string representation func (s DescribeKeyPairsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeKeyPairsInput) GoString() string { return s.String() } // Contains the output of DescribeKeyPairs. type DescribeKeyPairsOutput struct { _ struct{} `type:"structure"` // Information about one or more key pairs. KeyPairs []*KeyPairInfo `locationName:"keySet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeKeyPairsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeKeyPairsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeMovingAddresses. type DescribeMovingAddressesInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * moving-status - The status of the Elastic IP address (MovingToVpc | // RestoringToClassic). Filters []*Filter `locationName:"filter" locationNameList:"Filter" type:"list"` // The maximum number of results to return for the request in a single page. // The remaining results of the initial request can be seen by sending another // request with the returned NextToken value. This value can be between 5 and // 1000; if MaxResults is given a value outside of this range, an error is returned. // // Default: If no value is provided, the default is 1000. MaxResults *int64 `locationName:"maxResults" type:"integer"` // The token to use to retrieve the next page of results. NextToken *string `locationName:"nextToken" type:"string"` // One or more Elastic IP addresses. PublicIps []*string `locationName:"publicIp" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeMovingAddressesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeMovingAddressesInput) GoString() string { return s.String() } // Contains the output of DescribeMovingAddresses. type DescribeMovingAddressesOutput struct { _ struct{} `type:"structure"` // The status for each Elastic IP address. MovingAddressStatuses []*MovingAddressStatus `locationName:"movingAddressStatusSet" locationNameList:"item" type:"list"` // The token to use to retrieve the next page of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeMovingAddressesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeMovingAddressesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeNatGateways. type DescribeNatGatewaysInput struct { _ struct{} `type:"structure"` // One or more filters. // // * nat-gateway-id - The ID of the NAT gateway. // // * state - The state of the NAT gateway (pending | failed | available | // deleting | deleted). // // * subnet-id - The ID of the subnet in which the NAT gateway resides. // // * vpc-id - The ID of the VPC in which the NAT gateway resides. Filter []*Filter `locationNameList:"Filter" type:"list"` // The maximum number of items to return for this request. The request returns // a token that you can specify in a subsequent call to get the next set of // results. // // Constraint: If the value specified is greater than 1000, we return only 1000 // items. MaxResults *int64 `type:"integer"` // One or more NAT gateway IDs. NatGatewayIds []*string `locationName:"NatGatewayId" locationNameList:"item" type:"list"` // The token to retrieve the next page of results. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeNatGatewaysInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeNatGatewaysInput) GoString() string { return s.String() } // Contains the output of DescribeNatGateways. type DescribeNatGatewaysOutput struct { _ struct{} `type:"structure"` // Information about the NAT gateways. NatGateways []*NatGateway `locationName:"natGatewaySet" locationNameList:"item" type:"list"` // The token to use to retrieve the next page of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeNatGatewaysOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeNatGatewaysOutput) GoString() string { return s.String() } // Contains the parameters for DescribeNetworkAcls. type DescribeNetworkAclsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * association.association-id - The ID of an association ID for the ACL. // // * association.network-acl-id - The ID of the network ACL involved in the // association. // // * association.subnet-id - The ID of the subnet involved in the association. // // * default - Indicates whether the ACL is the default network ACL for the // VPC. // // * entry.cidr - The CIDR range specified in the entry. // // * entry.egress - Indicates whether the entry applies to egress traffic. // // * entry.icmp.code - The ICMP code specified in the entry, if any. // // * entry.icmp.type - The ICMP type specified in the entry, if any. // // * entry.port-range.from - The start of the port range specified in the // entry. // // * entry.port-range.to - The end of the port range specified in the entry. // // // * entry.protocol - The protocol specified in the entry (tcp | udp | icmp // or a protocol number). // // * entry.rule-action - Allows or denies the matching traffic (allow | deny). // // * entry.rule-number - The number of an entry (in other words, rule) in // the ACL's set of entries. // // * network-acl-id - The ID of the network ACL. // // * tag:key=value - The key/value combination of a tag assigned to the resource. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. // // * vpc-id - The ID of the VPC for the network ACL. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // One or more network ACL IDs. // // Default: Describes all your network ACLs. NetworkAclIds []*string `locationName:"NetworkAclId" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeNetworkAclsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeNetworkAclsInput) GoString() string { return s.String() } // Contains the output of DescribeNetworkAcls. type DescribeNetworkAclsOutput struct { _ struct{} `type:"structure"` // Information about one or more network ACLs. NetworkAcls []*NetworkAcl `locationName:"networkAclSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeNetworkAclsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeNetworkAclsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeNetworkInterfaceAttribute. type DescribeNetworkInterfaceAttributeInput struct { _ struct{} `type:"structure"` // The attribute of the network interface. Attribute *string `locationName:"attribute" type:"string" enum:"NetworkInterfaceAttribute"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the network interface. // // NetworkInterfaceId is a required field NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string" required:"true"` } // String returns the string representation func (s DescribeNetworkInterfaceAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeNetworkInterfaceAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeNetworkInterfaceAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeNetworkInterfaceAttributeInput"} if s.NetworkInterfaceId == nil { invalidParams.Add(request.NewErrParamRequired("NetworkInterfaceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeNetworkInterfaceAttribute. type DescribeNetworkInterfaceAttributeOutput struct { _ struct{} `type:"structure"` // The attachment (if any) of the network interface. Attachment *NetworkInterfaceAttachment `locationName:"attachment" type:"structure"` // The description of the network interface. Description *AttributeValue `locationName:"description" type:"structure"` // The security groups associated with the network interface. Groups []*GroupIdentifier `locationName:"groupSet" locationNameList:"item" type:"list"` // The ID of the network interface. NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string"` // Indicates whether source/destination checking is enabled. SourceDestCheck *AttributeBooleanValue `locationName:"sourceDestCheck" type:"structure"` } // String returns the string representation func (s DescribeNetworkInterfaceAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeNetworkInterfaceAttributeOutput) GoString() string { return s.String() } // Contains the parameters for DescribeNetworkInterfaces. type DescribeNetworkInterfacesInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * addresses.private-ip-address - The private IP addresses associated with // the network interface. // // * addresses.primary - Whether the private IP address is the primary IP // address associated with the network interface. // // * addresses.association.public-ip - The association ID returned when the // network interface was associated with the Elastic IP address. // // * addresses.association.owner-id - The owner ID of the addresses associated // with the network interface. // // * association.association-id - The association ID returned when the network // interface was associated with an IP address. // // * association.allocation-id - The allocation ID returned when you allocated // the Elastic IP address for your network interface. // // * association.ip-owner-id - The owner of the Elastic IP address associated // with the network interface. // // * association.public-ip - The address of the Elastic IP address bound // to the network interface. // // * association.public-dns-name - The public DNS name for the network interface. // // * attachment.attachment-id - The ID of the interface attachment. // // * attachment.attach.time - The time that the network interface was attached // to an instance. // // * attachment.delete-on-termination - Indicates whether the attachment // is deleted when an instance is terminated. // // * attachment.device-index - The device index to which the network interface // is attached. // // * attachment.instance-id - The ID of the instance to which the network // interface is attached. // // * attachment.instance-owner-id - The owner ID of the instance to which // the network interface is attached. // // * attachment.nat-gateway-id - The ID of the NAT gateway to which the network // interface is attached. // // * attachment.status - The status of the attachment (attaching | attached // | detaching | detached). // // * availability-zone - The Availability Zone of the network interface. // // * description - The description of the network interface. // // * group-id - The ID of a security group associated with the network interface. // // * group-name - The name of a security group associated with the network // interface. // // * mac-address - The MAC address of the network interface. // // * network-interface-id - The ID of the network interface. // // * owner-id - The AWS account ID of the network interface owner. // // * private-ip-address - The private IP address or addresses of the network // interface. // // * private-dns-name - The private DNS name of the network interface. // // * requester-id - The ID of the entity that launched the instance on your // behalf (for example, AWS Management Console, Auto Scaling, and so on). // // * requester-managed - Indicates whether the network interface is being // managed by an AWS service (for example, AWS Management Console, Auto Scaling, // and so on). // // * source-desk-check - Indicates whether the network interface performs // source/destination checking. A value of true means checking is enabled, // and false means checking is disabled. The value must be false for the // network interface to perform network address translation (NAT) in your // VPC. // // * status - The status of the network interface. If the network interface // is not attached to an instance, the status is available; if a network // interface is attached to an instance the status is in-use. // // * subnet-id - The ID of the subnet for the network interface. // // * tag:key=value - The key/value combination of a tag assigned to the resource. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. // // * vpc-id - The ID of the VPC for the network interface. Filters []*Filter `locationName:"filter" locationNameList:"Filter" type:"list"` // One or more network interface IDs. // // Default: Describes all your network interfaces. NetworkInterfaceIds []*string `locationName:"NetworkInterfaceId" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeNetworkInterfacesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeNetworkInterfacesInput) GoString() string { return s.String() } // Contains the output of DescribeNetworkInterfaces. type DescribeNetworkInterfacesOutput struct { _ struct{} `type:"structure"` // Information about one or more network interfaces. NetworkInterfaces []*NetworkInterface `locationName:"networkInterfaceSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeNetworkInterfacesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeNetworkInterfacesOutput) GoString() string { return s.String() } // Contains the parameters for DescribePlacementGroups. type DescribePlacementGroupsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * group-name - The name of the placement group. // // * state - The state of the placement group (pending | available | deleting // | deleted). // // * strategy - The strategy of the placement group (cluster). Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // One or more placement group names. // // Default: Describes all your placement groups, or only those otherwise specified. GroupNames []*string `locationName:"groupName" type:"list"` } // String returns the string representation func (s DescribePlacementGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribePlacementGroupsInput) GoString() string { return s.String() } // Contains the output of DescribePlacementGroups. type DescribePlacementGroupsOutput struct { _ struct{} `type:"structure"` // One or more placement groups. PlacementGroups []*PlacementGroup `locationName:"placementGroupSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribePlacementGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribePlacementGroupsOutput) GoString() string { return s.String() } // Contains the parameters for DescribePrefixLists. type DescribePrefixListsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // One or more filters. // // * prefix-list-id: The ID of a prefix list. // // * prefix-list-name: The name of a prefix list. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // The maximum number of items to return for this request. The request returns // a token that you can specify in a subsequent call to get the next set of // results. // // Constraint: If the value specified is greater than 1000, we return only 1000 // items. MaxResults *int64 `type:"integer"` // The token for the next set of items to return. (You received this token from // a prior call.) NextToken *string `type:"string"` // One or more prefix list IDs. PrefixListIds []*string `locationName:"PrefixListId" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribePrefixListsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribePrefixListsInput) GoString() string { return s.String() } // Contains the output of DescribePrefixLists. type DescribePrefixListsOutput struct { _ struct{} `type:"structure"` // The token to use when requesting the next set of items. If there are no additional // items to return, the string is empty. NextToken *string `locationName:"nextToken" type:"string"` // All available prefix lists. PrefixLists []*PrefixList `locationName:"prefixListSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribePrefixListsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribePrefixListsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeRegions. type DescribeRegionsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * endpoint - The endpoint of the region (for example, ec2.us-east-1.amazonaws.com). // // * region-name - The name of the region (for example, us-east-1). Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // The names of one or more regions. RegionNames []*string `locationName:"RegionName" locationNameList:"RegionName" type:"list"` } // String returns the string representation func (s DescribeRegionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRegionsInput) GoString() string { return s.String() } // Contains the output of DescribeRegions. type DescribeRegionsOutput struct { _ struct{} `type:"structure"` // Information about one or more regions. Regions []*Region `locationName:"regionInfo" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeRegionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRegionsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeReservedInstances. type DescribeReservedInstancesInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * availability-zone - The Availability Zone where the Reserved Instance // can be used. // // * duration - The duration of the Reserved Instance (one year or three // years), in seconds (31536000 | 94608000). // // * end - The time when the Reserved Instance expires (for example, 2015-08-07T11:54:42.000Z). // // * fixed-price - The purchase price of the Reserved Instance (for example, // 9800.0). // // * instance-type - The instance type that is covered by the reservation. // // * scope - The scope of the Reserved Instance (Region or Availability Zone). // // * product-description - The Reserved Instance product platform description. // Instances that include (Amazon VPC) in the product platform description // will only be displayed to EC2-Classic account holders and are for use // with Amazon VPC (Linux/UNIX | Linux/UNIX (Amazon VPC) | SUSE Linux | SUSE // Linux (Amazon VPC) | Red Hat Enterprise Linux | Red Hat Enterprise Linux // (Amazon VPC) | Windows | Windows (Amazon VPC) | Windows with SQL Server // Standard | Windows with SQL Server Standard (Amazon VPC) | Windows with // SQL Server Web | Windows with SQL Server Web (Amazon VPC) | Windows with // SQL Server Enterprise | Windows with SQL Server Enterprise (Amazon VPC)). // // * reserved-instances-id - The ID of the Reserved Instance. // // * start - The time at which the Reserved Instance purchase request was // placed (for example, 2014-08-07T11:54:42.000Z). // // * state - The state of the Reserved Instance (payment-pending | active // | payment-failed | retired). // // * tag:key=value - The key/value combination of a tag assigned to the resource. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. // // * usage-price - The usage price of the Reserved Instance, per hour (for // example, 0.84). Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // Describes whether the Reserved Instance is Standard or Convertible. OfferingClass *string `type:"string" enum:"OfferingClassType"` // The Reserved Instance offering type. If you are using tools that predate // the 2011-11-01 API version, you only have access to the Medium Utilization // Reserved Instance offering type. OfferingType *string `locationName:"offeringType" type:"string" enum:"OfferingTypeValues"` // One or more Reserved Instance IDs. // // Default: Describes all your Reserved Instances, or only those otherwise specified. ReservedInstancesIds []*string `locationName:"ReservedInstancesId" locationNameList:"ReservedInstancesId" type:"list"` } // String returns the string representation func (s DescribeReservedInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedInstancesInput) GoString() string { return s.String() } // Contains the parameters for DescribeReservedInstancesListings. type DescribeReservedInstancesListingsInput struct { _ struct{} `type:"structure"` // One or more filters. // // * reserved-instances-id - The ID of the Reserved Instances. // // * reserved-instances-listing-id - The ID of the Reserved Instances listing. // // * status - The status of the Reserved Instance listing (pending | active // | cancelled | closed). // // * status-message - The reason for the status. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // One or more Reserved Instance IDs. ReservedInstancesId *string `locationName:"reservedInstancesId" type:"string"` // One or more Reserved Instance listing IDs. ReservedInstancesListingId *string `locationName:"reservedInstancesListingId" type:"string"` } // String returns the string representation func (s DescribeReservedInstancesListingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedInstancesListingsInput) GoString() string { return s.String() } // Contains the output of DescribeReservedInstancesListings. type DescribeReservedInstancesListingsOutput struct { _ struct{} `type:"structure"` // Information about the Reserved Instance listing. ReservedInstancesListings []*ReservedInstancesListing `locationName:"reservedInstancesListingsSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeReservedInstancesListingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedInstancesListingsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeReservedInstancesModifications. type DescribeReservedInstancesModificationsInput struct { _ struct{} `type:"structure"` // One or more filters. // // * client-token - The idempotency token for the modification request. // // * create-date - The time when the modification request was created. // // * effective-date - The time when the modification becomes effective. // // * modification-result.reserved-instances-id - The ID for the Reserved // Instances created as part of the modification request. This ID is only // available when the status of the modification is fulfilled. // // * modification-result.target-configuration.availability-zone - The Availability // Zone for the new Reserved Instances. // // * modification-result.target-configuration.instance-count - The number // of new Reserved Instances. // // * modification-result.target-configuration.instance-type - The instance // type of the new Reserved Instances. // // * modification-result.target-configuration.platform - The network platform // of the new Reserved Instances (EC2-Classic | EC2-VPC). // // * reserved-instances-id - The ID of the Reserved Instances modified. // // * reserved-instances-modification-id - The ID of the modification request. // // * status - The status of the Reserved Instances modification request (processing // | fulfilled | failed). // // * status-message - The reason for the status. // // * update-date - The time when the modification request was last updated. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // The token to retrieve the next page of results. NextToken *string `locationName:"nextToken" type:"string"` // IDs for the submitted modification request. ReservedInstancesModificationIds []*string `locationName:"ReservedInstancesModificationId" locationNameList:"ReservedInstancesModificationId" type:"list"` } // String returns the string representation func (s DescribeReservedInstancesModificationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedInstancesModificationsInput) GoString() string { return s.String() } // Contains the output of DescribeReservedInstancesModifications. type DescribeReservedInstancesModificationsOutput struct { _ struct{} `type:"structure"` // The token to use to retrieve the next page of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` // The Reserved Instance modification information. ReservedInstancesModifications []*ReservedInstancesModification `locationName:"reservedInstancesModificationsSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeReservedInstancesModificationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedInstancesModificationsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeReservedInstancesOfferings. type DescribeReservedInstancesOfferingsInput struct { _ struct{} `type:"structure"` // The Availability Zone in which the Reserved Instance can be used. AvailabilityZone *string `type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * availability-zone - The Availability Zone where the Reserved Instance // can be used. // // * duration - The duration of the Reserved Instance (for example, one year // or three years), in seconds (31536000 | 94608000). // // * fixed-price - The purchase price of the Reserved Instance (for example, // 9800.0). // // * instance-type - The instance type that is covered by the reservation. // // * marketplace - Set to true to show only Reserved Instance Marketplace // offerings. When this filter is not used, which is the default behavior, // all offerings from both AWS and the Reserved Instance Marketplace are // listed. // // * product-description - The Reserved Instance product platform description. // Instances that include (Amazon VPC) in the product platform description // will only be displayed to EC2-Classic account holders and are for use // with Amazon VPC. (Linux/UNIX | Linux/UNIX (Amazon VPC) | SUSE Linux | // SUSE Linux (Amazon VPC) | Red Hat Enterprise Linux | Red Hat Enterprise // Linux (Amazon VPC) | Windows | Windows (Amazon VPC) | Windows with SQL // Server Standard | Windows with SQL Server Standard (Amazon VPC) | Windows // with SQL Server Web | Windows with SQL Server Web (Amazon VPC) | Windows // with SQL Server Enterprise | Windows with SQL Server Enterprise (Amazon // VPC)) // // * reserved-instances-offering-id - The Reserved Instances offering ID. // // * scope - The scope of the Reserved Instance (Availability Zone or Region). // // * usage-price - The usage price of the Reserved Instance, per hour (for // example, 0.84). Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // Include Reserved Instance Marketplace offerings in the response. IncludeMarketplace *bool `type:"boolean"` // The tenancy of the instances covered by the reservation. A Reserved Instance // with a tenancy of dedicated is applied to instances that run in a VPC on // single-tenant hardware (i.e., Dedicated Instances). // // Default: default InstanceTenancy *string `locationName:"instanceTenancy" type:"string" enum:"Tenancy"` // The instance type that the reservation will cover (for example, m1.small). // For more information, see Instance Types (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) // in the Amazon Elastic Compute Cloud User Guide. InstanceType *string `type:"string" enum:"InstanceType"` // The maximum duration (in seconds) to filter when searching for offerings. // // Default: 94608000 (3 years) MaxDuration *int64 `type:"long"` // The maximum number of instances to filter when searching for offerings. // // Default: 20 MaxInstanceCount *int64 `type:"integer"` // The maximum number of results to return for the request in a single page. // The remaining results of the initial request can be seen by sending another // request with the returned NextToken value. The maximum is 100. // // Default: 100 MaxResults *int64 `locationName:"maxResults" type:"integer"` // The minimum duration (in seconds) to filter when searching for offerings. // // Default: 2592000 (1 month) MinDuration *int64 `type:"long"` // The token to retrieve the next page of results. NextToken *string `locationName:"nextToken" type:"string"` // The offering class of the Reserved Instance. Can be standard or convertible. OfferingClass *string `type:"string" enum:"OfferingClassType"` // The Reserved Instance offering type. If you are using tools that predate // the 2011-11-01 API version, you only have access to the Medium Utilization // Reserved Instance offering type. OfferingType *string `locationName:"offeringType" type:"string" enum:"OfferingTypeValues"` // The Reserved Instance product platform description. Instances that include // (Amazon VPC) in the description are for use with Amazon VPC. ProductDescription *string `type:"string" enum:"RIProductDescription"` // One or more Reserved Instances offering IDs. ReservedInstancesOfferingIds []*string `locationName:"ReservedInstancesOfferingId" type:"list"` } // String returns the string representation func (s DescribeReservedInstancesOfferingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedInstancesOfferingsInput) GoString() string { return s.String() } // Contains the output of DescribeReservedInstancesOfferings. type DescribeReservedInstancesOfferingsOutput struct { _ struct{} `type:"structure"` // The token to use to retrieve the next page of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` // A list of Reserved Instances offerings. ReservedInstancesOfferings []*ReservedInstancesOffering `locationName:"reservedInstancesOfferingsSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeReservedInstancesOfferingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedInstancesOfferingsOutput) GoString() string { return s.String() } // Contains the output for DescribeReservedInstances. type DescribeReservedInstancesOutput struct { _ struct{} `type:"structure"` // A list of Reserved Instances. ReservedInstances []*ReservedInstances `locationName:"reservedInstancesSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeReservedInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedInstancesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeRouteTables. type DescribeRouteTablesInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * association.route-table-association-id - The ID of an association ID // for the route table. // // * association.route-table-id - The ID of the route table involved in the // association. // // * association.subnet-id - The ID of the subnet involved in the association. // // * association.main - Indicates whether the route table is the main route // table for the VPC (true | false). // // * route-table-id - The ID of the route table. // // * route.destination-cidr-block - The CIDR range specified in a route in // the table. // // * route.destination-prefix-list-id - The ID (prefix) of the AWS service // specified in a route in the table. // // * route.gateway-id - The ID of a gateway specified in a route in the table. // // * route.instance-id - The ID of an instance specified in a route in the // table. // // * route.nat-gateway-id - The ID of a NAT gateway. // // * route.origin - Describes how the route was created. CreateRouteTable // indicates that the route was automatically created when the route table // was created; CreateRoute indicates that the route was manually added to // the route table; EnableVgwRoutePropagation indicates that the route was // propagated by route propagation. // // * route.state - The state of a route in the route table (active | blackhole). // The blackhole state indicates that the route's target isn't available // (for example, the specified gateway isn't attached to the VPC, the specified // NAT instance has been terminated, and so on). // // * route.vpc-peering-connection-id - The ID of a VPC peering connection // specified in a route in the table. // // * tag:key=value - The key/value combination of a tag assigned to the resource. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. // // * vpc-id - The ID of the VPC for the route table. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // One or more route table IDs. // // Default: Describes all your route tables. RouteTableIds []*string `locationName:"RouteTableId" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeRouteTablesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRouteTablesInput) GoString() string { return s.String() } // Contains the output of DescribeRouteTables. type DescribeRouteTablesOutput struct { _ struct{} `type:"structure"` // Information about one or more route tables. RouteTables []*RouteTable `locationName:"routeTableSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeRouteTablesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRouteTablesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeScheduledInstanceAvailability. type DescribeScheduledInstanceAvailabilityInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // One or more filters. // // * availability-zone - The Availability Zone (for example, us-west-2a). // // * instance-type - The instance type (for example, c4.large). // // * network-platform - The network platform (EC2-Classic or EC2-VPC). // // * platform - The platform (Linux/UNIX or Windows). Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // The time period for the first schedule to start. // // FirstSlotStartTimeRange is a required field FirstSlotStartTimeRange *SlotDateTimeRangeRequest `type:"structure" required:"true"` // The maximum number of results to return in a single call. This value can // be between 5 and 300. The default value is 300. To retrieve the remaining // results, make another call with the returned NextToken value. MaxResults *int64 `type:"integer"` // The maximum available duration, in hours. This value must be greater than // MinSlotDurationInHours and less than 1,720. MaxSlotDurationInHours *int64 `type:"integer"` // The minimum available duration, in hours. The minimum required duration is // 1,200 hours per year. For example, the minimum daily schedule is 4 hours, // the minimum weekly schedule is 24 hours, and the minimum monthly schedule // is 100 hours. MinSlotDurationInHours *int64 `type:"integer"` // The token for the next set of results. NextToken *string `type:"string"` // The schedule recurrence. // // Recurrence is a required field Recurrence *ScheduledInstanceRecurrenceRequest `type:"structure" required:"true"` } // String returns the string representation func (s DescribeScheduledInstanceAvailabilityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScheduledInstanceAvailabilityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeScheduledInstanceAvailabilityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeScheduledInstanceAvailabilityInput"} if s.FirstSlotStartTimeRange == nil { invalidParams.Add(request.NewErrParamRequired("FirstSlotStartTimeRange")) } if s.Recurrence == nil { invalidParams.Add(request.NewErrParamRequired("Recurrence")) } if s.FirstSlotStartTimeRange != nil { if err := s.FirstSlotStartTimeRange.Validate(); err != nil { invalidParams.AddNested("FirstSlotStartTimeRange", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeScheduledInstanceAvailability. type DescribeScheduledInstanceAvailabilityOutput struct { _ struct{} `type:"structure"` // The token required to retrieve the next set of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` // Information about the available Scheduled Instances. ScheduledInstanceAvailabilitySet []*ScheduledInstanceAvailability `locationName:"scheduledInstanceAvailabilitySet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeScheduledInstanceAvailabilityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScheduledInstanceAvailabilityOutput) GoString() string { return s.String() } // Contains the parameters for DescribeScheduledInstances. type DescribeScheduledInstancesInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // One or more filters. // // * availability-zone - The Availability Zone (for example, us-west-2a). // // * instance-type - The instance type (for example, c4.large). // // * network-platform - The network platform (EC2-Classic or EC2-VPC). // // * platform - The platform (Linux/UNIX or Windows). Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // The maximum number of results to return in a single call. This value can // be between 5 and 300. The default value is 100. To retrieve the remaining // results, make another call with the returned NextToken value. MaxResults *int64 `type:"integer"` // The token for the next set of results. NextToken *string `type:"string"` // One or more Scheduled Instance IDs. ScheduledInstanceIds []*string `locationName:"ScheduledInstanceId" locationNameList:"ScheduledInstanceId" type:"list"` // The time period for the first schedule to start. SlotStartTimeRange *SlotStartTimeRangeRequest `type:"structure"` } // String returns the string representation func (s DescribeScheduledInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScheduledInstancesInput) GoString() string { return s.String() } // Contains the output of DescribeScheduledInstances. type DescribeScheduledInstancesOutput struct { _ struct{} `type:"structure"` // The token required to retrieve the next set of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` // Information about the Scheduled Instances. ScheduledInstanceSet []*ScheduledInstance `locationName:"scheduledInstanceSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeScheduledInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScheduledInstancesOutput) GoString() string { return s.String() } type DescribeSecurityGroupReferencesInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // One or more security group IDs in your account. // // GroupId is a required field GroupId []*string `locationNameList:"item" type:"list" required:"true"` } // String returns the string representation func (s DescribeSecurityGroupReferencesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSecurityGroupReferencesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeSecurityGroupReferencesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeSecurityGroupReferencesInput"} if s.GroupId == nil { invalidParams.Add(request.NewErrParamRequired("GroupId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeSecurityGroupReferencesOutput struct { _ struct{} `type:"structure"` // Information about the VPCs with the referencing security groups. SecurityGroupReferenceSet []*SecurityGroupReference `locationName:"securityGroupReferenceSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeSecurityGroupReferencesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSecurityGroupReferencesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeSecurityGroups. type DescribeSecurityGroupsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. If using multiple filters for rules, the results include // security groups for which any combination of rules - not necessarily a single // rule - match all filters. // // * description - The description of the security group. // // * egress.ip-permission.prefix-list-id - The ID (prefix) of the AWS service // to which the security group allows access. // // * group-id - The ID of the security group. // // * group-name - The name of the security group. // // * ip-permission.cidr - A CIDR range that has been granted permission. // // * ip-permission.from-port - The start of port range for the TCP and UDP // protocols, or an ICMP type number. // // * ip-permission.group-id - The ID of a security group that has been granted // permission. // // * ip-permission.group-name - The name of a security group that has been // granted permission. // // * ip-permission.protocol - The IP protocol for the permission (tcp | udp // | icmp or a protocol number). // // * ip-permission.to-port - The end of port range for the TCP and UDP protocols, // or an ICMP code. // // * ip-permission.user-id - The ID of an AWS account that has been granted // permission. // // * owner-id - The AWS account ID of the owner of the security group. // // * tag-key - The key of a tag assigned to the security group. // // * tag-value - The value of a tag assigned to the security group. // // * vpc-id - The ID of the VPC specified when the security group was created. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // One or more security group IDs. Required for security groups in a nondefault // VPC. // // Default: Describes all your security groups. GroupIds []*string `locationName:"GroupId" locationNameList:"groupId" type:"list"` // [EC2-Classic and default VPC only] One or more security group names. You // can specify either the security group name or the security group ID. For // security groups in a nondefault VPC, use the group-name filter to describe // security groups by name. // // Default: Describes all your security groups. GroupNames []*string `locationName:"GroupName" locationNameList:"GroupName" type:"list"` } // String returns the string representation func (s DescribeSecurityGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSecurityGroupsInput) GoString() string { return s.String() } // Contains the output of DescribeSecurityGroups. type DescribeSecurityGroupsOutput struct { _ struct{} `type:"structure"` // Information about one or more security groups. SecurityGroups []*SecurityGroup `locationName:"securityGroupInfo" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeSecurityGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSecurityGroupsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeSnapshotAttribute. type DescribeSnapshotAttributeInput struct { _ struct{} `type:"structure"` // The snapshot attribute you would like to view. // // Attribute is a required field Attribute *string `type:"string" required:"true" enum:"SnapshotAttributeName"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the EBS snapshot. // // SnapshotId is a required field SnapshotId *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeSnapshotAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSnapshotAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeSnapshotAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeSnapshotAttributeInput"} if s.Attribute == nil { invalidParams.Add(request.NewErrParamRequired("Attribute")) } if s.SnapshotId == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeSnapshotAttribute. type DescribeSnapshotAttributeOutput struct { _ struct{} `type:"structure"` // A list of permissions for creating volumes from the snapshot. CreateVolumePermissions []*CreateVolumePermission `locationName:"createVolumePermission" locationNameList:"item" type:"list"` // A list of product codes. ProductCodes []*ProductCode `locationName:"productCodes" locationNameList:"item" type:"list"` // The ID of the EBS snapshot. SnapshotId *string `locationName:"snapshotId" type:"string"` } // String returns the string representation func (s DescribeSnapshotAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSnapshotAttributeOutput) GoString() string { return s.String() } // Contains the parameters for DescribeSnapshots. type DescribeSnapshotsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * description - A description of the snapshot. // // * owner-alias - Value from an Amazon-maintained list (amazon | aws-marketplace // | microsoft) of snapshot owners. Not to be confused with the user-configured // AWS account alias, which is set from the IAM consolew. // // * owner-id - The ID of the AWS account that owns the snapshot. // // * progress - The progress of the snapshot, as a percentage (for example, // 80%). // // * snapshot-id - The snapshot ID. // // * start-time - The time stamp when the snapshot was initiated. // // * status - The status of the snapshot (pending | completed | error). // // * tag:key=value - The key/value combination of a tag assigned to the resource. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. // // * volume-id - The ID of the volume the snapshot is for. // // * volume-size - The size of the volume, in GiB. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // The maximum number of snapshot results returned by DescribeSnapshots in paginated // output. When this parameter is used, DescribeSnapshots only returns MaxResults // results in a single page along with a NextToken response element. The remaining // results of the initial request can be seen by sending another DescribeSnapshots // request with the returned NextToken value. This value can be between 5 and // 1000; if MaxResults is given a value larger than 1000, only 1000 results // are returned. If this parameter is not used, then DescribeSnapshots returns // all results. You cannot specify this parameter and the snapshot IDs parameter // in the same request. MaxResults *int64 `type:"integer"` // The NextToken value returned from a previous paginated DescribeSnapshots // request where MaxResults was used and the results exceeded the value of that // parameter. Pagination continues from the end of the previous results that // returned the NextToken value. This value is null when there are no more results // to return. NextToken *string `type:"string"` // Returns the snapshots owned by the specified owner. Multiple owners can be // specified. OwnerIds []*string `locationName:"Owner" locationNameList:"Owner" type:"list"` // One or more AWS accounts IDs that can create volumes from the snapshot. RestorableByUserIds []*string `locationName:"RestorableBy" type:"list"` // One or more snapshot IDs. // // Default: Describes snapshots for which you have launch permissions. SnapshotIds []*string `locationName:"SnapshotId" locationNameList:"SnapshotId" type:"list"` } // String returns the string representation func (s DescribeSnapshotsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSnapshotsInput) GoString() string { return s.String() } // Contains the output of DescribeSnapshots. type DescribeSnapshotsOutput struct { _ struct{} `type:"structure"` // The NextToken value to include in a future DescribeSnapshots request. When // the results of a DescribeSnapshots request exceed MaxResults, this value // can be used to retrieve the next page of results. This value is null when // there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` // Information about the snapshots. Snapshots []*Snapshot `locationName:"snapshotSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeSnapshotsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSnapshotsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeSpotDatafeedSubscription. type DescribeSpotDatafeedSubscriptionInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` } // String returns the string representation func (s DescribeSpotDatafeedSubscriptionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSpotDatafeedSubscriptionInput) GoString() string { return s.String() } // Contains the output of DescribeSpotDatafeedSubscription. type DescribeSpotDatafeedSubscriptionOutput struct { _ struct{} `type:"structure"` // The Spot instance data feed subscription. SpotDatafeedSubscription *SpotDatafeedSubscription `locationName:"spotDatafeedSubscription" type:"structure"` } // String returns the string representation func (s DescribeSpotDatafeedSubscriptionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSpotDatafeedSubscriptionOutput) GoString() string { return s.String() } // Contains the parameters for DescribeSpotFleetInstances. type DescribeSpotFleetInstancesInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The maximum number of results to return in a single call. Specify a value // between 1 and 1000. The default value is 1000. To retrieve the remaining // results, make another call with the returned NextToken value. MaxResults *int64 `locationName:"maxResults" type:"integer"` // The token for the next set of results. NextToken *string `locationName:"nextToken" type:"string"` // The ID of the Spot fleet request. // // SpotFleetRequestId is a required field SpotFleetRequestId *string `locationName:"spotFleetRequestId" type:"string" required:"true"` } // String returns the string representation func (s DescribeSpotFleetInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSpotFleetInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeSpotFleetInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeSpotFleetInstancesInput"} if s.SpotFleetRequestId == nil { invalidParams.Add(request.NewErrParamRequired("SpotFleetRequestId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeSpotFleetInstances. type DescribeSpotFleetInstancesOutput struct { _ struct{} `type:"structure"` // The running instances. Note that this list is refreshed periodically and // might be out of date. // // ActiveInstances is a required field ActiveInstances []*ActiveInstance `locationName:"activeInstanceSet" locationNameList:"item" type:"list" required:"true"` // The token required to retrieve the next set of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` // The ID of the Spot fleet request. // // SpotFleetRequestId is a required field SpotFleetRequestId *string `locationName:"spotFleetRequestId" type:"string" required:"true"` } // String returns the string representation func (s DescribeSpotFleetInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSpotFleetInstancesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeSpotFleetRequestHistory. type DescribeSpotFleetRequestHistoryInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The type of events to describe. By default, all events are described. EventType *string `locationName:"eventType" type:"string" enum:"EventType"` // The maximum number of results to return in a single call. Specify a value // between 1 and 1000. The default value is 1000. To retrieve the remaining // results, make another call with the returned NextToken value. MaxResults *int64 `locationName:"maxResults" type:"integer"` // The token for the next set of results. NextToken *string `locationName:"nextToken" type:"string"` // The ID of the Spot fleet request. // // SpotFleetRequestId is a required field SpotFleetRequestId *string `locationName:"spotFleetRequestId" type:"string" required:"true"` // The starting date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). // // StartTime is a required field StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` } // String returns the string representation func (s DescribeSpotFleetRequestHistoryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSpotFleetRequestHistoryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeSpotFleetRequestHistoryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeSpotFleetRequestHistoryInput"} if s.SpotFleetRequestId == nil { invalidParams.Add(request.NewErrParamRequired("SpotFleetRequestId")) } if s.StartTime == nil { invalidParams.Add(request.NewErrParamRequired("StartTime")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeSpotFleetRequestHistory. type DescribeSpotFleetRequestHistoryOutput struct { _ struct{} `type:"structure"` // Information about the events in the history of the Spot fleet request. // // HistoryRecords is a required field HistoryRecords []*HistoryRecord `locationName:"historyRecordSet" locationNameList:"item" type:"list" required:"true"` // The last date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). // All records up to this time were retrieved. // // If nextToken indicates that there are more results, this value is not present. // // LastEvaluatedTime is a required field LastEvaluatedTime *time.Time `locationName:"lastEvaluatedTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` // The token required to retrieve the next set of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` // The ID of the Spot fleet request. // // SpotFleetRequestId is a required field SpotFleetRequestId *string `locationName:"spotFleetRequestId" type:"string" required:"true"` // The starting date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). // // StartTime is a required field StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` } // String returns the string representation func (s DescribeSpotFleetRequestHistoryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSpotFleetRequestHistoryOutput) GoString() string { return s.String() } // Contains the parameters for DescribeSpotFleetRequests. type DescribeSpotFleetRequestsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The maximum number of results to return in a single call. Specify a value // between 1 and 1000. The default value is 1000. To retrieve the remaining // results, make another call with the returned NextToken value. MaxResults *int64 `locationName:"maxResults" type:"integer"` // The token for the next set of results. NextToken *string `locationName:"nextToken" type:"string"` // The IDs of the Spot fleet requests. SpotFleetRequestIds []*string `locationName:"spotFleetRequestId" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeSpotFleetRequestsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSpotFleetRequestsInput) GoString() string { return s.String() } // Contains the output of DescribeSpotFleetRequests. type DescribeSpotFleetRequestsOutput struct { _ struct{} `type:"structure"` // The token required to retrieve the next set of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` // Information about the configuration of your Spot fleet. // // SpotFleetRequestConfigs is a required field SpotFleetRequestConfigs []*SpotFleetRequestConfig `locationName:"spotFleetRequestConfigSet" locationNameList:"item" type:"list" required:"true"` } // String returns the string representation func (s DescribeSpotFleetRequestsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSpotFleetRequestsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeSpotInstanceRequests. type DescribeSpotInstanceRequestsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * availability-zone-group - The Availability Zone group. // // * create-time - The time stamp when the Spot instance request was created. // // * fault-code - The fault code related to the request. // // * fault-message - The fault message related to the request. // // * instance-id - The ID of the instance that fulfilled the request. // // * launch-group - The Spot instance launch group. // // * launch.block-device-mapping.delete-on-termination - Indicates whether // the Amazon EBS volume is deleted on instance termination. // // * launch.block-device-mapping.device-name - The device name for the Amazon // EBS volume (for example, /dev/sdh). // // * launch.block-device-mapping.snapshot-id - The ID of the snapshot used // for the Amazon EBS volume. // // * launch.block-device-mapping.volume-size - The size of the Amazon EBS // volume, in GiB. // // * launch.block-device-mapping.volume-type - The type of the Amazon EBS // volume: gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, st1 // for Throughput Optimized HDD, sc1for Cold HDD, or standard for Magnetic. // // * launch.group-id - The security group for the instance. // // * launch.image-id - The ID of the AMI. // // * launch.instance-type - The type of instance (for example, m3.medium). // // * launch.kernel-id - The kernel ID. // // * launch.key-name - The name of the key pair the instance launched with. // // * launch.monitoring-enabled - Whether monitoring is enabled for the Spot // instance. // // * launch.ramdisk-id - The RAM disk ID. // // * network-interface.network-interface-id - The ID of the network interface. // // * network-interface.device-index - The index of the device for the network // interface attachment on the instance. // // * network-interface.subnet-id - The ID of the subnet for the instance. // // * network-interface.description - A description of the network interface. // // * network-interface.private-ip-address - The primary private IP address // of the network interface. // // * network-interface.delete-on-termination - Indicates whether the network // interface is deleted when the instance is terminated. // // * network-interface.group-id - The ID of the security group associated // with the network interface. // // * network-interface.group-name - The name of the security group associated // with the network interface. // // * network-interface.addresses.primary - Indicates whether the IP address // is the primary private IP address. // // * product-description - The product description associated with the instance // (Linux/UNIX | Windows). // // * spot-instance-request-id - The Spot instance request ID. // // * spot-price - The maximum hourly price for any Spot instance launched // to fulfill the request. // // * state - The state of the Spot instance request (open | active | closed // | cancelled | failed). Spot bid status information can help you track // your Amazon EC2 Spot instance requests. For more information, see Spot // Bid Status (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-bid-status.html) // in the Amazon Elastic Compute Cloud User Guide. // // * status-code - The short code describing the most recent evaluation of // your Spot instance request. // // * status-message - The message explaining the status of the Spot instance // request. // // * tag:key=value - The key/value combination of a tag assigned to the resource. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. // // * type - The type of Spot instance request (one-time | persistent). // // * launched-availability-zone - The Availability Zone in which the bid // is launched. // // * valid-from - The start date of the request. // // * valid-until - The end date of the request. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // One or more Spot instance request IDs. SpotInstanceRequestIds []*string `locationName:"SpotInstanceRequestId" locationNameList:"SpotInstanceRequestId" type:"list"` } // String returns the string representation func (s DescribeSpotInstanceRequestsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSpotInstanceRequestsInput) GoString() string { return s.String() } // Contains the output of DescribeSpotInstanceRequests. type DescribeSpotInstanceRequestsOutput struct { _ struct{} `type:"structure"` // One or more Spot instance requests. SpotInstanceRequests []*SpotInstanceRequest `locationName:"spotInstanceRequestSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeSpotInstanceRequestsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSpotInstanceRequestsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeSpotPriceHistory. type DescribeSpotPriceHistoryInput struct { _ struct{} `type:"structure"` // Filters the results by the specified Availability Zone. AvailabilityZone *string `locationName:"availabilityZone" type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The date and time, up to the current date, from which to stop retrieving // the price history data, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). EndTime *time.Time `locationName:"endTime" type:"timestamp" timestampFormat:"iso8601"` // One or more filters. // // * availability-zone - The Availability Zone for which prices should be // returned. // // * instance-type - The type of instance (for example, m3.medium). // // * product-description - The product description for the Spot price (Linux/UNIX // | SUSE Linux | Windows | Linux/UNIX (Amazon VPC) | SUSE Linux (Amazon // VPC) | Windows (Amazon VPC)). // // * spot-price - The Spot price. The value must match exactly (or use wildcards; // greater than or less than comparison is not supported). // // * timestamp - The timestamp of the Spot price history, in UTC format (for // example, YYYY-MM-DDTHH:MM:SSZ). You can use wildcards (* and ?). Greater // than or less than comparison is not supported. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // Filters the results by the specified instance types. InstanceTypes []*string `locationName:"InstanceType" type:"list"` // The maximum number of results to return in a single call. Specify a value // between 1 and 1000. The default value is 1000. To retrieve the remaining // results, make another call with the returned NextToken value. MaxResults *int64 `locationName:"maxResults" type:"integer"` // The token for the next set of results. NextToken *string `locationName:"nextToken" type:"string"` // Filters the results by the specified basic product descriptions. ProductDescriptions []*string `locationName:"ProductDescription" type:"list"` // The date and time, up to the past 90 days, from which to start retrieving // the price history data, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s DescribeSpotPriceHistoryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSpotPriceHistoryInput) GoString() string { return s.String() } // Contains the output of DescribeSpotPriceHistory. type DescribeSpotPriceHistoryOutput struct { _ struct{} `type:"structure"` // The token required to retrieve the next set of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` // The historical Spot prices. SpotPriceHistory []*SpotPrice `locationName:"spotPriceHistorySet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeSpotPriceHistoryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSpotPriceHistoryOutput) GoString() string { return s.String() } type DescribeStaleSecurityGroupsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // The maximum number of items to return for this request. The request returns // a token that you can specify in a subsequent call to get the next set of // results. MaxResults *int64 `min:"5" type:"integer"` // The token for the next set of items to return. (You received this token from // a prior call.) NextToken *string `min:"1" type:"string"` // The ID of the VPC. // // VpcId is a required field VpcId *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeStaleSecurityGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStaleSecurityGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeStaleSecurityGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeStaleSecurityGroupsInput"} if s.MaxResults != nil && *s.MaxResults < 5 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 5)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeStaleSecurityGroupsOutput struct { _ struct{} `type:"structure"` // The token to use when requesting the next set of items. If there are no additional // items to return, the string is empty. NextToken *string `locationName:"nextToken" type:"string"` // Information about the stale security groups. StaleSecurityGroupSet []*StaleSecurityGroup `locationName:"staleSecurityGroupSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeStaleSecurityGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStaleSecurityGroupsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeSubnets. type DescribeSubnetsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * availabilityZone - The Availability Zone for the subnet. You can also // use availability-zone as the filter name. // // * available-ip-address-count - The number of IP addresses in the subnet // that are available. // // * cidrBlock - The CIDR block of the subnet. The CIDR block you specify // must exactly match the subnet's CIDR block for information to be returned // for the subnet. You can also use cidr or cidr-block as the filter names. // // * defaultForAz - Indicates whether this is the default subnet for the // Availability Zone. You can also use default-for-az as the filter name. // // * state - The state of the subnet (pending | available). // // * subnet-id - The ID of the subnet. // // * tag:key=value - The key/value combination of a tag assigned to the resource. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. // // * vpc-id - The ID of the VPC for the subnet. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // One or more subnet IDs. // // Default: Describes all your subnets. SubnetIds []*string `locationName:"SubnetId" locationNameList:"SubnetId" type:"list"` } // String returns the string representation func (s DescribeSubnetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSubnetsInput) GoString() string { return s.String() } // Contains the output of DescribeSubnets. type DescribeSubnetsOutput struct { _ struct{} `type:"structure"` // Information about one or more subnets. Subnets []*Subnet `locationName:"subnetSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeSubnetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSubnetsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeTags. type DescribeTagsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * key - The tag key. // // * resource-id - The resource ID. // // * resource-type - The resource type (customer-gateway | dhcp-options | // image | instance | internet-gateway | network-acl | network-interface // | reserved-instances | route-table | security-group | snapshot | spot-instances-request // | subnet | volume | vpc | vpn-connection | vpn-gateway). // // * value - The tag value. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // The maximum number of results to return in a single call. This value can // be between 5 and 1000. To retrieve the remaining results, make another call // with the returned NextToken value. MaxResults *int64 `locationName:"maxResults" type:"integer"` // The token to retrieve the next page of results. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsInput) GoString() string { return s.String() } // Contains the output of DescribeTags. type DescribeTagsOutput struct { _ struct{} `type:"structure"` // The token to use to retrieve the next page of results. This value is null // when there are no more results to return.. NextToken *string `locationName:"nextToken" type:"string"` // A list of tags. Tags []*TagDescription `locationName:"tagSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeVolumeAttribute. type DescribeVolumeAttributeInput struct { _ struct{} `type:"structure"` // The instance attribute. Attribute *string `type:"string" enum:"VolumeAttributeName"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the volume. // // VolumeId is a required field VolumeId *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeVolumeAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVolumeAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeVolumeAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeVolumeAttributeInput"} if s.VolumeId == nil { invalidParams.Add(request.NewErrParamRequired("VolumeId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeVolumeAttribute. type DescribeVolumeAttributeOutput struct { _ struct{} `type:"structure"` // The state of autoEnableIO attribute. AutoEnableIO *AttributeBooleanValue `locationName:"autoEnableIO" type:"structure"` // A list of product codes. ProductCodes []*ProductCode `locationName:"productCodes" locationNameList:"item" type:"list"` // The ID of the volume. VolumeId *string `locationName:"volumeId" type:"string"` } // String returns the string representation func (s DescribeVolumeAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVolumeAttributeOutput) GoString() string { return s.String() } // Contains the parameters for DescribeVolumeStatus. type DescribeVolumeStatusInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * action.code - The action code for the event (for example, enable-volume-io). // // * action.description - A description of the action. // // * action.event-id - The event ID associated with the action. // // * availability-zone - The Availability Zone of the instance. // // * event.description - A description of the event. // // * event.event-id - The event ID. // // * event.event-type - The event type (for io-enabled: passed | failed; // for io-performance: io-performance:degraded | io-performance:severely-degraded // | io-performance:stalled). // // * event.not-after - The latest end time for the event. // // * event.not-before - The earliest start time for the event. // // * volume-status.details-name - The cause for volume-status.status (io-enabled // | io-performance). // // * volume-status.details-status - The status of volume-status.details-name // (for io-enabled: passed | failed; for io-performance: normal | degraded // | severely-degraded | stalled). // // * volume-status.status - The status of the volume (ok | impaired | warning // | insufficient-data). Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // The maximum number of volume results returned by DescribeVolumeStatus in // paginated output. When this parameter is used, the request only returns MaxResults // results in a single page along with a NextToken response element. The remaining // results of the initial request can be seen by sending another request with // the returned NextToken value. This value can be between 5 and 1000; if MaxResults // is given a value larger than 1000, only 1000 results are returned. If this // parameter is not used, then DescribeVolumeStatus returns all results. You // cannot specify this parameter and the volume IDs parameter in the same request. MaxResults *int64 `type:"integer"` // The NextToken value to include in a future DescribeVolumeStatus request. // When the results of the request exceed MaxResults, this value can be used // to retrieve the next page of results. This value is null when there are no // more results to return. NextToken *string `type:"string"` // One or more volume IDs. // // Default: Describes all your volumes. VolumeIds []*string `locationName:"VolumeId" locationNameList:"VolumeId" type:"list"` } // String returns the string representation func (s DescribeVolumeStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVolumeStatusInput) GoString() string { return s.String() } // Contains the output of DescribeVolumeStatus. type DescribeVolumeStatusOutput struct { _ struct{} `type:"structure"` // The token to use to retrieve the next page of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` // A list of volumes. VolumeStatuses []*VolumeStatusItem `locationName:"volumeStatusSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeVolumeStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVolumeStatusOutput) GoString() string { return s.String() } // Contains the parameters for DescribeVolumes. type DescribeVolumesInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * attachment.attach-time - The time stamp when the attachment initiated. // // * attachment.delete-on-termination - Whether the volume is deleted on // instance termination. // // * attachment.device - The device name that is exposed to the instance // (for example, /dev/sda1). // // * attachment.instance-id - The ID of the instance the volume is attached // to. // // * attachment.status - The attachment state (attaching | attached | detaching // | detached). // // * availability-zone - The Availability Zone in which the volume was created. // // * create-time - The time stamp when the volume was created. // // * encrypted - The encryption status of the volume. // // * size - The size of the volume, in GiB. // // * snapshot-id - The snapshot from which the volume was created. // // * status - The status of the volume (creating | available | in-use | deleting // | deleted | error). // // * tag:key=value - The key/value combination of a tag assigned to the resource. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. // // * volume-id - The volume ID. // // * volume-type - The Amazon EBS volume type. This can be gp2 for General // Purpose SSD, io1 for Provisioned IOPS SSD, st1 for Throughput Optimized // HDD, sc1 for Cold HDD, or standard for Magnetic volumes. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // The maximum number of volume results returned by DescribeVolumes in paginated // output. When this parameter is used, DescribeVolumes only returns MaxResults // results in a single page along with a NextToken response element. The remaining // results of the initial request can be seen by sending another DescribeVolumes // request with the returned NextToken value. This value can be between 5 and // 1000; if MaxResults is given a value larger than 1000, only 1000 results // are returned. If this parameter is not used, then DescribeVolumes returns // all results. You cannot specify this parameter and the volume IDs parameter // in the same request. MaxResults *int64 `locationName:"maxResults" type:"integer"` // The NextToken value returned from a previous paginated DescribeVolumes request // where MaxResults was used and the results exceeded the value of that parameter. // Pagination continues from the end of the previous results that returned the // NextToken value. This value is null when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` // One or more volume IDs. VolumeIds []*string `locationName:"VolumeId" locationNameList:"VolumeId" type:"list"` } // String returns the string representation func (s DescribeVolumesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVolumesInput) GoString() string { return s.String() } // Contains the output of DescribeVolumes. type DescribeVolumesOutput struct { _ struct{} `type:"structure"` // The NextToken value to include in a future DescribeVolumes request. When // the results of a DescribeVolumes request exceed MaxResults, this value can // be used to retrieve the next page of results. This value is null when there // are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` // Information about the volumes. Volumes []*Volume `locationName:"volumeSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeVolumesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVolumesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeVpcAttribute. type DescribeVpcAttributeInput struct { _ struct{} `type:"structure"` // The VPC attribute. // // Attribute is a required field Attribute *string `type:"string" required:"true" enum:"VpcAttributeName"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the VPC. // // VpcId is a required field VpcId *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeVpcAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVpcAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeVpcAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeVpcAttributeInput"} if s.Attribute == nil { invalidParams.Add(request.NewErrParamRequired("Attribute")) } if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeVpcAttribute. type DescribeVpcAttributeOutput struct { _ struct{} `type:"structure"` // Indicates whether the instances launched in the VPC get DNS hostnames. If // this attribute is true, instances in the VPC get DNS hostnames; otherwise, // they do not. EnableDnsHostnames *AttributeBooleanValue `locationName:"enableDnsHostnames" type:"structure"` // Indicates whether DNS resolution is enabled for the VPC. If this attribute // is true, the Amazon DNS server resolves DNS hostnames for your instances // to their corresponding IP addresses; otherwise, it does not. EnableDnsSupport *AttributeBooleanValue `locationName:"enableDnsSupport" type:"structure"` // The ID of the VPC. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s DescribeVpcAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVpcAttributeOutput) GoString() string { return s.String() } // Contains the parameters for DescribeVpcClassicLinkDnsSupport. type DescribeVpcClassicLinkDnsSupportInput struct { _ struct{} `type:"structure"` // The maximum number of items to return for this request. The request returns // a token that you can specify in a subsequent call to get the next set of // results. MaxResults *int64 `locationName:"maxResults" min:"5" type:"integer"` // The token for the next set of items to return. (You received this token from // a prior call.) NextToken *string `locationName:"nextToken" min:"1" type:"string"` // One or more VPC IDs. VpcIds []*string `locationNameList:"VpcId" type:"list"` } // String returns the string representation func (s DescribeVpcClassicLinkDnsSupportInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVpcClassicLinkDnsSupportInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeVpcClassicLinkDnsSupportInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeVpcClassicLinkDnsSupportInput"} if s.MaxResults != nil && *s.MaxResults < 5 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 5)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeVpcClassicLinkDnsSupport. type DescribeVpcClassicLinkDnsSupportOutput struct { _ struct{} `type:"structure"` // The token to use when requesting the next set of items. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // Information about the ClassicLink DNS support status of the VPCs. Vpcs []*ClassicLinkDnsSupport `locationName:"vpcs" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeVpcClassicLinkDnsSupportOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVpcClassicLinkDnsSupportOutput) GoString() string { return s.String() } // Contains the parameters for DescribeVpcClassicLink. type DescribeVpcClassicLinkInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * is-classic-link-enabled - Whether the VPC is enabled for ClassicLink // (true | false). // // * tag:key=value - The key/value combination of a tag assigned to the resource. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // One or more VPCs for which you want to describe the ClassicLink status. VpcIds []*string `locationName:"VpcId" locationNameList:"VpcId" type:"list"` } // String returns the string representation func (s DescribeVpcClassicLinkInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVpcClassicLinkInput) GoString() string { return s.String() } // Contains the output of DescribeVpcClassicLink. type DescribeVpcClassicLinkOutput struct { _ struct{} `type:"structure"` // The ClassicLink status of one or more VPCs. Vpcs []*VpcClassicLink `locationName:"vpcSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeVpcClassicLinkOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVpcClassicLinkOutput) GoString() string { return s.String() } // Contains the parameters for DescribeVpcEndpointServices. type DescribeVpcEndpointServicesInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // The maximum number of items to return for this request. The request returns // a token that you can specify in a subsequent call to get the next set of // results. // // Constraint: If the value is greater than 1000, we return only 1000 items. MaxResults *int64 `type:"integer"` // The token for the next set of items to return. (You received this token from // a prior call.) NextToken *string `type:"string"` } // String returns the string representation func (s DescribeVpcEndpointServicesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVpcEndpointServicesInput) GoString() string { return s.String() } // Contains the output of DescribeVpcEndpointServices. type DescribeVpcEndpointServicesOutput struct { _ struct{} `type:"structure"` // The token to use when requesting the next set of items. If there are no additional // items to return, the string is empty. NextToken *string `locationName:"nextToken" type:"string"` // A list of supported AWS services. ServiceNames []*string `locationName:"serviceNameSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeVpcEndpointServicesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVpcEndpointServicesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeVpcEndpoints. type DescribeVpcEndpointsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // One or more filters. // // * service-name: The name of the AWS service. // // * vpc-id: The ID of the VPC in which the endpoint resides. // // * vpc-endpoint-id: The ID of the endpoint. // // * vpc-endpoint-state: The state of the endpoint. (pending | available // | deleting | deleted) Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // The maximum number of items to return for this request. The request returns // a token that you can specify in a subsequent call to get the next set of // results. // // Constraint: If the value is greater than 1000, we return only 1000 items. MaxResults *int64 `type:"integer"` // The token for the next set of items to return. (You received this token from // a prior call.) NextToken *string `type:"string"` // One or more endpoint IDs. VpcEndpointIds []*string `locationName:"VpcEndpointId" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeVpcEndpointsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVpcEndpointsInput) GoString() string { return s.String() } // Contains the output of DescribeVpcEndpoints. type DescribeVpcEndpointsOutput struct { _ struct{} `type:"structure"` // The token to use when requesting the next set of items. If there are no additional // items to return, the string is empty. NextToken *string `locationName:"nextToken" type:"string"` // Information about the endpoints. VpcEndpoints []*VpcEndpoint `locationName:"vpcEndpointSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeVpcEndpointsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVpcEndpointsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeVpcPeeringConnections. type DescribeVpcPeeringConnectionsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * accepter-vpc-info.cidr-block - The CIDR block of the peer VPC. // // * accepter-vpc-info.owner-id - The AWS account ID of the owner of the // peer VPC. // // * accepter-vpc-info.vpc-id - The ID of the peer VPC. // // * expiration-time - The expiration date and time for the VPC peering connection. // // * requester-vpc-info.cidr-block - The CIDR block of the requester's VPC. // // * requester-vpc-info.owner-id - The AWS account ID of the owner of the // requester VPC. // // * requester-vpc-info.vpc-id - The ID of the requester VPC. // // * status-code - The status of the VPC peering connection (pending-acceptance // | failed | expired | provisioning | active | deleted | rejected). // // * status-message - A message that provides more information about the // status of the VPC peering connection, if applicable. // // * tag:key=value - The key/value combination of a tag assigned to the resource. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. // // * vpc-peering-connection-id - The ID of the VPC peering connection. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // One or more VPC peering connection IDs. // // Default: Describes all your VPC peering connections. VpcPeeringConnectionIds []*string `locationName:"VpcPeeringConnectionId" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeVpcPeeringConnectionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVpcPeeringConnectionsInput) GoString() string { return s.String() } // Contains the output of DescribeVpcPeeringConnections. type DescribeVpcPeeringConnectionsOutput struct { _ struct{} `type:"structure"` // Information about the VPC peering connections. VpcPeeringConnections []*VpcPeeringConnection `locationName:"vpcPeeringConnectionSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeVpcPeeringConnectionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVpcPeeringConnectionsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeVpcs. type DescribeVpcsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * cidr - The CIDR block of the VPC. The CIDR block you specify must exactly // match the VPC's CIDR block for information to be returned for the VPC. // Must contain the slash followed by one or two digits (for example, /28). // // * dhcp-options-id - The ID of a set of DHCP options. // // * isDefault - Indicates whether the VPC is the default VPC. // // * state - The state of the VPC (pending | available). // // * tag:key=value - The key/value combination of a tag assigned to the resource. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. // // * vpc-id - The ID of the VPC. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // One or more VPC IDs. // // Default: Describes all your VPCs. VpcIds []*string `locationName:"VpcId" locationNameList:"VpcId" type:"list"` } // String returns the string representation func (s DescribeVpcsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVpcsInput) GoString() string { return s.String() } // Contains the output of DescribeVpcs. type DescribeVpcsOutput struct { _ struct{} `type:"structure"` // Information about one or more VPCs. Vpcs []*Vpc `locationName:"vpcSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeVpcsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVpcsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeVpnConnections. type DescribeVpnConnectionsInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * customer-gateway-configuration - The configuration information for the // customer gateway. // // * customer-gateway-id - The ID of a customer gateway associated with the // VPN connection. // // * state - The state of the VPN connection (pending | available | deleting // | deleted). // // * option.static-routes-only - Indicates whether the connection has static // routes only. Used for devices that do not support Border Gateway Protocol // (BGP). // // * route.destination-cidr-block - The destination CIDR block. This corresponds // to the subnet used in a customer data center. // // * bgp-asn - The BGP Autonomous System Number (ASN) associated with a BGP // device. // // * tag:key=value - The key/value combination of a tag assigned to the resource. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. // // * type - The type of VPN connection. Currently the only supported type // is ipsec.1. // // * vpn-connection-id - The ID of the VPN connection. // // * vpn-gateway-id - The ID of a virtual private gateway associated with // the VPN connection. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // One or more VPN connection IDs. // // Default: Describes your VPN connections. VpnConnectionIds []*string `locationName:"VpnConnectionId" locationNameList:"VpnConnectionId" type:"list"` } // String returns the string representation func (s DescribeVpnConnectionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVpnConnectionsInput) GoString() string { return s.String() } // Contains the output of DescribeVpnConnections. type DescribeVpnConnectionsOutput struct { _ struct{} `type:"structure"` // Information about one or more VPN connections. VpnConnections []*VpnConnection `locationName:"vpnConnectionSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeVpnConnectionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVpnConnectionsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeVpnGateways. type DescribeVpnGatewaysInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more filters. // // * attachment.state - The current state of the attachment between the gateway // and the VPC (attaching | attached | detaching | detached). // // * attachment.vpc-id - The ID of an attached VPC. // // * availability-zone - The Availability Zone for the virtual private gateway // (if applicable). // // * state - The state of the virtual private gateway (pending | available // | deleting | deleted). // // * tag:key=value - The key/value combination of a tag assigned to the resource. // // * tag-key - The key of a tag assigned to the resource. This filter is // independent of the tag-value filter. For example, if you use both the // filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources // assigned both the tag key Purpose (regardless of what the tag's value // is), and the tag value X (regardless of what the tag's key is). If you // want to list only resources where Purpose is X, see the tag:key=value // filter. // // * tag-value - The value of a tag assigned to the resource. This filter // is independent of the tag-key filter. // // * type - The type of virtual private gateway. Currently the only supported // type is ipsec.1. // // * vpn-gateway-id - The ID of the virtual private gateway. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // One or more virtual private gateway IDs. // // Default: Describes all your virtual private gateways. VpnGatewayIds []*string `locationName:"VpnGatewayId" locationNameList:"VpnGatewayId" type:"list"` } // String returns the string representation func (s DescribeVpnGatewaysInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVpnGatewaysInput) GoString() string { return s.String() } // Contains the output of DescribeVpnGateways. type DescribeVpnGatewaysOutput struct { _ struct{} `type:"structure"` // Information about one or more virtual private gateways. VpnGateways []*VpnGateway `locationName:"vpnGatewaySet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DescribeVpnGatewaysOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVpnGatewaysOutput) GoString() string { return s.String() } // Contains the parameters for DetachClassicLinkVpc. type DetachClassicLinkVpcInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the instance to unlink from the VPC. // // InstanceId is a required field InstanceId *string `locationName:"instanceId" type:"string" required:"true"` // The ID of the VPC to which the instance is linked. // // VpcId is a required field VpcId *string `locationName:"vpcId" type:"string" required:"true"` } // String returns the string representation func (s DetachClassicLinkVpcInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachClassicLinkVpcInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DetachClassicLinkVpcInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DetachClassicLinkVpcInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DetachClassicLinkVpc. type DetachClassicLinkVpcOutput struct { _ struct{} `type:"structure"` // Returns true if the request succeeds; otherwise, it returns an error. Return *bool `locationName:"return" type:"boolean"` } // String returns the string representation func (s DetachClassicLinkVpcOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachClassicLinkVpcOutput) GoString() string { return s.String() } // Contains the parameters for DetachInternetGateway. type DetachInternetGatewayInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the Internet gateway. // // InternetGatewayId is a required field InternetGatewayId *string `locationName:"internetGatewayId" type:"string" required:"true"` // The ID of the VPC. // // VpcId is a required field VpcId *string `locationName:"vpcId" type:"string" required:"true"` } // String returns the string representation func (s DetachInternetGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachInternetGatewayInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DetachInternetGatewayInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DetachInternetGatewayInput"} if s.InternetGatewayId == nil { invalidParams.Add(request.NewErrParamRequired("InternetGatewayId")) } if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DetachInternetGatewayOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DetachInternetGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachInternetGatewayOutput) GoString() string { return s.String() } // Contains the parameters for DetachNetworkInterface. type DetachNetworkInterfaceInput struct { _ struct{} `type:"structure"` // The ID of the attachment. // // AttachmentId is a required field AttachmentId *string `locationName:"attachmentId" type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // Specifies whether to force a detachment. Force *bool `locationName:"force" type:"boolean"` } // String returns the string representation func (s DetachNetworkInterfaceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachNetworkInterfaceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DetachNetworkInterfaceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DetachNetworkInterfaceInput"} if s.AttachmentId == nil { invalidParams.Add(request.NewErrParamRequired("AttachmentId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DetachNetworkInterfaceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DetachNetworkInterfaceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachNetworkInterfaceOutput) GoString() string { return s.String() } // Contains the parameters for DetachVolume. type DetachVolumeInput struct { _ struct{} `type:"structure"` // The device name. Device *string `type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // Forces detachment if the previous detachment attempt did not occur cleanly // (for example, logging into an instance, unmounting the volume, and detaching // normally). This option can lead to data loss or a corrupted file system. // Use this option only as a last resort to detach a volume from a failed instance. // The instance won't have an opportunity to flush file system caches or file // system metadata. If you use this option, you must perform file system check // and repair procedures. Force *bool `type:"boolean"` // The ID of the instance. InstanceId *string `type:"string"` // The ID of the volume. // // VolumeId is a required field VolumeId *string `type:"string" required:"true"` } // String returns the string representation func (s DetachVolumeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachVolumeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DetachVolumeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DetachVolumeInput"} if s.VolumeId == nil { invalidParams.Add(request.NewErrParamRequired("VolumeId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for DetachVpnGateway. type DetachVpnGatewayInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the VPC. // // VpcId is a required field VpcId *string `type:"string" required:"true"` // The ID of the virtual private gateway. // // VpnGatewayId is a required field VpnGatewayId *string `type:"string" required:"true"` } // String returns the string representation func (s DetachVpnGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachVpnGatewayInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DetachVpnGatewayInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DetachVpnGatewayInput"} if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if s.VpnGatewayId == nil { invalidParams.Add(request.NewErrParamRequired("VpnGatewayId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DetachVpnGatewayOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DetachVpnGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachVpnGatewayOutput) GoString() string { return s.String() } // Describes a DHCP configuration option. type DhcpConfiguration struct { _ struct{} `type:"structure"` // The name of a DHCP option. Key *string `locationName:"key" type:"string"` // One or more values for the DHCP option. Values []*AttributeValue `locationName:"valueSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DhcpConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DhcpConfiguration) GoString() string { return s.String() } // Describes a set of DHCP options. type DhcpOptions struct { _ struct{} `type:"structure"` // One or more DHCP options in the set. DhcpConfigurations []*DhcpConfiguration `locationName:"dhcpConfigurationSet" locationNameList:"item" type:"list"` // The ID of the set of DHCP options. DhcpOptionsId *string `locationName:"dhcpOptionsId" type:"string"` // Any tags assigned to the DHCP options set. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s DhcpOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DhcpOptions) GoString() string { return s.String() } // Contains the parameters for DisableVgwRoutePropagation. type DisableVgwRoutePropagationInput struct { _ struct{} `type:"structure"` // The ID of the virtual private gateway. // // GatewayId is a required field GatewayId *string `type:"string" required:"true"` // The ID of the route table. // // RouteTableId is a required field RouteTableId *string `type:"string" required:"true"` } // String returns the string representation func (s DisableVgwRoutePropagationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableVgwRoutePropagationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisableVgwRoutePropagationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisableVgwRoutePropagationInput"} if s.GatewayId == nil { invalidParams.Add(request.NewErrParamRequired("GatewayId")) } if s.RouteTableId == nil { invalidParams.Add(request.NewErrParamRequired("RouteTableId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DisableVgwRoutePropagationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DisableVgwRoutePropagationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableVgwRoutePropagationOutput) GoString() string { return s.String() } // Contains the parameters for DisableVpcClassicLinkDnsSupport. type DisableVpcClassicLinkDnsSupportInput struct { _ struct{} `type:"structure"` // The ID of the VPC. VpcId *string `type:"string"` } // String returns the string representation func (s DisableVpcClassicLinkDnsSupportInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableVpcClassicLinkDnsSupportInput) GoString() string { return s.String() } // Contains the output of DisableVpcClassicLinkDnsSupport. type DisableVpcClassicLinkDnsSupportOutput struct { _ struct{} `type:"structure"` // Returns true if the request succeeds; otherwise, it returns an error. Return *bool `locationName:"return" type:"boolean"` } // String returns the string representation func (s DisableVpcClassicLinkDnsSupportOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableVpcClassicLinkDnsSupportOutput) GoString() string { return s.String() } // Contains the parameters for DisableVpcClassicLink. type DisableVpcClassicLinkInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the VPC. // // VpcId is a required field VpcId *string `locationName:"vpcId" type:"string" required:"true"` } // String returns the string representation func (s DisableVpcClassicLinkInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableVpcClassicLinkInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisableVpcClassicLinkInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisableVpcClassicLinkInput"} if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DisableVpcClassicLink. type DisableVpcClassicLinkOutput struct { _ struct{} `type:"structure"` // Returns true if the request succeeds; otherwise, it returns an error. Return *bool `locationName:"return" type:"boolean"` } // String returns the string representation func (s DisableVpcClassicLinkOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableVpcClassicLinkOutput) GoString() string { return s.String() } // Contains the parameters for DisassociateAddress. type DisassociateAddressInput struct { _ struct{} `type:"structure"` // [EC2-VPC] The association ID. Required for EC2-VPC. AssociationId *string `type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // [EC2-Classic] The Elastic IP address. Required for EC2-Classic. PublicIp *string `type:"string"` } // String returns the string representation func (s DisassociateAddressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisassociateAddressInput) GoString() string { return s.String() } type DisassociateAddressOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DisassociateAddressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisassociateAddressOutput) GoString() string { return s.String() } // Contains the parameters for DisassociateRouteTable. type DisassociateRouteTableInput struct { _ struct{} `type:"structure"` // The association ID representing the current association between the route // table and subnet. // // AssociationId is a required field AssociationId *string `locationName:"associationId" type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` } // String returns the string representation func (s DisassociateRouteTableInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisassociateRouteTableInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisassociateRouteTableInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisassociateRouteTableInput"} if s.AssociationId == nil { invalidParams.Add(request.NewErrParamRequired("AssociationId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DisassociateRouteTableOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DisassociateRouteTableOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisassociateRouteTableOutput) GoString() string { return s.String() } // Describes a disk image. type DiskImage struct { _ struct{} `type:"structure"` // A description of the disk image. Description *string `type:"string"` // Information about the disk image. Image *DiskImageDetail `type:"structure"` // Information about the volume. Volume *VolumeDetail `type:"structure"` } // String returns the string representation func (s DiskImage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DiskImage) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DiskImage) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DiskImage"} if s.Image != nil { if err := s.Image.Validate(); err != nil { invalidParams.AddNested("Image", err.(request.ErrInvalidParams)) } } if s.Volume != nil { if err := s.Volume.Validate(); err != nil { invalidParams.AddNested("Volume", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a disk image. type DiskImageDescription struct { _ struct{} `type:"structure"` // The checksum computed for the disk image. Checksum *string `locationName:"checksum" type:"string"` // The disk image format. // // Format is a required field Format *string `locationName:"format" type:"string" required:"true" enum:"DiskImageFormat"` // A presigned URL for the import manifest stored in Amazon S3. For information // about creating a presigned URL for an Amazon S3 object, read the "Query String // Request Authentication Alternative" section of the Authenticating REST Requests // (http://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html) // topic in the Amazon Simple Storage Service Developer Guide. // // For information about the import manifest referenced by this API action, // see VM Import Manifest (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/manifest.html). // // ImportManifestUrl is a required field ImportManifestUrl *string `locationName:"importManifestUrl" type:"string" required:"true"` // The size of the disk image, in GiB. // // Size is a required field Size *int64 `locationName:"size" type:"long" required:"true"` } // String returns the string representation func (s DiskImageDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DiskImageDescription) GoString() string { return s.String() } // Describes a disk image. type DiskImageDetail struct { _ struct{} `type:"structure"` // The size of the disk image, in GiB. // // Bytes is a required field Bytes *int64 `locationName:"bytes" type:"long" required:"true"` // The disk image format. // // Format is a required field Format *string `locationName:"format" type:"string" required:"true" enum:"DiskImageFormat"` // A presigned URL for the import manifest stored in Amazon S3 and presented // here as an Amazon S3 presigned URL. For information about creating a presigned // URL for an Amazon S3 object, read the "Query String Request Authentication // Alternative" section of the Authenticating REST Requests (http://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html) // topic in the Amazon Simple Storage Service Developer Guide. // // For information about the import manifest referenced by this API action, // see VM Import Manifest (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/manifest.html). // // ImportManifestUrl is a required field ImportManifestUrl *string `locationName:"importManifestUrl" type:"string" required:"true"` } // String returns the string representation func (s DiskImageDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DiskImageDetail) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DiskImageDetail) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DiskImageDetail"} if s.Bytes == nil { invalidParams.Add(request.NewErrParamRequired("Bytes")) } if s.Format == nil { invalidParams.Add(request.NewErrParamRequired("Format")) } if s.ImportManifestUrl == nil { invalidParams.Add(request.NewErrParamRequired("ImportManifestUrl")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a disk image volume. type DiskImageVolumeDescription struct { _ struct{} `type:"structure"` // The volume identifier. // // Id is a required field Id *string `locationName:"id" type:"string" required:"true"` // The size of the volume, in GiB. Size *int64 `locationName:"size" type:"long"` } // String returns the string representation func (s DiskImageVolumeDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DiskImageVolumeDescription) GoString() string { return s.String() } // Describes a block device for an EBS volume. type EbsBlockDevice struct { _ struct{} `type:"structure"` // Indicates whether the EBS volume is deleted on instance termination. DeleteOnTermination *bool `locationName:"deleteOnTermination" type:"boolean"` // Indicates whether the EBS volume is encrypted. Encrypted Amazon EBS volumes // may only be attached to instances that support Amazon EBS encryption. Encrypted *bool `locationName:"encrypted" type:"boolean"` // The number of I/O operations per second (IOPS) that the volume supports. // For io1, this represents the number of IOPS that are provisioned for the // volume. For gp2, this represents the baseline performance of the volume and // the rate at which the volume accumulates I/O credits for bursting. For more // information about General Purpose SSD baseline performance, I/O credits, // and bursting, see Amazon EBS Volume Types (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) // in the Amazon Elastic Compute Cloud User Guide. // // Constraint: Range is 100-20000 IOPS for io1 volumes and 100-10000 IOPS for // gp2 volumes. // // Condition: This parameter is required for requests to create io1 volumes; // it is not used in requests to create gp2, st1, sc1, or standard volumes. Iops *int64 `locationName:"iops" type:"integer"` // The ID of the snapshot. SnapshotId *string `locationName:"snapshotId" type:"string"` // The size of the volume, in GiB. // // Constraints: 1-16384 for General Purpose SSD (gp2), 4-16384 for Provisioned // IOPS SSD (io1), 500-16384 for Throughput Optimized HDD (st1), 500-16384 for // Cold HDD (sc1), and 1-1024 for Magnetic (standard) volumes. If you specify // a snapshot, the volume size must be equal to or larger than the snapshot // size. // // Default: If you're creating the volume from a snapshot and don't specify // a volume size, the default is the snapshot size. VolumeSize *int64 `locationName:"volumeSize" type:"integer"` // The volume type: gp2, io1, st1, sc1, or standard. // // Default: standard VolumeType *string `locationName:"volumeType" type:"string" enum:"VolumeType"` } // String returns the string representation func (s EbsBlockDevice) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EbsBlockDevice) GoString() string { return s.String() } // Describes a parameter used to set up an EBS volume in a block device mapping. type EbsInstanceBlockDevice struct { _ struct{} `type:"structure"` // The time stamp when the attachment initiated. AttachTime *time.Time `locationName:"attachTime" type:"timestamp" timestampFormat:"iso8601"` // Indicates whether the volume is deleted on instance termination. DeleteOnTermination *bool `locationName:"deleteOnTermination" type:"boolean"` // The attachment state. Status *string `locationName:"status" type:"string" enum:"AttachmentStatus"` // The ID of the EBS volume. VolumeId *string `locationName:"volumeId" type:"string"` } // String returns the string representation func (s EbsInstanceBlockDevice) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EbsInstanceBlockDevice) GoString() string { return s.String() } // Describes information used to set up an EBS volume specified in a block device // mapping. type EbsInstanceBlockDeviceSpecification struct { _ struct{} `type:"structure"` // Indicates whether the volume is deleted on instance termination. DeleteOnTermination *bool `locationName:"deleteOnTermination" type:"boolean"` // The ID of the EBS volume. VolumeId *string `locationName:"volumeId" type:"string"` } // String returns the string representation func (s EbsInstanceBlockDeviceSpecification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EbsInstanceBlockDeviceSpecification) GoString() string { return s.String() } // Contains the parameters for EnableVgwRoutePropagation. type EnableVgwRoutePropagationInput struct { _ struct{} `type:"structure"` // The ID of the virtual private gateway. // // GatewayId is a required field GatewayId *string `type:"string" required:"true"` // The ID of the route table. // // RouteTableId is a required field RouteTableId *string `type:"string" required:"true"` } // String returns the string representation func (s EnableVgwRoutePropagationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableVgwRoutePropagationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableVgwRoutePropagationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableVgwRoutePropagationInput"} if s.GatewayId == nil { invalidParams.Add(request.NewErrParamRequired("GatewayId")) } if s.RouteTableId == nil { invalidParams.Add(request.NewErrParamRequired("RouteTableId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type EnableVgwRoutePropagationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s EnableVgwRoutePropagationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableVgwRoutePropagationOutput) GoString() string { return s.String() } // Contains the parameters for EnableVolumeIO. type EnableVolumeIOInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the volume. // // VolumeId is a required field VolumeId *string `locationName:"volumeId" type:"string" required:"true"` } // String returns the string representation func (s EnableVolumeIOInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableVolumeIOInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableVolumeIOInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableVolumeIOInput"} if s.VolumeId == nil { invalidParams.Add(request.NewErrParamRequired("VolumeId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type EnableVolumeIOOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s EnableVolumeIOOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableVolumeIOOutput) GoString() string { return s.String() } // Contains the parameters for EnableVpcClassicLinkDnsSupport. type EnableVpcClassicLinkDnsSupportInput struct { _ struct{} `type:"structure"` // The ID of the VPC. VpcId *string `type:"string"` } // String returns the string representation func (s EnableVpcClassicLinkDnsSupportInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableVpcClassicLinkDnsSupportInput) GoString() string { return s.String() } // Contains the output of EnableVpcClassicLinkDnsSupport. type EnableVpcClassicLinkDnsSupportOutput struct { _ struct{} `type:"structure"` // Returns true if the request succeeds; otherwise, it returns an error. Return *bool `locationName:"return" type:"boolean"` } // String returns the string representation func (s EnableVpcClassicLinkDnsSupportOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableVpcClassicLinkDnsSupportOutput) GoString() string { return s.String() } // Contains the parameters for EnableVpcClassicLink. type EnableVpcClassicLinkInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the VPC. // // VpcId is a required field VpcId *string `locationName:"vpcId" type:"string" required:"true"` } // String returns the string representation func (s EnableVpcClassicLinkInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableVpcClassicLinkInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableVpcClassicLinkInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableVpcClassicLinkInput"} if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of EnableVpcClassicLink. type EnableVpcClassicLinkOutput struct { _ struct{} `type:"structure"` // Returns true if the request succeeds; otherwise, it returns an error. Return *bool `locationName:"return" type:"boolean"` } // String returns the string representation func (s EnableVpcClassicLinkOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableVpcClassicLinkOutput) GoString() string { return s.String() } // Describes a Spot fleet event. type EventInformation struct { _ struct{} `type:"structure"` // The description of the event. EventDescription *string `locationName:"eventDescription" type:"string"` // The event. // // The following are the error events. // // * iamFleetRoleInvalid - The Spot fleet did not have the required permissions // either to launch or terminate an instance. // // * launchSpecTemporarilyBlacklisted - The configuration is not valid and // several attempts to launch instances have failed. For more information, // see the description of the event. // // * spotFleetRequestConfigurationInvalid - The configuration is not valid. // For more information, see the description of the event. // // * spotInstanceCountLimitExceeded - You've reached the limit on the number // of Spot instances that you can launch. // // The following are the fleetRequestChange events. // // * active - The Spot fleet has been validated and Amazon EC2 is attempting // to maintain the target number of running Spot instances. // // * cancelled - The Spot fleet is canceled and has no running Spot instances. // The Spot fleet will be deleted two days after its instances were terminated. // // * cancelled_running - The Spot fleet is canceled and will not launch additional // Spot instances, but its existing Spot instances continue to run until // they are interrupted or terminated. // // * cancelled_terminating - The Spot fleet is canceled and its Spot instances // are terminating. // // * expired - The Spot fleet request has expired. A subsequent event indicates // that the instances were terminated, if the request was created with TerminateInstancesWithExpiration // set. // // * modify_in_progress - A request to modify the Spot fleet request was // accepted and is in progress. // // * modify_successful - The Spot fleet request was modified. // // * price_update - The bid price for a launch configuration was adjusted // because it was too high. This change is permanent. // // * submitted - The Spot fleet request is being evaluated and Amazon EC2 // is preparing to launch the target number of Spot instances. // // The following are the instanceChange events. // // * launched - A bid was fulfilled and a new instance was launched. // // * terminated - An instance was terminated by the user. EventSubType *string `locationName:"eventSubType" type:"string"` // The ID of the instance. This information is available only for instanceChange // events. InstanceId *string `locationName:"instanceId" type:"string"` } // String returns the string representation func (s EventInformation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EventInformation) GoString() string { return s.String() } // Describes an instance export task. type ExportTask struct { _ struct{} `type:"structure"` // A description of the resource being exported. Description *string `locationName:"description" type:"string"` // The ID of the export task. ExportTaskId *string `locationName:"exportTaskId" type:"string"` // Information about the export task. ExportToS3Task *ExportToS3Task `locationName:"exportToS3" type:"structure"` // Information about the instance to export. InstanceExportDetails *InstanceExportDetails `locationName:"instanceExport" type:"structure"` // The state of the export task. State *string `locationName:"state" type:"string" enum:"ExportTaskState"` // The status message related to the export task. StatusMessage *string `locationName:"statusMessage" type:"string"` } // String returns the string representation func (s ExportTask) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExportTask) GoString() string { return s.String() } // Describes the format and location for an instance export task. type ExportToS3Task struct { _ struct{} `type:"structure"` // The container format used to combine disk images with metadata (such as OVF). // If absent, only the disk image is exported. ContainerFormat *string `locationName:"containerFormat" type:"string" enum:"ContainerFormat"` // The format for the exported image. DiskImageFormat *string `locationName:"diskImageFormat" type:"string" enum:"DiskImageFormat"` // The S3 bucket for the destination image. The destination bucket must exist // and grant WRITE and READ_ACP permissions to the AWS account vm-import-export@amazon.com. S3Bucket *string `locationName:"s3Bucket" type:"string"` // The encryption key for your S3 bucket. S3Key *string `locationName:"s3Key" type:"string"` } // String returns the string representation func (s ExportToS3Task) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExportToS3Task) GoString() string { return s.String() } // Describes an instance export task. type ExportToS3TaskSpecification struct { _ struct{} `type:"structure"` // The container format used to combine disk images with metadata (such as OVF). // If absent, only the disk image is exported. ContainerFormat *string `locationName:"containerFormat" type:"string" enum:"ContainerFormat"` // The format for the exported image. DiskImageFormat *string `locationName:"diskImageFormat" type:"string" enum:"DiskImageFormat"` // The S3 bucket for the destination image. The destination bucket must exist // and grant WRITE and READ_ACP permissions to the AWS account vm-import-export@amazon.com. S3Bucket *string `locationName:"s3Bucket" type:"string"` // The image is written to a single object in the S3 bucket at the S3 key s3prefix // + exportTaskId + '.' + diskImageFormat. S3Prefix *string `locationName:"s3Prefix" type:"string"` } // String returns the string representation func (s ExportToS3TaskSpecification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExportToS3TaskSpecification) GoString() string { return s.String() } // A filter name and value pair that is used to return a more specific list // of results. Filters can be used to match a set of resources by various criteria, // such as tags, attributes, or IDs. type Filter struct { _ struct{} `type:"structure"` // The name of the filter. Filter names are case-sensitive. Name *string `type:"string"` // One or more filter values. Filter values are case-sensitive. Values []*string `locationName:"Value" locationNameList:"item" type:"list"` } // String returns the string representation func (s Filter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Filter) GoString() string { return s.String() } // Describes a flow log. type FlowLog struct { _ struct{} `type:"structure"` // The date and time the flow log was created. CreationTime *time.Time `locationName:"creationTime" type:"timestamp" timestampFormat:"iso8601"` // Information about the error that occurred. Rate limited indicates that CloudWatch // logs throttling has been applied for one or more network interfaces, or that // you've reached the limit on the number of CloudWatch Logs log groups that // you can create. Access error indicates that the IAM role associated with // the flow log does not have sufficient permissions to publish to CloudWatch // Logs. Unknown error indicates an internal error. DeliverLogsErrorMessage *string `locationName:"deliverLogsErrorMessage" type:"string"` // The ARN of the IAM role that posts logs to CloudWatch Logs. DeliverLogsPermissionArn *string `locationName:"deliverLogsPermissionArn" type:"string"` // The status of the logs delivery (SUCCESS | FAILED). DeliverLogsStatus *string `locationName:"deliverLogsStatus" type:"string"` // The flow log ID. FlowLogId *string `locationName:"flowLogId" type:"string"` // The status of the flow log (ACTIVE). FlowLogStatus *string `locationName:"flowLogStatus" type:"string"` // The name of the flow log group. LogGroupName *string `locationName:"logGroupName" type:"string"` // The ID of the resource on which the flow log was created. ResourceId *string `locationName:"resourceId" type:"string"` // The type of traffic captured for the flow log. TrafficType *string `locationName:"trafficType" type:"string" enum:"TrafficType"` } // String returns the string representation func (s FlowLog) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FlowLog) GoString() string { return s.String() } // Contains the parameters for GetConsoleOutput. type GetConsoleOutputInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the instance. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` } // String returns the string representation func (s GetConsoleOutputInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetConsoleOutputInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetConsoleOutputInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetConsoleOutputInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of GetConsoleOutput. type GetConsoleOutputOutput struct { _ struct{} `type:"structure"` // The ID of the instance. InstanceId *string `locationName:"instanceId" type:"string"` // The console output, Base64-encoded. If using a command line tool, the tool // decodes the output for you. Output *string `locationName:"output" type:"string"` // The time the output was last updated. Timestamp *time.Time `locationName:"timestamp" type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s GetConsoleOutputOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetConsoleOutputOutput) GoString() string { return s.String() } // Contains the parameters for the request. type GetConsoleScreenshotInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // The ID of the instance. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` // When set to true, acts as keystroke input and wakes up an instance that's // in standby or "sleep" mode. WakeUp *bool `type:"boolean"` } // String returns the string representation func (s GetConsoleScreenshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetConsoleScreenshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetConsoleScreenshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetConsoleScreenshotInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of the request. type GetConsoleScreenshotOutput struct { _ struct{} `type:"structure"` // The data that comprises the image. ImageData *string `locationName:"imageData" type:"string"` // The ID of the instance. InstanceId *string `locationName:"instanceId" type:"string"` } // String returns the string representation func (s GetConsoleScreenshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetConsoleScreenshotOutput) GoString() string { return s.String() } type GetHostReservationPurchasePreviewInput struct { _ struct{} `type:"structure"` // The ID/s of the Dedicated Host/s that the reservation will be associated // with. // // HostIdSet is a required field HostIdSet []*string `locationNameList:"item" type:"list" required:"true"` // The offering ID of the reservation. // // OfferingId is a required field OfferingId *string `type:"string" required:"true"` } // String returns the string representation func (s GetHostReservationPurchasePreviewInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetHostReservationPurchasePreviewInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetHostReservationPurchasePreviewInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetHostReservationPurchasePreviewInput"} if s.HostIdSet == nil { invalidParams.Add(request.NewErrParamRequired("HostIdSet")) } if s.OfferingId == nil { invalidParams.Add(request.NewErrParamRequired("OfferingId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetHostReservationPurchasePreviewOutput struct { _ struct{} `type:"structure"` // The currency in which the totalUpfrontPrice and totalHourlyPrice amounts // are specified. At this time, the only supported currency is USD. CurrencyCode *string `locationName:"currencyCode" type:"string" enum:"CurrencyCodeValues"` // The purchase information of the Dedicated Host Reservation and the Dedicated // Hosts associated with it. Purchase []*Purchase `locationName:"purchase" type:"list"` // The potential total hourly price of the reservation per hour. TotalHourlyPrice *string `locationName:"totalHourlyPrice" type:"string"` // The potential total upfront price. This is billed immediately. TotalUpfrontPrice *string `locationName:"totalUpfrontPrice" type:"string"` } // String returns the string representation func (s GetHostReservationPurchasePreviewOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetHostReservationPurchasePreviewOutput) GoString() string { return s.String() } // Contains the parameters for GetPasswordData. type GetPasswordDataInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the Windows instance. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` } // String returns the string representation func (s GetPasswordDataInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPasswordDataInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetPasswordDataInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetPasswordDataInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of GetPasswordData. type GetPasswordDataOutput struct { _ struct{} `type:"structure"` // The ID of the Windows instance. InstanceId *string `locationName:"instanceId" type:"string"` // The password of the instance. PasswordData *string `locationName:"passwordData" type:"string"` // The time the data was last updated. Timestamp *time.Time `locationName:"timestamp" type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s GetPasswordDataOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPasswordDataOutput) GoString() string { return s.String() } // Contains the parameters for GetReservedInstanceExchangeQuote. type GetReservedInstancesExchangeQuoteInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // The ID/s of the Convertible Reserved Instances you want to exchange. // // ReservedInstanceIds is a required field ReservedInstanceIds []*string `locationName:"ReservedInstanceId" locationNameList:"ReservedInstanceId" type:"list" required:"true"` // The configuration requirements of the Convertible Reserved Instances you // want in exchange for your current Convertible Reserved Instances. TargetConfigurations []*TargetConfigurationRequest `locationName:"TargetConfiguration" locationNameList:"TargetConfigurationRequest" type:"list"` } // String returns the string representation func (s GetReservedInstancesExchangeQuoteInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetReservedInstancesExchangeQuoteInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetReservedInstancesExchangeQuoteInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetReservedInstancesExchangeQuoteInput"} if s.ReservedInstanceIds == nil { invalidParams.Add(request.NewErrParamRequired("ReservedInstanceIds")) } if s.TargetConfigurations != nil { for i, v := range s.TargetConfigurations { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TargetConfigurations", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of GetReservedInstancesExchangeQuote. type GetReservedInstancesExchangeQuoteOutput struct { _ struct{} `type:"structure"` // The currency of the transaction. CurrencyCode *string `locationName:"currencyCode" type:"string"` // If true, the exchange is valid. If false, the exchange cannot be performed. IsValidExchange *bool `locationName:"isValidExchange" type:"boolean"` // The new end date of the reservation term. OutputReservedInstancesWillExpireAt *time.Time `locationName:"outputReservedInstancesWillExpireAt" type:"timestamp" timestampFormat:"iso8601"` // The total true upfront charge for the exchange. PaymentDue *string `locationName:"paymentDue" type:"string"` // The cost associated with the Reserved Instance. ReservedInstanceValueRollup *ReservationValue `locationName:"reservedInstanceValueRollup" type:"structure"` // The configuration of your Convertible Reserved Instances. ReservedInstanceValueSet []*ReservedInstanceReservationValue `locationName:"reservedInstanceValueSet" locationNameList:"item" type:"list"` // The cost associated with the Reserved Instance. TargetConfigurationValueRollup *ReservationValue `locationName:"targetConfigurationValueRollup" type:"structure"` // The values of the target Convertible Reserved Instances. TargetConfigurationValueSet []*TargetReservationValue `locationName:"targetConfigurationValueSet" locationNameList:"item" type:"list"` // Describes the reason why the exchange can not be completed. ValidationFailureReason *string `locationName:"validationFailureReason" type:"string"` } // String returns the string representation func (s GetReservedInstancesExchangeQuoteOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetReservedInstancesExchangeQuoteOutput) GoString() string { return s.String() } // Describes a security group. type GroupIdentifier struct { _ struct{} `type:"structure"` // The ID of the security group. GroupId *string `locationName:"groupId" type:"string"` // The name of the security group. GroupName *string `locationName:"groupName" type:"string"` } // String returns the string representation func (s GroupIdentifier) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GroupIdentifier) GoString() string { return s.String() } // Describes an event in the history of the Spot fleet request. type HistoryRecord struct { _ struct{} `type:"structure"` // Information about the event. // // EventInformation is a required field EventInformation *EventInformation `locationName:"eventInformation" type:"structure" required:"true"` // The event type. // // * error - Indicates an error with the Spot fleet request. // // * fleetRequestChange - Indicates a change in the status or configuration // of the Spot fleet request. // // * instanceChange - Indicates that an instance was launched or terminated. // // EventType is a required field EventType *string `locationName:"eventType" type:"string" required:"true" enum:"EventType"` // The date and time of the event, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). // // Timestamp is a required field Timestamp *time.Time `locationName:"timestamp" type:"timestamp" timestampFormat:"iso8601" required:"true"` } // String returns the string representation func (s HistoryRecord) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HistoryRecord) GoString() string { return s.String() } // Describes the properties of the Dedicated Host. type Host struct { _ struct{} `type:"structure"` // Whether auto-placement is on or off. AutoPlacement *string `locationName:"autoPlacement" type:"string" enum:"AutoPlacement"` // The Availability Zone of the Dedicated Host. AvailabilityZone *string `locationName:"availabilityZone" type:"string"` // The number of new instances that can be launched onto the Dedicated Host. AvailableCapacity *AvailableCapacity `locationName:"availableCapacity" type:"structure"` // Unique, case-sensitive identifier you provide to ensure idempotency of the // request. For more information, see How to Ensure Idempotency (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html) // in the Amazon Elastic Compute Cloud User Guide. ClientToken *string `locationName:"clientToken" type:"string"` // The ID of the Dedicated Host. HostId *string `locationName:"hostId" type:"string"` // The hardware specifications of the Dedicated Host. HostProperties *HostProperties `locationName:"hostProperties" type:"structure"` // The reservation ID of the Dedicated Host. This returns a null response if // the Dedicated Host doesn't have an associated reservation. HostReservationId *string `locationName:"hostReservationId" type:"string"` // The IDs and instance type that are currently running on the Dedicated Host. Instances []*HostInstance `locationName:"instances" locationNameList:"item" type:"list"` // The Dedicated Host's state. State *string `locationName:"state" type:"string" enum:"AllocationState"` } // String returns the string representation func (s Host) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Host) GoString() string { return s.String() } // Describes an instance running on a Dedicated Host. type HostInstance struct { _ struct{} `type:"structure"` // the IDs of instances that are running on the Dedicated Host. InstanceId *string `locationName:"instanceId" type:"string"` // The instance type size (for example, m3.medium) of the running instance. InstanceType *string `locationName:"instanceType" type:"string"` } // String returns the string representation func (s HostInstance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HostInstance) GoString() string { return s.String() } // Details about the Dedicated Host Reservation offering. type HostOffering struct { _ struct{} `type:"structure"` // The currency of the offering. CurrencyCode *string `locationName:"currencyCode" type:"string" enum:"CurrencyCodeValues"` // The duration of the offering (in seconds). Duration *int64 `locationName:"duration" type:"integer"` // The hourly price of the offering. HourlyPrice *string `locationName:"hourlyPrice" type:"string"` // The instance family of the offering. InstanceFamily *string `locationName:"instanceFamily" type:"string"` // The ID of the offering. OfferingId *string `locationName:"offeringId" type:"string"` // The available payment option. PaymentOption *string `locationName:"paymentOption" type:"string" enum:"PaymentOption"` // The upfront price of the offering. Does not apply to No Upfront offerings. UpfrontPrice *string `locationName:"upfrontPrice" type:"string"` } // String returns the string representation func (s HostOffering) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HostOffering) GoString() string { return s.String() } // Describes properties of a Dedicated Host. type HostProperties struct { _ struct{} `type:"structure"` // The number of cores on the Dedicated Host. Cores *int64 `locationName:"cores" type:"integer"` // The instance type size that the Dedicated Host supports (for example, m3.medium). InstanceType *string `locationName:"instanceType" type:"string"` // The number of sockets on the Dedicated Host. Sockets *int64 `locationName:"sockets" type:"integer"` // The number of vCPUs on the Dedicated Host. TotalVCpus *int64 `locationName:"totalVCpus" type:"integer"` } // String returns the string representation func (s HostProperties) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HostProperties) GoString() string { return s.String() } // Details about the Dedicated Host Reservation and associated Dedicated Hosts. type HostReservation struct { _ struct{} `type:"structure"` // The number of Dedicated Hosts the reservation is associated with. Count *int64 `locationName:"count" type:"integer"` // The currency in which the upfrontPrice and hourlyPrice amounts are specified. // At this time, the only supported currency is USD. CurrencyCode *string `locationName:"currencyCode" type:"string" enum:"CurrencyCodeValues"` // The length of the reservation's term, specified in seconds. Can be 31536000 // (1 year) | 94608000 (3 years). Duration *int64 `locationName:"duration" type:"integer"` // The date and time that the reservation ends. End *time.Time `locationName:"end" type:"timestamp" timestampFormat:"iso8601"` // The IDs of the Dedicated Hosts associated with the reservation. HostIdSet []*string `locationName:"hostIdSet" locationNameList:"item" type:"list"` // The ID of the reservation that specifies the associated Dedicated Hosts. HostReservationId *string `locationName:"hostReservationId" type:"string"` // The hourly price of the reservation. HourlyPrice *string `locationName:"hourlyPrice" type:"string"` // The instance family of the Dedicated Host Reservation. The instance family // on the Dedicated Host must be the same in order for it to benefit from the // reservation. InstanceFamily *string `locationName:"instanceFamily" type:"string"` // The ID of the reservation. This remains the same regardless of which Dedicated // Hosts are associated with it. OfferingId *string `locationName:"offeringId" type:"string"` // The payment option selected for this reservation. PaymentOption *string `locationName:"paymentOption" type:"string" enum:"PaymentOption"` // The date and time that the reservation started. Start *time.Time `locationName:"start" type:"timestamp" timestampFormat:"iso8601"` // The state of the reservation. State *string `locationName:"state" type:"string" enum:"ReservationState"` // The upfront price of the reservation. UpfrontPrice *string `locationName:"upfrontPrice" type:"string"` } // String returns the string representation func (s HostReservation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HostReservation) GoString() string { return s.String() } // Describes an IAM instance profile. type IamInstanceProfile struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the instance profile. Arn *string `locationName:"arn" type:"string"` // The ID of the instance profile. Id *string `locationName:"id" type:"string"` } // String returns the string representation func (s IamInstanceProfile) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IamInstanceProfile) GoString() string { return s.String() } // Describes an IAM instance profile. type IamInstanceProfileSpecification struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the instance profile. Arn *string `locationName:"arn" type:"string"` // The name of the instance profile. Name *string `locationName:"name" type:"string"` } // String returns the string representation func (s IamInstanceProfileSpecification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IamInstanceProfileSpecification) GoString() string { return s.String() } // Describes the ICMP type and code. type IcmpTypeCode struct { _ struct{} `type:"structure"` // The ICMP type. A value of -1 means all types. Code *int64 `locationName:"code" type:"integer"` // The ICMP code. A value of -1 means all codes for the specified ICMP type. Type *int64 `locationName:"type" type:"integer"` } // String returns the string representation func (s IcmpTypeCode) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IcmpTypeCode) GoString() string { return s.String() } // Describes the ID format for a resource. type IdFormat struct { _ struct{} `type:"structure"` // The date in UTC at which you are permanently switched over to using longer // IDs. If a deadline is not yet available for this resource type, this field // is not returned. Deadline *time.Time `locationName:"deadline" type:"timestamp" timestampFormat:"iso8601"` // The type of resource. Resource *string `locationName:"resource" type:"string"` // Indicates whether longer IDs (17-character IDs) are enabled for the resource. UseLongIds *bool `locationName:"useLongIds" type:"boolean"` } // String returns the string representation func (s IdFormat) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IdFormat) GoString() string { return s.String() } // Describes an image. type Image struct { _ struct{} `type:"structure"` // The architecture of the image. Architecture *string `locationName:"architecture" type:"string" enum:"ArchitectureValues"` // Any block device mapping entries. BlockDeviceMappings []*BlockDeviceMapping `locationName:"blockDeviceMapping" locationNameList:"item" type:"list"` // The date and time the image was created. CreationDate *string `locationName:"creationDate" type:"string"` // The description of the AMI that was provided during image creation. Description *string `locationName:"description" type:"string"` // Specifies whether enhanced networking with ENA is enabled. EnaSupport *bool `locationName:"enaSupport" type:"boolean"` // The hypervisor type of the image. Hypervisor *string `locationName:"hypervisor" type:"string" enum:"HypervisorType"` // The ID of the AMI. ImageId *string `locationName:"imageId" type:"string"` // The location of the AMI. ImageLocation *string `locationName:"imageLocation" type:"string"` // The AWS account alias (for example, amazon, self) or the AWS account ID of // the AMI owner. ImageOwnerAlias *string `locationName:"imageOwnerAlias" type:"string"` // The type of image. ImageType *string `locationName:"imageType" type:"string" enum:"ImageTypeValues"` // The kernel associated with the image, if any. Only applicable for machine // images. KernelId *string `locationName:"kernelId" type:"string"` // The name of the AMI that was provided during image creation. Name *string `locationName:"name" type:"string"` // The AWS account ID of the image owner. OwnerId *string `locationName:"imageOwnerId" type:"string"` // The value is Windows for Windows AMIs; otherwise blank. Platform *string `locationName:"platform" type:"string" enum:"PlatformValues"` // Any product codes associated with the AMI. ProductCodes []*ProductCode `locationName:"productCodes" locationNameList:"item" type:"list"` // Indicates whether the image has public launch permissions. The value is true // if this image has public launch permissions or false if it has only implicit // and explicit launch permissions. Public *bool `locationName:"isPublic" type:"boolean"` // The RAM disk associated with the image, if any. Only applicable for machine // images. RamdiskId *string `locationName:"ramdiskId" type:"string"` // The device name of the root device (for example, /dev/sda1 or /dev/xvda). RootDeviceName *string `locationName:"rootDeviceName" type:"string"` // The type of root device used by the AMI. The AMI can use an EBS volume or // an instance store volume. RootDeviceType *string `locationName:"rootDeviceType" type:"string" enum:"DeviceType"` // Specifies whether enhanced networking with the Intel 82599 Virtual Function // interface is enabled. SriovNetSupport *string `locationName:"sriovNetSupport" type:"string"` // The current state of the AMI. If the state is available, the image is successfully // registered and can be used to launch an instance. State *string `locationName:"imageState" type:"string" enum:"ImageState"` // The reason for the state change. StateReason *StateReason `locationName:"stateReason" type:"structure"` // Any tags assigned to the image. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // The type of virtualization of the AMI. VirtualizationType *string `locationName:"virtualizationType" type:"string" enum:"VirtualizationType"` } // String returns the string representation func (s Image) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Image) GoString() string { return s.String() } // Describes the disk container object for an import image task. type ImageDiskContainer struct { _ struct{} `type:"structure"` // The description of the disk image. Description *string `type:"string"` // The block device mapping for the disk. DeviceName *string `type:"string"` // The format of the disk image being imported. // // Valid values: RAW | VHD | VMDK | OVA Format *string `type:"string"` // The ID of the EBS snapshot to be used for importing the snapshot. SnapshotId *string `type:"string"` // The URL to the Amazon S3-based disk image being imported. The URL can either // be a https URL (https://..) or an Amazon S3 URL (s3://..) Url *string `type:"string"` // The S3 bucket for the disk image. UserBucket *UserBucket `type:"structure"` } // String returns the string representation func (s ImageDiskContainer) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImageDiskContainer) GoString() string { return s.String() } // Contains the parameters for ImportImage. type ImportImageInput struct { _ struct{} `type:"structure"` // The architecture of the virtual machine. // // Valid values: i386 | x86_64 Architecture *string `type:"string"` // The client-specific data. ClientData *ClientData `type:"structure"` // The token to enable idempotency for VM import requests. ClientToken *string `type:"string"` // A description string for the import image task. Description *string `type:"string"` // Information about the disk containers. DiskContainers []*ImageDiskContainer `locationName:"DiskContainer" locationNameList:"item" type:"list"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // The target hypervisor platform. // // Valid values: xen Hypervisor *string `type:"string"` // The license type to be used for the Amazon Machine Image (AMI) after importing. // // Note: You may only use BYOL if you have existing licenses with rights to // use these licenses in a third party cloud like AWS. For more information, // see Prerequisites (http://docs.aws.amazon.com/vm-import/latest/userguide/vmimport-image-import.html#prerequisites-image) // in the VM Import/Export User Guide. // // Valid values: AWS | BYOL LicenseType *string `type:"string"` // The operating system of the virtual machine. // // Valid values: Windows | Linux Platform *string `type:"string"` // The name of the role to use when not using the default role, 'vmimport'. RoleName *string `type:"string"` } // String returns the string representation func (s ImportImageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportImageInput) GoString() string { return s.String() } // Contains the output for ImportImage. type ImportImageOutput struct { _ struct{} `type:"structure"` // The architecture of the virtual machine. Architecture *string `locationName:"architecture" type:"string"` // A description of the import task. Description *string `locationName:"description" type:"string"` // The target hypervisor of the import task. Hypervisor *string `locationName:"hypervisor" type:"string"` // The ID of the Amazon Machine Image (AMI) created by the import task. ImageId *string `locationName:"imageId" type:"string"` // The task ID of the import image task. ImportTaskId *string `locationName:"importTaskId" type:"string"` // The license type of the virtual machine. LicenseType *string `locationName:"licenseType" type:"string"` // The operating system of the virtual machine. Platform *string `locationName:"platform" type:"string"` // The progress of the task. Progress *string `locationName:"progress" type:"string"` // Information about the snapshots. SnapshotDetails []*SnapshotDetail `locationName:"snapshotDetailSet" locationNameList:"item" type:"list"` // A brief status of the task. Status *string `locationName:"status" type:"string"` // A detailed status message of the import task. StatusMessage *string `locationName:"statusMessage" type:"string"` } // String returns the string representation func (s ImportImageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportImageOutput) GoString() string { return s.String() } // Describes an import image task. type ImportImageTask struct { _ struct{} `type:"structure"` // The architecture of the virtual machine. // // Valid values: i386 | x86_64 Architecture *string `locationName:"architecture" type:"string"` // A description of the import task. Description *string `locationName:"description" type:"string"` // The target hypervisor for the import task. // // Valid values: xen Hypervisor *string `locationName:"hypervisor" type:"string"` // The ID of the Amazon Machine Image (AMI) of the imported virtual machine. ImageId *string `locationName:"imageId" type:"string"` // The ID of the import image task. ImportTaskId *string `locationName:"importTaskId" type:"string"` // The license type of the virtual machine. LicenseType *string `locationName:"licenseType" type:"string"` // The description string for the import image task. Platform *string `locationName:"platform" type:"string"` // The percentage of progress of the import image task. Progress *string `locationName:"progress" type:"string"` // Information about the snapshots. SnapshotDetails []*SnapshotDetail `locationName:"snapshotDetailSet" locationNameList:"item" type:"list"` // A brief status for the import image task. Status *string `locationName:"status" type:"string"` // A descriptive status message for the import image task. StatusMessage *string `locationName:"statusMessage" type:"string"` } // String returns the string representation func (s ImportImageTask) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportImageTask) GoString() string { return s.String() } // Contains the parameters for ImportInstance. type ImportInstanceInput struct { _ struct{} `type:"structure"` // A description for the instance being imported. Description *string `locationName:"description" type:"string"` // The disk image. DiskImages []*DiskImage `locationName:"diskImage" type:"list"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The launch specification. LaunchSpecification *ImportInstanceLaunchSpecification `locationName:"launchSpecification" type:"structure"` // The instance operating system. // // Platform is a required field Platform *string `locationName:"platform" type:"string" required:"true" enum:"PlatformValues"` } // String returns the string representation func (s ImportInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ImportInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ImportInstanceInput"} if s.Platform == nil { invalidParams.Add(request.NewErrParamRequired("Platform")) } if s.DiskImages != nil { for i, v := range s.DiskImages { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DiskImages", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the launch specification for VM import. type ImportInstanceLaunchSpecification struct { _ struct{} `type:"structure"` // Reserved. AdditionalInfo *string `locationName:"additionalInfo" type:"string"` // The architecture of the instance. Architecture *string `locationName:"architecture" type:"string" enum:"ArchitectureValues"` // One or more security group IDs. GroupIds []*string `locationName:"GroupId" locationNameList:"SecurityGroupId" type:"list"` // One or more security group names. GroupNames []*string `locationName:"GroupName" locationNameList:"SecurityGroup" type:"list"` // Indicates whether an instance stops or terminates when you initiate shutdown // from the instance (using the operating system command for system shutdown). InstanceInitiatedShutdownBehavior *string `locationName:"instanceInitiatedShutdownBehavior" type:"string" enum:"ShutdownBehavior"` // The instance type. For more information about the instance types that you // can import, see Instance Types (http://docs.aws.amazon.com/vm-import/latest/userguide/vmimport-image-import.html#vmimport-instance-types) // in the VM Import/Export User Guide. InstanceType *string `locationName:"instanceType" type:"string" enum:"InstanceType"` // Indicates whether monitoring is enabled. Monitoring *bool `locationName:"monitoring" type:"boolean"` // The placement information for the instance. Placement *Placement `locationName:"placement" type:"structure"` // [EC2-VPC] An available IP address from the IP address range of the subnet. PrivateIpAddress *string `locationName:"privateIpAddress" type:"string"` // [EC2-VPC] The ID of the subnet in which to launch the instance. SubnetId *string `locationName:"subnetId" type:"string"` // The user data to make available to the instance. If you are using an AWS // SDK or command line tool, Base64-encoding is performed for you, and you can // load the text from a file. Otherwise, you must provide Base64-encoded text. UserData *UserData `locationName:"userData" type:"structure"` } // String returns the string representation func (s ImportInstanceLaunchSpecification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportInstanceLaunchSpecification) GoString() string { return s.String() } // Contains the output for ImportInstance. type ImportInstanceOutput struct { _ struct{} `type:"structure"` // Information about the conversion task. ConversionTask *ConversionTask `locationName:"conversionTask" type:"structure"` } // String returns the string representation func (s ImportInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportInstanceOutput) GoString() string { return s.String() } // Describes an import instance task. type ImportInstanceTaskDetails struct { _ struct{} `type:"structure"` // A description of the task. Description *string `locationName:"description" type:"string"` // The ID of the instance. InstanceId *string `locationName:"instanceId" type:"string"` // The instance operating system. Platform *string `locationName:"platform" type:"string" enum:"PlatformValues"` // One or more volumes. // // Volumes is a required field Volumes []*ImportInstanceVolumeDetailItem `locationName:"volumes" locationNameList:"item" type:"list" required:"true"` } // String returns the string representation func (s ImportInstanceTaskDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportInstanceTaskDetails) GoString() string { return s.String() } // Describes an import volume task. type ImportInstanceVolumeDetailItem struct { _ struct{} `type:"structure"` // The Availability Zone where the resulting instance will reside. // // AvailabilityZone is a required field AvailabilityZone *string `locationName:"availabilityZone" type:"string" required:"true"` // The number of bytes converted so far. // // BytesConverted is a required field BytesConverted *int64 `locationName:"bytesConverted" type:"long" required:"true"` // A description of the task. Description *string `locationName:"description" type:"string"` // The image. // // Image is a required field Image *DiskImageDescription `locationName:"image" type:"structure" required:"true"` // The status of the import of this particular disk image. // // Status is a required field Status *string `locationName:"status" type:"string" required:"true"` // The status information or errors related to the disk image. StatusMessage *string `locationName:"statusMessage" type:"string"` // The volume. // // Volume is a required field Volume *DiskImageVolumeDescription `locationName:"volume" type:"structure" required:"true"` } // String returns the string representation func (s ImportInstanceVolumeDetailItem) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportInstanceVolumeDetailItem) GoString() string { return s.String() } // Contains the parameters for ImportKeyPair. type ImportKeyPairInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // A unique name for the key pair. // // KeyName is a required field KeyName *string `locationName:"keyName" type:"string" required:"true"` // The public key. For API calls, the text must be base64-encoded. For command // line tools, base64 encoding is performed for you. // // PublicKeyMaterial is automatically base64 encoded/decoded by the SDK. // // PublicKeyMaterial is a required field PublicKeyMaterial []byte `locationName:"publicKeyMaterial" type:"blob" required:"true"` } // String returns the string representation func (s ImportKeyPairInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportKeyPairInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ImportKeyPairInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ImportKeyPairInput"} if s.KeyName == nil { invalidParams.Add(request.NewErrParamRequired("KeyName")) } if s.PublicKeyMaterial == nil { invalidParams.Add(request.NewErrParamRequired("PublicKeyMaterial")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ImportKeyPair. type ImportKeyPairOutput struct { _ struct{} `type:"structure"` // The MD5 public key fingerprint as specified in section 4 of RFC 4716. KeyFingerprint *string `locationName:"keyFingerprint" type:"string"` // The key pair name you provided. KeyName *string `locationName:"keyName" type:"string"` } // String returns the string representation func (s ImportKeyPairOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportKeyPairOutput) GoString() string { return s.String() } // Contains the parameters for ImportSnapshot. type ImportSnapshotInput struct { _ struct{} `type:"structure"` // The client-specific data. ClientData *ClientData `type:"structure"` // Token to enable idempotency for VM import requests. ClientToken *string `type:"string"` // The description string for the import snapshot task. Description *string `type:"string"` // Information about the disk container. DiskContainer *SnapshotDiskContainer `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // The name of the role to use when not using the default role, 'vmimport'. RoleName *string `type:"string"` } // String returns the string representation func (s ImportSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportSnapshotInput) GoString() string { return s.String() } // Contains the output for ImportSnapshot. type ImportSnapshotOutput struct { _ struct{} `type:"structure"` // A description of the import snapshot task. Description *string `locationName:"description" type:"string"` // The ID of the import snapshot task. ImportTaskId *string `locationName:"importTaskId" type:"string"` // Information about the import snapshot task. SnapshotTaskDetail *SnapshotTaskDetail `locationName:"snapshotTaskDetail" type:"structure"` } // String returns the string representation func (s ImportSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportSnapshotOutput) GoString() string { return s.String() } // Describes an import snapshot task. type ImportSnapshotTask struct { _ struct{} `type:"structure"` // A description of the import snapshot task. Description *string `locationName:"description" type:"string"` // The ID of the import snapshot task. ImportTaskId *string `locationName:"importTaskId" type:"string"` // Describes an import snapshot task. SnapshotTaskDetail *SnapshotTaskDetail `locationName:"snapshotTaskDetail" type:"structure"` } // String returns the string representation func (s ImportSnapshotTask) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportSnapshotTask) GoString() string { return s.String() } // Contains the parameters for ImportVolume. type ImportVolumeInput struct { _ struct{} `type:"structure"` // The Availability Zone for the resulting EBS volume. // // AvailabilityZone is a required field AvailabilityZone *string `locationName:"availabilityZone" type:"string" required:"true"` // A description of the volume. Description *string `locationName:"description" type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The disk image. // // Image is a required field Image *DiskImageDetail `locationName:"image" type:"structure" required:"true"` // The volume size. // // Volume is a required field Volume *VolumeDetail `locationName:"volume" type:"structure" required:"true"` } // String returns the string representation func (s ImportVolumeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportVolumeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ImportVolumeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ImportVolumeInput"} if s.AvailabilityZone == nil { invalidParams.Add(request.NewErrParamRequired("AvailabilityZone")) } if s.Image == nil { invalidParams.Add(request.NewErrParamRequired("Image")) } if s.Volume == nil { invalidParams.Add(request.NewErrParamRequired("Volume")) } if s.Image != nil { if err := s.Image.Validate(); err != nil { invalidParams.AddNested("Image", err.(request.ErrInvalidParams)) } } if s.Volume != nil { if err := s.Volume.Validate(); err != nil { invalidParams.AddNested("Volume", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output for ImportVolume. type ImportVolumeOutput struct { _ struct{} `type:"structure"` // Information about the conversion task. ConversionTask *ConversionTask `locationName:"conversionTask" type:"structure"` } // String returns the string representation func (s ImportVolumeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportVolumeOutput) GoString() string { return s.String() } // Describes an import volume task. type ImportVolumeTaskDetails struct { _ struct{} `type:"structure"` // The Availability Zone where the resulting volume will reside. // // AvailabilityZone is a required field AvailabilityZone *string `locationName:"availabilityZone" type:"string" required:"true"` // The number of bytes converted so far. // // BytesConverted is a required field BytesConverted *int64 `locationName:"bytesConverted" type:"long" required:"true"` // The description you provided when starting the import volume task. Description *string `locationName:"description" type:"string"` // The image. // // Image is a required field Image *DiskImageDescription `locationName:"image" type:"structure" required:"true"` // The volume. // // Volume is a required field Volume *DiskImageVolumeDescription `locationName:"volume" type:"structure" required:"true"` } // String returns the string representation func (s ImportVolumeTaskDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportVolumeTaskDetails) GoString() string { return s.String() } // Describes an instance. type Instance struct { _ struct{} `type:"structure"` // The AMI launch index, which can be used to find this instance in the launch // group. AmiLaunchIndex *int64 `locationName:"amiLaunchIndex" type:"integer"` // The architecture of the image. Architecture *string `locationName:"architecture" type:"string" enum:"ArchitectureValues"` // Any block device mapping entries for the instance. BlockDeviceMappings []*InstanceBlockDeviceMapping `locationName:"blockDeviceMapping" locationNameList:"item" type:"list"` // The idempotency token you provided when you launched the instance, if applicable. ClientToken *string `locationName:"clientToken" type:"string"` // Indicates whether the instance is optimized for EBS I/O. This optimization // provides dedicated throughput to Amazon EBS and an optimized configuration // stack to provide optimal I/O performance. This optimization isn't available // with all instance types. Additional usage charges apply when using an EBS // Optimized instance. EbsOptimized *bool `locationName:"ebsOptimized" type:"boolean"` // Specifies whether enhanced networking with ENA is enabled. EnaSupport *bool `locationName:"enaSupport" type:"boolean"` // The hypervisor type of the instance. Hypervisor *string `locationName:"hypervisor" type:"string" enum:"HypervisorType"` // The IAM instance profile associated with the instance, if applicable. IamInstanceProfile *IamInstanceProfile `locationName:"iamInstanceProfile" type:"structure"` // The ID of the AMI used to launch the instance. ImageId *string `locationName:"imageId" type:"string"` // The ID of the instance. InstanceId *string `locationName:"instanceId" type:"string"` // Indicates whether this is a Spot instance or a Scheduled Instance. InstanceLifecycle *string `locationName:"instanceLifecycle" type:"string" enum:"InstanceLifecycleType"` // The instance type. InstanceType *string `locationName:"instanceType" type:"string" enum:"InstanceType"` // The kernel associated with this instance, if applicable. KernelId *string `locationName:"kernelId" type:"string"` // The name of the key pair, if this instance was launched with an associated // key pair. KeyName *string `locationName:"keyName" type:"string"` // The time the instance was launched. LaunchTime *time.Time `locationName:"launchTime" type:"timestamp" timestampFormat:"iso8601"` // The monitoring information for the instance. Monitoring *Monitoring `locationName:"monitoring" type:"structure"` // [EC2-VPC] One or more network interfaces for the instance. NetworkInterfaces []*InstanceNetworkInterface `locationName:"networkInterfaceSet" locationNameList:"item" type:"list"` // The location where the instance launched, if applicable. Placement *Placement `locationName:"placement" type:"structure"` // The value is Windows for Windows instances; otherwise blank. Platform *string `locationName:"platform" type:"string" enum:"PlatformValues"` // The private DNS name assigned to the instance. This DNS name can only be // used inside the Amazon EC2 network. This name is not available until the // instance enters the running state. For EC2-VPC, this name is only available // if you've enabled DNS hostnames for your VPC. PrivateDnsName *string `locationName:"privateDnsName" type:"string"` // The private IP address assigned to the instance. PrivateIpAddress *string `locationName:"privateIpAddress" type:"string"` // The product codes attached to this instance, if applicable. ProductCodes []*ProductCode `locationName:"productCodes" locationNameList:"item" type:"list"` // The public DNS name assigned to the instance. This name is not available // until the instance enters the running state. For EC2-VPC, this name is only // available if you've enabled DNS hostnames for your VPC. PublicDnsName *string `locationName:"dnsName" type:"string"` // The public IP address assigned to the instance, if applicable. PublicIpAddress *string `locationName:"ipAddress" type:"string"` // The RAM disk associated with this instance, if applicable. RamdiskId *string `locationName:"ramdiskId" type:"string"` // The root device name (for example, /dev/sda1 or /dev/xvda). RootDeviceName *string `locationName:"rootDeviceName" type:"string"` // The root device type used by the AMI. The AMI can use an EBS volume or an // instance store volume. RootDeviceType *string `locationName:"rootDeviceType" type:"string" enum:"DeviceType"` // One or more security groups for the instance. SecurityGroups []*GroupIdentifier `locationName:"groupSet" locationNameList:"item" type:"list"` // Specifies whether to enable an instance launched in a VPC to perform NAT. // This controls whether source/destination checking is enabled on the instance. // A value of true means checking is enabled, and false means checking is disabled. // The value must be false for the instance to perform NAT. For more information, // see NAT Instances (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_NAT_Instance.html) // in the Amazon Virtual Private Cloud User Guide. SourceDestCheck *bool `locationName:"sourceDestCheck" type:"boolean"` // If the request is a Spot instance request, the ID of the request. SpotInstanceRequestId *string `locationName:"spotInstanceRequestId" type:"string"` // Specifies whether enhanced networking with the Intel 82599 Virtual Function // interface is enabled. SriovNetSupport *string `locationName:"sriovNetSupport" type:"string"` // The current state of the instance. State *InstanceState `locationName:"instanceState" type:"structure"` // The reason for the most recent state transition. StateReason *StateReason `locationName:"stateReason" type:"structure"` // The reason for the most recent state transition. This might be an empty string. StateTransitionReason *string `locationName:"reason" type:"string"` // [EC2-VPC] The ID of the subnet in which the instance is running. SubnetId *string `locationName:"subnetId" type:"string"` // Any tags assigned to the instance. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // The virtualization type of the instance. VirtualizationType *string `locationName:"virtualizationType" type:"string" enum:"VirtualizationType"` // [EC2-VPC] The ID of the VPC in which the instance is running. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s Instance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Instance) GoString() string { return s.String() } // Describes a block device mapping. type InstanceBlockDeviceMapping struct { _ struct{} `type:"structure"` // The device name exposed to the instance (for example, /dev/sdh or xvdh). DeviceName *string `locationName:"deviceName" type:"string"` // Parameters used to automatically set up EBS volumes when the instance is // launched. Ebs *EbsInstanceBlockDevice `locationName:"ebs" type:"structure"` } // String returns the string representation func (s InstanceBlockDeviceMapping) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceBlockDeviceMapping) GoString() string { return s.String() } // Describes a block device mapping entry. type InstanceBlockDeviceMappingSpecification struct { _ struct{} `type:"structure"` // The device name exposed to the instance (for example, /dev/sdh or xvdh). DeviceName *string `locationName:"deviceName" type:"string"` // Parameters used to automatically set up EBS volumes when the instance is // launched. Ebs *EbsInstanceBlockDeviceSpecification `locationName:"ebs" type:"structure"` // suppress the specified device included in the block device mapping. NoDevice *string `locationName:"noDevice" type:"string"` // The virtual device name. VirtualName *string `locationName:"virtualName" type:"string"` } // String returns the string representation func (s InstanceBlockDeviceMappingSpecification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceBlockDeviceMappingSpecification) GoString() string { return s.String() } // Information about the instance type that the Dedicated Host supports. type InstanceCapacity struct { _ struct{} `type:"structure"` // The number of instances that can still be launched onto the Dedicated Host. AvailableCapacity *int64 `locationName:"availableCapacity" type:"integer"` // The instance type size supported by the Dedicated Host. InstanceType *string `locationName:"instanceType" type:"string"` // The total number of instances that can be launched onto the Dedicated Host. TotalCapacity *int64 `locationName:"totalCapacity" type:"integer"` } // String returns the string representation func (s InstanceCapacity) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceCapacity) GoString() string { return s.String() } // Describes a Reserved Instance listing state. type InstanceCount struct { _ struct{} `type:"structure"` // The number of listed Reserved Instances in the state specified by the state. InstanceCount *int64 `locationName:"instanceCount" type:"integer"` // The states of the listed Reserved Instances. State *string `locationName:"state" type:"string" enum:"ListingState"` } // String returns the string representation func (s InstanceCount) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceCount) GoString() string { return s.String() } // Describes an instance to export. type InstanceExportDetails struct { _ struct{} `type:"structure"` // The ID of the resource being exported. InstanceId *string `locationName:"instanceId" type:"string"` // The target virtualization environment. TargetEnvironment *string `locationName:"targetEnvironment" type:"string" enum:"ExportEnvironment"` } // String returns the string representation func (s InstanceExportDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceExportDetails) GoString() string { return s.String() } // Describes the monitoring information of the instance. type InstanceMonitoring struct { _ struct{} `type:"structure"` // The ID of the instance. InstanceId *string `locationName:"instanceId" type:"string"` // The monitoring information. Monitoring *Monitoring `locationName:"monitoring" type:"structure"` } // String returns the string representation func (s InstanceMonitoring) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceMonitoring) GoString() string { return s.String() } // Describes a network interface. type InstanceNetworkInterface struct { _ struct{} `type:"structure"` // The association information for an Elastic IP associated with the network // interface. Association *InstanceNetworkInterfaceAssociation `locationName:"association" type:"structure"` // The network interface attachment. Attachment *InstanceNetworkInterfaceAttachment `locationName:"attachment" type:"structure"` // The description. Description *string `locationName:"description" type:"string"` // One or more security groups. Groups []*GroupIdentifier `locationName:"groupSet" locationNameList:"item" type:"list"` // The MAC address. MacAddress *string `locationName:"macAddress" type:"string"` // The ID of the network interface. NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string"` // The ID of the AWS account that created the network interface. OwnerId *string `locationName:"ownerId" type:"string"` // The private DNS name. PrivateDnsName *string `locationName:"privateDnsName" type:"string"` // The IP address of the network interface within the subnet. PrivateIpAddress *string `locationName:"privateIpAddress" type:"string"` // The private IP addresses associated with the network interface. PrivateIpAddresses []*InstancePrivateIpAddress `locationName:"privateIpAddressesSet" locationNameList:"item" type:"list"` // Indicates whether to validate network traffic to or from this network interface. SourceDestCheck *bool `locationName:"sourceDestCheck" type:"boolean"` // The status of the network interface. Status *string `locationName:"status" type:"string" enum:"NetworkInterfaceStatus"` // The ID of the subnet. SubnetId *string `locationName:"subnetId" type:"string"` // The ID of the VPC. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s InstanceNetworkInterface) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceNetworkInterface) GoString() string { return s.String() } // Describes association information for an Elastic IP address. type InstanceNetworkInterfaceAssociation struct { _ struct{} `type:"structure"` // The ID of the owner of the Elastic IP address. IpOwnerId *string `locationName:"ipOwnerId" type:"string"` // The public DNS name. PublicDnsName *string `locationName:"publicDnsName" type:"string"` // The public IP address or Elastic IP address bound to the network interface. PublicIp *string `locationName:"publicIp" type:"string"` } // String returns the string representation func (s InstanceNetworkInterfaceAssociation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceNetworkInterfaceAssociation) GoString() string { return s.String() } // Describes a network interface attachment. type InstanceNetworkInterfaceAttachment struct { _ struct{} `type:"structure"` // The time stamp when the attachment initiated. AttachTime *time.Time `locationName:"attachTime" type:"timestamp" timestampFormat:"iso8601"` // The ID of the network interface attachment. AttachmentId *string `locationName:"attachmentId" type:"string"` // Indicates whether the network interface is deleted when the instance is terminated. DeleteOnTermination *bool `locationName:"deleteOnTermination" type:"boolean"` // The index of the device on the instance for the network interface attachment. DeviceIndex *int64 `locationName:"deviceIndex" type:"integer"` // The attachment state. Status *string `locationName:"status" type:"string" enum:"AttachmentStatus"` } // String returns the string representation func (s InstanceNetworkInterfaceAttachment) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceNetworkInterfaceAttachment) GoString() string { return s.String() } // Describes a network interface. type InstanceNetworkInterfaceSpecification struct { _ struct{} `type:"structure"` // Indicates whether to assign a public IP address to an instance you launch // in a VPC. The public IP address can only be assigned to a network interface // for eth0, and can only be assigned to a new network interface, not an existing // one. You cannot specify more than one network interface in the request. If // launching into a default subnet, the default value is true. AssociatePublicIpAddress *bool `locationName:"associatePublicIpAddress" type:"boolean"` // If set to true, the interface is deleted when the instance is terminated. // You can specify true only if creating a new network interface when launching // an instance. DeleteOnTermination *bool `locationName:"deleteOnTermination" type:"boolean"` // The description of the network interface. Applies only if creating a network // interface when launching an instance. Description *string `locationName:"description" type:"string"` // The index of the device on the instance for the network interface attachment. // If you are specifying a network interface in a RunInstances request, you // must provide the device index. DeviceIndex *int64 `locationName:"deviceIndex" type:"integer"` // The IDs of the security groups for the network interface. Applies only if // creating a network interface when launching an instance. Groups []*string `locationName:"SecurityGroupId" locationNameList:"SecurityGroupId" type:"list"` // The ID of the network interface. NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string"` // The private IP address of the network interface. Applies only if creating // a network interface when launching an instance. You cannot specify this option // if you're launching more than one instance in a RunInstances request. PrivateIpAddress *string `locationName:"privateIpAddress" type:"string"` // One or more private IP addresses to assign to the network interface. Only // one private IP address can be designated as primary. You cannot specify this // option if you're launching more than one instance in a RunInstances request. PrivateIpAddresses []*PrivateIpAddressSpecification `locationName:"privateIpAddressesSet" queryName:"PrivateIpAddresses" locationNameList:"item" type:"list"` // The number of secondary private IP addresses. You can't specify this option // and specify more than one private IP address using the private IP addresses // option. You cannot specify this option if you're launching more than one // instance in a RunInstances request. SecondaryPrivateIpAddressCount *int64 `locationName:"secondaryPrivateIpAddressCount" type:"integer"` // The ID of the subnet associated with the network string. Applies only if // creating a network interface when launching an instance. SubnetId *string `locationName:"subnetId" type:"string"` } // String returns the string representation func (s InstanceNetworkInterfaceSpecification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceNetworkInterfaceSpecification) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InstanceNetworkInterfaceSpecification) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InstanceNetworkInterfaceSpecification"} if s.PrivateIpAddresses != nil { for i, v := range s.PrivateIpAddresses { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PrivateIpAddresses", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a private IP address. type InstancePrivateIpAddress struct { _ struct{} `type:"structure"` // The association information for an Elastic IP address for the network interface. Association *InstanceNetworkInterfaceAssociation `locationName:"association" type:"structure"` // Indicates whether this IP address is the primary private IP address of the // network interface. Primary *bool `locationName:"primary" type:"boolean"` // The private DNS name. PrivateDnsName *string `locationName:"privateDnsName" type:"string"` // The private IP address of the network interface. PrivateIpAddress *string `locationName:"privateIpAddress" type:"string"` } // String returns the string representation func (s InstancePrivateIpAddress) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstancePrivateIpAddress) GoString() string { return s.String() } // Describes the current state of the instance. type InstanceState struct { _ struct{} `type:"structure"` // The low byte represents the state. The high byte is an opaque internal value // and should be ignored. // // * 0 : pending // // * 16 : running // // * 32 : shutting-down // // * 48 : terminated // // * 64 : stopping // // * 80 : stopped Code *int64 `locationName:"code" type:"integer"` // The current state of the instance. Name *string `locationName:"name" type:"string" enum:"InstanceStateName"` } // String returns the string representation func (s InstanceState) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceState) GoString() string { return s.String() } // Describes an instance state change. type InstanceStateChange struct { _ struct{} `type:"structure"` // The current state of the instance. CurrentState *InstanceState `locationName:"currentState" type:"structure"` // The ID of the instance. InstanceId *string `locationName:"instanceId" type:"string"` // The previous state of the instance. PreviousState *InstanceState `locationName:"previousState" type:"structure"` } // String returns the string representation func (s InstanceStateChange) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceStateChange) GoString() string { return s.String() } // Describes the status of an instance. type InstanceStatus struct { _ struct{} `type:"structure"` // The Availability Zone of the instance. AvailabilityZone *string `locationName:"availabilityZone" type:"string"` // Any scheduled events associated with the instance. Events []*InstanceStatusEvent `locationName:"eventsSet" locationNameList:"item" type:"list"` // The ID of the instance. InstanceId *string `locationName:"instanceId" type:"string"` // The intended state of the instance. DescribeInstanceStatus requires that // an instance be in the running state. InstanceState *InstanceState `locationName:"instanceState" type:"structure"` // Reports impaired functionality that stems from issues internal to the instance, // such as impaired reachability. InstanceStatus *InstanceStatusSummary `locationName:"instanceStatus" type:"structure"` // Reports impaired functionality that stems from issues related to the systems // that support an instance, such as hardware failures and network connectivity // problems. SystemStatus *InstanceStatusSummary `locationName:"systemStatus" type:"structure"` } // String returns the string representation func (s InstanceStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceStatus) GoString() string { return s.String() } // Describes the instance status. type InstanceStatusDetails struct { _ struct{} `type:"structure"` // The time when a status check failed. For an instance that was launched and // impaired, this is the time when the instance was launched. ImpairedSince *time.Time `locationName:"impairedSince" type:"timestamp" timestampFormat:"iso8601"` // The type of instance status. Name *string `locationName:"name" type:"string" enum:"StatusName"` // The status. Status *string `locationName:"status" type:"string" enum:"StatusType"` } // String returns the string representation func (s InstanceStatusDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceStatusDetails) GoString() string { return s.String() } // Describes a scheduled event for an instance. type InstanceStatusEvent struct { _ struct{} `type:"structure"` // The event code. Code *string `locationName:"code" type:"string" enum:"EventCode"` // A description of the event. // // After a scheduled event is completed, it can still be described for up to // a week. If the event has been completed, this description starts with the // following text: [Completed]. Description *string `locationName:"description" type:"string"` // The latest scheduled end time for the event. NotAfter *time.Time `locationName:"notAfter" type:"timestamp" timestampFormat:"iso8601"` // The earliest scheduled start time for the event. NotBefore *time.Time `locationName:"notBefore" type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s InstanceStatusEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceStatusEvent) GoString() string { return s.String() } // Describes the status of an instance. type InstanceStatusSummary struct { _ struct{} `type:"structure"` // The system instance health or application instance health. Details []*InstanceStatusDetails `locationName:"details" locationNameList:"item" type:"list"` // The status. Status *string `locationName:"status" type:"string" enum:"SummaryStatus"` } // String returns the string representation func (s InstanceStatusSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceStatusSummary) GoString() string { return s.String() } // Describes an Internet gateway. type InternetGateway struct { _ struct{} `type:"structure"` // Any VPCs attached to the Internet gateway. Attachments []*InternetGatewayAttachment `locationName:"attachmentSet" locationNameList:"item" type:"list"` // The ID of the Internet gateway. InternetGatewayId *string `locationName:"internetGatewayId" type:"string"` // Any tags assigned to the Internet gateway. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s InternetGateway) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InternetGateway) GoString() string { return s.String() } // Describes the attachment of a VPC to an Internet gateway. type InternetGatewayAttachment struct { _ struct{} `type:"structure"` // The current state of the attachment. State *string `locationName:"state" type:"string" enum:"AttachmentStatus"` // The ID of the VPC. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s InternetGatewayAttachment) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InternetGatewayAttachment) GoString() string { return s.String() } // Describes a security group rule. type IpPermission struct { _ struct{} `type:"structure"` // The start of port range for the TCP and UDP protocols, or an ICMP type number. // A value of -1 indicates all ICMP types. FromPort *int64 `locationName:"fromPort" type:"integer"` // The IP protocol name (for tcp, udp, and icmp) or number (see Protocol Numbers // (http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml)). // // [EC2-VPC only] When you authorize or revoke security group rules, you can // use -1 to specify all. IpProtocol *string `locationName:"ipProtocol" type:"string"` // One or more IP ranges. IpRanges []*IpRange `locationName:"ipRanges" locationNameList:"item" type:"list"` // (Valid for AuthorizeSecurityGroupEgress, RevokeSecurityGroupEgress and DescribeSecurityGroups // only) One or more prefix list IDs for an AWS service. In an AuthorizeSecurityGroupEgress // request, this is the AWS service that you want to access through a VPC endpoint // from instances associated with the security group. PrefixListIds []*PrefixListId `locationName:"prefixListIds" locationNameList:"item" type:"list"` // The end of port range for the TCP and UDP protocols, or an ICMP code. A value // of -1 indicates all ICMP codes for the specified ICMP type. ToPort *int64 `locationName:"toPort" type:"integer"` // One or more security group and AWS account ID pairs. UserIdGroupPairs []*UserIdGroupPair `locationName:"groups" locationNameList:"item" type:"list"` } // String returns the string representation func (s IpPermission) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IpPermission) GoString() string { return s.String() } // Describes an IP range. type IpRange struct { _ struct{} `type:"structure"` // The CIDR range. You can either specify a CIDR range or a source security // group, not both. CidrIp *string `locationName:"cidrIp" type:"string"` } // String returns the string representation func (s IpRange) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IpRange) GoString() string { return s.String() } // Describes a key pair. type KeyPairInfo struct { _ struct{} `type:"structure"` // If you used CreateKeyPair to create the key pair, this is the SHA-1 digest // of the DER encoded private key. If you used ImportKeyPair to provide AWS // the public key, this is the MD5 public key fingerprint as specified in section // 4 of RFC4716. KeyFingerprint *string `locationName:"keyFingerprint" type:"string"` // The name of the key pair. KeyName *string `locationName:"keyName" type:"string"` } // String returns the string representation func (s KeyPairInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KeyPairInfo) GoString() string { return s.String() } // Describes a launch permission. type LaunchPermission struct { _ struct{} `type:"structure"` // The name of the group. Group *string `locationName:"group" type:"string" enum:"PermissionGroup"` // The AWS account ID. UserId *string `locationName:"userId" type:"string"` } // String returns the string representation func (s LaunchPermission) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LaunchPermission) GoString() string { return s.String() } // Describes a launch permission modification. type LaunchPermissionModifications struct { _ struct{} `type:"structure"` // The AWS account ID to add to the list of launch permissions for the AMI. Add []*LaunchPermission `locationNameList:"item" type:"list"` // The AWS account ID to remove from the list of launch permissions for the // AMI. Remove []*LaunchPermission `locationNameList:"item" type:"list"` } // String returns the string representation func (s LaunchPermissionModifications) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LaunchPermissionModifications) GoString() string { return s.String() } // Describes the launch specification for an instance. type LaunchSpecification struct { _ struct{} `type:"structure"` // Deprecated. AddressingType *string `locationName:"addressingType" type:"string"` // One or more block device mapping entries. // // Although you can specify encrypted EBS volumes in this block device mapping // for your Spot Instances, these volumes are not encrypted. BlockDeviceMappings []*BlockDeviceMapping `locationName:"blockDeviceMapping" locationNameList:"item" type:"list"` // Indicates whether the instance is optimized for EBS I/O. This optimization // provides dedicated throughput to Amazon EBS and an optimized configuration // stack to provide optimal EBS I/O performance. This optimization isn't available // with all instance types. Additional usage charges apply when using an EBS // Optimized instance. // // Default: false EbsOptimized *bool `locationName:"ebsOptimized" type:"boolean"` // The IAM instance profile. IamInstanceProfile *IamInstanceProfileSpecification `locationName:"iamInstanceProfile" type:"structure"` // The ID of the AMI. ImageId *string `locationName:"imageId" type:"string"` // The instance type. InstanceType *string `locationName:"instanceType" type:"string" enum:"InstanceType"` // The ID of the kernel. KernelId *string `locationName:"kernelId" type:"string"` // The name of the key pair. KeyName *string `locationName:"keyName" type:"string"` // Describes the monitoring for the instance. Monitoring *RunInstancesMonitoringEnabled `locationName:"monitoring" type:"structure"` // One or more network interfaces. NetworkInterfaces []*InstanceNetworkInterfaceSpecification `locationName:"networkInterfaceSet" locationNameList:"item" type:"list"` // The placement information for the instance. Placement *SpotPlacement `locationName:"placement" type:"structure"` // The ID of the RAM disk. RamdiskId *string `locationName:"ramdiskId" type:"string"` // One or more security groups. When requesting instances in a VPC, you must // specify the IDs of the security groups. When requesting instances in EC2-Classic, // you can specify the names or the IDs of the security groups. SecurityGroups []*GroupIdentifier `locationName:"groupSet" locationNameList:"item" type:"list"` // The ID of the subnet in which to launch the instance. SubnetId *string `locationName:"subnetId" type:"string"` // The user data to make available to the instances. If you are using an AWS // SDK or command line tool, Base64-encoding is performed for you, and you can // load the text from a file. Otherwise, you must provide Base64-encoded text. UserData *string `locationName:"userData" type:"string"` } // String returns the string representation func (s LaunchSpecification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LaunchSpecification) GoString() string { return s.String() } // Contains the parameters for ModifyHosts. type ModifyHostsInput struct { _ struct{} `type:"structure"` // Specify whether to enable or disable auto-placement. // // AutoPlacement is a required field AutoPlacement *string `locationName:"autoPlacement" type:"string" required:"true" enum:"AutoPlacement"` // The host IDs of the Dedicated Hosts you want to modify. // // HostIds is a required field HostIds []*string `locationName:"hostId" locationNameList:"item" type:"list" required:"true"` } // String returns the string representation func (s ModifyHostsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyHostsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyHostsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyHostsInput"} if s.AutoPlacement == nil { invalidParams.Add(request.NewErrParamRequired("AutoPlacement")) } if s.HostIds == nil { invalidParams.Add(request.NewErrParamRequired("HostIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ModifyHosts. type ModifyHostsOutput struct { _ struct{} `type:"structure"` // The IDs of the Dedicated Hosts that were successfully modified. Successful []*string `locationName:"successful" locationNameList:"item" type:"list"` // The IDs of the Dedicated Hosts that could not be modified. Check whether // the setting you requested can be used. Unsuccessful []*UnsuccessfulItem `locationName:"unsuccessful" locationNameList:"item" type:"list"` } // String returns the string representation func (s ModifyHostsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyHostsOutput) GoString() string { return s.String() } // Contains the parameters of ModifyIdFormat. type ModifyIdFormatInput struct { _ struct{} `type:"structure"` // The type of resource: instance | reservation | snapshot | volume // // Resource is a required field Resource *string `type:"string" required:"true"` // Indicate whether the resource should use longer IDs (17-character IDs). // // UseLongIds is a required field UseLongIds *bool `type:"boolean" required:"true"` } // String returns the string representation func (s ModifyIdFormatInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyIdFormatInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyIdFormatInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyIdFormatInput"} if s.Resource == nil { invalidParams.Add(request.NewErrParamRequired("Resource")) } if s.UseLongIds == nil { invalidParams.Add(request.NewErrParamRequired("UseLongIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyIdFormatOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ModifyIdFormatOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyIdFormatOutput) GoString() string { return s.String() } // Contains the parameters of ModifyIdentityIdFormat. type ModifyIdentityIdFormatInput struct { _ struct{} `type:"structure"` // The ARN of the principal, which can be an IAM user, IAM role, or the root // user. Specify all to modify the ID format for all IAM users, IAM roles, and // the root user of the account. // // PrincipalArn is a required field PrincipalArn *string `locationName:"principalArn" type:"string" required:"true"` // The type of resource: instance | reservation | snapshot | volume // // Resource is a required field Resource *string `locationName:"resource" type:"string" required:"true"` // Indicates whether the resource should use longer IDs (17-character IDs) // // UseLongIds is a required field UseLongIds *bool `locationName:"useLongIds" type:"boolean" required:"true"` } // String returns the string representation func (s ModifyIdentityIdFormatInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyIdentityIdFormatInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyIdentityIdFormatInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyIdentityIdFormatInput"} if s.PrincipalArn == nil { invalidParams.Add(request.NewErrParamRequired("PrincipalArn")) } if s.Resource == nil { invalidParams.Add(request.NewErrParamRequired("Resource")) } if s.UseLongIds == nil { invalidParams.Add(request.NewErrParamRequired("UseLongIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyIdentityIdFormatOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ModifyIdentityIdFormatOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyIdentityIdFormatOutput) GoString() string { return s.String() } // Contains the parameters for ModifyImageAttribute. type ModifyImageAttributeInput struct { _ struct{} `type:"structure"` // The name of the attribute to modify. Attribute *string `type:"string"` // A description for the AMI. Description *AttributeValue `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the AMI. // // ImageId is a required field ImageId *string `type:"string" required:"true"` // A launch permission modification. LaunchPermission *LaunchPermissionModifications `type:"structure"` // The operation type. OperationType *string `type:"string" enum:"OperationType"` // One or more product codes. After you add a product code to an AMI, it can't // be removed. This is only valid when modifying the productCodes attribute. ProductCodes []*string `locationName:"ProductCode" locationNameList:"ProductCode" type:"list"` // One or more user groups. This is only valid when modifying the launchPermission // attribute. UserGroups []*string `locationName:"UserGroup" locationNameList:"UserGroup" type:"list"` // One or more AWS account IDs. This is only valid when modifying the launchPermission // attribute. UserIds []*string `locationName:"UserId" locationNameList:"UserId" type:"list"` // The value of the attribute being modified. This is only valid when modifying // the description attribute. Value *string `type:"string"` } // String returns the string representation func (s ModifyImageAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyImageAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyImageAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyImageAttributeInput"} if s.ImageId == nil { invalidParams.Add(request.NewErrParamRequired("ImageId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyImageAttributeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ModifyImageAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyImageAttributeOutput) GoString() string { return s.String() } // Contains the parameters for ModifyInstanceAttribute. type ModifyInstanceAttributeInput struct { _ struct{} `type:"structure"` // The name of the attribute. Attribute *string `locationName:"attribute" type:"string" enum:"InstanceAttributeName"` // Modifies the DeleteOnTermination attribute for volumes that are currently // attached. The volume must be owned by the caller. If no value is specified // for DeleteOnTermination, the default is true and the volume is deleted when // the instance is terminated. // // To add instance store volumes to an Amazon EBS-backed instance, you must // add them when you launch the instance. For more information, see Updating // the Block Device Mapping when Launching an Instance (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-device-mapping-concepts.html#Using_OverridingAMIBDM) // in the Amazon Elastic Compute Cloud User Guide. BlockDeviceMappings []*InstanceBlockDeviceMappingSpecification `locationName:"blockDeviceMapping" locationNameList:"item" type:"list"` // If the value is true, you can't terminate the instance using the Amazon EC2 // console, CLI, or API; otherwise, you can. You cannot use this paramater for // Spot Instances. DisableApiTermination *AttributeBooleanValue `locationName:"disableApiTermination" type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // Specifies whether the instance is optimized for EBS I/O. This optimization // provides dedicated throughput to Amazon EBS and an optimized configuration // stack to provide optimal EBS I/O performance. This optimization isn't available // with all instance types. Additional usage charges apply when using an EBS // Optimized instance. EbsOptimized *AttributeBooleanValue `locationName:"ebsOptimized" type:"structure"` // Set to true to enable enhanced networking with ENA for the instance. // // This option is supported only for HVM instances. Specifying this option with // a PV instance can make it unreachable. EnaSupport *AttributeBooleanValue `locationName:"enaSupport" type:"structure"` // [EC2-VPC] Changes the security groups of the instance. You must specify at // least one security group, even if it's just the default security group for // the VPC. You must specify the security group ID, not the security group name. Groups []*string `locationName:"GroupId" locationNameList:"groupId" type:"list"` // The ID of the instance. // // InstanceId is a required field InstanceId *string `locationName:"instanceId" type:"string" required:"true"` // Specifies whether an instance stops or terminates when you initiate shutdown // from the instance (using the operating system command for system shutdown). InstanceInitiatedShutdownBehavior *AttributeValue `locationName:"instanceInitiatedShutdownBehavior" type:"structure"` // Changes the instance type to the specified value. For more information, see // Instance Types (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html). // If the instance type is not valid, the error returned is InvalidInstanceAttributeValue. InstanceType *AttributeValue `locationName:"instanceType" type:"structure"` // Changes the instance's kernel to the specified value. We recommend that you // use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedKernels.html). Kernel *AttributeValue `locationName:"kernel" type:"structure"` // Changes the instance's RAM disk to the specified value. We recommend that // you use PV-GRUB instead of kernels and RAM disks. For more information, see // PV-GRUB (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedKernels.html). Ramdisk *AttributeValue `locationName:"ramdisk" type:"structure"` // Specifies whether source/destination checking is enabled. A value of true // means that checking is enabled, and false means checking is disabled. This // value must be false for a NAT instance to perform NAT. SourceDestCheck *AttributeBooleanValue `type:"structure"` // Set to simple to enable enhanced networking with the Intel 82599 Virtual // Function interface for the instance. // // There is no way to disable enhanced networking with the Intel 82599 Virtual // Function interface at this time. // // This option is supported only for HVM instances. Specifying this option with // a PV instance can make it unreachable. SriovNetSupport *AttributeValue `locationName:"sriovNetSupport" type:"structure"` // Changes the instance's user data to the specified value. If you are using // an AWS SDK or command line tool, Base64-encoding is performed for you, and // you can load the text from a file. Otherwise, you must provide Base64-encoded // text. UserData *BlobAttributeValue `locationName:"userData" type:"structure"` // A new value for the attribute. Use only with the kernel, ramdisk, userData, // disableApiTermination, or instanceInitiatedShutdownBehavior attribute. Value *string `locationName:"value" type:"string"` } // String returns the string representation func (s ModifyInstanceAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyInstanceAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyInstanceAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyInstanceAttributeInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyInstanceAttributeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ModifyInstanceAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyInstanceAttributeOutput) GoString() string { return s.String() } // Contains the parameters for ModifyInstancePlacement. type ModifyInstancePlacementInput struct { _ struct{} `type:"structure"` // The new affinity setting for the instance. Affinity *string `locationName:"affinity" type:"string" enum:"Affinity"` // The ID of the Dedicated Host that the instance will have affinity with. HostId *string `locationName:"hostId" type:"string"` // The ID of the instance that you are modifying. // // InstanceId is a required field InstanceId *string `locationName:"instanceId" type:"string" required:"true"` // The tenancy of the instance that you are modifying. Tenancy *string `locationName:"tenancy" type:"string" enum:"HostTenancy"` } // String returns the string representation func (s ModifyInstancePlacementInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyInstancePlacementInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyInstancePlacementInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyInstancePlacementInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ModifyInstancePlacement. type ModifyInstancePlacementOutput struct { _ struct{} `type:"structure"` // Is true if the request succeeds, and an error otherwise. Return *bool `locationName:"return" type:"boolean"` } // String returns the string representation func (s ModifyInstancePlacementOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyInstancePlacementOutput) GoString() string { return s.String() } // Contains the parameters for ModifyNetworkInterfaceAttribute. type ModifyNetworkInterfaceAttributeInput struct { _ struct{} `type:"structure"` // Information about the interface attachment. If modifying the 'delete on termination' // attribute, you must specify the ID of the interface attachment. Attachment *NetworkInterfaceAttachmentChanges `locationName:"attachment" type:"structure"` // A description for the network interface. Description *AttributeValue `locationName:"description" type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // Changes the security groups for the network interface. The new set of groups // you specify replaces the current set. You must specify at least one group, // even if it's just the default security group in the VPC. You must specify // the ID of the security group, not the name. Groups []*string `locationName:"SecurityGroupId" locationNameList:"SecurityGroupId" type:"list"` // The ID of the network interface. // // NetworkInterfaceId is a required field NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string" required:"true"` // Indicates whether source/destination checking is enabled. A value of true // means checking is enabled, and false means checking is disabled. This value // must be false for a NAT instance to perform NAT. For more information, see // NAT Instances (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_NAT_Instance.html) // in the Amazon Virtual Private Cloud User Guide. SourceDestCheck *AttributeBooleanValue `locationName:"sourceDestCheck" type:"structure"` } // String returns the string representation func (s ModifyNetworkInterfaceAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyNetworkInterfaceAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyNetworkInterfaceAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyNetworkInterfaceAttributeInput"} if s.NetworkInterfaceId == nil { invalidParams.Add(request.NewErrParamRequired("NetworkInterfaceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyNetworkInterfaceAttributeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ModifyNetworkInterfaceAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyNetworkInterfaceAttributeOutput) GoString() string { return s.String() } // Contains the parameters for ModifyReservedInstances. type ModifyReservedInstancesInput struct { _ struct{} `type:"structure"` // A unique, case-sensitive token you provide to ensure idempotency of your // modification request. For more information, see Ensuring Idempotency (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). ClientToken *string `locationName:"clientToken" type:"string"` // The IDs of the Reserved Instances to modify. // // ReservedInstancesIds is a required field ReservedInstancesIds []*string `locationName:"ReservedInstancesId" locationNameList:"ReservedInstancesId" type:"list" required:"true"` // The configuration settings for the Reserved Instances to modify. // // TargetConfigurations is a required field TargetConfigurations []*ReservedInstancesConfiguration `locationName:"ReservedInstancesConfigurationSetItemType" locationNameList:"item" type:"list" required:"true"` } // String returns the string representation func (s ModifyReservedInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyReservedInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyReservedInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyReservedInstancesInput"} if s.ReservedInstancesIds == nil { invalidParams.Add(request.NewErrParamRequired("ReservedInstancesIds")) } if s.TargetConfigurations == nil { invalidParams.Add(request.NewErrParamRequired("TargetConfigurations")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ModifyReservedInstances. type ModifyReservedInstancesOutput struct { _ struct{} `type:"structure"` // The ID for the modification. ReservedInstancesModificationId *string `locationName:"reservedInstancesModificationId" type:"string"` } // String returns the string representation func (s ModifyReservedInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyReservedInstancesOutput) GoString() string { return s.String() } // Contains the parameters for ModifySnapshotAttribute. type ModifySnapshotAttributeInput struct { _ struct{} `type:"structure"` // The snapshot attribute to modify. // // Only volume creation permissions may be modified at the customer level. Attribute *string `type:"string" enum:"SnapshotAttributeName"` // A JSON representation of the snapshot attribute modification. CreateVolumePermission *CreateVolumePermissionModifications `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The group to modify for the snapshot. GroupNames []*string `locationName:"UserGroup" locationNameList:"GroupName" type:"list"` // The type of operation to perform to the attribute. OperationType *string `type:"string" enum:"OperationType"` // The ID of the snapshot. // // SnapshotId is a required field SnapshotId *string `type:"string" required:"true"` // The account ID to modify for the snapshot. UserIds []*string `locationName:"UserId" locationNameList:"UserId" type:"list"` } // String returns the string representation func (s ModifySnapshotAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifySnapshotAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifySnapshotAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifySnapshotAttributeInput"} if s.SnapshotId == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifySnapshotAttributeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ModifySnapshotAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifySnapshotAttributeOutput) GoString() string { return s.String() } // Contains the parameters for ModifySpotFleetRequest. type ModifySpotFleetRequestInput struct { _ struct{} `type:"structure"` // Indicates whether running Spot instances should be terminated if the target // capacity of the Spot fleet request is decreased below the current size of // the Spot fleet. ExcessCapacityTerminationPolicy *string `locationName:"excessCapacityTerminationPolicy" type:"string" enum:"ExcessCapacityTerminationPolicy"` // The ID of the Spot fleet request. // // SpotFleetRequestId is a required field SpotFleetRequestId *string `locationName:"spotFleetRequestId" type:"string" required:"true"` // The size of the fleet. TargetCapacity *int64 `locationName:"targetCapacity" type:"integer"` } // String returns the string representation func (s ModifySpotFleetRequestInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifySpotFleetRequestInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifySpotFleetRequestInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifySpotFleetRequestInput"} if s.SpotFleetRequestId == nil { invalidParams.Add(request.NewErrParamRequired("SpotFleetRequestId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ModifySpotFleetRequest. type ModifySpotFleetRequestOutput struct { _ struct{} `type:"structure"` // Is true if the request succeeds, and an error otherwise. Return *bool `locationName:"return" type:"boolean"` } // String returns the string representation func (s ModifySpotFleetRequestOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifySpotFleetRequestOutput) GoString() string { return s.String() } // Contains the parameters for ModifySubnetAttribute. type ModifySubnetAttributeInput struct { _ struct{} `type:"structure"` // Specify true to indicate that instances launched into the specified subnet // should be assigned public IP address. MapPublicIpOnLaunch *AttributeBooleanValue `type:"structure"` // The ID of the subnet. // // SubnetId is a required field SubnetId *string `locationName:"subnetId" type:"string" required:"true"` } // String returns the string representation func (s ModifySubnetAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifySubnetAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifySubnetAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifySubnetAttributeInput"} if s.SubnetId == nil { invalidParams.Add(request.NewErrParamRequired("SubnetId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifySubnetAttributeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ModifySubnetAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifySubnetAttributeOutput) GoString() string { return s.String() } // Contains the parameters for ModifyVolumeAttribute. type ModifyVolumeAttributeInput struct { _ struct{} `type:"structure"` // Indicates whether the volume should be auto-enabled for I/O operations. AutoEnableIO *AttributeBooleanValue `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the volume. // // VolumeId is a required field VolumeId *string `type:"string" required:"true"` } // String returns the string representation func (s ModifyVolumeAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyVolumeAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyVolumeAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyVolumeAttributeInput"} if s.VolumeId == nil { invalidParams.Add(request.NewErrParamRequired("VolumeId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyVolumeAttributeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ModifyVolumeAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyVolumeAttributeOutput) GoString() string { return s.String() } // Contains the parameters for ModifyVpcAttribute. type ModifyVpcAttributeInput struct { _ struct{} `type:"structure"` // Indicates whether the instances launched in the VPC get DNS hostnames. If // enabled, instances in the VPC get DNS hostnames; otherwise, they do not. // // You cannot modify the DNS resolution and DNS hostnames attributes in the // same request. Use separate requests for each attribute. You can only enable // DNS hostnames if you've enabled DNS support. EnableDnsHostnames *AttributeBooleanValue `type:"structure"` // Indicates whether the DNS resolution is supported for the VPC. If enabled, // queries to the Amazon provided DNS server at the 169.254.169.253 IP address, // or the reserved IP address at the base of the VPC network range "plus two" // will succeed. If disabled, the Amazon provided DNS service in the VPC that // resolves public DNS hostnames to IP addresses is not enabled. // // You cannot modify the DNS resolution and DNS hostnames attributes in the // same request. Use separate requests for each attribute. EnableDnsSupport *AttributeBooleanValue `type:"structure"` // The ID of the VPC. // // VpcId is a required field VpcId *string `locationName:"vpcId" type:"string" required:"true"` } // String returns the string representation func (s ModifyVpcAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyVpcAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyVpcAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyVpcAttributeInput"} if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyVpcAttributeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ModifyVpcAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyVpcAttributeOutput) GoString() string { return s.String() } // Contains the parameters for ModifyVpcEndpoint. type ModifyVpcEndpointInput struct { _ struct{} `type:"structure"` // One or more route tables IDs to associate with the endpoint. AddRouteTableIds []*string `locationName:"AddRouteTableId" locationNameList:"item" type:"list"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // A policy document to attach to the endpoint. The policy must be in valid // JSON format. PolicyDocument *string `type:"string"` // One or more route table IDs to disassociate from the endpoint. RemoveRouteTableIds []*string `locationName:"RemoveRouteTableId" locationNameList:"item" type:"list"` // Specify true to reset the policy document to the default policy. The default // policy allows access to the service. ResetPolicy *bool `type:"boolean"` // The ID of the endpoint. // // VpcEndpointId is a required field VpcEndpointId *string `type:"string" required:"true"` } // String returns the string representation func (s ModifyVpcEndpointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyVpcEndpointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyVpcEndpointInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyVpcEndpointInput"} if s.VpcEndpointId == nil { invalidParams.Add(request.NewErrParamRequired("VpcEndpointId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ModifyVpcEndpoint. type ModifyVpcEndpointOutput struct { _ struct{} `type:"structure"` // Returns true if the request succeeds; otherwise, it returns an error. Return *bool `locationName:"return" type:"boolean"` } // String returns the string representation func (s ModifyVpcEndpointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyVpcEndpointOutput) GoString() string { return s.String() } type ModifyVpcPeeringConnectionOptionsInput struct { _ struct{} `type:"structure"` // The VPC peering connection options for the accepter VPC. AccepterPeeringConnectionOptions *PeeringConnectionOptionsRequest `type:"structure"` // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // The VPC peering connection options for the requester VPC. RequesterPeeringConnectionOptions *PeeringConnectionOptionsRequest `type:"structure"` // The ID of the VPC peering connection. // // VpcPeeringConnectionId is a required field VpcPeeringConnectionId *string `type:"string" required:"true"` } // String returns the string representation func (s ModifyVpcPeeringConnectionOptionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyVpcPeeringConnectionOptionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyVpcPeeringConnectionOptionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyVpcPeeringConnectionOptionsInput"} if s.VpcPeeringConnectionId == nil { invalidParams.Add(request.NewErrParamRequired("VpcPeeringConnectionId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyVpcPeeringConnectionOptionsOutput struct { _ struct{} `type:"structure"` // Information about the VPC peering connection options for the accepter VPC. AccepterPeeringConnectionOptions *PeeringConnectionOptions `locationName:"accepterPeeringConnectionOptions" type:"structure"` // Information about the VPC peering connection options for the requester VPC. RequesterPeeringConnectionOptions *PeeringConnectionOptions `locationName:"requesterPeeringConnectionOptions" type:"structure"` } // String returns the string representation func (s ModifyVpcPeeringConnectionOptionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyVpcPeeringConnectionOptionsOutput) GoString() string { return s.String() } // Contains the parameters for MonitorInstances. type MonitorInstancesInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more instance IDs. // // InstanceIds is a required field InstanceIds []*string `locationName:"InstanceId" locationNameList:"InstanceId" type:"list" required:"true"` } // String returns the string representation func (s MonitorInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MonitorInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MonitorInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MonitorInstancesInput"} if s.InstanceIds == nil { invalidParams.Add(request.NewErrParamRequired("InstanceIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of MonitorInstances. type MonitorInstancesOutput struct { _ struct{} `type:"structure"` // Monitoring information for one or more instances. InstanceMonitorings []*InstanceMonitoring `locationName:"instancesSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s MonitorInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MonitorInstancesOutput) GoString() string { return s.String() } // Describes the monitoring for the instance. type Monitoring struct { _ struct{} `type:"structure"` // Indicates whether monitoring is enabled for the instance. State *string `locationName:"state" type:"string" enum:"MonitoringState"` } // String returns the string representation func (s Monitoring) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Monitoring) GoString() string { return s.String() } // Contains the parameters for MoveAddressToVpc. type MoveAddressToVpcInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The Elastic IP address. // // PublicIp is a required field PublicIp *string `locationName:"publicIp" type:"string" required:"true"` } // String returns the string representation func (s MoveAddressToVpcInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MoveAddressToVpcInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MoveAddressToVpcInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MoveAddressToVpcInput"} if s.PublicIp == nil { invalidParams.Add(request.NewErrParamRequired("PublicIp")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of MoveAddressToVpc. type MoveAddressToVpcOutput struct { _ struct{} `type:"structure"` // The allocation ID for the Elastic IP address. AllocationId *string `locationName:"allocationId" type:"string"` // The status of the move of the IP address. Status *string `locationName:"status" type:"string" enum:"Status"` } // String returns the string representation func (s MoveAddressToVpcOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MoveAddressToVpcOutput) GoString() string { return s.String() } // Describes the status of a moving Elastic IP address. type MovingAddressStatus struct { _ struct{} `type:"structure"` // The status of the Elastic IP address that's being moved to the EC2-VPC platform, // or restored to the EC2-Classic platform. MoveStatus *string `locationName:"moveStatus" type:"string" enum:"MoveStatus"` // The Elastic IP address. PublicIp *string `locationName:"publicIp" type:"string"` } // String returns the string representation func (s MovingAddressStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MovingAddressStatus) GoString() string { return s.String() } // Describes a NAT gateway. type NatGateway struct { _ struct{} `type:"structure"` // The date and time the NAT gateway was created. CreateTime *time.Time `locationName:"createTime" type:"timestamp" timestampFormat:"iso8601"` // The date and time the NAT gateway was deleted, if applicable. DeleteTime *time.Time `locationName:"deleteTime" type:"timestamp" timestampFormat:"iso8601"` // If the NAT gateway could not be created, specifies the error code for the // failure. (InsufficientFreeAddressesInSubnet | Gateway.NotAttached | InvalidAllocationID.NotFound // | Resource.AlreadyAssociated | InternalError | InvalidSubnetID.NotFound) FailureCode *string `locationName:"failureCode" type:"string"` // If the NAT gateway could not be created, specifies the error message for // the failure, that corresponds to the error code. // // * For InsufficientFreeAddressesInSubnet: "Subnet has insufficient free // addresses to create this NAT gateway" // // * For Gateway.NotAttached: "Network vpc-xxxxxxxx has no Internet gateway // attached" // // * For InvalidAllocationID.NotFound: "Elastic IP address eipalloc-xxxxxxxx // could not be associated with this NAT gateway" // // * For Resource.AlreadyAssociated: "Elastic IP address eipalloc-xxxxxxxx // is already associated" // // * For InternalError: "Network interface eni-xxxxxxxx, created and used // internally by this NAT gateway is in an invalid state. Please try again." // // * For InvalidSubnetID.NotFound: "The specified subnet subnet-xxxxxxxx // does not exist or could not be found." FailureMessage *string `locationName:"failureMessage" type:"string"` // Information about the IP addresses and network interface associated with // the NAT gateway. NatGatewayAddresses []*NatGatewayAddress `locationName:"natGatewayAddressSet" locationNameList:"item" type:"list"` // The ID of the NAT gateway. NatGatewayId *string `locationName:"natGatewayId" type:"string"` // Reserved. If you need to sustain traffic greater than the documented limits // (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-nat-gateway.html), // contact us through the Support Center (https://console.aws.amazon.com/support/home?). ProvisionedBandwidth *ProvisionedBandwidth `locationName:"provisionedBandwidth" type:"structure"` // The state of the NAT gateway. // // * pending: The NAT gateway is being created and is not ready to process // traffic. // // * failed: The NAT gateway could not be created. Check the failureCode // and failureMessage fields for the reason. // // * available: The NAT gateway is able to process traffic. This status remains // until you delete the NAT gateway, and does not indicate the health of // the NAT gateway. // // * deleting: The NAT gateway is in the process of being terminated and // may still be processing traffic. // // * deleted: The NAT gateway has been terminated and is no longer processing // traffic. State *string `locationName:"state" type:"string" enum:"NatGatewayState"` // The ID of the subnet in which the NAT gateway is located. SubnetId *string `locationName:"subnetId" type:"string"` // The ID of the VPC in which the NAT gateway is located. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s NatGateway) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NatGateway) GoString() string { return s.String() } // Describes the IP addresses and network interface associated with a NAT gateway. type NatGatewayAddress struct { _ struct{} `type:"structure"` // The allocation ID of the Elastic IP address that's associated with the NAT // gateway. AllocationId *string `locationName:"allocationId" type:"string"` // The ID of the network interface associated with the NAT gateway. NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string"` // The private IP address associated with the Elastic IP address. PrivateIp *string `locationName:"privateIp" type:"string"` // The Elastic IP address associated with the NAT gateway. PublicIp *string `locationName:"publicIp" type:"string"` } // String returns the string representation func (s NatGatewayAddress) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NatGatewayAddress) GoString() string { return s.String() } // Describes a network ACL. type NetworkAcl struct { _ struct{} `type:"structure"` // Any associations between the network ACL and one or more subnets Associations []*NetworkAclAssociation `locationName:"associationSet" locationNameList:"item" type:"list"` // One or more entries (rules) in the network ACL. Entries []*NetworkAclEntry `locationName:"entrySet" locationNameList:"item" type:"list"` // Indicates whether this is the default network ACL for the VPC. IsDefault *bool `locationName:"default" type:"boolean"` // The ID of the network ACL. NetworkAclId *string `locationName:"networkAclId" type:"string"` // Any tags assigned to the network ACL. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // The ID of the VPC for the network ACL. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s NetworkAcl) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NetworkAcl) GoString() string { return s.String() } // Describes an association between a network ACL and a subnet. type NetworkAclAssociation struct { _ struct{} `type:"structure"` // The ID of the association between a network ACL and a subnet. NetworkAclAssociationId *string `locationName:"networkAclAssociationId" type:"string"` // The ID of the network ACL. NetworkAclId *string `locationName:"networkAclId" type:"string"` // The ID of the subnet. SubnetId *string `locationName:"subnetId" type:"string"` } // String returns the string representation func (s NetworkAclAssociation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NetworkAclAssociation) GoString() string { return s.String() } // Describes an entry in a network ACL. type NetworkAclEntry struct { _ struct{} `type:"structure"` // The network range to allow or deny, in CIDR notation. CidrBlock *string `locationName:"cidrBlock" type:"string"` // Indicates whether the rule is an egress rule (applied to traffic leaving // the subnet). Egress *bool `locationName:"egress" type:"boolean"` // ICMP protocol: The ICMP type and code. IcmpTypeCode *IcmpTypeCode `locationName:"icmpTypeCode" type:"structure"` // TCP or UDP protocols: The range of ports the rule applies to. PortRange *PortRange `locationName:"portRange" type:"structure"` // The protocol. A value of -1 means all protocols. Protocol *string `locationName:"protocol" type:"string"` // Indicates whether to allow or deny the traffic that matches the rule. RuleAction *string `locationName:"ruleAction" type:"string" enum:"RuleAction"` // The rule number for the entry. ACL entries are processed in ascending order // by rule number. RuleNumber *int64 `locationName:"ruleNumber" type:"integer"` } // String returns the string representation func (s NetworkAclEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NetworkAclEntry) GoString() string { return s.String() } // Describes a network interface. type NetworkInterface struct { _ struct{} `type:"structure"` // The association information for an Elastic IP associated with the network // interface. Association *NetworkInterfaceAssociation `locationName:"association" type:"structure"` // The network interface attachment. Attachment *NetworkInterfaceAttachment `locationName:"attachment" type:"structure"` // The Availability Zone. AvailabilityZone *string `locationName:"availabilityZone" type:"string"` // A description. Description *string `locationName:"description" type:"string"` // Any security groups for the network interface. Groups []*GroupIdentifier `locationName:"groupSet" locationNameList:"item" type:"list"` // The type of interface. InterfaceType *string `locationName:"interfaceType" type:"string" enum:"NetworkInterfaceType"` // The MAC address. MacAddress *string `locationName:"macAddress" type:"string"` // The ID of the network interface. NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string"` // The AWS account ID of the owner of the network interface. OwnerId *string `locationName:"ownerId" type:"string"` // The private DNS name. PrivateDnsName *string `locationName:"privateDnsName" type:"string"` // The IP address of the network interface within the subnet. PrivateIpAddress *string `locationName:"privateIpAddress" type:"string"` // The private IP addresses associated with the network interface. PrivateIpAddresses []*NetworkInterfacePrivateIpAddress `locationName:"privateIpAddressesSet" locationNameList:"item" type:"list"` // The ID of the entity that launched the instance on your behalf (for example, // AWS Management Console or Auto Scaling). RequesterId *string `locationName:"requesterId" type:"string"` // Indicates whether the network interface is being managed by AWS. RequesterManaged *bool `locationName:"requesterManaged" type:"boolean"` // Indicates whether traffic to or from the instance is validated. SourceDestCheck *bool `locationName:"sourceDestCheck" type:"boolean"` // The status of the network interface. Status *string `locationName:"status" type:"string" enum:"NetworkInterfaceStatus"` // The ID of the subnet. SubnetId *string `locationName:"subnetId" type:"string"` // Any tags assigned to the network interface. TagSet []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // The ID of the VPC. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s NetworkInterface) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NetworkInterface) GoString() string { return s.String() } // Describes association information for an Elastic IP address. type NetworkInterfaceAssociation struct { _ struct{} `type:"structure"` // The allocation ID. AllocationId *string `locationName:"allocationId" type:"string"` // The association ID. AssociationId *string `locationName:"associationId" type:"string"` // The ID of the Elastic IP address owner. IpOwnerId *string `locationName:"ipOwnerId" type:"string"` // The public DNS name. PublicDnsName *string `locationName:"publicDnsName" type:"string"` // The address of the Elastic IP address bound to the network interface. PublicIp *string `locationName:"publicIp" type:"string"` } // String returns the string representation func (s NetworkInterfaceAssociation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NetworkInterfaceAssociation) GoString() string { return s.String() } // Describes a network interface attachment. type NetworkInterfaceAttachment struct { _ struct{} `type:"structure"` // The timestamp indicating when the attachment initiated. AttachTime *time.Time `locationName:"attachTime" type:"timestamp" timestampFormat:"iso8601"` // The ID of the network interface attachment. AttachmentId *string `locationName:"attachmentId" type:"string"` // Indicates whether the network interface is deleted when the instance is terminated. DeleteOnTermination *bool `locationName:"deleteOnTermination" type:"boolean"` // The device index of the network interface attachment on the instance. DeviceIndex *int64 `locationName:"deviceIndex" type:"integer"` // The ID of the instance. InstanceId *string `locationName:"instanceId" type:"string"` // The AWS account ID of the owner of the instance. InstanceOwnerId *string `locationName:"instanceOwnerId" type:"string"` // The attachment state. Status *string `locationName:"status" type:"string" enum:"AttachmentStatus"` } // String returns the string representation func (s NetworkInterfaceAttachment) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NetworkInterfaceAttachment) GoString() string { return s.String() } // Describes an attachment change. type NetworkInterfaceAttachmentChanges struct { _ struct{} `type:"structure"` // The ID of the network interface attachment. AttachmentId *string `locationName:"attachmentId" type:"string"` // Indicates whether the network interface is deleted when the instance is terminated. DeleteOnTermination *bool `locationName:"deleteOnTermination" type:"boolean"` } // String returns the string representation func (s NetworkInterfaceAttachmentChanges) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NetworkInterfaceAttachmentChanges) GoString() string { return s.String() } // Describes the private IP address of a network interface. type NetworkInterfacePrivateIpAddress struct { _ struct{} `type:"structure"` // The association information for an Elastic IP address associated with the // network interface. Association *NetworkInterfaceAssociation `locationName:"association" type:"structure"` // Indicates whether this IP address is the primary private IP address of the // network interface. Primary *bool `locationName:"primary" type:"boolean"` // The private DNS name. PrivateDnsName *string `locationName:"privateDnsName" type:"string"` // The private IP address. PrivateIpAddress *string `locationName:"privateIpAddress" type:"string"` } // String returns the string representation func (s NetworkInterfacePrivateIpAddress) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NetworkInterfacePrivateIpAddress) GoString() string { return s.String() } type NewDhcpConfiguration struct { _ struct{} `type:"structure"` Key *string `locationName:"key" type:"string"` Values []*string `locationName:"Value" locationNameList:"item" type:"list"` } // String returns the string representation func (s NewDhcpConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NewDhcpConfiguration) GoString() string { return s.String() } // Describes the VPC peering connection options. type PeeringConnectionOptions struct { _ struct{} `type:"structure"` // If true, enables a local VPC to resolve public DNS hostnames to private IP // addresses when queried from instances in the peer VPC. AllowDnsResolutionFromRemoteVpc *bool `locationName:"allowDnsResolutionFromRemoteVpc" type:"boolean"` // If true, enables outbound communication from an EC2-Classic instance that's // linked to a local VPC via ClassicLink to instances in a peer VPC. AllowEgressFromLocalClassicLinkToRemoteVpc *bool `locationName:"allowEgressFromLocalClassicLinkToRemoteVpc" type:"boolean"` // If true, enables outbound communication from instances in a local VPC to // an EC2-Classic instance that's linked to a peer VPC via ClassicLink. AllowEgressFromLocalVpcToRemoteClassicLink *bool `locationName:"allowEgressFromLocalVpcToRemoteClassicLink" type:"boolean"` } // String returns the string representation func (s PeeringConnectionOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PeeringConnectionOptions) GoString() string { return s.String() } // The VPC peering connection options. type PeeringConnectionOptionsRequest struct { _ struct{} `type:"structure"` // If true, enables a local VPC to resolve public DNS hostnames to private IP // addresses when queried from instances in the peer VPC. AllowDnsResolutionFromRemoteVpc *bool `type:"boolean"` // If true, enables outbound communication from an EC2-Classic instance that's // linked to a local VPC via ClassicLink to instances in a peer VPC. AllowEgressFromLocalClassicLinkToRemoteVpc *bool `type:"boolean"` // If true, enables outbound communication from instances in a local VPC to // an EC2-Classic instance that's linked to a peer VPC via ClassicLink. AllowEgressFromLocalVpcToRemoteClassicLink *bool `type:"boolean"` } // String returns the string representation func (s PeeringConnectionOptionsRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PeeringConnectionOptionsRequest) GoString() string { return s.String() } // Describes the placement for the instance. type Placement struct { _ struct{} `type:"structure"` // The affinity setting for the instance on the Dedicated Host. This parameter // is not supported for the ImportInstance command. Affinity *string `locationName:"affinity" type:"string"` // The Availability Zone of the instance. AvailabilityZone *string `locationName:"availabilityZone" type:"string"` // The name of the placement group the instance is in (for cluster compute instances). GroupName *string `locationName:"groupName" type:"string"` // The ID of the Dedicted host on which the instance resides. This parameter // is not support for the ImportInstance command. HostId *string `locationName:"hostId" type:"string"` // The tenancy of the instance (if the instance is running in a VPC). An instance // with a tenancy of dedicated runs on single-tenant hardware. The host tenancy // is not supported for the ImportInstance command. Tenancy *string `locationName:"tenancy" type:"string" enum:"Tenancy"` } // String returns the string representation func (s Placement) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Placement) GoString() string { return s.String() } // Describes a placement group. type PlacementGroup struct { _ struct{} `type:"structure"` // The name of the placement group. GroupName *string `locationName:"groupName" type:"string"` // The state of the placement group. State *string `locationName:"state" type:"string" enum:"PlacementGroupState"` // The placement strategy. Strategy *string `locationName:"strategy" type:"string" enum:"PlacementStrategy"` } // String returns the string representation func (s PlacementGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PlacementGroup) GoString() string { return s.String() } // Describes a range of ports. type PortRange struct { _ struct{} `type:"structure"` // The first port in the range. From *int64 `locationName:"from" type:"integer"` // The last port in the range. To *int64 `locationName:"to" type:"integer"` } // String returns the string representation func (s PortRange) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PortRange) GoString() string { return s.String() } // Describes prefixes for AWS services. type PrefixList struct { _ struct{} `type:"structure"` // The IP address range of the AWS service. Cidrs []*string `locationName:"cidrSet" locationNameList:"item" type:"list"` // The ID of the prefix. PrefixListId *string `locationName:"prefixListId" type:"string"` // The name of the prefix. PrefixListName *string `locationName:"prefixListName" type:"string"` } // String returns the string representation func (s PrefixList) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PrefixList) GoString() string { return s.String() } // The ID of the prefix. type PrefixListId struct { _ struct{} `type:"structure"` // The ID of the prefix. PrefixListId *string `locationName:"prefixListId" type:"string"` } // String returns the string representation func (s PrefixListId) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PrefixListId) GoString() string { return s.String() } // Describes the price for a Reserved Instance. type PriceSchedule struct { _ struct{} `type:"structure"` // The current price schedule, as determined by the term remaining for the Reserved // Instance in the listing. // // A specific price schedule is always in effect, but only one price schedule // can be active at any time. Take, for example, a Reserved Instance listing // that has five months remaining in its term. When you specify price schedules // for five months and two months, this means that schedule 1, covering the // first three months of the remaining term, will be active during months 5, // 4, and 3. Then schedule 2, covering the last two months of the term, will // be active for months 2 and 1. Active *bool `locationName:"active" type:"boolean"` // The currency for transacting the Reserved Instance resale. At this time, // the only supported currency is USD. CurrencyCode *string `locationName:"currencyCode" type:"string" enum:"CurrencyCodeValues"` // The fixed price for the term. Price *float64 `locationName:"price" type:"double"` // The number of months remaining in the reservation. For example, 2 is the // second to the last month before the capacity reservation expires. Term *int64 `locationName:"term" type:"long"` } // String returns the string representation func (s PriceSchedule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PriceSchedule) GoString() string { return s.String() } // Describes the price for a Reserved Instance. type PriceScheduleSpecification struct { _ struct{} `type:"structure"` // The currency for transacting the Reserved Instance resale. At this time, // the only supported currency is USD. CurrencyCode *string `locationName:"currencyCode" type:"string" enum:"CurrencyCodeValues"` // The fixed price for the term. Price *float64 `locationName:"price" type:"double"` // The number of months remaining in the reservation. For example, 2 is the // second to the last month before the capacity reservation expires. Term *int64 `locationName:"term" type:"long"` } // String returns the string representation func (s PriceScheduleSpecification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PriceScheduleSpecification) GoString() string { return s.String() } // Describes a Reserved Instance offering. type PricingDetail struct { _ struct{} `type:"structure"` // The number of reservations available for the price. Count *int64 `locationName:"count" type:"integer"` // The price per instance. Price *float64 `locationName:"price" type:"double"` } // String returns the string representation func (s PricingDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PricingDetail) GoString() string { return s.String() } // Describes a secondary private IP address for a network interface. type PrivateIpAddressSpecification struct { _ struct{} `type:"structure"` // Indicates whether the private IP address is the primary private IP address. // Only one IP address can be designated as primary. Primary *bool `locationName:"primary" type:"boolean"` // The private IP addresses. // // PrivateIpAddress is a required field PrivateIpAddress *string `locationName:"privateIpAddress" type:"string" required:"true"` } // String returns the string representation func (s PrivateIpAddressSpecification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PrivateIpAddressSpecification) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PrivateIpAddressSpecification) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PrivateIpAddressSpecification"} if s.PrivateIpAddress == nil { invalidParams.Add(request.NewErrParamRequired("PrivateIpAddress")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a product code. type ProductCode struct { _ struct{} `type:"structure"` // The product code. ProductCodeId *string `locationName:"productCode" type:"string"` // The type of product code. ProductCodeType *string `locationName:"type" type:"string" enum:"ProductCodeValues"` } // String returns the string representation func (s ProductCode) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ProductCode) GoString() string { return s.String() } // Describes a virtual private gateway propagating route. type PropagatingVgw struct { _ struct{} `type:"structure"` // The ID of the virtual private gateway (VGW). GatewayId *string `locationName:"gatewayId" type:"string"` } // String returns the string representation func (s PropagatingVgw) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PropagatingVgw) GoString() string { return s.String() } // Reserved. If you need to sustain traffic greater than the documented limits // (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-nat-gateway.html), // contact us through the Support Center (https://console.aws.amazon.com/support/home?). type ProvisionedBandwidth struct { _ struct{} `type:"structure"` // Reserved. If you need to sustain traffic greater than the documented limits // (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-nat-gateway.html), // contact us through the Support Center (https://console.aws.amazon.com/support/home?). ProvisionTime *time.Time `locationName:"provisionTime" type:"timestamp" timestampFormat:"iso8601"` // Reserved. If you need to sustain traffic greater than the documented limits // (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-nat-gateway.html), // contact us through the Support Center (https://console.aws.amazon.com/support/home?). Provisioned *string `locationName:"provisioned" type:"string"` // Reserved. If you need to sustain traffic greater than the documented limits // (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-nat-gateway.html), // contact us through the Support Center (https://console.aws.amazon.com/support/home?). RequestTime *time.Time `locationName:"requestTime" type:"timestamp" timestampFormat:"iso8601"` // Reserved. If you need to sustain traffic greater than the documented limits // (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-nat-gateway.html), // contact us through the Support Center (https://console.aws.amazon.com/support/home?). Requested *string `locationName:"requested" type:"string"` // Reserved. If you need to sustain traffic greater than the documented limits // (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-nat-gateway.html), // contact us through the Support Center (https://console.aws.amazon.com/support/home?). Status *string `locationName:"status" type:"string"` } // String returns the string representation func (s ProvisionedBandwidth) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ProvisionedBandwidth) GoString() string { return s.String() } // Describes the result of the purchase. type Purchase struct { _ struct{} `type:"structure"` // The currency in which the UpfrontPrice and HourlyPrice amounts are specified. // At this time, the only supported currency is USD. CurrencyCode *string `locationName:"currencyCode" type:"string" enum:"CurrencyCodeValues"` // The duration of the reservation's term in seconds. Duration *int64 `locationName:"duration" type:"integer"` // The IDs of the Dedicated Hosts associated with the reservation. HostIdSet []*string `locationName:"hostIdSet" locationNameList:"item" type:"list"` // The ID of the reservation. HostReservationId *string `locationName:"hostReservationId" type:"string"` // The hourly price of the reservation per hour. HourlyPrice *string `locationName:"hourlyPrice" type:"string"` // The instance family on the Dedicated Host that the reservation can be associated // with. InstanceFamily *string `locationName:"instanceFamily" type:"string"` // The payment option for the reservation. PaymentOption *string `locationName:"paymentOption" type:"string" enum:"PaymentOption"` // The upfront price of the reservation. UpfrontPrice *string `locationName:"upfrontPrice" type:"string"` } // String returns the string representation func (s Purchase) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Purchase) GoString() string { return s.String() } type PurchaseHostReservationInput struct { _ struct{} `type:"structure"` // Unique, case-sensitive identifier you provide to ensure idempotency of the // request. For more information, see How to Ensure Idempotency (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html) // in the Amazon Elastic Compute Cloud User Guide. ClientToken *string `type:"string"` // The currency in which the totalUpfrontPrice, LimitPrice, and totalHourlyPrice // amounts are specified. At this time, the only supported currency is USD. CurrencyCode *string `type:"string" enum:"CurrencyCodeValues"` // The ID/s of the Dedicated Host/s that the reservation will be associated // with. // // HostIdSet is a required field HostIdSet []*string `locationNameList:"item" type:"list" required:"true"` // The specified limit is checked against the total upfront cost of the reservation // (calculated as the offering's upfront cost multiplied by the host count). // If the total upfront cost is greater than the specified price limit, the // request will fail. This is used to ensure that the purchase does not exceed // the expected upfront cost of the purchase. At this time, the only supported // currency is USD. For example, to indicate a limit price of USD 100, specify // 100.00. LimitPrice *string `type:"string"` // The ID of the offering. // // OfferingId is a required field OfferingId *string `type:"string" required:"true"` } // String returns the string representation func (s PurchaseHostReservationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PurchaseHostReservationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PurchaseHostReservationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PurchaseHostReservationInput"} if s.HostIdSet == nil { invalidParams.Add(request.NewErrParamRequired("HostIdSet")) } if s.OfferingId == nil { invalidParams.Add(request.NewErrParamRequired("OfferingId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PurchaseHostReservationOutput struct { _ struct{} `type:"structure"` // Unique, case-sensitive identifier you provide to ensure idempotency of the // request. For more information, see How to Ensure Idempotency (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html) // in the Amazon Elastic Compute Cloud User Guide ClientToken *string `locationName:"clientToken" type:"string"` // The currency in which the totalUpfrontPrice and totalHourlyPrice amounts // are specified. At this time, the only supported currency is USD. CurrencyCode *string `locationName:"currencyCode" type:"string" enum:"CurrencyCodeValues"` // Describes the details of the purchase. Purchase []*Purchase `locationName:"purchase" type:"list"` // The total hourly price of the reservation calculated per hour. TotalHourlyPrice *string `locationName:"totalHourlyPrice" type:"string"` // The total amount that will be charged to your account when you purchase the // reservation. TotalUpfrontPrice *string `locationName:"totalUpfrontPrice" type:"string"` } // String returns the string representation func (s PurchaseHostReservationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PurchaseHostReservationOutput) GoString() string { return s.String() } // Describes a request to purchase Scheduled Instances. type PurchaseRequest struct { _ struct{} `type:"structure"` // The number of instances. // // InstanceCount is a required field InstanceCount *int64 `type:"integer" required:"true"` // The purchase token. // // PurchaseToken is a required field PurchaseToken *string `type:"string" required:"true"` } // String returns the string representation func (s PurchaseRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PurchaseRequest) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PurchaseRequest) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PurchaseRequest"} if s.InstanceCount == nil { invalidParams.Add(request.NewErrParamRequired("InstanceCount")) } if s.PurchaseToken == nil { invalidParams.Add(request.NewErrParamRequired("PurchaseToken")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for PurchaseReservedInstancesOffering. type PurchaseReservedInstancesOfferingInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The number of Reserved Instances to purchase. // // InstanceCount is a required field InstanceCount *int64 `type:"integer" required:"true"` // Specified for Reserved Instance Marketplace offerings to limit the total // order and ensure that the Reserved Instances are not purchased at unexpected // prices. LimitPrice *ReservedInstanceLimitPrice `locationName:"limitPrice" type:"structure"` // The ID of the Reserved Instance offering to purchase. // // ReservedInstancesOfferingId is a required field ReservedInstancesOfferingId *string `type:"string" required:"true"` } // String returns the string representation func (s PurchaseReservedInstancesOfferingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PurchaseReservedInstancesOfferingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PurchaseReservedInstancesOfferingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PurchaseReservedInstancesOfferingInput"} if s.InstanceCount == nil { invalidParams.Add(request.NewErrParamRequired("InstanceCount")) } if s.ReservedInstancesOfferingId == nil { invalidParams.Add(request.NewErrParamRequired("ReservedInstancesOfferingId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of PurchaseReservedInstancesOffering. type PurchaseReservedInstancesOfferingOutput struct { _ struct{} `type:"structure"` // The IDs of the purchased Reserved Instances. ReservedInstancesId *string `locationName:"reservedInstancesId" type:"string"` } // String returns the string representation func (s PurchaseReservedInstancesOfferingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PurchaseReservedInstancesOfferingOutput) GoString() string { return s.String() } // Contains the parameters for PurchaseScheduledInstances. type PurchaseScheduledInstancesInput struct { _ struct{} `type:"structure"` // Unique, case-sensitive identifier that ensures the idempotency of the request. // For more information, see Ensuring Idempotency (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). ClientToken *string `type:"string" idempotencyToken:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // One or more purchase requests. // // PurchaseRequests is a required field PurchaseRequests []*PurchaseRequest `locationName:"PurchaseRequest" locationNameList:"PurchaseRequest" min:"1" type:"list" required:"true"` } // String returns the string representation func (s PurchaseScheduledInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PurchaseScheduledInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PurchaseScheduledInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PurchaseScheduledInstancesInput"} if s.PurchaseRequests == nil { invalidParams.Add(request.NewErrParamRequired("PurchaseRequests")) } if s.PurchaseRequests != nil && len(s.PurchaseRequests) < 1 { invalidParams.Add(request.NewErrParamMinLen("PurchaseRequests", 1)) } if s.PurchaseRequests != nil { for i, v := range s.PurchaseRequests { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PurchaseRequests", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of PurchaseScheduledInstances. type PurchaseScheduledInstancesOutput struct { _ struct{} `type:"structure"` // Information about the Scheduled Instances. ScheduledInstanceSet []*ScheduledInstance `locationName:"scheduledInstanceSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s PurchaseScheduledInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PurchaseScheduledInstancesOutput) GoString() string { return s.String() } // Contains the parameters for RebootInstances. type RebootInstancesInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more instance IDs. // // InstanceIds is a required field InstanceIds []*string `locationName:"InstanceId" locationNameList:"InstanceId" type:"list" required:"true"` } // String returns the string representation func (s RebootInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebootInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RebootInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RebootInstancesInput"} if s.InstanceIds == nil { invalidParams.Add(request.NewErrParamRequired("InstanceIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RebootInstancesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RebootInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebootInstancesOutput) GoString() string { return s.String() } // Describes a recurring charge. type RecurringCharge struct { _ struct{} `type:"structure"` // The amount of the recurring charge. Amount *float64 `locationName:"amount" type:"double"` // The frequency of the recurring charge. Frequency *string `locationName:"frequency" type:"string" enum:"RecurringChargeFrequency"` } // String returns the string representation func (s RecurringCharge) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecurringCharge) GoString() string { return s.String() } // Describes a region. type Region struct { _ struct{} `type:"structure"` // The region service endpoint. Endpoint *string `locationName:"regionEndpoint" type:"string"` // The name of the region. RegionName *string `locationName:"regionName" type:"string"` } // String returns the string representation func (s Region) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Region) GoString() string { return s.String() } // Contains the parameters for RegisterImage. type RegisterImageInput struct { _ struct{} `type:"structure"` // The architecture of the AMI. // // Default: For Amazon EBS-backed AMIs, i386. For instance store-backed AMIs, // the architecture specified in the manifest file. Architecture *string `locationName:"architecture" type:"string" enum:"ArchitectureValues"` // One or more block device mapping entries. BlockDeviceMappings []*BlockDeviceMapping `locationName:"BlockDeviceMapping" locationNameList:"BlockDeviceMapping" type:"list"` // A description for your AMI. Description *string `locationName:"description" type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // Set to true to enable enhanced networking with ENA for the AMI and any instances // that you launch from the AMI. // // This option is supported only for HVM AMIs. Specifying this option with a // PV AMI can make instances launched from the AMI unreachable. EnaSupport *bool `locationName:"enaSupport" type:"boolean"` // The full path to your AMI manifest in Amazon S3 storage. ImageLocation *string `type:"string"` // The ID of the kernel. KernelId *string `locationName:"kernelId" type:"string"` // A name for your AMI. // // Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets // ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), // at-signs (@), or underscores(_) // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` // The ID of the RAM disk. RamdiskId *string `locationName:"ramdiskId" type:"string"` // The name of the root device (for example, /dev/sda1, or /dev/xvda). RootDeviceName *string `locationName:"rootDeviceName" type:"string"` // Set to simple to enable enhanced networking with the Intel 82599 Virtual // Function interface for the AMI and any instances that you launch from the // AMI. // // There is no way to disable sriovNetSupport at this time. // // This option is supported only for HVM AMIs. Specifying this option with a // PV AMI can make instances launched from the AMI unreachable. SriovNetSupport *string `locationName:"sriovNetSupport" type:"string"` // The type of virtualization. // // Default: paravirtual VirtualizationType *string `locationName:"virtualizationType" type:"string"` } // String returns the string representation func (s RegisterImageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterImageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterImageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterImageInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of RegisterImage. type RegisterImageOutput struct { _ struct{} `type:"structure"` // The ID of the newly registered AMI. ImageId *string `locationName:"imageId" type:"string"` } // String returns the string representation func (s RegisterImageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterImageOutput) GoString() string { return s.String() } // Contains the parameters for RejectVpcPeeringConnection. type RejectVpcPeeringConnectionInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the VPC peering connection. // // VpcPeeringConnectionId is a required field VpcPeeringConnectionId *string `locationName:"vpcPeeringConnectionId" type:"string" required:"true"` } // String returns the string representation func (s RejectVpcPeeringConnectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RejectVpcPeeringConnectionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RejectVpcPeeringConnectionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RejectVpcPeeringConnectionInput"} if s.VpcPeeringConnectionId == nil { invalidParams.Add(request.NewErrParamRequired("VpcPeeringConnectionId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of RejectVpcPeeringConnection. type RejectVpcPeeringConnectionOutput struct { _ struct{} `type:"structure"` // Returns true if the request succeeds; otherwise, it returns an error. Return *bool `locationName:"return" type:"boolean"` } // String returns the string representation func (s RejectVpcPeeringConnectionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RejectVpcPeeringConnectionOutput) GoString() string { return s.String() } // Contains the parameters for ReleaseAddress. type ReleaseAddressInput struct { _ struct{} `type:"structure"` // [EC2-VPC] The allocation ID. Required for EC2-VPC. AllocationId *string `type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // [EC2-Classic] The Elastic IP address. Required for EC2-Classic. PublicIp *string `type:"string"` } // String returns the string representation func (s ReleaseAddressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReleaseAddressInput) GoString() string { return s.String() } type ReleaseAddressOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ReleaseAddressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReleaseAddressOutput) GoString() string { return s.String() } // Contains the parameters for ReleaseHosts. type ReleaseHostsInput struct { _ struct{} `type:"structure"` // The IDs of the Dedicated Hosts you want to release. // // HostIds is a required field HostIds []*string `locationName:"hostId" locationNameList:"item" type:"list" required:"true"` } // String returns the string representation func (s ReleaseHostsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReleaseHostsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReleaseHostsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReleaseHostsInput"} if s.HostIds == nil { invalidParams.Add(request.NewErrParamRequired("HostIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ReleaseHosts. type ReleaseHostsOutput struct { _ struct{} `type:"structure"` // The IDs of the Dedicated Hosts that were successfully released. Successful []*string `locationName:"successful" locationNameList:"item" type:"list"` // The IDs of the Dedicated Hosts that could not be released, including an error // message. Unsuccessful []*UnsuccessfulItem `locationName:"unsuccessful" locationNameList:"item" type:"list"` } // String returns the string representation func (s ReleaseHostsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReleaseHostsOutput) GoString() string { return s.String() } // Contains the parameters for ReplaceNetworkAclAssociation. type ReplaceNetworkAclAssociationInput struct { _ struct{} `type:"structure"` // The ID of the current association between the original network ACL and the // subnet. // // AssociationId is a required field AssociationId *string `locationName:"associationId" type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the new network ACL to associate with the subnet. // // NetworkAclId is a required field NetworkAclId *string `locationName:"networkAclId" type:"string" required:"true"` } // String returns the string representation func (s ReplaceNetworkAclAssociationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplaceNetworkAclAssociationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReplaceNetworkAclAssociationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReplaceNetworkAclAssociationInput"} if s.AssociationId == nil { invalidParams.Add(request.NewErrParamRequired("AssociationId")) } if s.NetworkAclId == nil { invalidParams.Add(request.NewErrParamRequired("NetworkAclId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ReplaceNetworkAclAssociation. type ReplaceNetworkAclAssociationOutput struct { _ struct{} `type:"structure"` // The ID of the new association. NewAssociationId *string `locationName:"newAssociationId" type:"string"` } // String returns the string representation func (s ReplaceNetworkAclAssociationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplaceNetworkAclAssociationOutput) GoString() string { return s.String() } // Contains the parameters for ReplaceNetworkAclEntry. type ReplaceNetworkAclEntryInput struct { _ struct{} `type:"structure"` // The network range to allow or deny, in CIDR notation. // // CidrBlock is a required field CidrBlock *string `locationName:"cidrBlock" type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // Indicates whether to replace the egress rule. // // Default: If no value is specified, we replace the ingress rule. // // Egress is a required field Egress *bool `locationName:"egress" type:"boolean" required:"true"` // ICMP protocol: The ICMP type and code. Required if specifying 1 (ICMP) for // the protocol. IcmpTypeCode *IcmpTypeCode `locationName:"Icmp" type:"structure"` // The ID of the ACL. // // NetworkAclId is a required field NetworkAclId *string `locationName:"networkAclId" type:"string" required:"true"` // TCP or UDP protocols: The range of ports the rule applies to. Required if // specifying 6 (TCP) or 17 (UDP) for the protocol. PortRange *PortRange `locationName:"portRange" type:"structure"` // The IP protocol. You can specify all or -1 to mean all protocols. // // Protocol is a required field Protocol *string `locationName:"protocol" type:"string" required:"true"` // Indicates whether to allow or deny the traffic that matches the rule. // // RuleAction is a required field RuleAction *string `locationName:"ruleAction" type:"string" required:"true" enum:"RuleAction"` // The rule number of the entry to replace. // // RuleNumber is a required field RuleNumber *int64 `locationName:"ruleNumber" type:"integer" required:"true"` } // String returns the string representation func (s ReplaceNetworkAclEntryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplaceNetworkAclEntryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReplaceNetworkAclEntryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReplaceNetworkAclEntryInput"} if s.CidrBlock == nil { invalidParams.Add(request.NewErrParamRequired("CidrBlock")) } if s.Egress == nil { invalidParams.Add(request.NewErrParamRequired("Egress")) } if s.NetworkAclId == nil { invalidParams.Add(request.NewErrParamRequired("NetworkAclId")) } if s.Protocol == nil { invalidParams.Add(request.NewErrParamRequired("Protocol")) } if s.RuleAction == nil { invalidParams.Add(request.NewErrParamRequired("RuleAction")) } if s.RuleNumber == nil { invalidParams.Add(request.NewErrParamRequired("RuleNumber")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ReplaceNetworkAclEntryOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ReplaceNetworkAclEntryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplaceNetworkAclEntryOutput) GoString() string { return s.String() } // Contains the parameters for ReplaceRoute. type ReplaceRouteInput struct { _ struct{} `type:"structure"` // The CIDR address block used for the destination match. The value you provide // must match the CIDR of an existing route in the table. // // DestinationCidrBlock is a required field DestinationCidrBlock *string `locationName:"destinationCidrBlock" type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of an Internet gateway or virtual private gateway. GatewayId *string `locationName:"gatewayId" type:"string"` // The ID of a NAT instance in your VPC. InstanceId *string `locationName:"instanceId" type:"string"` // The ID of a NAT gateway. NatGatewayId *string `locationName:"natGatewayId" type:"string"` // The ID of a network interface. NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string"` // The ID of the route table. // // RouteTableId is a required field RouteTableId *string `locationName:"routeTableId" type:"string" required:"true"` // The ID of a VPC peering connection. VpcPeeringConnectionId *string `locationName:"vpcPeeringConnectionId" type:"string"` } // String returns the string representation func (s ReplaceRouteInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplaceRouteInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReplaceRouteInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReplaceRouteInput"} if s.DestinationCidrBlock == nil { invalidParams.Add(request.NewErrParamRequired("DestinationCidrBlock")) } if s.RouteTableId == nil { invalidParams.Add(request.NewErrParamRequired("RouteTableId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ReplaceRouteOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ReplaceRouteOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplaceRouteOutput) GoString() string { return s.String() } // Contains the parameters for ReplaceRouteTableAssociation. type ReplaceRouteTableAssociationInput struct { _ struct{} `type:"structure"` // The association ID. // // AssociationId is a required field AssociationId *string `locationName:"associationId" type:"string" required:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the new route table to associate with the subnet. // // RouteTableId is a required field RouteTableId *string `locationName:"routeTableId" type:"string" required:"true"` } // String returns the string representation func (s ReplaceRouteTableAssociationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplaceRouteTableAssociationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReplaceRouteTableAssociationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReplaceRouteTableAssociationInput"} if s.AssociationId == nil { invalidParams.Add(request.NewErrParamRequired("AssociationId")) } if s.RouteTableId == nil { invalidParams.Add(request.NewErrParamRequired("RouteTableId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ReplaceRouteTableAssociation. type ReplaceRouteTableAssociationOutput struct { _ struct{} `type:"structure"` // The ID of the new association. NewAssociationId *string `locationName:"newAssociationId" type:"string"` } // String returns the string representation func (s ReplaceRouteTableAssociationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplaceRouteTableAssociationOutput) GoString() string { return s.String() } // Contains the parameters for ReportInstanceStatus. type ReportInstanceStatusInput struct { _ struct{} `type:"structure"` // Descriptive text about the health state of your instance. Description *string `locationName:"description" type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The time at which the reported instance health state ended. EndTime *time.Time `locationName:"endTime" type:"timestamp" timestampFormat:"iso8601"` // One or more instances. // // Instances is a required field Instances []*string `locationName:"instanceId" locationNameList:"InstanceId" type:"list" required:"true"` // One or more reason codes that describes the health state of your instance. // // * instance-stuck-in-state: My instance is stuck in a state. // // * unresponsive: My instance is unresponsive. // // * not-accepting-credentials: My instance is not accepting my credentials. // // * password-not-available: A password is not available for my instance. // // * performance-network: My instance is experiencing performance problems // which I believe are network related. // // * performance-instance-store: My instance is experiencing performance // problems which I believe are related to the instance stores. // // * performance-ebs-volume: My instance is experiencing performance problems // which I believe are related to an EBS volume. // // * performance-other: My instance is experiencing performance problems. // // * other: [explain using the description parameter] // // ReasonCodes is a required field ReasonCodes []*string `locationName:"reasonCode" locationNameList:"item" type:"list" required:"true"` // The time at which the reported instance health state began. StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"iso8601"` // The status of all instances listed. // // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"ReportStatusType"` } // String returns the string representation func (s ReportInstanceStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReportInstanceStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReportInstanceStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReportInstanceStatusInput"} if s.Instances == nil { invalidParams.Add(request.NewErrParamRequired("Instances")) } if s.ReasonCodes == nil { invalidParams.Add(request.NewErrParamRequired("ReasonCodes")) } if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ReportInstanceStatusOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ReportInstanceStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReportInstanceStatusOutput) GoString() string { return s.String() } // Contains the parameters for RequestSpotFleet. type RequestSpotFleetInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The configuration for the Spot fleet request. // // SpotFleetRequestConfig is a required field SpotFleetRequestConfig *SpotFleetRequestConfigData `locationName:"spotFleetRequestConfig" type:"structure" required:"true"` } // String returns the string representation func (s RequestSpotFleetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestSpotFleetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RequestSpotFleetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RequestSpotFleetInput"} if s.SpotFleetRequestConfig == nil { invalidParams.Add(request.NewErrParamRequired("SpotFleetRequestConfig")) } if s.SpotFleetRequestConfig != nil { if err := s.SpotFleetRequestConfig.Validate(); err != nil { invalidParams.AddNested("SpotFleetRequestConfig", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of RequestSpotFleet. type RequestSpotFleetOutput struct { _ struct{} `type:"structure"` // The ID of the Spot fleet request. // // SpotFleetRequestId is a required field SpotFleetRequestId *string `locationName:"spotFleetRequestId" type:"string" required:"true"` } // String returns the string representation func (s RequestSpotFleetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestSpotFleetOutput) GoString() string { return s.String() } // Contains the parameters for RequestSpotInstances. type RequestSpotInstancesInput struct { _ struct{} `type:"structure"` // The user-specified name for a logical grouping of bids. // // When you specify an Availability Zone group in a Spot Instance request, all // Spot instances in the request are launched in the same Availability Zone. // Instance proximity is maintained with this parameter, but the choice of Availability // Zone is not. The group applies only to bids for Spot Instances of the same // instance type. Any additional Spot instance requests that are specified with // the same Availability Zone group name are launched in that same Availability // Zone, as long as at least one instance from the group is still active. // // If there is no active instance running in the Availability Zone group that // you specify for a new Spot instance request (all instances are terminated, // the bid is expired, or the bid falls below current market), then Amazon EC2 // launches the instance in any Availability Zone where the constraint can be // met. Consequently, the subsequent set of Spot instances could be placed in // a different zone from the original request, even if you specified the same // Availability Zone group. // // Default: Instances are launched in any available Availability Zone. AvailabilityZoneGroup *string `locationName:"availabilityZoneGroup" type:"string"` // The required duration for the Spot instances (also known as Spot blocks), // in minutes. This value must be a multiple of 60 (60, 120, 180, 240, 300, // or 360). // // The duration period starts as soon as your Spot instance receives its instance // ID. At the end of the duration period, Amazon EC2 marks the Spot instance // for termination and provides a Spot instance termination notice, which gives // the instance a two-minute warning before it terminates. // // Note that you can't specify an Availability Zone group or a launch group // if you specify a duration. BlockDurationMinutes *int64 `locationName:"blockDurationMinutes" type:"integer"` // Unique, case-sensitive identifier that you provide to ensure the idempotency // of the request. For more information, see How to Ensure Idempotency (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html) // in the Amazon Elastic Compute Cloud User Guide. ClientToken *string `locationName:"clientToken" type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The maximum number of Spot instances to launch. // // Default: 1 InstanceCount *int64 `locationName:"instanceCount" type:"integer"` // The instance launch group. Launch groups are Spot instances that launch together // and terminate together. // // Default: Instances are launched and terminated individually LaunchGroup *string `locationName:"launchGroup" type:"string"` // Describes the launch specification for an instance. LaunchSpecification *RequestSpotLaunchSpecification `type:"structure"` // The maximum hourly price (bid) for any Spot instance launched to fulfill // the request. // // SpotPrice is a required field SpotPrice *string `locationName:"spotPrice" type:"string" required:"true"` // The Spot instance request type. // // Default: one-time Type *string `locationName:"type" type:"string" enum:"SpotInstanceType"` // The start date of the request. If this is a one-time request, the request // becomes active at this date and time and remains active until all instances // launch, the request expires, or the request is canceled. If the request is // persistent, the request becomes active at this date and time and remains // active until it expires or is canceled. // // Default: The request is effective indefinitely. ValidFrom *time.Time `locationName:"validFrom" type:"timestamp" timestampFormat:"iso8601"` // The end date of the request. If this is a one-time request, the request remains // active until all instances launch, the request is canceled, or this date // is reached. If the request is persistent, it remains active until it is canceled // or this date and time is reached. // // Default: The request is effective indefinitely. ValidUntil *time.Time `locationName:"validUntil" type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s RequestSpotInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestSpotInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RequestSpotInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RequestSpotInstancesInput"} if s.SpotPrice == nil { invalidParams.Add(request.NewErrParamRequired("SpotPrice")) } if s.LaunchSpecification != nil { if err := s.LaunchSpecification.Validate(); err != nil { invalidParams.AddNested("LaunchSpecification", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of RequestSpotInstances. type RequestSpotInstancesOutput struct { _ struct{} `type:"structure"` // One or more Spot instance requests. SpotInstanceRequests []*SpotInstanceRequest `locationName:"spotInstanceRequestSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s RequestSpotInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestSpotInstancesOutput) GoString() string { return s.String() } // Describes the launch specification for an instance. type RequestSpotLaunchSpecification struct { _ struct{} `type:"structure"` // Deprecated. AddressingType *string `locationName:"addressingType" type:"string"` // One or more block device mapping entries. // // Although you can specify encrypted EBS volumes in this block device mapping // for your Spot Instances, these volumes are not encrypted. BlockDeviceMappings []*BlockDeviceMapping `locationName:"blockDeviceMapping" locationNameList:"item" type:"list"` // Indicates whether the instance is optimized for EBS I/O. This optimization // provides dedicated throughput to Amazon EBS and an optimized configuration // stack to provide optimal EBS I/O performance. This optimization isn't available // with all instance types. Additional usage charges apply when using an EBS // Optimized instance. // // Default: false EbsOptimized *bool `locationName:"ebsOptimized" type:"boolean"` // The IAM instance profile. IamInstanceProfile *IamInstanceProfileSpecification `locationName:"iamInstanceProfile" type:"structure"` // The ID of the AMI. ImageId *string `locationName:"imageId" type:"string"` // The instance type. InstanceType *string `locationName:"instanceType" type:"string" enum:"InstanceType"` // The ID of the kernel. KernelId *string `locationName:"kernelId" type:"string"` // The name of the key pair. KeyName *string `locationName:"keyName" type:"string"` // Describes the monitoring for the instance. Monitoring *RunInstancesMonitoringEnabled `locationName:"monitoring" type:"structure"` // One or more network interfaces. NetworkInterfaces []*InstanceNetworkInterfaceSpecification `locationName:"NetworkInterface" locationNameList:"item" type:"list"` // The placement information for the instance. Placement *SpotPlacement `locationName:"placement" type:"structure"` // The ID of the RAM disk. RamdiskId *string `locationName:"ramdiskId" type:"string"` SecurityGroupIds []*string `locationName:"SecurityGroupId" locationNameList:"item" type:"list"` SecurityGroups []*string `locationName:"SecurityGroup" locationNameList:"item" type:"list"` // The ID of the subnet in which to launch the instance. SubnetId *string `locationName:"subnetId" type:"string"` // The user data to make available to the instances. If you are using an AWS // SDK or command line tool, Base64-encoding is performed for you, and you can // load the text from a file. Otherwise, you must provide Base64-encoded text. UserData *string `locationName:"userData" type:"string"` } // String returns the string representation func (s RequestSpotLaunchSpecification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestSpotLaunchSpecification) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RequestSpotLaunchSpecification) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RequestSpotLaunchSpecification"} if s.Monitoring != nil { if err := s.Monitoring.Validate(); err != nil { invalidParams.AddNested("Monitoring", err.(request.ErrInvalidParams)) } } if s.NetworkInterfaces != nil { for i, v := range s.NetworkInterfaces { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "NetworkInterfaces", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a reservation. type Reservation struct { _ struct{} `type:"structure"` // [EC2-Classic only] One or more security groups. Groups []*GroupIdentifier `locationName:"groupSet" locationNameList:"item" type:"list"` // One or more instances. Instances []*Instance `locationName:"instancesSet" locationNameList:"item" type:"list"` // The ID of the AWS account that owns the reservation. OwnerId *string `locationName:"ownerId" type:"string"` // The ID of the requester that launched the instances on your behalf (for example, // AWS Management Console or Auto Scaling). RequesterId *string `locationName:"requesterId" type:"string"` // The ID of the reservation. ReservationId *string `locationName:"reservationId" type:"string"` } // String returns the string representation func (s Reservation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Reservation) GoString() string { return s.String() } // The cost associated with the Reserved Instance. type ReservationValue struct { _ struct{} `type:"structure"` // The hourly rate of the reservation. HourlyPrice *string `locationName:"hourlyPrice" type:"string"` // The balance of the total value (the sum of remainingUpfrontValue + hourlyPrice // * number of hours remaining). RemainingTotalValue *string `locationName:"remainingTotalValue" type:"string"` // The remaining upfront cost of the reservation. RemainingUpfrontValue *string `locationName:"remainingUpfrontValue" type:"string"` } // String returns the string representation func (s ReservationValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReservationValue) GoString() string { return s.String() } // Describes the limit price of a Reserved Instance offering. type ReservedInstanceLimitPrice struct { _ struct{} `type:"structure"` // Used for Reserved Instance Marketplace offerings. Specifies the limit price // on the total order (instanceCount * price). Amount *float64 `locationName:"amount" type:"double"` // The currency in which the limitPrice amount is specified. At this time, the // only supported currency is USD. CurrencyCode *string `locationName:"currencyCode" type:"string" enum:"CurrencyCodeValues"` } // String returns the string representation func (s ReservedInstanceLimitPrice) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReservedInstanceLimitPrice) GoString() string { return s.String() } // The total value of the Convertible Reserved Instance. type ReservedInstanceReservationValue struct { _ struct{} `type:"structure"` // The total value of the Convertible Reserved Instance that you are exchanging. ReservationValue *ReservationValue `locationName:"reservationValue" type:"structure"` // The ID of the Convertible Reserved Instance that you are exchanging. ReservedInstanceId *string `locationName:"reservedInstanceId" type:"string"` } // String returns the string representation func (s ReservedInstanceReservationValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReservedInstanceReservationValue) GoString() string { return s.String() } // Describes a Reserved Instance. type ReservedInstances struct { _ struct{} `type:"structure"` // The Availability Zone in which the Reserved Instance can be used. AvailabilityZone *string `locationName:"availabilityZone" type:"string"` // The currency of the Reserved Instance. It's specified using ISO 4217 standard // currency codes. At this time, the only supported currency is USD. CurrencyCode *string `locationName:"currencyCode" type:"string" enum:"CurrencyCodeValues"` // The duration of the Reserved Instance, in seconds. Duration *int64 `locationName:"duration" type:"long"` // The time when the Reserved Instance expires. End *time.Time `locationName:"end" type:"timestamp" timestampFormat:"iso8601"` // The purchase price of the Reserved Instance. FixedPrice *float64 `locationName:"fixedPrice" type:"float"` // The number of reservations purchased. InstanceCount *int64 `locationName:"instanceCount" type:"integer"` // The tenancy of the instance. InstanceTenancy *string `locationName:"instanceTenancy" type:"string" enum:"Tenancy"` // The instance type on which the Reserved Instance can be used. InstanceType *string `locationName:"instanceType" type:"string" enum:"InstanceType"` // The offering class of the Reserved Instance. OfferingClass *string `locationName:"offeringClass" type:"string" enum:"OfferingClassType"` // The Reserved Instance offering type. OfferingType *string `locationName:"offeringType" type:"string" enum:"OfferingTypeValues"` // The Reserved Instance product platform description. ProductDescription *string `locationName:"productDescription" type:"string" enum:"RIProductDescription"` // The recurring charge tag assigned to the resource. RecurringCharges []*RecurringCharge `locationName:"recurringCharges" locationNameList:"item" type:"list"` // The ID of the Reserved Instance. ReservedInstancesId *string `locationName:"reservedInstancesId" type:"string"` // The scope of the Reserved Instance. Scope *string `locationName:"scope" type:"string" enum:"scope"` // The date and time the Reserved Instance started. Start *time.Time `locationName:"start" type:"timestamp" timestampFormat:"iso8601"` // The state of the Reserved Instance purchase. State *string `locationName:"state" type:"string" enum:"ReservedInstanceState"` // Any tags assigned to the resource. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // The usage price of the Reserved Instance, per hour. UsagePrice *float64 `locationName:"usagePrice" type:"float"` } // String returns the string representation func (s ReservedInstances) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReservedInstances) GoString() string { return s.String() } // Describes the configuration settings for the modified Reserved Instances. type ReservedInstancesConfiguration struct { _ struct{} `type:"structure"` // The Availability Zone for the modified Reserved Instances. AvailabilityZone *string `locationName:"availabilityZone" type:"string"` // The number of modified Reserved Instances. InstanceCount *int64 `locationName:"instanceCount" type:"integer"` // The instance type for the modified Reserved Instances. InstanceType *string `locationName:"instanceType" type:"string" enum:"InstanceType"` // The network platform of the modified Reserved Instances, which is either // EC2-Classic or EC2-VPC. Platform *string `locationName:"platform" type:"string"` // Whether the Reserved Instance is standard or convertible. Scope *string `locationName:"scope" type:"string" enum:"scope"` } // String returns the string representation func (s ReservedInstancesConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReservedInstancesConfiguration) GoString() string { return s.String() } // Describes the ID of a Reserved Instance. type ReservedInstancesId struct { _ struct{} `type:"structure"` // The ID of the Reserved Instance. ReservedInstancesId *string `locationName:"reservedInstancesId" type:"string"` } // String returns the string representation func (s ReservedInstancesId) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReservedInstancesId) GoString() string { return s.String() } // Describes a Reserved Instance listing. type ReservedInstancesListing struct { _ struct{} `type:"structure"` // A unique, case-sensitive key supplied by the client to ensure that the request // is idempotent. For more information, see Ensuring Idempotency (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). ClientToken *string `locationName:"clientToken" type:"string"` // The time the listing was created. CreateDate *time.Time `locationName:"createDate" type:"timestamp" timestampFormat:"iso8601"` // The number of instances in this state. InstanceCounts []*InstanceCount `locationName:"instanceCounts" locationNameList:"item" type:"list"` // The price of the Reserved Instance listing. PriceSchedules []*PriceSchedule `locationName:"priceSchedules" locationNameList:"item" type:"list"` // The ID of the Reserved Instance. ReservedInstancesId *string `locationName:"reservedInstancesId" type:"string"` // The ID of the Reserved Instance listing. ReservedInstancesListingId *string `locationName:"reservedInstancesListingId" type:"string"` // The status of the Reserved Instance listing. Status *string `locationName:"status" type:"string" enum:"ListingStatus"` // The reason for the current status of the Reserved Instance listing. The response // can be blank. StatusMessage *string `locationName:"statusMessage" type:"string"` // Any tags assigned to the resource. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // The last modified timestamp of the listing. UpdateDate *time.Time `locationName:"updateDate" type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s ReservedInstancesListing) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReservedInstancesListing) GoString() string { return s.String() } // Describes a Reserved Instance modification. type ReservedInstancesModification struct { _ struct{} `type:"structure"` // A unique, case-sensitive key supplied by the client to ensure that the request // is idempotent. For more information, see Ensuring Idempotency (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). ClientToken *string `locationName:"clientToken" type:"string"` // The time when the modification request was created. CreateDate *time.Time `locationName:"createDate" type:"timestamp" timestampFormat:"iso8601"` // The time for the modification to become effective. EffectiveDate *time.Time `locationName:"effectiveDate" type:"timestamp" timestampFormat:"iso8601"` // Contains target configurations along with their corresponding new Reserved // Instance IDs. ModificationResults []*ReservedInstancesModificationResult `locationName:"modificationResultSet" locationNameList:"item" type:"list"` // The IDs of one or more Reserved Instances. ReservedInstancesIds []*ReservedInstancesId `locationName:"reservedInstancesSet" locationNameList:"item" type:"list"` // A unique ID for the Reserved Instance modification. ReservedInstancesModificationId *string `locationName:"reservedInstancesModificationId" type:"string"` // The status of the Reserved Instances modification request. Status *string `locationName:"status" type:"string"` // The reason for the status. StatusMessage *string `locationName:"statusMessage" type:"string"` // The time when the modification request was last updated. UpdateDate *time.Time `locationName:"updateDate" type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s ReservedInstancesModification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReservedInstancesModification) GoString() string { return s.String() } // Describes the modification request/s. type ReservedInstancesModificationResult struct { _ struct{} `type:"structure"` // The ID for the Reserved Instances that were created as part of the modification // request. This field is only available when the modification is fulfilled. ReservedInstancesId *string `locationName:"reservedInstancesId" type:"string"` // The target Reserved Instances configurations supplied as part of the modification // request. TargetConfiguration *ReservedInstancesConfiguration `locationName:"targetConfiguration" type:"structure"` } // String returns the string representation func (s ReservedInstancesModificationResult) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReservedInstancesModificationResult) GoString() string { return s.String() } // Describes a Reserved Instance offering. type ReservedInstancesOffering struct { _ struct{} `type:"structure"` // The Availability Zone in which the Reserved Instance can be used. AvailabilityZone *string `locationName:"availabilityZone" type:"string"` // The currency of the Reserved Instance offering you are purchasing. It's specified // using ISO 4217 standard currency codes. At this time, the only supported // currency is USD. CurrencyCode *string `locationName:"currencyCode" type:"string" enum:"CurrencyCodeValues"` // The duration of the Reserved Instance, in seconds. Duration *int64 `locationName:"duration" type:"long"` // The purchase price of the Reserved Instance. FixedPrice *float64 `locationName:"fixedPrice" type:"float"` // The tenancy of the instance. InstanceTenancy *string `locationName:"instanceTenancy" type:"string" enum:"Tenancy"` // The instance type on which the Reserved Instance can be used. InstanceType *string `locationName:"instanceType" type:"string" enum:"InstanceType"` // Indicates whether the offering is available through the Reserved Instance // Marketplace (resale) or AWS. If it's a Reserved Instance Marketplace offering, // this is true. Marketplace *bool `locationName:"marketplace" type:"boolean"` // If convertible it can be exchanged for Reserved Instances of the same or // higher monetary value, with different configurations. If standard, it is // not possible to perform an exchange. OfferingClass *string `locationName:"offeringClass" type:"string" enum:"OfferingClassType"` // The Reserved Instance offering type. OfferingType *string `locationName:"offeringType" type:"string" enum:"OfferingTypeValues"` // The pricing details of the Reserved Instance offering. PricingDetails []*PricingDetail `locationName:"pricingDetailsSet" locationNameList:"item" type:"list"` // The Reserved Instance product platform description. ProductDescription *string `locationName:"productDescription" type:"string" enum:"RIProductDescription"` // The recurring charge tag assigned to the resource. RecurringCharges []*RecurringCharge `locationName:"recurringCharges" locationNameList:"item" type:"list"` // The ID of the Reserved Instance offering. This is the offering ID used in // GetReservedInstancesExchangeQuote to confirm that an exchange can be made. ReservedInstancesOfferingId *string `locationName:"reservedInstancesOfferingId" type:"string"` // Whether the Reserved Instance is applied to instances in a region or an Availability // Zone. Scope *string `locationName:"scope" type:"string" enum:"scope"` // The usage price of the Reserved Instance, per hour. UsagePrice *float64 `locationName:"usagePrice" type:"float"` } // String returns the string representation func (s ReservedInstancesOffering) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReservedInstancesOffering) GoString() string { return s.String() } // Contains the parameters for ResetImageAttribute. type ResetImageAttributeInput struct { _ struct{} `type:"structure"` // The attribute to reset (currently you can only reset the launch permission // attribute). // // Attribute is a required field Attribute *string `type:"string" required:"true" enum:"ResetImageAttributeName"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the AMI. // // ImageId is a required field ImageId *string `type:"string" required:"true"` } // String returns the string representation func (s ResetImageAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResetImageAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ResetImageAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ResetImageAttributeInput"} if s.Attribute == nil { invalidParams.Add(request.NewErrParamRequired("Attribute")) } if s.ImageId == nil { invalidParams.Add(request.NewErrParamRequired("ImageId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ResetImageAttributeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ResetImageAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResetImageAttributeOutput) GoString() string { return s.String() } // Contains the parameters for ResetInstanceAttribute. type ResetInstanceAttributeInput struct { _ struct{} `type:"structure"` // The attribute to reset. // // You can only reset the following attributes: kernel | ramdisk | sourceDestCheck. // To change an instance attribute, use ModifyInstanceAttribute. // // Attribute is a required field Attribute *string `locationName:"attribute" type:"string" required:"true" enum:"InstanceAttributeName"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the instance. // // InstanceId is a required field InstanceId *string `locationName:"instanceId" type:"string" required:"true"` } // String returns the string representation func (s ResetInstanceAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResetInstanceAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ResetInstanceAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ResetInstanceAttributeInput"} if s.Attribute == nil { invalidParams.Add(request.NewErrParamRequired("Attribute")) } if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ResetInstanceAttributeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ResetInstanceAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResetInstanceAttributeOutput) GoString() string { return s.String() } // Contains the parameters for ResetNetworkInterfaceAttribute. type ResetNetworkInterfaceAttributeInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the network interface. // // NetworkInterfaceId is a required field NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string" required:"true"` // The source/destination checking attribute. Resets the value to true. SourceDestCheck *string `locationName:"sourceDestCheck" type:"string"` } // String returns the string representation func (s ResetNetworkInterfaceAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResetNetworkInterfaceAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ResetNetworkInterfaceAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ResetNetworkInterfaceAttributeInput"} if s.NetworkInterfaceId == nil { invalidParams.Add(request.NewErrParamRequired("NetworkInterfaceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ResetNetworkInterfaceAttributeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ResetNetworkInterfaceAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResetNetworkInterfaceAttributeOutput) GoString() string { return s.String() } // Contains the parameters for ResetSnapshotAttribute. type ResetSnapshotAttributeInput struct { _ struct{} `type:"structure"` // The attribute to reset. Currently, only the attribute for permission to create // volumes can be reset. // // Attribute is a required field Attribute *string `type:"string" required:"true" enum:"SnapshotAttributeName"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The ID of the snapshot. // // SnapshotId is a required field SnapshotId *string `type:"string" required:"true"` } // String returns the string representation func (s ResetSnapshotAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResetSnapshotAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ResetSnapshotAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ResetSnapshotAttributeInput"} if s.Attribute == nil { invalidParams.Add(request.NewErrParamRequired("Attribute")) } if s.SnapshotId == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ResetSnapshotAttributeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ResetSnapshotAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResetSnapshotAttributeOutput) GoString() string { return s.String() } // Contains the parameters for RestoreAddressToClassic. type RestoreAddressToClassicInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The Elastic IP address. // // PublicIp is a required field PublicIp *string `locationName:"publicIp" type:"string" required:"true"` } // String returns the string representation func (s RestoreAddressToClassicInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreAddressToClassicInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RestoreAddressToClassicInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RestoreAddressToClassicInput"} if s.PublicIp == nil { invalidParams.Add(request.NewErrParamRequired("PublicIp")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of RestoreAddressToClassic. type RestoreAddressToClassicOutput struct { _ struct{} `type:"structure"` // The Elastic IP address. PublicIp *string `locationName:"publicIp" type:"string"` // The move status for the IP address. Status *string `locationName:"status" type:"string" enum:"Status"` } // String returns the string representation func (s RestoreAddressToClassicOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreAddressToClassicOutput) GoString() string { return s.String() } // Contains the parameters for RevokeSecurityGroupEgress. type RevokeSecurityGroupEgressInput struct { _ struct{} `type:"structure"` // The CIDR IP address range. We recommend that you specify the CIDR range in // a set of IP permissions instead. CidrIp *string `locationName:"cidrIp" type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The start of port range for the TCP and UDP protocols, or an ICMP type number. // We recommend that you specify the port range in a set of IP permissions instead. FromPort *int64 `locationName:"fromPort" type:"integer"` // The ID of the security group. // // GroupId is a required field GroupId *string `locationName:"groupId" type:"string" required:"true"` // A set of IP permissions. You can't specify a destination security group and // a CIDR IP address range. IpPermissions []*IpPermission `locationName:"ipPermissions" locationNameList:"item" type:"list"` // The IP protocol name or number. We recommend that you specify the protocol // in a set of IP permissions instead. IpProtocol *string `locationName:"ipProtocol" type:"string"` // The name of a destination security group. To revoke outbound access to a // destination security group, we recommend that you use a set of IP permissions // instead. SourceSecurityGroupName *string `locationName:"sourceSecurityGroupName" type:"string"` // The AWS account number for a destination security group. To revoke outbound // access to a destination security group, we recommend that you use a set of // IP permissions instead. SourceSecurityGroupOwnerId *string `locationName:"sourceSecurityGroupOwnerId" type:"string"` // The end of port range for the TCP and UDP protocols, or an ICMP type number. // We recommend that you specify the port range in a set of IP permissions instead. ToPort *int64 `locationName:"toPort" type:"integer"` } // String returns the string representation func (s RevokeSecurityGroupEgressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RevokeSecurityGroupEgressInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RevokeSecurityGroupEgressInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RevokeSecurityGroupEgressInput"} if s.GroupId == nil { invalidParams.Add(request.NewErrParamRequired("GroupId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RevokeSecurityGroupEgressOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RevokeSecurityGroupEgressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RevokeSecurityGroupEgressOutput) GoString() string { return s.String() } // Contains the parameters for RevokeSecurityGroupIngress. type RevokeSecurityGroupIngressInput struct { _ struct{} `type:"structure"` // The CIDR IP address range. You can't specify this parameter when specifying // a source security group. CidrIp *string `type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // The start of port range for the TCP and UDP protocols, or an ICMP type number. // For the ICMP type number, use -1 to specify all ICMP types. FromPort *int64 `type:"integer"` // The ID of the security group. Required for a security group in a nondefault // VPC. GroupId *string `type:"string"` // [EC2-Classic, default VPC] The name of the security group. GroupName *string `type:"string"` // A set of IP permissions. You can't specify a source security group and a // CIDR IP address range. IpPermissions []*IpPermission `locationNameList:"item" type:"list"` // The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers (http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml)). // Use -1 to specify all. IpProtocol *string `type:"string"` // [EC2-Classic, default VPC] The name of the source security group. You can't // specify this parameter in combination with the following parameters: the // CIDR IP address range, the start of the port range, the IP protocol, and // the end of the port range. For EC2-VPC, the source security group must be // in the same VPC. To revoke a specific rule for an IP protocol and port range, // use a set of IP permissions instead. SourceSecurityGroupName *string `type:"string"` // [EC2-Classic] The AWS account ID of the source security group, if the source // security group is in a different account. You can't specify this parameter // in combination with the following parameters: the CIDR IP address range, // the IP protocol, the start of the port range, and the end of the port range. // To revoke a specific rule for an IP protocol and port range, use a set of // IP permissions instead. SourceSecurityGroupOwnerId *string `type:"string"` // The end of port range for the TCP and UDP protocols, or an ICMP code number. // For the ICMP code number, use -1 to specify all ICMP codes for the ICMP type. ToPort *int64 `type:"integer"` } // String returns the string representation func (s RevokeSecurityGroupIngressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RevokeSecurityGroupIngressInput) GoString() string { return s.String() } type RevokeSecurityGroupIngressOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RevokeSecurityGroupIngressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RevokeSecurityGroupIngressOutput) GoString() string { return s.String() } // Describes a route in a route table. type Route struct { _ struct{} `type:"structure"` // The CIDR block used for the destination match. DestinationCidrBlock *string `locationName:"destinationCidrBlock" type:"string"` // The prefix of the AWS service. DestinationPrefixListId *string `locationName:"destinationPrefixListId" type:"string"` // The ID of a gateway attached to your VPC. GatewayId *string `locationName:"gatewayId" type:"string"` // The ID of a NAT instance in your VPC. InstanceId *string `locationName:"instanceId" type:"string"` // The AWS account ID of the owner of the instance. InstanceOwnerId *string `locationName:"instanceOwnerId" type:"string"` // The ID of a NAT gateway. NatGatewayId *string `locationName:"natGatewayId" type:"string"` // The ID of the network interface. NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string"` // Describes how the route was created. // // * CreateRouteTable - The route was automatically created when the route // table was created. // // * CreateRoute - The route was manually added to the route table. // // * EnableVgwRoutePropagation - The route was propagated by route propagation. Origin *string `locationName:"origin" type:"string" enum:"RouteOrigin"` // The state of the route. The blackhole state indicates that the route's target // isn't available (for example, the specified gateway isn't attached to the // VPC, or the specified NAT instance has been terminated). State *string `locationName:"state" type:"string" enum:"RouteState"` // The ID of the VPC peering connection. VpcPeeringConnectionId *string `locationName:"vpcPeeringConnectionId" type:"string"` } // String returns the string representation func (s Route) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Route) GoString() string { return s.String() } // Describes a route table. type RouteTable struct { _ struct{} `type:"structure"` // The associations between the route table and one or more subnets. Associations []*RouteTableAssociation `locationName:"associationSet" locationNameList:"item" type:"list"` // Any virtual private gateway (VGW) propagating routes. PropagatingVgws []*PropagatingVgw `locationName:"propagatingVgwSet" locationNameList:"item" type:"list"` // The ID of the route table. RouteTableId *string `locationName:"routeTableId" type:"string"` // The routes in the route table. Routes []*Route `locationName:"routeSet" locationNameList:"item" type:"list"` // Any tags assigned to the route table. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // The ID of the VPC. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s RouteTable) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RouteTable) GoString() string { return s.String() } // Describes an association between a route table and a subnet. type RouteTableAssociation struct { _ struct{} `type:"structure"` // Indicates whether this is the main route table. Main *bool `locationName:"main" type:"boolean"` // The ID of the association between a route table and a subnet. RouteTableAssociationId *string `locationName:"routeTableAssociationId" type:"string"` // The ID of the route table. RouteTableId *string `locationName:"routeTableId" type:"string"` // The ID of the subnet. A subnet ID is not returned for an implicit association. SubnetId *string `locationName:"subnetId" type:"string"` } // String returns the string representation func (s RouteTableAssociation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RouteTableAssociation) GoString() string { return s.String() } // Contains the parameters for RunInstances. type RunInstancesInput struct { _ struct{} `type:"structure"` // Reserved. AdditionalInfo *string `locationName:"additionalInfo" type:"string"` // The block device mapping. // // Supplying both a snapshot ID and an encryption value as arguments for block-device // mapping results in an error. This is because only blank volumes can be encrypted // on start, and these are not created from a snapshot. If a snapshot is the // basis for the volume, it contains data by definition and its encryption status // cannot be changed using this action. BlockDeviceMappings []*BlockDeviceMapping `locationName:"BlockDeviceMapping" locationNameList:"BlockDeviceMapping" type:"list"` // Unique, case-sensitive identifier you provide to ensure the idempotency of // the request. For more information, see Ensuring Idempotency (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). // // Constraints: Maximum 64 ASCII characters ClientToken *string `locationName:"clientToken" type:"string"` // If you set this parameter to true, you can't terminate the instance using // the Amazon EC2 console, CLI, or API; otherwise, you can. If you set this // parameter to true and then later want to be able to terminate the instance, // you must first change the value of the disableApiTermination attribute to // false using ModifyInstanceAttribute. Alternatively, if you set InstanceInitiatedShutdownBehavior // to terminate, you can terminate the instance by running the shutdown command // from the instance. // // Default: false DisableApiTermination *bool `locationName:"disableApiTermination" type:"boolean"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // Indicates whether the instance is optimized for EBS I/O. This optimization // provides dedicated throughput to Amazon EBS and an optimized configuration // stack to provide optimal EBS I/O performance. This optimization isn't available // with all instance types. Additional usage charges apply when using an EBS-optimized // instance. // // Default: false EbsOptimized *bool `locationName:"ebsOptimized" type:"boolean"` // The IAM instance profile. IamInstanceProfile *IamInstanceProfileSpecification `locationName:"iamInstanceProfile" type:"structure"` // The ID of the AMI, which you can get by calling DescribeImages. // // ImageId is a required field ImageId *string `type:"string" required:"true"` // Indicates whether an instance stops or terminates when you initiate shutdown // from the instance (using the operating system command for system shutdown). // // Default: stop InstanceInitiatedShutdownBehavior *string `locationName:"instanceInitiatedShutdownBehavior" type:"string" enum:"ShutdownBehavior"` // The instance type. For more information, see Instance Types (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) // in the Amazon Elastic Compute Cloud User Guide. // // Default: m1.small InstanceType *string `type:"string" enum:"InstanceType"` // The ID of the kernel. // // We recommend that you use PV-GRUB instead of kernels and RAM disks. For more // information, see PV-GRUB (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html) // in the Amazon Elastic Compute Cloud User Guide. KernelId *string `type:"string"` // The name of the key pair. You can create a key pair using CreateKeyPair or // ImportKeyPair. // // If you do not specify a key pair, you can't connect to the instance unless // you choose an AMI that is configured to allow users another way to log in. KeyName *string `type:"string"` // The maximum number of instances to launch. If you specify more instances // than Amazon EC2 can launch in the target Availability Zone, Amazon EC2 launches // the largest possible number of instances above MinCount. // // Constraints: Between 1 and the maximum number you're allowed for the specified // instance type. For more information about the default limits, and how to // request an increase, see How many instances can I run in Amazon EC2 (http://aws.amazon.com/ec2/faqs/#How_many_instances_can_I_run_in_Amazon_EC2) // in the Amazon EC2 FAQ. // // MaxCount is a required field MaxCount *int64 `type:"integer" required:"true"` // The minimum number of instances to launch. If you specify a minimum that // is more instances than Amazon EC2 can launch in the target Availability Zone, // Amazon EC2 launches no instances. // // Constraints: Between 1 and the maximum number you're allowed for the specified // instance type. For more information about the default limits, and how to // request an increase, see How many instances can I run in Amazon EC2 (http://aws.amazon.com/ec2/faqs/#How_many_instances_can_I_run_in_Amazon_EC2) // in the Amazon EC2 General FAQ. // // MinCount is a required field MinCount *int64 `type:"integer" required:"true"` // The monitoring for the instance. Monitoring *RunInstancesMonitoringEnabled `type:"structure"` // One or more network interfaces. NetworkInterfaces []*InstanceNetworkInterfaceSpecification `locationName:"networkInterface" locationNameList:"item" type:"list"` // The placement for the instance. Placement *Placement `type:"structure"` // [EC2-VPC] The primary IP address. You must specify a value from the IP address // range of the subnet. // // Only one private IP address can be designated as primary. Therefore, you // can't specify this parameter if PrivateIpAddresses.n.Primary is set to true // and PrivateIpAddresses.n.PrivateIpAddress is set to an IP address. // // You cannot specify this option if you're launching more than one instance // in the request. // // Default: We select an IP address from the IP address range of the subnet. PrivateIpAddress *string `locationName:"privateIpAddress" type:"string"` // The ID of the RAM disk. // // We recommend that you use PV-GRUB instead of kernels and RAM disks. For more // information, see PV-GRUB (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html) // in the Amazon Elastic Compute Cloud User Guide. RamdiskId *string `type:"string"` // One or more security group IDs. You can create a security group using CreateSecurityGroup. // // Default: Amazon EC2 uses the default security group. SecurityGroupIds []*string `locationName:"SecurityGroupId" locationNameList:"SecurityGroupId" type:"list"` // [EC2-Classic, default VPC] One or more security group names. For a nondefault // VPC, you must use security group IDs instead. // // Default: Amazon EC2 uses the default security group. SecurityGroups []*string `locationName:"SecurityGroup" locationNameList:"SecurityGroup" type:"list"` // [EC2-VPC] The ID of the subnet to launch the instance into. SubnetId *string `type:"string"` // The user data to make available to the instance. For more information, see // Running Commands on Your Linux Instance at Launch (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html) // (Linux) and Adding User Data (http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-instance-metadata.html#instancedata-add-user-data) // (Windows). If you are using an AWS SDK or command line tool, Base64-encoding // is performed for you, and you can load the text from a file. Otherwise, you // must provide Base64-encoded text. UserData *string `type:"string"` } // String returns the string representation func (s RunInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RunInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RunInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RunInstancesInput"} if s.ImageId == nil { invalidParams.Add(request.NewErrParamRequired("ImageId")) } if s.MaxCount == nil { invalidParams.Add(request.NewErrParamRequired("MaxCount")) } if s.MinCount == nil { invalidParams.Add(request.NewErrParamRequired("MinCount")) } if s.Monitoring != nil { if err := s.Monitoring.Validate(); err != nil { invalidParams.AddNested("Monitoring", err.(request.ErrInvalidParams)) } } if s.NetworkInterfaces != nil { for i, v := range s.NetworkInterfaces { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "NetworkInterfaces", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the monitoring for the instance. type RunInstancesMonitoringEnabled struct { _ struct{} `type:"structure"` // Indicates whether monitoring is enabled for the instance. // // Enabled is a required field Enabled *bool `locationName:"enabled" type:"boolean" required:"true"` } // String returns the string representation func (s RunInstancesMonitoringEnabled) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RunInstancesMonitoringEnabled) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RunInstancesMonitoringEnabled) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RunInstancesMonitoringEnabled"} if s.Enabled == nil { invalidParams.Add(request.NewErrParamRequired("Enabled")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for RunScheduledInstances. type RunScheduledInstancesInput struct { _ struct{} `type:"structure"` // Unique, case-sensitive identifier that ensures the idempotency of the request. // For more information, see Ensuring Idempotency (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). ClientToken *string `type:"string" idempotencyToken:"true"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` // The number of instances. // // Default: 1 InstanceCount *int64 `type:"integer"` // The launch specification. You must match the instance type, Availability // Zone, network, and platform of the schedule that you purchased. // // LaunchSpecification is a required field LaunchSpecification *ScheduledInstancesLaunchSpecification `type:"structure" required:"true"` // The Scheduled Instance ID. // // ScheduledInstanceId is a required field ScheduledInstanceId *string `type:"string" required:"true"` } // String returns the string representation func (s RunScheduledInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RunScheduledInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RunScheduledInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RunScheduledInstancesInput"} if s.LaunchSpecification == nil { invalidParams.Add(request.NewErrParamRequired("LaunchSpecification")) } if s.ScheduledInstanceId == nil { invalidParams.Add(request.NewErrParamRequired("ScheduledInstanceId")) } if s.LaunchSpecification != nil { if err := s.LaunchSpecification.Validate(); err != nil { invalidParams.AddNested("LaunchSpecification", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of RunScheduledInstances. type RunScheduledInstancesOutput struct { _ struct{} `type:"structure"` // The IDs of the newly launched instances. InstanceIdSet []*string `locationName:"instanceIdSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s RunScheduledInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RunScheduledInstancesOutput) GoString() string { return s.String() } // Describes the storage parameters for S3 and S3 buckets for an instance store-backed // AMI. type S3Storage struct { _ struct{} `type:"structure"` // The access key ID of the owner of the bucket. Before you specify a value // for your access key ID, review and follow the guidance in Best Practices // for Managing AWS Access Keys (http://docs.aws.amazon.com/general/latest/gr/aws-access-keys-best-practices.html). AWSAccessKeyId *string `type:"string"` // The bucket in which to store the AMI. You can specify a bucket that you already // own or a new bucket that Amazon EC2 creates on your behalf. If you specify // a bucket that belongs to someone else, Amazon EC2 returns an error. Bucket *string `locationName:"bucket" type:"string"` // The beginning of the file name of the AMI. Prefix *string `locationName:"prefix" type:"string"` // An Amazon S3 upload policy that gives Amazon EC2 permission to upload items // into Amazon S3 on your behalf. // // UploadPolicy is automatically base64 encoded/decoded by the SDK. UploadPolicy []byte `locationName:"uploadPolicy" type:"blob"` // The signature of the JSON document. UploadPolicySignature *string `locationName:"uploadPolicySignature" type:"string"` } // String returns the string representation func (s S3Storage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s S3Storage) GoString() string { return s.String() } // Describes a Scheduled Instance. type ScheduledInstance struct { _ struct{} `type:"structure"` // The Availability Zone. AvailabilityZone *string `locationName:"availabilityZone" type:"string"` // The date when the Scheduled Instance was purchased. CreateDate *time.Time `locationName:"createDate" type:"timestamp" timestampFormat:"iso8601"` // The hourly price for a single instance. HourlyPrice *string `locationName:"hourlyPrice" type:"string"` // The number of instances. InstanceCount *int64 `locationName:"instanceCount" type:"integer"` // The instance type. InstanceType *string `locationName:"instanceType" type:"string"` // The network platform (EC2-Classic or EC2-VPC). NetworkPlatform *string `locationName:"networkPlatform" type:"string"` // The time for the next schedule to start. NextSlotStartTime *time.Time `locationName:"nextSlotStartTime" type:"timestamp" timestampFormat:"iso8601"` // The platform (Linux/UNIX or Windows). Platform *string `locationName:"platform" type:"string"` // The time that the previous schedule ended or will end. PreviousSlotEndTime *time.Time `locationName:"previousSlotEndTime" type:"timestamp" timestampFormat:"iso8601"` // The schedule recurrence. Recurrence *ScheduledInstanceRecurrence `locationName:"recurrence" type:"structure"` // The Scheduled Instance ID. ScheduledInstanceId *string `locationName:"scheduledInstanceId" type:"string"` // The number of hours in the schedule. SlotDurationInHours *int64 `locationName:"slotDurationInHours" type:"integer"` // The end date for the Scheduled Instance. TermEndDate *time.Time `locationName:"termEndDate" type:"timestamp" timestampFormat:"iso8601"` // The start date for the Scheduled Instance. TermStartDate *time.Time `locationName:"termStartDate" type:"timestamp" timestampFormat:"iso8601"` // The total number of hours for a single instance for the entire term. TotalScheduledInstanceHours *int64 `locationName:"totalScheduledInstanceHours" type:"integer"` } // String returns the string representation func (s ScheduledInstance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduledInstance) GoString() string { return s.String() } // Describes a schedule that is available for your Scheduled Instances. type ScheduledInstanceAvailability struct { _ struct{} `type:"structure"` // The Availability Zone. AvailabilityZone *string `locationName:"availabilityZone" type:"string"` // The number of available instances. AvailableInstanceCount *int64 `locationName:"availableInstanceCount" type:"integer"` // The time period for the first schedule to start. FirstSlotStartTime *time.Time `locationName:"firstSlotStartTime" type:"timestamp" timestampFormat:"iso8601"` // The hourly price for a single instance. HourlyPrice *string `locationName:"hourlyPrice" type:"string"` // The instance type. You can specify one of the C3, C4, M4, or R3 instance // types. InstanceType *string `locationName:"instanceType" type:"string"` // The maximum term. The only possible value is 365 days. MaxTermDurationInDays *int64 `locationName:"maxTermDurationInDays" type:"integer"` // The minimum term. The only possible value is 365 days. MinTermDurationInDays *int64 `locationName:"minTermDurationInDays" type:"integer"` // The network platform (EC2-Classic or EC2-VPC). NetworkPlatform *string `locationName:"networkPlatform" type:"string"` // The platform (Linux/UNIX or Windows). Platform *string `locationName:"platform" type:"string"` // The purchase token. This token expires in two hours. PurchaseToken *string `locationName:"purchaseToken" type:"string"` // The schedule recurrence. Recurrence *ScheduledInstanceRecurrence `locationName:"recurrence" type:"structure"` // The number of hours in the schedule. SlotDurationInHours *int64 `locationName:"slotDurationInHours" type:"integer"` // The total number of hours for a single instance for the entire term. TotalScheduledInstanceHours *int64 `locationName:"totalScheduledInstanceHours" type:"integer"` } // String returns the string representation func (s ScheduledInstanceAvailability) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduledInstanceAvailability) GoString() string { return s.String() } // Describes the recurring schedule for a Scheduled Instance. type ScheduledInstanceRecurrence struct { _ struct{} `type:"structure"` // The frequency (Daily, Weekly, or Monthly). Frequency *string `locationName:"frequency" type:"string"` // The interval quantity. The interval unit depends on the value of frequency. // For example, every 2 weeks or every 2 months. Interval *int64 `locationName:"interval" type:"integer"` // The days. For a monthly schedule, this is one or more days of the month (1-31). // For a weekly schedule, this is one or more days of the week (1-7, where 1 // is Sunday). OccurrenceDaySet []*int64 `locationName:"occurrenceDaySet" locationNameList:"item" type:"list"` // Indicates whether the occurrence is relative to the end of the specified // week or month. OccurrenceRelativeToEnd *bool `locationName:"occurrenceRelativeToEnd" type:"boolean"` // The unit for occurrenceDaySet (DayOfWeek or DayOfMonth). OccurrenceUnit *string `locationName:"occurrenceUnit" type:"string"` } // String returns the string representation func (s ScheduledInstanceRecurrence) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduledInstanceRecurrence) GoString() string { return s.String() } // Describes the recurring schedule for a Scheduled Instance. type ScheduledInstanceRecurrenceRequest struct { _ struct{} `type:"structure"` // The frequency (Daily, Weekly, or Monthly). Frequency *string `type:"string"` // The interval quantity. The interval unit depends on the value of Frequency. // For example, every 2 weeks or every 2 months. Interval *int64 `type:"integer"` // The days. For a monthly schedule, this is one or more days of the month (1-31). // For a weekly schedule, this is one or more days of the week (1-7, where 1 // is Sunday). You can't specify this value with a daily schedule. If the occurrence // is relative to the end of the month, you can specify only a single day. OccurrenceDays []*int64 `locationName:"OccurrenceDay" locationNameList:"OccurenceDay" type:"list"` // Indicates whether the occurrence is relative to the end of the specified // week or month. You can't specify this value with a daily schedule. OccurrenceRelativeToEnd *bool `type:"boolean"` // The unit for OccurrenceDays (DayOfWeek or DayOfMonth). This value is required // for a monthly schedule. You can't specify DayOfWeek with a weekly schedule. // You can't specify this value with a daily schedule. OccurrenceUnit *string `type:"string"` } // String returns the string representation func (s ScheduledInstanceRecurrenceRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduledInstanceRecurrenceRequest) GoString() string { return s.String() } // Describes a block device mapping for a Scheduled Instance. type ScheduledInstancesBlockDeviceMapping struct { _ struct{} `type:"structure"` // The device name exposed to the instance (for example, /dev/sdh or xvdh). DeviceName *string `type:"string"` // Parameters used to set up EBS volumes automatically when the instance is // launched. Ebs *ScheduledInstancesEbs `type:"structure"` // Suppresses the specified device included in the block device mapping of the // AMI. NoDevice *string `type:"string"` // The virtual device name (ephemeralN). Instance store volumes are numbered // starting from 0. An instance type with two available instance store volumes // can specify mappings for ephemeral0 and ephemeral1.The number of available // instance store volumes depends on the instance type. After you connect to // the instance, you must mount the volume. // // Constraints: For M3 instances, you must specify instance store volumes in // the block device mapping for the instance. When you launch an M3 instance, // we ignore any instance store volumes specified in the block device mapping // for the AMI. VirtualName *string `type:"string"` } // String returns the string representation func (s ScheduledInstancesBlockDeviceMapping) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduledInstancesBlockDeviceMapping) GoString() string { return s.String() } // Describes an EBS volume for a Scheduled Instance. type ScheduledInstancesEbs struct { _ struct{} `type:"structure"` // Indicates whether the volume is deleted on instance termination. DeleteOnTermination *bool `type:"boolean"` // Indicates whether the volume is encrypted. You can attached encrypted volumes // only to instances that support them. Encrypted *bool `type:"boolean"` // The number of I/O operations per second (IOPS) that the volume supports. // For io1 volumes, this represents the number of IOPS that are provisioned // for the volume. For gp2 volumes, this represents the baseline performance // of the volume and the rate at which the volume accumulates I/O credits for // bursting. For more information about gp2 baseline performance, I/O credits, // and bursting, see Amazon EBS Volume Types (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) // in the Amazon Elastic Compute Cloud User Guide. // // Constraint: Range is 100-20000 IOPS for io1 volumes and 100-10000 IOPS for // gp2 volumes. // // Condition: This parameter is required for requests to create io1volumes; // it is not used in requests to create gp2, st1, sc1, or standard volumes. Iops *int64 `type:"integer"` // The ID of the snapshot. SnapshotId *string `type:"string"` // The size of the volume, in GiB. // // Default: If you're creating the volume from a snapshot and don't specify // a volume size, the default is the snapshot size. VolumeSize *int64 `type:"integer"` // The volume type. gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, // Throughput Optimized HDD for st1, Cold HDD for sc1, or standard for Magnetic. // // Default: standard VolumeType *string `type:"string"` } // String returns the string representation func (s ScheduledInstancesEbs) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduledInstancesEbs) GoString() string { return s.String() } // Describes an IAM instance profile for a Scheduled Instance. type ScheduledInstancesIamInstanceProfile struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN). Arn *string `type:"string"` // The name. Name *string `type:"string"` } // String returns the string representation func (s ScheduledInstancesIamInstanceProfile) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduledInstancesIamInstanceProfile) GoString() string { return s.String() } // Describes the launch specification for a Scheduled Instance. // // If you are launching the Scheduled Instance in EC2-VPC, you must specify // the ID of the subnet. You can specify the subnet using either SubnetId or // NetworkInterface. type ScheduledInstancesLaunchSpecification struct { _ struct{} `type:"structure"` // One or more block device mapping entries. BlockDeviceMappings []*ScheduledInstancesBlockDeviceMapping `locationName:"BlockDeviceMapping" locationNameList:"BlockDeviceMapping" type:"list"` // Indicates whether the instances are optimized for EBS I/O. This optimization // provides dedicated throughput to Amazon EBS and an optimized configuration // stack to provide optimal EBS I/O performance. This optimization isn't available // with all instance types. Additional usage charges apply when using an EBS-optimized // instance. // // Default: false EbsOptimized *bool `type:"boolean"` // The IAM instance profile. IamInstanceProfile *ScheduledInstancesIamInstanceProfile `type:"structure"` // The ID of the Amazon Machine Image (AMI). // // ImageId is a required field ImageId *string `type:"string" required:"true"` // The instance type. InstanceType *string `type:"string"` // The ID of the kernel. KernelId *string `type:"string"` // The name of the key pair. KeyName *string `type:"string"` // Enable or disable monitoring for the instances. Monitoring *ScheduledInstancesMonitoring `type:"structure"` // One or more network interfaces. NetworkInterfaces []*ScheduledInstancesNetworkInterface `locationName:"NetworkInterface" locationNameList:"NetworkInterface" type:"list"` // The placement information. Placement *ScheduledInstancesPlacement `type:"structure"` // The ID of the RAM disk. RamdiskId *string `type:"string"` // The IDs of one or more security groups. SecurityGroupIds []*string `locationName:"SecurityGroupId" locationNameList:"SecurityGroupId" type:"list"` // The ID of the subnet in which to launch the instances. SubnetId *string `type:"string"` // The base64-encoded MIME user data. UserData *string `type:"string"` } // String returns the string representation func (s ScheduledInstancesLaunchSpecification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduledInstancesLaunchSpecification) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ScheduledInstancesLaunchSpecification) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ScheduledInstancesLaunchSpecification"} if s.ImageId == nil { invalidParams.Add(request.NewErrParamRequired("ImageId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes whether monitoring is enabled for a Scheduled Instance. type ScheduledInstancesMonitoring struct { _ struct{} `type:"structure"` // Indicates whether monitoring is enabled. Enabled *bool `type:"boolean"` } // String returns the string representation func (s ScheduledInstancesMonitoring) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduledInstancesMonitoring) GoString() string { return s.String() } // Describes a network interface for a Scheduled Instance. type ScheduledInstancesNetworkInterface struct { _ struct{} `type:"structure"` // Indicates whether to assign a public IP address to instances launched in // a VPC. The public IP address can only be assigned to a network interface // for eth0, and can only be assigned to a new network interface, not an existing // one. You cannot specify more than one network interface in the request. If // launching into a default subnet, the default value is true. AssociatePublicIpAddress *bool `type:"boolean"` // Indicates whether to delete the interface when the instance is terminated. DeleteOnTermination *bool `type:"boolean"` // The description. Description *string `type:"string"` // The index of the device for the network interface attachment. DeviceIndex *int64 `type:"integer"` // The IDs of one or more security groups. Groups []*string `locationName:"Group" locationNameList:"SecurityGroupId" type:"list"` // The ID of the network interface. NetworkInterfaceId *string `type:"string"` // The IP address of the network interface within the subnet. PrivateIpAddress *string `type:"string"` // The private IP addresses. PrivateIpAddressConfigs []*ScheduledInstancesPrivateIpAddressConfig `locationName:"PrivateIpAddressConfig" locationNameList:"PrivateIpAddressConfigSet" type:"list"` // The number of secondary private IP addresses. SecondaryPrivateIpAddressCount *int64 `type:"integer"` // The ID of the subnet. SubnetId *string `type:"string"` } // String returns the string representation func (s ScheduledInstancesNetworkInterface) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduledInstancesNetworkInterface) GoString() string { return s.String() } // Describes the placement for a Scheduled Instance. type ScheduledInstancesPlacement struct { _ struct{} `type:"structure"` // The Availability Zone. AvailabilityZone *string `type:"string"` // The name of the placement group. GroupName *string `type:"string"` } // String returns the string representation func (s ScheduledInstancesPlacement) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduledInstancesPlacement) GoString() string { return s.String() } // Describes a private IP address for a Scheduled Instance. type ScheduledInstancesPrivateIpAddressConfig struct { _ struct{} `type:"structure"` // Indicates whether this is a primary IP address. Otherwise, this is a secondary // IP address. Primary *bool `type:"boolean"` // The IP address. PrivateIpAddress *string `type:"string"` } // String returns the string representation func (s ScheduledInstancesPrivateIpAddressConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduledInstancesPrivateIpAddressConfig) GoString() string { return s.String() } // Describes a security group type SecurityGroup struct { _ struct{} `type:"structure"` // A description of the security group. Description *string `locationName:"groupDescription" type:"string"` // The ID of the security group. GroupId *string `locationName:"groupId" type:"string"` // The name of the security group. GroupName *string `locationName:"groupName" type:"string"` // One or more inbound rules associated with the security group. IpPermissions []*IpPermission `locationName:"ipPermissions" locationNameList:"item" type:"list"` // [EC2-VPC] One or more outbound rules associated with the security group. IpPermissionsEgress []*IpPermission `locationName:"ipPermissionsEgress" locationNameList:"item" type:"list"` // The AWS account ID of the owner of the security group. OwnerId *string `locationName:"ownerId" type:"string"` // Any tags assigned to the security group. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // [EC2-VPC] The ID of the VPC for the security group. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s SecurityGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SecurityGroup) GoString() string { return s.String() } // Describes a VPC with a security group that references your security group. type SecurityGroupReference struct { _ struct{} `type:"structure"` // The ID of your security group. // // GroupId is a required field GroupId *string `locationName:"groupId" type:"string" required:"true"` // The ID of the VPC with the referencing security group. // // ReferencingVpcId is a required field ReferencingVpcId *string `locationName:"referencingVpcId" type:"string" required:"true"` // The ID of the VPC peering connection. VpcPeeringConnectionId *string `locationName:"vpcPeeringConnectionId" type:"string"` } // String returns the string representation func (s SecurityGroupReference) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SecurityGroupReference) GoString() string { return s.String() } // Describes the time period for a Scheduled Instance to start its first schedule. // The time period must span less than one day. type SlotDateTimeRangeRequest struct { _ struct{} `type:"structure"` // The earliest date and time, in UTC, for the Scheduled Instance to start. // // EarliestTime is a required field EarliestTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The latest date and time, in UTC, for the Scheduled Instance to start. This // value must be later than or equal to the earliest date and at most three // months in the future. // // LatestTime is a required field LatestTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` } // String returns the string representation func (s SlotDateTimeRangeRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SlotDateTimeRangeRequest) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SlotDateTimeRangeRequest) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SlotDateTimeRangeRequest"} if s.EarliestTime == nil { invalidParams.Add(request.NewErrParamRequired("EarliestTime")) } if s.LatestTime == nil { invalidParams.Add(request.NewErrParamRequired("LatestTime")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the time period for a Scheduled Instance to start its first schedule. type SlotStartTimeRangeRequest struct { _ struct{} `type:"structure"` // The earliest date and time, in UTC, for the Scheduled Instance to start. EarliestTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The latest date and time, in UTC, for the Scheduled Instance to start. LatestTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s SlotStartTimeRangeRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SlotStartTimeRangeRequest) GoString() string { return s.String() } // Describes a snapshot. type Snapshot struct { _ struct{} `type:"structure"` // The data encryption key identifier for the snapshot. This value is a unique // identifier that corresponds to the data encryption key that was used to encrypt // the original volume or snapshot copy. Because data encryption keys are inherited // by volumes created from snapshots, and vice versa, if snapshots share the // same data encryption key identifier, then they belong to the same volume/snapshot // lineage. This parameter is only returned by the DescribeSnapshots API operation. DataEncryptionKeyId *string `locationName:"dataEncryptionKeyId" type:"string"` // The description for the snapshot. Description *string `locationName:"description" type:"string"` // Indicates whether the snapshot is encrypted. Encrypted *bool `locationName:"encrypted" type:"boolean"` // The full ARN of the AWS Key Management Service (AWS KMS) customer master // key (CMK) that was used to protect the volume encryption key for the parent // volume. KmsKeyId *string `locationName:"kmsKeyId" type:"string"` // Value from an Amazon-maintained list (amazon | aws-marketplace | microsoft) // of snapshot owners. Not to be confused with the user-configured AWS account // alias, which is set from the IAM console. OwnerAlias *string `locationName:"ownerAlias" type:"string"` // The AWS account ID of the EBS snapshot owner. OwnerId *string `locationName:"ownerId" type:"string"` // The progress of the snapshot, as a percentage. Progress *string `locationName:"progress" type:"string"` // The ID of the snapshot. Each snapshot receives a unique identifier when it // is created. SnapshotId *string `locationName:"snapshotId" type:"string"` // The time stamp when the snapshot was initiated. StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"iso8601"` // The snapshot state. State *string `locationName:"status" type:"string" enum:"SnapshotState"` // Encrypted Amazon EBS snapshots are copied asynchronously. If a snapshot copy // operation fails (for example, if the proper AWS Key Management Service (AWS // KMS) permissions are not obtained) this field displays error state details // to help you diagnose why the error occurred. This parameter is only returned // by the DescribeSnapshots API operation. StateMessage *string `locationName:"statusMessage" type:"string"` // Any tags assigned to the snapshot. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // The ID of the volume that was used to create the snapshot. Snapshots created // by the CopySnapshot action have an arbitrary volume ID that should not be // used for any purpose. VolumeId *string `locationName:"volumeId" type:"string"` // The size of the volume, in GiB. VolumeSize *int64 `locationName:"volumeSize" type:"integer"` } // String returns the string representation func (s Snapshot) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Snapshot) GoString() string { return s.String() } // Describes the snapshot created from the imported disk. type SnapshotDetail struct { _ struct{} `type:"structure"` // A description for the snapshot. Description *string `locationName:"description" type:"string"` // The block device mapping for the snapshot. DeviceName *string `locationName:"deviceName" type:"string"` // The size of the disk in the snapshot, in GiB. DiskImageSize *float64 `locationName:"diskImageSize" type:"double"` // The format of the disk image from which the snapshot is created. Format *string `locationName:"format" type:"string"` // The percentage of progress for the task. Progress *string `locationName:"progress" type:"string"` // The snapshot ID of the disk being imported. SnapshotId *string `locationName:"snapshotId" type:"string"` // A brief status of the snapshot creation. Status *string `locationName:"status" type:"string"` // A detailed status message for the snapshot creation. StatusMessage *string `locationName:"statusMessage" type:"string"` // The URL used to access the disk image. Url *string `locationName:"url" type:"string"` // The S3 bucket for the disk image. UserBucket *UserBucketDetails `locationName:"userBucket" type:"structure"` } // String returns the string representation func (s SnapshotDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SnapshotDetail) GoString() string { return s.String() } // The disk container object for the import snapshot request. type SnapshotDiskContainer struct { _ struct{} `type:"structure"` // The description of the disk image being imported. Description *string `type:"string"` // The format of the disk image being imported. // // Valid values: RAW | VHD | VMDK | OVA Format *string `type:"string"` // The URL to the Amazon S3-based disk image being imported. It can either be // a https URL (https://..) or an Amazon S3 URL (s3://..). Url *string `type:"string"` // The S3 bucket for the disk image. UserBucket *UserBucket `type:"structure"` } // String returns the string representation func (s SnapshotDiskContainer) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SnapshotDiskContainer) GoString() string { return s.String() } // Details about the import snapshot task. type SnapshotTaskDetail struct { _ struct{} `type:"structure"` // The description of the snapshot. Description *string `locationName:"description" type:"string"` // The size of the disk in the snapshot, in GiB. DiskImageSize *float64 `locationName:"diskImageSize" type:"double"` // The format of the disk image from which the snapshot is created. Format *string `locationName:"format" type:"string"` // The percentage of completion for the import snapshot task. Progress *string `locationName:"progress" type:"string"` // The snapshot ID of the disk being imported. SnapshotId *string `locationName:"snapshotId" type:"string"` // A brief status for the import snapshot task. Status *string `locationName:"status" type:"string"` // A detailed status message for the import snapshot task. StatusMessage *string `locationName:"statusMessage" type:"string"` // The URL of the disk image from which the snapshot is created. Url *string `locationName:"url" type:"string"` // The S3 bucket for the disk image. UserBucket *UserBucketDetails `locationName:"userBucket" type:"structure"` } // String returns the string representation func (s SnapshotTaskDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SnapshotTaskDetail) GoString() string { return s.String() } // Describes the data feed for a Spot instance. type SpotDatafeedSubscription struct { _ struct{} `type:"structure"` // The Amazon S3 bucket where the Spot instance data feed is located. Bucket *string `locationName:"bucket" type:"string"` // The fault codes for the Spot instance request, if any. Fault *SpotInstanceStateFault `locationName:"fault" type:"structure"` // The AWS account ID of the account. OwnerId *string `locationName:"ownerId" type:"string"` // The prefix that is prepended to data feed files. Prefix *string `locationName:"prefix" type:"string"` // The state of the Spot instance data feed subscription. State *string `locationName:"state" type:"string" enum:"DatafeedSubscriptionState"` } // String returns the string representation func (s SpotDatafeedSubscription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SpotDatafeedSubscription) GoString() string { return s.String() } // Describes the launch specification for one or more Spot instances. type SpotFleetLaunchSpecification struct { _ struct{} `type:"structure"` // Deprecated. AddressingType *string `locationName:"addressingType" type:"string"` // One or more block device mapping entries. BlockDeviceMappings []*BlockDeviceMapping `locationName:"blockDeviceMapping" locationNameList:"item" type:"list"` // Indicates whether the instances are optimized for EBS I/O. This optimization // provides dedicated throughput to Amazon EBS and an optimized configuration // stack to provide optimal EBS I/O performance. This optimization isn't available // with all instance types. Additional usage charges apply when using an EBS // Optimized instance. // // Default: false EbsOptimized *bool `locationName:"ebsOptimized" type:"boolean"` // The IAM instance profile. IamInstanceProfile *IamInstanceProfileSpecification `locationName:"iamInstanceProfile" type:"structure"` // The ID of the AMI. ImageId *string `locationName:"imageId" type:"string"` // The instance type. InstanceType *string `locationName:"instanceType" type:"string" enum:"InstanceType"` // The ID of the kernel. KernelId *string `locationName:"kernelId" type:"string"` // The name of the key pair. KeyName *string `locationName:"keyName" type:"string"` // Enable or disable monitoring for the instances. Monitoring *SpotFleetMonitoring `locationName:"monitoring" type:"structure"` // One or more network interfaces. NetworkInterfaces []*InstanceNetworkInterfaceSpecification `locationName:"networkInterfaceSet" locationNameList:"item" type:"list"` // The placement information. Placement *SpotPlacement `locationName:"placement" type:"structure"` // The ID of the RAM disk. RamdiskId *string `locationName:"ramdiskId" type:"string"` // One or more security groups. When requesting instances in a VPC, you must // specify the IDs of the security groups. When requesting instances in EC2-Classic, // you can specify the names or the IDs of the security groups. SecurityGroups []*GroupIdentifier `locationName:"groupSet" locationNameList:"item" type:"list"` // The bid price per unit hour for the specified instance type. If this value // is not specified, the default is the Spot bid price specified for the fleet. // To determine the bid price per unit hour, divide the Spot bid price by the // value of WeightedCapacity. SpotPrice *string `locationName:"spotPrice" type:"string"` // The ID of the subnet in which to launch the instances. To specify multiple // subnets, separate them using commas; for example, "subnet-a61dafcf, subnet-65ea5f08". SubnetId *string `locationName:"subnetId" type:"string"` // The user data to make available to the instances. If you are using an AWS // SDK or command line tool, Base64-encoding is performed for you, and you can // load the text from a file. Otherwise, you must provide Base64-encoded text. UserData *string `locationName:"userData" type:"string"` // The number of units provided by the specified instance type. These are the // same units that you chose to set the target capacity in terms (instances // or a performance characteristic such as vCPUs, memory, or I/O). // // If the target capacity divided by this value is not a whole number, we round // the number of instances to the next whole number. If this value is not specified, // the default is 1. WeightedCapacity *float64 `locationName:"weightedCapacity" type:"double"` } // String returns the string representation func (s SpotFleetLaunchSpecification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SpotFleetLaunchSpecification) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SpotFleetLaunchSpecification) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SpotFleetLaunchSpecification"} if s.NetworkInterfaces != nil { for i, v := range s.NetworkInterfaces { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "NetworkInterfaces", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes whether monitoring is enabled. type SpotFleetMonitoring struct { _ struct{} `type:"structure"` // Enables monitoring for the instance. // // Default: false Enabled *bool `locationName:"enabled" type:"boolean"` } // String returns the string representation func (s SpotFleetMonitoring) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SpotFleetMonitoring) GoString() string { return s.String() } // Describes a Spot fleet request. type SpotFleetRequestConfig struct { _ struct{} `type:"structure"` // The progress of the Spot fleet request. If there is an error, the status // is error. After all bids are placed, the status is pending_fulfillment. If // the size of the fleet is equal to or greater than its target capacity, the // status is fulfilled. If the size of the fleet is decreased, the status is // pending_termination while Spot instances are terminating. ActivityStatus *string `locationName:"activityStatus" type:"string" enum:"ActivityStatus"` // The creation date and time of the request. // // CreateTime is a required field CreateTime *time.Time `locationName:"createTime" type:"timestamp" timestampFormat:"iso8601" required:"true"` // Information about the configuration of the Spot fleet request. // // SpotFleetRequestConfig is a required field SpotFleetRequestConfig *SpotFleetRequestConfigData `locationName:"spotFleetRequestConfig" type:"structure" required:"true"` // The ID of the Spot fleet request. // // SpotFleetRequestId is a required field SpotFleetRequestId *string `locationName:"spotFleetRequestId" type:"string" required:"true"` // The state of the Spot fleet request. // // SpotFleetRequestState is a required field SpotFleetRequestState *string `locationName:"spotFleetRequestState" type:"string" required:"true" enum:"BatchState"` } // String returns the string representation func (s SpotFleetRequestConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SpotFleetRequestConfig) GoString() string { return s.String() } // Describes the configuration of a Spot fleet request. type SpotFleetRequestConfigData struct { _ struct{} `type:"structure"` // Indicates how to allocate the target capacity across the Spot pools specified // by the Spot fleet request. The default is lowestPrice. AllocationStrategy *string `locationName:"allocationStrategy" type:"string" enum:"AllocationStrategy"` // A unique, case-sensitive identifier you provide to ensure idempotency of // your listings. This helps avoid duplicate listings. For more information, // see Ensuring Idempotency (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). ClientToken *string `locationName:"clientToken" type:"string"` // Indicates whether running Spot instances should be terminated if the target // capacity of the Spot fleet request is decreased below the current size of // the Spot fleet. ExcessCapacityTerminationPolicy *string `locationName:"excessCapacityTerminationPolicy" type:"string" enum:"ExcessCapacityTerminationPolicy"` // The number of units fulfilled by this request compared to the set target // capacity. FulfilledCapacity *float64 `locationName:"fulfilledCapacity" type:"double"` // Grants the Spot fleet permission to terminate Spot instances on your behalf // when you cancel its Spot fleet request using CancelSpotFleetRequests or when // the Spot fleet request expires, if you set terminateInstancesWithExpiration. // // IamFleetRole is a required field IamFleetRole *string `locationName:"iamFleetRole" type:"string" required:"true"` // Information about the launch specifications for the Spot fleet request. // // LaunchSpecifications is a required field LaunchSpecifications []*SpotFleetLaunchSpecification `locationName:"launchSpecifications" locationNameList:"item" min:"1" type:"list" required:"true"` // The bid price per unit hour. // // SpotPrice is a required field SpotPrice *string `locationName:"spotPrice" type:"string" required:"true"` // The number of units to request. You can choose to set the target capacity // in terms of instances or a performance characteristic that is important to // your application workload, such as vCPUs, memory, or I/O. // // TargetCapacity is a required field TargetCapacity *int64 `locationName:"targetCapacity" type:"integer" required:"true"` // Indicates whether running Spot instances should be terminated when the Spot // fleet request expires. TerminateInstancesWithExpiration *bool `locationName:"terminateInstancesWithExpiration" type:"boolean"` // The type of request. Indicates whether the fleet will only request the target // capacity or also attempt to maintain it. When you request a certain target // capacity, the fleet will only place the required bids. It will not attempt // to replenish Spot instances if capacity is diminished, nor will it submit // bids in alternative Spot pools if capacity is not available. When you want // to maintain a certain target capacity, fleet will place the required bids // to meet this target capacity. It will also automatically replenish any interrupted // instances. Default: maintain. Type *string `locationName:"type" type:"string" enum:"FleetType"` // The start date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). // The default is to start fulfilling the request immediately. ValidFrom *time.Time `locationName:"validFrom" type:"timestamp" timestampFormat:"iso8601"` // The end date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). // At this point, no new Spot instance requests are placed or enabled to fulfill // the request. ValidUntil *time.Time `locationName:"validUntil" type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s SpotFleetRequestConfigData) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SpotFleetRequestConfigData) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SpotFleetRequestConfigData) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SpotFleetRequestConfigData"} if s.IamFleetRole == nil { invalidParams.Add(request.NewErrParamRequired("IamFleetRole")) } if s.LaunchSpecifications == nil { invalidParams.Add(request.NewErrParamRequired("LaunchSpecifications")) } if s.LaunchSpecifications != nil && len(s.LaunchSpecifications) < 1 { invalidParams.Add(request.NewErrParamMinLen("LaunchSpecifications", 1)) } if s.SpotPrice == nil { invalidParams.Add(request.NewErrParamRequired("SpotPrice")) } if s.TargetCapacity == nil { invalidParams.Add(request.NewErrParamRequired("TargetCapacity")) } if s.LaunchSpecifications != nil { for i, v := range s.LaunchSpecifications { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "LaunchSpecifications", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a Spot instance request. type SpotInstanceRequest struct { _ struct{} `type:"structure"` // If you specified a duration and your Spot instance request was fulfilled, // this is the fixed hourly price in effect for the Spot instance while it runs. ActualBlockHourlyPrice *string `locationName:"actualBlockHourlyPrice" type:"string"` // The Availability Zone group. If you specify the same Availability Zone group // for all Spot instance requests, all Spot instances are launched in the same // Availability Zone. AvailabilityZoneGroup *string `locationName:"availabilityZoneGroup" type:"string"` // The duration for the Spot instance, in minutes. BlockDurationMinutes *int64 `locationName:"blockDurationMinutes" type:"integer"` // The date and time when the Spot instance request was created, in UTC format // (for example, YYYY-MM-DDTHH:MM:SSZ). CreateTime *time.Time `locationName:"createTime" type:"timestamp" timestampFormat:"iso8601"` // The fault codes for the Spot instance request, if any. Fault *SpotInstanceStateFault `locationName:"fault" type:"structure"` // The instance ID, if an instance has been launched to fulfill the Spot instance // request. InstanceId *string `locationName:"instanceId" type:"string"` // The instance launch group. Launch groups are Spot instances that launch together // and terminate together. LaunchGroup *string `locationName:"launchGroup" type:"string"` // Additional information for launching instances. LaunchSpecification *LaunchSpecification `locationName:"launchSpecification" type:"structure"` // The Availability Zone in which the bid is launched. LaunchedAvailabilityZone *string `locationName:"launchedAvailabilityZone" type:"string"` // The product description associated with the Spot instance. ProductDescription *string `locationName:"productDescription" type:"string" enum:"RIProductDescription"` // The ID of the Spot instance request. SpotInstanceRequestId *string `locationName:"spotInstanceRequestId" type:"string"` // The maximum hourly price (bid) for the Spot instance launched to fulfill // the request. SpotPrice *string `locationName:"spotPrice" type:"string"` // The state of the Spot instance request. Spot bid status information can help // you track your Spot instance requests. For more information, see Spot Bid // Status (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-bid-status.html) // in the Amazon Elastic Compute Cloud User Guide. State *string `locationName:"state" type:"string" enum:"SpotInstanceState"` // The status code and status message describing the Spot instance request. Status *SpotInstanceStatus `locationName:"status" type:"structure"` // Any tags assigned to the resource. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // The Spot instance request type. Type *string `locationName:"type" type:"string" enum:"SpotInstanceType"` // The start date of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). // The request becomes active at this date and time. ValidFrom *time.Time `locationName:"validFrom" type:"timestamp" timestampFormat:"iso8601"` // The end date of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). // If this is a one-time request, it remains active until all instances launch, // the request is canceled, or this date is reached. If the request is persistent, // it remains active until it is canceled or this date is reached. ValidUntil *time.Time `locationName:"validUntil" type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s SpotInstanceRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SpotInstanceRequest) GoString() string { return s.String() } // Describes a Spot instance state change. type SpotInstanceStateFault struct { _ struct{} `type:"structure"` // The reason code for the Spot instance state change. Code *string `locationName:"code" type:"string"` // The message for the Spot instance state change. Message *string `locationName:"message" type:"string"` } // String returns the string representation func (s SpotInstanceStateFault) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SpotInstanceStateFault) GoString() string { return s.String() } // Describes the status of a Spot instance request. type SpotInstanceStatus struct { _ struct{} `type:"structure"` // The status code. For a list of status codes, see Spot Bid Status Codes (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-bid-status.html#spot-instance-bid-status-understand) // in the Amazon Elastic Compute Cloud User Guide. Code *string `locationName:"code" type:"string"` // The description for the status code. Message *string `locationName:"message" type:"string"` // The date and time of the most recent status update, in UTC format (for example, // YYYY-MM-DDTHH:MM:SSZ). UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s SpotInstanceStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SpotInstanceStatus) GoString() string { return s.String() } // Describes Spot instance placement. type SpotPlacement struct { _ struct{} `type:"structure"` // The Availability Zone. // // [Spot fleet only] To specify multiple Availability Zones, separate them using // commas; for example, "us-west-2a, us-west-2b". AvailabilityZone *string `locationName:"availabilityZone" type:"string"` // The name of the placement group (for cluster instances). GroupName *string `locationName:"groupName" type:"string"` } // String returns the string representation func (s SpotPlacement) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SpotPlacement) GoString() string { return s.String() } // Describes the maximum hourly price (bid) for any Spot instance launched to // fulfill the request. type SpotPrice struct { _ struct{} `type:"structure"` // The Availability Zone. AvailabilityZone *string `locationName:"availabilityZone" type:"string"` // The instance type. InstanceType *string `locationName:"instanceType" type:"string" enum:"InstanceType"` // A general description of the AMI. ProductDescription *string `locationName:"productDescription" type:"string" enum:"RIProductDescription"` // The maximum price (bid) that you are willing to pay for a Spot instance. SpotPrice *string `locationName:"spotPrice" type:"string"` // The date and time the request was created, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). Timestamp *time.Time `locationName:"timestamp" type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s SpotPrice) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SpotPrice) GoString() string { return s.String() } // Describes a stale rule in a security group. type StaleIpPermission struct { _ struct{} `type:"structure"` // The start of the port range for the TCP and UDP protocols, or an ICMP type // number. A value of -1 indicates all ICMP types. FromPort *int64 `locationName:"fromPort" type:"integer"` // The IP protocol name (for tcp, udp, and icmp) or number (see Protocol Numbers) // (http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml). IpProtocol *string `locationName:"ipProtocol" type:"string"` // One or more IP ranges. Not applicable for stale security group rules. IpRanges []*string `locationName:"ipRanges" locationNameList:"item" type:"list"` // One or more prefix list IDs for an AWS service. Not applicable for stale // security group rules. PrefixListIds []*string `locationName:"prefixListIds" locationNameList:"item" type:"list"` // The end of the port range for the TCP and UDP protocols, or an ICMP type // number. A value of -1 indicates all ICMP types. ToPort *int64 `locationName:"toPort" type:"integer"` // One or more security group pairs. Returns the ID of the referenced security // group and VPC, and the ID and status of the VPC peering connection. UserIdGroupPairs []*UserIdGroupPair `locationName:"groups" locationNameList:"item" type:"list"` } // String returns the string representation func (s StaleIpPermission) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StaleIpPermission) GoString() string { return s.String() } // Describes a stale security group (a security group that contains stale rules). type StaleSecurityGroup struct { _ struct{} `type:"structure"` // The description of the security group. Description *string `locationName:"description" type:"string"` // The ID of the security group. // // GroupId is a required field GroupId *string `locationName:"groupId" type:"string" required:"true"` // The name of the security group. GroupName *string `locationName:"groupName" type:"string"` // Information about the stale inbound rules in the security group. StaleIpPermissions []*StaleIpPermission `locationName:"staleIpPermissions" locationNameList:"item" type:"list"` // Information about the stale outbound rules in the security group. StaleIpPermissionsEgress []*StaleIpPermission `locationName:"staleIpPermissionsEgress" locationNameList:"item" type:"list"` // The ID of the VPC for the security group. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s StaleSecurityGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StaleSecurityGroup) GoString() string { return s.String() } // Contains the parameters for StartInstances. type StartInstancesInput struct { _ struct{} `type:"structure"` // Reserved. AdditionalInfo *string `locationName:"additionalInfo" type:"string"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more instance IDs. // // InstanceIds is a required field InstanceIds []*string `locationName:"InstanceId" locationNameList:"InstanceId" type:"list" required:"true"` } // String returns the string representation func (s StartInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartInstancesInput"} if s.InstanceIds == nil { invalidParams.Add(request.NewErrParamRequired("InstanceIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of StartInstances. type StartInstancesOutput struct { _ struct{} `type:"structure"` // Information about one or more started instances. StartingInstances []*InstanceStateChange `locationName:"instancesSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s StartInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartInstancesOutput) GoString() string { return s.String() } // Describes a state change. type StateReason struct { _ struct{} `type:"structure"` // The reason code for the state change. Code *string `locationName:"code" type:"string"` // The message for the state change. // // * Server.SpotInstanceTermination: A Spot instance was terminated due to // an increase in the market price. // // * Server.InternalError: An internal error occurred during instance launch, // resulting in termination. // // * Server.InsufficientInstanceCapacity: There was insufficient instance // capacity to satisfy the launch request. // // * Client.InternalError: A client error caused the instance to terminate // on launch. // // * Client.InstanceInitiatedShutdown: The instance was shut down using the // shutdown -h command from the instance. // // * Client.UserInitiatedShutdown: The instance was shut down using the Amazon // EC2 API. // // * Client.VolumeLimitExceeded: The limit on the number of EBS volumes or // total storage was exceeded. Decrease usage or request an increase in your // limits. // // * Client.InvalidSnapshot.NotFound: The specified snapshot was not found. Message *string `locationName:"message" type:"string"` } // String returns the string representation func (s StateReason) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StateReason) GoString() string { return s.String() } // Contains the parameters for StopInstances. type StopInstancesInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // Forces the instances to stop. The instances do not have an opportunity to // flush file system caches or file system metadata. If you use this option, // you must perform file system check and repair procedures. This option is // not recommended for Windows instances. // // Default: false Force *bool `locationName:"force" type:"boolean"` // One or more instance IDs. // // InstanceIds is a required field InstanceIds []*string `locationName:"InstanceId" locationNameList:"InstanceId" type:"list" required:"true"` } // String returns the string representation func (s StopInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StopInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StopInstancesInput"} if s.InstanceIds == nil { invalidParams.Add(request.NewErrParamRequired("InstanceIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of StopInstances. type StopInstancesOutput struct { _ struct{} `type:"structure"` // Information about one or more stopped instances. StoppingInstances []*InstanceStateChange `locationName:"instancesSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s StopInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopInstancesOutput) GoString() string { return s.String() } // Describes the storage location for an instance store-backed AMI. type Storage struct { _ struct{} `type:"structure"` // An Amazon S3 storage location. S3 *S3Storage `type:"structure"` } // String returns the string representation func (s Storage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Storage) GoString() string { return s.String() } // Describes a subnet. type Subnet struct { _ struct{} `type:"structure"` // The Availability Zone of the subnet. AvailabilityZone *string `locationName:"availabilityZone" type:"string"` // The number of unused IP addresses in the subnet. Note that the IP addresses // for any stopped instances are considered unavailable. AvailableIpAddressCount *int64 `locationName:"availableIpAddressCount" type:"integer"` // The CIDR block assigned to the subnet. CidrBlock *string `locationName:"cidrBlock" type:"string"` // Indicates whether this is the default subnet for the Availability Zone. DefaultForAz *bool `locationName:"defaultForAz" type:"boolean"` // Indicates whether instances launched in this subnet receive a public IP address. MapPublicIpOnLaunch *bool `locationName:"mapPublicIpOnLaunch" type:"boolean"` // The current state of the subnet. State *string `locationName:"state" type:"string" enum:"SubnetState"` // The ID of the subnet. SubnetId *string `locationName:"subnetId" type:"string"` // Any tags assigned to the subnet. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // The ID of the VPC the subnet is in. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s Subnet) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Subnet) GoString() string { return s.String() } // Describes a tag. type Tag struct { _ struct{} `type:"structure"` // The key of the tag. // // Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode // characters. May not begin with aws: Key *string `locationName:"key" type:"string"` // The value of the tag. // // Constraints: Tag values are case-sensitive and accept a maximum of 255 Unicode // characters. Value *string `locationName:"value" type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Describes a tag. type TagDescription struct { _ struct{} `type:"structure"` // The tag key. Key *string `locationName:"key" type:"string"` // The ID of the resource. For example, ami-1a2b3c4d. ResourceId *string `locationName:"resourceId" type:"string"` // The resource type. ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` // The tag value. Value *string `locationName:"value" type:"string"` } // String returns the string representation func (s TagDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TagDescription) GoString() string { return s.String() } // Information about the Convertible Reserved Instance offering. type TargetConfiguration struct { _ struct{} `type:"structure"` // The number of instances the Convertible Reserved Instance offering can be // applied to. This parameter is reserved and cannot be specified in a request InstanceCount *int64 `locationName:"instanceCount" type:"integer"` // The ID of the Convertible Reserved Instance offering. OfferingId *string `locationName:"offeringId" type:"string"` } // String returns the string representation func (s TargetConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TargetConfiguration) GoString() string { return s.String() } // Details about the target configuration. type TargetConfigurationRequest struct { _ struct{} `type:"structure"` // The number of instances the Covertible Reserved Instance offering can be // applied to. This parameter is reserved and cannot be specified in a request InstanceCount *int64 `type:"integer"` // The Convertible Reserved Instance offering ID. If this isn't included in // the request, the response lists your current Convertible Reserved Instance/s // and their value/s. // // OfferingId is a required field OfferingId *string `type:"string" required:"true"` } // String returns the string representation func (s TargetConfigurationRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TargetConfigurationRequest) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TargetConfigurationRequest) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TargetConfigurationRequest"} if s.OfferingId == nil { invalidParams.Add(request.NewErrParamRequired("OfferingId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The total value of the new Convertible Reserved Instances. type TargetReservationValue struct { _ struct{} `type:"structure"` // The total value of the Convertible Reserved Instances that make up the exchange. // This is the sum of the list value, remaining upfront price, and additional // upfront cost of the exchange. ReservationValue *ReservationValue `locationName:"reservationValue" type:"structure"` // The configuration of the Convertible Reserved Instances that make up the // exchange. TargetConfiguration *TargetConfiguration `locationName:"targetConfiguration" type:"structure"` } // String returns the string representation func (s TargetReservationValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TargetReservationValue) GoString() string { return s.String() } // Contains the parameters for TerminateInstances. type TerminateInstancesInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more instance IDs. // // Constraints: Up to 1000 instance IDs. We recommend breaking up this request // into smaller batches. // // InstanceIds is a required field InstanceIds []*string `locationName:"InstanceId" locationNameList:"InstanceId" type:"list" required:"true"` } // String returns the string representation func (s TerminateInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TerminateInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TerminateInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TerminateInstancesInput"} if s.InstanceIds == nil { invalidParams.Add(request.NewErrParamRequired("InstanceIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of TerminateInstances. type TerminateInstancesOutput struct { _ struct{} `type:"structure"` // Information about one or more terminated instances. TerminatingInstances []*InstanceStateChange `locationName:"instancesSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s TerminateInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TerminateInstancesOutput) GoString() string { return s.String() } // Contains the parameters for UnassignPrivateIpAddresses. type UnassignPrivateIpAddressesInput struct { _ struct{} `type:"structure"` // The ID of the network interface. // // NetworkInterfaceId is a required field NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string" required:"true"` // The secondary private IP addresses to unassign from the network interface. // You can specify this option multiple times to unassign more than one IP address. // // PrivateIpAddresses is a required field PrivateIpAddresses []*string `locationName:"privateIpAddress" locationNameList:"PrivateIpAddress" type:"list" required:"true"` } // String returns the string representation func (s UnassignPrivateIpAddressesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnassignPrivateIpAddressesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UnassignPrivateIpAddressesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UnassignPrivateIpAddressesInput"} if s.NetworkInterfaceId == nil { invalidParams.Add(request.NewErrParamRequired("NetworkInterfaceId")) } if s.PrivateIpAddresses == nil { invalidParams.Add(request.NewErrParamRequired("PrivateIpAddresses")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UnassignPrivateIpAddressesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UnassignPrivateIpAddressesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnassignPrivateIpAddressesOutput) GoString() string { return s.String() } // Contains the parameters for UnmonitorInstances. type UnmonitorInstancesInput struct { _ struct{} `type:"structure"` // Checks whether you have the required permissions for the action, without // actually making the request, and provides an error response. If you have // the required permissions, the error response is DryRunOperation. Otherwise, // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` // One or more instance IDs. // // InstanceIds is a required field InstanceIds []*string `locationName:"InstanceId" locationNameList:"InstanceId" type:"list" required:"true"` } // String returns the string representation func (s UnmonitorInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnmonitorInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UnmonitorInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UnmonitorInstancesInput"} if s.InstanceIds == nil { invalidParams.Add(request.NewErrParamRequired("InstanceIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of UnmonitorInstances. type UnmonitorInstancesOutput struct { _ struct{} `type:"structure"` // Monitoring information for one or more instances. InstanceMonitorings []*InstanceMonitoring `locationName:"instancesSet" locationNameList:"item" type:"list"` } // String returns the string representation func (s UnmonitorInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnmonitorInstancesOutput) GoString() string { return s.String() } // Information about items that were not successfully processed in a batch call. type UnsuccessfulItem struct { _ struct{} `type:"structure"` // Information about the error. // // Error is a required field Error *UnsuccessfulItemError `locationName:"error" type:"structure" required:"true"` // The ID of the resource. ResourceId *string `locationName:"resourceId" type:"string"` } // String returns the string representation func (s UnsuccessfulItem) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnsuccessfulItem) GoString() string { return s.String() } // Information about the error that occurred. For more information about errors, // see Error Codes (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html). type UnsuccessfulItemError struct { _ struct{} `type:"structure"` // The error code. // // Code is a required field Code *string `locationName:"code" type:"string" required:"true"` // The error message accompanying the error code. // // Message is a required field Message *string `locationName:"message" type:"string" required:"true"` } // String returns the string representation func (s UnsuccessfulItemError) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnsuccessfulItemError) GoString() string { return s.String() } // Describes the S3 bucket for the disk image. type UserBucket struct { _ struct{} `type:"structure"` // The name of the S3 bucket where the disk image is located. S3Bucket *string `type:"string"` // The file name of the disk image. S3Key *string `type:"string"` } // String returns the string representation func (s UserBucket) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UserBucket) GoString() string { return s.String() } // Describes the S3 bucket for the disk image. type UserBucketDetails struct { _ struct{} `type:"structure"` // The S3 bucket from which the disk image was created. S3Bucket *string `locationName:"s3Bucket" type:"string"` // The file name of the disk image. S3Key *string `locationName:"s3Key" type:"string"` } // String returns the string representation func (s UserBucketDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UserBucketDetails) GoString() string { return s.String() } // Describes the user data for an instance. type UserData struct { _ struct{} `type:"structure"` // The user data. If you are using an AWS SDK or command line tool, Base64-encoding // is performed for you, and you can load the text from a file. Otherwise, you // must provide Base64-encoded text. Data *string `locationName:"data" type:"string"` } // String returns the string representation func (s UserData) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UserData) GoString() string { return s.String() } // Describes a security group and AWS account ID pair. type UserIdGroupPair struct { _ struct{} `type:"structure"` // The ID of the security group. GroupId *string `locationName:"groupId" type:"string"` // The name of the security group. In a request, use this parameter for a security // group in EC2-Classic or a default VPC only. For a security group in a nondefault // VPC, use the security group ID. GroupName *string `locationName:"groupName" type:"string"` // The status of a VPC peering connection, if applicable. PeeringStatus *string `locationName:"peeringStatus" type:"string"` // The ID of an AWS account. For a referenced security group in another VPC, // the account ID of the referenced security group is returned. // // [EC2-Classic] Required when adding or removing rules that reference a security // group in another AWS account. UserId *string `locationName:"userId" type:"string"` // The ID of the VPC for the referenced security group, if applicable. VpcId *string `locationName:"vpcId" type:"string"` // The ID of the VPC peering connection, if applicable. VpcPeeringConnectionId *string `locationName:"vpcPeeringConnectionId" type:"string"` } // String returns the string representation func (s UserIdGroupPair) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UserIdGroupPair) GoString() string { return s.String() } // Describes telemetry for a VPN tunnel. type VgwTelemetry struct { _ struct{} `type:"structure"` // The number of accepted routes. AcceptedRouteCount *int64 `locationName:"acceptedRouteCount" type:"integer"` // The date and time of the last change in status. LastStatusChange *time.Time `locationName:"lastStatusChange" type:"timestamp" timestampFormat:"iso8601"` // The Internet-routable IP address of the virtual private gateway's outside // interface. OutsideIpAddress *string `locationName:"outsideIpAddress" type:"string"` // The status of the VPN tunnel. Status *string `locationName:"status" type:"string" enum:"TelemetryStatus"` // If an error occurs, a description of the error. StatusMessage *string `locationName:"statusMessage" type:"string"` } // String returns the string representation func (s VgwTelemetry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VgwTelemetry) GoString() string { return s.String() } // Describes a volume. type Volume struct { _ struct{} `type:"structure"` // Information about the volume attachments. Attachments []*VolumeAttachment `locationName:"attachmentSet" locationNameList:"item" type:"list"` // The Availability Zone for the volume. AvailabilityZone *string `locationName:"availabilityZone" type:"string"` // The time stamp when volume creation was initiated. CreateTime *time.Time `locationName:"createTime" type:"timestamp" timestampFormat:"iso8601"` // Indicates whether the volume will be encrypted. Encrypted *bool `locationName:"encrypted" type:"boolean"` // The number of I/O operations per second (IOPS) that the volume supports. // For Provisioned IOPS SSD volumes, this represents the number of IOPS that // are provisioned for the volume. For General Purpose SSD volumes, this represents // the baseline performance of the volume and the rate at which the volume accumulates // I/O credits for bursting. For more information on General Purpose SSD baseline // performance, I/O credits, and bursting, see Amazon EBS Volume Types (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) // in the Amazon Elastic Compute Cloud User Guide. // // Constraint: Range is 100-20000 IOPS for io1 volumes and 100-10000 IOPS for // gp2 volumes. // // Condition: This parameter is required for requests to create io1 volumes; // it is not used in requests to create gp2, st1, sc1, or standard volumes. Iops *int64 `locationName:"iops" type:"integer"` // The full ARN of the AWS Key Management Service (AWS KMS) customer master // key (CMK) that was used to protect the volume encryption key for the volume. KmsKeyId *string `locationName:"kmsKeyId" type:"string"` // The size of the volume, in GiBs. Size *int64 `locationName:"size" type:"integer"` // The snapshot from which the volume was created, if applicable. SnapshotId *string `locationName:"snapshotId" type:"string"` // The volume state. State *string `locationName:"status" type:"string" enum:"VolumeState"` // Any tags assigned to the volume. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // The ID of the volume. VolumeId *string `locationName:"volumeId" type:"string"` // The volume type. This can be gp2 for General Purpose SSD, io1 for Provisioned // IOPS SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, or standard // for Magnetic volumes. VolumeType *string `locationName:"volumeType" type:"string" enum:"VolumeType"` } // String returns the string representation func (s Volume) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Volume) GoString() string { return s.String() } // Describes volume attachment details. type VolumeAttachment struct { _ struct{} `type:"structure"` // The time stamp when the attachment initiated. AttachTime *time.Time `locationName:"attachTime" type:"timestamp" timestampFormat:"iso8601"` // Indicates whether the EBS volume is deleted on instance termination. DeleteOnTermination *bool `locationName:"deleteOnTermination" type:"boolean"` // The device name. Device *string `locationName:"device" type:"string"` // The ID of the instance. InstanceId *string `locationName:"instanceId" type:"string"` // The attachment state of the volume. State *string `locationName:"status" type:"string" enum:"VolumeAttachmentState"` // The ID of the volume. VolumeId *string `locationName:"volumeId" type:"string"` } // String returns the string representation func (s VolumeAttachment) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VolumeAttachment) GoString() string { return s.String() } // Describes an EBS volume. type VolumeDetail struct { _ struct{} `type:"structure"` // The size of the volume, in GiB. // // Size is a required field Size *int64 `locationName:"size" type:"long" required:"true"` } // String returns the string representation func (s VolumeDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VolumeDetail) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *VolumeDetail) Validate() error { invalidParams := request.ErrInvalidParams{Context: "VolumeDetail"} if s.Size == nil { invalidParams.Add(request.NewErrParamRequired("Size")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a volume status operation code. type VolumeStatusAction struct { _ struct{} `type:"structure"` // The code identifying the operation, for example, enable-volume-io. Code *string `locationName:"code" type:"string"` // A description of the operation. Description *string `locationName:"description" type:"string"` // The ID of the event associated with this operation. EventId *string `locationName:"eventId" type:"string"` // The event type associated with this operation. EventType *string `locationName:"eventType" type:"string"` } // String returns the string representation func (s VolumeStatusAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VolumeStatusAction) GoString() string { return s.String() } // Describes a volume status. type VolumeStatusDetails struct { _ struct{} `type:"structure"` // The name of the volume status. Name *string `locationName:"name" type:"string" enum:"VolumeStatusName"` // The intended status of the volume status. Status *string `locationName:"status" type:"string"` } // String returns the string representation func (s VolumeStatusDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VolumeStatusDetails) GoString() string { return s.String() } // Describes a volume status event. type VolumeStatusEvent struct { _ struct{} `type:"structure"` // A description of the event. Description *string `locationName:"description" type:"string"` // The ID of this event. EventId *string `locationName:"eventId" type:"string"` // The type of this event. EventType *string `locationName:"eventType" type:"string"` // The latest end time of the event. NotAfter *time.Time `locationName:"notAfter" type:"timestamp" timestampFormat:"iso8601"` // The earliest start time of the event. NotBefore *time.Time `locationName:"notBefore" type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s VolumeStatusEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VolumeStatusEvent) GoString() string { return s.String() } // Describes the status of a volume. type VolumeStatusInfo struct { _ struct{} `type:"structure"` // The details of the volume status. Details []*VolumeStatusDetails `locationName:"details" locationNameList:"item" type:"list"` // The status of the volume. Status *string `locationName:"status" type:"string" enum:"VolumeStatusInfoStatus"` } // String returns the string representation func (s VolumeStatusInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VolumeStatusInfo) GoString() string { return s.String() } // Describes the volume status. type VolumeStatusItem struct { _ struct{} `type:"structure"` // The details of the operation. Actions []*VolumeStatusAction `locationName:"actionsSet" locationNameList:"item" type:"list"` // The Availability Zone of the volume. AvailabilityZone *string `locationName:"availabilityZone" type:"string"` // A list of events associated with the volume. Events []*VolumeStatusEvent `locationName:"eventsSet" locationNameList:"item" type:"list"` // The volume ID. VolumeId *string `locationName:"volumeId" type:"string"` // The volume status. VolumeStatus *VolumeStatusInfo `locationName:"volumeStatus" type:"structure"` } // String returns the string representation func (s VolumeStatusItem) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VolumeStatusItem) GoString() string { return s.String() } // Describes a VPC. type Vpc struct { _ struct{} `type:"structure"` // The CIDR block for the VPC. CidrBlock *string `locationName:"cidrBlock" type:"string"` // The ID of the set of DHCP options you've associated with the VPC (or default // if the default options are associated with the VPC). DhcpOptionsId *string `locationName:"dhcpOptionsId" type:"string"` // The allowed tenancy of instances launched into the VPC. InstanceTenancy *string `locationName:"instanceTenancy" type:"string" enum:"Tenancy"` // Indicates whether the VPC is the default VPC. IsDefault *bool `locationName:"isDefault" type:"boolean"` // The current state of the VPC. State *string `locationName:"state" type:"string" enum:"VpcState"` // Any tags assigned to the VPC. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // The ID of the VPC. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s Vpc) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Vpc) GoString() string { return s.String() } // Describes an attachment between a virtual private gateway and a VPC. type VpcAttachment struct { _ struct{} `type:"structure"` // The current state of the attachment. State *string `locationName:"state" type:"string" enum:"AttachmentStatus"` // The ID of the VPC. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s VpcAttachment) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VpcAttachment) GoString() string { return s.String() } // Describes whether a VPC is enabled for ClassicLink. type VpcClassicLink struct { _ struct{} `type:"structure"` // Indicates whether the VPC is enabled for ClassicLink. ClassicLinkEnabled *bool `locationName:"classicLinkEnabled" type:"boolean"` // Any tags assigned to the VPC. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // The ID of the VPC. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s VpcClassicLink) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VpcClassicLink) GoString() string { return s.String() } // Describes a VPC endpoint. type VpcEndpoint struct { _ struct{} `type:"structure"` // The date and time the VPC endpoint was created. CreationTimestamp *time.Time `locationName:"creationTimestamp" type:"timestamp" timestampFormat:"iso8601"` // The policy document associated with the endpoint. PolicyDocument *string `locationName:"policyDocument" type:"string"` // One or more route tables associated with the endpoint. RouteTableIds []*string `locationName:"routeTableIdSet" locationNameList:"item" type:"list"` // The name of the AWS service to which the endpoint is associated. ServiceName *string `locationName:"serviceName" type:"string"` // The state of the VPC endpoint. State *string `locationName:"state" type:"string" enum:"State"` // The ID of the VPC endpoint. VpcEndpointId *string `locationName:"vpcEndpointId" type:"string"` // The ID of the VPC to which the endpoint is associated. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s VpcEndpoint) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VpcEndpoint) GoString() string { return s.String() } // Describes a VPC peering connection. type VpcPeeringConnection struct { _ struct{} `type:"structure"` // Information about the accepter VPC. CIDR block information is not returned // when creating a VPC peering connection, or when describing a VPC peering // connection that's in the initiating-request or pending-acceptance state. AccepterVpcInfo *VpcPeeringConnectionVpcInfo `locationName:"accepterVpcInfo" type:"structure"` // The time that an unaccepted VPC peering connection will expire. ExpirationTime *time.Time `locationName:"expirationTime" type:"timestamp" timestampFormat:"iso8601"` // Information about the requester VPC. RequesterVpcInfo *VpcPeeringConnectionVpcInfo `locationName:"requesterVpcInfo" type:"structure"` // The status of the VPC peering connection. Status *VpcPeeringConnectionStateReason `locationName:"status" type:"structure"` // Any tags assigned to the resource. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // The ID of the VPC peering connection. VpcPeeringConnectionId *string `locationName:"vpcPeeringConnectionId" type:"string"` } // String returns the string representation func (s VpcPeeringConnection) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VpcPeeringConnection) GoString() string { return s.String() } // Describes the VPC peering connection options. type VpcPeeringConnectionOptionsDescription struct { _ struct{} `type:"structure"` // Indicates whether a local VPC can resolve public DNS hostnames to private // IP addresses when queried from instances in a peer VPC. AllowDnsResolutionFromRemoteVpc *bool `locationName:"allowDnsResolutionFromRemoteVpc" type:"boolean"` // Indicates whether a local ClassicLink connection can communicate with the // peer VPC over the VPC peering connection. AllowEgressFromLocalClassicLinkToRemoteVpc *bool `locationName:"allowEgressFromLocalClassicLinkToRemoteVpc" type:"boolean"` // Indicates whether a local VPC can communicate with a ClassicLink connection // in the peer VPC over the VPC peering connection. AllowEgressFromLocalVpcToRemoteClassicLink *bool `locationName:"allowEgressFromLocalVpcToRemoteClassicLink" type:"boolean"` } // String returns the string representation func (s VpcPeeringConnectionOptionsDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VpcPeeringConnectionOptionsDescription) GoString() string { return s.String() } // Describes the status of a VPC peering connection. type VpcPeeringConnectionStateReason struct { _ struct{} `type:"structure"` // The status of the VPC peering connection. Code *string `locationName:"code" type:"string" enum:"VpcPeeringConnectionStateReasonCode"` // A message that provides more information about the status, if applicable. Message *string `locationName:"message" type:"string"` } // String returns the string representation func (s VpcPeeringConnectionStateReason) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VpcPeeringConnectionStateReason) GoString() string { return s.String() } // Describes a VPC in a VPC peering connection. type VpcPeeringConnectionVpcInfo struct { _ struct{} `type:"structure"` // The CIDR block for the VPC. CidrBlock *string `locationName:"cidrBlock" type:"string"` // The AWS account ID of the VPC owner. OwnerId *string `locationName:"ownerId" type:"string"` // Information about the VPC peering connection options for the accepter or // requester VPC. PeeringOptions *VpcPeeringConnectionOptionsDescription `locationName:"peeringOptions" type:"structure"` // The ID of the VPC. VpcId *string `locationName:"vpcId" type:"string"` } // String returns the string representation func (s VpcPeeringConnectionVpcInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VpcPeeringConnectionVpcInfo) GoString() string { return s.String() } // Describes a VPN connection. type VpnConnection struct { _ struct{} `type:"structure"` // The configuration information for the VPN connection's customer gateway (in // the native XML format). This element is always present in the CreateVpnConnection // response; however, it's present in the DescribeVpnConnections response only // if the VPN connection is in the pending or available state. CustomerGatewayConfiguration *string `locationName:"customerGatewayConfiguration" type:"string"` // The ID of the customer gateway at your end of the VPN connection. CustomerGatewayId *string `locationName:"customerGatewayId" type:"string"` // The VPN connection options. Options *VpnConnectionOptions `locationName:"options" type:"structure"` // The static routes associated with the VPN connection. Routes []*VpnStaticRoute `locationName:"routes" locationNameList:"item" type:"list"` // The current state of the VPN connection. State *string `locationName:"state" type:"string" enum:"VpnState"` // Any tags assigned to the VPN connection. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // The type of VPN connection. Type *string `locationName:"type" type:"string" enum:"GatewayType"` // Information about the VPN tunnel. VgwTelemetry []*VgwTelemetry `locationName:"vgwTelemetry" locationNameList:"item" type:"list"` // The ID of the VPN connection. VpnConnectionId *string `locationName:"vpnConnectionId" type:"string"` // The ID of the virtual private gateway at the AWS side of the VPN connection. VpnGatewayId *string `locationName:"vpnGatewayId" type:"string"` } // String returns the string representation func (s VpnConnection) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VpnConnection) GoString() string { return s.String() } // Describes VPN connection options. type VpnConnectionOptions struct { _ struct{} `type:"structure"` // Indicates whether the VPN connection uses static routes only. Static routes // must be used for devices that don't support BGP. StaticRoutesOnly *bool `locationName:"staticRoutesOnly" type:"boolean"` } // String returns the string representation func (s VpnConnectionOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VpnConnectionOptions) GoString() string { return s.String() } // Describes VPN connection options. type VpnConnectionOptionsSpecification struct { _ struct{} `type:"structure"` // Indicates whether the VPN connection uses static routes only. Static routes // must be used for devices that don't support BGP. StaticRoutesOnly *bool `locationName:"staticRoutesOnly" type:"boolean"` } // String returns the string representation func (s VpnConnectionOptionsSpecification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VpnConnectionOptionsSpecification) GoString() string { return s.String() } // Describes a virtual private gateway. type VpnGateway struct { _ struct{} `type:"structure"` // The Availability Zone where the virtual private gateway was created, if applicable. // This field may be empty or not returned. AvailabilityZone *string `locationName:"availabilityZone" type:"string"` // The current state of the virtual private gateway. State *string `locationName:"state" type:"string" enum:"VpnState"` // Any tags assigned to the virtual private gateway. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` // The type of VPN connection the virtual private gateway supports. Type *string `locationName:"type" type:"string" enum:"GatewayType"` // Any VPCs attached to the virtual private gateway. VpcAttachments []*VpcAttachment `locationName:"attachments" locationNameList:"item" type:"list"` // The ID of the virtual private gateway. VpnGatewayId *string `locationName:"vpnGatewayId" type:"string"` } // String returns the string representation func (s VpnGateway) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VpnGateway) GoString() string { return s.String() } // Describes a static route for a VPN connection. type VpnStaticRoute struct { _ struct{} `type:"structure"` // The CIDR block associated with the local subnet of the customer data center. DestinationCidrBlock *string `locationName:"destinationCidrBlock" type:"string"` // Indicates how the routes were provided. Source *string `locationName:"source" type:"string" enum:"VpnStaticRouteSource"` // The current state of the static route. State *string `locationName:"state" type:"string" enum:"VpnState"` } // String returns the string representation func (s VpnStaticRoute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VpnStaticRoute) GoString() string { return s.String() } const ( // AccountAttributeNameSupportedPlatforms is a AccountAttributeName enum value AccountAttributeNameSupportedPlatforms = "supported-platforms" // AccountAttributeNameDefaultVpc is a AccountAttributeName enum value AccountAttributeNameDefaultVpc = "default-vpc" ) const ( // ActivityStatusError is a ActivityStatus enum value ActivityStatusError = "error" // ActivityStatusPendingFulfillment is a ActivityStatus enum value ActivityStatusPendingFulfillment = "pending_fulfillment" // ActivityStatusPendingTermination is a ActivityStatus enum value ActivityStatusPendingTermination = "pending_termination" // ActivityStatusFulfilled is a ActivityStatus enum value ActivityStatusFulfilled = "fulfilled" ) const ( // AffinityDefault is a Affinity enum value AffinityDefault = "default" // AffinityHost is a Affinity enum value AffinityHost = "host" ) const ( // AllocationStateAvailable is a AllocationState enum value AllocationStateAvailable = "available" // AllocationStateUnderAssessment is a AllocationState enum value AllocationStateUnderAssessment = "under-assessment" // AllocationStatePermanentFailure is a AllocationState enum value AllocationStatePermanentFailure = "permanent-failure" // AllocationStateReleased is a AllocationState enum value AllocationStateReleased = "released" // AllocationStateReleasedPermanentFailure is a AllocationState enum value AllocationStateReleasedPermanentFailure = "released-permanent-failure" ) const ( // AllocationStrategyLowestPrice is a AllocationStrategy enum value AllocationStrategyLowestPrice = "lowestPrice" // AllocationStrategyDiversified is a AllocationStrategy enum value AllocationStrategyDiversified = "diversified" ) const ( // ArchitectureValuesI386 is a ArchitectureValues enum value ArchitectureValuesI386 = "i386" // ArchitectureValuesX8664 is a ArchitectureValues enum value ArchitectureValuesX8664 = "x86_64" ) const ( // AttachmentStatusAttaching is a AttachmentStatus enum value AttachmentStatusAttaching = "attaching" // AttachmentStatusAttached is a AttachmentStatus enum value AttachmentStatusAttached = "attached" // AttachmentStatusDetaching is a AttachmentStatus enum value AttachmentStatusDetaching = "detaching" // AttachmentStatusDetached is a AttachmentStatus enum value AttachmentStatusDetached = "detached" ) const ( // AutoPlacementOn is a AutoPlacement enum value AutoPlacementOn = "on" // AutoPlacementOff is a AutoPlacement enum value AutoPlacementOff = "off" ) const ( // AvailabilityZoneStateAvailable is a AvailabilityZoneState enum value AvailabilityZoneStateAvailable = "available" // AvailabilityZoneStateInformation is a AvailabilityZoneState enum value AvailabilityZoneStateInformation = "information" // AvailabilityZoneStateImpaired is a AvailabilityZoneState enum value AvailabilityZoneStateImpaired = "impaired" // AvailabilityZoneStateUnavailable is a AvailabilityZoneState enum value AvailabilityZoneStateUnavailable = "unavailable" ) const ( // BatchStateSubmitted is a BatchState enum value BatchStateSubmitted = "submitted" // BatchStateActive is a BatchState enum value BatchStateActive = "active" // BatchStateCancelled is a BatchState enum value BatchStateCancelled = "cancelled" // BatchStateFailed is a BatchState enum value BatchStateFailed = "failed" // BatchStateCancelledRunning is a BatchState enum value BatchStateCancelledRunning = "cancelled_running" // BatchStateCancelledTerminating is a BatchState enum value BatchStateCancelledTerminating = "cancelled_terminating" // BatchStateModifying is a BatchState enum value BatchStateModifying = "modifying" ) const ( // BundleTaskStatePending is a BundleTaskState enum value BundleTaskStatePending = "pending" // BundleTaskStateWaitingForShutdown is a BundleTaskState enum value BundleTaskStateWaitingForShutdown = "waiting-for-shutdown" // BundleTaskStateBundling is a BundleTaskState enum value BundleTaskStateBundling = "bundling" // BundleTaskStateStoring is a BundleTaskState enum value BundleTaskStateStoring = "storing" // BundleTaskStateCancelling is a BundleTaskState enum value BundleTaskStateCancelling = "cancelling" // BundleTaskStateComplete is a BundleTaskState enum value BundleTaskStateComplete = "complete" // BundleTaskStateFailed is a BundleTaskState enum value BundleTaskStateFailed = "failed" ) const ( // CancelBatchErrorCodeFleetRequestIdDoesNotExist is a CancelBatchErrorCode enum value CancelBatchErrorCodeFleetRequestIdDoesNotExist = "fleetRequestIdDoesNotExist" // CancelBatchErrorCodeFleetRequestIdMalformed is a CancelBatchErrorCode enum value CancelBatchErrorCodeFleetRequestIdMalformed = "fleetRequestIdMalformed" // CancelBatchErrorCodeFleetRequestNotInCancellableState is a CancelBatchErrorCode enum value CancelBatchErrorCodeFleetRequestNotInCancellableState = "fleetRequestNotInCancellableState" // CancelBatchErrorCodeUnexpectedError is a CancelBatchErrorCode enum value CancelBatchErrorCodeUnexpectedError = "unexpectedError" ) const ( // CancelSpotInstanceRequestStateActive is a CancelSpotInstanceRequestState enum value CancelSpotInstanceRequestStateActive = "active" // CancelSpotInstanceRequestStateOpen is a CancelSpotInstanceRequestState enum value CancelSpotInstanceRequestStateOpen = "open" // CancelSpotInstanceRequestStateClosed is a CancelSpotInstanceRequestState enum value CancelSpotInstanceRequestStateClosed = "closed" // CancelSpotInstanceRequestStateCancelled is a CancelSpotInstanceRequestState enum value CancelSpotInstanceRequestStateCancelled = "cancelled" // CancelSpotInstanceRequestStateCompleted is a CancelSpotInstanceRequestState enum value CancelSpotInstanceRequestStateCompleted = "completed" ) const ( // ContainerFormatOva is a ContainerFormat enum value ContainerFormatOva = "ova" ) const ( // ConversionTaskStateActive is a ConversionTaskState enum value ConversionTaskStateActive = "active" // ConversionTaskStateCancelling is a ConversionTaskState enum value ConversionTaskStateCancelling = "cancelling" // ConversionTaskStateCancelled is a ConversionTaskState enum value ConversionTaskStateCancelled = "cancelled" // ConversionTaskStateCompleted is a ConversionTaskState enum value ConversionTaskStateCompleted = "completed" ) const ( // CurrencyCodeValuesUsd is a CurrencyCodeValues enum value CurrencyCodeValuesUsd = "USD" ) const ( // DatafeedSubscriptionStateActive is a DatafeedSubscriptionState enum value DatafeedSubscriptionStateActive = "Active" // DatafeedSubscriptionStateInactive is a DatafeedSubscriptionState enum value DatafeedSubscriptionStateInactive = "Inactive" ) const ( // DeviceTypeEbs is a DeviceType enum value DeviceTypeEbs = "ebs" // DeviceTypeInstanceStore is a DeviceType enum value DeviceTypeInstanceStore = "instance-store" ) const ( // DiskImageFormatVmdk is a DiskImageFormat enum value DiskImageFormatVmdk = "VMDK" // DiskImageFormatRaw is a DiskImageFormat enum value DiskImageFormatRaw = "RAW" // DiskImageFormatVhd is a DiskImageFormat enum value DiskImageFormatVhd = "VHD" ) const ( // DomainTypeVpc is a DomainType enum value DomainTypeVpc = "vpc" // DomainTypeStandard is a DomainType enum value DomainTypeStandard = "standard" ) const ( // EventCodeInstanceReboot is a EventCode enum value EventCodeInstanceReboot = "instance-reboot" // EventCodeSystemReboot is a EventCode enum value EventCodeSystemReboot = "system-reboot" // EventCodeSystemMaintenance is a EventCode enum value EventCodeSystemMaintenance = "system-maintenance" // EventCodeInstanceRetirement is a EventCode enum value EventCodeInstanceRetirement = "instance-retirement" // EventCodeInstanceStop is a EventCode enum value EventCodeInstanceStop = "instance-stop" ) const ( // EventTypeInstanceChange is a EventType enum value EventTypeInstanceChange = "instanceChange" // EventTypeFleetRequestChange is a EventType enum value EventTypeFleetRequestChange = "fleetRequestChange" // EventTypeError is a EventType enum value EventTypeError = "error" ) const ( // ExcessCapacityTerminationPolicyNoTermination is a ExcessCapacityTerminationPolicy enum value ExcessCapacityTerminationPolicyNoTermination = "noTermination" // ExcessCapacityTerminationPolicyDefault is a ExcessCapacityTerminationPolicy enum value ExcessCapacityTerminationPolicyDefault = "default" ) const ( // ExportEnvironmentCitrix is a ExportEnvironment enum value ExportEnvironmentCitrix = "citrix" // ExportEnvironmentVmware is a ExportEnvironment enum value ExportEnvironmentVmware = "vmware" // ExportEnvironmentMicrosoft is a ExportEnvironment enum value ExportEnvironmentMicrosoft = "microsoft" ) const ( // ExportTaskStateActive is a ExportTaskState enum value ExportTaskStateActive = "active" // ExportTaskStateCancelling is a ExportTaskState enum value ExportTaskStateCancelling = "cancelling" // ExportTaskStateCancelled is a ExportTaskState enum value ExportTaskStateCancelled = "cancelled" // ExportTaskStateCompleted is a ExportTaskState enum value ExportTaskStateCompleted = "completed" ) const ( // FleetTypeRequest is a FleetType enum value FleetTypeRequest = "request" // FleetTypeMaintain is a FleetType enum value FleetTypeMaintain = "maintain" ) const ( // FlowLogsResourceTypeVpc is a FlowLogsResourceType enum value FlowLogsResourceTypeVpc = "VPC" // FlowLogsResourceTypeSubnet is a FlowLogsResourceType enum value FlowLogsResourceTypeSubnet = "Subnet" // FlowLogsResourceTypeNetworkInterface is a FlowLogsResourceType enum value FlowLogsResourceTypeNetworkInterface = "NetworkInterface" ) const ( // GatewayTypeIpsec1 is a GatewayType enum value GatewayTypeIpsec1 = "ipsec.1" ) const ( // HostTenancyDedicated is a HostTenancy enum value HostTenancyDedicated = "dedicated" // HostTenancyHost is a HostTenancy enum value HostTenancyHost = "host" ) const ( // HypervisorTypeOvm is a HypervisorType enum value HypervisorTypeOvm = "ovm" // HypervisorTypeXen is a HypervisorType enum value HypervisorTypeXen = "xen" ) const ( // ImageAttributeNameDescription is a ImageAttributeName enum value ImageAttributeNameDescription = "description" // ImageAttributeNameKernel is a ImageAttributeName enum value ImageAttributeNameKernel = "kernel" // ImageAttributeNameRamdisk is a ImageAttributeName enum value ImageAttributeNameRamdisk = "ramdisk" // ImageAttributeNameLaunchPermission is a ImageAttributeName enum value ImageAttributeNameLaunchPermission = "launchPermission" // ImageAttributeNameProductCodes is a ImageAttributeName enum value ImageAttributeNameProductCodes = "productCodes" // ImageAttributeNameBlockDeviceMapping is a ImageAttributeName enum value ImageAttributeNameBlockDeviceMapping = "blockDeviceMapping" // ImageAttributeNameSriovNetSupport is a ImageAttributeName enum value ImageAttributeNameSriovNetSupport = "sriovNetSupport" ) const ( // ImageStatePending is a ImageState enum value ImageStatePending = "pending" // ImageStateAvailable is a ImageState enum value ImageStateAvailable = "available" // ImageStateInvalid is a ImageState enum value ImageStateInvalid = "invalid" // ImageStateDeregistered is a ImageState enum value ImageStateDeregistered = "deregistered" // ImageStateTransient is a ImageState enum value ImageStateTransient = "transient" // ImageStateFailed is a ImageState enum value ImageStateFailed = "failed" // ImageStateError is a ImageState enum value ImageStateError = "error" ) const ( // ImageTypeValuesMachine is a ImageTypeValues enum value ImageTypeValuesMachine = "machine" // ImageTypeValuesKernel is a ImageTypeValues enum value ImageTypeValuesKernel = "kernel" // ImageTypeValuesRamdisk is a ImageTypeValues enum value ImageTypeValuesRamdisk = "ramdisk" ) const ( // InstanceAttributeNameInstanceType is a InstanceAttributeName enum value InstanceAttributeNameInstanceType = "instanceType" // InstanceAttributeNameKernel is a InstanceAttributeName enum value InstanceAttributeNameKernel = "kernel" // InstanceAttributeNameRamdisk is a InstanceAttributeName enum value InstanceAttributeNameRamdisk = "ramdisk" // InstanceAttributeNameUserData is a InstanceAttributeName enum value InstanceAttributeNameUserData = "userData" // InstanceAttributeNameDisableApiTermination is a InstanceAttributeName enum value InstanceAttributeNameDisableApiTermination = "disableApiTermination" // InstanceAttributeNameInstanceInitiatedShutdownBehavior is a InstanceAttributeName enum value InstanceAttributeNameInstanceInitiatedShutdownBehavior = "instanceInitiatedShutdownBehavior" // InstanceAttributeNameRootDeviceName is a InstanceAttributeName enum value InstanceAttributeNameRootDeviceName = "rootDeviceName" // InstanceAttributeNameBlockDeviceMapping is a InstanceAttributeName enum value InstanceAttributeNameBlockDeviceMapping = "blockDeviceMapping" // InstanceAttributeNameProductCodes is a InstanceAttributeName enum value InstanceAttributeNameProductCodes = "productCodes" // InstanceAttributeNameSourceDestCheck is a InstanceAttributeName enum value InstanceAttributeNameSourceDestCheck = "sourceDestCheck" // InstanceAttributeNameGroupSet is a InstanceAttributeName enum value InstanceAttributeNameGroupSet = "groupSet" // InstanceAttributeNameEbsOptimized is a InstanceAttributeName enum value InstanceAttributeNameEbsOptimized = "ebsOptimized" // InstanceAttributeNameSriovNetSupport is a InstanceAttributeName enum value InstanceAttributeNameSriovNetSupport = "sriovNetSupport" // InstanceAttributeNameEnaSupport is a InstanceAttributeName enum value InstanceAttributeNameEnaSupport = "enaSupport" ) const ( // InstanceLifecycleTypeSpot is a InstanceLifecycleType enum value InstanceLifecycleTypeSpot = "spot" // InstanceLifecycleTypeScheduled is a InstanceLifecycleType enum value InstanceLifecycleTypeScheduled = "scheduled" ) const ( // InstanceStateNamePending is a InstanceStateName enum value InstanceStateNamePending = "pending" // InstanceStateNameRunning is a InstanceStateName enum value InstanceStateNameRunning = "running" // InstanceStateNameShuttingDown is a InstanceStateName enum value InstanceStateNameShuttingDown = "shutting-down" // InstanceStateNameTerminated is a InstanceStateName enum value InstanceStateNameTerminated = "terminated" // InstanceStateNameStopping is a InstanceStateName enum value InstanceStateNameStopping = "stopping" // InstanceStateNameStopped is a InstanceStateName enum value InstanceStateNameStopped = "stopped" ) const ( // InstanceTypeT1Micro is a InstanceType enum value InstanceTypeT1Micro = "t1.micro" // InstanceTypeT2Nano is a InstanceType enum value InstanceTypeT2Nano = "t2.nano" // InstanceTypeT2Micro is a InstanceType enum value InstanceTypeT2Micro = "t2.micro" // InstanceTypeT2Small is a InstanceType enum value InstanceTypeT2Small = "t2.small" // InstanceTypeT2Medium is a InstanceType enum value InstanceTypeT2Medium = "t2.medium" // InstanceTypeT2Large is a InstanceType enum value InstanceTypeT2Large = "t2.large" // InstanceTypeM1Small is a InstanceType enum value InstanceTypeM1Small = "m1.small" // InstanceTypeM1Medium is a InstanceType enum value InstanceTypeM1Medium = "m1.medium" // InstanceTypeM1Large is a InstanceType enum value InstanceTypeM1Large = "m1.large" // InstanceTypeM1Xlarge is a InstanceType enum value InstanceTypeM1Xlarge = "m1.xlarge" // InstanceTypeM3Medium is a InstanceType enum value InstanceTypeM3Medium = "m3.medium" // InstanceTypeM3Large is a InstanceType enum value InstanceTypeM3Large = "m3.large" // InstanceTypeM3Xlarge is a InstanceType enum value InstanceTypeM3Xlarge = "m3.xlarge" // InstanceTypeM32xlarge is a InstanceType enum value InstanceTypeM32xlarge = "m3.2xlarge" // InstanceTypeM4Large is a InstanceType enum value InstanceTypeM4Large = "m4.large" // InstanceTypeM4Xlarge is a InstanceType enum value InstanceTypeM4Xlarge = "m4.xlarge" // InstanceTypeM42xlarge is a InstanceType enum value InstanceTypeM42xlarge = "m4.2xlarge" // InstanceTypeM44xlarge is a InstanceType enum value InstanceTypeM44xlarge = "m4.4xlarge" // InstanceTypeM410xlarge is a InstanceType enum value InstanceTypeM410xlarge = "m4.10xlarge" // InstanceTypeM416xlarge is a InstanceType enum value InstanceTypeM416xlarge = "m4.16xlarge" // InstanceTypeM2Xlarge is a InstanceType enum value InstanceTypeM2Xlarge = "m2.xlarge" // InstanceTypeM22xlarge is a InstanceType enum value InstanceTypeM22xlarge = "m2.2xlarge" // InstanceTypeM24xlarge is a InstanceType enum value InstanceTypeM24xlarge = "m2.4xlarge" // InstanceTypeCr18xlarge is a InstanceType enum value InstanceTypeCr18xlarge = "cr1.8xlarge" // InstanceTypeR3Large is a InstanceType enum value InstanceTypeR3Large = "r3.large" // InstanceTypeR3Xlarge is a InstanceType enum value InstanceTypeR3Xlarge = "r3.xlarge" // InstanceTypeR32xlarge is a InstanceType enum value InstanceTypeR32xlarge = "r3.2xlarge" // InstanceTypeR34xlarge is a InstanceType enum value InstanceTypeR34xlarge = "r3.4xlarge" // InstanceTypeR38xlarge is a InstanceType enum value InstanceTypeR38xlarge = "r3.8xlarge" // InstanceTypeX116xlarge is a InstanceType enum value InstanceTypeX116xlarge = "x1.16xlarge" // InstanceTypeX132xlarge is a InstanceType enum value InstanceTypeX132xlarge = "x1.32xlarge" // InstanceTypeI2Xlarge is a InstanceType enum value InstanceTypeI2Xlarge = "i2.xlarge" // InstanceTypeI22xlarge is a InstanceType enum value InstanceTypeI22xlarge = "i2.2xlarge" // InstanceTypeI24xlarge is a InstanceType enum value InstanceTypeI24xlarge = "i2.4xlarge" // InstanceTypeI28xlarge is a InstanceType enum value InstanceTypeI28xlarge = "i2.8xlarge" // InstanceTypeHi14xlarge is a InstanceType enum value InstanceTypeHi14xlarge = "hi1.4xlarge" // InstanceTypeHs18xlarge is a InstanceType enum value InstanceTypeHs18xlarge = "hs1.8xlarge" // InstanceTypeC1Medium is a InstanceType enum value InstanceTypeC1Medium = "c1.medium" // InstanceTypeC1Xlarge is a InstanceType enum value InstanceTypeC1Xlarge = "c1.xlarge" // InstanceTypeC3Large is a InstanceType enum value InstanceTypeC3Large = "c3.large" // InstanceTypeC3Xlarge is a InstanceType enum value InstanceTypeC3Xlarge = "c3.xlarge" // InstanceTypeC32xlarge is a InstanceType enum value InstanceTypeC32xlarge = "c3.2xlarge" // InstanceTypeC34xlarge is a InstanceType enum value InstanceTypeC34xlarge = "c3.4xlarge" // InstanceTypeC38xlarge is a InstanceType enum value InstanceTypeC38xlarge = "c3.8xlarge" // InstanceTypeC4Large is a InstanceType enum value InstanceTypeC4Large = "c4.large" // InstanceTypeC4Xlarge is a InstanceType enum value InstanceTypeC4Xlarge = "c4.xlarge" // InstanceTypeC42xlarge is a InstanceType enum value InstanceTypeC42xlarge = "c4.2xlarge" // InstanceTypeC44xlarge is a InstanceType enum value InstanceTypeC44xlarge = "c4.4xlarge" // InstanceTypeC48xlarge is a InstanceType enum value InstanceTypeC48xlarge = "c4.8xlarge" // InstanceTypeCc14xlarge is a InstanceType enum value InstanceTypeCc14xlarge = "cc1.4xlarge" // InstanceTypeCc28xlarge is a InstanceType enum value InstanceTypeCc28xlarge = "cc2.8xlarge" // InstanceTypeG22xlarge is a InstanceType enum value InstanceTypeG22xlarge = "g2.2xlarge" // InstanceTypeG28xlarge is a InstanceType enum value InstanceTypeG28xlarge = "g2.8xlarge" // InstanceTypeCg14xlarge is a InstanceType enum value InstanceTypeCg14xlarge = "cg1.4xlarge" // InstanceTypeP2Xlarge is a InstanceType enum value InstanceTypeP2Xlarge = "p2.xlarge" // InstanceTypeP28xlarge is a InstanceType enum value InstanceTypeP28xlarge = "p2.8xlarge" // InstanceTypeP216xlarge is a InstanceType enum value InstanceTypeP216xlarge = "p2.16xlarge" // InstanceTypeD2Xlarge is a InstanceType enum value InstanceTypeD2Xlarge = "d2.xlarge" // InstanceTypeD22xlarge is a InstanceType enum value InstanceTypeD22xlarge = "d2.2xlarge" // InstanceTypeD24xlarge is a InstanceType enum value InstanceTypeD24xlarge = "d2.4xlarge" // InstanceTypeD28xlarge is a InstanceType enum value InstanceTypeD28xlarge = "d2.8xlarge" ) const ( // ListingStateAvailable is a ListingState enum value ListingStateAvailable = "available" // ListingStateSold is a ListingState enum value ListingStateSold = "sold" // ListingStateCancelled is a ListingState enum value ListingStateCancelled = "cancelled" // ListingStatePending is a ListingState enum value ListingStatePending = "pending" ) const ( // ListingStatusActive is a ListingStatus enum value ListingStatusActive = "active" // ListingStatusPending is a ListingStatus enum value ListingStatusPending = "pending" // ListingStatusCancelled is a ListingStatus enum value ListingStatusCancelled = "cancelled" // ListingStatusClosed is a ListingStatus enum value ListingStatusClosed = "closed" ) const ( // MonitoringStateDisabled is a MonitoringState enum value MonitoringStateDisabled = "disabled" // MonitoringStateDisabling is a MonitoringState enum value MonitoringStateDisabling = "disabling" // MonitoringStateEnabled is a MonitoringState enum value MonitoringStateEnabled = "enabled" // MonitoringStatePending is a MonitoringState enum value MonitoringStatePending = "pending" ) const ( // MoveStatusMovingToVpc is a MoveStatus enum value MoveStatusMovingToVpc = "movingToVpc" // MoveStatusRestoringToClassic is a MoveStatus enum value MoveStatusRestoringToClassic = "restoringToClassic" ) const ( // NatGatewayStatePending is a NatGatewayState enum value NatGatewayStatePending = "pending" // NatGatewayStateFailed is a NatGatewayState enum value NatGatewayStateFailed = "failed" // NatGatewayStateAvailable is a NatGatewayState enum value NatGatewayStateAvailable = "available" // NatGatewayStateDeleting is a NatGatewayState enum value NatGatewayStateDeleting = "deleting" // NatGatewayStateDeleted is a NatGatewayState enum value NatGatewayStateDeleted = "deleted" ) const ( // NetworkInterfaceAttributeDescription is a NetworkInterfaceAttribute enum value NetworkInterfaceAttributeDescription = "description" // NetworkInterfaceAttributeGroupSet is a NetworkInterfaceAttribute enum value NetworkInterfaceAttributeGroupSet = "groupSet" // NetworkInterfaceAttributeSourceDestCheck is a NetworkInterfaceAttribute enum value NetworkInterfaceAttributeSourceDestCheck = "sourceDestCheck" // NetworkInterfaceAttributeAttachment is a NetworkInterfaceAttribute enum value NetworkInterfaceAttributeAttachment = "attachment" ) const ( // NetworkInterfaceStatusAvailable is a NetworkInterfaceStatus enum value NetworkInterfaceStatusAvailable = "available" // NetworkInterfaceStatusAttaching is a NetworkInterfaceStatus enum value NetworkInterfaceStatusAttaching = "attaching" // NetworkInterfaceStatusInUse is a NetworkInterfaceStatus enum value NetworkInterfaceStatusInUse = "in-use" // NetworkInterfaceStatusDetaching is a NetworkInterfaceStatus enum value NetworkInterfaceStatusDetaching = "detaching" ) const ( // NetworkInterfaceTypeInterface is a NetworkInterfaceType enum value NetworkInterfaceTypeInterface = "interface" // NetworkInterfaceTypeNatGateway is a NetworkInterfaceType enum value NetworkInterfaceTypeNatGateway = "natGateway" ) const ( // OfferingClassTypeStandard is a OfferingClassType enum value OfferingClassTypeStandard = "standard" // OfferingClassTypeConvertible is a OfferingClassType enum value OfferingClassTypeConvertible = "convertible" ) const ( // OfferingTypeValuesHeavyUtilization is a OfferingTypeValues enum value OfferingTypeValuesHeavyUtilization = "Heavy Utilization" // OfferingTypeValuesMediumUtilization is a OfferingTypeValues enum value OfferingTypeValuesMediumUtilization = "Medium Utilization" // OfferingTypeValuesLightUtilization is a OfferingTypeValues enum value OfferingTypeValuesLightUtilization = "Light Utilization" // OfferingTypeValuesNoUpfront is a OfferingTypeValues enum value OfferingTypeValuesNoUpfront = "No Upfront" // OfferingTypeValuesPartialUpfront is a OfferingTypeValues enum value OfferingTypeValuesPartialUpfront = "Partial Upfront" // OfferingTypeValuesAllUpfront is a OfferingTypeValues enum value OfferingTypeValuesAllUpfront = "All Upfront" ) const ( // OperationTypeAdd is a OperationType enum value OperationTypeAdd = "add" // OperationTypeRemove is a OperationType enum value OperationTypeRemove = "remove" ) const ( // PaymentOptionAllUpfront is a PaymentOption enum value PaymentOptionAllUpfront = "AllUpfront" // PaymentOptionPartialUpfront is a PaymentOption enum value PaymentOptionPartialUpfront = "PartialUpfront" // PaymentOptionNoUpfront is a PaymentOption enum value PaymentOptionNoUpfront = "NoUpfront" ) const ( // PermissionGroupAll is a PermissionGroup enum value PermissionGroupAll = "all" ) const ( // PlacementGroupStatePending is a PlacementGroupState enum value PlacementGroupStatePending = "pending" // PlacementGroupStateAvailable is a PlacementGroupState enum value PlacementGroupStateAvailable = "available" // PlacementGroupStateDeleting is a PlacementGroupState enum value PlacementGroupStateDeleting = "deleting" // PlacementGroupStateDeleted is a PlacementGroupState enum value PlacementGroupStateDeleted = "deleted" ) const ( // PlacementStrategyCluster is a PlacementStrategy enum value PlacementStrategyCluster = "cluster" ) const ( // PlatformValuesWindows is a PlatformValues enum value PlatformValuesWindows = "Windows" ) const ( // ProductCodeValuesDevpay is a ProductCodeValues enum value ProductCodeValuesDevpay = "devpay" // ProductCodeValuesMarketplace is a ProductCodeValues enum value ProductCodeValuesMarketplace = "marketplace" ) const ( // RIProductDescriptionLinuxUnix is a RIProductDescription enum value RIProductDescriptionLinuxUnix = "Linux/UNIX" // RIProductDescriptionLinuxUnixamazonVpc is a RIProductDescription enum value RIProductDescriptionLinuxUnixamazonVpc = "Linux/UNIX (Amazon VPC)" // RIProductDescriptionWindows is a RIProductDescription enum value RIProductDescriptionWindows = "Windows" // RIProductDescriptionWindowsAmazonVpc is a RIProductDescription enum value RIProductDescriptionWindowsAmazonVpc = "Windows (Amazon VPC)" ) const ( // RecurringChargeFrequencyHourly is a RecurringChargeFrequency enum value RecurringChargeFrequencyHourly = "Hourly" ) const ( // ReportInstanceReasonCodesInstanceStuckInState is a ReportInstanceReasonCodes enum value ReportInstanceReasonCodesInstanceStuckInState = "instance-stuck-in-state" // ReportInstanceReasonCodesUnresponsive is a ReportInstanceReasonCodes enum value ReportInstanceReasonCodesUnresponsive = "unresponsive" // ReportInstanceReasonCodesNotAcceptingCredentials is a ReportInstanceReasonCodes enum value ReportInstanceReasonCodesNotAcceptingCredentials = "not-accepting-credentials" // ReportInstanceReasonCodesPasswordNotAvailable is a ReportInstanceReasonCodes enum value ReportInstanceReasonCodesPasswordNotAvailable = "password-not-available" // ReportInstanceReasonCodesPerformanceNetwork is a ReportInstanceReasonCodes enum value ReportInstanceReasonCodesPerformanceNetwork = "performance-network" // ReportInstanceReasonCodesPerformanceInstanceStore is a ReportInstanceReasonCodes enum value ReportInstanceReasonCodesPerformanceInstanceStore = "performance-instance-store" // ReportInstanceReasonCodesPerformanceEbsVolume is a ReportInstanceReasonCodes enum value ReportInstanceReasonCodesPerformanceEbsVolume = "performance-ebs-volume" // ReportInstanceReasonCodesPerformanceOther is a ReportInstanceReasonCodes enum value ReportInstanceReasonCodesPerformanceOther = "performance-other" // ReportInstanceReasonCodesOther is a ReportInstanceReasonCodes enum value ReportInstanceReasonCodesOther = "other" ) const ( // ReportStatusTypeOk is a ReportStatusType enum value ReportStatusTypeOk = "ok" // ReportStatusTypeImpaired is a ReportStatusType enum value ReportStatusTypeImpaired = "impaired" ) const ( // ReservationStatePaymentPending is a ReservationState enum value ReservationStatePaymentPending = "payment-pending" // ReservationStatePaymentFailed is a ReservationState enum value ReservationStatePaymentFailed = "payment-failed" // ReservationStateActive is a ReservationState enum value ReservationStateActive = "active" // ReservationStateRetired is a ReservationState enum value ReservationStateRetired = "retired" ) const ( // ReservedInstanceStatePaymentPending is a ReservedInstanceState enum value ReservedInstanceStatePaymentPending = "payment-pending" // ReservedInstanceStateActive is a ReservedInstanceState enum value ReservedInstanceStateActive = "active" // ReservedInstanceStatePaymentFailed is a ReservedInstanceState enum value ReservedInstanceStatePaymentFailed = "payment-failed" // ReservedInstanceStateRetired is a ReservedInstanceState enum value ReservedInstanceStateRetired = "retired" ) const ( // ResetImageAttributeNameLaunchPermission is a ResetImageAttributeName enum value ResetImageAttributeNameLaunchPermission = "launchPermission" ) const ( // ResourceTypeCustomerGateway is a ResourceType enum value ResourceTypeCustomerGateway = "customer-gateway" // ResourceTypeDhcpOptions is a ResourceType enum value ResourceTypeDhcpOptions = "dhcp-options" // ResourceTypeImage is a ResourceType enum value ResourceTypeImage = "image" // ResourceTypeInstance is a ResourceType enum value ResourceTypeInstance = "instance" // ResourceTypeInternetGateway is a ResourceType enum value ResourceTypeInternetGateway = "internet-gateway" // ResourceTypeNetworkAcl is a ResourceType enum value ResourceTypeNetworkAcl = "network-acl" // ResourceTypeNetworkInterface is a ResourceType enum value ResourceTypeNetworkInterface = "network-interface" // ResourceTypeReservedInstances is a ResourceType enum value ResourceTypeReservedInstances = "reserved-instances" // ResourceTypeRouteTable is a ResourceType enum value ResourceTypeRouteTable = "route-table" // ResourceTypeSnapshot is a ResourceType enum value ResourceTypeSnapshot = "snapshot" // ResourceTypeSpotInstancesRequest is a ResourceType enum value ResourceTypeSpotInstancesRequest = "spot-instances-request" // ResourceTypeSubnet is a ResourceType enum value ResourceTypeSubnet = "subnet" // ResourceTypeSecurityGroup is a ResourceType enum value ResourceTypeSecurityGroup = "security-group" // ResourceTypeVolume is a ResourceType enum value ResourceTypeVolume = "volume" // ResourceTypeVpc is a ResourceType enum value ResourceTypeVpc = "vpc" // ResourceTypeVpnConnection is a ResourceType enum value ResourceTypeVpnConnection = "vpn-connection" // ResourceTypeVpnGateway is a ResourceType enum value ResourceTypeVpnGateway = "vpn-gateway" ) const ( // RouteOriginCreateRouteTable is a RouteOrigin enum value RouteOriginCreateRouteTable = "CreateRouteTable" // RouteOriginCreateRoute is a RouteOrigin enum value RouteOriginCreateRoute = "CreateRoute" // RouteOriginEnableVgwRoutePropagation is a RouteOrigin enum value RouteOriginEnableVgwRoutePropagation = "EnableVgwRoutePropagation" ) const ( // RouteStateActive is a RouteState enum value RouteStateActive = "active" // RouteStateBlackhole is a RouteState enum value RouteStateBlackhole = "blackhole" ) const ( // RuleActionAllow is a RuleAction enum value RuleActionAllow = "allow" // RuleActionDeny is a RuleAction enum value RuleActionDeny = "deny" ) const ( // ShutdownBehaviorStop is a ShutdownBehavior enum value ShutdownBehaviorStop = "stop" // ShutdownBehaviorTerminate is a ShutdownBehavior enum value ShutdownBehaviorTerminate = "terminate" ) const ( // SnapshotAttributeNameProductCodes is a SnapshotAttributeName enum value SnapshotAttributeNameProductCodes = "productCodes" // SnapshotAttributeNameCreateVolumePermission is a SnapshotAttributeName enum value SnapshotAttributeNameCreateVolumePermission = "createVolumePermission" ) const ( // SnapshotStatePending is a SnapshotState enum value SnapshotStatePending = "pending" // SnapshotStateCompleted is a SnapshotState enum value SnapshotStateCompleted = "completed" // SnapshotStateError is a SnapshotState enum value SnapshotStateError = "error" ) const ( // SpotInstanceStateOpen is a SpotInstanceState enum value SpotInstanceStateOpen = "open" // SpotInstanceStateActive is a SpotInstanceState enum value SpotInstanceStateActive = "active" // SpotInstanceStateClosed is a SpotInstanceState enum value SpotInstanceStateClosed = "closed" // SpotInstanceStateCancelled is a SpotInstanceState enum value SpotInstanceStateCancelled = "cancelled" // SpotInstanceStateFailed is a SpotInstanceState enum value SpotInstanceStateFailed = "failed" ) const ( // SpotInstanceTypeOneTime is a SpotInstanceType enum value SpotInstanceTypeOneTime = "one-time" // SpotInstanceTypePersistent is a SpotInstanceType enum value SpotInstanceTypePersistent = "persistent" ) const ( // StatePending is a State enum value StatePending = "Pending" // StateAvailable is a State enum value StateAvailable = "Available" // StateDeleting is a State enum value StateDeleting = "Deleting" // StateDeleted is a State enum value StateDeleted = "Deleted" ) const ( // StatusMoveInProgress is a Status enum value StatusMoveInProgress = "MoveInProgress" // StatusInVpc is a Status enum value StatusInVpc = "InVpc" // StatusInClassic is a Status enum value StatusInClassic = "InClassic" ) const ( // StatusNameReachability is a StatusName enum value StatusNameReachability = "reachability" ) const ( // StatusTypePassed is a StatusType enum value StatusTypePassed = "passed" // StatusTypeFailed is a StatusType enum value StatusTypeFailed = "failed" // StatusTypeInsufficientData is a StatusType enum value StatusTypeInsufficientData = "insufficient-data" // StatusTypeInitializing is a StatusType enum value StatusTypeInitializing = "initializing" ) const ( // SubnetStatePending is a SubnetState enum value SubnetStatePending = "pending" // SubnetStateAvailable is a SubnetState enum value SubnetStateAvailable = "available" ) const ( // SummaryStatusOk is a SummaryStatus enum value SummaryStatusOk = "ok" // SummaryStatusImpaired is a SummaryStatus enum value SummaryStatusImpaired = "impaired" // SummaryStatusInsufficientData is a SummaryStatus enum value SummaryStatusInsufficientData = "insufficient-data" // SummaryStatusNotApplicable is a SummaryStatus enum value SummaryStatusNotApplicable = "not-applicable" // SummaryStatusInitializing is a SummaryStatus enum value SummaryStatusInitializing = "initializing" ) const ( // TelemetryStatusUp is a TelemetryStatus enum value TelemetryStatusUp = "UP" // TelemetryStatusDown is a TelemetryStatus enum value TelemetryStatusDown = "DOWN" ) const ( // TenancyDefault is a Tenancy enum value TenancyDefault = "default" // TenancyDedicated is a Tenancy enum value TenancyDedicated = "dedicated" // TenancyHost is a Tenancy enum value TenancyHost = "host" ) const ( // TrafficTypeAccept is a TrafficType enum value TrafficTypeAccept = "ACCEPT" // TrafficTypeReject is a TrafficType enum value TrafficTypeReject = "REJECT" // TrafficTypeAll is a TrafficType enum value TrafficTypeAll = "ALL" ) const ( // VirtualizationTypeHvm is a VirtualizationType enum value VirtualizationTypeHvm = "hvm" // VirtualizationTypeParavirtual is a VirtualizationType enum value VirtualizationTypeParavirtual = "paravirtual" ) const ( // VolumeAttachmentStateAttaching is a VolumeAttachmentState enum value VolumeAttachmentStateAttaching = "attaching" // VolumeAttachmentStateAttached is a VolumeAttachmentState enum value VolumeAttachmentStateAttached = "attached" // VolumeAttachmentStateDetaching is a VolumeAttachmentState enum value VolumeAttachmentStateDetaching = "detaching" // VolumeAttachmentStateDetached is a VolumeAttachmentState enum value VolumeAttachmentStateDetached = "detached" ) const ( // VolumeAttributeNameAutoEnableIo is a VolumeAttributeName enum value VolumeAttributeNameAutoEnableIo = "autoEnableIO" // VolumeAttributeNameProductCodes is a VolumeAttributeName enum value VolumeAttributeNameProductCodes = "productCodes" ) const ( // VolumeStateCreating is a VolumeState enum value VolumeStateCreating = "creating" // VolumeStateAvailable is a VolumeState enum value VolumeStateAvailable = "available" // VolumeStateInUse is a VolumeState enum value VolumeStateInUse = "in-use" // VolumeStateDeleting is a VolumeState enum value VolumeStateDeleting = "deleting" // VolumeStateDeleted is a VolumeState enum value VolumeStateDeleted = "deleted" // VolumeStateError is a VolumeState enum value VolumeStateError = "error" ) const ( // VolumeStatusInfoStatusOk is a VolumeStatusInfoStatus enum value VolumeStatusInfoStatusOk = "ok" // VolumeStatusInfoStatusImpaired is a VolumeStatusInfoStatus enum value VolumeStatusInfoStatusImpaired = "impaired" // VolumeStatusInfoStatusInsufficientData is a VolumeStatusInfoStatus enum value VolumeStatusInfoStatusInsufficientData = "insufficient-data" ) const ( // VolumeStatusNameIoEnabled is a VolumeStatusName enum value VolumeStatusNameIoEnabled = "io-enabled" // VolumeStatusNameIoPerformance is a VolumeStatusName enum value VolumeStatusNameIoPerformance = "io-performance" ) const ( // VolumeTypeStandard is a VolumeType enum value VolumeTypeStandard = "standard" // VolumeTypeIo1 is a VolumeType enum value VolumeTypeIo1 = "io1" // VolumeTypeGp2 is a VolumeType enum value VolumeTypeGp2 = "gp2" // VolumeTypeSc1 is a VolumeType enum value VolumeTypeSc1 = "sc1" // VolumeTypeSt1 is a VolumeType enum value VolumeTypeSt1 = "st1" ) const ( // VpcAttributeNameEnableDnsSupport is a VpcAttributeName enum value VpcAttributeNameEnableDnsSupport = "enableDnsSupport" // VpcAttributeNameEnableDnsHostnames is a VpcAttributeName enum value VpcAttributeNameEnableDnsHostnames = "enableDnsHostnames" ) const ( // VpcPeeringConnectionStateReasonCodeInitiatingRequest is a VpcPeeringConnectionStateReasonCode enum value VpcPeeringConnectionStateReasonCodeInitiatingRequest = "initiating-request" // VpcPeeringConnectionStateReasonCodePendingAcceptance is a VpcPeeringConnectionStateReasonCode enum value VpcPeeringConnectionStateReasonCodePendingAcceptance = "pending-acceptance" // VpcPeeringConnectionStateReasonCodeActive is a VpcPeeringConnectionStateReasonCode enum value VpcPeeringConnectionStateReasonCodeActive = "active" // VpcPeeringConnectionStateReasonCodeDeleted is a VpcPeeringConnectionStateReasonCode enum value VpcPeeringConnectionStateReasonCodeDeleted = "deleted" // VpcPeeringConnectionStateReasonCodeRejected is a VpcPeeringConnectionStateReasonCode enum value VpcPeeringConnectionStateReasonCodeRejected = "rejected" // VpcPeeringConnectionStateReasonCodeFailed is a VpcPeeringConnectionStateReasonCode enum value VpcPeeringConnectionStateReasonCodeFailed = "failed" // VpcPeeringConnectionStateReasonCodeExpired is a VpcPeeringConnectionStateReasonCode enum value VpcPeeringConnectionStateReasonCodeExpired = "expired" // VpcPeeringConnectionStateReasonCodeProvisioning is a VpcPeeringConnectionStateReasonCode enum value VpcPeeringConnectionStateReasonCodeProvisioning = "provisioning" // VpcPeeringConnectionStateReasonCodeDeleting is a VpcPeeringConnectionStateReasonCode enum value VpcPeeringConnectionStateReasonCodeDeleting = "deleting" ) const ( // VpcStatePending is a VpcState enum value VpcStatePending = "pending" // VpcStateAvailable is a VpcState enum value VpcStateAvailable = "available" ) const ( // VpnStatePending is a VpnState enum value VpnStatePending = "pending" // VpnStateAvailable is a VpnState enum value VpnStateAvailable = "available" // VpnStateDeleting is a VpnState enum value VpnStateDeleting = "deleting" // VpnStateDeleted is a VpnState enum value VpnStateDeleted = "deleted" ) const ( // VpnStaticRouteSourceStatic is a VpnStaticRouteSource enum value VpnStaticRouteSourceStatic = "Static" ) const ( // ScopeAvailabilityZone is a scope enum value ScopeAvailabilityZone = "Availability Zone" // ScopeRegion is a scope enum value ScopeRegion = "Region" ) aws-sdk-go-1.4.22/service/ec2/customizations.go000066400000000000000000000031761300374646400213250ustar00rootroot00000000000000package ec2 import ( "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/endpoints" ) func init() { initRequest = func(r *request.Request) { if r.Operation.Name == opCopySnapshot { // fill the PresignedURL parameter r.Handlers.Build.PushFront(fillPresignedURL) } } } func fillPresignedURL(r *request.Request) { if !r.ParamsFilled() { return } origParams := r.Params.(*CopySnapshotInput) // Stop if PresignedURL/DestinationRegion is set if origParams.PresignedUrl != nil || origParams.DestinationRegion != nil { return } origParams.DestinationRegion = r.Config.Region newParams := awsutil.CopyOf(r.Params).(*CopySnapshotInput) // Create a new request based on the existing request. We will use this to // presign the CopySnapshot request against the source region. cfg := r.Config.Copy(aws.NewConfig(). WithEndpoint(""). WithRegion(aws.StringValue(origParams.SourceRegion))) clientInfo := r.ClientInfo clientInfo.Endpoint, clientInfo.SigningRegion = endpoints.EndpointForRegion( clientInfo.ServiceName, aws.StringValue(cfg.Region), aws.BoolValue(cfg.DisableSSL), aws.BoolValue(cfg.UseDualStack), ) // Presign a CopySnapshot request with modified params req := request.New(*cfg, clientInfo, r.Handlers, r.Retryer, r.Operation, newParams, r.Data) url, err := req.Presign(5 * time.Minute) // 5 minutes should be enough. if err != nil { // bubble error back up to original request r.Error = err return } // We have our URL, set it on params origParams.PresignedUrl = &url } aws-sdk-go-1.4.22/service/ec2/customizations_test.go000066400000000000000000000017161300374646400223620ustar00rootroot00000000000000package ec2_test import ( "io/ioutil" "net/url" "testing" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/ec2" "github.com/stretchr/testify/assert" ) func TestCopySnapshotPresignedURL(t *testing.T) { svc := ec2.New(unit.Session, &aws.Config{Region: aws.String("us-west-2")}) assert.NotPanics(t, func() { // Doesn't panic on nil input req, _ := svc.CopySnapshotRequest(nil) req.Sign() }) req, _ := svc.CopySnapshotRequest(&ec2.CopySnapshotInput{ SourceRegion: aws.String("us-west-1"), SourceSnapshotId: aws.String("snap-id"), }) req.Sign() b, _ := ioutil.ReadAll(req.HTTPRequest.Body) q, _ := url.ParseQuery(string(b)) u, _ := url.QueryUnescape(q.Get("PresignedUrl")) assert.Equal(t, "us-west-2", q.Get("DestinationRegion")) assert.Equal(t, "us-west-1", q.Get("SourceRegion")) assert.Regexp(t, `^https://ec2\.us-west-1\.amazonaws\.com/.+&DestinationRegion=us-west-2`, u) } aws-sdk-go-1.4.22/service/ec2/ec2iface/000077500000000000000000000000001300374646400173355ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/ec2/ec2iface/interface.go000066400000000000000000001425031300374646400216310ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package ec2iface provides an interface to enable mocking the Amazon Elastic Compute Cloud service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package ec2iface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/ec2" ) // EC2API provides an interface to enable mocking the // ec2.EC2 service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Elastic Compute Cloud. // func myFunc(svc ec2iface.EC2API) bool { // // Make svc.AcceptReservedInstancesExchangeQuote request // } // // func main() { // sess := session.New() // svc := ec2.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockEC2Client struct { // ec2iface.EC2API // } // func (m *mockEC2Client) AcceptReservedInstancesExchangeQuote(input *ec2.AcceptReservedInstancesExchangeQuoteInput) (*ec2.AcceptReservedInstancesExchangeQuoteOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockEC2Client{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type EC2API interface { AcceptReservedInstancesExchangeQuoteRequest(*ec2.AcceptReservedInstancesExchangeQuoteInput) (*request.Request, *ec2.AcceptReservedInstancesExchangeQuoteOutput) AcceptReservedInstancesExchangeQuote(*ec2.AcceptReservedInstancesExchangeQuoteInput) (*ec2.AcceptReservedInstancesExchangeQuoteOutput, error) AcceptVpcPeeringConnectionRequest(*ec2.AcceptVpcPeeringConnectionInput) (*request.Request, *ec2.AcceptVpcPeeringConnectionOutput) AcceptVpcPeeringConnection(*ec2.AcceptVpcPeeringConnectionInput) (*ec2.AcceptVpcPeeringConnectionOutput, error) AllocateAddressRequest(*ec2.AllocateAddressInput) (*request.Request, *ec2.AllocateAddressOutput) AllocateAddress(*ec2.AllocateAddressInput) (*ec2.AllocateAddressOutput, error) AllocateHostsRequest(*ec2.AllocateHostsInput) (*request.Request, *ec2.AllocateHostsOutput) AllocateHosts(*ec2.AllocateHostsInput) (*ec2.AllocateHostsOutput, error) AssignPrivateIpAddressesRequest(*ec2.AssignPrivateIpAddressesInput) (*request.Request, *ec2.AssignPrivateIpAddressesOutput) AssignPrivateIpAddresses(*ec2.AssignPrivateIpAddressesInput) (*ec2.AssignPrivateIpAddressesOutput, error) AssociateAddressRequest(*ec2.AssociateAddressInput) (*request.Request, *ec2.AssociateAddressOutput) AssociateAddress(*ec2.AssociateAddressInput) (*ec2.AssociateAddressOutput, error) AssociateDhcpOptionsRequest(*ec2.AssociateDhcpOptionsInput) (*request.Request, *ec2.AssociateDhcpOptionsOutput) AssociateDhcpOptions(*ec2.AssociateDhcpOptionsInput) (*ec2.AssociateDhcpOptionsOutput, error) AssociateRouteTableRequest(*ec2.AssociateRouteTableInput) (*request.Request, *ec2.AssociateRouteTableOutput) AssociateRouteTable(*ec2.AssociateRouteTableInput) (*ec2.AssociateRouteTableOutput, error) AttachClassicLinkVpcRequest(*ec2.AttachClassicLinkVpcInput) (*request.Request, *ec2.AttachClassicLinkVpcOutput) AttachClassicLinkVpc(*ec2.AttachClassicLinkVpcInput) (*ec2.AttachClassicLinkVpcOutput, error) AttachInternetGatewayRequest(*ec2.AttachInternetGatewayInput) (*request.Request, *ec2.AttachInternetGatewayOutput) AttachInternetGateway(*ec2.AttachInternetGatewayInput) (*ec2.AttachInternetGatewayOutput, error) AttachNetworkInterfaceRequest(*ec2.AttachNetworkInterfaceInput) (*request.Request, *ec2.AttachNetworkInterfaceOutput) AttachNetworkInterface(*ec2.AttachNetworkInterfaceInput) (*ec2.AttachNetworkInterfaceOutput, error) AttachVolumeRequest(*ec2.AttachVolumeInput) (*request.Request, *ec2.VolumeAttachment) AttachVolume(*ec2.AttachVolumeInput) (*ec2.VolumeAttachment, error) AttachVpnGatewayRequest(*ec2.AttachVpnGatewayInput) (*request.Request, *ec2.AttachVpnGatewayOutput) AttachVpnGateway(*ec2.AttachVpnGatewayInput) (*ec2.AttachVpnGatewayOutput, error) AuthorizeSecurityGroupEgressRequest(*ec2.AuthorizeSecurityGroupEgressInput) (*request.Request, *ec2.AuthorizeSecurityGroupEgressOutput) AuthorizeSecurityGroupEgress(*ec2.AuthorizeSecurityGroupEgressInput) (*ec2.AuthorizeSecurityGroupEgressOutput, error) AuthorizeSecurityGroupIngressRequest(*ec2.AuthorizeSecurityGroupIngressInput) (*request.Request, *ec2.AuthorizeSecurityGroupIngressOutput) AuthorizeSecurityGroupIngress(*ec2.AuthorizeSecurityGroupIngressInput) (*ec2.AuthorizeSecurityGroupIngressOutput, error) BundleInstanceRequest(*ec2.BundleInstanceInput) (*request.Request, *ec2.BundleInstanceOutput) BundleInstance(*ec2.BundleInstanceInput) (*ec2.BundleInstanceOutput, error) CancelBundleTaskRequest(*ec2.CancelBundleTaskInput) (*request.Request, *ec2.CancelBundleTaskOutput) CancelBundleTask(*ec2.CancelBundleTaskInput) (*ec2.CancelBundleTaskOutput, error) CancelConversionTaskRequest(*ec2.CancelConversionTaskInput) (*request.Request, *ec2.CancelConversionTaskOutput) CancelConversionTask(*ec2.CancelConversionTaskInput) (*ec2.CancelConversionTaskOutput, error) CancelExportTaskRequest(*ec2.CancelExportTaskInput) (*request.Request, *ec2.CancelExportTaskOutput) CancelExportTask(*ec2.CancelExportTaskInput) (*ec2.CancelExportTaskOutput, error) CancelImportTaskRequest(*ec2.CancelImportTaskInput) (*request.Request, *ec2.CancelImportTaskOutput) CancelImportTask(*ec2.CancelImportTaskInput) (*ec2.CancelImportTaskOutput, error) CancelReservedInstancesListingRequest(*ec2.CancelReservedInstancesListingInput) (*request.Request, *ec2.CancelReservedInstancesListingOutput) CancelReservedInstancesListing(*ec2.CancelReservedInstancesListingInput) (*ec2.CancelReservedInstancesListingOutput, error) CancelSpotFleetRequestsRequest(*ec2.CancelSpotFleetRequestsInput) (*request.Request, *ec2.CancelSpotFleetRequestsOutput) CancelSpotFleetRequests(*ec2.CancelSpotFleetRequestsInput) (*ec2.CancelSpotFleetRequestsOutput, error) CancelSpotInstanceRequestsRequest(*ec2.CancelSpotInstanceRequestsInput) (*request.Request, *ec2.CancelSpotInstanceRequestsOutput) CancelSpotInstanceRequests(*ec2.CancelSpotInstanceRequestsInput) (*ec2.CancelSpotInstanceRequestsOutput, error) ConfirmProductInstanceRequest(*ec2.ConfirmProductInstanceInput) (*request.Request, *ec2.ConfirmProductInstanceOutput) ConfirmProductInstance(*ec2.ConfirmProductInstanceInput) (*ec2.ConfirmProductInstanceOutput, error) CopyImageRequest(*ec2.CopyImageInput) (*request.Request, *ec2.CopyImageOutput) CopyImage(*ec2.CopyImageInput) (*ec2.CopyImageOutput, error) CopySnapshotRequest(*ec2.CopySnapshotInput) (*request.Request, *ec2.CopySnapshotOutput) CopySnapshot(*ec2.CopySnapshotInput) (*ec2.CopySnapshotOutput, error) CreateCustomerGatewayRequest(*ec2.CreateCustomerGatewayInput) (*request.Request, *ec2.CreateCustomerGatewayOutput) CreateCustomerGateway(*ec2.CreateCustomerGatewayInput) (*ec2.CreateCustomerGatewayOutput, error) CreateDhcpOptionsRequest(*ec2.CreateDhcpOptionsInput) (*request.Request, *ec2.CreateDhcpOptionsOutput) CreateDhcpOptions(*ec2.CreateDhcpOptionsInput) (*ec2.CreateDhcpOptionsOutput, error) CreateFlowLogsRequest(*ec2.CreateFlowLogsInput) (*request.Request, *ec2.CreateFlowLogsOutput) CreateFlowLogs(*ec2.CreateFlowLogsInput) (*ec2.CreateFlowLogsOutput, error) CreateImageRequest(*ec2.CreateImageInput) (*request.Request, *ec2.CreateImageOutput) CreateImage(*ec2.CreateImageInput) (*ec2.CreateImageOutput, error) CreateInstanceExportTaskRequest(*ec2.CreateInstanceExportTaskInput) (*request.Request, *ec2.CreateInstanceExportTaskOutput) CreateInstanceExportTask(*ec2.CreateInstanceExportTaskInput) (*ec2.CreateInstanceExportTaskOutput, error) CreateInternetGatewayRequest(*ec2.CreateInternetGatewayInput) (*request.Request, *ec2.CreateInternetGatewayOutput) CreateInternetGateway(*ec2.CreateInternetGatewayInput) (*ec2.CreateInternetGatewayOutput, error) CreateKeyPairRequest(*ec2.CreateKeyPairInput) (*request.Request, *ec2.CreateKeyPairOutput) CreateKeyPair(*ec2.CreateKeyPairInput) (*ec2.CreateKeyPairOutput, error) CreateNatGatewayRequest(*ec2.CreateNatGatewayInput) (*request.Request, *ec2.CreateNatGatewayOutput) CreateNatGateway(*ec2.CreateNatGatewayInput) (*ec2.CreateNatGatewayOutput, error) CreateNetworkAclRequest(*ec2.CreateNetworkAclInput) (*request.Request, *ec2.CreateNetworkAclOutput) CreateNetworkAcl(*ec2.CreateNetworkAclInput) (*ec2.CreateNetworkAclOutput, error) CreateNetworkAclEntryRequest(*ec2.CreateNetworkAclEntryInput) (*request.Request, *ec2.CreateNetworkAclEntryOutput) CreateNetworkAclEntry(*ec2.CreateNetworkAclEntryInput) (*ec2.CreateNetworkAclEntryOutput, error) CreateNetworkInterfaceRequest(*ec2.CreateNetworkInterfaceInput) (*request.Request, *ec2.CreateNetworkInterfaceOutput) CreateNetworkInterface(*ec2.CreateNetworkInterfaceInput) (*ec2.CreateNetworkInterfaceOutput, error) CreatePlacementGroupRequest(*ec2.CreatePlacementGroupInput) (*request.Request, *ec2.CreatePlacementGroupOutput) CreatePlacementGroup(*ec2.CreatePlacementGroupInput) (*ec2.CreatePlacementGroupOutput, error) CreateReservedInstancesListingRequest(*ec2.CreateReservedInstancesListingInput) (*request.Request, *ec2.CreateReservedInstancesListingOutput) CreateReservedInstancesListing(*ec2.CreateReservedInstancesListingInput) (*ec2.CreateReservedInstancesListingOutput, error) CreateRouteRequest(*ec2.CreateRouteInput) (*request.Request, *ec2.CreateRouteOutput) CreateRoute(*ec2.CreateRouteInput) (*ec2.CreateRouteOutput, error) CreateRouteTableRequest(*ec2.CreateRouteTableInput) (*request.Request, *ec2.CreateRouteTableOutput) CreateRouteTable(*ec2.CreateRouteTableInput) (*ec2.CreateRouteTableOutput, error) CreateSecurityGroupRequest(*ec2.CreateSecurityGroupInput) (*request.Request, *ec2.CreateSecurityGroupOutput) CreateSecurityGroup(*ec2.CreateSecurityGroupInput) (*ec2.CreateSecurityGroupOutput, error) CreateSnapshotRequest(*ec2.CreateSnapshotInput) (*request.Request, *ec2.Snapshot) CreateSnapshot(*ec2.CreateSnapshotInput) (*ec2.Snapshot, error) CreateSpotDatafeedSubscriptionRequest(*ec2.CreateSpotDatafeedSubscriptionInput) (*request.Request, *ec2.CreateSpotDatafeedSubscriptionOutput) CreateSpotDatafeedSubscription(*ec2.CreateSpotDatafeedSubscriptionInput) (*ec2.CreateSpotDatafeedSubscriptionOutput, error) CreateSubnetRequest(*ec2.CreateSubnetInput) (*request.Request, *ec2.CreateSubnetOutput) CreateSubnet(*ec2.CreateSubnetInput) (*ec2.CreateSubnetOutput, error) CreateTagsRequest(*ec2.CreateTagsInput) (*request.Request, *ec2.CreateTagsOutput) CreateTags(*ec2.CreateTagsInput) (*ec2.CreateTagsOutput, error) CreateVolumeRequest(*ec2.CreateVolumeInput) (*request.Request, *ec2.Volume) CreateVolume(*ec2.CreateVolumeInput) (*ec2.Volume, error) CreateVpcRequest(*ec2.CreateVpcInput) (*request.Request, *ec2.CreateVpcOutput) CreateVpc(*ec2.CreateVpcInput) (*ec2.CreateVpcOutput, error) CreateVpcEndpointRequest(*ec2.CreateVpcEndpointInput) (*request.Request, *ec2.CreateVpcEndpointOutput) CreateVpcEndpoint(*ec2.CreateVpcEndpointInput) (*ec2.CreateVpcEndpointOutput, error) CreateVpcPeeringConnectionRequest(*ec2.CreateVpcPeeringConnectionInput) (*request.Request, *ec2.CreateVpcPeeringConnectionOutput) CreateVpcPeeringConnection(*ec2.CreateVpcPeeringConnectionInput) (*ec2.CreateVpcPeeringConnectionOutput, error) CreateVpnConnectionRequest(*ec2.CreateVpnConnectionInput) (*request.Request, *ec2.CreateVpnConnectionOutput) CreateVpnConnection(*ec2.CreateVpnConnectionInput) (*ec2.CreateVpnConnectionOutput, error) CreateVpnConnectionRouteRequest(*ec2.CreateVpnConnectionRouteInput) (*request.Request, *ec2.CreateVpnConnectionRouteOutput) CreateVpnConnectionRoute(*ec2.CreateVpnConnectionRouteInput) (*ec2.CreateVpnConnectionRouteOutput, error) CreateVpnGatewayRequest(*ec2.CreateVpnGatewayInput) (*request.Request, *ec2.CreateVpnGatewayOutput) CreateVpnGateway(*ec2.CreateVpnGatewayInput) (*ec2.CreateVpnGatewayOutput, error) DeleteCustomerGatewayRequest(*ec2.DeleteCustomerGatewayInput) (*request.Request, *ec2.DeleteCustomerGatewayOutput) DeleteCustomerGateway(*ec2.DeleteCustomerGatewayInput) (*ec2.DeleteCustomerGatewayOutput, error) DeleteDhcpOptionsRequest(*ec2.DeleteDhcpOptionsInput) (*request.Request, *ec2.DeleteDhcpOptionsOutput) DeleteDhcpOptions(*ec2.DeleteDhcpOptionsInput) (*ec2.DeleteDhcpOptionsOutput, error) DeleteFlowLogsRequest(*ec2.DeleteFlowLogsInput) (*request.Request, *ec2.DeleteFlowLogsOutput) DeleteFlowLogs(*ec2.DeleteFlowLogsInput) (*ec2.DeleteFlowLogsOutput, error) DeleteInternetGatewayRequest(*ec2.DeleteInternetGatewayInput) (*request.Request, *ec2.DeleteInternetGatewayOutput) DeleteInternetGateway(*ec2.DeleteInternetGatewayInput) (*ec2.DeleteInternetGatewayOutput, error) DeleteKeyPairRequest(*ec2.DeleteKeyPairInput) (*request.Request, *ec2.DeleteKeyPairOutput) DeleteKeyPair(*ec2.DeleteKeyPairInput) (*ec2.DeleteKeyPairOutput, error) DeleteNatGatewayRequest(*ec2.DeleteNatGatewayInput) (*request.Request, *ec2.DeleteNatGatewayOutput) DeleteNatGateway(*ec2.DeleteNatGatewayInput) (*ec2.DeleteNatGatewayOutput, error) DeleteNetworkAclRequest(*ec2.DeleteNetworkAclInput) (*request.Request, *ec2.DeleteNetworkAclOutput) DeleteNetworkAcl(*ec2.DeleteNetworkAclInput) (*ec2.DeleteNetworkAclOutput, error) DeleteNetworkAclEntryRequest(*ec2.DeleteNetworkAclEntryInput) (*request.Request, *ec2.DeleteNetworkAclEntryOutput) DeleteNetworkAclEntry(*ec2.DeleteNetworkAclEntryInput) (*ec2.DeleteNetworkAclEntryOutput, error) DeleteNetworkInterfaceRequest(*ec2.DeleteNetworkInterfaceInput) (*request.Request, *ec2.DeleteNetworkInterfaceOutput) DeleteNetworkInterface(*ec2.DeleteNetworkInterfaceInput) (*ec2.DeleteNetworkInterfaceOutput, error) DeletePlacementGroupRequest(*ec2.DeletePlacementGroupInput) (*request.Request, *ec2.DeletePlacementGroupOutput) DeletePlacementGroup(*ec2.DeletePlacementGroupInput) (*ec2.DeletePlacementGroupOutput, error) DeleteRouteRequest(*ec2.DeleteRouteInput) (*request.Request, *ec2.DeleteRouteOutput) DeleteRoute(*ec2.DeleteRouteInput) (*ec2.DeleteRouteOutput, error) DeleteRouteTableRequest(*ec2.DeleteRouteTableInput) (*request.Request, *ec2.DeleteRouteTableOutput) DeleteRouteTable(*ec2.DeleteRouteTableInput) (*ec2.DeleteRouteTableOutput, error) DeleteSecurityGroupRequest(*ec2.DeleteSecurityGroupInput) (*request.Request, *ec2.DeleteSecurityGroupOutput) DeleteSecurityGroup(*ec2.DeleteSecurityGroupInput) (*ec2.DeleteSecurityGroupOutput, error) DeleteSnapshotRequest(*ec2.DeleteSnapshotInput) (*request.Request, *ec2.DeleteSnapshotOutput) DeleteSnapshot(*ec2.DeleteSnapshotInput) (*ec2.DeleteSnapshotOutput, error) DeleteSpotDatafeedSubscriptionRequest(*ec2.DeleteSpotDatafeedSubscriptionInput) (*request.Request, *ec2.DeleteSpotDatafeedSubscriptionOutput) DeleteSpotDatafeedSubscription(*ec2.DeleteSpotDatafeedSubscriptionInput) (*ec2.DeleteSpotDatafeedSubscriptionOutput, error) DeleteSubnetRequest(*ec2.DeleteSubnetInput) (*request.Request, *ec2.DeleteSubnetOutput) DeleteSubnet(*ec2.DeleteSubnetInput) (*ec2.DeleteSubnetOutput, error) DeleteTagsRequest(*ec2.DeleteTagsInput) (*request.Request, *ec2.DeleteTagsOutput) DeleteTags(*ec2.DeleteTagsInput) (*ec2.DeleteTagsOutput, error) DeleteVolumeRequest(*ec2.DeleteVolumeInput) (*request.Request, *ec2.DeleteVolumeOutput) DeleteVolume(*ec2.DeleteVolumeInput) (*ec2.DeleteVolumeOutput, error) DeleteVpcRequest(*ec2.DeleteVpcInput) (*request.Request, *ec2.DeleteVpcOutput) DeleteVpc(*ec2.DeleteVpcInput) (*ec2.DeleteVpcOutput, error) DeleteVpcEndpointsRequest(*ec2.DeleteVpcEndpointsInput) (*request.Request, *ec2.DeleteVpcEndpointsOutput) DeleteVpcEndpoints(*ec2.DeleteVpcEndpointsInput) (*ec2.DeleteVpcEndpointsOutput, error) DeleteVpcPeeringConnectionRequest(*ec2.DeleteVpcPeeringConnectionInput) (*request.Request, *ec2.DeleteVpcPeeringConnectionOutput) DeleteVpcPeeringConnection(*ec2.DeleteVpcPeeringConnectionInput) (*ec2.DeleteVpcPeeringConnectionOutput, error) DeleteVpnConnectionRequest(*ec2.DeleteVpnConnectionInput) (*request.Request, *ec2.DeleteVpnConnectionOutput) DeleteVpnConnection(*ec2.DeleteVpnConnectionInput) (*ec2.DeleteVpnConnectionOutput, error) DeleteVpnConnectionRouteRequest(*ec2.DeleteVpnConnectionRouteInput) (*request.Request, *ec2.DeleteVpnConnectionRouteOutput) DeleteVpnConnectionRoute(*ec2.DeleteVpnConnectionRouteInput) (*ec2.DeleteVpnConnectionRouteOutput, error) DeleteVpnGatewayRequest(*ec2.DeleteVpnGatewayInput) (*request.Request, *ec2.DeleteVpnGatewayOutput) DeleteVpnGateway(*ec2.DeleteVpnGatewayInput) (*ec2.DeleteVpnGatewayOutput, error) DeregisterImageRequest(*ec2.DeregisterImageInput) (*request.Request, *ec2.DeregisterImageOutput) DeregisterImage(*ec2.DeregisterImageInput) (*ec2.DeregisterImageOutput, error) DescribeAccountAttributesRequest(*ec2.DescribeAccountAttributesInput) (*request.Request, *ec2.DescribeAccountAttributesOutput) DescribeAccountAttributes(*ec2.DescribeAccountAttributesInput) (*ec2.DescribeAccountAttributesOutput, error) DescribeAddressesRequest(*ec2.DescribeAddressesInput) (*request.Request, *ec2.DescribeAddressesOutput) DescribeAddresses(*ec2.DescribeAddressesInput) (*ec2.DescribeAddressesOutput, error) DescribeAvailabilityZonesRequest(*ec2.DescribeAvailabilityZonesInput) (*request.Request, *ec2.DescribeAvailabilityZonesOutput) DescribeAvailabilityZones(*ec2.DescribeAvailabilityZonesInput) (*ec2.DescribeAvailabilityZonesOutput, error) DescribeBundleTasksRequest(*ec2.DescribeBundleTasksInput) (*request.Request, *ec2.DescribeBundleTasksOutput) DescribeBundleTasks(*ec2.DescribeBundleTasksInput) (*ec2.DescribeBundleTasksOutput, error) DescribeClassicLinkInstancesRequest(*ec2.DescribeClassicLinkInstancesInput) (*request.Request, *ec2.DescribeClassicLinkInstancesOutput) DescribeClassicLinkInstances(*ec2.DescribeClassicLinkInstancesInput) (*ec2.DescribeClassicLinkInstancesOutput, error) DescribeConversionTasksRequest(*ec2.DescribeConversionTasksInput) (*request.Request, *ec2.DescribeConversionTasksOutput) DescribeConversionTasks(*ec2.DescribeConversionTasksInput) (*ec2.DescribeConversionTasksOutput, error) DescribeCustomerGatewaysRequest(*ec2.DescribeCustomerGatewaysInput) (*request.Request, *ec2.DescribeCustomerGatewaysOutput) DescribeCustomerGateways(*ec2.DescribeCustomerGatewaysInput) (*ec2.DescribeCustomerGatewaysOutput, error) DescribeDhcpOptionsRequest(*ec2.DescribeDhcpOptionsInput) (*request.Request, *ec2.DescribeDhcpOptionsOutput) DescribeDhcpOptions(*ec2.DescribeDhcpOptionsInput) (*ec2.DescribeDhcpOptionsOutput, error) DescribeExportTasksRequest(*ec2.DescribeExportTasksInput) (*request.Request, *ec2.DescribeExportTasksOutput) DescribeExportTasks(*ec2.DescribeExportTasksInput) (*ec2.DescribeExportTasksOutput, error) DescribeFlowLogsRequest(*ec2.DescribeFlowLogsInput) (*request.Request, *ec2.DescribeFlowLogsOutput) DescribeFlowLogs(*ec2.DescribeFlowLogsInput) (*ec2.DescribeFlowLogsOutput, error) DescribeHostReservationOfferingsRequest(*ec2.DescribeHostReservationOfferingsInput) (*request.Request, *ec2.DescribeHostReservationOfferingsOutput) DescribeHostReservationOfferings(*ec2.DescribeHostReservationOfferingsInput) (*ec2.DescribeHostReservationOfferingsOutput, error) DescribeHostReservationsRequest(*ec2.DescribeHostReservationsInput) (*request.Request, *ec2.DescribeHostReservationsOutput) DescribeHostReservations(*ec2.DescribeHostReservationsInput) (*ec2.DescribeHostReservationsOutput, error) DescribeHostsRequest(*ec2.DescribeHostsInput) (*request.Request, *ec2.DescribeHostsOutput) DescribeHosts(*ec2.DescribeHostsInput) (*ec2.DescribeHostsOutput, error) DescribeIdFormatRequest(*ec2.DescribeIdFormatInput) (*request.Request, *ec2.DescribeIdFormatOutput) DescribeIdFormat(*ec2.DescribeIdFormatInput) (*ec2.DescribeIdFormatOutput, error) DescribeIdentityIdFormatRequest(*ec2.DescribeIdentityIdFormatInput) (*request.Request, *ec2.DescribeIdentityIdFormatOutput) DescribeIdentityIdFormat(*ec2.DescribeIdentityIdFormatInput) (*ec2.DescribeIdentityIdFormatOutput, error) DescribeImageAttributeRequest(*ec2.DescribeImageAttributeInput) (*request.Request, *ec2.DescribeImageAttributeOutput) DescribeImageAttribute(*ec2.DescribeImageAttributeInput) (*ec2.DescribeImageAttributeOutput, error) DescribeImagesRequest(*ec2.DescribeImagesInput) (*request.Request, *ec2.DescribeImagesOutput) DescribeImages(*ec2.DescribeImagesInput) (*ec2.DescribeImagesOutput, error) DescribeImportImageTasksRequest(*ec2.DescribeImportImageTasksInput) (*request.Request, *ec2.DescribeImportImageTasksOutput) DescribeImportImageTasks(*ec2.DescribeImportImageTasksInput) (*ec2.DescribeImportImageTasksOutput, error) DescribeImportSnapshotTasksRequest(*ec2.DescribeImportSnapshotTasksInput) (*request.Request, *ec2.DescribeImportSnapshotTasksOutput) DescribeImportSnapshotTasks(*ec2.DescribeImportSnapshotTasksInput) (*ec2.DescribeImportSnapshotTasksOutput, error) DescribeInstanceAttributeRequest(*ec2.DescribeInstanceAttributeInput) (*request.Request, *ec2.DescribeInstanceAttributeOutput) DescribeInstanceAttribute(*ec2.DescribeInstanceAttributeInput) (*ec2.DescribeInstanceAttributeOutput, error) DescribeInstanceStatusRequest(*ec2.DescribeInstanceStatusInput) (*request.Request, *ec2.DescribeInstanceStatusOutput) DescribeInstanceStatus(*ec2.DescribeInstanceStatusInput) (*ec2.DescribeInstanceStatusOutput, error) DescribeInstanceStatusPages(*ec2.DescribeInstanceStatusInput, func(*ec2.DescribeInstanceStatusOutput, bool) bool) error DescribeInstancesRequest(*ec2.DescribeInstancesInput) (*request.Request, *ec2.DescribeInstancesOutput) DescribeInstances(*ec2.DescribeInstancesInput) (*ec2.DescribeInstancesOutput, error) DescribeInstancesPages(*ec2.DescribeInstancesInput, func(*ec2.DescribeInstancesOutput, bool) bool) error DescribeInternetGatewaysRequest(*ec2.DescribeInternetGatewaysInput) (*request.Request, *ec2.DescribeInternetGatewaysOutput) DescribeInternetGateways(*ec2.DescribeInternetGatewaysInput) (*ec2.DescribeInternetGatewaysOutput, error) DescribeKeyPairsRequest(*ec2.DescribeKeyPairsInput) (*request.Request, *ec2.DescribeKeyPairsOutput) DescribeKeyPairs(*ec2.DescribeKeyPairsInput) (*ec2.DescribeKeyPairsOutput, error) DescribeMovingAddressesRequest(*ec2.DescribeMovingAddressesInput) (*request.Request, *ec2.DescribeMovingAddressesOutput) DescribeMovingAddresses(*ec2.DescribeMovingAddressesInput) (*ec2.DescribeMovingAddressesOutput, error) DescribeNatGatewaysRequest(*ec2.DescribeNatGatewaysInput) (*request.Request, *ec2.DescribeNatGatewaysOutput) DescribeNatGateways(*ec2.DescribeNatGatewaysInput) (*ec2.DescribeNatGatewaysOutput, error) DescribeNetworkAclsRequest(*ec2.DescribeNetworkAclsInput) (*request.Request, *ec2.DescribeNetworkAclsOutput) DescribeNetworkAcls(*ec2.DescribeNetworkAclsInput) (*ec2.DescribeNetworkAclsOutput, error) DescribeNetworkInterfaceAttributeRequest(*ec2.DescribeNetworkInterfaceAttributeInput) (*request.Request, *ec2.DescribeNetworkInterfaceAttributeOutput) DescribeNetworkInterfaceAttribute(*ec2.DescribeNetworkInterfaceAttributeInput) (*ec2.DescribeNetworkInterfaceAttributeOutput, error) DescribeNetworkInterfacesRequest(*ec2.DescribeNetworkInterfacesInput) (*request.Request, *ec2.DescribeNetworkInterfacesOutput) DescribeNetworkInterfaces(*ec2.DescribeNetworkInterfacesInput) (*ec2.DescribeNetworkInterfacesOutput, error) DescribePlacementGroupsRequest(*ec2.DescribePlacementGroupsInput) (*request.Request, *ec2.DescribePlacementGroupsOutput) DescribePlacementGroups(*ec2.DescribePlacementGroupsInput) (*ec2.DescribePlacementGroupsOutput, error) DescribePrefixListsRequest(*ec2.DescribePrefixListsInput) (*request.Request, *ec2.DescribePrefixListsOutput) DescribePrefixLists(*ec2.DescribePrefixListsInput) (*ec2.DescribePrefixListsOutput, error) DescribeRegionsRequest(*ec2.DescribeRegionsInput) (*request.Request, *ec2.DescribeRegionsOutput) DescribeRegions(*ec2.DescribeRegionsInput) (*ec2.DescribeRegionsOutput, error) DescribeReservedInstancesRequest(*ec2.DescribeReservedInstancesInput) (*request.Request, *ec2.DescribeReservedInstancesOutput) DescribeReservedInstances(*ec2.DescribeReservedInstancesInput) (*ec2.DescribeReservedInstancesOutput, error) DescribeReservedInstancesListingsRequest(*ec2.DescribeReservedInstancesListingsInput) (*request.Request, *ec2.DescribeReservedInstancesListingsOutput) DescribeReservedInstancesListings(*ec2.DescribeReservedInstancesListingsInput) (*ec2.DescribeReservedInstancesListingsOutput, error) DescribeReservedInstancesModificationsRequest(*ec2.DescribeReservedInstancesModificationsInput) (*request.Request, *ec2.DescribeReservedInstancesModificationsOutput) DescribeReservedInstancesModifications(*ec2.DescribeReservedInstancesModificationsInput) (*ec2.DescribeReservedInstancesModificationsOutput, error) DescribeReservedInstancesModificationsPages(*ec2.DescribeReservedInstancesModificationsInput, func(*ec2.DescribeReservedInstancesModificationsOutput, bool) bool) error DescribeReservedInstancesOfferingsRequest(*ec2.DescribeReservedInstancesOfferingsInput) (*request.Request, *ec2.DescribeReservedInstancesOfferingsOutput) DescribeReservedInstancesOfferings(*ec2.DescribeReservedInstancesOfferingsInput) (*ec2.DescribeReservedInstancesOfferingsOutput, error) DescribeReservedInstancesOfferingsPages(*ec2.DescribeReservedInstancesOfferingsInput, func(*ec2.DescribeReservedInstancesOfferingsOutput, bool) bool) error DescribeRouteTablesRequest(*ec2.DescribeRouteTablesInput) (*request.Request, *ec2.DescribeRouteTablesOutput) DescribeRouteTables(*ec2.DescribeRouteTablesInput) (*ec2.DescribeRouteTablesOutput, error) DescribeScheduledInstanceAvailabilityRequest(*ec2.DescribeScheduledInstanceAvailabilityInput) (*request.Request, *ec2.DescribeScheduledInstanceAvailabilityOutput) DescribeScheduledInstanceAvailability(*ec2.DescribeScheduledInstanceAvailabilityInput) (*ec2.DescribeScheduledInstanceAvailabilityOutput, error) DescribeScheduledInstancesRequest(*ec2.DescribeScheduledInstancesInput) (*request.Request, *ec2.DescribeScheduledInstancesOutput) DescribeScheduledInstances(*ec2.DescribeScheduledInstancesInput) (*ec2.DescribeScheduledInstancesOutput, error) DescribeSecurityGroupReferencesRequest(*ec2.DescribeSecurityGroupReferencesInput) (*request.Request, *ec2.DescribeSecurityGroupReferencesOutput) DescribeSecurityGroupReferences(*ec2.DescribeSecurityGroupReferencesInput) (*ec2.DescribeSecurityGroupReferencesOutput, error) DescribeSecurityGroupsRequest(*ec2.DescribeSecurityGroupsInput) (*request.Request, *ec2.DescribeSecurityGroupsOutput) DescribeSecurityGroups(*ec2.DescribeSecurityGroupsInput) (*ec2.DescribeSecurityGroupsOutput, error) DescribeSnapshotAttributeRequest(*ec2.DescribeSnapshotAttributeInput) (*request.Request, *ec2.DescribeSnapshotAttributeOutput) DescribeSnapshotAttribute(*ec2.DescribeSnapshotAttributeInput) (*ec2.DescribeSnapshotAttributeOutput, error) DescribeSnapshotsRequest(*ec2.DescribeSnapshotsInput) (*request.Request, *ec2.DescribeSnapshotsOutput) DescribeSnapshots(*ec2.DescribeSnapshotsInput) (*ec2.DescribeSnapshotsOutput, error) DescribeSnapshotsPages(*ec2.DescribeSnapshotsInput, func(*ec2.DescribeSnapshotsOutput, bool) bool) error DescribeSpotDatafeedSubscriptionRequest(*ec2.DescribeSpotDatafeedSubscriptionInput) (*request.Request, *ec2.DescribeSpotDatafeedSubscriptionOutput) DescribeSpotDatafeedSubscription(*ec2.DescribeSpotDatafeedSubscriptionInput) (*ec2.DescribeSpotDatafeedSubscriptionOutput, error) DescribeSpotFleetInstancesRequest(*ec2.DescribeSpotFleetInstancesInput) (*request.Request, *ec2.DescribeSpotFleetInstancesOutput) DescribeSpotFleetInstances(*ec2.DescribeSpotFleetInstancesInput) (*ec2.DescribeSpotFleetInstancesOutput, error) DescribeSpotFleetRequestHistoryRequest(*ec2.DescribeSpotFleetRequestHistoryInput) (*request.Request, *ec2.DescribeSpotFleetRequestHistoryOutput) DescribeSpotFleetRequestHistory(*ec2.DescribeSpotFleetRequestHistoryInput) (*ec2.DescribeSpotFleetRequestHistoryOutput, error) DescribeSpotFleetRequestsRequest(*ec2.DescribeSpotFleetRequestsInput) (*request.Request, *ec2.DescribeSpotFleetRequestsOutput) DescribeSpotFleetRequests(*ec2.DescribeSpotFleetRequestsInput) (*ec2.DescribeSpotFleetRequestsOutput, error) DescribeSpotFleetRequestsPages(*ec2.DescribeSpotFleetRequestsInput, func(*ec2.DescribeSpotFleetRequestsOutput, bool) bool) error DescribeSpotInstanceRequestsRequest(*ec2.DescribeSpotInstanceRequestsInput) (*request.Request, *ec2.DescribeSpotInstanceRequestsOutput) DescribeSpotInstanceRequests(*ec2.DescribeSpotInstanceRequestsInput) (*ec2.DescribeSpotInstanceRequestsOutput, error) DescribeSpotPriceHistoryRequest(*ec2.DescribeSpotPriceHistoryInput) (*request.Request, *ec2.DescribeSpotPriceHistoryOutput) DescribeSpotPriceHistory(*ec2.DescribeSpotPriceHistoryInput) (*ec2.DescribeSpotPriceHistoryOutput, error) DescribeSpotPriceHistoryPages(*ec2.DescribeSpotPriceHistoryInput, func(*ec2.DescribeSpotPriceHistoryOutput, bool) bool) error DescribeStaleSecurityGroupsRequest(*ec2.DescribeStaleSecurityGroupsInput) (*request.Request, *ec2.DescribeStaleSecurityGroupsOutput) DescribeStaleSecurityGroups(*ec2.DescribeStaleSecurityGroupsInput) (*ec2.DescribeStaleSecurityGroupsOutput, error) DescribeSubnetsRequest(*ec2.DescribeSubnetsInput) (*request.Request, *ec2.DescribeSubnetsOutput) DescribeSubnets(*ec2.DescribeSubnetsInput) (*ec2.DescribeSubnetsOutput, error) DescribeTagsRequest(*ec2.DescribeTagsInput) (*request.Request, *ec2.DescribeTagsOutput) DescribeTags(*ec2.DescribeTagsInput) (*ec2.DescribeTagsOutput, error) DescribeTagsPages(*ec2.DescribeTagsInput, func(*ec2.DescribeTagsOutput, bool) bool) error DescribeVolumeAttributeRequest(*ec2.DescribeVolumeAttributeInput) (*request.Request, *ec2.DescribeVolumeAttributeOutput) DescribeVolumeAttribute(*ec2.DescribeVolumeAttributeInput) (*ec2.DescribeVolumeAttributeOutput, error) DescribeVolumeStatusRequest(*ec2.DescribeVolumeStatusInput) (*request.Request, *ec2.DescribeVolumeStatusOutput) DescribeVolumeStatus(*ec2.DescribeVolumeStatusInput) (*ec2.DescribeVolumeStatusOutput, error) DescribeVolumeStatusPages(*ec2.DescribeVolumeStatusInput, func(*ec2.DescribeVolumeStatusOutput, bool) bool) error DescribeVolumesRequest(*ec2.DescribeVolumesInput) (*request.Request, *ec2.DescribeVolumesOutput) DescribeVolumes(*ec2.DescribeVolumesInput) (*ec2.DescribeVolumesOutput, error) DescribeVolumesPages(*ec2.DescribeVolumesInput, func(*ec2.DescribeVolumesOutput, bool) bool) error DescribeVpcAttributeRequest(*ec2.DescribeVpcAttributeInput) (*request.Request, *ec2.DescribeVpcAttributeOutput) DescribeVpcAttribute(*ec2.DescribeVpcAttributeInput) (*ec2.DescribeVpcAttributeOutput, error) DescribeVpcClassicLinkRequest(*ec2.DescribeVpcClassicLinkInput) (*request.Request, *ec2.DescribeVpcClassicLinkOutput) DescribeVpcClassicLink(*ec2.DescribeVpcClassicLinkInput) (*ec2.DescribeVpcClassicLinkOutput, error) DescribeVpcClassicLinkDnsSupportRequest(*ec2.DescribeVpcClassicLinkDnsSupportInput) (*request.Request, *ec2.DescribeVpcClassicLinkDnsSupportOutput) DescribeVpcClassicLinkDnsSupport(*ec2.DescribeVpcClassicLinkDnsSupportInput) (*ec2.DescribeVpcClassicLinkDnsSupportOutput, error) DescribeVpcEndpointServicesRequest(*ec2.DescribeVpcEndpointServicesInput) (*request.Request, *ec2.DescribeVpcEndpointServicesOutput) DescribeVpcEndpointServices(*ec2.DescribeVpcEndpointServicesInput) (*ec2.DescribeVpcEndpointServicesOutput, error) DescribeVpcEndpointsRequest(*ec2.DescribeVpcEndpointsInput) (*request.Request, *ec2.DescribeVpcEndpointsOutput) DescribeVpcEndpoints(*ec2.DescribeVpcEndpointsInput) (*ec2.DescribeVpcEndpointsOutput, error) DescribeVpcPeeringConnectionsRequest(*ec2.DescribeVpcPeeringConnectionsInput) (*request.Request, *ec2.DescribeVpcPeeringConnectionsOutput) DescribeVpcPeeringConnections(*ec2.DescribeVpcPeeringConnectionsInput) (*ec2.DescribeVpcPeeringConnectionsOutput, error) DescribeVpcsRequest(*ec2.DescribeVpcsInput) (*request.Request, *ec2.DescribeVpcsOutput) DescribeVpcs(*ec2.DescribeVpcsInput) (*ec2.DescribeVpcsOutput, error) DescribeVpnConnectionsRequest(*ec2.DescribeVpnConnectionsInput) (*request.Request, *ec2.DescribeVpnConnectionsOutput) DescribeVpnConnections(*ec2.DescribeVpnConnectionsInput) (*ec2.DescribeVpnConnectionsOutput, error) DescribeVpnGatewaysRequest(*ec2.DescribeVpnGatewaysInput) (*request.Request, *ec2.DescribeVpnGatewaysOutput) DescribeVpnGateways(*ec2.DescribeVpnGatewaysInput) (*ec2.DescribeVpnGatewaysOutput, error) DetachClassicLinkVpcRequest(*ec2.DetachClassicLinkVpcInput) (*request.Request, *ec2.DetachClassicLinkVpcOutput) DetachClassicLinkVpc(*ec2.DetachClassicLinkVpcInput) (*ec2.DetachClassicLinkVpcOutput, error) DetachInternetGatewayRequest(*ec2.DetachInternetGatewayInput) (*request.Request, *ec2.DetachInternetGatewayOutput) DetachInternetGateway(*ec2.DetachInternetGatewayInput) (*ec2.DetachInternetGatewayOutput, error) DetachNetworkInterfaceRequest(*ec2.DetachNetworkInterfaceInput) (*request.Request, *ec2.DetachNetworkInterfaceOutput) DetachNetworkInterface(*ec2.DetachNetworkInterfaceInput) (*ec2.DetachNetworkInterfaceOutput, error) DetachVolumeRequest(*ec2.DetachVolumeInput) (*request.Request, *ec2.VolumeAttachment) DetachVolume(*ec2.DetachVolumeInput) (*ec2.VolumeAttachment, error) DetachVpnGatewayRequest(*ec2.DetachVpnGatewayInput) (*request.Request, *ec2.DetachVpnGatewayOutput) DetachVpnGateway(*ec2.DetachVpnGatewayInput) (*ec2.DetachVpnGatewayOutput, error) DisableVgwRoutePropagationRequest(*ec2.DisableVgwRoutePropagationInput) (*request.Request, *ec2.DisableVgwRoutePropagationOutput) DisableVgwRoutePropagation(*ec2.DisableVgwRoutePropagationInput) (*ec2.DisableVgwRoutePropagationOutput, error) DisableVpcClassicLinkRequest(*ec2.DisableVpcClassicLinkInput) (*request.Request, *ec2.DisableVpcClassicLinkOutput) DisableVpcClassicLink(*ec2.DisableVpcClassicLinkInput) (*ec2.DisableVpcClassicLinkOutput, error) DisableVpcClassicLinkDnsSupportRequest(*ec2.DisableVpcClassicLinkDnsSupportInput) (*request.Request, *ec2.DisableVpcClassicLinkDnsSupportOutput) DisableVpcClassicLinkDnsSupport(*ec2.DisableVpcClassicLinkDnsSupportInput) (*ec2.DisableVpcClassicLinkDnsSupportOutput, error) DisassociateAddressRequest(*ec2.DisassociateAddressInput) (*request.Request, *ec2.DisassociateAddressOutput) DisassociateAddress(*ec2.DisassociateAddressInput) (*ec2.DisassociateAddressOutput, error) DisassociateRouteTableRequest(*ec2.DisassociateRouteTableInput) (*request.Request, *ec2.DisassociateRouteTableOutput) DisassociateRouteTable(*ec2.DisassociateRouteTableInput) (*ec2.DisassociateRouteTableOutput, error) EnableVgwRoutePropagationRequest(*ec2.EnableVgwRoutePropagationInput) (*request.Request, *ec2.EnableVgwRoutePropagationOutput) EnableVgwRoutePropagation(*ec2.EnableVgwRoutePropagationInput) (*ec2.EnableVgwRoutePropagationOutput, error) EnableVolumeIORequest(*ec2.EnableVolumeIOInput) (*request.Request, *ec2.EnableVolumeIOOutput) EnableVolumeIO(*ec2.EnableVolumeIOInput) (*ec2.EnableVolumeIOOutput, error) EnableVpcClassicLinkRequest(*ec2.EnableVpcClassicLinkInput) (*request.Request, *ec2.EnableVpcClassicLinkOutput) EnableVpcClassicLink(*ec2.EnableVpcClassicLinkInput) (*ec2.EnableVpcClassicLinkOutput, error) EnableVpcClassicLinkDnsSupportRequest(*ec2.EnableVpcClassicLinkDnsSupportInput) (*request.Request, *ec2.EnableVpcClassicLinkDnsSupportOutput) EnableVpcClassicLinkDnsSupport(*ec2.EnableVpcClassicLinkDnsSupportInput) (*ec2.EnableVpcClassicLinkDnsSupportOutput, error) GetConsoleOutputRequest(*ec2.GetConsoleOutputInput) (*request.Request, *ec2.GetConsoleOutputOutput) GetConsoleOutput(*ec2.GetConsoleOutputInput) (*ec2.GetConsoleOutputOutput, error) GetConsoleScreenshotRequest(*ec2.GetConsoleScreenshotInput) (*request.Request, *ec2.GetConsoleScreenshotOutput) GetConsoleScreenshot(*ec2.GetConsoleScreenshotInput) (*ec2.GetConsoleScreenshotOutput, error) GetHostReservationPurchasePreviewRequest(*ec2.GetHostReservationPurchasePreviewInput) (*request.Request, *ec2.GetHostReservationPurchasePreviewOutput) GetHostReservationPurchasePreview(*ec2.GetHostReservationPurchasePreviewInput) (*ec2.GetHostReservationPurchasePreviewOutput, error) GetPasswordDataRequest(*ec2.GetPasswordDataInput) (*request.Request, *ec2.GetPasswordDataOutput) GetPasswordData(*ec2.GetPasswordDataInput) (*ec2.GetPasswordDataOutput, error) GetReservedInstancesExchangeQuoteRequest(*ec2.GetReservedInstancesExchangeQuoteInput) (*request.Request, *ec2.GetReservedInstancesExchangeQuoteOutput) GetReservedInstancesExchangeQuote(*ec2.GetReservedInstancesExchangeQuoteInput) (*ec2.GetReservedInstancesExchangeQuoteOutput, error) ImportImageRequest(*ec2.ImportImageInput) (*request.Request, *ec2.ImportImageOutput) ImportImage(*ec2.ImportImageInput) (*ec2.ImportImageOutput, error) ImportInstanceRequest(*ec2.ImportInstanceInput) (*request.Request, *ec2.ImportInstanceOutput) ImportInstance(*ec2.ImportInstanceInput) (*ec2.ImportInstanceOutput, error) ImportKeyPairRequest(*ec2.ImportKeyPairInput) (*request.Request, *ec2.ImportKeyPairOutput) ImportKeyPair(*ec2.ImportKeyPairInput) (*ec2.ImportKeyPairOutput, error) ImportSnapshotRequest(*ec2.ImportSnapshotInput) (*request.Request, *ec2.ImportSnapshotOutput) ImportSnapshot(*ec2.ImportSnapshotInput) (*ec2.ImportSnapshotOutput, error) ImportVolumeRequest(*ec2.ImportVolumeInput) (*request.Request, *ec2.ImportVolumeOutput) ImportVolume(*ec2.ImportVolumeInput) (*ec2.ImportVolumeOutput, error) ModifyHostsRequest(*ec2.ModifyHostsInput) (*request.Request, *ec2.ModifyHostsOutput) ModifyHosts(*ec2.ModifyHostsInput) (*ec2.ModifyHostsOutput, error) ModifyIdFormatRequest(*ec2.ModifyIdFormatInput) (*request.Request, *ec2.ModifyIdFormatOutput) ModifyIdFormat(*ec2.ModifyIdFormatInput) (*ec2.ModifyIdFormatOutput, error) ModifyIdentityIdFormatRequest(*ec2.ModifyIdentityIdFormatInput) (*request.Request, *ec2.ModifyIdentityIdFormatOutput) ModifyIdentityIdFormat(*ec2.ModifyIdentityIdFormatInput) (*ec2.ModifyIdentityIdFormatOutput, error) ModifyImageAttributeRequest(*ec2.ModifyImageAttributeInput) (*request.Request, *ec2.ModifyImageAttributeOutput) ModifyImageAttribute(*ec2.ModifyImageAttributeInput) (*ec2.ModifyImageAttributeOutput, error) ModifyInstanceAttributeRequest(*ec2.ModifyInstanceAttributeInput) (*request.Request, *ec2.ModifyInstanceAttributeOutput) ModifyInstanceAttribute(*ec2.ModifyInstanceAttributeInput) (*ec2.ModifyInstanceAttributeOutput, error) ModifyInstancePlacementRequest(*ec2.ModifyInstancePlacementInput) (*request.Request, *ec2.ModifyInstancePlacementOutput) ModifyInstancePlacement(*ec2.ModifyInstancePlacementInput) (*ec2.ModifyInstancePlacementOutput, error) ModifyNetworkInterfaceAttributeRequest(*ec2.ModifyNetworkInterfaceAttributeInput) (*request.Request, *ec2.ModifyNetworkInterfaceAttributeOutput) ModifyNetworkInterfaceAttribute(*ec2.ModifyNetworkInterfaceAttributeInput) (*ec2.ModifyNetworkInterfaceAttributeOutput, error) ModifyReservedInstancesRequest(*ec2.ModifyReservedInstancesInput) (*request.Request, *ec2.ModifyReservedInstancesOutput) ModifyReservedInstances(*ec2.ModifyReservedInstancesInput) (*ec2.ModifyReservedInstancesOutput, error) ModifySnapshotAttributeRequest(*ec2.ModifySnapshotAttributeInput) (*request.Request, *ec2.ModifySnapshotAttributeOutput) ModifySnapshotAttribute(*ec2.ModifySnapshotAttributeInput) (*ec2.ModifySnapshotAttributeOutput, error) ModifySpotFleetRequestRequest(*ec2.ModifySpotFleetRequestInput) (*request.Request, *ec2.ModifySpotFleetRequestOutput) ModifySpotFleetRequest(*ec2.ModifySpotFleetRequestInput) (*ec2.ModifySpotFleetRequestOutput, error) ModifySubnetAttributeRequest(*ec2.ModifySubnetAttributeInput) (*request.Request, *ec2.ModifySubnetAttributeOutput) ModifySubnetAttribute(*ec2.ModifySubnetAttributeInput) (*ec2.ModifySubnetAttributeOutput, error) ModifyVolumeAttributeRequest(*ec2.ModifyVolumeAttributeInput) (*request.Request, *ec2.ModifyVolumeAttributeOutput) ModifyVolumeAttribute(*ec2.ModifyVolumeAttributeInput) (*ec2.ModifyVolumeAttributeOutput, error) ModifyVpcAttributeRequest(*ec2.ModifyVpcAttributeInput) (*request.Request, *ec2.ModifyVpcAttributeOutput) ModifyVpcAttribute(*ec2.ModifyVpcAttributeInput) (*ec2.ModifyVpcAttributeOutput, error) ModifyVpcEndpointRequest(*ec2.ModifyVpcEndpointInput) (*request.Request, *ec2.ModifyVpcEndpointOutput) ModifyVpcEndpoint(*ec2.ModifyVpcEndpointInput) (*ec2.ModifyVpcEndpointOutput, error) ModifyVpcPeeringConnectionOptionsRequest(*ec2.ModifyVpcPeeringConnectionOptionsInput) (*request.Request, *ec2.ModifyVpcPeeringConnectionOptionsOutput) ModifyVpcPeeringConnectionOptions(*ec2.ModifyVpcPeeringConnectionOptionsInput) (*ec2.ModifyVpcPeeringConnectionOptionsOutput, error) MonitorInstancesRequest(*ec2.MonitorInstancesInput) (*request.Request, *ec2.MonitorInstancesOutput) MonitorInstances(*ec2.MonitorInstancesInput) (*ec2.MonitorInstancesOutput, error) MoveAddressToVpcRequest(*ec2.MoveAddressToVpcInput) (*request.Request, *ec2.MoveAddressToVpcOutput) MoveAddressToVpc(*ec2.MoveAddressToVpcInput) (*ec2.MoveAddressToVpcOutput, error) PurchaseHostReservationRequest(*ec2.PurchaseHostReservationInput) (*request.Request, *ec2.PurchaseHostReservationOutput) PurchaseHostReservation(*ec2.PurchaseHostReservationInput) (*ec2.PurchaseHostReservationOutput, error) PurchaseReservedInstancesOfferingRequest(*ec2.PurchaseReservedInstancesOfferingInput) (*request.Request, *ec2.PurchaseReservedInstancesOfferingOutput) PurchaseReservedInstancesOffering(*ec2.PurchaseReservedInstancesOfferingInput) (*ec2.PurchaseReservedInstancesOfferingOutput, error) PurchaseScheduledInstancesRequest(*ec2.PurchaseScheduledInstancesInput) (*request.Request, *ec2.PurchaseScheduledInstancesOutput) PurchaseScheduledInstances(*ec2.PurchaseScheduledInstancesInput) (*ec2.PurchaseScheduledInstancesOutput, error) RebootInstancesRequest(*ec2.RebootInstancesInput) (*request.Request, *ec2.RebootInstancesOutput) RebootInstances(*ec2.RebootInstancesInput) (*ec2.RebootInstancesOutput, error) RegisterImageRequest(*ec2.RegisterImageInput) (*request.Request, *ec2.RegisterImageOutput) RegisterImage(*ec2.RegisterImageInput) (*ec2.RegisterImageOutput, error) RejectVpcPeeringConnectionRequest(*ec2.RejectVpcPeeringConnectionInput) (*request.Request, *ec2.RejectVpcPeeringConnectionOutput) RejectVpcPeeringConnection(*ec2.RejectVpcPeeringConnectionInput) (*ec2.RejectVpcPeeringConnectionOutput, error) ReleaseAddressRequest(*ec2.ReleaseAddressInput) (*request.Request, *ec2.ReleaseAddressOutput) ReleaseAddress(*ec2.ReleaseAddressInput) (*ec2.ReleaseAddressOutput, error) ReleaseHostsRequest(*ec2.ReleaseHostsInput) (*request.Request, *ec2.ReleaseHostsOutput) ReleaseHosts(*ec2.ReleaseHostsInput) (*ec2.ReleaseHostsOutput, error) ReplaceNetworkAclAssociationRequest(*ec2.ReplaceNetworkAclAssociationInput) (*request.Request, *ec2.ReplaceNetworkAclAssociationOutput) ReplaceNetworkAclAssociation(*ec2.ReplaceNetworkAclAssociationInput) (*ec2.ReplaceNetworkAclAssociationOutput, error) ReplaceNetworkAclEntryRequest(*ec2.ReplaceNetworkAclEntryInput) (*request.Request, *ec2.ReplaceNetworkAclEntryOutput) ReplaceNetworkAclEntry(*ec2.ReplaceNetworkAclEntryInput) (*ec2.ReplaceNetworkAclEntryOutput, error) ReplaceRouteRequest(*ec2.ReplaceRouteInput) (*request.Request, *ec2.ReplaceRouteOutput) ReplaceRoute(*ec2.ReplaceRouteInput) (*ec2.ReplaceRouteOutput, error) ReplaceRouteTableAssociationRequest(*ec2.ReplaceRouteTableAssociationInput) (*request.Request, *ec2.ReplaceRouteTableAssociationOutput) ReplaceRouteTableAssociation(*ec2.ReplaceRouteTableAssociationInput) (*ec2.ReplaceRouteTableAssociationOutput, error) ReportInstanceStatusRequest(*ec2.ReportInstanceStatusInput) (*request.Request, *ec2.ReportInstanceStatusOutput) ReportInstanceStatus(*ec2.ReportInstanceStatusInput) (*ec2.ReportInstanceStatusOutput, error) RequestSpotFleetRequest(*ec2.RequestSpotFleetInput) (*request.Request, *ec2.RequestSpotFleetOutput) RequestSpotFleet(*ec2.RequestSpotFleetInput) (*ec2.RequestSpotFleetOutput, error) RequestSpotInstancesRequest(*ec2.RequestSpotInstancesInput) (*request.Request, *ec2.RequestSpotInstancesOutput) RequestSpotInstances(*ec2.RequestSpotInstancesInput) (*ec2.RequestSpotInstancesOutput, error) ResetImageAttributeRequest(*ec2.ResetImageAttributeInput) (*request.Request, *ec2.ResetImageAttributeOutput) ResetImageAttribute(*ec2.ResetImageAttributeInput) (*ec2.ResetImageAttributeOutput, error) ResetInstanceAttributeRequest(*ec2.ResetInstanceAttributeInput) (*request.Request, *ec2.ResetInstanceAttributeOutput) ResetInstanceAttribute(*ec2.ResetInstanceAttributeInput) (*ec2.ResetInstanceAttributeOutput, error) ResetNetworkInterfaceAttributeRequest(*ec2.ResetNetworkInterfaceAttributeInput) (*request.Request, *ec2.ResetNetworkInterfaceAttributeOutput) ResetNetworkInterfaceAttribute(*ec2.ResetNetworkInterfaceAttributeInput) (*ec2.ResetNetworkInterfaceAttributeOutput, error) ResetSnapshotAttributeRequest(*ec2.ResetSnapshotAttributeInput) (*request.Request, *ec2.ResetSnapshotAttributeOutput) ResetSnapshotAttribute(*ec2.ResetSnapshotAttributeInput) (*ec2.ResetSnapshotAttributeOutput, error) RestoreAddressToClassicRequest(*ec2.RestoreAddressToClassicInput) (*request.Request, *ec2.RestoreAddressToClassicOutput) RestoreAddressToClassic(*ec2.RestoreAddressToClassicInput) (*ec2.RestoreAddressToClassicOutput, error) RevokeSecurityGroupEgressRequest(*ec2.RevokeSecurityGroupEgressInput) (*request.Request, *ec2.RevokeSecurityGroupEgressOutput) RevokeSecurityGroupEgress(*ec2.RevokeSecurityGroupEgressInput) (*ec2.RevokeSecurityGroupEgressOutput, error) RevokeSecurityGroupIngressRequest(*ec2.RevokeSecurityGroupIngressInput) (*request.Request, *ec2.RevokeSecurityGroupIngressOutput) RevokeSecurityGroupIngress(*ec2.RevokeSecurityGroupIngressInput) (*ec2.RevokeSecurityGroupIngressOutput, error) RunInstancesRequest(*ec2.RunInstancesInput) (*request.Request, *ec2.Reservation) RunInstances(*ec2.RunInstancesInput) (*ec2.Reservation, error) RunScheduledInstancesRequest(*ec2.RunScheduledInstancesInput) (*request.Request, *ec2.RunScheduledInstancesOutput) RunScheduledInstances(*ec2.RunScheduledInstancesInput) (*ec2.RunScheduledInstancesOutput, error) StartInstancesRequest(*ec2.StartInstancesInput) (*request.Request, *ec2.StartInstancesOutput) StartInstances(*ec2.StartInstancesInput) (*ec2.StartInstancesOutput, error) StopInstancesRequest(*ec2.StopInstancesInput) (*request.Request, *ec2.StopInstancesOutput) StopInstances(*ec2.StopInstancesInput) (*ec2.StopInstancesOutput, error) TerminateInstancesRequest(*ec2.TerminateInstancesInput) (*request.Request, *ec2.TerminateInstancesOutput) TerminateInstances(*ec2.TerminateInstancesInput) (*ec2.TerminateInstancesOutput, error) UnassignPrivateIpAddressesRequest(*ec2.UnassignPrivateIpAddressesInput) (*request.Request, *ec2.UnassignPrivateIpAddressesOutput) UnassignPrivateIpAddresses(*ec2.UnassignPrivateIpAddressesInput) (*ec2.UnassignPrivateIpAddressesOutput, error) UnmonitorInstancesRequest(*ec2.UnmonitorInstancesInput) (*request.Request, *ec2.UnmonitorInstancesOutput) UnmonitorInstances(*ec2.UnmonitorInstancesInput) (*ec2.UnmonitorInstancesOutput, error) WaitUntilBundleTaskComplete(*ec2.DescribeBundleTasksInput) error WaitUntilConversionTaskCancelled(*ec2.DescribeConversionTasksInput) error WaitUntilConversionTaskCompleted(*ec2.DescribeConversionTasksInput) error WaitUntilConversionTaskDeleted(*ec2.DescribeConversionTasksInput) error WaitUntilCustomerGatewayAvailable(*ec2.DescribeCustomerGatewaysInput) error WaitUntilExportTaskCancelled(*ec2.DescribeExportTasksInput) error WaitUntilExportTaskCompleted(*ec2.DescribeExportTasksInput) error WaitUntilImageAvailable(*ec2.DescribeImagesInput) error WaitUntilImageExists(*ec2.DescribeImagesInput) error WaitUntilInstanceExists(*ec2.DescribeInstancesInput) error WaitUntilInstanceRunning(*ec2.DescribeInstancesInput) error WaitUntilInstanceStatusOk(*ec2.DescribeInstanceStatusInput) error WaitUntilInstanceStopped(*ec2.DescribeInstancesInput) error WaitUntilInstanceTerminated(*ec2.DescribeInstancesInput) error WaitUntilKeyPairExists(*ec2.DescribeKeyPairsInput) error WaitUntilNatGatewayAvailable(*ec2.DescribeNatGatewaysInput) error WaitUntilNetworkInterfaceAvailable(*ec2.DescribeNetworkInterfacesInput) error WaitUntilPasswordDataAvailable(*ec2.GetPasswordDataInput) error WaitUntilSnapshotCompleted(*ec2.DescribeSnapshotsInput) error WaitUntilSpotInstanceRequestFulfilled(*ec2.DescribeSpotInstanceRequestsInput) error WaitUntilSubnetAvailable(*ec2.DescribeSubnetsInput) error WaitUntilSystemStatusOk(*ec2.DescribeInstanceStatusInput) error WaitUntilVolumeAvailable(*ec2.DescribeVolumesInput) error WaitUntilVolumeDeleted(*ec2.DescribeVolumesInput) error WaitUntilVolumeInUse(*ec2.DescribeVolumesInput) error WaitUntilVpcAvailable(*ec2.DescribeVpcsInput) error WaitUntilVpcExists(*ec2.DescribeVpcsInput) error WaitUntilVpcPeeringConnectionExists(*ec2.DescribeVpcPeeringConnectionsInput) error WaitUntilVpnConnectionAvailable(*ec2.DescribeVpnConnectionsInput) error WaitUntilVpnConnectionDeleted(*ec2.DescribeVpnConnectionsInput) error } var _ EC2API = (*ec2.EC2)(nil) aws-sdk-go-1.4.22/service/ec2/examples_test.go000066400000000000000000005121651300374646400211120ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package ec2_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/ec2" ) var _ time.Duration var _ bytes.Buffer func ExampleEC2_AcceptReservedInstancesExchangeQuote() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.AcceptReservedInstancesExchangeQuoteInput{ ReservedInstanceIds: []*string{ // Required aws.String("String"), // Required // More values... }, DryRun: aws.Bool(true), TargetConfigurations: []*ec2.TargetConfigurationRequest{ { // Required OfferingId: aws.String("String"), // Required InstanceCount: aws.Int64(1), }, // More values... }, } resp, err := svc.AcceptReservedInstancesExchangeQuote(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_AcceptVpcPeeringConnection() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.AcceptVpcPeeringConnectionInput{ DryRun: aws.Bool(true), VpcPeeringConnectionId: aws.String("String"), } resp, err := svc.AcceptVpcPeeringConnection(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_AllocateAddress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.AllocateAddressInput{ Domain: aws.String("DomainType"), DryRun: aws.Bool(true), } resp, err := svc.AllocateAddress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_AllocateHosts() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.AllocateHostsInput{ AvailabilityZone: aws.String("String"), // Required InstanceType: aws.String("String"), // Required Quantity: aws.Int64(1), // Required AutoPlacement: aws.String("AutoPlacement"), ClientToken: aws.String("String"), } resp, err := svc.AllocateHosts(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_AssignPrivateIpAddresses() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.AssignPrivateIpAddressesInput{ NetworkInterfaceId: aws.String("String"), // Required AllowReassignment: aws.Bool(true), PrivateIpAddresses: []*string{ aws.String("String"), // Required // More values... }, SecondaryPrivateIpAddressCount: aws.Int64(1), } resp, err := svc.AssignPrivateIpAddresses(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_AssociateAddress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.AssociateAddressInput{ AllocationId: aws.String("String"), AllowReassociation: aws.Bool(true), DryRun: aws.Bool(true), InstanceId: aws.String("String"), NetworkInterfaceId: aws.String("String"), PrivateIpAddress: aws.String("String"), PublicIp: aws.String("String"), } resp, err := svc.AssociateAddress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_AssociateDhcpOptions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.AssociateDhcpOptionsInput{ DhcpOptionsId: aws.String("String"), // Required VpcId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.AssociateDhcpOptions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_AssociateRouteTable() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.AssociateRouteTableInput{ RouteTableId: aws.String("String"), // Required SubnetId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.AssociateRouteTable(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_AttachClassicLinkVpc() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.AttachClassicLinkVpcInput{ Groups: []*string{ // Required aws.String("String"), // Required // More values... }, InstanceId: aws.String("String"), // Required VpcId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.AttachClassicLinkVpc(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_AttachInternetGateway() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.AttachInternetGatewayInput{ InternetGatewayId: aws.String("String"), // Required VpcId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.AttachInternetGateway(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_AttachNetworkInterface() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.AttachNetworkInterfaceInput{ DeviceIndex: aws.Int64(1), // Required InstanceId: aws.String("String"), // Required NetworkInterfaceId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.AttachNetworkInterface(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_AttachVolume() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.AttachVolumeInput{ Device: aws.String("String"), // Required InstanceId: aws.String("String"), // Required VolumeId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.AttachVolume(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_AttachVpnGateway() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.AttachVpnGatewayInput{ VpcId: aws.String("String"), // Required VpnGatewayId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.AttachVpnGateway(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_AuthorizeSecurityGroupEgress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.AuthorizeSecurityGroupEgressInput{ GroupId: aws.String("String"), // Required CidrIp: aws.String("String"), DryRun: aws.Bool(true), FromPort: aws.Int64(1), IpPermissions: []*ec2.IpPermission{ { // Required FromPort: aws.Int64(1), IpProtocol: aws.String("String"), IpRanges: []*ec2.IpRange{ { // Required CidrIp: aws.String("String"), }, // More values... }, PrefixListIds: []*ec2.PrefixListId{ { // Required PrefixListId: aws.String("String"), }, // More values... }, ToPort: aws.Int64(1), UserIdGroupPairs: []*ec2.UserIdGroupPair{ { // Required GroupId: aws.String("String"), GroupName: aws.String("String"), PeeringStatus: aws.String("String"), UserId: aws.String("String"), VpcId: aws.String("String"), VpcPeeringConnectionId: aws.String("String"), }, // More values... }, }, // More values... }, IpProtocol: aws.String("String"), SourceSecurityGroupName: aws.String("String"), SourceSecurityGroupOwnerId: aws.String("String"), ToPort: aws.Int64(1), } resp, err := svc.AuthorizeSecurityGroupEgress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_AuthorizeSecurityGroupIngress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.AuthorizeSecurityGroupIngressInput{ CidrIp: aws.String("String"), DryRun: aws.Bool(true), FromPort: aws.Int64(1), GroupId: aws.String("String"), GroupName: aws.String("String"), IpPermissions: []*ec2.IpPermission{ { // Required FromPort: aws.Int64(1), IpProtocol: aws.String("String"), IpRanges: []*ec2.IpRange{ { // Required CidrIp: aws.String("String"), }, // More values... }, PrefixListIds: []*ec2.PrefixListId{ { // Required PrefixListId: aws.String("String"), }, // More values... }, ToPort: aws.Int64(1), UserIdGroupPairs: []*ec2.UserIdGroupPair{ { // Required GroupId: aws.String("String"), GroupName: aws.String("String"), PeeringStatus: aws.String("String"), UserId: aws.String("String"), VpcId: aws.String("String"), VpcPeeringConnectionId: aws.String("String"), }, // More values... }, }, // More values... }, IpProtocol: aws.String("String"), SourceSecurityGroupName: aws.String("String"), SourceSecurityGroupOwnerId: aws.String("String"), ToPort: aws.Int64(1), } resp, err := svc.AuthorizeSecurityGroupIngress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_BundleInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.BundleInstanceInput{ InstanceId: aws.String("String"), // Required Storage: &ec2.Storage{ // Required S3: &ec2.S3Storage{ AWSAccessKeyId: aws.String("String"), Bucket: aws.String("String"), Prefix: aws.String("String"), UploadPolicy: []byte("PAYLOAD"), UploadPolicySignature: aws.String("String"), }, }, DryRun: aws.Bool(true), } resp, err := svc.BundleInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CancelBundleTask() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CancelBundleTaskInput{ BundleId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.CancelBundleTask(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CancelConversionTask() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CancelConversionTaskInput{ ConversionTaskId: aws.String("String"), // Required DryRun: aws.Bool(true), ReasonMessage: aws.String("String"), } resp, err := svc.CancelConversionTask(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CancelExportTask() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CancelExportTaskInput{ ExportTaskId: aws.String("String"), // Required } resp, err := svc.CancelExportTask(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CancelImportTask() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CancelImportTaskInput{ CancelReason: aws.String("String"), DryRun: aws.Bool(true), ImportTaskId: aws.String("String"), } resp, err := svc.CancelImportTask(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CancelReservedInstancesListing() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CancelReservedInstancesListingInput{ ReservedInstancesListingId: aws.String("String"), // Required } resp, err := svc.CancelReservedInstancesListing(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CancelSpotFleetRequests() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CancelSpotFleetRequestsInput{ SpotFleetRequestIds: []*string{ // Required aws.String("String"), // Required // More values... }, TerminateInstances: aws.Bool(true), // Required DryRun: aws.Bool(true), } resp, err := svc.CancelSpotFleetRequests(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CancelSpotInstanceRequests() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CancelSpotInstanceRequestsInput{ SpotInstanceRequestIds: []*string{ // Required aws.String("String"), // Required // More values... }, DryRun: aws.Bool(true), } resp, err := svc.CancelSpotInstanceRequests(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ConfirmProductInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ConfirmProductInstanceInput{ InstanceId: aws.String("String"), // Required ProductCode: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.ConfirmProductInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CopyImage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CopyImageInput{ Name: aws.String("String"), // Required SourceImageId: aws.String("String"), // Required SourceRegion: aws.String("String"), // Required ClientToken: aws.String("String"), Description: aws.String("String"), DryRun: aws.Bool(true), Encrypted: aws.Bool(true), KmsKeyId: aws.String("String"), } resp, err := svc.CopyImage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CopySnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CopySnapshotInput{ SourceRegion: aws.String("String"), // Required SourceSnapshotId: aws.String("String"), // Required Description: aws.String("String"), DestinationRegion: aws.String("String"), DryRun: aws.Bool(true), Encrypted: aws.Bool(true), KmsKeyId: aws.String("String"), PresignedUrl: aws.String("String"), } resp, err := svc.CopySnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateCustomerGateway() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateCustomerGatewayInput{ BgpAsn: aws.Int64(1), // Required PublicIp: aws.String("String"), // Required Type: aws.String("GatewayType"), // Required DryRun: aws.Bool(true), } resp, err := svc.CreateCustomerGateway(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateDhcpOptions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateDhcpOptionsInput{ DhcpConfigurations: []*ec2.NewDhcpConfiguration{ // Required { // Required Key: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, DryRun: aws.Bool(true), } resp, err := svc.CreateDhcpOptions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateFlowLogs() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateFlowLogsInput{ DeliverLogsPermissionArn: aws.String("String"), // Required LogGroupName: aws.String("String"), // Required ResourceIds: []*string{ // Required aws.String("String"), // Required // More values... }, ResourceType: aws.String("FlowLogsResourceType"), // Required TrafficType: aws.String("TrafficType"), // Required ClientToken: aws.String("String"), } resp, err := svc.CreateFlowLogs(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateImage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateImageInput{ InstanceId: aws.String("String"), // Required Name: aws.String("String"), // Required BlockDeviceMappings: []*ec2.BlockDeviceMapping{ { // Required DeviceName: aws.String("String"), Ebs: &ec2.EbsBlockDevice{ DeleteOnTermination: aws.Bool(true), Encrypted: aws.Bool(true), Iops: aws.Int64(1), SnapshotId: aws.String("String"), VolumeSize: aws.Int64(1), VolumeType: aws.String("VolumeType"), }, NoDevice: aws.String("String"), VirtualName: aws.String("String"), }, // More values... }, Description: aws.String("String"), DryRun: aws.Bool(true), NoReboot: aws.Bool(true), } resp, err := svc.CreateImage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateInstanceExportTask() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateInstanceExportTaskInput{ InstanceId: aws.String("String"), // Required Description: aws.String("String"), ExportToS3Task: &ec2.ExportToS3TaskSpecification{ ContainerFormat: aws.String("ContainerFormat"), DiskImageFormat: aws.String("DiskImageFormat"), S3Bucket: aws.String("String"), S3Prefix: aws.String("String"), }, TargetEnvironment: aws.String("ExportEnvironment"), } resp, err := svc.CreateInstanceExportTask(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateInternetGateway() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateInternetGatewayInput{ DryRun: aws.Bool(true), } resp, err := svc.CreateInternetGateway(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateKeyPair() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateKeyPairInput{ KeyName: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.CreateKeyPair(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateNatGateway() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateNatGatewayInput{ AllocationId: aws.String("String"), // Required SubnetId: aws.String("String"), // Required ClientToken: aws.String("String"), } resp, err := svc.CreateNatGateway(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateNetworkAcl() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateNetworkAclInput{ VpcId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.CreateNetworkAcl(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateNetworkAclEntry() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateNetworkAclEntryInput{ CidrBlock: aws.String("String"), // Required Egress: aws.Bool(true), // Required NetworkAclId: aws.String("String"), // Required Protocol: aws.String("String"), // Required RuleAction: aws.String("RuleAction"), // Required RuleNumber: aws.Int64(1), // Required DryRun: aws.Bool(true), IcmpTypeCode: &ec2.IcmpTypeCode{ Code: aws.Int64(1), Type: aws.Int64(1), }, PortRange: &ec2.PortRange{ From: aws.Int64(1), To: aws.Int64(1), }, } resp, err := svc.CreateNetworkAclEntry(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateNetworkInterface() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateNetworkInterfaceInput{ SubnetId: aws.String("String"), // Required Description: aws.String("String"), DryRun: aws.Bool(true), Groups: []*string{ aws.String("String"), // Required // More values... }, PrivateIpAddress: aws.String("String"), PrivateIpAddresses: []*ec2.PrivateIpAddressSpecification{ { // Required PrivateIpAddress: aws.String("String"), // Required Primary: aws.Bool(true), }, // More values... }, SecondaryPrivateIpAddressCount: aws.Int64(1), } resp, err := svc.CreateNetworkInterface(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreatePlacementGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreatePlacementGroupInput{ GroupName: aws.String("String"), // Required Strategy: aws.String("PlacementStrategy"), // Required DryRun: aws.Bool(true), } resp, err := svc.CreatePlacementGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateReservedInstancesListing() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateReservedInstancesListingInput{ ClientToken: aws.String("String"), // Required InstanceCount: aws.Int64(1), // Required PriceSchedules: []*ec2.PriceScheduleSpecification{ // Required { // Required CurrencyCode: aws.String("CurrencyCodeValues"), Price: aws.Float64(1.0), Term: aws.Int64(1), }, // More values... }, ReservedInstancesId: aws.String("String"), // Required } resp, err := svc.CreateReservedInstancesListing(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateRoute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateRouteInput{ DestinationCidrBlock: aws.String("String"), // Required RouteTableId: aws.String("String"), // Required DryRun: aws.Bool(true), GatewayId: aws.String("String"), InstanceId: aws.String("String"), NatGatewayId: aws.String("String"), NetworkInterfaceId: aws.String("String"), VpcPeeringConnectionId: aws.String("String"), } resp, err := svc.CreateRoute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateRouteTable() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateRouteTableInput{ VpcId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.CreateRouteTable(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateSecurityGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateSecurityGroupInput{ Description: aws.String("String"), // Required GroupName: aws.String("String"), // Required DryRun: aws.Bool(true), VpcId: aws.String("String"), } resp, err := svc.CreateSecurityGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateSnapshotInput{ VolumeId: aws.String("String"), // Required Description: aws.String("String"), DryRun: aws.Bool(true), } resp, err := svc.CreateSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateSpotDatafeedSubscription() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateSpotDatafeedSubscriptionInput{ Bucket: aws.String("String"), // Required DryRun: aws.Bool(true), Prefix: aws.String("String"), } resp, err := svc.CreateSpotDatafeedSubscription(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateSubnet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateSubnetInput{ CidrBlock: aws.String("String"), // Required VpcId: aws.String("String"), // Required AvailabilityZone: aws.String("String"), DryRun: aws.Bool(true), } resp, err := svc.CreateSubnet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateTagsInput{ Resources: []*string{ // Required aws.String("String"), // Required // More values... }, Tags: []*ec2.Tag{ // Required { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, DryRun: aws.Bool(true), } resp, err := svc.CreateTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateVolume() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateVolumeInput{ AvailabilityZone: aws.String("String"), // Required DryRun: aws.Bool(true), Encrypted: aws.Bool(true), Iops: aws.Int64(1), KmsKeyId: aws.String("String"), Size: aws.Int64(1), SnapshotId: aws.String("String"), VolumeType: aws.String("VolumeType"), } resp, err := svc.CreateVolume(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateVpc() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateVpcInput{ CidrBlock: aws.String("String"), // Required DryRun: aws.Bool(true), InstanceTenancy: aws.String("Tenancy"), } resp, err := svc.CreateVpc(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateVpcEndpoint() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateVpcEndpointInput{ ServiceName: aws.String("String"), // Required VpcId: aws.String("String"), // Required ClientToken: aws.String("String"), DryRun: aws.Bool(true), PolicyDocument: aws.String("String"), RouteTableIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.CreateVpcEndpoint(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateVpcPeeringConnection() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateVpcPeeringConnectionInput{ DryRun: aws.Bool(true), PeerOwnerId: aws.String("String"), PeerVpcId: aws.String("String"), VpcId: aws.String("String"), } resp, err := svc.CreateVpcPeeringConnection(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateVpnConnection() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateVpnConnectionInput{ CustomerGatewayId: aws.String("String"), // Required Type: aws.String("String"), // Required VpnGatewayId: aws.String("String"), // Required DryRun: aws.Bool(true), Options: &ec2.VpnConnectionOptionsSpecification{ StaticRoutesOnly: aws.Bool(true), }, } resp, err := svc.CreateVpnConnection(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateVpnConnectionRoute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateVpnConnectionRouteInput{ DestinationCidrBlock: aws.String("String"), // Required VpnConnectionId: aws.String("String"), // Required } resp, err := svc.CreateVpnConnectionRoute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_CreateVpnGateway() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.CreateVpnGatewayInput{ Type: aws.String("GatewayType"), // Required AvailabilityZone: aws.String("String"), DryRun: aws.Bool(true), } resp, err := svc.CreateVpnGateway(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteCustomerGateway() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteCustomerGatewayInput{ CustomerGatewayId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DeleteCustomerGateway(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteDhcpOptions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteDhcpOptionsInput{ DhcpOptionsId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DeleteDhcpOptions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteFlowLogs() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteFlowLogsInput{ FlowLogIds: []*string{ // Required aws.String("String"), // Required // More values... }, } resp, err := svc.DeleteFlowLogs(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteInternetGateway() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteInternetGatewayInput{ InternetGatewayId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DeleteInternetGateway(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteKeyPair() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteKeyPairInput{ KeyName: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DeleteKeyPair(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteNatGateway() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteNatGatewayInput{ NatGatewayId: aws.String("String"), // Required } resp, err := svc.DeleteNatGateway(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteNetworkAcl() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteNetworkAclInput{ NetworkAclId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DeleteNetworkAcl(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteNetworkAclEntry() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteNetworkAclEntryInput{ Egress: aws.Bool(true), // Required NetworkAclId: aws.String("String"), // Required RuleNumber: aws.Int64(1), // Required DryRun: aws.Bool(true), } resp, err := svc.DeleteNetworkAclEntry(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteNetworkInterface() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteNetworkInterfaceInput{ NetworkInterfaceId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DeleteNetworkInterface(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeletePlacementGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeletePlacementGroupInput{ GroupName: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DeletePlacementGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteRoute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteRouteInput{ DestinationCidrBlock: aws.String("String"), // Required RouteTableId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DeleteRoute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteRouteTable() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteRouteTableInput{ RouteTableId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DeleteRouteTable(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteSecurityGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteSecurityGroupInput{ DryRun: aws.Bool(true), GroupId: aws.String("String"), GroupName: aws.String("String"), } resp, err := svc.DeleteSecurityGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteSnapshotInput{ SnapshotId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DeleteSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteSpotDatafeedSubscription() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteSpotDatafeedSubscriptionInput{ DryRun: aws.Bool(true), } resp, err := svc.DeleteSpotDatafeedSubscription(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteSubnet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteSubnetInput{ SubnetId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DeleteSubnet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteTagsInput{ Resources: []*string{ // Required aws.String("String"), // Required // More values... }, DryRun: aws.Bool(true), Tags: []*ec2.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.DeleteTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteVolume() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteVolumeInput{ VolumeId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DeleteVolume(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteVpc() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteVpcInput{ VpcId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DeleteVpc(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteVpcEndpoints() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteVpcEndpointsInput{ VpcEndpointIds: []*string{ // Required aws.String("String"), // Required // More values... }, DryRun: aws.Bool(true), } resp, err := svc.DeleteVpcEndpoints(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteVpcPeeringConnection() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteVpcPeeringConnectionInput{ VpcPeeringConnectionId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DeleteVpcPeeringConnection(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteVpnConnection() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteVpnConnectionInput{ VpnConnectionId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DeleteVpnConnection(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteVpnConnectionRoute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteVpnConnectionRouteInput{ DestinationCidrBlock: aws.String("String"), // Required VpnConnectionId: aws.String("String"), // Required } resp, err := svc.DeleteVpnConnectionRoute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeleteVpnGateway() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeleteVpnGatewayInput{ VpnGatewayId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DeleteVpnGateway(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DeregisterImage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DeregisterImageInput{ ImageId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DeregisterImage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeAccountAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeAccountAttributesInput{ AttributeNames: []*string{ aws.String("AccountAttributeName"), // Required // More values... }, DryRun: aws.Bool(true), } resp, err := svc.DescribeAccountAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeAddresses() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeAddressesInput{ AllocationIds: []*string{ aws.String("String"), // Required // More values... }, DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, PublicIps: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeAddresses(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeAvailabilityZones() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeAvailabilityZonesInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, ZoneNames: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeAvailabilityZones(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeBundleTasks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeBundleTasksInput{ BundleIds: []*string{ aws.String("String"), // Required // More values... }, DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, } resp, err := svc.DescribeBundleTasks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeClassicLinkInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeClassicLinkInstancesInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, InstanceIds: []*string{ aws.String("String"), // Required // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.DescribeClassicLinkInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeConversionTasks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeConversionTasksInput{ ConversionTaskIds: []*string{ aws.String("String"), // Required // More values... }, DryRun: aws.Bool(true), } resp, err := svc.DescribeConversionTasks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeCustomerGateways() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeCustomerGatewaysInput{ CustomerGatewayIds: []*string{ aws.String("String"), // Required // More values... }, DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, } resp, err := svc.DescribeCustomerGateways(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeDhcpOptions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeDhcpOptionsInput{ DhcpOptionsIds: []*string{ aws.String("String"), // Required // More values... }, DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, } resp, err := svc.DescribeDhcpOptions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeExportTasks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeExportTasksInput{ ExportTaskIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeExportTasks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeFlowLogs() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeFlowLogsInput{ Filter: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, FlowLogIds: []*string{ aws.String("String"), // Required // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.DescribeFlowLogs(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeHostReservationOfferings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeHostReservationOfferingsInput{ Filter: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, MaxDuration: aws.Int64(1), MaxResults: aws.Int64(1), MinDuration: aws.Int64(1), NextToken: aws.String("String"), OfferingId: aws.String("String"), } resp, err := svc.DescribeHostReservationOfferings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeHostReservations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeHostReservationsInput{ Filter: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, HostReservationIdSet: []*string{ aws.String("String"), // Required // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.DescribeHostReservations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeHosts() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeHostsInput{ Filter: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, HostIds: []*string{ aws.String("String"), // Required // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.DescribeHosts(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeIdFormat() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeIdFormatInput{ Resource: aws.String("String"), } resp, err := svc.DescribeIdFormat(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeIdentityIdFormat() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeIdentityIdFormatInput{ PrincipalArn: aws.String("String"), // Required Resource: aws.String("String"), } resp, err := svc.DescribeIdentityIdFormat(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeImageAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeImageAttributeInput{ Attribute: aws.String("ImageAttributeName"), // Required ImageId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DescribeImageAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeImages() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeImagesInput{ DryRun: aws.Bool(true), ExecutableUsers: []*string{ aws.String("String"), // Required // More values... }, Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, ImageIds: []*string{ aws.String("String"), // Required // More values... }, Owners: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeImages(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeImportImageTasks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeImportImageTasksInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, ImportTaskIds: []*string{ aws.String("String"), // Required // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.DescribeImportImageTasks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeImportSnapshotTasks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeImportSnapshotTasksInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, ImportTaskIds: []*string{ aws.String("String"), // Required // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.DescribeImportSnapshotTasks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeInstanceAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeInstanceAttributeInput{ Attribute: aws.String("InstanceAttributeName"), // Required InstanceId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DescribeInstanceAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeInstanceStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeInstanceStatusInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, IncludeAllInstances: aws.Bool(true), InstanceIds: []*string{ aws.String("String"), // Required // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.DescribeInstanceStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeInstancesInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, InstanceIds: []*string{ aws.String("String"), // Required // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.DescribeInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeInternetGateways() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeInternetGatewaysInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, InternetGatewayIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeInternetGateways(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeKeyPairs() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeKeyPairsInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, KeyNames: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeKeyPairs(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeMovingAddresses() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeMovingAddressesInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("String"), PublicIps: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeMovingAddresses(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeNatGateways() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeNatGatewaysInput{ Filter: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, MaxResults: aws.Int64(1), NatGatewayIds: []*string{ aws.String("String"), // Required // More values... }, NextToken: aws.String("String"), } resp, err := svc.DescribeNatGateways(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeNetworkAcls() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeNetworkAclsInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, NetworkAclIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeNetworkAcls(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeNetworkInterfaceAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeNetworkInterfaceAttributeInput{ NetworkInterfaceId: aws.String("String"), // Required Attribute: aws.String("NetworkInterfaceAttribute"), DryRun: aws.Bool(true), } resp, err := svc.DescribeNetworkInterfaceAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeNetworkInterfaces() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeNetworkInterfacesInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, NetworkInterfaceIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeNetworkInterfaces(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribePlacementGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribePlacementGroupsInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, GroupNames: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribePlacementGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribePrefixLists() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribePrefixListsInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("String"), PrefixListIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribePrefixLists(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeRegions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeRegionsInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, RegionNames: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeRegions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeReservedInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeReservedInstancesInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, OfferingClass: aws.String("OfferingClassType"), OfferingType: aws.String("OfferingTypeValues"), ReservedInstancesIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeReservedInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeReservedInstancesListings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeReservedInstancesListingsInput{ Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, ReservedInstancesId: aws.String("String"), ReservedInstancesListingId: aws.String("String"), } resp, err := svc.DescribeReservedInstancesListings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeReservedInstancesModifications() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeReservedInstancesModificationsInput{ Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, NextToken: aws.String("String"), ReservedInstancesModificationIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeReservedInstancesModifications(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeReservedInstancesOfferings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeReservedInstancesOfferingsInput{ AvailabilityZone: aws.String("String"), DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, IncludeMarketplace: aws.Bool(true), InstanceTenancy: aws.String("Tenancy"), InstanceType: aws.String("InstanceType"), MaxDuration: aws.Int64(1), MaxInstanceCount: aws.Int64(1), MaxResults: aws.Int64(1), MinDuration: aws.Int64(1), NextToken: aws.String("String"), OfferingClass: aws.String("OfferingClassType"), OfferingType: aws.String("OfferingTypeValues"), ProductDescription: aws.String("RIProductDescription"), ReservedInstancesOfferingIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeReservedInstancesOfferings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeRouteTables() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeRouteTablesInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, RouteTableIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeRouteTables(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeScheduledInstanceAvailability() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeScheduledInstanceAvailabilityInput{ FirstSlotStartTimeRange: &ec2.SlotDateTimeRangeRequest{ // Required EarliestTime: aws.Time(time.Now()), // Required LatestTime: aws.Time(time.Now()), // Required }, Recurrence: &ec2.ScheduledInstanceRecurrenceRequest{ // Required Frequency: aws.String("String"), Interval: aws.Int64(1), OccurrenceDays: []*int64{ aws.Int64(1), // Required // More values... }, OccurrenceRelativeToEnd: aws.Bool(true), OccurrenceUnit: aws.String("String"), }, DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, MaxResults: aws.Int64(1), MaxSlotDurationInHours: aws.Int64(1), MinSlotDurationInHours: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.DescribeScheduledInstanceAvailability(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeScheduledInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeScheduledInstancesInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("String"), ScheduledInstanceIds: []*string{ aws.String("String"), // Required // More values... }, SlotStartTimeRange: &ec2.SlotStartTimeRangeRequest{ EarliestTime: aws.Time(time.Now()), LatestTime: aws.Time(time.Now()), }, } resp, err := svc.DescribeScheduledInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeSecurityGroupReferences() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeSecurityGroupReferencesInput{ GroupId: []*string{ // Required aws.String("String"), // Required // More values... }, DryRun: aws.Bool(true), } resp, err := svc.DescribeSecurityGroupReferences(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeSecurityGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeSecurityGroupsInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, GroupIds: []*string{ aws.String("String"), // Required // More values... }, GroupNames: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeSecurityGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeSnapshotAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeSnapshotAttributeInput{ Attribute: aws.String("SnapshotAttributeName"), // Required SnapshotId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DescribeSnapshotAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeSnapshots() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeSnapshotsInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("String"), OwnerIds: []*string{ aws.String("String"), // Required // More values... }, RestorableByUserIds: []*string{ aws.String("String"), // Required // More values... }, SnapshotIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeSnapshots(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeSpotDatafeedSubscription() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeSpotDatafeedSubscriptionInput{ DryRun: aws.Bool(true), } resp, err := svc.DescribeSpotDatafeedSubscription(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeSpotFleetInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeSpotFleetInstancesInput{ SpotFleetRequestId: aws.String("String"), // Required DryRun: aws.Bool(true), MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.DescribeSpotFleetInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeSpotFleetRequestHistory() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeSpotFleetRequestHistoryInput{ SpotFleetRequestId: aws.String("String"), // Required StartTime: aws.Time(time.Now()), // Required DryRun: aws.Bool(true), EventType: aws.String("EventType"), MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.DescribeSpotFleetRequestHistory(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeSpotFleetRequests() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeSpotFleetRequestsInput{ DryRun: aws.Bool(true), MaxResults: aws.Int64(1), NextToken: aws.String("String"), SpotFleetRequestIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeSpotFleetRequests(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeSpotInstanceRequests() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeSpotInstanceRequestsInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, SpotInstanceRequestIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeSpotInstanceRequests(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeSpotPriceHistory() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeSpotPriceHistoryInput{ AvailabilityZone: aws.String("String"), DryRun: aws.Bool(true), EndTime: aws.Time(time.Now()), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, InstanceTypes: []*string{ aws.String("InstanceType"), // Required // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("String"), ProductDescriptions: []*string{ aws.String("String"), // Required // More values... }, StartTime: aws.Time(time.Now()), } resp, err := svc.DescribeSpotPriceHistory(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeStaleSecurityGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeStaleSecurityGroupsInput{ VpcId: aws.String("String"), // Required DryRun: aws.Bool(true), MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.DescribeStaleSecurityGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeSubnets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeSubnetsInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, SubnetIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeSubnets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeTagsInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.DescribeTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeVolumeAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeVolumeAttributeInput{ VolumeId: aws.String("String"), // Required Attribute: aws.String("VolumeAttributeName"), DryRun: aws.Bool(true), } resp, err := svc.DescribeVolumeAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeVolumeStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeVolumeStatusInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("String"), VolumeIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeVolumeStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeVolumes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeVolumesInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("String"), VolumeIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeVolumes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeVpcAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeVpcAttributeInput{ Attribute: aws.String("VpcAttributeName"), // Required VpcId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DescribeVpcAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeVpcClassicLink() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeVpcClassicLinkInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, VpcIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeVpcClassicLink(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeVpcClassicLinkDnsSupport() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeVpcClassicLinkDnsSupportInput{ MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), VpcIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeVpcClassicLinkDnsSupport(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeVpcEndpointServices() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeVpcEndpointServicesInput{ DryRun: aws.Bool(true), MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.DescribeVpcEndpointServices(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeVpcEndpoints() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeVpcEndpointsInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("String"), VpcEndpointIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeVpcEndpoints(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeVpcPeeringConnections() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeVpcPeeringConnectionsInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, VpcPeeringConnectionIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeVpcPeeringConnections(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeVpcs() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeVpcsInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, VpcIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeVpcs(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeVpnConnections() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeVpnConnectionsInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, VpnConnectionIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeVpnConnections(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DescribeVpnGateways() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DescribeVpnGatewaysInput{ DryRun: aws.Bool(true), Filters: []*ec2.Filter{ { // Required Name: aws.String("String"), Values: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, VpnGatewayIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeVpnGateways(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DetachClassicLinkVpc() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DetachClassicLinkVpcInput{ InstanceId: aws.String("String"), // Required VpcId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DetachClassicLinkVpc(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DetachInternetGateway() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DetachInternetGatewayInput{ InternetGatewayId: aws.String("String"), // Required VpcId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DetachInternetGateway(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DetachNetworkInterface() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DetachNetworkInterfaceInput{ AttachmentId: aws.String("String"), // Required DryRun: aws.Bool(true), Force: aws.Bool(true), } resp, err := svc.DetachNetworkInterface(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DetachVolume() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DetachVolumeInput{ VolumeId: aws.String("String"), // Required Device: aws.String("String"), DryRun: aws.Bool(true), Force: aws.Bool(true), InstanceId: aws.String("String"), } resp, err := svc.DetachVolume(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DetachVpnGateway() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DetachVpnGatewayInput{ VpcId: aws.String("String"), // Required VpnGatewayId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DetachVpnGateway(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DisableVgwRoutePropagation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DisableVgwRoutePropagationInput{ GatewayId: aws.String("String"), // Required RouteTableId: aws.String("String"), // Required } resp, err := svc.DisableVgwRoutePropagation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DisableVpcClassicLink() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DisableVpcClassicLinkInput{ VpcId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DisableVpcClassicLink(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DisableVpcClassicLinkDnsSupport() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DisableVpcClassicLinkDnsSupportInput{ VpcId: aws.String("String"), } resp, err := svc.DisableVpcClassicLinkDnsSupport(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DisassociateAddress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DisassociateAddressInput{ AssociationId: aws.String("String"), DryRun: aws.Bool(true), PublicIp: aws.String("String"), } resp, err := svc.DisassociateAddress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_DisassociateRouteTable() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.DisassociateRouteTableInput{ AssociationId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.DisassociateRouteTable(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_EnableVgwRoutePropagation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.EnableVgwRoutePropagationInput{ GatewayId: aws.String("String"), // Required RouteTableId: aws.String("String"), // Required } resp, err := svc.EnableVgwRoutePropagation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_EnableVolumeIO() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.EnableVolumeIOInput{ VolumeId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.EnableVolumeIO(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_EnableVpcClassicLink() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.EnableVpcClassicLinkInput{ VpcId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.EnableVpcClassicLink(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_EnableVpcClassicLinkDnsSupport() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.EnableVpcClassicLinkDnsSupportInput{ VpcId: aws.String("String"), } resp, err := svc.EnableVpcClassicLinkDnsSupport(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_GetConsoleOutput() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.GetConsoleOutputInput{ InstanceId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.GetConsoleOutput(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_GetConsoleScreenshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.GetConsoleScreenshotInput{ InstanceId: aws.String("String"), // Required DryRun: aws.Bool(true), WakeUp: aws.Bool(true), } resp, err := svc.GetConsoleScreenshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_GetHostReservationPurchasePreview() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.GetHostReservationPurchasePreviewInput{ HostIdSet: []*string{ // Required aws.String("String"), // Required // More values... }, OfferingId: aws.String("String"), // Required } resp, err := svc.GetHostReservationPurchasePreview(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_GetPasswordData() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.GetPasswordDataInput{ InstanceId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.GetPasswordData(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_GetReservedInstancesExchangeQuote() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.GetReservedInstancesExchangeQuoteInput{ ReservedInstanceIds: []*string{ // Required aws.String("String"), // Required // More values... }, DryRun: aws.Bool(true), TargetConfigurations: []*ec2.TargetConfigurationRequest{ { // Required OfferingId: aws.String("String"), // Required InstanceCount: aws.Int64(1), }, // More values... }, } resp, err := svc.GetReservedInstancesExchangeQuote(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ImportImage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ImportImageInput{ Architecture: aws.String("String"), ClientData: &ec2.ClientData{ Comment: aws.String("String"), UploadEnd: aws.Time(time.Now()), UploadSize: aws.Float64(1.0), UploadStart: aws.Time(time.Now()), }, ClientToken: aws.String("String"), Description: aws.String("String"), DiskContainers: []*ec2.ImageDiskContainer{ { // Required Description: aws.String("String"), DeviceName: aws.String("String"), Format: aws.String("String"), SnapshotId: aws.String("String"), Url: aws.String("String"), UserBucket: &ec2.UserBucket{ S3Bucket: aws.String("String"), S3Key: aws.String("String"), }, }, // More values... }, DryRun: aws.Bool(true), Hypervisor: aws.String("String"), LicenseType: aws.String("String"), Platform: aws.String("String"), RoleName: aws.String("String"), } resp, err := svc.ImportImage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ImportInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ImportInstanceInput{ Platform: aws.String("PlatformValues"), // Required Description: aws.String("String"), DiskImages: []*ec2.DiskImage{ { // Required Description: aws.String("String"), Image: &ec2.DiskImageDetail{ Bytes: aws.Int64(1), // Required Format: aws.String("DiskImageFormat"), // Required ImportManifestUrl: aws.String("String"), // Required }, Volume: &ec2.VolumeDetail{ Size: aws.Int64(1), // Required }, }, // More values... }, DryRun: aws.Bool(true), LaunchSpecification: &ec2.ImportInstanceLaunchSpecification{ AdditionalInfo: aws.String("String"), Architecture: aws.String("ArchitectureValues"), GroupIds: []*string{ aws.String("String"), // Required // More values... }, GroupNames: []*string{ aws.String("String"), // Required // More values... }, InstanceInitiatedShutdownBehavior: aws.String("ShutdownBehavior"), InstanceType: aws.String("InstanceType"), Monitoring: aws.Bool(true), Placement: &ec2.Placement{ Affinity: aws.String("String"), AvailabilityZone: aws.String("String"), GroupName: aws.String("String"), HostId: aws.String("String"), Tenancy: aws.String("Tenancy"), }, PrivateIpAddress: aws.String("String"), SubnetId: aws.String("String"), UserData: &ec2.UserData{ Data: aws.String("String"), }, }, } resp, err := svc.ImportInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ImportKeyPair() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ImportKeyPairInput{ KeyName: aws.String("String"), // Required PublicKeyMaterial: []byte("PAYLOAD"), // Required DryRun: aws.Bool(true), } resp, err := svc.ImportKeyPair(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ImportSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ImportSnapshotInput{ ClientData: &ec2.ClientData{ Comment: aws.String("String"), UploadEnd: aws.Time(time.Now()), UploadSize: aws.Float64(1.0), UploadStart: aws.Time(time.Now()), }, ClientToken: aws.String("String"), Description: aws.String("String"), DiskContainer: &ec2.SnapshotDiskContainer{ Description: aws.String("String"), Format: aws.String("String"), Url: aws.String("String"), UserBucket: &ec2.UserBucket{ S3Bucket: aws.String("String"), S3Key: aws.String("String"), }, }, DryRun: aws.Bool(true), RoleName: aws.String("String"), } resp, err := svc.ImportSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ImportVolume() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ImportVolumeInput{ AvailabilityZone: aws.String("String"), // Required Image: &ec2.DiskImageDetail{ // Required Bytes: aws.Int64(1), // Required Format: aws.String("DiskImageFormat"), // Required ImportManifestUrl: aws.String("String"), // Required }, Volume: &ec2.VolumeDetail{ // Required Size: aws.Int64(1), // Required }, Description: aws.String("String"), DryRun: aws.Bool(true), } resp, err := svc.ImportVolume(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ModifyHosts() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ModifyHostsInput{ AutoPlacement: aws.String("AutoPlacement"), // Required HostIds: []*string{ // Required aws.String("String"), // Required // More values... }, } resp, err := svc.ModifyHosts(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ModifyIdFormat() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ModifyIdFormatInput{ Resource: aws.String("String"), // Required UseLongIds: aws.Bool(true), // Required } resp, err := svc.ModifyIdFormat(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ModifyIdentityIdFormat() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ModifyIdentityIdFormatInput{ PrincipalArn: aws.String("String"), // Required Resource: aws.String("String"), // Required UseLongIds: aws.Bool(true), // Required } resp, err := svc.ModifyIdentityIdFormat(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ModifyImageAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ModifyImageAttributeInput{ ImageId: aws.String("String"), // Required Attribute: aws.String("String"), Description: &ec2.AttributeValue{ Value: aws.String("String"), }, DryRun: aws.Bool(true), LaunchPermission: &ec2.LaunchPermissionModifications{ Add: []*ec2.LaunchPermission{ { // Required Group: aws.String("PermissionGroup"), UserId: aws.String("String"), }, // More values... }, Remove: []*ec2.LaunchPermission{ { // Required Group: aws.String("PermissionGroup"), UserId: aws.String("String"), }, // More values... }, }, OperationType: aws.String("OperationType"), ProductCodes: []*string{ aws.String("String"), // Required // More values... }, UserGroups: []*string{ aws.String("String"), // Required // More values... }, UserIds: []*string{ aws.String("String"), // Required // More values... }, Value: aws.String("String"), } resp, err := svc.ModifyImageAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ModifyInstanceAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ModifyInstanceAttributeInput{ InstanceId: aws.String("String"), // Required Attribute: aws.String("InstanceAttributeName"), BlockDeviceMappings: []*ec2.InstanceBlockDeviceMappingSpecification{ { // Required DeviceName: aws.String("String"), Ebs: &ec2.EbsInstanceBlockDeviceSpecification{ DeleteOnTermination: aws.Bool(true), VolumeId: aws.String("String"), }, NoDevice: aws.String("String"), VirtualName: aws.String("String"), }, // More values... }, DisableApiTermination: &ec2.AttributeBooleanValue{ Value: aws.Bool(true), }, DryRun: aws.Bool(true), EbsOptimized: &ec2.AttributeBooleanValue{ Value: aws.Bool(true), }, EnaSupport: &ec2.AttributeBooleanValue{ Value: aws.Bool(true), }, Groups: []*string{ aws.String("String"), // Required // More values... }, InstanceInitiatedShutdownBehavior: &ec2.AttributeValue{ Value: aws.String("String"), }, InstanceType: &ec2.AttributeValue{ Value: aws.String("String"), }, Kernel: &ec2.AttributeValue{ Value: aws.String("String"), }, Ramdisk: &ec2.AttributeValue{ Value: aws.String("String"), }, SourceDestCheck: &ec2.AttributeBooleanValue{ Value: aws.Bool(true), }, SriovNetSupport: &ec2.AttributeValue{ Value: aws.String("String"), }, UserData: &ec2.BlobAttributeValue{ Value: []byte("PAYLOAD"), }, Value: aws.String("String"), } resp, err := svc.ModifyInstanceAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ModifyInstancePlacement() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ModifyInstancePlacementInput{ InstanceId: aws.String("String"), // Required Affinity: aws.String("Affinity"), HostId: aws.String("String"), Tenancy: aws.String("HostTenancy"), } resp, err := svc.ModifyInstancePlacement(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ModifyNetworkInterfaceAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ModifyNetworkInterfaceAttributeInput{ NetworkInterfaceId: aws.String("String"), // Required Attachment: &ec2.NetworkInterfaceAttachmentChanges{ AttachmentId: aws.String("String"), DeleteOnTermination: aws.Bool(true), }, Description: &ec2.AttributeValue{ Value: aws.String("String"), }, DryRun: aws.Bool(true), Groups: []*string{ aws.String("String"), // Required // More values... }, SourceDestCheck: &ec2.AttributeBooleanValue{ Value: aws.Bool(true), }, } resp, err := svc.ModifyNetworkInterfaceAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ModifyReservedInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ModifyReservedInstancesInput{ ReservedInstancesIds: []*string{ // Required aws.String("String"), // Required // More values... }, TargetConfigurations: []*ec2.ReservedInstancesConfiguration{ // Required { // Required AvailabilityZone: aws.String("String"), InstanceCount: aws.Int64(1), InstanceType: aws.String("InstanceType"), Platform: aws.String("String"), Scope: aws.String("scope"), }, // More values... }, ClientToken: aws.String("String"), } resp, err := svc.ModifyReservedInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ModifySnapshotAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ModifySnapshotAttributeInput{ SnapshotId: aws.String("String"), // Required Attribute: aws.String("SnapshotAttributeName"), CreateVolumePermission: &ec2.CreateVolumePermissionModifications{ Add: []*ec2.CreateVolumePermission{ { // Required Group: aws.String("PermissionGroup"), UserId: aws.String("String"), }, // More values... }, Remove: []*ec2.CreateVolumePermission{ { // Required Group: aws.String("PermissionGroup"), UserId: aws.String("String"), }, // More values... }, }, DryRun: aws.Bool(true), GroupNames: []*string{ aws.String("String"), // Required // More values... }, OperationType: aws.String("OperationType"), UserIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.ModifySnapshotAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ModifySpotFleetRequest() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ModifySpotFleetRequestInput{ SpotFleetRequestId: aws.String("String"), // Required ExcessCapacityTerminationPolicy: aws.String("ExcessCapacityTerminationPolicy"), TargetCapacity: aws.Int64(1), } resp, err := svc.ModifySpotFleetRequest(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ModifySubnetAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ModifySubnetAttributeInput{ SubnetId: aws.String("String"), // Required MapPublicIpOnLaunch: &ec2.AttributeBooleanValue{ Value: aws.Bool(true), }, } resp, err := svc.ModifySubnetAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ModifyVolumeAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ModifyVolumeAttributeInput{ VolumeId: aws.String("String"), // Required AutoEnableIO: &ec2.AttributeBooleanValue{ Value: aws.Bool(true), }, DryRun: aws.Bool(true), } resp, err := svc.ModifyVolumeAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ModifyVpcAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ModifyVpcAttributeInput{ VpcId: aws.String("String"), // Required EnableDnsHostnames: &ec2.AttributeBooleanValue{ Value: aws.Bool(true), }, EnableDnsSupport: &ec2.AttributeBooleanValue{ Value: aws.Bool(true), }, } resp, err := svc.ModifyVpcAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ModifyVpcEndpoint() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ModifyVpcEndpointInput{ VpcEndpointId: aws.String("String"), // Required AddRouteTableIds: []*string{ aws.String("String"), // Required // More values... }, DryRun: aws.Bool(true), PolicyDocument: aws.String("String"), RemoveRouteTableIds: []*string{ aws.String("String"), // Required // More values... }, ResetPolicy: aws.Bool(true), } resp, err := svc.ModifyVpcEndpoint(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ModifyVpcPeeringConnectionOptions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ModifyVpcPeeringConnectionOptionsInput{ VpcPeeringConnectionId: aws.String("String"), // Required AccepterPeeringConnectionOptions: &ec2.PeeringConnectionOptionsRequest{ AllowDnsResolutionFromRemoteVpc: aws.Bool(true), AllowEgressFromLocalClassicLinkToRemoteVpc: aws.Bool(true), AllowEgressFromLocalVpcToRemoteClassicLink: aws.Bool(true), }, DryRun: aws.Bool(true), RequesterPeeringConnectionOptions: &ec2.PeeringConnectionOptionsRequest{ AllowDnsResolutionFromRemoteVpc: aws.Bool(true), AllowEgressFromLocalClassicLinkToRemoteVpc: aws.Bool(true), AllowEgressFromLocalVpcToRemoteClassicLink: aws.Bool(true), }, } resp, err := svc.ModifyVpcPeeringConnectionOptions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_MonitorInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.MonitorInstancesInput{ InstanceIds: []*string{ // Required aws.String("String"), // Required // More values... }, DryRun: aws.Bool(true), } resp, err := svc.MonitorInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_MoveAddressToVpc() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.MoveAddressToVpcInput{ PublicIp: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.MoveAddressToVpc(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_PurchaseHostReservation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.PurchaseHostReservationInput{ HostIdSet: []*string{ // Required aws.String("String"), // Required // More values... }, OfferingId: aws.String("String"), // Required ClientToken: aws.String("String"), CurrencyCode: aws.String("CurrencyCodeValues"), LimitPrice: aws.String("String"), } resp, err := svc.PurchaseHostReservation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_PurchaseReservedInstancesOffering() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.PurchaseReservedInstancesOfferingInput{ InstanceCount: aws.Int64(1), // Required ReservedInstancesOfferingId: aws.String("String"), // Required DryRun: aws.Bool(true), LimitPrice: &ec2.ReservedInstanceLimitPrice{ Amount: aws.Float64(1.0), CurrencyCode: aws.String("CurrencyCodeValues"), }, } resp, err := svc.PurchaseReservedInstancesOffering(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_PurchaseScheduledInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.PurchaseScheduledInstancesInput{ PurchaseRequests: []*ec2.PurchaseRequest{ // Required { // Required InstanceCount: aws.Int64(1), // Required PurchaseToken: aws.String("String"), // Required }, // More values... }, ClientToken: aws.String("String"), DryRun: aws.Bool(true), } resp, err := svc.PurchaseScheduledInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_RebootInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.RebootInstancesInput{ InstanceIds: []*string{ // Required aws.String("String"), // Required // More values... }, DryRun: aws.Bool(true), } resp, err := svc.RebootInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_RegisterImage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.RegisterImageInput{ Name: aws.String("String"), // Required Architecture: aws.String("ArchitectureValues"), BlockDeviceMappings: []*ec2.BlockDeviceMapping{ { // Required DeviceName: aws.String("String"), Ebs: &ec2.EbsBlockDevice{ DeleteOnTermination: aws.Bool(true), Encrypted: aws.Bool(true), Iops: aws.Int64(1), SnapshotId: aws.String("String"), VolumeSize: aws.Int64(1), VolumeType: aws.String("VolumeType"), }, NoDevice: aws.String("String"), VirtualName: aws.String("String"), }, // More values... }, Description: aws.String("String"), DryRun: aws.Bool(true), EnaSupport: aws.Bool(true), ImageLocation: aws.String("String"), KernelId: aws.String("String"), RamdiskId: aws.String("String"), RootDeviceName: aws.String("String"), SriovNetSupport: aws.String("String"), VirtualizationType: aws.String("String"), } resp, err := svc.RegisterImage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_RejectVpcPeeringConnection() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.RejectVpcPeeringConnectionInput{ VpcPeeringConnectionId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.RejectVpcPeeringConnection(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ReleaseAddress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ReleaseAddressInput{ AllocationId: aws.String("String"), DryRun: aws.Bool(true), PublicIp: aws.String("String"), } resp, err := svc.ReleaseAddress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ReleaseHosts() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ReleaseHostsInput{ HostIds: []*string{ // Required aws.String("String"), // Required // More values... }, } resp, err := svc.ReleaseHosts(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ReplaceNetworkAclAssociation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ReplaceNetworkAclAssociationInput{ AssociationId: aws.String("String"), // Required NetworkAclId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.ReplaceNetworkAclAssociation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ReplaceNetworkAclEntry() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ReplaceNetworkAclEntryInput{ CidrBlock: aws.String("String"), // Required Egress: aws.Bool(true), // Required NetworkAclId: aws.String("String"), // Required Protocol: aws.String("String"), // Required RuleAction: aws.String("RuleAction"), // Required RuleNumber: aws.Int64(1), // Required DryRun: aws.Bool(true), IcmpTypeCode: &ec2.IcmpTypeCode{ Code: aws.Int64(1), Type: aws.Int64(1), }, PortRange: &ec2.PortRange{ From: aws.Int64(1), To: aws.Int64(1), }, } resp, err := svc.ReplaceNetworkAclEntry(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ReplaceRoute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ReplaceRouteInput{ DestinationCidrBlock: aws.String("String"), // Required RouteTableId: aws.String("String"), // Required DryRun: aws.Bool(true), GatewayId: aws.String("String"), InstanceId: aws.String("String"), NatGatewayId: aws.String("String"), NetworkInterfaceId: aws.String("String"), VpcPeeringConnectionId: aws.String("String"), } resp, err := svc.ReplaceRoute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ReplaceRouteTableAssociation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ReplaceRouteTableAssociationInput{ AssociationId: aws.String("String"), // Required RouteTableId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.ReplaceRouteTableAssociation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ReportInstanceStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ReportInstanceStatusInput{ Instances: []*string{ // Required aws.String("String"), // Required // More values... }, ReasonCodes: []*string{ // Required aws.String("ReportInstanceReasonCodes"), // Required // More values... }, Status: aws.String("ReportStatusType"), // Required Description: aws.String("String"), DryRun: aws.Bool(true), EndTime: aws.Time(time.Now()), StartTime: aws.Time(time.Now()), } resp, err := svc.ReportInstanceStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_RequestSpotFleet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.RequestSpotFleetInput{ SpotFleetRequestConfig: &ec2.SpotFleetRequestConfigData{ // Required IamFleetRole: aws.String("String"), // Required LaunchSpecifications: []*ec2.SpotFleetLaunchSpecification{ // Required { // Required AddressingType: aws.String("String"), BlockDeviceMappings: []*ec2.BlockDeviceMapping{ { // Required DeviceName: aws.String("String"), Ebs: &ec2.EbsBlockDevice{ DeleteOnTermination: aws.Bool(true), Encrypted: aws.Bool(true), Iops: aws.Int64(1), SnapshotId: aws.String("String"), VolumeSize: aws.Int64(1), VolumeType: aws.String("VolumeType"), }, NoDevice: aws.String("String"), VirtualName: aws.String("String"), }, // More values... }, EbsOptimized: aws.Bool(true), IamInstanceProfile: &ec2.IamInstanceProfileSpecification{ Arn: aws.String("String"), Name: aws.String("String"), }, ImageId: aws.String("String"), InstanceType: aws.String("InstanceType"), KernelId: aws.String("String"), KeyName: aws.String("String"), Monitoring: &ec2.SpotFleetMonitoring{ Enabled: aws.Bool(true), }, NetworkInterfaces: []*ec2.InstanceNetworkInterfaceSpecification{ { // Required AssociatePublicIpAddress: aws.Bool(true), DeleteOnTermination: aws.Bool(true), Description: aws.String("String"), DeviceIndex: aws.Int64(1), Groups: []*string{ aws.String("String"), // Required // More values... }, NetworkInterfaceId: aws.String("String"), PrivateIpAddress: aws.String("String"), PrivateIpAddresses: []*ec2.PrivateIpAddressSpecification{ { // Required PrivateIpAddress: aws.String("String"), // Required Primary: aws.Bool(true), }, // More values... }, SecondaryPrivateIpAddressCount: aws.Int64(1), SubnetId: aws.String("String"), }, // More values... }, Placement: &ec2.SpotPlacement{ AvailabilityZone: aws.String("String"), GroupName: aws.String("String"), }, RamdiskId: aws.String("String"), SecurityGroups: []*ec2.GroupIdentifier{ { // Required GroupId: aws.String("String"), GroupName: aws.String("String"), }, // More values... }, SpotPrice: aws.String("String"), SubnetId: aws.String("String"), UserData: aws.String("String"), WeightedCapacity: aws.Float64(1.0), }, // More values... }, SpotPrice: aws.String("String"), // Required TargetCapacity: aws.Int64(1), // Required AllocationStrategy: aws.String("AllocationStrategy"), ClientToken: aws.String("String"), ExcessCapacityTerminationPolicy: aws.String("ExcessCapacityTerminationPolicy"), FulfilledCapacity: aws.Float64(1.0), TerminateInstancesWithExpiration: aws.Bool(true), Type: aws.String("FleetType"), ValidFrom: aws.Time(time.Now()), ValidUntil: aws.Time(time.Now()), }, DryRun: aws.Bool(true), } resp, err := svc.RequestSpotFleet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_RequestSpotInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.RequestSpotInstancesInput{ SpotPrice: aws.String("String"), // Required AvailabilityZoneGroup: aws.String("String"), BlockDurationMinutes: aws.Int64(1), ClientToken: aws.String("String"), DryRun: aws.Bool(true), InstanceCount: aws.Int64(1), LaunchGroup: aws.String("String"), LaunchSpecification: &ec2.RequestSpotLaunchSpecification{ AddressingType: aws.String("String"), BlockDeviceMappings: []*ec2.BlockDeviceMapping{ { // Required DeviceName: aws.String("String"), Ebs: &ec2.EbsBlockDevice{ DeleteOnTermination: aws.Bool(true), Encrypted: aws.Bool(true), Iops: aws.Int64(1), SnapshotId: aws.String("String"), VolumeSize: aws.Int64(1), VolumeType: aws.String("VolumeType"), }, NoDevice: aws.String("String"), VirtualName: aws.String("String"), }, // More values... }, EbsOptimized: aws.Bool(true), IamInstanceProfile: &ec2.IamInstanceProfileSpecification{ Arn: aws.String("String"), Name: aws.String("String"), }, ImageId: aws.String("String"), InstanceType: aws.String("InstanceType"), KernelId: aws.String("String"), KeyName: aws.String("String"), Monitoring: &ec2.RunInstancesMonitoringEnabled{ Enabled: aws.Bool(true), // Required }, NetworkInterfaces: []*ec2.InstanceNetworkInterfaceSpecification{ { // Required AssociatePublicIpAddress: aws.Bool(true), DeleteOnTermination: aws.Bool(true), Description: aws.String("String"), DeviceIndex: aws.Int64(1), Groups: []*string{ aws.String("String"), // Required // More values... }, NetworkInterfaceId: aws.String("String"), PrivateIpAddress: aws.String("String"), PrivateIpAddresses: []*ec2.PrivateIpAddressSpecification{ { // Required PrivateIpAddress: aws.String("String"), // Required Primary: aws.Bool(true), }, // More values... }, SecondaryPrivateIpAddressCount: aws.Int64(1), SubnetId: aws.String("String"), }, // More values... }, Placement: &ec2.SpotPlacement{ AvailabilityZone: aws.String("String"), GroupName: aws.String("String"), }, RamdiskId: aws.String("String"), SecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, SecurityGroups: []*string{ aws.String("String"), // Required // More values... }, SubnetId: aws.String("String"), UserData: aws.String("String"), }, Type: aws.String("SpotInstanceType"), ValidFrom: aws.Time(time.Now()), ValidUntil: aws.Time(time.Now()), } resp, err := svc.RequestSpotInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ResetImageAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ResetImageAttributeInput{ Attribute: aws.String("ResetImageAttributeName"), // Required ImageId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.ResetImageAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ResetInstanceAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ResetInstanceAttributeInput{ Attribute: aws.String("InstanceAttributeName"), // Required InstanceId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.ResetInstanceAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ResetNetworkInterfaceAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ResetNetworkInterfaceAttributeInput{ NetworkInterfaceId: aws.String("String"), // Required DryRun: aws.Bool(true), SourceDestCheck: aws.String("String"), } resp, err := svc.ResetNetworkInterfaceAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_ResetSnapshotAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.ResetSnapshotAttributeInput{ Attribute: aws.String("SnapshotAttributeName"), // Required SnapshotId: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.ResetSnapshotAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_RestoreAddressToClassic() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.RestoreAddressToClassicInput{ PublicIp: aws.String("String"), // Required DryRun: aws.Bool(true), } resp, err := svc.RestoreAddressToClassic(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_RevokeSecurityGroupEgress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.RevokeSecurityGroupEgressInput{ GroupId: aws.String("String"), // Required CidrIp: aws.String("String"), DryRun: aws.Bool(true), FromPort: aws.Int64(1), IpPermissions: []*ec2.IpPermission{ { // Required FromPort: aws.Int64(1), IpProtocol: aws.String("String"), IpRanges: []*ec2.IpRange{ { // Required CidrIp: aws.String("String"), }, // More values... }, PrefixListIds: []*ec2.PrefixListId{ { // Required PrefixListId: aws.String("String"), }, // More values... }, ToPort: aws.Int64(1), UserIdGroupPairs: []*ec2.UserIdGroupPair{ { // Required GroupId: aws.String("String"), GroupName: aws.String("String"), PeeringStatus: aws.String("String"), UserId: aws.String("String"), VpcId: aws.String("String"), VpcPeeringConnectionId: aws.String("String"), }, // More values... }, }, // More values... }, IpProtocol: aws.String("String"), SourceSecurityGroupName: aws.String("String"), SourceSecurityGroupOwnerId: aws.String("String"), ToPort: aws.Int64(1), } resp, err := svc.RevokeSecurityGroupEgress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_RevokeSecurityGroupIngress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.RevokeSecurityGroupIngressInput{ CidrIp: aws.String("String"), DryRun: aws.Bool(true), FromPort: aws.Int64(1), GroupId: aws.String("String"), GroupName: aws.String("String"), IpPermissions: []*ec2.IpPermission{ { // Required FromPort: aws.Int64(1), IpProtocol: aws.String("String"), IpRanges: []*ec2.IpRange{ { // Required CidrIp: aws.String("String"), }, // More values... }, PrefixListIds: []*ec2.PrefixListId{ { // Required PrefixListId: aws.String("String"), }, // More values... }, ToPort: aws.Int64(1), UserIdGroupPairs: []*ec2.UserIdGroupPair{ { // Required GroupId: aws.String("String"), GroupName: aws.String("String"), PeeringStatus: aws.String("String"), UserId: aws.String("String"), VpcId: aws.String("String"), VpcPeeringConnectionId: aws.String("String"), }, // More values... }, }, // More values... }, IpProtocol: aws.String("String"), SourceSecurityGroupName: aws.String("String"), SourceSecurityGroupOwnerId: aws.String("String"), ToPort: aws.Int64(1), } resp, err := svc.RevokeSecurityGroupIngress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_RunInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.RunInstancesInput{ ImageId: aws.String("String"), // Required MaxCount: aws.Int64(1), // Required MinCount: aws.Int64(1), // Required AdditionalInfo: aws.String("String"), BlockDeviceMappings: []*ec2.BlockDeviceMapping{ { // Required DeviceName: aws.String("String"), Ebs: &ec2.EbsBlockDevice{ DeleteOnTermination: aws.Bool(true), Encrypted: aws.Bool(true), Iops: aws.Int64(1), SnapshotId: aws.String("String"), VolumeSize: aws.Int64(1), VolumeType: aws.String("VolumeType"), }, NoDevice: aws.String("String"), VirtualName: aws.String("String"), }, // More values... }, ClientToken: aws.String("String"), DisableApiTermination: aws.Bool(true), DryRun: aws.Bool(true), EbsOptimized: aws.Bool(true), IamInstanceProfile: &ec2.IamInstanceProfileSpecification{ Arn: aws.String("String"), Name: aws.String("String"), }, InstanceInitiatedShutdownBehavior: aws.String("ShutdownBehavior"), InstanceType: aws.String("InstanceType"), KernelId: aws.String("String"), KeyName: aws.String("String"), Monitoring: &ec2.RunInstancesMonitoringEnabled{ Enabled: aws.Bool(true), // Required }, NetworkInterfaces: []*ec2.InstanceNetworkInterfaceSpecification{ { // Required AssociatePublicIpAddress: aws.Bool(true), DeleteOnTermination: aws.Bool(true), Description: aws.String("String"), DeviceIndex: aws.Int64(1), Groups: []*string{ aws.String("String"), // Required // More values... }, NetworkInterfaceId: aws.String("String"), PrivateIpAddress: aws.String("String"), PrivateIpAddresses: []*ec2.PrivateIpAddressSpecification{ { // Required PrivateIpAddress: aws.String("String"), // Required Primary: aws.Bool(true), }, // More values... }, SecondaryPrivateIpAddressCount: aws.Int64(1), SubnetId: aws.String("String"), }, // More values... }, Placement: &ec2.Placement{ Affinity: aws.String("String"), AvailabilityZone: aws.String("String"), GroupName: aws.String("String"), HostId: aws.String("String"), Tenancy: aws.String("Tenancy"), }, PrivateIpAddress: aws.String("String"), RamdiskId: aws.String("String"), SecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, SecurityGroups: []*string{ aws.String("String"), // Required // More values... }, SubnetId: aws.String("String"), UserData: aws.String("String"), } resp, err := svc.RunInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_RunScheduledInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.RunScheduledInstancesInput{ LaunchSpecification: &ec2.ScheduledInstancesLaunchSpecification{ // Required ImageId: aws.String("String"), // Required BlockDeviceMappings: []*ec2.ScheduledInstancesBlockDeviceMapping{ { // Required DeviceName: aws.String("String"), Ebs: &ec2.ScheduledInstancesEbs{ DeleteOnTermination: aws.Bool(true), Encrypted: aws.Bool(true), Iops: aws.Int64(1), SnapshotId: aws.String("String"), VolumeSize: aws.Int64(1), VolumeType: aws.String("String"), }, NoDevice: aws.String("String"), VirtualName: aws.String("String"), }, // More values... }, EbsOptimized: aws.Bool(true), IamInstanceProfile: &ec2.ScheduledInstancesIamInstanceProfile{ Arn: aws.String("String"), Name: aws.String("String"), }, InstanceType: aws.String("String"), KernelId: aws.String("String"), KeyName: aws.String("String"), Monitoring: &ec2.ScheduledInstancesMonitoring{ Enabled: aws.Bool(true), }, NetworkInterfaces: []*ec2.ScheduledInstancesNetworkInterface{ { // Required AssociatePublicIpAddress: aws.Bool(true), DeleteOnTermination: aws.Bool(true), Description: aws.String("String"), DeviceIndex: aws.Int64(1), Groups: []*string{ aws.String("String"), // Required // More values... }, NetworkInterfaceId: aws.String("String"), PrivateIpAddress: aws.String("String"), PrivateIpAddressConfigs: []*ec2.ScheduledInstancesPrivateIpAddressConfig{ { // Required Primary: aws.Bool(true), PrivateIpAddress: aws.String("String"), }, // More values... }, SecondaryPrivateIpAddressCount: aws.Int64(1), SubnetId: aws.String("String"), }, // More values... }, Placement: &ec2.ScheduledInstancesPlacement{ AvailabilityZone: aws.String("String"), GroupName: aws.String("String"), }, RamdiskId: aws.String("String"), SecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, SubnetId: aws.String("String"), UserData: aws.String("String"), }, ScheduledInstanceId: aws.String("String"), // Required ClientToken: aws.String("String"), DryRun: aws.Bool(true), InstanceCount: aws.Int64(1), } resp, err := svc.RunScheduledInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_StartInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.StartInstancesInput{ InstanceIds: []*string{ // Required aws.String("String"), // Required // More values... }, AdditionalInfo: aws.String("String"), DryRun: aws.Bool(true), } resp, err := svc.StartInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_StopInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.StopInstancesInput{ InstanceIds: []*string{ // Required aws.String("String"), // Required // More values... }, DryRun: aws.Bool(true), Force: aws.Bool(true), } resp, err := svc.StopInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_TerminateInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.TerminateInstancesInput{ InstanceIds: []*string{ // Required aws.String("String"), // Required // More values... }, DryRun: aws.Bool(true), } resp, err := svc.TerminateInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_UnassignPrivateIpAddresses() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.UnassignPrivateIpAddressesInput{ NetworkInterfaceId: aws.String("String"), // Required PrivateIpAddresses: []*string{ // Required aws.String("String"), // Required // More values... }, } resp, err := svc.UnassignPrivateIpAddresses(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEC2_UnmonitorInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ec2.New(sess) params := &ec2.UnmonitorInstancesInput{ InstanceIds: []*string{ // Required aws.String("String"), // Required // More values... }, DryRun: aws.Bool(true), } resp, err := svc.UnmonitorInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/ec2/service.go000066400000000000000000000054471300374646400176750ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package ec2 import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/ec2query" ) // Amazon Elastic Compute Cloud (Amazon EC2) provides resizable computing capacity // in the Amazon Web Services (AWS) cloud. Using Amazon EC2 eliminates your // need to invest in hardware up front, so you can develop and deploy applications // faster. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type EC2 struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "ec2" // New creates a new instance of the EC2 client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a EC2 client from just a session. // svc := ec2.New(mySession) // // // Create a EC2 client with additional configuration // svc := ec2.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *EC2 { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *EC2 { svc := &EC2{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2016-09-15", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a EC2 operation and runs any // custom request initialization. func (c *EC2) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/ec2/waiters.go000066400000000000000000000611401300374646400177030ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package ec2 import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilBundleTaskComplete uses the Amazon EC2 API operation // DescribeBundleTasks to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilBundleTaskComplete(input *DescribeBundleTasksInput) error { waiterCfg := waiter.Config{ Operation: "DescribeBundleTasks", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "BundleTasks[].State", Expected: "complete", }, { State: "failure", Matcher: "pathAny", Argument: "BundleTasks[].State", Expected: "failed", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilConversionTaskCancelled uses the Amazon EC2 API operation // DescribeConversionTasks to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilConversionTaskCancelled(input *DescribeConversionTasksInput) error { waiterCfg := waiter.Config{ Operation: "DescribeConversionTasks", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "ConversionTasks[].State", Expected: "cancelled", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilConversionTaskCompleted uses the Amazon EC2 API operation // DescribeConversionTasks to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilConversionTaskCompleted(input *DescribeConversionTasksInput) error { waiterCfg := waiter.Config{ Operation: "DescribeConversionTasks", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "ConversionTasks[].State", Expected: "completed", }, { State: "failure", Matcher: "pathAny", Argument: "ConversionTasks[].State", Expected: "cancelled", }, { State: "failure", Matcher: "pathAny", Argument: "ConversionTasks[].State", Expected: "cancelling", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilConversionTaskDeleted uses the Amazon EC2 API operation // DescribeConversionTasks to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilConversionTaskDeleted(input *DescribeConversionTasksInput) error { waiterCfg := waiter.Config{ Operation: "DescribeConversionTasks", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "ConversionTasks[].State", Expected: "deleted", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilCustomerGatewayAvailable uses the Amazon EC2 API operation // DescribeCustomerGateways to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilCustomerGatewayAvailable(input *DescribeCustomerGatewaysInput) error { waiterCfg := waiter.Config{ Operation: "DescribeCustomerGateways", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "CustomerGateways[].State", Expected: "available", }, { State: "failure", Matcher: "pathAny", Argument: "CustomerGateways[].State", Expected: "deleted", }, { State: "failure", Matcher: "pathAny", Argument: "CustomerGateways[].State", Expected: "deleting", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilExportTaskCancelled uses the Amazon EC2 API operation // DescribeExportTasks to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilExportTaskCancelled(input *DescribeExportTasksInput) error { waiterCfg := waiter.Config{ Operation: "DescribeExportTasks", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "ExportTasks[].State", Expected: "cancelled", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilExportTaskCompleted uses the Amazon EC2 API operation // DescribeExportTasks to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilExportTaskCompleted(input *DescribeExportTasksInput) error { waiterCfg := waiter.Config{ Operation: "DescribeExportTasks", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "ExportTasks[].State", Expected: "completed", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilImageAvailable uses the Amazon EC2 API operation // DescribeImages to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilImageAvailable(input *DescribeImagesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeImages", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Images[].State", Expected: "available", }, { State: "failure", Matcher: "pathAny", Argument: "Images[].State", Expected: "failed", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilImageExists uses the Amazon EC2 API operation // DescribeImages to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilImageExists(input *DescribeImagesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeImages", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "path", Argument: "length(Images[]) > `0`", Expected: true, }, { State: "retry", Matcher: "error", Argument: "", Expected: "InvalidAMIID.NotFound", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilInstanceExists uses the Amazon EC2 API operation // DescribeInstances to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilInstanceExists(input *DescribeInstancesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeInstances", Delay: 5, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "path", Argument: "length(Reservations[]) > `0`", Expected: true, }, { State: "retry", Matcher: "error", Argument: "", Expected: "InvalidInstanceID.NotFound", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilInstanceRunning uses the Amazon EC2 API operation // DescribeInstances to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilInstanceRunning(input *DescribeInstancesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeInstances", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Reservations[].Instances[].State.Name", Expected: "running", }, { State: "failure", Matcher: "pathAny", Argument: "Reservations[].Instances[].State.Name", Expected: "shutting-down", }, { State: "failure", Matcher: "pathAny", Argument: "Reservations[].Instances[].State.Name", Expected: "terminated", }, { State: "failure", Matcher: "pathAny", Argument: "Reservations[].Instances[].State.Name", Expected: "stopping", }, { State: "retry", Matcher: "error", Argument: "", Expected: "InvalidInstanceID.NotFound", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilInstanceStatusOk uses the Amazon EC2 API operation // DescribeInstanceStatus to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilInstanceStatusOk(input *DescribeInstanceStatusInput) error { waiterCfg := waiter.Config{ Operation: "DescribeInstanceStatus", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "InstanceStatuses[].InstanceStatus.Status", Expected: "ok", }, { State: "retry", Matcher: "error", Argument: "", Expected: "InvalidInstanceID.NotFound", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilInstanceStopped uses the Amazon EC2 API operation // DescribeInstances to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilInstanceStopped(input *DescribeInstancesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeInstances", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Reservations[].Instances[].State.Name", Expected: "stopped", }, { State: "failure", Matcher: "pathAny", Argument: "Reservations[].Instances[].State.Name", Expected: "pending", }, { State: "failure", Matcher: "pathAny", Argument: "Reservations[].Instances[].State.Name", Expected: "terminated", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilInstanceTerminated uses the Amazon EC2 API operation // DescribeInstances to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilInstanceTerminated(input *DescribeInstancesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeInstances", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Reservations[].Instances[].State.Name", Expected: "terminated", }, { State: "failure", Matcher: "pathAny", Argument: "Reservations[].Instances[].State.Name", Expected: "pending", }, { State: "failure", Matcher: "pathAny", Argument: "Reservations[].Instances[].State.Name", Expected: "stopping", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilKeyPairExists uses the Amazon EC2 API operation // DescribeKeyPairs to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilKeyPairExists(input *DescribeKeyPairsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeKeyPairs", Delay: 5, MaxAttempts: 6, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "length(KeyPairs[].KeyName) > `0`", Expected: true, }, { State: "retry", Matcher: "error", Argument: "", Expected: "InvalidKeyPair.NotFound", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilNatGatewayAvailable uses the Amazon EC2 API operation // DescribeNatGateways to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilNatGatewayAvailable(input *DescribeNatGatewaysInput) error { waiterCfg := waiter.Config{ Operation: "DescribeNatGateways", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "NatGateways[].State", Expected: "available", }, { State: "failure", Matcher: "pathAny", Argument: "NatGateways[].State", Expected: "failed", }, { State: "failure", Matcher: "pathAny", Argument: "NatGateways[].State", Expected: "deleting", }, { State: "failure", Matcher: "pathAny", Argument: "NatGateways[].State", Expected: "deleted", }, { State: "retry", Matcher: "error", Argument: "", Expected: "NatGatewayNotFound", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilNetworkInterfaceAvailable uses the Amazon EC2 API operation // DescribeNetworkInterfaces to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilNetworkInterfaceAvailable(input *DescribeNetworkInterfacesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeNetworkInterfaces", Delay: 20, MaxAttempts: 10, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "NetworkInterfaces[].Status", Expected: "available", }, { State: "failure", Matcher: "error", Argument: "", Expected: "InvalidNetworkInterfaceID.NotFound", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilPasswordDataAvailable uses the Amazon EC2 API operation // GetPasswordData to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilPasswordDataAvailable(input *GetPasswordDataInput) error { waiterCfg := waiter.Config{ Operation: "GetPasswordData", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "path", Argument: "length(PasswordData) > `0`", Expected: true, }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilSnapshotCompleted uses the Amazon EC2 API operation // DescribeSnapshots to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilSnapshotCompleted(input *DescribeSnapshotsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeSnapshots", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Snapshots[].State", Expected: "completed", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilSpotInstanceRequestFulfilled uses the Amazon EC2 API operation // DescribeSpotInstanceRequests to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilSpotInstanceRequestFulfilled(input *DescribeSpotInstanceRequestsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeSpotInstanceRequests", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "SpotInstanceRequests[].Status.Code", Expected: "fulfilled", }, { State: "failure", Matcher: "pathAny", Argument: "SpotInstanceRequests[].Status.Code", Expected: "schedule-expired", }, { State: "failure", Matcher: "pathAny", Argument: "SpotInstanceRequests[].Status.Code", Expected: "canceled-before-fulfillment", }, { State: "failure", Matcher: "pathAny", Argument: "SpotInstanceRequests[].Status.Code", Expected: "bad-parameters", }, { State: "failure", Matcher: "pathAny", Argument: "SpotInstanceRequests[].Status.Code", Expected: "system-error", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilSubnetAvailable uses the Amazon EC2 API operation // DescribeSubnets to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilSubnetAvailable(input *DescribeSubnetsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeSubnets", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Subnets[].State", Expected: "available", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilSystemStatusOk uses the Amazon EC2 API operation // DescribeInstanceStatus to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilSystemStatusOk(input *DescribeInstanceStatusInput) error { waiterCfg := waiter.Config{ Operation: "DescribeInstanceStatus", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "InstanceStatuses[].SystemStatus.Status", Expected: "ok", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilVolumeAvailable uses the Amazon EC2 API operation // DescribeVolumes to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilVolumeAvailable(input *DescribeVolumesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeVolumes", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Volumes[].State", Expected: "available", }, { State: "failure", Matcher: "pathAny", Argument: "Volumes[].State", Expected: "deleted", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilVolumeDeleted uses the Amazon EC2 API operation // DescribeVolumes to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilVolumeDeleted(input *DescribeVolumesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeVolumes", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Volumes[].State", Expected: "deleted", }, { State: "success", Matcher: "error", Argument: "", Expected: "InvalidVolume.NotFound", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilVolumeInUse uses the Amazon EC2 API operation // DescribeVolumes to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilVolumeInUse(input *DescribeVolumesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeVolumes", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Volumes[].State", Expected: "in-use", }, { State: "failure", Matcher: "pathAny", Argument: "Volumes[].State", Expected: "deleted", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilVpcAvailable uses the Amazon EC2 API operation // DescribeVpcs to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilVpcAvailable(input *DescribeVpcsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeVpcs", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Vpcs[].State", Expected: "available", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilVpcExists uses the Amazon EC2 API operation // DescribeVpcs to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilVpcExists(input *DescribeVpcsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeVpcs", Delay: 1, MaxAttempts: 5, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "status", Argument: "", Expected: 200, }, { State: "retry", Matcher: "error", Argument: "", Expected: "InvalidVpcID.NotFound", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilVpcPeeringConnectionExists uses the Amazon EC2 API operation // DescribeVpcPeeringConnections to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilVpcPeeringConnectionExists(input *DescribeVpcPeeringConnectionsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeVpcPeeringConnections", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "status", Argument: "", Expected: 200, }, { State: "retry", Matcher: "error", Argument: "", Expected: "InvalidVpcPeeringConnectionID.NotFound", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilVpnConnectionAvailable uses the Amazon EC2 API operation // DescribeVpnConnections to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilVpnConnectionAvailable(input *DescribeVpnConnectionsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeVpnConnections", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "VpnConnections[].State", Expected: "available", }, { State: "failure", Matcher: "pathAny", Argument: "VpnConnections[].State", Expected: "deleting", }, { State: "failure", Matcher: "pathAny", Argument: "VpnConnections[].State", Expected: "deleted", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilVpnConnectionDeleted uses the Amazon EC2 API operation // DescribeVpnConnections to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EC2) WaitUntilVpnConnectionDeleted(input *DescribeVpnConnectionsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeVpnConnections", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "VpnConnections[].State", Expected: "deleted", }, { State: "failure", Matcher: "pathAny", Argument: "VpnConnections[].State", Expected: "pending", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/ecr/000077500000000000000000000000001300374646400157745ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/ecr/api.go000066400000000000000000003037531300374646400171070ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package ecr provides a client for Amazon EC2 Container Registry. package ecr import ( "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opBatchCheckLayerAvailability = "BatchCheckLayerAvailability" // BatchCheckLayerAvailabilityRequest generates a "aws/request.Request" representing the // client's request for the BatchCheckLayerAvailability operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See BatchCheckLayerAvailability for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the BatchCheckLayerAvailability method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the BatchCheckLayerAvailabilityRequest method. // req, resp := client.BatchCheckLayerAvailabilityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECR) BatchCheckLayerAvailabilityRequest(input *BatchCheckLayerAvailabilityInput) (req *request.Request, output *BatchCheckLayerAvailabilityOutput) { op := &request.Operation{ Name: opBatchCheckLayerAvailability, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &BatchCheckLayerAvailabilityInput{} } req = c.newRequest(op, input, output) output = &BatchCheckLayerAvailabilityOutput{} req.Data = output return } // BatchCheckLayerAvailability API operation for Amazon EC2 Container Registry. // // Check the availability of multiple image layers in a specified registry and // repository. // // This operation is used by the Amazon ECR proxy, and it is not intended for // general use by customers. Use the docker CLI to pull, tag, and push images. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Registry's // API operation BatchCheckLayerAvailability for usage and error information. // // Returned Error Codes: // * RepositoryNotFoundException // The specified repository could not be found. Check the spelling of the specified // repository and ensure that you are performing operations on the correct registry. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * ServerException // These errors are usually caused by a server-side issue. // func (c *ECR) BatchCheckLayerAvailability(input *BatchCheckLayerAvailabilityInput) (*BatchCheckLayerAvailabilityOutput, error) { req, out := c.BatchCheckLayerAvailabilityRequest(input) err := req.Send() return out, err } const opBatchDeleteImage = "BatchDeleteImage" // BatchDeleteImageRequest generates a "aws/request.Request" representing the // client's request for the BatchDeleteImage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See BatchDeleteImage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the BatchDeleteImage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the BatchDeleteImageRequest method. // req, resp := client.BatchDeleteImageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECR) BatchDeleteImageRequest(input *BatchDeleteImageInput) (req *request.Request, output *BatchDeleteImageOutput) { op := &request.Operation{ Name: opBatchDeleteImage, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &BatchDeleteImageInput{} } req = c.newRequest(op, input, output) output = &BatchDeleteImageOutput{} req.Data = output return } // BatchDeleteImage API operation for Amazon EC2 Container Registry. // // Deletes a list of specified images within a specified repository. Images // are specified with either imageTag or imageDigest. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Registry's // API operation BatchDeleteImage for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server-side issue. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * RepositoryNotFoundException // The specified repository could not be found. Check the spelling of the specified // repository and ensure that you are performing operations on the correct registry. // func (c *ECR) BatchDeleteImage(input *BatchDeleteImageInput) (*BatchDeleteImageOutput, error) { req, out := c.BatchDeleteImageRequest(input) err := req.Send() return out, err } const opBatchGetImage = "BatchGetImage" // BatchGetImageRequest generates a "aws/request.Request" representing the // client's request for the BatchGetImage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See BatchGetImage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the BatchGetImage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the BatchGetImageRequest method. // req, resp := client.BatchGetImageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECR) BatchGetImageRequest(input *BatchGetImageInput) (req *request.Request, output *BatchGetImageOutput) { op := &request.Operation{ Name: opBatchGetImage, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &BatchGetImageInput{} } req = c.newRequest(op, input, output) output = &BatchGetImageOutput{} req.Data = output return } // BatchGetImage API operation for Amazon EC2 Container Registry. // // Gets detailed information for specified images within a specified repository. // Images are specified with either imageTag or imageDigest. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Registry's // API operation BatchGetImage for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server-side issue. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * RepositoryNotFoundException // The specified repository could not be found. Check the spelling of the specified // repository and ensure that you are performing operations on the correct registry. // func (c *ECR) BatchGetImage(input *BatchGetImageInput) (*BatchGetImageOutput, error) { req, out := c.BatchGetImageRequest(input) err := req.Send() return out, err } const opCompleteLayerUpload = "CompleteLayerUpload" // CompleteLayerUploadRequest generates a "aws/request.Request" representing the // client's request for the CompleteLayerUpload operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CompleteLayerUpload for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CompleteLayerUpload method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CompleteLayerUploadRequest method. // req, resp := client.CompleteLayerUploadRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECR) CompleteLayerUploadRequest(input *CompleteLayerUploadInput) (req *request.Request, output *CompleteLayerUploadOutput) { op := &request.Operation{ Name: opCompleteLayerUpload, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CompleteLayerUploadInput{} } req = c.newRequest(op, input, output) output = &CompleteLayerUploadOutput{} req.Data = output return } // CompleteLayerUpload API operation for Amazon EC2 Container Registry. // // Inform Amazon ECR that the image layer upload for a specified registry, repository // name, and upload ID, has completed. You can optionally provide a sha256 digest // of the image layer for data validation purposes. // // This operation is used by the Amazon ECR proxy, and it is not intended for // general use by customers. Use the docker CLI to pull, tag, and push images. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Registry's // API operation CompleteLayerUpload for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server-side issue. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * RepositoryNotFoundException // The specified repository could not be found. Check the spelling of the specified // repository and ensure that you are performing operations on the correct registry. // // * UploadNotFoundException // The upload could not be found, or the specified upload id is not valid for // this repository. // // * InvalidLayerException // The layer digest calculation performed by Amazon ECR upon receipt of the // image layer does not match the digest specified. // // * LayerPartTooSmallException // Layer parts must be at least 5 MiB in size. // // * LayerAlreadyExistsException // The image layer already exists in the associated repository. // // * EmptyUploadException // The specified layer upload does not contain any layer parts. // func (c *ECR) CompleteLayerUpload(input *CompleteLayerUploadInput) (*CompleteLayerUploadOutput, error) { req, out := c.CompleteLayerUploadRequest(input) err := req.Send() return out, err } const opCreateRepository = "CreateRepository" // CreateRepositoryRequest generates a "aws/request.Request" representing the // client's request for the CreateRepository operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateRepository for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateRepository method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateRepositoryRequest method. // req, resp := client.CreateRepositoryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECR) CreateRepositoryRequest(input *CreateRepositoryInput) (req *request.Request, output *CreateRepositoryOutput) { op := &request.Operation{ Name: opCreateRepository, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateRepositoryInput{} } req = c.newRequest(op, input, output) output = &CreateRepositoryOutput{} req.Data = output return } // CreateRepository API operation for Amazon EC2 Container Registry. // // Creates an image repository. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Registry's // API operation CreateRepository for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server-side issue. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * RepositoryAlreadyExistsException // The specified repository already exists in the specified registry. // // * LimitExceededException // The operation did not succeed because it would have exceeded a service limit // for your account. For more information, see Amazon ECR Default Service Limits // (http://docs.aws.amazon.com/AmazonECR/latest/userguide/service_limits.html) // in the Amazon EC2 Container Registry User Guide. // func (c *ECR) CreateRepository(input *CreateRepositoryInput) (*CreateRepositoryOutput, error) { req, out := c.CreateRepositoryRequest(input) err := req.Send() return out, err } const opDeleteRepository = "DeleteRepository" // DeleteRepositoryRequest generates a "aws/request.Request" representing the // client's request for the DeleteRepository operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteRepository for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteRepository method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteRepositoryRequest method. // req, resp := client.DeleteRepositoryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECR) DeleteRepositoryRequest(input *DeleteRepositoryInput) (req *request.Request, output *DeleteRepositoryOutput) { op := &request.Operation{ Name: opDeleteRepository, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteRepositoryInput{} } req = c.newRequest(op, input, output) output = &DeleteRepositoryOutput{} req.Data = output return } // DeleteRepository API operation for Amazon EC2 Container Registry. // // Deletes an existing image repository. If a repository contains images, you // must use the force option to delete it. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Registry's // API operation DeleteRepository for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server-side issue. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * RepositoryNotFoundException // The specified repository could not be found. Check the spelling of the specified // repository and ensure that you are performing operations on the correct registry. // // * RepositoryNotEmptyException // The specified repository contains images. To delete a repository that contains // images, you must force the deletion with the force parameter. // func (c *ECR) DeleteRepository(input *DeleteRepositoryInput) (*DeleteRepositoryOutput, error) { req, out := c.DeleteRepositoryRequest(input) err := req.Send() return out, err } const opDeleteRepositoryPolicy = "DeleteRepositoryPolicy" // DeleteRepositoryPolicyRequest generates a "aws/request.Request" representing the // client's request for the DeleteRepositoryPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteRepositoryPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteRepositoryPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteRepositoryPolicyRequest method. // req, resp := client.DeleteRepositoryPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECR) DeleteRepositoryPolicyRequest(input *DeleteRepositoryPolicyInput) (req *request.Request, output *DeleteRepositoryPolicyOutput) { op := &request.Operation{ Name: opDeleteRepositoryPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteRepositoryPolicyInput{} } req = c.newRequest(op, input, output) output = &DeleteRepositoryPolicyOutput{} req.Data = output return } // DeleteRepositoryPolicy API operation for Amazon EC2 Container Registry. // // Deletes the repository policy from a specified repository. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Registry's // API operation DeleteRepositoryPolicy for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server-side issue. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * RepositoryNotFoundException // The specified repository could not be found. Check the spelling of the specified // repository and ensure that you are performing operations on the correct registry. // // * RepositoryPolicyNotFoundException // The specified repository and registry combination does not have an associated // repository policy. // func (c *ECR) DeleteRepositoryPolicy(input *DeleteRepositoryPolicyInput) (*DeleteRepositoryPolicyOutput, error) { req, out := c.DeleteRepositoryPolicyRequest(input) err := req.Send() return out, err } const opDescribeImages = "DescribeImages" // DescribeImagesRequest generates a "aws/request.Request" representing the // client's request for the DescribeImages operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeImages for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeImages method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeImagesRequest method. // req, resp := client.DescribeImagesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECR) DescribeImagesRequest(input *DescribeImagesInput) (req *request.Request, output *DescribeImagesOutput) { op := &request.Operation{ Name: opDescribeImages, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeImagesInput{} } req = c.newRequest(op, input, output) output = &DescribeImagesOutput{} req.Data = output return } // DescribeImages API operation for Amazon EC2 Container Registry. // // Returns metadata about the images in a repository, including image size and // creation date. // // Beginning with Docker version 1.9, the Docker client compresses image layers // before pushing them to a V2 Docker registry. The output of the docker images // command shows the uncompressed image size, so it may return a larger image // size than the image sizes returned by DescribeImages. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Registry's // API operation DescribeImages for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server-side issue. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * RepositoryNotFoundException // The specified repository could not be found. Check the spelling of the specified // repository and ensure that you are performing operations on the correct registry. // // * ImageNotFoundException // The image requested does not exist in the specified repository. // func (c *ECR) DescribeImages(input *DescribeImagesInput) (*DescribeImagesOutput, error) { req, out := c.DescribeImagesRequest(input) err := req.Send() return out, err } const opDescribeRepositories = "DescribeRepositories" // DescribeRepositoriesRequest generates a "aws/request.Request" representing the // client's request for the DescribeRepositories operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeRepositories for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeRepositories method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeRepositoriesRequest method. // req, resp := client.DescribeRepositoriesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECR) DescribeRepositoriesRequest(input *DescribeRepositoriesInput) (req *request.Request, output *DescribeRepositoriesOutput) { op := &request.Operation{ Name: opDescribeRepositories, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeRepositoriesInput{} } req = c.newRequest(op, input, output) output = &DescribeRepositoriesOutput{} req.Data = output return } // DescribeRepositories API operation for Amazon EC2 Container Registry. // // Describes image repositories in a registry. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Registry's // API operation DescribeRepositories for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server-side issue. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * RepositoryNotFoundException // The specified repository could not be found. Check the spelling of the specified // repository and ensure that you are performing operations on the correct registry. // func (c *ECR) DescribeRepositories(input *DescribeRepositoriesInput) (*DescribeRepositoriesOutput, error) { req, out := c.DescribeRepositoriesRequest(input) err := req.Send() return out, err } const opGetAuthorizationToken = "GetAuthorizationToken" // GetAuthorizationTokenRequest generates a "aws/request.Request" representing the // client's request for the GetAuthorizationToken operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetAuthorizationToken for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetAuthorizationToken method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetAuthorizationTokenRequest method. // req, resp := client.GetAuthorizationTokenRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECR) GetAuthorizationTokenRequest(input *GetAuthorizationTokenInput) (req *request.Request, output *GetAuthorizationTokenOutput) { op := &request.Operation{ Name: opGetAuthorizationToken, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetAuthorizationTokenInput{} } req = c.newRequest(op, input, output) output = &GetAuthorizationTokenOutput{} req.Data = output return } // GetAuthorizationToken API operation for Amazon EC2 Container Registry. // // Retrieves a token that is valid for a specified registry for 12 hours. This // command allows you to use the docker CLI to push and pull images with Amazon // ECR. If you do not specify a registry, the default registry is assumed. // // The authorizationToken returned for each registry specified is a base64 encoded // string that can be decoded and used in a docker login command to authenticate // to a registry. The AWS CLI offers an aws ecr get-login command that simplifies // the login process. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Registry's // API operation GetAuthorizationToken for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server-side issue. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // func (c *ECR) GetAuthorizationToken(input *GetAuthorizationTokenInput) (*GetAuthorizationTokenOutput, error) { req, out := c.GetAuthorizationTokenRequest(input) err := req.Send() return out, err } const opGetDownloadUrlForLayer = "GetDownloadUrlForLayer" // GetDownloadUrlForLayerRequest generates a "aws/request.Request" representing the // client's request for the GetDownloadUrlForLayer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDownloadUrlForLayer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDownloadUrlForLayer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDownloadUrlForLayerRequest method. // req, resp := client.GetDownloadUrlForLayerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECR) GetDownloadUrlForLayerRequest(input *GetDownloadUrlForLayerInput) (req *request.Request, output *GetDownloadUrlForLayerOutput) { op := &request.Operation{ Name: opGetDownloadUrlForLayer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetDownloadUrlForLayerInput{} } req = c.newRequest(op, input, output) output = &GetDownloadUrlForLayerOutput{} req.Data = output return } // GetDownloadUrlForLayer API operation for Amazon EC2 Container Registry. // // Retrieves the pre-signed Amazon S3 download URL corresponding to an image // layer. You can only get URLs for image layers that are referenced in an image. // // This operation is used by the Amazon ECR proxy, and it is not intended for // general use by customers. Use the docker CLI to pull, tag, and push images. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Registry's // API operation GetDownloadUrlForLayer for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server-side issue. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * LayersNotFoundException // The specified layers could not be found, or the specified layer is not valid // for this repository. // // * LayerInaccessibleException // The specified layer is not available because it is not associated with an // image. Unassociated image layers may be cleaned up at any time. // // * RepositoryNotFoundException // The specified repository could not be found. Check the spelling of the specified // repository and ensure that you are performing operations on the correct registry. // func (c *ECR) GetDownloadUrlForLayer(input *GetDownloadUrlForLayerInput) (*GetDownloadUrlForLayerOutput, error) { req, out := c.GetDownloadUrlForLayerRequest(input) err := req.Send() return out, err } const opGetRepositoryPolicy = "GetRepositoryPolicy" // GetRepositoryPolicyRequest generates a "aws/request.Request" representing the // client's request for the GetRepositoryPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetRepositoryPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetRepositoryPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetRepositoryPolicyRequest method. // req, resp := client.GetRepositoryPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECR) GetRepositoryPolicyRequest(input *GetRepositoryPolicyInput) (req *request.Request, output *GetRepositoryPolicyOutput) { op := &request.Operation{ Name: opGetRepositoryPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetRepositoryPolicyInput{} } req = c.newRequest(op, input, output) output = &GetRepositoryPolicyOutput{} req.Data = output return } // GetRepositoryPolicy API operation for Amazon EC2 Container Registry. // // Retrieves the repository policy for a specified repository. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Registry's // API operation GetRepositoryPolicy for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server-side issue. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * RepositoryNotFoundException // The specified repository could not be found. Check the spelling of the specified // repository and ensure that you are performing operations on the correct registry. // // * RepositoryPolicyNotFoundException // The specified repository and registry combination does not have an associated // repository policy. // func (c *ECR) GetRepositoryPolicy(input *GetRepositoryPolicyInput) (*GetRepositoryPolicyOutput, error) { req, out := c.GetRepositoryPolicyRequest(input) err := req.Send() return out, err } const opInitiateLayerUpload = "InitiateLayerUpload" // InitiateLayerUploadRequest generates a "aws/request.Request" representing the // client's request for the InitiateLayerUpload operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InitiateLayerUpload for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InitiateLayerUpload method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InitiateLayerUploadRequest method. // req, resp := client.InitiateLayerUploadRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECR) InitiateLayerUploadRequest(input *InitiateLayerUploadInput) (req *request.Request, output *InitiateLayerUploadOutput) { op := &request.Operation{ Name: opInitiateLayerUpload, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &InitiateLayerUploadInput{} } req = c.newRequest(op, input, output) output = &InitiateLayerUploadOutput{} req.Data = output return } // InitiateLayerUpload API operation for Amazon EC2 Container Registry. // // Notify Amazon ECR that you intend to upload an image layer. // // This operation is used by the Amazon ECR proxy, and it is not intended for // general use by customers. Use the docker CLI to pull, tag, and push images. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Registry's // API operation InitiateLayerUpload for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server-side issue. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * RepositoryNotFoundException // The specified repository could not be found. Check the spelling of the specified // repository and ensure that you are performing operations on the correct registry. // func (c *ECR) InitiateLayerUpload(input *InitiateLayerUploadInput) (*InitiateLayerUploadOutput, error) { req, out := c.InitiateLayerUploadRequest(input) err := req.Send() return out, err } const opListImages = "ListImages" // ListImagesRequest generates a "aws/request.Request" representing the // client's request for the ListImages operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListImages for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListImages method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListImagesRequest method. // req, resp := client.ListImagesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECR) ListImagesRequest(input *ListImagesInput) (req *request.Request, output *ListImagesOutput) { op := &request.Operation{ Name: opListImages, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListImagesInput{} } req = c.newRequest(op, input, output) output = &ListImagesOutput{} req.Data = output return } // ListImages API operation for Amazon EC2 Container Registry. // // Lists all the image IDs for a given repository. // // You can filter images based on whether or not they are tagged by setting // the tagStatus parameter to TAGGED or UNTAGGED. For example, you can filter // your results to return only UNTAGGED images and then pipe that result to // a BatchDeleteImage operation to delete them. Or, you can filter your results // to return only TAGGED images to list all of the tags in your repository. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Registry's // API operation ListImages for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server-side issue. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * RepositoryNotFoundException // The specified repository could not be found. Check the spelling of the specified // repository and ensure that you are performing operations on the correct registry. // func (c *ECR) ListImages(input *ListImagesInput) (*ListImagesOutput, error) { req, out := c.ListImagesRequest(input) err := req.Send() return out, err } const opPutImage = "PutImage" // PutImageRequest generates a "aws/request.Request" representing the // client's request for the PutImage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutImage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutImage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutImageRequest method. // req, resp := client.PutImageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECR) PutImageRequest(input *PutImageInput) (req *request.Request, output *PutImageOutput) { op := &request.Operation{ Name: opPutImage, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutImageInput{} } req = c.newRequest(op, input, output) output = &PutImageOutput{} req.Data = output return } // PutImage API operation for Amazon EC2 Container Registry. // // Creates or updates the image manifest associated with an image. // // This operation is used by the Amazon ECR proxy, and it is not intended for // general use by customers. Use the docker CLI to pull, tag, and push images. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Registry's // API operation PutImage for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server-side issue. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * RepositoryNotFoundException // The specified repository could not be found. Check the spelling of the specified // repository and ensure that you are performing operations on the correct registry. // // * ImageAlreadyExistsException // The specified image has already been pushed, and there are no changes to // the manifest or image tag since the last push. // // * LayersNotFoundException // The specified layers could not be found, or the specified layer is not valid // for this repository. // // * LimitExceededException // The operation did not succeed because it would have exceeded a service limit // for your account. For more information, see Amazon ECR Default Service Limits // (http://docs.aws.amazon.com/AmazonECR/latest/userguide/service_limits.html) // in the Amazon EC2 Container Registry User Guide. // func (c *ECR) PutImage(input *PutImageInput) (*PutImageOutput, error) { req, out := c.PutImageRequest(input) err := req.Send() return out, err } const opSetRepositoryPolicy = "SetRepositoryPolicy" // SetRepositoryPolicyRequest generates a "aws/request.Request" representing the // client's request for the SetRepositoryPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetRepositoryPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetRepositoryPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetRepositoryPolicyRequest method. // req, resp := client.SetRepositoryPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECR) SetRepositoryPolicyRequest(input *SetRepositoryPolicyInput) (req *request.Request, output *SetRepositoryPolicyOutput) { op := &request.Operation{ Name: opSetRepositoryPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetRepositoryPolicyInput{} } req = c.newRequest(op, input, output) output = &SetRepositoryPolicyOutput{} req.Data = output return } // SetRepositoryPolicy API operation for Amazon EC2 Container Registry. // // Applies a repository policy on a specified repository to control access permissions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Registry's // API operation SetRepositoryPolicy for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server-side issue. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * RepositoryNotFoundException // The specified repository could not be found. Check the spelling of the specified // repository and ensure that you are performing operations on the correct registry. // func (c *ECR) SetRepositoryPolicy(input *SetRepositoryPolicyInput) (*SetRepositoryPolicyOutput, error) { req, out := c.SetRepositoryPolicyRequest(input) err := req.Send() return out, err } const opUploadLayerPart = "UploadLayerPart" // UploadLayerPartRequest generates a "aws/request.Request" representing the // client's request for the UploadLayerPart operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UploadLayerPart for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UploadLayerPart method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UploadLayerPartRequest method. // req, resp := client.UploadLayerPartRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECR) UploadLayerPartRequest(input *UploadLayerPartInput) (req *request.Request, output *UploadLayerPartOutput) { op := &request.Operation{ Name: opUploadLayerPart, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UploadLayerPartInput{} } req = c.newRequest(op, input, output) output = &UploadLayerPartOutput{} req.Data = output return } // UploadLayerPart API operation for Amazon EC2 Container Registry. // // Uploads an image layer part to Amazon ECR. // // This operation is used by the Amazon ECR proxy, and it is not intended for // general use by customers. Use the docker CLI to pull, tag, and push images. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Registry's // API operation UploadLayerPart for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server-side issue. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * InvalidLayerPartException // The layer part size is not valid, or the first byte specified is not consecutive // to the last byte of a previous layer part upload. // // * RepositoryNotFoundException // The specified repository could not be found. Check the spelling of the specified // repository and ensure that you are performing operations on the correct registry. // // * UploadNotFoundException // The upload could not be found, or the specified upload id is not valid for // this repository. // // * LimitExceededException // The operation did not succeed because it would have exceeded a service limit // for your account. For more information, see Amazon ECR Default Service Limits // (http://docs.aws.amazon.com/AmazonECR/latest/userguide/service_limits.html) // in the Amazon EC2 Container Registry User Guide. // func (c *ECR) UploadLayerPart(input *UploadLayerPartInput) (*UploadLayerPartOutput, error) { req, out := c.UploadLayerPartRequest(input) err := req.Send() return out, err } // An object representing authorization data for an Amazon ECR registry. type AuthorizationData struct { _ struct{} `type:"structure"` // A base64-encoded string that contains authorization data for the specified // Amazon ECR registry. When the string is decoded, it is presented in the format // user:password for private registry authentication using docker login. AuthorizationToken *string `locationName:"authorizationToken" type:"string"` // The Unix time in seconds and milliseconds when the authorization token expires. // Authorization tokens are valid for 12 hours. ExpiresAt *time.Time `locationName:"expiresAt" type:"timestamp" timestampFormat:"unix"` // The registry URL to use for this authorization token in a docker login command. // The Amazon ECR registry URL format is https://aws_account_id.dkr.ecr.region.amazonaws.com. // For example, https://012345678910.dkr.ecr.us-east-1.amazonaws.com.. ProxyEndpoint *string `locationName:"proxyEndpoint" type:"string"` } // String returns the string representation func (s AuthorizationData) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AuthorizationData) GoString() string { return s.String() } type BatchCheckLayerAvailabilityInput struct { _ struct{} `type:"structure"` // The digests of the image layers to check. // // LayerDigests is a required field LayerDigests []*string `locationName:"layerDigests" min:"1" type:"list" required:"true"` // The AWS account ID associated with the registry that contains the image layers // to check. If you do not specify a registry, the default registry is assumed. RegistryId *string `locationName:"registryId" type:"string"` // The name of the repository that is associated with the image layers to check. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"2" type:"string" required:"true"` } // String returns the string representation func (s BatchCheckLayerAvailabilityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchCheckLayerAvailabilityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BatchCheckLayerAvailabilityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BatchCheckLayerAvailabilityInput"} if s.LayerDigests == nil { invalidParams.Add(request.NewErrParamRequired("LayerDigests")) } if s.LayerDigests != nil && len(s.LayerDigests) < 1 { invalidParams.Add(request.NewErrParamMinLen("LayerDigests", 1)) } if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 2 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 2)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type BatchCheckLayerAvailabilityOutput struct { _ struct{} `type:"structure"` // Any failures associated with the call. Failures []*LayerFailure `locationName:"failures" type:"list"` // A list of image layer objects corresponding to the image layer references // in the request. Layers []*Layer `locationName:"layers" type:"list"` } // String returns the string representation func (s BatchCheckLayerAvailabilityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchCheckLayerAvailabilityOutput) GoString() string { return s.String() } // Deletes specified images within a specified repository. Images are specified // with either the imageTag or imageDigest. type BatchDeleteImageInput struct { _ struct{} `type:"structure"` // A list of image ID references that correspond to images to delete. The format // of the imageIds reference is imageTag=tag or imageDigest=digest. // // ImageIds is a required field ImageIds []*ImageIdentifier `locationName:"imageIds" min:"1" type:"list" required:"true"` // The AWS account ID associated with the registry that contains the image to // delete. If you do not specify a registry, the default registry is assumed. RegistryId *string `locationName:"registryId" type:"string"` // The repository that contains the image to delete. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"2" type:"string" required:"true"` } // String returns the string representation func (s BatchDeleteImageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchDeleteImageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BatchDeleteImageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BatchDeleteImageInput"} if s.ImageIds == nil { invalidParams.Add(request.NewErrParamRequired("ImageIds")) } if s.ImageIds != nil && len(s.ImageIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("ImageIds", 1)) } if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 2 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 2)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type BatchDeleteImageOutput struct { _ struct{} `type:"structure"` // Any failures associated with the call. Failures []*ImageFailure `locationName:"failures" type:"list"` // The image IDs of the deleted images. ImageIds []*ImageIdentifier `locationName:"imageIds" min:"1" type:"list"` } // String returns the string representation func (s BatchDeleteImageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchDeleteImageOutput) GoString() string { return s.String() } type BatchGetImageInput struct { _ struct{} `type:"structure"` // A list of image ID references that correspond to images to describe. The // format of the imageIds reference is imageTag=tag or imageDigest=digest. // // ImageIds is a required field ImageIds []*ImageIdentifier `locationName:"imageIds" min:"1" type:"list" required:"true"` // The AWS account ID associated with the registry that contains the images // to describe. If you do not specify a registry, the default registry is assumed. RegistryId *string `locationName:"registryId" type:"string"` // The repository that contains the images to describe. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"2" type:"string" required:"true"` } // String returns the string representation func (s BatchGetImageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchGetImageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BatchGetImageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BatchGetImageInput"} if s.ImageIds == nil { invalidParams.Add(request.NewErrParamRequired("ImageIds")) } if s.ImageIds != nil && len(s.ImageIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("ImageIds", 1)) } if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 2 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 2)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type BatchGetImageOutput struct { _ struct{} `type:"structure"` // Any failures associated with the call. Failures []*ImageFailure `locationName:"failures" type:"list"` // A list of image objects corresponding to the image references in the request. Images []*Image `locationName:"images" type:"list"` } // String returns the string representation func (s BatchGetImageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchGetImageOutput) GoString() string { return s.String() } type CompleteLayerUploadInput struct { _ struct{} `type:"structure"` // The sha256 digest of the image layer. // // LayerDigests is a required field LayerDigests []*string `locationName:"layerDigests" min:"1" type:"list" required:"true"` // The AWS account ID associated with the registry to which to upload layers. // If you do not specify a registry, the default registry is assumed. RegistryId *string `locationName:"registryId" type:"string"` // The name of the repository to associate with the image layer. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"2" type:"string" required:"true"` // The upload ID from a previous InitiateLayerUpload operation to associate // with the image layer. // // UploadId is a required field UploadId *string `locationName:"uploadId" type:"string" required:"true"` } // String returns the string representation func (s CompleteLayerUploadInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CompleteLayerUploadInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CompleteLayerUploadInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CompleteLayerUploadInput"} if s.LayerDigests == nil { invalidParams.Add(request.NewErrParamRequired("LayerDigests")) } if s.LayerDigests != nil && len(s.LayerDigests) < 1 { invalidParams.Add(request.NewErrParamMinLen("LayerDigests", 1)) } if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 2 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 2)) } if s.UploadId == nil { invalidParams.Add(request.NewErrParamRequired("UploadId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CompleteLayerUploadOutput struct { _ struct{} `type:"structure"` // The sha256 digest of the image layer. LayerDigest *string `locationName:"layerDigest" type:"string"` // The registry ID associated with the request. RegistryId *string `locationName:"registryId" type:"string"` // The repository name associated with the request. RepositoryName *string `locationName:"repositoryName" min:"2" type:"string"` // The upload ID associated with the layer. UploadId *string `locationName:"uploadId" type:"string"` } // String returns the string representation func (s CompleteLayerUploadOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CompleteLayerUploadOutput) GoString() string { return s.String() } type CreateRepositoryInput struct { _ struct{} `type:"structure"` // The name to use for the repository. The repository name may be specified // on its own (such as nginx-web-app) or it can be prepended with a namespace // to group the repository into a category (such as project-a/nginx-web-app). // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"2" type:"string" required:"true"` } // String returns the string representation func (s CreateRepositoryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRepositoryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateRepositoryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateRepositoryInput"} if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 2 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 2)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateRepositoryOutput struct { _ struct{} `type:"structure"` // The repository that was created. Repository *Repository `locationName:"repository" type:"structure"` } // String returns the string representation func (s CreateRepositoryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRepositoryOutput) GoString() string { return s.String() } type DeleteRepositoryInput struct { _ struct{} `type:"structure"` // Force the deletion of the repository if it contains images. Force *bool `locationName:"force" type:"boolean"` // The AWS account ID associated with the registry that contains the repository // to delete. If you do not specify a registry, the default registry is assumed. RegistryId *string `locationName:"registryId" type:"string"` // The name of the repository to delete. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"2" type:"string" required:"true"` } // String returns the string representation func (s DeleteRepositoryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRepositoryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteRepositoryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteRepositoryInput"} if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 2 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 2)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteRepositoryOutput struct { _ struct{} `type:"structure"` // The repository that was deleted. Repository *Repository `locationName:"repository" type:"structure"` } // String returns the string representation func (s DeleteRepositoryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRepositoryOutput) GoString() string { return s.String() } type DeleteRepositoryPolicyInput struct { _ struct{} `type:"structure"` // The AWS account ID associated with the registry that contains the repository // policy to delete. If you do not specify a registry, the default registry // is assumed. RegistryId *string `locationName:"registryId" type:"string"` // The name of the repository that is associated with the repository policy // to delete. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"2" type:"string" required:"true"` } // String returns the string representation func (s DeleteRepositoryPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRepositoryPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteRepositoryPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteRepositoryPolicyInput"} if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 2 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 2)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteRepositoryPolicyOutput struct { _ struct{} `type:"structure"` // The JSON repository policy that was deleted from the repository. PolicyText *string `locationName:"policyText" type:"string"` // The registry ID associated with the request. RegistryId *string `locationName:"registryId" type:"string"` // The repository name associated with the request. RepositoryName *string `locationName:"repositoryName" min:"2" type:"string"` } // String returns the string representation func (s DeleteRepositoryPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRepositoryPolicyOutput) GoString() string { return s.String() } // An object representing a filter on a DescribeImages operation. type DescribeImagesFilter struct { _ struct{} `type:"structure"` // The tag status with which to filter your DescribeImages results. You can // filter results based on whether they are TAGGED or UNTAGGED. TagStatus *string `locationName:"tagStatus" type:"string" enum:"TagStatus"` } // String returns the string representation func (s DescribeImagesFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeImagesFilter) GoString() string { return s.String() } type DescribeImagesInput struct { _ struct{} `type:"structure"` // The filter key and value with which to filter your DescribeImages results. Filter *DescribeImagesFilter `locationName:"filter" type:"structure"` // The list of image IDs for the requested repository. ImageIds []*ImageIdentifier `locationName:"imageIds" min:"1" type:"list"` // The maximum number of repository results returned by DescribeImages in paginated // output. When this parameter is used, DescribeImages only returns maxResults // results in a single page along with a nextToken response element. The remaining // results of the initial request can be seen by sending another DescribeImages // request with the returned nextToken value. This value can be between 1 and // 100. If this parameter is not used, then DescribeImages returns up to 100 // results and a nextToken value, if applicable. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` // The nextToken value returned from a previous paginated DescribeImages request // where maxResults was used and the results exceeded the value of that parameter. // Pagination continues from the end of the previous results that returned the // nextToken value. This value is null when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` // The AWS account ID associated with the registry that contains the repository // in which to list images. If you do not specify a registry, the default registry // is assumed. RegistryId *string `locationName:"registryId" type:"string"` // A list of repositories to describe. If this parameter is omitted, then all // repositories in a registry are described. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"2" type:"string" required:"true"` } // String returns the string representation func (s DescribeImagesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeImagesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeImagesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeImagesInput"} if s.ImageIds != nil && len(s.ImageIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("ImageIds", 1)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 2 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 2)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeImagesOutput struct { _ struct{} `type:"structure"` // A list of ImageDetail objects that contain data about the image. ImageDetails []*ImageDetail `locationName:"imageDetails" type:"list"` // The nextToken value to include in a future DescribeImages request. When the // results of a DescribeImages request exceed maxResults, this value can be // used to retrieve the next page of results. This value is null when there // are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeImagesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeImagesOutput) GoString() string { return s.String() } type DescribeRepositoriesInput struct { _ struct{} `type:"structure"` // The maximum number of repository results returned by DescribeRepositories // in paginated output. When this parameter is used, DescribeRepositories only // returns maxResults results in a single page along with a nextToken response // element. The remaining results of the initial request can be seen by sending // another DescribeRepositories request with the returned nextToken value. This // value can be between 1 and 100. If this parameter is not used, then DescribeRepositories // returns up to 100 results and a nextToken value, if applicable. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` // The nextToken value returned from a previous paginated DescribeRepositories // request where maxResults was used and the results exceeded the value of that // parameter. Pagination continues from the end of the previous results that // returned the nextToken value. This value is null when there are no more results // to return. // // This token should be treated as an opaque identifier that is only used to // retrieve the next items in a list and not for other programmatic purposes. NextToken *string `locationName:"nextToken" type:"string"` // The AWS account ID associated with the registry that contains the repositories // to be described. If you do not specify a registry, the default registry is // assumed. RegistryId *string `locationName:"registryId" type:"string"` // A list of repositories to describe. If this parameter is omitted, then all // repositories in a registry are described. RepositoryNames []*string `locationName:"repositoryNames" min:"1" type:"list"` } // String returns the string representation func (s DescribeRepositoriesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRepositoriesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeRepositoriesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeRepositoriesInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.RepositoryNames != nil && len(s.RepositoryNames) < 1 { invalidParams.Add(request.NewErrParamMinLen("RepositoryNames", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeRepositoriesOutput struct { _ struct{} `type:"structure"` // The nextToken value to include in a future DescribeRepositories request. // When the results of a DescribeRepositories request exceed maxResults, this // value can be used to retrieve the next page of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` // A list of repository objects corresponding to valid repositories. Repositories []*Repository `locationName:"repositories" type:"list"` } // String returns the string representation func (s DescribeRepositoriesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRepositoriesOutput) GoString() string { return s.String() } type GetAuthorizationTokenInput struct { _ struct{} `type:"structure"` // A list of AWS account IDs that are associated with the registries for which // to get authorization tokens. If you do not specify a registry, the default // registry is assumed. RegistryIds []*string `locationName:"registryIds" min:"1" type:"list"` } // String returns the string representation func (s GetAuthorizationTokenInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAuthorizationTokenInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetAuthorizationTokenInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetAuthorizationTokenInput"} if s.RegistryIds != nil && len(s.RegistryIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("RegistryIds", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetAuthorizationTokenOutput struct { _ struct{} `type:"structure"` // A list of authorization token data objects that correspond to the registryIds // values in the request. AuthorizationData []*AuthorizationData `locationName:"authorizationData" type:"list"` } // String returns the string representation func (s GetAuthorizationTokenOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAuthorizationTokenOutput) GoString() string { return s.String() } type GetDownloadUrlForLayerInput struct { _ struct{} `type:"structure"` // The digest of the image layer to download. // // LayerDigest is a required field LayerDigest *string `locationName:"layerDigest" type:"string" required:"true"` // The AWS account ID associated with the registry that contains the image layer // to download. If you do not specify a registry, the default registry is assumed. RegistryId *string `locationName:"registryId" type:"string"` // The name of the repository that is associated with the image layer to download. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"2" type:"string" required:"true"` } // String returns the string representation func (s GetDownloadUrlForLayerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDownloadUrlForLayerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDownloadUrlForLayerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDownloadUrlForLayerInput"} if s.LayerDigest == nil { invalidParams.Add(request.NewErrParamRequired("LayerDigest")) } if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 2 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 2)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetDownloadUrlForLayerOutput struct { _ struct{} `type:"structure"` // The pre-signed Amazon S3 download URL for the requested layer. DownloadUrl *string `locationName:"downloadUrl" type:"string"` // The digest of the image layer to download. LayerDigest *string `locationName:"layerDigest" type:"string"` } // String returns the string representation func (s GetDownloadUrlForLayerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDownloadUrlForLayerOutput) GoString() string { return s.String() } type GetRepositoryPolicyInput struct { _ struct{} `type:"structure"` // The AWS account ID associated with the registry that contains the repository. // If you do not specify a registry, the default registry is assumed. RegistryId *string `locationName:"registryId" type:"string"` // The name of the repository whose policy you want to retrieve. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"2" type:"string" required:"true"` } // String returns the string representation func (s GetRepositoryPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRepositoryPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetRepositoryPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetRepositoryPolicyInput"} if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 2 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 2)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetRepositoryPolicyOutput struct { _ struct{} `type:"structure"` // The JSON repository policy text associated with the repository. PolicyText *string `locationName:"policyText" type:"string"` // The registry ID associated with the request. RegistryId *string `locationName:"registryId" type:"string"` // The repository name associated with the request. RepositoryName *string `locationName:"repositoryName" min:"2" type:"string"` } // String returns the string representation func (s GetRepositoryPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRepositoryPolicyOutput) GoString() string { return s.String() } // An object representing an Amazon ECR image. type Image struct { _ struct{} `type:"structure"` // An object containing the image tag and image digest associated with an image. ImageId *ImageIdentifier `locationName:"imageId" type:"structure"` // The image manifest associated with the image. ImageManifest *string `locationName:"imageManifest" type:"string"` // The AWS account ID associated with the registry containing the image. RegistryId *string `locationName:"registryId" type:"string"` // The name of the repository associated with the image. RepositoryName *string `locationName:"repositoryName" min:"2" type:"string"` } // String returns the string representation func (s Image) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Image) GoString() string { return s.String() } // An object that describes an image returned by a DescribeImages operation. type ImageDetail struct { _ struct{} `type:"structure"` // The sha256 digest of the image manifest. ImageDigest *string `locationName:"imageDigest" type:"string"` // The date and time, expressed in standard JavaScript date format, at which // the current image was pushed to the repository. ImagePushedAt *time.Time `locationName:"imagePushedAt" type:"timestamp" timestampFormat:"unix"` // The size, in bytes, of the image in the repository. // // Beginning with Docker version 1.9, the Docker client compresses image layers // before pushing them to a V2 Docker registry. The output of the docker images // command shows the uncompressed image size, so it may return a larger image // size than the image sizes returned by DescribeImages. ImageSizeInBytes *int64 `locationName:"imageSizeInBytes" type:"long"` // The list of tags associated with this image. ImageTags []*string `locationName:"imageTags" type:"list"` // The AWS account ID associated with the registry to which this image belongs. RegistryId *string `locationName:"registryId" type:"string"` // The name of the repository to which this image belongs. RepositoryName *string `locationName:"repositoryName" min:"2" type:"string"` } // String returns the string representation func (s ImageDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImageDetail) GoString() string { return s.String() } // An object representing an Amazon ECR image failure. type ImageFailure struct { _ struct{} `type:"structure"` // The code associated with the failure. FailureCode *string `locationName:"failureCode" type:"string" enum:"ImageFailureCode"` // The reason for the failure. FailureReason *string `locationName:"failureReason" type:"string"` // The image ID associated with the failure. ImageId *ImageIdentifier `locationName:"imageId" type:"structure"` } // String returns the string representation func (s ImageFailure) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImageFailure) GoString() string { return s.String() } // An object with identifying information for an Amazon ECR image. type ImageIdentifier struct { _ struct{} `type:"structure"` // The sha256 digest of the image manifest. ImageDigest *string `locationName:"imageDigest" type:"string"` // The tag used for the image. ImageTag *string `locationName:"imageTag" type:"string"` } // String returns the string representation func (s ImageIdentifier) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImageIdentifier) GoString() string { return s.String() } type InitiateLayerUploadInput struct { _ struct{} `type:"structure"` // The AWS account ID associated with the registry that you intend to upload // layers to. If you do not specify a registry, the default registry is assumed. RegistryId *string `locationName:"registryId" type:"string"` // The name of the repository that you intend to upload layers to. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"2" type:"string" required:"true"` } // String returns the string representation func (s InitiateLayerUploadInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InitiateLayerUploadInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InitiateLayerUploadInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InitiateLayerUploadInput"} if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 2 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 2)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type InitiateLayerUploadOutput struct { _ struct{} `type:"structure"` // The size, in bytes, that Amazon ECR expects future layer part uploads to // be. PartSize *int64 `locationName:"partSize" type:"long"` // The upload ID for the layer upload. This parameter is passed to further UploadLayerPart // and CompleteLayerUpload operations. UploadId *string `locationName:"uploadId" type:"string"` } // String returns the string representation func (s InitiateLayerUploadOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InitiateLayerUploadOutput) GoString() string { return s.String() } // An object representing an Amazon ECR image layer. type Layer struct { _ struct{} `type:"structure"` // The availability status of the image layer. Valid values are AVAILABLE and // UNAVAILABLE. LayerAvailability *string `locationName:"layerAvailability" type:"string" enum:"LayerAvailability"` // The sha256 digest of the image layer. LayerDigest *string `locationName:"layerDigest" type:"string"` // The size, in bytes, of the image layer. LayerSize *int64 `locationName:"layerSize" type:"long"` } // String returns the string representation func (s Layer) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Layer) GoString() string { return s.String() } // An object representing an Amazon ECR image layer failure. type LayerFailure struct { _ struct{} `type:"structure"` // The failure code associated with the failure. FailureCode *string `locationName:"failureCode" type:"string" enum:"LayerFailureCode"` // The reason for the failure. FailureReason *string `locationName:"failureReason" type:"string"` // The layer digest associated with the failure. LayerDigest *string `locationName:"layerDigest" type:"string"` } // String returns the string representation func (s LayerFailure) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LayerFailure) GoString() string { return s.String() } // An object representing a filter on a ListImages operation. type ListImagesFilter struct { _ struct{} `type:"structure"` // The tag status with which to filter your ListImages results. You can filter // results based on whether they are TAGGED or UNTAGGED. TagStatus *string `locationName:"tagStatus" type:"string" enum:"TagStatus"` } // String returns the string representation func (s ListImagesFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListImagesFilter) GoString() string { return s.String() } type ListImagesInput struct { _ struct{} `type:"structure"` // The filter key and value with which to filter your ListImages results. Filter *ListImagesFilter `locationName:"filter" type:"structure"` // The maximum number of image results returned by ListImages in paginated output. // When this parameter is used, ListImages only returns maxResults results in // a single page along with a nextToken response element. The remaining results // of the initial request can be seen by sending another ListImages request // with the returned nextToken value. This value can be between 1 and 100. If // this parameter is not used, then ListImages returns up to 100 results and // a nextToken value, if applicable. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` // The nextToken value returned from a previous paginated ListImages request // where maxResults was used and the results exceeded the value of that parameter. // Pagination continues from the end of the previous results that returned the // nextToken value. This value is null when there are no more results to return. // // This token should be treated as an opaque identifier that is only used to // retrieve the next items in a list and not for other programmatic purposes. NextToken *string `locationName:"nextToken" type:"string"` // The AWS account ID associated with the registry that contains the repository // to list images in. If you do not specify a registry, the default registry // is assumed. RegistryId *string `locationName:"registryId" type:"string"` // The repository whose image IDs are to be listed. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"2" type:"string" required:"true"` } // String returns the string representation func (s ListImagesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListImagesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListImagesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListImagesInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 2 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 2)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListImagesOutput struct { _ struct{} `type:"structure"` // The list of image IDs for the requested repository. ImageIds []*ImageIdentifier `locationName:"imageIds" min:"1" type:"list"` // The nextToken value to include in a future ListImages request. When the results // of a ListImages request exceed maxResults, this value can be used to retrieve // the next page of results. This value is null when there are no more results // to return. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListImagesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListImagesOutput) GoString() string { return s.String() } type PutImageInput struct { _ struct{} `type:"structure"` // The image manifest corresponding to the image to be uploaded. // // ImageManifest is a required field ImageManifest *string `locationName:"imageManifest" type:"string" required:"true"` // The AWS account ID associated with the registry that contains the repository // in which to put the image. If you do not specify a registry, the default // registry is assumed. RegistryId *string `locationName:"registryId" type:"string"` // The name of the repository in which to put the image. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"2" type:"string" required:"true"` } // String returns the string representation func (s PutImageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutImageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutImageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutImageInput"} if s.ImageManifest == nil { invalidParams.Add(request.NewErrParamRequired("ImageManifest")) } if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 2 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 2)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutImageOutput struct { _ struct{} `type:"structure"` // Details of the image uploaded. Image *Image `locationName:"image" type:"structure"` } // String returns the string representation func (s PutImageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutImageOutput) GoString() string { return s.String() } // An object representing a repository. type Repository struct { _ struct{} `type:"structure"` // The date and time, in JavaScript date/time format, when the repository was // created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unix"` // The AWS account ID associated with the registry that contains the repository. RegistryId *string `locationName:"registryId" type:"string"` // The Amazon Resource Name (ARN) that identifies the repository. The ARN contains // the arn:aws:ecr namespace, followed by the region of the repository, the // AWS account ID of the repository owner, the repository namespace, and then // the repository name. For example, arn:aws:ecr:region:012345678910:repository/test. RepositoryArn *string `locationName:"repositoryArn" type:"string"` // The name of the repository. RepositoryName *string `locationName:"repositoryName" min:"2" type:"string"` // The URI for the repository. You can use this URI for Docker push and pull // operations. RepositoryUri *string `locationName:"repositoryUri" type:"string"` } // String returns the string representation func (s Repository) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Repository) GoString() string { return s.String() } type SetRepositoryPolicyInput struct { _ struct{} `type:"structure"` // If the policy you are attempting to set on a repository policy would prevent // you from setting another policy in the future, you must force the SetRepositoryPolicy // operation. This is intended to prevent accidental repository lock outs. Force *bool `locationName:"force" type:"boolean"` // The JSON repository policy text to apply to the repository. // // PolicyText is a required field PolicyText *string `locationName:"policyText" type:"string" required:"true"` // The AWS account ID associated with the registry that contains the repository. // If you do not specify a registry, the default registry is assumed. RegistryId *string `locationName:"registryId" type:"string"` // The name of the repository to receive the policy. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"2" type:"string" required:"true"` } // String returns the string representation func (s SetRepositoryPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetRepositoryPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetRepositoryPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetRepositoryPolicyInput"} if s.PolicyText == nil { invalidParams.Add(request.NewErrParamRequired("PolicyText")) } if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 2 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 2)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetRepositoryPolicyOutput struct { _ struct{} `type:"structure"` // The JSON repository policy text applied to the repository. PolicyText *string `locationName:"policyText" type:"string"` // The registry ID associated with the request. RegistryId *string `locationName:"registryId" type:"string"` // The repository name associated with the request. RepositoryName *string `locationName:"repositoryName" min:"2" type:"string"` } // String returns the string representation func (s SetRepositoryPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetRepositoryPolicyOutput) GoString() string { return s.String() } type UploadLayerPartInput struct { _ struct{} `type:"structure"` // The base64-encoded layer part payload. // // LayerPartBlob is automatically base64 encoded/decoded by the SDK. // // LayerPartBlob is a required field LayerPartBlob []byte `locationName:"layerPartBlob" type:"blob" required:"true"` // The integer value of the first byte of the layer part. // // PartFirstByte is a required field PartFirstByte *int64 `locationName:"partFirstByte" type:"long" required:"true"` // The integer value of the last byte of the layer part. // // PartLastByte is a required field PartLastByte *int64 `locationName:"partLastByte" type:"long" required:"true"` // The AWS account ID associated with the registry that you are uploading layer // parts to. If you do not specify a registry, the default registry is assumed. RegistryId *string `locationName:"registryId" type:"string"` // The name of the repository that you are uploading layer parts to. // // RepositoryName is a required field RepositoryName *string `locationName:"repositoryName" min:"2" type:"string" required:"true"` // The upload ID from a previous InitiateLayerUpload operation to associate // with the layer part upload. // // UploadId is a required field UploadId *string `locationName:"uploadId" type:"string" required:"true"` } // String returns the string representation func (s UploadLayerPartInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UploadLayerPartInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UploadLayerPartInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UploadLayerPartInput"} if s.LayerPartBlob == nil { invalidParams.Add(request.NewErrParamRequired("LayerPartBlob")) } if s.PartFirstByte == nil { invalidParams.Add(request.NewErrParamRequired("PartFirstByte")) } if s.PartLastByte == nil { invalidParams.Add(request.NewErrParamRequired("PartLastByte")) } if s.RepositoryName == nil { invalidParams.Add(request.NewErrParamRequired("RepositoryName")) } if s.RepositoryName != nil && len(*s.RepositoryName) < 2 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 2)) } if s.UploadId == nil { invalidParams.Add(request.NewErrParamRequired("UploadId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UploadLayerPartOutput struct { _ struct{} `type:"structure"` // The integer value of the last byte received in the request. LastByteReceived *int64 `locationName:"lastByteReceived" type:"long"` // The registry ID associated with the request. RegistryId *string `locationName:"registryId" type:"string"` // The repository name associated with the request. RepositoryName *string `locationName:"repositoryName" min:"2" type:"string"` // The upload ID associated with the request. UploadId *string `locationName:"uploadId" type:"string"` } // String returns the string representation func (s UploadLayerPartOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UploadLayerPartOutput) GoString() string { return s.String() } const ( // ImageFailureCodeInvalidImageDigest is a ImageFailureCode enum value ImageFailureCodeInvalidImageDigest = "InvalidImageDigest" // ImageFailureCodeInvalidImageTag is a ImageFailureCode enum value ImageFailureCodeInvalidImageTag = "InvalidImageTag" // ImageFailureCodeImageTagDoesNotMatchDigest is a ImageFailureCode enum value ImageFailureCodeImageTagDoesNotMatchDigest = "ImageTagDoesNotMatchDigest" // ImageFailureCodeImageNotFound is a ImageFailureCode enum value ImageFailureCodeImageNotFound = "ImageNotFound" // ImageFailureCodeMissingDigestAndTag is a ImageFailureCode enum value ImageFailureCodeMissingDigestAndTag = "MissingDigestAndTag" ) const ( // LayerAvailabilityAvailable is a LayerAvailability enum value LayerAvailabilityAvailable = "AVAILABLE" // LayerAvailabilityUnavailable is a LayerAvailability enum value LayerAvailabilityUnavailable = "UNAVAILABLE" ) const ( // LayerFailureCodeInvalidLayerDigest is a LayerFailureCode enum value LayerFailureCodeInvalidLayerDigest = "InvalidLayerDigest" // LayerFailureCodeMissingLayerDigest is a LayerFailureCode enum value LayerFailureCodeMissingLayerDigest = "MissingLayerDigest" ) const ( // TagStatusTagged is a TagStatus enum value TagStatusTagged = "TAGGED" // TagStatusUntagged is a TagStatus enum value TagStatusUntagged = "UNTAGGED" ) aws-sdk-go-1.4.22/service/ecr/ecriface/000077500000000000000000000000001300374646400175355ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/ecr/ecriface/interface.go000066400000000000000000000125341300374646400220310ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package ecriface provides an interface to enable mocking the Amazon EC2 Container Registry service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package ecriface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/ecr" ) // ECRAPI provides an interface to enable mocking the // ecr.ECR service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon EC2 Container Registry. // func myFunc(svc ecriface.ECRAPI) bool { // // Make svc.BatchCheckLayerAvailability request // } // // func main() { // sess := session.New() // svc := ecr.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockECRClient struct { // ecriface.ECRAPI // } // func (m *mockECRClient) BatchCheckLayerAvailability(input *ecr.BatchCheckLayerAvailabilityInput) (*ecr.BatchCheckLayerAvailabilityOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockECRClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type ECRAPI interface { BatchCheckLayerAvailabilityRequest(*ecr.BatchCheckLayerAvailabilityInput) (*request.Request, *ecr.BatchCheckLayerAvailabilityOutput) BatchCheckLayerAvailability(*ecr.BatchCheckLayerAvailabilityInput) (*ecr.BatchCheckLayerAvailabilityOutput, error) BatchDeleteImageRequest(*ecr.BatchDeleteImageInput) (*request.Request, *ecr.BatchDeleteImageOutput) BatchDeleteImage(*ecr.BatchDeleteImageInput) (*ecr.BatchDeleteImageOutput, error) BatchGetImageRequest(*ecr.BatchGetImageInput) (*request.Request, *ecr.BatchGetImageOutput) BatchGetImage(*ecr.BatchGetImageInput) (*ecr.BatchGetImageOutput, error) CompleteLayerUploadRequest(*ecr.CompleteLayerUploadInput) (*request.Request, *ecr.CompleteLayerUploadOutput) CompleteLayerUpload(*ecr.CompleteLayerUploadInput) (*ecr.CompleteLayerUploadOutput, error) CreateRepositoryRequest(*ecr.CreateRepositoryInput) (*request.Request, *ecr.CreateRepositoryOutput) CreateRepository(*ecr.CreateRepositoryInput) (*ecr.CreateRepositoryOutput, error) DeleteRepositoryRequest(*ecr.DeleteRepositoryInput) (*request.Request, *ecr.DeleteRepositoryOutput) DeleteRepository(*ecr.DeleteRepositoryInput) (*ecr.DeleteRepositoryOutput, error) DeleteRepositoryPolicyRequest(*ecr.DeleteRepositoryPolicyInput) (*request.Request, *ecr.DeleteRepositoryPolicyOutput) DeleteRepositoryPolicy(*ecr.DeleteRepositoryPolicyInput) (*ecr.DeleteRepositoryPolicyOutput, error) DescribeImagesRequest(*ecr.DescribeImagesInput) (*request.Request, *ecr.DescribeImagesOutput) DescribeImages(*ecr.DescribeImagesInput) (*ecr.DescribeImagesOutput, error) DescribeRepositoriesRequest(*ecr.DescribeRepositoriesInput) (*request.Request, *ecr.DescribeRepositoriesOutput) DescribeRepositories(*ecr.DescribeRepositoriesInput) (*ecr.DescribeRepositoriesOutput, error) GetAuthorizationTokenRequest(*ecr.GetAuthorizationTokenInput) (*request.Request, *ecr.GetAuthorizationTokenOutput) GetAuthorizationToken(*ecr.GetAuthorizationTokenInput) (*ecr.GetAuthorizationTokenOutput, error) GetDownloadUrlForLayerRequest(*ecr.GetDownloadUrlForLayerInput) (*request.Request, *ecr.GetDownloadUrlForLayerOutput) GetDownloadUrlForLayer(*ecr.GetDownloadUrlForLayerInput) (*ecr.GetDownloadUrlForLayerOutput, error) GetRepositoryPolicyRequest(*ecr.GetRepositoryPolicyInput) (*request.Request, *ecr.GetRepositoryPolicyOutput) GetRepositoryPolicy(*ecr.GetRepositoryPolicyInput) (*ecr.GetRepositoryPolicyOutput, error) InitiateLayerUploadRequest(*ecr.InitiateLayerUploadInput) (*request.Request, *ecr.InitiateLayerUploadOutput) InitiateLayerUpload(*ecr.InitiateLayerUploadInput) (*ecr.InitiateLayerUploadOutput, error) ListImagesRequest(*ecr.ListImagesInput) (*request.Request, *ecr.ListImagesOutput) ListImages(*ecr.ListImagesInput) (*ecr.ListImagesOutput, error) PutImageRequest(*ecr.PutImageInput) (*request.Request, *ecr.PutImageOutput) PutImage(*ecr.PutImageInput) (*ecr.PutImageOutput, error) SetRepositoryPolicyRequest(*ecr.SetRepositoryPolicyInput) (*request.Request, *ecr.SetRepositoryPolicyOutput) SetRepositoryPolicy(*ecr.SetRepositoryPolicyInput) (*ecr.SetRepositoryPolicyOutput, error) UploadLayerPartRequest(*ecr.UploadLayerPartInput) (*request.Request, *ecr.UploadLayerPartOutput) UploadLayerPart(*ecr.UploadLayerPartInput) (*ecr.UploadLayerPartOutput, error) } var _ ECRAPI = (*ecr.ECR)(nil) aws-sdk-go-1.4.22/service/ecr/examples_test.go000066400000000000000000000267261300374646400212150ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package ecr_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/ecr" ) var _ time.Duration var _ bytes.Buffer func ExampleECR_BatchCheckLayerAvailability() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecr.New(sess) params := &ecr.BatchCheckLayerAvailabilityInput{ LayerDigests: []*string{ // Required aws.String("BatchedOperationLayerDigest"), // Required // More values... }, RepositoryName: aws.String("RepositoryName"), // Required RegistryId: aws.String("RegistryId"), } resp, err := svc.BatchCheckLayerAvailability(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECR_BatchDeleteImage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecr.New(sess) params := &ecr.BatchDeleteImageInput{ ImageIds: []*ecr.ImageIdentifier{ // Required { // Required ImageDigest: aws.String("ImageDigest"), ImageTag: aws.String("ImageTag"), }, // More values... }, RepositoryName: aws.String("RepositoryName"), // Required RegistryId: aws.String("RegistryId"), } resp, err := svc.BatchDeleteImage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECR_BatchGetImage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecr.New(sess) params := &ecr.BatchGetImageInput{ ImageIds: []*ecr.ImageIdentifier{ // Required { // Required ImageDigest: aws.String("ImageDigest"), ImageTag: aws.String("ImageTag"), }, // More values... }, RepositoryName: aws.String("RepositoryName"), // Required RegistryId: aws.String("RegistryId"), } resp, err := svc.BatchGetImage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECR_CompleteLayerUpload() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecr.New(sess) params := &ecr.CompleteLayerUploadInput{ LayerDigests: []*string{ // Required aws.String("LayerDigest"), // Required // More values... }, RepositoryName: aws.String("RepositoryName"), // Required UploadId: aws.String("UploadId"), // Required RegistryId: aws.String("RegistryId"), } resp, err := svc.CompleteLayerUpload(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECR_CreateRepository() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecr.New(sess) params := &ecr.CreateRepositoryInput{ RepositoryName: aws.String("RepositoryName"), // Required } resp, err := svc.CreateRepository(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECR_DeleteRepository() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecr.New(sess) params := &ecr.DeleteRepositoryInput{ RepositoryName: aws.String("RepositoryName"), // Required Force: aws.Bool(true), RegistryId: aws.String("RegistryId"), } resp, err := svc.DeleteRepository(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECR_DeleteRepositoryPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecr.New(sess) params := &ecr.DeleteRepositoryPolicyInput{ RepositoryName: aws.String("RepositoryName"), // Required RegistryId: aws.String("RegistryId"), } resp, err := svc.DeleteRepositoryPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECR_DescribeImages() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecr.New(sess) params := &ecr.DescribeImagesInput{ RepositoryName: aws.String("RepositoryName"), // Required Filter: &ecr.DescribeImagesFilter{ TagStatus: aws.String("TagStatus"), }, ImageIds: []*ecr.ImageIdentifier{ { // Required ImageDigest: aws.String("ImageDigest"), ImageTag: aws.String("ImageTag"), }, // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), RegistryId: aws.String("RegistryId"), } resp, err := svc.DescribeImages(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECR_DescribeRepositories() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecr.New(sess) params := &ecr.DescribeRepositoriesInput{ MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), RegistryId: aws.String("RegistryId"), RepositoryNames: []*string{ aws.String("RepositoryName"), // Required // More values... }, } resp, err := svc.DescribeRepositories(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECR_GetAuthorizationToken() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecr.New(sess) params := &ecr.GetAuthorizationTokenInput{ RegistryIds: []*string{ aws.String("RegistryId"), // Required // More values... }, } resp, err := svc.GetAuthorizationToken(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECR_GetDownloadUrlForLayer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecr.New(sess) params := &ecr.GetDownloadUrlForLayerInput{ LayerDigest: aws.String("LayerDigest"), // Required RepositoryName: aws.String("RepositoryName"), // Required RegistryId: aws.String("RegistryId"), } resp, err := svc.GetDownloadUrlForLayer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECR_GetRepositoryPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecr.New(sess) params := &ecr.GetRepositoryPolicyInput{ RepositoryName: aws.String("RepositoryName"), // Required RegistryId: aws.String("RegistryId"), } resp, err := svc.GetRepositoryPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECR_InitiateLayerUpload() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecr.New(sess) params := &ecr.InitiateLayerUploadInput{ RepositoryName: aws.String("RepositoryName"), // Required RegistryId: aws.String("RegistryId"), } resp, err := svc.InitiateLayerUpload(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECR_ListImages() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecr.New(sess) params := &ecr.ListImagesInput{ RepositoryName: aws.String("RepositoryName"), // Required Filter: &ecr.ListImagesFilter{ TagStatus: aws.String("TagStatus"), }, MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), RegistryId: aws.String("RegistryId"), } resp, err := svc.ListImages(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECR_PutImage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecr.New(sess) params := &ecr.PutImageInput{ ImageManifest: aws.String("ImageManifest"), // Required RepositoryName: aws.String("RepositoryName"), // Required RegistryId: aws.String("RegistryId"), } resp, err := svc.PutImage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECR_SetRepositoryPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecr.New(sess) params := &ecr.SetRepositoryPolicyInput{ PolicyText: aws.String("RepositoryPolicyText"), // Required RepositoryName: aws.String("RepositoryName"), // Required Force: aws.Bool(true), RegistryId: aws.String("RegistryId"), } resp, err := svc.SetRepositoryPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECR_UploadLayerPart() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecr.New(sess) params := &ecr.UploadLayerPartInput{ LayerPartBlob: []byte("PAYLOAD"), // Required PartFirstByte: aws.Int64(1), // Required PartLastByte: aws.Int64(1), // Required RepositoryName: aws.String("RepositoryName"), // Required UploadId: aws.String("UploadId"), // Required RegistryId: aws.String("RegistryId"), } resp, err := svc.UploadLayerPart(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/ecr/service.go000066400000000000000000000061341300374646400177670ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package ecr import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Amazon EC2 Container Registry (Amazon ECR) is a managed AWS Docker registry // service. Customers can use the familiar Docker CLI to push, pull, and manage // images. Amazon ECR provides a secure, scalable, and reliable registry. Amazon // ECR supports private Docker repositories with resource-based permissions // using AWS IAM so that specific users or Amazon EC2 instances can access repositories // and images. Developers can use the Docker CLI to author and manage images. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type ECR struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "ecr" // New creates a new instance of the ECR client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a ECR client from just a session. // svc := ecr.New(mySession) // // // Create a ECR client with additional configuration // svc := ecr.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *ECR { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *ECR { svc := &ECR{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-09-21", JSONVersion: "1.1", TargetPrefix: "AmazonEC2ContainerRegistry_V20150921", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a ECR operation and runs any // custom request initialization. func (c *ECR) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/ecs/000077500000000000000000000000001300374646400157755ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/ecs/api.go000066400000000000000000006725011300374646400171100ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package ecs provides a client for Amazon EC2 Container Service. package ecs import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opCreateCluster = "CreateCluster" // CreateClusterRequest generates a "aws/request.Request" representing the // client's request for the CreateCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateClusterRequest method. // req, resp := client.CreateClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) CreateClusterRequest(input *CreateClusterInput) (req *request.Request, output *CreateClusterOutput) { op := &request.Operation{ Name: opCreateCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateClusterInput{} } req = c.newRequest(op, input, output) output = &CreateClusterOutput{} req.Data = output return } // CreateCluster API operation for Amazon EC2 Container Service. // // Creates a new Amazon ECS cluster. By default, your account receives a default // cluster when you launch your first container instance. However, you can create // your own cluster with a unique name with the CreateCluster action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation CreateCluster for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // func (c *ECS) CreateCluster(input *CreateClusterInput) (*CreateClusterOutput, error) { req, out := c.CreateClusterRequest(input) err := req.Send() return out, err } const opCreateService = "CreateService" // CreateServiceRequest generates a "aws/request.Request" representing the // client's request for the CreateService operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateService for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateService method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateServiceRequest method. // req, resp := client.CreateServiceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) CreateServiceRequest(input *CreateServiceInput) (req *request.Request, output *CreateServiceOutput) { op := &request.Operation{ Name: opCreateService, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateServiceInput{} } req = c.newRequest(op, input, output) output = &CreateServiceOutput{} req.Data = output return } // CreateService API operation for Amazon EC2 Container Service. // // Runs and maintains a desired number of tasks from a specified task definition. // If the number of tasks running in a service drops below desiredCount, Amazon // ECS spawns another copy of the task in the specified cluster. To update an // existing service, see UpdateService. // // In addition to maintaining the desired count of tasks in your service, you // can optionally run your service behind a load balancer. The load balancer // distributes traffic across the tasks that are associated with the service. // For more information, see Service Load Balancing (http://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-load-balancing.html) // in the Amazon EC2 Container Service Developer Guide. // // You can optionally specify a deployment configuration for your service. During // a deployment (which is triggered by changing the task definition or the desired // count of a service with an UpdateService operation), the service scheduler // uses the minimumHealthyPercent and maximumPercent parameters to determine // the deployment strategy. // // The minimumHealthyPercent represents a lower limit on the number of your // service's tasks that must remain in the RUNNING state during a deployment, // as a percentage of the desiredCount (rounded up to the nearest integer). // This parameter enables you to deploy without using additional cluster capacity. // For example, if your service has a desiredCount of four tasks and a minimumHealthyPercent // of 50%, the scheduler may stop two existing tasks to free up cluster capacity // before starting two new tasks. Tasks for services that do not use a load // balancer are considered healthy if they are in the RUNNING state; tasks for // services that do use a load balancer are considered healthy if they are in // the RUNNING state and the container instance it is hosted on is reported // as healthy by the load balancer. The default value for minimumHealthyPercent // is 50% in the console and 100% for the AWS CLI, the AWS SDKs, and the APIs. // // The maximumPercent parameter represents an upper limit on the number of your // service's tasks that are allowed in the RUNNING or PENDING state during a // deployment, as a percentage of the desiredCount (rounded down to the nearest // integer). This parameter enables you to define the deployment batch size. // For example, if your service has a desiredCount of four tasks and a maximumPercent // value of 200%, the scheduler may start four new tasks before stopping the // four older tasks (provided that the cluster resources required to do this // are available). The default value for maximumPercent is 200%. // // When the service scheduler launches new tasks, it attempts to balance them // across the Availability Zones in your cluster with the following logic: // // * Determine which of the container instances in your cluster can support // your service's task definition (for example, they have the required CPU, // memory, ports, and container instance attributes). // // * Sort the valid container instances by the fewest number of running tasks // for this service in the same Availability Zone as the instance. For example, // if zone A has one running service task and zones B and C each have zero, // valid container instances in either zone B or C are considered optimal // for placement. // // * Place the new service task on a valid container instance in an optimal // Availability Zone (based on the previous steps), favoring container instances // with the fewest number of running tasks for this service. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation CreateService for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * ClusterNotFoundException // The specified cluster could not be found. You can view your available clusters // with ListClusters. Amazon ECS clusters are region-specific. // func (c *ECS) CreateService(input *CreateServiceInput) (*CreateServiceOutput, error) { req, out := c.CreateServiceRequest(input) err := req.Send() return out, err } const opDeleteCluster = "DeleteCluster" // DeleteClusterRequest generates a "aws/request.Request" representing the // client's request for the DeleteCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteClusterRequest method. // req, resp := client.DeleteClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) DeleteClusterRequest(input *DeleteClusterInput) (req *request.Request, output *DeleteClusterOutput) { op := &request.Operation{ Name: opDeleteCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteClusterInput{} } req = c.newRequest(op, input, output) output = &DeleteClusterOutput{} req.Data = output return } // DeleteCluster API operation for Amazon EC2 Container Service. // // Deletes the specified cluster. You must deregister all container instances // from this cluster before you may delete it. You can list the container instances // in a cluster with ListContainerInstances and deregister them with DeregisterContainerInstance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation DeleteCluster for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * ClusterNotFoundException // The specified cluster could not be found. You can view your available clusters // with ListClusters. Amazon ECS clusters are region-specific. // // * ClusterContainsContainerInstancesException // You cannot delete a cluster that has registered container instances. You // must first deregister the container instances before you can delete the cluster. // For more information, see DeregisterContainerInstance. // // * ClusterContainsServicesException // You cannot delete a cluster that contains services. You must first update // the service to reduce its desired task count to 0 and then delete the service. // For more information, see UpdateService and DeleteService. // func (c *ECS) DeleteCluster(input *DeleteClusterInput) (*DeleteClusterOutput, error) { req, out := c.DeleteClusterRequest(input) err := req.Send() return out, err } const opDeleteService = "DeleteService" // DeleteServiceRequest generates a "aws/request.Request" representing the // client's request for the DeleteService operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteService for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteService method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteServiceRequest method. // req, resp := client.DeleteServiceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) DeleteServiceRequest(input *DeleteServiceInput) (req *request.Request, output *DeleteServiceOutput) { op := &request.Operation{ Name: opDeleteService, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteServiceInput{} } req = c.newRequest(op, input, output) output = &DeleteServiceOutput{} req.Data = output return } // DeleteService API operation for Amazon EC2 Container Service. // // Deletes a specified service within a cluster. You can delete a service if // you have no running tasks in it and the desired task count is zero. If the // service is actively maintaining tasks, you cannot delete it, and you must // update the service to a desired task count of zero. For more information, // see UpdateService. // // When you delete a service, if there are still running tasks that require // cleanup, the service status moves from ACTIVE to DRAINING, and the service // is no longer visible in the console or in ListServices API operations. After // the tasks have stopped, then the service status moves from DRAINING to INACTIVE. // Services in the DRAINING or INACTIVE status can still be viewed with DescribeServices // API operations; however, in the future, INACTIVE services may be cleaned // up and purged from Amazon ECS record keeping, and DescribeServices API operations // on those services will return a ServiceNotFoundException error. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation DeleteService for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * ClusterNotFoundException // The specified cluster could not be found. You can view your available clusters // with ListClusters. Amazon ECS clusters are region-specific. // // * ServiceNotFoundException // The specified service could not be found. You can view your available services // with ListServices. Amazon ECS services are cluster-specific and region-specific. // func (c *ECS) DeleteService(input *DeleteServiceInput) (*DeleteServiceOutput, error) { req, out := c.DeleteServiceRequest(input) err := req.Send() return out, err } const opDeregisterContainerInstance = "DeregisterContainerInstance" // DeregisterContainerInstanceRequest generates a "aws/request.Request" representing the // client's request for the DeregisterContainerInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeregisterContainerInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeregisterContainerInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeregisterContainerInstanceRequest method. // req, resp := client.DeregisterContainerInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) DeregisterContainerInstanceRequest(input *DeregisterContainerInstanceInput) (req *request.Request, output *DeregisterContainerInstanceOutput) { op := &request.Operation{ Name: opDeregisterContainerInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeregisterContainerInstanceInput{} } req = c.newRequest(op, input, output) output = &DeregisterContainerInstanceOutput{} req.Data = output return } // DeregisterContainerInstance API operation for Amazon EC2 Container Service. // // Deregisters an Amazon ECS container instance from the specified cluster. // This instance is no longer available to run tasks. // // If you intend to use the container instance for some other purpose after // deregistration, you should stop all of the tasks running on the container // instance before deregistration to avoid any orphaned tasks from consuming // resources. // // Deregistering a container instance removes the instance from a cluster, but // it does not terminate the EC2 instance; if you are finished using the instance, // be sure to terminate it in the Amazon EC2 console to stop billing. // // If you terminate a running container instance, Amazon ECS automatically deregisters // the instance from your cluster (stopped container instances or instances // with disconnected agents are not automatically deregistered when terminated). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation DeregisterContainerInstance for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * ClusterNotFoundException // The specified cluster could not be found. You can view your available clusters // with ListClusters. Amazon ECS clusters are region-specific. // func (c *ECS) DeregisterContainerInstance(input *DeregisterContainerInstanceInput) (*DeregisterContainerInstanceOutput, error) { req, out := c.DeregisterContainerInstanceRequest(input) err := req.Send() return out, err } const opDeregisterTaskDefinition = "DeregisterTaskDefinition" // DeregisterTaskDefinitionRequest generates a "aws/request.Request" representing the // client's request for the DeregisterTaskDefinition operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeregisterTaskDefinition for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeregisterTaskDefinition method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeregisterTaskDefinitionRequest method. // req, resp := client.DeregisterTaskDefinitionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) DeregisterTaskDefinitionRequest(input *DeregisterTaskDefinitionInput) (req *request.Request, output *DeregisterTaskDefinitionOutput) { op := &request.Operation{ Name: opDeregisterTaskDefinition, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeregisterTaskDefinitionInput{} } req = c.newRequest(op, input, output) output = &DeregisterTaskDefinitionOutput{} req.Data = output return } // DeregisterTaskDefinition API operation for Amazon EC2 Container Service. // // Deregisters the specified task definition by family and revision. Upon deregistration, // the task definition is marked as INACTIVE. Existing tasks and services that // reference an INACTIVE task definition continue to run without disruption. // Existing services that reference an INACTIVE task definition can still scale // up or down by modifying the service's desired count. // // You cannot use an INACTIVE task definition to run new tasks or create new // services, and you cannot update an existing service to reference an INACTIVE // task definition (although there may be up to a 10 minute window following // deregistration where these restrictions have not yet taken effect). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation DeregisterTaskDefinition for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // func (c *ECS) DeregisterTaskDefinition(input *DeregisterTaskDefinitionInput) (*DeregisterTaskDefinitionOutput, error) { req, out := c.DeregisterTaskDefinitionRequest(input) err := req.Send() return out, err } const opDescribeClusters = "DescribeClusters" // DescribeClustersRequest generates a "aws/request.Request" representing the // client's request for the DescribeClusters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeClusters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeClusters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeClustersRequest method. // req, resp := client.DescribeClustersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) DescribeClustersRequest(input *DescribeClustersInput) (req *request.Request, output *DescribeClustersOutput) { op := &request.Operation{ Name: opDescribeClusters, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeClustersInput{} } req = c.newRequest(op, input, output) output = &DescribeClustersOutput{} req.Data = output return } // DescribeClusters API operation for Amazon EC2 Container Service. // // Describes one or more of your clusters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation DescribeClusters for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // func (c *ECS) DescribeClusters(input *DescribeClustersInput) (*DescribeClustersOutput, error) { req, out := c.DescribeClustersRequest(input) err := req.Send() return out, err } const opDescribeContainerInstances = "DescribeContainerInstances" // DescribeContainerInstancesRequest generates a "aws/request.Request" representing the // client's request for the DescribeContainerInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeContainerInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeContainerInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeContainerInstancesRequest method. // req, resp := client.DescribeContainerInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) DescribeContainerInstancesRequest(input *DescribeContainerInstancesInput) (req *request.Request, output *DescribeContainerInstancesOutput) { op := &request.Operation{ Name: opDescribeContainerInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeContainerInstancesInput{} } req = c.newRequest(op, input, output) output = &DescribeContainerInstancesOutput{} req.Data = output return } // DescribeContainerInstances API operation for Amazon EC2 Container Service. // // Describes Amazon EC2 Container Service container instances. Returns metadata // about registered and remaining resources on each container instance requested. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation DescribeContainerInstances for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * ClusterNotFoundException // The specified cluster could not be found. You can view your available clusters // with ListClusters. Amazon ECS clusters are region-specific. // func (c *ECS) DescribeContainerInstances(input *DescribeContainerInstancesInput) (*DescribeContainerInstancesOutput, error) { req, out := c.DescribeContainerInstancesRequest(input) err := req.Send() return out, err } const opDescribeServices = "DescribeServices" // DescribeServicesRequest generates a "aws/request.Request" representing the // client's request for the DescribeServices operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeServices for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeServices method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeServicesRequest method. // req, resp := client.DescribeServicesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) DescribeServicesRequest(input *DescribeServicesInput) (req *request.Request, output *DescribeServicesOutput) { op := &request.Operation{ Name: opDescribeServices, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeServicesInput{} } req = c.newRequest(op, input, output) output = &DescribeServicesOutput{} req.Data = output return } // DescribeServices API operation for Amazon EC2 Container Service. // // Describes the specified services running in your cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation DescribeServices for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * ClusterNotFoundException // The specified cluster could not be found. You can view your available clusters // with ListClusters. Amazon ECS clusters are region-specific. // func (c *ECS) DescribeServices(input *DescribeServicesInput) (*DescribeServicesOutput, error) { req, out := c.DescribeServicesRequest(input) err := req.Send() return out, err } const opDescribeTaskDefinition = "DescribeTaskDefinition" // DescribeTaskDefinitionRequest generates a "aws/request.Request" representing the // client's request for the DescribeTaskDefinition operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTaskDefinition for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTaskDefinition method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTaskDefinitionRequest method. // req, resp := client.DescribeTaskDefinitionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) DescribeTaskDefinitionRequest(input *DescribeTaskDefinitionInput) (req *request.Request, output *DescribeTaskDefinitionOutput) { op := &request.Operation{ Name: opDescribeTaskDefinition, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTaskDefinitionInput{} } req = c.newRequest(op, input, output) output = &DescribeTaskDefinitionOutput{} req.Data = output return } // DescribeTaskDefinition API operation for Amazon EC2 Container Service. // // Describes a task definition. You can specify a family and revision to find // information about a specific task definition, or you can simply specify the // family to find the latest ACTIVE revision in that family. // // You can only describe INACTIVE task definitions while an active task or service // references them. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation DescribeTaskDefinition for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // func (c *ECS) DescribeTaskDefinition(input *DescribeTaskDefinitionInput) (*DescribeTaskDefinitionOutput, error) { req, out := c.DescribeTaskDefinitionRequest(input) err := req.Send() return out, err } const opDescribeTasks = "DescribeTasks" // DescribeTasksRequest generates a "aws/request.Request" representing the // client's request for the DescribeTasks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTasks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTasks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTasksRequest method. // req, resp := client.DescribeTasksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) DescribeTasksRequest(input *DescribeTasksInput) (req *request.Request, output *DescribeTasksOutput) { op := &request.Operation{ Name: opDescribeTasks, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTasksInput{} } req = c.newRequest(op, input, output) output = &DescribeTasksOutput{} req.Data = output return } // DescribeTasks API operation for Amazon EC2 Container Service. // // Describes a specified task or tasks. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation DescribeTasks for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * ClusterNotFoundException // The specified cluster could not be found. You can view your available clusters // with ListClusters. Amazon ECS clusters are region-specific. // func (c *ECS) DescribeTasks(input *DescribeTasksInput) (*DescribeTasksOutput, error) { req, out := c.DescribeTasksRequest(input) err := req.Send() return out, err } const opDiscoverPollEndpoint = "DiscoverPollEndpoint" // DiscoverPollEndpointRequest generates a "aws/request.Request" representing the // client's request for the DiscoverPollEndpoint operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DiscoverPollEndpoint for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DiscoverPollEndpoint method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DiscoverPollEndpointRequest method. // req, resp := client.DiscoverPollEndpointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) DiscoverPollEndpointRequest(input *DiscoverPollEndpointInput) (req *request.Request, output *DiscoverPollEndpointOutput) { op := &request.Operation{ Name: opDiscoverPollEndpoint, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DiscoverPollEndpointInput{} } req = c.newRequest(op, input, output) output = &DiscoverPollEndpointOutput{} req.Data = output return } // DiscoverPollEndpoint API operation for Amazon EC2 Container Service. // // This action is only used by the Amazon EC2 Container Service agent, and it // is not intended for use outside of the agent. // // Returns an endpoint for the Amazon EC2 Container Service agent to poll for // updates. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation DiscoverPollEndpoint for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // func (c *ECS) DiscoverPollEndpoint(input *DiscoverPollEndpointInput) (*DiscoverPollEndpointOutput, error) { req, out := c.DiscoverPollEndpointRequest(input) err := req.Send() return out, err } const opListClusters = "ListClusters" // ListClustersRequest generates a "aws/request.Request" representing the // client's request for the ListClusters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListClusters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListClusters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListClustersRequest method. // req, resp := client.ListClustersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) ListClustersRequest(input *ListClustersInput) (req *request.Request, output *ListClustersOutput) { op := &request.Operation{ Name: opListClusters, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListClustersInput{} } req = c.newRequest(op, input, output) output = &ListClustersOutput{} req.Data = output return } // ListClusters API operation for Amazon EC2 Container Service. // // Returns a list of existing clusters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation ListClusters for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // func (c *ECS) ListClusters(input *ListClustersInput) (*ListClustersOutput, error) { req, out := c.ListClustersRequest(input) err := req.Send() return out, err } // ListClustersPages iterates over the pages of a ListClusters operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListClusters method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListClusters operation. // pageNum := 0 // err := client.ListClustersPages(params, // func(page *ListClustersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ECS) ListClustersPages(input *ListClustersInput, fn func(p *ListClustersOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListClustersRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListClustersOutput), lastPage) }) } const opListContainerInstances = "ListContainerInstances" // ListContainerInstancesRequest generates a "aws/request.Request" representing the // client's request for the ListContainerInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListContainerInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListContainerInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListContainerInstancesRequest method. // req, resp := client.ListContainerInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) ListContainerInstancesRequest(input *ListContainerInstancesInput) (req *request.Request, output *ListContainerInstancesOutput) { op := &request.Operation{ Name: opListContainerInstances, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListContainerInstancesInput{} } req = c.newRequest(op, input, output) output = &ListContainerInstancesOutput{} req.Data = output return } // ListContainerInstances API operation for Amazon EC2 Container Service. // // Returns a list of container instances in a specified cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation ListContainerInstances for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * ClusterNotFoundException // The specified cluster could not be found. You can view your available clusters // with ListClusters. Amazon ECS clusters are region-specific. // func (c *ECS) ListContainerInstances(input *ListContainerInstancesInput) (*ListContainerInstancesOutput, error) { req, out := c.ListContainerInstancesRequest(input) err := req.Send() return out, err } // ListContainerInstancesPages iterates over the pages of a ListContainerInstances operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListContainerInstances method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListContainerInstances operation. // pageNum := 0 // err := client.ListContainerInstancesPages(params, // func(page *ListContainerInstancesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ECS) ListContainerInstancesPages(input *ListContainerInstancesInput, fn func(p *ListContainerInstancesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListContainerInstancesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListContainerInstancesOutput), lastPage) }) } const opListServices = "ListServices" // ListServicesRequest generates a "aws/request.Request" representing the // client's request for the ListServices operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListServices for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListServices method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListServicesRequest method. // req, resp := client.ListServicesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) ListServicesRequest(input *ListServicesInput) (req *request.Request, output *ListServicesOutput) { op := &request.Operation{ Name: opListServices, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListServicesInput{} } req = c.newRequest(op, input, output) output = &ListServicesOutput{} req.Data = output return } // ListServices API operation for Amazon EC2 Container Service. // // Lists the services that are running in a specified cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation ListServices for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * ClusterNotFoundException // The specified cluster could not be found. You can view your available clusters // with ListClusters. Amazon ECS clusters are region-specific. // func (c *ECS) ListServices(input *ListServicesInput) (*ListServicesOutput, error) { req, out := c.ListServicesRequest(input) err := req.Send() return out, err } // ListServicesPages iterates over the pages of a ListServices operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListServices method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListServices operation. // pageNum := 0 // err := client.ListServicesPages(params, // func(page *ListServicesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ECS) ListServicesPages(input *ListServicesInput, fn func(p *ListServicesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListServicesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListServicesOutput), lastPage) }) } const opListTaskDefinitionFamilies = "ListTaskDefinitionFamilies" // ListTaskDefinitionFamiliesRequest generates a "aws/request.Request" representing the // client's request for the ListTaskDefinitionFamilies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTaskDefinitionFamilies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTaskDefinitionFamilies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTaskDefinitionFamiliesRequest method. // req, resp := client.ListTaskDefinitionFamiliesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) ListTaskDefinitionFamiliesRequest(input *ListTaskDefinitionFamiliesInput) (req *request.Request, output *ListTaskDefinitionFamiliesOutput) { op := &request.Operation{ Name: opListTaskDefinitionFamilies, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListTaskDefinitionFamiliesInput{} } req = c.newRequest(op, input, output) output = &ListTaskDefinitionFamiliesOutput{} req.Data = output return } // ListTaskDefinitionFamilies API operation for Amazon EC2 Container Service. // // Returns a list of task definition families that are registered to your account // (which may include task definition families that no longer have any ACTIVE // task definition revisions). // // You can filter out task definition families that do not contain any ACTIVE // task definition revisions by setting the status parameter to ACTIVE. You // can also filter the results with the familyPrefix parameter. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation ListTaskDefinitionFamilies for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // func (c *ECS) ListTaskDefinitionFamilies(input *ListTaskDefinitionFamiliesInput) (*ListTaskDefinitionFamiliesOutput, error) { req, out := c.ListTaskDefinitionFamiliesRequest(input) err := req.Send() return out, err } // ListTaskDefinitionFamiliesPages iterates over the pages of a ListTaskDefinitionFamilies operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListTaskDefinitionFamilies method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListTaskDefinitionFamilies operation. // pageNum := 0 // err := client.ListTaskDefinitionFamiliesPages(params, // func(page *ListTaskDefinitionFamiliesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ECS) ListTaskDefinitionFamiliesPages(input *ListTaskDefinitionFamiliesInput, fn func(p *ListTaskDefinitionFamiliesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListTaskDefinitionFamiliesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListTaskDefinitionFamiliesOutput), lastPage) }) } const opListTaskDefinitions = "ListTaskDefinitions" // ListTaskDefinitionsRequest generates a "aws/request.Request" representing the // client's request for the ListTaskDefinitions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTaskDefinitions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTaskDefinitions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTaskDefinitionsRequest method. // req, resp := client.ListTaskDefinitionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) ListTaskDefinitionsRequest(input *ListTaskDefinitionsInput) (req *request.Request, output *ListTaskDefinitionsOutput) { op := &request.Operation{ Name: opListTaskDefinitions, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListTaskDefinitionsInput{} } req = c.newRequest(op, input, output) output = &ListTaskDefinitionsOutput{} req.Data = output return } // ListTaskDefinitions API operation for Amazon EC2 Container Service. // // Returns a list of task definitions that are registered to your account. You // can filter the results by family name with the familyPrefix parameter or // by status with the status parameter. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation ListTaskDefinitions for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // func (c *ECS) ListTaskDefinitions(input *ListTaskDefinitionsInput) (*ListTaskDefinitionsOutput, error) { req, out := c.ListTaskDefinitionsRequest(input) err := req.Send() return out, err } // ListTaskDefinitionsPages iterates over the pages of a ListTaskDefinitions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListTaskDefinitions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListTaskDefinitions operation. // pageNum := 0 // err := client.ListTaskDefinitionsPages(params, // func(page *ListTaskDefinitionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ECS) ListTaskDefinitionsPages(input *ListTaskDefinitionsInput, fn func(p *ListTaskDefinitionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListTaskDefinitionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListTaskDefinitionsOutput), lastPage) }) } const opListTasks = "ListTasks" // ListTasksRequest generates a "aws/request.Request" representing the // client's request for the ListTasks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTasks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTasks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTasksRequest method. // req, resp := client.ListTasksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) ListTasksRequest(input *ListTasksInput) (req *request.Request, output *ListTasksOutput) { op := &request.Operation{ Name: opListTasks, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListTasksInput{} } req = c.newRequest(op, input, output) output = &ListTasksOutput{} req.Data = output return } // ListTasks API operation for Amazon EC2 Container Service. // // Returns a list of tasks for a specified cluster. You can filter the results // by family name, by a particular container instance, or by the desired status // of the task with the family, containerInstance, and desiredStatus parameters. // // Recently-stopped tasks might appear in the returned results. Currently, stopped // tasks appear in the returned results for at least one hour. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation ListTasks for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * ClusterNotFoundException // The specified cluster could not be found. You can view your available clusters // with ListClusters. Amazon ECS clusters are region-specific. // // * ServiceNotFoundException // The specified service could not be found. You can view your available services // with ListServices. Amazon ECS services are cluster-specific and region-specific. // func (c *ECS) ListTasks(input *ListTasksInput) (*ListTasksOutput, error) { req, out := c.ListTasksRequest(input) err := req.Send() return out, err } // ListTasksPages iterates over the pages of a ListTasks operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListTasks method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListTasks operation. // pageNum := 0 // err := client.ListTasksPages(params, // func(page *ListTasksOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ECS) ListTasksPages(input *ListTasksInput, fn func(p *ListTasksOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListTasksRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListTasksOutput), lastPage) }) } const opRegisterContainerInstance = "RegisterContainerInstance" // RegisterContainerInstanceRequest generates a "aws/request.Request" representing the // client's request for the RegisterContainerInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterContainerInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterContainerInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterContainerInstanceRequest method. // req, resp := client.RegisterContainerInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) RegisterContainerInstanceRequest(input *RegisterContainerInstanceInput) (req *request.Request, output *RegisterContainerInstanceOutput) { op := &request.Operation{ Name: opRegisterContainerInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterContainerInstanceInput{} } req = c.newRequest(op, input, output) output = &RegisterContainerInstanceOutput{} req.Data = output return } // RegisterContainerInstance API operation for Amazon EC2 Container Service. // // This action is only used by the Amazon EC2 Container Service agent, and it // is not intended for use outside of the agent. // // Registers an EC2 instance into the specified cluster. This instance becomes // available to place containers on. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation RegisterContainerInstance for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // func (c *ECS) RegisterContainerInstance(input *RegisterContainerInstanceInput) (*RegisterContainerInstanceOutput, error) { req, out := c.RegisterContainerInstanceRequest(input) err := req.Send() return out, err } const opRegisterTaskDefinition = "RegisterTaskDefinition" // RegisterTaskDefinitionRequest generates a "aws/request.Request" representing the // client's request for the RegisterTaskDefinition operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterTaskDefinition for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterTaskDefinition method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterTaskDefinitionRequest method. // req, resp := client.RegisterTaskDefinitionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) RegisterTaskDefinitionRequest(input *RegisterTaskDefinitionInput) (req *request.Request, output *RegisterTaskDefinitionOutput) { op := &request.Operation{ Name: opRegisterTaskDefinition, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterTaskDefinitionInput{} } req = c.newRequest(op, input, output) output = &RegisterTaskDefinitionOutput{} req.Data = output return } // RegisterTaskDefinition API operation for Amazon EC2 Container Service. // // Registers a new task definition from the supplied family and containerDefinitions. // Optionally, you can add data volumes to your containers with the volumes // parameter. For more information about task definition parameters and defaults, // see Amazon ECS Task Definitions (http://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_defintions.html) // in the Amazon EC2 Container Service Developer Guide. // // You can specify an IAM role for your task with the taskRoleArn parameter. // When you specify an IAM role for a task, its containers can then use the // latest versions of the AWS CLI or SDKs to make API requests to the AWS services // that are specified in the IAM policy associated with the role. For more information, // see IAM Roles for Tasks (http://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) // in the Amazon EC2 Container Service Developer Guide. // // You can specify a Docker networking mode for the containers in your task // definition with the networkMode parameter. The available network modes correspond // to those described in Network settings (https://docs.docker.com/engine/reference/run/#/network-settings) // in the Docker run reference. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation RegisterTaskDefinition for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // func (c *ECS) RegisterTaskDefinition(input *RegisterTaskDefinitionInput) (*RegisterTaskDefinitionOutput, error) { req, out := c.RegisterTaskDefinitionRequest(input) err := req.Send() return out, err } const opRunTask = "RunTask" // RunTaskRequest generates a "aws/request.Request" representing the // client's request for the RunTask operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RunTask for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RunTask method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RunTaskRequest method. // req, resp := client.RunTaskRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) RunTaskRequest(input *RunTaskInput) (req *request.Request, output *RunTaskOutput) { op := &request.Operation{ Name: opRunTask, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RunTaskInput{} } req = c.newRequest(op, input, output) output = &RunTaskOutput{} req.Data = output return } // RunTask API operation for Amazon EC2 Container Service. // // Start a task using random placement and the default Amazon ECS scheduler. // To use your own scheduler or place a task on a specific container instance, // use StartTask instead. // // The count parameter is limited to 10 tasks per call. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation RunTask for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * ClusterNotFoundException // The specified cluster could not be found. You can view your available clusters // with ListClusters. Amazon ECS clusters are region-specific. // func (c *ECS) RunTask(input *RunTaskInput) (*RunTaskOutput, error) { req, out := c.RunTaskRequest(input) err := req.Send() return out, err } const opStartTask = "StartTask" // StartTaskRequest generates a "aws/request.Request" representing the // client's request for the StartTask operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StartTask for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StartTask method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StartTaskRequest method. // req, resp := client.StartTaskRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) StartTaskRequest(input *StartTaskInput) (req *request.Request, output *StartTaskOutput) { op := &request.Operation{ Name: opStartTask, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartTaskInput{} } req = c.newRequest(op, input, output) output = &StartTaskOutput{} req.Data = output return } // StartTask API operation for Amazon EC2 Container Service. // // Starts a new task from the specified task definition on the specified container // instance or instances. To use the default Amazon ECS scheduler to place your // task, use RunTask instead. // // The list of container instances to start tasks on is limited to 10. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation StartTask for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * ClusterNotFoundException // The specified cluster could not be found. You can view your available clusters // with ListClusters. Amazon ECS clusters are region-specific. // func (c *ECS) StartTask(input *StartTaskInput) (*StartTaskOutput, error) { req, out := c.StartTaskRequest(input) err := req.Send() return out, err } const opStopTask = "StopTask" // StopTaskRequest generates a "aws/request.Request" representing the // client's request for the StopTask operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StopTask for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StopTask method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StopTaskRequest method. // req, resp := client.StopTaskRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) StopTaskRequest(input *StopTaskInput) (req *request.Request, output *StopTaskOutput) { op := &request.Operation{ Name: opStopTask, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StopTaskInput{} } req = c.newRequest(op, input, output) output = &StopTaskOutput{} req.Data = output return } // StopTask API operation for Amazon EC2 Container Service. // // Stops a running task. // // When StopTask is called on a task, the equivalent of docker stop is issued // to the containers running in the task. This results in a SIGTERM and a 30-second // timeout, after which SIGKILL is sent and the containers are forcibly stopped. // If the container handles the SIGTERM gracefully and exits within 30 seconds // from receiving it, no SIGKILL is sent. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation StopTask for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * ClusterNotFoundException // The specified cluster could not be found. You can view your available clusters // with ListClusters. Amazon ECS clusters are region-specific. // func (c *ECS) StopTask(input *StopTaskInput) (*StopTaskOutput, error) { req, out := c.StopTaskRequest(input) err := req.Send() return out, err } const opSubmitContainerStateChange = "SubmitContainerStateChange" // SubmitContainerStateChangeRequest generates a "aws/request.Request" representing the // client's request for the SubmitContainerStateChange operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SubmitContainerStateChange for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SubmitContainerStateChange method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SubmitContainerStateChangeRequest method. // req, resp := client.SubmitContainerStateChangeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) SubmitContainerStateChangeRequest(input *SubmitContainerStateChangeInput) (req *request.Request, output *SubmitContainerStateChangeOutput) { op := &request.Operation{ Name: opSubmitContainerStateChange, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SubmitContainerStateChangeInput{} } req = c.newRequest(op, input, output) output = &SubmitContainerStateChangeOutput{} req.Data = output return } // SubmitContainerStateChange API operation for Amazon EC2 Container Service. // // This action is only used by the Amazon EC2 Container Service agent, and it // is not intended for use outside of the agent. // // Sent to acknowledge that a container changed states. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation SubmitContainerStateChange for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // func (c *ECS) SubmitContainerStateChange(input *SubmitContainerStateChangeInput) (*SubmitContainerStateChangeOutput, error) { req, out := c.SubmitContainerStateChangeRequest(input) err := req.Send() return out, err } const opSubmitTaskStateChange = "SubmitTaskStateChange" // SubmitTaskStateChangeRequest generates a "aws/request.Request" representing the // client's request for the SubmitTaskStateChange operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SubmitTaskStateChange for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SubmitTaskStateChange method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SubmitTaskStateChangeRequest method. // req, resp := client.SubmitTaskStateChangeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) SubmitTaskStateChangeRequest(input *SubmitTaskStateChangeInput) (req *request.Request, output *SubmitTaskStateChangeOutput) { op := &request.Operation{ Name: opSubmitTaskStateChange, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SubmitTaskStateChangeInput{} } req = c.newRequest(op, input, output) output = &SubmitTaskStateChangeOutput{} req.Data = output return } // SubmitTaskStateChange API operation for Amazon EC2 Container Service. // // This action is only used by the Amazon EC2 Container Service agent, and it // is not intended for use outside of the agent. // // Sent to acknowledge that a task changed states. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation SubmitTaskStateChange for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // func (c *ECS) SubmitTaskStateChange(input *SubmitTaskStateChangeInput) (*SubmitTaskStateChangeOutput, error) { req, out := c.SubmitTaskStateChangeRequest(input) err := req.Send() return out, err } const opUpdateContainerAgent = "UpdateContainerAgent" // UpdateContainerAgentRequest generates a "aws/request.Request" representing the // client's request for the UpdateContainerAgent operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateContainerAgent for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateContainerAgent method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateContainerAgentRequest method. // req, resp := client.UpdateContainerAgentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) UpdateContainerAgentRequest(input *UpdateContainerAgentInput) (req *request.Request, output *UpdateContainerAgentOutput) { op := &request.Operation{ Name: opUpdateContainerAgent, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateContainerAgentInput{} } req = c.newRequest(op, input, output) output = &UpdateContainerAgentOutput{} req.Data = output return } // UpdateContainerAgent API operation for Amazon EC2 Container Service. // // Updates the Amazon ECS container agent on a specified container instance. // Updating the Amazon ECS container agent does not interrupt running tasks // or services on the container instance. The process for updating the agent // differs depending on whether your container instance was launched with the // Amazon ECS-optimized AMI or another operating system. // // UpdateContainerAgent requires the Amazon ECS-optimized AMI or Amazon Linux // with the ecs-init service installed and running. For help updating the Amazon // ECS container agent on other operating systems, see Manually Updating the // Amazon ECS Container Agent (http://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-update.html#manually_update_agent) // in the Amazon EC2 Container Service Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation UpdateContainerAgent for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * ClusterNotFoundException // The specified cluster could not be found. You can view your available clusters // with ListClusters. Amazon ECS clusters are region-specific. // // * UpdateInProgressException // There is already a current Amazon ECS container agent update in progress // on the specified container instance. If the container agent becomes disconnected // while it is in a transitional stage, such as PENDING or STAGING, the update // process can get stuck in that state. However, when the agent reconnects, // it resumes where it stopped previously. // // * NoUpdateAvailableException // There is no update available for this Amazon ECS container agent. This could // be because the agent is already running the latest version, or it is so old // that there is no update path to the current version. // // * MissingVersionException // Amazon ECS is unable to determine the current version of the Amazon ECS container // agent on the container instance and does not have enough information to proceed // with an update. This could be because the agent running on the container // instance is an older or custom version that does not use our version information. // func (c *ECS) UpdateContainerAgent(input *UpdateContainerAgentInput) (*UpdateContainerAgentOutput, error) { req, out := c.UpdateContainerAgentRequest(input) err := req.Send() return out, err } const opUpdateService = "UpdateService" // UpdateServiceRequest generates a "aws/request.Request" representing the // client's request for the UpdateService operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateService for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateService method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateServiceRequest method. // req, resp := client.UpdateServiceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ECS) UpdateServiceRequest(input *UpdateServiceInput) (req *request.Request, output *UpdateServiceOutput) { op := &request.Operation{ Name: opUpdateService, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateServiceInput{} } req = c.newRequest(op, input, output) output = &UpdateServiceOutput{} req.Data = output return } // UpdateService API operation for Amazon EC2 Container Service. // // Modifies the desired count, deployment configuration, or task definition // used in a service. // // You can add to or subtract from the number of instantiations of a task definition // in a service by specifying the cluster that the service is running in and // a new desiredCount parameter. // // You can use UpdateService to modify your task definition and deploy a new // version of your service. // // You can also update the deployment configuration of a service. When a deployment // is triggered by updating the task definition of a service, the service scheduler // uses the deployment configuration parameters, minimumHealthyPercent and maximumPercent, // to determine the deployment strategy. // // If the minimumHealthyPercent is below 100%, the scheduler can ignore the // desiredCount temporarily during a deployment. For example, if your service // has a desiredCount of four tasks, a minimumHealthyPercent of 50% allows the // scheduler to stop two existing tasks before starting two new tasks. Tasks // for services that do not use a load balancer are considered healthy if they // are in the RUNNING state; tasks for services that do use a load balancer // are considered healthy if they are in the RUNNING state and the container // instance it is hosted on is reported as healthy by the load balancer. // // The maximumPercent parameter represents an upper limit on the number of running // tasks during a deployment, which enables you to define the deployment batch // size. For example, if your service has a desiredCount of four tasks, a maximumPercent // value of 200% starts four new tasks before stopping the four older tasks // (provided that the cluster resources required to do this are available). // // When UpdateService stops a task during a deployment, the equivalent of docker // stop is issued to the containers running in the task. This results in a SIGTERM // and a 30-second timeout, after which SIGKILL is sent and the containers are // forcibly stopped. If the container handles the SIGTERM gracefully and exits // within 30 seconds from receiving it, no SIGKILL is sent. // // When the service scheduler launches new tasks, it attempts to balance them // across the Availability Zones in your cluster with the following logic: // // * Determine which of the container instances in your cluster can support // your service's task definition (for example, they have the required CPU, // memory, ports, and container instance attributes). // // * Sort the valid container instances by the fewest number of running tasks // for this service in the same Availability Zone as the instance. For example, // if zone A has one running service task and zones B and C each have zero, // valid container instances in either zone B or C are considered optimal // for placement. // // * Place the new service task on a valid container instance in an optimal // Availability Zone (based on the previous steps), favoring container instances // with the fewest number of running tasks for this service. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon EC2 Container Service's // API operation UpdateService for usage and error information. // // Returned Error Codes: // * ServerException // These errors are usually caused by a server issue. // // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permission to use the action // or resource, or specifying an identifier that is not valid. // // * InvalidParameterException // The specified parameter is invalid. Review the available parameters for the // API request. // // * ClusterNotFoundException // The specified cluster could not be found. You can view your available clusters // with ListClusters. Amazon ECS clusters are region-specific. // // * ServiceNotFoundException // The specified service could not be found. You can view your available services // with ListServices. Amazon ECS services are cluster-specific and region-specific. // // * ServiceNotActiveException // The specified service is not active. You cannot update a service that is // not active. If you have previously deleted a service, you can re-create it // with CreateService. // func (c *ECS) UpdateService(input *UpdateServiceInput) (*UpdateServiceOutput, error) { req, out := c.UpdateServiceRequest(input) err := req.Send() return out, err } // The attributes applicable to a container instance when it is registered. type Attribute struct { _ struct{} `type:"structure"` // The name of the container instance attribute. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` // The value of the container instance attribute (at this time, the value here // is Null, but this could change in future revisions for expandability). Value *string `locationName:"value" type:"string"` } // String returns the string representation func (s Attribute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Attribute) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Attribute) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Attribute"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A regional grouping of one or more container instances on which you can run // task requests. Each account receives a default cluster the first time you // use the Amazon ECS service, but you may also create other clusters. Clusters // may contain more than one instance type simultaneously. type Cluster struct { _ struct{} `type:"structure"` // The number of services that are running on the cluster in an ACTIVE state. // You can view these services with ListServices. ActiveServicesCount *int64 `locationName:"activeServicesCount" type:"integer"` // The Amazon Resource Name (ARN) that identifies the cluster. The ARN contains // the arn:aws:ecs namespace, followed by the region of the cluster, the AWS // account ID of the cluster owner, the cluster namespace, and then the cluster // name. For example, arn:aws:ecs:region:012345678910:cluster/test.. ClusterArn *string `locationName:"clusterArn" type:"string"` // A user-generated string that you use to identify your cluster. ClusterName *string `locationName:"clusterName" type:"string"` // The number of tasks in the cluster that are in the PENDING state. PendingTasksCount *int64 `locationName:"pendingTasksCount" type:"integer"` // The number of container instances registered into the cluster. RegisteredContainerInstancesCount *int64 `locationName:"registeredContainerInstancesCount" type:"integer"` // The number of tasks in the cluster that are in the RUNNING state. RunningTasksCount *int64 `locationName:"runningTasksCount" type:"integer"` // The status of the cluster. The valid values are ACTIVE or INACTIVE. ACTIVE // indicates that you can register container instances with the cluster and // the associated instances can accept tasks. Status *string `locationName:"status" type:"string"` } // String returns the string representation func (s Cluster) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Cluster) GoString() string { return s.String() } // A Docker container that is part of a task. type Container struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the container. ContainerArn *string `locationName:"containerArn" type:"string"` // The exit code returned from the container. ExitCode *int64 `locationName:"exitCode" type:"integer"` // The last known status of the container. LastStatus *string `locationName:"lastStatus" type:"string"` // The name of the container. Name *string `locationName:"name" type:"string"` // The network bindings associated with the container. NetworkBindings []*NetworkBinding `locationName:"networkBindings" type:"list"` // A short (255 max characters) human-readable string to provide additional // detail about a running or stopped container. Reason *string `locationName:"reason" type:"string"` // The Amazon Resource Name (ARN) of the task. TaskArn *string `locationName:"taskArn" type:"string"` } // String returns the string representation func (s Container) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Container) GoString() string { return s.String() } // Container definitions are used in task definitions to describe the different // containers that are launched as part of a task. type ContainerDefinition struct { _ struct{} `type:"structure"` // The command that is passed to the container. This parameter maps to Cmd in // the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the COMMAND parameter to docker run (https://docs.docker.com/engine/reference/run/). // For more information, see https://docs.docker.com/engine/reference/builder/#cmd // (https://docs.docker.com/engine/reference/builder/#cmd). Command []*string `locationName:"command" type:"list"` // The number of cpu units reserved for the container. A container instance // has 1,024 cpu units for every CPU core. This parameter specifies the minimum // amount of CPU to reserve for a container, and containers share unallocated // CPU units with other containers on the instance with the same ratio as their // allocated amount. This parameter maps to CpuShares in the Create a container // (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --cpu-shares option to docker run (https://docs.docker.com/engine/reference/run/). // // You can determine the number of CPU units that are available per EC2 instance // type by multiplying the vCPUs listed for that instance type on the Amazon // EC2 Instances (http://aws.amazon.com/ec2/instance-types/) detail page by // 1,024. // // For example, if you run a single-container task on a single-core instance // type with 512 CPU units specified for that container, and that is the only // task running on the container instance, that container could use the full // 1,024 CPU unit share at any given time. However, if you launched another // copy of the same task on that container instance, each task would be guaranteed // a minimum of 512 CPU units when needed, and each container could float to // higher CPU usage if the other container was not using it, but if both tasks // were 100% active all of the time, they would be limited to 512 CPU units. // // The Docker daemon on the container instance uses the CPU value to calculate // the relative CPU share ratios for running containers. For more information, // see CPU share constraint (https://docs.docker.com/engine/reference/run/#cpu-share-constraint) // in the Docker documentation. The minimum valid CPU share value that the Linux // kernel allows is 2; however, the CPU parameter is not required, and you can // use CPU values below 2 in your container definitions. For CPU values below // 2 (including null), the behavior varies based on your Amazon ECS container // agent version: // // * Agent versions less than or equal to 1.1.0: Null and zero CPU values // are passed to Docker as 0, which Docker then converts to 1,024 CPU shares. // CPU values of 1 are passed to Docker as 1, which the Linux kernel converts // to 2 CPU shares. // // * Agent versions greater than or equal to 1.2.0: Null, zero, and CPU values // of 1 are passed to Docker as 2. Cpu *int64 `locationName:"cpu" type:"integer"` // When this parameter is true, networking is disabled within the container. // This parameter maps to NetworkDisabled in the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/). DisableNetworking *bool `locationName:"disableNetworking" type:"boolean"` // A list of DNS search domains that are presented to the container. This parameter // maps to DnsSearch in the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --dns-search option to docker run (https://docs.docker.com/engine/reference/run/). DnsSearchDomains []*string `locationName:"dnsSearchDomains" type:"list"` // A list of DNS servers that are presented to the container. This parameter // maps to Dns in the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --dns option to docker run (https://docs.docker.com/engine/reference/run/). DnsServers []*string `locationName:"dnsServers" type:"list"` // A key/value map of labels to add to the container. This parameter maps to // Labels in the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --label option to docker run (https://docs.docker.com/engine/reference/run/). // This parameter requires version 1.18 of the Docker Remote API or greater // on your container instance. To check the Docker Remote API version on your // container instance, log into your container instance and run the following // command: sudo docker version | grep "Server API version" DockerLabels map[string]*string `locationName:"dockerLabels" type:"map"` // A list of strings to provide custom labels for SELinux and AppArmor multi-level // security systems. This parameter maps to SecurityOpt in the Create a container // (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --security-opt option to docker run (https://docs.docker.com/engine/reference/run/). // // The Amazon ECS container agent running on a container instance must register // with the ECS_SELINUX_CAPABLE=true or ECS_APPARMOR_CAPABLE=true environment // variables before containers placed on that instance can use these security // options. For more information, see Amazon ECS Container Agent Configuration // (http://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html) // in the Amazon EC2 Container Service Developer Guide. DockerSecurityOptions []*string `locationName:"dockerSecurityOptions" type:"list"` // Early versions of the Amazon ECS container agent do not properly handle entryPoint // parameters. If you have problems using entryPoint, update your container // agent or enter your commands and arguments as command array items instead. // // The entry point that is passed to the container. This parameter maps to Entrypoint // in the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --entrypoint option to docker run (https://docs.docker.com/engine/reference/run/). // For more information, see https://docs.docker.com/engine/reference/builder/#entrypoint // (https://docs.docker.com/engine/reference/builder/#entrypoint). EntryPoint []*string `locationName:"entryPoint" type:"list"` // The environment variables to pass to a container. This parameter maps to // Env in the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --env option to docker run (https://docs.docker.com/engine/reference/run/). // // We do not recommend using plain text environment variables for sensitive // information, such as credential data. Environment []*KeyValuePair `locationName:"environment" type:"list"` // If the essential parameter of a container is marked as true, and that container // fails or stops for any reason, all other containers that are part of the // task are stopped. If the essential parameter of a container is marked as // false, then its failure does not affect the rest of the containers in a task. // If this parameter is omitted, a container is assumed to be essential. // // All tasks must have at least one essential container. If you have an application // that is composed of multiple containers, you should group containers that // are used for a common purpose into components, and separate the different // components into multiple task definitions. For more information, see Application // Architecture (http://docs.aws.amazon.com/AmazonECS/latest/developerguide/application_architecture.html) // in the Amazon EC2 Container Service Developer Guide. Essential *bool `locationName:"essential" type:"boolean"` // A list of hostnames and IP address mappings to append to the /etc/hosts file // on the container. This parameter maps to ExtraHosts in the Create a container // (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --add-host option to docker run (https://docs.docker.com/engine/reference/run/). ExtraHosts []*HostEntry `locationName:"extraHosts" type:"list"` // The hostname to use for your container. This parameter maps to Hostname in // the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --hostname option to docker run (https://docs.docker.com/engine/reference/run/). Hostname *string `locationName:"hostname" type:"string"` // The image used to start a container. This string is passed directly to the // Docker daemon. Images in the Docker Hub registry are available by default. // Other repositories are specified with repository-url/image:tag. Up to 255 // letters (uppercase and lowercase), numbers, hyphens, underscores, colons, // periods, forward slashes, and number signs are allowed. This parameter maps // to Image in the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the IMAGE parameter of docker run (https://docs.docker.com/engine/reference/run/). // // * Images in official repositories on Docker Hub use a single name (for // example, ubuntu or mongo). // // * Images in other repositories on Docker Hub are qualified with an organization // name (for example, amazon/amazon-ecs-agent). // // * Images in other online repositories are qualified further by a domain // name (for example, quay.io/assemblyline/ubuntu). Image *string `locationName:"image" type:"string"` // The link parameter allows containers to communicate with each other without // the need for port mappings, using the name parameter and optionally, an alias // for the link. This construct is analogous to name:alias in Docker links. // Up to 255 letters (uppercase and lowercase), numbers, hyphens, and underscores // are allowed for each name and alias. For more information on linking Docker // containers, see https://docs.docker.com/engine/userguide/networking/default_network/dockerlinks/ // (https://docs.docker.com/engine/userguide/networking/default_network/dockerlinks/). // This parameter maps to Links in the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --link option to docker run (https://docs.docker.com/engine/reference/run/). // // Containers that are collocated on a single container instance may be able // to communicate with each other without requiring links or host port mappings. // Network isolation is achieved on the container instance using security groups // and VPC settings. Links []*string `locationName:"links" type:"list"` // The log configuration specification for the container. This parameter maps // to LogConfig in the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --log-driver option to docker run (https://docs.docker.com/engine/reference/run/). // By default, containers use the same logging driver that the Docker daemon // uses; however the container may use a different logging driver than the Docker // daemon by specifying a log driver with this parameter in the container definition. // To use a different logging driver for a container, the log system must be // configured properly on the container instance (or on a different log server // for remote logging options). For more information on the options for different // supported log drivers, see Configure logging drivers (https://docs.docker.com/engine/admin/logging/overview/) // in the Docker documentation. // // Amazon ECS currently supports a subset of the logging drivers available to // the Docker daemon (shown in the LogConfiguration data type). Currently unsupported // log drivers may be available in future releases of the Amazon ECS container // agent. // // This parameter requires version 1.18 of the Docker Remote API or greater // on your container instance. To check the Docker Remote API version on your // container instance, log into your container instance and run the following // command: sudo docker version | grep "Server API version" // // The Amazon ECS container agent running on a container instance must register // the logging drivers available on that instance with the ECS_AVAILABLE_LOGGING_DRIVERS // environment variable before containers placed on that instance can use these // log configuration options. For more information, see Amazon ECS Container // Agent Configuration (http://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html) // in the Amazon EC2 Container Service Developer Guide. LogConfiguration *LogConfiguration `locationName:"logConfiguration" type:"structure"` // The hard limit (in MiB) of memory to present to the container. If your container // attempts to exceed the memory specified here, the container is killed. This // parameter maps to Memory in the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --memory option to docker run (https://docs.docker.com/engine/reference/run/). // // You must specify a non-zero integer for one or both of memory or memoryReservation // in container definitions. If you specify both, memory must be greater than // memoryReservation. If you specify memoryReservation, then that value is subtracted // from the available memory resources for the container instance on which the // container is placed; otherwise, the value of memory is used. // // The Docker daemon reserves a minimum of 4 MiB of memory for a container, // so you should not specify fewer than 4 MiB of memory for your containers. Memory *int64 `locationName:"memory" type:"integer"` // The soft limit (in MiB) of memory to reserve for the container. When system // memory is under heavy contention, Docker attempts to keep the container memory // to this soft limit; however, your container can consume more memory when // it needs to, up to either the hard limit specified with the memory parameter // (if applicable), or all of the available memory on the container instance, // whichever comes first. This parameter maps to MemoryReservation in the Create // a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --memory-reservation option to docker run (https://docs.docker.com/engine/reference/run/). // // You must specify a non-zero integer for one or both of memory or memoryReservation // in container definitions. If you specify both, memory must be greater than // memoryReservation. If you specify memoryReservation, then that value is subtracted // from the available memory resources for the container instance on which the // container is placed; otherwise, the value of memory is used. // // For example, if your container normally uses 128 MiB of memory, but occasionally // bursts to 256 MiB of memory for short periods of time, you can set a memoryReservation // of 128 MiB, and a memory hard limit of 300 MiB. This configuration would // allow the container to only reserve 128 MiB of memory from the remaining // resources on the container instance, but also allow the container to consume // more memory resources when needed. MemoryReservation *int64 `locationName:"memoryReservation" type:"integer"` // The mount points for data volumes in your container. This parameter maps // to Volumes in the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --volume option to docker run (https://docs.docker.com/engine/reference/run/). MountPoints []*MountPoint `locationName:"mountPoints" type:"list"` // The name of a container. If you are linking multiple containers together // in a task definition, the name of one container can be entered in the links // of another container to connect the containers. Up to 255 letters (uppercase // and lowercase), numbers, hyphens, and underscores are allowed. This parameter // maps to name in the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --name option to docker run (https://docs.docker.com/engine/reference/run/). Name *string `locationName:"name" type:"string"` // The list of port mappings for the container. Port mappings allow containers // to access ports on the host container instance to send or receive traffic. // This parameter maps to PortBindings in the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --publish option to docker run (https://docs.docker.com/engine/reference/run/). // If the network mode of a task definition is set to none, then you cannot // specify port mappings. If the network mode of a task definition is set to // host, then host ports must either be undefined or they must match the container // port in the port mapping. // // After a task reaches the RUNNING status, manual and automatic host and container // port assignments are visible in the Network Bindings section of a container // description of a selected task in the Amazon ECS console, or the networkBindings // section DescribeTasks responses. PortMappings []*PortMapping `locationName:"portMappings" type:"list"` // When this parameter is true, the container is given elevated privileges on // the host container instance (similar to the root user). This parameter maps // to Privileged in the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --privileged option to docker run (https://docs.docker.com/engine/reference/run/). Privileged *bool `locationName:"privileged" type:"boolean"` // When this parameter is true, the container is given read-only access to its // root file system. This parameter maps to ReadonlyRootfs in the Create a container // (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --read-only option to docker run. ReadonlyRootFilesystem *bool `locationName:"readonlyRootFilesystem" type:"boolean"` // A list of ulimits to set in the container. This parameter maps to Ulimits // in the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --ulimit option to docker run (https://docs.docker.com/engine/reference/run/). // Valid naming values are displayed in the Ulimit data type. This parameter // requires version 1.18 of the Docker Remote API or greater on your container // instance. To check the Docker Remote API version on your container instance, // log into your container instance and run the following command: sudo docker // version | grep "Server API version" Ulimits []*Ulimit `locationName:"ulimits" type:"list"` // The user name to use inside the container. This parameter maps to User in // the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --user option to docker run (https://docs.docker.com/engine/reference/run/). User *string `locationName:"user" type:"string"` // Data volumes to mount from another container. This parameter maps to VolumesFrom // in the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --volumes-from option to docker run (https://docs.docker.com/engine/reference/run/). VolumesFrom []*VolumeFrom `locationName:"volumesFrom" type:"list"` // The working directory in which to run commands inside the container. This // parameter maps to WorkingDir in the Create a container (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/reference/api/docker_remote_api_v1.23/) // and the --workdir option to docker run (https://docs.docker.com/engine/reference/run/). WorkingDirectory *string `locationName:"workingDirectory" type:"string"` } // String returns the string representation func (s ContainerDefinition) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ContainerDefinition) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ContainerDefinition) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ContainerDefinition"} if s.ExtraHosts != nil { for i, v := range s.ExtraHosts { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ExtraHosts", i), err.(request.ErrInvalidParams)) } } } if s.LogConfiguration != nil { if err := s.LogConfiguration.Validate(); err != nil { invalidParams.AddNested("LogConfiguration", err.(request.ErrInvalidParams)) } } if s.Ulimits != nil { for i, v := range s.Ulimits { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Ulimits", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // An EC2 instance that is running the Amazon ECS agent and has been registered // with a cluster. type ContainerInstance struct { _ struct{} `type:"structure"` // This parameter returns true if the agent is actually connected to Amazon // ECS. Registered instances with an agent that may be unhealthy or stopped // return false, and instances without a connected agent cannot accept placement // requests. AgentConnected *bool `locationName:"agentConnected" type:"boolean"` // The status of the most recent agent update. If an update has never been requested, // this value is NULL. AgentUpdateStatus *string `locationName:"agentUpdateStatus" type:"string" enum:"AgentUpdateStatus"` // The attributes set for the container instance by the Amazon ECS container // agent at instance registration. Attributes []*Attribute `locationName:"attributes" type:"list"` // The Amazon Resource Name (ARN) of the container instance. The ARN contains // the arn:aws:ecs namespace, followed by the region of the container instance, // the AWS account ID of the container instance owner, the container-instance // namespace, and then the container instance ID. For example, arn:aws:ecs:region:aws_account_id:container-instance/container_instance_ID. ContainerInstanceArn *string `locationName:"containerInstanceArn" type:"string"` // The EC2 instance ID of the container instance. Ec2InstanceId *string `locationName:"ec2InstanceId" type:"string"` // The number of tasks on the container instance that are in the PENDING status. PendingTasksCount *int64 `locationName:"pendingTasksCount" type:"integer"` // For most resource types, this parameter describes the registered resources // on the container instance that are in use by current tasks. For port resource // types, this parameter describes the ports that were reserved by the Amazon // ECS container agent when it registered the container instance with Amazon // ECS. RegisteredResources []*Resource `locationName:"registeredResources" type:"list"` // For most resource types, this parameter describes the remaining resources // of the container instance that are available for new tasks. For port resource // types, this parameter describes the ports that are reserved by the Amazon // ECS container agent and any containers that have reserved port mappings; // any port that is not specified here is available for new tasks. RemainingResources []*Resource `locationName:"remainingResources" type:"list"` // The number of tasks on the container instance that are in the RUNNING status. RunningTasksCount *int64 `locationName:"runningTasksCount" type:"integer"` // The status of the container instance. The valid values are ACTIVE or INACTIVE. // ACTIVE indicates that the container instance can accept tasks. Status *string `locationName:"status" type:"string"` // The version information for the Amazon ECS container agent and Docker daemon // running on the container instance. VersionInfo *VersionInfo `locationName:"versionInfo" type:"structure"` } // String returns the string representation func (s ContainerInstance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ContainerInstance) GoString() string { return s.String() } // The overrides that should be sent to a container. type ContainerOverride struct { _ struct{} `type:"structure"` // The command to send to the container that overrides the default command from // the Docker image or the task definition. Command []*string `locationName:"command" type:"list"` // The environment variables to send to the container. You can add new environment // variables, which are added to the container at launch, or you can override // the existing environment variables from the Docker image or the task definition. Environment []*KeyValuePair `locationName:"environment" type:"list"` // The name of the container that receives the override. Name *string `locationName:"name" type:"string"` } // String returns the string representation func (s ContainerOverride) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ContainerOverride) GoString() string { return s.String() } type CreateClusterInput struct { _ struct{} `type:"structure"` // The name of your cluster. If you do not specify a name for your cluster, // you create a cluster named default. Up to 255 letters (uppercase and lowercase), // numbers, hyphens, and underscores are allowed. ClusterName *string `locationName:"clusterName" type:"string"` } // String returns the string representation func (s CreateClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateClusterInput) GoString() string { return s.String() } type CreateClusterOutput struct { _ struct{} `type:"structure"` // The full description of your new cluster. Cluster *Cluster `locationName:"cluster" type:"structure"` } // String returns the string representation func (s CreateClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateClusterOutput) GoString() string { return s.String() } type CreateServiceInput struct { _ struct{} `type:"structure"` // Unique, case-sensitive identifier you provide to ensure the idempotency of // the request. Up to 32 ASCII characters are allowed. ClientToken *string `locationName:"clientToken" type:"string"` // The short name or full Amazon Resource Name (ARN) of the cluster on which // to run your service. If you do not specify a cluster, the default cluster // is assumed. Cluster *string `locationName:"cluster" type:"string"` // Optional deployment parameters that control how many tasks run during the // deployment and the ordering of stopping and starting tasks. DeploymentConfiguration *DeploymentConfiguration `locationName:"deploymentConfiguration" type:"structure"` // The number of instantiations of the specified task definition to place and // keep running on your cluster. // // DesiredCount is a required field DesiredCount *int64 `locationName:"desiredCount" type:"integer" required:"true"` // A load balancer object representing the load balancer to use with your service. // Currently, you are limited to one load balancer per service. After you create // a service, the load balancer name, container name, and container port specified // in the service definition are immutable. // // For Elastic Load Balancing Classic load balancers, this object must contain // the load balancer name, the container name (as it appears in a container // definition), and the container port to access from the load balancer. When // a task from this service is placed on a container instance, the container // instance is registered with the load balancer specified here. // // For Elastic Load Balancing Application load balancers, this object must contain // the load balancer target group ARN, the container name (as it appears in // a container definition), and the container port to access from the load balancer. // When a task from this service is placed on a container instance, the container // instance and port combination is registered as a target in the target group // specified here. LoadBalancers []*LoadBalancer `locationName:"loadBalancers" type:"list"` // The name or full Amazon Resource Name (ARN) of the IAM role that allows Amazon // ECS to make calls to your load balancer on your behalf. This parameter is // required if you are using a load balancer with your service. If you specify // the role parameter, you must also specify a load balancer object with the // loadBalancers parameter. // // If your specified role has a path other than /, then you must either specify // the full role ARN (this is recommended) or prefix the role name with the // path. For example, if a role with the name bar has a path of /foo/ then you // would specify /foo/bar as the role name. For more information, see Friendly // Names and Paths (http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-friendly-names) // in the IAM User Guide. Role *string `locationName:"role" type:"string"` // The name of your service. Up to 255 letters (uppercase and lowercase), numbers, // hyphens, and underscores are allowed. Service names must be unique within // a cluster, but you can have similarly named services in multiple clusters // within a region or across multiple regions. // // ServiceName is a required field ServiceName *string `locationName:"serviceName" type:"string" required:"true"` // The family and revision (family:revision) or full Amazon Resource Name (ARN) // of the task definition to run in your service. If a revision is not specified, // the latest ACTIVE revision is used. // // TaskDefinition is a required field TaskDefinition *string `locationName:"taskDefinition" type:"string" required:"true"` } // String returns the string representation func (s CreateServiceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateServiceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateServiceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateServiceInput"} if s.DesiredCount == nil { invalidParams.Add(request.NewErrParamRequired("DesiredCount")) } if s.ServiceName == nil { invalidParams.Add(request.NewErrParamRequired("ServiceName")) } if s.TaskDefinition == nil { invalidParams.Add(request.NewErrParamRequired("TaskDefinition")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateServiceOutput struct { _ struct{} `type:"structure"` // The full description of your service following the create call. Service *Service `locationName:"service" type:"structure"` } // String returns the string representation func (s CreateServiceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateServiceOutput) GoString() string { return s.String() } type DeleteClusterInput struct { _ struct{} `type:"structure"` // The short name or full Amazon Resource Name (ARN) of the cluster to delete. // // Cluster is a required field Cluster *string `locationName:"cluster" type:"string" required:"true"` } // String returns the string representation func (s DeleteClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteClusterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteClusterInput"} if s.Cluster == nil { invalidParams.Add(request.NewErrParamRequired("Cluster")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteClusterOutput struct { _ struct{} `type:"structure"` // The full description of the deleted cluster. Cluster *Cluster `locationName:"cluster" type:"structure"` } // String returns the string representation func (s DeleteClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteClusterOutput) GoString() string { return s.String() } type DeleteServiceInput struct { _ struct{} `type:"structure"` // The name of the cluster that hosts the service to delete. If you do not specify // a cluster, the default cluster is assumed. Cluster *string `locationName:"cluster" type:"string"` // The name of the service to delete. // // Service is a required field Service *string `locationName:"service" type:"string" required:"true"` } // String returns the string representation func (s DeleteServiceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteServiceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteServiceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteServiceInput"} if s.Service == nil { invalidParams.Add(request.NewErrParamRequired("Service")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteServiceOutput struct { _ struct{} `type:"structure"` // The full description of the deleted service. Service *Service `locationName:"service" type:"structure"` } // String returns the string representation func (s DeleteServiceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteServiceOutput) GoString() string { return s.String() } // The details of an Amazon ECS service deployment. type Deployment struct { _ struct{} `type:"structure"` // The Unix timestamp for when the service was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unix"` // The most recent desired count of tasks that was specified for the service // to deploy or maintain. DesiredCount *int64 `locationName:"desiredCount" type:"integer"` // The ID of the deployment. Id *string `locationName:"id" type:"string"` // The number of tasks in the deployment that are in the PENDING status. PendingCount *int64 `locationName:"pendingCount" type:"integer"` // The number of tasks in the deployment that are in the RUNNING status. RunningCount *int64 `locationName:"runningCount" type:"integer"` // The status of the deployment. Valid values are PRIMARY (for the most recent // deployment), ACTIVE (for previous deployments that still have tasks running, // but are being replaced with the PRIMARY deployment), and INACTIVE (for deployments // that have been completely replaced). Status *string `locationName:"status" type:"string"` // The most recent task definition that was specified for the service to use. TaskDefinition *string `locationName:"taskDefinition" type:"string"` // The Unix timestamp for when the service was last updated. UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s Deployment) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Deployment) GoString() string { return s.String() } // Optional deployment parameters that control how many tasks run during the // deployment and the ordering of stopping and starting tasks. type DeploymentConfiguration struct { _ struct{} `type:"structure"` // The upper limit (as a percentage of the service's desiredCount) of the number // of tasks that are allowed in the RUNNING or PENDING state in a service during // a deployment. The maximum number of tasks during a deployment is the desiredCount // multiplied by the maximumPercent/100, rounded down to the nearest integer // value. MaximumPercent *int64 `locationName:"maximumPercent" type:"integer"` // The lower limit (as a percentage of the service's desiredCount) of the number // of running tasks that must remain in the RUNNING state in a service during // a deployment. The minimum healthy tasks during a deployment is the desiredCount // multiplied by the minimumHealthyPercent/100, rounded up to the nearest integer // value. MinimumHealthyPercent *int64 `locationName:"minimumHealthyPercent" type:"integer"` } // String returns the string representation func (s DeploymentConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeploymentConfiguration) GoString() string { return s.String() } type DeregisterContainerInstanceInput struct { _ struct{} `type:"structure"` // The short name or full Amazon Resource Name (ARN) of the cluster that hosts // the container instance to deregister. If you do not specify a cluster, the // default cluster is assumed. Cluster *string `locationName:"cluster" type:"string"` // The container instance ID or full Amazon Resource Name (ARN) of the container // instance to deregister. The ARN contains the arn:aws:ecs namespace, followed // by the region of the container instance, the AWS account ID of the container // instance owner, the container-instance namespace, and then the container // instance ID. For example, arn:aws:ecs:region:aws_account_id:container-instance/container_instance_ID. // // ContainerInstance is a required field ContainerInstance *string `locationName:"containerInstance" type:"string" required:"true"` // Forces the deregistration of the container instance. If you have tasks running // on the container instance when you deregister it with the force option, these // tasks remain running until you terminate the instance or the tasks stop through // some other means, but they are orphaned (no longer monitored or accounted // for by Amazon ECS). If an orphaned task on your container instance is part // of an Amazon ECS service, then the service scheduler starts another copy // of that task, on a different container instance if possible. // // Any containers in orphaned service tasks that are registered with a Classic // load balancer or an Application load balancer target group are deregistered, // and they will begin connection draining according to the settings on the // load balancer or target group. Force *bool `locationName:"force" type:"boolean"` } // String returns the string representation func (s DeregisterContainerInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterContainerInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeregisterContainerInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeregisterContainerInstanceInput"} if s.ContainerInstance == nil { invalidParams.Add(request.NewErrParamRequired("ContainerInstance")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeregisterContainerInstanceOutput struct { _ struct{} `type:"structure"` // An EC2 instance that is running the Amazon ECS agent and has been registered // with a cluster. ContainerInstance *ContainerInstance `locationName:"containerInstance" type:"structure"` } // String returns the string representation func (s DeregisterContainerInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterContainerInstanceOutput) GoString() string { return s.String() } type DeregisterTaskDefinitionInput struct { _ struct{} `type:"structure"` // The family and revision (family:revision) or full Amazon Resource Name (ARN) // of the task definition to deregister. You must specify a revision. // // TaskDefinition is a required field TaskDefinition *string `locationName:"taskDefinition" type:"string" required:"true"` } // String returns the string representation func (s DeregisterTaskDefinitionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterTaskDefinitionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeregisterTaskDefinitionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeregisterTaskDefinitionInput"} if s.TaskDefinition == nil { invalidParams.Add(request.NewErrParamRequired("TaskDefinition")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeregisterTaskDefinitionOutput struct { _ struct{} `type:"structure"` // The full description of the deregistered task. TaskDefinition *TaskDefinition `locationName:"taskDefinition" type:"structure"` } // String returns the string representation func (s DeregisterTaskDefinitionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterTaskDefinitionOutput) GoString() string { return s.String() } type DescribeClustersInput struct { _ struct{} `type:"structure"` // A space-separated list of up to 100 cluster names or full cluster Amazon // Resource Name (ARN) entries. If you do not specify a cluster, the default // cluster is assumed. Clusters []*string `locationName:"clusters" type:"list"` } // String returns the string representation func (s DescribeClustersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClustersInput) GoString() string { return s.String() } type DescribeClustersOutput struct { _ struct{} `type:"structure"` // The list of clusters. Clusters []*Cluster `locationName:"clusters" type:"list"` // Any failures associated with the call. Failures []*Failure `locationName:"failures" type:"list"` } // String returns the string representation func (s DescribeClustersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClustersOutput) GoString() string { return s.String() } type DescribeContainerInstancesInput struct { _ struct{} `type:"structure"` // The short name or full Amazon Resource Name (ARN) of the cluster that hosts // the container instances to describe. If you do not specify a cluster, the // default cluster is assumed. Cluster *string `locationName:"cluster" type:"string"` // A space-separated list of container instance IDs or full Amazon Resource // Name (ARN) entries. // // ContainerInstances is a required field ContainerInstances []*string `locationName:"containerInstances" type:"list" required:"true"` } // String returns the string representation func (s DescribeContainerInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeContainerInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeContainerInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeContainerInstancesInput"} if s.ContainerInstances == nil { invalidParams.Add(request.NewErrParamRequired("ContainerInstances")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeContainerInstancesOutput struct { _ struct{} `type:"structure"` // The list of container instances. ContainerInstances []*ContainerInstance `locationName:"containerInstances" type:"list"` // Any failures associated with the call. Failures []*Failure `locationName:"failures" type:"list"` } // String returns the string representation func (s DescribeContainerInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeContainerInstancesOutput) GoString() string { return s.String() } type DescribeServicesInput struct { _ struct{} `type:"structure"` // The name of the cluster that hosts the service to describe. If you do not // specify a cluster, the default cluster is assumed. Cluster *string `locationName:"cluster" type:"string"` // A list of services to describe. You may specify up to 10 services to describe // in a single operation. // // Services is a required field Services []*string `locationName:"services" type:"list" required:"true"` } // String returns the string representation func (s DescribeServicesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeServicesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeServicesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeServicesInput"} if s.Services == nil { invalidParams.Add(request.NewErrParamRequired("Services")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeServicesOutput struct { _ struct{} `type:"structure"` // Any failures associated with the call. Failures []*Failure `locationName:"failures" type:"list"` // The list of services described. Services []*Service `locationName:"services" type:"list"` } // String returns the string representation func (s DescribeServicesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeServicesOutput) GoString() string { return s.String() } type DescribeTaskDefinitionInput struct { _ struct{} `type:"structure"` // The family for the latest ACTIVE revision, family and revision (family:revision) // for a specific revision in the family, or full Amazon Resource Name (ARN) // of the task definition to describe. // // TaskDefinition is a required field TaskDefinition *string `locationName:"taskDefinition" type:"string" required:"true"` } // String returns the string representation func (s DescribeTaskDefinitionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTaskDefinitionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTaskDefinitionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTaskDefinitionInput"} if s.TaskDefinition == nil { invalidParams.Add(request.NewErrParamRequired("TaskDefinition")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeTaskDefinitionOutput struct { _ struct{} `type:"structure"` // The full task definition description. TaskDefinition *TaskDefinition `locationName:"taskDefinition" type:"structure"` } // String returns the string representation func (s DescribeTaskDefinitionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTaskDefinitionOutput) GoString() string { return s.String() } type DescribeTasksInput struct { _ struct{} `type:"structure"` // The short name or full Amazon Resource Name (ARN) of the cluster that hosts // the task to describe. If you do not specify a cluster, the default cluster // is assumed. Cluster *string `locationName:"cluster" type:"string"` // A space-separated list of task IDs or full Amazon Resource Name (ARN) entries. // // Tasks is a required field Tasks []*string `locationName:"tasks" type:"list" required:"true"` } // String returns the string representation func (s DescribeTasksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTasksInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTasksInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTasksInput"} if s.Tasks == nil { invalidParams.Add(request.NewErrParamRequired("Tasks")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeTasksOutput struct { _ struct{} `type:"structure"` // Any failures associated with the call. Failures []*Failure `locationName:"failures" type:"list"` // The list of tasks. Tasks []*Task `locationName:"tasks" type:"list"` } // String returns the string representation func (s DescribeTasksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTasksOutput) GoString() string { return s.String() } type DiscoverPollEndpointInput struct { _ struct{} `type:"structure"` // The cluster that the container instance belongs to. Cluster *string `locationName:"cluster" type:"string"` // The container instance ID or full Amazon Resource Name (ARN) of the container // instance. The ARN contains the arn:aws:ecs namespace, followed by the region // of the container instance, the AWS account ID of the container instance owner, // the container-instance namespace, and then the container instance ID. For // example, arn:aws:ecs:region:aws_account_id:container-instance/container_instance_ID. ContainerInstance *string `locationName:"containerInstance" type:"string"` } // String returns the string representation func (s DiscoverPollEndpointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DiscoverPollEndpointInput) GoString() string { return s.String() } type DiscoverPollEndpointOutput struct { _ struct{} `type:"structure"` // The endpoint for the Amazon ECS agent to poll. Endpoint *string `locationName:"endpoint" type:"string"` // The telemetry endpoint for the Amazon ECS agent. TelemetryEndpoint *string `locationName:"telemetryEndpoint" type:"string"` } // String returns the string representation func (s DiscoverPollEndpointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DiscoverPollEndpointOutput) GoString() string { return s.String() } // A failed resource. type Failure struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the failed resource. Arn *string `locationName:"arn" type:"string"` // The reason for the failure. Reason *string `locationName:"reason" type:"string"` } // String returns the string representation func (s Failure) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Failure) GoString() string { return s.String() } // Hostnames and IP address entries that are added to the /etc/hosts file of // a container via the extraHosts parameter of its ContainerDefinition. type HostEntry struct { _ struct{} `type:"structure"` // The hostname to use in the /etc/hosts entry. // // Hostname is a required field Hostname *string `locationName:"hostname" type:"string" required:"true"` // The IP address to use in the /etc/hosts entry. // // IpAddress is a required field IpAddress *string `locationName:"ipAddress" type:"string" required:"true"` } // String returns the string representation func (s HostEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HostEntry) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *HostEntry) Validate() error { invalidParams := request.ErrInvalidParams{Context: "HostEntry"} if s.Hostname == nil { invalidParams.Add(request.NewErrParamRequired("Hostname")) } if s.IpAddress == nil { invalidParams.Add(request.NewErrParamRequired("IpAddress")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Details on a container instance host volume. type HostVolumeProperties struct { _ struct{} `type:"structure"` // The path on the host container instance that is presented to the container. // If this parameter is empty, then the Docker daemon has assigned a host path // for you. If the host parameter contains a sourcePath file location, then // the data volume persists at the specified location on the host container // instance until you delete it manually. If the sourcePath value does not exist // on the host container instance, the Docker daemon creates it. If the location // does exist, the contents of the source path folder are exported. SourcePath *string `locationName:"sourcePath" type:"string"` } // String returns the string representation func (s HostVolumeProperties) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HostVolumeProperties) GoString() string { return s.String() } // A key and value pair object. type KeyValuePair struct { _ struct{} `type:"structure"` // The name of the key value pair. For environment variables, this is the name // of the environment variable. Name *string `locationName:"name" type:"string"` // The value of the key value pair. For environment variables, this is the value // of the environment variable. Value *string `locationName:"value" type:"string"` } // String returns the string representation func (s KeyValuePair) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KeyValuePair) GoString() string { return s.String() } type ListClustersInput struct { _ struct{} `type:"structure"` // The maximum number of cluster results returned by ListClusters in paginated // output. When this parameter is used, ListClusters only returns maxResults // results in a single page along with a nextToken response element. The remaining // results of the initial request can be seen by sending another ListClusters // request with the returned nextToken value. This value can be between 1 and // 100. If this parameter is not used, then ListClusters returns up to 100 results // and a nextToken value if applicable. MaxResults *int64 `locationName:"maxResults" type:"integer"` // The nextToken value returned from a previous paginated ListClusters request // where maxResults was used and the results exceeded the value of that parameter. // Pagination continues from the end of the previous results that returned the // nextToken value. This value is null when there are no more results to return. // // This token should be treated as an opaque identifier that is only used to // retrieve the next items in a list and not for other programmatic purposes. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListClustersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListClustersInput) GoString() string { return s.String() } type ListClustersOutput struct { _ struct{} `type:"structure"` // The list of full Amazon Resource Name (ARN) entries for each cluster associated // with your account. ClusterArns []*string `locationName:"clusterArns" type:"list"` // The nextToken value to include in a future ListClusters request. When the // results of a ListClusters request exceed maxResults, this value can be used // to retrieve the next page of results. This value is null when there are no // more results to return. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListClustersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListClustersOutput) GoString() string { return s.String() } type ListContainerInstancesInput struct { _ struct{} `type:"structure"` // The short name or full Amazon Resource Name (ARN) of the cluster that hosts // the container instances to list. If you do not specify a cluster, the default // cluster is assumed. Cluster *string `locationName:"cluster" type:"string"` // The maximum number of container instance results returned by ListContainerInstances // in paginated output. When this parameter is used, ListContainerInstances // only returns maxResults results in a single page along with a nextToken response // element. The remaining results of the initial request can be seen by sending // another ListContainerInstances request with the returned nextToken value. // This value can be between 1 and 100. If this parameter is not used, then // ListContainerInstances returns up to 100 results and a nextToken value if // applicable. MaxResults *int64 `locationName:"maxResults" type:"integer"` // The nextToken value returned from a previous paginated ListContainerInstances // request where maxResults was used and the results exceeded the value of that // parameter. Pagination continues from the end of the previous results that // returned the nextToken value. This value is null when there are no more results // to return. // // This token should be treated as an opaque identifier that is only used to // retrieve the next items in a list and not for other programmatic purposes. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListContainerInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListContainerInstancesInput) GoString() string { return s.String() } type ListContainerInstancesOutput struct { _ struct{} `type:"structure"` // The list of container instances with full Amazon Resource Name (ARN) entries // for each container instance associated with the specified cluster. ContainerInstanceArns []*string `locationName:"containerInstanceArns" type:"list"` // The nextToken value to include in a future ListContainerInstances request. // When the results of a ListContainerInstances request exceed maxResults, this // value can be used to retrieve the next page of results. This value is null // when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListContainerInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListContainerInstancesOutput) GoString() string { return s.String() } type ListServicesInput struct { _ struct{} `type:"structure"` // The short name or full Amazon Resource Name (ARN) of the cluster that hosts // the services to list. If you do not specify a cluster, the default cluster // is assumed. Cluster *string `locationName:"cluster" type:"string"` // The maximum number of container instance results returned by ListServices // in paginated output. When this parameter is used, ListServices only returns // maxResults results in a single page along with a nextToken response element. // The remaining results of the initial request can be seen by sending another // ListServices request with the returned nextToken value. This value can be // between 1 and 10. If this parameter is not used, then ListServices returns // up to 10 results and a nextToken value if applicable. MaxResults *int64 `locationName:"maxResults" type:"integer"` // The nextToken value returned from a previous paginated ListServices request // where maxResults was used and the results exceeded the value of that parameter. // Pagination continues from the end of the previous results that returned the // nextToken value. This value is null when there are no more results to return. // // This token should be treated as an opaque identifier that is only used to // retrieve the next items in a list and not for other programmatic purposes. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListServicesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListServicesInput) GoString() string { return s.String() } type ListServicesOutput struct { _ struct{} `type:"structure"` // The nextToken value to include in a future ListServices request. When the // results of a ListServices request exceed maxResults, this value can be used // to retrieve the next page of results. This value is null when there are no // more results to return. NextToken *string `locationName:"nextToken" type:"string"` // The list of full Amazon Resource Name (ARN) entries for each service associated // with the specified cluster. ServiceArns []*string `locationName:"serviceArns" type:"list"` } // String returns the string representation func (s ListServicesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListServicesOutput) GoString() string { return s.String() } type ListTaskDefinitionFamiliesInput struct { _ struct{} `type:"structure"` // The familyPrefix is a string that is used to filter the results of ListTaskDefinitionFamilies. // If you specify a familyPrefix, only task definition family names that begin // with the familyPrefix string are returned. FamilyPrefix *string `locationName:"familyPrefix" type:"string"` // The maximum number of task definition family results returned by ListTaskDefinitionFamilies // in paginated output. When this parameter is used, ListTaskDefinitions only // returns maxResults results in a single page along with a nextToken response // element. The remaining results of the initial request can be seen by sending // another ListTaskDefinitionFamilies request with the returned nextToken value. // This value can be between 1 and 100. If this parameter is not used, then // ListTaskDefinitionFamilies returns up to 100 results and a nextToken value // if applicable. MaxResults *int64 `locationName:"maxResults" type:"integer"` // The nextToken value returned from a previous paginated ListTaskDefinitionFamilies // request where maxResults was used and the results exceeded the value of that // parameter. Pagination continues from the end of the previous results that // returned the nextToken value. This value is null when there are no more results // to return. // // This token should be treated as an opaque identifier that is only used to // retrieve the next items in a list and not for other programmatic purposes. NextToken *string `locationName:"nextToken" type:"string"` // The task definition family status with which to filter the ListTaskDefinitionFamilies // results. By default, both ACTIVE and INACTIVE task definition families are // listed. If this parameter is set to ACTIVE, only task definition families // that have an ACTIVE task definition revision are returned. If this parameter // is set to INACTIVE, only task definition families that do not have any ACTIVE // task definition revisions are returned. If you paginate the resulting output, // be sure to keep the status value constant in each subsequent request. Status *string `locationName:"status" type:"string" enum:"TaskDefinitionFamilyStatus"` } // String returns the string representation func (s ListTaskDefinitionFamiliesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTaskDefinitionFamiliesInput) GoString() string { return s.String() } type ListTaskDefinitionFamiliesOutput struct { _ struct{} `type:"structure"` // The list of task definition family names that match the ListTaskDefinitionFamilies // request. Families []*string `locationName:"families" type:"list"` // The nextToken value to include in a future ListTaskDefinitionFamilies request. // When the results of a ListTaskDefinitionFamilies request exceed maxResults, // this value can be used to retrieve the next page of results. This value is // null when there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListTaskDefinitionFamiliesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTaskDefinitionFamiliesOutput) GoString() string { return s.String() } type ListTaskDefinitionsInput struct { _ struct{} `type:"structure"` // The full family name with which to filter the ListTaskDefinitions results. // Specifying a familyPrefix limits the listed task definitions to task definition // revisions that belong to that family. FamilyPrefix *string `locationName:"familyPrefix" type:"string"` // The maximum number of task definition results returned by ListTaskDefinitions // in paginated output. When this parameter is used, ListTaskDefinitions only // returns maxResults results in a single page along with a nextToken response // element. The remaining results of the initial request can be seen by sending // another ListTaskDefinitions request with the returned nextToken value. This // value can be between 1 and 100. If this parameter is not used, then ListTaskDefinitions // returns up to 100 results and a nextToken value if applicable. MaxResults *int64 `locationName:"maxResults" type:"integer"` // The nextToken value returned from a previous paginated ListTaskDefinitions // request where maxResults was used and the results exceeded the value of that // parameter. Pagination continues from the end of the previous results that // returned the nextToken value. This value is null when there are no more results // to return. // // This token should be treated as an opaque identifier that is only used to // retrieve the next items in a list and not for other programmatic purposes. NextToken *string `locationName:"nextToken" type:"string"` // The order in which to sort the results. Valid values are ASC and DESC. By // default (ASC), task definitions are listed lexicographically by family name // and in ascending numerical order by revision so that the newest task definitions // in a family are listed last. Setting this parameter to DESC reverses the // sort order on family name and revision so that the newest task definitions // in a family are listed first. Sort *string `locationName:"sort" type:"string" enum:"SortOrder"` // The task definition status with which to filter the ListTaskDefinitions results. // By default, only ACTIVE task definitions are listed. By setting this parameter // to INACTIVE, you can view task definitions that are INACTIVE as long as an // active task or service still references them. If you paginate the resulting // output, be sure to keep the status value constant in each subsequent request. Status *string `locationName:"status" type:"string" enum:"TaskDefinitionStatus"` } // String returns the string representation func (s ListTaskDefinitionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTaskDefinitionsInput) GoString() string { return s.String() } type ListTaskDefinitionsOutput struct { _ struct{} `type:"structure"` // The nextToken value to include in a future ListTaskDefinitions request. When // the results of a ListTaskDefinitions request exceed maxResults, this value // can be used to retrieve the next page of results. This value is null when // there are no more results to return. NextToken *string `locationName:"nextToken" type:"string"` // The list of task definition Amazon Resource Name (ARN) entries for the ListTaskDefinitions // request. TaskDefinitionArns []*string `locationName:"taskDefinitionArns" type:"list"` } // String returns the string representation func (s ListTaskDefinitionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTaskDefinitionsOutput) GoString() string { return s.String() } type ListTasksInput struct { _ struct{} `type:"structure"` // The short name or full Amazon Resource Name (ARN) of the cluster that hosts // the tasks to list. If you do not specify a cluster, the default cluster is // assumed. Cluster *string `locationName:"cluster" type:"string"` // The container instance ID or full Amazon Resource Name (ARN) of the container // instance with which to filter the ListTasks results. Specifying a containerInstance // limits the results to tasks that belong to that container instance. ContainerInstance *string `locationName:"containerInstance" type:"string"` // The task desired status with which to filter the ListTasks results. Specifying // a desiredStatus of STOPPED limits the results to tasks that ECS has set the // desired status to STOPPED, which can be useful for debugging tasks that are // not starting properly or have died or finished. The default status filter // is RUNNING, which shows tasks that ECS has set the desired status to RUNNING. // // Although you can filter results based on a desired status of PENDING, this // will not return any results because ECS never sets the desired status of // a task to that value (only a task's lastStatus may have a value of PENDING). DesiredStatus *string `locationName:"desiredStatus" type:"string" enum:"DesiredStatus"` // The name of the family with which to filter the ListTasks results. Specifying // a family limits the results to tasks that belong to that family. Family *string `locationName:"family" type:"string"` // The maximum number of task results returned by ListTasks in paginated output. // When this parameter is used, ListTasks only returns maxResults results in // a single page along with a nextToken response element. The remaining results // of the initial request can be seen by sending another ListTasks request with // the returned nextToken value. This value can be between 1 and 100. If this // parameter is not used, then ListTasks returns up to 100 results and a nextToken // value if applicable. MaxResults *int64 `locationName:"maxResults" type:"integer"` // The nextToken value returned from a previous paginated ListTasks request // where maxResults was used and the results exceeded the value of that parameter. // Pagination continues from the end of the previous results that returned the // nextToken value. This value is null when there are no more results to return. // // This token should be treated as an opaque identifier that is only used to // retrieve the next items in a list and not for other programmatic purposes. NextToken *string `locationName:"nextToken" type:"string"` // The name of the service with which to filter the ListTasks results. Specifying // a serviceName limits the results to tasks that belong to that service. ServiceName *string `locationName:"serviceName" type:"string"` // The startedBy value with which to filter the task results. Specifying a startedBy // value limits the results to tasks that were started with that value. StartedBy *string `locationName:"startedBy" type:"string"` } // String returns the string representation func (s ListTasksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTasksInput) GoString() string { return s.String() } type ListTasksOutput struct { _ struct{} `type:"structure"` // The nextToken value to include in a future ListTasks request. When the results // of a ListTasks request exceed maxResults, this value can be used to retrieve // the next page of results. This value is null when there are no more results // to return. NextToken *string `locationName:"nextToken" type:"string"` // The list of task Amazon Resource Name (ARN) entries for the ListTasks request. TaskArns []*string `locationName:"taskArns" type:"list"` } // String returns the string representation func (s ListTasksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTasksOutput) GoString() string { return s.String() } // Details on a load balancer that is used with a service. type LoadBalancer struct { _ struct{} `type:"structure"` // The name of the container (as it appears in a container definition) to associate // with the load balancer. ContainerName *string `locationName:"containerName" type:"string"` // The port on the container to associate with the load balancer. This port // must correspond to a containerPort in the service's task definition. Your // container instances must allow ingress traffic on the hostPort of the port // mapping. ContainerPort *int64 `locationName:"containerPort" type:"integer"` // The name of the load balancer. LoadBalancerName *string `locationName:"loadBalancerName" type:"string"` // The full Amazon Resource Name (ARN) of the Elastic Load Balancing target // group associated with a service. TargetGroupArn *string `locationName:"targetGroupArn" type:"string"` } // String returns the string representation func (s LoadBalancer) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LoadBalancer) GoString() string { return s.String() } // Log configuration options to send to a custom log driver for the container. type LogConfiguration struct { _ struct{} `type:"structure"` // The log driver to use for the container. The valid values listed for this // parameter are log drivers that the Amazon ECS container agent can communicate // with by default. // // If you have a custom driver that is not listed above that you would like // to work with the Amazon ECS container agent, you can fork the Amazon ECS // container agent project that is available on GitHub (https://github.com/aws/amazon-ecs-agent) // and customize it to work with that driver. We encourage you to submit pull // requests for changes that you would like to have included. However, Amazon // Web Services does not currently provide support for running modified copies // of this software. // // This parameter requires version 1.18 of the Docker Remote API or greater // on your container instance. To check the Docker Remote API version on your // container instance, log into your container instance and run the following // command: sudo docker version | grep "Server API version" // // LogDriver is a required field LogDriver *string `locationName:"logDriver" type:"string" required:"true" enum:"LogDriver"` // The configuration options to send to the log driver. This parameter requires // version 1.19 of the Docker Remote API or greater on your container instance. // To check the Docker Remote API version on your container instance, log into // your container instance and run the following command: sudo docker version // | grep "Server API version" Options map[string]*string `locationName:"options" type:"map"` } // String returns the string representation func (s LogConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LogConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LogConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LogConfiguration"} if s.LogDriver == nil { invalidParams.Add(request.NewErrParamRequired("LogDriver")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Details on a volume mount point that is used in a container definition. type MountPoint struct { _ struct{} `type:"structure"` // The path on the container to mount the host volume at. ContainerPath *string `locationName:"containerPath" type:"string"` // If this value is true, the container has read-only access to the volume. // If this value is false, then the container can write to the volume. The default // value is false. ReadOnly *bool `locationName:"readOnly" type:"boolean"` // The name of the volume to mount. SourceVolume *string `locationName:"sourceVolume" type:"string"` } // String returns the string representation func (s MountPoint) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MountPoint) GoString() string { return s.String() } // Details on the network bindings between a container and its host container // instance. After a task reaches the RUNNING status, manual and automatic host // and container port assignments are visible in the networkBindings section // of DescribeTasks API responses. type NetworkBinding struct { _ struct{} `type:"structure"` // The IP address that the container is bound to on the container instance. BindIP *string `locationName:"bindIP" type:"string"` // The port number on the container that is be used with the network binding. ContainerPort *int64 `locationName:"containerPort" type:"integer"` // The port number on the host that is used with the network binding. HostPort *int64 `locationName:"hostPort" type:"integer"` // The protocol used for the network binding. Protocol *string `locationName:"protocol" type:"string" enum:"TransportProtocol"` } // String returns the string representation func (s NetworkBinding) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NetworkBinding) GoString() string { return s.String() } // Port mappings allow containers to access ports on the host container instance // to send or receive traffic. Port mappings are specified as part of the container // definition. After a task reaches the RUNNING status, manual and automatic // host and container port assignments are visible in the networkBindings section // of DescribeTasks API responses. type PortMapping struct { _ struct{} `type:"structure"` // The port number on the container that is bound to the user-specified or automatically // assigned host port. If you specify a container port and not a host port, // your container automatically receives a host port in the ephemeral port range // (for more information, see hostPort). Port mappings that are automatically // assigned in this way do not count toward the 100 reserved ports limit of // a container instance. ContainerPort *int64 `locationName:"containerPort" type:"integer"` // The port number on the container instance to reserve for your container. // You can specify a non-reserved host port for your container port mapping, // or you can omit the hostPort (or set it to 0) while specifying a containerPort // and your container automatically receives a port in the ephemeral port range // for your container instance operating system and Docker version. // // The default ephemeral port range is 49153 to 65535, and this range is used // for Docker versions prior to 1.6.0. For Docker version 1.6.0 and later, the // Docker daemon tries to read the ephemeral port range from /proc/sys/net/ipv4/ip_local_port_range; // if this kernel parameter is unavailable, the default ephemeral port range // is used. You should not attempt to specify a host port in the ephemeral port // range, because these are reserved for automatic assignment. In general, ports // below 32768 are outside of the ephemeral port range. // // The default reserved ports are 22 for SSH, the Docker ports 2375 and 2376, // and the Amazon ECS container agent ports 51678 and 51679. Any host port that // was previously specified in a running task is also reserved while the task // is running (after a task stops, the host port is released).The current reserved // ports are displayed in the remainingResources of DescribeContainerInstances // output, and a container instance may have up to 100 reserved ports at a time, // including the default reserved ports (automatically assigned ports do not // count toward the 100 reserved ports limit). HostPort *int64 `locationName:"hostPort" type:"integer"` // The protocol used for the port mapping. Valid values are tcp and udp. The // default is tcp. Protocol *string `locationName:"protocol" type:"string" enum:"TransportProtocol"` } // String returns the string representation func (s PortMapping) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PortMapping) GoString() string { return s.String() } type RegisterContainerInstanceInput struct { _ struct{} `type:"structure"` // The container instance attributes that this container instance supports. Attributes []*Attribute `locationName:"attributes" type:"list"` // The short name or full Amazon Resource Name (ARN) of the cluster with which // to register your container instance. If you do not specify a cluster, the // default cluster is assumed. Cluster *string `locationName:"cluster" type:"string"` // The Amazon Resource Name (ARN) of the container instance (if it was previously // registered). ContainerInstanceArn *string `locationName:"containerInstanceArn" type:"string"` // The instance identity document for the EC2 instance to register. This document // can be found by running the following command from the instance: curl http://169.254.169.254/latest/dynamic/instance-identity/document/ InstanceIdentityDocument *string `locationName:"instanceIdentityDocument" type:"string"` // The instance identity document signature for the EC2 instance to register. // This signature can be found by running the following command from the instance: // curl http://169.254.169.254/latest/dynamic/instance-identity/signature/ InstanceIdentityDocumentSignature *string `locationName:"instanceIdentityDocumentSignature" type:"string"` // The resources available on the instance. TotalResources []*Resource `locationName:"totalResources" type:"list"` // The version information for the Amazon ECS container agent and Docker daemon // running on the container instance. VersionInfo *VersionInfo `locationName:"versionInfo" type:"structure"` } // String returns the string representation func (s RegisterContainerInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterContainerInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterContainerInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterContainerInstanceInput"} if s.Attributes != nil { for i, v := range s.Attributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attributes", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type RegisterContainerInstanceOutput struct { _ struct{} `type:"structure"` // An EC2 instance that is running the Amazon ECS agent and has been registered // with a cluster. ContainerInstance *ContainerInstance `locationName:"containerInstance" type:"structure"` } // String returns the string representation func (s RegisterContainerInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterContainerInstanceOutput) GoString() string { return s.String() } type RegisterTaskDefinitionInput struct { _ struct{} `type:"structure"` // A list of container definitions in JSON format that describe the different // containers that make up your task. // // ContainerDefinitions is a required field ContainerDefinitions []*ContainerDefinition `locationName:"containerDefinitions" type:"list" required:"true"` // You must specify a family for a task definition, which allows you to track // multiple versions of the same task definition. The family is used as a name // for your task definition. Up to 255 letters (uppercase and lowercase), numbers, // hyphens, and underscores are allowed. // // Family is a required field Family *string `locationName:"family" type:"string" required:"true"` // The Docker networking mode to use for the containers in the task. The valid // values are none, bridge, and host. // // The default Docker network mode is bridge. If the network mode is set to // none, you cannot specify port mappings in your container definitions, and // the task's containers do not have external connectivity. The host network // mode offers the highest networking performance for containers because they // use the host network stack instead of the virtualized network stack provided // by the bridge mode; however, exposed container ports are mapped directly // to the corresponding host port, so you cannot take advantage of dynamic host // port mappings or run multiple instantiations of the same task on a single // container instance if port mappings are used. // // For more information, see Network settings (https://docs.docker.com/engine/reference/run/#network-settings) // in the Docker run reference. NetworkMode *string `locationName:"networkMode" type:"string" enum:"NetworkMode"` // The short name or full Amazon Resource Name (ARN) of the IAM role that containers // in this task can assume. All containers in this task are granted the permissions // that are specified in this role. For more information, see IAM Roles for // Tasks (http://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) // in the Amazon EC2 Container Service Developer Guide. TaskRoleArn *string `locationName:"taskRoleArn" type:"string"` // A list of volume definitions in JSON format that containers in your task // may use. Volumes []*Volume `locationName:"volumes" type:"list"` } // String returns the string representation func (s RegisterTaskDefinitionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterTaskDefinitionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterTaskDefinitionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterTaskDefinitionInput"} if s.ContainerDefinitions == nil { invalidParams.Add(request.NewErrParamRequired("ContainerDefinitions")) } if s.Family == nil { invalidParams.Add(request.NewErrParamRequired("Family")) } if s.ContainerDefinitions != nil { for i, v := range s.ContainerDefinitions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ContainerDefinitions", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type RegisterTaskDefinitionOutput struct { _ struct{} `type:"structure"` // The full description of the registered task definition. TaskDefinition *TaskDefinition `locationName:"taskDefinition" type:"structure"` } // String returns the string representation func (s RegisterTaskDefinitionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterTaskDefinitionOutput) GoString() string { return s.String() } // Describes the resources available for a container instance. type Resource struct { _ struct{} `type:"structure"` // When the doubleValue type is set, the value of the resource must be a double // precision floating-point type. DoubleValue *float64 `locationName:"doubleValue" type:"double"` // When the integerValue type is set, the value of the resource must be an integer. IntegerValue *int64 `locationName:"integerValue" type:"integer"` // When the longValue type is set, the value of the resource must be an extended // precision floating-point type. LongValue *int64 `locationName:"longValue" type:"long"` // The name of the resource, such as CPU, MEMORY, PORTS, or a user-defined resource. Name *string `locationName:"name" type:"string"` // When the stringSetValue type is set, the value of the resource must be a // string type. StringSetValue []*string `locationName:"stringSetValue" type:"list"` // The type of the resource, such as INTEGER, DOUBLE, LONG, or STRINGSET. Type *string `locationName:"type" type:"string"` } // String returns the string representation func (s Resource) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Resource) GoString() string { return s.String() } type RunTaskInput struct { _ struct{} `type:"structure"` // The short name or full Amazon Resource Name (ARN) of the cluster on which // to run your task. If you do not specify a cluster, the default cluster is // assumed. Cluster *string `locationName:"cluster" type:"string"` // The number of instantiations of the specified task to place on your cluster. // // The count parameter is limited to 10 tasks per call. Count *int64 `locationName:"count" type:"integer"` // A list of container overrides in JSON format that specify the name of a container // in the specified task definition and the overrides it should receive. You // can override the default command for a container (that is specified in the // task definition or Docker image) with a command override. You can also override // existing environment variables (that are specified in the task definition // or Docker image) on a container or add new environment variables to it with // an environment override. // // A total of 8192 characters are allowed for overrides. This limit includes // the JSON formatting characters of the override structure. Overrides *TaskOverride `locationName:"overrides" type:"structure"` // An optional tag specified when a task is started. For example if you automatically // trigger a task to run a batch process job, you could apply a unique identifier // for that job to your task with the startedBy parameter. You can then identify // which tasks belong to that job by filtering the results of a ListTasks call // with the startedBy value. Up to 36 letters (uppercase and lowercase), numbers, // hyphens, and underscores are allowed. // // If a task is started by an Amazon ECS service, then the startedBy parameter // contains the deployment ID of the service that starts it. StartedBy *string `locationName:"startedBy" type:"string"` // The family and revision (family:revision) or full Amazon Resource Name (ARN) // of the task definition to run. If a revision is not specified, the latest // ACTIVE revision is used. // // TaskDefinition is a required field TaskDefinition *string `locationName:"taskDefinition" type:"string" required:"true"` } // String returns the string representation func (s RunTaskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RunTaskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RunTaskInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RunTaskInput"} if s.TaskDefinition == nil { invalidParams.Add(request.NewErrParamRequired("TaskDefinition")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RunTaskOutput struct { _ struct{} `type:"structure"` // Any failures associated with the call. Failures []*Failure `locationName:"failures" type:"list"` // A full description of the tasks that were run. Each task that was successfully // placed on your cluster are described here. Tasks []*Task `locationName:"tasks" type:"list"` } // String returns the string representation func (s RunTaskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RunTaskOutput) GoString() string { return s.String() } // Details on a service within a cluster type Service struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the cluster that hosts the service. ClusterArn *string `locationName:"clusterArn" type:"string"` // The Unix timestamp for when the service was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unix"` // Optional deployment parameters that control how many tasks run during the // deployment and the ordering of stopping and starting tasks. DeploymentConfiguration *DeploymentConfiguration `locationName:"deploymentConfiguration" type:"structure"` // The current state of deployments for the service. Deployments []*Deployment `locationName:"deployments" type:"list"` // The desired number of instantiations of the task definition to keep running // on the service. This value is specified when the service is created with // CreateService, and it can be modified with UpdateService. DesiredCount *int64 `locationName:"desiredCount" type:"integer"` // The event stream for your service. A maximum of 100 of the latest events // are displayed. Events []*ServiceEvent `locationName:"events" type:"list"` // A list of Elastic Load Balancing load balancer objects, containing the load // balancer name, the container name (as it appears in a container definition), // and the container port to access from the load balancer. LoadBalancers []*LoadBalancer `locationName:"loadBalancers" type:"list"` // The number of tasks in the cluster that are in the PENDING state. PendingCount *int64 `locationName:"pendingCount" type:"integer"` // The Amazon Resource Name (ARN) of the IAM role associated with the service // that allows the Amazon ECS container agent to register container instances // with an Elastic Load Balancing load balancer. RoleArn *string `locationName:"roleArn" type:"string"` // The number of tasks in the cluster that are in the RUNNING state. RunningCount *int64 `locationName:"runningCount" type:"integer"` // The Amazon Resource Name (ARN) that identifies the service. The ARN contains // the arn:aws:ecs namespace, followed by the region of the service, the AWS // account ID of the service owner, the service namespace, and then the service // name. For example, arn:aws:ecs:region:012345678910:service/my-service. ServiceArn *string `locationName:"serviceArn" type:"string"` // The name of your service. Up to 255 letters (uppercase and lowercase), numbers, // hyphens, and underscores are allowed. Service names must be unique within // a cluster, but you can have similarly named services in multiple clusters // within a region or across multiple regions. ServiceName *string `locationName:"serviceName" type:"string"` // The status of the service. The valid values are ACTIVE, DRAINING, or INACTIVE. Status *string `locationName:"status" type:"string"` // The task definition to use for tasks in the service. This value is specified // when the service is created with CreateService, and it can be modified with // UpdateService. TaskDefinition *string `locationName:"taskDefinition" type:"string"` } // String returns the string representation func (s Service) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Service) GoString() string { return s.String() } // Details on an event associated with a service. type ServiceEvent struct { _ struct{} `type:"structure"` // The Unix timestamp for when the event was triggered. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unix"` // The ID string of the event. Id *string `locationName:"id" type:"string"` // The event message. Message *string `locationName:"message" type:"string"` } // String returns the string representation func (s ServiceEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ServiceEvent) GoString() string { return s.String() } type StartTaskInput struct { _ struct{} `type:"structure"` // The short name or full Amazon Resource Name (ARN) of the cluster on which // to start your task. If you do not specify a cluster, the default cluster // is assumed. Cluster *string `locationName:"cluster" type:"string"` // The container instance IDs or full Amazon Resource Name (ARN) entries for // the container instances on which you would like to place your task. // // The list of container instances to start tasks on is limited to 10. // // ContainerInstances is a required field ContainerInstances []*string `locationName:"containerInstances" type:"list" required:"true"` // A list of container overrides in JSON format that specify the name of a container // in the specified task definition and the overrides it should receive. You // can override the default command for a container (that is specified in the // task definition or Docker image) with a command override. You can also override // existing environment variables (that are specified in the task definition // or Docker image) on a container or add new environment variables to it with // an environment override. // // A total of 8192 characters are allowed for overrides. This limit includes // the JSON formatting characters of the override structure. Overrides *TaskOverride `locationName:"overrides" type:"structure"` // An optional tag specified when a task is started. For example if you automatically // trigger a task to run a batch process job, you could apply a unique identifier // for that job to your task with the startedBy parameter. You can then identify // which tasks belong to that job by filtering the results of a ListTasks call // with the startedBy value. Up to 36 letters (uppercase and lowercase), numbers, // hyphens, and underscores are allowed. // // If a task is started by an Amazon ECS service, then the startedBy parameter // contains the deployment ID of the service that starts it. StartedBy *string `locationName:"startedBy" type:"string"` // The family and revision (family:revision) or full Amazon Resource Name (ARN) // of the task definition to start. If a revision is not specified, the latest // ACTIVE revision is used. // // TaskDefinition is a required field TaskDefinition *string `locationName:"taskDefinition" type:"string" required:"true"` } // String returns the string representation func (s StartTaskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartTaskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartTaskInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartTaskInput"} if s.ContainerInstances == nil { invalidParams.Add(request.NewErrParamRequired("ContainerInstances")) } if s.TaskDefinition == nil { invalidParams.Add(request.NewErrParamRequired("TaskDefinition")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type StartTaskOutput struct { _ struct{} `type:"structure"` // Any failures associated with the call. Failures []*Failure `locationName:"failures" type:"list"` // A full description of the tasks that were started. Each task that was successfully // placed on your container instances are described here. Tasks []*Task `locationName:"tasks" type:"list"` } // String returns the string representation func (s StartTaskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartTaskOutput) GoString() string { return s.String() } type StopTaskInput struct { _ struct{} `type:"structure"` // The short name or full Amazon Resource Name (ARN) of the cluster that hosts // the task to stop. If you do not specify a cluster, the default cluster is // assumed. Cluster *string `locationName:"cluster" type:"string"` // An optional message specified when a task is stopped. For example, if you // are using a custom scheduler, you can use this parameter to specify the reason // for stopping the task here, and the message will appear in subsequent DescribeTasks // API operations on this task. Up to 255 characters are allowed in this message. Reason *string `locationName:"reason" type:"string"` // The task ID or full Amazon Resource Name (ARN) entry of the task to stop. // // Task is a required field Task *string `locationName:"task" type:"string" required:"true"` } // String returns the string representation func (s StopTaskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopTaskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StopTaskInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StopTaskInput"} if s.Task == nil { invalidParams.Add(request.NewErrParamRequired("Task")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type StopTaskOutput struct { _ struct{} `type:"structure"` // Details on a task in a cluster. Task *Task `locationName:"task" type:"structure"` } // String returns the string representation func (s StopTaskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopTaskOutput) GoString() string { return s.String() } type SubmitContainerStateChangeInput struct { _ struct{} `type:"structure"` // The short name or full Amazon Resource Name (ARN) of the cluster that hosts // the container. Cluster *string `locationName:"cluster" type:"string"` // The name of the container. ContainerName *string `locationName:"containerName" type:"string"` // The exit code returned for the state change request. ExitCode *int64 `locationName:"exitCode" type:"integer"` // The network bindings of the container. NetworkBindings []*NetworkBinding `locationName:"networkBindings" type:"list"` // The reason for the state change request. Reason *string `locationName:"reason" type:"string"` // The status of the state change request. Status *string `locationName:"status" type:"string"` // The task ID or full Amazon Resource Name (ARN) of the task that hosts the // container. Task *string `locationName:"task" type:"string"` } // String returns the string representation func (s SubmitContainerStateChangeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SubmitContainerStateChangeInput) GoString() string { return s.String() } type SubmitContainerStateChangeOutput struct { _ struct{} `type:"structure"` // Acknowledgement of the state change. Acknowledgment *string `locationName:"acknowledgment" type:"string"` } // String returns the string representation func (s SubmitContainerStateChangeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SubmitContainerStateChangeOutput) GoString() string { return s.String() } type SubmitTaskStateChangeInput struct { _ struct{} `type:"structure"` // The short name or full Amazon Resource Name (ARN) of the cluster that hosts // the task. Cluster *string `locationName:"cluster" type:"string"` // The reason for the state change request. Reason *string `locationName:"reason" type:"string"` // The status of the state change request. Status *string `locationName:"status" type:"string"` // The task ID or full Amazon Resource Name (ARN) of the task in the state change // request. Task *string `locationName:"task" type:"string"` } // String returns the string representation func (s SubmitTaskStateChangeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SubmitTaskStateChangeInput) GoString() string { return s.String() } type SubmitTaskStateChangeOutput struct { _ struct{} `type:"structure"` // Acknowledgement of the state change. Acknowledgment *string `locationName:"acknowledgment" type:"string"` } // String returns the string representation func (s SubmitTaskStateChangeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SubmitTaskStateChangeOutput) GoString() string { return s.String() } // Details on a task in a cluster. type Task struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the cluster that hosts the task. ClusterArn *string `locationName:"clusterArn" type:"string"` // The Amazon Resource Name (ARN) of the container instances that host the task. ContainerInstanceArn *string `locationName:"containerInstanceArn" type:"string"` // The containers associated with the task. Containers []*Container `locationName:"containers" type:"list"` // The Unix timestamp for when the task was created (the task entered the PENDING // state). CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unix"` // The desired status of the task. DesiredStatus *string `locationName:"desiredStatus" type:"string"` // The last known status of the task. LastStatus *string `locationName:"lastStatus" type:"string"` // One or more container overrides. Overrides *TaskOverride `locationName:"overrides" type:"structure"` // The Unix timestamp for when the task was started (the task transitioned from // the PENDING state to the RUNNING state). StartedAt *time.Time `locationName:"startedAt" type:"timestamp" timestampFormat:"unix"` // The tag specified when a task is started. If the task is started by an Amazon // ECS service, then the startedBy parameter contains the deployment ID of the // service that starts it. StartedBy *string `locationName:"startedBy" type:"string"` // The Unix timestamp for when the task was stopped (the task transitioned from // the RUNNING state to the STOPPED state). StoppedAt *time.Time `locationName:"stoppedAt" type:"timestamp" timestampFormat:"unix"` // The reason the task was stopped. StoppedReason *string `locationName:"stoppedReason" type:"string"` // The Amazon Resource Name (ARN) of the task. TaskArn *string `locationName:"taskArn" type:"string"` // The Amazon Resource Name (ARN) of the task definition that creates the task. TaskDefinitionArn *string `locationName:"taskDefinitionArn" type:"string"` } // String returns the string representation func (s Task) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Task) GoString() string { return s.String() } // Details of a task definition. type TaskDefinition struct { _ struct{} `type:"structure"` // A list of container definitions in JSON format that describe the different // containers that make up your task. For more information about container definition // parameters and defaults, see Amazon ECS Task Definitions (http://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_defintions.html) // in the Amazon EC2 Container Service Developer Guide. ContainerDefinitions []*ContainerDefinition `locationName:"containerDefinitions" type:"list"` // The family of your task definition, used as the definition name. Family *string `locationName:"family" type:"string"` // The Docker networking mode to use for the containers in the task. The valid // values are none, bridge, and host. // // If the network mode is none, the containers do not have external connectivity. // The default Docker network mode is bridge. The host network mode offers the // highest networking performance for containers because it uses the host network // stack instead of the virtualized network stack provided by the bridge mode. // // For more information, see Network settings (https://docs.docker.com/engine/reference/run/#network-settings) // in the Docker run reference. NetworkMode *string `locationName:"networkMode" type:"string" enum:"NetworkMode"` // The container instance attributes required by your task. RequiresAttributes []*Attribute `locationName:"requiresAttributes" type:"list"` // The revision of the task in a particular family. The revision is a version // number of a task definition in a family. When you register a task definition // for the first time, the revision is 1; each time you register a new revision // of a task definition in the same family, the revision value always increases // by one (even if you have deregistered previous revisions in this family). Revision *int64 `locationName:"revision" type:"integer"` // The status of the task definition. Status *string `locationName:"status" type:"string" enum:"TaskDefinitionStatus"` // The full Amazon Resource Name (ARN) of the task definition. TaskDefinitionArn *string `locationName:"taskDefinitionArn" type:"string"` // The Amazon Resource Name (ARN) of the IAM role that containers in this task // can assume. All containers in this task are granted the permissions that // are specified in this role. TaskRoleArn *string `locationName:"taskRoleArn" type:"string"` // The list of volumes in a task. For more information about volume definition // parameters and defaults, see Amazon ECS Task Definitions (http://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_defintions.html) // in the Amazon EC2 Container Service Developer Guide. Volumes []*Volume `locationName:"volumes" type:"list"` } // String returns the string representation func (s TaskDefinition) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TaskDefinition) GoString() string { return s.String() } // The overrides associated with a task. type TaskOverride struct { _ struct{} `type:"structure"` // One or more container overrides sent to a task. ContainerOverrides []*ContainerOverride `locationName:"containerOverrides" type:"list"` // The Amazon Resource Name (ARN) of the IAM role that containers in this task // can assume. All containers in this task are granted the permissions that // are specified in this role. TaskRoleArn *string `locationName:"taskRoleArn" type:"string"` } // String returns the string representation func (s TaskOverride) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TaskOverride) GoString() string { return s.String() } // The ulimit settings to pass to the container. type Ulimit struct { _ struct{} `type:"structure"` // The hard limit for the ulimit type. // // HardLimit is a required field HardLimit *int64 `locationName:"hardLimit" type:"integer" required:"true"` // The type of the ulimit. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true" enum:"UlimitName"` // The soft limit for the ulimit type. // // SoftLimit is a required field SoftLimit *int64 `locationName:"softLimit" type:"integer" required:"true"` } // String returns the string representation func (s Ulimit) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Ulimit) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Ulimit) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Ulimit"} if s.HardLimit == nil { invalidParams.Add(request.NewErrParamRequired("HardLimit")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.SoftLimit == nil { invalidParams.Add(request.NewErrParamRequired("SoftLimit")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateContainerAgentInput struct { _ struct{} `type:"structure"` // The short name or full Amazon Resource Name (ARN) of the cluster that your // container instance is running on. If you do not specify a cluster, the default // cluster is assumed. Cluster *string `locationName:"cluster" type:"string"` // The container instance ID or full Amazon Resource Name (ARN) entries for // the container instance on which you would like to update the Amazon ECS container // agent. // // ContainerInstance is a required field ContainerInstance *string `locationName:"containerInstance" type:"string" required:"true"` } // String returns the string representation func (s UpdateContainerAgentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateContainerAgentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateContainerAgentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateContainerAgentInput"} if s.ContainerInstance == nil { invalidParams.Add(request.NewErrParamRequired("ContainerInstance")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateContainerAgentOutput struct { _ struct{} `type:"structure"` // An EC2 instance that is running the Amazon ECS agent and has been registered // with a cluster. ContainerInstance *ContainerInstance `locationName:"containerInstance" type:"structure"` } // String returns the string representation func (s UpdateContainerAgentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateContainerAgentOutput) GoString() string { return s.String() } type UpdateServiceInput struct { _ struct{} `type:"structure"` // The short name or full Amazon Resource Name (ARN) of the cluster that your // service is running on. If you do not specify a cluster, the default cluster // is assumed. Cluster *string `locationName:"cluster" type:"string"` // Optional deployment parameters that control how many tasks run during the // deployment and the ordering of stopping and starting tasks. DeploymentConfiguration *DeploymentConfiguration `locationName:"deploymentConfiguration" type:"structure"` // The number of instantiations of the task to place and keep running in your // service. DesiredCount *int64 `locationName:"desiredCount" type:"integer"` // The name of the service to update. // // Service is a required field Service *string `locationName:"service" type:"string" required:"true"` // The family and revision (family:revision) or full Amazon Resource Name (ARN) // of the task definition to run in your service. If a revision is not specified, // the latest ACTIVE revision is used. If you modify the task definition with // UpdateService, Amazon ECS spawns a task with the new version of the task // definition and then stops an old task after the new version is running. TaskDefinition *string `locationName:"taskDefinition" type:"string"` } // String returns the string representation func (s UpdateServiceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateServiceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateServiceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateServiceInput"} if s.Service == nil { invalidParams.Add(request.NewErrParamRequired("Service")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateServiceOutput struct { _ struct{} `type:"structure"` // The full description of your service following the update call. Service *Service `locationName:"service" type:"structure"` } // String returns the string representation func (s UpdateServiceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateServiceOutput) GoString() string { return s.String() } // The Docker and Amazon ECS container agent version information about a container // instance. type VersionInfo struct { _ struct{} `type:"structure"` // The Git commit hash for the Amazon ECS container agent build on the amazon-ecs-agent // (https://github.com/aws/amazon-ecs-agent/commits/master) GitHub repository. AgentHash *string `locationName:"agentHash" type:"string"` // The version number of the Amazon ECS container agent. AgentVersion *string `locationName:"agentVersion" type:"string"` // The Docker version running on the container instance. DockerVersion *string `locationName:"dockerVersion" type:"string"` } // String returns the string representation func (s VersionInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VersionInfo) GoString() string { return s.String() } // A data volume used in a task definition. type Volume struct { _ struct{} `type:"structure"` // The contents of the host parameter determine whether your data volume persists // on the host container instance and where it is stored. If the host parameter // is empty, then the Docker daemon assigns a host path for your data volume, // but the data is not guaranteed to persist after the containers associated // with it stop running. Host *HostVolumeProperties `locationName:"host" type:"structure"` // The name of the volume. Up to 255 letters (uppercase and lowercase), numbers, // hyphens, and underscores are allowed. This name is referenced in the sourceVolume // parameter of container definition mountPoints. Name *string `locationName:"name" type:"string"` } // String returns the string representation func (s Volume) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Volume) GoString() string { return s.String() } // Details on a data volume from another container. type VolumeFrom struct { _ struct{} `type:"structure"` // If this value is true, the container has read-only access to the volume. // If this value is false, then the container can write to the volume. The default // value is false. ReadOnly *bool `locationName:"readOnly" type:"boolean"` // The name of the container to mount volumes from. SourceContainer *string `locationName:"sourceContainer" type:"string"` } // String returns the string representation func (s VolumeFrom) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VolumeFrom) GoString() string { return s.String() } const ( // AgentUpdateStatusPending is a AgentUpdateStatus enum value AgentUpdateStatusPending = "PENDING" // AgentUpdateStatusStaging is a AgentUpdateStatus enum value AgentUpdateStatusStaging = "STAGING" // AgentUpdateStatusStaged is a AgentUpdateStatus enum value AgentUpdateStatusStaged = "STAGED" // AgentUpdateStatusUpdating is a AgentUpdateStatus enum value AgentUpdateStatusUpdating = "UPDATING" // AgentUpdateStatusUpdated is a AgentUpdateStatus enum value AgentUpdateStatusUpdated = "UPDATED" // AgentUpdateStatusFailed is a AgentUpdateStatus enum value AgentUpdateStatusFailed = "FAILED" ) const ( // DesiredStatusRunning is a DesiredStatus enum value DesiredStatusRunning = "RUNNING" // DesiredStatusPending is a DesiredStatus enum value DesiredStatusPending = "PENDING" // DesiredStatusStopped is a DesiredStatus enum value DesiredStatusStopped = "STOPPED" ) const ( // LogDriverJsonFile is a LogDriver enum value LogDriverJsonFile = "json-file" // LogDriverSyslog is a LogDriver enum value LogDriverSyslog = "syslog" // LogDriverJournald is a LogDriver enum value LogDriverJournald = "journald" // LogDriverGelf is a LogDriver enum value LogDriverGelf = "gelf" // LogDriverFluentd is a LogDriver enum value LogDriverFluentd = "fluentd" // LogDriverAwslogs is a LogDriver enum value LogDriverAwslogs = "awslogs" // LogDriverSplunk is a LogDriver enum value LogDriverSplunk = "splunk" ) const ( // NetworkModeBridge is a NetworkMode enum value NetworkModeBridge = "bridge" // NetworkModeHost is a NetworkMode enum value NetworkModeHost = "host" // NetworkModeNone is a NetworkMode enum value NetworkModeNone = "none" ) const ( // SortOrderAsc is a SortOrder enum value SortOrderAsc = "ASC" // SortOrderDesc is a SortOrder enum value SortOrderDesc = "DESC" ) const ( // TaskDefinitionFamilyStatusActive is a TaskDefinitionFamilyStatus enum value TaskDefinitionFamilyStatusActive = "ACTIVE" // TaskDefinitionFamilyStatusInactive is a TaskDefinitionFamilyStatus enum value TaskDefinitionFamilyStatusInactive = "INACTIVE" // TaskDefinitionFamilyStatusAll is a TaskDefinitionFamilyStatus enum value TaskDefinitionFamilyStatusAll = "ALL" ) const ( // TaskDefinitionStatusActive is a TaskDefinitionStatus enum value TaskDefinitionStatusActive = "ACTIVE" // TaskDefinitionStatusInactive is a TaskDefinitionStatus enum value TaskDefinitionStatusInactive = "INACTIVE" ) const ( // TransportProtocolTcp is a TransportProtocol enum value TransportProtocolTcp = "tcp" // TransportProtocolUdp is a TransportProtocol enum value TransportProtocolUdp = "udp" ) const ( // UlimitNameCore is a UlimitName enum value UlimitNameCore = "core" // UlimitNameCpu is a UlimitName enum value UlimitNameCpu = "cpu" // UlimitNameData is a UlimitName enum value UlimitNameData = "data" // UlimitNameFsize is a UlimitName enum value UlimitNameFsize = "fsize" // UlimitNameLocks is a UlimitName enum value UlimitNameLocks = "locks" // UlimitNameMemlock is a UlimitName enum value UlimitNameMemlock = "memlock" // UlimitNameMsgqueue is a UlimitName enum value UlimitNameMsgqueue = "msgqueue" // UlimitNameNice is a UlimitName enum value UlimitNameNice = "nice" // UlimitNameNofile is a UlimitName enum value UlimitNameNofile = "nofile" // UlimitNameNproc is a UlimitName enum value UlimitNameNproc = "nproc" // UlimitNameRss is a UlimitName enum value UlimitNameRss = "rss" // UlimitNameRtprio is a UlimitName enum value UlimitNameRtprio = "rtprio" // UlimitNameRttime is a UlimitName enum value UlimitNameRttime = "rttime" // UlimitNameSigpending is a UlimitName enum value UlimitNameSigpending = "sigpending" // UlimitNameStack is a UlimitName enum value UlimitNameStack = "stack" ) aws-sdk-go-1.4.22/service/ecs/ecsiface/000077500000000000000000000000001300374646400175375ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/ecs/ecsiface/interface.go000066400000000000000000000200141300374646400220230ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package ecsiface provides an interface to enable mocking the Amazon EC2 Container Service service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package ecsiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/ecs" ) // ECSAPI provides an interface to enable mocking the // ecs.ECS service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon EC2 Container Service. // func myFunc(svc ecsiface.ECSAPI) bool { // // Make svc.CreateCluster request // } // // func main() { // sess := session.New() // svc := ecs.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockECSClient struct { // ecsiface.ECSAPI // } // func (m *mockECSClient) CreateCluster(input *ecs.CreateClusterInput) (*ecs.CreateClusterOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockECSClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type ECSAPI interface { CreateClusterRequest(*ecs.CreateClusterInput) (*request.Request, *ecs.CreateClusterOutput) CreateCluster(*ecs.CreateClusterInput) (*ecs.CreateClusterOutput, error) CreateServiceRequest(*ecs.CreateServiceInput) (*request.Request, *ecs.CreateServiceOutput) CreateService(*ecs.CreateServiceInput) (*ecs.CreateServiceOutput, error) DeleteClusterRequest(*ecs.DeleteClusterInput) (*request.Request, *ecs.DeleteClusterOutput) DeleteCluster(*ecs.DeleteClusterInput) (*ecs.DeleteClusterOutput, error) DeleteServiceRequest(*ecs.DeleteServiceInput) (*request.Request, *ecs.DeleteServiceOutput) DeleteService(*ecs.DeleteServiceInput) (*ecs.DeleteServiceOutput, error) DeregisterContainerInstanceRequest(*ecs.DeregisterContainerInstanceInput) (*request.Request, *ecs.DeregisterContainerInstanceOutput) DeregisterContainerInstance(*ecs.DeregisterContainerInstanceInput) (*ecs.DeregisterContainerInstanceOutput, error) DeregisterTaskDefinitionRequest(*ecs.DeregisterTaskDefinitionInput) (*request.Request, *ecs.DeregisterTaskDefinitionOutput) DeregisterTaskDefinition(*ecs.DeregisterTaskDefinitionInput) (*ecs.DeregisterTaskDefinitionOutput, error) DescribeClustersRequest(*ecs.DescribeClustersInput) (*request.Request, *ecs.DescribeClustersOutput) DescribeClusters(*ecs.DescribeClustersInput) (*ecs.DescribeClustersOutput, error) DescribeContainerInstancesRequest(*ecs.DescribeContainerInstancesInput) (*request.Request, *ecs.DescribeContainerInstancesOutput) DescribeContainerInstances(*ecs.DescribeContainerInstancesInput) (*ecs.DescribeContainerInstancesOutput, error) DescribeServicesRequest(*ecs.DescribeServicesInput) (*request.Request, *ecs.DescribeServicesOutput) DescribeServices(*ecs.DescribeServicesInput) (*ecs.DescribeServicesOutput, error) DescribeTaskDefinitionRequest(*ecs.DescribeTaskDefinitionInput) (*request.Request, *ecs.DescribeTaskDefinitionOutput) DescribeTaskDefinition(*ecs.DescribeTaskDefinitionInput) (*ecs.DescribeTaskDefinitionOutput, error) DescribeTasksRequest(*ecs.DescribeTasksInput) (*request.Request, *ecs.DescribeTasksOutput) DescribeTasks(*ecs.DescribeTasksInput) (*ecs.DescribeTasksOutput, error) DiscoverPollEndpointRequest(*ecs.DiscoverPollEndpointInput) (*request.Request, *ecs.DiscoverPollEndpointOutput) DiscoverPollEndpoint(*ecs.DiscoverPollEndpointInput) (*ecs.DiscoverPollEndpointOutput, error) ListClustersRequest(*ecs.ListClustersInput) (*request.Request, *ecs.ListClustersOutput) ListClusters(*ecs.ListClustersInput) (*ecs.ListClustersOutput, error) ListClustersPages(*ecs.ListClustersInput, func(*ecs.ListClustersOutput, bool) bool) error ListContainerInstancesRequest(*ecs.ListContainerInstancesInput) (*request.Request, *ecs.ListContainerInstancesOutput) ListContainerInstances(*ecs.ListContainerInstancesInput) (*ecs.ListContainerInstancesOutput, error) ListContainerInstancesPages(*ecs.ListContainerInstancesInput, func(*ecs.ListContainerInstancesOutput, bool) bool) error ListServicesRequest(*ecs.ListServicesInput) (*request.Request, *ecs.ListServicesOutput) ListServices(*ecs.ListServicesInput) (*ecs.ListServicesOutput, error) ListServicesPages(*ecs.ListServicesInput, func(*ecs.ListServicesOutput, bool) bool) error ListTaskDefinitionFamiliesRequest(*ecs.ListTaskDefinitionFamiliesInput) (*request.Request, *ecs.ListTaskDefinitionFamiliesOutput) ListTaskDefinitionFamilies(*ecs.ListTaskDefinitionFamiliesInput) (*ecs.ListTaskDefinitionFamiliesOutput, error) ListTaskDefinitionFamiliesPages(*ecs.ListTaskDefinitionFamiliesInput, func(*ecs.ListTaskDefinitionFamiliesOutput, bool) bool) error ListTaskDefinitionsRequest(*ecs.ListTaskDefinitionsInput) (*request.Request, *ecs.ListTaskDefinitionsOutput) ListTaskDefinitions(*ecs.ListTaskDefinitionsInput) (*ecs.ListTaskDefinitionsOutput, error) ListTaskDefinitionsPages(*ecs.ListTaskDefinitionsInput, func(*ecs.ListTaskDefinitionsOutput, bool) bool) error ListTasksRequest(*ecs.ListTasksInput) (*request.Request, *ecs.ListTasksOutput) ListTasks(*ecs.ListTasksInput) (*ecs.ListTasksOutput, error) ListTasksPages(*ecs.ListTasksInput, func(*ecs.ListTasksOutput, bool) bool) error RegisterContainerInstanceRequest(*ecs.RegisterContainerInstanceInput) (*request.Request, *ecs.RegisterContainerInstanceOutput) RegisterContainerInstance(*ecs.RegisterContainerInstanceInput) (*ecs.RegisterContainerInstanceOutput, error) RegisterTaskDefinitionRequest(*ecs.RegisterTaskDefinitionInput) (*request.Request, *ecs.RegisterTaskDefinitionOutput) RegisterTaskDefinition(*ecs.RegisterTaskDefinitionInput) (*ecs.RegisterTaskDefinitionOutput, error) RunTaskRequest(*ecs.RunTaskInput) (*request.Request, *ecs.RunTaskOutput) RunTask(*ecs.RunTaskInput) (*ecs.RunTaskOutput, error) StartTaskRequest(*ecs.StartTaskInput) (*request.Request, *ecs.StartTaskOutput) StartTask(*ecs.StartTaskInput) (*ecs.StartTaskOutput, error) StopTaskRequest(*ecs.StopTaskInput) (*request.Request, *ecs.StopTaskOutput) StopTask(*ecs.StopTaskInput) (*ecs.StopTaskOutput, error) SubmitContainerStateChangeRequest(*ecs.SubmitContainerStateChangeInput) (*request.Request, *ecs.SubmitContainerStateChangeOutput) SubmitContainerStateChange(*ecs.SubmitContainerStateChangeInput) (*ecs.SubmitContainerStateChangeOutput, error) SubmitTaskStateChangeRequest(*ecs.SubmitTaskStateChangeInput) (*request.Request, *ecs.SubmitTaskStateChangeOutput) SubmitTaskStateChange(*ecs.SubmitTaskStateChangeInput) (*ecs.SubmitTaskStateChangeOutput, error) UpdateContainerAgentRequest(*ecs.UpdateContainerAgentInput) (*request.Request, *ecs.UpdateContainerAgentOutput) UpdateContainerAgent(*ecs.UpdateContainerAgentInput) (*ecs.UpdateContainerAgentOutput, error) UpdateServiceRequest(*ecs.UpdateServiceInput) (*request.Request, *ecs.UpdateServiceOutput) UpdateService(*ecs.UpdateServiceInput) (*ecs.UpdateServiceOutput, error) WaitUntilServicesInactive(*ecs.DescribeServicesInput) error WaitUntilServicesStable(*ecs.DescribeServicesInput) error WaitUntilTasksRunning(*ecs.DescribeTasksInput) error WaitUntilTasksStopped(*ecs.DescribeTasksInput) error } var _ ECSAPI = (*ecs.ECS)(nil) aws-sdk-go-1.4.22/service/ecs/examples_test.go000066400000000000000000000527621300374646400212150ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package ecs_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/ecs" ) var _ time.Duration var _ bytes.Buffer func ExampleECS_CreateCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.CreateClusterInput{ ClusterName: aws.String("String"), } resp, err := svc.CreateCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_CreateService() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.CreateServiceInput{ DesiredCount: aws.Int64(1), // Required ServiceName: aws.String("String"), // Required TaskDefinition: aws.String("String"), // Required ClientToken: aws.String("String"), Cluster: aws.String("String"), DeploymentConfiguration: &ecs.DeploymentConfiguration{ MaximumPercent: aws.Int64(1), MinimumHealthyPercent: aws.Int64(1), }, LoadBalancers: []*ecs.LoadBalancer{ { // Required ContainerName: aws.String("String"), ContainerPort: aws.Int64(1), LoadBalancerName: aws.String("String"), TargetGroupArn: aws.String("String"), }, // More values... }, Role: aws.String("String"), } resp, err := svc.CreateService(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_DeleteCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.DeleteClusterInput{ Cluster: aws.String("String"), // Required } resp, err := svc.DeleteCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_DeleteService() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.DeleteServiceInput{ Service: aws.String("String"), // Required Cluster: aws.String("String"), } resp, err := svc.DeleteService(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_DeregisterContainerInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.DeregisterContainerInstanceInput{ ContainerInstance: aws.String("String"), // Required Cluster: aws.String("String"), Force: aws.Bool(true), } resp, err := svc.DeregisterContainerInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_DeregisterTaskDefinition() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.DeregisterTaskDefinitionInput{ TaskDefinition: aws.String("String"), // Required } resp, err := svc.DeregisterTaskDefinition(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_DescribeClusters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.DescribeClustersInput{ Clusters: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeClusters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_DescribeContainerInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.DescribeContainerInstancesInput{ ContainerInstances: []*string{ // Required aws.String("String"), // Required // More values... }, Cluster: aws.String("String"), } resp, err := svc.DescribeContainerInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_DescribeServices() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.DescribeServicesInput{ Services: []*string{ // Required aws.String("String"), // Required // More values... }, Cluster: aws.String("String"), } resp, err := svc.DescribeServices(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_DescribeTaskDefinition() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.DescribeTaskDefinitionInput{ TaskDefinition: aws.String("String"), // Required } resp, err := svc.DescribeTaskDefinition(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_DescribeTasks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.DescribeTasksInput{ Tasks: []*string{ // Required aws.String("String"), // Required // More values... }, Cluster: aws.String("String"), } resp, err := svc.DescribeTasks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_DiscoverPollEndpoint() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.DiscoverPollEndpointInput{ Cluster: aws.String("String"), ContainerInstance: aws.String("String"), } resp, err := svc.DiscoverPollEndpoint(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_ListClusters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.ListClustersInput{ MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.ListClusters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_ListContainerInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.ListContainerInstancesInput{ Cluster: aws.String("String"), MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.ListContainerInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_ListServices() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.ListServicesInput{ Cluster: aws.String("String"), MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.ListServices(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_ListTaskDefinitionFamilies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.ListTaskDefinitionFamiliesInput{ FamilyPrefix: aws.String("String"), MaxResults: aws.Int64(1), NextToken: aws.String("String"), Status: aws.String("TaskDefinitionFamilyStatus"), } resp, err := svc.ListTaskDefinitionFamilies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_ListTaskDefinitions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.ListTaskDefinitionsInput{ FamilyPrefix: aws.String("String"), MaxResults: aws.Int64(1), NextToken: aws.String("String"), Sort: aws.String("SortOrder"), Status: aws.String("TaskDefinitionStatus"), } resp, err := svc.ListTaskDefinitions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_ListTasks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.ListTasksInput{ Cluster: aws.String("String"), ContainerInstance: aws.String("String"), DesiredStatus: aws.String("DesiredStatus"), Family: aws.String("String"), MaxResults: aws.Int64(1), NextToken: aws.String("String"), ServiceName: aws.String("String"), StartedBy: aws.String("String"), } resp, err := svc.ListTasks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_RegisterContainerInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.RegisterContainerInstanceInput{ Attributes: []*ecs.Attribute{ { // Required Name: aws.String("String"), // Required Value: aws.String("String"), }, // More values... }, Cluster: aws.String("String"), ContainerInstanceArn: aws.String("String"), InstanceIdentityDocument: aws.String("String"), InstanceIdentityDocumentSignature: aws.String("String"), TotalResources: []*ecs.Resource{ { // Required DoubleValue: aws.Float64(1.0), IntegerValue: aws.Int64(1), LongValue: aws.Int64(1), Name: aws.String("String"), StringSetValue: []*string{ aws.String("String"), // Required // More values... }, Type: aws.String("String"), }, // More values... }, VersionInfo: &ecs.VersionInfo{ AgentHash: aws.String("String"), AgentVersion: aws.String("String"), DockerVersion: aws.String("String"), }, } resp, err := svc.RegisterContainerInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_RegisterTaskDefinition() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.RegisterTaskDefinitionInput{ ContainerDefinitions: []*ecs.ContainerDefinition{ // Required { // Required Command: []*string{ aws.String("String"), // Required // More values... }, Cpu: aws.Int64(1), DisableNetworking: aws.Bool(true), DnsSearchDomains: []*string{ aws.String("String"), // Required // More values... }, DnsServers: []*string{ aws.String("String"), // Required // More values... }, DockerLabels: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, DockerSecurityOptions: []*string{ aws.String("String"), // Required // More values... }, EntryPoint: []*string{ aws.String("String"), // Required // More values... }, Environment: []*ecs.KeyValuePair{ { // Required Name: aws.String("String"), Value: aws.String("String"), }, // More values... }, Essential: aws.Bool(true), ExtraHosts: []*ecs.HostEntry{ { // Required Hostname: aws.String("String"), // Required IpAddress: aws.String("String"), // Required }, // More values... }, Hostname: aws.String("String"), Image: aws.String("String"), Links: []*string{ aws.String("String"), // Required // More values... }, LogConfiguration: &ecs.LogConfiguration{ LogDriver: aws.String("LogDriver"), // Required Options: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, }, Memory: aws.Int64(1), MemoryReservation: aws.Int64(1), MountPoints: []*ecs.MountPoint{ { // Required ContainerPath: aws.String("String"), ReadOnly: aws.Bool(true), SourceVolume: aws.String("String"), }, // More values... }, Name: aws.String("String"), PortMappings: []*ecs.PortMapping{ { // Required ContainerPort: aws.Int64(1), HostPort: aws.Int64(1), Protocol: aws.String("TransportProtocol"), }, // More values... }, Privileged: aws.Bool(true), ReadonlyRootFilesystem: aws.Bool(true), Ulimits: []*ecs.Ulimit{ { // Required HardLimit: aws.Int64(1), // Required Name: aws.String("UlimitName"), // Required SoftLimit: aws.Int64(1), // Required }, // More values... }, User: aws.String("String"), VolumesFrom: []*ecs.VolumeFrom{ { // Required ReadOnly: aws.Bool(true), SourceContainer: aws.String("String"), }, // More values... }, WorkingDirectory: aws.String("String"), }, // More values... }, Family: aws.String("String"), // Required NetworkMode: aws.String("NetworkMode"), TaskRoleArn: aws.String("String"), Volumes: []*ecs.Volume{ { // Required Host: &ecs.HostVolumeProperties{ SourcePath: aws.String("String"), }, Name: aws.String("String"), }, // More values... }, } resp, err := svc.RegisterTaskDefinition(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_RunTask() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.RunTaskInput{ TaskDefinition: aws.String("String"), // Required Cluster: aws.String("String"), Count: aws.Int64(1), Overrides: &ecs.TaskOverride{ ContainerOverrides: []*ecs.ContainerOverride{ { // Required Command: []*string{ aws.String("String"), // Required // More values... }, Environment: []*ecs.KeyValuePair{ { // Required Name: aws.String("String"), Value: aws.String("String"), }, // More values... }, Name: aws.String("String"), }, // More values... }, TaskRoleArn: aws.String("String"), }, StartedBy: aws.String("String"), } resp, err := svc.RunTask(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_StartTask() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.StartTaskInput{ ContainerInstances: []*string{ // Required aws.String("String"), // Required // More values... }, TaskDefinition: aws.String("String"), // Required Cluster: aws.String("String"), Overrides: &ecs.TaskOverride{ ContainerOverrides: []*ecs.ContainerOverride{ { // Required Command: []*string{ aws.String("String"), // Required // More values... }, Environment: []*ecs.KeyValuePair{ { // Required Name: aws.String("String"), Value: aws.String("String"), }, // More values... }, Name: aws.String("String"), }, // More values... }, TaskRoleArn: aws.String("String"), }, StartedBy: aws.String("String"), } resp, err := svc.StartTask(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_StopTask() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.StopTaskInput{ Task: aws.String("String"), // Required Cluster: aws.String("String"), Reason: aws.String("String"), } resp, err := svc.StopTask(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_SubmitContainerStateChange() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.SubmitContainerStateChangeInput{ Cluster: aws.String("String"), ContainerName: aws.String("String"), ExitCode: aws.Int64(1), NetworkBindings: []*ecs.NetworkBinding{ { // Required BindIP: aws.String("String"), ContainerPort: aws.Int64(1), HostPort: aws.Int64(1), Protocol: aws.String("TransportProtocol"), }, // More values... }, Reason: aws.String("String"), Status: aws.String("String"), Task: aws.String("String"), } resp, err := svc.SubmitContainerStateChange(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_SubmitTaskStateChange() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.SubmitTaskStateChangeInput{ Cluster: aws.String("String"), Reason: aws.String("String"), Status: aws.String("String"), Task: aws.String("String"), } resp, err := svc.SubmitTaskStateChange(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_UpdateContainerAgent() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.UpdateContainerAgentInput{ ContainerInstance: aws.String("String"), // Required Cluster: aws.String("String"), } resp, err := svc.UpdateContainerAgent(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleECS_UpdateService() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ecs.New(sess) params := &ecs.UpdateServiceInput{ Service: aws.String("String"), // Required Cluster: aws.String("String"), DeploymentConfiguration: &ecs.DeploymentConfiguration{ MaximumPercent: aws.Int64(1), MinimumHealthyPercent: aws.Int64(1), }, DesiredCount: aws.Int64(1), TaskDefinition: aws.String("String"), } resp, err := svc.UpdateService(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/ecs/service.go000066400000000000000000000067211300374646400177720ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package ecs import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Amazon EC2 Container Service (Amazon ECS) is a highly scalable, fast, container // management service that makes it easy to run, stop, and manage Docker containers // on a cluster of EC2 instances. Amazon ECS lets you launch and stop container-enabled // applications with simple API calls, allows you to get the state of your cluster // from a centralized service, and gives you access to many familiar Amazon // EC2 features like security groups, Amazon EBS volumes, and IAM roles. // // You can use Amazon ECS to schedule the placement of containers across your // cluster based on your resource needs, isolation policies, and availability // requirements. Amazon EC2 Container Service eliminates the need for you to // operate your own cluster management and configuration management systems // or worry about scaling your management infrastructure. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type ECS struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "ecs" // New creates a new instance of the ECS client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a ECS client from just a session. // svc := ecs.New(mySession) // // // Create a ECS client with additional configuration // svc := ecs.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *ECS { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *ECS { svc := &ECS{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-11-13", JSONVersion: "1.1", TargetPrefix: "AmazonEC2ContainerServiceV20141113", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a ECS operation and runs any // custom request initialization. func (c *ECS) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/ecs/waiters.go000066400000000000000000000067371300374646400200170ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package ecs import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilServicesInactive uses the Amazon ECS API operation // DescribeServices to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *ECS) WaitUntilServicesInactive(input *DescribeServicesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeServices", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "failure", Matcher: "pathAny", Argument: "failures[].reason", Expected: "MISSING", }, { State: "success", Matcher: "pathAny", Argument: "services[].status", Expected: "INACTIVE", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilServicesStable uses the Amazon ECS API operation // DescribeServices to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *ECS) WaitUntilServicesStable(input *DescribeServicesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeServices", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "failure", Matcher: "pathAny", Argument: "failures[].reason", Expected: "MISSING", }, { State: "failure", Matcher: "pathAny", Argument: "services[].status", Expected: "DRAINING", }, { State: "failure", Matcher: "pathAny", Argument: "services[].status", Expected: "INACTIVE", }, { State: "success", Matcher: "path", Argument: "length(services[?!(length(deployments) == `1` && runningCount == desiredCount)]) == `0`", Expected: true, }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilTasksRunning uses the Amazon ECS API operation // DescribeTasks to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *ECS) WaitUntilTasksRunning(input *DescribeTasksInput) error { waiterCfg := waiter.Config{ Operation: "DescribeTasks", Delay: 6, MaxAttempts: 100, Acceptors: []waiter.WaitAcceptor{ { State: "failure", Matcher: "pathAny", Argument: "tasks[].lastStatus", Expected: "STOPPED", }, { State: "failure", Matcher: "pathAny", Argument: "failures[].reason", Expected: "MISSING", }, { State: "success", Matcher: "pathAll", Argument: "tasks[].lastStatus", Expected: "RUNNING", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilTasksStopped uses the Amazon ECS API operation // DescribeTasks to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *ECS) WaitUntilTasksStopped(input *DescribeTasksInput) error { waiterCfg := waiter.Config{ Operation: "DescribeTasks", Delay: 6, MaxAttempts: 100, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "tasks[].lastStatus", Expected: "STOPPED", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/efs/000077500000000000000000000000001300374646400160005ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/efs/api.go000066400000000000000000002124051300374646400171040ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package efs provides a client for Amazon Elastic File System. package efs import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) const opCreateFileSystem = "CreateFileSystem" // CreateFileSystemRequest generates a "aws/request.Request" representing the // client's request for the CreateFileSystem operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateFileSystem for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateFileSystem method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateFileSystemRequest method. // req, resp := client.CreateFileSystemRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EFS) CreateFileSystemRequest(input *CreateFileSystemInput) (req *request.Request, output *FileSystemDescription) { op := &request.Operation{ Name: opCreateFileSystem, HTTPMethod: "POST", HTTPPath: "/2015-02-01/file-systems", } if input == nil { input = &CreateFileSystemInput{} } req = c.newRequest(op, input, output) output = &FileSystemDescription{} req.Data = output return } // CreateFileSystem API operation for Amazon Elastic File System. // // Creates a new, empty file system. The operation requires a creation token // in the request that Amazon EFS uses to ensure idempotent creation (calling // the operation with same creation token has no effect). If a file system does // not currently exist that is owned by the caller's AWS account with the specified // creation token, this operation does the following: // // * Creates a new, empty file system. The file system will have an Amazon // EFS assigned ID, and an initial lifecycle state creating. // // * Returns with the description of the created file system. // // Otherwise, this operation returns a FileSystemAlreadyExists error with the // ID of the existing file system. // // For basic use cases, you can use a randomly generated UUID for the creation // token. // // The idempotent operation allows you to retry a CreateFileSystem call without // risk of creating an extra file system. This can happen when an initial call // fails in a way that leaves it uncertain whether or not a file system was // actually created. An example might be that a transport level timeout occurred // or your connection was reset. As long as you use the same creation token, // if the initial call had succeeded in creating a file system, the client can // learn of its existence from the FileSystemAlreadyExists error. // // The CreateFileSystem call returns while the file system's lifecycle state // is still creating. You can check the file system creation status by calling // the DescribeFileSystems operation, which among other things returns the file // system state. // // This operation also takes an optional PerformanceMode parameter that you // choose for your file system. We recommend generalPurpose performance mode // for most file systems. File systems using the maxIO performance mode can // scale to higher levels of aggregate throughput and operations per second // with a tradeoff of slightly higher latencies for most file operations. The // performance mode can't be changed after the file system has been created. // For more information, see Amazon EFS: Performance Modes (http://docs.aws.amazon.com/efs/latest/ug/performance.html#performancemodes.html). // // After the file system is fully created, Amazon EFS sets its lifecycle state // to available, at which point you can create one or more mount targets for // the file system in your VPC. For more information, see CreateMountTarget. // You mount your Amazon EFS file system on an EC2 instances in your VPC via // the mount target. For more information, see Amazon EFS: How it Works (http://docs.aws.amazon.com/efs/latest/ug/how-it-works.html). // // This operation requires permissions for the elasticfilesystem:CreateFileSystem // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic File System's // API operation CreateFileSystem for usage and error information. // // Returned Error Codes: // * BadRequest // Returned if the request is malformed or contains an error such as an invalid // parameter value or a missing required parameter. // // * InternalServerError // Returned if an error occurred on the server side. // // * FileSystemAlreadyExists // Returned if the file system you are trying to create already exists, with // the creation token you provided. // // * FileSystemLimitExceeded // Returned if the AWS account has already created maximum number of file systems // allowed per account. // func (c *EFS) CreateFileSystem(input *CreateFileSystemInput) (*FileSystemDescription, error) { req, out := c.CreateFileSystemRequest(input) err := req.Send() return out, err } const opCreateMountTarget = "CreateMountTarget" // CreateMountTargetRequest generates a "aws/request.Request" representing the // client's request for the CreateMountTarget operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateMountTarget for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateMountTarget method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateMountTargetRequest method. // req, resp := client.CreateMountTargetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EFS) CreateMountTargetRequest(input *CreateMountTargetInput) (req *request.Request, output *MountTargetDescription) { op := &request.Operation{ Name: opCreateMountTarget, HTTPMethod: "POST", HTTPPath: "/2015-02-01/mount-targets", } if input == nil { input = &CreateMountTargetInput{} } req = c.newRequest(op, input, output) output = &MountTargetDescription{} req.Data = output return } // CreateMountTarget API operation for Amazon Elastic File System. // // Creates a mount target for a file system. You can then mount the file system // on EC2 instances via the mount target. // // You can create one mount target in each Availability Zone in your VPC. All // EC2 instances in a VPC within a given Availability Zone share a single mount // target for a given file system. If you have multiple subnets in an Availability // Zone, you create a mount target in one of the subnets. EC2 instances do not // need to be in the same subnet as the mount target in order to access their // file system. For more information, see Amazon EFS: How it Works (http://docs.aws.amazon.com/efs/latest/ug/how-it-works.html). // // In the request, you also specify a file system ID for which you are creating // the mount target and the file system's lifecycle state must be available. // For more information, see DescribeFileSystems. // // In the request, you also provide a subnet ID, which determines the following: // // * VPC in which Amazon EFS creates the mount target // // * Availability Zone in which Amazon EFS creates the mount target // // * IP address range from which Amazon EFS selects the IP address of the // mount target (if you don't specify an IP address in the request) // // After creating the mount target, Amazon EFS returns a response that includes, // a MountTargetId and an IpAddress. You use this IP address when mounting the // file system in an EC2 instance. You can also use the mount target's DNS name // when mounting the file system. The EC2 instance on which you mount the file // system via the mount target can resolve the mount target's DNS name to its // IP address. For more information, see How it Works: Implementation Overview // (http://docs.aws.amazon.com/efs/latest/ug/how-it-works.html#how-it-works-implementation). // // Note that you can create mount targets for a file system in only one VPC, // and there can be only one mount target per Availability Zone. That is, if // the file system already has one or more mount targets created for it, the // subnet specified in the request to add another mount target must meet the // following requirements: // // * Must belong to the same VPC as the subnets of the existing mount targets // // * Must not be in the same Availability Zone as any of the subnets of the // existing mount targets // // If the request satisfies the requirements, Amazon EFS does the following: // // * Creates a new mount target in the specified subnet. // // * Also creates a new network interface in the subnet as follows: // // If the request provides an IpAddress, Amazon EFS assigns that IP address // to the network interface. Otherwise, Amazon EFS assigns a free address // in the subnet (in the same way that the Amazon EC2 CreateNetworkInterface // call does when a request does not specify a primary private IP address). // // If the request provides SecurityGroups, this network interface is associated // with those security groups. Otherwise, it belongs to the default security // group for the subnet's VPC. // // Assigns the description Mount target fsmt-id for file system fs-id where // fsmt-id is the mount target ID, and fs-id is the FileSystemId. // // Sets the requesterManaged property of the network interface to true, and // the requesterId value to EFS. // // Each Amazon EFS mount target has one corresponding requestor-managed EC2 // network interface. After the network interface is created, Amazon EFS // sets the NetworkInterfaceId field in the mount target's description to // the network interface ID, and the IpAddress field to its address. If network // interface creation fails, the entire CreateMountTarget operation fails. // // The CreateMountTarget call returns only after creating the network interface, // but while the mount target state is still creating. You can check the mount // target creation status by calling the DescribeFileSystems operation, which // among other things returns the mount target state. // // We recommend you create a mount target in each of the Availability Zones. // There are cost considerations for using a file system in an Availability // Zone through a mount target created in another Availability Zone. For more // information, see Amazon EFS (http://aws.amazon.com/efs/). In addition, by // always using a mount target local to the instance's Availability Zone, you // eliminate a partial failure scenario. If the Availability Zone in which your // mount target is created goes down, then you won't be able to access your // file system through that mount target. // // This operation requires permissions for the following action on the file // system: // // * elasticfilesystem:CreateMountTarget // // This operation also requires permissions for the following Amazon EC2 actions: // // * ec2:DescribeSubnets // // * ec2:DescribeNetworkInterfaces // // * ec2:CreateNetworkInterface // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic File System's // API operation CreateMountTarget for usage and error information. // // Returned Error Codes: // * BadRequest // Returned if the request is malformed or contains an error such as an invalid // parameter value or a missing required parameter. // // * InternalServerError // Returned if an error occurred on the server side. // // * FileSystemNotFound // Returned if the specified FileSystemId does not exist in the requester's // AWS account. // // * IncorrectFileSystemLifeCycleState // Returned if the file system's life cycle state is not "created". // // * MountTargetConflict // Returned if the mount target would violate one of the specified restrictions // based on the file system's existing mount targets. // // * SubnetNotFound // Returned if there is no subnet with ID SubnetId provided in the request. // // * NoFreeAddressesInSubnet // Returned if IpAddress was not specified in the request and there are no free // IP addresses in the subnet. // // * IpAddressInUse // Returned if the request specified an IpAddress that is already in use in // the subnet. // // * NetworkInterfaceLimitExceeded // The calling account has reached the ENI limit for the specific AWS region. // Client should try to delete some ENIs or get its account limit raised. For // more information, see Amazon VPC Limits (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Appendix_Limits.html) // in the Amazon Virtual Private Cloud User Guide (see the Network interfaces // per VPC entry in the table). // // * SecurityGroupLimitExceeded // Returned if the size of SecurityGroups specified in the request is greater // than five. // // * SecurityGroupNotFound // Returned if one of the specified security groups does not exist in the subnet's // VPC. // // * UnsupportedAvailabilityZone // func (c *EFS) CreateMountTarget(input *CreateMountTargetInput) (*MountTargetDescription, error) { req, out := c.CreateMountTargetRequest(input) err := req.Send() return out, err } const opCreateTags = "CreateTags" // CreateTagsRequest generates a "aws/request.Request" representing the // client's request for the CreateTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateTagsRequest method. // req, resp := client.CreateTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EFS) CreateTagsRequest(input *CreateTagsInput) (req *request.Request, output *CreateTagsOutput) { op := &request.Operation{ Name: opCreateTags, HTTPMethod: "POST", HTTPPath: "/2015-02-01/create-tags/{FileSystemId}", } if input == nil { input = &CreateTagsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CreateTagsOutput{} req.Data = output return } // CreateTags API operation for Amazon Elastic File System. // // Creates or overwrites tags associated with a file system. Each tag is a key-value // pair. If a tag key specified in the request already exists on the file system, // this operation overwrites its value with the value provided in the request. // If you add the Name tag to your file system, Amazon EFS returns it in the // response to the DescribeFileSystems operation. // // This operation requires permission for the elasticfilesystem:CreateTags action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic File System's // API operation CreateTags for usage and error information. // // Returned Error Codes: // * BadRequest // Returned if the request is malformed or contains an error such as an invalid // parameter value or a missing required parameter. // // * InternalServerError // Returned if an error occurred on the server side. // // * FileSystemNotFound // Returned if the specified FileSystemId does not exist in the requester's // AWS account. // func (c *EFS) CreateTags(input *CreateTagsInput) (*CreateTagsOutput, error) { req, out := c.CreateTagsRequest(input) err := req.Send() return out, err } const opDeleteFileSystem = "DeleteFileSystem" // DeleteFileSystemRequest generates a "aws/request.Request" representing the // client's request for the DeleteFileSystem operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteFileSystem for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteFileSystem method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteFileSystemRequest method. // req, resp := client.DeleteFileSystemRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EFS) DeleteFileSystemRequest(input *DeleteFileSystemInput) (req *request.Request, output *DeleteFileSystemOutput) { op := &request.Operation{ Name: opDeleteFileSystem, HTTPMethod: "DELETE", HTTPPath: "/2015-02-01/file-systems/{FileSystemId}", } if input == nil { input = &DeleteFileSystemInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteFileSystemOutput{} req.Data = output return } // DeleteFileSystem API operation for Amazon Elastic File System. // // Deletes a file system, permanently severing access to its contents. Upon // return, the file system no longer exists and you can't access any contents // of the deleted file system. // // You can't delete a file system that is in use. That is, if the file system // has any mount targets, you must first delete them. For more information, // see DescribeMountTargets and DeleteMountTarget. // // The DeleteFileSystem call returns while the file system state is still deleting. // You can check the file system deletion status by calling the DescribeFileSystems // operation, which returns a list of file systems in your account. If you pass // file system ID or creation token for the deleted file system, the DescribeFileSystems // returns a 404 FileSystemNotFound error. // // This operation requires permissions for the elasticfilesystem:DeleteFileSystem // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic File System's // API operation DeleteFileSystem for usage and error information. // // Returned Error Codes: // * BadRequest // Returned if the request is malformed or contains an error such as an invalid // parameter value or a missing required parameter. // // * InternalServerError // Returned if an error occurred on the server side. // // * FileSystemNotFound // Returned if the specified FileSystemId does not exist in the requester's // AWS account. // // * FileSystemInUse // Returned if a file system has mount targets. // func (c *EFS) DeleteFileSystem(input *DeleteFileSystemInput) (*DeleteFileSystemOutput, error) { req, out := c.DeleteFileSystemRequest(input) err := req.Send() return out, err } const opDeleteMountTarget = "DeleteMountTarget" // DeleteMountTargetRequest generates a "aws/request.Request" representing the // client's request for the DeleteMountTarget operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteMountTarget for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteMountTarget method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteMountTargetRequest method. // req, resp := client.DeleteMountTargetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EFS) DeleteMountTargetRequest(input *DeleteMountTargetInput) (req *request.Request, output *DeleteMountTargetOutput) { op := &request.Operation{ Name: opDeleteMountTarget, HTTPMethod: "DELETE", HTTPPath: "/2015-02-01/mount-targets/{MountTargetId}", } if input == nil { input = &DeleteMountTargetInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteMountTargetOutput{} req.Data = output return } // DeleteMountTarget API operation for Amazon Elastic File System. // // Deletes the specified mount target. // // This operation forcibly breaks any mounts of the file system via the mount // target that is being deleted, which might disrupt instances or applications // using those mounts. To avoid applications getting cut off abruptly, you might // consider unmounting any mounts of the mount target, if feasible. The operation // also deletes the associated network interface. Uncommitted writes may be // lost, but breaking a mount target using this operation does not corrupt the // file system itself. The file system you created remains. You can mount an // EC2 instance in your VPC via another mount target. // // This operation requires permissions for the following action on the file // system: // // * elasticfilesystem:DeleteMountTarget // // The DeleteMountTarget call returns while the mount target state is still // deleting. You can check the mount target deletion by calling the DescribeMountTargets // operation, which returns a list of mount target descriptions for the given // file system. // // The operation also requires permissions for the following Amazon EC2 action // on the mount target's network interface: // // * ec2:DeleteNetworkInterface // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic File System's // API operation DeleteMountTarget for usage and error information. // // Returned Error Codes: // * BadRequest // Returned if the request is malformed or contains an error such as an invalid // parameter value or a missing required parameter. // // * InternalServerError // Returned if an error occurred on the server side. // // * DependencyTimeout // The service timed out trying to fulfill the request, and the client should // try the call again. // // * MountTargetNotFound // Returned if there is no mount target with the specified ID found in the caller's // account. // func (c *EFS) DeleteMountTarget(input *DeleteMountTargetInput) (*DeleteMountTargetOutput, error) { req, out := c.DeleteMountTargetRequest(input) err := req.Send() return out, err } const opDeleteTags = "DeleteTags" // DeleteTagsRequest generates a "aws/request.Request" representing the // client's request for the DeleteTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteTagsRequest method. // req, resp := client.DeleteTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EFS) DeleteTagsRequest(input *DeleteTagsInput) (req *request.Request, output *DeleteTagsOutput) { op := &request.Operation{ Name: opDeleteTags, HTTPMethod: "POST", HTTPPath: "/2015-02-01/delete-tags/{FileSystemId}", } if input == nil { input = &DeleteTagsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteTagsOutput{} req.Data = output return } // DeleteTags API operation for Amazon Elastic File System. // // Deletes the specified tags from a file system. If the DeleteTags request // includes a tag key that does not exist, Amazon EFS ignores it and doesn't // cause an error. For more information about tags and related restrictions, // see Tag Restrictions (http://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) // in the AWS Billing and Cost Management User Guide. // // This operation requires permissions for the elasticfilesystem:DeleteTags // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic File System's // API operation DeleteTags for usage and error information. // // Returned Error Codes: // * BadRequest // Returned if the request is malformed or contains an error such as an invalid // parameter value or a missing required parameter. // // * InternalServerError // Returned if an error occurred on the server side. // // * FileSystemNotFound // Returned if the specified FileSystemId does not exist in the requester's // AWS account. // func (c *EFS) DeleteTags(input *DeleteTagsInput) (*DeleteTagsOutput, error) { req, out := c.DeleteTagsRequest(input) err := req.Send() return out, err } const opDescribeFileSystems = "DescribeFileSystems" // DescribeFileSystemsRequest generates a "aws/request.Request" representing the // client's request for the DescribeFileSystems operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeFileSystems for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeFileSystems method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeFileSystemsRequest method. // req, resp := client.DescribeFileSystemsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EFS) DescribeFileSystemsRequest(input *DescribeFileSystemsInput) (req *request.Request, output *DescribeFileSystemsOutput) { op := &request.Operation{ Name: opDescribeFileSystems, HTTPMethod: "GET", HTTPPath: "/2015-02-01/file-systems", } if input == nil { input = &DescribeFileSystemsInput{} } req = c.newRequest(op, input, output) output = &DescribeFileSystemsOutput{} req.Data = output return } // DescribeFileSystems API operation for Amazon Elastic File System. // // Returns the description of a specific Amazon EFS file system if either the // file system CreationToken or the FileSystemId is provided. Otherwise, it // returns descriptions of all file systems owned by the caller's AWS account // in the AWS Region of the endpoint that you're calling. // // When retrieving all file system descriptions, you can optionally specify // the MaxItems parameter to limit the number of descriptions in a response. // If more file system descriptions remain, Amazon EFS returns a NextMarker, // an opaque token, in the response. In this case, you should send a subsequent // request with the Marker request parameter set to the value of NextMarker. // // To retrieve a list of your file system descriptions, this operation is used // in an iterative process, where DescribeFileSystems is called first without // the Marker and then the operation continues to call it with the Marker parameter // set to the value of the NextMarker from the previous response until the response // has no NextMarker. // // The implementation may return fewer than MaxItems file system descriptions // while still including a NextMarker value. // // The order of file systems returned in the response of one DescribeFileSystems // call and the order of file systems returned across the responses of a multi-call // iteration is unspecified. // // This operation requires permissions for the elasticfilesystem:DescribeFileSystems // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic File System's // API operation DescribeFileSystems for usage and error information. // // Returned Error Codes: // * BadRequest // Returned if the request is malformed or contains an error such as an invalid // parameter value or a missing required parameter. // // * InternalServerError // Returned if an error occurred on the server side. // // * FileSystemNotFound // Returned if the specified FileSystemId does not exist in the requester's // AWS account. // func (c *EFS) DescribeFileSystems(input *DescribeFileSystemsInput) (*DescribeFileSystemsOutput, error) { req, out := c.DescribeFileSystemsRequest(input) err := req.Send() return out, err } const opDescribeMountTargetSecurityGroups = "DescribeMountTargetSecurityGroups" // DescribeMountTargetSecurityGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeMountTargetSecurityGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeMountTargetSecurityGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeMountTargetSecurityGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeMountTargetSecurityGroupsRequest method. // req, resp := client.DescribeMountTargetSecurityGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EFS) DescribeMountTargetSecurityGroupsRequest(input *DescribeMountTargetSecurityGroupsInput) (req *request.Request, output *DescribeMountTargetSecurityGroupsOutput) { op := &request.Operation{ Name: opDescribeMountTargetSecurityGroups, HTTPMethod: "GET", HTTPPath: "/2015-02-01/mount-targets/{MountTargetId}/security-groups", } if input == nil { input = &DescribeMountTargetSecurityGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeMountTargetSecurityGroupsOutput{} req.Data = output return } // DescribeMountTargetSecurityGroups API operation for Amazon Elastic File System. // // Returns the security groups currently in effect for a mount target. This // operation requires that the network interface of the mount target has been // created and the lifecycle state of the mount target is not deleted. // // This operation requires permissions for the following actions: // // * elasticfilesystem:DescribeMountTargetSecurityGroups action on the mount // target's file system. // // * ec2:DescribeNetworkInterfaceAttribute action on the mount target's network // interface. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic File System's // API operation DescribeMountTargetSecurityGroups for usage and error information. // // Returned Error Codes: // * BadRequest // Returned if the request is malformed or contains an error such as an invalid // parameter value or a missing required parameter. // // * InternalServerError // Returned if an error occurred on the server side. // // * MountTargetNotFound // Returned if there is no mount target with the specified ID found in the caller's // account. // // * IncorrectMountTargetState // Returned if the mount target is not in the correct state for the operation. // func (c *EFS) DescribeMountTargetSecurityGroups(input *DescribeMountTargetSecurityGroupsInput) (*DescribeMountTargetSecurityGroupsOutput, error) { req, out := c.DescribeMountTargetSecurityGroupsRequest(input) err := req.Send() return out, err } const opDescribeMountTargets = "DescribeMountTargets" // DescribeMountTargetsRequest generates a "aws/request.Request" representing the // client's request for the DescribeMountTargets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeMountTargets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeMountTargets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeMountTargetsRequest method. // req, resp := client.DescribeMountTargetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EFS) DescribeMountTargetsRequest(input *DescribeMountTargetsInput) (req *request.Request, output *DescribeMountTargetsOutput) { op := &request.Operation{ Name: opDescribeMountTargets, HTTPMethod: "GET", HTTPPath: "/2015-02-01/mount-targets", } if input == nil { input = &DescribeMountTargetsInput{} } req = c.newRequest(op, input, output) output = &DescribeMountTargetsOutput{} req.Data = output return } // DescribeMountTargets API operation for Amazon Elastic File System. // // Returns the descriptions of all the current mount targets, or a specific // mount target, for a file system. When requesting all of the current mount // targets, the order of mount targets returned in the response is unspecified. // // This operation requires permissions for the elasticfilesystem:DescribeMountTargets // action, on either the file system ID that you specify in FileSystemId, or // on the file system of the mount target that you specify in MountTargetId. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic File System's // API operation DescribeMountTargets for usage and error information. // // Returned Error Codes: // * BadRequest // Returned if the request is malformed or contains an error such as an invalid // parameter value or a missing required parameter. // // * InternalServerError // Returned if an error occurred on the server side. // // * FileSystemNotFound // Returned if the specified FileSystemId does not exist in the requester's // AWS account. // // * MountTargetNotFound // Returned if there is no mount target with the specified ID found in the caller's // account. // func (c *EFS) DescribeMountTargets(input *DescribeMountTargetsInput) (*DescribeMountTargetsOutput, error) { req, out := c.DescribeMountTargetsRequest(input) err := req.Send() return out, err } const opDescribeTags = "DescribeTags" // DescribeTagsRequest generates a "aws/request.Request" representing the // client's request for the DescribeTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTagsRequest method. // req, resp := client.DescribeTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EFS) DescribeTagsRequest(input *DescribeTagsInput) (req *request.Request, output *DescribeTagsOutput) { op := &request.Operation{ Name: opDescribeTags, HTTPMethod: "GET", HTTPPath: "/2015-02-01/tags/{FileSystemId}/", } if input == nil { input = &DescribeTagsInput{} } req = c.newRequest(op, input, output) output = &DescribeTagsOutput{} req.Data = output return } // DescribeTags API operation for Amazon Elastic File System. // // Returns the tags associated with a file system. The order of tags returned // in the response of one DescribeTags call and the order of tags returned across // the responses of a multi-call iteration (when using pagination) is unspecified. // // This operation requires permissions for the elasticfilesystem:DescribeTags // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic File System's // API operation DescribeTags for usage and error information. // // Returned Error Codes: // * BadRequest // Returned if the request is malformed or contains an error such as an invalid // parameter value or a missing required parameter. // // * InternalServerError // Returned if an error occurred on the server side. // // * FileSystemNotFound // Returned if the specified FileSystemId does not exist in the requester's // AWS account. // func (c *EFS) DescribeTags(input *DescribeTagsInput) (*DescribeTagsOutput, error) { req, out := c.DescribeTagsRequest(input) err := req.Send() return out, err } const opModifyMountTargetSecurityGroups = "ModifyMountTargetSecurityGroups" // ModifyMountTargetSecurityGroupsRequest generates a "aws/request.Request" representing the // client's request for the ModifyMountTargetSecurityGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyMountTargetSecurityGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyMountTargetSecurityGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyMountTargetSecurityGroupsRequest method. // req, resp := client.ModifyMountTargetSecurityGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EFS) ModifyMountTargetSecurityGroupsRequest(input *ModifyMountTargetSecurityGroupsInput) (req *request.Request, output *ModifyMountTargetSecurityGroupsOutput) { op := &request.Operation{ Name: opModifyMountTargetSecurityGroups, HTTPMethod: "PUT", HTTPPath: "/2015-02-01/mount-targets/{MountTargetId}/security-groups", } if input == nil { input = &ModifyMountTargetSecurityGroupsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ModifyMountTargetSecurityGroupsOutput{} req.Data = output return } // ModifyMountTargetSecurityGroups API operation for Amazon Elastic File System. // // Modifies the set of security groups in effect for a mount target. // // When you create a mount target, Amazon EFS also creates a new network interface. // For more information, see CreateMountTarget. This operation replaces the // security groups in effect for the network interface associated with a mount // target, with the SecurityGroups provided in the request. This operation requires // that the network interface of the mount target has been created and the lifecycle // state of the mount target is not deleted. // // The operation requires permissions for the following actions: // // * elasticfilesystem:ModifyMountTargetSecurityGroups action on the mount // target's file system. // // * ec2:ModifyNetworkInterfaceAttribute action on the mount target's network // interface. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic File System's // API operation ModifyMountTargetSecurityGroups for usage and error information. // // Returned Error Codes: // * BadRequest // Returned if the request is malformed or contains an error such as an invalid // parameter value or a missing required parameter. // // * InternalServerError // Returned if an error occurred on the server side. // // * MountTargetNotFound // Returned if there is no mount target with the specified ID found in the caller's // account. // // * IncorrectMountTargetState // Returned if the mount target is not in the correct state for the operation. // // * SecurityGroupLimitExceeded // Returned if the size of SecurityGroups specified in the request is greater // than five. // // * SecurityGroupNotFound // Returned if one of the specified security groups does not exist in the subnet's // VPC. // func (c *EFS) ModifyMountTargetSecurityGroups(input *ModifyMountTargetSecurityGroupsInput) (*ModifyMountTargetSecurityGroupsOutput, error) { req, out := c.ModifyMountTargetSecurityGroupsRequest(input) err := req.Send() return out, err } type CreateFileSystemInput struct { _ struct{} `type:"structure"` // String of up to 64 ASCII characters. Amazon EFS uses this to ensure idempotent // creation. // // CreationToken is a required field CreationToken *string `min:"1" type:"string" required:"true"` // The PerformanceMode of the file system. We recommend generalPurpose performance // mode for most file systems. File systems using the maxIO performance mode // can scale to higher levels of aggregate throughput and operations per second // with a tradeoff of slightly higher latencies for most file operations. This // can't be changed after the file system has been created. PerformanceMode *string `type:"string" enum:"PerformanceMode"` } // String returns the string representation func (s CreateFileSystemInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateFileSystemInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateFileSystemInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateFileSystemInput"} if s.CreationToken == nil { invalidParams.Add(request.NewErrParamRequired("CreationToken")) } if s.CreationToken != nil && len(*s.CreationToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("CreationToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateMountTargetInput struct { _ struct{} `type:"structure"` // ID of the file system for which to create the mount target. // // FileSystemId is a required field FileSystemId *string `type:"string" required:"true"` // Valid IPv4 address within the address range of the specified subnet. IpAddress *string `type:"string"` // Up to five VPC security group IDs, of the form sg-xxxxxxxx. These must be // for the same VPC as subnet specified. SecurityGroups []*string `type:"list"` // ID of the subnet to add the mount target in. // // SubnetId is a required field SubnetId *string `type:"string" required:"true"` } // String returns the string representation func (s CreateMountTargetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateMountTargetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateMountTargetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateMountTargetInput"} if s.FileSystemId == nil { invalidParams.Add(request.NewErrParamRequired("FileSystemId")) } if s.SubnetId == nil { invalidParams.Add(request.NewErrParamRequired("SubnetId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateTagsInput struct { _ struct{} `type:"structure"` // ID of the file system whose tags you want to modify (String). This operation // modifies the tags only, not the file system. // // FileSystemId is a required field FileSystemId *string `location:"uri" locationName:"FileSystemId" type:"string" required:"true"` // Array of Tag objects to add. Each Tag object is a key-value pair. // // Tags is a required field Tags []*Tag `type:"list" required:"true"` } // String returns the string representation func (s CreateTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateTagsInput"} if s.FileSystemId == nil { invalidParams.Add(request.NewErrParamRequired("FileSystemId")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTagsOutput) GoString() string { return s.String() } type DeleteFileSystemInput struct { _ struct{} `type:"structure"` // ID of the file system you want to delete. // // FileSystemId is a required field FileSystemId *string `location:"uri" locationName:"FileSystemId" type:"string" required:"true"` } // String returns the string representation func (s DeleteFileSystemInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteFileSystemInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteFileSystemInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteFileSystemInput"} if s.FileSystemId == nil { invalidParams.Add(request.NewErrParamRequired("FileSystemId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteFileSystemOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteFileSystemOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteFileSystemOutput) GoString() string { return s.String() } type DeleteMountTargetInput struct { _ struct{} `type:"structure"` // ID of the mount target to delete (String). // // MountTargetId is a required field MountTargetId *string `location:"uri" locationName:"MountTargetId" type:"string" required:"true"` } // String returns the string representation func (s DeleteMountTargetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteMountTargetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteMountTargetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteMountTargetInput"} if s.MountTargetId == nil { invalidParams.Add(request.NewErrParamRequired("MountTargetId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteMountTargetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteMountTargetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteMountTargetOutput) GoString() string { return s.String() } type DeleteTagsInput struct { _ struct{} `type:"structure"` // ID of the file system whose tags you want to delete (String). // // FileSystemId is a required field FileSystemId *string `location:"uri" locationName:"FileSystemId" type:"string" required:"true"` // List of tag keys to delete. // // TagKeys is a required field TagKeys []*string `type:"list" required:"true"` } // String returns the string representation func (s DeleteTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTagsInput"} if s.FileSystemId == nil { invalidParams.Add(request.NewErrParamRequired("FileSystemId")) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTagsOutput) GoString() string { return s.String() } type DescribeFileSystemsInput struct { _ struct{} `type:"structure"` // (Optional) Restricts the list to the file system with this creation token // (String). You specify a creation token when you create an Amazon EFS file // system. CreationToken *string `location:"querystring" locationName:"CreationToken" min:"1" type:"string"` // (Optional) ID of the file system whose description you want to retrieve (String). FileSystemId *string `location:"querystring" locationName:"FileSystemId" type:"string"` // (Optional) Opaque pagination token returned from a previous DescribeFileSystems // operation (String). If present, specifies to continue the list from where // the returning call had left off. Marker *string `location:"querystring" locationName:"Marker" type:"string"` // (Optional) Specifies the maximum number of file systems to return in the // response (integer). This parameter value must be greater than 0. The number // of items that Amazon EFS returns is the minimum of the MaxItems parameter // specified in the request and the service's internal maximum number of items // per page. MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"` } // String returns the string representation func (s DescribeFileSystemsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeFileSystemsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeFileSystemsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeFileSystemsInput"} if s.CreationToken != nil && len(*s.CreationToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("CreationToken", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeFileSystemsOutput struct { _ struct{} `type:"structure"` // Array of file system descriptions. FileSystems []*FileSystemDescription `type:"list"` // Present if provided by caller in the request (String). Marker *string `type:"string"` // Present if there are more file systems than returned in the response (String). // You can use the NextMarker in the subsequent request to fetch the descriptions. NextMarker *string `type:"string"` } // String returns the string representation func (s DescribeFileSystemsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeFileSystemsOutput) GoString() string { return s.String() } type DescribeMountTargetSecurityGroupsInput struct { _ struct{} `type:"structure"` // ID of the mount target whose security groups you want to retrieve. // // MountTargetId is a required field MountTargetId *string `location:"uri" locationName:"MountTargetId" type:"string" required:"true"` } // String returns the string representation func (s DescribeMountTargetSecurityGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeMountTargetSecurityGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeMountTargetSecurityGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeMountTargetSecurityGroupsInput"} if s.MountTargetId == nil { invalidParams.Add(request.NewErrParamRequired("MountTargetId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeMountTargetSecurityGroupsOutput struct { _ struct{} `type:"structure"` // Array of security groups. // // SecurityGroups is a required field SecurityGroups []*string `type:"list" required:"true"` } // String returns the string representation func (s DescribeMountTargetSecurityGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeMountTargetSecurityGroupsOutput) GoString() string { return s.String() } type DescribeMountTargetsInput struct { _ struct{} `type:"structure"` // (Optional) ID of the file system whose mount targets you want to list (String). // It must be included in your request if MountTargetId is not included. FileSystemId *string `location:"querystring" locationName:"FileSystemId" type:"string"` // (Optional) Opaque pagination token returned from a previous DescribeMountTargets // operation (String). If present, it specifies to continue the list from where // the previous returning call left off. Marker *string `location:"querystring" locationName:"Marker" type:"string"` // (Optional) Maximum number of mount targets to return in the response. It // must be an integer with a value greater than zero. MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"` // (Optional) ID of the mount target that you want to have described (String). // It must be included in your request if FileSystemId is not included. MountTargetId *string `location:"querystring" locationName:"MountTargetId" type:"string"` } // String returns the string representation func (s DescribeMountTargetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeMountTargetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeMountTargetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeMountTargetsInput"} if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeMountTargetsOutput struct { _ struct{} `type:"structure"` // If the request included the Marker, the response returns that value in this // field. Marker *string `type:"string"` // Returns the file system's mount targets as an array of MountTargetDescription // objects. MountTargets []*MountTargetDescription `type:"list"` // If a value is present, there are more mount targets to return. In a subsequent // request, you can provide Marker in your request with this value to retrieve // the next set of mount targets. NextMarker *string `type:"string"` } // String returns the string representation func (s DescribeMountTargetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeMountTargetsOutput) GoString() string { return s.String() } type DescribeTagsInput struct { _ struct{} `type:"structure"` // ID of the file system whose tag set you want to retrieve. // // FileSystemId is a required field FileSystemId *string `location:"uri" locationName:"FileSystemId" type:"string" required:"true"` // (Optional) Opaque pagination token returned from a previous DescribeTags // operation (String). If present, it specifies to continue the list from where // the previous call left off. Marker *string `location:"querystring" locationName:"Marker" type:"string"` // (Optional) Maximum number of file system tags to return in the response. // It must be an integer with a value greater than zero. MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"` } // String returns the string representation func (s DescribeTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTagsInput"} if s.FileSystemId == nil { invalidParams.Add(request.NewErrParamRequired("FileSystemId")) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeTagsOutput struct { _ struct{} `type:"structure"` // If the request included a Marker, the response returns that value in this // field. Marker *string `type:"string"` // If a value is present, there are more tags to return. In a subsequent request, // you can provide the value of NextMarker as the value of the Marker parameter // in your next request to retrieve the next set of tags. NextMarker *string `type:"string"` // Returns tags associated with the file system as an array of Tag objects. // // Tags is a required field Tags []*Tag `type:"list" required:"true"` } // String returns the string representation func (s DescribeTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsOutput) GoString() string { return s.String() } // Description of the file system. type FileSystemDescription struct { _ struct{} `type:"structure"` // Time that the file system was created, in seconds (since 1970-01-01T00:00:00Z). // // CreationTime is a required field CreationTime *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` // Opaque string specified in the request. // // CreationToken is a required field CreationToken *string `min:"1" type:"string" required:"true"` // ID of the file system, assigned by Amazon EFS. // // FileSystemId is a required field FileSystemId *string `type:"string" required:"true"` // Lifecycle phase of the file system. // // LifeCycleState is a required field LifeCycleState *string `type:"string" required:"true" enum:"LifeCycleState"` // You can add tags to a file system, including a Name tag. For more information, // see CreateTags. If the file system has a Name tag, Amazon EFS returns the // value in this field. Name *string `type:"string"` // Current number of mount targets that the file system has. For more information, // see CreateMountTarget. // // NumberOfMountTargets is a required field NumberOfMountTargets *int64 `type:"integer" required:"true"` // AWS account that created the file system. If the file system was created // by an IAM user, the parent account to which the user belongs is the owner. // // OwnerId is a required field OwnerId *string `type:"string" required:"true"` // The PerformanceMode of the file system. // // PerformanceMode is a required field PerformanceMode *string `type:"string" required:"true" enum:"PerformanceMode"` // Latest known metered size (in bytes) of data stored in the file system, in // bytes, in its Value field, and the time at which that size was determined // in its Timestamp field. The Timestamp value is the integer number of seconds // since 1970-01-01T00:00:00Z. Note that the value does not represent the size // of a consistent snapshot of the file system, but it is eventually consistent // when there are no writes to the file system. That is, the value will represent // actual size only if the file system is not modified for a period longer than // a couple of hours. Otherwise, the value is not the exact size the file system // was at any instant in time. // // SizeInBytes is a required field SizeInBytes *FileSystemSize `type:"structure" required:"true"` } // String returns the string representation func (s FileSystemDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FileSystemDescription) GoString() string { return s.String() } // Latest known metered size (in bytes) of data stored in the file system, in // its Value field, and the time at which that size was determined in its Timestamp // field. Note that the value does not represent the size of a consistent snapshot // of the file system, but it is eventually consistent when there are no writes // to the file system. That is, the value will represent the actual size only // if the file system is not modified for a period longer than a couple of hours. // Otherwise, the value is not necessarily the exact size the file system was // at any instant in time. type FileSystemSize struct { _ struct{} `type:"structure"` // Time at which the size of data, returned in the Value field, was determined. // The value is the integer number of seconds since 1970-01-01T00:00:00Z. Timestamp *time.Time `type:"timestamp" timestampFormat:"unix"` // Latest known metered size (in bytes) of data stored in the file system. // // Value is a required field Value *int64 `type:"long" required:"true"` } // String returns the string representation func (s FileSystemSize) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FileSystemSize) GoString() string { return s.String() } type ModifyMountTargetSecurityGroupsInput struct { _ struct{} `type:"structure"` // ID of the mount target whose security groups you want to modify. // // MountTargetId is a required field MountTargetId *string `location:"uri" locationName:"MountTargetId" type:"string" required:"true"` // Array of up to five VPC security group IDs. SecurityGroups []*string `type:"list"` } // String returns the string representation func (s ModifyMountTargetSecurityGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyMountTargetSecurityGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyMountTargetSecurityGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyMountTargetSecurityGroupsInput"} if s.MountTargetId == nil { invalidParams.Add(request.NewErrParamRequired("MountTargetId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyMountTargetSecurityGroupsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ModifyMountTargetSecurityGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyMountTargetSecurityGroupsOutput) GoString() string { return s.String() } // Provides a description of a mount target. type MountTargetDescription struct { _ struct{} `type:"structure"` // ID of the file system for which the mount target is intended. // // FileSystemId is a required field FileSystemId *string `type:"string" required:"true"` // Address at which the file system may be mounted via the mount target. IpAddress *string `type:"string"` // Lifecycle state of the mount target. // // LifeCycleState is a required field LifeCycleState *string `type:"string" required:"true" enum:"LifeCycleState"` // System-assigned mount target ID. // // MountTargetId is a required field MountTargetId *string `type:"string" required:"true"` // ID of the network interface that Amazon EFS created when it created the mount // target. NetworkInterfaceId *string `type:"string"` // AWS account ID that owns the resource. OwnerId *string `type:"string"` // ID of the mount target's subnet. // // SubnetId is a required field SubnetId *string `type:"string" required:"true"` } // String returns the string representation func (s MountTargetDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MountTargetDescription) GoString() string { return s.String() } // A tag is a key-value pair. Allowed characters: letters, whitespace, and numbers, // representable in UTF-8, and the following characters: + - = . _ : / type Tag struct { _ struct{} `type:"structure"` // Tag key (String). The key can't start with aws:. // // Key is a required field Key *string `min:"1" type:"string" required:"true"` // Value of the tag key. // // Value is a required field Value *string `type:"string" required:"true"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } const ( // LifeCycleStateCreating is a LifeCycleState enum value LifeCycleStateCreating = "creating" // LifeCycleStateAvailable is a LifeCycleState enum value LifeCycleStateAvailable = "available" // LifeCycleStateDeleting is a LifeCycleState enum value LifeCycleStateDeleting = "deleting" // LifeCycleStateDeleted is a LifeCycleState enum value LifeCycleStateDeleted = "deleted" ) const ( // PerformanceModeGeneralPurpose is a PerformanceMode enum value PerformanceModeGeneralPurpose = "generalPurpose" // PerformanceModeMaxIo is a PerformanceMode enum value PerformanceModeMaxIo = "maxIO" ) aws-sdk-go-1.4.22/service/efs/efsiface/000077500000000000000000000000001300374646400175455ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/efs/efsiface/interface.go000066400000000000000000000103171300374646400220360ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package efsiface provides an interface to enable mocking the Amazon Elastic File System service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package efsiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/efs" ) // EFSAPI provides an interface to enable mocking the // efs.EFS service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Elastic File System. // func myFunc(svc efsiface.EFSAPI) bool { // // Make svc.CreateFileSystem request // } // // func main() { // sess := session.New() // svc := efs.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockEFSClient struct { // efsiface.EFSAPI // } // func (m *mockEFSClient) CreateFileSystem(input *efs.CreateFileSystemInput) (*efs.FileSystemDescription, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockEFSClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type EFSAPI interface { CreateFileSystemRequest(*efs.CreateFileSystemInput) (*request.Request, *efs.FileSystemDescription) CreateFileSystem(*efs.CreateFileSystemInput) (*efs.FileSystemDescription, error) CreateMountTargetRequest(*efs.CreateMountTargetInput) (*request.Request, *efs.MountTargetDescription) CreateMountTarget(*efs.CreateMountTargetInput) (*efs.MountTargetDescription, error) CreateTagsRequest(*efs.CreateTagsInput) (*request.Request, *efs.CreateTagsOutput) CreateTags(*efs.CreateTagsInput) (*efs.CreateTagsOutput, error) DeleteFileSystemRequest(*efs.DeleteFileSystemInput) (*request.Request, *efs.DeleteFileSystemOutput) DeleteFileSystem(*efs.DeleteFileSystemInput) (*efs.DeleteFileSystemOutput, error) DeleteMountTargetRequest(*efs.DeleteMountTargetInput) (*request.Request, *efs.DeleteMountTargetOutput) DeleteMountTarget(*efs.DeleteMountTargetInput) (*efs.DeleteMountTargetOutput, error) DeleteTagsRequest(*efs.DeleteTagsInput) (*request.Request, *efs.DeleteTagsOutput) DeleteTags(*efs.DeleteTagsInput) (*efs.DeleteTagsOutput, error) DescribeFileSystemsRequest(*efs.DescribeFileSystemsInput) (*request.Request, *efs.DescribeFileSystemsOutput) DescribeFileSystems(*efs.DescribeFileSystemsInput) (*efs.DescribeFileSystemsOutput, error) DescribeMountTargetSecurityGroupsRequest(*efs.DescribeMountTargetSecurityGroupsInput) (*request.Request, *efs.DescribeMountTargetSecurityGroupsOutput) DescribeMountTargetSecurityGroups(*efs.DescribeMountTargetSecurityGroupsInput) (*efs.DescribeMountTargetSecurityGroupsOutput, error) DescribeMountTargetsRequest(*efs.DescribeMountTargetsInput) (*request.Request, *efs.DescribeMountTargetsOutput) DescribeMountTargets(*efs.DescribeMountTargetsInput) (*efs.DescribeMountTargetsOutput, error) DescribeTagsRequest(*efs.DescribeTagsInput) (*request.Request, *efs.DescribeTagsOutput) DescribeTags(*efs.DescribeTagsInput) (*efs.DescribeTagsOutput, error) ModifyMountTargetSecurityGroupsRequest(*efs.ModifyMountTargetSecurityGroupsInput) (*request.Request, *efs.ModifyMountTargetSecurityGroupsOutput) ModifyMountTargetSecurityGroups(*efs.ModifyMountTargetSecurityGroupsInput) (*efs.ModifyMountTargetSecurityGroupsOutput, error) } var _ EFSAPI = (*efs.EFS)(nil) aws-sdk-go-1.4.22/service/efs/examples_test.go000066400000000000000000000155531300374646400212150ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package efs_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/efs" ) var _ time.Duration var _ bytes.Buffer func ExampleEFS_CreateFileSystem() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := efs.New(sess) params := &efs.CreateFileSystemInput{ CreationToken: aws.String("CreationToken"), // Required PerformanceMode: aws.String("PerformanceMode"), } resp, err := svc.CreateFileSystem(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEFS_CreateMountTarget() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := efs.New(sess) params := &efs.CreateMountTargetInput{ FileSystemId: aws.String("FileSystemId"), // Required SubnetId: aws.String("SubnetId"), // Required IpAddress: aws.String("IpAddress"), SecurityGroups: []*string{ aws.String("SecurityGroup"), // Required // More values... }, } resp, err := svc.CreateMountTarget(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEFS_CreateTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := efs.New(sess) params := &efs.CreateTagsInput{ FileSystemId: aws.String("FileSystemId"), // Required Tags: []*efs.Tag{ // Required { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), // Required }, // More values... }, } resp, err := svc.CreateTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEFS_DeleteFileSystem() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := efs.New(sess) params := &efs.DeleteFileSystemInput{ FileSystemId: aws.String("FileSystemId"), // Required } resp, err := svc.DeleteFileSystem(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEFS_DeleteMountTarget() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := efs.New(sess) params := &efs.DeleteMountTargetInput{ MountTargetId: aws.String("MountTargetId"), // Required } resp, err := svc.DeleteMountTarget(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEFS_DeleteTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := efs.New(sess) params := &efs.DeleteTagsInput{ FileSystemId: aws.String("FileSystemId"), // Required TagKeys: []*string{ // Required aws.String("TagKey"), // Required // More values... }, } resp, err := svc.DeleteTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEFS_DescribeFileSystems() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := efs.New(sess) params := &efs.DescribeFileSystemsInput{ CreationToken: aws.String("CreationToken"), FileSystemId: aws.String("FileSystemId"), Marker: aws.String("Marker"), MaxItems: aws.Int64(1), } resp, err := svc.DescribeFileSystems(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEFS_DescribeMountTargetSecurityGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := efs.New(sess) params := &efs.DescribeMountTargetSecurityGroupsInput{ MountTargetId: aws.String("MountTargetId"), // Required } resp, err := svc.DescribeMountTargetSecurityGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEFS_DescribeMountTargets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := efs.New(sess) params := &efs.DescribeMountTargetsInput{ FileSystemId: aws.String("FileSystemId"), Marker: aws.String("Marker"), MaxItems: aws.Int64(1), MountTargetId: aws.String("MountTargetId"), } resp, err := svc.DescribeMountTargets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEFS_DescribeTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := efs.New(sess) params := &efs.DescribeTagsInput{ FileSystemId: aws.String("FileSystemId"), // Required Marker: aws.String("Marker"), MaxItems: aws.Int64(1), } resp, err := svc.DescribeTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEFS_ModifyMountTargetSecurityGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := efs.New(sess) params := &efs.ModifyMountTargetSecurityGroupsInput{ MountTargetId: aws.String("MountTargetId"), // Required SecurityGroups: []*string{ aws.String("SecurityGroup"), // Required // More values... }, } resp, err := svc.ModifyMountTargetSecurityGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/efs/service.go000066400000000000000000000057451300374646400200020ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package efs import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) // Amazon Elastic File System (Amazon EFS) provides simple, scalable file storage // for use with Amazon EC2 instances in the AWS Cloud. With Amazon EFS, storage // capacity is elastic, growing and shrinking automatically as you add and remove // files, so your applications have the storage they need, when they need it. // For more information, see the User Guide (http://docs.aws.amazon.com/efs/latest/ug/api-reference.html). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type EFS struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "elasticfilesystem" // New creates a new instance of the EFS client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a EFS client from just a session. // svc := efs.New(mySession) // // // Create a EFS client with additional configuration // svc := efs.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *EFS { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *EFS { svc := &EFS{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-02-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a EFS operation and runs any // custom request initialization. func (c *EFS) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/elasticache/000077500000000000000000000000001300374646400174705ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/elasticache/api.go000066400000000000000000011124551300374646400206010ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package elasticache provides a client for Amazon ElastiCache. package elasticache import ( "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/query" ) const opAddTagsToResource = "AddTagsToResource" // AddTagsToResourceRequest generates a "aws/request.Request" representing the // client's request for the AddTagsToResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddTagsToResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddTagsToResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddTagsToResourceRequest method. // req, resp := client.AddTagsToResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) AddTagsToResourceRequest(input *AddTagsToResourceInput) (req *request.Request, output *TagListMessage) { op := &request.Operation{ Name: opAddTagsToResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddTagsToResourceInput{} } req = c.newRequest(op, input, output) output = &TagListMessage{} req.Data = output return } // AddTagsToResource API operation for Amazon ElastiCache. // // Adds up to 10 cost allocation tags to the named resource. A cost allocation // tag is a key-value pair where the key and value are case-sensitive. You can // use cost allocation tags to categorize and track your AWS costs. // // When you apply tags to your ElastiCache resources, AWS generates a cost allocation // report as a comma-separated value (CSV) file with your usage and costs aggregated // by your tags. You can apply tags that represent business categories (such // as cost centers, application names, or owners) to organize your costs across // multiple services. For more information, see Using Cost Allocation Tags in // Amazon ElastiCache (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/Tagging.html) // in the ElastiCache User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation AddTagsToResource for usage and error information. // // Returned Error Codes: // * CacheClusterNotFound // The requested cache cluster ID does not refer to an existing cache cluster. // // * SnapshotNotFoundFault // The requested snapshot name does not refer to an existing snapshot. // // * TagQuotaPerResourceExceeded // The request cannot be processed because it would cause the resource to have // more than the allowed number of tags. The maximum number of tags permitted // on a resource is 10. // // * InvalidARN // The requested Amazon Resource Name (ARN) does not refer to an existing resource. // func (c *ElastiCache) AddTagsToResource(input *AddTagsToResourceInput) (*TagListMessage, error) { req, out := c.AddTagsToResourceRequest(input) err := req.Send() return out, err } const opAuthorizeCacheSecurityGroupIngress = "AuthorizeCacheSecurityGroupIngress" // AuthorizeCacheSecurityGroupIngressRequest generates a "aws/request.Request" representing the // client's request for the AuthorizeCacheSecurityGroupIngress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AuthorizeCacheSecurityGroupIngress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AuthorizeCacheSecurityGroupIngress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AuthorizeCacheSecurityGroupIngressRequest method. // req, resp := client.AuthorizeCacheSecurityGroupIngressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) AuthorizeCacheSecurityGroupIngressRequest(input *AuthorizeCacheSecurityGroupIngressInput) (req *request.Request, output *AuthorizeCacheSecurityGroupIngressOutput) { op := &request.Operation{ Name: opAuthorizeCacheSecurityGroupIngress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AuthorizeCacheSecurityGroupIngressInput{} } req = c.newRequest(op, input, output) output = &AuthorizeCacheSecurityGroupIngressOutput{} req.Data = output return } // AuthorizeCacheSecurityGroupIngress API operation for Amazon ElastiCache. // // Allows network ingress to a cache security group. Applications using ElastiCache // must be running on Amazon EC2, and Amazon EC2 security groups are used as // the authorization mechanism. // // You cannot authorize ingress from an Amazon EC2 security group in one region // to an ElastiCache cluster in another region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation AuthorizeCacheSecurityGroupIngress for usage and error information. // // Returned Error Codes: // * CacheSecurityGroupNotFound // The requested cache security group name does not refer to an existing cache // security group. // // * InvalidCacheSecurityGroupState // The current state of the cache security group does not allow deletion. // // * AuthorizationAlreadyExists // The specified Amazon EC2 security group is already authorized for the specified // cache security group. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) AuthorizeCacheSecurityGroupIngress(input *AuthorizeCacheSecurityGroupIngressInput) (*AuthorizeCacheSecurityGroupIngressOutput, error) { req, out := c.AuthorizeCacheSecurityGroupIngressRequest(input) err := req.Send() return out, err } const opCopySnapshot = "CopySnapshot" // CopySnapshotRequest generates a "aws/request.Request" representing the // client's request for the CopySnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CopySnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CopySnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CopySnapshotRequest method. // req, resp := client.CopySnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) CopySnapshotRequest(input *CopySnapshotInput) (req *request.Request, output *CopySnapshotOutput) { op := &request.Operation{ Name: opCopySnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CopySnapshotInput{} } req = c.newRequest(op, input, output) output = &CopySnapshotOutput{} req.Data = output return } // CopySnapshot API operation for Amazon ElastiCache. // // Makes a copy of an existing snapshot. // // This operation is valid for Redis only. // // Users or groups that have permissions to use the CopySnapshot operation can // create their own Amazon S3 buckets and copy snapshots to it. To control access // to your snapshots, use an IAM policy to control who has the ability to use // the CopySnapshot operation. For more information about using IAM to control // the use of ElastiCache operations, see Exporting Snapshots (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/Snapshots.Exporting.html) // and Authentication & Access Control (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/IAM.html). // // You could receive the following error messages. // // Error Messages // // * Error Message: The S3 bucket %s is outside of the region. // // Solution: Create an Amazon S3 bucket in the same region as your snapshot. // For more information, see Step 1: Create an Amazon S3 Bucket (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/Snapshots.Exporting.html#Snapshots.Exporting.CreateBucket) // in the ElastiCache User Guide. // // * Error Message: The S3 bucket %s does not exist. // // Solution: Create an Amazon S3 bucket in the same region as your snapshot. // For more information, see Step 1: Create an Amazon S3 Bucket (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/Snapshots.Exporting.html#Snapshots.Exporting.CreateBucket) // in the ElastiCache User Guide. // // * Error Message: The S3 bucket %s is not owned by the authenticated user. // // Solution: Create an Amazon S3 bucket in the same region as your snapshot. // For more information, see Step 1: Create an Amazon S3 Bucket (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/Snapshots.Exporting.html#Snapshots.Exporting.CreateBucket) // in the ElastiCache User Guide. // // * Error Message: The authenticated user does not have sufficient permissions // to perform the desired activity. // // Solution: Contact your system administrator to get the needed permissions. // // * Error Message: The S3 bucket %s already contains an object with key // %s. // // Solution: Give the TargetSnapshotName a new and unique value. If exporting // a snapshot, you could alternatively create a new Amazon S3 bucket and // use this same value for TargetSnapshotName. // // * Error Message: ElastiCache has not been granted READ permissions %s // on the S3 Bucket. // // Solution: Add List and Read permissions on the bucket. For more information, // see Step 2: Grant ElastiCache Access to Your Amazon S3 Bucket (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/Snapshots.Exporting.html#Snapshots.Exporting.GrantAccess) // in the ElastiCache User Guide. // // * Error Message: ElastiCache has not been granted WRITE permissions %s // on the S3 Bucket. // // Solution: Add Upload/Delete permissions on the bucket. For more information, // see Step 2: Grant ElastiCache Access to Your Amazon S3 Bucket (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/Snapshots.Exporting.html#Snapshots.Exporting.GrantAccess) // in the ElastiCache User Guide. // // * Error Message: ElastiCache has not been granted READ_ACP permissions // %s on the S3 Bucket. // // Solution: Add View Permissions on the bucket. For more information, see Step // 2: Grant ElastiCache Access to Your Amazon S3 Bucket (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/Snapshots.Exporting.html#Snapshots.Exporting.GrantAccess) // in the ElastiCache User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation CopySnapshot for usage and error information. // // Returned Error Codes: // * SnapshotAlreadyExistsFault // You already have a snapshot with the given name. // // * SnapshotNotFoundFault // The requested snapshot name does not refer to an existing snapshot. // // * SnapshotQuotaExceededFault // The request cannot be processed because it would exceed the maximum number // of snapshots. // // * InvalidSnapshotState // The current state of the snapshot does not allow the requested operation // to occur. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) CopySnapshot(input *CopySnapshotInput) (*CopySnapshotOutput, error) { req, out := c.CopySnapshotRequest(input) err := req.Send() return out, err } const opCreateCacheCluster = "CreateCacheCluster" // CreateCacheClusterRequest generates a "aws/request.Request" representing the // client's request for the CreateCacheCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateCacheCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateCacheCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateCacheClusterRequest method. // req, resp := client.CreateCacheClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) CreateCacheClusterRequest(input *CreateCacheClusterInput) (req *request.Request, output *CreateCacheClusterOutput) { op := &request.Operation{ Name: opCreateCacheCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateCacheClusterInput{} } req = c.newRequest(op, input, output) output = &CreateCacheClusterOutput{} req.Data = output return } // CreateCacheCluster API operation for Amazon ElastiCache. // // Creates a cache cluster. All nodes in the cache cluster run the same protocol-compliant // cache engine software, either Memcached or Redis. // // Due to current limitations on Redis (cluster mode disabled), this operation // or parameter is not supported on Redis (cluster mode enabled) replication // groups. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation CreateCacheCluster for usage and error information. // // Returned Error Codes: // * ReplicationGroupNotFoundFault // The specified replication group does not exist. // // * InvalidReplicationGroupState // The requested replication group is not in the available state. // // * CacheClusterAlreadyExists // You already have a cache cluster with the given identifier. // // * InsufficientCacheClusterCapacity // The requested cache node type is not available in the specified Availability // Zone. // // * CacheSecurityGroupNotFound // The requested cache security group name does not refer to an existing cache // security group. // // * CacheSubnetGroupNotFoundFault // The requested cache subnet group name does not refer to an existing cache // subnet group. // // * ClusterQuotaForCustomerExceeded // The request cannot be processed because it would exceed the allowed number // of cache clusters per customer. // // * NodeQuotaForClusterExceeded // The request cannot be processed because it would exceed the allowed number // of cache nodes in a single cache cluster. // // * NodeQuotaForCustomerExceeded // The request cannot be processed because it would exceed the allowed number // of cache nodes per customer. // // * CacheParameterGroupNotFound // The requested cache parameter group name does not refer to an existing cache // parameter group. // // * InvalidVPCNetworkStateFault // The VPC network is in an invalid state. // // * TagQuotaPerResourceExceeded // The request cannot be processed because it would cause the resource to have // more than the allowed number of tags. The maximum number of tags permitted // on a resource is 10. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) CreateCacheCluster(input *CreateCacheClusterInput) (*CreateCacheClusterOutput, error) { req, out := c.CreateCacheClusterRequest(input) err := req.Send() return out, err } const opCreateCacheParameterGroup = "CreateCacheParameterGroup" // CreateCacheParameterGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateCacheParameterGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateCacheParameterGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateCacheParameterGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateCacheParameterGroupRequest method. // req, resp := client.CreateCacheParameterGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) CreateCacheParameterGroupRequest(input *CreateCacheParameterGroupInput) (req *request.Request, output *CreateCacheParameterGroupOutput) { op := &request.Operation{ Name: opCreateCacheParameterGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateCacheParameterGroupInput{} } req = c.newRequest(op, input, output) output = &CreateCacheParameterGroupOutput{} req.Data = output return } // CreateCacheParameterGroup API operation for Amazon ElastiCache. // // Creates a new cache parameter group. A cache parameter group is a collection // of parameters that you apply to all of the nodes in a cache cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation CreateCacheParameterGroup for usage and error information. // // Returned Error Codes: // * CacheParameterGroupQuotaExceeded // The request cannot be processed because it would exceed the maximum number // of cache security groups. // // * CacheParameterGroupAlreadyExists // A cache parameter group with the requested name already exists. // // * InvalidCacheParameterGroupState // The current state of the cache parameter group does not allow the requested // operation to occur. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) CreateCacheParameterGroup(input *CreateCacheParameterGroupInput) (*CreateCacheParameterGroupOutput, error) { req, out := c.CreateCacheParameterGroupRequest(input) err := req.Send() return out, err } const opCreateCacheSecurityGroup = "CreateCacheSecurityGroup" // CreateCacheSecurityGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateCacheSecurityGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateCacheSecurityGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateCacheSecurityGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateCacheSecurityGroupRequest method. // req, resp := client.CreateCacheSecurityGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) CreateCacheSecurityGroupRequest(input *CreateCacheSecurityGroupInput) (req *request.Request, output *CreateCacheSecurityGroupOutput) { op := &request.Operation{ Name: opCreateCacheSecurityGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateCacheSecurityGroupInput{} } req = c.newRequest(op, input, output) output = &CreateCacheSecurityGroupOutput{} req.Data = output return } // CreateCacheSecurityGroup API operation for Amazon ElastiCache. // // Creates a new cache security group. Use a cache security group to control // access to one or more cache clusters. // // Cache security groups are only used when you are creating a cache cluster // outside of an Amazon Virtual Private Cloud (Amazon VPC). If you are creating // a cache cluster inside of a VPC, use a cache subnet group instead. For more // information, see CreateCacheSubnetGroup (http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateCacheSubnetGroup.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation CreateCacheSecurityGroup for usage and error information. // // Returned Error Codes: // * CacheSecurityGroupAlreadyExists // A cache security group with the specified name already exists. // // * QuotaExceeded.CacheSecurityGroup // The request cannot be processed because it would exceed the allowed number // of cache security groups. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) CreateCacheSecurityGroup(input *CreateCacheSecurityGroupInput) (*CreateCacheSecurityGroupOutput, error) { req, out := c.CreateCacheSecurityGroupRequest(input) err := req.Send() return out, err } const opCreateCacheSubnetGroup = "CreateCacheSubnetGroup" // CreateCacheSubnetGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateCacheSubnetGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateCacheSubnetGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateCacheSubnetGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateCacheSubnetGroupRequest method. // req, resp := client.CreateCacheSubnetGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) CreateCacheSubnetGroupRequest(input *CreateCacheSubnetGroupInput) (req *request.Request, output *CreateCacheSubnetGroupOutput) { op := &request.Operation{ Name: opCreateCacheSubnetGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateCacheSubnetGroupInput{} } req = c.newRequest(op, input, output) output = &CreateCacheSubnetGroupOutput{} req.Data = output return } // CreateCacheSubnetGroup API operation for Amazon ElastiCache. // // Creates a new cache subnet group. // // Use this parameter only when you are creating a cluster in an Amazon Virtual // Private Cloud (Amazon VPC). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation CreateCacheSubnetGroup for usage and error information. // // Returned Error Codes: // * CacheSubnetGroupAlreadyExists // The requested cache subnet group name is already in use by an existing cache // subnet group. // // * CacheSubnetGroupQuotaExceeded // The request cannot be processed because it would exceed the allowed number // of cache subnet groups. // // * CacheSubnetQuotaExceededFault // The request cannot be processed because it would exceed the allowed number // of subnets in a cache subnet group. // // * InvalidSubnet // An invalid subnet identifier was specified. // func (c *ElastiCache) CreateCacheSubnetGroup(input *CreateCacheSubnetGroupInput) (*CreateCacheSubnetGroupOutput, error) { req, out := c.CreateCacheSubnetGroupRequest(input) err := req.Send() return out, err } const opCreateReplicationGroup = "CreateReplicationGroup" // CreateReplicationGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateReplicationGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateReplicationGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateReplicationGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateReplicationGroupRequest method. // req, resp := client.CreateReplicationGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) CreateReplicationGroupRequest(input *CreateReplicationGroupInput) (req *request.Request, output *CreateReplicationGroupOutput) { op := &request.Operation{ Name: opCreateReplicationGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateReplicationGroupInput{} } req = c.newRequest(op, input, output) output = &CreateReplicationGroupOutput{} req.Data = output return } // CreateReplicationGroup API operation for Amazon ElastiCache. // // Creates a Redis (cluster mode disabled) or a Redis (cluster mode enabled) // replication group. // // A Redis (cluster mode disabled) replication group is a collection of cache // clusters, where one of the cache clusters is a read/write primary and the // others are read-only replicas. Writes to the primary are asynchronously propagated // to the replicas. // // A Redis (cluster mode enabled) replication group is a collection of 1 to // 15 node groups (shards). Each node group (shard) has one read/write primary // node and up to 5 read-only replica nodes. Writes to the primary are asynchronously // propagated to the replicas. Redis (cluster mode enabled) replication groups // partition the data across node groups (shards). // // When a Redis (cluster mode disabled) replication group has been successfully // created, you can add one or more read replicas to it, up to a total of 5 // read replicas. You cannot alter a Redis (cluster mode enabled) replication // group once it has been created. // // This operation is valid for Redis only. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation CreateReplicationGroup for usage and error information. // // Returned Error Codes: // * CacheClusterNotFound // The requested cache cluster ID does not refer to an existing cache cluster. // // * InvalidCacheClusterState // The requested cache cluster is not in the available state. // // * ReplicationGroupAlreadyExists // The specified replication group already exists. // // * InsufficientCacheClusterCapacity // The requested cache node type is not available in the specified Availability // Zone. // // * CacheSecurityGroupNotFound // The requested cache security group name does not refer to an existing cache // security group. // // * CacheSubnetGroupNotFoundFault // The requested cache subnet group name does not refer to an existing cache // subnet group. // // * ClusterQuotaForCustomerExceeded // The request cannot be processed because it would exceed the allowed number // of cache clusters per customer. // // * NodeQuotaForClusterExceeded // The request cannot be processed because it would exceed the allowed number // of cache nodes in a single cache cluster. // // * NodeQuotaForCustomerExceeded // The request cannot be processed because it would exceed the allowed number // of cache nodes per customer. // // * CacheParameterGroupNotFound // The requested cache parameter group name does not refer to an existing cache // parameter group. // // * InvalidVPCNetworkStateFault // The VPC network is in an invalid state. // // * TagQuotaPerResourceExceeded // The request cannot be processed because it would cause the resource to have // more than the allowed number of tags. The maximum number of tags permitted // on a resource is 10. // // * NodeGroupsPerReplicationGroupQuotaExceeded // The request cannot be processed because it would exceed the maximum of 15 // node groups (shards) in a single replication group. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) CreateReplicationGroup(input *CreateReplicationGroupInput) (*CreateReplicationGroupOutput, error) { req, out := c.CreateReplicationGroupRequest(input) err := req.Send() return out, err } const opCreateSnapshot = "CreateSnapshot" // CreateSnapshotRequest generates a "aws/request.Request" representing the // client's request for the CreateSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateSnapshotRequest method. // req, resp := client.CreateSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) CreateSnapshotRequest(input *CreateSnapshotInput) (req *request.Request, output *CreateSnapshotOutput) { op := &request.Operation{ Name: opCreateSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateSnapshotInput{} } req = c.newRequest(op, input, output) output = &CreateSnapshotOutput{} req.Data = output return } // CreateSnapshot API operation for Amazon ElastiCache. // // Creates a copy of an entire cache cluster or replication group at a specific // moment in time. // // This operation is valid for Redis only. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation CreateSnapshot for usage and error information. // // Returned Error Codes: // * SnapshotAlreadyExistsFault // You already have a snapshot with the given name. // // * CacheClusterNotFound // The requested cache cluster ID does not refer to an existing cache cluster. // // * ReplicationGroupNotFoundFault // The specified replication group does not exist. // // * InvalidCacheClusterState // The requested cache cluster is not in the available state. // // * InvalidReplicationGroupState // The requested replication group is not in the available state. // // * SnapshotQuotaExceededFault // The request cannot be processed because it would exceed the maximum number // of snapshots. // // * SnapshotFeatureNotSupportedFault // You attempted one of the following operations: // // * Creating a snapshot of a Redis cache cluster running on a cache.t1.micro // cache node. // // * Creating a snapshot of a cache cluster that is running Memcached rather // than Redis. // // Neither of these are supported by ElastiCache. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // // * InvalidParameterValue // The value for a parameter is invalid. // func (c *ElastiCache) CreateSnapshot(input *CreateSnapshotInput) (*CreateSnapshotOutput, error) { req, out := c.CreateSnapshotRequest(input) err := req.Send() return out, err } const opDeleteCacheCluster = "DeleteCacheCluster" // DeleteCacheClusterRequest generates a "aws/request.Request" representing the // client's request for the DeleteCacheCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteCacheCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteCacheCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteCacheClusterRequest method. // req, resp := client.DeleteCacheClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) DeleteCacheClusterRequest(input *DeleteCacheClusterInput) (req *request.Request, output *DeleteCacheClusterOutput) { op := &request.Operation{ Name: opDeleteCacheCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteCacheClusterInput{} } req = c.newRequest(op, input, output) output = &DeleteCacheClusterOutput{} req.Data = output return } // DeleteCacheCluster API operation for Amazon ElastiCache. // // Deletes a previously provisioned cache cluster. DeleteCacheCluster deletes // all associated cache nodes, node endpoints and the cache cluster itself. // When you receive a successful response from this operation, Amazon ElastiCache // immediately begins deleting the cache cluster; you cannot cancel or revert // this operation. // // This operation cannot be used to delete a cache cluster that is the last // read replica of a replication group or node group (shard) that has Multi-AZ // mode enabled or a cache cluster from a Redis (cluster mode enabled) replication // group. // // Due to current limitations on Redis (cluster mode disabled), this operation // or parameter is not supported on Redis (cluster mode enabled) replication // groups. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation DeleteCacheCluster for usage and error information. // // Returned Error Codes: // * CacheClusterNotFound // The requested cache cluster ID does not refer to an existing cache cluster. // // * InvalidCacheClusterState // The requested cache cluster is not in the available state. // // * SnapshotAlreadyExistsFault // You already have a snapshot with the given name. // // * SnapshotFeatureNotSupportedFault // You attempted one of the following operations: // // * Creating a snapshot of a Redis cache cluster running on a cache.t1.micro // cache node. // // * Creating a snapshot of a cache cluster that is running Memcached rather // than Redis. // // Neither of these are supported by ElastiCache. // // * SnapshotQuotaExceededFault // The request cannot be processed because it would exceed the maximum number // of snapshots. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) DeleteCacheCluster(input *DeleteCacheClusterInput) (*DeleteCacheClusterOutput, error) { req, out := c.DeleteCacheClusterRequest(input) err := req.Send() return out, err } const opDeleteCacheParameterGroup = "DeleteCacheParameterGroup" // DeleteCacheParameterGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteCacheParameterGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteCacheParameterGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteCacheParameterGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteCacheParameterGroupRequest method. // req, resp := client.DeleteCacheParameterGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) DeleteCacheParameterGroupRequest(input *DeleteCacheParameterGroupInput) (req *request.Request, output *DeleteCacheParameterGroupOutput) { op := &request.Operation{ Name: opDeleteCacheParameterGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteCacheParameterGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteCacheParameterGroupOutput{} req.Data = output return } // DeleteCacheParameterGroup API operation for Amazon ElastiCache. // // Deletes the specified cache parameter group. You cannot delete a cache parameter // group if it is associated with any cache clusters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation DeleteCacheParameterGroup for usage and error information. // // Returned Error Codes: // * InvalidCacheParameterGroupState // The current state of the cache parameter group does not allow the requested // operation to occur. // // * CacheParameterGroupNotFound // The requested cache parameter group name does not refer to an existing cache // parameter group. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) DeleteCacheParameterGroup(input *DeleteCacheParameterGroupInput) (*DeleteCacheParameterGroupOutput, error) { req, out := c.DeleteCacheParameterGroupRequest(input) err := req.Send() return out, err } const opDeleteCacheSecurityGroup = "DeleteCacheSecurityGroup" // DeleteCacheSecurityGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteCacheSecurityGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteCacheSecurityGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteCacheSecurityGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteCacheSecurityGroupRequest method. // req, resp := client.DeleteCacheSecurityGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) DeleteCacheSecurityGroupRequest(input *DeleteCacheSecurityGroupInput) (req *request.Request, output *DeleteCacheSecurityGroupOutput) { op := &request.Operation{ Name: opDeleteCacheSecurityGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteCacheSecurityGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteCacheSecurityGroupOutput{} req.Data = output return } // DeleteCacheSecurityGroup API operation for Amazon ElastiCache. // // Deletes a cache security group. // // You cannot delete a cache security group if it is associated with any cache // clusters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation DeleteCacheSecurityGroup for usage and error information. // // Returned Error Codes: // * InvalidCacheSecurityGroupState // The current state of the cache security group does not allow deletion. // // * CacheSecurityGroupNotFound // The requested cache security group name does not refer to an existing cache // security group. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) DeleteCacheSecurityGroup(input *DeleteCacheSecurityGroupInput) (*DeleteCacheSecurityGroupOutput, error) { req, out := c.DeleteCacheSecurityGroupRequest(input) err := req.Send() return out, err } const opDeleteCacheSubnetGroup = "DeleteCacheSubnetGroup" // DeleteCacheSubnetGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteCacheSubnetGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteCacheSubnetGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteCacheSubnetGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteCacheSubnetGroupRequest method. // req, resp := client.DeleteCacheSubnetGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) DeleteCacheSubnetGroupRequest(input *DeleteCacheSubnetGroupInput) (req *request.Request, output *DeleteCacheSubnetGroupOutput) { op := &request.Operation{ Name: opDeleteCacheSubnetGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteCacheSubnetGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteCacheSubnetGroupOutput{} req.Data = output return } // DeleteCacheSubnetGroup API operation for Amazon ElastiCache. // // Deletes a cache subnet group. // // You cannot delete a cache subnet group if it is associated with any cache // clusters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation DeleteCacheSubnetGroup for usage and error information. // // Returned Error Codes: // * CacheSubnetGroupInUse // The requested cache subnet group is currently in use. // // * CacheSubnetGroupNotFoundFault // The requested cache subnet group name does not refer to an existing cache // subnet group. // func (c *ElastiCache) DeleteCacheSubnetGroup(input *DeleteCacheSubnetGroupInput) (*DeleteCacheSubnetGroupOutput, error) { req, out := c.DeleteCacheSubnetGroupRequest(input) err := req.Send() return out, err } const opDeleteReplicationGroup = "DeleteReplicationGroup" // DeleteReplicationGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteReplicationGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteReplicationGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteReplicationGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteReplicationGroupRequest method. // req, resp := client.DeleteReplicationGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) DeleteReplicationGroupRequest(input *DeleteReplicationGroupInput) (req *request.Request, output *DeleteReplicationGroupOutput) { op := &request.Operation{ Name: opDeleteReplicationGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteReplicationGroupInput{} } req = c.newRequest(op, input, output) output = &DeleteReplicationGroupOutput{} req.Data = output return } // DeleteReplicationGroup API operation for Amazon ElastiCache. // // Deletes an existing replication group. By default, this operation deletes // the entire replication group, including the primary/primaries and all of // the read replicas. If the replication group has only one primary, you can // optionally delete only the read replicas, while retaining the primary by // setting RetainPrimaryCluster=true. // // When you receive a successful response from this operation, Amazon ElastiCache // immediately begins deleting the selected resources; you cannot cancel or // revert this operation. // // This operation is valid for Redis only. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation DeleteReplicationGroup for usage and error information. // // Returned Error Codes: // * ReplicationGroupNotFoundFault // The specified replication group does not exist. // // * InvalidReplicationGroupState // The requested replication group is not in the available state. // // * SnapshotAlreadyExistsFault // You already have a snapshot with the given name. // // * SnapshotFeatureNotSupportedFault // You attempted one of the following operations: // // * Creating a snapshot of a Redis cache cluster running on a cache.t1.micro // cache node. // // * Creating a snapshot of a cache cluster that is running Memcached rather // than Redis. // // Neither of these are supported by ElastiCache. // // * SnapshotQuotaExceededFault // The request cannot be processed because it would exceed the maximum number // of snapshots. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) DeleteReplicationGroup(input *DeleteReplicationGroupInput) (*DeleteReplicationGroupOutput, error) { req, out := c.DeleteReplicationGroupRequest(input) err := req.Send() return out, err } const opDeleteSnapshot = "DeleteSnapshot" // DeleteSnapshotRequest generates a "aws/request.Request" representing the // client's request for the DeleteSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteSnapshotRequest method. // req, resp := client.DeleteSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) DeleteSnapshotRequest(input *DeleteSnapshotInput) (req *request.Request, output *DeleteSnapshotOutput) { op := &request.Operation{ Name: opDeleteSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteSnapshotInput{} } req = c.newRequest(op, input, output) output = &DeleteSnapshotOutput{} req.Data = output return } // DeleteSnapshot API operation for Amazon ElastiCache. // // Deletes an existing snapshot. When you receive a successful response from // this operation, ElastiCache immediately begins deleting the snapshot; you // cannot cancel or revert this operation. // // This operation is valid for Redis only. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation DeleteSnapshot for usage and error information. // // Returned Error Codes: // * SnapshotNotFoundFault // The requested snapshot name does not refer to an existing snapshot. // // * InvalidSnapshotState // The current state of the snapshot does not allow the requested operation // to occur. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) DeleteSnapshot(input *DeleteSnapshotInput) (*DeleteSnapshotOutput, error) { req, out := c.DeleteSnapshotRequest(input) err := req.Send() return out, err } const opDescribeCacheClusters = "DescribeCacheClusters" // DescribeCacheClustersRequest generates a "aws/request.Request" representing the // client's request for the DescribeCacheClusters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCacheClusters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCacheClusters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeCacheClustersRequest method. // req, resp := client.DescribeCacheClustersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) DescribeCacheClustersRequest(input *DescribeCacheClustersInput) (req *request.Request, output *DescribeCacheClustersOutput) { op := &request.Operation{ Name: opDescribeCacheClusters, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeCacheClustersInput{} } req = c.newRequest(op, input, output) output = &DescribeCacheClustersOutput{} req.Data = output return } // DescribeCacheClusters API operation for Amazon ElastiCache. // // Returns information about all provisioned cache clusters if no cache cluster // identifier is specified, or about a specific cache cluster if a cache cluster // identifier is supplied. // // By default, abbreviated information about the cache clusters are returned. // You can use the optional ShowDetails flag to retrieve detailed information // about the cache nodes associated with the cache clusters. These details include // the DNS address and port for the cache node endpoint. // // If the cluster is in the CREATING state, only cluster-level information is // displayed until all of the nodes are successfully provisioned. // // If the cluster is in the DELETING state, only cluster-level information is // displayed. // // If cache nodes are currently being added to the cache cluster, node endpoint // information and creation time for the additional nodes are not displayed // until they are completely provisioned. When the cache cluster state is available, // the cluster is ready for use. // // If cache nodes are currently being removed from the cache cluster, no endpoint // information for the removed nodes is displayed. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation DescribeCacheClusters for usage and error information. // // Returned Error Codes: // * CacheClusterNotFound // The requested cache cluster ID does not refer to an existing cache cluster. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) DescribeCacheClusters(input *DescribeCacheClustersInput) (*DescribeCacheClustersOutput, error) { req, out := c.DescribeCacheClustersRequest(input) err := req.Send() return out, err } // DescribeCacheClustersPages iterates over the pages of a DescribeCacheClusters operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeCacheClusters method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeCacheClusters operation. // pageNum := 0 // err := client.DescribeCacheClustersPages(params, // func(page *DescribeCacheClustersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ElastiCache) DescribeCacheClustersPages(input *DescribeCacheClustersInput, fn func(p *DescribeCacheClustersOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeCacheClustersRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeCacheClustersOutput), lastPage) }) } const opDescribeCacheEngineVersions = "DescribeCacheEngineVersions" // DescribeCacheEngineVersionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeCacheEngineVersions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCacheEngineVersions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCacheEngineVersions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeCacheEngineVersionsRequest method. // req, resp := client.DescribeCacheEngineVersionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) DescribeCacheEngineVersionsRequest(input *DescribeCacheEngineVersionsInput) (req *request.Request, output *DescribeCacheEngineVersionsOutput) { op := &request.Operation{ Name: opDescribeCacheEngineVersions, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeCacheEngineVersionsInput{} } req = c.newRequest(op, input, output) output = &DescribeCacheEngineVersionsOutput{} req.Data = output return } // DescribeCacheEngineVersions API operation for Amazon ElastiCache. // // Returns a list of the available cache engines and their versions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation DescribeCacheEngineVersions for usage and error information. func (c *ElastiCache) DescribeCacheEngineVersions(input *DescribeCacheEngineVersionsInput) (*DescribeCacheEngineVersionsOutput, error) { req, out := c.DescribeCacheEngineVersionsRequest(input) err := req.Send() return out, err } // DescribeCacheEngineVersionsPages iterates over the pages of a DescribeCacheEngineVersions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeCacheEngineVersions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeCacheEngineVersions operation. // pageNum := 0 // err := client.DescribeCacheEngineVersionsPages(params, // func(page *DescribeCacheEngineVersionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ElastiCache) DescribeCacheEngineVersionsPages(input *DescribeCacheEngineVersionsInput, fn func(p *DescribeCacheEngineVersionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeCacheEngineVersionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeCacheEngineVersionsOutput), lastPage) }) } const opDescribeCacheParameterGroups = "DescribeCacheParameterGroups" // DescribeCacheParameterGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeCacheParameterGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCacheParameterGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCacheParameterGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeCacheParameterGroupsRequest method. // req, resp := client.DescribeCacheParameterGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) DescribeCacheParameterGroupsRequest(input *DescribeCacheParameterGroupsInput) (req *request.Request, output *DescribeCacheParameterGroupsOutput) { op := &request.Operation{ Name: opDescribeCacheParameterGroups, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeCacheParameterGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeCacheParameterGroupsOutput{} req.Data = output return } // DescribeCacheParameterGroups API operation for Amazon ElastiCache. // // Returns a list of cache parameter group descriptions. If a cache parameter // group name is specified, the list contains only the descriptions for that // group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation DescribeCacheParameterGroups for usage and error information. // // Returned Error Codes: // * CacheParameterGroupNotFound // The requested cache parameter group name does not refer to an existing cache // parameter group. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) DescribeCacheParameterGroups(input *DescribeCacheParameterGroupsInput) (*DescribeCacheParameterGroupsOutput, error) { req, out := c.DescribeCacheParameterGroupsRequest(input) err := req.Send() return out, err } // DescribeCacheParameterGroupsPages iterates over the pages of a DescribeCacheParameterGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeCacheParameterGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeCacheParameterGroups operation. // pageNum := 0 // err := client.DescribeCacheParameterGroupsPages(params, // func(page *DescribeCacheParameterGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ElastiCache) DescribeCacheParameterGroupsPages(input *DescribeCacheParameterGroupsInput, fn func(p *DescribeCacheParameterGroupsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeCacheParameterGroupsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeCacheParameterGroupsOutput), lastPage) }) } const opDescribeCacheParameters = "DescribeCacheParameters" // DescribeCacheParametersRequest generates a "aws/request.Request" representing the // client's request for the DescribeCacheParameters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCacheParameters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCacheParameters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeCacheParametersRequest method. // req, resp := client.DescribeCacheParametersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) DescribeCacheParametersRequest(input *DescribeCacheParametersInput) (req *request.Request, output *DescribeCacheParametersOutput) { op := &request.Operation{ Name: opDescribeCacheParameters, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeCacheParametersInput{} } req = c.newRequest(op, input, output) output = &DescribeCacheParametersOutput{} req.Data = output return } // DescribeCacheParameters API operation for Amazon ElastiCache. // // Returns the detailed parameter list for a particular cache parameter group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation DescribeCacheParameters for usage and error information. // // Returned Error Codes: // * CacheParameterGroupNotFound // The requested cache parameter group name does not refer to an existing cache // parameter group. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) DescribeCacheParameters(input *DescribeCacheParametersInput) (*DescribeCacheParametersOutput, error) { req, out := c.DescribeCacheParametersRequest(input) err := req.Send() return out, err } // DescribeCacheParametersPages iterates over the pages of a DescribeCacheParameters operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeCacheParameters method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeCacheParameters operation. // pageNum := 0 // err := client.DescribeCacheParametersPages(params, // func(page *DescribeCacheParametersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ElastiCache) DescribeCacheParametersPages(input *DescribeCacheParametersInput, fn func(p *DescribeCacheParametersOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeCacheParametersRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeCacheParametersOutput), lastPage) }) } const opDescribeCacheSecurityGroups = "DescribeCacheSecurityGroups" // DescribeCacheSecurityGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeCacheSecurityGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCacheSecurityGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCacheSecurityGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeCacheSecurityGroupsRequest method. // req, resp := client.DescribeCacheSecurityGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) DescribeCacheSecurityGroupsRequest(input *DescribeCacheSecurityGroupsInput) (req *request.Request, output *DescribeCacheSecurityGroupsOutput) { op := &request.Operation{ Name: opDescribeCacheSecurityGroups, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeCacheSecurityGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeCacheSecurityGroupsOutput{} req.Data = output return } // DescribeCacheSecurityGroups API operation for Amazon ElastiCache. // // Returns a list of cache security group descriptions. If a cache security // group name is specified, the list contains only the description of that group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation DescribeCacheSecurityGroups for usage and error information. // // Returned Error Codes: // * CacheSecurityGroupNotFound // The requested cache security group name does not refer to an existing cache // security group. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) DescribeCacheSecurityGroups(input *DescribeCacheSecurityGroupsInput) (*DescribeCacheSecurityGroupsOutput, error) { req, out := c.DescribeCacheSecurityGroupsRequest(input) err := req.Send() return out, err } // DescribeCacheSecurityGroupsPages iterates over the pages of a DescribeCacheSecurityGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeCacheSecurityGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeCacheSecurityGroups operation. // pageNum := 0 // err := client.DescribeCacheSecurityGroupsPages(params, // func(page *DescribeCacheSecurityGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ElastiCache) DescribeCacheSecurityGroupsPages(input *DescribeCacheSecurityGroupsInput, fn func(p *DescribeCacheSecurityGroupsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeCacheSecurityGroupsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeCacheSecurityGroupsOutput), lastPage) }) } const opDescribeCacheSubnetGroups = "DescribeCacheSubnetGroups" // DescribeCacheSubnetGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeCacheSubnetGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCacheSubnetGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCacheSubnetGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeCacheSubnetGroupsRequest method. // req, resp := client.DescribeCacheSubnetGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) DescribeCacheSubnetGroupsRequest(input *DescribeCacheSubnetGroupsInput) (req *request.Request, output *DescribeCacheSubnetGroupsOutput) { op := &request.Operation{ Name: opDescribeCacheSubnetGroups, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeCacheSubnetGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeCacheSubnetGroupsOutput{} req.Data = output return } // DescribeCacheSubnetGroups API operation for Amazon ElastiCache. // // Returns a list of cache subnet group descriptions. If a subnet group name // is specified, the list contains only the description of that group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation DescribeCacheSubnetGroups for usage and error information. // // Returned Error Codes: // * CacheSubnetGroupNotFoundFault // The requested cache subnet group name does not refer to an existing cache // subnet group. // func (c *ElastiCache) DescribeCacheSubnetGroups(input *DescribeCacheSubnetGroupsInput) (*DescribeCacheSubnetGroupsOutput, error) { req, out := c.DescribeCacheSubnetGroupsRequest(input) err := req.Send() return out, err } // DescribeCacheSubnetGroupsPages iterates over the pages of a DescribeCacheSubnetGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeCacheSubnetGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeCacheSubnetGroups operation. // pageNum := 0 // err := client.DescribeCacheSubnetGroupsPages(params, // func(page *DescribeCacheSubnetGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ElastiCache) DescribeCacheSubnetGroupsPages(input *DescribeCacheSubnetGroupsInput, fn func(p *DescribeCacheSubnetGroupsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeCacheSubnetGroupsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeCacheSubnetGroupsOutput), lastPage) }) } const opDescribeEngineDefaultParameters = "DescribeEngineDefaultParameters" // DescribeEngineDefaultParametersRequest generates a "aws/request.Request" representing the // client's request for the DescribeEngineDefaultParameters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEngineDefaultParameters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEngineDefaultParameters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEngineDefaultParametersRequest method. // req, resp := client.DescribeEngineDefaultParametersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) DescribeEngineDefaultParametersRequest(input *DescribeEngineDefaultParametersInput) (req *request.Request, output *DescribeEngineDefaultParametersOutput) { op := &request.Operation{ Name: opDescribeEngineDefaultParameters, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"EngineDefaults.Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeEngineDefaultParametersInput{} } req = c.newRequest(op, input, output) output = &DescribeEngineDefaultParametersOutput{} req.Data = output return } // DescribeEngineDefaultParameters API operation for Amazon ElastiCache. // // Returns the default engine and system parameter information for the specified // cache engine. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation DescribeEngineDefaultParameters for usage and error information. // // Returned Error Codes: // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) DescribeEngineDefaultParameters(input *DescribeEngineDefaultParametersInput) (*DescribeEngineDefaultParametersOutput, error) { req, out := c.DescribeEngineDefaultParametersRequest(input) err := req.Send() return out, err } // DescribeEngineDefaultParametersPages iterates over the pages of a DescribeEngineDefaultParameters operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeEngineDefaultParameters method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeEngineDefaultParameters operation. // pageNum := 0 // err := client.DescribeEngineDefaultParametersPages(params, // func(page *DescribeEngineDefaultParametersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ElastiCache) DescribeEngineDefaultParametersPages(input *DescribeEngineDefaultParametersInput, fn func(p *DescribeEngineDefaultParametersOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeEngineDefaultParametersRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeEngineDefaultParametersOutput), lastPage) }) } const opDescribeEvents = "DescribeEvents" // DescribeEventsRequest generates a "aws/request.Request" representing the // client's request for the DescribeEvents operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEvents for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEvents method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEventsRequest method. // req, resp := client.DescribeEventsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) DescribeEventsRequest(input *DescribeEventsInput) (req *request.Request, output *DescribeEventsOutput) { op := &request.Operation{ Name: opDescribeEvents, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeEventsInput{} } req = c.newRequest(op, input, output) output = &DescribeEventsOutput{} req.Data = output return } // DescribeEvents API operation for Amazon ElastiCache. // // Returns events related to cache clusters, cache security groups, and cache // parameter groups. You can obtain events specific to a particular cache cluster, // cache security group, or cache parameter group by providing the name as a // parameter. // // By default, only the events occurring within the last hour are returned; // however, you can retrieve up to 14 days' worth of events if necessary. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation DescribeEvents for usage and error information. // // Returned Error Codes: // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) DescribeEvents(input *DescribeEventsInput) (*DescribeEventsOutput, error) { req, out := c.DescribeEventsRequest(input) err := req.Send() return out, err } // DescribeEventsPages iterates over the pages of a DescribeEvents operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeEvents method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeEvents operation. // pageNum := 0 // err := client.DescribeEventsPages(params, // func(page *DescribeEventsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ElastiCache) DescribeEventsPages(input *DescribeEventsInput, fn func(p *DescribeEventsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeEventsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeEventsOutput), lastPage) }) } const opDescribeReplicationGroups = "DescribeReplicationGroups" // DescribeReplicationGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeReplicationGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeReplicationGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeReplicationGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeReplicationGroupsRequest method. // req, resp := client.DescribeReplicationGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) DescribeReplicationGroupsRequest(input *DescribeReplicationGroupsInput) (req *request.Request, output *DescribeReplicationGroupsOutput) { op := &request.Operation{ Name: opDescribeReplicationGroups, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeReplicationGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeReplicationGroupsOutput{} req.Data = output return } // DescribeReplicationGroups API operation for Amazon ElastiCache. // // Returns information about a particular replication group. If no identifier // is specified, DescribeReplicationGroups returns information about all replication // groups. // // This operation is valid for Redis only. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation DescribeReplicationGroups for usage and error information. // // Returned Error Codes: // * ReplicationGroupNotFoundFault // The specified replication group does not exist. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) DescribeReplicationGroups(input *DescribeReplicationGroupsInput) (*DescribeReplicationGroupsOutput, error) { req, out := c.DescribeReplicationGroupsRequest(input) err := req.Send() return out, err } // DescribeReplicationGroupsPages iterates over the pages of a DescribeReplicationGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeReplicationGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeReplicationGroups operation. // pageNum := 0 // err := client.DescribeReplicationGroupsPages(params, // func(page *DescribeReplicationGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ElastiCache) DescribeReplicationGroupsPages(input *DescribeReplicationGroupsInput, fn func(p *DescribeReplicationGroupsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeReplicationGroupsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeReplicationGroupsOutput), lastPage) }) } const opDescribeReservedCacheNodes = "DescribeReservedCacheNodes" // DescribeReservedCacheNodesRequest generates a "aws/request.Request" representing the // client's request for the DescribeReservedCacheNodes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeReservedCacheNodes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeReservedCacheNodes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeReservedCacheNodesRequest method. // req, resp := client.DescribeReservedCacheNodesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) DescribeReservedCacheNodesRequest(input *DescribeReservedCacheNodesInput) (req *request.Request, output *DescribeReservedCacheNodesOutput) { op := &request.Operation{ Name: opDescribeReservedCacheNodes, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeReservedCacheNodesInput{} } req = c.newRequest(op, input, output) output = &DescribeReservedCacheNodesOutput{} req.Data = output return } // DescribeReservedCacheNodes API operation for Amazon ElastiCache. // // Returns information about reserved cache nodes for this account, or about // a specified reserved cache node. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation DescribeReservedCacheNodes for usage and error information. // // Returned Error Codes: // * ReservedCacheNodeNotFound // The requested reserved cache node was not found. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) DescribeReservedCacheNodes(input *DescribeReservedCacheNodesInput) (*DescribeReservedCacheNodesOutput, error) { req, out := c.DescribeReservedCacheNodesRequest(input) err := req.Send() return out, err } // DescribeReservedCacheNodesPages iterates over the pages of a DescribeReservedCacheNodes operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeReservedCacheNodes method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeReservedCacheNodes operation. // pageNum := 0 // err := client.DescribeReservedCacheNodesPages(params, // func(page *DescribeReservedCacheNodesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ElastiCache) DescribeReservedCacheNodesPages(input *DescribeReservedCacheNodesInput, fn func(p *DescribeReservedCacheNodesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeReservedCacheNodesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeReservedCacheNodesOutput), lastPage) }) } const opDescribeReservedCacheNodesOfferings = "DescribeReservedCacheNodesOfferings" // DescribeReservedCacheNodesOfferingsRequest generates a "aws/request.Request" representing the // client's request for the DescribeReservedCacheNodesOfferings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeReservedCacheNodesOfferings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeReservedCacheNodesOfferings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeReservedCacheNodesOfferingsRequest method. // req, resp := client.DescribeReservedCacheNodesOfferingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) DescribeReservedCacheNodesOfferingsRequest(input *DescribeReservedCacheNodesOfferingsInput) (req *request.Request, output *DescribeReservedCacheNodesOfferingsOutput) { op := &request.Operation{ Name: opDescribeReservedCacheNodesOfferings, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeReservedCacheNodesOfferingsInput{} } req = c.newRequest(op, input, output) output = &DescribeReservedCacheNodesOfferingsOutput{} req.Data = output return } // DescribeReservedCacheNodesOfferings API operation for Amazon ElastiCache. // // Lists available reserved cache node offerings. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation DescribeReservedCacheNodesOfferings for usage and error information. // // Returned Error Codes: // * ReservedCacheNodesOfferingNotFound // The requested cache node offering does not exist. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) DescribeReservedCacheNodesOfferings(input *DescribeReservedCacheNodesOfferingsInput) (*DescribeReservedCacheNodesOfferingsOutput, error) { req, out := c.DescribeReservedCacheNodesOfferingsRequest(input) err := req.Send() return out, err } // DescribeReservedCacheNodesOfferingsPages iterates over the pages of a DescribeReservedCacheNodesOfferings operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeReservedCacheNodesOfferings method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeReservedCacheNodesOfferings operation. // pageNum := 0 // err := client.DescribeReservedCacheNodesOfferingsPages(params, // func(page *DescribeReservedCacheNodesOfferingsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ElastiCache) DescribeReservedCacheNodesOfferingsPages(input *DescribeReservedCacheNodesOfferingsInput, fn func(p *DescribeReservedCacheNodesOfferingsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeReservedCacheNodesOfferingsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeReservedCacheNodesOfferingsOutput), lastPage) }) } const opDescribeSnapshots = "DescribeSnapshots" // DescribeSnapshotsRequest generates a "aws/request.Request" representing the // client's request for the DescribeSnapshots operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSnapshots for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSnapshots method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSnapshotsRequest method. // req, resp := client.DescribeSnapshotsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) DescribeSnapshotsRequest(input *DescribeSnapshotsInput) (req *request.Request, output *DescribeSnapshotsOutput) { op := &request.Operation{ Name: opDescribeSnapshots, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeSnapshotsInput{} } req = c.newRequest(op, input, output) output = &DescribeSnapshotsOutput{} req.Data = output return } // DescribeSnapshots API operation for Amazon ElastiCache. // // Returns information about cache cluster or replication group snapshots. By // default, DescribeSnapshots lists all of your snapshots; it can optionally // describe a single snapshot, or just the snapshots associated with a particular // cache cluster. // // This operation is valid for Redis only. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation DescribeSnapshots for usage and error information. // // Returned Error Codes: // * CacheClusterNotFound // The requested cache cluster ID does not refer to an existing cache cluster. // // * SnapshotNotFoundFault // The requested snapshot name does not refer to an existing snapshot. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) DescribeSnapshots(input *DescribeSnapshotsInput) (*DescribeSnapshotsOutput, error) { req, out := c.DescribeSnapshotsRequest(input) err := req.Send() return out, err } // DescribeSnapshotsPages iterates over the pages of a DescribeSnapshots operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeSnapshots method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeSnapshots operation. // pageNum := 0 // err := client.DescribeSnapshotsPages(params, // func(page *DescribeSnapshotsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ElastiCache) DescribeSnapshotsPages(input *DescribeSnapshotsInput, fn func(p *DescribeSnapshotsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeSnapshotsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeSnapshotsOutput), lastPage) }) } const opListAllowedNodeTypeModifications = "ListAllowedNodeTypeModifications" // ListAllowedNodeTypeModificationsRequest generates a "aws/request.Request" representing the // client's request for the ListAllowedNodeTypeModifications operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListAllowedNodeTypeModifications for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListAllowedNodeTypeModifications method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListAllowedNodeTypeModificationsRequest method. // req, resp := client.ListAllowedNodeTypeModificationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) ListAllowedNodeTypeModificationsRequest(input *ListAllowedNodeTypeModificationsInput) (req *request.Request, output *ListAllowedNodeTypeModificationsOutput) { op := &request.Operation{ Name: opListAllowedNodeTypeModifications, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListAllowedNodeTypeModificationsInput{} } req = c.newRequest(op, input, output) output = &ListAllowedNodeTypeModificationsOutput{} req.Data = output return } // ListAllowedNodeTypeModifications API operation for Amazon ElastiCache. // // Lists all available node types that you can scale your Redis cluster's or // replication group's current node type up to. // // When you use the ModifyCacheCluster or ModifyReplicationGroup operations // to scale up your cluster or replication group, the value of the CacheNodeType // parameter must be one of the node types returned by this operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation ListAllowedNodeTypeModifications for usage and error information. // // Returned Error Codes: // * CacheClusterNotFound // The requested cache cluster ID does not refer to an existing cache cluster. // // * ReplicationGroupNotFoundFault // The specified replication group does not exist. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // // * InvalidParameterValue // The value for a parameter is invalid. // func (c *ElastiCache) ListAllowedNodeTypeModifications(input *ListAllowedNodeTypeModificationsInput) (*ListAllowedNodeTypeModificationsOutput, error) { req, out := c.ListAllowedNodeTypeModificationsRequest(input) err := req.Send() return out, err } const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTagsForResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTagsForResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTagsForResourceRequest method. // req, resp := client.ListTagsForResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *TagListMessage) { op := &request.Operation{ Name: opListTagsForResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListTagsForResourceInput{} } req = c.newRequest(op, input, output) output = &TagListMessage{} req.Data = output return } // ListTagsForResource API operation for Amazon ElastiCache. // // Lists all cost allocation tags currently on the named resource. A cost allocation // tag is a key-value pair where the key is case-sensitive and the value is // optional. You can use cost allocation tags to categorize and track your AWS // costs. // // You can have a maximum of 10 cost allocation tags on an ElastiCache resource. // For more information, see Using Cost Allocation Tags in Amazon ElastiCache // (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/BestPractices.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation ListTagsForResource for usage and error information. // // Returned Error Codes: // * CacheClusterNotFound // The requested cache cluster ID does not refer to an existing cache cluster. // // * SnapshotNotFoundFault // The requested snapshot name does not refer to an existing snapshot. // // * InvalidARN // The requested Amazon Resource Name (ARN) does not refer to an existing resource. // func (c *ElastiCache) ListTagsForResource(input *ListTagsForResourceInput) (*TagListMessage, error) { req, out := c.ListTagsForResourceRequest(input) err := req.Send() return out, err } const opModifyCacheCluster = "ModifyCacheCluster" // ModifyCacheClusterRequest generates a "aws/request.Request" representing the // client's request for the ModifyCacheCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyCacheCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyCacheCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyCacheClusterRequest method. // req, resp := client.ModifyCacheClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) ModifyCacheClusterRequest(input *ModifyCacheClusterInput) (req *request.Request, output *ModifyCacheClusterOutput) { op := &request.Operation{ Name: opModifyCacheCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyCacheClusterInput{} } req = c.newRequest(op, input, output) output = &ModifyCacheClusterOutput{} req.Data = output return } // ModifyCacheCluster API operation for Amazon ElastiCache. // // Modifies the settings for a cache cluster. You can use this operation to // change one or more cluster configuration parameters by specifying the parameters // and the new values. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation ModifyCacheCluster for usage and error information. // // Returned Error Codes: // * InvalidCacheClusterState // The requested cache cluster is not in the available state. // // * InvalidCacheSecurityGroupState // The current state of the cache security group does not allow deletion. // // * InsufficientCacheClusterCapacity // The requested cache node type is not available in the specified Availability // Zone. // // * CacheClusterNotFound // The requested cache cluster ID does not refer to an existing cache cluster. // // * NodeQuotaForClusterExceeded // The request cannot be processed because it would exceed the allowed number // of cache nodes in a single cache cluster. // // * NodeQuotaForCustomerExceeded // The request cannot be processed because it would exceed the allowed number // of cache nodes per customer. // // * CacheSecurityGroupNotFound // The requested cache security group name does not refer to an existing cache // security group. // // * CacheParameterGroupNotFound // The requested cache parameter group name does not refer to an existing cache // parameter group. // // * InvalidVPCNetworkStateFault // The VPC network is in an invalid state. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) ModifyCacheCluster(input *ModifyCacheClusterInput) (*ModifyCacheClusterOutput, error) { req, out := c.ModifyCacheClusterRequest(input) err := req.Send() return out, err } const opModifyCacheParameterGroup = "ModifyCacheParameterGroup" // ModifyCacheParameterGroupRequest generates a "aws/request.Request" representing the // client's request for the ModifyCacheParameterGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyCacheParameterGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyCacheParameterGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyCacheParameterGroupRequest method. // req, resp := client.ModifyCacheParameterGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) ModifyCacheParameterGroupRequest(input *ModifyCacheParameterGroupInput) (req *request.Request, output *CacheParameterGroupNameMessage) { op := &request.Operation{ Name: opModifyCacheParameterGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyCacheParameterGroupInput{} } req = c.newRequest(op, input, output) output = &CacheParameterGroupNameMessage{} req.Data = output return } // ModifyCacheParameterGroup API operation for Amazon ElastiCache. // // Modifies the parameters of a cache parameter group. You can modify up to // 20 parameters in a single request by submitting a list parameter name and // value pairs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation ModifyCacheParameterGroup for usage and error information. // // Returned Error Codes: // * CacheParameterGroupNotFound // The requested cache parameter group name does not refer to an existing cache // parameter group. // // * InvalidCacheParameterGroupState // The current state of the cache parameter group does not allow the requested // operation to occur. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) ModifyCacheParameterGroup(input *ModifyCacheParameterGroupInput) (*CacheParameterGroupNameMessage, error) { req, out := c.ModifyCacheParameterGroupRequest(input) err := req.Send() return out, err } const opModifyCacheSubnetGroup = "ModifyCacheSubnetGroup" // ModifyCacheSubnetGroupRequest generates a "aws/request.Request" representing the // client's request for the ModifyCacheSubnetGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyCacheSubnetGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyCacheSubnetGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyCacheSubnetGroupRequest method. // req, resp := client.ModifyCacheSubnetGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) ModifyCacheSubnetGroupRequest(input *ModifyCacheSubnetGroupInput) (req *request.Request, output *ModifyCacheSubnetGroupOutput) { op := &request.Operation{ Name: opModifyCacheSubnetGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyCacheSubnetGroupInput{} } req = c.newRequest(op, input, output) output = &ModifyCacheSubnetGroupOutput{} req.Data = output return } // ModifyCacheSubnetGroup API operation for Amazon ElastiCache. // // Modifies an existing cache subnet group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation ModifyCacheSubnetGroup for usage and error information. // // Returned Error Codes: // * CacheSubnetGroupNotFoundFault // The requested cache subnet group name does not refer to an existing cache // subnet group. // // * CacheSubnetQuotaExceededFault // The request cannot be processed because it would exceed the allowed number // of subnets in a cache subnet group. // // * SubnetInUse // The requested subnet is being used by another cache subnet group. // // * InvalidSubnet // An invalid subnet identifier was specified. // func (c *ElastiCache) ModifyCacheSubnetGroup(input *ModifyCacheSubnetGroupInput) (*ModifyCacheSubnetGroupOutput, error) { req, out := c.ModifyCacheSubnetGroupRequest(input) err := req.Send() return out, err } const opModifyReplicationGroup = "ModifyReplicationGroup" // ModifyReplicationGroupRequest generates a "aws/request.Request" representing the // client's request for the ModifyReplicationGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyReplicationGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyReplicationGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyReplicationGroupRequest method. // req, resp := client.ModifyReplicationGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) ModifyReplicationGroupRequest(input *ModifyReplicationGroupInput) (req *request.Request, output *ModifyReplicationGroupOutput) { op := &request.Operation{ Name: opModifyReplicationGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyReplicationGroupInput{} } req = c.newRequest(op, input, output) output = &ModifyReplicationGroupOutput{} req.Data = output return } // ModifyReplicationGroup API operation for Amazon ElastiCache. // // Modifies the settings for a replication group. // // Due to current limitations on Redis (cluster mode disabled), this operation // or parameter is not supported on Redis (cluster mode enabled) replication // groups. // // This operation is valid for Redis only. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation ModifyReplicationGroup for usage and error information. // // Returned Error Codes: // * ReplicationGroupNotFoundFault // The specified replication group does not exist. // // * InvalidReplicationGroupState // The requested replication group is not in the available state. // // * InvalidCacheClusterState // The requested cache cluster is not in the available state. // // * InvalidCacheSecurityGroupState // The current state of the cache security group does not allow deletion. // // * InsufficientCacheClusterCapacity // The requested cache node type is not available in the specified Availability // Zone. // // * CacheClusterNotFound // The requested cache cluster ID does not refer to an existing cache cluster. // // * NodeQuotaForClusterExceeded // The request cannot be processed because it would exceed the allowed number // of cache nodes in a single cache cluster. // // * NodeQuotaForCustomerExceeded // The request cannot be processed because it would exceed the allowed number // of cache nodes per customer. // // * CacheSecurityGroupNotFound // The requested cache security group name does not refer to an existing cache // security group. // // * CacheParameterGroupNotFound // The requested cache parameter group name does not refer to an existing cache // parameter group. // // * InvalidVPCNetworkStateFault // The VPC network is in an invalid state. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) ModifyReplicationGroup(input *ModifyReplicationGroupInput) (*ModifyReplicationGroupOutput, error) { req, out := c.ModifyReplicationGroupRequest(input) err := req.Send() return out, err } const opPurchaseReservedCacheNodesOffering = "PurchaseReservedCacheNodesOffering" // PurchaseReservedCacheNodesOfferingRequest generates a "aws/request.Request" representing the // client's request for the PurchaseReservedCacheNodesOffering operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PurchaseReservedCacheNodesOffering for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PurchaseReservedCacheNodesOffering method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PurchaseReservedCacheNodesOfferingRequest method. // req, resp := client.PurchaseReservedCacheNodesOfferingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) PurchaseReservedCacheNodesOfferingRequest(input *PurchaseReservedCacheNodesOfferingInput) (req *request.Request, output *PurchaseReservedCacheNodesOfferingOutput) { op := &request.Operation{ Name: opPurchaseReservedCacheNodesOffering, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PurchaseReservedCacheNodesOfferingInput{} } req = c.newRequest(op, input, output) output = &PurchaseReservedCacheNodesOfferingOutput{} req.Data = output return } // PurchaseReservedCacheNodesOffering API operation for Amazon ElastiCache. // // Allows you to purchase a reserved cache node offering. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation PurchaseReservedCacheNodesOffering for usage and error information. // // Returned Error Codes: // * ReservedCacheNodesOfferingNotFound // The requested cache node offering does not exist. // // * ReservedCacheNodeAlreadyExists // You already have a reservation with the given identifier. // // * ReservedCacheNodeQuotaExceeded // The request cannot be processed because it would exceed the user's cache // node quota. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) PurchaseReservedCacheNodesOffering(input *PurchaseReservedCacheNodesOfferingInput) (*PurchaseReservedCacheNodesOfferingOutput, error) { req, out := c.PurchaseReservedCacheNodesOfferingRequest(input) err := req.Send() return out, err } const opRebootCacheCluster = "RebootCacheCluster" // RebootCacheClusterRequest generates a "aws/request.Request" representing the // client's request for the RebootCacheCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RebootCacheCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RebootCacheCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RebootCacheClusterRequest method. // req, resp := client.RebootCacheClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) RebootCacheClusterRequest(input *RebootCacheClusterInput) (req *request.Request, output *RebootCacheClusterOutput) { op := &request.Operation{ Name: opRebootCacheCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RebootCacheClusterInput{} } req = c.newRequest(op, input, output) output = &RebootCacheClusterOutput{} req.Data = output return } // RebootCacheCluster API operation for Amazon ElastiCache. // // Reboots some, or all, of the cache nodes within a provisioned cache cluster. // This operation applies any modified cache parameter groups to the cache cluster. // The reboot operation takes place as soon as possible, and results in a momentary // outage to the cache cluster. During the reboot, the cache cluster status // is set to REBOOTING. // // The reboot causes the contents of the cache (for each cache node being rebooted) // to be lost. // // When the reboot is complete, a cache cluster event is created. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation RebootCacheCluster for usage and error information. // // Returned Error Codes: // * InvalidCacheClusterState // The requested cache cluster is not in the available state. // // * CacheClusterNotFound // The requested cache cluster ID does not refer to an existing cache cluster. // func (c *ElastiCache) RebootCacheCluster(input *RebootCacheClusterInput) (*RebootCacheClusterOutput, error) { req, out := c.RebootCacheClusterRequest(input) err := req.Send() return out, err } const opRemoveTagsFromResource = "RemoveTagsFromResource" // RemoveTagsFromResourceRequest generates a "aws/request.Request" representing the // client's request for the RemoveTagsFromResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveTagsFromResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveTagsFromResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveTagsFromResourceRequest method. // req, resp := client.RemoveTagsFromResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) RemoveTagsFromResourceRequest(input *RemoveTagsFromResourceInput) (req *request.Request, output *TagListMessage) { op := &request.Operation{ Name: opRemoveTagsFromResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveTagsFromResourceInput{} } req = c.newRequest(op, input, output) output = &TagListMessage{} req.Data = output return } // RemoveTagsFromResource API operation for Amazon ElastiCache. // // Removes the tags identified by the TagKeys list from the named resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation RemoveTagsFromResource for usage and error information. // // Returned Error Codes: // * CacheClusterNotFound // The requested cache cluster ID does not refer to an existing cache cluster. // // * SnapshotNotFoundFault // The requested snapshot name does not refer to an existing snapshot. // // * InvalidARN // The requested Amazon Resource Name (ARN) does not refer to an existing resource. // // * TagNotFound // The requested tag was not found on this resource. // func (c *ElastiCache) RemoveTagsFromResource(input *RemoveTagsFromResourceInput) (*TagListMessage, error) { req, out := c.RemoveTagsFromResourceRequest(input) err := req.Send() return out, err } const opResetCacheParameterGroup = "ResetCacheParameterGroup" // ResetCacheParameterGroupRequest generates a "aws/request.Request" representing the // client's request for the ResetCacheParameterGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ResetCacheParameterGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ResetCacheParameterGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ResetCacheParameterGroupRequest method. // req, resp := client.ResetCacheParameterGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) ResetCacheParameterGroupRequest(input *ResetCacheParameterGroupInput) (req *request.Request, output *CacheParameterGroupNameMessage) { op := &request.Operation{ Name: opResetCacheParameterGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ResetCacheParameterGroupInput{} } req = c.newRequest(op, input, output) output = &CacheParameterGroupNameMessage{} req.Data = output return } // ResetCacheParameterGroup API operation for Amazon ElastiCache. // // Modifies the parameters of a cache parameter group to the engine or system // default value. You can reset specific parameters by submitting a list of // parameter names. To reset the entire cache parameter group, specify the ResetAllParameters // and CacheParameterGroupName parameters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation ResetCacheParameterGroup for usage and error information. // // Returned Error Codes: // * InvalidCacheParameterGroupState // The current state of the cache parameter group does not allow the requested // operation to occur. // // * CacheParameterGroupNotFound // The requested cache parameter group name does not refer to an existing cache // parameter group. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) ResetCacheParameterGroup(input *ResetCacheParameterGroupInput) (*CacheParameterGroupNameMessage, error) { req, out := c.ResetCacheParameterGroupRequest(input) err := req.Send() return out, err } const opRevokeCacheSecurityGroupIngress = "RevokeCacheSecurityGroupIngress" // RevokeCacheSecurityGroupIngressRequest generates a "aws/request.Request" representing the // client's request for the RevokeCacheSecurityGroupIngress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RevokeCacheSecurityGroupIngress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RevokeCacheSecurityGroupIngress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RevokeCacheSecurityGroupIngressRequest method. // req, resp := client.RevokeCacheSecurityGroupIngressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElastiCache) RevokeCacheSecurityGroupIngressRequest(input *RevokeCacheSecurityGroupIngressInput) (req *request.Request, output *RevokeCacheSecurityGroupIngressOutput) { op := &request.Operation{ Name: opRevokeCacheSecurityGroupIngress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RevokeCacheSecurityGroupIngressInput{} } req = c.newRequest(op, input, output) output = &RevokeCacheSecurityGroupIngressOutput{} req.Data = output return } // RevokeCacheSecurityGroupIngress API operation for Amazon ElastiCache. // // Revokes ingress from a cache security group. Use this operation to disallow // access from an Amazon EC2 security group that had been previously authorized. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon ElastiCache's // API operation RevokeCacheSecurityGroupIngress for usage and error information. // // Returned Error Codes: // * CacheSecurityGroupNotFound // The requested cache security group name does not refer to an existing cache // security group. // // * AuthorizationNotFound // The specified Amazon EC2 security group is not authorized for the specified // cache security group. // // * InvalidCacheSecurityGroupState // The current state of the cache security group does not allow deletion. // // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidParameterCombination // Two or more incompatible parameters were specified. // func (c *ElastiCache) RevokeCacheSecurityGroupIngress(input *RevokeCacheSecurityGroupIngressInput) (*RevokeCacheSecurityGroupIngressOutput, error) { req, out := c.RevokeCacheSecurityGroupIngressRequest(input) err := req.Send() return out, err } // Represents the input of an AddTagsToResource operation. type AddTagsToResourceInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the resource to which the tags are to be // added, for example arn:aws:elasticache:us-west-2:0123456789:cluster:myCluster // or arn:aws:elasticache:us-west-2:0123456789:snapshot:mySnapshot. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). // // ResourceName is a required field ResourceName *string `type:"string" required:"true"` // A list of cost allocation tags to be added to this resource. A tag is a key-value // pair. A tag key must be accompanied by a tag value. // // Tags is a required field Tags []*Tag `locationNameList:"Tag" type:"list" required:"true"` } // String returns the string representation func (s AddTagsToResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsToResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsToResourceInput"} if s.ResourceName == nil { invalidParams.Add(request.NewErrParamRequired("ResourceName")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the input of an AuthorizeCacheSecurityGroupIngress operation. type AuthorizeCacheSecurityGroupIngressInput struct { _ struct{} `type:"structure"` // The cache security group that allows network ingress. // // CacheSecurityGroupName is a required field CacheSecurityGroupName *string `type:"string" required:"true"` // The Amazon EC2 security group to be authorized for ingress to the cache security // group. // // EC2SecurityGroupName is a required field EC2SecurityGroupName *string `type:"string" required:"true"` // The AWS account number of the Amazon EC2 security group owner. Note that // this is not the same thing as an AWS access key ID - you must provide a valid // AWS account number for this parameter. // // EC2SecurityGroupOwnerId is a required field EC2SecurityGroupOwnerId *string `type:"string" required:"true"` } // String returns the string representation func (s AuthorizeCacheSecurityGroupIngressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AuthorizeCacheSecurityGroupIngressInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AuthorizeCacheSecurityGroupIngressInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AuthorizeCacheSecurityGroupIngressInput"} if s.CacheSecurityGroupName == nil { invalidParams.Add(request.NewErrParamRequired("CacheSecurityGroupName")) } if s.EC2SecurityGroupName == nil { invalidParams.Add(request.NewErrParamRequired("EC2SecurityGroupName")) } if s.EC2SecurityGroupOwnerId == nil { invalidParams.Add(request.NewErrParamRequired("EC2SecurityGroupOwnerId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AuthorizeCacheSecurityGroupIngressOutput struct { _ struct{} `type:"structure"` // Represents the output of one of the following operations: // // * AuthorizeCacheSecurityGroupIngress // // * CreateCacheSecurityGroup // // * RevokeCacheSecurityGroupIngress CacheSecurityGroup *CacheSecurityGroup `type:"structure"` } // String returns the string representation func (s AuthorizeCacheSecurityGroupIngressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AuthorizeCacheSecurityGroupIngressOutput) GoString() string { return s.String() } // Describes an Availability Zone in which the cache cluster is launched. type AvailabilityZone struct { _ struct{} `type:"structure"` // The name of the Availability Zone. Name *string `type:"string"` } // String returns the string representation func (s AvailabilityZone) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AvailabilityZone) GoString() string { return s.String() } // Contains all of the attributes of a specific cache cluster. type CacheCluster struct { _ struct{} `type:"structure"` // This parameter is currently disabled. AutoMinorVersionUpgrade *bool `type:"boolean"` // The date and time when the cache cluster was created. CacheClusterCreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The user-supplied identifier of the cache cluster. This identifier is a unique // key that identifies a cache cluster. CacheClusterId *string `type:"string"` // The current state of this cache cluster, one of the following values: available, // creating, deleted, deleting, incompatible-network, modifying, rebooting cache // cluster nodes, restore-failed, or snapshotting. CacheClusterStatus *string `type:"string"` // The name of the compute and memory capacity node type for the cache cluster. // // Valid node types are as follows: // // * General purpose: // // Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, // cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge, cache.m4.large, cache.m4.xlarge, // cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge // // Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, // cache.m1.xlarge // // * Compute optimized: cache.c1.xlarge // // * Memory optimized: // // Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, // cache.r3.8xlarge // // Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge // // Notes: // // * All T2 instances are created in an Amazon Virtual Private Cloud (Amazon // VPC). // // * Redis backup/restore is not supported for Redis (cluster mode disabled) // T1 and T2 instances. Backup/restore is supported on Redis (cluster mode // enabled) T2 instances. // // * Redis Append-only files (AOF) functionality is not supported for T1 // or T2 instances. // // For a complete listing of node types and specifications, see Amazon ElastiCache // Product Features and Details (http://aws.amazon.com/elasticache/details) // and either Cache Node Type-Specific Parameters for Memcached (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#ParameterGroups.Memcached.NodeSpecific) // or Cache Node Type-Specific Parameters for Redis (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#ParameterGroups.Redis.NodeSpecific). CacheNodeType *string `type:"string"` // A list of cache nodes that are members of the cache cluster. CacheNodes []*CacheNode `locationNameList:"CacheNode" type:"list"` // Status of the cache parameter group. CacheParameterGroup *CacheParameterGroupStatus `type:"structure"` // A list of cache security group elements, composed of name and status sub-elements. CacheSecurityGroups []*CacheSecurityGroupMembership `locationNameList:"CacheSecurityGroup" type:"list"` // The name of the cache subnet group associated with the cache cluster. CacheSubnetGroupName *string `type:"string"` // The URL of the web page where you can download the latest ElastiCache client // library. ClientDownloadLandingPage *string `type:"string"` // Represents the information required for client programs to connect to a cache // node. ConfigurationEndpoint *Endpoint `type:"structure"` // The name of the cache engine (memcached or redis) to be used for this cache // cluster. Engine *string `type:"string"` // The version of the cache engine that is used in this cache cluster. EngineVersion *string `type:"string"` // Describes a notification topic and its status. Notification topics are used // for publishing ElastiCache events to subscribers using Amazon Simple Notification // Service (SNS). NotificationConfiguration *NotificationConfiguration `type:"structure"` // The number of cache nodes in the cache cluster. // // For clusters running Redis, this value must be 1. For clusters running Memcached, // this value must be between 1 and 20. NumCacheNodes *int64 `type:"integer"` // A group of settings that are applied to the cache cluster in the future, // or that are currently being applied. PendingModifiedValues *PendingModifiedValues `type:"structure"` // The name of the Availability Zone in which the cache cluster is located or // "Multiple" if the cache nodes are located in different Availability Zones. PreferredAvailabilityZone *string `type:"string"` // Specifies the weekly time range during which maintenance on the cluster is // performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi // (24H Clock UTC). The minimum maintenance window is a 60 minute period. // // Valid values for ddd are: // // * sun // // * mon // // * tue // // * wed // // * thu // // * fri // // * sat // // Example: sun:23:00-mon:01:30 PreferredMaintenanceWindow *string `type:"string"` // The replication group to which this cache cluster belongs. If this field // is empty, the cache cluster is not associated with any replication group. ReplicationGroupId *string `type:"string"` // A list of VPC Security Groups associated with the cache cluster. SecurityGroups []*SecurityGroupMembership `type:"list"` // The number of days for which ElastiCache retains automatic cache cluster // snapshots before deleting them. For example, if you set SnapshotRetentionLimit // to 5, a snapshot that was taken today is retained for 5 days before being // deleted. // // If the value of SnapshotRetentionLimit is set to zero (0), backups are turned // off. SnapshotRetentionLimit *int64 `type:"integer"` // The daily time range (in UTC) during which ElastiCache begins taking a daily // snapshot of your cache cluster. // // Example: 05:00-09:00 SnapshotWindow *string `type:"string"` } // String returns the string representation func (s CacheCluster) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CacheCluster) GoString() string { return s.String() } // Provides all of the details about a particular cache engine version. type CacheEngineVersion struct { _ struct{} `type:"structure"` // The description of the cache engine. CacheEngineDescription *string `type:"string"` // The description of the cache engine version. CacheEngineVersionDescription *string `type:"string"` // The name of the cache parameter group family associated with this cache engine. // // Valid values are: memcached1.4 | redis2.6 | redis2.8 | redis3.2 CacheParameterGroupFamily *string `type:"string"` // The name of the cache engine. Engine *string `type:"string"` // The version number of the cache engine. EngineVersion *string `type:"string"` } // String returns the string representation func (s CacheEngineVersion) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CacheEngineVersion) GoString() string { return s.String() } // Represents an individual cache node within a cache cluster. Each cache node // runs its own instance of the cluster's protocol-compliant caching software // - either Memcached or Redis. // // Valid node types are as follows: // // * General purpose: // // Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, // cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge, cache.m4.large, cache.m4.xlarge, // cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge // // Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, // cache.m1.xlarge // // * Compute optimized: cache.c1.xlarge // // * Memory optimized: // // Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, // cache.r3.8xlarge // // Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge // // Notes: // // * All T2 instances are created in an Amazon Virtual Private Cloud (Amazon // VPC). // // * Redis backup/restore is not supported for Redis (cluster mode disabled) // T1 and T2 instances. Backup/restore is supported on Redis (cluster mode // enabled) T2 instances. // // * Redis Append-only files (AOF) functionality is not supported for T1 // or T2 instances. // // For a complete listing of node types and specifications, see Amazon ElastiCache // Product Features and Details (http://aws.amazon.com/elasticache/details) // and either Cache Node Type-Specific Parameters for Memcached (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#ParameterGroups.Memcached.NodeSpecific) // or Cache Node Type-Specific Parameters for Redis (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#ParameterGroups.Redis.NodeSpecific). type CacheNode struct { _ struct{} `type:"structure"` // The date and time when the cache node was created. CacheNodeCreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The cache node identifier. A node ID is a numeric identifier (0001, 0002, // etc.). The combination of cluster ID and node ID uniquely identifies every // cache node used in a customer's AWS account. CacheNodeId *string `type:"string"` // The current state of this cache node. CacheNodeStatus *string `type:"string"` // The Availability Zone where this node was created and now resides. CustomerAvailabilityZone *string `type:"string"` // The hostname for connecting to this cache node. Endpoint *Endpoint `type:"structure"` // The status of the parameter group applied to this cache node. ParameterGroupStatus *string `type:"string"` // The ID of the primary node to which this read replica node is synchronized. // If this field is empty, this node is not associated with a primary cache // cluster. SourceCacheNodeId *string `type:"string"` } // String returns the string representation func (s CacheNode) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CacheNode) GoString() string { return s.String() } // A parameter that has a different value for each cache node type it is applied // to. For example, in a Redis cache cluster, a cache.m1.large cache node type // would have a larger maxmemory value than a cache.m1.small type. type CacheNodeTypeSpecificParameter struct { _ struct{} `type:"structure"` // The valid range of values for the parameter. AllowedValues *string `type:"string"` // A list of cache node types and their corresponding values for this parameter. CacheNodeTypeSpecificValues []*CacheNodeTypeSpecificValue `locationNameList:"CacheNodeTypeSpecificValue" type:"list"` // Indicates whether a change to the parameter is applied immediately or requires // a reboot for the change to be applied. You can force a reboot or wait until // the next maintenance window's reboot. For more information, see Rebooting // a Cluster (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/Clusters.Rebooting.html). ChangeType *string `type:"string" enum:"ChangeType"` // The valid data type for the parameter. DataType *string `type:"string"` // A description of the parameter. Description *string `type:"string"` // Indicates whether (true) or not (false) the parameter can be modified. Some // parameters have security or operational implications that prevent them from // being changed. IsModifiable *bool `type:"boolean"` // The earliest cache engine version to which the parameter can apply. MinimumEngineVersion *string `type:"string"` // The name of the parameter. ParameterName *string `type:"string"` // The source of the parameter value. Source *string `type:"string"` } // String returns the string representation func (s CacheNodeTypeSpecificParameter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CacheNodeTypeSpecificParameter) GoString() string { return s.String() } // A value that applies only to a certain cache node type. type CacheNodeTypeSpecificValue struct { _ struct{} `type:"structure"` // The cache node type for which this value applies. CacheNodeType *string `type:"string"` // The value for the cache node type. Value *string `type:"string"` } // String returns the string representation func (s CacheNodeTypeSpecificValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CacheNodeTypeSpecificValue) GoString() string { return s.String() } // Represents the output of a CreateCacheParameterGroup operation. type CacheParameterGroup struct { _ struct{} `type:"structure"` // The name of the cache parameter group family that this cache parameter group // is compatible with. // // Valid values are: memcached1.4 | redis2.6 | redis2.8 | redis3.2 CacheParameterGroupFamily *string `type:"string"` // The name of the cache parameter group. CacheParameterGroupName *string `type:"string"` // The description for this cache parameter group. Description *string `type:"string"` } // String returns the string representation func (s CacheParameterGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CacheParameterGroup) GoString() string { return s.String() } // Represents the output of one of the following operations: // // * ModifyCacheParameterGroup // // * ResetCacheParameterGroup type CacheParameterGroupNameMessage struct { _ struct{} `type:"structure"` // The name of the cache parameter group. CacheParameterGroupName *string `type:"string"` } // String returns the string representation func (s CacheParameterGroupNameMessage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CacheParameterGroupNameMessage) GoString() string { return s.String() } // Status of the cache parameter group. type CacheParameterGroupStatus struct { _ struct{} `type:"structure"` // A list of the cache node IDs which need to be rebooted for parameter changes // to be applied. A node ID is a numeric identifier (0001, 0002, etc.). CacheNodeIdsToReboot []*string `locationNameList:"CacheNodeId" type:"list"` // The name of the cache parameter group. CacheParameterGroupName *string `type:"string"` // The status of parameter updates. ParameterApplyStatus *string `type:"string"` } // String returns the string representation func (s CacheParameterGroupStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CacheParameterGroupStatus) GoString() string { return s.String() } // Represents the output of one of the following operations: // // * AuthorizeCacheSecurityGroupIngress // // * CreateCacheSecurityGroup // // * RevokeCacheSecurityGroupIngress type CacheSecurityGroup struct { _ struct{} `type:"structure"` // The name of the cache security group. CacheSecurityGroupName *string `type:"string"` // The description of the cache security group. Description *string `type:"string"` // A list of Amazon EC2 security groups that are associated with this cache // security group. EC2SecurityGroups []*EC2SecurityGroup `locationNameList:"EC2SecurityGroup" type:"list"` // The AWS account ID of the cache security group owner. OwnerId *string `type:"string"` } // String returns the string representation func (s CacheSecurityGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CacheSecurityGroup) GoString() string { return s.String() } // Represents a cache cluster's status within a particular cache security group. type CacheSecurityGroupMembership struct { _ struct{} `type:"structure"` // The name of the cache security group. CacheSecurityGroupName *string `type:"string"` // The membership status in the cache security group. The status changes when // a cache security group is modified, or when the cache security groups assigned // to a cache cluster are modified. Status *string `type:"string"` } // String returns the string representation func (s CacheSecurityGroupMembership) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CacheSecurityGroupMembership) GoString() string { return s.String() } // Represents the output of one of the following operations: // // * CreateCacheSubnetGroup // // * ModifyCacheSubnetGroup type CacheSubnetGroup struct { _ struct{} `type:"structure"` // The description of the cache subnet group. CacheSubnetGroupDescription *string `type:"string"` // The name of the cache subnet group. CacheSubnetGroupName *string `type:"string"` // A list of subnets associated with the cache subnet group. Subnets []*Subnet `locationNameList:"Subnet" type:"list"` // The Amazon Virtual Private Cloud identifier (VPC ID) of the cache subnet // group. VpcId *string `type:"string"` } // String returns the string representation func (s CacheSubnetGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CacheSubnetGroup) GoString() string { return s.String() } // Represents the input of a CopySnapshotMessage operation. type CopySnapshotInput struct { _ struct{} `type:"structure"` // The name of an existing snapshot from which to make a copy. // // SourceSnapshotName is a required field SourceSnapshotName *string `type:"string" required:"true"` // The Amazon S3 bucket to which the snapshot is exported. This parameter is // used only when exporting a snapshot for external access. // // When using this parameter to export a snapshot, be sure Amazon ElastiCache // has the needed permissions to this S3 bucket. For more information, see Step // 2: Grant ElastiCache Access to Your Amazon S3 Bucket (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/Snapshots.Exporting.html#Snapshots.Exporting.GrantAccess) // in the Amazon ElastiCache User Guide. // // For more information, see Exporting a Snapshot (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/Snapshots.Exporting.html) // in the Amazon ElastiCache User Guide. TargetBucket *string `type:"string"` // A name for the snapshot copy. ElastiCache does not permit overwriting a snapshot, // therefore this name must be unique within its context - ElastiCache or an // Amazon S3 bucket if exporting. // // TargetSnapshotName is a required field TargetSnapshotName *string `type:"string" required:"true"` } // String returns the string representation func (s CopySnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopySnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CopySnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CopySnapshotInput"} if s.SourceSnapshotName == nil { invalidParams.Add(request.NewErrParamRequired("SourceSnapshotName")) } if s.TargetSnapshotName == nil { invalidParams.Add(request.NewErrParamRequired("TargetSnapshotName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CopySnapshotOutput struct { _ struct{} `type:"structure"` // Represents a copy of an entire Redis cache cluster as of the time when the // snapshot was taken. Snapshot *Snapshot `type:"structure"` } // String returns the string representation func (s CopySnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopySnapshotOutput) GoString() string { return s.String() } // Represents the input of a CreateCacheCluster operation. type CreateCacheClusterInput struct { _ struct{} `type:"structure"` // Specifies whether the nodes in this Memcached cluster are created in a single // Availability Zone or created across multiple Availability Zones in the cluster's // region. // // This parameter is only supported for Memcached cache clusters. // // If the AZMode and PreferredAvailabilityZones are not specified, ElastiCache // assumes single-az mode. AZMode *string `type:"string" enum:"AZMode"` // This parameter is currently disabled. AutoMinorVersionUpgrade *bool `type:"boolean"` // The node group (shard) identifier. This parameter is stored as a lowercase // string. // // Constraints: // // * A name must contain from 1 to 20 alphanumeric characters or hyphens. // // * The first character must be a letter. // // * A name cannot end with a hyphen or contain two consecutive hyphens. // // CacheClusterId is a required field CacheClusterId *string `type:"string" required:"true"` // The compute and memory capacity of the nodes in the node group (shard). // // Valid node types are as follows: // // * General purpose: // // Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, // cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge, cache.m4.large, cache.m4.xlarge, // cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge // // Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, // cache.m1.xlarge // // * Compute optimized: cache.c1.xlarge // // * Memory optimized: // // Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, // cache.r3.8xlarge // // Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge // // Notes: // // * All T2 instances are created in an Amazon Virtual Private Cloud (Amazon // VPC). // // * Redis backup/restore is not supported for Redis (cluster mode disabled) // T1 and T2 instances. Backup/restore is supported on Redis (cluster mode // enabled) T2 instances. // // * Redis Append-only files (AOF) functionality is not supported for T1 // or T2 instances. // // For a complete listing of node types and specifications, see Amazon ElastiCache // Product Features and Details (http://aws.amazon.com/elasticache/details) // and either Cache Node Type-Specific Parameters for Memcached (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#ParameterGroups.Memcached.NodeSpecific) // or Cache Node Type-Specific Parameters for Redis (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#ParameterGroups.Redis.NodeSpecific). CacheNodeType *string `type:"string"` // The name of the parameter group to associate with this cache cluster. If // this argument is omitted, the default parameter group for the specified engine // is used. You cannot use any parameter group which has cluster-enabled='yes' // when creating a cluster. CacheParameterGroupName *string `type:"string"` // A list of security group names to associate with this cache cluster. // // Use this parameter only when you are creating a cache cluster outside of // an Amazon Virtual Private Cloud (Amazon VPC). CacheSecurityGroupNames []*string `locationNameList:"CacheSecurityGroupName" type:"list"` // The name of the subnet group to be used for the cache cluster. // // Use this parameter only when you are creating a cache cluster in an Amazon // Virtual Private Cloud (Amazon VPC). // // If you're going to launch your cluster in an Amazon VPC, you need to create // a subnet group before you start creating a cluster. For more information, // see Subnets and Subnet Groups (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/SubnetGroups.html). CacheSubnetGroupName *string `type:"string"` // The name of the cache engine to be used for this cache cluster. // // Valid values for this parameter are: memcached | redis Engine *string `type:"string"` // The version number of the cache engine to be used for this cache cluster. // To view the supported cache engine versions, use the DescribeCacheEngineVersions // operation. // // Important: You can upgrade to a newer engine version (see Selecting a Cache // Engine and Version (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/SelectEngine.html#VersionManagement)), // but you cannot downgrade to an earlier engine version. If you want to use // an earlier engine version, you must delete the existing cache cluster or // replication group and create it anew with the earlier engine version. EngineVersion *string `type:"string"` // The Amazon Resource Name (ARN) of the Amazon Simple Notification Service // (SNS) topic to which notifications are sent. // // The Amazon SNS topic owner must be the same as the cache cluster owner. NotificationTopicArn *string `type:"string"` // The initial number of cache nodes that the cache cluster has. // // For clusters running Redis, this value must be 1. For clusters running Memcached, // this value must be between 1 and 20. // // If you need more than 20 nodes for your Memcached cluster, please fill out // the ElastiCache Limit Increase Request form at http://aws.amazon.com/contact-us/elasticache-node-limit-request/ // (http://aws.amazon.com/contact-us/elasticache-node-limit-request/). NumCacheNodes *int64 `type:"integer"` // The port number on which each of the cache nodes accepts connections. Port *int64 `type:"integer"` // The EC2 Availability Zone in which the cache cluster is created. // // All nodes belonging to this Memcached cache cluster are placed in the preferred // Availability Zone. If you want to create your nodes across multiple Availability // Zones, use PreferredAvailabilityZones. // // Default: System chosen Availability Zone. PreferredAvailabilityZone *string `type:"string"` // A list of the Availability Zones in which cache nodes are created. The order // of the zones in the list is not important. // // This option is only supported on Memcached. // // If you are creating your cache cluster in an Amazon VPC (recommended) you // can only locate nodes in Availability Zones that are associated with the // subnets in the selected subnet group. // // The number of Availability Zones listed must equal the value of NumCacheNodes. // // If you want all the nodes in the same Availability Zone, use PreferredAvailabilityZone // instead, or repeat the Availability Zone multiple times in the list. // // Default: System chosen Availability Zones. PreferredAvailabilityZones []*string `locationNameList:"PreferredAvailabilityZone" type:"list"` // Specifies the weekly time range during which maintenance on the cache cluster // is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi // (24H Clock UTC). The minimum maintenance window is a 60 minute period. Valid // values for ddd are: // // Specifies the weekly time range during which maintenance on the cluster is // performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi // (24H Clock UTC). The minimum maintenance window is a 60 minute period. // // Valid values for ddd are: // // * sun // // * mon // // * tue // // * wed // // * thu // // * fri // // * sat // // Example: sun:23:00-mon:01:30 PreferredMaintenanceWindow *string `type:"string"` // Due to current limitations on Redis (cluster mode disabled), this operation // or parameter is not supported on Redis (cluster mode enabled) replication // groups. // // The ID of the replication group to which this cache cluster should belong. // If this parameter is specified, the cache cluster is added to the specified // replication group as a read replica; otherwise, the cache cluster is a standalone // primary that is not part of any replication group. // // If the specified replication group is Multi-AZ enabled and the Availability // Zone is not specified, the cache cluster is created in Availability Zones // that provide the best spread of read replicas across Availability Zones. // // This parameter is only valid if the Engine parameter is redis. ReplicationGroupId *string `type:"string"` // One or more VPC security groups associated with the cache cluster. // // Use this parameter only when you are creating a cache cluster in an Amazon // Virtual Private Cloud (Amazon VPC). SecurityGroupIds []*string `locationNameList:"SecurityGroupId" type:"list"` // A single-element string list containing an Amazon Resource Name (ARN) that // uniquely identifies a Redis RDB snapshot file stored in Amazon S3. The snapshot // file is used to populate the node group (shard). The Amazon S3 object name // in the ARN cannot contain any commas. // // This parameter is only valid if the Engine parameter is redis. // // Example of an Amazon S3 ARN: arn:aws:s3:::my_bucket/snapshot1.rdb SnapshotArns []*string `locationNameList:"SnapshotArn" type:"list"` // The name of a Redis snapshot from which to restore data into the new node // group (shard). The snapshot status changes to restoring while the new node // group (shard) is being created. // // This parameter is only valid if the Engine parameter is redis. SnapshotName *string `type:"string"` // The number of days for which ElastiCache retains automatic snapshots before // deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot // taken today is retained for 5 days before being deleted. // // This parameter is only valid if the Engine parameter is redis. // // Default: 0 (i.e., automatic backups are disabled for this cache cluster). SnapshotRetentionLimit *int64 `type:"integer"` // The daily time range (in UTC) during which ElastiCache begins taking a daily // snapshot of your node group (shard). // // Example: 05:00-09:00 // // If you do not specify this parameter, ElastiCache automatically chooses an // appropriate time range. // // Note: This parameter is only valid if the Engine parameter is redis. SnapshotWindow *string `type:"string"` // A list of cost allocation tags to be added to this resource. A tag is a key-value // pair. A tag key must be accompanied by a tag value. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateCacheClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCacheClusterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateCacheClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateCacheClusterInput"} if s.CacheClusterId == nil { invalidParams.Add(request.NewErrParamRequired("CacheClusterId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateCacheClusterOutput struct { _ struct{} `type:"structure"` // Contains all of the attributes of a specific cache cluster. CacheCluster *CacheCluster `type:"structure"` } // String returns the string representation func (s CreateCacheClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCacheClusterOutput) GoString() string { return s.String() } // Represents the input of a CreateCacheParameterGroup operation. type CreateCacheParameterGroupInput struct { _ struct{} `type:"structure"` // The name of the cache parameter group family that the cache parameter group // can be used with. // // Valid values are: memcached1.4 | redis2.6 | redis2.8 | redis3.2 // // CacheParameterGroupFamily is a required field CacheParameterGroupFamily *string `type:"string" required:"true"` // A user-specified name for the cache parameter group. // // CacheParameterGroupName is a required field CacheParameterGroupName *string `type:"string" required:"true"` // A user-specified description for the cache parameter group. // // Description is a required field Description *string `type:"string" required:"true"` } // String returns the string representation func (s CreateCacheParameterGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCacheParameterGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateCacheParameterGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateCacheParameterGroupInput"} if s.CacheParameterGroupFamily == nil { invalidParams.Add(request.NewErrParamRequired("CacheParameterGroupFamily")) } if s.CacheParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("CacheParameterGroupName")) } if s.Description == nil { invalidParams.Add(request.NewErrParamRequired("Description")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateCacheParameterGroupOutput struct { _ struct{} `type:"structure"` // Represents the output of a CreateCacheParameterGroup operation. CacheParameterGroup *CacheParameterGroup `type:"structure"` } // String returns the string representation func (s CreateCacheParameterGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCacheParameterGroupOutput) GoString() string { return s.String() } // Represents the input of a CreateCacheSecurityGroup operation. type CreateCacheSecurityGroupInput struct { _ struct{} `type:"structure"` // A name for the cache security group. This value is stored as a lowercase // string. // // Constraints: Must contain no more than 255 alphanumeric characters. Cannot // be the word "Default". // // Example: mysecuritygroup // // CacheSecurityGroupName is a required field CacheSecurityGroupName *string `type:"string" required:"true"` // A description for the cache security group. // // Description is a required field Description *string `type:"string" required:"true"` } // String returns the string representation func (s CreateCacheSecurityGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCacheSecurityGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateCacheSecurityGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateCacheSecurityGroupInput"} if s.CacheSecurityGroupName == nil { invalidParams.Add(request.NewErrParamRequired("CacheSecurityGroupName")) } if s.Description == nil { invalidParams.Add(request.NewErrParamRequired("Description")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateCacheSecurityGroupOutput struct { _ struct{} `type:"structure"` // Represents the output of one of the following operations: // // * AuthorizeCacheSecurityGroupIngress // // * CreateCacheSecurityGroup // // * RevokeCacheSecurityGroupIngress CacheSecurityGroup *CacheSecurityGroup `type:"structure"` } // String returns the string representation func (s CreateCacheSecurityGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCacheSecurityGroupOutput) GoString() string { return s.String() } // Represents the input of a CreateCacheSubnetGroup operation. type CreateCacheSubnetGroupInput struct { _ struct{} `type:"structure"` // A description for the cache subnet group. // // CacheSubnetGroupDescription is a required field CacheSubnetGroupDescription *string `type:"string" required:"true"` // A name for the cache subnet group. This value is stored as a lowercase string. // // Constraints: Must contain no more than 255 alphanumeric characters or hyphens. // // Example: mysubnetgroup // // CacheSubnetGroupName is a required field CacheSubnetGroupName *string `type:"string" required:"true"` // A list of VPC subnet IDs for the cache subnet group. // // SubnetIds is a required field SubnetIds []*string `locationNameList:"SubnetIdentifier" type:"list" required:"true"` } // String returns the string representation func (s CreateCacheSubnetGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCacheSubnetGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateCacheSubnetGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateCacheSubnetGroupInput"} if s.CacheSubnetGroupDescription == nil { invalidParams.Add(request.NewErrParamRequired("CacheSubnetGroupDescription")) } if s.CacheSubnetGroupName == nil { invalidParams.Add(request.NewErrParamRequired("CacheSubnetGroupName")) } if s.SubnetIds == nil { invalidParams.Add(request.NewErrParamRequired("SubnetIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateCacheSubnetGroupOutput struct { _ struct{} `type:"structure"` // Represents the output of one of the following operations: // // * CreateCacheSubnetGroup // // * ModifyCacheSubnetGroup CacheSubnetGroup *CacheSubnetGroup `type:"structure"` } // String returns the string representation func (s CreateCacheSubnetGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCacheSubnetGroupOutput) GoString() string { return s.String() } // Represents the input of a CreateReplicationGroup operation. type CreateReplicationGroupInput struct { _ struct{} `type:"structure"` // This parameter is currently disabled. AutoMinorVersionUpgrade *bool `type:"boolean"` // Specifies whether a read-only replica is automatically promoted to read/write // primary if the existing primary fails. // // If true, Multi-AZ is enabled for this replication group. If false, Multi-AZ // is disabled for this replication group. // // AutomaticFailoverEnabled must be enabled for Redis (cluster mode enabled) // replication groups. // // Default: false // // ElastiCache Multi-AZ replication groups is not supported on: // // Redis versions earlier than 2.8.6. // // Redis (cluster mode disabled): T1 and T2 node types. // // Redis (cluster mode enabled): T2 node types. AutomaticFailoverEnabled *bool `type:"boolean"` // The compute and memory capacity of the nodes in the node group (shard). // // Valid node types are as follows: // // * General purpose: // // Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, // cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge, cache.m4.large, cache.m4.xlarge, // cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge // // Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, // cache.m1.xlarge // // * Compute optimized: cache.c1.xlarge // // * Memory optimized: // // Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, // cache.r3.8xlarge // // Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge // // Notes: // // * All T2 instances are created in an Amazon Virtual Private Cloud (Amazon // VPC). // // * Redis backup/restore is not supported for Redis (cluster mode disabled) // T1 and T2 instances. Backup/restore is supported on Redis (cluster mode // enabled) T2 instances. // // * Redis Append-only files (AOF) functionality is not supported for T1 // or T2 instances. // // For a complete listing of node types and specifications, see Amazon ElastiCache // Product Features and Details (http://aws.amazon.com/elasticache/details) // and either Cache Node Type-Specific Parameters for Memcached (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#ParameterGroups.Memcached.NodeSpecific) // or Cache Node Type-Specific Parameters for Redis (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#ParameterGroups.Redis.NodeSpecific). CacheNodeType *string `type:"string"` // The name of the parameter group to associate with this replication group. // If this argument is omitted, the default cache parameter group for the specified // engine is used. // // If you are running Redis version 3.2.4 or later, only one node group (shard), // and want to use a default parameter group, we recommend that you specify // the parameter group by name. // // * To create a Redis (cluster mode disabled) replication group, use CacheParameterGroupName=default.redis3.2. // // * To create a Redis (cluster mode enabled) replication group, use CacheParameterGroupName=default.redis3.2.cluster.on. CacheParameterGroupName *string `type:"string"` // A list of cache security group names to associate with this replication group. CacheSecurityGroupNames []*string `locationNameList:"CacheSecurityGroupName" type:"list"` // The name of the cache subnet group to be used for the replication group. // // If you're going to launch your cluster in an Amazon VPC, you need to create // a subnet group before you start creating a cluster. For more information, // see Subnets and Subnet Groups (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/SubnetGroups.html). CacheSubnetGroupName *string `type:"string"` // The name of the cache engine to be used for the cache clusters in this replication // group. Engine *string `type:"string"` // The version number of the cache engine to be used for the cache clusters // in this replication group. To view the supported cache engine versions, use // the DescribeCacheEngineVersions operation. // // Important: You can upgrade to a newer engine version (see Selecting a Cache // Engine and Version (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/SelectEngine.html#VersionManagement)) // in the ElastiCache User Guide, but you cannot downgrade to an earlier engine // version. If you want to use an earlier engine version, you must delete the // existing cache cluster or replication group and create it anew with the earlier // engine version. EngineVersion *string `type:"string"` // A list of node group (shard) configuration options. Each node group (shard) // configuration has the following: Slots, PrimaryAvailabilityZone, ReplicaAvailabilityZones, // ReplicaCount. // // If you're creating a Redis (cluster mode disabled) or a Redis (cluster mode // enabled) replication group, you can use this parameter to configure one node // group (shard) or you can omit this parameter. NodeGroupConfiguration []*NodeGroupConfiguration `locationNameList:"NodeGroupConfiguration" type:"list"` // The Amazon Resource Name (ARN) of the Amazon Simple Notification Service // (SNS) topic to which notifications are sent. // // The Amazon SNS topic owner must be the same as the cache cluster owner. NotificationTopicArn *string `type:"string"` // The number of clusters this replication group initially has. // // This parameter is not used if there is more than one node group (shard). // You should use ReplicasPerNodeGroup instead. // // If Multi-AZ is enabled, the value of this parameter must be at least 2. // // The maximum permitted value for NumCacheClusters is 6 (primary plus 5 replicas). // If you need to exceed this limit, fill out the ElastiCache Limit Increase // Request form at http://aws.amazon.com/contact-us/elasticache-node-limit-request/ // (http://aws.amazon.com/contact-us/elasticache-node-limit-request/). NumCacheClusters *int64 `type:"integer"` // An optional parameter that specifies the number of node groups (shards) for // this Redis (cluster mode enabled) replication group. For Redis (cluster mode // disabled) either omit this parameter or set it to 1. // // Default: 1 NumNodeGroups *int64 `type:"integer"` // The port number on which each member of the replication group accepts connections. Port *int64 `type:"integer"` // A list of EC2 Availability Zones in which the replication group's cache clusters // are created. The order of the Availability Zones in the list is the order // in which clusters are allocated. The primary cluster is created in the first // AZ in the list. // // This parameter is not used if there is more than one node group (shard). // You should use NodeGroupConfiguration instead. // // If you are creating your replication group in an Amazon VPC (recommended), // you can only locate cache clusters in Availability Zones associated with // the subnets in the selected subnet group. // // The number of Availability Zones listed must equal the value of NumCacheClusters. // // Default: system chosen Availability Zones. PreferredCacheClusterAZs []*string `locationNameList:"AvailabilityZone" type:"list"` // Specifies the weekly time range during which maintenance on the cache cluster // is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi // (24H Clock UTC). The minimum maintenance window is a 60 minute period. Valid // values for ddd are: // // Specifies the weekly time range during which maintenance on the cluster is // performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi // (24H Clock UTC). The minimum maintenance window is a 60 minute period. // // Valid values for ddd are: // // * sun // // * mon // // * tue // // * wed // // * thu // // * fri // // * sat // // Example: sun:23:00-mon:01:30 PreferredMaintenanceWindow *string `type:"string"` // The identifier of the cache cluster that serves as the primary for this replication // group. This cache cluster must already exist and have a status of available. // // This parameter is not required if NumCacheClusters, NumNodeGroups, or ReplicasPerNodeGroup // is specified. PrimaryClusterId *string `type:"string"` // An optional parameter that specifies the number of replica nodes in each // node group (shard). Valid values are 0 to 5. ReplicasPerNodeGroup *int64 `type:"integer"` // A user-created description for the replication group. // // ReplicationGroupDescription is a required field ReplicationGroupDescription *string `type:"string" required:"true"` // The replication group identifier. This parameter is stored as a lowercase // string. // // Constraints: // // * A name must contain from 1 to 20 alphanumeric characters or hyphens. // // * The first character must be a letter. // // * A name cannot end with a hyphen or contain two consecutive hyphens. // // ReplicationGroupId is a required field ReplicationGroupId *string `type:"string" required:"true"` // One or more Amazon VPC security groups associated with this replication group. // // Use this parameter only when you are creating a replication group in an Amazon // Virtual Private Cloud (Amazon VPC). SecurityGroupIds []*string `locationNameList:"SecurityGroupId" type:"list"` // A list of Amazon Resource Names (ARN) that uniquely identify the Redis RDB // snapshot files stored in Amazon S3. The snapshot files are used to populate // the replication group. The Amazon S3 object name in the ARN cannot contain // any commas. The list must match the number of node groups (shards) in the // replication group, which means you cannot repartition. // // This parameter is only valid if the Engine parameter is redis. // // Example of an Amazon S3 ARN: arn:aws:s3:::my_bucket/snapshot1.rdb SnapshotArns []*string `locationNameList:"SnapshotArn" type:"list"` // The name of a snapshot from which to restore data into the new replication // group. The snapshot status changes to restoring while the new replication // group is being created. // // This parameter is only valid if the Engine parameter is redis. SnapshotName *string `type:"string"` // The number of days for which ElastiCache retains automatic snapshots before // deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot // that was taken today is retained for 5 days before being deleted. // // This parameter is only valid if the Engine parameter is redis. // // Default: 0 (i.e., automatic backups are disabled for this cache cluster). SnapshotRetentionLimit *int64 `type:"integer"` // The daily time range (in UTC) during which ElastiCache begins taking a daily // snapshot of your node group (shard). // // Example: 05:00-09:00 // // If you do not specify this parameter, ElastiCache automatically chooses an // appropriate time range. // // This parameter is only valid if the Engine parameter is redis. SnapshotWindow *string `type:"string"` // A list of cost allocation tags to be added to this resource. A tag is a key-value // pair. A tag key must be accompanied by a tag value. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateReplicationGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReplicationGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateReplicationGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateReplicationGroupInput"} if s.ReplicationGroupDescription == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationGroupDescription")) } if s.ReplicationGroupId == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationGroupId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateReplicationGroupOutput struct { _ struct{} `type:"structure"` // Contains all of the attributes of a specific Redis replication group. ReplicationGroup *ReplicationGroup `type:"structure"` } // String returns the string representation func (s CreateReplicationGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReplicationGroupOutput) GoString() string { return s.String() } // Represents the input of a CreateSnapshot operation. type CreateSnapshotInput struct { _ struct{} `type:"structure"` // The identifier of an existing cache cluster. The snapshot is created from // this cache cluster. CacheClusterId *string `type:"string"` // The identifier of an existing replication group. The snapshot is created // from this replication group. ReplicationGroupId *string `type:"string"` // A name for the snapshot being created. // // SnapshotName is a required field SnapshotName *string `type:"string" required:"true"` } // String returns the string representation func (s CreateSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateSnapshotInput"} if s.SnapshotName == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateSnapshotOutput struct { _ struct{} `type:"structure"` // Represents a copy of an entire Redis cache cluster as of the time when the // snapshot was taken. Snapshot *Snapshot `type:"structure"` } // String returns the string representation func (s CreateSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSnapshotOutput) GoString() string { return s.String() } // Represents the input of a DeleteCacheCluster operation. type DeleteCacheClusterInput struct { _ struct{} `type:"structure"` // The cache cluster identifier for the cluster to be deleted. This parameter // is not case sensitive. // // CacheClusterId is a required field CacheClusterId *string `type:"string" required:"true"` // The user-supplied name of a final cache cluster snapshot. This is the unique // name that identifies the snapshot. ElastiCache creates the snapshot, and // then deletes the cache cluster immediately afterward. FinalSnapshotIdentifier *string `type:"string"` } // String returns the string representation func (s DeleteCacheClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCacheClusterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteCacheClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteCacheClusterInput"} if s.CacheClusterId == nil { invalidParams.Add(request.NewErrParamRequired("CacheClusterId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteCacheClusterOutput struct { _ struct{} `type:"structure"` // Contains all of the attributes of a specific cache cluster. CacheCluster *CacheCluster `type:"structure"` } // String returns the string representation func (s DeleteCacheClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCacheClusterOutput) GoString() string { return s.String() } // Represents the input of a DeleteCacheParameterGroup operation. type DeleteCacheParameterGroupInput struct { _ struct{} `type:"structure"` // The name of the cache parameter group to delete. // // The specified cache security group must not be associated with any cache // clusters. // // CacheParameterGroupName is a required field CacheParameterGroupName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteCacheParameterGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCacheParameterGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteCacheParameterGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteCacheParameterGroupInput"} if s.CacheParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("CacheParameterGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteCacheParameterGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteCacheParameterGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCacheParameterGroupOutput) GoString() string { return s.String() } // Represents the input of a DeleteCacheSecurityGroup operation. type DeleteCacheSecurityGroupInput struct { _ struct{} `type:"structure"` // The name of the cache security group to delete. // // You cannot delete the default security group. // // CacheSecurityGroupName is a required field CacheSecurityGroupName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteCacheSecurityGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCacheSecurityGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteCacheSecurityGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteCacheSecurityGroupInput"} if s.CacheSecurityGroupName == nil { invalidParams.Add(request.NewErrParamRequired("CacheSecurityGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteCacheSecurityGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteCacheSecurityGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCacheSecurityGroupOutput) GoString() string { return s.String() } // Represents the input of a DeleteCacheSubnetGroup operation. type DeleteCacheSubnetGroupInput struct { _ struct{} `type:"structure"` // The name of the cache subnet group to delete. // // Constraints: Must contain no more than 255 alphanumeric characters or hyphens. // // CacheSubnetGroupName is a required field CacheSubnetGroupName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteCacheSubnetGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCacheSubnetGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteCacheSubnetGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteCacheSubnetGroupInput"} if s.CacheSubnetGroupName == nil { invalidParams.Add(request.NewErrParamRequired("CacheSubnetGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteCacheSubnetGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteCacheSubnetGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCacheSubnetGroupOutput) GoString() string { return s.String() } // Represents the input of a DeleteReplicationGroup operation. type DeleteReplicationGroupInput struct { _ struct{} `type:"structure"` // The name of a final node group (shard) snapshot. ElastiCache creates the // snapshot from the primary node in the cluster, rather than one of the replicas; // this is to ensure that it captures the freshest data. After the final snapshot // is taken, the replication group is immediately deleted. FinalSnapshotIdentifier *string `type:"string"` // The identifier for the cluster to be deleted. This parameter is not case // sensitive. // // ReplicationGroupId is a required field ReplicationGroupId *string `type:"string" required:"true"` // If set to true, all of the read replicas are deleted, but the primary node // is retained. RetainPrimaryCluster *bool `type:"boolean"` } // String returns the string representation func (s DeleteReplicationGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteReplicationGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteReplicationGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteReplicationGroupInput"} if s.ReplicationGroupId == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationGroupId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteReplicationGroupOutput struct { _ struct{} `type:"structure"` // Contains all of the attributes of a specific Redis replication group. ReplicationGroup *ReplicationGroup `type:"structure"` } // String returns the string representation func (s DeleteReplicationGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteReplicationGroupOutput) GoString() string { return s.String() } // Represents the input of a DeleteSnapshot operation. type DeleteSnapshotInput struct { _ struct{} `type:"structure"` // The name of the snapshot to be deleted. // // SnapshotName is a required field SnapshotName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteSnapshotInput"} if s.SnapshotName == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteSnapshotOutput struct { _ struct{} `type:"structure"` // Represents a copy of an entire Redis cache cluster as of the time when the // snapshot was taken. Snapshot *Snapshot `type:"structure"` } // String returns the string representation func (s DeleteSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSnapshotOutput) GoString() string { return s.String() } // Represents the input of a DescribeCacheClusters operation. type DescribeCacheClustersInput struct { _ struct{} `type:"structure"` // The user-supplied cluster identifier. If this parameter is specified, only // information about that specific cache cluster is returned. This parameter // isn't case sensitive. CacheClusterId *string `type:"string"` // An optional marker returned from a prior request. Use this marker for pagination // of results from this operation. If this parameter is specified, the response // includes only records beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a marker is included in the response // so that the remaining results can be retrieved. // // Default: 100 // // Constraints: minimum 20; maximum 100. MaxRecords *int64 `type:"integer"` // An optional flag that can be included in the DescribeCacheCluster request // to retrieve information about the individual cache nodes. ShowCacheNodeInfo *bool `type:"boolean"` } // String returns the string representation func (s DescribeCacheClustersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCacheClustersInput) GoString() string { return s.String() } // Represents the output of a DescribeCacheClusters operation. type DescribeCacheClustersOutput struct { _ struct{} `type:"structure"` // A list of cache clusters. Each item in the list contains detailed information // about one cache cluster. CacheClusters []*CacheCluster `locationNameList:"CacheCluster" type:"list"` // Provides an identifier to allow retrieval of paginated results. Marker *string `type:"string"` } // String returns the string representation func (s DescribeCacheClustersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCacheClustersOutput) GoString() string { return s.String() } // Represents the input of a DescribeCacheEngineVersions operation. type DescribeCacheEngineVersionsInput struct { _ struct{} `type:"structure"` // The name of a specific cache parameter group family to return details for. // // Valid values are: memcached1.4 | redis2.6 | redis2.8 | redis3.2 // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens CacheParameterGroupFamily *string `type:"string"` // If true, specifies that only the default version of the specified engine // or engine and major version combination is to be returned. DefaultOnly *bool `type:"boolean"` // The cache engine to return. Valid values: memcached | redis Engine *string `type:"string"` // The cache engine version to return. // // Example: 1.4.14 EngineVersion *string `type:"string"` // An optional marker returned from a prior request. Use this marker for pagination // of results from this operation. If this parameter is specified, the response // includes only records beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a marker is included in the response // so that the remaining results can be retrieved. // // Default: 100 // // Constraints: minimum 20; maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeCacheEngineVersionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCacheEngineVersionsInput) GoString() string { return s.String() } // Represents the output of a DescribeCacheEngineVersions operation. type DescribeCacheEngineVersionsOutput struct { _ struct{} `type:"structure"` // A list of cache engine version details. Each element in the list contains // detailed information about one cache engine version. CacheEngineVersions []*CacheEngineVersion `locationNameList:"CacheEngineVersion" type:"list"` // Provides an identifier to allow retrieval of paginated results. Marker *string `type:"string"` } // String returns the string representation func (s DescribeCacheEngineVersionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCacheEngineVersionsOutput) GoString() string { return s.String() } // Represents the input of a DescribeCacheParameterGroups operation. type DescribeCacheParameterGroupsInput struct { _ struct{} `type:"structure"` // The name of a specific cache parameter group to return details for. CacheParameterGroupName *string `type:"string"` // An optional marker returned from a prior request. Use this marker for pagination // of results from this operation. If this parameter is specified, the response // includes only records beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a marker is included in the response // so that the remaining results can be retrieved. // // Default: 100 // // Constraints: minimum 20; maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeCacheParameterGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCacheParameterGroupsInput) GoString() string { return s.String() } // Represents the output of a DescribeCacheParameterGroups operation. type DescribeCacheParameterGroupsOutput struct { _ struct{} `type:"structure"` // A list of cache parameter groups. Each element in the list contains detailed // information about one cache parameter group. CacheParameterGroups []*CacheParameterGroup `locationNameList:"CacheParameterGroup" type:"list"` // Provides an identifier to allow retrieval of paginated results. Marker *string `type:"string"` } // String returns the string representation func (s DescribeCacheParameterGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCacheParameterGroupsOutput) GoString() string { return s.String() } // Represents the input of a DescribeCacheParameters operation. type DescribeCacheParametersInput struct { _ struct{} `type:"structure"` // The name of a specific cache parameter group to return details for. // // CacheParameterGroupName is a required field CacheParameterGroupName *string `type:"string" required:"true"` // An optional marker returned from a prior request. Use this marker for pagination // of results from this operation. If this parameter is specified, the response // includes only records beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a marker is included in the response // so that the remaining results can be retrieved. // // Default: 100 // // Constraints: minimum 20; maximum 100. MaxRecords *int64 `type:"integer"` // The parameter types to return. // // Valid values: user | system | engine-default Source *string `type:"string"` } // String returns the string representation func (s DescribeCacheParametersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCacheParametersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeCacheParametersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeCacheParametersInput"} if s.CacheParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("CacheParameterGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a DescribeCacheParameters operation. type DescribeCacheParametersOutput struct { _ struct{} `type:"structure"` // A list of parameters specific to a particular cache node type. Each element // in the list contains detailed information about one parameter. CacheNodeTypeSpecificParameters []*CacheNodeTypeSpecificParameter `locationNameList:"CacheNodeTypeSpecificParameter" type:"list"` // Provides an identifier to allow retrieval of paginated results. Marker *string `type:"string"` // A list of Parameter instances. Parameters []*Parameter `locationNameList:"Parameter" type:"list"` } // String returns the string representation func (s DescribeCacheParametersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCacheParametersOutput) GoString() string { return s.String() } // Represents the input of a DescribeCacheSecurityGroups operation. type DescribeCacheSecurityGroupsInput struct { _ struct{} `type:"structure"` // The name of the cache security group to return details for. CacheSecurityGroupName *string `type:"string"` // An optional marker returned from a prior request. Use this marker for pagination // of results from this operation. If this parameter is specified, the response // includes only records beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a marker is included in the response // so that the remaining results can be retrieved. // // Default: 100 // // Constraints: minimum 20; maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeCacheSecurityGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCacheSecurityGroupsInput) GoString() string { return s.String() } // Represents the output of a DescribeCacheSecurityGroups operation. type DescribeCacheSecurityGroupsOutput struct { _ struct{} `type:"structure"` // A list of cache security groups. Each element in the list contains detailed // information about one group. CacheSecurityGroups []*CacheSecurityGroup `locationNameList:"CacheSecurityGroup" type:"list"` // Provides an identifier to allow retrieval of paginated results. Marker *string `type:"string"` } // String returns the string representation func (s DescribeCacheSecurityGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCacheSecurityGroupsOutput) GoString() string { return s.String() } // Represents the input of a DescribeCacheSubnetGroups operation. type DescribeCacheSubnetGroupsInput struct { _ struct{} `type:"structure"` // The name of the cache subnet group to return details for. CacheSubnetGroupName *string `type:"string"` // An optional marker returned from a prior request. Use this marker for pagination // of results from this operation. If this parameter is specified, the response // includes only records beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a marker is included in the response // so that the remaining results can be retrieved. // // Default: 100 // // Constraints: minimum 20; maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeCacheSubnetGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCacheSubnetGroupsInput) GoString() string { return s.String() } // Represents the output of a DescribeCacheSubnetGroups operation. type DescribeCacheSubnetGroupsOutput struct { _ struct{} `type:"structure"` // A list of cache subnet groups. Each element in the list contains detailed // information about one group. CacheSubnetGroups []*CacheSubnetGroup `locationNameList:"CacheSubnetGroup" type:"list"` // Provides an identifier to allow retrieval of paginated results. Marker *string `type:"string"` } // String returns the string representation func (s DescribeCacheSubnetGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCacheSubnetGroupsOutput) GoString() string { return s.String() } // Represents the input of a DescribeEngineDefaultParameters operation. type DescribeEngineDefaultParametersInput struct { _ struct{} `type:"structure"` // The name of the cache parameter group family. // // Valid values are: memcached1.4 | redis2.6 | redis2.8 | redis3.2 // // CacheParameterGroupFamily is a required field CacheParameterGroupFamily *string `type:"string" required:"true"` // An optional marker returned from a prior request. Use this marker for pagination // of results from this operation. If this parameter is specified, the response // includes only records beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a marker is included in the response // so that the remaining results can be retrieved. // // Default: 100 // // Constraints: minimum 20; maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeEngineDefaultParametersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEngineDefaultParametersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeEngineDefaultParametersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeEngineDefaultParametersInput"} if s.CacheParameterGroupFamily == nil { invalidParams.Add(request.NewErrParamRequired("CacheParameterGroupFamily")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeEngineDefaultParametersOutput struct { _ struct{} `type:"structure"` // Represents the output of a DescribeEngineDefaultParameters operation. EngineDefaults *EngineDefaults `type:"structure"` } // String returns the string representation func (s DescribeEngineDefaultParametersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEngineDefaultParametersOutput) GoString() string { return s.String() } // Represents the input of a DescribeEvents operation. type DescribeEventsInput struct { _ struct{} `type:"structure"` // The number of minutes' worth of events to retrieve. Duration *int64 `type:"integer"` // The end of the time interval for which to retrieve events, specified in ISO // 8601 format. EndTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // An optional marker returned from a prior request. Use this marker for pagination // of results from this operation. If this parameter is specified, the response // includes only records beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a marker is included in the response // so that the remaining results can be retrieved. // // Default: 100 // // Constraints: minimum 20; maximum 100. MaxRecords *int64 `type:"integer"` // The identifier of the event source for which events are returned. If not // specified, all sources are included in the response. SourceIdentifier *string `type:"string"` // The event source to retrieve events for. If no value is specified, all events // are returned. SourceType *string `type:"string" enum:"SourceType"` // The beginning of the time interval to retrieve events for, specified in ISO // 8601 format. StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s DescribeEventsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEventsInput) GoString() string { return s.String() } // Represents the output of a DescribeEvents operation. type DescribeEventsOutput struct { _ struct{} `type:"structure"` // A list of events. Each element in the list contains detailed information // about one event. Events []*Event `locationNameList:"Event" type:"list"` // Provides an identifier to allow retrieval of paginated results. Marker *string `type:"string"` } // String returns the string representation func (s DescribeEventsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEventsOutput) GoString() string { return s.String() } // Represents the input of a DescribeReplicationGroups operation. type DescribeReplicationGroupsInput struct { _ struct{} `type:"structure"` // An optional marker returned from a prior request. Use this marker for pagination // of results from this operation. If this parameter is specified, the response // includes only records beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a marker is included in the response // so that the remaining results can be retrieved. // // Default: 100 // // Constraints: minimum 20; maximum 100. MaxRecords *int64 `type:"integer"` // The identifier for the replication group to be described. This parameter // is not case sensitive. // // If you do not specify this parameter, information about all replication groups // is returned. ReplicationGroupId *string `type:"string"` } // String returns the string representation func (s DescribeReplicationGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReplicationGroupsInput) GoString() string { return s.String() } // Represents the output of a DescribeReplicationGroups operation. type DescribeReplicationGroupsOutput struct { _ struct{} `type:"structure"` // Provides an identifier to allow retrieval of paginated results. Marker *string `type:"string"` // A list of replication groups. Each item in the list contains detailed information // about one replication group. ReplicationGroups []*ReplicationGroup `locationNameList:"ReplicationGroup" type:"list"` } // String returns the string representation func (s DescribeReplicationGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReplicationGroupsOutput) GoString() string { return s.String() } // Represents the input of a DescribeReservedCacheNodes operation. type DescribeReservedCacheNodesInput struct { _ struct{} `type:"structure"` // The cache node type filter value. Use this parameter to show only those reservations // matching the specified cache node type. // // Valid node types are as follows: // // * General purpose: // // Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, // cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge, cache.m4.large, cache.m4.xlarge, // cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge // // Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, // cache.m1.xlarge // // * Compute optimized: cache.c1.xlarge // // * Memory optimized: // // Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, // cache.r3.8xlarge // // Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge // // Notes: // // * All T2 instances are created in an Amazon Virtual Private Cloud (Amazon // VPC). // // * Redis backup/restore is not supported for Redis (cluster mode disabled) // T1 and T2 instances. Backup/restore is supported on Redis (cluster mode // enabled) T2 instances. // // * Redis Append-only files (AOF) functionality is not supported for T1 // or T2 instances. // // For a complete listing of node types and specifications, see Amazon ElastiCache // Product Features and Details (http://aws.amazon.com/elasticache/details) // and either Cache Node Type-Specific Parameters for Memcached (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#ParameterGroups.Memcached.NodeSpecific) // or Cache Node Type-Specific Parameters for Redis (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#ParameterGroups.Redis.NodeSpecific). CacheNodeType *string `type:"string"` // The duration filter value, specified in years or seconds. Use this parameter // to show only reservations for this duration. // // Valid Values: 1 | 3 | 31536000 | 94608000 Duration *string `type:"string"` // An optional marker returned from a prior request. Use this marker for pagination // of results from this operation. If this parameter is specified, the response // includes only records beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a marker is included in the response // so that the remaining results can be retrieved. // // Default: 100 // // Constraints: minimum 20; maximum 100. MaxRecords *int64 `type:"integer"` // The offering type filter value. Use this parameter to show only the available // offerings matching the specified offering type. // // Valid values: "Light Utilization"|"Medium Utilization"|"Heavy Utilization" OfferingType *string `type:"string"` // The product description filter value. Use this parameter to show only those // reservations matching the specified product description. ProductDescription *string `type:"string"` // The reserved cache node identifier filter value. Use this parameter to show // only the reservation that matches the specified reservation ID. ReservedCacheNodeId *string `type:"string"` // The offering identifier filter value. Use this parameter to show only purchased // reservations matching the specified offering identifier. ReservedCacheNodesOfferingId *string `type:"string"` } // String returns the string representation func (s DescribeReservedCacheNodesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedCacheNodesInput) GoString() string { return s.String() } // Represents the input of a DescribeReservedCacheNodesOfferings operation. type DescribeReservedCacheNodesOfferingsInput struct { _ struct{} `type:"structure"` // The cache node type filter value. Use this parameter to show only the available // offerings matching the specified cache node type. // // Valid node types are as follows: // // * General purpose: // // Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, // cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge, cache.m4.large, cache.m4.xlarge, // cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge // // Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, // cache.m1.xlarge // // * Compute optimized: cache.c1.xlarge // // * Memory optimized: // // Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, // cache.r3.8xlarge // // Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge // // Notes: // // * All T2 instances are created in an Amazon Virtual Private Cloud (Amazon // VPC). // // * Redis backup/restore is not supported for Redis (cluster mode disabled) // T1 and T2 instances. Backup/restore is supported on Redis (cluster mode // enabled) T2 instances. // // * Redis Append-only files (AOF) functionality is not supported for T1 // or T2 instances. // // For a complete listing of node types and specifications, see Amazon ElastiCache // Product Features and Details (http://aws.amazon.com/elasticache/details) // and either Cache Node Type-Specific Parameters for Memcached (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#ParameterGroups.Memcached.NodeSpecific) // or Cache Node Type-Specific Parameters for Redis (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#ParameterGroups.Redis.NodeSpecific). CacheNodeType *string `type:"string"` // Duration filter value, specified in years or seconds. Use this parameter // to show only reservations for a given duration. // // Valid Values: 1 | 3 | 31536000 | 94608000 Duration *string `type:"string"` // An optional marker returned from a prior request. Use this marker for pagination // of results from this operation. If this parameter is specified, the response // includes only records beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a marker is included in the response // so that the remaining results can be retrieved. // // Default: 100 // // Constraints: minimum 20; maximum 100. MaxRecords *int64 `type:"integer"` // The offering type filter value. Use this parameter to show only the available // offerings matching the specified offering type. // // Valid Values: "Light Utilization"|"Medium Utilization"|"Heavy Utilization" OfferingType *string `type:"string"` // The product description filter value. Use this parameter to show only the // available offerings matching the specified product description. ProductDescription *string `type:"string"` // The offering identifier filter value. Use this parameter to show only the // available offering that matches the specified reservation identifier. // // Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706 ReservedCacheNodesOfferingId *string `type:"string"` } // String returns the string representation func (s DescribeReservedCacheNodesOfferingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedCacheNodesOfferingsInput) GoString() string { return s.String() } // Represents the output of a DescribeReservedCacheNodesOfferings operation. type DescribeReservedCacheNodesOfferingsOutput struct { _ struct{} `type:"structure"` // Provides an identifier to allow retrieval of paginated results. Marker *string `type:"string"` // A list of reserved cache node offerings. Each element in the list contains // detailed information about one offering. ReservedCacheNodesOfferings []*ReservedCacheNodesOffering `locationNameList:"ReservedCacheNodesOffering" type:"list"` } // String returns the string representation func (s DescribeReservedCacheNodesOfferingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedCacheNodesOfferingsOutput) GoString() string { return s.String() } // Represents the output of a DescribeReservedCacheNodes operation. type DescribeReservedCacheNodesOutput struct { _ struct{} `type:"structure"` // Provides an identifier to allow retrieval of paginated results. Marker *string `type:"string"` // A list of reserved cache nodes. Each element in the list contains detailed // information about one node. ReservedCacheNodes []*ReservedCacheNode `locationNameList:"ReservedCacheNode" type:"list"` } // String returns the string representation func (s DescribeReservedCacheNodesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedCacheNodesOutput) GoString() string { return s.String() } // Represents the input of a DescribeSnapshotsMessage operation. type DescribeSnapshotsInput struct { _ struct{} `type:"structure"` // A user-supplied cluster identifier. If this parameter is specified, only // snapshots associated with that specific cache cluster are described. CacheClusterId *string `type:"string"` // An optional marker returned from a prior request. Use this marker for pagination // of results from this operation. If this parameter is specified, the response // includes only records beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a marker is included in the response // so that the remaining results can be retrieved. // // Default: 50 // // Constraints: minimum 20; maximum 50. MaxRecords *int64 `type:"integer"` // A user-supplied replication group identifier. If this parameter is specified, // only snapshots associated with that specific replication group are described. ReplicationGroupId *string `type:"string"` // A boolean value which if true, the node group (shard) configuration is included // in the snapshot description. ShowNodeGroupConfig *bool `type:"boolean"` // A user-supplied name of the snapshot. If this parameter is specified, only // this snapshot are described. SnapshotName *string `type:"string"` // If set to system, the output shows snapshots that were automatically created // by ElastiCache. If set to user the output shows snapshots that were manually // created. If omitted, the output shows both automatically and manually created // snapshots. SnapshotSource *string `type:"string"` } // String returns the string representation func (s DescribeSnapshotsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSnapshotsInput) GoString() string { return s.String() } // Represents the output of a DescribeSnapshots operation. type DescribeSnapshotsOutput struct { _ struct{} `type:"structure"` // An optional marker returned from a prior request. Use this marker for pagination // of results from this operation. If this parameter is specified, the response // includes only records beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // A list of snapshots. Each item in the list contains detailed information // about one snapshot. Snapshots []*Snapshot `locationNameList:"Snapshot" type:"list"` } // String returns the string representation func (s DescribeSnapshotsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSnapshotsOutput) GoString() string { return s.String() } // Provides ownership and status information for an Amazon EC2 security group. type EC2SecurityGroup struct { _ struct{} `type:"structure"` // The name of the Amazon EC2 security group. EC2SecurityGroupName *string `type:"string"` // The AWS account ID of the Amazon EC2 security group owner. EC2SecurityGroupOwnerId *string `type:"string"` // The status of the Amazon EC2 security group. Status *string `type:"string"` } // String returns the string representation func (s EC2SecurityGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EC2SecurityGroup) GoString() string { return s.String() } // Represents the information required for client programs to connect to a cache // node. type Endpoint struct { _ struct{} `type:"structure"` // The DNS hostname of the cache node. Address *string `type:"string"` // The port number that the cache engine is listening on. Port *int64 `type:"integer"` } // String returns the string representation func (s Endpoint) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Endpoint) GoString() string { return s.String() } // Represents the output of a DescribeEngineDefaultParameters operation. type EngineDefaults struct { _ struct{} `type:"structure"` // A list of parameters specific to a particular cache node type. Each element // in the list contains detailed information about one parameter. CacheNodeTypeSpecificParameters []*CacheNodeTypeSpecificParameter `locationNameList:"CacheNodeTypeSpecificParameter" type:"list"` // Specifies the name of the cache parameter group family to which the engine // default parameters apply. // // Valid values are: memcached1.4 | redis2.6 | redis2.8 | redis3.2 CacheParameterGroupFamily *string `type:"string"` // Provides an identifier to allow retrieval of paginated results. Marker *string `type:"string"` // Contains a list of engine default parameters. Parameters []*Parameter `locationNameList:"Parameter" type:"list"` } // String returns the string representation func (s EngineDefaults) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EngineDefaults) GoString() string { return s.String() } // Represents a single occurrence of something interesting within the system. // Some examples of events are creating a cache cluster, adding or removing // a cache node, or rebooting a node. type Event struct { _ struct{} `type:"structure"` // The date and time when the event occurred. Date *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The text of the event. Message *string `type:"string"` // The identifier for the source of the event. For example, if the event occurred // at the cache cluster level, the identifier would be the name of the cache // cluster. SourceIdentifier *string `type:"string"` // Specifies the origin of this event - a cache cluster, a parameter group, // a security group, etc. SourceType *string `type:"string" enum:"SourceType"` } // String returns the string representation func (s Event) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Event) GoString() string { return s.String() } // The input parameters for the ListAllowedNodeTypeModifications operation. type ListAllowedNodeTypeModificationsInput struct { _ struct{} `type:"structure"` // The name of the cache cluster you want to scale up to a larger node instanced // type. ElastiCache uses the cluster id to identify the current node type of // this cluster and from that to create a list of node types you can scale up // to. // // You must provide a value for either the CacheClusterId or the ReplicationGroupId. CacheClusterId *string `type:"string"` // The name of the replication group want to scale up to a larger node type. // ElastiCache uses the replication group id to identify the current node type // being used by this replication group, and from that to create a list of node // types you can scale up to. // // You must provide a value for either the CacheClusterId or the ReplicationGroupId. ReplicationGroupId *string `type:"string"` } // String returns the string representation func (s ListAllowedNodeTypeModificationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAllowedNodeTypeModificationsInput) GoString() string { return s.String() } type ListAllowedNodeTypeModificationsOutput struct { _ struct{} `type:"structure"` ScaleUpModifications []*string `type:"list"` } // String returns the string representation func (s ListAllowedNodeTypeModificationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAllowedNodeTypeModificationsOutput) GoString() string { return s.String() } // The input parameters for the ListTagsForResource operation. type ListTagsForResourceInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the resource for which you want the list // of tags, for example arn:aws:elasticache:us-west-2:0123456789:cluster:myCluster // or arn:aws:elasticache:us-west-2:0123456789:snapshot:mySnapshot. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). // // ResourceName is a required field ResourceName *string `type:"string" required:"true"` } // String returns the string representation func (s ListTagsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsForResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} if s.ResourceName == nil { invalidParams.Add(request.NewErrParamRequired("ResourceName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the input of a ModifyCacheCluster operation. type ModifyCacheClusterInput struct { _ struct{} `type:"structure"` // Specifies whether the new nodes in this Memcached cache cluster are all created // in a single Availability Zone or created across multiple Availability Zones. // // Valid values: single-az | cross-az. // // This option is only supported for Memcached cache clusters. // // You cannot specify single-az if the Memcached cache cluster already has cache // nodes in different Availability Zones. If cross-az is specified, existing // Memcached nodes remain in their current Availability Zone. // // Only newly created nodes are located in different Availability Zones. For // instructions on how to move existing Memcached nodes to different Availability // Zones, see the Availability Zone Considerations section of Cache Node Considerations // for Memcached (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheNode.Memcached.html). AZMode *string `type:"string" enum:"AZMode"` // If true, this parameter causes the modifications in this request and any // pending modifications to be applied, asynchronously and as soon as possible, // regardless of the PreferredMaintenanceWindow setting for the cache cluster. // // If false, changes to the cache cluster are applied on the next maintenance // reboot, or the next failure reboot, whichever occurs first. // // If you perform a ModifyCacheCluster before a pending modification is applied, // the pending modification is replaced by the newer modification. // // Valid values: true | false // // Default: false ApplyImmediately *bool `type:"boolean"` // This parameter is currently disabled. AutoMinorVersionUpgrade *bool `type:"boolean"` // The cache cluster identifier. This value is stored as a lowercase string. // // CacheClusterId is a required field CacheClusterId *string `type:"string" required:"true"` // A list of cache node IDs to be removed. A node ID is a numeric identifier // (0001, 0002, etc.). This parameter is only valid when NumCacheNodes is less // than the existing number of cache nodes. The number of cache node IDs supplied // in this parameter must match the difference between the existing number of // cache nodes in the cluster or pending cache nodes, whichever is greater, // and the value of NumCacheNodes in the request. // // For example: If you have 3 active cache nodes, 7 pending cache nodes, and // the number of cache nodes in this ModifyCacheCluser call is 5, you must list // 2 (7 - 5) cache node IDs to remove. CacheNodeIdsToRemove []*string `locationNameList:"CacheNodeId" type:"list"` // A valid cache node type that you want to scale this cache cluster up to. CacheNodeType *string `type:"string"` // The name of the cache parameter group to apply to this cache cluster. This // change is asynchronously applied as soon as possible for parameters when // the ApplyImmediately parameter is specified as true for this request. CacheParameterGroupName *string `type:"string"` // A list of cache security group names to authorize on this cache cluster. // This change is asynchronously applied as soon as possible. // // You can use this parameter only with clusters that are created outside of // an Amazon Virtual Private Cloud (Amazon VPC). // // Constraints: Must contain no more than 255 alphanumeric characters. Must // not be "Default". CacheSecurityGroupNames []*string `locationNameList:"CacheSecurityGroupName" type:"list"` // The upgraded version of the cache engine to be run on the cache nodes. // // Important: You can upgrade to a newer engine version (see Selecting a Cache // Engine and Version (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/SelectEngine.html#VersionManagement)), // but you cannot downgrade to an earlier engine version. If you want to use // an earlier engine version, you must delete the existing cache cluster and // create it anew with the earlier engine version. EngineVersion *string `type:"string"` // The list of Availability Zones where the new Memcached cache nodes are created. // // This parameter is only valid when NumCacheNodes in the request is greater // than the sum of the number of active cache nodes and the number of cache // nodes pending creation (which may be zero). The number of Availability Zones // supplied in this list must match the cache nodes being added in this request. // // This option is only supported on Memcached clusters. // // Scenarios: // // * Scenario 1: You have 3 active nodes and wish to add 2 nodes. Specify // NumCacheNodes=5 (3 + 2) and optionally specify two Availability Zones // for the two new nodes. // // * Scenario 2: You have 3 active nodes and 2 nodes pending creation (from // the scenario 1 call) and want to add 1 more node. Specify NumCacheNodes=6 // ((3 + 2) + 1) and optionally specify an Availability Zone for the new // node. // // * Scenario 3: You want to cancel all pending operations. Specify NumCacheNodes=3 // to cancel all pending operations. // // The Availability Zone placement of nodes pending creation cannot be modified. // If you wish to cancel any nodes pending creation, add 0 nodes by setting // NumCacheNodes to the number of current nodes. // // If cross-az is specified, existing Memcached nodes remain in their current // Availability Zone. Only newly created nodes can be located in different Availability // Zones. For guidance on how to move existing Memcached nodes to different // Availability Zones, see the Availability Zone Considerations section of Cache // Node Considerations for Memcached (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheNode.Memcached.html). // // Impact of new add/remove requests upon pending requests // // * Scenario-1 // // Pending Action: Delete // // New Request: Delete // // Result: The new delete, pending or immediate, replaces the pending delete. // // * Scenario-2 // // Pending Action: Delete // // New Request: Create // // Result: The new create, pending or immediate, replaces the pending delete. // // * Scenario-3 // // Pending Action: Create // // New Request: Delete // // Result: The new delete, pending or immediate, replaces the pending create. // // * Scenario-4 // // Pending Action: Create // // New Request: Create // // Result: The new create is added to the pending create. // // Important: If the new create request is Apply Immediately - Yes, all creates // are performed immediately. If the new create request is Apply Immediately // - No, all creates are pending. NewAvailabilityZones []*string `locationNameList:"PreferredAvailabilityZone" type:"list"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to which notifications // are sent. // // The Amazon SNS topic owner must be same as the cache cluster owner. NotificationTopicArn *string `type:"string"` // The status of the Amazon SNS notification topic. Notifications are sent only // if the status is active. // // Valid values: active | inactive NotificationTopicStatus *string `type:"string"` // The number of cache nodes that the cache cluster should have. If the value // for NumCacheNodes is greater than the sum of the number of current cache // nodes and the number of cache nodes pending creation (which may be zero), // more nodes are added. If the value is less than the number of existing cache // nodes, nodes are removed. If the value is equal to the number of current // cache nodes, any pending add or remove requests are canceled. // // If you are removing cache nodes, you must use the CacheNodeIdsToRemove parameter // to provide the IDs of the specific cache nodes to remove. // // For clusters running Redis, this value must be 1. For clusters running Memcached, // this value must be between 1 and 20. // // Adding or removing Memcached cache nodes can be applied immediately or as // a pending operation (see ApplyImmediately). // // A pending operation to modify the number of cache nodes in a cluster during // its maintenance window, whether by adding or removing nodes in accordance // with the scale out architecture, is not queued. The customer's latest request // to add or remove nodes to the cluster overrides any previous pending operations // to modify the number of cache nodes in the cluster. For example, a request // to remove 2 nodes would override a previous pending operation to remove 3 // nodes. Similarly, a request to add 2 nodes would override a previous pending // operation to remove 3 nodes and vice versa. As Memcached cache nodes may // now be provisioned in different Availability Zones with flexible cache node // placement, a request to add nodes does not automatically override a previous // pending operation to add nodes. The customer can modify the previous pending // operation to add more nodes or explicitly cancel the pending request and // retry the new request. To cancel pending operations to modify the number // of cache nodes in a cluster, use the ModifyCacheCluster request and set NumCacheNodes // equal to the number of cache nodes currently in the cache cluster. NumCacheNodes *int64 `type:"integer"` // Specifies the weekly time range during which maintenance on the cluster is // performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi // (24H Clock UTC). The minimum maintenance window is a 60 minute period. // // Valid values for ddd are: // // * sun // // * mon // // * tue // // * wed // // * thu // // * fri // // * sat // // Example: sun:23:00-mon:01:30 PreferredMaintenanceWindow *string `type:"string"` // Specifies the VPC Security Groups associated with the cache cluster. // // This parameter can be used only with clusters that are created in an Amazon // Virtual Private Cloud (Amazon VPC). SecurityGroupIds []*string `locationNameList:"SecurityGroupId" type:"list"` // The number of days for which ElastiCache retains automatic cache cluster // snapshots before deleting them. For example, if you set SnapshotRetentionLimit // to 5, a snapshot that was taken today is retained for 5 days before being // deleted. // // If the value of SnapshotRetentionLimit is set to zero (0), backups are turned // off. SnapshotRetentionLimit *int64 `type:"integer"` // The daily time range (in UTC) during which ElastiCache begins taking a daily // snapshot of your cache cluster. SnapshotWindow *string `type:"string"` } // String returns the string representation func (s ModifyCacheClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyCacheClusterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyCacheClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyCacheClusterInput"} if s.CacheClusterId == nil { invalidParams.Add(request.NewErrParamRequired("CacheClusterId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyCacheClusterOutput struct { _ struct{} `type:"structure"` // Contains all of the attributes of a specific cache cluster. CacheCluster *CacheCluster `type:"structure"` } // String returns the string representation func (s ModifyCacheClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyCacheClusterOutput) GoString() string { return s.String() } // Represents the input of a ModifyCacheParameterGroup operation. type ModifyCacheParameterGroupInput struct { _ struct{} `type:"structure"` // The name of the cache parameter group to modify. // // CacheParameterGroupName is a required field CacheParameterGroupName *string `type:"string" required:"true"` // An array of parameter names and values for the parameter update. You must // supply at least one parameter name and value; subsequent arguments are optional. // A maximum of 20 parameters may be modified per request. // // ParameterNameValues is a required field ParameterNameValues []*ParameterNameValue `locationNameList:"ParameterNameValue" type:"list" required:"true"` } // String returns the string representation func (s ModifyCacheParameterGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyCacheParameterGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyCacheParameterGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyCacheParameterGroupInput"} if s.CacheParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("CacheParameterGroupName")) } if s.ParameterNameValues == nil { invalidParams.Add(request.NewErrParamRequired("ParameterNameValues")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the input of a ModifyCacheSubnetGroup operation. type ModifyCacheSubnetGroupInput struct { _ struct{} `type:"structure"` // A description of the cache subnet group. CacheSubnetGroupDescription *string `type:"string"` // The name for the cache subnet group. This value is stored as a lowercase // string. // // Constraints: Must contain no more than 255 alphanumeric characters or hyphens. // // Example: mysubnetgroup // // CacheSubnetGroupName is a required field CacheSubnetGroupName *string `type:"string" required:"true"` // The EC2 subnet IDs for the cache subnet group. SubnetIds []*string `locationNameList:"SubnetIdentifier" type:"list"` } // String returns the string representation func (s ModifyCacheSubnetGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyCacheSubnetGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyCacheSubnetGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyCacheSubnetGroupInput"} if s.CacheSubnetGroupName == nil { invalidParams.Add(request.NewErrParamRequired("CacheSubnetGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyCacheSubnetGroupOutput struct { _ struct{} `type:"structure"` // Represents the output of one of the following operations: // // * CreateCacheSubnetGroup // // * ModifyCacheSubnetGroup CacheSubnetGroup *CacheSubnetGroup `type:"structure"` } // String returns the string representation func (s ModifyCacheSubnetGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyCacheSubnetGroupOutput) GoString() string { return s.String() } // Represents the input of a ModifyReplicationGroups operation. type ModifyReplicationGroupInput struct { _ struct{} `type:"structure"` // If true, this parameter causes the modifications in this request and any // pending modifications to be applied, asynchronously and as soon as possible, // regardless of the PreferredMaintenanceWindow setting for the replication // group. // // If false, changes to the nodes in the replication group are applied on the // next maintenance reboot, or the next failure reboot, whichever occurs first. // // Valid values: true | false // // Default: false ApplyImmediately *bool `type:"boolean"` // This parameter is currently disabled. AutoMinorVersionUpgrade *bool `type:"boolean"` // Determines whether a read replica is automatically promoted to read/write // primary if the existing primary encounters a failure. // // Valid values: true | false // // ElastiCache Multi-AZ replication groups are not supported on: // // Redis versions earlier than 2.8.6. // // Redis (cluster mode disabled):T1 and T2 cache node types. // // Redis (cluster mode enabled): T1 node types. AutomaticFailoverEnabled *bool `type:"boolean"` // A valid cache node type that you want to scale this replication group to. CacheNodeType *string `type:"string"` // The name of the cache parameter group to apply to all of the clusters in // this replication group. This change is asynchronously applied as soon as // possible for parameters when the ApplyImmediately parameter is specified // as true for this request. CacheParameterGroupName *string `type:"string"` // A list of cache security group names to authorize for the clusters in this // replication group. This change is asynchronously applied as soon as possible. // // This parameter can be used only with replication group containing cache clusters // running outside of an Amazon Virtual Private Cloud (Amazon VPC). // // Constraints: Must contain no more than 255 alphanumeric characters. Must // not be Default. CacheSecurityGroupNames []*string `locationNameList:"CacheSecurityGroupName" type:"list"` // The upgraded version of the cache engine to be run on the cache clusters // in the replication group. // // Important: You can upgrade to a newer engine version (see Selecting a Cache // Engine and Version (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/SelectEngine.html#VersionManagement)), // but you cannot downgrade to an earlier engine version. If you want to use // an earlier engine version, you must delete the existing replication group // and create it anew with the earlier engine version. EngineVersion *string `type:"string"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to which notifications // are sent. // // The Amazon SNS topic owner must be same as the replication group owner. NotificationTopicArn *string `type:"string"` // The status of the Amazon SNS notification topic for the replication group. // Notifications are sent only if the status is active. // // Valid values: active | inactive NotificationTopicStatus *string `type:"string"` // Specifies the weekly time range during which maintenance on the cluster is // performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi // (24H Clock UTC). The minimum maintenance window is a 60 minute period. // // Valid values for ddd are: // // * sun // // * mon // // * tue // // * wed // // * thu // // * fri // // * sat // // Example: sun:23:00-mon:01:30 PreferredMaintenanceWindow *string `type:"string"` // For replication groups with a single primary, if this parameter is specified, // ElastiCache promotes the specified cluster in the specified replication group // to the primary role. The nodes of all other clusters in the replication group // are read replicas. PrimaryClusterId *string `type:"string"` // A description for the replication group. Maximum length is 255 characters. ReplicationGroupDescription *string `type:"string"` // The identifier of the replication group to modify. // // ReplicationGroupId is a required field ReplicationGroupId *string `type:"string" required:"true"` // Specifies the VPC Security Groups associated with the cache clusters in the // replication group. // // This parameter can be used only with replication group containing cache clusters // running in an Amazon Virtual Private Cloud (Amazon VPC). SecurityGroupIds []*string `locationNameList:"SecurityGroupId" type:"list"` // The number of days for which ElastiCache retains automatic node group (shard) // snapshots before deleting them. For example, if you set SnapshotRetentionLimit // to 5, a snapshot that was taken today is retained for 5 days before being // deleted. // // Important If the value of SnapshotRetentionLimit is set to zero (0), backups // are turned off. SnapshotRetentionLimit *int64 `type:"integer"` // The daily time range (in UTC) during which ElastiCache begins taking a daily // snapshot of the node group (shard) specified by SnapshottingClusterId. // // Example: 05:00-09:00 // // If you do not specify this parameter, ElastiCache automatically chooses an // appropriate time range. SnapshotWindow *string `type:"string"` // The cache cluster ID that is used as the daily snapshot source for the replication // group. This parameter cannot be set for Redis (cluster mode enabled) replication // groups. SnapshottingClusterId *string `type:"string"` } // String returns the string representation func (s ModifyReplicationGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyReplicationGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyReplicationGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyReplicationGroupInput"} if s.ReplicationGroupId == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationGroupId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyReplicationGroupOutput struct { _ struct{} `type:"structure"` // Contains all of the attributes of a specific Redis replication group. ReplicationGroup *ReplicationGroup `type:"structure"` } // String returns the string representation func (s ModifyReplicationGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyReplicationGroupOutput) GoString() string { return s.String() } // Represents a collection of cache nodes in a replication group. One node in // the node group is the read/write Primary node. All the other nodes are read-only // Replica nodes. type NodeGroup struct { _ struct{} `type:"structure"` // The identifier for the node group (shard). A Redis (cluster mode disabled) // replication group contains only 1 node group; therefore, the node group ID // is 0001. A Redis (cluster mode enabled) replication group contains 1 to 15 // node groups numbered 0001 to 0015. NodeGroupId *string `type:"string"` // A list containing information about individual nodes within the node group // (shard). NodeGroupMembers []*NodeGroupMember `locationNameList:"NodeGroupMember" type:"list"` // The endpoint of the primary node in this node group (shard). PrimaryEndpoint *Endpoint `type:"structure"` // The keyspace for this node group (shard). Slots *string `type:"string"` // The current state of this replication group - creating, available, etc. Status *string `type:"string"` } // String returns the string representation func (s NodeGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NodeGroup) GoString() string { return s.String() } // node group (shard) configuration options. Each node group (shard) configuration // has the following: Slots, PrimaryAvailabilityZone, ReplicaAvailabilityZones, // ReplicaCount. type NodeGroupConfiguration struct { _ struct{} `type:"structure"` // The Availability Zone where the primary node of this node group (shard) is // launched. PrimaryAvailabilityZone *string `type:"string"` // A list of Availability Zones to be used for the read replicas. The number // of Availability Zones in this list must match the value of ReplicaCount or // ReplicasPerNodeGroup if not specified. ReplicaAvailabilityZones []*string `locationNameList:"AvailabilityZone" type:"list"` // The number of read replica nodes in this node group (shard). ReplicaCount *int64 `type:"integer"` // A string that specifies the keyspaces as a series of comma separated values. // Keyspaces are 0 to 16,383. The string is in the format startkey-endkey. // // Example: "0-3999" Slots *string `type:"string"` } // String returns the string representation func (s NodeGroupConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NodeGroupConfiguration) GoString() string { return s.String() } // Represents a single node within a node group (shard). type NodeGroupMember struct { _ struct{} `type:"structure"` // The ID of the cache cluster to which the node belongs. CacheClusterId *string `type:"string"` // The ID of the node within its cache cluster. A node ID is a numeric identifier // (0001, 0002, etc.). CacheNodeId *string `type:"string"` // The role that is currently assigned to the node - primary or replica. CurrentRole *string `type:"string"` // The name of the Availability Zone in which the node is located. PreferredAvailabilityZone *string `type:"string"` // Represents the information required for client programs to connect to a cache // node. ReadEndpoint *Endpoint `type:"structure"` } // String returns the string representation func (s NodeGroupMember) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NodeGroupMember) GoString() string { return s.String() } // Represents an individual cache node in a snapshot of a cache cluster. type NodeSnapshot struct { _ struct{} `type:"structure"` // A unique identifier for the source cache cluster. CacheClusterId *string `type:"string"` // The date and time when the cache node was created in the source cache cluster. CacheNodeCreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The cache node identifier for the node in the source cache cluster. CacheNodeId *string `type:"string"` // The size of the cache on the source cache node. CacheSize *string `type:"string"` // The configuration for the source node group (shard). NodeGroupConfiguration *NodeGroupConfiguration `type:"structure"` // A unique identifier for the source node group (shard). NodeGroupId *string `type:"string"` // The date and time when the source node's metadata and cache data set was // obtained for the snapshot. SnapshotCreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s NodeSnapshot) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NodeSnapshot) GoString() string { return s.String() } // Describes a notification topic and its status. Notification topics are used // for publishing ElastiCache events to subscribers using Amazon Simple Notification // Service (SNS). type NotificationConfiguration struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) that identifies the topic. TopicArn *string `type:"string"` // The current state of the topic. TopicStatus *string `type:"string"` } // String returns the string representation func (s NotificationConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NotificationConfiguration) GoString() string { return s.String() } // Describes an individual setting that controls some aspect of ElastiCache // behavior. type Parameter struct { _ struct{} `type:"structure"` // The valid range of values for the parameter. AllowedValues *string `type:"string"` // Indicates whether a change to the parameter is applied immediately or requires // a reboot for the change to be applied. You can force a reboot or wait until // the next maintenance window's reboot. For more information, see Rebooting // a Cluster (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/Clusters.Rebooting.html). ChangeType *string `type:"string" enum:"ChangeType"` // The valid data type for the parameter. DataType *string `type:"string"` // A description of the parameter. Description *string `type:"string"` // Indicates whether (true) or not (false) the parameter can be modified. Some // parameters have security or operational implications that prevent them from // being changed. IsModifiable *bool `type:"boolean"` // The earliest cache engine version to which the parameter can apply. MinimumEngineVersion *string `type:"string"` // The name of the parameter. ParameterName *string `type:"string"` // The value of the parameter. ParameterValue *string `type:"string"` // The source of the parameter. Source *string `type:"string"` } // String returns the string representation func (s Parameter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Parameter) GoString() string { return s.String() } // Describes a name-value pair that is used to update the value of a parameter. type ParameterNameValue struct { _ struct{} `type:"structure"` // The name of the parameter. ParameterName *string `type:"string"` // The value of the parameter. ParameterValue *string `type:"string"` } // String returns the string representation func (s ParameterNameValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ParameterNameValue) GoString() string { return s.String() } // A group of settings that are applied to the cache cluster in the future, // or that are currently being applied. type PendingModifiedValues struct { _ struct{} `type:"structure"` // A list of cache node IDs that are being removed (or will be removed) from // the cache cluster. A node ID is a numeric identifier (0001, 0002, etc.). CacheNodeIdsToRemove []*string `locationNameList:"CacheNodeId" type:"list"` // The cache node type that this cache cluster or replication group is scaled // to. CacheNodeType *string `type:"string"` // The new cache engine version that the cache cluster runs. EngineVersion *string `type:"string"` // The new number of cache nodes for the cache cluster. // // For clusters running Redis, this value must be 1. For clusters running Memcached, // this value must be between 1 and 20. NumCacheNodes *int64 `type:"integer"` } // String returns the string representation func (s PendingModifiedValues) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PendingModifiedValues) GoString() string { return s.String() } // Represents the input of a PurchaseReservedCacheNodesOffering operation. type PurchaseReservedCacheNodesOfferingInput struct { _ struct{} `type:"structure"` // The number of cache node instances to reserve. // // Default: 1 CacheNodeCount *int64 `type:"integer"` // A customer-specified identifier to track this reservation. // // The Reserved Cache Node ID is an unique customer-specified identifier to // track this reservation. If this parameter is not specified, ElastiCache automatically // generates an identifier for the reservation. // // Example: myreservationID ReservedCacheNodeId *string `type:"string"` // The ID of the reserved cache node offering to purchase. // // Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706 // // ReservedCacheNodesOfferingId is a required field ReservedCacheNodesOfferingId *string `type:"string" required:"true"` } // String returns the string representation func (s PurchaseReservedCacheNodesOfferingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PurchaseReservedCacheNodesOfferingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PurchaseReservedCacheNodesOfferingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PurchaseReservedCacheNodesOfferingInput"} if s.ReservedCacheNodesOfferingId == nil { invalidParams.Add(request.NewErrParamRequired("ReservedCacheNodesOfferingId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PurchaseReservedCacheNodesOfferingOutput struct { _ struct{} `type:"structure"` // Represents the output of a PurchaseReservedCacheNodesOffering operation. ReservedCacheNode *ReservedCacheNode `type:"structure"` } // String returns the string representation func (s PurchaseReservedCacheNodesOfferingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PurchaseReservedCacheNodesOfferingOutput) GoString() string { return s.String() } // Represents the input of a RebootCacheCluster operation. type RebootCacheClusterInput struct { _ struct{} `type:"structure"` // The cache cluster identifier. This parameter is stored as a lowercase string. // // CacheClusterId is a required field CacheClusterId *string `type:"string" required:"true"` // A list of cache node IDs to reboot. A node ID is a numeric identifier (0001, // 0002, etc.). To reboot an entire cache cluster, specify all of the cache // node IDs. // // CacheNodeIdsToReboot is a required field CacheNodeIdsToReboot []*string `locationNameList:"CacheNodeId" type:"list" required:"true"` } // String returns the string representation func (s RebootCacheClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebootCacheClusterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RebootCacheClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RebootCacheClusterInput"} if s.CacheClusterId == nil { invalidParams.Add(request.NewErrParamRequired("CacheClusterId")) } if s.CacheNodeIdsToReboot == nil { invalidParams.Add(request.NewErrParamRequired("CacheNodeIdsToReboot")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RebootCacheClusterOutput struct { _ struct{} `type:"structure"` // Contains all of the attributes of a specific cache cluster. CacheCluster *CacheCluster `type:"structure"` } // String returns the string representation func (s RebootCacheClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebootCacheClusterOutput) GoString() string { return s.String() } // Contains the specific price and frequency of a recurring charges for a reserved // cache node, or for a reserved cache node offering. type RecurringCharge struct { _ struct{} `type:"structure"` // The monetary amount of the recurring charge. RecurringChargeAmount *float64 `type:"double"` // The frequency of the recurring charge. RecurringChargeFrequency *string `type:"string"` } // String returns the string representation func (s RecurringCharge) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecurringCharge) GoString() string { return s.String() } // Represents the input of a RemoveTagsFromResource operation. type RemoveTagsFromResourceInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the resource from which you want the tags // removed, for example arn:aws:elasticache:us-west-2:0123456789:cluster:myCluster // or arn:aws:elasticache:us-west-2:0123456789:snapshot:mySnapshot. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). // // ResourceName is a required field ResourceName *string `type:"string" required:"true"` // A list of TagKeys identifying the tags you want removed from the named resource. // // TagKeys is a required field TagKeys []*string `type:"list" required:"true"` } // String returns the string representation func (s RemoveTagsFromResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTagsFromResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTagsFromResourceInput"} if s.ResourceName == nil { invalidParams.Add(request.NewErrParamRequired("ResourceName")) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains all of the attributes of a specific Redis replication group. type ReplicationGroup struct { _ struct{} `type:"structure"` // Indicates the status of Multi-AZ for this replication group. // // ElastiCache Multi-AZ replication groups are not supported on: // // Redis versions earlier than 2.8.6. // // Redis (cluster mode disabled):T1 and T2 cache node types. // // Redis (cluster mode enabled): T1 node types. AutomaticFailover *string `type:"string" enum:"AutomaticFailoverStatus"` // The configuration endpoint for this replicaiton group. Use the configuration // endpoint to connect to this replication group. ConfigurationEndpoint *Endpoint `type:"structure"` // The description of the replication group. Description *string `type:"string"` // The names of all the cache clusters that are part of this replication group. MemberClusters []*string `locationNameList:"ClusterId" type:"list"` // A single element list with information about the nodes in the replication // group. NodeGroups []*NodeGroup `locationNameList:"NodeGroup" type:"list"` // A group of settings to be applied to the replication group, either immediately // or during the next maintenance window. PendingModifiedValues *ReplicationGroupPendingModifiedValues `type:"structure"` // The identifier for the replication group. ReplicationGroupId *string `type:"string"` // The number of days for which ElastiCache retains automatic cache cluster // snapshots before deleting them. For example, if you set SnapshotRetentionLimit // to 5, a snapshot that was taken today is retained for 5 days before being // deleted. // // If the value of SnapshotRetentionLimit is set to zero (0), backups are turned // off. SnapshotRetentionLimit *int64 `type:"integer"` // The daily time range (in UTC) during which ElastiCache begins taking a daily // snapshot of your node group (shard). // // Example: 05:00-09:00 // // If you do not specify this parameter, ElastiCache automatically chooses an // appropriate time range. // // Note: This parameter is only valid if the Engine parameter is redis. SnapshotWindow *string `type:"string"` // The cache cluster ID that is used as the daily snapshot source for the replication // group. SnapshottingClusterId *string `type:"string"` // The current state of this replication group - creating, available, etc. Status *string `type:"string"` } // String returns the string representation func (s ReplicationGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplicationGroup) GoString() string { return s.String() } // The settings to be applied to the Redis replication group, either immediately // or during the next maintenance window. type ReplicationGroupPendingModifiedValues struct { _ struct{} `type:"structure"` // Indicates the status of Multi-AZ for this Redis replication group. // // ElastiCache Multi-AZ replication groups are not supported on: // // Redis versions earlier than 2.8.6. // // Redis (cluster mode disabled):T1 and T2 cache node types. // // Redis (cluster mode enabled): T1 node types. AutomaticFailoverStatus *string `type:"string" enum:"PendingAutomaticFailoverStatus"` // The primary cluster ID that is applied immediately (if --apply-immediately // was specified), or during the next maintenance window. PrimaryClusterId *string `type:"string"` } // String returns the string representation func (s ReplicationGroupPendingModifiedValues) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplicationGroupPendingModifiedValues) GoString() string { return s.String() } // Represents the output of a PurchaseReservedCacheNodesOffering operation. type ReservedCacheNode struct { _ struct{} `type:"structure"` // The number of cache nodes that have been reserved. CacheNodeCount *int64 `type:"integer"` // The cache node type for the reserved cache nodes. // // Valid node types are as follows: // // * General purpose: // // Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, // cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge, cache.m4.large, cache.m4.xlarge, // cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge // // Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, // cache.m1.xlarge // // * Compute optimized: cache.c1.xlarge // // * Memory optimized: // // Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, // cache.r3.8xlarge // // Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge // // Notes: // // * All T2 instances are created in an Amazon Virtual Private Cloud (Amazon // VPC). // // * Redis backup/restore is not supported for Redis (cluster mode disabled) // T1 and T2 instances. Backup/restore is supported on Redis (cluster mode // enabled) T2 instances. // // * Redis Append-only files (AOF) functionality is not supported for T1 // or T2 instances. // // For a complete listing of node types and specifications, see Amazon ElastiCache // Product Features and Details (http://aws.amazon.com/elasticache/details) // and either Cache Node Type-Specific Parameters for Memcached (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#ParameterGroups.Memcached.NodeSpecific) // or Cache Node Type-Specific Parameters for Redis (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#ParameterGroups.Redis.NodeSpecific). CacheNodeType *string `type:"string"` // The duration of the reservation in seconds. Duration *int64 `type:"integer"` // The fixed price charged for this reserved cache node. FixedPrice *float64 `type:"double"` // The offering type of this reserved cache node. OfferingType *string `type:"string"` // The description of the reserved cache node. ProductDescription *string `type:"string"` // The recurring price charged to run this reserved cache node. RecurringCharges []*RecurringCharge `locationNameList:"RecurringCharge" type:"list"` // The unique identifier for the reservation. ReservedCacheNodeId *string `type:"string"` // The offering identifier. ReservedCacheNodesOfferingId *string `type:"string"` // The time the reservation started. StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The state of the reserved cache node. State *string `type:"string"` // The hourly price charged for this reserved cache node. UsagePrice *float64 `type:"double"` } // String returns the string representation func (s ReservedCacheNode) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReservedCacheNode) GoString() string { return s.String() } // Describes all of the attributes of a reserved cache node offering. type ReservedCacheNodesOffering struct { _ struct{} `type:"structure"` // The cache node type for the reserved cache node. // // Valid node types are as follows: // // * General purpose: // // Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, // cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge, cache.m4.large, cache.m4.xlarge, // cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge // // Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, // cache.m1.xlarge // // * Compute optimized: cache.c1.xlarge // // * Memory optimized: // // Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, // cache.r3.8xlarge // // Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge // // Notes: // // * All T2 instances are created in an Amazon Virtual Private Cloud (Amazon // VPC). // // * Redis backup/restore is not supported for Redis (cluster mode disabled) // T1 and T2 instances. Backup/restore is supported on Redis (cluster mode // enabled) T2 instances. // // * Redis Append-only files (AOF) functionality is not supported for T1 // or T2 instances. // // For a complete listing of node types and specifications, see Amazon ElastiCache // Product Features and Details (http://aws.amazon.com/elasticache/details) // and either Cache Node Type-Specific Parameters for Memcached (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#ParameterGroups.Memcached.NodeSpecific) // or Cache Node Type-Specific Parameters for Redis (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#ParameterGroups.Redis.NodeSpecific). CacheNodeType *string `type:"string"` // The duration of the offering. in seconds. Duration *int64 `type:"integer"` // The fixed price charged for this offering. FixedPrice *float64 `type:"double"` // The offering type. OfferingType *string `type:"string"` // The cache engine used by the offering. ProductDescription *string `type:"string"` // The recurring price charged to run this reserved cache node. RecurringCharges []*RecurringCharge `locationNameList:"RecurringCharge" type:"list"` // A unique identifier for the reserved cache node offering. ReservedCacheNodesOfferingId *string `type:"string"` // The hourly price charged for this offering. UsagePrice *float64 `type:"double"` } // String returns the string representation func (s ReservedCacheNodesOffering) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReservedCacheNodesOffering) GoString() string { return s.String() } // Represents the input of a ResetCacheParameterGroup operation. type ResetCacheParameterGroupInput struct { _ struct{} `type:"structure"` // The name of the cache parameter group to reset. // // CacheParameterGroupName is a required field CacheParameterGroupName *string `type:"string" required:"true"` // An array of parameter names to reset to their default values. If ResetAllParameters // is true, do not use ParameterNameValues. If ResetAllParameters is false, // you must specify the name of at least one parameter to reset. ParameterNameValues []*ParameterNameValue `locationNameList:"ParameterNameValue" type:"list"` // If true, all parameters in the cache parameter group are reset to their default // values. If false, only the parameters listed by ParameterNameValues are reset // to their default values. // // Valid values: true | false ResetAllParameters *bool `type:"boolean"` } // String returns the string representation func (s ResetCacheParameterGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResetCacheParameterGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ResetCacheParameterGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ResetCacheParameterGroupInput"} if s.CacheParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("CacheParameterGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the input of a RevokeCacheSecurityGroupIngress operation. type RevokeCacheSecurityGroupIngressInput struct { _ struct{} `type:"structure"` // The name of the cache security group to revoke ingress from. // // CacheSecurityGroupName is a required field CacheSecurityGroupName *string `type:"string" required:"true"` // The name of the Amazon EC2 security group to revoke access from. // // EC2SecurityGroupName is a required field EC2SecurityGroupName *string `type:"string" required:"true"` // The AWS account number of the Amazon EC2 security group owner. Note that // this is not the same thing as an AWS access key ID - you must provide a valid // AWS account number for this parameter. // // EC2SecurityGroupOwnerId is a required field EC2SecurityGroupOwnerId *string `type:"string" required:"true"` } // String returns the string representation func (s RevokeCacheSecurityGroupIngressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RevokeCacheSecurityGroupIngressInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RevokeCacheSecurityGroupIngressInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RevokeCacheSecurityGroupIngressInput"} if s.CacheSecurityGroupName == nil { invalidParams.Add(request.NewErrParamRequired("CacheSecurityGroupName")) } if s.EC2SecurityGroupName == nil { invalidParams.Add(request.NewErrParamRequired("EC2SecurityGroupName")) } if s.EC2SecurityGroupOwnerId == nil { invalidParams.Add(request.NewErrParamRequired("EC2SecurityGroupOwnerId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RevokeCacheSecurityGroupIngressOutput struct { _ struct{} `type:"structure"` // Represents the output of one of the following operations: // // * AuthorizeCacheSecurityGroupIngress // // * CreateCacheSecurityGroup // // * RevokeCacheSecurityGroupIngress CacheSecurityGroup *CacheSecurityGroup `type:"structure"` } // String returns the string representation func (s RevokeCacheSecurityGroupIngressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RevokeCacheSecurityGroupIngressOutput) GoString() string { return s.String() } // Represents a single cache security group and its status. type SecurityGroupMembership struct { _ struct{} `type:"structure"` // The identifier of the cache security group. SecurityGroupId *string `type:"string"` // The status of the cache security group membership. The status changes whenever // a cache security group is modified, or when the cache security groups assigned // to a cache cluster are modified. Status *string `type:"string"` } // String returns the string representation func (s SecurityGroupMembership) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SecurityGroupMembership) GoString() string { return s.String() } // Represents a copy of an entire Redis cache cluster as of the time when the // snapshot was taken. type Snapshot struct { _ struct{} `type:"structure"` // This parameter is currently disabled. AutoMinorVersionUpgrade *bool `type:"boolean"` // Indicates the status of Multi-AZ for the source replication group. // // ElastiCache Multi-AZ replication groups are not supported on: // // Redis versions earlier than 2.8.6. // // Redis (cluster mode disabled):T1 and T2 cache node types. // // Redis (cluster mode enabled): T1 node types. AutomaticFailover *string `type:"string" enum:"AutomaticFailoverStatus"` // The date and time when the source cache cluster was created. CacheClusterCreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The user-supplied identifier of the source cache cluster. CacheClusterId *string `type:"string"` // The name of the compute and memory capacity node type for the source cache // cluster. // // Valid node types are as follows: // // * General purpose: // // Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, // cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge, cache.m4.large, cache.m4.xlarge, // cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge // // Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, // cache.m1.xlarge // // * Compute optimized: cache.c1.xlarge // // * Memory optimized: // // Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, // cache.r3.8xlarge // // Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge // // Notes: // // * All T2 instances are created in an Amazon Virtual Private Cloud (Amazon // VPC). // // * Redis backup/restore is not supported for Redis (cluster mode disabled) // T1 and T2 instances. Backup/restore is supported on Redis (cluster mode // enabled) T2 instances. // // * Redis Append-only files (AOF) functionality is not supported for T1 // or T2 instances. // // For a complete listing of node types and specifications, see Amazon ElastiCache // Product Features and Details (http://aws.amazon.com/elasticache/details) // and either Cache Node Type-Specific Parameters for Memcached (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#ParameterGroups.Memcached.NodeSpecific) // or Cache Node Type-Specific Parameters for Redis (http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#ParameterGroups.Redis.NodeSpecific). CacheNodeType *string `type:"string"` // The cache parameter group that is associated with the source cache cluster. CacheParameterGroupName *string `type:"string"` // The name of the cache subnet group associated with the source cache cluster. CacheSubnetGroupName *string `type:"string"` // The name of the cache engine (memcached or redis) used by the source cache // cluster. Engine *string `type:"string"` // The version of the cache engine version that is used by the source cache // cluster. EngineVersion *string `type:"string"` // A list of the cache nodes in the source cache cluster. NodeSnapshots []*NodeSnapshot `locationNameList:"NodeSnapshot" type:"list"` // The number of cache nodes in the source cache cluster. // // For clusters running Redis, this value must be 1. For clusters running Memcached, // this value must be between 1 and 20. NumCacheNodes *int64 `type:"integer"` // The number of node groups (shards) in this snapshot. When restoring from // a snapshot, the number of node groups (shards) in the snapshot and in the // restored replication group must be the same. NumNodeGroups *int64 `type:"integer"` // The port number used by each cache nodes in the source cache cluster. Port *int64 `type:"integer"` // The name of the Availability Zone in which the source cache cluster is located. PreferredAvailabilityZone *string `type:"string"` // Specifies the weekly time range during which maintenance on the cluster is // performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi // (24H Clock UTC). The minimum maintenance window is a 60 minute period. // // Valid values for ddd are: // // * sun // // * mon // // * tue // // * wed // // * thu // // * fri // // * sat // // Example: sun:23:00-mon:01:30 PreferredMaintenanceWindow *string `type:"string"` // A description of the source replication group. ReplicationGroupDescription *string `type:"string"` // The unique identifier of the source replication group. ReplicationGroupId *string `type:"string"` // The name of a snapshot. For an automatic snapshot, the name is system-generated. // For a manual snapshot, this is the user-provided name. SnapshotName *string `type:"string"` // For an automatic snapshot, the number of days for which ElastiCache retains // the snapshot before deleting it. // // For manual snapshots, this field reflects the SnapshotRetentionLimit for // the source cache cluster when the snapshot was created. This field is otherwise // ignored: Manual snapshots do not expire, and can only be deleted using the // DeleteSnapshot operation. // // Important If the value of SnapshotRetentionLimit is set to zero (0), backups // are turned off. SnapshotRetentionLimit *int64 `type:"integer"` // Indicates whether the snapshot is from an automatic backup (automated) or // was created manually (manual). SnapshotSource *string `type:"string"` // The status of the snapshot. Valid values: creating | available | restoring // | copying | deleting. SnapshotStatus *string `type:"string"` // The daily time range during which ElastiCache takes daily snapshots of the // source cache cluster. SnapshotWindow *string `type:"string"` // The Amazon Resource Name (ARN) for the topic used by the source cache cluster // for publishing notifications. TopicArn *string `type:"string"` // The Amazon Virtual Private Cloud identifier (VPC ID) of the cache subnet // group for the source cache cluster. VpcId *string `type:"string"` } // String returns the string representation func (s Snapshot) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Snapshot) GoString() string { return s.String() } // Represents the subnet associated with a cache cluster. This parameter refers // to subnets defined in Amazon Virtual Private Cloud (Amazon VPC) and used // with ElastiCache. type Subnet struct { _ struct{} `type:"structure"` // The Availability Zone associated with the subnet. SubnetAvailabilityZone *AvailabilityZone `type:"structure"` // The unique identifier for the subnet. SubnetIdentifier *string `type:"string"` } // String returns the string representation func (s Subnet) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Subnet) GoString() string { return s.String() } // A cost allocation Tag that can be added to an ElastiCache cluster or replication // group. Tags are composed of a Key/Value pair. A tag with a null Value is // permitted. type Tag struct { _ struct{} `type:"structure"` // The key for the tag. Key *string `type:"string"` // The tag's value. May not be null. Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Represents the output from the AddTagsToResource, ListTagsOnResource, and // RemoveTagsFromResource operations. type TagListMessage struct { _ struct{} `type:"structure"` // A list of cost allocation tags as key-value pairs. TagList []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s TagListMessage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TagListMessage) GoString() string { return s.String() } const ( // AZModeSingleAz is a AZMode enum value AZModeSingleAz = "single-az" // AZModeCrossAz is a AZMode enum value AZModeCrossAz = "cross-az" ) const ( // AutomaticFailoverStatusEnabled is a AutomaticFailoverStatus enum value AutomaticFailoverStatusEnabled = "enabled" // AutomaticFailoverStatusDisabled is a AutomaticFailoverStatus enum value AutomaticFailoverStatusDisabled = "disabled" // AutomaticFailoverStatusEnabling is a AutomaticFailoverStatus enum value AutomaticFailoverStatusEnabling = "enabling" // AutomaticFailoverStatusDisabling is a AutomaticFailoverStatus enum value AutomaticFailoverStatusDisabling = "disabling" ) const ( // ChangeTypeImmediate is a ChangeType enum value ChangeTypeImmediate = "immediate" // ChangeTypeRequiresReboot is a ChangeType enum value ChangeTypeRequiresReboot = "requires-reboot" ) const ( // PendingAutomaticFailoverStatusEnabled is a PendingAutomaticFailoverStatus enum value PendingAutomaticFailoverStatusEnabled = "enabled" // PendingAutomaticFailoverStatusDisabled is a PendingAutomaticFailoverStatus enum value PendingAutomaticFailoverStatusDisabled = "disabled" ) const ( // SourceTypeCacheCluster is a SourceType enum value SourceTypeCacheCluster = "cache-cluster" // SourceTypeCacheParameterGroup is a SourceType enum value SourceTypeCacheParameterGroup = "cache-parameter-group" // SourceTypeCacheSecurityGroup is a SourceType enum value SourceTypeCacheSecurityGroup = "cache-security-group" // SourceTypeCacheSubnetGroup is a SourceType enum value SourceTypeCacheSubnetGroup = "cache-subnet-group" // SourceTypeReplicationGroup is a SourceType enum value SourceTypeReplicationGroup = "replication-group" ) aws-sdk-go-1.4.22/service/elasticache/elasticacheiface/000077500000000000000000000000001300374646400227255ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/elasticache/elasticacheiface/interface.go000066400000000000000000000335501300374646400252220ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package elasticacheiface provides an interface to enable mocking the Amazon ElastiCache service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package elasticacheiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/elasticache" ) // ElastiCacheAPI provides an interface to enable mocking the // elasticache.ElastiCache service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon ElastiCache. // func myFunc(svc elasticacheiface.ElastiCacheAPI) bool { // // Make svc.AddTagsToResource request // } // // func main() { // sess := session.New() // svc := elasticache.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockElastiCacheClient struct { // elasticacheiface.ElastiCacheAPI // } // func (m *mockElastiCacheClient) AddTagsToResource(input *elasticache.AddTagsToResourceInput) (*elasticache.TagListMessage, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockElastiCacheClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type ElastiCacheAPI interface { AddTagsToResourceRequest(*elasticache.AddTagsToResourceInput) (*request.Request, *elasticache.TagListMessage) AddTagsToResource(*elasticache.AddTagsToResourceInput) (*elasticache.TagListMessage, error) AuthorizeCacheSecurityGroupIngressRequest(*elasticache.AuthorizeCacheSecurityGroupIngressInput) (*request.Request, *elasticache.AuthorizeCacheSecurityGroupIngressOutput) AuthorizeCacheSecurityGroupIngress(*elasticache.AuthorizeCacheSecurityGroupIngressInput) (*elasticache.AuthorizeCacheSecurityGroupIngressOutput, error) CopySnapshotRequest(*elasticache.CopySnapshotInput) (*request.Request, *elasticache.CopySnapshotOutput) CopySnapshot(*elasticache.CopySnapshotInput) (*elasticache.CopySnapshotOutput, error) CreateCacheClusterRequest(*elasticache.CreateCacheClusterInput) (*request.Request, *elasticache.CreateCacheClusterOutput) CreateCacheCluster(*elasticache.CreateCacheClusterInput) (*elasticache.CreateCacheClusterOutput, error) CreateCacheParameterGroupRequest(*elasticache.CreateCacheParameterGroupInput) (*request.Request, *elasticache.CreateCacheParameterGroupOutput) CreateCacheParameterGroup(*elasticache.CreateCacheParameterGroupInput) (*elasticache.CreateCacheParameterGroupOutput, error) CreateCacheSecurityGroupRequest(*elasticache.CreateCacheSecurityGroupInput) (*request.Request, *elasticache.CreateCacheSecurityGroupOutput) CreateCacheSecurityGroup(*elasticache.CreateCacheSecurityGroupInput) (*elasticache.CreateCacheSecurityGroupOutput, error) CreateCacheSubnetGroupRequest(*elasticache.CreateCacheSubnetGroupInput) (*request.Request, *elasticache.CreateCacheSubnetGroupOutput) CreateCacheSubnetGroup(*elasticache.CreateCacheSubnetGroupInput) (*elasticache.CreateCacheSubnetGroupOutput, error) CreateReplicationGroupRequest(*elasticache.CreateReplicationGroupInput) (*request.Request, *elasticache.CreateReplicationGroupOutput) CreateReplicationGroup(*elasticache.CreateReplicationGroupInput) (*elasticache.CreateReplicationGroupOutput, error) CreateSnapshotRequest(*elasticache.CreateSnapshotInput) (*request.Request, *elasticache.CreateSnapshotOutput) CreateSnapshot(*elasticache.CreateSnapshotInput) (*elasticache.CreateSnapshotOutput, error) DeleteCacheClusterRequest(*elasticache.DeleteCacheClusterInput) (*request.Request, *elasticache.DeleteCacheClusterOutput) DeleteCacheCluster(*elasticache.DeleteCacheClusterInput) (*elasticache.DeleteCacheClusterOutput, error) DeleteCacheParameterGroupRequest(*elasticache.DeleteCacheParameterGroupInput) (*request.Request, *elasticache.DeleteCacheParameterGroupOutput) DeleteCacheParameterGroup(*elasticache.DeleteCacheParameterGroupInput) (*elasticache.DeleteCacheParameterGroupOutput, error) DeleteCacheSecurityGroupRequest(*elasticache.DeleteCacheSecurityGroupInput) (*request.Request, *elasticache.DeleteCacheSecurityGroupOutput) DeleteCacheSecurityGroup(*elasticache.DeleteCacheSecurityGroupInput) (*elasticache.DeleteCacheSecurityGroupOutput, error) DeleteCacheSubnetGroupRequest(*elasticache.DeleteCacheSubnetGroupInput) (*request.Request, *elasticache.DeleteCacheSubnetGroupOutput) DeleteCacheSubnetGroup(*elasticache.DeleteCacheSubnetGroupInput) (*elasticache.DeleteCacheSubnetGroupOutput, error) DeleteReplicationGroupRequest(*elasticache.DeleteReplicationGroupInput) (*request.Request, *elasticache.DeleteReplicationGroupOutput) DeleteReplicationGroup(*elasticache.DeleteReplicationGroupInput) (*elasticache.DeleteReplicationGroupOutput, error) DeleteSnapshotRequest(*elasticache.DeleteSnapshotInput) (*request.Request, *elasticache.DeleteSnapshotOutput) DeleteSnapshot(*elasticache.DeleteSnapshotInput) (*elasticache.DeleteSnapshotOutput, error) DescribeCacheClustersRequest(*elasticache.DescribeCacheClustersInput) (*request.Request, *elasticache.DescribeCacheClustersOutput) DescribeCacheClusters(*elasticache.DescribeCacheClustersInput) (*elasticache.DescribeCacheClustersOutput, error) DescribeCacheClustersPages(*elasticache.DescribeCacheClustersInput, func(*elasticache.DescribeCacheClustersOutput, bool) bool) error DescribeCacheEngineVersionsRequest(*elasticache.DescribeCacheEngineVersionsInput) (*request.Request, *elasticache.DescribeCacheEngineVersionsOutput) DescribeCacheEngineVersions(*elasticache.DescribeCacheEngineVersionsInput) (*elasticache.DescribeCacheEngineVersionsOutput, error) DescribeCacheEngineVersionsPages(*elasticache.DescribeCacheEngineVersionsInput, func(*elasticache.DescribeCacheEngineVersionsOutput, bool) bool) error DescribeCacheParameterGroupsRequest(*elasticache.DescribeCacheParameterGroupsInput) (*request.Request, *elasticache.DescribeCacheParameterGroupsOutput) DescribeCacheParameterGroups(*elasticache.DescribeCacheParameterGroupsInput) (*elasticache.DescribeCacheParameterGroupsOutput, error) DescribeCacheParameterGroupsPages(*elasticache.DescribeCacheParameterGroupsInput, func(*elasticache.DescribeCacheParameterGroupsOutput, bool) bool) error DescribeCacheParametersRequest(*elasticache.DescribeCacheParametersInput) (*request.Request, *elasticache.DescribeCacheParametersOutput) DescribeCacheParameters(*elasticache.DescribeCacheParametersInput) (*elasticache.DescribeCacheParametersOutput, error) DescribeCacheParametersPages(*elasticache.DescribeCacheParametersInput, func(*elasticache.DescribeCacheParametersOutput, bool) bool) error DescribeCacheSecurityGroupsRequest(*elasticache.DescribeCacheSecurityGroupsInput) (*request.Request, *elasticache.DescribeCacheSecurityGroupsOutput) DescribeCacheSecurityGroups(*elasticache.DescribeCacheSecurityGroupsInput) (*elasticache.DescribeCacheSecurityGroupsOutput, error) DescribeCacheSecurityGroupsPages(*elasticache.DescribeCacheSecurityGroupsInput, func(*elasticache.DescribeCacheSecurityGroupsOutput, bool) bool) error DescribeCacheSubnetGroupsRequest(*elasticache.DescribeCacheSubnetGroupsInput) (*request.Request, *elasticache.DescribeCacheSubnetGroupsOutput) DescribeCacheSubnetGroups(*elasticache.DescribeCacheSubnetGroupsInput) (*elasticache.DescribeCacheSubnetGroupsOutput, error) DescribeCacheSubnetGroupsPages(*elasticache.DescribeCacheSubnetGroupsInput, func(*elasticache.DescribeCacheSubnetGroupsOutput, bool) bool) error DescribeEngineDefaultParametersRequest(*elasticache.DescribeEngineDefaultParametersInput) (*request.Request, *elasticache.DescribeEngineDefaultParametersOutput) DescribeEngineDefaultParameters(*elasticache.DescribeEngineDefaultParametersInput) (*elasticache.DescribeEngineDefaultParametersOutput, error) DescribeEngineDefaultParametersPages(*elasticache.DescribeEngineDefaultParametersInput, func(*elasticache.DescribeEngineDefaultParametersOutput, bool) bool) error DescribeEventsRequest(*elasticache.DescribeEventsInput) (*request.Request, *elasticache.DescribeEventsOutput) DescribeEvents(*elasticache.DescribeEventsInput) (*elasticache.DescribeEventsOutput, error) DescribeEventsPages(*elasticache.DescribeEventsInput, func(*elasticache.DescribeEventsOutput, bool) bool) error DescribeReplicationGroupsRequest(*elasticache.DescribeReplicationGroupsInput) (*request.Request, *elasticache.DescribeReplicationGroupsOutput) DescribeReplicationGroups(*elasticache.DescribeReplicationGroupsInput) (*elasticache.DescribeReplicationGroupsOutput, error) DescribeReplicationGroupsPages(*elasticache.DescribeReplicationGroupsInput, func(*elasticache.DescribeReplicationGroupsOutput, bool) bool) error DescribeReservedCacheNodesRequest(*elasticache.DescribeReservedCacheNodesInput) (*request.Request, *elasticache.DescribeReservedCacheNodesOutput) DescribeReservedCacheNodes(*elasticache.DescribeReservedCacheNodesInput) (*elasticache.DescribeReservedCacheNodesOutput, error) DescribeReservedCacheNodesPages(*elasticache.DescribeReservedCacheNodesInput, func(*elasticache.DescribeReservedCacheNodesOutput, bool) bool) error DescribeReservedCacheNodesOfferingsRequest(*elasticache.DescribeReservedCacheNodesOfferingsInput) (*request.Request, *elasticache.DescribeReservedCacheNodesOfferingsOutput) DescribeReservedCacheNodesOfferings(*elasticache.DescribeReservedCacheNodesOfferingsInput) (*elasticache.DescribeReservedCacheNodesOfferingsOutput, error) DescribeReservedCacheNodesOfferingsPages(*elasticache.DescribeReservedCacheNodesOfferingsInput, func(*elasticache.DescribeReservedCacheNodesOfferingsOutput, bool) bool) error DescribeSnapshotsRequest(*elasticache.DescribeSnapshotsInput) (*request.Request, *elasticache.DescribeSnapshotsOutput) DescribeSnapshots(*elasticache.DescribeSnapshotsInput) (*elasticache.DescribeSnapshotsOutput, error) DescribeSnapshotsPages(*elasticache.DescribeSnapshotsInput, func(*elasticache.DescribeSnapshotsOutput, bool) bool) error ListAllowedNodeTypeModificationsRequest(*elasticache.ListAllowedNodeTypeModificationsInput) (*request.Request, *elasticache.ListAllowedNodeTypeModificationsOutput) ListAllowedNodeTypeModifications(*elasticache.ListAllowedNodeTypeModificationsInput) (*elasticache.ListAllowedNodeTypeModificationsOutput, error) ListTagsForResourceRequest(*elasticache.ListTagsForResourceInput) (*request.Request, *elasticache.TagListMessage) ListTagsForResource(*elasticache.ListTagsForResourceInput) (*elasticache.TagListMessage, error) ModifyCacheClusterRequest(*elasticache.ModifyCacheClusterInput) (*request.Request, *elasticache.ModifyCacheClusterOutput) ModifyCacheCluster(*elasticache.ModifyCacheClusterInput) (*elasticache.ModifyCacheClusterOutput, error) ModifyCacheParameterGroupRequest(*elasticache.ModifyCacheParameterGroupInput) (*request.Request, *elasticache.CacheParameterGroupNameMessage) ModifyCacheParameterGroup(*elasticache.ModifyCacheParameterGroupInput) (*elasticache.CacheParameterGroupNameMessage, error) ModifyCacheSubnetGroupRequest(*elasticache.ModifyCacheSubnetGroupInput) (*request.Request, *elasticache.ModifyCacheSubnetGroupOutput) ModifyCacheSubnetGroup(*elasticache.ModifyCacheSubnetGroupInput) (*elasticache.ModifyCacheSubnetGroupOutput, error) ModifyReplicationGroupRequest(*elasticache.ModifyReplicationGroupInput) (*request.Request, *elasticache.ModifyReplicationGroupOutput) ModifyReplicationGroup(*elasticache.ModifyReplicationGroupInput) (*elasticache.ModifyReplicationGroupOutput, error) PurchaseReservedCacheNodesOfferingRequest(*elasticache.PurchaseReservedCacheNodesOfferingInput) (*request.Request, *elasticache.PurchaseReservedCacheNodesOfferingOutput) PurchaseReservedCacheNodesOffering(*elasticache.PurchaseReservedCacheNodesOfferingInput) (*elasticache.PurchaseReservedCacheNodesOfferingOutput, error) RebootCacheClusterRequest(*elasticache.RebootCacheClusterInput) (*request.Request, *elasticache.RebootCacheClusterOutput) RebootCacheCluster(*elasticache.RebootCacheClusterInput) (*elasticache.RebootCacheClusterOutput, error) RemoveTagsFromResourceRequest(*elasticache.RemoveTagsFromResourceInput) (*request.Request, *elasticache.TagListMessage) RemoveTagsFromResource(*elasticache.RemoveTagsFromResourceInput) (*elasticache.TagListMessage, error) ResetCacheParameterGroupRequest(*elasticache.ResetCacheParameterGroupInput) (*request.Request, *elasticache.CacheParameterGroupNameMessage) ResetCacheParameterGroup(*elasticache.ResetCacheParameterGroupInput) (*elasticache.CacheParameterGroupNameMessage, error) RevokeCacheSecurityGroupIngressRequest(*elasticache.RevokeCacheSecurityGroupIngressInput) (*request.Request, *elasticache.RevokeCacheSecurityGroupIngressOutput) RevokeCacheSecurityGroupIngress(*elasticache.RevokeCacheSecurityGroupIngressInput) (*elasticache.RevokeCacheSecurityGroupIngressOutput, error) WaitUntilCacheClusterAvailable(*elasticache.DescribeCacheClustersInput) error WaitUntilCacheClusterDeleted(*elasticache.DescribeCacheClustersInput) error WaitUntilReplicationGroupAvailable(*elasticache.DescribeReplicationGroupsInput) error WaitUntilReplicationGroupDeleted(*elasticache.DescribeReplicationGroupsInput) error } var _ ElastiCacheAPI = (*elasticache.ElastiCache)(nil) aws-sdk-go-1.4.22/service/elasticache/examples_test.go000066400000000000000000000742151300374646400227050ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package elasticache_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/elasticache" ) var _ time.Duration var _ bytes.Buffer func ExampleElastiCache_AddTagsToResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.AddTagsToResourceInput{ ResourceName: aws.String("String"), // Required Tags: []*elasticache.Tag{ // Required { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.AddTagsToResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_AuthorizeCacheSecurityGroupIngress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.AuthorizeCacheSecurityGroupIngressInput{ CacheSecurityGroupName: aws.String("String"), // Required EC2SecurityGroupName: aws.String("String"), // Required EC2SecurityGroupOwnerId: aws.String("String"), // Required } resp, err := svc.AuthorizeCacheSecurityGroupIngress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_CopySnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.CopySnapshotInput{ SourceSnapshotName: aws.String("String"), // Required TargetSnapshotName: aws.String("String"), // Required TargetBucket: aws.String("String"), } resp, err := svc.CopySnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_CreateCacheCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.CreateCacheClusterInput{ CacheClusterId: aws.String("String"), // Required AZMode: aws.String("AZMode"), AutoMinorVersionUpgrade: aws.Bool(true), CacheNodeType: aws.String("String"), CacheParameterGroupName: aws.String("String"), CacheSecurityGroupNames: []*string{ aws.String("String"), // Required // More values... }, CacheSubnetGroupName: aws.String("String"), Engine: aws.String("String"), EngineVersion: aws.String("String"), NotificationTopicArn: aws.String("String"), NumCacheNodes: aws.Int64(1), Port: aws.Int64(1), PreferredAvailabilityZone: aws.String("String"), PreferredAvailabilityZones: []*string{ aws.String("String"), // Required // More values... }, PreferredMaintenanceWindow: aws.String("String"), ReplicationGroupId: aws.String("String"), SecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, SnapshotArns: []*string{ aws.String("String"), // Required // More values... }, SnapshotName: aws.String("String"), SnapshotRetentionLimit: aws.Int64(1), SnapshotWindow: aws.String("String"), Tags: []*elasticache.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateCacheCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_CreateCacheParameterGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.CreateCacheParameterGroupInput{ CacheParameterGroupFamily: aws.String("String"), // Required CacheParameterGroupName: aws.String("String"), // Required Description: aws.String("String"), // Required } resp, err := svc.CreateCacheParameterGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_CreateCacheSecurityGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.CreateCacheSecurityGroupInput{ CacheSecurityGroupName: aws.String("String"), // Required Description: aws.String("String"), // Required } resp, err := svc.CreateCacheSecurityGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_CreateCacheSubnetGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.CreateCacheSubnetGroupInput{ CacheSubnetGroupDescription: aws.String("String"), // Required CacheSubnetGroupName: aws.String("String"), // Required SubnetIds: []*string{ // Required aws.String("String"), // Required // More values... }, } resp, err := svc.CreateCacheSubnetGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_CreateReplicationGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.CreateReplicationGroupInput{ ReplicationGroupDescription: aws.String("String"), // Required ReplicationGroupId: aws.String("String"), // Required AutoMinorVersionUpgrade: aws.Bool(true), AutomaticFailoverEnabled: aws.Bool(true), CacheNodeType: aws.String("String"), CacheParameterGroupName: aws.String("String"), CacheSecurityGroupNames: []*string{ aws.String("String"), // Required // More values... }, CacheSubnetGroupName: aws.String("String"), Engine: aws.String("String"), EngineVersion: aws.String("String"), NodeGroupConfiguration: []*elasticache.NodeGroupConfiguration{ { // Required PrimaryAvailabilityZone: aws.String("String"), ReplicaAvailabilityZones: []*string{ aws.String("String"), // Required // More values... }, ReplicaCount: aws.Int64(1), Slots: aws.String("String"), }, // More values... }, NotificationTopicArn: aws.String("String"), NumCacheClusters: aws.Int64(1), NumNodeGroups: aws.Int64(1), Port: aws.Int64(1), PreferredCacheClusterAZs: []*string{ aws.String("String"), // Required // More values... }, PreferredMaintenanceWindow: aws.String("String"), PrimaryClusterId: aws.String("String"), ReplicasPerNodeGroup: aws.Int64(1), SecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, SnapshotArns: []*string{ aws.String("String"), // Required // More values... }, SnapshotName: aws.String("String"), SnapshotRetentionLimit: aws.Int64(1), SnapshotWindow: aws.String("String"), Tags: []*elasticache.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateReplicationGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_CreateSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.CreateSnapshotInput{ SnapshotName: aws.String("String"), // Required CacheClusterId: aws.String("String"), ReplicationGroupId: aws.String("String"), } resp, err := svc.CreateSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_DeleteCacheCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.DeleteCacheClusterInput{ CacheClusterId: aws.String("String"), // Required FinalSnapshotIdentifier: aws.String("String"), } resp, err := svc.DeleteCacheCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_DeleteCacheParameterGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.DeleteCacheParameterGroupInput{ CacheParameterGroupName: aws.String("String"), // Required } resp, err := svc.DeleteCacheParameterGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_DeleteCacheSecurityGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.DeleteCacheSecurityGroupInput{ CacheSecurityGroupName: aws.String("String"), // Required } resp, err := svc.DeleteCacheSecurityGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_DeleteCacheSubnetGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.DeleteCacheSubnetGroupInput{ CacheSubnetGroupName: aws.String("String"), // Required } resp, err := svc.DeleteCacheSubnetGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_DeleteReplicationGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.DeleteReplicationGroupInput{ ReplicationGroupId: aws.String("String"), // Required FinalSnapshotIdentifier: aws.String("String"), RetainPrimaryCluster: aws.Bool(true), } resp, err := svc.DeleteReplicationGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_DeleteSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.DeleteSnapshotInput{ SnapshotName: aws.String("String"), // Required } resp, err := svc.DeleteSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_DescribeCacheClusters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.DescribeCacheClustersInput{ CacheClusterId: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), ShowCacheNodeInfo: aws.Bool(true), } resp, err := svc.DescribeCacheClusters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_DescribeCacheEngineVersions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.DescribeCacheEngineVersionsInput{ CacheParameterGroupFamily: aws.String("String"), DefaultOnly: aws.Bool(true), Engine: aws.String("String"), EngineVersion: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeCacheEngineVersions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_DescribeCacheParameterGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.DescribeCacheParameterGroupsInput{ CacheParameterGroupName: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeCacheParameterGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_DescribeCacheParameters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.DescribeCacheParametersInput{ CacheParameterGroupName: aws.String("String"), // Required Marker: aws.String("String"), MaxRecords: aws.Int64(1), Source: aws.String("String"), } resp, err := svc.DescribeCacheParameters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_DescribeCacheSecurityGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.DescribeCacheSecurityGroupsInput{ CacheSecurityGroupName: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeCacheSecurityGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_DescribeCacheSubnetGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.DescribeCacheSubnetGroupsInput{ CacheSubnetGroupName: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeCacheSubnetGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_DescribeEngineDefaultParameters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.DescribeEngineDefaultParametersInput{ CacheParameterGroupFamily: aws.String("String"), // Required Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeEngineDefaultParameters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_DescribeEvents() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.DescribeEventsInput{ Duration: aws.Int64(1), EndTime: aws.Time(time.Now()), Marker: aws.String("String"), MaxRecords: aws.Int64(1), SourceIdentifier: aws.String("String"), SourceType: aws.String("SourceType"), StartTime: aws.Time(time.Now()), } resp, err := svc.DescribeEvents(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_DescribeReplicationGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.DescribeReplicationGroupsInput{ Marker: aws.String("String"), MaxRecords: aws.Int64(1), ReplicationGroupId: aws.String("String"), } resp, err := svc.DescribeReplicationGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_DescribeReservedCacheNodes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.DescribeReservedCacheNodesInput{ CacheNodeType: aws.String("String"), Duration: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), OfferingType: aws.String("String"), ProductDescription: aws.String("String"), ReservedCacheNodeId: aws.String("String"), ReservedCacheNodesOfferingId: aws.String("String"), } resp, err := svc.DescribeReservedCacheNodes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_DescribeReservedCacheNodesOfferings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.DescribeReservedCacheNodesOfferingsInput{ CacheNodeType: aws.String("String"), Duration: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), OfferingType: aws.String("String"), ProductDescription: aws.String("String"), ReservedCacheNodesOfferingId: aws.String("String"), } resp, err := svc.DescribeReservedCacheNodesOfferings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_DescribeSnapshots() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.DescribeSnapshotsInput{ CacheClusterId: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), ReplicationGroupId: aws.String("String"), ShowNodeGroupConfig: aws.Bool(true), SnapshotName: aws.String("String"), SnapshotSource: aws.String("String"), } resp, err := svc.DescribeSnapshots(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_ListAllowedNodeTypeModifications() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.ListAllowedNodeTypeModificationsInput{ CacheClusterId: aws.String("String"), ReplicationGroupId: aws.String("String"), } resp, err := svc.ListAllowedNodeTypeModifications(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_ListTagsForResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.ListTagsForResourceInput{ ResourceName: aws.String("String"), // Required } resp, err := svc.ListTagsForResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_ModifyCacheCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.ModifyCacheClusterInput{ CacheClusterId: aws.String("String"), // Required AZMode: aws.String("AZMode"), ApplyImmediately: aws.Bool(true), AutoMinorVersionUpgrade: aws.Bool(true), CacheNodeIdsToRemove: []*string{ aws.String("String"), // Required // More values... }, CacheNodeType: aws.String("String"), CacheParameterGroupName: aws.String("String"), CacheSecurityGroupNames: []*string{ aws.String("String"), // Required // More values... }, EngineVersion: aws.String("String"), NewAvailabilityZones: []*string{ aws.String("String"), // Required // More values... }, NotificationTopicArn: aws.String("String"), NotificationTopicStatus: aws.String("String"), NumCacheNodes: aws.Int64(1), PreferredMaintenanceWindow: aws.String("String"), SecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, SnapshotRetentionLimit: aws.Int64(1), SnapshotWindow: aws.String("String"), } resp, err := svc.ModifyCacheCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_ModifyCacheParameterGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.ModifyCacheParameterGroupInput{ CacheParameterGroupName: aws.String("String"), // Required ParameterNameValues: []*elasticache.ParameterNameValue{ // Required { // Required ParameterName: aws.String("String"), ParameterValue: aws.String("String"), }, // More values... }, } resp, err := svc.ModifyCacheParameterGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_ModifyCacheSubnetGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.ModifyCacheSubnetGroupInput{ CacheSubnetGroupName: aws.String("String"), // Required CacheSubnetGroupDescription: aws.String("String"), SubnetIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.ModifyCacheSubnetGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_ModifyReplicationGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.ModifyReplicationGroupInput{ ReplicationGroupId: aws.String("String"), // Required ApplyImmediately: aws.Bool(true), AutoMinorVersionUpgrade: aws.Bool(true), AutomaticFailoverEnabled: aws.Bool(true), CacheNodeType: aws.String("String"), CacheParameterGroupName: aws.String("String"), CacheSecurityGroupNames: []*string{ aws.String("String"), // Required // More values... }, EngineVersion: aws.String("String"), NotificationTopicArn: aws.String("String"), NotificationTopicStatus: aws.String("String"), PreferredMaintenanceWindow: aws.String("String"), PrimaryClusterId: aws.String("String"), ReplicationGroupDescription: aws.String("String"), SecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, SnapshotRetentionLimit: aws.Int64(1), SnapshotWindow: aws.String("String"), SnapshottingClusterId: aws.String("String"), } resp, err := svc.ModifyReplicationGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_PurchaseReservedCacheNodesOffering() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.PurchaseReservedCacheNodesOfferingInput{ ReservedCacheNodesOfferingId: aws.String("String"), // Required CacheNodeCount: aws.Int64(1), ReservedCacheNodeId: aws.String("String"), } resp, err := svc.PurchaseReservedCacheNodesOffering(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_RebootCacheCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.RebootCacheClusterInput{ CacheClusterId: aws.String("String"), // Required CacheNodeIdsToReboot: []*string{ // Required aws.String("String"), // Required // More values... }, } resp, err := svc.RebootCacheCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_RemoveTagsFromResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.RemoveTagsFromResourceInput{ ResourceName: aws.String("String"), // Required TagKeys: []*string{ // Required aws.String("String"), // Required // More values... }, } resp, err := svc.RemoveTagsFromResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_ResetCacheParameterGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.ResetCacheParameterGroupInput{ CacheParameterGroupName: aws.String("String"), // Required ParameterNameValues: []*elasticache.ParameterNameValue{ { // Required ParameterName: aws.String("String"), ParameterValue: aws.String("String"), }, // More values... }, ResetAllParameters: aws.Bool(true), } resp, err := svc.ResetCacheParameterGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElastiCache_RevokeCacheSecurityGroupIngress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticache.New(sess) params := &elasticache.RevokeCacheSecurityGroupIngressInput{ CacheSecurityGroupName: aws.String("String"), // Required EC2SecurityGroupName: aws.String("String"), // Required EC2SecurityGroupOwnerId: aws.String("String"), // Required } resp, err := svc.RevokeCacheSecurityGroupIngress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/elasticache/service.go000066400000000000000000000064411300374646400214640ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package elasticache import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/query" ) // Amazon ElastiCache is a web service that makes it easier to set up, operate, // and scale a distributed cache in the cloud. // // With ElastiCache, customers get all of the benefits of a high-performance, // in-memory cache with less of the administrative burden involved in launching // and managing a distributed cache. The service makes setup, scaling, and cluster // failure handling much simpler than in a self-managed cache deployment. // // In addition, through integration with Amazon CloudWatch, customers get enhanced // visibility into the key performance statistics associated with their cache // and can receive alarms if a part of their cache runs hot. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type ElastiCache struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "elasticache" // New creates a new instance of the ElastiCache client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a ElastiCache client from just a session. // svc := elasticache.New(mySession) // // // Create a ElastiCache client with additional configuration // svc := elasticache.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *ElastiCache { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *ElastiCache { svc := &ElastiCache{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-02-02", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a ElastiCache operation and runs any // custom request initialization. func (c *ElastiCache) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/elasticache/waiters.go000066400000000000000000000115731300374646400215040ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package elasticache import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilCacheClusterAvailable uses the Amazon ElastiCache API operation // DescribeCacheClusters to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *ElastiCache) WaitUntilCacheClusterAvailable(input *DescribeCacheClustersInput) error { waiterCfg := waiter.Config{ Operation: "DescribeCacheClusters", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "CacheClusters[].CacheClusterStatus", Expected: "available", }, { State: "failure", Matcher: "pathAny", Argument: "CacheClusters[].CacheClusterStatus", Expected: "deleted", }, { State: "failure", Matcher: "pathAny", Argument: "CacheClusters[].CacheClusterStatus", Expected: "deleting", }, { State: "failure", Matcher: "pathAny", Argument: "CacheClusters[].CacheClusterStatus", Expected: "incompatible-network", }, { State: "failure", Matcher: "pathAny", Argument: "CacheClusters[].CacheClusterStatus", Expected: "restore-failed", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilCacheClusterDeleted uses the Amazon ElastiCache API operation // DescribeCacheClusters to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *ElastiCache) WaitUntilCacheClusterDeleted(input *DescribeCacheClustersInput) error { waiterCfg := waiter.Config{ Operation: "DescribeCacheClusters", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "CacheClusters[].CacheClusterStatus", Expected: "deleted", }, { State: "success", Matcher: "error", Argument: "", Expected: "CacheClusterNotFound", }, { State: "failure", Matcher: "pathAny", Argument: "CacheClusters[].CacheClusterStatus", Expected: "available", }, { State: "failure", Matcher: "pathAny", Argument: "CacheClusters[].CacheClusterStatus", Expected: "creating", }, { State: "failure", Matcher: "pathAny", Argument: "CacheClusters[].CacheClusterStatus", Expected: "incompatible-network", }, { State: "failure", Matcher: "pathAny", Argument: "CacheClusters[].CacheClusterStatus", Expected: "modifying", }, { State: "failure", Matcher: "pathAny", Argument: "CacheClusters[].CacheClusterStatus", Expected: "restore-failed", }, { State: "failure", Matcher: "pathAny", Argument: "CacheClusters[].CacheClusterStatus", Expected: "snapshotting", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilReplicationGroupAvailable uses the Amazon ElastiCache API operation // DescribeReplicationGroups to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *ElastiCache) WaitUntilReplicationGroupAvailable(input *DescribeReplicationGroupsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeReplicationGroups", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "ReplicationGroups[].Status", Expected: "available", }, { State: "failure", Matcher: "pathAny", Argument: "ReplicationGroups[].Status", Expected: "deleted", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilReplicationGroupDeleted uses the Amazon ElastiCache API operation // DescribeReplicationGroups to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *ElastiCache) WaitUntilReplicationGroupDeleted(input *DescribeReplicationGroupsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeReplicationGroups", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "ReplicationGroups[].Status", Expected: "deleted", }, { State: "failure", Matcher: "pathAny", Argument: "ReplicationGroups[].Status", Expected: "available", }, { State: "success", Matcher: "error", Argument: "", Expected: "ReplicationGroupNotFoundFault", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/elasticbeanstalk/000077500000000000000000000000001300374646400205345ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/elasticbeanstalk/api.go000066400000000000000000006755741300374646400216640ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package elasticbeanstalk provides a client for AWS Elastic Beanstalk. package elasticbeanstalk import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/query" ) const opAbortEnvironmentUpdate = "AbortEnvironmentUpdate" // AbortEnvironmentUpdateRequest generates a "aws/request.Request" representing the // client's request for the AbortEnvironmentUpdate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AbortEnvironmentUpdate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AbortEnvironmentUpdate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AbortEnvironmentUpdateRequest method. // req, resp := client.AbortEnvironmentUpdateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) AbortEnvironmentUpdateRequest(input *AbortEnvironmentUpdateInput) (req *request.Request, output *AbortEnvironmentUpdateOutput) { op := &request.Operation{ Name: opAbortEnvironmentUpdate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AbortEnvironmentUpdateInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AbortEnvironmentUpdateOutput{} req.Data = output return } // AbortEnvironmentUpdate API operation for AWS Elastic Beanstalk. // // Cancels in-progress environment configuration update or application version // deployment. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation AbortEnvironmentUpdate for usage and error information. // // Returned Error Codes: // * InsufficientPrivilegesException // The specified account does not have sufficient privileges for one of more // AWS services. // func (c *ElasticBeanstalk) AbortEnvironmentUpdate(input *AbortEnvironmentUpdateInput) (*AbortEnvironmentUpdateOutput, error) { req, out := c.AbortEnvironmentUpdateRequest(input) err := req.Send() return out, err } const opApplyEnvironmentManagedAction = "ApplyEnvironmentManagedAction" // ApplyEnvironmentManagedActionRequest generates a "aws/request.Request" representing the // client's request for the ApplyEnvironmentManagedAction operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ApplyEnvironmentManagedAction for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ApplyEnvironmentManagedAction method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ApplyEnvironmentManagedActionRequest method. // req, resp := client.ApplyEnvironmentManagedActionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) ApplyEnvironmentManagedActionRequest(input *ApplyEnvironmentManagedActionInput) (req *request.Request, output *ApplyEnvironmentManagedActionOutput) { op := &request.Operation{ Name: opApplyEnvironmentManagedAction, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ApplyEnvironmentManagedActionInput{} } req = c.newRequest(op, input, output) output = &ApplyEnvironmentManagedActionOutput{} req.Data = output return } // ApplyEnvironmentManagedAction API operation for AWS Elastic Beanstalk. // // Applies a scheduled managed action immediately. A managed action can be applied // only if its status is Scheduled. Get the status and action ID of a managed // action with DescribeEnvironmentManagedActions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation ApplyEnvironmentManagedAction for usage and error information. // // Returned Error Codes: // * ServiceException // A generic service exception has occurred. // // * ManagedActionInvalidStateException // Cannot modify the managed action in its current state. // func (c *ElasticBeanstalk) ApplyEnvironmentManagedAction(input *ApplyEnvironmentManagedActionInput) (*ApplyEnvironmentManagedActionOutput, error) { req, out := c.ApplyEnvironmentManagedActionRequest(input) err := req.Send() return out, err } const opCheckDNSAvailability = "CheckDNSAvailability" // CheckDNSAvailabilityRequest generates a "aws/request.Request" representing the // client's request for the CheckDNSAvailability operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CheckDNSAvailability for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CheckDNSAvailability method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CheckDNSAvailabilityRequest method. // req, resp := client.CheckDNSAvailabilityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) CheckDNSAvailabilityRequest(input *CheckDNSAvailabilityInput) (req *request.Request, output *CheckDNSAvailabilityOutput) { op := &request.Operation{ Name: opCheckDNSAvailability, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CheckDNSAvailabilityInput{} } req = c.newRequest(op, input, output) output = &CheckDNSAvailabilityOutput{} req.Data = output return } // CheckDNSAvailability API operation for AWS Elastic Beanstalk. // // Checks if the specified CNAME is available. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation CheckDNSAvailability for usage and error information. func (c *ElasticBeanstalk) CheckDNSAvailability(input *CheckDNSAvailabilityInput) (*CheckDNSAvailabilityOutput, error) { req, out := c.CheckDNSAvailabilityRequest(input) err := req.Send() return out, err } const opComposeEnvironments = "ComposeEnvironments" // ComposeEnvironmentsRequest generates a "aws/request.Request" representing the // client's request for the ComposeEnvironments operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ComposeEnvironments for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ComposeEnvironments method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ComposeEnvironmentsRequest method. // req, resp := client.ComposeEnvironmentsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) ComposeEnvironmentsRequest(input *ComposeEnvironmentsInput) (req *request.Request, output *EnvironmentDescriptionsMessage) { op := &request.Operation{ Name: opComposeEnvironments, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ComposeEnvironmentsInput{} } req = c.newRequest(op, input, output) output = &EnvironmentDescriptionsMessage{} req.Data = output return } // ComposeEnvironments API operation for AWS Elastic Beanstalk. // // Create or update a group of environments that each run a separate component // of a single application. Takes a list of version labels that specify application // source bundles for each of the environments to create or update. The name // of each environment and other required information must be included in the // source bundles in an environment manifest named env.yaml. See Compose Environments // (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-mgmt-compose.html) // for details. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation ComposeEnvironments for usage and error information. // // Returned Error Codes: // * TooManyEnvironmentsException // The specified account has reached its limit of environments. // // * InsufficientPrivilegesException // The specified account does not have sufficient privileges for one of more // AWS services. // func (c *ElasticBeanstalk) ComposeEnvironments(input *ComposeEnvironmentsInput) (*EnvironmentDescriptionsMessage, error) { req, out := c.ComposeEnvironmentsRequest(input) err := req.Send() return out, err } const opCreateApplication = "CreateApplication" // CreateApplicationRequest generates a "aws/request.Request" representing the // client's request for the CreateApplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateApplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateApplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateApplicationRequest method. // req, resp := client.CreateApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) CreateApplicationRequest(input *CreateApplicationInput) (req *request.Request, output *ApplicationDescriptionMessage) { op := &request.Operation{ Name: opCreateApplication, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateApplicationInput{} } req = c.newRequest(op, input, output) output = &ApplicationDescriptionMessage{} req.Data = output return } // CreateApplication API operation for AWS Elastic Beanstalk. // // Creates an application that has one configuration template named default // and no application versions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation CreateApplication for usage and error information. // // Returned Error Codes: // * TooManyApplicationsException // The specified account has reached its limit of applications. // func (c *ElasticBeanstalk) CreateApplication(input *CreateApplicationInput) (*ApplicationDescriptionMessage, error) { req, out := c.CreateApplicationRequest(input) err := req.Send() return out, err } const opCreateApplicationVersion = "CreateApplicationVersion" // CreateApplicationVersionRequest generates a "aws/request.Request" representing the // client's request for the CreateApplicationVersion operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateApplicationVersion for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateApplicationVersion method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateApplicationVersionRequest method. // req, resp := client.CreateApplicationVersionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) CreateApplicationVersionRequest(input *CreateApplicationVersionInput) (req *request.Request, output *ApplicationVersionDescriptionMessage) { op := &request.Operation{ Name: opCreateApplicationVersion, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateApplicationVersionInput{} } req = c.newRequest(op, input, output) output = &ApplicationVersionDescriptionMessage{} req.Data = output return } // CreateApplicationVersion API operation for AWS Elastic Beanstalk. // // Creates an application version for the specified application. // // Once you create an application version with a specified Amazon S3 bucket // and key location, you cannot change that Amazon S3 location. If you change // the Amazon S3 location, you receive an exception when you attempt to launch // an environment from the application version. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation CreateApplicationVersion for usage and error information. // // Returned Error Codes: // * TooManyApplicationsException // The specified account has reached its limit of applications. // // * TooManyApplicationVersionsException // The specified account has reached its limit of application versions. // // * InsufficientPrivilegesException // The specified account does not have sufficient privileges for one of more // AWS services. // // * S3LocationNotInServiceRegionException // The specified S3 bucket does not belong to the S3 region in which the service // is running. // func (c *ElasticBeanstalk) CreateApplicationVersion(input *CreateApplicationVersionInput) (*ApplicationVersionDescriptionMessage, error) { req, out := c.CreateApplicationVersionRequest(input) err := req.Send() return out, err } const opCreateConfigurationTemplate = "CreateConfigurationTemplate" // CreateConfigurationTemplateRequest generates a "aws/request.Request" representing the // client's request for the CreateConfigurationTemplate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateConfigurationTemplate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateConfigurationTemplate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateConfigurationTemplateRequest method. // req, resp := client.CreateConfigurationTemplateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) CreateConfigurationTemplateRequest(input *CreateConfigurationTemplateInput) (req *request.Request, output *ConfigurationSettingsDescription) { op := &request.Operation{ Name: opCreateConfigurationTemplate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateConfigurationTemplateInput{} } req = c.newRequest(op, input, output) output = &ConfigurationSettingsDescription{} req.Data = output return } // CreateConfigurationTemplate API operation for AWS Elastic Beanstalk. // // Creates a configuration template. Templates are associated with a specific // application and are used to deploy different versions of the application // with the same configuration settings. // // Related Topics // // * DescribeConfigurationOptions // // * DescribeConfigurationSettings // // * ListAvailableSolutionStacks // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation CreateConfigurationTemplate for usage and error information. // // Returned Error Codes: // * InsufficientPrivilegesException // The specified account does not have sufficient privileges for one of more // AWS services. // // * TooManyBucketsException // The specified account has reached its limit of Amazon S3 buckets. // // * TooManyConfigurationTemplatesException // The specified account has reached its limit of configuration templates. // func (c *ElasticBeanstalk) CreateConfigurationTemplate(input *CreateConfigurationTemplateInput) (*ConfigurationSettingsDescription, error) { req, out := c.CreateConfigurationTemplateRequest(input) err := req.Send() return out, err } const opCreateEnvironment = "CreateEnvironment" // CreateEnvironmentRequest generates a "aws/request.Request" representing the // client's request for the CreateEnvironment operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateEnvironment for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateEnvironment method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateEnvironmentRequest method. // req, resp := client.CreateEnvironmentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) CreateEnvironmentRequest(input *CreateEnvironmentInput) (req *request.Request, output *EnvironmentDescription) { op := &request.Operation{ Name: opCreateEnvironment, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateEnvironmentInput{} } req = c.newRequest(op, input, output) output = &EnvironmentDescription{} req.Data = output return } // CreateEnvironment API operation for AWS Elastic Beanstalk. // // Launches an environment for the specified application using the specified // configuration. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation CreateEnvironment for usage and error information. // // Returned Error Codes: // * TooManyEnvironmentsException // The specified account has reached its limit of environments. // // * InsufficientPrivilegesException // The specified account does not have sufficient privileges for one of more // AWS services. // func (c *ElasticBeanstalk) CreateEnvironment(input *CreateEnvironmentInput) (*EnvironmentDescription, error) { req, out := c.CreateEnvironmentRequest(input) err := req.Send() return out, err } const opCreateStorageLocation = "CreateStorageLocation" // CreateStorageLocationRequest generates a "aws/request.Request" representing the // client's request for the CreateStorageLocation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateStorageLocation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateStorageLocation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateStorageLocationRequest method. // req, resp := client.CreateStorageLocationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) CreateStorageLocationRequest(input *CreateStorageLocationInput) (req *request.Request, output *CreateStorageLocationOutput) { op := &request.Operation{ Name: opCreateStorageLocation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateStorageLocationInput{} } req = c.newRequest(op, input, output) output = &CreateStorageLocationOutput{} req.Data = output return } // CreateStorageLocation API operation for AWS Elastic Beanstalk. // // Creates the Amazon S3 storage location for the account. // // This location is used to store user log files. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation CreateStorageLocation for usage and error information. // // Returned Error Codes: // * TooManyBucketsException // The specified account has reached its limit of Amazon S3 buckets. // // * S3SubscriptionRequiredException // The specified account does not have a subscription to Amazon S3. // // * InsufficientPrivilegesException // The specified account does not have sufficient privileges for one of more // AWS services. // func (c *ElasticBeanstalk) CreateStorageLocation(input *CreateStorageLocationInput) (*CreateStorageLocationOutput, error) { req, out := c.CreateStorageLocationRequest(input) err := req.Send() return out, err } const opDeleteApplication = "DeleteApplication" // DeleteApplicationRequest generates a "aws/request.Request" representing the // client's request for the DeleteApplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteApplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteApplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteApplicationRequest method. // req, resp := client.DeleteApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) DeleteApplicationRequest(input *DeleteApplicationInput) (req *request.Request, output *DeleteApplicationOutput) { op := &request.Operation{ Name: opDeleteApplication, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteApplicationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteApplicationOutput{} req.Data = output return } // DeleteApplication API operation for AWS Elastic Beanstalk. // // Deletes the specified application along with all associated versions and // configurations. The application versions will not be deleted from your Amazon // S3 bucket. // // You cannot delete an application that has a running environment. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation DeleteApplication for usage and error information. // // Returned Error Codes: // * OperationInProgressFailure // Unable to perform the specified operation because another operation that // effects an element in this activity is already in progress. // func (c *ElasticBeanstalk) DeleteApplication(input *DeleteApplicationInput) (*DeleteApplicationOutput, error) { req, out := c.DeleteApplicationRequest(input) err := req.Send() return out, err } const opDeleteApplicationVersion = "DeleteApplicationVersion" // DeleteApplicationVersionRequest generates a "aws/request.Request" representing the // client's request for the DeleteApplicationVersion operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteApplicationVersion for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteApplicationVersion method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteApplicationVersionRequest method. // req, resp := client.DeleteApplicationVersionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) DeleteApplicationVersionRequest(input *DeleteApplicationVersionInput) (req *request.Request, output *DeleteApplicationVersionOutput) { op := &request.Operation{ Name: opDeleteApplicationVersion, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteApplicationVersionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteApplicationVersionOutput{} req.Data = output return } // DeleteApplicationVersion API operation for AWS Elastic Beanstalk. // // Deletes the specified version from the specified application. // // You cannot delete an application version that is associated with a running // environment. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation DeleteApplicationVersion for usage and error information. // // Returned Error Codes: // * SourceBundleDeletionFailure // Unable to delete the Amazon S3 source bundle associated with the application // version. The application version was deleted successfully. // // * InsufficientPrivilegesException // The specified account does not have sufficient privileges for one of more // AWS services. // // * OperationInProgressFailure // Unable to perform the specified operation because another operation that // effects an element in this activity is already in progress. // // * S3LocationNotInServiceRegionException // The specified S3 bucket does not belong to the S3 region in which the service // is running. // func (c *ElasticBeanstalk) DeleteApplicationVersion(input *DeleteApplicationVersionInput) (*DeleteApplicationVersionOutput, error) { req, out := c.DeleteApplicationVersionRequest(input) err := req.Send() return out, err } const opDeleteConfigurationTemplate = "DeleteConfigurationTemplate" // DeleteConfigurationTemplateRequest generates a "aws/request.Request" representing the // client's request for the DeleteConfigurationTemplate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteConfigurationTemplate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteConfigurationTemplate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteConfigurationTemplateRequest method. // req, resp := client.DeleteConfigurationTemplateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) DeleteConfigurationTemplateRequest(input *DeleteConfigurationTemplateInput) (req *request.Request, output *DeleteConfigurationTemplateOutput) { op := &request.Operation{ Name: opDeleteConfigurationTemplate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteConfigurationTemplateInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteConfigurationTemplateOutput{} req.Data = output return } // DeleteConfigurationTemplate API operation for AWS Elastic Beanstalk. // // Deletes the specified configuration template. // // When you launch an environment using a configuration template, the environment // gets a copy of the template. You can delete or modify the environment's copy // of the template without affecting the running environment. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation DeleteConfigurationTemplate for usage and error information. // // Returned Error Codes: // * OperationInProgressFailure // Unable to perform the specified operation because another operation that // effects an element in this activity is already in progress. // func (c *ElasticBeanstalk) DeleteConfigurationTemplate(input *DeleteConfigurationTemplateInput) (*DeleteConfigurationTemplateOutput, error) { req, out := c.DeleteConfigurationTemplateRequest(input) err := req.Send() return out, err } const opDeleteEnvironmentConfiguration = "DeleteEnvironmentConfiguration" // DeleteEnvironmentConfigurationRequest generates a "aws/request.Request" representing the // client's request for the DeleteEnvironmentConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteEnvironmentConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteEnvironmentConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteEnvironmentConfigurationRequest method. // req, resp := client.DeleteEnvironmentConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) DeleteEnvironmentConfigurationRequest(input *DeleteEnvironmentConfigurationInput) (req *request.Request, output *DeleteEnvironmentConfigurationOutput) { op := &request.Operation{ Name: opDeleteEnvironmentConfiguration, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteEnvironmentConfigurationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteEnvironmentConfigurationOutput{} req.Data = output return } // DeleteEnvironmentConfiguration API operation for AWS Elastic Beanstalk. // // Deletes the draft configuration associated with the running environment. // // Updating a running environment with any configuration changes creates a draft // configuration set. You can get the draft configuration using DescribeConfigurationSettings // while the update is in progress or if the update fails. The DeploymentStatus // for the draft configuration indicates whether the deployment is in process // or has failed. The draft configuration remains in existence until it is deleted // with this action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation DeleteEnvironmentConfiguration for usage and error information. func (c *ElasticBeanstalk) DeleteEnvironmentConfiguration(input *DeleteEnvironmentConfigurationInput) (*DeleteEnvironmentConfigurationOutput, error) { req, out := c.DeleteEnvironmentConfigurationRequest(input) err := req.Send() return out, err } const opDescribeApplicationVersions = "DescribeApplicationVersions" // DescribeApplicationVersionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeApplicationVersions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeApplicationVersions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeApplicationVersions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeApplicationVersionsRequest method. // req, resp := client.DescribeApplicationVersionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) DescribeApplicationVersionsRequest(input *DescribeApplicationVersionsInput) (req *request.Request, output *DescribeApplicationVersionsOutput) { op := &request.Operation{ Name: opDescribeApplicationVersions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeApplicationVersionsInput{} } req = c.newRequest(op, input, output) output = &DescribeApplicationVersionsOutput{} req.Data = output return } // DescribeApplicationVersions API operation for AWS Elastic Beanstalk. // // Retrieve a list of application versions stored in your AWS Elastic Beanstalk // storage bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation DescribeApplicationVersions for usage and error information. func (c *ElasticBeanstalk) DescribeApplicationVersions(input *DescribeApplicationVersionsInput) (*DescribeApplicationVersionsOutput, error) { req, out := c.DescribeApplicationVersionsRequest(input) err := req.Send() return out, err } const opDescribeApplications = "DescribeApplications" // DescribeApplicationsRequest generates a "aws/request.Request" representing the // client's request for the DescribeApplications operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeApplications for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeApplications method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeApplicationsRequest method. // req, resp := client.DescribeApplicationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) DescribeApplicationsRequest(input *DescribeApplicationsInput) (req *request.Request, output *DescribeApplicationsOutput) { op := &request.Operation{ Name: opDescribeApplications, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeApplicationsInput{} } req = c.newRequest(op, input, output) output = &DescribeApplicationsOutput{} req.Data = output return } // DescribeApplications API operation for AWS Elastic Beanstalk. // // Returns the descriptions of existing applications. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation DescribeApplications for usage and error information. func (c *ElasticBeanstalk) DescribeApplications(input *DescribeApplicationsInput) (*DescribeApplicationsOutput, error) { req, out := c.DescribeApplicationsRequest(input) err := req.Send() return out, err } const opDescribeConfigurationOptions = "DescribeConfigurationOptions" // DescribeConfigurationOptionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeConfigurationOptions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeConfigurationOptions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeConfigurationOptions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeConfigurationOptionsRequest method. // req, resp := client.DescribeConfigurationOptionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) DescribeConfigurationOptionsRequest(input *DescribeConfigurationOptionsInput) (req *request.Request, output *DescribeConfigurationOptionsOutput) { op := &request.Operation{ Name: opDescribeConfigurationOptions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeConfigurationOptionsInput{} } req = c.newRequest(op, input, output) output = &DescribeConfigurationOptionsOutput{} req.Data = output return } // DescribeConfigurationOptions API operation for AWS Elastic Beanstalk. // // Describes the configuration options that are used in a particular configuration // template or environment, or that a specified solution stack defines. The // description includes the values the options, their default values, and an // indication of the required action on a running environment if an option value // is changed. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation DescribeConfigurationOptions for usage and error information. // // Returned Error Codes: // * TooManyBucketsException // The specified account has reached its limit of Amazon S3 buckets. // func (c *ElasticBeanstalk) DescribeConfigurationOptions(input *DescribeConfigurationOptionsInput) (*DescribeConfigurationOptionsOutput, error) { req, out := c.DescribeConfigurationOptionsRequest(input) err := req.Send() return out, err } const opDescribeConfigurationSettings = "DescribeConfigurationSettings" // DescribeConfigurationSettingsRequest generates a "aws/request.Request" representing the // client's request for the DescribeConfigurationSettings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeConfigurationSettings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeConfigurationSettings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeConfigurationSettingsRequest method. // req, resp := client.DescribeConfigurationSettingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) DescribeConfigurationSettingsRequest(input *DescribeConfigurationSettingsInput) (req *request.Request, output *DescribeConfigurationSettingsOutput) { op := &request.Operation{ Name: opDescribeConfigurationSettings, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeConfigurationSettingsInput{} } req = c.newRequest(op, input, output) output = &DescribeConfigurationSettingsOutput{} req.Data = output return } // DescribeConfigurationSettings API operation for AWS Elastic Beanstalk. // // Returns a description of the settings for the specified configuration set, // that is, either a configuration template or the configuration set associated // with a running environment. // // When describing the settings for the configuration set associated with a // running environment, it is possible to receive two sets of setting descriptions. // One is the deployed configuration set, and the other is a draft configuration // of an environment that is either in the process of deployment or that failed // to deploy. // // Related Topics // // * DeleteEnvironmentConfiguration // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation DescribeConfigurationSettings for usage and error information. // // Returned Error Codes: // * TooManyBucketsException // The specified account has reached its limit of Amazon S3 buckets. // func (c *ElasticBeanstalk) DescribeConfigurationSettings(input *DescribeConfigurationSettingsInput) (*DescribeConfigurationSettingsOutput, error) { req, out := c.DescribeConfigurationSettingsRequest(input) err := req.Send() return out, err } const opDescribeEnvironmentHealth = "DescribeEnvironmentHealth" // DescribeEnvironmentHealthRequest generates a "aws/request.Request" representing the // client's request for the DescribeEnvironmentHealth operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEnvironmentHealth for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEnvironmentHealth method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEnvironmentHealthRequest method. // req, resp := client.DescribeEnvironmentHealthRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) DescribeEnvironmentHealthRequest(input *DescribeEnvironmentHealthInput) (req *request.Request, output *DescribeEnvironmentHealthOutput) { op := &request.Operation{ Name: opDescribeEnvironmentHealth, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeEnvironmentHealthInput{} } req = c.newRequest(op, input, output) output = &DescribeEnvironmentHealthOutput{} req.Data = output return } // DescribeEnvironmentHealth API operation for AWS Elastic Beanstalk. // // Returns information about the overall health of the specified environment. // The DescribeEnvironmentHealth operation is only available with AWS Elastic // Beanstalk Enhanced Health. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation DescribeEnvironmentHealth for usage and error information. // // Returned Error Codes: // * InvalidRequestException // One or more input parameters is not valid. Please correct the input parameters // and try the operation again. // // * ServiceException // A generic service exception has occurred. // func (c *ElasticBeanstalk) DescribeEnvironmentHealth(input *DescribeEnvironmentHealthInput) (*DescribeEnvironmentHealthOutput, error) { req, out := c.DescribeEnvironmentHealthRequest(input) err := req.Send() return out, err } const opDescribeEnvironmentManagedActionHistory = "DescribeEnvironmentManagedActionHistory" // DescribeEnvironmentManagedActionHistoryRequest generates a "aws/request.Request" representing the // client's request for the DescribeEnvironmentManagedActionHistory operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEnvironmentManagedActionHistory for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEnvironmentManagedActionHistory method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEnvironmentManagedActionHistoryRequest method. // req, resp := client.DescribeEnvironmentManagedActionHistoryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) DescribeEnvironmentManagedActionHistoryRequest(input *DescribeEnvironmentManagedActionHistoryInput) (req *request.Request, output *DescribeEnvironmentManagedActionHistoryOutput) { op := &request.Operation{ Name: opDescribeEnvironmentManagedActionHistory, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeEnvironmentManagedActionHistoryInput{} } req = c.newRequest(op, input, output) output = &DescribeEnvironmentManagedActionHistoryOutput{} req.Data = output return } // DescribeEnvironmentManagedActionHistory API operation for AWS Elastic Beanstalk. // // Lists an environment's completed and failed managed actions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation DescribeEnvironmentManagedActionHistory for usage and error information. // // Returned Error Codes: // * ServiceException // A generic service exception has occurred. // func (c *ElasticBeanstalk) DescribeEnvironmentManagedActionHistory(input *DescribeEnvironmentManagedActionHistoryInput) (*DescribeEnvironmentManagedActionHistoryOutput, error) { req, out := c.DescribeEnvironmentManagedActionHistoryRequest(input) err := req.Send() return out, err } const opDescribeEnvironmentManagedActions = "DescribeEnvironmentManagedActions" // DescribeEnvironmentManagedActionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeEnvironmentManagedActions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEnvironmentManagedActions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEnvironmentManagedActions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEnvironmentManagedActionsRequest method. // req, resp := client.DescribeEnvironmentManagedActionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) DescribeEnvironmentManagedActionsRequest(input *DescribeEnvironmentManagedActionsInput) (req *request.Request, output *DescribeEnvironmentManagedActionsOutput) { op := &request.Operation{ Name: opDescribeEnvironmentManagedActions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeEnvironmentManagedActionsInput{} } req = c.newRequest(op, input, output) output = &DescribeEnvironmentManagedActionsOutput{} req.Data = output return } // DescribeEnvironmentManagedActions API operation for AWS Elastic Beanstalk. // // Lists an environment's upcoming and in-progress managed actions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation DescribeEnvironmentManagedActions for usage and error information. // // Returned Error Codes: // * ServiceException // A generic service exception has occurred. // func (c *ElasticBeanstalk) DescribeEnvironmentManagedActions(input *DescribeEnvironmentManagedActionsInput) (*DescribeEnvironmentManagedActionsOutput, error) { req, out := c.DescribeEnvironmentManagedActionsRequest(input) err := req.Send() return out, err } const opDescribeEnvironmentResources = "DescribeEnvironmentResources" // DescribeEnvironmentResourcesRequest generates a "aws/request.Request" representing the // client's request for the DescribeEnvironmentResources operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEnvironmentResources for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEnvironmentResources method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEnvironmentResourcesRequest method. // req, resp := client.DescribeEnvironmentResourcesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) DescribeEnvironmentResourcesRequest(input *DescribeEnvironmentResourcesInput) (req *request.Request, output *DescribeEnvironmentResourcesOutput) { op := &request.Operation{ Name: opDescribeEnvironmentResources, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeEnvironmentResourcesInput{} } req = c.newRequest(op, input, output) output = &DescribeEnvironmentResourcesOutput{} req.Data = output return } // DescribeEnvironmentResources API operation for AWS Elastic Beanstalk. // // Returns AWS resources for this environment. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation DescribeEnvironmentResources for usage and error information. // // Returned Error Codes: // * InsufficientPrivilegesException // The specified account does not have sufficient privileges for one of more // AWS services. // func (c *ElasticBeanstalk) DescribeEnvironmentResources(input *DescribeEnvironmentResourcesInput) (*DescribeEnvironmentResourcesOutput, error) { req, out := c.DescribeEnvironmentResourcesRequest(input) err := req.Send() return out, err } const opDescribeEnvironments = "DescribeEnvironments" // DescribeEnvironmentsRequest generates a "aws/request.Request" representing the // client's request for the DescribeEnvironments operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEnvironments for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEnvironments method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEnvironmentsRequest method. // req, resp := client.DescribeEnvironmentsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) DescribeEnvironmentsRequest(input *DescribeEnvironmentsInput) (req *request.Request, output *EnvironmentDescriptionsMessage) { op := &request.Operation{ Name: opDescribeEnvironments, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeEnvironmentsInput{} } req = c.newRequest(op, input, output) output = &EnvironmentDescriptionsMessage{} req.Data = output return } // DescribeEnvironments API operation for AWS Elastic Beanstalk. // // Returns descriptions for existing environments. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation DescribeEnvironments for usage and error information. func (c *ElasticBeanstalk) DescribeEnvironments(input *DescribeEnvironmentsInput) (*EnvironmentDescriptionsMessage, error) { req, out := c.DescribeEnvironmentsRequest(input) err := req.Send() return out, err } const opDescribeEvents = "DescribeEvents" // DescribeEventsRequest generates a "aws/request.Request" representing the // client's request for the DescribeEvents operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEvents for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEvents method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEventsRequest method. // req, resp := client.DescribeEventsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) DescribeEventsRequest(input *DescribeEventsInput) (req *request.Request, output *DescribeEventsOutput) { op := &request.Operation{ Name: opDescribeEvents, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeEventsInput{} } req = c.newRequest(op, input, output) output = &DescribeEventsOutput{} req.Data = output return } // DescribeEvents API operation for AWS Elastic Beanstalk. // // Returns list of event descriptions matching criteria up to the last 6 weeks. // // This action returns the most recent 1,000 events from the specified NextToken. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation DescribeEvents for usage and error information. func (c *ElasticBeanstalk) DescribeEvents(input *DescribeEventsInput) (*DescribeEventsOutput, error) { req, out := c.DescribeEventsRequest(input) err := req.Send() return out, err } // DescribeEventsPages iterates over the pages of a DescribeEvents operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeEvents method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeEvents operation. // pageNum := 0 // err := client.DescribeEventsPages(params, // func(page *DescribeEventsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ElasticBeanstalk) DescribeEventsPages(input *DescribeEventsInput, fn func(p *DescribeEventsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeEventsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeEventsOutput), lastPage) }) } const opDescribeInstancesHealth = "DescribeInstancesHealth" // DescribeInstancesHealthRequest generates a "aws/request.Request" representing the // client's request for the DescribeInstancesHealth operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeInstancesHealth for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeInstancesHealth method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeInstancesHealthRequest method. // req, resp := client.DescribeInstancesHealthRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) DescribeInstancesHealthRequest(input *DescribeInstancesHealthInput) (req *request.Request, output *DescribeInstancesHealthOutput) { op := &request.Operation{ Name: opDescribeInstancesHealth, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeInstancesHealthInput{} } req = c.newRequest(op, input, output) output = &DescribeInstancesHealthOutput{} req.Data = output return } // DescribeInstancesHealth API operation for AWS Elastic Beanstalk. // // Returns more detailed information about the health of the specified instances // (for example, CPU utilization, load average, and causes). The DescribeInstancesHealth // operation is only available with AWS Elastic Beanstalk Enhanced Health. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation DescribeInstancesHealth for usage and error information. // // Returned Error Codes: // * InvalidRequestException // One or more input parameters is not valid. Please correct the input parameters // and try the operation again. // // * ServiceException // A generic service exception has occurred. // func (c *ElasticBeanstalk) DescribeInstancesHealth(input *DescribeInstancesHealthInput) (*DescribeInstancesHealthOutput, error) { req, out := c.DescribeInstancesHealthRequest(input) err := req.Send() return out, err } const opListAvailableSolutionStacks = "ListAvailableSolutionStacks" // ListAvailableSolutionStacksRequest generates a "aws/request.Request" representing the // client's request for the ListAvailableSolutionStacks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListAvailableSolutionStacks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListAvailableSolutionStacks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListAvailableSolutionStacksRequest method. // req, resp := client.ListAvailableSolutionStacksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) ListAvailableSolutionStacksRequest(input *ListAvailableSolutionStacksInput) (req *request.Request, output *ListAvailableSolutionStacksOutput) { op := &request.Operation{ Name: opListAvailableSolutionStacks, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListAvailableSolutionStacksInput{} } req = c.newRequest(op, input, output) output = &ListAvailableSolutionStacksOutput{} req.Data = output return } // ListAvailableSolutionStacks API operation for AWS Elastic Beanstalk. // // Returns a list of the available solution stack names. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation ListAvailableSolutionStacks for usage and error information. func (c *ElasticBeanstalk) ListAvailableSolutionStacks(input *ListAvailableSolutionStacksInput) (*ListAvailableSolutionStacksOutput, error) { req, out := c.ListAvailableSolutionStacksRequest(input) err := req.Send() return out, err } const opRebuildEnvironment = "RebuildEnvironment" // RebuildEnvironmentRequest generates a "aws/request.Request" representing the // client's request for the RebuildEnvironment operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RebuildEnvironment for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RebuildEnvironment method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RebuildEnvironmentRequest method. // req, resp := client.RebuildEnvironmentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) RebuildEnvironmentRequest(input *RebuildEnvironmentInput) (req *request.Request, output *RebuildEnvironmentOutput) { op := &request.Operation{ Name: opRebuildEnvironment, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RebuildEnvironmentInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RebuildEnvironmentOutput{} req.Data = output return } // RebuildEnvironment API operation for AWS Elastic Beanstalk. // // Deletes and recreates all of the AWS resources (for example: the Auto Scaling // group, load balancer, etc.) for a specified environment and forces a restart. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation RebuildEnvironment for usage and error information. // // Returned Error Codes: // * InsufficientPrivilegesException // The specified account does not have sufficient privileges for one of more // AWS services. // func (c *ElasticBeanstalk) RebuildEnvironment(input *RebuildEnvironmentInput) (*RebuildEnvironmentOutput, error) { req, out := c.RebuildEnvironmentRequest(input) err := req.Send() return out, err } const opRequestEnvironmentInfo = "RequestEnvironmentInfo" // RequestEnvironmentInfoRequest generates a "aws/request.Request" representing the // client's request for the RequestEnvironmentInfo operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RequestEnvironmentInfo for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RequestEnvironmentInfo method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RequestEnvironmentInfoRequest method. // req, resp := client.RequestEnvironmentInfoRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) RequestEnvironmentInfoRequest(input *RequestEnvironmentInfoInput) (req *request.Request, output *RequestEnvironmentInfoOutput) { op := &request.Operation{ Name: opRequestEnvironmentInfo, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RequestEnvironmentInfoInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RequestEnvironmentInfoOutput{} req.Data = output return } // RequestEnvironmentInfo API operation for AWS Elastic Beanstalk. // // Initiates a request to compile the specified type of information of the deployed // environment. // // Setting the InfoType to tail compiles the last lines from the application // server log files of every Amazon EC2 instance in your environment. // // Setting the InfoType to bundle compresses the application server log files // for every Amazon EC2 instance into a .zip file. Legacy and .NET containers // do not support bundle logs. // // Use RetrieveEnvironmentInfo to obtain the set of logs. // // Related Topics // // * RetrieveEnvironmentInfo // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation RequestEnvironmentInfo for usage and error information. func (c *ElasticBeanstalk) RequestEnvironmentInfo(input *RequestEnvironmentInfoInput) (*RequestEnvironmentInfoOutput, error) { req, out := c.RequestEnvironmentInfoRequest(input) err := req.Send() return out, err } const opRestartAppServer = "RestartAppServer" // RestartAppServerRequest generates a "aws/request.Request" representing the // client's request for the RestartAppServer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RestartAppServer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RestartAppServer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RestartAppServerRequest method. // req, resp := client.RestartAppServerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) RestartAppServerRequest(input *RestartAppServerInput) (req *request.Request, output *RestartAppServerOutput) { op := &request.Operation{ Name: opRestartAppServer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RestartAppServerInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RestartAppServerOutput{} req.Data = output return } // RestartAppServer API operation for AWS Elastic Beanstalk. // // Causes the environment to restart the application container server running // on each Amazon EC2 instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation RestartAppServer for usage and error information. func (c *ElasticBeanstalk) RestartAppServer(input *RestartAppServerInput) (*RestartAppServerOutput, error) { req, out := c.RestartAppServerRequest(input) err := req.Send() return out, err } const opRetrieveEnvironmentInfo = "RetrieveEnvironmentInfo" // RetrieveEnvironmentInfoRequest generates a "aws/request.Request" representing the // client's request for the RetrieveEnvironmentInfo operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RetrieveEnvironmentInfo for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RetrieveEnvironmentInfo method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RetrieveEnvironmentInfoRequest method. // req, resp := client.RetrieveEnvironmentInfoRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) RetrieveEnvironmentInfoRequest(input *RetrieveEnvironmentInfoInput) (req *request.Request, output *RetrieveEnvironmentInfoOutput) { op := &request.Operation{ Name: opRetrieveEnvironmentInfo, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RetrieveEnvironmentInfoInput{} } req = c.newRequest(op, input, output) output = &RetrieveEnvironmentInfoOutput{} req.Data = output return } // RetrieveEnvironmentInfo API operation for AWS Elastic Beanstalk. // // Retrieves the compiled information from a RequestEnvironmentInfo request. // // Related Topics // // * RequestEnvironmentInfo // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation RetrieveEnvironmentInfo for usage and error information. func (c *ElasticBeanstalk) RetrieveEnvironmentInfo(input *RetrieveEnvironmentInfoInput) (*RetrieveEnvironmentInfoOutput, error) { req, out := c.RetrieveEnvironmentInfoRequest(input) err := req.Send() return out, err } const opSwapEnvironmentCNAMEs = "SwapEnvironmentCNAMEs" // SwapEnvironmentCNAMEsRequest generates a "aws/request.Request" representing the // client's request for the SwapEnvironmentCNAMEs operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SwapEnvironmentCNAMEs for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SwapEnvironmentCNAMEs method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SwapEnvironmentCNAMEsRequest method. // req, resp := client.SwapEnvironmentCNAMEsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) SwapEnvironmentCNAMEsRequest(input *SwapEnvironmentCNAMEsInput) (req *request.Request, output *SwapEnvironmentCNAMEsOutput) { op := &request.Operation{ Name: opSwapEnvironmentCNAMEs, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SwapEnvironmentCNAMEsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SwapEnvironmentCNAMEsOutput{} req.Data = output return } // SwapEnvironmentCNAMEs API operation for AWS Elastic Beanstalk. // // Swaps the CNAMEs of two environments. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation SwapEnvironmentCNAMEs for usage and error information. func (c *ElasticBeanstalk) SwapEnvironmentCNAMEs(input *SwapEnvironmentCNAMEsInput) (*SwapEnvironmentCNAMEsOutput, error) { req, out := c.SwapEnvironmentCNAMEsRequest(input) err := req.Send() return out, err } const opTerminateEnvironment = "TerminateEnvironment" // TerminateEnvironmentRequest generates a "aws/request.Request" representing the // client's request for the TerminateEnvironment operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See TerminateEnvironment for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the TerminateEnvironment method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the TerminateEnvironmentRequest method. // req, resp := client.TerminateEnvironmentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) TerminateEnvironmentRequest(input *TerminateEnvironmentInput) (req *request.Request, output *EnvironmentDescription) { op := &request.Operation{ Name: opTerminateEnvironment, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &TerminateEnvironmentInput{} } req = c.newRequest(op, input, output) output = &EnvironmentDescription{} req.Data = output return } // TerminateEnvironment API operation for AWS Elastic Beanstalk. // // Terminates the specified environment. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation TerminateEnvironment for usage and error information. // // Returned Error Codes: // * InsufficientPrivilegesException // The specified account does not have sufficient privileges for one of more // AWS services. // func (c *ElasticBeanstalk) TerminateEnvironment(input *TerminateEnvironmentInput) (*EnvironmentDescription, error) { req, out := c.TerminateEnvironmentRequest(input) err := req.Send() return out, err } const opUpdateApplication = "UpdateApplication" // UpdateApplicationRequest generates a "aws/request.Request" representing the // client's request for the UpdateApplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateApplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateApplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateApplicationRequest method. // req, resp := client.UpdateApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) UpdateApplicationRequest(input *UpdateApplicationInput) (req *request.Request, output *ApplicationDescriptionMessage) { op := &request.Operation{ Name: opUpdateApplication, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateApplicationInput{} } req = c.newRequest(op, input, output) output = &ApplicationDescriptionMessage{} req.Data = output return } // UpdateApplication API operation for AWS Elastic Beanstalk. // // Updates the specified application to have the specified properties. // // If a property (for example, description) is not provided, the value remains // unchanged. To clear these properties, specify an empty string. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation UpdateApplication for usage and error information. func (c *ElasticBeanstalk) UpdateApplication(input *UpdateApplicationInput) (*ApplicationDescriptionMessage, error) { req, out := c.UpdateApplicationRequest(input) err := req.Send() return out, err } const opUpdateApplicationVersion = "UpdateApplicationVersion" // UpdateApplicationVersionRequest generates a "aws/request.Request" representing the // client's request for the UpdateApplicationVersion operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateApplicationVersion for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateApplicationVersion method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateApplicationVersionRequest method. // req, resp := client.UpdateApplicationVersionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) UpdateApplicationVersionRequest(input *UpdateApplicationVersionInput) (req *request.Request, output *ApplicationVersionDescriptionMessage) { op := &request.Operation{ Name: opUpdateApplicationVersion, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateApplicationVersionInput{} } req = c.newRequest(op, input, output) output = &ApplicationVersionDescriptionMessage{} req.Data = output return } // UpdateApplicationVersion API operation for AWS Elastic Beanstalk. // // Updates the specified application version to have the specified properties. // // If a property (for example, description) is not provided, the value remains // unchanged. To clear properties, specify an empty string. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation UpdateApplicationVersion for usage and error information. func (c *ElasticBeanstalk) UpdateApplicationVersion(input *UpdateApplicationVersionInput) (*ApplicationVersionDescriptionMessage, error) { req, out := c.UpdateApplicationVersionRequest(input) err := req.Send() return out, err } const opUpdateConfigurationTemplate = "UpdateConfigurationTemplate" // UpdateConfigurationTemplateRequest generates a "aws/request.Request" representing the // client's request for the UpdateConfigurationTemplate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateConfigurationTemplate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateConfigurationTemplate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateConfigurationTemplateRequest method. // req, resp := client.UpdateConfigurationTemplateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) UpdateConfigurationTemplateRequest(input *UpdateConfigurationTemplateInput) (req *request.Request, output *ConfigurationSettingsDescription) { op := &request.Operation{ Name: opUpdateConfigurationTemplate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateConfigurationTemplateInput{} } req = c.newRequest(op, input, output) output = &ConfigurationSettingsDescription{} req.Data = output return } // UpdateConfigurationTemplate API operation for AWS Elastic Beanstalk. // // Updates the specified configuration template to have the specified properties // or configuration option values. // // If a property (for example, ApplicationName) is not provided, its value remains // unchanged. To clear such properties, specify an empty string. // // Related Topics // // * DescribeConfigurationOptions // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation UpdateConfigurationTemplate for usage and error information. // // Returned Error Codes: // * InsufficientPrivilegesException // The specified account does not have sufficient privileges for one of more // AWS services. // // * TooManyBucketsException // The specified account has reached its limit of Amazon S3 buckets. // func (c *ElasticBeanstalk) UpdateConfigurationTemplate(input *UpdateConfigurationTemplateInput) (*ConfigurationSettingsDescription, error) { req, out := c.UpdateConfigurationTemplateRequest(input) err := req.Send() return out, err } const opUpdateEnvironment = "UpdateEnvironment" // UpdateEnvironmentRequest generates a "aws/request.Request" representing the // client's request for the UpdateEnvironment operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateEnvironment for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateEnvironment method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateEnvironmentRequest method. // req, resp := client.UpdateEnvironmentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) UpdateEnvironmentRequest(input *UpdateEnvironmentInput) (req *request.Request, output *EnvironmentDescription) { op := &request.Operation{ Name: opUpdateEnvironment, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateEnvironmentInput{} } req = c.newRequest(op, input, output) output = &EnvironmentDescription{} req.Data = output return } // UpdateEnvironment API operation for AWS Elastic Beanstalk. // // Updates the environment description, deploys a new application version, updates // the configuration settings to an entirely new configuration template, or // updates select configuration option values in the running environment. // // Attempting to update both the release and configuration is not allowed and // AWS Elastic Beanstalk returns an InvalidParameterCombination error. // // When updating the configuration settings to a new template or individual // settings, a draft configuration is created and DescribeConfigurationSettings // for this environment returns two setting descriptions with different DeploymentStatus // values. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation UpdateEnvironment for usage and error information. // // Returned Error Codes: // * InsufficientPrivilegesException // The specified account does not have sufficient privileges for one of more // AWS services. // // * TooManyBucketsException // The specified account has reached its limit of Amazon S3 buckets. // func (c *ElasticBeanstalk) UpdateEnvironment(input *UpdateEnvironmentInput) (*EnvironmentDescription, error) { req, out := c.UpdateEnvironmentRequest(input) err := req.Send() return out, err } const opValidateConfigurationSettings = "ValidateConfigurationSettings" // ValidateConfigurationSettingsRequest generates a "aws/request.Request" representing the // client's request for the ValidateConfigurationSettings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ValidateConfigurationSettings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ValidateConfigurationSettings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ValidateConfigurationSettingsRequest method. // req, resp := client.ValidateConfigurationSettingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticBeanstalk) ValidateConfigurationSettingsRequest(input *ValidateConfigurationSettingsInput) (req *request.Request, output *ValidateConfigurationSettingsOutput) { op := &request.Operation{ Name: opValidateConfigurationSettings, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ValidateConfigurationSettingsInput{} } req = c.newRequest(op, input, output) output = &ValidateConfigurationSettingsOutput{} req.Data = output return } // ValidateConfigurationSettings API operation for AWS Elastic Beanstalk. // // Takes a set of configuration settings and either a configuration template // or environment, and determines whether those values are valid. // // This action returns a list of messages indicating any errors or warnings // associated with the selection of option values. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elastic Beanstalk's // API operation ValidateConfigurationSettings for usage and error information. // // Returned Error Codes: // * InsufficientPrivilegesException // The specified account does not have sufficient privileges for one of more // AWS services. // // * TooManyBucketsException // The specified account has reached its limit of Amazon S3 buckets. // func (c *ElasticBeanstalk) ValidateConfigurationSettings(input *ValidateConfigurationSettingsInput) (*ValidateConfigurationSettingsOutput, error) { req, out := c.ValidateConfigurationSettingsRequest(input) err := req.Send() return out, err } type AbortEnvironmentUpdateInput struct { _ struct{} `type:"structure"` // This specifies the ID of the environment with the in-progress update that // you want to cancel. EnvironmentId *string `type:"string"` // This specifies the name of the environment with the in-progress update that // you want to cancel. EnvironmentName *string `min:"4" type:"string"` } // String returns the string representation func (s AbortEnvironmentUpdateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AbortEnvironmentUpdateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AbortEnvironmentUpdateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AbortEnvironmentUpdateInput"} if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AbortEnvironmentUpdateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AbortEnvironmentUpdateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AbortEnvironmentUpdateOutput) GoString() string { return s.String() } // Describes the properties of an application. type ApplicationDescription struct { _ struct{} `type:"structure"` // The name of the application. ApplicationName *string `min:"1" type:"string"` // The names of the configuration templates associated with this application. ConfigurationTemplates []*string `type:"list"` // The date when the application was created. DateCreated *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The date when the application was last modified. DateUpdated *time.Time `type:"timestamp" timestampFormat:"iso8601"` // User-defined description of the application. Description *string `type:"string"` // The names of the versions for this application. Versions []*string `type:"list"` } // String returns the string representation func (s ApplicationDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ApplicationDescription) GoString() string { return s.String() } // Result message containing a single description of an application. type ApplicationDescriptionMessage struct { _ struct{} `type:"structure"` // The ApplicationDescription of the application. Application *ApplicationDescription `type:"structure"` } // String returns the string representation func (s ApplicationDescriptionMessage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ApplicationDescriptionMessage) GoString() string { return s.String() } // Represents the application metrics for a specified environment. type ApplicationMetrics struct { _ struct{} `type:"structure"` // The amount of time that the metrics cover (usually 10 seconds). For example, // you might have 5 requests (request_count) within the most recent time slice // of 10 seconds (duration). Duration *int64 `type:"integer"` // Represents the average latency for the slowest X percent of requests over // the last 10 seconds. Latencies are in seconds with one milisecond resolution. Latency *Latency `type:"structure"` // Average number of requests handled by the web server per second over the // last 10 seconds. RequestCount *int64 `type:"integer"` // Represents the percentage of requests over the last 10 seconds that resulted // in each type of status code response. StatusCodes *StatusCodes `type:"structure"` } // String returns the string representation func (s ApplicationMetrics) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ApplicationMetrics) GoString() string { return s.String() } // Describes the properties of an application version. type ApplicationVersionDescription struct { _ struct{} `type:"structure"` // The name of the application associated with this release. ApplicationName *string `min:"1" type:"string"` // The creation date of the application version. DateCreated *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The last modified date of the application version. DateUpdated *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The description of this application version. Description *string `type:"string"` SourceBuildInformation *SourceBuildInformation `type:"structure"` // The location where the source bundle is located for this version. SourceBundle *S3Location `type:"structure"` // The processing status of the application version. Status *string `type:"string" enum:"ApplicationVersionStatus"` // A label uniquely identifying the version for the associated application. VersionLabel *string `min:"1" type:"string"` } // String returns the string representation func (s ApplicationVersionDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ApplicationVersionDescription) GoString() string { return s.String() } // Result message wrapping a single description of an application version. type ApplicationVersionDescriptionMessage struct { _ struct{} `type:"structure"` // The ApplicationVersionDescription of the application version. ApplicationVersion *ApplicationVersionDescription `type:"structure"` } // String returns the string representation func (s ApplicationVersionDescriptionMessage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ApplicationVersionDescriptionMessage) GoString() string { return s.String() } // Request to execute a scheduled managed action immediately. type ApplyEnvironmentManagedActionInput struct { _ struct{} `type:"structure"` // The action ID of the scheduled managed action to execute. // // ActionId is a required field ActionId *string `type:"string" required:"true"` // The environment ID of the target environment. EnvironmentId *string `type:"string"` // The name of the target environment. EnvironmentName *string `type:"string"` } // String returns the string representation func (s ApplyEnvironmentManagedActionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ApplyEnvironmentManagedActionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ApplyEnvironmentManagedActionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ApplyEnvironmentManagedActionInput"} if s.ActionId == nil { invalidParams.Add(request.NewErrParamRequired("ActionId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result message containing information about the managed action. type ApplyEnvironmentManagedActionOutput struct { _ struct{} `type:"structure"` // A description of the managed action. ActionDescription *string `type:"string"` // The action ID of the managed action. ActionId *string `type:"string"` // The type of managed action. ActionType *string `type:"string" enum:"ActionType"` // The status of the managed action. Status *string `type:"string"` } // String returns the string representation func (s ApplyEnvironmentManagedActionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ApplyEnvironmentManagedActionOutput) GoString() string { return s.String() } // Describes an Auto Scaling launch configuration. type AutoScalingGroup struct { _ struct{} `type:"structure"` // The name of the AutoScalingGroup . Name *string `type:"string"` } // String returns the string representation func (s AutoScalingGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AutoScalingGroup) GoString() string { return s.String() } // Represents CPU utilization information from the specified instance that belongs // to the AWS Elastic Beanstalk environment. Use the instanceId property to // specify the application instance for which you'd like to return data. type CPUUtilization struct { _ struct{} `type:"structure"` // Percentage of time that the CPU has spent in the I/O Wait state over the // last 10 seconds. IOWait *float64 `type:"double"` // Percentage of time that the CPU has spent in the IRQ state over the last // 10 seconds. IRQ *float64 `type:"double"` // Percentage of time that the CPU has spent in the Idle state over the last // 10 seconds. Idle *float64 `type:"double"` // Percentage of time that the CPU has spent in the Nice state over the last // 10 seconds. Nice *float64 `type:"double"` // Percentage of time that the CPU has spent in the SoftIRQ state over the last // 10 seconds. SoftIRQ *float64 `type:"double"` // Percentage of time that the CPU has spent in the System state over the last // 10 seconds. System *float64 `type:"double"` // Percentage of time that the CPU has spent in the User state over the last // 10 seconds. User *float64 `type:"double"` } // String returns the string representation func (s CPUUtilization) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CPUUtilization) GoString() string { return s.String() } // Results message indicating whether a CNAME is available. type CheckDNSAvailabilityInput struct { _ struct{} `type:"structure"` // The prefix used when this CNAME is reserved. // // CNAMEPrefix is a required field CNAMEPrefix *string `min:"4" type:"string" required:"true"` } // String returns the string representation func (s CheckDNSAvailabilityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CheckDNSAvailabilityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CheckDNSAvailabilityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CheckDNSAvailabilityInput"} if s.CNAMEPrefix == nil { invalidParams.Add(request.NewErrParamRequired("CNAMEPrefix")) } if s.CNAMEPrefix != nil && len(*s.CNAMEPrefix) < 4 { invalidParams.Add(request.NewErrParamMinLen("CNAMEPrefix", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Indicates if the specified CNAME is available. type CheckDNSAvailabilityOutput struct { _ struct{} `type:"structure"` // Indicates if the specified CNAME is available: // // * true : The CNAME is available. // // * false : The CNAME is not available. Available *bool `type:"boolean"` // The fully qualified CNAME to reserve when CreateEnvironment is called with // the provided prefix. FullyQualifiedCNAME *string `min:"1" type:"string"` } // String returns the string representation func (s CheckDNSAvailabilityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CheckDNSAvailabilityOutput) GoString() string { return s.String() } // Request to create or update a group of environments. type ComposeEnvironmentsInput struct { _ struct{} `type:"structure"` // The name of the application to which the specified source bundles belong. ApplicationName *string `min:"1" type:"string"` // The name of the group to which the target environments belong. Specify a // group name only if the environment name defined in each target environment's // manifest ends with a + (plus) character. See Environment Manifest (env.yaml) // (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-cfg-manifest.html) // for details. GroupName *string `min:"1" type:"string"` // A list of version labels, specifying one or more application source bundles // that belong to the target application. Each source bundle must include an // environment manifest that specifies the name of the environment and the name // of the solution stack to use, and optionally can specify environment links // to create. VersionLabels []*string `type:"list"` } // String returns the string representation func (s ComposeEnvironmentsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ComposeEnvironmentsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ComposeEnvironmentsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ComposeEnvironmentsInput"} if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the possible values for a configuration option. type ConfigurationOptionDescription struct { _ struct{} `type:"structure"` // An indication of which action is required if the value for this configuration // option changes: // // * NoInterruption : There is no interruption to the environment or application // availability. // // * RestartEnvironment : The environment is entirely restarted, all AWS // resources are deleted and recreated, and the environment is unavailable // during the process. // // * RestartApplicationServer : The environment is available the entire time. // However, a short application outage occurs when the application servers // on the running Amazon EC2 instances are restarted. ChangeSeverity *string `type:"string"` // The default value for this configuration option. DefaultValue *string `type:"string"` // If specified, the configuration option must be a string value no longer than // this value. MaxLength *int64 `type:"integer"` // If specified, the configuration option must be a numeric value less than // this value. MaxValue *int64 `type:"integer"` // If specified, the configuration option must be a numeric value greater than // this value. MinValue *int64 `type:"integer"` // The name of the configuration option. Name *string `type:"string"` // A unique namespace identifying the option's associated AWS resource. Namespace *string `type:"string"` // If specified, the configuration option must be a string value that satisfies // this regular expression. Regex *OptionRestrictionRegex `type:"structure"` // An indication of whether the user defined this configuration option: // // * true : This configuration option was defined by the user. It is a valid // choice for specifying if this as an Option to Remove when updating configuration // settings. // // * false : This configuration was not defined by the user. // // Constraint: You can remove only UserDefined options from a configuration. // // Valid Values: true | false UserDefined *bool `type:"boolean"` // If specified, values for the configuration option are selected from this // list. ValueOptions []*string `type:"list"` // An indication of which type of values this option has and whether it is allowable // to select one or more than one of the possible values: // // * Scalar : Values for this option are a single selection from the possible // values, or an unformatted string, or numeric value governed by the MIN/MAX/Regex // constraints. // // * List : Values for this option are multiple selections from the possible // values. // // * Boolean : Values for this option are either true or false . // // * Json : Values for this option are a JSON representation of a ConfigDocument. ValueType *string `type:"string" enum:"ConfigurationOptionValueType"` } // String returns the string representation func (s ConfigurationOptionDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfigurationOptionDescription) GoString() string { return s.String() } // A specification identifying an individual configuration option along with // its current value. For a list of possible option values, go to Option Values // (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/command-options.html) // in the AWS Elastic Beanstalk Developer Guide. type ConfigurationOptionSetting struct { _ struct{} `type:"structure"` // A unique namespace identifying the option's associated AWS resource. Namespace *string `type:"string"` // The name of the configuration option. OptionName *string `type:"string"` // A unique resource name for a time-based scaling configuration option. ResourceName *string `min:"1" type:"string"` // The current value for the configuration option. Value *string `type:"string"` } // String returns the string representation func (s ConfigurationOptionSetting) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfigurationOptionSetting) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ConfigurationOptionSetting) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ConfigurationOptionSetting"} if s.ResourceName != nil && len(*s.ResourceName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the settings for a configuration set. type ConfigurationSettingsDescription struct { _ struct{} `type:"structure"` // The name of the application associated with this configuration set. ApplicationName *string `min:"1" type:"string"` // The date (in UTC time) when this configuration set was created. DateCreated *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The date (in UTC time) when this configuration set was last modified. DateUpdated *time.Time `type:"timestamp" timestampFormat:"iso8601"` // If this configuration set is associated with an environment, the DeploymentStatus // parameter indicates the deployment status of this configuration set: // // * null: This configuration is not associated with a running environment. // // * pending: This is a draft configuration that is not deployed to the associated // environment but is in the process of deploying. // // * deployed: This is the configuration that is currently deployed to the // associated running environment. // // * failed: This is a draft configuration that failed to successfully deploy. DeploymentStatus *string `type:"string" enum:"ConfigurationDeploymentStatus"` // Describes this configuration set. Description *string `type:"string"` // If not null, the name of the environment for this configuration set. EnvironmentName *string `min:"4" type:"string"` // A list of the configuration options and their values in this configuration // set. OptionSettings []*ConfigurationOptionSetting `type:"list"` // The name of the solution stack this configuration set uses. SolutionStackName *string `type:"string"` // If not null, the name of the configuration template for this configuration // set. TemplateName *string `min:"1" type:"string"` } // String returns the string representation func (s ConfigurationSettingsDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfigurationSettingsDescription) GoString() string { return s.String() } // Request to create an application. type CreateApplicationInput struct { _ struct{} `type:"structure"` // The name of the application. // // Constraint: This name must be unique within your account. If the specified // name already exists, the action returns an InvalidParameterValue error. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // Describes the application. Description *string `type:"string"` } // String returns the string representation func (s CreateApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateApplicationInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateApplicationVersionInput struct { _ struct{} `type:"structure"` // The name of the application. If no application is found with this name, and // AutoCreateApplication is false, returns an InvalidParameterValue error. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // Determines how the system behaves if the specified application for this version // does not already exist: // // * true : Automatically creates the specified application for this release // if it does not already exist. // // * false : Throws an InvalidParameterValue if the specified application // for this release does not already exist. // // Default: false // // Valid Values: true | false AutoCreateApplication *bool `type:"boolean"` // Describes this version. Description *string `type:"string"` // Preprocesses and validates the environment manifest and configuration files // in the source bundle. Validating configuration files can identify issues // prior to deploying the application version to an environment. Process *bool `type:"boolean"` SourceBuildInformation *SourceBuildInformation `type:"structure"` // The Amazon S3 bucket and key that identify the location of the source bundle // for this version. // // If data found at the Amazon S3 location exceeds the maximum allowed source // bundle size, AWS Elastic Beanstalk returns an InvalidParameterValue error. // The maximum size allowed is 512 MB. // // Default: If not specified, AWS Elastic Beanstalk uses a sample application. // If only partially specified (for example, a bucket is provided but not the // key) or if no data is found at the Amazon S3 location, AWS Elastic Beanstalk // returns an InvalidParameterCombination error. SourceBundle *S3Location `type:"structure"` // A label identifying this version. // // Constraint: Must be unique per application. If an application version already // exists with this label for the specified application, AWS Elastic Beanstalk // returns an InvalidParameterValue error. // // VersionLabel is a required field VersionLabel *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateApplicationVersionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateApplicationVersionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateApplicationVersionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateApplicationVersionInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.VersionLabel == nil { invalidParams.Add(request.NewErrParamRequired("VersionLabel")) } if s.VersionLabel != nil && len(*s.VersionLabel) < 1 { invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1)) } if s.SourceBuildInformation != nil { if err := s.SourceBuildInformation.Validate(); err != nil { invalidParams.AddNested("SourceBuildInformation", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to create a configuration template. type CreateConfigurationTemplateInput struct { _ struct{} `type:"structure"` // The name of the application to associate with this configuration template. // If no application is found with this name, AWS Elastic Beanstalk returns // an InvalidParameterValue error. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // Describes this configuration. Description *string `type:"string"` // The ID of the environment used with this configuration template. EnvironmentId *string `type:"string"` // If specified, AWS Elastic Beanstalk sets the specified configuration option // to the requested value. The new value overrides the value obtained from the // solution stack or the source configuration template. OptionSettings []*ConfigurationOptionSetting `type:"list"` // The name of the solution stack used by this configuration. The solution stack // specifies the operating system, architecture, and application server for // a configuration template. It determines the set of configuration options // as well as the possible and default values. // // Use ListAvailableSolutionStacks to obtain a list of available solution stacks. // // A solution stack name or a source configuration parameter must be specified, // otherwise AWS Elastic Beanstalk returns an InvalidParameterValue error. // // If a solution stack name is not specified and the source configuration parameter // is specified, AWS Elastic Beanstalk uses the same solution stack as the source // configuration template. SolutionStackName *string `type:"string"` // If specified, AWS Elastic Beanstalk uses the configuration values from the // specified configuration template to create a new configuration. // // Values specified in the OptionSettings parameter of this call overrides any // values obtained from the SourceConfiguration. // // If no configuration template is found, returns an InvalidParameterValue error. // // Constraint: If both the solution stack name parameter and the source configuration // parameters are specified, the solution stack of the source configuration // template must match the specified solution stack name or else AWS Elastic // Beanstalk returns an InvalidParameterCombination error. SourceConfiguration *SourceConfiguration `type:"structure"` // The name of the configuration template. // // Constraint: This name must be unique per application. // // Default: If a configuration template already exists with this name, AWS Elastic // Beanstalk returns an InvalidParameterValue error. // // TemplateName is a required field TemplateName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateConfigurationTemplateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateConfigurationTemplateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateConfigurationTemplateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateConfigurationTemplateInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.TemplateName == nil { invalidParams.Add(request.NewErrParamRequired("TemplateName")) } if s.TemplateName != nil && len(*s.TemplateName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) } if s.OptionSettings != nil { for i, v := range s.OptionSettings { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionSettings", i), err.(request.ErrInvalidParams)) } } } if s.SourceConfiguration != nil { if err := s.SourceConfiguration.Validate(); err != nil { invalidParams.AddNested("SourceConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateEnvironmentInput struct { _ struct{} `type:"structure"` // The name of the application that contains the version to be deployed. // // If no application is found with this name, CreateEnvironment returns an InvalidParameterValue // error. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // If specified, the environment attempts to use this value as the prefix for // the CNAME. If not specified, the CNAME is generated automatically by appending // a random alphanumeric string to the environment name. CNAMEPrefix *string `min:"4" type:"string"` // Describes this environment. Description *string `type:"string"` // A unique name for the deployment environment. Used in the application URL. // // Constraint: Must be from 4 to 40 characters in length. The name can contain // only letters, numbers, and hyphens. It cannot start or end with a hyphen. // This name must be unique in your account. If the specified name already exists, // AWS Elastic Beanstalk returns an InvalidParameterValue error. // // Default: If the CNAME parameter is not specified, the environment name becomes // part of the CNAME, and therefore part of the visible URL for your application. EnvironmentName *string `min:"4" type:"string"` // The name of the group to which the target environment belongs. Specify a // group name only if the environment's name is specified in an environment // manifest and not with the environment name parameter. See Environment Manifest // (env.yaml) (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-cfg-manifest.html) // for details. GroupName *string `min:"1" type:"string"` // If specified, AWS Elastic Beanstalk sets the specified configuration options // to the requested value in the configuration set for the new environment. // These override the values obtained from the solution stack or the configuration // template. OptionSettings []*ConfigurationOptionSetting `type:"list"` // A list of custom user-defined configuration options to remove from the configuration // set for this new environment. OptionsToRemove []*OptionSpecification `type:"list"` // This is an alternative to specifying a template name. If specified, AWS Elastic // Beanstalk sets the configuration values to the default values associated // with the specified solution stack. // // Condition: You must specify either this or a TemplateName, but not both. // If you specify both, AWS Elastic Beanstalk returns an InvalidParameterCombination // error. If you do not specify either, AWS Elastic Beanstalk returns a MissingRequiredParameter // error. SolutionStackName *string `type:"string"` // This specifies the tags applied to resources in the environment. Tags []*Tag `type:"list"` // The name of the configuration template to use in deployment. If no configuration // template is found with this name, AWS Elastic Beanstalk returns an InvalidParameterValue // error. // // Condition: You must specify either this parameter or a SolutionStackName, // but not both. If you specify both, AWS Elastic Beanstalk returns an InvalidParameterCombination // error. If you do not specify either, AWS Elastic Beanstalk returns a MissingRequiredParameter // error. TemplateName *string `min:"1" type:"string"` // This specifies the tier to use for creating this environment. Tier *EnvironmentTier `type:"structure"` // The name of the application version to deploy. // // If the specified application has no associated application versions, AWS // Elastic Beanstalk UpdateEnvironment returns an InvalidParameterValue error. // // Default: If not specified, AWS Elastic Beanstalk attempts to launch the sample // application in the container. VersionLabel *string `min:"1" type:"string"` } // String returns the string representation func (s CreateEnvironmentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateEnvironmentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateEnvironmentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateEnvironmentInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.CNAMEPrefix != nil && len(*s.CNAMEPrefix) < 4 { invalidParams.Add(request.NewErrParamMinLen("CNAMEPrefix", 4)) } if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4)) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if s.TemplateName != nil && len(*s.TemplateName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) } if s.VersionLabel != nil && len(*s.VersionLabel) < 1 { invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1)) } if s.OptionSettings != nil { for i, v := range s.OptionSettings { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionSettings", i), err.(request.ErrInvalidParams)) } } } if s.OptionsToRemove != nil { for i, v := range s.OptionsToRemove { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionsToRemove", i), err.(request.ErrInvalidParams)) } } } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateStorageLocationInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateStorageLocationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateStorageLocationInput) GoString() string { return s.String() } // Results of a CreateStorageLocationResult call. type CreateStorageLocationOutput struct { _ struct{} `type:"structure"` // The name of the Amazon S3 bucket created. S3Bucket *string `type:"string"` } // String returns the string representation func (s CreateStorageLocationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateStorageLocationOutput) GoString() string { return s.String() } // Request to delete an application. type DeleteApplicationInput struct { _ struct{} `type:"structure"` // The name of the application to delete. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // When set to true, running environments will be terminated before deleting // the application. TerminateEnvByForce *bool `type:"boolean"` } // String returns the string representation func (s DeleteApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteApplicationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteApplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteApplicationOutput) GoString() string { return s.String() } // Request to delete an application version. type DeleteApplicationVersionInput struct { _ struct{} `type:"structure"` // The name of the application to delete releases from. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // Indicates whether to delete the associated source bundle from Amazon S3: // // * true: An attempt is made to delete the associated Amazon S3 source bundle // specified at time of creation. // // * false: No action is taken on the Amazon S3 source bundle specified at // time of creation. // // Valid Values: true | false DeleteSourceBundle *bool `type:"boolean"` // The label of the version to delete. // // VersionLabel is a required field VersionLabel *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteApplicationVersionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteApplicationVersionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteApplicationVersionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationVersionInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.VersionLabel == nil { invalidParams.Add(request.NewErrParamRequired("VersionLabel")) } if s.VersionLabel != nil && len(*s.VersionLabel) < 1 { invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteApplicationVersionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteApplicationVersionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteApplicationVersionOutput) GoString() string { return s.String() } // Request to delete a configuration template. type DeleteConfigurationTemplateInput struct { _ struct{} `type:"structure"` // The name of the application to delete the configuration template from. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // The name of the configuration template to delete. // // TemplateName is a required field TemplateName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteConfigurationTemplateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteConfigurationTemplateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteConfigurationTemplateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteConfigurationTemplateInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.TemplateName == nil { invalidParams.Add(request.NewErrParamRequired("TemplateName")) } if s.TemplateName != nil && len(*s.TemplateName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteConfigurationTemplateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteConfigurationTemplateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteConfigurationTemplateOutput) GoString() string { return s.String() } // Request to delete a draft environment configuration. type DeleteEnvironmentConfigurationInput struct { _ struct{} `type:"structure"` // The name of the application the environment is associated with. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // The name of the environment to delete the draft configuration from. // // EnvironmentName is a required field EnvironmentName *string `min:"4" type:"string" required:"true"` } // String returns the string representation func (s DeleteEnvironmentConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteEnvironmentConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteEnvironmentConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteEnvironmentConfigurationInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.EnvironmentName == nil { invalidParams.Add(request.NewErrParamRequired("EnvironmentName")) } if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteEnvironmentConfigurationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteEnvironmentConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteEnvironmentConfigurationOutput) GoString() string { return s.String() } // Information about an application version deployment. type Deployment struct { _ struct{} `type:"structure"` // The ID of the deployment. This number increases by one each time that you // deploy source code or change instance configuration settings. DeploymentId *int64 `type:"long"` // For in-progress deployments, the time that the deloyment started. // // For completed deployments, the time that the deployment ended. DeploymentTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The status of the deployment: // // * In Progress : The deployment is in progress. // // * Deployed : The deployment succeeded. // // * Failed : The deployment failed. Status *string `type:"string"` // The version label of the application version in the deployment. VersionLabel *string `type:"string"` } // String returns the string representation func (s Deployment) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Deployment) GoString() string { return s.String() } // Result message containing a list of configuration descriptions. type DescribeApplicationVersionsInput struct { _ struct{} `type:"structure"` // If specified, AWS Elastic Beanstalk restricts the returned descriptions to // only include ones that are associated with the specified application. ApplicationName *string `min:"1" type:"string"` // Specify a maximum number of application versions to paginate in the request. MaxRecords *int64 `min:"1" type:"integer"` // Specify a next token to retrieve the next page in a paginated request. NextToken *string `type:"string"` // If specified, restricts the returned descriptions to only include ones that // have the specified version labels. VersionLabels []*string `type:"list"` } // String returns the string representation func (s DescribeApplicationVersionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeApplicationVersionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeApplicationVersionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeApplicationVersionsInput"} if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.MaxRecords != nil && *s.MaxRecords < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxRecords", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Result message wrapping a list of application version descriptions. type DescribeApplicationVersionsOutput struct { _ struct{} `type:"structure"` // List of ApplicationVersionDescription objects sorted by order of creation. ApplicationVersions []*ApplicationVersionDescription `type:"list"` // For a paginated request, the token that you can pass in a subsequent request // to get the next page. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeApplicationVersionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeApplicationVersionsOutput) GoString() string { return s.String() } // Request to describe one or more applications. type DescribeApplicationsInput struct { _ struct{} `type:"structure"` // If specified, AWS Elastic Beanstalk restricts the returned descriptions to // only include those with the specified names. ApplicationNames []*string `type:"list"` } // String returns the string representation func (s DescribeApplicationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeApplicationsInput) GoString() string { return s.String() } // Result message containing a list of application descriptions. type DescribeApplicationsOutput struct { _ struct{} `type:"structure"` // This parameter contains a list of ApplicationDescription. Applications []*ApplicationDescription `type:"list"` } // String returns the string representation func (s DescribeApplicationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeApplicationsOutput) GoString() string { return s.String() } // Result message containig a list of application version descriptions. type DescribeConfigurationOptionsInput struct { _ struct{} `type:"structure"` // The name of the application associated with the configuration template or // environment. Only needed if you want to describe the configuration options // associated with either the configuration template or environment. ApplicationName *string `min:"1" type:"string"` // The name of the environment whose configuration options you want to describe. EnvironmentName *string `min:"4" type:"string"` // If specified, restricts the descriptions to only the specified options. Options []*OptionSpecification `type:"list"` // The name of the solution stack whose configuration options you want to describe. SolutionStackName *string `type:"string"` // The name of the configuration template whose configuration options you want // to describe. TemplateName *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeConfigurationOptionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConfigurationOptionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeConfigurationOptionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeConfigurationOptionsInput"} if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4)) } if s.TemplateName != nil && len(*s.TemplateName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) } if s.Options != nil { for i, v := range s.Options { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Options", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the settings for a specified configuration set. type DescribeConfigurationOptionsOutput struct { _ struct{} `type:"structure"` // A list of ConfigurationOptionDescription. Options []*ConfigurationOptionDescription `type:"list"` // The name of the solution stack these configuration options belong to. SolutionStackName *string `type:"string"` } // String returns the string representation func (s DescribeConfigurationOptionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConfigurationOptionsOutput) GoString() string { return s.String() } // Result message containing all of the configuration settings for a specified // solution stack or configuration template. type DescribeConfigurationSettingsInput struct { _ struct{} `type:"structure"` // The application for the environment or configuration template. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // The name of the environment to describe. // // Condition: You must specify either this or a TemplateName, but not both. // If you specify both, AWS Elastic Beanstalk returns an InvalidParameterCombination // error. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter // error. EnvironmentName *string `min:"4" type:"string"` // The name of the configuration template to describe. // // Conditional: You must specify either this parameter or an EnvironmentName, // but not both. If you specify both, AWS Elastic Beanstalk returns an InvalidParameterCombination // error. If you do not specify either, AWS Elastic Beanstalk returns a MissingRequiredParameter // error. TemplateName *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeConfigurationSettingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConfigurationSettingsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeConfigurationSettingsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeConfigurationSettingsInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4)) } if s.TemplateName != nil && len(*s.TemplateName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The results from a request to change the configuration settings of an environment. type DescribeConfigurationSettingsOutput struct { _ struct{} `type:"structure"` // A list of ConfigurationSettingsDescription. ConfigurationSettings []*ConfigurationSettingsDescription `type:"list"` } // String returns the string representation func (s DescribeConfigurationSettingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeConfigurationSettingsOutput) GoString() string { return s.String() } // See the example below to learn how to create a request body. type DescribeEnvironmentHealthInput struct { _ struct{} `type:"structure"` // Specifies the response elements you wish to receive. If no attribute names // are specified, AWS Elastic Beanstalk only returns the name of the environment. AttributeNames []*string `type:"list"` // Specifies the AWS Elastic Beanstalk environment ID. // // Condition: You must specify either this or an EnvironmentName, or both. If // you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter // error. EnvironmentId *string `type:"string"` // Specifies the AWS Elastic Beanstalk environment name. // // Condition: You must specify either this or an EnvironmentId, or both. If // you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter // error. EnvironmentName *string `min:"4" type:"string"` } // String returns the string representation func (s DescribeEnvironmentHealthInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEnvironmentHealthInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeEnvironmentHealthInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeEnvironmentHealthInput"} if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // See the example below for a sample response. type DescribeEnvironmentHealthOutput struct { _ struct{} `type:"structure"` // Represents the application metrics for a specified environment. ApplicationMetrics *ApplicationMetrics `type:"structure"` // Returns potential causes for the reported status. Causes []*string `type:"list"` // Returns the color indicator that tells you information about the health of // the environment. For more information, see Health Colors and Statuses (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html). Color *string `type:"string"` // The AWS Elastic Beanstalk environment name. EnvironmentName *string `min:"4" type:"string"` // Contains the response body with information about the health of the environment. HealthStatus *string `type:"string"` // Represents summary information about the health of an instance. For more // information, see Health Colors and Statuses (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html). InstancesHealth *InstanceHealthSummary `type:"structure"` // The date and time the information was last refreshed. RefreshedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Returns the health status value of the environment. For more information, // see Health Colors and Statuses (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html). Status *string `type:"string" enum:"EnvironmentHealth"` } // String returns the string representation func (s DescribeEnvironmentHealthOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEnvironmentHealthOutput) GoString() string { return s.String() } // Request to list completed and failed managed actions. type DescribeEnvironmentManagedActionHistoryInput struct { _ struct{} `type:"structure"` // The environment ID of the target environment. EnvironmentId *string `type:"string"` // The name of the target environment. EnvironmentName *string `min:"4" type:"string"` // The maximum number of items to return for a single request. MaxItems *int64 `type:"integer"` // The pagination token returned by a previous request. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeEnvironmentManagedActionHistoryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEnvironmentManagedActionHistoryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeEnvironmentManagedActionHistoryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeEnvironmentManagedActionHistoryInput"} if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A result message containing a list of completed and failed managed actions. type DescribeEnvironmentManagedActionHistoryOutput struct { _ struct{} `type:"structure"` // A list of completed and failed managed actions. ManagedActionHistoryItems []*ManagedActionHistoryItem `min:"1" type:"list"` // A pagination token that you pass to DescribeEnvironmentManagedActionHistory // to get the next page of results. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeEnvironmentManagedActionHistoryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEnvironmentManagedActionHistoryOutput) GoString() string { return s.String() } // Request to list an environment's upcoming and in-progress managed actions. type DescribeEnvironmentManagedActionsInput struct { _ struct{} `type:"structure"` // The environment ID of the target environment. EnvironmentId *string `type:"string"` // The name of the target environment. EnvironmentName *string `type:"string"` // To show only actions with a particular status, specify a status. Status *string `type:"string" enum:"ActionStatus"` } // String returns the string representation func (s DescribeEnvironmentManagedActionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEnvironmentManagedActionsInput) GoString() string { return s.String() } // The result message containing a list of managed actions. type DescribeEnvironmentManagedActionsOutput struct { _ struct{} `type:"structure"` // A list of upcoming and in-progress managed actions. ManagedActions []*ManagedAction `min:"1" type:"list"` } // String returns the string representation func (s DescribeEnvironmentManagedActionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEnvironmentManagedActionsOutput) GoString() string { return s.String() } // Request to describe the resources in an environment. type DescribeEnvironmentResourcesInput struct { _ struct{} `type:"structure"` // The ID of the environment to retrieve AWS resource usage data. // // Condition: You must specify either this or an EnvironmentName, or both. If // you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter // error. EnvironmentId *string `type:"string"` // The name of the environment to retrieve AWS resource usage data. // // Condition: You must specify either this or an EnvironmentId, or both. If // you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter // error. EnvironmentName *string `min:"4" type:"string"` } // String returns the string representation func (s DescribeEnvironmentResourcesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEnvironmentResourcesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeEnvironmentResourcesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeEnvironmentResourcesInput"} if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Result message containing a list of environment resource descriptions. type DescribeEnvironmentResourcesOutput struct { _ struct{} `type:"structure"` // A list of EnvironmentResourceDescription. EnvironmentResources *EnvironmentResourceDescription `type:"structure"` } // String returns the string representation func (s DescribeEnvironmentResourcesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEnvironmentResourcesOutput) GoString() string { return s.String() } // Request to describe one or more environments. type DescribeEnvironmentsInput struct { _ struct{} `type:"structure"` // If specified, AWS Elastic Beanstalk restricts the returned descriptions to // include only those that are associated with this application. ApplicationName *string `min:"1" type:"string"` // If specified, AWS Elastic Beanstalk restricts the returned descriptions to // include only those that have the specified IDs. EnvironmentIds []*string `type:"list"` // If specified, AWS Elastic Beanstalk restricts the returned descriptions to // include only those that have the specified names. EnvironmentNames []*string `type:"list"` // Indicates whether to include deleted environments: // // true: Environments that have been deleted after IncludedDeletedBackTo are // displayed. // // false: Do not include deleted environments. IncludeDeleted *bool `type:"boolean"` // If specified when IncludeDeleted is set to true, then environments deleted // after this date are displayed. IncludedDeletedBackTo *time.Time `type:"timestamp" timestampFormat:"iso8601"` // If specified, AWS Elastic Beanstalk restricts the returned descriptions to // include only those that are associated with this application version. VersionLabel *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeEnvironmentsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEnvironmentsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeEnvironmentsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeEnvironmentsInput"} if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.VersionLabel != nil && len(*s.VersionLabel) < 1 { invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to retrieve a list of events for an environment. type DescribeEventsInput struct { _ struct{} `type:"structure"` // If specified, AWS Elastic Beanstalk restricts the returned descriptions to // include only those associated with this application. ApplicationName *string `min:"1" type:"string"` // If specified, AWS Elastic Beanstalk restricts the returned descriptions to // those that occur up to, but not including, the EndTime. EndTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // If specified, AWS Elastic Beanstalk restricts the returned descriptions to // those associated with this environment. EnvironmentId *string `type:"string"` // If specified, AWS Elastic Beanstalk restricts the returned descriptions to // those associated with this environment. EnvironmentName *string `min:"4" type:"string"` // Specifies the maximum number of events that can be returned, beginning with // the most recent event. MaxRecords *int64 `min:"1" type:"integer"` // Pagination token. If specified, the events return the next batch of results. NextToken *string `type:"string"` // If specified, AWS Elastic Beanstalk restricts the described events to include // only those associated with this request ID. RequestId *string `type:"string"` // If specified, limits the events returned from this call to include only those // with the specified severity or higher. Severity *string `type:"string" enum:"EventSeverity"` // If specified, AWS Elastic Beanstalk restricts the returned descriptions to // those that occur on or after this time. StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // If specified, AWS Elastic Beanstalk restricts the returned descriptions to // those that are associated with this environment configuration. TemplateName *string `min:"1" type:"string"` // If specified, AWS Elastic Beanstalk restricts the returned descriptions to // those associated with this application version. VersionLabel *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeEventsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEventsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeEventsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeEventsInput"} if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4)) } if s.MaxRecords != nil && *s.MaxRecords < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxRecords", 1)) } if s.TemplateName != nil && len(*s.TemplateName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) } if s.VersionLabel != nil && len(*s.VersionLabel) < 1 { invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Result message wrapping a list of event descriptions. type DescribeEventsOutput struct { _ struct{} `type:"structure"` // A list of EventDescription. Events []*EventDescription `type:"list"` // If returned, this indicates that there are more results to obtain. Use this // token in the next DescribeEvents call to get the next batch of events. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeEventsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEventsOutput) GoString() string { return s.String() } // See the example below to learn how to create a request body. type DescribeInstancesHealthInput struct { _ struct{} `type:"structure"` // Specifies the response elements you wish to receive. If no attribute names // are specified, AWS Elastic Beanstalk only returns a list of instances. AttributeNames []*string `type:"list"` // Specifies the AWS Elastic Beanstalk environment ID. EnvironmentId *string `type:"string"` // Specifies the AWS Elastic Beanstalk environment name. EnvironmentName *string `min:"4" type:"string"` // Specifies the next token of the request. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeInstancesHealthInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInstancesHealthInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeInstancesHealthInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeInstancesHealthInput"} if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // See the example below for a sample response. type DescribeInstancesHealthOutput struct { _ struct{} `type:"structure"` // Contains the response body with information about the health of the instance. InstanceHealthList []*SingleInstanceHealth `type:"list"` // The next token. NextToken *string `min:"1" type:"string"` // The date and time the information was last refreshed. RefreshedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s DescribeInstancesHealthOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInstancesHealthOutput) GoString() string { return s.String() } // Describes the properties of an environment. type EnvironmentDescription struct { _ struct{} `type:"structure"` // Indicates if there is an in-progress environment configuration update or // application version deployment that you can cancel. // // true: There is an update in progress. // // false: There are no updates currently in progress. AbortableOperationInProgress *bool `type:"boolean"` // The name of the application associated with this environment. ApplicationName *string `min:"1" type:"string"` // The URL to the CNAME for this environment. CNAME *string `min:"1" type:"string"` // The creation date for this environment. DateCreated *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The last modified date for this environment. DateUpdated *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Describes this environment. Description *string `type:"string"` // For load-balanced, autoscaling environments, the URL to the LoadBalancer. // For single-instance environments, the IP address of the instance. EndpointURL *string `type:"string"` // The ID of this environment. EnvironmentId *string `type:"string"` // A list of links to other environments in the same group. EnvironmentLinks []*EnvironmentLink `type:"list"` // The name of this environment. EnvironmentName *string `min:"4" type:"string"` // Describes the health status of the environment. AWS Elastic Beanstalk indicates // the failure levels for a running environment: // // * Red: Indicates the environment is not responsive. Occurs when three // or more consecutive failures occur for an environment. // // * Yellow: Indicates that something is wrong. Occurs when two consecutive // failures occur for an environment. // // * Green: Indicates the environment is healthy and fully functional. // // * Grey: Default health for a new environment. The environment is not fully // launched and health checks have not started or health checks are suspended // during an UpdateEnvironment or RestartEnvironement request. // // Default: Grey Health *string `type:"string" enum:"EnvironmentHealth"` // Returns the health status of the application running in your environment. // For more information, see Health Colors and Statuses (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html). HealthStatus *string `type:"string" enum:"EnvironmentHealthStatus"` // The description of the AWS resources used by this environment. Resources *EnvironmentResourcesDescription `type:"structure"` // The name of the SolutionStack deployed with this environment. SolutionStackName *string `type:"string"` // The current operational status of the environment: // // * Launching: Environment is in the process of initial deployment. // // * Updating: Environment is in the process of updating its configuration // settings or application version. // // * Ready: Environment is available to have an action performed on it, such // as update or terminate. // // * Terminating: Environment is in the shut-down process. // // * Terminated: Environment is not running. Status *string `type:"string" enum:"EnvironmentStatus"` // The name of the configuration template used to originally launch this environment. TemplateName *string `min:"1" type:"string"` // Describes the current tier of this environment. Tier *EnvironmentTier `type:"structure"` // The application version deployed in this environment. VersionLabel *string `min:"1" type:"string"` } // String returns the string representation func (s EnvironmentDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnvironmentDescription) GoString() string { return s.String() } // Result message containing a list of environment descriptions. type EnvironmentDescriptionsMessage struct { _ struct{} `type:"structure"` // Returns an EnvironmentDescription list. Environments []*EnvironmentDescription `type:"list"` } // String returns the string representation func (s EnvironmentDescriptionsMessage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnvironmentDescriptionsMessage) GoString() string { return s.String() } // The information retrieved from the Amazon EC2 instances. type EnvironmentInfoDescription struct { _ struct{} `type:"structure"` // The Amazon EC2 Instance ID for this information. Ec2InstanceId *string `type:"string"` // The type of information retrieved. InfoType *string `type:"string" enum:"EnvironmentInfoType"` // The retrieved information. Message *string `type:"string"` // The time stamp when this information was retrieved. SampleTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s EnvironmentInfoDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnvironmentInfoDescription) GoString() string { return s.String() } // A link to another environment, defined in the environment's manifest. Links // provide connection information in system properties that can be used to connect // to another environment in the same group. See Environment Manifest (env.yaml) // (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-cfg-manifest.html) // for details. type EnvironmentLink struct { _ struct{} `type:"structure"` // The name of the linked environment (the dependency). EnvironmentName *string `type:"string"` // The name of the link. LinkName *string `type:"string"` } // String returns the string representation func (s EnvironmentLink) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnvironmentLink) GoString() string { return s.String() } // Describes the AWS resources in use by this environment. This data is live. type EnvironmentResourceDescription struct { _ struct{} `type:"structure"` // The AutoScalingGroups used by this environment. AutoScalingGroups []*AutoScalingGroup `type:"list"` // The name of the environment. EnvironmentName *string `min:"4" type:"string"` // The Amazon EC2 instances used by this environment. Instances []*Instance `type:"list"` // The Auto Scaling launch configurations in use by this environment. LaunchConfigurations []*LaunchConfiguration `type:"list"` // The LoadBalancers in use by this environment. LoadBalancers []*LoadBalancer `type:"list"` // The queues used by this environment. Queues []*Queue `type:"list"` // The AutoScaling triggers in use by this environment. Triggers []*Trigger `type:"list"` } // String returns the string representation func (s EnvironmentResourceDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnvironmentResourceDescription) GoString() string { return s.String() } // Describes the AWS resources in use by this environment. This data is not // live data. type EnvironmentResourcesDescription struct { _ struct{} `type:"structure"` // Describes the LoadBalancer. LoadBalancer *LoadBalancerDescription `type:"structure"` } // String returns the string representation func (s EnvironmentResourcesDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnvironmentResourcesDescription) GoString() string { return s.String() } // Describes the properties of an environment tier type EnvironmentTier struct { _ struct{} `type:"structure"` // The name of this environment tier. Name *string `type:"string"` // The type of this environment tier. Type *string `type:"string"` // The version of this environment tier. Version *string `type:"string"` } // String returns the string representation func (s EnvironmentTier) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnvironmentTier) GoString() string { return s.String() } // Describes an event. type EventDescription struct { _ struct{} `type:"structure"` // The application associated with the event. ApplicationName *string `min:"1" type:"string"` // The name of the environment associated with this event. EnvironmentName *string `min:"4" type:"string"` // The date when the event occurred. EventDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The event message. Message *string `type:"string"` // The web service request ID for the activity of this event. RequestId *string `type:"string"` // The severity level of this event. Severity *string `type:"string" enum:"EventSeverity"` // The name of the configuration associated with this event. TemplateName *string `min:"1" type:"string"` // The release label for the application version associated with this event. VersionLabel *string `min:"1" type:"string"` } // String returns the string representation func (s EventDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EventDescription) GoString() string { return s.String() } // The description of an Amazon EC2 instance. type Instance struct { _ struct{} `type:"structure"` // The ID of the Amazon EC2 instance. Id *string `type:"string"` } // String returns the string representation func (s Instance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Instance) GoString() string { return s.String() } // Represents summary information about the health of an instance. For more // information, see Health Colors and Statuses (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html). type InstanceHealthSummary struct { _ struct{} `type:"structure"` // Red. The health agent is reporting a high number of request failures or other // issues for an instance or environment. Degraded *int64 `type:"integer"` // Green. An operation is in progress on an instance. Info *int64 `type:"integer"` // Grey. AWS Elastic Beanstalk and the health agent are reporting no data on // an instance. NoData *int64 `type:"integer"` // Green. An instance is passing health checks and the health agent is not reporting // any problems. Ok *int64 `type:"integer"` // Grey. An operation is in progress on an instance within the command timeout. Pending *int64 `type:"integer"` // Red. The health agent is reporting a very high number of request failures // or other issues for an instance or environment. Severe *int64 `type:"integer"` // Grey. AWS Elastic Beanstalk and the health agent are reporting an insufficient // amount of data on an instance. Unknown *int64 `type:"integer"` // Yellow. The health agent is reporting a moderate number of request failures // or other issues for an instance or environment. Warning *int64 `type:"integer"` } // String returns the string representation func (s InstanceHealthSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceHealthSummary) GoString() string { return s.String() } // Represents the average latency for the slowest X percent of requests over // the last 10 seconds. type Latency struct { _ struct{} `type:"structure"` // The average latency for the slowest 90 percent of requests over the last // 10 seconds. P10 *float64 `type:"double"` // The average latency for the slowest 50 percent of requests over the last // 10 seconds. P50 *float64 `type:"double"` // The average latency for the slowest 25 percent of requests over the last // 10 seconds. P75 *float64 `type:"double"` // The average latency for the slowest 15 percent of requests over the last // 10 seconds. P85 *float64 `type:"double"` // The average latency for the slowest 10 percent of requests over the last // 10 seconds. P90 *float64 `type:"double"` // The average latency for the slowest 5 percent of requests over the last 10 // seconds. P95 *float64 `type:"double"` // The average latency for the slowest 1 percent of requests over the last 10 // seconds. P99 *float64 `type:"double"` // The average latency for the slowest 0.1 percent of requests over the last // 10 seconds. P999 *float64 `type:"double"` } // String returns the string representation func (s Latency) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Latency) GoString() string { return s.String() } // Describes an Auto Scaling launch configuration. type LaunchConfiguration struct { _ struct{} `type:"structure"` // The name of the launch configuration. Name *string `type:"string"` } // String returns the string representation func (s LaunchConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LaunchConfiguration) GoString() string { return s.String() } type ListAvailableSolutionStacksInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ListAvailableSolutionStacksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAvailableSolutionStacksInput) GoString() string { return s.String() } // A list of available AWS Elastic Beanstalk solution stacks. type ListAvailableSolutionStacksOutput struct { _ struct{} `type:"structure"` // A list of available solution stacks and their SolutionStackDescription. SolutionStackDetails []*SolutionStackDescription `type:"list"` // A list of available solution stacks. SolutionStacks []*string `type:"list"` } // String returns the string representation func (s ListAvailableSolutionStacksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAvailableSolutionStacksOutput) GoString() string { return s.String() } // Describes the properties of a Listener for the LoadBalancer. type Listener struct { _ struct{} `type:"structure"` // The port that is used by the Listener. Port *int64 `type:"integer"` // The protocol that is used by the Listener. Protocol *string `type:"string"` } // String returns the string representation func (s Listener) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Listener) GoString() string { return s.String() } // Describes a LoadBalancer. type LoadBalancer struct { _ struct{} `type:"structure"` // The name of the LoadBalancer. Name *string `type:"string"` } // String returns the string representation func (s LoadBalancer) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LoadBalancer) GoString() string { return s.String() } // Describes the details of a LoadBalancer. type LoadBalancerDescription struct { _ struct{} `type:"structure"` // The domain name of the LoadBalancer. Domain *string `type:"string"` // A list of Listeners used by the LoadBalancer. Listeners []*Listener `type:"list"` // The name of the LoadBalancer. LoadBalancerName *string `type:"string"` } // String returns the string representation func (s LoadBalancerDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LoadBalancerDescription) GoString() string { return s.String() } // The record of an upcoming or in-progress managed action. type ManagedAction struct { _ struct{} `type:"structure"` // A description of the managed action. ActionDescription *string `type:"string"` // A unique identifier for the managed action. ActionId *string `type:"string"` // The type of managed action. ActionType *string `type:"string" enum:"ActionType"` // The status of the managed action. If the action is Scheduled, you can apply // it immediately with ApplyEnvironmentManagedAction. Status *string `type:"string" enum:"ActionStatus"` // The start time of the maintenance window in which the managed action will // execute. WindowStartTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s ManagedAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ManagedAction) GoString() string { return s.String() } // The record of a completed or failed managed action. type ManagedActionHistoryItem struct { _ struct{} `type:"structure"` // A description of the managed action. ActionDescription *string `type:"string"` // A unique identifier for the managed action. ActionId *string `type:"string"` // The type of the managed action. ActionType *string `type:"string" enum:"ActionType"` // The date and time that the action started executing. ExecutedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // If the action failed, a description of the failure. FailureDescription *string `type:"string"` // If the action failed, the type of failure. FailureType *string `type:"string" enum:"FailureType"` // The date and time that the action finished executing. FinishedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The status of the action. Status *string `type:"string" enum:"ActionHistoryStatus"` } // String returns the string representation func (s ManagedActionHistoryItem) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ManagedActionHistoryItem) GoString() string { return s.String() } // A regular expression representing a restriction on a string configuration // option value. type OptionRestrictionRegex struct { _ struct{} `type:"structure"` // A unique name representing this regular expression. Label *string `type:"string"` // The regular expression pattern that a string configuration option value with // this restriction must match. Pattern *string `type:"string"` } // String returns the string representation func (s OptionRestrictionRegex) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OptionRestrictionRegex) GoString() string { return s.String() } // A specification identifying an individual configuration option. type OptionSpecification struct { _ struct{} `type:"structure"` // A unique namespace identifying the option's associated AWS resource. Namespace *string `type:"string"` // The name of the configuration option. OptionName *string `type:"string"` // A unique resource name for a time-based scaling configuration option. ResourceName *string `min:"1" type:"string"` } // String returns the string representation func (s OptionSpecification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OptionSpecification) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *OptionSpecification) Validate() error { invalidParams := request.ErrInvalidParams{Context: "OptionSpecification"} if s.ResourceName != nil && len(*s.ResourceName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a queue. type Queue struct { _ struct{} `type:"structure"` // The name of the queue. Name *string `type:"string"` // The URL of the queue. URL *string `type:"string"` } // String returns the string representation func (s Queue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Queue) GoString() string { return s.String() } type RebuildEnvironmentInput struct { _ struct{} `type:"structure"` // The ID of the environment to rebuild. // // Condition: You must specify either this or an EnvironmentName, or both. If // you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter // error. EnvironmentId *string `type:"string"` // The name of the environment to rebuild. // // Condition: You must specify either this or an EnvironmentId, or both. If // you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter // error. EnvironmentName *string `min:"4" type:"string"` } // String returns the string representation func (s RebuildEnvironmentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebuildEnvironmentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RebuildEnvironmentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RebuildEnvironmentInput"} if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RebuildEnvironmentOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RebuildEnvironmentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebuildEnvironmentOutput) GoString() string { return s.String() } // Request to retrieve logs from an environment and store them in your Elastic // Beanstalk storage bucket. type RequestEnvironmentInfoInput struct { _ struct{} `type:"structure"` // The ID of the environment of the requested data. // // If no such environment is found, RequestEnvironmentInfo returns an InvalidParameterValue // error. // // Condition: You must specify either this or an EnvironmentName, or both. If // you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter // error. EnvironmentId *string `type:"string"` // The name of the environment of the requested data. // // If no such environment is found, RequestEnvironmentInfo returns an InvalidParameterValue // error. // // Condition: You must specify either this or an EnvironmentId, or both. If // you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter // error. EnvironmentName *string `min:"4" type:"string"` // The type of information to request. // // InfoType is a required field InfoType *string `type:"string" required:"true" enum:"EnvironmentInfoType"` } // String returns the string representation func (s RequestEnvironmentInfoInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestEnvironmentInfoInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RequestEnvironmentInfoInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RequestEnvironmentInfoInput"} if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4)) } if s.InfoType == nil { invalidParams.Add(request.NewErrParamRequired("InfoType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RequestEnvironmentInfoOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RequestEnvironmentInfoOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestEnvironmentInfoOutput) GoString() string { return s.String() } type RestartAppServerInput struct { _ struct{} `type:"structure"` // The ID of the environment to restart the server for. // // Condition: You must specify either this or an EnvironmentName, or both. If // you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter // error. EnvironmentId *string `type:"string"` // The name of the environment to restart the server for. // // Condition: You must specify either this or an EnvironmentId, or both. If // you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter // error. EnvironmentName *string `min:"4" type:"string"` } // String returns the string representation func (s RestartAppServerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestartAppServerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RestartAppServerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RestartAppServerInput"} if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RestartAppServerOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RestartAppServerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestartAppServerOutput) GoString() string { return s.String() } // Request to download logs retrieved with RequestEnvironmentInfo. type RetrieveEnvironmentInfoInput struct { _ struct{} `type:"structure"` // The ID of the data's environment. // // If no such environment is found, returns an InvalidParameterValue error. // // Condition: You must specify either this or an EnvironmentName, or both. If // you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter // error. EnvironmentId *string `type:"string"` // The name of the data's environment. // // If no such environment is found, returns an InvalidParameterValue error. // // Condition: You must specify either this or an EnvironmentId, or both. If // you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter // error. EnvironmentName *string `min:"4" type:"string"` // The type of information to retrieve. // // InfoType is a required field InfoType *string `type:"string" required:"true" enum:"EnvironmentInfoType"` } // String returns the string representation func (s RetrieveEnvironmentInfoInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RetrieveEnvironmentInfoInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RetrieveEnvironmentInfoInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RetrieveEnvironmentInfoInput"} if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4)) } if s.InfoType == nil { invalidParams.Add(request.NewErrParamRequired("InfoType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Result message containing a description of the requested environment info. type RetrieveEnvironmentInfoOutput struct { _ struct{} `type:"structure"` // The EnvironmentInfoDescription of the environment. EnvironmentInfo []*EnvironmentInfoDescription `type:"list"` } // String returns the string representation func (s RetrieveEnvironmentInfoOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RetrieveEnvironmentInfoOutput) GoString() string { return s.String() } // A specification of a location in Amazon S3. type S3Location struct { _ struct{} `type:"structure"` // The Amazon S3 bucket where the data is located. S3Bucket *string `type:"string"` // The Amazon S3 key where the data is located. S3Key *string `type:"string"` } // String returns the string representation func (s S3Location) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s S3Location) GoString() string { return s.String() } // Represents health information from the specified instance that belongs to // the AWS Elastic Beanstalk environment. Use the InstanceId property to specify // the application instance for which you'd like to return data. type SingleInstanceHealth struct { _ struct{} `type:"structure"` // Represents the application metrics for a specified environment. ApplicationMetrics *ApplicationMetrics `type:"structure"` // The availability zone in which the instance runs. AvailabilityZone *string `type:"string"` // Represents the causes, which provide more information about the current health // status. Causes []*string `type:"list"` // Represents the color indicator that gives you information about the health // of the EC2 instance. For more information, see Health Colors and Statuses // (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html). Color *string `type:"string"` // Information about the most recent deployment to an instance. Deployment *Deployment `type:"structure"` // Returns the health status of the specified instance. For more information, // see Health Colors and Statuses (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html). HealthStatus *string `type:"string"` // The ID of the Amazon EC2 instance. InstanceId *string `min:"1" type:"string"` // The instance's type. InstanceType *string `type:"string"` // The time at which the EC2 instance was launched. LaunchedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Represents CPU utilization and load average information for applications // running in the specified environment. System *SystemStatus `type:"structure"` } // String returns the string representation func (s SingleInstanceHealth) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SingleInstanceHealth) GoString() string { return s.String() } // Describes the solution stack. type SolutionStackDescription struct { _ struct{} `type:"structure"` // The permitted file types allowed for a solution stack. PermittedFileTypes []*string `type:"list"` // The name of the solution stack. SolutionStackName *string `type:"string"` } // String returns the string representation func (s SolutionStackDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SolutionStackDescription) GoString() string { return s.String() } type SourceBuildInformation struct { _ struct{} `type:"structure"` // SourceLocation is a required field SourceLocation *string `min:"3" type:"string" required:"true"` // SourceRepository is a required field SourceRepository *string `type:"string" required:"true" enum:"SourceRepository"` // SourceType is a required field SourceType *string `type:"string" required:"true" enum:"SourceType"` } // String returns the string representation func (s SourceBuildInformation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SourceBuildInformation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SourceBuildInformation) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SourceBuildInformation"} if s.SourceLocation == nil { invalidParams.Add(request.NewErrParamRequired("SourceLocation")) } if s.SourceLocation != nil && len(*s.SourceLocation) < 3 { invalidParams.Add(request.NewErrParamMinLen("SourceLocation", 3)) } if s.SourceRepository == nil { invalidParams.Add(request.NewErrParamRequired("SourceRepository")) } if s.SourceType == nil { invalidParams.Add(request.NewErrParamRequired("SourceType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A specification for an environment configuration type SourceConfiguration struct { _ struct{} `type:"structure"` // The name of the application associated with the configuration. ApplicationName *string `min:"1" type:"string"` // The name of the configuration template. TemplateName *string `min:"1" type:"string"` } // String returns the string representation func (s SourceConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SourceConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SourceConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SourceConfiguration"} if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.TemplateName != nil && len(*s.TemplateName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the percentage of requests over the last 10 seconds that resulted // in each type of status code response. For more information, see Status Code // Definitions (http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html). type StatusCodes struct { _ struct{} `type:"structure"` // The percentage of requests over the last 10 seconds that resulted in a 2xx // (200, 201, etc.) status code. Status2xx *int64 `type:"integer"` // The percentage of requests over the last 10 seconds that resulted in a 3xx // (300, 301, etc.) status code. Status3xx *int64 `type:"integer"` // The percentage of requests over the last 10 seconds that resulted in a 4xx // (400, 401, etc.) status code. Status4xx *int64 `type:"integer"` // The percentage of requests over the last 10 seconds that resulted in a 5xx // (500, 501, etc.) status code. Status5xx *int64 `type:"integer"` } // String returns the string representation func (s StatusCodes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StatusCodes) GoString() string { return s.String() } // Swaps the CNAMEs of two environments. type SwapEnvironmentCNAMEsInput struct { _ struct{} `type:"structure"` // The ID of the destination environment. // // Condition: You must specify at least the DestinationEnvironmentID or the // DestinationEnvironmentName. You may also specify both. You must specify the // SourceEnvironmentId with the DestinationEnvironmentId. DestinationEnvironmentId *string `type:"string"` // The name of the destination environment. // // Condition: You must specify at least the DestinationEnvironmentID or the // DestinationEnvironmentName. You may also specify both. You must specify the // SourceEnvironmentName with the DestinationEnvironmentName. DestinationEnvironmentName *string `min:"4" type:"string"` // The ID of the source environment. // // Condition: You must specify at least the SourceEnvironmentID or the SourceEnvironmentName. // You may also specify both. If you specify the SourceEnvironmentId, you must // specify the DestinationEnvironmentId. SourceEnvironmentId *string `type:"string"` // The name of the source environment. // // Condition: You must specify at least the SourceEnvironmentID or the SourceEnvironmentName. // You may also specify both. If you specify the SourceEnvironmentName, you // must specify the DestinationEnvironmentName. SourceEnvironmentName *string `min:"4" type:"string"` } // String returns the string representation func (s SwapEnvironmentCNAMEsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SwapEnvironmentCNAMEsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SwapEnvironmentCNAMEsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SwapEnvironmentCNAMEsInput"} if s.DestinationEnvironmentName != nil && len(*s.DestinationEnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("DestinationEnvironmentName", 4)) } if s.SourceEnvironmentName != nil && len(*s.SourceEnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("SourceEnvironmentName", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SwapEnvironmentCNAMEsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SwapEnvironmentCNAMEsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SwapEnvironmentCNAMEsOutput) GoString() string { return s.String() } // Represents CPU utilization and load average information for applications // running in the specified environment. type SystemStatus struct { _ struct{} `type:"structure"` // Represents CPU utilization information from the specified instance that belongs // to the AWS Elastic Beanstalk environment. Use the instanceId property to // specify the application instance for which you'd like to return data. CPUUtilization *CPUUtilization `type:"structure"` // Load average in the last 1-minute and 5-minute periods. For more information, // see Operating System Metrics (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-metrics.html#health-enhanced-metrics-os). LoadAverage []*float64 `type:"list"` } // String returns the string representation func (s SystemStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SystemStatus) GoString() string { return s.String() } // Describes a tag applied to a resource in an environment. type Tag struct { _ struct{} `type:"structure"` // The key of the tag. Key *string `min:"1" type:"string"` // The value of the tag. Value *string `min:"1" type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Value != nil && len(*s.Value) < 1 { invalidParams.Add(request.NewErrParamMinLen("Value", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to terminate an environment. type TerminateEnvironmentInput struct { _ struct{} `type:"structure"` // The ID of the environment to terminate. // // Condition: You must specify either this or an EnvironmentName, or both. If // you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter // error. EnvironmentId *string `type:"string"` // The name of the environment to terminate. // // Condition: You must specify either this or an EnvironmentId, or both. If // you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter // error. EnvironmentName *string `min:"4" type:"string"` // Terminates the target environment even if another environment in the same // group is dependent on it. ForceTerminate *bool `type:"boolean"` // Indicates whether the associated AWS resources should shut down when the // environment is terminated: // // * true: The specified environment as well as the associated AWS resources, // such as Auto Scaling group and LoadBalancer, are terminated. // // * false: AWS Elastic Beanstalk resource management is removed from the // environment, but the AWS resources continue to operate. // // For more information, see the AWS Elastic Beanstalk User Guide. (http://docs.aws.amazon.com/elasticbeanstalk/latest/ug/) // // Default: true // // Valid Values: true | false TerminateResources *bool `type:"boolean"` } // String returns the string representation func (s TerminateEnvironmentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TerminateEnvironmentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TerminateEnvironmentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TerminateEnvironmentInput"} if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a trigger. type Trigger struct { _ struct{} `type:"structure"` // The name of the trigger. Name *string `type:"string"` } // String returns the string representation func (s Trigger) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Trigger) GoString() string { return s.String() } // Request to update an application. type UpdateApplicationInput struct { _ struct{} `type:"structure"` // The name of the application to update. If no such application is found, UpdateApplication // returns an InvalidParameterValue error. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // A new description for the application. // // Default: If not specified, AWS Elastic Beanstalk does not update the description. Description *string `type:"string"` } // String returns the string representation func (s UpdateApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateApplicationVersionInput struct { _ struct{} `type:"structure"` // The name of the application associated with this version. // // If no application is found with this name, UpdateApplication returns an InvalidParameterValue // error. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // A new description for this release. Description *string `type:"string"` // The name of the version to update. // // If no application version is found with this label, UpdateApplication returns // an InvalidParameterValue error. // // VersionLabel is a required field VersionLabel *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateApplicationVersionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateApplicationVersionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateApplicationVersionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationVersionInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.VersionLabel == nil { invalidParams.Add(request.NewErrParamRequired("VersionLabel")) } if s.VersionLabel != nil && len(*s.VersionLabel) < 1 { invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result message containing the options for the specified solution stack. type UpdateConfigurationTemplateInput struct { _ struct{} `type:"structure"` // The name of the application associated with the configuration template to // update. // // If no application is found with this name, UpdateConfigurationTemplate returns // an InvalidParameterValue error. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // A new description for the configuration. Description *string `type:"string"` // A list of configuration option settings to update with the new specified // option value. OptionSettings []*ConfigurationOptionSetting `type:"list"` // A list of configuration options to remove from the configuration set. // // Constraint: You can remove only UserDefined configuration options. OptionsToRemove []*OptionSpecification `type:"list"` // The name of the configuration template to update. // // If no configuration template is found with this name, UpdateConfigurationTemplate // returns an InvalidParameterValue error. // // TemplateName is a required field TemplateName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateConfigurationTemplateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateConfigurationTemplateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateConfigurationTemplateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateConfigurationTemplateInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.TemplateName == nil { invalidParams.Add(request.NewErrParamRequired("TemplateName")) } if s.TemplateName != nil && len(*s.TemplateName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) } if s.OptionSettings != nil { for i, v := range s.OptionSettings { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionSettings", i), err.(request.ErrInvalidParams)) } } } if s.OptionsToRemove != nil { for i, v := range s.OptionsToRemove { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionsToRemove", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Request to update an environment. type UpdateEnvironmentInput struct { _ struct{} `type:"structure"` // The name of the application with which the environment is associated. ApplicationName *string `min:"1" type:"string"` // If this parameter is specified, AWS Elastic Beanstalk updates the description // of this environment. Description *string `type:"string"` // The ID of the environment to update. // // If no environment with this ID exists, AWS Elastic Beanstalk returns an InvalidParameterValue // error. // // Condition: You must specify either this or an EnvironmentName, or both. If // you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter // error. EnvironmentId *string `type:"string"` // The name of the environment to update. If no environment with this name exists, // AWS Elastic Beanstalk returns an InvalidParameterValue error. // // Condition: You must specify either this or an EnvironmentId, or both. If // you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter // error. EnvironmentName *string `min:"4" type:"string"` // The name of the group to which the target environment belongs. Specify a // group name only if the environment's name is specified in an environment // manifest and not with the environment name or environment ID parameters. // See Environment Manifest (env.yaml) (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-cfg-manifest.html) // for details. GroupName *string `min:"1" type:"string"` // If specified, AWS Elastic Beanstalk updates the configuration set associated // with the running environment and sets the specified configuration options // to the requested value. OptionSettings []*ConfigurationOptionSetting `type:"list"` // A list of custom user-defined configuration options to remove from the configuration // set for this environment. OptionsToRemove []*OptionSpecification `type:"list"` // This specifies the platform version that the environment will run after the // environment is updated. SolutionStackName *string `type:"string"` // If this parameter is specified, AWS Elastic Beanstalk deploys this configuration // template to the environment. If no such configuration template is found, // AWS Elastic Beanstalk returns an InvalidParameterValue error. TemplateName *string `min:"1" type:"string"` // This specifies the tier to use to update the environment. // // Condition: At this time, if you change the tier version, name, or type, AWS // Elastic Beanstalk returns InvalidParameterValue error. Tier *EnvironmentTier `type:"structure"` // If this parameter is specified, AWS Elastic Beanstalk deploys the named application // version to the environment. If no such application version is found, returns // an InvalidParameterValue error. VersionLabel *string `min:"1" type:"string"` } // String returns the string representation func (s UpdateEnvironmentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateEnvironmentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateEnvironmentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateEnvironmentInput"} if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4)) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if s.TemplateName != nil && len(*s.TemplateName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) } if s.VersionLabel != nil && len(*s.VersionLabel) < 1 { invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1)) } if s.OptionSettings != nil { for i, v := range s.OptionSettings { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionSettings", i), err.(request.ErrInvalidParams)) } } } if s.OptionsToRemove != nil { for i, v := range s.OptionsToRemove { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionsToRemove", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A list of validation messages for a specified configuration template. type ValidateConfigurationSettingsInput struct { _ struct{} `type:"structure"` // The name of the application that the configuration template or environment // belongs to. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // The name of the environment to validate the settings against. // // Condition: You cannot specify both this and a configuration template name. EnvironmentName *string `min:"4" type:"string"` // A list of the options and desired values to evaluate. // // OptionSettings is a required field OptionSettings []*ConfigurationOptionSetting `type:"list" required:"true"` // The name of the configuration template to validate the settings against. // // Condition: You cannot specify both this and an environment name. TemplateName *string `min:"1" type:"string"` } // String returns the string representation func (s ValidateConfigurationSettingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ValidateConfigurationSettingsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ValidateConfigurationSettingsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ValidateConfigurationSettingsInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 { invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4)) } if s.OptionSettings == nil { invalidParams.Add(request.NewErrParamRequired("OptionSettings")) } if s.TemplateName != nil && len(*s.TemplateName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) } if s.OptionSettings != nil { for i, v := range s.OptionSettings { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionSettings", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides a list of validation messages. type ValidateConfigurationSettingsOutput struct { _ struct{} `type:"structure"` // A list of ValidationMessage. Messages []*ValidationMessage `type:"list"` } // String returns the string representation func (s ValidateConfigurationSettingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ValidateConfigurationSettingsOutput) GoString() string { return s.String() } // An error or warning for a desired configuration option value. type ValidationMessage struct { _ struct{} `type:"structure"` // A message describing the error or warning. Message *string `type:"string"` Namespace *string `type:"string"` OptionName *string `type:"string"` // An indication of the severity of this message: // // * error: This message indicates that this is not a valid setting for an // option. // // * warning: This message is providing information you should take into // account. Severity *string `type:"string" enum:"ValidationSeverity"` } // String returns the string representation func (s ValidationMessage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ValidationMessage) GoString() string { return s.String() } const ( // ActionHistoryStatusCompleted is a ActionHistoryStatus enum value ActionHistoryStatusCompleted = "Completed" // ActionHistoryStatusFailed is a ActionHistoryStatus enum value ActionHistoryStatusFailed = "Failed" // ActionHistoryStatusUnknown is a ActionHistoryStatus enum value ActionHistoryStatusUnknown = "Unknown" ) const ( // ActionStatusScheduled is a ActionStatus enum value ActionStatusScheduled = "Scheduled" // ActionStatusPending is a ActionStatus enum value ActionStatusPending = "Pending" // ActionStatusRunning is a ActionStatus enum value ActionStatusRunning = "Running" // ActionStatusUnknown is a ActionStatus enum value ActionStatusUnknown = "Unknown" ) const ( // ActionTypeInstanceRefresh is a ActionType enum value ActionTypeInstanceRefresh = "InstanceRefresh" // ActionTypePlatformUpdate is a ActionType enum value ActionTypePlatformUpdate = "PlatformUpdate" // ActionTypeUnknown is a ActionType enum value ActionTypeUnknown = "Unknown" ) const ( // ApplicationVersionStatusProcessed is a ApplicationVersionStatus enum value ApplicationVersionStatusProcessed = "Processed" // ApplicationVersionStatusUnprocessed is a ApplicationVersionStatus enum value ApplicationVersionStatusUnprocessed = "Unprocessed" // ApplicationVersionStatusFailed is a ApplicationVersionStatus enum value ApplicationVersionStatusFailed = "Failed" // ApplicationVersionStatusProcessing is a ApplicationVersionStatus enum value ApplicationVersionStatusProcessing = "Processing" ) const ( // ConfigurationDeploymentStatusDeployed is a ConfigurationDeploymentStatus enum value ConfigurationDeploymentStatusDeployed = "deployed" // ConfigurationDeploymentStatusPending is a ConfigurationDeploymentStatus enum value ConfigurationDeploymentStatusPending = "pending" // ConfigurationDeploymentStatusFailed is a ConfigurationDeploymentStatus enum value ConfigurationDeploymentStatusFailed = "failed" ) const ( // ConfigurationOptionValueTypeScalar is a ConfigurationOptionValueType enum value ConfigurationOptionValueTypeScalar = "Scalar" // ConfigurationOptionValueTypeList is a ConfigurationOptionValueType enum value ConfigurationOptionValueTypeList = "List" ) const ( // EnvironmentHealthGreen is a EnvironmentHealth enum value EnvironmentHealthGreen = "Green" // EnvironmentHealthYellow is a EnvironmentHealth enum value EnvironmentHealthYellow = "Yellow" // EnvironmentHealthRed is a EnvironmentHealth enum value EnvironmentHealthRed = "Red" // EnvironmentHealthGrey is a EnvironmentHealth enum value EnvironmentHealthGrey = "Grey" ) const ( // EnvironmentHealthAttributeStatus is a EnvironmentHealthAttribute enum value EnvironmentHealthAttributeStatus = "Status" // EnvironmentHealthAttributeColor is a EnvironmentHealthAttribute enum value EnvironmentHealthAttributeColor = "Color" // EnvironmentHealthAttributeCauses is a EnvironmentHealthAttribute enum value EnvironmentHealthAttributeCauses = "Causes" // EnvironmentHealthAttributeApplicationMetrics is a EnvironmentHealthAttribute enum value EnvironmentHealthAttributeApplicationMetrics = "ApplicationMetrics" // EnvironmentHealthAttributeInstancesHealth is a EnvironmentHealthAttribute enum value EnvironmentHealthAttributeInstancesHealth = "InstancesHealth" // EnvironmentHealthAttributeAll is a EnvironmentHealthAttribute enum value EnvironmentHealthAttributeAll = "All" // EnvironmentHealthAttributeHealthStatus is a EnvironmentHealthAttribute enum value EnvironmentHealthAttributeHealthStatus = "HealthStatus" // EnvironmentHealthAttributeRefreshedAt is a EnvironmentHealthAttribute enum value EnvironmentHealthAttributeRefreshedAt = "RefreshedAt" ) const ( // EnvironmentHealthStatusNoData is a EnvironmentHealthStatus enum value EnvironmentHealthStatusNoData = "NoData" // EnvironmentHealthStatusUnknown is a EnvironmentHealthStatus enum value EnvironmentHealthStatusUnknown = "Unknown" // EnvironmentHealthStatusPending is a EnvironmentHealthStatus enum value EnvironmentHealthStatusPending = "Pending" // EnvironmentHealthStatusOk is a EnvironmentHealthStatus enum value EnvironmentHealthStatusOk = "Ok" // EnvironmentHealthStatusInfo is a EnvironmentHealthStatus enum value EnvironmentHealthStatusInfo = "Info" // EnvironmentHealthStatusWarning is a EnvironmentHealthStatus enum value EnvironmentHealthStatusWarning = "Warning" // EnvironmentHealthStatusDegraded is a EnvironmentHealthStatus enum value EnvironmentHealthStatusDegraded = "Degraded" // EnvironmentHealthStatusSevere is a EnvironmentHealthStatus enum value EnvironmentHealthStatusSevere = "Severe" ) const ( // EnvironmentInfoTypeTail is a EnvironmentInfoType enum value EnvironmentInfoTypeTail = "tail" // EnvironmentInfoTypeBundle is a EnvironmentInfoType enum value EnvironmentInfoTypeBundle = "bundle" ) const ( // EnvironmentStatusLaunching is a EnvironmentStatus enum value EnvironmentStatusLaunching = "Launching" // EnvironmentStatusUpdating is a EnvironmentStatus enum value EnvironmentStatusUpdating = "Updating" // EnvironmentStatusReady is a EnvironmentStatus enum value EnvironmentStatusReady = "Ready" // EnvironmentStatusTerminating is a EnvironmentStatus enum value EnvironmentStatusTerminating = "Terminating" // EnvironmentStatusTerminated is a EnvironmentStatus enum value EnvironmentStatusTerminated = "Terminated" ) const ( // EventSeverityTrace is a EventSeverity enum value EventSeverityTrace = "TRACE" // EventSeverityDebug is a EventSeverity enum value EventSeverityDebug = "DEBUG" // EventSeverityInfo is a EventSeverity enum value EventSeverityInfo = "INFO" // EventSeverityWarn is a EventSeverity enum value EventSeverityWarn = "WARN" // EventSeverityError is a EventSeverity enum value EventSeverityError = "ERROR" // EventSeverityFatal is a EventSeverity enum value EventSeverityFatal = "FATAL" ) const ( // FailureTypeUpdateCancelled is a FailureType enum value FailureTypeUpdateCancelled = "UpdateCancelled" // FailureTypeCancellationFailed is a FailureType enum value FailureTypeCancellationFailed = "CancellationFailed" // FailureTypeRollbackFailed is a FailureType enum value FailureTypeRollbackFailed = "RollbackFailed" // FailureTypeRollbackSuccessful is a FailureType enum value FailureTypeRollbackSuccessful = "RollbackSuccessful" // FailureTypeInternalFailure is a FailureType enum value FailureTypeInternalFailure = "InternalFailure" // FailureTypeInvalidEnvironmentState is a FailureType enum value FailureTypeInvalidEnvironmentState = "InvalidEnvironmentState" // FailureTypePermissionsError is a FailureType enum value FailureTypePermissionsError = "PermissionsError" ) const ( // InstancesHealthAttributeHealthStatus is a InstancesHealthAttribute enum value InstancesHealthAttributeHealthStatus = "HealthStatus" // InstancesHealthAttributeColor is a InstancesHealthAttribute enum value InstancesHealthAttributeColor = "Color" // InstancesHealthAttributeCauses is a InstancesHealthAttribute enum value InstancesHealthAttributeCauses = "Causes" // InstancesHealthAttributeApplicationMetrics is a InstancesHealthAttribute enum value InstancesHealthAttributeApplicationMetrics = "ApplicationMetrics" // InstancesHealthAttributeRefreshedAt is a InstancesHealthAttribute enum value InstancesHealthAttributeRefreshedAt = "RefreshedAt" // InstancesHealthAttributeLaunchedAt is a InstancesHealthAttribute enum value InstancesHealthAttributeLaunchedAt = "LaunchedAt" // InstancesHealthAttributeSystem is a InstancesHealthAttribute enum value InstancesHealthAttributeSystem = "System" // InstancesHealthAttributeDeployment is a InstancesHealthAttribute enum value InstancesHealthAttributeDeployment = "Deployment" // InstancesHealthAttributeAvailabilityZone is a InstancesHealthAttribute enum value InstancesHealthAttributeAvailabilityZone = "AvailabilityZone" // InstancesHealthAttributeInstanceType is a InstancesHealthAttribute enum value InstancesHealthAttributeInstanceType = "InstanceType" // InstancesHealthAttributeAll is a InstancesHealthAttribute enum value InstancesHealthAttributeAll = "All" ) const ( // SourceRepositoryCodeCommit is a SourceRepository enum value SourceRepositoryCodeCommit = "CodeCommit" ) const ( // SourceTypeGit is a SourceType enum value SourceTypeGit = "Git" ) const ( // ValidationSeverityError is a ValidationSeverity enum value ValidationSeverityError = "error" // ValidationSeverityWarning is a ValidationSeverity enum value ValidationSeverityWarning = "warning" ) aws-sdk-go-1.4.22/service/elasticbeanstalk/elasticbeanstalkiface/000077500000000000000000000000001300374646400250355ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/elasticbeanstalk/elasticbeanstalkiface/interface.go000066400000000000000000000306561300374646400273360ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package elasticbeanstalkiface provides an interface to enable mocking the AWS Elastic Beanstalk service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package elasticbeanstalkiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/elasticbeanstalk" ) // ElasticBeanstalkAPI provides an interface to enable mocking the // elasticbeanstalk.ElasticBeanstalk service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Elastic Beanstalk. // func myFunc(svc elasticbeanstalkiface.ElasticBeanstalkAPI) bool { // // Make svc.AbortEnvironmentUpdate request // } // // func main() { // sess := session.New() // svc := elasticbeanstalk.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockElasticBeanstalkClient struct { // elasticbeanstalkiface.ElasticBeanstalkAPI // } // func (m *mockElasticBeanstalkClient) AbortEnvironmentUpdate(input *elasticbeanstalk.AbortEnvironmentUpdateInput) (*elasticbeanstalk.AbortEnvironmentUpdateOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockElasticBeanstalkClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type ElasticBeanstalkAPI interface { AbortEnvironmentUpdateRequest(*elasticbeanstalk.AbortEnvironmentUpdateInput) (*request.Request, *elasticbeanstalk.AbortEnvironmentUpdateOutput) AbortEnvironmentUpdate(*elasticbeanstalk.AbortEnvironmentUpdateInput) (*elasticbeanstalk.AbortEnvironmentUpdateOutput, error) ApplyEnvironmentManagedActionRequest(*elasticbeanstalk.ApplyEnvironmentManagedActionInput) (*request.Request, *elasticbeanstalk.ApplyEnvironmentManagedActionOutput) ApplyEnvironmentManagedAction(*elasticbeanstalk.ApplyEnvironmentManagedActionInput) (*elasticbeanstalk.ApplyEnvironmentManagedActionOutput, error) CheckDNSAvailabilityRequest(*elasticbeanstalk.CheckDNSAvailabilityInput) (*request.Request, *elasticbeanstalk.CheckDNSAvailabilityOutput) CheckDNSAvailability(*elasticbeanstalk.CheckDNSAvailabilityInput) (*elasticbeanstalk.CheckDNSAvailabilityOutput, error) ComposeEnvironmentsRequest(*elasticbeanstalk.ComposeEnvironmentsInput) (*request.Request, *elasticbeanstalk.EnvironmentDescriptionsMessage) ComposeEnvironments(*elasticbeanstalk.ComposeEnvironmentsInput) (*elasticbeanstalk.EnvironmentDescriptionsMessage, error) CreateApplicationRequest(*elasticbeanstalk.CreateApplicationInput) (*request.Request, *elasticbeanstalk.ApplicationDescriptionMessage) CreateApplication(*elasticbeanstalk.CreateApplicationInput) (*elasticbeanstalk.ApplicationDescriptionMessage, error) CreateApplicationVersionRequest(*elasticbeanstalk.CreateApplicationVersionInput) (*request.Request, *elasticbeanstalk.ApplicationVersionDescriptionMessage) CreateApplicationVersion(*elasticbeanstalk.CreateApplicationVersionInput) (*elasticbeanstalk.ApplicationVersionDescriptionMessage, error) CreateConfigurationTemplateRequest(*elasticbeanstalk.CreateConfigurationTemplateInput) (*request.Request, *elasticbeanstalk.ConfigurationSettingsDescription) CreateConfigurationTemplate(*elasticbeanstalk.CreateConfigurationTemplateInput) (*elasticbeanstalk.ConfigurationSettingsDescription, error) CreateEnvironmentRequest(*elasticbeanstalk.CreateEnvironmentInput) (*request.Request, *elasticbeanstalk.EnvironmentDescription) CreateEnvironment(*elasticbeanstalk.CreateEnvironmentInput) (*elasticbeanstalk.EnvironmentDescription, error) CreateStorageLocationRequest(*elasticbeanstalk.CreateStorageLocationInput) (*request.Request, *elasticbeanstalk.CreateStorageLocationOutput) CreateStorageLocation(*elasticbeanstalk.CreateStorageLocationInput) (*elasticbeanstalk.CreateStorageLocationOutput, error) DeleteApplicationRequest(*elasticbeanstalk.DeleteApplicationInput) (*request.Request, *elasticbeanstalk.DeleteApplicationOutput) DeleteApplication(*elasticbeanstalk.DeleteApplicationInput) (*elasticbeanstalk.DeleteApplicationOutput, error) DeleteApplicationVersionRequest(*elasticbeanstalk.DeleteApplicationVersionInput) (*request.Request, *elasticbeanstalk.DeleteApplicationVersionOutput) DeleteApplicationVersion(*elasticbeanstalk.DeleteApplicationVersionInput) (*elasticbeanstalk.DeleteApplicationVersionOutput, error) DeleteConfigurationTemplateRequest(*elasticbeanstalk.DeleteConfigurationTemplateInput) (*request.Request, *elasticbeanstalk.DeleteConfigurationTemplateOutput) DeleteConfigurationTemplate(*elasticbeanstalk.DeleteConfigurationTemplateInput) (*elasticbeanstalk.DeleteConfigurationTemplateOutput, error) DeleteEnvironmentConfigurationRequest(*elasticbeanstalk.DeleteEnvironmentConfigurationInput) (*request.Request, *elasticbeanstalk.DeleteEnvironmentConfigurationOutput) DeleteEnvironmentConfiguration(*elasticbeanstalk.DeleteEnvironmentConfigurationInput) (*elasticbeanstalk.DeleteEnvironmentConfigurationOutput, error) DescribeApplicationVersionsRequest(*elasticbeanstalk.DescribeApplicationVersionsInput) (*request.Request, *elasticbeanstalk.DescribeApplicationVersionsOutput) DescribeApplicationVersions(*elasticbeanstalk.DescribeApplicationVersionsInput) (*elasticbeanstalk.DescribeApplicationVersionsOutput, error) DescribeApplicationsRequest(*elasticbeanstalk.DescribeApplicationsInput) (*request.Request, *elasticbeanstalk.DescribeApplicationsOutput) DescribeApplications(*elasticbeanstalk.DescribeApplicationsInput) (*elasticbeanstalk.DescribeApplicationsOutput, error) DescribeConfigurationOptionsRequest(*elasticbeanstalk.DescribeConfigurationOptionsInput) (*request.Request, *elasticbeanstalk.DescribeConfigurationOptionsOutput) DescribeConfigurationOptions(*elasticbeanstalk.DescribeConfigurationOptionsInput) (*elasticbeanstalk.DescribeConfigurationOptionsOutput, error) DescribeConfigurationSettingsRequest(*elasticbeanstalk.DescribeConfigurationSettingsInput) (*request.Request, *elasticbeanstalk.DescribeConfigurationSettingsOutput) DescribeConfigurationSettings(*elasticbeanstalk.DescribeConfigurationSettingsInput) (*elasticbeanstalk.DescribeConfigurationSettingsOutput, error) DescribeEnvironmentHealthRequest(*elasticbeanstalk.DescribeEnvironmentHealthInput) (*request.Request, *elasticbeanstalk.DescribeEnvironmentHealthOutput) DescribeEnvironmentHealth(*elasticbeanstalk.DescribeEnvironmentHealthInput) (*elasticbeanstalk.DescribeEnvironmentHealthOutput, error) DescribeEnvironmentManagedActionHistoryRequest(*elasticbeanstalk.DescribeEnvironmentManagedActionHistoryInput) (*request.Request, *elasticbeanstalk.DescribeEnvironmentManagedActionHistoryOutput) DescribeEnvironmentManagedActionHistory(*elasticbeanstalk.DescribeEnvironmentManagedActionHistoryInput) (*elasticbeanstalk.DescribeEnvironmentManagedActionHistoryOutput, error) DescribeEnvironmentManagedActionsRequest(*elasticbeanstalk.DescribeEnvironmentManagedActionsInput) (*request.Request, *elasticbeanstalk.DescribeEnvironmentManagedActionsOutput) DescribeEnvironmentManagedActions(*elasticbeanstalk.DescribeEnvironmentManagedActionsInput) (*elasticbeanstalk.DescribeEnvironmentManagedActionsOutput, error) DescribeEnvironmentResourcesRequest(*elasticbeanstalk.DescribeEnvironmentResourcesInput) (*request.Request, *elasticbeanstalk.DescribeEnvironmentResourcesOutput) DescribeEnvironmentResources(*elasticbeanstalk.DescribeEnvironmentResourcesInput) (*elasticbeanstalk.DescribeEnvironmentResourcesOutput, error) DescribeEnvironmentsRequest(*elasticbeanstalk.DescribeEnvironmentsInput) (*request.Request, *elasticbeanstalk.EnvironmentDescriptionsMessage) DescribeEnvironments(*elasticbeanstalk.DescribeEnvironmentsInput) (*elasticbeanstalk.EnvironmentDescriptionsMessage, error) DescribeEventsRequest(*elasticbeanstalk.DescribeEventsInput) (*request.Request, *elasticbeanstalk.DescribeEventsOutput) DescribeEvents(*elasticbeanstalk.DescribeEventsInput) (*elasticbeanstalk.DescribeEventsOutput, error) DescribeEventsPages(*elasticbeanstalk.DescribeEventsInput, func(*elasticbeanstalk.DescribeEventsOutput, bool) bool) error DescribeInstancesHealthRequest(*elasticbeanstalk.DescribeInstancesHealthInput) (*request.Request, *elasticbeanstalk.DescribeInstancesHealthOutput) DescribeInstancesHealth(*elasticbeanstalk.DescribeInstancesHealthInput) (*elasticbeanstalk.DescribeInstancesHealthOutput, error) ListAvailableSolutionStacksRequest(*elasticbeanstalk.ListAvailableSolutionStacksInput) (*request.Request, *elasticbeanstalk.ListAvailableSolutionStacksOutput) ListAvailableSolutionStacks(*elasticbeanstalk.ListAvailableSolutionStacksInput) (*elasticbeanstalk.ListAvailableSolutionStacksOutput, error) RebuildEnvironmentRequest(*elasticbeanstalk.RebuildEnvironmentInput) (*request.Request, *elasticbeanstalk.RebuildEnvironmentOutput) RebuildEnvironment(*elasticbeanstalk.RebuildEnvironmentInput) (*elasticbeanstalk.RebuildEnvironmentOutput, error) RequestEnvironmentInfoRequest(*elasticbeanstalk.RequestEnvironmentInfoInput) (*request.Request, *elasticbeanstalk.RequestEnvironmentInfoOutput) RequestEnvironmentInfo(*elasticbeanstalk.RequestEnvironmentInfoInput) (*elasticbeanstalk.RequestEnvironmentInfoOutput, error) RestartAppServerRequest(*elasticbeanstalk.RestartAppServerInput) (*request.Request, *elasticbeanstalk.RestartAppServerOutput) RestartAppServer(*elasticbeanstalk.RestartAppServerInput) (*elasticbeanstalk.RestartAppServerOutput, error) RetrieveEnvironmentInfoRequest(*elasticbeanstalk.RetrieveEnvironmentInfoInput) (*request.Request, *elasticbeanstalk.RetrieveEnvironmentInfoOutput) RetrieveEnvironmentInfo(*elasticbeanstalk.RetrieveEnvironmentInfoInput) (*elasticbeanstalk.RetrieveEnvironmentInfoOutput, error) SwapEnvironmentCNAMEsRequest(*elasticbeanstalk.SwapEnvironmentCNAMEsInput) (*request.Request, *elasticbeanstalk.SwapEnvironmentCNAMEsOutput) SwapEnvironmentCNAMEs(*elasticbeanstalk.SwapEnvironmentCNAMEsInput) (*elasticbeanstalk.SwapEnvironmentCNAMEsOutput, error) TerminateEnvironmentRequest(*elasticbeanstalk.TerminateEnvironmentInput) (*request.Request, *elasticbeanstalk.EnvironmentDescription) TerminateEnvironment(*elasticbeanstalk.TerminateEnvironmentInput) (*elasticbeanstalk.EnvironmentDescription, error) UpdateApplicationRequest(*elasticbeanstalk.UpdateApplicationInput) (*request.Request, *elasticbeanstalk.ApplicationDescriptionMessage) UpdateApplication(*elasticbeanstalk.UpdateApplicationInput) (*elasticbeanstalk.ApplicationDescriptionMessage, error) UpdateApplicationVersionRequest(*elasticbeanstalk.UpdateApplicationVersionInput) (*request.Request, *elasticbeanstalk.ApplicationVersionDescriptionMessage) UpdateApplicationVersion(*elasticbeanstalk.UpdateApplicationVersionInput) (*elasticbeanstalk.ApplicationVersionDescriptionMessage, error) UpdateConfigurationTemplateRequest(*elasticbeanstalk.UpdateConfigurationTemplateInput) (*request.Request, *elasticbeanstalk.ConfigurationSettingsDescription) UpdateConfigurationTemplate(*elasticbeanstalk.UpdateConfigurationTemplateInput) (*elasticbeanstalk.ConfigurationSettingsDescription, error) UpdateEnvironmentRequest(*elasticbeanstalk.UpdateEnvironmentInput) (*request.Request, *elasticbeanstalk.EnvironmentDescription) UpdateEnvironment(*elasticbeanstalk.UpdateEnvironmentInput) (*elasticbeanstalk.EnvironmentDescription, error) ValidateConfigurationSettingsRequest(*elasticbeanstalk.ValidateConfigurationSettingsInput) (*request.Request, *elasticbeanstalk.ValidateConfigurationSettingsOutput) ValidateConfigurationSettings(*elasticbeanstalk.ValidateConfigurationSettingsInput) (*elasticbeanstalk.ValidateConfigurationSettingsOutput, error) } var _ ElasticBeanstalkAPI = (*elasticbeanstalk.ElasticBeanstalk)(nil) aws-sdk-go-1.4.22/service/elasticbeanstalk/examples_test.go000066400000000000000000000716461300374646400237560ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package elasticbeanstalk_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/elasticbeanstalk" ) var _ time.Duration var _ bytes.Buffer func ExampleElasticBeanstalk_AbortEnvironmentUpdate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.AbortEnvironmentUpdateInput{ EnvironmentId: aws.String("EnvironmentId"), EnvironmentName: aws.String("EnvironmentName"), } resp, err := svc.AbortEnvironmentUpdate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_ApplyEnvironmentManagedAction() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.ApplyEnvironmentManagedActionInput{ ActionId: aws.String("String"), // Required EnvironmentId: aws.String("String"), EnvironmentName: aws.String("String"), } resp, err := svc.ApplyEnvironmentManagedAction(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_CheckDNSAvailability() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.CheckDNSAvailabilityInput{ CNAMEPrefix: aws.String("DNSCnamePrefix"), // Required } resp, err := svc.CheckDNSAvailability(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_ComposeEnvironments() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.ComposeEnvironmentsInput{ ApplicationName: aws.String("ApplicationName"), GroupName: aws.String("GroupName"), VersionLabels: []*string{ aws.String("VersionLabel"), // Required // More values... }, } resp, err := svc.ComposeEnvironments(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_CreateApplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.CreateApplicationInput{ ApplicationName: aws.String("ApplicationName"), // Required Description: aws.String("Description"), } resp, err := svc.CreateApplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_CreateApplicationVersion() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.CreateApplicationVersionInput{ ApplicationName: aws.String("ApplicationName"), // Required VersionLabel: aws.String("VersionLabel"), // Required AutoCreateApplication: aws.Bool(true), Description: aws.String("Description"), Process: aws.Bool(true), SourceBuildInformation: &elasticbeanstalk.SourceBuildInformation{ SourceLocation: aws.String("SourceLocation"), // Required SourceRepository: aws.String("SourceRepository"), // Required SourceType: aws.String("SourceType"), // Required }, SourceBundle: &elasticbeanstalk.S3Location{ S3Bucket: aws.String("S3Bucket"), S3Key: aws.String("S3Key"), }, } resp, err := svc.CreateApplicationVersion(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_CreateConfigurationTemplate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.CreateConfigurationTemplateInput{ ApplicationName: aws.String("ApplicationName"), // Required TemplateName: aws.String("ConfigurationTemplateName"), // Required Description: aws.String("Description"), EnvironmentId: aws.String("EnvironmentId"), OptionSettings: []*elasticbeanstalk.ConfigurationOptionSetting{ { // Required Namespace: aws.String("OptionNamespace"), OptionName: aws.String("ConfigurationOptionName"), ResourceName: aws.String("ResourceName"), Value: aws.String("ConfigurationOptionValue"), }, // More values... }, SolutionStackName: aws.String("SolutionStackName"), SourceConfiguration: &elasticbeanstalk.SourceConfiguration{ ApplicationName: aws.String("ApplicationName"), TemplateName: aws.String("ConfigurationTemplateName"), }, } resp, err := svc.CreateConfigurationTemplate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_CreateEnvironment() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.CreateEnvironmentInput{ ApplicationName: aws.String("ApplicationName"), // Required CNAMEPrefix: aws.String("DNSCnamePrefix"), Description: aws.String("Description"), EnvironmentName: aws.String("EnvironmentName"), GroupName: aws.String("GroupName"), OptionSettings: []*elasticbeanstalk.ConfigurationOptionSetting{ { // Required Namespace: aws.String("OptionNamespace"), OptionName: aws.String("ConfigurationOptionName"), ResourceName: aws.String("ResourceName"), Value: aws.String("ConfigurationOptionValue"), }, // More values... }, OptionsToRemove: []*elasticbeanstalk.OptionSpecification{ { // Required Namespace: aws.String("OptionNamespace"), OptionName: aws.String("ConfigurationOptionName"), ResourceName: aws.String("ResourceName"), }, // More values... }, SolutionStackName: aws.String("SolutionStackName"), Tags: []*elasticbeanstalk.Tag{ { // Required Key: aws.String("TagKey"), Value: aws.String("TagValue"), }, // More values... }, TemplateName: aws.String("ConfigurationTemplateName"), Tier: &elasticbeanstalk.EnvironmentTier{ Name: aws.String("String"), Type: aws.String("String"), Version: aws.String("String"), }, VersionLabel: aws.String("VersionLabel"), } resp, err := svc.CreateEnvironment(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_CreateStorageLocation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) var params *elasticbeanstalk.CreateStorageLocationInput resp, err := svc.CreateStorageLocation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_DeleteApplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.DeleteApplicationInput{ ApplicationName: aws.String("ApplicationName"), // Required TerminateEnvByForce: aws.Bool(true), } resp, err := svc.DeleteApplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_DeleteApplicationVersion() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.DeleteApplicationVersionInput{ ApplicationName: aws.String("ApplicationName"), // Required VersionLabel: aws.String("VersionLabel"), // Required DeleteSourceBundle: aws.Bool(true), } resp, err := svc.DeleteApplicationVersion(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_DeleteConfigurationTemplate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.DeleteConfigurationTemplateInput{ ApplicationName: aws.String("ApplicationName"), // Required TemplateName: aws.String("ConfigurationTemplateName"), // Required } resp, err := svc.DeleteConfigurationTemplate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_DeleteEnvironmentConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.DeleteEnvironmentConfigurationInput{ ApplicationName: aws.String("ApplicationName"), // Required EnvironmentName: aws.String("EnvironmentName"), // Required } resp, err := svc.DeleteEnvironmentConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_DescribeApplicationVersions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.DescribeApplicationVersionsInput{ ApplicationName: aws.String("ApplicationName"), MaxRecords: aws.Int64(1), NextToken: aws.String("Token"), VersionLabels: []*string{ aws.String("VersionLabel"), // Required // More values... }, } resp, err := svc.DescribeApplicationVersions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_DescribeApplications() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.DescribeApplicationsInput{ ApplicationNames: []*string{ aws.String("ApplicationName"), // Required // More values... }, } resp, err := svc.DescribeApplications(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_DescribeConfigurationOptions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.DescribeConfigurationOptionsInput{ ApplicationName: aws.String("ApplicationName"), EnvironmentName: aws.String("EnvironmentName"), Options: []*elasticbeanstalk.OptionSpecification{ { // Required Namespace: aws.String("OptionNamespace"), OptionName: aws.String("ConfigurationOptionName"), ResourceName: aws.String("ResourceName"), }, // More values... }, SolutionStackName: aws.String("SolutionStackName"), TemplateName: aws.String("ConfigurationTemplateName"), } resp, err := svc.DescribeConfigurationOptions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_DescribeConfigurationSettings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.DescribeConfigurationSettingsInput{ ApplicationName: aws.String("ApplicationName"), // Required EnvironmentName: aws.String("EnvironmentName"), TemplateName: aws.String("ConfigurationTemplateName"), } resp, err := svc.DescribeConfigurationSettings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_DescribeEnvironmentHealth() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.DescribeEnvironmentHealthInput{ AttributeNames: []*string{ aws.String("EnvironmentHealthAttribute"), // Required // More values... }, EnvironmentId: aws.String("EnvironmentId"), EnvironmentName: aws.String("EnvironmentName"), } resp, err := svc.DescribeEnvironmentHealth(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_DescribeEnvironmentManagedActionHistory() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.DescribeEnvironmentManagedActionHistoryInput{ EnvironmentId: aws.String("EnvironmentId"), EnvironmentName: aws.String("EnvironmentName"), MaxItems: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.DescribeEnvironmentManagedActionHistory(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_DescribeEnvironmentManagedActions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.DescribeEnvironmentManagedActionsInput{ EnvironmentId: aws.String("String"), EnvironmentName: aws.String("String"), Status: aws.String("ActionStatus"), } resp, err := svc.DescribeEnvironmentManagedActions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_DescribeEnvironmentResources() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.DescribeEnvironmentResourcesInput{ EnvironmentId: aws.String("EnvironmentId"), EnvironmentName: aws.String("EnvironmentName"), } resp, err := svc.DescribeEnvironmentResources(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_DescribeEnvironments() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.DescribeEnvironmentsInput{ ApplicationName: aws.String("ApplicationName"), EnvironmentIds: []*string{ aws.String("EnvironmentId"), // Required // More values... }, EnvironmentNames: []*string{ aws.String("EnvironmentName"), // Required // More values... }, IncludeDeleted: aws.Bool(true), IncludedDeletedBackTo: aws.Time(time.Now()), VersionLabel: aws.String("VersionLabel"), } resp, err := svc.DescribeEnvironments(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_DescribeEvents() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.DescribeEventsInput{ ApplicationName: aws.String("ApplicationName"), EndTime: aws.Time(time.Now()), EnvironmentId: aws.String("EnvironmentId"), EnvironmentName: aws.String("EnvironmentName"), MaxRecords: aws.Int64(1), NextToken: aws.String("Token"), RequestId: aws.String("RequestId"), Severity: aws.String("EventSeverity"), StartTime: aws.Time(time.Now()), TemplateName: aws.String("ConfigurationTemplateName"), VersionLabel: aws.String("VersionLabel"), } resp, err := svc.DescribeEvents(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_DescribeInstancesHealth() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.DescribeInstancesHealthInput{ AttributeNames: []*string{ aws.String("InstancesHealthAttribute"), // Required // More values... }, EnvironmentId: aws.String("EnvironmentId"), EnvironmentName: aws.String("EnvironmentName"), NextToken: aws.String("NextToken"), } resp, err := svc.DescribeInstancesHealth(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_ListAvailableSolutionStacks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) var params *elasticbeanstalk.ListAvailableSolutionStacksInput resp, err := svc.ListAvailableSolutionStacks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_RebuildEnvironment() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.RebuildEnvironmentInput{ EnvironmentId: aws.String("EnvironmentId"), EnvironmentName: aws.String("EnvironmentName"), } resp, err := svc.RebuildEnvironment(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_RequestEnvironmentInfo() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.RequestEnvironmentInfoInput{ InfoType: aws.String("EnvironmentInfoType"), // Required EnvironmentId: aws.String("EnvironmentId"), EnvironmentName: aws.String("EnvironmentName"), } resp, err := svc.RequestEnvironmentInfo(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_RestartAppServer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.RestartAppServerInput{ EnvironmentId: aws.String("EnvironmentId"), EnvironmentName: aws.String("EnvironmentName"), } resp, err := svc.RestartAppServer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_RetrieveEnvironmentInfo() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.RetrieveEnvironmentInfoInput{ InfoType: aws.String("EnvironmentInfoType"), // Required EnvironmentId: aws.String("EnvironmentId"), EnvironmentName: aws.String("EnvironmentName"), } resp, err := svc.RetrieveEnvironmentInfo(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_SwapEnvironmentCNAMEs() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.SwapEnvironmentCNAMEsInput{ DestinationEnvironmentId: aws.String("EnvironmentId"), DestinationEnvironmentName: aws.String("EnvironmentName"), SourceEnvironmentId: aws.String("EnvironmentId"), SourceEnvironmentName: aws.String("EnvironmentName"), } resp, err := svc.SwapEnvironmentCNAMEs(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_TerminateEnvironment() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.TerminateEnvironmentInput{ EnvironmentId: aws.String("EnvironmentId"), EnvironmentName: aws.String("EnvironmentName"), ForceTerminate: aws.Bool(true), TerminateResources: aws.Bool(true), } resp, err := svc.TerminateEnvironment(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_UpdateApplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.UpdateApplicationInput{ ApplicationName: aws.String("ApplicationName"), // Required Description: aws.String("Description"), } resp, err := svc.UpdateApplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_UpdateApplicationVersion() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.UpdateApplicationVersionInput{ ApplicationName: aws.String("ApplicationName"), // Required VersionLabel: aws.String("VersionLabel"), // Required Description: aws.String("Description"), } resp, err := svc.UpdateApplicationVersion(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_UpdateConfigurationTemplate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.UpdateConfigurationTemplateInput{ ApplicationName: aws.String("ApplicationName"), // Required TemplateName: aws.String("ConfigurationTemplateName"), // Required Description: aws.String("Description"), OptionSettings: []*elasticbeanstalk.ConfigurationOptionSetting{ { // Required Namespace: aws.String("OptionNamespace"), OptionName: aws.String("ConfigurationOptionName"), ResourceName: aws.String("ResourceName"), Value: aws.String("ConfigurationOptionValue"), }, // More values... }, OptionsToRemove: []*elasticbeanstalk.OptionSpecification{ { // Required Namespace: aws.String("OptionNamespace"), OptionName: aws.String("ConfigurationOptionName"), ResourceName: aws.String("ResourceName"), }, // More values... }, } resp, err := svc.UpdateConfigurationTemplate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_UpdateEnvironment() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.UpdateEnvironmentInput{ ApplicationName: aws.String("ApplicationName"), Description: aws.String("Description"), EnvironmentId: aws.String("EnvironmentId"), EnvironmentName: aws.String("EnvironmentName"), GroupName: aws.String("GroupName"), OptionSettings: []*elasticbeanstalk.ConfigurationOptionSetting{ { // Required Namespace: aws.String("OptionNamespace"), OptionName: aws.String("ConfigurationOptionName"), ResourceName: aws.String("ResourceName"), Value: aws.String("ConfigurationOptionValue"), }, // More values... }, OptionsToRemove: []*elasticbeanstalk.OptionSpecification{ { // Required Namespace: aws.String("OptionNamespace"), OptionName: aws.String("ConfigurationOptionName"), ResourceName: aws.String("ResourceName"), }, // More values... }, SolutionStackName: aws.String("SolutionStackName"), TemplateName: aws.String("ConfigurationTemplateName"), Tier: &elasticbeanstalk.EnvironmentTier{ Name: aws.String("String"), Type: aws.String("String"), Version: aws.String("String"), }, VersionLabel: aws.String("VersionLabel"), } resp, err := svc.UpdateEnvironment(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticBeanstalk_ValidateConfigurationSettings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticbeanstalk.New(sess) params := &elasticbeanstalk.ValidateConfigurationSettingsInput{ ApplicationName: aws.String("ApplicationName"), // Required OptionSettings: []*elasticbeanstalk.ConfigurationOptionSetting{ // Required { // Required Namespace: aws.String("OptionNamespace"), OptionName: aws.String("ConfigurationOptionName"), ResourceName: aws.String("ResourceName"), Value: aws.String("ConfigurationOptionValue"), }, // More values... }, EnvironmentName: aws.String("EnvironmentName"), TemplateName: aws.String("ConfigurationTemplateName"), } resp, err := svc.ValidateConfigurationSettings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/elasticbeanstalk/service.go000066400000000000000000000072741300374646400225350ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package elasticbeanstalk import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/query" ) // AWS Elastic Beanstalk makes it easy for you to create, deploy, and manage // scalable, fault-tolerant applications running on the Amazon Web Services // cloud. // // For more information about this product, go to the AWS Elastic Beanstalk // (http://aws.amazon.com/elasticbeanstalk/) details page. The location of the // latest AWS Elastic Beanstalk WSDL is http://elasticbeanstalk.s3.amazonaws.com/doc/2010-12-01/AWSElasticBeanstalk.wsdl // (http://elasticbeanstalk.s3.amazonaws.com/doc/2010-12-01/AWSElasticBeanstalk.wsdl). // To install the Software Development Kits (SDKs), Integrated Development Environment // (IDE) Toolkits, and command line tools that enable you to access the API, // go to Tools for Amazon Web Services (http://aws.amazon.com/tools/). // // Endpoints // // For a list of region-specific endpoints that AWS Elastic Beanstalk supports, // go to Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html#elasticbeanstalk_region) // in the Amazon Web Services Glossary. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type ElasticBeanstalk struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "elasticbeanstalk" // New creates a new instance of the ElasticBeanstalk client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a ElasticBeanstalk client from just a session. // svc := elasticbeanstalk.New(mySession) // // // Create a ElasticBeanstalk client with additional configuration // svc := elasticbeanstalk.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *ElasticBeanstalk { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *ElasticBeanstalk { svc := &ElasticBeanstalk{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2010-12-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a ElasticBeanstalk operation and runs any // custom request initialization. func (c *ElasticBeanstalk) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/elasticsearchservice/000077500000000000000000000000001300374646400214165ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/elasticsearchservice/api.go000066400000000000000000002064321300374646400225250ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package elasticsearchservice provides a client for Amazon Elasticsearch Service. package elasticsearchservice import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) const opAddTags = "AddTags" // AddTagsRequest generates a "aws/request.Request" representing the // client's request for the AddTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddTagsRequest method. // req, resp := client.AddTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticsearchService) AddTagsRequest(input *AddTagsInput) (req *request.Request, output *AddTagsOutput) { op := &request.Operation{ Name: opAddTags, HTTPMethod: "POST", HTTPPath: "/2015-01-01/tags", } if input == nil { input = &AddTagsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AddTagsOutput{} req.Data = output return } // AddTags API operation for Amazon Elasticsearch Service. // // Attaches tags to an existing Elasticsearch domain. Tags are a set of case-sensitive // key value pairs. An Elasticsearch domain may have up to 10 tags. See Tagging // Amazon Elasticsearch Service Domains for more information. (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-managedomains.html#es-managedomains-awsresorcetagging) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elasticsearch Service's // API operation AddTags for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * LimitExceededException // An exception for trying to create more than allowed resources or sub-resources. // Gives http status code of 409. // // * ValidationException // An exception for missing / invalid input fields. Gives http status code of // 400. // // * InternalException // The request processing has failed because of an unknown error, exception // or failure (the failure is internal to the service) . Gives http status code // of 500. // func (c *ElasticsearchService) AddTags(input *AddTagsInput) (*AddTagsOutput, error) { req, out := c.AddTagsRequest(input) err := req.Send() return out, err } const opCreateElasticsearchDomain = "CreateElasticsearchDomain" // CreateElasticsearchDomainRequest generates a "aws/request.Request" representing the // client's request for the CreateElasticsearchDomain operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateElasticsearchDomain for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateElasticsearchDomain method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateElasticsearchDomainRequest method. // req, resp := client.CreateElasticsearchDomainRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticsearchService) CreateElasticsearchDomainRequest(input *CreateElasticsearchDomainInput) (req *request.Request, output *CreateElasticsearchDomainOutput) { op := &request.Operation{ Name: opCreateElasticsearchDomain, HTTPMethod: "POST", HTTPPath: "/2015-01-01/es/domain", } if input == nil { input = &CreateElasticsearchDomainInput{} } req = c.newRequest(op, input, output) output = &CreateElasticsearchDomainOutput{} req.Data = output return } // CreateElasticsearchDomain API operation for Amazon Elasticsearch Service. // // Creates a new Elasticsearch domain. For more information, see Creating Elasticsearch // Domains (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomains) // in the Amazon Elasticsearch Service Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elasticsearch Service's // API operation CreateElasticsearchDomain for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * DisabledOperationException // An error occured because the client wanted to access a not supported operation. // Gives http status code of 409. // // * InternalException // The request processing has failed because of an unknown error, exception // or failure (the failure is internal to the service) . Gives http status code // of 500. // // * InvalidTypeException // An exception for trying to create or access sub-resource that is either invalid // or not supported. Gives http status code of 409. // // * LimitExceededException // An exception for trying to create more than allowed resources or sub-resources. // Gives http status code of 409. // // * ResourceAlreadyExistsException // An exception for creating a resource that already exists. Gives http status // code of 400. // // * ValidationException // An exception for missing / invalid input fields. Gives http status code of // 400. // func (c *ElasticsearchService) CreateElasticsearchDomain(input *CreateElasticsearchDomainInput) (*CreateElasticsearchDomainOutput, error) { req, out := c.CreateElasticsearchDomainRequest(input) err := req.Send() return out, err } const opDeleteElasticsearchDomain = "DeleteElasticsearchDomain" // DeleteElasticsearchDomainRequest generates a "aws/request.Request" representing the // client's request for the DeleteElasticsearchDomain operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteElasticsearchDomain for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteElasticsearchDomain method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteElasticsearchDomainRequest method. // req, resp := client.DeleteElasticsearchDomainRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticsearchService) DeleteElasticsearchDomainRequest(input *DeleteElasticsearchDomainInput) (req *request.Request, output *DeleteElasticsearchDomainOutput) { op := &request.Operation{ Name: opDeleteElasticsearchDomain, HTTPMethod: "DELETE", HTTPPath: "/2015-01-01/es/domain/{DomainName}", } if input == nil { input = &DeleteElasticsearchDomainInput{} } req = c.newRequest(op, input, output) output = &DeleteElasticsearchDomainOutput{} req.Data = output return } // DeleteElasticsearchDomain API operation for Amazon Elasticsearch Service. // // Permanently deletes the specified Elasticsearch domain and all of its data. // Once a domain is deleted, it cannot be recovered. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elasticsearch Service's // API operation DeleteElasticsearchDomain for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // The request processing has failed because of an unknown error, exception // or failure (the failure is internal to the service) . Gives http status code // of 500. // // * ResourceNotFoundException // An exception for accessing or deleting a resource that does not exist. Gives // http status code of 400. // // * ValidationException // An exception for missing / invalid input fields. Gives http status code of // 400. // func (c *ElasticsearchService) DeleteElasticsearchDomain(input *DeleteElasticsearchDomainInput) (*DeleteElasticsearchDomainOutput, error) { req, out := c.DeleteElasticsearchDomainRequest(input) err := req.Send() return out, err } const opDescribeElasticsearchDomain = "DescribeElasticsearchDomain" // DescribeElasticsearchDomainRequest generates a "aws/request.Request" representing the // client's request for the DescribeElasticsearchDomain operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeElasticsearchDomain for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeElasticsearchDomain method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeElasticsearchDomainRequest method. // req, resp := client.DescribeElasticsearchDomainRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticsearchService) DescribeElasticsearchDomainRequest(input *DescribeElasticsearchDomainInput) (req *request.Request, output *DescribeElasticsearchDomainOutput) { op := &request.Operation{ Name: opDescribeElasticsearchDomain, HTTPMethod: "GET", HTTPPath: "/2015-01-01/es/domain/{DomainName}", } if input == nil { input = &DescribeElasticsearchDomainInput{} } req = c.newRequest(op, input, output) output = &DescribeElasticsearchDomainOutput{} req.Data = output return } // DescribeElasticsearchDomain API operation for Amazon Elasticsearch Service. // // Returns domain configuration information about the specified Elasticsearch // domain, including the domain ID, domain endpoint, and domain ARN. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elasticsearch Service's // API operation DescribeElasticsearchDomain for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // The request processing has failed because of an unknown error, exception // or failure (the failure is internal to the service) . Gives http status code // of 500. // // * ResourceNotFoundException // An exception for accessing or deleting a resource that does not exist. Gives // http status code of 400. // // * ValidationException // An exception for missing / invalid input fields. Gives http status code of // 400. // func (c *ElasticsearchService) DescribeElasticsearchDomain(input *DescribeElasticsearchDomainInput) (*DescribeElasticsearchDomainOutput, error) { req, out := c.DescribeElasticsearchDomainRequest(input) err := req.Send() return out, err } const opDescribeElasticsearchDomainConfig = "DescribeElasticsearchDomainConfig" // DescribeElasticsearchDomainConfigRequest generates a "aws/request.Request" representing the // client's request for the DescribeElasticsearchDomainConfig operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeElasticsearchDomainConfig for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeElasticsearchDomainConfig method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeElasticsearchDomainConfigRequest method. // req, resp := client.DescribeElasticsearchDomainConfigRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticsearchService) DescribeElasticsearchDomainConfigRequest(input *DescribeElasticsearchDomainConfigInput) (req *request.Request, output *DescribeElasticsearchDomainConfigOutput) { op := &request.Operation{ Name: opDescribeElasticsearchDomainConfig, HTTPMethod: "GET", HTTPPath: "/2015-01-01/es/domain/{DomainName}/config", } if input == nil { input = &DescribeElasticsearchDomainConfigInput{} } req = c.newRequest(op, input, output) output = &DescribeElasticsearchDomainConfigOutput{} req.Data = output return } // DescribeElasticsearchDomainConfig API operation for Amazon Elasticsearch Service. // // Provides cluster configuration information about the specified Elasticsearch // domain, such as the state, creation date, update version, and update date // for cluster options. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elasticsearch Service's // API operation DescribeElasticsearchDomainConfig for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // The request processing has failed because of an unknown error, exception // or failure (the failure is internal to the service) . Gives http status code // of 500. // // * ResourceNotFoundException // An exception for accessing or deleting a resource that does not exist. Gives // http status code of 400. // // * ValidationException // An exception for missing / invalid input fields. Gives http status code of // 400. // func (c *ElasticsearchService) DescribeElasticsearchDomainConfig(input *DescribeElasticsearchDomainConfigInput) (*DescribeElasticsearchDomainConfigOutput, error) { req, out := c.DescribeElasticsearchDomainConfigRequest(input) err := req.Send() return out, err } const opDescribeElasticsearchDomains = "DescribeElasticsearchDomains" // DescribeElasticsearchDomainsRequest generates a "aws/request.Request" representing the // client's request for the DescribeElasticsearchDomains operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeElasticsearchDomains for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeElasticsearchDomains method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeElasticsearchDomainsRequest method. // req, resp := client.DescribeElasticsearchDomainsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticsearchService) DescribeElasticsearchDomainsRequest(input *DescribeElasticsearchDomainsInput) (req *request.Request, output *DescribeElasticsearchDomainsOutput) { op := &request.Operation{ Name: opDescribeElasticsearchDomains, HTTPMethod: "POST", HTTPPath: "/2015-01-01/es/domain-info", } if input == nil { input = &DescribeElasticsearchDomainsInput{} } req = c.newRequest(op, input, output) output = &DescribeElasticsearchDomainsOutput{} req.Data = output return } // DescribeElasticsearchDomains API operation for Amazon Elasticsearch Service. // // Returns domain configuration information about the specified Elasticsearch // domains, including the domain ID, domain endpoint, and domain ARN. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elasticsearch Service's // API operation DescribeElasticsearchDomains for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // The request processing has failed because of an unknown error, exception // or failure (the failure is internal to the service) . Gives http status code // of 500. // // * ValidationException // An exception for missing / invalid input fields. Gives http status code of // 400. // func (c *ElasticsearchService) DescribeElasticsearchDomains(input *DescribeElasticsearchDomainsInput) (*DescribeElasticsearchDomainsOutput, error) { req, out := c.DescribeElasticsearchDomainsRequest(input) err := req.Send() return out, err } const opListDomainNames = "ListDomainNames" // ListDomainNamesRequest generates a "aws/request.Request" representing the // client's request for the ListDomainNames operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDomainNames for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDomainNames method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDomainNamesRequest method. // req, resp := client.ListDomainNamesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticsearchService) ListDomainNamesRequest(input *ListDomainNamesInput) (req *request.Request, output *ListDomainNamesOutput) { op := &request.Operation{ Name: opListDomainNames, HTTPMethod: "GET", HTTPPath: "/2015-01-01/domain", } if input == nil { input = &ListDomainNamesInput{} } req = c.newRequest(op, input, output) output = &ListDomainNamesOutput{} req.Data = output return } // ListDomainNames API operation for Amazon Elasticsearch Service. // // Returns the name of all Elasticsearch domains owned by the current user's // account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elasticsearch Service's // API operation ListDomainNames for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * ValidationException // An exception for missing / invalid input fields. Gives http status code of // 400. // func (c *ElasticsearchService) ListDomainNames(input *ListDomainNamesInput) (*ListDomainNamesOutput, error) { req, out := c.ListDomainNamesRequest(input) err := req.Send() return out, err } const opListTags = "ListTags" // ListTagsRequest generates a "aws/request.Request" representing the // client's request for the ListTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTagsRequest method. // req, resp := client.ListTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticsearchService) ListTagsRequest(input *ListTagsInput) (req *request.Request, output *ListTagsOutput) { op := &request.Operation{ Name: opListTags, HTTPMethod: "GET", HTTPPath: "/2015-01-01/tags/", } if input == nil { input = &ListTagsInput{} } req = c.newRequest(op, input, output) output = &ListTagsOutput{} req.Data = output return } // ListTags API operation for Amazon Elasticsearch Service. // // Returns all tags for the given Elasticsearch domain. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elasticsearch Service's // API operation ListTags for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * ResourceNotFoundException // An exception for accessing or deleting a resource that does not exist. Gives // http status code of 400. // // * ValidationException // An exception for missing / invalid input fields. Gives http status code of // 400. // // * InternalException // The request processing has failed because of an unknown error, exception // or failure (the failure is internal to the service) . Gives http status code // of 500. // func (c *ElasticsearchService) ListTags(input *ListTagsInput) (*ListTagsOutput, error) { req, out := c.ListTagsRequest(input) err := req.Send() return out, err } const opRemoveTags = "RemoveTags" // RemoveTagsRequest generates a "aws/request.Request" representing the // client's request for the RemoveTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveTagsRequest method. // req, resp := client.RemoveTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticsearchService) RemoveTagsRequest(input *RemoveTagsInput) (req *request.Request, output *RemoveTagsOutput) { op := &request.Operation{ Name: opRemoveTags, HTTPMethod: "POST", HTTPPath: "/2015-01-01/tags-removal", } if input == nil { input = &RemoveTagsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RemoveTagsOutput{} req.Data = output return } // RemoveTags API operation for Amazon Elasticsearch Service. // // Removes the specified set of tags from the specified Elasticsearch domain. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elasticsearch Service's // API operation RemoveTags for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * ValidationException // An exception for missing / invalid input fields. Gives http status code of // 400. // // * InternalException // The request processing has failed because of an unknown error, exception // or failure (the failure is internal to the service) . Gives http status code // of 500. // func (c *ElasticsearchService) RemoveTags(input *RemoveTagsInput) (*RemoveTagsOutput, error) { req, out := c.RemoveTagsRequest(input) err := req.Send() return out, err } const opUpdateElasticsearchDomainConfig = "UpdateElasticsearchDomainConfig" // UpdateElasticsearchDomainConfigRequest generates a "aws/request.Request" representing the // client's request for the UpdateElasticsearchDomainConfig operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateElasticsearchDomainConfig for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateElasticsearchDomainConfig method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateElasticsearchDomainConfigRequest method. // req, resp := client.UpdateElasticsearchDomainConfigRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticsearchService) UpdateElasticsearchDomainConfigRequest(input *UpdateElasticsearchDomainConfigInput) (req *request.Request, output *UpdateElasticsearchDomainConfigOutput) { op := &request.Operation{ Name: opUpdateElasticsearchDomainConfig, HTTPMethod: "POST", HTTPPath: "/2015-01-01/es/domain/{DomainName}/config", } if input == nil { input = &UpdateElasticsearchDomainConfigInput{} } req = c.newRequest(op, input, output) output = &UpdateElasticsearchDomainConfigOutput{} req.Data = output return } // UpdateElasticsearchDomainConfig API operation for Amazon Elasticsearch Service. // // Modifies the cluster configuration of the specified Elasticsearch domain, // setting as setting the instance type and the number of instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elasticsearch Service's // API operation UpdateElasticsearchDomainConfig for usage and error information. // // Returned Error Codes: // * BaseException // An error occurred while processing the request. // // * InternalException // The request processing has failed because of an unknown error, exception // or failure (the failure is internal to the service) . Gives http status code // of 500. // // * InvalidTypeException // An exception for trying to create or access sub-resource that is either invalid // or not supported. Gives http status code of 409. // // * LimitExceededException // An exception for trying to create more than allowed resources or sub-resources. // Gives http status code of 409. // // * ResourceNotFoundException // An exception for accessing or deleting a resource that does not exist. Gives // http status code of 400. // // * ValidationException // An exception for missing / invalid input fields. Gives http status code of // 400. // func (c *ElasticsearchService) UpdateElasticsearchDomainConfig(input *UpdateElasticsearchDomainConfigInput) (*UpdateElasticsearchDomainConfigOutput, error) { req, out := c.UpdateElasticsearchDomainConfigRequest(input) err := req.Send() return out, err } // The configured access rules for the domain's document and search endpoints, // and the current status of those rules. type AccessPoliciesStatus struct { _ struct{} `type:"structure"` // The access policy configured for the Elasticsearch domain. Access policies // may be resource-based, IP-based, or IAM-based. See Configuring Access Policies // (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-access-policies)for // more information. // // Options is a required field Options *string `type:"string" required:"true"` // The status of the access policy for the Elasticsearch domain. See OptionStatus // for the status information that's included. // // Status is a required field Status *OptionStatus `type:"structure" required:"true"` } // String returns the string representation func (s AccessPoliciesStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AccessPoliciesStatus) GoString() string { return s.String() } // Container for the parameters to the AddTags operation. Specify the tags that // you want to attach to the Elasticsearch domain. type AddTagsInput struct { _ struct{} `type:"structure"` // Specify the ARN for which you want to add the tags. // // ARN is a required field ARN *string `type:"string" required:"true"` // List of Tag that need to be added for the Elasticsearch domain. // // TagList is a required field TagList []*Tag `type:"list" required:"true"` } // String returns the string representation func (s AddTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsInput"} if s.ARN == nil { invalidParams.Add(request.NewErrParamRequired("ARN")) } if s.TagList == nil { invalidParams.Add(request.NewErrParamRequired("TagList")) } if s.TagList != nil { for i, v := range s.TagList { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TagList", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsOutput) GoString() string { return s.String() } // Status of the advanced options for the specified Elasticsearch domain. Currently, // the following advanced options are available: // // * Option to allow references to indices in an HTTP request body. Must // be false when configuring access to individual sub-resources. By default, // the value is true. See Configuration Advanced Options (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-advanced-options) // for more information. // * Option to specify the percentage of heap space that is allocated to // field data. By default, this setting is unbounded. // For more information, see Configuring Advanced Options (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-advanced-options). type AdvancedOptionsStatus struct { _ struct{} `type:"structure"` // Specifies the status of advanced options for the specified Elasticsearch // domain. // // Options is a required field Options map[string]*string `type:"map" required:"true"` // Specifies the status of OptionStatus for advanced options for the specified // Elasticsearch domain. // // Status is a required field Status *OptionStatus `type:"structure" required:"true"` } // String returns the string representation func (s AdvancedOptionsStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdvancedOptionsStatus) GoString() string { return s.String() } type CreateElasticsearchDomainInput struct { _ struct{} `type:"structure"` // IAM access policy as a JSON-formatted string. AccessPolicies *string `type:"string"` // Option to allow references to indices in an HTTP request body. Must be false // when configuring access to individual sub-resources. By default, the value // is true. See Configuration Advanced Options (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-advanced-options) // for more information. AdvancedOptions map[string]*string `type:"map"` // The name of the Elasticsearch domain that you are creating. Domain names // are unique across the domains owned by an account within an AWS region. Domain // names must start with a letter or number and can contain the following characters: // a-z (lowercase), 0-9, and - (hyphen). // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` // Options to enable, disable and specify the type and size of EBS storage volumes. EBSOptions *EBSOptions `type:"structure"` // Configuration options for an Elasticsearch domain. Specifies the instance // type and number of instances in the domain cluster. ElasticsearchClusterConfig *ElasticsearchClusterConfig `type:"structure"` // String of format X.Y to specify version for the Elasticsearch domain eg. // "1.5" or "2.3". For more information, see Creating Elasticsearch Domains // (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomains) // in the Amazon Elasticsearch Service Developer Guide. ElasticsearchVersion *string `type:"string"` // Option to set time, in UTC format, of the daily automated snapshot. Default // value is 0 hours. SnapshotOptions *SnapshotOptions `type:"structure"` } // String returns the string representation func (s CreateElasticsearchDomainInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateElasticsearchDomainInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateElasticsearchDomainInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateElasticsearchDomainInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a CreateElasticsearchDomain operation. Contains the status // of the newly created Elasticsearch domain. type CreateElasticsearchDomainOutput struct { _ struct{} `type:"structure"` // The status of the newly created Elasticsearch domain. DomainStatus *ElasticsearchDomainStatus `type:"structure"` } // String returns the string representation func (s CreateElasticsearchDomainOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateElasticsearchDomainOutput) GoString() string { return s.String() } // Container for the parameters to the DeleteElasticsearchDomain operation. // Specifies the name of the Elasticsearch domain that you want to delete. type DeleteElasticsearchDomainInput struct { _ struct{} `type:"structure"` // The name of the Elasticsearch domain that you want to permanently delete. // // DomainName is a required field DomainName *string `location:"uri" locationName:"DomainName" min:"3" type:"string" required:"true"` } // String returns the string representation func (s DeleteElasticsearchDomainInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteElasticsearchDomainInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteElasticsearchDomainInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteElasticsearchDomainInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DeleteElasticsearchDomain request. Contains the status of // the pending deletion, or no status if the domain and all of its resources // have been deleted. type DeleteElasticsearchDomainOutput struct { _ struct{} `type:"structure"` // The status of the Elasticsearch domain being deleted. DomainStatus *ElasticsearchDomainStatus `type:"structure"` } // String returns the string representation func (s DeleteElasticsearchDomainOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteElasticsearchDomainOutput) GoString() string { return s.String() } // Container for the parameters to the DescribeElasticsearchDomainConfig operation. // Specifies the domain name for which you want configuration information. type DescribeElasticsearchDomainConfigInput struct { _ struct{} `type:"structure"` // The Elasticsearch domain that you want to get information about. // // DomainName is a required field DomainName *string `location:"uri" locationName:"DomainName" min:"3" type:"string" required:"true"` } // String returns the string representation func (s DescribeElasticsearchDomainConfigInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeElasticsearchDomainConfigInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeElasticsearchDomainConfigInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeElasticsearchDomainConfigInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DescribeElasticsearchDomainConfig request. Contains the configuration // information of the requested domain. type DescribeElasticsearchDomainConfigOutput struct { _ struct{} `type:"structure"` // The configuration information of the domain requested in the DescribeElasticsearchDomainConfig // request. // // DomainConfig is a required field DomainConfig *ElasticsearchDomainConfig `type:"structure" required:"true"` } // String returns the string representation func (s DescribeElasticsearchDomainConfigOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeElasticsearchDomainConfigOutput) GoString() string { return s.String() } // Container for the parameters to the DescribeElasticsearchDomain operation. type DescribeElasticsearchDomainInput struct { _ struct{} `type:"structure"` // The name of the Elasticsearch domain for which you want information. // // DomainName is a required field DomainName *string `location:"uri" locationName:"DomainName" min:"3" type:"string" required:"true"` } // String returns the string representation func (s DescribeElasticsearchDomainInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeElasticsearchDomainInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeElasticsearchDomainInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeElasticsearchDomainInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DescribeElasticsearchDomain request. Contains the status // of the domain specified in the request. type DescribeElasticsearchDomainOutput struct { _ struct{} `type:"structure"` // The current status of the Elasticsearch domain. // // DomainStatus is a required field DomainStatus *ElasticsearchDomainStatus `type:"structure" required:"true"` } // String returns the string representation func (s DescribeElasticsearchDomainOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeElasticsearchDomainOutput) GoString() string { return s.String() } // Container for the parameters to the DescribeElasticsearchDomains operation. // By default, the API returns the status of all Elasticsearch domains. type DescribeElasticsearchDomainsInput struct { _ struct{} `type:"structure"` // The Elasticsearch domains for which you want information. // // DomainNames is a required field DomainNames []*string `type:"list" required:"true"` } // String returns the string representation func (s DescribeElasticsearchDomainsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeElasticsearchDomainsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeElasticsearchDomainsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeElasticsearchDomainsInput"} if s.DomainNames == nil { invalidParams.Add(request.NewErrParamRequired("DomainNames")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a DescribeElasticsearchDomains request. Contains the status // of the specified domains or all domains owned by the account. type DescribeElasticsearchDomainsOutput struct { _ struct{} `type:"structure"` // The status of the domains requested in the DescribeElasticsearchDomains request. // // DomainStatusList is a required field DomainStatusList []*ElasticsearchDomainStatus `type:"list" required:"true"` } // String returns the string representation func (s DescribeElasticsearchDomainsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeElasticsearchDomainsOutput) GoString() string { return s.String() } type DomainInfo struct { _ struct{} `type:"structure"` // Specifies the DomainName. DomainName *string `min:"3" type:"string"` } // String returns the string representation func (s DomainInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DomainInfo) GoString() string { return s.String() } // Options to enable, disable, and specify the properties of EBS storage volumes. // For more information, see Configuring EBS-based Storage (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-ebs). type EBSOptions struct { _ struct{} `type:"structure"` // Specifies whether EBS-based storage is enabled. EBSEnabled *bool `type:"boolean"` // Specifies the IOPD for a Provisioned IOPS EBS volume (SSD). Iops *int64 `type:"integer"` // Integer to specify the size of an EBS volume. VolumeSize *int64 `type:"integer"` // Specifies the volume type for EBS-based storage. VolumeType *string `type:"string" enum:"VolumeType"` } // String returns the string representation func (s EBSOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EBSOptions) GoString() string { return s.String() } // Status of the EBS options for the specified Elasticsearch domain. type EBSOptionsStatus struct { _ struct{} `type:"structure"` // Specifies the EBS options for the specified Elasticsearch domain. // // Options is a required field Options *EBSOptions `type:"structure" required:"true"` // Specifies the status of the EBS options for the specified Elasticsearch domain. // // Status is a required field Status *OptionStatus `type:"structure" required:"true"` } // String returns the string representation func (s EBSOptionsStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EBSOptionsStatus) GoString() string { return s.String() } // Specifies the configuration for the domain cluster, such as the type and // number of instances. type ElasticsearchClusterConfig struct { _ struct{} `type:"structure"` // Total number of dedicated master nodes, active and on standby, for the cluster. DedicatedMasterCount *int64 `type:"integer"` // A boolean value to indicate whether a dedicated master node is enabled. See // About Dedicated Master Nodes (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-managedomains.html#es-managedomains-dedicatedmasternodes) // for more information. DedicatedMasterEnabled *bool `type:"boolean"` // The instance type for a dedicated master node. DedicatedMasterType *string `type:"string" enum:"ESPartitionInstanceType"` // The number of instances in the specified domain cluster. InstanceCount *int64 `type:"integer"` // The instance type for an Elasticsearch cluster. InstanceType *string `type:"string" enum:"ESPartitionInstanceType"` // A boolean value to indicate whether zone awareness is enabled. See About // Zone Awareness (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-managedomains.html#es-managedomains-zoneawareness) // for more information. ZoneAwarenessEnabled *bool `type:"boolean"` } // String returns the string representation func (s ElasticsearchClusterConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ElasticsearchClusterConfig) GoString() string { return s.String() } // Specifies the configuration status for the specified Elasticsearch domain. type ElasticsearchClusterConfigStatus struct { _ struct{} `type:"structure"` // Specifies the cluster configuration for the specified Elasticsearch domain. // // Options is a required field Options *ElasticsearchClusterConfig `type:"structure" required:"true"` // Specifies the status of the configuration for the specified Elasticsearch // domain. // // Status is a required field Status *OptionStatus `type:"structure" required:"true"` } // String returns the string representation func (s ElasticsearchClusterConfigStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ElasticsearchClusterConfigStatus) GoString() string { return s.String() } // The configuration of an Elasticsearch domain. type ElasticsearchDomainConfig struct { _ struct{} `type:"structure"` // IAM access policy as a JSON-formatted string. AccessPolicies *AccessPoliciesStatus `type:"structure"` // Specifies the AdvancedOptions for the domain. See Configuring Advanced Options // (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-advanced-options) // for more information. AdvancedOptions *AdvancedOptionsStatus `type:"structure"` // Specifies the EBSOptions for the Elasticsearch domain. EBSOptions *EBSOptionsStatus `type:"structure"` // Specifies the ElasticsearchClusterConfig for the Elasticsearch domain. ElasticsearchClusterConfig *ElasticsearchClusterConfigStatus `type:"structure"` // String of format X.Y to specify version for the Elasticsearch domain. ElasticsearchVersion *ElasticsearchVersionStatus `type:"structure"` // Specifies the SnapshotOptions for the Elasticsearch domain. SnapshotOptions *SnapshotOptionsStatus `type:"structure"` } // String returns the string representation func (s ElasticsearchDomainConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ElasticsearchDomainConfig) GoString() string { return s.String() } // The current status of an Elasticsearch domain. type ElasticsearchDomainStatus struct { _ struct{} `type:"structure"` // The Amazon resource name (ARN) of an Elasticsearch domain. See Identifiers // for IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/index.html?Using_Identifiers.html) // in Using AWS Identity and Access Management for more information. // // ARN is a required field ARN *string `type:"string" required:"true"` // IAM access policy as a JSON-formatted string. AccessPolicies *string `type:"string"` // Specifies the status of the AdvancedOptions AdvancedOptions map[string]*string `type:"map"` // The domain creation status. True if the creation of an Elasticsearch domain // is complete. False if domain creation is still in progress. Created *bool `type:"boolean"` // The domain deletion status. True if a delete request has been received for // the domain but resource cleanup is still in progress. False if the domain // has not been deleted. Once domain deletion is complete, the status of the // domain is no longer returned. Deleted *bool `type:"boolean"` // The unique identifier for the specified Elasticsearch domain. // // DomainId is a required field DomainId *string `min:"1" type:"string" required:"true"` // The name of an Elasticsearch domain. Domain names are unique across the domains // owned by an account within an AWS region. Domain names start with a letter // or number and can contain the following characters: a-z (lowercase), 0-9, // and - (hyphen). // // DomainName is a required field DomainName *string `min:"3" type:"string" required:"true"` // The EBSOptions for the specified domain. See Configuring EBS-based Storage // (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-ebs) // for more information. EBSOptions *EBSOptions `type:"structure"` // The type and number of instances in the domain cluster. // // ElasticsearchClusterConfig is a required field ElasticsearchClusterConfig *ElasticsearchClusterConfig `type:"structure" required:"true"` ElasticsearchVersion *string `type:"string"` // The Elasticsearch domain endpoint that you use to submit index and search // requests. Endpoint *string `type:"string"` // The status of the Elasticsearch domain configuration. True if Amazon Elasticsearch // Service is processing configuration changes. False if the configuration is // active. Processing *bool `type:"boolean"` // Specifies the status of the SnapshotOptions SnapshotOptions *SnapshotOptions `type:"structure"` } // String returns the string representation func (s ElasticsearchDomainStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ElasticsearchDomainStatus) GoString() string { return s.String() } // Status of the Elasticsearch version options for the specified Elasticsearch // domain. type ElasticsearchVersionStatus struct { _ struct{} `type:"structure"` // Specifies the Elasticsearch version for the specified Elasticsearch domain. // // Options is a required field Options *string `type:"string" required:"true"` // Specifies the status of the Elasticsearch version options for the specified // Elasticsearch domain. // // Status is a required field Status *OptionStatus `type:"structure" required:"true"` } // String returns the string representation func (s ElasticsearchVersionStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ElasticsearchVersionStatus) GoString() string { return s.String() } type ListDomainNamesInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ListDomainNamesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDomainNamesInput) GoString() string { return s.String() } // The result of a ListDomainNames operation. Contains the names of all Elasticsearch // domains owned by this account. type ListDomainNamesOutput struct { _ struct{} `type:"structure"` // List of Elasticsearch domain names. DomainNames []*DomainInfo `type:"list"` } // String returns the string representation func (s ListDomainNamesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDomainNamesOutput) GoString() string { return s.String() } // Container for the parameters to the ListTags operation. Specify the ARN for // the Elasticsearch domain to which the tags are attached that you want to // view are attached. type ListTagsInput struct { _ struct{} `type:"structure"` // Specify the ARN for the Elasticsearch domain to which the tags are attached // that you want to view. // // ARN is a required field ARN *string `location:"querystring" locationName:"arn" type:"string" required:"true"` } // String returns the string representation func (s ListTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsInput"} if s.ARN == nil { invalidParams.Add(request.NewErrParamRequired("ARN")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of a ListTags operation. Contains tags for all requested Elasticsearch // domains. type ListTagsOutput struct { _ struct{} `type:"structure"` // List of Tag for the requested Elasticsearch domain. TagList []*Tag `type:"list"` } // String returns the string representation func (s ListTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsOutput) GoString() string { return s.String() } // Provides the current status of the entity. type OptionStatus struct { _ struct{} `type:"structure"` // Timestamp which tells the creation date for the entity. // // CreationDate is a required field CreationDate *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` // Indicates whether the Elasticsearch domain is being deleted. PendingDeletion *bool `type:"boolean"` // Provides the OptionState for the Elasticsearch domain. // // State is a required field State *string `type:"string" required:"true" enum:"OptionState"` // Timestamp which tells the last updated time for the entity. // // UpdateDate is a required field UpdateDate *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` // Specifies the latest version for the entity. UpdateVersion *int64 `type:"integer"` } // String returns the string representation func (s OptionStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OptionStatus) GoString() string { return s.String() } // Container for the parameters to the RemoveTags operation. Specify the ARN // for the Elasticsearch domain from which you want to remove the specified // TagKey. type RemoveTagsInput struct { _ struct{} `type:"structure"` // Specifies the ARN for the Elasticsearch domain from which you want to delete // the specified tags. // // ARN is a required field ARN *string `type:"string" required:"true"` // Specifies the TagKey list which you want to remove from the Elasticsearch // domain. // // TagKeys is a required field TagKeys []*string `type:"list" required:"true"` } // String returns the string representation func (s RemoveTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTagsInput"} if s.ARN == nil { invalidParams.Add(request.NewErrParamRequired("ARN")) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemoveTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsOutput) GoString() string { return s.String() } // Specifies the time, in UTC format, when the service takes a daily automated // snapshot of the specified Elasticsearch domain. Default value is 0 hours. type SnapshotOptions struct { _ struct{} `type:"structure"` // Specifies the time, in UTC format, when the service takes a daily automated // snapshot of the specified Elasticsearch domain. Default value is 0 hours. AutomatedSnapshotStartHour *int64 `type:"integer"` } // String returns the string representation func (s SnapshotOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SnapshotOptions) GoString() string { return s.String() } // Status of a daily automated snapshot. type SnapshotOptionsStatus struct { _ struct{} `type:"structure"` // Specifies the daily snapshot options specified for the Elasticsearch domain. // // Options is a required field Options *SnapshotOptions `type:"structure" required:"true"` // Specifies the status of a daily automated snapshot. // // Status is a required field Status *OptionStatus `type:"structure" required:"true"` } // String returns the string representation func (s SnapshotOptionsStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SnapshotOptionsStatus) GoString() string { return s.String() } // Specifies a key value pair for a resource tag. type Tag struct { _ struct{} `type:"structure"` // Specifies the TagKey, the name of the tag. Tag keys must be unique for the // Elasticsearch domain to which they are attached. // // Key is a required field Key *string `min:"1" type:"string" required:"true"` // Specifies the TagValue, the value assigned to the corresponding tag key. // Tag values can be null and do not have to be unique in a tag set. For example, // you can have a key value pair in a tag set of project : Trinity and cost-center // : Trinity // // Value is a required field Value *string `type:"string" required:"true"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for the parameters to the UpdateElasticsearchDomain operation. // Specifies the type and number of instances in the domain cluster. type UpdateElasticsearchDomainConfigInput struct { _ struct{} `type:"structure"` // IAM access policy as a JSON-formatted string. AccessPolicies *string `type:"string"` // Modifies the advanced option to allow references to indices in an HTTP request // body. Must be false when configuring access to individual sub-resources. // By default, the value is true. See Configuration Advanced Options (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-advanced-options) // for more information. AdvancedOptions map[string]*string `type:"map"` // The name of the Elasticsearch domain that you are updating. // // DomainName is a required field DomainName *string `location:"uri" locationName:"DomainName" min:"3" type:"string" required:"true"` // Specify the type and size of the EBS volume that you want to use. EBSOptions *EBSOptions `type:"structure"` // The type and number of instances to instantiate for the domain cluster. ElasticsearchClusterConfig *ElasticsearchClusterConfig `type:"structure"` // Option to set the time, in UTC format, for the daily automated snapshot. // Default value is 0 hours. SnapshotOptions *SnapshotOptions `type:"structure"` } // String returns the string representation func (s UpdateElasticsearchDomainConfigInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateElasticsearchDomainConfigInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateElasticsearchDomainConfigInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateElasticsearchDomainConfigInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of an UpdateElasticsearchDomain request. Contains the status of // the Elasticsearch domain being updated. type UpdateElasticsearchDomainConfigOutput struct { _ struct{} `type:"structure"` // The status of the updated Elasticsearch domain. // // DomainConfig is a required field DomainConfig *ElasticsearchDomainConfig `type:"structure" required:"true"` } // String returns the string representation func (s UpdateElasticsearchDomainConfigOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateElasticsearchDomainConfigOutput) GoString() string { return s.String() } const ( // ESPartitionInstanceTypeM3MediumElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeM3MediumElasticsearch = "m3.medium.elasticsearch" // ESPartitionInstanceTypeM3LargeElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeM3LargeElasticsearch = "m3.large.elasticsearch" // ESPartitionInstanceTypeM3XlargeElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeM3XlargeElasticsearch = "m3.xlarge.elasticsearch" // ESPartitionInstanceTypeM32xlargeElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeM32xlargeElasticsearch = "m3.2xlarge.elasticsearch" // ESPartitionInstanceTypeM4LargeElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeM4LargeElasticsearch = "m4.large.elasticsearch" // ESPartitionInstanceTypeM4XlargeElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeM4XlargeElasticsearch = "m4.xlarge.elasticsearch" // ESPartitionInstanceTypeM42xlargeElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeM42xlargeElasticsearch = "m4.2xlarge.elasticsearch" // ESPartitionInstanceTypeM44xlargeElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeM44xlargeElasticsearch = "m4.4xlarge.elasticsearch" // ESPartitionInstanceTypeM410xlargeElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeM410xlargeElasticsearch = "m4.10xlarge.elasticsearch" // ESPartitionInstanceTypeT2MicroElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeT2MicroElasticsearch = "t2.micro.elasticsearch" // ESPartitionInstanceTypeT2SmallElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeT2SmallElasticsearch = "t2.small.elasticsearch" // ESPartitionInstanceTypeT2MediumElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeT2MediumElasticsearch = "t2.medium.elasticsearch" // ESPartitionInstanceTypeR3LargeElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeR3LargeElasticsearch = "r3.large.elasticsearch" // ESPartitionInstanceTypeR3XlargeElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeR3XlargeElasticsearch = "r3.xlarge.elasticsearch" // ESPartitionInstanceTypeR32xlargeElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeR32xlargeElasticsearch = "r3.2xlarge.elasticsearch" // ESPartitionInstanceTypeR34xlargeElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeR34xlargeElasticsearch = "r3.4xlarge.elasticsearch" // ESPartitionInstanceTypeR38xlargeElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeR38xlargeElasticsearch = "r3.8xlarge.elasticsearch" // ESPartitionInstanceTypeI2XlargeElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeI2XlargeElasticsearch = "i2.xlarge.elasticsearch" // ESPartitionInstanceTypeI22xlargeElasticsearch is a ESPartitionInstanceType enum value ESPartitionInstanceTypeI22xlargeElasticsearch = "i2.2xlarge.elasticsearch" ) // The state of a requested change. One of the following: // // * Processing: The request change is still in-process. // * Active: The request change is processed and deployed to the Elasticsearch // domain. const ( // OptionStateRequiresIndexDocuments is a OptionState enum value OptionStateRequiresIndexDocuments = "RequiresIndexDocuments" // OptionStateProcessing is a OptionState enum value OptionStateProcessing = "Processing" // OptionStateActive is a OptionState enum value OptionStateActive = "Active" ) // The type of EBS volume, standard, gp2, or io1. See Configuring EBS-based // Storage (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-ebs)for // more information. const ( // VolumeTypeStandard is a VolumeType enum value VolumeTypeStandard = "standard" // VolumeTypeGp2 is a VolumeType enum value VolumeTypeGp2 = "gp2" // VolumeTypeIo1 is a VolumeType enum value VolumeTypeIo1 = "io1" ) aws-sdk-go-1.4.22/service/elasticsearchservice/elasticsearchserviceiface/000077500000000000000000000000001300374646400266015ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/elasticsearchservice/elasticsearchserviceiface/interface.go000066400000000000000000000122061300374646400310710ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package elasticsearchserviceiface provides an interface to enable mocking the Amazon Elasticsearch Service service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package elasticsearchserviceiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/elasticsearchservice" ) // ElasticsearchServiceAPI provides an interface to enable mocking the // elasticsearchservice.ElasticsearchService service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Elasticsearch Service. // func myFunc(svc elasticsearchserviceiface.ElasticsearchServiceAPI) bool { // // Make svc.AddTags request // } // // func main() { // sess := session.New() // svc := elasticsearchservice.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockElasticsearchServiceClient struct { // elasticsearchserviceiface.ElasticsearchServiceAPI // } // func (m *mockElasticsearchServiceClient) AddTags(input *elasticsearchservice.AddTagsInput) (*elasticsearchservice.AddTagsOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockElasticsearchServiceClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type ElasticsearchServiceAPI interface { AddTagsRequest(*elasticsearchservice.AddTagsInput) (*request.Request, *elasticsearchservice.AddTagsOutput) AddTags(*elasticsearchservice.AddTagsInput) (*elasticsearchservice.AddTagsOutput, error) CreateElasticsearchDomainRequest(*elasticsearchservice.CreateElasticsearchDomainInput) (*request.Request, *elasticsearchservice.CreateElasticsearchDomainOutput) CreateElasticsearchDomain(*elasticsearchservice.CreateElasticsearchDomainInput) (*elasticsearchservice.CreateElasticsearchDomainOutput, error) DeleteElasticsearchDomainRequest(*elasticsearchservice.DeleteElasticsearchDomainInput) (*request.Request, *elasticsearchservice.DeleteElasticsearchDomainOutput) DeleteElasticsearchDomain(*elasticsearchservice.DeleteElasticsearchDomainInput) (*elasticsearchservice.DeleteElasticsearchDomainOutput, error) DescribeElasticsearchDomainRequest(*elasticsearchservice.DescribeElasticsearchDomainInput) (*request.Request, *elasticsearchservice.DescribeElasticsearchDomainOutput) DescribeElasticsearchDomain(*elasticsearchservice.DescribeElasticsearchDomainInput) (*elasticsearchservice.DescribeElasticsearchDomainOutput, error) DescribeElasticsearchDomainConfigRequest(*elasticsearchservice.DescribeElasticsearchDomainConfigInput) (*request.Request, *elasticsearchservice.DescribeElasticsearchDomainConfigOutput) DescribeElasticsearchDomainConfig(*elasticsearchservice.DescribeElasticsearchDomainConfigInput) (*elasticsearchservice.DescribeElasticsearchDomainConfigOutput, error) DescribeElasticsearchDomainsRequest(*elasticsearchservice.DescribeElasticsearchDomainsInput) (*request.Request, *elasticsearchservice.DescribeElasticsearchDomainsOutput) DescribeElasticsearchDomains(*elasticsearchservice.DescribeElasticsearchDomainsInput) (*elasticsearchservice.DescribeElasticsearchDomainsOutput, error) ListDomainNamesRequest(*elasticsearchservice.ListDomainNamesInput) (*request.Request, *elasticsearchservice.ListDomainNamesOutput) ListDomainNames(*elasticsearchservice.ListDomainNamesInput) (*elasticsearchservice.ListDomainNamesOutput, error) ListTagsRequest(*elasticsearchservice.ListTagsInput) (*request.Request, *elasticsearchservice.ListTagsOutput) ListTags(*elasticsearchservice.ListTagsInput) (*elasticsearchservice.ListTagsOutput, error) RemoveTagsRequest(*elasticsearchservice.RemoveTagsInput) (*request.Request, *elasticsearchservice.RemoveTagsOutput) RemoveTags(*elasticsearchservice.RemoveTagsInput) (*elasticsearchservice.RemoveTagsOutput, error) UpdateElasticsearchDomainConfigRequest(*elasticsearchservice.UpdateElasticsearchDomainConfigInput) (*request.Request, *elasticsearchservice.UpdateElasticsearchDomainConfigOutput) UpdateElasticsearchDomainConfig(*elasticsearchservice.UpdateElasticsearchDomainConfigInput) (*elasticsearchservice.UpdateElasticsearchDomainConfigOutput, error) } var _ ElasticsearchServiceAPI = (*elasticsearchservice.ElasticsearchService)(nil) aws-sdk-go-1.4.22/service/elasticsearchservice/examples_test.go000066400000000000000000000177311300374646400246330ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package elasticsearchservice_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/elasticsearchservice" ) var _ time.Duration var _ bytes.Buffer func ExampleElasticsearchService_AddTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticsearchservice.New(sess) params := &elasticsearchservice.AddTagsInput{ ARN: aws.String("ARN"), // Required TagList: []*elasticsearchservice.Tag{ // Required { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), // Required }, // More values... }, } resp, err := svc.AddTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticsearchService_CreateElasticsearchDomain() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticsearchservice.New(sess) params := &elasticsearchservice.CreateElasticsearchDomainInput{ DomainName: aws.String("DomainName"), // Required AccessPolicies: aws.String("PolicyDocument"), AdvancedOptions: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, EBSOptions: &elasticsearchservice.EBSOptions{ EBSEnabled: aws.Bool(true), Iops: aws.Int64(1), VolumeSize: aws.Int64(1), VolumeType: aws.String("VolumeType"), }, ElasticsearchClusterConfig: &elasticsearchservice.ElasticsearchClusterConfig{ DedicatedMasterCount: aws.Int64(1), DedicatedMasterEnabled: aws.Bool(true), DedicatedMasterType: aws.String("ESPartitionInstanceType"), InstanceCount: aws.Int64(1), InstanceType: aws.String("ESPartitionInstanceType"), ZoneAwarenessEnabled: aws.Bool(true), }, ElasticsearchVersion: aws.String("ElasticsearchVersionString"), SnapshotOptions: &elasticsearchservice.SnapshotOptions{ AutomatedSnapshotStartHour: aws.Int64(1), }, } resp, err := svc.CreateElasticsearchDomain(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticsearchService_DeleteElasticsearchDomain() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticsearchservice.New(sess) params := &elasticsearchservice.DeleteElasticsearchDomainInput{ DomainName: aws.String("DomainName"), // Required } resp, err := svc.DeleteElasticsearchDomain(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticsearchService_DescribeElasticsearchDomain() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticsearchservice.New(sess) params := &elasticsearchservice.DescribeElasticsearchDomainInput{ DomainName: aws.String("DomainName"), // Required } resp, err := svc.DescribeElasticsearchDomain(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticsearchService_DescribeElasticsearchDomainConfig() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticsearchservice.New(sess) params := &elasticsearchservice.DescribeElasticsearchDomainConfigInput{ DomainName: aws.String("DomainName"), // Required } resp, err := svc.DescribeElasticsearchDomainConfig(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticsearchService_DescribeElasticsearchDomains() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticsearchservice.New(sess) params := &elasticsearchservice.DescribeElasticsearchDomainsInput{ DomainNames: []*string{ // Required aws.String("DomainName"), // Required // More values... }, } resp, err := svc.DescribeElasticsearchDomains(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticsearchService_ListDomainNames() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticsearchservice.New(sess) var params *elasticsearchservice.ListDomainNamesInput resp, err := svc.ListDomainNames(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticsearchService_ListTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticsearchservice.New(sess) params := &elasticsearchservice.ListTagsInput{ ARN: aws.String("ARN"), // Required } resp, err := svc.ListTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticsearchService_RemoveTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticsearchservice.New(sess) params := &elasticsearchservice.RemoveTagsInput{ ARN: aws.String("ARN"), // Required TagKeys: []*string{ // Required aws.String("String"), // Required // More values... }, } resp, err := svc.RemoveTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticsearchService_UpdateElasticsearchDomainConfig() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elasticsearchservice.New(sess) params := &elasticsearchservice.UpdateElasticsearchDomainConfigInput{ DomainName: aws.String("DomainName"), // Required AccessPolicies: aws.String("PolicyDocument"), AdvancedOptions: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, EBSOptions: &elasticsearchservice.EBSOptions{ EBSEnabled: aws.Bool(true), Iops: aws.Int64(1), VolumeSize: aws.Int64(1), VolumeType: aws.String("VolumeType"), }, ElasticsearchClusterConfig: &elasticsearchservice.ElasticsearchClusterConfig{ DedicatedMasterCount: aws.Int64(1), DedicatedMasterEnabled: aws.Bool(true), DedicatedMasterType: aws.String("ESPartitionInstanceType"), InstanceCount: aws.Int64(1), InstanceType: aws.String("ESPartitionInstanceType"), ZoneAwarenessEnabled: aws.Bool(true), }, SnapshotOptions: &elasticsearchservice.SnapshotOptions{ AutomatedSnapshotStartHour: aws.Int64(1), }, } resp, err := svc.UpdateElasticsearchDomainConfig(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/elasticsearchservice/service.go000066400000000000000000000062361300374646400234140ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package elasticsearchservice import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) // Use the Amazon Elasticsearch configuration API to create, configure, and // manage Elasticsearch domains. // // The endpoint for configuration service requests is region-specific: es.region.amazonaws.com. // For example, es.us-east-1.amazonaws.com. For a current list of supported // regions and endpoints, see Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html#elasticsearch-service-regions). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type ElasticsearchService struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "es" // New creates a new instance of the ElasticsearchService client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a ElasticsearchService client from just a session. // svc := elasticsearchservice.New(mySession) // // // Create a ElasticsearchService client with additional configuration // svc := elasticsearchservice.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *ElasticsearchService { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *ElasticsearchService { svc := &ElasticsearchService{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-01-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a ElasticsearchService operation and runs any // custom request initialization. func (c *ElasticsearchService) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/elastictranscoder/000077500000000000000000000000001300374646400207345ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/elastictranscoder/api.go000066400000000000000000006574571300374646400220640ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package elastictranscoder provides a client for Amazon Elastic Transcoder. package elastictranscoder import ( "fmt" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opCancelJob = "CancelJob" // CancelJobRequest generates a "aws/request.Request" representing the // client's request for the CancelJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CancelJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CancelJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CancelJobRequest method. // req, resp := client.CancelJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticTranscoder) CancelJobRequest(input *CancelJobInput) (req *request.Request, output *CancelJobOutput) { op := &request.Operation{ Name: opCancelJob, HTTPMethod: "DELETE", HTTPPath: "/2012-09-25/jobs/{Id}", } if input == nil { input = &CancelJobInput{} } req = c.newRequest(op, input, output) output = &CancelJobOutput{} req.Data = output return } // CancelJob API operation for Amazon Elastic Transcoder. // // The CancelJob operation cancels an unfinished job. // // You can only cancel a job that has a status of Submitted. To prevent a pipeline // from starting to process a job while you're getting the job identifier, use // UpdatePipelineStatus to temporarily pause the pipeline. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Transcoder's // API operation CancelJob for usage and error information. // // Returned Error Codes: // * ValidationException // One or more required parameter values were not provided in the request. // // * IncompatibleVersionException // // * ResourceNotFoundException // The requested resource does not exist or is not available. For example, the // pipeline to which you're trying to add a job doesn't exist or is still being // created. // // * ResourceInUseException // The resource you are attempting to change is in use. For example, you are // attempting to delete a pipeline that is currently in use. // // * AccessDeniedException // General authentication failure. The request was not signed correctly. // // * InternalServiceException // Elastic Transcoder encountered an unexpected exception while trying to fulfill // the request. // func (c *ElasticTranscoder) CancelJob(input *CancelJobInput) (*CancelJobOutput, error) { req, out := c.CancelJobRequest(input) err := req.Send() return out, err } const opCreateJob = "CreateJob" // CreateJobRequest generates a "aws/request.Request" representing the // client's request for the CreateJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateJobRequest method. // req, resp := client.CreateJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticTranscoder) CreateJobRequest(input *CreateJobInput) (req *request.Request, output *CreateJobResponse) { op := &request.Operation{ Name: opCreateJob, HTTPMethod: "POST", HTTPPath: "/2012-09-25/jobs", } if input == nil { input = &CreateJobInput{} } req = c.newRequest(op, input, output) output = &CreateJobResponse{} req.Data = output return } // CreateJob API operation for Amazon Elastic Transcoder. // // When you create a job, Elastic Transcoder returns JSON data that includes // the values that you specified plus information about the job that is created. // // If you have specified more than one output for your jobs (for example, one // output for the Kindle Fire and another output for the Apple iPhone 4s), you // currently must use the Elastic Transcoder API to list the jobs (as opposed // to the AWS Console). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Transcoder's // API operation CreateJob for usage and error information. // // Returned Error Codes: // * ValidationException // One or more required parameter values were not provided in the request. // // * IncompatibleVersionException // // * ResourceNotFoundException // The requested resource does not exist or is not available. For example, the // pipeline to which you're trying to add a job doesn't exist or is still being // created. // // * AccessDeniedException // General authentication failure. The request was not signed correctly. // // * LimitExceededException // Too many operations for a given AWS account. For example, the number of pipelines // exceeds the maximum allowed. // // * InternalServiceException // Elastic Transcoder encountered an unexpected exception while trying to fulfill // the request. // func (c *ElasticTranscoder) CreateJob(input *CreateJobInput) (*CreateJobResponse, error) { req, out := c.CreateJobRequest(input) err := req.Send() return out, err } const opCreatePipeline = "CreatePipeline" // CreatePipelineRequest generates a "aws/request.Request" representing the // client's request for the CreatePipeline operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreatePipeline for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreatePipeline method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreatePipelineRequest method. // req, resp := client.CreatePipelineRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticTranscoder) CreatePipelineRequest(input *CreatePipelineInput) (req *request.Request, output *CreatePipelineOutput) { op := &request.Operation{ Name: opCreatePipeline, HTTPMethod: "POST", HTTPPath: "/2012-09-25/pipelines", } if input == nil { input = &CreatePipelineInput{} } req = c.newRequest(op, input, output) output = &CreatePipelineOutput{} req.Data = output return } // CreatePipeline API operation for Amazon Elastic Transcoder. // // The CreatePipeline operation creates a pipeline with settings that you specify. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Transcoder's // API operation CreatePipeline for usage and error information. // // Returned Error Codes: // * ValidationException // One or more required parameter values were not provided in the request. // // * IncompatibleVersionException // // * AccessDeniedException // General authentication failure. The request was not signed correctly. // // * ResourceNotFoundException // The requested resource does not exist or is not available. For example, the // pipeline to which you're trying to add a job doesn't exist or is still being // created. // // * LimitExceededException // Too many operations for a given AWS account. For example, the number of pipelines // exceeds the maximum allowed. // // * InternalServiceException // Elastic Transcoder encountered an unexpected exception while trying to fulfill // the request. // func (c *ElasticTranscoder) CreatePipeline(input *CreatePipelineInput) (*CreatePipelineOutput, error) { req, out := c.CreatePipelineRequest(input) err := req.Send() return out, err } const opCreatePreset = "CreatePreset" // CreatePresetRequest generates a "aws/request.Request" representing the // client's request for the CreatePreset operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreatePreset for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreatePreset method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreatePresetRequest method. // req, resp := client.CreatePresetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticTranscoder) CreatePresetRequest(input *CreatePresetInput) (req *request.Request, output *CreatePresetOutput) { op := &request.Operation{ Name: opCreatePreset, HTTPMethod: "POST", HTTPPath: "/2012-09-25/presets", } if input == nil { input = &CreatePresetInput{} } req = c.newRequest(op, input, output) output = &CreatePresetOutput{} req.Data = output return } // CreatePreset API operation for Amazon Elastic Transcoder. // // The CreatePreset operation creates a preset with settings that you specify. // // Elastic Transcoder checks the CreatePreset settings to ensure that they meet // Elastic Transcoder requirements and to determine whether they comply with // H.264 standards. If your settings are not valid for Elastic Transcoder, Elastic // Transcoder returns an HTTP 400 response (ValidationException) and does not // create the preset. If the settings are valid for Elastic Transcoder but aren't // strictly compliant with the H.264 standard, Elastic Transcoder creates the // preset and returns a warning message in the response. This helps you determine // whether your settings comply with the H.264 standard while giving you greater // flexibility with respect to the video that Elastic Transcoder produces.Elastic Transcoder uses the H.264 video-compression format. For more information, // see the International Telecommunication Union publication Recommendation // ITU-T H.264: Advanced video coding for generic audiovisual services. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Transcoder's // API operation CreatePreset for usage and error information. // // Returned Error Codes: // * ValidationException // One or more required parameter values were not provided in the request. // // * IncompatibleVersionException // // * AccessDeniedException // General authentication failure. The request was not signed correctly. // // * LimitExceededException // Too many operations for a given AWS account. For example, the number of pipelines // exceeds the maximum allowed. // // * InternalServiceException // Elastic Transcoder encountered an unexpected exception while trying to fulfill // the request. // func (c *ElasticTranscoder) CreatePreset(input *CreatePresetInput) (*CreatePresetOutput, error) { req, out := c.CreatePresetRequest(input) err := req.Send() return out, err } const opDeletePipeline = "DeletePipeline" // DeletePipelineRequest generates a "aws/request.Request" representing the // client's request for the DeletePipeline operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeletePipeline for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeletePipeline method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeletePipelineRequest method. // req, resp := client.DeletePipelineRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticTranscoder) DeletePipelineRequest(input *DeletePipelineInput) (req *request.Request, output *DeletePipelineOutput) { op := &request.Operation{ Name: opDeletePipeline, HTTPMethod: "DELETE", HTTPPath: "/2012-09-25/pipelines/{Id}", } if input == nil { input = &DeletePipelineInput{} } req = c.newRequest(op, input, output) output = &DeletePipelineOutput{} req.Data = output return } // DeletePipeline API operation for Amazon Elastic Transcoder. // // The DeletePipeline operation removes a pipeline. // // You can only delete a pipeline that has never been used or that is not currently // in use (doesn't contain any active jobs). If the pipeline is currently in // use, DeletePipeline returns an error. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Transcoder's // API operation DeletePipeline for usage and error information. // // Returned Error Codes: // * ValidationException // One or more required parameter values were not provided in the request. // // * IncompatibleVersionException // // * ResourceNotFoundException // The requested resource does not exist or is not available. For example, the // pipeline to which you're trying to add a job doesn't exist or is still being // created. // // * ResourceInUseException // The resource you are attempting to change is in use. For example, you are // attempting to delete a pipeline that is currently in use. // // * AccessDeniedException // General authentication failure. The request was not signed correctly. // // * InternalServiceException // Elastic Transcoder encountered an unexpected exception while trying to fulfill // the request. // func (c *ElasticTranscoder) DeletePipeline(input *DeletePipelineInput) (*DeletePipelineOutput, error) { req, out := c.DeletePipelineRequest(input) err := req.Send() return out, err } const opDeletePreset = "DeletePreset" // DeletePresetRequest generates a "aws/request.Request" representing the // client's request for the DeletePreset operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeletePreset for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeletePreset method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeletePresetRequest method. // req, resp := client.DeletePresetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticTranscoder) DeletePresetRequest(input *DeletePresetInput) (req *request.Request, output *DeletePresetOutput) { op := &request.Operation{ Name: opDeletePreset, HTTPMethod: "DELETE", HTTPPath: "/2012-09-25/presets/{Id}", } if input == nil { input = &DeletePresetInput{} } req = c.newRequest(op, input, output) output = &DeletePresetOutput{} req.Data = output return } // DeletePreset API operation for Amazon Elastic Transcoder. // // The DeletePreset operation removes a preset that you've added in an AWS region. // // You can't delete the default presets that are included with Elastic Transcoder. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Transcoder's // API operation DeletePreset for usage and error information. // // Returned Error Codes: // * ValidationException // One or more required parameter values were not provided in the request. // // * IncompatibleVersionException // // * ResourceNotFoundException // The requested resource does not exist or is not available. For example, the // pipeline to which you're trying to add a job doesn't exist or is still being // created. // // * AccessDeniedException // General authentication failure. The request was not signed correctly. // // * InternalServiceException // Elastic Transcoder encountered an unexpected exception while trying to fulfill // the request. // func (c *ElasticTranscoder) DeletePreset(input *DeletePresetInput) (*DeletePresetOutput, error) { req, out := c.DeletePresetRequest(input) err := req.Send() return out, err } const opListJobsByPipeline = "ListJobsByPipeline" // ListJobsByPipelineRequest generates a "aws/request.Request" representing the // client's request for the ListJobsByPipeline operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListJobsByPipeline for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListJobsByPipeline method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListJobsByPipelineRequest method. // req, resp := client.ListJobsByPipelineRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticTranscoder) ListJobsByPipelineRequest(input *ListJobsByPipelineInput) (req *request.Request, output *ListJobsByPipelineOutput) { op := &request.Operation{ Name: opListJobsByPipeline, HTTPMethod: "GET", HTTPPath: "/2012-09-25/jobsByPipeline/{PipelineId}", Paginator: &request.Paginator{ InputTokens: []string{"PageToken"}, OutputTokens: []string{"NextPageToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListJobsByPipelineInput{} } req = c.newRequest(op, input, output) output = &ListJobsByPipelineOutput{} req.Data = output return } // ListJobsByPipeline API operation for Amazon Elastic Transcoder. // // The ListJobsByPipeline operation gets a list of the jobs currently in a pipeline. // // Elastic Transcoder returns all of the jobs currently in the specified pipeline. // The response body contains one element for each job that satisfies the search // criteria. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Transcoder's // API operation ListJobsByPipeline for usage and error information. // // Returned Error Codes: // * ValidationException // One or more required parameter values were not provided in the request. // // * IncompatibleVersionException // // * ResourceNotFoundException // The requested resource does not exist or is not available. For example, the // pipeline to which you're trying to add a job doesn't exist or is still being // created. // // * AccessDeniedException // General authentication failure. The request was not signed correctly. // // * InternalServiceException // Elastic Transcoder encountered an unexpected exception while trying to fulfill // the request. // func (c *ElasticTranscoder) ListJobsByPipeline(input *ListJobsByPipelineInput) (*ListJobsByPipelineOutput, error) { req, out := c.ListJobsByPipelineRequest(input) err := req.Send() return out, err } // ListJobsByPipelinePages iterates over the pages of a ListJobsByPipeline operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListJobsByPipeline method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListJobsByPipeline operation. // pageNum := 0 // err := client.ListJobsByPipelinePages(params, // func(page *ListJobsByPipelineOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ElasticTranscoder) ListJobsByPipelinePages(input *ListJobsByPipelineInput, fn func(p *ListJobsByPipelineOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListJobsByPipelineRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListJobsByPipelineOutput), lastPage) }) } const opListJobsByStatus = "ListJobsByStatus" // ListJobsByStatusRequest generates a "aws/request.Request" representing the // client's request for the ListJobsByStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListJobsByStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListJobsByStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListJobsByStatusRequest method. // req, resp := client.ListJobsByStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticTranscoder) ListJobsByStatusRequest(input *ListJobsByStatusInput) (req *request.Request, output *ListJobsByStatusOutput) { op := &request.Operation{ Name: opListJobsByStatus, HTTPMethod: "GET", HTTPPath: "/2012-09-25/jobsByStatus/{Status}", Paginator: &request.Paginator{ InputTokens: []string{"PageToken"}, OutputTokens: []string{"NextPageToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListJobsByStatusInput{} } req = c.newRequest(op, input, output) output = &ListJobsByStatusOutput{} req.Data = output return } // ListJobsByStatus API operation for Amazon Elastic Transcoder. // // The ListJobsByStatus operation gets a list of jobs that have a specified // status. The response body contains one element for each job that satisfies // the search criteria. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Transcoder's // API operation ListJobsByStatus for usage and error information. // // Returned Error Codes: // * ValidationException // One or more required parameter values were not provided in the request. // // * IncompatibleVersionException // // * ResourceNotFoundException // The requested resource does not exist or is not available. For example, the // pipeline to which you're trying to add a job doesn't exist or is still being // created. // // * AccessDeniedException // General authentication failure. The request was not signed correctly. // // * InternalServiceException // Elastic Transcoder encountered an unexpected exception while trying to fulfill // the request. // func (c *ElasticTranscoder) ListJobsByStatus(input *ListJobsByStatusInput) (*ListJobsByStatusOutput, error) { req, out := c.ListJobsByStatusRequest(input) err := req.Send() return out, err } // ListJobsByStatusPages iterates over the pages of a ListJobsByStatus operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListJobsByStatus method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListJobsByStatus operation. // pageNum := 0 // err := client.ListJobsByStatusPages(params, // func(page *ListJobsByStatusOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ElasticTranscoder) ListJobsByStatusPages(input *ListJobsByStatusInput, fn func(p *ListJobsByStatusOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListJobsByStatusRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListJobsByStatusOutput), lastPage) }) } const opListPipelines = "ListPipelines" // ListPipelinesRequest generates a "aws/request.Request" representing the // client's request for the ListPipelines operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListPipelines for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListPipelines method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListPipelinesRequest method. // req, resp := client.ListPipelinesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticTranscoder) ListPipelinesRequest(input *ListPipelinesInput) (req *request.Request, output *ListPipelinesOutput) { op := &request.Operation{ Name: opListPipelines, HTTPMethod: "GET", HTTPPath: "/2012-09-25/pipelines", Paginator: &request.Paginator{ InputTokens: []string{"PageToken"}, OutputTokens: []string{"NextPageToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListPipelinesInput{} } req = c.newRequest(op, input, output) output = &ListPipelinesOutput{} req.Data = output return } // ListPipelines API operation for Amazon Elastic Transcoder. // // The ListPipelines operation gets a list of the pipelines associated with // the current AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Transcoder's // API operation ListPipelines for usage and error information. // // Returned Error Codes: // * ValidationException // One or more required parameter values were not provided in the request. // // * IncompatibleVersionException // // * AccessDeniedException // General authentication failure. The request was not signed correctly. // // * InternalServiceException // Elastic Transcoder encountered an unexpected exception while trying to fulfill // the request. // func (c *ElasticTranscoder) ListPipelines(input *ListPipelinesInput) (*ListPipelinesOutput, error) { req, out := c.ListPipelinesRequest(input) err := req.Send() return out, err } // ListPipelinesPages iterates over the pages of a ListPipelines operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListPipelines method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListPipelines operation. // pageNum := 0 // err := client.ListPipelinesPages(params, // func(page *ListPipelinesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ElasticTranscoder) ListPipelinesPages(input *ListPipelinesInput, fn func(p *ListPipelinesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListPipelinesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListPipelinesOutput), lastPage) }) } const opListPresets = "ListPresets" // ListPresetsRequest generates a "aws/request.Request" representing the // client's request for the ListPresets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListPresets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListPresets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListPresetsRequest method. // req, resp := client.ListPresetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticTranscoder) ListPresetsRequest(input *ListPresetsInput) (req *request.Request, output *ListPresetsOutput) { op := &request.Operation{ Name: opListPresets, HTTPMethod: "GET", HTTPPath: "/2012-09-25/presets", Paginator: &request.Paginator{ InputTokens: []string{"PageToken"}, OutputTokens: []string{"NextPageToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListPresetsInput{} } req = c.newRequest(op, input, output) output = &ListPresetsOutput{} req.Data = output return } // ListPresets API operation for Amazon Elastic Transcoder. // // The ListPresets operation gets a list of the default presets included with // Elastic Transcoder and the presets that you've added in an AWS region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Transcoder's // API operation ListPresets for usage and error information. // // Returned Error Codes: // * ValidationException // One or more required parameter values were not provided in the request. // // * IncompatibleVersionException // // * AccessDeniedException // General authentication failure. The request was not signed correctly. // // * InternalServiceException // Elastic Transcoder encountered an unexpected exception while trying to fulfill // the request. // func (c *ElasticTranscoder) ListPresets(input *ListPresetsInput) (*ListPresetsOutput, error) { req, out := c.ListPresetsRequest(input) err := req.Send() return out, err } // ListPresetsPages iterates over the pages of a ListPresets operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListPresets method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListPresets operation. // pageNum := 0 // err := client.ListPresetsPages(params, // func(page *ListPresetsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ElasticTranscoder) ListPresetsPages(input *ListPresetsInput, fn func(p *ListPresetsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListPresetsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListPresetsOutput), lastPage) }) } const opReadJob = "ReadJob" // ReadJobRequest generates a "aws/request.Request" representing the // client's request for the ReadJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ReadJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ReadJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ReadJobRequest method. // req, resp := client.ReadJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticTranscoder) ReadJobRequest(input *ReadJobInput) (req *request.Request, output *ReadJobOutput) { op := &request.Operation{ Name: opReadJob, HTTPMethod: "GET", HTTPPath: "/2012-09-25/jobs/{Id}", } if input == nil { input = &ReadJobInput{} } req = c.newRequest(op, input, output) output = &ReadJobOutput{} req.Data = output return } // ReadJob API operation for Amazon Elastic Transcoder. // // The ReadJob operation returns detailed information about a job. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Transcoder's // API operation ReadJob for usage and error information. // // Returned Error Codes: // * ValidationException // One or more required parameter values were not provided in the request. // // * IncompatibleVersionException // // * ResourceNotFoundException // The requested resource does not exist or is not available. For example, the // pipeline to which you're trying to add a job doesn't exist or is still being // created. // // * AccessDeniedException // General authentication failure. The request was not signed correctly. // // * InternalServiceException // Elastic Transcoder encountered an unexpected exception while trying to fulfill // the request. // func (c *ElasticTranscoder) ReadJob(input *ReadJobInput) (*ReadJobOutput, error) { req, out := c.ReadJobRequest(input) err := req.Send() return out, err } const opReadPipeline = "ReadPipeline" // ReadPipelineRequest generates a "aws/request.Request" representing the // client's request for the ReadPipeline operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ReadPipeline for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ReadPipeline method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ReadPipelineRequest method. // req, resp := client.ReadPipelineRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticTranscoder) ReadPipelineRequest(input *ReadPipelineInput) (req *request.Request, output *ReadPipelineOutput) { op := &request.Operation{ Name: opReadPipeline, HTTPMethod: "GET", HTTPPath: "/2012-09-25/pipelines/{Id}", } if input == nil { input = &ReadPipelineInput{} } req = c.newRequest(op, input, output) output = &ReadPipelineOutput{} req.Data = output return } // ReadPipeline API operation for Amazon Elastic Transcoder. // // The ReadPipeline operation gets detailed information about a pipeline. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Transcoder's // API operation ReadPipeline for usage and error information. // // Returned Error Codes: // * ValidationException // One or more required parameter values were not provided in the request. // // * IncompatibleVersionException // // * ResourceNotFoundException // The requested resource does not exist or is not available. For example, the // pipeline to which you're trying to add a job doesn't exist or is still being // created. // // * AccessDeniedException // General authentication failure. The request was not signed correctly. // // * InternalServiceException // Elastic Transcoder encountered an unexpected exception while trying to fulfill // the request. // func (c *ElasticTranscoder) ReadPipeline(input *ReadPipelineInput) (*ReadPipelineOutput, error) { req, out := c.ReadPipelineRequest(input) err := req.Send() return out, err } const opReadPreset = "ReadPreset" // ReadPresetRequest generates a "aws/request.Request" representing the // client's request for the ReadPreset operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ReadPreset for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ReadPreset method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ReadPresetRequest method. // req, resp := client.ReadPresetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticTranscoder) ReadPresetRequest(input *ReadPresetInput) (req *request.Request, output *ReadPresetOutput) { op := &request.Operation{ Name: opReadPreset, HTTPMethod: "GET", HTTPPath: "/2012-09-25/presets/{Id}", } if input == nil { input = &ReadPresetInput{} } req = c.newRequest(op, input, output) output = &ReadPresetOutput{} req.Data = output return } // ReadPreset API operation for Amazon Elastic Transcoder. // // The ReadPreset operation gets detailed information about a preset. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Transcoder's // API operation ReadPreset for usage and error information. // // Returned Error Codes: // * ValidationException // One or more required parameter values were not provided in the request. // // * IncompatibleVersionException // // * ResourceNotFoundException // The requested resource does not exist or is not available. For example, the // pipeline to which you're trying to add a job doesn't exist or is still being // created. // // * AccessDeniedException // General authentication failure. The request was not signed correctly. // // * InternalServiceException // Elastic Transcoder encountered an unexpected exception while trying to fulfill // the request. // func (c *ElasticTranscoder) ReadPreset(input *ReadPresetInput) (*ReadPresetOutput, error) { req, out := c.ReadPresetRequest(input) err := req.Send() return out, err } const opTestRole = "TestRole" // TestRoleRequest generates a "aws/request.Request" representing the // client's request for the TestRole operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See TestRole for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the TestRole method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the TestRoleRequest method. // req, resp := client.TestRoleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticTranscoder) TestRoleRequest(input *TestRoleInput) (req *request.Request, output *TestRoleOutput) { op := &request.Operation{ Name: opTestRole, HTTPMethod: "POST", HTTPPath: "/2012-09-25/roleTests", } if input == nil { input = &TestRoleInput{} } req = c.newRequest(op, input, output) output = &TestRoleOutput{} req.Data = output return } // TestRole API operation for Amazon Elastic Transcoder. // // The TestRole operation tests the IAM role used to create the pipeline. // // The TestRole action lets you determine whether the IAM role you are using // has sufficient permissions to let Elastic Transcoder perform tasks associated // with the transcoding process. The action attempts to assume the specified // IAM role, checks read access to the input and output buckets, and tries to // send a test notification to Amazon SNS topics that you specify. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Transcoder's // API operation TestRole for usage and error information. // // Returned Error Codes: // * ValidationException // One or more required parameter values were not provided in the request. // // * IncompatibleVersionException // // * ResourceNotFoundException // The requested resource does not exist or is not available. For example, the // pipeline to which you're trying to add a job doesn't exist or is still being // created. // // * AccessDeniedException // General authentication failure. The request was not signed correctly. // // * InternalServiceException // Elastic Transcoder encountered an unexpected exception while trying to fulfill // the request. // func (c *ElasticTranscoder) TestRole(input *TestRoleInput) (*TestRoleOutput, error) { req, out := c.TestRoleRequest(input) err := req.Send() return out, err } const opUpdatePipeline = "UpdatePipeline" // UpdatePipelineRequest generates a "aws/request.Request" representing the // client's request for the UpdatePipeline operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdatePipeline for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdatePipeline method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdatePipelineRequest method. // req, resp := client.UpdatePipelineRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticTranscoder) UpdatePipelineRequest(input *UpdatePipelineInput) (req *request.Request, output *UpdatePipelineOutput) { op := &request.Operation{ Name: opUpdatePipeline, HTTPMethod: "PUT", HTTPPath: "/2012-09-25/pipelines/{Id}", } if input == nil { input = &UpdatePipelineInput{} } req = c.newRequest(op, input, output) output = &UpdatePipelineOutput{} req.Data = output return } // UpdatePipeline API operation for Amazon Elastic Transcoder. // // Use the UpdatePipeline operation to update settings for a pipeline. When // you change pipeline settings, your changes take effect immediately. Jobs // that you have already submitted and that Elastic Transcoder has not started // to process are affected in addition to jobs that you submit after you change // settings. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Transcoder's // API operation UpdatePipeline for usage and error information. // // Returned Error Codes: // * ValidationException // One or more required parameter values were not provided in the request. // // * IncompatibleVersionException // // * AccessDeniedException // General authentication failure. The request was not signed correctly. // // * ResourceInUseException // The resource you are attempting to change is in use. For example, you are // attempting to delete a pipeline that is currently in use. // // * ResourceNotFoundException // The requested resource does not exist or is not available. For example, the // pipeline to which you're trying to add a job doesn't exist or is still being // created. // // * InternalServiceException // Elastic Transcoder encountered an unexpected exception while trying to fulfill // the request. // func (c *ElasticTranscoder) UpdatePipeline(input *UpdatePipelineInput) (*UpdatePipelineOutput, error) { req, out := c.UpdatePipelineRequest(input) err := req.Send() return out, err } const opUpdatePipelineNotifications = "UpdatePipelineNotifications" // UpdatePipelineNotificationsRequest generates a "aws/request.Request" representing the // client's request for the UpdatePipelineNotifications operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdatePipelineNotifications for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdatePipelineNotifications method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdatePipelineNotificationsRequest method. // req, resp := client.UpdatePipelineNotificationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticTranscoder) UpdatePipelineNotificationsRequest(input *UpdatePipelineNotificationsInput) (req *request.Request, output *UpdatePipelineNotificationsOutput) { op := &request.Operation{ Name: opUpdatePipelineNotifications, HTTPMethod: "POST", HTTPPath: "/2012-09-25/pipelines/{Id}/notifications", } if input == nil { input = &UpdatePipelineNotificationsInput{} } req = c.newRequest(op, input, output) output = &UpdatePipelineNotificationsOutput{} req.Data = output return } // UpdatePipelineNotifications API operation for Amazon Elastic Transcoder. // // With the UpdatePipelineNotifications operation, you can update Amazon Simple // Notification Service (Amazon SNS) notifications for a pipeline. // // When you update notifications for a pipeline, Elastic Transcoder returns // the values that you specified in the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Transcoder's // API operation UpdatePipelineNotifications for usage and error information. // // Returned Error Codes: // * ValidationException // One or more required parameter values were not provided in the request. // // * IncompatibleVersionException // // * ResourceNotFoundException // The requested resource does not exist or is not available. For example, the // pipeline to which you're trying to add a job doesn't exist or is still being // created. // // * ResourceInUseException // The resource you are attempting to change is in use. For example, you are // attempting to delete a pipeline that is currently in use. // // * AccessDeniedException // General authentication failure. The request was not signed correctly. // // * InternalServiceException // Elastic Transcoder encountered an unexpected exception while trying to fulfill // the request. // func (c *ElasticTranscoder) UpdatePipelineNotifications(input *UpdatePipelineNotificationsInput) (*UpdatePipelineNotificationsOutput, error) { req, out := c.UpdatePipelineNotificationsRequest(input) err := req.Send() return out, err } const opUpdatePipelineStatus = "UpdatePipelineStatus" // UpdatePipelineStatusRequest generates a "aws/request.Request" representing the // client's request for the UpdatePipelineStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdatePipelineStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdatePipelineStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdatePipelineStatusRequest method. // req, resp := client.UpdatePipelineStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ElasticTranscoder) UpdatePipelineStatusRequest(input *UpdatePipelineStatusInput) (req *request.Request, output *UpdatePipelineStatusOutput) { op := &request.Operation{ Name: opUpdatePipelineStatus, HTTPMethod: "POST", HTTPPath: "/2012-09-25/pipelines/{Id}/status", } if input == nil { input = &UpdatePipelineStatusInput{} } req = c.newRequest(op, input, output) output = &UpdatePipelineStatusOutput{} req.Data = output return } // UpdatePipelineStatus API operation for Amazon Elastic Transcoder. // // The UpdatePipelineStatus operation pauses or reactivates a pipeline, so that // the pipeline stops or restarts the processing of jobs. // // Changing the pipeline status is useful if you want to cancel one or more // jobs. You can't cancel jobs after Elastic Transcoder has started processing // them; if you pause the pipeline to which you submitted the jobs, you have // more time to get the job IDs for the jobs that you want to cancel, and to // send a CancelJob request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Transcoder's // API operation UpdatePipelineStatus for usage and error information. // // Returned Error Codes: // * ValidationException // One or more required parameter values were not provided in the request. // // * IncompatibleVersionException // // * ResourceNotFoundException // The requested resource does not exist or is not available. For example, the // pipeline to which you're trying to add a job doesn't exist or is still being // created. // // * ResourceInUseException // The resource you are attempting to change is in use. For example, you are // attempting to delete a pipeline that is currently in use. // // * AccessDeniedException // General authentication failure. The request was not signed correctly. // // * InternalServiceException // Elastic Transcoder encountered an unexpected exception while trying to fulfill // the request. // func (c *ElasticTranscoder) UpdatePipelineStatus(input *UpdatePipelineStatusInput) (*UpdatePipelineStatusOutput, error) { req, out := c.UpdatePipelineStatusRequest(input) err := req.Send() return out, err } // The file to be used as album art. There can be multiple artworks associated // with an audio file, to a maximum of 20. // // To remove artwork or leave the artwork empty, you can either set Artwork // to null, or set the Merge Policy to "Replace" and use an empty Artwork array. // // To pass through existing artwork unchanged, set the Merge Policy to "Prepend", // "Append", or "Fallback", and use an empty Artwork array. type Artwork struct { _ struct{} `type:"structure"` // The format of album art, if any. Valid formats are .jpg and .png. AlbumArtFormat *string `type:"string"` // The encryption settings, if any, that you want Elastic Transcoder to apply // to your artwork. Encryption *Encryption `type:"structure"` // The name of the file to be used as album art. To determine which Amazon S3 // bucket contains the specified file, Elastic Transcoder checks the pipeline // specified by PipelineId; the InputBucket object in that pipeline identifies // the bucket. // // If the file name includes a prefix, for example, cooking/pie.jpg, include // the prefix in the key. If the file isn't in the specified bucket, Elastic // Transcoder returns an error. InputKey *string `min:"1" type:"string"` // The maximum height of the output album art in pixels. If you specify auto, // Elastic Transcoder uses 600 as the default value. If you specify a numeric // value, enter an even integer between 32 and 3072, inclusive. MaxHeight *string `type:"string"` // The maximum width of the output album art in pixels. If you specify auto, // Elastic Transcoder uses 600 as the default value. If you specify a numeric // value, enter an even integer between 32 and 4096, inclusive. MaxWidth *string `type:"string"` // When you set PaddingPolicy to Pad, Elastic Transcoder may add white bars // to the top and bottom and/or left and right sides of the output album art // to make the total size of the output art match the values that you specified // for MaxWidth and MaxHeight. PaddingPolicy *string `type:"string"` // Specify one of the following values to control scaling of the output album // art: // // Fit: Elastic Transcoder scales the output art so it matches the value that // you specified in either MaxWidth or MaxHeight without exceeding the other // value. // Fill: Elastic Transcoder scales the output art so it matches the value that // you specified in either MaxWidth or MaxHeight and matches or exceeds the // other value. Elastic Transcoder centers the output art and then crops it // in the dimension (if any) that exceeds the maximum value. // Stretch: Elastic Transcoder stretches the output art to match the values // that you specified for MaxWidth and MaxHeight. If the relative proportions // of the input art and the output art are different, the output art will be // distorted. // Keep: Elastic Transcoder does not scale the output art. If either dimension // of the input art exceeds the values that you specified for MaxWidth and MaxHeight, // Elastic Transcoder crops the output art. // ShrinkToFit: Elastic Transcoder scales the output art down so that its dimensions // match the values that you specified for at least one of MaxWidth and MaxHeight // without exceeding either value. If you specify this option, Elastic Transcoder // does not scale the art up. // ShrinkToFill Elastic Transcoder scales the output art down so that its dimensions // match the values that you specified for at least one of MaxWidth and MaxHeight // without dropping below either value. If you specify this option, Elastic // Transcoder does not scale the art up. SizingPolicy *string `type:"string"` } // String returns the string representation func (s Artwork) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Artwork) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Artwork) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Artwork"} if s.InputKey != nil && len(*s.InputKey) < 1 { invalidParams.Add(request.NewErrParamMinLen("InputKey", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Options associated with your audio codec. type AudioCodecOptions struct { _ struct{} `type:"structure"` // You can only choose an audio bit depth when you specify flac or pcm for the // value of Audio:Codec. // // The bit depth of a sample is how many bits of information are included in // the audio samples. The higher the bit depth, the better the audio, but the // larger the file. // // Valid values are 16 and 24. // // The most common bit depth is 24. BitDepth *string `type:"string"` // You can only choose an audio bit order when you specify pcm for the value // of Audio:Codec. // // The order the bits of a PCM sample are stored in. // // The supported value is LittleEndian. BitOrder *string `type:"string"` // You can only choose an audio profile when you specify AAC for the value of // Audio:Codec. // // Specify the AAC profile for the output file. Elastic Transcoder supports // the following profiles: // // * auto: If you specify auto, Elastic Transcoder will select the profile // based on the bit rate selected for the output file. // * AAC-LC: The most common AAC profile. Use for bit rates larger than 64 // kbps. // * HE-AAC: Not supported on some older players and devices. Use for bit // rates between 40 and 80 kbps. // * HE-AACv2: Not supported on some players and devices. Use for bit rates // less than 48 kbps. // All outputs in a Smooth playlist must have the same value for Profile. // // If you created any presets before AAC profiles were added, Elastic Transcoder // automatically updated your presets to use AAC-LC. You can change the value // as required. Profile *string `type:"string"` // You can only choose whether an audio sample is signed when you specify pcm // for the value of Audio:Codec. // // Whether audio samples are represented with negative and positive numbers // (signed) or only positive numbers (unsigned). // // The supported value is Signed. Signed *string `type:"string"` } // String returns the string representation func (s AudioCodecOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AudioCodecOptions) GoString() string { return s.String() } // Parameters required for transcoding audio. type AudioParameters struct { _ struct{} `type:"structure"` // The method of organizing audio channels and tracks. Use Audio:Channels to // specify the number of channels in your output, and Audio:AudioPackingMode // to specify the number of tracks and their relation to the channels. If you // do not specify an Audio:AudioPackingMode, Elastic Transcoder uses SingleTrack. // // The following values are valid: // // SingleTrack, OneChannelPerTrack, and OneChannelPerTrackWithMosTo8Tracks // // When you specify SingleTrack, Elastic Transcoder creates a single track for // your output. The track can have up to eight channels. Use SingleTrack for // all non-mxf containers. // // The outputs of SingleTrack for a specific channel value and inputs are as // follows: // // * 0 channels with any input: Audio omitted from the output // * 1, 2, or auto channels with no audio input: Audio omitted from the output // // * 1 channel with any input with audio: One track with one channel, downmixed // if necessary // * 2 channels with one track with one channel: One track with two identical // channels // * 2 or auto channels with two tracks with one channel each: One track // with two channels // * 2 or auto channels with one track with two channels: One track with // two channels // * 2 channels with one track with multiple channels: One track with two // channels // * auto channels with one track with one channel: One track with one channel // // * auto channels with one track with multiple channels: One track with // multiple channels // When you specify OneChannelPerTrack, Elastic Transcoder creates a new track // for every channel in your output. Your output can have up to eight single-channel // tracks. // // The outputs of OneChannelPerTrack for a specific channel value and inputs // are as follows: // // * 0 channels with any input: Audio omitted from the output // * 1, 2, or auto channels with no audio input: Audio omitted from the output // // * 1 channel with any input with audio: One track with one channel, downmixed // if necessary // * 2 channels with one track with one channel: Two tracks with one identical // channel each // * 2 or auto channels with two tracks with one channel each: Two tracks // with one channel each // * 2 or auto channels with one track with two channels: Two tracks with // one channel each // * 2 channels with one track with multiple channels: Two tracks with one // channel each // * auto channels with one track with one channel: One track with one channel // // * auto channels with one track with multiple channels: Up to eight tracks // with one channel each // When you specify OneChannelPerTrackWithMosTo8Tracks, Elastic Transcoder creates // eight single-channel tracks for your output. All tracks that do not contain // audio data from an input channel are MOS, or Mit Out Sound, tracks. // // The outputs of OneChannelPerTrackWithMosTo8Tracks for a specific channel // value and inputs are as follows: // // * 0 channels with any input: Audio omitted from the output // * 1, 2, or auto channels with no audio input: Audio omitted from the output // // * 1 channel with any input with audio: One track with one channel, downmixed // if necessary, plus six MOS tracks // * 2 channels with one track with one channel: Two tracks with one identical // channel each, plus six MOS tracks // * 2 or auto channels with two tracks with one channel each: Two tracks // with one channel each, plus six MOS tracks // * 2 or auto channels with one track with two channels: Two tracks with // one channel each, plus six MOS tracks // * 2 channels with one track with multiple channels: Two tracks with one // channel each, plus six MOS tracks // * auto channels with one track with one channel: One track with one channel, // plus seven MOS tracks // * auto channels with one track with multiple channels: Up to eight tracks // with one channel each, plus MOS tracks until there are eight tracks in // all AudioPackingMode *string `type:"string"` // The bit rate of the audio stream in the output file, in kilobits/second. // Enter an integer between 64 and 320, inclusive. BitRate *string `type:"string"` // The number of audio channels in the output file. The following values are // valid: // // auto, 0, 1, 2 // // One channel carries the information played by a single speaker. For example, // a stereo track with two channels sends one channel to the left speaker, and // the other channel to the right speaker. The output channels are organized // into tracks. If you want Elastic Transcoder to automatically detect the number // of audio channels in the input file and use that value for the output file, // select auto. // // The output of a specific channel value and inputs are as follows: // // * auto channel specified, with any input: Pass through up to eight input // channels. // * 0 channels specified, with any input: Audio omitted from the output. // // * 1 channel specified, with at least one input channel: Mono sound. // * 2 channels specified, with any input: Two identical mono channels or // stereo. For more information about tracks, see Audio:AudioPackingMode. // // For more information about how Elastic Transcoder organizes channels and // tracks, see Audio:AudioPackingMode. Channels *string `type:"string"` // The audio codec for the output file. Valid values include aac, flac, mp2, // mp3, pcm, and vorbis. Codec *string `type:"string"` // If you specified AAC for Audio:Codec, this is the AAC compression profile // to use. Valid values include: // // auto, AAC-LC, HE-AAC, HE-AACv2 // // If you specify auto, Elastic Transcoder chooses a profile based on the bit // rate of the output file. CodecOptions *AudioCodecOptions `type:"structure"` // The sample rate of the audio stream in the output file, in Hertz. Valid values // include: // // auto, 22050, 32000, 44100, 48000, 96000 // // If you specify auto, Elastic Transcoder automatically detects the sample // rate. SampleRate *string `type:"string"` } // String returns the string representation func (s AudioParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AudioParameters) GoString() string { return s.String() } // The CancelJobRequest structure. type CancelJobInput struct { _ struct{} `type:"structure"` // The identifier of the job that you want to cancel. // // To get a list of the jobs (including their jobId) that have a status of Submitted, // use the ListJobsByStatus API action. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s CancelJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CancelJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelJobInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response body contains a JSON object. If the job is successfully canceled, // the value of Success is true. type CancelJobOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CancelJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelJobOutput) GoString() string { return s.String() } // The file format of the output captions. If you leave this value blank, Elastic // Transcoder returns an error. type CaptionFormat struct { _ struct{} `type:"structure"` // The encryption settings, if any, that you want Elastic Transcoder to apply // to your caption formats. Encryption *Encryption `type:"structure"` // The format you specify determines whether Elastic Transcoder generates an // embedded or sidecar caption for this output. // // * Valid Embedded Caption Formats: // // for FLAC: None // // For MP3: None // // For MP4: mov-text // // For MPEG-TS: None // // For ogg: None // // For webm: None // // * Valid Sidecar Caption Formats: Elastic Transcoder supports dfxp (first // div element only), scc, srt, and webvtt. If you want ttml or smpte-tt // compatible captions, specify dfxp as your output format. // // For FMP4: dfxp // // Non-FMP4 outputs: All sidecar types // // fmp4 captions have an extension of .ismt Format *string `type:"string"` // The prefix for caption filenames, in the form description-{language}, where: // // * description is a description of the video. // * {language} is a literal value that Elastic Transcoder replaces with // the two- or three-letter code for the language of the caption in the output // file names. // If you don't include {language} in the file name pattern, Elastic Transcoder // automatically appends "{language}" to the value that you specify for the // description. In addition, Elastic Transcoder automatically appends the count // to the end of the segment files. // // For example, suppose you're transcoding into srt format. When you enter "Sydney-{language}-sunrise", // and the language of the captions is English (en), the name of the first caption // file will be Sydney-en-sunrise00000.srt. Pattern *string `type:"string"` } // String returns the string representation func (s CaptionFormat) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CaptionFormat) GoString() string { return s.String() } // A source file for the input sidecar captions used during the transcoding // process. type CaptionSource struct { _ struct{} `type:"structure"` // The encryption settings, if any, that you want Elastic Transcoder to apply // to your caption sources. Encryption *Encryption `type:"structure"` // The name of the sidecar caption file that you want Elastic Transcoder to // include in the output file. Key *string `min:"1" type:"string"` // The label of the caption shown in the player when choosing a language. We // recommend that you put the caption language name here, in the language of // the captions. Label *string `min:"1" type:"string"` // A string that specifies the language of the caption. Specify this as one // of: // // * 2-character ISO 639-1 code // // * 3-character ISO 639-2 code // // For more information on ISO language codes and language names, see the List // of ISO 639-1 codes. Language *string `min:"1" type:"string"` // For clip generation or captions that do not start at the same time as the // associated video file, the TimeOffset tells Elastic Transcoder how much of // the video to encode before including captions. // // Specify the TimeOffset in the form [+-]SS.sss or [+-]HH:mm:SS.ss. TimeOffset *string `type:"string"` } // String returns the string representation func (s CaptionSource) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CaptionSource) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CaptionSource) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CaptionSource"} if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Label != nil && len(*s.Label) < 1 { invalidParams.Add(request.NewErrParamMinLen("Label", 1)) } if s.Language != nil && len(*s.Language) < 1 { invalidParams.Add(request.NewErrParamMinLen("Language", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The captions to be created, if any. type Captions struct { _ struct{} `type:"structure"` // The array of file formats for the output captions. If you leave this value // blank, Elastic Transcoder returns an error. CaptionFormats []*CaptionFormat `type:"list"` // Source files for the input sidecar captions used during the transcoding process. // To omit all sidecar captions, leave CaptionSources blank. CaptionSources []*CaptionSource `type:"list"` // A policy that determines how Elastic Transcoder handles the existence of // multiple captions. // // * MergeOverride: Elastic Transcoder transcodes both embedded and sidecar // captions into outputs. If captions for a language are embedded in the // input file and also appear in a sidecar file, Elastic Transcoder uses // the sidecar captions and ignores the embedded captions for that language. // // * MergeRetain: Elastic Transcoder transcodes both embedded and sidecar // captions into outputs. If captions for a language are embedded in the // input file and also appear in a sidecar file, Elastic Transcoder uses // the embedded captions and ignores the sidecar captions for that language. // If CaptionSources is empty, Elastic Transcoder omits all sidecar captions // from the output files. // // * Override: Elastic Transcoder transcodes only the sidecar captions that // you specify in CaptionSources. // // MergePolicy cannot be null. MergePolicy *string `type:"string"` } // String returns the string representation func (s Captions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Captions) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Captions) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Captions"} if s.CaptionSources != nil { for i, v := range s.CaptionSources { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CaptionSources", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Settings for one clip in a composition. All jobs in a playlist must have // the same clip settings. type Clip struct { _ struct{} `type:"structure"` // Settings that determine when a clip begins and how long it lasts. TimeSpan *TimeSpan `type:"structure"` } // String returns the string representation func (s Clip) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Clip) GoString() string { return s.String() } // The CreateJobRequest structure. type CreateJobInput struct { _ struct{} `type:"structure"` // A section of the request body that provides information about the file that // is being transcoded. // // Input is a required field Input *JobInput `type:"structure" required:"true"` // The CreateJobOutput structure. Output *CreateJobOutput `type:"structure"` // The value, if any, that you want Elastic Transcoder to prepend to the names // of all files that this job creates, including output files, thumbnails, and // playlists. OutputKeyPrefix *string `min:"1" type:"string"` // A section of the request body that provides information about the transcoded // (target) files. We recommend that you use the Outputs syntax instead of the // Output syntax. Outputs []*CreateJobOutput `type:"list"` // The Id of the pipeline that you want Elastic Transcoder to use for transcoding. // The pipeline determines several settings, including the Amazon S3 bucket // from which Elastic Transcoder gets the files to transcode and the bucket // into which Elastic Transcoder puts the transcoded files. // // PipelineId is a required field PipelineId *string `type:"string" required:"true"` // If you specify a preset in PresetId for which the value of Container is fmp4 // (Fragmented MP4) or ts (MPEG-TS), Playlists contains information about the // master playlists that you want Elastic Transcoder to create. // // The maximum number of master playlists in a job is 30. Playlists []*CreateJobPlaylist `type:"list"` // User-defined metadata that you want to associate with an Elastic Transcoder // job. You specify metadata in key/value pairs, and you can add up to 10 key/value // pairs per job. Elastic Transcoder does not guarantee that key/value pairs // will be returned in the same order in which you specify them. UserMetadata map[string]*string `type:"map"` } // String returns the string representation func (s CreateJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateJobInput"} if s.Input == nil { invalidParams.Add(request.NewErrParamRequired("Input")) } if s.OutputKeyPrefix != nil && len(*s.OutputKeyPrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("OutputKeyPrefix", 1)) } if s.PipelineId == nil { invalidParams.Add(request.NewErrParamRequired("PipelineId")) } if s.Input != nil { if err := s.Input.Validate(); err != nil { invalidParams.AddNested("Input", err.(request.ErrInvalidParams)) } } if s.Output != nil { if err := s.Output.Validate(); err != nil { invalidParams.AddNested("Output", err.(request.ErrInvalidParams)) } } if s.Outputs != nil { for i, v := range s.Outputs { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Outputs", i), err.(request.ErrInvalidParams)) } } } if s.Playlists != nil { for i, v := range s.Playlists { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Playlists", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The CreateJobOutput structure. type CreateJobOutput struct { _ struct{} `type:"structure"` // Information about the album art that you want Elastic Transcoder to add to // the file during transcoding. You can specify up to twenty album artworks // for each output. Settings for each artwork must be defined in the job for // the current output. AlbumArt *JobAlbumArt `type:"structure"` // You can configure Elastic Transcoder to transcode captions, or subtitles, // from one format to another. All captions must be in UTF-8. Elastic Transcoder // supports two types of captions: // // * Embedded: Embedded captions are included in the same file as the audio // and video. Elastic Transcoder supports only one embedded caption per language, // to a maximum of 300 embedded captions per file. // // Valid input values include: CEA-608 (EIA-608, first non-empty channel only), // CEA-708 (EIA-708, first non-empty channel only), and mov-text // // Valid outputs include: mov-text // // Elastic Transcoder supports a maximum of one embedded format per output. // // * Sidecar: Sidecar captions are kept in a separate metadata file from // the audio and video data. Sidecar captions require a player that is capable // of understanding the relationship between the video file and the sidecar // file. Elastic Transcoder supports only one sidecar caption per language, // to a maximum of 20 sidecar captions per file. // // Valid input values include: dfxp (first div element only), ebu-tt, scc, smpt, // srt, ttml (first div element only), and webvtt // // Valid outputs include: dfxp (first div element only), scc, srt, and webvtt. // // If you want ttml or smpte-tt compatible captions, specify dfxp as your output // format. // // Elastic Transcoder does not support OCR (Optical Character Recognition), // does not accept pictures as a valid input for captions, and is not available // for audio-only transcoding. Elastic Transcoder does not preserve text formatting // (for example, italics) during the transcoding process. // // To remove captions or leave the captions empty, set Captions to null. To // pass through existing captions unchanged, set the MergePolicy to MergeRetain, // and pass in a null CaptionSources array. // // For more information on embedded files, see the Subtitles Wikipedia page. // // For more information on sidecar files, see the Extensible Metadata Platform // and Sidecar file Wikipedia pages. Captions *Captions `type:"structure"` // You can create an output file that contains an excerpt from the input file. // This excerpt, called a clip, can come from the beginning, middle, or end // of the file. The Composition object contains settings for the clips that // make up an output file. For the current release, you can only specify settings // for a single clip per output file. The Composition object cannot be null. Composition []*Clip `type:"list"` // You can specify encryption settings for any output files that you want to // use for a transcoding job. This includes the output file and any watermarks, // thumbnails, album art, or captions that you want to use. You must specify // encryption settings for each file individually. Encryption *Encryption `type:"structure"` // The name to assign to the transcoded file. Elastic Transcoder saves the file // in the Amazon S3 bucket specified by the OutputBucket object in the pipeline // that is specified by the pipeline ID. If a file with the specified name already // exists in the output bucket, the job fails. Key *string `min:"1" type:"string"` // The Id of the preset to use for this job. The preset determines the audio, // video, and thumbnail settings that Elastic Transcoder uses for transcoding. PresetId *string `type:"string"` // The number of degrees clockwise by which you want Elastic Transcoder to rotate // the output relative to the input. Enter one of the following values: auto, // 0, 90, 180, 270. The value auto generally works only if the file that you're // transcoding contains rotation metadata. Rotate *string `type:"string"` // (Outputs in Fragmented MP4 or MPEG-TS format only.If you specify a preset // in PresetId for which the value of Container is fmp4 (Fragmented MP4) or // ts (MPEG-TS), SegmentDuration is the target maximum duration of each segment // in seconds. For HLSv3 format playlists, each media segment is stored in a // separate .ts file. For HLSv4 and Smooth playlists, all media segments for // an output are stored in a single file. Each segment is approximately the // length of the SegmentDuration, though individual segments might be shorter // or longer. // // The range of valid values is 1 to 60 seconds. If the duration of the video // is not evenly divisible by SegmentDuration, the duration of the last segment // is the remainder of total length/SegmentDuration. // // Elastic Transcoder creates an output-specific playlist for each output HLS // output that you specify in OutputKeys. To add an output to the master playlist // for this job, include it in the OutputKeys of the associated playlist. SegmentDuration *string `type:"string"` // The encryption settings, if any, that you want Elastic Transcoder to apply // to your thumbnail. ThumbnailEncryption *Encryption `type:"structure"` // Whether you want Elastic Transcoder to create thumbnails for your videos // and, if so, how you want Elastic Transcoder to name the files. // // If you don't want Elastic Transcoder to create thumbnails, specify "". // // If you do want Elastic Transcoder to create thumbnails, specify the information // that you want to include in the file name for each thumbnail. You can specify // the following values in any sequence: // // * {count} (Required): If you want to create thumbnails, you must include // {count} in the ThumbnailPattern object. Wherever you specify {count}, // Elastic Transcoder adds a five-digit sequence number (beginning with 00001) // to thumbnail file names. The number indicates where a given thumbnail // appears in the sequence of thumbnails for a transcoded file. // // If you specify a literal value and/or {resolution} but you omit {count}, // Elastic Transcoder returns a validation error and does not create the // job. // * Literal values (Optional): You can specify literal values anywhere in // the ThumbnailPattern object. For example, you can include them as a file // name prefix or as a delimiter between {resolution} and {count}. // // * {resolution} (Optional): If you want Elastic Transcoder to include the // resolution in the file name, include {resolution} in the ThumbnailPattern // object. // // When creating thumbnails, Elastic Transcoder automatically saves the files // in the format (.jpg or .png) that appears in the preset that you specified // in the PresetID value of CreateJobOutput. Elastic Transcoder also appends // the applicable file name extension. ThumbnailPattern *string `type:"string"` // Information about the watermarks that you want Elastic Transcoder to add // to the video during transcoding. You can specify up to four watermarks for // each output. Settings for each watermark must be defined in the preset for // the current output. Watermarks []*JobWatermark `type:"list"` } // String returns the string representation func (s CreateJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateJobOutput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateJobOutput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateJobOutput"} if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.AlbumArt != nil { if err := s.AlbumArt.Validate(); err != nil { invalidParams.AddNested("AlbumArt", err.(request.ErrInvalidParams)) } } if s.Captions != nil { if err := s.Captions.Validate(); err != nil { invalidParams.AddNested("Captions", err.(request.ErrInvalidParams)) } } if s.Watermarks != nil { for i, v := range s.Watermarks { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Watermarks", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Information about the master playlist. type CreateJobPlaylist struct { _ struct{} `type:"structure"` // The format of the output playlist. Valid formats include HLSv3, HLSv4, and // Smooth. Format *string `type:"string"` // The HLS content protection settings, if any, that you want Elastic Transcoder // to apply to the output files associated with this playlist. HlsContentProtection *HlsContentProtection `type:"structure"` // The name that you want Elastic Transcoder to assign to the master playlist, // for example, nyc-vacation.m3u8. If the name includes a / character, the section // of the name before the last / must be identical for all Name objects. If // you create more than one master playlist, the values of all Name objects // must be unique. // // Note: Elastic Transcoder automatically appends the relevant file extension // to the file name (.m3u8 for HLSv3 and HLSv4 playlists, and .ism and .ismc // for Smooth playlists). If you include a file extension in Name, the file // name will have two extensions. Name *string `min:"1" type:"string"` // For each output in this job that you want to include in a master playlist, // the value of the Outputs:Key object. // // * If your output is not HLS or does not have a segment duration set, the // name of the output file is a concatenation of OutputKeyPrefix and Outputs:Key: // // OutputKeyPrefixOutputs:Key // // * If your output is HLSv3 and has a segment duration set, or is not included // in a playlist, Elastic Transcoder creates an output playlist file with // a file extension of .m3u8, and a series of .ts files that include a five-digit // sequential counter beginning with 00000: // // OutputKeyPrefixOutputs:Key.m3u8 // // OutputKeyPrefixOutputs:Key00000.ts // // * If your output is HLSv4, has a segment duration set, and is included // in an HLSv4 playlist, Elastic Transcoder creates an output playlist file // with a file extension of _v4.m3u8. If the output is video, Elastic Transcoder // also creates an output file with an extension of _iframe.m3u8: // // OutputKeyPrefixOutputs:Key_v4.m3u8 // // OutputKeyPrefixOutputs:Key_iframe.m3u8 // // OutputKeyPrefixOutputs:Key.ts // // Elastic Transcoder automatically appends the relevant file extension to the // file name. If you include a file extension in Output Key, the file name will // have two extensions. // // If you include more than one output in a playlist, any segment duration settings, // clip settings, or caption settings must be the same for all outputs in the // playlist. For Smooth playlists, the Audio:Profile, Video:Profile, and Video:FrameRate // to Video:KeyframesMaxDist ratio must be the same for all outputs. OutputKeys []*string `type:"list"` // The DRM settings, if any, that you want Elastic Transcoder to apply to the // output files associated with this playlist. PlayReadyDrm *PlayReadyDrm `type:"structure"` } // String returns the string representation func (s CreateJobPlaylist) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateJobPlaylist) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateJobPlaylist) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateJobPlaylist"} if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.PlayReadyDrm != nil { if err := s.PlayReadyDrm.Validate(); err != nil { invalidParams.AddNested("PlayReadyDrm", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The CreateJobResponse structure. type CreateJobResponse struct { _ struct{} `type:"structure"` // A section of the response body that provides information about the job that // is created. Job *Job `type:"structure"` } // String returns the string representation func (s CreateJobResponse) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateJobResponse) GoString() string { return s.String() } // The CreatePipelineRequest structure. type CreatePipelineInput struct { _ struct{} `type:"structure"` // The AWS Key Management Service (AWS KMS) key that you want to use with this // pipeline. // // If you use either S3 or S3-AWS-KMS as your Encryption:Mode, you don't need // to provide a key with your job because a default key, known as an AWS-KMS // key, is created for you automatically. You need to provide an AWS-KMS key // only if you want to use a non-default AWS-KMS key, or if you are using an // Encryption:Mode of AES-PKCS7, AES-CTR, or AES-GCM. AwsKmsKeyArn *string `type:"string"` // The optional ContentConfig object specifies information about the Amazon // S3 bucket in which you want Elastic Transcoder to save transcoded files and // playlists: which bucket to use, which users you want to have access to the // files, the type of access you want users to have, and the storage class that // you want to assign to the files. // // If you specify values for ContentConfig, you must also specify values for // ThumbnailConfig. // // If you specify values for ContentConfig and ThumbnailConfig, omit the OutputBucket // object. // // * Bucket: The Amazon S3 bucket in which you want Elastic Transcoder to // save transcoded files and playlists. // * Permissions (Optional): The Permissions object specifies which users // you want to have access to transcoded files and the type of access you // want them to have. You can grant permissions to a maximum of 30 users // and/or predefined Amazon S3 groups. // * Grantee Type: Specify the type of value that appears in the Grantee // object: Canonical: The value in the Grantee object is either the canonical // user ID for an AWS account or an origin access identity for an Amazon // CloudFront distribution. For more information about canonical user IDs, // see Access Control List (ACL) Overview in the Amazon Simple Storage Service // Developer Guide. For more information about using CloudFront origin access // identities to require that users use CloudFront URLs instead of Amazon // S3 URLs, see Using an Origin Access Identity to Restrict Access to Your // Amazon S3 Content. A canonical user ID is not the same as an AWS account // number. // Email: The value in the Grantee object is the registered email address of // an AWS account. // Group: The value in the Grantee object is one of the following predefined // Amazon S3 groups: AllUsers, AuthenticatedUsers, or LogDelivery. // // * Grantee: The AWS user or group that you want to have access to transcoded // files and playlists. To identify the user or group, you can specify the // canonical user ID for an AWS account, an origin access identity for a // CloudFront distribution, the registered email address of an AWS account, // or a predefined Amazon S3 group // * Access: The permission that you want to give to the AWS user that you // specified in Grantee. Permissions are granted on the files that Elastic // Transcoder adds to the bucket, including playlists and video files. Valid // values include: READ: The grantee can read the objects and metadata for // objects that Elastic Transcoder adds to the Amazon S3 bucket. // READ_ACP: The grantee can read the object ACL for objects that Elastic Transcoder // adds to the Amazon S3 bucket. // WRITE_ACP: The grantee can write the ACL for the objects that Elastic Transcoder // adds to the Amazon S3 bucket. // FULL_CONTROL: The grantee has READ, READ_ACP, and WRITE_ACP permissions for // the objects that Elastic Transcoder adds to the Amazon S3 bucket. // // * StorageClass: The Amazon S3 storage class, Standard or ReducedRedundancy, // that you want Elastic Transcoder to assign to the video files and playlists // that it stores in your Amazon S3 bucket. ContentConfig *PipelineOutputConfig `type:"structure"` // The Amazon S3 bucket in which you saved the media files that you want to // transcode. // // InputBucket is a required field InputBucket *string `type:"string" required:"true"` // The name of the pipeline. We recommend that the name be unique within the // AWS account, but uniqueness is not enforced. // // Constraints: Maximum 40 characters. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // The Amazon Simple Notification Service (Amazon SNS) topic that you want to // notify to report job status. // // To receive notifications, you must also subscribe to the new topic in the // Amazon SNS console. * Progressing: The topic ARN for the Amazon Simple Notification Service // (Amazon SNS) topic that you want to notify when Elastic Transcoder has // started to process a job in this pipeline. This is the ARN that Amazon // SNS returned when you created the topic. For more information, see Create // a Topic in the Amazon Simple Notification Service Developer Guide. // * Completed: The topic ARN for the Amazon SNS topic that you want to notify // when Elastic Transcoder has finished processing a job in this pipeline. // This is the ARN that Amazon SNS returned when you created the topic. // * Warning: The topic ARN for the Amazon SNS topic that you want to notify // when Elastic Transcoder encounters a warning condition while processing // a job in this pipeline. This is the ARN that Amazon SNS returned when // you created the topic. // * Error: The topic ARN for the Amazon SNS topic that you want to notify // when Elastic Transcoder encounters an error condition while processing // a job in this pipeline. This is the ARN that Amazon SNS returned when // you created the topic. Notifications *Notifications `type:"structure"` // The Amazon S3 bucket in which you want Elastic Transcoder to save the transcoded // files. (Use this, or use ContentConfig:Bucket plus ThumbnailConfig:Bucket.) // // Specify this value when all of the following are true: You want to save transcoded // files, thumbnails (if any), and playlists (if any) together in one bucket. // // You do not want to specify the users or groups who have access to the transcoded // files, thumbnails, and playlists. // You do not want to specify the permissions that Elastic Transcoder grants // to the files. When Elastic Transcoder saves files in OutputBucket, it grants // full control over the files only to the AWS account that owns the role that // is specified by Role. // You want to associate the transcoded files and thumbnails with the Amazon // S3 Standard storage class. // // If you want to save transcoded files and playlists in one bucket and thumbnails // in another bucket, specify which users can access the transcoded files or // the permissions the users have, or change the Amazon S3 storage class, omit // OutputBucket and specify values for ContentConfig and ThumbnailConfig instead. OutputBucket *string `type:"string"` // The IAM Amazon Resource Name (ARN) for the role that you want Elastic Transcoder // to use to create the pipeline. // // Role is a required field Role *string `type:"string" required:"true"` // The ThumbnailConfig object specifies several values, including the Amazon // S3 bucket in which you want Elastic Transcoder to save thumbnail files, which // users you want to have access to the files, the type of access you want users // to have, and the storage class that you want to assign to the files. // // If you specify values for ContentConfig, you must also specify values for // ThumbnailConfig even if you don't want to create thumbnails. // // If you specify values for ContentConfig and ThumbnailConfig, omit the OutputBucket // object. // // * Bucket: The Amazon S3 bucket in which you want Elastic Transcoder to // save thumbnail files. // * Permissions (Optional): The Permissions object specifies which users // and/or predefined Amazon S3 groups you want to have access to thumbnail // files, and the type of access you want them to have. You can grant permissions // to a maximum of 30 users and/or predefined Amazon S3 groups. // * GranteeType: Specify the type of value that appears in the Grantee object: // Canonical: The value in the Grantee object is either the canonical user // ID for an AWS account or an origin access identity for an Amazon CloudFront // distribution. A canonical user ID is not the same as an AWS account number. // // Email: The value in the Grantee object is the registered email address of // an AWS account. // Group: The value in the Grantee object is one of the following predefined // Amazon S3 groups: AllUsers, AuthenticatedUsers, or LogDelivery. // // * Grantee: The AWS user or group that you want to have access to thumbnail // files. To identify the user or group, you can specify the canonical user // ID for an AWS account, an origin access identity for a CloudFront distribution, // the registered email address of an AWS account, or a predefined Amazon // S3 group. // * Access: The permission that you want to give to the AWS user that you // specified in Grantee. Permissions are granted on the thumbnail files that // Elastic Transcoder adds to the bucket. Valid values include: READ: The // grantee can read the thumbnails and metadata for objects that Elastic // Transcoder adds to the Amazon S3 bucket. // READ_ACP: The grantee can read the object ACL for thumbnails that Elastic // Transcoder adds to the Amazon S3 bucket. // WRITE_ACP: The grantee can write the ACL for the thumbnails that Elastic // Transcoder adds to the Amazon S3 bucket. // FULL_CONTROL: The grantee has READ, READ_ACP, and WRITE_ACP permissions for // the thumbnails that Elastic Transcoder adds to the Amazon S3 bucket. // // * StorageClass: The Amazon S3 storage class, Standard or ReducedRedundancy, // that you want Elastic Transcoder to assign to the thumbnails that it stores // in your Amazon S3 bucket. ThumbnailConfig *PipelineOutputConfig `type:"structure"` } // String returns the string representation func (s CreatePipelineInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePipelineInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePipelineInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePipelineInput"} if s.InputBucket == nil { invalidParams.Add(request.NewErrParamRequired("InputBucket")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Role == nil { invalidParams.Add(request.NewErrParamRequired("Role")) } if s.ContentConfig != nil { if err := s.ContentConfig.Validate(); err != nil { invalidParams.AddNested("ContentConfig", err.(request.ErrInvalidParams)) } } if s.ThumbnailConfig != nil { if err := s.ThumbnailConfig.Validate(); err != nil { invalidParams.AddNested("ThumbnailConfig", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // When you create a pipeline, Elastic Transcoder returns the values that you // specified in the request. type CreatePipelineOutput struct { _ struct{} `type:"structure"` // A section of the response body that provides information about the pipeline // that is created. Pipeline *Pipeline `type:"structure"` // Elastic Transcoder returns a warning if the resources used by your pipeline // are not in the same region as the pipeline. // // Using resources in the same region, such as your Amazon S3 buckets, Amazon // SNS notification topics, and AWS KMS key, reduces processing time and prevents // cross-regional charges. Warnings []*Warning `type:"list"` } // String returns the string representation func (s CreatePipelineOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePipelineOutput) GoString() string { return s.String() } // The CreatePresetRequest structure. type CreatePresetInput struct { _ struct{} `type:"structure"` // A section of the request body that specifies the audio parameters. Audio *AudioParameters `type:"structure"` // The container type for the output file. Valid values include flac, flv, fmp4, // gif, mp3, mp4, mpg, mxf, oga, ogg, ts, and webm. // // Container is a required field Container *string `type:"string" required:"true"` // A description of the preset. Description *string `type:"string"` // The name of the preset. We recommend that the name be unique within the AWS // account, but uniqueness is not enforced. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // A section of the request body that specifies the thumbnail parameters, if // any. Thumbnails *Thumbnails `type:"structure"` // A section of the request body that specifies the video parameters. Video *VideoParameters `type:"structure"` } // String returns the string representation func (s CreatePresetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePresetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePresetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePresetInput"} if s.Container == nil { invalidParams.Add(request.NewErrParamRequired("Container")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Video != nil { if err := s.Video.Validate(); err != nil { invalidParams.AddNested("Video", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The CreatePresetResponse structure. type CreatePresetOutput struct { _ struct{} `type:"structure"` // A section of the response body that provides information about the preset // that is created. Preset *Preset `type:"structure"` // If the preset settings don't comply with the standards for the video codec // but Elastic Transcoder created the preset, this message explains the reason // the preset settings don't meet the standard. Elastic Transcoder created the // preset because the settings might produce acceptable output. Warning *string `type:"string"` } // String returns the string representation func (s CreatePresetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePresetOutput) GoString() string { return s.String() } // The DeletePipelineRequest structure. type DeletePipelineInput struct { _ struct{} `type:"structure"` // The identifier of the pipeline that you want to delete. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s DeletePipelineInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePipelineInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeletePipelineInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeletePipelineInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The DeletePipelineResponse structure. type DeletePipelineOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeletePipelineOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePipelineOutput) GoString() string { return s.String() } // The DeletePresetRequest structure. type DeletePresetInput struct { _ struct{} `type:"structure"` // The identifier of the preset for which you want to get detailed information. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s DeletePresetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePresetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeletePresetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeletePresetInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The DeletePresetResponse structure. type DeletePresetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeletePresetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePresetOutput) GoString() string { return s.String() } // The detected properties of the input file. Elastic Transcoder identifies // these values from the input file. type DetectedProperties struct { _ struct{} `type:"structure"` // The detected duration of the input file, in milliseconds. DurationMillis *int64 `type:"long"` // The detected file size of the input file, in bytes. FileSize *int64 `type:"long"` // The detected frame rate of the input file, in frames per second. FrameRate *string `type:"string"` // The detected height of the input file, in pixels. Height *int64 `type:"integer"` // The detected width of the input file, in pixels. Width *int64 `type:"integer"` } // String returns the string representation func (s DetectedProperties) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetectedProperties) GoString() string { return s.String() } // The encryption settings, if any, that are used for decrypting your input // files or encrypting your output files. If your input file is encrypted, you // must specify the mode that Elastic Transcoder will use to decrypt your file, // otherwise you must specify the mode you want Elastic Transcoder to use to // encrypt your output files. type Encryption struct { _ struct{} `type:"structure"` // The series of random bits created by a random bit generator, unique for every // encryption operation, that you used to encrypt your input files or that you // want Elastic Transcoder to use to encrypt your output files. The initialization // vector must be base64-encoded, and it must be exactly 16 bytes long before // being base64-encoded. InitializationVector *string `type:"string"` // The data encryption key that you want Elastic Transcoder to use to encrypt // your output file, or that was used to encrypt your input file. The key must // be base64-encoded and it must be one of the following bit lengths before // being base64-encoded: // // 128, 192, or 256. // // The key must also be encrypted by using the Amazon Key Management Service. Key *string `type:"string"` // The MD5 digest of the key that you used to encrypt your input file, or that // you want Elastic Transcoder to use to encrypt your output file. Elastic Transcoder // uses the key digest as a checksum to make sure your key was not corrupted // in transit. The key MD5 must be base64-encoded, and it must be exactly 16 // bytes long before being base64-encoded. KeyMd5 *string `type:"string"` // The specific server-side encryption mode that you want Elastic Transcoder // to use when decrypting your input files or encrypting your output files. // Elastic Transcoder supports the following options: // // * S3: Amazon S3 creates and manages the keys used for encrypting your // files. // // * S3-AWS-KMS: Amazon S3 calls the Amazon Key Management Service, which // creates and manages the keys that are used for encrypting your files. // If you specify S3-AWS-KMS and you don't want to use the default key, you // must add the AWS-KMS key that you want to use to your pipeline. // // * AES-CBC-PKCS7: A padded cipher-block mode of operation originally used // for HLS files. // // * AES-CTR: AES Counter Mode. // // * AES-GCM: AES Galois Counter Mode, a mode of operation that is an authenticated // encryption format, meaning that a file, key, or initialization vector // that has been tampered with will fail the decryption process. // // For all three AES options, you must provide the following settings, which // must be base64-encoded: // // * Key // // * Key MD5 // // * Initialization Vector // // For the AES modes, your private encryption keys and your unencrypted data // are never stored by AWS; therefore, it is important that you safely manage // your encryption keys. If you lose them, you won't be able to unencrypt your // data. Mode *string `type:"string"` } // String returns the string representation func (s Encryption) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Encryption) GoString() string { return s.String() } // The HLS content protection settings, if any, that you want Elastic Transcoder // to apply to your output files. type HlsContentProtection struct { _ struct{} `type:"structure"` // If Elastic Transcoder is generating your key for you, you must leave this // field blank. // // The series of random bits created by a random bit generator, unique for every // encryption operation, that you want Elastic Transcoder to use to encrypt // your output files. The initialization vector must be base64-encoded, and // it must be exactly 16 bytes before being base64-encoded. InitializationVector *string `type:"string"` // If you want Elastic Transcoder to generate a key for you, leave this field // blank. // // If you choose to supply your own key, you must encrypt the key by using AWS // KMS. The key must be base64-encoded, and it must be one of the following // bit lengths before being base64-encoded: // // 128, 192, or 256. Key *string `type:"string"` // If Elastic Transcoder is generating your key for you, you must leave this // field blank. // // The MD5 digest of the key that you want Elastic Transcoder to use to encrypt // your output file, and that you want Elastic Transcoder to use as a checksum // to make sure your key was not corrupted in transit. The key MD5 must be base64-encoded, // and it must be exactly 16 bytes before being base64- encoded. KeyMd5 *string `type:"string"` // Specify whether you want Elastic Transcoder to write your HLS license key // to an Amazon S3 bucket. If you choose WithVariantPlaylists, LicenseAcquisitionUrl // must be left blank and Elastic Transcoder writes your data key into the same // bucket as the associated playlist. KeyStoragePolicy *string `type:"string"` // The location of the license key required to decrypt your HLS playlist. The // URL must be an absolute path, and is referenced in the URI attribute of the // EXT-X-KEY metadata tag in the playlist file. LicenseAcquisitionUrl *string `type:"string"` // The content protection method for your output. The only valid value is: aes-128. // // This value will be written into the method attribute of the EXT-X-KEY metadata // tag in the output playlist. Method *string `type:"string"` } // String returns the string representation func (s HlsContentProtection) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HlsContentProtection) GoString() string { return s.String() } // A section of the response body that provides information about the job that // is created. type Job struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) for the job. Arn *string `type:"string"` // The identifier that Elastic Transcoder assigned to the job. You use this // value to get settings for the job or to delete the job. Id *string `type:"string"` // A section of the request or response body that provides information about // the file that is being transcoded. Input *JobInput `type:"structure"` // If you specified one output for a job, information about that output. If // you specified multiple outputs for a job, the Output object lists information // about the first output. This duplicates the information that is listed for // the first output in the Outputs object. // // Outputs recommended instead. A section of the request or response body that // provides information about the transcoded (target) file. Output *JobOutput `type:"structure"` // The value, if any, that you want Elastic Transcoder to prepend to the names // of all files that this job creates, including output files, thumbnails, and // playlists. We recommend that you add a / or some other delimiter to the end // of the OutputKeyPrefix. OutputKeyPrefix *string `min:"1" type:"string"` // Information about the output files. We recommend that you use the Outputs // syntax for all jobs, even when you want Elastic Transcoder to transcode a // file into only one format. Do not use both the Outputs and Output syntaxes // in the same request. You can create a maximum of 30 outputs per job. // // If you specify more than one output for a job, Elastic Transcoder creates // the files for each output in the order in which you specify them in the job. Outputs []*JobOutput `type:"list"` // The Id of the pipeline that you want Elastic Transcoder to use for transcoding. // The pipeline determines several settings, including the Amazon S3 bucket // from which Elastic Transcoder gets the files to transcode and the bucket // into which Elastic Transcoder puts the transcoded files. PipelineId *string `type:"string"` // Outputs in Fragmented MP4 or MPEG-TS format only.If you specify a preset // in PresetId for which the value of Container is fmp4 (Fragmented MP4) or // ts (MPEG-TS), Playlists contains information about the master playlists that // you want Elastic Transcoder to create. // // The maximum number of master playlists in a job is 30. Playlists []*Playlist `type:"list"` // The status of the job: Submitted, Progressing, Complete, Canceled, or Error. Status *string `type:"string"` // Details about the timing of a job. Timing *Timing `type:"structure"` // User-defined metadata that you want to associate with an Elastic Transcoder // job. You specify metadata in key/value pairs, and you can add up to 10 key/value // pairs per job. Elastic Transcoder does not guarantee that key/value pairs // will be returned in the same order in which you specify them. // // Metadata keys and values must use characters from the following list: // // * 0-9 // // * A-Z and a-z // // * Space // // * The following symbols: _.:/=+-%@ UserMetadata map[string]*string `type:"map"` } // String returns the string representation func (s Job) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Job) GoString() string { return s.String() } // The .jpg or .png file associated with an audio file. type JobAlbumArt struct { _ struct{} `type:"structure"` // The file to be used as album art. There can be multiple artworks associated // with an audio file, to a maximum of 20. Valid formats are .jpg and .png Artwork []*Artwork `type:"list"` // A policy that determines how Elastic Transcoder will handle the existence // of multiple album artwork files. // // Replace: The specified album art will replace any existing album art. // Prepend: The specified album art will be placed in front of any existing // album art. // Append: The specified album art will be placed after any existing album art. // // Fallback: If the original input file contains artwork, Elastic Transcoder // will use that artwork for the output. If the original input does not contain // artwork, Elastic Transcoder will use the specified album art file. MergePolicy *string `type:"string"` } // String returns the string representation func (s JobAlbumArt) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobAlbumArt) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *JobAlbumArt) Validate() error { invalidParams := request.ErrInvalidParams{Context: "JobAlbumArt"} if s.Artwork != nil { for i, v := range s.Artwork { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Artwork", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Information about the file that you're transcoding. type JobInput struct { _ struct{} `type:"structure"` // The aspect ratio of the input file. If you want Elastic Transcoder to automatically // detect the aspect ratio of the input file, specify auto. If you want to specify // the aspect ratio for the output file, enter one of the following values: // // 1:1, 4:3, 3:2, 16:9 // // If you specify a value other than auto, Elastic Transcoder disables automatic // detection of the aspect ratio. AspectRatio *string `type:"string"` // The container type for the input file. If you want Elastic Transcoder to // automatically detect the container type of the input file, specify auto. // If you want to specify the container type for the input file, enter one of // the following values: // // 3gp, aac, asf, avi, divx, flv, m4a, mkv, mov, mp3, mp4, mpeg, mpeg-ps, mpeg-ts, // mxf, ogg, vob, wav, webm Container *string `type:"string"` // The detected properties of the input file. DetectedProperties *DetectedProperties `type:"structure"` // The encryption settings, if any, that are used for decrypting your input // files. If your input file is encrypted, you must specify the mode that Elastic // Transcoder will use to decrypt your file. Encryption *Encryption `type:"structure"` // The frame rate of the input file. If you want Elastic Transcoder to automatically // detect the frame rate of the input file, specify auto. If you want to specify // the frame rate for the input file, enter one of the following values: // // 10, 15, 23.97, 24, 25, 29.97, 30, 60 // // If you specify a value other than auto, Elastic Transcoder disables automatic // detection of the frame rate. FrameRate *string `type:"string"` // Whether the input file is interlaced. If you want Elastic Transcoder to automatically // detect whether the input file is interlaced, specify auto. If you want to // specify whether the input file is interlaced, enter one of the following // values: // // true, false // // If you specify a value other than auto, Elastic Transcoder disables automatic // detection of interlacing. Interlaced *string `type:"string"` // The name of the file to transcode. Elsewhere in the body of the JSON block // is the the ID of the pipeline to use for processing the job. The InputBucket // object in that pipeline tells Elastic Transcoder which Amazon S3 bucket to // get the file from. // // If the file name includes a prefix, such as cooking/lasagna.mpg, include // the prefix in the key. If the file isn't in the specified bucket, Elastic // Transcoder returns an error. Key *string `min:"1" type:"string"` // This value must be auto, which causes Elastic Transcoder to automatically // detect the resolution of the input file. Resolution *string `type:"string"` } // String returns the string representation func (s JobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *JobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "JobInput"} if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Outputs recommended instead.If you specified one output for a job, information // about that output. If you specified multiple outputs for a job, the Output // object lists information about the first output. This duplicates the information // that is listed for the first output in the Outputs object. type JobOutput struct { _ struct{} `type:"structure"` // The album art to be associated with the output file, if any. AlbumArt *JobAlbumArt `type:"structure"` // If Elastic Transcoder used a preset with a ColorSpaceConversionMode to transcode // the output file, the AppliedColorSpaceConversion parameter shows the conversion // used. If no ColorSpaceConversionMode was defined in the preset, this parameter // will not be included in the job response. AppliedColorSpaceConversion *string `type:"string"` // You can configure Elastic Transcoder to transcode captions, or subtitles, // from one format to another. All captions must be in UTF-8. Elastic Transcoder // supports two types of captions: // // * Embedded: Embedded captions are included in the same file as the audio // and video. Elastic Transcoder supports only one embedded caption per language, // to a maximum of 300 embedded captions per file. // // Valid input values include: CEA-608 (EIA-608, first non-empty channel only), // CEA-708 (EIA-708, first non-empty channel only), and mov-text // // Valid outputs include: mov-text // // Elastic Transcoder supports a maximum of one embedded format per output. // // * Sidecar: Sidecar captions are kept in a separate metadata file from // the audio and video data. Sidecar captions require a player that is capable // of understanding the relationship between the video file and the sidecar // file. Elastic Transcoder supports only one sidecar caption per language, // to a maximum of 20 sidecar captions per file. // // Valid input values include: dfxp (first div element only), ebu-tt, scc, smpt, // srt, ttml (first div element only), and webvtt // // Valid outputs include: dfxp (first div element only), scc, srt, and webvtt. // // If you want ttml or smpte-tt compatible captions, specify dfxp as your output // format. // // Elastic Transcoder does not support OCR (Optical Character Recognition), // does not accept pictures as a valid input for captions, and is not available // for audio-only transcoding. Elastic Transcoder does not preserve text formatting // (for example, italics) during the transcoding process. // // To remove captions or leave the captions empty, set Captions to null. To // pass through existing captions unchanged, set the MergePolicy to MergeRetain, // and pass in a null CaptionSources array. // // For more information on embedded files, see the Subtitles Wikipedia page. // // For more information on sidecar files, see the Extensible Metadata Platform // and Sidecar file Wikipedia pages. Captions *Captions `type:"structure"` // You can create an output file that contains an excerpt from the input file. // This excerpt, called a clip, can come from the beginning, middle, or end // of the file. The Composition object contains settings for the clips that // make up an output file. For the current release, you can only specify settings // for a single clip per output file. The Composition object cannot be null. Composition []*Clip `type:"list"` // Duration of the output file, in seconds. Duration *int64 `type:"long"` // Duration of the output file, in milliseconds. DurationMillis *int64 `type:"long"` // The encryption settings, if any, that you want Elastic Transcoder to apply // to your output files. If you choose to use encryption, you must specify a // mode to use. If you choose not to use encryption, Elastic Transcoder will // write an unencrypted file to your Amazon S3 bucket. Encryption *Encryption `type:"structure"` // File size of the output file, in bytes. FileSize *int64 `type:"long"` // Frame rate of the output file, in frames per second. FrameRate *string `type:"string"` // Height of the output file, in pixels. Height *int64 `type:"integer"` // A sequential counter, starting with 1, that identifies an output among the // outputs from the current job. In the Output syntax, this value is always // 1. Id *string `type:"string"` // The name to assign to the transcoded file. Elastic Transcoder saves the file // in the Amazon S3 bucket specified by the OutputBucket object in the pipeline // that is specified by the pipeline ID. Key *string `min:"1" type:"string"` // The value of the Id object for the preset that you want to use for this job. // The preset determines the audio, video, and thumbnail settings that Elastic // Transcoder uses for transcoding. To use a preset that you created, specify // the preset ID that Elastic Transcoder returned in the response when you created // the preset. You can also use the Elastic Transcoder system presets, which // you can get with ListPresets. PresetId *string `type:"string"` // The number of degrees clockwise by which you want Elastic Transcoder to rotate // the output relative to the input. Enter one of the following values: // // auto, 0, 90, 180, 270 // // The value auto generally works only if the file that you're transcoding contains // rotation metadata. Rotate *string `type:"string"` // (Outputs in Fragmented MP4 or MPEG-TS format only.If you specify a preset // in PresetId for which the value of Container is fmp4 (Fragmented MP4) or // ts (MPEG-TS), SegmentDuration is the target maximum duration of each segment // in seconds. For HLSv3 format playlists, each media segment is stored in a // separate .ts file. For HLSv4 and Smooth playlists, all media segments for // an output are stored in a single file. Each segment is approximately the // length of the SegmentDuration, though individual segments might be shorter // or longer. // // The range of valid values is 1 to 60 seconds. If the duration of the video // is not evenly divisible by SegmentDuration, the duration of the last segment // is the remainder of total length/SegmentDuration. // // Elastic Transcoder creates an output-specific playlist for each output HLS // output that you specify in OutputKeys. To add an output to the master playlist // for this job, include it in the OutputKeys of the associated playlist. SegmentDuration *string `type:"string"` // The status of one output in a job. If you specified only one output for the // job, Outputs:Status is always the same as Job:Status. If you specified more // than one output: Job:Status and Outputs:Status for all of the outputs is // Submitted until Elastic Transcoder starts to process the first output. // When Elastic Transcoder starts to process the first output, Outputs:Status // for that output and Job:Status both change to Progressing. For each output, // the value of Outputs:Status remains Submitted until Elastic Transcoder starts // to process the output. // Job:Status remains Progressing until all of the outputs reach a terminal // status, either Complete or Error. // When all of the outputs reach a terminal status, Job:Status changes to Complete // only if Outputs:Status for all of the outputs is Complete. If Outputs:Status // for one or more outputs is Error, the terminal status for Job:Status is also // Error. // The value of Status is one of the following: Submitted, Progressing, Complete, // Canceled, or Error. Status *string `type:"string"` // Information that further explains Status. StatusDetail *string `type:"string"` // The encryption settings, if any, that you want Elastic Transcoder to apply // to your thumbnail. ThumbnailEncryption *Encryption `type:"structure"` // Whether you want Elastic Transcoder to create thumbnails for your videos // and, if so, how you want Elastic Transcoder to name the files. // // If you don't want Elastic Transcoder to create thumbnails, specify "". // // If you do want Elastic Transcoder to create thumbnails, specify the information // that you want to include in the file name for each thumbnail. You can specify // the following values in any sequence: // // * {count} (Required): If you want to create thumbnails, you must include // {count} in the ThumbnailPattern object. Wherever you specify {count}, // Elastic Transcoder adds a five-digit sequence number (beginning with 00001) // to thumbnail file names. The number indicates where a given thumbnail // appears in the sequence of thumbnails for a transcoded file. // // If you specify a literal value and/or {resolution} but you omit {count}, // Elastic Transcoder returns a validation error and does not create the // job. // * Literal values (Optional): You can specify literal values anywhere in // the ThumbnailPattern object. For example, you can include them as a file // name prefix or as a delimiter between {resolution} and {count}. // // * {resolution} (Optional): If you want Elastic Transcoder to include the // resolution in the file name, include {resolution} in the ThumbnailPattern // object. // // When creating thumbnails, Elastic Transcoder automatically saves the files // in the format (.jpg or .png) that appears in the preset that you specified // in the PresetID value of CreateJobOutput. Elastic Transcoder also appends // the applicable file name extension. ThumbnailPattern *string `type:"string"` // Information about the watermarks that you want Elastic Transcoder to add // to the video during transcoding. You can specify up to four watermarks for // each output. Settings for each watermark must be defined in the preset that // you specify in Preset for the current output. // // Watermarks are added to the output video in the sequence in which you list // them in the job output—the first watermark in the list is added to the output // video first, the second watermark in the list is added next, and so on. As // a result, if the settings in a preset cause Elastic Transcoder to place all // watermarks in the same location, the second watermark that you add will cover // the first one, the third one will cover the second, and the fourth one will // cover the third. Watermarks []*JobWatermark `type:"list"` // Specifies the width of the output file in pixels. Width *int64 `type:"integer"` } // String returns the string representation func (s JobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobOutput) GoString() string { return s.String() } // Watermarks can be in .png or .jpg format. If you want to display a watermark // that is not rectangular, use the .png format, which supports transparency. type JobWatermark struct { _ struct{} `type:"structure"` // The encryption settings, if any, that you want Elastic Transcoder to apply // to your watermarks. Encryption *Encryption `type:"structure"` // The name of the .png or .jpg file that you want to use for the watermark. // To determine which Amazon S3 bucket contains the specified file, Elastic // Transcoder checks the pipeline specified by Pipeline; the Input Bucket object // in that pipeline identifies the bucket. // // If the file name includes a prefix, for example, logos/128x64.png, include // the prefix in the key. If the file isn't in the specified bucket, Elastic // Transcoder returns an error. InputKey *string `min:"1" type:"string"` // The ID of the watermark settings that Elastic Transcoder uses to add watermarks // to the video during transcoding. The settings are in the preset specified // by Preset for the current output. In that preset, the value of Watermarks // Id tells Elastic Transcoder which settings to use. PresetWatermarkId *string `min:"1" type:"string"` } // String returns the string representation func (s JobWatermark) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobWatermark) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *JobWatermark) Validate() error { invalidParams := request.ErrInvalidParams{Context: "JobWatermark"} if s.InputKey != nil && len(*s.InputKey) < 1 { invalidParams.Add(request.NewErrParamMinLen("InputKey", 1)) } if s.PresetWatermarkId != nil && len(*s.PresetWatermarkId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PresetWatermarkId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The ListJobsByPipelineRequest structure. type ListJobsByPipelineInput struct { _ struct{} `type:"structure"` // To list jobs in chronological order by the date and time that they were submitted, // enter true. To list jobs in reverse chronological order, enter false. Ascending *string `location:"querystring" locationName:"Ascending" type:"string"` // When Elastic Transcoder returns more than one page of results, use pageToken // in subsequent GET requests to get each successive page of results. PageToken *string `location:"querystring" locationName:"PageToken" type:"string"` // The ID of the pipeline for which you want to get job information. // // PipelineId is a required field PipelineId *string `location:"uri" locationName:"PipelineId" type:"string" required:"true"` } // String returns the string representation func (s ListJobsByPipelineInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListJobsByPipelineInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListJobsByPipelineInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListJobsByPipelineInput"} if s.PipelineId == nil { invalidParams.Add(request.NewErrParamRequired("PipelineId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The ListJobsByPipelineResponse structure. type ListJobsByPipelineOutput struct { _ struct{} `type:"structure"` // An array of Job objects that are in the specified pipeline. Jobs []*Job `type:"list"` // A value that you use to access the second and subsequent pages of results, // if any. When the jobs in the specified pipeline fit on one page or when you've // reached the last page of results, the value of NextPageToken is null. NextPageToken *string `type:"string"` } // String returns the string representation func (s ListJobsByPipelineOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListJobsByPipelineOutput) GoString() string { return s.String() } // The ListJobsByStatusRequest structure. type ListJobsByStatusInput struct { _ struct{} `type:"structure"` // To list jobs in chronological order by the date and time that they were submitted, // enter true. To list jobs in reverse chronological order, enter false. Ascending *string `location:"querystring" locationName:"Ascending" type:"string"` // When Elastic Transcoder returns more than one page of results, use pageToken // in subsequent GET requests to get each successive page of results. PageToken *string `location:"querystring" locationName:"PageToken" type:"string"` // To get information about all of the jobs associated with the current AWS // account that have a given status, specify the following status: Submitted, // Progressing, Complete, Canceled, or Error. // // Status is a required field Status *string `location:"uri" locationName:"Status" type:"string" required:"true"` } // String returns the string representation func (s ListJobsByStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListJobsByStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListJobsByStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListJobsByStatusInput"} if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The ListJobsByStatusResponse structure. type ListJobsByStatusOutput struct { _ struct{} `type:"structure"` // An array of Job objects that have the specified status. Jobs []*Job `type:"list"` // A value that you use to access the second and subsequent pages of results, // if any. When the jobs in the specified pipeline fit on one page or when you've // reached the last page of results, the value of NextPageToken is null. NextPageToken *string `type:"string"` } // String returns the string representation func (s ListJobsByStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListJobsByStatusOutput) GoString() string { return s.String() } // The ListPipelineRequest structure. type ListPipelinesInput struct { _ struct{} `type:"structure"` // To list pipelines in chronological order by the date and time that they were // created, enter true. To list pipelines in reverse chronological order, enter // false. Ascending *string `location:"querystring" locationName:"Ascending" type:"string"` // When Elastic Transcoder returns more than one page of results, use pageToken // in subsequent GET requests to get each successive page of results. PageToken *string `location:"querystring" locationName:"PageToken" type:"string"` } // String returns the string representation func (s ListPipelinesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPipelinesInput) GoString() string { return s.String() } // A list of the pipelines associated with the current AWS account. type ListPipelinesOutput struct { _ struct{} `type:"structure"` // A value that you use to access the second and subsequent pages of results, // if any. When the pipelines fit on one page or when you've reached the last // page of results, the value of NextPageToken is null. NextPageToken *string `type:"string"` // An array of Pipeline objects. Pipelines []*Pipeline `type:"list"` } // String returns the string representation func (s ListPipelinesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPipelinesOutput) GoString() string { return s.String() } // The ListPresetsRequest structure. type ListPresetsInput struct { _ struct{} `type:"structure"` // To list presets in chronological order by the date and time that they were // created, enter true. To list presets in reverse chronological order, enter // false. Ascending *string `location:"querystring" locationName:"Ascending" type:"string"` // When Elastic Transcoder returns more than one page of results, use pageToken // in subsequent GET requests to get each successive page of results. PageToken *string `location:"querystring" locationName:"PageToken" type:"string"` } // String returns the string representation func (s ListPresetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPresetsInput) GoString() string { return s.String() } // The ListPresetsResponse structure. type ListPresetsOutput struct { _ struct{} `type:"structure"` // A value that you use to access the second and subsequent pages of results, // if any. When the presets fit on one page or when you've reached the last // page of results, the value of NextPageToken is null. NextPageToken *string `type:"string"` // An array of Preset objects. Presets []*Preset `type:"list"` } // String returns the string representation func (s ListPresetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPresetsOutput) GoString() string { return s.String() } // The Amazon Simple Notification Service (Amazon SNS) topic or topics to notify // in order to report job status. // // To receive notifications, you must also subscribe to the new topic in the // Amazon SNS console. type Notifications struct { _ struct{} `type:"structure"` // The Amazon SNS topic that you want to notify when Elastic Transcoder has // finished processing the job. Completed *string `type:"string"` // The Amazon SNS topic that you want to notify when Elastic Transcoder encounters // an error condition. Error *string `type:"string"` // The Amazon Simple Notification Service (Amazon SNS) topic that you want to // notify when Elastic Transcoder has started to process the job. Progressing *string `type:"string"` // The Amazon SNS topic that you want to notify when Elastic Transcoder encounters // a warning condition. Warning *string `type:"string"` } // String returns the string representation func (s Notifications) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Notifications) GoString() string { return s.String() } // The Permission structure. type Permission struct { _ struct{} `type:"structure"` // The permission that you want to give to the AWS user that is listed in Grantee. // Valid values include: READ: The grantee can read the thumbnails and metadata // for thumbnails that Elastic Transcoder adds to the Amazon S3 bucket. // READ_ACP: The grantee can read the object ACL for thumbnails that Elastic // Transcoder adds to the Amazon S3 bucket. // WRITE_ACP: The grantee can write the ACL for the thumbnails that Elastic // Transcoder adds to the Amazon S3 bucket. // FULL_CONTROL: The grantee has READ, READ_ACP, and WRITE_ACP permissions for // the thumbnails that Elastic Transcoder adds to the Amazon S3 bucket. Access []*string `type:"list"` // The AWS user or group that you want to have access to transcoded files and // playlists. To identify the user or group, you can specify the canonical user // ID for an AWS account, an origin access identity for a CloudFront distribution, // the registered email address of an AWS account, or a predefined Amazon S3 // group. Grantee *string `min:"1" type:"string"` // The type of value that appears in the Grantee object: Canonical: Either the // canonical user ID for an AWS account or an origin access identity for an // Amazon CloudFront distribution. A canonical user ID is not the same as an // AWS account number. // Email: The registered email address of an AWS account. // Group: One of the following predefined Amazon S3 groups: AllUsers, AuthenticatedUsers, // or LogDelivery. GranteeType *string `type:"string"` } // String returns the string representation func (s Permission) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Permission) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Permission) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Permission"} if s.Grantee != nil && len(*s.Grantee) < 1 { invalidParams.Add(request.NewErrParamMinLen("Grantee", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The pipeline (queue) that is used to manage jobs. type Pipeline struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) for the pipeline. Arn *string `type:"string"` // The AWS Key Management Service (AWS KMS) key that you want to use with this // pipeline. // // If you use either S3 or S3-AWS-KMS as your Encryption:Mode, you don't need // to provide a key with your job because a default key, known as an AWS-KMS // key, is created for you automatically. You need to provide an AWS-KMS key // only if you want to use a non-default AWS-KMS key, or if you are using an // Encryption:Mode of AES-PKCS7, AES-CTR, or AES-GCM. AwsKmsKeyArn *string `type:"string"` // Information about the Amazon S3 bucket in which you want Elastic Transcoder // to save transcoded files and playlists. Either you specify both ContentConfig // and ThumbnailConfig, or you specify OutputBucket. // // * Bucket: The Amazon S3 bucket in which you want Elastic Transcoder to // save transcoded files and playlists. // * Permissions: A list of the users and/or predefined Amazon S3 groups // you want to have access to transcoded files and playlists, and the type // of access that you want them to have. GranteeType: The type of value that // appears in the Grantee object: Canonical: Either the canonical user ID // for an AWS account or an origin access identity for an Amazon CloudFront // distribution. // Email: The registered email address of an AWS account. // Group: One of the following predefined Amazon S3 groups: AllUsers, AuthenticatedUsers, // or LogDelivery. // // Grantee: The AWS user or group that you want to have access to transcoded // files and playlists. // Access: The permission that you want to give to the AWS user that is listed // in Grantee. Valid values include: READ: The grantee can read the objects // and metadata for objects that Elastic Transcoder adds to the Amazon S3 // bucket. // READ_ACP: The grantee can read the object ACL for objects that Elastic Transcoder // adds to the Amazon S3 bucket. // WRITE_ACP: The grantee can write the ACL for the objects that Elastic Transcoder // adds to the Amazon S3 bucket. // FULL_CONTROL: The grantee has READ, READ_ACP, and WRITE_ACP permissions for // the objects that Elastic Transcoder adds to the Amazon S3 bucket. // // * StorageClass: The Amazon S3 storage class, Standard or ReducedRedundancy, // that you want Elastic Transcoder to assign to the video files and playlists // that it stores in your Amazon S3 bucket. ContentConfig *PipelineOutputConfig `type:"structure"` // The identifier for the pipeline. You use this value to identify the pipeline // in which you want to perform a variety of operations, such as creating a // job or a preset. Id *string `type:"string"` // The Amazon S3 bucket from which Elastic Transcoder gets media files for transcoding // and the graphics files, if any, that you want to use for watermarks. InputBucket *string `type:"string"` // The name of the pipeline. We recommend that the name be unique within the // AWS account, but uniqueness is not enforced. // // Constraints: Maximum 40 characters Name *string `min:"1" type:"string"` // The Amazon Simple Notification Service (Amazon SNS) topic that you want to // notify to report job status. // // To receive notifications, you must also subscribe to the new topic in the // Amazon SNS console. * Progressing (optional): The Amazon Simple Notification Service (Amazon // SNS) topic that you want to notify when Elastic Transcoder has started // to process the job. // * Completed (optional): The Amazon SNS topic that you want to notify when // Elastic Transcoder has finished processing the job. // * Warning (optional): The Amazon SNS topic that you want to notify when // Elastic Transcoder encounters a warning condition. // * Error (optional): The Amazon SNS topic that you want to notify when // Elastic Transcoder encounters an error condition. Notifications *Notifications `type:"structure"` // The Amazon S3 bucket in which you want Elastic Transcoder to save transcoded // files, thumbnails, and playlists. Either you specify this value, or you specify // both ContentConfig and ThumbnailConfig. OutputBucket *string `type:"string"` // The IAM Amazon Resource Name (ARN) for the role that Elastic Transcoder uses // to transcode jobs for this pipeline. Role *string `type:"string"` // The current status of the pipeline: // // * Active: The pipeline is processing jobs. // * Paused: The pipeline is not currently processing jobs. Status *string `type:"string"` // Information about the Amazon S3 bucket in which you want Elastic Transcoder // to save thumbnail files. Either you specify both ContentConfig and ThumbnailConfig, // or you specify OutputBucket. // // * Bucket: The Amazon S3 bucket in which you want Elastic Transcoder to // save thumbnail files. // * Permissions: A list of the users and/or predefined Amazon S3 groups // you want to have access to thumbnail files, and the type of access that // you want them to have. GranteeType: The type of value that appears in // the Grantee object: Canonical: Either the canonical user ID for an AWS // account or an origin access identity for an Amazon CloudFront distribution. // A canonical user ID is not the same as an AWS account number. // Email: The registered email address of an AWS account. // Group: One of the following predefined Amazon S3 groups: AllUsers, AuthenticatedUsers, // or LogDelivery. // // Grantee: The AWS user or group that you want to have access to thumbnail // files. // Access: The permission that you want to give to the AWS user that is listed // in Grantee. Valid values include: READ: The grantee can read the thumbnails // and metadata for thumbnails that Elastic Transcoder adds to the Amazon // S3 bucket. // READ_ACP: The grantee can read the object ACL for thumbnails that Elastic // Transcoder adds to the Amazon S3 bucket. // WRITE_ACP: The grantee can write the ACL for the thumbnails that Elastic // Transcoder adds to the Amazon S3 bucket. // FULL_CONTROL: The grantee has READ, READ_ACP, and WRITE_ACP permissions for // the thumbnails that Elastic Transcoder adds to the Amazon S3 bucket. // // * StorageClass: The Amazon S3 storage class, Standard or ReducedRedundancy, // that you want Elastic Transcoder to assign to the thumbnails that it stores // in your Amazon S3 bucket. ThumbnailConfig *PipelineOutputConfig `type:"structure"` } // String returns the string representation func (s Pipeline) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Pipeline) GoString() string { return s.String() } // The PipelineOutputConfig structure. type PipelineOutputConfig struct { _ struct{} `type:"structure"` // The Amazon S3 bucket in which you want Elastic Transcoder to save the transcoded // files. Specify this value when all of the following are true: You want to // save transcoded files, thumbnails (if any), and playlists (if any) together // in one bucket. // You do not want to specify the users or groups who have access to the transcoded // files, thumbnails, and playlists. // You do not want to specify the permissions that Elastic Transcoder grants // to the files. // You want to associate the transcoded files and thumbnails with the Amazon // S3 Standard storage class. // If you want to save transcoded files and playlists in one bucket and thumbnails // in another bucket, specify which users can access the transcoded files or // the permissions the users have, or change the Amazon S3 storage class, omit // OutputBucket and specify values for ContentConfig and ThumbnailConfig instead. Bucket *string `type:"string"` // Optional. The Permissions object specifies which users and/or predefined // Amazon S3 groups you want to have access to transcoded files and playlists, // and the type of access you want them to have. You can grant permissions to // a maximum of 30 users and/or predefined Amazon S3 groups. // // If you include Permissions, Elastic Transcoder grants only the permissions // that you specify. It does not grant full permissions to the owner of the // role specified by Role. If you want that user to have full control, you must // explicitly grant full control to the user. // // If you omit Permissions, Elastic Transcoder grants full control over the // transcoded files and playlists to the owner of the role specified by Role, // and grants no other permissions to any other user or group. Permissions []*Permission `type:"list"` // The Amazon S3 storage class, Standard or ReducedRedundancy, that you want // Elastic Transcoder to assign to the video files and playlists that it stores // in your Amazon S3 bucket. StorageClass *string `type:"string"` } // String returns the string representation func (s PipelineOutputConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PipelineOutputConfig) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PipelineOutputConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PipelineOutputConfig"} if s.Permissions != nil { for i, v := range s.Permissions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Permissions", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The PlayReady DRM settings, if any, that you want Elastic Transcoder to apply // to the output files associated with this playlist. // // PlayReady DRM encrypts your media files using AES-CTR encryption. // // If you use DRM for an HLSv3 playlist, your outputs must have a master playlist. type PlayReadyDrm struct { _ struct{} `type:"structure"` // The type of DRM, if any, that you want Elastic Transcoder to apply to the // output files associated with this playlist. Format *string `type:"string"` // The series of random bits created by a random bit generator, unique for every // encryption operation, that you want Elastic Transcoder to use to encrypt // your files. The initialization vector must be base64-encoded, and it must // be exactly 8 bytes long before being base64-encoded. If no initialization // vector is provided, Elastic Transcoder generates one for you. InitializationVector *string `type:"string"` // The DRM key for your file, provided by your DRM license provider. The key // must be base64-encoded, and it must be one of the following bit lengths before // being base64-encoded: // // 128, 192, or 256. // // The key must also be encrypted by using AWS KMS. Key *string `type:"string"` // The ID for your DRM key, so that your DRM license provider knows which key // to provide. // // The key ID must be provided in big endian, and Elastic Transcoder will convert // it to little endian before inserting it into the PlayReady DRM headers. If // you are unsure whether your license server provides your key ID in big or // little endian, check with your DRM provider. KeyId *string `type:"string"` // The MD5 digest of the key used for DRM on your file, and that you want Elastic // Transcoder to use as a checksum to make sure your key was not corrupted in // transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes // before being base64-encoded. KeyMd5 *string `type:"string"` // The location of the license key required to play DRM content. The URL must // be an absolute path, and is referenced by the PlayReady header. The PlayReady // header is referenced in the protection header of the client manifest for // Smooth Streaming outputs, and in the EXT-X-DXDRM and EXT-XDXDRMINFO metadata // tags for HLS playlist outputs. An example URL looks like this: https://www.example.com/exampleKey/ LicenseAcquisitionUrl *string `min:"1" type:"string"` } // String returns the string representation func (s PlayReadyDrm) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PlayReadyDrm) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PlayReadyDrm) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PlayReadyDrm"} if s.LicenseAcquisitionUrl != nil && len(*s.LicenseAcquisitionUrl) < 1 { invalidParams.Add(request.NewErrParamMinLen("LicenseAcquisitionUrl", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Use Only for Fragmented MP4 or MPEG-TS Outputs. If you specify a preset for // which the value of Container is fmp4 (Fragmented MP4) or ts (MPEG-TS), Playlists // contains information about the master playlists that you want Elastic Transcoder // to create. We recommend that you create only one master playlist per output // format. The maximum number of master playlists in a job is 30. type Playlist struct { _ struct{} `type:"structure"` // The format of the output playlist. Valid formats include HLSv3, HLSv4, and // Smooth. Format *string `type:"string"` // The HLS content protection settings, if any, that you want Elastic Transcoder // to apply to the output files associated with this playlist. HlsContentProtection *HlsContentProtection `type:"structure"` // The name that you want Elastic Transcoder to assign to the master playlist, // for example, nyc-vacation.m3u8. If the name includes a / character, the section // of the name before the last / must be identical for all Name objects. If // you create more than one master playlist, the values of all Name objects // must be unique. // // Note: Elastic Transcoder automatically appends the relevant file extension // to the file name (.m3u8 for HLSv3 and HLSv4 playlists, and .ism and .ismc // for Smooth playlists). If you include a file extension in Name, the file // name will have two extensions. Name *string `min:"1" type:"string"` // For each output in this job that you want to include in a master playlist, // the value of the Outputs:Key object. // // * If your output is not HLS or does not have a segment duration set, the // name of the output file is a concatenation of OutputKeyPrefix and Outputs:Key: // // OutputKeyPrefixOutputs:Key // // * If your output is HLSv3 and has a segment duration set, or is not included // in a playlist, Elastic Transcoder creates an output playlist file with // a file extension of .m3u8, and a series of .ts files that include a five-digit // sequential counter beginning with 00000: // // OutputKeyPrefixOutputs:Key.m3u8 // // OutputKeyPrefixOutputs:Key00000.ts // // * If your output is HLSv4, has a segment duration set, and is included // in an HLSv4 playlist, Elastic Transcoder creates an output playlist file // with a file extension of _v4.m3u8. If the output is video, Elastic Transcoder // also creates an output file with an extension of _iframe.m3u8: // // OutputKeyPrefixOutputs:Key_v4.m3u8 // // OutputKeyPrefixOutputs:Key_iframe.m3u8 // // OutputKeyPrefixOutputs:Key.ts // // Elastic Transcoder automatically appends the relevant file extension to the // file name. If you include a file extension in Output Key, the file name will // have two extensions. // // If you include more than one output in a playlist, any segment duration settings, // clip settings, or caption settings must be the same for all outputs in the // playlist. For Smooth playlists, the Audio:Profile, Video:Profile, and Video:FrameRate // to Video:KeyframesMaxDist ratio must be the same for all outputs. OutputKeys []*string `type:"list"` // The DRM settings, if any, that you want Elastic Transcoder to apply to the // output files associated with this playlist. PlayReadyDrm *PlayReadyDrm `type:"structure"` // The status of the job with which the playlist is associated. Status *string `type:"string"` // Information that further explains the status. StatusDetail *string `type:"string"` } // String returns the string representation func (s Playlist) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Playlist) GoString() string { return s.String() } // Presets are templates that contain most of the settings for transcoding media // files from one format to another. Elastic Transcoder includes some default // presets for common formats, for example, several iPod and iPhone versions. // You can also create your own presets for formats that aren't included among // the default presets. You specify which preset you want to use when you create // a job. type Preset struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) for the preset. Arn *string `type:"string"` // A section of the response body that provides information about the audio // preset values. Audio *AudioParameters `type:"structure"` // The container type for the output file. Valid values include flac, flv, fmp4, // gif, mp3, mp4, mpg, mxf, oga, ogg, ts, and webm. Container *string `type:"string"` // A description of the preset. Description *string `type:"string"` // Identifier for the new preset. You use this value to get settings for the // preset or to delete it. Id *string `type:"string"` // The name of the preset. Name *string `min:"1" type:"string"` // A section of the response body that provides information about the thumbnail // preset values, if any. Thumbnails *Thumbnails `type:"structure"` // Whether the preset is a default preset provided by Elastic Transcoder (System) // or a preset that you have defined (Custom). Type *string `type:"string"` // A section of the response body that provides information about the video // preset values. Video *VideoParameters `type:"structure"` } // String returns the string representation func (s Preset) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Preset) GoString() string { return s.String() } // Settings for the size, location, and opacity of graphics that you want Elastic // Transcoder to overlay over videos that are transcoded using this preset. // You can specify settings for up to four watermarks. Watermarks appear in // the specified size and location, and with the specified opacity for the duration // of the transcoded video. // // Watermarks can be in .png or .jpg format. If you want to display a watermark // that is not rectangular, use the .png format, which supports transparency. // // When you create a job that uses this preset, you specify the .png or .jpg // graphics that you want Elastic Transcoder to include in the transcoded videos. // You can specify fewer graphics in the job than you specify watermark settings // in the preset, which allows you to use the same preset for up to four watermarks // that have different dimensions. type PresetWatermark struct { _ struct{} `type:"structure"` // The horizontal position of the watermark unless you specify a non-zero value // for HorizontalOffset: Left: The left edge of the watermark is aligned with // the left border of the video. // Right: The right edge of the watermark is aligned with the right border of // the video. // Center: The watermark is centered between the left and right borders. HorizontalAlign *string `type:"string"` // The amount by which you want the horizontal position of the watermark to // be offset from the position specified by HorizontalAlign: number of pixels // (px): The minimum value is 0 pixels, and the maximum value is the value of // MaxWidth. // integer percentage (%): The range of valid values is 0 to 100. // For example, if you specify Left for HorizontalAlign and 5px for HorizontalOffset, // the left side of the watermark appears 5 pixels from the left border of the // output video. // // HorizontalOffset is only valid when the value of HorizontalAlign is Left // or Right. If you specify an offset that causes the watermark to extend beyond // the left or right border and Elastic Transcoder has not added black bars, // the watermark is cropped. If Elastic Transcoder has added black bars, the // watermark extends into the black bars. If the watermark extends beyond the // black bars, it is cropped. // // Use the value of Target to specify whether you want to include the black // bars that are added by Elastic Transcoder, if any, in the offset calculation. HorizontalOffset *string `type:"string"` // A unique identifier for the settings for one watermark. The value of Id Id *string `min:"1" type:"string"` // The maximum height of the watermark in one of the following formats: number // of pixels (px): The minimum value is 16 pixels, and the maximum value is // the value of MaxHeight. // integer percentage (%): The range of valid values is 0 to 100. Use the value // of Target to specify whether you want Elastic Transcoder to include the black // bars that are added by Elastic Transcoder, if any, in the calculation. // If you specify the value in pixels, it must be less than or equal to the // value of MaxHeight. MaxHeight *string `type:"string"` // The maximum width of the watermark in one of the following formats: number // of pixels (px): The minimum value is 16 pixels, and the maximum value is // the value of MaxWidth. // integer percentage (%): The range of valid values is 0 to 100. Use the value // of Target to specify whether you want Elastic Transcoder to include the black // bars that are added by Elastic Transcoder, if any, in the calculation. // If you specify the value in pixels, it must be less than or equal to the // value of MaxWidth. MaxWidth *string `type:"string"` // A percentage that indicates how much you want a watermark to obscure the // video in the location where it appears. Valid values are 0 (the watermark // is invisible) to 100 (the watermark completely obscures the video in the // specified location). The datatype of Opacity is float. // // Elastic Transcoder supports transparent .png graphics. If you use a transparent // .png, the transparent portion of the video appears as if you had specified // a value of 0 for Opacity. The .jpg file format doesn't support transparency. Opacity *string `type:"string"` // A value that controls scaling of the watermark: Fit: Elastic Transcoder scales // the watermark so it matches the value that you specified in either MaxWidth // or MaxHeight without exceeding the other value. // Stretch: Elastic Transcoder stretches the watermark to match the values that // you specified for MaxWidth and MaxHeight. If the relative proportions of // the watermark and the values of MaxWidth and MaxHeight are different, the // watermark will be distorted. // ShrinkToFit: Elastic Transcoder scales the watermark down so that its dimensions // match the values that you specified for at least one of MaxWidth and MaxHeight // without exceeding either value. If you specify this option, Elastic Transcoder // does not scale the watermark up. SizingPolicy *string `type:"string"` // A value that determines how Elastic Transcoder interprets values that you // specified for HorizontalOffset, VerticalOffset, MaxWidth, and MaxHeight: // Content: HorizontalOffset and VerticalOffset values are calculated based // on the borders of the video excluding black bars added by Elastic Transcoder, // if any. In addition, MaxWidth and MaxHeight, if specified as a percentage, // are calculated based on the borders of the video excluding black bars added // by Elastic Transcoder, if any. // Frame: HorizontalOffset and VerticalOffset values are calculated based on // the borders of the video including black bars added by Elastic Transcoder, // if any. // In addition, MaxWidth and MaxHeight, if specified as a percentage, are calculated // based on the borders of the video including black bars added by Elastic Transcoder, // if any. Target *string `type:"string"` // The vertical position of the watermark unless you specify a non-zero value // for VerticalOffset: Top: The top edge of the watermark is aligned with the // top border of the video. // Bottom: The bottom edge of the watermark is aligned with the bottom border // of the video. // Center: The watermark is centered between the top and bottom borders. VerticalAlign *string `type:"string"` // VerticalOffsetThe amount by which you want the vertical position of the watermark to be // offset from the position specified by VerticalAlign:number of pixels (px): // The minimum value is 0 pixels, and the maximum value is the value of MaxHeight. // // integer percentage (%): The range of valid values is 0 to 100. // For example, if you specify Top for VerticalAlign and 5px for VerticalOffset, // the top of the watermark appears 5 pixels from the top border of the output // video. // // VerticalOffset is only valid when the value of VerticalAlign is Top or Bottom. // // If you specify an offset that causes the watermark to extend beyond the top // or bottom border and Elastic Transcoder has not added black bars, the watermark // is cropped. If Elastic Transcoder has added black bars, the watermark extends // into the black bars. If the watermark extends beyond the black bars, it is // cropped. // // Use the value of Target to specify whether you want Elastic Transcoder to // include the black bars that are added by Elastic Transcoder, if any, in the // offset calculation. VerticalOffset *string `type:"string"` } // String returns the string representation func (s PresetWatermark) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PresetWatermark) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PresetWatermark) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PresetWatermark"} if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The ReadJobRequest structure. type ReadJobInput struct { _ struct{} `type:"structure"` // The identifier of the job for which you want to get detailed information. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s ReadJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReadJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReadJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReadJobInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The ReadJobResponse structure. type ReadJobOutput struct { _ struct{} `type:"structure"` // A section of the response body that provides information about the job. Job *Job `type:"structure"` } // String returns the string representation func (s ReadJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReadJobOutput) GoString() string { return s.String() } // The ReadPipelineRequest structure. type ReadPipelineInput struct { _ struct{} `type:"structure"` // The identifier of the pipeline to read. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s ReadPipelineInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReadPipelineInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReadPipelineInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReadPipelineInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The ReadPipelineResponse structure. type ReadPipelineOutput struct { _ struct{} `type:"structure"` // A section of the response body that provides information about the pipeline. Pipeline *Pipeline `type:"structure"` // Elastic Transcoder returns a warning if the resources used by your pipeline // are not in the same region as the pipeline. // // Using resources in the same region, such as your Amazon S3 buckets, Amazon // SNS notification topics, and AWS KMS key, reduces processing time and prevents // cross-regional charges. Warnings []*Warning `type:"list"` } // String returns the string representation func (s ReadPipelineOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReadPipelineOutput) GoString() string { return s.String() } // The ReadPresetRequest structure. type ReadPresetInput struct { _ struct{} `type:"structure"` // The identifier of the preset for which you want to get detailed information. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s ReadPresetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReadPresetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReadPresetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReadPresetInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The ReadPresetResponse structure. type ReadPresetOutput struct { _ struct{} `type:"structure"` // A section of the response body that provides information about the preset. Preset *Preset `type:"structure"` } // String returns the string representation func (s ReadPresetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReadPresetOutput) GoString() string { return s.String() } // The TestRoleRequest structure. type TestRoleInput struct { _ struct{} `type:"structure"` // The Amazon S3 bucket that contains media files to be transcoded. The action // attempts to read from this bucket. // // InputBucket is a required field InputBucket *string `type:"string" required:"true"` // The Amazon S3 bucket that Elastic Transcoder will write transcoded media // files to. The action attempts to read from this bucket. // // OutputBucket is a required field OutputBucket *string `type:"string" required:"true"` // The IAM Amazon Resource Name (ARN) for the role that you want Elastic Transcoder // to test. // // Role is a required field Role *string `type:"string" required:"true"` // The ARNs of one or more Amazon Simple Notification Service (Amazon SNS) topics // that you want the action to send a test notification to. // // Topics is a required field Topics []*string `type:"list" required:"true"` } // String returns the string representation func (s TestRoleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TestRoleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TestRoleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TestRoleInput"} if s.InputBucket == nil { invalidParams.Add(request.NewErrParamRequired("InputBucket")) } if s.OutputBucket == nil { invalidParams.Add(request.NewErrParamRequired("OutputBucket")) } if s.Role == nil { invalidParams.Add(request.NewErrParamRequired("Role")) } if s.Topics == nil { invalidParams.Add(request.NewErrParamRequired("Topics")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The TestRoleResponse structure. type TestRoleOutput struct { _ struct{} `type:"structure"` // If the Success element contains false, this value is an array of one or more // error messages that were generated during the test process. Messages []*string `type:"list"` // If the operation is successful, this value is true; otherwise, the value // is false. Success *string `type:"string"` } // String returns the string representation func (s TestRoleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TestRoleOutput) GoString() string { return s.String() } // Thumbnails for videos. type Thumbnails struct { _ struct{} `type:"structure"` // To better control resolution and aspect ratio of thumbnails, we recommend // that you use the values MaxWidth, MaxHeight, SizingPolicy, and PaddingPolicy // instead of Resolution and AspectRatio. The two groups of settings are mutually // exclusive. Do not use them together. // // The aspect ratio of thumbnails. Valid values include: // // auto, 1:1, 4:3, 3:2, 16:9 // // If you specify auto, Elastic Transcoder tries to preserve the aspect ratio // of the video in the output file. AspectRatio *string `type:"string"` // The format of thumbnails, if any. Valid values are jpg and png. // // You specify whether you want Elastic Transcoder to create thumbnails when // you create a job. Format *string `type:"string"` // The approximate number of seconds between thumbnails. Specify an integer // value. Interval *string `type:"string"` // The maximum height of thumbnails in pixels. If you specify auto, Elastic // Transcoder uses 1080 (Full HD) as the default value. If you specify a numeric // value, enter an even integer between 32 and 3072. MaxHeight *string `type:"string"` // The maximum width of thumbnails in pixels. If you specify auto, Elastic Transcoder // uses 1920 (Full HD) as the default value. If you specify a numeric value, // enter an even integer between 32 and 4096. MaxWidth *string `type:"string"` // When you set PaddingPolicy to Pad, Elastic Transcoder may add black bars // to the top and bottom and/or left and right sides of thumbnails to make the // total size of the thumbnails match the values that you specified for thumbnail // MaxWidth and MaxHeight settings. PaddingPolicy *string `type:"string"` // To better control resolution and aspect ratio of thumbnails, we recommend // that you use the values MaxWidth, MaxHeight, SizingPolicy, and PaddingPolicy // instead of Resolution and AspectRatio. The two groups of settings are mutually // exclusive. Do not use them together. // // The width and height of thumbnail files in pixels. Specify a value in the // format width x height where both values are even integers. The values cannot // exceed the width and height that you specified in the Video:Resolution object. Resolution *string `type:"string"` // Specify one of the following values to control scaling of thumbnails: // // Fit: Elastic Transcoder scales thumbnails so they match the value that you // specified in thumbnail MaxWidth or MaxHeight settings without exceeding the // other value. // Fill: Elastic Transcoder scales thumbnails so they match the value that you // specified in thumbnail MaxWidth or MaxHeight settings and matches or exceeds // the other value. Elastic Transcoder centers the image in thumbnails and then // crops in the dimension (if any) that exceeds the maximum value. // Stretch: Elastic Transcoder stretches thumbnails to match the values that // you specified for thumbnail MaxWidth and MaxHeight settings. If the relative // proportions of the input video and thumbnails are different, the thumbnails // will be distorted. // Keep: Elastic Transcoder does not scale thumbnails. If either dimension of // the input video exceeds the values that you specified for thumbnail MaxWidth // and MaxHeight settings, Elastic Transcoder crops the thumbnails. // ShrinkToFit: Elastic Transcoder scales thumbnails down so that their dimensions // match the values that you specified for at least one of thumbnail MaxWidth // and MaxHeight without exceeding either value. If you specify this option, // Elastic Transcoder does not scale thumbnails up. // ShrinkToFill: Elastic Transcoder scales thumbnails down so that their dimensions // match the values that you specified for at least one of MaxWidth and MaxHeight // without dropping below either value. If you specify this option, Elastic // Transcoder does not scale thumbnails up. SizingPolicy *string `type:"string"` } // String returns the string representation func (s Thumbnails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Thumbnails) GoString() string { return s.String() } // Settings that determine when a clip begins and how long it lasts. type TimeSpan struct { _ struct{} `type:"structure"` // The duration of the clip. The format can be either HH:mm:ss.SSS (maximum // value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum // value: 86399.999). If you don't specify a value, Elastic Transcoder creates // an output file from StartTime to the end of the file. // // If you specify a value longer than the duration of the input file, Elastic // Transcoder transcodes the file and returns a warning message. Duration *string `type:"string"` // The place in the input file where you want a clip to start. The format can // be either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of // a second) or sssss.SSS (maximum value: 86399.999). If you don't specify a // value, Elastic Transcoder starts at the beginning of the input file. StartTime *string `type:"string"` } // String returns the string representation func (s TimeSpan) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TimeSpan) GoString() string { return s.String() } // Details about the timing of a job. type Timing struct { _ struct{} `type:"structure"` // The time the job finished transcoding, in epoch milliseconds. FinishTimeMillis *int64 `type:"long"` // The time the job began transcoding, in epoch milliseconds. StartTimeMillis *int64 `type:"long"` // The time the job was submitted to Elastic Transcoder, in epoch milliseconds. SubmitTimeMillis *int64 `type:"long"` } // String returns the string representation func (s Timing) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Timing) GoString() string { return s.String() } // The UpdatePipelineRequest structure. type UpdatePipelineInput struct { _ struct{} `type:"structure"` // The AWS Key Management Service (AWS KMS) key that you want to use with this // pipeline. // // If you use either S3 or S3-AWS-KMS as your Encryption:Mode, you don't need // to provide a key with your job because a default key, known as an AWS-KMS // key, is created for you automatically. You need to provide an AWS-KMS key // only if you want to use a non-default AWS-KMS key, or if you are using an // Encryption:Mode of AES-PKCS7, AES-CTR, or AES-GCM. AwsKmsKeyArn *string `type:"string"` // The optional ContentConfig object specifies information about the Amazon // S3 bucket in which you want Elastic Transcoder to save transcoded files and // playlists: which bucket to use, which users you want to have access to the // files, the type of access you want users to have, and the storage class that // you want to assign to the files. // // If you specify values for ContentConfig, you must also specify values for // ThumbnailConfig. // // If you specify values for ContentConfig and ThumbnailConfig, omit the OutputBucket // object. // // * Bucket: The Amazon S3 bucket in which you want Elastic Transcoder to // save transcoded files and playlists. // * Permissions (Optional): The Permissions object specifies which users // you want to have access to transcoded files and the type of access you // want them to have. You can grant permissions to a maximum of 30 users // and/or predefined Amazon S3 groups. // * Grantee Type: Specify the type of value that appears in the Grantee // object: Canonical: The value in the Grantee object is either the canonical // user ID for an AWS account or an origin access identity for an Amazon // CloudFront distribution. For more information about canonical user IDs, // see Access Control List (ACL) Overview in the Amazon Simple Storage Service // Developer Guide. For more information about using CloudFront origin access // identities to require that users use CloudFront URLs instead of Amazon // S3 URLs, see Using an Origin Access Identity to Restrict Access to Your // Amazon S3 Content. A canonical user ID is not the same as an AWS account // number. // Email: The value in the Grantee object is the registered email address of // an AWS account. // Group: The value in the Grantee object is one of the following predefined // Amazon S3 groups: AllUsers, AuthenticatedUsers, or LogDelivery. // // * Grantee: The AWS user or group that you want to have access to transcoded // files and playlists. To identify the user or group, you can specify the // canonical user ID for an AWS account, an origin access identity for a // CloudFront distribution, the registered email address of an AWS account, // or a predefined Amazon S3 group // * Access: The permission that you want to give to the AWS user that you // specified in Grantee. Permissions are granted on the files that Elastic // Transcoder adds to the bucket, including playlists and video files. Valid // values include: READ: The grantee can read the objects and metadata for // objects that Elastic Transcoder adds to the Amazon S3 bucket. // READ_ACP: The grantee can read the object ACL for objects that Elastic Transcoder // adds to the Amazon S3 bucket. // WRITE_ACP: The grantee can write the ACL for the objects that Elastic Transcoder // adds to the Amazon S3 bucket. // FULL_CONTROL: The grantee has READ, READ_ACP, and WRITE_ACP permissions for // the objects that Elastic Transcoder adds to the Amazon S3 bucket. // // * StorageClass: The Amazon S3 storage class, Standard or ReducedRedundancy, // that you want Elastic Transcoder to assign to the video files and playlists // that it stores in your Amazon S3 bucket. ContentConfig *PipelineOutputConfig `type:"structure"` // The ID of the pipeline that you want to update. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` // The Amazon S3 bucket in which you saved the media files that you want to // transcode and the graphics that you want to use as watermarks. InputBucket *string `type:"string"` // The name of the pipeline. We recommend that the name be unique within the // AWS account, but uniqueness is not enforced. // // Constraints: Maximum 40 characters Name *string `min:"1" type:"string"` // The Amazon Simple Notification Service (Amazon SNS) topic or topics to notify // in order to report job status. // // To receive notifications, you must also subscribe to the new topic in the // Amazon SNS console. Notifications *Notifications `type:"structure"` // The IAM Amazon Resource Name (ARN) for the role that you want Elastic Transcoder // to use to transcode jobs for this pipeline. Role *string `type:"string"` // The ThumbnailConfig object specifies several values, including the Amazon // S3 bucket in which you want Elastic Transcoder to save thumbnail files, which // users you want to have access to the files, the type of access you want users // to have, and the storage class that you want to assign to the files. // // If you specify values for ContentConfig, you must also specify values for // ThumbnailConfig even if you don't want to create thumbnails. // // If you specify values for ContentConfig and ThumbnailConfig, omit the OutputBucket // object. // // * Bucket: The Amazon S3 bucket in which you want Elastic Transcoder to // save thumbnail files. // * Permissions (Optional): The Permissions object specifies which users // and/or predefined Amazon S3 groups you want to have access to thumbnail // files, and the type of access you want them to have. You can grant permissions // to a maximum of 30 users and/or predefined Amazon S3 groups. // * GranteeType: Specify the type of value that appears in the Grantee object: // Canonical: The value in the Grantee object is either the canonical user // ID for an AWS account or an origin access identity for an Amazon CloudFront // distribution. A canonical user ID is not the same as an AWS account number. // // Email: The value in the Grantee object is the registered email address of // an AWS account. // Group: The value in the Grantee object is one of the following predefined // Amazon S3 groups: AllUsers, AuthenticatedUsers, or LogDelivery. // // * Grantee: The AWS user or group that you want to have access to thumbnail // files. To identify the user or group, you can specify the canonical user // ID for an AWS account, an origin access identity for a CloudFront distribution, // the registered email address of an AWS account, or a predefined Amazon // S3 group. // * Access: The permission that you want to give to the AWS user that you // specified in Grantee. Permissions are granted on the thumbnail files that // Elastic Transcoder adds to the bucket. Valid values include: READ: The // grantee can read the thumbnails and metadata for objects that Elastic // Transcoder adds to the Amazon S3 bucket. // READ_ACP: The grantee can read the object ACL for thumbnails that Elastic // Transcoder adds to the Amazon S3 bucket. // WRITE_ACP: The grantee can write the ACL for the thumbnails that Elastic // Transcoder adds to the Amazon S3 bucket. // FULL_CONTROL: The grantee has READ, READ_ACP, and WRITE_ACP permissions for // the thumbnails that Elastic Transcoder adds to the Amazon S3 bucket. // // * StorageClass: The Amazon S3 storage class, Standard or ReducedRedundancy, // that you want Elastic Transcoder to assign to the thumbnails that it stores // in your Amazon S3 bucket. ThumbnailConfig *PipelineOutputConfig `type:"structure"` } // String returns the string representation func (s UpdatePipelineInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdatePipelineInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdatePipelineInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdatePipelineInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.ContentConfig != nil { if err := s.ContentConfig.Validate(); err != nil { invalidParams.AddNested("ContentConfig", err.(request.ErrInvalidParams)) } } if s.ThumbnailConfig != nil { if err := s.ThumbnailConfig.Validate(); err != nil { invalidParams.AddNested("ThumbnailConfig", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The UpdatePipelineNotificationsRequest structure. type UpdatePipelineNotificationsInput struct { _ struct{} `type:"structure"` // The identifier of the pipeline for which you want to change notification // settings. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` // The topic ARN for the Amazon Simple Notification Service (Amazon SNS) topic // that you want to notify to report job status. // // To receive notifications, you must also subscribe to the new topic in the // Amazon SNS console. * Progressing: The topic ARN for the Amazon Simple Notification Service // (Amazon SNS) topic that you want to notify when Elastic Transcoder has // started to process jobs that are added to this pipeline. This is the ARN // that Amazon SNS returned when you created the topic. // * Completed: The topic ARN for the Amazon SNS topic that you want to notify // when Elastic Transcoder has finished processing a job. This is the ARN // that Amazon SNS returned when you created the topic. // * Warning: The topic ARN for the Amazon SNS topic that you want to notify // when Elastic Transcoder encounters a warning condition. This is the ARN // that Amazon SNS returned when you created the topic. // * Error: The topic ARN for the Amazon SNS topic that you want to notify // when Elastic Transcoder encounters an error condition. This is the ARN // that Amazon SNS returned when you created the topic. // // Notifications is a required field Notifications *Notifications `type:"structure" required:"true"` } // String returns the string representation func (s UpdatePipelineNotificationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdatePipelineNotificationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdatePipelineNotificationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdatePipelineNotificationsInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Notifications == nil { invalidParams.Add(request.NewErrParamRequired("Notifications")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The UpdatePipelineNotificationsResponse structure. type UpdatePipelineNotificationsOutput struct { _ struct{} `type:"structure"` // A section of the response body that provides information about the pipeline. Pipeline *Pipeline `type:"structure"` } // String returns the string representation func (s UpdatePipelineNotificationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdatePipelineNotificationsOutput) GoString() string { return s.String() } // When you update a pipeline, Elastic Transcoder returns the values that you // specified in the request. type UpdatePipelineOutput struct { _ struct{} `type:"structure"` // The pipeline (queue) that is used to manage jobs. Pipeline *Pipeline `type:"structure"` // Elastic Transcoder returns a warning if the resources used by your pipeline // are not in the same region as the pipeline. // // Using resources in the same region, such as your Amazon S3 buckets, Amazon // SNS notification topics, and AWS KMS key, reduces processing time and prevents // cross-regional charges. Warnings []*Warning `type:"list"` } // String returns the string representation func (s UpdatePipelineOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdatePipelineOutput) GoString() string { return s.String() } // The UpdatePipelineStatusRequest structure. type UpdatePipelineStatusInput struct { _ struct{} `type:"structure"` // The identifier of the pipeline to update. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` // The desired status of the pipeline: // // * Active: The pipeline is processing jobs. // * Paused: The pipeline is not currently processing jobs. // // Status is a required field Status *string `type:"string" required:"true"` } // String returns the string representation func (s UpdatePipelineStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdatePipelineStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdatePipelineStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdatePipelineStatusInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // When you update status for a pipeline, Elastic Transcoder returns the values // that you specified in the request. type UpdatePipelineStatusOutput struct { _ struct{} `type:"structure"` // A section of the response body that provides information about the pipeline. Pipeline *Pipeline `type:"structure"` } // String returns the string representation func (s UpdatePipelineStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdatePipelineStatusOutput) GoString() string { return s.String() } // The VideoParameters structure. type VideoParameters struct { _ struct{} `type:"structure"` // To better control resolution and aspect ratio of output videos, we recommend // that you use the values MaxWidth, MaxHeight, SizingPolicy, PaddingPolicy, // and DisplayAspectRatio instead of Resolution and AspectRatio. The two groups // of settings are mutually exclusive. Do not use them together. // // The display aspect ratio of the video in the output file. Valid values include: // // auto, 1:1, 4:3, 3:2, 16:9 // // If you specify auto, Elastic Transcoder tries to preserve the aspect ratio // of the input file. // // If you specify an aspect ratio for the output file that differs from aspect // ratio of the input file, Elastic Transcoder adds pillarboxing (black bars // on the sides) or letterboxing (black bars on the top and bottom) to maintain // the aspect ratio of the active region of the video. AspectRatio *string `type:"string"` // The bit rate of the video stream in the output file, in kilobits/second. // Valid values depend on the values of Level and Profile. If you specify auto, // Elastic Transcoder uses the detected bit rate of the input source. If you // specify a value other than auto, we recommend that you specify a value less // than or equal to the maximum H.264-compliant value listed for your level // and profile: // // Level - Maximum video bit rate in kilobits/second (baseline and main Profile) // : maximum video bit rate in kilobits/second (high Profile) // // * 1 - 64 : 80 // * 1b - 128 : 160 // * 1.1 - 192 : 240 // * 1.2 - 384 : 480 // * 1.3 - 768 : 960 // * 2 - 2000 : 2500 // * 3 - 10000 : 12500 // * 3.1 - 14000 : 17500 // * 3.2 - 20000 : 25000 // * 4 - 20000 : 25000 // * 4.1 - 50000 : 62500 BitRate *string `type:"string"` // The video codec for the output file. Valid values include gif, H.264, mpeg2, // and vp8. You can only specify vp8 when the container type is webm, gif when // the container type is gif, and mpeg2 when the container type is mpg. Codec *string `type:"string"` // Profile (H.264/VP8 Only) // // The H.264 profile that you want to use for the output file. Elastic Transcoder // supports the following profiles: // // * baseline: The profile most commonly used for videoconferencing and for // mobile applications. // * main: The profile used for standard-definition digital TV broadcasts. // // * high: The profile used for high-definition digital TV broadcasts and // for Blu-ray discs. // Level (H.264 Only) // // The H.264 level that you want to use for the output file. Elastic Transcoder // supports the following levels: // // 1, 1b, 1.1, 1.2, 1.3, 2, 2.1, 2.2, 3, 3.1, 3.2, 4, 4.1 // // MaxReferenceFrames (H.264 Only) // // Applicable only when the value of Video:Codec is H.264. The maximum number // of previously decoded frames to use as a reference for decoding future frames. // Valid values are integers 0 through 16, but we recommend that you not use // a value greater than the following: // // Min(Floor(Maximum decoded picture buffer in macroblocks * 256 / (Width in // pixels * Height in pixels)), 16) // // where Width in pixels and Height in pixels represent either MaxWidth and // MaxHeight, or Resolution. Maximum decoded picture buffer in macroblocks depends // on the value of the Level object. See the list below. (A macroblock is a // block of pixels measuring 16x16.) // // * 1 - 396 // * 1b - 396 // * 1.1 - 900 // * 1.2 - 2376 // * 1.3 - 2376 // * 2 - 2376 // * 2.1 - 4752 // * 2.2 - 8100 // * 3 - 8100 // * 3.1 - 18000 // * 3.2 - 20480 // * 4 - 32768 // * 4.1 - 32768 // MaxBitRate (Optional, H.264/MPEG2/VP8 only) // // The maximum number of bits per second in a video buffer; the size of the // buffer is specified by BufferSize. Specify a value between 16 and 62,500. // You can reduce the bandwidth required to stream a video by reducing the maximum // bit rate, but this also reduces the quality of the video. // // BufferSize (Optional, H.264/MPEG2/VP8 only) // // The maximum number of bits in any x seconds of the output video. This window // is commonly 10 seconds, the standard segment duration when you're using FMP4 // or MPEG-TS for the container type of the output video. Specify an integer // greater than 0. If you specify MaxBitRate and omit BufferSize, Elastic Transcoder // sets BufferSize to 10 times the value of MaxBitRate. // // InterlacedMode (Optional, H.264/MPEG2 Only) // // The interlace mode for the output video. // // Interlaced video is used to double the perceived frame rate for a video by // interlacing two fields (one field on every other line, the other field on // the other lines) so that the human eye registers multiple pictures per frame. // Interlacing reduces the bandwidth required for transmitting a video, but // can result in blurred images and flickering. // // Valid values include Progressive (no interlacing, top to bottom), TopFirst // (top field first), BottomFirst (bottom field first), and Auto. // // If InterlaceMode is not specified, Elastic Transcoder uses Progressive for // the output. If Auto is specified, Elastic Transcoder interlaces the output. // // ColorSpaceConversionMode (Optional, H.264/MPEG2 Only) // // The color space conversion Elastic Transcoder applies to the output video. // Color spaces are the algorithms used by the computer to store information // about how to render color. Bt.601 is the standard for standard definition // video, while Bt.709 is the standard for high definition video. // // Valid values include None, Bt709toBt601, Bt601toBt709, and Auto. // // If you chose Auto for ColorSpaceConversionMode and your output is interlaced, // your frame rate is one of 23.97, 24, 25, 29.97, 50, or 60, your SegmentDuration // is null, and you are using one of the resolution changes from the list below, // Elastic Transcoder applies the following color space conversions: // // * Standard to HD, 720x480 to 1920x1080 - Elastic Transcoder applies Bt601ToBt709 // // * Standard to HD, 720x576 to 1920x1080 - Elastic Transcoder applies Bt601ToBt709 // // * HD to Standard, 1920x1080 to 720x480 - Elastic Transcoder applies Bt709ToBt601 // // * HD to Standard, 1920x1080 to 720x576 - Elastic Transcoder applies Bt709ToBt601 // // Elastic Transcoder may change the behavior of the ColorspaceConversionModeAuto // mode in the future. All outputs in a playlist must use the same ColorSpaceConversionMode.If you do not specify a ColorSpaceConversionMode, Elastic Transcoder does // not change the color space of a file. If you are unsure what ColorSpaceConversionMode // was applied to your output file, you can check the AppliedColorSpaceConversion // parameter included in your job response. If your job does not have an AppliedColorSpaceConversion // in its response, no ColorSpaceConversionMode was applied. // // ChromaSubsampling // // The sampling pattern for the chroma (color) channels of the output video. // Valid values include yuv420p and yuv422p. // // yuv420p samples the chroma information of every other horizontal and every // other vertical line, yuv422p samples the color information of every horizontal // line and every other vertical line. // // LoopCount (Gif Only) // // The number of times you want the output gif to loop. Valid values include // Infinite and integers between 0 and 100, inclusive. CodecOptions map[string]*string `type:"map"` // The value that Elastic Transcoder adds to the metadata in the output file. DisplayAspectRatio *string `type:"string"` // Applicable only when the value of Video:Codec is one of H.264, MPEG2, or // VP8. // // Whether to use a fixed value for FixedGOP. Valid values are true and false: // // * true: Elastic Transcoder uses the value of KeyframesMaxDist for the // distance between key frames (the number of frames in a group of pictures, // or GOP). // * false: The distance between key frames can vary. // FixedGOP must be set to true for fmp4 containers. FixedGOP *string `type:"string"` // The frames per second for the video stream in the output file. Valid values // include: // // auto, 10, 15, 23.97, 24, 25, 29.97, 30, 60 // // If you specify auto, Elastic Transcoder uses the detected frame rate of the // input source. If you specify a frame rate, we recommend that you perform // the following calculation: // // Frame rate = maximum recommended decoding speed in luma samples/second / // (width in pixels * height in pixels) // // where: // // * width in pixels and height in pixels represent the Resolution of the // output video. // * maximum recommended decoding speed in Luma samples/second is less than // or equal to the maximum value listed in the following table, based on // the value that you specified for Level. // The maximum recommended decoding speed in Luma samples/second for each level // is described in the following list (Level - Decoding speed): // // * 1 - 380160 // * 1b - 380160 // * 1.1 - 76800 // * 1.2 - 1536000 // * 1.3 - 3041280 // * 2 - 3041280 // * 2.1 - 5068800 // * 2.2 - 5184000 // * 3 - 10368000 // * 3.1 - 27648000 // * 3.2 - 55296000 // * 4 - 62914560 // * 4.1 - 62914560 FrameRate *string `type:"string"` // Applicable only when the value of Video:Codec is one of H.264, MPEG2, or // VP8. // // The maximum number of frames between key frames. Key frames are fully encoded // frames; the frames between key frames are encoded based, in part, on the // content of the key frames. The value is an integer formatted as a string; // valid values are between 1 (every frame is a key frame) and 100000, inclusive. // A higher value results in higher compression but may also discernibly decrease // video quality. // // For Smooth outputs, the FrameRate must have a constant ratio to the KeyframesMaxDist. // This allows Smooth playlists to switch between different quality levels while // the file is being played. // // For example, an input file can have a FrameRate of 30 with a KeyframesMaxDist // of 90. The output file then needs to have a ratio of 1:3. Valid outputs would // have FrameRate of 30, 25, and 10, and KeyframesMaxDist of 90, 75, and 30, // respectively. // // Alternately, this can be achieved by setting FrameRate to auto and having // the same values for MaxFrameRate and KeyframesMaxDist. KeyframesMaxDist *string `type:"string"` // If you specify auto for FrameRate, Elastic Transcoder uses the frame rate // of the input video for the frame rate of the output video. Specify the maximum // frame rate that you want Elastic Transcoder to use when the frame rate of // the input video is greater than the desired maximum frame rate of the output // video. Valid values include: 10, 15, 23.97, 24, 25, 29.97, 30, 60. MaxFrameRate *string `type:"string"` // The maximum height of the output video in pixels. If you specify auto, Elastic // Transcoder uses 1080 (Full HD) as the default value. If you specify a numeric // value, enter an even integer between 96 and 3072. MaxHeight *string `type:"string"` // The maximum width of the output video in pixels. If you specify auto, Elastic // Transcoder uses 1920 (Full HD) as the default value. If you specify a numeric // value, enter an even integer between 128 and 4096. MaxWidth *string `type:"string"` // When you set PaddingPolicy to Pad, Elastic Transcoder may add black bars // to the top and bottom and/or left and right sides of the output video to // make the total size of the output video match the values that you specified // for MaxWidth and MaxHeight. PaddingPolicy *string `type:"string"` // To better control resolution and aspect ratio of output videos, we recommend // that you use the values MaxWidth, MaxHeight, SizingPolicy, PaddingPolicy, // and DisplayAspectRatio instead of Resolution and AspectRatio. The two groups // of settings are mutually exclusive. Do not use them together. // // The width and height of the video in the output file, in pixels. Valid values // are auto and width x height: // // * auto: Elastic Transcoder attempts to preserve the width and height of // the input file, subject to the following rules. // * width x height: The width and height of the output video in pixels. // // Note the following about specifying the width and height: // // * The width must be an even integer between 128 and 4096, inclusive. // * The height must be an even integer between 96 and 3072, inclusive. // * If you specify a resolution that is less than the resolution of the // input file, Elastic Transcoder rescales the output file to the lower resolution. // // * If you specify a resolution that is greater than the resolution of the // input file, Elastic Transcoder rescales the output to the higher resolution. // // * We recommend that you specify a resolution for which the product of // width and height is less than or equal to the applicable value in the // following list (List - Max width x height value): // * 1 - 25344 // 1b - 25344 // 1.1 - 101376 // 1.2 - 101376 // 1.3 - 101376 // 2 - 101376 // 2.1 - 202752 // 2.2 - 404720 // 3 - 404720 // 3.1 - 921600 // 3.2 - 1310720 // 4 - 2097152 // 4.1 - 2097152 Resolution *string `type:"string"` // Specify one of the following values to control scaling of the output video: // // Fit: Elastic Transcoder scales the output video so it matches the value that // you specified in either MaxWidth or MaxHeight without exceeding the other // value. // Fill: Elastic Transcoder scales the output video so it matches the value // that you specified in either MaxWidth or MaxHeight and matches or exceeds // the other value. Elastic Transcoder centers the output video and then crops // it in the dimension (if any) that exceeds the maximum value. // Stretch: Elastic Transcoder stretches the output video to match the values // that you specified for MaxWidth and MaxHeight. If the relative proportions // of the input video and the output video are different, the output video will // be distorted. // Keep: Elastic Transcoder does not scale the output video. If either dimension // of the input video exceeds the values that you specified for MaxWidth and // MaxHeight, Elastic Transcoder crops the output video. // ShrinkToFit: Elastic Transcoder scales the output video down so that its // dimensions match the values that you specified for at least one of MaxWidth // and MaxHeight without exceeding either value. If you specify this option, // Elastic Transcoder does not scale the video up. // ShrinkToFill: Elastic Transcoder scales the output video down so that its // dimensions match the values that you specified for at least one of MaxWidth // and MaxHeight without dropping below either value. If you specify this option, // Elastic Transcoder does not scale the video up. SizingPolicy *string `type:"string"` // Settings for the size, location, and opacity of graphics that you want Elastic // Transcoder to overlay over videos that are transcoded using this preset. // You can specify settings for up to four watermarks. Watermarks appear in // the specified size and location, and with the specified opacity for the duration // of the transcoded video. // // Watermarks can be in .png or .jpg format. If you want to display a watermark // that is not rectangular, use the .png format, which supports transparency. // // When you create a job that uses this preset, you specify the .png or .jpg // graphics that you want Elastic Transcoder to include in the transcoded videos. // You can specify fewer graphics in the job than you specify watermark settings // in the preset, which allows you to use the same preset for up to four watermarks // that have different dimensions. Watermarks []*PresetWatermark `type:"list"` } // String returns the string representation func (s VideoParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VideoParameters) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *VideoParameters) Validate() error { invalidParams := request.ErrInvalidParams{Context: "VideoParameters"} if s.Watermarks != nil { for i, v := range s.Watermarks { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Watermarks", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Elastic Transcoder returns a warning if the resources used by your pipeline // are not in the same region as the pipeline. // // Using resources in the same region, such as your Amazon S3 buckets, Amazon // SNS notification topics, and AWS KMS key, reduces processing time and prevents // cross-regional charges. type Warning struct { _ struct{} `type:"structure"` // The code of the cross-regional warning. Code *string `type:"string"` // The message explaining what resources are in a different region from the // pipeline. // // Note: AWS KMS keys must be in the same region as the pipeline. Message *string `type:"string"` } // String returns the string representation func (s Warning) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Warning) GoString() string { return s.String() } aws-sdk-go-1.4.22/service/elastictranscoder/elastictranscoderiface/000077500000000000000000000000001300374646400254355ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/elastictranscoder/elastictranscoderiface/interface.go000066400000000000000000000151701300374646400277300ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package elastictranscoderiface provides an interface to enable mocking the Amazon Elastic Transcoder service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package elastictranscoderiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/elastictranscoder" ) // ElasticTranscoderAPI provides an interface to enable mocking the // elastictranscoder.ElasticTranscoder service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Elastic Transcoder. // func myFunc(svc elastictranscoderiface.ElasticTranscoderAPI) bool { // // Make svc.CancelJob request // } // // func main() { // sess := session.New() // svc := elastictranscoder.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockElasticTranscoderClient struct { // elastictranscoderiface.ElasticTranscoderAPI // } // func (m *mockElasticTranscoderClient) CancelJob(input *elastictranscoder.CancelJobInput) (*elastictranscoder.CancelJobOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockElasticTranscoderClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type ElasticTranscoderAPI interface { CancelJobRequest(*elastictranscoder.CancelJobInput) (*request.Request, *elastictranscoder.CancelJobOutput) CancelJob(*elastictranscoder.CancelJobInput) (*elastictranscoder.CancelJobOutput, error) CreateJobRequest(*elastictranscoder.CreateJobInput) (*request.Request, *elastictranscoder.CreateJobResponse) CreateJob(*elastictranscoder.CreateJobInput) (*elastictranscoder.CreateJobResponse, error) CreatePipelineRequest(*elastictranscoder.CreatePipelineInput) (*request.Request, *elastictranscoder.CreatePipelineOutput) CreatePipeline(*elastictranscoder.CreatePipelineInput) (*elastictranscoder.CreatePipelineOutput, error) CreatePresetRequest(*elastictranscoder.CreatePresetInput) (*request.Request, *elastictranscoder.CreatePresetOutput) CreatePreset(*elastictranscoder.CreatePresetInput) (*elastictranscoder.CreatePresetOutput, error) DeletePipelineRequest(*elastictranscoder.DeletePipelineInput) (*request.Request, *elastictranscoder.DeletePipelineOutput) DeletePipeline(*elastictranscoder.DeletePipelineInput) (*elastictranscoder.DeletePipelineOutput, error) DeletePresetRequest(*elastictranscoder.DeletePresetInput) (*request.Request, *elastictranscoder.DeletePresetOutput) DeletePreset(*elastictranscoder.DeletePresetInput) (*elastictranscoder.DeletePresetOutput, error) ListJobsByPipelineRequest(*elastictranscoder.ListJobsByPipelineInput) (*request.Request, *elastictranscoder.ListJobsByPipelineOutput) ListJobsByPipeline(*elastictranscoder.ListJobsByPipelineInput) (*elastictranscoder.ListJobsByPipelineOutput, error) ListJobsByPipelinePages(*elastictranscoder.ListJobsByPipelineInput, func(*elastictranscoder.ListJobsByPipelineOutput, bool) bool) error ListJobsByStatusRequest(*elastictranscoder.ListJobsByStatusInput) (*request.Request, *elastictranscoder.ListJobsByStatusOutput) ListJobsByStatus(*elastictranscoder.ListJobsByStatusInput) (*elastictranscoder.ListJobsByStatusOutput, error) ListJobsByStatusPages(*elastictranscoder.ListJobsByStatusInput, func(*elastictranscoder.ListJobsByStatusOutput, bool) bool) error ListPipelinesRequest(*elastictranscoder.ListPipelinesInput) (*request.Request, *elastictranscoder.ListPipelinesOutput) ListPipelines(*elastictranscoder.ListPipelinesInput) (*elastictranscoder.ListPipelinesOutput, error) ListPipelinesPages(*elastictranscoder.ListPipelinesInput, func(*elastictranscoder.ListPipelinesOutput, bool) bool) error ListPresetsRequest(*elastictranscoder.ListPresetsInput) (*request.Request, *elastictranscoder.ListPresetsOutput) ListPresets(*elastictranscoder.ListPresetsInput) (*elastictranscoder.ListPresetsOutput, error) ListPresetsPages(*elastictranscoder.ListPresetsInput, func(*elastictranscoder.ListPresetsOutput, bool) bool) error ReadJobRequest(*elastictranscoder.ReadJobInput) (*request.Request, *elastictranscoder.ReadJobOutput) ReadJob(*elastictranscoder.ReadJobInput) (*elastictranscoder.ReadJobOutput, error) ReadPipelineRequest(*elastictranscoder.ReadPipelineInput) (*request.Request, *elastictranscoder.ReadPipelineOutput) ReadPipeline(*elastictranscoder.ReadPipelineInput) (*elastictranscoder.ReadPipelineOutput, error) ReadPresetRequest(*elastictranscoder.ReadPresetInput) (*request.Request, *elastictranscoder.ReadPresetOutput) ReadPreset(*elastictranscoder.ReadPresetInput) (*elastictranscoder.ReadPresetOutput, error) TestRoleRequest(*elastictranscoder.TestRoleInput) (*request.Request, *elastictranscoder.TestRoleOutput) TestRole(*elastictranscoder.TestRoleInput) (*elastictranscoder.TestRoleOutput, error) UpdatePipelineRequest(*elastictranscoder.UpdatePipelineInput) (*request.Request, *elastictranscoder.UpdatePipelineOutput) UpdatePipeline(*elastictranscoder.UpdatePipelineInput) (*elastictranscoder.UpdatePipelineOutput, error) UpdatePipelineNotificationsRequest(*elastictranscoder.UpdatePipelineNotificationsInput) (*request.Request, *elastictranscoder.UpdatePipelineNotificationsOutput) UpdatePipelineNotifications(*elastictranscoder.UpdatePipelineNotificationsInput) (*elastictranscoder.UpdatePipelineNotificationsOutput, error) UpdatePipelineStatusRequest(*elastictranscoder.UpdatePipelineStatusInput) (*request.Request, *elastictranscoder.UpdatePipelineStatusOutput) UpdatePipelineStatus(*elastictranscoder.UpdatePipelineStatusInput) (*elastictranscoder.UpdatePipelineStatusOutput, error) WaitUntilJobComplete(*elastictranscoder.ReadJobInput) error } var _ ElasticTranscoderAPI = (*elastictranscoder.ElasticTranscoder)(nil) aws-sdk-go-1.4.22/service/elastictranscoder/examples_test.go000066400000000000000000000601361300374646400241460ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package elastictranscoder_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/elastictranscoder" ) var _ time.Duration var _ bytes.Buffer func ExampleElasticTranscoder_CancelJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elastictranscoder.New(sess) params := &elastictranscoder.CancelJobInput{ Id: aws.String("Id"), // Required } resp, err := svc.CancelJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticTranscoder_CreateJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elastictranscoder.New(sess) params := &elastictranscoder.CreateJobInput{ Input: &elastictranscoder.JobInput{ // Required AspectRatio: aws.String("AspectRatio"), Container: aws.String("JobContainer"), DetectedProperties: &elastictranscoder.DetectedProperties{ DurationMillis: aws.Int64(1), FileSize: aws.Int64(1), FrameRate: aws.String("FloatString"), Height: aws.Int64(1), Width: aws.Int64(1), }, Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, FrameRate: aws.String("FrameRate"), Interlaced: aws.String("Interlaced"), Key: aws.String("LongKey"), Resolution: aws.String("Resolution"), }, PipelineId: aws.String("Id"), // Required Output: &elastictranscoder.CreateJobOutput{ AlbumArt: &elastictranscoder.JobAlbumArt{ Artwork: []*elastictranscoder.Artwork{ { // Required AlbumArtFormat: aws.String("JpgOrPng"), Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, InputKey: aws.String("WatermarkKey"), MaxHeight: aws.String("DigitsOrAuto"), MaxWidth: aws.String("DigitsOrAuto"), PaddingPolicy: aws.String("PaddingPolicy"), SizingPolicy: aws.String("SizingPolicy"), }, // More values... }, MergePolicy: aws.String("MergePolicy"), }, Captions: &elastictranscoder.Captions{ CaptionFormats: []*elastictranscoder.CaptionFormat{ { // Required Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, Format: aws.String("CaptionFormatFormat"), Pattern: aws.String("CaptionFormatPattern"), }, // More values... }, CaptionSources: []*elastictranscoder.CaptionSource{ { // Required Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, Key: aws.String("LongKey"), Label: aws.String("Name"), Language: aws.String("Key"), TimeOffset: aws.String("TimeOffset"), }, // More values... }, MergePolicy: aws.String("CaptionMergePolicy"), }, Composition: []*elastictranscoder.Clip{ { // Required TimeSpan: &elastictranscoder.TimeSpan{ Duration: aws.String("Time"), StartTime: aws.String("Time"), }, }, // More values... }, Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, Key: aws.String("Key"), PresetId: aws.String("Id"), Rotate: aws.String("Rotate"), SegmentDuration: aws.String("FloatString"), ThumbnailEncryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, ThumbnailPattern: aws.String("ThumbnailPattern"), Watermarks: []*elastictranscoder.JobWatermark{ { // Required Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, InputKey: aws.String("WatermarkKey"), PresetWatermarkId: aws.String("PresetWatermarkId"), }, // More values... }, }, OutputKeyPrefix: aws.String("Key"), Outputs: []*elastictranscoder.CreateJobOutput{ { // Required AlbumArt: &elastictranscoder.JobAlbumArt{ Artwork: []*elastictranscoder.Artwork{ { // Required AlbumArtFormat: aws.String("JpgOrPng"), Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, InputKey: aws.String("WatermarkKey"), MaxHeight: aws.String("DigitsOrAuto"), MaxWidth: aws.String("DigitsOrAuto"), PaddingPolicy: aws.String("PaddingPolicy"), SizingPolicy: aws.String("SizingPolicy"), }, // More values... }, MergePolicy: aws.String("MergePolicy"), }, Captions: &elastictranscoder.Captions{ CaptionFormats: []*elastictranscoder.CaptionFormat{ { // Required Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, Format: aws.String("CaptionFormatFormat"), Pattern: aws.String("CaptionFormatPattern"), }, // More values... }, CaptionSources: []*elastictranscoder.CaptionSource{ { // Required Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, Key: aws.String("LongKey"), Label: aws.String("Name"), Language: aws.String("Key"), TimeOffset: aws.String("TimeOffset"), }, // More values... }, MergePolicy: aws.String("CaptionMergePolicy"), }, Composition: []*elastictranscoder.Clip{ { // Required TimeSpan: &elastictranscoder.TimeSpan{ Duration: aws.String("Time"), StartTime: aws.String("Time"), }, }, // More values... }, Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, Key: aws.String("Key"), PresetId: aws.String("Id"), Rotate: aws.String("Rotate"), SegmentDuration: aws.String("FloatString"), ThumbnailEncryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, ThumbnailPattern: aws.String("ThumbnailPattern"), Watermarks: []*elastictranscoder.JobWatermark{ { // Required Encryption: &elastictranscoder.Encryption{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), Mode: aws.String("EncryptionMode"), }, InputKey: aws.String("WatermarkKey"), PresetWatermarkId: aws.String("PresetWatermarkId"), }, // More values... }, }, // More values... }, Playlists: []*elastictranscoder.CreateJobPlaylist{ { // Required Format: aws.String("PlaylistFormat"), HlsContentProtection: &elastictranscoder.HlsContentProtection{ InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("Base64EncodedString"), KeyMd5: aws.String("Base64EncodedString"), KeyStoragePolicy: aws.String("KeyStoragePolicy"), LicenseAcquisitionUrl: aws.String("ZeroTo512String"), Method: aws.String("HlsContentProtectionMethod"), }, Name: aws.String("Filename"), OutputKeys: []*string{ aws.String("Key"), // Required // More values... }, PlayReadyDrm: &elastictranscoder.PlayReadyDrm{ Format: aws.String("PlayReadyDrmFormatString"), InitializationVector: aws.String("ZeroTo255String"), Key: aws.String("NonEmptyBase64EncodedString"), KeyId: aws.String("KeyIdGuid"), KeyMd5: aws.String("NonEmptyBase64EncodedString"), LicenseAcquisitionUrl: aws.String("OneTo512String"), }, }, // More values... }, UserMetadata: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, } resp, err := svc.CreateJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticTranscoder_CreatePipeline() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elastictranscoder.New(sess) params := &elastictranscoder.CreatePipelineInput{ InputBucket: aws.String("BucketName"), // Required Name: aws.String("Name"), // Required Role: aws.String("Role"), // Required AwsKmsKeyArn: aws.String("KeyArn"), ContentConfig: &elastictranscoder.PipelineOutputConfig{ Bucket: aws.String("BucketName"), Permissions: []*elastictranscoder.Permission{ { // Required Access: []*string{ aws.String("AccessControl"), // Required // More values... }, Grantee: aws.String("Grantee"), GranteeType: aws.String("GranteeType"), }, // More values... }, StorageClass: aws.String("StorageClass"), }, Notifications: &elastictranscoder.Notifications{ Completed: aws.String("SnsTopic"), Error: aws.String("SnsTopic"), Progressing: aws.String("SnsTopic"), Warning: aws.String("SnsTopic"), }, OutputBucket: aws.String("BucketName"), ThumbnailConfig: &elastictranscoder.PipelineOutputConfig{ Bucket: aws.String("BucketName"), Permissions: []*elastictranscoder.Permission{ { // Required Access: []*string{ aws.String("AccessControl"), // Required // More values... }, Grantee: aws.String("Grantee"), GranteeType: aws.String("GranteeType"), }, // More values... }, StorageClass: aws.String("StorageClass"), }, } resp, err := svc.CreatePipeline(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticTranscoder_CreatePreset() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elastictranscoder.New(sess) params := &elastictranscoder.CreatePresetInput{ Container: aws.String("PresetContainer"), // Required Name: aws.String("Name"), // Required Audio: &elastictranscoder.AudioParameters{ AudioPackingMode: aws.String("AudioPackingMode"), BitRate: aws.String("AudioBitRate"), Channels: aws.String("AudioChannels"), Codec: aws.String("AudioCodec"), CodecOptions: &elastictranscoder.AudioCodecOptions{ BitDepth: aws.String("AudioBitDepth"), BitOrder: aws.String("AudioBitOrder"), Profile: aws.String("AudioCodecProfile"), Signed: aws.String("AudioSigned"), }, SampleRate: aws.String("AudioSampleRate"), }, Description: aws.String("Description"), Thumbnails: &elastictranscoder.Thumbnails{ AspectRatio: aws.String("AspectRatio"), Format: aws.String("JpgOrPng"), Interval: aws.String("Digits"), MaxHeight: aws.String("DigitsOrAuto"), MaxWidth: aws.String("DigitsOrAuto"), PaddingPolicy: aws.String("PaddingPolicy"), Resolution: aws.String("ThumbnailResolution"), SizingPolicy: aws.String("SizingPolicy"), }, Video: &elastictranscoder.VideoParameters{ AspectRatio: aws.String("AspectRatio"), BitRate: aws.String("VideoBitRate"), Codec: aws.String("VideoCodec"), CodecOptions: map[string]*string{ "Key": aws.String("CodecOption"), // Required // More values... }, DisplayAspectRatio: aws.String("AspectRatio"), FixedGOP: aws.String("FixedGOP"), FrameRate: aws.String("FrameRate"), KeyframesMaxDist: aws.String("KeyframesMaxDist"), MaxFrameRate: aws.String("MaxFrameRate"), MaxHeight: aws.String("DigitsOrAuto"), MaxWidth: aws.String("DigitsOrAuto"), PaddingPolicy: aws.String("PaddingPolicy"), Resolution: aws.String("Resolution"), SizingPolicy: aws.String("SizingPolicy"), Watermarks: []*elastictranscoder.PresetWatermark{ { // Required HorizontalAlign: aws.String("HorizontalAlign"), HorizontalOffset: aws.String("PixelsOrPercent"), Id: aws.String("PresetWatermarkId"), MaxHeight: aws.String("PixelsOrPercent"), MaxWidth: aws.String("PixelsOrPercent"), Opacity: aws.String("Opacity"), SizingPolicy: aws.String("WatermarkSizingPolicy"), Target: aws.String("Target"), VerticalAlign: aws.String("VerticalAlign"), VerticalOffset: aws.String("PixelsOrPercent"), }, // More values... }, }, } resp, err := svc.CreatePreset(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticTranscoder_DeletePipeline() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elastictranscoder.New(sess) params := &elastictranscoder.DeletePipelineInput{ Id: aws.String("Id"), // Required } resp, err := svc.DeletePipeline(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticTranscoder_DeletePreset() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elastictranscoder.New(sess) params := &elastictranscoder.DeletePresetInput{ Id: aws.String("Id"), // Required } resp, err := svc.DeletePreset(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticTranscoder_ListJobsByPipeline() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elastictranscoder.New(sess) params := &elastictranscoder.ListJobsByPipelineInput{ PipelineId: aws.String("Id"), // Required Ascending: aws.String("Ascending"), PageToken: aws.String("Id"), } resp, err := svc.ListJobsByPipeline(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticTranscoder_ListJobsByStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elastictranscoder.New(sess) params := &elastictranscoder.ListJobsByStatusInput{ Status: aws.String("JobStatus"), // Required Ascending: aws.String("Ascending"), PageToken: aws.String("Id"), } resp, err := svc.ListJobsByStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticTranscoder_ListPipelines() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elastictranscoder.New(sess) params := &elastictranscoder.ListPipelinesInput{ Ascending: aws.String("Ascending"), PageToken: aws.String("Id"), } resp, err := svc.ListPipelines(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticTranscoder_ListPresets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elastictranscoder.New(sess) params := &elastictranscoder.ListPresetsInput{ Ascending: aws.String("Ascending"), PageToken: aws.String("Id"), } resp, err := svc.ListPresets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticTranscoder_ReadJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elastictranscoder.New(sess) params := &elastictranscoder.ReadJobInput{ Id: aws.String("Id"), // Required } resp, err := svc.ReadJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticTranscoder_ReadPipeline() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elastictranscoder.New(sess) params := &elastictranscoder.ReadPipelineInput{ Id: aws.String("Id"), // Required } resp, err := svc.ReadPipeline(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticTranscoder_ReadPreset() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elastictranscoder.New(sess) params := &elastictranscoder.ReadPresetInput{ Id: aws.String("Id"), // Required } resp, err := svc.ReadPreset(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticTranscoder_TestRole() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elastictranscoder.New(sess) params := &elastictranscoder.TestRoleInput{ InputBucket: aws.String("BucketName"), // Required OutputBucket: aws.String("BucketName"), // Required Role: aws.String("Role"), // Required Topics: []*string{ // Required aws.String("SnsTopic"), // Required // More values... }, } resp, err := svc.TestRole(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticTranscoder_UpdatePipeline() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elastictranscoder.New(sess) params := &elastictranscoder.UpdatePipelineInput{ Id: aws.String("Id"), // Required AwsKmsKeyArn: aws.String("KeyArn"), ContentConfig: &elastictranscoder.PipelineOutputConfig{ Bucket: aws.String("BucketName"), Permissions: []*elastictranscoder.Permission{ { // Required Access: []*string{ aws.String("AccessControl"), // Required // More values... }, Grantee: aws.String("Grantee"), GranteeType: aws.String("GranteeType"), }, // More values... }, StorageClass: aws.String("StorageClass"), }, InputBucket: aws.String("BucketName"), Name: aws.String("Name"), Notifications: &elastictranscoder.Notifications{ Completed: aws.String("SnsTopic"), Error: aws.String("SnsTopic"), Progressing: aws.String("SnsTopic"), Warning: aws.String("SnsTopic"), }, Role: aws.String("Role"), ThumbnailConfig: &elastictranscoder.PipelineOutputConfig{ Bucket: aws.String("BucketName"), Permissions: []*elastictranscoder.Permission{ { // Required Access: []*string{ aws.String("AccessControl"), // Required // More values... }, Grantee: aws.String("Grantee"), GranteeType: aws.String("GranteeType"), }, // More values... }, StorageClass: aws.String("StorageClass"), }, } resp, err := svc.UpdatePipeline(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticTranscoder_UpdatePipelineNotifications() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elastictranscoder.New(sess) params := &elastictranscoder.UpdatePipelineNotificationsInput{ Id: aws.String("Id"), // Required Notifications: &elastictranscoder.Notifications{ // Required Completed: aws.String("SnsTopic"), Error: aws.String("SnsTopic"), Progressing: aws.String("SnsTopic"), Warning: aws.String("SnsTopic"), }, } resp, err := svc.UpdatePipelineNotifications(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleElasticTranscoder_UpdatePipelineStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elastictranscoder.New(sess) params := &elastictranscoder.UpdatePipelineStatusInput{ Id: aws.String("Id"), // Required Status: aws.String("PipelineStatus"), // Required } resp, err := svc.UpdatePipelineStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/elastictranscoder/service.go000066400000000000000000000054071300374646400227310ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package elastictranscoder import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) // The AWS Elastic Transcoder Service. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type ElasticTranscoder struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "elastictranscoder" // New creates a new instance of the ElasticTranscoder client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a ElasticTranscoder client from just a session. // svc := elastictranscoder.New(mySession) // // // Create a ElasticTranscoder client with additional configuration // svc := elastictranscoder.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *ElasticTranscoder { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *ElasticTranscoder { svc := &ElasticTranscoder{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2012-09-25", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a ElasticTranscoder operation and runs any // custom request initialization. func (c *ElasticTranscoder) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/elastictranscoder/waiters.go000066400000000000000000000017621300374646400227470ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package elastictranscoder import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilJobComplete uses the Amazon Elastic Transcoder API operation // ReadJob to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *ElasticTranscoder) WaitUntilJobComplete(input *ReadJobInput) error { waiterCfg := waiter.Config{ Operation: "ReadJob", Delay: 30, MaxAttempts: 120, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "path", Argument: "Job.Status", Expected: "Complete", }, { State: "failure", Matcher: "path", Argument: "Job.Status", Expected: "Canceled", }, { State: "failure", Matcher: "path", Argument: "Job.Status", Expected: "Error", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/elb/000077500000000000000000000000001300374646400157655ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/elb/api.go000066400000000000000000005030761300374646400171000ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package elb provides a client for Elastic Load Balancing. package elb import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opAddTags = "AddTags" // AddTagsRequest generates a "aws/request.Request" representing the // client's request for the AddTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddTagsRequest method. // req, resp := client.AddTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) AddTagsRequest(input *AddTagsInput) (req *request.Request, output *AddTagsOutput) { op := &request.Operation{ Name: opAddTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddTagsInput{} } req = c.newRequest(op, input, output) output = &AddTagsOutput{} req.Data = output return } // AddTags API operation for Elastic Load Balancing. // // Adds the specified tags to the specified load balancer. Each load balancer // can have a maximum of 10 tags. // // Each tag consists of a key and an optional value. If a tag with the same // key is already associated with the load balancer, AddTags updates its value. // // For more information, see Tag Your Classic Load Balancer (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/add-remove-tags.html) // in the Classic Load Balancers Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation AddTags for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * TooManyTags // The quota for the number of tags that can be assigned to a load balancer // has been reached. // // * DuplicateTagKeys // A tag key was specified more than once. // func (c *ELB) AddTags(input *AddTagsInput) (*AddTagsOutput, error) { req, out := c.AddTagsRequest(input) err := req.Send() return out, err } const opApplySecurityGroupsToLoadBalancer = "ApplySecurityGroupsToLoadBalancer" // ApplySecurityGroupsToLoadBalancerRequest generates a "aws/request.Request" representing the // client's request for the ApplySecurityGroupsToLoadBalancer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ApplySecurityGroupsToLoadBalancer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ApplySecurityGroupsToLoadBalancer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ApplySecurityGroupsToLoadBalancerRequest method. // req, resp := client.ApplySecurityGroupsToLoadBalancerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) ApplySecurityGroupsToLoadBalancerRequest(input *ApplySecurityGroupsToLoadBalancerInput) (req *request.Request, output *ApplySecurityGroupsToLoadBalancerOutput) { op := &request.Operation{ Name: opApplySecurityGroupsToLoadBalancer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ApplySecurityGroupsToLoadBalancerInput{} } req = c.newRequest(op, input, output) output = &ApplySecurityGroupsToLoadBalancerOutput{} req.Data = output return } // ApplySecurityGroupsToLoadBalancer API operation for Elastic Load Balancing. // // Associates one or more security groups with your load balancer in a virtual // private cloud (VPC). The specified security groups override the previously // associated security groups. // // For more information, see Security Groups for Load Balancers in a VPC (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-security-groups.html#elb-vpc-security-groups) // in the Classic Load Balancers Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation ApplySecurityGroupsToLoadBalancer for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * InvalidConfigurationRequest // The requested configuration change is not valid. // // * InvalidSecurityGroup // One or more of the specified security groups do not exist. // func (c *ELB) ApplySecurityGroupsToLoadBalancer(input *ApplySecurityGroupsToLoadBalancerInput) (*ApplySecurityGroupsToLoadBalancerOutput, error) { req, out := c.ApplySecurityGroupsToLoadBalancerRequest(input) err := req.Send() return out, err } const opAttachLoadBalancerToSubnets = "AttachLoadBalancerToSubnets" // AttachLoadBalancerToSubnetsRequest generates a "aws/request.Request" representing the // client's request for the AttachLoadBalancerToSubnets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AttachLoadBalancerToSubnets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AttachLoadBalancerToSubnets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AttachLoadBalancerToSubnetsRequest method. // req, resp := client.AttachLoadBalancerToSubnetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) AttachLoadBalancerToSubnetsRequest(input *AttachLoadBalancerToSubnetsInput) (req *request.Request, output *AttachLoadBalancerToSubnetsOutput) { op := &request.Operation{ Name: opAttachLoadBalancerToSubnets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AttachLoadBalancerToSubnetsInput{} } req = c.newRequest(op, input, output) output = &AttachLoadBalancerToSubnetsOutput{} req.Data = output return } // AttachLoadBalancerToSubnets API operation for Elastic Load Balancing. // // Adds one or more subnets to the set of configured subnets for the specified // load balancer. // // The load balancer evenly distributes requests across all registered subnets. // For more information, see Add or Remove Subnets for Your Load Balancer in // a VPC (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-manage-subnets.html) // in the Classic Load Balancers Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation AttachLoadBalancerToSubnets for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * InvalidConfigurationRequest // The requested configuration change is not valid. // // * SubnetNotFound // One or more of the specified subnets do not exist. // // * InvalidSubnet // The specified VPC has no associated Internet gateway. // func (c *ELB) AttachLoadBalancerToSubnets(input *AttachLoadBalancerToSubnetsInput) (*AttachLoadBalancerToSubnetsOutput, error) { req, out := c.AttachLoadBalancerToSubnetsRequest(input) err := req.Send() return out, err } const opConfigureHealthCheck = "ConfigureHealthCheck" // ConfigureHealthCheckRequest generates a "aws/request.Request" representing the // client's request for the ConfigureHealthCheck operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ConfigureHealthCheck for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ConfigureHealthCheck method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ConfigureHealthCheckRequest method. // req, resp := client.ConfigureHealthCheckRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) ConfigureHealthCheckRequest(input *ConfigureHealthCheckInput) (req *request.Request, output *ConfigureHealthCheckOutput) { op := &request.Operation{ Name: opConfigureHealthCheck, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ConfigureHealthCheckInput{} } req = c.newRequest(op, input, output) output = &ConfigureHealthCheckOutput{} req.Data = output return } // ConfigureHealthCheck API operation for Elastic Load Balancing. // // Specifies the health check settings to use when evaluating the health state // of your EC2 instances. // // For more information, see Configure Health Checks for Your Load Balancer // (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-healthchecks.html) // in the Classic Load Balancers Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation ConfigureHealthCheck for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // func (c *ELB) ConfigureHealthCheck(input *ConfigureHealthCheckInput) (*ConfigureHealthCheckOutput, error) { req, out := c.ConfigureHealthCheckRequest(input) err := req.Send() return out, err } const opCreateAppCookieStickinessPolicy = "CreateAppCookieStickinessPolicy" // CreateAppCookieStickinessPolicyRequest generates a "aws/request.Request" representing the // client's request for the CreateAppCookieStickinessPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateAppCookieStickinessPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateAppCookieStickinessPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateAppCookieStickinessPolicyRequest method. // req, resp := client.CreateAppCookieStickinessPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) CreateAppCookieStickinessPolicyRequest(input *CreateAppCookieStickinessPolicyInput) (req *request.Request, output *CreateAppCookieStickinessPolicyOutput) { op := &request.Operation{ Name: opCreateAppCookieStickinessPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateAppCookieStickinessPolicyInput{} } req = c.newRequest(op, input, output) output = &CreateAppCookieStickinessPolicyOutput{} req.Data = output return } // CreateAppCookieStickinessPolicy API operation for Elastic Load Balancing. // // Generates a stickiness policy with sticky session lifetimes that follow that // of an application-generated cookie. This policy can be associated only with // HTTP/HTTPS listeners. // // This policy is similar to the policy created by CreateLBCookieStickinessPolicy, // except that the lifetime of the special Elastic Load Balancing cookie, AWSELB, // follows the lifetime of the application-generated cookie specified in the // policy configuration. The load balancer only inserts a new stickiness cookie // when the application response includes a new application cookie. // // If the application cookie is explicitly removed or expires, the session stops // being sticky until a new application cookie is issued. // // For more information, see Application-Controlled Session Stickiness (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-sticky-sessions.html#enable-sticky-sessions-application) // in the Classic Load Balancers Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation CreateAppCookieStickinessPolicy for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * DuplicatePolicyName // A policy with the specified name already exists for this load balancer. // // * TooManyPolicies // The quota for the number of policies for this load balancer has been reached. // // * InvalidConfigurationRequest // The requested configuration change is not valid. // func (c *ELB) CreateAppCookieStickinessPolicy(input *CreateAppCookieStickinessPolicyInput) (*CreateAppCookieStickinessPolicyOutput, error) { req, out := c.CreateAppCookieStickinessPolicyRequest(input) err := req.Send() return out, err } const opCreateLBCookieStickinessPolicy = "CreateLBCookieStickinessPolicy" // CreateLBCookieStickinessPolicyRequest generates a "aws/request.Request" representing the // client's request for the CreateLBCookieStickinessPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateLBCookieStickinessPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateLBCookieStickinessPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateLBCookieStickinessPolicyRequest method. // req, resp := client.CreateLBCookieStickinessPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) CreateLBCookieStickinessPolicyRequest(input *CreateLBCookieStickinessPolicyInput) (req *request.Request, output *CreateLBCookieStickinessPolicyOutput) { op := &request.Operation{ Name: opCreateLBCookieStickinessPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateLBCookieStickinessPolicyInput{} } req = c.newRequest(op, input, output) output = &CreateLBCookieStickinessPolicyOutput{} req.Data = output return } // CreateLBCookieStickinessPolicy API operation for Elastic Load Balancing. // // Generates a stickiness policy with sticky session lifetimes controlled by // the lifetime of the browser (user-agent) or a specified expiration period. // This policy can be associated only with HTTP/HTTPS listeners. // // When a load balancer implements this policy, the load balancer uses a special // cookie to track the instance for each request. When the load balancer receives // a request, it first checks to see if this cookie is present in the request. // If so, the load balancer sends the request to the application server specified // in the cookie. If not, the load balancer sends the request to a server that // is chosen based on the existing load-balancing algorithm. // // A cookie is inserted into the response for binding subsequent requests from // the same user to that server. The validity of the cookie is based on the // cookie expiration time, which is specified in the policy configuration. // // For more information, see Duration-Based Session Stickiness (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-sticky-sessions.html#enable-sticky-sessions-duration) // in the Classic Load Balancers Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation CreateLBCookieStickinessPolicy for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * DuplicatePolicyName // A policy with the specified name already exists for this load balancer. // // * TooManyPolicies // The quota for the number of policies for this load balancer has been reached. // // * InvalidConfigurationRequest // The requested configuration change is not valid. // func (c *ELB) CreateLBCookieStickinessPolicy(input *CreateLBCookieStickinessPolicyInput) (*CreateLBCookieStickinessPolicyOutput, error) { req, out := c.CreateLBCookieStickinessPolicyRequest(input) err := req.Send() return out, err } const opCreateLoadBalancer = "CreateLoadBalancer" // CreateLoadBalancerRequest generates a "aws/request.Request" representing the // client's request for the CreateLoadBalancer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateLoadBalancer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateLoadBalancer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateLoadBalancerRequest method. // req, resp := client.CreateLoadBalancerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) CreateLoadBalancerRequest(input *CreateLoadBalancerInput) (req *request.Request, output *CreateLoadBalancerOutput) { op := &request.Operation{ Name: opCreateLoadBalancer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateLoadBalancerInput{} } req = c.newRequest(op, input, output) output = &CreateLoadBalancerOutput{} req.Data = output return } // CreateLoadBalancer API operation for Elastic Load Balancing. // // Creates a Classic load balancer. // // You can add listeners, security groups, subnets, and tags when you create // your load balancer, or you can add them later using CreateLoadBalancerListeners, // ApplySecurityGroupsToLoadBalancer, AttachLoadBalancerToSubnets, and AddTags. // // To describe your current load balancers, see DescribeLoadBalancers. When // you are finished with a load balancer, you can delete it using DeleteLoadBalancer. // // You can create up to 20 load balancers per region per account. You can request // an increase for the number of load balancers for your account. For more information, // see Limits for Your Classic Load Balancer (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-limits.html) // in the Classic Load Balancers Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation CreateLoadBalancer for usage and error information. // // Returned Error Codes: // * DuplicateLoadBalancerName // The specified load balancer name already exists for this account. // // * TooManyLoadBalancers // The quota for the number of load balancers has been reached. // // * CertificateNotFound // The specified ARN does not refer to a valid SSL certificate in AWS Identity // and Access Management (IAM) or AWS Certificate Manager (ACM). Note that if // you recently uploaded the certificate to IAM, this error might indicate that // the certificate is not fully available yet. // // * InvalidConfigurationRequest // The requested configuration change is not valid. // // * SubnetNotFound // One or more of the specified subnets do not exist. // // * InvalidSubnet // The specified VPC has no associated Internet gateway. // // * InvalidSecurityGroup // One or more of the specified security groups do not exist. // // * InvalidScheme // The specified value for the schema is not valid. You can only specify a scheme // for load balancers in a VPC. // // * TooManyTags // The quota for the number of tags that can be assigned to a load balancer // has been reached. // // * DuplicateTagKeys // A tag key was specified more than once. // // * UnsupportedProtocol // func (c *ELB) CreateLoadBalancer(input *CreateLoadBalancerInput) (*CreateLoadBalancerOutput, error) { req, out := c.CreateLoadBalancerRequest(input) err := req.Send() return out, err } const opCreateLoadBalancerListeners = "CreateLoadBalancerListeners" // CreateLoadBalancerListenersRequest generates a "aws/request.Request" representing the // client's request for the CreateLoadBalancerListeners operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateLoadBalancerListeners for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateLoadBalancerListeners method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateLoadBalancerListenersRequest method. // req, resp := client.CreateLoadBalancerListenersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) CreateLoadBalancerListenersRequest(input *CreateLoadBalancerListenersInput) (req *request.Request, output *CreateLoadBalancerListenersOutput) { op := &request.Operation{ Name: opCreateLoadBalancerListeners, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateLoadBalancerListenersInput{} } req = c.newRequest(op, input, output) output = &CreateLoadBalancerListenersOutput{} req.Data = output return } // CreateLoadBalancerListeners API operation for Elastic Load Balancing. // // Creates one or more listeners for the specified load balancer. If a listener // with the specified port does not already exist, it is created; otherwise, // the properties of the new listener must match the properties of the existing // listener. // // For more information, see Listeners for Your Classic Load Balancer (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-listener-config.html) // in the Classic Load Balancers Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation CreateLoadBalancerListeners for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * DuplicateListener // A listener already exists for the specified load balancer name and port, // but with a different instance port, protocol, or SSL certificate. // // * CertificateNotFound // The specified ARN does not refer to a valid SSL certificate in AWS Identity // and Access Management (IAM) or AWS Certificate Manager (ACM). Note that if // you recently uploaded the certificate to IAM, this error might indicate that // the certificate is not fully available yet. // // * InvalidConfigurationRequest // The requested configuration change is not valid. // // * UnsupportedProtocol // func (c *ELB) CreateLoadBalancerListeners(input *CreateLoadBalancerListenersInput) (*CreateLoadBalancerListenersOutput, error) { req, out := c.CreateLoadBalancerListenersRequest(input) err := req.Send() return out, err } const opCreateLoadBalancerPolicy = "CreateLoadBalancerPolicy" // CreateLoadBalancerPolicyRequest generates a "aws/request.Request" representing the // client's request for the CreateLoadBalancerPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateLoadBalancerPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateLoadBalancerPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateLoadBalancerPolicyRequest method. // req, resp := client.CreateLoadBalancerPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) CreateLoadBalancerPolicyRequest(input *CreateLoadBalancerPolicyInput) (req *request.Request, output *CreateLoadBalancerPolicyOutput) { op := &request.Operation{ Name: opCreateLoadBalancerPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateLoadBalancerPolicyInput{} } req = c.newRequest(op, input, output) output = &CreateLoadBalancerPolicyOutput{} req.Data = output return } // CreateLoadBalancerPolicy API operation for Elastic Load Balancing. // // Creates a policy with the specified attributes for the specified load balancer. // // Policies are settings that are saved for your load balancer and that can // be applied to the listener or the application server, depending on the policy // type. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation CreateLoadBalancerPolicy for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * PolicyTypeNotFound // One or more of the specified policy types do not exist. // // * DuplicatePolicyName // A policy with the specified name already exists for this load balancer. // // * TooManyPolicies // The quota for the number of policies for this load balancer has been reached. // // * InvalidConfigurationRequest // The requested configuration change is not valid. // func (c *ELB) CreateLoadBalancerPolicy(input *CreateLoadBalancerPolicyInput) (*CreateLoadBalancerPolicyOutput, error) { req, out := c.CreateLoadBalancerPolicyRequest(input) err := req.Send() return out, err } const opDeleteLoadBalancer = "DeleteLoadBalancer" // DeleteLoadBalancerRequest generates a "aws/request.Request" representing the // client's request for the DeleteLoadBalancer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteLoadBalancer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteLoadBalancer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteLoadBalancerRequest method. // req, resp := client.DeleteLoadBalancerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) DeleteLoadBalancerRequest(input *DeleteLoadBalancerInput) (req *request.Request, output *DeleteLoadBalancerOutput) { op := &request.Operation{ Name: opDeleteLoadBalancer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteLoadBalancerInput{} } req = c.newRequest(op, input, output) output = &DeleteLoadBalancerOutput{} req.Data = output return } // DeleteLoadBalancer API operation for Elastic Load Balancing. // // Deletes the specified load balancer. // // If you are attempting to recreate a load balancer, you must reconfigure all // settings. The DNS name associated with a deleted load balancer are no longer // usable. The name and associated DNS record of the deleted load balancer no // longer exist and traffic sent to any of its IP addresses is no longer delivered // to your instances. // // If the load balancer does not exist or has already been deleted, the call // to DeleteLoadBalancer still succeeds. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DeleteLoadBalancer for usage and error information. func (c *ELB) DeleteLoadBalancer(input *DeleteLoadBalancerInput) (*DeleteLoadBalancerOutput, error) { req, out := c.DeleteLoadBalancerRequest(input) err := req.Send() return out, err } const opDeleteLoadBalancerListeners = "DeleteLoadBalancerListeners" // DeleteLoadBalancerListenersRequest generates a "aws/request.Request" representing the // client's request for the DeleteLoadBalancerListeners operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteLoadBalancerListeners for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteLoadBalancerListeners method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteLoadBalancerListenersRequest method. // req, resp := client.DeleteLoadBalancerListenersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) DeleteLoadBalancerListenersRequest(input *DeleteLoadBalancerListenersInput) (req *request.Request, output *DeleteLoadBalancerListenersOutput) { op := &request.Operation{ Name: opDeleteLoadBalancerListeners, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteLoadBalancerListenersInput{} } req = c.newRequest(op, input, output) output = &DeleteLoadBalancerListenersOutput{} req.Data = output return } // DeleteLoadBalancerListeners API operation for Elastic Load Balancing. // // Deletes the specified listeners from the specified load balancer. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DeleteLoadBalancerListeners for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // func (c *ELB) DeleteLoadBalancerListeners(input *DeleteLoadBalancerListenersInput) (*DeleteLoadBalancerListenersOutput, error) { req, out := c.DeleteLoadBalancerListenersRequest(input) err := req.Send() return out, err } const opDeleteLoadBalancerPolicy = "DeleteLoadBalancerPolicy" // DeleteLoadBalancerPolicyRequest generates a "aws/request.Request" representing the // client's request for the DeleteLoadBalancerPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteLoadBalancerPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteLoadBalancerPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteLoadBalancerPolicyRequest method. // req, resp := client.DeleteLoadBalancerPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) DeleteLoadBalancerPolicyRequest(input *DeleteLoadBalancerPolicyInput) (req *request.Request, output *DeleteLoadBalancerPolicyOutput) { op := &request.Operation{ Name: opDeleteLoadBalancerPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteLoadBalancerPolicyInput{} } req = c.newRequest(op, input, output) output = &DeleteLoadBalancerPolicyOutput{} req.Data = output return } // DeleteLoadBalancerPolicy API operation for Elastic Load Balancing. // // Deletes the specified policy from the specified load balancer. This policy // must not be enabled for any listeners. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DeleteLoadBalancerPolicy for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * InvalidConfigurationRequest // The requested configuration change is not valid. // func (c *ELB) DeleteLoadBalancerPolicy(input *DeleteLoadBalancerPolicyInput) (*DeleteLoadBalancerPolicyOutput, error) { req, out := c.DeleteLoadBalancerPolicyRequest(input) err := req.Send() return out, err } const opDeregisterInstancesFromLoadBalancer = "DeregisterInstancesFromLoadBalancer" // DeregisterInstancesFromLoadBalancerRequest generates a "aws/request.Request" representing the // client's request for the DeregisterInstancesFromLoadBalancer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeregisterInstancesFromLoadBalancer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeregisterInstancesFromLoadBalancer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeregisterInstancesFromLoadBalancerRequest method. // req, resp := client.DeregisterInstancesFromLoadBalancerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) DeregisterInstancesFromLoadBalancerRequest(input *DeregisterInstancesFromLoadBalancerInput) (req *request.Request, output *DeregisterInstancesFromLoadBalancerOutput) { op := &request.Operation{ Name: opDeregisterInstancesFromLoadBalancer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeregisterInstancesFromLoadBalancerInput{} } req = c.newRequest(op, input, output) output = &DeregisterInstancesFromLoadBalancerOutput{} req.Data = output return } // DeregisterInstancesFromLoadBalancer API operation for Elastic Load Balancing. // // Deregisters the specified instances from the specified load balancer. After // the instance is deregistered, it no longer receives traffic from the load // balancer. // // You can use DescribeLoadBalancers to verify that the instance is deregistered // from the load balancer. // // For more information, see Register or De-Register EC2 Instances (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-deregister-register-instances.html) // in the Classic Load Balancers Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DeregisterInstancesFromLoadBalancer for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * InvalidInstance // The specified endpoint is not valid. // func (c *ELB) DeregisterInstancesFromLoadBalancer(input *DeregisterInstancesFromLoadBalancerInput) (*DeregisterInstancesFromLoadBalancerOutput, error) { req, out := c.DeregisterInstancesFromLoadBalancerRequest(input) err := req.Send() return out, err } const opDescribeInstanceHealth = "DescribeInstanceHealth" // DescribeInstanceHealthRequest generates a "aws/request.Request" representing the // client's request for the DescribeInstanceHealth operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeInstanceHealth for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeInstanceHealth method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeInstanceHealthRequest method. // req, resp := client.DescribeInstanceHealthRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) DescribeInstanceHealthRequest(input *DescribeInstanceHealthInput) (req *request.Request, output *DescribeInstanceHealthOutput) { op := &request.Operation{ Name: opDescribeInstanceHealth, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeInstanceHealthInput{} } req = c.newRequest(op, input, output) output = &DescribeInstanceHealthOutput{} req.Data = output return } // DescribeInstanceHealth API operation for Elastic Load Balancing. // // Describes the state of the specified instances with respect to the specified // load balancer. If no instances are specified, the call describes the state // of all instances that are currently registered with the load balancer. If // instances are specified, their state is returned even if they are no longer // registered with the load balancer. The state of terminated instances is not // returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DescribeInstanceHealth for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * InvalidInstance // The specified endpoint is not valid. // func (c *ELB) DescribeInstanceHealth(input *DescribeInstanceHealthInput) (*DescribeInstanceHealthOutput, error) { req, out := c.DescribeInstanceHealthRequest(input) err := req.Send() return out, err } const opDescribeLoadBalancerAttributes = "DescribeLoadBalancerAttributes" // DescribeLoadBalancerAttributesRequest generates a "aws/request.Request" representing the // client's request for the DescribeLoadBalancerAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLoadBalancerAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLoadBalancerAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLoadBalancerAttributesRequest method. // req, resp := client.DescribeLoadBalancerAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) DescribeLoadBalancerAttributesRequest(input *DescribeLoadBalancerAttributesInput) (req *request.Request, output *DescribeLoadBalancerAttributesOutput) { op := &request.Operation{ Name: opDescribeLoadBalancerAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeLoadBalancerAttributesInput{} } req = c.newRequest(op, input, output) output = &DescribeLoadBalancerAttributesOutput{} req.Data = output return } // DescribeLoadBalancerAttributes API operation for Elastic Load Balancing. // // Describes the attributes for the specified load balancer. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DescribeLoadBalancerAttributes for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * LoadBalancerAttributeNotFound // The specified load balancer attribute does not exist. // func (c *ELB) DescribeLoadBalancerAttributes(input *DescribeLoadBalancerAttributesInput) (*DescribeLoadBalancerAttributesOutput, error) { req, out := c.DescribeLoadBalancerAttributesRequest(input) err := req.Send() return out, err } const opDescribeLoadBalancerPolicies = "DescribeLoadBalancerPolicies" // DescribeLoadBalancerPoliciesRequest generates a "aws/request.Request" representing the // client's request for the DescribeLoadBalancerPolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLoadBalancerPolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLoadBalancerPolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLoadBalancerPoliciesRequest method. // req, resp := client.DescribeLoadBalancerPoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) DescribeLoadBalancerPoliciesRequest(input *DescribeLoadBalancerPoliciesInput) (req *request.Request, output *DescribeLoadBalancerPoliciesOutput) { op := &request.Operation{ Name: opDescribeLoadBalancerPolicies, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeLoadBalancerPoliciesInput{} } req = c.newRequest(op, input, output) output = &DescribeLoadBalancerPoliciesOutput{} req.Data = output return } // DescribeLoadBalancerPolicies API operation for Elastic Load Balancing. // // Describes the specified policies. // // If you specify a load balancer name, the action returns the descriptions // of all policies created for the load balancer. If you specify a policy name // associated with your load balancer, the action returns the description of // that policy. If you don't specify a load balancer name, the action returns // descriptions of the specified sample policies, or descriptions of all sample // policies. The names of the sample policies have the ELBSample- prefix. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DescribeLoadBalancerPolicies for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * PolicyNotFound // One or more of the specified policies do not exist. // func (c *ELB) DescribeLoadBalancerPolicies(input *DescribeLoadBalancerPoliciesInput) (*DescribeLoadBalancerPoliciesOutput, error) { req, out := c.DescribeLoadBalancerPoliciesRequest(input) err := req.Send() return out, err } const opDescribeLoadBalancerPolicyTypes = "DescribeLoadBalancerPolicyTypes" // DescribeLoadBalancerPolicyTypesRequest generates a "aws/request.Request" representing the // client's request for the DescribeLoadBalancerPolicyTypes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLoadBalancerPolicyTypes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLoadBalancerPolicyTypes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLoadBalancerPolicyTypesRequest method. // req, resp := client.DescribeLoadBalancerPolicyTypesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) DescribeLoadBalancerPolicyTypesRequest(input *DescribeLoadBalancerPolicyTypesInput) (req *request.Request, output *DescribeLoadBalancerPolicyTypesOutput) { op := &request.Operation{ Name: opDescribeLoadBalancerPolicyTypes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeLoadBalancerPolicyTypesInput{} } req = c.newRequest(op, input, output) output = &DescribeLoadBalancerPolicyTypesOutput{} req.Data = output return } // DescribeLoadBalancerPolicyTypes API operation for Elastic Load Balancing. // // Describes the specified load balancer policy types or all load balancer policy // types. // // The description of each type indicates how it can be used. For example, some // policies can be used only with layer 7 listeners, some policies can be used // only with layer 4 listeners, and some policies can be used only with your // EC2 instances. // // You can use CreateLoadBalancerPolicy to create a policy configuration for // any of these policy types. Then, depending on the policy type, use either // SetLoadBalancerPoliciesOfListener or SetLoadBalancerPoliciesForBackendServer // to set the policy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DescribeLoadBalancerPolicyTypes for usage and error information. // // Returned Error Codes: // * PolicyTypeNotFound // One or more of the specified policy types do not exist. // func (c *ELB) DescribeLoadBalancerPolicyTypes(input *DescribeLoadBalancerPolicyTypesInput) (*DescribeLoadBalancerPolicyTypesOutput, error) { req, out := c.DescribeLoadBalancerPolicyTypesRequest(input) err := req.Send() return out, err } const opDescribeLoadBalancers = "DescribeLoadBalancers" // DescribeLoadBalancersRequest generates a "aws/request.Request" representing the // client's request for the DescribeLoadBalancers operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLoadBalancers for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLoadBalancers method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLoadBalancersRequest method. // req, resp := client.DescribeLoadBalancersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) DescribeLoadBalancersRequest(input *DescribeLoadBalancersInput) (req *request.Request, output *DescribeLoadBalancersOutput) { op := &request.Operation{ Name: opDescribeLoadBalancers, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"NextMarker"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &DescribeLoadBalancersInput{} } req = c.newRequest(op, input, output) output = &DescribeLoadBalancersOutput{} req.Data = output return } // DescribeLoadBalancers API operation for Elastic Load Balancing. // // Describes the specified the load balancers. If no load balancers are specified, // the call describes all of your load balancers. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DescribeLoadBalancers for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * DependencyThrottle // func (c *ELB) DescribeLoadBalancers(input *DescribeLoadBalancersInput) (*DescribeLoadBalancersOutput, error) { req, out := c.DescribeLoadBalancersRequest(input) err := req.Send() return out, err } // DescribeLoadBalancersPages iterates over the pages of a DescribeLoadBalancers operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeLoadBalancers method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeLoadBalancers operation. // pageNum := 0 // err := client.DescribeLoadBalancersPages(params, // func(page *DescribeLoadBalancersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ELB) DescribeLoadBalancersPages(input *DescribeLoadBalancersInput, fn func(p *DescribeLoadBalancersOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeLoadBalancersRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeLoadBalancersOutput), lastPage) }) } const opDescribeTags = "DescribeTags" // DescribeTagsRequest generates a "aws/request.Request" representing the // client's request for the DescribeTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTagsRequest method. // req, resp := client.DescribeTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) DescribeTagsRequest(input *DescribeTagsInput) (req *request.Request, output *DescribeTagsOutput) { op := &request.Operation{ Name: opDescribeTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTagsInput{} } req = c.newRequest(op, input, output) output = &DescribeTagsOutput{} req.Data = output return } // DescribeTags API operation for Elastic Load Balancing. // // Describes the tags associated with the specified load balancers. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DescribeTags for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // func (c *ELB) DescribeTags(input *DescribeTagsInput) (*DescribeTagsOutput, error) { req, out := c.DescribeTagsRequest(input) err := req.Send() return out, err } const opDetachLoadBalancerFromSubnets = "DetachLoadBalancerFromSubnets" // DetachLoadBalancerFromSubnetsRequest generates a "aws/request.Request" representing the // client's request for the DetachLoadBalancerFromSubnets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DetachLoadBalancerFromSubnets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DetachLoadBalancerFromSubnets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DetachLoadBalancerFromSubnetsRequest method. // req, resp := client.DetachLoadBalancerFromSubnetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) DetachLoadBalancerFromSubnetsRequest(input *DetachLoadBalancerFromSubnetsInput) (req *request.Request, output *DetachLoadBalancerFromSubnetsOutput) { op := &request.Operation{ Name: opDetachLoadBalancerFromSubnets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DetachLoadBalancerFromSubnetsInput{} } req = c.newRequest(op, input, output) output = &DetachLoadBalancerFromSubnetsOutput{} req.Data = output return } // DetachLoadBalancerFromSubnets API operation for Elastic Load Balancing. // // Removes the specified subnets from the set of configured subnets for the // load balancer. // // After a subnet is removed, all EC2 instances registered with the load balancer // in the removed subnet go into the OutOfService state. Then, the load balancer // balances the traffic among the remaining routable subnets. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DetachLoadBalancerFromSubnets for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * InvalidConfigurationRequest // The requested configuration change is not valid. // func (c *ELB) DetachLoadBalancerFromSubnets(input *DetachLoadBalancerFromSubnetsInput) (*DetachLoadBalancerFromSubnetsOutput, error) { req, out := c.DetachLoadBalancerFromSubnetsRequest(input) err := req.Send() return out, err } const opDisableAvailabilityZonesForLoadBalancer = "DisableAvailabilityZonesForLoadBalancer" // DisableAvailabilityZonesForLoadBalancerRequest generates a "aws/request.Request" representing the // client's request for the DisableAvailabilityZonesForLoadBalancer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableAvailabilityZonesForLoadBalancer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableAvailabilityZonesForLoadBalancer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableAvailabilityZonesForLoadBalancerRequest method. // req, resp := client.DisableAvailabilityZonesForLoadBalancerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) DisableAvailabilityZonesForLoadBalancerRequest(input *DisableAvailabilityZonesForLoadBalancerInput) (req *request.Request, output *DisableAvailabilityZonesForLoadBalancerOutput) { op := &request.Operation{ Name: opDisableAvailabilityZonesForLoadBalancer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableAvailabilityZonesForLoadBalancerInput{} } req = c.newRequest(op, input, output) output = &DisableAvailabilityZonesForLoadBalancerOutput{} req.Data = output return } // DisableAvailabilityZonesForLoadBalancer API operation for Elastic Load Balancing. // // Removes the specified Availability Zones from the set of Availability Zones // for the specified load balancer. // // There must be at least one Availability Zone registered with a load balancer // at all times. After an Availability Zone is removed, all instances registered // with the load balancer that are in the removed Availability Zone go into // the OutOfService state. Then, the load balancer attempts to equally balance // the traffic among its remaining Availability Zones. // // For more information, see Add or Remove Availability Zones (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-disable-az.html) // in the Classic Load Balancers Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DisableAvailabilityZonesForLoadBalancer for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * InvalidConfigurationRequest // The requested configuration change is not valid. // func (c *ELB) DisableAvailabilityZonesForLoadBalancer(input *DisableAvailabilityZonesForLoadBalancerInput) (*DisableAvailabilityZonesForLoadBalancerOutput, error) { req, out := c.DisableAvailabilityZonesForLoadBalancerRequest(input) err := req.Send() return out, err } const opEnableAvailabilityZonesForLoadBalancer = "EnableAvailabilityZonesForLoadBalancer" // EnableAvailabilityZonesForLoadBalancerRequest generates a "aws/request.Request" representing the // client's request for the EnableAvailabilityZonesForLoadBalancer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableAvailabilityZonesForLoadBalancer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableAvailabilityZonesForLoadBalancer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableAvailabilityZonesForLoadBalancerRequest method. // req, resp := client.EnableAvailabilityZonesForLoadBalancerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) EnableAvailabilityZonesForLoadBalancerRequest(input *EnableAvailabilityZonesForLoadBalancerInput) (req *request.Request, output *EnableAvailabilityZonesForLoadBalancerOutput) { op := &request.Operation{ Name: opEnableAvailabilityZonesForLoadBalancer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableAvailabilityZonesForLoadBalancerInput{} } req = c.newRequest(op, input, output) output = &EnableAvailabilityZonesForLoadBalancerOutput{} req.Data = output return } // EnableAvailabilityZonesForLoadBalancer API operation for Elastic Load Balancing. // // Adds the specified Availability Zones to the set of Availability Zones for // the specified load balancer. // // The load balancer evenly distributes requests across all its registered Availability // Zones that contain instances. // // For more information, see Add or Remove Availability Zones (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-disable-az.html) // in the Classic Load Balancers Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation EnableAvailabilityZonesForLoadBalancer for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // func (c *ELB) EnableAvailabilityZonesForLoadBalancer(input *EnableAvailabilityZonesForLoadBalancerInput) (*EnableAvailabilityZonesForLoadBalancerOutput, error) { req, out := c.EnableAvailabilityZonesForLoadBalancerRequest(input) err := req.Send() return out, err } const opModifyLoadBalancerAttributes = "ModifyLoadBalancerAttributes" // ModifyLoadBalancerAttributesRequest generates a "aws/request.Request" representing the // client's request for the ModifyLoadBalancerAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyLoadBalancerAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyLoadBalancerAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyLoadBalancerAttributesRequest method. // req, resp := client.ModifyLoadBalancerAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) ModifyLoadBalancerAttributesRequest(input *ModifyLoadBalancerAttributesInput) (req *request.Request, output *ModifyLoadBalancerAttributesOutput) { op := &request.Operation{ Name: opModifyLoadBalancerAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyLoadBalancerAttributesInput{} } req = c.newRequest(op, input, output) output = &ModifyLoadBalancerAttributesOutput{} req.Data = output return } // ModifyLoadBalancerAttributes API operation for Elastic Load Balancing. // // Modifies the attributes of the specified load balancer. // // You can modify the load balancer attributes, such as AccessLogs, ConnectionDraining, // and CrossZoneLoadBalancing by either enabling or disabling them. Or, you // can modify the load balancer attribute ConnectionSettings by specifying an // idle connection timeout value for your load balancer. // // For more information, see the following in the Classic Load Balancers Guide: // // * Cross-Zone Load Balancing (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-disable-crosszone-lb.html) // // * Connection Draining (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/config-conn-drain.html) // // * Access Logs (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/access-log-collection.html) // // * Idle Connection Timeout (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/config-idle-timeout.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation ModifyLoadBalancerAttributes for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * LoadBalancerAttributeNotFound // The specified load balancer attribute does not exist. // // * InvalidConfigurationRequest // The requested configuration change is not valid. // func (c *ELB) ModifyLoadBalancerAttributes(input *ModifyLoadBalancerAttributesInput) (*ModifyLoadBalancerAttributesOutput, error) { req, out := c.ModifyLoadBalancerAttributesRequest(input) err := req.Send() return out, err } const opRegisterInstancesWithLoadBalancer = "RegisterInstancesWithLoadBalancer" // RegisterInstancesWithLoadBalancerRequest generates a "aws/request.Request" representing the // client's request for the RegisterInstancesWithLoadBalancer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterInstancesWithLoadBalancer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterInstancesWithLoadBalancer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterInstancesWithLoadBalancerRequest method. // req, resp := client.RegisterInstancesWithLoadBalancerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) RegisterInstancesWithLoadBalancerRequest(input *RegisterInstancesWithLoadBalancerInput) (req *request.Request, output *RegisterInstancesWithLoadBalancerOutput) { op := &request.Operation{ Name: opRegisterInstancesWithLoadBalancer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterInstancesWithLoadBalancerInput{} } req = c.newRequest(op, input, output) output = &RegisterInstancesWithLoadBalancerOutput{} req.Data = output return } // RegisterInstancesWithLoadBalancer API operation for Elastic Load Balancing. // // Adds the specified instances to the specified load balancer. // // The instance must be a running instance in the same network as the load balancer // (EC2-Classic or the same VPC). If you have EC2-Classic instances and a load // balancer in a VPC with ClassicLink enabled, you can link the EC2-Classic // instances to that VPC and then register the linked EC2-Classic instances // with the load balancer in the VPC. // // Note that RegisterInstanceWithLoadBalancer completes when the request has // been registered. Instance registration takes a little time to complete. To // check the state of the registered instances, use DescribeLoadBalancers or // DescribeInstanceHealth. // // After the instance is registered, it starts receiving traffic and requests // from the load balancer. Any instance that is not in one of the Availability // Zones registered for the load balancer is moved to the OutOfService state. // If an Availability Zone is added to the load balancer later, any instances // registered with the load balancer move to the InService state. // // To deregister instances from a load balancer, use DeregisterInstancesFromLoadBalancer. // // For more information, see Register or De-Register EC2 Instances (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-deregister-register-instances.html) // in the Classic Load Balancers Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation RegisterInstancesWithLoadBalancer for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * InvalidInstance // The specified endpoint is not valid. // func (c *ELB) RegisterInstancesWithLoadBalancer(input *RegisterInstancesWithLoadBalancerInput) (*RegisterInstancesWithLoadBalancerOutput, error) { req, out := c.RegisterInstancesWithLoadBalancerRequest(input) err := req.Send() return out, err } const opRemoveTags = "RemoveTags" // RemoveTagsRequest generates a "aws/request.Request" representing the // client's request for the RemoveTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveTagsRequest method. // req, resp := client.RemoveTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) RemoveTagsRequest(input *RemoveTagsInput) (req *request.Request, output *RemoveTagsOutput) { op := &request.Operation{ Name: opRemoveTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveTagsInput{} } req = c.newRequest(op, input, output) output = &RemoveTagsOutput{} req.Data = output return } // RemoveTags API operation for Elastic Load Balancing. // // Removes one or more tags from the specified load balancer. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation RemoveTags for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // func (c *ELB) RemoveTags(input *RemoveTagsInput) (*RemoveTagsOutput, error) { req, out := c.RemoveTagsRequest(input) err := req.Send() return out, err } const opSetLoadBalancerListenerSSLCertificate = "SetLoadBalancerListenerSSLCertificate" // SetLoadBalancerListenerSSLCertificateRequest generates a "aws/request.Request" representing the // client's request for the SetLoadBalancerListenerSSLCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetLoadBalancerListenerSSLCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetLoadBalancerListenerSSLCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetLoadBalancerListenerSSLCertificateRequest method. // req, resp := client.SetLoadBalancerListenerSSLCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) SetLoadBalancerListenerSSLCertificateRequest(input *SetLoadBalancerListenerSSLCertificateInput) (req *request.Request, output *SetLoadBalancerListenerSSLCertificateOutput) { op := &request.Operation{ Name: opSetLoadBalancerListenerSSLCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetLoadBalancerListenerSSLCertificateInput{} } req = c.newRequest(op, input, output) output = &SetLoadBalancerListenerSSLCertificateOutput{} req.Data = output return } // SetLoadBalancerListenerSSLCertificate API operation for Elastic Load Balancing. // // Sets the certificate that terminates the specified listener's SSL connections. // The specified certificate replaces any prior certificate that was used on // the same load balancer and port. // // For more information about updating your SSL certificate, see Replace the // SSL Certificate for Your Load Balancer (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-update-ssl-cert.html) // in the Classic Load Balancers Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation SetLoadBalancerListenerSSLCertificate for usage and error information. // // Returned Error Codes: // * CertificateNotFound // The specified ARN does not refer to a valid SSL certificate in AWS Identity // and Access Management (IAM) or AWS Certificate Manager (ACM). Note that if // you recently uploaded the certificate to IAM, this error might indicate that // the certificate is not fully available yet. // // * LoadBalancerNotFound // The specified load balancer does not exist. // // * ListenerNotFound // The load balancer does not have a listener configured at the specified port. // // * InvalidConfigurationRequest // The requested configuration change is not valid. // // * UnsupportedProtocol // func (c *ELB) SetLoadBalancerListenerSSLCertificate(input *SetLoadBalancerListenerSSLCertificateInput) (*SetLoadBalancerListenerSSLCertificateOutput, error) { req, out := c.SetLoadBalancerListenerSSLCertificateRequest(input) err := req.Send() return out, err } const opSetLoadBalancerPoliciesForBackendServer = "SetLoadBalancerPoliciesForBackendServer" // SetLoadBalancerPoliciesForBackendServerRequest generates a "aws/request.Request" representing the // client's request for the SetLoadBalancerPoliciesForBackendServer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetLoadBalancerPoliciesForBackendServer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetLoadBalancerPoliciesForBackendServer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetLoadBalancerPoliciesForBackendServerRequest method. // req, resp := client.SetLoadBalancerPoliciesForBackendServerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) SetLoadBalancerPoliciesForBackendServerRequest(input *SetLoadBalancerPoliciesForBackendServerInput) (req *request.Request, output *SetLoadBalancerPoliciesForBackendServerOutput) { op := &request.Operation{ Name: opSetLoadBalancerPoliciesForBackendServer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetLoadBalancerPoliciesForBackendServerInput{} } req = c.newRequest(op, input, output) output = &SetLoadBalancerPoliciesForBackendServerOutput{} req.Data = output return } // SetLoadBalancerPoliciesForBackendServer API operation for Elastic Load Balancing. // // Replaces the set of policies associated with the specified port on which // the EC2 instance is listening with a new set of policies. At this time, only // the back-end server authentication policy type can be applied to the instance // ports; this policy type is composed of multiple public key policies. // // Each time you use SetLoadBalancerPoliciesForBackendServer to enable the policies, // use the PolicyNames parameter to list the policies that you want to enable. // // You can use DescribeLoadBalancers or DescribeLoadBalancerPolicies to verify // that the policy is associated with the EC2 instance. // // For more information about enabling back-end instance authentication, see // Configure Back-end Instance Authentication (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-create-https-ssl-load-balancer.html#configure_backendauth_clt) // in the Classic Load Balancers Guide. For more information about Proxy Protocol, // see Configure Proxy Protocol Support (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-proxy-protocol.html) // in the Classic Load Balancers Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation SetLoadBalancerPoliciesForBackendServer for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * PolicyNotFound // One or more of the specified policies do not exist. // // * InvalidConfigurationRequest // The requested configuration change is not valid. // func (c *ELB) SetLoadBalancerPoliciesForBackendServer(input *SetLoadBalancerPoliciesForBackendServerInput) (*SetLoadBalancerPoliciesForBackendServerOutput, error) { req, out := c.SetLoadBalancerPoliciesForBackendServerRequest(input) err := req.Send() return out, err } const opSetLoadBalancerPoliciesOfListener = "SetLoadBalancerPoliciesOfListener" // SetLoadBalancerPoliciesOfListenerRequest generates a "aws/request.Request" representing the // client's request for the SetLoadBalancerPoliciesOfListener operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetLoadBalancerPoliciesOfListener for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetLoadBalancerPoliciesOfListener method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetLoadBalancerPoliciesOfListenerRequest method. // req, resp := client.SetLoadBalancerPoliciesOfListenerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELB) SetLoadBalancerPoliciesOfListenerRequest(input *SetLoadBalancerPoliciesOfListenerInput) (req *request.Request, output *SetLoadBalancerPoliciesOfListenerOutput) { op := &request.Operation{ Name: opSetLoadBalancerPoliciesOfListener, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetLoadBalancerPoliciesOfListenerInput{} } req = c.newRequest(op, input, output) output = &SetLoadBalancerPoliciesOfListenerOutput{} req.Data = output return } // SetLoadBalancerPoliciesOfListener API operation for Elastic Load Balancing. // // Replaces the current set of policies for the specified load balancer port // with the specified set of policies. // // To enable back-end server authentication, use SetLoadBalancerPoliciesForBackendServer. // // For more information about setting policies, see Update the SSL Negotiation // Configuration (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/ssl-config-update.html), // Duration-Based Session Stickiness (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-sticky-sessions.html#enable-sticky-sessions-duration), // and Application-Controlled Session Stickiness (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-sticky-sessions.html#enable-sticky-sessions-application) // in the Classic Load Balancers Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation SetLoadBalancerPoliciesOfListener for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * PolicyNotFound // One or more of the specified policies do not exist. // // * ListenerNotFound // The load balancer does not have a listener configured at the specified port. // // * InvalidConfigurationRequest // The requested configuration change is not valid. // func (c *ELB) SetLoadBalancerPoliciesOfListener(input *SetLoadBalancerPoliciesOfListenerInput) (*SetLoadBalancerPoliciesOfListenerOutput, error) { req, out := c.SetLoadBalancerPoliciesOfListenerRequest(input) err := req.Send() return out, err } // Information about the AccessLog attribute. type AccessLog struct { _ struct{} `type:"structure"` // The interval for publishing the access logs. You can specify an interval // of either 5 minutes or 60 minutes. // // Default: 60 minutes EmitInterval *int64 `type:"integer"` // Specifies whether access logs are enabled for the load balancer. // // Enabled is a required field Enabled *bool `type:"boolean" required:"true"` // The name of the Amazon S3 bucket where the access logs are stored. S3BucketName *string `type:"string"` // The logical hierarchy you created for your Amazon S3 bucket, for example // my-bucket-prefix/prod. If the prefix is not provided, the log is placed at // the root level of the bucket. S3BucketPrefix *string `type:"string"` } // String returns the string representation func (s AccessLog) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AccessLog) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AccessLog) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AccessLog"} if s.Enabled == nil { invalidParams.Add(request.NewErrParamRequired("Enabled")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for AddTags. type AddTagsInput struct { _ struct{} `type:"structure"` // The name of the load balancer. You can specify one load balancer only. // // LoadBalancerNames is a required field LoadBalancerNames []*string `type:"list" required:"true"` // The tags. // // Tags is a required field Tags []*Tag `min:"1" type:"list" required:"true"` } // String returns the string representation func (s AddTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsInput"} if s.LoadBalancerNames == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerNames")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil && len(s.Tags) < 1 { invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of AddTags. type AddTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsOutput) GoString() string { return s.String() } // This data type is reserved. type AdditionalAttribute struct { _ struct{} `type:"structure"` // This parameter is reserved. Key *string `type:"string"` // This parameter is reserved. Value *string `type:"string"` } // String returns the string representation func (s AdditionalAttribute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AdditionalAttribute) GoString() string { return s.String() } // Information about a policy for application-controlled session stickiness. type AppCookieStickinessPolicy struct { _ struct{} `type:"structure"` // The name of the application cookie used for stickiness. CookieName *string `type:"string"` // The mnemonic name for the policy being created. The name must be unique within // a set of policies for this load balancer. PolicyName *string `type:"string"` } // String returns the string representation func (s AppCookieStickinessPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AppCookieStickinessPolicy) GoString() string { return s.String() } // Contains the parameters for ApplySecurityGroupsToLoadBalancer. type ApplySecurityGroupsToLoadBalancerInput struct { _ struct{} `type:"structure"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` // The IDs of the security groups to associate with the load balancer. Note // that you cannot specify the name of the security group. // // SecurityGroups is a required field SecurityGroups []*string `type:"list" required:"true"` } // String returns the string representation func (s ApplySecurityGroupsToLoadBalancerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ApplySecurityGroupsToLoadBalancerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ApplySecurityGroupsToLoadBalancerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ApplySecurityGroupsToLoadBalancerInput"} if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if s.SecurityGroups == nil { invalidParams.Add(request.NewErrParamRequired("SecurityGroups")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ApplySecurityGroupsToLoadBalancer. type ApplySecurityGroupsToLoadBalancerOutput struct { _ struct{} `type:"structure"` // The IDs of the security groups associated with the load balancer. SecurityGroups []*string `type:"list"` } // String returns the string representation func (s ApplySecurityGroupsToLoadBalancerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ApplySecurityGroupsToLoadBalancerOutput) GoString() string { return s.String() } // Contains the parameters for AttachLoaBalancerToSubnets. type AttachLoadBalancerToSubnetsInput struct { _ struct{} `type:"structure"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` // The IDs of the subnets to add. You can add only one subnet per Availability // Zone. // // Subnets is a required field Subnets []*string `type:"list" required:"true"` } // String returns the string representation func (s AttachLoadBalancerToSubnetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachLoadBalancerToSubnetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttachLoadBalancerToSubnetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttachLoadBalancerToSubnetsInput"} if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if s.Subnets == nil { invalidParams.Add(request.NewErrParamRequired("Subnets")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of AttachLoadBalancerToSubnets. type AttachLoadBalancerToSubnetsOutput struct { _ struct{} `type:"structure"` // The IDs of the subnets attached to the load balancer. Subnets []*string `type:"list"` } // String returns the string representation func (s AttachLoadBalancerToSubnetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachLoadBalancerToSubnetsOutput) GoString() string { return s.String() } // Information about the configuration of an EC2 instance. type BackendServerDescription struct { _ struct{} `type:"structure"` // The port on which the EC2 instance is listening. InstancePort *int64 `min:"1" type:"integer"` // The names of the policies enabled for the EC2 instance. PolicyNames []*string `type:"list"` } // String returns the string representation func (s BackendServerDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BackendServerDescription) GoString() string { return s.String() } // Contains the parameters for ConfigureHealthCheck. type ConfigureHealthCheckInput struct { _ struct{} `type:"structure"` // The configuration information. // // HealthCheck is a required field HealthCheck *HealthCheck `type:"structure" required:"true"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` } // String returns the string representation func (s ConfigureHealthCheckInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfigureHealthCheckInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ConfigureHealthCheckInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ConfigureHealthCheckInput"} if s.HealthCheck == nil { invalidParams.Add(request.NewErrParamRequired("HealthCheck")) } if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if s.HealthCheck != nil { if err := s.HealthCheck.Validate(); err != nil { invalidParams.AddNested("HealthCheck", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ConfigureHealthCheck. type ConfigureHealthCheckOutput struct { _ struct{} `type:"structure"` // The updated health check. HealthCheck *HealthCheck `type:"structure"` } // String returns the string representation func (s ConfigureHealthCheckOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfigureHealthCheckOutput) GoString() string { return s.String() } // Information about the ConnectionDraining attribute. type ConnectionDraining struct { _ struct{} `type:"structure"` // Specifies whether connection draining is enabled for the load balancer. // // Enabled is a required field Enabled *bool `type:"boolean" required:"true"` // The maximum time, in seconds, to keep the existing connections open before // deregistering the instances. Timeout *int64 `type:"integer"` } // String returns the string representation func (s ConnectionDraining) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConnectionDraining) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ConnectionDraining) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ConnectionDraining"} if s.Enabled == nil { invalidParams.Add(request.NewErrParamRequired("Enabled")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Information about the ConnectionSettings attribute. type ConnectionSettings struct { _ struct{} `type:"structure"` // The time, in seconds, that the connection is allowed to be idle (no data // has been sent over the connection) before it is closed by the load balancer. // // IdleTimeout is a required field IdleTimeout *int64 `min:"1" type:"integer" required:"true"` } // String returns the string representation func (s ConnectionSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConnectionSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ConnectionSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ConnectionSettings"} if s.IdleTimeout == nil { invalidParams.Add(request.NewErrParamRequired("IdleTimeout")) } if s.IdleTimeout != nil && *s.IdleTimeout < 1 { invalidParams.Add(request.NewErrParamMinValue("IdleTimeout", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for CreateAppCookieStickinessPolicy. type CreateAppCookieStickinessPolicyInput struct { _ struct{} `type:"structure"` // The name of the application cookie used for stickiness. // // CookieName is a required field CookieName *string `type:"string" required:"true"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` // The name of the policy being created. Policy names must consist of alphanumeric // characters and dashes (-). This name must be unique within the set of policies // for this load balancer. // // PolicyName is a required field PolicyName *string `type:"string" required:"true"` } // String returns the string representation func (s CreateAppCookieStickinessPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAppCookieStickinessPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateAppCookieStickinessPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateAppCookieStickinessPolicyInput"} if s.CookieName == nil { invalidParams.Add(request.NewErrParamRequired("CookieName")) } if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output for CreateAppCookieStickinessPolicy. type CreateAppCookieStickinessPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateAppCookieStickinessPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAppCookieStickinessPolicyOutput) GoString() string { return s.String() } // Contains the parameters for CreateLBCookieStickinessPolicy. type CreateLBCookieStickinessPolicyInput struct { _ struct{} `type:"structure"` // The time period, in seconds, after which the cookie should be considered // stale. If you do not specify this parameter, the default value is 0, which // indicates that the sticky session should last for the duration of the browser // session. CookieExpirationPeriod *int64 `type:"long"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` // The name of the policy being created. Policy names must consist of alphanumeric // characters and dashes (-). This name must be unique within the set of policies // for this load balancer. // // PolicyName is a required field PolicyName *string `type:"string" required:"true"` } // String returns the string representation func (s CreateLBCookieStickinessPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLBCookieStickinessPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateLBCookieStickinessPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateLBCookieStickinessPolicyInput"} if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output for CreateLBCookieStickinessPolicy. type CreateLBCookieStickinessPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateLBCookieStickinessPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLBCookieStickinessPolicyOutput) GoString() string { return s.String() } // Contains the parameters for CreateLoadBalancer. type CreateLoadBalancerInput struct { _ struct{} `type:"structure"` // One or more Availability Zones from the same region as the load balancer. // // You must specify at least one Availability Zone. // // You can add more Availability Zones after you create the load balancer using // EnableAvailabilityZonesForLoadBalancer. AvailabilityZones []*string `type:"list"` // The listeners. // // For more information, see Listeners for Your Classic Load Balancer (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-listener-config.html) // in the Classic Load Balancers Guide. // // Listeners is a required field Listeners []*Listener `type:"list" required:"true"` // The name of the load balancer. // // This name must be unique within your set of load balancers for the region, // must have a maximum of 32 characters, must contain only alphanumeric characters // or hyphens, and cannot begin or end with a hyphen. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` // The type of a load balancer. Valid only for load balancers in a VPC. // // By default, Elastic Load Balancing creates an Internet-facing load balancer // with a DNS name that resolves to public IP addresses. For more information // about Internet-facing and Internal load balancers, see Load Balancer Scheme // (http://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/how-elastic-load-balancing-works.html#load-balancer-scheme) // in the Elastic Load Balancing User Guide. // // Specify internal to create a load balancer with a DNS name that resolves // to private IP addresses. Scheme *string `type:"string"` // The IDs of the security groups to assign to the load balancer. SecurityGroups []*string `type:"list"` // The IDs of the subnets in your VPC to attach to the load balancer. Specify // one subnet per Availability Zone specified in AvailabilityZones. Subnets []*string `type:"list"` // A list of tags to assign to the load balancer. // // For more information about tagging your load balancer, see Tag Your Classic // Load Balancer (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/add-remove-tags.html) // in the Classic Load Balancers Guide. Tags []*Tag `min:"1" type:"list"` } // String returns the string representation func (s CreateLoadBalancerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLoadBalancerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateLoadBalancerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateLoadBalancerInput"} if s.Listeners == nil { invalidParams.Add(request.NewErrParamRequired("Listeners")) } if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if s.Tags != nil && len(s.Tags) < 1 { invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) } if s.Listeners != nil { for i, v := range s.Listeners { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Listeners", i), err.(request.ErrInvalidParams)) } } } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for CreateLoadBalancerListeners. type CreateLoadBalancerListenersInput struct { _ struct{} `type:"structure"` // The listeners. // // Listeners is a required field Listeners []*Listener `type:"list" required:"true"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` } // String returns the string representation func (s CreateLoadBalancerListenersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLoadBalancerListenersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateLoadBalancerListenersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateLoadBalancerListenersInput"} if s.Listeners == nil { invalidParams.Add(request.NewErrParamRequired("Listeners")) } if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if s.Listeners != nil { for i, v := range s.Listeners { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Listeners", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for CreateLoadBalancerListener. type CreateLoadBalancerListenersOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateLoadBalancerListenersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLoadBalancerListenersOutput) GoString() string { return s.String() } // Contains the output for CreateLoadBalancer. type CreateLoadBalancerOutput struct { _ struct{} `type:"structure"` // The DNS name of the load balancer. DNSName *string `type:"string"` } // String returns the string representation func (s CreateLoadBalancerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLoadBalancerOutput) GoString() string { return s.String() } // Contains the parameters for CreateLoadBalancerPolicy. type CreateLoadBalancerPolicyInput struct { _ struct{} `type:"structure"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` // The policy attributes. PolicyAttributes []*PolicyAttribute `type:"list"` // The name of the load balancer policy to be created. This name must be unique // within the set of policies for this load balancer. // // PolicyName is a required field PolicyName *string `type:"string" required:"true"` // The name of the base policy type. To get the list of policy types, use DescribeLoadBalancerPolicyTypes. // // PolicyTypeName is a required field PolicyTypeName *string `type:"string" required:"true"` } // String returns the string representation func (s CreateLoadBalancerPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLoadBalancerPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateLoadBalancerPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateLoadBalancerPolicyInput"} if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyTypeName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyTypeName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateLoadBalancerPolicy. type CreateLoadBalancerPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateLoadBalancerPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLoadBalancerPolicyOutput) GoString() string { return s.String() } // Information about the CrossZoneLoadBalancing attribute. type CrossZoneLoadBalancing struct { _ struct{} `type:"structure"` // Specifies whether cross-zone load balancing is enabled for the load balancer. // // Enabled is a required field Enabled *bool `type:"boolean" required:"true"` } // String returns the string representation func (s CrossZoneLoadBalancing) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CrossZoneLoadBalancing) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CrossZoneLoadBalancing) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CrossZoneLoadBalancing"} if s.Enabled == nil { invalidParams.Add(request.NewErrParamRequired("Enabled")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for DeleteLoadBalancer. type DeleteLoadBalancerInput struct { _ struct{} `type:"structure"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteLoadBalancerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLoadBalancerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteLoadBalancerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteLoadBalancerInput"} if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for DeleteLoadBalancerListeners. type DeleteLoadBalancerListenersInput struct { _ struct{} `type:"structure"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` // The client port numbers of the listeners. // // LoadBalancerPorts is a required field LoadBalancerPorts []*int64 `type:"list" required:"true"` } // String returns the string representation func (s DeleteLoadBalancerListenersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLoadBalancerListenersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteLoadBalancerListenersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteLoadBalancerListenersInput"} if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if s.LoadBalancerPorts == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerPorts")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DeleteLoadBalancerListeners. type DeleteLoadBalancerListenersOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteLoadBalancerListenersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLoadBalancerListenersOutput) GoString() string { return s.String() } // Contains the output of DeleteLoadBalancer. type DeleteLoadBalancerOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteLoadBalancerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLoadBalancerOutput) GoString() string { return s.String() } // Contains the parameters for DeleteLoadBalancerPolicy. type DeleteLoadBalancerPolicyInput struct { _ struct{} `type:"structure"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` // The name of the policy. // // PolicyName is a required field PolicyName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteLoadBalancerPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLoadBalancerPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteLoadBalancerPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteLoadBalancerPolicyInput"} if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DeleteLoadBalancerPolicy. type DeleteLoadBalancerPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteLoadBalancerPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLoadBalancerPolicyOutput) GoString() string { return s.String() } // Contains the parameters for DeregisterInstancesFromLoadBalancer. type DeregisterInstancesFromLoadBalancerInput struct { _ struct{} `type:"structure"` // The IDs of the instances. // // Instances is a required field Instances []*Instance `type:"list" required:"true"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` } // String returns the string representation func (s DeregisterInstancesFromLoadBalancerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterInstancesFromLoadBalancerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeregisterInstancesFromLoadBalancerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeregisterInstancesFromLoadBalancerInput"} if s.Instances == nil { invalidParams.Add(request.NewErrParamRequired("Instances")) } if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DeregisterInstancesFromLoadBalancer. type DeregisterInstancesFromLoadBalancerOutput struct { _ struct{} `type:"structure"` // The remaining instances registered with the load balancer. Instances []*Instance `type:"list"` } // String returns the string representation func (s DeregisterInstancesFromLoadBalancerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterInstancesFromLoadBalancerOutput) GoString() string { return s.String() } // Contains the parameters for DescribeInstanceHealth. type DescribeInstanceHealthInput struct { _ struct{} `type:"structure"` // The IDs of the instances. Instances []*Instance `type:"list"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeInstanceHealthInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInstanceHealthInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeInstanceHealthInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeInstanceHealthInput"} if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output for DescribeInstanceHealth. type DescribeInstanceHealthOutput struct { _ struct{} `type:"structure"` // Information about the health of the instances. InstanceStates []*InstanceState `type:"list"` } // String returns the string representation func (s DescribeInstanceHealthOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInstanceHealthOutput) GoString() string { return s.String() } // Contains the parameters for DescribeLoadBalancerAttributes. type DescribeLoadBalancerAttributesInput struct { _ struct{} `type:"structure"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeLoadBalancerAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoadBalancerAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeLoadBalancerAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeLoadBalancerAttributesInput"} if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeLoadBalancerAttributes. type DescribeLoadBalancerAttributesOutput struct { _ struct{} `type:"structure"` // Information about the load balancer attributes. LoadBalancerAttributes *LoadBalancerAttributes `type:"structure"` } // String returns the string representation func (s DescribeLoadBalancerAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoadBalancerAttributesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeLoadBalancerPolicies. type DescribeLoadBalancerPoliciesInput struct { _ struct{} `type:"structure"` // The name of the load balancer. LoadBalancerName *string `type:"string"` // The names of the policies. PolicyNames []*string `type:"list"` } // String returns the string representation func (s DescribeLoadBalancerPoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoadBalancerPoliciesInput) GoString() string { return s.String() } // Contains the output of DescribeLoadBalancerPolicies. type DescribeLoadBalancerPoliciesOutput struct { _ struct{} `type:"structure"` // Information about the policies. PolicyDescriptions []*PolicyDescription `type:"list"` } // String returns the string representation func (s DescribeLoadBalancerPoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoadBalancerPoliciesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeLoadBalancerPolicyTypes. type DescribeLoadBalancerPolicyTypesInput struct { _ struct{} `type:"structure"` // The names of the policy types. If no names are specified, describes all policy // types defined by Elastic Load Balancing. PolicyTypeNames []*string `type:"list"` } // String returns the string representation func (s DescribeLoadBalancerPolicyTypesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoadBalancerPolicyTypesInput) GoString() string { return s.String() } // Contains the output of DescribeLoadBalancerPolicyTypes. type DescribeLoadBalancerPolicyTypesOutput struct { _ struct{} `type:"structure"` // Information about the policy types. PolicyTypeDescriptions []*PolicyTypeDescription `type:"list"` } // String returns the string representation func (s DescribeLoadBalancerPolicyTypesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoadBalancerPolicyTypesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeLoadBalancers. type DescribeLoadBalancersInput struct { _ struct{} `type:"structure"` // The names of the load balancers. LoadBalancerNames []*string `type:"list"` // The marker for the next set of results. (You received this marker from a // previous call.) Marker *string `type:"string"` // The maximum number of results to return with this call (a number from 1 to // 400). The default is 400. PageSize *int64 `min:"1" type:"integer"` } // String returns the string representation func (s DescribeLoadBalancersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoadBalancersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeLoadBalancersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeLoadBalancersInput"} if s.PageSize != nil && *s.PageSize < 1 { invalidParams.Add(request.NewErrParamMinValue("PageSize", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for DescribeLoadBalancers. type DescribeLoadBalancersOutput struct { _ struct{} `type:"structure"` // Information about the load balancers. LoadBalancerDescriptions []*LoadBalancerDescription `type:"list"` // The marker to use when requesting the next set of results. If there are no // additional results, the string is empty. NextMarker *string `type:"string"` } // String returns the string representation func (s DescribeLoadBalancersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoadBalancersOutput) GoString() string { return s.String() } // Contains the parameters for DescribeTags. type DescribeTagsInput struct { _ struct{} `type:"structure"` // The names of the load balancers. // // LoadBalancerNames is a required field LoadBalancerNames []*string `min:"1" type:"list" required:"true"` } // String returns the string representation func (s DescribeTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTagsInput"} if s.LoadBalancerNames == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerNames")) } if s.LoadBalancerNames != nil && len(s.LoadBalancerNames) < 1 { invalidParams.Add(request.NewErrParamMinLen("LoadBalancerNames", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output for DescribeTags. type DescribeTagsOutput struct { _ struct{} `type:"structure"` // Information about the tags. TagDescriptions []*TagDescription `type:"list"` } // String returns the string representation func (s DescribeTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsOutput) GoString() string { return s.String() } // Contains the parameters for DetachLoadBalancerFromSubnets. type DetachLoadBalancerFromSubnetsInput struct { _ struct{} `type:"structure"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` // The IDs of the subnets. // // Subnets is a required field Subnets []*string `type:"list" required:"true"` } // String returns the string representation func (s DetachLoadBalancerFromSubnetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachLoadBalancerFromSubnetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DetachLoadBalancerFromSubnetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DetachLoadBalancerFromSubnetsInput"} if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if s.Subnets == nil { invalidParams.Add(request.NewErrParamRequired("Subnets")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DetachLoadBalancerFromSubnets. type DetachLoadBalancerFromSubnetsOutput struct { _ struct{} `type:"structure"` // The IDs of the remaining subnets for the load balancer. Subnets []*string `type:"list"` } // String returns the string representation func (s DetachLoadBalancerFromSubnetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachLoadBalancerFromSubnetsOutput) GoString() string { return s.String() } // Contains the parameters for DisableAvailabilityZonesForLoadBalancer. type DisableAvailabilityZonesForLoadBalancerInput struct { _ struct{} `type:"structure"` // The Availability Zones. // // AvailabilityZones is a required field AvailabilityZones []*string `type:"list" required:"true"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` } // String returns the string representation func (s DisableAvailabilityZonesForLoadBalancerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableAvailabilityZonesForLoadBalancerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisableAvailabilityZonesForLoadBalancerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisableAvailabilityZonesForLoadBalancerInput"} if s.AvailabilityZones == nil { invalidParams.Add(request.NewErrParamRequired("AvailabilityZones")) } if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output for DisableAvailabilityZonesForLoadBalancer. type DisableAvailabilityZonesForLoadBalancerOutput struct { _ struct{} `type:"structure"` // The remaining Availability Zones for the load balancer. AvailabilityZones []*string `type:"list"` } // String returns the string representation func (s DisableAvailabilityZonesForLoadBalancerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableAvailabilityZonesForLoadBalancerOutput) GoString() string { return s.String() } // Contains the parameters for EnableAvailabilityZonesForLoadBalancer. type EnableAvailabilityZonesForLoadBalancerInput struct { _ struct{} `type:"structure"` // The Availability Zones. These must be in the same region as the load balancer. // // AvailabilityZones is a required field AvailabilityZones []*string `type:"list" required:"true"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` } // String returns the string representation func (s EnableAvailabilityZonesForLoadBalancerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableAvailabilityZonesForLoadBalancerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableAvailabilityZonesForLoadBalancerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableAvailabilityZonesForLoadBalancerInput"} if s.AvailabilityZones == nil { invalidParams.Add(request.NewErrParamRequired("AvailabilityZones")) } if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of EnableAvailabilityZonesForLoadBalancer. type EnableAvailabilityZonesForLoadBalancerOutput struct { _ struct{} `type:"structure"` // The updated list of Availability Zones for the load balancer. AvailabilityZones []*string `type:"list"` } // String returns the string representation func (s EnableAvailabilityZonesForLoadBalancerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableAvailabilityZonesForLoadBalancerOutput) GoString() string { return s.String() } // Information about a health check. type HealthCheck struct { _ struct{} `type:"structure"` // The number of consecutive health checks successes required before moving // the instance to the Healthy state. // // HealthyThreshold is a required field HealthyThreshold *int64 `min:"2" type:"integer" required:"true"` // The approximate interval, in seconds, between health checks of an individual // instance. // // Interval is a required field Interval *int64 `min:"5" type:"integer" required:"true"` // The instance being checked. The protocol is either TCP, HTTP, HTTPS, or SSL. // The range of valid ports is one (1) through 65535. // // TCP is the default, specified as a TCP: port pair, for example "TCP:5000". // In this case, a health check simply attempts to open a TCP connection to // the instance on the specified port. Failure to connect within the configured // timeout is considered unhealthy. // // SSL is also specified as SSL: port pair, for example, SSL:5000. // // For HTTP/HTTPS, you must include a ping path in the string. HTTP is specified // as a HTTP:port;/;PathToPing; grouping, for example "HTTP:80/weather/us/wa/seattle". // In this case, a HTTP GET request is issued to the instance on the given port // and path. Any answer other than "200 OK" within the timeout period is considered // unhealthy. // // The total length of the HTTP ping target must be 1024 16-bit Unicode characters // or less. // // Target is a required field Target *string `type:"string" required:"true"` // The amount of time, in seconds, during which no response means a failed health // check. // // This value must be less than the Interval value. // // Timeout is a required field Timeout *int64 `min:"2" type:"integer" required:"true"` // The number of consecutive health check failures required before moving the // instance to the Unhealthy state. // // UnhealthyThreshold is a required field UnhealthyThreshold *int64 `min:"2" type:"integer" required:"true"` } // String returns the string representation func (s HealthCheck) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HealthCheck) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *HealthCheck) Validate() error { invalidParams := request.ErrInvalidParams{Context: "HealthCheck"} if s.HealthyThreshold == nil { invalidParams.Add(request.NewErrParamRequired("HealthyThreshold")) } if s.HealthyThreshold != nil && *s.HealthyThreshold < 2 { invalidParams.Add(request.NewErrParamMinValue("HealthyThreshold", 2)) } if s.Interval == nil { invalidParams.Add(request.NewErrParamRequired("Interval")) } if s.Interval != nil && *s.Interval < 5 { invalidParams.Add(request.NewErrParamMinValue("Interval", 5)) } if s.Target == nil { invalidParams.Add(request.NewErrParamRequired("Target")) } if s.Timeout == nil { invalidParams.Add(request.NewErrParamRequired("Timeout")) } if s.Timeout != nil && *s.Timeout < 2 { invalidParams.Add(request.NewErrParamMinValue("Timeout", 2)) } if s.UnhealthyThreshold == nil { invalidParams.Add(request.NewErrParamRequired("UnhealthyThreshold")) } if s.UnhealthyThreshold != nil && *s.UnhealthyThreshold < 2 { invalidParams.Add(request.NewErrParamMinValue("UnhealthyThreshold", 2)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The ID of an EC2 instance. type Instance struct { _ struct{} `type:"structure"` // The instance ID. InstanceId *string `type:"string"` } // String returns the string representation func (s Instance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Instance) GoString() string { return s.String() } // Information about the state of an EC2 instance. type InstanceState struct { _ struct{} `type:"structure"` // A description of the instance state. This string can contain one or more // of the following messages. // // * N/A // // * A transient error occurred. Please try again later. // // * Instance has failed at least the UnhealthyThreshold number of health // checks consecutively. // // * Instance has not passed the configured HealthyThreshold number of health // checks consecutively. // // * Instance registration is still in progress. // // * Instance is in the EC2 Availability Zone for which LoadBalancer is not // configured to route traffic to. // // * Instance is not currently registered with the LoadBalancer. // // * Instance deregistration currently in progress. // // * Disable Availability Zone is currently in progress. // // * Instance is in pending state. // // * Instance is in stopped state. // // * Instance is in terminated state. Description *string `type:"string"` // The ID of the instance. InstanceId *string `type:"string"` // Information about the cause of OutOfService instances. Specifically, whether // the cause is Elastic Load Balancing or the instance. // // Valid values: ELB | Instance | N/A ReasonCode *string `type:"string"` // The current state of the instance. // // Valid values: InService | OutOfService | Unknown State *string `type:"string"` } // String returns the string representation func (s InstanceState) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceState) GoString() string { return s.String() } // Information about a policy for duration-based session stickiness. type LBCookieStickinessPolicy struct { _ struct{} `type:"structure"` // The time period, in seconds, after which the cookie should be considered // stale. If this parameter is not specified, the stickiness session lasts for // the duration of the browser session. CookieExpirationPeriod *int64 `type:"long"` // The name of the policy. This name must be unique within the set of policies // for this load balancer. PolicyName *string `type:"string"` } // String returns the string representation func (s LBCookieStickinessPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LBCookieStickinessPolicy) GoString() string { return s.String() } // Information about a listener. // // For information about the protocols and the ports supported by Elastic Load // Balancing, see Listeners for Your Classic Load Balancer (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-listener-config.html) // in the Classic Load Balancers Guide. type Listener struct { _ struct{} `type:"structure"` // The port on which the instance is listening. // // InstancePort is a required field InstancePort *int64 `min:"1" type:"integer" required:"true"` // The protocol to use for routing traffic to instances: HTTP, HTTPS, TCP, or // SSL. // // If the front-end protocol is HTTP, HTTPS, TCP, or SSL, InstanceProtocol must // be at the same protocol. // // If there is another listener with the same InstancePort whose InstanceProtocol // is secure, (HTTPS or SSL), the listener's InstanceProtocol must also be secure. // // If there is another listener with the same InstancePort whose InstanceProtocol // is HTTP or TCP, the listener's InstanceProtocol must be HTTP or TCP. InstanceProtocol *string `type:"string"` // The port on which the load balancer is listening. On EC2-VPC, you can specify // any port from the range 1-65535. On EC2-Classic, you can specify any port // from the following list: 25, 80, 443, 465, 587, 1024-65535. // // LoadBalancerPort is a required field LoadBalancerPort *int64 `type:"integer" required:"true"` // The load balancer transport protocol to use for routing: HTTP, HTTPS, TCP, // or SSL. // // Protocol is a required field Protocol *string `type:"string" required:"true"` // The Amazon Resource Name (ARN) of the server certificate. SSLCertificateId *string `type:"string"` } // String returns the string representation func (s Listener) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Listener) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Listener) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Listener"} if s.InstancePort == nil { invalidParams.Add(request.NewErrParamRequired("InstancePort")) } if s.InstancePort != nil && *s.InstancePort < 1 { invalidParams.Add(request.NewErrParamMinValue("InstancePort", 1)) } if s.LoadBalancerPort == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerPort")) } if s.Protocol == nil { invalidParams.Add(request.NewErrParamRequired("Protocol")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The policies enabled for a listener. type ListenerDescription struct { _ struct{} `type:"structure"` // Information about a listener. // // For information about the protocols and the ports supported by Elastic Load // Balancing, see Listeners for Your Classic Load Balancer (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-listener-config.html) // in the Classic Load Balancers Guide. Listener *Listener `type:"structure"` // The policies. If there are no policies enabled, the list is empty. PolicyNames []*string `type:"list"` } // String returns the string representation func (s ListenerDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListenerDescription) GoString() string { return s.String() } // The attributes for a load balancer. type LoadBalancerAttributes struct { _ struct{} `type:"structure"` // If enabled, the load balancer captures detailed information of all requests // and delivers the information to the Amazon S3 bucket that you specify. // // For more information, see Enable Access Logs (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html) // in the Classic Load Balancers Guide. AccessLog *AccessLog `type:"structure"` // This parameter is reserved. AdditionalAttributes []*AdditionalAttribute `type:"list"` // If enabled, the load balancer allows existing requests to complete before // the load balancer shifts traffic away from a deregistered or unhealthy instance. // // For more information, see Configure Connection Draining (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/config-conn-drain.html) // in the Classic Load Balancers Guide. ConnectionDraining *ConnectionDraining `type:"structure"` // If enabled, the load balancer allows the connections to remain idle (no data // is sent over the connection) for the specified duration. // // By default, Elastic Load Balancing maintains a 60-second idle connection // timeout for both front-end and back-end connections of your load balancer. // For more information, see Configure Idle Connection Timeout (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/config-idle-timeout.html) // in the Classic Load Balancers Guide. ConnectionSettings *ConnectionSettings `type:"structure"` // If enabled, the load balancer routes the request traffic evenly across all // instances regardless of the Availability Zones. // // For more information, see Configure Cross-Zone Load Balancing (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-disable-crosszone-lb.html) // in the Classic Load Balancers Guide. CrossZoneLoadBalancing *CrossZoneLoadBalancing `type:"structure"` } // String returns the string representation func (s LoadBalancerAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LoadBalancerAttributes) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LoadBalancerAttributes) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LoadBalancerAttributes"} if s.AccessLog != nil { if err := s.AccessLog.Validate(); err != nil { invalidParams.AddNested("AccessLog", err.(request.ErrInvalidParams)) } } if s.ConnectionDraining != nil { if err := s.ConnectionDraining.Validate(); err != nil { invalidParams.AddNested("ConnectionDraining", err.(request.ErrInvalidParams)) } } if s.ConnectionSettings != nil { if err := s.ConnectionSettings.Validate(); err != nil { invalidParams.AddNested("ConnectionSettings", err.(request.ErrInvalidParams)) } } if s.CrossZoneLoadBalancing != nil { if err := s.CrossZoneLoadBalancing.Validate(); err != nil { invalidParams.AddNested("CrossZoneLoadBalancing", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Information about a load balancer. type LoadBalancerDescription struct { _ struct{} `type:"structure"` // The Availability Zones for the load balancer. AvailabilityZones []*string `type:"list"` // Information about your EC2 instances. BackendServerDescriptions []*BackendServerDescription `type:"list"` // The DNS name of the load balancer. // // For more information, see Configure a Custom Domain Name (http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/using-domain-names-with-elb.html) // in the Classic Load Balancers Guide. CanonicalHostedZoneName *string `type:"string"` // The ID of the Amazon Route 53 hosted zone for the load balancer. CanonicalHostedZoneNameID *string `type:"string"` // The date and time the load balancer was created. CreatedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The DNS name of the load balancer. DNSName *string `type:"string"` // Information about the health checks conducted on the load balancer. HealthCheck *HealthCheck `type:"structure"` // The IDs of the instances for the load balancer. Instances []*Instance `type:"list"` // The listeners for the load balancer. ListenerDescriptions []*ListenerDescription `type:"list"` // The name of the load balancer. LoadBalancerName *string `type:"string"` // The policies defined for the load balancer. Policies *Policies `type:"structure"` // The type of load balancer. Valid only for load balancers in a VPC. // // If Scheme is internet-facing, the load balancer has a public DNS name that // resolves to a public IP address. // // If Scheme is internal, the load balancer has a public DNS name that resolves // to a private IP address. Scheme *string `type:"string"` // The security groups for the load balancer. Valid only for load balancers // in a VPC. SecurityGroups []*string `type:"list"` // The security group for the load balancer, which you can use as part of your // inbound rules for your registered instances. To only allow traffic from load // balancers, add a security group rule that specifies this source security // group as the inbound source. SourceSecurityGroup *SourceSecurityGroup `type:"structure"` // The IDs of the subnets for the load balancer. Subnets []*string `type:"list"` // The ID of the VPC for the load balancer. VPCId *string `type:"string"` } // String returns the string representation func (s LoadBalancerDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LoadBalancerDescription) GoString() string { return s.String() } // Contains the parameters for ModifyLoadBalancerAttributes. type ModifyLoadBalancerAttributesInput struct { _ struct{} `type:"structure"` // The attributes of the load balancer. // // LoadBalancerAttributes is a required field LoadBalancerAttributes *LoadBalancerAttributes `type:"structure" required:"true"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` } // String returns the string representation func (s ModifyLoadBalancerAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyLoadBalancerAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyLoadBalancerAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyLoadBalancerAttributesInput"} if s.LoadBalancerAttributes == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerAttributes")) } if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if s.LoadBalancerAttributes != nil { if err := s.LoadBalancerAttributes.Validate(); err != nil { invalidParams.AddNested("LoadBalancerAttributes", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ModifyLoadBalancerAttributes. type ModifyLoadBalancerAttributesOutput struct { _ struct{} `type:"structure"` // The attributes for a load balancer. LoadBalancerAttributes *LoadBalancerAttributes `type:"structure"` // The name of the load balancer. LoadBalancerName *string `type:"string"` } // String returns the string representation func (s ModifyLoadBalancerAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyLoadBalancerAttributesOutput) GoString() string { return s.String() } // The policies for a load balancer. type Policies struct { _ struct{} `type:"structure"` // The stickiness policies created using CreateAppCookieStickinessPolicy. AppCookieStickinessPolicies []*AppCookieStickinessPolicy `type:"list"` // The stickiness policies created using CreateLBCookieStickinessPolicy. LBCookieStickinessPolicies []*LBCookieStickinessPolicy `type:"list"` // The policies other than the stickiness policies. OtherPolicies []*string `type:"list"` } // String returns the string representation func (s Policies) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Policies) GoString() string { return s.String() } // Information about a policy attribute. type PolicyAttribute struct { _ struct{} `type:"structure"` // The name of the attribute. AttributeName *string `type:"string"` // The value of the attribute. AttributeValue *string `type:"string"` } // String returns the string representation func (s PolicyAttribute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PolicyAttribute) GoString() string { return s.String() } // Information about a policy attribute. type PolicyAttributeDescription struct { _ struct{} `type:"structure"` // The name of the attribute. AttributeName *string `type:"string"` // The value of the attribute. AttributeValue *string `type:"string"` } // String returns the string representation func (s PolicyAttributeDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PolicyAttributeDescription) GoString() string { return s.String() } // Information about a policy attribute type. type PolicyAttributeTypeDescription struct { _ struct{} `type:"structure"` // The name of the attribute. AttributeName *string `type:"string"` // The type of the attribute. For example, Boolean or Integer. AttributeType *string `type:"string"` // The cardinality of the attribute. // // Valid values: // // * ONE(1) : Single value required // // * ZERO_OR_ONE(0..1) : Up to one value is allowed // // * ZERO_OR_MORE(0..*) : Optional. Multiple values are allowed // // * ONE_OR_MORE(1..*0) : Required. Multiple values are allowed Cardinality *string `type:"string"` // The default value of the attribute, if applicable. DefaultValue *string `type:"string"` // A description of the attribute. Description *string `type:"string"` } // String returns the string representation func (s PolicyAttributeTypeDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PolicyAttributeTypeDescription) GoString() string { return s.String() } // Information about a policy. type PolicyDescription struct { _ struct{} `type:"structure"` // The policy attributes. PolicyAttributeDescriptions []*PolicyAttributeDescription `type:"list"` // The name of the policy. PolicyName *string `type:"string"` // The name of the policy type. PolicyTypeName *string `type:"string"` } // String returns the string representation func (s PolicyDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PolicyDescription) GoString() string { return s.String() } // Information about a policy type. type PolicyTypeDescription struct { _ struct{} `type:"structure"` // A description of the policy type. Description *string `type:"string"` // The description of the policy attributes associated with the policies defined // by Elastic Load Balancing. PolicyAttributeTypeDescriptions []*PolicyAttributeTypeDescription `type:"list"` // The name of the policy type. PolicyTypeName *string `type:"string"` } // String returns the string representation func (s PolicyTypeDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PolicyTypeDescription) GoString() string { return s.String() } // Contains the parameters for RegisterInstancesWithLoadBalancer. type RegisterInstancesWithLoadBalancerInput struct { _ struct{} `type:"structure"` // The IDs of the instances. // // Instances is a required field Instances []*Instance `type:"list" required:"true"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` } // String returns the string representation func (s RegisterInstancesWithLoadBalancerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterInstancesWithLoadBalancerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterInstancesWithLoadBalancerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterInstancesWithLoadBalancerInput"} if s.Instances == nil { invalidParams.Add(request.NewErrParamRequired("Instances")) } if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of RegisterInstancesWithLoadBalancer. type RegisterInstancesWithLoadBalancerOutput struct { _ struct{} `type:"structure"` // The updated list of instances for the load balancer. Instances []*Instance `type:"list"` } // String returns the string representation func (s RegisterInstancesWithLoadBalancerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterInstancesWithLoadBalancerOutput) GoString() string { return s.String() } // Contains the parameters for RemoveTags. type RemoveTagsInput struct { _ struct{} `type:"structure"` // The name of the load balancer. You can specify a maximum of one load balancer // name. // // LoadBalancerNames is a required field LoadBalancerNames []*string `type:"list" required:"true"` // The list of tag keys to remove. // // Tags is a required field Tags []*TagKeyOnly `min:"1" type:"list" required:"true"` } // String returns the string representation func (s RemoveTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTagsInput"} if s.LoadBalancerNames == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerNames")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil && len(s.Tags) < 1 { invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of RemoveTags. type RemoveTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsOutput) GoString() string { return s.String() } // Contains the parameters for SetLoadBalancerListenerSSLCertificate. type SetLoadBalancerListenerSSLCertificateInput struct { _ struct{} `type:"structure"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` // The port that uses the specified SSL certificate. // // LoadBalancerPort is a required field LoadBalancerPort *int64 `type:"integer" required:"true"` // The Amazon Resource Name (ARN) of the SSL certificate. // // SSLCertificateId is a required field SSLCertificateId *string `type:"string" required:"true"` } // String returns the string representation func (s SetLoadBalancerListenerSSLCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetLoadBalancerListenerSSLCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetLoadBalancerListenerSSLCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetLoadBalancerListenerSSLCertificateInput"} if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if s.LoadBalancerPort == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerPort")) } if s.SSLCertificateId == nil { invalidParams.Add(request.NewErrParamRequired("SSLCertificateId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of SetLoadBalancerListenerSSLCertificate. type SetLoadBalancerListenerSSLCertificateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetLoadBalancerListenerSSLCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetLoadBalancerListenerSSLCertificateOutput) GoString() string { return s.String() } // Contains the parameters for SetLoadBalancerPoliciesForBackendServer. type SetLoadBalancerPoliciesForBackendServerInput struct { _ struct{} `type:"structure"` // The port number associated with the EC2 instance. // // InstancePort is a required field InstancePort *int64 `type:"integer" required:"true"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` // The names of the policies. If the list is empty, then all current polices // are removed from the EC2 instance. // // PolicyNames is a required field PolicyNames []*string `type:"list" required:"true"` } // String returns the string representation func (s SetLoadBalancerPoliciesForBackendServerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetLoadBalancerPoliciesForBackendServerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetLoadBalancerPoliciesForBackendServerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetLoadBalancerPoliciesForBackendServerInput"} if s.InstancePort == nil { invalidParams.Add(request.NewErrParamRequired("InstancePort")) } if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if s.PolicyNames == nil { invalidParams.Add(request.NewErrParamRequired("PolicyNames")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of SetLoadBalancerPoliciesForBackendServer. type SetLoadBalancerPoliciesForBackendServerOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetLoadBalancerPoliciesForBackendServerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetLoadBalancerPoliciesForBackendServerOutput) GoString() string { return s.String() } // Contains the parameters for SetLoadBalancePoliciesOfListener. type SetLoadBalancerPoliciesOfListenerInput struct { _ struct{} `type:"structure"` // The name of the load balancer. // // LoadBalancerName is a required field LoadBalancerName *string `type:"string" required:"true"` // The external port of the load balancer. // // LoadBalancerPort is a required field LoadBalancerPort *int64 `type:"integer" required:"true"` // The names of the policies. This list must include all policies to be enabled. // If you omit a policy that is currently enabled, it is disabled. If the list // is empty, all current policies are disabled. // // PolicyNames is a required field PolicyNames []*string `type:"list" required:"true"` } // String returns the string representation func (s SetLoadBalancerPoliciesOfListenerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetLoadBalancerPoliciesOfListenerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetLoadBalancerPoliciesOfListenerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetLoadBalancerPoliciesOfListenerInput"} if s.LoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerName")) } if s.LoadBalancerPort == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerPort")) } if s.PolicyNames == nil { invalidParams.Add(request.NewErrParamRequired("PolicyNames")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of SetLoadBalancePoliciesOfListener. type SetLoadBalancerPoliciesOfListenerOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetLoadBalancerPoliciesOfListenerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetLoadBalancerPoliciesOfListenerOutput) GoString() string { return s.String() } // Information about a source security group. type SourceSecurityGroup struct { _ struct{} `type:"structure"` // The name of the security group. GroupName *string `type:"string"` // The owner of the security group. OwnerAlias *string `type:"string"` } // String returns the string representation func (s SourceSecurityGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SourceSecurityGroup) GoString() string { return s.String() } // Information about a tag. type Tag struct { _ struct{} `type:"structure"` // The key of the tag. // // Key is a required field Key *string `min:"1" type:"string" required:"true"` // The value of the tag. Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The tags associated with a load balancer. type TagDescription struct { _ struct{} `type:"structure"` // The name of the load balancer. LoadBalancerName *string `type:"string"` // The tags. Tags []*Tag `min:"1" type:"list"` } // String returns the string representation func (s TagDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TagDescription) GoString() string { return s.String() } // The key of a tag. type TagKeyOnly struct { _ struct{} `type:"structure"` // The name of the key. Key *string `min:"1" type:"string"` } // String returns the string representation func (s TagKeyOnly) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TagKeyOnly) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TagKeyOnly) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TagKeyOnly"} if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } aws-sdk-go-1.4.22/service/elb/elbiface/000077500000000000000000000000001300374646400175175ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/elb/elbiface/interface.go000066400000000000000000000223221300374646400220070ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package elbiface provides an interface to enable mocking the Elastic Load Balancing service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package elbiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/elb" ) // ELBAPI provides an interface to enable mocking the // elb.ELB service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Elastic Load Balancing. // func myFunc(svc elbiface.ELBAPI) bool { // // Make svc.AddTags request // } // // func main() { // sess := session.New() // svc := elb.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockELBClient struct { // elbiface.ELBAPI // } // func (m *mockELBClient) AddTags(input *elb.AddTagsInput) (*elb.AddTagsOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockELBClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type ELBAPI interface { AddTagsRequest(*elb.AddTagsInput) (*request.Request, *elb.AddTagsOutput) AddTags(*elb.AddTagsInput) (*elb.AddTagsOutput, error) ApplySecurityGroupsToLoadBalancerRequest(*elb.ApplySecurityGroupsToLoadBalancerInput) (*request.Request, *elb.ApplySecurityGroupsToLoadBalancerOutput) ApplySecurityGroupsToLoadBalancer(*elb.ApplySecurityGroupsToLoadBalancerInput) (*elb.ApplySecurityGroupsToLoadBalancerOutput, error) AttachLoadBalancerToSubnetsRequest(*elb.AttachLoadBalancerToSubnetsInput) (*request.Request, *elb.AttachLoadBalancerToSubnetsOutput) AttachLoadBalancerToSubnets(*elb.AttachLoadBalancerToSubnetsInput) (*elb.AttachLoadBalancerToSubnetsOutput, error) ConfigureHealthCheckRequest(*elb.ConfigureHealthCheckInput) (*request.Request, *elb.ConfigureHealthCheckOutput) ConfigureHealthCheck(*elb.ConfigureHealthCheckInput) (*elb.ConfigureHealthCheckOutput, error) CreateAppCookieStickinessPolicyRequest(*elb.CreateAppCookieStickinessPolicyInput) (*request.Request, *elb.CreateAppCookieStickinessPolicyOutput) CreateAppCookieStickinessPolicy(*elb.CreateAppCookieStickinessPolicyInput) (*elb.CreateAppCookieStickinessPolicyOutput, error) CreateLBCookieStickinessPolicyRequest(*elb.CreateLBCookieStickinessPolicyInput) (*request.Request, *elb.CreateLBCookieStickinessPolicyOutput) CreateLBCookieStickinessPolicy(*elb.CreateLBCookieStickinessPolicyInput) (*elb.CreateLBCookieStickinessPolicyOutput, error) CreateLoadBalancerRequest(*elb.CreateLoadBalancerInput) (*request.Request, *elb.CreateLoadBalancerOutput) CreateLoadBalancer(*elb.CreateLoadBalancerInput) (*elb.CreateLoadBalancerOutput, error) CreateLoadBalancerListenersRequest(*elb.CreateLoadBalancerListenersInput) (*request.Request, *elb.CreateLoadBalancerListenersOutput) CreateLoadBalancerListeners(*elb.CreateLoadBalancerListenersInput) (*elb.CreateLoadBalancerListenersOutput, error) CreateLoadBalancerPolicyRequest(*elb.CreateLoadBalancerPolicyInput) (*request.Request, *elb.CreateLoadBalancerPolicyOutput) CreateLoadBalancerPolicy(*elb.CreateLoadBalancerPolicyInput) (*elb.CreateLoadBalancerPolicyOutput, error) DeleteLoadBalancerRequest(*elb.DeleteLoadBalancerInput) (*request.Request, *elb.DeleteLoadBalancerOutput) DeleteLoadBalancer(*elb.DeleteLoadBalancerInput) (*elb.DeleteLoadBalancerOutput, error) DeleteLoadBalancerListenersRequest(*elb.DeleteLoadBalancerListenersInput) (*request.Request, *elb.DeleteLoadBalancerListenersOutput) DeleteLoadBalancerListeners(*elb.DeleteLoadBalancerListenersInput) (*elb.DeleteLoadBalancerListenersOutput, error) DeleteLoadBalancerPolicyRequest(*elb.DeleteLoadBalancerPolicyInput) (*request.Request, *elb.DeleteLoadBalancerPolicyOutput) DeleteLoadBalancerPolicy(*elb.DeleteLoadBalancerPolicyInput) (*elb.DeleteLoadBalancerPolicyOutput, error) DeregisterInstancesFromLoadBalancerRequest(*elb.DeregisterInstancesFromLoadBalancerInput) (*request.Request, *elb.DeregisterInstancesFromLoadBalancerOutput) DeregisterInstancesFromLoadBalancer(*elb.DeregisterInstancesFromLoadBalancerInput) (*elb.DeregisterInstancesFromLoadBalancerOutput, error) DescribeInstanceHealthRequest(*elb.DescribeInstanceHealthInput) (*request.Request, *elb.DescribeInstanceHealthOutput) DescribeInstanceHealth(*elb.DescribeInstanceHealthInput) (*elb.DescribeInstanceHealthOutput, error) DescribeLoadBalancerAttributesRequest(*elb.DescribeLoadBalancerAttributesInput) (*request.Request, *elb.DescribeLoadBalancerAttributesOutput) DescribeLoadBalancerAttributes(*elb.DescribeLoadBalancerAttributesInput) (*elb.DescribeLoadBalancerAttributesOutput, error) DescribeLoadBalancerPoliciesRequest(*elb.DescribeLoadBalancerPoliciesInput) (*request.Request, *elb.DescribeLoadBalancerPoliciesOutput) DescribeLoadBalancerPolicies(*elb.DescribeLoadBalancerPoliciesInput) (*elb.DescribeLoadBalancerPoliciesOutput, error) DescribeLoadBalancerPolicyTypesRequest(*elb.DescribeLoadBalancerPolicyTypesInput) (*request.Request, *elb.DescribeLoadBalancerPolicyTypesOutput) DescribeLoadBalancerPolicyTypes(*elb.DescribeLoadBalancerPolicyTypesInput) (*elb.DescribeLoadBalancerPolicyTypesOutput, error) DescribeLoadBalancersRequest(*elb.DescribeLoadBalancersInput) (*request.Request, *elb.DescribeLoadBalancersOutput) DescribeLoadBalancers(*elb.DescribeLoadBalancersInput) (*elb.DescribeLoadBalancersOutput, error) DescribeLoadBalancersPages(*elb.DescribeLoadBalancersInput, func(*elb.DescribeLoadBalancersOutput, bool) bool) error DescribeTagsRequest(*elb.DescribeTagsInput) (*request.Request, *elb.DescribeTagsOutput) DescribeTags(*elb.DescribeTagsInput) (*elb.DescribeTagsOutput, error) DetachLoadBalancerFromSubnetsRequest(*elb.DetachLoadBalancerFromSubnetsInput) (*request.Request, *elb.DetachLoadBalancerFromSubnetsOutput) DetachLoadBalancerFromSubnets(*elb.DetachLoadBalancerFromSubnetsInput) (*elb.DetachLoadBalancerFromSubnetsOutput, error) DisableAvailabilityZonesForLoadBalancerRequest(*elb.DisableAvailabilityZonesForLoadBalancerInput) (*request.Request, *elb.DisableAvailabilityZonesForLoadBalancerOutput) DisableAvailabilityZonesForLoadBalancer(*elb.DisableAvailabilityZonesForLoadBalancerInput) (*elb.DisableAvailabilityZonesForLoadBalancerOutput, error) EnableAvailabilityZonesForLoadBalancerRequest(*elb.EnableAvailabilityZonesForLoadBalancerInput) (*request.Request, *elb.EnableAvailabilityZonesForLoadBalancerOutput) EnableAvailabilityZonesForLoadBalancer(*elb.EnableAvailabilityZonesForLoadBalancerInput) (*elb.EnableAvailabilityZonesForLoadBalancerOutput, error) ModifyLoadBalancerAttributesRequest(*elb.ModifyLoadBalancerAttributesInput) (*request.Request, *elb.ModifyLoadBalancerAttributesOutput) ModifyLoadBalancerAttributes(*elb.ModifyLoadBalancerAttributesInput) (*elb.ModifyLoadBalancerAttributesOutput, error) RegisterInstancesWithLoadBalancerRequest(*elb.RegisterInstancesWithLoadBalancerInput) (*request.Request, *elb.RegisterInstancesWithLoadBalancerOutput) RegisterInstancesWithLoadBalancer(*elb.RegisterInstancesWithLoadBalancerInput) (*elb.RegisterInstancesWithLoadBalancerOutput, error) RemoveTagsRequest(*elb.RemoveTagsInput) (*request.Request, *elb.RemoveTagsOutput) RemoveTags(*elb.RemoveTagsInput) (*elb.RemoveTagsOutput, error) SetLoadBalancerListenerSSLCertificateRequest(*elb.SetLoadBalancerListenerSSLCertificateInput) (*request.Request, *elb.SetLoadBalancerListenerSSLCertificateOutput) SetLoadBalancerListenerSSLCertificate(*elb.SetLoadBalancerListenerSSLCertificateInput) (*elb.SetLoadBalancerListenerSSLCertificateOutput, error) SetLoadBalancerPoliciesForBackendServerRequest(*elb.SetLoadBalancerPoliciesForBackendServerInput) (*request.Request, *elb.SetLoadBalancerPoliciesForBackendServerOutput) SetLoadBalancerPoliciesForBackendServer(*elb.SetLoadBalancerPoliciesForBackendServerInput) (*elb.SetLoadBalancerPoliciesForBackendServerOutput, error) SetLoadBalancerPoliciesOfListenerRequest(*elb.SetLoadBalancerPoliciesOfListenerInput) (*request.Request, *elb.SetLoadBalancerPoliciesOfListenerOutput) SetLoadBalancerPoliciesOfListener(*elb.SetLoadBalancerPoliciesOfListenerInput) (*elb.SetLoadBalancerPoliciesOfListenerOutput, error) WaitUntilAnyInstanceInService(*elb.DescribeInstanceHealthInput) error WaitUntilInstanceDeregistered(*elb.DescribeInstanceHealthInput) error WaitUntilInstanceInService(*elb.DescribeInstanceHealthInput) error } var _ ELBAPI = (*elb.ELB)(nil) aws-sdk-go-1.4.22/service/elb/examples_test.go000066400000000000000000000514261300374646400212010ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package elb_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/elb" ) var _ time.Duration var _ bytes.Buffer func ExampleELB_AddTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.AddTagsInput{ LoadBalancerNames: []*string{ // Required aws.String("AccessPointName"), // Required // More values... }, Tags: []*elb.Tag{ // Required { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), }, // More values... }, } resp, err := svc.AddTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_ApplySecurityGroupsToLoadBalancer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.ApplySecurityGroupsToLoadBalancerInput{ LoadBalancerName: aws.String("AccessPointName"), // Required SecurityGroups: []*string{ // Required aws.String("SecurityGroupId"), // Required // More values... }, } resp, err := svc.ApplySecurityGroupsToLoadBalancer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_AttachLoadBalancerToSubnets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.AttachLoadBalancerToSubnetsInput{ LoadBalancerName: aws.String("AccessPointName"), // Required Subnets: []*string{ // Required aws.String("SubnetId"), // Required // More values... }, } resp, err := svc.AttachLoadBalancerToSubnets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_ConfigureHealthCheck() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.ConfigureHealthCheckInput{ HealthCheck: &elb.HealthCheck{ // Required HealthyThreshold: aws.Int64(1), // Required Interval: aws.Int64(1), // Required Target: aws.String("HealthCheckTarget"), // Required Timeout: aws.Int64(1), // Required UnhealthyThreshold: aws.Int64(1), // Required }, LoadBalancerName: aws.String("AccessPointName"), // Required } resp, err := svc.ConfigureHealthCheck(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_CreateAppCookieStickinessPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.CreateAppCookieStickinessPolicyInput{ CookieName: aws.String("CookieName"), // Required LoadBalancerName: aws.String("AccessPointName"), // Required PolicyName: aws.String("PolicyName"), // Required } resp, err := svc.CreateAppCookieStickinessPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_CreateLBCookieStickinessPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.CreateLBCookieStickinessPolicyInput{ LoadBalancerName: aws.String("AccessPointName"), // Required PolicyName: aws.String("PolicyName"), // Required CookieExpirationPeriod: aws.Int64(1), } resp, err := svc.CreateLBCookieStickinessPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_CreateLoadBalancer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.CreateLoadBalancerInput{ Listeners: []*elb.Listener{ // Required { // Required InstancePort: aws.Int64(1), // Required LoadBalancerPort: aws.Int64(1), // Required Protocol: aws.String("Protocol"), // Required InstanceProtocol: aws.String("Protocol"), SSLCertificateId: aws.String("SSLCertificateId"), }, // More values... }, LoadBalancerName: aws.String("AccessPointName"), // Required AvailabilityZones: []*string{ aws.String("AvailabilityZone"), // Required // More values... }, Scheme: aws.String("LoadBalancerScheme"), SecurityGroups: []*string{ aws.String("SecurityGroupId"), // Required // More values... }, Subnets: []*string{ aws.String("SubnetId"), // Required // More values... }, Tags: []*elb.Tag{ { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), }, // More values... }, } resp, err := svc.CreateLoadBalancer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_CreateLoadBalancerListeners() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.CreateLoadBalancerListenersInput{ Listeners: []*elb.Listener{ // Required { // Required InstancePort: aws.Int64(1), // Required LoadBalancerPort: aws.Int64(1), // Required Protocol: aws.String("Protocol"), // Required InstanceProtocol: aws.String("Protocol"), SSLCertificateId: aws.String("SSLCertificateId"), }, // More values... }, LoadBalancerName: aws.String("AccessPointName"), // Required } resp, err := svc.CreateLoadBalancerListeners(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_CreateLoadBalancerPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.CreateLoadBalancerPolicyInput{ LoadBalancerName: aws.String("AccessPointName"), // Required PolicyName: aws.String("PolicyName"), // Required PolicyTypeName: aws.String("PolicyTypeName"), // Required PolicyAttributes: []*elb.PolicyAttribute{ { // Required AttributeName: aws.String("AttributeName"), AttributeValue: aws.String("AttributeValue"), }, // More values... }, } resp, err := svc.CreateLoadBalancerPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_DeleteLoadBalancer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.DeleteLoadBalancerInput{ LoadBalancerName: aws.String("AccessPointName"), // Required } resp, err := svc.DeleteLoadBalancer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_DeleteLoadBalancerListeners() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.DeleteLoadBalancerListenersInput{ LoadBalancerName: aws.String("AccessPointName"), // Required LoadBalancerPorts: []*int64{ // Required aws.Int64(1), // Required // More values... }, } resp, err := svc.DeleteLoadBalancerListeners(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_DeleteLoadBalancerPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.DeleteLoadBalancerPolicyInput{ LoadBalancerName: aws.String("AccessPointName"), // Required PolicyName: aws.String("PolicyName"), // Required } resp, err := svc.DeleteLoadBalancerPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_DeregisterInstancesFromLoadBalancer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.DeregisterInstancesFromLoadBalancerInput{ Instances: []*elb.Instance{ // Required { // Required InstanceId: aws.String("InstanceId"), }, // More values... }, LoadBalancerName: aws.String("AccessPointName"), // Required } resp, err := svc.DeregisterInstancesFromLoadBalancer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_DescribeInstanceHealth() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.DescribeInstanceHealthInput{ LoadBalancerName: aws.String("AccessPointName"), // Required Instances: []*elb.Instance{ { // Required InstanceId: aws.String("InstanceId"), }, // More values... }, } resp, err := svc.DescribeInstanceHealth(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_DescribeLoadBalancerAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.DescribeLoadBalancerAttributesInput{ LoadBalancerName: aws.String("AccessPointName"), // Required } resp, err := svc.DescribeLoadBalancerAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_DescribeLoadBalancerPolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.DescribeLoadBalancerPoliciesInput{ LoadBalancerName: aws.String("AccessPointName"), PolicyNames: []*string{ aws.String("PolicyName"), // Required // More values... }, } resp, err := svc.DescribeLoadBalancerPolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_DescribeLoadBalancerPolicyTypes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.DescribeLoadBalancerPolicyTypesInput{ PolicyTypeNames: []*string{ aws.String("PolicyTypeName"), // Required // More values... }, } resp, err := svc.DescribeLoadBalancerPolicyTypes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_DescribeLoadBalancers() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.DescribeLoadBalancersInput{ LoadBalancerNames: []*string{ aws.String("AccessPointName"), // Required // More values... }, Marker: aws.String("Marker"), PageSize: aws.Int64(1), } resp, err := svc.DescribeLoadBalancers(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_DescribeTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.DescribeTagsInput{ LoadBalancerNames: []*string{ // Required aws.String("AccessPointName"), // Required // More values... }, } resp, err := svc.DescribeTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_DetachLoadBalancerFromSubnets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.DetachLoadBalancerFromSubnetsInput{ LoadBalancerName: aws.String("AccessPointName"), // Required Subnets: []*string{ // Required aws.String("SubnetId"), // Required // More values... }, } resp, err := svc.DetachLoadBalancerFromSubnets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_DisableAvailabilityZonesForLoadBalancer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.DisableAvailabilityZonesForLoadBalancerInput{ AvailabilityZones: []*string{ // Required aws.String("AvailabilityZone"), // Required // More values... }, LoadBalancerName: aws.String("AccessPointName"), // Required } resp, err := svc.DisableAvailabilityZonesForLoadBalancer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_EnableAvailabilityZonesForLoadBalancer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.EnableAvailabilityZonesForLoadBalancerInput{ AvailabilityZones: []*string{ // Required aws.String("AvailabilityZone"), // Required // More values... }, LoadBalancerName: aws.String("AccessPointName"), // Required } resp, err := svc.EnableAvailabilityZonesForLoadBalancer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_ModifyLoadBalancerAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.ModifyLoadBalancerAttributesInput{ LoadBalancerAttributes: &elb.LoadBalancerAttributes{ // Required AccessLog: &elb.AccessLog{ Enabled: aws.Bool(true), // Required EmitInterval: aws.Int64(1), S3BucketName: aws.String("S3BucketName"), S3BucketPrefix: aws.String("AccessLogPrefix"), }, AdditionalAttributes: []*elb.AdditionalAttribute{ { // Required Key: aws.String("AdditionalAttributeKey"), Value: aws.String("AdditionalAttributeValue"), }, // More values... }, ConnectionDraining: &elb.ConnectionDraining{ Enabled: aws.Bool(true), // Required Timeout: aws.Int64(1), }, ConnectionSettings: &elb.ConnectionSettings{ IdleTimeout: aws.Int64(1), // Required }, CrossZoneLoadBalancing: &elb.CrossZoneLoadBalancing{ Enabled: aws.Bool(true), // Required }, }, LoadBalancerName: aws.String("AccessPointName"), // Required } resp, err := svc.ModifyLoadBalancerAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_RegisterInstancesWithLoadBalancer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.RegisterInstancesWithLoadBalancerInput{ Instances: []*elb.Instance{ // Required { // Required InstanceId: aws.String("InstanceId"), }, // More values... }, LoadBalancerName: aws.String("AccessPointName"), // Required } resp, err := svc.RegisterInstancesWithLoadBalancer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_RemoveTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.RemoveTagsInput{ LoadBalancerNames: []*string{ // Required aws.String("AccessPointName"), // Required // More values... }, Tags: []*elb.TagKeyOnly{ // Required { // Required Key: aws.String("TagKey"), }, // More values... }, } resp, err := svc.RemoveTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_SetLoadBalancerListenerSSLCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.SetLoadBalancerListenerSSLCertificateInput{ LoadBalancerName: aws.String("AccessPointName"), // Required LoadBalancerPort: aws.Int64(1), // Required SSLCertificateId: aws.String("SSLCertificateId"), // Required } resp, err := svc.SetLoadBalancerListenerSSLCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_SetLoadBalancerPoliciesForBackendServer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.SetLoadBalancerPoliciesForBackendServerInput{ InstancePort: aws.Int64(1), // Required LoadBalancerName: aws.String("AccessPointName"), // Required PolicyNames: []*string{ // Required aws.String("PolicyName"), // Required // More values... }, } resp, err := svc.SetLoadBalancerPoliciesForBackendServer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELB_SetLoadBalancerPoliciesOfListener() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elb.New(sess) params := &elb.SetLoadBalancerPoliciesOfListenerInput{ LoadBalancerName: aws.String("AccessPointName"), // Required LoadBalancerPort: aws.Int64(1), // Required PolicyNames: []*string{ // Required aws.String("PolicyName"), // Required // More values... }, } resp, err := svc.SetLoadBalancerPoliciesOfListener(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/elb/service.go000066400000000000000000000103641300374646400177600ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package elb import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/query" ) // A load balancer distributes incoming traffic across your EC2 instances. This // enables you to increase the availability of your application. The load balancer // also monitors the health of its registered instances and ensures that it // routes traffic only to healthy instances. You configure your load balancer // to accept incoming traffic by specifying one or more listeners, which are // configured with a protocol and port number for connections from clients to // the load balancer and a protocol and port number for connections from the // load balancer to the instances. // // Elastic Load Balancing supports two types of load balancers: Classic load // balancers and Application load balancers (new). A Classic load balancer makes // routing and load balancing decisions either at the transport layer (TCP/SSL) // or the application layer (HTTP/HTTPS), and supports either EC2-Classic or // a VPC. An Application load balancer makes routing and load balancing decisions // at the application layer (HTTP/HTTPS), supports path-based routing, and can // route requests to one or more ports on each EC2 instance or container instance // in your virtual private cloud (VPC). For more information, see the . // // This reference covers the 2012-06-01 API, which supports Classic load balancers. // The 2015-12-01 API supports Application load balancers. // // To get started, create a load balancer with one or more listeners using CreateLoadBalancer. // Register your instances with the load balancer using RegisterInstancesWithLoadBalancer. // // All Elastic Load Balancing operations are idempotent, which means that they // complete at most one time. If you repeat an operation, it succeeds with a // 200 OK response code. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type ELB struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "elasticloadbalancing" // New creates a new instance of the ELB client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a ELB client from just a session. // svc := elb.New(mySession) // // // Create a ELB client with additional configuration // svc := elb.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *ELB { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *ELB { svc := &ELB{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2012-06-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a ELB operation and runs any // custom request initialization. func (c *ELB) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/elb/waiters.go000066400000000000000000000045011300374646400177720ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package elb import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilAnyInstanceInService uses the Elastic Load Balancing API operation // DescribeInstanceHealth to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *ELB) WaitUntilAnyInstanceInService(input *DescribeInstanceHealthInput) error { waiterCfg := waiter.Config{ Operation: "DescribeInstanceHealth", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAny", Argument: "InstanceStates[].State", Expected: "InService", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilInstanceDeregistered uses the Elastic Load Balancing API operation // DescribeInstanceHealth to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *ELB) WaitUntilInstanceDeregistered(input *DescribeInstanceHealthInput) error { waiterCfg := waiter.Config{ Operation: "DescribeInstanceHealth", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "InstanceStates[].State", Expected: "OutOfService", }, { State: "success", Matcher: "error", Argument: "", Expected: "InvalidInstance", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilInstanceInService uses the Elastic Load Balancing API operation // DescribeInstanceHealth to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *ELB) WaitUntilInstanceInService(input *DescribeInstanceHealthInput) error { waiterCfg := waiter.Config{ Operation: "DescribeInstanceHealth", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "InstanceStates[].State", Expected: "InService", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/elbv2/000077500000000000000000000000001300374646400162355ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/elbv2/api.go000066400000000000000000004651241300374646400173510ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package elbv2 provides a client for Elastic Load Balancing. package elbv2 import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opAddTags = "AddTags" // AddTagsRequest generates a "aws/request.Request" representing the // client's request for the AddTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddTagsRequest method. // req, resp := client.AddTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) AddTagsRequest(input *AddTagsInput) (req *request.Request, output *AddTagsOutput) { op := &request.Operation{ Name: opAddTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddTagsInput{} } req = c.newRequest(op, input, output) output = &AddTagsOutput{} req.Data = output return } // AddTags API operation for Elastic Load Balancing. // // Adds the specified tags to the specified resource. You can tag your Application // Load Balancers and your target groups. // // Each tag consists of a key and an optional value. If a resource already has // a tag with the same key, AddTags updates its value. // // To list the current tags for your resources, use DescribeTags. To remove // tags from your resources, use RemoveTags. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation AddTags for usage and error information. // // Returned Error Codes: // * DuplicateTagKeys // A tag key was specified more than once. // // * TooManyTags // You've reached the limit on the number of tags per load balancer. // // * LoadBalancerNotFound // The specified load balancer does not exist. // // * TargetGroupNotFound // The specified target group does not exist. // func (c *ELBV2) AddTags(input *AddTagsInput) (*AddTagsOutput, error) { req, out := c.AddTagsRequest(input) err := req.Send() return out, err } const opCreateListener = "CreateListener" // CreateListenerRequest generates a "aws/request.Request" representing the // client's request for the CreateListener operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateListener for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateListener method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateListenerRequest method. // req, resp := client.CreateListenerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) CreateListenerRequest(input *CreateListenerInput) (req *request.Request, output *CreateListenerOutput) { op := &request.Operation{ Name: opCreateListener, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateListenerInput{} } req = c.newRequest(op, input, output) output = &CreateListenerOutput{} req.Data = output return } // CreateListener API operation for Elastic Load Balancing. // // Creates a listener for the specified Application Load Balancer. // // You can create up to 10 listeners per load balancer. // // To update a listener, use ModifyListener. When you are finished with a listener, // you can delete it using DeleteListener. If you are finished with both the // listener and the load balancer, you can delete them both using DeleteLoadBalancer. // // For more information, see Listeners for Your Application Load Balancers (http://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html) // in the Application Load Balancers Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation CreateListener for usage and error information. // // Returned Error Codes: // * DuplicateListener // A listener with the specified port already exists. // // * TooManyListeners // You've reached the limit on the number of listeners per load balancer. // // * TooManyCertificates // You've reached the limit on the number of certificates per listener. // // * LoadBalancerNotFound // The specified load balancer does not exist. // // * TargetGroupNotFound // The specified target group does not exist. // // * TargetGroupAssociationLimit // You've reached the limit on the number of load balancers per target group. // // * InvalidConfigurationRequest // The requested configuration is not valid. // // * IncompatibleProtocols // The specified configuration is not valid with this protocol. // // * SSLPolicyNotFound // The specified SSL policy does not exist. // // * CertificateNotFound // The specified certificate does not exist. // // * UnsupportedProtocol // The specified protocol is not supported. // // * TooManyRegistrationsForTargetId // You've reached the limit on the number of times a target can be registered // with a load balancer. // func (c *ELBV2) CreateListener(input *CreateListenerInput) (*CreateListenerOutput, error) { req, out := c.CreateListenerRequest(input) err := req.Send() return out, err } const opCreateLoadBalancer = "CreateLoadBalancer" // CreateLoadBalancerRequest generates a "aws/request.Request" representing the // client's request for the CreateLoadBalancer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateLoadBalancer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateLoadBalancer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateLoadBalancerRequest method. // req, resp := client.CreateLoadBalancerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) CreateLoadBalancerRequest(input *CreateLoadBalancerInput) (req *request.Request, output *CreateLoadBalancerOutput) { op := &request.Operation{ Name: opCreateLoadBalancer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateLoadBalancerInput{} } req = c.newRequest(op, input, output) output = &CreateLoadBalancerOutput{} req.Data = output return } // CreateLoadBalancer API operation for Elastic Load Balancing. // // Creates an Application Load Balancer. // // To create listeners for your load balancer, use CreateListener. You can add // security groups, subnets, and tags when you create your load balancer, or // you can add them later using SetSecurityGroups, SetSubnets, and AddTags. // // To describe your current load balancers, see DescribeLoadBalancers. When // you are finished with a load balancer, you can delete it using DeleteLoadBalancer. // // You can create up to 20 load balancers per region per account. You can request // an increase for the number of load balancers for your account. For more information, // see Limits for Your Application Load Balancer (http://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-limits.html) // in the Application Load Balancers Guide. // // For more information, see Application Load Balancers (http://docs.aws.amazon.com/elasticloadbalancing/latest/application/application-load-balancers.html) // in the Application Load Balancers Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation CreateLoadBalancer for usage and error information. // // Returned Error Codes: // * DuplicateLoadBalancerName // A load balancer with the specified name already exists for this account. // // * TooManyLoadBalancers // You've reached the limit on the number of load balancers for your AWS account. // // * InvalidConfigurationRequest // The requested configuration is not valid. // // * SubnetNotFound // The specified subnet does not exist. // // * InvalidSubnet // The specified subnet is out of available addresses. // // * InvalidSecurityGroup // The specified security group does not exist. // // * InvalidScheme // The requested scheme is not valid. // // * TooManyTags // You've reached the limit on the number of tags per load balancer. // // * DuplicateTagKeys // A tag key was specified more than once. // func (c *ELBV2) CreateLoadBalancer(input *CreateLoadBalancerInput) (*CreateLoadBalancerOutput, error) { req, out := c.CreateLoadBalancerRequest(input) err := req.Send() return out, err } const opCreateRule = "CreateRule" // CreateRuleRequest generates a "aws/request.Request" representing the // client's request for the CreateRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateRuleRequest method. // req, resp := client.CreateRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) CreateRuleRequest(input *CreateRuleInput) (req *request.Request, output *CreateRuleOutput) { op := &request.Operation{ Name: opCreateRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateRuleInput{} } req = c.newRequest(op, input, output) output = &CreateRuleOutput{} req.Data = output return } // CreateRule API operation for Elastic Load Balancing. // // Creates a rule for the specified listener. // // Each rule can have one action and one condition. Rules are evaluated in priority // order, from the lowest value to the highest value. When the condition for // a rule is met, the specified action is taken. If no conditions are met, the // default action for the default rule is taken. For more information, see Listener // Rules (http://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html#listener-rules) // in the Application Load Balancers Guide. // // To view your current rules, use DescribeRules. To update a rule, use ModifyRule. // To set the priorities of your rules, use SetRulePriorities. To delete a rule, // use DeleteRule. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation CreateRule for usage and error information. // // Returned Error Codes: // * PriorityInUse // The specified priority is in use. // // * TooManyTargetGroups // You've reached the limit on the number of target groups for your AWS account. // // * TooManyRules // You've reached the limit on the number of rules per load balancer. // // * TargetGroupAssociationLimit // You've reached the limit on the number of load balancers per target group. // // * ListenerNotFound // The specified listener does not exist. // // * TargetGroupNotFound // The specified target group does not exist. // // * InvalidConfigurationRequest // The requested configuration is not valid. // // * TooManyRegistrationsForTargetId // You've reached the limit on the number of times a target can be registered // with a load balancer. // func (c *ELBV2) CreateRule(input *CreateRuleInput) (*CreateRuleOutput, error) { req, out := c.CreateRuleRequest(input) err := req.Send() return out, err } const opCreateTargetGroup = "CreateTargetGroup" // CreateTargetGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateTargetGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateTargetGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateTargetGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateTargetGroupRequest method. // req, resp := client.CreateTargetGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) CreateTargetGroupRequest(input *CreateTargetGroupInput) (req *request.Request, output *CreateTargetGroupOutput) { op := &request.Operation{ Name: opCreateTargetGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateTargetGroupInput{} } req = c.newRequest(op, input, output) output = &CreateTargetGroupOutput{} req.Data = output return } // CreateTargetGroup API operation for Elastic Load Balancing. // // Creates a target group. // // To register targets with the target group, use RegisterTargets. To update // the health check settings for the target group, use ModifyTargetGroup. To // monitor the health of targets in the target group, use DescribeTargetHealth. // // To route traffic to the targets in a target group, specify the target group // in an action using CreateListener or CreateRule. // // To delete a target group, use DeleteTargetGroup. // // For more information, see Target Groups for Your Application Load Balancers // (http://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-target-groups.html) // in the Application Load Balancers Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation CreateTargetGroup for usage and error information. // // Returned Error Codes: // * DuplicateTargetGroupName // A target group with the specified name already exists. // // * TooManyTargetGroups // You've reached the limit on the number of target groups for your AWS account. // func (c *ELBV2) CreateTargetGroup(input *CreateTargetGroupInput) (*CreateTargetGroupOutput, error) { req, out := c.CreateTargetGroupRequest(input) err := req.Send() return out, err } const opDeleteListener = "DeleteListener" // DeleteListenerRequest generates a "aws/request.Request" representing the // client's request for the DeleteListener operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteListener for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteListener method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteListenerRequest method. // req, resp := client.DeleteListenerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) DeleteListenerRequest(input *DeleteListenerInput) (req *request.Request, output *DeleteListenerOutput) { op := &request.Operation{ Name: opDeleteListener, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteListenerInput{} } req = c.newRequest(op, input, output) output = &DeleteListenerOutput{} req.Data = output return } // DeleteListener API operation for Elastic Load Balancing. // // Deletes the specified listener. // // Alternatively, your listener is deleted when you delete the load balancer // it is attached to using DeleteLoadBalancer. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DeleteListener for usage and error information. // // Returned Error Codes: // * ListenerNotFound // The specified listener does not exist. // func (c *ELBV2) DeleteListener(input *DeleteListenerInput) (*DeleteListenerOutput, error) { req, out := c.DeleteListenerRequest(input) err := req.Send() return out, err } const opDeleteLoadBalancer = "DeleteLoadBalancer" // DeleteLoadBalancerRequest generates a "aws/request.Request" representing the // client's request for the DeleteLoadBalancer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteLoadBalancer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteLoadBalancer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteLoadBalancerRequest method. // req, resp := client.DeleteLoadBalancerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) DeleteLoadBalancerRequest(input *DeleteLoadBalancerInput) (req *request.Request, output *DeleteLoadBalancerOutput) { op := &request.Operation{ Name: opDeleteLoadBalancer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteLoadBalancerInput{} } req = c.newRequest(op, input, output) output = &DeleteLoadBalancerOutput{} req.Data = output return } // DeleteLoadBalancer API operation for Elastic Load Balancing. // // Deletes the specified Application Load Balancer and its attached listeners. // // You can't delete a load balancer if deletion protection is enabled. If the // load balancer does not exist or has already been deleted, the call succeeds. // // Deleting a load balancer does not affect its registered targets. For example, // your EC2 instances continue to run and are still registered to their target // groups. If you no longer need these EC2 instances, you can stop or terminate // them. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DeleteLoadBalancer for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * OperationNotPermitted // This operation is not allowed. // func (c *ELBV2) DeleteLoadBalancer(input *DeleteLoadBalancerInput) (*DeleteLoadBalancerOutput, error) { req, out := c.DeleteLoadBalancerRequest(input) err := req.Send() return out, err } const opDeleteRule = "DeleteRule" // DeleteRuleRequest generates a "aws/request.Request" representing the // client's request for the DeleteRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteRuleRequest method. // req, resp := client.DeleteRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) DeleteRuleRequest(input *DeleteRuleInput) (req *request.Request, output *DeleteRuleOutput) { op := &request.Operation{ Name: opDeleteRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteRuleInput{} } req = c.newRequest(op, input, output) output = &DeleteRuleOutput{} req.Data = output return } // DeleteRule API operation for Elastic Load Balancing. // // Deletes the specified rule. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DeleteRule for usage and error information. // // Returned Error Codes: // * RuleNotFound // The specified rule does not exist. // // * OperationNotPermitted // This operation is not allowed. // func (c *ELBV2) DeleteRule(input *DeleteRuleInput) (*DeleteRuleOutput, error) { req, out := c.DeleteRuleRequest(input) err := req.Send() return out, err } const opDeleteTargetGroup = "DeleteTargetGroup" // DeleteTargetGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteTargetGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteTargetGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteTargetGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteTargetGroupRequest method. // req, resp := client.DeleteTargetGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) DeleteTargetGroupRequest(input *DeleteTargetGroupInput) (req *request.Request, output *DeleteTargetGroupOutput) { op := &request.Operation{ Name: opDeleteTargetGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteTargetGroupInput{} } req = c.newRequest(op, input, output) output = &DeleteTargetGroupOutput{} req.Data = output return } // DeleteTargetGroup API operation for Elastic Load Balancing. // // Deletes the specified target group. // // You can delete a target group if it is not referenced by any actions. Deleting // a target group also deletes any associated health checks. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DeleteTargetGroup for usage and error information. // // Returned Error Codes: // * ResourceInUse // A specified resource is in use. // func (c *ELBV2) DeleteTargetGroup(input *DeleteTargetGroupInput) (*DeleteTargetGroupOutput, error) { req, out := c.DeleteTargetGroupRequest(input) err := req.Send() return out, err } const opDeregisterTargets = "DeregisterTargets" // DeregisterTargetsRequest generates a "aws/request.Request" representing the // client's request for the DeregisterTargets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeregisterTargets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeregisterTargets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeregisterTargetsRequest method. // req, resp := client.DeregisterTargetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) DeregisterTargetsRequest(input *DeregisterTargetsInput) (req *request.Request, output *DeregisterTargetsOutput) { op := &request.Operation{ Name: opDeregisterTargets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeregisterTargetsInput{} } req = c.newRequest(op, input, output) output = &DeregisterTargetsOutput{} req.Data = output return } // DeregisterTargets API operation for Elastic Load Balancing. // // Deregisters the specified targets from the specified target group. After // the targets are deregistered, they no longer receive traffic from the load // balancer. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DeregisterTargets for usage and error information. // // Returned Error Codes: // * TargetGroupNotFound // The specified target group does not exist. // // * InvalidTarget // The specified target does not exist or is not in the same VPC as the target // group. // func (c *ELBV2) DeregisterTargets(input *DeregisterTargetsInput) (*DeregisterTargetsOutput, error) { req, out := c.DeregisterTargetsRequest(input) err := req.Send() return out, err } const opDescribeListeners = "DescribeListeners" // DescribeListenersRequest generates a "aws/request.Request" representing the // client's request for the DescribeListeners operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeListeners for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeListeners method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeListenersRequest method. // req, resp := client.DescribeListenersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) DescribeListenersRequest(input *DescribeListenersInput) (req *request.Request, output *DescribeListenersOutput) { op := &request.Operation{ Name: opDescribeListeners, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"NextMarker"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &DescribeListenersInput{} } req = c.newRequest(op, input, output) output = &DescribeListenersOutput{} req.Data = output return } // DescribeListeners API operation for Elastic Load Balancing. // // Describes the specified listeners or the listeners for the specified Application // Load Balancer. You must specify either a load balancer or one or more listeners. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DescribeListeners for usage and error information. // // Returned Error Codes: // * ListenerNotFound // The specified listener does not exist. // // * LoadBalancerNotFound // The specified load balancer does not exist. // func (c *ELBV2) DescribeListeners(input *DescribeListenersInput) (*DescribeListenersOutput, error) { req, out := c.DescribeListenersRequest(input) err := req.Send() return out, err } // DescribeListenersPages iterates over the pages of a DescribeListeners operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeListeners method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeListeners operation. // pageNum := 0 // err := client.DescribeListenersPages(params, // func(page *DescribeListenersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ELBV2) DescribeListenersPages(input *DescribeListenersInput, fn func(p *DescribeListenersOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeListenersRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeListenersOutput), lastPage) }) } const opDescribeLoadBalancerAttributes = "DescribeLoadBalancerAttributes" // DescribeLoadBalancerAttributesRequest generates a "aws/request.Request" representing the // client's request for the DescribeLoadBalancerAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLoadBalancerAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLoadBalancerAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLoadBalancerAttributesRequest method. // req, resp := client.DescribeLoadBalancerAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) DescribeLoadBalancerAttributesRequest(input *DescribeLoadBalancerAttributesInput) (req *request.Request, output *DescribeLoadBalancerAttributesOutput) { op := &request.Operation{ Name: opDescribeLoadBalancerAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeLoadBalancerAttributesInput{} } req = c.newRequest(op, input, output) output = &DescribeLoadBalancerAttributesOutput{} req.Data = output return } // DescribeLoadBalancerAttributes API operation for Elastic Load Balancing. // // Describes the attributes for the specified Application Load Balancer. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DescribeLoadBalancerAttributes for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // func (c *ELBV2) DescribeLoadBalancerAttributes(input *DescribeLoadBalancerAttributesInput) (*DescribeLoadBalancerAttributesOutput, error) { req, out := c.DescribeLoadBalancerAttributesRequest(input) err := req.Send() return out, err } const opDescribeLoadBalancers = "DescribeLoadBalancers" // DescribeLoadBalancersRequest generates a "aws/request.Request" representing the // client's request for the DescribeLoadBalancers operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLoadBalancers for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLoadBalancers method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLoadBalancersRequest method. // req, resp := client.DescribeLoadBalancersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) DescribeLoadBalancersRequest(input *DescribeLoadBalancersInput) (req *request.Request, output *DescribeLoadBalancersOutput) { op := &request.Operation{ Name: opDescribeLoadBalancers, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"NextMarker"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &DescribeLoadBalancersInput{} } req = c.newRequest(op, input, output) output = &DescribeLoadBalancersOutput{} req.Data = output return } // DescribeLoadBalancers API operation for Elastic Load Balancing. // // Describes the specified Application Load Balancers or all of your Application // Load Balancers. // // To describe the listeners for a load balancer, use DescribeListeners. To // describe the attributes for a load balancer, use DescribeLoadBalancerAttributes. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DescribeLoadBalancers for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // func (c *ELBV2) DescribeLoadBalancers(input *DescribeLoadBalancersInput) (*DescribeLoadBalancersOutput, error) { req, out := c.DescribeLoadBalancersRequest(input) err := req.Send() return out, err } // DescribeLoadBalancersPages iterates over the pages of a DescribeLoadBalancers operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeLoadBalancers method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeLoadBalancers operation. // pageNum := 0 // err := client.DescribeLoadBalancersPages(params, // func(page *DescribeLoadBalancersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ELBV2) DescribeLoadBalancersPages(input *DescribeLoadBalancersInput, fn func(p *DescribeLoadBalancersOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeLoadBalancersRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeLoadBalancersOutput), lastPage) }) } const opDescribeRules = "DescribeRules" // DescribeRulesRequest generates a "aws/request.Request" representing the // client's request for the DescribeRules operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeRules for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeRules method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeRulesRequest method. // req, resp := client.DescribeRulesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) DescribeRulesRequest(input *DescribeRulesInput) (req *request.Request, output *DescribeRulesOutput) { op := &request.Operation{ Name: opDescribeRules, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeRulesInput{} } req = c.newRequest(op, input, output) output = &DescribeRulesOutput{} req.Data = output return } // DescribeRules API operation for Elastic Load Balancing. // // Describes the specified rules or the rules for the specified listener. You // must specify either a listener or one or more rules. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DescribeRules for usage and error information. // // Returned Error Codes: // * ListenerNotFound // The specified listener does not exist. // // * RuleNotFound // The specified rule does not exist. // func (c *ELBV2) DescribeRules(input *DescribeRulesInput) (*DescribeRulesOutput, error) { req, out := c.DescribeRulesRequest(input) err := req.Send() return out, err } const opDescribeSSLPolicies = "DescribeSSLPolicies" // DescribeSSLPoliciesRequest generates a "aws/request.Request" representing the // client's request for the DescribeSSLPolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSSLPolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSSLPolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSSLPoliciesRequest method. // req, resp := client.DescribeSSLPoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) DescribeSSLPoliciesRequest(input *DescribeSSLPoliciesInput) (req *request.Request, output *DescribeSSLPoliciesOutput) { op := &request.Operation{ Name: opDescribeSSLPolicies, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSSLPoliciesInput{} } req = c.newRequest(op, input, output) output = &DescribeSSLPoliciesOutput{} req.Data = output return } // DescribeSSLPolicies API operation for Elastic Load Balancing. // // Describes the specified policies or all policies used for SSL negotiation. // // Note that the only supported policy at this time is ELBSecurityPolicy-2015-05. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DescribeSSLPolicies for usage and error information. // // Returned Error Codes: // * SSLPolicyNotFound // The specified SSL policy does not exist. // func (c *ELBV2) DescribeSSLPolicies(input *DescribeSSLPoliciesInput) (*DescribeSSLPoliciesOutput, error) { req, out := c.DescribeSSLPoliciesRequest(input) err := req.Send() return out, err } const opDescribeTags = "DescribeTags" // DescribeTagsRequest generates a "aws/request.Request" representing the // client's request for the DescribeTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTagsRequest method. // req, resp := client.DescribeTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) DescribeTagsRequest(input *DescribeTagsInput) (req *request.Request, output *DescribeTagsOutput) { op := &request.Operation{ Name: opDescribeTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTagsInput{} } req = c.newRequest(op, input, output) output = &DescribeTagsOutput{} req.Data = output return } // DescribeTags API operation for Elastic Load Balancing. // // Describes the tags for the specified resources. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DescribeTags for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * TargetGroupNotFound // The specified target group does not exist. // // * ListenerNotFound // The specified listener does not exist. // // * RuleNotFound // The specified rule does not exist. // func (c *ELBV2) DescribeTags(input *DescribeTagsInput) (*DescribeTagsOutput, error) { req, out := c.DescribeTagsRequest(input) err := req.Send() return out, err } const opDescribeTargetGroupAttributes = "DescribeTargetGroupAttributes" // DescribeTargetGroupAttributesRequest generates a "aws/request.Request" representing the // client's request for the DescribeTargetGroupAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTargetGroupAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTargetGroupAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTargetGroupAttributesRequest method. // req, resp := client.DescribeTargetGroupAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) DescribeTargetGroupAttributesRequest(input *DescribeTargetGroupAttributesInput) (req *request.Request, output *DescribeTargetGroupAttributesOutput) { op := &request.Operation{ Name: opDescribeTargetGroupAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTargetGroupAttributesInput{} } req = c.newRequest(op, input, output) output = &DescribeTargetGroupAttributesOutput{} req.Data = output return } // DescribeTargetGroupAttributes API operation for Elastic Load Balancing. // // Describes the attributes for the specified target group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DescribeTargetGroupAttributes for usage and error information. // // Returned Error Codes: // * TargetGroupNotFound // The specified target group does not exist. // func (c *ELBV2) DescribeTargetGroupAttributes(input *DescribeTargetGroupAttributesInput) (*DescribeTargetGroupAttributesOutput, error) { req, out := c.DescribeTargetGroupAttributesRequest(input) err := req.Send() return out, err } const opDescribeTargetGroups = "DescribeTargetGroups" // DescribeTargetGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeTargetGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTargetGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTargetGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTargetGroupsRequest method. // req, resp := client.DescribeTargetGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) DescribeTargetGroupsRequest(input *DescribeTargetGroupsInput) (req *request.Request, output *DescribeTargetGroupsOutput) { op := &request.Operation{ Name: opDescribeTargetGroups, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"NextMarker"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &DescribeTargetGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeTargetGroupsOutput{} req.Data = output return } // DescribeTargetGroups API operation for Elastic Load Balancing. // // Describes the specified target groups or all of your target groups. By default, // all target groups are described. Alternatively, you can specify one of the // following to filter the results: the ARN of the load balancer, the names // of one or more target groups, or the ARNs of one or more target groups. // // To describe the targets for a target group, use DescribeTargetHealth. To // describe the attributes of a target group, use DescribeTargetGroupAttributes. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DescribeTargetGroups for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * TargetGroupNotFound // The specified target group does not exist. // func (c *ELBV2) DescribeTargetGroups(input *DescribeTargetGroupsInput) (*DescribeTargetGroupsOutput, error) { req, out := c.DescribeTargetGroupsRequest(input) err := req.Send() return out, err } // DescribeTargetGroupsPages iterates over the pages of a DescribeTargetGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeTargetGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeTargetGroups operation. // pageNum := 0 // err := client.DescribeTargetGroupsPages(params, // func(page *DescribeTargetGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ELBV2) DescribeTargetGroupsPages(input *DescribeTargetGroupsInput, fn func(p *DescribeTargetGroupsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeTargetGroupsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeTargetGroupsOutput), lastPage) }) } const opDescribeTargetHealth = "DescribeTargetHealth" // DescribeTargetHealthRequest generates a "aws/request.Request" representing the // client's request for the DescribeTargetHealth operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTargetHealth for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTargetHealth method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTargetHealthRequest method. // req, resp := client.DescribeTargetHealthRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) DescribeTargetHealthRequest(input *DescribeTargetHealthInput) (req *request.Request, output *DescribeTargetHealthOutput) { op := &request.Operation{ Name: opDescribeTargetHealth, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTargetHealthInput{} } req = c.newRequest(op, input, output) output = &DescribeTargetHealthOutput{} req.Data = output return } // DescribeTargetHealth API operation for Elastic Load Balancing. // // Describes the health of the specified targets or all of your targets. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation DescribeTargetHealth for usage and error information. // // Returned Error Codes: // * InvalidTarget // The specified target does not exist or is not in the same VPC as the target // group. // // * TargetGroupNotFound // The specified target group does not exist. // // * HealthUnavailable // The health of the specified targets could not be retrieved due to an internal // error. // func (c *ELBV2) DescribeTargetHealth(input *DescribeTargetHealthInput) (*DescribeTargetHealthOutput, error) { req, out := c.DescribeTargetHealthRequest(input) err := req.Send() return out, err } const opModifyListener = "ModifyListener" // ModifyListenerRequest generates a "aws/request.Request" representing the // client's request for the ModifyListener operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyListener for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyListener method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyListenerRequest method. // req, resp := client.ModifyListenerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) ModifyListenerRequest(input *ModifyListenerInput) (req *request.Request, output *ModifyListenerOutput) { op := &request.Operation{ Name: opModifyListener, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyListenerInput{} } req = c.newRequest(op, input, output) output = &ModifyListenerOutput{} req.Data = output return } // ModifyListener API operation for Elastic Load Balancing. // // Modifies the specified properties of the specified listener. // // Any properties that you do not specify retain their current values. However, // changing the protocol from HTTPS to HTTP removes the security policy and // SSL certificate properties. If you change the protocol from HTTP to HTTPS, // you must add the security policy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation ModifyListener for usage and error information. // // Returned Error Codes: // * DuplicateListener // A listener with the specified port already exists. // // * TooManyListeners // You've reached the limit on the number of listeners per load balancer. // // * TooManyCertificates // You've reached the limit on the number of certificates per listener. // // * ListenerNotFound // The specified listener does not exist. // // * TargetGroupNotFound // The specified target group does not exist. // // * TargetGroupAssociationLimit // You've reached the limit on the number of load balancers per target group. // // * IncompatibleProtocols // The specified configuration is not valid with this protocol. // // * SSLPolicyNotFound // The specified SSL policy does not exist. // // * CertificateNotFound // The specified certificate does not exist. // // * InvalidConfigurationRequest // The requested configuration is not valid. // // * UnsupportedProtocol // The specified protocol is not supported. // // * TooManyRegistrationsForTargetId // You've reached the limit on the number of times a target can be registered // with a load balancer. // func (c *ELBV2) ModifyListener(input *ModifyListenerInput) (*ModifyListenerOutput, error) { req, out := c.ModifyListenerRequest(input) err := req.Send() return out, err } const opModifyLoadBalancerAttributes = "ModifyLoadBalancerAttributes" // ModifyLoadBalancerAttributesRequest generates a "aws/request.Request" representing the // client's request for the ModifyLoadBalancerAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyLoadBalancerAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyLoadBalancerAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyLoadBalancerAttributesRequest method. // req, resp := client.ModifyLoadBalancerAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) ModifyLoadBalancerAttributesRequest(input *ModifyLoadBalancerAttributesInput) (req *request.Request, output *ModifyLoadBalancerAttributesOutput) { op := &request.Operation{ Name: opModifyLoadBalancerAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyLoadBalancerAttributesInput{} } req = c.newRequest(op, input, output) output = &ModifyLoadBalancerAttributesOutput{} req.Data = output return } // ModifyLoadBalancerAttributes API operation for Elastic Load Balancing. // // Modifies the specified attributes of the specified Application Load Balancer. // // If any of the specified attributes can't be modified as requested, the call // fails. Any existing attributes that you do not modify retain their current // values. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation ModifyLoadBalancerAttributes for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * InvalidConfigurationRequest // The requested configuration is not valid. // func (c *ELBV2) ModifyLoadBalancerAttributes(input *ModifyLoadBalancerAttributesInput) (*ModifyLoadBalancerAttributesOutput, error) { req, out := c.ModifyLoadBalancerAttributesRequest(input) err := req.Send() return out, err } const opModifyRule = "ModifyRule" // ModifyRuleRequest generates a "aws/request.Request" representing the // client's request for the ModifyRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyRuleRequest method. // req, resp := client.ModifyRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) ModifyRuleRequest(input *ModifyRuleInput) (req *request.Request, output *ModifyRuleOutput) { op := &request.Operation{ Name: opModifyRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyRuleInput{} } req = c.newRequest(op, input, output) output = &ModifyRuleOutput{} req.Data = output return } // ModifyRule API operation for Elastic Load Balancing. // // Modifies the specified rule. // // Any existing properties that you do not modify retain their current values. // // To modify the default action, use ModifyListener. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation ModifyRule for usage and error information. // // Returned Error Codes: // * TargetGroupAssociationLimit // You've reached the limit on the number of load balancers per target group. // // * RuleNotFound // The specified rule does not exist. // // * OperationNotPermitted // This operation is not allowed. // // * TooManyRegistrationsForTargetId // You've reached the limit on the number of times a target can be registered // with a load balancer. // func (c *ELBV2) ModifyRule(input *ModifyRuleInput) (*ModifyRuleOutput, error) { req, out := c.ModifyRuleRequest(input) err := req.Send() return out, err } const opModifyTargetGroup = "ModifyTargetGroup" // ModifyTargetGroupRequest generates a "aws/request.Request" representing the // client's request for the ModifyTargetGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyTargetGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyTargetGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyTargetGroupRequest method. // req, resp := client.ModifyTargetGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) ModifyTargetGroupRequest(input *ModifyTargetGroupInput) (req *request.Request, output *ModifyTargetGroupOutput) { op := &request.Operation{ Name: opModifyTargetGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyTargetGroupInput{} } req = c.newRequest(op, input, output) output = &ModifyTargetGroupOutput{} req.Data = output return } // ModifyTargetGroup API operation for Elastic Load Balancing. // // Modifies the health checks used when evaluating the health state of the targets // in the specified target group. // // To monitor the health of the targets, use DescribeTargetHealth. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation ModifyTargetGroup for usage and error information. // // Returned Error Codes: // * TargetGroupNotFound // The specified target group does not exist. // func (c *ELBV2) ModifyTargetGroup(input *ModifyTargetGroupInput) (*ModifyTargetGroupOutput, error) { req, out := c.ModifyTargetGroupRequest(input) err := req.Send() return out, err } const opModifyTargetGroupAttributes = "ModifyTargetGroupAttributes" // ModifyTargetGroupAttributesRequest generates a "aws/request.Request" representing the // client's request for the ModifyTargetGroupAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyTargetGroupAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyTargetGroupAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyTargetGroupAttributesRequest method. // req, resp := client.ModifyTargetGroupAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) ModifyTargetGroupAttributesRequest(input *ModifyTargetGroupAttributesInput) (req *request.Request, output *ModifyTargetGroupAttributesOutput) { op := &request.Operation{ Name: opModifyTargetGroupAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyTargetGroupAttributesInput{} } req = c.newRequest(op, input, output) output = &ModifyTargetGroupAttributesOutput{} req.Data = output return } // ModifyTargetGroupAttributes API operation for Elastic Load Balancing. // // Modifies the specified attributes of the specified target group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation ModifyTargetGroupAttributes for usage and error information. // // Returned Error Codes: // * TargetGroupNotFound // The specified target group does not exist. // func (c *ELBV2) ModifyTargetGroupAttributes(input *ModifyTargetGroupAttributesInput) (*ModifyTargetGroupAttributesOutput, error) { req, out := c.ModifyTargetGroupAttributesRequest(input) err := req.Send() return out, err } const opRegisterTargets = "RegisterTargets" // RegisterTargetsRequest generates a "aws/request.Request" representing the // client's request for the RegisterTargets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterTargets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterTargets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterTargetsRequest method. // req, resp := client.RegisterTargetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) RegisterTargetsRequest(input *RegisterTargetsInput) (req *request.Request, output *RegisterTargetsOutput) { op := &request.Operation{ Name: opRegisterTargets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterTargetsInput{} } req = c.newRequest(op, input, output) output = &RegisterTargetsOutput{} req.Data = output return } // RegisterTargets API operation for Elastic Load Balancing. // // Registers the specified targets with the specified target group. // // By default, the load balancer routes requests to registered targets using // the protocol and port number for the target group. Alternatively, you can // override the port for a target when you register it. // // The target must be in the virtual private cloud (VPC) that you specified // for the target group. If the target is an EC2 instance, it can't be in the // stopped or running state when you register it. // // To remove a target from a target group, use DeregisterTargets. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation RegisterTargets for usage and error information. // // Returned Error Codes: // * TargetGroupNotFound // The specified target group does not exist. // // * TooManyTargets // You've reached the limit on the number of targets. // // * InvalidTarget // The specified target does not exist or is not in the same VPC as the target // group. // // * TooManyRegistrationsForTargetId // You've reached the limit on the number of times a target can be registered // with a load balancer. // func (c *ELBV2) RegisterTargets(input *RegisterTargetsInput) (*RegisterTargetsOutput, error) { req, out := c.RegisterTargetsRequest(input) err := req.Send() return out, err } const opRemoveTags = "RemoveTags" // RemoveTagsRequest generates a "aws/request.Request" representing the // client's request for the RemoveTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveTagsRequest method. // req, resp := client.RemoveTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) RemoveTagsRequest(input *RemoveTagsInput) (req *request.Request, output *RemoveTagsOutput) { op := &request.Operation{ Name: opRemoveTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveTagsInput{} } req = c.newRequest(op, input, output) output = &RemoveTagsOutput{} req.Data = output return } // RemoveTags API operation for Elastic Load Balancing. // // Removes the specified tags from the specified resource. // // To list the current tags for your resources, use DescribeTags. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation RemoveTags for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * TargetGroupNotFound // The specified target group does not exist. // // * ListenerNotFound // The specified listener does not exist. // // * RuleNotFound // The specified rule does not exist. // // * TooManyTags // You've reached the limit on the number of tags per load balancer. // func (c *ELBV2) RemoveTags(input *RemoveTagsInput) (*RemoveTagsOutput, error) { req, out := c.RemoveTagsRequest(input) err := req.Send() return out, err } const opSetRulePriorities = "SetRulePriorities" // SetRulePrioritiesRequest generates a "aws/request.Request" representing the // client's request for the SetRulePriorities operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetRulePriorities for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetRulePriorities method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetRulePrioritiesRequest method. // req, resp := client.SetRulePrioritiesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) SetRulePrioritiesRequest(input *SetRulePrioritiesInput) (req *request.Request, output *SetRulePrioritiesOutput) { op := &request.Operation{ Name: opSetRulePriorities, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetRulePrioritiesInput{} } req = c.newRequest(op, input, output) output = &SetRulePrioritiesOutput{} req.Data = output return } // SetRulePriorities API operation for Elastic Load Balancing. // // Sets the priorities of the specified rules. // // You can reorder the rules as long as there are no priority conflicts in the // new order. Any existing rules that you do not specify retain their current // priority. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation SetRulePriorities for usage and error information. // // Returned Error Codes: // * RuleNotFound // The specified rule does not exist. // // * PriorityInUse // The specified priority is in use. // // * OperationNotPermitted // This operation is not allowed. // func (c *ELBV2) SetRulePriorities(input *SetRulePrioritiesInput) (*SetRulePrioritiesOutput, error) { req, out := c.SetRulePrioritiesRequest(input) err := req.Send() return out, err } const opSetSecurityGroups = "SetSecurityGroups" // SetSecurityGroupsRequest generates a "aws/request.Request" representing the // client's request for the SetSecurityGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetSecurityGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetSecurityGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetSecurityGroupsRequest method. // req, resp := client.SetSecurityGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) SetSecurityGroupsRequest(input *SetSecurityGroupsInput) (req *request.Request, output *SetSecurityGroupsOutput) { op := &request.Operation{ Name: opSetSecurityGroups, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetSecurityGroupsInput{} } req = c.newRequest(op, input, output) output = &SetSecurityGroupsOutput{} req.Data = output return } // SetSecurityGroups API operation for Elastic Load Balancing. // // Associates the specified security groups with the specified load balancer. // The specified security groups override the previously associated security // groups. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation SetSecurityGroups for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * InvalidConfigurationRequest // The requested configuration is not valid. // // * InvalidSecurityGroup // The specified security group does not exist. // func (c *ELBV2) SetSecurityGroups(input *SetSecurityGroupsInput) (*SetSecurityGroupsOutput, error) { req, out := c.SetSecurityGroupsRequest(input) err := req.Send() return out, err } const opSetSubnets = "SetSubnets" // SetSubnetsRequest generates a "aws/request.Request" representing the // client's request for the SetSubnets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetSubnets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetSubnets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetSubnetsRequest method. // req, resp := client.SetSubnetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ELBV2) SetSubnetsRequest(input *SetSubnetsInput) (req *request.Request, output *SetSubnetsOutput) { op := &request.Operation{ Name: opSetSubnets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetSubnetsInput{} } req = c.newRequest(op, input, output) output = &SetSubnetsOutput{} req.Data = output return } // SetSubnets API operation for Elastic Load Balancing. // // Enables the Availability Zone for the specified subnets for the specified // load balancer. The specified subnets replace the previously enabled subnets. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Load Balancing's // API operation SetSubnets for usage and error information. // // Returned Error Codes: // * LoadBalancerNotFound // The specified load balancer does not exist. // // * InvalidConfigurationRequest // The requested configuration is not valid. // // * SubnetNotFound // The specified subnet does not exist. // // * InvalidSubnet // The specified subnet is out of available addresses. // func (c *ELBV2) SetSubnets(input *SetSubnetsInput) (*SetSubnetsOutput, error) { req, out := c.SetSubnetsRequest(input) err := req.Send() return out, err } // Information about an action. type Action struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the target group. // // TargetGroupArn is a required field TargetGroupArn *string `type:"string" required:"true"` // The type of action. // // Type is a required field Type *string `type:"string" required:"true" enum:"ActionTypeEnum"` } // String returns the string representation func (s Action) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Action) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Action) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Action"} if s.TargetGroupArn == nil { invalidParams.Add(request.NewErrParamRequired("TargetGroupArn")) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for AddTags. type AddTagsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the resource. // // ResourceArns is a required field ResourceArns []*string `type:"list" required:"true"` // The tags. Each resource can have a maximum of 10 tags. // // Tags is a required field Tags []*Tag `min:"1" type:"list" required:"true"` } // String returns the string representation func (s AddTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsInput"} if s.ResourceArns == nil { invalidParams.Add(request.NewErrParamRequired("ResourceArns")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil && len(s.Tags) < 1 { invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of AddTags. type AddTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsOutput) GoString() string { return s.String() } // Information about an Availability Zone. type AvailabilityZone struct { _ struct{} `type:"structure"` // The ID of the subnet. SubnetId *string `type:"string"` // The name of the Availability Zone. ZoneName *string `type:"string"` } // String returns the string representation func (s AvailabilityZone) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AvailabilityZone) GoString() string { return s.String() } // Information about an SSL server certificate deployed on a load balancer. type Certificate struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the certificate. CertificateArn *string `type:"string"` } // String returns the string representation func (s Certificate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Certificate) GoString() string { return s.String() } // Information about a cipher used in a policy. type Cipher struct { _ struct{} `type:"structure"` // The name of the cipher. Name *string `type:"string"` // The priority of the cipher. Priority *int64 `type:"integer"` } // String returns the string representation func (s Cipher) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Cipher) GoString() string { return s.String() } // Contains the parameters for CreateListener. type CreateListenerInput struct { _ struct{} `type:"structure"` // The SSL server certificate. You must provide exactly one certificate if the // protocol is HTTPS. Certificates []*Certificate `type:"list"` // The default action for the listener. // // DefaultActions is a required field DefaultActions []*Action `type:"list" required:"true"` // The Amazon Resource Name (ARN) of the load balancer. // // LoadBalancerArn is a required field LoadBalancerArn *string `type:"string" required:"true"` // The port on which the load balancer is listening. // // Port is a required field Port *int64 `min:"1" type:"integer" required:"true"` // The protocol for connections from clients to the load balancer. // // Protocol is a required field Protocol *string `type:"string" required:"true" enum:"ProtocolEnum"` // The security policy that defines which ciphers and protocols are supported. // The default is the current predefined security policy. SslPolicy *string `type:"string"` } // String returns the string representation func (s CreateListenerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateListenerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateListenerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateListenerInput"} if s.DefaultActions == nil { invalidParams.Add(request.NewErrParamRequired("DefaultActions")) } if s.LoadBalancerArn == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerArn")) } if s.Port == nil { invalidParams.Add(request.NewErrParamRequired("Port")) } if s.Port != nil && *s.Port < 1 { invalidParams.Add(request.NewErrParamMinValue("Port", 1)) } if s.Protocol == nil { invalidParams.Add(request.NewErrParamRequired("Protocol")) } if s.DefaultActions != nil { for i, v := range s.DefaultActions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DefaultActions", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateListener. type CreateListenerOutput struct { _ struct{} `type:"structure"` // Information about the listener. Listeners []*Listener `type:"list"` } // String returns the string representation func (s CreateListenerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateListenerOutput) GoString() string { return s.String() } // Contains the parameters for CreateLoadBalancer. type CreateLoadBalancerInput struct { _ struct{} `type:"structure"` // The name of the load balancer. // // This name must be unique within your AWS account, can have a maximum of 32 // characters, must contain only alphanumeric characters or hyphens, and must // not begin or end with a hyphen. // // Name is a required field Name *string `type:"string" required:"true"` // The nodes of an Internet-facing load balancer have public IP addresses. The // DNS name of an Internet-facing load balancer is publicly resolvable to the // public IP addresses of the nodes. Therefore, Internet-facing load balancers // can route requests from clients over the Internet. // // The nodes of an internal load balancer have only private IP addresses. The // DNS name of an internal load balancer is publicly resolvable to the private // IP addresses of the nodes. Therefore, internal load balancers can only route // requests from clients with access to the VPC for the load balancer. // // The default is an Internet-facing load balancer. Scheme *string `type:"string" enum:"LoadBalancerSchemeEnum"` // The IDs of the security groups to assign to the load balancer. SecurityGroups []*string `type:"list"` // The IDs of the subnets to attach to the load balancer. You can specify only // one subnet per Availability Zone. You must specify subnets from at least // two Availability Zones. // // Subnets is a required field Subnets []*string `type:"list" required:"true"` // One or more tags to assign to the load balancer. Tags []*Tag `min:"1" type:"list"` } // String returns the string representation func (s CreateLoadBalancerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLoadBalancerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateLoadBalancerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateLoadBalancerInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Subnets == nil { invalidParams.Add(request.NewErrParamRequired("Subnets")) } if s.Tags != nil && len(s.Tags) < 1 { invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateLoadBalancer. type CreateLoadBalancerOutput struct { _ struct{} `type:"structure"` // Information about the load balancer. LoadBalancers []*LoadBalancer `type:"list"` } // String returns the string representation func (s CreateLoadBalancerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLoadBalancerOutput) GoString() string { return s.String() } // Contains the parameters for CreateRule. type CreateRuleInput struct { _ struct{} `type:"structure"` // An action. Each action has the type forward and specifies a target group. // // Actions is a required field Actions []*Action `type:"list" required:"true"` // A condition. Each condition has the field path-pattern and specifies one // path pattern. A path pattern is case sensitive, can be up to 255 characters // in length, and can contain any of the following characters: // // * A-Z, a-z, 0-9 // // * _ - . $ / ~ " ' @ : + // // * & (using &) // // * * (matches 0 or more characters) // // * ? (matches exactly 1 character) // // Conditions is a required field Conditions []*RuleCondition `type:"list" required:"true"` // The Amazon Resource Name (ARN) of the listener. // // ListenerArn is a required field ListenerArn *string `type:"string" required:"true"` // The priority for the rule. A listener can't have multiple rules with the // same priority. // // Priority is a required field Priority *int64 `min:"1" type:"integer" required:"true"` } // String returns the string representation func (s CreateRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateRuleInput"} if s.Actions == nil { invalidParams.Add(request.NewErrParamRequired("Actions")) } if s.Conditions == nil { invalidParams.Add(request.NewErrParamRequired("Conditions")) } if s.ListenerArn == nil { invalidParams.Add(request.NewErrParamRequired("ListenerArn")) } if s.Priority == nil { invalidParams.Add(request.NewErrParamRequired("Priority")) } if s.Priority != nil && *s.Priority < 1 { invalidParams.Add(request.NewErrParamMinValue("Priority", 1)) } if s.Actions != nil { for i, v := range s.Actions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Actions", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateRule. type CreateRuleOutput struct { _ struct{} `type:"structure"` // Information about the rule. Rules []*Rule `type:"list"` } // String returns the string representation func (s CreateRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRuleOutput) GoString() string { return s.String() } // Contains the parameters for CreateTargetGroup. type CreateTargetGroupInput struct { _ struct{} `type:"structure"` // The approximate amount of time, in seconds, between health checks of an individual // target. The default is 30 seconds. HealthCheckIntervalSeconds *int64 `min:"5" type:"integer"` // The ping path that is the destination on the targets for health checks. The // default is /. HealthCheckPath *string `min:"1" type:"string"` // The port the load balancer uses when performing health checks on targets. // The default is traffic-port, which indicates the port on which each target // receives traffic from the load balancer. HealthCheckPort *string `type:"string"` // The protocol the load balancer uses when performing health checks on targets. // The default is the HTTP protocol. HealthCheckProtocol *string `type:"string" enum:"ProtocolEnum"` // The amount of time, in seconds, during which no response from a target means // a failed health check. The default is 5 seconds. HealthCheckTimeoutSeconds *int64 `min:"2" type:"integer"` // The number of consecutive health checks successes required before considering // an unhealthy target healthy. The default is 5. HealthyThresholdCount *int64 `min:"2" type:"integer"` // The HTTP codes to use when checking for a successful response from a target. // The default is 200. Matcher *Matcher `type:"structure"` // The name of the target group. // // Name is a required field Name *string `type:"string" required:"true"` // The port on which the targets receive traffic. This port is used unless you // specify a port override when registering the target. // // Port is a required field Port *int64 `min:"1" type:"integer" required:"true"` // The protocol to use for routing traffic to the targets. // // Protocol is a required field Protocol *string `type:"string" required:"true" enum:"ProtocolEnum"` // The number of consecutive health check failures required before considering // a target unhealthy. The default is 2. UnhealthyThresholdCount *int64 `min:"2" type:"integer"` // The identifier of the virtual private cloud (VPC). // // VpcId is a required field VpcId *string `type:"string" required:"true"` } // String returns the string representation func (s CreateTargetGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTargetGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateTargetGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateTargetGroupInput"} if s.HealthCheckIntervalSeconds != nil && *s.HealthCheckIntervalSeconds < 5 { invalidParams.Add(request.NewErrParamMinValue("HealthCheckIntervalSeconds", 5)) } if s.HealthCheckPath != nil && len(*s.HealthCheckPath) < 1 { invalidParams.Add(request.NewErrParamMinLen("HealthCheckPath", 1)) } if s.HealthCheckTimeoutSeconds != nil && *s.HealthCheckTimeoutSeconds < 2 { invalidParams.Add(request.NewErrParamMinValue("HealthCheckTimeoutSeconds", 2)) } if s.HealthyThresholdCount != nil && *s.HealthyThresholdCount < 2 { invalidParams.Add(request.NewErrParamMinValue("HealthyThresholdCount", 2)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Port == nil { invalidParams.Add(request.NewErrParamRequired("Port")) } if s.Port != nil && *s.Port < 1 { invalidParams.Add(request.NewErrParamMinValue("Port", 1)) } if s.Protocol == nil { invalidParams.Add(request.NewErrParamRequired("Protocol")) } if s.UnhealthyThresholdCount != nil && *s.UnhealthyThresholdCount < 2 { invalidParams.Add(request.NewErrParamMinValue("UnhealthyThresholdCount", 2)) } if s.VpcId == nil { invalidParams.Add(request.NewErrParamRequired("VpcId")) } if s.Matcher != nil { if err := s.Matcher.Validate(); err != nil { invalidParams.AddNested("Matcher", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateTargetGroup. type CreateTargetGroupOutput struct { _ struct{} `type:"structure"` // Information about the target group. TargetGroups []*TargetGroup `type:"list"` } // String returns the string representation func (s CreateTargetGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTargetGroupOutput) GoString() string { return s.String() } // Contains the parameters for DeleteListener. type DeleteListenerInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the listener. // // ListenerArn is a required field ListenerArn *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteListenerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteListenerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteListenerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteListenerInput"} if s.ListenerArn == nil { invalidParams.Add(request.NewErrParamRequired("ListenerArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DeleteListener. type DeleteListenerOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteListenerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteListenerOutput) GoString() string { return s.String() } // Contains the parameters for DeleteLoadBalancer. type DeleteLoadBalancerInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the load balancer. // // LoadBalancerArn is a required field LoadBalancerArn *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteLoadBalancerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLoadBalancerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteLoadBalancerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteLoadBalancerInput"} if s.LoadBalancerArn == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DeleteLoadBalancer. type DeleteLoadBalancerOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteLoadBalancerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLoadBalancerOutput) GoString() string { return s.String() } // Contains the parameters for DeleteRule. type DeleteRuleInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the rule. // // RuleArn is a required field RuleArn *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteRuleInput"} if s.RuleArn == nil { invalidParams.Add(request.NewErrParamRequired("RuleArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DeleteRule. type DeleteRuleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRuleOutput) GoString() string { return s.String() } // Contains the parameters for DeleteTargetGroup. type DeleteTargetGroupInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the target group. // // TargetGroupArn is a required field TargetGroupArn *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteTargetGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTargetGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTargetGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTargetGroupInput"} if s.TargetGroupArn == nil { invalidParams.Add(request.NewErrParamRequired("TargetGroupArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DeleteTargetGroup. type DeleteTargetGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteTargetGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTargetGroupOutput) GoString() string { return s.String() } // Contains the parameters for DeregisterTargets. type DeregisterTargetsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the target group. // // TargetGroupArn is a required field TargetGroupArn *string `type:"string" required:"true"` // The targets. If you specified a port override when you registered a target, // you must specify both the target ID and the port when you deregister it. // // Targets is a required field Targets []*TargetDescription `type:"list" required:"true"` } // String returns the string representation func (s DeregisterTargetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterTargetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeregisterTargetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeregisterTargetsInput"} if s.TargetGroupArn == nil { invalidParams.Add(request.NewErrParamRequired("TargetGroupArn")) } if s.Targets == nil { invalidParams.Add(request.NewErrParamRequired("Targets")) } if s.Targets != nil { for i, v := range s.Targets { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DeregisterTargets. type DeregisterTargetsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeregisterTargetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterTargetsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeListeners. type DescribeListenersInput struct { _ struct{} `type:"structure"` // The Amazon Resource Names (ARN) of the listeners. ListenerArns []*string `type:"list"` // The Amazon Resource Name (ARN) of the load balancer. LoadBalancerArn *string `type:"string"` // The marker for the next set of results. (You received this marker from a // previous call.) Marker *string `type:"string"` // The maximum number of results to return with this call. PageSize *int64 `min:"1" type:"integer"` } // String returns the string representation func (s DescribeListenersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeListenersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeListenersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeListenersInput"} if s.PageSize != nil && *s.PageSize < 1 { invalidParams.Add(request.NewErrParamMinValue("PageSize", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeListeners. type DescribeListenersOutput struct { _ struct{} `type:"structure"` // Information about the listeners. Listeners []*Listener `type:"list"` // The marker to use when requesting the next set of results. If there are no // additional results, the string is empty. NextMarker *string `type:"string"` } // String returns the string representation func (s DescribeListenersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeListenersOutput) GoString() string { return s.String() } // Contains the parameters for DescribeLoadBalancerAttributes. type DescribeLoadBalancerAttributesInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the load balancer. // // LoadBalancerArn is a required field LoadBalancerArn *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeLoadBalancerAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoadBalancerAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeLoadBalancerAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeLoadBalancerAttributesInput"} if s.LoadBalancerArn == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeLoadBalancerAttributes. type DescribeLoadBalancerAttributesOutput struct { _ struct{} `type:"structure"` // Information about the load balancer attributes. Attributes []*LoadBalancerAttribute `type:"list"` } // String returns the string representation func (s DescribeLoadBalancerAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoadBalancerAttributesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeLoadBalancers. type DescribeLoadBalancersInput struct { _ struct{} `type:"structure"` // The Amazon Resource Names (ARN) of the load balancers. LoadBalancerArns []*string `type:"list"` // The marker for the next set of results. (You received this marker from a // previous call.) Marker *string `type:"string"` // The names of the load balancers. Names []*string `type:"list"` // The maximum number of results to return with this call. PageSize *int64 `min:"1" type:"integer"` } // String returns the string representation func (s DescribeLoadBalancersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoadBalancersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeLoadBalancersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeLoadBalancersInput"} if s.PageSize != nil && *s.PageSize < 1 { invalidParams.Add(request.NewErrParamMinValue("PageSize", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeLoadBalancers. type DescribeLoadBalancersOutput struct { _ struct{} `type:"structure"` // Information about the load balancers. LoadBalancers []*LoadBalancer `type:"list"` // The marker to use when requesting the next set of results. If there are no // additional results, the string is empty. NextMarker *string `type:"string"` } // String returns the string representation func (s DescribeLoadBalancersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoadBalancersOutput) GoString() string { return s.String() } // Contains the parameters for DescribeRules. type DescribeRulesInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the listener. ListenerArn *string `type:"string"` // The Amazon Resource Names (ARN) of the rules. RuleArns []*string `type:"list"` } // String returns the string representation func (s DescribeRulesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRulesInput) GoString() string { return s.String() } // Contains the output of DescribeRules. type DescribeRulesOutput struct { _ struct{} `type:"structure"` // Information about the rules. Rules []*Rule `type:"list"` } // String returns the string representation func (s DescribeRulesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRulesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeSSLPolicies. type DescribeSSLPoliciesInput struct { _ struct{} `type:"structure"` // The marker for the next set of results. (You received this marker from a // previous call.) Marker *string `type:"string"` // The names of the policies. Names []*string `type:"list"` // The maximum number of results to return with this call. PageSize *int64 `min:"1" type:"integer"` } // String returns the string representation func (s DescribeSSLPoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSSLPoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeSSLPoliciesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeSSLPoliciesInput"} if s.PageSize != nil && *s.PageSize < 1 { invalidParams.Add(request.NewErrParamMinValue("PageSize", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeSSLPolicies. type DescribeSSLPoliciesOutput struct { _ struct{} `type:"structure"` // The marker to use when requesting the next set of results. If there are no // additional results, the string is empty. NextMarker *string `type:"string"` // Information about the policies. SslPolicies []*SslPolicy `type:"list"` } // String returns the string representation func (s DescribeSSLPoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSSLPoliciesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeTags. type DescribeTagsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Names (ARN) of the resources. // // ResourceArns is a required field ResourceArns []*string `type:"list" required:"true"` } // String returns the string representation func (s DescribeTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTagsInput"} if s.ResourceArns == nil { invalidParams.Add(request.NewErrParamRequired("ResourceArns")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeTags. type DescribeTagsOutput struct { _ struct{} `type:"structure"` // Information about the tags. TagDescriptions []*TagDescription `type:"list"` } // String returns the string representation func (s DescribeTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeTargetGroupAttributes. type DescribeTargetGroupAttributesInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the target group. // // TargetGroupArn is a required field TargetGroupArn *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeTargetGroupAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTargetGroupAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTargetGroupAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTargetGroupAttributesInput"} if s.TargetGroupArn == nil { invalidParams.Add(request.NewErrParamRequired("TargetGroupArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeTargetGroupAttributes. type DescribeTargetGroupAttributesOutput struct { _ struct{} `type:"structure"` // Information about the target group attributes Attributes []*TargetGroupAttribute `type:"list"` } // String returns the string representation func (s DescribeTargetGroupAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTargetGroupAttributesOutput) GoString() string { return s.String() } // Contains the parameters for DescribeTargetGroups. type DescribeTargetGroupsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the load balancer. LoadBalancerArn *string `type:"string"` // The marker for the next set of results. (You received this marker from a // previous call.) Marker *string `type:"string"` // The names of the target groups. Names []*string `type:"list"` // The maximum number of results to return with this call. PageSize *int64 `min:"1" type:"integer"` // The Amazon Resource Names (ARN) of the target groups. TargetGroupArns []*string `type:"list"` } // String returns the string representation func (s DescribeTargetGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTargetGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTargetGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTargetGroupsInput"} if s.PageSize != nil && *s.PageSize < 1 { invalidParams.Add(request.NewErrParamMinValue("PageSize", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeTargetGroups. type DescribeTargetGroupsOutput struct { _ struct{} `type:"structure"` // The marker to use when requesting the next set of results. If there are no // additional results, the string is empty. NextMarker *string `type:"string"` // Information about the target groups. TargetGroups []*TargetGroup `type:"list"` } // String returns the string representation func (s DescribeTargetGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTargetGroupsOutput) GoString() string { return s.String() } // Contains the parameters for DescribeTargetHealth. type DescribeTargetHealthInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the target group. // // TargetGroupArn is a required field TargetGroupArn *string `type:"string" required:"true"` // The targets. Targets []*TargetDescription `type:"list"` } // String returns the string representation func (s DescribeTargetHealthInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTargetHealthInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTargetHealthInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTargetHealthInput"} if s.TargetGroupArn == nil { invalidParams.Add(request.NewErrParamRequired("TargetGroupArn")) } if s.Targets != nil { for i, v := range s.Targets { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeTargetHealth. type DescribeTargetHealthOutput struct { _ struct{} `type:"structure"` // Information about the health of the targets. TargetHealthDescriptions []*TargetHealthDescription `type:"list"` } // String returns the string representation func (s DescribeTargetHealthOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTargetHealthOutput) GoString() string { return s.String() } // Information about a listener. type Listener struct { _ struct{} `type:"structure"` // The SSL server certificate. You must provide a certificate if the protocol // is HTTPS. Certificates []*Certificate `type:"list"` // The default actions for the listener. DefaultActions []*Action `type:"list"` // The Amazon Resource Name (ARN) of the listener. ListenerArn *string `type:"string"` // The Amazon Resource Name (ARN) of the load balancer. LoadBalancerArn *string `type:"string"` // The port on which the load balancer is listening. Port *int64 `min:"1" type:"integer"` // The protocol for connections from clients to the load balancer. Protocol *string `type:"string" enum:"ProtocolEnum"` // The security policy that defines which ciphers and protocols are supported. // The default is the current predefined security policy. SslPolicy *string `type:"string"` } // String returns the string representation func (s Listener) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Listener) GoString() string { return s.String() } // Information about a load balancer. type LoadBalancer struct { _ struct{} `type:"structure"` // The Availability Zones for the load balancer. AvailabilityZones []*AvailabilityZone `type:"list"` // The ID of the Amazon Route 53 hosted zone associated with the load balancer. CanonicalHostedZoneId *string `type:"string"` // The date and time the load balancer was created. CreatedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The public DNS name of the load balancer. DNSName *string `type:"string"` // The Amazon Resource Name (ARN) of the load balancer. LoadBalancerArn *string `type:"string"` // The name of the load balancer. LoadBalancerName *string `type:"string"` // The nodes of an Internet-facing load balancer have public IP addresses. The // DNS name of an Internet-facing load balancer is publicly resolvable to the // public IP addresses of the nodes. Therefore, Internet-facing load balancers // can route requests from clients over the Internet. // // The nodes of an internal load balancer have only private IP addresses. The // DNS name of an internal load balancer is publicly resolvable to the private // IP addresses of the nodes. Therefore, internal load balancers can only route // requests from clients with access to the VPC for the load balancer. Scheme *string `type:"string" enum:"LoadBalancerSchemeEnum"` // The IDs of the security groups for the load balancer. SecurityGroups []*string `type:"list"` // The state of the load balancer. State *LoadBalancerState `type:"structure"` // The type of load balancer. Type *string `type:"string" enum:"LoadBalancerTypeEnum"` // The ID of the VPC for the load balancer. VpcId *string `type:"string"` } // String returns the string representation func (s LoadBalancer) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LoadBalancer) GoString() string { return s.String() } // Information about a load balancer attribute. type LoadBalancerAttribute struct { _ struct{} `type:"structure"` // The name of the attribute. // // * access_logs.s3.enabled - Indicates whether access logs stored in Amazon // S3 are enabled. The value is true or false. // // * access_logs.s3.bucket - The name of the S3 bucket for the access logs. // This attribute is required if access logs in Amazon S3 are enabled. The // bucket must exist in the same region as the load balancer and have a bucket // policy that grants Elastic Load Balancing permission to write to the bucket. // // * access_logs.s3.prefix - The prefix for the location in the S3 bucket. // If you don't specify a prefix, the access logs are stored in the root // of the bucket. // // * deletion_protection.enabled - Indicates whether deletion protection // is enabled. The value is true or false. // // * idle_timeout.timeout_seconds - The idle timeout value, in seconds. The // valid range is 1-3600. The default is 60 seconds. Key *string `type:"string"` // The value of the attribute. Value *string `type:"string"` } // String returns the string representation func (s LoadBalancerAttribute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LoadBalancerAttribute) GoString() string { return s.String() } // Information about the state of the load balancer. type LoadBalancerState struct { _ struct{} `type:"structure"` // The state code. The initial state of the load balancer is provisioning. After // the load balancer is fully set up and ready to route traffic, its state is // active. If the load balancer could not be set up, its state is failed. Code *string `type:"string" enum:"LoadBalancerStateEnum"` // A description of the state. Reason *string `type:"string"` } // String returns the string representation func (s LoadBalancerState) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LoadBalancerState) GoString() string { return s.String() } // Information to use when checking for a successful response from a target. type Matcher struct { _ struct{} `type:"structure"` // The HTTP codes. The default value is 200. You can specify multiple values // (for example, "200,202") or a range of values (for example, "200-299"). // // HttpCode is a required field HttpCode *string `type:"string" required:"true"` } // String returns the string representation func (s Matcher) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Matcher) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Matcher) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Matcher"} if s.HttpCode == nil { invalidParams.Add(request.NewErrParamRequired("HttpCode")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for ModifyListener. type ModifyListenerInput struct { _ struct{} `type:"structure"` // The SSL server certificate. Certificates []*Certificate `type:"list"` // The default actions. DefaultActions []*Action `type:"list"` // The Amazon Resource Name (ARN) of the listener. // // ListenerArn is a required field ListenerArn *string `type:"string" required:"true"` // The port for connections from clients to the load balancer. Port *int64 `min:"1" type:"integer"` // The protocol for connections from clients to the load balancer. Protocol *string `type:"string" enum:"ProtocolEnum"` // The security policy that defines which ciphers and protocols are supported. SslPolicy *string `type:"string"` } // String returns the string representation func (s ModifyListenerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyListenerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyListenerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyListenerInput"} if s.ListenerArn == nil { invalidParams.Add(request.NewErrParamRequired("ListenerArn")) } if s.Port != nil && *s.Port < 1 { invalidParams.Add(request.NewErrParamMinValue("Port", 1)) } if s.DefaultActions != nil { for i, v := range s.DefaultActions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DefaultActions", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ModifyListener. type ModifyListenerOutput struct { _ struct{} `type:"structure"` // Information about the modified listeners. Listeners []*Listener `type:"list"` } // String returns the string representation func (s ModifyListenerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyListenerOutput) GoString() string { return s.String() } // Contains the parameters for ModifyLoadBalancerAttributes. type ModifyLoadBalancerAttributesInput struct { _ struct{} `type:"structure"` // The load balancer attributes. // // Attributes is a required field Attributes []*LoadBalancerAttribute `type:"list" required:"true"` // The Amazon Resource Name (ARN) of the load balancer. // // LoadBalancerArn is a required field LoadBalancerArn *string `type:"string" required:"true"` } // String returns the string representation func (s ModifyLoadBalancerAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyLoadBalancerAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyLoadBalancerAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyLoadBalancerAttributesInput"} if s.Attributes == nil { invalidParams.Add(request.NewErrParamRequired("Attributes")) } if s.LoadBalancerArn == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ModifyLoadBalancerAttributes. type ModifyLoadBalancerAttributesOutput struct { _ struct{} `type:"structure"` // Information about the load balancer attributes. Attributes []*LoadBalancerAttribute `type:"list"` } // String returns the string representation func (s ModifyLoadBalancerAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyLoadBalancerAttributesOutput) GoString() string { return s.String() } // Contains the parameters for ModifyRules. type ModifyRuleInput struct { _ struct{} `type:"structure"` // The actions. Actions []*Action `type:"list"` // The conditions. Conditions []*RuleCondition `type:"list"` // The Amazon Resource Name (ARN) of the rule. // // RuleArn is a required field RuleArn *string `type:"string" required:"true"` } // String returns the string representation func (s ModifyRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyRuleInput"} if s.RuleArn == nil { invalidParams.Add(request.NewErrParamRequired("RuleArn")) } if s.Actions != nil { for i, v := range s.Actions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Actions", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ModifyRules. type ModifyRuleOutput struct { _ struct{} `type:"structure"` // Information about the rule. Rules []*Rule `type:"list"` } // String returns the string representation func (s ModifyRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyRuleOutput) GoString() string { return s.String() } // Contains the parameters for ModifyTargetGroupAttributes. type ModifyTargetGroupAttributesInput struct { _ struct{} `type:"structure"` // The attributes. // // Attributes is a required field Attributes []*TargetGroupAttribute `type:"list" required:"true"` // The Amazon Resource Name (ARN) of the target group. // // TargetGroupArn is a required field TargetGroupArn *string `type:"string" required:"true"` } // String returns the string representation func (s ModifyTargetGroupAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyTargetGroupAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyTargetGroupAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyTargetGroupAttributesInput"} if s.Attributes == nil { invalidParams.Add(request.NewErrParamRequired("Attributes")) } if s.TargetGroupArn == nil { invalidParams.Add(request.NewErrParamRequired("TargetGroupArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ModifyTargetGroupAttributes. type ModifyTargetGroupAttributesOutput struct { _ struct{} `type:"structure"` // Information about the attributes. Attributes []*TargetGroupAttribute `type:"list"` } // String returns the string representation func (s ModifyTargetGroupAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyTargetGroupAttributesOutput) GoString() string { return s.String() } // Contains the parameters for ModifyTargetGroup. type ModifyTargetGroupInput struct { _ struct{} `type:"structure"` // The approximate amount of time, in seconds, between health checks of an individual // target. HealthCheckIntervalSeconds *int64 `min:"5" type:"integer"` // The ping path that is the destination for the health check request. HealthCheckPath *string `min:"1" type:"string"` // The port to use to connect with the target. HealthCheckPort *string `type:"string"` // The protocol to use to connect with the target. HealthCheckProtocol *string `type:"string" enum:"ProtocolEnum"` // The amount of time, in seconds, during which no response means a failed health // check. HealthCheckTimeoutSeconds *int64 `min:"2" type:"integer"` // The number of consecutive health checks successes required before considering // an unhealthy target healthy. HealthyThresholdCount *int64 `min:"2" type:"integer"` // The HTTP codes to use when checking for a successful response from a target. Matcher *Matcher `type:"structure"` // The Amazon Resource Name (ARN) of the target group. // // TargetGroupArn is a required field TargetGroupArn *string `type:"string" required:"true"` // The number of consecutive health check failures required before considering // the target unhealthy. UnhealthyThresholdCount *int64 `min:"2" type:"integer"` } // String returns the string representation func (s ModifyTargetGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyTargetGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyTargetGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyTargetGroupInput"} if s.HealthCheckIntervalSeconds != nil && *s.HealthCheckIntervalSeconds < 5 { invalidParams.Add(request.NewErrParamMinValue("HealthCheckIntervalSeconds", 5)) } if s.HealthCheckPath != nil && len(*s.HealthCheckPath) < 1 { invalidParams.Add(request.NewErrParamMinLen("HealthCheckPath", 1)) } if s.HealthCheckTimeoutSeconds != nil && *s.HealthCheckTimeoutSeconds < 2 { invalidParams.Add(request.NewErrParamMinValue("HealthCheckTimeoutSeconds", 2)) } if s.HealthyThresholdCount != nil && *s.HealthyThresholdCount < 2 { invalidParams.Add(request.NewErrParamMinValue("HealthyThresholdCount", 2)) } if s.TargetGroupArn == nil { invalidParams.Add(request.NewErrParamRequired("TargetGroupArn")) } if s.UnhealthyThresholdCount != nil && *s.UnhealthyThresholdCount < 2 { invalidParams.Add(request.NewErrParamMinValue("UnhealthyThresholdCount", 2)) } if s.Matcher != nil { if err := s.Matcher.Validate(); err != nil { invalidParams.AddNested("Matcher", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ModifyTargetGroup. type ModifyTargetGroupOutput struct { _ struct{} `type:"structure"` // Information about the target group. TargetGroups []*TargetGroup `type:"list"` } // String returns the string representation func (s ModifyTargetGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyTargetGroupOutput) GoString() string { return s.String() } // Contains the parameters for RegisterTargets. type RegisterTargetsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the target group. // // TargetGroupArn is a required field TargetGroupArn *string `type:"string" required:"true"` // The targets. The default port for a target is the port for the target group. // You can specify a port override. If a target is already registered, you can // register it again using a different port. // // Targets is a required field Targets []*TargetDescription `type:"list" required:"true"` } // String returns the string representation func (s RegisterTargetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterTargetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterTargetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterTargetsInput"} if s.TargetGroupArn == nil { invalidParams.Add(request.NewErrParamRequired("TargetGroupArn")) } if s.Targets == nil { invalidParams.Add(request.NewErrParamRequired("Targets")) } if s.Targets != nil { for i, v := range s.Targets { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of RegisterTargets. type RegisterTargetsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RegisterTargetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterTargetsOutput) GoString() string { return s.String() } // Contains the parameters for RemoveTags. type RemoveTagsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the resource. // // ResourceArns is a required field ResourceArns []*string `type:"list" required:"true"` // The tag keys for the tags to remove. // // TagKeys is a required field TagKeys []*string `type:"list" required:"true"` } // String returns the string representation func (s RemoveTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTagsInput"} if s.ResourceArns == nil { invalidParams.Add(request.NewErrParamRequired("ResourceArns")) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of RemoveTags. type RemoveTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsOutput) GoString() string { return s.String() } // Information about a rule. type Rule struct { _ struct{} `type:"structure"` // The actions. Actions []*Action `type:"list"` // The conditions. Conditions []*RuleCondition `type:"list"` // Indicates whether this is the default rule. IsDefault *bool `type:"boolean"` // The priority. Priority *string `type:"string"` // The Amazon Resource Name (ARN) of the rule. RuleArn *string `type:"string"` } // String returns the string representation func (s Rule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Rule) GoString() string { return s.String() } // Information about a condition for a rule. type RuleCondition struct { _ struct{} `type:"structure"` // The only possible value is path-pattern. Field *string `type:"string"` // The path pattern. You can specify a single path pattern. // // A path pattern is case sensitive, can be up to 255 characters in length, // and can contain any of the following characters: // // * A-Z, a-z, 0-9 // // * _ - . $ / ~ " ' @ : + // // * & (using &) // // * * (matches 0 or more characters) // // * ? (matches exactly 1 character) Values []*string `type:"list"` } // String returns the string representation func (s RuleCondition) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RuleCondition) GoString() string { return s.String() } // Information about the priorities for the rules for a listener. type RulePriorityPair struct { _ struct{} `type:"structure"` // The rule priority. Priority *int64 `min:"1" type:"integer"` // The Amazon Resource Name (ARN) of the rule. RuleArn *string `type:"string"` } // String returns the string representation func (s RulePriorityPair) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RulePriorityPair) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RulePriorityPair) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RulePriorityPair"} if s.Priority != nil && *s.Priority < 1 { invalidParams.Add(request.NewErrParamMinValue("Priority", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for SetRulePriorities. type SetRulePrioritiesInput struct { _ struct{} `type:"structure"` // The rule priorities. // // RulePriorities is a required field RulePriorities []*RulePriorityPair `type:"list" required:"true"` } // String returns the string representation func (s SetRulePrioritiesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetRulePrioritiesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetRulePrioritiesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetRulePrioritiesInput"} if s.RulePriorities == nil { invalidParams.Add(request.NewErrParamRequired("RulePriorities")) } if s.RulePriorities != nil { for i, v := range s.RulePriorities { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RulePriorities", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of SetRulePriorities. type SetRulePrioritiesOutput struct { _ struct{} `type:"structure"` // Information about the rules. Rules []*Rule `type:"list"` } // String returns the string representation func (s SetRulePrioritiesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetRulePrioritiesOutput) GoString() string { return s.String() } // Contains the parameters for SetSecurityGroups. type SetSecurityGroupsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the load balancer. // // LoadBalancerArn is a required field LoadBalancerArn *string `type:"string" required:"true"` // The IDs of the security groups. // // SecurityGroups is a required field SecurityGroups []*string `type:"list" required:"true"` } // String returns the string representation func (s SetSecurityGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetSecurityGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetSecurityGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetSecurityGroupsInput"} if s.LoadBalancerArn == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerArn")) } if s.SecurityGroups == nil { invalidParams.Add(request.NewErrParamRequired("SecurityGroups")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of SetSecurityGroups. type SetSecurityGroupsOutput struct { _ struct{} `type:"structure"` // The IDs of the security groups associated with the load balancer. SecurityGroupIds []*string `type:"list"` } // String returns the string representation func (s SetSecurityGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetSecurityGroupsOutput) GoString() string { return s.String() } // Contains the parameters for SetSubnets. type SetSubnetsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the load balancer. // // LoadBalancerArn is a required field LoadBalancerArn *string `type:"string" required:"true"` // The IDs of the subnets. You must specify at least two subnets. You can add // only one subnet per Availability Zone. // // Subnets is a required field Subnets []*string `type:"list" required:"true"` } // String returns the string representation func (s SetSubnetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetSubnetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetSubnetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetSubnetsInput"} if s.LoadBalancerArn == nil { invalidParams.Add(request.NewErrParamRequired("LoadBalancerArn")) } if s.Subnets == nil { invalidParams.Add(request.NewErrParamRequired("Subnets")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of SetSubnets. type SetSubnetsOutput struct { _ struct{} `type:"structure"` // Information about the subnet and Availability Zone. AvailabilityZones []*AvailabilityZone `type:"list"` } // String returns the string representation func (s SetSubnetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetSubnetsOutput) GoString() string { return s.String() } // Information about a policy used for SSL negotiation. type SslPolicy struct { _ struct{} `type:"structure"` // The ciphers. Ciphers []*Cipher `type:"list"` // The name of the policy. Name *string `type:"string"` // The protocols. SslProtocols []*string `type:"list"` } // String returns the string representation func (s SslPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SslPolicy) GoString() string { return s.String() } // Information about a tag. type Tag struct { _ struct{} `type:"structure"` // The key of the tag. // // Key is a required field Key *string `min:"1" type:"string" required:"true"` // The value of the tag. Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The tags associated with a resource. type TagDescription struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the resource. ResourceArn *string `type:"string"` // Information about the tags. Tags []*Tag `min:"1" type:"list"` } // String returns the string representation func (s TagDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TagDescription) GoString() string { return s.String() } // Information about a target. type TargetDescription struct { _ struct{} `type:"structure"` // The ID of the target. // // Id is a required field Id *string `type:"string" required:"true"` // The port on which the target is listening. Port *int64 `min:"1" type:"integer"` } // String returns the string representation func (s TargetDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TargetDescription) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TargetDescription) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TargetDescription"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Port != nil && *s.Port < 1 { invalidParams.Add(request.NewErrParamMinValue("Port", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Information about a target group. type TargetGroup struct { _ struct{} `type:"structure"` // The approximate amount of time, in seconds, between health checks of an individual // target. HealthCheckIntervalSeconds *int64 `min:"5" type:"integer"` // The destination for the health check request. HealthCheckPath *string `min:"1" type:"string"` // The port to use to connect with the target. HealthCheckPort *string `type:"string"` // The protocol to use to connect with the target. HealthCheckProtocol *string `type:"string" enum:"ProtocolEnum"` // The amount of time, in seconds, during which no response means a failed health // check. HealthCheckTimeoutSeconds *int64 `min:"2" type:"integer"` // The number of consecutive health checks successes required before considering // an unhealthy target healthy. HealthyThresholdCount *int64 `min:"2" type:"integer"` // The Amazon Resource Names (ARN) of the load balancers that route traffic // to this target group. LoadBalancerArns []*string `type:"list"` // The HTTP codes to use when checking for a successful response from a target. Matcher *Matcher `type:"structure"` // The port on which the targets are listening. Port *int64 `min:"1" type:"integer"` // The protocol to use for routing traffic to the targets. Protocol *string `type:"string" enum:"ProtocolEnum"` // The Amazon Resource Name (ARN) of the target group. TargetGroupArn *string `type:"string"` // The name of the target group. TargetGroupName *string `type:"string"` // The number of consecutive health check failures required before considering // the target unhealthy. UnhealthyThresholdCount *int64 `min:"2" type:"integer"` // The ID of the VPC for the targets. VpcId *string `type:"string"` } // String returns the string representation func (s TargetGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TargetGroup) GoString() string { return s.String() } // Information about a target group attribute. type TargetGroupAttribute struct { _ struct{} `type:"structure"` // The name of the attribute. // // * deregistration_delay.timeout_seconds - The amount time for Elastic Load // Balancing to wait before changing the state of a deregistering target // from draining to unused. The range is 0-3600 seconds. The default value // is 300 seconds. // // * stickiness.enabled - Indicates whether sticky sessions are enabled. // The value is true or false. // // * stickiness.type - The type of sticky sessions. The possible value is // lb_cookie. // // * stickiness.lb_cookie.duration_seconds - The time period, in seconds, // during which requests from a client should be routed to the same target. // After this time period expires, the load balancer-generated cookie is // considered stale. The range is 1 second to 1 week (604800 seconds). The // default value is 1 day (86400 seconds). Key *string `type:"string"` // The value of the attribute. Value *string `type:"string"` } // String returns the string representation func (s TargetGroupAttribute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TargetGroupAttribute) GoString() string { return s.String() } // Information about the current health of a target. type TargetHealth struct { _ struct{} `type:"structure"` // A description of the target health that provides additional details. If the // state is healthy, a description is not provided. Description *string `type:"string"` // The reason code. If the target state is healthy, a reason code is not provided. // // If the target state is initial, the reason code can be one of the following // values: // // * Elb.RegistrationInProgress - The target is in the process of being registered // with the load balancer. // // * Elb.InitialHealthChecking - The load balancer is still sending the target // the minimum number of health checks required to determine its health status. // // If the target state is unhealthy, the reason code can be one of the following // values: // // * Target.ResponseCodeMismatch - The health checks did not return an expected // HTTP code. // // * Target.Timeout - The health check requests timed out. // // * Target.FailedHealthChecks - The health checks failed because the connection // to the target timed out, the target response was malformed, or the target // failed the health check for an unknown reason. // // * Elb.InternalError - The health checks failed due to an internal error. // // If the target state is unused, the reason code can be one of the following // values: // // * Target.NotRegistered - The target is not registered with the target // group. // // * Target.NotInUse - The target group is not used by any load balancer // or the target is in an Availability Zone that is not enabled for its load // balancer. // // * Target.InvalidState - The target is in the stopped or terminated state. // // If the target state is draining, the reason code can be the following value: // // * Target.DeregistrationInProgress - The target is in the process of being // deregistered and the deregistration delay period has not expired. Reason *string `type:"string" enum:"TargetHealthReasonEnum"` // The state of the target. State *string `type:"string" enum:"TargetHealthStateEnum"` } // String returns the string representation func (s TargetHealth) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TargetHealth) GoString() string { return s.String() } // Information about the health of a target. type TargetHealthDescription struct { _ struct{} `type:"structure"` // The port to use to connect with the target. HealthCheckPort *string `type:"string"` // The description of the target. Target *TargetDescription `type:"structure"` // The health information for the target. TargetHealth *TargetHealth `type:"structure"` } // String returns the string representation func (s TargetHealthDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TargetHealthDescription) GoString() string { return s.String() } const ( // ActionTypeEnumForward is a ActionTypeEnum enum value ActionTypeEnumForward = "forward" ) const ( // LoadBalancerSchemeEnumInternetFacing is a LoadBalancerSchemeEnum enum value LoadBalancerSchemeEnumInternetFacing = "internet-facing" // LoadBalancerSchemeEnumInternal is a LoadBalancerSchemeEnum enum value LoadBalancerSchemeEnumInternal = "internal" ) const ( // LoadBalancerStateEnumActive is a LoadBalancerStateEnum enum value LoadBalancerStateEnumActive = "active" // LoadBalancerStateEnumProvisioning is a LoadBalancerStateEnum enum value LoadBalancerStateEnumProvisioning = "provisioning" // LoadBalancerStateEnumFailed is a LoadBalancerStateEnum enum value LoadBalancerStateEnumFailed = "failed" ) const ( // LoadBalancerTypeEnumApplication is a LoadBalancerTypeEnum enum value LoadBalancerTypeEnumApplication = "application" ) const ( // ProtocolEnumHttp is a ProtocolEnum enum value ProtocolEnumHttp = "HTTP" // ProtocolEnumHttps is a ProtocolEnum enum value ProtocolEnumHttps = "HTTPS" ) const ( // TargetHealthReasonEnumElbRegistrationInProgress is a TargetHealthReasonEnum enum value TargetHealthReasonEnumElbRegistrationInProgress = "Elb.RegistrationInProgress" // TargetHealthReasonEnumElbInitialHealthChecking is a TargetHealthReasonEnum enum value TargetHealthReasonEnumElbInitialHealthChecking = "Elb.InitialHealthChecking" // TargetHealthReasonEnumTargetResponseCodeMismatch is a TargetHealthReasonEnum enum value TargetHealthReasonEnumTargetResponseCodeMismatch = "Target.ResponseCodeMismatch" // TargetHealthReasonEnumTargetTimeout is a TargetHealthReasonEnum enum value TargetHealthReasonEnumTargetTimeout = "Target.Timeout" // TargetHealthReasonEnumTargetFailedHealthChecks is a TargetHealthReasonEnum enum value TargetHealthReasonEnumTargetFailedHealthChecks = "Target.FailedHealthChecks" // TargetHealthReasonEnumTargetNotRegistered is a TargetHealthReasonEnum enum value TargetHealthReasonEnumTargetNotRegistered = "Target.NotRegistered" // TargetHealthReasonEnumTargetNotInUse is a TargetHealthReasonEnum enum value TargetHealthReasonEnumTargetNotInUse = "Target.NotInUse" // TargetHealthReasonEnumTargetDeregistrationInProgress is a TargetHealthReasonEnum enum value TargetHealthReasonEnumTargetDeregistrationInProgress = "Target.DeregistrationInProgress" // TargetHealthReasonEnumTargetInvalidState is a TargetHealthReasonEnum enum value TargetHealthReasonEnumTargetInvalidState = "Target.InvalidState" // TargetHealthReasonEnumElbInternalError is a TargetHealthReasonEnum enum value TargetHealthReasonEnumElbInternalError = "Elb.InternalError" ) const ( // TargetHealthStateEnumInitial is a TargetHealthStateEnum enum value TargetHealthStateEnumInitial = "initial" // TargetHealthStateEnumHealthy is a TargetHealthStateEnum enum value TargetHealthStateEnumHealthy = "healthy" // TargetHealthStateEnumUnhealthy is a TargetHealthStateEnum enum value TargetHealthStateEnumUnhealthy = "unhealthy" // TargetHealthStateEnumUnused is a TargetHealthStateEnum enum value TargetHealthStateEnumUnused = "unused" // TargetHealthStateEnumDraining is a TargetHealthStateEnum enum value TargetHealthStateEnumDraining = "draining" ) aws-sdk-go-1.4.22/service/elbv2/elbv2iface/000077500000000000000000000000001300374646400202375ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/elbv2/elbv2iface/interface.go000066400000000000000000000200501300374646400225230ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package elbv2iface provides an interface to enable mocking the Elastic Load Balancing service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package elbv2iface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/elbv2" ) // ELBV2API provides an interface to enable mocking the // elbv2.ELBV2 service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Elastic Load Balancing. // func myFunc(svc elbv2iface.ELBV2API) bool { // // Make svc.AddTags request // } // // func main() { // sess := session.New() // svc := elbv2.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockELBV2Client struct { // elbv2iface.ELBV2API // } // func (m *mockELBV2Client) AddTags(input *elbv2.AddTagsInput) (*elbv2.AddTagsOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockELBV2Client{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type ELBV2API interface { AddTagsRequest(*elbv2.AddTagsInput) (*request.Request, *elbv2.AddTagsOutput) AddTags(*elbv2.AddTagsInput) (*elbv2.AddTagsOutput, error) CreateListenerRequest(*elbv2.CreateListenerInput) (*request.Request, *elbv2.CreateListenerOutput) CreateListener(*elbv2.CreateListenerInput) (*elbv2.CreateListenerOutput, error) CreateLoadBalancerRequest(*elbv2.CreateLoadBalancerInput) (*request.Request, *elbv2.CreateLoadBalancerOutput) CreateLoadBalancer(*elbv2.CreateLoadBalancerInput) (*elbv2.CreateLoadBalancerOutput, error) CreateRuleRequest(*elbv2.CreateRuleInput) (*request.Request, *elbv2.CreateRuleOutput) CreateRule(*elbv2.CreateRuleInput) (*elbv2.CreateRuleOutput, error) CreateTargetGroupRequest(*elbv2.CreateTargetGroupInput) (*request.Request, *elbv2.CreateTargetGroupOutput) CreateTargetGroup(*elbv2.CreateTargetGroupInput) (*elbv2.CreateTargetGroupOutput, error) DeleteListenerRequest(*elbv2.DeleteListenerInput) (*request.Request, *elbv2.DeleteListenerOutput) DeleteListener(*elbv2.DeleteListenerInput) (*elbv2.DeleteListenerOutput, error) DeleteLoadBalancerRequest(*elbv2.DeleteLoadBalancerInput) (*request.Request, *elbv2.DeleteLoadBalancerOutput) DeleteLoadBalancer(*elbv2.DeleteLoadBalancerInput) (*elbv2.DeleteLoadBalancerOutput, error) DeleteRuleRequest(*elbv2.DeleteRuleInput) (*request.Request, *elbv2.DeleteRuleOutput) DeleteRule(*elbv2.DeleteRuleInput) (*elbv2.DeleteRuleOutput, error) DeleteTargetGroupRequest(*elbv2.DeleteTargetGroupInput) (*request.Request, *elbv2.DeleteTargetGroupOutput) DeleteTargetGroup(*elbv2.DeleteTargetGroupInput) (*elbv2.DeleteTargetGroupOutput, error) DeregisterTargetsRequest(*elbv2.DeregisterTargetsInput) (*request.Request, *elbv2.DeregisterTargetsOutput) DeregisterTargets(*elbv2.DeregisterTargetsInput) (*elbv2.DeregisterTargetsOutput, error) DescribeListenersRequest(*elbv2.DescribeListenersInput) (*request.Request, *elbv2.DescribeListenersOutput) DescribeListeners(*elbv2.DescribeListenersInput) (*elbv2.DescribeListenersOutput, error) DescribeListenersPages(*elbv2.DescribeListenersInput, func(*elbv2.DescribeListenersOutput, bool) bool) error DescribeLoadBalancerAttributesRequest(*elbv2.DescribeLoadBalancerAttributesInput) (*request.Request, *elbv2.DescribeLoadBalancerAttributesOutput) DescribeLoadBalancerAttributes(*elbv2.DescribeLoadBalancerAttributesInput) (*elbv2.DescribeLoadBalancerAttributesOutput, error) DescribeLoadBalancersRequest(*elbv2.DescribeLoadBalancersInput) (*request.Request, *elbv2.DescribeLoadBalancersOutput) DescribeLoadBalancers(*elbv2.DescribeLoadBalancersInput) (*elbv2.DescribeLoadBalancersOutput, error) DescribeLoadBalancersPages(*elbv2.DescribeLoadBalancersInput, func(*elbv2.DescribeLoadBalancersOutput, bool) bool) error DescribeRulesRequest(*elbv2.DescribeRulesInput) (*request.Request, *elbv2.DescribeRulesOutput) DescribeRules(*elbv2.DescribeRulesInput) (*elbv2.DescribeRulesOutput, error) DescribeSSLPoliciesRequest(*elbv2.DescribeSSLPoliciesInput) (*request.Request, *elbv2.DescribeSSLPoliciesOutput) DescribeSSLPolicies(*elbv2.DescribeSSLPoliciesInput) (*elbv2.DescribeSSLPoliciesOutput, error) DescribeTagsRequest(*elbv2.DescribeTagsInput) (*request.Request, *elbv2.DescribeTagsOutput) DescribeTags(*elbv2.DescribeTagsInput) (*elbv2.DescribeTagsOutput, error) DescribeTargetGroupAttributesRequest(*elbv2.DescribeTargetGroupAttributesInput) (*request.Request, *elbv2.DescribeTargetGroupAttributesOutput) DescribeTargetGroupAttributes(*elbv2.DescribeTargetGroupAttributesInput) (*elbv2.DescribeTargetGroupAttributesOutput, error) DescribeTargetGroupsRequest(*elbv2.DescribeTargetGroupsInput) (*request.Request, *elbv2.DescribeTargetGroupsOutput) DescribeTargetGroups(*elbv2.DescribeTargetGroupsInput) (*elbv2.DescribeTargetGroupsOutput, error) DescribeTargetGroupsPages(*elbv2.DescribeTargetGroupsInput, func(*elbv2.DescribeTargetGroupsOutput, bool) bool) error DescribeTargetHealthRequest(*elbv2.DescribeTargetHealthInput) (*request.Request, *elbv2.DescribeTargetHealthOutput) DescribeTargetHealth(*elbv2.DescribeTargetHealthInput) (*elbv2.DescribeTargetHealthOutput, error) ModifyListenerRequest(*elbv2.ModifyListenerInput) (*request.Request, *elbv2.ModifyListenerOutput) ModifyListener(*elbv2.ModifyListenerInput) (*elbv2.ModifyListenerOutput, error) ModifyLoadBalancerAttributesRequest(*elbv2.ModifyLoadBalancerAttributesInput) (*request.Request, *elbv2.ModifyLoadBalancerAttributesOutput) ModifyLoadBalancerAttributes(*elbv2.ModifyLoadBalancerAttributesInput) (*elbv2.ModifyLoadBalancerAttributesOutput, error) ModifyRuleRequest(*elbv2.ModifyRuleInput) (*request.Request, *elbv2.ModifyRuleOutput) ModifyRule(*elbv2.ModifyRuleInput) (*elbv2.ModifyRuleOutput, error) ModifyTargetGroupRequest(*elbv2.ModifyTargetGroupInput) (*request.Request, *elbv2.ModifyTargetGroupOutput) ModifyTargetGroup(*elbv2.ModifyTargetGroupInput) (*elbv2.ModifyTargetGroupOutput, error) ModifyTargetGroupAttributesRequest(*elbv2.ModifyTargetGroupAttributesInput) (*request.Request, *elbv2.ModifyTargetGroupAttributesOutput) ModifyTargetGroupAttributes(*elbv2.ModifyTargetGroupAttributesInput) (*elbv2.ModifyTargetGroupAttributesOutput, error) RegisterTargetsRequest(*elbv2.RegisterTargetsInput) (*request.Request, *elbv2.RegisterTargetsOutput) RegisterTargets(*elbv2.RegisterTargetsInput) (*elbv2.RegisterTargetsOutput, error) RemoveTagsRequest(*elbv2.RemoveTagsInput) (*request.Request, *elbv2.RemoveTagsOutput) RemoveTags(*elbv2.RemoveTagsInput) (*elbv2.RemoveTagsOutput, error) SetRulePrioritiesRequest(*elbv2.SetRulePrioritiesInput) (*request.Request, *elbv2.SetRulePrioritiesOutput) SetRulePriorities(*elbv2.SetRulePrioritiesInput) (*elbv2.SetRulePrioritiesOutput, error) SetSecurityGroupsRequest(*elbv2.SetSecurityGroupsInput) (*request.Request, *elbv2.SetSecurityGroupsOutput) SetSecurityGroups(*elbv2.SetSecurityGroupsInput) (*elbv2.SetSecurityGroupsOutput, error) SetSubnetsRequest(*elbv2.SetSubnetsInput) (*request.Request, *elbv2.SetSubnetsOutput) SetSubnets(*elbv2.SetSubnetsInput) (*elbv2.SetSubnetsOutput, error) } var _ ELBV2API = (*elbv2.ELBV2)(nil) aws-sdk-go-1.4.22/service/elbv2/examples_test.go000066400000000000000000000520531300374646400214460ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package elbv2_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/elbv2" ) var _ time.Duration var _ bytes.Buffer func ExampleELBV2_AddTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.AddTagsInput{ ResourceArns: []*string{ // Required aws.String("ResourceArn"), // Required // More values... }, Tags: []*elbv2.Tag{ // Required { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), }, // More values... }, } resp, err := svc.AddTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_CreateListener() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.CreateListenerInput{ DefaultActions: []*elbv2.Action{ // Required { // Required TargetGroupArn: aws.String("TargetGroupArn"), // Required Type: aws.String("ActionTypeEnum"), // Required }, // More values... }, LoadBalancerArn: aws.String("LoadBalancerArn"), // Required Port: aws.Int64(1), // Required Protocol: aws.String("ProtocolEnum"), // Required Certificates: []*elbv2.Certificate{ { // Required CertificateArn: aws.String("CertificateArn"), }, // More values... }, SslPolicy: aws.String("SslPolicyName"), } resp, err := svc.CreateListener(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_CreateLoadBalancer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.CreateLoadBalancerInput{ Name: aws.String("LoadBalancerName"), // Required Subnets: []*string{ // Required aws.String("SubnetId"), // Required // More values... }, Scheme: aws.String("LoadBalancerSchemeEnum"), SecurityGroups: []*string{ aws.String("SecurityGroupId"), // Required // More values... }, Tags: []*elbv2.Tag{ { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), }, // More values... }, } resp, err := svc.CreateLoadBalancer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_CreateRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.CreateRuleInput{ Actions: []*elbv2.Action{ // Required { // Required TargetGroupArn: aws.String("TargetGroupArn"), // Required Type: aws.String("ActionTypeEnum"), // Required }, // More values... }, Conditions: []*elbv2.RuleCondition{ // Required { // Required Field: aws.String("ConditionFieldName"), Values: []*string{ aws.String("StringValue"), // Required // More values... }, }, // More values... }, ListenerArn: aws.String("ListenerArn"), // Required Priority: aws.Int64(1), // Required } resp, err := svc.CreateRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_CreateTargetGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.CreateTargetGroupInput{ Name: aws.String("TargetGroupName"), // Required Port: aws.Int64(1), // Required Protocol: aws.String("ProtocolEnum"), // Required VpcId: aws.String("VpcId"), // Required HealthCheckIntervalSeconds: aws.Int64(1), HealthCheckPath: aws.String("Path"), HealthCheckPort: aws.String("HealthCheckPort"), HealthCheckProtocol: aws.String("ProtocolEnum"), HealthCheckTimeoutSeconds: aws.Int64(1), HealthyThresholdCount: aws.Int64(1), Matcher: &elbv2.Matcher{ HttpCode: aws.String("HttpCode"), // Required }, UnhealthyThresholdCount: aws.Int64(1), } resp, err := svc.CreateTargetGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_DeleteListener() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.DeleteListenerInput{ ListenerArn: aws.String("ListenerArn"), // Required } resp, err := svc.DeleteListener(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_DeleteLoadBalancer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.DeleteLoadBalancerInput{ LoadBalancerArn: aws.String("LoadBalancerArn"), // Required } resp, err := svc.DeleteLoadBalancer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_DeleteRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.DeleteRuleInput{ RuleArn: aws.String("RuleArn"), // Required } resp, err := svc.DeleteRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_DeleteTargetGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.DeleteTargetGroupInput{ TargetGroupArn: aws.String("TargetGroupArn"), // Required } resp, err := svc.DeleteTargetGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_DeregisterTargets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.DeregisterTargetsInput{ TargetGroupArn: aws.String("TargetGroupArn"), // Required Targets: []*elbv2.TargetDescription{ // Required { // Required Id: aws.String("TargetId"), // Required Port: aws.Int64(1), }, // More values... }, } resp, err := svc.DeregisterTargets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_DescribeListeners() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.DescribeListenersInput{ ListenerArns: []*string{ aws.String("ListenerArn"), // Required // More values... }, LoadBalancerArn: aws.String("LoadBalancerArn"), Marker: aws.String("Marker"), PageSize: aws.Int64(1), } resp, err := svc.DescribeListeners(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_DescribeLoadBalancerAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.DescribeLoadBalancerAttributesInput{ LoadBalancerArn: aws.String("LoadBalancerArn"), // Required } resp, err := svc.DescribeLoadBalancerAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_DescribeLoadBalancers() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.DescribeLoadBalancersInput{ LoadBalancerArns: []*string{ aws.String("LoadBalancerArn"), // Required // More values... }, Marker: aws.String("Marker"), Names: []*string{ aws.String("LoadBalancerName"), // Required // More values... }, PageSize: aws.Int64(1), } resp, err := svc.DescribeLoadBalancers(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_DescribeRules() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.DescribeRulesInput{ ListenerArn: aws.String("ListenerArn"), RuleArns: []*string{ aws.String("RuleArn"), // Required // More values... }, } resp, err := svc.DescribeRules(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_DescribeSSLPolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.DescribeSSLPoliciesInput{ Marker: aws.String("Marker"), Names: []*string{ aws.String("SslPolicyName"), // Required // More values... }, PageSize: aws.Int64(1), } resp, err := svc.DescribeSSLPolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_DescribeTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.DescribeTagsInput{ ResourceArns: []*string{ // Required aws.String("ResourceArn"), // Required // More values... }, } resp, err := svc.DescribeTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_DescribeTargetGroupAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.DescribeTargetGroupAttributesInput{ TargetGroupArn: aws.String("TargetGroupArn"), // Required } resp, err := svc.DescribeTargetGroupAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_DescribeTargetGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.DescribeTargetGroupsInput{ LoadBalancerArn: aws.String("LoadBalancerArn"), Marker: aws.String("Marker"), Names: []*string{ aws.String("TargetGroupName"), // Required // More values... }, PageSize: aws.Int64(1), TargetGroupArns: []*string{ aws.String("TargetGroupArn"), // Required // More values... }, } resp, err := svc.DescribeTargetGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_DescribeTargetHealth() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.DescribeTargetHealthInput{ TargetGroupArn: aws.String("TargetGroupArn"), // Required Targets: []*elbv2.TargetDescription{ { // Required Id: aws.String("TargetId"), // Required Port: aws.Int64(1), }, // More values... }, } resp, err := svc.DescribeTargetHealth(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_ModifyListener() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.ModifyListenerInput{ ListenerArn: aws.String("ListenerArn"), // Required Certificates: []*elbv2.Certificate{ { // Required CertificateArn: aws.String("CertificateArn"), }, // More values... }, DefaultActions: []*elbv2.Action{ { // Required TargetGroupArn: aws.String("TargetGroupArn"), // Required Type: aws.String("ActionTypeEnum"), // Required }, // More values... }, Port: aws.Int64(1), Protocol: aws.String("ProtocolEnum"), SslPolicy: aws.String("SslPolicyName"), } resp, err := svc.ModifyListener(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_ModifyLoadBalancerAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.ModifyLoadBalancerAttributesInput{ Attributes: []*elbv2.LoadBalancerAttribute{ // Required { // Required Key: aws.String("LoadBalancerAttributeKey"), Value: aws.String("LoadBalancerAttributeValue"), }, // More values... }, LoadBalancerArn: aws.String("LoadBalancerArn"), // Required } resp, err := svc.ModifyLoadBalancerAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_ModifyRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.ModifyRuleInput{ RuleArn: aws.String("RuleArn"), // Required Actions: []*elbv2.Action{ { // Required TargetGroupArn: aws.String("TargetGroupArn"), // Required Type: aws.String("ActionTypeEnum"), // Required }, // More values... }, Conditions: []*elbv2.RuleCondition{ { // Required Field: aws.String("ConditionFieldName"), Values: []*string{ aws.String("StringValue"), // Required // More values... }, }, // More values... }, } resp, err := svc.ModifyRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_ModifyTargetGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.ModifyTargetGroupInput{ TargetGroupArn: aws.String("TargetGroupArn"), // Required HealthCheckIntervalSeconds: aws.Int64(1), HealthCheckPath: aws.String("Path"), HealthCheckPort: aws.String("HealthCheckPort"), HealthCheckProtocol: aws.String("ProtocolEnum"), HealthCheckTimeoutSeconds: aws.Int64(1), HealthyThresholdCount: aws.Int64(1), Matcher: &elbv2.Matcher{ HttpCode: aws.String("HttpCode"), // Required }, UnhealthyThresholdCount: aws.Int64(1), } resp, err := svc.ModifyTargetGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_ModifyTargetGroupAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.ModifyTargetGroupAttributesInput{ Attributes: []*elbv2.TargetGroupAttribute{ // Required { // Required Key: aws.String("TargetGroupAttributeKey"), Value: aws.String("TargetGroupAttributeValue"), }, // More values... }, TargetGroupArn: aws.String("TargetGroupArn"), // Required } resp, err := svc.ModifyTargetGroupAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_RegisterTargets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.RegisterTargetsInput{ TargetGroupArn: aws.String("TargetGroupArn"), // Required Targets: []*elbv2.TargetDescription{ // Required { // Required Id: aws.String("TargetId"), // Required Port: aws.Int64(1), }, // More values... }, } resp, err := svc.RegisterTargets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_RemoveTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.RemoveTagsInput{ ResourceArns: []*string{ // Required aws.String("ResourceArn"), // Required // More values... }, TagKeys: []*string{ // Required aws.String("TagKey"), // Required // More values... }, } resp, err := svc.RemoveTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_SetRulePriorities() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.SetRulePrioritiesInput{ RulePriorities: []*elbv2.RulePriorityPair{ // Required { // Required Priority: aws.Int64(1), RuleArn: aws.String("RuleArn"), }, // More values... }, } resp, err := svc.SetRulePriorities(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_SetSecurityGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.SetSecurityGroupsInput{ LoadBalancerArn: aws.String("LoadBalancerArn"), // Required SecurityGroups: []*string{ // Required aws.String("SecurityGroupId"), // Required // More values... }, } resp, err := svc.SetSecurityGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleELBV2_SetSubnets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := elbv2.New(sess) params := &elbv2.SetSubnetsInput{ LoadBalancerArn: aws.String("LoadBalancerArn"), // Required Subnets: []*string{ // Required aws.String("SubnetId"), // Required // More values... }, } resp, err := svc.SetSubnets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/elbv2/service.go000066400000000000000000000116251300374646400202310ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package elbv2 import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/query" ) // A load balancer distributes incoming traffic across targets, such as your // EC2 instances. This enables you to increase the availability of your application. // The load balancer also monitors the health of its registered targets and // ensures that it routes traffic only to healthy targets. You configure your // load balancer to accept incoming traffic by specifying one or more listeners, // which are configured with a protocol and port number for connections from // clients to the load balancer. You configure a target group with a protocol // and port number for connections from the load balancer to the targets, and // with health check settings to be used when checking the health status of // the targets. // // Elastic Load Balancing supports two types of load balancers: Classic Load // Balancers and Application Load Balancers. A Classic Load Balancer makes routing // and load balancing decisions either at the transport layer (TCP/SSL) or the // application layer (HTTP/HTTPS), and supports either EC2-Classic or a VPC. // An Application Load Balancer makes routing and load balancing decisions at // the application layer (HTTP/HTTPS), supports path-based routing, and can // route requests to one or more ports on each EC2 instance or container instance // in your virtual private cloud (VPC). For more information, see the Elastic // Load Balancing User Guide (http://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/). // // This reference covers the 2015-12-01 API, which supports Application Load // Balancers. The 2012-06-01 API supports Classic Load Balancers. // // To get started, complete the following tasks: // // Create an Application Load Balancer using CreateLoadBalancer. // // Create a target group using CreateTargetGroup. // // Register targets for the target group using RegisterTargets. // // Create one or more listeners for your load balancer using CreateListener. // // (Optional) Create one or more rules for content routing based on URL using // CreateRule. // // To delete an Application Load Balancer and its related resources, complete // the following tasks: // // Delete the load balancer using DeleteLoadBalancer. // // Delete the target group using DeleteTargetGroup. // // All Elastic Load Balancing operations are idempotent, which means that they // complete at most one time. If you repeat an operation, it succeeds. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type ELBV2 struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "elasticloadbalancing" // New creates a new instance of the ELBV2 client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a ELBV2 client from just a session. // svc := elbv2.New(mySession) // // // Create a ELBV2 client with additional configuration // svc := elbv2.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *ELBV2 { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *ELBV2 { svc := &ELBV2{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-12-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a ELBV2 operation and runs any // custom request initialization. func (c *ELBV2) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/emr/000077500000000000000000000000001300374646400160065ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/emr/api.go000066400000000000000000005145201300374646400171150ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package emr provides a client for Amazon Elastic MapReduce. package emr import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opAddInstanceGroups = "AddInstanceGroups" // AddInstanceGroupsRequest generates a "aws/request.Request" representing the // client's request for the AddInstanceGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddInstanceGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddInstanceGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddInstanceGroupsRequest method. // req, resp := client.AddInstanceGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) AddInstanceGroupsRequest(input *AddInstanceGroupsInput) (req *request.Request, output *AddInstanceGroupsOutput) { op := &request.Operation{ Name: opAddInstanceGroups, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddInstanceGroupsInput{} } req = c.newRequest(op, input, output) output = &AddInstanceGroupsOutput{} req.Data = output return } // AddInstanceGroups API operation for Amazon Elastic MapReduce. // // AddInstanceGroups adds an instance group to a running cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation AddInstanceGroups for usage and error information. // // Returned Error Codes: // * InternalServerError // Indicates that an error occurred while processing the request and that the // request was not completed. // func (c *EMR) AddInstanceGroups(input *AddInstanceGroupsInput) (*AddInstanceGroupsOutput, error) { req, out := c.AddInstanceGroupsRequest(input) err := req.Send() return out, err } const opAddJobFlowSteps = "AddJobFlowSteps" // AddJobFlowStepsRequest generates a "aws/request.Request" representing the // client's request for the AddJobFlowSteps operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddJobFlowSteps for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddJobFlowSteps method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddJobFlowStepsRequest method. // req, resp := client.AddJobFlowStepsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) AddJobFlowStepsRequest(input *AddJobFlowStepsInput) (req *request.Request, output *AddJobFlowStepsOutput) { op := &request.Operation{ Name: opAddJobFlowSteps, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddJobFlowStepsInput{} } req = c.newRequest(op, input, output) output = &AddJobFlowStepsOutput{} req.Data = output return } // AddJobFlowSteps API operation for Amazon Elastic MapReduce. // // AddJobFlowSteps adds new steps to a running job flow. A maximum of 256 steps // are allowed in each job flow. // // If your job flow is long-running (such as a Hive data warehouse) or complex, // you may require more than 256 steps to process your data. You can bypass // the 256-step limitation in various ways, including using the SSH shell to // connect to the master node and submitting queries directly to the software // running on the master node, such as Hive and Hadoop. For more information // on how to do this, go to Add More than 256 Steps to a Job Flow (http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/AddMoreThan256Steps.html) // in the Amazon Elastic MapReduce Developer's Guide. // // A step specifies the location of a JAR file stored either on the master node // of the job flow or in Amazon S3. Each step is performed by the main function // of the main class of the JAR file. The main class can be specified either // in the manifest of the JAR or by using the MainFunction parameter of the // step. // // Elastic MapReduce executes each step in the order listed. For a step to be // considered complete, the main function must exit with a zero exit code and // all Hadoop jobs started while the step was running must have completed and // run successfully. // // You can only add steps to a job flow that is in one of the following states: // STARTING, BOOTSTRAPPING, RUNNING, or WAITING. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation AddJobFlowSteps for usage and error information. // // Returned Error Codes: // * InternalServerError // Indicates that an error occurred while processing the request and that the // request was not completed. // func (c *EMR) AddJobFlowSteps(input *AddJobFlowStepsInput) (*AddJobFlowStepsOutput, error) { req, out := c.AddJobFlowStepsRequest(input) err := req.Send() return out, err } const opAddTags = "AddTags" // AddTagsRequest generates a "aws/request.Request" representing the // client's request for the AddTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddTagsRequest method. // req, resp := client.AddTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) AddTagsRequest(input *AddTagsInput) (req *request.Request, output *AddTagsOutput) { op := &request.Operation{ Name: opAddTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddTagsInput{} } req = c.newRequest(op, input, output) output = &AddTagsOutput{} req.Data = output return } // AddTags API operation for Amazon Elastic MapReduce. // // Adds tags to an Amazon EMR resource. Tags make it easier to associate clusters // in various ways, such as grouping clusters to track your Amazon EMR resource // allocation costs. For more information, see Tagging Amazon EMR Resources // (http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/emr-plan-tags.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation AddTags for usage and error information. // // Returned Error Codes: // * InternalServerException // This exception occurs when there is an internal failure in the EMR service. // // * InvalidRequestException // This exception occurs when there is something wrong with user input. // func (c *EMR) AddTags(input *AddTagsInput) (*AddTagsOutput, error) { req, out := c.AddTagsRequest(input) err := req.Send() return out, err } const opCreateSecurityConfiguration = "CreateSecurityConfiguration" // CreateSecurityConfigurationRequest generates a "aws/request.Request" representing the // client's request for the CreateSecurityConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateSecurityConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateSecurityConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateSecurityConfigurationRequest method. // req, resp := client.CreateSecurityConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) CreateSecurityConfigurationRequest(input *CreateSecurityConfigurationInput) (req *request.Request, output *CreateSecurityConfigurationOutput) { op := &request.Operation{ Name: opCreateSecurityConfiguration, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateSecurityConfigurationInput{} } req = c.newRequest(op, input, output) output = &CreateSecurityConfigurationOutput{} req.Data = output return } // CreateSecurityConfiguration API operation for Amazon Elastic MapReduce. // // Creates a security configuration using EMR Security Configurations, which // are stored in the service. Security Configurations enable you to more easily // create a configuration, reuse it, and apply it whenever a cluster is created. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation CreateSecurityConfiguration for usage and error information. // // Returned Error Codes: // * InternalServerException // This exception occurs when there is an internal failure in the EMR service. // // * InvalidRequestException // This exception occurs when there is something wrong with user input. // func (c *EMR) CreateSecurityConfiguration(input *CreateSecurityConfigurationInput) (*CreateSecurityConfigurationOutput, error) { req, out := c.CreateSecurityConfigurationRequest(input) err := req.Send() return out, err } const opDeleteSecurityConfiguration = "DeleteSecurityConfiguration" // DeleteSecurityConfigurationRequest generates a "aws/request.Request" representing the // client's request for the DeleteSecurityConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteSecurityConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteSecurityConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteSecurityConfigurationRequest method. // req, resp := client.DeleteSecurityConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) DeleteSecurityConfigurationRequest(input *DeleteSecurityConfigurationInput) (req *request.Request, output *DeleteSecurityConfigurationOutput) { op := &request.Operation{ Name: opDeleteSecurityConfiguration, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteSecurityConfigurationInput{} } req = c.newRequest(op, input, output) output = &DeleteSecurityConfigurationOutput{} req.Data = output return } // DeleteSecurityConfiguration API operation for Amazon Elastic MapReduce. // // Deletes a security configuration. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation DeleteSecurityConfiguration for usage and error information. // // Returned Error Codes: // * InternalServerException // This exception occurs when there is an internal failure in the EMR service. // // * InvalidRequestException // This exception occurs when there is something wrong with user input. // func (c *EMR) DeleteSecurityConfiguration(input *DeleteSecurityConfigurationInput) (*DeleteSecurityConfigurationOutput, error) { req, out := c.DeleteSecurityConfigurationRequest(input) err := req.Send() return out, err } const opDescribeCluster = "DescribeCluster" // DescribeClusterRequest generates a "aws/request.Request" representing the // client's request for the DescribeCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeClusterRequest method. // req, resp := client.DescribeClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) DescribeClusterRequest(input *DescribeClusterInput) (req *request.Request, output *DescribeClusterOutput) { op := &request.Operation{ Name: opDescribeCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeClusterInput{} } req = c.newRequest(op, input, output) output = &DescribeClusterOutput{} req.Data = output return } // DescribeCluster API operation for Amazon Elastic MapReduce. // // Provides cluster-level details including status, hardware and software configuration, // VPC settings, and so on. For information about the cluster steps, see ListSteps. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation DescribeCluster for usage and error information. // // Returned Error Codes: // * InternalServerException // This exception occurs when there is an internal failure in the EMR service. // // * InvalidRequestException // This exception occurs when there is something wrong with user input. // func (c *EMR) DescribeCluster(input *DescribeClusterInput) (*DescribeClusterOutput, error) { req, out := c.DescribeClusterRequest(input) err := req.Send() return out, err } const opDescribeJobFlows = "DescribeJobFlows" // DescribeJobFlowsRequest generates a "aws/request.Request" representing the // client's request for the DescribeJobFlows operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeJobFlows for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeJobFlows method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeJobFlowsRequest method. // req, resp := client.DescribeJobFlowsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) DescribeJobFlowsRequest(input *DescribeJobFlowsInput) (req *request.Request, output *DescribeJobFlowsOutput) { if c.Client.Config.Logger != nil { c.Client.Config.Logger.Log("This operation, DescribeJobFlows, has been deprecated") } op := &request.Operation{ Name: opDescribeJobFlows, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeJobFlowsInput{} } req = c.newRequest(op, input, output) output = &DescribeJobFlowsOutput{} req.Data = output return } // DescribeJobFlows API operation for Amazon Elastic MapReduce. // // This API is deprecated and will eventually be removed. We recommend you use // ListClusters, DescribeCluster, ListSteps, ListInstanceGroups and ListBootstrapActions // instead. // // DescribeJobFlows returns a list of job flows that match all of the supplied // parameters. The parameters can include a list of job flow IDs, job flow states, // and restrictions on job flow creation date and time. // // Regardless of supplied parameters, only job flows created within the last // two months are returned. // // If no parameters are supplied, then job flows matching either of the following // criteria are returned: // // * Job flows created and completed in the last two weeks // // * Job flows created within the last two months that are in one of the // following states: RUNNING, WAITING, SHUTTING_DOWN, STARTING // // Amazon Elastic MapReduce can return a maximum of 512 job flow descriptions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation DescribeJobFlows for usage and error information. // // Returned Error Codes: // * InternalServerError // Indicates that an error occurred while processing the request and that the // request was not completed. // func (c *EMR) DescribeJobFlows(input *DescribeJobFlowsInput) (*DescribeJobFlowsOutput, error) { req, out := c.DescribeJobFlowsRequest(input) err := req.Send() return out, err } const opDescribeSecurityConfiguration = "DescribeSecurityConfiguration" // DescribeSecurityConfigurationRequest generates a "aws/request.Request" representing the // client's request for the DescribeSecurityConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSecurityConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSecurityConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSecurityConfigurationRequest method. // req, resp := client.DescribeSecurityConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) DescribeSecurityConfigurationRequest(input *DescribeSecurityConfigurationInput) (req *request.Request, output *DescribeSecurityConfigurationOutput) { op := &request.Operation{ Name: opDescribeSecurityConfiguration, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSecurityConfigurationInput{} } req = c.newRequest(op, input, output) output = &DescribeSecurityConfigurationOutput{} req.Data = output return } // DescribeSecurityConfiguration API operation for Amazon Elastic MapReduce. // // Provides the details of a security configuration by returning the configuration // JSON. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation DescribeSecurityConfiguration for usage and error information. // // Returned Error Codes: // * InternalServerException // This exception occurs when there is an internal failure in the EMR service. // // * InvalidRequestException // This exception occurs when there is something wrong with user input. // func (c *EMR) DescribeSecurityConfiguration(input *DescribeSecurityConfigurationInput) (*DescribeSecurityConfigurationOutput, error) { req, out := c.DescribeSecurityConfigurationRequest(input) err := req.Send() return out, err } const opDescribeStep = "DescribeStep" // DescribeStepRequest generates a "aws/request.Request" representing the // client's request for the DescribeStep operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeStep for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeStep method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeStepRequest method. // req, resp := client.DescribeStepRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) DescribeStepRequest(input *DescribeStepInput) (req *request.Request, output *DescribeStepOutput) { op := &request.Operation{ Name: opDescribeStep, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeStepInput{} } req = c.newRequest(op, input, output) output = &DescribeStepOutput{} req.Data = output return } // DescribeStep API operation for Amazon Elastic MapReduce. // // Provides more detail about the cluster step. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation DescribeStep for usage and error information. // // Returned Error Codes: // * InternalServerException // This exception occurs when there is an internal failure in the EMR service. // // * InvalidRequestException // This exception occurs when there is something wrong with user input. // func (c *EMR) DescribeStep(input *DescribeStepInput) (*DescribeStepOutput, error) { req, out := c.DescribeStepRequest(input) err := req.Send() return out, err } const opListBootstrapActions = "ListBootstrapActions" // ListBootstrapActionsRequest generates a "aws/request.Request" representing the // client's request for the ListBootstrapActions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListBootstrapActions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListBootstrapActions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListBootstrapActionsRequest method. // req, resp := client.ListBootstrapActionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) ListBootstrapActionsRequest(input *ListBootstrapActionsInput) (req *request.Request, output *ListBootstrapActionsOutput) { op := &request.Operation{ Name: opListBootstrapActions, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListBootstrapActionsInput{} } req = c.newRequest(op, input, output) output = &ListBootstrapActionsOutput{} req.Data = output return } // ListBootstrapActions API operation for Amazon Elastic MapReduce. // // Provides information about the bootstrap actions associated with a cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation ListBootstrapActions for usage and error information. // // Returned Error Codes: // * InternalServerException // This exception occurs when there is an internal failure in the EMR service. // // * InvalidRequestException // This exception occurs when there is something wrong with user input. // func (c *EMR) ListBootstrapActions(input *ListBootstrapActionsInput) (*ListBootstrapActionsOutput, error) { req, out := c.ListBootstrapActionsRequest(input) err := req.Send() return out, err } // ListBootstrapActionsPages iterates over the pages of a ListBootstrapActions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListBootstrapActions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListBootstrapActions operation. // pageNum := 0 // err := client.ListBootstrapActionsPages(params, // func(page *ListBootstrapActionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *EMR) ListBootstrapActionsPages(input *ListBootstrapActionsInput, fn func(p *ListBootstrapActionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListBootstrapActionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListBootstrapActionsOutput), lastPage) }) } const opListClusters = "ListClusters" // ListClustersRequest generates a "aws/request.Request" representing the // client's request for the ListClusters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListClusters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListClusters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListClustersRequest method. // req, resp := client.ListClustersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) ListClustersRequest(input *ListClustersInput) (req *request.Request, output *ListClustersOutput) { op := &request.Operation{ Name: opListClusters, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListClustersInput{} } req = c.newRequest(op, input, output) output = &ListClustersOutput{} req.Data = output return } // ListClusters API operation for Amazon Elastic MapReduce. // // Provides the status of all clusters visible to this AWS account. Allows you // to filter the list of clusters based on certain criteria; for example, filtering // by cluster creation date and time or by status. This call returns a maximum // of 50 clusters per call, but returns a marker to track the paging of the // cluster list across multiple ListClusters calls. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation ListClusters for usage and error information. // // Returned Error Codes: // * InternalServerException // This exception occurs when there is an internal failure in the EMR service. // // * InvalidRequestException // This exception occurs when there is something wrong with user input. // func (c *EMR) ListClusters(input *ListClustersInput) (*ListClustersOutput, error) { req, out := c.ListClustersRequest(input) err := req.Send() return out, err } // ListClustersPages iterates over the pages of a ListClusters operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListClusters method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListClusters operation. // pageNum := 0 // err := client.ListClustersPages(params, // func(page *ListClustersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *EMR) ListClustersPages(input *ListClustersInput, fn func(p *ListClustersOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListClustersRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListClustersOutput), lastPage) }) } const opListInstanceGroups = "ListInstanceGroups" // ListInstanceGroupsRequest generates a "aws/request.Request" representing the // client's request for the ListInstanceGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListInstanceGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListInstanceGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListInstanceGroupsRequest method. // req, resp := client.ListInstanceGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) ListInstanceGroupsRequest(input *ListInstanceGroupsInput) (req *request.Request, output *ListInstanceGroupsOutput) { op := &request.Operation{ Name: opListInstanceGroups, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListInstanceGroupsInput{} } req = c.newRequest(op, input, output) output = &ListInstanceGroupsOutput{} req.Data = output return } // ListInstanceGroups API operation for Amazon Elastic MapReduce. // // Provides all available details about the instance groups in a cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation ListInstanceGroups for usage and error information. // // Returned Error Codes: // * InternalServerException // This exception occurs when there is an internal failure in the EMR service. // // * InvalidRequestException // This exception occurs when there is something wrong with user input. // func (c *EMR) ListInstanceGroups(input *ListInstanceGroupsInput) (*ListInstanceGroupsOutput, error) { req, out := c.ListInstanceGroupsRequest(input) err := req.Send() return out, err } // ListInstanceGroupsPages iterates over the pages of a ListInstanceGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListInstanceGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListInstanceGroups operation. // pageNum := 0 // err := client.ListInstanceGroupsPages(params, // func(page *ListInstanceGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *EMR) ListInstanceGroupsPages(input *ListInstanceGroupsInput, fn func(p *ListInstanceGroupsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListInstanceGroupsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListInstanceGroupsOutput), lastPage) }) } const opListInstances = "ListInstances" // ListInstancesRequest generates a "aws/request.Request" representing the // client's request for the ListInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListInstancesRequest method. // req, resp := client.ListInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) ListInstancesRequest(input *ListInstancesInput) (req *request.Request, output *ListInstancesOutput) { op := &request.Operation{ Name: opListInstances, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListInstancesInput{} } req = c.newRequest(op, input, output) output = &ListInstancesOutput{} req.Data = output return } // ListInstances API operation for Amazon Elastic MapReduce. // // Provides information about the cluster instances that Amazon EMR provisions // on behalf of a user when it creates the cluster. For example, this operation // indicates when the EC2 instances reach the Ready state, when instances become // available to Amazon EMR to use for jobs, and the IP addresses for cluster // instances, etc. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation ListInstances for usage and error information. // // Returned Error Codes: // * InternalServerException // This exception occurs when there is an internal failure in the EMR service. // // * InvalidRequestException // This exception occurs when there is something wrong with user input. // func (c *EMR) ListInstances(input *ListInstancesInput) (*ListInstancesOutput, error) { req, out := c.ListInstancesRequest(input) err := req.Send() return out, err } // ListInstancesPages iterates over the pages of a ListInstances operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListInstances method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListInstances operation. // pageNum := 0 // err := client.ListInstancesPages(params, // func(page *ListInstancesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *EMR) ListInstancesPages(input *ListInstancesInput, fn func(p *ListInstancesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListInstancesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListInstancesOutput), lastPage) }) } const opListSecurityConfigurations = "ListSecurityConfigurations" // ListSecurityConfigurationsRequest generates a "aws/request.Request" representing the // client's request for the ListSecurityConfigurations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListSecurityConfigurations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListSecurityConfigurations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListSecurityConfigurationsRequest method. // req, resp := client.ListSecurityConfigurationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) ListSecurityConfigurationsRequest(input *ListSecurityConfigurationsInput) (req *request.Request, output *ListSecurityConfigurationsOutput) { op := &request.Operation{ Name: opListSecurityConfigurations, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListSecurityConfigurationsInput{} } req = c.newRequest(op, input, output) output = &ListSecurityConfigurationsOutput{} req.Data = output return } // ListSecurityConfigurations API operation for Amazon Elastic MapReduce. // // Lists all the security configurations visible to this account, providing // their creation dates and times, and their names. This call returns a maximum // of 50 clusters per call, but returns a marker to track the paging of the // cluster list across multiple ListSecurityConfigurations calls. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation ListSecurityConfigurations for usage and error information. // // Returned Error Codes: // * InternalServerException // This exception occurs when there is an internal failure in the EMR service. // // * InvalidRequestException // This exception occurs when there is something wrong with user input. // func (c *EMR) ListSecurityConfigurations(input *ListSecurityConfigurationsInput) (*ListSecurityConfigurationsOutput, error) { req, out := c.ListSecurityConfigurationsRequest(input) err := req.Send() return out, err } const opListSteps = "ListSteps" // ListStepsRequest generates a "aws/request.Request" representing the // client's request for the ListSteps operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListSteps for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListSteps method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListStepsRequest method. // req, resp := client.ListStepsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) ListStepsRequest(input *ListStepsInput) (req *request.Request, output *ListStepsOutput) { op := &request.Operation{ Name: opListSteps, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListStepsInput{} } req = c.newRequest(op, input, output) output = &ListStepsOutput{} req.Data = output return } // ListSteps API operation for Amazon Elastic MapReduce. // // Provides a list of steps for the cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation ListSteps for usage and error information. // // Returned Error Codes: // * InternalServerException // This exception occurs when there is an internal failure in the EMR service. // // * InvalidRequestException // This exception occurs when there is something wrong with user input. // func (c *EMR) ListSteps(input *ListStepsInput) (*ListStepsOutput, error) { req, out := c.ListStepsRequest(input) err := req.Send() return out, err } // ListStepsPages iterates over the pages of a ListSteps operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListSteps method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListSteps operation. // pageNum := 0 // err := client.ListStepsPages(params, // func(page *ListStepsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *EMR) ListStepsPages(input *ListStepsInput, fn func(p *ListStepsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListStepsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListStepsOutput), lastPage) }) } const opModifyInstanceGroups = "ModifyInstanceGroups" // ModifyInstanceGroupsRequest generates a "aws/request.Request" representing the // client's request for the ModifyInstanceGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyInstanceGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyInstanceGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyInstanceGroupsRequest method. // req, resp := client.ModifyInstanceGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) ModifyInstanceGroupsRequest(input *ModifyInstanceGroupsInput) (req *request.Request, output *ModifyInstanceGroupsOutput) { op := &request.Operation{ Name: opModifyInstanceGroups, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyInstanceGroupsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ModifyInstanceGroupsOutput{} req.Data = output return } // ModifyInstanceGroups API operation for Amazon Elastic MapReduce. // // ModifyInstanceGroups modifies the number of nodes and configuration settings // of an instance group. The input parameters include the new target instance // count for the group and the instance group ID. The call will either succeed // or fail atomically. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation ModifyInstanceGroups for usage and error information. // // Returned Error Codes: // * InternalServerError // Indicates that an error occurred while processing the request and that the // request was not completed. // func (c *EMR) ModifyInstanceGroups(input *ModifyInstanceGroupsInput) (*ModifyInstanceGroupsOutput, error) { req, out := c.ModifyInstanceGroupsRequest(input) err := req.Send() return out, err } const opRemoveTags = "RemoveTags" // RemoveTagsRequest generates a "aws/request.Request" representing the // client's request for the RemoveTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveTagsRequest method. // req, resp := client.RemoveTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) RemoveTagsRequest(input *RemoveTagsInput) (req *request.Request, output *RemoveTagsOutput) { op := &request.Operation{ Name: opRemoveTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveTagsInput{} } req = c.newRequest(op, input, output) output = &RemoveTagsOutput{} req.Data = output return } // RemoveTags API operation for Amazon Elastic MapReduce. // // Removes tags from an Amazon EMR resource. Tags make it easier to associate // clusters in various ways, such as grouping clusters to track your Amazon // EMR resource allocation costs. For more information, see Tagging Amazon EMR // Resources (http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/emr-plan-tags.html). // // The following example removes the stack tag with value Prod from a cluster: // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation RemoveTags for usage and error information. // // Returned Error Codes: // * InternalServerException // This exception occurs when there is an internal failure in the EMR service. // // * InvalidRequestException // This exception occurs when there is something wrong with user input. // func (c *EMR) RemoveTags(input *RemoveTagsInput) (*RemoveTagsOutput, error) { req, out := c.RemoveTagsRequest(input) err := req.Send() return out, err } const opRunJobFlow = "RunJobFlow" // RunJobFlowRequest generates a "aws/request.Request" representing the // client's request for the RunJobFlow operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RunJobFlow for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RunJobFlow method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RunJobFlowRequest method. // req, resp := client.RunJobFlowRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) RunJobFlowRequest(input *RunJobFlowInput) (req *request.Request, output *RunJobFlowOutput) { op := &request.Operation{ Name: opRunJobFlow, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RunJobFlowInput{} } req = c.newRequest(op, input, output) output = &RunJobFlowOutput{} req.Data = output return } // RunJobFlow API operation for Amazon Elastic MapReduce. // // RunJobFlow creates and starts running a new job flow. The job flow will run // the steps specified. Once the job flow completes, the cluster is stopped // and the HDFS partition is lost. To prevent loss of data, configure the last // step of the job flow to store results in Amazon S3. If the JobFlowInstancesConfigKeepJobFlowAliveWhenNoSteps // parameter is set to TRUE, the job flow will transition to the WAITING state // rather than shutting down once the steps have completed. // // For additional protection, you can set the JobFlowInstancesConfigTerminationProtected // parameter to TRUE to lock the job flow and prevent it from being terminated // by API call, user intervention, or in the event of a job flow error. // // A maximum of 256 steps are allowed in each job flow. // // If your job flow is long-running (such as a Hive data warehouse) or complex, // you may require more than 256 steps to process your data. You can bypass // the 256-step limitation in various ways, including using the SSH shell to // connect to the master node and submitting queries directly to the software // running on the master node, such as Hive and Hadoop. For more information // on how to do this, go to Add More than 256 Steps to a Job Flow (http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/AddMoreThan256Steps.html) // in the Amazon Elastic MapReduce Developer's Guide. // // For long running job flows, we recommend that you periodically store your // results. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation RunJobFlow for usage and error information. // // Returned Error Codes: // * InternalServerError // Indicates that an error occurred while processing the request and that the // request was not completed. // func (c *EMR) RunJobFlow(input *RunJobFlowInput) (*RunJobFlowOutput, error) { req, out := c.RunJobFlowRequest(input) err := req.Send() return out, err } const opSetTerminationProtection = "SetTerminationProtection" // SetTerminationProtectionRequest generates a "aws/request.Request" representing the // client's request for the SetTerminationProtection operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetTerminationProtection for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetTerminationProtection method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetTerminationProtectionRequest method. // req, resp := client.SetTerminationProtectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) SetTerminationProtectionRequest(input *SetTerminationProtectionInput) (req *request.Request, output *SetTerminationProtectionOutput) { op := &request.Operation{ Name: opSetTerminationProtection, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetTerminationProtectionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetTerminationProtectionOutput{} req.Data = output return } // SetTerminationProtection API operation for Amazon Elastic MapReduce. // // SetTerminationProtection locks a job flow so the Amazon EC2 instances in // the cluster cannot be terminated by user intervention, an API call, or in // the event of a job-flow error. The cluster still terminates upon successful // completion of the job flow. Calling SetTerminationProtection on a job flow // is analogous to calling the Amazon EC2 DisableAPITermination API on all of // the EC2 instances in a cluster. // // SetTerminationProtection is used to prevent accidental termination of a job // flow and to ensure that in the event of an error, the instances will persist // so you can recover any data stored in their ephemeral instance storage. // // To terminate a job flow that has been locked by setting SetTerminationProtection // to true, you must first unlock the job flow by a subsequent call to SetTerminationProtection // in which you set the value to false. // // For more information, go to Protecting a Job Flow from Termination (http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/UsingEMR_TerminationProtection.html) // in the Amazon Elastic MapReduce Developer's Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation SetTerminationProtection for usage and error information. // // Returned Error Codes: // * InternalServerError // Indicates that an error occurred while processing the request and that the // request was not completed. // func (c *EMR) SetTerminationProtection(input *SetTerminationProtectionInput) (*SetTerminationProtectionOutput, error) { req, out := c.SetTerminationProtectionRequest(input) err := req.Send() return out, err } const opSetVisibleToAllUsers = "SetVisibleToAllUsers" // SetVisibleToAllUsersRequest generates a "aws/request.Request" representing the // client's request for the SetVisibleToAllUsers operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetVisibleToAllUsers for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetVisibleToAllUsers method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetVisibleToAllUsersRequest method. // req, resp := client.SetVisibleToAllUsersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) SetVisibleToAllUsersRequest(input *SetVisibleToAllUsersInput) (req *request.Request, output *SetVisibleToAllUsersOutput) { op := &request.Operation{ Name: opSetVisibleToAllUsers, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetVisibleToAllUsersInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetVisibleToAllUsersOutput{} req.Data = output return } // SetVisibleToAllUsers API operation for Amazon Elastic MapReduce. // // Sets whether all AWS Identity and Access Management (IAM) users under your // account can access the specified job flows. This action works on running // job flows. You can also set the visibility of a job flow when you launch // it using the VisibleToAllUsers parameter of RunJobFlow. The SetVisibleToAllUsers // action can be called only by an IAM user who created the job flow or the // AWS account that owns the job flow. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation SetVisibleToAllUsers for usage and error information. // // Returned Error Codes: // * InternalServerError // Indicates that an error occurred while processing the request and that the // request was not completed. // func (c *EMR) SetVisibleToAllUsers(input *SetVisibleToAllUsersInput) (*SetVisibleToAllUsersOutput, error) { req, out := c.SetVisibleToAllUsersRequest(input) err := req.Send() return out, err } const opTerminateJobFlows = "TerminateJobFlows" // TerminateJobFlowsRequest generates a "aws/request.Request" representing the // client's request for the TerminateJobFlows operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See TerminateJobFlows for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the TerminateJobFlows method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the TerminateJobFlowsRequest method. // req, resp := client.TerminateJobFlowsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *EMR) TerminateJobFlowsRequest(input *TerminateJobFlowsInput) (req *request.Request, output *TerminateJobFlowsOutput) { op := &request.Operation{ Name: opTerminateJobFlows, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &TerminateJobFlowsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &TerminateJobFlowsOutput{} req.Data = output return } // TerminateJobFlows API operation for Amazon Elastic MapReduce. // // TerminateJobFlows shuts a list of job flows down. When a job flow is shut // down, any step not yet completed is canceled and the EC2 instances on which // the job flow is running are stopped. Any log files not already saved are // uploaded to Amazon S3 if a LogUri was specified when the job flow was created. // // The maximum number of JobFlows allowed is 10. The call to TerminateJobFlows // is asynchronous. Depending on the configuration of the job flow, it may take // up to 5-20 minutes for the job flow to completely terminate and release allocated // resources, such as Amazon EC2 instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic MapReduce's // API operation TerminateJobFlows for usage and error information. // // Returned Error Codes: // * InternalServerError // Indicates that an error occurred while processing the request and that the // request was not completed. // func (c *EMR) TerminateJobFlows(input *TerminateJobFlowsInput) (*TerminateJobFlowsOutput, error) { req, out := c.TerminateJobFlowsRequest(input) err := req.Send() return out, err } // Input to an AddInstanceGroups call. type AddInstanceGroupsInput struct { _ struct{} `type:"structure"` // Instance Groups to add. // // InstanceGroups is a required field InstanceGroups []*InstanceGroupConfig `type:"list" required:"true"` // Job flow in which to add the instance groups. // // JobFlowId is a required field JobFlowId *string `type:"string" required:"true"` } // String returns the string representation func (s AddInstanceGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddInstanceGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddInstanceGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddInstanceGroupsInput"} if s.InstanceGroups == nil { invalidParams.Add(request.NewErrParamRequired("InstanceGroups")) } if s.JobFlowId == nil { invalidParams.Add(request.NewErrParamRequired("JobFlowId")) } if s.InstanceGroups != nil { for i, v := range s.InstanceGroups { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceGroups", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Output from an AddInstanceGroups call. type AddInstanceGroupsOutput struct { _ struct{} `type:"structure"` // Instance group IDs of the newly created instance groups. InstanceGroupIds []*string `type:"list"` // The job flow ID in which the instance groups are added. JobFlowId *string `type:"string"` } // String returns the string representation func (s AddInstanceGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddInstanceGroupsOutput) GoString() string { return s.String() } // The input argument to the AddJobFlowSteps operation. type AddJobFlowStepsInput struct { _ struct{} `type:"structure"` // A string that uniquely identifies the job flow. This identifier is returned // by RunJobFlow and can also be obtained from ListClusters. // // JobFlowId is a required field JobFlowId *string `type:"string" required:"true"` // A list of StepConfig to be executed by the job flow. // // Steps is a required field Steps []*StepConfig `type:"list" required:"true"` } // String returns the string representation func (s AddJobFlowStepsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddJobFlowStepsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddJobFlowStepsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddJobFlowStepsInput"} if s.JobFlowId == nil { invalidParams.Add(request.NewErrParamRequired("JobFlowId")) } if s.Steps == nil { invalidParams.Add(request.NewErrParamRequired("Steps")) } if s.Steps != nil { for i, v := range s.Steps { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Steps", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the AddJobFlowSteps operation. type AddJobFlowStepsOutput struct { _ struct{} `type:"structure"` // The identifiers of the list of steps added to the job flow. StepIds []*string `type:"list"` } // String returns the string representation func (s AddJobFlowStepsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddJobFlowStepsOutput) GoString() string { return s.String() } // This input identifies a cluster and a list of tags to attach. type AddTagsInput struct { _ struct{} `type:"structure"` // The Amazon EMR resource identifier to which tags will be added. This value // must be a cluster identifier. // // ResourceId is a required field ResourceId *string `type:"string" required:"true"` // A list of tags to associate with a cluster and propagate to Amazon EC2 instances. // Tags are user-defined key/value pairs that consist of a required key string // with a maximum of 128 characters, and an optional value string with a maximum // of 256 characters. // // Tags is a required field Tags []*Tag `type:"list" required:"true"` } // String returns the string representation func (s AddTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // This output indicates the result of adding tags to a resource. type AddTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsOutput) GoString() string { return s.String() } // An application is any Amazon or third-party software that you can add to // the cluster. This structure contains a list of strings that indicates the // software to use with the cluster and accepts a user argument list. Amazon // EMR accepts and forwards the argument list to the corresponding installation // script as bootstrap action argument. For more information, see Launch a Job // Flow on the MapR Distribution for Hadoop (http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/emr-mapr.html). // Currently supported values are: // // * "mapr-m3" - launch the job flow using MapR M3 Edition. // // * "mapr-m5" - launch the job flow using MapR M5 Edition. // // * "mapr" with the user arguments specifying "--edition,m3" or "--edition,m5" // - launch the job flow using MapR M3 or M5 Edition, respectively. // // In Amazon EMR releases 4.0 and greater, the only accepted parameter is the // application name. To pass arguments to applications, you supply a configuration // for each application. type Application struct { _ struct{} `type:"structure"` // This option is for advanced users only. This is meta information about third-party // applications that third-party vendors use for testing purposes. AdditionalInfo map[string]*string `type:"map"` // Arguments for Amazon EMR to pass to the application. Args []*string `type:"list"` // The name of the application. Name *string `type:"string"` // The version of the application. Version *string `type:"string"` } // String returns the string representation func (s Application) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Application) GoString() string { return s.String() } type BootstrapActionConfig struct { _ struct{} `type:"structure"` // Name is a required field Name *string `type:"string" required:"true"` // ScriptBootstrapAction is a required field ScriptBootstrapAction *ScriptBootstrapActionConfig `type:"structure" required:"true"` } // String returns the string representation func (s BootstrapActionConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BootstrapActionConfig) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BootstrapActionConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BootstrapActionConfig"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.ScriptBootstrapAction == nil { invalidParams.Add(request.NewErrParamRequired("ScriptBootstrapAction")) } if s.ScriptBootstrapAction != nil { if err := s.ScriptBootstrapAction.Validate(); err != nil { invalidParams.AddNested("ScriptBootstrapAction", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Reports the configuration of a bootstrap action in a job flow. type BootstrapActionDetail struct { _ struct{} `type:"structure"` // A description of the bootstrap action. BootstrapActionConfig *BootstrapActionConfig `type:"structure"` } // String returns the string representation func (s BootstrapActionDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BootstrapActionDetail) GoString() string { return s.String() } // The detailed description of the cluster. type Cluster struct { _ struct{} `type:"structure"` // The applications installed on this cluster. Applications []*Application `type:"list"` // Specifies whether the cluster should terminate after completing all steps. AutoTerminate *bool `type:"boolean"` // Amazon EMR releases 4.x or later. // // The list of Configurations supplied to the EMR cluster. Configurations []*Configuration `type:"list"` // Provides information about the EC2 instances in a cluster grouped by category. // For example, key name, subnet ID, IAM instance profile, and so on. Ec2InstanceAttributes *Ec2InstanceAttributes `type:"structure"` // The unique identifier for the cluster. Id *string `type:"string"` // The path to the Amazon S3 location where logs for this cluster are stored. LogUri *string `type:"string"` // The public DNS name of the master EC2 instance. MasterPublicDnsName *string `type:"string"` // The name of the cluster. Name *string `type:"string"` // An approximation of the cost of the job flow, represented in m1.small/hours. // This value is incremented one time for every hour an m1.small instance runs. // Larger instances are weighted more, so an EC2 instance that is roughly four // times more expensive would result in the normalized instance hours being // incremented by four. This result is only an approximation and does not reflect // the actual billing rate. NormalizedInstanceHours *int64 `type:"integer"` // The release label for the Amazon EMR release. For Amazon EMR 3.x and 2.x // AMIs, use amiVersion instead instead of ReleaseLabel. ReleaseLabel *string `type:"string"` // The AMI version requested for this cluster. RequestedAmiVersion *string `type:"string"` // The AMI version running on this cluster. RunningAmiVersion *string `type:"string"` // The name of the security configuration applied to the cluster. SecurityConfiguration *string `type:"string"` // The IAM role that will be assumed by the Amazon EMR service to access AWS // resources on your behalf. ServiceRole *string `type:"string"` // The current status details about the cluster. Status *ClusterStatus `type:"structure"` // A list of tags associated with a cluster. Tags []*Tag `type:"list"` // Indicates whether Amazon EMR will lock the cluster to prevent the EC2 instances // from being terminated by an API call or user intervention, or in the event // of a cluster error. TerminationProtected *bool `type:"boolean"` // Indicates whether the job flow is visible to all IAM users of the AWS account // associated with the job flow. If this value is set to true, all IAM users // of that AWS account can view and manage the job flow if they have the proper // policy permissions set. If this value is false, only the IAM user that created // the cluster can view and manage it. This value can be changed using the SetVisibleToAllUsers // action. VisibleToAllUsers *bool `type:"boolean"` } // String returns the string representation func (s Cluster) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Cluster) GoString() string { return s.String() } // The reason that the cluster changed to its current state. type ClusterStateChangeReason struct { _ struct{} `type:"structure"` // The programmatic code for the state change reason. Code *string `type:"string" enum:"ClusterStateChangeReasonCode"` // The descriptive message for the state change reason. Message *string `type:"string"` } // String returns the string representation func (s ClusterStateChangeReason) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClusterStateChangeReason) GoString() string { return s.String() } // The detailed status of the cluster. type ClusterStatus struct { _ struct{} `type:"structure"` // The current state of the cluster. State *string `type:"string" enum:"ClusterState"` // The reason for the cluster status change. StateChangeReason *ClusterStateChangeReason `type:"structure"` // A timeline that represents the status of a cluster over the lifetime of the // cluster. Timeline *ClusterTimeline `type:"structure"` } // String returns the string representation func (s ClusterStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClusterStatus) GoString() string { return s.String() } // The summary description of the cluster. type ClusterSummary struct { _ struct{} `type:"structure"` // The unique identifier for the cluster. Id *string `type:"string"` // The name of the cluster. Name *string `type:"string"` // An approximation of the cost of the job flow, represented in m1.small/hours. // This value is incremented one time for every hour an m1.small instance runs. // Larger instances are weighted more, so an EC2 instance that is roughly four // times more expensive would result in the normalized instance hours being // incremented by four. This result is only an approximation and does not reflect // the actual billing rate. NormalizedInstanceHours *int64 `type:"integer"` // The details about the current status of the cluster. Status *ClusterStatus `type:"structure"` } // String returns the string representation func (s ClusterSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClusterSummary) GoString() string { return s.String() } // Represents the timeline of the cluster's lifecycle. type ClusterTimeline struct { _ struct{} `type:"structure"` // The creation date and time of the cluster. CreationDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The date and time when the cluster was terminated. EndDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The date and time when the cluster was ready to execute steps. ReadyDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s ClusterTimeline) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClusterTimeline) GoString() string { return s.String() } // An entity describing an executable that runs on a cluster. type Command struct { _ struct{} `type:"structure"` // Arguments for Amazon EMR to pass to the command for execution. Args []*string `type:"list"` // The name of the command. Name *string `type:"string"` // The Amazon S3 location of the command script. ScriptPath *string `type:"string"` } // String returns the string representation func (s Command) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Command) GoString() string { return s.String() } // Amazon EMR releases 4.x or later. // // Specifies a hardware and software configuration of the EMR cluster. This // includes configurations for applications and software bundled with Amazon // EMR. The Configuration object is a JSON object which is defined by a classification // and a set of properties. Configurations can be nested, so a configuration // may have its own Configuration objects listed. type Configuration struct { _ struct{} `type:"structure"` // The classification of a configuration. For more information see, Amazon EMR // Configurations (http://docs.aws.amazon.com/ElasticMapReduce/latest/API/EmrConfigurations.html). Classification *string `type:"string"` // A list of configurations you apply to this configuration object. Configurations []*Configuration `type:"list"` // A set of properties supplied to the Configuration object. Properties map[string]*string `type:"map"` } // String returns the string representation func (s Configuration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Configuration) GoString() string { return s.String() } type CreateSecurityConfigurationInput struct { _ struct{} `type:"structure"` // The name of the security configuration. // // Name is a required field Name *string `type:"string" required:"true"` // The security configuration details in JSON format. // // SecurityConfiguration is a required field SecurityConfiguration *string `type:"string" required:"true"` } // String returns the string representation func (s CreateSecurityConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSecurityConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateSecurityConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateSecurityConfigurationInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.SecurityConfiguration == nil { invalidParams.Add(request.NewErrParamRequired("SecurityConfiguration")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateSecurityConfigurationOutput struct { _ struct{} `type:"structure"` // The date and time the security configuration was created. // // CreationDateTime is a required field CreationDateTime *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` // The name of the security configuration. // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s CreateSecurityConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSecurityConfigurationOutput) GoString() string { return s.String() } type DeleteSecurityConfigurationInput struct { _ struct{} `type:"structure"` // The name of the security configuration. // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteSecurityConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSecurityConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteSecurityConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteSecurityConfigurationInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteSecurityConfigurationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteSecurityConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSecurityConfigurationOutput) GoString() string { return s.String() } // This input determines which cluster to describe. type DescribeClusterInput struct { _ struct{} `type:"structure"` // The identifier of the cluster to describe. // // ClusterId is a required field ClusterId *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClusterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeClusterInput"} if s.ClusterId == nil { invalidParams.Add(request.NewErrParamRequired("ClusterId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // This output contains the description of the cluster. type DescribeClusterOutput struct { _ struct{} `type:"structure"` // This output contains the details for the requested cluster. Cluster *Cluster `type:"structure"` } // String returns the string representation func (s DescribeClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClusterOutput) GoString() string { return s.String() } // The input for the DescribeJobFlows operation. type DescribeJobFlowsInput struct { _ struct{} `type:"structure"` // Return only job flows created after this date and time. CreatedAfter *time.Time `type:"timestamp" timestampFormat:"unix"` // Return only job flows created before this date and time. CreatedBefore *time.Time `type:"timestamp" timestampFormat:"unix"` // Return only job flows whose job flow ID is contained in this list. JobFlowIds []*string `type:"list"` // Return only job flows whose state is contained in this list. JobFlowStates []*string `type:"list"` } // String returns the string representation func (s DescribeJobFlowsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeJobFlowsInput) GoString() string { return s.String() } // The output for the DescribeJobFlows operation. type DescribeJobFlowsOutput struct { _ struct{} `type:"structure"` // A list of job flows matching the parameters supplied. JobFlows []*JobFlowDetail `type:"list"` } // String returns the string representation func (s DescribeJobFlowsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeJobFlowsOutput) GoString() string { return s.String() } type DescribeSecurityConfigurationInput struct { _ struct{} `type:"structure"` // The name of the security configuration. // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeSecurityConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSecurityConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeSecurityConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeSecurityConfigurationInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeSecurityConfigurationOutput struct { _ struct{} `type:"structure"` // The date and time the security configuration was created CreationDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The name of the security configuration. Name *string `type:"string"` // The security configuration details in JSON format. SecurityConfiguration *string `type:"string"` } // String returns the string representation func (s DescribeSecurityConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSecurityConfigurationOutput) GoString() string { return s.String() } // This input determines which step to describe. type DescribeStepInput struct { _ struct{} `type:"structure"` // The identifier of the cluster with steps to describe. // // ClusterId is a required field ClusterId *string `type:"string" required:"true"` // The identifier of the step to describe. // // StepId is a required field StepId *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeStepInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStepInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeStepInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeStepInput"} if s.ClusterId == nil { invalidParams.Add(request.NewErrParamRequired("ClusterId")) } if s.StepId == nil { invalidParams.Add(request.NewErrParamRequired("StepId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // This output contains the description of the cluster step. type DescribeStepOutput struct { _ struct{} `type:"structure"` // The step details for the requested step identifier. Step *Step `type:"structure"` } // String returns the string representation func (s DescribeStepOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStepOutput) GoString() string { return s.String() } // Configuration of requested EBS block device associated with the instance // group. type EbsBlockDevice struct { _ struct{} `type:"structure"` // The device name that is exposed to the instance, such as /dev/sdh. Device *string `type:"string"` // EBS volume specifications such as volume type, IOPS, and size(GiB) that will // be requested for the EBS volume attached to an EC2 instance in the cluster. VolumeSpecification *VolumeSpecification `type:"structure"` } // String returns the string representation func (s EbsBlockDevice) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EbsBlockDevice) GoString() string { return s.String() } // Configuration of requested EBS block device associated with the instance // group with count of volumes that will be associated to every instance. type EbsBlockDeviceConfig struct { _ struct{} `type:"structure"` // EBS volume specifications such as volume type, IOPS, and size(GiB) that will // be requested for the EBS volume attached to an EC2 instance in the cluster. // // VolumeSpecification is a required field VolumeSpecification *VolumeSpecification `type:"structure" required:"true"` // Number of EBS volumes with specific volume configuration, that will be associated // with every instance in the instance group VolumesPerInstance *int64 `type:"integer"` } // String returns the string representation func (s EbsBlockDeviceConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EbsBlockDeviceConfig) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EbsBlockDeviceConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EbsBlockDeviceConfig"} if s.VolumeSpecification == nil { invalidParams.Add(request.NewErrParamRequired("VolumeSpecification")) } if s.VolumeSpecification != nil { if err := s.VolumeSpecification.Validate(); err != nil { invalidParams.AddNested("VolumeSpecification", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type EbsConfiguration struct { _ struct{} `type:"structure"` EbsBlockDeviceConfigs []*EbsBlockDeviceConfig `type:"list"` EbsOptimized *bool `type:"boolean"` } // String returns the string representation func (s EbsConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EbsConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EbsConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EbsConfiguration"} if s.EbsBlockDeviceConfigs != nil { for i, v := range s.EbsBlockDeviceConfigs { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "EbsBlockDeviceConfigs", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // EBS block device that's attached to an EC2 instance. type EbsVolume struct { _ struct{} `type:"structure"` // The device name that is exposed to the instance, such as /dev/sdh. Device *string `type:"string"` // The volume identifier of the EBS volume. VolumeId *string `type:"string"` } // String returns the string representation func (s EbsVolume) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EbsVolume) GoString() string { return s.String() } // Provides information about the EC2 instances in a cluster grouped by category. // For example, key name, subnet ID, IAM instance profile, and so on. type Ec2InstanceAttributes struct { _ struct{} `type:"structure"` // A list of additional Amazon EC2 security group IDs for the master node. AdditionalMasterSecurityGroups []*string `type:"list"` // A list of additional Amazon EC2 security group IDs for the slave nodes. AdditionalSlaveSecurityGroups []*string `type:"list"` // The Availability Zone in which the cluster will run. Ec2AvailabilityZone *string `type:"string"` // The name of the Amazon EC2 key pair to use when connecting with SSH into // the master node as a user named "hadoop". Ec2KeyName *string `type:"string"` // To launch the job flow in Amazon VPC, set this parameter to the identifier // of the Amazon VPC subnet where you want the job flow to launch. If you do // not specify this value, the job flow is launched in the normal AWS cloud, // outside of a VPC. // // Amazon VPC currently does not support cluster compute quadruple extra large // (cc1.4xlarge) instances. Thus, you cannot specify the cc1.4xlarge instance // type for nodes of a job flow launched in a VPC. Ec2SubnetId *string `type:"string"` // The identifier of the Amazon EC2 security group for the master node. EmrManagedMasterSecurityGroup *string `type:"string"` // The identifier of the Amazon EC2 security group for the slave nodes. EmrManagedSlaveSecurityGroup *string `type:"string"` // The IAM role that was specified when the job flow was launched. The EC2 instances // of the job flow assume this role. IamInstanceProfile *string `type:"string"` // The identifier of the Amazon EC2 security group for the Amazon EMR service // to access clusters in VPC private subnets. ServiceAccessSecurityGroup *string `type:"string"` } // String returns the string representation func (s Ec2InstanceAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Ec2InstanceAttributes) GoString() string { return s.String() } // The details of the step failure. The service attempts to detect the root // cause for many common failures. type FailureDetails struct { _ struct{} `type:"structure"` // The path to the log file where the step failure root cause was originally // recorded. LogFile *string `type:"string"` // The descriptive message including the error the EMR service has identified // as the cause of step failure. This is text from an error log that describes // the root cause of the failure. Message *string `type:"string"` // The reason for the step failure. In the case where the service cannot successfully // determine the root cause of the failure, it returns "Unknown Error" as a // reason. Reason *string `type:"string"` } // String returns the string representation func (s FailureDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FailureDetails) GoString() string { return s.String() } // A job flow step consisting of a JAR file whose main function will be executed. // The main function submits a job for Hadoop to execute and waits for the job // to finish or fail. type HadoopJarStepConfig struct { _ struct{} `type:"structure"` // A list of command line arguments passed to the JAR file's main function when // executed. Args []*string `type:"list"` // A path to a JAR file run during the step. // // Jar is a required field Jar *string `type:"string" required:"true"` // The name of the main class in the specified Java file. If not specified, // the JAR file should specify a Main-Class in its manifest file. MainClass *string `type:"string"` // A list of Java properties that are set when the step runs. You can use these // properties to pass key value pairs to your main function. Properties []*KeyValue `type:"list"` } // String returns the string representation func (s HadoopJarStepConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HadoopJarStepConfig) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *HadoopJarStepConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "HadoopJarStepConfig"} if s.Jar == nil { invalidParams.Add(request.NewErrParamRequired("Jar")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A cluster step consisting of a JAR file whose main function will be executed. // The main function submits a job for Hadoop to execute and waits for the job // to finish or fail. type HadoopStepConfig struct { _ struct{} `type:"structure"` // The list of command line arguments to pass to the JAR file's main function // for execution. Args []*string `type:"list"` // The path to the JAR file that runs during the step. Jar *string `type:"string"` // The name of the main class in the specified Java file. If not specified, // the JAR file should specify a main class in its manifest file. MainClass *string `type:"string"` // The list of Java properties that are set when the step runs. You can use // these properties to pass key value pairs to your main function. Properties map[string]*string `type:"map"` } // String returns the string representation func (s HadoopStepConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HadoopStepConfig) GoString() string { return s.String() } // Represents an EC2 instance provisioned as part of cluster. type Instance struct { _ struct{} `type:"structure"` // The list of EBS volumes that are attached to this instance. EbsVolumes []*EbsVolume `type:"list"` // The unique identifier of the instance in Amazon EC2. Ec2InstanceId *string `type:"string"` // The unique identifier for the instance in Amazon EMR. Id *string `type:"string"` // The identifier of the instance group to which this instance belongs. InstanceGroupId *string `type:"string"` // The private DNS name of the instance. PrivateDnsName *string `type:"string"` // The private IP address of the instance. PrivateIpAddress *string `type:"string"` // The public DNS name of the instance. PublicDnsName *string `type:"string"` // The public IP address of the instance. PublicIpAddress *string `type:"string"` // The current status of the instance. Status *InstanceStatus `type:"structure"` } // String returns the string representation func (s Instance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Instance) GoString() string { return s.String() } // This entity represents an instance group, which is a group of instances that // have common purpose. For example, CORE instance group is used for HDFS. type InstanceGroup struct { _ struct{} `type:"structure"` // The bid price for each EC2 instance in the instance group when launching // nodes as Spot Instances, expressed in USD. BidPrice *string `type:"string"` // Amazon EMR releases 4.x or later. // // The list of configurations supplied for an EMR cluster instance group. You // can specify a separate configuration for each instance group (master, core, // and task). Configurations []*Configuration `type:"list"` // The EBS block devices that are mapped to this instance group. EbsBlockDevices []*EbsBlockDevice `type:"list"` // If the instance group is EBS-optimized. An Amazon EBS-optimized instance // uses an optimized configuration stack and provides additional, dedicated // capacity for Amazon EBS I/O. EbsOptimized *bool `type:"boolean"` // The identifier of the instance group. Id *string `type:"string"` // The type of the instance group. Valid values are MASTER, CORE or TASK. InstanceGroupType *string `type:"string" enum:"InstanceGroupType"` // The EC2 instance type for all instances in the instance group. InstanceType *string `min:"1" type:"string"` // The marketplace to provision instances for this group. Valid values are ON_DEMAND // or SPOT. Market *string `type:"string" enum:"MarketType"` // The name of the instance group. Name *string `type:"string"` // The target number of instances for the instance group. RequestedInstanceCount *int64 `type:"integer"` // The number of instances currently running in this instance group. RunningInstanceCount *int64 `type:"integer"` // Policy for customizing shrink operations. ShrinkPolicy *ShrinkPolicy `type:"structure"` // The current status of the instance group. Status *InstanceGroupStatus `type:"structure"` } // String returns the string representation func (s InstanceGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceGroup) GoString() string { return s.String() } // Configuration defining a new instance group. type InstanceGroupConfig struct { _ struct{} `type:"structure"` // Bid price for each Amazon EC2 instance in the instance group when launching // nodes as Spot Instances, expressed in USD. BidPrice *string `type:"string"` // Amazon EMR releases 4.x or later. // // The list of configurations supplied for an EMR cluster instance group. You // can specify a separate configuration for each instance group (master, core, // and task). Configurations []*Configuration `type:"list"` // EBS configurations that will be attached to each Amazon EC2 instance in the // instance group. EbsConfiguration *EbsConfiguration `type:"structure"` // Target number of instances for the instance group. // // InstanceCount is a required field InstanceCount *int64 `type:"integer" required:"true"` // The role of the instance group in the cluster. // // InstanceRole is a required field InstanceRole *string `type:"string" required:"true" enum:"InstanceRoleType"` // The Amazon EC2 instance type for all instances in the instance group. // // InstanceType is a required field InstanceType *string `min:"1" type:"string" required:"true"` // Market type of the Amazon EC2 instances used to create a cluster node. Market *string `type:"string" enum:"MarketType"` // Friendly name given to the instance group. Name *string `type:"string"` } // String returns the string representation func (s InstanceGroupConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceGroupConfig) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InstanceGroupConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InstanceGroupConfig"} if s.InstanceCount == nil { invalidParams.Add(request.NewErrParamRequired("InstanceCount")) } if s.InstanceRole == nil { invalidParams.Add(request.NewErrParamRequired("InstanceRole")) } if s.InstanceType == nil { invalidParams.Add(request.NewErrParamRequired("InstanceType")) } if s.InstanceType != nil && len(*s.InstanceType) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceType", 1)) } if s.EbsConfiguration != nil { if err := s.EbsConfiguration.Validate(); err != nil { invalidParams.AddNested("EbsConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Detailed information about an instance group. type InstanceGroupDetail struct { _ struct{} `type:"structure"` // Bid price for EC2 Instances when launching nodes as Spot Instances, expressed // in USD. BidPrice *string `type:"string"` // The date/time the instance group was created. // // CreationDateTime is a required field CreationDateTime *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` // The date/time the instance group was terminated. EndDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Unique identifier for the instance group. InstanceGroupId *string `type:"string"` // Target number of instances to run in the instance group. // // InstanceRequestCount is a required field InstanceRequestCount *int64 `type:"integer" required:"true"` // Instance group role in the cluster // // InstanceRole is a required field InstanceRole *string `type:"string" required:"true" enum:"InstanceRoleType"` // Actual count of running instances. // // InstanceRunningCount is a required field InstanceRunningCount *int64 `type:"integer" required:"true"` // Amazon EC2 Instance type. // // InstanceType is a required field InstanceType *string `min:"1" type:"string" required:"true"` // Details regarding the state of the instance group. LastStateChangeReason *string `type:"string"` // Market type of the Amazon EC2 instances used to create a cluster node. // // Market is a required field Market *string `type:"string" required:"true" enum:"MarketType"` // Friendly name for the instance group. Name *string `type:"string"` // The date/time the instance group was available to the cluster. ReadyDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The date/time the instance group was started. StartDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // State of instance group. The following values are deprecated: STARTING, TERMINATED, // and FAILED. // // State is a required field State *string `type:"string" required:"true" enum:"InstanceGroupState"` } // String returns the string representation func (s InstanceGroupDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceGroupDetail) GoString() string { return s.String() } // Modify an instance group size. type InstanceGroupModifyConfig struct { _ struct{} `type:"structure"` // The EC2 InstanceIds to terminate. Once you terminate the instances, the instance // group will not return to its original requested size. EC2InstanceIdsToTerminate []*string `type:"list"` // Target size for the instance group. InstanceCount *int64 `type:"integer"` // Unique ID of the instance group to expand or shrink. // // InstanceGroupId is a required field InstanceGroupId *string `type:"string" required:"true"` // Policy for customizing shrink operations. ShrinkPolicy *ShrinkPolicy `type:"structure"` } // String returns the string representation func (s InstanceGroupModifyConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceGroupModifyConfig) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InstanceGroupModifyConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InstanceGroupModifyConfig"} if s.InstanceGroupId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceGroupId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The status change reason details for the instance group. type InstanceGroupStateChangeReason struct { _ struct{} `type:"structure"` // The programmable code for the state change reason. Code *string `type:"string" enum:"InstanceGroupStateChangeReasonCode"` // The status change reason description. Message *string `type:"string"` } // String returns the string representation func (s InstanceGroupStateChangeReason) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceGroupStateChangeReason) GoString() string { return s.String() } // The details of the instance group status. type InstanceGroupStatus struct { _ struct{} `type:"structure"` // The current state of the instance group. State *string `type:"string" enum:"InstanceGroupState"` // The status change reason details for the instance group. StateChangeReason *InstanceGroupStateChangeReason `type:"structure"` // The timeline of the instance group status over time. Timeline *InstanceGroupTimeline `type:"structure"` } // String returns the string representation func (s InstanceGroupStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceGroupStatus) GoString() string { return s.String() } // The timeline of the instance group lifecycle. type InstanceGroupTimeline struct { _ struct{} `type:"structure"` // The creation date and time of the instance group. CreationDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The date and time when the instance group terminated. EndDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The date and time when the instance group became ready to perform tasks. ReadyDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s InstanceGroupTimeline) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceGroupTimeline) GoString() string { return s.String() } // Custom policy for requesting termination protection or termination of specific // instances when shrinking an instance group. type InstanceResizePolicy struct { _ struct{} `type:"structure"` // Decommissioning timeout override for the specific list of instances to be // terminated. InstanceTerminationTimeout *int64 `type:"integer"` // Specific list of instances to be protected when shrinking an instance group. InstancesToProtect []*string `type:"list"` // Specific list of instances to be terminated when shrinking an instance group. InstancesToTerminate []*string `type:"list"` } // String returns the string representation func (s InstanceResizePolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceResizePolicy) GoString() string { return s.String() } // The details of the status change reason for the instance. type InstanceStateChangeReason struct { _ struct{} `type:"structure"` // The programmable code for the state change reason. Code *string `type:"string" enum:"InstanceStateChangeReasonCode"` // The status change reason description. Message *string `type:"string"` } // String returns the string representation func (s InstanceStateChangeReason) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceStateChangeReason) GoString() string { return s.String() } // The instance status details. type InstanceStatus struct { _ struct{} `type:"structure"` // The current state of the instance. State *string `type:"string" enum:"InstanceState"` // The details of the status change reason for the instance. StateChangeReason *InstanceStateChangeReason `type:"structure"` // The timeline of the instance status over time. Timeline *InstanceTimeline `type:"structure"` } // String returns the string representation func (s InstanceStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceStatus) GoString() string { return s.String() } // The timeline of the instance lifecycle. type InstanceTimeline struct { _ struct{} `type:"structure"` // The creation date and time of the instance. CreationDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The date and time when the instance was terminated. EndDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The date and time when the instance was ready to perform tasks. ReadyDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s InstanceTimeline) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceTimeline) GoString() string { return s.String() } // A description of a job flow. type JobFlowDetail struct { _ struct{} `type:"structure"` // The version of the AMI used to initialize Amazon EC2 instances in the job // flow. For a list of AMI versions currently supported by Amazon ElasticMapReduce, // go to AMI Versions Supported in Elastic MapReduce (http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/EnvironmentConfig_AMIVersion.html#ami-versions-supported) // in the Amazon Elastic MapReduce Developer Guide. AmiVersion *string `type:"string"` // A list of the bootstrap actions run by the job flow. BootstrapActions []*BootstrapActionDetail `type:"list"` // Describes the execution status of the job flow. // // ExecutionStatusDetail is a required field ExecutionStatusDetail *JobFlowExecutionStatusDetail `type:"structure" required:"true"` // Describes the Amazon EC2 instances of the job flow. // // Instances is a required field Instances *JobFlowInstancesDetail `type:"structure" required:"true"` // The job flow identifier. // // JobFlowId is a required field JobFlowId *string `type:"string" required:"true"` // The IAM role that was specified when the job flow was launched. The EC2 instances // of the job flow assume this role. JobFlowRole *string `type:"string"` // The location in Amazon S3 where log files for the job are stored. LogUri *string `type:"string"` // The name of the job flow. // // Name is a required field Name *string `type:"string" required:"true"` // The IAM role that will be assumed by the Amazon EMR service to access AWS // resources on your behalf. ServiceRole *string `type:"string"` // A list of steps run by the job flow. Steps []*StepDetail `type:"list"` // A list of strings set by third party software when the job flow is launched. // If you are not using third party software to manage the job flow this value // is empty. SupportedProducts []*string `type:"list"` // Specifies whether the job flow is visible to all IAM users of the AWS account // associated with the job flow. If this value is set to true, all IAM users // of that AWS account can view and (if they have the proper policy permissions // set) manage the job flow. If it is set to false, only the IAM user that created // the job flow can view and manage it. This value can be changed using the // SetVisibleToAllUsers action. VisibleToAllUsers *bool `type:"boolean"` } // String returns the string representation func (s JobFlowDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobFlowDetail) GoString() string { return s.String() } // Describes the status of the job flow. type JobFlowExecutionStatusDetail struct { _ struct{} `type:"structure"` // The creation date and time of the job flow. // // CreationDateTime is a required field CreationDateTime *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` // The completion date and time of the job flow. EndDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Description of the job flow last changed state. LastStateChangeReason *string `type:"string"` // The date and time when the job flow was ready to start running bootstrap // actions. ReadyDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The start date and time of the job flow. StartDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The state of the job flow. // // State is a required field State *string `type:"string" required:"true" enum:"JobFlowExecutionState"` } // String returns the string representation func (s JobFlowExecutionStatusDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobFlowExecutionStatusDetail) GoString() string { return s.String() } // A description of the Amazon EC2 instance running the job flow. A valid JobFlowInstancesConfig // must contain at least InstanceGroups, which is the recommended configuration. // However, a valid alternative is to have MasterInstanceType, SlaveInstanceType, // and InstanceCount (all three must be present). type JobFlowInstancesConfig struct { _ struct{} `type:"structure"` // A list of additional Amazon EC2 security group IDs for the master node. AdditionalMasterSecurityGroups []*string `type:"list"` // A list of additional Amazon EC2 security group IDs for the slave nodes. AdditionalSlaveSecurityGroups []*string `type:"list"` // The name of the Amazon EC2 key pair that can be used to ssh to the master // node as the user called "hadoop." Ec2KeyName *string `type:"string"` // To launch the job flow in Amazon Virtual Private Cloud (Amazon VPC), set // this parameter to the identifier of the Amazon VPC subnet where you want // the job flow to launch. If you do not specify this value, the job flow is // launched in the normal Amazon Web Services cloud, outside of an Amazon VPC. // // Amazon VPC currently does not support cluster compute quadruple extra large // (cc1.4xlarge) instances. Thus you cannot specify the cc1.4xlarge instance // type for nodes of a job flow launched in a Amazon VPC. Ec2SubnetId *string `type:"string"` // The identifier of the Amazon EC2 security group for the master node. EmrManagedMasterSecurityGroup *string `type:"string"` // The identifier of the Amazon EC2 security group for the slave nodes. EmrManagedSlaveSecurityGroup *string `type:"string"` // The Hadoop version for the job flow. Valid inputs are "0.18" (deprecated), // "0.20" (deprecated), "0.20.205" (deprecated), "1.0.3", "2.2.0", or "2.4.0". // If you do not set this value, the default of 0.18 is used, unless the AmiVersion // parameter is set in the RunJobFlow call, in which case the default version // of Hadoop for that AMI version is used. HadoopVersion *string `type:"string"` // The number of Amazon EC2 instances used to execute the job flow. InstanceCount *int64 `type:"integer"` // Configuration for the job flow's instance groups. InstanceGroups []*InstanceGroupConfig `type:"list"` // Specifies whether the job flow should be kept alive after completing all // steps. KeepJobFlowAliveWhenNoSteps *bool `type:"boolean"` // The EC2 instance type of the master node. MasterInstanceType *string `min:"1" type:"string"` // The Availability Zone the job flow will run in. Placement *PlacementType `type:"structure"` // The identifier of the Amazon EC2 security group for the Amazon EMR service // to access clusters in VPC private subnets. ServiceAccessSecurityGroup *string `type:"string"` // The EC2 instance type of the slave nodes. SlaveInstanceType *string `min:"1" type:"string"` // Specifies whether to lock the job flow to prevent the Amazon EC2 instances // from being terminated by API call, user intervention, or in the event of // a job flow error. TerminationProtected *bool `type:"boolean"` } // String returns the string representation func (s JobFlowInstancesConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobFlowInstancesConfig) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *JobFlowInstancesConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "JobFlowInstancesConfig"} if s.MasterInstanceType != nil && len(*s.MasterInstanceType) < 1 { invalidParams.Add(request.NewErrParamMinLen("MasterInstanceType", 1)) } if s.SlaveInstanceType != nil && len(*s.SlaveInstanceType) < 1 { invalidParams.Add(request.NewErrParamMinLen("SlaveInstanceType", 1)) } if s.InstanceGroups != nil { for i, v := range s.InstanceGroups { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceGroups", i), err.(request.ErrInvalidParams)) } } } if s.Placement != nil { if err := s.Placement.Validate(); err != nil { invalidParams.AddNested("Placement", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specify the type of Amazon EC2 instances to run the job flow on. type JobFlowInstancesDetail struct { _ struct{} `type:"structure"` // The name of an Amazon EC2 key pair that can be used to ssh to the master // node of job flow. Ec2KeyName *string `type:"string"` // For job flows launched within Amazon Virtual Private Cloud, this value specifies // the identifier of the subnet where the job flow was launched. Ec2SubnetId *string `type:"string"` // The Hadoop version for the job flow. HadoopVersion *string `type:"string"` // The number of Amazon EC2 instances in the cluster. If the value is 1, the // same instance serves as both the master and slave node. If the value is greater // than 1, one instance is the master node and all others are slave nodes. // // InstanceCount is a required field InstanceCount *int64 `type:"integer" required:"true"` // Details about the job flow's instance groups. InstanceGroups []*InstanceGroupDetail `type:"list"` // Specifies whether the job flow should terminate after completing all steps. KeepJobFlowAliveWhenNoSteps *bool `type:"boolean"` // The Amazon EC2 instance identifier of the master node. MasterInstanceId *string `type:"string"` // The Amazon EC2 master node instance type. // // MasterInstanceType is a required field MasterInstanceType *string `min:"1" type:"string" required:"true"` // The DNS name of the master node. MasterPublicDnsName *string `type:"string"` // An approximation of the cost of the job flow, represented in m1.small/hours. // This value is incremented once for every hour an m1.small runs. Larger instances // are weighted more, so an Amazon EC2 instance that is roughly four times more // expensive would result in the normalized instance hours being incremented // by four. This result is only an approximation and does not reflect the actual // billing rate. NormalizedInstanceHours *int64 `type:"integer"` // The Amazon EC2 Availability Zone for the job flow. Placement *PlacementType `type:"structure"` // The Amazon EC2 slave node instance type. // // SlaveInstanceType is a required field SlaveInstanceType *string `min:"1" type:"string" required:"true"` // Specifies whether the Amazon EC2 instances in the cluster are protected from // termination by API calls, user intervention, or in the event of a job flow // error. TerminationProtected *bool `type:"boolean"` } // String returns the string representation func (s JobFlowInstancesDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobFlowInstancesDetail) GoString() string { return s.String() } // A key value pair. type KeyValue struct { _ struct{} `type:"structure"` // The unique identifier of a key value pair. Key *string `type:"string"` // The value part of the identified key. Value *string `type:"string"` } // String returns the string representation func (s KeyValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KeyValue) GoString() string { return s.String() } // This input determines which bootstrap actions to retrieve. type ListBootstrapActionsInput struct { _ struct{} `type:"structure"` // The cluster identifier for the bootstrap actions to list . // // ClusterId is a required field ClusterId *string `type:"string" required:"true"` // The pagination token that indicates the next set of results to retrieve. Marker *string `type:"string"` } // String returns the string representation func (s ListBootstrapActionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListBootstrapActionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListBootstrapActionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListBootstrapActionsInput"} if s.ClusterId == nil { invalidParams.Add(request.NewErrParamRequired("ClusterId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // This output contains the boostrap actions detail . type ListBootstrapActionsOutput struct { _ struct{} `type:"structure"` // The bootstrap actions associated with the cluster . BootstrapActions []*Command `type:"list"` // The pagination token that indicates the next set of results to retrieve. Marker *string `type:"string"` } // String returns the string representation func (s ListBootstrapActionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListBootstrapActionsOutput) GoString() string { return s.String() } // This input determines how the ListClusters action filters the list of clusters // that it returns. type ListClustersInput struct { _ struct{} `type:"structure"` // The cluster state filters to apply when listing clusters. ClusterStates []*string `type:"list"` // The creation date and time beginning value filter for listing clusters . CreatedAfter *time.Time `type:"timestamp" timestampFormat:"unix"` // The creation date and time end value filter for listing clusters . CreatedBefore *time.Time `type:"timestamp" timestampFormat:"unix"` // The pagination token that indicates the next set of results to retrieve. Marker *string `type:"string"` } // String returns the string representation func (s ListClustersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListClustersInput) GoString() string { return s.String() } // This contains a ClusterSummaryList with the cluster details; for example, // the cluster IDs, names, and status. type ListClustersOutput struct { _ struct{} `type:"structure"` // The list of clusters for the account based on the given filters. Clusters []*ClusterSummary `type:"list"` // The pagination token that indicates the next set of results to retrieve. Marker *string `type:"string"` } // String returns the string representation func (s ListClustersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListClustersOutput) GoString() string { return s.String() } // This input determines which instance groups to retrieve. type ListInstanceGroupsInput struct { _ struct{} `type:"structure"` // The identifier of the cluster for which to list the instance groups. // // ClusterId is a required field ClusterId *string `type:"string" required:"true"` // The pagination token that indicates the next set of results to retrieve. Marker *string `type:"string"` } // String returns the string representation func (s ListInstanceGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListInstanceGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListInstanceGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListInstanceGroupsInput"} if s.ClusterId == nil { invalidParams.Add(request.NewErrParamRequired("ClusterId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // This input determines which instance groups to retrieve. type ListInstanceGroupsOutput struct { _ struct{} `type:"structure"` // The list of instance groups for the cluster and given filters. InstanceGroups []*InstanceGroup `type:"list"` // The pagination token that indicates the next set of results to retrieve. Marker *string `type:"string"` } // String returns the string representation func (s ListInstanceGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListInstanceGroupsOutput) GoString() string { return s.String() } // This input determines which instances to list. type ListInstancesInput struct { _ struct{} `type:"structure"` // The identifier of the cluster for which to list the instances. // // ClusterId is a required field ClusterId *string `type:"string" required:"true"` // The identifier of the instance group for which to list the instances. InstanceGroupId *string `type:"string"` // The type of instance group for which to list the instances. InstanceGroupTypes []*string `type:"list"` // A list of instance states that will filter the instances returned with this // request. InstanceStates []*string `type:"list"` // The pagination token that indicates the next set of results to retrieve. Marker *string `type:"string"` } // String returns the string representation func (s ListInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListInstancesInput"} if s.ClusterId == nil { invalidParams.Add(request.NewErrParamRequired("ClusterId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // This output contains the list of instances. type ListInstancesOutput struct { _ struct{} `type:"structure"` // The list of instances for the cluster and given filters. Instances []*Instance `type:"list"` // The pagination token that indicates the next set of results to retrieve. Marker *string `type:"string"` } // String returns the string representation func (s ListInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListInstancesOutput) GoString() string { return s.String() } type ListSecurityConfigurationsInput struct { _ struct{} `type:"structure"` // The pagination token that indicates the set of results to retrieve. Marker *string `type:"string"` } // String returns the string representation func (s ListSecurityConfigurationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSecurityConfigurationsInput) GoString() string { return s.String() } type ListSecurityConfigurationsOutput struct { _ struct{} `type:"structure"` // A pagination token that indicates the next set of results to retrieve. Include // the marker in the next ListSecurityConfiguration call to retrieve the next // page of results, if required. Marker *string `type:"string"` // The creation date and time, and name, of each security configuration. SecurityConfigurations []*SecurityConfigurationSummary `type:"list"` } // String returns the string representation func (s ListSecurityConfigurationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSecurityConfigurationsOutput) GoString() string { return s.String() } // This input determines which steps to list. type ListStepsInput struct { _ struct{} `type:"structure"` // The identifier of the cluster for which to list the steps. // // ClusterId is a required field ClusterId *string `type:"string" required:"true"` // The pagination token that indicates the next set of results to retrieve. Marker *string `type:"string"` // The filter to limit the step list based on the identifier of the steps. StepIds []*string `type:"list"` // The filter to limit the step list based on certain states. StepStates []*string `type:"list"` } // String returns the string representation func (s ListStepsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListStepsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListStepsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListStepsInput"} if s.ClusterId == nil { invalidParams.Add(request.NewErrParamRequired("ClusterId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // This output contains the list of steps returned in reverse order. This means // that the last step is the first element in the list. type ListStepsOutput struct { _ struct{} `type:"structure"` // The pagination token that indicates the next set of results to retrieve. Marker *string `type:"string"` // The filtered list of steps for the cluster. Steps []*StepSummary `type:"list"` } // String returns the string representation func (s ListStepsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListStepsOutput) GoString() string { return s.String() } // Change the size of some instance groups. type ModifyInstanceGroupsInput struct { _ struct{} `type:"structure"` // Instance groups to change. InstanceGroups []*InstanceGroupModifyConfig `type:"list"` } // String returns the string representation func (s ModifyInstanceGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyInstanceGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyInstanceGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyInstanceGroupsInput"} if s.InstanceGroups != nil { for i, v := range s.InstanceGroups { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceGroups", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyInstanceGroupsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ModifyInstanceGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyInstanceGroupsOutput) GoString() string { return s.String() } // The Amazon EC2 location for the job flow. type PlacementType struct { _ struct{} `type:"structure"` // The Amazon EC2 Availability Zone for the job flow. // // AvailabilityZone is a required field AvailabilityZone *string `type:"string" required:"true"` } // String returns the string representation func (s PlacementType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PlacementType) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PlacementType) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PlacementType"} if s.AvailabilityZone == nil { invalidParams.Add(request.NewErrParamRequired("AvailabilityZone")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // This input identifies a cluster and a list of tags to remove. type RemoveTagsInput struct { _ struct{} `type:"structure"` // The Amazon EMR resource identifier from which tags will be removed. This // value must be a cluster identifier. // // ResourceId is a required field ResourceId *string `type:"string" required:"true"` // A list of tag keys to remove from a resource. // // TagKeys is a required field TagKeys []*string `type:"list" required:"true"` } // String returns the string representation func (s RemoveTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTagsInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // This output indicates the result of removing tags from a resource. type RemoveTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsOutput) GoString() string { return s.String() } // Input to the RunJobFlow operation. type RunJobFlowInput struct { _ struct{} `type:"structure"` // A JSON string for selecting additional features. AdditionalInfo *string `type:"string"` // For Amazon EMR releases 3.x and 2.x. For Amazon EMR releases 4.x and greater, // use ReleaseLabel. // // The version of the Amazon Machine Image (AMI) to use when launching Amazon // EC2 instances in the job flow. The following values are valid: // // * The version number of the AMI to use, for example, "2.0." // // If the AMI supports multiple versions of Hadoop (for example, AMI 1.0 supports // both Hadoop 0.18 and 0.20) you can use the JobFlowInstancesConfigHadoopVersion // parameter to modify the version of Hadoop from the defaults shown above. // // For details about the AMI versions currently supported by Amazon Elastic // MapReduce, go to AMI Versions Supported in Elastic MapReduce (http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/EnvironmentConfig_AMIVersion.html#ami-versions-supported) // in the Amazon Elastic MapReduce Developer's Guide. AmiVersion *string `type:"string"` // Amazon EMR releases 4.x or later. // // A list of applications for the cluster. Valid values are: "Hadoop", "Hive", // "Mahout", "Pig", and "Spark." They are case insensitive. Applications []*Application `type:"list"` // A list of bootstrap actions that will be run before Hadoop is started on // the cluster nodes. BootstrapActions []*BootstrapActionConfig `type:"list"` // Amazon EMR releases 4.x or later. // // The list of configurations supplied for the EMR cluster you are creating. Configurations []*Configuration `type:"list"` // A specification of the number and type of Amazon EC2 instances on which to // run the job flow. // // Instances is a required field Instances *JobFlowInstancesConfig `type:"structure" required:"true"` // Also called instance profile and EC2 role. An IAM role for an EMR cluster. // The EC2 instances of the cluster assume this role. The default role is EMR_EC2_DefaultRole. // In order to use the default role, you must have already created it using // the CLI or console. JobFlowRole *string `type:"string"` // The location in Amazon S3 to write the log files of the job flow. If a value // is not provided, logs are not created. LogUri *string `type:"string"` // The name of the job flow. // // Name is a required field Name *string `type:"string" required:"true"` // For Amazon EMR releases 3.x and 2.x. For Amazon EMR releases 4.x and greater, // use Applications. // // A list of strings that indicates third-party software to use with the job // flow that accepts a user argument list. EMR accepts and forwards the argument // list to the corresponding installation script as bootstrap action arguments. // For more information, see Launch a Job Flow on the MapR Distribution for // Hadoop (http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/emr-mapr.html). // Currently supported values are: // // * "mapr-m3" - launch the cluster using MapR M3 Edition. // // * "mapr-m5" - launch the cluster using MapR M5 Edition. // // * "mapr" with the user arguments specifying "--edition,m3" or "--edition,m5" // - launch the job flow using MapR M3 or M5 Edition respectively. // // * "mapr-m7" - launch the cluster using MapR M7 Edition. // // * "hunk" - launch the cluster with the Hunk Big Data Analtics Platform. // // * "hue"- launch the cluster with Hue installed. // // * "spark" - launch the cluster with Apache Spark installed. // // * "ganglia" - launch the cluster with the Ganglia Monitoring System installed. NewSupportedProducts []*SupportedProductConfig `type:"list"` // Amazon EMR releases 4.x or later. // // The release label for the Amazon EMR release. For Amazon EMR 3.x and 2.x // AMIs, use amiVersion instead instead of ReleaseLabel. ReleaseLabel *string `type:"string"` // The name of a security configuration to apply to the cluster. SecurityConfiguration *string `type:"string"` // The IAM role that will be assumed by the Amazon EMR service to access AWS // resources on your behalf. ServiceRole *string `type:"string"` // A list of steps to be executed by the job flow. Steps []*StepConfig `type:"list"` // For Amazon EMR releases 3.x and 2.x. For Amazon EMR releases 4.x and greater, // use Applications. // // A list of strings that indicates third-party software to use with the job // flow. For more information, go to Use Third Party Applications with Amazon // EMR (http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/emr-supported-products.html). // Currently supported values are: // // * "mapr-m3" - launch the job flow using MapR M3 Edition. // // * "mapr-m5" - launch the job flow using MapR M5 Edition. SupportedProducts []*string `type:"list"` // A list of tags to associate with a cluster and propagate to Amazon EC2 instances. Tags []*Tag `type:"list"` // Whether the job flow is visible to all IAM users of the AWS account associated // with the job flow. If this value is set to true, all IAM users of that AWS // account can view and (if they have the proper policy permissions set) manage // the job flow. If it is set to false, only the IAM user that created the job // flow can view and manage it. VisibleToAllUsers *bool `type:"boolean"` } // String returns the string representation func (s RunJobFlowInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RunJobFlowInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RunJobFlowInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RunJobFlowInput"} if s.Instances == nil { invalidParams.Add(request.NewErrParamRequired("Instances")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.BootstrapActions != nil { for i, v := range s.BootstrapActions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "BootstrapActions", i), err.(request.ErrInvalidParams)) } } } if s.Instances != nil { if err := s.Instances.Validate(); err != nil { invalidParams.AddNested("Instances", err.(request.ErrInvalidParams)) } } if s.Steps != nil { for i, v := range s.Steps { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Steps", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of the RunJobFlow operation. type RunJobFlowOutput struct { _ struct{} `type:"structure"` // An unique identifier for the job flow. JobFlowId *string `type:"string"` } // String returns the string representation func (s RunJobFlowOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RunJobFlowOutput) GoString() string { return s.String() } type ScriptBootstrapActionConfig struct { _ struct{} `type:"structure"` Args []*string `type:"list"` // Path is a required field Path *string `type:"string" required:"true"` } // String returns the string representation func (s ScriptBootstrapActionConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScriptBootstrapActionConfig) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ScriptBootstrapActionConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ScriptBootstrapActionConfig"} if s.Path == nil { invalidParams.Add(request.NewErrParamRequired("Path")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The creation date and time, and name, of a security configuration. type SecurityConfigurationSummary struct { _ struct{} `type:"structure"` // The date and time the security configuration was created. CreationDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The name of the security configuration. Name *string `type:"string"` } // String returns the string representation func (s SecurityConfigurationSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SecurityConfigurationSummary) GoString() string { return s.String() } // The input argument to the TerminationProtection operation. type SetTerminationProtectionInput struct { _ struct{} `type:"structure"` // A list of strings that uniquely identify the job flows to protect. This identifier // is returned by RunJobFlow and can also be obtained from DescribeJobFlows // . // // JobFlowIds is a required field JobFlowIds []*string `type:"list" required:"true"` // A Boolean that indicates whether to protect the job flow and prevent the // Amazon EC2 instances in the cluster from shutting down due to API calls, // user intervention, or job-flow error. // // TerminationProtected is a required field TerminationProtected *bool `type:"boolean" required:"true"` } // String returns the string representation func (s SetTerminationProtectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetTerminationProtectionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetTerminationProtectionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetTerminationProtectionInput"} if s.JobFlowIds == nil { invalidParams.Add(request.NewErrParamRequired("JobFlowIds")) } if s.TerminationProtected == nil { invalidParams.Add(request.NewErrParamRequired("TerminationProtected")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetTerminationProtectionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetTerminationProtectionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetTerminationProtectionOutput) GoString() string { return s.String() } // The input to the SetVisibleToAllUsers action. type SetVisibleToAllUsersInput struct { _ struct{} `type:"structure"` // Identifiers of the job flows to receive the new visibility setting. // // JobFlowIds is a required field JobFlowIds []*string `type:"list" required:"true"` // Whether the specified job flows are visible to all IAM users of the AWS account // associated with the job flow. If this value is set to True, all IAM users // of that AWS account can view and, if they have the proper IAM policy permissions // set, manage the job flows. If it is set to False, only the IAM user that // created a job flow can view and manage it. // // VisibleToAllUsers is a required field VisibleToAllUsers *bool `type:"boolean" required:"true"` } // String returns the string representation func (s SetVisibleToAllUsersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetVisibleToAllUsersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetVisibleToAllUsersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetVisibleToAllUsersInput"} if s.JobFlowIds == nil { invalidParams.Add(request.NewErrParamRequired("JobFlowIds")) } if s.VisibleToAllUsers == nil { invalidParams.Add(request.NewErrParamRequired("VisibleToAllUsers")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetVisibleToAllUsersOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetVisibleToAllUsersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetVisibleToAllUsersOutput) GoString() string { return s.String() } // Policy for customizing shrink operations. Allows configuration of decommissioning // timeout and targeted instance shrinking. type ShrinkPolicy struct { _ struct{} `type:"structure"` // The desired timeout for decommissioning an instance. Overrides the default // YARN decommissioning timeout. DecommissionTimeout *int64 `type:"integer"` // Custom policy for requesting termination protection or termination of specific // instances when shrinking an instance group. InstanceResizePolicy *InstanceResizePolicy `type:"structure"` } // String returns the string representation func (s ShrinkPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ShrinkPolicy) GoString() string { return s.String() } // This represents a step in a cluster. type Step struct { _ struct{} `type:"structure"` // This specifies what action to take when the cluster step fails. Possible // values are TERMINATE_CLUSTER, CANCEL_AND_WAIT, and CONTINUE. ActionOnFailure *string `type:"string" enum:"ActionOnFailure"` // The Hadoop job configuration of the cluster step. Config *HadoopStepConfig `type:"structure"` // The identifier of the cluster step. Id *string `type:"string"` // The name of the cluster step. Name *string `type:"string"` // The current execution status details of the cluster step. Status *StepStatus `type:"structure"` } // String returns the string representation func (s Step) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Step) GoString() string { return s.String() } // Specification of a job flow step. type StepConfig struct { _ struct{} `type:"structure"` // The action to take if the job flow step fails. ActionOnFailure *string `type:"string" enum:"ActionOnFailure"` // The JAR file used for the job flow step. // // HadoopJarStep is a required field HadoopJarStep *HadoopJarStepConfig `type:"structure" required:"true"` // The name of the job flow step. // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s StepConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StepConfig) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StepConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StepConfig"} if s.HadoopJarStep == nil { invalidParams.Add(request.NewErrParamRequired("HadoopJarStep")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.HadoopJarStep != nil { if err := s.HadoopJarStep.Validate(); err != nil { invalidParams.AddNested("HadoopJarStep", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Combines the execution state and configuration of a step. type StepDetail struct { _ struct{} `type:"structure"` // The description of the step status. // // ExecutionStatusDetail is a required field ExecutionStatusDetail *StepExecutionStatusDetail `type:"structure" required:"true"` // The step configuration. // // StepConfig is a required field StepConfig *StepConfig `type:"structure" required:"true"` } // String returns the string representation func (s StepDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StepDetail) GoString() string { return s.String() } // The execution state of a step. type StepExecutionStatusDetail struct { _ struct{} `type:"structure"` // The creation date and time of the step. // // CreationDateTime is a required field CreationDateTime *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` // The completion date and time of the step. EndDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // A description of the step's current state. LastStateChangeReason *string `type:"string"` // The start date and time of the step. StartDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The state of the job flow step. // // State is a required field State *string `type:"string" required:"true" enum:"StepExecutionState"` } // String returns the string representation func (s StepExecutionStatusDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StepExecutionStatusDetail) GoString() string { return s.String() } // The details of the step state change reason. type StepStateChangeReason struct { _ struct{} `type:"structure"` // The programmable code for the state change reason. Note: Currently, the service // provides no code for the state change. Code *string `type:"string" enum:"StepStateChangeReasonCode"` // The descriptive message for the state change reason. Message *string `type:"string"` } // String returns the string representation func (s StepStateChangeReason) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StepStateChangeReason) GoString() string { return s.String() } // The execution status details of the cluster step. type StepStatus struct { _ struct{} `type:"structure"` // The details for the step failure including reason, message, and log file // path where the root cause was identified. FailureDetails *FailureDetails `type:"structure"` // The execution state of the cluster step. State *string `type:"string" enum:"StepState"` // The reason for the step execution status change. StateChangeReason *StepStateChangeReason `type:"structure"` // The timeline of the cluster step status over time. Timeline *StepTimeline `type:"structure"` } // String returns the string representation func (s StepStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StepStatus) GoString() string { return s.String() } // The summary of the cluster step. type StepSummary struct { _ struct{} `type:"structure"` // This specifies what action to take when the cluster step fails. Possible // values are TERMINATE_CLUSTER, CANCEL_AND_WAIT, and CONTINUE. ActionOnFailure *string `type:"string" enum:"ActionOnFailure"` // The Hadoop job configuration of the cluster step. Config *HadoopStepConfig `type:"structure"` // The identifier of the cluster step. Id *string `type:"string"` // The name of the cluster step. Name *string `type:"string"` // The current execution status details of the cluster step. Status *StepStatus `type:"structure"` } // String returns the string representation func (s StepSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StepSummary) GoString() string { return s.String() } // The timeline of the cluster step lifecycle. type StepTimeline struct { _ struct{} `type:"structure"` // The date and time when the cluster step was created. CreationDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The date and time when the cluster step execution completed or failed. EndDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The date and time when the cluster step execution started. StartDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s StepTimeline) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StepTimeline) GoString() string { return s.String() } // The list of supported product configurations which allow user-supplied arguments. // EMR accepts these arguments and forwards them to the corresponding installation // script as bootstrap action arguments. type SupportedProductConfig struct { _ struct{} `type:"structure"` // The list of user-supplied arguments. Args []*string `type:"list"` // The name of the product configuration. Name *string `type:"string"` } // String returns the string representation func (s SupportedProductConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SupportedProductConfig) GoString() string { return s.String() } // A key/value pair containing user-defined metadata that you can associate // with an Amazon EMR resource. Tags make it easier to associate clusters in // various ways, such as grouping clu\ sters to track your Amazon EMR resource // allocation costs. For more information, see Tagging Amazon EMR Resources // (http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/emr-plan-tags.html). type Tag struct { _ struct{} `type:"structure"` // A user-defined key, which is the minimum required information for a valid // tag. For more information, see Tagging Amazon EMR Resources (http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/emr-plan-tags.html). Key *string `type:"string"` // A user-defined value, which is optional in a tag. For more information, see // Tagging Amazon EMR Resources (http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/emr-plan-tags.html). Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Input to the TerminateJobFlows operation. type TerminateJobFlowsInput struct { _ struct{} `type:"structure"` // A list of job flows to be shutdown. // // JobFlowIds is a required field JobFlowIds []*string `type:"list" required:"true"` } // String returns the string representation func (s TerminateJobFlowsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TerminateJobFlowsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TerminateJobFlowsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TerminateJobFlowsInput"} if s.JobFlowIds == nil { invalidParams.Add(request.NewErrParamRequired("JobFlowIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type TerminateJobFlowsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s TerminateJobFlowsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TerminateJobFlowsOutput) GoString() string { return s.String() } // EBS volume specifications such as volume type, IOPS, and size(GiB) that will // be requested for the EBS volume attached to an EC2 instance in the cluster. type VolumeSpecification struct { _ struct{} `type:"structure"` // The number of I/O operations per second (IOPS) that the volume supports. Iops *int64 `type:"integer"` // The volume size, in gibibytes (GiB). This can be a number from 1 - 1024. // If the volume type is EBS-optimized, the minimum value is 10. // // SizeInGB is a required field SizeInGB *int64 `type:"integer" required:"true"` // The volume type. Volume types supported are gp2, io1, standard. // // VolumeType is a required field VolumeType *string `type:"string" required:"true"` } // String returns the string representation func (s VolumeSpecification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VolumeSpecification) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *VolumeSpecification) Validate() error { invalidParams := request.ErrInvalidParams{Context: "VolumeSpecification"} if s.SizeInGB == nil { invalidParams.Add(request.NewErrParamRequired("SizeInGB")) } if s.VolumeType == nil { invalidParams.Add(request.NewErrParamRequired("VolumeType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } const ( // ActionOnFailureTerminateJobFlow is a ActionOnFailure enum value ActionOnFailureTerminateJobFlow = "TERMINATE_JOB_FLOW" // ActionOnFailureTerminateCluster is a ActionOnFailure enum value ActionOnFailureTerminateCluster = "TERMINATE_CLUSTER" // ActionOnFailureCancelAndWait is a ActionOnFailure enum value ActionOnFailureCancelAndWait = "CANCEL_AND_WAIT" // ActionOnFailureContinue is a ActionOnFailure enum value ActionOnFailureContinue = "CONTINUE" ) const ( // ClusterStateStarting is a ClusterState enum value ClusterStateStarting = "STARTING" // ClusterStateBootstrapping is a ClusterState enum value ClusterStateBootstrapping = "BOOTSTRAPPING" // ClusterStateRunning is a ClusterState enum value ClusterStateRunning = "RUNNING" // ClusterStateWaiting is a ClusterState enum value ClusterStateWaiting = "WAITING" // ClusterStateTerminating is a ClusterState enum value ClusterStateTerminating = "TERMINATING" // ClusterStateTerminated is a ClusterState enum value ClusterStateTerminated = "TERMINATED" // ClusterStateTerminatedWithErrors is a ClusterState enum value ClusterStateTerminatedWithErrors = "TERMINATED_WITH_ERRORS" ) const ( // ClusterStateChangeReasonCodeInternalError is a ClusterStateChangeReasonCode enum value ClusterStateChangeReasonCodeInternalError = "INTERNAL_ERROR" // ClusterStateChangeReasonCodeValidationError is a ClusterStateChangeReasonCode enum value ClusterStateChangeReasonCodeValidationError = "VALIDATION_ERROR" // ClusterStateChangeReasonCodeInstanceFailure is a ClusterStateChangeReasonCode enum value ClusterStateChangeReasonCodeInstanceFailure = "INSTANCE_FAILURE" // ClusterStateChangeReasonCodeBootstrapFailure is a ClusterStateChangeReasonCode enum value ClusterStateChangeReasonCodeBootstrapFailure = "BOOTSTRAP_FAILURE" // ClusterStateChangeReasonCodeUserRequest is a ClusterStateChangeReasonCode enum value ClusterStateChangeReasonCodeUserRequest = "USER_REQUEST" // ClusterStateChangeReasonCodeStepFailure is a ClusterStateChangeReasonCode enum value ClusterStateChangeReasonCodeStepFailure = "STEP_FAILURE" // ClusterStateChangeReasonCodeAllStepsCompleted is a ClusterStateChangeReasonCode enum value ClusterStateChangeReasonCodeAllStepsCompleted = "ALL_STEPS_COMPLETED" ) const ( // InstanceGroupStateProvisioning is a InstanceGroupState enum value InstanceGroupStateProvisioning = "PROVISIONING" // InstanceGroupStateBootstrapping is a InstanceGroupState enum value InstanceGroupStateBootstrapping = "BOOTSTRAPPING" // InstanceGroupStateRunning is a InstanceGroupState enum value InstanceGroupStateRunning = "RUNNING" // InstanceGroupStateResizing is a InstanceGroupState enum value InstanceGroupStateResizing = "RESIZING" // InstanceGroupStateSuspended is a InstanceGroupState enum value InstanceGroupStateSuspended = "SUSPENDED" // InstanceGroupStateTerminating is a InstanceGroupState enum value InstanceGroupStateTerminating = "TERMINATING" // InstanceGroupStateTerminated is a InstanceGroupState enum value InstanceGroupStateTerminated = "TERMINATED" // InstanceGroupStateArrested is a InstanceGroupState enum value InstanceGroupStateArrested = "ARRESTED" // InstanceGroupStateShuttingDown is a InstanceGroupState enum value InstanceGroupStateShuttingDown = "SHUTTING_DOWN" // InstanceGroupStateEnded is a InstanceGroupState enum value InstanceGroupStateEnded = "ENDED" ) const ( // InstanceGroupStateChangeReasonCodeInternalError is a InstanceGroupStateChangeReasonCode enum value InstanceGroupStateChangeReasonCodeInternalError = "INTERNAL_ERROR" // InstanceGroupStateChangeReasonCodeValidationError is a InstanceGroupStateChangeReasonCode enum value InstanceGroupStateChangeReasonCodeValidationError = "VALIDATION_ERROR" // InstanceGroupStateChangeReasonCodeInstanceFailure is a InstanceGroupStateChangeReasonCode enum value InstanceGroupStateChangeReasonCodeInstanceFailure = "INSTANCE_FAILURE" // InstanceGroupStateChangeReasonCodeClusterTerminated is a InstanceGroupStateChangeReasonCode enum value InstanceGroupStateChangeReasonCodeClusterTerminated = "CLUSTER_TERMINATED" ) const ( // InstanceGroupTypeMaster is a InstanceGroupType enum value InstanceGroupTypeMaster = "MASTER" // InstanceGroupTypeCore is a InstanceGroupType enum value InstanceGroupTypeCore = "CORE" // InstanceGroupTypeTask is a InstanceGroupType enum value InstanceGroupTypeTask = "TASK" ) const ( // InstanceRoleTypeMaster is a InstanceRoleType enum value InstanceRoleTypeMaster = "MASTER" // InstanceRoleTypeCore is a InstanceRoleType enum value InstanceRoleTypeCore = "CORE" // InstanceRoleTypeTask is a InstanceRoleType enum value InstanceRoleTypeTask = "TASK" ) const ( // InstanceStateAwaitingFulfillment is a InstanceState enum value InstanceStateAwaitingFulfillment = "AWAITING_FULFILLMENT" // InstanceStateProvisioning is a InstanceState enum value InstanceStateProvisioning = "PROVISIONING" // InstanceStateBootstrapping is a InstanceState enum value InstanceStateBootstrapping = "BOOTSTRAPPING" // InstanceStateRunning is a InstanceState enum value InstanceStateRunning = "RUNNING" // InstanceStateTerminated is a InstanceState enum value InstanceStateTerminated = "TERMINATED" ) const ( // InstanceStateChangeReasonCodeInternalError is a InstanceStateChangeReasonCode enum value InstanceStateChangeReasonCodeInternalError = "INTERNAL_ERROR" // InstanceStateChangeReasonCodeValidationError is a InstanceStateChangeReasonCode enum value InstanceStateChangeReasonCodeValidationError = "VALIDATION_ERROR" // InstanceStateChangeReasonCodeInstanceFailure is a InstanceStateChangeReasonCode enum value InstanceStateChangeReasonCodeInstanceFailure = "INSTANCE_FAILURE" // InstanceStateChangeReasonCodeBootstrapFailure is a InstanceStateChangeReasonCode enum value InstanceStateChangeReasonCodeBootstrapFailure = "BOOTSTRAP_FAILURE" // InstanceStateChangeReasonCodeClusterTerminated is a InstanceStateChangeReasonCode enum value InstanceStateChangeReasonCodeClusterTerminated = "CLUSTER_TERMINATED" ) // The type of instance. const ( // JobFlowExecutionStateStarting is a JobFlowExecutionState enum value JobFlowExecutionStateStarting = "STARTING" // JobFlowExecutionStateBootstrapping is a JobFlowExecutionState enum value JobFlowExecutionStateBootstrapping = "BOOTSTRAPPING" // JobFlowExecutionStateRunning is a JobFlowExecutionState enum value JobFlowExecutionStateRunning = "RUNNING" // JobFlowExecutionStateWaiting is a JobFlowExecutionState enum value JobFlowExecutionStateWaiting = "WAITING" // JobFlowExecutionStateShuttingDown is a JobFlowExecutionState enum value JobFlowExecutionStateShuttingDown = "SHUTTING_DOWN" // JobFlowExecutionStateTerminated is a JobFlowExecutionState enum value JobFlowExecutionStateTerminated = "TERMINATED" // JobFlowExecutionStateCompleted is a JobFlowExecutionState enum value JobFlowExecutionStateCompleted = "COMPLETED" // JobFlowExecutionStateFailed is a JobFlowExecutionState enum value JobFlowExecutionStateFailed = "FAILED" ) const ( // MarketTypeOnDemand is a MarketType enum value MarketTypeOnDemand = "ON_DEMAND" // MarketTypeSpot is a MarketType enum value MarketTypeSpot = "SPOT" ) const ( // StepExecutionStatePending is a StepExecutionState enum value StepExecutionStatePending = "PENDING" // StepExecutionStateRunning is a StepExecutionState enum value StepExecutionStateRunning = "RUNNING" // StepExecutionStateContinue is a StepExecutionState enum value StepExecutionStateContinue = "CONTINUE" // StepExecutionStateCompleted is a StepExecutionState enum value StepExecutionStateCompleted = "COMPLETED" // StepExecutionStateCancelled is a StepExecutionState enum value StepExecutionStateCancelled = "CANCELLED" // StepExecutionStateFailed is a StepExecutionState enum value StepExecutionStateFailed = "FAILED" // StepExecutionStateInterrupted is a StepExecutionState enum value StepExecutionStateInterrupted = "INTERRUPTED" ) const ( // StepStatePending is a StepState enum value StepStatePending = "PENDING" // StepStateRunning is a StepState enum value StepStateRunning = "RUNNING" // StepStateCompleted is a StepState enum value StepStateCompleted = "COMPLETED" // StepStateCancelled is a StepState enum value StepStateCancelled = "CANCELLED" // StepStateFailed is a StepState enum value StepStateFailed = "FAILED" // StepStateInterrupted is a StepState enum value StepStateInterrupted = "INTERRUPTED" ) const ( // StepStateChangeReasonCodeNone is a StepStateChangeReasonCode enum value StepStateChangeReasonCodeNone = "NONE" ) aws-sdk-go-1.4.22/service/emr/emriface/000077500000000000000000000000001300374646400175615ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/emr/emriface/interface.go000066400000000000000000000152131300374646400220520ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package emriface provides an interface to enable mocking the Amazon Elastic MapReduce service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package emriface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/emr" ) // EMRAPI provides an interface to enable mocking the // emr.EMR service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Elastic MapReduce. // func myFunc(svc emriface.EMRAPI) bool { // // Make svc.AddInstanceGroups request // } // // func main() { // sess := session.New() // svc := emr.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockEMRClient struct { // emriface.EMRAPI // } // func (m *mockEMRClient) AddInstanceGroups(input *emr.AddInstanceGroupsInput) (*emr.AddInstanceGroupsOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockEMRClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type EMRAPI interface { AddInstanceGroupsRequest(*emr.AddInstanceGroupsInput) (*request.Request, *emr.AddInstanceGroupsOutput) AddInstanceGroups(*emr.AddInstanceGroupsInput) (*emr.AddInstanceGroupsOutput, error) AddJobFlowStepsRequest(*emr.AddJobFlowStepsInput) (*request.Request, *emr.AddJobFlowStepsOutput) AddJobFlowSteps(*emr.AddJobFlowStepsInput) (*emr.AddJobFlowStepsOutput, error) AddTagsRequest(*emr.AddTagsInput) (*request.Request, *emr.AddTagsOutput) AddTags(*emr.AddTagsInput) (*emr.AddTagsOutput, error) CreateSecurityConfigurationRequest(*emr.CreateSecurityConfigurationInput) (*request.Request, *emr.CreateSecurityConfigurationOutput) CreateSecurityConfiguration(*emr.CreateSecurityConfigurationInput) (*emr.CreateSecurityConfigurationOutput, error) DeleteSecurityConfigurationRequest(*emr.DeleteSecurityConfigurationInput) (*request.Request, *emr.DeleteSecurityConfigurationOutput) DeleteSecurityConfiguration(*emr.DeleteSecurityConfigurationInput) (*emr.DeleteSecurityConfigurationOutput, error) DescribeClusterRequest(*emr.DescribeClusterInput) (*request.Request, *emr.DescribeClusterOutput) DescribeCluster(*emr.DescribeClusterInput) (*emr.DescribeClusterOutput, error) DescribeJobFlowsRequest(*emr.DescribeJobFlowsInput) (*request.Request, *emr.DescribeJobFlowsOutput) DescribeJobFlows(*emr.DescribeJobFlowsInput) (*emr.DescribeJobFlowsOutput, error) DescribeSecurityConfigurationRequest(*emr.DescribeSecurityConfigurationInput) (*request.Request, *emr.DescribeSecurityConfigurationOutput) DescribeSecurityConfiguration(*emr.DescribeSecurityConfigurationInput) (*emr.DescribeSecurityConfigurationOutput, error) DescribeStepRequest(*emr.DescribeStepInput) (*request.Request, *emr.DescribeStepOutput) DescribeStep(*emr.DescribeStepInput) (*emr.DescribeStepOutput, error) ListBootstrapActionsRequest(*emr.ListBootstrapActionsInput) (*request.Request, *emr.ListBootstrapActionsOutput) ListBootstrapActions(*emr.ListBootstrapActionsInput) (*emr.ListBootstrapActionsOutput, error) ListBootstrapActionsPages(*emr.ListBootstrapActionsInput, func(*emr.ListBootstrapActionsOutput, bool) bool) error ListClustersRequest(*emr.ListClustersInput) (*request.Request, *emr.ListClustersOutput) ListClusters(*emr.ListClustersInput) (*emr.ListClustersOutput, error) ListClustersPages(*emr.ListClustersInput, func(*emr.ListClustersOutput, bool) bool) error ListInstanceGroupsRequest(*emr.ListInstanceGroupsInput) (*request.Request, *emr.ListInstanceGroupsOutput) ListInstanceGroups(*emr.ListInstanceGroupsInput) (*emr.ListInstanceGroupsOutput, error) ListInstanceGroupsPages(*emr.ListInstanceGroupsInput, func(*emr.ListInstanceGroupsOutput, bool) bool) error ListInstancesRequest(*emr.ListInstancesInput) (*request.Request, *emr.ListInstancesOutput) ListInstances(*emr.ListInstancesInput) (*emr.ListInstancesOutput, error) ListInstancesPages(*emr.ListInstancesInput, func(*emr.ListInstancesOutput, bool) bool) error ListSecurityConfigurationsRequest(*emr.ListSecurityConfigurationsInput) (*request.Request, *emr.ListSecurityConfigurationsOutput) ListSecurityConfigurations(*emr.ListSecurityConfigurationsInput) (*emr.ListSecurityConfigurationsOutput, error) ListStepsRequest(*emr.ListStepsInput) (*request.Request, *emr.ListStepsOutput) ListSteps(*emr.ListStepsInput) (*emr.ListStepsOutput, error) ListStepsPages(*emr.ListStepsInput, func(*emr.ListStepsOutput, bool) bool) error ModifyInstanceGroupsRequest(*emr.ModifyInstanceGroupsInput) (*request.Request, *emr.ModifyInstanceGroupsOutput) ModifyInstanceGroups(*emr.ModifyInstanceGroupsInput) (*emr.ModifyInstanceGroupsOutput, error) RemoveTagsRequest(*emr.RemoveTagsInput) (*request.Request, *emr.RemoveTagsOutput) RemoveTags(*emr.RemoveTagsInput) (*emr.RemoveTagsOutput, error) RunJobFlowRequest(*emr.RunJobFlowInput) (*request.Request, *emr.RunJobFlowOutput) RunJobFlow(*emr.RunJobFlowInput) (*emr.RunJobFlowOutput, error) SetTerminationProtectionRequest(*emr.SetTerminationProtectionInput) (*request.Request, *emr.SetTerminationProtectionOutput) SetTerminationProtection(*emr.SetTerminationProtectionInput) (*emr.SetTerminationProtectionOutput, error) SetVisibleToAllUsersRequest(*emr.SetVisibleToAllUsersInput) (*request.Request, *emr.SetVisibleToAllUsersOutput) SetVisibleToAllUsers(*emr.SetVisibleToAllUsersInput) (*emr.SetVisibleToAllUsersOutput, error) TerminateJobFlowsRequest(*emr.TerminateJobFlowsInput) (*request.Request, *emr.TerminateJobFlowsOutput) TerminateJobFlows(*emr.TerminateJobFlowsInput) (*emr.TerminateJobFlowsOutput, error) WaitUntilClusterRunning(*emr.DescribeClusterInput) error WaitUntilStepComplete(*emr.DescribeStepInput) error } var _ EMRAPI = (*emr.EMR)(nil) aws-sdk-go-1.4.22/service/emr/examples_test.go000066400000000000000000000474541300374646400212300ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package emr_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/emr" ) var _ time.Duration var _ bytes.Buffer func ExampleEMR_AddInstanceGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.AddInstanceGroupsInput{ InstanceGroups: []*emr.InstanceGroupConfig{ // Required { // Required InstanceCount: aws.Int64(1), // Required InstanceRole: aws.String("InstanceRoleType"), // Required InstanceType: aws.String("InstanceType"), // Required BidPrice: aws.String("XmlStringMaxLen256"), Configurations: []*emr.Configuration{ { // Required Classification: aws.String("String"), Configurations: []*emr.Configuration{ // Recursive values... }, Properties: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, }, // More values... }, EbsConfiguration: &emr.EbsConfiguration{ EbsBlockDeviceConfigs: []*emr.EbsBlockDeviceConfig{ { // Required VolumeSpecification: &emr.VolumeSpecification{ // Required SizeInGB: aws.Int64(1), // Required VolumeType: aws.String("String"), // Required Iops: aws.Int64(1), }, VolumesPerInstance: aws.Int64(1), }, // More values... }, EbsOptimized: aws.Bool(true), }, Market: aws.String("MarketType"), Name: aws.String("XmlStringMaxLen256"), }, // More values... }, JobFlowId: aws.String("XmlStringMaxLen256"), // Required } resp, err := svc.AddInstanceGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_AddJobFlowSteps() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.AddJobFlowStepsInput{ JobFlowId: aws.String("XmlStringMaxLen256"), // Required Steps: []*emr.StepConfig{ // Required { // Required HadoopJarStep: &emr.HadoopJarStepConfig{ // Required Jar: aws.String("XmlString"), // Required Args: []*string{ aws.String("XmlString"), // Required // More values... }, MainClass: aws.String("XmlString"), Properties: []*emr.KeyValue{ { // Required Key: aws.String("XmlString"), Value: aws.String("XmlString"), }, // More values... }, }, Name: aws.String("XmlStringMaxLen256"), // Required ActionOnFailure: aws.String("ActionOnFailure"), }, // More values... }, } resp, err := svc.AddJobFlowSteps(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_AddTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.AddTagsInput{ ResourceId: aws.String("ResourceId"), // Required Tags: []*emr.Tag{ // Required { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.AddTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_CreateSecurityConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.CreateSecurityConfigurationInput{ Name: aws.String("XmlString"), // Required SecurityConfiguration: aws.String("String"), // Required } resp, err := svc.CreateSecurityConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_DeleteSecurityConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.DeleteSecurityConfigurationInput{ Name: aws.String("XmlString"), // Required } resp, err := svc.DeleteSecurityConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_DescribeCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.DescribeClusterInput{ ClusterId: aws.String("ClusterId"), // Required } resp, err := svc.DescribeCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_DescribeJobFlows() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.DescribeJobFlowsInput{ CreatedAfter: aws.Time(time.Now()), CreatedBefore: aws.Time(time.Now()), JobFlowIds: []*string{ aws.String("XmlString"), // Required // More values... }, JobFlowStates: []*string{ aws.String("JobFlowExecutionState"), // Required // More values... }, } resp, err := svc.DescribeJobFlows(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_DescribeSecurityConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.DescribeSecurityConfigurationInput{ Name: aws.String("XmlString"), // Required } resp, err := svc.DescribeSecurityConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_DescribeStep() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.DescribeStepInput{ ClusterId: aws.String("ClusterId"), // Required StepId: aws.String("StepId"), // Required } resp, err := svc.DescribeStep(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_ListBootstrapActions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.ListBootstrapActionsInput{ ClusterId: aws.String("ClusterId"), // Required Marker: aws.String("Marker"), } resp, err := svc.ListBootstrapActions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_ListClusters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.ListClustersInput{ ClusterStates: []*string{ aws.String("ClusterState"), // Required // More values... }, CreatedAfter: aws.Time(time.Now()), CreatedBefore: aws.Time(time.Now()), Marker: aws.String("Marker"), } resp, err := svc.ListClusters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_ListInstanceGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.ListInstanceGroupsInput{ ClusterId: aws.String("ClusterId"), // Required Marker: aws.String("Marker"), } resp, err := svc.ListInstanceGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_ListInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.ListInstancesInput{ ClusterId: aws.String("ClusterId"), // Required InstanceGroupId: aws.String("InstanceGroupId"), InstanceGroupTypes: []*string{ aws.String("InstanceGroupType"), // Required // More values... }, InstanceStates: []*string{ aws.String("InstanceState"), // Required // More values... }, Marker: aws.String("Marker"), } resp, err := svc.ListInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_ListSecurityConfigurations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.ListSecurityConfigurationsInput{ Marker: aws.String("Marker"), } resp, err := svc.ListSecurityConfigurations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_ListSteps() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.ListStepsInput{ ClusterId: aws.String("ClusterId"), // Required Marker: aws.String("Marker"), StepIds: []*string{ aws.String("XmlString"), // Required // More values... }, StepStates: []*string{ aws.String("StepState"), // Required // More values... }, } resp, err := svc.ListSteps(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_ModifyInstanceGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.ModifyInstanceGroupsInput{ InstanceGroups: []*emr.InstanceGroupModifyConfig{ { // Required InstanceGroupId: aws.String("XmlStringMaxLen256"), // Required EC2InstanceIdsToTerminate: []*string{ aws.String("InstanceId"), // Required // More values... }, InstanceCount: aws.Int64(1), ShrinkPolicy: &emr.ShrinkPolicy{ DecommissionTimeout: aws.Int64(1), InstanceResizePolicy: &emr.InstanceResizePolicy{ InstanceTerminationTimeout: aws.Int64(1), InstancesToProtect: []*string{ aws.String("InstanceId"), // Required // More values... }, InstancesToTerminate: []*string{ aws.String("InstanceId"), // Required // More values... }, }, }, }, // More values... }, } resp, err := svc.ModifyInstanceGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_RemoveTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.RemoveTagsInput{ ResourceId: aws.String("ResourceId"), // Required TagKeys: []*string{ // Required aws.String("String"), // Required // More values... }, } resp, err := svc.RemoveTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_RunJobFlow() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.RunJobFlowInput{ Instances: &emr.JobFlowInstancesConfig{ // Required AdditionalMasterSecurityGroups: []*string{ aws.String("XmlStringMaxLen256"), // Required // More values... }, AdditionalSlaveSecurityGroups: []*string{ aws.String("XmlStringMaxLen256"), // Required // More values... }, Ec2KeyName: aws.String("XmlStringMaxLen256"), Ec2SubnetId: aws.String("XmlStringMaxLen256"), EmrManagedMasterSecurityGroup: aws.String("XmlStringMaxLen256"), EmrManagedSlaveSecurityGroup: aws.String("XmlStringMaxLen256"), HadoopVersion: aws.String("XmlStringMaxLen256"), InstanceCount: aws.Int64(1), InstanceGroups: []*emr.InstanceGroupConfig{ { // Required InstanceCount: aws.Int64(1), // Required InstanceRole: aws.String("InstanceRoleType"), // Required InstanceType: aws.String("InstanceType"), // Required BidPrice: aws.String("XmlStringMaxLen256"), Configurations: []*emr.Configuration{ { // Required Classification: aws.String("String"), Configurations: []*emr.Configuration{ // Recursive values... }, Properties: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, }, // More values... }, EbsConfiguration: &emr.EbsConfiguration{ EbsBlockDeviceConfigs: []*emr.EbsBlockDeviceConfig{ { // Required VolumeSpecification: &emr.VolumeSpecification{ // Required SizeInGB: aws.Int64(1), // Required VolumeType: aws.String("String"), // Required Iops: aws.Int64(1), }, VolumesPerInstance: aws.Int64(1), }, // More values... }, EbsOptimized: aws.Bool(true), }, Market: aws.String("MarketType"), Name: aws.String("XmlStringMaxLen256"), }, // More values... }, KeepJobFlowAliveWhenNoSteps: aws.Bool(true), MasterInstanceType: aws.String("InstanceType"), Placement: &emr.PlacementType{ AvailabilityZone: aws.String("XmlString"), // Required }, ServiceAccessSecurityGroup: aws.String("XmlStringMaxLen256"), SlaveInstanceType: aws.String("InstanceType"), TerminationProtected: aws.Bool(true), }, Name: aws.String("XmlStringMaxLen256"), // Required AdditionalInfo: aws.String("XmlString"), AmiVersion: aws.String("XmlStringMaxLen256"), Applications: []*emr.Application{ { // Required AdditionalInfo: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, Args: []*string{ aws.String("String"), // Required // More values... }, Name: aws.String("String"), Version: aws.String("String"), }, // More values... }, BootstrapActions: []*emr.BootstrapActionConfig{ { // Required Name: aws.String("XmlStringMaxLen256"), // Required ScriptBootstrapAction: &emr.ScriptBootstrapActionConfig{ // Required Path: aws.String("XmlString"), // Required Args: []*string{ aws.String("XmlString"), // Required // More values... }, }, }, // More values... }, Configurations: []*emr.Configuration{ { // Required Classification: aws.String("String"), Configurations: []*emr.Configuration{ // Recursive values... }, Properties: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, }, // More values... }, JobFlowRole: aws.String("XmlString"), LogUri: aws.String("XmlString"), NewSupportedProducts: []*emr.SupportedProductConfig{ { // Required Args: []*string{ aws.String("XmlString"), // Required // More values... }, Name: aws.String("XmlStringMaxLen256"), }, // More values... }, ReleaseLabel: aws.String("XmlStringMaxLen256"), SecurityConfiguration: aws.String("XmlString"), ServiceRole: aws.String("XmlString"), Steps: []*emr.StepConfig{ { // Required HadoopJarStep: &emr.HadoopJarStepConfig{ // Required Jar: aws.String("XmlString"), // Required Args: []*string{ aws.String("XmlString"), // Required // More values... }, MainClass: aws.String("XmlString"), Properties: []*emr.KeyValue{ { // Required Key: aws.String("XmlString"), Value: aws.String("XmlString"), }, // More values... }, }, Name: aws.String("XmlStringMaxLen256"), // Required ActionOnFailure: aws.String("ActionOnFailure"), }, // More values... }, SupportedProducts: []*string{ aws.String("XmlStringMaxLen256"), // Required // More values... }, Tags: []*emr.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, VisibleToAllUsers: aws.Bool(true), } resp, err := svc.RunJobFlow(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_SetTerminationProtection() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.SetTerminationProtectionInput{ JobFlowIds: []*string{ // Required aws.String("XmlString"), // Required // More values... }, TerminationProtected: aws.Bool(true), // Required } resp, err := svc.SetTerminationProtection(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_SetVisibleToAllUsers() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.SetVisibleToAllUsersInput{ JobFlowIds: []*string{ // Required aws.String("XmlString"), // Required // More values... }, VisibleToAllUsers: aws.Bool(true), // Required } resp, err := svc.SetVisibleToAllUsers(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleEMR_TerminateJobFlows() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := emr.New(sess) params := &emr.TerminateJobFlowsInput{ JobFlowIds: []*string{ // Required aws.String("XmlString"), // Required // More values... }, } resp, err := svc.TerminateJobFlows(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/emr/service.go000066400000000000000000000057001300374646400177770ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package emr import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Amazon Elastic MapReduce (Amazon EMR) is a web service that makes it easy // to process large amounts of data efficiently. Amazon EMR uses Hadoop processing // combined with several AWS products to do tasks such as web indexing, data // mining, log file analysis, machine learning, scientific simulation, and data // warehousing. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type EMR struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "elasticmapreduce" // New creates a new instance of the EMR client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a EMR client from just a session. // svc := emr.New(mySession) // // // Create a EMR client with additional configuration // svc := emr.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *EMR { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *EMR { svc := &EMR{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2009-03-31", JSONVersion: "1.1", TargetPrefix: "ElasticMapReduce", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a EMR operation and runs any // custom request initialization. func (c *EMR) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/emr/waiters.go000066400000000000000000000041761300374646400200230ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package emr import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilClusterRunning uses the Amazon EMR API operation // DescribeCluster to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EMR) WaitUntilClusterRunning(input *DescribeClusterInput) error { waiterCfg := waiter.Config{ Operation: "DescribeCluster", Delay: 30, MaxAttempts: 60, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "path", Argument: "Cluster.Status.State", Expected: "RUNNING", }, { State: "success", Matcher: "path", Argument: "Cluster.Status.State", Expected: "WAITING", }, { State: "failure", Matcher: "path", Argument: "Cluster.Status.State", Expected: "TERMINATING", }, { State: "failure", Matcher: "path", Argument: "Cluster.Status.State", Expected: "TERMINATED", }, { State: "failure", Matcher: "path", Argument: "Cluster.Status.State", Expected: "TERMINATED_WITH_ERRORS", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilStepComplete uses the Amazon EMR API operation // DescribeStep to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *EMR) WaitUntilStepComplete(input *DescribeStepInput) error { waiterCfg := waiter.Config{ Operation: "DescribeStep", Delay: 30, MaxAttempts: 60, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "path", Argument: "Step.Status.State", Expected: "COMPLETED", }, { State: "failure", Matcher: "path", Argument: "Step.Status.State", Expected: "FAILED", }, { State: "failure", Matcher: "path", Argument: "Step.Status.State", Expected: "CANCELLED", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/firehose/000077500000000000000000000000001300374646400170275ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/firehose/api.go000066400000000000000000002507511300374646400201410ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package firehose provides a client for Amazon Kinesis Firehose. package firehose import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opCreateDeliveryStream = "CreateDeliveryStream" // CreateDeliveryStreamRequest generates a "aws/request.Request" representing the // client's request for the CreateDeliveryStream operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDeliveryStream for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDeliveryStream method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDeliveryStreamRequest method. // req, resp := client.CreateDeliveryStreamRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Firehose) CreateDeliveryStreamRequest(input *CreateDeliveryStreamInput) (req *request.Request, output *CreateDeliveryStreamOutput) { op := &request.Operation{ Name: opCreateDeliveryStream, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDeliveryStreamInput{} } req = c.newRequest(op, input, output) output = &CreateDeliveryStreamOutput{} req.Data = output return } // CreateDeliveryStream API operation for Amazon Kinesis Firehose. // // Creates a delivery stream. // // CreateDeliveryStream is an asynchronous operation that immediately returns. // The initial status of the delivery stream is CREATING. After the delivery // stream is created, its status is ACTIVE and it now accepts data. Attempts // to send data to a delivery stream that is not in the ACTIVE state cause an // exception. To check the state of a delivery stream, use DescribeDeliveryStream. // // The name of a delivery stream identifies it. You can't have two delivery // streams with the same name in the same region. Two delivery streams in different // AWS accounts or different regions in the same AWS account can have the same // name. // // By default, you can create up to 20 delivery streams per region. // // A delivery stream can only be configured with a single destination, Amazon // S3, Amazon Elasticsearch Service, or Amazon Redshift. For correct CreateDeliveryStream // request syntax, specify only one destination configuration parameter: either // S3DestinationConfiguration, ElasticsearchDestinationConfiguration, or RedshiftDestinationConfiguration. // // As part of S3DestinationConfiguration, optional values BufferingHints, EncryptionConfiguration, // and CompressionFormat can be provided. By default, if no BufferingHints value // is provided, Firehose buffers data up to 5 MB or for 5 minutes, whichever // condition is satisfied first. Note that BufferingHints is a hint, so there // are some cases where the service cannot adhere to these conditions strictly; // for example, record boundaries are such that the size is a little over or // under the configured buffering size. By default, no encryption is performed. // We strongly recommend that you enable encryption to ensure secure data storage // in Amazon S3. // // A few notes about RedshiftDestinationConfiguration: // // * An Amazon Redshift destination requires an S3 bucket as intermediate // location, as Firehose first delivers data to S3 and then uses COPY syntax // to load data into an Amazon Redshift table. This is specified in the RedshiftDestinationConfiguration.S3Configuration // parameter element. // // * The compression formats SNAPPY or ZIP cannot be specified in RedshiftDestinationConfiguration.S3Configuration // because the Amazon Redshift COPY operation that reads from the S3 bucket // doesn't support these compression formats. // // * We strongly recommend that the username and password provided is used // exclusively for Firehose purposes, and that the permissions for the account // are restricted for Amazon Redshift INSERT permissions. // // Firehose assumes the IAM role that is configured as part of destinations. // The IAM role should allow the Firehose principal to assume the role, and // the role should have permissions that allows the service to deliver the data. // For more information, see Amazon S3 Bucket Access (http://docs.aws.amazon.com/firehose/latest/dev/controlling-access.html#using-iam-s3) // in the Amazon Kinesis Firehose Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Firehose's // API operation CreateDeliveryStream for usage and error information. // // Returned Error Codes: // * InvalidArgumentException // The specified input parameter has an value that is not valid. // // * LimitExceededException // You have already reached the limit for a requested resource. // // * ResourceInUseException // The resource is already in use and not available for this operation. // func (c *Firehose) CreateDeliveryStream(input *CreateDeliveryStreamInput) (*CreateDeliveryStreamOutput, error) { req, out := c.CreateDeliveryStreamRequest(input) err := req.Send() return out, err } const opDeleteDeliveryStream = "DeleteDeliveryStream" // DeleteDeliveryStreamRequest generates a "aws/request.Request" representing the // client's request for the DeleteDeliveryStream operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDeliveryStream for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDeliveryStream method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDeliveryStreamRequest method. // req, resp := client.DeleteDeliveryStreamRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Firehose) DeleteDeliveryStreamRequest(input *DeleteDeliveryStreamInput) (req *request.Request, output *DeleteDeliveryStreamOutput) { op := &request.Operation{ Name: opDeleteDeliveryStream, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDeliveryStreamInput{} } req = c.newRequest(op, input, output) output = &DeleteDeliveryStreamOutput{} req.Data = output return } // DeleteDeliveryStream API operation for Amazon Kinesis Firehose. // // Deletes a delivery stream and its data. // // You can delete a delivery stream only if it is in ACTIVE or DELETING state, // and not in the CREATING state. While the deletion request is in process, // the delivery stream is in the DELETING state. // // To check the state of a delivery stream, use DescribeDeliveryStream. // // While the delivery stream is DELETING state, the service may continue to // accept the records, but the service doesn't make any guarantees with respect // to delivering the data. Therefore, as a best practice, you should first stop // any applications that are sending records before deleting a delivery stream. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Firehose's // API operation DeleteDeliveryStream for usage and error information. // // Returned Error Codes: // * ResourceInUseException // The resource is already in use and not available for this operation. // // * ResourceNotFoundException // The specified resource could not be found. // func (c *Firehose) DeleteDeliveryStream(input *DeleteDeliveryStreamInput) (*DeleteDeliveryStreamOutput, error) { req, out := c.DeleteDeliveryStreamRequest(input) err := req.Send() return out, err } const opDescribeDeliveryStream = "DescribeDeliveryStream" // DescribeDeliveryStreamRequest generates a "aws/request.Request" representing the // client's request for the DescribeDeliveryStream operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDeliveryStream for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDeliveryStream method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDeliveryStreamRequest method. // req, resp := client.DescribeDeliveryStreamRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Firehose) DescribeDeliveryStreamRequest(input *DescribeDeliveryStreamInput) (req *request.Request, output *DescribeDeliveryStreamOutput) { op := &request.Operation{ Name: opDescribeDeliveryStream, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeDeliveryStreamInput{} } req = c.newRequest(op, input, output) output = &DescribeDeliveryStreamOutput{} req.Data = output return } // DescribeDeliveryStream API operation for Amazon Kinesis Firehose. // // Describes the specified delivery stream and gets the status. For example, // after your delivery stream is created, call DescribeDeliveryStream to see // if the delivery stream is ACTIVE and therefore ready for data to be sent // to it. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Firehose's // API operation DescribeDeliveryStream for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource could not be found. // func (c *Firehose) DescribeDeliveryStream(input *DescribeDeliveryStreamInput) (*DescribeDeliveryStreamOutput, error) { req, out := c.DescribeDeliveryStreamRequest(input) err := req.Send() return out, err } const opListDeliveryStreams = "ListDeliveryStreams" // ListDeliveryStreamsRequest generates a "aws/request.Request" representing the // client's request for the ListDeliveryStreams operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDeliveryStreams for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDeliveryStreams method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDeliveryStreamsRequest method. // req, resp := client.ListDeliveryStreamsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Firehose) ListDeliveryStreamsRequest(input *ListDeliveryStreamsInput) (req *request.Request, output *ListDeliveryStreamsOutput) { op := &request.Operation{ Name: opListDeliveryStreams, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListDeliveryStreamsInput{} } req = c.newRequest(op, input, output) output = &ListDeliveryStreamsOutput{} req.Data = output return } // ListDeliveryStreams API operation for Amazon Kinesis Firehose. // // Lists your delivery streams. // // The number of delivery streams might be too large to return using a single // call to ListDeliveryStreams. You can limit the number of delivery streams // returned, using the Limit parameter. To determine whether there are more // delivery streams to list, check the value of HasMoreDeliveryStreams in the // output. If there are more delivery streams to list, you can request them // by specifying the name of the last delivery stream returned in the call in // the ExclusiveStartDeliveryStreamName parameter of a subsequent call. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Firehose's // API operation ListDeliveryStreams for usage and error information. func (c *Firehose) ListDeliveryStreams(input *ListDeliveryStreamsInput) (*ListDeliveryStreamsOutput, error) { req, out := c.ListDeliveryStreamsRequest(input) err := req.Send() return out, err } const opPutRecord = "PutRecord" // PutRecordRequest generates a "aws/request.Request" representing the // client's request for the PutRecord operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutRecord for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutRecord method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutRecordRequest method. // req, resp := client.PutRecordRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Firehose) PutRecordRequest(input *PutRecordInput) (req *request.Request, output *PutRecordOutput) { op := &request.Operation{ Name: opPutRecord, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutRecordInput{} } req = c.newRequest(op, input, output) output = &PutRecordOutput{} req.Data = output return } // PutRecord API operation for Amazon Kinesis Firehose. // // Writes a single data record into an Amazon Kinesis Firehose delivery stream. // To write multiple data records into a delivery stream, use PutRecordBatch. // Applications using these operations are referred to as producers. // // By default, each delivery stream can take in up to 2,000 transactions per // second, 5,000 records per second, or 5 MB per second. Note that if you use // PutRecord and PutRecordBatch, the limits are an aggregate across these two // operations for each delivery stream. For more information about limits and // how to request an increase, see Amazon Kinesis Firehose Limits (http://docs.aws.amazon.com/firehose/latest/dev/limits.html). // // You must specify the name of the delivery stream and the data record when // using PutRecord. The data record consists of a data blob that can be up to // 1,000 KB in size, and any kind of data, for example, a segment from a log // file, geographic location data, web site clickstream data, etc. // // Firehose buffers records before delivering them to the destination. To disambiguate // the data blobs at the destination, a common solution is to use delimiters // in the data, such as a newline (\n) or some other character unique within // the data. This allows the consumer application(s) to parse individual data // items when reading the data from the destination. // // The PutRecord operation returns a RecordId, which is a unique string assigned // to each record. Producer applications can use this ID for purposes such as // auditability and investigation. // // If the PutRecord operation throws a ServiceUnavailableException, back off // and retry. If the exception persists, it is possible that the throughput // limits have been exceeded for the delivery stream. // // Data records sent to Firehose are stored for 24 hours from the time they // are added to a delivery stream as it attempts to send the records to the // destination. If the destination is unreachable for more than 24 hours, the // data is no longer available. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Firehose's // API operation PutRecord for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource could not be found. // // * InvalidArgumentException // The specified input parameter has an value that is not valid. // // * ServiceUnavailableException // The service is unavailable, back off and retry the operation. If you continue // to see the exception, throughput limits for the delivery stream may have // been exceeded. For more information about limits and how to request an increase, // see Amazon Kinesis Firehose Limits (http://docs.aws.amazon.com/firehose/latest/dev/limits.html). // func (c *Firehose) PutRecord(input *PutRecordInput) (*PutRecordOutput, error) { req, out := c.PutRecordRequest(input) err := req.Send() return out, err } const opPutRecordBatch = "PutRecordBatch" // PutRecordBatchRequest generates a "aws/request.Request" representing the // client's request for the PutRecordBatch operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutRecordBatch for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutRecordBatch method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutRecordBatchRequest method. // req, resp := client.PutRecordBatchRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Firehose) PutRecordBatchRequest(input *PutRecordBatchInput) (req *request.Request, output *PutRecordBatchOutput) { op := &request.Operation{ Name: opPutRecordBatch, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutRecordBatchInput{} } req = c.newRequest(op, input, output) output = &PutRecordBatchOutput{} req.Data = output return } // PutRecordBatch API operation for Amazon Kinesis Firehose. // // Writes multiple data records into a delivery stream in a single call, which // can achieve higher throughput per producer than when writing single records. // To write single data records into a delivery stream, use PutRecord. Applications // using these operations are referred to as producers. // // Each PutRecordBatch request supports up to 500 records. Each record in the // request can be as large as 1,000 KB (before 64-bit encoding), up to a limit // of 4 MB for the entire request. By default, each delivery stream can take // in up to 2,000 transactions per second, 5,000 records per second, or 5 MB // per second. Note that if you use PutRecord and PutRecordBatch, the limits // are an aggregate across these two operations for each delivery stream. For // more information about limits and how to request an increase, see Amazon // Kinesis Firehose Limits (http://docs.aws.amazon.com/firehose/latest/dev/limits.html). // // You must specify the name of the delivery stream and the data record when // using PutRecord. The data record consists of a data blob that can be up to // 1,000 KB in size, and any kind of data, for example, a segment from a log // file, geographic location data, web site clickstream data, and so on. // // Firehose buffers records before delivering them to the destination. To disambiguate // the data blobs at the destination, a common solution is to use delimiters // in the data, such as a newline (\n) or some other character unique within // the data. This allows the consumer application(s) to parse individual data // items when reading the data from the destination. // // The PutRecordBatch response includes a count of any failed records, FailedPutCount, // and an array of responses, RequestResponses. The FailedPutCount value is // a count of records that failed. Each entry in the RequestResponses array // gives additional information of the processed record. Each entry in RequestResponses // directly correlates with a record in the request array using the same ordering, // from the top to the bottom of the request and response. RequestResponses // always includes the same number of records as the request array. RequestResponses // both successfully and unsuccessfully processed records. Firehose attempts // to process all records in each PutRecordBatch request. A single record failure // does not stop the processing of subsequent records. // // A successfully processed record includes a RecordId value, which is a unique // value identified for the record. An unsuccessfully processed record includes // ErrorCode and ErrorMessage values. ErrorCode reflects the type of error and // is one of the following values: ServiceUnavailable or InternalFailure. ErrorMessage // provides more detailed information about the error. // // If FailedPutCount is greater than 0 (zero), retry the request. A retry of // the entire batch of records is possible; however, we strongly recommend that // you inspect the entire response and resend only those records that failed // processing. This minimizes duplicate records and also reduces the total bytes // sent (and corresponding charges). // // If the PutRecordBatch operation throws a ServiceUnavailableException, back // off and retry. If the exception persists, it is possible that the throughput // limits have been exceeded for the delivery stream. // // Data records sent to Firehose are stored for 24 hours from the time they // are added to a delivery stream as it attempts to send the records to the // destination. If the destination is unreachable for more than 24 hours, the // data is no longer available. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Firehose's // API operation PutRecordBatch for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource could not be found. // // * InvalidArgumentException // The specified input parameter has an value that is not valid. // // * ServiceUnavailableException // The service is unavailable, back off and retry the operation. If you continue // to see the exception, throughput limits for the delivery stream may have // been exceeded. For more information about limits and how to request an increase, // see Amazon Kinesis Firehose Limits (http://docs.aws.amazon.com/firehose/latest/dev/limits.html). // func (c *Firehose) PutRecordBatch(input *PutRecordBatchInput) (*PutRecordBatchOutput, error) { req, out := c.PutRecordBatchRequest(input) err := req.Send() return out, err } const opUpdateDestination = "UpdateDestination" // UpdateDestinationRequest generates a "aws/request.Request" representing the // client's request for the UpdateDestination operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateDestination for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateDestination method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateDestinationRequest method. // req, resp := client.UpdateDestinationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Firehose) UpdateDestinationRequest(input *UpdateDestinationInput) (req *request.Request, output *UpdateDestinationOutput) { op := &request.Operation{ Name: opUpdateDestination, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateDestinationInput{} } req = c.newRequest(op, input, output) output = &UpdateDestinationOutput{} req.Data = output return } // UpdateDestination API operation for Amazon Kinesis Firehose. // // Updates the specified destination of the specified delivery stream. Note: // Switching between Elasticsearch and other services is not supported. For // Elasticsearch destination, you can only update an existing Elasticsearch // destination with this operation. // // This operation can be used to change the destination type (for example, to // replace the Amazon S3 destination with Amazon Redshift) or change the parameters // associated with a given destination (for example, to change the bucket name // of the Amazon S3 destination). The update may not occur immediately. The // target delivery stream remains active while the configurations are updated, // so data writes to the delivery stream can continue during this process. The // updated configurations are normally effective within a few minutes. // // If the destination type is the same, Firehose merges the configuration parameters // specified in the UpdateDestination request with the destination configuration // that already exists on the delivery stream. If any of the parameters are // not specified in the update request, then the existing configuration parameters // are retained. For example, in the Amazon S3 destination, if EncryptionConfiguration // is not specified then the existing EncryptionConfiguration is maintained // on the destination. // // If the destination type is not the same, for example, changing the destination // from Amazon S3 to Amazon Redshift, Firehose does not merge any parameters. // In this case, all parameters must be specified. // // Firehose uses the CurrentDeliveryStreamVersionId to avoid race conditions // and conflicting merges. This is a required field in every request and the // service only updates the configuration if the existing configuration matches // the VersionId. After the update is applied successfully, the VersionId is // updated, which can be retrieved with the DescribeDeliveryStream operation. // The new VersionId should be uses to set CurrentDeliveryStreamVersionId in // the next UpdateDestination operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Firehose's // API operation UpdateDestination for usage and error information. // // Returned Error Codes: // * InvalidArgumentException // The specified input parameter has an value that is not valid. // // * ResourceInUseException // The resource is already in use and not available for this operation. // // * ResourceNotFoundException // The specified resource could not be found. // // * ConcurrentModificationException // Another modification has already happened. Fetch VersionId again and use // it to update the destination. // func (c *Firehose) UpdateDestination(input *UpdateDestinationInput) (*UpdateDestinationOutput, error) { req, out := c.UpdateDestinationRequest(input) err := req.Send() return out, err } // Describes hints for the buffering to perform before delivering data to the // destination. Please note that these options are treated as hints, and therefore // Firehose may choose to use different values when it is optimal. type BufferingHints struct { _ struct{} `type:"structure"` // Buffer incoming data for the specified period of time, in seconds, before // delivering it to the destination. The default value is 300. IntervalInSeconds *int64 `min:"60" type:"integer"` // Buffer incoming data to the specified size, in MBs, before delivering it // to the destination. The default value is 5. // // We recommend setting SizeInMBs to a value greater than the amount of data // you typically ingest into the delivery stream in 10 seconds. For example, // if you typically ingest data at 1 MB/sec set SizeInMBs to be 10 MB or higher. SizeInMBs *int64 `min:"1" type:"integer"` } // String returns the string representation func (s BufferingHints) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BufferingHints) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BufferingHints) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BufferingHints"} if s.IntervalInSeconds != nil && *s.IntervalInSeconds < 60 { invalidParams.Add(request.NewErrParamMinValue("IntervalInSeconds", 60)) } if s.SizeInMBs != nil && *s.SizeInMBs < 1 { invalidParams.Add(request.NewErrParamMinValue("SizeInMBs", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes CloudWatch logging options for your delivery stream. type CloudWatchLoggingOptions struct { _ struct{} `type:"structure"` // Enables or disables CloudWatch logging. Enabled *bool `type:"boolean"` // The CloudWatch group name for logging. This value is required if Enabled // is true. LogGroupName *string `type:"string"` // The CloudWatch log stream name for logging. This value is required if Enabled // is true. LogStreamName *string `type:"string"` } // String returns the string representation func (s CloudWatchLoggingOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CloudWatchLoggingOptions) GoString() string { return s.String() } // Describes a COPY command for Amazon Redshift. type CopyCommand struct { _ struct{} `type:"structure"` // Optional parameters to use with the Amazon Redshift COPY command. For more // information, see the "Optional Parameters" section of Amazon Redshift COPY // command (http://docs.aws.amazon.com/redshift/latest/dg/r_COPY.html). Some // possible examples that would apply to Firehose are as follows. // // delimiter '\t' lzop; - fields are delimited with "\t" (TAB character) and // compressed using lzop. // // delimiter '| - fields are delimited with "|" (this is the default delimiter). // // delimiter '|' escape - the delimiter should be escaped. // // fixedwidth 'venueid:3,venuename:25,venuecity:12,venuestate:2,venueseats:6' // - fields are fixed width in the source, with each width specified after every // column in the table. // // JSON 's3://mybucket/jsonpaths.txt' - data is in JSON format, and the path // specified is the format of the data. // // For more examples, see Amazon Redshift COPY command examples (http://docs.aws.amazon.com/redshift/latest/dg/r_COPY_command_examples.html). CopyOptions *string `type:"string"` // A comma-separated list of column names. DataTableColumns *string `type:"string"` // The name of the target table. The table must already exist in the database. // // DataTableName is a required field DataTableName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CopyCommand) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyCommand) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CopyCommand) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CopyCommand"} if s.DataTableName == nil { invalidParams.Add(request.NewErrParamRequired("DataTableName")) } if s.DataTableName != nil && len(*s.DataTableName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DataTableName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for CreateDeliveryStream. type CreateDeliveryStreamInput struct { _ struct{} `type:"structure"` // The name of the delivery stream. // // DeliveryStreamName is a required field DeliveryStreamName *string `min:"1" type:"string" required:"true"` // The destination in Amazon ES. This value cannot be specified if Amazon S3 // or Amazon Redshift is the desired destination (see restrictions listed above). ElasticsearchDestinationConfiguration *ElasticsearchDestinationConfiguration `type:"structure"` // The destination in Amazon Redshift. This value cannot be specified if Amazon // S3 or Amazon Elasticsearch is the desired destination (see restrictions listed // above). RedshiftDestinationConfiguration *RedshiftDestinationConfiguration `type:"structure"` // The destination in Amazon S3. This value must be specified if ElasticsearchDestinationConfiguration // or RedshiftDestinationConfiguration is specified (see restrictions listed // above). S3DestinationConfiguration *S3DestinationConfiguration `type:"structure"` } // String returns the string representation func (s CreateDeliveryStreamInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDeliveryStreamInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDeliveryStreamInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDeliveryStreamInput"} if s.DeliveryStreamName == nil { invalidParams.Add(request.NewErrParamRequired("DeliveryStreamName")) } if s.DeliveryStreamName != nil && len(*s.DeliveryStreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeliveryStreamName", 1)) } if s.ElasticsearchDestinationConfiguration != nil { if err := s.ElasticsearchDestinationConfiguration.Validate(); err != nil { invalidParams.AddNested("ElasticsearchDestinationConfiguration", err.(request.ErrInvalidParams)) } } if s.RedshiftDestinationConfiguration != nil { if err := s.RedshiftDestinationConfiguration.Validate(); err != nil { invalidParams.AddNested("RedshiftDestinationConfiguration", err.(request.ErrInvalidParams)) } } if s.S3DestinationConfiguration != nil { if err := s.S3DestinationConfiguration.Validate(); err != nil { invalidParams.AddNested("S3DestinationConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of CreateDeliveryStream. type CreateDeliveryStreamOutput struct { _ struct{} `type:"structure"` // The ARN of the delivery stream. DeliveryStreamARN *string `type:"string"` } // String returns the string representation func (s CreateDeliveryStreamOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDeliveryStreamOutput) GoString() string { return s.String() } // Contains the parameters for DeleteDeliveryStream. type DeleteDeliveryStreamInput struct { _ struct{} `type:"structure"` // The name of the delivery stream. // // DeliveryStreamName is a required field DeliveryStreamName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteDeliveryStreamInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDeliveryStreamInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDeliveryStreamInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDeliveryStreamInput"} if s.DeliveryStreamName == nil { invalidParams.Add(request.NewErrParamRequired("DeliveryStreamName")) } if s.DeliveryStreamName != nil && len(*s.DeliveryStreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeliveryStreamName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DeleteDeliveryStream. type DeleteDeliveryStreamOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteDeliveryStreamOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDeliveryStreamOutput) GoString() string { return s.String() } // Contains information about a delivery stream. type DeliveryStreamDescription struct { _ struct{} `type:"structure"` // The date and time that the delivery stream was created. CreateTimestamp *time.Time `type:"timestamp" timestampFormat:"unix"` // The Amazon Resource Name (ARN) of the delivery stream. // // DeliveryStreamARN is a required field DeliveryStreamARN *string `type:"string" required:"true"` // The name of the delivery stream. // // DeliveryStreamName is a required field DeliveryStreamName *string `min:"1" type:"string" required:"true"` // The status of the delivery stream. // // DeliveryStreamStatus is a required field DeliveryStreamStatus *string `type:"string" required:"true" enum:"DeliveryStreamStatus"` // The destinations. // // Destinations is a required field Destinations []*DestinationDescription `type:"list" required:"true"` // Indicates whether there are more destinations available to list. // // HasMoreDestinations is a required field HasMoreDestinations *bool `type:"boolean" required:"true"` // The date and time that the delivery stream was last updated. LastUpdateTimestamp *time.Time `type:"timestamp" timestampFormat:"unix"` // Used when calling the UpdateDestination operation. Each time the destination // is updated for the delivery stream, the VersionId is changed, and the current // VersionId is required when updating the destination. This is so that the // service knows it is applying the changes to the correct version of the delivery // stream. // // VersionId is a required field VersionId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeliveryStreamDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeliveryStreamDescription) GoString() string { return s.String() } // Contains the parameters for DescribeDeliveryStream. type DescribeDeliveryStreamInput struct { _ struct{} `type:"structure"` // The name of the delivery stream. // // DeliveryStreamName is a required field DeliveryStreamName *string `min:"1" type:"string" required:"true"` // Specifies the destination ID to start returning the destination information. // Currently Firehose supports one destination per delivery stream. ExclusiveStartDestinationId *string `min:"1" type:"string"` // The limit on the number of destinations to return. Currently, you can have // one destination per delivery stream. Limit *int64 `min:"1" type:"integer"` } // String returns the string representation func (s DescribeDeliveryStreamInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDeliveryStreamInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDeliveryStreamInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDeliveryStreamInput"} if s.DeliveryStreamName == nil { invalidParams.Add(request.NewErrParamRequired("DeliveryStreamName")) } if s.DeliveryStreamName != nil && len(*s.DeliveryStreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeliveryStreamName", 1)) } if s.ExclusiveStartDestinationId != nil && len(*s.ExclusiveStartDestinationId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ExclusiveStartDestinationId", 1)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of DescribeDeliveryStream. type DescribeDeliveryStreamOutput struct { _ struct{} `type:"structure"` // Information about the delivery stream. // // DeliveryStreamDescription is a required field DeliveryStreamDescription *DeliveryStreamDescription `type:"structure" required:"true"` } // String returns the string representation func (s DescribeDeliveryStreamOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDeliveryStreamOutput) GoString() string { return s.String() } // Describes the destination for a delivery stream. type DestinationDescription struct { _ struct{} `type:"structure"` // The ID of the destination. // // DestinationId is a required field DestinationId *string `min:"1" type:"string" required:"true"` // The destination in Amazon ES. ElasticsearchDestinationDescription *ElasticsearchDestinationDescription `type:"structure"` // The destination in Amazon Redshift. RedshiftDestinationDescription *RedshiftDestinationDescription `type:"structure"` // The Amazon S3 destination. S3DestinationDescription *S3DestinationDescription `type:"structure"` } // String returns the string representation func (s DestinationDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DestinationDescription) GoString() string { return s.String() } // Describes the buffering to perform before delivering data to the Amazon ES // destination. type ElasticsearchBufferingHints struct { _ struct{} `type:"structure"` // Buffer incoming data for the specified period of time, in seconds, before // delivering it to the destination. The default value is 300 (5 minutes). IntervalInSeconds *int64 `min:"60" type:"integer"` // Buffer incoming data to the specified size, in MBs, before delivering it // to the destination. The default value is 5. // // We recommend setting SizeInMBs to a value greater than the amount of data // you typically ingest into the delivery stream in 10 seconds. For example, // if you typically ingest data at 1 MB/sec, set SizeInMBs to be 10 MB or higher. SizeInMBs *int64 `min:"1" type:"integer"` } // String returns the string representation func (s ElasticsearchBufferingHints) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ElasticsearchBufferingHints) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ElasticsearchBufferingHints) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ElasticsearchBufferingHints"} if s.IntervalInSeconds != nil && *s.IntervalInSeconds < 60 { invalidParams.Add(request.NewErrParamMinValue("IntervalInSeconds", 60)) } if s.SizeInMBs != nil && *s.SizeInMBs < 1 { invalidParams.Add(request.NewErrParamMinValue("SizeInMBs", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the configuration of a destination in Amazon ES. type ElasticsearchDestinationConfiguration struct { _ struct{} `type:"structure"` // Buffering options. If no value is specified, ElasticsearchBufferingHints // object default values are used. BufferingHints *ElasticsearchBufferingHints `type:"structure"` // Describes CloudWatch logging options for your delivery stream. CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"` // The ARN of the Amazon ES domain. The IAM role must have permission for DescribeElasticsearchDomain, // DescribeElasticsearchDomains , and DescribeElasticsearchDomainConfig after // assuming RoleARN. // // DomainARN is a required field DomainARN *string `min:"1" type:"string" required:"true"` // The Elasticsearch index name. // // IndexName is a required field IndexName *string `min:"1" type:"string" required:"true"` // The Elasticsearch index rotation period. Index rotation appends a timestamp // to the IndexName to facilitate expiration of old data. For more information, // see Index Rotation for Amazon Elasticsearch Service Destination (http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html#es-index-rotation). // Default value is OneDay. IndexRotationPeriod *string `type:"string" enum:"ElasticsearchIndexRotationPeriod"` // Configures retry behavior in the event that Firehose is unable to deliver // documents to Amazon ES. Default value is 300 (5 minutes). RetryOptions *ElasticsearchRetryOptions `type:"structure"` // The ARN of the IAM role to be assumed by Firehose for calling the Amazon // ES Configuration API and for indexing documents. For more information, see // Amazon S3 Bucket Access (http://docs.aws.amazon.com/firehose/latest/dev/controlling-access.html#using-iam-s3). // // RoleARN is a required field RoleARN *string `min:"1" type:"string" required:"true"` // Defines how documents should be delivered to Amazon S3. When set to FailedDocumentsOnly, // Firehose writes any documents that could not be indexed to the configured // Amazon S3 destination, with elasticsearch-failed/ appended to the key prefix. // When set to AllDocuments, Firehose delivers all incoming records to Amazon // S3, and also writes failed documents with elasticsearch-failed/ appended // to the prefix. For more information, see Amazon S3 Backup for Amazon Elasticsearch // Service Destination (http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html#es-s3-backup). // Default value is FailedDocumentsOnly. S3BackupMode *string `type:"string" enum:"ElasticsearchS3BackupMode"` // Describes the configuration of a destination in Amazon S3. // // S3Configuration is a required field S3Configuration *S3DestinationConfiguration `type:"structure" required:"true"` // The Elasticsearch type name. // // TypeName is a required field TypeName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ElasticsearchDestinationConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ElasticsearchDestinationConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ElasticsearchDestinationConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ElasticsearchDestinationConfiguration"} if s.DomainARN == nil { invalidParams.Add(request.NewErrParamRequired("DomainARN")) } if s.DomainARN != nil && len(*s.DomainARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("DomainARN", 1)) } if s.IndexName == nil { invalidParams.Add(request.NewErrParamRequired("IndexName")) } if s.IndexName != nil && len(*s.IndexName) < 1 { invalidParams.Add(request.NewErrParamMinLen("IndexName", 1)) } if s.RoleARN == nil { invalidParams.Add(request.NewErrParamRequired("RoleARN")) } if s.RoleARN != nil && len(*s.RoleARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 1)) } if s.S3Configuration == nil { invalidParams.Add(request.NewErrParamRequired("S3Configuration")) } if s.TypeName == nil { invalidParams.Add(request.NewErrParamRequired("TypeName")) } if s.TypeName != nil && len(*s.TypeName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TypeName", 1)) } if s.BufferingHints != nil { if err := s.BufferingHints.Validate(); err != nil { invalidParams.AddNested("BufferingHints", err.(request.ErrInvalidParams)) } } if s.S3Configuration != nil { if err := s.S3Configuration.Validate(); err != nil { invalidParams.AddNested("S3Configuration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The destination description in Amazon ES. type ElasticsearchDestinationDescription struct { _ struct{} `type:"structure"` // Buffering options. BufferingHints *ElasticsearchBufferingHints `type:"structure"` // CloudWatch logging options. CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"` // The ARN of the Amazon ES domain. DomainARN *string `min:"1" type:"string"` // The Elasticsearch index name. IndexName *string `min:"1" type:"string"` // The Elasticsearch index rotation period IndexRotationPeriod *string `type:"string" enum:"ElasticsearchIndexRotationPeriod"` // Elasticsearch retry options. RetryOptions *ElasticsearchRetryOptions `type:"structure"` // The ARN of the AWS credentials. RoleARN *string `min:"1" type:"string"` // Amazon S3 backup mode. S3BackupMode *string `type:"string" enum:"ElasticsearchS3BackupMode"` // Describes a destination in Amazon S3. S3DestinationDescription *S3DestinationDescription `type:"structure"` // The Elasticsearch type name. TypeName *string `min:"1" type:"string"` } // String returns the string representation func (s ElasticsearchDestinationDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ElasticsearchDestinationDescription) GoString() string { return s.String() } // Describes an update for a destination in Amazon ES. type ElasticsearchDestinationUpdate struct { _ struct{} `type:"structure"` // Buffering options. If no value is specified, ElasticsearchBufferingHints // object default values are used. BufferingHints *ElasticsearchBufferingHints `type:"structure"` // Describes CloudWatch logging options for your delivery stream. CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"` // The ARN of the Amazon ES domain. The IAM role must have permission for DescribeElasticsearchDomain, // DescribeElasticsearchDomains , and DescribeElasticsearchDomainConfig after // assuming RoleARN. DomainARN *string `min:"1" type:"string"` // The Elasticsearch index name. IndexName *string `min:"1" type:"string"` // The Elasticsearch index rotation period. Index rotation appends a timestamp // to the IndexName to facilitate the expiration of old data. For more information, // see Index Rotation for Amazon Elasticsearch Service Destination (http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html#es-index-rotation). // Default value is OneDay. IndexRotationPeriod *string `type:"string" enum:"ElasticsearchIndexRotationPeriod"` // Configures retry behavior in the event that Firehose is unable to deliver // documents to Amazon ES. Default value is 300 (5 minutes). RetryOptions *ElasticsearchRetryOptions `type:"structure"` // The ARN of the IAM role to be assumed by Firehose for calling the Amazon // ES Configuration API and for indexing documents. For more information, see // Amazon S3 Bucket Access (http://docs.aws.amazon.com/firehose/latest/dev/controlling-access.html#using-iam-s3). RoleARN *string `min:"1" type:"string"` // Describes an update for a destination in Amazon S3. S3Update *S3DestinationUpdate `type:"structure"` // The Elasticsearch type name. TypeName *string `min:"1" type:"string"` } // String returns the string representation func (s ElasticsearchDestinationUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ElasticsearchDestinationUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ElasticsearchDestinationUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ElasticsearchDestinationUpdate"} if s.DomainARN != nil && len(*s.DomainARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("DomainARN", 1)) } if s.IndexName != nil && len(*s.IndexName) < 1 { invalidParams.Add(request.NewErrParamMinLen("IndexName", 1)) } if s.RoleARN != nil && len(*s.RoleARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 1)) } if s.TypeName != nil && len(*s.TypeName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TypeName", 1)) } if s.BufferingHints != nil { if err := s.BufferingHints.Validate(); err != nil { invalidParams.AddNested("BufferingHints", err.(request.ErrInvalidParams)) } } if s.S3Update != nil { if err := s.S3Update.Validate(); err != nil { invalidParams.AddNested("S3Update", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Configures retry behavior in the event that Firehose is unable to deliver // documents to Amazon ES. type ElasticsearchRetryOptions struct { _ struct{} `type:"structure"` // After an initial failure to deliver to Amazon ES, the total amount of time // during which Firehose re-attempts delivery (including the first attempt). // After this time has elapsed, the failed documents are written to Amazon S3. // Default value is 300 seconds (5 minutes). A value of 0 (zero) results in // no retries. DurationInSeconds *int64 `type:"integer"` } // String returns the string representation func (s ElasticsearchRetryOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ElasticsearchRetryOptions) GoString() string { return s.String() } // Describes the encryption for a destination in Amazon S3. type EncryptionConfiguration struct { _ struct{} `type:"structure"` // The encryption key. KMSEncryptionConfig *KMSEncryptionConfig `type:"structure"` // Specifically override existing encryption information to ensure no encryption // is used. NoEncryptionConfig *string `type:"string" enum:"NoEncryptionConfig"` } // String returns the string representation func (s EncryptionConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EncryptionConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EncryptionConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EncryptionConfiguration"} if s.KMSEncryptionConfig != nil { if err := s.KMSEncryptionConfig.Validate(); err != nil { invalidParams.AddNested("KMSEncryptionConfig", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes an encryption key for a destination in Amazon S3. type KMSEncryptionConfig struct { _ struct{} `type:"structure"` // The ARN of the encryption key. Must belong to the same region as the destination // Amazon S3 bucket. // // AWSKMSKeyARN is a required field AWSKMSKeyARN *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s KMSEncryptionConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KMSEncryptionConfig) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *KMSEncryptionConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "KMSEncryptionConfig"} if s.AWSKMSKeyARN == nil { invalidParams.Add(request.NewErrParamRequired("AWSKMSKeyARN")) } if s.AWSKMSKeyARN != nil && len(*s.AWSKMSKeyARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("AWSKMSKeyARN", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for ListDeliveryStreams. type ListDeliveryStreamsInput struct { _ struct{} `type:"structure"` // The name of the delivery stream to start the list with. ExclusiveStartDeliveryStreamName *string `min:"1" type:"string"` // The maximum number of delivery streams to list. Limit *int64 `min:"1" type:"integer"` } // String returns the string representation func (s ListDeliveryStreamsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDeliveryStreamsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListDeliveryStreamsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListDeliveryStreamsInput"} if s.ExclusiveStartDeliveryStreamName != nil && len(*s.ExclusiveStartDeliveryStreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ExclusiveStartDeliveryStreamName", 1)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of ListDeliveryStreams. type ListDeliveryStreamsOutput struct { _ struct{} `type:"structure"` // The names of the delivery streams. // // DeliveryStreamNames is a required field DeliveryStreamNames []*string `type:"list" required:"true"` // Indicates whether there are more delivery streams available to list. // // HasMoreDeliveryStreams is a required field HasMoreDeliveryStreams *bool `type:"boolean" required:"true"` } // String returns the string representation func (s ListDeliveryStreamsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDeliveryStreamsOutput) GoString() string { return s.String() } // Contains the parameters for PutRecordBatch. type PutRecordBatchInput struct { _ struct{} `type:"structure"` // The name of the delivery stream. // // DeliveryStreamName is a required field DeliveryStreamName *string `min:"1" type:"string" required:"true"` // One or more records. // // Records is a required field Records []*Record `min:"1" type:"list" required:"true"` } // String returns the string representation func (s PutRecordBatchInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRecordBatchInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutRecordBatchInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutRecordBatchInput"} if s.DeliveryStreamName == nil { invalidParams.Add(request.NewErrParamRequired("DeliveryStreamName")) } if s.DeliveryStreamName != nil && len(*s.DeliveryStreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeliveryStreamName", 1)) } if s.Records == nil { invalidParams.Add(request.NewErrParamRequired("Records")) } if s.Records != nil && len(s.Records) < 1 { invalidParams.Add(request.NewErrParamMinLen("Records", 1)) } if s.Records != nil { for i, v := range s.Records { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Records", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of PutRecordBatch. type PutRecordBatchOutput struct { _ struct{} `type:"structure"` // The number of unsuccessfully written records. // // FailedPutCount is a required field FailedPutCount *int64 `type:"integer" required:"true"` // The results for the individual records. The index of each element matches // the same index in which records were sent. // // RequestResponses is a required field RequestResponses []*PutRecordBatchResponseEntry `min:"1" type:"list" required:"true"` } // String returns the string representation func (s PutRecordBatchOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRecordBatchOutput) GoString() string { return s.String() } // Contains the result for an individual record from a PutRecordBatch request. // If the record is successfully added to your delivery stream, it receives // a record ID. If the record fails to be added to your delivery stream, the // result includes an error code and an error message. type PutRecordBatchResponseEntry struct { _ struct{} `type:"structure"` // The error code for an individual record result. ErrorCode *string `type:"string"` // The error message for an individual record result. ErrorMessage *string `type:"string"` // The ID of the record. RecordId *string `min:"1" type:"string"` } // String returns the string representation func (s PutRecordBatchResponseEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRecordBatchResponseEntry) GoString() string { return s.String() } // Contains the parameters for PutRecord. type PutRecordInput struct { _ struct{} `type:"structure"` // The name of the delivery stream. // // DeliveryStreamName is a required field DeliveryStreamName *string `min:"1" type:"string" required:"true"` // The record. // // Record is a required field Record *Record `type:"structure" required:"true"` } // String returns the string representation func (s PutRecordInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRecordInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutRecordInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutRecordInput"} if s.DeliveryStreamName == nil { invalidParams.Add(request.NewErrParamRequired("DeliveryStreamName")) } if s.DeliveryStreamName != nil && len(*s.DeliveryStreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeliveryStreamName", 1)) } if s.Record == nil { invalidParams.Add(request.NewErrParamRequired("Record")) } if s.Record != nil { if err := s.Record.Validate(); err != nil { invalidParams.AddNested("Record", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of PutRecord. type PutRecordOutput struct { _ struct{} `type:"structure"` // The ID of the record. // // RecordId is a required field RecordId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s PutRecordOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRecordOutput) GoString() string { return s.String() } // The unit of data in a delivery stream. type Record struct { _ struct{} `type:"structure"` // The data blob, which is base64-encoded when the blob is serialized. The maximum // size of the data blob, before base64-encoding, is 1,000 KB. // // Data is automatically base64 encoded/decoded by the SDK. // // Data is a required field Data []byte `type:"blob" required:"true"` } // String returns the string representation func (s Record) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Record) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Record) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Record"} if s.Data == nil { invalidParams.Add(request.NewErrParamRequired("Data")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the configuration of a destination in Amazon Redshift. type RedshiftDestinationConfiguration struct { _ struct{} `type:"structure"` // Describes CloudWatch logging options for your delivery stream. CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"` // The database connection string. // // ClusterJDBCURL is a required field ClusterJDBCURL *string `min:"1" type:"string" required:"true"` // The COPY command. // // CopyCommand is a required field CopyCommand *CopyCommand `type:"structure" required:"true"` // The user password. // // Password is a required field Password *string `min:"6" type:"string" required:"true"` // Configures retry behavior in the event that Firehose is unable to deliver // documents to Amazon Redshift. Default value is 3600 (60 minutes). RetryOptions *RedshiftRetryOptions `type:"structure"` // The ARN of the AWS credentials. // // RoleARN is a required field RoleARN *string `min:"1" type:"string" required:"true"` // The S3 configuration for the intermediate location from which Amazon Redshift // obtains data. Restrictions are described in the topic for CreateDeliveryStream. // // The compression formats SNAPPY or ZIP cannot be specified in RedshiftDestinationConfiguration.S3Configuration // because the Amazon Redshift COPY operation that reads from the S3 bucket // doesn't support these compression formats. // // S3Configuration is a required field S3Configuration *S3DestinationConfiguration `type:"structure" required:"true"` // The name of the user. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s RedshiftDestinationConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RedshiftDestinationConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RedshiftDestinationConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RedshiftDestinationConfiguration"} if s.ClusterJDBCURL == nil { invalidParams.Add(request.NewErrParamRequired("ClusterJDBCURL")) } if s.ClusterJDBCURL != nil && len(*s.ClusterJDBCURL) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClusterJDBCURL", 1)) } if s.CopyCommand == nil { invalidParams.Add(request.NewErrParamRequired("CopyCommand")) } if s.Password == nil { invalidParams.Add(request.NewErrParamRequired("Password")) } if s.Password != nil && len(*s.Password) < 6 { invalidParams.Add(request.NewErrParamMinLen("Password", 6)) } if s.RoleARN == nil { invalidParams.Add(request.NewErrParamRequired("RoleARN")) } if s.RoleARN != nil && len(*s.RoleARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 1)) } if s.S3Configuration == nil { invalidParams.Add(request.NewErrParamRequired("S3Configuration")) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if s.CopyCommand != nil { if err := s.CopyCommand.Validate(); err != nil { invalidParams.AddNested("CopyCommand", err.(request.ErrInvalidParams)) } } if s.S3Configuration != nil { if err := s.S3Configuration.Validate(); err != nil { invalidParams.AddNested("S3Configuration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a destination in Amazon Redshift. type RedshiftDestinationDescription struct { _ struct{} `type:"structure"` // Describes CloudWatch logging options for your delivery stream. CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"` // The database connection string. // // ClusterJDBCURL is a required field ClusterJDBCURL *string `min:"1" type:"string" required:"true"` // The COPY command. // // CopyCommand is a required field CopyCommand *CopyCommand `type:"structure" required:"true"` // Configures retry behavior in the event that Firehose is unable to deliver // documents to Amazon Redshift. Default value is 3600 (60 minutes). RetryOptions *RedshiftRetryOptions `type:"structure"` // The ARN of the AWS credentials. // // RoleARN is a required field RoleARN *string `min:"1" type:"string" required:"true"` // The Amazon S3 destination. // // S3DestinationDescription is a required field S3DestinationDescription *S3DestinationDescription `type:"structure" required:"true"` // The name of the user. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s RedshiftDestinationDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RedshiftDestinationDescription) GoString() string { return s.String() } // Describes an update for a destination in Amazon Redshift. type RedshiftDestinationUpdate struct { _ struct{} `type:"structure"` // Describes CloudWatch logging options for your delivery stream. CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"` // The database connection string. ClusterJDBCURL *string `min:"1" type:"string"` // The COPY command. CopyCommand *CopyCommand `type:"structure"` // The user password. Password *string `min:"6" type:"string"` // Configures retry behavior in the event that Firehose is unable to deliver // documents to Amazon Redshift. Default value is 3600 (60 minutes). RetryOptions *RedshiftRetryOptions `type:"structure"` // The ARN of the AWS credentials. RoleARN *string `min:"1" type:"string"` // The Amazon S3 destination. // // The compression formats SNAPPY or ZIP cannot be specified in RedshiftDestinationUpdate.S3Update // because the Amazon Redshift COPY operation that reads from the S3 bucket // doesn't support these compression formats. S3Update *S3DestinationUpdate `type:"structure"` // The name of the user. Username *string `min:"1" type:"string"` } // String returns the string representation func (s RedshiftDestinationUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RedshiftDestinationUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RedshiftDestinationUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RedshiftDestinationUpdate"} if s.ClusterJDBCURL != nil && len(*s.ClusterJDBCURL) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClusterJDBCURL", 1)) } if s.Password != nil && len(*s.Password) < 6 { invalidParams.Add(request.NewErrParamMinLen("Password", 6)) } if s.RoleARN != nil && len(*s.RoleARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 1)) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if s.CopyCommand != nil { if err := s.CopyCommand.Validate(); err != nil { invalidParams.AddNested("CopyCommand", err.(request.ErrInvalidParams)) } } if s.S3Update != nil { if err := s.S3Update.Validate(); err != nil { invalidParams.AddNested("S3Update", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Configures retry behavior in the event that Firehose is unable to deliver // documents to Amazon Redshift. type RedshiftRetryOptions struct { _ struct{} `type:"structure"` // The length of time during which Firehose retries delivery after a failure, // starting from the initial request and including the first attempt. The default // value is 3600 seconds (60 minutes). Firehose does not retry if the value // of DurationInSeconds is 0 (zero) or if the first delivery attempt takes longer // than the current value. DurationInSeconds *int64 `type:"integer"` } // String returns the string representation func (s RedshiftRetryOptions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RedshiftRetryOptions) GoString() string { return s.String() } // Describes the configuration of a destination in Amazon S3. type S3DestinationConfiguration struct { _ struct{} `type:"structure"` // The ARN of the S3 bucket. // // BucketARN is a required field BucketARN *string `min:"1" type:"string" required:"true"` // The buffering option. If no value is specified, BufferingHints object default // values are used. BufferingHints *BufferingHints `type:"structure"` // Describes CloudWatch logging options for your delivery stream. CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"` // The compression format. If no value is specified, the default is UNCOMPRESSED. // // The compression formats SNAPPY or ZIP cannot be specified for Amazon Redshift // destinations because they are not supported by the Amazon Redshift COPY operation // that reads from the S3 bucket. CompressionFormat *string `type:"string" enum:"CompressionFormat"` // The encryption configuration. If no value is specified, the default is no // encryption. EncryptionConfiguration *EncryptionConfiguration `type:"structure"` // The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered // S3 files. You can specify an extra prefix to be added in front of the time // format prefix. Note that if the prefix ends with a slash, it appears as a // folder in the S3 bucket. For more information, see Amazon S3 Object Name // Format (http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html) // in the Amazon Kinesis Firehose Developer Guide (http://docs.aws.amazon.com/firehose/latest/dev/). Prefix *string `type:"string"` // The ARN of the AWS credentials. // // RoleARN is a required field RoleARN *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s S3DestinationConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s S3DestinationConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3DestinationConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3DestinationConfiguration"} if s.BucketARN == nil { invalidParams.Add(request.NewErrParamRequired("BucketARN")) } if s.BucketARN != nil && len(*s.BucketARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("BucketARN", 1)) } if s.RoleARN == nil { invalidParams.Add(request.NewErrParamRequired("RoleARN")) } if s.RoleARN != nil && len(*s.RoleARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 1)) } if s.BufferingHints != nil { if err := s.BufferingHints.Validate(); err != nil { invalidParams.AddNested("BufferingHints", err.(request.ErrInvalidParams)) } } if s.EncryptionConfiguration != nil { if err := s.EncryptionConfiguration.Validate(); err != nil { invalidParams.AddNested("EncryptionConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a destination in Amazon S3. type S3DestinationDescription struct { _ struct{} `type:"structure"` // The ARN of the S3 bucket. // // BucketARN is a required field BucketARN *string `min:"1" type:"string" required:"true"` // The buffering option. If no value is specified, BufferingHints object default // values are used. // // BufferingHints is a required field BufferingHints *BufferingHints `type:"structure" required:"true"` // Describes CloudWatch logging options for your delivery stream. CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"` // The compression format. If no value is specified, the default is NOCOMPRESSION. // // CompressionFormat is a required field CompressionFormat *string `type:"string" required:"true" enum:"CompressionFormat"` // The encryption configuration. If no value is specified, the default is no // encryption. // // EncryptionConfiguration is a required field EncryptionConfiguration *EncryptionConfiguration `type:"structure" required:"true"` // The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered // S3 files. You can specify an extra prefix to be added in front of the time // format prefix. Note that if the prefix ends with a slash, it appears as a // folder in the S3 bucket. For more information, see Amazon S3 Object Name // Format (http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html) // in the Amazon Kinesis Firehose Developer Guide (http://docs.aws.amazon.com/firehose/latest/dev/). Prefix *string `type:"string"` // The ARN of the AWS credentials. // // RoleARN is a required field RoleARN *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s S3DestinationDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s S3DestinationDescription) GoString() string { return s.String() } // Describes an update for a destination in Amazon S3. type S3DestinationUpdate struct { _ struct{} `type:"structure"` // The ARN of the S3 bucket. BucketARN *string `min:"1" type:"string"` // The buffering option. If no value is specified, BufferingHints object default // values are used. BufferingHints *BufferingHints `type:"structure"` // Describes CloudWatch logging options for your delivery stream. CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"` // The compression format. If no value is specified, the default is NOCOMPRESSION. // // The compression formats SNAPPY or ZIP cannot be specified for Amazon Redshift // destinations because they are not supported by the Amazon Redshift COPY operation // that reads from the S3 bucket. CompressionFormat *string `type:"string" enum:"CompressionFormat"` // The encryption configuration. If no value is specified, the default is no // encryption. EncryptionConfiguration *EncryptionConfiguration `type:"structure"` // The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered // S3 files. You can specify an extra prefix to be added in front of the time // format prefix. Note that if the prefix ends with a slash, it appears as a // folder in the S3 bucket. For more information, see Amazon S3 Object Name // Format (http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html) // in the Amazon Kinesis Firehose Developer Guide (http://docs.aws.amazon.com/firehose/latest/dev/). Prefix *string `type:"string"` // The ARN of the AWS credentials. RoleARN *string `min:"1" type:"string"` } // String returns the string representation func (s S3DestinationUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s S3DestinationUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3DestinationUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3DestinationUpdate"} if s.BucketARN != nil && len(*s.BucketARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("BucketARN", 1)) } if s.RoleARN != nil && len(*s.RoleARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 1)) } if s.BufferingHints != nil { if err := s.BufferingHints.Validate(); err != nil { invalidParams.AddNested("BufferingHints", err.(request.ErrInvalidParams)) } } if s.EncryptionConfiguration != nil { if err := s.EncryptionConfiguration.Validate(); err != nil { invalidParams.AddNested("EncryptionConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the parameters for UpdateDestination. type UpdateDestinationInput struct { _ struct{} `type:"structure"` // Obtain this value from the VersionId result of the DeliveryStreamDescription // operation. This value is required, and helps the service to perform conditional // operations. For example, if there is a interleaving update and this value // is null, then the update destination fails. After the update is successful, // the VersionId value is updated. The service then performs a merge of the // old configuration with the new configuration. // // CurrentDeliveryStreamVersionId is a required field CurrentDeliveryStreamVersionId *string `min:"1" type:"string" required:"true"` // The name of the delivery stream. // // DeliveryStreamName is a required field DeliveryStreamName *string `min:"1" type:"string" required:"true"` // The ID of the destination. // // DestinationId is a required field DestinationId *string `min:"1" type:"string" required:"true"` // Describes an update for a destination in Amazon ES. ElasticsearchDestinationUpdate *ElasticsearchDestinationUpdate `type:"structure"` // Describes an update for a destination in Amazon Redshift. RedshiftDestinationUpdate *RedshiftDestinationUpdate `type:"structure"` // Describes an update for a destination in Amazon S3. S3DestinationUpdate *S3DestinationUpdate `type:"structure"` } // String returns the string representation func (s UpdateDestinationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDestinationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateDestinationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateDestinationInput"} if s.CurrentDeliveryStreamVersionId == nil { invalidParams.Add(request.NewErrParamRequired("CurrentDeliveryStreamVersionId")) } if s.CurrentDeliveryStreamVersionId != nil && len(*s.CurrentDeliveryStreamVersionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("CurrentDeliveryStreamVersionId", 1)) } if s.DeliveryStreamName == nil { invalidParams.Add(request.NewErrParamRequired("DeliveryStreamName")) } if s.DeliveryStreamName != nil && len(*s.DeliveryStreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeliveryStreamName", 1)) } if s.DestinationId == nil { invalidParams.Add(request.NewErrParamRequired("DestinationId")) } if s.DestinationId != nil && len(*s.DestinationId) < 1 { invalidParams.Add(request.NewErrParamMinLen("DestinationId", 1)) } if s.ElasticsearchDestinationUpdate != nil { if err := s.ElasticsearchDestinationUpdate.Validate(); err != nil { invalidParams.AddNested("ElasticsearchDestinationUpdate", err.(request.ErrInvalidParams)) } } if s.RedshiftDestinationUpdate != nil { if err := s.RedshiftDestinationUpdate.Validate(); err != nil { invalidParams.AddNested("RedshiftDestinationUpdate", err.(request.ErrInvalidParams)) } } if s.S3DestinationUpdate != nil { if err := s.S3DestinationUpdate.Validate(); err != nil { invalidParams.AddNested("S3DestinationUpdate", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output of UpdateDestination. type UpdateDestinationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateDestinationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDestinationOutput) GoString() string { return s.String() } const ( // CompressionFormatUncompressed is a CompressionFormat enum value CompressionFormatUncompressed = "UNCOMPRESSED" // CompressionFormatGzip is a CompressionFormat enum value CompressionFormatGzip = "GZIP" // CompressionFormatZip is a CompressionFormat enum value CompressionFormatZip = "ZIP" // CompressionFormatSnappy is a CompressionFormat enum value CompressionFormatSnappy = "Snappy" ) const ( // DeliveryStreamStatusCreating is a DeliveryStreamStatus enum value DeliveryStreamStatusCreating = "CREATING" // DeliveryStreamStatusDeleting is a DeliveryStreamStatus enum value DeliveryStreamStatusDeleting = "DELETING" // DeliveryStreamStatusActive is a DeliveryStreamStatus enum value DeliveryStreamStatusActive = "ACTIVE" ) const ( // ElasticsearchIndexRotationPeriodNoRotation is a ElasticsearchIndexRotationPeriod enum value ElasticsearchIndexRotationPeriodNoRotation = "NoRotation" // ElasticsearchIndexRotationPeriodOneHour is a ElasticsearchIndexRotationPeriod enum value ElasticsearchIndexRotationPeriodOneHour = "OneHour" // ElasticsearchIndexRotationPeriodOneDay is a ElasticsearchIndexRotationPeriod enum value ElasticsearchIndexRotationPeriodOneDay = "OneDay" // ElasticsearchIndexRotationPeriodOneWeek is a ElasticsearchIndexRotationPeriod enum value ElasticsearchIndexRotationPeriodOneWeek = "OneWeek" // ElasticsearchIndexRotationPeriodOneMonth is a ElasticsearchIndexRotationPeriod enum value ElasticsearchIndexRotationPeriodOneMonth = "OneMonth" ) const ( // ElasticsearchS3BackupModeFailedDocumentsOnly is a ElasticsearchS3BackupMode enum value ElasticsearchS3BackupModeFailedDocumentsOnly = "FailedDocumentsOnly" // ElasticsearchS3BackupModeAllDocuments is a ElasticsearchS3BackupMode enum value ElasticsearchS3BackupModeAllDocuments = "AllDocuments" ) const ( // NoEncryptionConfigNoEncryption is a NoEncryptionConfig enum value NoEncryptionConfigNoEncryption = "NoEncryption" ) aws-sdk-go-1.4.22/service/firehose/examples_test.go000066400000000000000000000311571300374646400222420ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package firehose_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/firehose" ) var _ time.Duration var _ bytes.Buffer func ExampleFirehose_CreateDeliveryStream() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := firehose.New(sess) params := &firehose.CreateDeliveryStreamInput{ DeliveryStreamName: aws.String("DeliveryStreamName"), // Required ElasticsearchDestinationConfiguration: &firehose.ElasticsearchDestinationConfiguration{ DomainARN: aws.String("ElasticsearchDomainARN"), // Required IndexName: aws.String("ElasticsearchIndexName"), // Required RoleARN: aws.String("RoleARN"), // Required S3Configuration: &firehose.S3DestinationConfiguration{ // Required BucketARN: aws.String("BucketARN"), // Required RoleARN: aws.String("RoleARN"), // Required BufferingHints: &firehose.BufferingHints{ IntervalInSeconds: aws.Int64(1), SizeInMBs: aws.Int64(1), }, CloudWatchLoggingOptions: &firehose.CloudWatchLoggingOptions{ Enabled: aws.Bool(true), LogGroupName: aws.String("LogGroupName"), LogStreamName: aws.String("LogStreamName"), }, CompressionFormat: aws.String("CompressionFormat"), EncryptionConfiguration: &firehose.EncryptionConfiguration{ KMSEncryptionConfig: &firehose.KMSEncryptionConfig{ AWSKMSKeyARN: aws.String("AWSKMSKeyARN"), // Required }, NoEncryptionConfig: aws.String("NoEncryptionConfig"), }, Prefix: aws.String("Prefix"), }, TypeName: aws.String("ElasticsearchTypeName"), // Required BufferingHints: &firehose.ElasticsearchBufferingHints{ IntervalInSeconds: aws.Int64(1), SizeInMBs: aws.Int64(1), }, CloudWatchLoggingOptions: &firehose.CloudWatchLoggingOptions{ Enabled: aws.Bool(true), LogGroupName: aws.String("LogGroupName"), LogStreamName: aws.String("LogStreamName"), }, IndexRotationPeriod: aws.String("ElasticsearchIndexRotationPeriod"), RetryOptions: &firehose.ElasticsearchRetryOptions{ DurationInSeconds: aws.Int64(1), }, S3BackupMode: aws.String("ElasticsearchS3BackupMode"), }, RedshiftDestinationConfiguration: &firehose.RedshiftDestinationConfiguration{ ClusterJDBCURL: aws.String("ClusterJDBCURL"), // Required CopyCommand: &firehose.CopyCommand{ // Required DataTableName: aws.String("DataTableName"), // Required CopyOptions: aws.String("CopyOptions"), DataTableColumns: aws.String("DataTableColumns"), }, Password: aws.String("Password"), // Required RoleARN: aws.String("RoleARN"), // Required S3Configuration: &firehose.S3DestinationConfiguration{ // Required BucketARN: aws.String("BucketARN"), // Required RoleARN: aws.String("RoleARN"), // Required BufferingHints: &firehose.BufferingHints{ IntervalInSeconds: aws.Int64(1), SizeInMBs: aws.Int64(1), }, CloudWatchLoggingOptions: &firehose.CloudWatchLoggingOptions{ Enabled: aws.Bool(true), LogGroupName: aws.String("LogGroupName"), LogStreamName: aws.String("LogStreamName"), }, CompressionFormat: aws.String("CompressionFormat"), EncryptionConfiguration: &firehose.EncryptionConfiguration{ KMSEncryptionConfig: &firehose.KMSEncryptionConfig{ AWSKMSKeyARN: aws.String("AWSKMSKeyARN"), // Required }, NoEncryptionConfig: aws.String("NoEncryptionConfig"), }, Prefix: aws.String("Prefix"), }, Username: aws.String("Username"), // Required CloudWatchLoggingOptions: &firehose.CloudWatchLoggingOptions{ Enabled: aws.Bool(true), LogGroupName: aws.String("LogGroupName"), LogStreamName: aws.String("LogStreamName"), }, RetryOptions: &firehose.RedshiftRetryOptions{ DurationInSeconds: aws.Int64(1), }, }, S3DestinationConfiguration: &firehose.S3DestinationConfiguration{ BucketARN: aws.String("BucketARN"), // Required RoleARN: aws.String("RoleARN"), // Required BufferingHints: &firehose.BufferingHints{ IntervalInSeconds: aws.Int64(1), SizeInMBs: aws.Int64(1), }, CloudWatchLoggingOptions: &firehose.CloudWatchLoggingOptions{ Enabled: aws.Bool(true), LogGroupName: aws.String("LogGroupName"), LogStreamName: aws.String("LogStreamName"), }, CompressionFormat: aws.String("CompressionFormat"), EncryptionConfiguration: &firehose.EncryptionConfiguration{ KMSEncryptionConfig: &firehose.KMSEncryptionConfig{ AWSKMSKeyARN: aws.String("AWSKMSKeyARN"), // Required }, NoEncryptionConfig: aws.String("NoEncryptionConfig"), }, Prefix: aws.String("Prefix"), }, } resp, err := svc.CreateDeliveryStream(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleFirehose_DeleteDeliveryStream() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := firehose.New(sess) params := &firehose.DeleteDeliveryStreamInput{ DeliveryStreamName: aws.String("DeliveryStreamName"), // Required } resp, err := svc.DeleteDeliveryStream(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleFirehose_DescribeDeliveryStream() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := firehose.New(sess) params := &firehose.DescribeDeliveryStreamInput{ DeliveryStreamName: aws.String("DeliveryStreamName"), // Required ExclusiveStartDestinationId: aws.String("DestinationId"), Limit: aws.Int64(1), } resp, err := svc.DescribeDeliveryStream(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleFirehose_ListDeliveryStreams() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := firehose.New(sess) params := &firehose.ListDeliveryStreamsInput{ ExclusiveStartDeliveryStreamName: aws.String("DeliveryStreamName"), Limit: aws.Int64(1), } resp, err := svc.ListDeliveryStreams(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleFirehose_PutRecord() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := firehose.New(sess) params := &firehose.PutRecordInput{ DeliveryStreamName: aws.String("DeliveryStreamName"), // Required Record: &firehose.Record{ // Required Data: []byte("PAYLOAD"), // Required }, } resp, err := svc.PutRecord(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleFirehose_PutRecordBatch() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := firehose.New(sess) params := &firehose.PutRecordBatchInput{ DeliveryStreamName: aws.String("DeliveryStreamName"), // Required Records: []*firehose.Record{ // Required { // Required Data: []byte("PAYLOAD"), // Required }, // More values... }, } resp, err := svc.PutRecordBatch(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleFirehose_UpdateDestination() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := firehose.New(sess) params := &firehose.UpdateDestinationInput{ CurrentDeliveryStreamVersionId: aws.String("DeliveryStreamVersionId"), // Required DeliveryStreamName: aws.String("DeliveryStreamName"), // Required DestinationId: aws.String("DestinationId"), // Required ElasticsearchDestinationUpdate: &firehose.ElasticsearchDestinationUpdate{ BufferingHints: &firehose.ElasticsearchBufferingHints{ IntervalInSeconds: aws.Int64(1), SizeInMBs: aws.Int64(1), }, CloudWatchLoggingOptions: &firehose.CloudWatchLoggingOptions{ Enabled: aws.Bool(true), LogGroupName: aws.String("LogGroupName"), LogStreamName: aws.String("LogStreamName"), }, DomainARN: aws.String("ElasticsearchDomainARN"), IndexName: aws.String("ElasticsearchIndexName"), IndexRotationPeriod: aws.String("ElasticsearchIndexRotationPeriod"), RetryOptions: &firehose.ElasticsearchRetryOptions{ DurationInSeconds: aws.Int64(1), }, RoleARN: aws.String("RoleARN"), S3Update: &firehose.S3DestinationUpdate{ BucketARN: aws.String("BucketARN"), BufferingHints: &firehose.BufferingHints{ IntervalInSeconds: aws.Int64(1), SizeInMBs: aws.Int64(1), }, CloudWatchLoggingOptions: &firehose.CloudWatchLoggingOptions{ Enabled: aws.Bool(true), LogGroupName: aws.String("LogGroupName"), LogStreamName: aws.String("LogStreamName"), }, CompressionFormat: aws.String("CompressionFormat"), EncryptionConfiguration: &firehose.EncryptionConfiguration{ KMSEncryptionConfig: &firehose.KMSEncryptionConfig{ AWSKMSKeyARN: aws.String("AWSKMSKeyARN"), // Required }, NoEncryptionConfig: aws.String("NoEncryptionConfig"), }, Prefix: aws.String("Prefix"), RoleARN: aws.String("RoleARN"), }, TypeName: aws.String("ElasticsearchTypeName"), }, RedshiftDestinationUpdate: &firehose.RedshiftDestinationUpdate{ CloudWatchLoggingOptions: &firehose.CloudWatchLoggingOptions{ Enabled: aws.Bool(true), LogGroupName: aws.String("LogGroupName"), LogStreamName: aws.String("LogStreamName"), }, ClusterJDBCURL: aws.String("ClusterJDBCURL"), CopyCommand: &firehose.CopyCommand{ DataTableName: aws.String("DataTableName"), // Required CopyOptions: aws.String("CopyOptions"), DataTableColumns: aws.String("DataTableColumns"), }, Password: aws.String("Password"), RetryOptions: &firehose.RedshiftRetryOptions{ DurationInSeconds: aws.Int64(1), }, RoleARN: aws.String("RoleARN"), S3Update: &firehose.S3DestinationUpdate{ BucketARN: aws.String("BucketARN"), BufferingHints: &firehose.BufferingHints{ IntervalInSeconds: aws.Int64(1), SizeInMBs: aws.Int64(1), }, CloudWatchLoggingOptions: &firehose.CloudWatchLoggingOptions{ Enabled: aws.Bool(true), LogGroupName: aws.String("LogGroupName"), LogStreamName: aws.String("LogStreamName"), }, CompressionFormat: aws.String("CompressionFormat"), EncryptionConfiguration: &firehose.EncryptionConfiguration{ KMSEncryptionConfig: &firehose.KMSEncryptionConfig{ AWSKMSKeyARN: aws.String("AWSKMSKeyARN"), // Required }, NoEncryptionConfig: aws.String("NoEncryptionConfig"), }, Prefix: aws.String("Prefix"), RoleARN: aws.String("RoleARN"), }, Username: aws.String("Username"), }, S3DestinationUpdate: &firehose.S3DestinationUpdate{ BucketARN: aws.String("BucketARN"), BufferingHints: &firehose.BufferingHints{ IntervalInSeconds: aws.Int64(1), SizeInMBs: aws.Int64(1), }, CloudWatchLoggingOptions: &firehose.CloudWatchLoggingOptions{ Enabled: aws.Bool(true), LogGroupName: aws.String("LogGroupName"), LogStreamName: aws.String("LogStreamName"), }, CompressionFormat: aws.String("CompressionFormat"), EncryptionConfiguration: &firehose.EncryptionConfiguration{ KMSEncryptionConfig: &firehose.KMSEncryptionConfig{ AWSKMSKeyARN: aws.String("AWSKMSKeyARN"), // Required }, NoEncryptionConfig: aws.String("NoEncryptionConfig"), }, Prefix: aws.String("Prefix"), RoleARN: aws.String("RoleARN"), }, } resp, err := svc.UpdateDestination(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/firehose/firehoseiface/000077500000000000000000000000001300374646400216235ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/firehose/firehoseiface/interface.go000066400000000000000000000072061300374646400241170ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package firehoseiface provides an interface to enable mocking the Amazon Kinesis Firehose service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package firehoseiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/firehose" ) // FirehoseAPI provides an interface to enable mocking the // firehose.Firehose service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Kinesis Firehose. // func myFunc(svc firehoseiface.FirehoseAPI) bool { // // Make svc.CreateDeliveryStream request // } // // func main() { // sess := session.New() // svc := firehose.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockFirehoseClient struct { // firehoseiface.FirehoseAPI // } // func (m *mockFirehoseClient) CreateDeliveryStream(input *firehose.CreateDeliveryStreamInput) (*firehose.CreateDeliveryStreamOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockFirehoseClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type FirehoseAPI interface { CreateDeliveryStreamRequest(*firehose.CreateDeliveryStreamInput) (*request.Request, *firehose.CreateDeliveryStreamOutput) CreateDeliveryStream(*firehose.CreateDeliveryStreamInput) (*firehose.CreateDeliveryStreamOutput, error) DeleteDeliveryStreamRequest(*firehose.DeleteDeliveryStreamInput) (*request.Request, *firehose.DeleteDeliveryStreamOutput) DeleteDeliveryStream(*firehose.DeleteDeliveryStreamInput) (*firehose.DeleteDeliveryStreamOutput, error) DescribeDeliveryStreamRequest(*firehose.DescribeDeliveryStreamInput) (*request.Request, *firehose.DescribeDeliveryStreamOutput) DescribeDeliveryStream(*firehose.DescribeDeliveryStreamInput) (*firehose.DescribeDeliveryStreamOutput, error) ListDeliveryStreamsRequest(*firehose.ListDeliveryStreamsInput) (*request.Request, *firehose.ListDeliveryStreamsOutput) ListDeliveryStreams(*firehose.ListDeliveryStreamsInput) (*firehose.ListDeliveryStreamsOutput, error) PutRecordRequest(*firehose.PutRecordInput) (*request.Request, *firehose.PutRecordOutput) PutRecord(*firehose.PutRecordInput) (*firehose.PutRecordOutput, error) PutRecordBatchRequest(*firehose.PutRecordBatchInput) (*request.Request, *firehose.PutRecordBatchOutput) PutRecordBatch(*firehose.PutRecordBatchInput) (*firehose.PutRecordBatchOutput, error) UpdateDestinationRequest(*firehose.UpdateDestinationInput) (*request.Request, *firehose.UpdateDestinationOutput) UpdateDestination(*firehose.UpdateDestinationInput) (*firehose.UpdateDestinationOutput, error) } var _ FirehoseAPI = (*firehose.Firehose)(nil) aws-sdk-go-1.4.22/service/firehose/service.go000066400000000000000000000056151300374646400210250ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package firehose import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Amazon Kinesis Firehose is a fully-managed service that delivers real-time // streaming data to destinations such as Amazon Simple Storage Service (Amazon // S3), Amazon Elasticsearch Service (Amazon ES), and Amazon Redshift. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type Firehose struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "firehose" // New creates a new instance of the Firehose client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a Firehose client from just a session. // svc := firehose.New(mySession) // // // Create a Firehose client with additional configuration // svc := firehose.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *Firehose { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *Firehose { svc := &Firehose{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-08-04", JSONVersion: "1.1", TargetPrefix: "Firehose_20150804", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a Firehose operation and runs any // custom request initialization. func (c *Firehose) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/gamelift/000077500000000000000000000000001300374646400170135ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/gamelift/api.go000066400000000000000000010447241300374646400201270ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package gamelift provides a client for Amazon GameLift. package gamelift import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opCreateAlias = "CreateAlias" // CreateAliasRequest generates a "aws/request.Request" representing the // client's request for the CreateAlias operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateAlias for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateAlias method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateAliasRequest method. // req, resp := client.CreateAliasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) CreateAliasRequest(input *CreateAliasInput) (req *request.Request, output *CreateAliasOutput) { op := &request.Operation{ Name: opCreateAlias, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateAliasInput{} } req = c.newRequest(op, input, output) output = &CreateAliasOutput{} req.Data = output return } // CreateAlias API operation for Amazon GameLift. // // Creates an alias for a fleet. You can use an alias to anonymize your fleet // by referencing an alias instead of a specific fleet when you create game // sessions. Amazon GameLift supports two types of routing strategies for aliases: // simple and terminal. Use a simple alias to point to an active fleet. Use // a terminal alias to display a message to incoming traffic instead of routing // players to an active fleet. This option is useful when a game server is no // longer supported but you want to provide better messaging than a standard // 404 error. // // To create a fleet alias, specify an alias name, routing strategy, and optional // description. If successful, a new alias record is returned, including an // alias ID, which you can reference when creating a game session. To reassign // the alias to another fleet ID, call UpdateAlias. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation CreateAlias for usage and error information. // // Returned Error Codes: // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * ConflictException // The requested operation would cause a conflict with the current state of // a service resource associated with the request. Resolve the conflict before // retrying this request. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * LimitExceededException // The requested operation would cause the resource to exceed the allowed service // limit. Resolve the issue before retrying. // func (c *GameLift) CreateAlias(input *CreateAliasInput) (*CreateAliasOutput, error) { req, out := c.CreateAliasRequest(input) err := req.Send() return out, err } const opCreateBuild = "CreateBuild" // CreateBuildRequest generates a "aws/request.Request" representing the // client's request for the CreateBuild operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateBuild for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateBuild method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateBuildRequest method. // req, resp := client.CreateBuildRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) CreateBuildRequest(input *CreateBuildInput) (req *request.Request, output *CreateBuildOutput) { op := &request.Operation{ Name: opCreateBuild, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateBuildInput{} } req = c.newRequest(op, input, output) output = &CreateBuildOutput{} req.Data = output return } // CreateBuild API operation for Amazon GameLift. // // Initializes a new build record and generates information required to upload // a game build to Amazon GameLift. Once the build record has been created and // its status is INITIALIZED, you can upload your game build. // // Do not use this API action unless you are using your own Amazon Simple Storage // Service (Amazon S3) client and need to manually upload your build files. // Instead, to create a build, use the CLI command upload-build, which creates // a new build record and uploads the build files in one step. (See the Amazon // GameLift Developer Guide (http://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-build-intro.html) // help on packaging and uploading your build.) // // To create a new build, identify the operating system of the game server binaries. // All game servers in a build must use the same operating system. Optionally, // specify a build name and version; this metadata is stored with other properties // in the build record and is displayed in the GameLift console (it is not visible // to players). If successful, this action returns the newly created build record // along with the Amazon S3 storage location and AWS account credentials. Use // the location and credentials to upload your game build. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation CreateBuild for usage and error information. // // Returned Error Codes: // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * ConflictException // The requested operation would cause a conflict with the current state of // a service resource associated with the request. Resolve the conflict before // retrying this request. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // func (c *GameLift) CreateBuild(input *CreateBuildInput) (*CreateBuildOutput, error) { req, out := c.CreateBuildRequest(input) err := req.Send() return out, err } const opCreateFleet = "CreateFleet" // CreateFleetRequest generates a "aws/request.Request" representing the // client's request for the CreateFleet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateFleet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateFleet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateFleetRequest method. // req, resp := client.CreateFleetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) CreateFleetRequest(input *CreateFleetInput) (req *request.Request, output *CreateFleetOutput) { op := &request.Operation{ Name: opCreateFleet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateFleetInput{} } req = c.newRequest(op, input, output) output = &CreateFleetOutput{} req.Data = output return } // CreateFleet API operation for Amazon GameLift. // // Creates a new fleet to run your game servers. A fleet is a set of Amazon // Elastic Compute Cloud (Amazon EC2) instances, each of which can run multiple // server processes to host game sessions. You configure a fleet to create instances // with certain hardware specifications (see Amazon EC2 Instance Types (http://aws.amazon.com/ec2/instance-types/) // for more information), and deploy a specified game build to each instance. // A newly created fleet passes through several statuses; once it reaches the // ACTIVE status, it can begin hosting game sessions. // // To create a new fleet, provide a fleet name, an EC2 instance type, and a // build ID of the game build to deploy. You can also configure the new fleet // with the following settings: (1) a runtime configuration describing what // server processes to run on each instance in the fleet (required to create // fleet), (2) access permissions for inbound traffic, (3) fleet-wide game session // protection, and (4) the location of default log files for GameLift to upload // and store. // // If the CreateFleet call is successful, Amazon GameLift performs the following // tasks: // // * Creates a fleet record and sets the status to NEW (followed by other // statuses as the fleet is activated). // // * Sets the fleet's capacity to 1 "desired", which causes GameLift to start // one new EC2 instance. // // * Starts launching server processes on the instance. If the fleet is configured // to run multiple server processes per instance, GameLift staggers each // launch by a few seconds. // // * Begins writing events to the fleet event log, which can be accessed // in the GameLift console. // // * Sets the fleet's status to ACTIVE once one server process in the fleet // is ready to host a game session. // // After a fleet is created, use the following actions to change fleet properties // and configuration: // // * UpdateFleetAttributes -- Update fleet metadata, including name and description. // // * UpdateFleetCapacity -- Increase or decrease the number of instances // you want the fleet to maintain. // // * UpdateFleetPortSettings -- Change the IP address and port ranges that // allow access to incoming traffic. // // * UpdateRuntimeConfiguration -- Change how server processes are launched // in the fleet, including launch path, launch parameters, and the number // of concurrent processes. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation CreateFleet for usage and error information. // // Returned Error Codes: // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * ConflictException // The requested operation would cause a conflict with the current state of // a service resource associated with the request. Resolve the conflict before // retrying this request. // // * LimitExceededException // The requested operation would cause the resource to exceed the allowed service // limit. Resolve the issue before retrying. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // func (c *GameLift) CreateFleet(input *CreateFleetInput) (*CreateFleetOutput, error) { req, out := c.CreateFleetRequest(input) err := req.Send() return out, err } const opCreateGameSession = "CreateGameSession" // CreateGameSessionRequest generates a "aws/request.Request" representing the // client's request for the CreateGameSession operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateGameSession for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateGameSession method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateGameSessionRequest method. // req, resp := client.CreateGameSessionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) CreateGameSessionRequest(input *CreateGameSessionInput) (req *request.Request, output *CreateGameSessionOutput) { op := &request.Operation{ Name: opCreateGameSession, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateGameSessionInput{} } req = c.newRequest(op, input, output) output = &CreateGameSessionOutput{} req.Data = output return } // CreateGameSession API operation for Amazon GameLift. // // Creates a multiplayer game session for players. This action creates a game // session record and assigns the new session to an instance in the specified // fleet, which initializes a new server process to host the game session. A // fleet must be in an ACTIVE status before a game session can be created in // it. // // To create a game session, specify either a fleet ID or an alias ID and indicate // the maximum number of players the game session allows. You can also provide // a name and a set of properties for your game (optional). If successful, a // GameSession object is returned containing session properties, including an // IP address. By default, newly created game sessions are set to accept adding // any new players to the game session. Use UpdateGameSession to change the // creation policy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation CreateGameSession for usage and error information. // // Returned Error Codes: // * ConflictException // The requested operation would cause a conflict with the current state of // a service resource associated with the request. Resolve the conflict before // retrying this request. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * InvalidFleetStatusException // The requested operation would cause a conflict with the current state of // a resource associated with the request and/or the fleet. Resolve the conflict // before retrying. // // * TerminalRoutingStrategyException // The service is unable to resolve the routing for a particular alias because // it has a terminal RoutingStrategy associated with it. The message returned // in this exception is the message defined in the routing strategy itself. // Such requests should only be retried if the routing strategy for the specified // alias is modified. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * FleetCapacityExceededException // The specified fleet has no available instances to fulfill a CreateGameSession // request. Clients can retry such requests immediately or after a waiting period. // // * LimitExceededException // The requested operation would cause the resource to exceed the allowed service // limit. Resolve the issue before retrying. // // * IdempotentParameterMismatchException // A game session with this custom ID string already exists in this fleet. Resolve // this conflict before retrying this request. // func (c *GameLift) CreateGameSession(input *CreateGameSessionInput) (*CreateGameSessionOutput, error) { req, out := c.CreateGameSessionRequest(input) err := req.Send() return out, err } const opCreatePlayerSession = "CreatePlayerSession" // CreatePlayerSessionRequest generates a "aws/request.Request" representing the // client's request for the CreatePlayerSession operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreatePlayerSession for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreatePlayerSession method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreatePlayerSessionRequest method. // req, resp := client.CreatePlayerSessionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) CreatePlayerSessionRequest(input *CreatePlayerSessionInput) (req *request.Request, output *CreatePlayerSessionOutput) { op := &request.Operation{ Name: opCreatePlayerSession, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreatePlayerSessionInput{} } req = c.newRequest(op, input, output) output = &CreatePlayerSessionOutput{} req.Data = output return } // CreatePlayerSession API operation for Amazon GameLift. // // Adds a player to a game session and creates a player session record. A game // session must be in an ACTIVE status, have a creation policy of ALLOW_ALL, // and have an open player slot before players can be added to the session. // // To create a player session, specify a game session ID and player ID. If successful, // the player is added to the game session and a new PlayerSession object is // returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation CreatePlayerSession for usage and error information. // // Returned Error Codes: // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * InvalidGameSessionStatusException // The requested operation would cause a conflict with the current state of // a resource associated with the request and/or the game instance. Resolve // the conflict before retrying. // // * GameSessionFullException // The game instance is currently full and cannot allow the requested player(s) // to join. Clients can retry such requests immediately or after a waiting period. // // * TerminalRoutingStrategyException // The service is unable to resolve the routing for a particular alias because // it has a terminal RoutingStrategy associated with it. The message returned // in this exception is the message defined in the routing strategy itself. // Such requests should only be retried if the routing strategy for the specified // alias is modified. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // func (c *GameLift) CreatePlayerSession(input *CreatePlayerSessionInput) (*CreatePlayerSessionOutput, error) { req, out := c.CreatePlayerSessionRequest(input) err := req.Send() return out, err } const opCreatePlayerSessions = "CreatePlayerSessions" // CreatePlayerSessionsRequest generates a "aws/request.Request" representing the // client's request for the CreatePlayerSessions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreatePlayerSessions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreatePlayerSessions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreatePlayerSessionsRequest method. // req, resp := client.CreatePlayerSessionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) CreatePlayerSessionsRequest(input *CreatePlayerSessionsInput) (req *request.Request, output *CreatePlayerSessionsOutput) { op := &request.Operation{ Name: opCreatePlayerSessions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreatePlayerSessionsInput{} } req = c.newRequest(op, input, output) output = &CreatePlayerSessionsOutput{} req.Data = output return } // CreatePlayerSessions API operation for Amazon GameLift. // // Adds a group of players to a game session. Similar to CreatePlayerSession, // this action allows you to add multiple players in a single call, which is // useful for games that provide party and/or matchmaking features. A game session // must be in an ACTIVE status, have a creation policy of ALLOW_ALL, and have // an open player slot before players can be added to the session. // // To create player sessions, specify a game session ID and a list of player // IDs. If successful, the players are added to the game session and a set of // new PlayerSession objects is returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation CreatePlayerSessions for usage and error information. // // Returned Error Codes: // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * InvalidGameSessionStatusException // The requested operation would cause a conflict with the current state of // a resource associated with the request and/or the game instance. Resolve // the conflict before retrying. // // * GameSessionFullException // The game instance is currently full and cannot allow the requested player(s) // to join. Clients can retry such requests immediately or after a waiting period. // // * TerminalRoutingStrategyException // The service is unable to resolve the routing for a particular alias because // it has a terminal RoutingStrategy associated with it. The message returned // in this exception is the message defined in the routing strategy itself. // Such requests should only be retried if the routing strategy for the specified // alias is modified. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // func (c *GameLift) CreatePlayerSessions(input *CreatePlayerSessionsInput) (*CreatePlayerSessionsOutput, error) { req, out := c.CreatePlayerSessionsRequest(input) err := req.Send() return out, err } const opDeleteAlias = "DeleteAlias" // DeleteAliasRequest generates a "aws/request.Request" representing the // client's request for the DeleteAlias operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteAlias for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteAlias method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteAliasRequest method. // req, resp := client.DeleteAliasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) DeleteAliasRequest(input *DeleteAliasInput) (req *request.Request, output *DeleteAliasOutput) { op := &request.Operation{ Name: opDeleteAlias, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteAliasInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteAliasOutput{} req.Data = output return } // DeleteAlias API operation for Amazon GameLift. // // Deletes an alias. This action removes all record of the alias; game clients // attempting to access a server process using the deleted alias receive an // error. To delete an alias, specify the alias ID to be deleted. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation DeleteAlias for usage and error information. // // Returned Error Codes: // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // func (c *GameLift) DeleteAlias(input *DeleteAliasInput) (*DeleteAliasOutput, error) { req, out := c.DeleteAliasRequest(input) err := req.Send() return out, err } const opDeleteBuild = "DeleteBuild" // DeleteBuildRequest generates a "aws/request.Request" representing the // client's request for the DeleteBuild operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteBuild for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteBuild method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteBuildRequest method. // req, resp := client.DeleteBuildRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) DeleteBuildRequest(input *DeleteBuildInput) (req *request.Request, output *DeleteBuildOutput) { op := &request.Operation{ Name: opDeleteBuild, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteBuildInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteBuildOutput{} req.Data = output return } // DeleteBuild API operation for Amazon GameLift. // // Deletes a build. This action permanently deletes the build record and any // uploaded build files. // // To delete a build, specify its ID. Deleting a build does not affect the status // of any active fleets using the build, but you can no longer create new fleets // with the deleted build. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation DeleteBuild for usage and error information. // // Returned Error Codes: // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // func (c *GameLift) DeleteBuild(input *DeleteBuildInput) (*DeleteBuildOutput, error) { req, out := c.DeleteBuildRequest(input) err := req.Send() return out, err } const opDeleteFleet = "DeleteFleet" // DeleteFleetRequest generates a "aws/request.Request" representing the // client's request for the DeleteFleet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteFleet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteFleet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteFleetRequest method. // req, resp := client.DeleteFleetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) DeleteFleetRequest(input *DeleteFleetInput) (req *request.Request, output *DeleteFleetOutput) { op := &request.Operation{ Name: opDeleteFleet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteFleetInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteFleetOutput{} req.Data = output return } // DeleteFleet API operation for Amazon GameLift. // // Deletes everything related to a fleet. Before deleting a fleet, you must // set the fleet's desired capacity to zero. See UpdateFleetCapacity. // // This action removes the fleet's resources and the fleet record. Once a fleet // is deleted, you can no longer use that fleet. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation DeleteFleet for usage and error information. // // Returned Error Codes: // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * InvalidFleetStatusException // The requested operation would cause a conflict with the current state of // a resource associated with the request and/or the fleet. Resolve the conflict // before retrying. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // func (c *GameLift) DeleteFleet(input *DeleteFleetInput) (*DeleteFleetOutput, error) { req, out := c.DeleteFleetRequest(input) err := req.Send() return out, err } const opDeleteScalingPolicy = "DeleteScalingPolicy" // DeleteScalingPolicyRequest generates a "aws/request.Request" representing the // client's request for the DeleteScalingPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteScalingPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteScalingPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteScalingPolicyRequest method. // req, resp := client.DeleteScalingPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) DeleteScalingPolicyRequest(input *DeleteScalingPolicyInput) (req *request.Request, output *DeleteScalingPolicyOutput) { op := &request.Operation{ Name: opDeleteScalingPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteScalingPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteScalingPolicyOutput{} req.Data = output return } // DeleteScalingPolicy API operation for Amazon GameLift. // // Deletes a fleet scaling policy. This action means that the policy is no longer // in force and removes all record of it. To delete a scaling policy, specify // both the scaling policy name and the fleet ID it is associated with. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation DeleteScalingPolicy for usage and error information. // // Returned Error Codes: // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // func (c *GameLift) DeleteScalingPolicy(input *DeleteScalingPolicyInput) (*DeleteScalingPolicyOutput, error) { req, out := c.DeleteScalingPolicyRequest(input) err := req.Send() return out, err } const opDescribeAlias = "DescribeAlias" // DescribeAliasRequest generates a "aws/request.Request" representing the // client's request for the DescribeAlias operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAlias for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAlias method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAliasRequest method. // req, resp := client.DescribeAliasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) DescribeAliasRequest(input *DescribeAliasInput) (req *request.Request, output *DescribeAliasOutput) { op := &request.Operation{ Name: opDescribeAlias, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAliasInput{} } req = c.newRequest(op, input, output) output = &DescribeAliasOutput{} req.Data = output return } // DescribeAlias API operation for Amazon GameLift. // // Retrieves properties for a specified alias. To get the alias, specify an // alias ID. If successful, an Alias object is returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation DescribeAlias for usage and error information. // // Returned Error Codes: // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // func (c *GameLift) DescribeAlias(input *DescribeAliasInput) (*DescribeAliasOutput, error) { req, out := c.DescribeAliasRequest(input) err := req.Send() return out, err } const opDescribeBuild = "DescribeBuild" // DescribeBuildRequest generates a "aws/request.Request" representing the // client's request for the DescribeBuild operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeBuild for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeBuild method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeBuildRequest method. // req, resp := client.DescribeBuildRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) DescribeBuildRequest(input *DescribeBuildInput) (req *request.Request, output *DescribeBuildOutput) { op := &request.Operation{ Name: opDescribeBuild, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeBuildInput{} } req = c.newRequest(op, input, output) output = &DescribeBuildOutput{} req.Data = output return } // DescribeBuild API operation for Amazon GameLift. // // Retrieves properties for a build. To get a build record, specify a build // ID. If successful, an object containing the build properties is returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation DescribeBuild for usage and error information. // // Returned Error Codes: // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // func (c *GameLift) DescribeBuild(input *DescribeBuildInput) (*DescribeBuildOutput, error) { req, out := c.DescribeBuildRequest(input) err := req.Send() return out, err } const opDescribeEC2InstanceLimits = "DescribeEC2InstanceLimits" // DescribeEC2InstanceLimitsRequest generates a "aws/request.Request" representing the // client's request for the DescribeEC2InstanceLimits operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEC2InstanceLimits for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEC2InstanceLimits method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEC2InstanceLimitsRequest method. // req, resp := client.DescribeEC2InstanceLimitsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) DescribeEC2InstanceLimitsRequest(input *DescribeEC2InstanceLimitsInput) (req *request.Request, output *DescribeEC2InstanceLimitsOutput) { op := &request.Operation{ Name: opDescribeEC2InstanceLimits, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeEC2InstanceLimitsInput{} } req = c.newRequest(op, input, output) output = &DescribeEC2InstanceLimitsOutput{} req.Data = output return } // DescribeEC2InstanceLimits API operation for Amazon GameLift. // // Retrieves the following information for the specified EC2 instance type: // // * maximum number of instances allowed per AWS account (service limit) // // * current usage level for the AWS account // // Service limits vary depending on region. Available regions for GameLift can // be found in the AWS Management Console for GameLift (see the drop-down list // in the upper right corner). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation DescribeEC2InstanceLimits for usage and error information. // // Returned Error Codes: // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // func (c *GameLift) DescribeEC2InstanceLimits(input *DescribeEC2InstanceLimitsInput) (*DescribeEC2InstanceLimitsOutput, error) { req, out := c.DescribeEC2InstanceLimitsRequest(input) err := req.Send() return out, err } const opDescribeFleetAttributes = "DescribeFleetAttributes" // DescribeFleetAttributesRequest generates a "aws/request.Request" representing the // client's request for the DescribeFleetAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeFleetAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeFleetAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeFleetAttributesRequest method. // req, resp := client.DescribeFleetAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) DescribeFleetAttributesRequest(input *DescribeFleetAttributesInput) (req *request.Request, output *DescribeFleetAttributesOutput) { op := &request.Operation{ Name: opDescribeFleetAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeFleetAttributesInput{} } req = c.newRequest(op, input, output) output = &DescribeFleetAttributesOutput{} req.Data = output return } // DescribeFleetAttributes API operation for Amazon GameLift. // // Retrieves fleet properties, including metadata, status, and configuration, // for one or more fleets. You can request attributes for all fleets, or specify // a list of one or more fleet IDs. When requesting multiple fleets, use the // pagination parameters to retrieve results as a set of sequential pages. If // successful, a FleetAttributes object is returned for each requested fleet // ID. When specifying a list of fleet IDs, attribute objects are returned only // for fleets that currently exist. // // Some API actions may limit the number of fleet IDs allowed in one request. // If a request exceeds this limit, the request fails and the error message // includes the maximum allowed. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation DescribeFleetAttributes for usage and error information. // // Returned Error Codes: // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // func (c *GameLift) DescribeFleetAttributes(input *DescribeFleetAttributesInput) (*DescribeFleetAttributesOutput, error) { req, out := c.DescribeFleetAttributesRequest(input) err := req.Send() return out, err } const opDescribeFleetCapacity = "DescribeFleetCapacity" // DescribeFleetCapacityRequest generates a "aws/request.Request" representing the // client's request for the DescribeFleetCapacity operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeFleetCapacity for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeFleetCapacity method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeFleetCapacityRequest method. // req, resp := client.DescribeFleetCapacityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) DescribeFleetCapacityRequest(input *DescribeFleetCapacityInput) (req *request.Request, output *DescribeFleetCapacityOutput) { op := &request.Operation{ Name: opDescribeFleetCapacity, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeFleetCapacityInput{} } req = c.newRequest(op, input, output) output = &DescribeFleetCapacityOutput{} req.Data = output return } // DescribeFleetCapacity API operation for Amazon GameLift. // // Retrieves the current status of fleet capacity for one or more fleets. This // information includes the number of instances that have been requested for // the fleet and the number currently active. You can request capacity for all // fleets, or specify a list of one or more fleet IDs. When requesting multiple // fleets, use the pagination parameters to retrieve results as a set of sequential // pages. If successful, a FleetCapacity object is returned for each requested // fleet ID. When specifying a list of fleet IDs, attribute objects are returned // only for fleets that currently exist. // // Some API actions may limit the number of fleet IDs allowed in one request. // If a request exceeds this limit, the request fails and the error message // includes the maximum allowed. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation DescribeFleetCapacity for usage and error information. // // Returned Error Codes: // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // func (c *GameLift) DescribeFleetCapacity(input *DescribeFleetCapacityInput) (*DescribeFleetCapacityOutput, error) { req, out := c.DescribeFleetCapacityRequest(input) err := req.Send() return out, err } const opDescribeFleetEvents = "DescribeFleetEvents" // DescribeFleetEventsRequest generates a "aws/request.Request" representing the // client's request for the DescribeFleetEvents operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeFleetEvents for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeFleetEvents method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeFleetEventsRequest method. // req, resp := client.DescribeFleetEventsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) DescribeFleetEventsRequest(input *DescribeFleetEventsInput) (req *request.Request, output *DescribeFleetEventsOutput) { op := &request.Operation{ Name: opDescribeFleetEvents, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeFleetEventsInput{} } req = c.newRequest(op, input, output) output = &DescribeFleetEventsOutput{} req.Data = output return } // DescribeFleetEvents API operation for Amazon GameLift. // // Retrieves entries from the specified fleet's event log. You can specify a // time range to limit the result set. Use the pagination parameters to retrieve // results as a set of sequential pages. If successful, a collection of event // log entries matching the request are returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation DescribeFleetEvents for usage and error information. // // Returned Error Codes: // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // func (c *GameLift) DescribeFleetEvents(input *DescribeFleetEventsInput) (*DescribeFleetEventsOutput, error) { req, out := c.DescribeFleetEventsRequest(input) err := req.Send() return out, err } const opDescribeFleetPortSettings = "DescribeFleetPortSettings" // DescribeFleetPortSettingsRequest generates a "aws/request.Request" representing the // client's request for the DescribeFleetPortSettings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeFleetPortSettings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeFleetPortSettings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeFleetPortSettingsRequest method. // req, resp := client.DescribeFleetPortSettingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) DescribeFleetPortSettingsRequest(input *DescribeFleetPortSettingsInput) (req *request.Request, output *DescribeFleetPortSettingsOutput) { op := &request.Operation{ Name: opDescribeFleetPortSettings, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeFleetPortSettingsInput{} } req = c.newRequest(op, input, output) output = &DescribeFleetPortSettingsOutput{} req.Data = output return } // DescribeFleetPortSettings API operation for Amazon GameLift. // // Retrieves the inbound connection permissions for a fleet. Connection permissions // include a range of IP addresses and port settings that incoming traffic can // use to access server processes in the fleet. To get a fleet's inbound connection // permissions, specify a fleet ID. If successful, a collection of IpPermission // objects is returned for the requested fleet ID. If the requested fleet has // been deleted, the result set is empty. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation DescribeFleetPortSettings for usage and error information. // // Returned Error Codes: // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // func (c *GameLift) DescribeFleetPortSettings(input *DescribeFleetPortSettingsInput) (*DescribeFleetPortSettingsOutput, error) { req, out := c.DescribeFleetPortSettingsRequest(input) err := req.Send() return out, err } const opDescribeFleetUtilization = "DescribeFleetUtilization" // DescribeFleetUtilizationRequest generates a "aws/request.Request" representing the // client's request for the DescribeFleetUtilization operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeFleetUtilization for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeFleetUtilization method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeFleetUtilizationRequest method. // req, resp := client.DescribeFleetUtilizationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) DescribeFleetUtilizationRequest(input *DescribeFleetUtilizationInput) (req *request.Request, output *DescribeFleetUtilizationOutput) { op := &request.Operation{ Name: opDescribeFleetUtilization, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeFleetUtilizationInput{} } req = c.newRequest(op, input, output) output = &DescribeFleetUtilizationOutput{} req.Data = output return } // DescribeFleetUtilization API operation for Amazon GameLift. // // Retrieves utilization statistics for one or more fleets. You can request // utilization data for all fleets, or specify a list of one or more fleet IDs. // When requesting multiple fleets, use the pagination parameters to retrieve // results as a set of sequential pages. If successful, a FleetUtilization object // is returned for each requested fleet ID. When specifying a list of fleet // IDs, utilization objects are returned only for fleets that currently exist. // // Some API actions may limit the number of fleet IDs allowed in one request. // If a request exceeds this limit, the request fails and the error message // includes the maximum allowed. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation DescribeFleetUtilization for usage and error information. // // Returned Error Codes: // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // func (c *GameLift) DescribeFleetUtilization(input *DescribeFleetUtilizationInput) (*DescribeFleetUtilizationOutput, error) { req, out := c.DescribeFleetUtilizationRequest(input) err := req.Send() return out, err } const opDescribeGameSessionDetails = "DescribeGameSessionDetails" // DescribeGameSessionDetailsRequest generates a "aws/request.Request" representing the // client's request for the DescribeGameSessionDetails operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeGameSessionDetails for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeGameSessionDetails method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeGameSessionDetailsRequest method. // req, resp := client.DescribeGameSessionDetailsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) DescribeGameSessionDetailsRequest(input *DescribeGameSessionDetailsInput) (req *request.Request, output *DescribeGameSessionDetailsOutput) { op := &request.Operation{ Name: opDescribeGameSessionDetails, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeGameSessionDetailsInput{} } req = c.newRequest(op, input, output) output = &DescribeGameSessionDetailsOutput{} req.Data = output return } // DescribeGameSessionDetails API operation for Amazon GameLift. // // Retrieves properties, including the protection policy in force, for one or // more game sessions. This action can be used in several ways: (1) provide // a GameSessionId to request details for a specific game session; (2) provide // either a FleetId or an AliasId to request properties for all game sessions // running on a fleet. // // To get game session record(s), specify just one of the following: game session // ID, fleet ID, or alias ID. You can filter this request by game session status. // Use the pagination parameters to retrieve results as a set of sequential // pages. If successful, a GameSessionDetail object is returned for each session // matching the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation DescribeGameSessionDetails for usage and error information. // // Returned Error Codes: // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * TerminalRoutingStrategyException // The service is unable to resolve the routing for a particular alias because // it has a terminal RoutingStrategy associated with it. The message returned // in this exception is the message defined in the routing strategy itself. // Such requests should only be retried if the routing strategy for the specified // alias is modified. // func (c *GameLift) DescribeGameSessionDetails(input *DescribeGameSessionDetailsInput) (*DescribeGameSessionDetailsOutput, error) { req, out := c.DescribeGameSessionDetailsRequest(input) err := req.Send() return out, err } const opDescribeGameSessions = "DescribeGameSessions" // DescribeGameSessionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeGameSessions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeGameSessions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeGameSessions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeGameSessionsRequest method. // req, resp := client.DescribeGameSessionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) DescribeGameSessionsRequest(input *DescribeGameSessionsInput) (req *request.Request, output *DescribeGameSessionsOutput) { op := &request.Operation{ Name: opDescribeGameSessions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeGameSessionsInput{} } req = c.newRequest(op, input, output) output = &DescribeGameSessionsOutput{} req.Data = output return } // DescribeGameSessions API operation for Amazon GameLift. // // Retrieves a set of one or more game sessions and properties. This action // can be used in several ways: (1) provide a GameSessionId to request properties // for a specific game session; (2) provide a FleetId or an AliasId to request // properties for all game sessions running on a fleet. You can also use SearchGameSessions, // which allows you to retrieve all game sessions or filter on certain criteria, // but only returns game sessions with a status of ACTIVE. If you need to retrieve // the protection policy for each game session, use DescribeGameSessionDetails. // // To get game session record(s), specify just one of the following: game session // ID, fleet ID, or alias ID. You can filter this request by game session status. // Use the pagination parameters to retrieve results as a set of sequential // pages. If successful, a GameSession object is returned for each session matching // the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation DescribeGameSessions for usage and error information. // // Returned Error Codes: // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * TerminalRoutingStrategyException // The service is unable to resolve the routing for a particular alias because // it has a terminal RoutingStrategy associated with it. The message returned // in this exception is the message defined in the routing strategy itself. // Such requests should only be retried if the routing strategy for the specified // alias is modified. // func (c *GameLift) DescribeGameSessions(input *DescribeGameSessionsInput) (*DescribeGameSessionsOutput, error) { req, out := c.DescribeGameSessionsRequest(input) err := req.Send() return out, err } const opDescribeInstances = "DescribeInstances" // DescribeInstancesRequest generates a "aws/request.Request" representing the // client's request for the DescribeInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeInstancesRequest method. // req, resp := client.DescribeInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) DescribeInstancesRequest(input *DescribeInstancesInput) (req *request.Request, output *DescribeInstancesOutput) { op := &request.Operation{ Name: opDescribeInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeInstancesInput{} } req = c.newRequest(op, input, output) output = &DescribeInstancesOutput{} req.Data = output return } // DescribeInstances API operation for Amazon GameLift. // // Retrieves information about instances in a fleet. // // To get information on a specific instance, specify both a fleet ID and instance // ID. To get information for all instances in a fleet, specify a fleet ID only. // Use the pagination parameters to retrieve results as a set of sequential // pages. If successful, an Instance object is returned for each result. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation DescribeInstances for usage and error information. // // Returned Error Codes: // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // func (c *GameLift) DescribeInstances(input *DescribeInstancesInput) (*DescribeInstancesOutput, error) { req, out := c.DescribeInstancesRequest(input) err := req.Send() return out, err } const opDescribePlayerSessions = "DescribePlayerSessions" // DescribePlayerSessionsRequest generates a "aws/request.Request" representing the // client's request for the DescribePlayerSessions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribePlayerSessions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribePlayerSessions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribePlayerSessionsRequest method. // req, resp := client.DescribePlayerSessionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) DescribePlayerSessionsRequest(input *DescribePlayerSessionsInput) (req *request.Request, output *DescribePlayerSessionsOutput) { op := &request.Operation{ Name: opDescribePlayerSessions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribePlayerSessionsInput{} } req = c.newRequest(op, input, output) output = &DescribePlayerSessionsOutput{} req.Data = output return } // DescribePlayerSessions API operation for Amazon GameLift. // // Retrieves properties for one or more player sessions. This action can be // used in several ways: (1) provide a PlayerSessionId parameter to request // properties for a specific player session; (2) provide a GameSessionId parameter // to request properties for all player sessions in the specified game session; // (3) provide a PlayerId parameter to request properties for all player sessions // of a specified player. // // To get game session record(s), specify only one of the following: a player // session ID, a game session ID, or a player ID. You can filter this request // by player session status. Use the pagination parameters to retrieve results // as a set of sequential pages. If successful, a PlayerSession object is returned // for each session matching the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation DescribePlayerSessions for usage and error information. // // Returned Error Codes: // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // func (c *GameLift) DescribePlayerSessions(input *DescribePlayerSessionsInput) (*DescribePlayerSessionsOutput, error) { req, out := c.DescribePlayerSessionsRequest(input) err := req.Send() return out, err } const opDescribeRuntimeConfiguration = "DescribeRuntimeConfiguration" // DescribeRuntimeConfigurationRequest generates a "aws/request.Request" representing the // client's request for the DescribeRuntimeConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeRuntimeConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeRuntimeConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeRuntimeConfigurationRequest method. // req, resp := client.DescribeRuntimeConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) DescribeRuntimeConfigurationRequest(input *DescribeRuntimeConfigurationInput) (req *request.Request, output *DescribeRuntimeConfigurationOutput) { op := &request.Operation{ Name: opDescribeRuntimeConfiguration, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeRuntimeConfigurationInput{} } req = c.newRequest(op, input, output) output = &DescribeRuntimeConfigurationOutput{} req.Data = output return } // DescribeRuntimeConfiguration API operation for Amazon GameLift. // // Retrieves the current runtime configuration for the specified fleet. The // runtime configuration tells GameLift how to launch server processes on instances // in the fleet. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation DescribeRuntimeConfiguration for usage and error information. // // Returned Error Codes: // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // func (c *GameLift) DescribeRuntimeConfiguration(input *DescribeRuntimeConfigurationInput) (*DescribeRuntimeConfigurationOutput, error) { req, out := c.DescribeRuntimeConfigurationRequest(input) err := req.Send() return out, err } const opDescribeScalingPolicies = "DescribeScalingPolicies" // DescribeScalingPoliciesRequest generates a "aws/request.Request" representing the // client's request for the DescribeScalingPolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeScalingPolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeScalingPolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeScalingPoliciesRequest method. // req, resp := client.DescribeScalingPoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) DescribeScalingPoliciesRequest(input *DescribeScalingPoliciesInput) (req *request.Request, output *DescribeScalingPoliciesOutput) { op := &request.Operation{ Name: opDescribeScalingPolicies, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeScalingPoliciesInput{} } req = c.newRequest(op, input, output) output = &DescribeScalingPoliciesOutput{} req.Data = output return } // DescribeScalingPolicies API operation for Amazon GameLift. // // Retrieves all scaling policies applied to a fleet. // // To get a fleet's scaling policies, specify the fleet ID. You can filter this // request by policy status, such as to retrieve only active scaling policies. // Use the pagination parameters to retrieve results as a set of sequential // pages. If successful, set of ScalingPolicy objects is returned for the fleet. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation DescribeScalingPolicies for usage and error information. // // Returned Error Codes: // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // func (c *GameLift) DescribeScalingPolicies(input *DescribeScalingPoliciesInput) (*DescribeScalingPoliciesOutput, error) { req, out := c.DescribeScalingPoliciesRequest(input) err := req.Send() return out, err } const opGetGameSessionLogUrl = "GetGameSessionLogUrl" // GetGameSessionLogUrlRequest generates a "aws/request.Request" representing the // client's request for the GetGameSessionLogUrl operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetGameSessionLogUrl for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetGameSessionLogUrl method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetGameSessionLogUrlRequest method. // req, resp := client.GetGameSessionLogUrlRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) GetGameSessionLogUrlRequest(input *GetGameSessionLogUrlInput) (req *request.Request, output *GetGameSessionLogUrlOutput) { op := &request.Operation{ Name: opGetGameSessionLogUrl, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetGameSessionLogUrlInput{} } req = c.newRequest(op, input, output) output = &GetGameSessionLogUrlOutput{} req.Data = output return } // GetGameSessionLogUrl API operation for Amazon GameLift. // // Retrieves the location of stored game session logs for a specified game session. // When a game session is terminated, Amazon GameLift automatically stores the // logs in Amazon S3. Use this URL to download the logs. // // See the AWS Service Limits (http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_gamelift) // page for maximum log file sizes. Log files that exceed this limit are not // saved. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation GetGameSessionLogUrl for usage and error information. // // Returned Error Codes: // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // func (c *GameLift) GetGameSessionLogUrl(input *GetGameSessionLogUrlInput) (*GetGameSessionLogUrlOutput, error) { req, out := c.GetGameSessionLogUrlRequest(input) err := req.Send() return out, err } const opListAliases = "ListAliases" // ListAliasesRequest generates a "aws/request.Request" representing the // client's request for the ListAliases operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListAliases for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListAliases method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListAliasesRequest method. // req, resp := client.ListAliasesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) ListAliasesRequest(input *ListAliasesInput) (req *request.Request, output *ListAliasesOutput) { op := &request.Operation{ Name: opListAliases, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListAliasesInput{} } req = c.newRequest(op, input, output) output = &ListAliasesOutput{} req.Data = output return } // ListAliases API operation for Amazon GameLift. // // Retrieves a collection of alias records for this AWS account. You can filter // the result set by alias name and/or routing strategy type. Use the pagination // parameters to retrieve results in sequential pages. // // Aliases are not listed in any particular order. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation ListAliases for usage and error information. // // Returned Error Codes: // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // func (c *GameLift) ListAliases(input *ListAliasesInput) (*ListAliasesOutput, error) { req, out := c.ListAliasesRequest(input) err := req.Send() return out, err } const opListBuilds = "ListBuilds" // ListBuildsRequest generates a "aws/request.Request" representing the // client's request for the ListBuilds operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListBuilds for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListBuilds method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListBuildsRequest method. // req, resp := client.ListBuildsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) ListBuildsRequest(input *ListBuildsInput) (req *request.Request, output *ListBuildsOutput) { op := &request.Operation{ Name: opListBuilds, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListBuildsInput{} } req = c.newRequest(op, input, output) output = &ListBuildsOutput{} req.Data = output return } // ListBuilds API operation for Amazon GameLift. // // Retrieves build records for all builds associated with the AWS account in // use. You can limit results to builds that are in a specific status by using // the Status parameter. Use the pagination parameters to retrieve results in // a set of sequential pages. // // Build records are not listed in any particular order. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation ListBuilds for usage and error information. // // Returned Error Codes: // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // func (c *GameLift) ListBuilds(input *ListBuildsInput) (*ListBuildsOutput, error) { req, out := c.ListBuildsRequest(input) err := req.Send() return out, err } const opListFleets = "ListFleets" // ListFleetsRequest generates a "aws/request.Request" representing the // client's request for the ListFleets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListFleets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListFleets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListFleetsRequest method. // req, resp := client.ListFleetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) ListFleetsRequest(input *ListFleetsInput) (req *request.Request, output *ListFleetsOutput) { op := &request.Operation{ Name: opListFleets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListFleetsInput{} } req = c.newRequest(op, input, output) output = &ListFleetsOutput{} req.Data = output return } // ListFleets API operation for Amazon GameLift. // // Retrieves a collection of fleet records for this AWS account. You can filter // the result set by build ID. Use the pagination parameters to retrieve results // in sequential pages. // // Fleet records are not listed in any particular order. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation ListFleets for usage and error information. // // Returned Error Codes: // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // func (c *GameLift) ListFleets(input *ListFleetsInput) (*ListFleetsOutput, error) { req, out := c.ListFleetsRequest(input) err := req.Send() return out, err } const opPutScalingPolicy = "PutScalingPolicy" // PutScalingPolicyRequest generates a "aws/request.Request" representing the // client's request for the PutScalingPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutScalingPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutScalingPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutScalingPolicyRequest method. // req, resp := client.PutScalingPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) PutScalingPolicyRequest(input *PutScalingPolicyInput) (req *request.Request, output *PutScalingPolicyOutput) { op := &request.Operation{ Name: opPutScalingPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutScalingPolicyInput{} } req = c.newRequest(op, input, output) output = &PutScalingPolicyOutput{} req.Data = output return } // PutScalingPolicy API operation for Amazon GameLift. // // Creates or updates a scaling policy for a fleet. An active scaling policy // prompts Amazon GameLift to track a certain metric for a fleet and automatically // change the fleet's capacity in specific circumstances. Each scaling policy // contains one rule statement. Fleets can have multiple scaling policies in // force simultaneously. // // A scaling policy rule statement has the following structure: // // If [MetricName] is [ComparisonOperator][Threshold] for [EvaluationPeriods] // minutes, then [ScalingAdjustmentType] to/by [ScalingAdjustment]. // // For example, this policy: "If the number of idle instances exceeds 20 for // more than 15 minutes, then reduce the fleet capacity by 10 instances" could // be implemented as the following rule statement: // // If [IdleInstances] is [GreaterThanOrEqualToThreshold] [20] for [15] minutes, // then [ChangeInCapacity] by [-10]. // // To create or update a scaling policy, specify a unique combination of name // and fleet ID, and set the rule values. All parameters for this action are // required. If successful, the policy name is returned. Scaling policies cannot // be suspended or made inactive. To stop enforcing a scaling policy, call DeleteScalingPolicy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation PutScalingPolicy for usage and error information. // // Returned Error Codes: // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // func (c *GameLift) PutScalingPolicy(input *PutScalingPolicyInput) (*PutScalingPolicyOutput, error) { req, out := c.PutScalingPolicyRequest(input) err := req.Send() return out, err } const opRequestUploadCredentials = "RequestUploadCredentials" // RequestUploadCredentialsRequest generates a "aws/request.Request" representing the // client's request for the RequestUploadCredentials operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RequestUploadCredentials for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RequestUploadCredentials method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RequestUploadCredentialsRequest method. // req, resp := client.RequestUploadCredentialsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) RequestUploadCredentialsRequest(input *RequestUploadCredentialsInput) (req *request.Request, output *RequestUploadCredentialsOutput) { op := &request.Operation{ Name: opRequestUploadCredentials, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RequestUploadCredentialsInput{} } req = c.newRequest(op, input, output) output = &RequestUploadCredentialsOutput{} req.Data = output return } // RequestUploadCredentials API operation for Amazon GameLift. // // Retrieves a fresh set of upload credentials and the assigned Amazon S3 storage // location for a specific build. Valid credentials are required to upload your // game build files to Amazon S3. // // Call this action only if you need credentials for a build created with CreateBuild. // This is a rare situation; in most cases, builds are created using the CLI // command upload-build, which creates a build record and also uploads build // files. // // Upload credentials are returned when you create the build, but they have // a limited lifespan. You can get fresh credentials and use them to re-upload // game files until the status of that build changes to READY. Once this happens, // you must create a brand new build. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation RequestUploadCredentials for usage and error information. // // Returned Error Codes: // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // func (c *GameLift) RequestUploadCredentials(input *RequestUploadCredentialsInput) (*RequestUploadCredentialsOutput, error) { req, out := c.RequestUploadCredentialsRequest(input) err := req.Send() return out, err } const opResolveAlias = "ResolveAlias" // ResolveAliasRequest generates a "aws/request.Request" representing the // client's request for the ResolveAlias operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ResolveAlias for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ResolveAlias method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ResolveAliasRequest method. // req, resp := client.ResolveAliasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) ResolveAliasRequest(input *ResolveAliasInput) (req *request.Request, output *ResolveAliasOutput) { op := &request.Operation{ Name: opResolveAlias, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ResolveAliasInput{} } req = c.newRequest(op, input, output) output = &ResolveAliasOutput{} req.Data = output return } // ResolveAlias API operation for Amazon GameLift. // // Retrieves the fleet ID that a specified alias is currently pointing to. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation ResolveAlias for usage and error information. // // Returned Error Codes: // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * TerminalRoutingStrategyException // The service is unable to resolve the routing for a particular alias because // it has a terminal RoutingStrategy associated with it. The message returned // in this exception is the message defined in the routing strategy itself. // Such requests should only be retried if the routing strategy for the specified // alias is modified. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // func (c *GameLift) ResolveAlias(input *ResolveAliasInput) (*ResolveAliasOutput, error) { req, out := c.ResolveAliasRequest(input) err := req.Send() return out, err } const opSearchGameSessions = "SearchGameSessions" // SearchGameSessionsRequest generates a "aws/request.Request" representing the // client's request for the SearchGameSessions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SearchGameSessions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SearchGameSessions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SearchGameSessionsRequest method. // req, resp := client.SearchGameSessionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) SearchGameSessionsRequest(input *SearchGameSessionsInput) (req *request.Request, output *SearchGameSessionsOutput) { op := &request.Operation{ Name: opSearchGameSessions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SearchGameSessionsInput{} } req = c.newRequest(op, input, output) output = &SearchGameSessionsOutput{} req.Data = output return } // SearchGameSessions API operation for Amazon GameLift. // // Retrieves a set of game sessions that match a set of search criteria and // sorts them in a specified order. Currently a game session search is limited // to a single fleet. Search results include only game sessions that are in // ACTIVE status. If you need to retrieve game sessions with a status other // than active, use DescribeGameSessions. If you need to retrieve the protection // policy for each game session, use DescribeGameSessionDetails. // // You can search or sort by the following game session attributes: // // * gameSessionId -- ID value assigned to a game session. This unique value // is returned in a GameSession object when a new game session is created. // // // * gameSessionName -- Name assigned to a game session. This value is set // when requesting a new game session with CreateGameSession or updating // with UpdateGameSession. Game session names do not need to be unique to // a game session. // // * creationTimeMillis -- Value indicating when a game session was created. // It is expressed in Unix time as milliseconds. // // * playerSessionCount -- Number of players currently connected to a game // session. This value changes rapidly as players join the session or drop // out. // // * maximumSessions -- Maximum number of player sessions allowed for a game // session. This value is set when requesting a new game session with CreateGameSession // or updating with UpdateGameSession. // // * hasAvailablePlayerSessions -- Boolean value indicating whether or not // a game session has reached its maximum number of players. When searching // with this attribute, the search value must be true or false. It is highly // recommended that all search requests include this filter attribute to // optimize search performance and return only sessions that players can // join. // // To search or sort, specify either a fleet ID or an alias ID, and provide // a search filter expression, a sort expression, or both. Use the pagination // parameters to retrieve results as a set of sequential pages. If successful, // a collection of GameSession objects matching the request is returned. // // Returned values for playerSessionCount and hasAvailablePlayerSessions change // quickly as players join sessions and others drop out. Results should be considered // a snapshot in time. Be sure to refresh search results often, and handle sessions // that fill up before a player can join. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation SearchGameSessions for usage and error information. // // Returned Error Codes: // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * TerminalRoutingStrategyException // The service is unable to resolve the routing for a particular alias because // it has a terminal RoutingStrategy associated with it. The message returned // in this exception is the message defined in the routing strategy itself. // Such requests should only be retried if the routing strategy for the specified // alias is modified. // func (c *GameLift) SearchGameSessions(input *SearchGameSessionsInput) (*SearchGameSessionsOutput, error) { req, out := c.SearchGameSessionsRequest(input) err := req.Send() return out, err } const opUpdateAlias = "UpdateAlias" // UpdateAliasRequest generates a "aws/request.Request" representing the // client's request for the UpdateAlias operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateAlias for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateAlias method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateAliasRequest method. // req, resp := client.UpdateAliasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) UpdateAliasRequest(input *UpdateAliasInput) (req *request.Request, output *UpdateAliasOutput) { op := &request.Operation{ Name: opUpdateAlias, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateAliasInput{} } req = c.newRequest(op, input, output) output = &UpdateAliasOutput{} req.Data = output return } // UpdateAlias API operation for Amazon GameLift. // // Updates properties for an alias. To update properties, specify the alias // ID to be updated and provide the information to be changed. To reassign an // alias to another fleet, provide an updated routing strategy. If successful, // the updated alias record is returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation UpdateAlias for usage and error information. // // Returned Error Codes: // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // func (c *GameLift) UpdateAlias(input *UpdateAliasInput) (*UpdateAliasOutput, error) { req, out := c.UpdateAliasRequest(input) err := req.Send() return out, err } const opUpdateBuild = "UpdateBuild" // UpdateBuildRequest generates a "aws/request.Request" representing the // client's request for the UpdateBuild operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateBuild for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateBuild method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateBuildRequest method. // req, resp := client.UpdateBuildRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) UpdateBuildRequest(input *UpdateBuildInput) (req *request.Request, output *UpdateBuildOutput) { op := &request.Operation{ Name: opUpdateBuild, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateBuildInput{} } req = c.newRequest(op, input, output) output = &UpdateBuildOutput{} req.Data = output return } // UpdateBuild API operation for Amazon GameLift. // // Updates metadata in a build record, including the build name and version. // To update the metadata, specify the build ID to update and provide the new // values. If successful, a build object containing the updated metadata is // returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation UpdateBuild for usage and error information. // // Returned Error Codes: // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // func (c *GameLift) UpdateBuild(input *UpdateBuildInput) (*UpdateBuildOutput, error) { req, out := c.UpdateBuildRequest(input) err := req.Send() return out, err } const opUpdateFleetAttributes = "UpdateFleetAttributes" // UpdateFleetAttributesRequest generates a "aws/request.Request" representing the // client's request for the UpdateFleetAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateFleetAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateFleetAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateFleetAttributesRequest method. // req, resp := client.UpdateFleetAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) UpdateFleetAttributesRequest(input *UpdateFleetAttributesInput) (req *request.Request, output *UpdateFleetAttributesOutput) { op := &request.Operation{ Name: opUpdateFleetAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateFleetAttributesInput{} } req = c.newRequest(op, input, output) output = &UpdateFleetAttributesOutput{} req.Data = output return } // UpdateFleetAttributes API operation for Amazon GameLift. // // Updates fleet properties, including name and description, for a fleet. To // update metadata, specify the fleet ID and the property values you want to // change. If successful, the fleet ID for the updated fleet is returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation UpdateFleetAttributes for usage and error information. // // Returned Error Codes: // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * ConflictException // The requested operation would cause a conflict with the current state of // a service resource associated with the request. Resolve the conflict before // retrying this request. // // * InvalidFleetStatusException // The requested operation would cause a conflict with the current state of // a resource associated with the request and/or the fleet. Resolve the conflict // before retrying. // // * LimitExceededException // The requested operation would cause the resource to exceed the allowed service // limit. Resolve the issue before retrying. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // func (c *GameLift) UpdateFleetAttributes(input *UpdateFleetAttributesInput) (*UpdateFleetAttributesOutput, error) { req, out := c.UpdateFleetAttributesRequest(input) err := req.Send() return out, err } const opUpdateFleetCapacity = "UpdateFleetCapacity" // UpdateFleetCapacityRequest generates a "aws/request.Request" representing the // client's request for the UpdateFleetCapacity operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateFleetCapacity for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateFleetCapacity method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateFleetCapacityRequest method. // req, resp := client.UpdateFleetCapacityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) UpdateFleetCapacityRequest(input *UpdateFleetCapacityInput) (req *request.Request, output *UpdateFleetCapacityOutput) { op := &request.Operation{ Name: opUpdateFleetCapacity, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateFleetCapacityInput{} } req = c.newRequest(op, input, output) output = &UpdateFleetCapacityOutput{} req.Data = output return } // UpdateFleetCapacity API operation for Amazon GameLift. // // Updates capacity settings for a fleet. Use this action to specify the number // of EC2 instances (hosts) that you want this fleet to contain. Before calling // this action, you may want to call DescribeEC2InstanceLimits to get the maximum // capacity based on the fleet's EC2 instance type. // // If you're using autoscaling (see PutScalingPolicy), you may want to specify // a minimum and/or maximum capacity. If you don't provide these, autoscaling // can set capacity anywhere between zero and the service limits (http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_gamelift). // // To update fleet capacity, specify the fleet ID and the number of instances // you want the fleet to host. If successful, Amazon GameLift starts or terminates // instances so that the fleet's active instance count matches the desired instance // count. You can view a fleet's current capacity information by calling DescribeFleetCapacity. // If the desired instance count is higher than the instance type's limit, the // "Limit Exceeded" exception occurs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation UpdateFleetCapacity for usage and error information. // // Returned Error Codes: // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * ConflictException // The requested operation would cause a conflict with the current state of // a service resource associated with the request. Resolve the conflict before // retrying this request. // // * LimitExceededException // The requested operation would cause the resource to exceed the allowed service // limit. Resolve the issue before retrying. // // * InvalidFleetStatusException // The requested operation would cause a conflict with the current state of // a resource associated with the request and/or the fleet. Resolve the conflict // before retrying. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // func (c *GameLift) UpdateFleetCapacity(input *UpdateFleetCapacityInput) (*UpdateFleetCapacityOutput, error) { req, out := c.UpdateFleetCapacityRequest(input) err := req.Send() return out, err } const opUpdateFleetPortSettings = "UpdateFleetPortSettings" // UpdateFleetPortSettingsRequest generates a "aws/request.Request" representing the // client's request for the UpdateFleetPortSettings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateFleetPortSettings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateFleetPortSettings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateFleetPortSettingsRequest method. // req, resp := client.UpdateFleetPortSettingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) UpdateFleetPortSettingsRequest(input *UpdateFleetPortSettingsInput) (req *request.Request, output *UpdateFleetPortSettingsOutput) { op := &request.Operation{ Name: opUpdateFleetPortSettings, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateFleetPortSettingsInput{} } req = c.newRequest(op, input, output) output = &UpdateFleetPortSettingsOutput{} req.Data = output return } // UpdateFleetPortSettings API operation for Amazon GameLift. // // Updates port settings for a fleet. To update settings, specify the fleet // ID to be updated and list the permissions you want to update. List the permissions // you want to add in InboundPermissionAuthorizations, and permissions you want // to remove in InboundPermissionRevocations. Permissions to be removed must // match existing fleet permissions. If successful, the fleet ID for the updated // fleet is returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation UpdateFleetPortSettings for usage and error information. // // Returned Error Codes: // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * ConflictException // The requested operation would cause a conflict with the current state of // a service resource associated with the request. Resolve the conflict before // retrying this request. // // * InvalidFleetStatusException // The requested operation would cause a conflict with the current state of // a resource associated with the request and/or the fleet. Resolve the conflict // before retrying. // // * LimitExceededException // The requested operation would cause the resource to exceed the allowed service // limit. Resolve the issue before retrying. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // func (c *GameLift) UpdateFleetPortSettings(input *UpdateFleetPortSettingsInput) (*UpdateFleetPortSettingsOutput, error) { req, out := c.UpdateFleetPortSettingsRequest(input) err := req.Send() return out, err } const opUpdateGameSession = "UpdateGameSession" // UpdateGameSessionRequest generates a "aws/request.Request" representing the // client's request for the UpdateGameSession operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateGameSession for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateGameSession method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateGameSessionRequest method. // req, resp := client.UpdateGameSessionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) UpdateGameSessionRequest(input *UpdateGameSessionInput) (req *request.Request, output *UpdateGameSessionOutput) { op := &request.Operation{ Name: opUpdateGameSession, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateGameSessionInput{} } req = c.newRequest(op, input, output) output = &UpdateGameSessionOutput{} req.Data = output return } // UpdateGameSession API operation for Amazon GameLift. // // Updates game session properties. This includes the session name, maximum // player count, protection policy, which controls whether or not an active // game session can be terminated during a scale-down event, and the player // session creation policy, which controls whether or not new players can join // the session. To update a game session, specify the game session ID and the // values you want to change. If successful, an updated GameSession object is // returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation UpdateGameSession for usage and error information. // // Returned Error Codes: // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * ConflictException // The requested operation would cause a conflict with the current state of // a service resource associated with the request. Resolve the conflict before // retrying this request. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * InvalidGameSessionStatusException // The requested operation would cause a conflict with the current state of // a resource associated with the request and/or the game instance. Resolve // the conflict before retrying. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // func (c *GameLift) UpdateGameSession(input *UpdateGameSessionInput) (*UpdateGameSessionOutput, error) { req, out := c.UpdateGameSessionRequest(input) err := req.Send() return out, err } const opUpdateRuntimeConfiguration = "UpdateRuntimeConfiguration" // UpdateRuntimeConfigurationRequest generates a "aws/request.Request" representing the // client's request for the UpdateRuntimeConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateRuntimeConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateRuntimeConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateRuntimeConfigurationRequest method. // req, resp := client.UpdateRuntimeConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *GameLift) UpdateRuntimeConfigurationRequest(input *UpdateRuntimeConfigurationInput) (req *request.Request, output *UpdateRuntimeConfigurationOutput) { op := &request.Operation{ Name: opUpdateRuntimeConfiguration, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateRuntimeConfigurationInput{} } req = c.newRequest(op, input, output) output = &UpdateRuntimeConfigurationOutput{} req.Data = output return } // UpdateRuntimeConfiguration API operation for Amazon GameLift. // // Updates the current runtime configuration for the specified fleet, which // tells GameLift how to launch server processes on instances in the fleet. // You can update a fleet's runtime configuration at any time after the fleet // is created; it does not need to be in an ACTIVE status. // // To update runtime configuration, specify the fleet ID and provide a RuntimeConfiguration // object with the updated collection of server process configurations. // // Each instance in a GameLift fleet checks regularly for an updated runtime // configuration and changes how it launches server processes to comply with // the latest version. Existing server processes are not affected by the update; // they continue to run until they end, while GameLift simply adds new server // processes to fit the current runtime configuration. As a result, the runtime // configuration changes are applied gradually as existing processes shut down // and new processes are launched in GameLift's normal process recycling activity. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon GameLift's // API operation UpdateRuntimeConfiguration for usage and error information. // // Returned Error Codes: // * UnauthorizedException // The client failed authentication. Clients should not retry such requests. // // * NotFoundException // A service resource associated with the request could not be found. Clients // should not retry such requests. // // * InternalServiceException // The service encountered an unrecoverable internal failure while processing // the request. Clients can retry such requests immediately or after a waiting // period. // // * InvalidRequestException // One or more parameter values in the request are invalid. Correct the invalid // parameter values before retrying. // // * InvalidFleetStatusException // The requested operation would cause a conflict with the current state of // a resource associated with the request and/or the fleet. Resolve the conflict // before retrying. // func (c *GameLift) UpdateRuntimeConfiguration(input *UpdateRuntimeConfigurationInput) (*UpdateRuntimeConfigurationOutput, error) { req, out := c.UpdateRuntimeConfigurationRequest(input) err := req.Send() return out, err } // Properties describing a fleet alias. type Alias struct { _ struct{} `type:"structure"` // Unique identifier for a fleet alias. AliasId *string `type:"string"` // Time stamp indicating when this data object was created. Format is a number // expressed in Unix time as milliseconds (ex: "1469498468.057". CreationTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Human-readable description of an alias. Description *string `type:"string"` // Time stamp indicating when this data object was last modified. Format is // a number expressed in Unix time as milliseconds (ex: "1469498468.057". LastUpdatedTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Descriptive label associated with an alias. Alias names do not need to be // unique. Name *string `min:"1" type:"string"` // Routing configuration for a fleet alias. RoutingStrategy *RoutingStrategy `type:"structure"` } // String returns the string representation func (s Alias) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Alias) GoString() string { return s.String() } // AWS access credentials required to upload game build files to Amazon GameLift. // These credentials are generated with CreateBuild, and are valid for a limited // time. If they expire before you upload your game build, get a new set by // calling RequestUploadCredentials. type AwsCredentials struct { _ struct{} `type:"structure"` // Access key for an AWS account. AccessKeyId *string `min:"1" type:"string"` // Secret key for an AWS account. SecretAccessKey *string `min:"1" type:"string"` // Token specific to a build ID. SessionToken *string `min:"1" type:"string"` } // String returns the string representation func (s AwsCredentials) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AwsCredentials) GoString() string { return s.String() } // Properties describing a game build. type Build struct { _ struct{} `type:"structure"` // Unique identifier for a build. BuildId *string `type:"string"` // Time stamp indicating when this data object was created. Format is a number // expressed in Unix time as milliseconds (ex: "1469498468.057". CreationTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Descriptive label associated with a build. Build names do not need to be // unique. It can be set using CreateBuild or UpdateBuild. Name *string `type:"string"` // Operating system that the game server binaries are built to run on. This // value determines the type of fleet resources that you can use for this build. OperatingSystem *string `type:"string" enum:"OperatingSystem"` // File size of the uploaded game build, expressed in bytes. When the build // status is INITIALIZED, this value is 0. SizeOnDisk *int64 `min:"1" type:"long"` // Current status of the build. // // Possible build statuses include the following: // // * INITIALIZED – A new build has been defined, but no files have been uploaded. // You cannot create fleets for builds that are in this status. When a build // is successfully created, the build status is set to this value. // // * READY – The game build has been successfully uploaded. You can now create // new fleets for this build. // // * FAILED – The game build upload failed. You cannot create new fleets // for this build. Status *string `type:"string" enum:"BuildStatus"` // Version associated with this build. Version strings do not need to be unique // to a build. This value can be set using CreateBuild or UpdateBuild. Version *string `type:"string"` } // String returns the string representation func (s Build) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Build) GoString() string { return s.String() } // Represents the input for a request action. type CreateAliasInput struct { _ struct{} `type:"structure"` // Human-readable description of an alias. Description *string `min:"1" type:"string"` // Descriptive label associated with an alias. Alias names do not need to be // unique. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // Object specifying the fleet and routing type to use for the alias. // // RoutingStrategy is a required field RoutingStrategy *RoutingStrategy `type:"structure" required:"true"` } // String returns the string representation func (s CreateAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateAliasInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateAliasInput"} if s.Description != nil && len(*s.Description) < 1 { invalidParams.Add(request.NewErrParamMinLen("Description", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.RoutingStrategy == nil { invalidParams.Add(request.NewErrParamRequired("RoutingStrategy")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type CreateAliasOutput struct { _ struct{} `type:"structure"` // Object containing the newly created alias record. Alias *Alias `type:"structure"` } // String returns the string representation func (s CreateAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAliasOutput) GoString() string { return s.String() } // Represents the input for a request action. type CreateBuildInput struct { _ struct{} `type:"structure"` // Descriptive label associated with a build. Build names do not need to be // unique. A build name can be changed later using UpdateBuild. Name *string `min:"1" type:"string"` // Operating system that the game server binaries are built to run on. This // value determines the type of fleet resources that you can use for this build. OperatingSystem *string `type:"string" enum:"OperatingSystem"` // Location in Amazon Simple Storage Service (Amazon S3) where a build's files // are stored. This location is assigned in response to a CreateBuild call, // and is always in the same region as the service used to create the build. // For more details see the Amazon S3 documentation (http://aws.amazon.com/documentation/s3/). StorageLocation *S3Location `type:"structure"` // Version associated with this build. Version strings do not need to be unique // to a build. A build version can be changed later using UpdateBuild. Version *string `min:"1" type:"string"` } // String returns the string representation func (s CreateBuildInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateBuildInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateBuildInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateBuildInput"} if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Version != nil && len(*s.Version) < 1 { invalidParams.Add(request.NewErrParamMinLen("Version", 1)) } if s.StorageLocation != nil { if err := s.StorageLocation.Validate(); err != nil { invalidParams.AddNested("StorageLocation", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type CreateBuildOutput struct { _ struct{} `type:"structure"` // Set of properties for the newly created build. Build *Build `type:"structure"` // Amazon S3 path and key, identifying where the game build files are stored. StorageLocation *S3Location `type:"structure"` // AWS credentials required when uploading a game build to the storage location. // These credentials have a limited lifespan and are valid only for the build // they were issued for. If you need to get fresh credentials, call RequestUploadCredentials. UploadCredentials *AwsCredentials `type:"structure"` } // String returns the string representation func (s CreateBuildOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateBuildOutput) GoString() string { return s.String() } // Represents the input for a request action. type CreateFleetInput struct { _ struct{} `type:"structure"` // Unique identifier of the build to be deployed on the new fleet. The build // must have been successfully uploaded to GameLift and be in a READY status. // This fleet setting cannot be changed once the fleet is created. // // BuildId is a required field BuildId *string `type:"string" required:"true"` // Human-readable description of a fleet. Description *string `min:"1" type:"string"` // Range of IP addresses and port settings that permit inbound traffic to access // server processes running on the fleet. If no inbound permissions are set, // including both IP address range and port range, the server processes in the // fleet cannot accept connections. You can specify one or more sets of permissions // for a fleet. EC2InboundPermissions []*IpPermission `type:"list"` // Name of an EC2 instance type that is supported in Amazon GameLift. A fleet // instance type determines the computing resources of each instance in the // fleet, including CPU, memory, storage, and networking capacity. GameLift // supports the following EC2 instance types. See Amazon EC2 Instance Types // (http://aws.amazon.com/ec2/instance-types/) for detailed descriptions. // // EC2InstanceType is a required field EC2InstanceType *string `type:"string" required:"true" enum:"EC2InstanceType"` // Location of default log files. When a server process is shut down, Amazon // GameLift captures and stores any log files in this location. These logs are // in addition to game session logs; see more on game session logs in the Amazon // GameLift Developer Guide (http://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-api-server-code). // If no default log path for a fleet is specified, GameLift will automatically // upload logs stored on each instance at C:\game\logs. Use the GameLift console // to access stored logs. LogPaths []*string `type:"list"` // Descriptive label associated with a fleet. Fleet names do not need to be // unique. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // Game session protection policy to apply to all instances in this fleet. If // this parameter is not set, instances in this fleet default to no protection. // You can change a fleet's protection policy using UpdateFleetAttributes, but // this change will only affect sessions created after the policy change. You // can also set protection for individual instances using UpdateGameSession. // // * NoProtection – The game session can be terminated during a scale-down // event. // // * FullProtection – If the game session is in an ACTIVE status, it cannot // be terminated during a scale-down event. NewGameSessionProtectionPolicy *string `type:"string" enum:"ProtectionPolicy"` // Policy that limits the number of game sessions an individual player can create // over a span of time for this fleet. ResourceCreationLimitPolicy *ResourceCreationLimitPolicy `type:"structure"` // Instructions for launching server processes on each instance in the fleet. // The runtime configuration for a fleet has a collection of server process // configurations, one for each type of server process to run on an instance. // A server process configuration specifies the location of the server executable, // launch parameters, and the number of concurrent processes with that configuration // to maintain on each instance. A CreateFleet request must include a runtime // configuration with at least one server process configuration; otherwise the // request will fail with an invalid request exception. (This parameter replaces // the parameters ServerLaunchPath and ServerLaunchParameters; requests that // contain values for these parameters instead of a runtime configuration will // continue to work.) RuntimeConfiguration *RuntimeConfiguration `type:"structure"` // This parameter is no longer used. Instead, specify server launch parameters // in the RuntimeConfiguration parameter. (Requests that specify a server launch // path and launch parameters instead of a runtime configuration will continue // to work.) ServerLaunchParameters *string `min:"1" type:"string"` // This parameter is no longer used. Instead, specify a server launch path using // the RuntimeConfiguration parameter. (Requests that specify a server launch // path and launch parameters instead of a runtime configuration will continue // to work.) ServerLaunchPath *string `min:"1" type:"string"` } // String returns the string representation func (s CreateFleetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateFleetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateFleetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateFleetInput"} if s.BuildId == nil { invalidParams.Add(request.NewErrParamRequired("BuildId")) } if s.Description != nil && len(*s.Description) < 1 { invalidParams.Add(request.NewErrParamMinLen("Description", 1)) } if s.EC2InstanceType == nil { invalidParams.Add(request.NewErrParamRequired("EC2InstanceType")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.ServerLaunchParameters != nil && len(*s.ServerLaunchParameters) < 1 { invalidParams.Add(request.NewErrParamMinLen("ServerLaunchParameters", 1)) } if s.ServerLaunchPath != nil && len(*s.ServerLaunchPath) < 1 { invalidParams.Add(request.NewErrParamMinLen("ServerLaunchPath", 1)) } if s.EC2InboundPermissions != nil { for i, v := range s.EC2InboundPermissions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "EC2InboundPermissions", i), err.(request.ErrInvalidParams)) } } } if s.RuntimeConfiguration != nil { if err := s.RuntimeConfiguration.Validate(); err != nil { invalidParams.AddNested("RuntimeConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type CreateFleetOutput struct { _ struct{} `type:"structure"` // Properties for the newly created fleet. FleetAttributes *FleetAttributes `type:"structure"` } // String returns the string representation func (s CreateFleetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateFleetOutput) GoString() string { return s.String() } // Represents the input for a request action. type CreateGameSessionInput struct { _ struct{} `type:"structure"` // Unique identifier for a fleet alias. Each request must reference either a // fleet ID or alias ID, but not both. AliasId *string `type:"string"` // Player ID identifying the person or entity creating the game session. This // ID is used to enforce a resource protection policy (if one exists) that limits // the number of concurrent active game sessions one player can have. CreatorId *string `min:"1" type:"string"` // Unique identifier for a fleet. Each request must reference either a fleet // ID or alias ID, but not both. FleetId *string `type:"string"` // Set of properties used to administer a game session. These properties are // passed to the server process hosting it. GameProperties []*GameProperty `type:"list"` // Custom string to include in the game session ID, with a maximum length of // 48 characters. If this parameter is set, GameLift creates a game session // ID in the following format: "arn:aws:gamelift:::gamesession/fleet-/". For example, this full game session ID: "arn:aws:gamelift:us-west-2::gamesession/fleet-2ec2aae5-c2c7-43ca-b19d-8249fe5fddf2/my-game-session" // includes the custom ID string "my-game-session". If this parameter is not // set, GameLift creates a game session ID in the same format with an auto-generated // ID string. GameSessionId *string `min:"1" type:"string"` // Maximum number of players that can be connected simultaneously to the game // session. // // MaximumPlayerSessionCount is a required field MaximumPlayerSessionCount *int64 `type:"integer" required:"true"` // Descriptive label associated with a game session. Session names do not need // to be unique. Name *string `min:"1" type:"string"` } // String returns the string representation func (s CreateGameSessionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateGameSessionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateGameSessionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateGameSessionInput"} if s.CreatorId != nil && len(*s.CreatorId) < 1 { invalidParams.Add(request.NewErrParamMinLen("CreatorId", 1)) } if s.GameSessionId != nil && len(*s.GameSessionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("GameSessionId", 1)) } if s.MaximumPlayerSessionCount == nil { invalidParams.Add(request.NewErrParamRequired("MaximumPlayerSessionCount")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.GameProperties != nil { for i, v := range s.GameProperties { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "GameProperties", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type CreateGameSessionOutput struct { _ struct{} `type:"structure"` // Object containing the newly created game session record. GameSession *GameSession `type:"structure"` } // String returns the string representation func (s CreateGameSessionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateGameSessionOutput) GoString() string { return s.String() } // Represents the input for a request action. type CreatePlayerSessionInput struct { _ struct{} `type:"structure"` // Unique identifier for the game session to add a player to. Game session ID // format is as follows: "arn:aws:gamelift:::gamesession/fleet-/". The value of is either a custom ID string (if // one was specified when the game session was created) an auto-generated string. // // GameSessionId is a required field GameSessionId *string `min:"1" type:"string" required:"true"` // Unique identifier for the player to be added. // // PlayerId is a required field PlayerId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreatePlayerSessionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePlayerSessionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePlayerSessionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePlayerSessionInput"} if s.GameSessionId == nil { invalidParams.Add(request.NewErrParamRequired("GameSessionId")) } if s.GameSessionId != nil && len(*s.GameSessionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("GameSessionId", 1)) } if s.PlayerId == nil { invalidParams.Add(request.NewErrParamRequired("PlayerId")) } if s.PlayerId != nil && len(*s.PlayerId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PlayerId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type CreatePlayerSessionOutput struct { _ struct{} `type:"structure"` // Object containing the newly created player session record. PlayerSession *PlayerSession `type:"structure"` } // String returns the string representation func (s CreatePlayerSessionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePlayerSessionOutput) GoString() string { return s.String() } // Represents the input for a request action. type CreatePlayerSessionsInput struct { _ struct{} `type:"structure"` // Unique identifier for the game session to add players to. Game session ID // format is as follows: "arn:aws:gamelift:::gamesession/fleet-/". The value of is either a custom ID string (if // one was specified when the game session was created) an auto-generated string. // // GameSessionId is a required field GameSessionId *string `min:"1" type:"string" required:"true"` // List of unique identifiers for the players to be added. // // PlayerIds is a required field PlayerIds []*string `min:"1" type:"list" required:"true"` } // String returns the string representation func (s CreatePlayerSessionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePlayerSessionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePlayerSessionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePlayerSessionsInput"} if s.GameSessionId == nil { invalidParams.Add(request.NewErrParamRequired("GameSessionId")) } if s.GameSessionId != nil && len(*s.GameSessionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("GameSessionId", 1)) } if s.PlayerIds == nil { invalidParams.Add(request.NewErrParamRequired("PlayerIds")) } if s.PlayerIds != nil && len(s.PlayerIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("PlayerIds", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type CreatePlayerSessionsOutput struct { _ struct{} `type:"structure"` // Collection of player session objects created for the added players. PlayerSessions []*PlayerSession `type:"list"` } // String returns the string representation func (s CreatePlayerSessionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePlayerSessionsOutput) GoString() string { return s.String() } // Represents the input for a request action. type DeleteAliasInput struct { _ struct{} `type:"structure"` // Unique identifier for a fleet alias. Specify the alias you want to delete. // // AliasId is a required field AliasId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAliasInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAliasInput"} if s.AliasId == nil { invalidParams.Add(request.NewErrParamRequired("AliasId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteAliasOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAliasOutput) GoString() string { return s.String() } // Represents the input for a request action. type DeleteBuildInput struct { _ struct{} `type:"structure"` // Unique identifier for the build you want to delete. // // BuildId is a required field BuildId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteBuildInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBuildInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteBuildInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteBuildInput"} if s.BuildId == nil { invalidParams.Add(request.NewErrParamRequired("BuildId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteBuildOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteBuildOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBuildOutput) GoString() string { return s.String() } // Represents the input for a request action. type DeleteFleetInput struct { _ struct{} `type:"structure"` // Unique identifier for the fleet you want to delete. // // FleetId is a required field FleetId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteFleetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteFleetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteFleetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteFleetInput"} if s.FleetId == nil { invalidParams.Add(request.NewErrParamRequired("FleetId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteFleetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteFleetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteFleetOutput) GoString() string { return s.String() } // Represents the input for a request action. type DeleteScalingPolicyInput struct { _ struct{} `type:"structure"` // Unique identifier for a fleet. // // FleetId is a required field FleetId *string `type:"string" required:"true"` // Descriptive label associated with a scaling policy. Policy names do not need // to be unique. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteScalingPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteScalingPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteScalingPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteScalingPolicyInput"} if s.FleetId == nil { invalidParams.Add(request.NewErrParamRequired("FleetId")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteScalingPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteScalingPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteScalingPolicyOutput) GoString() string { return s.String() } // Represents the input for a request action. type DescribeAliasInput struct { _ struct{} `type:"structure"` // Unique identifier for a fleet alias. Specify the alias you want to retrieve. // // AliasId is a required field AliasId *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeAliasInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeAliasInput"} if s.AliasId == nil { invalidParams.Add(request.NewErrParamRequired("AliasId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type DescribeAliasOutput struct { _ struct{} `type:"structure"` // Object containing the requested alias. Alias *Alias `type:"structure"` } // String returns the string representation func (s DescribeAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAliasOutput) GoString() string { return s.String() } // Represents the input for a request action. type DescribeBuildInput struct { _ struct{} `type:"structure"` // Unique identifier of the build that you want to retrieve properties for. // // BuildId is a required field BuildId *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeBuildInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeBuildInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeBuildInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeBuildInput"} if s.BuildId == nil { invalidParams.Add(request.NewErrParamRequired("BuildId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type DescribeBuildOutput struct { _ struct{} `type:"structure"` // Set of properties describing the requested build. Build *Build `type:"structure"` } // String returns the string representation func (s DescribeBuildOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeBuildOutput) GoString() string { return s.String() } // Represents the input for a request action. type DescribeEC2InstanceLimitsInput struct { _ struct{} `type:"structure"` // Name of an EC2 instance type that is supported in Amazon GameLift. A fleet // instance type determines the computing resources of each instance in the // fleet, including CPU, memory, storage, and networking capacity. GameLift // supports the following EC2 instance types. See Amazon EC2 Instance Types // (http://aws.amazon.com/ec2/instance-types/) for detailed descriptions. Leave // this parameter blank to retrieve limits for all types. EC2InstanceType *string `type:"string" enum:"EC2InstanceType"` } // String returns the string representation func (s DescribeEC2InstanceLimitsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEC2InstanceLimitsInput) GoString() string { return s.String() } // Represents the returned data in response to a request action. type DescribeEC2InstanceLimitsOutput struct { _ struct{} `type:"structure"` // Object containing the maximum number of instances for the specified instance // type. EC2InstanceLimits []*EC2InstanceLimit `type:"list"` } // String returns the string representation func (s DescribeEC2InstanceLimitsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEC2InstanceLimitsOutput) GoString() string { return s.String() } // Represents the input for a request action. type DescribeFleetAttributesInput struct { _ struct{} `type:"structure"` // Unique identifiers for the fleet(s) that you want to retrieve attributes // for. To request attributes for all fleets, leave this parameter empty. FleetIds []*string `min:"1" type:"list"` // Maximum number of results to return. Use this parameter with NextToken to // get results as a set of sequential pages. This parameter is ignored when // the request specifies one or a list of fleet IDs. Limit *int64 `min:"1" type:"integer"` // Token indicating the start of the next sequential page of results. Use the // token that is returned with a previous call to this action. To specify the // start of the result set, do not specify a value. This parameter is ignored // when the request specifies one or a list of fleet IDs. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeFleetAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeFleetAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeFleetAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeFleetAttributesInput"} if s.FleetIds != nil && len(s.FleetIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("FleetIds", 1)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type DescribeFleetAttributesOutput struct { _ struct{} `type:"structure"` // Collection of objects containing attribute metadata for each requested fleet // ID. FleetAttributes []*FleetAttributes `type:"list"` // Token indicating where to resume retrieving results on the next call to this // action. If no token is returned, these results represent the end of the list. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeFleetAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeFleetAttributesOutput) GoString() string { return s.String() } // Represents the input for a request action. type DescribeFleetCapacityInput struct { _ struct{} `type:"structure"` // Unique identifier for the fleet(s) you want to retrieve capacity information // for. To request capacity information for all fleets, leave this parameter // empty. FleetIds []*string `min:"1" type:"list"` // Maximum number of results to return. Use this parameter with NextToken to // get results as a set of sequential pages. This parameter is ignored when // the request specifies one or a list of fleet IDs. Limit *int64 `min:"1" type:"integer"` // Token indicating the start of the next sequential page of results. Use the // token that is returned with a previous call to this action. To specify the // start of the result set, do not specify a value. This parameter is ignored // when the request specifies one or a list of fleet IDs. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeFleetCapacityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeFleetCapacityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeFleetCapacityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeFleetCapacityInput"} if s.FleetIds != nil && len(s.FleetIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("FleetIds", 1)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type DescribeFleetCapacityOutput struct { _ struct{} `type:"structure"` // Collection of objects containing capacity information for each requested // fleet ID. Leave this parameter empty to retrieve capacity information for // all fleets. FleetCapacity []*FleetCapacity `type:"list"` // Token indicating where to resume retrieving results on the next call to this // action. If no token is returned, these results represent the end of the list. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeFleetCapacityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeFleetCapacityOutput) GoString() string { return s.String() } // Represents the input for a request action. type DescribeFleetEventsInput struct { _ struct{} `type:"structure"` // Most recent date to retrieve event logs for. If no end time is specified, // this call returns entries from the specified start time up to the present. // Format is a number expressed in Unix time as milliseconds (ex: "1469498468.057". EndTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Unique identifier for the fleet to get event logs for. // // FleetId is a required field FleetId *string `type:"string" required:"true"` // Maximum number of results to return. Use this parameter with NextToken to // get results as a set of sequential pages. Limit *int64 `min:"1" type:"integer"` // Token indicating the start of the next sequential page of results. Use the // token that is returned with a previous call to this action. To specify the // start of the result set, do not specify a value. NextToken *string `min:"1" type:"string"` // Earliest date to retrieve event logs for. If no start time is specified, // this call returns entries starting from when the fleet was created to the // specified end time. Format is a number expressed in Unix time as milliseconds // (ex: "1469498468.057". StartTime *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s DescribeFleetEventsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeFleetEventsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeFleetEventsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeFleetEventsInput"} if s.FleetId == nil { invalidParams.Add(request.NewErrParamRequired("FleetId")) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type DescribeFleetEventsOutput struct { _ struct{} `type:"structure"` // Collection of objects containing event log entries for the specified fleet. Events []*Event `type:"list"` // Token indicating where to resume retrieving results on the next call to this // action. If no token is returned, these results represent the end of the list. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeFleetEventsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeFleetEventsOutput) GoString() string { return s.String() } // Represents the input for a request action. type DescribeFleetPortSettingsInput struct { _ struct{} `type:"structure"` // Unique identifier for the fleet you want to retrieve port settings for. // // FleetId is a required field FleetId *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeFleetPortSettingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeFleetPortSettingsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeFleetPortSettingsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeFleetPortSettingsInput"} if s.FleetId == nil { invalidParams.Add(request.NewErrParamRequired("FleetId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type DescribeFleetPortSettingsOutput struct { _ struct{} `type:"structure"` // Object containing port settings for the requested fleet ID. InboundPermissions []*IpPermission `type:"list"` } // String returns the string representation func (s DescribeFleetPortSettingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeFleetPortSettingsOutput) GoString() string { return s.String() } // Represents the input for a request action. type DescribeFleetUtilizationInput struct { _ struct{} `type:"structure"` // Unique identifier for the fleet(s) you want to retrieve utilization data // for. To request utilization data for all fleets, leave this parameter empty. FleetIds []*string `min:"1" type:"list"` // Maximum number of results to return. Use this parameter with NextToken to // get results as a set of sequential pages. This parameter is ignored when // the request specifies one or a list of fleet IDs. Limit *int64 `min:"1" type:"integer"` // Token indicating the start of the next sequential page of results. Use the // token that is returned with a previous call to this action. To specify the // start of the result set, do not specify a value. This parameter is ignored // when the request specifies one or a list of fleet IDs. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeFleetUtilizationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeFleetUtilizationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeFleetUtilizationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeFleetUtilizationInput"} if s.FleetIds != nil && len(s.FleetIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("FleetIds", 1)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type DescribeFleetUtilizationOutput struct { _ struct{} `type:"structure"` // Collection of objects containing utilization information for each requested // fleet ID. FleetUtilization []*FleetUtilization `type:"list"` // Token indicating where to resume retrieving results on the next call to this // action. If no token is returned, these results represent the end of the list. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeFleetUtilizationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeFleetUtilizationOutput) GoString() string { return s.String() } // Represents the input for a request action. type DescribeGameSessionDetailsInput struct { _ struct{} `type:"structure"` // Unique identifier for a fleet alias. Specify an alias to retrieve information // on all game sessions active on the fleet. AliasId *string `type:"string"` // Unique identifier for a fleet. Specify a fleet to retrieve information on // all game sessions active on the fleet. FleetId *string `type:"string"` // Unique identifier for the game session to retrieve information on. Game session // ID format is as follows: "arn:aws:gamelift:::gamesession/fleet-/". The value of is either a custom ID string (if // one was specified when the game session was created) an auto-generated string. GameSessionId *string `min:"1" type:"string"` // Maximum number of results to return. Use this parameter with NextToken to // get results as a set of sequential pages. Limit *int64 `min:"1" type:"integer"` // Token indicating the start of the next sequential page of results. Use the // token that is returned with a previous call to this action. To specify the // start of the result set, do not specify a value. NextToken *string `min:"1" type:"string"` // Game session status to filter results on. Possible game session statuses // include ACTIVE, TERMINATED, ACTIVATING and TERMINATING (the last two are // transitory). StatusFilter *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeGameSessionDetailsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeGameSessionDetailsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeGameSessionDetailsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeGameSessionDetailsInput"} if s.GameSessionId != nil && len(*s.GameSessionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("GameSessionId", 1)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.StatusFilter != nil && len(*s.StatusFilter) < 1 { invalidParams.Add(request.NewErrParamMinLen("StatusFilter", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type DescribeGameSessionDetailsOutput struct { _ struct{} `type:"structure"` // Collection of objects containing game session properties and the protection // policy currently in force for each session matching the request. GameSessionDetails []*GameSessionDetail `type:"list"` // Token indicating where to resume retrieving results on the next call to this // action. If no token is returned, these results represent the end of the list. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeGameSessionDetailsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeGameSessionDetailsOutput) GoString() string { return s.String() } // Represents the input for a request action. type DescribeGameSessionsInput struct { _ struct{} `type:"structure"` // Unique identifier for a fleet alias. Specify an alias to retrieve information // on all game sessions active on the fleet. AliasId *string `type:"string"` // Unique identifier for a fleet. Specify a fleet to retrieve information on // all game sessions active on the fleet. FleetId *string `type:"string"` // Unique identifier for the game session to retrieve information on. Game session // ID format is as follows: "arn:aws:gamelift:::gamesession/fleet-/". The value of is either a custom ID string (if // one was specified when the game session was created) an auto-generated string. GameSessionId *string `min:"1" type:"string"` // Maximum number of results to return. Use this parameter with NextToken to // get results as a set of sequential pages. Limit *int64 `min:"1" type:"integer"` // Token indicating the start of the next sequential page of results. Use the // token that is returned with a previous call to this action. To specify the // start of the result set, do not specify a value. NextToken *string `min:"1" type:"string"` // Game session status to filter results on. Possible game session statuses // include ACTIVE, TERMINATED, ACTIVATING, and TERMINATING (the last two are // transitory). StatusFilter *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeGameSessionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeGameSessionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeGameSessionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeGameSessionsInput"} if s.GameSessionId != nil && len(*s.GameSessionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("GameSessionId", 1)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.StatusFilter != nil && len(*s.StatusFilter) < 1 { invalidParams.Add(request.NewErrParamMinLen("StatusFilter", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type DescribeGameSessionsOutput struct { _ struct{} `type:"structure"` // Collection of objects containing game session properties for each session // matching the request. GameSessions []*GameSession `type:"list"` // Token indicating where to resume retrieving results on the next call to this // action. If no token is returned, these results represent the end of the list. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeGameSessionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeGameSessionsOutput) GoString() string { return s.String() } // Represents the input for a request action. type DescribeInstancesInput struct { _ struct{} `type:"structure"` // Unique identifier for a fleet. Specify the fleet to retrieve instance information // for. // // FleetId is a required field FleetId *string `type:"string" required:"true"` // Unique identifier for an instance. Specify an instance to retrieve information // for or leave blank to get information on all instances in the fleet. InstanceId *string `type:"string"` // Maximum number of results to return. Use this parameter with NextToken to // get results as a set of sequential pages. Limit *int64 `min:"1" type:"integer"` // Token indicating the start of the next sequential page of results. Use the // token that is returned with a previous call to this action. To specify the // start of the result set, do not specify a value. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeInstancesInput"} if s.FleetId == nil { invalidParams.Add(request.NewErrParamRequired("FleetId")) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type DescribeInstancesOutput struct { _ struct{} `type:"structure"` // Collection of objects containing properties for each instance returned. Instances []*Instance `type:"list"` // Token indicating where to resume retrieving results on the next call to this // action. If no token is returned, these results represent the end of the list. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInstancesOutput) GoString() string { return s.String() } // Represents the input for a request action. type DescribePlayerSessionsInput struct { _ struct{} `type:"structure"` // Unique identifier for the game session to get player sessions for.Game session // ID format is as follows: "arn:aws:gamelift:::gamesession/fleet-/". The value of is either a custom ID string (if // one was specified when the game session was created) an auto-generated string. GameSessionId *string `min:"1" type:"string"` // Maximum number of results to return. Use this parameter with NextToken to // get results as a set of sequential pages. If a player session ID is specified, // this parameter is ignored. Limit *int64 `min:"1" type:"integer"` // Token indicating the start of the next sequential page of results. Use the // token that is returned with a previous call to this action. To specify the // start of the result set, do not specify a value. If a player session ID is // specified, this parameter is ignored. NextToken *string `min:"1" type:"string"` // Unique identifier for a player. PlayerId *string `min:"1" type:"string"` // Unique identifier for a player session. PlayerSessionId *string `type:"string"` // Player session status to filter results on. // // Possible player session statuses include the following: // // * RESERVED – The player session request has been received, but the player // has not yet connected to the server process and/or been validated. // // * ACTIVE – The player has been validated by the server process and is // currently connected. // // * COMPLETED – The player connection has been dropped. // // * TIMEDOUT – A player session request was received, but the player did // not connect and/or was not validated within the time-out limit (60 seconds). PlayerSessionStatusFilter *string `min:"1" type:"string"` } // String returns the string representation func (s DescribePlayerSessionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribePlayerSessionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribePlayerSessionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribePlayerSessionsInput"} if s.GameSessionId != nil && len(*s.GameSessionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("GameSessionId", 1)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.PlayerId != nil && len(*s.PlayerId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PlayerId", 1)) } if s.PlayerSessionStatusFilter != nil && len(*s.PlayerSessionStatusFilter) < 1 { invalidParams.Add(request.NewErrParamMinLen("PlayerSessionStatusFilter", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type DescribePlayerSessionsOutput struct { _ struct{} `type:"structure"` // Token indicating where to resume retrieving results on the next call to this // action. If no token is returned, these results represent the end of the list. NextToken *string `min:"1" type:"string"` // Collection of objects containing properties for each player session that // matches the request. PlayerSessions []*PlayerSession `type:"list"` } // String returns the string representation func (s DescribePlayerSessionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribePlayerSessionsOutput) GoString() string { return s.String() } // Represents the input for a request action. type DescribeRuntimeConfigurationInput struct { _ struct{} `type:"structure"` // Unique identifier of the fleet to get the runtime configuration for. // // FleetId is a required field FleetId *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeRuntimeConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRuntimeConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeRuntimeConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeRuntimeConfigurationInput"} if s.FleetId == nil { invalidParams.Add(request.NewErrParamRequired("FleetId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type DescribeRuntimeConfigurationOutput struct { _ struct{} `type:"structure"` // Instructions describing how server processes should be launched and maintained // on each instance in the fleet. RuntimeConfiguration *RuntimeConfiguration `type:"structure"` } // String returns the string representation func (s DescribeRuntimeConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRuntimeConfigurationOutput) GoString() string { return s.String() } // Represents the input for a request action. type DescribeScalingPoliciesInput struct { _ struct{} `type:"structure"` // Unique identifier for a fleet. Specify the fleet to retrieve scaling policies // for. // // FleetId is a required field FleetId *string `type:"string" required:"true"` // Maximum number of results to return. Use this parameter with NextToken to // get results as a set of sequential pages. Limit *int64 `min:"1" type:"integer"` // Token indicating the start of the next sequential page of results. Use the // token that is returned with a previous call to this action. To specify the // start of the result set, do not specify a value. NextToken *string `min:"1" type:"string"` // Scaling policy status to filter results on. A scaling policy is only in force // when in an ACTIVE status. // // * ACTIVE – The scaling policy is currently in force. // // * UPDATEREQUESTED – A request to update the scaling policy has been received. // // * UPDATING – A change is being made to the scaling policy. // // * DELETEREQUESTED – A request to delete the scaling policy has been received. // // * DELETING – The scaling policy is being deleted. // // * DELETED – The scaling policy has been deleted. // // * ERROR – An error occurred in creating the policy. It should be removed // and recreated. StatusFilter *string `type:"string" enum:"ScalingStatusType"` } // String returns the string representation func (s DescribeScalingPoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScalingPoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeScalingPoliciesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeScalingPoliciesInput"} if s.FleetId == nil { invalidParams.Add(request.NewErrParamRequired("FleetId")) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type DescribeScalingPoliciesOutput struct { _ struct{} `type:"structure"` // Token indicating where to resume retrieving results on the next call to this // action. If no token is returned, these results represent the end of the list. NextToken *string `min:"1" type:"string"` // Collection of objects containing the scaling policies matching the request. ScalingPolicies []*ScalingPolicy `type:"list"` } // String returns the string representation func (s DescribeScalingPoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeScalingPoliciesOutput) GoString() string { return s.String() } // Current status of fleet capacity. The number of active instances should match // or be in the process of matching the number of desired instances. Pending // and terminating counts are non-zero only if fleet capacity is adjusting to // an UpdateFleetCapacity request, or if access to resources is temporarily // affected. type EC2InstanceCounts struct { _ struct{} `type:"structure"` // Actual number of active instances in the fleet. ACTIVE *int64 `type:"integer"` // Ideal number of active instances in the fleet. DESIRED *int64 `type:"integer"` // Number of active instances in the fleet that are not currently hosting a // game session. IDLE *int64 `type:"integer"` // Maximum value allowed for the fleet's instance count. MAXIMUM *int64 `type:"integer"` // Minimum value allowed for the fleet's instance count. MINIMUM *int64 `type:"integer"` // Number of instances in the fleet that are starting but not yet active. PENDING *int64 `type:"integer"` // Number of instances in the fleet that are no longer active but haven't yet // been terminated. TERMINATING *int64 `type:"integer"` } // String returns the string representation func (s EC2InstanceCounts) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EC2InstanceCounts) GoString() string { return s.String() } // Maximum number of instances allowed based on the Amazon Elastic Compute Cloud // (Amazon EC2) instance type. Instance limits can be retrieved by calling DescribeEC2InstanceLimits. type EC2InstanceLimit struct { _ struct{} `type:"structure"` // Number of instances of the specified type that are currently in use by this // AWS account. CurrentInstances *int64 `type:"integer"` // Name of an EC2 instance type that is supported in Amazon GameLift. A fleet // instance type determines the computing resources of each instance in the // fleet, including CPU, memory, storage, and networking capacity. GameLift // supports the following EC2 instance types. See Amazon EC2 Instance Types // (http://aws.amazon.com/ec2/instance-types/) for detailed descriptions. EC2InstanceType *string `type:"string" enum:"EC2InstanceType"` // Number of instances allowed. InstanceLimit *int64 `type:"integer"` } // String returns the string representation func (s EC2InstanceLimit) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EC2InstanceLimit) GoString() string { return s.String() } // Log entry describing an event involving an Amazon GameLift resource (such // as a fleet). type Event struct { _ struct{} `type:"structure"` // Type of event being logged. EventCode *string `type:"string" enum:"EventCode"` // Unique identifier for a fleet event. EventId *string `min:"1" type:"string"` // Time stamp indicating when this event occurred. Format is a number expressed // in Unix time as milliseconds (ex: "1469498468.057". EventTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Additional information related to the event. Message *string `min:"1" type:"string"` // Unique identifier for the resource, such as a fleet ID. ResourceId *string `min:"1" type:"string"` } // String returns the string representation func (s Event) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Event) GoString() string { return s.String() } // General properties describing a fleet. type FleetAttributes struct { _ struct{} `type:"structure"` // Unique identifier for a build. BuildId *string `type:"string"` // Time stamp indicating when this data object was created. Format is a number // expressed in Unix time as milliseconds (ex: "1469498468.057". CreationTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Human-readable description of the fleet. Description *string `min:"1" type:"string"` // Unique identifier for a fleet. FleetId *string `type:"string"` // Location of default log files. When a server process is shut down, Amazon // GameLift captures and stores any log files in this location. These logs are // in addition to game session logs; see more on game session logs in the Amazon // GameLift Developer Guide (http://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-api-server-code). // If no default log path for a fleet is specified, GameLift will automatically // upload logs stored on each instance at C:\game\logs. Use the GameLift console // to access stored logs. LogPaths []*string `type:"list"` // Descriptive label associated with a fleet. Fleet names do not need to be // unique. Name *string `min:"1" type:"string"` // Type of game session protection to set for all new instances started in the // fleet. // // * NoProtection – The game session can be terminated during a scale-down // event. // // * FullProtection – If the game session is in an ACTIVE status, it cannot // be terminated during a scale-down event. NewGameSessionProtectionPolicy *string `type:"string" enum:"ProtectionPolicy"` // Operating system of the fleet's computing resources. A fleet's operating // system depends on the OS specified for the build that is deployed on this // fleet. OperatingSystem *string `type:"string" enum:"OperatingSystem"` // Fleet policy to limit the number of game sessions an individual player can // create over a span of time. ResourceCreationLimitPolicy *ResourceCreationLimitPolicy `type:"structure"` // Game server launch parameters specified for fleets created prior to 2016-08-04 // (or AWS SDK v. 0.12.16). Server launch parameters for fleets created after // this date are specified in the fleet's RuntimeConfiguration. ServerLaunchParameters *string `min:"1" type:"string"` // Path to a game server executable in the fleet's build, specified for fleets // created prior to 2016-08-04 (or AWS SDK v. 0.12.16). Server launch paths // for fleets created after this date are specified in the fleet's RuntimeConfiguration. ServerLaunchPath *string `min:"1" type:"string"` // Current status of the fleet. // // Possible fleet statuses include the following: // // * NEW – A new fleet has been defined and desired instances is set to 1. // // // * DOWNLOADING/VALIDATING/BUILDING/ACTIVATING – GameLift is setting up // the new fleet, creating new instances with the game build and starting // server processes. // // * ACTIVE – Hosts can now accept game sessions. // // * ERROR – An error occurred when downloading, validating, building, or // activating the fleet. // // * DELETING – Hosts are responding to a delete fleet request. // // * TERMINATED – The fleet no longer exists. Status *string `type:"string" enum:"FleetStatus"` // Time stamp indicating when this data object was terminated. Format is a number // expressed in Unix time as milliseconds (ex: "1469498468.057". TerminationTime *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s FleetAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FleetAttributes) GoString() string { return s.String() } // Information about the fleet's capacity. Fleet capacity is measured in EC2 // instances. By default, new fleets have a capacity of one instance, but can // be updated as needed. The maximum number of instances for a fleet is determined // by the fleet's instance type. type FleetCapacity struct { _ struct{} `type:"structure"` // Unique identifier for a fleet. FleetId *string `type:"string"` // Current status of fleet capacity. InstanceCounts *EC2InstanceCounts `type:"structure"` // Name of an EC2 instance type that is supported in Amazon GameLift. A fleet // instance type determines the computing resources of each instance in the // fleet, including CPU, memory, storage, and networking capacity. GameLift // supports the following EC2 instance types. See Amazon EC2 Instance Types // (http://aws.amazon.com/ec2/instance-types/) for detailed descriptions. InstanceType *string `type:"string" enum:"EC2InstanceType"` } // String returns the string representation func (s FleetCapacity) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FleetCapacity) GoString() string { return s.String() } // Current status of fleet utilization, including the number of game and player // sessions being hosted. type FleetUtilization struct { _ struct{} `type:"structure"` // Number of active game sessions currently being hosted on all instances in // the fleet. ActiveGameSessionCount *int64 `type:"integer"` // Number of server processes in an ACTIVE status currently running across all // instances in the fleet ActiveServerProcessCount *int64 `type:"integer"` // Number of active player sessions currently being hosted on all instances // in the fleet. CurrentPlayerSessionCount *int64 `type:"integer"` // Unique identifier for a fleet. FleetId *string `type:"string"` // Maximum players allowed across all game sessions currently being hosted on // all instances in the fleet. MaximumPlayerSessionCount *int64 `type:"integer"` } // String returns the string representation func (s FleetUtilization) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FleetUtilization) GoString() string { return s.String() } // Set of key-value pairs containing information a server process requires to // set up a game session. This object allows you to pass in any set of data // needed for your game. For more information, see the Amazon GameLift Developer // Guide (http://docs.aws.amazon.com/gamelift/latest/developerguide/). type GameProperty struct { _ struct{} `type:"structure"` // TBD // // Key is a required field Key *string `type:"string" required:"true"` // TBD // // Value is a required field Value *string `type:"string" required:"true"` } // String returns the string representation func (s GameProperty) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GameProperty) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GameProperty) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GameProperty"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Properties describing a game session. type GameSession struct { _ struct{} `type:"structure"` // Time stamp indicating when this data object was created. Format is a number // expressed in Unix time as milliseconds (ex: "1469498468.057". CreationTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Player ID of the person or entity that created the game session. This ID // is used to enforce a resource protection policy (if one exists) that limits // the number of concurrent active game sessions one player can have. CreatorId *string `min:"1" type:"string"` // Number of players currently in the game session. CurrentPlayerSessionCount *int64 `type:"integer"` // Unique identifier for a fleet. FleetId *string `type:"string"` // Set of custom properties for the game session. GameProperties []*GameProperty `type:"list"` // Unique identifier for a game session. Game session ID format is as follows: // "arn:aws:gamelift:::gamesession/fleet-/". The // value of is either a custom ID string (if one was specified when // the game session was created) an auto-generated string. GameSessionId *string `min:"1" type:"string"` // IP address of the game session. To connect to a GameLift server process, // an app needs both the IP address and port number. IpAddress *string `type:"string"` // Maximum number of players allowed in the game session. MaximumPlayerSessionCount *int64 `type:"integer"` // Descriptive label associated with a game session. Session names do not need // to be unique. Name *string `min:"1" type:"string"` // Indicates whether or not the game session is accepting new players. PlayerSessionCreationPolicy *string `type:"string" enum:"PlayerSessionCreationPolicy"` // Port number for the game session. To connect to a GameLift server process, // an app needs both the IP address and port number. Port *int64 `min:"1" type:"integer"` // Current status of the game session. A game session must be in an ACTIVE status // to have player sessions. Status *string `type:"string" enum:"GameSessionStatus"` // Time stamp indicating when this data object was terminated. Format is a number // expressed in Unix time as milliseconds (ex: "1469498468.057". TerminationTime *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s GameSession) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GameSession) GoString() string { return s.String() } // A game session's properties and the protection policy currently in force. type GameSessionDetail struct { _ struct{} `type:"structure"` // Properties describing a game session. GameSession *GameSession `type:"structure"` // Current status of protection for the game session. // // * NoProtection – The game session can be terminated during a scale-down // event. // // * FullProtection – If the game session is in an ACTIVE status, it cannot // be terminated during a scale-down event. ProtectionPolicy *string `type:"string" enum:"ProtectionPolicy"` } // String returns the string representation func (s GameSessionDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GameSessionDetail) GoString() string { return s.String() } // Represents the input for a request action. type GetGameSessionLogUrlInput struct { _ struct{} `type:"structure"` // Unique identifier for the game session to get logs for. Game session ID format // is as follows: "arn:aws:gamelift:::gamesession/fleet-/". The value of is either a custom ID string (if one was // specified when the game session was created) an auto-generated string. // // GameSessionId is a required field GameSessionId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetGameSessionLogUrlInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetGameSessionLogUrlInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetGameSessionLogUrlInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetGameSessionLogUrlInput"} if s.GameSessionId == nil { invalidParams.Add(request.NewErrParamRequired("GameSessionId")) } if s.GameSessionId != nil && len(*s.GameSessionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("GameSessionId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type GetGameSessionLogUrlOutput struct { _ struct{} `type:"structure"` // Location of the requested game session logs, available for download. PreSignedUrl *string `min:"1" type:"string"` } // String returns the string representation func (s GetGameSessionLogUrlOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetGameSessionLogUrlOutput) GoString() string { return s.String() } // Properties describing an instance of a virtual computing resource that is // hosting game servers. Fleets contain zero or more instances. type Instance struct { _ struct{} `type:"structure"` // Time stamp indicating when this data object was created. Format is a number // expressed in Unix time as milliseconds (ex: "1469498468.057"). CreationTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Unique identifier for the fleet that the instance belongs to. FleetId *string `type:"string"` // Unique identifier for the instance. InstanceId *string `type:"string"` // IP address assigned to the instance. IpAddress *string `type:"string"` // Operating system being used on this instance. OperatingSystem *string `type:"string" enum:"OperatingSystem"` // Current status of the instance. Possible statuses include the following: // // * PENDING – The instance is in the process of being created and launching // server processes as defined in the fleet's runtime configuration. // // * ACTIVE – The instance has been successfully created and at least one // server process has successfully launched and reported back to GameLift // that it is ready to host a game session. The instance is now considered // ready to host game sessions. // // * TERMINATING – The instance is in the process of shutting down. This // may happen to reduce capacity during a scaling down event or to recycle // resources in the event of a problem. Status *string `type:"string" enum:"InstanceStatus"` // EC2 instance type that defines the computing resources of this instance. Type *string `type:"string" enum:"EC2InstanceType"` } // String returns the string representation func (s Instance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Instance) GoString() string { return s.String() } // A range of IP addresses and port settings that allow inbound traffic to connect // to server processes on GameLift. Each game session hosted on a fleet is assigned // a unique combination of IP address and port number, which must fall into // the fleet's allowed ranges. This combination is included in the GameSession // object. type IpPermission struct { _ struct{} `type:"structure"` // Starting value for a range of allowed port numbers. // // FromPort is a required field FromPort *int64 `min:"1" type:"integer" required:"true"` // Range of allowed IP addresses. This value must be expressed in CIDR notation // (https://tools.ietf.org/id/cidr). Example: "000.000.000.000/[subnet mask]" // or optionally the shortened version "0.0.0.0/[subnet mask]". // // IpRange is a required field IpRange *string `type:"string" required:"true"` // Network communication protocol used by the fleet. // // Protocol is a required field Protocol *string `type:"string" required:"true" enum:"IpProtocol"` // Ending value for a range of allowed port numbers. Port numbers are end-inclusive. // This value must be higher than FromPort. // // ToPort is a required field ToPort *int64 `min:"1" type:"integer" required:"true"` } // String returns the string representation func (s IpPermission) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IpPermission) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *IpPermission) Validate() error { invalidParams := request.ErrInvalidParams{Context: "IpPermission"} if s.FromPort == nil { invalidParams.Add(request.NewErrParamRequired("FromPort")) } if s.FromPort != nil && *s.FromPort < 1 { invalidParams.Add(request.NewErrParamMinValue("FromPort", 1)) } if s.IpRange == nil { invalidParams.Add(request.NewErrParamRequired("IpRange")) } if s.Protocol == nil { invalidParams.Add(request.NewErrParamRequired("Protocol")) } if s.ToPort == nil { invalidParams.Add(request.NewErrParamRequired("ToPort")) } if s.ToPort != nil && *s.ToPort < 1 { invalidParams.Add(request.NewErrParamMinValue("ToPort", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the input for a request action. type ListAliasesInput struct { _ struct{} `type:"structure"` // Maximum number of results to return. Use this parameter with NextToken to // get results as a set of sequential pages. Limit *int64 `min:"1" type:"integer"` // Descriptive label associated with an alias. Alias names do not need to be // unique. Name *string `min:"1" type:"string"` // Token indicating the start of the next sequential page of results. Use the // token that is returned with a previous call to this action. To specify the // start of the result set, do not specify a value. NextToken *string `min:"1" type:"string"` // Type of routing to filter results on. Use this parameter to retrieve only // aliases of a certain type. To retrieve all aliases, leave this parameter // empty. // // Possible routing types include the following: // // * SIMPLE – The alias resolves to one specific fleet. Use this type when // routing to active fleets. // // * TERMINAL – The alias does not resolve to a fleet but instead can be // used to display a message to the user. A terminal alias throws a TerminalRoutingStrategyException // with the RoutingStrategy message embedded. RoutingStrategyType *string `type:"string" enum:"RoutingStrategyType"` } // String returns the string representation func (s ListAliasesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAliasesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListAliasesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListAliasesInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type ListAliasesOutput struct { _ struct{} `type:"structure"` // Collection of alias records that match the list request. Aliases []*Alias `type:"list"` // Token indicating where to resume retrieving results on the next call to this // action. If no token is returned, these results represent the end of the list. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s ListAliasesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAliasesOutput) GoString() string { return s.String() } // Represents the input for a request action. type ListBuildsInput struct { _ struct{} `type:"structure"` // Maximum number of results to return. Use this parameter with NextToken to // get results as a set of sequential pages. Limit *int64 `min:"1" type:"integer"` // Token indicating the start of the next sequential page of results. Use the // token that is returned with a previous call to this action. To specify the // start of the result set, do not specify a value. NextToken *string `min:"1" type:"string"` // Build status to filter results by. To retrieve all builds, leave this parameter // empty. // // Possible build statuses include the following: // // * INITIALIZED – A new build has been defined, but no files have been uploaded. // You cannot create fleets for builds that are in this status. When a build // is successfully created, the build status is set to this value. // // * READY – The game build has been successfully uploaded. You can now create // new fleets for this build. // // * FAILED – The game build upload failed. You cannot create new fleets // for this build. Status *string `type:"string" enum:"BuildStatus"` } // String returns the string representation func (s ListBuildsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListBuildsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListBuildsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListBuildsInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type ListBuildsOutput struct { _ struct{} `type:"structure"` // Collection of build records that match the request. Builds []*Build `type:"list"` // Token indicating where to resume retrieving results on the next call to this // action. If no token is returned, these results represent the end of the list. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s ListBuildsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListBuildsOutput) GoString() string { return s.String() } // Represents the input for a request action. type ListFleetsInput struct { _ struct{} `type:"structure"` // Unique identifier of the build to return fleets for. Use this parameter to // return only fleets using the specified build. To retrieve all fleets, leave // this parameter empty. BuildId *string `type:"string"` // Maximum number of results to return. Use this parameter with NextToken to // get results as a set of sequential pages. Limit *int64 `min:"1" type:"integer"` // Token indicating the start of the next sequential page of results. Use the // token that is returned with a previous call to this action. To specify the // start of the result set, do not specify a value. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s ListFleetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListFleetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListFleetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListFleetsInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type ListFleetsOutput struct { _ struct{} `type:"structure"` // Set of fleet IDs matching the list request. You can retrieve additional information // about all returned fleets by passing this result set to a call to DescribeFleetAttributes, // DescribeFleetCapacity, and DescribeFleetUtilization. FleetIds []*string `min:"1" type:"list"` // Token indicating where to resume retrieving results on the next call to this // action. If no token is returned, these results represent the end of the list. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s ListFleetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListFleetsOutput) GoString() string { return s.String() } // Properties describing a player session. type PlayerSession struct { _ struct{} `type:"structure"` // Time stamp indicating when this data object was created. Format is a number // expressed in Unix time as milliseconds (ex: "1469498468.057". CreationTime *time.Time `type:"timestamp" timestampFormat:"unix"` // Unique identifier for a fleet. FleetId *string `type:"string"` // Unique identifier for the game session that the player session is connected // to. GameSessionId *string `min:"1" type:"string"` // Game session IP address. All player sessions reference the game session location. IpAddress *string `type:"string"` // Unique identifier for a player. PlayerId *string `min:"1" type:"string"` // Unique identifier for a player session. PlayerSessionId *string `type:"string"` // Port number for the game session. To connect to a GameLift server process, // an app needs both the IP address and port number. Port *int64 `min:"1" type:"integer"` // Current status of the player session. // // Possible player session statuses include the following: // // * RESERVED – The player session request has been received, but the player // has not yet connected to the server process and/or been validated. // // * ACTIVE – The player has been validated by the server process and is // currently connected. // // * COMPLETED – The player connection has been dropped. // // * TIMEDOUT – A player session request was received, but the player did // not connect and/or was not validated within the time-out limit (60 seconds). Status *string `type:"string" enum:"PlayerSessionStatus"` // Time stamp indicating when this data object was terminated. Format is a number // expressed in Unix time as milliseconds (ex: "1469498468.057". TerminationTime *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s PlayerSession) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PlayerSession) GoString() string { return s.String() } // Represents the input for a request action. type PutScalingPolicyInput struct { _ struct{} `type:"structure"` // Comparison operator to use when measuring the metric against the threshold // value. // // ComparisonOperator is a required field ComparisonOperator *string `type:"string" required:"true" enum:"ComparisonOperatorType"` // Length of time (in minutes) the metric must be at or beyond the threshold // before a scaling event is triggered. // // EvaluationPeriods is a required field EvaluationPeriods *int64 `min:"1" type:"integer" required:"true"` // Unique identity for the fleet to scale with this policy. // // FleetId is a required field FleetId *string `type:"string" required:"true"` // Name of the Amazon GameLift-defined metric that is used to trigger an adjustment. // // * ActivatingGameSessions – number of game sessions in the process of being // created (game session status = ACTIVATING). // // * ActiveGameSessions – number of game sessions currently running (game // session status = ACTIVE). // // * CurrentPlayerSessions – number of active or reserved player sessions // (player session status = ACTIVE or RESERVED). // // * AvailablePlayerSessions – number of player session slots currently available // in active game sessions across the fleet, calculated by subtracting a // game session's current player session count from its maximum player session // count. This number includes game sessions that are not currently accepting // players (game session PlayerSessionCreationPolicy = DENY_ALL). // // * ActiveInstances – number of instances currently running a game session. // // * IdleInstances – number of instances not currently running a game session. // // MetricName is a required field MetricName *string `type:"string" required:"true" enum:"MetricName"` // Descriptive label associated with a scaling policy. Policy names do not need // to be unique. A fleet can have only one scaling policy with the same name. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // Amount of adjustment to make, based on the scaling adjustment type. // // ScalingAdjustment is a required field ScalingAdjustment *int64 `type:"integer" required:"true"` // Type of adjustment to make to a fleet's instance count (see FleetCapacity): // // * ChangeInCapacity – add (or subtract) the scaling adjustment value from // the current instance count. Positive values scale up while negative values // scale down. // // * ExactCapacity – set the instance count to the scaling adjustment value. // // * PercentChangeInCapacity – increase or reduce the current instance count // by the scaling adjustment, read as a percentage. Positive values scale // up while negative values scale down; for example, a value of "-10" scales // the fleet down by 10%. // // ScalingAdjustmentType is a required field ScalingAdjustmentType *string `type:"string" required:"true" enum:"ScalingAdjustmentType"` // Metric value used to trigger a scaling event. // // Threshold is a required field Threshold *float64 `type:"double" required:"true"` } // String returns the string representation func (s PutScalingPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutScalingPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutScalingPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutScalingPolicyInput"} if s.ComparisonOperator == nil { invalidParams.Add(request.NewErrParamRequired("ComparisonOperator")) } if s.EvaluationPeriods == nil { invalidParams.Add(request.NewErrParamRequired("EvaluationPeriods")) } if s.EvaluationPeriods != nil && *s.EvaluationPeriods < 1 { invalidParams.Add(request.NewErrParamMinValue("EvaluationPeriods", 1)) } if s.FleetId == nil { invalidParams.Add(request.NewErrParamRequired("FleetId")) } if s.MetricName == nil { invalidParams.Add(request.NewErrParamRequired("MetricName")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.ScalingAdjustment == nil { invalidParams.Add(request.NewErrParamRequired("ScalingAdjustment")) } if s.ScalingAdjustmentType == nil { invalidParams.Add(request.NewErrParamRequired("ScalingAdjustmentType")) } if s.Threshold == nil { invalidParams.Add(request.NewErrParamRequired("Threshold")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type PutScalingPolicyOutput struct { _ struct{} `type:"structure"` // Descriptive label associated with a scaling policy. Policy names do not need // to be unique. Name *string `min:"1" type:"string"` } // String returns the string representation func (s PutScalingPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutScalingPolicyOutput) GoString() string { return s.String() } // Represents the input for a request action. type RequestUploadCredentialsInput struct { _ struct{} `type:"structure"` // Unique identifier for the build you want to get credentials for. // // BuildId is a required field BuildId *string `type:"string" required:"true"` } // String returns the string representation func (s RequestUploadCredentialsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestUploadCredentialsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RequestUploadCredentialsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RequestUploadCredentialsInput"} if s.BuildId == nil { invalidParams.Add(request.NewErrParamRequired("BuildId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type RequestUploadCredentialsOutput struct { _ struct{} `type:"structure"` // Amazon S3 path and key, identifying where the game build files are stored. StorageLocation *S3Location `type:"structure"` // AWS credentials required when uploading a game build to the storage location. // These credentials have a limited lifespan and are valid only for the build // they were issued for. UploadCredentials *AwsCredentials `type:"structure"` } // String returns the string representation func (s RequestUploadCredentialsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestUploadCredentialsOutput) GoString() string { return s.String() } // Represents the input for a request action. type ResolveAliasInput struct { _ struct{} `type:"structure"` // Unique identifier for the alias you want to resolve. // // AliasId is a required field AliasId *string `type:"string" required:"true"` } // String returns the string representation func (s ResolveAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResolveAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ResolveAliasInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ResolveAliasInput"} if s.AliasId == nil { invalidParams.Add(request.NewErrParamRequired("AliasId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type ResolveAliasOutput struct { _ struct{} `type:"structure"` // Fleet ID associated with the requested alias. FleetId *string `type:"string"` } // String returns the string representation func (s ResolveAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResolveAliasOutput) GoString() string { return s.String() } // Policy that limits the number of game sessions a player can create on the // same fleet. This optional policy gives game owners control over how players // can consume available game server resources. A resource creation policy makes // the following statement: "An individual player can create a maximum number // of new game sessions within a specified time period". // // The policy is evaluated when a player tries to create a new game session. // For example, with a policy of 10 new game sessions and a time period of 60 // minutes, on receiving a CreateGameSession request, GameLift checks that the // player (identified by CreatorId) has created fewer than 10 game sessions // in the past 60 minutes. type ResourceCreationLimitPolicy struct { _ struct{} `type:"structure"` // Maximum number of game sessions an individual can create during the policy // period. NewGameSessionsPerCreator *int64 `type:"integer"` // Time span used to evaluate the resource creation limit policy. PolicyPeriodInMinutes *int64 `type:"integer"` } // String returns the string representation func (s ResourceCreationLimitPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResourceCreationLimitPolicy) GoString() string { return s.String() } // Routing configuration for a fleet alias. type RoutingStrategy struct { _ struct{} `type:"structure"` // Unique identifier for a fleet. FleetId *string `type:"string"` // Message text to be used with a terminal routing strategy. Message *string `type:"string"` // Type of routing strategy. // // Possible routing types include the following: // // * SIMPLE – The alias resolves to one specific fleet. Use this type when // routing to active fleets. // // * TERMINAL – The alias does not resolve to a fleet but instead can be // used to display a message to the user. A terminal alias throws a TerminalRoutingStrategyException // with the RoutingStrategy message embedded. Type *string `type:"string" enum:"RoutingStrategyType"` } // String returns the string representation func (s RoutingStrategy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RoutingStrategy) GoString() string { return s.String() } // Collection of server process configurations that describe what processes // should be run on each instance in a fleet. An instance can launch and maintain // multiple server processes based on the runtime configuration; it regularly // checks for an updated runtime configuration and starts new server processes // to match the latest version. // // The key purpose of a runtime configuration with multiple server process configurations // is to be able to run more than one kind of game server in a single fleet. // You can include configurations for more than one server executable in order // to run two or more different programs to run on the same instance. This option // might be useful, for example, to run more than one version of your game server // on the same fleet. Another option is to specify configurations for the same // server executable but with different launch parameters. // // A GameLift instance is limited to 50 processes running simultaneously. To // calculate the total number of processes specified in a runtime configuration, // add the values of the ConcurrentExecutions parameter for each ServerProcess // object in the runtime configuration. type RuntimeConfiguration struct { _ struct{} `type:"structure"` // Collection of server process configurations describing what server processes // to run on each instance in a fleet ServerProcesses []*ServerProcess `min:"1" type:"list"` } // String returns the string representation func (s RuntimeConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RuntimeConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RuntimeConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RuntimeConfiguration"} if s.ServerProcesses != nil && len(s.ServerProcesses) < 1 { invalidParams.Add(request.NewErrParamMinLen("ServerProcesses", 1)) } if s.ServerProcesses != nil { for i, v := range s.ServerProcesses { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ServerProcesses", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Location in Amazon Simple Storage Service (Amazon S3) where a build's files // are stored. This location is assigned in response to a CreateBuild call, // and is always in the same region as the service used to create the build. // For more details see the Amazon S3 documentation (http://aws.amazon.com/documentation/s3/). type S3Location struct { _ struct{} `type:"structure"` // Amazon S3 bucket identifier. Bucket *string `min:"1" type:"string"` // Amazon S3 bucket key. Key *string `min:"1" type:"string"` // Amazon resource number for the cross-account access role that allows GameLift // access to the S3 bucket. RoleArn *string `min:"1" type:"string"` } // String returns the string representation func (s S3Location) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s S3Location) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3Location) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3Location"} if s.Bucket != nil && len(*s.Bucket) < 1 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 1)) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.RoleArn != nil && len(*s.RoleArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Rule that controls how a fleet is scaled. Scaling policies are uniquely identified // by the combination of name and fleet ID. type ScalingPolicy struct { _ struct{} `type:"structure"` // Comparison operator to use when measuring a metric against the threshold // value. ComparisonOperator *string `type:"string" enum:"ComparisonOperatorType"` // Length of time (in minutes) the metric must be at or beyond the threshold // before a scaling event is triggered. EvaluationPeriods *int64 `min:"1" type:"integer"` // Unique identity for the fleet associated with this scaling policy. FleetId *string `type:"string"` // Name of the GameLift-defined metric that is used to trigger an adjustment. // // * ActivatingGameSessions – number of game sessions in the process of being // created (game session status = ACTIVATING). // // * ActiveGameSessions – number of game sessions currently running (game // session status = ACTIVE). // // * CurrentPlayerSessions – number of active or reserved player sessions // (player session status = ACTIVE or RESERVED). // // * AvailablePlayerSessions – number of player session slots currently available // in active game sessions across the fleet, calculated by subtracting a // game session's current player session count from its maximum player session // count. This number does include game sessions that are not currently accepting // players (game session PlayerSessionCreationPolicy = DENY_ALL). // // * ActiveInstances – number of instances currently running a game session. // // * IdleInstances – number of instances not currently running a game session. MetricName *string `type:"string" enum:"MetricName"` // Descriptive label associated with a scaling policy. Policy names do not need // to be unique. Name *string `min:"1" type:"string"` // Amount of adjustment to make, based on the scaling adjustment type. ScalingAdjustment *int64 `type:"integer"` // Type of adjustment to make to a fleet's instance count (see FleetCapacity): // // * ChangeInCapacity – add (or subtract) the scaling adjustment value from // the current instance count. Positive values scale up while negative values // scale down. // // * ExactCapacity – set the instance count to the scaling adjustment value. // // * PercentChangeInCapacity – increase or reduce the current instance count // by the scaling adjustment, read as a percentage. Positive values scale // up while negative values scale down. ScalingAdjustmentType *string `type:"string" enum:"ScalingAdjustmentType"` // Current status of the scaling policy. The scaling policy is only in force // when in an ACTIVE status. // // * ACTIVE – The scaling policy is currently in force. // // * UPDATE_REQUESTED – A request to update the scaling policy has been received. // // * UPDATING – A change is being made to the scaling policy. // // * DELETE_REQUESTED – A request to delete the scaling policy has been received. // // * DELETING – The scaling policy is being deleted. // // * DELETED – The scaling policy has been deleted. // // * ERROR – An error occurred in creating the policy. It should be removed // and recreated. Status *string `type:"string" enum:"ScalingStatusType"` // Metric value used to trigger a scaling event. Threshold *float64 `type:"double"` } // String returns the string representation func (s ScalingPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScalingPolicy) GoString() string { return s.String() } // Represents the input for a request action. type SearchGameSessionsInput struct { _ struct{} `type:"structure"` // Unique identifier for a fleet alias. Each request must reference either a // fleet ID or alias ID, but not both. AliasId *string `type:"string"` // String containing the search criteria for the session search. If no filter // expression is included, the request returns results for all game sessions // in the fleet that are in ACTIVE status. // // A filter expression can contain one or multiple conditions. Each condition // consists of the following: // // * Operand -- Name of a game session attribute. Valid values are gameSessionName, // gameSessionId, creationTimeMillis, playerSessionCount, maximumSessions, // hasAvailablePlayerSessions. // // * Comparator -- Valid comparators are: =, <>, <, >, <=, >=. // // * Value -- Value to be searched for. Values can be numbers, boolean values // (true/false) or strings. String values are case sensitive, enclosed in // single quotes. Special characters must be escaped. Boolean and string // values can only be used with the comparators = and <>. For example, the // following filter expression searches on gameSessionName: "FilterExpression": // "gameSessionName = 'Matt\\'s Awesome Game 1'". // // To chain multiple conditions in a single expression, use the logical keywords // AND, OR, and NOT and parentheses as needed. For example: x AND y AND NOT // z, NOT (x OR y). // // Session search evaluates conditions from left to right using the following // precedence rules: // // =, <>, <, >, <=, >= // // Parentheses // // NOT // // AND // // OR // // For example, this filter expression retrieves game sessions hosting at least // ten players that have an open player slot: "maximumSessions>=10 AND hasAvailablePlayerSessions=true". FilterExpression *string `min:"1" type:"string"` // Unique identifier for a fleet. Each request must reference either a fleet // ID or alias ID, but not both. FleetId *string `type:"string"` // Maximum number of results to return. Use this parameter with NextToken to // get results as a set of sequential pages. The maximum number of results returned // is 20, even if this value is not set or is set higher than 20. Limit *int64 `min:"1" type:"integer"` // Token indicating the start of the next sequential page of results. Use the // token that is returned with a previous call to this action. To specify the // start of the result set, do not specify a value. NextToken *string `min:"1" type:"string"` // Instructions on how to sort the search results. If no sort expression is // included, the request returns results in random order. A sort expression // consists of the following elements: // // * Operand -- Name of a game session attribute. Valid values are gameSessionName, // gameSessionId, creationTimeMillis, playerSessionCount, maximumSessions, // hasAvailablePlayerSessions. // // * Order -- Valid sort orders are ASC (ascending) and DESC (descending). // // For example, this sort expression returns the oldest active sessions first: // "SortExpression": "creationTimeMillis ASC". Results with a null value for // the sort operand are returned at the end of the list. SortExpression *string `min:"1" type:"string"` } // String returns the string representation func (s SearchGameSessionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SearchGameSessionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SearchGameSessionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SearchGameSessionsInput"} if s.FilterExpression != nil && len(*s.FilterExpression) < 1 { invalidParams.Add(request.NewErrParamMinLen("FilterExpression", 1)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.SortExpression != nil && len(*s.SortExpression) < 1 { invalidParams.Add(request.NewErrParamMinLen("SortExpression", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type SearchGameSessionsOutput struct { _ struct{} `type:"structure"` // Collection of objects containing game session properties for each session // matching the request. GameSessions []*GameSession `type:"list"` // Token indicating where to resume retrieving results on the next call to this // action. If no token is returned, these results represent the end of the list. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s SearchGameSessionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SearchGameSessionsOutput) GoString() string { return s.String() } // A set of instructions for launching server processes on each instance in // a fleet. Each instruction set identifies the location of the server executable, // optional launch parameters, and the number of server processes with this // configuration to maintain concurrently on the instance. Server process configurations // make up a fleet's RuntimeConfiguration. type ServerProcess struct { _ struct{} `type:"structure"` // Number of server processes using this configuration to run concurrently on // an instance. // // ConcurrentExecutions is a required field ConcurrentExecutions *int64 `min:"1" type:"integer" required:"true"` // Location in the game build of the server executable. All game builds are // installed on instances at the root C:\game\..., so an executable file located // at MyGame\latest\server.exe has a launch path of "C:\game\MyGame\latest\server.exe". // // LaunchPath is a required field LaunchPath *string `min:"1" type:"string" required:"true"` // Optional list of parameters to pass to the server executable on launch. Parameters *string `min:"1" type:"string"` } // String returns the string representation func (s ServerProcess) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ServerProcess) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ServerProcess) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ServerProcess"} if s.ConcurrentExecutions == nil { invalidParams.Add(request.NewErrParamRequired("ConcurrentExecutions")) } if s.ConcurrentExecutions != nil && *s.ConcurrentExecutions < 1 { invalidParams.Add(request.NewErrParamMinValue("ConcurrentExecutions", 1)) } if s.LaunchPath == nil { invalidParams.Add(request.NewErrParamRequired("LaunchPath")) } if s.LaunchPath != nil && len(*s.LaunchPath) < 1 { invalidParams.Add(request.NewErrParamMinLen("LaunchPath", 1)) } if s.Parameters != nil && len(*s.Parameters) < 1 { invalidParams.Add(request.NewErrParamMinLen("Parameters", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the input for a request action. type UpdateAliasInput struct { _ struct{} `type:"structure"` // Unique identifier for a fleet alias. Specify the alias you want to update. // // AliasId is a required field AliasId *string `type:"string" required:"true"` // Human-readable description of an alias. Description *string `min:"1" type:"string"` // Descriptive label associated with an alias. Alias names do not need to be // unique. Name *string `min:"1" type:"string"` // Object specifying the fleet and routing type to use for the alias. RoutingStrategy *RoutingStrategy `type:"structure"` } // String returns the string representation func (s UpdateAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateAliasInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateAliasInput"} if s.AliasId == nil { invalidParams.Add(request.NewErrParamRequired("AliasId")) } if s.Description != nil && len(*s.Description) < 1 { invalidParams.Add(request.NewErrParamMinLen("Description", 1)) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type UpdateAliasOutput struct { _ struct{} `type:"structure"` // Object containing the updated alias configuration. Alias *Alias `type:"structure"` } // String returns the string representation func (s UpdateAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAliasOutput) GoString() string { return s.String() } // Represents the input for a request action. type UpdateBuildInput struct { _ struct{} `type:"structure"` // Unique identifier of the build you want to update. // // BuildId is a required field BuildId *string `type:"string" required:"true"` // Descriptive label associated with a build. Build names do not need to be // unique. Name *string `min:"1" type:"string"` // Version associated with this build. Version strings do not need to be unique // to a build. Version *string `min:"1" type:"string"` } // String returns the string representation func (s UpdateBuildInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateBuildInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateBuildInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateBuildInput"} if s.BuildId == nil { invalidParams.Add(request.NewErrParamRequired("BuildId")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Version != nil && len(*s.Version) < 1 { invalidParams.Add(request.NewErrParamMinLen("Version", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type UpdateBuildOutput struct { _ struct{} `type:"structure"` // Object containing the updated build record. Build *Build `type:"structure"` } // String returns the string representation func (s UpdateBuildOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateBuildOutput) GoString() string { return s.String() } // Represents the input for a request action. type UpdateFleetAttributesInput struct { _ struct{} `type:"structure"` // Human-readable description of a fleet. Description *string `min:"1" type:"string"` // Unique identifier for the fleet you want to update attribute metadata for. // // FleetId is a required field FleetId *string `type:"string" required:"true"` // Descriptive label associated with a fleet. Fleet names do not need to be // unique. Name *string `min:"1" type:"string"` // Game session protection policy to apply to all new instances created in this // fleet. Instances that already exist are not affected. You can set protection // for individual instances using UpdateGameSession. // // * NoProtection – The game session can be terminated during a scale-down // event. // // * FullProtection – If the game session is in an ACTIVE status, it cannot // be terminated during a scale-down event. NewGameSessionProtectionPolicy *string `type:"string" enum:"ProtectionPolicy"` // Policy that limits the number of game sessions an individual player can create // over a span of time. ResourceCreationLimitPolicy *ResourceCreationLimitPolicy `type:"structure"` } // String returns the string representation func (s UpdateFleetAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateFleetAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateFleetAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateFleetAttributesInput"} if s.Description != nil && len(*s.Description) < 1 { invalidParams.Add(request.NewErrParamMinLen("Description", 1)) } if s.FleetId == nil { invalidParams.Add(request.NewErrParamRequired("FleetId")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type UpdateFleetAttributesOutput struct { _ struct{} `type:"structure"` // Unique identifier for the updated fleet. FleetId *string `type:"string"` } // String returns the string representation func (s UpdateFleetAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateFleetAttributesOutput) GoString() string { return s.String() } // Represents the input for a request action. type UpdateFleetCapacityInput struct { _ struct{} `type:"structure"` // Number of EC2 instances you want this fleet to host. DesiredInstances *int64 `type:"integer"` // Unique identifier for the fleet you want to update capacity for. // // FleetId is a required field FleetId *string `type:"string" required:"true"` // Maximum value allowed for the fleet's instance count. Default if not set // is 1. MaxSize *int64 `type:"integer"` // Minimum value allowed for the fleet's instance count. Default if not set // is 0. MinSize *int64 `type:"integer"` } // String returns the string representation func (s UpdateFleetCapacityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateFleetCapacityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateFleetCapacityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateFleetCapacityInput"} if s.FleetId == nil { invalidParams.Add(request.NewErrParamRequired("FleetId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type UpdateFleetCapacityOutput struct { _ struct{} `type:"structure"` // Unique identifier for the updated fleet. FleetId *string `type:"string"` } // String returns the string representation func (s UpdateFleetCapacityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateFleetCapacityOutput) GoString() string { return s.String() } // Represents the input for a request action. type UpdateFleetPortSettingsInput struct { _ struct{} `type:"structure"` // Unique identifier for the fleet you want to update port settings for. // // FleetId is a required field FleetId *string `type:"string" required:"true"` // Collection of port settings to be added to the fleet record. InboundPermissionAuthorizations []*IpPermission `type:"list"` // Collection of port settings to be removed from the fleet record. InboundPermissionRevocations []*IpPermission `type:"list"` } // String returns the string representation func (s UpdateFleetPortSettingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateFleetPortSettingsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateFleetPortSettingsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateFleetPortSettingsInput"} if s.FleetId == nil { invalidParams.Add(request.NewErrParamRequired("FleetId")) } if s.InboundPermissionAuthorizations != nil { for i, v := range s.InboundPermissionAuthorizations { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InboundPermissionAuthorizations", i), err.(request.ErrInvalidParams)) } } } if s.InboundPermissionRevocations != nil { for i, v := range s.InboundPermissionRevocations { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InboundPermissionRevocations", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type UpdateFleetPortSettingsOutput struct { _ struct{} `type:"structure"` // Unique identifier for the updated fleet. FleetId *string `type:"string"` } // String returns the string representation func (s UpdateFleetPortSettingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateFleetPortSettingsOutput) GoString() string { return s.String() } // Represents the input for a request action. type UpdateGameSessionInput struct { _ struct{} `type:"structure"` // Unique identifier for the game session to update. Game session ID format // is as follows: "arn:aws:gamelift:::gamesession/fleet-/". The value of is either a custom ID string (if one was // specified when the game session was created) an auto-generated string. // // GameSessionId is a required field GameSessionId *string `min:"1" type:"string" required:"true"` // Maximum number of players that can be simultaneously connected to the game // session. MaximumPlayerSessionCount *int64 `type:"integer"` // Descriptive label associated with a game session. Session names do not need // to be unique. Name *string `min:"1" type:"string"` // Policy determining whether or not the game session accepts new players. PlayerSessionCreationPolicy *string `type:"string" enum:"PlayerSessionCreationPolicy"` // Game session protection policy to apply to this game session only. // // * NoProtection – The game session can be terminated during a scale-down // event. // // * FullProtection – If the game session is in an ACTIVE status, it cannot // be terminated during a scale-down event. ProtectionPolicy *string `type:"string" enum:"ProtectionPolicy"` } // String returns the string representation func (s UpdateGameSessionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateGameSessionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateGameSessionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateGameSessionInput"} if s.GameSessionId == nil { invalidParams.Add(request.NewErrParamRequired("GameSessionId")) } if s.GameSessionId != nil && len(*s.GameSessionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("GameSessionId", 1)) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type UpdateGameSessionOutput struct { _ struct{} `type:"structure"` // Object containing the updated game session metadata. GameSession *GameSession `type:"structure"` } // String returns the string representation func (s UpdateGameSessionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateGameSessionOutput) GoString() string { return s.String() } // Represents the input for a request action. type UpdateRuntimeConfigurationInput struct { _ struct{} `type:"structure"` // Unique identifier of the fleet to update runtime configuration for. // // FleetId is a required field FleetId *string `type:"string" required:"true"` // Instructions for launching server processes on each instance in the fleet. // The runtime configuration for a fleet has a collection of server process // configurations, one for each type of server process to run on an instance. // A server process configuration specifies the location of the server executable, // launch parameters, and the number of concurrent processes with that configuration // to maintain on each instance. // // RuntimeConfiguration is a required field RuntimeConfiguration *RuntimeConfiguration `type:"structure" required:"true"` } // String returns the string representation func (s UpdateRuntimeConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateRuntimeConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateRuntimeConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateRuntimeConfigurationInput"} if s.FleetId == nil { invalidParams.Add(request.NewErrParamRequired("FleetId")) } if s.RuntimeConfiguration == nil { invalidParams.Add(request.NewErrParamRequired("RuntimeConfiguration")) } if s.RuntimeConfiguration != nil { if err := s.RuntimeConfiguration.Validate(); err != nil { invalidParams.AddNested("RuntimeConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the returned data in response to a request action. type UpdateRuntimeConfigurationOutput struct { _ struct{} `type:"structure"` // The runtime configuration currently in force. If the update was successful, // this object matches the one in the request. RuntimeConfiguration *RuntimeConfiguration `type:"structure"` } // String returns the string representation func (s UpdateRuntimeConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateRuntimeConfigurationOutput) GoString() string { return s.String() } const ( // BuildStatusInitialized is a BuildStatus enum value BuildStatusInitialized = "INITIALIZED" // BuildStatusReady is a BuildStatus enum value BuildStatusReady = "READY" // BuildStatusFailed is a BuildStatus enum value BuildStatusFailed = "FAILED" ) const ( // ComparisonOperatorTypeGreaterThanOrEqualToThreshold is a ComparisonOperatorType enum value ComparisonOperatorTypeGreaterThanOrEqualToThreshold = "GreaterThanOrEqualToThreshold" // ComparisonOperatorTypeGreaterThanThreshold is a ComparisonOperatorType enum value ComparisonOperatorTypeGreaterThanThreshold = "GreaterThanThreshold" // ComparisonOperatorTypeLessThanThreshold is a ComparisonOperatorType enum value ComparisonOperatorTypeLessThanThreshold = "LessThanThreshold" // ComparisonOperatorTypeLessThanOrEqualToThreshold is a ComparisonOperatorType enum value ComparisonOperatorTypeLessThanOrEqualToThreshold = "LessThanOrEqualToThreshold" ) const ( // EC2InstanceTypeT2Micro is a EC2InstanceType enum value EC2InstanceTypeT2Micro = "t2.micro" // EC2InstanceTypeT2Small is a EC2InstanceType enum value EC2InstanceTypeT2Small = "t2.small" // EC2InstanceTypeT2Medium is a EC2InstanceType enum value EC2InstanceTypeT2Medium = "t2.medium" // EC2InstanceTypeT2Large is a EC2InstanceType enum value EC2InstanceTypeT2Large = "t2.large" // EC2InstanceTypeC3Large is a EC2InstanceType enum value EC2InstanceTypeC3Large = "c3.large" // EC2InstanceTypeC3Xlarge is a EC2InstanceType enum value EC2InstanceTypeC3Xlarge = "c3.xlarge" // EC2InstanceTypeC32xlarge is a EC2InstanceType enum value EC2InstanceTypeC32xlarge = "c3.2xlarge" // EC2InstanceTypeC34xlarge is a EC2InstanceType enum value EC2InstanceTypeC34xlarge = "c3.4xlarge" // EC2InstanceTypeC38xlarge is a EC2InstanceType enum value EC2InstanceTypeC38xlarge = "c3.8xlarge" // EC2InstanceTypeC4Large is a EC2InstanceType enum value EC2InstanceTypeC4Large = "c4.large" // EC2InstanceTypeC4Xlarge is a EC2InstanceType enum value EC2InstanceTypeC4Xlarge = "c4.xlarge" // EC2InstanceTypeC42xlarge is a EC2InstanceType enum value EC2InstanceTypeC42xlarge = "c4.2xlarge" // EC2InstanceTypeC44xlarge is a EC2InstanceType enum value EC2InstanceTypeC44xlarge = "c4.4xlarge" // EC2InstanceTypeC48xlarge is a EC2InstanceType enum value EC2InstanceTypeC48xlarge = "c4.8xlarge" // EC2InstanceTypeR3Large is a EC2InstanceType enum value EC2InstanceTypeR3Large = "r3.large" // EC2InstanceTypeR3Xlarge is a EC2InstanceType enum value EC2InstanceTypeR3Xlarge = "r3.xlarge" // EC2InstanceTypeR32xlarge is a EC2InstanceType enum value EC2InstanceTypeR32xlarge = "r3.2xlarge" // EC2InstanceTypeR34xlarge is a EC2InstanceType enum value EC2InstanceTypeR34xlarge = "r3.4xlarge" // EC2InstanceTypeR38xlarge is a EC2InstanceType enum value EC2InstanceTypeR38xlarge = "r3.8xlarge" // EC2InstanceTypeM3Medium is a EC2InstanceType enum value EC2InstanceTypeM3Medium = "m3.medium" // EC2InstanceTypeM3Large is a EC2InstanceType enum value EC2InstanceTypeM3Large = "m3.large" // EC2InstanceTypeM3Xlarge is a EC2InstanceType enum value EC2InstanceTypeM3Xlarge = "m3.xlarge" // EC2InstanceTypeM32xlarge is a EC2InstanceType enum value EC2InstanceTypeM32xlarge = "m3.2xlarge" // EC2InstanceTypeM4Large is a EC2InstanceType enum value EC2InstanceTypeM4Large = "m4.large" // EC2InstanceTypeM4Xlarge is a EC2InstanceType enum value EC2InstanceTypeM4Xlarge = "m4.xlarge" // EC2InstanceTypeM42xlarge is a EC2InstanceType enum value EC2InstanceTypeM42xlarge = "m4.2xlarge" // EC2InstanceTypeM44xlarge is a EC2InstanceType enum value EC2InstanceTypeM44xlarge = "m4.4xlarge" // EC2InstanceTypeM410xlarge is a EC2InstanceType enum value EC2InstanceTypeM410xlarge = "m4.10xlarge" ) const ( // EventCodeGenericEvent is a EventCode enum value EventCodeGenericEvent = "GENERIC_EVENT" // EventCodeFleetCreated is a EventCode enum value EventCodeFleetCreated = "FLEET_CREATED" // EventCodeFleetDeleted is a EventCode enum value EventCodeFleetDeleted = "FLEET_DELETED" // EventCodeFleetScalingEvent is a EventCode enum value EventCodeFleetScalingEvent = "FLEET_SCALING_EVENT" // EventCodeFleetStateDownloading is a EventCode enum value EventCodeFleetStateDownloading = "FLEET_STATE_DOWNLOADING" // EventCodeFleetStateValidating is a EventCode enum value EventCodeFleetStateValidating = "FLEET_STATE_VALIDATING" // EventCodeFleetStateBuilding is a EventCode enum value EventCodeFleetStateBuilding = "FLEET_STATE_BUILDING" // EventCodeFleetStateActivating is a EventCode enum value EventCodeFleetStateActivating = "FLEET_STATE_ACTIVATING" // EventCodeFleetStateActive is a EventCode enum value EventCodeFleetStateActive = "FLEET_STATE_ACTIVE" // EventCodeFleetStateError is a EventCode enum value EventCodeFleetStateError = "FLEET_STATE_ERROR" // EventCodeFleetInitializationFailed is a EventCode enum value EventCodeFleetInitializationFailed = "FLEET_INITIALIZATION_FAILED" // EventCodeFleetBinaryDownloadFailed is a EventCode enum value EventCodeFleetBinaryDownloadFailed = "FLEET_BINARY_DOWNLOAD_FAILED" // EventCodeFleetValidationLaunchPathNotFound is a EventCode enum value EventCodeFleetValidationLaunchPathNotFound = "FLEET_VALIDATION_LAUNCH_PATH_NOT_FOUND" // EventCodeFleetValidationExecutableRuntimeFailure is a EventCode enum value EventCodeFleetValidationExecutableRuntimeFailure = "FLEET_VALIDATION_EXECUTABLE_RUNTIME_FAILURE" // EventCodeFleetValidationTimedOut is a EventCode enum value EventCodeFleetValidationTimedOut = "FLEET_VALIDATION_TIMED_OUT" // EventCodeFleetActivationFailed is a EventCode enum value EventCodeFleetActivationFailed = "FLEET_ACTIVATION_FAILED" // EventCodeFleetActivationFailedNoInstances is a EventCode enum value EventCodeFleetActivationFailedNoInstances = "FLEET_ACTIVATION_FAILED_NO_INSTANCES" // EventCodeFleetNewGameSessionProtectionPolicyUpdated is a EventCode enum value EventCodeFleetNewGameSessionProtectionPolicyUpdated = "FLEET_NEW_GAME_SESSION_PROTECTION_POLICY_UPDATED" ) const ( // FleetStatusNew is a FleetStatus enum value FleetStatusNew = "NEW" // FleetStatusDownloading is a FleetStatus enum value FleetStatusDownloading = "DOWNLOADING" // FleetStatusValidating is a FleetStatus enum value FleetStatusValidating = "VALIDATING" // FleetStatusBuilding is a FleetStatus enum value FleetStatusBuilding = "BUILDING" // FleetStatusActivating is a FleetStatus enum value FleetStatusActivating = "ACTIVATING" // FleetStatusActive is a FleetStatus enum value FleetStatusActive = "ACTIVE" // FleetStatusDeleting is a FleetStatus enum value FleetStatusDeleting = "DELETING" // FleetStatusError is a FleetStatus enum value FleetStatusError = "ERROR" // FleetStatusTerminated is a FleetStatus enum value FleetStatusTerminated = "TERMINATED" ) const ( // GameSessionStatusActive is a GameSessionStatus enum value GameSessionStatusActive = "ACTIVE" // GameSessionStatusActivating is a GameSessionStatus enum value GameSessionStatusActivating = "ACTIVATING" // GameSessionStatusTerminated is a GameSessionStatus enum value GameSessionStatusTerminated = "TERMINATED" // GameSessionStatusTerminating is a GameSessionStatus enum value GameSessionStatusTerminating = "TERMINATING" // GameSessionStatusError is a GameSessionStatus enum value GameSessionStatusError = "ERROR" ) const ( // InstanceStatusPending is a InstanceStatus enum value InstanceStatusPending = "PENDING" // InstanceStatusActive is a InstanceStatus enum value InstanceStatusActive = "ACTIVE" // InstanceStatusTerminating is a InstanceStatus enum value InstanceStatusTerminating = "TERMINATING" ) const ( // IpProtocolTcp is a IpProtocol enum value IpProtocolTcp = "TCP" // IpProtocolUdp is a IpProtocol enum value IpProtocolUdp = "UDP" ) const ( // MetricNameActivatingGameSessions is a MetricName enum value MetricNameActivatingGameSessions = "ActivatingGameSessions" // MetricNameActiveGameSessions is a MetricName enum value MetricNameActiveGameSessions = "ActiveGameSessions" // MetricNameActiveInstances is a MetricName enum value MetricNameActiveInstances = "ActiveInstances" // MetricNameAvailablePlayerSessions is a MetricName enum value MetricNameAvailablePlayerSessions = "AvailablePlayerSessions" // MetricNameCurrentPlayerSessions is a MetricName enum value MetricNameCurrentPlayerSessions = "CurrentPlayerSessions" // MetricNameIdleInstances is a MetricName enum value MetricNameIdleInstances = "IdleInstances" ) const ( // OperatingSystemWindows2012 is a OperatingSystem enum value OperatingSystemWindows2012 = "WINDOWS_2012" // OperatingSystemAmazonLinux is a OperatingSystem enum value OperatingSystemAmazonLinux = "AMAZON_LINUX" ) const ( // PlayerSessionCreationPolicyAcceptAll is a PlayerSessionCreationPolicy enum value PlayerSessionCreationPolicyAcceptAll = "ACCEPT_ALL" // PlayerSessionCreationPolicyDenyAll is a PlayerSessionCreationPolicy enum value PlayerSessionCreationPolicyDenyAll = "DENY_ALL" ) const ( // PlayerSessionStatusReserved is a PlayerSessionStatus enum value PlayerSessionStatusReserved = "RESERVED" // PlayerSessionStatusActive is a PlayerSessionStatus enum value PlayerSessionStatusActive = "ACTIVE" // PlayerSessionStatusCompleted is a PlayerSessionStatus enum value PlayerSessionStatusCompleted = "COMPLETED" // PlayerSessionStatusTimedout is a PlayerSessionStatus enum value PlayerSessionStatusTimedout = "TIMEDOUT" ) const ( // ProtectionPolicyNoProtection is a ProtectionPolicy enum value ProtectionPolicyNoProtection = "NoProtection" // ProtectionPolicyFullProtection is a ProtectionPolicy enum value ProtectionPolicyFullProtection = "FullProtection" ) const ( // RoutingStrategyTypeSimple is a RoutingStrategyType enum value RoutingStrategyTypeSimple = "SIMPLE" // RoutingStrategyTypeTerminal is a RoutingStrategyType enum value RoutingStrategyTypeTerminal = "TERMINAL" ) const ( // ScalingAdjustmentTypeChangeInCapacity is a ScalingAdjustmentType enum value ScalingAdjustmentTypeChangeInCapacity = "ChangeInCapacity" // ScalingAdjustmentTypeExactCapacity is a ScalingAdjustmentType enum value ScalingAdjustmentTypeExactCapacity = "ExactCapacity" // ScalingAdjustmentTypePercentChangeInCapacity is a ScalingAdjustmentType enum value ScalingAdjustmentTypePercentChangeInCapacity = "PercentChangeInCapacity" ) const ( // ScalingStatusTypeActive is a ScalingStatusType enum value ScalingStatusTypeActive = "ACTIVE" // ScalingStatusTypeUpdateRequested is a ScalingStatusType enum value ScalingStatusTypeUpdateRequested = "UPDATE_REQUESTED" // ScalingStatusTypeUpdating is a ScalingStatusType enum value ScalingStatusTypeUpdating = "UPDATING" // ScalingStatusTypeDeleteRequested is a ScalingStatusType enum value ScalingStatusTypeDeleteRequested = "DELETE_REQUESTED" // ScalingStatusTypeDeleting is a ScalingStatusType enum value ScalingStatusTypeDeleting = "DELETING" // ScalingStatusTypeDeleted is a ScalingStatusType enum value ScalingStatusTypeDeleted = "DELETED" // ScalingStatusTypeError is a ScalingStatusType enum value ScalingStatusTypeError = "ERROR" ) aws-sdk-go-1.4.22/service/gamelift/examples_test.go000066400000000000000000000675001300374646400222270ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package gamelift_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/gamelift" ) var _ time.Duration var _ bytes.Buffer func ExampleGameLift_CreateAlias() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.CreateAliasInput{ Name: aws.String("NonBlankAndLengthConstraintString"), // Required RoutingStrategy: &gamelift.RoutingStrategy{ // Required FleetId: aws.String("FleetId"), Message: aws.String("FreeText"), Type: aws.String("RoutingStrategyType"), }, Description: aws.String("NonZeroAndMaxString"), } resp, err := svc.CreateAlias(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_CreateBuild() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.CreateBuildInput{ Name: aws.String("NonZeroAndMaxString"), OperatingSystem: aws.String("OperatingSystem"), StorageLocation: &gamelift.S3Location{ Bucket: aws.String("NonEmptyString"), Key: aws.String("NonEmptyString"), RoleArn: aws.String("NonEmptyString"), }, Version: aws.String("NonZeroAndMaxString"), } resp, err := svc.CreateBuild(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_CreateFleet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.CreateFleetInput{ BuildId: aws.String("BuildId"), // Required EC2InstanceType: aws.String("EC2InstanceType"), // Required Name: aws.String("NonZeroAndMaxString"), // Required Description: aws.String("NonZeroAndMaxString"), EC2InboundPermissions: []*gamelift.IpPermission{ { // Required FromPort: aws.Int64(1), // Required IpRange: aws.String("NonBlankString"), // Required Protocol: aws.String("IpProtocol"), // Required ToPort: aws.Int64(1), // Required }, // More values... }, LogPaths: []*string{ aws.String("NonZeroAndMaxString"), // Required // More values... }, NewGameSessionProtectionPolicy: aws.String("ProtectionPolicy"), ResourceCreationLimitPolicy: &gamelift.ResourceCreationLimitPolicy{ NewGameSessionsPerCreator: aws.Int64(1), PolicyPeriodInMinutes: aws.Int64(1), }, RuntimeConfiguration: &gamelift.RuntimeConfiguration{ ServerProcesses: []*gamelift.ServerProcess{ { // Required ConcurrentExecutions: aws.Int64(1), // Required LaunchPath: aws.String("NonZeroAndMaxString"), // Required Parameters: aws.String("NonZeroAndMaxString"), }, // More values... }, }, ServerLaunchParameters: aws.String("NonZeroAndMaxString"), ServerLaunchPath: aws.String("NonZeroAndMaxString"), } resp, err := svc.CreateFleet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_CreateGameSession() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.CreateGameSessionInput{ MaximumPlayerSessionCount: aws.Int64(1), // Required AliasId: aws.String("AliasId"), CreatorId: aws.String("NonZeroAndMaxString"), FleetId: aws.String("FleetId"), GameProperties: []*gamelift.GameProperty{ { // Required Key: aws.String("GamePropertyKey"), // Required Value: aws.String("GamePropertyValue"), // Required }, // More values... }, GameSessionId: aws.String("IdStringModel"), Name: aws.String("NonZeroAndMaxString"), } resp, err := svc.CreateGameSession(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_CreatePlayerSession() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.CreatePlayerSessionInput{ GameSessionId: aws.String("ArnStringModel"), // Required PlayerId: aws.String("NonZeroAndMaxString"), // Required } resp, err := svc.CreatePlayerSession(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_CreatePlayerSessions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.CreatePlayerSessionsInput{ GameSessionId: aws.String("ArnStringModel"), // Required PlayerIds: []*string{ // Required aws.String("NonZeroAndMaxString"), // Required // More values... }, } resp, err := svc.CreatePlayerSessions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_DeleteAlias() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.DeleteAliasInput{ AliasId: aws.String("AliasId"), // Required } resp, err := svc.DeleteAlias(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_DeleteBuild() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.DeleteBuildInput{ BuildId: aws.String("BuildId"), // Required } resp, err := svc.DeleteBuild(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_DeleteFleet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.DeleteFleetInput{ FleetId: aws.String("FleetId"), // Required } resp, err := svc.DeleteFleet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_DeleteScalingPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.DeleteScalingPolicyInput{ FleetId: aws.String("FleetId"), // Required Name: aws.String("NonZeroAndMaxString"), // Required } resp, err := svc.DeleteScalingPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_DescribeAlias() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.DescribeAliasInput{ AliasId: aws.String("AliasId"), // Required } resp, err := svc.DescribeAlias(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_DescribeBuild() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.DescribeBuildInput{ BuildId: aws.String("BuildId"), // Required } resp, err := svc.DescribeBuild(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_DescribeEC2InstanceLimits() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.DescribeEC2InstanceLimitsInput{ EC2InstanceType: aws.String("EC2InstanceType"), } resp, err := svc.DescribeEC2InstanceLimits(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_DescribeFleetAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.DescribeFleetAttributesInput{ FleetIds: []*string{ aws.String("FleetId"), // Required // More values... }, Limit: aws.Int64(1), NextToken: aws.String("NonZeroAndMaxString"), } resp, err := svc.DescribeFleetAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_DescribeFleetCapacity() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.DescribeFleetCapacityInput{ FleetIds: []*string{ aws.String("FleetId"), // Required // More values... }, Limit: aws.Int64(1), NextToken: aws.String("NonZeroAndMaxString"), } resp, err := svc.DescribeFleetCapacity(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_DescribeFleetEvents() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.DescribeFleetEventsInput{ FleetId: aws.String("FleetId"), // Required EndTime: aws.Time(time.Now()), Limit: aws.Int64(1), NextToken: aws.String("NonZeroAndMaxString"), StartTime: aws.Time(time.Now()), } resp, err := svc.DescribeFleetEvents(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_DescribeFleetPortSettings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.DescribeFleetPortSettingsInput{ FleetId: aws.String("FleetId"), // Required } resp, err := svc.DescribeFleetPortSettings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_DescribeFleetUtilization() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.DescribeFleetUtilizationInput{ FleetIds: []*string{ aws.String("FleetId"), // Required // More values... }, Limit: aws.Int64(1), NextToken: aws.String("NonZeroAndMaxString"), } resp, err := svc.DescribeFleetUtilization(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_DescribeGameSessionDetails() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.DescribeGameSessionDetailsInput{ AliasId: aws.String("AliasId"), FleetId: aws.String("FleetId"), GameSessionId: aws.String("ArnStringModel"), Limit: aws.Int64(1), NextToken: aws.String("NonZeroAndMaxString"), StatusFilter: aws.String("NonZeroAndMaxString"), } resp, err := svc.DescribeGameSessionDetails(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_DescribeGameSessions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.DescribeGameSessionsInput{ AliasId: aws.String("AliasId"), FleetId: aws.String("FleetId"), GameSessionId: aws.String("ArnStringModel"), Limit: aws.Int64(1), NextToken: aws.String("NonZeroAndMaxString"), StatusFilter: aws.String("NonZeroAndMaxString"), } resp, err := svc.DescribeGameSessions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_DescribeInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.DescribeInstancesInput{ FleetId: aws.String("FleetId"), // Required InstanceId: aws.String("InstanceId"), Limit: aws.Int64(1), NextToken: aws.String("NonZeroAndMaxString"), } resp, err := svc.DescribeInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_DescribePlayerSessions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.DescribePlayerSessionsInput{ GameSessionId: aws.String("ArnStringModel"), Limit: aws.Int64(1), NextToken: aws.String("NonZeroAndMaxString"), PlayerId: aws.String("NonZeroAndMaxString"), PlayerSessionId: aws.String("PlayerSessionId"), PlayerSessionStatusFilter: aws.String("NonZeroAndMaxString"), } resp, err := svc.DescribePlayerSessions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_DescribeRuntimeConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.DescribeRuntimeConfigurationInput{ FleetId: aws.String("FleetId"), // Required } resp, err := svc.DescribeRuntimeConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_DescribeScalingPolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.DescribeScalingPoliciesInput{ FleetId: aws.String("FleetId"), // Required Limit: aws.Int64(1), NextToken: aws.String("NonZeroAndMaxString"), StatusFilter: aws.String("ScalingStatusType"), } resp, err := svc.DescribeScalingPolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_GetGameSessionLogUrl() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.GetGameSessionLogUrlInput{ GameSessionId: aws.String("ArnStringModel"), // Required } resp, err := svc.GetGameSessionLogUrl(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_ListAliases() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.ListAliasesInput{ Limit: aws.Int64(1), Name: aws.String("NonEmptyString"), NextToken: aws.String("NonEmptyString"), RoutingStrategyType: aws.String("RoutingStrategyType"), } resp, err := svc.ListAliases(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_ListBuilds() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.ListBuildsInput{ Limit: aws.Int64(1), NextToken: aws.String("NonEmptyString"), Status: aws.String("BuildStatus"), } resp, err := svc.ListBuilds(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_ListFleets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.ListFleetsInput{ BuildId: aws.String("BuildId"), Limit: aws.Int64(1), NextToken: aws.String("NonZeroAndMaxString"), } resp, err := svc.ListFleets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_PutScalingPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.PutScalingPolicyInput{ ComparisonOperator: aws.String("ComparisonOperatorType"), // Required EvaluationPeriods: aws.Int64(1), // Required FleetId: aws.String("FleetId"), // Required MetricName: aws.String("MetricName"), // Required Name: aws.String("NonZeroAndMaxString"), // Required ScalingAdjustment: aws.Int64(1), // Required ScalingAdjustmentType: aws.String("ScalingAdjustmentType"), // Required Threshold: aws.Float64(1.0), // Required } resp, err := svc.PutScalingPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_RequestUploadCredentials() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.RequestUploadCredentialsInput{ BuildId: aws.String("BuildId"), // Required } resp, err := svc.RequestUploadCredentials(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_ResolveAlias() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.ResolveAliasInput{ AliasId: aws.String("AliasId"), // Required } resp, err := svc.ResolveAlias(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_SearchGameSessions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.SearchGameSessionsInput{ AliasId: aws.String("AliasId"), FilterExpression: aws.String("NonZeroAndMaxString"), FleetId: aws.String("FleetId"), Limit: aws.Int64(1), NextToken: aws.String("NonZeroAndMaxString"), SortExpression: aws.String("NonZeroAndMaxString"), } resp, err := svc.SearchGameSessions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_UpdateAlias() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.UpdateAliasInput{ AliasId: aws.String("AliasId"), // Required Description: aws.String("NonZeroAndMaxString"), Name: aws.String("NonBlankAndLengthConstraintString"), RoutingStrategy: &gamelift.RoutingStrategy{ FleetId: aws.String("FleetId"), Message: aws.String("FreeText"), Type: aws.String("RoutingStrategyType"), }, } resp, err := svc.UpdateAlias(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_UpdateBuild() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.UpdateBuildInput{ BuildId: aws.String("BuildId"), // Required Name: aws.String("NonZeroAndMaxString"), Version: aws.String("NonZeroAndMaxString"), } resp, err := svc.UpdateBuild(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_UpdateFleetAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.UpdateFleetAttributesInput{ FleetId: aws.String("FleetId"), // Required Description: aws.String("NonZeroAndMaxString"), Name: aws.String("NonZeroAndMaxString"), NewGameSessionProtectionPolicy: aws.String("ProtectionPolicy"), ResourceCreationLimitPolicy: &gamelift.ResourceCreationLimitPolicy{ NewGameSessionsPerCreator: aws.Int64(1), PolicyPeriodInMinutes: aws.Int64(1), }, } resp, err := svc.UpdateFleetAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_UpdateFleetCapacity() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.UpdateFleetCapacityInput{ FleetId: aws.String("FleetId"), // Required DesiredInstances: aws.Int64(1), MaxSize: aws.Int64(1), MinSize: aws.Int64(1), } resp, err := svc.UpdateFleetCapacity(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_UpdateFleetPortSettings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.UpdateFleetPortSettingsInput{ FleetId: aws.String("FleetId"), // Required InboundPermissionAuthorizations: []*gamelift.IpPermission{ { // Required FromPort: aws.Int64(1), // Required IpRange: aws.String("NonBlankString"), // Required Protocol: aws.String("IpProtocol"), // Required ToPort: aws.Int64(1), // Required }, // More values... }, InboundPermissionRevocations: []*gamelift.IpPermission{ { // Required FromPort: aws.Int64(1), // Required IpRange: aws.String("NonBlankString"), // Required Protocol: aws.String("IpProtocol"), // Required ToPort: aws.Int64(1), // Required }, // More values... }, } resp, err := svc.UpdateFleetPortSettings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_UpdateGameSession() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.UpdateGameSessionInput{ GameSessionId: aws.String("ArnStringModel"), // Required MaximumPlayerSessionCount: aws.Int64(1), Name: aws.String("NonZeroAndMaxString"), PlayerSessionCreationPolicy: aws.String("PlayerSessionCreationPolicy"), ProtectionPolicy: aws.String("ProtectionPolicy"), } resp, err := svc.UpdateGameSession(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGameLift_UpdateRuntimeConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := gamelift.New(sess) params := &gamelift.UpdateRuntimeConfigurationInput{ FleetId: aws.String("FleetId"), // Required RuntimeConfiguration: &gamelift.RuntimeConfiguration{ // Required ServerProcesses: []*gamelift.ServerProcess{ { // Required ConcurrentExecutions: aws.Int64(1), // Required LaunchPath: aws.String("NonZeroAndMaxString"), // Required Parameters: aws.String("NonZeroAndMaxString"), }, // More values... }, }, } resp, err := svc.UpdateRuntimeConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/gamelift/gameliftiface/000077500000000000000000000000001300374646400215735ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/gamelift/gameliftiface/interface.go000066400000000000000000000245421300374646400240710ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package gameliftiface provides an interface to enable mocking the Amazon GameLift service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package gameliftiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/gamelift" ) // GameLiftAPI provides an interface to enable mocking the // gamelift.GameLift service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon GameLift. // func myFunc(svc gameliftiface.GameLiftAPI) bool { // // Make svc.CreateAlias request // } // // func main() { // sess := session.New() // svc := gamelift.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockGameLiftClient struct { // gameliftiface.GameLiftAPI // } // func (m *mockGameLiftClient) CreateAlias(input *gamelift.CreateAliasInput) (*gamelift.CreateAliasOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockGameLiftClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type GameLiftAPI interface { CreateAliasRequest(*gamelift.CreateAliasInput) (*request.Request, *gamelift.CreateAliasOutput) CreateAlias(*gamelift.CreateAliasInput) (*gamelift.CreateAliasOutput, error) CreateBuildRequest(*gamelift.CreateBuildInput) (*request.Request, *gamelift.CreateBuildOutput) CreateBuild(*gamelift.CreateBuildInput) (*gamelift.CreateBuildOutput, error) CreateFleetRequest(*gamelift.CreateFleetInput) (*request.Request, *gamelift.CreateFleetOutput) CreateFleet(*gamelift.CreateFleetInput) (*gamelift.CreateFleetOutput, error) CreateGameSessionRequest(*gamelift.CreateGameSessionInput) (*request.Request, *gamelift.CreateGameSessionOutput) CreateGameSession(*gamelift.CreateGameSessionInput) (*gamelift.CreateGameSessionOutput, error) CreatePlayerSessionRequest(*gamelift.CreatePlayerSessionInput) (*request.Request, *gamelift.CreatePlayerSessionOutput) CreatePlayerSession(*gamelift.CreatePlayerSessionInput) (*gamelift.CreatePlayerSessionOutput, error) CreatePlayerSessionsRequest(*gamelift.CreatePlayerSessionsInput) (*request.Request, *gamelift.CreatePlayerSessionsOutput) CreatePlayerSessions(*gamelift.CreatePlayerSessionsInput) (*gamelift.CreatePlayerSessionsOutput, error) DeleteAliasRequest(*gamelift.DeleteAliasInput) (*request.Request, *gamelift.DeleteAliasOutput) DeleteAlias(*gamelift.DeleteAliasInput) (*gamelift.DeleteAliasOutput, error) DeleteBuildRequest(*gamelift.DeleteBuildInput) (*request.Request, *gamelift.DeleteBuildOutput) DeleteBuild(*gamelift.DeleteBuildInput) (*gamelift.DeleteBuildOutput, error) DeleteFleetRequest(*gamelift.DeleteFleetInput) (*request.Request, *gamelift.DeleteFleetOutput) DeleteFleet(*gamelift.DeleteFleetInput) (*gamelift.DeleteFleetOutput, error) DeleteScalingPolicyRequest(*gamelift.DeleteScalingPolicyInput) (*request.Request, *gamelift.DeleteScalingPolicyOutput) DeleteScalingPolicy(*gamelift.DeleteScalingPolicyInput) (*gamelift.DeleteScalingPolicyOutput, error) DescribeAliasRequest(*gamelift.DescribeAliasInput) (*request.Request, *gamelift.DescribeAliasOutput) DescribeAlias(*gamelift.DescribeAliasInput) (*gamelift.DescribeAliasOutput, error) DescribeBuildRequest(*gamelift.DescribeBuildInput) (*request.Request, *gamelift.DescribeBuildOutput) DescribeBuild(*gamelift.DescribeBuildInput) (*gamelift.DescribeBuildOutput, error) DescribeEC2InstanceLimitsRequest(*gamelift.DescribeEC2InstanceLimitsInput) (*request.Request, *gamelift.DescribeEC2InstanceLimitsOutput) DescribeEC2InstanceLimits(*gamelift.DescribeEC2InstanceLimitsInput) (*gamelift.DescribeEC2InstanceLimitsOutput, error) DescribeFleetAttributesRequest(*gamelift.DescribeFleetAttributesInput) (*request.Request, *gamelift.DescribeFleetAttributesOutput) DescribeFleetAttributes(*gamelift.DescribeFleetAttributesInput) (*gamelift.DescribeFleetAttributesOutput, error) DescribeFleetCapacityRequest(*gamelift.DescribeFleetCapacityInput) (*request.Request, *gamelift.DescribeFleetCapacityOutput) DescribeFleetCapacity(*gamelift.DescribeFleetCapacityInput) (*gamelift.DescribeFleetCapacityOutput, error) DescribeFleetEventsRequest(*gamelift.DescribeFleetEventsInput) (*request.Request, *gamelift.DescribeFleetEventsOutput) DescribeFleetEvents(*gamelift.DescribeFleetEventsInput) (*gamelift.DescribeFleetEventsOutput, error) DescribeFleetPortSettingsRequest(*gamelift.DescribeFleetPortSettingsInput) (*request.Request, *gamelift.DescribeFleetPortSettingsOutput) DescribeFleetPortSettings(*gamelift.DescribeFleetPortSettingsInput) (*gamelift.DescribeFleetPortSettingsOutput, error) DescribeFleetUtilizationRequest(*gamelift.DescribeFleetUtilizationInput) (*request.Request, *gamelift.DescribeFleetUtilizationOutput) DescribeFleetUtilization(*gamelift.DescribeFleetUtilizationInput) (*gamelift.DescribeFleetUtilizationOutput, error) DescribeGameSessionDetailsRequest(*gamelift.DescribeGameSessionDetailsInput) (*request.Request, *gamelift.DescribeGameSessionDetailsOutput) DescribeGameSessionDetails(*gamelift.DescribeGameSessionDetailsInput) (*gamelift.DescribeGameSessionDetailsOutput, error) DescribeGameSessionsRequest(*gamelift.DescribeGameSessionsInput) (*request.Request, *gamelift.DescribeGameSessionsOutput) DescribeGameSessions(*gamelift.DescribeGameSessionsInput) (*gamelift.DescribeGameSessionsOutput, error) DescribeInstancesRequest(*gamelift.DescribeInstancesInput) (*request.Request, *gamelift.DescribeInstancesOutput) DescribeInstances(*gamelift.DescribeInstancesInput) (*gamelift.DescribeInstancesOutput, error) DescribePlayerSessionsRequest(*gamelift.DescribePlayerSessionsInput) (*request.Request, *gamelift.DescribePlayerSessionsOutput) DescribePlayerSessions(*gamelift.DescribePlayerSessionsInput) (*gamelift.DescribePlayerSessionsOutput, error) DescribeRuntimeConfigurationRequest(*gamelift.DescribeRuntimeConfigurationInput) (*request.Request, *gamelift.DescribeRuntimeConfigurationOutput) DescribeRuntimeConfiguration(*gamelift.DescribeRuntimeConfigurationInput) (*gamelift.DescribeRuntimeConfigurationOutput, error) DescribeScalingPoliciesRequest(*gamelift.DescribeScalingPoliciesInput) (*request.Request, *gamelift.DescribeScalingPoliciesOutput) DescribeScalingPolicies(*gamelift.DescribeScalingPoliciesInput) (*gamelift.DescribeScalingPoliciesOutput, error) GetGameSessionLogUrlRequest(*gamelift.GetGameSessionLogUrlInput) (*request.Request, *gamelift.GetGameSessionLogUrlOutput) GetGameSessionLogUrl(*gamelift.GetGameSessionLogUrlInput) (*gamelift.GetGameSessionLogUrlOutput, error) ListAliasesRequest(*gamelift.ListAliasesInput) (*request.Request, *gamelift.ListAliasesOutput) ListAliases(*gamelift.ListAliasesInput) (*gamelift.ListAliasesOutput, error) ListBuildsRequest(*gamelift.ListBuildsInput) (*request.Request, *gamelift.ListBuildsOutput) ListBuilds(*gamelift.ListBuildsInput) (*gamelift.ListBuildsOutput, error) ListFleetsRequest(*gamelift.ListFleetsInput) (*request.Request, *gamelift.ListFleetsOutput) ListFleets(*gamelift.ListFleetsInput) (*gamelift.ListFleetsOutput, error) PutScalingPolicyRequest(*gamelift.PutScalingPolicyInput) (*request.Request, *gamelift.PutScalingPolicyOutput) PutScalingPolicy(*gamelift.PutScalingPolicyInput) (*gamelift.PutScalingPolicyOutput, error) RequestUploadCredentialsRequest(*gamelift.RequestUploadCredentialsInput) (*request.Request, *gamelift.RequestUploadCredentialsOutput) RequestUploadCredentials(*gamelift.RequestUploadCredentialsInput) (*gamelift.RequestUploadCredentialsOutput, error) ResolveAliasRequest(*gamelift.ResolveAliasInput) (*request.Request, *gamelift.ResolveAliasOutput) ResolveAlias(*gamelift.ResolveAliasInput) (*gamelift.ResolveAliasOutput, error) SearchGameSessionsRequest(*gamelift.SearchGameSessionsInput) (*request.Request, *gamelift.SearchGameSessionsOutput) SearchGameSessions(*gamelift.SearchGameSessionsInput) (*gamelift.SearchGameSessionsOutput, error) UpdateAliasRequest(*gamelift.UpdateAliasInput) (*request.Request, *gamelift.UpdateAliasOutput) UpdateAlias(*gamelift.UpdateAliasInput) (*gamelift.UpdateAliasOutput, error) UpdateBuildRequest(*gamelift.UpdateBuildInput) (*request.Request, *gamelift.UpdateBuildOutput) UpdateBuild(*gamelift.UpdateBuildInput) (*gamelift.UpdateBuildOutput, error) UpdateFleetAttributesRequest(*gamelift.UpdateFleetAttributesInput) (*request.Request, *gamelift.UpdateFleetAttributesOutput) UpdateFleetAttributes(*gamelift.UpdateFleetAttributesInput) (*gamelift.UpdateFleetAttributesOutput, error) UpdateFleetCapacityRequest(*gamelift.UpdateFleetCapacityInput) (*request.Request, *gamelift.UpdateFleetCapacityOutput) UpdateFleetCapacity(*gamelift.UpdateFleetCapacityInput) (*gamelift.UpdateFleetCapacityOutput, error) UpdateFleetPortSettingsRequest(*gamelift.UpdateFleetPortSettingsInput) (*request.Request, *gamelift.UpdateFleetPortSettingsOutput) UpdateFleetPortSettings(*gamelift.UpdateFleetPortSettingsInput) (*gamelift.UpdateFleetPortSettingsOutput, error) UpdateGameSessionRequest(*gamelift.UpdateGameSessionInput) (*request.Request, *gamelift.UpdateGameSessionOutput) UpdateGameSession(*gamelift.UpdateGameSessionInput) (*gamelift.UpdateGameSessionOutput, error) UpdateRuntimeConfigurationRequest(*gamelift.UpdateRuntimeConfigurationInput) (*request.Request, *gamelift.UpdateRuntimeConfigurationOutput) UpdateRuntimeConfiguration(*gamelift.UpdateRuntimeConfigurationInput) (*gamelift.UpdateRuntimeConfigurationOutput, error) } var _ GameLiftAPI = (*gamelift.GameLift)(nil) aws-sdk-go-1.4.22/service/gamelift/service.go000066400000000000000000000136711300374646400210120ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package gamelift import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Welcome to the Amazon GameLift API Reference. Amazon GameLift is a managed // Amazon Web Services (AWS) service for developers who need a scalable, server-based // solution for multiplayer games. Amazon GameLift provides setup and deployment // of game servers, and handles infrastructure scaling and session management. // // This reference describes the low-level service API for GameLift. You can // call this API directly or use the AWS SDK (http://aws.amazon.com/tools/#sdk) // for your preferred language. The AWS SDK includes a set of high-level GameLift // actions multiplayer game sessions. Alternatively, you can use the AWS command-line // interface (http://aws.amazon.com/cli/) (CLI) tool, which includes commands // for GameLift. For administrative actions, you can also use the Amazon GameLift // console. // // More Resources // // * Amazon GameLift Developer Guide (http://docs.aws.amazon.com/gamelift/latest/developerguide/): // Learn more about GameLift features and how to use them // // * Lumberyard and GameLift Tutorials (https://gamedev.amazon.com/forums/tutorials): // Get started fast with walkthroughs and sample projects // // * GameDev Blog (http://aws.amazon.com/blogs/gamedev/): Stay up to date // with new features and techniques // // * GameDev Forums (https://gamedev.amazon.com/forums/spaces/123/gamelift-discussion.html): // Connect with the GameDev community // // Manage Games and Players Through GameLift // // Call these actions from your game clients and/or services to create and manage // multiplayer game sessions and player sessions. // // * Game sessions: // // CreateGameSession // // DescribeGameSessions // // DescribeGameSessionDetails // // UpdateGameSession // // SearchGameSessions // // * Player sessions: // // CreatePlayerSession // // CreatePlayerSessions // // DescribePlayerSessions // // * Other actions: // // GetGameSessionLogUrl // // Set Up and Manage Game Servers // // Use these administrative actions to configure GameLift to host your game // servers. When setting up GameLift, you will need to (1) configure a build // for your game and upload build files, and (2) set up one or more fleets to // host game sessions. Once you've created and activated a fleet, you can assign // aliases to it, scale capacity, track performance and utilization, etc. // // * Game builds: // // ListBuilds // // CreateBuild // // DescribeBuild // // UpdateBuild // // DeleteBuild // // RequestUploadCredentials // // * Fleets: // // ListFleets // // CreateFleet // // Describe fleets: // // DescribeFleetAttributes // // DescribeFleetCapacity // // DescribeFleetPortSettings // // DescribeFleetUtilization // // DescribeEC2InstanceLimits // // DescribeFleetEvents // // DescribeRuntimeConfiguration // // Update fleets: // // UpdateFleetAttributes // // UpdateFleetCapacity // // UpdateFleetPortSettings // // UpdateRuntimeConfiguration // // DeleteFleet // // * Manage fleet aliases: // // ListAliases // // CreateAlias // // DescribeAlias // // UpdateAlias // // DeleteAlias // // ResolveAlias // // * Manage autoscaling: // // PutScalingPolicy // // DescribeScalingPolicies // // DeleteScalingPolicy // // To view changes to the API, see the GameLift Document History (http://docs.aws.amazon.com/gamelift/latest/developerguide/doc-history.html) // page. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type GameLift struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "gamelift" // New creates a new instance of the GameLift client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a GameLift client from just a session. // svc := gamelift.New(mySession) // // // Create a GameLift client with additional configuration // svc := gamelift.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *GameLift { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *GameLift { svc := &GameLift{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-10-01", JSONVersion: "1.1", TargetPrefix: "GameLift", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a GameLift operation and runs any // custom request initialization. func (c *GameLift) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/generate.go000066400000000000000000000003561300374646400173500ustar00rootroot00000000000000// Package service contains automatically generated AWS clients. package service //go:generate go run -tags codegen ../private/model/cli/gen-api/main.go -path=../service ../models/apis/*/*/api-2.json //go:generate gofmt -s -w ../service aws-sdk-go-1.4.22/service/glacier/000077500000000000000000000000001300374646400166315ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/glacier/api.go000066400000000000000000006635741300374646400177560ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package glacier provides a client for Amazon Glacier. package glacier import ( "io" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) const opAbortMultipartUpload = "AbortMultipartUpload" // AbortMultipartUploadRequest generates a "aws/request.Request" representing the // client's request for the AbortMultipartUpload operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AbortMultipartUpload for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AbortMultipartUpload method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AbortMultipartUploadRequest method. // req, resp := client.AbortMultipartUploadRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) AbortMultipartUploadRequest(input *AbortMultipartUploadInput) (req *request.Request, output *AbortMultipartUploadOutput) { op := &request.Operation{ Name: opAbortMultipartUpload, HTTPMethod: "DELETE", HTTPPath: "/{accountId}/vaults/{vaultName}/multipart-uploads/{uploadId}", } if input == nil { input = &AbortMultipartUploadInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AbortMultipartUploadOutput{} req.Data = output return } // AbortMultipartUpload API operation for Amazon Glacier. // // This operation aborts a multipart upload identified by the upload ID. // // After the Abort Multipart Upload request succeeds, you cannot upload any // more parts to the multipart upload or complete the multipart upload. Aborting // a completed upload fails. However, aborting an already-aborted upload will // succeed, for a short time. For more information about uploading a part and // completing a multipart upload, see UploadMultipartPart and CompleteMultipartUpload. // // This operation is idempotent. // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // For conceptual information and underlying REST API, go to Working with Archives // in Amazon Glacier (http://docs.aws.amazon.com/amazonglacier/latest/dev/working-with-archives.html) // and Abort Multipart Upload (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-multipart-abort-upload.html) // in the Amazon Glacier Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation AbortMultipartUpload for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) AbortMultipartUpload(input *AbortMultipartUploadInput) (*AbortMultipartUploadOutput, error) { req, out := c.AbortMultipartUploadRequest(input) err := req.Send() return out, err } const opAbortVaultLock = "AbortVaultLock" // AbortVaultLockRequest generates a "aws/request.Request" representing the // client's request for the AbortVaultLock operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AbortVaultLock for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AbortVaultLock method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AbortVaultLockRequest method. // req, resp := client.AbortVaultLockRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) AbortVaultLockRequest(input *AbortVaultLockInput) (req *request.Request, output *AbortVaultLockOutput) { op := &request.Operation{ Name: opAbortVaultLock, HTTPMethod: "DELETE", HTTPPath: "/{accountId}/vaults/{vaultName}/lock-policy", } if input == nil { input = &AbortVaultLockInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AbortVaultLockOutput{} req.Data = output return } // AbortVaultLock API operation for Amazon Glacier. // // This operation aborts the vault locking process if the vault lock is not // in the Locked state. If the vault lock is in the Locked state when this operation // is requested, the operation returns an AccessDeniedException error. Aborting // the vault locking process removes the vault lock policy from the specified // vault. // // A vault lock is put into the InProgress state by calling InitiateVaultLock. // A vault lock is put into the Locked state by calling CompleteVaultLock. You // can get the state of a vault lock by calling GetVaultLock. For more information // about the vault locking process, see Amazon Glacier Vault Lock (http://docs.aws.amazon.com/amazonglacier/latest/dev/vault-lock.html). // For more information about vault lock policies, see Amazon Glacier Access // Control with Vault Lock Policies (http://docs.aws.amazon.com/amazonglacier/latest/dev/vault-lock-policy.html). // // This operation is idempotent. You can successfully invoke this operation // multiple times, if the vault lock is in the InProgress state or if there // is no policy associated with the vault. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation AbortVaultLock for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) AbortVaultLock(input *AbortVaultLockInput) (*AbortVaultLockOutput, error) { req, out := c.AbortVaultLockRequest(input) err := req.Send() return out, err } const opAddTagsToVault = "AddTagsToVault" // AddTagsToVaultRequest generates a "aws/request.Request" representing the // client's request for the AddTagsToVault operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddTagsToVault for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddTagsToVault method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddTagsToVaultRequest method. // req, resp := client.AddTagsToVaultRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) AddTagsToVaultRequest(input *AddTagsToVaultInput) (req *request.Request, output *AddTagsToVaultOutput) { op := &request.Operation{ Name: opAddTagsToVault, HTTPMethod: "POST", HTTPPath: "/{accountId}/vaults/{vaultName}/tags?operation=add", } if input == nil { input = &AddTagsToVaultInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AddTagsToVaultOutput{} req.Data = output return } // AddTagsToVault API operation for Amazon Glacier. // // This operation adds the specified tags to a vault. Each tag is composed of // a key and a value. Each vault can have up to 10 tags. If your request would // cause the tag limit for the vault to be exceeded, the operation throws the // LimitExceededException error. If a tag already exists on the vault under // a specified key, the existing key value will be overwritten. For more information // about tags, see Tagging Amazon Glacier Resources (http://docs.aws.amazon.com/amazonglacier/latest/dev/tagging.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation AddTagsToVault for usage and error information. // // Returned Error Codes: // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * LimitExceededException // Returned if the request results in a vault or account limit being exceeded. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) AddTagsToVault(input *AddTagsToVaultInput) (*AddTagsToVaultOutput, error) { req, out := c.AddTagsToVaultRequest(input) err := req.Send() return out, err } const opCompleteMultipartUpload = "CompleteMultipartUpload" // CompleteMultipartUploadRequest generates a "aws/request.Request" representing the // client's request for the CompleteMultipartUpload operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CompleteMultipartUpload for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CompleteMultipartUpload method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CompleteMultipartUploadRequest method. // req, resp := client.CompleteMultipartUploadRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) CompleteMultipartUploadRequest(input *CompleteMultipartUploadInput) (req *request.Request, output *ArchiveCreationOutput) { op := &request.Operation{ Name: opCompleteMultipartUpload, HTTPMethod: "POST", HTTPPath: "/{accountId}/vaults/{vaultName}/multipart-uploads/{uploadId}", } if input == nil { input = &CompleteMultipartUploadInput{} } req = c.newRequest(op, input, output) output = &ArchiveCreationOutput{} req.Data = output return } // CompleteMultipartUpload API operation for Amazon Glacier. // // You call this operation to inform Amazon Glacier that all the archive parts // have been uploaded and that Amazon Glacier can now assemble the archive from // the uploaded parts. After assembling and saving the archive to the vault, // Amazon Glacier returns the URI path of the newly created archive resource. // Using the URI path, you can then access the archive. After you upload an // archive, you should save the archive ID returned to retrieve the archive // at a later point. You can also get the vault inventory to obtain a list of // archive IDs in a vault. For more information, see InitiateJob. // // In the request, you must include the computed SHA256 tree hash of the entire // archive you have uploaded. For information about computing a SHA256 tree // hash, see Computing Checksums (http://docs.aws.amazon.com/amazonglacier/latest/dev/checksum-calculations.html). // On the server side, Amazon Glacier also constructs the SHA256 tree hash of // the assembled archive. If the values match, Amazon Glacier saves the archive // to the vault; otherwise, it returns an error, and the operation fails. The // ListParts operation returns a list of parts uploaded for a specific multipart // upload. It includes checksum information for each uploaded part that can // be used to debug a bad checksum issue. // // Additionally, Amazon Glacier also checks for any missing content ranges when // assembling the archive, if missing content ranges are found, Amazon Glacier // returns an error and the operation fails. // // Complete Multipart Upload is an idempotent operation. After your first successful // complete multipart upload, if you call the operation again within a short // period, the operation will succeed and return the same archive ID. This is // useful in the event you experience a network issue that causes an aborted // connection or receive a 500 server error, in which case you can repeat your // Complete Multipart Upload request and get the same archive ID without creating // duplicate archives. Note, however, that after the multipart upload completes, // you cannot call the List Parts operation and the multipart upload will not // appear in List Multipart Uploads response, even if idempotent complete is // possible. // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // For conceptual information and underlying REST API, go to Uploading Large // Archives in Parts (Multipart Upload) (http://docs.aws.amazon.com/amazonglacier/latest/dev/uploading-archive-mpu.html) // and Complete Multipart Upload (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-multipart-complete-upload.html) // in the Amazon Glacier Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation CompleteMultipartUpload for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) CompleteMultipartUpload(input *CompleteMultipartUploadInput) (*ArchiveCreationOutput, error) { req, out := c.CompleteMultipartUploadRequest(input) err := req.Send() return out, err } const opCompleteVaultLock = "CompleteVaultLock" // CompleteVaultLockRequest generates a "aws/request.Request" representing the // client's request for the CompleteVaultLock operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CompleteVaultLock for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CompleteVaultLock method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CompleteVaultLockRequest method. // req, resp := client.CompleteVaultLockRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) CompleteVaultLockRequest(input *CompleteVaultLockInput) (req *request.Request, output *CompleteVaultLockOutput) { op := &request.Operation{ Name: opCompleteVaultLock, HTTPMethod: "POST", HTTPPath: "/{accountId}/vaults/{vaultName}/lock-policy/{lockId}", } if input == nil { input = &CompleteVaultLockInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CompleteVaultLockOutput{} req.Data = output return } // CompleteVaultLock API operation for Amazon Glacier. // // This operation completes the vault locking process by transitioning the vault // lock from the InProgress state to the Locked state, which causes the vault // lock policy to become unchangeable. A vault lock is put into the InProgress // state by calling InitiateVaultLock. You can obtain the state of the vault // lock by calling GetVaultLock. For more information about the vault locking // process, Amazon Glacier Vault Lock (http://docs.aws.amazon.com/amazonglacier/latest/dev/vault-lock.html). // // This operation is idempotent. This request is always successful if the vault // lock is in the Locked state and the provided lock ID matches the lock ID // originally used to lock the vault. // // If an invalid lock ID is passed in the request when the vault lock is in // the Locked state, the operation returns an AccessDeniedException error. If // an invalid lock ID is passed in the request when the vault lock is in the // InProgress state, the operation throws an InvalidParameter error. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation CompleteVaultLock for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) CompleteVaultLock(input *CompleteVaultLockInput) (*CompleteVaultLockOutput, error) { req, out := c.CompleteVaultLockRequest(input) err := req.Send() return out, err } const opCreateVault = "CreateVault" // CreateVaultRequest generates a "aws/request.Request" representing the // client's request for the CreateVault operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateVault for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateVault method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateVaultRequest method. // req, resp := client.CreateVaultRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) CreateVaultRequest(input *CreateVaultInput) (req *request.Request, output *CreateVaultOutput) { op := &request.Operation{ Name: opCreateVault, HTTPMethod: "PUT", HTTPPath: "/{accountId}/vaults/{vaultName}", } if input == nil { input = &CreateVaultInput{} } req = c.newRequest(op, input, output) output = &CreateVaultOutput{} req.Data = output return } // CreateVault API operation for Amazon Glacier. // // This operation creates a new vault with the specified name. The name of the // vault must be unique within a region for an AWS account. You can create up // to 1,000 vaults per account. If you need to create more vaults, contact Amazon // Glacier. // // You must use the following guidelines when naming a vault. // // Names can be between 1 and 255 characters long. // // Allowed characters are a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), and // '.' (period). // // This operation is idempotent. // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // For conceptual information and underlying REST API, go to Creating a Vault // in Amazon Glacier (http://docs.aws.amazon.com/amazonglacier/latest/dev/creating-vaults.html) // and Create Vault (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-vault-put.html) // in the Amazon Glacier Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation CreateVault for usage and error information. // // Returned Error Codes: // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // // * LimitExceededException // Returned if the request results in a vault or account limit being exceeded. // func (c *Glacier) CreateVault(input *CreateVaultInput) (*CreateVaultOutput, error) { req, out := c.CreateVaultRequest(input) err := req.Send() return out, err } const opDeleteArchive = "DeleteArchive" // DeleteArchiveRequest generates a "aws/request.Request" representing the // client's request for the DeleteArchive operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteArchive for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteArchive method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteArchiveRequest method. // req, resp := client.DeleteArchiveRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) DeleteArchiveRequest(input *DeleteArchiveInput) (req *request.Request, output *DeleteArchiveOutput) { op := &request.Operation{ Name: opDeleteArchive, HTTPMethod: "DELETE", HTTPPath: "/{accountId}/vaults/{vaultName}/archives/{archiveId}", } if input == nil { input = &DeleteArchiveInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteArchiveOutput{} req.Data = output return } // DeleteArchive API operation for Amazon Glacier. // // This operation deletes an archive from a vault. Subsequent requests to initiate // a retrieval of this archive will fail. Archive retrievals that are in progress // for this archive ID may or may not succeed according to the following scenarios: // // * If the archive retrieval job is actively preparing the data for download // when Amazon Glacier receives the delete archive request, the archival // retrieval operation might fail. // * If the archive retrieval job has successfully prepared the archive for // download when Amazon Glacier receives the delete archive request, you // will be able to download the output. // This operation is idempotent. Attempting to delete an already-deleted archive // does not result in an error. // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // For conceptual information and underlying REST API, go to Deleting an Archive // in Amazon Glacier (http://docs.aws.amazon.com/amazonglacier/latest/dev/deleting-an-archive.html) // and Delete Archive (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-archive-delete.html) // in the Amazon Glacier Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation DeleteArchive for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) DeleteArchive(input *DeleteArchiveInput) (*DeleteArchiveOutput, error) { req, out := c.DeleteArchiveRequest(input) err := req.Send() return out, err } const opDeleteVault = "DeleteVault" // DeleteVaultRequest generates a "aws/request.Request" representing the // client's request for the DeleteVault operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteVault for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteVault method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteVaultRequest method. // req, resp := client.DeleteVaultRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) DeleteVaultRequest(input *DeleteVaultInput) (req *request.Request, output *DeleteVaultOutput) { op := &request.Operation{ Name: opDeleteVault, HTTPMethod: "DELETE", HTTPPath: "/{accountId}/vaults/{vaultName}", } if input == nil { input = &DeleteVaultInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteVaultOutput{} req.Data = output return } // DeleteVault API operation for Amazon Glacier. // // This operation deletes a vault. Amazon Glacier will delete a vault only if // there are no archives in the vault as of the last inventory and there have // been no writes to the vault since the last inventory. If either of these // conditions is not satisfied, the vault deletion fails (that is, the vault // is not removed) and Amazon Glacier returns an error. You can use DescribeVault // to return the number of archives in a vault, and you can use Initiate a Job // (POST jobs) (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-initiate-job-post.html) // to initiate a new inventory retrieval for a vault. The inventory contains // the archive IDs you use to delete archives using Delete Archive (DELETE archive) // (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-archive-delete.html). // // This operation is idempotent. // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // For conceptual information and underlying REST API, go to Deleting a Vault // in Amazon Glacier (http://docs.aws.amazon.com/amazonglacier/latest/dev/deleting-vaults.html) // and Delete Vault (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-vault-delete.html) // in the Amazon Glacier Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation DeleteVault for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) DeleteVault(input *DeleteVaultInput) (*DeleteVaultOutput, error) { req, out := c.DeleteVaultRequest(input) err := req.Send() return out, err } const opDeleteVaultAccessPolicy = "DeleteVaultAccessPolicy" // DeleteVaultAccessPolicyRequest generates a "aws/request.Request" representing the // client's request for the DeleteVaultAccessPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteVaultAccessPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteVaultAccessPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteVaultAccessPolicyRequest method. // req, resp := client.DeleteVaultAccessPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) DeleteVaultAccessPolicyRequest(input *DeleteVaultAccessPolicyInput) (req *request.Request, output *DeleteVaultAccessPolicyOutput) { op := &request.Operation{ Name: opDeleteVaultAccessPolicy, HTTPMethod: "DELETE", HTTPPath: "/{accountId}/vaults/{vaultName}/access-policy", } if input == nil { input = &DeleteVaultAccessPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteVaultAccessPolicyOutput{} req.Data = output return } // DeleteVaultAccessPolicy API operation for Amazon Glacier. // // This operation deletes the access policy associated with the specified vault. // The operation is eventually consistent; that is, it might take some time // for Amazon Glacier to completely remove the access policy, and you might // still see the effect of the policy for a short time after you send the delete // request. // // This operation is idempotent. You can invoke delete multiple times, even // if there is no policy associated with the vault. For more information about // vault access policies, see Amazon Glacier Access Control with Vault Access // Policies (http://docs.aws.amazon.com/amazonglacier/latest/dev/vault-access-policy.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation DeleteVaultAccessPolicy for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) DeleteVaultAccessPolicy(input *DeleteVaultAccessPolicyInput) (*DeleteVaultAccessPolicyOutput, error) { req, out := c.DeleteVaultAccessPolicyRequest(input) err := req.Send() return out, err } const opDeleteVaultNotifications = "DeleteVaultNotifications" // DeleteVaultNotificationsRequest generates a "aws/request.Request" representing the // client's request for the DeleteVaultNotifications operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteVaultNotifications for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteVaultNotifications method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteVaultNotificationsRequest method. // req, resp := client.DeleteVaultNotificationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) DeleteVaultNotificationsRequest(input *DeleteVaultNotificationsInput) (req *request.Request, output *DeleteVaultNotificationsOutput) { op := &request.Operation{ Name: opDeleteVaultNotifications, HTTPMethod: "DELETE", HTTPPath: "/{accountId}/vaults/{vaultName}/notification-configuration", } if input == nil { input = &DeleteVaultNotificationsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteVaultNotificationsOutput{} req.Data = output return } // DeleteVaultNotifications API operation for Amazon Glacier. // // This operation deletes the notification configuration set for a vault. The // operation is eventually consistent; that is, it might take some time for // Amazon Glacier to completely disable the notifications and you might still // receive some notifications for a short time after you send the delete request. // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/latest/dev/using-iam-with-amazon-glacier.html). // // For conceptual information and underlying REST API, go to Configuring Vault // Notifications in Amazon Glacier (http://docs.aws.amazon.com/amazonglacier/latest/dev/configuring-notifications.html) // and Delete Vault Notification Configuration (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-vault-notifications-delete.html) // in the Amazon Glacier Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation DeleteVaultNotifications for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) DeleteVaultNotifications(input *DeleteVaultNotificationsInput) (*DeleteVaultNotificationsOutput, error) { req, out := c.DeleteVaultNotificationsRequest(input) err := req.Send() return out, err } const opDescribeJob = "DescribeJob" // DescribeJobRequest generates a "aws/request.Request" representing the // client's request for the DescribeJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeJobRequest method. // req, resp := client.DescribeJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) DescribeJobRequest(input *DescribeJobInput) (req *request.Request, output *JobDescription) { op := &request.Operation{ Name: opDescribeJob, HTTPMethod: "GET", HTTPPath: "/{accountId}/vaults/{vaultName}/jobs/{jobId}", } if input == nil { input = &DescribeJobInput{} } req = c.newRequest(op, input, output) output = &JobDescription{} req.Data = output return } // DescribeJob API operation for Amazon Glacier. // // This operation returns information about a job you previously initiated, // including the job initiation date, the user who initiated the job, the job // status code/message and the Amazon SNS topic to notify after Amazon Glacier // completes the job. For more information about initiating a job, see InitiateJob. // // This operation enables you to check the status of your job. However, it is // strongly recommended that you set up an Amazon SNS topic and specify it in // your initiate job request so that Amazon Glacier can notify the topic after // it completes the job. // // A job ID will not expire for at least 24 hours after Amazon Glacier completes // the job. // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // For information about the underlying REST API, go to Working with Archives // in Amazon Glacier (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-describe-job-get.html) // in the Amazon Glacier Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation DescribeJob for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) DescribeJob(input *DescribeJobInput) (*JobDescription, error) { req, out := c.DescribeJobRequest(input) err := req.Send() return out, err } const opDescribeVault = "DescribeVault" // DescribeVaultRequest generates a "aws/request.Request" representing the // client's request for the DescribeVault operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeVault for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeVault method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeVaultRequest method. // req, resp := client.DescribeVaultRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) DescribeVaultRequest(input *DescribeVaultInput) (req *request.Request, output *DescribeVaultOutput) { op := &request.Operation{ Name: opDescribeVault, HTTPMethod: "GET", HTTPPath: "/{accountId}/vaults/{vaultName}", } if input == nil { input = &DescribeVaultInput{} } req = c.newRequest(op, input, output) output = &DescribeVaultOutput{} req.Data = output return } // DescribeVault API operation for Amazon Glacier. // // This operation returns information about a vault, including the vault's Amazon // Resource Name (ARN), the date the vault was created, the number of archives // it contains, and the total size of all the archives in the vault. The number // of archives and their total size are as of the last inventory generation. // This means that if you add or remove an archive from a vault, and then immediately // use Describe Vault, the change in contents will not be immediately reflected. // If you want to retrieve the latest inventory of the vault, use InitiateJob. // Amazon Glacier generates vault inventories approximately daily. For more // information, see Downloading a Vault Inventory in Amazon Glacier (http://docs.aws.amazon.com/amazonglacier/latest/dev/vault-inventory.html). // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // For conceptual information and underlying REST API, go to Retrieving Vault // Metadata in Amazon Glacier (http://docs.aws.amazon.com/amazonglacier/latest/dev/retrieving-vault-info.html) // and Describe Vault (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-vault-get.html) // in the Amazon Glacier Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation DescribeVault for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) DescribeVault(input *DescribeVaultInput) (*DescribeVaultOutput, error) { req, out := c.DescribeVaultRequest(input) err := req.Send() return out, err } const opGetDataRetrievalPolicy = "GetDataRetrievalPolicy" // GetDataRetrievalPolicyRequest generates a "aws/request.Request" representing the // client's request for the GetDataRetrievalPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDataRetrievalPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDataRetrievalPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDataRetrievalPolicyRequest method. // req, resp := client.GetDataRetrievalPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) GetDataRetrievalPolicyRequest(input *GetDataRetrievalPolicyInput) (req *request.Request, output *GetDataRetrievalPolicyOutput) { op := &request.Operation{ Name: opGetDataRetrievalPolicy, HTTPMethod: "GET", HTTPPath: "/{accountId}/policies/data-retrieval", } if input == nil { input = &GetDataRetrievalPolicyInput{} } req = c.newRequest(op, input, output) output = &GetDataRetrievalPolicyOutput{} req.Data = output return } // GetDataRetrievalPolicy API operation for Amazon Glacier. // // This operation returns the current data retrieval policy for the account // and region specified in the GET request. For more information about data // retrieval policies, see Amazon Glacier Data Retrieval Policies (http://docs.aws.amazon.com/amazonglacier/latest/dev/data-retrieval-policy.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation GetDataRetrievalPolicy for usage and error information. // // Returned Error Codes: // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) GetDataRetrievalPolicy(input *GetDataRetrievalPolicyInput) (*GetDataRetrievalPolicyOutput, error) { req, out := c.GetDataRetrievalPolicyRequest(input) err := req.Send() return out, err } const opGetJobOutput = "GetJobOutput" // GetJobOutputRequest generates a "aws/request.Request" representing the // client's request for the GetJobOutput operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetJobOutput for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetJobOutput method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetJobOutputRequest method. // req, resp := client.GetJobOutputRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) GetJobOutputRequest(input *GetJobOutputInput) (req *request.Request, output *GetJobOutputOutput) { op := &request.Operation{ Name: opGetJobOutput, HTTPMethod: "GET", HTTPPath: "/{accountId}/vaults/{vaultName}/jobs/{jobId}/output", } if input == nil { input = &GetJobOutputInput{} } req = c.newRequest(op, input, output) output = &GetJobOutputOutput{} req.Data = output return } // GetJobOutput API operation for Amazon Glacier. // // This operation downloads the output of the job you initiated using InitiateJob. // Depending on the job type you specified when you initiated the job, the output // will be either the content of an archive or a vault inventory. // // A job ID will not expire for at least 24 hours after Amazon Glacier completes // the job. That is, you can download the job output within the 24 hours period // after Amazon Glacier completes the job. // // If the job output is large, then you can use the Range request header to // retrieve a portion of the output. This allows you to download the entire // output in smaller chunks of bytes. For example, suppose you have 1 GB of // job output you want to download and you decide to download 128 MB chunks // of data at a time, which is a total of eight Get Job Output requests. You // use the following process to download the job output: // // Download a 128 MB chunk of output by specifying the appropriate byte range // using the Range header. // // Along with the data, the response includes a SHA256 tree hash of the payload. // You compute the checksum of the payload on the client and compare it with // the checksum you received in the response to ensure you received all the // expected data. // // Repeat steps 1 and 2 for all the eight 128 MB chunks of output data, each // time specifying the appropriate byte range. // // After downloading all the parts of the job output, you have a list of eight // checksum values. Compute the tree hash of these values to find the checksum // of the entire output. Using the DescribeJob API, obtain job information of // the job that provided you the output. The response includes the checksum // of the entire archive stored in Amazon Glacier. You compare this value with // the checksum you computed to ensure you have downloaded the entire archive // content with no errors. // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // For conceptual information and the underlying REST API, go to Downloading // a Vault Inventory (http://docs.aws.amazon.com/amazonglacier/latest/dev/vault-inventory.html), // Downloading an Archive (http://docs.aws.amazon.com/amazonglacier/latest/dev/downloading-an-archive.html), // and Get Job Output (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-job-output-get.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation GetJobOutput for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) GetJobOutput(input *GetJobOutputInput) (*GetJobOutputOutput, error) { req, out := c.GetJobOutputRequest(input) err := req.Send() return out, err } const opGetVaultAccessPolicy = "GetVaultAccessPolicy" // GetVaultAccessPolicyRequest generates a "aws/request.Request" representing the // client's request for the GetVaultAccessPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetVaultAccessPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetVaultAccessPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetVaultAccessPolicyRequest method. // req, resp := client.GetVaultAccessPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) GetVaultAccessPolicyRequest(input *GetVaultAccessPolicyInput) (req *request.Request, output *GetVaultAccessPolicyOutput) { op := &request.Operation{ Name: opGetVaultAccessPolicy, HTTPMethod: "GET", HTTPPath: "/{accountId}/vaults/{vaultName}/access-policy", } if input == nil { input = &GetVaultAccessPolicyInput{} } req = c.newRequest(op, input, output) output = &GetVaultAccessPolicyOutput{} req.Data = output return } // GetVaultAccessPolicy API operation for Amazon Glacier. // // This operation retrieves the access-policy subresource set on the vault; // for more information on setting this subresource, see Set Vault Access Policy // (PUT access-policy) (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-SetVaultAccessPolicy.html). // If there is no access policy set on the vault, the operation returns a 404 // Not found error. For more information about vault access policies, see Amazon // Glacier Access Control with Vault Access Policies (http://docs.aws.amazon.com/amazonglacier/latest/dev/vault-access-policy.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation GetVaultAccessPolicy for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) GetVaultAccessPolicy(input *GetVaultAccessPolicyInput) (*GetVaultAccessPolicyOutput, error) { req, out := c.GetVaultAccessPolicyRequest(input) err := req.Send() return out, err } const opGetVaultLock = "GetVaultLock" // GetVaultLockRequest generates a "aws/request.Request" representing the // client's request for the GetVaultLock operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetVaultLock for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetVaultLock method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetVaultLockRequest method. // req, resp := client.GetVaultLockRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) GetVaultLockRequest(input *GetVaultLockInput) (req *request.Request, output *GetVaultLockOutput) { op := &request.Operation{ Name: opGetVaultLock, HTTPMethod: "GET", HTTPPath: "/{accountId}/vaults/{vaultName}/lock-policy", } if input == nil { input = &GetVaultLockInput{} } req = c.newRequest(op, input, output) output = &GetVaultLockOutput{} req.Data = output return } // GetVaultLock API operation for Amazon Glacier. // // This operation retrieves the following attributes from the lock-policy subresource // set on the specified vault: The vault lock policy set on the vault. // // The state of the vault lock, which is either InProgess or Locked. // // When the lock ID expires. The lock ID is used to complete the vault locking // process. // // When the vault lock was initiated and put into the InProgress state. // // A vault lock is put into the InProgress state by calling InitiateVaultLock. // A vault lock is put into the Locked state by calling CompleteVaultLock. You // can abort the vault locking process by calling AbortVaultLock. For more information // about the vault locking process, Amazon Glacier Vault Lock (http://docs.aws.amazon.com/amazonglacier/latest/dev/vault-lock.html). // // If there is no vault lock policy set on the vault, the operation returns // a 404 Not found error. For more information about vault lock policies, Amazon // Glacier Access Control with Vault Lock Policies (http://docs.aws.amazon.com/amazonglacier/latest/dev/vault-lock-policy.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation GetVaultLock for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) GetVaultLock(input *GetVaultLockInput) (*GetVaultLockOutput, error) { req, out := c.GetVaultLockRequest(input) err := req.Send() return out, err } const opGetVaultNotifications = "GetVaultNotifications" // GetVaultNotificationsRequest generates a "aws/request.Request" representing the // client's request for the GetVaultNotifications operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetVaultNotifications for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetVaultNotifications method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetVaultNotificationsRequest method. // req, resp := client.GetVaultNotificationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) GetVaultNotificationsRequest(input *GetVaultNotificationsInput) (req *request.Request, output *GetVaultNotificationsOutput) { op := &request.Operation{ Name: opGetVaultNotifications, HTTPMethod: "GET", HTTPPath: "/{accountId}/vaults/{vaultName}/notification-configuration", } if input == nil { input = &GetVaultNotificationsInput{} } req = c.newRequest(op, input, output) output = &GetVaultNotificationsOutput{} req.Data = output return } // GetVaultNotifications API operation for Amazon Glacier. // // This operation retrieves the notification-configuration subresource of the // specified vault. // // For information about setting a notification configuration on a vault, see // SetVaultNotifications. If a notification configuration for a vault is not // set, the operation returns a 404 Not Found error. For more information about // vault notifications, see Configuring Vault Notifications in Amazon Glacier // (http://docs.aws.amazon.com/amazonglacier/latest/dev/configuring-notifications.html). // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // For conceptual information and underlying REST API, go to Configuring Vault // Notifications in Amazon Glacier (http://docs.aws.amazon.com/amazonglacier/latest/dev/configuring-notifications.html) // and Get Vault Notification Configuration (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-vault-notifications-get.html) // in the Amazon Glacier Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation GetVaultNotifications for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) GetVaultNotifications(input *GetVaultNotificationsInput) (*GetVaultNotificationsOutput, error) { req, out := c.GetVaultNotificationsRequest(input) err := req.Send() return out, err } const opInitiateJob = "InitiateJob" // InitiateJobRequest generates a "aws/request.Request" representing the // client's request for the InitiateJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InitiateJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InitiateJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InitiateJobRequest method. // req, resp := client.InitiateJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) InitiateJobRequest(input *InitiateJobInput) (req *request.Request, output *InitiateJobOutput) { op := &request.Operation{ Name: opInitiateJob, HTTPMethod: "POST", HTTPPath: "/{accountId}/vaults/{vaultName}/jobs", } if input == nil { input = &InitiateJobInput{} } req = c.newRequest(op, input, output) output = &InitiateJobOutput{} req.Data = output return } // InitiateJob API operation for Amazon Glacier. // // This operation initiates a job of the specified type. In this release, you // can initiate a job to retrieve either an archive or a vault inventory (a // list of archives in a vault). // // Retrieving data from Amazon Glacier is a two-step process: // // Initiate a retrieval job. // // A data retrieval policy can cause your initiate retrieval job request to // fail with a PolicyEnforcedException exception. For more information about // data retrieval policies, see Amazon Glacier Data Retrieval Policies (http://docs.aws.amazon.com/amazonglacier/latest/dev/data-retrieval-policy.html). // For more information about the PolicyEnforcedException exception, see Error // Responses (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-error-responses.html). // // After the job completes, download the bytes. // // The retrieval request is executed asynchronously. When you initiate a retrieval // job, Amazon Glacier creates a job and returns a job ID in the response. When // Amazon Glacier completes the job, you can get the job output (archive or // inventory data). For information about getting job output, see GetJobOutput // operation. // // The job must complete before you can get its output. To determine when a // job is complete, you have the following options: // // * Use Amazon SNS Notification You can specify an Amazon Simple Notification // Service (Amazon SNS) topic to which Amazon Glacier can post a notification // after the job is completed. You can specify an SNS topic per job request. // The notification is sent only after Amazon Glacier completes the job. // In addition to specifying an SNS topic per job request, you can configure // vault notifications for a vault so that job notifications are always sent. // For more information, see SetVaultNotifications. // // * Get job details You can make a DescribeJob request to obtain job status // information while a job is in progress. However, it is more efficient // to use an Amazon SNS notification to determine when a job is complete. // // The information you get via notification is same that you get by calling // DescribeJob. // // If for a specific event, you add both the notification configuration on the // vault and also specify an SNS topic in your initiate job request, Amazon // Glacier sends both notifications. For more information, see SetVaultNotifications. // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // About the Vault Inventory // // Amazon Glacier prepares an inventory for each vault periodically, every 24 // hours. When you initiate a job for a vault inventory, Amazon Glacier returns // the last inventory for the vault. The inventory data you get might be up // to a day or two days old. Also, the initiate inventory job might take some // time to complete before you can download the vault inventory. So you do not // want to retrieve a vault inventory for each vault operation. However, in // some scenarios, you might find the vault inventory useful. For example, when // you upload an archive, you can provide an archive description but not an // archive name. Amazon Glacier provides you a unique archive ID, an opaque // string of characters. So, you might maintain your own database that maps // archive names to their corresponding Amazon Glacier assigned archive IDs. // You might find the vault inventory useful in the event you need to reconcile // information in your database with the actual vault inventory. // // Range Inventory Retrieval // // You can limit the number of inventory items retrieved by filtering on the // archive creation date or by setting a limit. // // Filtering by Archive Creation Date // // You can retrieve inventory items for archives created between StartDate and // EndDate by specifying values for these parameters in the InitiateJob request. // Archives created on or after the StartDate and before the EndDate will be // returned. If you only provide the StartDate without the EndDate, you will // retrieve the inventory for all archives created on or after the StartDate. // If you only provide the EndDate without the StartDate, you will get back // the inventory for all archives created before the EndDate. // // Limiting Inventory Items per Retrieval // // You can limit the number of inventory items returned by setting the Limit // parameter in the InitiateJob request. The inventory job output will contain // inventory items up to the specified Limit. If there are more inventory items // available, the result is paginated. After a job is complete you can use the // DescribeJob operation to get a marker that you use in a subsequent InitiateJob // request. The marker will indicate the starting point to retrieve the next // set of inventory items. You can page through your entire inventory by repeatedly // making InitiateJob requests with the marker from the previous DescribeJob // output, until you get a marker from DescribeJob that returns null, indicating // that there are no more inventory items available. // // You can use the Limit parameter together with the date range parameters. // // About Ranged Archive Retrieval // // You can initiate an archive retrieval for the whole archive or a range of // the archive. In the case of ranged archive retrieval, you specify a byte // range to return or the whole archive. The range specified must be megabyte // (MB) aligned, that is the range start value must be divisible by 1 MB and // range end value plus 1 must be divisible by 1 MB or equal the end of the // archive. If the ranged archive retrieval is not megabyte aligned, this operation // returns a 400 response. Furthermore, to ensure you get checksum values for // data you download using Get Job Output API, the range must be tree hash aligned. // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // For conceptual information and the underlying REST API, go to Initiate a // Job (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-initiate-job-post.html) // and Downloading a Vault Inventory (http://docs.aws.amazon.com/amazonglacier/latest/dev/vault-inventory.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation InitiateJob for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * PolicyEnforcedException // Returned if a retrieval job would exceed the current data policy's retrieval // rate limit. For more information about data retrieval policies, // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) InitiateJob(input *InitiateJobInput) (*InitiateJobOutput, error) { req, out := c.InitiateJobRequest(input) err := req.Send() return out, err } const opInitiateMultipartUpload = "InitiateMultipartUpload" // InitiateMultipartUploadRequest generates a "aws/request.Request" representing the // client's request for the InitiateMultipartUpload operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InitiateMultipartUpload for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InitiateMultipartUpload method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InitiateMultipartUploadRequest method. // req, resp := client.InitiateMultipartUploadRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) InitiateMultipartUploadRequest(input *InitiateMultipartUploadInput) (req *request.Request, output *InitiateMultipartUploadOutput) { op := &request.Operation{ Name: opInitiateMultipartUpload, HTTPMethod: "POST", HTTPPath: "/{accountId}/vaults/{vaultName}/multipart-uploads", } if input == nil { input = &InitiateMultipartUploadInput{} } req = c.newRequest(op, input, output) output = &InitiateMultipartUploadOutput{} req.Data = output return } // InitiateMultipartUpload API operation for Amazon Glacier. // // This operation initiates a multipart upload. Amazon Glacier creates a multipart // upload resource and returns its ID in the response. The multipart upload // ID is used in subsequent requests to upload parts of an archive (see UploadMultipartPart). // // When you initiate a multipart upload, you specify the part size in number // of bytes. The part size must be a megabyte (1024 KB) multiplied by a power // of 2-for example, 1048576 (1 MB), 2097152 (2 MB), 4194304 (4 MB), 8388608 // (8 MB), and so on. The minimum allowable part size is 1 MB, and the maximum // is 4 GB. // // Every part you upload to this resource (see UploadMultipartPart), except // the last one, must have the same size. The last one can be the same size // or smaller. For example, suppose you want to upload a 16.2 MB file. If you // initiate the multipart upload with a part size of 4 MB, you will upload four // parts of 4 MB each and one part of 0.2 MB. // // You don't need to know the size of the archive when you start a multipart // upload because Amazon Glacier does not require you to specify the overall // archive size. // // After you complete the multipart upload, Amazon Glacier removes the multipart // upload resource referenced by the ID. Amazon Glacier also removes the multipart // upload resource if you cancel the multipart upload or it may be removed if // there is no activity for a period of 24 hours. // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // For conceptual information and underlying REST API, go to Uploading Large // Archives in Parts (Multipart Upload) (http://docs.aws.amazon.com/amazonglacier/latest/dev/uploading-archive-mpu.html) // and Initiate Multipart Upload (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-multipart-initiate-upload.html) // in the Amazon Glacier Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation InitiateMultipartUpload for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) InitiateMultipartUpload(input *InitiateMultipartUploadInput) (*InitiateMultipartUploadOutput, error) { req, out := c.InitiateMultipartUploadRequest(input) err := req.Send() return out, err } const opInitiateVaultLock = "InitiateVaultLock" // InitiateVaultLockRequest generates a "aws/request.Request" representing the // client's request for the InitiateVaultLock operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InitiateVaultLock for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InitiateVaultLock method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InitiateVaultLockRequest method. // req, resp := client.InitiateVaultLockRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) InitiateVaultLockRequest(input *InitiateVaultLockInput) (req *request.Request, output *InitiateVaultLockOutput) { op := &request.Operation{ Name: opInitiateVaultLock, HTTPMethod: "POST", HTTPPath: "/{accountId}/vaults/{vaultName}/lock-policy", } if input == nil { input = &InitiateVaultLockInput{} } req = c.newRequest(op, input, output) output = &InitiateVaultLockOutput{} req.Data = output return } // InitiateVaultLock API operation for Amazon Glacier. // // This operation initiates the vault locking process by doing the following: // Installing a vault lock policy on the specified vault. // // Setting the lock state of vault lock to InProgress. // // Returning a lock ID, which is used to complete the vault locking process. // // You can set one vault lock policy for each vault and this policy can be up // to 20 KB in size. For more information about vault lock policies, see Amazon // Glacier Access Control with Vault Lock Policies (http://docs.aws.amazon.com/amazonglacier/latest/dev/vault-lock-policy.html). // // You must complete the vault locking process within 24 hours after the vault // lock enters the InProgress state. After the 24 hour window ends, the lock // ID expires, the vault automatically exits the InProgress state, and the vault // lock policy is removed from the vault. You call CompleteVaultLock to complete // the vault locking process by setting the state of the vault lock to Locked. // // After a vault lock is in the Locked state, you cannot initiate a new vault // lock for the vault. // // You can abort the vault locking process by calling AbortVaultLock. You can // get the state of the vault lock by calling GetVaultLock. For more information // about the vault locking process, Amazon Glacier Vault Lock (http://docs.aws.amazon.com/amazonglacier/latest/dev/vault-lock.html). // // If this operation is called when the vault lock is in the InProgress state, // the operation returns an AccessDeniedException error. When the vault lock // is in the InProgress state you must call AbortVaultLock before you can initiate // a new vault lock policy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation InitiateVaultLock for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) InitiateVaultLock(input *InitiateVaultLockInput) (*InitiateVaultLockOutput, error) { req, out := c.InitiateVaultLockRequest(input) err := req.Send() return out, err } const opListJobs = "ListJobs" // ListJobsRequest generates a "aws/request.Request" representing the // client's request for the ListJobs operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListJobs for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListJobs method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListJobsRequest method. // req, resp := client.ListJobsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) ListJobsRequest(input *ListJobsInput) (req *request.Request, output *ListJobsOutput) { op := &request.Operation{ Name: opListJobs, HTTPMethod: "GET", HTTPPath: "/{accountId}/vaults/{vaultName}/jobs", Paginator: &request.Paginator{ InputTokens: []string{"marker"}, OutputTokens: []string{"Marker"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &ListJobsInput{} } req = c.newRequest(op, input, output) output = &ListJobsOutput{} req.Data = output return } // ListJobs API operation for Amazon Glacier. // // This operation lists jobs for a vault, including jobs that are in-progress // and jobs that have recently finished. // // Amazon Glacier retains recently completed jobs for a period before deleting // them; however, it eventually removes completed jobs. The output of completed // jobs can be retrieved. Retaining completed jobs for a period of time after // they have completed enables you to get a job output in the event you miss // the job completion notification or your first attempt to download it fails. // For example, suppose you start an archive retrieval job to download an archive. // After the job completes, you start to download the archive but encounter // a network error. In this scenario, you can retry and download the archive // while the job exists. // // To retrieve an archive or retrieve a vault inventory from Amazon Glacier, // you first initiate a job, and after the job completes, you download the data. // For an archive retrieval, the output is the archive data, and for an inventory // retrieval, it is the inventory list. The List Job operation returns a list // of these jobs sorted by job initiation time. // // This List Jobs operation supports pagination. By default, this operation // returns up to 1,000 jobs in the response. You should always check the response // for a marker at which to continue the list; if there are no more items the // marker is null. To return a list of jobs that begins at a specific job, set // the marker request parameter to the value you obtained from a previous List // Jobs request. You can also limit the number of jobs returned in the response // by specifying the limit parameter in the request. // // Additionally, you can filter the jobs list returned by specifying an optional // statuscode (InProgress, Succeeded, or Failed) and completed (true, false) // parameter. The statuscode allows you to specify that only jobs that match // a specified status are returned. The completed parameter allows you to specify // that only jobs in a specific completion state are returned. // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // For the underlying REST API, go to List Jobs (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-jobs-get.html) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation ListJobs for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) ListJobs(input *ListJobsInput) (*ListJobsOutput, error) { req, out := c.ListJobsRequest(input) err := req.Send() return out, err } // ListJobsPages iterates over the pages of a ListJobs operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListJobs method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListJobs operation. // pageNum := 0 // err := client.ListJobsPages(params, // func(page *ListJobsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Glacier) ListJobsPages(input *ListJobsInput, fn func(p *ListJobsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListJobsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListJobsOutput), lastPage) }) } const opListMultipartUploads = "ListMultipartUploads" // ListMultipartUploadsRequest generates a "aws/request.Request" representing the // client's request for the ListMultipartUploads operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListMultipartUploads for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListMultipartUploads method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListMultipartUploadsRequest method. // req, resp := client.ListMultipartUploadsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) ListMultipartUploadsRequest(input *ListMultipartUploadsInput) (req *request.Request, output *ListMultipartUploadsOutput) { op := &request.Operation{ Name: opListMultipartUploads, HTTPMethod: "GET", HTTPPath: "/{accountId}/vaults/{vaultName}/multipart-uploads", Paginator: &request.Paginator{ InputTokens: []string{"marker"}, OutputTokens: []string{"Marker"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &ListMultipartUploadsInput{} } req = c.newRequest(op, input, output) output = &ListMultipartUploadsOutput{} req.Data = output return } // ListMultipartUploads API operation for Amazon Glacier. // // This operation lists in-progress multipart uploads for the specified vault. // An in-progress multipart upload is a multipart upload that has been initiated // by an InitiateMultipartUpload request, but has not yet been completed or // aborted. The list returned in the List Multipart Upload response has no guaranteed // order. // // The List Multipart Uploads operation supports pagination. By default, this // operation returns up to 1,000 multipart uploads in the response. You should // always check the response for a marker at which to continue the list; if // there are no more items the marker is null. To return a list of multipart // uploads that begins at a specific upload, set the marker request parameter // to the value you obtained from a previous List Multipart Upload request. // You can also limit the number of uploads returned in the response by specifying // the limit parameter in the request. // // Note the difference between this operation and listing parts (ListParts). // The List Multipart Uploads operation lists all multipart uploads for a vault // and does not require a multipart upload ID. The List Parts operation requires // a multipart upload ID since parts are associated with a single upload. // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // For conceptual information and the underlying REST API, go to Working with // Archives in Amazon Glacier (http://docs.aws.amazon.com/amazonglacier/latest/dev/working-with-archives.html) // and List Multipart Uploads (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-multipart-list-uploads.html) // in the Amazon Glacier Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation ListMultipartUploads for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) ListMultipartUploads(input *ListMultipartUploadsInput) (*ListMultipartUploadsOutput, error) { req, out := c.ListMultipartUploadsRequest(input) err := req.Send() return out, err } // ListMultipartUploadsPages iterates over the pages of a ListMultipartUploads operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListMultipartUploads method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListMultipartUploads operation. // pageNum := 0 // err := client.ListMultipartUploadsPages(params, // func(page *ListMultipartUploadsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Glacier) ListMultipartUploadsPages(input *ListMultipartUploadsInput, fn func(p *ListMultipartUploadsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListMultipartUploadsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListMultipartUploadsOutput), lastPage) }) } const opListParts = "ListParts" // ListPartsRequest generates a "aws/request.Request" representing the // client's request for the ListParts operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListParts for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListParts method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListPartsRequest method. // req, resp := client.ListPartsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) ListPartsRequest(input *ListPartsInput) (req *request.Request, output *ListPartsOutput) { op := &request.Operation{ Name: opListParts, HTTPMethod: "GET", HTTPPath: "/{accountId}/vaults/{vaultName}/multipart-uploads/{uploadId}", Paginator: &request.Paginator{ InputTokens: []string{"marker"}, OutputTokens: []string{"Marker"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &ListPartsInput{} } req = c.newRequest(op, input, output) output = &ListPartsOutput{} req.Data = output return } // ListParts API operation for Amazon Glacier. // // This operation lists the parts of an archive that have been uploaded in a // specific multipart upload. You can make this request at any time during an // in-progress multipart upload before you complete the upload (see CompleteMultipartUpload. // List Parts returns an error for completed uploads. The list returned in the // List Parts response is sorted by part range. // // The List Parts operation supports pagination. By default, this operation // returns up to 1,000 uploaded parts in the response. You should always check // the response for a marker at which to continue the list; if there are no // more items the marker is null. To return a list of parts that begins at a // specific part, set the marker request parameter to the value you obtained // from a previous List Parts request. You can also limit the number of parts // returned in the response by specifying the limit parameter in the request. // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // For conceptual information and the underlying REST API, go to Working with // Archives in Amazon Glacier (http://docs.aws.amazon.com/amazonglacier/latest/dev/working-with-archives.html) // and List Parts (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-multipart-list-parts.html) // in the Amazon Glacier Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation ListParts for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) ListParts(input *ListPartsInput) (*ListPartsOutput, error) { req, out := c.ListPartsRequest(input) err := req.Send() return out, err } // ListPartsPages iterates over the pages of a ListParts operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListParts method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListParts operation. // pageNum := 0 // err := client.ListPartsPages(params, // func(page *ListPartsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Glacier) ListPartsPages(input *ListPartsInput, fn func(p *ListPartsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListPartsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListPartsOutput), lastPage) }) } const opListTagsForVault = "ListTagsForVault" // ListTagsForVaultRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForVault operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTagsForVault for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTagsForVault method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTagsForVaultRequest method. // req, resp := client.ListTagsForVaultRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) ListTagsForVaultRequest(input *ListTagsForVaultInput) (req *request.Request, output *ListTagsForVaultOutput) { op := &request.Operation{ Name: opListTagsForVault, HTTPMethod: "GET", HTTPPath: "/{accountId}/vaults/{vaultName}/tags", } if input == nil { input = &ListTagsForVaultInput{} } req = c.newRequest(op, input, output) output = &ListTagsForVaultOutput{} req.Data = output return } // ListTagsForVault API operation for Amazon Glacier. // // This operation lists all the tags attached to a vault. The operation returns // an empty map if there are no tags. For more information about tags, see Tagging // Amazon Glacier Resources (http://docs.aws.amazon.com/amazonglacier/latest/dev/tagging.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation ListTagsForVault for usage and error information. // // Returned Error Codes: // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) ListTagsForVault(input *ListTagsForVaultInput) (*ListTagsForVaultOutput, error) { req, out := c.ListTagsForVaultRequest(input) err := req.Send() return out, err } const opListVaults = "ListVaults" // ListVaultsRequest generates a "aws/request.Request" representing the // client's request for the ListVaults operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListVaults for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListVaults method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListVaultsRequest method. // req, resp := client.ListVaultsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) ListVaultsRequest(input *ListVaultsInput) (req *request.Request, output *ListVaultsOutput) { op := &request.Operation{ Name: opListVaults, HTTPMethod: "GET", HTTPPath: "/{accountId}/vaults", Paginator: &request.Paginator{ InputTokens: []string{"marker"}, OutputTokens: []string{"Marker"}, LimitToken: "limit", TruncationToken: "", }, } if input == nil { input = &ListVaultsInput{} } req = c.newRequest(op, input, output) output = &ListVaultsOutput{} req.Data = output return } // ListVaults API operation for Amazon Glacier. // // This operation lists all vaults owned by the calling user's account. The // list returned in the response is ASCII-sorted by vault name. // // By default, this operation returns up to 1,000 items. If there are more vaults // to list, the response marker field contains the vault Amazon Resource Name // (ARN) at which to continue the list with a new List Vaults request; otherwise, // the marker field is null. To return a list of vaults that begins at a specific // vault, set the marker request parameter to the vault ARN you obtained from // a previous List Vaults request. You can also limit the number of vaults returned // in the response by specifying the limit parameter in the request. // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // For conceptual information and underlying REST API, go to Retrieving Vault // Metadata in Amazon Glacier (http://docs.aws.amazon.com/amazonglacier/latest/dev/retrieving-vault-info.html) // and List Vaults (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-vaults-get.html) // in the Amazon Glacier Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation ListVaults for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) ListVaults(input *ListVaultsInput) (*ListVaultsOutput, error) { req, out := c.ListVaultsRequest(input) err := req.Send() return out, err } // ListVaultsPages iterates over the pages of a ListVaults operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListVaults method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListVaults operation. // pageNum := 0 // err := client.ListVaultsPages(params, // func(page *ListVaultsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Glacier) ListVaultsPages(input *ListVaultsInput, fn func(p *ListVaultsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListVaultsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListVaultsOutput), lastPage) }) } const opRemoveTagsFromVault = "RemoveTagsFromVault" // RemoveTagsFromVaultRequest generates a "aws/request.Request" representing the // client's request for the RemoveTagsFromVault operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveTagsFromVault for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveTagsFromVault method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveTagsFromVaultRequest method. // req, resp := client.RemoveTagsFromVaultRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) RemoveTagsFromVaultRequest(input *RemoveTagsFromVaultInput) (req *request.Request, output *RemoveTagsFromVaultOutput) { op := &request.Operation{ Name: opRemoveTagsFromVault, HTTPMethod: "POST", HTTPPath: "/{accountId}/vaults/{vaultName}/tags?operation=remove", } if input == nil { input = &RemoveTagsFromVaultInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RemoveTagsFromVaultOutput{} req.Data = output return } // RemoveTagsFromVault API operation for Amazon Glacier. // // This operation removes one or more tags from the set of tags attached to // a vault. For more information about tags, see Tagging Amazon Glacier Resources // (http://docs.aws.amazon.com/amazonglacier/latest/dev/tagging.html). This // operation is idempotent. The operation will be successful, even if there // are no tags attached to the vault. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation RemoveTagsFromVault for usage and error information. // // Returned Error Codes: // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) RemoveTagsFromVault(input *RemoveTagsFromVaultInput) (*RemoveTagsFromVaultOutput, error) { req, out := c.RemoveTagsFromVaultRequest(input) err := req.Send() return out, err } const opSetDataRetrievalPolicy = "SetDataRetrievalPolicy" // SetDataRetrievalPolicyRequest generates a "aws/request.Request" representing the // client's request for the SetDataRetrievalPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetDataRetrievalPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetDataRetrievalPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetDataRetrievalPolicyRequest method. // req, resp := client.SetDataRetrievalPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) SetDataRetrievalPolicyRequest(input *SetDataRetrievalPolicyInput) (req *request.Request, output *SetDataRetrievalPolicyOutput) { op := &request.Operation{ Name: opSetDataRetrievalPolicy, HTTPMethod: "PUT", HTTPPath: "/{accountId}/policies/data-retrieval", } if input == nil { input = &SetDataRetrievalPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetDataRetrievalPolicyOutput{} req.Data = output return } // SetDataRetrievalPolicy API operation for Amazon Glacier. // // This operation sets and then enacts a data retrieval policy in the region // specified in the PUT request. You can set one policy per region for an AWS // account. The policy is enacted within a few minutes of a successful PUT operation. // // The set policy operation does not affect retrieval jobs that were in progress // before the policy was enacted. For more information about data retrieval // policies, see Amazon Glacier Data Retrieval Policies (http://docs.aws.amazon.com/amazonglacier/latest/dev/data-retrieval-policy.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation SetDataRetrievalPolicy for usage and error information. // // Returned Error Codes: // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) SetDataRetrievalPolicy(input *SetDataRetrievalPolicyInput) (*SetDataRetrievalPolicyOutput, error) { req, out := c.SetDataRetrievalPolicyRequest(input) err := req.Send() return out, err } const opSetVaultAccessPolicy = "SetVaultAccessPolicy" // SetVaultAccessPolicyRequest generates a "aws/request.Request" representing the // client's request for the SetVaultAccessPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetVaultAccessPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetVaultAccessPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetVaultAccessPolicyRequest method. // req, resp := client.SetVaultAccessPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) SetVaultAccessPolicyRequest(input *SetVaultAccessPolicyInput) (req *request.Request, output *SetVaultAccessPolicyOutput) { op := &request.Operation{ Name: opSetVaultAccessPolicy, HTTPMethod: "PUT", HTTPPath: "/{accountId}/vaults/{vaultName}/access-policy", } if input == nil { input = &SetVaultAccessPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetVaultAccessPolicyOutput{} req.Data = output return } // SetVaultAccessPolicy API operation for Amazon Glacier. // // This operation configures an access policy for a vault and will overwrite // an existing policy. To configure a vault access policy, send a PUT request // to the access-policy subresource of the vault. An access policy is specific // to a vault and is also called a vault subresource. You can set one access // policy per vault and the policy can be up to 20 KB in size. For more information // about vault access policies, see Amazon Glacier Access Control with Vault // Access Policies (http://docs.aws.amazon.com/amazonglacier/latest/dev/vault-access-policy.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation SetVaultAccessPolicy for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) SetVaultAccessPolicy(input *SetVaultAccessPolicyInput) (*SetVaultAccessPolicyOutput, error) { req, out := c.SetVaultAccessPolicyRequest(input) err := req.Send() return out, err } const opSetVaultNotifications = "SetVaultNotifications" // SetVaultNotificationsRequest generates a "aws/request.Request" representing the // client's request for the SetVaultNotifications operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetVaultNotifications for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetVaultNotifications method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetVaultNotificationsRequest method. // req, resp := client.SetVaultNotificationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) SetVaultNotificationsRequest(input *SetVaultNotificationsInput) (req *request.Request, output *SetVaultNotificationsOutput) { op := &request.Operation{ Name: opSetVaultNotifications, HTTPMethod: "PUT", HTTPPath: "/{accountId}/vaults/{vaultName}/notification-configuration", } if input == nil { input = &SetVaultNotificationsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetVaultNotificationsOutput{} req.Data = output return } // SetVaultNotifications API operation for Amazon Glacier. // // This operation configures notifications that will be sent when specific events // happen to a vault. By default, you don't get any notifications. // // To configure vault notifications, send a PUT request to the notification-configuration // subresource of the vault. The request should include a JSON document that // provides an Amazon SNS topic and specific events for which you want Amazon // Glacier to send notifications to the topic. // // Amazon SNS topics must grant permission to the vault to be allowed to publish // notifications to the topic. You can configure a vault to publish a notification // for the following vault events: // // * ArchiveRetrievalCompleted This event occurs when a job that was initiated // for an archive retrieval is completed (InitiateJob). The status of the // completed job can be "Succeeded" or "Failed". The notification sent to // the SNS topic is the same output as returned from DescribeJob. // * InventoryRetrievalCompleted This event occurs when a job that was initiated // for an inventory retrieval is completed (InitiateJob). The status of the // completed job can be "Succeeded" or "Failed". The notification sent to // the SNS topic is the same output as returned from DescribeJob. // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // For conceptual information and underlying REST API, go to Configuring Vault // Notifications in Amazon Glacier (http://docs.aws.amazon.com/amazonglacier/latest/dev/configuring-notifications.html) // and Set Vault Notification Configuration (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-vault-notifications-put.html) // in the Amazon Glacier Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation SetVaultNotifications for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) SetVaultNotifications(input *SetVaultNotificationsInput) (*SetVaultNotificationsOutput, error) { req, out := c.SetVaultNotificationsRequest(input) err := req.Send() return out, err } const opUploadArchive = "UploadArchive" // UploadArchiveRequest generates a "aws/request.Request" representing the // client's request for the UploadArchive operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UploadArchive for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UploadArchive method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UploadArchiveRequest method. // req, resp := client.UploadArchiveRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) UploadArchiveRequest(input *UploadArchiveInput) (req *request.Request, output *ArchiveCreationOutput) { op := &request.Operation{ Name: opUploadArchive, HTTPMethod: "POST", HTTPPath: "/{accountId}/vaults/{vaultName}/archives", } if input == nil { input = &UploadArchiveInput{} } req = c.newRequest(op, input, output) output = &ArchiveCreationOutput{} req.Data = output return } // UploadArchive API operation for Amazon Glacier. // // This operation adds an archive to a vault. This is a synchronous operation, // and for a successful upload, your data is durably persisted. Amazon Glacier // returns the archive ID in the x-amz-archive-id header of the response. // // You must use the archive ID to access your data in Amazon Glacier. After // you upload an archive, you should save the archive ID returned so that you // can retrieve or delete the archive later. Besides saving the archive ID, // you can also index it and give it a friendly name to allow for better searching. // You can also use the optional archive description field to specify how the // archive is referred to in an external index of archives, such as you might // create in Amazon DynamoDB. You can also get the vault inventory to obtain // a list of archive IDs in a vault. For more information, see InitiateJob. // // You must provide a SHA256 tree hash of the data you are uploading. For information // about computing a SHA256 tree hash, see Computing Checksums (http://docs.aws.amazon.com/amazonglacier/latest/dev/checksum-calculations.html). // // You can optionally specify an archive description of up to 1,024 printable // ASCII characters. You can get the archive description when you either retrieve // the archive or get the vault inventory. For more information, see InitiateJob. // Amazon Glacier does not interpret the description in any way. An archive // description does not need to be unique. You cannot use the description to // retrieve or sort the archive list. // // Archives are immutable. After you upload an archive, you cannot edit the // archive or its description. // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // For conceptual information and underlying REST API, go to Uploading an Archive // in Amazon Glacier (http://docs.aws.amazon.com/amazonglacier/latest/dev/uploading-an-archive.html) // and Upload Archive (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-archive-post.html) // in the Amazon Glacier Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation UploadArchive for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * RequestTimeoutException // Returned if, when uploading an archive, Amazon Glacier times out while receiving // the upload. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) UploadArchive(input *UploadArchiveInput) (*ArchiveCreationOutput, error) { req, out := c.UploadArchiveRequest(input) err := req.Send() return out, err } const opUploadMultipartPart = "UploadMultipartPart" // UploadMultipartPartRequest generates a "aws/request.Request" representing the // client's request for the UploadMultipartPart operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UploadMultipartPart for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UploadMultipartPart method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UploadMultipartPartRequest method. // req, resp := client.UploadMultipartPartRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Glacier) UploadMultipartPartRequest(input *UploadMultipartPartInput) (req *request.Request, output *UploadMultipartPartOutput) { op := &request.Operation{ Name: opUploadMultipartPart, HTTPMethod: "PUT", HTTPPath: "/{accountId}/vaults/{vaultName}/multipart-uploads/{uploadId}", } if input == nil { input = &UploadMultipartPartInput{} } req = c.newRequest(op, input, output) output = &UploadMultipartPartOutput{} req.Data = output return } // UploadMultipartPart API operation for Amazon Glacier. // // This operation uploads a part of an archive. You can upload archive parts // in any order. You can also upload them in parallel. You can upload up to // 10,000 parts for a multipart upload. // // Amazon Glacier rejects your upload part request if any of the following conditions // is true: // // * SHA256 tree hash does not matchTo ensure that part data is not corrupted // in transmission, you compute a SHA256 tree hash of the part and include // it in your request. Upon receiving the part data, Amazon Glacier also // computes a SHA256 tree hash. If these hash values don't match, the operation // fails. For information about computing a SHA256 tree hash, see Computing // Checksums (http://docs.aws.amazon.com/amazonglacier/latest/dev/checksum-calculations.html). // // * Part size does not matchThe size of each part except the last must match // the size specified in the corresponding InitiateMultipartUpload request. // The size of the last part must be the same size as, or smaller than, the // specified size. // // If you upload a part whose size is smaller than the part size you specified // in your initiate multipart upload request and that part is not the last // part, then the upload part request will succeed. However, the subsequent // Complete Multipart Upload request will fail. // // * Range does not alignThe byte range value in the request does not align // with the part size specified in the corresponding initiate request. For // example, if you specify a part size of 4194304 bytes (4 MB), then 0 to // 4194303 bytes (4 MB - 1) and 4194304 (4 MB) to 8388607 (8 MB - 1) are // valid part ranges. However, if you set a range value of 2 MB to 6 MB, // the range does not align with the part size and the upload will fail. // // This operation is idempotent. If you upload the same part multiple times, // the data included in the most recent request overwrites the previously uploaded // data. // // An AWS account has full permission to perform all operations (actions). However, // AWS Identity and Access Management (IAM) users don't have any permissions // by default. You must grant them explicit permission to perform specific actions. // For more information, see Access Control Using AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/amazonglacier/latest/dev/using-iam-with-amazon-glacier.html). // // For conceptual information and underlying REST API, go to Uploading Large // Archives in Parts (Multipart Upload) (http://docs.aws.amazon.com/amazonglacier/latest/dev/uploading-archive-mpu.html) // and Upload Part (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-upload-part.html) // in the Amazon Glacier Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Glacier's // API operation UploadMultipartPart for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Returned if the specified resource, such as a vault, upload ID, or job ID, // does not exist. // // * InvalidParameterValueException // Returned if a parameter of the request is incorrectly specified. // // * MissingParameterValueException // Returned if a required header or parameter is missing from the request. // // * RequestTimeoutException // Returned if, when uploading an archive, Amazon Glacier times out while receiving // the upload. // // * ServiceUnavailableException // Returned if the service cannot complete the request. // func (c *Glacier) UploadMultipartPart(input *UploadMultipartPartInput) (*UploadMultipartPartOutput, error) { req, out := c.UploadMultipartPartRequest(input) err := req.Send() return out, err } // Provides options to abort a multipart upload identified by the upload ID. // // For information about the underlying REST API, go to Abort Multipart Upload // (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-multipart-abort-upload.html). // For conceptual information, go to Working with Archives in Amazon Glacier // (http://docs.aws.amazon.com/amazonglacier/latest/dev/working-with-archives.html). type AbortMultipartUploadInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The upload ID of the multipart upload to delete. // // UploadId is a required field UploadId *string `location:"uri" locationName:"uploadId" type:"string" required:"true"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s AbortMultipartUploadInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AbortMultipartUploadInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AbortMultipartUploadInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AbortMultipartUploadInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.UploadId == nil { invalidParams.Add(request.NewErrParamRequired("UploadId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AbortMultipartUploadOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AbortMultipartUploadOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AbortMultipartUploadOutput) GoString() string { return s.String() } // The input values for AbortVaultLock. type AbortVaultLockInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID. This value must match the AWS // account ID associated with the credentials used to sign the request. You // can either specify an AWS account ID or optionally a single apos-apos (hyphen), // in which case Amazon Glacier uses the AWS account ID associated with the // credentials used to sign the request. If you specify your account ID, do // not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s AbortVaultLockInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AbortVaultLockInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AbortVaultLockInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AbortVaultLockInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AbortVaultLockOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AbortVaultLockOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AbortVaultLockOutput) GoString() string { return s.String() } // The input values for AddTagsToVault. type AddTagsToVaultInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The tags to add to the vault. Each tag is composed of a key and a value. // The value can be an empty string. Tags map[string]*string `type:"map"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s AddTagsToVaultInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToVaultInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsToVaultInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsToVaultInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddTagsToVaultOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddTagsToVaultOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToVaultOutput) GoString() string { return s.String() } // Contains the Amazon Glacier response to your request. // // For information about the underlying REST API, go to Upload Archive (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-archive-post.html). // For conceptual information, go to Working with Archives in Amazon Glacier // (http://docs.aws.amazon.com/amazonglacier/latest/dev/working-with-archives.html). type ArchiveCreationOutput struct { _ struct{} `type:"structure"` // The ID of the archive. This value is also included as part of the location. ArchiveId *string `location:"header" locationName:"x-amz-archive-id" type:"string"` // The checksum of the archive computed by Amazon Glacier. Checksum *string `location:"header" locationName:"x-amz-sha256-tree-hash" type:"string"` // The relative URI path of the newly added archive resource. Location *string `location:"header" locationName:"Location" type:"string"` } // String returns the string representation func (s ArchiveCreationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ArchiveCreationOutput) GoString() string { return s.String() } // Provides options to complete a multipart upload operation. This informs Amazon // Glacier that all the archive parts have been uploaded and Amazon Glacier // can now assemble the archive from the uploaded parts. After assembling and // saving the archive to the vault, Amazon Glacier returns the URI path of the // newly created archive resource. type CompleteMultipartUploadInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The total size, in bytes, of the entire archive. This value should be the // sum of all the sizes of the individual parts that you uploaded. ArchiveSize *string `location:"header" locationName:"x-amz-archive-size" type:"string"` // The SHA256 tree hash of the entire archive. It is the tree hash of SHA256 // tree hash of the individual parts. If the value you specify in the request // does not match the SHA256 tree hash of the final assembled archive as computed // by Amazon Glacier, Amazon Glacier returns an error and the request fails. Checksum *string `location:"header" locationName:"x-amz-sha256-tree-hash" type:"string"` // The upload ID of the multipart upload. // // UploadId is a required field UploadId *string `location:"uri" locationName:"uploadId" type:"string" required:"true"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s CompleteMultipartUploadInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CompleteMultipartUploadInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CompleteMultipartUploadInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CompleteMultipartUploadInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.UploadId == nil { invalidParams.Add(request.NewErrParamRequired("UploadId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The input values for CompleteVaultLock. type CompleteVaultLockInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID. This value must match the AWS // account ID associated with the credentials used to sign the request. You // can either specify an AWS account ID or optionally a single apos-apos (hyphen), // in which case Amazon Glacier uses the AWS account ID associated with the // credentials used to sign the request. If you specify your account ID, do // not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The lockId value is the lock ID obtained from a InitiateVaultLock request. // // LockId is a required field LockId *string `location:"uri" locationName:"lockId" type:"string" required:"true"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s CompleteVaultLockInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CompleteVaultLockInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CompleteVaultLockInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CompleteVaultLockInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.LockId == nil { invalidParams.Add(request.NewErrParamRequired("LockId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CompleteVaultLockOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CompleteVaultLockOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CompleteVaultLockOutput) GoString() string { return s.String() } // Provides options to create a vault. type CreateVaultInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID. This value must match the AWS // account ID associated with the credentials used to sign the request. You // can either specify an AWS account ID or optionally a single apos-apos (hyphen), // in which case Amazon Glacier uses the AWS account ID associated with the // credentials used to sign the request. If you specify your account ID, do // not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s CreateVaultInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVaultInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateVaultInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateVaultInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the Amazon Glacier response to your request. type CreateVaultOutput struct { _ struct{} `type:"structure"` // The URI of the vault that was created. Location *string `location:"header" locationName:"Location" type:"string"` } // String returns the string representation func (s CreateVaultOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVaultOutput) GoString() string { return s.String() } // Data retrieval policy. type DataRetrievalPolicy struct { _ struct{} `type:"structure"` // The policy rule. Although this is a list type, currently there must be only // one rule, which contains a Strategy field and optionally a BytesPerHour field. Rules []*DataRetrievalRule `type:"list"` } // String returns the string representation func (s DataRetrievalPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DataRetrievalPolicy) GoString() string { return s.String() } // Data retrieval policy rule. type DataRetrievalRule struct { _ struct{} `type:"structure"` // The maximum number of bytes that can be retrieved in an hour. // // This field is required only if the value of the Strategy field is BytesPerHour. // Your PUT operation will be rejected if the Strategy field is not set to BytesPerHour // and you set this field. BytesPerHour *int64 `type:"long"` // The type of data retrieval policy to set. // // Valid values: BytesPerHour|FreeTier|None Strategy *string `type:"string"` } // String returns the string representation func (s DataRetrievalRule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DataRetrievalRule) GoString() string { return s.String() } // Provides options for deleting an archive from an Amazon Glacier vault. type DeleteArchiveInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The ID of the archive to delete. // // ArchiveId is a required field ArchiveId *string `location:"uri" locationName:"archiveId" type:"string" required:"true"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s DeleteArchiveInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteArchiveInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteArchiveInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteArchiveInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.ArchiveId == nil { invalidParams.Add(request.NewErrParamRequired("ArchiveId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteArchiveOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteArchiveOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteArchiveOutput) GoString() string { return s.String() } // DeleteVaultAccessPolicy input. type DeleteVaultAccessPolicyInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s DeleteVaultAccessPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVaultAccessPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteVaultAccessPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteVaultAccessPolicyInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteVaultAccessPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteVaultAccessPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVaultAccessPolicyOutput) GoString() string { return s.String() } // Provides options for deleting a vault from Amazon Glacier. type DeleteVaultInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s DeleteVaultInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVaultInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteVaultInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteVaultInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides options for deleting a vault notification configuration from an // Amazon Glacier vault. type DeleteVaultNotificationsInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s DeleteVaultNotificationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVaultNotificationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteVaultNotificationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteVaultNotificationsInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteVaultNotificationsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteVaultNotificationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVaultNotificationsOutput) GoString() string { return s.String() } type DeleteVaultOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteVaultOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVaultOutput) GoString() string { return s.String() } // Provides options for retrieving a job description. type DescribeJobInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The ID of the job to describe. // // JobId is a required field JobId *string `location:"uri" locationName:"jobId" type:"string" required:"true"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s DescribeJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeJobInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides options for retrieving metadata for a specific vault in Amazon Glacier. type DescribeVaultInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s DescribeVaultInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVaultInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeVaultInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeVaultInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the Amazon Glacier response to your request. type DescribeVaultOutput struct { _ struct{} `type:"structure"` // The UTC date when the vault was created. A string representation of ISO 8601 // date format, for example, "2012-03-20T17:03:43.221Z". CreationDate *string `type:"string"` // The UTC date when Amazon Glacier completed the last vault inventory. A string // representation of ISO 8601 date format, for example, "2012-03-20T17:03:43.221Z". LastInventoryDate *string `type:"string"` // The number of archives in the vault as of the last inventory date. This field // will return null if an inventory has not yet run on the vault, for example, // if you just created the vault. NumberOfArchives *int64 `type:"long"` // Total size, in bytes, of the archives in the vault as of the last inventory // date. This field will return null if an inventory has not yet run on the // vault, for example, if you just created the vault. SizeInBytes *int64 `type:"long"` // The Amazon Resource Name (ARN) of the vault. VaultARN *string `type:"string"` // The name of the vault. VaultName *string `type:"string"` } // String returns the string representation func (s DescribeVaultOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVaultOutput) GoString() string { return s.String() } // Input for GetDataRetrievalPolicy. type GetDataRetrievalPolicyInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID. This value must match the AWS // account ID associated with the credentials used to sign the request. You // can either specify an AWS account ID or optionally a single apos-apos (hyphen), // in which case Amazon Glacier uses the AWS account ID associated with the // credentials used to sign the request. If you specify your account ID, do // not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` } // String returns the string representation func (s GetDataRetrievalPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDataRetrievalPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDataRetrievalPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDataRetrievalPolicyInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the Amazon Glacier response to the GetDataRetrievalPolicy request. type GetDataRetrievalPolicyOutput struct { _ struct{} `type:"structure"` // Contains the returned data retrieval policy in JSON format. Policy *DataRetrievalPolicy `type:"structure"` } // String returns the string representation func (s GetDataRetrievalPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDataRetrievalPolicyOutput) GoString() string { return s.String() } // Provides options for downloading output of an Amazon Glacier job. type GetJobOutputInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The job ID whose data is downloaded. // // JobId is a required field JobId *string `location:"uri" locationName:"jobId" type:"string" required:"true"` // The range of bytes to retrieve from the output. For example, if you want // to download the first 1,048,576 bytes, specify "Range: bytes=0-1048575". // By default, this operation downloads the entire output. Range *string `location:"header" locationName:"Range" type:"string"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s GetJobOutputInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetJobOutputInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetJobOutputInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetJobOutputInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the Amazon Glacier response to your request. type GetJobOutputOutput struct { _ struct{} `type:"structure" payload:"Body"` // Indicates the range units accepted. For more information, go to RFC2616 (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html). AcceptRanges *string `location:"header" locationName:"Accept-Ranges" type:"string"` // The description of an archive. ArchiveDescription *string `location:"header" locationName:"x-amz-archive-description" type:"string"` // The job data, either archive data or inventory data. Body io.ReadCloser `locationName:"body" type:"blob"` // The checksum of the data in the response. This header is returned only when // retrieving the output for an archive retrieval job. Furthermore, this header // appears only under the following conditions: You get the entire range of // the archive. // You request a range to return of the archive that starts and ends on a multiple // of 1 MB. For example, if you have an 3.1 MB archive and you specify a range // to return that starts at 1 MB and ends at 2 MB, then the x-amz-sha256-tree-hash // is returned as a response header. // You request a range of the archive to return that starts on a multiple of // 1 MB and goes to the end of the archive. For example, if you have a 3.1 MB // archive and you specify a range that starts at 2 MB and ends at 3.1 MB (the // end of the archive), then the x-amz-sha256-tree-hash is returned as a response // header. Checksum *string `location:"header" locationName:"x-amz-sha256-tree-hash" type:"string"` // The range of bytes returned by Amazon Glacier. If only partial output is // downloaded, the response provides the range of bytes Amazon Glacier returned. // For example, bytes 0-1048575/8388608 returns the first 1 MB from 8 MB. ContentRange *string `location:"header" locationName:"Content-Range" type:"string"` // The Content-Type depends on whether the job output is an archive or a vault // inventory. For archive data, the Content-Type is application/octet-stream. // For vault inventory, if you requested CSV format when you initiated the job, // the Content-Type is text/csv. Otherwise, by default, vault inventory is returned // as JSON, and the Content-Type is application/json. ContentType *string `location:"header" locationName:"Content-Type" type:"string"` // The HTTP response code for a job output request. The value depends on whether // a range was specified in the request. Status *int64 `location:"statusCode" locationName:"status" type:"integer"` } // String returns the string representation func (s GetJobOutputOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetJobOutputOutput) GoString() string { return s.String() } // Input for GetVaultAccessPolicy. type GetVaultAccessPolicyInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s GetVaultAccessPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetVaultAccessPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetVaultAccessPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetVaultAccessPolicyInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Output for GetVaultAccessPolicy. type GetVaultAccessPolicyOutput struct { _ struct{} `type:"structure" payload:"Policy"` // Contains the returned vault access policy as a JSON string. Policy *VaultAccessPolicy `locationName:"policy" type:"structure"` } // String returns the string representation func (s GetVaultAccessPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetVaultAccessPolicyOutput) GoString() string { return s.String() } // The input values for GetVaultLock. type GetVaultLockInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s GetVaultLockInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetVaultLockInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetVaultLockInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetVaultLockInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the Amazon Glacier response to your request. type GetVaultLockOutput struct { _ struct{} `type:"structure"` // The UTC date and time at which the vault lock was put into the InProgress // state. CreationDate *string `type:"string"` // The UTC date and time at which the lock ID expires. This value can be null // if the vault lock is in a Locked state. ExpirationDate *string `type:"string"` // The vault lock policy as a JSON string, which uses "\" as an escape character. Policy *string `type:"string"` // The state of the vault lock. InProgress or Locked. State *string `type:"string"` } // String returns the string representation func (s GetVaultLockOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetVaultLockOutput) GoString() string { return s.String() } // Provides options for retrieving the notification configuration set on an // Amazon Glacier vault. type GetVaultNotificationsInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s GetVaultNotificationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetVaultNotificationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetVaultNotificationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetVaultNotificationsInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the Amazon Glacier response to your request. type GetVaultNotificationsOutput struct { _ struct{} `type:"structure" payload:"VaultNotificationConfig"` // Returns the notification configuration set on the vault. VaultNotificationConfig *VaultNotificationConfig `locationName:"vaultNotificationConfig" type:"structure"` } // String returns the string representation func (s GetVaultNotificationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetVaultNotificationsOutput) GoString() string { return s.String() } // Provides options for initiating an Amazon Glacier job. type InitiateJobInput struct { _ struct{} `type:"structure" payload:"JobParameters"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // Provides options for specifying job information. JobParameters *JobParameters `locationName:"jobParameters" type:"structure"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s InitiateJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InitiateJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InitiateJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InitiateJobInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the Amazon Glacier response to your request. type InitiateJobOutput struct { _ struct{} `type:"structure"` // The ID of the job. JobId *string `location:"header" locationName:"x-amz-job-id" type:"string"` // The relative URI path of the job. Location *string `location:"header" locationName:"Location" type:"string"` } // String returns the string representation func (s InitiateJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InitiateJobOutput) GoString() string { return s.String() } // Provides options for initiating a multipart upload to an Amazon Glacier vault. type InitiateMultipartUploadInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The archive description that you are uploading in parts. // // The part size must be a megabyte (1024 KB) multiplied by a power of 2, for // example 1048576 (1 MB), 2097152 (2 MB), 4194304 (4 MB), 8388608 (8 MB), and // so on. The minimum allowable part size is 1 MB, and the maximum is 4 GB (4096 // MB). ArchiveDescription *string `location:"header" locationName:"x-amz-archive-description" type:"string"` // The size of each part except the last, in bytes. The last part can be smaller // than this part size. PartSize *string `location:"header" locationName:"x-amz-part-size" type:"string"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s InitiateMultipartUploadInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InitiateMultipartUploadInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InitiateMultipartUploadInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InitiateMultipartUploadInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The Amazon Glacier response to your request. type InitiateMultipartUploadOutput struct { _ struct{} `type:"structure"` // The relative URI path of the multipart upload ID Amazon Glacier created. Location *string `location:"header" locationName:"Location" type:"string"` // The ID of the multipart upload. This value is also included as part of the // location. UploadId *string `location:"header" locationName:"x-amz-multipart-upload-id" type:"string"` } // String returns the string representation func (s InitiateMultipartUploadOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InitiateMultipartUploadOutput) GoString() string { return s.String() } // The input values for InitiateVaultLock. type InitiateVaultLockInput struct { _ struct{} `type:"structure" payload:"Policy"` // The AccountId value is the AWS account ID. This value must match the AWS // account ID associated with the credentials used to sign the request. You // can either specify an AWS account ID or optionally a single apos-apos (hyphen), // in which case Amazon Glacier uses the AWS account ID associated with the // credentials used to sign the request. If you specify your account ID, do // not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The vault lock policy as a JSON string, which uses "\" as an escape character. Policy *VaultLockPolicy `locationName:"policy" type:"structure"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s InitiateVaultLockInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InitiateVaultLockInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InitiateVaultLockInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InitiateVaultLockInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the Amazon Glacier response to your request. type InitiateVaultLockOutput struct { _ struct{} `type:"structure"` // The lock ID, which is used to complete the vault locking process. LockId *string `location:"header" locationName:"x-amz-lock-id" type:"string"` } // String returns the string representation func (s InitiateVaultLockOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InitiateVaultLockOutput) GoString() string { return s.String() } // Describes the options for a range inventory retrieval job. type InventoryRetrievalJobDescription struct { _ struct{} `type:"structure"` // The end of the date range in UTC for vault inventory retrieval that includes // archives created before this date. A string representation of ISO 8601 date // format, for example, 2013-03-20T17:03:43Z. EndDate *string `type:"string"` // The output format for the vault inventory list, which is set by the InitiateJob // request when initiating a job to retrieve a vault inventory. Valid values // are "CSV" and "JSON". Format *string `type:"string"` // Specifies the maximum number of inventory items returned per vault inventory // retrieval request. This limit is set when initiating the job with the a InitiateJob // request. Limit *string `type:"string"` // An opaque string that represents where to continue pagination of the vault // inventory retrieval results. You use the marker in a new InitiateJob request // to obtain additional inventory items. If there are no more inventory items, // this value is null. For more information, see Range Inventory Retrieval // (http://docs.aws.amazon.com/amazonglacier/latest/dev/api-initiate-job-post.html#api-initiate-job-post-vault-inventory-list-filtering). Marker *string `type:"string"` // The start of the date range in UTC for vault inventory retrieval that includes // archives created on or after this date. A string representation of ISO 8601 // date format, for example, 2013-03-20T17:03:43Z. StartDate *string `type:"string"` } // String returns the string representation func (s InventoryRetrievalJobDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InventoryRetrievalJobDescription) GoString() string { return s.String() } // Provides options for specifying a range inventory retrieval job. type InventoryRetrievalJobInput struct { _ struct{} `type:"structure"` // The end of the date range in UTC for vault inventory retrieval that includes // archives created before this date. A string representation of ISO 8601 date // format, for example, 2013-03-20T17:03:43Z. EndDate *string `type:"string"` // Specifies the maximum number of inventory items returned per vault inventory // retrieval request. Valid values are greater than or equal to 1. Limit *string `type:"string"` // An opaque string that represents where to continue pagination of the vault // inventory retrieval results. You use the marker in a new InitiateJob request // to obtain additional inventory items. If there are no more inventory items, // this value is null. Marker *string `type:"string"` // The start of the date range in UTC for vault inventory retrieval that includes // archives created on or after this date. A string representation of ISO 8601 // date format, for example, 2013-03-20T17:03:43Z. StartDate *string `type:"string"` } // String returns the string representation func (s InventoryRetrievalJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InventoryRetrievalJobInput) GoString() string { return s.String() } // Describes an Amazon Glacier job. type JobDescription struct { _ struct{} `type:"structure"` // The job type. It is either ArchiveRetrieval or InventoryRetrieval. Action *string `type:"string" enum:"ActionCode"` // For an ArchiveRetrieval job, this is the archive ID requested for download. // Otherwise, this field is null. ArchiveId *string `type:"string"` // The SHA256 tree hash of the entire archive for an archive retrieval. For // inventory retrieval jobs, this field is null. ArchiveSHA256TreeHash *string `type:"string"` // For an ArchiveRetrieval job, this is the size in bytes of the archive being // requested for download. For the InventoryRetrieval job, the value is null. ArchiveSizeInBytes *int64 `type:"long"` // The job status. When a job is completed, you get the job's output. Completed *bool `type:"boolean"` // The UTC time that the archive retrieval request completed. While the job // is in progress, the value will be null. CompletionDate *string `type:"string"` // The UTC date when the job was created. A string representation of ISO 8601 // date format, for example, "2012-03-20T17:03:43.221Z". CreationDate *string `type:"string"` // Parameters used for range inventory retrieval. InventoryRetrievalParameters *InventoryRetrievalJobDescription `type:"structure"` // For an InventoryRetrieval job, this is the size in bytes of the inventory // requested for download. For the ArchiveRetrieval job, the value is null. InventorySizeInBytes *int64 `type:"long"` // The job description you provided when you initiated the job. JobDescription *string `type:"string"` // An opaque string that identifies an Amazon Glacier job. JobId *string `type:"string"` // The retrieved byte range for archive retrieval jobs in the form "StartByteValue-EndByteValue" // If no range was specified in the archive retrieval, then the whole archive // is retrieved and StartByteValue equals 0 and EndByteValue equals the size // of the archive minus 1. For inventory retrieval jobs this field is null. RetrievalByteRange *string `type:"string"` // For an ArchiveRetrieval job, it is the checksum of the archive. Otherwise, // the value is null. // // The SHA256 tree hash value for the requested range of an archive. If the // Initiate a Job request for an archive specified a tree-hash aligned range, // then this field returns a value. // // For the specific case when the whole archive is retrieved, this value is // the same as the ArchiveSHA256TreeHash value. // // This field is null in the following situations: Archive retrieval jobs that // specify a range that is not tree-hash aligned. // // Archival jobs that specify a range that is equal to the whole archive and // the job status is InProgress. // // Inventory jobs. SHA256TreeHash *string `type:"string"` // An Amazon Simple Notification Service (Amazon SNS) topic that receives notification. SNSTopic *string `type:"string"` // The status code can be InProgress, Succeeded, or Failed, and indicates the // status of the job. StatusCode *string `type:"string" enum:"StatusCode"` // A friendly message that describes the job status. StatusMessage *string `type:"string"` // The Amazon Resource Name (ARN) of the vault from which the archive retrieval // was requested. VaultARN *string `type:"string"` } // String returns the string representation func (s JobDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobDescription) GoString() string { return s.String() } // Provides options for defining a job. type JobParameters struct { _ struct{} `type:"structure"` // The ID of the archive that you want to retrieve. This field is required only // if Type is set to archive-retrieval. An error occurs if you specify this // request parameter for an inventory retrieval job request. ArchiveId *string `type:"string"` // The optional description for the job. The description must be less than or // equal to 1,024 bytes. The allowable characters are 7-bit ASCII without control // codes-specifically, ASCII values 32-126 decimal or 0x20-0x7E hexadecimal. Description *string `type:"string"` // When initiating a job to retrieve a vault inventory, you can optionally add // this parameter to your request to specify the output format. If you are initiating // an inventory job and do not specify a Format field, JSON is the default format. // Valid values are "CSV" and "JSON". Format *string `type:"string"` // Input parameters used for range inventory retrieval. InventoryRetrievalParameters *InventoryRetrievalJobInput `type:"structure"` // The byte range to retrieve for an archive retrieval. in the form "StartByteValue-EndByteValue" // If not specified, the whole archive is retrieved. If specified, the byte // range must be megabyte (1024*1024) aligned which means that StartByteValue // must be divisible by 1 MB and EndByteValue plus 1 must be divisible by 1 // MB or be the end of the archive specified as the archive byte size value // minus 1. If RetrievalByteRange is not megabyte aligned, this operation returns // a 400 response. // // An error occurs if you specify this field for an inventory retrieval job // request. RetrievalByteRange *string `type:"string"` // The Amazon SNS topic ARN to which Amazon Glacier sends a notification when // the job is completed and the output is ready for you to download. The specified // topic publishes the notification to its subscribers. The SNS topic must exist. SNSTopic *string `type:"string"` // The job type. You can initiate a job to retrieve an archive or get an inventory // of a vault. Valid values are "archive-retrieval" and "inventory-retrieval". Type *string `type:"string"` } // String returns the string representation func (s JobParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobParameters) GoString() string { return s.String() } // Provides options for retrieving a job list for an Amazon Glacier vault. type ListJobsInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // Specifies the state of the jobs to return. You can specify true or false. Completed *string `location:"querystring" locationName:"completed" type:"string"` // Specifies that the response be limited to the specified number of items or // fewer. If not specified, the List Jobs operation returns up to 1,000 jobs. Limit *string `location:"querystring" locationName:"limit" type:"string"` // An opaque string used for pagination. This value specifies the job at which // the listing of jobs should begin. Get the marker value from a previous List // Jobs response. You need only include the marker if you are continuing the // pagination of results started in a previous List Jobs request. Marker *string `location:"querystring" locationName:"marker" type:"string"` // Specifies the type of job status to return. You can specify the following // values: "InProgress", "Succeeded", or "Failed". Statuscode *string `location:"querystring" locationName:"statuscode" type:"string"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s ListJobsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListJobsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListJobsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListJobsInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the Amazon Glacier response to your request. type ListJobsOutput struct { _ struct{} `type:"structure"` // A list of job objects. Each job object contains metadata describing the job. JobList []*JobDescription `type:"list"` // An opaque string that represents where to continue pagination of the results. // You use this value in a new List Jobs request to obtain more jobs in the // list. If there are no more jobs, this value is null. Marker *string `type:"string"` } // String returns the string representation func (s ListJobsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListJobsOutput) GoString() string { return s.String() } // Provides options for retrieving list of in-progress multipart uploads for // an Amazon Glacier vault. type ListMultipartUploadsInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // Specifies the maximum number of uploads returned in the response body. If // this value is not specified, the List Uploads operation returns up to 1,000 // uploads. Limit *string `location:"querystring" locationName:"limit" type:"string"` // An opaque string used for pagination. This value specifies the upload at // which the listing of uploads should begin. Get the marker value from a previous // List Uploads response. You need only include the marker if you are continuing // the pagination of results started in a previous List Uploads request. Marker *string `location:"querystring" locationName:"marker" type:"string"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s ListMultipartUploadsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListMultipartUploadsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListMultipartUploadsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListMultipartUploadsInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the Amazon Glacier response to your request. type ListMultipartUploadsOutput struct { _ struct{} `type:"structure"` // An opaque string that represents where to continue pagination of the results. // You use the marker in a new List Multipart Uploads request to obtain more // uploads in the list. If there are no more uploads, this value is null. Marker *string `type:"string"` // A list of in-progress multipart uploads. UploadsList []*UploadListElement `type:"list"` } // String returns the string representation func (s ListMultipartUploadsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListMultipartUploadsOutput) GoString() string { return s.String() } // Provides options for retrieving a list of parts of an archive that have been // uploaded in a specific multipart upload. type ListPartsInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // Specifies the maximum number of parts returned in the response body. If this // value is not specified, the List Parts operation returns up to 1,000 uploads. Limit *string `location:"querystring" locationName:"limit" type:"string"` // An opaque string used for pagination. This value specifies the part at which // the listing of parts should begin. Get the marker value from the response // of a previous List Parts response. You need only include the marker if you // are continuing the pagination of results started in a previous List Parts // request. Marker *string `location:"querystring" locationName:"marker" type:"string"` // The upload ID of the multipart upload. // // UploadId is a required field UploadId *string `location:"uri" locationName:"uploadId" type:"string" required:"true"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s ListPartsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPartsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListPartsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListPartsInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.UploadId == nil { invalidParams.Add(request.NewErrParamRequired("UploadId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the Amazon Glacier response to your request. type ListPartsOutput struct { _ struct{} `type:"structure"` // The description of the archive that was specified in the Initiate Multipart // Upload request. ArchiveDescription *string `type:"string"` // The UTC time at which the multipart upload was initiated. CreationDate *string `type:"string"` // An opaque string that represents where to continue pagination of the results. // You use the marker in a new List Parts request to obtain more jobs in the // list. If there are no more parts, this value is null. Marker *string `type:"string"` // The ID of the upload to which the parts are associated. MultipartUploadId *string `type:"string"` // The part size in bytes. PartSizeInBytes *int64 `type:"long"` // A list of the part sizes of the multipart upload. Parts []*PartListElement `type:"list"` // The Amazon Resource Name (ARN) of the vault to which the multipart upload // was initiated. VaultARN *string `type:"string"` } // String returns the string representation func (s ListPartsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPartsOutput) GoString() string { return s.String() } // The input value for ListTagsForVaultInput. type ListTagsForVaultInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s ListTagsForVaultInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForVaultInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsForVaultInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsForVaultInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the Amazon Glacier response to your request. type ListTagsForVaultOutput struct { _ struct{} `type:"structure"` // The tags attached to the vault. Each tag is composed of a key and a value. Tags map[string]*string `type:"map"` } // String returns the string representation func (s ListTagsForVaultOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForVaultOutput) GoString() string { return s.String() } // Provides options to retrieve the vault list owned by the calling user's account. // The list provides metadata information for each vault. type ListVaultsInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID. This value must match the AWS // account ID associated with the credentials used to sign the request. You // can either specify an AWS account ID or optionally a single apos-apos (hyphen), // in which case Amazon Glacier uses the AWS account ID associated with the // credentials used to sign the request. If you specify your account ID, do // not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The maximum number of items returned in the response. If you don't specify // a value, the List Vaults operation returns up to 1,000 items. Limit *string `location:"querystring" locationName:"limit" type:"string"` // A string used for pagination. The marker specifies the vault ARN after which // the listing of vaults should begin. Marker *string `location:"querystring" locationName:"marker" type:"string"` } // String returns the string representation func (s ListVaultsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListVaultsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListVaultsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListVaultsInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the Amazon Glacier response to your request. type ListVaultsOutput struct { _ struct{} `type:"structure"` // The vault ARN at which to continue pagination of the results. You use the // marker in another List Vaults request to obtain more vaults in the list. Marker *string `type:"string"` // List of vaults. VaultList []*DescribeVaultOutput `type:"list"` } // String returns the string representation func (s ListVaultsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListVaultsOutput) GoString() string { return s.String() } // A list of the part sizes of the multipart upload. type PartListElement struct { _ struct{} `type:"structure"` // The byte range of a part, inclusive of the upper value of the range. RangeInBytes *string `type:"string"` // The SHA256 tree hash value that Amazon Glacier calculated for the part. This // field is never null. SHA256TreeHash *string `type:"string"` } // String returns the string representation func (s PartListElement) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PartListElement) GoString() string { return s.String() } // The input value for RemoveTagsFromVaultInput. type RemoveTagsFromVaultInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // A list of tag keys. Each corresponding tag is removed from the vault. TagKeys []*string `type:"list"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s RemoveTagsFromVaultInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromVaultInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTagsFromVaultInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTagsFromVaultInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemoveTagsFromVaultOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveTagsFromVaultOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromVaultOutput) GoString() string { return s.String() } // SetDataRetrievalPolicy input. type SetDataRetrievalPolicyInput struct { _ struct{} `type:"structure"` // The AccountId value is the AWS account ID. This value must match the AWS // account ID associated with the credentials used to sign the request. You // can either specify an AWS account ID or optionally a single apos-apos (hyphen), // in which case Amazon Glacier uses the AWS account ID associated with the // credentials used to sign the request. If you specify your account ID, do // not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The data retrieval policy in JSON format. Policy *DataRetrievalPolicy `type:"structure"` } // String returns the string representation func (s SetDataRetrievalPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetDataRetrievalPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetDataRetrievalPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetDataRetrievalPolicyInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetDataRetrievalPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetDataRetrievalPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetDataRetrievalPolicyOutput) GoString() string { return s.String() } // SetVaultAccessPolicy input. type SetVaultAccessPolicyInput struct { _ struct{} `type:"structure" payload:"Policy"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The vault access policy as a JSON string. Policy *VaultAccessPolicy `locationName:"policy" type:"structure"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s SetVaultAccessPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetVaultAccessPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetVaultAccessPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetVaultAccessPolicyInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetVaultAccessPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetVaultAccessPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetVaultAccessPolicyOutput) GoString() string { return s.String() } // Provides options to configure notifications that will be sent when specific // events happen to a vault. type SetVaultNotificationsInput struct { _ struct{} `type:"structure" payload:"VaultNotificationConfig"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` // Provides options for specifying notification configuration. VaultNotificationConfig *VaultNotificationConfig `locationName:"vaultNotificationConfig" type:"structure"` } // String returns the string representation func (s SetVaultNotificationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetVaultNotificationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetVaultNotificationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetVaultNotificationsInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetVaultNotificationsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetVaultNotificationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetVaultNotificationsOutput) GoString() string { return s.String() } // Provides options to add an archive to a vault. type UploadArchiveInput struct { _ struct{} `type:"structure" payload:"Body"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The optional description of the archive you are uploading. ArchiveDescription *string `location:"header" locationName:"x-amz-archive-description" type:"string"` // The data to upload. Body io.ReadSeeker `locationName:"body" type:"blob"` // The SHA256 tree hash of the data being uploaded. Checksum *string `location:"header" locationName:"x-amz-sha256-tree-hash" type:"string"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s UploadArchiveInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UploadArchiveInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UploadArchiveInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UploadArchiveInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A list of in-progress multipart uploads for a vault. type UploadListElement struct { _ struct{} `type:"structure"` // The description of the archive that was specified in the Initiate Multipart // Upload request. ArchiveDescription *string `type:"string"` // The UTC time at which the multipart upload was initiated. CreationDate *string `type:"string"` // The ID of a multipart upload. MultipartUploadId *string `type:"string"` // The part size, in bytes, specified in the Initiate Multipart Upload request. // This is the size of all the parts in the upload except the last part, which // may be smaller than this size. PartSizeInBytes *int64 `type:"long"` // The Amazon Resource Name (ARN) of the vault that contains the archive. VaultARN *string `type:"string"` } // String returns the string representation func (s UploadListElement) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UploadListElement) GoString() string { return s.String() } // Provides options to upload a part of an archive in a multipart upload operation. type UploadMultipartPartInput struct { _ struct{} `type:"structure" payload:"Body"` // The AccountId value is the AWS account ID of the account that owns the vault. // You can either specify an AWS account ID or optionally a single apos-apos // (hyphen), in which case Amazon Glacier uses the AWS account ID associated // with the credentials used to sign the request. If you use an account ID, // do not include any hyphens (apos-apos) in the ID. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" type:"string" required:"true"` // The data to upload. Body io.ReadSeeker `locationName:"body" type:"blob"` // The SHA256 tree hash of the data being uploaded. Checksum *string `location:"header" locationName:"x-amz-sha256-tree-hash" type:"string"` // Identifies the range of bytes in the assembled archive that will be uploaded // in this part. Amazon Glacier uses this information to assemble the archive // in the proper sequence. The format of this header follows RFC 2616. An example // header is Content-Range:bytes 0-4194303/*. Range *string `location:"header" locationName:"Content-Range" type:"string"` // The upload ID of the multipart upload. // // UploadId is a required field UploadId *string `location:"uri" locationName:"uploadId" type:"string" required:"true"` // The name of the vault. // // VaultName is a required field VaultName *string `location:"uri" locationName:"vaultName" type:"string" required:"true"` } // String returns the string representation func (s UploadMultipartPartInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UploadMultipartPartInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UploadMultipartPartInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UploadMultipartPartInput"} if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } if s.UploadId == nil { invalidParams.Add(request.NewErrParamRequired("UploadId")) } if s.VaultName == nil { invalidParams.Add(request.NewErrParamRequired("VaultName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the Amazon Glacier response to your request. type UploadMultipartPartOutput struct { _ struct{} `type:"structure"` // The SHA256 tree hash that Amazon Glacier computed for the uploaded part. Checksum *string `location:"header" locationName:"x-amz-sha256-tree-hash" type:"string"` } // String returns the string representation func (s UploadMultipartPartOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UploadMultipartPartOutput) GoString() string { return s.String() } // Contains the vault access policy. type VaultAccessPolicy struct { _ struct{} `type:"structure"` // The vault access policy. Policy *string `type:"string"` } // String returns the string representation func (s VaultAccessPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VaultAccessPolicy) GoString() string { return s.String() } // Contains the vault lock policy. type VaultLockPolicy struct { _ struct{} `type:"structure"` // The vault lock policy. Policy *string `type:"string"` } // String returns the string representation func (s VaultLockPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VaultLockPolicy) GoString() string { return s.String() } // Represents a vault's notification configuration. type VaultNotificationConfig struct { _ struct{} `type:"structure"` // A list of one or more events for which Amazon Glacier will send a notification // to the specified Amazon SNS topic. Events []*string `type:"list"` // The Amazon Simple Notification Service (Amazon SNS) topic Amazon Resource // Name (ARN). SNSTopic *string `type:"string"` } // String returns the string representation func (s VaultNotificationConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VaultNotificationConfig) GoString() string { return s.String() } const ( // ActionCodeArchiveRetrieval is a ActionCode enum value ActionCodeArchiveRetrieval = "ArchiveRetrieval" // ActionCodeInventoryRetrieval is a ActionCode enum value ActionCodeInventoryRetrieval = "InventoryRetrieval" ) const ( // StatusCodeInProgress is a StatusCode enum value StatusCodeInProgress = "InProgress" // StatusCodeSucceeded is a StatusCode enum value StatusCodeSucceeded = "Succeeded" // StatusCodeFailed is a StatusCode enum value StatusCodeFailed = "Failed" ) aws-sdk-go-1.4.22/service/glacier/customizations.go000066400000000000000000000022771300374646400222630ustar00rootroot00000000000000package glacier import ( "encoding/hex" "reflect" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) var ( defaultAccountID = "-" ) func init() { initRequest = func(r *request.Request) { r.Handlers.Validate.PushFront(addAccountID) r.Handlers.Validate.PushFront(copyParams) // this happens first r.Handlers.Build.PushBack(addChecksum) r.Handlers.Build.PushBack(addAPIVersion) } } func copyParams(r *request.Request) { r.Params = awsutil.CopyOf(r.Params) } func addAccountID(r *request.Request) { if !r.ParamsFilled() { return } v := reflect.Indirect(reflect.ValueOf(r.Params)) if f := v.FieldByName("AccountId"); f.IsNil() { f.Set(reflect.ValueOf(&defaultAccountID)) } } func addChecksum(r *request.Request) { if r.Body == nil || r.HTTPRequest.Header.Get("X-Amz-Sha256-Tree-Hash") != "" { return } h := ComputeHashes(r.Body) hstr := hex.EncodeToString(h.TreeHash) r.HTTPRequest.Header.Set("X-Amz-Sha256-Tree-Hash", hstr) hLstr := hex.EncodeToString(h.LinearHash) r.HTTPRequest.Header.Set("X-Amz-Content-Sha256", hLstr) } func addAPIVersion(r *request.Request) { r.HTTPRequest.Header.Set("X-Amz-Glacier-Version", r.ClientInfo.APIVersion) } aws-sdk-go-1.4.22/service/glacier/customizations_test.go000066400000000000000000000046671300374646400233270ustar00rootroot00000000000000// +build !integration package glacier_test import ( "bytes" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/glacier" ) var ( payloadBuf = func() *bytes.Reader { buf := make([]byte, 5767168) // 5.5MB buffer for i := range buf { buf[i] = '0' // Fill with zero characters } return bytes.NewReader(buf) }() svc = glacier.New(unit.Session) ) func TestCustomizations(t *testing.T) { req, _ := svc.UploadArchiveRequest(&glacier.UploadArchiveInput{ VaultName: aws.String("vault"), Body: payloadBuf, }) err := req.Build() assert.NoError(t, err) // Sets API version assert.Equal(t, req.ClientInfo.APIVersion, req.HTTPRequest.Header.Get("x-amz-glacier-version")) // Sets Account ID v, _ := awsutil.ValuesAtPath(req.Params, "AccountId") assert.Equal(t, "-", *(v[0].(*string))) // Computes checksums linear := "68aff0c5a91aa0491752bfb96e3fef33eb74953804f6a2f7b708d5bcefa8ff6b" tree := "154e26c78fd74d0c2c9b3cc4644191619dc4f2cd539ae2a74d5fd07957a3ee6a" assert.Equal(t, linear, req.HTTPRequest.Header.Get("x-amz-content-sha256")) assert.Equal(t, tree, req.HTTPRequest.Header.Get("x-amz-sha256-tree-hash")) } func TestShortcircuitTreehash(t *testing.T) { req, _ := svc.UploadArchiveRequest(&glacier.UploadArchiveInput{ VaultName: aws.String("vault"), Body: payloadBuf, Checksum: aws.String("000"), }) err := req.Build() assert.NoError(t, err) assert.Equal(t, "000", req.HTTPRequest.Header.Get("x-amz-sha256-tree-hash")) } func TestFillAccountIDWithNilStruct(t *testing.T) { req, _ := svc.ListVaultsRequest(nil) err := req.Build() assert.NoError(t, err) empty := "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" // Sets Account ID v, _ := awsutil.ValuesAtPath(req.Params, "AccountId") assert.Equal(t, "-", *(v[0].(*string))) // Does not set tree hash assert.Equal(t, empty, req.HTTPRequest.Header.Get("x-amz-content-sha256")) assert.Equal(t, "", req.HTTPRequest.Header.Get("x-amz-sha256-tree-hash")) } func TestHashOnce(t *testing.T) { req, _ := svc.UploadArchiveRequest(&glacier.UploadArchiveInput{ VaultName: aws.String("vault"), Body: payloadBuf, }) req.HTTPRequest.Header.Set("X-Amz-Sha256-Tree-Hash", "0") err := req.Build() assert.NoError(t, err) assert.Equal(t, "0", req.HTTPRequest.Header.Get("x-amz-sha256-tree-hash")) } aws-sdk-go-1.4.22/service/glacier/examples_test.go000066400000000000000000000500061300374646400220360ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package glacier_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/glacier" ) var _ time.Duration var _ bytes.Buffer func ExampleGlacier_AbortMultipartUpload() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.AbortMultipartUploadInput{ AccountId: aws.String("string"), // Required UploadId: aws.String("string"), // Required VaultName: aws.String("string"), // Required } resp, err := svc.AbortMultipartUpload(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_AbortVaultLock() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.AbortVaultLockInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required } resp, err := svc.AbortVaultLock(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_AddTagsToVault() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.AddTagsToVaultInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required Tags: map[string]*string{ "Key": aws.String("TagValue"), // Required // More values... }, } resp, err := svc.AddTagsToVault(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_CompleteMultipartUpload() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.CompleteMultipartUploadInput{ AccountId: aws.String("string"), // Required UploadId: aws.String("string"), // Required VaultName: aws.String("string"), // Required ArchiveSize: aws.String("string"), Checksum: aws.String("string"), } resp, err := svc.CompleteMultipartUpload(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_CompleteVaultLock() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.CompleteVaultLockInput{ AccountId: aws.String("string"), // Required LockId: aws.String("string"), // Required VaultName: aws.String("string"), // Required } resp, err := svc.CompleteVaultLock(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_CreateVault() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.CreateVaultInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required } resp, err := svc.CreateVault(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_DeleteArchive() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.DeleteArchiveInput{ AccountId: aws.String("string"), // Required ArchiveId: aws.String("string"), // Required VaultName: aws.String("string"), // Required } resp, err := svc.DeleteArchive(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_DeleteVault() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.DeleteVaultInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required } resp, err := svc.DeleteVault(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_DeleteVaultAccessPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.DeleteVaultAccessPolicyInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required } resp, err := svc.DeleteVaultAccessPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_DeleteVaultNotifications() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.DeleteVaultNotificationsInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required } resp, err := svc.DeleteVaultNotifications(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_DescribeJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.DescribeJobInput{ AccountId: aws.String("string"), // Required JobId: aws.String("string"), // Required VaultName: aws.String("string"), // Required } resp, err := svc.DescribeJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_DescribeVault() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.DescribeVaultInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required } resp, err := svc.DescribeVault(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_GetDataRetrievalPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.GetDataRetrievalPolicyInput{ AccountId: aws.String("string"), // Required } resp, err := svc.GetDataRetrievalPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_GetJobOutput() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.GetJobOutputInput{ AccountId: aws.String("string"), // Required JobId: aws.String("string"), // Required VaultName: aws.String("string"), // Required Range: aws.String("string"), } resp, err := svc.GetJobOutput(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_GetVaultAccessPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.GetVaultAccessPolicyInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required } resp, err := svc.GetVaultAccessPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_GetVaultLock() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.GetVaultLockInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required } resp, err := svc.GetVaultLock(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_GetVaultNotifications() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.GetVaultNotificationsInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required } resp, err := svc.GetVaultNotifications(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_InitiateJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.InitiateJobInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required JobParameters: &glacier.JobParameters{ ArchiveId: aws.String("string"), Description: aws.String("string"), Format: aws.String("string"), InventoryRetrievalParameters: &glacier.InventoryRetrievalJobInput{ EndDate: aws.String("string"), Limit: aws.String("string"), Marker: aws.String("string"), StartDate: aws.String("string"), }, RetrievalByteRange: aws.String("string"), SNSTopic: aws.String("string"), Type: aws.String("string"), }, } resp, err := svc.InitiateJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_InitiateMultipartUpload() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.InitiateMultipartUploadInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required ArchiveDescription: aws.String("string"), PartSize: aws.String("string"), } resp, err := svc.InitiateMultipartUpload(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_InitiateVaultLock() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.InitiateVaultLockInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required Policy: &glacier.VaultLockPolicy{ Policy: aws.String("string"), }, } resp, err := svc.InitiateVaultLock(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_ListJobs() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.ListJobsInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required Completed: aws.String("string"), Limit: aws.String("string"), Marker: aws.String("string"), Statuscode: aws.String("string"), } resp, err := svc.ListJobs(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_ListMultipartUploads() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.ListMultipartUploadsInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required Limit: aws.String("string"), Marker: aws.String("string"), } resp, err := svc.ListMultipartUploads(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_ListParts() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.ListPartsInput{ AccountId: aws.String("string"), // Required UploadId: aws.String("string"), // Required VaultName: aws.String("string"), // Required Limit: aws.String("string"), Marker: aws.String("string"), } resp, err := svc.ListParts(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_ListTagsForVault() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.ListTagsForVaultInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required } resp, err := svc.ListTagsForVault(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_ListVaults() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.ListVaultsInput{ AccountId: aws.String("string"), // Required Limit: aws.String("string"), Marker: aws.String("string"), } resp, err := svc.ListVaults(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_RemoveTagsFromVault() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.RemoveTagsFromVaultInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required TagKeys: []*string{ aws.String("string"), // Required // More values... }, } resp, err := svc.RemoveTagsFromVault(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_SetDataRetrievalPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.SetDataRetrievalPolicyInput{ AccountId: aws.String("string"), // Required Policy: &glacier.DataRetrievalPolicy{ Rules: []*glacier.DataRetrievalRule{ { // Required BytesPerHour: aws.Int64(1), Strategy: aws.String("string"), }, // More values... }, }, } resp, err := svc.SetDataRetrievalPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_SetVaultAccessPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.SetVaultAccessPolicyInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required Policy: &glacier.VaultAccessPolicy{ Policy: aws.String("string"), }, } resp, err := svc.SetVaultAccessPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_SetVaultNotifications() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.SetVaultNotificationsInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required VaultNotificationConfig: &glacier.VaultNotificationConfig{ Events: []*string{ aws.String("string"), // Required // More values... }, SNSTopic: aws.String("string"), }, } resp, err := svc.SetVaultNotifications(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_UploadArchive() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.UploadArchiveInput{ AccountId: aws.String("string"), // Required VaultName: aws.String("string"), // Required ArchiveDescription: aws.String("string"), Body: bytes.NewReader([]byte("PAYLOAD")), Checksum: aws.String("string"), } resp, err := svc.UploadArchive(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleGlacier_UploadMultipartPart() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := glacier.New(sess) params := &glacier.UploadMultipartPartInput{ AccountId: aws.String("string"), // Required UploadId: aws.String("string"), // Required VaultName: aws.String("string"), // Required Body: bytes.NewReader([]byte("PAYLOAD")), Checksum: aws.String("string"), Range: aws.String("string"), } resp, err := svc.UploadMultipartPart(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/glacier/glacieriface/000077500000000000000000000000001300374646400212275ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/glacier/glacieriface/interface.go000066400000000000000000000214761300374646400235300ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package glacieriface provides an interface to enable mocking the Amazon Glacier service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package glacieriface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/glacier" ) // GlacierAPI provides an interface to enable mocking the // glacier.Glacier service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Glacier. // func myFunc(svc glacieriface.GlacierAPI) bool { // // Make svc.AbortMultipartUpload request // } // // func main() { // sess := session.New() // svc := glacier.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockGlacierClient struct { // glacieriface.GlacierAPI // } // func (m *mockGlacierClient) AbortMultipartUpload(input *glacier.AbortMultipartUploadInput) (*glacier.AbortMultipartUploadOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockGlacierClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type GlacierAPI interface { AbortMultipartUploadRequest(*glacier.AbortMultipartUploadInput) (*request.Request, *glacier.AbortMultipartUploadOutput) AbortMultipartUpload(*glacier.AbortMultipartUploadInput) (*glacier.AbortMultipartUploadOutput, error) AbortVaultLockRequest(*glacier.AbortVaultLockInput) (*request.Request, *glacier.AbortVaultLockOutput) AbortVaultLock(*glacier.AbortVaultLockInput) (*glacier.AbortVaultLockOutput, error) AddTagsToVaultRequest(*glacier.AddTagsToVaultInput) (*request.Request, *glacier.AddTagsToVaultOutput) AddTagsToVault(*glacier.AddTagsToVaultInput) (*glacier.AddTagsToVaultOutput, error) CompleteMultipartUploadRequest(*glacier.CompleteMultipartUploadInput) (*request.Request, *glacier.ArchiveCreationOutput) CompleteMultipartUpload(*glacier.CompleteMultipartUploadInput) (*glacier.ArchiveCreationOutput, error) CompleteVaultLockRequest(*glacier.CompleteVaultLockInput) (*request.Request, *glacier.CompleteVaultLockOutput) CompleteVaultLock(*glacier.CompleteVaultLockInput) (*glacier.CompleteVaultLockOutput, error) CreateVaultRequest(*glacier.CreateVaultInput) (*request.Request, *glacier.CreateVaultOutput) CreateVault(*glacier.CreateVaultInput) (*glacier.CreateVaultOutput, error) DeleteArchiveRequest(*glacier.DeleteArchiveInput) (*request.Request, *glacier.DeleteArchiveOutput) DeleteArchive(*glacier.DeleteArchiveInput) (*glacier.DeleteArchiveOutput, error) DeleteVaultRequest(*glacier.DeleteVaultInput) (*request.Request, *glacier.DeleteVaultOutput) DeleteVault(*glacier.DeleteVaultInput) (*glacier.DeleteVaultOutput, error) DeleteVaultAccessPolicyRequest(*glacier.DeleteVaultAccessPolicyInput) (*request.Request, *glacier.DeleteVaultAccessPolicyOutput) DeleteVaultAccessPolicy(*glacier.DeleteVaultAccessPolicyInput) (*glacier.DeleteVaultAccessPolicyOutput, error) DeleteVaultNotificationsRequest(*glacier.DeleteVaultNotificationsInput) (*request.Request, *glacier.DeleteVaultNotificationsOutput) DeleteVaultNotifications(*glacier.DeleteVaultNotificationsInput) (*glacier.DeleteVaultNotificationsOutput, error) DescribeJobRequest(*glacier.DescribeJobInput) (*request.Request, *glacier.JobDescription) DescribeJob(*glacier.DescribeJobInput) (*glacier.JobDescription, error) DescribeVaultRequest(*glacier.DescribeVaultInput) (*request.Request, *glacier.DescribeVaultOutput) DescribeVault(*glacier.DescribeVaultInput) (*glacier.DescribeVaultOutput, error) GetDataRetrievalPolicyRequest(*glacier.GetDataRetrievalPolicyInput) (*request.Request, *glacier.GetDataRetrievalPolicyOutput) GetDataRetrievalPolicy(*glacier.GetDataRetrievalPolicyInput) (*glacier.GetDataRetrievalPolicyOutput, error) GetJobOutputRequest(*glacier.GetJobOutputInput) (*request.Request, *glacier.GetJobOutputOutput) GetJobOutput(*glacier.GetJobOutputInput) (*glacier.GetJobOutputOutput, error) GetVaultAccessPolicyRequest(*glacier.GetVaultAccessPolicyInput) (*request.Request, *glacier.GetVaultAccessPolicyOutput) GetVaultAccessPolicy(*glacier.GetVaultAccessPolicyInput) (*glacier.GetVaultAccessPolicyOutput, error) GetVaultLockRequest(*glacier.GetVaultLockInput) (*request.Request, *glacier.GetVaultLockOutput) GetVaultLock(*glacier.GetVaultLockInput) (*glacier.GetVaultLockOutput, error) GetVaultNotificationsRequest(*glacier.GetVaultNotificationsInput) (*request.Request, *glacier.GetVaultNotificationsOutput) GetVaultNotifications(*glacier.GetVaultNotificationsInput) (*glacier.GetVaultNotificationsOutput, error) InitiateJobRequest(*glacier.InitiateJobInput) (*request.Request, *glacier.InitiateJobOutput) InitiateJob(*glacier.InitiateJobInput) (*glacier.InitiateJobOutput, error) InitiateMultipartUploadRequest(*glacier.InitiateMultipartUploadInput) (*request.Request, *glacier.InitiateMultipartUploadOutput) InitiateMultipartUpload(*glacier.InitiateMultipartUploadInput) (*glacier.InitiateMultipartUploadOutput, error) InitiateVaultLockRequest(*glacier.InitiateVaultLockInput) (*request.Request, *glacier.InitiateVaultLockOutput) InitiateVaultLock(*glacier.InitiateVaultLockInput) (*glacier.InitiateVaultLockOutput, error) ListJobsRequest(*glacier.ListJobsInput) (*request.Request, *glacier.ListJobsOutput) ListJobs(*glacier.ListJobsInput) (*glacier.ListJobsOutput, error) ListJobsPages(*glacier.ListJobsInput, func(*glacier.ListJobsOutput, bool) bool) error ListMultipartUploadsRequest(*glacier.ListMultipartUploadsInput) (*request.Request, *glacier.ListMultipartUploadsOutput) ListMultipartUploads(*glacier.ListMultipartUploadsInput) (*glacier.ListMultipartUploadsOutput, error) ListMultipartUploadsPages(*glacier.ListMultipartUploadsInput, func(*glacier.ListMultipartUploadsOutput, bool) bool) error ListPartsRequest(*glacier.ListPartsInput) (*request.Request, *glacier.ListPartsOutput) ListParts(*glacier.ListPartsInput) (*glacier.ListPartsOutput, error) ListPartsPages(*glacier.ListPartsInput, func(*glacier.ListPartsOutput, bool) bool) error ListTagsForVaultRequest(*glacier.ListTagsForVaultInput) (*request.Request, *glacier.ListTagsForVaultOutput) ListTagsForVault(*glacier.ListTagsForVaultInput) (*glacier.ListTagsForVaultOutput, error) ListVaultsRequest(*glacier.ListVaultsInput) (*request.Request, *glacier.ListVaultsOutput) ListVaults(*glacier.ListVaultsInput) (*glacier.ListVaultsOutput, error) ListVaultsPages(*glacier.ListVaultsInput, func(*glacier.ListVaultsOutput, bool) bool) error RemoveTagsFromVaultRequest(*glacier.RemoveTagsFromVaultInput) (*request.Request, *glacier.RemoveTagsFromVaultOutput) RemoveTagsFromVault(*glacier.RemoveTagsFromVaultInput) (*glacier.RemoveTagsFromVaultOutput, error) SetDataRetrievalPolicyRequest(*glacier.SetDataRetrievalPolicyInput) (*request.Request, *glacier.SetDataRetrievalPolicyOutput) SetDataRetrievalPolicy(*glacier.SetDataRetrievalPolicyInput) (*glacier.SetDataRetrievalPolicyOutput, error) SetVaultAccessPolicyRequest(*glacier.SetVaultAccessPolicyInput) (*request.Request, *glacier.SetVaultAccessPolicyOutput) SetVaultAccessPolicy(*glacier.SetVaultAccessPolicyInput) (*glacier.SetVaultAccessPolicyOutput, error) SetVaultNotificationsRequest(*glacier.SetVaultNotificationsInput) (*request.Request, *glacier.SetVaultNotificationsOutput) SetVaultNotifications(*glacier.SetVaultNotificationsInput) (*glacier.SetVaultNotificationsOutput, error) UploadArchiveRequest(*glacier.UploadArchiveInput) (*request.Request, *glacier.ArchiveCreationOutput) UploadArchive(*glacier.UploadArchiveInput) (*glacier.ArchiveCreationOutput, error) UploadMultipartPartRequest(*glacier.UploadMultipartPartInput) (*request.Request, *glacier.UploadMultipartPartOutput) UploadMultipartPart(*glacier.UploadMultipartPartInput) (*glacier.UploadMultipartPartOutput, error) WaitUntilVaultExists(*glacier.DescribeVaultInput) error WaitUntilVaultNotExists(*glacier.DescribeVaultInput) error } var _ GlacierAPI = (*glacier.Glacier)(nil) aws-sdk-go-1.4.22/service/glacier/service.go000066400000000000000000000107221300374646400206220ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package glacier import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) // Amazon Glacier is a storage solution for "cold data." // // Amazon Glacier is an extremely low-cost storage service that provides secure, // durable, and easy-to-use storage for data backup and archival. With Amazon // Glacier, customers can store their data cost effectively for months, years, // or decades. Amazon Glacier also enables customers to offload the administrative // burdens of operating and scaling storage to AWS, so they don't have to worry // about capacity planning, hardware provisioning, data replication, hardware // failure and recovery, or time-consuming hardware migrations. // // Amazon Glacier is a great storage choice when low storage cost is paramount, // your data is rarely retrieved, and retrieval latency of several hours is // acceptable. If your application requires fast or frequent access to your // data, consider using Amazon S3. For more information, go to Amazon Simple // Storage Service (Amazon S3) (http://aws.amazon.com/s3/). // // You can store any kind of data in any format. There is no maximum limit on // the total amount of data you can store in Amazon Glacier. // // If you are a first-time user of Amazon Glacier, we recommend that you begin // by reading the following sections in the Amazon Glacier Developer Guide: // // * What is Amazon Glacier (http://docs.aws.amazon.com/amazonglacier/latest/dev/introduction.html) // - This section of the Developer Guide describes the underlying data model, // the operations it supports, and the AWS SDKs that you can use to interact // with the service. // // * Getting Started with Amazon Glacier (http://docs.aws.amazon.com/amazonglacier/latest/dev/amazon-glacier-getting-started.html) // - The Getting Started section walks you through the process of creating // a vault, uploading archives, creating jobs to download archives, retrieving // the job output, and deleting archives. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type Glacier struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "glacier" // New creates a new instance of the Glacier client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a Glacier client from just a session. // svc := glacier.New(mySession) // // // Create a Glacier client with additional configuration // svc := glacier.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *Glacier { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *Glacier { svc := &Glacier{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2012-06-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a Glacier operation and runs any // custom request initialization. func (c *Glacier) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/glacier/treehash.go000066400000000000000000000027541300374646400207730ustar00rootroot00000000000000package glacier import ( "crypto/sha256" "io" ) const bufsize = 1024 * 1024 // Hash contains information about the tree-hash and linear hash of a // Glacier payload. This structure is generated by ComputeHashes(). type Hash struct { TreeHash []byte LinearHash []byte } // ComputeHashes computes the tree-hash and linear hash of a seekable reader r. func ComputeHashes(r io.ReadSeeker) Hash { r.Seek(0, 0) // Read the whole stream defer r.Seek(0, 0) // Rewind stream at end buf := make([]byte, bufsize) hashes := [][]byte{} hsh := sha256.New() for { // Build leaf nodes in 1MB chunks n, err := io.ReadAtLeast(r, buf, bufsize) if n == 0 { break } tmpHash := sha256.Sum256(buf[:n]) hashes = append(hashes, tmpHash[:]) hsh.Write(buf[:n]) // Track linear hash while we're at it if err != nil { break // This is the last chunk } } return Hash{ LinearHash: hsh.Sum(nil), TreeHash: buildHashTree(hashes), } } // buildHashTree builds a hash tree root node given a set of hashes. func buildHashTree(hashes [][]byte) []byte { if hashes == nil || len(hashes) == 0 { return nil } for len(hashes) > 1 { tmpHashes := [][]byte{} for i := 0; i < len(hashes); i += 2 { if i+1 <= len(hashes)-1 { tmpHash := append(append([]byte{}, hashes[i]...), hashes[i+1]...) tmpSum := sha256.Sum256(tmpHash) tmpHashes = append(tmpHashes, tmpSum[:]) } else { tmpHashes = append(tmpHashes, hashes[i]) } } hashes = tmpHashes } return hashes[0] } aws-sdk-go-1.4.22/service/glacier/treehash_test.go000066400000000000000000000012061300374646400220210ustar00rootroot00000000000000package glacier_test import ( "bytes" "fmt" "github.com/aws/aws-sdk-go/service/glacier" ) func ExampleComputeHashes() { buf := make([]byte, 5767168) // 5.5MB buffer for i := range buf { buf[i] = '0' // Fill with zero characters } r := bytes.NewReader(buf) h := glacier.ComputeHashes(r) n, _ := r.Seek(0, 1) // Check position after checksumming fmt.Printf("linear: %x\n", h.LinearHash) fmt.Printf("tree: %x\n", h.TreeHash) fmt.Printf("pos: %d\n", n) // Output: // linear: 68aff0c5a91aa0491752bfb96e3fef33eb74953804f6a2f7b708d5bcefa8ff6b // tree: 154e26c78fd74d0c2c9b3cc4644191619dc4f2cd539ae2a74d5fd07957a3ee6a // pos: 0 } aws-sdk-go-1.4.22/service/glacier/waiters.go000066400000000000000000000031411300374646400206350ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package glacier import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilVaultExists uses the Amazon Glacier API operation // DescribeVault to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *Glacier) WaitUntilVaultExists(input *DescribeVaultInput) error { waiterCfg := waiter.Config{ Operation: "DescribeVault", Delay: 3, MaxAttempts: 15, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "status", Argument: "", Expected: 200, }, { State: "retry", Matcher: "error", Argument: "", Expected: "ResourceNotFoundException", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilVaultNotExists uses the Amazon Glacier API operation // DescribeVault to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *Glacier) WaitUntilVaultNotExists(input *DescribeVaultInput) error { waiterCfg := waiter.Config{ Operation: "DescribeVault", Delay: 3, MaxAttempts: 15, Acceptors: []waiter.WaitAcceptor{ { State: "retry", Matcher: "status", Argument: "", Expected: 200, }, { State: "success", Matcher: "error", Argument: "", Expected: "ResourceNotFoundException", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/iam/000077500000000000000000000000001300374646400157715ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/iam/api.go000066400000000000000000026752611300374646400171140ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package iam provides a client for AWS Identity and Access Management. package iam import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/query" ) const opAddClientIDToOpenIDConnectProvider = "AddClientIDToOpenIDConnectProvider" // AddClientIDToOpenIDConnectProviderRequest generates a "aws/request.Request" representing the // client's request for the AddClientIDToOpenIDConnectProvider operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddClientIDToOpenIDConnectProvider for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddClientIDToOpenIDConnectProvider method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddClientIDToOpenIDConnectProviderRequest method. // req, resp := client.AddClientIDToOpenIDConnectProviderRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) AddClientIDToOpenIDConnectProviderRequest(input *AddClientIDToOpenIDConnectProviderInput) (req *request.Request, output *AddClientIDToOpenIDConnectProviderOutput) { op := &request.Operation{ Name: opAddClientIDToOpenIDConnectProvider, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddClientIDToOpenIDConnectProviderInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AddClientIDToOpenIDConnectProviderOutput{} req.Data = output return } // AddClientIDToOpenIDConnectProvider API operation for AWS Identity and Access Management. // // Adds a new client ID (also known as audience) to the list of client IDs already // registered for the specified IAM OpenID Connect (OIDC) provider resource. // // This action is idempotent; it does not fail or return an error if you add // an existing client ID to the provider. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation AddClientIDToOpenIDConnectProvider for usage and error information. // // Returned Error Codes: // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) AddClientIDToOpenIDConnectProvider(input *AddClientIDToOpenIDConnectProviderInput) (*AddClientIDToOpenIDConnectProviderOutput, error) { req, out := c.AddClientIDToOpenIDConnectProviderRequest(input) err := req.Send() return out, err } const opAddRoleToInstanceProfile = "AddRoleToInstanceProfile" // AddRoleToInstanceProfileRequest generates a "aws/request.Request" representing the // client's request for the AddRoleToInstanceProfile operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddRoleToInstanceProfile for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddRoleToInstanceProfile method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddRoleToInstanceProfileRequest method. // req, resp := client.AddRoleToInstanceProfileRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) AddRoleToInstanceProfileRequest(input *AddRoleToInstanceProfileInput) (req *request.Request, output *AddRoleToInstanceProfileOutput) { op := &request.Operation{ Name: opAddRoleToInstanceProfile, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddRoleToInstanceProfileInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AddRoleToInstanceProfileOutput{} req.Data = output return } // AddRoleToInstanceProfile API operation for AWS Identity and Access Management. // // Adds the specified IAM role to the specified instance profile. // // The caller of this API must be granted the PassRole permission on the IAM // role by a permission policy. // // For more information about roles, go to Working with Roles (http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html). // For more information about instance profiles, go to About Instance Profiles // (http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation AddRoleToInstanceProfile for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * EntityAlreadyExists // The request was rejected because it attempted to create a resource that already // exists. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) AddRoleToInstanceProfile(input *AddRoleToInstanceProfileInput) (*AddRoleToInstanceProfileOutput, error) { req, out := c.AddRoleToInstanceProfileRequest(input) err := req.Send() return out, err } const opAddUserToGroup = "AddUserToGroup" // AddUserToGroupRequest generates a "aws/request.Request" representing the // client's request for the AddUserToGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddUserToGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddUserToGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddUserToGroupRequest method. // req, resp := client.AddUserToGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) AddUserToGroupRequest(input *AddUserToGroupInput) (req *request.Request, output *AddUserToGroupOutput) { op := &request.Operation{ Name: opAddUserToGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddUserToGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AddUserToGroupOutput{} req.Data = output return } // AddUserToGroup API operation for AWS Identity and Access Management. // // Adds the specified user to the specified group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation AddUserToGroup for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) AddUserToGroup(input *AddUserToGroupInput) (*AddUserToGroupOutput, error) { req, out := c.AddUserToGroupRequest(input) err := req.Send() return out, err } const opAttachGroupPolicy = "AttachGroupPolicy" // AttachGroupPolicyRequest generates a "aws/request.Request" representing the // client's request for the AttachGroupPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AttachGroupPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AttachGroupPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AttachGroupPolicyRequest method. // req, resp := client.AttachGroupPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) AttachGroupPolicyRequest(input *AttachGroupPolicyInput) (req *request.Request, output *AttachGroupPolicyOutput) { op := &request.Operation{ Name: opAttachGroupPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AttachGroupPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AttachGroupPolicyOutput{} req.Data = output return } // AttachGroupPolicy API operation for AWS Identity and Access Management. // // Attaches the specified managed policy to the specified IAM group. // // You use this API to attach a managed policy to a group. To embed an inline // policy in a group, use PutGroupPolicy. // // For more information about policies, see Managed Policies and Inline Policies // (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation AttachGroupPolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) AttachGroupPolicy(input *AttachGroupPolicyInput) (*AttachGroupPolicyOutput, error) { req, out := c.AttachGroupPolicyRequest(input) err := req.Send() return out, err } const opAttachRolePolicy = "AttachRolePolicy" // AttachRolePolicyRequest generates a "aws/request.Request" representing the // client's request for the AttachRolePolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AttachRolePolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AttachRolePolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AttachRolePolicyRequest method. // req, resp := client.AttachRolePolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) AttachRolePolicyRequest(input *AttachRolePolicyInput) (req *request.Request, output *AttachRolePolicyOutput) { op := &request.Operation{ Name: opAttachRolePolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AttachRolePolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AttachRolePolicyOutput{} req.Data = output return } // AttachRolePolicy API operation for AWS Identity and Access Management. // // Attaches the specified managed policy to the specified IAM role. // // When you attach a managed policy to a role, the managed policy becomes part // of the role's permission (access) policy. You cannot use a managed policy // as the role's trust policy. The role's trust policy is created at the same // time as the role, using CreateRole. You can update a role's trust policy // using UpdateAssumeRolePolicy. // // Use this API to attach a managed policy to a role. To embed an inline policy // in a role, use PutRolePolicy. For more information about policies, see Managed // Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation AttachRolePolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) AttachRolePolicy(input *AttachRolePolicyInput) (*AttachRolePolicyOutput, error) { req, out := c.AttachRolePolicyRequest(input) err := req.Send() return out, err } const opAttachUserPolicy = "AttachUserPolicy" // AttachUserPolicyRequest generates a "aws/request.Request" representing the // client's request for the AttachUserPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AttachUserPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AttachUserPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AttachUserPolicyRequest method. // req, resp := client.AttachUserPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) AttachUserPolicyRequest(input *AttachUserPolicyInput) (req *request.Request, output *AttachUserPolicyOutput) { op := &request.Operation{ Name: opAttachUserPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AttachUserPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AttachUserPolicyOutput{} req.Data = output return } // AttachUserPolicy API operation for AWS Identity and Access Management. // // Attaches the specified managed policy to the specified user. // // You use this API to attach a managed policy to a user. To embed an inline // policy in a user, use PutUserPolicy. // // For more information about policies, see Managed Policies and Inline Policies // (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation AttachUserPolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) AttachUserPolicy(input *AttachUserPolicyInput) (*AttachUserPolicyOutput, error) { req, out := c.AttachUserPolicyRequest(input) err := req.Send() return out, err } const opChangePassword = "ChangePassword" // ChangePasswordRequest generates a "aws/request.Request" representing the // client's request for the ChangePassword operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ChangePassword for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ChangePassword method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ChangePasswordRequest method. // req, resp := client.ChangePasswordRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ChangePasswordRequest(input *ChangePasswordInput) (req *request.Request, output *ChangePasswordOutput) { op := &request.Operation{ Name: opChangePassword, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ChangePasswordInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ChangePasswordOutput{} req.Data = output return } // ChangePassword API operation for AWS Identity and Access Management. // // Changes the password of the IAM user who is calling this action. The root // account password is not affected by this action. // // To change the password for a different user, see UpdateLoginProfile. For // more information about modifying passwords, see Managing Passwords (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingLogins.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ChangePassword for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * InvalidUserType // The request was rejected because the type of user for the transaction was // incorrect. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * EntityTemporarilyUnmodifiable // The request was rejected because it referenced an entity that is temporarily // unmodifiable, such as a user name that was deleted and then recreated. The // error indicates that the request is likely to succeed if you try again after // waiting several minutes. The error message describes the entity. // // * PasswordPolicyViolation // The request was rejected because the provided password did not meet the requirements // imposed by the account password policy. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ChangePassword(input *ChangePasswordInput) (*ChangePasswordOutput, error) { req, out := c.ChangePasswordRequest(input) err := req.Send() return out, err } const opCreateAccessKey = "CreateAccessKey" // CreateAccessKeyRequest generates a "aws/request.Request" representing the // client's request for the CreateAccessKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateAccessKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateAccessKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateAccessKeyRequest method. // req, resp := client.CreateAccessKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) CreateAccessKeyRequest(input *CreateAccessKeyInput) (req *request.Request, output *CreateAccessKeyOutput) { op := &request.Operation{ Name: opCreateAccessKey, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateAccessKeyInput{} } req = c.newRequest(op, input, output) output = &CreateAccessKeyOutput{} req.Data = output return } // CreateAccessKey API operation for AWS Identity and Access Management. // // Creates a new AWS secret access key and corresponding AWS access key ID for // the specified user. The default status for new keys is Active. // // If you do not specify a user name, IAM determines the user name implicitly // based on the AWS access key ID signing the request. Because this action works // for access keys under the AWS account, you can use this action to manage // root credentials even if the AWS account has no associated users. // // For information about limits on the number of keys you can create, see Limitations // on IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) // in the IAM User Guide. // // To ensure the security of your AWS account, the secret access key is accessible // only during key and user creation. You must save the key (for example, in // a text file) if you want to be able to access it again. If a secret key is // lost, you can delete the access keys for the associated user and then create // new keys. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation CreateAccessKey for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) CreateAccessKey(input *CreateAccessKeyInput) (*CreateAccessKeyOutput, error) { req, out := c.CreateAccessKeyRequest(input) err := req.Send() return out, err } const opCreateAccountAlias = "CreateAccountAlias" // CreateAccountAliasRequest generates a "aws/request.Request" representing the // client's request for the CreateAccountAlias operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateAccountAlias for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateAccountAlias method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateAccountAliasRequest method. // req, resp := client.CreateAccountAliasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) CreateAccountAliasRequest(input *CreateAccountAliasInput) (req *request.Request, output *CreateAccountAliasOutput) { op := &request.Operation{ Name: opCreateAccountAlias, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateAccountAliasInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CreateAccountAliasOutput{} req.Data = output return } // CreateAccountAlias API operation for AWS Identity and Access Management. // // Creates an alias for your AWS account. For information about using an AWS // account alias, see Using an Alias for Your AWS Account ID (http://docs.aws.amazon.com/IAM/latest/UserGuide/AccountAlias.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation CreateAccountAlias for usage and error information. // // Returned Error Codes: // * EntityAlreadyExists // The request was rejected because it attempted to create a resource that already // exists. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) CreateAccountAlias(input *CreateAccountAliasInput) (*CreateAccountAliasOutput, error) { req, out := c.CreateAccountAliasRequest(input) err := req.Send() return out, err } const opCreateGroup = "CreateGroup" // CreateGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateGroupRequest method. // req, resp := client.CreateGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) CreateGroupRequest(input *CreateGroupInput) (req *request.Request, output *CreateGroupOutput) { op := &request.Operation{ Name: opCreateGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateGroupInput{} } req = c.newRequest(op, input, output) output = &CreateGroupOutput{} req.Data = output return } // CreateGroup API operation for AWS Identity and Access Management. // // Creates a new group. // // For information about the number of groups you can create, see Limitations // on IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation CreateGroup for usage and error information. // // Returned Error Codes: // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * EntityAlreadyExists // The request was rejected because it attempted to create a resource that already // exists. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) CreateGroup(input *CreateGroupInput) (*CreateGroupOutput, error) { req, out := c.CreateGroupRequest(input) err := req.Send() return out, err } const opCreateInstanceProfile = "CreateInstanceProfile" // CreateInstanceProfileRequest generates a "aws/request.Request" representing the // client's request for the CreateInstanceProfile operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateInstanceProfile for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateInstanceProfile method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateInstanceProfileRequest method. // req, resp := client.CreateInstanceProfileRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) CreateInstanceProfileRequest(input *CreateInstanceProfileInput) (req *request.Request, output *CreateInstanceProfileOutput) { op := &request.Operation{ Name: opCreateInstanceProfile, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateInstanceProfileInput{} } req = c.newRequest(op, input, output) output = &CreateInstanceProfileOutput{} req.Data = output return } // CreateInstanceProfile API operation for AWS Identity and Access Management. // // Creates a new instance profile. For information about instance profiles, // go to About Instance Profiles (http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html). // // For information about the number of instance profiles you can create, see // Limitations on IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation CreateInstanceProfile for usage and error information. // // Returned Error Codes: // * EntityAlreadyExists // The request was rejected because it attempted to create a resource that already // exists. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) CreateInstanceProfile(input *CreateInstanceProfileInput) (*CreateInstanceProfileOutput, error) { req, out := c.CreateInstanceProfileRequest(input) err := req.Send() return out, err } const opCreateLoginProfile = "CreateLoginProfile" // CreateLoginProfileRequest generates a "aws/request.Request" representing the // client's request for the CreateLoginProfile operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateLoginProfile for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateLoginProfile method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateLoginProfileRequest method. // req, resp := client.CreateLoginProfileRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) CreateLoginProfileRequest(input *CreateLoginProfileInput) (req *request.Request, output *CreateLoginProfileOutput) { op := &request.Operation{ Name: opCreateLoginProfile, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateLoginProfileInput{} } req = c.newRequest(op, input, output) output = &CreateLoginProfileOutput{} req.Data = output return } // CreateLoginProfile API operation for AWS Identity and Access Management. // // Creates a password for the specified user, giving the user the ability to // access AWS services through the AWS Management Console. For more information // about managing passwords, see Managing Passwords (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingLogins.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation CreateLoginProfile for usage and error information. // // Returned Error Codes: // * EntityAlreadyExists // The request was rejected because it attempted to create a resource that already // exists. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * PasswordPolicyViolation // The request was rejected because the provided password did not meet the requirements // imposed by the account password policy. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) CreateLoginProfile(input *CreateLoginProfileInput) (*CreateLoginProfileOutput, error) { req, out := c.CreateLoginProfileRequest(input) err := req.Send() return out, err } const opCreateOpenIDConnectProvider = "CreateOpenIDConnectProvider" // CreateOpenIDConnectProviderRequest generates a "aws/request.Request" representing the // client's request for the CreateOpenIDConnectProvider operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateOpenIDConnectProvider for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateOpenIDConnectProvider method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateOpenIDConnectProviderRequest method. // req, resp := client.CreateOpenIDConnectProviderRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) CreateOpenIDConnectProviderRequest(input *CreateOpenIDConnectProviderInput) (req *request.Request, output *CreateOpenIDConnectProviderOutput) { op := &request.Operation{ Name: opCreateOpenIDConnectProvider, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateOpenIDConnectProviderInput{} } req = c.newRequest(op, input, output) output = &CreateOpenIDConnectProviderOutput{} req.Data = output return } // CreateOpenIDConnectProvider API operation for AWS Identity and Access Management. // // Creates an IAM entity to describe an identity provider (IdP) that supports // OpenID Connect (OIDC) (http://openid.net/connect/). // // The OIDC provider that you create with this operation can be used as a principal // in a role's trust policy to establish a trust relationship between AWS and // the OIDC provider. // // When you create the IAM OIDC provider, you specify the URL of the OIDC identity // provider (IdP) to trust, a list of client IDs (also known as audiences) that // identify the application or applications that are allowed to authenticate // using the OIDC provider, and a list of thumbprints of the server certificate(s) // that the IdP uses. You get all of this information from the OIDC IdP that // you want to use for access to AWS. // // Because trust for the OIDC provider is ultimately derived from the IAM provider // that this action creates, it is a best practice to limit access to the CreateOpenIDConnectProvider // action to highly-privileged users. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation CreateOpenIDConnectProvider for usage and error information. // // Returned Error Codes: // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * EntityAlreadyExists // The request was rejected because it attempted to create a resource that already // exists. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) CreateOpenIDConnectProvider(input *CreateOpenIDConnectProviderInput) (*CreateOpenIDConnectProviderOutput, error) { req, out := c.CreateOpenIDConnectProviderRequest(input) err := req.Send() return out, err } const opCreatePolicy = "CreatePolicy" // CreatePolicyRequest generates a "aws/request.Request" representing the // client's request for the CreatePolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreatePolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreatePolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreatePolicyRequest method. // req, resp := client.CreatePolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) CreatePolicyRequest(input *CreatePolicyInput) (req *request.Request, output *CreatePolicyOutput) { op := &request.Operation{ Name: opCreatePolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreatePolicyInput{} } req = c.newRequest(op, input, output) output = &CreatePolicyOutput{} req.Data = output return } // CreatePolicy API operation for AWS Identity and Access Management. // // Creates a new managed policy for your AWS account. // // This operation creates a policy version with a version identifier of v1 and // sets v1 as the policy's default version. For more information about policy // versions, see Versioning for Managed Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) // in the IAM User Guide. // // For more information about managed policies in general, see Managed Policies // and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation CreatePolicy for usage and error information. // // Returned Error Codes: // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * EntityAlreadyExists // The request was rejected because it attempted to create a resource that already // exists. // // * MalformedPolicyDocument // The request was rejected because the policy document was malformed. The error // message describes the specific error. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) CreatePolicy(input *CreatePolicyInput) (*CreatePolicyOutput, error) { req, out := c.CreatePolicyRequest(input) err := req.Send() return out, err } const opCreatePolicyVersion = "CreatePolicyVersion" // CreatePolicyVersionRequest generates a "aws/request.Request" representing the // client's request for the CreatePolicyVersion operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreatePolicyVersion for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreatePolicyVersion method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreatePolicyVersionRequest method. // req, resp := client.CreatePolicyVersionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) CreatePolicyVersionRequest(input *CreatePolicyVersionInput) (req *request.Request, output *CreatePolicyVersionOutput) { op := &request.Operation{ Name: opCreatePolicyVersion, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreatePolicyVersionInput{} } req = c.newRequest(op, input, output) output = &CreatePolicyVersionOutput{} req.Data = output return } // CreatePolicyVersion API operation for AWS Identity and Access Management. // // Creates a new version of the specified managed policy. To update a managed // policy, you create a new policy version. A managed policy can have up to // five versions. If the policy has five versions, you must delete an existing // version using DeletePolicyVersion before you create a new version. // // Optionally, you can set the new version as the policy's default version. // The default version is the version that is in effect for the IAM users, groups, // and roles to which the policy is attached. // // For more information about managed policy versions, see Versioning for Managed // Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation CreatePolicyVersion for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * MalformedPolicyDocument // The request was rejected because the policy document was malformed. The error // message describes the specific error. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) CreatePolicyVersion(input *CreatePolicyVersionInput) (*CreatePolicyVersionOutput, error) { req, out := c.CreatePolicyVersionRequest(input) err := req.Send() return out, err } const opCreateRole = "CreateRole" // CreateRoleRequest generates a "aws/request.Request" representing the // client's request for the CreateRole operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateRole for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateRole method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateRoleRequest method. // req, resp := client.CreateRoleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) CreateRoleRequest(input *CreateRoleInput) (req *request.Request, output *CreateRoleOutput) { op := &request.Operation{ Name: opCreateRole, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateRoleInput{} } req = c.newRequest(op, input, output) output = &CreateRoleOutput{} req.Data = output return } // CreateRole API operation for AWS Identity and Access Management. // // Creates a new role for your AWS account. For more information about roles, // go to Working with Roles (http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html). // For information about limitations on role names and the number of roles you // can create, go to Limitations on IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation CreateRole for usage and error information. // // Returned Error Codes: // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * EntityAlreadyExists // The request was rejected because it attempted to create a resource that already // exists. // // * MalformedPolicyDocument // The request was rejected because the policy document was malformed. The error // message describes the specific error. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) CreateRole(input *CreateRoleInput) (*CreateRoleOutput, error) { req, out := c.CreateRoleRequest(input) err := req.Send() return out, err } const opCreateSAMLProvider = "CreateSAMLProvider" // CreateSAMLProviderRequest generates a "aws/request.Request" representing the // client's request for the CreateSAMLProvider operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateSAMLProvider for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateSAMLProvider method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateSAMLProviderRequest method. // req, resp := client.CreateSAMLProviderRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) CreateSAMLProviderRequest(input *CreateSAMLProviderInput) (req *request.Request, output *CreateSAMLProviderOutput) { op := &request.Operation{ Name: opCreateSAMLProvider, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateSAMLProviderInput{} } req = c.newRequest(op, input, output) output = &CreateSAMLProviderOutput{} req.Data = output return } // CreateSAMLProvider API operation for AWS Identity and Access Management. // // Creates an IAM resource that describes an identity provider (IdP) that supports // SAML 2.0. // // The SAML provider resource that you create with this operation can be used // as a principal in an IAM role's trust policy to enable federated users who // sign-in using the SAML IdP to assume the role. You can create an IAM role // that supports Web-based single sign-on (SSO) to the AWS Management Console // or one that supports API access to AWS. // // When you create the SAML provider resource, you upload an a SAML metadata // document that you get from your IdP and that includes the issuer's name, // expiration information, and keys that can be used to validate the SAML authentication // response (assertions) that the IdP sends. You must generate the metadata // document using the identity management software that is used as your organization's // IdP. // // This operation requires Signature Version 4 (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). // // For more information, see Enabling SAML 2.0 Federated Users to Access the // AWS Management Console (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-console-saml.html) // and About SAML 2.0-based Federation (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation CreateSAMLProvider for usage and error information. // // Returned Error Codes: // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * EntityAlreadyExists // The request was rejected because it attempted to create a resource that already // exists. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) CreateSAMLProvider(input *CreateSAMLProviderInput) (*CreateSAMLProviderOutput, error) { req, out := c.CreateSAMLProviderRequest(input) err := req.Send() return out, err } const opCreateUser = "CreateUser" // CreateUserRequest generates a "aws/request.Request" representing the // client's request for the CreateUser operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateUser for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateUser method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateUserRequest method. // req, resp := client.CreateUserRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) CreateUserRequest(input *CreateUserInput) (req *request.Request, output *CreateUserOutput) { op := &request.Operation{ Name: opCreateUser, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateUserInput{} } req = c.newRequest(op, input, output) output = &CreateUserOutput{} req.Data = output return } // CreateUser API operation for AWS Identity and Access Management. // // Creates a new IAM user for your AWS account. // // For information about limitations on the number of IAM users you can create, // see Limitations on IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation CreateUser for usage and error information. // // Returned Error Codes: // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * EntityAlreadyExists // The request was rejected because it attempted to create a resource that already // exists. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) CreateUser(input *CreateUserInput) (*CreateUserOutput, error) { req, out := c.CreateUserRequest(input) err := req.Send() return out, err } const opCreateVirtualMFADevice = "CreateVirtualMFADevice" // CreateVirtualMFADeviceRequest generates a "aws/request.Request" representing the // client's request for the CreateVirtualMFADevice operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateVirtualMFADevice for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateVirtualMFADevice method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateVirtualMFADeviceRequest method. // req, resp := client.CreateVirtualMFADeviceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) CreateVirtualMFADeviceRequest(input *CreateVirtualMFADeviceInput) (req *request.Request, output *CreateVirtualMFADeviceOutput) { op := &request.Operation{ Name: opCreateVirtualMFADevice, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateVirtualMFADeviceInput{} } req = c.newRequest(op, input, output) output = &CreateVirtualMFADeviceOutput{} req.Data = output return } // CreateVirtualMFADevice API operation for AWS Identity and Access Management. // // Creates a new virtual MFA device for the AWS account. After creating the // virtual MFA, use EnableMFADevice to attach the MFA device to an IAM user. // For more information about creating and working with virtual MFA devices, // go to Using a Virtual MFA Device (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_VirtualMFA.html) // in the IAM User Guide. // // For information about limits on the number of MFA devices you can create, // see Limitations on Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) // in the IAM User Guide. // // The seed information contained in the QR code and the Base32 string should // be treated like any other secret access information, such as your AWS access // keys or your passwords. After you provision your virtual device, you should // ensure that the information is destroyed following secure procedures. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation CreateVirtualMFADevice for usage and error information. // // Returned Error Codes: // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * EntityAlreadyExists // The request was rejected because it attempted to create a resource that already // exists. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) CreateVirtualMFADevice(input *CreateVirtualMFADeviceInput) (*CreateVirtualMFADeviceOutput, error) { req, out := c.CreateVirtualMFADeviceRequest(input) err := req.Send() return out, err } const opDeactivateMFADevice = "DeactivateMFADevice" // DeactivateMFADeviceRequest generates a "aws/request.Request" representing the // client's request for the DeactivateMFADevice operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeactivateMFADevice for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeactivateMFADevice method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeactivateMFADeviceRequest method. // req, resp := client.DeactivateMFADeviceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeactivateMFADeviceRequest(input *DeactivateMFADeviceInput) (req *request.Request, output *DeactivateMFADeviceOutput) { op := &request.Operation{ Name: opDeactivateMFADevice, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeactivateMFADeviceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeactivateMFADeviceOutput{} req.Data = output return } // DeactivateMFADevice API operation for AWS Identity and Access Management. // // Deactivates the specified MFA device and removes it from association with // the user name for which it was originally enabled. // // For more information about creating and working with virtual MFA devices, // go to Using a Virtual MFA Device (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_VirtualMFA.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeactivateMFADevice for usage and error information. // // Returned Error Codes: // * EntityTemporarilyUnmodifiable // The request was rejected because it referenced an entity that is temporarily // unmodifiable, such as a user name that was deleted and then recreated. The // error indicates that the request is likely to succeed if you try again after // waiting several minutes. The error message describes the entity. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeactivateMFADevice(input *DeactivateMFADeviceInput) (*DeactivateMFADeviceOutput, error) { req, out := c.DeactivateMFADeviceRequest(input) err := req.Send() return out, err } const opDeleteAccessKey = "DeleteAccessKey" // DeleteAccessKeyRequest generates a "aws/request.Request" representing the // client's request for the DeleteAccessKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteAccessKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteAccessKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteAccessKeyRequest method. // req, resp := client.DeleteAccessKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeleteAccessKeyRequest(input *DeleteAccessKeyInput) (req *request.Request, output *DeleteAccessKeyOutput) { op := &request.Operation{ Name: opDeleteAccessKey, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteAccessKeyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteAccessKeyOutput{} req.Data = output return } // DeleteAccessKey API operation for AWS Identity and Access Management. // // Deletes the access key pair associated with the specified IAM user. // // If you do not specify a user name, IAM determines the user name implicitly // based on the AWS access key ID signing the request. Because this action works // for access keys under the AWS account, you can use this action to manage // root credentials even if the AWS account has no associated users. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeleteAccessKey for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeleteAccessKey(input *DeleteAccessKeyInput) (*DeleteAccessKeyOutput, error) { req, out := c.DeleteAccessKeyRequest(input) err := req.Send() return out, err } const opDeleteAccountAlias = "DeleteAccountAlias" // DeleteAccountAliasRequest generates a "aws/request.Request" representing the // client's request for the DeleteAccountAlias operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteAccountAlias for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteAccountAlias method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteAccountAliasRequest method. // req, resp := client.DeleteAccountAliasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeleteAccountAliasRequest(input *DeleteAccountAliasInput) (req *request.Request, output *DeleteAccountAliasOutput) { op := &request.Operation{ Name: opDeleteAccountAlias, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteAccountAliasInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteAccountAliasOutput{} req.Data = output return } // DeleteAccountAlias API operation for AWS Identity and Access Management. // // Deletes the specified AWS account alias. For information about using an AWS // account alias, see Using an Alias for Your AWS Account ID (http://docs.aws.amazon.com/IAM/latest/UserGuide/AccountAlias.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeleteAccountAlias for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeleteAccountAlias(input *DeleteAccountAliasInput) (*DeleteAccountAliasOutput, error) { req, out := c.DeleteAccountAliasRequest(input) err := req.Send() return out, err } const opDeleteAccountPasswordPolicy = "DeleteAccountPasswordPolicy" // DeleteAccountPasswordPolicyRequest generates a "aws/request.Request" representing the // client's request for the DeleteAccountPasswordPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteAccountPasswordPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteAccountPasswordPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteAccountPasswordPolicyRequest method. // req, resp := client.DeleteAccountPasswordPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeleteAccountPasswordPolicyRequest(input *DeleteAccountPasswordPolicyInput) (req *request.Request, output *DeleteAccountPasswordPolicyOutput) { op := &request.Operation{ Name: opDeleteAccountPasswordPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteAccountPasswordPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteAccountPasswordPolicyOutput{} req.Data = output return } // DeleteAccountPasswordPolicy API operation for AWS Identity and Access Management. // // Deletes the password policy for the AWS account. There are no parameters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeleteAccountPasswordPolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeleteAccountPasswordPolicy(input *DeleteAccountPasswordPolicyInput) (*DeleteAccountPasswordPolicyOutput, error) { req, out := c.DeleteAccountPasswordPolicyRequest(input) err := req.Send() return out, err } const opDeleteGroup = "DeleteGroup" // DeleteGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteGroupRequest method. // req, resp := client.DeleteGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeleteGroupRequest(input *DeleteGroupInput) (req *request.Request, output *DeleteGroupOutput) { op := &request.Operation{ Name: opDeleteGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteGroupOutput{} req.Data = output return } // DeleteGroup API operation for AWS Identity and Access Management. // // Deletes the specified IAM group. The group must not contain any users or // have any attached policies. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeleteGroup for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * DeleteConflict // The request was rejected because it attempted to delete a resource that has // attached subordinate entities. The error message describes these entities. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeleteGroup(input *DeleteGroupInput) (*DeleteGroupOutput, error) { req, out := c.DeleteGroupRequest(input) err := req.Send() return out, err } const opDeleteGroupPolicy = "DeleteGroupPolicy" // DeleteGroupPolicyRequest generates a "aws/request.Request" representing the // client's request for the DeleteGroupPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteGroupPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteGroupPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteGroupPolicyRequest method. // req, resp := client.DeleteGroupPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeleteGroupPolicyRequest(input *DeleteGroupPolicyInput) (req *request.Request, output *DeleteGroupPolicyOutput) { op := &request.Operation{ Name: opDeleteGroupPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteGroupPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteGroupPolicyOutput{} req.Data = output return } // DeleteGroupPolicy API operation for AWS Identity and Access Management. // // Deletes the specified inline policy that is embedded in the specified IAM // group. // // A group can also have managed policies attached to it. To detach a managed // policy from a group, use DetachGroupPolicy. For more information about policies, // refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeleteGroupPolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeleteGroupPolicy(input *DeleteGroupPolicyInput) (*DeleteGroupPolicyOutput, error) { req, out := c.DeleteGroupPolicyRequest(input) err := req.Send() return out, err } const opDeleteInstanceProfile = "DeleteInstanceProfile" // DeleteInstanceProfileRequest generates a "aws/request.Request" representing the // client's request for the DeleteInstanceProfile operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteInstanceProfile for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteInstanceProfile method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteInstanceProfileRequest method. // req, resp := client.DeleteInstanceProfileRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeleteInstanceProfileRequest(input *DeleteInstanceProfileInput) (req *request.Request, output *DeleteInstanceProfileOutput) { op := &request.Operation{ Name: opDeleteInstanceProfile, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteInstanceProfileInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteInstanceProfileOutput{} req.Data = output return } // DeleteInstanceProfile API operation for AWS Identity and Access Management. // // Deletes the specified instance profile. The instance profile must not have // an associated role. // // Make sure you do not have any Amazon EC2 instances running with the instance // profile you are about to delete. Deleting a role or instance profile that // is associated with a running instance will break any applications running // on the instance. // // For more information about instance profiles, go to About Instance Profiles // (http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeleteInstanceProfile for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * DeleteConflict // The request was rejected because it attempted to delete a resource that has // attached subordinate entities. The error message describes these entities. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeleteInstanceProfile(input *DeleteInstanceProfileInput) (*DeleteInstanceProfileOutput, error) { req, out := c.DeleteInstanceProfileRequest(input) err := req.Send() return out, err } const opDeleteLoginProfile = "DeleteLoginProfile" // DeleteLoginProfileRequest generates a "aws/request.Request" representing the // client's request for the DeleteLoginProfile operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteLoginProfile for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteLoginProfile method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteLoginProfileRequest method. // req, resp := client.DeleteLoginProfileRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeleteLoginProfileRequest(input *DeleteLoginProfileInput) (req *request.Request, output *DeleteLoginProfileOutput) { op := &request.Operation{ Name: opDeleteLoginProfile, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteLoginProfileInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteLoginProfileOutput{} req.Data = output return } // DeleteLoginProfile API operation for AWS Identity and Access Management. // // Deletes the password for the specified IAM user, which terminates the user's // ability to access AWS services through the AWS Management Console. // // Deleting a user's password does not prevent a user from accessing AWS through // the command line interface or the API. To prevent all user access you must // also either make any access keys inactive or delete them. For more information // about making keys inactive or deleting them, see UpdateAccessKey and DeleteAccessKey. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeleteLoginProfile for usage and error information. // // Returned Error Codes: // * EntityTemporarilyUnmodifiable // The request was rejected because it referenced an entity that is temporarily // unmodifiable, such as a user name that was deleted and then recreated. The // error indicates that the request is likely to succeed if you try again after // waiting several minutes. The error message describes the entity. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeleteLoginProfile(input *DeleteLoginProfileInput) (*DeleteLoginProfileOutput, error) { req, out := c.DeleteLoginProfileRequest(input) err := req.Send() return out, err } const opDeleteOpenIDConnectProvider = "DeleteOpenIDConnectProvider" // DeleteOpenIDConnectProviderRequest generates a "aws/request.Request" representing the // client's request for the DeleteOpenIDConnectProvider operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteOpenIDConnectProvider for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteOpenIDConnectProvider method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteOpenIDConnectProviderRequest method. // req, resp := client.DeleteOpenIDConnectProviderRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeleteOpenIDConnectProviderRequest(input *DeleteOpenIDConnectProviderInput) (req *request.Request, output *DeleteOpenIDConnectProviderOutput) { op := &request.Operation{ Name: opDeleteOpenIDConnectProvider, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteOpenIDConnectProviderInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteOpenIDConnectProviderOutput{} req.Data = output return } // DeleteOpenIDConnectProvider API operation for AWS Identity and Access Management. // // Deletes an OpenID Connect identity provider (IdP) resource object in IAM. // // Deleting an IAM OIDC provider resource does not update any roles that reference // the provider as a principal in their trust policies. Any attempt to assume // a role that references a deleted provider fails. // // This action is idempotent; it does not fail or return an error if you call // the action for a provider that does not exist. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeleteOpenIDConnectProvider for usage and error information. // // Returned Error Codes: // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeleteOpenIDConnectProvider(input *DeleteOpenIDConnectProviderInput) (*DeleteOpenIDConnectProviderOutput, error) { req, out := c.DeleteOpenIDConnectProviderRequest(input) err := req.Send() return out, err } const opDeletePolicy = "DeletePolicy" // DeletePolicyRequest generates a "aws/request.Request" representing the // client's request for the DeletePolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeletePolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeletePolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeletePolicyRequest method. // req, resp := client.DeletePolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeletePolicyRequest(input *DeletePolicyInput) (req *request.Request, output *DeletePolicyOutput) { op := &request.Operation{ Name: opDeletePolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeletePolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeletePolicyOutput{} req.Data = output return } // DeletePolicy API operation for AWS Identity and Access Management. // // Deletes the specified managed policy. // // Before you can delete a managed policy, you must first detach the policy // from all users, groups, and roles that it is attached to, and you must delete // all of the policy's versions. The following steps describe the process for // deleting a managed policy: // // * Detach the policy from all users, groups, and roles that the policy // is attached to, using the DetachUserPolicy, DetachGroupPolicy, or DetachRolePolicy // APIs. To list all the users, groups, and roles that a policy is attached // to, use ListEntitiesForPolicy. // // * Delete all versions of the policy using DeletePolicyVersion. To list // the policy's versions, use ListPolicyVersions. You cannot use DeletePolicyVersion // to delete the version that is marked as the default version. You delete // the policy's default version in the next step of the process. // // * Delete the policy (this automatically deletes the policy's default version) // using this API. // // For information about managed policies, see Managed Policies and Inline Policies // (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeletePolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * DeleteConflict // The request was rejected because it attempted to delete a resource that has // attached subordinate entities. The error message describes these entities. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeletePolicy(input *DeletePolicyInput) (*DeletePolicyOutput, error) { req, out := c.DeletePolicyRequest(input) err := req.Send() return out, err } const opDeletePolicyVersion = "DeletePolicyVersion" // DeletePolicyVersionRequest generates a "aws/request.Request" representing the // client's request for the DeletePolicyVersion operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeletePolicyVersion for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeletePolicyVersion method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeletePolicyVersionRequest method. // req, resp := client.DeletePolicyVersionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeletePolicyVersionRequest(input *DeletePolicyVersionInput) (req *request.Request, output *DeletePolicyVersionOutput) { op := &request.Operation{ Name: opDeletePolicyVersion, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeletePolicyVersionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeletePolicyVersionOutput{} req.Data = output return } // DeletePolicyVersion API operation for AWS Identity and Access Management. // // Deletes the specified version from the specified managed policy. // // You cannot delete the default version from a policy using this API. To delete // the default version from a policy, use DeletePolicy. To find out which version // of a policy is marked as the default version, use ListPolicyVersions. // // For information about versions for managed policies, see Versioning for Managed // Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeletePolicyVersion for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * DeleteConflict // The request was rejected because it attempted to delete a resource that has // attached subordinate entities. The error message describes these entities. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeletePolicyVersion(input *DeletePolicyVersionInput) (*DeletePolicyVersionOutput, error) { req, out := c.DeletePolicyVersionRequest(input) err := req.Send() return out, err } const opDeleteRole = "DeleteRole" // DeleteRoleRequest generates a "aws/request.Request" representing the // client's request for the DeleteRole operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteRole for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteRole method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteRoleRequest method. // req, resp := client.DeleteRoleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeleteRoleRequest(input *DeleteRoleInput) (req *request.Request, output *DeleteRoleOutput) { op := &request.Operation{ Name: opDeleteRole, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteRoleInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteRoleOutput{} req.Data = output return } // DeleteRole API operation for AWS Identity and Access Management. // // Deletes the specified role. The role must not have any policies attached. // For more information about roles, go to Working with Roles (http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html). // // Make sure you do not have any Amazon EC2 instances running with the role // you are about to delete. Deleting a role or instance profile that is associated // with a running instance will break any applications running on the instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeleteRole for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * DeleteConflict // The request was rejected because it attempted to delete a resource that has // attached subordinate entities. The error message describes these entities. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeleteRole(input *DeleteRoleInput) (*DeleteRoleOutput, error) { req, out := c.DeleteRoleRequest(input) err := req.Send() return out, err } const opDeleteRolePolicy = "DeleteRolePolicy" // DeleteRolePolicyRequest generates a "aws/request.Request" representing the // client's request for the DeleteRolePolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteRolePolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteRolePolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteRolePolicyRequest method. // req, resp := client.DeleteRolePolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeleteRolePolicyRequest(input *DeleteRolePolicyInput) (req *request.Request, output *DeleteRolePolicyOutput) { op := &request.Operation{ Name: opDeleteRolePolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteRolePolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteRolePolicyOutput{} req.Data = output return } // DeleteRolePolicy API operation for AWS Identity and Access Management. // // Deletes the specified inline policy that is embedded in the specified IAM // role. // // A role can also have managed policies attached to it. To detach a managed // policy from a role, use DetachRolePolicy. For more information about policies, // refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeleteRolePolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeleteRolePolicy(input *DeleteRolePolicyInput) (*DeleteRolePolicyOutput, error) { req, out := c.DeleteRolePolicyRequest(input) err := req.Send() return out, err } const opDeleteSAMLProvider = "DeleteSAMLProvider" // DeleteSAMLProviderRequest generates a "aws/request.Request" representing the // client's request for the DeleteSAMLProvider operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteSAMLProvider for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteSAMLProvider method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteSAMLProviderRequest method. // req, resp := client.DeleteSAMLProviderRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeleteSAMLProviderRequest(input *DeleteSAMLProviderInput) (req *request.Request, output *DeleteSAMLProviderOutput) { op := &request.Operation{ Name: opDeleteSAMLProvider, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteSAMLProviderInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteSAMLProviderOutput{} req.Data = output return } // DeleteSAMLProvider API operation for AWS Identity and Access Management. // // Deletes a SAML provider resource in IAM. // // Deleting the provider resource from IAM does not update any roles that reference // the SAML provider resource's ARN as a principal in their trust policies. // Any attempt to assume a role that references a non-existent provider resource // ARN fails. // // This operation requires Signature Version 4 (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeleteSAMLProvider for usage and error information. // // Returned Error Codes: // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeleteSAMLProvider(input *DeleteSAMLProviderInput) (*DeleteSAMLProviderOutput, error) { req, out := c.DeleteSAMLProviderRequest(input) err := req.Send() return out, err } const opDeleteSSHPublicKey = "DeleteSSHPublicKey" // DeleteSSHPublicKeyRequest generates a "aws/request.Request" representing the // client's request for the DeleteSSHPublicKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteSSHPublicKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteSSHPublicKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteSSHPublicKeyRequest method. // req, resp := client.DeleteSSHPublicKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeleteSSHPublicKeyRequest(input *DeleteSSHPublicKeyInput) (req *request.Request, output *DeleteSSHPublicKeyOutput) { op := &request.Operation{ Name: opDeleteSSHPublicKey, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteSSHPublicKeyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteSSHPublicKeyOutput{} req.Data = output return } // DeleteSSHPublicKey API operation for AWS Identity and Access Management. // // Deletes the specified SSH public key. // // The SSH public key deleted by this action is used only for authenticating // the associated IAM user to an AWS CodeCommit repository. For more information // about using SSH keys to authenticate to an AWS CodeCommit repository, see // Set up AWS CodeCommit for SSH Connections (http://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html) // in the AWS CodeCommit User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeleteSSHPublicKey for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // func (c *IAM) DeleteSSHPublicKey(input *DeleteSSHPublicKeyInput) (*DeleteSSHPublicKeyOutput, error) { req, out := c.DeleteSSHPublicKeyRequest(input) err := req.Send() return out, err } const opDeleteServerCertificate = "DeleteServerCertificate" // DeleteServerCertificateRequest generates a "aws/request.Request" representing the // client's request for the DeleteServerCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteServerCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteServerCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteServerCertificateRequest method. // req, resp := client.DeleteServerCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeleteServerCertificateRequest(input *DeleteServerCertificateInput) (req *request.Request, output *DeleteServerCertificateOutput) { op := &request.Operation{ Name: opDeleteServerCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteServerCertificateInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteServerCertificateOutput{} req.Data = output return } // DeleteServerCertificate API operation for AWS Identity and Access Management. // // Deletes the specified server certificate. // // For more information about working with server certificates, including a // list of AWS services that can use the server certificates that you manage // with IAM, go to Working with Server Certificates (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html) // in the IAM User Guide. // // If you are using a server certificate with Elastic Load Balancing, deleting // the certificate could have implications for your application. If Elastic // Load Balancing doesn't detect the deletion of bound certificates, it may // continue to use the certificates. This could cause Elastic Load Balancing // to stop accepting traffic. We recommend that you remove the reference to // the certificate from Elastic Load Balancing before using this command to // delete the certificate. For more information, go to DeleteLoadBalancerListeners // (http://docs.aws.amazon.com/ElasticLoadBalancing/latest/APIReference/API_DeleteLoadBalancerListeners.html) // in the Elastic Load Balancing API Reference. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeleteServerCertificate for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * DeleteConflict // The request was rejected because it attempted to delete a resource that has // attached subordinate entities. The error message describes these entities. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeleteServerCertificate(input *DeleteServerCertificateInput) (*DeleteServerCertificateOutput, error) { req, out := c.DeleteServerCertificateRequest(input) err := req.Send() return out, err } const opDeleteSigningCertificate = "DeleteSigningCertificate" // DeleteSigningCertificateRequest generates a "aws/request.Request" representing the // client's request for the DeleteSigningCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteSigningCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteSigningCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteSigningCertificateRequest method. // req, resp := client.DeleteSigningCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeleteSigningCertificateRequest(input *DeleteSigningCertificateInput) (req *request.Request, output *DeleteSigningCertificateOutput) { op := &request.Operation{ Name: opDeleteSigningCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteSigningCertificateInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteSigningCertificateOutput{} req.Data = output return } // DeleteSigningCertificate API operation for AWS Identity and Access Management. // // Deletes a signing certificate associated with the specified IAM user. // // If you do not specify a user name, IAM determines the user name implicitly // based on the AWS access key ID signing the request. Because this action works // for access keys under the AWS account, you can use this action to manage // root credentials even if the AWS account has no associated IAM users. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeleteSigningCertificate for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeleteSigningCertificate(input *DeleteSigningCertificateInput) (*DeleteSigningCertificateOutput, error) { req, out := c.DeleteSigningCertificateRequest(input) err := req.Send() return out, err } const opDeleteUser = "DeleteUser" // DeleteUserRequest generates a "aws/request.Request" representing the // client's request for the DeleteUser operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteUser for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteUser method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteUserRequest method. // req, resp := client.DeleteUserRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeleteUserRequest(input *DeleteUserInput) (req *request.Request, output *DeleteUserOutput) { op := &request.Operation{ Name: opDeleteUser, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteUserInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteUserOutput{} req.Data = output return } // DeleteUser API operation for AWS Identity and Access Management. // // Deletes the specified IAM user. The user must not belong to any groups or // have any access keys, signing certificates, or attached policies. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeleteUser for usage and error information. // // Returned Error Codes: // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * DeleteConflict // The request was rejected because it attempted to delete a resource that has // attached subordinate entities. The error message describes these entities. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeleteUser(input *DeleteUserInput) (*DeleteUserOutput, error) { req, out := c.DeleteUserRequest(input) err := req.Send() return out, err } const opDeleteUserPolicy = "DeleteUserPolicy" // DeleteUserPolicyRequest generates a "aws/request.Request" representing the // client's request for the DeleteUserPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteUserPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteUserPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteUserPolicyRequest method. // req, resp := client.DeleteUserPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeleteUserPolicyRequest(input *DeleteUserPolicyInput) (req *request.Request, output *DeleteUserPolicyOutput) { op := &request.Operation{ Name: opDeleteUserPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteUserPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteUserPolicyOutput{} req.Data = output return } // DeleteUserPolicy API operation for AWS Identity and Access Management. // // Deletes the specified inline policy that is embedded in the specified IAM // user. // // A user can also have managed policies attached to it. To detach a managed // policy from a user, use DetachUserPolicy. For more information about policies, // refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeleteUserPolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeleteUserPolicy(input *DeleteUserPolicyInput) (*DeleteUserPolicyOutput, error) { req, out := c.DeleteUserPolicyRequest(input) err := req.Send() return out, err } const opDeleteVirtualMFADevice = "DeleteVirtualMFADevice" // DeleteVirtualMFADeviceRequest generates a "aws/request.Request" representing the // client's request for the DeleteVirtualMFADevice operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteVirtualMFADevice for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteVirtualMFADevice method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteVirtualMFADeviceRequest method. // req, resp := client.DeleteVirtualMFADeviceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DeleteVirtualMFADeviceRequest(input *DeleteVirtualMFADeviceInput) (req *request.Request, output *DeleteVirtualMFADeviceOutput) { op := &request.Operation{ Name: opDeleteVirtualMFADevice, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteVirtualMFADeviceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteVirtualMFADeviceOutput{} req.Data = output return } // DeleteVirtualMFADevice API operation for AWS Identity and Access Management. // // Deletes a virtual MFA device. // // You must deactivate a user's virtual MFA device before you can delete it. // For information about deactivating MFA devices, see DeactivateMFADevice. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DeleteVirtualMFADevice for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * DeleteConflict // The request was rejected because it attempted to delete a resource that has // attached subordinate entities. The error message describes these entities. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DeleteVirtualMFADevice(input *DeleteVirtualMFADeviceInput) (*DeleteVirtualMFADeviceOutput, error) { req, out := c.DeleteVirtualMFADeviceRequest(input) err := req.Send() return out, err } const opDetachGroupPolicy = "DetachGroupPolicy" // DetachGroupPolicyRequest generates a "aws/request.Request" representing the // client's request for the DetachGroupPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DetachGroupPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DetachGroupPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DetachGroupPolicyRequest method. // req, resp := client.DetachGroupPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DetachGroupPolicyRequest(input *DetachGroupPolicyInput) (req *request.Request, output *DetachGroupPolicyOutput) { op := &request.Operation{ Name: opDetachGroupPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DetachGroupPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DetachGroupPolicyOutput{} req.Data = output return } // DetachGroupPolicy API operation for AWS Identity and Access Management. // // Removes the specified managed policy from the specified IAM group. // // A group can also have inline policies embedded with it. To delete an inline // policy, use the DeleteGroupPolicy API. For information about policies, see // Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DetachGroupPolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DetachGroupPolicy(input *DetachGroupPolicyInput) (*DetachGroupPolicyOutput, error) { req, out := c.DetachGroupPolicyRequest(input) err := req.Send() return out, err } const opDetachRolePolicy = "DetachRolePolicy" // DetachRolePolicyRequest generates a "aws/request.Request" representing the // client's request for the DetachRolePolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DetachRolePolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DetachRolePolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DetachRolePolicyRequest method. // req, resp := client.DetachRolePolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DetachRolePolicyRequest(input *DetachRolePolicyInput) (req *request.Request, output *DetachRolePolicyOutput) { op := &request.Operation{ Name: opDetachRolePolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DetachRolePolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DetachRolePolicyOutput{} req.Data = output return } // DetachRolePolicy API operation for AWS Identity and Access Management. // // Removes the specified managed policy from the specified role. // // A role can also have inline policies embedded with it. To delete an inline // policy, use the DeleteRolePolicy API. For information about policies, see // Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DetachRolePolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DetachRolePolicy(input *DetachRolePolicyInput) (*DetachRolePolicyOutput, error) { req, out := c.DetachRolePolicyRequest(input) err := req.Send() return out, err } const opDetachUserPolicy = "DetachUserPolicy" // DetachUserPolicyRequest generates a "aws/request.Request" representing the // client's request for the DetachUserPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DetachUserPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DetachUserPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DetachUserPolicyRequest method. // req, resp := client.DetachUserPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) DetachUserPolicyRequest(input *DetachUserPolicyInput) (req *request.Request, output *DetachUserPolicyOutput) { op := &request.Operation{ Name: opDetachUserPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DetachUserPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DetachUserPolicyOutput{} req.Data = output return } // DetachUserPolicy API operation for AWS Identity and Access Management. // // Removes the specified managed policy from the specified user. // // A user can also have inline policies embedded with it. To delete an inline // policy, use the DeleteUserPolicy API. For information about policies, see // Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation DetachUserPolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) DetachUserPolicy(input *DetachUserPolicyInput) (*DetachUserPolicyOutput, error) { req, out := c.DetachUserPolicyRequest(input) err := req.Send() return out, err } const opEnableMFADevice = "EnableMFADevice" // EnableMFADeviceRequest generates a "aws/request.Request" representing the // client's request for the EnableMFADevice operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableMFADevice for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableMFADevice method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableMFADeviceRequest method. // req, resp := client.EnableMFADeviceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) EnableMFADeviceRequest(input *EnableMFADeviceInput) (req *request.Request, output *EnableMFADeviceOutput) { op := &request.Operation{ Name: opEnableMFADevice, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableMFADeviceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &EnableMFADeviceOutput{} req.Data = output return } // EnableMFADevice API operation for AWS Identity and Access Management. // // Enables the specified MFA device and associates it with the specified IAM // user. When enabled, the MFA device is required for every subsequent login // by the IAM user associated with the device. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation EnableMFADevice for usage and error information. // // Returned Error Codes: // * EntityAlreadyExists // The request was rejected because it attempted to create a resource that already // exists. // // * EntityTemporarilyUnmodifiable // The request was rejected because it referenced an entity that is temporarily // unmodifiable, such as a user name that was deleted and then recreated. The // error indicates that the request is likely to succeed if you try again after // waiting several minutes. The error message describes the entity. // // * InvalidAuthenticationCode // The request was rejected because the authentication code was not recognized. // The error message describes the specific error. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) EnableMFADevice(input *EnableMFADeviceInput) (*EnableMFADeviceOutput, error) { req, out := c.EnableMFADeviceRequest(input) err := req.Send() return out, err } const opGenerateCredentialReport = "GenerateCredentialReport" // GenerateCredentialReportRequest generates a "aws/request.Request" representing the // client's request for the GenerateCredentialReport operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GenerateCredentialReport for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GenerateCredentialReport method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GenerateCredentialReportRequest method. // req, resp := client.GenerateCredentialReportRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GenerateCredentialReportRequest(input *GenerateCredentialReportInput) (req *request.Request, output *GenerateCredentialReportOutput) { op := &request.Operation{ Name: opGenerateCredentialReport, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GenerateCredentialReportInput{} } req = c.newRequest(op, input, output) output = &GenerateCredentialReportOutput{} req.Data = output return } // GenerateCredentialReport API operation for AWS Identity and Access Management. // // Generates a credential report for the AWS account. For more information about // the credential report, see Getting Credential Reports (http://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GenerateCredentialReport for usage and error information. // // Returned Error Codes: // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) GenerateCredentialReport(input *GenerateCredentialReportInput) (*GenerateCredentialReportOutput, error) { req, out := c.GenerateCredentialReportRequest(input) err := req.Send() return out, err } const opGetAccessKeyLastUsed = "GetAccessKeyLastUsed" // GetAccessKeyLastUsedRequest generates a "aws/request.Request" representing the // client's request for the GetAccessKeyLastUsed operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetAccessKeyLastUsed for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetAccessKeyLastUsed method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetAccessKeyLastUsedRequest method. // req, resp := client.GetAccessKeyLastUsedRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetAccessKeyLastUsedRequest(input *GetAccessKeyLastUsedInput) (req *request.Request, output *GetAccessKeyLastUsedOutput) { op := &request.Operation{ Name: opGetAccessKeyLastUsed, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetAccessKeyLastUsedInput{} } req = c.newRequest(op, input, output) output = &GetAccessKeyLastUsedOutput{} req.Data = output return } // GetAccessKeyLastUsed API operation for AWS Identity and Access Management. // // Retrieves information about when the specified access key was last used. // The information includes the date and time of last use, along with the AWS // service and region that were specified in the last request made with that // key. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetAccessKeyLastUsed for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // func (c *IAM) GetAccessKeyLastUsed(input *GetAccessKeyLastUsedInput) (*GetAccessKeyLastUsedOutput, error) { req, out := c.GetAccessKeyLastUsedRequest(input) err := req.Send() return out, err } const opGetAccountAuthorizationDetails = "GetAccountAuthorizationDetails" // GetAccountAuthorizationDetailsRequest generates a "aws/request.Request" representing the // client's request for the GetAccountAuthorizationDetails operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetAccountAuthorizationDetails for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetAccountAuthorizationDetails method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetAccountAuthorizationDetailsRequest method. // req, resp := client.GetAccountAuthorizationDetailsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetAccountAuthorizationDetailsRequest(input *GetAccountAuthorizationDetailsInput) (req *request.Request, output *GetAccountAuthorizationDetailsOutput) { op := &request.Operation{ Name: opGetAccountAuthorizationDetails, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &GetAccountAuthorizationDetailsInput{} } req = c.newRequest(op, input, output) output = &GetAccountAuthorizationDetailsOutput{} req.Data = output return } // GetAccountAuthorizationDetails API operation for AWS Identity and Access Management. // // Retrieves information about all IAM users, groups, roles, and policies in // your AWS account, including their relationships to one another. Use this // API to obtain a snapshot of the configuration of IAM permissions (users, // groups, roles, and policies) in your account. // // You can optionally filter the results using the Filter parameter. You can // paginate the results using the MaxItems and Marker parameters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetAccountAuthorizationDetails for usage and error information. // // Returned Error Codes: // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) GetAccountAuthorizationDetails(input *GetAccountAuthorizationDetailsInput) (*GetAccountAuthorizationDetailsOutput, error) { req, out := c.GetAccountAuthorizationDetailsRequest(input) err := req.Send() return out, err } // GetAccountAuthorizationDetailsPages iterates over the pages of a GetAccountAuthorizationDetails operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetAccountAuthorizationDetails method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetAccountAuthorizationDetails operation. // pageNum := 0 // err := client.GetAccountAuthorizationDetailsPages(params, // func(page *GetAccountAuthorizationDetailsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) GetAccountAuthorizationDetailsPages(input *GetAccountAuthorizationDetailsInput, fn func(p *GetAccountAuthorizationDetailsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetAccountAuthorizationDetailsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetAccountAuthorizationDetailsOutput), lastPage) }) } const opGetAccountPasswordPolicy = "GetAccountPasswordPolicy" // GetAccountPasswordPolicyRequest generates a "aws/request.Request" representing the // client's request for the GetAccountPasswordPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetAccountPasswordPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetAccountPasswordPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetAccountPasswordPolicyRequest method. // req, resp := client.GetAccountPasswordPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetAccountPasswordPolicyRequest(input *GetAccountPasswordPolicyInput) (req *request.Request, output *GetAccountPasswordPolicyOutput) { op := &request.Operation{ Name: opGetAccountPasswordPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetAccountPasswordPolicyInput{} } req = c.newRequest(op, input, output) output = &GetAccountPasswordPolicyOutput{} req.Data = output return } // GetAccountPasswordPolicy API operation for AWS Identity and Access Management. // // Retrieves the password policy for the AWS account. For more information about // using a password policy, go to Managing an IAM Password Policy (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingPasswordPolicies.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetAccountPasswordPolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) GetAccountPasswordPolicy(input *GetAccountPasswordPolicyInput) (*GetAccountPasswordPolicyOutput, error) { req, out := c.GetAccountPasswordPolicyRequest(input) err := req.Send() return out, err } const opGetAccountSummary = "GetAccountSummary" // GetAccountSummaryRequest generates a "aws/request.Request" representing the // client's request for the GetAccountSummary operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetAccountSummary for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetAccountSummary method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetAccountSummaryRequest method. // req, resp := client.GetAccountSummaryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetAccountSummaryRequest(input *GetAccountSummaryInput) (req *request.Request, output *GetAccountSummaryOutput) { op := &request.Operation{ Name: opGetAccountSummary, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetAccountSummaryInput{} } req = c.newRequest(op, input, output) output = &GetAccountSummaryOutput{} req.Data = output return } // GetAccountSummary API operation for AWS Identity and Access Management. // // Retrieves information about IAM entity usage and IAM quotas in the AWS account. // // For information about limitations on IAM entities, see Limitations on IAM // Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetAccountSummary for usage and error information. // // Returned Error Codes: // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) GetAccountSummary(input *GetAccountSummaryInput) (*GetAccountSummaryOutput, error) { req, out := c.GetAccountSummaryRequest(input) err := req.Send() return out, err } const opGetContextKeysForCustomPolicy = "GetContextKeysForCustomPolicy" // GetContextKeysForCustomPolicyRequest generates a "aws/request.Request" representing the // client's request for the GetContextKeysForCustomPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetContextKeysForCustomPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetContextKeysForCustomPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetContextKeysForCustomPolicyRequest method. // req, resp := client.GetContextKeysForCustomPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetContextKeysForCustomPolicyRequest(input *GetContextKeysForCustomPolicyInput) (req *request.Request, output *GetContextKeysForPolicyResponse) { op := &request.Operation{ Name: opGetContextKeysForCustomPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetContextKeysForCustomPolicyInput{} } req = c.newRequest(op, input, output) output = &GetContextKeysForPolicyResponse{} req.Data = output return } // GetContextKeysForCustomPolicy API operation for AWS Identity and Access Management. // // Gets a list of all of the context keys referenced in the input policies. // The policies are supplied as a list of one or more strings. To get the context // keys from policies associated with an IAM user, group, or role, use GetContextKeysForPrincipalPolicy. // // Context keys are variables maintained by AWS and its services that provide // details about the context of an API query request, and can be evaluated by // testing against a value specified in an IAM policy. Use GetContextKeysForCustomPolicy // to understand what key names and values you must supply when you call SimulateCustomPolicy. // Note that all parameters are shown in unencoded form here for clarity, but // must be URL encoded to be included as a part of a real HTML request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetContextKeysForCustomPolicy for usage and error information. // // Returned Error Codes: // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // func (c *IAM) GetContextKeysForCustomPolicy(input *GetContextKeysForCustomPolicyInput) (*GetContextKeysForPolicyResponse, error) { req, out := c.GetContextKeysForCustomPolicyRequest(input) err := req.Send() return out, err } const opGetContextKeysForPrincipalPolicy = "GetContextKeysForPrincipalPolicy" // GetContextKeysForPrincipalPolicyRequest generates a "aws/request.Request" representing the // client's request for the GetContextKeysForPrincipalPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetContextKeysForPrincipalPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetContextKeysForPrincipalPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetContextKeysForPrincipalPolicyRequest method. // req, resp := client.GetContextKeysForPrincipalPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetContextKeysForPrincipalPolicyRequest(input *GetContextKeysForPrincipalPolicyInput) (req *request.Request, output *GetContextKeysForPolicyResponse) { op := &request.Operation{ Name: opGetContextKeysForPrincipalPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetContextKeysForPrincipalPolicyInput{} } req = c.newRequest(op, input, output) output = &GetContextKeysForPolicyResponse{} req.Data = output return } // GetContextKeysForPrincipalPolicy API operation for AWS Identity and Access Management. // // Gets a list of all of the context keys referenced in all of the IAM policies // attached to the specified IAM entity. The entity can be an IAM user, group, // or role. If you specify a user, then the request also includes all of the // policies attached to groups that the user is a member of. // // You can optionally include a list of one or more additional policies, specified // as strings. If you want to include only a list of policies by string, use // GetContextKeysForCustomPolicy instead. // // Note: This API discloses information about the permissions granted to other // users. If you do not want users to see other user's permissions, then consider // allowing them to use GetContextKeysForCustomPolicy instead. // // Context keys are variables maintained by AWS and its services that provide // details about the context of an API query request, and can be evaluated by // testing against a value in an IAM policy. Use GetContextKeysForPrincipalPolicy // to understand what key names and values you must supply when you call SimulatePrincipalPolicy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetContextKeysForPrincipalPolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // func (c *IAM) GetContextKeysForPrincipalPolicy(input *GetContextKeysForPrincipalPolicyInput) (*GetContextKeysForPolicyResponse, error) { req, out := c.GetContextKeysForPrincipalPolicyRequest(input) err := req.Send() return out, err } const opGetCredentialReport = "GetCredentialReport" // GetCredentialReportRequest generates a "aws/request.Request" representing the // client's request for the GetCredentialReport operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetCredentialReport for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetCredentialReport method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetCredentialReportRequest method. // req, resp := client.GetCredentialReportRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetCredentialReportRequest(input *GetCredentialReportInput) (req *request.Request, output *GetCredentialReportOutput) { op := &request.Operation{ Name: opGetCredentialReport, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetCredentialReportInput{} } req = c.newRequest(op, input, output) output = &GetCredentialReportOutput{} req.Data = output return } // GetCredentialReport API operation for AWS Identity and Access Management. // // Retrieves a credential report for the AWS account. For more information about // the credential report, see Getting Credential Reports (http://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetCredentialReport for usage and error information. // // Returned Error Codes: // * ReportNotPresent // The request was rejected because the credential report does not exist. To // generate a credential report, use GenerateCredentialReport. // // * ReportExpired // The request was rejected because the most recent credential report has expired. // To generate a new credential report, use GenerateCredentialReport. For more // information about credential report expiration, see Getting Credential Reports // (http://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html) // in the IAM User Guide. // // * ReportInProgress // The request was rejected because the credential report is still being generated. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) GetCredentialReport(input *GetCredentialReportInput) (*GetCredentialReportOutput, error) { req, out := c.GetCredentialReportRequest(input) err := req.Send() return out, err } const opGetGroup = "GetGroup" // GetGroupRequest generates a "aws/request.Request" representing the // client's request for the GetGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetGroupRequest method. // req, resp := client.GetGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetGroupRequest(input *GetGroupInput) (req *request.Request, output *GetGroupOutput) { op := &request.Operation{ Name: opGetGroup, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &GetGroupInput{} } req = c.newRequest(op, input, output) output = &GetGroupOutput{} req.Data = output return } // GetGroup API operation for AWS Identity and Access Management. // // Returns a list of IAM users that are in the specified IAM group. You can // paginate the results using the MaxItems and Marker parameters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetGroup for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) GetGroup(input *GetGroupInput) (*GetGroupOutput, error) { req, out := c.GetGroupRequest(input) err := req.Send() return out, err } // GetGroupPages iterates over the pages of a GetGroup operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetGroup method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetGroup operation. // pageNum := 0 // err := client.GetGroupPages(params, // func(page *GetGroupOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) GetGroupPages(input *GetGroupInput, fn func(p *GetGroupOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetGroupRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetGroupOutput), lastPage) }) } const opGetGroupPolicy = "GetGroupPolicy" // GetGroupPolicyRequest generates a "aws/request.Request" representing the // client's request for the GetGroupPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetGroupPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetGroupPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetGroupPolicyRequest method. // req, resp := client.GetGroupPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetGroupPolicyRequest(input *GetGroupPolicyInput) (req *request.Request, output *GetGroupPolicyOutput) { op := &request.Operation{ Name: opGetGroupPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetGroupPolicyInput{} } req = c.newRequest(op, input, output) output = &GetGroupPolicyOutput{} req.Data = output return } // GetGroupPolicy API operation for AWS Identity and Access Management. // // Retrieves the specified inline policy document that is embedded in the specified // IAM group. // // Policies returned by this API are URL-encoded compliant with RFC 3986 (https://tools.ietf.org/html/rfc3986). // You can use a URL decoding method to convert the policy back to plain JSON // text. For example, if you use Java, you can use the decode method of the // java.net.URLDecoder utility class in the Java SDK. Other languages and SDKs // provide similar functionality. // // An IAM group can also have managed policies attached to it. To retrieve a // managed policy document that is attached to a group, use GetPolicy to determine // the policy's default version, then use GetPolicyVersion to retrieve the policy // document. // // For more information about policies, see Managed Policies and Inline Policies // (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetGroupPolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) GetGroupPolicy(input *GetGroupPolicyInput) (*GetGroupPolicyOutput, error) { req, out := c.GetGroupPolicyRequest(input) err := req.Send() return out, err } const opGetInstanceProfile = "GetInstanceProfile" // GetInstanceProfileRequest generates a "aws/request.Request" representing the // client's request for the GetInstanceProfile operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetInstanceProfile for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetInstanceProfile method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetInstanceProfileRequest method. // req, resp := client.GetInstanceProfileRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetInstanceProfileRequest(input *GetInstanceProfileInput) (req *request.Request, output *GetInstanceProfileOutput) { op := &request.Operation{ Name: opGetInstanceProfile, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetInstanceProfileInput{} } req = c.newRequest(op, input, output) output = &GetInstanceProfileOutput{} req.Data = output return } // GetInstanceProfile API operation for AWS Identity and Access Management. // // Retrieves information about the specified instance profile, including the // instance profile's path, GUID, ARN, and role. For more information about // instance profiles, see About Instance Profiles (http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetInstanceProfile for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) GetInstanceProfile(input *GetInstanceProfileInput) (*GetInstanceProfileOutput, error) { req, out := c.GetInstanceProfileRequest(input) err := req.Send() return out, err } const opGetLoginProfile = "GetLoginProfile" // GetLoginProfileRequest generates a "aws/request.Request" representing the // client's request for the GetLoginProfile operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetLoginProfile for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetLoginProfile method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetLoginProfileRequest method. // req, resp := client.GetLoginProfileRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetLoginProfileRequest(input *GetLoginProfileInput) (req *request.Request, output *GetLoginProfileOutput) { op := &request.Operation{ Name: opGetLoginProfile, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetLoginProfileInput{} } req = c.newRequest(op, input, output) output = &GetLoginProfileOutput{} req.Data = output return } // GetLoginProfile API operation for AWS Identity and Access Management. // // Retrieves the user name and password-creation date for the specified IAM // user. If the user has not been assigned a password, the action returns a // 404 (NoSuchEntity) error. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetLoginProfile for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) GetLoginProfile(input *GetLoginProfileInput) (*GetLoginProfileOutput, error) { req, out := c.GetLoginProfileRequest(input) err := req.Send() return out, err } const opGetOpenIDConnectProvider = "GetOpenIDConnectProvider" // GetOpenIDConnectProviderRequest generates a "aws/request.Request" representing the // client's request for the GetOpenIDConnectProvider operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetOpenIDConnectProvider for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetOpenIDConnectProvider method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetOpenIDConnectProviderRequest method. // req, resp := client.GetOpenIDConnectProviderRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetOpenIDConnectProviderRequest(input *GetOpenIDConnectProviderInput) (req *request.Request, output *GetOpenIDConnectProviderOutput) { op := &request.Operation{ Name: opGetOpenIDConnectProvider, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetOpenIDConnectProviderInput{} } req = c.newRequest(op, input, output) output = &GetOpenIDConnectProviderOutput{} req.Data = output return } // GetOpenIDConnectProvider API operation for AWS Identity and Access Management. // // Returns information about the specified OpenID Connect (OIDC) provider resource // object in IAM. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetOpenIDConnectProvider for usage and error information. // // Returned Error Codes: // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) GetOpenIDConnectProvider(input *GetOpenIDConnectProviderInput) (*GetOpenIDConnectProviderOutput, error) { req, out := c.GetOpenIDConnectProviderRequest(input) err := req.Send() return out, err } const opGetPolicy = "GetPolicy" // GetPolicyRequest generates a "aws/request.Request" representing the // client's request for the GetPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetPolicyRequest method. // req, resp := client.GetPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetPolicyRequest(input *GetPolicyInput) (req *request.Request, output *GetPolicyOutput) { op := &request.Operation{ Name: opGetPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetPolicyInput{} } req = c.newRequest(op, input, output) output = &GetPolicyOutput{} req.Data = output return } // GetPolicy API operation for AWS Identity and Access Management. // // Retrieves information about the specified managed policy, including the policy's // default version and the total number of IAM users, groups, and roles to which // the policy is attached. To retrieve the list of the specific users, groups, // and roles that the policy is attached to, use the ListEntitiesForPolicy API. // This API returns metadata about the policy. To retrieve the actual policy // document for a specific version of the policy, use GetPolicyVersion. // // This API retrieves information about managed policies. To retrieve information // about an inline policy that is embedded with an IAM user, group, or role, // use the GetUserPolicy, GetGroupPolicy, or GetRolePolicy API. // // For more information about policies, see Managed Policies and Inline Policies // (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetPolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) GetPolicy(input *GetPolicyInput) (*GetPolicyOutput, error) { req, out := c.GetPolicyRequest(input) err := req.Send() return out, err } const opGetPolicyVersion = "GetPolicyVersion" // GetPolicyVersionRequest generates a "aws/request.Request" representing the // client's request for the GetPolicyVersion operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetPolicyVersion for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetPolicyVersion method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetPolicyVersionRequest method. // req, resp := client.GetPolicyVersionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetPolicyVersionRequest(input *GetPolicyVersionInput) (req *request.Request, output *GetPolicyVersionOutput) { op := &request.Operation{ Name: opGetPolicyVersion, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetPolicyVersionInput{} } req = c.newRequest(op, input, output) output = &GetPolicyVersionOutput{} req.Data = output return } // GetPolicyVersion API operation for AWS Identity and Access Management. // // Retrieves information about the specified version of the specified managed // policy, including the policy document. // // Policies returned by this API are URL-encoded compliant with RFC 3986 (https://tools.ietf.org/html/rfc3986). // You can use a URL decoding method to convert the policy back to plain JSON // text. For example, if you use Java, you can use the decode method of the // java.net.URLDecoder utility class in the Java SDK. Other languages and SDKs // provide similar functionality. // // To list the available versions for a policy, use ListPolicyVersions. // // This API retrieves information about managed policies. To retrieve information // about an inline policy that is embedded in a user, group, or role, use the // GetUserPolicy, GetGroupPolicy, or GetRolePolicy API. // // For more information about the types of policies, see Managed Policies and // Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // For more information about managed policy versions, see Versioning for Managed // Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetPolicyVersion for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) GetPolicyVersion(input *GetPolicyVersionInput) (*GetPolicyVersionOutput, error) { req, out := c.GetPolicyVersionRequest(input) err := req.Send() return out, err } const opGetRole = "GetRole" // GetRoleRequest generates a "aws/request.Request" representing the // client's request for the GetRole operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetRole for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetRole method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetRoleRequest method. // req, resp := client.GetRoleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetRoleRequest(input *GetRoleInput) (req *request.Request, output *GetRoleOutput) { op := &request.Operation{ Name: opGetRole, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetRoleInput{} } req = c.newRequest(op, input, output) output = &GetRoleOutput{} req.Data = output return } // GetRole API operation for AWS Identity and Access Management. // // Retrieves information about the specified role, including the role's path, // GUID, ARN, and the role's trust policy that grants permission to assume the // role. For more information about roles, see Working with Roles (http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html). // // Policies returned by this API are URL-encoded compliant with RFC 3986 (https://tools.ietf.org/html/rfc3986). // You can use a URL decoding method to convert the policy back to plain JSON // text. For example, if you use Java, you can use the decode method of the // java.net.URLDecoder utility class in the Java SDK. Other languages and SDKs // provide similar functionality. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetRole for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) GetRole(input *GetRoleInput) (*GetRoleOutput, error) { req, out := c.GetRoleRequest(input) err := req.Send() return out, err } const opGetRolePolicy = "GetRolePolicy" // GetRolePolicyRequest generates a "aws/request.Request" representing the // client's request for the GetRolePolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetRolePolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetRolePolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetRolePolicyRequest method. // req, resp := client.GetRolePolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetRolePolicyRequest(input *GetRolePolicyInput) (req *request.Request, output *GetRolePolicyOutput) { op := &request.Operation{ Name: opGetRolePolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetRolePolicyInput{} } req = c.newRequest(op, input, output) output = &GetRolePolicyOutput{} req.Data = output return } // GetRolePolicy API operation for AWS Identity and Access Management. // // Retrieves the specified inline policy document that is embedded with the // specified IAM role. // // Policies returned by this API are URL-encoded compliant with RFC 3986 (https://tools.ietf.org/html/rfc3986). // You can use a URL decoding method to convert the policy back to plain JSON // text. For example, if you use Java, you can use the decode method of the // java.net.URLDecoder utility class in the Java SDK. Other languages and SDKs // provide similar functionality. // // An IAM role can also have managed policies attached to it. To retrieve a // managed policy document that is attached to a role, use GetPolicy to determine // the policy's default version, then use GetPolicyVersion to retrieve the policy // document. // // For more information about policies, see Managed Policies and Inline Policies // (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // For more information about roles, see Using Roles to Delegate Permissions // and Federate Identities (http://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetRolePolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) GetRolePolicy(input *GetRolePolicyInput) (*GetRolePolicyOutput, error) { req, out := c.GetRolePolicyRequest(input) err := req.Send() return out, err } const opGetSAMLProvider = "GetSAMLProvider" // GetSAMLProviderRequest generates a "aws/request.Request" representing the // client's request for the GetSAMLProvider operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetSAMLProvider for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetSAMLProvider method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetSAMLProviderRequest method. // req, resp := client.GetSAMLProviderRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetSAMLProviderRequest(input *GetSAMLProviderInput) (req *request.Request, output *GetSAMLProviderOutput) { op := &request.Operation{ Name: opGetSAMLProvider, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetSAMLProviderInput{} } req = c.newRequest(op, input, output) output = &GetSAMLProviderOutput{} req.Data = output return } // GetSAMLProvider API operation for AWS Identity and Access Management. // // Returns the SAML provider metadocument that was uploaded when the IAM SAML // provider resource object was created or updated. // // This operation requires Signature Version 4 (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetSAMLProvider for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) GetSAMLProvider(input *GetSAMLProviderInput) (*GetSAMLProviderOutput, error) { req, out := c.GetSAMLProviderRequest(input) err := req.Send() return out, err } const opGetSSHPublicKey = "GetSSHPublicKey" // GetSSHPublicKeyRequest generates a "aws/request.Request" representing the // client's request for the GetSSHPublicKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetSSHPublicKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetSSHPublicKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetSSHPublicKeyRequest method. // req, resp := client.GetSSHPublicKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetSSHPublicKeyRequest(input *GetSSHPublicKeyInput) (req *request.Request, output *GetSSHPublicKeyOutput) { op := &request.Operation{ Name: opGetSSHPublicKey, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetSSHPublicKeyInput{} } req = c.newRequest(op, input, output) output = &GetSSHPublicKeyOutput{} req.Data = output return } // GetSSHPublicKey API operation for AWS Identity and Access Management. // // Retrieves the specified SSH public key, including metadata about the key. // // The SSH public key retrieved by this action is used only for authenticating // the associated IAM user to an AWS CodeCommit repository. For more information // about using SSH keys to authenticate to an AWS CodeCommit repository, see // Set up AWS CodeCommit for SSH Connections (http://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html) // in the AWS CodeCommit User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetSSHPublicKey for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * UnrecognizedPublicKeyEncoding // The request was rejected because the public key encoding format is unsupported // or unrecognized. // func (c *IAM) GetSSHPublicKey(input *GetSSHPublicKeyInput) (*GetSSHPublicKeyOutput, error) { req, out := c.GetSSHPublicKeyRequest(input) err := req.Send() return out, err } const opGetServerCertificate = "GetServerCertificate" // GetServerCertificateRequest generates a "aws/request.Request" representing the // client's request for the GetServerCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetServerCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetServerCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetServerCertificateRequest method. // req, resp := client.GetServerCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetServerCertificateRequest(input *GetServerCertificateInput) (req *request.Request, output *GetServerCertificateOutput) { op := &request.Operation{ Name: opGetServerCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetServerCertificateInput{} } req = c.newRequest(op, input, output) output = &GetServerCertificateOutput{} req.Data = output return } // GetServerCertificate API operation for AWS Identity and Access Management. // // Retrieves information about the specified server certificate stored in IAM. // // For more information about working with server certificates, including a // list of AWS services that can use the server certificates that you manage // with IAM, go to Working with Server Certificates (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetServerCertificate for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) GetServerCertificate(input *GetServerCertificateInput) (*GetServerCertificateOutput, error) { req, out := c.GetServerCertificateRequest(input) err := req.Send() return out, err } const opGetUser = "GetUser" // GetUserRequest generates a "aws/request.Request" representing the // client's request for the GetUser operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetUser for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetUser method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetUserRequest method. // req, resp := client.GetUserRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetUserRequest(input *GetUserInput) (req *request.Request, output *GetUserOutput) { op := &request.Operation{ Name: opGetUser, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetUserInput{} } req = c.newRequest(op, input, output) output = &GetUserOutput{} req.Data = output return } // GetUser API operation for AWS Identity and Access Management. // // Retrieves information about the specified IAM user, including the user's // creation date, path, unique ID, and ARN. // // If you do not specify a user name, IAM determines the user name implicitly // based on the AWS access key ID used to sign the request to this API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetUser for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) GetUser(input *GetUserInput) (*GetUserOutput, error) { req, out := c.GetUserRequest(input) err := req.Send() return out, err } const opGetUserPolicy = "GetUserPolicy" // GetUserPolicyRequest generates a "aws/request.Request" representing the // client's request for the GetUserPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetUserPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetUserPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetUserPolicyRequest method. // req, resp := client.GetUserPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) GetUserPolicyRequest(input *GetUserPolicyInput) (req *request.Request, output *GetUserPolicyOutput) { op := &request.Operation{ Name: opGetUserPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetUserPolicyInput{} } req = c.newRequest(op, input, output) output = &GetUserPolicyOutput{} req.Data = output return } // GetUserPolicy API operation for AWS Identity and Access Management. // // Retrieves the specified inline policy document that is embedded in the specified // IAM user. // // Policies returned by this API are URL-encoded compliant with RFC 3986 (https://tools.ietf.org/html/rfc3986). // You can use a URL decoding method to convert the policy back to plain JSON // text. For example, if you use Java, you can use the decode method of the // java.net.URLDecoder utility class in the Java SDK. Other languages and SDKs // provide similar functionality. // // An IAM user can also have managed policies attached to it. To retrieve a // managed policy document that is attached to a user, use GetPolicy to determine // the policy's default version, then use GetPolicyVersion to retrieve the policy // document. // // For more information about policies, see Managed Policies and Inline Policies // (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation GetUserPolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) GetUserPolicy(input *GetUserPolicyInput) (*GetUserPolicyOutput, error) { req, out := c.GetUserPolicyRequest(input) err := req.Send() return out, err } const opListAccessKeys = "ListAccessKeys" // ListAccessKeysRequest generates a "aws/request.Request" representing the // client's request for the ListAccessKeys operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListAccessKeys for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListAccessKeys method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListAccessKeysRequest method. // req, resp := client.ListAccessKeysRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListAccessKeysRequest(input *ListAccessKeysInput) (req *request.Request, output *ListAccessKeysOutput) { op := &request.Operation{ Name: opListAccessKeys, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListAccessKeysInput{} } req = c.newRequest(op, input, output) output = &ListAccessKeysOutput{} req.Data = output return } // ListAccessKeys API operation for AWS Identity and Access Management. // // Returns information about the access key IDs associated with the specified // IAM user. If there are none, the action returns an empty list. // // Although each user is limited to a small number of keys, you can still paginate // the results using the MaxItems and Marker parameters. // // If the UserName field is not specified, the UserName is determined implicitly // based on the AWS access key ID used to sign the request. Because this action // works for access keys under the AWS account, you can use this action to manage // root credentials even if the AWS account has no associated users. // // To ensure the security of your AWS account, the secret access key is accessible // only during key and user creation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListAccessKeys for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListAccessKeys(input *ListAccessKeysInput) (*ListAccessKeysOutput, error) { req, out := c.ListAccessKeysRequest(input) err := req.Send() return out, err } // ListAccessKeysPages iterates over the pages of a ListAccessKeys operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListAccessKeys method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListAccessKeys operation. // pageNum := 0 // err := client.ListAccessKeysPages(params, // func(page *ListAccessKeysOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListAccessKeysPages(input *ListAccessKeysInput, fn func(p *ListAccessKeysOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListAccessKeysRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListAccessKeysOutput), lastPage) }) } const opListAccountAliases = "ListAccountAliases" // ListAccountAliasesRequest generates a "aws/request.Request" representing the // client's request for the ListAccountAliases operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListAccountAliases for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListAccountAliases method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListAccountAliasesRequest method. // req, resp := client.ListAccountAliasesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListAccountAliasesRequest(input *ListAccountAliasesInput) (req *request.Request, output *ListAccountAliasesOutput) { op := &request.Operation{ Name: opListAccountAliases, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListAccountAliasesInput{} } req = c.newRequest(op, input, output) output = &ListAccountAliasesOutput{} req.Data = output return } // ListAccountAliases API operation for AWS Identity and Access Management. // // Lists the account alias associated with the AWS account (Note: you can have // only one). For information about using an AWS account alias, see Using an // Alias for Your AWS Account ID (http://docs.aws.amazon.com/IAM/latest/UserGuide/AccountAlias.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListAccountAliases for usage and error information. // // Returned Error Codes: // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListAccountAliases(input *ListAccountAliasesInput) (*ListAccountAliasesOutput, error) { req, out := c.ListAccountAliasesRequest(input) err := req.Send() return out, err } // ListAccountAliasesPages iterates over the pages of a ListAccountAliases operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListAccountAliases method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListAccountAliases operation. // pageNum := 0 // err := client.ListAccountAliasesPages(params, // func(page *ListAccountAliasesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListAccountAliasesPages(input *ListAccountAliasesInput, fn func(p *ListAccountAliasesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListAccountAliasesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListAccountAliasesOutput), lastPage) }) } const opListAttachedGroupPolicies = "ListAttachedGroupPolicies" // ListAttachedGroupPoliciesRequest generates a "aws/request.Request" representing the // client's request for the ListAttachedGroupPolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListAttachedGroupPolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListAttachedGroupPolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListAttachedGroupPoliciesRequest method. // req, resp := client.ListAttachedGroupPoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListAttachedGroupPoliciesRequest(input *ListAttachedGroupPoliciesInput) (req *request.Request, output *ListAttachedGroupPoliciesOutput) { op := &request.Operation{ Name: opListAttachedGroupPolicies, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListAttachedGroupPoliciesInput{} } req = c.newRequest(op, input, output) output = &ListAttachedGroupPoliciesOutput{} req.Data = output return } // ListAttachedGroupPolicies API operation for AWS Identity and Access Management. // // Lists all managed policies that are attached to the specified IAM group. // // An IAM group can also have inline policies embedded with it. To list the // inline policies for a group, use the ListGroupPolicies API. For information // about policies, see Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // You can paginate the results using the MaxItems and Marker parameters. You // can use the PathPrefix parameter to limit the list of policies to only those // matching the specified path prefix. If there are no policies attached to // the specified group (or none that match the specified path prefix), the action // returns an empty list. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListAttachedGroupPolicies for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListAttachedGroupPolicies(input *ListAttachedGroupPoliciesInput) (*ListAttachedGroupPoliciesOutput, error) { req, out := c.ListAttachedGroupPoliciesRequest(input) err := req.Send() return out, err } // ListAttachedGroupPoliciesPages iterates over the pages of a ListAttachedGroupPolicies operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListAttachedGroupPolicies method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListAttachedGroupPolicies operation. // pageNum := 0 // err := client.ListAttachedGroupPoliciesPages(params, // func(page *ListAttachedGroupPoliciesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListAttachedGroupPoliciesPages(input *ListAttachedGroupPoliciesInput, fn func(p *ListAttachedGroupPoliciesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListAttachedGroupPoliciesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListAttachedGroupPoliciesOutput), lastPage) }) } const opListAttachedRolePolicies = "ListAttachedRolePolicies" // ListAttachedRolePoliciesRequest generates a "aws/request.Request" representing the // client's request for the ListAttachedRolePolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListAttachedRolePolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListAttachedRolePolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListAttachedRolePoliciesRequest method. // req, resp := client.ListAttachedRolePoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListAttachedRolePoliciesRequest(input *ListAttachedRolePoliciesInput) (req *request.Request, output *ListAttachedRolePoliciesOutput) { op := &request.Operation{ Name: opListAttachedRolePolicies, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListAttachedRolePoliciesInput{} } req = c.newRequest(op, input, output) output = &ListAttachedRolePoliciesOutput{} req.Data = output return } // ListAttachedRolePolicies API operation for AWS Identity and Access Management. // // Lists all managed policies that are attached to the specified IAM role. // // An IAM role can also have inline policies embedded with it. To list the inline // policies for a role, use the ListRolePolicies API. For information about // policies, see Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // You can paginate the results using the MaxItems and Marker parameters. You // can use the PathPrefix parameter to limit the list of policies to only those // matching the specified path prefix. If there are no policies attached to // the specified role (or none that match the specified path prefix), the action // returns an empty list. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListAttachedRolePolicies for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListAttachedRolePolicies(input *ListAttachedRolePoliciesInput) (*ListAttachedRolePoliciesOutput, error) { req, out := c.ListAttachedRolePoliciesRequest(input) err := req.Send() return out, err } // ListAttachedRolePoliciesPages iterates over the pages of a ListAttachedRolePolicies operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListAttachedRolePolicies method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListAttachedRolePolicies operation. // pageNum := 0 // err := client.ListAttachedRolePoliciesPages(params, // func(page *ListAttachedRolePoliciesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListAttachedRolePoliciesPages(input *ListAttachedRolePoliciesInput, fn func(p *ListAttachedRolePoliciesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListAttachedRolePoliciesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListAttachedRolePoliciesOutput), lastPage) }) } const opListAttachedUserPolicies = "ListAttachedUserPolicies" // ListAttachedUserPoliciesRequest generates a "aws/request.Request" representing the // client's request for the ListAttachedUserPolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListAttachedUserPolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListAttachedUserPolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListAttachedUserPoliciesRequest method. // req, resp := client.ListAttachedUserPoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListAttachedUserPoliciesRequest(input *ListAttachedUserPoliciesInput) (req *request.Request, output *ListAttachedUserPoliciesOutput) { op := &request.Operation{ Name: opListAttachedUserPolicies, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListAttachedUserPoliciesInput{} } req = c.newRequest(op, input, output) output = &ListAttachedUserPoliciesOutput{} req.Data = output return } // ListAttachedUserPolicies API operation for AWS Identity and Access Management. // // Lists all managed policies that are attached to the specified IAM user. // // An IAM user can also have inline policies embedded with it. To list the inline // policies for a user, use the ListUserPolicies API. For information about // policies, see Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // You can paginate the results using the MaxItems and Marker parameters. You // can use the PathPrefix parameter to limit the list of policies to only those // matching the specified path prefix. If there are no policies attached to // the specified group (or none that match the specified path prefix), the action // returns an empty list. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListAttachedUserPolicies for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListAttachedUserPolicies(input *ListAttachedUserPoliciesInput) (*ListAttachedUserPoliciesOutput, error) { req, out := c.ListAttachedUserPoliciesRequest(input) err := req.Send() return out, err } // ListAttachedUserPoliciesPages iterates over the pages of a ListAttachedUserPolicies operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListAttachedUserPolicies method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListAttachedUserPolicies operation. // pageNum := 0 // err := client.ListAttachedUserPoliciesPages(params, // func(page *ListAttachedUserPoliciesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListAttachedUserPoliciesPages(input *ListAttachedUserPoliciesInput, fn func(p *ListAttachedUserPoliciesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListAttachedUserPoliciesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListAttachedUserPoliciesOutput), lastPage) }) } const opListEntitiesForPolicy = "ListEntitiesForPolicy" // ListEntitiesForPolicyRequest generates a "aws/request.Request" representing the // client's request for the ListEntitiesForPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListEntitiesForPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListEntitiesForPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListEntitiesForPolicyRequest method. // req, resp := client.ListEntitiesForPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListEntitiesForPolicyRequest(input *ListEntitiesForPolicyInput) (req *request.Request, output *ListEntitiesForPolicyOutput) { op := &request.Operation{ Name: opListEntitiesForPolicy, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListEntitiesForPolicyInput{} } req = c.newRequest(op, input, output) output = &ListEntitiesForPolicyOutput{} req.Data = output return } // ListEntitiesForPolicy API operation for AWS Identity and Access Management. // // Lists all IAM users, groups, and roles that the specified managed policy // is attached to. // // You can use the optional EntityFilter parameter to limit the results to a // particular type of entity (users, groups, or roles). For example, to list // only the roles that are attached to the specified policy, set EntityFilter // to Role. // // You can paginate the results using the MaxItems and Marker parameters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListEntitiesForPolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListEntitiesForPolicy(input *ListEntitiesForPolicyInput) (*ListEntitiesForPolicyOutput, error) { req, out := c.ListEntitiesForPolicyRequest(input) err := req.Send() return out, err } // ListEntitiesForPolicyPages iterates over the pages of a ListEntitiesForPolicy operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListEntitiesForPolicy method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListEntitiesForPolicy operation. // pageNum := 0 // err := client.ListEntitiesForPolicyPages(params, // func(page *ListEntitiesForPolicyOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListEntitiesForPolicyPages(input *ListEntitiesForPolicyInput, fn func(p *ListEntitiesForPolicyOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListEntitiesForPolicyRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListEntitiesForPolicyOutput), lastPage) }) } const opListGroupPolicies = "ListGroupPolicies" // ListGroupPoliciesRequest generates a "aws/request.Request" representing the // client's request for the ListGroupPolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListGroupPolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListGroupPolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListGroupPoliciesRequest method. // req, resp := client.ListGroupPoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListGroupPoliciesRequest(input *ListGroupPoliciesInput) (req *request.Request, output *ListGroupPoliciesOutput) { op := &request.Operation{ Name: opListGroupPolicies, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListGroupPoliciesInput{} } req = c.newRequest(op, input, output) output = &ListGroupPoliciesOutput{} req.Data = output return } // ListGroupPolicies API operation for AWS Identity and Access Management. // // Lists the names of the inline policies that are embedded in the specified // IAM group. // // An IAM group can also have managed policies attached to it. To list the managed // policies that are attached to a group, use ListAttachedGroupPolicies. For // more information about policies, see Managed Policies and Inline Policies // (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // You can paginate the results using the MaxItems and Marker parameters. If // there are no inline policies embedded with the specified group, the action // returns an empty list. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListGroupPolicies for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListGroupPolicies(input *ListGroupPoliciesInput) (*ListGroupPoliciesOutput, error) { req, out := c.ListGroupPoliciesRequest(input) err := req.Send() return out, err } // ListGroupPoliciesPages iterates over the pages of a ListGroupPolicies operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListGroupPolicies method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListGroupPolicies operation. // pageNum := 0 // err := client.ListGroupPoliciesPages(params, // func(page *ListGroupPoliciesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListGroupPoliciesPages(input *ListGroupPoliciesInput, fn func(p *ListGroupPoliciesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListGroupPoliciesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListGroupPoliciesOutput), lastPage) }) } const opListGroups = "ListGroups" // ListGroupsRequest generates a "aws/request.Request" representing the // client's request for the ListGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListGroupsRequest method. // req, resp := client.ListGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListGroupsRequest(input *ListGroupsInput) (req *request.Request, output *ListGroupsOutput) { op := &request.Operation{ Name: opListGroups, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListGroupsInput{} } req = c.newRequest(op, input, output) output = &ListGroupsOutput{} req.Data = output return } // ListGroups API operation for AWS Identity and Access Management. // // Lists the IAM groups that have the specified path prefix. // // You can paginate the results using the MaxItems and Marker parameters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListGroups for usage and error information. // // Returned Error Codes: // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListGroups(input *ListGroupsInput) (*ListGroupsOutput, error) { req, out := c.ListGroupsRequest(input) err := req.Send() return out, err } // ListGroupsPages iterates over the pages of a ListGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListGroups operation. // pageNum := 0 // err := client.ListGroupsPages(params, // func(page *ListGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListGroupsPages(input *ListGroupsInput, fn func(p *ListGroupsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListGroupsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListGroupsOutput), lastPage) }) } const opListGroupsForUser = "ListGroupsForUser" // ListGroupsForUserRequest generates a "aws/request.Request" representing the // client's request for the ListGroupsForUser operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListGroupsForUser for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListGroupsForUser method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListGroupsForUserRequest method. // req, resp := client.ListGroupsForUserRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListGroupsForUserRequest(input *ListGroupsForUserInput) (req *request.Request, output *ListGroupsForUserOutput) { op := &request.Operation{ Name: opListGroupsForUser, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListGroupsForUserInput{} } req = c.newRequest(op, input, output) output = &ListGroupsForUserOutput{} req.Data = output return } // ListGroupsForUser API operation for AWS Identity and Access Management. // // Lists the IAM groups that the specified IAM user belongs to. // // You can paginate the results using the MaxItems and Marker parameters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListGroupsForUser for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListGroupsForUser(input *ListGroupsForUserInput) (*ListGroupsForUserOutput, error) { req, out := c.ListGroupsForUserRequest(input) err := req.Send() return out, err } // ListGroupsForUserPages iterates over the pages of a ListGroupsForUser operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListGroupsForUser method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListGroupsForUser operation. // pageNum := 0 // err := client.ListGroupsForUserPages(params, // func(page *ListGroupsForUserOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListGroupsForUserPages(input *ListGroupsForUserInput, fn func(p *ListGroupsForUserOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListGroupsForUserRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListGroupsForUserOutput), lastPage) }) } const opListInstanceProfiles = "ListInstanceProfiles" // ListInstanceProfilesRequest generates a "aws/request.Request" representing the // client's request for the ListInstanceProfiles operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListInstanceProfiles for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListInstanceProfiles method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListInstanceProfilesRequest method. // req, resp := client.ListInstanceProfilesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListInstanceProfilesRequest(input *ListInstanceProfilesInput) (req *request.Request, output *ListInstanceProfilesOutput) { op := &request.Operation{ Name: opListInstanceProfiles, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListInstanceProfilesInput{} } req = c.newRequest(op, input, output) output = &ListInstanceProfilesOutput{} req.Data = output return } // ListInstanceProfiles API operation for AWS Identity and Access Management. // // Lists the instance profiles that have the specified path prefix. If there // are none, the action returns an empty list. For more information about instance // profiles, go to About Instance Profiles (http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html). // // You can paginate the results using the MaxItems and Marker parameters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListInstanceProfiles for usage and error information. // // Returned Error Codes: // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListInstanceProfiles(input *ListInstanceProfilesInput) (*ListInstanceProfilesOutput, error) { req, out := c.ListInstanceProfilesRequest(input) err := req.Send() return out, err } // ListInstanceProfilesPages iterates over the pages of a ListInstanceProfiles operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListInstanceProfiles method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListInstanceProfiles operation. // pageNum := 0 // err := client.ListInstanceProfilesPages(params, // func(page *ListInstanceProfilesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListInstanceProfilesPages(input *ListInstanceProfilesInput, fn func(p *ListInstanceProfilesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListInstanceProfilesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListInstanceProfilesOutput), lastPage) }) } const opListInstanceProfilesForRole = "ListInstanceProfilesForRole" // ListInstanceProfilesForRoleRequest generates a "aws/request.Request" representing the // client's request for the ListInstanceProfilesForRole operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListInstanceProfilesForRole for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListInstanceProfilesForRole method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListInstanceProfilesForRoleRequest method. // req, resp := client.ListInstanceProfilesForRoleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListInstanceProfilesForRoleRequest(input *ListInstanceProfilesForRoleInput) (req *request.Request, output *ListInstanceProfilesForRoleOutput) { op := &request.Operation{ Name: opListInstanceProfilesForRole, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListInstanceProfilesForRoleInput{} } req = c.newRequest(op, input, output) output = &ListInstanceProfilesForRoleOutput{} req.Data = output return } // ListInstanceProfilesForRole API operation for AWS Identity and Access Management. // // Lists the instance profiles that have the specified associated IAM role. // If there are none, the action returns an empty list. For more information // about instance profiles, go to About Instance Profiles (http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html). // // You can paginate the results using the MaxItems and Marker parameters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListInstanceProfilesForRole for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListInstanceProfilesForRole(input *ListInstanceProfilesForRoleInput) (*ListInstanceProfilesForRoleOutput, error) { req, out := c.ListInstanceProfilesForRoleRequest(input) err := req.Send() return out, err } // ListInstanceProfilesForRolePages iterates over the pages of a ListInstanceProfilesForRole operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListInstanceProfilesForRole method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListInstanceProfilesForRole operation. // pageNum := 0 // err := client.ListInstanceProfilesForRolePages(params, // func(page *ListInstanceProfilesForRoleOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListInstanceProfilesForRolePages(input *ListInstanceProfilesForRoleInput, fn func(p *ListInstanceProfilesForRoleOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListInstanceProfilesForRoleRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListInstanceProfilesForRoleOutput), lastPage) }) } const opListMFADevices = "ListMFADevices" // ListMFADevicesRequest generates a "aws/request.Request" representing the // client's request for the ListMFADevices operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListMFADevices for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListMFADevices method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListMFADevicesRequest method. // req, resp := client.ListMFADevicesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListMFADevicesRequest(input *ListMFADevicesInput) (req *request.Request, output *ListMFADevicesOutput) { op := &request.Operation{ Name: opListMFADevices, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListMFADevicesInput{} } req = c.newRequest(op, input, output) output = &ListMFADevicesOutput{} req.Data = output return } // ListMFADevices API operation for AWS Identity and Access Management. // // Lists the MFA devices for an IAM user. If the request includes a IAM user // name, then this action lists all the MFA devices associated with the specified // user. If you do not specify a user name, IAM determines the user name implicitly // based on the AWS access key ID signing the request for this API. // // You can paginate the results using the MaxItems and Marker parameters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListMFADevices for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListMFADevices(input *ListMFADevicesInput) (*ListMFADevicesOutput, error) { req, out := c.ListMFADevicesRequest(input) err := req.Send() return out, err } // ListMFADevicesPages iterates over the pages of a ListMFADevices operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListMFADevices method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListMFADevices operation. // pageNum := 0 // err := client.ListMFADevicesPages(params, // func(page *ListMFADevicesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListMFADevicesPages(input *ListMFADevicesInput, fn func(p *ListMFADevicesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListMFADevicesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListMFADevicesOutput), lastPage) }) } const opListOpenIDConnectProviders = "ListOpenIDConnectProviders" // ListOpenIDConnectProvidersRequest generates a "aws/request.Request" representing the // client's request for the ListOpenIDConnectProviders operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListOpenIDConnectProviders for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListOpenIDConnectProviders method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListOpenIDConnectProvidersRequest method. // req, resp := client.ListOpenIDConnectProvidersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListOpenIDConnectProvidersRequest(input *ListOpenIDConnectProvidersInput) (req *request.Request, output *ListOpenIDConnectProvidersOutput) { op := &request.Operation{ Name: opListOpenIDConnectProviders, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListOpenIDConnectProvidersInput{} } req = c.newRequest(op, input, output) output = &ListOpenIDConnectProvidersOutput{} req.Data = output return } // ListOpenIDConnectProviders API operation for AWS Identity and Access Management. // // Lists information about the IAM OpenID Connect (OIDC) provider resource objects // defined in the AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListOpenIDConnectProviders for usage and error information. // // Returned Error Codes: // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListOpenIDConnectProviders(input *ListOpenIDConnectProvidersInput) (*ListOpenIDConnectProvidersOutput, error) { req, out := c.ListOpenIDConnectProvidersRequest(input) err := req.Send() return out, err } const opListPolicies = "ListPolicies" // ListPoliciesRequest generates a "aws/request.Request" representing the // client's request for the ListPolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListPolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListPolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListPoliciesRequest method. // req, resp := client.ListPoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListPoliciesRequest(input *ListPoliciesInput) (req *request.Request, output *ListPoliciesOutput) { op := &request.Operation{ Name: opListPolicies, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListPoliciesInput{} } req = c.newRequest(op, input, output) output = &ListPoliciesOutput{} req.Data = output return } // ListPolicies API operation for AWS Identity and Access Management. // // Lists all the managed policies that are available in your AWS account, including // your own customer-defined managed policies and all AWS managed policies. // // You can filter the list of policies that is returned using the optional OnlyAttached, // Scope, and PathPrefix parameters. For example, to list only the customer // managed policies in your AWS account, set Scope to Local. To list only AWS // managed policies, set Scope to AWS. // // You can paginate the results using the MaxItems and Marker parameters. // // For more information about managed policies, see Managed Policies and Inline // Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListPolicies for usage and error information. // // Returned Error Codes: // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListPolicies(input *ListPoliciesInput) (*ListPoliciesOutput, error) { req, out := c.ListPoliciesRequest(input) err := req.Send() return out, err } // ListPoliciesPages iterates over the pages of a ListPolicies operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListPolicies method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListPolicies operation. // pageNum := 0 // err := client.ListPoliciesPages(params, // func(page *ListPoliciesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListPoliciesPages(input *ListPoliciesInput, fn func(p *ListPoliciesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListPoliciesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListPoliciesOutput), lastPage) }) } const opListPolicyVersions = "ListPolicyVersions" // ListPolicyVersionsRequest generates a "aws/request.Request" representing the // client's request for the ListPolicyVersions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListPolicyVersions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListPolicyVersions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListPolicyVersionsRequest method. // req, resp := client.ListPolicyVersionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListPolicyVersionsRequest(input *ListPolicyVersionsInput) (req *request.Request, output *ListPolicyVersionsOutput) { op := &request.Operation{ Name: opListPolicyVersions, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListPolicyVersionsInput{} } req = c.newRequest(op, input, output) output = &ListPolicyVersionsOutput{} req.Data = output return } // ListPolicyVersions API operation for AWS Identity and Access Management. // // Lists information about the versions of the specified managed policy, including // the version that is currently set as the policy's default version. // // For more information about managed policies, see Managed Policies and Inline // Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListPolicyVersions for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListPolicyVersions(input *ListPolicyVersionsInput) (*ListPolicyVersionsOutput, error) { req, out := c.ListPolicyVersionsRequest(input) err := req.Send() return out, err } // ListPolicyVersionsPages iterates over the pages of a ListPolicyVersions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListPolicyVersions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListPolicyVersions operation. // pageNum := 0 // err := client.ListPolicyVersionsPages(params, // func(page *ListPolicyVersionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListPolicyVersionsPages(input *ListPolicyVersionsInput, fn func(p *ListPolicyVersionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListPolicyVersionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListPolicyVersionsOutput), lastPage) }) } const opListRolePolicies = "ListRolePolicies" // ListRolePoliciesRequest generates a "aws/request.Request" representing the // client's request for the ListRolePolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListRolePolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListRolePolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListRolePoliciesRequest method. // req, resp := client.ListRolePoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListRolePoliciesRequest(input *ListRolePoliciesInput) (req *request.Request, output *ListRolePoliciesOutput) { op := &request.Operation{ Name: opListRolePolicies, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListRolePoliciesInput{} } req = c.newRequest(op, input, output) output = &ListRolePoliciesOutput{} req.Data = output return } // ListRolePolicies API operation for AWS Identity and Access Management. // // Lists the names of the inline policies that are embedded in the specified // IAM role. // // An IAM role can also have managed policies attached to it. To list the managed // policies that are attached to a role, use ListAttachedRolePolicies. For more // information about policies, see Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // You can paginate the results using the MaxItems and Marker parameters. If // there are no inline policies embedded with the specified role, the action // returns an empty list. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListRolePolicies for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListRolePolicies(input *ListRolePoliciesInput) (*ListRolePoliciesOutput, error) { req, out := c.ListRolePoliciesRequest(input) err := req.Send() return out, err } // ListRolePoliciesPages iterates over the pages of a ListRolePolicies operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListRolePolicies method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListRolePolicies operation. // pageNum := 0 // err := client.ListRolePoliciesPages(params, // func(page *ListRolePoliciesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListRolePoliciesPages(input *ListRolePoliciesInput, fn func(p *ListRolePoliciesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListRolePoliciesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListRolePoliciesOutput), lastPage) }) } const opListRoles = "ListRoles" // ListRolesRequest generates a "aws/request.Request" representing the // client's request for the ListRoles operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListRoles for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListRoles method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListRolesRequest method. // req, resp := client.ListRolesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListRolesRequest(input *ListRolesInput) (req *request.Request, output *ListRolesOutput) { op := &request.Operation{ Name: opListRoles, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListRolesInput{} } req = c.newRequest(op, input, output) output = &ListRolesOutput{} req.Data = output return } // ListRoles API operation for AWS Identity and Access Management. // // Lists the IAM roles that have the specified path prefix. If there are none, // the action returns an empty list. For more information about roles, go to // Working with Roles (http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html). // // You can paginate the results using the MaxItems and Marker parameters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListRoles for usage and error information. // // Returned Error Codes: // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListRoles(input *ListRolesInput) (*ListRolesOutput, error) { req, out := c.ListRolesRequest(input) err := req.Send() return out, err } // ListRolesPages iterates over the pages of a ListRoles operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListRoles method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListRoles operation. // pageNum := 0 // err := client.ListRolesPages(params, // func(page *ListRolesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListRolesPages(input *ListRolesInput, fn func(p *ListRolesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListRolesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListRolesOutput), lastPage) }) } const opListSAMLProviders = "ListSAMLProviders" // ListSAMLProvidersRequest generates a "aws/request.Request" representing the // client's request for the ListSAMLProviders operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListSAMLProviders for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListSAMLProviders method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListSAMLProvidersRequest method. // req, resp := client.ListSAMLProvidersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListSAMLProvidersRequest(input *ListSAMLProvidersInput) (req *request.Request, output *ListSAMLProvidersOutput) { op := &request.Operation{ Name: opListSAMLProviders, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListSAMLProvidersInput{} } req = c.newRequest(op, input, output) output = &ListSAMLProvidersOutput{} req.Data = output return } // ListSAMLProviders API operation for AWS Identity and Access Management. // // Lists the SAML provider resource objects defined in IAM in the account. // // This operation requires Signature Version 4 (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListSAMLProviders for usage and error information. // // Returned Error Codes: // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListSAMLProviders(input *ListSAMLProvidersInput) (*ListSAMLProvidersOutput, error) { req, out := c.ListSAMLProvidersRequest(input) err := req.Send() return out, err } const opListSSHPublicKeys = "ListSSHPublicKeys" // ListSSHPublicKeysRequest generates a "aws/request.Request" representing the // client's request for the ListSSHPublicKeys operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListSSHPublicKeys for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListSSHPublicKeys method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListSSHPublicKeysRequest method. // req, resp := client.ListSSHPublicKeysRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListSSHPublicKeysRequest(input *ListSSHPublicKeysInput) (req *request.Request, output *ListSSHPublicKeysOutput) { op := &request.Operation{ Name: opListSSHPublicKeys, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListSSHPublicKeysInput{} } req = c.newRequest(op, input, output) output = &ListSSHPublicKeysOutput{} req.Data = output return } // ListSSHPublicKeys API operation for AWS Identity and Access Management. // // Returns information about the SSH public keys associated with the specified // IAM user. If there are none, the action returns an empty list. // // The SSH public keys returned by this action are used only for authenticating // the IAM user to an AWS CodeCommit repository. For more information about // using SSH keys to authenticate to an AWS CodeCommit repository, see Set up // AWS CodeCommit for SSH Connections (http://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html) // in the AWS CodeCommit User Guide. // // Although each user is limited to a small number of keys, you can still paginate // the results using the MaxItems and Marker parameters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListSSHPublicKeys for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // func (c *IAM) ListSSHPublicKeys(input *ListSSHPublicKeysInput) (*ListSSHPublicKeysOutput, error) { req, out := c.ListSSHPublicKeysRequest(input) err := req.Send() return out, err } // ListSSHPublicKeysPages iterates over the pages of a ListSSHPublicKeys operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListSSHPublicKeys method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListSSHPublicKeys operation. // pageNum := 0 // err := client.ListSSHPublicKeysPages(params, // func(page *ListSSHPublicKeysOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListSSHPublicKeysPages(input *ListSSHPublicKeysInput, fn func(p *ListSSHPublicKeysOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListSSHPublicKeysRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListSSHPublicKeysOutput), lastPage) }) } const opListServerCertificates = "ListServerCertificates" // ListServerCertificatesRequest generates a "aws/request.Request" representing the // client's request for the ListServerCertificates operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListServerCertificates for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListServerCertificates method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListServerCertificatesRequest method. // req, resp := client.ListServerCertificatesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListServerCertificatesRequest(input *ListServerCertificatesInput) (req *request.Request, output *ListServerCertificatesOutput) { op := &request.Operation{ Name: opListServerCertificates, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListServerCertificatesInput{} } req = c.newRequest(op, input, output) output = &ListServerCertificatesOutput{} req.Data = output return } // ListServerCertificates API operation for AWS Identity and Access Management. // // Lists the server certificates stored in IAM that have the specified path // prefix. If none exist, the action returns an empty list. // // You can paginate the results using the MaxItems and Marker parameters. // // For more information about working with server certificates, including a // list of AWS services that can use the server certificates that you manage // with IAM, go to Working with Server Certificates (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListServerCertificates for usage and error information. // // Returned Error Codes: // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListServerCertificates(input *ListServerCertificatesInput) (*ListServerCertificatesOutput, error) { req, out := c.ListServerCertificatesRequest(input) err := req.Send() return out, err } // ListServerCertificatesPages iterates over the pages of a ListServerCertificates operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListServerCertificates method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListServerCertificates operation. // pageNum := 0 // err := client.ListServerCertificatesPages(params, // func(page *ListServerCertificatesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListServerCertificatesPages(input *ListServerCertificatesInput, fn func(p *ListServerCertificatesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListServerCertificatesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListServerCertificatesOutput), lastPage) }) } const opListSigningCertificates = "ListSigningCertificates" // ListSigningCertificatesRequest generates a "aws/request.Request" representing the // client's request for the ListSigningCertificates operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListSigningCertificates for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListSigningCertificates method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListSigningCertificatesRequest method. // req, resp := client.ListSigningCertificatesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListSigningCertificatesRequest(input *ListSigningCertificatesInput) (req *request.Request, output *ListSigningCertificatesOutput) { op := &request.Operation{ Name: opListSigningCertificates, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListSigningCertificatesInput{} } req = c.newRequest(op, input, output) output = &ListSigningCertificatesOutput{} req.Data = output return } // ListSigningCertificates API operation for AWS Identity and Access Management. // // Returns information about the signing certificates associated with the specified // IAM user. If there are none, the action returns an empty list. // // Although each user is limited to a small number of signing certificates, // you can still paginate the results using the MaxItems and Marker parameters. // // If the UserName field is not specified, the user name is determined implicitly // based on the AWS access key ID used to sign the request for this API. Because // this action works for access keys under the AWS account, you can use this // action to manage root credentials even if the AWS account has no associated // users. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListSigningCertificates for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListSigningCertificates(input *ListSigningCertificatesInput) (*ListSigningCertificatesOutput, error) { req, out := c.ListSigningCertificatesRequest(input) err := req.Send() return out, err } // ListSigningCertificatesPages iterates over the pages of a ListSigningCertificates operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListSigningCertificates method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListSigningCertificates operation. // pageNum := 0 // err := client.ListSigningCertificatesPages(params, // func(page *ListSigningCertificatesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListSigningCertificatesPages(input *ListSigningCertificatesInput, fn func(p *ListSigningCertificatesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListSigningCertificatesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListSigningCertificatesOutput), lastPage) }) } const opListUserPolicies = "ListUserPolicies" // ListUserPoliciesRequest generates a "aws/request.Request" representing the // client's request for the ListUserPolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListUserPolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListUserPolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListUserPoliciesRequest method. // req, resp := client.ListUserPoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListUserPoliciesRequest(input *ListUserPoliciesInput) (req *request.Request, output *ListUserPoliciesOutput) { op := &request.Operation{ Name: opListUserPolicies, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListUserPoliciesInput{} } req = c.newRequest(op, input, output) output = &ListUserPoliciesOutput{} req.Data = output return } // ListUserPolicies API operation for AWS Identity and Access Management. // // Lists the names of the inline policies embedded in the specified IAM user. // // An IAM user can also have managed policies attached to it. To list the managed // policies that are attached to a user, use ListAttachedUserPolicies. For more // information about policies, see Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // You can paginate the results using the MaxItems and Marker parameters. If // there are no inline policies embedded with the specified user, the action // returns an empty list. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListUserPolicies for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListUserPolicies(input *ListUserPoliciesInput) (*ListUserPoliciesOutput, error) { req, out := c.ListUserPoliciesRequest(input) err := req.Send() return out, err } // ListUserPoliciesPages iterates over the pages of a ListUserPolicies operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListUserPolicies method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListUserPolicies operation. // pageNum := 0 // err := client.ListUserPoliciesPages(params, // func(page *ListUserPoliciesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListUserPoliciesPages(input *ListUserPoliciesInput, fn func(p *ListUserPoliciesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListUserPoliciesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListUserPoliciesOutput), lastPage) }) } const opListUsers = "ListUsers" // ListUsersRequest generates a "aws/request.Request" representing the // client's request for the ListUsers operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListUsers for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListUsers method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListUsersRequest method. // req, resp := client.ListUsersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListUsersRequest(input *ListUsersInput) (req *request.Request, output *ListUsersOutput) { op := &request.Operation{ Name: opListUsers, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListUsersInput{} } req = c.newRequest(op, input, output) output = &ListUsersOutput{} req.Data = output return } // ListUsers API operation for AWS Identity and Access Management. // // Lists the IAM users that have the specified path prefix. If no path prefix // is specified, the action returns all users in the AWS account. If there are // none, the action returns an empty list. // // You can paginate the results using the MaxItems and Marker parameters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListUsers for usage and error information. // // Returned Error Codes: // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ListUsers(input *ListUsersInput) (*ListUsersOutput, error) { req, out := c.ListUsersRequest(input) err := req.Send() return out, err } // ListUsersPages iterates over the pages of a ListUsers operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListUsers method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListUsers operation. // pageNum := 0 // err := client.ListUsersPages(params, // func(page *ListUsersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListUsersPages(input *ListUsersInput, fn func(p *ListUsersOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListUsersRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListUsersOutput), lastPage) }) } const opListVirtualMFADevices = "ListVirtualMFADevices" // ListVirtualMFADevicesRequest generates a "aws/request.Request" representing the // client's request for the ListVirtualMFADevices operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListVirtualMFADevices for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListVirtualMFADevices method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListVirtualMFADevicesRequest method. // req, resp := client.ListVirtualMFADevicesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ListVirtualMFADevicesRequest(input *ListVirtualMFADevicesInput) (req *request.Request, output *ListVirtualMFADevicesOutput) { op := &request.Operation{ Name: opListVirtualMFADevices, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListVirtualMFADevicesInput{} } req = c.newRequest(op, input, output) output = &ListVirtualMFADevicesOutput{} req.Data = output return } // ListVirtualMFADevices API operation for AWS Identity and Access Management. // // Lists the virtual MFA devices defined in the AWS account by assignment status. // If you do not specify an assignment status, the action returns a list of // all virtual MFA devices. Assignment status can be Assigned, Unassigned, or // Any. // // You can paginate the results using the MaxItems and Marker parameters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ListVirtualMFADevices for usage and error information. func (c *IAM) ListVirtualMFADevices(input *ListVirtualMFADevicesInput) (*ListVirtualMFADevicesOutput, error) { req, out := c.ListVirtualMFADevicesRequest(input) err := req.Send() return out, err } // ListVirtualMFADevicesPages iterates over the pages of a ListVirtualMFADevices operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListVirtualMFADevices method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListVirtualMFADevices operation. // pageNum := 0 // err := client.ListVirtualMFADevicesPages(params, // func(page *ListVirtualMFADevicesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) ListVirtualMFADevicesPages(input *ListVirtualMFADevicesInput, fn func(p *ListVirtualMFADevicesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListVirtualMFADevicesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListVirtualMFADevicesOutput), lastPage) }) } const opPutGroupPolicy = "PutGroupPolicy" // PutGroupPolicyRequest generates a "aws/request.Request" representing the // client's request for the PutGroupPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutGroupPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutGroupPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutGroupPolicyRequest method. // req, resp := client.PutGroupPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) PutGroupPolicyRequest(input *PutGroupPolicyInput) (req *request.Request, output *PutGroupPolicyOutput) { op := &request.Operation{ Name: opPutGroupPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutGroupPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutGroupPolicyOutput{} req.Data = output return } // PutGroupPolicy API operation for AWS Identity and Access Management. // // Adds or updates an inline policy document that is embedded in the specified // IAM group. // // A user can also have managed policies attached to it. To attach a managed // policy to a group, use AttachGroupPolicy. To create a new managed policy, // use CreatePolicy. For information about policies, see Managed Policies and // Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // For information about limits on the number of inline policies that you can // embed in a group, see Limitations on IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) // in the IAM User Guide. // // Because policy documents can be large, you should use POST rather than GET // when calling PutGroupPolicy. For general information about using the Query // API with IAM, go to Making Query Requests (http://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation PutGroupPolicy for usage and error information. // // Returned Error Codes: // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * MalformedPolicyDocument // The request was rejected because the policy document was malformed. The error // message describes the specific error. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) PutGroupPolicy(input *PutGroupPolicyInput) (*PutGroupPolicyOutput, error) { req, out := c.PutGroupPolicyRequest(input) err := req.Send() return out, err } const opPutRolePolicy = "PutRolePolicy" // PutRolePolicyRequest generates a "aws/request.Request" representing the // client's request for the PutRolePolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutRolePolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutRolePolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutRolePolicyRequest method. // req, resp := client.PutRolePolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) PutRolePolicyRequest(input *PutRolePolicyInput) (req *request.Request, output *PutRolePolicyOutput) { op := &request.Operation{ Name: opPutRolePolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutRolePolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutRolePolicyOutput{} req.Data = output return } // PutRolePolicy API operation for AWS Identity and Access Management. // // Adds or updates an inline policy document that is embedded in the specified // IAM role. // // When you embed an inline policy in a role, the inline policy is used as part // of the role's access (permissions) policy. The role's trust policy is created // at the same time as the role, using CreateRole. You can update a role's trust // policy using UpdateAssumeRolePolicy. For more information about IAM roles, // go to Using Roles to Delegate Permissions and Federate Identities (http://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html). // // A role can also have a managed policy attached to it. To attach a managed // policy to a role, use AttachRolePolicy. To create a new managed policy, use // CreatePolicy. For information about policies, see Managed Policies and Inline // Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // For information about limits on the number of inline policies that you can // embed with a role, see Limitations on IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) // in the IAM User Guide. // // Because policy documents can be large, you should use POST rather than GET // when calling PutRolePolicy. For general information about using the Query // API with IAM, go to Making Query Requests (http://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation PutRolePolicy for usage and error information. // // Returned Error Codes: // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * MalformedPolicyDocument // The request was rejected because the policy document was malformed. The error // message describes the specific error. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) PutRolePolicy(input *PutRolePolicyInput) (*PutRolePolicyOutput, error) { req, out := c.PutRolePolicyRequest(input) err := req.Send() return out, err } const opPutUserPolicy = "PutUserPolicy" // PutUserPolicyRequest generates a "aws/request.Request" representing the // client's request for the PutUserPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutUserPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutUserPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutUserPolicyRequest method. // req, resp := client.PutUserPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) PutUserPolicyRequest(input *PutUserPolicyInput) (req *request.Request, output *PutUserPolicyOutput) { op := &request.Operation{ Name: opPutUserPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutUserPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutUserPolicyOutput{} req.Data = output return } // PutUserPolicy API operation for AWS Identity and Access Management. // // Adds or updates an inline policy document that is embedded in the specified // IAM user. // // An IAM user can also have a managed policy attached to it. To attach a managed // policy to a user, use AttachUserPolicy. To create a new managed policy, use // CreatePolicy. For information about policies, see Managed Policies and Inline // Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // For information about limits on the number of inline policies that you can // embed in a user, see Limitations on IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) // in the IAM User Guide. // // Because policy documents can be large, you should use POST rather than GET // when calling PutUserPolicy. For general information about using the Query // API with IAM, go to Making Query Requests (http://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation PutUserPolicy for usage and error information. // // Returned Error Codes: // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * MalformedPolicyDocument // The request was rejected because the policy document was malformed. The error // message describes the specific error. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) PutUserPolicy(input *PutUserPolicyInput) (*PutUserPolicyOutput, error) { req, out := c.PutUserPolicyRequest(input) err := req.Send() return out, err } const opRemoveClientIDFromOpenIDConnectProvider = "RemoveClientIDFromOpenIDConnectProvider" // RemoveClientIDFromOpenIDConnectProviderRequest generates a "aws/request.Request" representing the // client's request for the RemoveClientIDFromOpenIDConnectProvider operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveClientIDFromOpenIDConnectProvider for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveClientIDFromOpenIDConnectProvider method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveClientIDFromOpenIDConnectProviderRequest method. // req, resp := client.RemoveClientIDFromOpenIDConnectProviderRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) RemoveClientIDFromOpenIDConnectProviderRequest(input *RemoveClientIDFromOpenIDConnectProviderInput) (req *request.Request, output *RemoveClientIDFromOpenIDConnectProviderOutput) { op := &request.Operation{ Name: opRemoveClientIDFromOpenIDConnectProvider, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveClientIDFromOpenIDConnectProviderInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RemoveClientIDFromOpenIDConnectProviderOutput{} req.Data = output return } // RemoveClientIDFromOpenIDConnectProvider API operation for AWS Identity and Access Management. // // Removes the specified client ID (also known as audience) from the list of // client IDs registered for the specified IAM OpenID Connect (OIDC) provider // resource object. // // This action is idempotent; it does not fail or return an error if you try // to remove a client ID that does not exist. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation RemoveClientIDFromOpenIDConnectProvider for usage and error information. // // Returned Error Codes: // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) RemoveClientIDFromOpenIDConnectProvider(input *RemoveClientIDFromOpenIDConnectProviderInput) (*RemoveClientIDFromOpenIDConnectProviderOutput, error) { req, out := c.RemoveClientIDFromOpenIDConnectProviderRequest(input) err := req.Send() return out, err } const opRemoveRoleFromInstanceProfile = "RemoveRoleFromInstanceProfile" // RemoveRoleFromInstanceProfileRequest generates a "aws/request.Request" representing the // client's request for the RemoveRoleFromInstanceProfile operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveRoleFromInstanceProfile for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveRoleFromInstanceProfile method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveRoleFromInstanceProfileRequest method. // req, resp := client.RemoveRoleFromInstanceProfileRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) RemoveRoleFromInstanceProfileRequest(input *RemoveRoleFromInstanceProfileInput) (req *request.Request, output *RemoveRoleFromInstanceProfileOutput) { op := &request.Operation{ Name: opRemoveRoleFromInstanceProfile, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveRoleFromInstanceProfileInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RemoveRoleFromInstanceProfileOutput{} req.Data = output return } // RemoveRoleFromInstanceProfile API operation for AWS Identity and Access Management. // // Removes the specified IAM role from the specified EC2 instance profile. // // Make sure you do not have any Amazon EC2 instances running with the role // you are about to remove from the instance profile. Removing a role from an // instance profile that is associated with a running instance break any applications // running on the instance. // // For more information about IAM roles, go to Working with Roles (http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html). // For more information about instance profiles, go to About Instance Profiles // (http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation RemoveRoleFromInstanceProfile for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) RemoveRoleFromInstanceProfile(input *RemoveRoleFromInstanceProfileInput) (*RemoveRoleFromInstanceProfileOutput, error) { req, out := c.RemoveRoleFromInstanceProfileRequest(input) err := req.Send() return out, err } const opRemoveUserFromGroup = "RemoveUserFromGroup" // RemoveUserFromGroupRequest generates a "aws/request.Request" representing the // client's request for the RemoveUserFromGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveUserFromGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveUserFromGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveUserFromGroupRequest method. // req, resp := client.RemoveUserFromGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) RemoveUserFromGroupRequest(input *RemoveUserFromGroupInput) (req *request.Request, output *RemoveUserFromGroupOutput) { op := &request.Operation{ Name: opRemoveUserFromGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveUserFromGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RemoveUserFromGroupOutput{} req.Data = output return } // RemoveUserFromGroup API operation for AWS Identity and Access Management. // // Removes the specified user from the specified group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation RemoveUserFromGroup for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) RemoveUserFromGroup(input *RemoveUserFromGroupInput) (*RemoveUserFromGroupOutput, error) { req, out := c.RemoveUserFromGroupRequest(input) err := req.Send() return out, err } const opResyncMFADevice = "ResyncMFADevice" // ResyncMFADeviceRequest generates a "aws/request.Request" representing the // client's request for the ResyncMFADevice operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ResyncMFADevice for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ResyncMFADevice method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ResyncMFADeviceRequest method. // req, resp := client.ResyncMFADeviceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) ResyncMFADeviceRequest(input *ResyncMFADeviceInput) (req *request.Request, output *ResyncMFADeviceOutput) { op := &request.Operation{ Name: opResyncMFADevice, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ResyncMFADeviceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ResyncMFADeviceOutput{} req.Data = output return } // ResyncMFADevice API operation for AWS Identity and Access Management. // // Synchronizes the specified MFA device with its IAM resource object on the // AWS servers. // // For more information about creating and working with virtual MFA devices, // go to Using a Virtual MFA Device (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_VirtualMFA.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation ResyncMFADevice for usage and error information. // // Returned Error Codes: // * InvalidAuthenticationCode // The request was rejected because the authentication code was not recognized. // The error message describes the specific error. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) ResyncMFADevice(input *ResyncMFADeviceInput) (*ResyncMFADeviceOutput, error) { req, out := c.ResyncMFADeviceRequest(input) err := req.Send() return out, err } const opSetDefaultPolicyVersion = "SetDefaultPolicyVersion" // SetDefaultPolicyVersionRequest generates a "aws/request.Request" representing the // client's request for the SetDefaultPolicyVersion operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetDefaultPolicyVersion for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetDefaultPolicyVersion method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetDefaultPolicyVersionRequest method. // req, resp := client.SetDefaultPolicyVersionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) SetDefaultPolicyVersionRequest(input *SetDefaultPolicyVersionInput) (req *request.Request, output *SetDefaultPolicyVersionOutput) { op := &request.Operation{ Name: opSetDefaultPolicyVersion, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetDefaultPolicyVersionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetDefaultPolicyVersionOutput{} req.Data = output return } // SetDefaultPolicyVersion API operation for AWS Identity and Access Management. // // Sets the specified version of the specified policy as the policy's default // (operative) version. // // This action affects all users, groups, and roles that the policy is attached // to. To list the users, groups, and roles that the policy is attached to, // use the ListEntitiesForPolicy API. // // For information about managed policies, see Managed Policies and Inline Policies // (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation SetDefaultPolicyVersion for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) SetDefaultPolicyVersion(input *SetDefaultPolicyVersionInput) (*SetDefaultPolicyVersionOutput, error) { req, out := c.SetDefaultPolicyVersionRequest(input) err := req.Send() return out, err } const opSimulateCustomPolicy = "SimulateCustomPolicy" // SimulateCustomPolicyRequest generates a "aws/request.Request" representing the // client's request for the SimulateCustomPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SimulateCustomPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SimulateCustomPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SimulateCustomPolicyRequest method. // req, resp := client.SimulateCustomPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) SimulateCustomPolicyRequest(input *SimulateCustomPolicyInput) (req *request.Request, output *SimulatePolicyResponse) { op := &request.Operation{ Name: opSimulateCustomPolicy, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &SimulateCustomPolicyInput{} } req = c.newRequest(op, input, output) output = &SimulatePolicyResponse{} req.Data = output return } // SimulateCustomPolicy API operation for AWS Identity and Access Management. // // Simulate how a set of IAM policies and optionally a resource-based policy // works with a list of API actions and AWS resources to determine the policies' // effective permissions. The policies are provided as strings. // // The simulation does not perform the API actions; it only checks the authorization // to determine if the simulated policies allow or deny the actions. // // If you want to simulate existing policies attached to an IAM user, group, // or role, use SimulatePrincipalPolicy instead. // // Context keys are variables maintained by AWS and its services that provide // details about the context of an API query request. You can use the Condition // element of an IAM policy to evaluate context keys. To get the list of context // keys that the policies require for correct simulation, use GetContextKeysForCustomPolicy. // // If the output is long, you can use MaxItems and Marker parameters to paginate // the results. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation SimulateCustomPolicy for usage and error information. // // Returned Error Codes: // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * PolicyEvaluation // The request failed because a provided policy could not be successfully evaluated. // An additional detail message indicates the source of the failure. // func (c *IAM) SimulateCustomPolicy(input *SimulateCustomPolicyInput) (*SimulatePolicyResponse, error) { req, out := c.SimulateCustomPolicyRequest(input) err := req.Send() return out, err } // SimulateCustomPolicyPages iterates over the pages of a SimulateCustomPolicy operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See SimulateCustomPolicy method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a SimulateCustomPolicy operation. // pageNum := 0 // err := client.SimulateCustomPolicyPages(params, // func(page *SimulatePolicyResponse, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) SimulateCustomPolicyPages(input *SimulateCustomPolicyInput, fn func(p *SimulatePolicyResponse, lastPage bool) (shouldContinue bool)) error { page, _ := c.SimulateCustomPolicyRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*SimulatePolicyResponse), lastPage) }) } const opSimulatePrincipalPolicy = "SimulatePrincipalPolicy" // SimulatePrincipalPolicyRequest generates a "aws/request.Request" representing the // client's request for the SimulatePrincipalPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SimulatePrincipalPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SimulatePrincipalPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SimulatePrincipalPolicyRequest method. // req, resp := client.SimulatePrincipalPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) SimulatePrincipalPolicyRequest(input *SimulatePrincipalPolicyInput) (req *request.Request, output *SimulatePolicyResponse) { op := &request.Operation{ Name: opSimulatePrincipalPolicy, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &SimulatePrincipalPolicyInput{} } req = c.newRequest(op, input, output) output = &SimulatePolicyResponse{} req.Data = output return } // SimulatePrincipalPolicy API operation for AWS Identity and Access Management. // // Simulate how a set of IAM policies attached to an IAM entity works with a // list of API actions and AWS resources to determine the policies' effective // permissions. The entity can be an IAM user, group, or role. If you specify // a user, then the simulation also includes all of the policies that are attached // to groups that the user belongs to . // // You can optionally include a list of one or more additional policies specified // as strings to include in the simulation. If you want to simulate only policies // specified as strings, use SimulateCustomPolicy instead. // // You can also optionally include one resource-based policy to be evaluated // with each of the resources included in the simulation. // // The simulation does not perform the API actions, it only checks the authorization // to determine if the simulated policies allow or deny the actions. // // Note: This API discloses information about the permissions granted to other // users. If you do not want users to see other user's permissions, then consider // allowing them to use SimulateCustomPolicy instead. // // Context keys are variables maintained by AWS and its services that provide // details about the context of an API query request. You can use the Condition // element of an IAM policy to evaluate context keys. To get the list of context // keys that the policies require for correct simulation, use GetContextKeysForPrincipalPolicy. // // If the output is long, you can use the MaxItems and Marker parameters to // paginate the results. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation SimulatePrincipalPolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * PolicyEvaluation // The request failed because a provided policy could not be successfully evaluated. // An additional detail message indicates the source of the failure. // func (c *IAM) SimulatePrincipalPolicy(input *SimulatePrincipalPolicyInput) (*SimulatePolicyResponse, error) { req, out := c.SimulatePrincipalPolicyRequest(input) err := req.Send() return out, err } // SimulatePrincipalPolicyPages iterates over the pages of a SimulatePrincipalPolicy operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See SimulatePrincipalPolicy method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a SimulatePrincipalPolicy operation. // pageNum := 0 // err := client.SimulatePrincipalPolicyPages(params, // func(page *SimulatePolicyResponse, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *IAM) SimulatePrincipalPolicyPages(input *SimulatePrincipalPolicyInput, fn func(p *SimulatePolicyResponse, lastPage bool) (shouldContinue bool)) error { page, _ := c.SimulatePrincipalPolicyRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*SimulatePolicyResponse), lastPage) }) } const opUpdateAccessKey = "UpdateAccessKey" // UpdateAccessKeyRequest generates a "aws/request.Request" representing the // client's request for the UpdateAccessKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateAccessKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateAccessKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateAccessKeyRequest method. // req, resp := client.UpdateAccessKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) UpdateAccessKeyRequest(input *UpdateAccessKeyInput) (req *request.Request, output *UpdateAccessKeyOutput) { op := &request.Operation{ Name: opUpdateAccessKey, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateAccessKeyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateAccessKeyOutput{} req.Data = output return } // UpdateAccessKey API operation for AWS Identity and Access Management. // // Changes the status of the specified access key from Active to Inactive, or // vice versa. This action can be used to disable a user's key as part of a // key rotation work flow. // // If the UserName field is not specified, the UserName is determined implicitly // based on the AWS access key ID used to sign the request. Because this action // works for access keys under the AWS account, you can use this action to manage // root credentials even if the AWS account has no associated users. // // For information about rotating keys, see Managing Keys and Certificates (http://docs.aws.amazon.com/IAM/latest/UserGuide/ManagingCredentials.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation UpdateAccessKey for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) UpdateAccessKey(input *UpdateAccessKeyInput) (*UpdateAccessKeyOutput, error) { req, out := c.UpdateAccessKeyRequest(input) err := req.Send() return out, err } const opUpdateAccountPasswordPolicy = "UpdateAccountPasswordPolicy" // UpdateAccountPasswordPolicyRequest generates a "aws/request.Request" representing the // client's request for the UpdateAccountPasswordPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateAccountPasswordPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateAccountPasswordPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateAccountPasswordPolicyRequest method. // req, resp := client.UpdateAccountPasswordPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) UpdateAccountPasswordPolicyRequest(input *UpdateAccountPasswordPolicyInput) (req *request.Request, output *UpdateAccountPasswordPolicyOutput) { op := &request.Operation{ Name: opUpdateAccountPasswordPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateAccountPasswordPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateAccountPasswordPolicyOutput{} req.Data = output return } // UpdateAccountPasswordPolicy API operation for AWS Identity and Access Management. // // Updates the password policy settings for the AWS account. // // This action does not support partial updates. No parameters are required, // but if you do not specify a parameter, that parameter's value reverts to // its default value. See the Request Parameters section for each parameter's // default value. // // For more information about using a password policy, see Managing an IAM Password // Policy (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingPasswordPolicies.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation UpdateAccountPasswordPolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * MalformedPolicyDocument // The request was rejected because the policy document was malformed. The error // message describes the specific error. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) UpdateAccountPasswordPolicy(input *UpdateAccountPasswordPolicyInput) (*UpdateAccountPasswordPolicyOutput, error) { req, out := c.UpdateAccountPasswordPolicyRequest(input) err := req.Send() return out, err } const opUpdateAssumeRolePolicy = "UpdateAssumeRolePolicy" // UpdateAssumeRolePolicyRequest generates a "aws/request.Request" representing the // client's request for the UpdateAssumeRolePolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateAssumeRolePolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateAssumeRolePolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateAssumeRolePolicyRequest method. // req, resp := client.UpdateAssumeRolePolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) UpdateAssumeRolePolicyRequest(input *UpdateAssumeRolePolicyInput) (req *request.Request, output *UpdateAssumeRolePolicyOutput) { op := &request.Operation{ Name: opUpdateAssumeRolePolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateAssumeRolePolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateAssumeRolePolicyOutput{} req.Data = output return } // UpdateAssumeRolePolicy API operation for AWS Identity and Access Management. // // Updates the policy that grants an IAM entity permission to assume a role. // This is typically referred to as the "role trust policy". For more information // about roles, go to Using Roles to Delegate Permissions and Federate Identities // (http://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation UpdateAssumeRolePolicy for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * MalformedPolicyDocument // The request was rejected because the policy document was malformed. The error // message describes the specific error. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) UpdateAssumeRolePolicy(input *UpdateAssumeRolePolicyInput) (*UpdateAssumeRolePolicyOutput, error) { req, out := c.UpdateAssumeRolePolicyRequest(input) err := req.Send() return out, err } const opUpdateGroup = "UpdateGroup" // UpdateGroupRequest generates a "aws/request.Request" representing the // client's request for the UpdateGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateGroupRequest method. // req, resp := client.UpdateGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) UpdateGroupRequest(input *UpdateGroupInput) (req *request.Request, output *UpdateGroupOutput) { op := &request.Operation{ Name: opUpdateGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateGroupOutput{} req.Data = output return } // UpdateGroup API operation for AWS Identity and Access Management. // // Updates the name and/or the path of the specified IAM group. // // You should understand the implications of changing a group's path or name. // For more information, see Renaming Users and Groups (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_WorkingWithGroupsAndUsers.html) // in the IAM User Guide. // // To change an IAM group name the requester must have appropriate permissions // on both the source object and the target object. For example, to change "Managers" // to "MGRs", the entity making the request must have permission on both "Managers" // and "MGRs", or must have permission on all (*). For more information about // permissions, see Permissions and Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/PermissionsAndPolicies.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation UpdateGroup for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * EntityAlreadyExists // The request was rejected because it attempted to create a resource that already // exists. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) UpdateGroup(input *UpdateGroupInput) (*UpdateGroupOutput, error) { req, out := c.UpdateGroupRequest(input) err := req.Send() return out, err } const opUpdateLoginProfile = "UpdateLoginProfile" // UpdateLoginProfileRequest generates a "aws/request.Request" representing the // client's request for the UpdateLoginProfile operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateLoginProfile for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateLoginProfile method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateLoginProfileRequest method. // req, resp := client.UpdateLoginProfileRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) UpdateLoginProfileRequest(input *UpdateLoginProfileInput) (req *request.Request, output *UpdateLoginProfileOutput) { op := &request.Operation{ Name: opUpdateLoginProfile, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateLoginProfileInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateLoginProfileOutput{} req.Data = output return } // UpdateLoginProfile API operation for AWS Identity and Access Management. // // Changes the password for the specified IAM user. // // IAM users can change their own passwords by calling ChangePassword. For more // information about modifying passwords, see Managing Passwords (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingLogins.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation UpdateLoginProfile for usage and error information. // // Returned Error Codes: // * EntityTemporarilyUnmodifiable // The request was rejected because it referenced an entity that is temporarily // unmodifiable, such as a user name that was deleted and then recreated. The // error indicates that the request is likely to succeed if you try again after // waiting several minutes. The error message describes the entity. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * PasswordPolicyViolation // The request was rejected because the provided password did not meet the requirements // imposed by the account password policy. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) UpdateLoginProfile(input *UpdateLoginProfileInput) (*UpdateLoginProfileOutput, error) { req, out := c.UpdateLoginProfileRequest(input) err := req.Send() return out, err } const opUpdateOpenIDConnectProviderThumbprint = "UpdateOpenIDConnectProviderThumbprint" // UpdateOpenIDConnectProviderThumbprintRequest generates a "aws/request.Request" representing the // client's request for the UpdateOpenIDConnectProviderThumbprint operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateOpenIDConnectProviderThumbprint for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateOpenIDConnectProviderThumbprint method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateOpenIDConnectProviderThumbprintRequest method. // req, resp := client.UpdateOpenIDConnectProviderThumbprintRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) UpdateOpenIDConnectProviderThumbprintRequest(input *UpdateOpenIDConnectProviderThumbprintInput) (req *request.Request, output *UpdateOpenIDConnectProviderThumbprintOutput) { op := &request.Operation{ Name: opUpdateOpenIDConnectProviderThumbprint, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateOpenIDConnectProviderThumbprintInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateOpenIDConnectProviderThumbprintOutput{} req.Data = output return } // UpdateOpenIDConnectProviderThumbprint API operation for AWS Identity and Access Management. // // Replaces the existing list of server certificate thumbprints associated with // an OpenID Connect (OIDC) provider resource object with a new list of thumbprints. // // The list that you pass with this action completely replaces the existing // list of thumbprints. (The lists are not merged.) // // Typically, you need to update a thumbprint only when the identity provider's // certificate changes, which occurs rarely. However, if the provider's certificate // does change, any attempt to assume an IAM role that specifies the OIDC provider // as a principal fails until the certificate thumbprint is updated. // // Because trust for the OIDC provider is ultimately derived from the provider's // certificate and is validated by the thumbprint, it is a best practice to // limit access to the UpdateOpenIDConnectProviderThumbprint action to highly-privileged // users. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation UpdateOpenIDConnectProviderThumbprint for usage and error information. // // Returned Error Codes: // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) UpdateOpenIDConnectProviderThumbprint(input *UpdateOpenIDConnectProviderThumbprintInput) (*UpdateOpenIDConnectProviderThumbprintOutput, error) { req, out := c.UpdateOpenIDConnectProviderThumbprintRequest(input) err := req.Send() return out, err } const opUpdateSAMLProvider = "UpdateSAMLProvider" // UpdateSAMLProviderRequest generates a "aws/request.Request" representing the // client's request for the UpdateSAMLProvider operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateSAMLProvider for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateSAMLProvider method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateSAMLProviderRequest method. // req, resp := client.UpdateSAMLProviderRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) UpdateSAMLProviderRequest(input *UpdateSAMLProviderInput) (req *request.Request, output *UpdateSAMLProviderOutput) { op := &request.Operation{ Name: opUpdateSAMLProvider, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateSAMLProviderInput{} } req = c.newRequest(op, input, output) output = &UpdateSAMLProviderOutput{} req.Data = output return } // UpdateSAMLProvider API operation for AWS Identity and Access Management. // // Updates the metadata document for an existing SAML provider resource object. // // This operation requires Signature Version 4 (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation UpdateSAMLProvider for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * InvalidInput // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) UpdateSAMLProvider(input *UpdateSAMLProviderInput) (*UpdateSAMLProviderOutput, error) { req, out := c.UpdateSAMLProviderRequest(input) err := req.Send() return out, err } const opUpdateSSHPublicKey = "UpdateSSHPublicKey" // UpdateSSHPublicKeyRequest generates a "aws/request.Request" representing the // client's request for the UpdateSSHPublicKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateSSHPublicKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateSSHPublicKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateSSHPublicKeyRequest method. // req, resp := client.UpdateSSHPublicKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) UpdateSSHPublicKeyRequest(input *UpdateSSHPublicKeyInput) (req *request.Request, output *UpdateSSHPublicKeyOutput) { op := &request.Operation{ Name: opUpdateSSHPublicKey, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateSSHPublicKeyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateSSHPublicKeyOutput{} req.Data = output return } // UpdateSSHPublicKey API operation for AWS Identity and Access Management. // // Sets the status of an IAM user's SSH public key to active or inactive. SSH // public keys that are inactive cannot be used for authentication. This action // can be used to disable a user's SSH public key as part of a key rotation // work flow. // // The SSH public key affected by this action is used only for authenticating // the associated IAM user to an AWS CodeCommit repository. For more information // about using SSH keys to authenticate to an AWS CodeCommit repository, see // Set up AWS CodeCommit for SSH Connections (http://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html) // in the AWS CodeCommit User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation UpdateSSHPublicKey for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // func (c *IAM) UpdateSSHPublicKey(input *UpdateSSHPublicKeyInput) (*UpdateSSHPublicKeyOutput, error) { req, out := c.UpdateSSHPublicKeyRequest(input) err := req.Send() return out, err } const opUpdateServerCertificate = "UpdateServerCertificate" // UpdateServerCertificateRequest generates a "aws/request.Request" representing the // client's request for the UpdateServerCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateServerCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateServerCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateServerCertificateRequest method. // req, resp := client.UpdateServerCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) UpdateServerCertificateRequest(input *UpdateServerCertificateInput) (req *request.Request, output *UpdateServerCertificateOutput) { op := &request.Operation{ Name: opUpdateServerCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateServerCertificateInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateServerCertificateOutput{} req.Data = output return } // UpdateServerCertificate API operation for AWS Identity and Access Management. // // Updates the name and/or the path of the specified server certificate stored // in IAM. // // For more information about working with server certificates, including a // list of AWS services that can use the server certificates that you manage // with IAM, go to Working with Server Certificates (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html) // in the IAM User Guide. // // You should understand the implications of changing a server certificate's // path or name. For more information, see Renaming a Server Certificate (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs_manage.html#RenamingServerCerts) // in the IAM User Guide. // // To change a server certificate name the requester must have appropriate permissions // on both the source object and the target object. For example, to change the // name from "ProductionCert" to "ProdCert", the entity making the request must // have permission on "ProductionCert" and "ProdCert", or must have permission // on all (*). For more information about permissions, see Access Management // (http://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) in the IAM // User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation UpdateServerCertificate for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * EntityAlreadyExists // The request was rejected because it attempted to create a resource that already // exists. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) UpdateServerCertificate(input *UpdateServerCertificateInput) (*UpdateServerCertificateOutput, error) { req, out := c.UpdateServerCertificateRequest(input) err := req.Send() return out, err } const opUpdateSigningCertificate = "UpdateSigningCertificate" // UpdateSigningCertificateRequest generates a "aws/request.Request" representing the // client's request for the UpdateSigningCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateSigningCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateSigningCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateSigningCertificateRequest method. // req, resp := client.UpdateSigningCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) UpdateSigningCertificateRequest(input *UpdateSigningCertificateInput) (req *request.Request, output *UpdateSigningCertificateOutput) { op := &request.Operation{ Name: opUpdateSigningCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateSigningCertificateInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateSigningCertificateOutput{} req.Data = output return } // UpdateSigningCertificate API operation for AWS Identity and Access Management. // // Changes the status of the specified user signing certificate from active // to disabled, or vice versa. This action can be used to disable an IAM user's // signing certificate as part of a certificate rotation work flow. // // If the UserName field is not specified, the UserName is determined implicitly // based on the AWS access key ID used to sign the request. Because this action // works for access keys under the AWS account, you can use this action to manage // root credentials even if the AWS account has no associated users. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation UpdateSigningCertificate for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) UpdateSigningCertificate(input *UpdateSigningCertificateInput) (*UpdateSigningCertificateOutput, error) { req, out := c.UpdateSigningCertificateRequest(input) err := req.Send() return out, err } const opUpdateUser = "UpdateUser" // UpdateUserRequest generates a "aws/request.Request" representing the // client's request for the UpdateUser operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateUser for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateUser method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateUserRequest method. // req, resp := client.UpdateUserRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) UpdateUserRequest(input *UpdateUserInput) (req *request.Request, output *UpdateUserOutput) { op := &request.Operation{ Name: opUpdateUser, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateUserInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateUserOutput{} req.Data = output return } // UpdateUser API operation for AWS Identity and Access Management. // // Updates the name and/or the path of the specified IAM user. // // You should understand the implications of changing an IAM user's path or // name. For more information, see Renaming an IAM User (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_manage.html#id_users_renaming) // and Renaming an IAM Group (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups_manage_rename.html) // in the IAM User Guide. // // To change a user name the requester must have appropriate permissions on // both the source object and the target object. For example, to change Bob // to Robert, the entity making the request must have permission on Bob and // Robert, or must have permission on all (*). For more information about permissions, // see Permissions and Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/PermissionsAndPolicies.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation UpdateUser for usage and error information. // // Returned Error Codes: // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * EntityAlreadyExists // The request was rejected because it attempted to create a resource that already // exists. // // * EntityTemporarilyUnmodifiable // The request was rejected because it referenced an entity that is temporarily // unmodifiable, such as a user name that was deleted and then recreated. The // error indicates that the request is likely to succeed if you try again after // waiting several minutes. The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) UpdateUser(input *UpdateUserInput) (*UpdateUserOutput, error) { req, out := c.UpdateUserRequest(input) err := req.Send() return out, err } const opUploadSSHPublicKey = "UploadSSHPublicKey" // UploadSSHPublicKeyRequest generates a "aws/request.Request" representing the // client's request for the UploadSSHPublicKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UploadSSHPublicKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UploadSSHPublicKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UploadSSHPublicKeyRequest method. // req, resp := client.UploadSSHPublicKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) UploadSSHPublicKeyRequest(input *UploadSSHPublicKeyInput) (req *request.Request, output *UploadSSHPublicKeyOutput) { op := &request.Operation{ Name: opUploadSSHPublicKey, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UploadSSHPublicKeyInput{} } req = c.newRequest(op, input, output) output = &UploadSSHPublicKeyOutput{} req.Data = output return } // UploadSSHPublicKey API operation for AWS Identity and Access Management. // // Uploads an SSH public key and associates it with the specified IAM user. // // The SSH public key uploaded by this action can be used only for authenticating // the associated IAM user to an AWS CodeCommit repository. For more information // about using SSH keys to authenticate to an AWS CodeCommit repository, see // Set up AWS CodeCommit for SSH Connections (http://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html) // in the AWS CodeCommit User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation UploadSSHPublicKey for usage and error information. // // Returned Error Codes: // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * InvalidPublicKey // The request was rejected because the public key is malformed or otherwise // invalid. // // * DuplicateSSHPublicKey // The request was rejected because the SSH public key is already associated // with the specified IAM user. // // * UnrecognizedPublicKeyEncoding // The request was rejected because the public key encoding format is unsupported // or unrecognized. // func (c *IAM) UploadSSHPublicKey(input *UploadSSHPublicKeyInput) (*UploadSSHPublicKeyOutput, error) { req, out := c.UploadSSHPublicKeyRequest(input) err := req.Send() return out, err } const opUploadServerCertificate = "UploadServerCertificate" // UploadServerCertificateRequest generates a "aws/request.Request" representing the // client's request for the UploadServerCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UploadServerCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UploadServerCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UploadServerCertificateRequest method. // req, resp := client.UploadServerCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) UploadServerCertificateRequest(input *UploadServerCertificateInput) (req *request.Request, output *UploadServerCertificateOutput) { op := &request.Operation{ Name: opUploadServerCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UploadServerCertificateInput{} } req = c.newRequest(op, input, output) output = &UploadServerCertificateOutput{} req.Data = output return } // UploadServerCertificate API operation for AWS Identity and Access Management. // // Uploads a server certificate entity for the AWS account. The server certificate // entity includes a public key certificate, a private key, and an optional // certificate chain, which should all be PEM-encoded. // // For more information about working with server certificates, including a // list of AWS services that can use the server certificates that you manage // with IAM, go to Working with Server Certificates (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html) // in the IAM User Guide. // // For information about the number of server certificates you can upload, see // Limitations on IAM Entities and Objects (http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-limits.html) // in the IAM User Guide. // // Because the body of the public key certificate, private key, and the certificate // chain can be large, you should use POST rather than GET when calling UploadServerCertificate. // For information about setting up signatures and authorization through the // API, go to Signing AWS API Requests (http://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html) // in the AWS General Reference. For general information about using the Query // API with IAM, go to Calling the API by Making HTTP Query Requests (http://docs.aws.amazon.com/IAM/latest/UserGuide/programming.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation UploadServerCertificate for usage and error information. // // Returned Error Codes: // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * EntityAlreadyExists // The request was rejected because it attempted to create a resource that already // exists. // // * MalformedCertificate // The request was rejected because the certificate was malformed or expired. // The error message describes the specific error. // // * KeyPairMismatch // The request was rejected because the public key certificate and the private // key do not match. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) UploadServerCertificate(input *UploadServerCertificateInput) (*UploadServerCertificateOutput, error) { req, out := c.UploadServerCertificateRequest(input) err := req.Send() return out, err } const opUploadSigningCertificate = "UploadSigningCertificate" // UploadSigningCertificateRequest generates a "aws/request.Request" representing the // client's request for the UploadSigningCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UploadSigningCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UploadSigningCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UploadSigningCertificateRequest method. // req, resp := client.UploadSigningCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IAM) UploadSigningCertificateRequest(input *UploadSigningCertificateInput) (req *request.Request, output *UploadSigningCertificateOutput) { op := &request.Operation{ Name: opUploadSigningCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UploadSigningCertificateInput{} } req = c.newRequest(op, input, output) output = &UploadSigningCertificateOutput{} req.Data = output return } // UploadSigningCertificate API operation for AWS Identity and Access Management. // // Uploads an X.509 signing certificate and associates it with the specified // IAM user. Some AWS services use X.509 signing certificates to validate requests // that are signed with a corresponding private key. When you upload the certificate, // its default status is Active. // // If the UserName field is not specified, the IAM user name is determined implicitly // based on the AWS access key ID used to sign the request. Because this action // works for access keys under the AWS account, you can use this action to manage // root credentials even if the AWS account has no associated users. // // Because the body of a X.509 certificate can be large, you should use POST // rather than GET when calling UploadSigningCertificate. For information about // setting up signatures and authorization through the API, go to Signing AWS // API Requests (http://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html) // in the AWS General Reference. For general information about using the Query // API with IAM, go to Making Query Requests (http://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Identity and Access Management's // API operation UploadSigningCertificate for usage and error information. // // Returned Error Codes: // * LimitExceeded // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error message describes the limit exceeded. // // * EntityAlreadyExists // The request was rejected because it attempted to create a resource that already // exists. // // * MalformedCertificate // The request was rejected because the certificate was malformed or expired. // The error message describes the specific error. // // * InvalidCertificate // The request was rejected because the certificate is invalid. // // * DuplicateCertificate // The request was rejected because the same certificate is associated with // an IAM user in the account. // // * NoSuchEntity // The request was rejected because it referenced an entity that does not exist. // The error message describes the entity. // // * ServiceFailure // The request processing has failed because of an unknown error, exception // or failure. // func (c *IAM) UploadSigningCertificate(input *UploadSigningCertificateInput) (*UploadSigningCertificateOutput, error) { req, out := c.UploadSigningCertificateRequest(input) err := req.Send() return out, err } // Contains information about an AWS access key. // // This data type is used as a response element in the CreateAccessKey and ListAccessKeys // actions. // // The SecretAccessKey value is returned only in response to CreateAccessKey. // You can get a secret access key only when you first create an access key; // you cannot recover the secret access key later. If you lose a secret access // key, you must create a new access key. type AccessKey struct { _ struct{} `type:"structure"` // The ID for this access key. // // AccessKeyId is a required field AccessKeyId *string `min:"16" type:"string" required:"true"` // The date when the access key was created. CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The secret key used to sign requests. // // SecretAccessKey is a required field SecretAccessKey *string `type:"string" required:"true"` // The status of the access key. Active means the key is valid for API calls, // while Inactive means it is not. // // Status is a required field Status *string `type:"string" required:"true" enum:"statusType"` // The name of the IAM user that the access key is associated with. // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AccessKey) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AccessKey) GoString() string { return s.String() } // Contains information about the last time an AWS access key was used. // // This data type is used as a response element in the GetAccessKeyLastUsed // action. type AccessKeyLastUsed struct { _ struct{} `type:"structure"` // The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601), // when the access key was most recently used. This field is null when: // // * The user does not have an access key. // // * An access key exists but has never been used, at least not since IAM // started tracking this information on April 22nd, 2015. // // * There is no sign-in data associated with the user // // LastUsedDate is a required field LastUsedDate *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The AWS region where this access key was most recently used. This field is // null when: // // * The user does not have an access key. // // * An access key exists but has never been used, at least not since IAM // started tracking this information on April 22nd, 2015. // // * There is no sign-in data associated with the user // // For more information about AWS regions, see Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html) // in the Amazon Web Services General Reference. // // Region is a required field Region *string `type:"string" required:"true"` // The name of the AWS service with which this access key was most recently // used. This field is null when: // // * The user does not have an access key. // // * An access key exists but has never been used, at least not since IAM // started tracking this information on April 22nd, 2015. // // * There is no sign-in data associated with the user // // ServiceName is a required field ServiceName *string `type:"string" required:"true"` } // String returns the string representation func (s AccessKeyLastUsed) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AccessKeyLastUsed) GoString() string { return s.String() } // Contains information about an AWS access key, without its secret key. // // This data type is used as a response element in the ListAccessKeys action. type AccessKeyMetadata struct { _ struct{} `type:"structure"` // The ID for this access key. AccessKeyId *string `min:"16" type:"string"` // The date when the access key was created. CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The status of the access key. Active means the key is valid for API calls; // Inactive means it is not. Status *string `type:"string" enum:"statusType"` // The name of the IAM user that the key is associated with. UserName *string `min:"1" type:"string"` } // String returns the string representation func (s AccessKeyMetadata) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AccessKeyMetadata) GoString() string { return s.String() } type AddClientIDToOpenIDConnectProviderInput struct { _ struct{} `type:"structure"` // The client ID (also known as audience) to add to the IAM OpenID Connect provider // resource. // // ClientID is a required field ClientID *string `min:"1" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the IAM OpenID Connect (OIDC) provider // resource to add the client ID to. You can get a list of OIDC provider ARNs // by using the ListOpenIDConnectProviders action. // // OpenIDConnectProviderArn is a required field OpenIDConnectProviderArn *string `min:"20" type:"string" required:"true"` } // String returns the string representation func (s AddClientIDToOpenIDConnectProviderInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddClientIDToOpenIDConnectProviderInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddClientIDToOpenIDConnectProviderInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddClientIDToOpenIDConnectProviderInput"} if s.ClientID == nil { invalidParams.Add(request.NewErrParamRequired("ClientID")) } if s.ClientID != nil && len(*s.ClientID) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientID", 1)) } if s.OpenIDConnectProviderArn == nil { invalidParams.Add(request.NewErrParamRequired("OpenIDConnectProviderArn")) } if s.OpenIDConnectProviderArn != nil && len(*s.OpenIDConnectProviderArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("OpenIDConnectProviderArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddClientIDToOpenIDConnectProviderOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddClientIDToOpenIDConnectProviderOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddClientIDToOpenIDConnectProviderOutput) GoString() string { return s.String() } type AddRoleToInstanceProfileInput struct { _ struct{} `type:"structure"` // The name of the instance profile to update. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // InstanceProfileName is a required field InstanceProfileName *string `min:"1" type:"string" required:"true"` // The name of the role to add. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // RoleName is a required field RoleName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AddRoleToInstanceProfileInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddRoleToInstanceProfileInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddRoleToInstanceProfileInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddRoleToInstanceProfileInput"} if s.InstanceProfileName == nil { invalidParams.Add(request.NewErrParamRequired("InstanceProfileName")) } if s.InstanceProfileName != nil && len(*s.InstanceProfileName) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceProfileName", 1)) } if s.RoleName == nil { invalidParams.Add(request.NewErrParamRequired("RoleName")) } if s.RoleName != nil && len(*s.RoleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddRoleToInstanceProfileOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddRoleToInstanceProfileOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddRoleToInstanceProfileOutput) GoString() string { return s.String() } type AddUserToGroupInput struct { _ struct{} `type:"structure"` // The name of the group to update. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // GroupName is a required field GroupName *string `min:"1" type:"string" required:"true"` // The name of the user to add. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AddUserToGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddUserToGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddUserToGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddUserToGroupInput"} if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddUserToGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddUserToGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddUserToGroupOutput) GoString() string { return s.String() } type AttachGroupPolicyInput struct { _ struct{} `type:"structure"` // The name (friendly name, not ARN) of the group to attach the policy to. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // GroupName is a required field GroupName *string `min:"1" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the IAM policy you want to attach. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // PolicyArn is a required field PolicyArn *string `min:"20" type:"string" required:"true"` } // String returns the string representation func (s AttachGroupPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachGroupPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttachGroupPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttachGroupPolicyInput"} if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if s.PolicyArn == nil { invalidParams.Add(request.NewErrParamRequired("PolicyArn")) } if s.PolicyArn != nil && len(*s.PolicyArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("PolicyArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AttachGroupPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AttachGroupPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachGroupPolicyOutput) GoString() string { return s.String() } type AttachRolePolicyInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the IAM policy you want to attach. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // PolicyArn is a required field PolicyArn *string `min:"20" type:"string" required:"true"` // The name (friendly name, not ARN) of the role to attach the policy to. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // RoleName is a required field RoleName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AttachRolePolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachRolePolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttachRolePolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttachRolePolicyInput"} if s.PolicyArn == nil { invalidParams.Add(request.NewErrParamRequired("PolicyArn")) } if s.PolicyArn != nil && len(*s.PolicyArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("PolicyArn", 20)) } if s.RoleName == nil { invalidParams.Add(request.NewErrParamRequired("RoleName")) } if s.RoleName != nil && len(*s.RoleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AttachRolePolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AttachRolePolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachRolePolicyOutput) GoString() string { return s.String() } type AttachUserPolicyInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the IAM policy you want to attach. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // PolicyArn is a required field PolicyArn *string `min:"20" type:"string" required:"true"` // The name (friendly name, not ARN) of the IAM user to attach the policy to. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AttachUserPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachUserPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttachUserPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttachUserPolicyInput"} if s.PolicyArn == nil { invalidParams.Add(request.NewErrParamRequired("PolicyArn")) } if s.PolicyArn != nil && len(*s.PolicyArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("PolicyArn", 20)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AttachUserPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AttachUserPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachUserPolicyOutput) GoString() string { return s.String() } // Contains information about an attached policy. // // An attached policy is a managed policy that has been attached to a user, // group, or role. This data type is used as a response element in the ListAttachedGroupPolicies, // ListAttachedRolePolicies, ListAttachedUserPolicies, and GetAccountAuthorizationDetails // actions. // // For more information about managed policies, refer to Managed Policies and // Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the Using IAM guide. type AttachedPolicy struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN). ARNs are unique identifiers for AWS resources. // // For more information about ARNs, go to Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. PolicyArn *string `min:"20" type:"string"` // The friendly name of the attached policy. PolicyName *string `min:"1" type:"string"` } // String returns the string representation func (s AttachedPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachedPolicy) GoString() string { return s.String() } type ChangePasswordInput struct { _ struct{} `type:"structure"` // The new password. The new password must conform to the AWS account's password // policy, if one exists. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of almost any printable ASCII character // from the space (\u0020) through the end of the ASCII character range (\u00FF). // You can also include the tab (\u0009), line feed (\u000A), and carriage return // (\u000D) characters. Although any of these characters are valid in a password, // note that many tools, such as the AWS Management Console, might restrict // the ability to enter certain characters because they have special meaning // within that tool. // // NewPassword is a required field NewPassword *string `min:"1" type:"string" required:"true"` // The IAM user's current password. // // OldPassword is a required field OldPassword *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ChangePasswordInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChangePasswordInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ChangePasswordInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ChangePasswordInput"} if s.NewPassword == nil { invalidParams.Add(request.NewErrParamRequired("NewPassword")) } if s.NewPassword != nil && len(*s.NewPassword) < 1 { invalidParams.Add(request.NewErrParamMinLen("NewPassword", 1)) } if s.OldPassword == nil { invalidParams.Add(request.NewErrParamRequired("OldPassword")) } if s.OldPassword != nil && len(*s.OldPassword) < 1 { invalidParams.Add(request.NewErrParamMinLen("OldPassword", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ChangePasswordOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ChangePasswordOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChangePasswordOutput) GoString() string { return s.String() } // Contains information about a condition context key. It includes the name // of the key and specifies the value (or values, if the context key supports // multiple values) to use in the simulation. This information is used when // evaluating the Condition elements of the input policies. // // This data type is used as an input parameter to SimulateCustomPolicy and // SimulateCustomPolicy. type ContextEntry struct { _ struct{} `type:"structure"` // The full name of a condition context key, including the service prefix. For // example, aws:SourceIp or s3:VersionId. ContextKeyName *string `min:"5" type:"string"` // The data type of the value (or values) specified in the ContextKeyValues // parameter. ContextKeyType *string `type:"string" enum:"ContextKeyTypeEnum"` // The value (or values, if the condition context key supports multiple values) // to provide to the simulation for use when the key is referenced by a Condition // element in an input policy. ContextKeyValues []*string `type:"list"` } // String returns the string representation func (s ContextEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ContextEntry) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ContextEntry) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ContextEntry"} if s.ContextKeyName != nil && len(*s.ContextKeyName) < 5 { invalidParams.Add(request.NewErrParamMinLen("ContextKeyName", 5)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateAccessKeyInput struct { _ struct{} `type:"structure"` // The name of the IAM user that the new key will belong to. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- UserName *string `min:"1" type:"string"` } // String returns the string representation func (s CreateAccessKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAccessKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateAccessKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateAccessKeyInput"} if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful CreateAccessKey request. type CreateAccessKeyOutput struct { _ struct{} `type:"structure"` // A structure with details about the access key. // // AccessKey is a required field AccessKey *AccessKey `type:"structure" required:"true"` } // String returns the string representation func (s CreateAccessKeyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAccessKeyOutput) GoString() string { return s.String() } type CreateAccountAliasInput struct { _ struct{} `type:"structure"` // The account alias to create. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of lowercase letters, digits, and dashes. // You cannot start or finish with a dash, nor can you have two dashes in a // row. // // AccountAlias is a required field AccountAlias *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s CreateAccountAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAccountAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateAccountAliasInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateAccountAliasInput"} if s.AccountAlias == nil { invalidParams.Add(request.NewErrParamRequired("AccountAlias")) } if s.AccountAlias != nil && len(*s.AccountAlias) < 3 { invalidParams.Add(request.NewErrParamMinLen("AccountAlias", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateAccountAliasOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateAccountAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAccountAliasOutput) GoString() string { return s.String() } type CreateGroupInput struct { _ struct{} `type:"structure"` // The name of the group to create. Do not include the path in this value. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@-. // The group name must be unique within the account. Group names are not distinguished // by case. For example, you cannot create groups named both "ADMINS" and "admins". // // GroupName is a required field GroupName *string `min:"1" type:"string" required:"true"` // The path to the group. For more information about paths, see IAM Identifiers // (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the IAM User Guide. // // This parameter is optional. If it is not included, it defaults to a slash // (/). // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of either a forward slash (/) by itself // or a string that must begin and end with forward slashes, containing any // ASCII character from the ! (\u0021) thru the DEL character (\u007F), including // most punctuation characters, digits, and upper and lowercased letters. Path *string `min:"1" type:"string"` } // String returns the string representation func (s CreateGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateGroupInput"} if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if s.Path != nil && len(*s.Path) < 1 { invalidParams.Add(request.NewErrParamMinLen("Path", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful CreateGroup request. type CreateGroupOutput struct { _ struct{} `type:"structure"` // A structure containing details about the new group. // // Group is a required field Group *Group `type:"structure" required:"true"` } // String returns the string representation func (s CreateGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateGroupOutput) GoString() string { return s.String() } type CreateInstanceProfileInput struct { _ struct{} `type:"structure"` // The name of the instance profile to create. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // InstanceProfileName is a required field InstanceProfileName *string `min:"1" type:"string" required:"true"` // The path to the instance profile. For more information about paths, see IAM // Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the IAM User Guide. // // This parameter is optional. If it is not included, it defaults to a slash // (/). // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of either a forward slash (/) by itself // or a string that must begin and end with forward slashes, containing any // ASCII character from the ! (\u0021) thru the DEL character (\u007F), including // most punctuation characters, digits, and upper and lowercased letters. Path *string `min:"1" type:"string"` } // String returns the string representation func (s CreateInstanceProfileInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateInstanceProfileInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateInstanceProfileInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateInstanceProfileInput"} if s.InstanceProfileName == nil { invalidParams.Add(request.NewErrParamRequired("InstanceProfileName")) } if s.InstanceProfileName != nil && len(*s.InstanceProfileName) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceProfileName", 1)) } if s.Path != nil && len(*s.Path) < 1 { invalidParams.Add(request.NewErrParamMinLen("Path", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful CreateInstanceProfile request. type CreateInstanceProfileOutput struct { _ struct{} `type:"structure"` // A structure containing details about the new instance profile. // // InstanceProfile is a required field InstanceProfile *InstanceProfile `type:"structure" required:"true"` } // String returns the string representation func (s CreateInstanceProfileOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateInstanceProfileOutput) GoString() string { return s.String() } type CreateLoginProfileInput struct { _ struct{} `type:"structure"` // The new password for the user. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of almost any printable ASCII character // from the space (\u0020) through the end of the ASCII character range (\u00FF). // You can also include the tab (\u0009), line feed (\u000A), and carriage return // (\u000D) characters. Although any of these characters are valid in a password, // note that many tools, such as the AWS Management Console, might restrict // the ability to enter certain characters because they have special meaning // within that tool. // // Password is a required field Password *string `min:"1" type:"string" required:"true"` // Specifies whether the user is required to set a new password on next sign-in. PasswordResetRequired *bool `type:"boolean"` // The name of the IAM user to create a password for. The user must already // exist. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateLoginProfileInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLoginProfileInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateLoginProfileInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateLoginProfileInput"} if s.Password == nil { invalidParams.Add(request.NewErrParamRequired("Password")) } if s.Password != nil && len(*s.Password) < 1 { invalidParams.Add(request.NewErrParamMinLen("Password", 1)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful CreateLoginProfile request. type CreateLoginProfileOutput struct { _ struct{} `type:"structure"` // A structure containing the user name and password create date. // // LoginProfile is a required field LoginProfile *LoginProfile `type:"structure" required:"true"` } // String returns the string representation func (s CreateLoginProfileOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLoginProfileOutput) GoString() string { return s.String() } type CreateOpenIDConnectProviderInput struct { _ struct{} `type:"structure"` // A list of client IDs (also known as audiences). When a mobile or web app // registers with an OpenID Connect provider, they establish a value that identifies // the application. (This is the value that's sent as the client_id parameter // on OAuth requests.) // // You can register multiple client IDs with the same provider. For example, // you might have multiple applications that use the same OIDC provider. You // cannot register more than 100 client IDs with a single IAM OIDC provider. // // There is no defined format for a client ID. The CreateOpenIDConnectProviderRequest // action accepts client IDs up to 255 characters long. ClientIDList []*string `type:"list"` // A list of server certificate thumbprints for the OpenID Connect (OIDC) identity // provider's server certificate(s). Typically this list includes only one entry. // However, IAM lets you have up to five thumbprints for an OIDC provider. This // lets you maintain multiple thumbprints if the identity provider is rotating // certificates. // // The server certificate thumbprint is the hex-encoded SHA-1 hash value of // the X.509 certificate used by the domain where the OpenID Connect provider // makes its keys available. It is always a 40-character string. // // You must provide at least one thumbprint when creating an IAM OIDC provider. // For example, if the OIDC provider is server.example.com and the provider // stores its keys at "https://keys.server.example.com/openid-connect", the // thumbprint string would be the hex-encoded SHA-1 hash value of the certificate // used by https://keys.server.example.com. // // For more information about obtaining the OIDC provider's thumbprint, see // Obtaining the Thumbprint for an OpenID Connect Provider (http://docs.aws.amazon.com/IAM/latest/UserGuide/identity-providers-oidc-obtain-thumbprint.html) // in the IAM User Guide. // // ThumbprintList is a required field ThumbprintList []*string `type:"list" required:"true"` // The URL of the identity provider. The URL must begin with "https://" and // should correspond to the iss claim in the provider's OpenID Connect ID tokens. // Per the OIDC standard, path components are allowed but query parameters are // not. Typically the URL consists of only a host name, like "https://server.example.org" // or "https://example.com". // // You cannot register the same provider multiple times in a single AWS account. // If you try to submit a URL that has already been used for an OpenID Connect // provider in the AWS account, you will get an error. // // Url is a required field Url *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateOpenIDConnectProviderInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateOpenIDConnectProviderInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateOpenIDConnectProviderInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateOpenIDConnectProviderInput"} if s.ThumbprintList == nil { invalidParams.Add(request.NewErrParamRequired("ThumbprintList")) } if s.Url == nil { invalidParams.Add(request.NewErrParamRequired("Url")) } if s.Url != nil && len(*s.Url) < 1 { invalidParams.Add(request.NewErrParamMinLen("Url", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful CreateOpenIDConnectProvider request. type CreateOpenIDConnectProviderOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the new IAM OpenID Connect provider that // is created. For more information, see OpenIDConnectProviderListEntry. OpenIDConnectProviderArn *string `min:"20" type:"string"` } // String returns the string representation func (s CreateOpenIDConnectProviderOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateOpenIDConnectProviderOutput) GoString() string { return s.String() } type CreatePolicyInput struct { _ struct{} `type:"structure"` // A friendly description of the policy. // // Typically used to store information about the permissions defined in the // policy. For example, "Grants access to production DynamoDB tables." // // The policy description is immutable. After a value is assigned, it cannot // be changed. Description *string `type:"string"` // The path for the policy. // // For more information about paths, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the IAM User Guide. // // This parameter is optional. If it is not included, it defaults to a slash // (/). // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of either a forward slash (/) by itself // or a string that must begin and end with forward slashes, containing any // ASCII character from the ! (\u0021) thru the DEL character (\u007F), including // most punctuation characters, digits, and upper and lowercased letters. Path *string `type:"string"` // The JSON policy document that you want to use as the content for the new // policy. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). // // PolicyDocument is a required field PolicyDocument *string `min:"1" type:"string" required:"true"` // The friendly name of the policy. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreatePolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePolicyInput"} if s.PolicyDocument == nil { invalidParams.Add(request.NewErrParamRequired("PolicyDocument")) } if s.PolicyDocument != nil && len(*s.PolicyDocument) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyDocument", 1)) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful CreatePolicy request. type CreatePolicyOutput struct { _ struct{} `type:"structure"` // A structure containing details about the new policy. Policy *Policy `type:"structure"` } // String returns the string representation func (s CreatePolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePolicyOutput) GoString() string { return s.String() } type CreatePolicyVersionInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the IAM policy to which you want to add // a new version. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // PolicyArn is a required field PolicyArn *string `min:"20" type:"string" required:"true"` // The JSON policy document that you want to use as the content for this new // version of the policy. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). // // PolicyDocument is a required field PolicyDocument *string `min:"1" type:"string" required:"true"` // Specifies whether to set this version as the policy's default version. // // When this parameter is true, the new policy version becomes the operative // version; that is, the version that is in effect for the IAM users, groups, // and roles that the policy is attached to. // // For more information about managed policy versions, see Versioning for Managed // Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) // in the IAM User Guide. SetAsDefault *bool `type:"boolean"` } // String returns the string representation func (s CreatePolicyVersionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePolicyVersionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePolicyVersionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePolicyVersionInput"} if s.PolicyArn == nil { invalidParams.Add(request.NewErrParamRequired("PolicyArn")) } if s.PolicyArn != nil && len(*s.PolicyArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("PolicyArn", 20)) } if s.PolicyDocument == nil { invalidParams.Add(request.NewErrParamRequired("PolicyDocument")) } if s.PolicyDocument != nil && len(*s.PolicyDocument) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyDocument", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful CreatePolicyVersion request. type CreatePolicyVersionOutput struct { _ struct{} `type:"structure"` // A structure containing details about the new policy version. PolicyVersion *PolicyVersion `type:"structure"` } // String returns the string representation func (s CreatePolicyVersionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePolicyVersionOutput) GoString() string { return s.String() } type CreateRoleInput struct { _ struct{} `type:"structure"` // The trust relationship policy document that grants an entity permission to // assume the role. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). // // AssumeRolePolicyDocument is a required field AssumeRolePolicyDocument *string `min:"1" type:"string" required:"true"` // The path to the role. For more information about paths, see IAM Identifiers // (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the IAM User Guide. // // This parameter is optional. If it is not included, it defaults to a slash // (/). // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of either a forward slash (/) by itself // or a string that must begin and end with forward slashes, containing any // ASCII character from the ! (\u0021) thru the DEL character (\u007F), including // most punctuation characters, digits, and upper and lowercased letters. Path *string `min:"1" type:"string"` // The name of the role to create. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@-. // Role names are not distinguished by case. For example, you cannot create // roles named both "PRODROLE" and "prodrole". // // RoleName is a required field RoleName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateRoleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRoleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateRoleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateRoleInput"} if s.AssumeRolePolicyDocument == nil { invalidParams.Add(request.NewErrParamRequired("AssumeRolePolicyDocument")) } if s.AssumeRolePolicyDocument != nil && len(*s.AssumeRolePolicyDocument) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssumeRolePolicyDocument", 1)) } if s.Path != nil && len(*s.Path) < 1 { invalidParams.Add(request.NewErrParamMinLen("Path", 1)) } if s.RoleName == nil { invalidParams.Add(request.NewErrParamRequired("RoleName")) } if s.RoleName != nil && len(*s.RoleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful CreateRole request. type CreateRoleOutput struct { _ struct{} `type:"structure"` // A structure containing details about the new role. // // Role is a required field Role *Role `type:"structure" required:"true"` } // String returns the string representation func (s CreateRoleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRoleOutput) GoString() string { return s.String() } type CreateSAMLProviderInput struct { _ struct{} `type:"structure"` // The name of the provider to create. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // An XML document generated by an identity provider (IdP) that supports SAML // 2.0. The document includes the issuer's name, expiration information, and // keys that can be used to validate the SAML authentication response (assertions) // that are received from the IdP. You must generate the metadata document using // the identity management software that is used as your organization's IdP. // // For more information, see About SAML 2.0-based Federation (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html) // in the IAM User Guide // // SAMLMetadataDocument is a required field SAMLMetadataDocument *string `min:"1000" type:"string" required:"true"` } // String returns the string representation func (s CreateSAMLProviderInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSAMLProviderInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateSAMLProviderInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateSAMLProviderInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.SAMLMetadataDocument == nil { invalidParams.Add(request.NewErrParamRequired("SAMLMetadataDocument")) } if s.SAMLMetadataDocument != nil && len(*s.SAMLMetadataDocument) < 1000 { invalidParams.Add(request.NewErrParamMinLen("SAMLMetadataDocument", 1000)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful CreateSAMLProvider request. type CreateSAMLProviderOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the new SAML provider resource in IAM. SAMLProviderArn *string `min:"20" type:"string"` } // String returns the string representation func (s CreateSAMLProviderOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSAMLProviderOutput) GoString() string { return s.String() } type CreateUserInput struct { _ struct{} `type:"structure"` // The path for the user name. For more information about paths, see IAM Identifiers // (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the IAM User Guide. // // This parameter is optional. If it is not included, it defaults to a slash // (/). // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of either a forward slash (/) by itself // or a string that must begin and end with forward slashes, containing any // ASCII character from the ! (\u0021) thru the DEL character (\u007F), including // most punctuation characters, digits, and upper and lowercased letters. Path *string `min:"1" type:"string"` // The name of the user to create. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@-. // User names are not distinguished by case. For example, you cannot create // users named both "TESTUSER" and "testuser". // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateUserInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateUserInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateUserInput"} if s.Path != nil && len(*s.Path) < 1 { invalidParams.Add(request.NewErrParamMinLen("Path", 1)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful CreateUser request. type CreateUserOutput struct { _ struct{} `type:"structure"` // A structure with details about the new IAM user. User *User `type:"structure"` } // String returns the string representation func (s CreateUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateUserOutput) GoString() string { return s.String() } type CreateVirtualMFADeviceInput struct { _ struct{} `type:"structure"` // The path for the virtual MFA device. For more information about paths, see // IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the IAM User Guide. // // This parameter is optional. If it is not included, it defaults to a slash // (/). // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of either a forward slash (/) by itself // or a string that must begin and end with forward slashes, containing any // ASCII character from the ! (\u0021) thru the DEL character (\u007F), including // most punctuation characters, digits, and upper and lowercased letters. Path *string `min:"1" type:"string"` // The name of the virtual MFA device. Use with path to uniquely identify a // virtual MFA device. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // VirtualMFADeviceName is a required field VirtualMFADeviceName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateVirtualMFADeviceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVirtualMFADeviceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateVirtualMFADeviceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateVirtualMFADeviceInput"} if s.Path != nil && len(*s.Path) < 1 { invalidParams.Add(request.NewErrParamMinLen("Path", 1)) } if s.VirtualMFADeviceName == nil { invalidParams.Add(request.NewErrParamRequired("VirtualMFADeviceName")) } if s.VirtualMFADeviceName != nil && len(*s.VirtualMFADeviceName) < 1 { invalidParams.Add(request.NewErrParamMinLen("VirtualMFADeviceName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful CreateVirtualMFADevice request. type CreateVirtualMFADeviceOutput struct { _ struct{} `type:"structure"` // A structure containing details about the new virtual MFA device. // // VirtualMFADevice is a required field VirtualMFADevice *VirtualMFADevice `type:"structure" required:"true"` } // String returns the string representation func (s CreateVirtualMFADeviceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateVirtualMFADeviceOutput) GoString() string { return s.String() } type DeactivateMFADeviceInput struct { _ struct{} `type:"structure"` // The serial number that uniquely identifies the MFA device. For virtual MFA // devices, the serial number is the device ARN. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =/:,.@- // // SerialNumber is a required field SerialNumber *string `min:"9" type:"string" required:"true"` // The name of the user whose MFA device you want to deactivate. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeactivateMFADeviceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeactivateMFADeviceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeactivateMFADeviceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeactivateMFADeviceInput"} if s.SerialNumber == nil { invalidParams.Add(request.NewErrParamRequired("SerialNumber")) } if s.SerialNumber != nil && len(*s.SerialNumber) < 9 { invalidParams.Add(request.NewErrParamMinLen("SerialNumber", 9)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeactivateMFADeviceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeactivateMFADeviceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeactivateMFADeviceOutput) GoString() string { return s.String() } type DeleteAccessKeyInput struct { _ struct{} `type:"structure"` // The access key ID for the access key ID and secret access key you want to // delete. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters that can consist of any upper or lowercased letter // or digit. // // AccessKeyId is a required field AccessKeyId *string `min:"16" type:"string" required:"true"` // The name of the user whose access key pair you want to delete. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- UserName *string `min:"1" type:"string"` } // String returns the string representation func (s DeleteAccessKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAccessKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAccessKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAccessKeyInput"} if s.AccessKeyId == nil { invalidParams.Add(request.NewErrParamRequired("AccessKeyId")) } if s.AccessKeyId != nil && len(*s.AccessKeyId) < 16 { invalidParams.Add(request.NewErrParamMinLen("AccessKeyId", 16)) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteAccessKeyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteAccessKeyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAccessKeyOutput) GoString() string { return s.String() } type DeleteAccountAliasInput struct { _ struct{} `type:"structure"` // The name of the account alias to delete. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of lowercase letters, digits, and dashes. // You cannot start or finish with a dash, nor can you have two dashes in a // row. // // AccountAlias is a required field AccountAlias *string `min:"3" type:"string" required:"true"` } // String returns the string representation func (s DeleteAccountAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAccountAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAccountAliasInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAccountAliasInput"} if s.AccountAlias == nil { invalidParams.Add(request.NewErrParamRequired("AccountAlias")) } if s.AccountAlias != nil && len(*s.AccountAlias) < 3 { invalidParams.Add(request.NewErrParamMinLen("AccountAlias", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteAccountAliasOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteAccountAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAccountAliasOutput) GoString() string { return s.String() } type DeleteAccountPasswordPolicyInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteAccountPasswordPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAccountPasswordPolicyInput) GoString() string { return s.String() } type DeleteAccountPasswordPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteAccountPasswordPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAccountPasswordPolicyOutput) GoString() string { return s.String() } type DeleteGroupInput struct { _ struct{} `type:"structure"` // The name of the IAM group to delete. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // GroupName is a required field GroupName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteGroupInput"} if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteGroupOutput) GoString() string { return s.String() } type DeleteGroupPolicyInput struct { _ struct{} `type:"structure"` // The name (friendly name, not ARN) identifying the group that the policy is // embedded in. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // GroupName is a required field GroupName *string `min:"1" type:"string" required:"true"` // The name identifying the policy document to delete. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteGroupPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteGroupPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteGroupPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteGroupPolicyInput"} if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteGroupPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteGroupPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteGroupPolicyOutput) GoString() string { return s.String() } type DeleteInstanceProfileInput struct { _ struct{} `type:"structure"` // The name of the instance profile to delete. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // InstanceProfileName is a required field InstanceProfileName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteInstanceProfileInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteInstanceProfileInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteInstanceProfileInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteInstanceProfileInput"} if s.InstanceProfileName == nil { invalidParams.Add(request.NewErrParamRequired("InstanceProfileName")) } if s.InstanceProfileName != nil && len(*s.InstanceProfileName) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceProfileName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteInstanceProfileOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteInstanceProfileOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteInstanceProfileOutput) GoString() string { return s.String() } type DeleteLoginProfileInput struct { _ struct{} `type:"structure"` // The name of the user whose password you want to delete. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteLoginProfileInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLoginProfileInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteLoginProfileInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteLoginProfileInput"} if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteLoginProfileOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteLoginProfileOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLoginProfileOutput) GoString() string { return s.String() } type DeleteOpenIDConnectProviderInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the IAM OpenID Connect provider resource // object to delete. You can get a list of OpenID Connect provider resource // ARNs by using the ListOpenIDConnectProviders action. // // OpenIDConnectProviderArn is a required field OpenIDConnectProviderArn *string `min:"20" type:"string" required:"true"` } // String returns the string representation func (s DeleteOpenIDConnectProviderInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteOpenIDConnectProviderInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteOpenIDConnectProviderInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteOpenIDConnectProviderInput"} if s.OpenIDConnectProviderArn == nil { invalidParams.Add(request.NewErrParamRequired("OpenIDConnectProviderArn")) } if s.OpenIDConnectProviderArn != nil && len(*s.OpenIDConnectProviderArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("OpenIDConnectProviderArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteOpenIDConnectProviderOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteOpenIDConnectProviderOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteOpenIDConnectProviderOutput) GoString() string { return s.String() } type DeletePolicyInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the IAM policy you want to delete. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // PolicyArn is a required field PolicyArn *string `min:"20" type:"string" required:"true"` } // String returns the string representation func (s DeletePolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeletePolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeletePolicyInput"} if s.PolicyArn == nil { invalidParams.Add(request.NewErrParamRequired("PolicyArn")) } if s.PolicyArn != nil && len(*s.PolicyArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("PolicyArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeletePolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeletePolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePolicyOutput) GoString() string { return s.String() } type DeletePolicyVersionInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the IAM policy from which you want to delete // a version. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // PolicyArn is a required field PolicyArn *string `min:"20" type:"string" required:"true"` // The policy version to delete. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters that consists of the lowercase letter 'v' followed // by one or two digits, and optionally followed by a period '.' and a string // of letters and digits. // // For more information about managed policy versions, see Versioning for Managed // Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) // in the IAM User Guide. // // VersionId is a required field VersionId *string `type:"string" required:"true"` } // String returns the string representation func (s DeletePolicyVersionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePolicyVersionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeletePolicyVersionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeletePolicyVersionInput"} if s.PolicyArn == nil { invalidParams.Add(request.NewErrParamRequired("PolicyArn")) } if s.PolicyArn != nil && len(*s.PolicyArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("PolicyArn", 20)) } if s.VersionId == nil { invalidParams.Add(request.NewErrParamRequired("VersionId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeletePolicyVersionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeletePolicyVersionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePolicyVersionOutput) GoString() string { return s.String() } type DeleteRoleInput struct { _ struct{} `type:"structure"` // The name of the role to delete. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // RoleName is a required field RoleName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteRoleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRoleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteRoleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteRoleInput"} if s.RoleName == nil { invalidParams.Add(request.NewErrParamRequired("RoleName")) } if s.RoleName != nil && len(*s.RoleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteRoleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteRoleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRoleOutput) GoString() string { return s.String() } type DeleteRolePolicyInput struct { _ struct{} `type:"structure"` // The name of the inline policy to delete from the specified IAM role. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` // The name (friendly name, not ARN) identifying the role that the policy is // embedded in. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // RoleName is a required field RoleName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteRolePolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRolePolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteRolePolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteRolePolicyInput"} if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if s.RoleName == nil { invalidParams.Add(request.NewErrParamRequired("RoleName")) } if s.RoleName != nil && len(*s.RoleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteRolePolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteRolePolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRolePolicyOutput) GoString() string { return s.String() } type DeleteSAMLProviderInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the SAML provider to delete. // // SAMLProviderArn is a required field SAMLProviderArn *string `min:"20" type:"string" required:"true"` } // String returns the string representation func (s DeleteSAMLProviderInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSAMLProviderInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteSAMLProviderInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteSAMLProviderInput"} if s.SAMLProviderArn == nil { invalidParams.Add(request.NewErrParamRequired("SAMLProviderArn")) } if s.SAMLProviderArn != nil && len(*s.SAMLProviderArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("SAMLProviderArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteSAMLProviderOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteSAMLProviderOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSAMLProviderOutput) GoString() string { return s.String() } type DeleteSSHPublicKeyInput struct { _ struct{} `type:"structure"` // The unique identifier for the SSH public key. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters that can consist of any upper or lowercased letter // or digit. // // SSHPublicKeyId is a required field SSHPublicKeyId *string `min:"20" type:"string" required:"true"` // The name of the IAM user associated with the SSH public key. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteSSHPublicKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSSHPublicKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteSSHPublicKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteSSHPublicKeyInput"} if s.SSHPublicKeyId == nil { invalidParams.Add(request.NewErrParamRequired("SSHPublicKeyId")) } if s.SSHPublicKeyId != nil && len(*s.SSHPublicKeyId) < 20 { invalidParams.Add(request.NewErrParamMinLen("SSHPublicKeyId", 20)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteSSHPublicKeyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteSSHPublicKeyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSSHPublicKeyOutput) GoString() string { return s.String() } type DeleteServerCertificateInput struct { _ struct{} `type:"structure"` // The name of the server certificate you want to delete. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // ServerCertificateName is a required field ServerCertificateName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteServerCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteServerCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteServerCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteServerCertificateInput"} if s.ServerCertificateName == nil { invalidParams.Add(request.NewErrParamRequired("ServerCertificateName")) } if s.ServerCertificateName != nil && len(*s.ServerCertificateName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ServerCertificateName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteServerCertificateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteServerCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteServerCertificateOutput) GoString() string { return s.String() } type DeleteSigningCertificateInput struct { _ struct{} `type:"structure"` // The ID of the signing certificate to delete. // // The format of this parameter, as described by its regex (http://wikipedia.org/wiki/regex) // pattern, is a string of characters that can be upper- or lower-cased letters // or digits. // // CertificateId is a required field CertificateId *string `min:"24" type:"string" required:"true"` // The name of the user the signing certificate belongs to. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- UserName *string `min:"1" type:"string"` } // String returns the string representation func (s DeleteSigningCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSigningCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteSigningCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteSigningCertificateInput"} if s.CertificateId == nil { invalidParams.Add(request.NewErrParamRequired("CertificateId")) } if s.CertificateId != nil && len(*s.CertificateId) < 24 { invalidParams.Add(request.NewErrParamMinLen("CertificateId", 24)) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteSigningCertificateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteSigningCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSigningCertificateOutput) GoString() string { return s.String() } type DeleteUserInput struct { _ struct{} `type:"structure"` // The name of the user to delete. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUserInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteUserInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteUserInput"} if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteUserOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUserOutput) GoString() string { return s.String() } type DeleteUserPolicyInput struct { _ struct{} `type:"structure"` // The name identifying the policy document to delete. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` // The name (friendly name, not ARN) identifying the user that the policy is // embedded in. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteUserPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUserPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteUserPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteUserPolicyInput"} if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteUserPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteUserPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUserPolicyOutput) GoString() string { return s.String() } type DeleteVirtualMFADeviceInput struct { _ struct{} `type:"structure"` // The serial number that uniquely identifies the MFA device. For virtual MFA // devices, the serial number is the same as the ARN. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =/:,.@- // // SerialNumber is a required field SerialNumber *string `min:"9" type:"string" required:"true"` } // String returns the string representation func (s DeleteVirtualMFADeviceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVirtualMFADeviceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteVirtualMFADeviceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteVirtualMFADeviceInput"} if s.SerialNumber == nil { invalidParams.Add(request.NewErrParamRequired("SerialNumber")) } if s.SerialNumber != nil && len(*s.SerialNumber) < 9 { invalidParams.Add(request.NewErrParamMinLen("SerialNumber", 9)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteVirtualMFADeviceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteVirtualMFADeviceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVirtualMFADeviceOutput) GoString() string { return s.String() } type DetachGroupPolicyInput struct { _ struct{} `type:"structure"` // The name (friendly name, not ARN) of the IAM group to detach the policy from. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // GroupName is a required field GroupName *string `min:"1" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the IAM policy you want to detach. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // PolicyArn is a required field PolicyArn *string `min:"20" type:"string" required:"true"` } // String returns the string representation func (s DetachGroupPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachGroupPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DetachGroupPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DetachGroupPolicyInput"} if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if s.PolicyArn == nil { invalidParams.Add(request.NewErrParamRequired("PolicyArn")) } if s.PolicyArn != nil && len(*s.PolicyArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("PolicyArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DetachGroupPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DetachGroupPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachGroupPolicyOutput) GoString() string { return s.String() } type DetachRolePolicyInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the IAM policy you want to detach. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // PolicyArn is a required field PolicyArn *string `min:"20" type:"string" required:"true"` // The name (friendly name, not ARN) of the IAM role to detach the policy from. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // RoleName is a required field RoleName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DetachRolePolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachRolePolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DetachRolePolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DetachRolePolicyInput"} if s.PolicyArn == nil { invalidParams.Add(request.NewErrParamRequired("PolicyArn")) } if s.PolicyArn != nil && len(*s.PolicyArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("PolicyArn", 20)) } if s.RoleName == nil { invalidParams.Add(request.NewErrParamRequired("RoleName")) } if s.RoleName != nil && len(*s.RoleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DetachRolePolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DetachRolePolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachRolePolicyOutput) GoString() string { return s.String() } type DetachUserPolicyInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the IAM policy you want to detach. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // PolicyArn is a required field PolicyArn *string `min:"20" type:"string" required:"true"` // The name (friendly name, not ARN) of the IAM user to detach the policy from. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DetachUserPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachUserPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DetachUserPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DetachUserPolicyInput"} if s.PolicyArn == nil { invalidParams.Add(request.NewErrParamRequired("PolicyArn")) } if s.PolicyArn != nil && len(*s.PolicyArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("PolicyArn", 20)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DetachUserPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DetachUserPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachUserPolicyOutput) GoString() string { return s.String() } type EnableMFADeviceInput struct { _ struct{} `type:"structure"` // An authentication code emitted by the device. // // The format for this parameter is a string of 6 digits. // // AuthenticationCode1 is a required field AuthenticationCode1 *string `min:"6" type:"string" required:"true"` // A subsequent authentication code emitted by the device. // // The format for this parameter is a string of 6 digits. // // AuthenticationCode2 is a required field AuthenticationCode2 *string `min:"6" type:"string" required:"true"` // The serial number that uniquely identifies the MFA device. For virtual MFA // devices, the serial number is the device ARN. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =/:,.@- // // SerialNumber is a required field SerialNumber *string `min:"9" type:"string" required:"true"` // The name of the IAM user for whom you want to enable the MFA device. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s EnableMFADeviceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableMFADeviceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableMFADeviceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableMFADeviceInput"} if s.AuthenticationCode1 == nil { invalidParams.Add(request.NewErrParamRequired("AuthenticationCode1")) } if s.AuthenticationCode1 != nil && len(*s.AuthenticationCode1) < 6 { invalidParams.Add(request.NewErrParamMinLen("AuthenticationCode1", 6)) } if s.AuthenticationCode2 == nil { invalidParams.Add(request.NewErrParamRequired("AuthenticationCode2")) } if s.AuthenticationCode2 != nil && len(*s.AuthenticationCode2) < 6 { invalidParams.Add(request.NewErrParamMinLen("AuthenticationCode2", 6)) } if s.SerialNumber == nil { invalidParams.Add(request.NewErrParamRequired("SerialNumber")) } if s.SerialNumber != nil && len(*s.SerialNumber) < 9 { invalidParams.Add(request.NewErrParamMinLen("SerialNumber", 9)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type EnableMFADeviceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s EnableMFADeviceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableMFADeviceOutput) GoString() string { return s.String() } // Contains the results of a simulation. // // This data type is used by the return parameter of SimulateCustomPolicy and // SimulatePrincipalPolicy. type EvaluationResult struct { _ struct{} `type:"structure"` // The name of the API action tested on the indicated resource. // // EvalActionName is a required field EvalActionName *string `min:"3" type:"string" required:"true"` // The result of the simulation. // // EvalDecision is a required field EvalDecision *string `type:"string" required:"true" enum:"PolicyEvaluationDecisionType"` // Additional details about the results of the evaluation decision. When there // are both IAM policies and resource policies, this parameter explains how // each set of policies contributes to the final evaluation decision. When simulating // cross-account access to a resource, both the resource-based policy and the // caller's IAM policy must grant access. See How IAM Roles Differ from Resource-based // Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_compare-resource-policies.html) EvalDecisionDetails map[string]*string `type:"map"` // The ARN of the resource that the indicated API action was tested on. EvalResourceName *string `min:"1" type:"string"` // A list of the statements in the input policies that determine the result // for this scenario. Remember that even if multiple statements allow the action // on the resource, if only one statement denies that action, then the explicit // deny overrides any allow, and the deny statement is the only entry included // in the result. MatchedStatements []*Statement `type:"list"` // A list of context keys that are required by the included input policies but // that were not provided by one of the input parameters. This list is used // when the resource in a simulation is "*", either explicitly, or when the // ResourceArns parameter blank. If you include a list of resources, then any // missing context values are instead included under the ResourceSpecificResults // section. To discover the context keys used by a set of policies, you can // call GetContextKeysForCustomPolicy or GetContextKeysForPrincipalPolicy. MissingContextValues []*string `type:"list"` // The individual results of the simulation of the API action specified in EvalActionName // on each resource. ResourceSpecificResults []*ResourceSpecificResult `type:"list"` } // String returns the string representation func (s EvaluationResult) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EvaluationResult) GoString() string { return s.String() } type GenerateCredentialReportInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GenerateCredentialReportInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GenerateCredentialReportInput) GoString() string { return s.String() } // Contains the response to a successful GenerateCredentialReport request. type GenerateCredentialReportOutput struct { _ struct{} `type:"structure"` // Information about the credential report. Description *string `type:"string"` // Information about the state of the credential report. State *string `type:"string" enum:"ReportStateType"` } // String returns the string representation func (s GenerateCredentialReportOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GenerateCredentialReportOutput) GoString() string { return s.String() } type GetAccessKeyLastUsedInput struct { _ struct{} `type:"structure"` // The identifier of an access key. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters that can consist of any upper or lowercased letter // or digit. // // AccessKeyId is a required field AccessKeyId *string `min:"16" type:"string" required:"true"` } // String returns the string representation func (s GetAccessKeyLastUsedInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAccessKeyLastUsedInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetAccessKeyLastUsedInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetAccessKeyLastUsedInput"} if s.AccessKeyId == nil { invalidParams.Add(request.NewErrParamRequired("AccessKeyId")) } if s.AccessKeyId != nil && len(*s.AccessKeyId) < 16 { invalidParams.Add(request.NewErrParamMinLen("AccessKeyId", 16)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetAccessKeyLastUsed request. It is // also returned as a member of the AccessKeyMetaData structure returned by // the ListAccessKeys action. type GetAccessKeyLastUsedOutput struct { _ struct{} `type:"structure"` // Contains information about the last time the access key was used. AccessKeyLastUsed *AccessKeyLastUsed `type:"structure"` // The name of the AWS IAM user that owns this access key. UserName *string `min:"1" type:"string"` } // String returns the string representation func (s GetAccessKeyLastUsedOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAccessKeyLastUsedOutput) GoString() string { return s.String() } type GetAccountAuthorizationDetailsInput struct { _ struct{} `type:"structure"` // A list of entity types used to filter the results. Only the entities that // match the types you specify are included in the output. Use the value LocalManagedPolicy // to include customer managed policies. // // The format for this parameter is a comma-separated (if more than one) list // of strings. Each string value in the list must be one of the valid values // listed below. Filter []*string `type:"list"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` } // String returns the string representation func (s GetAccountAuthorizationDetailsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAccountAuthorizationDetailsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetAccountAuthorizationDetailsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetAccountAuthorizationDetailsInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetAccountAuthorizationDetails request. type GetAccountAuthorizationDetailsOutput struct { _ struct{} `type:"structure"` // A list containing information about IAM groups. GroupDetailList []*GroupDetail `type:"list"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` // A list containing information about managed policies. Policies []*ManagedPolicyDetail `type:"list"` // A list containing information about IAM roles. RoleDetailList []*RoleDetail `type:"list"` // A list containing information about IAM users. UserDetailList []*UserDetail `type:"list"` } // String returns the string representation func (s GetAccountAuthorizationDetailsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAccountAuthorizationDetailsOutput) GoString() string { return s.String() } type GetAccountPasswordPolicyInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GetAccountPasswordPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAccountPasswordPolicyInput) GoString() string { return s.String() } // Contains the response to a successful GetAccountPasswordPolicy request. type GetAccountPasswordPolicyOutput struct { _ struct{} `type:"structure"` // Contains information about the account password policy. // // This data type is used as a response element in the GetAccountPasswordPolicy // action. // // PasswordPolicy is a required field PasswordPolicy *PasswordPolicy `type:"structure" required:"true"` } // String returns the string representation func (s GetAccountPasswordPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAccountPasswordPolicyOutput) GoString() string { return s.String() } type GetAccountSummaryInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GetAccountSummaryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAccountSummaryInput) GoString() string { return s.String() } // Contains the response to a successful GetAccountSummary request. type GetAccountSummaryOutput struct { _ struct{} `type:"structure"` // A set of key value pairs containing information about IAM entity usage and // IAM quotas. SummaryMap map[string]*int64 `type:"map"` } // String returns the string representation func (s GetAccountSummaryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAccountSummaryOutput) GoString() string { return s.String() } type GetContextKeysForCustomPolicyInput struct { _ struct{} `type:"structure"` // A list of policies for which you want the list of context keys referenced // in those policies. Each document is specified as a string containing the // complete, valid JSON text of an IAM policy. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). // // PolicyInputList is a required field PolicyInputList []*string `type:"list" required:"true"` } // String returns the string representation func (s GetContextKeysForCustomPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetContextKeysForCustomPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetContextKeysForCustomPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetContextKeysForCustomPolicyInput"} if s.PolicyInputList == nil { invalidParams.Add(request.NewErrParamRequired("PolicyInputList")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetContextKeysForPrincipalPolicy or // GetContextKeysForCustomPolicy request. type GetContextKeysForPolicyResponse struct { _ struct{} `type:"structure"` // The list of context keys that are referenced in the input policies. ContextKeyNames []*string `type:"list"` } // String returns the string representation func (s GetContextKeysForPolicyResponse) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetContextKeysForPolicyResponse) GoString() string { return s.String() } type GetContextKeysForPrincipalPolicyInput struct { _ struct{} `type:"structure"` // An optional list of additional policies for which you want the list of context // keys that are referenced. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). PolicyInputList []*string `type:"list"` // The ARN of a user, group, or role whose policies contain the context keys // that you want listed. If you specify a user, the list includes context keys // that are found in all policies attached to the user as well as to all groups // that the user is a member of. If you pick a group or a role, then it includes // only those context keys that are found in policies attached to that entity. // Note that all parameters are shown in unencoded form here for clarity, but // must be URL encoded to be included as a part of a real HTML request. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // PolicySourceArn is a required field PolicySourceArn *string `min:"20" type:"string" required:"true"` } // String returns the string representation func (s GetContextKeysForPrincipalPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetContextKeysForPrincipalPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetContextKeysForPrincipalPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetContextKeysForPrincipalPolicyInput"} if s.PolicySourceArn == nil { invalidParams.Add(request.NewErrParamRequired("PolicySourceArn")) } if s.PolicySourceArn != nil && len(*s.PolicySourceArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("PolicySourceArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetCredentialReportInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GetCredentialReportInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCredentialReportInput) GoString() string { return s.String() } // Contains the response to a successful GetCredentialReport request. type GetCredentialReportOutput struct { _ struct{} `type:"structure"` // Contains the credential report. The report is Base64-encoded. // // Content is automatically base64 encoded/decoded by the SDK. Content []byte `type:"blob"` // The date and time when the credential report was created, in ISO 8601 date-time // format (http://www.iso.org/iso/iso8601). GeneratedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The format (MIME type) of the credential report. ReportFormat *string `type:"string" enum:"ReportFormatType"` } // String returns the string representation func (s GetCredentialReportOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCredentialReportOutput) GoString() string { return s.String() } type GetGroupInput struct { _ struct{} `type:"structure"` // The name of the group. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // GroupName is a required field GroupName *string `min:"1" type:"string" required:"true"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` } // String returns the string representation func (s GetGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetGroupInput"} if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetGroup request. type GetGroupOutput struct { _ struct{} `type:"structure"` // A structure that contains details about the group. // // Group is a required field Group *Group `type:"structure" required:"true"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` // A list of users in the group. // // Users is a required field Users []*User `type:"list" required:"true"` } // String returns the string representation func (s GetGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetGroupOutput) GoString() string { return s.String() } type GetGroupPolicyInput struct { _ struct{} `type:"structure"` // The name of the group the policy is associated with. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // GroupName is a required field GroupName *string `min:"1" type:"string" required:"true"` // The name of the policy document to get. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetGroupPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetGroupPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetGroupPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetGroupPolicyInput"} if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetGroupPolicy request. type GetGroupPolicyOutput struct { _ struct{} `type:"structure"` // The group the policy is associated with. // // GroupName is a required field GroupName *string `min:"1" type:"string" required:"true"` // The policy document. // // PolicyDocument is a required field PolicyDocument *string `min:"1" type:"string" required:"true"` // The name of the policy. // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetGroupPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetGroupPolicyOutput) GoString() string { return s.String() } type GetInstanceProfileInput struct { _ struct{} `type:"structure"` // The name of the instance profile to get information about. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // InstanceProfileName is a required field InstanceProfileName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetInstanceProfileInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetInstanceProfileInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetInstanceProfileInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetInstanceProfileInput"} if s.InstanceProfileName == nil { invalidParams.Add(request.NewErrParamRequired("InstanceProfileName")) } if s.InstanceProfileName != nil && len(*s.InstanceProfileName) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceProfileName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetInstanceProfile request. type GetInstanceProfileOutput struct { _ struct{} `type:"structure"` // A structure containing details about the instance profile. // // InstanceProfile is a required field InstanceProfile *InstanceProfile `type:"structure" required:"true"` } // String returns the string representation func (s GetInstanceProfileOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetInstanceProfileOutput) GoString() string { return s.String() } type GetLoginProfileInput struct { _ struct{} `type:"structure"` // The name of the user whose login profile you want to retrieve. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetLoginProfileInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetLoginProfileInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetLoginProfileInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetLoginProfileInput"} if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetLoginProfile request. type GetLoginProfileOutput struct { _ struct{} `type:"structure"` // A structure containing the user name and password create date for the user. // // LoginProfile is a required field LoginProfile *LoginProfile `type:"structure" required:"true"` } // String returns the string representation func (s GetLoginProfileOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetLoginProfileOutput) GoString() string { return s.String() } type GetOpenIDConnectProviderInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the OIDC provider resource object in IAM // to get information for. You can get a list of OIDC provider resource ARNs // by using the ListOpenIDConnectProviders action. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // OpenIDConnectProviderArn is a required field OpenIDConnectProviderArn *string `min:"20" type:"string" required:"true"` } // String returns the string representation func (s GetOpenIDConnectProviderInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetOpenIDConnectProviderInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetOpenIDConnectProviderInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetOpenIDConnectProviderInput"} if s.OpenIDConnectProviderArn == nil { invalidParams.Add(request.NewErrParamRequired("OpenIDConnectProviderArn")) } if s.OpenIDConnectProviderArn != nil && len(*s.OpenIDConnectProviderArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("OpenIDConnectProviderArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetOpenIDConnectProvider request. type GetOpenIDConnectProviderOutput struct { _ struct{} `type:"structure"` // A list of client IDs (also known as audiences) that are associated with the // specified IAM OIDC provider resource object. For more information, see CreateOpenIDConnectProvider. ClientIDList []*string `type:"list"` // The date and time when the IAM OIDC provider resource object was created // in the AWS account. CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // A list of certificate thumbprints that are associated with the specified // IAM OIDC provider resource object. For more information, see CreateOpenIDConnectProvider. ThumbprintList []*string `type:"list"` // The URL that the IAM OIDC provider resource object is associated with. For // more information, see CreateOpenIDConnectProvider. Url *string `min:"1" type:"string"` } // String returns the string representation func (s GetOpenIDConnectProviderOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetOpenIDConnectProviderOutput) GoString() string { return s.String() } type GetPolicyInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the managed policy that you want information // about. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // PolicyArn is a required field PolicyArn *string `min:"20" type:"string" required:"true"` } // String returns the string representation func (s GetPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetPolicyInput"} if s.PolicyArn == nil { invalidParams.Add(request.NewErrParamRequired("PolicyArn")) } if s.PolicyArn != nil && len(*s.PolicyArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("PolicyArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetPolicy request. type GetPolicyOutput struct { _ struct{} `type:"structure"` // A structure containing details about the policy. Policy *Policy `type:"structure"` } // String returns the string representation func (s GetPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPolicyOutput) GoString() string { return s.String() } type GetPolicyVersionInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the managed policy that you want information // about. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // PolicyArn is a required field PolicyArn *string `min:"20" type:"string" required:"true"` // Identifies the policy version to retrieve. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters that consists of the lowercase letter 'v' followed // by one or two digits, and optionally followed by a period '.' and a string // of letters and digits. // // VersionId is a required field VersionId *string `type:"string" required:"true"` } // String returns the string representation func (s GetPolicyVersionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPolicyVersionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetPolicyVersionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetPolicyVersionInput"} if s.PolicyArn == nil { invalidParams.Add(request.NewErrParamRequired("PolicyArn")) } if s.PolicyArn != nil && len(*s.PolicyArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("PolicyArn", 20)) } if s.VersionId == nil { invalidParams.Add(request.NewErrParamRequired("VersionId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetPolicyVersion request. type GetPolicyVersionOutput struct { _ struct{} `type:"structure"` // A structure containing details about the policy version. PolicyVersion *PolicyVersion `type:"structure"` } // String returns the string representation func (s GetPolicyVersionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPolicyVersionOutput) GoString() string { return s.String() } type GetRoleInput struct { _ struct{} `type:"structure"` // The name of the IAM role to get information about. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // RoleName is a required field RoleName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetRoleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRoleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetRoleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetRoleInput"} if s.RoleName == nil { invalidParams.Add(request.NewErrParamRequired("RoleName")) } if s.RoleName != nil && len(*s.RoleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetRole request. type GetRoleOutput struct { _ struct{} `type:"structure"` // A structure containing details about the IAM role. // // Role is a required field Role *Role `type:"structure" required:"true"` } // String returns the string representation func (s GetRoleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRoleOutput) GoString() string { return s.String() } type GetRolePolicyInput struct { _ struct{} `type:"structure"` // The name of the policy document to get. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` // The name of the role associated with the policy. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // RoleName is a required field RoleName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetRolePolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRolePolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetRolePolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetRolePolicyInput"} if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if s.RoleName == nil { invalidParams.Add(request.NewErrParamRequired("RoleName")) } if s.RoleName != nil && len(*s.RoleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetRolePolicy request. type GetRolePolicyOutput struct { _ struct{} `type:"structure"` // The policy document. // // PolicyDocument is a required field PolicyDocument *string `min:"1" type:"string" required:"true"` // The name of the policy. // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` // The role the policy is associated with. // // RoleName is a required field RoleName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetRolePolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRolePolicyOutput) GoString() string { return s.String() } type GetSAMLProviderInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the SAML provider resource object in IAM // to get information about. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // SAMLProviderArn is a required field SAMLProviderArn *string `min:"20" type:"string" required:"true"` } // String returns the string representation func (s GetSAMLProviderInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSAMLProviderInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetSAMLProviderInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetSAMLProviderInput"} if s.SAMLProviderArn == nil { invalidParams.Add(request.NewErrParamRequired("SAMLProviderArn")) } if s.SAMLProviderArn != nil && len(*s.SAMLProviderArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("SAMLProviderArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetSAMLProvider request. type GetSAMLProviderOutput struct { _ struct{} `type:"structure"` // The date and time when the SAML provider was created. CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The XML metadata document that includes information about an identity provider. SAMLMetadataDocument *string `min:"1000" type:"string"` // The expiration date and time for the SAML provider. ValidUntil *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s GetSAMLProviderOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSAMLProviderOutput) GoString() string { return s.String() } type GetSSHPublicKeyInput struct { _ struct{} `type:"structure"` // Specifies the public key encoding format to use in the response. To retrieve // the public key in ssh-rsa format, use SSH. To retrieve the public key in // PEM format, use PEM. // // Encoding is a required field Encoding *string `type:"string" required:"true" enum:"encodingType"` // The unique identifier for the SSH public key. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters that can consist of any upper or lowercased letter // or digit. // // SSHPublicKeyId is a required field SSHPublicKeyId *string `min:"20" type:"string" required:"true"` // The name of the IAM user associated with the SSH public key. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetSSHPublicKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSSHPublicKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetSSHPublicKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetSSHPublicKeyInput"} if s.Encoding == nil { invalidParams.Add(request.NewErrParamRequired("Encoding")) } if s.SSHPublicKeyId == nil { invalidParams.Add(request.NewErrParamRequired("SSHPublicKeyId")) } if s.SSHPublicKeyId != nil && len(*s.SSHPublicKeyId) < 20 { invalidParams.Add(request.NewErrParamMinLen("SSHPublicKeyId", 20)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetSSHPublicKey request. type GetSSHPublicKeyOutput struct { _ struct{} `type:"structure"` // A structure containing details about the SSH public key. SSHPublicKey *SSHPublicKey `type:"structure"` } // String returns the string representation func (s GetSSHPublicKeyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSSHPublicKeyOutput) GoString() string { return s.String() } type GetServerCertificateInput struct { _ struct{} `type:"structure"` // The name of the server certificate you want to retrieve information about. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // ServerCertificateName is a required field ServerCertificateName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetServerCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetServerCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetServerCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetServerCertificateInput"} if s.ServerCertificateName == nil { invalidParams.Add(request.NewErrParamRequired("ServerCertificateName")) } if s.ServerCertificateName != nil && len(*s.ServerCertificateName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ServerCertificateName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetServerCertificate request. type GetServerCertificateOutput struct { _ struct{} `type:"structure"` // A structure containing details about the server certificate. // // ServerCertificate is a required field ServerCertificate *ServerCertificate `type:"structure" required:"true"` } // String returns the string representation func (s GetServerCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetServerCertificateOutput) GoString() string { return s.String() } type GetUserInput struct { _ struct{} `type:"structure"` // The name of the user to get information about. // // This parameter is optional. If it is not included, it defaults to the user // making the request. The regex pattern (http://wikipedia.org/wiki/regex) for // this parameter is a string of characters consisting of upper and lowercase // alphanumeric characters with no spaces. You can also include any of the following // characters: =,.@- UserName *string `min:"1" type:"string"` } // String returns the string representation func (s GetUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetUserInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetUserInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetUserInput"} if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetUser request. type GetUserOutput struct { _ struct{} `type:"structure"` // A structure containing details about the IAM user. // // User is a required field User *User `type:"structure" required:"true"` } // String returns the string representation func (s GetUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetUserOutput) GoString() string { return s.String() } type GetUserPolicyInput struct { _ struct{} `type:"structure"` // The name of the policy document to get. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` // The name of the user who the policy is associated with. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetUserPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetUserPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetUserPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetUserPolicyInput"} if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetUserPolicy request. type GetUserPolicyOutput struct { _ struct{} `type:"structure"` // The policy document. // // PolicyDocument is a required field PolicyDocument *string `min:"1" type:"string" required:"true"` // The name of the policy. // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` // The user the policy is associated with. // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetUserPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetUserPolicyOutput) GoString() string { return s.String() } // Contains information about an IAM group entity. // // This data type is used as a response element in the following actions: // // * CreateGroup // // * GetGroup // // * ListGroups type Group struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) specifying the group. For more information // about ARNs and how to use them in policies, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. // // Arn is a required field Arn *string `min:"20" type:"string" required:"true"` // The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601), // when the group was created. // // CreateDate is a required field CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The stable and unique string identifying the group. For more information // about IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. // // GroupId is a required field GroupId *string `min:"16" type:"string" required:"true"` // The friendly name that identifies the group. // // GroupName is a required field GroupName *string `min:"1" type:"string" required:"true"` // The path to the group. For more information about paths, see IAM Identifiers // (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. // // Path is a required field Path *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s Group) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Group) GoString() string { return s.String() } // Contains information about an IAM group, including all of the group's policies. // // This data type is used as a response element in the GetAccountAuthorizationDetails // action. type GroupDetail struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN). ARNs are unique identifiers for AWS resources. // // For more information about ARNs, go to Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. Arn *string `min:"20" type:"string"` // A list of the managed policies attached to the group. AttachedManagedPolicies []*AttachedPolicy `type:"list"` // The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601), // when the group was created. CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The stable and unique string identifying the group. For more information // about IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. GroupId *string `min:"16" type:"string"` // The friendly name that identifies the group. GroupName *string `min:"1" type:"string"` // A list of the inline policies embedded in the group. GroupPolicyList []*PolicyDetail `type:"list"` // The path to the group. For more information about paths, see IAM Identifiers // (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. Path *string `min:"1" type:"string"` } // String returns the string representation func (s GroupDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GroupDetail) GoString() string { return s.String() } // Contains information about an instance profile. // // This data type is used as a response element in the following actions: // // * CreateInstanceProfile // // * GetInstanceProfile // // * ListInstanceProfiles // // * ListInstanceProfilesForRole type InstanceProfile struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) specifying the instance profile. For more // information about ARNs and how to use them in policies, see IAM Identifiers // (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. // // Arn is a required field Arn *string `min:"20" type:"string" required:"true"` // The date when the instance profile was created. // // CreateDate is a required field CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The stable and unique string identifying the instance profile. For more information // about IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. // // InstanceProfileId is a required field InstanceProfileId *string `min:"16" type:"string" required:"true"` // The name identifying the instance profile. // // InstanceProfileName is a required field InstanceProfileName *string `min:"1" type:"string" required:"true"` // The path to the instance profile. For more information about paths, see IAM // Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. // // Path is a required field Path *string `min:"1" type:"string" required:"true"` // The role associated with the instance profile. // // Roles is a required field Roles []*Role `type:"list" required:"true"` } // String returns the string representation func (s InstanceProfile) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceProfile) GoString() string { return s.String() } type ListAccessKeysInput struct { _ struct{} `type:"structure"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // The name of the user. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- UserName *string `min:"1" type:"string"` } // String returns the string representation func (s ListAccessKeysInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAccessKeysInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListAccessKeysInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListAccessKeysInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListAccessKeys request. type ListAccessKeysOutput struct { _ struct{} `type:"structure"` // A list of objects containing metadata about the access keys. // // AccessKeyMetadata is a required field AccessKeyMetadata []*AccessKeyMetadata `type:"list" required:"true"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s ListAccessKeysOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAccessKeysOutput) GoString() string { return s.String() } type ListAccountAliasesInput struct { _ struct{} `type:"structure"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` } // String returns the string representation func (s ListAccountAliasesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAccountAliasesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListAccountAliasesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListAccountAliasesInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListAccountAliases request. type ListAccountAliasesOutput struct { _ struct{} `type:"structure"` // A list of aliases associated with the account. AWS supports only one alias // per account. // // AccountAliases is a required field AccountAliases []*string `type:"list" required:"true"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s ListAccountAliasesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAccountAliasesOutput) GoString() string { return s.String() } type ListAttachedGroupPoliciesInput struct { _ struct{} `type:"structure"` // The name (friendly name, not ARN) of the group to list attached policies // for. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // GroupName is a required field GroupName *string `min:"1" type:"string" required:"true"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // The path prefix for filtering the results. This parameter is optional. If // it is not included, it defaults to a slash (/), listing all policies. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of either a forward slash (/) by itself // or a string that must begin and end with forward slashes, containing any // ASCII character from the ! (\u0021) thru the DEL character (\u007F), including // most punctuation characters, digits, and upper and lowercased letters. PathPrefix *string `type:"string"` } // String returns the string representation func (s ListAttachedGroupPoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAttachedGroupPoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListAttachedGroupPoliciesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListAttachedGroupPoliciesInput"} if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListAttachedGroupPolicies request. type ListAttachedGroupPoliciesOutput struct { _ struct{} `type:"structure"` // A list of the attached policies. AttachedPolicies []*AttachedPolicy `type:"list"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s ListAttachedGroupPoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAttachedGroupPoliciesOutput) GoString() string { return s.String() } type ListAttachedRolePoliciesInput struct { _ struct{} `type:"structure"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // The path prefix for filtering the results. This parameter is optional. If // it is not included, it defaults to a slash (/), listing all policies. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of either a forward slash (/) by itself // or a string that must begin and end with forward slashes, containing any // ASCII character from the ! (\u0021) thru the DEL character (\u007F), including // most punctuation characters, digits, and upper and lowercased letters. PathPrefix *string `type:"string"` // The name (friendly name, not ARN) of the role to list attached policies for. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // RoleName is a required field RoleName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListAttachedRolePoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAttachedRolePoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListAttachedRolePoliciesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListAttachedRolePoliciesInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.RoleName == nil { invalidParams.Add(request.NewErrParamRequired("RoleName")) } if s.RoleName != nil && len(*s.RoleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListAttachedRolePolicies request. type ListAttachedRolePoliciesOutput struct { _ struct{} `type:"structure"` // A list of the attached policies. AttachedPolicies []*AttachedPolicy `type:"list"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s ListAttachedRolePoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAttachedRolePoliciesOutput) GoString() string { return s.String() } type ListAttachedUserPoliciesInput struct { _ struct{} `type:"structure"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // The path prefix for filtering the results. This parameter is optional. If // it is not included, it defaults to a slash (/), listing all policies. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of either a forward slash (/) by itself // or a string that must begin and end with forward slashes, containing any // ASCII character from the ! (\u0021) thru the DEL character (\u007F), including // most punctuation characters, digits, and upper and lowercased letters. PathPrefix *string `type:"string"` // The name (friendly name, not ARN) of the user to list attached policies for. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListAttachedUserPoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAttachedUserPoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListAttachedUserPoliciesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListAttachedUserPoliciesInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListAttachedUserPolicies request. type ListAttachedUserPoliciesOutput struct { _ struct{} `type:"structure"` // A list of the attached policies. AttachedPolicies []*AttachedPolicy `type:"list"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s ListAttachedUserPoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAttachedUserPoliciesOutput) GoString() string { return s.String() } type ListEntitiesForPolicyInput struct { _ struct{} `type:"structure"` // The entity type to use for filtering the results. // // For example, when EntityFilter is Role, only the roles that are attached // to the specified policy are returned. This parameter is optional. If it is // not included, all attached entities (users, groups, and roles) are returned. // The argument for this parameter must be one of the valid values listed below. EntityFilter *string `type:"string" enum:"EntityType"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // The path prefix for filtering the results. This parameter is optional. If // it is not included, it defaults to a slash (/), listing all entities. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of either a forward slash (/) by itself // or a string that must begin and end with forward slashes, containing any // ASCII character from the ! (\u0021) thru the DEL character (\u007F), including // most punctuation characters, digits, and upper and lowercased letters. PathPrefix *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of the IAM policy for which you want the versions. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // PolicyArn is a required field PolicyArn *string `min:"20" type:"string" required:"true"` } // String returns the string representation func (s ListEntitiesForPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListEntitiesForPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListEntitiesForPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListEntitiesForPolicyInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.PathPrefix != nil && len(*s.PathPrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("PathPrefix", 1)) } if s.PolicyArn == nil { invalidParams.Add(request.NewErrParamRequired("PolicyArn")) } if s.PolicyArn != nil && len(*s.PolicyArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("PolicyArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListEntitiesForPolicy request. type ListEntitiesForPolicyOutput struct { _ struct{} `type:"structure"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` // A list of IAM groups that the policy is attached to. PolicyGroups []*PolicyGroup `type:"list"` // A list of IAM roles that the policy is attached to. PolicyRoles []*PolicyRole `type:"list"` // A list of IAM users that the policy is attached to. PolicyUsers []*PolicyUser `type:"list"` } // String returns the string representation func (s ListEntitiesForPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListEntitiesForPolicyOutput) GoString() string { return s.String() } type ListGroupPoliciesInput struct { _ struct{} `type:"structure"` // The name of the group to list policies for. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // GroupName is a required field GroupName *string `min:"1" type:"string" required:"true"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` } // String returns the string representation func (s ListGroupPoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListGroupPoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListGroupPoliciesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListGroupPoliciesInput"} if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListGroupPolicies request. type ListGroupPoliciesOutput struct { _ struct{} `type:"structure"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` // A list of policy names. // // PolicyNames is a required field PolicyNames []*string `type:"list" required:"true"` } // String returns the string representation func (s ListGroupPoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListGroupPoliciesOutput) GoString() string { return s.String() } type ListGroupsForUserInput struct { _ struct{} `type:"structure"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // The name of the user to list groups for. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListGroupsForUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListGroupsForUserInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListGroupsForUserInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListGroupsForUserInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListGroupsForUser request. type ListGroupsForUserOutput struct { _ struct{} `type:"structure"` // A list of groups. // // Groups is a required field Groups []*Group `type:"list" required:"true"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s ListGroupsForUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListGroupsForUserOutput) GoString() string { return s.String() } type ListGroupsInput struct { _ struct{} `type:"structure"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // The path prefix for filtering the results. For example, the prefix /division_abc/subdivision_xyz/ // gets all groups whose path starts with /division_abc/subdivision_xyz/. // // This parameter is optional. If it is not included, it defaults to a slash // (/), listing all groups. The regex pattern (http://wikipedia.org/wiki/regex) // for this parameter is a string of characters consisting of either a forward // slash (/) by itself or a string that must begin and end with forward slashes, // containing any ASCII character from the ! (\u0021) thru the DEL character // (\u007F), including most punctuation characters, digits, and upper and lowercased // letters. PathPrefix *string `min:"1" type:"string"` } // String returns the string representation func (s ListGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListGroupsInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.PathPrefix != nil && len(*s.PathPrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("PathPrefix", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListGroups request. type ListGroupsOutput struct { _ struct{} `type:"structure"` // A list of groups. // // Groups is a required field Groups []*Group `type:"list" required:"true"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s ListGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListGroupsOutput) GoString() string { return s.String() } type ListInstanceProfilesForRoleInput struct { _ struct{} `type:"structure"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // The name of the role to list instance profiles for. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // RoleName is a required field RoleName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListInstanceProfilesForRoleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListInstanceProfilesForRoleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListInstanceProfilesForRoleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListInstanceProfilesForRoleInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.RoleName == nil { invalidParams.Add(request.NewErrParamRequired("RoleName")) } if s.RoleName != nil && len(*s.RoleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListInstanceProfilesForRole request. type ListInstanceProfilesForRoleOutput struct { _ struct{} `type:"structure"` // A list of instance profiles. // // InstanceProfiles is a required field InstanceProfiles []*InstanceProfile `type:"list" required:"true"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s ListInstanceProfilesForRoleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListInstanceProfilesForRoleOutput) GoString() string { return s.String() } type ListInstanceProfilesInput struct { _ struct{} `type:"structure"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // The path prefix for filtering the results. For example, the prefix /application_abc/component_xyz/ // gets all instance profiles whose path starts with /application_abc/component_xyz/. // // This parameter is optional. If it is not included, it defaults to a slash // (/), listing all instance profiles. The regex pattern (http://wikipedia.org/wiki/regex) // for this parameter is a string of characters consisting of either a forward // slash (/) by itself or a string that must begin and end with forward slashes, // containing any ASCII character from the ! (\u0021) thru the DEL character // (\u007F), including most punctuation characters, digits, and upper and lowercased // letters. PathPrefix *string `min:"1" type:"string"` } // String returns the string representation func (s ListInstanceProfilesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListInstanceProfilesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListInstanceProfilesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListInstanceProfilesInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.PathPrefix != nil && len(*s.PathPrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("PathPrefix", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListInstanceProfiles request. type ListInstanceProfilesOutput struct { _ struct{} `type:"structure"` // A list of instance profiles. // // InstanceProfiles is a required field InstanceProfiles []*InstanceProfile `type:"list" required:"true"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s ListInstanceProfilesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListInstanceProfilesOutput) GoString() string { return s.String() } type ListMFADevicesInput struct { _ struct{} `type:"structure"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // The name of the user whose MFA devices you want to list. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- UserName *string `min:"1" type:"string"` } // String returns the string representation func (s ListMFADevicesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListMFADevicesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListMFADevicesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListMFADevicesInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListMFADevices request. type ListMFADevicesOutput struct { _ struct{} `type:"structure"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // A list of MFA devices. // // MFADevices is a required field MFADevices []*MFADevice `type:"list" required:"true"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s ListMFADevicesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListMFADevicesOutput) GoString() string { return s.String() } type ListOpenIDConnectProvidersInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ListOpenIDConnectProvidersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListOpenIDConnectProvidersInput) GoString() string { return s.String() } // Contains the response to a successful ListOpenIDConnectProviders request. type ListOpenIDConnectProvidersOutput struct { _ struct{} `type:"structure"` // The list of IAM OIDC provider resource objects defined in the AWS account. OpenIDConnectProviderList []*OpenIDConnectProviderListEntry `type:"list"` } // String returns the string representation func (s ListOpenIDConnectProvidersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListOpenIDConnectProvidersOutput) GoString() string { return s.String() } type ListPoliciesInput struct { _ struct{} `type:"structure"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // A flag to filter the results to only the attached policies. // // When OnlyAttached is true, the returned list contains only the policies that // are attached to an IAM user, group, or role. When OnlyAttached is false, // or when the parameter is not included, all policies are returned. OnlyAttached *bool `type:"boolean"` // The path prefix for filtering the results. This parameter is optional. If // it is not included, it defaults to a slash (/), listing all policies. The // regex pattern (http://wikipedia.org/wiki/regex) for this parameter is a string // of characters consisting of either a forward slash (/) by itself or a string // that must begin and end with forward slashes, containing any ASCII character // from the ! (\u0021) thru the DEL character (\u007F), including most punctuation // characters, digits, and upper and lowercased letters. PathPrefix *string `type:"string"` // The scope to use for filtering the results. // // To list only AWS managed policies, set Scope to AWS. To list only the customer // managed policies in your AWS account, set Scope to Local. // // This parameter is optional. If it is not included, or if it is set to All, // all policies are returned. Scope *string `type:"string" enum:"policyScopeType"` } // String returns the string representation func (s ListPoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListPoliciesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListPoliciesInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListPolicies request. type ListPoliciesOutput struct { _ struct{} `type:"structure"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` // A list of policies. Policies []*Policy `type:"list"` } // String returns the string representation func (s ListPoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPoliciesOutput) GoString() string { return s.String() } type ListPolicyVersionsInput struct { _ struct{} `type:"structure"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // The Amazon Resource Name (ARN) of the IAM policy for which you want the versions. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // PolicyArn is a required field PolicyArn *string `min:"20" type:"string" required:"true"` } // String returns the string representation func (s ListPolicyVersionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPolicyVersionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListPolicyVersionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListPolicyVersionsInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.PolicyArn == nil { invalidParams.Add(request.NewErrParamRequired("PolicyArn")) } if s.PolicyArn != nil && len(*s.PolicyArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("PolicyArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListPolicyVersions request. type ListPolicyVersionsOutput struct { _ struct{} `type:"structure"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` // A list of policy versions. // // For more information about managed policy versions, see Versioning for Managed // Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) // in the IAM User Guide. Versions []*PolicyVersion `type:"list"` } // String returns the string representation func (s ListPolicyVersionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPolicyVersionsOutput) GoString() string { return s.String() } type ListRolePoliciesInput struct { _ struct{} `type:"structure"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // The name of the role to list policies for. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // RoleName is a required field RoleName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListRolePoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRolePoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListRolePoliciesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListRolePoliciesInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.RoleName == nil { invalidParams.Add(request.NewErrParamRequired("RoleName")) } if s.RoleName != nil && len(*s.RoleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListRolePolicies request. type ListRolePoliciesOutput struct { _ struct{} `type:"structure"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` // A list of policy names. // // PolicyNames is a required field PolicyNames []*string `type:"list" required:"true"` } // String returns the string representation func (s ListRolePoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRolePoliciesOutput) GoString() string { return s.String() } type ListRolesInput struct { _ struct{} `type:"structure"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // The path prefix for filtering the results. For example, the prefix /application_abc/component_xyz/ // gets all roles whose path starts with /application_abc/component_xyz/. // // This parameter is optional. If it is not included, it defaults to a slash // (/), listing all roles. The regex pattern (http://wikipedia.org/wiki/regex) // for this parameter is a string of characters consisting of either a forward // slash (/) by itself or a string that must begin and end with forward slashes, // containing any ASCII character from the ! (\u0021) thru the DEL character // (\u007F), including most punctuation characters, digits, and upper and lowercased // letters. PathPrefix *string `min:"1" type:"string"` } // String returns the string representation func (s ListRolesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRolesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListRolesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListRolesInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.PathPrefix != nil && len(*s.PathPrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("PathPrefix", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListRoles request. type ListRolesOutput struct { _ struct{} `type:"structure"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` // A list of roles. // // Roles is a required field Roles []*Role `type:"list" required:"true"` } // String returns the string representation func (s ListRolesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRolesOutput) GoString() string { return s.String() } type ListSAMLProvidersInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ListSAMLProvidersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSAMLProvidersInput) GoString() string { return s.String() } // Contains the response to a successful ListSAMLProviders request. type ListSAMLProvidersOutput struct { _ struct{} `type:"structure"` // The list of SAML provider resource objects defined in IAM for this AWS account. SAMLProviderList []*SAMLProviderListEntry `type:"list"` } // String returns the string representation func (s ListSAMLProvidersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSAMLProvidersOutput) GoString() string { return s.String() } type ListSSHPublicKeysInput struct { _ struct{} `type:"structure"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // The name of the IAM user to list SSH public keys for. If none is specified, // the UserName field is determined implicitly based on the AWS access key used // to sign the request. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- UserName *string `min:"1" type:"string"` } // String returns the string representation func (s ListSSHPublicKeysInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSSHPublicKeysInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListSSHPublicKeysInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListSSHPublicKeysInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListSSHPublicKeys request. type ListSSHPublicKeysOutput struct { _ struct{} `type:"structure"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` // A list of the SSH public keys assigned to IAM user. SSHPublicKeys []*SSHPublicKeyMetadata `type:"list"` } // String returns the string representation func (s ListSSHPublicKeysOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSSHPublicKeysOutput) GoString() string { return s.String() } type ListServerCertificatesInput struct { _ struct{} `type:"structure"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // The path prefix for filtering the results. For example: /company/servercerts // would get all server certificates for which the path starts with /company/servercerts. // // This parameter is optional. If it is not included, it defaults to a slash // (/), listing all server certificates. The regex pattern (http://wikipedia.org/wiki/regex) // for this parameter is a string of characters consisting of either a forward // slash (/) by itself or a string that must begin and end with forward slashes, // containing any ASCII character from the ! (\u0021) thru the DEL character // (\u007F), including most punctuation characters, digits, and upper and lowercased // letters. PathPrefix *string `min:"1" type:"string"` } // String returns the string representation func (s ListServerCertificatesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListServerCertificatesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListServerCertificatesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListServerCertificatesInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.PathPrefix != nil && len(*s.PathPrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("PathPrefix", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListServerCertificates request. type ListServerCertificatesOutput struct { _ struct{} `type:"structure"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` // A list of server certificates. // // ServerCertificateMetadataList is a required field ServerCertificateMetadataList []*ServerCertificateMetadata `type:"list" required:"true"` } // String returns the string representation func (s ListServerCertificatesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListServerCertificatesOutput) GoString() string { return s.String() } type ListSigningCertificatesInput struct { _ struct{} `type:"structure"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // The name of the IAM user whose signing certificates you want to examine. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- UserName *string `min:"1" type:"string"` } // String returns the string representation func (s ListSigningCertificatesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSigningCertificatesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListSigningCertificatesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListSigningCertificatesInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListSigningCertificates request. type ListSigningCertificatesOutput struct { _ struct{} `type:"structure"` // A list of the user's signing certificate information. // // Certificates is a required field Certificates []*SigningCertificate `type:"list" required:"true"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s ListSigningCertificatesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSigningCertificatesOutput) GoString() string { return s.String() } type ListUserPoliciesInput struct { _ struct{} `type:"structure"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // The name of the user to list policies for. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListUserPoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListUserPoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListUserPoliciesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListUserPoliciesInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListUserPolicies request. type ListUserPoliciesOutput struct { _ struct{} `type:"structure"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` // A list of policy names. // // PolicyNames is a required field PolicyNames []*string `type:"list" required:"true"` } // String returns the string representation func (s ListUserPoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListUserPoliciesOutput) GoString() string { return s.String() } type ListUsersInput struct { _ struct{} `type:"structure"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // The path prefix for filtering the results. For example: /division_abc/subdivision_xyz/, // which would get all user names whose path starts with /division_abc/subdivision_xyz/. // // This parameter is optional. If it is not included, it defaults to a slash // (/), listing all user names. The regex pattern (http://wikipedia.org/wiki/regex) // for this parameter is a string of characters consisting of either a forward // slash (/) by itself or a string that must begin and end with forward slashes, // containing any ASCII character from the ! (\u0021) thru the DEL character // (\u007F), including most punctuation characters, digits, and upper and lowercased // letters. PathPrefix *string `min:"1" type:"string"` } // String returns the string representation func (s ListUsersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListUsersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListUsersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListUsersInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.PathPrefix != nil && len(*s.PathPrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("PathPrefix", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListUsers request. type ListUsersOutput struct { _ struct{} `type:"structure"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` // A list of users. // // Users is a required field Users []*User `type:"list" required:"true"` } // String returns the string representation func (s ListUsersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListUsersOutput) GoString() string { return s.String() } type ListVirtualMFADevicesInput struct { _ struct{} `type:"structure"` // The status (Unassigned or Assigned) of the devices to list. If you do not // specify an AssignmentStatus, the action defaults to Any which lists both // assigned and unassigned virtual MFA devices. AssignmentStatus *string `type:"string" enum:"assignmentStatusType"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` } // String returns the string representation func (s ListVirtualMFADevicesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListVirtualMFADevicesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListVirtualMFADevicesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListVirtualMFADevicesInput"} if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful ListVirtualMFADevices request. type ListVirtualMFADevicesOutput struct { _ struct{} `type:"structure"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` // The list of virtual MFA devices in the current account that match the AssignmentStatus // value that was passed in the request. // // VirtualMFADevices is a required field VirtualMFADevices []*VirtualMFADevice `type:"list" required:"true"` } // String returns the string representation func (s ListVirtualMFADevicesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListVirtualMFADevicesOutput) GoString() string { return s.String() } // Contains the user name and password create date for a user. // // This data type is used as a response element in the CreateLoginProfile and // GetLoginProfile actions. type LoginProfile struct { _ struct{} `type:"structure"` // The date when the password for the user was created. // // CreateDate is a required field CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // Specifies whether the user is required to set a new password on next sign-in. PasswordResetRequired *bool `type:"boolean"` // The name of the user, which can be used for signing in to the AWS Management // Console. // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s LoginProfile) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LoginProfile) GoString() string { return s.String() } // Contains information about an MFA device. // // This data type is used as a response element in the ListMFADevices action. type MFADevice struct { _ struct{} `type:"structure"` // The date when the MFA device was enabled for the user. // // EnableDate is a required field EnableDate *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The serial number that uniquely identifies the MFA device. For virtual MFA // devices, the serial number is the device ARN. // // SerialNumber is a required field SerialNumber *string `min:"9" type:"string" required:"true"` // The user with whom the MFA device is associated. // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s MFADevice) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MFADevice) GoString() string { return s.String() } // Contains information about a managed policy, including the policy's ARN, // versions, and the number of principal entities (users, groups, and roles) // that the policy is attached to. // // This data type is used as a response element in the GetAccountAuthorizationDetails // action. // // For more information about managed policies, see Managed Policies and Inline // Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the Using IAM guide. type ManagedPolicyDetail struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN). ARNs are unique identifiers for AWS resources. // // For more information about ARNs, go to Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. Arn *string `min:"20" type:"string"` // The number of principal entities (users, groups, and roles) that the policy // is attached to. AttachmentCount *int64 `type:"integer"` // The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601), // when the policy was created. CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The identifier for the version of the policy that is set as the default (operative) // version. // // For more information about policy versions, see Versioning for Managed Policies // (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) // in the Using IAM guide. DefaultVersionId *string `type:"string"` // A friendly description of the policy. Description *string `type:"string"` // Specifies whether the policy can be attached to an IAM user, group, or role. IsAttachable *bool `type:"boolean"` // The path to the policy. // // For more information about paths, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. Path *string `type:"string"` // The stable and unique string identifying the policy. // // For more information about IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. PolicyId *string `min:"16" type:"string"` // The friendly name (not ARN) identifying the policy. PolicyName *string `min:"1" type:"string"` // A list containing information about the versions of the policy. PolicyVersionList []*PolicyVersion `type:"list"` // The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601), // when the policy was last updated. // // When a policy has only one version, this field contains the date and time // when the policy was created. When a policy has more than one version, this // field contains the date and time when the most recent policy version was // created. UpdateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s ManagedPolicyDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ManagedPolicyDetail) GoString() string { return s.String() } // Contains the Amazon Resource Name (ARN) for an IAM OpenID Connect provider. type OpenIDConnectProviderListEntry struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN). ARNs are unique identifiers for AWS resources. // // For more information about ARNs, go to Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. Arn *string `min:"20" type:"string"` } // String returns the string representation func (s OpenIDConnectProviderListEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OpenIDConnectProviderListEntry) GoString() string { return s.String() } // Contains information about the account password policy. // // This data type is used as a response element in the GetAccountPasswordPolicy // action. type PasswordPolicy struct { _ struct{} `type:"structure"` // Specifies whether IAM users are allowed to change their own password. AllowUsersToChangePassword *bool `type:"boolean"` // Indicates whether passwords in the account expire. Returns true if MaxPasswordAge // is contains a value greater than 0. Returns false if MaxPasswordAge is 0 // or not present. ExpirePasswords *bool `type:"boolean"` // Specifies whether IAM users are prevented from setting a new password after // their password has expired. HardExpiry *bool `type:"boolean"` // The number of days that an IAM user password is valid. MaxPasswordAge *int64 `min:"1" type:"integer"` // Minimum length to require for IAM user passwords. MinimumPasswordLength *int64 `min:"6" type:"integer"` // Specifies the number of previous passwords that IAM users are prevented from // reusing. PasswordReusePrevention *int64 `min:"1" type:"integer"` // Specifies whether to require lowercase characters for IAM user passwords. RequireLowercaseCharacters *bool `type:"boolean"` // Specifies whether to require numbers for IAM user passwords. RequireNumbers *bool `type:"boolean"` // Specifies whether to require symbols for IAM user passwords. RequireSymbols *bool `type:"boolean"` // Specifies whether to require uppercase characters for IAM user passwords. RequireUppercaseCharacters *bool `type:"boolean"` } // String returns the string representation func (s PasswordPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PasswordPolicy) GoString() string { return s.String() } // Contains information about a managed policy. // // This data type is used as a response element in the CreatePolicy, GetPolicy, // and ListPolicies actions. // // For more information about managed policies, refer to Managed Policies and // Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the Using IAM guide. type Policy struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN). ARNs are unique identifiers for AWS resources. // // For more information about ARNs, go to Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. Arn *string `min:"20" type:"string"` // The number of entities (users, groups, and roles) that the policy is attached // to. AttachmentCount *int64 `type:"integer"` // The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601), // when the policy was created. CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The identifier for the version of the policy that is set as the default version. DefaultVersionId *string `type:"string"` // A friendly description of the policy. // // This element is included in the response to the GetPolicy operation. It is // not included in the response to the ListPolicies operation. Description *string `type:"string"` // Specifies whether the policy can be attached to an IAM user, group, or role. IsAttachable *bool `type:"boolean"` // The path to the policy. // // For more information about paths, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. Path *string `type:"string"` // The stable and unique string identifying the policy. // // For more information about IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. PolicyId *string `min:"16" type:"string"` // The friendly name (not ARN) identifying the policy. PolicyName *string `min:"1" type:"string"` // The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601), // when the policy was last updated. // // When a policy has only one version, this field contains the date and time // when the policy was created. When a policy has more than one version, this // field contains the date and time when the most recent policy version was // created. UpdateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s Policy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Policy) GoString() string { return s.String() } // Contains information about an IAM policy, including the policy document. // // This data type is used as a response element in the GetAccountAuthorizationDetails // action. type PolicyDetail struct { _ struct{} `type:"structure"` // The policy document. PolicyDocument *string `min:"1" type:"string"` // The name of the policy. PolicyName *string `min:"1" type:"string"` } // String returns the string representation func (s PolicyDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PolicyDetail) GoString() string { return s.String() } // Contains information about a group that a managed policy is attached to. // // This data type is used as a response element in the ListEntitiesForPolicy // action. // // For more information about managed policies, refer to Managed Policies and // Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the Using IAM guide. type PolicyGroup struct { _ struct{} `type:"structure"` // The stable and unique string identifying the group. For more information // about IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html) // in the IAM User Guide. GroupId *string `min:"16" type:"string"` // The name (friendly name, not ARN) identifying the group. GroupName *string `min:"1" type:"string"` } // String returns the string representation func (s PolicyGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PolicyGroup) GoString() string { return s.String() } // Contains information about a role that a managed policy is attached to. // // This data type is used as a response element in the ListEntitiesForPolicy // action. // // For more information about managed policies, refer to Managed Policies and // Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the Using IAM guide. type PolicyRole struct { _ struct{} `type:"structure"` // The stable and unique string identifying the role. For more information about // IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html) // in the IAM User Guide. RoleId *string `min:"16" type:"string"` // The name (friendly name, not ARN) identifying the role. RoleName *string `min:"1" type:"string"` } // String returns the string representation func (s PolicyRole) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PolicyRole) GoString() string { return s.String() } // Contains information about a user that a managed policy is attached to. // // This data type is used as a response element in the ListEntitiesForPolicy // action. // // For more information about managed policies, refer to Managed Policies and // Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the Using IAM guide. type PolicyUser struct { _ struct{} `type:"structure"` // The stable and unique string identifying the user. For more information about // IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html) // in the IAM User Guide. UserId *string `min:"16" type:"string"` // The name (friendly name, not ARN) identifying the user. UserName *string `min:"1" type:"string"` } // String returns the string representation func (s PolicyUser) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PolicyUser) GoString() string { return s.String() } // Contains information about a version of a managed policy. // // This data type is used as a response element in the CreatePolicyVersion, // GetPolicyVersion, ListPolicyVersions, and GetAccountAuthorizationDetails // actions. // // For more information about managed policies, refer to Managed Policies and // Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) // in the Using IAM guide. type PolicyVersion struct { _ struct{} `type:"structure"` // The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601), // when the policy version was created. CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The policy document. // // The policy document is returned in the response to the GetPolicyVersion and // GetAccountAuthorizationDetails operations. It is not returned in the response // to the CreatePolicyVersion or ListPolicyVersions operations. Document *string `min:"1" type:"string"` // Specifies whether the policy version is set as the policy's default version. IsDefaultVersion *bool `type:"boolean"` // The identifier for the policy version. // // Policy version identifiers always begin with v (always lowercase). When a // policy is created, the first policy version is v1. VersionId *string `type:"string"` } // String returns the string representation func (s PolicyVersion) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PolicyVersion) GoString() string { return s.String() } // Contains the row and column of a location of a Statement element in a policy // document. // // This data type is used as a member of the Statement type. type Position struct { _ struct{} `type:"structure"` // The column in the line containing the specified position in the document. Column *int64 `type:"integer"` // The line containing the specified position in the document. Line *int64 `type:"integer"` } // String returns the string representation func (s Position) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Position) GoString() string { return s.String() } type PutGroupPolicyInput struct { _ struct{} `type:"structure"` // The name of the group to associate the policy with. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // GroupName is a required field GroupName *string `min:"1" type:"string" required:"true"` // The policy document. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). // // PolicyDocument is a required field PolicyDocument *string `min:"1" type:"string" required:"true"` // The name of the policy document. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s PutGroupPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutGroupPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutGroupPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutGroupPolicyInput"} if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if s.PolicyDocument == nil { invalidParams.Add(request.NewErrParamRequired("PolicyDocument")) } if s.PolicyDocument != nil && len(*s.PolicyDocument) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyDocument", 1)) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutGroupPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutGroupPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutGroupPolicyOutput) GoString() string { return s.String() } type PutRolePolicyInput struct { _ struct{} `type:"structure"` // The policy document. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). // // PolicyDocument is a required field PolicyDocument *string `min:"1" type:"string" required:"true"` // The name of the policy document. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` // The name of the role to associate the policy with. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // RoleName is a required field RoleName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s PutRolePolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRolePolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutRolePolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutRolePolicyInput"} if s.PolicyDocument == nil { invalidParams.Add(request.NewErrParamRequired("PolicyDocument")) } if s.PolicyDocument != nil && len(*s.PolicyDocument) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyDocument", 1)) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if s.RoleName == nil { invalidParams.Add(request.NewErrParamRequired("RoleName")) } if s.RoleName != nil && len(*s.RoleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutRolePolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutRolePolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRolePolicyOutput) GoString() string { return s.String() } type PutUserPolicyInput struct { _ struct{} `type:"structure"` // The policy document. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). // // PolicyDocument is a required field PolicyDocument *string `min:"1" type:"string" required:"true"` // The name of the policy document. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` // The name of the user to associate the policy with. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s PutUserPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutUserPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutUserPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutUserPolicyInput"} if s.PolicyDocument == nil { invalidParams.Add(request.NewErrParamRequired("PolicyDocument")) } if s.PolicyDocument != nil && len(*s.PolicyDocument) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyDocument", 1)) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutUserPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutUserPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutUserPolicyOutput) GoString() string { return s.String() } type RemoveClientIDFromOpenIDConnectProviderInput struct { _ struct{} `type:"structure"` // The client ID (also known as audience) to remove from the IAM OIDC provider // resource. For more information about client IDs, see CreateOpenIDConnectProvider. // // ClientID is a required field ClientID *string `min:"1" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the IAM OIDC provider resource to remove // the client ID from. You can get a list of OIDC provider ARNs by using the // ListOpenIDConnectProviders action. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // OpenIDConnectProviderArn is a required field OpenIDConnectProviderArn *string `min:"20" type:"string" required:"true"` } // String returns the string representation func (s RemoveClientIDFromOpenIDConnectProviderInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveClientIDFromOpenIDConnectProviderInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveClientIDFromOpenIDConnectProviderInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveClientIDFromOpenIDConnectProviderInput"} if s.ClientID == nil { invalidParams.Add(request.NewErrParamRequired("ClientID")) } if s.ClientID != nil && len(*s.ClientID) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientID", 1)) } if s.OpenIDConnectProviderArn == nil { invalidParams.Add(request.NewErrParamRequired("OpenIDConnectProviderArn")) } if s.OpenIDConnectProviderArn != nil && len(*s.OpenIDConnectProviderArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("OpenIDConnectProviderArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemoveClientIDFromOpenIDConnectProviderOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveClientIDFromOpenIDConnectProviderOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveClientIDFromOpenIDConnectProviderOutput) GoString() string { return s.String() } type RemoveRoleFromInstanceProfileInput struct { _ struct{} `type:"structure"` // The name of the instance profile to update. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // InstanceProfileName is a required field InstanceProfileName *string `min:"1" type:"string" required:"true"` // The name of the role to remove. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // RoleName is a required field RoleName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s RemoveRoleFromInstanceProfileInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveRoleFromInstanceProfileInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveRoleFromInstanceProfileInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveRoleFromInstanceProfileInput"} if s.InstanceProfileName == nil { invalidParams.Add(request.NewErrParamRequired("InstanceProfileName")) } if s.InstanceProfileName != nil && len(*s.InstanceProfileName) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceProfileName", 1)) } if s.RoleName == nil { invalidParams.Add(request.NewErrParamRequired("RoleName")) } if s.RoleName != nil && len(*s.RoleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemoveRoleFromInstanceProfileOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveRoleFromInstanceProfileOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveRoleFromInstanceProfileOutput) GoString() string { return s.String() } type RemoveUserFromGroupInput struct { _ struct{} `type:"structure"` // The name of the group to update. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // GroupName is a required field GroupName *string `min:"1" type:"string" required:"true"` // The name of the user to remove. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s RemoveUserFromGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveUserFromGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveUserFromGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveUserFromGroupInput"} if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemoveUserFromGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveUserFromGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveUserFromGroupOutput) GoString() string { return s.String() } // Contains the result of the simulation of a single API action call on a single // resource. // // This data type is used by a member of the EvaluationResult data type. type ResourceSpecificResult struct { _ struct{} `type:"structure"` // Additional details about the results of the evaluation decision. When there // are both IAM policies and resource policies, this parameter explains how // each set of policies contributes to the final evaluation decision. When simulating // cross-account access to a resource, both the resource-based policy and the // caller's IAM policy must grant access. EvalDecisionDetails map[string]*string `type:"map"` // The result of the simulation of the simulated API action on the resource // specified in EvalResourceName. // // EvalResourceDecision is a required field EvalResourceDecision *string `type:"string" required:"true" enum:"PolicyEvaluationDecisionType"` // The name of the simulated resource, in Amazon Resource Name (ARN) format. // // EvalResourceName is a required field EvalResourceName *string `min:"1" type:"string" required:"true"` // A list of the statements in the input policies that determine the result // for this part of the simulation. Remember that even if multiple statements // allow the action on the resource, if any statement denies that action, then // the explicit deny overrides any allow, and the deny statement is the only // entry included in the result. MatchedStatements []*Statement `type:"list"` // A list of context keys that are required by the included input policies but // that were not provided by one of the input parameters. This list is used // when a list of ARNs is included in the ResourceArns parameter instead of // "*". If you do not specify individual resources, by setting ResourceArns // to "*" or by not including the ResourceArns parameter, then any missing context // values are instead included under the EvaluationResults section. To discover // the context keys used by a set of policies, you can call GetContextKeysForCustomPolicy // or GetContextKeysForPrincipalPolicy. MissingContextValues []*string `type:"list"` } // String returns the string representation func (s ResourceSpecificResult) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResourceSpecificResult) GoString() string { return s.String() } type ResyncMFADeviceInput struct { _ struct{} `type:"structure"` // An authentication code emitted by the device. // // The format for this parameter is a sequence of six digits. // // AuthenticationCode1 is a required field AuthenticationCode1 *string `min:"6" type:"string" required:"true"` // A subsequent authentication code emitted by the device. // // The format for this parameter is a sequence of six digits. // // AuthenticationCode2 is a required field AuthenticationCode2 *string `min:"6" type:"string" required:"true"` // Serial number that uniquely identifies the MFA device. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // SerialNumber is a required field SerialNumber *string `min:"9" type:"string" required:"true"` // The name of the user whose MFA device you want to resynchronize. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ResyncMFADeviceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResyncMFADeviceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ResyncMFADeviceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ResyncMFADeviceInput"} if s.AuthenticationCode1 == nil { invalidParams.Add(request.NewErrParamRequired("AuthenticationCode1")) } if s.AuthenticationCode1 != nil && len(*s.AuthenticationCode1) < 6 { invalidParams.Add(request.NewErrParamMinLen("AuthenticationCode1", 6)) } if s.AuthenticationCode2 == nil { invalidParams.Add(request.NewErrParamRequired("AuthenticationCode2")) } if s.AuthenticationCode2 != nil && len(*s.AuthenticationCode2) < 6 { invalidParams.Add(request.NewErrParamMinLen("AuthenticationCode2", 6)) } if s.SerialNumber == nil { invalidParams.Add(request.NewErrParamRequired("SerialNumber")) } if s.SerialNumber != nil && len(*s.SerialNumber) < 9 { invalidParams.Add(request.NewErrParamMinLen("SerialNumber", 9)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ResyncMFADeviceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ResyncMFADeviceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResyncMFADeviceOutput) GoString() string { return s.String() } // Contains information about an IAM role. // // This data type is used as a response element in the following actions: // // * CreateRole // // * GetRole // // * ListRoles type Role struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) specifying the role. For more information // about ARNs and how to use them in policies, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. // // Arn is a required field Arn *string `min:"20" type:"string" required:"true"` // The policy that grants an entity permission to assume the role. AssumeRolePolicyDocument *string `min:"1" type:"string"` // The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601), // when the role was created. // // CreateDate is a required field CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The path to the role. For more information about paths, see IAM Identifiers // (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. // // Path is a required field Path *string `min:"1" type:"string" required:"true"` // The stable and unique string identifying the role. For more information about // IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. // // RoleId is a required field RoleId *string `min:"16" type:"string" required:"true"` // The friendly name that identifies the role. // // RoleName is a required field RoleName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s Role) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Role) GoString() string { return s.String() } // Contains information about an IAM role, including all of the role's policies. // // This data type is used as a response element in the GetAccountAuthorizationDetails // action. type RoleDetail struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN). ARNs are unique identifiers for AWS resources. // // For more information about ARNs, go to Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. Arn *string `min:"20" type:"string"` // The trust policy that grants permission to assume the role. AssumeRolePolicyDocument *string `min:"1" type:"string"` // A list of managed policies attached to the role. These policies are the role's // access (permissions) policies. AttachedManagedPolicies []*AttachedPolicy `type:"list"` // The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601), // when the role was created. CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Contains a list of instance profiles. InstanceProfileList []*InstanceProfile `type:"list"` // The path to the role. For more information about paths, see IAM Identifiers // (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. Path *string `min:"1" type:"string"` // The stable and unique string identifying the role. For more information about // IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. RoleId *string `min:"16" type:"string"` // The friendly name that identifies the role. RoleName *string `min:"1" type:"string"` // A list of inline policies embedded in the role. These policies are the role's // access (permissions) policies. RolePolicyList []*PolicyDetail `type:"list"` } // String returns the string representation func (s RoleDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RoleDetail) GoString() string { return s.String() } // Contains the list of SAML providers for this account. type SAMLProviderListEntry struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the SAML provider. Arn *string `min:"20" type:"string"` // The date and time when the SAML provider was created. CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The expiration date and time for the SAML provider. ValidUntil *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s SAMLProviderListEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SAMLProviderListEntry) GoString() string { return s.String() } // Contains information about an SSH public key. // // This data type is used as a response element in the GetSSHPublicKey and UploadSSHPublicKey // actions. type SSHPublicKey struct { _ struct{} `type:"structure"` // The MD5 message digest of the SSH public key. // // Fingerprint is a required field Fingerprint *string `min:"48" type:"string" required:"true"` // The SSH public key. // // SSHPublicKeyBody is a required field SSHPublicKeyBody *string `min:"1" type:"string" required:"true"` // The unique identifier for the SSH public key. // // SSHPublicKeyId is a required field SSHPublicKeyId *string `min:"20" type:"string" required:"true"` // The status of the SSH public key. Active means the key can be used for authentication // with an AWS CodeCommit repository. Inactive means the key cannot be used. // // Status is a required field Status *string `type:"string" required:"true" enum:"statusType"` // The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601), // when the SSH public key was uploaded. UploadDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The name of the IAM user associated with the SSH public key. // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s SSHPublicKey) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SSHPublicKey) GoString() string { return s.String() } // Contains information about an SSH public key, without the key's body or fingerprint. // // This data type is used as a response element in the ListSSHPublicKeys action. type SSHPublicKeyMetadata struct { _ struct{} `type:"structure"` // The unique identifier for the SSH public key. // // SSHPublicKeyId is a required field SSHPublicKeyId *string `min:"20" type:"string" required:"true"` // The status of the SSH public key. Active means the key can be used for authentication // with an AWS CodeCommit repository. Inactive means the key cannot be used. // // Status is a required field Status *string `type:"string" required:"true" enum:"statusType"` // The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601), // when the SSH public key was uploaded. // // UploadDate is a required field UploadDate *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The name of the IAM user associated with the SSH public key. // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s SSHPublicKeyMetadata) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SSHPublicKeyMetadata) GoString() string { return s.String() } // Contains information about a server certificate. // // This data type is used as a response element in the GetServerCertificate // action. type ServerCertificate struct { _ struct{} `type:"structure"` // The contents of the public key certificate. // // CertificateBody is a required field CertificateBody *string `min:"1" type:"string" required:"true"` // The contents of the public key certificate chain. CertificateChain *string `min:"1" type:"string"` // The meta information of the server certificate, such as its name, path, ID, // and ARN. // // ServerCertificateMetadata is a required field ServerCertificateMetadata *ServerCertificateMetadata `type:"structure" required:"true"` } // String returns the string representation func (s ServerCertificate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ServerCertificate) GoString() string { return s.String() } // Contains information about a server certificate without its certificate body, // certificate chain, and private key. // // This data type is used as a response element in the UploadServerCertificate // and ListServerCertificates actions. type ServerCertificateMetadata struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) specifying the server certificate. For more // information about ARNs and how to use them in policies, see IAM Identifiers // (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. // // Arn is a required field Arn *string `min:"20" type:"string" required:"true"` // The date on which the certificate is set to expire. Expiration *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The path to the server certificate. For more information about paths, see // IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. // // Path is a required field Path *string `min:"1" type:"string" required:"true"` // The stable and unique string identifying the server certificate. For more // information about IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. // // ServerCertificateId is a required field ServerCertificateId *string `min:"16" type:"string" required:"true"` // The name that identifies the server certificate. // // ServerCertificateName is a required field ServerCertificateName *string `min:"1" type:"string" required:"true"` // The date when the server certificate was uploaded. UploadDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s ServerCertificateMetadata) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ServerCertificateMetadata) GoString() string { return s.String() } type SetDefaultPolicyVersionInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the IAM policy whose default version you // want to set. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // PolicyArn is a required field PolicyArn *string `min:"20" type:"string" required:"true"` // The version of the policy to set as the default (operative) version. // // For more information about managed policy versions, see Versioning for Managed // Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) // in the IAM User Guide. // // VersionId is a required field VersionId *string `type:"string" required:"true"` } // String returns the string representation func (s SetDefaultPolicyVersionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetDefaultPolicyVersionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetDefaultPolicyVersionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetDefaultPolicyVersionInput"} if s.PolicyArn == nil { invalidParams.Add(request.NewErrParamRequired("PolicyArn")) } if s.PolicyArn != nil && len(*s.PolicyArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("PolicyArn", 20)) } if s.VersionId == nil { invalidParams.Add(request.NewErrParamRequired("VersionId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetDefaultPolicyVersionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetDefaultPolicyVersionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetDefaultPolicyVersionOutput) GoString() string { return s.String() } // Contains information about an X.509 signing certificate. // // This data type is used as a response element in the UploadSigningCertificate // and ListSigningCertificates actions. type SigningCertificate struct { _ struct{} `type:"structure"` // The contents of the signing certificate. // // CertificateBody is a required field CertificateBody *string `min:"1" type:"string" required:"true"` // The ID for the signing certificate. // // CertificateId is a required field CertificateId *string `min:"24" type:"string" required:"true"` // The status of the signing certificate. Active means the key is valid for // API calls, while Inactive means it is not. // // Status is a required field Status *string `type:"string" required:"true" enum:"statusType"` // The date when the signing certificate was uploaded. UploadDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The name of the user the signing certificate is associated with. // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s SigningCertificate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SigningCertificate) GoString() string { return s.String() } type SimulateCustomPolicyInput struct { _ struct{} `type:"structure"` // A list of names of API actions to evaluate in the simulation. Each action // is evaluated against each resource. Each action must include the service // identifier, such as iam:CreateUser. // // ActionNames is a required field ActionNames []*string `type:"list" required:"true"` // The ARN of the IAM user that you want to use as the simulated caller of the // APIs. CallerArn is required if you include a ResourcePolicy so that the policy's // Principal element has a value to use in evaluating the policy. // // You can specify only the ARN of an IAM user. You cannot specify the ARN of // an assumed role, federated user, or a service principal. CallerArn *string `min:"1" type:"string"` // A list of context keys and corresponding values for the simulation to use. // Whenever a context key is evaluated in one of the simulated IAM permission // policies, the corresponding value is supplied. ContextEntries []*ContextEntry `type:"list"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // A list of policy documents to include in the simulation. Each document is // specified as a string containing the complete, valid JSON text of an IAM // policy. Do not include any resource-based policies in this parameter. Any // resource-based policy must be submitted with the ResourcePolicy parameter. // The policies cannot be "scope-down" policies, such as you could include in // a call to GetFederationToken (http://docs.aws.amazon.com/IAM/latest/APIReference/API_GetFederationToken.html) // or one of the AssumeRole (http://docs.aws.amazon.com/IAM/latest/APIReference/API_AssumeRole.html) // APIs to restrict what a user can do while using the temporary credentials. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). // // PolicyInputList is a required field PolicyInputList []*string `type:"list" required:"true"` // A list of ARNs of AWS resources to include in the simulation. If this parameter // is not provided then the value defaults to * (all resources). Each API in // the ActionNames parameter is evaluated for each resource in this list. The // simulation determines the access result (allowed or denied) of each combination // and reports it in the response. // // The simulation does not automatically retrieve policies for the specified // resources. If you want to include a resource policy in the simulation, then // you must include the policy as a string in the ResourcePolicy parameter. // // If you include a ResourcePolicy, then it must be applicable to all of the // resources included in the simulation or you receive an invalid input error. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. ResourceArns []*string `type:"list"` // Specifies the type of simulation to run. Different APIs that support resource-based // policies require different combinations of resources. By specifying the type // of simulation to run, you enable the policy simulator to enforce the presence // of the required resources to ensure reliable simulation results. If your // simulation does not match one of the following scenarios, then you can omit // this parameter. The following list shows each of the supported scenario values // and the resources that you must define to run the simulation. // // Each of the EC2 scenarios requires that you specify instance, image, and // security-group resources. If your scenario includes an EBS volume, then you // must specify that volume as a resource. If the EC2 scenario includes VPC, // then you must supply the network-interface resource. If it includes an IP // subnet, then you must specify the subnet resource. For more information on // the EC2 scenario options, see Supported Platforms (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html) // in the AWS EC2 User Guide. // // * EC2-Classic-InstanceStore // // instance, image, security-group // // * EC2-Classic-EBS // // instance, image, security-group, volume // // * EC2-VPC-InstanceStore // // instance, image, security-group, network-interface // // * EC2-VPC-InstanceStore-Subnet // // instance, image, security-group, network-interface, subnet // // * EC2-VPC-EBS // // instance, image, security-group, network-interface, volume // // * EC2-VPC-EBS-Subnet // // instance, image, security-group, network-interface, subnet, volume ResourceHandlingOption *string `min:"1" type:"string"` // An AWS account ID that specifies the owner of any simulated resource that // does not identify its owner in the resource ARN, such as an S3 bucket or // object. If ResourceOwner is specified, it is also used as the account owner // of any ResourcePolicy included in the simulation. If the ResourceOwner parameter // is not specified, then the owner of the resources and the resource policy // defaults to the account of the identity provided in CallerArn. This parameter // is required only if you specify a resource-based policy and account that // owns the resource is different from the account that owns the simulated calling // user CallerArn. ResourceOwner *string `min:"1" type:"string"` // A resource-based policy to include in the simulation provided as a string. // Each resource in the simulation is treated as if it had this policy attached. // You can include only one resource-based policy in a simulation. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). ResourcePolicy *string `min:"1" type:"string"` } // String returns the string representation func (s SimulateCustomPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SimulateCustomPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SimulateCustomPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SimulateCustomPolicyInput"} if s.ActionNames == nil { invalidParams.Add(request.NewErrParamRequired("ActionNames")) } if s.CallerArn != nil && len(*s.CallerArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("CallerArn", 1)) } if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.PolicyInputList == nil { invalidParams.Add(request.NewErrParamRequired("PolicyInputList")) } if s.ResourceHandlingOption != nil && len(*s.ResourceHandlingOption) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceHandlingOption", 1)) } if s.ResourceOwner != nil && len(*s.ResourceOwner) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceOwner", 1)) } if s.ResourcePolicy != nil && len(*s.ResourcePolicy) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourcePolicy", 1)) } if s.ContextEntries != nil { for i, v := range s.ContextEntries { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ContextEntries", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful SimulatePrincipalPolicy or SimulateCustomPolicy // request. type SimulatePolicyResponse struct { _ struct{} `type:"structure"` // The results of the simulation. EvaluationResults []*EvaluationResult `type:"list"` // A flag that indicates whether there are more items to return. If your results // were truncated, you can make a subsequent pagination request using the Marker // request parameter to retrieve more items. Note that IAM might return fewer // than the MaxItems number of results even when there are more results available. // We recommend that you check IsTruncated after every call to ensure that you // receive all of your results. IsTruncated *bool `type:"boolean"` // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s SimulatePolicyResponse) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SimulatePolicyResponse) GoString() string { return s.String() } type SimulatePrincipalPolicyInput struct { _ struct{} `type:"structure"` // A list of names of API actions to evaluate in the simulation. Each action // is evaluated for each resource. Each action must include the service identifier, // such as iam:CreateUser. // // ActionNames is a required field ActionNames []*string `type:"list" required:"true"` // The ARN of the IAM user that you want to specify as the simulated caller // of the APIs. If you do not specify a CallerArn, it defaults to the ARN of // the user that you specify in PolicySourceArn, if you specified a user. If // you include both a PolicySourceArn (for example, arn:aws:iam::123456789012:user/David) // and a CallerArn (for example, arn:aws:iam::123456789012:user/Bob), the result // is that you simulate calling the APIs as Bob, as if Bob had David's policies. // // You can specify only the ARN of an IAM user. You cannot specify the ARN of // an assumed role, federated user, or a service principal. // // CallerArn is required if you include a ResourcePolicy and the PolicySourceArn // is not the ARN for an IAM user. This is required so that the resource-based // policy's Principal element has a value to use in evaluating the policy. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. CallerArn *string `min:"1" type:"string"` // A list of context keys and corresponding values for the simulation to use. // Whenever a context key is evaluated in one of the simulated IAM permission // policies, the corresponding value is supplied. ContextEntries []*ContextEntry `type:"list"` // Use this parameter only when paginating results and only after you receive // a response indicating that the results are truncated. Set it to the value // of the Marker element in the response that you received to indicate where // the next call should start. Marker *string `min:"1" type:"string"` // Use this only when paginating results to indicate the maximum number of items // you want in the response. If additional items exist beyond the maximum you // specify, the IsTruncated response element is true. // // This parameter is optional. If you do not include it, it defaults to 100. // Note that IAM might return fewer results, even when there are more results // available. In that case, the IsTruncated response element returns true and // Marker contains a value to include in the subsequent call that tells the // service where to continue from. MaxItems *int64 `min:"1" type:"integer"` // An optional list of additional policy documents to include in the simulation. // Each document is specified as a string containing the complete, valid JSON // text of an IAM policy. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). PolicyInputList []*string `type:"list"` // The Amazon Resource Name (ARN) of a user, group, or role whose policies you // want to include in the simulation. If you specify a user, group, or role, // the simulation includes all policies that are associated with that entity. // If you specify a user, the simulation also includes all policies that are // attached to any groups the user belongs to. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // PolicySourceArn is a required field PolicySourceArn *string `min:"20" type:"string" required:"true"` // A list of ARNs of AWS resources to include in the simulation. If this parameter // is not provided then the value defaults to * (all resources). Each API in // the ActionNames parameter is evaluated for each resource in this list. The // simulation determines the access result (allowed or denied) of each combination // and reports it in the response. // // The simulation does not automatically retrieve policies for the specified // resources. If you want to include a resource policy in the simulation, then // you must include the policy as a string in the ResourcePolicy parameter. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. ResourceArns []*string `type:"list"` // Specifies the type of simulation to run. Different APIs that support resource-based // policies require different combinations of resources. By specifying the type // of simulation to run, you enable the policy simulator to enforce the presence // of the required resources to ensure reliable simulation results. If your // simulation does not match one of the following scenarios, then you can omit // this parameter. The following list shows each of the supported scenario values // and the resources that you must define to run the simulation. // // Each of the EC2 scenarios requires that you specify instance, image, and // security-group resources. If your scenario includes an EBS volume, then you // must specify that volume as a resource. If the EC2 scenario includes VPC, // then you must supply the network-interface resource. If it includes an IP // subnet, then you must specify the subnet resource. For more information on // the EC2 scenario options, see Supported Platforms (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html) // in the AWS EC2 User Guide. // // * EC2-Classic-InstanceStore // // instance, image, security-group // // * EC2-Classic-EBS // // instance, image, security-group, volume // // * EC2-VPC-InstanceStore // // instance, image, security-group, network-interface // // * EC2-VPC-InstanceStore-Subnet // // instance, image, security-group, network-interface, subnet // // * EC2-VPC-EBS // // instance, image, security-group, network-interface, volume // // * EC2-VPC-EBS-Subnet // // instance, image, security-group, network-interface, subnet, volume ResourceHandlingOption *string `min:"1" type:"string"` // An AWS account ID that specifies the owner of any simulated resource that // does not identify its owner in the resource ARN, such as an S3 bucket or // object. If ResourceOwner is specified, it is also used as the account owner // of any ResourcePolicy included in the simulation. If the ResourceOwner parameter // is not specified, then the owner of the resources and the resource policy // defaults to the account of the identity provided in CallerArn. This parameter // is required only if you specify a resource-based policy and account that // owns the resource is different from the account that owns the simulated calling // user CallerArn. ResourceOwner *string `min:"1" type:"string"` // A resource-based policy to include in the simulation provided as a string. // Each resource in the simulation is treated as if it had this policy attached. // You can include only one resource-based policy in a simulation. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). ResourcePolicy *string `min:"1" type:"string"` } // String returns the string representation func (s SimulatePrincipalPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SimulatePrincipalPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SimulatePrincipalPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SimulatePrincipalPolicyInput"} if s.ActionNames == nil { invalidParams.Add(request.NewErrParamRequired("ActionNames")) } if s.CallerArn != nil && len(*s.CallerArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("CallerArn", 1)) } if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.PolicySourceArn == nil { invalidParams.Add(request.NewErrParamRequired("PolicySourceArn")) } if s.PolicySourceArn != nil && len(*s.PolicySourceArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("PolicySourceArn", 20)) } if s.ResourceHandlingOption != nil && len(*s.ResourceHandlingOption) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceHandlingOption", 1)) } if s.ResourceOwner != nil && len(*s.ResourceOwner) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceOwner", 1)) } if s.ResourcePolicy != nil && len(*s.ResourcePolicy) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourcePolicy", 1)) } if s.ContextEntries != nil { for i, v := range s.ContextEntries { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ContextEntries", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains a reference to a Statement element in a policy document that determines // the result of the simulation. // // This data type is used by the MatchedStatements member of the EvaluationResult // type. type Statement struct { _ struct{} `type:"structure"` // The row and column of the end of a Statement in an IAM policy. EndPosition *Position `type:"structure"` // The identifier of the policy that was provided as an input. SourcePolicyId *string `type:"string"` // The type of the policy. SourcePolicyType *string `type:"string" enum:"PolicySourceType"` // The row and column of the beginning of the Statement in an IAM policy. StartPosition *Position `type:"structure"` } // String returns the string representation func (s Statement) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Statement) GoString() string { return s.String() } type UpdateAccessKeyInput struct { _ struct{} `type:"structure"` // The access key ID of the secret access key you want to update. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters that can consist of any upper or lowercased letter // or digit. // // AccessKeyId is a required field AccessKeyId *string `min:"16" type:"string" required:"true"` // The status you want to assign to the secret access key. Active means the // key can be used for API calls to AWS, while Inactive means the key cannot // be used. // // Status is a required field Status *string `type:"string" required:"true" enum:"statusType"` // The name of the user whose key you want to update. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- UserName *string `min:"1" type:"string"` } // String returns the string representation func (s UpdateAccessKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAccessKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateAccessKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateAccessKeyInput"} if s.AccessKeyId == nil { invalidParams.Add(request.NewErrParamRequired("AccessKeyId")) } if s.AccessKeyId != nil && len(*s.AccessKeyId) < 16 { invalidParams.Add(request.NewErrParamMinLen("AccessKeyId", 16)) } if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateAccessKeyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateAccessKeyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAccessKeyOutput) GoString() string { return s.String() } type UpdateAccountPasswordPolicyInput struct { _ struct{} `type:"structure"` // Allows all IAM users in your account to use the AWS Management Console to // change their own passwords. For more information, see Letting IAM Users Change // Their Own Passwords (http://docs.aws.amazon.com/IAM/latest/UserGuide/HowToPwdIAMUser.html) // in the IAM User Guide. // // Default value: false AllowUsersToChangePassword *bool `type:"boolean"` // Prevents IAM users from setting a new password after their password has expired. // // Default value: false HardExpiry *bool `type:"boolean"` // The number of days that an IAM user password is valid. The default value // of 0 means IAM user passwords never expire. // // Default value: 0 MaxPasswordAge *int64 `min:"1" type:"integer"` // The minimum number of characters allowed in an IAM user password. // // Default value: 6 MinimumPasswordLength *int64 `min:"6" type:"integer"` // Specifies the number of previous passwords that IAM users are prevented from // reusing. The default value of 0 means IAM users are not prevented from reusing // previous passwords. // // Default value: 0 PasswordReusePrevention *int64 `min:"1" type:"integer"` // Specifies whether IAM user passwords must contain at least one lowercase // character from the ISO basic Latin alphabet (a to z). // // Default value: false RequireLowercaseCharacters *bool `type:"boolean"` // Specifies whether IAM user passwords must contain at least one numeric character // (0 to 9). // // Default value: false RequireNumbers *bool `type:"boolean"` // Specifies whether IAM user passwords must contain at least one of the following // non-alphanumeric characters: // // ! @ # $ % ^ & * ( ) _ + - = [ ] { } | ' // // Default value: false RequireSymbols *bool `type:"boolean"` // Specifies whether IAM user passwords must contain at least one uppercase // character from the ISO basic Latin alphabet (A to Z). // // Default value: false RequireUppercaseCharacters *bool `type:"boolean"` } // String returns the string representation func (s UpdateAccountPasswordPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAccountPasswordPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateAccountPasswordPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateAccountPasswordPolicyInput"} if s.MaxPasswordAge != nil && *s.MaxPasswordAge < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxPasswordAge", 1)) } if s.MinimumPasswordLength != nil && *s.MinimumPasswordLength < 6 { invalidParams.Add(request.NewErrParamMinValue("MinimumPasswordLength", 6)) } if s.PasswordReusePrevention != nil && *s.PasswordReusePrevention < 1 { invalidParams.Add(request.NewErrParamMinValue("PasswordReusePrevention", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateAccountPasswordPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateAccountPasswordPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAccountPasswordPolicyOutput) GoString() string { return s.String() } type UpdateAssumeRolePolicyInput struct { _ struct{} `type:"structure"` // The policy that grants an entity permission to assume the role. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). // // PolicyDocument is a required field PolicyDocument *string `min:"1" type:"string" required:"true"` // The name of the role to update with the new policy. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // RoleName is a required field RoleName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateAssumeRolePolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAssumeRolePolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateAssumeRolePolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateAssumeRolePolicyInput"} if s.PolicyDocument == nil { invalidParams.Add(request.NewErrParamRequired("PolicyDocument")) } if s.PolicyDocument != nil && len(*s.PolicyDocument) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyDocument", 1)) } if s.RoleName == nil { invalidParams.Add(request.NewErrParamRequired("RoleName")) } if s.RoleName != nil && len(*s.RoleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateAssumeRolePolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateAssumeRolePolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAssumeRolePolicyOutput) GoString() string { return s.String() } type UpdateGroupInput struct { _ struct{} `type:"structure"` // Name of the IAM group to update. If you're changing the name of the group, // this is the original name. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // GroupName is a required field GroupName *string `min:"1" type:"string" required:"true"` // New name for the IAM group. Only include this if changing the group's name. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- NewGroupName *string `min:"1" type:"string"` // New path for the IAM group. Only include this if changing the group's path. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of either a forward slash (/) by itself // or a string that must begin and end with forward slashes, containing any // ASCII character from the ! (\u0021) thru the DEL character (\u007F), including // most punctuation characters, digits, and upper and lowercased letters. NewPath *string `min:"1" type:"string"` } // String returns the string representation func (s UpdateGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateGroupInput"} if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if s.GroupName != nil && len(*s.GroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("GroupName", 1)) } if s.NewGroupName != nil && len(*s.NewGroupName) < 1 { invalidParams.Add(request.NewErrParamMinLen("NewGroupName", 1)) } if s.NewPath != nil && len(*s.NewPath) < 1 { invalidParams.Add(request.NewErrParamMinLen("NewPath", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateGroupOutput) GoString() string { return s.String() } type UpdateLoginProfileInput struct { _ struct{} `type:"structure"` // The new password for the specified IAM user. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). However, the format can be further // restricted by the account administrator by setting a password policy on the // AWS account. For more information, see UpdateAccountPasswordPolicy. Password *string `min:"1" type:"string"` // Allows this new password to be used only once by requiring the specified // IAM user to set a new password on next sign-in. PasswordResetRequired *bool `type:"boolean"` // The name of the user whose password you want to update. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateLoginProfileInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateLoginProfileInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateLoginProfileInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateLoginProfileInput"} if s.Password != nil && len(*s.Password) < 1 { invalidParams.Add(request.NewErrParamMinLen("Password", 1)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateLoginProfileOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateLoginProfileOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateLoginProfileOutput) GoString() string { return s.String() } type UpdateOpenIDConnectProviderThumbprintInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the IAM OIDC provider resource object for // which you want to update the thumbprint. You can get a list of OIDC provider // ARNs by using the ListOpenIDConnectProviders action. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // OpenIDConnectProviderArn is a required field OpenIDConnectProviderArn *string `min:"20" type:"string" required:"true"` // A list of certificate thumbprints that are associated with the specified // IAM OpenID Connect provider. For more information, see CreateOpenIDConnectProvider. // // ThumbprintList is a required field ThumbprintList []*string `type:"list" required:"true"` } // String returns the string representation func (s UpdateOpenIDConnectProviderThumbprintInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateOpenIDConnectProviderThumbprintInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateOpenIDConnectProviderThumbprintInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateOpenIDConnectProviderThumbprintInput"} if s.OpenIDConnectProviderArn == nil { invalidParams.Add(request.NewErrParamRequired("OpenIDConnectProviderArn")) } if s.OpenIDConnectProviderArn != nil && len(*s.OpenIDConnectProviderArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("OpenIDConnectProviderArn", 20)) } if s.ThumbprintList == nil { invalidParams.Add(request.NewErrParamRequired("ThumbprintList")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateOpenIDConnectProviderThumbprintOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateOpenIDConnectProviderThumbprintOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateOpenIDConnectProviderThumbprintOutput) GoString() string { return s.String() } type UpdateSAMLProviderInput struct { _ struct{} `type:"structure"` // An XML document generated by an identity provider (IdP) that supports SAML // 2.0. The document includes the issuer's name, expiration information, and // keys that can be used to validate the SAML authentication response (assertions) // that are received from the IdP. You must generate the metadata document using // the identity management software that is used as your organization's IdP. // // SAMLMetadataDocument is a required field SAMLMetadataDocument *string `min:"1000" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the SAML provider to update. // // For more information about ARNs, see Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. // // SAMLProviderArn is a required field SAMLProviderArn *string `min:"20" type:"string" required:"true"` } // String returns the string representation func (s UpdateSAMLProviderInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateSAMLProviderInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateSAMLProviderInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateSAMLProviderInput"} if s.SAMLMetadataDocument == nil { invalidParams.Add(request.NewErrParamRequired("SAMLMetadataDocument")) } if s.SAMLMetadataDocument != nil && len(*s.SAMLMetadataDocument) < 1000 { invalidParams.Add(request.NewErrParamMinLen("SAMLMetadataDocument", 1000)) } if s.SAMLProviderArn == nil { invalidParams.Add(request.NewErrParamRequired("SAMLProviderArn")) } if s.SAMLProviderArn != nil && len(*s.SAMLProviderArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("SAMLProviderArn", 20)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful UpdateSAMLProvider request. type UpdateSAMLProviderOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the SAML provider that was updated. SAMLProviderArn *string `min:"20" type:"string"` } // String returns the string representation func (s UpdateSAMLProviderOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateSAMLProviderOutput) GoString() string { return s.String() } type UpdateSSHPublicKeyInput struct { _ struct{} `type:"structure"` // The unique identifier for the SSH public key. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters that can consist of any upper or lowercased letter // or digit. // // SSHPublicKeyId is a required field SSHPublicKeyId *string `min:"20" type:"string" required:"true"` // The status to assign to the SSH public key. Active means the key can be used // for authentication with an AWS CodeCommit repository. Inactive means the // key cannot be used. // // Status is a required field Status *string `type:"string" required:"true" enum:"statusType"` // The name of the IAM user associated with the SSH public key. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateSSHPublicKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateSSHPublicKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateSSHPublicKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateSSHPublicKeyInput"} if s.SSHPublicKeyId == nil { invalidParams.Add(request.NewErrParamRequired("SSHPublicKeyId")) } if s.SSHPublicKeyId != nil && len(*s.SSHPublicKeyId) < 20 { invalidParams.Add(request.NewErrParamMinLen("SSHPublicKeyId", 20)) } if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateSSHPublicKeyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateSSHPublicKeyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateSSHPublicKeyOutput) GoString() string { return s.String() } type UpdateServerCertificateInput struct { _ struct{} `type:"structure"` // The new path for the server certificate. Include this only if you are updating // the server certificate's path. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of either a forward slash (/) by itself // or a string that must begin and end with forward slashes, containing any // ASCII character from the ! (\u0021) thru the DEL character (\u007F), including // most punctuation characters, digits, and upper and lowercased letters. NewPath *string `min:"1" type:"string"` // The new name for the server certificate. Include this only if you are updating // the server certificate's name. The name of the certificate cannot contain // any spaces. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- NewServerCertificateName *string `min:"1" type:"string"` // The name of the server certificate that you want to update. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // ServerCertificateName is a required field ServerCertificateName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateServerCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateServerCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateServerCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateServerCertificateInput"} if s.NewPath != nil && len(*s.NewPath) < 1 { invalidParams.Add(request.NewErrParamMinLen("NewPath", 1)) } if s.NewServerCertificateName != nil && len(*s.NewServerCertificateName) < 1 { invalidParams.Add(request.NewErrParamMinLen("NewServerCertificateName", 1)) } if s.ServerCertificateName == nil { invalidParams.Add(request.NewErrParamRequired("ServerCertificateName")) } if s.ServerCertificateName != nil && len(*s.ServerCertificateName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ServerCertificateName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateServerCertificateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateServerCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateServerCertificateOutput) GoString() string { return s.String() } type UpdateSigningCertificateInput struct { _ struct{} `type:"structure"` // The ID of the signing certificate you want to update. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters that can consist of any upper or lowercased letter // or digit. // // CertificateId is a required field CertificateId *string `min:"24" type:"string" required:"true"` // The status you want to assign to the certificate. Active means the certificate // can be used for API calls to AWS, while Inactive means the certificate cannot // be used. // // Status is a required field Status *string `type:"string" required:"true" enum:"statusType"` // The name of the IAM user the signing certificate belongs to. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- UserName *string `min:"1" type:"string"` } // String returns the string representation func (s UpdateSigningCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateSigningCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateSigningCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateSigningCertificateInput"} if s.CertificateId == nil { invalidParams.Add(request.NewErrParamRequired("CertificateId")) } if s.CertificateId != nil && len(*s.CertificateId) < 24 { invalidParams.Add(request.NewErrParamMinLen("CertificateId", 24)) } if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateSigningCertificateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateSigningCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateSigningCertificateOutput) GoString() string { return s.String() } type UpdateUserInput struct { _ struct{} `type:"structure"` // New path for the IAM user. Include this parameter only if you're changing // the user's path. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of either a forward slash (/) by itself // or a string that must begin and end with forward slashes, containing any // ASCII character from the ! (\u0021) thru the DEL character (\u007F), including // most punctuation characters, digits, and upper and lowercased letters. NewPath *string `min:"1" type:"string"` // New name for the user. Include this parameter only if you're changing the // user's name. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- NewUserName *string `min:"1" type:"string"` // Name of the user to update. If you're changing the name of the user, this // is the original user name. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateUserInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateUserInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateUserInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateUserInput"} if s.NewPath != nil && len(*s.NewPath) < 1 { invalidParams.Add(request.NewErrParamMinLen("NewPath", 1)) } if s.NewUserName != nil && len(*s.NewUserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("NewUserName", 1)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateUserOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateUserOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateUserOutput) GoString() string { return s.String() } type UploadSSHPublicKeyInput struct { _ struct{} `type:"structure"` // The SSH public key. The public key must be encoded in ssh-rsa format or PEM // format. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). // // SSHPublicKeyBody is a required field SSHPublicKeyBody *string `min:"1" type:"string" required:"true"` // The name of the IAM user to associate the SSH public key with. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s UploadSSHPublicKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UploadSSHPublicKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UploadSSHPublicKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UploadSSHPublicKeyInput"} if s.SSHPublicKeyBody == nil { invalidParams.Add(request.NewErrParamRequired("SSHPublicKeyBody")) } if s.SSHPublicKeyBody != nil && len(*s.SSHPublicKeyBody) < 1 { invalidParams.Add(request.NewErrParamMinLen("SSHPublicKeyBody", 1)) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful UploadSSHPublicKey request. type UploadSSHPublicKeyOutput struct { _ struct{} `type:"structure"` // Contains information about the SSH public key. SSHPublicKey *SSHPublicKey `type:"structure"` } // String returns the string representation func (s UploadSSHPublicKeyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UploadSSHPublicKeyOutput) GoString() string { return s.String() } type UploadServerCertificateInput struct { _ struct{} `type:"structure"` // The contents of the public key certificate in PEM-encoded format. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). // // CertificateBody is a required field CertificateBody *string `min:"1" type:"string" required:"true"` // The contents of the certificate chain. This is typically a concatenation // of the PEM-encoded public key certificates of the chain. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). CertificateChain *string `min:"1" type:"string"` // The path for the server certificate. For more information about paths, see // IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the IAM User Guide. // // This parameter is optional. If it is not included, it defaults to a slash // (/). The regex pattern (http://wikipedia.org/wiki/regex) for this parameter // is a string of characters consisting of either a forward slash (/) by itself // or a string that must begin and end with forward slashes, containing any // ASCII character from the ! (\u0021) thru the DEL character (\u007F), including // most punctuation characters, digits, and upper and lowercased letters. // // If you are uploading a server certificate specifically for use with Amazon // CloudFront distributions, you must specify a path using the --path option. // The path must begin with /cloudfront and must include a trailing slash (for // example, /cloudfront/test/). Path *string `min:"1" type:"string"` // The contents of the private key in PEM-encoded format. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). // // PrivateKey is a required field PrivateKey *string `min:"1" type:"string" required:"true"` // The name for the server certificate. Do not include the path in this value. // The name of the certificate cannot contain any spaces. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- // // ServerCertificateName is a required field ServerCertificateName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s UploadServerCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UploadServerCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UploadServerCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UploadServerCertificateInput"} if s.CertificateBody == nil { invalidParams.Add(request.NewErrParamRequired("CertificateBody")) } if s.CertificateBody != nil && len(*s.CertificateBody) < 1 { invalidParams.Add(request.NewErrParamMinLen("CertificateBody", 1)) } if s.CertificateChain != nil && len(*s.CertificateChain) < 1 { invalidParams.Add(request.NewErrParamMinLen("CertificateChain", 1)) } if s.Path != nil && len(*s.Path) < 1 { invalidParams.Add(request.NewErrParamMinLen("Path", 1)) } if s.PrivateKey == nil { invalidParams.Add(request.NewErrParamRequired("PrivateKey")) } if s.PrivateKey != nil && len(*s.PrivateKey) < 1 { invalidParams.Add(request.NewErrParamMinLen("PrivateKey", 1)) } if s.ServerCertificateName == nil { invalidParams.Add(request.NewErrParamRequired("ServerCertificateName")) } if s.ServerCertificateName != nil && len(*s.ServerCertificateName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ServerCertificateName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful UploadServerCertificate request. type UploadServerCertificateOutput struct { _ struct{} `type:"structure"` // The meta information of the uploaded server certificate without its certificate // body, certificate chain, and private key. ServerCertificateMetadata *ServerCertificateMetadata `type:"structure"` } // String returns the string representation func (s UploadServerCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UploadServerCertificateOutput) GoString() string { return s.String() } type UploadSigningCertificateInput struct { _ struct{} `type:"structure"` // The contents of the signing certificate. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of any printable ASCII character ranging // from the space character (\u0020) through end of the ASCII character range // (\u00FF). It also includes the special characters tab (\u0009), line feed // (\u000A), and carriage return (\u000D). // // CertificateBody is a required field CertificateBody *string `min:"1" type:"string" required:"true"` // The name of the user the signing certificate is for. // // The regex pattern (http://wikipedia.org/wiki/regex) for this parameter is // a string of characters consisting of upper and lowercase alphanumeric characters // with no spaces. You can also include any of the following characters: =,.@- UserName *string `min:"1" type:"string"` } // String returns the string representation func (s UploadSigningCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UploadSigningCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UploadSigningCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UploadSigningCertificateInput"} if s.CertificateBody == nil { invalidParams.Add(request.NewErrParamRequired("CertificateBody")) } if s.CertificateBody != nil && len(*s.CertificateBody) < 1 { invalidParams.Add(request.NewErrParamMinLen("CertificateBody", 1)) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful UploadSigningCertificate request. type UploadSigningCertificateOutput struct { _ struct{} `type:"structure"` // Information about the certificate. // // Certificate is a required field Certificate *SigningCertificate `type:"structure" required:"true"` } // String returns the string representation func (s UploadSigningCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UploadSigningCertificateOutput) GoString() string { return s.String() } // Contains information about an IAM user entity. // // This data type is used as a response element in the following actions: // // * CreateUser // // * GetUser // // * ListUsers type User struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) that identifies the user. For more information // about ARNs and how to use ARNs in policies, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. // // Arn is a required field Arn *string `min:"20" type:"string" required:"true"` // The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601), // when the user was created. // // CreateDate is a required field CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601), // when the user's password was last used to sign in to an AWS website. For // a list of AWS websites that capture a user's last sign-in time, see the Credential // Reports (http://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html) // topic in the Using IAM guide. If a password is used more than once in a five-minute // span, only the first use is returned in this field. This field is null (not // present) when: // // * The user does not have a password // // * The password exists but has never been used (at least not since IAM // started tracking this information on October 20th, 2014 // // * there is no sign-in data associated with the user // // This value is returned only in the GetUser and ListUsers actions. PasswordLastUsed *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The path to the user. For more information about paths, see IAM Identifiers // (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. // // Path is a required field Path *string `min:"1" type:"string" required:"true"` // The stable and unique string identifying the user. For more information about // IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. // // UserId is a required field UserId *string `min:"16" type:"string" required:"true"` // The friendly name identifying the user. // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s User) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s User) GoString() string { return s.String() } // Contains information about an IAM user, including all the user's policies // and all the IAM groups the user is in. // // This data type is used as a response element in the GetAccountAuthorizationDetails // action. type UserDetail struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN). ARNs are unique identifiers for AWS resources. // // For more information about ARNs, go to Amazon Resource Names (ARNs) and AWS // Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // in the AWS General Reference. Arn *string `min:"20" type:"string"` // A list of the managed policies attached to the user. AttachedManagedPolicies []*AttachedPolicy `type:"list"` // The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601), // when the user was created. CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // A list of IAM groups that the user is in. GroupList []*string `type:"list"` // The path to the user. For more information about paths, see IAM Identifiers // (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. Path *string `min:"1" type:"string"` // The stable and unique string identifying the user. For more information about // IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) // in the Using IAM guide. UserId *string `min:"16" type:"string"` // The friendly name identifying the user. UserName *string `min:"1" type:"string"` // A list of the inline policies embedded in the user. UserPolicyList []*PolicyDetail `type:"list"` } // String returns the string representation func (s UserDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UserDetail) GoString() string { return s.String() } // Contains information about a virtual MFA device. type VirtualMFADevice struct { _ struct{} `type:"structure"` // The Base32 seed defined as specified in RFC3548 (http://www.ietf.org/rfc/rfc3548.txt). // The Base32StringSeed is Base64-encoded. // // Base32StringSeed is automatically base64 encoded/decoded by the SDK. Base32StringSeed []byte `type:"blob"` // The date and time on which the virtual MFA device was enabled. EnableDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // A QR code PNG image that encodes otpauth://totp/$virtualMFADeviceName@$AccountName?secret=$Base32String // where $virtualMFADeviceName is one of the create call arguments, AccountName // is the user name if set (otherwise, the account ID otherwise), and Base32String // is the seed in Base32 format. The Base32String value is Base64-encoded. // // QRCodePNG is automatically base64 encoded/decoded by the SDK. QRCodePNG []byte `type:"blob"` // The serial number associated with VirtualMFADevice. // // SerialNumber is a required field SerialNumber *string `min:"9" type:"string" required:"true"` // Contains information about an IAM user entity. // // This data type is used as a response element in the following actions: // // * CreateUser // // * GetUser // // * ListUsers User *User `type:"structure"` } // String returns the string representation func (s VirtualMFADevice) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VirtualMFADevice) GoString() string { return s.String() } const ( // ContextKeyTypeEnumString is a ContextKeyTypeEnum enum value ContextKeyTypeEnumString = "string" // ContextKeyTypeEnumStringList is a ContextKeyTypeEnum enum value ContextKeyTypeEnumStringList = "stringList" // ContextKeyTypeEnumNumeric is a ContextKeyTypeEnum enum value ContextKeyTypeEnumNumeric = "numeric" // ContextKeyTypeEnumNumericList is a ContextKeyTypeEnum enum value ContextKeyTypeEnumNumericList = "numericList" // ContextKeyTypeEnumBoolean is a ContextKeyTypeEnum enum value ContextKeyTypeEnumBoolean = "boolean" // ContextKeyTypeEnumBooleanList is a ContextKeyTypeEnum enum value ContextKeyTypeEnumBooleanList = "booleanList" // ContextKeyTypeEnumIp is a ContextKeyTypeEnum enum value ContextKeyTypeEnumIp = "ip" // ContextKeyTypeEnumIpList is a ContextKeyTypeEnum enum value ContextKeyTypeEnumIpList = "ipList" // ContextKeyTypeEnumBinary is a ContextKeyTypeEnum enum value ContextKeyTypeEnumBinary = "binary" // ContextKeyTypeEnumBinaryList is a ContextKeyTypeEnum enum value ContextKeyTypeEnumBinaryList = "binaryList" // ContextKeyTypeEnumDate is a ContextKeyTypeEnum enum value ContextKeyTypeEnumDate = "date" // ContextKeyTypeEnumDateList is a ContextKeyTypeEnum enum value ContextKeyTypeEnumDateList = "dateList" ) const ( // EntityTypeUser is a EntityType enum value EntityTypeUser = "User" // EntityTypeRole is a EntityType enum value EntityTypeRole = "Role" // EntityTypeGroup is a EntityType enum value EntityTypeGroup = "Group" // EntityTypeLocalManagedPolicy is a EntityType enum value EntityTypeLocalManagedPolicy = "LocalManagedPolicy" // EntityTypeAwsmanagedPolicy is a EntityType enum value EntityTypeAwsmanagedPolicy = "AWSManagedPolicy" ) const ( // PolicyEvaluationDecisionTypeAllowed is a PolicyEvaluationDecisionType enum value PolicyEvaluationDecisionTypeAllowed = "allowed" // PolicyEvaluationDecisionTypeExplicitDeny is a PolicyEvaluationDecisionType enum value PolicyEvaluationDecisionTypeExplicitDeny = "explicitDeny" // PolicyEvaluationDecisionTypeImplicitDeny is a PolicyEvaluationDecisionType enum value PolicyEvaluationDecisionTypeImplicitDeny = "implicitDeny" ) const ( // PolicySourceTypeUser is a PolicySourceType enum value PolicySourceTypeUser = "user" // PolicySourceTypeGroup is a PolicySourceType enum value PolicySourceTypeGroup = "group" // PolicySourceTypeRole is a PolicySourceType enum value PolicySourceTypeRole = "role" // PolicySourceTypeAwsManaged is a PolicySourceType enum value PolicySourceTypeAwsManaged = "aws-managed" // PolicySourceTypeUserManaged is a PolicySourceType enum value PolicySourceTypeUserManaged = "user-managed" // PolicySourceTypeResource is a PolicySourceType enum value PolicySourceTypeResource = "resource" // PolicySourceTypeNone is a PolicySourceType enum value PolicySourceTypeNone = "none" ) const ( // ReportFormatTypeTextCsv is a ReportFormatType enum value ReportFormatTypeTextCsv = "text/csv" ) const ( // ReportStateTypeStarted is a ReportStateType enum value ReportStateTypeStarted = "STARTED" // ReportStateTypeInprogress is a ReportStateType enum value ReportStateTypeInprogress = "INPROGRESS" // ReportStateTypeComplete is a ReportStateType enum value ReportStateTypeComplete = "COMPLETE" ) const ( // AssignmentStatusTypeAssigned is a assignmentStatusType enum value AssignmentStatusTypeAssigned = "Assigned" // AssignmentStatusTypeUnassigned is a assignmentStatusType enum value AssignmentStatusTypeUnassigned = "Unassigned" // AssignmentStatusTypeAny is a assignmentStatusType enum value AssignmentStatusTypeAny = "Any" ) const ( // EncodingTypeSsh is a encodingType enum value EncodingTypeSsh = "SSH" // EncodingTypePem is a encodingType enum value EncodingTypePem = "PEM" ) const ( // PolicyScopeTypeAll is a policyScopeType enum value PolicyScopeTypeAll = "All" // PolicyScopeTypeAws is a policyScopeType enum value PolicyScopeTypeAws = "AWS" // PolicyScopeTypeLocal is a policyScopeType enum value PolicyScopeTypeLocal = "Local" ) const ( // StatusTypeActive is a statusType enum value StatusTypeActive = "Active" // StatusTypeInactive is a statusType enum value StatusTypeInactive = "Inactive" ) const ( // SummaryKeyTypeUsers is a summaryKeyType enum value SummaryKeyTypeUsers = "Users" // SummaryKeyTypeUsersQuota is a summaryKeyType enum value SummaryKeyTypeUsersQuota = "UsersQuota" // SummaryKeyTypeGroups is a summaryKeyType enum value SummaryKeyTypeGroups = "Groups" // SummaryKeyTypeGroupsQuota is a summaryKeyType enum value SummaryKeyTypeGroupsQuota = "GroupsQuota" // SummaryKeyTypeServerCertificates is a summaryKeyType enum value SummaryKeyTypeServerCertificates = "ServerCertificates" // SummaryKeyTypeServerCertificatesQuota is a summaryKeyType enum value SummaryKeyTypeServerCertificatesQuota = "ServerCertificatesQuota" // SummaryKeyTypeUserPolicySizeQuota is a summaryKeyType enum value SummaryKeyTypeUserPolicySizeQuota = "UserPolicySizeQuota" // SummaryKeyTypeGroupPolicySizeQuota is a summaryKeyType enum value SummaryKeyTypeGroupPolicySizeQuota = "GroupPolicySizeQuota" // SummaryKeyTypeGroupsPerUserQuota is a summaryKeyType enum value SummaryKeyTypeGroupsPerUserQuota = "GroupsPerUserQuota" // SummaryKeyTypeSigningCertificatesPerUserQuota is a summaryKeyType enum value SummaryKeyTypeSigningCertificatesPerUserQuota = "SigningCertificatesPerUserQuota" // SummaryKeyTypeAccessKeysPerUserQuota is a summaryKeyType enum value SummaryKeyTypeAccessKeysPerUserQuota = "AccessKeysPerUserQuota" // SummaryKeyTypeMfadevices is a summaryKeyType enum value SummaryKeyTypeMfadevices = "MFADevices" // SummaryKeyTypeMfadevicesInUse is a summaryKeyType enum value SummaryKeyTypeMfadevicesInUse = "MFADevicesInUse" // SummaryKeyTypeAccountMfaenabled is a summaryKeyType enum value SummaryKeyTypeAccountMfaenabled = "AccountMFAEnabled" // SummaryKeyTypeAccountAccessKeysPresent is a summaryKeyType enum value SummaryKeyTypeAccountAccessKeysPresent = "AccountAccessKeysPresent" // SummaryKeyTypeAccountSigningCertificatesPresent is a summaryKeyType enum value SummaryKeyTypeAccountSigningCertificatesPresent = "AccountSigningCertificatesPresent" // SummaryKeyTypeAttachedPoliciesPerGroupQuota is a summaryKeyType enum value SummaryKeyTypeAttachedPoliciesPerGroupQuota = "AttachedPoliciesPerGroupQuota" // SummaryKeyTypeAttachedPoliciesPerRoleQuota is a summaryKeyType enum value SummaryKeyTypeAttachedPoliciesPerRoleQuota = "AttachedPoliciesPerRoleQuota" // SummaryKeyTypeAttachedPoliciesPerUserQuota is a summaryKeyType enum value SummaryKeyTypeAttachedPoliciesPerUserQuota = "AttachedPoliciesPerUserQuota" // SummaryKeyTypePolicies is a summaryKeyType enum value SummaryKeyTypePolicies = "Policies" // SummaryKeyTypePoliciesQuota is a summaryKeyType enum value SummaryKeyTypePoliciesQuota = "PoliciesQuota" // SummaryKeyTypePolicySizeQuota is a summaryKeyType enum value SummaryKeyTypePolicySizeQuota = "PolicySizeQuota" // SummaryKeyTypePolicyVersionsInUse is a summaryKeyType enum value SummaryKeyTypePolicyVersionsInUse = "PolicyVersionsInUse" // SummaryKeyTypePolicyVersionsInUseQuota is a summaryKeyType enum value SummaryKeyTypePolicyVersionsInUseQuota = "PolicyVersionsInUseQuota" // SummaryKeyTypeVersionsPerPolicyQuota is a summaryKeyType enum value SummaryKeyTypeVersionsPerPolicyQuota = "VersionsPerPolicyQuota" ) aws-sdk-go-1.4.22/service/iam/examples_test.go000066400000000000000000002073071300374646400212060ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package iam_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/iam" ) var _ time.Duration var _ bytes.Buffer func ExampleIAM_AddClientIDToOpenIDConnectProvider() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.AddClientIDToOpenIDConnectProviderInput{ ClientID: aws.String("clientIDType"), // Required OpenIDConnectProviderArn: aws.String("arnType"), // Required } resp, err := svc.AddClientIDToOpenIDConnectProvider(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_AddRoleToInstanceProfile() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.AddRoleToInstanceProfileInput{ InstanceProfileName: aws.String("instanceProfileNameType"), // Required RoleName: aws.String("roleNameType"), // Required } resp, err := svc.AddRoleToInstanceProfile(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_AddUserToGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.AddUserToGroupInput{ GroupName: aws.String("groupNameType"), // Required UserName: aws.String("existingUserNameType"), // Required } resp, err := svc.AddUserToGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_AttachGroupPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.AttachGroupPolicyInput{ GroupName: aws.String("groupNameType"), // Required PolicyArn: aws.String("arnType"), // Required } resp, err := svc.AttachGroupPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_AttachRolePolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.AttachRolePolicyInput{ PolicyArn: aws.String("arnType"), // Required RoleName: aws.String("roleNameType"), // Required } resp, err := svc.AttachRolePolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_AttachUserPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.AttachUserPolicyInput{ PolicyArn: aws.String("arnType"), // Required UserName: aws.String("userNameType"), // Required } resp, err := svc.AttachUserPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ChangePassword() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ChangePasswordInput{ NewPassword: aws.String("passwordType"), // Required OldPassword: aws.String("passwordType"), // Required } resp, err := svc.ChangePassword(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_CreateAccessKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.CreateAccessKeyInput{ UserName: aws.String("existingUserNameType"), } resp, err := svc.CreateAccessKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_CreateAccountAlias() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.CreateAccountAliasInput{ AccountAlias: aws.String("accountAliasType"), // Required } resp, err := svc.CreateAccountAlias(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_CreateGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.CreateGroupInput{ GroupName: aws.String("groupNameType"), // Required Path: aws.String("pathType"), } resp, err := svc.CreateGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_CreateInstanceProfile() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.CreateInstanceProfileInput{ InstanceProfileName: aws.String("instanceProfileNameType"), // Required Path: aws.String("pathType"), } resp, err := svc.CreateInstanceProfile(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_CreateLoginProfile() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.CreateLoginProfileInput{ Password: aws.String("passwordType"), // Required UserName: aws.String("userNameType"), // Required PasswordResetRequired: aws.Bool(true), } resp, err := svc.CreateLoginProfile(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_CreateOpenIDConnectProvider() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.CreateOpenIDConnectProviderInput{ ThumbprintList: []*string{ // Required aws.String("thumbprintType"), // Required // More values... }, Url: aws.String("OpenIDConnectProviderUrlType"), // Required ClientIDList: []*string{ aws.String("clientIDType"), // Required // More values... }, } resp, err := svc.CreateOpenIDConnectProvider(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_CreatePolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.CreatePolicyInput{ PolicyDocument: aws.String("policyDocumentType"), // Required PolicyName: aws.String("policyNameType"), // Required Description: aws.String("policyDescriptionType"), Path: aws.String("policyPathType"), } resp, err := svc.CreatePolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_CreatePolicyVersion() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.CreatePolicyVersionInput{ PolicyArn: aws.String("arnType"), // Required PolicyDocument: aws.String("policyDocumentType"), // Required SetAsDefault: aws.Bool(true), } resp, err := svc.CreatePolicyVersion(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_CreateRole() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.CreateRoleInput{ AssumeRolePolicyDocument: aws.String("policyDocumentType"), // Required RoleName: aws.String("roleNameType"), // Required Path: aws.String("pathType"), } resp, err := svc.CreateRole(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_CreateSAMLProvider() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.CreateSAMLProviderInput{ Name: aws.String("SAMLProviderNameType"), // Required SAMLMetadataDocument: aws.String("SAMLMetadataDocumentType"), // Required } resp, err := svc.CreateSAMLProvider(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_CreateUser() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.CreateUserInput{ UserName: aws.String("userNameType"), // Required Path: aws.String("pathType"), } resp, err := svc.CreateUser(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_CreateVirtualMFADevice() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.CreateVirtualMFADeviceInput{ VirtualMFADeviceName: aws.String("virtualMFADeviceName"), // Required Path: aws.String("pathType"), } resp, err := svc.CreateVirtualMFADevice(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeactivateMFADevice() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeactivateMFADeviceInput{ SerialNumber: aws.String("serialNumberType"), // Required UserName: aws.String("existingUserNameType"), // Required } resp, err := svc.DeactivateMFADevice(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeleteAccessKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeleteAccessKeyInput{ AccessKeyId: aws.String("accessKeyIdType"), // Required UserName: aws.String("existingUserNameType"), } resp, err := svc.DeleteAccessKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeleteAccountAlias() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeleteAccountAliasInput{ AccountAlias: aws.String("accountAliasType"), // Required } resp, err := svc.DeleteAccountAlias(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeleteAccountPasswordPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) var params *iam.DeleteAccountPasswordPolicyInput resp, err := svc.DeleteAccountPasswordPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeleteGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeleteGroupInput{ GroupName: aws.String("groupNameType"), // Required } resp, err := svc.DeleteGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeleteGroupPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeleteGroupPolicyInput{ GroupName: aws.String("groupNameType"), // Required PolicyName: aws.String("policyNameType"), // Required } resp, err := svc.DeleteGroupPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeleteInstanceProfile() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeleteInstanceProfileInput{ InstanceProfileName: aws.String("instanceProfileNameType"), // Required } resp, err := svc.DeleteInstanceProfile(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeleteLoginProfile() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeleteLoginProfileInput{ UserName: aws.String("userNameType"), // Required } resp, err := svc.DeleteLoginProfile(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeleteOpenIDConnectProvider() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeleteOpenIDConnectProviderInput{ OpenIDConnectProviderArn: aws.String("arnType"), // Required } resp, err := svc.DeleteOpenIDConnectProvider(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeletePolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeletePolicyInput{ PolicyArn: aws.String("arnType"), // Required } resp, err := svc.DeletePolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeletePolicyVersion() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeletePolicyVersionInput{ PolicyArn: aws.String("arnType"), // Required VersionId: aws.String("policyVersionIdType"), // Required } resp, err := svc.DeletePolicyVersion(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeleteRole() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeleteRoleInput{ RoleName: aws.String("roleNameType"), // Required } resp, err := svc.DeleteRole(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeleteRolePolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeleteRolePolicyInput{ PolicyName: aws.String("policyNameType"), // Required RoleName: aws.String("roleNameType"), // Required } resp, err := svc.DeleteRolePolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeleteSAMLProvider() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeleteSAMLProviderInput{ SAMLProviderArn: aws.String("arnType"), // Required } resp, err := svc.DeleteSAMLProvider(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeleteSSHPublicKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeleteSSHPublicKeyInput{ SSHPublicKeyId: aws.String("publicKeyIdType"), // Required UserName: aws.String("userNameType"), // Required } resp, err := svc.DeleteSSHPublicKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeleteServerCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeleteServerCertificateInput{ ServerCertificateName: aws.String("serverCertificateNameType"), // Required } resp, err := svc.DeleteServerCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeleteSigningCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeleteSigningCertificateInput{ CertificateId: aws.String("certificateIdType"), // Required UserName: aws.String("existingUserNameType"), } resp, err := svc.DeleteSigningCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeleteUser() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeleteUserInput{ UserName: aws.String("existingUserNameType"), // Required } resp, err := svc.DeleteUser(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeleteUserPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeleteUserPolicyInput{ PolicyName: aws.String("policyNameType"), // Required UserName: aws.String("existingUserNameType"), // Required } resp, err := svc.DeleteUserPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DeleteVirtualMFADevice() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DeleteVirtualMFADeviceInput{ SerialNumber: aws.String("serialNumberType"), // Required } resp, err := svc.DeleteVirtualMFADevice(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DetachGroupPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DetachGroupPolicyInput{ GroupName: aws.String("groupNameType"), // Required PolicyArn: aws.String("arnType"), // Required } resp, err := svc.DetachGroupPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DetachRolePolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DetachRolePolicyInput{ PolicyArn: aws.String("arnType"), // Required RoleName: aws.String("roleNameType"), // Required } resp, err := svc.DetachRolePolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_DetachUserPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.DetachUserPolicyInput{ PolicyArn: aws.String("arnType"), // Required UserName: aws.String("userNameType"), // Required } resp, err := svc.DetachUserPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_EnableMFADevice() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.EnableMFADeviceInput{ AuthenticationCode1: aws.String("authenticationCodeType"), // Required AuthenticationCode2: aws.String("authenticationCodeType"), // Required SerialNumber: aws.String("serialNumberType"), // Required UserName: aws.String("existingUserNameType"), // Required } resp, err := svc.EnableMFADevice(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GenerateCredentialReport() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) var params *iam.GenerateCredentialReportInput resp, err := svc.GenerateCredentialReport(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetAccessKeyLastUsed() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.GetAccessKeyLastUsedInput{ AccessKeyId: aws.String("accessKeyIdType"), // Required } resp, err := svc.GetAccessKeyLastUsed(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetAccountAuthorizationDetails() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.GetAccountAuthorizationDetailsInput{ Filter: []*string{ aws.String("EntityType"), // Required // More values... }, Marker: aws.String("markerType"), MaxItems: aws.Int64(1), } resp, err := svc.GetAccountAuthorizationDetails(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetAccountPasswordPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) var params *iam.GetAccountPasswordPolicyInput resp, err := svc.GetAccountPasswordPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetAccountSummary() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) var params *iam.GetAccountSummaryInput resp, err := svc.GetAccountSummary(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetContextKeysForCustomPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.GetContextKeysForCustomPolicyInput{ PolicyInputList: []*string{ // Required aws.String("policyDocumentType"), // Required // More values... }, } resp, err := svc.GetContextKeysForCustomPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetContextKeysForPrincipalPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.GetContextKeysForPrincipalPolicyInput{ PolicySourceArn: aws.String("arnType"), // Required PolicyInputList: []*string{ aws.String("policyDocumentType"), // Required // More values... }, } resp, err := svc.GetContextKeysForPrincipalPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetCredentialReport() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) var params *iam.GetCredentialReportInput resp, err := svc.GetCredentialReport(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.GetGroupInput{ GroupName: aws.String("groupNameType"), // Required Marker: aws.String("markerType"), MaxItems: aws.Int64(1), } resp, err := svc.GetGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetGroupPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.GetGroupPolicyInput{ GroupName: aws.String("groupNameType"), // Required PolicyName: aws.String("policyNameType"), // Required } resp, err := svc.GetGroupPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetInstanceProfile() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.GetInstanceProfileInput{ InstanceProfileName: aws.String("instanceProfileNameType"), // Required } resp, err := svc.GetInstanceProfile(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetLoginProfile() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.GetLoginProfileInput{ UserName: aws.String("userNameType"), // Required } resp, err := svc.GetLoginProfile(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetOpenIDConnectProvider() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.GetOpenIDConnectProviderInput{ OpenIDConnectProviderArn: aws.String("arnType"), // Required } resp, err := svc.GetOpenIDConnectProvider(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.GetPolicyInput{ PolicyArn: aws.String("arnType"), // Required } resp, err := svc.GetPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetPolicyVersion() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.GetPolicyVersionInput{ PolicyArn: aws.String("arnType"), // Required VersionId: aws.String("policyVersionIdType"), // Required } resp, err := svc.GetPolicyVersion(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetRole() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.GetRoleInput{ RoleName: aws.String("roleNameType"), // Required } resp, err := svc.GetRole(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetRolePolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.GetRolePolicyInput{ PolicyName: aws.String("policyNameType"), // Required RoleName: aws.String("roleNameType"), // Required } resp, err := svc.GetRolePolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetSAMLProvider() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.GetSAMLProviderInput{ SAMLProviderArn: aws.String("arnType"), // Required } resp, err := svc.GetSAMLProvider(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetSSHPublicKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.GetSSHPublicKeyInput{ Encoding: aws.String("encodingType"), // Required SSHPublicKeyId: aws.String("publicKeyIdType"), // Required UserName: aws.String("userNameType"), // Required } resp, err := svc.GetSSHPublicKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetServerCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.GetServerCertificateInput{ ServerCertificateName: aws.String("serverCertificateNameType"), // Required } resp, err := svc.GetServerCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetUser() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.GetUserInput{ UserName: aws.String("existingUserNameType"), } resp, err := svc.GetUser(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_GetUserPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.GetUserPolicyInput{ PolicyName: aws.String("policyNameType"), // Required UserName: aws.String("existingUserNameType"), // Required } resp, err := svc.GetUserPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListAccessKeys() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListAccessKeysInput{ Marker: aws.String("markerType"), MaxItems: aws.Int64(1), UserName: aws.String("existingUserNameType"), } resp, err := svc.ListAccessKeys(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListAccountAliases() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListAccountAliasesInput{ Marker: aws.String("markerType"), MaxItems: aws.Int64(1), } resp, err := svc.ListAccountAliases(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListAttachedGroupPolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListAttachedGroupPoliciesInput{ GroupName: aws.String("groupNameType"), // Required Marker: aws.String("markerType"), MaxItems: aws.Int64(1), PathPrefix: aws.String("policyPathType"), } resp, err := svc.ListAttachedGroupPolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListAttachedRolePolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListAttachedRolePoliciesInput{ RoleName: aws.String("roleNameType"), // Required Marker: aws.String("markerType"), MaxItems: aws.Int64(1), PathPrefix: aws.String("policyPathType"), } resp, err := svc.ListAttachedRolePolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListAttachedUserPolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListAttachedUserPoliciesInput{ UserName: aws.String("userNameType"), // Required Marker: aws.String("markerType"), MaxItems: aws.Int64(1), PathPrefix: aws.String("policyPathType"), } resp, err := svc.ListAttachedUserPolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListEntitiesForPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListEntitiesForPolicyInput{ PolicyArn: aws.String("arnType"), // Required EntityFilter: aws.String("EntityType"), Marker: aws.String("markerType"), MaxItems: aws.Int64(1), PathPrefix: aws.String("pathType"), } resp, err := svc.ListEntitiesForPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListGroupPolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListGroupPoliciesInput{ GroupName: aws.String("groupNameType"), // Required Marker: aws.String("markerType"), MaxItems: aws.Int64(1), } resp, err := svc.ListGroupPolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListGroupsInput{ Marker: aws.String("markerType"), MaxItems: aws.Int64(1), PathPrefix: aws.String("pathPrefixType"), } resp, err := svc.ListGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListGroupsForUser() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListGroupsForUserInput{ UserName: aws.String("existingUserNameType"), // Required Marker: aws.String("markerType"), MaxItems: aws.Int64(1), } resp, err := svc.ListGroupsForUser(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListInstanceProfiles() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListInstanceProfilesInput{ Marker: aws.String("markerType"), MaxItems: aws.Int64(1), PathPrefix: aws.String("pathPrefixType"), } resp, err := svc.ListInstanceProfiles(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListInstanceProfilesForRole() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListInstanceProfilesForRoleInput{ RoleName: aws.String("roleNameType"), // Required Marker: aws.String("markerType"), MaxItems: aws.Int64(1), } resp, err := svc.ListInstanceProfilesForRole(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListMFADevices() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListMFADevicesInput{ Marker: aws.String("markerType"), MaxItems: aws.Int64(1), UserName: aws.String("existingUserNameType"), } resp, err := svc.ListMFADevices(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListOpenIDConnectProviders() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) var params *iam.ListOpenIDConnectProvidersInput resp, err := svc.ListOpenIDConnectProviders(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListPolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListPoliciesInput{ Marker: aws.String("markerType"), MaxItems: aws.Int64(1), OnlyAttached: aws.Bool(true), PathPrefix: aws.String("policyPathType"), Scope: aws.String("policyScopeType"), } resp, err := svc.ListPolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListPolicyVersions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListPolicyVersionsInput{ PolicyArn: aws.String("arnType"), // Required Marker: aws.String("markerType"), MaxItems: aws.Int64(1), } resp, err := svc.ListPolicyVersions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListRolePolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListRolePoliciesInput{ RoleName: aws.String("roleNameType"), // Required Marker: aws.String("markerType"), MaxItems: aws.Int64(1), } resp, err := svc.ListRolePolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListRoles() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListRolesInput{ Marker: aws.String("markerType"), MaxItems: aws.Int64(1), PathPrefix: aws.String("pathPrefixType"), } resp, err := svc.ListRoles(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListSAMLProviders() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) var params *iam.ListSAMLProvidersInput resp, err := svc.ListSAMLProviders(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListSSHPublicKeys() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListSSHPublicKeysInput{ Marker: aws.String("markerType"), MaxItems: aws.Int64(1), UserName: aws.String("userNameType"), } resp, err := svc.ListSSHPublicKeys(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListServerCertificates() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListServerCertificatesInput{ Marker: aws.String("markerType"), MaxItems: aws.Int64(1), PathPrefix: aws.String("pathPrefixType"), } resp, err := svc.ListServerCertificates(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListSigningCertificates() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListSigningCertificatesInput{ Marker: aws.String("markerType"), MaxItems: aws.Int64(1), UserName: aws.String("existingUserNameType"), } resp, err := svc.ListSigningCertificates(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListUserPolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListUserPoliciesInput{ UserName: aws.String("existingUserNameType"), // Required Marker: aws.String("markerType"), MaxItems: aws.Int64(1), } resp, err := svc.ListUserPolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListUsers() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListUsersInput{ Marker: aws.String("markerType"), MaxItems: aws.Int64(1), PathPrefix: aws.String("pathPrefixType"), } resp, err := svc.ListUsers(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ListVirtualMFADevices() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ListVirtualMFADevicesInput{ AssignmentStatus: aws.String("assignmentStatusType"), Marker: aws.String("markerType"), MaxItems: aws.Int64(1), } resp, err := svc.ListVirtualMFADevices(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_PutGroupPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.PutGroupPolicyInput{ GroupName: aws.String("groupNameType"), // Required PolicyDocument: aws.String("policyDocumentType"), // Required PolicyName: aws.String("policyNameType"), // Required } resp, err := svc.PutGroupPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_PutRolePolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.PutRolePolicyInput{ PolicyDocument: aws.String("policyDocumentType"), // Required PolicyName: aws.String("policyNameType"), // Required RoleName: aws.String("roleNameType"), // Required } resp, err := svc.PutRolePolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_PutUserPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.PutUserPolicyInput{ PolicyDocument: aws.String("policyDocumentType"), // Required PolicyName: aws.String("policyNameType"), // Required UserName: aws.String("existingUserNameType"), // Required } resp, err := svc.PutUserPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_RemoveClientIDFromOpenIDConnectProvider() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.RemoveClientIDFromOpenIDConnectProviderInput{ ClientID: aws.String("clientIDType"), // Required OpenIDConnectProviderArn: aws.String("arnType"), // Required } resp, err := svc.RemoveClientIDFromOpenIDConnectProvider(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_RemoveRoleFromInstanceProfile() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.RemoveRoleFromInstanceProfileInput{ InstanceProfileName: aws.String("instanceProfileNameType"), // Required RoleName: aws.String("roleNameType"), // Required } resp, err := svc.RemoveRoleFromInstanceProfile(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_RemoveUserFromGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.RemoveUserFromGroupInput{ GroupName: aws.String("groupNameType"), // Required UserName: aws.String("existingUserNameType"), // Required } resp, err := svc.RemoveUserFromGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_ResyncMFADevice() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.ResyncMFADeviceInput{ AuthenticationCode1: aws.String("authenticationCodeType"), // Required AuthenticationCode2: aws.String("authenticationCodeType"), // Required SerialNumber: aws.String("serialNumberType"), // Required UserName: aws.String("existingUserNameType"), // Required } resp, err := svc.ResyncMFADevice(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_SetDefaultPolicyVersion() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.SetDefaultPolicyVersionInput{ PolicyArn: aws.String("arnType"), // Required VersionId: aws.String("policyVersionIdType"), // Required } resp, err := svc.SetDefaultPolicyVersion(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_SimulateCustomPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.SimulateCustomPolicyInput{ ActionNames: []*string{ // Required aws.String("ActionNameType"), // Required // More values... }, PolicyInputList: []*string{ // Required aws.String("policyDocumentType"), // Required // More values... }, CallerArn: aws.String("ResourceNameType"), ContextEntries: []*iam.ContextEntry{ { // Required ContextKeyName: aws.String("ContextKeyNameType"), ContextKeyType: aws.String("ContextKeyTypeEnum"), ContextKeyValues: []*string{ aws.String("ContextKeyValueType"), // Required // More values... }, }, // More values... }, Marker: aws.String("markerType"), MaxItems: aws.Int64(1), ResourceArns: []*string{ aws.String("ResourceNameType"), // Required // More values... }, ResourceHandlingOption: aws.String("ResourceHandlingOptionType"), ResourceOwner: aws.String("ResourceNameType"), ResourcePolicy: aws.String("policyDocumentType"), } resp, err := svc.SimulateCustomPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_SimulatePrincipalPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.SimulatePrincipalPolicyInput{ ActionNames: []*string{ // Required aws.String("ActionNameType"), // Required // More values... }, PolicySourceArn: aws.String("arnType"), // Required CallerArn: aws.String("ResourceNameType"), ContextEntries: []*iam.ContextEntry{ { // Required ContextKeyName: aws.String("ContextKeyNameType"), ContextKeyType: aws.String("ContextKeyTypeEnum"), ContextKeyValues: []*string{ aws.String("ContextKeyValueType"), // Required // More values... }, }, // More values... }, Marker: aws.String("markerType"), MaxItems: aws.Int64(1), PolicyInputList: []*string{ aws.String("policyDocumentType"), // Required // More values... }, ResourceArns: []*string{ aws.String("ResourceNameType"), // Required // More values... }, ResourceHandlingOption: aws.String("ResourceHandlingOptionType"), ResourceOwner: aws.String("ResourceNameType"), ResourcePolicy: aws.String("policyDocumentType"), } resp, err := svc.SimulatePrincipalPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_UpdateAccessKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.UpdateAccessKeyInput{ AccessKeyId: aws.String("accessKeyIdType"), // Required Status: aws.String("statusType"), // Required UserName: aws.String("existingUserNameType"), } resp, err := svc.UpdateAccessKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_UpdateAccountPasswordPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.UpdateAccountPasswordPolicyInput{ AllowUsersToChangePassword: aws.Bool(true), HardExpiry: aws.Bool(true), MaxPasswordAge: aws.Int64(1), MinimumPasswordLength: aws.Int64(1), PasswordReusePrevention: aws.Int64(1), RequireLowercaseCharacters: aws.Bool(true), RequireNumbers: aws.Bool(true), RequireSymbols: aws.Bool(true), RequireUppercaseCharacters: aws.Bool(true), } resp, err := svc.UpdateAccountPasswordPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_UpdateAssumeRolePolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.UpdateAssumeRolePolicyInput{ PolicyDocument: aws.String("policyDocumentType"), // Required RoleName: aws.String("roleNameType"), // Required } resp, err := svc.UpdateAssumeRolePolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_UpdateGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.UpdateGroupInput{ GroupName: aws.String("groupNameType"), // Required NewGroupName: aws.String("groupNameType"), NewPath: aws.String("pathType"), } resp, err := svc.UpdateGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_UpdateLoginProfile() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.UpdateLoginProfileInput{ UserName: aws.String("userNameType"), // Required Password: aws.String("passwordType"), PasswordResetRequired: aws.Bool(true), } resp, err := svc.UpdateLoginProfile(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_UpdateOpenIDConnectProviderThumbprint() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.UpdateOpenIDConnectProviderThumbprintInput{ OpenIDConnectProviderArn: aws.String("arnType"), // Required ThumbprintList: []*string{ // Required aws.String("thumbprintType"), // Required // More values... }, } resp, err := svc.UpdateOpenIDConnectProviderThumbprint(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_UpdateSAMLProvider() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.UpdateSAMLProviderInput{ SAMLMetadataDocument: aws.String("SAMLMetadataDocumentType"), // Required SAMLProviderArn: aws.String("arnType"), // Required } resp, err := svc.UpdateSAMLProvider(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_UpdateSSHPublicKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.UpdateSSHPublicKeyInput{ SSHPublicKeyId: aws.String("publicKeyIdType"), // Required Status: aws.String("statusType"), // Required UserName: aws.String("userNameType"), // Required } resp, err := svc.UpdateSSHPublicKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_UpdateServerCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.UpdateServerCertificateInput{ ServerCertificateName: aws.String("serverCertificateNameType"), // Required NewPath: aws.String("pathType"), NewServerCertificateName: aws.String("serverCertificateNameType"), } resp, err := svc.UpdateServerCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_UpdateSigningCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.UpdateSigningCertificateInput{ CertificateId: aws.String("certificateIdType"), // Required Status: aws.String("statusType"), // Required UserName: aws.String("existingUserNameType"), } resp, err := svc.UpdateSigningCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_UpdateUser() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.UpdateUserInput{ UserName: aws.String("existingUserNameType"), // Required NewPath: aws.String("pathType"), NewUserName: aws.String("userNameType"), } resp, err := svc.UpdateUser(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_UploadSSHPublicKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.UploadSSHPublicKeyInput{ SSHPublicKeyBody: aws.String("publicKeyMaterialType"), // Required UserName: aws.String("userNameType"), // Required } resp, err := svc.UploadSSHPublicKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_UploadServerCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.UploadServerCertificateInput{ CertificateBody: aws.String("certificateBodyType"), // Required PrivateKey: aws.String("privateKeyType"), // Required ServerCertificateName: aws.String("serverCertificateNameType"), // Required CertificateChain: aws.String("certificateChainType"), Path: aws.String("pathType"), } resp, err := svc.UploadServerCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIAM_UploadSigningCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iam.New(sess) params := &iam.UploadSigningCertificateInput{ CertificateBody: aws.String("certificateBodyType"), // Required UserName: aws.String("existingUserNameType"), } resp, err := svc.UploadSigningCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/iam/iamiface/000077500000000000000000000000001300374646400175275ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/iam/iamiface/interface.go000066400000000000000000000662421300374646400220300ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package iamiface provides an interface to enable mocking the AWS Identity and Access Management service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package iamiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/iam" ) // IAMAPI provides an interface to enable mocking the // iam.IAM service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Identity and Access Management. // func myFunc(svc iamiface.IAMAPI) bool { // // Make svc.AddClientIDToOpenIDConnectProvider request // } // // func main() { // sess := session.New() // svc := iam.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockIAMClient struct { // iamiface.IAMAPI // } // func (m *mockIAMClient) AddClientIDToOpenIDConnectProvider(input *iam.AddClientIDToOpenIDConnectProviderInput) (*iam.AddClientIDToOpenIDConnectProviderOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockIAMClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type IAMAPI interface { AddClientIDToOpenIDConnectProviderRequest(*iam.AddClientIDToOpenIDConnectProviderInput) (*request.Request, *iam.AddClientIDToOpenIDConnectProviderOutput) AddClientIDToOpenIDConnectProvider(*iam.AddClientIDToOpenIDConnectProviderInput) (*iam.AddClientIDToOpenIDConnectProviderOutput, error) AddRoleToInstanceProfileRequest(*iam.AddRoleToInstanceProfileInput) (*request.Request, *iam.AddRoleToInstanceProfileOutput) AddRoleToInstanceProfile(*iam.AddRoleToInstanceProfileInput) (*iam.AddRoleToInstanceProfileOutput, error) AddUserToGroupRequest(*iam.AddUserToGroupInput) (*request.Request, *iam.AddUserToGroupOutput) AddUserToGroup(*iam.AddUserToGroupInput) (*iam.AddUserToGroupOutput, error) AttachGroupPolicyRequest(*iam.AttachGroupPolicyInput) (*request.Request, *iam.AttachGroupPolicyOutput) AttachGroupPolicy(*iam.AttachGroupPolicyInput) (*iam.AttachGroupPolicyOutput, error) AttachRolePolicyRequest(*iam.AttachRolePolicyInput) (*request.Request, *iam.AttachRolePolicyOutput) AttachRolePolicy(*iam.AttachRolePolicyInput) (*iam.AttachRolePolicyOutput, error) AttachUserPolicyRequest(*iam.AttachUserPolicyInput) (*request.Request, *iam.AttachUserPolicyOutput) AttachUserPolicy(*iam.AttachUserPolicyInput) (*iam.AttachUserPolicyOutput, error) ChangePasswordRequest(*iam.ChangePasswordInput) (*request.Request, *iam.ChangePasswordOutput) ChangePassword(*iam.ChangePasswordInput) (*iam.ChangePasswordOutput, error) CreateAccessKeyRequest(*iam.CreateAccessKeyInput) (*request.Request, *iam.CreateAccessKeyOutput) CreateAccessKey(*iam.CreateAccessKeyInput) (*iam.CreateAccessKeyOutput, error) CreateAccountAliasRequest(*iam.CreateAccountAliasInput) (*request.Request, *iam.CreateAccountAliasOutput) CreateAccountAlias(*iam.CreateAccountAliasInput) (*iam.CreateAccountAliasOutput, error) CreateGroupRequest(*iam.CreateGroupInput) (*request.Request, *iam.CreateGroupOutput) CreateGroup(*iam.CreateGroupInput) (*iam.CreateGroupOutput, error) CreateInstanceProfileRequest(*iam.CreateInstanceProfileInput) (*request.Request, *iam.CreateInstanceProfileOutput) CreateInstanceProfile(*iam.CreateInstanceProfileInput) (*iam.CreateInstanceProfileOutput, error) CreateLoginProfileRequest(*iam.CreateLoginProfileInput) (*request.Request, *iam.CreateLoginProfileOutput) CreateLoginProfile(*iam.CreateLoginProfileInput) (*iam.CreateLoginProfileOutput, error) CreateOpenIDConnectProviderRequest(*iam.CreateOpenIDConnectProviderInput) (*request.Request, *iam.CreateOpenIDConnectProviderOutput) CreateOpenIDConnectProvider(*iam.CreateOpenIDConnectProviderInput) (*iam.CreateOpenIDConnectProviderOutput, error) CreatePolicyRequest(*iam.CreatePolicyInput) (*request.Request, *iam.CreatePolicyOutput) CreatePolicy(*iam.CreatePolicyInput) (*iam.CreatePolicyOutput, error) CreatePolicyVersionRequest(*iam.CreatePolicyVersionInput) (*request.Request, *iam.CreatePolicyVersionOutput) CreatePolicyVersion(*iam.CreatePolicyVersionInput) (*iam.CreatePolicyVersionOutput, error) CreateRoleRequest(*iam.CreateRoleInput) (*request.Request, *iam.CreateRoleOutput) CreateRole(*iam.CreateRoleInput) (*iam.CreateRoleOutput, error) CreateSAMLProviderRequest(*iam.CreateSAMLProviderInput) (*request.Request, *iam.CreateSAMLProviderOutput) CreateSAMLProvider(*iam.CreateSAMLProviderInput) (*iam.CreateSAMLProviderOutput, error) CreateUserRequest(*iam.CreateUserInput) (*request.Request, *iam.CreateUserOutput) CreateUser(*iam.CreateUserInput) (*iam.CreateUserOutput, error) CreateVirtualMFADeviceRequest(*iam.CreateVirtualMFADeviceInput) (*request.Request, *iam.CreateVirtualMFADeviceOutput) CreateVirtualMFADevice(*iam.CreateVirtualMFADeviceInput) (*iam.CreateVirtualMFADeviceOutput, error) DeactivateMFADeviceRequest(*iam.DeactivateMFADeviceInput) (*request.Request, *iam.DeactivateMFADeviceOutput) DeactivateMFADevice(*iam.DeactivateMFADeviceInput) (*iam.DeactivateMFADeviceOutput, error) DeleteAccessKeyRequest(*iam.DeleteAccessKeyInput) (*request.Request, *iam.DeleteAccessKeyOutput) DeleteAccessKey(*iam.DeleteAccessKeyInput) (*iam.DeleteAccessKeyOutput, error) DeleteAccountAliasRequest(*iam.DeleteAccountAliasInput) (*request.Request, *iam.DeleteAccountAliasOutput) DeleteAccountAlias(*iam.DeleteAccountAliasInput) (*iam.DeleteAccountAliasOutput, error) DeleteAccountPasswordPolicyRequest(*iam.DeleteAccountPasswordPolicyInput) (*request.Request, *iam.DeleteAccountPasswordPolicyOutput) DeleteAccountPasswordPolicy(*iam.DeleteAccountPasswordPolicyInput) (*iam.DeleteAccountPasswordPolicyOutput, error) DeleteGroupRequest(*iam.DeleteGroupInput) (*request.Request, *iam.DeleteGroupOutput) DeleteGroup(*iam.DeleteGroupInput) (*iam.DeleteGroupOutput, error) DeleteGroupPolicyRequest(*iam.DeleteGroupPolicyInput) (*request.Request, *iam.DeleteGroupPolicyOutput) DeleteGroupPolicy(*iam.DeleteGroupPolicyInput) (*iam.DeleteGroupPolicyOutput, error) DeleteInstanceProfileRequest(*iam.DeleteInstanceProfileInput) (*request.Request, *iam.DeleteInstanceProfileOutput) DeleteInstanceProfile(*iam.DeleteInstanceProfileInput) (*iam.DeleteInstanceProfileOutput, error) DeleteLoginProfileRequest(*iam.DeleteLoginProfileInput) (*request.Request, *iam.DeleteLoginProfileOutput) DeleteLoginProfile(*iam.DeleteLoginProfileInput) (*iam.DeleteLoginProfileOutput, error) DeleteOpenIDConnectProviderRequest(*iam.DeleteOpenIDConnectProviderInput) (*request.Request, *iam.DeleteOpenIDConnectProviderOutput) DeleteOpenIDConnectProvider(*iam.DeleteOpenIDConnectProviderInput) (*iam.DeleteOpenIDConnectProviderOutput, error) DeletePolicyRequest(*iam.DeletePolicyInput) (*request.Request, *iam.DeletePolicyOutput) DeletePolicy(*iam.DeletePolicyInput) (*iam.DeletePolicyOutput, error) DeletePolicyVersionRequest(*iam.DeletePolicyVersionInput) (*request.Request, *iam.DeletePolicyVersionOutput) DeletePolicyVersion(*iam.DeletePolicyVersionInput) (*iam.DeletePolicyVersionOutput, error) DeleteRoleRequest(*iam.DeleteRoleInput) (*request.Request, *iam.DeleteRoleOutput) DeleteRole(*iam.DeleteRoleInput) (*iam.DeleteRoleOutput, error) DeleteRolePolicyRequest(*iam.DeleteRolePolicyInput) (*request.Request, *iam.DeleteRolePolicyOutput) DeleteRolePolicy(*iam.DeleteRolePolicyInput) (*iam.DeleteRolePolicyOutput, error) DeleteSAMLProviderRequest(*iam.DeleteSAMLProviderInput) (*request.Request, *iam.DeleteSAMLProviderOutput) DeleteSAMLProvider(*iam.DeleteSAMLProviderInput) (*iam.DeleteSAMLProviderOutput, error) DeleteSSHPublicKeyRequest(*iam.DeleteSSHPublicKeyInput) (*request.Request, *iam.DeleteSSHPublicKeyOutput) DeleteSSHPublicKey(*iam.DeleteSSHPublicKeyInput) (*iam.DeleteSSHPublicKeyOutput, error) DeleteServerCertificateRequest(*iam.DeleteServerCertificateInput) (*request.Request, *iam.DeleteServerCertificateOutput) DeleteServerCertificate(*iam.DeleteServerCertificateInput) (*iam.DeleteServerCertificateOutput, error) DeleteSigningCertificateRequest(*iam.DeleteSigningCertificateInput) (*request.Request, *iam.DeleteSigningCertificateOutput) DeleteSigningCertificate(*iam.DeleteSigningCertificateInput) (*iam.DeleteSigningCertificateOutput, error) DeleteUserRequest(*iam.DeleteUserInput) (*request.Request, *iam.DeleteUserOutput) DeleteUser(*iam.DeleteUserInput) (*iam.DeleteUserOutput, error) DeleteUserPolicyRequest(*iam.DeleteUserPolicyInput) (*request.Request, *iam.DeleteUserPolicyOutput) DeleteUserPolicy(*iam.DeleteUserPolicyInput) (*iam.DeleteUserPolicyOutput, error) DeleteVirtualMFADeviceRequest(*iam.DeleteVirtualMFADeviceInput) (*request.Request, *iam.DeleteVirtualMFADeviceOutput) DeleteVirtualMFADevice(*iam.DeleteVirtualMFADeviceInput) (*iam.DeleteVirtualMFADeviceOutput, error) DetachGroupPolicyRequest(*iam.DetachGroupPolicyInput) (*request.Request, *iam.DetachGroupPolicyOutput) DetachGroupPolicy(*iam.DetachGroupPolicyInput) (*iam.DetachGroupPolicyOutput, error) DetachRolePolicyRequest(*iam.DetachRolePolicyInput) (*request.Request, *iam.DetachRolePolicyOutput) DetachRolePolicy(*iam.DetachRolePolicyInput) (*iam.DetachRolePolicyOutput, error) DetachUserPolicyRequest(*iam.DetachUserPolicyInput) (*request.Request, *iam.DetachUserPolicyOutput) DetachUserPolicy(*iam.DetachUserPolicyInput) (*iam.DetachUserPolicyOutput, error) EnableMFADeviceRequest(*iam.EnableMFADeviceInput) (*request.Request, *iam.EnableMFADeviceOutput) EnableMFADevice(*iam.EnableMFADeviceInput) (*iam.EnableMFADeviceOutput, error) GenerateCredentialReportRequest(*iam.GenerateCredentialReportInput) (*request.Request, *iam.GenerateCredentialReportOutput) GenerateCredentialReport(*iam.GenerateCredentialReportInput) (*iam.GenerateCredentialReportOutput, error) GetAccessKeyLastUsedRequest(*iam.GetAccessKeyLastUsedInput) (*request.Request, *iam.GetAccessKeyLastUsedOutput) GetAccessKeyLastUsed(*iam.GetAccessKeyLastUsedInput) (*iam.GetAccessKeyLastUsedOutput, error) GetAccountAuthorizationDetailsRequest(*iam.GetAccountAuthorizationDetailsInput) (*request.Request, *iam.GetAccountAuthorizationDetailsOutput) GetAccountAuthorizationDetails(*iam.GetAccountAuthorizationDetailsInput) (*iam.GetAccountAuthorizationDetailsOutput, error) GetAccountAuthorizationDetailsPages(*iam.GetAccountAuthorizationDetailsInput, func(*iam.GetAccountAuthorizationDetailsOutput, bool) bool) error GetAccountPasswordPolicyRequest(*iam.GetAccountPasswordPolicyInput) (*request.Request, *iam.GetAccountPasswordPolicyOutput) GetAccountPasswordPolicy(*iam.GetAccountPasswordPolicyInput) (*iam.GetAccountPasswordPolicyOutput, error) GetAccountSummaryRequest(*iam.GetAccountSummaryInput) (*request.Request, *iam.GetAccountSummaryOutput) GetAccountSummary(*iam.GetAccountSummaryInput) (*iam.GetAccountSummaryOutput, error) GetContextKeysForCustomPolicyRequest(*iam.GetContextKeysForCustomPolicyInput) (*request.Request, *iam.GetContextKeysForPolicyResponse) GetContextKeysForCustomPolicy(*iam.GetContextKeysForCustomPolicyInput) (*iam.GetContextKeysForPolicyResponse, error) GetContextKeysForPrincipalPolicyRequest(*iam.GetContextKeysForPrincipalPolicyInput) (*request.Request, *iam.GetContextKeysForPolicyResponse) GetContextKeysForPrincipalPolicy(*iam.GetContextKeysForPrincipalPolicyInput) (*iam.GetContextKeysForPolicyResponse, error) GetCredentialReportRequest(*iam.GetCredentialReportInput) (*request.Request, *iam.GetCredentialReportOutput) GetCredentialReport(*iam.GetCredentialReportInput) (*iam.GetCredentialReportOutput, error) GetGroupRequest(*iam.GetGroupInput) (*request.Request, *iam.GetGroupOutput) GetGroup(*iam.GetGroupInput) (*iam.GetGroupOutput, error) GetGroupPages(*iam.GetGroupInput, func(*iam.GetGroupOutput, bool) bool) error GetGroupPolicyRequest(*iam.GetGroupPolicyInput) (*request.Request, *iam.GetGroupPolicyOutput) GetGroupPolicy(*iam.GetGroupPolicyInput) (*iam.GetGroupPolicyOutput, error) GetInstanceProfileRequest(*iam.GetInstanceProfileInput) (*request.Request, *iam.GetInstanceProfileOutput) GetInstanceProfile(*iam.GetInstanceProfileInput) (*iam.GetInstanceProfileOutput, error) GetLoginProfileRequest(*iam.GetLoginProfileInput) (*request.Request, *iam.GetLoginProfileOutput) GetLoginProfile(*iam.GetLoginProfileInput) (*iam.GetLoginProfileOutput, error) GetOpenIDConnectProviderRequest(*iam.GetOpenIDConnectProviderInput) (*request.Request, *iam.GetOpenIDConnectProviderOutput) GetOpenIDConnectProvider(*iam.GetOpenIDConnectProviderInput) (*iam.GetOpenIDConnectProviderOutput, error) GetPolicyRequest(*iam.GetPolicyInput) (*request.Request, *iam.GetPolicyOutput) GetPolicy(*iam.GetPolicyInput) (*iam.GetPolicyOutput, error) GetPolicyVersionRequest(*iam.GetPolicyVersionInput) (*request.Request, *iam.GetPolicyVersionOutput) GetPolicyVersion(*iam.GetPolicyVersionInput) (*iam.GetPolicyVersionOutput, error) GetRoleRequest(*iam.GetRoleInput) (*request.Request, *iam.GetRoleOutput) GetRole(*iam.GetRoleInput) (*iam.GetRoleOutput, error) GetRolePolicyRequest(*iam.GetRolePolicyInput) (*request.Request, *iam.GetRolePolicyOutput) GetRolePolicy(*iam.GetRolePolicyInput) (*iam.GetRolePolicyOutput, error) GetSAMLProviderRequest(*iam.GetSAMLProviderInput) (*request.Request, *iam.GetSAMLProviderOutput) GetSAMLProvider(*iam.GetSAMLProviderInput) (*iam.GetSAMLProviderOutput, error) GetSSHPublicKeyRequest(*iam.GetSSHPublicKeyInput) (*request.Request, *iam.GetSSHPublicKeyOutput) GetSSHPublicKey(*iam.GetSSHPublicKeyInput) (*iam.GetSSHPublicKeyOutput, error) GetServerCertificateRequest(*iam.GetServerCertificateInput) (*request.Request, *iam.GetServerCertificateOutput) GetServerCertificate(*iam.GetServerCertificateInput) (*iam.GetServerCertificateOutput, error) GetUserRequest(*iam.GetUserInput) (*request.Request, *iam.GetUserOutput) GetUser(*iam.GetUserInput) (*iam.GetUserOutput, error) GetUserPolicyRequest(*iam.GetUserPolicyInput) (*request.Request, *iam.GetUserPolicyOutput) GetUserPolicy(*iam.GetUserPolicyInput) (*iam.GetUserPolicyOutput, error) ListAccessKeysRequest(*iam.ListAccessKeysInput) (*request.Request, *iam.ListAccessKeysOutput) ListAccessKeys(*iam.ListAccessKeysInput) (*iam.ListAccessKeysOutput, error) ListAccessKeysPages(*iam.ListAccessKeysInput, func(*iam.ListAccessKeysOutput, bool) bool) error ListAccountAliasesRequest(*iam.ListAccountAliasesInput) (*request.Request, *iam.ListAccountAliasesOutput) ListAccountAliases(*iam.ListAccountAliasesInput) (*iam.ListAccountAliasesOutput, error) ListAccountAliasesPages(*iam.ListAccountAliasesInput, func(*iam.ListAccountAliasesOutput, bool) bool) error ListAttachedGroupPoliciesRequest(*iam.ListAttachedGroupPoliciesInput) (*request.Request, *iam.ListAttachedGroupPoliciesOutput) ListAttachedGroupPolicies(*iam.ListAttachedGroupPoliciesInput) (*iam.ListAttachedGroupPoliciesOutput, error) ListAttachedGroupPoliciesPages(*iam.ListAttachedGroupPoliciesInput, func(*iam.ListAttachedGroupPoliciesOutput, bool) bool) error ListAttachedRolePoliciesRequest(*iam.ListAttachedRolePoliciesInput) (*request.Request, *iam.ListAttachedRolePoliciesOutput) ListAttachedRolePolicies(*iam.ListAttachedRolePoliciesInput) (*iam.ListAttachedRolePoliciesOutput, error) ListAttachedRolePoliciesPages(*iam.ListAttachedRolePoliciesInput, func(*iam.ListAttachedRolePoliciesOutput, bool) bool) error ListAttachedUserPoliciesRequest(*iam.ListAttachedUserPoliciesInput) (*request.Request, *iam.ListAttachedUserPoliciesOutput) ListAttachedUserPolicies(*iam.ListAttachedUserPoliciesInput) (*iam.ListAttachedUserPoliciesOutput, error) ListAttachedUserPoliciesPages(*iam.ListAttachedUserPoliciesInput, func(*iam.ListAttachedUserPoliciesOutput, bool) bool) error ListEntitiesForPolicyRequest(*iam.ListEntitiesForPolicyInput) (*request.Request, *iam.ListEntitiesForPolicyOutput) ListEntitiesForPolicy(*iam.ListEntitiesForPolicyInput) (*iam.ListEntitiesForPolicyOutput, error) ListEntitiesForPolicyPages(*iam.ListEntitiesForPolicyInput, func(*iam.ListEntitiesForPolicyOutput, bool) bool) error ListGroupPoliciesRequest(*iam.ListGroupPoliciesInput) (*request.Request, *iam.ListGroupPoliciesOutput) ListGroupPolicies(*iam.ListGroupPoliciesInput) (*iam.ListGroupPoliciesOutput, error) ListGroupPoliciesPages(*iam.ListGroupPoliciesInput, func(*iam.ListGroupPoliciesOutput, bool) bool) error ListGroupsRequest(*iam.ListGroupsInput) (*request.Request, *iam.ListGroupsOutput) ListGroups(*iam.ListGroupsInput) (*iam.ListGroupsOutput, error) ListGroupsPages(*iam.ListGroupsInput, func(*iam.ListGroupsOutput, bool) bool) error ListGroupsForUserRequest(*iam.ListGroupsForUserInput) (*request.Request, *iam.ListGroupsForUserOutput) ListGroupsForUser(*iam.ListGroupsForUserInput) (*iam.ListGroupsForUserOutput, error) ListGroupsForUserPages(*iam.ListGroupsForUserInput, func(*iam.ListGroupsForUserOutput, bool) bool) error ListInstanceProfilesRequest(*iam.ListInstanceProfilesInput) (*request.Request, *iam.ListInstanceProfilesOutput) ListInstanceProfiles(*iam.ListInstanceProfilesInput) (*iam.ListInstanceProfilesOutput, error) ListInstanceProfilesPages(*iam.ListInstanceProfilesInput, func(*iam.ListInstanceProfilesOutput, bool) bool) error ListInstanceProfilesForRoleRequest(*iam.ListInstanceProfilesForRoleInput) (*request.Request, *iam.ListInstanceProfilesForRoleOutput) ListInstanceProfilesForRole(*iam.ListInstanceProfilesForRoleInput) (*iam.ListInstanceProfilesForRoleOutput, error) ListInstanceProfilesForRolePages(*iam.ListInstanceProfilesForRoleInput, func(*iam.ListInstanceProfilesForRoleOutput, bool) bool) error ListMFADevicesRequest(*iam.ListMFADevicesInput) (*request.Request, *iam.ListMFADevicesOutput) ListMFADevices(*iam.ListMFADevicesInput) (*iam.ListMFADevicesOutput, error) ListMFADevicesPages(*iam.ListMFADevicesInput, func(*iam.ListMFADevicesOutput, bool) bool) error ListOpenIDConnectProvidersRequest(*iam.ListOpenIDConnectProvidersInput) (*request.Request, *iam.ListOpenIDConnectProvidersOutput) ListOpenIDConnectProviders(*iam.ListOpenIDConnectProvidersInput) (*iam.ListOpenIDConnectProvidersOutput, error) ListPoliciesRequest(*iam.ListPoliciesInput) (*request.Request, *iam.ListPoliciesOutput) ListPolicies(*iam.ListPoliciesInput) (*iam.ListPoliciesOutput, error) ListPoliciesPages(*iam.ListPoliciesInput, func(*iam.ListPoliciesOutput, bool) bool) error ListPolicyVersionsRequest(*iam.ListPolicyVersionsInput) (*request.Request, *iam.ListPolicyVersionsOutput) ListPolicyVersions(*iam.ListPolicyVersionsInput) (*iam.ListPolicyVersionsOutput, error) ListPolicyVersionsPages(*iam.ListPolicyVersionsInput, func(*iam.ListPolicyVersionsOutput, bool) bool) error ListRolePoliciesRequest(*iam.ListRolePoliciesInput) (*request.Request, *iam.ListRolePoliciesOutput) ListRolePolicies(*iam.ListRolePoliciesInput) (*iam.ListRolePoliciesOutput, error) ListRolePoliciesPages(*iam.ListRolePoliciesInput, func(*iam.ListRolePoliciesOutput, bool) bool) error ListRolesRequest(*iam.ListRolesInput) (*request.Request, *iam.ListRolesOutput) ListRoles(*iam.ListRolesInput) (*iam.ListRolesOutput, error) ListRolesPages(*iam.ListRolesInput, func(*iam.ListRolesOutput, bool) bool) error ListSAMLProvidersRequest(*iam.ListSAMLProvidersInput) (*request.Request, *iam.ListSAMLProvidersOutput) ListSAMLProviders(*iam.ListSAMLProvidersInput) (*iam.ListSAMLProvidersOutput, error) ListSSHPublicKeysRequest(*iam.ListSSHPublicKeysInput) (*request.Request, *iam.ListSSHPublicKeysOutput) ListSSHPublicKeys(*iam.ListSSHPublicKeysInput) (*iam.ListSSHPublicKeysOutput, error) ListSSHPublicKeysPages(*iam.ListSSHPublicKeysInput, func(*iam.ListSSHPublicKeysOutput, bool) bool) error ListServerCertificatesRequest(*iam.ListServerCertificatesInput) (*request.Request, *iam.ListServerCertificatesOutput) ListServerCertificates(*iam.ListServerCertificatesInput) (*iam.ListServerCertificatesOutput, error) ListServerCertificatesPages(*iam.ListServerCertificatesInput, func(*iam.ListServerCertificatesOutput, bool) bool) error ListSigningCertificatesRequest(*iam.ListSigningCertificatesInput) (*request.Request, *iam.ListSigningCertificatesOutput) ListSigningCertificates(*iam.ListSigningCertificatesInput) (*iam.ListSigningCertificatesOutput, error) ListSigningCertificatesPages(*iam.ListSigningCertificatesInput, func(*iam.ListSigningCertificatesOutput, bool) bool) error ListUserPoliciesRequest(*iam.ListUserPoliciesInput) (*request.Request, *iam.ListUserPoliciesOutput) ListUserPolicies(*iam.ListUserPoliciesInput) (*iam.ListUserPoliciesOutput, error) ListUserPoliciesPages(*iam.ListUserPoliciesInput, func(*iam.ListUserPoliciesOutput, bool) bool) error ListUsersRequest(*iam.ListUsersInput) (*request.Request, *iam.ListUsersOutput) ListUsers(*iam.ListUsersInput) (*iam.ListUsersOutput, error) ListUsersPages(*iam.ListUsersInput, func(*iam.ListUsersOutput, bool) bool) error ListVirtualMFADevicesRequest(*iam.ListVirtualMFADevicesInput) (*request.Request, *iam.ListVirtualMFADevicesOutput) ListVirtualMFADevices(*iam.ListVirtualMFADevicesInput) (*iam.ListVirtualMFADevicesOutput, error) ListVirtualMFADevicesPages(*iam.ListVirtualMFADevicesInput, func(*iam.ListVirtualMFADevicesOutput, bool) bool) error PutGroupPolicyRequest(*iam.PutGroupPolicyInput) (*request.Request, *iam.PutGroupPolicyOutput) PutGroupPolicy(*iam.PutGroupPolicyInput) (*iam.PutGroupPolicyOutput, error) PutRolePolicyRequest(*iam.PutRolePolicyInput) (*request.Request, *iam.PutRolePolicyOutput) PutRolePolicy(*iam.PutRolePolicyInput) (*iam.PutRolePolicyOutput, error) PutUserPolicyRequest(*iam.PutUserPolicyInput) (*request.Request, *iam.PutUserPolicyOutput) PutUserPolicy(*iam.PutUserPolicyInput) (*iam.PutUserPolicyOutput, error) RemoveClientIDFromOpenIDConnectProviderRequest(*iam.RemoveClientIDFromOpenIDConnectProviderInput) (*request.Request, *iam.RemoveClientIDFromOpenIDConnectProviderOutput) RemoveClientIDFromOpenIDConnectProvider(*iam.RemoveClientIDFromOpenIDConnectProviderInput) (*iam.RemoveClientIDFromOpenIDConnectProviderOutput, error) RemoveRoleFromInstanceProfileRequest(*iam.RemoveRoleFromInstanceProfileInput) (*request.Request, *iam.RemoveRoleFromInstanceProfileOutput) RemoveRoleFromInstanceProfile(*iam.RemoveRoleFromInstanceProfileInput) (*iam.RemoveRoleFromInstanceProfileOutput, error) RemoveUserFromGroupRequest(*iam.RemoveUserFromGroupInput) (*request.Request, *iam.RemoveUserFromGroupOutput) RemoveUserFromGroup(*iam.RemoveUserFromGroupInput) (*iam.RemoveUserFromGroupOutput, error) ResyncMFADeviceRequest(*iam.ResyncMFADeviceInput) (*request.Request, *iam.ResyncMFADeviceOutput) ResyncMFADevice(*iam.ResyncMFADeviceInput) (*iam.ResyncMFADeviceOutput, error) SetDefaultPolicyVersionRequest(*iam.SetDefaultPolicyVersionInput) (*request.Request, *iam.SetDefaultPolicyVersionOutput) SetDefaultPolicyVersion(*iam.SetDefaultPolicyVersionInput) (*iam.SetDefaultPolicyVersionOutput, error) SimulateCustomPolicyRequest(*iam.SimulateCustomPolicyInput) (*request.Request, *iam.SimulatePolicyResponse) SimulateCustomPolicy(*iam.SimulateCustomPolicyInput) (*iam.SimulatePolicyResponse, error) SimulateCustomPolicyPages(*iam.SimulateCustomPolicyInput, func(*iam.SimulatePolicyResponse, bool) bool) error SimulatePrincipalPolicyRequest(*iam.SimulatePrincipalPolicyInput) (*request.Request, *iam.SimulatePolicyResponse) SimulatePrincipalPolicy(*iam.SimulatePrincipalPolicyInput) (*iam.SimulatePolicyResponse, error) SimulatePrincipalPolicyPages(*iam.SimulatePrincipalPolicyInput, func(*iam.SimulatePolicyResponse, bool) bool) error UpdateAccessKeyRequest(*iam.UpdateAccessKeyInput) (*request.Request, *iam.UpdateAccessKeyOutput) UpdateAccessKey(*iam.UpdateAccessKeyInput) (*iam.UpdateAccessKeyOutput, error) UpdateAccountPasswordPolicyRequest(*iam.UpdateAccountPasswordPolicyInput) (*request.Request, *iam.UpdateAccountPasswordPolicyOutput) UpdateAccountPasswordPolicy(*iam.UpdateAccountPasswordPolicyInput) (*iam.UpdateAccountPasswordPolicyOutput, error) UpdateAssumeRolePolicyRequest(*iam.UpdateAssumeRolePolicyInput) (*request.Request, *iam.UpdateAssumeRolePolicyOutput) UpdateAssumeRolePolicy(*iam.UpdateAssumeRolePolicyInput) (*iam.UpdateAssumeRolePolicyOutput, error) UpdateGroupRequest(*iam.UpdateGroupInput) (*request.Request, *iam.UpdateGroupOutput) UpdateGroup(*iam.UpdateGroupInput) (*iam.UpdateGroupOutput, error) UpdateLoginProfileRequest(*iam.UpdateLoginProfileInput) (*request.Request, *iam.UpdateLoginProfileOutput) UpdateLoginProfile(*iam.UpdateLoginProfileInput) (*iam.UpdateLoginProfileOutput, error) UpdateOpenIDConnectProviderThumbprintRequest(*iam.UpdateOpenIDConnectProviderThumbprintInput) (*request.Request, *iam.UpdateOpenIDConnectProviderThumbprintOutput) UpdateOpenIDConnectProviderThumbprint(*iam.UpdateOpenIDConnectProviderThumbprintInput) (*iam.UpdateOpenIDConnectProviderThumbprintOutput, error) UpdateSAMLProviderRequest(*iam.UpdateSAMLProviderInput) (*request.Request, *iam.UpdateSAMLProviderOutput) UpdateSAMLProvider(*iam.UpdateSAMLProviderInput) (*iam.UpdateSAMLProviderOutput, error) UpdateSSHPublicKeyRequest(*iam.UpdateSSHPublicKeyInput) (*request.Request, *iam.UpdateSSHPublicKeyOutput) UpdateSSHPublicKey(*iam.UpdateSSHPublicKeyInput) (*iam.UpdateSSHPublicKeyOutput, error) UpdateServerCertificateRequest(*iam.UpdateServerCertificateInput) (*request.Request, *iam.UpdateServerCertificateOutput) UpdateServerCertificate(*iam.UpdateServerCertificateInput) (*iam.UpdateServerCertificateOutput, error) UpdateSigningCertificateRequest(*iam.UpdateSigningCertificateInput) (*request.Request, *iam.UpdateSigningCertificateOutput) UpdateSigningCertificate(*iam.UpdateSigningCertificateInput) (*iam.UpdateSigningCertificateOutput, error) UpdateUserRequest(*iam.UpdateUserInput) (*request.Request, *iam.UpdateUserOutput) UpdateUser(*iam.UpdateUserInput) (*iam.UpdateUserOutput, error) UploadSSHPublicKeyRequest(*iam.UploadSSHPublicKeyInput) (*request.Request, *iam.UploadSSHPublicKeyOutput) UploadSSHPublicKey(*iam.UploadSSHPublicKeyInput) (*iam.UploadSSHPublicKeyOutput, error) UploadServerCertificateRequest(*iam.UploadServerCertificateInput) (*request.Request, *iam.UploadServerCertificateOutput) UploadServerCertificate(*iam.UploadServerCertificateInput) (*iam.UploadServerCertificateOutput, error) UploadSigningCertificateRequest(*iam.UploadSigningCertificateInput) (*request.Request, *iam.UploadSigningCertificateOutput) UploadSigningCertificate(*iam.UploadSigningCertificateInput) (*iam.UploadSigningCertificateOutput, error) WaitUntilInstanceProfileExists(*iam.GetInstanceProfileInput) error WaitUntilUserExists(*iam.GetUserInput) error } var _ IAMAPI = (*iam.IAM)(nil) aws-sdk-go-1.4.22/service/iam/service.go000066400000000000000000000132751300374646400177700ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package iam import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/query" ) // AWS Identity and Access Management (IAM) is a web service that you can use // to manage users and user permissions under your AWS account. This guide provides // descriptions of IAM actions that you can call programmatically. For general // information about IAM, see AWS Identity and Access Management (IAM) (http://aws.amazon.com/iam/). // For the user guide for IAM, see Using IAM (http://docs.aws.amazon.com/IAM/latest/UserGuide/). // // AWS provides SDKs that consist of libraries and sample code for various programming // languages and platforms (Java, Ruby, .NET, iOS, Android, etc.). The SDKs // provide a convenient way to create programmatic access to IAM and AWS. For // example, the SDKs take care of tasks such as cryptographically signing requests // (see below), managing errors, and retrying requests automatically. For information // about the AWS SDKs, including how to download and install them, see the Tools // for Amazon Web Services (http://aws.amazon.com/tools/) page. // // We recommend that you use the AWS SDKs to make programmatic API calls to // IAM. However, you can also use the IAM Query API to make direct calls to // the IAM web service. To learn more about the IAM Query API, see Making Query // Requests (http://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html) // in the Using IAM guide. IAM supports GET and POST requests for all actions. // That is, the API does not require you to use GET for some actions and POST // for others. However, GET requests are subject to the limitation size of a // URL. Therefore, for operations that require larger sizes, use a POST request. // // Signing Requests // // Requests must be signed using an access key ID and a secret access key. We // strongly recommend that you do not use your AWS account access key ID and // secret access key for everyday work with IAM. You can use the access key // ID and secret access key for an IAM user or you can use the AWS Security // Token Service to generate temporary security credentials and use those to // sign requests. // // To sign requests, we recommend that you use Signature Version 4 (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). // If you have an existing application that uses Signature Version 2, you do // not have to update it to use Signature Version 4. However, some operations // now require Signature Version 4. The documentation for operations that require // version 4 indicate this requirement. // // Additional Resources // // For more information, see the following: // // * AWS Security Credentials (http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html). // This topic provides general information about the types of credentials // used for accessing AWS. // // * IAM Best Practices (http://docs.aws.amazon.com/IAM/latest/UserGuide/IAMBestPractices.html). // This topic presents a list of suggestions for using the IAM service to // help secure your AWS resources. // // * Signing AWS API Requests (http://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html). // This set of topics walk you through the process of signing a request using // an access key ID and secret access key. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type IAM struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "iam" // New creates a new instance of the IAM client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a IAM client from just a session. // svc := iam.New(mySession) // // // Create a IAM client with additional configuration // svc := iam.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *IAM { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *IAM { svc := &IAM{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2010-05-08", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a IAM operation and runs any // custom request initialization. func (c *IAM) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/iam/waiters.go000066400000000000000000000030441300374646400177770ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package iam import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilInstanceProfileExists uses the IAM API operation // GetInstanceProfile to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *IAM) WaitUntilInstanceProfileExists(input *GetInstanceProfileInput) error { waiterCfg := waiter.Config{ Operation: "GetInstanceProfile", Delay: 1, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "status", Argument: "", Expected: 200, }, { State: "retry", Matcher: "status", Argument: "", Expected: 404, }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilUserExists uses the IAM API operation // GetUser to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *IAM) WaitUntilUserExists(input *GetUserInput) error { waiterCfg := waiter.Config{ Operation: "GetUser", Delay: 1, MaxAttempts: 20, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "status", Argument: "", Expected: 200, }, { State: "retry", Matcher: "error", Argument: "", Expected: "NoSuchEntity", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/inspector/000077500000000000000000000000001300374646400172315ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/inspector/api.go000066400000000000000000006406231300374646400203440ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package inspector provides a client for Amazon Inspector. package inspector import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opAddAttributesToFindings = "AddAttributesToFindings" // AddAttributesToFindingsRequest generates a "aws/request.Request" representing the // client's request for the AddAttributesToFindings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddAttributesToFindings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddAttributesToFindings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddAttributesToFindingsRequest method. // req, resp := client.AddAttributesToFindingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) AddAttributesToFindingsRequest(input *AddAttributesToFindingsInput) (req *request.Request, output *AddAttributesToFindingsOutput) { op := &request.Operation{ Name: opAddAttributesToFindings, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddAttributesToFindingsInput{} } req = c.newRequest(op, input, output) output = &AddAttributesToFindingsOutput{} req.Data = output return } // AddAttributesToFindings API operation for Amazon Inspector. // // Assigns attributes (key and value pairs) to the findings that are specified // by the ARNs of the findings. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation AddAttributesToFindings for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) AddAttributesToFindings(input *AddAttributesToFindingsInput) (*AddAttributesToFindingsOutput, error) { req, out := c.AddAttributesToFindingsRequest(input) err := req.Send() return out, err } const opCreateAssessmentTarget = "CreateAssessmentTarget" // CreateAssessmentTargetRequest generates a "aws/request.Request" representing the // client's request for the CreateAssessmentTarget operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateAssessmentTarget for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateAssessmentTarget method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateAssessmentTargetRequest method. // req, resp := client.CreateAssessmentTargetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) CreateAssessmentTargetRequest(input *CreateAssessmentTargetInput) (req *request.Request, output *CreateAssessmentTargetOutput) { op := &request.Operation{ Name: opCreateAssessmentTarget, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateAssessmentTargetInput{} } req = c.newRequest(op, input, output) output = &CreateAssessmentTargetOutput{} req.Data = output return } // CreateAssessmentTarget API operation for Amazon Inspector. // // Creates a new assessment target using the ARN of the resource group that // is generated by CreateResourceGroup. You can create up to 50 assessment targets // per AWS account. You can run up to 500 concurrent agents per AWS account. // For more information, see Amazon Inspector Assessment Targets (http://docs.aws.amazon.com/inspector/latest/userguide/inspector_applications.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation CreateAssessmentTarget for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * LimitExceededException // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error code describes the limit exceeded. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) CreateAssessmentTarget(input *CreateAssessmentTargetInput) (*CreateAssessmentTargetOutput, error) { req, out := c.CreateAssessmentTargetRequest(input) err := req.Send() return out, err } const opCreateAssessmentTemplate = "CreateAssessmentTemplate" // CreateAssessmentTemplateRequest generates a "aws/request.Request" representing the // client's request for the CreateAssessmentTemplate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateAssessmentTemplate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateAssessmentTemplate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateAssessmentTemplateRequest method. // req, resp := client.CreateAssessmentTemplateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) CreateAssessmentTemplateRequest(input *CreateAssessmentTemplateInput) (req *request.Request, output *CreateAssessmentTemplateOutput) { op := &request.Operation{ Name: opCreateAssessmentTemplate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateAssessmentTemplateInput{} } req = c.newRequest(op, input, output) output = &CreateAssessmentTemplateOutput{} req.Data = output return } // CreateAssessmentTemplate API operation for Amazon Inspector. // // Creates an assessment template for the assessment target that is specified // by the ARN of the assessment target. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation CreateAssessmentTemplate for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * LimitExceededException // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error code describes the limit exceeded. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) CreateAssessmentTemplate(input *CreateAssessmentTemplateInput) (*CreateAssessmentTemplateOutput, error) { req, out := c.CreateAssessmentTemplateRequest(input) err := req.Send() return out, err } const opCreateResourceGroup = "CreateResourceGroup" // CreateResourceGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateResourceGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateResourceGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateResourceGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateResourceGroupRequest method. // req, resp := client.CreateResourceGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) CreateResourceGroupRequest(input *CreateResourceGroupInput) (req *request.Request, output *CreateResourceGroupOutput) { op := &request.Operation{ Name: opCreateResourceGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateResourceGroupInput{} } req = c.newRequest(op, input, output) output = &CreateResourceGroupOutput{} req.Data = output return } // CreateResourceGroup API operation for Amazon Inspector. // // Creates a resource group using the specified set of tags (key and value pairs) // that are used to select the EC2 instances to be included in an Amazon Inspector // assessment target. The created resource group is then used to create an Amazon // Inspector assessment target. For more information, see CreateAssessmentTarget. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation CreateResourceGroup for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * LimitExceededException // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error code describes the limit exceeded. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // func (c *Inspector) CreateResourceGroup(input *CreateResourceGroupInput) (*CreateResourceGroupOutput, error) { req, out := c.CreateResourceGroupRequest(input) err := req.Send() return out, err } const opDeleteAssessmentRun = "DeleteAssessmentRun" // DeleteAssessmentRunRequest generates a "aws/request.Request" representing the // client's request for the DeleteAssessmentRun operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteAssessmentRun for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteAssessmentRun method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteAssessmentRunRequest method. // req, resp := client.DeleteAssessmentRunRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) DeleteAssessmentRunRequest(input *DeleteAssessmentRunInput) (req *request.Request, output *DeleteAssessmentRunOutput) { op := &request.Operation{ Name: opDeleteAssessmentRun, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteAssessmentRunInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteAssessmentRunOutput{} req.Data = output return } // DeleteAssessmentRun API operation for Amazon Inspector. // // Deletes the assessment run that is specified by the ARN of the assessment // run. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation DeleteAssessmentRun for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AssessmentRunInProgressException // You cannot perform a specified action if an assessment run is currently in // progress. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) DeleteAssessmentRun(input *DeleteAssessmentRunInput) (*DeleteAssessmentRunOutput, error) { req, out := c.DeleteAssessmentRunRequest(input) err := req.Send() return out, err } const opDeleteAssessmentTarget = "DeleteAssessmentTarget" // DeleteAssessmentTargetRequest generates a "aws/request.Request" representing the // client's request for the DeleteAssessmentTarget operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteAssessmentTarget for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteAssessmentTarget method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteAssessmentTargetRequest method. // req, resp := client.DeleteAssessmentTargetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) DeleteAssessmentTargetRequest(input *DeleteAssessmentTargetInput) (req *request.Request, output *DeleteAssessmentTargetOutput) { op := &request.Operation{ Name: opDeleteAssessmentTarget, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteAssessmentTargetInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteAssessmentTargetOutput{} req.Data = output return } // DeleteAssessmentTarget API operation for Amazon Inspector. // // Deletes the assessment target that is specified by the ARN of the assessment // target. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation DeleteAssessmentTarget for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AssessmentRunInProgressException // You cannot perform a specified action if an assessment run is currently in // progress. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) DeleteAssessmentTarget(input *DeleteAssessmentTargetInput) (*DeleteAssessmentTargetOutput, error) { req, out := c.DeleteAssessmentTargetRequest(input) err := req.Send() return out, err } const opDeleteAssessmentTemplate = "DeleteAssessmentTemplate" // DeleteAssessmentTemplateRequest generates a "aws/request.Request" representing the // client's request for the DeleteAssessmentTemplate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteAssessmentTemplate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteAssessmentTemplate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteAssessmentTemplateRequest method. // req, resp := client.DeleteAssessmentTemplateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) DeleteAssessmentTemplateRequest(input *DeleteAssessmentTemplateInput) (req *request.Request, output *DeleteAssessmentTemplateOutput) { op := &request.Operation{ Name: opDeleteAssessmentTemplate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteAssessmentTemplateInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteAssessmentTemplateOutput{} req.Data = output return } // DeleteAssessmentTemplate API operation for Amazon Inspector. // // Deletes the assessment template that is specified by the ARN of the assessment // template. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation DeleteAssessmentTemplate for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AssessmentRunInProgressException // You cannot perform a specified action if an assessment run is currently in // progress. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) DeleteAssessmentTemplate(input *DeleteAssessmentTemplateInput) (*DeleteAssessmentTemplateOutput, error) { req, out := c.DeleteAssessmentTemplateRequest(input) err := req.Send() return out, err } const opDescribeAssessmentRuns = "DescribeAssessmentRuns" // DescribeAssessmentRunsRequest generates a "aws/request.Request" representing the // client's request for the DescribeAssessmentRuns operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAssessmentRuns for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAssessmentRuns method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAssessmentRunsRequest method. // req, resp := client.DescribeAssessmentRunsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) DescribeAssessmentRunsRequest(input *DescribeAssessmentRunsInput) (req *request.Request, output *DescribeAssessmentRunsOutput) { op := &request.Operation{ Name: opDescribeAssessmentRuns, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAssessmentRunsInput{} } req = c.newRequest(op, input, output) output = &DescribeAssessmentRunsOutput{} req.Data = output return } // DescribeAssessmentRuns API operation for Amazon Inspector. // // Describes the assessment runs that are specified by the ARNs of the assessment // runs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation DescribeAssessmentRuns for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // func (c *Inspector) DescribeAssessmentRuns(input *DescribeAssessmentRunsInput) (*DescribeAssessmentRunsOutput, error) { req, out := c.DescribeAssessmentRunsRequest(input) err := req.Send() return out, err } const opDescribeAssessmentTargets = "DescribeAssessmentTargets" // DescribeAssessmentTargetsRequest generates a "aws/request.Request" representing the // client's request for the DescribeAssessmentTargets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAssessmentTargets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAssessmentTargets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAssessmentTargetsRequest method. // req, resp := client.DescribeAssessmentTargetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) DescribeAssessmentTargetsRequest(input *DescribeAssessmentTargetsInput) (req *request.Request, output *DescribeAssessmentTargetsOutput) { op := &request.Operation{ Name: opDescribeAssessmentTargets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAssessmentTargetsInput{} } req = c.newRequest(op, input, output) output = &DescribeAssessmentTargetsOutput{} req.Data = output return } // DescribeAssessmentTargets API operation for Amazon Inspector. // // Describes the assessment targets that are specified by the ARNs of the assessment // targets. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation DescribeAssessmentTargets for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // func (c *Inspector) DescribeAssessmentTargets(input *DescribeAssessmentTargetsInput) (*DescribeAssessmentTargetsOutput, error) { req, out := c.DescribeAssessmentTargetsRequest(input) err := req.Send() return out, err } const opDescribeAssessmentTemplates = "DescribeAssessmentTemplates" // DescribeAssessmentTemplatesRequest generates a "aws/request.Request" representing the // client's request for the DescribeAssessmentTemplates operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAssessmentTemplates for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAssessmentTemplates method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAssessmentTemplatesRequest method. // req, resp := client.DescribeAssessmentTemplatesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) DescribeAssessmentTemplatesRequest(input *DescribeAssessmentTemplatesInput) (req *request.Request, output *DescribeAssessmentTemplatesOutput) { op := &request.Operation{ Name: opDescribeAssessmentTemplates, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAssessmentTemplatesInput{} } req = c.newRequest(op, input, output) output = &DescribeAssessmentTemplatesOutput{} req.Data = output return } // DescribeAssessmentTemplates API operation for Amazon Inspector. // // Describes the assessment templates that are specified by the ARNs of the // assessment templates. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation DescribeAssessmentTemplates for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // func (c *Inspector) DescribeAssessmentTemplates(input *DescribeAssessmentTemplatesInput) (*DescribeAssessmentTemplatesOutput, error) { req, out := c.DescribeAssessmentTemplatesRequest(input) err := req.Send() return out, err } const opDescribeCrossAccountAccessRole = "DescribeCrossAccountAccessRole" // DescribeCrossAccountAccessRoleRequest generates a "aws/request.Request" representing the // client's request for the DescribeCrossAccountAccessRole operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCrossAccountAccessRole for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCrossAccountAccessRole method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeCrossAccountAccessRoleRequest method. // req, resp := client.DescribeCrossAccountAccessRoleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) DescribeCrossAccountAccessRoleRequest(input *DescribeCrossAccountAccessRoleInput) (req *request.Request, output *DescribeCrossAccountAccessRoleOutput) { op := &request.Operation{ Name: opDescribeCrossAccountAccessRole, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeCrossAccountAccessRoleInput{} } req = c.newRequest(op, input, output) output = &DescribeCrossAccountAccessRoleOutput{} req.Data = output return } // DescribeCrossAccountAccessRole API operation for Amazon Inspector. // // Describes the IAM role that enables Amazon Inspector to access your AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation DescribeCrossAccountAccessRole for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // func (c *Inspector) DescribeCrossAccountAccessRole(input *DescribeCrossAccountAccessRoleInput) (*DescribeCrossAccountAccessRoleOutput, error) { req, out := c.DescribeCrossAccountAccessRoleRequest(input) err := req.Send() return out, err } const opDescribeFindings = "DescribeFindings" // DescribeFindingsRequest generates a "aws/request.Request" representing the // client's request for the DescribeFindings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeFindings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeFindings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeFindingsRequest method. // req, resp := client.DescribeFindingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) DescribeFindingsRequest(input *DescribeFindingsInput) (req *request.Request, output *DescribeFindingsOutput) { op := &request.Operation{ Name: opDescribeFindings, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeFindingsInput{} } req = c.newRequest(op, input, output) output = &DescribeFindingsOutput{} req.Data = output return } // DescribeFindings API operation for Amazon Inspector. // // Describes the findings that are specified by the ARNs of the findings. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation DescribeFindings for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // func (c *Inspector) DescribeFindings(input *DescribeFindingsInput) (*DescribeFindingsOutput, error) { req, out := c.DescribeFindingsRequest(input) err := req.Send() return out, err } const opDescribeResourceGroups = "DescribeResourceGroups" // DescribeResourceGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeResourceGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeResourceGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeResourceGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeResourceGroupsRequest method. // req, resp := client.DescribeResourceGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) DescribeResourceGroupsRequest(input *DescribeResourceGroupsInput) (req *request.Request, output *DescribeResourceGroupsOutput) { op := &request.Operation{ Name: opDescribeResourceGroups, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeResourceGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeResourceGroupsOutput{} req.Data = output return } // DescribeResourceGroups API operation for Amazon Inspector. // // Describes the resource groups that are specified by the ARNs of the resource // groups. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation DescribeResourceGroups for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // func (c *Inspector) DescribeResourceGroups(input *DescribeResourceGroupsInput) (*DescribeResourceGroupsOutput, error) { req, out := c.DescribeResourceGroupsRequest(input) err := req.Send() return out, err } const opDescribeRulesPackages = "DescribeRulesPackages" // DescribeRulesPackagesRequest generates a "aws/request.Request" representing the // client's request for the DescribeRulesPackages operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeRulesPackages for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeRulesPackages method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeRulesPackagesRequest method. // req, resp := client.DescribeRulesPackagesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) DescribeRulesPackagesRequest(input *DescribeRulesPackagesInput) (req *request.Request, output *DescribeRulesPackagesOutput) { op := &request.Operation{ Name: opDescribeRulesPackages, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeRulesPackagesInput{} } req = c.newRequest(op, input, output) output = &DescribeRulesPackagesOutput{} req.Data = output return } // DescribeRulesPackages API operation for Amazon Inspector. // // Describes the rules packages that are specified by the ARNs of the rules // packages. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation DescribeRulesPackages for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // func (c *Inspector) DescribeRulesPackages(input *DescribeRulesPackagesInput) (*DescribeRulesPackagesOutput, error) { req, out := c.DescribeRulesPackagesRequest(input) err := req.Send() return out, err } const opGetTelemetryMetadata = "GetTelemetryMetadata" // GetTelemetryMetadataRequest generates a "aws/request.Request" representing the // client's request for the GetTelemetryMetadata operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetTelemetryMetadata for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetTelemetryMetadata method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetTelemetryMetadataRequest method. // req, resp := client.GetTelemetryMetadataRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) GetTelemetryMetadataRequest(input *GetTelemetryMetadataInput) (req *request.Request, output *GetTelemetryMetadataOutput) { op := &request.Operation{ Name: opGetTelemetryMetadata, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetTelemetryMetadataInput{} } req = c.newRequest(op, input, output) output = &GetTelemetryMetadataOutput{} req.Data = output return } // GetTelemetryMetadata API operation for Amazon Inspector. // // Information about the data that is collected for the specified assessment // run. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation GetTelemetryMetadata for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) GetTelemetryMetadata(input *GetTelemetryMetadataInput) (*GetTelemetryMetadataOutput, error) { req, out := c.GetTelemetryMetadataRequest(input) err := req.Send() return out, err } const opListAssessmentRunAgents = "ListAssessmentRunAgents" // ListAssessmentRunAgentsRequest generates a "aws/request.Request" representing the // client's request for the ListAssessmentRunAgents operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListAssessmentRunAgents for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListAssessmentRunAgents method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListAssessmentRunAgentsRequest method. // req, resp := client.ListAssessmentRunAgentsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) ListAssessmentRunAgentsRequest(input *ListAssessmentRunAgentsInput) (req *request.Request, output *ListAssessmentRunAgentsOutput) { op := &request.Operation{ Name: opListAssessmentRunAgents, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListAssessmentRunAgentsInput{} } req = c.newRequest(op, input, output) output = &ListAssessmentRunAgentsOutput{} req.Data = output return } // ListAssessmentRunAgents API operation for Amazon Inspector. // // Lists the agents of the assessment runs that are specified by the ARNs of // the assessment runs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation ListAssessmentRunAgents for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) ListAssessmentRunAgents(input *ListAssessmentRunAgentsInput) (*ListAssessmentRunAgentsOutput, error) { req, out := c.ListAssessmentRunAgentsRequest(input) err := req.Send() return out, err } const opListAssessmentRuns = "ListAssessmentRuns" // ListAssessmentRunsRequest generates a "aws/request.Request" representing the // client's request for the ListAssessmentRuns operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListAssessmentRuns for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListAssessmentRuns method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListAssessmentRunsRequest method. // req, resp := client.ListAssessmentRunsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) ListAssessmentRunsRequest(input *ListAssessmentRunsInput) (req *request.Request, output *ListAssessmentRunsOutput) { op := &request.Operation{ Name: opListAssessmentRuns, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListAssessmentRunsInput{} } req = c.newRequest(op, input, output) output = &ListAssessmentRunsOutput{} req.Data = output return } // ListAssessmentRuns API operation for Amazon Inspector. // // Lists the assessment runs that correspond to the assessment templates that // are specified by the ARNs of the assessment templates. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation ListAssessmentRuns for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) ListAssessmentRuns(input *ListAssessmentRunsInput) (*ListAssessmentRunsOutput, error) { req, out := c.ListAssessmentRunsRequest(input) err := req.Send() return out, err } const opListAssessmentTargets = "ListAssessmentTargets" // ListAssessmentTargetsRequest generates a "aws/request.Request" representing the // client's request for the ListAssessmentTargets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListAssessmentTargets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListAssessmentTargets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListAssessmentTargetsRequest method. // req, resp := client.ListAssessmentTargetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) ListAssessmentTargetsRequest(input *ListAssessmentTargetsInput) (req *request.Request, output *ListAssessmentTargetsOutput) { op := &request.Operation{ Name: opListAssessmentTargets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListAssessmentTargetsInput{} } req = c.newRequest(op, input, output) output = &ListAssessmentTargetsOutput{} req.Data = output return } // ListAssessmentTargets API operation for Amazon Inspector. // // Lists the ARNs of the assessment targets within this AWS account. For more // information about assessment targets, see Amazon Inspector Assessment Targets // (http://docs.aws.amazon.com/inspector/latest/userguide/inspector_applications.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation ListAssessmentTargets for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // func (c *Inspector) ListAssessmentTargets(input *ListAssessmentTargetsInput) (*ListAssessmentTargetsOutput, error) { req, out := c.ListAssessmentTargetsRequest(input) err := req.Send() return out, err } const opListAssessmentTemplates = "ListAssessmentTemplates" // ListAssessmentTemplatesRequest generates a "aws/request.Request" representing the // client's request for the ListAssessmentTemplates operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListAssessmentTemplates for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListAssessmentTemplates method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListAssessmentTemplatesRequest method. // req, resp := client.ListAssessmentTemplatesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) ListAssessmentTemplatesRequest(input *ListAssessmentTemplatesInput) (req *request.Request, output *ListAssessmentTemplatesOutput) { op := &request.Operation{ Name: opListAssessmentTemplates, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListAssessmentTemplatesInput{} } req = c.newRequest(op, input, output) output = &ListAssessmentTemplatesOutput{} req.Data = output return } // ListAssessmentTemplates API operation for Amazon Inspector. // // Lists the assessment templates that correspond to the assessment targets // that are specified by the ARNs of the assessment targets. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation ListAssessmentTemplates for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) ListAssessmentTemplates(input *ListAssessmentTemplatesInput) (*ListAssessmentTemplatesOutput, error) { req, out := c.ListAssessmentTemplatesRequest(input) err := req.Send() return out, err } const opListEventSubscriptions = "ListEventSubscriptions" // ListEventSubscriptionsRequest generates a "aws/request.Request" representing the // client's request for the ListEventSubscriptions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListEventSubscriptions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListEventSubscriptions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListEventSubscriptionsRequest method. // req, resp := client.ListEventSubscriptionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) ListEventSubscriptionsRequest(input *ListEventSubscriptionsInput) (req *request.Request, output *ListEventSubscriptionsOutput) { op := &request.Operation{ Name: opListEventSubscriptions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListEventSubscriptionsInput{} } req = c.newRequest(op, input, output) output = &ListEventSubscriptionsOutput{} req.Data = output return } // ListEventSubscriptions API operation for Amazon Inspector. // // Lists all the event subscriptions for the assessment template that is specified // by the ARN of the assessment template. For more information, see SubscribeToEvent // and UnsubscribeFromEvent. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation ListEventSubscriptions for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) ListEventSubscriptions(input *ListEventSubscriptionsInput) (*ListEventSubscriptionsOutput, error) { req, out := c.ListEventSubscriptionsRequest(input) err := req.Send() return out, err } const opListFindings = "ListFindings" // ListFindingsRequest generates a "aws/request.Request" representing the // client's request for the ListFindings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListFindings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListFindings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListFindingsRequest method. // req, resp := client.ListFindingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) ListFindingsRequest(input *ListFindingsInput) (req *request.Request, output *ListFindingsOutput) { op := &request.Operation{ Name: opListFindings, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListFindingsInput{} } req = c.newRequest(op, input, output) output = &ListFindingsOutput{} req.Data = output return } // ListFindings API operation for Amazon Inspector. // // Lists findings that are generated by the assessment runs that are specified // by the ARNs of the assessment runs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation ListFindings for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) ListFindings(input *ListFindingsInput) (*ListFindingsOutput, error) { req, out := c.ListFindingsRequest(input) err := req.Send() return out, err } const opListRulesPackages = "ListRulesPackages" // ListRulesPackagesRequest generates a "aws/request.Request" representing the // client's request for the ListRulesPackages operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListRulesPackages for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListRulesPackages method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListRulesPackagesRequest method. // req, resp := client.ListRulesPackagesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) ListRulesPackagesRequest(input *ListRulesPackagesInput) (req *request.Request, output *ListRulesPackagesOutput) { op := &request.Operation{ Name: opListRulesPackages, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListRulesPackagesInput{} } req = c.newRequest(op, input, output) output = &ListRulesPackagesOutput{} req.Data = output return } // ListRulesPackages API operation for Amazon Inspector. // // Lists all available Amazon Inspector rules packages. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation ListRulesPackages for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // func (c *Inspector) ListRulesPackages(input *ListRulesPackagesInput) (*ListRulesPackagesOutput, error) { req, out := c.ListRulesPackagesRequest(input) err := req.Send() return out, err } const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTagsForResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTagsForResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTagsForResourceRequest method. // req, resp := client.ListTagsForResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { op := &request.Operation{ Name: opListTagsForResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListTagsForResourceInput{} } req = c.newRequest(op, input, output) output = &ListTagsForResourceOutput{} req.Data = output return } // ListTagsForResource API operation for Amazon Inspector. // // Lists all tags associated with an assessment template. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation ListTagsForResource for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { req, out := c.ListTagsForResourceRequest(input) err := req.Send() return out, err } const opPreviewAgents = "PreviewAgents" // PreviewAgentsRequest generates a "aws/request.Request" representing the // client's request for the PreviewAgents operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PreviewAgents for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PreviewAgents method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PreviewAgentsRequest method. // req, resp := client.PreviewAgentsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) PreviewAgentsRequest(input *PreviewAgentsInput) (req *request.Request, output *PreviewAgentsOutput) { op := &request.Operation{ Name: opPreviewAgents, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PreviewAgentsInput{} } req = c.newRequest(op, input, output) output = &PreviewAgentsOutput{} req.Data = output return } // PreviewAgents API operation for Amazon Inspector. // // Previews the agents installed on the EC2 instances that are part of the specified // assessment target. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation PreviewAgents for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // // * InvalidCrossAccountRoleException // Amazon Inspector cannot assume the cross-account role that it needs to list // your EC2 instances during the assessment run. // func (c *Inspector) PreviewAgents(input *PreviewAgentsInput) (*PreviewAgentsOutput, error) { req, out := c.PreviewAgentsRequest(input) err := req.Send() return out, err } const opRegisterCrossAccountAccessRole = "RegisterCrossAccountAccessRole" // RegisterCrossAccountAccessRoleRequest generates a "aws/request.Request" representing the // client's request for the RegisterCrossAccountAccessRole operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterCrossAccountAccessRole for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterCrossAccountAccessRole method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterCrossAccountAccessRoleRequest method. // req, resp := client.RegisterCrossAccountAccessRoleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) RegisterCrossAccountAccessRoleRequest(input *RegisterCrossAccountAccessRoleInput) (req *request.Request, output *RegisterCrossAccountAccessRoleOutput) { op := &request.Operation{ Name: opRegisterCrossAccountAccessRole, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterCrossAccountAccessRoleInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RegisterCrossAccountAccessRoleOutput{} req.Data = output return } // RegisterCrossAccountAccessRole API operation for Amazon Inspector. // // Registers the IAM role that Amazon Inspector uses to list your EC2 instances // at the start of the assessment run or when you call the PreviewAgents action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation RegisterCrossAccountAccessRole for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * InvalidCrossAccountRoleException // Amazon Inspector cannot assume the cross-account role that it needs to list // your EC2 instances during the assessment run. // func (c *Inspector) RegisterCrossAccountAccessRole(input *RegisterCrossAccountAccessRoleInput) (*RegisterCrossAccountAccessRoleOutput, error) { req, out := c.RegisterCrossAccountAccessRoleRequest(input) err := req.Send() return out, err } const opRemoveAttributesFromFindings = "RemoveAttributesFromFindings" // RemoveAttributesFromFindingsRequest generates a "aws/request.Request" representing the // client's request for the RemoveAttributesFromFindings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveAttributesFromFindings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveAttributesFromFindings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveAttributesFromFindingsRequest method. // req, resp := client.RemoveAttributesFromFindingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) RemoveAttributesFromFindingsRequest(input *RemoveAttributesFromFindingsInput) (req *request.Request, output *RemoveAttributesFromFindingsOutput) { op := &request.Operation{ Name: opRemoveAttributesFromFindings, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveAttributesFromFindingsInput{} } req = c.newRequest(op, input, output) output = &RemoveAttributesFromFindingsOutput{} req.Data = output return } // RemoveAttributesFromFindings API operation for Amazon Inspector. // // Removes entire attributes (key and value pairs) from the findings that are // specified by the ARNs of the findings where an attribute with the specified // key exists. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation RemoveAttributesFromFindings for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) RemoveAttributesFromFindings(input *RemoveAttributesFromFindingsInput) (*RemoveAttributesFromFindingsOutput, error) { req, out := c.RemoveAttributesFromFindingsRequest(input) err := req.Send() return out, err } const opSetTagsForResource = "SetTagsForResource" // SetTagsForResourceRequest generates a "aws/request.Request" representing the // client's request for the SetTagsForResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetTagsForResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetTagsForResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetTagsForResourceRequest method. // req, resp := client.SetTagsForResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) SetTagsForResourceRequest(input *SetTagsForResourceInput) (req *request.Request, output *SetTagsForResourceOutput) { op := &request.Operation{ Name: opSetTagsForResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetTagsForResourceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetTagsForResourceOutput{} req.Data = output return } // SetTagsForResource API operation for Amazon Inspector. // // Sets tags (key and value pairs) to the assessment template that is specified // by the ARN of the assessment template. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation SetTagsForResource for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) SetTagsForResource(input *SetTagsForResourceInput) (*SetTagsForResourceOutput, error) { req, out := c.SetTagsForResourceRequest(input) err := req.Send() return out, err } const opStartAssessmentRun = "StartAssessmentRun" // StartAssessmentRunRequest generates a "aws/request.Request" representing the // client's request for the StartAssessmentRun operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StartAssessmentRun for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StartAssessmentRun method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StartAssessmentRunRequest method. // req, resp := client.StartAssessmentRunRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) StartAssessmentRunRequest(input *StartAssessmentRunInput) (req *request.Request, output *StartAssessmentRunOutput) { op := &request.Operation{ Name: opStartAssessmentRun, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartAssessmentRunInput{} } req = c.newRequest(op, input, output) output = &StartAssessmentRunOutput{} req.Data = output return } // StartAssessmentRun API operation for Amazon Inspector. // // Starts the assessment run specified by the ARN of the assessment template. // For this API to function properly, you must not exceed the limit of running // up to 500 concurrent agents per AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation StartAssessmentRun for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * LimitExceededException // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error code describes the limit exceeded. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // // * InvalidCrossAccountRoleException // Amazon Inspector cannot assume the cross-account role that it needs to list // your EC2 instances during the assessment run. // // * AgentsAlreadyRunningAssessmentException // You started an assessment run, but one of the instances is already participating // in another assessment run. // func (c *Inspector) StartAssessmentRun(input *StartAssessmentRunInput) (*StartAssessmentRunOutput, error) { req, out := c.StartAssessmentRunRequest(input) err := req.Send() return out, err } const opStopAssessmentRun = "StopAssessmentRun" // StopAssessmentRunRequest generates a "aws/request.Request" representing the // client's request for the StopAssessmentRun operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StopAssessmentRun for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StopAssessmentRun method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StopAssessmentRunRequest method. // req, resp := client.StopAssessmentRunRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) StopAssessmentRunRequest(input *StopAssessmentRunInput) (req *request.Request, output *StopAssessmentRunOutput) { op := &request.Operation{ Name: opStopAssessmentRun, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StopAssessmentRunInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &StopAssessmentRunOutput{} req.Data = output return } // StopAssessmentRun API operation for Amazon Inspector. // // Stops the assessment run that is specified by the ARN of the assessment run. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation StopAssessmentRun for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) StopAssessmentRun(input *StopAssessmentRunInput) (*StopAssessmentRunOutput, error) { req, out := c.StopAssessmentRunRequest(input) err := req.Send() return out, err } const opSubscribeToEvent = "SubscribeToEvent" // SubscribeToEventRequest generates a "aws/request.Request" representing the // client's request for the SubscribeToEvent operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SubscribeToEvent for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SubscribeToEvent method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SubscribeToEventRequest method. // req, resp := client.SubscribeToEventRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) SubscribeToEventRequest(input *SubscribeToEventInput) (req *request.Request, output *SubscribeToEventOutput) { op := &request.Operation{ Name: opSubscribeToEvent, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SubscribeToEventInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SubscribeToEventOutput{} req.Data = output return } // SubscribeToEvent API operation for Amazon Inspector. // // Enables the process of sending Amazon Simple Notification Service (SNS) notifications // about a specified event to a specified SNS topic. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation SubscribeToEvent for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * LimitExceededException // The request was rejected because it attempted to create resources beyond // the current AWS account limits. The error code describes the limit exceeded. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) SubscribeToEvent(input *SubscribeToEventInput) (*SubscribeToEventOutput, error) { req, out := c.SubscribeToEventRequest(input) err := req.Send() return out, err } const opUnsubscribeFromEvent = "UnsubscribeFromEvent" // UnsubscribeFromEventRequest generates a "aws/request.Request" representing the // client's request for the UnsubscribeFromEvent operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UnsubscribeFromEvent for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UnsubscribeFromEvent method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UnsubscribeFromEventRequest method. // req, resp := client.UnsubscribeFromEventRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) UnsubscribeFromEventRequest(input *UnsubscribeFromEventInput) (req *request.Request, output *UnsubscribeFromEventOutput) { op := &request.Operation{ Name: opUnsubscribeFromEvent, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UnsubscribeFromEventInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UnsubscribeFromEventOutput{} req.Data = output return } // UnsubscribeFromEvent API operation for Amazon Inspector. // // Disables the process of sending Amazon Simple Notification Service (SNS) // notifications about a specified event to a specified SNS topic. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation UnsubscribeFromEvent for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) UnsubscribeFromEvent(input *UnsubscribeFromEventInput) (*UnsubscribeFromEventOutput, error) { req, out := c.UnsubscribeFromEventRequest(input) err := req.Send() return out, err } const opUpdateAssessmentTarget = "UpdateAssessmentTarget" // UpdateAssessmentTargetRequest generates a "aws/request.Request" representing the // client's request for the UpdateAssessmentTarget operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateAssessmentTarget for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateAssessmentTarget method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateAssessmentTargetRequest method. // req, resp := client.UpdateAssessmentTargetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Inspector) UpdateAssessmentTargetRequest(input *UpdateAssessmentTargetInput) (req *request.Request, output *UpdateAssessmentTargetOutput) { op := &request.Operation{ Name: opUpdateAssessmentTarget, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateAssessmentTargetInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateAssessmentTargetOutput{} req.Data = output return } // UpdateAssessmentTarget API operation for Amazon Inspector. // // Updates the assessment target that is specified by the ARN of the assessment // target. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Inspector's // API operation UpdateAssessmentTarget for usage and error information. // // Returned Error Codes: // * InternalException // Internal server error. // // * InvalidInputException // The request was rejected because an invalid or out-of-range value was supplied // for an input parameter. // // * AccessDeniedException // You do not have required permissions to access the requested resource. // // * NoSuchEntityException // The request was rejected because it referenced an entity that does not exist. // The error code describes the entity. // func (c *Inspector) UpdateAssessmentTarget(input *UpdateAssessmentTargetInput) (*UpdateAssessmentTargetOutput, error) { req, out := c.UpdateAssessmentTargetRequest(input) err := req.Send() return out, err } type AddAttributesToFindingsInput struct { _ struct{} `type:"structure"` // The array of attributes that you want to assign to specified findings. // // Attributes is a required field Attributes []*Attribute `locationName:"attributes" type:"list" required:"true"` // The ARNs that specify the findings that you want to assign attributes to. // // FindingArns is a required field FindingArns []*string `locationName:"findingArns" min:"1" type:"list" required:"true"` } // String returns the string representation func (s AddAttributesToFindingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddAttributesToFindingsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddAttributesToFindingsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddAttributesToFindingsInput"} if s.Attributes == nil { invalidParams.Add(request.NewErrParamRequired("Attributes")) } if s.FindingArns == nil { invalidParams.Add(request.NewErrParamRequired("FindingArns")) } if s.FindingArns != nil && len(s.FindingArns) < 1 { invalidParams.Add(request.NewErrParamMinLen("FindingArns", 1)) } if s.Attributes != nil { for i, v := range s.Attributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attributes", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddAttributesToFindingsOutput struct { _ struct{} `type:"structure"` // Attribute details that cannot be described. An error code is provided for // each failed item. // // FailedItems is a required field FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"` } // String returns the string representation func (s AddAttributesToFindingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddAttributesToFindingsOutput) GoString() string { return s.String() } // Used in the exception error that is thrown if you start an assessment run // for an assessment target that includes an EC2 instance that is already participating // in another started assessment run. type AgentAlreadyRunningAssessment struct { _ struct{} `type:"structure"` // ID of the agent that is running on an EC2 instance that is already participating // in another started assessment run. // // AgentId is a required field AgentId *string `locationName:"agentId" min:"1" type:"string" required:"true"` // The ARN of the assessment run that has already been started. // // AssessmentRunArn is a required field AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s AgentAlreadyRunningAssessment) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AgentAlreadyRunningAssessment) GoString() string { return s.String() } // Contains information about an Amazon Inspector agent. This data type is used // as a request parameter in the ListAssessmentRunAgents action. type AgentFilter struct { _ struct{} `type:"structure"` // The detailed health state of the agent. Values can be set to IDLE, RUNNING, // SHUTDOWN, UNHEALTHY, THROTTLED, and UNKNOWN. // // AgentHealthCodes is a required field AgentHealthCodes []*string `locationName:"agentHealthCodes" type:"list" required:"true"` // The current health state of the agent. Values can be set to HEALTHY or UNHEALTHY. // // AgentHealths is a required field AgentHealths []*string `locationName:"agentHealths" type:"list" required:"true"` } // String returns the string representation func (s AgentFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AgentFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AgentFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AgentFilter"} if s.AgentHealthCodes == nil { invalidParams.Add(request.NewErrParamRequired("AgentHealthCodes")) } if s.AgentHealths == nil { invalidParams.Add(request.NewErrParamRequired("AgentHealths")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Used as a response element in the PreviewAgents action. type AgentPreview struct { _ struct{} `type:"structure"` // The ID of the EC2 instance where the agent is installed. // // AgentId is a required field AgentId *string `locationName:"agentId" min:"1" type:"string" required:"true"` // The Auto Scaling group for the EC2 instance where the agent is installed. AutoScalingGroup *string `locationName:"autoScalingGroup" min:"1" type:"string"` } // String returns the string representation func (s AgentPreview) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AgentPreview) GoString() string { return s.String() } // A snapshot of an Amazon Inspector assessment run that contains the findings // of the assessment run . // // Used as the response element in the DescribeAssessmentRuns action. type AssessmentRun struct { _ struct{} `type:"structure"` // The ARN of the assessment run. // // Arn is a required field Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` // The ARN of the assessment template that is associated with the assessment // run. // // AssessmentTemplateArn is a required field AssessmentTemplateArn *string `locationName:"assessmentTemplateArn" min:"1" type:"string" required:"true"` // The assessment run completion time that corresponds to the rules packages // evaluation completion time or failure. CompletedAt *time.Time `locationName:"completedAt" type:"timestamp" timestampFormat:"unix"` // The time when StartAssessmentRun was called. // // CreatedAt is a required field CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unix" required:"true"` // A Boolean value (true or false) that specifies whether the process of collecting // data from the agents is completed. // // DataCollected is a required field DataCollected *bool `locationName:"dataCollected" type:"boolean" required:"true"` // The duration of the assessment run. // // DurationInSeconds is a required field DurationInSeconds *int64 `locationName:"durationInSeconds" min:"180" type:"integer" required:"true"` // The auto-generated name for the assessment run. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // A list of notifications for the event subscriptions. A notification about // a particular generated finding is added to this list only once. // // Notifications is a required field Notifications []*AssessmentRunNotification `locationName:"notifications" type:"list" required:"true"` // The rules packages selected for the assessment run. // // RulesPackageArns is a required field RulesPackageArns []*string `locationName:"rulesPackageArns" min:"1" type:"list" required:"true"` // The time when StartAssessmentRun was called. StartedAt *time.Time `locationName:"startedAt" type:"timestamp" timestampFormat:"unix"` // The state of the assessment run. // // State is a required field State *string `locationName:"state" type:"string" required:"true" enum:"AssessmentRunState"` // The last time when the assessment run's state changed. // // StateChangedAt is a required field StateChangedAt *time.Time `locationName:"stateChangedAt" type:"timestamp" timestampFormat:"unix" required:"true"` // A list of the assessment run state changes. // // StateChanges is a required field StateChanges []*AssessmentRunStateChange `locationName:"stateChanges" type:"list" required:"true"` // The user-defined attributes that are assigned to every generated finding. // // UserAttributesForFindings is a required field UserAttributesForFindings []*Attribute `locationName:"userAttributesForFindings" type:"list" required:"true"` } // String returns the string representation func (s AssessmentRun) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssessmentRun) GoString() string { return s.String() } // Contains information about an Amazon Inspector agent. This data type is used // as a response element in the ListAssessmentRunAgents action. type AssessmentRunAgent struct { _ struct{} `type:"structure"` // The current health state of the agent. // // AgentHealth is a required field AgentHealth *string `locationName:"agentHealth" type:"string" required:"true" enum:"AgentHealth"` // The detailed health state of the agent. // // AgentHealthCode is a required field AgentHealthCode *string `locationName:"agentHealthCode" type:"string" required:"true" enum:"AgentHealthCode"` // The description for the agent health code. AgentHealthDetails *string `locationName:"agentHealthDetails" type:"string"` // The AWS account of the EC2 instance where the agent is installed. // // AgentId is a required field AgentId *string `locationName:"agentId" min:"1" type:"string" required:"true"` // The ARN of the assessment run that is associated with the agent. // // AssessmentRunArn is a required field AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"` // The Auto Scaling group of the EC2 instance that is specified by the agent // ID. AutoScalingGroup *string `locationName:"autoScalingGroup" min:"1" type:"string"` // The Amazon Inspector application data metrics that are collected by the agent. // // TelemetryMetadata is a required field TelemetryMetadata []*TelemetryMetadata `locationName:"telemetryMetadata" type:"list" required:"true"` } // String returns the string representation func (s AssessmentRunAgent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssessmentRunAgent) GoString() string { return s.String() } // Used as the request parameter in the ListAssessmentRuns action. type AssessmentRunFilter struct { _ struct{} `type:"structure"` // For a record to match a filter, the value that is specified for this data // type property must inclusively match any value between the specified minimum // and maximum values of the completedAt property of the AssessmentRun data // type. CompletionTimeRange *TimestampRange `locationName:"completionTimeRange" type:"structure"` // For a record to match a filter, the value that is specified for this data // type property must inclusively match any value between the specified minimum // and maximum values of the durationInSeconds property of the AssessmentRun // data type. DurationRange *DurationRange `locationName:"durationRange" type:"structure"` // For a record to match a filter, an explicit value or a string containing // a wildcard that is specified for this data type property must match the value // of the assessmentRunName property of the AssessmentRun data type. NamePattern *string `locationName:"namePattern" min:"1" type:"string"` // For a record to match a filter, the value that is specified for this data // type property must be contained in the list of values of the rulesPackages // property of the AssessmentRun data type. RulesPackageArns []*string `locationName:"rulesPackageArns" type:"list"` // For a record to match a filter, the value that is specified for this data // type property must inclusively match any value between the specified minimum // and maximum values of the startTime property of the AssessmentRun data type. StartTimeRange *TimestampRange `locationName:"startTimeRange" type:"structure"` // For a record to match a filter, the value that is specified for this data // type property must match the stateChangedAt property of the AssessmentRun // data type. StateChangeTimeRange *TimestampRange `locationName:"stateChangeTimeRange" type:"structure"` // For a record to match a filter, one of the values specified for this data // type property must be the exact match of the value of the assessmentRunState // property of the AssessmentRun data type. States []*string `locationName:"states" type:"list"` } // String returns the string representation func (s AssessmentRunFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssessmentRunFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssessmentRunFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssessmentRunFilter"} if s.NamePattern != nil && len(*s.NamePattern) < 1 { invalidParams.Add(request.NewErrParamMinLen("NamePattern", 1)) } if s.DurationRange != nil { if err := s.DurationRange.Validate(); err != nil { invalidParams.AddNested("DurationRange", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Used as one of the elements of the AssessmentRun data type. type AssessmentRunNotification struct { _ struct{} `type:"structure"` // The date of the notification. // // Date is a required field Date *time.Time `locationName:"date" type:"timestamp" timestampFormat:"unix" required:"true"` // The Boolean value that specifies whether the notification represents an error. // // Error is a required field Error *bool `locationName:"error" type:"boolean" required:"true"` // The event for which a notification is sent. // // Event is a required field Event *string `locationName:"event" type:"string" required:"true" enum:"Event"` Message *string `locationName:"message" type:"string"` // The status code of the SNS notification. SnsPublishStatusCode *string `locationName:"snsPublishStatusCode" type:"string" enum:"AssessmentRunNotificationSnsStatusCode"` // The SNS topic to which the SNS notification is sent. SnsTopicArn *string `locationName:"snsTopicArn" min:"1" type:"string"` } // String returns the string representation func (s AssessmentRunNotification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssessmentRunNotification) GoString() string { return s.String() } // Used as one of the elements of the AssessmentRun data type. type AssessmentRunStateChange struct { _ struct{} `type:"structure"` // The assessment run state. // // State is a required field State *string `locationName:"state" type:"string" required:"true" enum:"AssessmentRunState"` // The last time the assessment run state changed. // // StateChangedAt is a required field StateChangedAt *time.Time `locationName:"stateChangedAt" type:"timestamp" timestampFormat:"unix" required:"true"` } // String returns the string representation func (s AssessmentRunStateChange) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssessmentRunStateChange) GoString() string { return s.String() } // Contains information about an Amazon Inspector application. This data type // is used as the response element in the DescribeAssessmentTargets action. type AssessmentTarget struct { _ struct{} `type:"structure"` // The ARN that specifies the Amazon Inspector assessment target. // // Arn is a required field Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` // The time at which the assessment target is created. // // CreatedAt is a required field CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unix" required:"true"` // The name of the Amazon Inspector assessment target. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // The ARN that specifies the resource group that is associated with the assessment // target. // // ResourceGroupArn is a required field ResourceGroupArn *string `locationName:"resourceGroupArn" min:"1" type:"string" required:"true"` // The time at which UpdateAssessmentTarget is called. // // UpdatedAt is a required field UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"unix" required:"true"` } // String returns the string representation func (s AssessmentTarget) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssessmentTarget) GoString() string { return s.String() } // Used as the request parameter in the ListAssessmentTargets action. type AssessmentTargetFilter struct { _ struct{} `type:"structure"` // For a record to match a filter, an explicit value or a string that contains // a wildcard that is specified for this data type property must match the value // of the assessmentTargetName property of the AssessmentTarget data type. AssessmentTargetNamePattern *string `locationName:"assessmentTargetNamePattern" min:"1" type:"string"` } // String returns the string representation func (s AssessmentTargetFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssessmentTargetFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssessmentTargetFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssessmentTargetFilter"} if s.AssessmentTargetNamePattern != nil && len(*s.AssessmentTargetNamePattern) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetNamePattern", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains information about an Amazon Inspector assessment template. This // data type is used as the response element in the DescribeAssessmentTemplates // action. type AssessmentTemplate struct { _ struct{} `type:"structure"` // The ARN of the assessment template. // // Arn is a required field Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` // The ARN of the assessment target that corresponds to this assessment template. // // AssessmentTargetArn is a required field AssessmentTargetArn *string `locationName:"assessmentTargetArn" min:"1" type:"string" required:"true"` // The time at which the assessment template is created. // // CreatedAt is a required field CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unix" required:"true"` // The duration in seconds specified for this assessment tempate. The default // value is 3600 seconds (one hour). The maximum value is 86400 seconds (one // day). // // DurationInSeconds is a required field DurationInSeconds *int64 `locationName:"durationInSeconds" min:"180" type:"integer" required:"true"` // The name of the assessment template. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // The rules packages that are specified for this assessment template. // // RulesPackageArns is a required field RulesPackageArns []*string `locationName:"rulesPackageArns" type:"list" required:"true"` // The user-defined attributes that are assigned to every generated finding // from the assessment run that uses this assessment template. // // UserAttributesForFindings is a required field UserAttributesForFindings []*Attribute `locationName:"userAttributesForFindings" type:"list" required:"true"` } // String returns the string representation func (s AssessmentTemplate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssessmentTemplate) GoString() string { return s.String() } // Used as the request parameter in the ListAssessmentTemplates action. type AssessmentTemplateFilter struct { _ struct{} `type:"structure"` // For a record to match a filter, the value specified for this data type property // must inclusively match any value between the specified minimum and maximum // values of the durationInSeconds property of the AssessmentTemplate data type. DurationRange *DurationRange `locationName:"durationRange" type:"structure"` // For a record to match a filter, an explicit value or a string that contains // a wildcard that is specified for this data type property must match the value // of the assessmentTemplateName property of the AssessmentTemplate data type. NamePattern *string `locationName:"namePattern" min:"1" type:"string"` // For a record to match a filter, the values that are specified for this data // type property must be contained in the list of values of the rulesPackageArns // property of the AssessmentTemplate data type. RulesPackageArns []*string `locationName:"rulesPackageArns" type:"list"` } // String returns the string representation func (s AssessmentTemplateFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssessmentTemplateFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssessmentTemplateFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssessmentTemplateFilter"} if s.NamePattern != nil && len(*s.NamePattern) < 1 { invalidParams.Add(request.NewErrParamMinLen("NamePattern", 1)) } if s.DurationRange != nil { if err := s.DurationRange.Validate(); err != nil { invalidParams.AddNested("DurationRange", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A collection of attributes of the host from which the finding is generated. type AssetAttributes struct { _ struct{} `type:"structure"` // The ID of the agent that is installed on the EC2 instance where the finding // is generated. AgentId *string `locationName:"agentId" min:"1" type:"string"` // The ID of the Amazon Machine Image (AMI) that is installed on the EC2 instance // where the finding is generated. AmiId *string `locationName:"amiId" type:"string"` // The Auto Scaling group of the EC2 instance where the finding is generated. AutoScalingGroup *string `locationName:"autoScalingGroup" min:"1" type:"string"` // The hostname of the EC2 instance where the finding is generated. Hostname *string `locationName:"hostname" type:"string"` // The list of IP v4 addresses of the EC2 instance where the finding is generated. Ipv4Addresses []*string `locationName:"ipv4Addresses" type:"list"` // The schema version of this data type. // // SchemaVersion is a required field SchemaVersion *int64 `locationName:"schemaVersion" type:"integer" required:"true"` } // String returns the string representation func (s AssetAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssetAttributes) GoString() string { return s.String() } // This data type is used as a request parameter in the AddAttributesToFindings // and CreateAssessmentTemplate actions. type Attribute struct { _ struct{} `type:"structure"` // The attribute key. // // Key is a required field Key *string `locationName:"key" min:"1" type:"string" required:"true"` // The value assigned to the attribute key. Value *string `locationName:"value" min:"1" type:"string"` } // String returns the string representation func (s Attribute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Attribute) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Attribute) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Attribute"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Value != nil && len(*s.Value) < 1 { invalidParams.Add(request.NewErrParamMinLen("Value", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateAssessmentTargetInput struct { _ struct{} `type:"structure"` // The user-defined name that identifies the assessment target that you want // to create. The name must be unique within the AWS account. // // AssessmentTargetName is a required field AssessmentTargetName *string `locationName:"assessmentTargetName" min:"1" type:"string" required:"true"` // The ARN that specifies the resource group that is used to create the assessment // target. // // ResourceGroupArn is a required field ResourceGroupArn *string `locationName:"resourceGroupArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateAssessmentTargetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAssessmentTargetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateAssessmentTargetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateAssessmentTargetInput"} if s.AssessmentTargetName == nil { invalidParams.Add(request.NewErrParamRequired("AssessmentTargetName")) } if s.AssessmentTargetName != nil && len(*s.AssessmentTargetName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetName", 1)) } if s.ResourceGroupArn == nil { invalidParams.Add(request.NewErrParamRequired("ResourceGroupArn")) } if s.ResourceGroupArn != nil && len(*s.ResourceGroupArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceGroupArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateAssessmentTargetOutput struct { _ struct{} `type:"structure"` // The ARN that specifies the assessment target that is created. // // AssessmentTargetArn is a required field AssessmentTargetArn *string `locationName:"assessmentTargetArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateAssessmentTargetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAssessmentTargetOutput) GoString() string { return s.String() } type CreateAssessmentTemplateInput struct { _ struct{} `type:"structure"` // The ARN that specifies the assessment target for which you want to create // the assessment template. // // AssessmentTargetArn is a required field AssessmentTargetArn *string `locationName:"assessmentTargetArn" min:"1" type:"string" required:"true"` // The user-defined name that identifies the assessment template that you want // to create. You can create several assessment templates for an assessment // target. The names of the assessment templates that correspond to a particular // assessment target must be unique. // // AssessmentTemplateName is a required field AssessmentTemplateName *string `locationName:"assessmentTemplateName" min:"1" type:"string" required:"true"` // The duration of the assessment run in seconds. The default value is 3600 // seconds (one hour). // // DurationInSeconds is a required field DurationInSeconds *int64 `locationName:"durationInSeconds" min:"180" type:"integer" required:"true"` // The ARNs that specify the rules packages that you want to attach to the assessment // template. // // RulesPackageArns is a required field RulesPackageArns []*string `locationName:"rulesPackageArns" type:"list" required:"true"` // The user-defined attributes that are assigned to every finding that is generated // by the assessment run that uses this assessment template. UserAttributesForFindings []*Attribute `locationName:"userAttributesForFindings" type:"list"` } // String returns the string representation func (s CreateAssessmentTemplateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAssessmentTemplateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateAssessmentTemplateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateAssessmentTemplateInput"} if s.AssessmentTargetArn == nil { invalidParams.Add(request.NewErrParamRequired("AssessmentTargetArn")) } if s.AssessmentTargetArn != nil && len(*s.AssessmentTargetArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetArn", 1)) } if s.AssessmentTemplateName == nil { invalidParams.Add(request.NewErrParamRequired("AssessmentTemplateName")) } if s.AssessmentTemplateName != nil && len(*s.AssessmentTemplateName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssessmentTemplateName", 1)) } if s.DurationInSeconds == nil { invalidParams.Add(request.NewErrParamRequired("DurationInSeconds")) } if s.DurationInSeconds != nil && *s.DurationInSeconds < 180 { invalidParams.Add(request.NewErrParamMinValue("DurationInSeconds", 180)) } if s.RulesPackageArns == nil { invalidParams.Add(request.NewErrParamRequired("RulesPackageArns")) } if s.UserAttributesForFindings != nil { for i, v := range s.UserAttributesForFindings { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UserAttributesForFindings", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateAssessmentTemplateOutput struct { _ struct{} `type:"structure"` // The ARN that specifies the assessment template that is created. // // AssessmentTemplateArn is a required field AssessmentTemplateArn *string `locationName:"assessmentTemplateArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateAssessmentTemplateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAssessmentTemplateOutput) GoString() string { return s.String() } type CreateResourceGroupInput struct { _ struct{} `type:"structure"` // A collection of keys and an array of possible values, '[{"key":"key1","values":["Value1","Value2"]},{"key":"Key2","values":["Value3"]}]'. // // For example,'[{"key":"Name","values":["TestEC2Instance"]}]'. // // ResourceGroupTags is a required field ResourceGroupTags []*ResourceGroupTag `locationName:"resourceGroupTags" min:"1" type:"list" required:"true"` } // String returns the string representation func (s CreateResourceGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateResourceGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateResourceGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateResourceGroupInput"} if s.ResourceGroupTags == nil { invalidParams.Add(request.NewErrParamRequired("ResourceGroupTags")) } if s.ResourceGroupTags != nil && len(s.ResourceGroupTags) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceGroupTags", 1)) } if s.ResourceGroupTags != nil { for i, v := range s.ResourceGroupTags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ResourceGroupTags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateResourceGroupOutput struct { _ struct{} `type:"structure"` // The ARN that specifies the resource group that is created. // // ResourceGroupArn is a required field ResourceGroupArn *string `locationName:"resourceGroupArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateResourceGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateResourceGroupOutput) GoString() string { return s.String() } type DeleteAssessmentRunInput struct { _ struct{} `type:"structure"` // The ARN that specifies the assessment run that you want to delete. // // AssessmentRunArn is a required field AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteAssessmentRunInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAssessmentRunInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAssessmentRunInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAssessmentRunInput"} if s.AssessmentRunArn == nil { invalidParams.Add(request.NewErrParamRequired("AssessmentRunArn")) } if s.AssessmentRunArn != nil && len(*s.AssessmentRunArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteAssessmentRunOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteAssessmentRunOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAssessmentRunOutput) GoString() string { return s.String() } type DeleteAssessmentTargetInput struct { _ struct{} `type:"structure"` // The ARN that specifies the assessment target that you want to delete. // // AssessmentTargetArn is a required field AssessmentTargetArn *string `locationName:"assessmentTargetArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteAssessmentTargetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAssessmentTargetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAssessmentTargetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAssessmentTargetInput"} if s.AssessmentTargetArn == nil { invalidParams.Add(request.NewErrParamRequired("AssessmentTargetArn")) } if s.AssessmentTargetArn != nil && len(*s.AssessmentTargetArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteAssessmentTargetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteAssessmentTargetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAssessmentTargetOutput) GoString() string { return s.String() } type DeleteAssessmentTemplateInput struct { _ struct{} `type:"structure"` // The ARN that specifies the assessment template that you want to delete. // // AssessmentTemplateArn is a required field AssessmentTemplateArn *string `locationName:"assessmentTemplateArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteAssessmentTemplateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAssessmentTemplateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAssessmentTemplateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAssessmentTemplateInput"} if s.AssessmentTemplateArn == nil { invalidParams.Add(request.NewErrParamRequired("AssessmentTemplateArn")) } if s.AssessmentTemplateArn != nil && len(*s.AssessmentTemplateArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssessmentTemplateArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteAssessmentTemplateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteAssessmentTemplateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAssessmentTemplateOutput) GoString() string { return s.String() } type DescribeAssessmentRunsInput struct { _ struct{} `type:"structure"` // The ARN that specifies the assessment run that you want to describe. // // AssessmentRunArns is a required field AssessmentRunArns []*string `locationName:"assessmentRunArns" min:"1" type:"list" required:"true"` } // String returns the string representation func (s DescribeAssessmentRunsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAssessmentRunsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeAssessmentRunsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeAssessmentRunsInput"} if s.AssessmentRunArns == nil { invalidParams.Add(request.NewErrParamRequired("AssessmentRunArns")) } if s.AssessmentRunArns != nil && len(s.AssessmentRunArns) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArns", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeAssessmentRunsOutput struct { _ struct{} `type:"structure"` // Information about the assessment run. // // AssessmentRuns is a required field AssessmentRuns []*AssessmentRun `locationName:"assessmentRuns" type:"list" required:"true"` // Assessment run details that cannot be described. An error code is provided // for each failed item. // // FailedItems is a required field FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"` } // String returns the string representation func (s DescribeAssessmentRunsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAssessmentRunsOutput) GoString() string { return s.String() } type DescribeAssessmentTargetsInput struct { _ struct{} `type:"structure"` // The ARNs that specifies the assessment targets that you want to describe. // // AssessmentTargetArns is a required field AssessmentTargetArns []*string `locationName:"assessmentTargetArns" min:"1" type:"list" required:"true"` } // String returns the string representation func (s DescribeAssessmentTargetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAssessmentTargetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeAssessmentTargetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeAssessmentTargetsInput"} if s.AssessmentTargetArns == nil { invalidParams.Add(request.NewErrParamRequired("AssessmentTargetArns")) } if s.AssessmentTargetArns != nil && len(s.AssessmentTargetArns) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetArns", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeAssessmentTargetsOutput struct { _ struct{} `type:"structure"` // Information about the assessment targets. // // AssessmentTargets is a required field AssessmentTargets []*AssessmentTarget `locationName:"assessmentTargets" type:"list" required:"true"` // Assessment target details that cannot be described. An error code is provided // for each failed item. // // FailedItems is a required field FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"` } // String returns the string representation func (s DescribeAssessmentTargetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAssessmentTargetsOutput) GoString() string { return s.String() } type DescribeAssessmentTemplatesInput struct { _ struct{} `type:"structure"` // The ARN that specifiesthe assessment templates that you want to describe. // // AssessmentTemplateArns is a required field AssessmentTemplateArns []*string `locationName:"assessmentTemplateArns" min:"1" type:"list" required:"true"` } // String returns the string representation func (s DescribeAssessmentTemplatesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAssessmentTemplatesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeAssessmentTemplatesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeAssessmentTemplatesInput"} if s.AssessmentTemplateArns == nil { invalidParams.Add(request.NewErrParamRequired("AssessmentTemplateArns")) } if s.AssessmentTemplateArns != nil && len(s.AssessmentTemplateArns) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssessmentTemplateArns", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeAssessmentTemplatesOutput struct { _ struct{} `type:"structure"` // Information about the assessment templates. // // AssessmentTemplates is a required field AssessmentTemplates []*AssessmentTemplate `locationName:"assessmentTemplates" type:"list" required:"true"` // Assessment template details that cannot be described. An error code is provided // for each failed item. // // FailedItems is a required field FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"` } // String returns the string representation func (s DescribeAssessmentTemplatesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAssessmentTemplatesOutput) GoString() string { return s.String() } type DescribeCrossAccountAccessRoleInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DescribeCrossAccountAccessRoleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCrossAccountAccessRoleInput) GoString() string { return s.String() } type DescribeCrossAccountAccessRoleOutput struct { _ struct{} `type:"structure"` // The date when the cross-account access role was registered. // // RegisteredAt is a required field RegisteredAt *time.Time `locationName:"registeredAt" type:"timestamp" timestampFormat:"unix" required:"true"` // The ARN that specifies the IAM role that Amazon Inspector uses to access // your AWS account. // // RoleArn is a required field RoleArn *string `locationName:"roleArn" min:"1" type:"string" required:"true"` // A Boolean value that specifies whether the IAM role has the necessary policies // attached to enable Amazon Inspector to access your AWS account. // // Valid is a required field Valid *bool `locationName:"valid" type:"boolean" required:"true"` } // String returns the string representation func (s DescribeCrossAccountAccessRoleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCrossAccountAccessRoleOutput) GoString() string { return s.String() } type DescribeFindingsInput struct { _ struct{} `type:"structure"` // The ARN that specifies the finding that you want to describe. // // FindingArns is a required field FindingArns []*string `locationName:"findingArns" min:"1" type:"list" required:"true"` // The locale into which you want to translate a finding description, recommendation, // and the short description that identifies the finding. Locale *string `locationName:"locale" type:"string" enum:"Locale"` } // String returns the string representation func (s DescribeFindingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeFindingsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeFindingsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeFindingsInput"} if s.FindingArns == nil { invalidParams.Add(request.NewErrParamRequired("FindingArns")) } if s.FindingArns != nil && len(s.FindingArns) < 1 { invalidParams.Add(request.NewErrParamMinLen("FindingArns", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeFindingsOutput struct { _ struct{} `type:"structure"` // Finding details that cannot be described. An error code is provided for each // failed item. // // FailedItems is a required field FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"` // Information about the finding. // // Findings is a required field Findings []*Finding `locationName:"findings" type:"list" required:"true"` } // String returns the string representation func (s DescribeFindingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeFindingsOutput) GoString() string { return s.String() } type DescribeResourceGroupsInput struct { _ struct{} `type:"structure"` // The ARN that specifies the resource group that you want to describe. // // ResourceGroupArns is a required field ResourceGroupArns []*string `locationName:"resourceGroupArns" min:"1" type:"list" required:"true"` } // String returns the string representation func (s DescribeResourceGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeResourceGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeResourceGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeResourceGroupsInput"} if s.ResourceGroupArns == nil { invalidParams.Add(request.NewErrParamRequired("ResourceGroupArns")) } if s.ResourceGroupArns != nil && len(s.ResourceGroupArns) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceGroupArns", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeResourceGroupsOutput struct { _ struct{} `type:"structure"` // Resource group details that cannot be described. An error code is provided // for each failed item. // // FailedItems is a required field FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"` // Information about a resource group. // // ResourceGroups is a required field ResourceGroups []*ResourceGroup `locationName:"resourceGroups" type:"list" required:"true"` } // String returns the string representation func (s DescribeResourceGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeResourceGroupsOutput) GoString() string { return s.String() } type DescribeRulesPackagesInput struct { _ struct{} `type:"structure"` // The locale that you want to translate a rules package description into. Locale *string `locationName:"locale" type:"string" enum:"Locale"` // The ARN that specifies the rules package that you want to describe. // // RulesPackageArns is a required field RulesPackageArns []*string `locationName:"rulesPackageArns" min:"1" type:"list" required:"true"` } // String returns the string representation func (s DescribeRulesPackagesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRulesPackagesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeRulesPackagesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeRulesPackagesInput"} if s.RulesPackageArns == nil { invalidParams.Add(request.NewErrParamRequired("RulesPackageArns")) } if s.RulesPackageArns != nil && len(s.RulesPackageArns) < 1 { invalidParams.Add(request.NewErrParamMinLen("RulesPackageArns", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeRulesPackagesOutput struct { _ struct{} `type:"structure"` // Rules package details that cannot be described. An error code is provided // for each failed item. // // FailedItems is a required field FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"` // Information about the rules package. // // RulesPackages is a required field RulesPackages []*RulesPackage `locationName:"rulesPackages" type:"list" required:"true"` } // String returns the string representation func (s DescribeRulesPackagesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRulesPackagesOutput) GoString() string { return s.String() } // This data type is used in the AssessmentTemplateFilter data type. type DurationRange struct { _ struct{} `type:"structure"` // The maximum value of the duration range. Must be less than or equal to 604800 // seconds (1 week). MaxSeconds *int64 `locationName:"maxSeconds" min:"180" type:"integer"` // The minimum value of the duration range. Must be greater than zero. MinSeconds *int64 `locationName:"minSeconds" min:"180" type:"integer"` } // String returns the string representation func (s DurationRange) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DurationRange) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DurationRange) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DurationRange"} if s.MaxSeconds != nil && *s.MaxSeconds < 180 { invalidParams.Add(request.NewErrParamMinValue("MaxSeconds", 180)) } if s.MinSeconds != nil && *s.MinSeconds < 180 { invalidParams.Add(request.NewErrParamMinValue("MinSeconds", 180)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // This data type is used in the Subscription data type. type EventSubscription struct { _ struct{} `type:"structure"` // The event for which Amazon Simple Notification Service (SNS) notifications // are sent. // // Event is a required field Event *string `locationName:"event" type:"string" required:"true" enum:"Event"` // The time at which SubscribeToEvent is called. // // SubscribedAt is a required field SubscribedAt *time.Time `locationName:"subscribedAt" type:"timestamp" timestampFormat:"unix" required:"true"` } // String returns the string representation func (s EventSubscription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EventSubscription) GoString() string { return s.String() } // Includes details about the failed items. type FailedItemDetails struct { _ struct{} `type:"structure"` // The status code of a failed item. // // FailureCode is a required field FailureCode *string `locationName:"failureCode" type:"string" required:"true" enum:"FailedItemErrorCode"` // Indicates whether you can immediately retry a request for this item for a // specified resource. // // Retryable is a required field Retryable *bool `locationName:"retryable" type:"boolean" required:"true"` } // String returns the string representation func (s FailedItemDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FailedItemDetails) GoString() string { return s.String() } // Contains information about an Amazon Inspector finding. This data type is // used as the response element in the DescribeFindings action. type Finding struct { _ struct{} `type:"structure"` // The ARN that specifies the finding. // // Arn is a required field Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` // A collection of attributes of the host from which the finding is generated. AssetAttributes *AssetAttributes `locationName:"assetAttributes" type:"structure"` // The type of the host from which the finding is generated. AssetType *string `locationName:"assetType" type:"string" enum:"AssetType"` // The system-defined attributes for the finding. // // Attributes is a required field Attributes []*Attribute `locationName:"attributes" type:"list" required:"true"` // This data element is currently not used. Confidence *int64 `locationName:"confidence" type:"integer"` // The time when the finding was generated. // // CreatedAt is a required field CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unix" required:"true"` // The description of the finding. Description *string `locationName:"description" type:"string"` // The ID of the finding. Id *string `locationName:"id" type:"string"` // This data element is currently not used. IndicatorOfCompromise *bool `locationName:"indicatorOfCompromise" type:"boolean"` // The numeric value of the finding severity. NumericSeverity *float64 `locationName:"numericSeverity" type:"double"` // The recommendation for the finding. Recommendation *string `locationName:"recommendation" type:"string"` // The schema version of this data type. SchemaVersion *int64 `locationName:"schemaVersion" type:"integer"` // The data element is set to "Inspector". Service *string `locationName:"service" type:"string"` // This data type is used in the Finding data type. ServiceAttributes *ServiceAttributes `locationName:"serviceAttributes" type:"structure"` // The finding severity. Values can be set to High, Medium, Low, and Informational. Severity *string `locationName:"severity" type:"string" enum:"Severity"` // The name of the finding. Title *string `locationName:"title" type:"string"` // The time when AddAttributesToFindings is called. // // UpdatedAt is a required field UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"unix" required:"true"` // The user-defined attributes that are assigned to the finding. // // UserAttributes is a required field UserAttributes []*Attribute `locationName:"userAttributes" type:"list" required:"true"` } // String returns the string representation func (s Finding) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Finding) GoString() string { return s.String() } // This data type is used as a request parameter in the ListFindings action. type FindingFilter struct { _ struct{} `type:"structure"` // For a record to match a filter, one of the values that is specified for this // data type property must be the exact match of the value of the agentId property // of the Finding data type. AgentIds []*string `locationName:"agentIds" type:"list"` // For a record to match a filter, the list of values that are specified for // this data type property must be contained in the list of values of the attributes // property of the Finding data type. Attributes []*Attribute `locationName:"attributes" type:"list"` // For a record to match a filter, one of the values that is specified for this // data type property must be the exact match of the value of the autoScalingGroup // property of the Finding data type. AutoScalingGroups []*string `locationName:"autoScalingGroups" type:"list"` // The time range during which the finding is generated. CreationTimeRange *TimestampRange `locationName:"creationTimeRange" type:"structure"` // For a record to match a filter, one of the values that is specified for this // data type property must be the exact match of the value of the ruleName property // of the Finding data type. RuleNames []*string `locationName:"ruleNames" type:"list"` // For a record to match a filter, one of the values that is specified for this // data type property must be the exact match of the value of the rulesPackageArn // property of the Finding data type. RulesPackageArns []*string `locationName:"rulesPackageArns" type:"list"` // For a record to match a filter, one of the values that is specified for this // data type property must be the exact match of the value of the severity property // of the Finding data type. Severities []*string `locationName:"severities" type:"list"` // For a record to match a filter, the value that is specified for this data // type property must be contained in the list of values of the userAttributes // property of the Finding data type. UserAttributes []*Attribute `locationName:"userAttributes" type:"list"` } // String returns the string representation func (s FindingFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FindingFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *FindingFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "FindingFilter"} if s.Attributes != nil { for i, v := range s.Attributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attributes", i), err.(request.ErrInvalidParams)) } } } if s.UserAttributes != nil { for i, v := range s.UserAttributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UserAttributes", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetTelemetryMetadataInput struct { _ struct{} `type:"structure"` // The ARN that specifies the assessment run that has the telemetry data that // you want to obtain. // // AssessmentRunArn is a required field AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetTelemetryMetadataInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTelemetryMetadataInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetTelemetryMetadataInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetTelemetryMetadataInput"} if s.AssessmentRunArn == nil { invalidParams.Add(request.NewErrParamRequired("AssessmentRunArn")) } if s.AssessmentRunArn != nil && len(*s.AssessmentRunArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetTelemetryMetadataOutput struct { _ struct{} `type:"structure"` // Telemetry details. // // TelemetryMetadata is a required field TelemetryMetadata []*TelemetryMetadata `locationName:"telemetryMetadata" type:"list" required:"true"` } // String returns the string representation func (s GetTelemetryMetadataOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTelemetryMetadataOutput) GoString() string { return s.String() } type ListAssessmentRunAgentsInput struct { _ struct{} `type:"structure"` // The ARN that specifies the assessment run whose agents you want to list. // // AssessmentRunArn is a required field AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"` // You can use this parameter to specify a subset of data to be included in // the action's response. // // For a record to match a filter, all specified filter attributes must match. // When multiple values are specified for a filter attribute, any of the values // can match. Filter *AgentFilter `locationName:"filter" type:"structure"` // You can use this parameter to indicate the maximum number of items that you // want in the response. The default value is 10. The maximum value is 500. MaxResults *int64 `locationName:"maxResults" type:"integer"` // You can use this parameter when paginating results. Set the value of this // parameter to null on your first call to the ListAssessmentRunAgents action. // Subsequent calls to the action fill nextToken in the request with the value // of NextToken from the previous response to continue listing data. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s ListAssessmentRunAgentsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAssessmentRunAgentsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListAssessmentRunAgentsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListAssessmentRunAgentsInput"} if s.AssessmentRunArn == nil { invalidParams.Add(request.NewErrParamRequired("AssessmentRunArn")) } if s.AssessmentRunArn != nil && len(*s.AssessmentRunArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArn", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.Filter != nil { if err := s.Filter.Validate(); err != nil { invalidParams.AddNested("Filter", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListAssessmentRunAgentsOutput struct { _ struct{} `type:"structure"` // A list of ARNs that specifies the agents returned by the action. // // AssessmentRunAgents is a required field AssessmentRunAgents []*AssessmentRunAgent `locationName:"assessmentRunAgents" type:"list" required:"true"` // When a response is generated, if there is more data to be listed, this parameter // is present in the response and contains the value to use for the nextToken // parameter in a subsequent pagination request. If there is no more data to // be listed, this parameter is set to null. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s ListAssessmentRunAgentsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAssessmentRunAgentsOutput) GoString() string { return s.String() } type ListAssessmentRunsInput struct { _ struct{} `type:"structure"` // The ARNs that specify the assessment templates whose assessment runs you // want to list. AssessmentTemplateArns []*string `locationName:"assessmentTemplateArns" type:"list"` // You can use this parameter to specify a subset of data to be included in // the action's response. // // For a record to match a filter, all specified filter attributes must match. // When multiple values are specified for a filter attribute, any of the values // can match. Filter *AssessmentRunFilter `locationName:"filter" type:"structure"` // You can use this parameter to indicate the maximum number of items that you // want in the response. The default value is 10. The maximum value is 500. MaxResults *int64 `locationName:"maxResults" type:"integer"` // You can use this parameter when paginating results. Set the value of this // parameter to null on your first call to the ListAssessmentRuns action. Subsequent // calls to the action fill nextToken in the request with the value of NextToken // from the previous response to continue listing data. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s ListAssessmentRunsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAssessmentRunsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListAssessmentRunsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListAssessmentRunsInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.Filter != nil { if err := s.Filter.Validate(); err != nil { invalidParams.AddNested("Filter", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListAssessmentRunsOutput struct { _ struct{} `type:"structure"` // A list of ARNs that specifies the assessment runs that are returned by the // action. // // AssessmentRunArns is a required field AssessmentRunArns []*string `locationName:"assessmentRunArns" type:"list" required:"true"` // When a response is generated, if there is more data to be listed, this parameter // is present in the response and contains the value to use for the nextToken // parameter in a subsequent pagination request. If there is no more data to // be listed, this parameter is set to null. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s ListAssessmentRunsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAssessmentRunsOutput) GoString() string { return s.String() } type ListAssessmentTargetsInput struct { _ struct{} `type:"structure"` // You can use this parameter to specify a subset of data to be included in // the action's response. // // For a record to match a filter, all specified filter attributes must match. // When multiple values are specified for a filter attribute, any of the values // can match. Filter *AssessmentTargetFilter `locationName:"filter" type:"structure"` // You can use this parameter to indicate the maximum number of items you want // in the response. The default value is 10. The maximum value is 500. MaxResults *int64 `locationName:"maxResults" type:"integer"` // You can use this parameter when paginating results. Set the value of this // parameter to null on your first call to the ListAssessmentTargets action. // Subsequent calls to the action fill nextToken in the request with the value // of NextToken from the previous response to continue listing data. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s ListAssessmentTargetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAssessmentTargetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListAssessmentTargetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListAssessmentTargetsInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.Filter != nil { if err := s.Filter.Validate(); err != nil { invalidParams.AddNested("Filter", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListAssessmentTargetsOutput struct { _ struct{} `type:"structure"` // A list of ARNs that specifies the assessment targets that are returned by // the action. // // AssessmentTargetArns is a required field AssessmentTargetArns []*string `locationName:"assessmentTargetArns" type:"list" required:"true"` // When a response is generated, if there is more data to be listed, this parameter // is present in the response and contains the value to use for the nextToken // parameter in a subsequent pagination request. If there is no more data to // be listed, this parameter is set to null. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s ListAssessmentTargetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAssessmentTargetsOutput) GoString() string { return s.String() } type ListAssessmentTemplatesInput struct { _ struct{} `type:"structure"` // A list of ARNs that specifies the assessment targets whose assessment templates // you want to list. AssessmentTargetArns []*string `locationName:"assessmentTargetArns" type:"list"` // You can use this parameter to specify a subset of data to be included in // the action's response. // // For a record to match a filter, all specified filter attributes must match. // When multiple values are specified for a filter attribute, any of the values // can match. Filter *AssessmentTemplateFilter `locationName:"filter" type:"structure"` // You can use this parameter to indicate the maximum number of items you want // in the response. The default value is 10. The maximum value is 500. MaxResults *int64 `locationName:"maxResults" type:"integer"` // You can use this parameter when paginating results. Set the value of this // parameter to null on your first call to the ListAssessmentTemplates action. // Subsequent calls to the action fill nextToken in the request with the value // of NextToken from the previous response to continue listing data. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s ListAssessmentTemplatesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAssessmentTemplatesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListAssessmentTemplatesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListAssessmentTemplatesInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.Filter != nil { if err := s.Filter.Validate(); err != nil { invalidParams.AddNested("Filter", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListAssessmentTemplatesOutput struct { _ struct{} `type:"structure"` // A list of ARNs that specifies the assessment templates returned by the action. // // AssessmentTemplateArns is a required field AssessmentTemplateArns []*string `locationName:"assessmentTemplateArns" type:"list" required:"true"` // When a response is generated, if there is more data to be listed, this parameter // is present in the response and contains the value to use for the nextToken // parameter in a subsequent pagination request. If there is no more data to // be listed, this parameter is set to null. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s ListAssessmentTemplatesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAssessmentTemplatesOutput) GoString() string { return s.String() } type ListEventSubscriptionsInput struct { _ struct{} `type:"structure"` // You can use this parameter to indicate the maximum number of items you want // in the response. The default value is 10. The maximum value is 500. MaxResults *int64 `locationName:"maxResults" type:"integer"` // You can use this parameter when paginating results. Set the value of this // parameter to null on your first call to the ListEventSubscriptions action. // Subsequent calls to the action fill nextToken in the request with the value // of NextToken from the previous response to continue listing data. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // The ARN of the assessment template for which you want to list the existing // event subscriptions. ResourceArn *string `locationName:"resourceArn" min:"1" type:"string"` } // String returns the string representation func (s ListEventSubscriptionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListEventSubscriptionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListEventSubscriptionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListEventSubscriptionsInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListEventSubscriptionsOutput struct { _ struct{} `type:"structure"` // When a response is generated, if there is more data to be listed, this parameter // is present in the response and contains the value to use for the nextToken // parameter in a subsequent pagination request. If there is no more data to // be listed, this parameter is set to null. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // Details of the returned event subscriptions. // // Subscriptions is a required field Subscriptions []*Subscription `locationName:"subscriptions" type:"list" required:"true"` } // String returns the string representation func (s ListEventSubscriptionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListEventSubscriptionsOutput) GoString() string { return s.String() } type ListFindingsInput struct { _ struct{} `type:"structure"` // The ARNs of the assessment runs that generate the findings that you want // to list. AssessmentRunArns []*string `locationName:"assessmentRunArns" type:"list"` // You can use this parameter to specify a subset of data to be included in // the action's response. // // For a record to match a filter, all specified filter attributes must match. // When multiple values are specified for a filter attribute, any of the values // can match. Filter *FindingFilter `locationName:"filter" type:"structure"` // You can use this parameter to indicate the maximum number of items you want // in the response. The default value is 10. The maximum value is 500. MaxResults *int64 `locationName:"maxResults" type:"integer"` // You can use this parameter when paginating results. Set the value of this // parameter to null on your first call to the ListFindings action. Subsequent // calls to the action fill nextToken in the request with the value of NextToken // from the previous response to continue listing data. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s ListFindingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListFindingsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListFindingsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListFindingsInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.Filter != nil { if err := s.Filter.Validate(); err != nil { invalidParams.AddNested("Filter", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListFindingsOutput struct { _ struct{} `type:"structure"` // A list of ARNs that specifies the findings returned by the action. // // FindingArns is a required field FindingArns []*string `locationName:"findingArns" type:"list" required:"true"` // When a response is generated, if there is more data to be listed, this parameter // is present in the response and contains the value to use for the nextToken // parameter in a subsequent pagination request. If there is no more data to // be listed, this parameter is set to null. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s ListFindingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListFindingsOutput) GoString() string { return s.String() } type ListRulesPackagesInput struct { _ struct{} `type:"structure"` // You can use this parameter to indicate the maximum number of items you want // in the response. The default value is 10. The maximum value is 500. MaxResults *int64 `locationName:"maxResults" type:"integer"` // You can use this parameter when paginating results. Set the value of this // parameter to null on your first call to the ListRulesPackages action. Subsequent // calls to the action fill nextToken in the request with the value of NextToken // from the previous response to continue listing data. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s ListRulesPackagesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRulesPackagesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListRulesPackagesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListRulesPackagesInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListRulesPackagesOutput struct { _ struct{} `type:"structure"` // When a response is generated, if there is more data to be listed, this parameter // is present in the response and contains the value to use for the nextToken // parameter in a subsequent pagination request. If there is no more data to // be listed, this parameter is set to null. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // The list of ARNs that specifies the rules packages returned by the action. // // RulesPackageArns is a required field RulesPackageArns []*string `locationName:"rulesPackageArns" type:"list" required:"true"` } // String returns the string representation func (s ListRulesPackagesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRulesPackagesOutput) GoString() string { return s.String() } type ListTagsForResourceInput struct { _ struct{} `type:"structure"` // The ARN that specifies the assessment template whose tags you want to list. // // ResourceArn is a required field ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListTagsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsForResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} if s.ResourceArn == nil { invalidParams.Add(request.NewErrParamRequired("ResourceArn")) } if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListTagsForResourceOutput struct { _ struct{} `type:"structure"` // A collection of key and value pairs. // // Tags is a required field Tags []*Tag `locationName:"tags" type:"list" required:"true"` } // String returns the string representation func (s ListTagsForResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceOutput) GoString() string { return s.String() } type PreviewAgentsInput struct { _ struct{} `type:"structure"` // You can use this parameter to indicate the maximum number of items you want // in the response. The default value is 10. The maximum value is 500. MaxResults *int64 `locationName:"maxResults" type:"integer"` // You can use this parameter when paginating results. Set the value of this // parameter to null on your first call to the PreviewAgents action. Subsequent // calls to the action fill nextToken in the request with the value of NextToken // from the previous response to continue listing data. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // The ARN of the assessment target whose agents you want to preview. // // PreviewAgentsArn is a required field PreviewAgentsArn *string `locationName:"previewAgentsArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s PreviewAgentsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PreviewAgentsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PreviewAgentsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PreviewAgentsInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.PreviewAgentsArn == nil { invalidParams.Add(request.NewErrParamRequired("PreviewAgentsArn")) } if s.PreviewAgentsArn != nil && len(*s.PreviewAgentsArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("PreviewAgentsArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PreviewAgentsOutput struct { _ struct{} `type:"structure"` // The resulting list of agents. // // AgentPreviews is a required field AgentPreviews []*AgentPreview `locationName:"agentPreviews" type:"list" required:"true"` // When a response is generated, if there is more data to be listed, this parameter // is present in the response and contains the value to use for the nextToken // parameter in a subsequent pagination request. If there is no more data to // be listed, this parameter is set to null. NextToken *string `locationName:"nextToken" min:"1" type:"string"` } // String returns the string representation func (s PreviewAgentsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PreviewAgentsOutput) GoString() string { return s.String() } type RegisterCrossAccountAccessRoleInput struct { _ struct{} `type:"structure"` // The ARN of the IAM role that Amazon Inspector uses to list your EC2 instances // during the assessment run or when you call the PreviewAgents action. // // RoleArn is a required field RoleArn *string `locationName:"roleArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RegisterCrossAccountAccessRoleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterCrossAccountAccessRoleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterCrossAccountAccessRoleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterCrossAccountAccessRoleInput"} if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if s.RoleArn != nil && len(*s.RoleArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RegisterCrossAccountAccessRoleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RegisterCrossAccountAccessRoleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterCrossAccountAccessRoleOutput) GoString() string { return s.String() } type RemoveAttributesFromFindingsInput struct { _ struct{} `type:"structure"` // The array of attribute keys that you want to remove from specified findings. // // AttributeKeys is a required field AttributeKeys []*string `locationName:"attributeKeys" type:"list" required:"true"` // The ARNs that specify the findings that you want to remove attributes from. // // FindingArns is a required field FindingArns []*string `locationName:"findingArns" min:"1" type:"list" required:"true"` } // String returns the string representation func (s RemoveAttributesFromFindingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveAttributesFromFindingsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveAttributesFromFindingsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveAttributesFromFindingsInput"} if s.AttributeKeys == nil { invalidParams.Add(request.NewErrParamRequired("AttributeKeys")) } if s.FindingArns == nil { invalidParams.Add(request.NewErrParamRequired("FindingArns")) } if s.FindingArns != nil && len(s.FindingArns) < 1 { invalidParams.Add(request.NewErrParamMinLen("FindingArns", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemoveAttributesFromFindingsOutput struct { _ struct{} `type:"structure"` // Attributes details that cannot be described. An error code is provided for // each failed item. // // FailedItems is a required field FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"` } // String returns the string representation func (s RemoveAttributesFromFindingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveAttributesFromFindingsOutput) GoString() string { return s.String() } // Contains information about a resource group. The resource group defines a // set of tags that, when queried, identify the AWS resources that make up the // assessment target. This data type is used as the response element in the // DescribeResourceGroups action. type ResourceGroup struct { _ struct{} `type:"structure"` // The ARN of the resource group. // // Arn is a required field Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` // The time at which resource group is created. // // CreatedAt is a required field CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unix" required:"true"` // The tags (key and value pairs) of the resource group. This data type property // is used in the CreateResourceGroup action. // // Tags is a required field Tags []*ResourceGroupTag `locationName:"tags" min:"1" type:"list" required:"true"` } // String returns the string representation func (s ResourceGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResourceGroup) GoString() string { return s.String() } // This data type is used as one of the elements of the ResourceGroup data type. type ResourceGroupTag struct { _ struct{} `type:"structure"` // A tag key. // // Key is a required field Key *string `locationName:"key" min:"1" type:"string" required:"true"` // The value assigned to a tag key. Value *string `locationName:"value" min:"1" type:"string"` } // String returns the string representation func (s ResourceGroupTag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResourceGroupTag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ResourceGroupTag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ResourceGroupTag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Value != nil && len(*s.Value) < 1 { invalidParams.Add(request.NewErrParamMinLen("Value", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains information about an Amazon Inspector rules package. This data type // is used as the response element in the DescribeRulesPackages action. type RulesPackage struct { _ struct{} `type:"structure"` // The ARN of the rules package. // // Arn is a required field Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` // The description of the rules package. Description *string `locationName:"description" type:"string"` // The name of the rules package. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` // The provider of the rules package. // // Provider is a required field Provider *string `locationName:"provider" type:"string" required:"true"` // The version ID of the rules package. // // Version is a required field Version *string `locationName:"version" type:"string" required:"true"` } // String returns the string representation func (s RulesPackage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RulesPackage) GoString() string { return s.String() } // This data type is used in the Finding data type. type ServiceAttributes struct { _ struct{} `type:"structure"` // The ARN of the assessment run during which the finding is generated. AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string"` // The ARN of the rules package that is used to generate the finding. RulesPackageArn *string `locationName:"rulesPackageArn" min:"1" type:"string"` // The schema version of this data type. // // SchemaVersion is a required field SchemaVersion *int64 `locationName:"schemaVersion" type:"integer" required:"true"` } // String returns the string representation func (s ServiceAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ServiceAttributes) GoString() string { return s.String() } type SetTagsForResourceInput struct { _ struct{} `type:"structure"` // The ARN of the assessment template that you want to set tags to. // // ResourceArn is a required field ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"` // A collection of key and value pairs that you want to set to the assessment // template. Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation func (s SetTagsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetTagsForResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetTagsForResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetTagsForResourceInput"} if s.ResourceArn == nil { invalidParams.Add(request.NewErrParamRequired("ResourceArn")) } if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetTagsForResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetTagsForResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetTagsForResourceOutput) GoString() string { return s.String() } type StartAssessmentRunInput struct { _ struct{} `type:"structure"` // You can specify the name for the assessment run, or you can use the auto-generated // name that is based on the assessment template name. The name must be unique // for the assessment template. AssessmentRunName *string `locationName:"assessmentRunName" min:"1" type:"string"` // The ARN of the assessment template of the assessment run that you want to // start. // // AssessmentTemplateArn is a required field AssessmentTemplateArn *string `locationName:"assessmentTemplateArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s StartAssessmentRunInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartAssessmentRunInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartAssessmentRunInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartAssessmentRunInput"} if s.AssessmentRunName != nil && len(*s.AssessmentRunName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssessmentRunName", 1)) } if s.AssessmentTemplateArn == nil { invalidParams.Add(request.NewErrParamRequired("AssessmentTemplateArn")) } if s.AssessmentTemplateArn != nil && len(*s.AssessmentTemplateArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssessmentTemplateArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type StartAssessmentRunOutput struct { _ struct{} `type:"structure"` // The ARN of the assessment run that has been started. // // AssessmentRunArn is a required field AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s StartAssessmentRunOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartAssessmentRunOutput) GoString() string { return s.String() } type StopAssessmentRunInput struct { _ struct{} `type:"structure"` // The ARN of the assessment run that you want to stop. // // AssessmentRunArn is a required field AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s StopAssessmentRunInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopAssessmentRunInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StopAssessmentRunInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StopAssessmentRunInput"} if s.AssessmentRunArn == nil { invalidParams.Add(request.NewErrParamRequired("AssessmentRunArn")) } if s.AssessmentRunArn != nil && len(*s.AssessmentRunArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type StopAssessmentRunOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s StopAssessmentRunOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopAssessmentRunOutput) GoString() string { return s.String() } type SubscribeToEventInput struct { _ struct{} `type:"structure"` // The event for which you want to receive SNS notifications. // // Event is a required field Event *string `locationName:"event" type:"string" required:"true" enum:"Event"` // The ARN of the assessment template that is used during the event for which // you want to receive SNS notifications. // // ResourceArn is a required field ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"` // The ARN of the SNS topic to which the SNS notifications are sent. // // TopicArn is a required field TopicArn *string `locationName:"topicArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s SubscribeToEventInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SubscribeToEventInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SubscribeToEventInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SubscribeToEventInput"} if s.Event == nil { invalidParams.Add(request.NewErrParamRequired("Event")) } if s.ResourceArn == nil { invalidParams.Add(request.NewErrParamRequired("ResourceArn")) } if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) } if s.TopicArn == nil { invalidParams.Add(request.NewErrParamRequired("TopicArn")) } if s.TopicArn != nil && len(*s.TopicArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("TopicArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SubscribeToEventOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SubscribeToEventOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SubscribeToEventOutput) GoString() string { return s.String() } // This data type is used as a response element in the ListEventSubscriptions // action. type Subscription struct { _ struct{} `type:"structure"` // The list of existing event subscriptions. // // EventSubscriptions is a required field EventSubscriptions []*EventSubscription `locationName:"eventSubscriptions" min:"1" type:"list" required:"true"` // The ARN of the assessment template that is used during the event for which // the SNS notification is sent. // // ResourceArn is a required field ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"` // The ARN of the Amazon Simple Notification Service (SNS) topic to which the // SNS notifications are sent. // // TopicArn is a required field TopicArn *string `locationName:"topicArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s Subscription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Subscription) GoString() string { return s.String() } // A key and value pair. This data type is used as a request parameter in the // SetTagsForResource action and a response element in the ListTagsForResource // action. type Tag struct { _ struct{} `type:"structure"` // A tag key. // // Key is a required field Key *string `locationName:"key" min:"1" type:"string" required:"true"` // A value assigned to a tag key. Value *string `locationName:"value" min:"1" type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Value != nil && len(*s.Value) < 1 { invalidParams.Add(request.NewErrParamMinLen("Value", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The metadata about the Amazon Inspector application data metrics collected // by the agent. This data type is used as the response element in the GetTelemetryMetadata // action. type TelemetryMetadata struct { _ struct{} `type:"structure"` // The count of messages that the agent sends to the Amazon Inspector service. // // Count is a required field Count *int64 `locationName:"count" type:"long" required:"true"` // The data size of messages that the agent sends to the Amazon Inspector service. DataSize *int64 `locationName:"dataSize" type:"long"` // A specific type of behavioral data that is collected by the agent. // // MessageType is a required field MessageType *string `locationName:"messageType" min:"1" type:"string" required:"true"` } // String returns the string representation func (s TelemetryMetadata) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TelemetryMetadata) GoString() string { return s.String() } // This data type is used in the AssessmentRunFilter data type. type TimestampRange struct { _ struct{} `type:"structure"` // The minimum value of the timestamp range. BeginDate *time.Time `locationName:"beginDate" type:"timestamp" timestampFormat:"unix"` // The maximum value of the timestamp range. EndDate *time.Time `locationName:"endDate" type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s TimestampRange) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TimestampRange) GoString() string { return s.String() } type UnsubscribeFromEventInput struct { _ struct{} `type:"structure"` // The event for which you want to stop receiving SNS notifications. // // Event is a required field Event *string `locationName:"event" type:"string" required:"true" enum:"Event"` // The ARN of the assessment template that is used during the event for which // you want to stop receiving SNS notifications. // // ResourceArn is a required field ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"` // The ARN of the SNS topic to which SNS notifications are sent. // // TopicArn is a required field TopicArn *string `locationName:"topicArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s UnsubscribeFromEventInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnsubscribeFromEventInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UnsubscribeFromEventInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UnsubscribeFromEventInput"} if s.Event == nil { invalidParams.Add(request.NewErrParamRequired("Event")) } if s.ResourceArn == nil { invalidParams.Add(request.NewErrParamRequired("ResourceArn")) } if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) } if s.TopicArn == nil { invalidParams.Add(request.NewErrParamRequired("TopicArn")) } if s.TopicArn != nil && len(*s.TopicArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("TopicArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UnsubscribeFromEventOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UnsubscribeFromEventOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnsubscribeFromEventOutput) GoString() string { return s.String() } type UpdateAssessmentTargetInput struct { _ struct{} `type:"structure"` // The ARN of the assessment target that you want to update. // // AssessmentTargetArn is a required field AssessmentTargetArn *string `locationName:"assessmentTargetArn" min:"1" type:"string" required:"true"` // The name of the assessment target that you want to update. // // AssessmentTargetName is a required field AssessmentTargetName *string `locationName:"assessmentTargetName" min:"1" type:"string" required:"true"` // The ARN of the resource group that is used to specify the new resource group // to associate with the assessment target. // // ResourceGroupArn is a required field ResourceGroupArn *string `locationName:"resourceGroupArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateAssessmentTargetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAssessmentTargetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateAssessmentTargetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateAssessmentTargetInput"} if s.AssessmentTargetArn == nil { invalidParams.Add(request.NewErrParamRequired("AssessmentTargetArn")) } if s.AssessmentTargetArn != nil && len(*s.AssessmentTargetArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetArn", 1)) } if s.AssessmentTargetName == nil { invalidParams.Add(request.NewErrParamRequired("AssessmentTargetName")) } if s.AssessmentTargetName != nil && len(*s.AssessmentTargetName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetName", 1)) } if s.ResourceGroupArn == nil { invalidParams.Add(request.NewErrParamRequired("ResourceGroupArn")) } if s.ResourceGroupArn != nil && len(*s.ResourceGroupArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceGroupArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateAssessmentTargetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateAssessmentTargetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAssessmentTargetOutput) GoString() string { return s.String() } const ( // AccessDeniedErrorCodeAccessDeniedToAssessmentTarget is a AccessDeniedErrorCode enum value AccessDeniedErrorCodeAccessDeniedToAssessmentTarget = "ACCESS_DENIED_TO_ASSESSMENT_TARGET" // AccessDeniedErrorCodeAccessDeniedToAssessmentTemplate is a AccessDeniedErrorCode enum value AccessDeniedErrorCodeAccessDeniedToAssessmentTemplate = "ACCESS_DENIED_TO_ASSESSMENT_TEMPLATE" // AccessDeniedErrorCodeAccessDeniedToAssessmentRun is a AccessDeniedErrorCode enum value AccessDeniedErrorCodeAccessDeniedToAssessmentRun = "ACCESS_DENIED_TO_ASSESSMENT_RUN" // AccessDeniedErrorCodeAccessDeniedToFinding is a AccessDeniedErrorCode enum value AccessDeniedErrorCodeAccessDeniedToFinding = "ACCESS_DENIED_TO_FINDING" // AccessDeniedErrorCodeAccessDeniedToResourceGroup is a AccessDeniedErrorCode enum value AccessDeniedErrorCodeAccessDeniedToResourceGroup = "ACCESS_DENIED_TO_RESOURCE_GROUP" // AccessDeniedErrorCodeAccessDeniedToRulesPackage is a AccessDeniedErrorCode enum value AccessDeniedErrorCodeAccessDeniedToRulesPackage = "ACCESS_DENIED_TO_RULES_PACKAGE" // AccessDeniedErrorCodeAccessDeniedToSnsTopic is a AccessDeniedErrorCode enum value AccessDeniedErrorCodeAccessDeniedToSnsTopic = "ACCESS_DENIED_TO_SNS_TOPIC" // AccessDeniedErrorCodeAccessDeniedToIamRole is a AccessDeniedErrorCode enum value AccessDeniedErrorCodeAccessDeniedToIamRole = "ACCESS_DENIED_TO_IAM_ROLE" ) const ( // AgentHealthHealthy is a AgentHealth enum value AgentHealthHealthy = "HEALTHY" // AgentHealthUnhealthy is a AgentHealth enum value AgentHealthUnhealthy = "UNHEALTHY" ) const ( // AgentHealthCodeIdle is a AgentHealthCode enum value AgentHealthCodeIdle = "IDLE" // AgentHealthCodeRunning is a AgentHealthCode enum value AgentHealthCodeRunning = "RUNNING" // AgentHealthCodeShutdown is a AgentHealthCode enum value AgentHealthCodeShutdown = "SHUTDOWN" // AgentHealthCodeUnhealthy is a AgentHealthCode enum value AgentHealthCodeUnhealthy = "UNHEALTHY" // AgentHealthCodeThrottled is a AgentHealthCode enum value AgentHealthCodeThrottled = "THROTTLED" // AgentHealthCodeUnknown is a AgentHealthCode enum value AgentHealthCodeUnknown = "UNKNOWN" ) const ( // AssessmentRunNotificationSnsStatusCodeSuccess is a AssessmentRunNotificationSnsStatusCode enum value AssessmentRunNotificationSnsStatusCodeSuccess = "SUCCESS" // AssessmentRunNotificationSnsStatusCodeTopicDoesNotExist is a AssessmentRunNotificationSnsStatusCode enum value AssessmentRunNotificationSnsStatusCodeTopicDoesNotExist = "TOPIC_DOES_NOT_EXIST" // AssessmentRunNotificationSnsStatusCodeAccessDenied is a AssessmentRunNotificationSnsStatusCode enum value AssessmentRunNotificationSnsStatusCodeAccessDenied = "ACCESS_DENIED" // AssessmentRunNotificationSnsStatusCodeInternalError is a AssessmentRunNotificationSnsStatusCode enum value AssessmentRunNotificationSnsStatusCodeInternalError = "INTERNAL_ERROR" ) const ( // AssessmentRunStateCreated is a AssessmentRunState enum value AssessmentRunStateCreated = "CREATED" // AssessmentRunStateStartDataCollectionPending is a AssessmentRunState enum value AssessmentRunStateStartDataCollectionPending = "START_DATA_COLLECTION_PENDING" // AssessmentRunStateStartDataCollectionInProgress is a AssessmentRunState enum value AssessmentRunStateStartDataCollectionInProgress = "START_DATA_COLLECTION_IN_PROGRESS" // AssessmentRunStateCollectingData is a AssessmentRunState enum value AssessmentRunStateCollectingData = "COLLECTING_DATA" // AssessmentRunStateStopDataCollectionPending is a AssessmentRunState enum value AssessmentRunStateStopDataCollectionPending = "STOP_DATA_COLLECTION_PENDING" // AssessmentRunStateDataCollected is a AssessmentRunState enum value AssessmentRunStateDataCollected = "DATA_COLLECTED" // AssessmentRunStateEvaluatingRules is a AssessmentRunState enum value AssessmentRunStateEvaluatingRules = "EVALUATING_RULES" // AssessmentRunStateFailed is a AssessmentRunState enum value AssessmentRunStateFailed = "FAILED" // AssessmentRunStateCompleted is a AssessmentRunState enum value AssessmentRunStateCompleted = "COMPLETED" // AssessmentRunStateCompletedWithErrors is a AssessmentRunState enum value AssessmentRunStateCompletedWithErrors = "COMPLETED_WITH_ERRORS" ) const ( // AssetTypeEc2Instance is a AssetType enum value AssetTypeEc2Instance = "ec2-instance" ) const ( // EventAssessmentRunStarted is a Event enum value EventAssessmentRunStarted = "ASSESSMENT_RUN_STARTED" // EventAssessmentRunCompleted is a Event enum value EventAssessmentRunCompleted = "ASSESSMENT_RUN_COMPLETED" // EventAssessmentRunStateChanged is a Event enum value EventAssessmentRunStateChanged = "ASSESSMENT_RUN_STATE_CHANGED" // EventFindingReported is a Event enum value EventFindingReported = "FINDING_REPORTED" // EventOther is a Event enum value EventOther = "OTHER" ) const ( // FailedItemErrorCodeInvalidArn is a FailedItemErrorCode enum value FailedItemErrorCodeInvalidArn = "INVALID_ARN" // FailedItemErrorCodeDuplicateArn is a FailedItemErrorCode enum value FailedItemErrorCodeDuplicateArn = "DUPLICATE_ARN" // FailedItemErrorCodeItemDoesNotExist is a FailedItemErrorCode enum value FailedItemErrorCodeItemDoesNotExist = "ITEM_DOES_NOT_EXIST" // FailedItemErrorCodeAccessDenied is a FailedItemErrorCode enum value FailedItemErrorCodeAccessDenied = "ACCESS_DENIED" // FailedItemErrorCodeLimitExceeded is a FailedItemErrorCode enum value FailedItemErrorCodeLimitExceeded = "LIMIT_EXCEEDED" // FailedItemErrorCodeInternalError is a FailedItemErrorCode enum value FailedItemErrorCodeInternalError = "INTERNAL_ERROR" ) const ( // InvalidCrossAccountRoleErrorCodeRoleDoesNotExistOrInvalidTrustRelationship is a InvalidCrossAccountRoleErrorCode enum value InvalidCrossAccountRoleErrorCodeRoleDoesNotExistOrInvalidTrustRelationship = "ROLE_DOES_NOT_EXIST_OR_INVALID_TRUST_RELATIONSHIP" // InvalidCrossAccountRoleErrorCodeRoleDoesNotHaveCorrectPolicy is a InvalidCrossAccountRoleErrorCode enum value InvalidCrossAccountRoleErrorCodeRoleDoesNotHaveCorrectPolicy = "ROLE_DOES_NOT_HAVE_CORRECT_POLICY" ) const ( // InvalidInputErrorCodeInvalidAssessmentTargetArn is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidAssessmentTargetArn = "INVALID_ASSESSMENT_TARGET_ARN" // InvalidInputErrorCodeInvalidAssessmentTemplateArn is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidAssessmentTemplateArn = "INVALID_ASSESSMENT_TEMPLATE_ARN" // InvalidInputErrorCodeInvalidAssessmentRunArn is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidAssessmentRunArn = "INVALID_ASSESSMENT_RUN_ARN" // InvalidInputErrorCodeInvalidFindingArn is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidFindingArn = "INVALID_FINDING_ARN" // InvalidInputErrorCodeInvalidResourceGroupArn is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidResourceGroupArn = "INVALID_RESOURCE_GROUP_ARN" // InvalidInputErrorCodeInvalidRulesPackageArn is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidRulesPackageArn = "INVALID_RULES_PACKAGE_ARN" // InvalidInputErrorCodeInvalidResourceArn is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidResourceArn = "INVALID_RESOURCE_ARN" // InvalidInputErrorCodeInvalidSnsTopicArn is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidSnsTopicArn = "INVALID_SNS_TOPIC_ARN" // InvalidInputErrorCodeInvalidIamRoleArn is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidIamRoleArn = "INVALID_IAM_ROLE_ARN" // InvalidInputErrorCodeInvalidAssessmentTargetName is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidAssessmentTargetName = "INVALID_ASSESSMENT_TARGET_NAME" // InvalidInputErrorCodeInvalidAssessmentTargetNamePattern is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidAssessmentTargetNamePattern = "INVALID_ASSESSMENT_TARGET_NAME_PATTERN" // InvalidInputErrorCodeInvalidAssessmentTemplateName is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidAssessmentTemplateName = "INVALID_ASSESSMENT_TEMPLATE_NAME" // InvalidInputErrorCodeInvalidAssessmentTemplateNamePattern is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidAssessmentTemplateNamePattern = "INVALID_ASSESSMENT_TEMPLATE_NAME_PATTERN" // InvalidInputErrorCodeInvalidAssessmentTemplateDuration is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidAssessmentTemplateDuration = "INVALID_ASSESSMENT_TEMPLATE_DURATION" // InvalidInputErrorCodeInvalidAssessmentTemplateDurationRange is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidAssessmentTemplateDurationRange = "INVALID_ASSESSMENT_TEMPLATE_DURATION_RANGE" // InvalidInputErrorCodeInvalidAssessmentRunDurationRange is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidAssessmentRunDurationRange = "INVALID_ASSESSMENT_RUN_DURATION_RANGE" // InvalidInputErrorCodeInvalidAssessmentRunStartTimeRange is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidAssessmentRunStartTimeRange = "INVALID_ASSESSMENT_RUN_START_TIME_RANGE" // InvalidInputErrorCodeInvalidAssessmentRunCompletionTimeRange is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidAssessmentRunCompletionTimeRange = "INVALID_ASSESSMENT_RUN_COMPLETION_TIME_RANGE" // InvalidInputErrorCodeInvalidAssessmentRunStateChangeTimeRange is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidAssessmentRunStateChangeTimeRange = "INVALID_ASSESSMENT_RUN_STATE_CHANGE_TIME_RANGE" // InvalidInputErrorCodeInvalidAssessmentRunState is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidAssessmentRunState = "INVALID_ASSESSMENT_RUN_STATE" // InvalidInputErrorCodeInvalidTag is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidTag = "INVALID_TAG" // InvalidInputErrorCodeInvalidTagKey is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidTagKey = "INVALID_TAG_KEY" // InvalidInputErrorCodeInvalidTagValue is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidTagValue = "INVALID_TAG_VALUE" // InvalidInputErrorCodeInvalidResourceGroupTagKey is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidResourceGroupTagKey = "INVALID_RESOURCE_GROUP_TAG_KEY" // InvalidInputErrorCodeInvalidResourceGroupTagValue is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidResourceGroupTagValue = "INVALID_RESOURCE_GROUP_TAG_VALUE" // InvalidInputErrorCodeInvalidAttribute is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidAttribute = "INVALID_ATTRIBUTE" // InvalidInputErrorCodeInvalidUserAttribute is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidUserAttribute = "INVALID_USER_ATTRIBUTE" // InvalidInputErrorCodeInvalidUserAttributeKey is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidUserAttributeKey = "INVALID_USER_ATTRIBUTE_KEY" // InvalidInputErrorCodeInvalidUserAttributeValue is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidUserAttributeValue = "INVALID_USER_ATTRIBUTE_VALUE" // InvalidInputErrorCodeInvalidPaginationToken is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidPaginationToken = "INVALID_PAGINATION_TOKEN" // InvalidInputErrorCodeInvalidMaxResults is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidMaxResults = "INVALID_MAX_RESULTS" // InvalidInputErrorCodeInvalidAgentId is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidAgentId = "INVALID_AGENT_ID" // InvalidInputErrorCodeInvalidAutoScalingGroup is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidAutoScalingGroup = "INVALID_AUTO_SCALING_GROUP" // InvalidInputErrorCodeInvalidRuleName is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidRuleName = "INVALID_RULE_NAME" // InvalidInputErrorCodeInvalidSeverity is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidSeverity = "INVALID_SEVERITY" // InvalidInputErrorCodeInvalidLocale is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidLocale = "INVALID_LOCALE" // InvalidInputErrorCodeInvalidEvent is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidEvent = "INVALID_EVENT" // InvalidInputErrorCodeAssessmentTargetNameAlreadyTaken is a InvalidInputErrorCode enum value InvalidInputErrorCodeAssessmentTargetNameAlreadyTaken = "ASSESSMENT_TARGET_NAME_ALREADY_TAKEN" // InvalidInputErrorCodeAssessmentTemplateNameAlreadyTaken is a InvalidInputErrorCode enum value InvalidInputErrorCodeAssessmentTemplateNameAlreadyTaken = "ASSESSMENT_TEMPLATE_NAME_ALREADY_TAKEN" // InvalidInputErrorCodeInvalidNumberOfAssessmentTargetArns is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidNumberOfAssessmentTargetArns = "INVALID_NUMBER_OF_ASSESSMENT_TARGET_ARNS" // InvalidInputErrorCodeInvalidNumberOfAssessmentTemplateArns is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidNumberOfAssessmentTemplateArns = "INVALID_NUMBER_OF_ASSESSMENT_TEMPLATE_ARNS" // InvalidInputErrorCodeInvalidNumberOfAssessmentRunArns is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidNumberOfAssessmentRunArns = "INVALID_NUMBER_OF_ASSESSMENT_RUN_ARNS" // InvalidInputErrorCodeInvalidNumberOfFindingArns is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidNumberOfFindingArns = "INVALID_NUMBER_OF_FINDING_ARNS" // InvalidInputErrorCodeInvalidNumberOfResourceGroupArns is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidNumberOfResourceGroupArns = "INVALID_NUMBER_OF_RESOURCE_GROUP_ARNS" // InvalidInputErrorCodeInvalidNumberOfRulesPackageArns is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidNumberOfRulesPackageArns = "INVALID_NUMBER_OF_RULES_PACKAGE_ARNS" // InvalidInputErrorCodeInvalidNumberOfAssessmentRunStates is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidNumberOfAssessmentRunStates = "INVALID_NUMBER_OF_ASSESSMENT_RUN_STATES" // InvalidInputErrorCodeInvalidNumberOfTags is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidNumberOfTags = "INVALID_NUMBER_OF_TAGS" // InvalidInputErrorCodeInvalidNumberOfResourceGroupTags is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidNumberOfResourceGroupTags = "INVALID_NUMBER_OF_RESOURCE_GROUP_TAGS" // InvalidInputErrorCodeInvalidNumberOfAttributes is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidNumberOfAttributes = "INVALID_NUMBER_OF_ATTRIBUTES" // InvalidInputErrorCodeInvalidNumberOfUserAttributes is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidNumberOfUserAttributes = "INVALID_NUMBER_OF_USER_ATTRIBUTES" // InvalidInputErrorCodeInvalidNumberOfAgentIds is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidNumberOfAgentIds = "INVALID_NUMBER_OF_AGENT_IDS" // InvalidInputErrorCodeInvalidNumberOfAutoScalingGroups is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidNumberOfAutoScalingGroups = "INVALID_NUMBER_OF_AUTO_SCALING_GROUPS" // InvalidInputErrorCodeInvalidNumberOfRuleNames is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidNumberOfRuleNames = "INVALID_NUMBER_OF_RULE_NAMES" // InvalidInputErrorCodeInvalidNumberOfSeverities is a InvalidInputErrorCode enum value InvalidInputErrorCodeInvalidNumberOfSeverities = "INVALID_NUMBER_OF_SEVERITIES" ) const ( // LimitExceededErrorCodeAssessmentTargetLimitExceeded is a LimitExceededErrorCode enum value LimitExceededErrorCodeAssessmentTargetLimitExceeded = "ASSESSMENT_TARGET_LIMIT_EXCEEDED" // LimitExceededErrorCodeAssessmentTemplateLimitExceeded is a LimitExceededErrorCode enum value LimitExceededErrorCodeAssessmentTemplateLimitExceeded = "ASSESSMENT_TEMPLATE_LIMIT_EXCEEDED" // LimitExceededErrorCodeAssessmentRunLimitExceeded is a LimitExceededErrorCode enum value LimitExceededErrorCodeAssessmentRunLimitExceeded = "ASSESSMENT_RUN_LIMIT_EXCEEDED" // LimitExceededErrorCodeResourceGroupLimitExceeded is a LimitExceededErrorCode enum value LimitExceededErrorCodeResourceGroupLimitExceeded = "RESOURCE_GROUP_LIMIT_EXCEEDED" // LimitExceededErrorCodeEventSubscriptionLimitExceeded is a LimitExceededErrorCode enum value LimitExceededErrorCodeEventSubscriptionLimitExceeded = "EVENT_SUBSCRIPTION_LIMIT_EXCEEDED" ) const ( // LocaleEnUs is a Locale enum value LocaleEnUs = "EN_US" ) const ( // NoSuchEntityErrorCodeAssessmentTargetDoesNotExist is a NoSuchEntityErrorCode enum value NoSuchEntityErrorCodeAssessmentTargetDoesNotExist = "ASSESSMENT_TARGET_DOES_NOT_EXIST" // NoSuchEntityErrorCodeAssessmentTemplateDoesNotExist is a NoSuchEntityErrorCode enum value NoSuchEntityErrorCodeAssessmentTemplateDoesNotExist = "ASSESSMENT_TEMPLATE_DOES_NOT_EXIST" // NoSuchEntityErrorCodeAssessmentRunDoesNotExist is a NoSuchEntityErrorCode enum value NoSuchEntityErrorCodeAssessmentRunDoesNotExist = "ASSESSMENT_RUN_DOES_NOT_EXIST" // NoSuchEntityErrorCodeFindingDoesNotExist is a NoSuchEntityErrorCode enum value NoSuchEntityErrorCodeFindingDoesNotExist = "FINDING_DOES_NOT_EXIST" // NoSuchEntityErrorCodeResourceGroupDoesNotExist is a NoSuchEntityErrorCode enum value NoSuchEntityErrorCodeResourceGroupDoesNotExist = "RESOURCE_GROUP_DOES_NOT_EXIST" // NoSuchEntityErrorCodeRulesPackageDoesNotExist is a NoSuchEntityErrorCode enum value NoSuchEntityErrorCodeRulesPackageDoesNotExist = "RULES_PACKAGE_DOES_NOT_EXIST" // NoSuchEntityErrorCodeSnsTopicDoesNotExist is a NoSuchEntityErrorCode enum value NoSuchEntityErrorCodeSnsTopicDoesNotExist = "SNS_TOPIC_DOES_NOT_EXIST" // NoSuchEntityErrorCodeIamRoleDoesNotExist is a NoSuchEntityErrorCode enum value NoSuchEntityErrorCodeIamRoleDoesNotExist = "IAM_ROLE_DOES_NOT_EXIST" ) const ( // SeverityLow is a Severity enum value SeverityLow = "Low" // SeverityMedium is a Severity enum value SeverityMedium = "Medium" // SeverityHigh is a Severity enum value SeverityHigh = "High" // SeverityInformational is a Severity enum value SeverityInformational = "Informational" // SeverityUndefined is a Severity enum value SeverityUndefined = "Undefined" ) aws-sdk-go-1.4.22/service/inspector/examples_test.go000066400000000000000000000550311300374646400224410ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package inspector_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/inspector" ) var _ time.Duration var _ bytes.Buffer func ExampleInspector_AddAttributesToFindings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.AddAttributesToFindingsInput{ Attributes: []*inspector.Attribute{ // Required { // Required Key: aws.String("AttributeKey"), // Required Value: aws.String("AttributeValue"), }, // More values... }, FindingArns: []*string{ // Required aws.String("Arn"), // Required // More values... }, } resp, err := svc.AddAttributesToFindings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_CreateAssessmentTarget() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.CreateAssessmentTargetInput{ AssessmentTargetName: aws.String("AssessmentTargetName"), // Required ResourceGroupArn: aws.String("Arn"), // Required } resp, err := svc.CreateAssessmentTarget(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_CreateAssessmentTemplate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.CreateAssessmentTemplateInput{ AssessmentTargetArn: aws.String("Arn"), // Required AssessmentTemplateName: aws.String("AssessmentTemplateName"), // Required DurationInSeconds: aws.Int64(1), // Required RulesPackageArns: []*string{ // Required aws.String("Arn"), // Required // More values... }, UserAttributesForFindings: []*inspector.Attribute{ { // Required Key: aws.String("AttributeKey"), // Required Value: aws.String("AttributeValue"), }, // More values... }, } resp, err := svc.CreateAssessmentTemplate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_CreateResourceGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.CreateResourceGroupInput{ ResourceGroupTags: []*inspector.ResourceGroupTag{ // Required { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), }, // More values... }, } resp, err := svc.CreateResourceGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_DeleteAssessmentRun() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.DeleteAssessmentRunInput{ AssessmentRunArn: aws.String("Arn"), // Required } resp, err := svc.DeleteAssessmentRun(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_DeleteAssessmentTarget() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.DeleteAssessmentTargetInput{ AssessmentTargetArn: aws.String("Arn"), // Required } resp, err := svc.DeleteAssessmentTarget(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_DeleteAssessmentTemplate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.DeleteAssessmentTemplateInput{ AssessmentTemplateArn: aws.String("Arn"), // Required } resp, err := svc.DeleteAssessmentTemplate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_DescribeAssessmentRuns() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.DescribeAssessmentRunsInput{ AssessmentRunArns: []*string{ // Required aws.String("Arn"), // Required // More values... }, } resp, err := svc.DescribeAssessmentRuns(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_DescribeAssessmentTargets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.DescribeAssessmentTargetsInput{ AssessmentTargetArns: []*string{ // Required aws.String("Arn"), // Required // More values... }, } resp, err := svc.DescribeAssessmentTargets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_DescribeAssessmentTemplates() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.DescribeAssessmentTemplatesInput{ AssessmentTemplateArns: []*string{ // Required aws.String("Arn"), // Required // More values... }, } resp, err := svc.DescribeAssessmentTemplates(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_DescribeCrossAccountAccessRole() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) var params *inspector.DescribeCrossAccountAccessRoleInput resp, err := svc.DescribeCrossAccountAccessRole(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_DescribeFindings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.DescribeFindingsInput{ FindingArns: []*string{ // Required aws.String("Arn"), // Required // More values... }, Locale: aws.String("Locale"), } resp, err := svc.DescribeFindings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_DescribeResourceGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.DescribeResourceGroupsInput{ ResourceGroupArns: []*string{ // Required aws.String("Arn"), // Required // More values... }, } resp, err := svc.DescribeResourceGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_DescribeRulesPackages() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.DescribeRulesPackagesInput{ RulesPackageArns: []*string{ // Required aws.String("Arn"), // Required // More values... }, Locale: aws.String("Locale"), } resp, err := svc.DescribeRulesPackages(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_GetTelemetryMetadata() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.GetTelemetryMetadataInput{ AssessmentRunArn: aws.String("Arn"), // Required } resp, err := svc.GetTelemetryMetadata(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_ListAssessmentRunAgents() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.ListAssessmentRunAgentsInput{ AssessmentRunArn: aws.String("Arn"), // Required Filter: &inspector.AgentFilter{ AgentHealthCodes: []*string{ // Required aws.String("AgentHealthCode"), // Required // More values... }, AgentHealths: []*string{ // Required aws.String("AgentHealth"), // Required // More values... }, }, MaxResults: aws.Int64(1), NextToken: aws.String("PaginationToken"), } resp, err := svc.ListAssessmentRunAgents(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_ListAssessmentRuns() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.ListAssessmentRunsInput{ AssessmentTemplateArns: []*string{ aws.String("Arn"), // Required // More values... }, Filter: &inspector.AssessmentRunFilter{ CompletionTimeRange: &inspector.TimestampRange{ BeginDate: aws.Time(time.Now()), EndDate: aws.Time(time.Now()), }, DurationRange: &inspector.DurationRange{ MaxSeconds: aws.Int64(1), MinSeconds: aws.Int64(1), }, NamePattern: aws.String("NamePattern"), RulesPackageArns: []*string{ aws.String("Arn"), // Required // More values... }, StartTimeRange: &inspector.TimestampRange{ BeginDate: aws.Time(time.Now()), EndDate: aws.Time(time.Now()), }, StateChangeTimeRange: &inspector.TimestampRange{ BeginDate: aws.Time(time.Now()), EndDate: aws.Time(time.Now()), }, States: []*string{ aws.String("AssessmentRunState"), // Required // More values... }, }, MaxResults: aws.Int64(1), NextToken: aws.String("PaginationToken"), } resp, err := svc.ListAssessmentRuns(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_ListAssessmentTargets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.ListAssessmentTargetsInput{ Filter: &inspector.AssessmentTargetFilter{ AssessmentTargetNamePattern: aws.String("NamePattern"), }, MaxResults: aws.Int64(1), NextToken: aws.String("PaginationToken"), } resp, err := svc.ListAssessmentTargets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_ListAssessmentTemplates() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.ListAssessmentTemplatesInput{ AssessmentTargetArns: []*string{ aws.String("Arn"), // Required // More values... }, Filter: &inspector.AssessmentTemplateFilter{ DurationRange: &inspector.DurationRange{ MaxSeconds: aws.Int64(1), MinSeconds: aws.Int64(1), }, NamePattern: aws.String("NamePattern"), RulesPackageArns: []*string{ aws.String("Arn"), // Required // More values... }, }, MaxResults: aws.Int64(1), NextToken: aws.String("PaginationToken"), } resp, err := svc.ListAssessmentTemplates(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_ListEventSubscriptions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.ListEventSubscriptionsInput{ MaxResults: aws.Int64(1), NextToken: aws.String("PaginationToken"), ResourceArn: aws.String("Arn"), } resp, err := svc.ListEventSubscriptions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_ListFindings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.ListFindingsInput{ AssessmentRunArns: []*string{ aws.String("Arn"), // Required // More values... }, Filter: &inspector.FindingFilter{ AgentIds: []*string{ aws.String("AgentId"), // Required // More values... }, Attributes: []*inspector.Attribute{ { // Required Key: aws.String("AttributeKey"), // Required Value: aws.String("AttributeValue"), }, // More values... }, AutoScalingGroups: []*string{ aws.String("AutoScalingGroup"), // Required // More values... }, CreationTimeRange: &inspector.TimestampRange{ BeginDate: aws.Time(time.Now()), EndDate: aws.Time(time.Now()), }, RuleNames: []*string{ aws.String("RuleName"), // Required // More values... }, RulesPackageArns: []*string{ aws.String("Arn"), // Required // More values... }, Severities: []*string{ aws.String("Severity"), // Required // More values... }, UserAttributes: []*inspector.Attribute{ { // Required Key: aws.String("AttributeKey"), // Required Value: aws.String("AttributeValue"), }, // More values... }, }, MaxResults: aws.Int64(1), NextToken: aws.String("PaginationToken"), } resp, err := svc.ListFindings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_ListRulesPackages() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.ListRulesPackagesInput{ MaxResults: aws.Int64(1), NextToken: aws.String("PaginationToken"), } resp, err := svc.ListRulesPackages(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_ListTagsForResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.ListTagsForResourceInput{ ResourceArn: aws.String("Arn"), // Required } resp, err := svc.ListTagsForResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_PreviewAgents() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.PreviewAgentsInput{ PreviewAgentsArn: aws.String("Arn"), // Required MaxResults: aws.Int64(1), NextToken: aws.String("PaginationToken"), } resp, err := svc.PreviewAgents(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_RegisterCrossAccountAccessRole() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.RegisterCrossAccountAccessRoleInput{ RoleArn: aws.String("Arn"), // Required } resp, err := svc.RegisterCrossAccountAccessRole(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_RemoveAttributesFromFindings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.RemoveAttributesFromFindingsInput{ AttributeKeys: []*string{ // Required aws.String("AttributeKey"), // Required // More values... }, FindingArns: []*string{ // Required aws.String("Arn"), // Required // More values... }, } resp, err := svc.RemoveAttributesFromFindings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_SetTagsForResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.SetTagsForResourceInput{ ResourceArn: aws.String("Arn"), // Required Tags: []*inspector.Tag{ { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), }, // More values... }, } resp, err := svc.SetTagsForResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_StartAssessmentRun() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.StartAssessmentRunInput{ AssessmentTemplateArn: aws.String("Arn"), // Required AssessmentRunName: aws.String("AssessmentRunName"), } resp, err := svc.StartAssessmentRun(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_StopAssessmentRun() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.StopAssessmentRunInput{ AssessmentRunArn: aws.String("Arn"), // Required } resp, err := svc.StopAssessmentRun(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_SubscribeToEvent() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.SubscribeToEventInput{ Event: aws.String("Event"), // Required ResourceArn: aws.String("Arn"), // Required TopicArn: aws.String("Arn"), // Required } resp, err := svc.SubscribeToEvent(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_UnsubscribeFromEvent() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.UnsubscribeFromEventInput{ Event: aws.String("Event"), // Required ResourceArn: aws.String("Arn"), // Required TopicArn: aws.String("Arn"), // Required } resp, err := svc.UnsubscribeFromEvent(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleInspector_UpdateAssessmentTarget() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := inspector.New(sess) params := &inspector.UpdateAssessmentTargetInput{ AssessmentTargetArn: aws.String("Arn"), // Required AssessmentTargetName: aws.String("AssessmentTargetName"), // Required ResourceGroupArn: aws.String("Arn"), // Required } resp, err := svc.UpdateAssessmentTarget(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/inspector/inspectoriface/000077500000000000000000000000001300374646400222275ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/inspector/inspectoriface/interface.go000066400000000000000000000233061300374646400245220ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package inspectoriface provides an interface to enable mocking the Amazon Inspector service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package inspectoriface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/inspector" ) // InspectorAPI provides an interface to enable mocking the // inspector.Inspector service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Inspector. // func myFunc(svc inspectoriface.InspectorAPI) bool { // // Make svc.AddAttributesToFindings request // } // // func main() { // sess := session.New() // svc := inspector.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockInspectorClient struct { // inspectoriface.InspectorAPI // } // func (m *mockInspectorClient) AddAttributesToFindings(input *inspector.AddAttributesToFindingsInput) (*inspector.AddAttributesToFindingsOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockInspectorClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type InspectorAPI interface { AddAttributesToFindingsRequest(*inspector.AddAttributesToFindingsInput) (*request.Request, *inspector.AddAttributesToFindingsOutput) AddAttributesToFindings(*inspector.AddAttributesToFindingsInput) (*inspector.AddAttributesToFindingsOutput, error) CreateAssessmentTargetRequest(*inspector.CreateAssessmentTargetInput) (*request.Request, *inspector.CreateAssessmentTargetOutput) CreateAssessmentTarget(*inspector.CreateAssessmentTargetInput) (*inspector.CreateAssessmentTargetOutput, error) CreateAssessmentTemplateRequest(*inspector.CreateAssessmentTemplateInput) (*request.Request, *inspector.CreateAssessmentTemplateOutput) CreateAssessmentTemplate(*inspector.CreateAssessmentTemplateInput) (*inspector.CreateAssessmentTemplateOutput, error) CreateResourceGroupRequest(*inspector.CreateResourceGroupInput) (*request.Request, *inspector.CreateResourceGroupOutput) CreateResourceGroup(*inspector.CreateResourceGroupInput) (*inspector.CreateResourceGroupOutput, error) DeleteAssessmentRunRequest(*inspector.DeleteAssessmentRunInput) (*request.Request, *inspector.DeleteAssessmentRunOutput) DeleteAssessmentRun(*inspector.DeleteAssessmentRunInput) (*inspector.DeleteAssessmentRunOutput, error) DeleteAssessmentTargetRequest(*inspector.DeleteAssessmentTargetInput) (*request.Request, *inspector.DeleteAssessmentTargetOutput) DeleteAssessmentTarget(*inspector.DeleteAssessmentTargetInput) (*inspector.DeleteAssessmentTargetOutput, error) DeleteAssessmentTemplateRequest(*inspector.DeleteAssessmentTemplateInput) (*request.Request, *inspector.DeleteAssessmentTemplateOutput) DeleteAssessmentTemplate(*inspector.DeleteAssessmentTemplateInput) (*inspector.DeleteAssessmentTemplateOutput, error) DescribeAssessmentRunsRequest(*inspector.DescribeAssessmentRunsInput) (*request.Request, *inspector.DescribeAssessmentRunsOutput) DescribeAssessmentRuns(*inspector.DescribeAssessmentRunsInput) (*inspector.DescribeAssessmentRunsOutput, error) DescribeAssessmentTargetsRequest(*inspector.DescribeAssessmentTargetsInput) (*request.Request, *inspector.DescribeAssessmentTargetsOutput) DescribeAssessmentTargets(*inspector.DescribeAssessmentTargetsInput) (*inspector.DescribeAssessmentTargetsOutput, error) DescribeAssessmentTemplatesRequest(*inspector.DescribeAssessmentTemplatesInput) (*request.Request, *inspector.DescribeAssessmentTemplatesOutput) DescribeAssessmentTemplates(*inspector.DescribeAssessmentTemplatesInput) (*inspector.DescribeAssessmentTemplatesOutput, error) DescribeCrossAccountAccessRoleRequest(*inspector.DescribeCrossAccountAccessRoleInput) (*request.Request, *inspector.DescribeCrossAccountAccessRoleOutput) DescribeCrossAccountAccessRole(*inspector.DescribeCrossAccountAccessRoleInput) (*inspector.DescribeCrossAccountAccessRoleOutput, error) DescribeFindingsRequest(*inspector.DescribeFindingsInput) (*request.Request, *inspector.DescribeFindingsOutput) DescribeFindings(*inspector.DescribeFindingsInput) (*inspector.DescribeFindingsOutput, error) DescribeResourceGroupsRequest(*inspector.DescribeResourceGroupsInput) (*request.Request, *inspector.DescribeResourceGroupsOutput) DescribeResourceGroups(*inspector.DescribeResourceGroupsInput) (*inspector.DescribeResourceGroupsOutput, error) DescribeRulesPackagesRequest(*inspector.DescribeRulesPackagesInput) (*request.Request, *inspector.DescribeRulesPackagesOutput) DescribeRulesPackages(*inspector.DescribeRulesPackagesInput) (*inspector.DescribeRulesPackagesOutput, error) GetTelemetryMetadataRequest(*inspector.GetTelemetryMetadataInput) (*request.Request, *inspector.GetTelemetryMetadataOutput) GetTelemetryMetadata(*inspector.GetTelemetryMetadataInput) (*inspector.GetTelemetryMetadataOutput, error) ListAssessmentRunAgentsRequest(*inspector.ListAssessmentRunAgentsInput) (*request.Request, *inspector.ListAssessmentRunAgentsOutput) ListAssessmentRunAgents(*inspector.ListAssessmentRunAgentsInput) (*inspector.ListAssessmentRunAgentsOutput, error) ListAssessmentRunsRequest(*inspector.ListAssessmentRunsInput) (*request.Request, *inspector.ListAssessmentRunsOutput) ListAssessmentRuns(*inspector.ListAssessmentRunsInput) (*inspector.ListAssessmentRunsOutput, error) ListAssessmentTargetsRequest(*inspector.ListAssessmentTargetsInput) (*request.Request, *inspector.ListAssessmentTargetsOutput) ListAssessmentTargets(*inspector.ListAssessmentTargetsInput) (*inspector.ListAssessmentTargetsOutput, error) ListAssessmentTemplatesRequest(*inspector.ListAssessmentTemplatesInput) (*request.Request, *inspector.ListAssessmentTemplatesOutput) ListAssessmentTemplates(*inspector.ListAssessmentTemplatesInput) (*inspector.ListAssessmentTemplatesOutput, error) ListEventSubscriptionsRequest(*inspector.ListEventSubscriptionsInput) (*request.Request, *inspector.ListEventSubscriptionsOutput) ListEventSubscriptions(*inspector.ListEventSubscriptionsInput) (*inspector.ListEventSubscriptionsOutput, error) ListFindingsRequest(*inspector.ListFindingsInput) (*request.Request, *inspector.ListFindingsOutput) ListFindings(*inspector.ListFindingsInput) (*inspector.ListFindingsOutput, error) ListRulesPackagesRequest(*inspector.ListRulesPackagesInput) (*request.Request, *inspector.ListRulesPackagesOutput) ListRulesPackages(*inspector.ListRulesPackagesInput) (*inspector.ListRulesPackagesOutput, error) ListTagsForResourceRequest(*inspector.ListTagsForResourceInput) (*request.Request, *inspector.ListTagsForResourceOutput) ListTagsForResource(*inspector.ListTagsForResourceInput) (*inspector.ListTagsForResourceOutput, error) PreviewAgentsRequest(*inspector.PreviewAgentsInput) (*request.Request, *inspector.PreviewAgentsOutput) PreviewAgents(*inspector.PreviewAgentsInput) (*inspector.PreviewAgentsOutput, error) RegisterCrossAccountAccessRoleRequest(*inspector.RegisterCrossAccountAccessRoleInput) (*request.Request, *inspector.RegisterCrossAccountAccessRoleOutput) RegisterCrossAccountAccessRole(*inspector.RegisterCrossAccountAccessRoleInput) (*inspector.RegisterCrossAccountAccessRoleOutput, error) RemoveAttributesFromFindingsRequest(*inspector.RemoveAttributesFromFindingsInput) (*request.Request, *inspector.RemoveAttributesFromFindingsOutput) RemoveAttributesFromFindings(*inspector.RemoveAttributesFromFindingsInput) (*inspector.RemoveAttributesFromFindingsOutput, error) SetTagsForResourceRequest(*inspector.SetTagsForResourceInput) (*request.Request, *inspector.SetTagsForResourceOutput) SetTagsForResource(*inspector.SetTagsForResourceInput) (*inspector.SetTagsForResourceOutput, error) StartAssessmentRunRequest(*inspector.StartAssessmentRunInput) (*request.Request, *inspector.StartAssessmentRunOutput) StartAssessmentRun(*inspector.StartAssessmentRunInput) (*inspector.StartAssessmentRunOutput, error) StopAssessmentRunRequest(*inspector.StopAssessmentRunInput) (*request.Request, *inspector.StopAssessmentRunOutput) StopAssessmentRun(*inspector.StopAssessmentRunInput) (*inspector.StopAssessmentRunOutput, error) SubscribeToEventRequest(*inspector.SubscribeToEventInput) (*request.Request, *inspector.SubscribeToEventOutput) SubscribeToEvent(*inspector.SubscribeToEventInput) (*inspector.SubscribeToEventOutput, error) UnsubscribeFromEventRequest(*inspector.UnsubscribeFromEventInput) (*request.Request, *inspector.UnsubscribeFromEventOutput) UnsubscribeFromEvent(*inspector.UnsubscribeFromEventInput) (*inspector.UnsubscribeFromEventOutput, error) UpdateAssessmentTargetRequest(*inspector.UpdateAssessmentTargetInput) (*request.Request, *inspector.UpdateAssessmentTargetOutput) UpdateAssessmentTarget(*inspector.UpdateAssessmentTargetInput) (*inspector.UpdateAssessmentTargetOutput, error) } var _ InspectorAPI = (*inspector.Inspector)(nil) aws-sdk-go-1.4.22/service/inspector/service.go000066400000000000000000000056771300374646400212370ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package inspector import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Amazon Inspector enables you to analyze the behavior of your AWS resources // and to identify potential security issues. For more information, see Amazon // Inspector User Guide (http://docs.aws.amazon.com/inspector/latest/userguide/inspector_introduction.html). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type Inspector struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "inspector" // New creates a new instance of the Inspector client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a Inspector client from just a session. // svc := inspector.New(mySession) // // // Create a Inspector client with additional configuration // svc := inspector.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *Inspector { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *Inspector { svc := &Inspector{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2016-02-16", JSONVersion: "1.1", TargetPrefix: "InspectorService", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a Inspector operation and runs any // custom request initialization. func (c *Inspector) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/iot/000077500000000000000000000000001300374646400160165ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/iot/api.go000066400000000000000000011135011300374646400171200ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package iot provides a client for AWS IoT. package iot import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) const opAcceptCertificateTransfer = "AcceptCertificateTransfer" // AcceptCertificateTransferRequest generates a "aws/request.Request" representing the // client's request for the AcceptCertificateTransfer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AcceptCertificateTransfer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AcceptCertificateTransfer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AcceptCertificateTransferRequest method. // req, resp := client.AcceptCertificateTransferRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) AcceptCertificateTransferRequest(input *AcceptCertificateTransferInput) (req *request.Request, output *AcceptCertificateTransferOutput) { op := &request.Operation{ Name: opAcceptCertificateTransfer, HTTPMethod: "PATCH", HTTPPath: "/accept-certificate-transfer/{certificateId}", } if input == nil { input = &AcceptCertificateTransferInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AcceptCertificateTransferOutput{} req.Data = output return } // AcceptCertificateTransfer API operation for AWS IoT. // // Accepts a pending certificate transfer. The default state of the certificate // is INACTIVE. // // To check for pending certificate transfers, call ListCertificates to enumerate // your certificates. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation AcceptCertificateTransfer for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * TransferAlreadyCompletedException // You can't revert the certificate transfer because the transfer is already // complete. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) AcceptCertificateTransfer(input *AcceptCertificateTransferInput) (*AcceptCertificateTransferOutput, error) { req, out := c.AcceptCertificateTransferRequest(input) err := req.Send() return out, err } const opAttachPrincipalPolicy = "AttachPrincipalPolicy" // AttachPrincipalPolicyRequest generates a "aws/request.Request" representing the // client's request for the AttachPrincipalPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AttachPrincipalPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AttachPrincipalPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AttachPrincipalPolicyRequest method. // req, resp := client.AttachPrincipalPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) AttachPrincipalPolicyRequest(input *AttachPrincipalPolicyInput) (req *request.Request, output *AttachPrincipalPolicyOutput) { op := &request.Operation{ Name: opAttachPrincipalPolicy, HTTPMethod: "PUT", HTTPPath: "/principal-policies/{policyName}", } if input == nil { input = &AttachPrincipalPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AttachPrincipalPolicyOutput{} req.Data = output return } // AttachPrincipalPolicy API operation for AWS IoT. // // Attaches the specified policy to the specified principal (certificate or // other credential). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation AttachPrincipalPolicy for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // // * LimitExceededException // The number of attached entities exceeds the limit. // func (c *IoT) AttachPrincipalPolicy(input *AttachPrincipalPolicyInput) (*AttachPrincipalPolicyOutput, error) { req, out := c.AttachPrincipalPolicyRequest(input) err := req.Send() return out, err } const opAttachThingPrincipal = "AttachThingPrincipal" // AttachThingPrincipalRequest generates a "aws/request.Request" representing the // client's request for the AttachThingPrincipal operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AttachThingPrincipal for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AttachThingPrincipal method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AttachThingPrincipalRequest method. // req, resp := client.AttachThingPrincipalRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) AttachThingPrincipalRequest(input *AttachThingPrincipalInput) (req *request.Request, output *AttachThingPrincipalOutput) { op := &request.Operation{ Name: opAttachThingPrincipal, HTTPMethod: "PUT", HTTPPath: "/things/{thingName}/principals", } if input == nil { input = &AttachThingPrincipalInput{} } req = c.newRequest(op, input, output) output = &AttachThingPrincipalOutput{} req.Data = output return } // AttachThingPrincipal API operation for AWS IoT. // // Attaches the specified principal to the specified thing. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation AttachThingPrincipal for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) AttachThingPrincipal(input *AttachThingPrincipalInput) (*AttachThingPrincipalOutput, error) { req, out := c.AttachThingPrincipalRequest(input) err := req.Send() return out, err } const opCancelCertificateTransfer = "CancelCertificateTransfer" // CancelCertificateTransferRequest generates a "aws/request.Request" representing the // client's request for the CancelCertificateTransfer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CancelCertificateTransfer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CancelCertificateTransfer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CancelCertificateTransferRequest method. // req, resp := client.CancelCertificateTransferRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) CancelCertificateTransferRequest(input *CancelCertificateTransferInput) (req *request.Request, output *CancelCertificateTransferOutput) { op := &request.Operation{ Name: opCancelCertificateTransfer, HTTPMethod: "PATCH", HTTPPath: "/cancel-certificate-transfer/{certificateId}", } if input == nil { input = &CancelCertificateTransferInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CancelCertificateTransferOutput{} req.Data = output return } // CancelCertificateTransfer API operation for AWS IoT. // // Cancels a pending transfer for the specified certificate. // // Note Only the transfer source account can use this operation to cancel a // transfer. (Transfer destinations can use RejectCertificateTransfer instead.) // After transfer, AWS IoT returns the certificate to the source account in // the INACTIVE state. After the destination account has accepted the transfer, // the transfer cannot be cancelled. // // After a certificate transfer is cancelled, the status of the certificate // changes from PENDING_TRANSFER to INACTIVE. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation CancelCertificateTransfer for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * TransferAlreadyCompletedException // You can't revert the certificate transfer because the transfer is already // complete. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) CancelCertificateTransfer(input *CancelCertificateTransferInput) (*CancelCertificateTransferOutput, error) { req, out := c.CancelCertificateTransferRequest(input) err := req.Send() return out, err } const opCreateCertificateFromCsr = "CreateCertificateFromCsr" // CreateCertificateFromCsrRequest generates a "aws/request.Request" representing the // client's request for the CreateCertificateFromCsr operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateCertificateFromCsr for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateCertificateFromCsr method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateCertificateFromCsrRequest method. // req, resp := client.CreateCertificateFromCsrRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) CreateCertificateFromCsrRequest(input *CreateCertificateFromCsrInput) (req *request.Request, output *CreateCertificateFromCsrOutput) { op := &request.Operation{ Name: opCreateCertificateFromCsr, HTTPMethod: "POST", HTTPPath: "/certificates", } if input == nil { input = &CreateCertificateFromCsrInput{} } req = c.newRequest(op, input, output) output = &CreateCertificateFromCsrOutput{} req.Data = output return } // CreateCertificateFromCsr API operation for AWS IoT. // // Creates an X.509 certificate using the specified certificate signing request. // // Note Reusing the same certificate signing request (CSR) results in a distinct // certificate. // // You can create multiple certificates in a batch by creating a directory, // copying multiple .csr files into that directory, and then specifying that // directory on the command line. The following commands show how to create // a batch of certificates given a batch of CSRs. // // Assuming a set of CSRs are located inside of the directory my-csr-directory: // // On Linux and OS X, the command is: // // $ ls my-csr-directory/ | xargs -I {} aws iot create-certificate-from-csr // --certificate-signing-request file://my-csr-directory/{} // // This command lists all of the CSRs in my-csr-directory and pipes each CSR // file name to the aws iot create-certificate-from-csr AWS CLI command to create // a certificate for the corresponding CSR. // // The aws iot create-certificate-from-csr part of the command can also be run // in parallel to speed up the certificate creation process: // // $ ls my-csr-directory/ | xargs -P 10 -I {} aws iot create-certificate-from-csr // --certificate-signing-request file://my-csr-directory/{} // // On Windows PowerShell, the command to create certificates for all CSRs in // my-csr-directory is: // // > ls -Name my-csr-directory | %{aws iot create-certificate-from-csr --certificate-signing-request // file://my-csr-directory/$_} // // On a Windows command prompt, the command to create certificates for all CSRs // in my-csr-directory is: // // > forfiles /p my-csr-directory /c "cmd /c aws iot create-certificate-from-csr // --certificate-signing-request file://@path" // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation CreateCertificateFromCsr for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) CreateCertificateFromCsr(input *CreateCertificateFromCsrInput) (*CreateCertificateFromCsrOutput, error) { req, out := c.CreateCertificateFromCsrRequest(input) err := req.Send() return out, err } const opCreateKeysAndCertificate = "CreateKeysAndCertificate" // CreateKeysAndCertificateRequest generates a "aws/request.Request" representing the // client's request for the CreateKeysAndCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateKeysAndCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateKeysAndCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateKeysAndCertificateRequest method. // req, resp := client.CreateKeysAndCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) CreateKeysAndCertificateRequest(input *CreateKeysAndCertificateInput) (req *request.Request, output *CreateKeysAndCertificateOutput) { op := &request.Operation{ Name: opCreateKeysAndCertificate, HTTPMethod: "POST", HTTPPath: "/keys-and-certificate", } if input == nil { input = &CreateKeysAndCertificateInput{} } req = c.newRequest(op, input, output) output = &CreateKeysAndCertificateOutput{} req.Data = output return } // CreateKeysAndCertificate API operation for AWS IoT. // // Creates a 2048-bit RSA key pair and issues an X.509 certificate using the // issued public key. // // Note This is the only time AWS IoT issues the private key for this certificate, // so it is important to keep it in a secure location. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation CreateKeysAndCertificate for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) CreateKeysAndCertificate(input *CreateKeysAndCertificateInput) (*CreateKeysAndCertificateOutput, error) { req, out := c.CreateKeysAndCertificateRequest(input) err := req.Send() return out, err } const opCreatePolicy = "CreatePolicy" // CreatePolicyRequest generates a "aws/request.Request" representing the // client's request for the CreatePolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreatePolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreatePolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreatePolicyRequest method. // req, resp := client.CreatePolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) CreatePolicyRequest(input *CreatePolicyInput) (req *request.Request, output *CreatePolicyOutput) { op := &request.Operation{ Name: opCreatePolicy, HTTPMethod: "POST", HTTPPath: "/policies/{policyName}", } if input == nil { input = &CreatePolicyInput{} } req = c.newRequest(op, input, output) output = &CreatePolicyOutput{} req.Data = output return } // CreatePolicy API operation for AWS IoT. // // Creates an AWS IoT policy. // // The created policy is the default version for the policy. This operation // creates a policy version with a version identifier of 1 and sets 1 as the // policy's default version. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation CreatePolicy for usage and error information. // // Returned Error Codes: // * ResourceAlreadyExistsException // The resource already exists. // // * MalformedPolicyException // The policy documentation is not valid. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) CreatePolicy(input *CreatePolicyInput) (*CreatePolicyOutput, error) { req, out := c.CreatePolicyRequest(input) err := req.Send() return out, err } const opCreatePolicyVersion = "CreatePolicyVersion" // CreatePolicyVersionRequest generates a "aws/request.Request" representing the // client's request for the CreatePolicyVersion operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreatePolicyVersion for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreatePolicyVersion method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreatePolicyVersionRequest method. // req, resp := client.CreatePolicyVersionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) CreatePolicyVersionRequest(input *CreatePolicyVersionInput) (req *request.Request, output *CreatePolicyVersionOutput) { op := &request.Operation{ Name: opCreatePolicyVersion, HTTPMethod: "POST", HTTPPath: "/policies/{policyName}/version", } if input == nil { input = &CreatePolicyVersionInput{} } req = c.newRequest(op, input, output) output = &CreatePolicyVersionOutput{} req.Data = output return } // CreatePolicyVersion API operation for AWS IoT. // // Creates a new version of the specified AWS IoT policy. To update a policy, // create a new policy version. A managed policy can have up to five versions. // If the policy has five versions, you must use DeletePolicyVersion to delete // an existing version before you create a new one. // // Optionally, you can set the new version as the policy's default version. // The default version is the operative version (that is, the version that is // in effect for the certificates to which the policy is attached). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation CreatePolicyVersion for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * MalformedPolicyException // The policy documentation is not valid. // // * VersionsLimitExceededException // The number of policy versions exceeds the limit. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) CreatePolicyVersion(input *CreatePolicyVersionInput) (*CreatePolicyVersionOutput, error) { req, out := c.CreatePolicyVersionRequest(input) err := req.Send() return out, err } const opCreateThing = "CreateThing" // CreateThingRequest generates a "aws/request.Request" representing the // client's request for the CreateThing operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateThing for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateThing method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateThingRequest method. // req, resp := client.CreateThingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) CreateThingRequest(input *CreateThingInput) (req *request.Request, output *CreateThingOutput) { op := &request.Operation{ Name: opCreateThing, HTTPMethod: "POST", HTTPPath: "/things/{thingName}", } if input == nil { input = &CreateThingInput{} } req = c.newRequest(op, input, output) output = &CreateThingOutput{} req.Data = output return } // CreateThing API operation for AWS IoT. // // Creates a thing record in the thing registry. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation CreateThing for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // // * ResourceAlreadyExistsException // The resource already exists. // // * ResourceNotFoundException // The specified resource does not exist. // func (c *IoT) CreateThing(input *CreateThingInput) (*CreateThingOutput, error) { req, out := c.CreateThingRequest(input) err := req.Send() return out, err } const opCreateThingType = "CreateThingType" // CreateThingTypeRequest generates a "aws/request.Request" representing the // client's request for the CreateThingType operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateThingType for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateThingType method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateThingTypeRequest method. // req, resp := client.CreateThingTypeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) CreateThingTypeRequest(input *CreateThingTypeInput) (req *request.Request, output *CreateThingTypeOutput) { op := &request.Operation{ Name: opCreateThingType, HTTPMethod: "POST", HTTPPath: "/thing-types/{thingTypeName}", } if input == nil { input = &CreateThingTypeInput{} } req = c.newRequest(op, input, output) output = &CreateThingTypeOutput{} req.Data = output return } // CreateThingType API operation for AWS IoT. // // Creates a new thing type. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation CreateThingType for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // // * ResourceAlreadyExistsException // The resource already exists. // func (c *IoT) CreateThingType(input *CreateThingTypeInput) (*CreateThingTypeOutput, error) { req, out := c.CreateThingTypeRequest(input) err := req.Send() return out, err } const opCreateTopicRule = "CreateTopicRule" // CreateTopicRuleRequest generates a "aws/request.Request" representing the // client's request for the CreateTopicRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateTopicRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateTopicRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateTopicRuleRequest method. // req, resp := client.CreateTopicRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) CreateTopicRuleRequest(input *CreateTopicRuleInput) (req *request.Request, output *CreateTopicRuleOutput) { op := &request.Operation{ Name: opCreateTopicRule, HTTPMethod: "POST", HTTPPath: "/rules/{ruleName}", } if input == nil { input = &CreateTopicRuleInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CreateTopicRuleOutput{} req.Data = output return } // CreateTopicRule API operation for AWS IoT. // // Creates a rule. Creating rules is an administrator-level action. Any user // who has permission to create rules will be able to access data processed // by the rule. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation CreateTopicRule for usage and error information. // // Returned Error Codes: // * SqlParseException // The Rule-SQL expression can't be parsed correctly. // // * InternalException // An unexpected error has occurred. // // * InvalidRequestException // The request is not valid. // // * ResourceAlreadyExistsException // The resource already exists. // // * ServiceUnavailableException // The service is temporarily unavailable. // func (c *IoT) CreateTopicRule(input *CreateTopicRuleInput) (*CreateTopicRuleOutput, error) { req, out := c.CreateTopicRuleRequest(input) err := req.Send() return out, err } const opDeleteCACertificate = "DeleteCACertificate" // DeleteCACertificateRequest generates a "aws/request.Request" representing the // client's request for the DeleteCACertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteCACertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteCACertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteCACertificateRequest method. // req, resp := client.DeleteCACertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) DeleteCACertificateRequest(input *DeleteCACertificateInput) (req *request.Request, output *DeleteCACertificateOutput) { op := &request.Operation{ Name: opDeleteCACertificate, HTTPMethod: "DELETE", HTTPPath: "/cacertificate/{caCertificateId}", } if input == nil { input = &DeleteCACertificateInput{} } req = c.newRequest(op, input, output) output = &DeleteCACertificateOutput{} req.Data = output return } // DeleteCACertificate API operation for AWS IoT. // // Deletes a registered CA certificate. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation DeleteCACertificate for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * CertificateStateException // The certificate operation is not allowed. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // // * ResourceNotFoundException // The specified resource does not exist. // func (c *IoT) DeleteCACertificate(input *DeleteCACertificateInput) (*DeleteCACertificateOutput, error) { req, out := c.DeleteCACertificateRequest(input) err := req.Send() return out, err } const opDeleteCertificate = "DeleteCertificate" // DeleteCertificateRequest generates a "aws/request.Request" representing the // client's request for the DeleteCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteCertificateRequest method. // req, resp := client.DeleteCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) DeleteCertificateRequest(input *DeleteCertificateInput) (req *request.Request, output *DeleteCertificateOutput) { op := &request.Operation{ Name: opDeleteCertificate, HTTPMethod: "DELETE", HTTPPath: "/certificates/{certificateId}", } if input == nil { input = &DeleteCertificateInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteCertificateOutput{} req.Data = output return } // DeleteCertificate API operation for AWS IoT. // // Deletes the specified certificate. // // A certificate cannot be deleted if it has a policy attached to it or if its // status is set to ACTIVE. To delete a certificate, first use the DetachPrincipalPolicy // API to detach all policies. Next, use the UpdateCertificate API to set the // certificate to the INACTIVE status. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation DeleteCertificate for usage and error information. // // Returned Error Codes: // * CertificateStateException // The certificate operation is not allowed. // // * DeleteConflictException // You can't delete the resource because it is attached to one or more resources. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // // * ResourceNotFoundException // The specified resource does not exist. // func (c *IoT) DeleteCertificate(input *DeleteCertificateInput) (*DeleteCertificateOutput, error) { req, out := c.DeleteCertificateRequest(input) err := req.Send() return out, err } const opDeletePolicy = "DeletePolicy" // DeletePolicyRequest generates a "aws/request.Request" representing the // client's request for the DeletePolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeletePolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeletePolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeletePolicyRequest method. // req, resp := client.DeletePolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) DeletePolicyRequest(input *DeletePolicyInput) (req *request.Request, output *DeletePolicyOutput) { op := &request.Operation{ Name: opDeletePolicy, HTTPMethod: "DELETE", HTTPPath: "/policies/{policyName}", } if input == nil { input = &DeletePolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeletePolicyOutput{} req.Data = output return } // DeletePolicy API operation for AWS IoT. // // Deletes the specified policy. // // A policy cannot be deleted if it has non-default versions or it is attached // to any certificate. // // To delete a policy, use the DeletePolicyVersion API to delete all non-default // versions of the policy; use the DetachPrincipalPolicy API to detach the policy // from any certificate; and then use the DeletePolicy API to delete the policy. // // When a policy is deleted using DeletePolicy, its default version is deleted // with it. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation DeletePolicy for usage and error information. // // Returned Error Codes: // * DeleteConflictException // You can't delete the resource because it is attached to one or more resources. // // * ResourceNotFoundException // The specified resource does not exist. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) DeletePolicy(input *DeletePolicyInput) (*DeletePolicyOutput, error) { req, out := c.DeletePolicyRequest(input) err := req.Send() return out, err } const opDeletePolicyVersion = "DeletePolicyVersion" // DeletePolicyVersionRequest generates a "aws/request.Request" representing the // client's request for the DeletePolicyVersion operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeletePolicyVersion for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeletePolicyVersion method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeletePolicyVersionRequest method. // req, resp := client.DeletePolicyVersionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) DeletePolicyVersionRequest(input *DeletePolicyVersionInput) (req *request.Request, output *DeletePolicyVersionOutput) { op := &request.Operation{ Name: opDeletePolicyVersion, HTTPMethod: "DELETE", HTTPPath: "/policies/{policyName}/version/{policyVersionId}", } if input == nil { input = &DeletePolicyVersionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeletePolicyVersionOutput{} req.Data = output return } // DeletePolicyVersion API operation for AWS IoT. // // Deletes the specified version of the specified policy. You cannot delete // the default version of a policy using this API. To delete the default version // of a policy, use DeletePolicy. To find out which version of a policy is marked // as the default version, use ListPolicyVersions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation DeletePolicyVersion for usage and error information. // // Returned Error Codes: // * DeleteConflictException // You can't delete the resource because it is attached to one or more resources. // // * ResourceNotFoundException // The specified resource does not exist. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) DeletePolicyVersion(input *DeletePolicyVersionInput) (*DeletePolicyVersionOutput, error) { req, out := c.DeletePolicyVersionRequest(input) err := req.Send() return out, err } const opDeleteRegistrationCode = "DeleteRegistrationCode" // DeleteRegistrationCodeRequest generates a "aws/request.Request" representing the // client's request for the DeleteRegistrationCode operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteRegistrationCode for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteRegistrationCode method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteRegistrationCodeRequest method. // req, resp := client.DeleteRegistrationCodeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) DeleteRegistrationCodeRequest(input *DeleteRegistrationCodeInput) (req *request.Request, output *DeleteRegistrationCodeOutput) { op := &request.Operation{ Name: opDeleteRegistrationCode, HTTPMethod: "DELETE", HTTPPath: "/registrationcode", } if input == nil { input = &DeleteRegistrationCodeInput{} } req = c.newRequest(op, input, output) output = &DeleteRegistrationCodeOutput{} req.Data = output return } // DeleteRegistrationCode API operation for AWS IoT. // // Deletes a CA certificate registration code. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation DeleteRegistrationCode for usage and error information. // // Returned Error Codes: // * ThrottlingException // The rate exceeds the limit. // // * ResourceNotFoundException // The specified resource does not exist. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) DeleteRegistrationCode(input *DeleteRegistrationCodeInput) (*DeleteRegistrationCodeOutput, error) { req, out := c.DeleteRegistrationCodeRequest(input) err := req.Send() return out, err } const opDeleteThing = "DeleteThing" // DeleteThingRequest generates a "aws/request.Request" representing the // client's request for the DeleteThing operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteThing for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteThing method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteThingRequest method. // req, resp := client.DeleteThingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) DeleteThingRequest(input *DeleteThingInput) (req *request.Request, output *DeleteThingOutput) { op := &request.Operation{ Name: opDeleteThing, HTTPMethod: "DELETE", HTTPPath: "/things/{thingName}", } if input == nil { input = &DeleteThingInput{} } req = c.newRequest(op, input, output) output = &DeleteThingOutput{} req.Data = output return } // DeleteThing API operation for AWS IoT. // // Deletes the specified thing. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation DeleteThing for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * VersionConflictException // An exception thrown when the version of a thing passed to a command is different // than the version specified with the --version parameter. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) DeleteThing(input *DeleteThingInput) (*DeleteThingOutput, error) { req, out := c.DeleteThingRequest(input) err := req.Send() return out, err } const opDeleteThingType = "DeleteThingType" // DeleteThingTypeRequest generates a "aws/request.Request" representing the // client's request for the DeleteThingType operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteThingType for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteThingType method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteThingTypeRequest method. // req, resp := client.DeleteThingTypeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) DeleteThingTypeRequest(input *DeleteThingTypeInput) (req *request.Request, output *DeleteThingTypeOutput) { op := &request.Operation{ Name: opDeleteThingType, HTTPMethod: "DELETE", HTTPPath: "/thing-types/{thingTypeName}", } if input == nil { input = &DeleteThingTypeInput{} } req = c.newRequest(op, input, output) output = &DeleteThingTypeOutput{} req.Data = output return } // DeleteThingType API operation for AWS IoT. // // Deletes the specified thing type . You cannot delete a thing type if it has // things associated with it. To delete a thing type, first mark it as deprecated // by calling DeprecateThingType, then remove any associated things by calling // UpdateThing to change the thing type on any associated thing, and finally // use DeleteThingType to delete the thing type. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation DeleteThingType for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) DeleteThingType(input *DeleteThingTypeInput) (*DeleteThingTypeOutput, error) { req, out := c.DeleteThingTypeRequest(input) err := req.Send() return out, err } const opDeleteTopicRule = "DeleteTopicRule" // DeleteTopicRuleRequest generates a "aws/request.Request" representing the // client's request for the DeleteTopicRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteTopicRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteTopicRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteTopicRuleRequest method. // req, resp := client.DeleteTopicRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) DeleteTopicRuleRequest(input *DeleteTopicRuleInput) (req *request.Request, output *DeleteTopicRuleOutput) { op := &request.Operation{ Name: opDeleteTopicRule, HTTPMethod: "DELETE", HTTPPath: "/rules/{ruleName}", } if input == nil { input = &DeleteTopicRuleInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteTopicRuleOutput{} req.Data = output return } // DeleteTopicRule API operation for AWS IoT. // // Deletes the specified rule. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation DeleteTopicRule for usage and error information. // // Returned Error Codes: // * InternalException // An unexpected error has occurred. // // * InvalidRequestException // The request is not valid. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * UnauthorizedException // You are not authorized to perform this operation. // func (c *IoT) DeleteTopicRule(input *DeleteTopicRuleInput) (*DeleteTopicRuleOutput, error) { req, out := c.DeleteTopicRuleRequest(input) err := req.Send() return out, err } const opDeprecateThingType = "DeprecateThingType" // DeprecateThingTypeRequest generates a "aws/request.Request" representing the // client's request for the DeprecateThingType operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeprecateThingType for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeprecateThingType method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeprecateThingTypeRequest method. // req, resp := client.DeprecateThingTypeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) DeprecateThingTypeRequest(input *DeprecateThingTypeInput) (req *request.Request, output *DeprecateThingTypeOutput) { op := &request.Operation{ Name: opDeprecateThingType, HTTPMethod: "POST", HTTPPath: "/thing-types/{thingTypeName}/deprecate", } if input == nil { input = &DeprecateThingTypeInput{} } req = c.newRequest(op, input, output) output = &DeprecateThingTypeOutput{} req.Data = output return } // DeprecateThingType API operation for AWS IoT. // // Deprecates a thing type. You can not associate new things with deprecated // thing type. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation DeprecateThingType for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) DeprecateThingType(input *DeprecateThingTypeInput) (*DeprecateThingTypeOutput, error) { req, out := c.DeprecateThingTypeRequest(input) err := req.Send() return out, err } const opDescribeCACertificate = "DescribeCACertificate" // DescribeCACertificateRequest generates a "aws/request.Request" representing the // client's request for the DescribeCACertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCACertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCACertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeCACertificateRequest method. // req, resp := client.DescribeCACertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) DescribeCACertificateRequest(input *DescribeCACertificateInput) (req *request.Request, output *DescribeCACertificateOutput) { op := &request.Operation{ Name: opDescribeCACertificate, HTTPMethod: "GET", HTTPPath: "/cacertificate/{caCertificateId}", } if input == nil { input = &DescribeCACertificateInput{} } req = c.newRequest(op, input, output) output = &DescribeCACertificateOutput{} req.Data = output return } // DescribeCACertificate API operation for AWS IoT. // // Describes a registered CA certificate. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation DescribeCACertificate for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // // * ResourceNotFoundException // The specified resource does not exist. // func (c *IoT) DescribeCACertificate(input *DescribeCACertificateInput) (*DescribeCACertificateOutput, error) { req, out := c.DescribeCACertificateRequest(input) err := req.Send() return out, err } const opDescribeCertificate = "DescribeCertificate" // DescribeCertificateRequest generates a "aws/request.Request" representing the // client's request for the DescribeCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeCertificateRequest method. // req, resp := client.DescribeCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) DescribeCertificateRequest(input *DescribeCertificateInput) (req *request.Request, output *DescribeCertificateOutput) { op := &request.Operation{ Name: opDescribeCertificate, HTTPMethod: "GET", HTTPPath: "/certificates/{certificateId}", } if input == nil { input = &DescribeCertificateInput{} } req = c.newRequest(op, input, output) output = &DescribeCertificateOutput{} req.Data = output return } // DescribeCertificate API operation for AWS IoT. // // Gets information about the specified certificate. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation DescribeCertificate for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // // * ResourceNotFoundException // The specified resource does not exist. // func (c *IoT) DescribeCertificate(input *DescribeCertificateInput) (*DescribeCertificateOutput, error) { req, out := c.DescribeCertificateRequest(input) err := req.Send() return out, err } const opDescribeEndpoint = "DescribeEndpoint" // DescribeEndpointRequest generates a "aws/request.Request" representing the // client's request for the DescribeEndpoint operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEndpoint for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEndpoint method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEndpointRequest method. // req, resp := client.DescribeEndpointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) DescribeEndpointRequest(input *DescribeEndpointInput) (req *request.Request, output *DescribeEndpointOutput) { op := &request.Operation{ Name: opDescribeEndpoint, HTTPMethod: "GET", HTTPPath: "/endpoint", } if input == nil { input = &DescribeEndpointInput{} } req = c.newRequest(op, input, output) output = &DescribeEndpointOutput{} req.Data = output return } // DescribeEndpoint API operation for AWS IoT. // // Returns a unique endpoint specific to the AWS account making the call. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation DescribeEndpoint for usage and error information. // // Returned Error Codes: // * InternalFailureException // An unexpected error has occurred. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ThrottlingException // The rate exceeds the limit. // func (c *IoT) DescribeEndpoint(input *DescribeEndpointInput) (*DescribeEndpointOutput, error) { req, out := c.DescribeEndpointRequest(input) err := req.Send() return out, err } const opDescribeThing = "DescribeThing" // DescribeThingRequest generates a "aws/request.Request" representing the // client's request for the DescribeThing operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeThing for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeThing method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeThingRequest method. // req, resp := client.DescribeThingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) DescribeThingRequest(input *DescribeThingInput) (req *request.Request, output *DescribeThingOutput) { op := &request.Operation{ Name: opDescribeThing, HTTPMethod: "GET", HTTPPath: "/things/{thingName}", } if input == nil { input = &DescribeThingInput{} } req = c.newRequest(op, input, output) output = &DescribeThingOutput{} req.Data = output return } // DescribeThing API operation for AWS IoT. // // Gets information about the specified thing. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation DescribeThing for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) DescribeThing(input *DescribeThingInput) (*DescribeThingOutput, error) { req, out := c.DescribeThingRequest(input) err := req.Send() return out, err } const opDescribeThingType = "DescribeThingType" // DescribeThingTypeRequest generates a "aws/request.Request" representing the // client's request for the DescribeThingType operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeThingType for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeThingType method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeThingTypeRequest method. // req, resp := client.DescribeThingTypeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) DescribeThingTypeRequest(input *DescribeThingTypeInput) (req *request.Request, output *DescribeThingTypeOutput) { op := &request.Operation{ Name: opDescribeThingType, HTTPMethod: "GET", HTTPPath: "/thing-types/{thingTypeName}", } if input == nil { input = &DescribeThingTypeInput{} } req = c.newRequest(op, input, output) output = &DescribeThingTypeOutput{} req.Data = output return } // DescribeThingType API operation for AWS IoT. // // Gets information about the specified thing type. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation DescribeThingType for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) DescribeThingType(input *DescribeThingTypeInput) (*DescribeThingTypeOutput, error) { req, out := c.DescribeThingTypeRequest(input) err := req.Send() return out, err } const opDetachPrincipalPolicy = "DetachPrincipalPolicy" // DetachPrincipalPolicyRequest generates a "aws/request.Request" representing the // client's request for the DetachPrincipalPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DetachPrincipalPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DetachPrincipalPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DetachPrincipalPolicyRequest method. // req, resp := client.DetachPrincipalPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) DetachPrincipalPolicyRequest(input *DetachPrincipalPolicyInput) (req *request.Request, output *DetachPrincipalPolicyOutput) { op := &request.Operation{ Name: opDetachPrincipalPolicy, HTTPMethod: "DELETE", HTTPPath: "/principal-policies/{policyName}", } if input == nil { input = &DetachPrincipalPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DetachPrincipalPolicyOutput{} req.Data = output return } // DetachPrincipalPolicy API operation for AWS IoT. // // Removes the specified policy from the specified certificate. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation DetachPrincipalPolicy for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) DetachPrincipalPolicy(input *DetachPrincipalPolicyInput) (*DetachPrincipalPolicyOutput, error) { req, out := c.DetachPrincipalPolicyRequest(input) err := req.Send() return out, err } const opDetachThingPrincipal = "DetachThingPrincipal" // DetachThingPrincipalRequest generates a "aws/request.Request" representing the // client's request for the DetachThingPrincipal operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DetachThingPrincipal for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DetachThingPrincipal method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DetachThingPrincipalRequest method. // req, resp := client.DetachThingPrincipalRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) DetachThingPrincipalRequest(input *DetachThingPrincipalInput) (req *request.Request, output *DetachThingPrincipalOutput) { op := &request.Operation{ Name: opDetachThingPrincipal, HTTPMethod: "DELETE", HTTPPath: "/things/{thingName}/principals", } if input == nil { input = &DetachThingPrincipalInput{} } req = c.newRequest(op, input, output) output = &DetachThingPrincipalOutput{} req.Data = output return } // DetachThingPrincipal API operation for AWS IoT. // // Detaches the specified principal from the specified thing. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation DetachThingPrincipal for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) DetachThingPrincipal(input *DetachThingPrincipalInput) (*DetachThingPrincipalOutput, error) { req, out := c.DetachThingPrincipalRequest(input) err := req.Send() return out, err } const opDisableTopicRule = "DisableTopicRule" // DisableTopicRuleRequest generates a "aws/request.Request" representing the // client's request for the DisableTopicRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableTopicRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableTopicRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableTopicRuleRequest method. // req, resp := client.DisableTopicRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) DisableTopicRuleRequest(input *DisableTopicRuleInput) (req *request.Request, output *DisableTopicRuleOutput) { op := &request.Operation{ Name: opDisableTopicRule, HTTPMethod: "POST", HTTPPath: "/rules/{ruleName}/disable", } if input == nil { input = &DisableTopicRuleInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DisableTopicRuleOutput{} req.Data = output return } // DisableTopicRule API operation for AWS IoT. // // Disables the specified rule. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation DisableTopicRule for usage and error information. // // Returned Error Codes: // * InternalException // An unexpected error has occurred. // // * InvalidRequestException // The request is not valid. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * UnauthorizedException // You are not authorized to perform this operation. // func (c *IoT) DisableTopicRule(input *DisableTopicRuleInput) (*DisableTopicRuleOutput, error) { req, out := c.DisableTopicRuleRequest(input) err := req.Send() return out, err } const opEnableTopicRule = "EnableTopicRule" // EnableTopicRuleRequest generates a "aws/request.Request" representing the // client's request for the EnableTopicRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableTopicRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableTopicRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableTopicRuleRequest method. // req, resp := client.EnableTopicRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) EnableTopicRuleRequest(input *EnableTopicRuleInput) (req *request.Request, output *EnableTopicRuleOutput) { op := &request.Operation{ Name: opEnableTopicRule, HTTPMethod: "POST", HTTPPath: "/rules/{ruleName}/enable", } if input == nil { input = &EnableTopicRuleInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &EnableTopicRuleOutput{} req.Data = output return } // EnableTopicRule API operation for AWS IoT. // // Enables the specified rule. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation EnableTopicRule for usage and error information. // // Returned Error Codes: // * InternalException // An unexpected error has occurred. // // * InvalidRequestException // The request is not valid. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * UnauthorizedException // You are not authorized to perform this operation. // func (c *IoT) EnableTopicRule(input *EnableTopicRuleInput) (*EnableTopicRuleOutput, error) { req, out := c.EnableTopicRuleRequest(input) err := req.Send() return out, err } const opGetLoggingOptions = "GetLoggingOptions" // GetLoggingOptionsRequest generates a "aws/request.Request" representing the // client's request for the GetLoggingOptions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetLoggingOptions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetLoggingOptions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetLoggingOptionsRequest method. // req, resp := client.GetLoggingOptionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) GetLoggingOptionsRequest(input *GetLoggingOptionsInput) (req *request.Request, output *GetLoggingOptionsOutput) { op := &request.Operation{ Name: opGetLoggingOptions, HTTPMethod: "GET", HTTPPath: "/loggingOptions", } if input == nil { input = &GetLoggingOptionsInput{} } req = c.newRequest(op, input, output) output = &GetLoggingOptionsOutput{} req.Data = output return } // GetLoggingOptions API operation for AWS IoT. // // Gets the logging options. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation GetLoggingOptions for usage and error information. // // Returned Error Codes: // * InternalException // An unexpected error has occurred. // // * InvalidRequestException // The request is not valid. // // * ServiceUnavailableException // The service is temporarily unavailable. // func (c *IoT) GetLoggingOptions(input *GetLoggingOptionsInput) (*GetLoggingOptionsOutput, error) { req, out := c.GetLoggingOptionsRequest(input) err := req.Send() return out, err } const opGetPolicy = "GetPolicy" // GetPolicyRequest generates a "aws/request.Request" representing the // client's request for the GetPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetPolicyRequest method. // req, resp := client.GetPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) GetPolicyRequest(input *GetPolicyInput) (req *request.Request, output *GetPolicyOutput) { op := &request.Operation{ Name: opGetPolicy, HTTPMethod: "GET", HTTPPath: "/policies/{policyName}", } if input == nil { input = &GetPolicyInput{} } req = c.newRequest(op, input, output) output = &GetPolicyOutput{} req.Data = output return } // GetPolicy API operation for AWS IoT. // // Gets information about the specified policy with the policy document of the // default version. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation GetPolicy for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) GetPolicy(input *GetPolicyInput) (*GetPolicyOutput, error) { req, out := c.GetPolicyRequest(input) err := req.Send() return out, err } const opGetPolicyVersion = "GetPolicyVersion" // GetPolicyVersionRequest generates a "aws/request.Request" representing the // client's request for the GetPolicyVersion operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetPolicyVersion for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetPolicyVersion method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetPolicyVersionRequest method. // req, resp := client.GetPolicyVersionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) GetPolicyVersionRequest(input *GetPolicyVersionInput) (req *request.Request, output *GetPolicyVersionOutput) { op := &request.Operation{ Name: opGetPolicyVersion, HTTPMethod: "GET", HTTPPath: "/policies/{policyName}/version/{policyVersionId}", } if input == nil { input = &GetPolicyVersionInput{} } req = c.newRequest(op, input, output) output = &GetPolicyVersionOutput{} req.Data = output return } // GetPolicyVersion API operation for AWS IoT. // // Gets information about the specified policy version. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation GetPolicyVersion for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) GetPolicyVersion(input *GetPolicyVersionInput) (*GetPolicyVersionOutput, error) { req, out := c.GetPolicyVersionRequest(input) err := req.Send() return out, err } const opGetRegistrationCode = "GetRegistrationCode" // GetRegistrationCodeRequest generates a "aws/request.Request" representing the // client's request for the GetRegistrationCode operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetRegistrationCode for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetRegistrationCode method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetRegistrationCodeRequest method. // req, resp := client.GetRegistrationCodeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) GetRegistrationCodeRequest(input *GetRegistrationCodeInput) (req *request.Request, output *GetRegistrationCodeOutput) { op := &request.Operation{ Name: opGetRegistrationCode, HTTPMethod: "GET", HTTPPath: "/registrationcode", } if input == nil { input = &GetRegistrationCodeInput{} } req = c.newRequest(op, input, output) output = &GetRegistrationCodeOutput{} req.Data = output return } // GetRegistrationCode API operation for AWS IoT. // // Gets a registration code used to register a CA certificate with AWS IoT. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation GetRegistrationCode for usage and error information. // // Returned Error Codes: // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // // * InvalidRequestException // The request is not valid. // func (c *IoT) GetRegistrationCode(input *GetRegistrationCodeInput) (*GetRegistrationCodeOutput, error) { req, out := c.GetRegistrationCodeRequest(input) err := req.Send() return out, err } const opGetTopicRule = "GetTopicRule" // GetTopicRuleRequest generates a "aws/request.Request" representing the // client's request for the GetTopicRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetTopicRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetTopicRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetTopicRuleRequest method. // req, resp := client.GetTopicRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) GetTopicRuleRequest(input *GetTopicRuleInput) (req *request.Request, output *GetTopicRuleOutput) { op := &request.Operation{ Name: opGetTopicRule, HTTPMethod: "GET", HTTPPath: "/rules/{ruleName}", } if input == nil { input = &GetTopicRuleInput{} } req = c.newRequest(op, input, output) output = &GetTopicRuleOutput{} req.Data = output return } // GetTopicRule API operation for AWS IoT. // // Gets information about the specified rule. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation GetTopicRule for usage and error information. // // Returned Error Codes: // * InternalException // An unexpected error has occurred. // // * InvalidRequestException // The request is not valid. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * UnauthorizedException // You are not authorized to perform this operation. // func (c *IoT) GetTopicRule(input *GetTopicRuleInput) (*GetTopicRuleOutput, error) { req, out := c.GetTopicRuleRequest(input) err := req.Send() return out, err } const opListCACertificates = "ListCACertificates" // ListCACertificatesRequest generates a "aws/request.Request" representing the // client's request for the ListCACertificates operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListCACertificates for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListCACertificates method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListCACertificatesRequest method. // req, resp := client.ListCACertificatesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) ListCACertificatesRequest(input *ListCACertificatesInput) (req *request.Request, output *ListCACertificatesOutput) { op := &request.Operation{ Name: opListCACertificates, HTTPMethod: "GET", HTTPPath: "/cacertificates", } if input == nil { input = &ListCACertificatesInput{} } req = c.newRequest(op, input, output) output = &ListCACertificatesOutput{} req.Data = output return } // ListCACertificates API operation for AWS IoT. // // Lists the CA certificates registered for your AWS account. // // The results are paginated with a default page size of 25. You can use the // returned marker to retrieve additional results. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation ListCACertificates for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) ListCACertificates(input *ListCACertificatesInput) (*ListCACertificatesOutput, error) { req, out := c.ListCACertificatesRequest(input) err := req.Send() return out, err } const opListCertificates = "ListCertificates" // ListCertificatesRequest generates a "aws/request.Request" representing the // client's request for the ListCertificates operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListCertificates for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListCertificates method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListCertificatesRequest method. // req, resp := client.ListCertificatesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) ListCertificatesRequest(input *ListCertificatesInput) (req *request.Request, output *ListCertificatesOutput) { op := &request.Operation{ Name: opListCertificates, HTTPMethod: "GET", HTTPPath: "/certificates", } if input == nil { input = &ListCertificatesInput{} } req = c.newRequest(op, input, output) output = &ListCertificatesOutput{} req.Data = output return } // ListCertificates API operation for AWS IoT. // // Lists the certificates registered in your AWS account. // // The results are paginated with a default page size of 25. You can use the // returned marker to retrieve additional results. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation ListCertificates for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) ListCertificates(input *ListCertificatesInput) (*ListCertificatesOutput, error) { req, out := c.ListCertificatesRequest(input) err := req.Send() return out, err } const opListCertificatesByCA = "ListCertificatesByCA" // ListCertificatesByCARequest generates a "aws/request.Request" representing the // client's request for the ListCertificatesByCA operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListCertificatesByCA for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListCertificatesByCA method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListCertificatesByCARequest method. // req, resp := client.ListCertificatesByCARequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) ListCertificatesByCARequest(input *ListCertificatesByCAInput) (req *request.Request, output *ListCertificatesByCAOutput) { op := &request.Operation{ Name: opListCertificatesByCA, HTTPMethod: "GET", HTTPPath: "/certificates-by-ca/{caCertificateId}", } if input == nil { input = &ListCertificatesByCAInput{} } req = c.newRequest(op, input, output) output = &ListCertificatesByCAOutput{} req.Data = output return } // ListCertificatesByCA API operation for AWS IoT. // // List the device certificates signed by the specified CA certificate. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation ListCertificatesByCA for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) ListCertificatesByCA(input *ListCertificatesByCAInput) (*ListCertificatesByCAOutput, error) { req, out := c.ListCertificatesByCARequest(input) err := req.Send() return out, err } const opListOutgoingCertificates = "ListOutgoingCertificates" // ListOutgoingCertificatesRequest generates a "aws/request.Request" representing the // client's request for the ListOutgoingCertificates operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListOutgoingCertificates for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListOutgoingCertificates method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListOutgoingCertificatesRequest method. // req, resp := client.ListOutgoingCertificatesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) ListOutgoingCertificatesRequest(input *ListOutgoingCertificatesInput) (req *request.Request, output *ListOutgoingCertificatesOutput) { op := &request.Operation{ Name: opListOutgoingCertificates, HTTPMethod: "GET", HTTPPath: "/certificates-out-going", } if input == nil { input = &ListOutgoingCertificatesInput{} } req = c.newRequest(op, input, output) output = &ListOutgoingCertificatesOutput{} req.Data = output return } // ListOutgoingCertificates API operation for AWS IoT. // // Lists certificates that are being transfered but not yet accepted. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation ListOutgoingCertificates for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) ListOutgoingCertificates(input *ListOutgoingCertificatesInput) (*ListOutgoingCertificatesOutput, error) { req, out := c.ListOutgoingCertificatesRequest(input) err := req.Send() return out, err } const opListPolicies = "ListPolicies" // ListPoliciesRequest generates a "aws/request.Request" representing the // client's request for the ListPolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListPolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListPolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListPoliciesRequest method. // req, resp := client.ListPoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) ListPoliciesRequest(input *ListPoliciesInput) (req *request.Request, output *ListPoliciesOutput) { op := &request.Operation{ Name: opListPolicies, HTTPMethod: "GET", HTTPPath: "/policies", } if input == nil { input = &ListPoliciesInput{} } req = c.newRequest(op, input, output) output = &ListPoliciesOutput{} req.Data = output return } // ListPolicies API operation for AWS IoT. // // Lists your policies. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation ListPolicies for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) ListPolicies(input *ListPoliciesInput) (*ListPoliciesOutput, error) { req, out := c.ListPoliciesRequest(input) err := req.Send() return out, err } const opListPolicyPrincipals = "ListPolicyPrincipals" // ListPolicyPrincipalsRequest generates a "aws/request.Request" representing the // client's request for the ListPolicyPrincipals operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListPolicyPrincipals for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListPolicyPrincipals method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListPolicyPrincipalsRequest method. // req, resp := client.ListPolicyPrincipalsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) ListPolicyPrincipalsRequest(input *ListPolicyPrincipalsInput) (req *request.Request, output *ListPolicyPrincipalsOutput) { op := &request.Operation{ Name: opListPolicyPrincipals, HTTPMethod: "GET", HTTPPath: "/policy-principals", } if input == nil { input = &ListPolicyPrincipalsInput{} } req = c.newRequest(op, input, output) output = &ListPolicyPrincipalsOutput{} req.Data = output return } // ListPolicyPrincipals API operation for AWS IoT. // // Lists the principals associated with the specified policy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation ListPolicyPrincipals for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) ListPolicyPrincipals(input *ListPolicyPrincipalsInput) (*ListPolicyPrincipalsOutput, error) { req, out := c.ListPolicyPrincipalsRequest(input) err := req.Send() return out, err } const opListPolicyVersions = "ListPolicyVersions" // ListPolicyVersionsRequest generates a "aws/request.Request" representing the // client's request for the ListPolicyVersions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListPolicyVersions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListPolicyVersions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListPolicyVersionsRequest method. // req, resp := client.ListPolicyVersionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) ListPolicyVersionsRequest(input *ListPolicyVersionsInput) (req *request.Request, output *ListPolicyVersionsOutput) { op := &request.Operation{ Name: opListPolicyVersions, HTTPMethod: "GET", HTTPPath: "/policies/{policyName}/version", } if input == nil { input = &ListPolicyVersionsInput{} } req = c.newRequest(op, input, output) output = &ListPolicyVersionsOutput{} req.Data = output return } // ListPolicyVersions API operation for AWS IoT. // // Lists the versions of the specified policy and identifies the default version. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation ListPolicyVersions for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) ListPolicyVersions(input *ListPolicyVersionsInput) (*ListPolicyVersionsOutput, error) { req, out := c.ListPolicyVersionsRequest(input) err := req.Send() return out, err } const opListPrincipalPolicies = "ListPrincipalPolicies" // ListPrincipalPoliciesRequest generates a "aws/request.Request" representing the // client's request for the ListPrincipalPolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListPrincipalPolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListPrincipalPolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListPrincipalPoliciesRequest method. // req, resp := client.ListPrincipalPoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) ListPrincipalPoliciesRequest(input *ListPrincipalPoliciesInput) (req *request.Request, output *ListPrincipalPoliciesOutput) { op := &request.Operation{ Name: opListPrincipalPolicies, HTTPMethod: "GET", HTTPPath: "/principal-policies", } if input == nil { input = &ListPrincipalPoliciesInput{} } req = c.newRequest(op, input, output) output = &ListPrincipalPoliciesOutput{} req.Data = output return } // ListPrincipalPolicies API operation for AWS IoT. // // Lists the policies attached to the specified principal. If you use an Cognito // identity, the ID must be in AmazonCognito Identity format (http://docs.aws.amazon.com/cognitoidentity/latest/APIReference/API_GetCredentialsForIdentity.html#API_GetCredentialsForIdentity_RequestSyntax). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation ListPrincipalPolicies for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) ListPrincipalPolicies(input *ListPrincipalPoliciesInput) (*ListPrincipalPoliciesOutput, error) { req, out := c.ListPrincipalPoliciesRequest(input) err := req.Send() return out, err } const opListPrincipalThings = "ListPrincipalThings" // ListPrincipalThingsRequest generates a "aws/request.Request" representing the // client's request for the ListPrincipalThings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListPrincipalThings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListPrincipalThings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListPrincipalThingsRequest method. // req, resp := client.ListPrincipalThingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) ListPrincipalThingsRequest(input *ListPrincipalThingsInput) (req *request.Request, output *ListPrincipalThingsOutput) { op := &request.Operation{ Name: opListPrincipalThings, HTTPMethod: "GET", HTTPPath: "/principals/things", } if input == nil { input = &ListPrincipalThingsInput{} } req = c.newRequest(op, input, output) output = &ListPrincipalThingsOutput{} req.Data = output return } // ListPrincipalThings API operation for AWS IoT. // // Lists the things associated with the specified principal. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation ListPrincipalThings for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // // * ResourceNotFoundException // The specified resource does not exist. // func (c *IoT) ListPrincipalThings(input *ListPrincipalThingsInput) (*ListPrincipalThingsOutput, error) { req, out := c.ListPrincipalThingsRequest(input) err := req.Send() return out, err } const opListThingPrincipals = "ListThingPrincipals" // ListThingPrincipalsRequest generates a "aws/request.Request" representing the // client's request for the ListThingPrincipals operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListThingPrincipals for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListThingPrincipals method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListThingPrincipalsRequest method. // req, resp := client.ListThingPrincipalsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) ListThingPrincipalsRequest(input *ListThingPrincipalsInput) (req *request.Request, output *ListThingPrincipalsOutput) { op := &request.Operation{ Name: opListThingPrincipals, HTTPMethod: "GET", HTTPPath: "/things/{thingName}/principals", } if input == nil { input = &ListThingPrincipalsInput{} } req = c.newRequest(op, input, output) output = &ListThingPrincipalsOutput{} req.Data = output return } // ListThingPrincipals API operation for AWS IoT. // // Lists the principals associated with the specified thing. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation ListThingPrincipals for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // // * ResourceNotFoundException // The specified resource does not exist. // func (c *IoT) ListThingPrincipals(input *ListThingPrincipalsInput) (*ListThingPrincipalsOutput, error) { req, out := c.ListThingPrincipalsRequest(input) err := req.Send() return out, err } const opListThingTypes = "ListThingTypes" // ListThingTypesRequest generates a "aws/request.Request" representing the // client's request for the ListThingTypes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListThingTypes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListThingTypes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListThingTypesRequest method. // req, resp := client.ListThingTypesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) ListThingTypesRequest(input *ListThingTypesInput) (req *request.Request, output *ListThingTypesOutput) { op := &request.Operation{ Name: opListThingTypes, HTTPMethod: "GET", HTTPPath: "/thing-types", } if input == nil { input = &ListThingTypesInput{} } req = c.newRequest(op, input, output) output = &ListThingTypesOutput{} req.Data = output return } // ListThingTypes API operation for AWS IoT. // // Lists the existing thing types. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation ListThingTypes for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) ListThingTypes(input *ListThingTypesInput) (*ListThingTypesOutput, error) { req, out := c.ListThingTypesRequest(input) err := req.Send() return out, err } const opListThings = "ListThings" // ListThingsRequest generates a "aws/request.Request" representing the // client's request for the ListThings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListThings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListThings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListThingsRequest method. // req, resp := client.ListThingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) ListThingsRequest(input *ListThingsInput) (req *request.Request, output *ListThingsOutput) { op := &request.Operation{ Name: opListThings, HTTPMethod: "GET", HTTPPath: "/things", } if input == nil { input = &ListThingsInput{} } req = c.newRequest(op, input, output) output = &ListThingsOutput{} req.Data = output return } // ListThings API operation for AWS IoT. // // Lists your things. Use the attributeName and attributeValue parameters to // filter your things. For example, calling ListThings with attributeName=Color // and attributeValue=Red retrieves all things in the registry that contain // an attribute Color with the value Red. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation ListThings for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) ListThings(input *ListThingsInput) (*ListThingsOutput, error) { req, out := c.ListThingsRequest(input) err := req.Send() return out, err } const opListTopicRules = "ListTopicRules" // ListTopicRulesRequest generates a "aws/request.Request" representing the // client's request for the ListTopicRules operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTopicRules for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTopicRules method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTopicRulesRequest method. // req, resp := client.ListTopicRulesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) ListTopicRulesRequest(input *ListTopicRulesInput) (req *request.Request, output *ListTopicRulesOutput) { op := &request.Operation{ Name: opListTopicRules, HTTPMethod: "GET", HTTPPath: "/rules", } if input == nil { input = &ListTopicRulesInput{} } req = c.newRequest(op, input, output) output = &ListTopicRulesOutput{} req.Data = output return } // ListTopicRules API operation for AWS IoT. // // Lists the rules for the specific topic. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation ListTopicRules for usage and error information. // // Returned Error Codes: // * InternalException // An unexpected error has occurred. // // * InvalidRequestException // The request is not valid. // // * ServiceUnavailableException // The service is temporarily unavailable. // func (c *IoT) ListTopicRules(input *ListTopicRulesInput) (*ListTopicRulesOutput, error) { req, out := c.ListTopicRulesRequest(input) err := req.Send() return out, err } const opRegisterCACertificate = "RegisterCACertificate" // RegisterCACertificateRequest generates a "aws/request.Request" representing the // client's request for the RegisterCACertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterCACertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterCACertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterCACertificateRequest method. // req, resp := client.RegisterCACertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) RegisterCACertificateRequest(input *RegisterCACertificateInput) (req *request.Request, output *RegisterCACertificateOutput) { op := &request.Operation{ Name: opRegisterCACertificate, HTTPMethod: "POST", HTTPPath: "/cacertificate", } if input == nil { input = &RegisterCACertificateInput{} } req = c.newRequest(op, input, output) output = &RegisterCACertificateOutput{} req.Data = output return } // RegisterCACertificate API operation for AWS IoT. // // Registers a CA certificate with AWS IoT. This CA certificate can then be // used to sign device certificates, which can be then registered with AWS IoT. // You can register up to 10 CA certificates per AWS account that have the same // subject field and public key. This enables you to have up to 10 certificate // authorities sign your device certificates. If you have more than one CA certificate // registered, make sure you pass the CA certificate when you register your // device certificates with the RegisterCertificate API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation RegisterCACertificate for usage and error information. // // Returned Error Codes: // * ResourceAlreadyExistsException // The resource already exists. // // * RegistrationCodeValidationException // The registration code is invalid. // // * InvalidRequestException // The request is not valid. // // * CertificateValidationException // The certificate is invalid. // // * ThrottlingException // The rate exceeds the limit. // // * LimitExceededException // The number of attached entities exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) RegisterCACertificate(input *RegisterCACertificateInput) (*RegisterCACertificateOutput, error) { req, out := c.RegisterCACertificateRequest(input) err := req.Send() return out, err } const opRegisterCertificate = "RegisterCertificate" // RegisterCertificateRequest generates a "aws/request.Request" representing the // client's request for the RegisterCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterCertificateRequest method. // req, resp := client.RegisterCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) RegisterCertificateRequest(input *RegisterCertificateInput) (req *request.Request, output *RegisterCertificateOutput) { op := &request.Operation{ Name: opRegisterCertificate, HTTPMethod: "POST", HTTPPath: "/certificate/register", } if input == nil { input = &RegisterCertificateInput{} } req = c.newRequest(op, input, output) output = &RegisterCertificateOutput{} req.Data = output return } // RegisterCertificate API operation for AWS IoT. // // Registers a device certificate with AWS IoT. If you have more than one CA // certificate that has the same subject field, you must specify the CA certificate // that was used to sign the device certificate being registered. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation RegisterCertificate for usage and error information. // // Returned Error Codes: // * ResourceAlreadyExistsException // The resource already exists. // // * InvalidRequestException // The request is not valid. // // * CertificateValidationException // The certificate is invalid. // // * CertificateStateException // The certificate operation is not allowed. // // * CertificateConflictException // Unable to verify the CA certificate used to sign the device certificate you // are attempting to register. This is happens when you have registered more // than one CA certificate that has the same subject field and public key. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) RegisterCertificate(input *RegisterCertificateInput) (*RegisterCertificateOutput, error) { req, out := c.RegisterCertificateRequest(input) err := req.Send() return out, err } const opRejectCertificateTransfer = "RejectCertificateTransfer" // RejectCertificateTransferRequest generates a "aws/request.Request" representing the // client's request for the RejectCertificateTransfer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RejectCertificateTransfer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RejectCertificateTransfer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RejectCertificateTransferRequest method. // req, resp := client.RejectCertificateTransferRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) RejectCertificateTransferRequest(input *RejectCertificateTransferInput) (req *request.Request, output *RejectCertificateTransferOutput) { op := &request.Operation{ Name: opRejectCertificateTransfer, HTTPMethod: "PATCH", HTTPPath: "/reject-certificate-transfer/{certificateId}", } if input == nil { input = &RejectCertificateTransferInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RejectCertificateTransferOutput{} req.Data = output return } // RejectCertificateTransfer API operation for AWS IoT. // // Rejects a pending certificate transfer. After AWS IoT rejects a certificate // transfer, the certificate status changes from PENDING_TRANSFER to INACTIVE. // // To check for pending certificate transfers, call ListCertificates to enumerate // your certificates. // // This operation can only be called by the transfer destination. After it is // called, the certificate will be returned to the source's account in the INACTIVE // state. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation RejectCertificateTransfer for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * TransferAlreadyCompletedException // You can't revert the certificate transfer because the transfer is already // complete. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) RejectCertificateTransfer(input *RejectCertificateTransferInput) (*RejectCertificateTransferOutput, error) { req, out := c.RejectCertificateTransferRequest(input) err := req.Send() return out, err } const opReplaceTopicRule = "ReplaceTopicRule" // ReplaceTopicRuleRequest generates a "aws/request.Request" representing the // client's request for the ReplaceTopicRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ReplaceTopicRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ReplaceTopicRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ReplaceTopicRuleRequest method. // req, resp := client.ReplaceTopicRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) ReplaceTopicRuleRequest(input *ReplaceTopicRuleInput) (req *request.Request, output *ReplaceTopicRuleOutput) { op := &request.Operation{ Name: opReplaceTopicRule, HTTPMethod: "PATCH", HTTPPath: "/rules/{ruleName}", } if input == nil { input = &ReplaceTopicRuleInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ReplaceTopicRuleOutput{} req.Data = output return } // ReplaceTopicRule API operation for AWS IoT. // // Replaces the specified rule. You must specify all parameters for the new // rule. Creating rules is an administrator-level action. Any user who has permission // to create rules will be able to access data processed by the rule. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation ReplaceTopicRule for usage and error information. // // Returned Error Codes: // * SqlParseException // The Rule-SQL expression can't be parsed correctly. // // * InternalException // An unexpected error has occurred. // // * InvalidRequestException // The request is not valid. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * UnauthorizedException // You are not authorized to perform this operation. // func (c *IoT) ReplaceTopicRule(input *ReplaceTopicRuleInput) (*ReplaceTopicRuleOutput, error) { req, out := c.ReplaceTopicRuleRequest(input) err := req.Send() return out, err } const opSetDefaultPolicyVersion = "SetDefaultPolicyVersion" // SetDefaultPolicyVersionRequest generates a "aws/request.Request" representing the // client's request for the SetDefaultPolicyVersion operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetDefaultPolicyVersion for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetDefaultPolicyVersion method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetDefaultPolicyVersionRequest method. // req, resp := client.SetDefaultPolicyVersionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) SetDefaultPolicyVersionRequest(input *SetDefaultPolicyVersionInput) (req *request.Request, output *SetDefaultPolicyVersionOutput) { op := &request.Operation{ Name: opSetDefaultPolicyVersion, HTTPMethod: "PATCH", HTTPPath: "/policies/{policyName}/version/{policyVersionId}", } if input == nil { input = &SetDefaultPolicyVersionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetDefaultPolicyVersionOutput{} req.Data = output return } // SetDefaultPolicyVersion API operation for AWS IoT. // // Sets the specified version of the specified policy as the policy's default // (operative) version. This action affects all certificates to which the policy // is attached. To list the principals the policy is attached to, use the ListPrincipalPolicy // API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation SetDefaultPolicyVersion for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) SetDefaultPolicyVersion(input *SetDefaultPolicyVersionInput) (*SetDefaultPolicyVersionOutput, error) { req, out := c.SetDefaultPolicyVersionRequest(input) err := req.Send() return out, err } const opSetLoggingOptions = "SetLoggingOptions" // SetLoggingOptionsRequest generates a "aws/request.Request" representing the // client's request for the SetLoggingOptions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetLoggingOptions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetLoggingOptions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetLoggingOptionsRequest method. // req, resp := client.SetLoggingOptionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) SetLoggingOptionsRequest(input *SetLoggingOptionsInput) (req *request.Request, output *SetLoggingOptionsOutput) { op := &request.Operation{ Name: opSetLoggingOptions, HTTPMethod: "POST", HTTPPath: "/loggingOptions", } if input == nil { input = &SetLoggingOptionsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetLoggingOptionsOutput{} req.Data = output return } // SetLoggingOptions API operation for AWS IoT. // // Sets the logging options. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation SetLoggingOptions for usage and error information. // // Returned Error Codes: // * InternalException // An unexpected error has occurred. // // * InvalidRequestException // The request is not valid. // // * ServiceUnavailableException // The service is temporarily unavailable. // func (c *IoT) SetLoggingOptions(input *SetLoggingOptionsInput) (*SetLoggingOptionsOutput, error) { req, out := c.SetLoggingOptionsRequest(input) err := req.Send() return out, err } const opTransferCertificate = "TransferCertificate" // TransferCertificateRequest generates a "aws/request.Request" representing the // client's request for the TransferCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See TransferCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the TransferCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the TransferCertificateRequest method. // req, resp := client.TransferCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) TransferCertificateRequest(input *TransferCertificateInput) (req *request.Request, output *TransferCertificateOutput) { op := &request.Operation{ Name: opTransferCertificate, HTTPMethod: "PATCH", HTTPPath: "/transfer-certificate/{certificateId}", } if input == nil { input = &TransferCertificateInput{} } req = c.newRequest(op, input, output) output = &TransferCertificateOutput{} req.Data = output return } // TransferCertificate API operation for AWS IoT. // // Transfers the specified certificate to the specified AWS account. // // You can cancel the transfer until it is acknowledged by the recipient. // // No notification is sent to the transfer destination's account. It is up to // the caller to notify the transfer target. // // The certificate being transferred must not be in the ACTIVE state. You can // use the UpdateCertificate API to deactivate it. // // The certificate must not have any policies attached to it. You can use the // DetachPrincipalPolicy API to detach them. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation TransferCertificate for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * ResourceNotFoundException // The specified resource does not exist. // // * CertificateStateException // The certificate operation is not allowed. // // * TransferConflictException // You can't transfer the certificate because authorization policies are still // attached. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) TransferCertificate(input *TransferCertificateInput) (*TransferCertificateOutput, error) { req, out := c.TransferCertificateRequest(input) err := req.Send() return out, err } const opUpdateCACertificate = "UpdateCACertificate" // UpdateCACertificateRequest generates a "aws/request.Request" representing the // client's request for the UpdateCACertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateCACertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateCACertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateCACertificateRequest method. // req, resp := client.UpdateCACertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) UpdateCACertificateRequest(input *UpdateCACertificateInput) (req *request.Request, output *UpdateCACertificateOutput) { op := &request.Operation{ Name: opUpdateCACertificate, HTTPMethod: "PUT", HTTPPath: "/cacertificate/{caCertificateId}", } if input == nil { input = &UpdateCACertificateInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateCACertificateOutput{} req.Data = output return } // UpdateCACertificate API operation for AWS IoT. // // Updates a registered CA certificate. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation UpdateCACertificate for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) UpdateCACertificate(input *UpdateCACertificateInput) (*UpdateCACertificateOutput, error) { req, out := c.UpdateCACertificateRequest(input) err := req.Send() return out, err } const opUpdateCertificate = "UpdateCertificate" // UpdateCertificateRequest generates a "aws/request.Request" representing the // client's request for the UpdateCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateCertificateRequest method. // req, resp := client.UpdateCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) UpdateCertificateRequest(input *UpdateCertificateInput) (req *request.Request, output *UpdateCertificateOutput) { op := &request.Operation{ Name: opUpdateCertificate, HTTPMethod: "PUT", HTTPPath: "/certificates/{certificateId}", } if input == nil { input = &UpdateCertificateInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateCertificateOutput{} req.Data = output return } // UpdateCertificate API operation for AWS IoT. // // Updates the status of the specified certificate. This operation is idempotent. // // Moving a certificate from the ACTIVE state (including REVOKED) will not disconnect // currently connected devices, but these devices will be unable to reconnect. // // The ACTIVE state is required to authenticate devices connecting to AWS IoT // using a certificate. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation UpdateCertificate for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * CertificateStateException // The certificate operation is not allowed. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // func (c *IoT) UpdateCertificate(input *UpdateCertificateInput) (*UpdateCertificateOutput, error) { req, out := c.UpdateCertificateRequest(input) err := req.Send() return out, err } const opUpdateThing = "UpdateThing" // UpdateThingRequest generates a "aws/request.Request" representing the // client's request for the UpdateThing operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateThing for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateThing method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateThingRequest method. // req, resp := client.UpdateThingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoT) UpdateThingRequest(input *UpdateThingInput) (req *request.Request, output *UpdateThingOutput) { op := &request.Operation{ Name: opUpdateThing, HTTPMethod: "PATCH", HTTPPath: "/things/{thingName}", } if input == nil { input = &UpdateThingInput{} } req = c.newRequest(op, input, output) output = &UpdateThingOutput{} req.Data = output return } // UpdateThing API operation for AWS IoT. // // Updates the data for a thing. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT's // API operation UpdateThing for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * VersionConflictException // An exception thrown when the version of a thing passed to a command is different // than the version specified with the --version parameter. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // // * ResourceNotFoundException // The specified resource does not exist. // func (c *IoT) UpdateThing(input *UpdateThingInput) (*UpdateThingOutput, error) { req, out := c.UpdateThingRequest(input) err := req.Send() return out, err } // The input for the AcceptCertificateTransfer operation. type AcceptCertificateTransferInput struct { _ struct{} `type:"structure"` // The ID of the certificate. // // CertificateId is a required field CertificateId *string `location:"uri" locationName:"certificateId" min:"64" type:"string" required:"true"` // Specifies whether the certificate is active. SetAsActive *bool `location:"querystring" locationName:"setAsActive" type:"boolean"` } // String returns the string representation func (s AcceptCertificateTransferInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AcceptCertificateTransferInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AcceptCertificateTransferInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AcceptCertificateTransferInput"} if s.CertificateId == nil { invalidParams.Add(request.NewErrParamRequired("CertificateId")) } if s.CertificateId != nil && len(*s.CertificateId) < 64 { invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AcceptCertificateTransferOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AcceptCertificateTransferOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AcceptCertificateTransferOutput) GoString() string { return s.String() } // Describes the actions associated with a rule. type Action struct { _ struct{} `type:"structure"` // Change the state of a CloudWatch alarm. CloudwatchAlarm *CloudwatchAlarmAction `locationName:"cloudwatchAlarm" type:"structure"` // Capture a CloudWatch metric. CloudwatchMetric *CloudwatchMetricAction `locationName:"cloudwatchMetric" type:"structure"` // Write to a DynamoDB table. DynamoDB *DynamoDBAction `locationName:"dynamoDB" type:"structure"` // Write to a DynamoDB table. This is a new version of the DynamoDB action. // It allows you to write each attribute in an MQTT message payload into a separate // DynamoDB column. DynamoDBv2 *DynamoDBv2Action `locationName:"dynamoDBv2" type:"structure"` // Write data to an Amazon Elasticsearch Service domain. Elasticsearch *ElasticsearchAction `locationName:"elasticsearch" type:"structure"` // Write to an Amazon Kinesis Firehose stream. Firehose *FirehoseAction `locationName:"firehose" type:"structure"` // Write data to an Amazon Kinesis stream. Kinesis *KinesisAction `locationName:"kinesis" type:"structure"` // Invoke a Lambda function. Lambda *LambdaAction `locationName:"lambda" type:"structure"` // Publish to another MQTT topic. Republish *RepublishAction `locationName:"republish" type:"structure"` // Write to an Amazon S3 bucket. S3 *S3Action `locationName:"s3" type:"structure"` // Publish to an Amazon SNS topic. Sns *SnsAction `locationName:"sns" type:"structure"` // Publish to an Amazon SQS queue. Sqs *SqsAction `locationName:"sqs" type:"structure"` } // String returns the string representation func (s Action) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Action) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Action) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Action"} if s.CloudwatchAlarm != nil { if err := s.CloudwatchAlarm.Validate(); err != nil { invalidParams.AddNested("CloudwatchAlarm", err.(request.ErrInvalidParams)) } } if s.CloudwatchMetric != nil { if err := s.CloudwatchMetric.Validate(); err != nil { invalidParams.AddNested("CloudwatchMetric", err.(request.ErrInvalidParams)) } } if s.DynamoDB != nil { if err := s.DynamoDB.Validate(); err != nil { invalidParams.AddNested("DynamoDB", err.(request.ErrInvalidParams)) } } if s.DynamoDBv2 != nil { if err := s.DynamoDBv2.Validate(); err != nil { invalidParams.AddNested("DynamoDBv2", err.(request.ErrInvalidParams)) } } if s.Elasticsearch != nil { if err := s.Elasticsearch.Validate(); err != nil { invalidParams.AddNested("Elasticsearch", err.(request.ErrInvalidParams)) } } if s.Firehose != nil { if err := s.Firehose.Validate(); err != nil { invalidParams.AddNested("Firehose", err.(request.ErrInvalidParams)) } } if s.Kinesis != nil { if err := s.Kinesis.Validate(); err != nil { invalidParams.AddNested("Kinesis", err.(request.ErrInvalidParams)) } } if s.Lambda != nil { if err := s.Lambda.Validate(); err != nil { invalidParams.AddNested("Lambda", err.(request.ErrInvalidParams)) } } if s.Republish != nil { if err := s.Republish.Validate(); err != nil { invalidParams.AddNested("Republish", err.(request.ErrInvalidParams)) } } if s.S3 != nil { if err := s.S3.Validate(); err != nil { invalidParams.AddNested("S3", err.(request.ErrInvalidParams)) } } if s.Sns != nil { if err := s.Sns.Validate(); err != nil { invalidParams.AddNested("Sns", err.(request.ErrInvalidParams)) } } if s.Sqs != nil { if err := s.Sqs.Validate(); err != nil { invalidParams.AddNested("Sqs", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The input for the AttachPrincipalPolicy operation. type AttachPrincipalPolicyInput struct { _ struct{} `type:"structure"` // The policy name. // // PolicyName is a required field PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"` // The principal, which can be a certificate ARN (as returned from the CreateCertificate // operation) or an Amazon Cognito ID. // // Principal is a required field Principal *string `location:"header" locationName:"x-amzn-iot-principal" type:"string" required:"true"` } // String returns the string representation func (s AttachPrincipalPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachPrincipalPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttachPrincipalPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttachPrincipalPolicyInput"} if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if s.Principal == nil { invalidParams.Add(request.NewErrParamRequired("Principal")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AttachPrincipalPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AttachPrincipalPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachPrincipalPolicyOutput) GoString() string { return s.String() } // The input for the AttachThingPrincipal operation. type AttachThingPrincipalInput struct { _ struct{} `type:"structure"` // The principal, such as a certificate or other credential. // // Principal is a required field Principal *string `location:"header" locationName:"x-amzn-principal" type:"string" required:"true"` // The name of the thing. // // ThingName is a required field ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s AttachThingPrincipalInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachThingPrincipalInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttachThingPrincipalInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttachThingPrincipalInput"} if s.Principal == nil { invalidParams.Add(request.NewErrParamRequired("Principal")) } if s.ThingName == nil { invalidParams.Add(request.NewErrParamRequired("ThingName")) } if s.ThingName != nil && len(*s.ThingName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThingName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the AttachThingPrincipal operation. type AttachThingPrincipalOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AttachThingPrincipalOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachThingPrincipalOutput) GoString() string { return s.String() } // The attribute payload. type AttributePayload struct { _ struct{} `type:"structure"` // A JSON string containing up to three key-value pair in JSON format. For example: // // {\"attributes\":{\"string1\":\"string2\"}}) Attributes map[string]*string `locationName:"attributes" type:"map"` // Specifies whether the list of attributes provided in the AttributePayload // is merged with the attributes stored in the registry, instead of overwriting // them. // // To remove an attribute, call UpdateThing with an empty attribute value. // // The merge attribute is only valid when calling UpdateThing. Merge *bool `locationName:"merge" type:"boolean"` } // String returns the string representation func (s AttributePayload) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttributePayload) GoString() string { return s.String() } // A CA certificate. type CACertificate struct { _ struct{} `type:"structure"` // The ARN of the CA certificate. CertificateArn *string `locationName:"certificateArn" type:"string"` // The ID of the CA certificate. CertificateId *string `locationName:"certificateId" min:"64" type:"string"` // The date the CA certificate was created. CreationDate *time.Time `locationName:"creationDate" type:"timestamp" timestampFormat:"unix"` // The status of the CA certificate. // // The status value REGISTER_INACTIVE is deprecated and should not be used. Status *string `locationName:"status" type:"string" enum:"CACertificateStatus"` } // String returns the string representation func (s CACertificate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CACertificate) GoString() string { return s.String() } // Describes a CA certificate. type CACertificateDescription struct { _ struct{} `type:"structure"` // Whether the CA certificate configured for auto registration of device certificates. // Valid values are "ENABLE" and "DISABLE" AutoRegistrationStatus *string `locationName:"autoRegistrationStatus" type:"string" enum:"AutoRegistrationStatus"` // The CA certificate ARN. CertificateArn *string `locationName:"certificateArn" type:"string"` // The CA certificate ID. CertificateId *string `locationName:"certificateId" min:"64" type:"string"` // The CA certificate data, in PEM format. CertificatePem *string `locationName:"certificatePem" min:"1" type:"string"` // The date the CA certificate was created. CreationDate *time.Time `locationName:"creationDate" type:"timestamp" timestampFormat:"unix"` // The owner of the CA certificate. OwnedBy *string `locationName:"ownedBy" type:"string"` // The status of a CA certificate. Status *string `locationName:"status" type:"string" enum:"CACertificateStatus"` } // String returns the string representation func (s CACertificateDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CACertificateDescription) GoString() string { return s.String() } // The input for the CancelCertificateTransfer operation. type CancelCertificateTransferInput struct { _ struct{} `type:"structure"` // The ID of the certificate. // // CertificateId is a required field CertificateId *string `location:"uri" locationName:"certificateId" min:"64" type:"string" required:"true"` } // String returns the string representation func (s CancelCertificateTransferInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelCertificateTransferInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CancelCertificateTransferInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelCertificateTransferInput"} if s.CertificateId == nil { invalidParams.Add(request.NewErrParamRequired("CertificateId")) } if s.CertificateId != nil && len(*s.CertificateId) < 64 { invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CancelCertificateTransferOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CancelCertificateTransferOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelCertificateTransferOutput) GoString() string { return s.String() } // Information about a certificate. type Certificate struct { _ struct{} `type:"structure"` // The ARN of the certificate. CertificateArn *string `locationName:"certificateArn" type:"string"` // The ID of the certificate. CertificateId *string `locationName:"certificateId" min:"64" type:"string"` // The date and time the certificate was created. CreationDate *time.Time `locationName:"creationDate" type:"timestamp" timestampFormat:"unix"` // The status of the certificate. // // The status value REGISTER_INACTIVE is deprecated and should not be used. Status *string `locationName:"status" type:"string" enum:"CertificateStatus"` } // String returns the string representation func (s Certificate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Certificate) GoString() string { return s.String() } // Describes a certificate. type CertificateDescription struct { _ struct{} `type:"structure"` // The certificate ID of the CA certificate used to sign this certificate. CaCertificateId *string `locationName:"caCertificateId" min:"64" type:"string"` // The ARN of the certificate. CertificateArn *string `locationName:"certificateArn" type:"string"` // The ID of the certificate. CertificateId *string `locationName:"certificateId" min:"64" type:"string"` // The certificate data, in PEM format. CertificatePem *string `locationName:"certificatePem" min:"1" type:"string"` // The date and time the certificate was created. CreationDate *time.Time `locationName:"creationDate" type:"timestamp" timestampFormat:"unix"` // The date and time the certificate was last modified. LastModifiedDate *time.Time `locationName:"lastModifiedDate" type:"timestamp" timestampFormat:"unix"` // The ID of the AWS account that owns the certificate. OwnedBy *string `locationName:"ownedBy" type:"string"` // The ID of the AWS account of the previous owner of the certificate. PreviousOwnedBy *string `locationName:"previousOwnedBy" type:"string"` // The status of the certificate. Status *string `locationName:"status" type:"string" enum:"CertificateStatus"` // The transfer data. TransferData *TransferData `locationName:"transferData" type:"structure"` } // String returns the string representation func (s CertificateDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CertificateDescription) GoString() string { return s.String() } // Describes an action that updates a CloudWatch alarm. type CloudwatchAlarmAction struct { _ struct{} `type:"structure"` // The CloudWatch alarm name. // // AlarmName is a required field AlarmName *string `locationName:"alarmName" type:"string" required:"true"` // The IAM role that allows access to the CloudWatch alarm. // // RoleArn is a required field RoleArn *string `locationName:"roleArn" type:"string" required:"true"` // The reason for the alarm change. // // StateReason is a required field StateReason *string `locationName:"stateReason" type:"string" required:"true"` // The value of the alarm state. Acceptable values are: OK, ALARM, INSUFFICIENT_DATA. // // StateValue is a required field StateValue *string `locationName:"stateValue" type:"string" required:"true"` } // String returns the string representation func (s CloudwatchAlarmAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CloudwatchAlarmAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CloudwatchAlarmAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CloudwatchAlarmAction"} if s.AlarmName == nil { invalidParams.Add(request.NewErrParamRequired("AlarmName")) } if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if s.StateReason == nil { invalidParams.Add(request.NewErrParamRequired("StateReason")) } if s.StateValue == nil { invalidParams.Add(request.NewErrParamRequired("StateValue")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes an action that captures a CloudWatch metric. type CloudwatchMetricAction struct { _ struct{} `type:"structure"` // The CloudWatch metric name. // // MetricName is a required field MetricName *string `locationName:"metricName" type:"string" required:"true"` // The CloudWatch metric namespace name. // // MetricNamespace is a required field MetricNamespace *string `locationName:"metricNamespace" type:"string" required:"true"` // An optional Unix timestamp (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#about_timestamp). MetricTimestamp *string `locationName:"metricTimestamp" type:"string"` // The metric unit (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#Unit) // supported by CloudWatch. // // MetricUnit is a required field MetricUnit *string `locationName:"metricUnit" type:"string" required:"true"` // The CloudWatch metric value. // // MetricValue is a required field MetricValue *string `locationName:"metricValue" type:"string" required:"true"` // The IAM role that allows access to the CloudWatch metric. // // RoleArn is a required field RoleArn *string `locationName:"roleArn" type:"string" required:"true"` } // String returns the string representation func (s CloudwatchMetricAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CloudwatchMetricAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CloudwatchMetricAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CloudwatchMetricAction"} if s.MetricName == nil { invalidParams.Add(request.NewErrParamRequired("MetricName")) } if s.MetricNamespace == nil { invalidParams.Add(request.NewErrParamRequired("MetricNamespace")) } if s.MetricUnit == nil { invalidParams.Add(request.NewErrParamRequired("MetricUnit")) } if s.MetricValue == nil { invalidParams.Add(request.NewErrParamRequired("MetricValue")) } if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The input for the CreateCertificateFromCsr operation. type CreateCertificateFromCsrInput struct { _ struct{} `type:"structure"` // The certificate signing request (CSR). // // CertificateSigningRequest is a required field CertificateSigningRequest *string `locationName:"certificateSigningRequest" min:"1" type:"string" required:"true"` // Specifies whether the certificate is active. SetAsActive *bool `location:"querystring" locationName:"setAsActive" type:"boolean"` } // String returns the string representation func (s CreateCertificateFromCsrInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCertificateFromCsrInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateCertificateFromCsrInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateCertificateFromCsrInput"} if s.CertificateSigningRequest == nil { invalidParams.Add(request.NewErrParamRequired("CertificateSigningRequest")) } if s.CertificateSigningRequest != nil && len(*s.CertificateSigningRequest) < 1 { invalidParams.Add(request.NewErrParamMinLen("CertificateSigningRequest", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the CreateCertificateFromCsr operation. type CreateCertificateFromCsrOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the certificate. You can use the ARN as // a principal for policy operations. CertificateArn *string `locationName:"certificateArn" type:"string"` // The ID of the certificate. Certificate management operations only take a // certificateId. CertificateId *string `locationName:"certificateId" min:"64" type:"string"` // The certificate data, in PEM format. CertificatePem *string `locationName:"certificatePem" min:"1" type:"string"` } // String returns the string representation func (s CreateCertificateFromCsrOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCertificateFromCsrOutput) GoString() string { return s.String() } // The input for the CreateKeysAndCertificate operation. type CreateKeysAndCertificateInput struct { _ struct{} `type:"structure"` // Specifies whether the certificate is active. SetAsActive *bool `location:"querystring" locationName:"setAsActive" type:"boolean"` } // String returns the string representation func (s CreateKeysAndCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateKeysAndCertificateInput) GoString() string { return s.String() } // The output of the CreateKeysAndCertificate operation. type CreateKeysAndCertificateOutput struct { _ struct{} `type:"structure"` // The ARN of the certificate. CertificateArn *string `locationName:"certificateArn" type:"string"` // The ID of the certificate. AWS IoT issues a default subject name for the // certificate (for example, AWS IoT Certificate). CertificateId *string `locationName:"certificateId" min:"64" type:"string"` // The certificate data, in PEM format. CertificatePem *string `locationName:"certificatePem" min:"1" type:"string"` // The generated key pair. KeyPair *KeyPair `locationName:"keyPair" type:"structure"` } // String returns the string representation func (s CreateKeysAndCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateKeysAndCertificateOutput) GoString() string { return s.String() } // The input for the CreatePolicy operation. type CreatePolicyInput struct { _ struct{} `type:"structure"` // The JSON document that describes the policy. policyDocument must have a minimum // length of 1, with a maximum length of 2048, excluding whitespace. // // PolicyDocument is a required field PolicyDocument *string `locationName:"policyDocument" type:"string" required:"true"` // The policy name. // // PolicyName is a required field PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreatePolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePolicyInput"} if s.PolicyDocument == nil { invalidParams.Add(request.NewErrParamRequired("PolicyDocument")) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the CreatePolicy operation. type CreatePolicyOutput struct { _ struct{} `type:"structure"` // The policy ARN. PolicyArn *string `locationName:"policyArn" type:"string"` // The JSON document that describes the policy. PolicyDocument *string `locationName:"policyDocument" type:"string"` // The policy name. PolicyName *string `locationName:"policyName" min:"1" type:"string"` // The policy version ID. PolicyVersionId *string `locationName:"policyVersionId" type:"string"` } // String returns the string representation func (s CreatePolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePolicyOutput) GoString() string { return s.String() } // The input for the CreatePolicyVersion operation. type CreatePolicyVersionInput struct { _ struct{} `type:"structure"` // The JSON document that describes the policy. Minimum length of 1. Maximum // length of 2048, excluding whitespaces // // PolicyDocument is a required field PolicyDocument *string `locationName:"policyDocument" type:"string" required:"true"` // The policy name. // // PolicyName is a required field PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"` // Specifies whether the policy version is set as the default. When this parameter // is true, the new policy version becomes the operative version (that is, the // version that is in effect for the certificates to which the policy is attached). SetAsDefault *bool `location:"querystring" locationName:"setAsDefault" type:"boolean"` } // String returns the string representation func (s CreatePolicyVersionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePolicyVersionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePolicyVersionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePolicyVersionInput"} if s.PolicyDocument == nil { invalidParams.Add(request.NewErrParamRequired("PolicyDocument")) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output of the CreatePolicyVersion operation. type CreatePolicyVersionOutput struct { _ struct{} `type:"structure"` // Specifies whether the policy version is the default. IsDefaultVersion *bool `locationName:"isDefaultVersion" type:"boolean"` // The policy ARN. PolicyArn *string `locationName:"policyArn" type:"string"` // The JSON document that describes the policy. PolicyDocument *string `locationName:"policyDocument" type:"string"` // The policy version ID. PolicyVersionId *string `locationName:"policyVersionId" type:"string"` } // String returns the string representation func (s CreatePolicyVersionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePolicyVersionOutput) GoString() string { return s.String() } // The input for the CreateThing operation. type CreateThingInput struct { _ struct{} `type:"structure"` // The attribute payload, which consists of up to three name/value pairs in // a JSON document. For example: // // {\"attributes\":{\"string1\":\"string2\"}}) AttributePayload *AttributePayload `locationName:"attributePayload" type:"structure"` // The name of the thing to create. // // ThingName is a required field ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"` // The name of the thing type associated with the new thing. ThingTypeName *string `locationName:"thingTypeName" min:"1" type:"string"` } // String returns the string representation func (s CreateThingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateThingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateThingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateThingInput"} if s.ThingName == nil { invalidParams.Add(request.NewErrParamRequired("ThingName")) } if s.ThingName != nil && len(*s.ThingName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThingName", 1)) } if s.ThingTypeName != nil && len(*s.ThingTypeName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThingTypeName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output of the CreateThing operation. type CreateThingOutput struct { _ struct{} `type:"structure"` // The ARN of the new thing. ThingArn *string `locationName:"thingArn" type:"string"` // The name of the new thing. ThingName *string `locationName:"thingName" min:"1" type:"string"` } // String returns the string representation func (s CreateThingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateThingOutput) GoString() string { return s.String() } // The input for the CreateThingType operation. type CreateThingTypeInput struct { _ struct{} `type:"structure"` // The name of the thing type. // // ThingTypeName is a required field ThingTypeName *string `location:"uri" locationName:"thingTypeName" min:"1" type:"string" required:"true"` // The ThingTypeProperties for the thing type to create. It contains information // about the new thing type including a description, and a list of searchable // thing attribute names. ThingTypeProperties *ThingTypeProperties `locationName:"thingTypeProperties" type:"structure"` } // String returns the string representation func (s CreateThingTypeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateThingTypeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateThingTypeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateThingTypeInput"} if s.ThingTypeName == nil { invalidParams.Add(request.NewErrParamRequired("ThingTypeName")) } if s.ThingTypeName != nil && len(*s.ThingTypeName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThingTypeName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output of the CreateThingType operation. type CreateThingTypeOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the thing type. ThingTypeArn *string `locationName:"thingTypeArn" type:"string"` // The name of the thing type. ThingTypeName *string `locationName:"thingTypeName" min:"1" type:"string"` } // String returns the string representation func (s CreateThingTypeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateThingTypeOutput) GoString() string { return s.String() } // The input for the CreateTopicRule operation. type CreateTopicRuleInput struct { _ struct{} `type:"structure" payload:"TopicRulePayload"` // The name of the rule. // // RuleName is a required field RuleName *string `location:"uri" locationName:"ruleName" min:"1" type:"string" required:"true"` // The rule payload. // // TopicRulePayload is a required field TopicRulePayload *TopicRulePayload `locationName:"topicRulePayload" type:"structure" required:"true"` } // String returns the string representation func (s CreateTopicRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTopicRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateTopicRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateTopicRuleInput"} if s.RuleName == nil { invalidParams.Add(request.NewErrParamRequired("RuleName")) } if s.RuleName != nil && len(*s.RuleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RuleName", 1)) } if s.TopicRulePayload == nil { invalidParams.Add(request.NewErrParamRequired("TopicRulePayload")) } if s.TopicRulePayload != nil { if err := s.TopicRulePayload.Validate(); err != nil { invalidParams.AddNested("TopicRulePayload", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateTopicRuleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateTopicRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTopicRuleOutput) GoString() string { return s.String() } // Input for the DeleteCACertificate operation. type DeleteCACertificateInput struct { _ struct{} `type:"structure"` // The ID of the certificate to delete. // // CertificateId is a required field CertificateId *string `location:"uri" locationName:"caCertificateId" min:"64" type:"string" required:"true"` } // String returns the string representation func (s DeleteCACertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCACertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteCACertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteCACertificateInput"} if s.CertificateId == nil { invalidParams.Add(request.NewErrParamRequired("CertificateId")) } if s.CertificateId != nil && len(*s.CertificateId) < 64 { invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the DeleteCACertificate operation. type DeleteCACertificateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteCACertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCACertificateOutput) GoString() string { return s.String() } // The input for the DeleteCertificate operation. type DeleteCertificateInput struct { _ struct{} `type:"structure"` // The ID of the certificate. // // CertificateId is a required field CertificateId *string `location:"uri" locationName:"certificateId" min:"64" type:"string" required:"true"` } // String returns the string representation func (s DeleteCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteCertificateInput"} if s.CertificateId == nil { invalidParams.Add(request.NewErrParamRequired("CertificateId")) } if s.CertificateId != nil && len(*s.CertificateId) < 64 { invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteCertificateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteCertificateOutput) GoString() string { return s.String() } // The input for the DeletePolicy operation. type DeletePolicyInput struct { _ struct{} `type:"structure"` // The name of the policy to delete. // // PolicyName is a required field PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeletePolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeletePolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeletePolicyInput"} if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeletePolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeletePolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePolicyOutput) GoString() string { return s.String() } // The input for the DeletePolicyVersion operation. type DeletePolicyVersionInput struct { _ struct{} `type:"structure"` // The name of the policy. // // PolicyName is a required field PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"` // The policy version ID. // // PolicyVersionId is a required field PolicyVersionId *string `location:"uri" locationName:"policyVersionId" type:"string" required:"true"` } // String returns the string representation func (s DeletePolicyVersionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePolicyVersionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeletePolicyVersionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeletePolicyVersionInput"} if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if s.PolicyVersionId == nil { invalidParams.Add(request.NewErrParamRequired("PolicyVersionId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeletePolicyVersionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeletePolicyVersionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePolicyVersionOutput) GoString() string { return s.String() } // The input for the DeleteRegistrationCode operation. type DeleteRegistrationCodeInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteRegistrationCodeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRegistrationCodeInput) GoString() string { return s.String() } // The output for the DeleteRegistrationCode operation. type DeleteRegistrationCodeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteRegistrationCodeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRegistrationCodeOutput) GoString() string { return s.String() } // The input for the DeleteThing operation. type DeleteThingInput struct { _ struct{} `type:"structure"` // The expected version of the thing record in the registry. If the version // of the record in the registry does not match the expected version specified // in the request, the DeleteThing request is rejected with a VersionConflictException. ExpectedVersion *int64 `location:"querystring" locationName:"expectedVersion" type:"long"` // The name of the thing to delete. // // ThingName is a required field ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteThingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteThingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteThingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteThingInput"} if s.ThingName == nil { invalidParams.Add(request.NewErrParamRequired("ThingName")) } if s.ThingName != nil && len(*s.ThingName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThingName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output of the DeleteThing operation. type DeleteThingOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteThingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteThingOutput) GoString() string { return s.String() } // The input for the DeleteThingType operation. type DeleteThingTypeInput struct { _ struct{} `type:"structure"` // The name of the thing type. // // ThingTypeName is a required field ThingTypeName *string `location:"uri" locationName:"thingTypeName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteThingTypeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteThingTypeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteThingTypeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteThingTypeInput"} if s.ThingTypeName == nil { invalidParams.Add(request.NewErrParamRequired("ThingTypeName")) } if s.ThingTypeName != nil && len(*s.ThingTypeName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThingTypeName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the DeleteThingType operation. type DeleteThingTypeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteThingTypeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteThingTypeOutput) GoString() string { return s.String() } // The input for the DeleteTopicRule operation. type DeleteTopicRuleInput struct { _ struct{} `type:"structure"` // The name of the rule. // // RuleName is a required field RuleName *string `location:"uri" locationName:"ruleName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteTopicRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTopicRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTopicRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTopicRuleInput"} if s.RuleName == nil { invalidParams.Add(request.NewErrParamRequired("RuleName")) } if s.RuleName != nil && len(*s.RuleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RuleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteTopicRuleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteTopicRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTopicRuleOutput) GoString() string { return s.String() } // The input for the DeprecateThingType operation. type DeprecateThingTypeInput struct { _ struct{} `type:"structure"` // The name of the thing type to deprecate. // // ThingTypeName is a required field ThingTypeName *string `location:"uri" locationName:"thingTypeName" min:"1" type:"string" required:"true"` // Whether to undeprecate a deprecated thing type. If true, the thing type will // not be deprecated anymore and you can associate it with things. UndoDeprecate *bool `locationName:"undoDeprecate" type:"boolean"` } // String returns the string representation func (s DeprecateThingTypeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeprecateThingTypeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeprecateThingTypeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeprecateThingTypeInput"} if s.ThingTypeName == nil { invalidParams.Add(request.NewErrParamRequired("ThingTypeName")) } if s.ThingTypeName != nil && len(*s.ThingTypeName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThingTypeName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the DeprecateThingType operation. type DeprecateThingTypeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeprecateThingTypeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeprecateThingTypeOutput) GoString() string { return s.String() } // The input for the DescribeCACertificate operation. type DescribeCACertificateInput struct { _ struct{} `type:"structure"` // The CA certificate identifier. // // CertificateId is a required field CertificateId *string `location:"uri" locationName:"caCertificateId" min:"64" type:"string" required:"true"` } // String returns the string representation func (s DescribeCACertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCACertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeCACertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeCACertificateInput"} if s.CertificateId == nil { invalidParams.Add(request.NewErrParamRequired("CertificateId")) } if s.CertificateId != nil && len(*s.CertificateId) < 64 { invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the DescribeCACertificate operation. type DescribeCACertificateOutput struct { _ struct{} `type:"structure"` // The CA certificate description. CertificateDescription *CACertificateDescription `locationName:"certificateDescription" type:"structure"` } // String returns the string representation func (s DescribeCACertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCACertificateOutput) GoString() string { return s.String() } // The input for the DescribeCertificate operation. type DescribeCertificateInput struct { _ struct{} `type:"structure"` // The ID of the certificate. // // CertificateId is a required field CertificateId *string `location:"uri" locationName:"certificateId" min:"64" type:"string" required:"true"` } // String returns the string representation func (s DescribeCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeCertificateInput"} if s.CertificateId == nil { invalidParams.Add(request.NewErrParamRequired("CertificateId")) } if s.CertificateId != nil && len(*s.CertificateId) < 64 { invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output of the DescribeCertificate operation. type DescribeCertificateOutput struct { _ struct{} `type:"structure"` // The description of the certificate. CertificateDescription *CertificateDescription `locationName:"certificateDescription" type:"structure"` } // String returns the string representation func (s DescribeCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCertificateOutput) GoString() string { return s.String() } // The input for the DescribeEndpoint operation. type DescribeEndpointInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DescribeEndpointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEndpointInput) GoString() string { return s.String() } // The output from the DescribeEndpoint operation. type DescribeEndpointOutput struct { _ struct{} `type:"structure"` // The endpoint. The format of the endpoint is as follows: identifier.iot.region.amazonaws.com. EndpointAddress *string `locationName:"endpointAddress" type:"string"` } // String returns the string representation func (s DescribeEndpointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEndpointOutput) GoString() string { return s.String() } // The input for the DescribeThing operation. type DescribeThingInput struct { _ struct{} `type:"structure"` // The name of the thing. // // ThingName is a required field ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeThingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeThingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeThingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeThingInput"} if s.ThingName == nil { invalidParams.Add(request.NewErrParamRequired("ThingName")) } if s.ThingName != nil && len(*s.ThingName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThingName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the DescribeThing operation. type DescribeThingOutput struct { _ struct{} `type:"structure"` // The thing attributes. Attributes map[string]*string `locationName:"attributes" type:"map"` // The default client ID. DefaultClientId *string `locationName:"defaultClientId" type:"string"` // The name of the thing. ThingName *string `locationName:"thingName" min:"1" type:"string"` // The thing type name. ThingTypeName *string `locationName:"thingTypeName" min:"1" type:"string"` // The current version of the thing record in the registry. // // To avoid unintentional changes to the information in the registry, you can // pass the version information in the expectedVersion parameter of the UpdateThing // and DeleteThing calls. Version *int64 `locationName:"version" type:"long"` } // String returns the string representation func (s DescribeThingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeThingOutput) GoString() string { return s.String() } // The input for the DescribeThingType operation. type DescribeThingTypeInput struct { _ struct{} `type:"structure"` // The name of the thing type. // // ThingTypeName is a required field ThingTypeName *string `location:"uri" locationName:"thingTypeName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeThingTypeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeThingTypeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeThingTypeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeThingTypeInput"} if s.ThingTypeName == nil { invalidParams.Add(request.NewErrParamRequired("ThingTypeName")) } if s.ThingTypeName != nil && len(*s.ThingTypeName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThingTypeName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the DescribeThingType operation. type DescribeThingTypeOutput struct { _ struct{} `type:"structure"` // The ThingTypeMetadata contains additional information about the thing type // including: creation date and time, a value indicating whether the thing type // is deprecated, and a date and time when time was deprecated. ThingTypeMetadata *ThingTypeMetadata `locationName:"thingTypeMetadata" type:"structure"` // The name of the thing type. ThingTypeName *string `locationName:"thingTypeName" min:"1" type:"string"` // The ThingTypeProperties contains information about the thing type including // description, and a list of searchable thing attribute names. ThingTypeProperties *ThingTypeProperties `locationName:"thingTypeProperties" type:"structure"` } // String returns the string representation func (s DescribeThingTypeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeThingTypeOutput) GoString() string { return s.String() } // The input for the DetachPrincipalPolicy operation. type DetachPrincipalPolicyInput struct { _ struct{} `type:"structure"` // The name of the policy to detach. // // PolicyName is a required field PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"` // The principal. // // If the principal is a certificate, specify the certificate ARN. If the principal // is an Amazon Cognito identity, specify the identity ID. // // Principal is a required field Principal *string `location:"header" locationName:"x-amzn-iot-principal" type:"string" required:"true"` } // String returns the string representation func (s DetachPrincipalPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachPrincipalPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DetachPrincipalPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DetachPrincipalPolicyInput"} if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if s.Principal == nil { invalidParams.Add(request.NewErrParamRequired("Principal")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DetachPrincipalPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DetachPrincipalPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachPrincipalPolicyOutput) GoString() string { return s.String() } // The input for the DetachThingPrincipal operation. type DetachThingPrincipalInput struct { _ struct{} `type:"structure"` // If the principal is a certificate, this value must be ARN of the certificate. // If the principal is an Amazon Cognito identity, this value must be the ID // of the Amazon Cognito identity. // // Principal is a required field Principal *string `location:"header" locationName:"x-amzn-principal" type:"string" required:"true"` // The name of the thing. // // ThingName is a required field ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DetachThingPrincipalInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachThingPrincipalInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DetachThingPrincipalInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DetachThingPrincipalInput"} if s.Principal == nil { invalidParams.Add(request.NewErrParamRequired("Principal")) } if s.ThingName == nil { invalidParams.Add(request.NewErrParamRequired("ThingName")) } if s.ThingName != nil && len(*s.ThingName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThingName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the DetachThingPrincipal operation. type DetachThingPrincipalOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DetachThingPrincipalOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachThingPrincipalOutput) GoString() string { return s.String() } // The input for the DisableTopicRuleRequest operation. type DisableTopicRuleInput struct { _ struct{} `type:"structure"` // The name of the rule to disable. // // RuleName is a required field RuleName *string `location:"uri" locationName:"ruleName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DisableTopicRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableTopicRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisableTopicRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisableTopicRuleInput"} if s.RuleName == nil { invalidParams.Add(request.NewErrParamRequired("RuleName")) } if s.RuleName != nil && len(*s.RuleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RuleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DisableTopicRuleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DisableTopicRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableTopicRuleOutput) GoString() string { return s.String() } // Describes an action to write to a DynamoDB table. // // The tableName, hashKeyField, and rangeKeyField values must match the values // used when you created the table. // // The hashKeyValue and rangeKeyvalue fields use a substitution template syntax. // These templates provide data at runtime. The syntax is as follows: ${sql-expression}. // // You can specify any valid expression in a WHERE or SELECT clause, including // JSON properties, comparisons, calculations, and functions. For example, the // following field uses the third level of the topic: // // "hashKeyValue": "${topic(3)}" // // The following field uses the timestamp: // // "rangeKeyValue": "${timestamp()}" type DynamoDBAction struct { _ struct{} `type:"structure"` // The hash key name. // // HashKeyField is a required field HashKeyField *string `locationName:"hashKeyField" type:"string" required:"true"` // The hash key type. Valid values are "STRING" or "NUMBER" HashKeyType *string `locationName:"hashKeyType" type:"string" enum:"DynamoKeyType"` // The hash key value. // // HashKeyValue is a required field HashKeyValue *string `locationName:"hashKeyValue" type:"string" required:"true"` // The type of operation to be performed. This follows the substitution template, // so it can be ${operation}, but the substitution must result in one of the // following: INSERT, UPDATE, or DELETE. Operation *string `locationName:"operation" type:"string"` // The action payload. This name can be customized. PayloadField *string `locationName:"payloadField" type:"string"` // The range key name. RangeKeyField *string `locationName:"rangeKeyField" type:"string"` // The range key type. Valid values are "STRING" or "NUMBER" RangeKeyType *string `locationName:"rangeKeyType" type:"string" enum:"DynamoKeyType"` // The range key value. RangeKeyValue *string `locationName:"rangeKeyValue" type:"string"` // The ARN of the IAM role that grants access to the DynamoDB table. // // RoleArn is a required field RoleArn *string `locationName:"roleArn" type:"string" required:"true"` // The name of the DynamoDB table. // // TableName is a required field TableName *string `locationName:"tableName" type:"string" required:"true"` } // String returns the string representation func (s DynamoDBAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DynamoDBAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DynamoDBAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DynamoDBAction"} if s.HashKeyField == nil { invalidParams.Add(request.NewErrParamRequired("HashKeyField")) } if s.HashKeyValue == nil { invalidParams.Add(request.NewErrParamRequired("HashKeyValue")) } if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if s.TableName == nil { invalidParams.Add(request.NewErrParamRequired("TableName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes an action to write to a DynamoDB table. // // This DynamoDB action writes each attribute in the message payload into it's // own column in the DynamoDB table. type DynamoDBv2Action struct { _ struct{} `type:"structure"` // Specifies the DynamoDB table to which the message data will be written. For // example: // // { "dynamoDBv2": { "roleArn": "aws:iam:12341251:my-role" "putItem": { "tableName": // "my-table" } } } // // Each attribute in the message payload will be written to a separate column // in the DynamoDB database. PutItem *PutItemInput `locationName:"putItem" type:"structure"` // The ARN of the IAM role that grants access to the DynamoDB table. RoleArn *string `locationName:"roleArn" type:"string"` } // String returns the string representation func (s DynamoDBv2Action) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DynamoDBv2Action) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DynamoDBv2Action) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DynamoDBv2Action"} if s.PutItem != nil { if err := s.PutItem.Validate(); err != nil { invalidParams.AddNested("PutItem", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes an action that writes data to an Amazon Elasticsearch Service domain. type ElasticsearchAction struct { _ struct{} `type:"structure"` // The endpoint of your Elasticsearch domain. // // Endpoint is a required field Endpoint *string `locationName:"endpoint" type:"string" required:"true"` // The unique identifier for the document you are storing. // // Id is a required field Id *string `locationName:"id" type:"string" required:"true"` // The Elasticsearch index where you want to store your data. // // Index is a required field Index *string `locationName:"index" type:"string" required:"true"` // The IAM role ARN that has access to Elasticsearch. // // RoleArn is a required field RoleArn *string `locationName:"roleArn" type:"string" required:"true"` // The type of document you are storing. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true"` } // String returns the string representation func (s ElasticsearchAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ElasticsearchAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ElasticsearchAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ElasticsearchAction"} if s.Endpoint == nil { invalidParams.Add(request.NewErrParamRequired("Endpoint")) } if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Index == nil { invalidParams.Add(request.NewErrParamRequired("Index")) } if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The input for the EnableTopicRuleRequest operation. type EnableTopicRuleInput struct { _ struct{} `type:"structure"` // The name of the topic rule to enable. // // RuleName is a required field RuleName *string `location:"uri" locationName:"ruleName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s EnableTopicRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableTopicRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableTopicRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableTopicRuleInput"} if s.RuleName == nil { invalidParams.Add(request.NewErrParamRequired("RuleName")) } if s.RuleName != nil && len(*s.RuleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RuleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type EnableTopicRuleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s EnableTopicRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableTopicRuleOutput) GoString() string { return s.String() } // Describes an action that writes data to an Amazon Kinesis Firehose stream. type FirehoseAction struct { _ struct{} `type:"structure"` // The delivery stream name. // // DeliveryStreamName is a required field DeliveryStreamName *string `locationName:"deliveryStreamName" type:"string" required:"true"` // The IAM role that grants access to the Amazon Kinesis Firehost stream. // // RoleArn is a required field RoleArn *string `locationName:"roleArn" type:"string" required:"true"` // A character separator that will be used to separate records written to the // Firehose stream. Valid values are: '\n' (newline), '\t' (tab), '\r\n' (Windows // newline), ',' (comma). Separator *string `locationName:"separator" type:"string"` } // String returns the string representation func (s FirehoseAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FirehoseAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *FirehoseAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "FirehoseAction"} if s.DeliveryStreamName == nil { invalidParams.Add(request.NewErrParamRequired("DeliveryStreamName")) } if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The input for the GetLoggingOptions operation. type GetLoggingOptionsInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GetLoggingOptionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetLoggingOptionsInput) GoString() string { return s.String() } // The output from the GetLoggingOptions operation. type GetLoggingOptionsOutput struct { _ struct{} `type:"structure"` // The logging level. LogLevel *string `locationName:"logLevel" type:"string" enum:"LogLevel"` // The ARN of the IAM role that grants access. RoleArn *string `locationName:"roleArn" type:"string"` } // String returns the string representation func (s GetLoggingOptionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetLoggingOptionsOutput) GoString() string { return s.String() } // The input for the GetPolicy operation. type GetPolicyInput struct { _ struct{} `type:"structure"` // The name of the policy. // // PolicyName is a required field PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetPolicyInput"} if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the GetPolicy operation. type GetPolicyOutput struct { _ struct{} `type:"structure"` // The default policy version ID. DefaultVersionId *string `locationName:"defaultVersionId" type:"string"` // The policy ARN. PolicyArn *string `locationName:"policyArn" type:"string"` // The JSON document that describes the policy. PolicyDocument *string `locationName:"policyDocument" type:"string"` // The policy name. PolicyName *string `locationName:"policyName" min:"1" type:"string"` } // String returns the string representation func (s GetPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPolicyOutput) GoString() string { return s.String() } // The input for the GetPolicyVersion operation. type GetPolicyVersionInput struct { _ struct{} `type:"structure"` // The name of the policy. // // PolicyName is a required field PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"` // The policy version ID. // // PolicyVersionId is a required field PolicyVersionId *string `location:"uri" locationName:"policyVersionId" type:"string" required:"true"` } // String returns the string representation func (s GetPolicyVersionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPolicyVersionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetPolicyVersionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetPolicyVersionInput"} if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if s.PolicyVersionId == nil { invalidParams.Add(request.NewErrParamRequired("PolicyVersionId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the GetPolicyVersion operation. type GetPolicyVersionOutput struct { _ struct{} `type:"structure"` // Specifies whether the policy version is the default. IsDefaultVersion *bool `locationName:"isDefaultVersion" type:"boolean"` // The policy ARN. PolicyArn *string `locationName:"policyArn" type:"string"` // The JSON document that describes the policy. PolicyDocument *string `locationName:"policyDocument" type:"string"` // The policy name. PolicyName *string `locationName:"policyName" min:"1" type:"string"` // The policy version ID. PolicyVersionId *string `locationName:"policyVersionId" type:"string"` } // String returns the string representation func (s GetPolicyVersionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPolicyVersionOutput) GoString() string { return s.String() } // The input to the GetRegistrationCode operation. type GetRegistrationCodeInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GetRegistrationCodeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRegistrationCodeInput) GoString() string { return s.String() } // The output from the GetRegistrationCode operation. type GetRegistrationCodeOutput struct { _ struct{} `type:"structure"` // The CA certificate registration code. RegistrationCode *string `locationName:"registrationCode" min:"64" type:"string"` } // String returns the string representation func (s GetRegistrationCodeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRegistrationCodeOutput) GoString() string { return s.String() } // The input for the GetTopicRule operation. type GetTopicRuleInput struct { _ struct{} `type:"structure"` // The name of the rule. // // RuleName is a required field RuleName *string `location:"uri" locationName:"ruleName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetTopicRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTopicRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetTopicRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetTopicRuleInput"} if s.RuleName == nil { invalidParams.Add(request.NewErrParamRequired("RuleName")) } if s.RuleName != nil && len(*s.RuleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RuleName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the GetTopicRule operation. type GetTopicRuleOutput struct { _ struct{} `type:"structure"` // The rule. Rule *TopicRule `locationName:"rule" type:"structure"` // The rule ARN. RuleArn *string `locationName:"ruleArn" type:"string"` } // String returns the string representation func (s GetTopicRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTopicRuleOutput) GoString() string { return s.String() } // Describes a key pair. type KeyPair struct { _ struct{} `type:"structure"` // The private key. PrivateKey *string `min:"1" type:"string"` // The public key. PublicKey *string `min:"1" type:"string"` } // String returns the string representation func (s KeyPair) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KeyPair) GoString() string { return s.String() } // Describes an action to write data to an Amazon Kinesis stream. type KinesisAction struct { _ struct{} `type:"structure"` // The partition key. PartitionKey *string `locationName:"partitionKey" type:"string"` // The ARN of the IAM role that grants access to the Amazon Kinesis stream. // // RoleArn is a required field RoleArn *string `locationName:"roleArn" type:"string" required:"true"` // The name of the Amazon Kinesis stream. // // StreamName is a required field StreamName *string `locationName:"streamName" type:"string" required:"true"` } // String returns the string representation func (s KinesisAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KinesisAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *KinesisAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "KinesisAction"} if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if s.StreamName == nil { invalidParams.Add(request.NewErrParamRequired("StreamName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes an action to invoke a Lambda function. type LambdaAction struct { _ struct{} `type:"structure"` // The ARN of the Lambda function. // // FunctionArn is a required field FunctionArn *string `locationName:"functionArn" type:"string" required:"true"` } // String returns the string representation func (s LambdaAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LambdaAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LambdaAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LambdaAction"} if s.FunctionArn == nil { invalidParams.Add(request.NewErrParamRequired("FunctionArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Input for the ListCACertificates operation. type ListCACertificatesInput struct { _ struct{} `type:"structure"` // Determines the order of the results. AscendingOrder *bool `location:"querystring" locationName:"isAscendingOrder" type:"boolean"` // The marker for the next set of results. Marker *string `location:"querystring" locationName:"marker" type:"string"` // The result page size. PageSize *int64 `location:"querystring" locationName:"pageSize" min:"1" type:"integer"` } // String returns the string representation func (s ListCACertificatesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListCACertificatesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListCACertificatesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListCACertificatesInput"} if s.PageSize != nil && *s.PageSize < 1 { invalidParams.Add(request.NewErrParamMinValue("PageSize", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the ListCACertificates operation. type ListCACertificatesOutput struct { _ struct{} `type:"structure"` // The CA certificates registered in your AWS account. Certificates []*CACertificate `locationName:"certificates" type:"list"` // The current position within the list of CA certificates. NextMarker *string `locationName:"nextMarker" type:"string"` } // String returns the string representation func (s ListCACertificatesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListCACertificatesOutput) GoString() string { return s.String() } // The input to the ListCertificatesByCA operation. type ListCertificatesByCAInput struct { _ struct{} `type:"structure"` // Specifies the order for results. If True, the results are returned in ascending // order, based on the creation date. AscendingOrder *bool `location:"querystring" locationName:"isAscendingOrder" type:"boolean"` // The ID of the CA certificate. This operation will list all registered device // certificate that were signed by this CA certificate. // // CaCertificateId is a required field CaCertificateId *string `location:"uri" locationName:"caCertificateId" min:"64" type:"string" required:"true"` // The marker for the next set of results. Marker *string `location:"querystring" locationName:"marker" type:"string"` // The result page size. PageSize *int64 `location:"querystring" locationName:"pageSize" min:"1" type:"integer"` } // String returns the string representation func (s ListCertificatesByCAInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListCertificatesByCAInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListCertificatesByCAInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListCertificatesByCAInput"} if s.CaCertificateId == nil { invalidParams.Add(request.NewErrParamRequired("CaCertificateId")) } if s.CaCertificateId != nil && len(*s.CaCertificateId) < 64 { invalidParams.Add(request.NewErrParamMinLen("CaCertificateId", 64)) } if s.PageSize != nil && *s.PageSize < 1 { invalidParams.Add(request.NewErrParamMinValue("PageSize", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output of the ListCertificatesByCA operation. type ListCertificatesByCAOutput struct { _ struct{} `type:"structure"` // The device certificates signed by the specified CA certificate. Certificates []*Certificate `locationName:"certificates" type:"list"` // The marker for the next set of results, or null if there are no additional // results. NextMarker *string `locationName:"nextMarker" type:"string"` } // String returns the string representation func (s ListCertificatesByCAOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListCertificatesByCAOutput) GoString() string { return s.String() } // The input for the ListCertificates operation. type ListCertificatesInput struct { _ struct{} `type:"structure"` // Specifies the order for results. If True, the results are returned in ascending // order, based on the creation date. AscendingOrder *bool `location:"querystring" locationName:"isAscendingOrder" type:"boolean"` // The marker for the next set of results. Marker *string `location:"querystring" locationName:"marker" type:"string"` // The result page size. PageSize *int64 `location:"querystring" locationName:"pageSize" min:"1" type:"integer"` } // String returns the string representation func (s ListCertificatesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListCertificatesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListCertificatesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListCertificatesInput"} if s.PageSize != nil && *s.PageSize < 1 { invalidParams.Add(request.NewErrParamMinValue("PageSize", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output of the ListCertificates operation. type ListCertificatesOutput struct { _ struct{} `type:"structure"` // The descriptions of the certificates. Certificates []*Certificate `locationName:"certificates" type:"list"` // The marker for the next set of results, or null if there are no additional // results. NextMarker *string `locationName:"nextMarker" type:"string"` } // String returns the string representation func (s ListCertificatesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListCertificatesOutput) GoString() string { return s.String() } // The input to the ListOutgoingCertificates operation. type ListOutgoingCertificatesInput struct { _ struct{} `type:"structure"` // Specifies the order for results. If True, the results are returned in ascending // order, based on the creation date. AscendingOrder *bool `location:"querystring" locationName:"isAscendingOrder" type:"boolean"` // The marker for the next set of results. Marker *string `location:"querystring" locationName:"marker" type:"string"` // The result page size. PageSize *int64 `location:"querystring" locationName:"pageSize" min:"1" type:"integer"` } // String returns the string representation func (s ListOutgoingCertificatesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListOutgoingCertificatesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListOutgoingCertificatesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListOutgoingCertificatesInput"} if s.PageSize != nil && *s.PageSize < 1 { invalidParams.Add(request.NewErrParamMinValue("PageSize", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the ListOutgoingCertificates operation. type ListOutgoingCertificatesOutput struct { _ struct{} `type:"structure"` // The marker for the next set of results. NextMarker *string `locationName:"nextMarker" type:"string"` // The certificates that are being transfered but not yet accepted. OutgoingCertificates []*OutgoingCertificate `locationName:"outgoingCertificates" type:"list"` } // String returns the string representation func (s ListOutgoingCertificatesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListOutgoingCertificatesOutput) GoString() string { return s.String() } // The input for the ListPolicies operation. type ListPoliciesInput struct { _ struct{} `type:"structure"` // Specifies the order for results. If true, the results are returned in ascending // creation order. AscendingOrder *bool `location:"querystring" locationName:"isAscendingOrder" type:"boolean"` // The marker for the next set of results. Marker *string `location:"querystring" locationName:"marker" type:"string"` // The result page size. PageSize *int64 `location:"querystring" locationName:"pageSize" min:"1" type:"integer"` } // String returns the string representation func (s ListPoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListPoliciesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListPoliciesInput"} if s.PageSize != nil && *s.PageSize < 1 { invalidParams.Add(request.NewErrParamMinValue("PageSize", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the ListPolicies operation. type ListPoliciesOutput struct { _ struct{} `type:"structure"` // The marker for the next set of results, or null if there are no additional // results. NextMarker *string `locationName:"nextMarker" type:"string"` // The descriptions of the policies. Policies []*Policy `locationName:"policies" type:"list"` } // String returns the string representation func (s ListPoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPoliciesOutput) GoString() string { return s.String() } // The input for the ListPolicyPrincipals operation. type ListPolicyPrincipalsInput struct { _ struct{} `type:"structure"` // Specifies the order for results. If true, the results are returned in ascending // creation order. AscendingOrder *bool `location:"querystring" locationName:"isAscendingOrder" type:"boolean"` // The marker for the next set of results. Marker *string `location:"querystring" locationName:"marker" type:"string"` // The result page size. PageSize *int64 `location:"querystring" locationName:"pageSize" min:"1" type:"integer"` // The policy name. // // PolicyName is a required field PolicyName *string `location:"header" locationName:"x-amzn-iot-policy" min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListPolicyPrincipalsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPolicyPrincipalsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListPolicyPrincipalsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListPolicyPrincipalsInput"} if s.PageSize != nil && *s.PageSize < 1 { invalidParams.Add(request.NewErrParamMinValue("PageSize", 1)) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the ListPolicyPrincipals operation. type ListPolicyPrincipalsOutput struct { _ struct{} `type:"structure"` // The marker for the next set of results, or null if there are no additional // results. NextMarker *string `locationName:"nextMarker" type:"string"` // The descriptions of the principals. Principals []*string `locationName:"principals" type:"list"` } // String returns the string representation func (s ListPolicyPrincipalsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPolicyPrincipalsOutput) GoString() string { return s.String() } // The input for the ListPolicyVersions operation. type ListPolicyVersionsInput struct { _ struct{} `type:"structure"` // The policy name. // // PolicyName is a required field PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListPolicyVersionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPolicyVersionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListPolicyVersionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListPolicyVersionsInput"} if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the ListPolicyVersions operation. type ListPolicyVersionsOutput struct { _ struct{} `type:"structure"` // The policy versions. PolicyVersions []*PolicyVersion `locationName:"policyVersions" type:"list"` } // String returns the string representation func (s ListPolicyVersionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPolicyVersionsOutput) GoString() string { return s.String() } // The input for the ListPrincipalPolicies operation. type ListPrincipalPoliciesInput struct { _ struct{} `type:"structure"` // Specifies the order for results. If true, results are returned in ascending // creation order. AscendingOrder *bool `location:"querystring" locationName:"isAscendingOrder" type:"boolean"` // The marker for the next set of results. Marker *string `location:"querystring" locationName:"marker" type:"string"` // The result page size. PageSize *int64 `location:"querystring" locationName:"pageSize" min:"1" type:"integer"` // The principal. // // Principal is a required field Principal *string `location:"header" locationName:"x-amzn-iot-principal" type:"string" required:"true"` } // String returns the string representation func (s ListPrincipalPoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPrincipalPoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListPrincipalPoliciesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListPrincipalPoliciesInput"} if s.PageSize != nil && *s.PageSize < 1 { invalidParams.Add(request.NewErrParamMinValue("PageSize", 1)) } if s.Principal == nil { invalidParams.Add(request.NewErrParamRequired("Principal")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the ListPrincipalPolicies operation. type ListPrincipalPoliciesOutput struct { _ struct{} `type:"structure"` // The marker for the next set of results, or null if there are no additional // results. NextMarker *string `locationName:"nextMarker" type:"string"` // The policies. Policies []*Policy `locationName:"policies" type:"list"` } // String returns the string representation func (s ListPrincipalPoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPrincipalPoliciesOutput) GoString() string { return s.String() } // The input for the ListPrincipalThings operation. type ListPrincipalThingsInput struct { _ struct{} `type:"structure"` // The maximum number of results to return in this operation. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The token for the next set of results, or null if there are no additional // results. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` // The principal. // // Principal is a required field Principal *string `location:"header" locationName:"x-amzn-principal" type:"string" required:"true"` } // String returns the string representation func (s ListPrincipalThingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPrincipalThingsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListPrincipalThingsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListPrincipalThingsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.Principal == nil { invalidParams.Add(request.NewErrParamRequired("Principal")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the ListPrincipalThings operation. type ListPrincipalThingsOutput struct { _ struct{} `type:"structure"` // The token for the next set of results, or null if there are no additional // results. NextToken *string `locationName:"nextToken" type:"string"` // The things. Things []*string `locationName:"things" type:"list"` } // String returns the string representation func (s ListPrincipalThingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPrincipalThingsOutput) GoString() string { return s.String() } // The input for the ListThingPrincipal operation. type ListThingPrincipalsInput struct { _ struct{} `type:"structure"` // The name of the thing. // // ThingName is a required field ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListThingPrincipalsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListThingPrincipalsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListThingPrincipalsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListThingPrincipalsInput"} if s.ThingName == nil { invalidParams.Add(request.NewErrParamRequired("ThingName")) } if s.ThingName != nil && len(*s.ThingName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThingName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the ListThingPrincipals operation. type ListThingPrincipalsOutput struct { _ struct{} `type:"structure"` // The principals associated with the thing. Principals []*string `locationName:"principals" type:"list"` } // String returns the string representation func (s ListThingPrincipalsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListThingPrincipalsOutput) GoString() string { return s.String() } // The input for the ListThingTypes operation. type ListThingTypesInput struct { _ struct{} `type:"structure"` // The maximum number of results to return in this operation. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The token for the next set of results, or null if there are no additional // results. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` // The name of the thing type. ThingTypeName *string `location:"querystring" locationName:"thingTypeName" min:"1" type:"string"` } // String returns the string representation func (s ListThingTypesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListThingTypesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListThingTypesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListThingTypesInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.ThingTypeName != nil && len(*s.ThingTypeName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThingTypeName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output for the ListThingTypes operation. type ListThingTypesOutput struct { _ struct{} `type:"structure"` // The token for the next set of results, or null if there are no additional // results. NextToken *string `locationName:"nextToken" type:"string"` // The thing types. ThingTypes []*ThingTypeDefinition `locationName:"thingTypes" type:"list"` } // String returns the string representation func (s ListThingTypesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListThingTypesOutput) GoString() string { return s.String() } // The input for the ListThings operation. type ListThingsInput struct { _ struct{} `type:"structure"` // The attribute name used to search for things. AttributeName *string `location:"querystring" locationName:"attributeName" type:"string"` // The attribute value used to search for things. AttributeValue *string `location:"querystring" locationName:"attributeValue" type:"string"` // The maximum number of results to return in this operation. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The token for the next set of results, or null if there are no additional // results. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` // The name of the thing type used to search for things. ThingTypeName *string `location:"querystring" locationName:"thingTypeName" min:"1" type:"string"` } // String returns the string representation func (s ListThingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListThingsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListThingsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListThingsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.ThingTypeName != nil && len(*s.ThingTypeName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThingTypeName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the ListThings operation. type ListThingsOutput struct { _ struct{} `type:"structure"` // The token for the next set of results, or null if there are no additional // results. NextToken *string `locationName:"nextToken" type:"string"` // The things. Things []*ThingAttribute `locationName:"things" type:"list"` } // String returns the string representation func (s ListThingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListThingsOutput) GoString() string { return s.String() } // The input for the ListTopicRules operation. type ListTopicRulesInput struct { _ struct{} `type:"structure"` // The maximum number of results to return. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // A token used to retrieve the next value. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` // Specifies whether the rule is disabled. RuleDisabled *bool `location:"querystring" locationName:"ruleDisabled" type:"boolean"` // The topic. Topic *string `location:"querystring" locationName:"topic" type:"string"` } // String returns the string representation func (s ListTopicRulesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTopicRulesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTopicRulesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTopicRulesInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the ListTopicRules operation. type ListTopicRulesOutput struct { _ struct{} `type:"structure"` // A token used to retrieve the next value. NextToken *string `locationName:"nextToken" type:"string"` // The rules. Rules []*TopicRuleListItem `locationName:"rules" type:"list"` } // String returns the string representation func (s ListTopicRulesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTopicRulesOutput) GoString() string { return s.String() } // Describes the logging options payload. type LoggingOptionsPayload struct { _ struct{} `type:"structure"` // The logging level. LogLevel *string `locationName:"logLevel" type:"string" enum:"LogLevel"` // The ARN of the IAM role that grants access. // // RoleArn is a required field RoleArn *string `locationName:"roleArn" type:"string" required:"true"` } // String returns the string representation func (s LoggingOptionsPayload) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LoggingOptionsPayload) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LoggingOptionsPayload) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LoggingOptionsPayload"} if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A certificate that has been transfered but not yet accepted. type OutgoingCertificate struct { _ struct{} `type:"structure"` // The certificate ARN. CertificateArn *string `locationName:"certificateArn" type:"string"` // The certificate ID. CertificateId *string `locationName:"certificateId" min:"64" type:"string"` // The certificate creation date. CreationDate *time.Time `locationName:"creationDate" type:"timestamp" timestampFormat:"unix"` // The date the transfer was initiated. TransferDate *time.Time `locationName:"transferDate" type:"timestamp" timestampFormat:"unix"` // The transfer message. TransferMessage *string `locationName:"transferMessage" type:"string"` // The AWS account to which the transfer was made. TransferredTo *string `locationName:"transferredTo" type:"string"` } // String returns the string representation func (s OutgoingCertificate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OutgoingCertificate) GoString() string { return s.String() } // Describes an AWS IoT policy. type Policy struct { _ struct{} `type:"structure"` // The policy ARN. PolicyArn *string `locationName:"policyArn" type:"string"` // The policy name. PolicyName *string `locationName:"policyName" min:"1" type:"string"` } // String returns the string representation func (s Policy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Policy) GoString() string { return s.String() } // Describes a policy version. type PolicyVersion struct { _ struct{} `type:"structure"` // The date and time the policy was created. CreateDate *time.Time `locationName:"createDate" type:"timestamp" timestampFormat:"unix"` // Specifies whether the policy version is the default. IsDefaultVersion *bool `locationName:"isDefaultVersion" type:"boolean"` // The policy version ID. VersionId *string `locationName:"versionId" type:"string"` } // String returns the string representation func (s PolicyVersion) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PolicyVersion) GoString() string { return s.String() } // The input for the DynamoActionVS action that specifies the DynamoDB table // to which the message data will be written. type PutItemInput struct { _ struct{} `type:"structure"` // The table where the message data will be written // // TableName is a required field TableName *string `locationName:"tableName" type:"string" required:"true"` } // String returns the string representation func (s PutItemInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutItemInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutItemInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutItemInput"} if s.TableName == nil { invalidParams.Add(request.NewErrParamRequired("TableName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The input to the RegisterCACertificate operation. type RegisterCACertificateInput struct { _ struct{} `type:"structure"` // Allows this CA certificate to be used for auto registration of device certificates. AllowAutoRegistration *bool `location:"querystring" locationName:"allowAutoRegistration" type:"boolean"` // The CA certificate. // // CaCertificate is a required field CaCertificate *string `locationName:"caCertificate" min:"1" type:"string" required:"true"` // A boolean value that specifies if the CA certificate is set to active. SetAsActive *bool `location:"querystring" locationName:"setAsActive" type:"boolean"` // The private key verification certificate. // // VerificationCertificate is a required field VerificationCertificate *string `locationName:"verificationCertificate" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RegisterCACertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterCACertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterCACertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterCACertificateInput"} if s.CaCertificate == nil { invalidParams.Add(request.NewErrParamRequired("CaCertificate")) } if s.CaCertificate != nil && len(*s.CaCertificate) < 1 { invalidParams.Add(request.NewErrParamMinLen("CaCertificate", 1)) } if s.VerificationCertificate == nil { invalidParams.Add(request.NewErrParamRequired("VerificationCertificate")) } if s.VerificationCertificate != nil && len(*s.VerificationCertificate) < 1 { invalidParams.Add(request.NewErrParamMinLen("VerificationCertificate", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the RegisterCACertificateResponse operation. type RegisterCACertificateOutput struct { _ struct{} `type:"structure"` // The CA certificate ARN. CertificateArn *string `locationName:"certificateArn" type:"string"` // The CA certificate identifier. CertificateId *string `locationName:"certificateId" min:"64" type:"string"` } // String returns the string representation func (s RegisterCACertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterCACertificateOutput) GoString() string { return s.String() } // The input to the RegisterCertificate operation. type RegisterCertificateInput struct { _ struct{} `type:"structure"` // The CA certificate used to sign the device certificate being registered. CaCertificatePem *string `locationName:"caCertificatePem" min:"1" type:"string"` // The certificate data, in PEM format. // // CertificatePem is a required field CertificatePem *string `locationName:"certificatePem" min:"1" type:"string" required:"true"` // A boolean value that specifies if the CA certificate is set to active. SetAsActive *bool `location:"querystring" locationName:"setAsActive" deprecated:"true" type:"boolean"` Status *string `locationName:"status" type:"string" enum:"CertificateStatus"` } // String returns the string representation func (s RegisterCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterCertificateInput"} if s.CaCertificatePem != nil && len(*s.CaCertificatePem) < 1 { invalidParams.Add(request.NewErrParamMinLen("CaCertificatePem", 1)) } if s.CertificatePem == nil { invalidParams.Add(request.NewErrParamRequired("CertificatePem")) } if s.CertificatePem != nil && len(*s.CertificatePem) < 1 { invalidParams.Add(request.NewErrParamMinLen("CertificatePem", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the RegisterCertificate operation. type RegisterCertificateOutput struct { _ struct{} `type:"structure"` // The certificate ARN. CertificateArn *string `locationName:"certificateArn" type:"string"` // The certificate identifier. CertificateId *string `locationName:"certificateId" min:"64" type:"string"` } // String returns the string representation func (s RegisterCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterCertificateOutput) GoString() string { return s.String() } // The input for the RejectCertificateTransfer operation. type RejectCertificateTransferInput struct { _ struct{} `type:"structure"` // The ID of the certificate. // // CertificateId is a required field CertificateId *string `location:"uri" locationName:"certificateId" min:"64" type:"string" required:"true"` // The reason the certificate transfer was rejected. RejectReason *string `locationName:"rejectReason" type:"string"` } // String returns the string representation func (s RejectCertificateTransferInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RejectCertificateTransferInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RejectCertificateTransferInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RejectCertificateTransferInput"} if s.CertificateId == nil { invalidParams.Add(request.NewErrParamRequired("CertificateId")) } if s.CertificateId != nil && len(*s.CertificateId) < 64 { invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RejectCertificateTransferOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RejectCertificateTransferOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RejectCertificateTransferOutput) GoString() string { return s.String() } // The input for the ReplaceTopicRule operation. type ReplaceTopicRuleInput struct { _ struct{} `type:"structure" payload:"TopicRulePayload"` // The name of the rule. // // RuleName is a required field RuleName *string `location:"uri" locationName:"ruleName" min:"1" type:"string" required:"true"` // The rule payload. // // TopicRulePayload is a required field TopicRulePayload *TopicRulePayload `locationName:"topicRulePayload" type:"structure" required:"true"` } // String returns the string representation func (s ReplaceTopicRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplaceTopicRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReplaceTopicRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReplaceTopicRuleInput"} if s.RuleName == nil { invalidParams.Add(request.NewErrParamRequired("RuleName")) } if s.RuleName != nil && len(*s.RuleName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RuleName", 1)) } if s.TopicRulePayload == nil { invalidParams.Add(request.NewErrParamRequired("TopicRulePayload")) } if s.TopicRulePayload != nil { if err := s.TopicRulePayload.Validate(); err != nil { invalidParams.AddNested("TopicRulePayload", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ReplaceTopicRuleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ReplaceTopicRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplaceTopicRuleOutput) GoString() string { return s.String() } // Describes an action to republish to another topic. type RepublishAction struct { _ struct{} `type:"structure"` // The ARN of the IAM role that grants access. // // RoleArn is a required field RoleArn *string `locationName:"roleArn" type:"string" required:"true"` // The name of the MQTT topic. // // Topic is a required field Topic *string `locationName:"topic" type:"string" required:"true"` } // String returns the string representation func (s RepublishAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RepublishAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RepublishAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RepublishAction"} if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if s.Topic == nil { invalidParams.Add(request.NewErrParamRequired("Topic")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes an action to write data to an Amazon S3 bucket. type S3Action struct { _ struct{} `type:"structure"` // The Amazon S3 bucket. // // BucketName is a required field BucketName *string `locationName:"bucketName" type:"string" required:"true"` // The Amazon S3 canned ACL that controls access to the object identified by // the object key. For more information, see S3 canned ACLs (http://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl). CannedAcl *string `locationName:"cannedAcl" type:"string" enum:"CannedAccessControlList"` // The object key. // // Key is a required field Key *string `locationName:"key" type:"string" required:"true"` // The ARN of the IAM role that grants access. // // RoleArn is a required field RoleArn *string `locationName:"roleArn" type:"string" required:"true"` } // String returns the string representation func (s S3Action) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s S3Action) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3Action) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3Action"} if s.BucketName == nil { invalidParams.Add(request.NewErrParamRequired("BucketName")) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The input for the SetDefaultPolicyVersion operation. type SetDefaultPolicyVersionInput struct { _ struct{} `type:"structure"` // The policy name. // // PolicyName is a required field PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"` // The policy version ID. // // PolicyVersionId is a required field PolicyVersionId *string `location:"uri" locationName:"policyVersionId" type:"string" required:"true"` } // String returns the string representation func (s SetDefaultPolicyVersionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetDefaultPolicyVersionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetDefaultPolicyVersionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetDefaultPolicyVersionInput"} if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if s.PolicyVersionId == nil { invalidParams.Add(request.NewErrParamRequired("PolicyVersionId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetDefaultPolicyVersionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetDefaultPolicyVersionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetDefaultPolicyVersionOutput) GoString() string { return s.String() } // The input for the SetLoggingOptions operation. type SetLoggingOptionsInput struct { _ struct{} `type:"structure" payload:"LoggingOptionsPayload"` // The logging options payload. // // LoggingOptionsPayload is a required field LoggingOptionsPayload *LoggingOptionsPayload `locationName:"loggingOptionsPayload" type:"structure" required:"true"` } // String returns the string representation func (s SetLoggingOptionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetLoggingOptionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetLoggingOptionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetLoggingOptionsInput"} if s.LoggingOptionsPayload == nil { invalidParams.Add(request.NewErrParamRequired("LoggingOptionsPayload")) } if s.LoggingOptionsPayload != nil { if err := s.LoggingOptionsPayload.Validate(); err != nil { invalidParams.AddNested("LoggingOptionsPayload", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetLoggingOptionsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetLoggingOptionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetLoggingOptionsOutput) GoString() string { return s.String() } // Describes an action to publish to an Amazon SNS topic. type SnsAction struct { _ struct{} `type:"structure"` // The message format of the message to publish. Optional. Accepted values are // "JSON" and "RAW". The default value of the attribute is "RAW". SNS uses this // setting to determine if the payload should be parsed and relevant platform-specific // bits of the payload should be extracted. To read more about SNS message formats, // see refer to their official documentation. (http://docs.aws.amazon.com/sns/latest/dg/json-formats.html) MessageFormat *string `locationName:"messageFormat" type:"string" enum:"MessageFormat"` // The ARN of the IAM role that grants access. // // RoleArn is a required field RoleArn *string `locationName:"roleArn" type:"string" required:"true"` // The ARN of the SNS topic. // // TargetArn is a required field TargetArn *string `locationName:"targetArn" type:"string" required:"true"` } // String returns the string representation func (s SnsAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SnsAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SnsAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SnsAction"} if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if s.TargetArn == nil { invalidParams.Add(request.NewErrParamRequired("TargetArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes an action to publish data to an Amazon SQS queue. type SqsAction struct { _ struct{} `type:"structure"` // The URL of the Amazon SQS queue. // // QueueUrl is a required field QueueUrl *string `locationName:"queueUrl" type:"string" required:"true"` // The ARN of the IAM role that grants access. // // RoleArn is a required field RoleArn *string `locationName:"roleArn" type:"string" required:"true"` // Specifies whether to use Base64 encoding. UseBase64 *bool `locationName:"useBase64" type:"boolean"` } // String returns the string representation func (s SqsAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SqsAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SqsAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SqsAction"} if s.QueueUrl == nil { invalidParams.Add(request.NewErrParamRequired("QueueUrl")) } if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The properties of the thing, including thing name, thing type name, and a // list of thing attributes. type ThingAttribute struct { _ struct{} `type:"structure"` // A list of thing attributes which are name-value pairs. Attributes map[string]*string `locationName:"attributes" type:"map"` // The name of the thing. ThingName *string `locationName:"thingName" min:"1" type:"string"` // The name of the thing type, if the thing has been associated with a type. ThingTypeName *string `locationName:"thingTypeName" min:"1" type:"string"` // The version of the thing record in the registry. Version *int64 `locationName:"version" type:"long"` } // String returns the string representation func (s ThingAttribute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ThingAttribute) GoString() string { return s.String() } // The definition of the thing type, including thing type name and description. type ThingTypeDefinition struct { _ struct{} `type:"structure"` // The ThingTypeMetadata contains additional information about the thing type // including: creation date and time, a value indicating whether the thing type // is deprecated, and a date and time when time was deprecated. ThingTypeMetadata *ThingTypeMetadata `locationName:"thingTypeMetadata" type:"structure"` // The name of the thing type. ThingTypeName *string `locationName:"thingTypeName" min:"1" type:"string"` // The ThingTypeProperties for the thing type. ThingTypeProperties *ThingTypeProperties `locationName:"thingTypeProperties" type:"structure"` } // String returns the string representation func (s ThingTypeDefinition) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ThingTypeDefinition) GoString() string { return s.String() } // The ThingTypeMetadata contains additional information about the thing type // including: creation date and time, a value indicating whether the thing type // is deprecated, and a date and time when time was deprecated. type ThingTypeMetadata struct { _ struct{} `type:"structure"` // The date and time when the thing type was created. CreationDate *time.Time `locationName:"creationDate" type:"timestamp" timestampFormat:"unix"` // Whether the thing type is deprecated. If true, no new things could be associated // with this type. Deprecated *bool `locationName:"deprecated" type:"boolean"` // The date and time when the thing type was deprecated. DeprecationDate *time.Time `locationName:"deprecationDate" type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s ThingTypeMetadata) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ThingTypeMetadata) GoString() string { return s.String() } // The ThingTypeProperties contains information about the thing type including: // a thing type description, and a list of searchable thing attribute names. type ThingTypeProperties struct { _ struct{} `type:"structure"` // A list of searchable thing attribute names. SearchableAttributes []*string `locationName:"searchableAttributes" type:"list"` // The description of the thing type. ThingTypeDescription *string `locationName:"thingTypeDescription" type:"string"` } // String returns the string representation func (s ThingTypeProperties) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ThingTypeProperties) GoString() string { return s.String() } // Describes a rule. type TopicRule struct { _ struct{} `type:"structure"` // The actions associated with the rule. Actions []*Action `locationName:"actions" type:"list"` // The version of the SQL rules engine to use when evaluating the rule. AwsIotSqlVersion *string `locationName:"awsIotSqlVersion" type:"string"` // The date and time the rule was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unix"` // The description of the rule. Description *string `locationName:"description" type:"string"` // Specifies whether the rule is disabled. RuleDisabled *bool `locationName:"ruleDisabled" type:"boolean"` // The name of the rule. RuleName *string `locationName:"ruleName" min:"1" type:"string"` // The SQL statement used to query the topic. When using a SQL query with multiple // lines, be sure to escape the newline characters. Sql *string `locationName:"sql" type:"string"` } // String returns the string representation func (s TopicRule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TopicRule) GoString() string { return s.String() } // Describes a rule. type TopicRuleListItem struct { _ struct{} `type:"structure"` // The date and time the rule was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unix"` // The rule ARN. RuleArn *string `locationName:"ruleArn" type:"string"` // Specifies whether the rule is disabled. RuleDisabled *bool `locationName:"ruleDisabled" type:"boolean"` // The name of the rule. RuleName *string `locationName:"ruleName" min:"1" type:"string"` // The pattern for the topic names that apply. TopicPattern *string `locationName:"topicPattern" type:"string"` } // String returns the string representation func (s TopicRuleListItem) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TopicRuleListItem) GoString() string { return s.String() } // Describes a rule. type TopicRulePayload struct { _ struct{} `type:"structure"` // The actions associated with the rule. // // Actions is a required field Actions []*Action `locationName:"actions" type:"list" required:"true"` // The version of the SQL rules engine to use when evaluating the rule. AwsIotSqlVersion *string `locationName:"awsIotSqlVersion" type:"string"` // The description of the rule. Description *string `locationName:"description" type:"string"` // Specifies whether the rule is disabled. RuleDisabled *bool `locationName:"ruleDisabled" type:"boolean"` // The SQL statement used to query the topic. For more information, see AWS // IoT SQL Reference (http://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html#aws-iot-sql-reference) // in the AWS IoT Developer Guide. // // Sql is a required field Sql *string `locationName:"sql" type:"string" required:"true"` } // String returns the string representation func (s TopicRulePayload) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TopicRulePayload) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TopicRulePayload) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TopicRulePayload"} if s.Actions == nil { invalidParams.Add(request.NewErrParamRequired("Actions")) } if s.Sql == nil { invalidParams.Add(request.NewErrParamRequired("Sql")) } if s.Actions != nil { for i, v := range s.Actions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Actions", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The input for the TransferCertificate operation. type TransferCertificateInput struct { _ struct{} `type:"structure"` // The ID of the certificate. // // CertificateId is a required field CertificateId *string `location:"uri" locationName:"certificateId" min:"64" type:"string" required:"true"` // The AWS account. // // TargetAwsAccount is a required field TargetAwsAccount *string `location:"querystring" locationName:"targetAwsAccount" type:"string" required:"true"` // The transfer message. TransferMessage *string `locationName:"transferMessage" type:"string"` } // String returns the string representation func (s TransferCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TransferCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TransferCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TransferCertificateInput"} if s.CertificateId == nil { invalidParams.Add(request.NewErrParamRequired("CertificateId")) } if s.CertificateId != nil && len(*s.CertificateId) < 64 { invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64)) } if s.TargetAwsAccount == nil { invalidParams.Add(request.NewErrParamRequired("TargetAwsAccount")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the TransferCertificate operation. type TransferCertificateOutput struct { _ struct{} `type:"structure"` // The ARN of the certificate. TransferredCertificateArn *string `locationName:"transferredCertificateArn" type:"string"` } // String returns the string representation func (s TransferCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TransferCertificateOutput) GoString() string { return s.String() } // Data used to transfer a certificate to an AWS account. type TransferData struct { _ struct{} `type:"structure"` // The date the transfer was accepted. AcceptDate *time.Time `locationName:"acceptDate" type:"timestamp" timestampFormat:"unix"` // The date the transfer was rejected. RejectDate *time.Time `locationName:"rejectDate" type:"timestamp" timestampFormat:"unix"` // The reason why the transfer was rejected. RejectReason *string `locationName:"rejectReason" type:"string"` // The date the transfer took place. TransferDate *time.Time `locationName:"transferDate" type:"timestamp" timestampFormat:"unix"` // The transfer message. TransferMessage *string `locationName:"transferMessage" type:"string"` } // String returns the string representation func (s TransferData) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TransferData) GoString() string { return s.String() } // The input to the UpdateCACertificate operation. type UpdateCACertificateInput struct { _ struct{} `type:"structure"` // The CA certificate identifier. // // CertificateId is a required field CertificateId *string `location:"uri" locationName:"caCertificateId" min:"64" type:"string" required:"true"` // The new value for the auto registration status. Valid values are: "ENABLE" // or "DISABLE". NewAutoRegistrationStatus *string `location:"querystring" locationName:"newAutoRegistrationStatus" type:"string" enum:"AutoRegistrationStatus"` // The updated status of the CA certificate. // // Note: The status value REGISTER_INACTIVE is deprecated and should not be // used. NewStatus *string `location:"querystring" locationName:"newStatus" type:"string" enum:"CACertificateStatus"` } // String returns the string representation func (s UpdateCACertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateCACertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateCACertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateCACertificateInput"} if s.CertificateId == nil { invalidParams.Add(request.NewErrParamRequired("CertificateId")) } if s.CertificateId != nil && len(*s.CertificateId) < 64 { invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateCACertificateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateCACertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateCACertificateOutput) GoString() string { return s.String() } // The input for the UpdateCertificate operation. type UpdateCertificateInput struct { _ struct{} `type:"structure"` // The ID of the certificate. // // CertificateId is a required field CertificateId *string `location:"uri" locationName:"certificateId" min:"64" type:"string" required:"true"` // The new status. // // Note: Setting the status to PENDING_TRANSFER will result in an exception // being thrown. PENDING_TRANSFER is a status used internally by AWS IoT. It // is not intended for developer use. // // Note: The status value REGISTER_INACTIVE is deprecated and should not be // used. // // NewStatus is a required field NewStatus *string `location:"querystring" locationName:"newStatus" type:"string" required:"true" enum:"CertificateStatus"` } // String returns the string representation func (s UpdateCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateCertificateInput"} if s.CertificateId == nil { invalidParams.Add(request.NewErrParamRequired("CertificateId")) } if s.CertificateId != nil && len(*s.CertificateId) < 64 { invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64)) } if s.NewStatus == nil { invalidParams.Add(request.NewErrParamRequired("NewStatus")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateCertificateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateCertificateOutput) GoString() string { return s.String() } // The input for the UpdateThing operation. type UpdateThingInput struct { _ struct{} `type:"structure"` // A list of thing attributes, a JSON string containing name-value pairs. For // example: // // {\"attributes\":{\"name1\":\"value2\"}}) // // This data is used to add new attributes or update existing attributes. AttributePayload *AttributePayload `locationName:"attributePayload" type:"structure"` // The expected version of the thing record in the registry. If the version // of the record in the registry does not match the expected version specified // in the request, the UpdateThing request is rejected with a VersionConflictException. ExpectedVersion *int64 `locationName:"expectedVersion" type:"long"` // Remove a thing type association. If true, the assocation is removed. RemoveThingType *bool `locationName:"removeThingType" type:"boolean"` // The name of the thing to update. // // ThingName is a required field ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"` // The name of the thing type. ThingTypeName *string `locationName:"thingTypeName" min:"1" type:"string"` } // String returns the string representation func (s UpdateThingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateThingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateThingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateThingInput"} if s.ThingName == nil { invalidParams.Add(request.NewErrParamRequired("ThingName")) } if s.ThingName != nil && len(*s.ThingName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThingName", 1)) } if s.ThingTypeName != nil && len(*s.ThingTypeName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThingTypeName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the UpdateThing operation. type UpdateThingOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateThingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateThingOutput) GoString() string { return s.String() } const ( // AutoRegistrationStatusEnable is a AutoRegistrationStatus enum value AutoRegistrationStatusEnable = "ENABLE" // AutoRegistrationStatusDisable is a AutoRegistrationStatus enum value AutoRegistrationStatusDisable = "DISABLE" ) const ( // CACertificateStatusActive is a CACertificateStatus enum value CACertificateStatusActive = "ACTIVE" // CACertificateStatusInactive is a CACertificateStatus enum value CACertificateStatusInactive = "INACTIVE" ) const ( // CannedAccessControlListPrivate is a CannedAccessControlList enum value CannedAccessControlListPrivate = "private" // CannedAccessControlListPublicRead is a CannedAccessControlList enum value CannedAccessControlListPublicRead = "public-read" // CannedAccessControlListPublicReadWrite is a CannedAccessControlList enum value CannedAccessControlListPublicReadWrite = "public-read-write" // CannedAccessControlListAwsExecRead is a CannedAccessControlList enum value CannedAccessControlListAwsExecRead = "aws-exec-read" // CannedAccessControlListAuthenticatedRead is a CannedAccessControlList enum value CannedAccessControlListAuthenticatedRead = "authenticated-read" // CannedAccessControlListBucketOwnerRead is a CannedAccessControlList enum value CannedAccessControlListBucketOwnerRead = "bucket-owner-read" // CannedAccessControlListBucketOwnerFullControl is a CannedAccessControlList enum value CannedAccessControlListBucketOwnerFullControl = "bucket-owner-full-control" // CannedAccessControlListLogDeliveryWrite is a CannedAccessControlList enum value CannedAccessControlListLogDeliveryWrite = "log-delivery-write" ) const ( // CertificateStatusActive is a CertificateStatus enum value CertificateStatusActive = "ACTIVE" // CertificateStatusInactive is a CertificateStatus enum value CertificateStatusInactive = "INACTIVE" // CertificateStatusRevoked is a CertificateStatus enum value CertificateStatusRevoked = "REVOKED" // CertificateStatusPendingTransfer is a CertificateStatus enum value CertificateStatusPendingTransfer = "PENDING_TRANSFER" // CertificateStatusRegisterInactive is a CertificateStatus enum value CertificateStatusRegisterInactive = "REGISTER_INACTIVE" // CertificateStatusPendingActivation is a CertificateStatus enum value CertificateStatusPendingActivation = "PENDING_ACTIVATION" ) const ( // DynamoKeyTypeString is a DynamoKeyType enum value DynamoKeyTypeString = "STRING" // DynamoKeyTypeNumber is a DynamoKeyType enum value DynamoKeyTypeNumber = "NUMBER" ) const ( // LogLevelDebug is a LogLevel enum value LogLevelDebug = "DEBUG" // LogLevelInfo is a LogLevel enum value LogLevelInfo = "INFO" // LogLevelError is a LogLevel enum value LogLevelError = "ERROR" // LogLevelWarn is a LogLevel enum value LogLevelWarn = "WARN" // LogLevelDisabled is a LogLevel enum value LogLevelDisabled = "DISABLED" ) const ( // MessageFormatRaw is a MessageFormat enum value MessageFormatRaw = "RAW" // MessageFormatJson is a MessageFormat enum value MessageFormatJson = "JSON" ) aws-sdk-go-1.4.22/service/iot/examples_test.go000066400000000000000000001167251300374646400212360ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package iot_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/iot" ) var _ time.Duration var _ bytes.Buffer func ExampleIoT_AcceptCertificateTransfer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.AcceptCertificateTransferInput{ CertificateId: aws.String("CertificateId"), // Required SetAsActive: aws.Bool(true), } resp, err := svc.AcceptCertificateTransfer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_AttachPrincipalPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.AttachPrincipalPolicyInput{ PolicyName: aws.String("PolicyName"), // Required Principal: aws.String("Principal"), // Required } resp, err := svc.AttachPrincipalPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_AttachThingPrincipal() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.AttachThingPrincipalInput{ Principal: aws.String("Principal"), // Required ThingName: aws.String("ThingName"), // Required } resp, err := svc.AttachThingPrincipal(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_CancelCertificateTransfer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.CancelCertificateTransferInput{ CertificateId: aws.String("CertificateId"), // Required } resp, err := svc.CancelCertificateTransfer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_CreateCertificateFromCsr() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.CreateCertificateFromCsrInput{ CertificateSigningRequest: aws.String("CertificateSigningRequest"), // Required SetAsActive: aws.Bool(true), } resp, err := svc.CreateCertificateFromCsr(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_CreateKeysAndCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.CreateKeysAndCertificateInput{ SetAsActive: aws.Bool(true), } resp, err := svc.CreateKeysAndCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_CreatePolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.CreatePolicyInput{ PolicyDocument: aws.String("PolicyDocument"), // Required PolicyName: aws.String("PolicyName"), // Required } resp, err := svc.CreatePolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_CreatePolicyVersion() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.CreatePolicyVersionInput{ PolicyDocument: aws.String("PolicyDocument"), // Required PolicyName: aws.String("PolicyName"), // Required SetAsDefault: aws.Bool(true), } resp, err := svc.CreatePolicyVersion(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_CreateThing() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.CreateThingInput{ ThingName: aws.String("ThingName"), // Required AttributePayload: &iot.AttributePayload{ Attributes: map[string]*string{ "Key": aws.String("AttributeValue"), // Required // More values... }, Merge: aws.Bool(true), }, ThingTypeName: aws.String("ThingTypeName"), } resp, err := svc.CreateThing(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_CreateThingType() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.CreateThingTypeInput{ ThingTypeName: aws.String("ThingTypeName"), // Required ThingTypeProperties: &iot.ThingTypeProperties{ SearchableAttributes: []*string{ aws.String("AttributeName"), // Required // More values... }, ThingTypeDescription: aws.String("ThingTypeDescription"), }, } resp, err := svc.CreateThingType(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_CreateTopicRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.CreateTopicRuleInput{ RuleName: aws.String("RuleName"), // Required TopicRulePayload: &iot.TopicRulePayload{ // Required Actions: []*iot.Action{ // Required { // Required CloudwatchAlarm: &iot.CloudwatchAlarmAction{ AlarmName: aws.String("AlarmName"), // Required RoleArn: aws.String("AwsArn"), // Required StateReason: aws.String("StateReason"), // Required StateValue: aws.String("StateValue"), // Required }, CloudwatchMetric: &iot.CloudwatchMetricAction{ MetricName: aws.String("MetricName"), // Required MetricNamespace: aws.String("MetricNamespace"), // Required MetricUnit: aws.String("MetricUnit"), // Required MetricValue: aws.String("MetricValue"), // Required RoleArn: aws.String("AwsArn"), // Required MetricTimestamp: aws.String("MetricTimestamp"), }, DynamoDB: &iot.DynamoDBAction{ HashKeyField: aws.String("HashKeyField"), // Required HashKeyValue: aws.String("HashKeyValue"), // Required RoleArn: aws.String("AwsArn"), // Required TableName: aws.String("TableName"), // Required HashKeyType: aws.String("DynamoKeyType"), Operation: aws.String("DynamoOperation"), PayloadField: aws.String("PayloadField"), RangeKeyField: aws.String("RangeKeyField"), RangeKeyType: aws.String("DynamoKeyType"), RangeKeyValue: aws.String("RangeKeyValue"), }, DynamoDBv2: &iot.DynamoDBv2Action{ PutItem: &iot.PutItemInput{ TableName: aws.String("TableName"), // Required }, RoleArn: aws.String("AwsArn"), }, Elasticsearch: &iot.ElasticsearchAction{ Endpoint: aws.String("ElasticsearchEndpoint"), // Required Id: aws.String("ElasticsearchId"), // Required Index: aws.String("ElasticsearchIndex"), // Required RoleArn: aws.String("AwsArn"), // Required Type: aws.String("ElasticsearchType"), // Required }, Firehose: &iot.FirehoseAction{ DeliveryStreamName: aws.String("DeliveryStreamName"), // Required RoleArn: aws.String("AwsArn"), // Required Separator: aws.String("FirehoseSeparator"), }, Kinesis: &iot.KinesisAction{ RoleArn: aws.String("AwsArn"), // Required StreamName: aws.String("StreamName"), // Required PartitionKey: aws.String("PartitionKey"), }, Lambda: &iot.LambdaAction{ FunctionArn: aws.String("FunctionArn"), // Required }, Republish: &iot.RepublishAction{ RoleArn: aws.String("AwsArn"), // Required Topic: aws.String("TopicPattern"), // Required }, S3: &iot.S3Action{ BucketName: aws.String("BucketName"), // Required Key: aws.String("Key"), // Required RoleArn: aws.String("AwsArn"), // Required CannedAcl: aws.String("CannedAccessControlList"), }, Sns: &iot.SnsAction{ RoleArn: aws.String("AwsArn"), // Required TargetArn: aws.String("AwsArn"), // Required MessageFormat: aws.String("MessageFormat"), }, Sqs: &iot.SqsAction{ QueueUrl: aws.String("QueueUrl"), // Required RoleArn: aws.String("AwsArn"), // Required UseBase64: aws.Bool(true), }, }, // More values... }, Sql: aws.String("SQL"), // Required AwsIotSqlVersion: aws.String("AwsIotSqlVersion"), Description: aws.String("Description"), RuleDisabled: aws.Bool(true), }, } resp, err := svc.CreateTopicRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_DeleteCACertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.DeleteCACertificateInput{ CertificateId: aws.String("CertificateId"), // Required } resp, err := svc.DeleteCACertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_DeleteCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.DeleteCertificateInput{ CertificateId: aws.String("CertificateId"), // Required } resp, err := svc.DeleteCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_DeletePolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.DeletePolicyInput{ PolicyName: aws.String("PolicyName"), // Required } resp, err := svc.DeletePolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_DeletePolicyVersion() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.DeletePolicyVersionInput{ PolicyName: aws.String("PolicyName"), // Required PolicyVersionId: aws.String("PolicyVersionId"), // Required } resp, err := svc.DeletePolicyVersion(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_DeleteRegistrationCode() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) var params *iot.DeleteRegistrationCodeInput resp, err := svc.DeleteRegistrationCode(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_DeleteThing() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.DeleteThingInput{ ThingName: aws.String("ThingName"), // Required ExpectedVersion: aws.Int64(1), } resp, err := svc.DeleteThing(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_DeleteThingType() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.DeleteThingTypeInput{ ThingTypeName: aws.String("ThingTypeName"), // Required } resp, err := svc.DeleteThingType(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_DeleteTopicRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.DeleteTopicRuleInput{ RuleName: aws.String("RuleName"), // Required } resp, err := svc.DeleteTopicRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_DeprecateThingType() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.DeprecateThingTypeInput{ ThingTypeName: aws.String("ThingTypeName"), // Required UndoDeprecate: aws.Bool(true), } resp, err := svc.DeprecateThingType(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_DescribeCACertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.DescribeCACertificateInput{ CertificateId: aws.String("CertificateId"), // Required } resp, err := svc.DescribeCACertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_DescribeCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.DescribeCertificateInput{ CertificateId: aws.String("CertificateId"), // Required } resp, err := svc.DescribeCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_DescribeEndpoint() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) var params *iot.DescribeEndpointInput resp, err := svc.DescribeEndpoint(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_DescribeThing() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.DescribeThingInput{ ThingName: aws.String("ThingName"), // Required } resp, err := svc.DescribeThing(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_DescribeThingType() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.DescribeThingTypeInput{ ThingTypeName: aws.String("ThingTypeName"), // Required } resp, err := svc.DescribeThingType(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_DetachPrincipalPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.DetachPrincipalPolicyInput{ PolicyName: aws.String("PolicyName"), // Required Principal: aws.String("Principal"), // Required } resp, err := svc.DetachPrincipalPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_DetachThingPrincipal() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.DetachThingPrincipalInput{ Principal: aws.String("Principal"), // Required ThingName: aws.String("ThingName"), // Required } resp, err := svc.DetachThingPrincipal(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_DisableTopicRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.DisableTopicRuleInput{ RuleName: aws.String("RuleName"), // Required } resp, err := svc.DisableTopicRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_EnableTopicRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.EnableTopicRuleInput{ RuleName: aws.String("RuleName"), // Required } resp, err := svc.EnableTopicRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_GetLoggingOptions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) var params *iot.GetLoggingOptionsInput resp, err := svc.GetLoggingOptions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_GetPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.GetPolicyInput{ PolicyName: aws.String("PolicyName"), // Required } resp, err := svc.GetPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_GetPolicyVersion() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.GetPolicyVersionInput{ PolicyName: aws.String("PolicyName"), // Required PolicyVersionId: aws.String("PolicyVersionId"), // Required } resp, err := svc.GetPolicyVersion(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_GetRegistrationCode() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) var params *iot.GetRegistrationCodeInput resp, err := svc.GetRegistrationCode(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_GetTopicRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.GetTopicRuleInput{ RuleName: aws.String("RuleName"), // Required } resp, err := svc.GetTopicRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_ListCACertificates() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.ListCACertificatesInput{ AscendingOrder: aws.Bool(true), Marker: aws.String("Marker"), PageSize: aws.Int64(1), } resp, err := svc.ListCACertificates(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_ListCertificates() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.ListCertificatesInput{ AscendingOrder: aws.Bool(true), Marker: aws.String("Marker"), PageSize: aws.Int64(1), } resp, err := svc.ListCertificates(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_ListCertificatesByCA() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.ListCertificatesByCAInput{ CaCertificateId: aws.String("CertificateId"), // Required AscendingOrder: aws.Bool(true), Marker: aws.String("Marker"), PageSize: aws.Int64(1), } resp, err := svc.ListCertificatesByCA(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_ListOutgoingCertificates() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.ListOutgoingCertificatesInput{ AscendingOrder: aws.Bool(true), Marker: aws.String("Marker"), PageSize: aws.Int64(1), } resp, err := svc.ListOutgoingCertificates(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_ListPolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.ListPoliciesInput{ AscendingOrder: aws.Bool(true), Marker: aws.String("Marker"), PageSize: aws.Int64(1), } resp, err := svc.ListPolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_ListPolicyPrincipals() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.ListPolicyPrincipalsInput{ PolicyName: aws.String("PolicyName"), // Required AscendingOrder: aws.Bool(true), Marker: aws.String("Marker"), PageSize: aws.Int64(1), } resp, err := svc.ListPolicyPrincipals(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_ListPolicyVersions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.ListPolicyVersionsInput{ PolicyName: aws.String("PolicyName"), // Required } resp, err := svc.ListPolicyVersions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_ListPrincipalPolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.ListPrincipalPoliciesInput{ Principal: aws.String("Principal"), // Required AscendingOrder: aws.Bool(true), Marker: aws.String("Marker"), PageSize: aws.Int64(1), } resp, err := svc.ListPrincipalPolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_ListPrincipalThings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.ListPrincipalThingsInput{ Principal: aws.String("Principal"), // Required MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.ListPrincipalThings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_ListThingPrincipals() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.ListThingPrincipalsInput{ ThingName: aws.String("ThingName"), // Required } resp, err := svc.ListThingPrincipals(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_ListThingTypes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.ListThingTypesInput{ MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), ThingTypeName: aws.String("ThingTypeName"), } resp, err := svc.ListThingTypes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_ListThings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.ListThingsInput{ AttributeName: aws.String("AttributeName"), AttributeValue: aws.String("AttributeValue"), MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), ThingTypeName: aws.String("ThingTypeName"), } resp, err := svc.ListThings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_ListTopicRules() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.ListTopicRulesInput{ MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), RuleDisabled: aws.Bool(true), Topic: aws.String("Topic"), } resp, err := svc.ListTopicRules(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_RegisterCACertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.RegisterCACertificateInput{ CaCertificate: aws.String("CertificatePem"), // Required VerificationCertificate: aws.String("CertificatePem"), // Required AllowAutoRegistration: aws.Bool(true), SetAsActive: aws.Bool(true), } resp, err := svc.RegisterCACertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_RegisterCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.RegisterCertificateInput{ CertificatePem: aws.String("CertificatePem"), // Required CaCertificatePem: aws.String("CertificatePem"), SetAsActive: aws.Bool(true), Status: aws.String("CertificateStatus"), } resp, err := svc.RegisterCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_RejectCertificateTransfer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.RejectCertificateTransferInput{ CertificateId: aws.String("CertificateId"), // Required RejectReason: aws.String("Message"), } resp, err := svc.RejectCertificateTransfer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_ReplaceTopicRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.ReplaceTopicRuleInput{ RuleName: aws.String("RuleName"), // Required TopicRulePayload: &iot.TopicRulePayload{ // Required Actions: []*iot.Action{ // Required { // Required CloudwatchAlarm: &iot.CloudwatchAlarmAction{ AlarmName: aws.String("AlarmName"), // Required RoleArn: aws.String("AwsArn"), // Required StateReason: aws.String("StateReason"), // Required StateValue: aws.String("StateValue"), // Required }, CloudwatchMetric: &iot.CloudwatchMetricAction{ MetricName: aws.String("MetricName"), // Required MetricNamespace: aws.String("MetricNamespace"), // Required MetricUnit: aws.String("MetricUnit"), // Required MetricValue: aws.String("MetricValue"), // Required RoleArn: aws.String("AwsArn"), // Required MetricTimestamp: aws.String("MetricTimestamp"), }, DynamoDB: &iot.DynamoDBAction{ HashKeyField: aws.String("HashKeyField"), // Required HashKeyValue: aws.String("HashKeyValue"), // Required RoleArn: aws.String("AwsArn"), // Required TableName: aws.String("TableName"), // Required HashKeyType: aws.String("DynamoKeyType"), Operation: aws.String("DynamoOperation"), PayloadField: aws.String("PayloadField"), RangeKeyField: aws.String("RangeKeyField"), RangeKeyType: aws.String("DynamoKeyType"), RangeKeyValue: aws.String("RangeKeyValue"), }, DynamoDBv2: &iot.DynamoDBv2Action{ PutItem: &iot.PutItemInput{ TableName: aws.String("TableName"), // Required }, RoleArn: aws.String("AwsArn"), }, Elasticsearch: &iot.ElasticsearchAction{ Endpoint: aws.String("ElasticsearchEndpoint"), // Required Id: aws.String("ElasticsearchId"), // Required Index: aws.String("ElasticsearchIndex"), // Required RoleArn: aws.String("AwsArn"), // Required Type: aws.String("ElasticsearchType"), // Required }, Firehose: &iot.FirehoseAction{ DeliveryStreamName: aws.String("DeliveryStreamName"), // Required RoleArn: aws.String("AwsArn"), // Required Separator: aws.String("FirehoseSeparator"), }, Kinesis: &iot.KinesisAction{ RoleArn: aws.String("AwsArn"), // Required StreamName: aws.String("StreamName"), // Required PartitionKey: aws.String("PartitionKey"), }, Lambda: &iot.LambdaAction{ FunctionArn: aws.String("FunctionArn"), // Required }, Republish: &iot.RepublishAction{ RoleArn: aws.String("AwsArn"), // Required Topic: aws.String("TopicPattern"), // Required }, S3: &iot.S3Action{ BucketName: aws.String("BucketName"), // Required Key: aws.String("Key"), // Required RoleArn: aws.String("AwsArn"), // Required CannedAcl: aws.String("CannedAccessControlList"), }, Sns: &iot.SnsAction{ RoleArn: aws.String("AwsArn"), // Required TargetArn: aws.String("AwsArn"), // Required MessageFormat: aws.String("MessageFormat"), }, Sqs: &iot.SqsAction{ QueueUrl: aws.String("QueueUrl"), // Required RoleArn: aws.String("AwsArn"), // Required UseBase64: aws.Bool(true), }, }, // More values... }, Sql: aws.String("SQL"), // Required AwsIotSqlVersion: aws.String("AwsIotSqlVersion"), Description: aws.String("Description"), RuleDisabled: aws.Bool(true), }, } resp, err := svc.ReplaceTopicRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_SetDefaultPolicyVersion() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.SetDefaultPolicyVersionInput{ PolicyName: aws.String("PolicyName"), // Required PolicyVersionId: aws.String("PolicyVersionId"), // Required } resp, err := svc.SetDefaultPolicyVersion(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_SetLoggingOptions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.SetLoggingOptionsInput{ LoggingOptionsPayload: &iot.LoggingOptionsPayload{ // Required RoleArn: aws.String("AwsArn"), // Required LogLevel: aws.String("LogLevel"), }, } resp, err := svc.SetLoggingOptions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_TransferCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.TransferCertificateInput{ CertificateId: aws.String("CertificateId"), // Required TargetAwsAccount: aws.String("AwsAccountId"), // Required TransferMessage: aws.String("Message"), } resp, err := svc.TransferCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_UpdateCACertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.UpdateCACertificateInput{ CertificateId: aws.String("CertificateId"), // Required NewAutoRegistrationStatus: aws.String("AutoRegistrationStatus"), NewStatus: aws.String("CACertificateStatus"), } resp, err := svc.UpdateCACertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_UpdateCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.UpdateCertificateInput{ CertificateId: aws.String("CertificateId"), // Required NewStatus: aws.String("CertificateStatus"), // Required } resp, err := svc.UpdateCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoT_UpdateThing() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iot.New(sess) params := &iot.UpdateThingInput{ ThingName: aws.String("ThingName"), // Required AttributePayload: &iot.AttributePayload{ Attributes: map[string]*string{ "Key": aws.String("AttributeValue"), // Required // More values... }, Merge: aws.Bool(true), }, ExpectedVersion: aws.Int64(1), RemoveThingType: aws.Bool(true), ThingTypeName: aws.String("ThingTypeName"), } resp, err := svc.UpdateThing(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/iot/iotiface/000077500000000000000000000000001300374646400176015ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/iot/iotiface/interface.go000066400000000000000000000317041300374646400220750ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package iotiface provides an interface to enable mocking the AWS IoT service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package iotiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/iot" ) // IoTAPI provides an interface to enable mocking the // iot.IoT service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS IoT. // func myFunc(svc iotiface.IoTAPI) bool { // // Make svc.AcceptCertificateTransfer request // } // // func main() { // sess := session.New() // svc := iot.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockIoTClient struct { // iotiface.IoTAPI // } // func (m *mockIoTClient) AcceptCertificateTransfer(input *iot.AcceptCertificateTransferInput) (*iot.AcceptCertificateTransferOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockIoTClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type IoTAPI interface { AcceptCertificateTransferRequest(*iot.AcceptCertificateTransferInput) (*request.Request, *iot.AcceptCertificateTransferOutput) AcceptCertificateTransfer(*iot.AcceptCertificateTransferInput) (*iot.AcceptCertificateTransferOutput, error) AttachPrincipalPolicyRequest(*iot.AttachPrincipalPolicyInput) (*request.Request, *iot.AttachPrincipalPolicyOutput) AttachPrincipalPolicy(*iot.AttachPrincipalPolicyInput) (*iot.AttachPrincipalPolicyOutput, error) AttachThingPrincipalRequest(*iot.AttachThingPrincipalInput) (*request.Request, *iot.AttachThingPrincipalOutput) AttachThingPrincipal(*iot.AttachThingPrincipalInput) (*iot.AttachThingPrincipalOutput, error) CancelCertificateTransferRequest(*iot.CancelCertificateTransferInput) (*request.Request, *iot.CancelCertificateTransferOutput) CancelCertificateTransfer(*iot.CancelCertificateTransferInput) (*iot.CancelCertificateTransferOutput, error) CreateCertificateFromCsrRequest(*iot.CreateCertificateFromCsrInput) (*request.Request, *iot.CreateCertificateFromCsrOutput) CreateCertificateFromCsr(*iot.CreateCertificateFromCsrInput) (*iot.CreateCertificateFromCsrOutput, error) CreateKeysAndCertificateRequest(*iot.CreateKeysAndCertificateInput) (*request.Request, *iot.CreateKeysAndCertificateOutput) CreateKeysAndCertificate(*iot.CreateKeysAndCertificateInput) (*iot.CreateKeysAndCertificateOutput, error) CreatePolicyRequest(*iot.CreatePolicyInput) (*request.Request, *iot.CreatePolicyOutput) CreatePolicy(*iot.CreatePolicyInput) (*iot.CreatePolicyOutput, error) CreatePolicyVersionRequest(*iot.CreatePolicyVersionInput) (*request.Request, *iot.CreatePolicyVersionOutput) CreatePolicyVersion(*iot.CreatePolicyVersionInput) (*iot.CreatePolicyVersionOutput, error) CreateThingRequest(*iot.CreateThingInput) (*request.Request, *iot.CreateThingOutput) CreateThing(*iot.CreateThingInput) (*iot.CreateThingOutput, error) CreateThingTypeRequest(*iot.CreateThingTypeInput) (*request.Request, *iot.CreateThingTypeOutput) CreateThingType(*iot.CreateThingTypeInput) (*iot.CreateThingTypeOutput, error) CreateTopicRuleRequest(*iot.CreateTopicRuleInput) (*request.Request, *iot.CreateTopicRuleOutput) CreateTopicRule(*iot.CreateTopicRuleInput) (*iot.CreateTopicRuleOutput, error) DeleteCACertificateRequest(*iot.DeleteCACertificateInput) (*request.Request, *iot.DeleteCACertificateOutput) DeleteCACertificate(*iot.DeleteCACertificateInput) (*iot.DeleteCACertificateOutput, error) DeleteCertificateRequest(*iot.DeleteCertificateInput) (*request.Request, *iot.DeleteCertificateOutput) DeleteCertificate(*iot.DeleteCertificateInput) (*iot.DeleteCertificateOutput, error) DeletePolicyRequest(*iot.DeletePolicyInput) (*request.Request, *iot.DeletePolicyOutput) DeletePolicy(*iot.DeletePolicyInput) (*iot.DeletePolicyOutput, error) DeletePolicyVersionRequest(*iot.DeletePolicyVersionInput) (*request.Request, *iot.DeletePolicyVersionOutput) DeletePolicyVersion(*iot.DeletePolicyVersionInput) (*iot.DeletePolicyVersionOutput, error) DeleteRegistrationCodeRequest(*iot.DeleteRegistrationCodeInput) (*request.Request, *iot.DeleteRegistrationCodeOutput) DeleteRegistrationCode(*iot.DeleteRegistrationCodeInput) (*iot.DeleteRegistrationCodeOutput, error) DeleteThingRequest(*iot.DeleteThingInput) (*request.Request, *iot.DeleteThingOutput) DeleteThing(*iot.DeleteThingInput) (*iot.DeleteThingOutput, error) DeleteThingTypeRequest(*iot.DeleteThingTypeInput) (*request.Request, *iot.DeleteThingTypeOutput) DeleteThingType(*iot.DeleteThingTypeInput) (*iot.DeleteThingTypeOutput, error) DeleteTopicRuleRequest(*iot.DeleteTopicRuleInput) (*request.Request, *iot.DeleteTopicRuleOutput) DeleteTopicRule(*iot.DeleteTopicRuleInput) (*iot.DeleteTopicRuleOutput, error) DeprecateThingTypeRequest(*iot.DeprecateThingTypeInput) (*request.Request, *iot.DeprecateThingTypeOutput) DeprecateThingType(*iot.DeprecateThingTypeInput) (*iot.DeprecateThingTypeOutput, error) DescribeCACertificateRequest(*iot.DescribeCACertificateInput) (*request.Request, *iot.DescribeCACertificateOutput) DescribeCACertificate(*iot.DescribeCACertificateInput) (*iot.DescribeCACertificateOutput, error) DescribeCertificateRequest(*iot.DescribeCertificateInput) (*request.Request, *iot.DescribeCertificateOutput) DescribeCertificate(*iot.DescribeCertificateInput) (*iot.DescribeCertificateOutput, error) DescribeEndpointRequest(*iot.DescribeEndpointInput) (*request.Request, *iot.DescribeEndpointOutput) DescribeEndpoint(*iot.DescribeEndpointInput) (*iot.DescribeEndpointOutput, error) DescribeThingRequest(*iot.DescribeThingInput) (*request.Request, *iot.DescribeThingOutput) DescribeThing(*iot.DescribeThingInput) (*iot.DescribeThingOutput, error) DescribeThingTypeRequest(*iot.DescribeThingTypeInput) (*request.Request, *iot.DescribeThingTypeOutput) DescribeThingType(*iot.DescribeThingTypeInput) (*iot.DescribeThingTypeOutput, error) DetachPrincipalPolicyRequest(*iot.DetachPrincipalPolicyInput) (*request.Request, *iot.DetachPrincipalPolicyOutput) DetachPrincipalPolicy(*iot.DetachPrincipalPolicyInput) (*iot.DetachPrincipalPolicyOutput, error) DetachThingPrincipalRequest(*iot.DetachThingPrincipalInput) (*request.Request, *iot.DetachThingPrincipalOutput) DetachThingPrincipal(*iot.DetachThingPrincipalInput) (*iot.DetachThingPrincipalOutput, error) DisableTopicRuleRequest(*iot.DisableTopicRuleInput) (*request.Request, *iot.DisableTopicRuleOutput) DisableTopicRule(*iot.DisableTopicRuleInput) (*iot.DisableTopicRuleOutput, error) EnableTopicRuleRequest(*iot.EnableTopicRuleInput) (*request.Request, *iot.EnableTopicRuleOutput) EnableTopicRule(*iot.EnableTopicRuleInput) (*iot.EnableTopicRuleOutput, error) GetLoggingOptionsRequest(*iot.GetLoggingOptionsInput) (*request.Request, *iot.GetLoggingOptionsOutput) GetLoggingOptions(*iot.GetLoggingOptionsInput) (*iot.GetLoggingOptionsOutput, error) GetPolicyRequest(*iot.GetPolicyInput) (*request.Request, *iot.GetPolicyOutput) GetPolicy(*iot.GetPolicyInput) (*iot.GetPolicyOutput, error) GetPolicyVersionRequest(*iot.GetPolicyVersionInput) (*request.Request, *iot.GetPolicyVersionOutput) GetPolicyVersion(*iot.GetPolicyVersionInput) (*iot.GetPolicyVersionOutput, error) GetRegistrationCodeRequest(*iot.GetRegistrationCodeInput) (*request.Request, *iot.GetRegistrationCodeOutput) GetRegistrationCode(*iot.GetRegistrationCodeInput) (*iot.GetRegistrationCodeOutput, error) GetTopicRuleRequest(*iot.GetTopicRuleInput) (*request.Request, *iot.GetTopicRuleOutput) GetTopicRule(*iot.GetTopicRuleInput) (*iot.GetTopicRuleOutput, error) ListCACertificatesRequest(*iot.ListCACertificatesInput) (*request.Request, *iot.ListCACertificatesOutput) ListCACertificates(*iot.ListCACertificatesInput) (*iot.ListCACertificatesOutput, error) ListCertificatesRequest(*iot.ListCertificatesInput) (*request.Request, *iot.ListCertificatesOutput) ListCertificates(*iot.ListCertificatesInput) (*iot.ListCertificatesOutput, error) ListCertificatesByCARequest(*iot.ListCertificatesByCAInput) (*request.Request, *iot.ListCertificatesByCAOutput) ListCertificatesByCA(*iot.ListCertificatesByCAInput) (*iot.ListCertificatesByCAOutput, error) ListOutgoingCertificatesRequest(*iot.ListOutgoingCertificatesInput) (*request.Request, *iot.ListOutgoingCertificatesOutput) ListOutgoingCertificates(*iot.ListOutgoingCertificatesInput) (*iot.ListOutgoingCertificatesOutput, error) ListPoliciesRequest(*iot.ListPoliciesInput) (*request.Request, *iot.ListPoliciesOutput) ListPolicies(*iot.ListPoliciesInput) (*iot.ListPoliciesOutput, error) ListPolicyPrincipalsRequest(*iot.ListPolicyPrincipalsInput) (*request.Request, *iot.ListPolicyPrincipalsOutput) ListPolicyPrincipals(*iot.ListPolicyPrincipalsInput) (*iot.ListPolicyPrincipalsOutput, error) ListPolicyVersionsRequest(*iot.ListPolicyVersionsInput) (*request.Request, *iot.ListPolicyVersionsOutput) ListPolicyVersions(*iot.ListPolicyVersionsInput) (*iot.ListPolicyVersionsOutput, error) ListPrincipalPoliciesRequest(*iot.ListPrincipalPoliciesInput) (*request.Request, *iot.ListPrincipalPoliciesOutput) ListPrincipalPolicies(*iot.ListPrincipalPoliciesInput) (*iot.ListPrincipalPoliciesOutput, error) ListPrincipalThingsRequest(*iot.ListPrincipalThingsInput) (*request.Request, *iot.ListPrincipalThingsOutput) ListPrincipalThings(*iot.ListPrincipalThingsInput) (*iot.ListPrincipalThingsOutput, error) ListThingPrincipalsRequest(*iot.ListThingPrincipalsInput) (*request.Request, *iot.ListThingPrincipalsOutput) ListThingPrincipals(*iot.ListThingPrincipalsInput) (*iot.ListThingPrincipalsOutput, error) ListThingTypesRequest(*iot.ListThingTypesInput) (*request.Request, *iot.ListThingTypesOutput) ListThingTypes(*iot.ListThingTypesInput) (*iot.ListThingTypesOutput, error) ListThingsRequest(*iot.ListThingsInput) (*request.Request, *iot.ListThingsOutput) ListThings(*iot.ListThingsInput) (*iot.ListThingsOutput, error) ListTopicRulesRequest(*iot.ListTopicRulesInput) (*request.Request, *iot.ListTopicRulesOutput) ListTopicRules(*iot.ListTopicRulesInput) (*iot.ListTopicRulesOutput, error) RegisterCACertificateRequest(*iot.RegisterCACertificateInput) (*request.Request, *iot.RegisterCACertificateOutput) RegisterCACertificate(*iot.RegisterCACertificateInput) (*iot.RegisterCACertificateOutput, error) RegisterCertificateRequest(*iot.RegisterCertificateInput) (*request.Request, *iot.RegisterCertificateOutput) RegisterCertificate(*iot.RegisterCertificateInput) (*iot.RegisterCertificateOutput, error) RejectCertificateTransferRequest(*iot.RejectCertificateTransferInput) (*request.Request, *iot.RejectCertificateTransferOutput) RejectCertificateTransfer(*iot.RejectCertificateTransferInput) (*iot.RejectCertificateTransferOutput, error) ReplaceTopicRuleRequest(*iot.ReplaceTopicRuleInput) (*request.Request, *iot.ReplaceTopicRuleOutput) ReplaceTopicRule(*iot.ReplaceTopicRuleInput) (*iot.ReplaceTopicRuleOutput, error) SetDefaultPolicyVersionRequest(*iot.SetDefaultPolicyVersionInput) (*request.Request, *iot.SetDefaultPolicyVersionOutput) SetDefaultPolicyVersion(*iot.SetDefaultPolicyVersionInput) (*iot.SetDefaultPolicyVersionOutput, error) SetLoggingOptionsRequest(*iot.SetLoggingOptionsInput) (*request.Request, *iot.SetLoggingOptionsOutput) SetLoggingOptions(*iot.SetLoggingOptionsInput) (*iot.SetLoggingOptionsOutput, error) TransferCertificateRequest(*iot.TransferCertificateInput) (*request.Request, *iot.TransferCertificateOutput) TransferCertificate(*iot.TransferCertificateInput) (*iot.TransferCertificateOutput, error) UpdateCACertificateRequest(*iot.UpdateCACertificateInput) (*request.Request, *iot.UpdateCACertificateOutput) UpdateCACertificate(*iot.UpdateCACertificateInput) (*iot.UpdateCACertificateOutput, error) UpdateCertificateRequest(*iot.UpdateCertificateInput) (*request.Request, *iot.UpdateCertificateOutput) UpdateCertificate(*iot.UpdateCertificateInput) (*iot.UpdateCertificateOutput, error) UpdateThingRequest(*iot.UpdateThingInput) (*request.Request, *iot.UpdateThingOutput) UpdateThing(*iot.UpdateThingInput) (*iot.UpdateThingOutput, error) } var _ IoTAPI = (*iot.IoT)(nil) aws-sdk-go-1.4.22/service/iot/service.go000066400000000000000000000063221300374646400200100ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package iot import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) // AWS IoT provides secure, bi-directional communication between Internet-connected // things (such as sensors, actuators, embedded devices, or smart appliances) // and the AWS cloud. You can discover your custom IoT-Data endpoint to communicate // with, configure rules for data processing and integration with other services, // organize resources associated with each thing (Thing Registry), configure // logging, and create and manage policies and credentials to authenticate things. // // For more information about how AWS IoT works, see the Developer Guide (http://docs.aws.amazon.com/iot/latest/developerguide/aws-iot-how-it-works.html). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type IoT struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "iot" // New creates a new instance of the IoT client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a IoT client from just a session. // svc := iot.New(mySession) // // // Create a IoT client with additional configuration // svc := iot.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *IoT { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *IoT { svc := &IoT{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningName: "execute-api", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-05-28", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a IoT operation and runs any // custom request initialization. func (c *IoT) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/iotdataplane/000077500000000000000000000000001300374646400176705ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/iotdataplane/api.go000066400000000000000000000430571300374646400210010ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package iotdataplane provides a client for AWS IoT Data Plane. package iotdataplane import ( "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) const opDeleteThingShadow = "DeleteThingShadow" // DeleteThingShadowRequest generates a "aws/request.Request" representing the // client's request for the DeleteThingShadow operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteThingShadow for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteThingShadow method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteThingShadowRequest method. // req, resp := client.DeleteThingShadowRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoTDataPlane) DeleteThingShadowRequest(input *DeleteThingShadowInput) (req *request.Request, output *DeleteThingShadowOutput) { op := &request.Operation{ Name: opDeleteThingShadow, HTTPMethod: "DELETE", HTTPPath: "/things/{thingName}/shadow", } if input == nil { input = &DeleteThingShadowInput{} } req = c.newRequest(op, input, output) output = &DeleteThingShadowOutput{} req.Data = output return } // DeleteThingShadow API operation for AWS IoT Data Plane. // // Deletes the thing shadow for the specified thing. // // For more information, see DeleteThingShadow (http://docs.aws.amazon.com/iot/latest/developerguide/API_DeleteThingShadow.html) // in the AWS IoT Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT Data Plane's // API operation DeleteThingShadow for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource does not exist. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // // * MethodNotAllowedException // The specified combination of HTTP verb and URI is not supported. // // * UnsupportedDocumentEncodingException // The document encoding is not supported. // func (c *IoTDataPlane) DeleteThingShadow(input *DeleteThingShadowInput) (*DeleteThingShadowOutput, error) { req, out := c.DeleteThingShadowRequest(input) err := req.Send() return out, err } const opGetThingShadow = "GetThingShadow" // GetThingShadowRequest generates a "aws/request.Request" representing the // client's request for the GetThingShadow operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetThingShadow for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetThingShadow method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetThingShadowRequest method. // req, resp := client.GetThingShadowRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoTDataPlane) GetThingShadowRequest(input *GetThingShadowInput) (req *request.Request, output *GetThingShadowOutput) { op := &request.Operation{ Name: opGetThingShadow, HTTPMethod: "GET", HTTPPath: "/things/{thingName}/shadow", } if input == nil { input = &GetThingShadowInput{} } req = c.newRequest(op, input, output) output = &GetThingShadowOutput{} req.Data = output return } // GetThingShadow API operation for AWS IoT Data Plane. // // Gets the thing shadow for the specified thing. // // For more information, see GetThingShadow (http://docs.aws.amazon.com/iot/latest/developerguide/API_GetThingShadow.html) // in the AWS IoT Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT Data Plane's // API operation GetThingShadow for usage and error information. // // Returned Error Codes: // * InvalidRequestException // The request is not valid. // // * ResourceNotFoundException // The specified resource does not exist. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // // * MethodNotAllowedException // The specified combination of HTTP verb and URI is not supported. // // * UnsupportedDocumentEncodingException // The document encoding is not supported. // func (c *IoTDataPlane) GetThingShadow(input *GetThingShadowInput) (*GetThingShadowOutput, error) { req, out := c.GetThingShadowRequest(input) err := req.Send() return out, err } const opPublish = "Publish" // PublishRequest generates a "aws/request.Request" representing the // client's request for the Publish operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See Publish for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the Publish method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PublishRequest method. // req, resp := client.PublishRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoTDataPlane) PublishRequest(input *PublishInput) (req *request.Request, output *PublishOutput) { op := &request.Operation{ Name: opPublish, HTTPMethod: "POST", HTTPPath: "/topics/{topic}", } if input == nil { input = &PublishInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PublishOutput{} req.Data = output return } // Publish API operation for AWS IoT Data Plane. // // Publishes state information. // // For more information, see HTTP Protocol (http://docs.aws.amazon.com/iot/latest/developerguide/protocols.html#http) // in the AWS IoT Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT Data Plane's // API operation Publish for usage and error information. // // Returned Error Codes: // * InternalFailureException // An unexpected error has occurred. // // * InvalidRequestException // The request is not valid. // // * UnauthorizedException // You are not authorized to perform this operation. // // * MethodNotAllowedException // The specified combination of HTTP verb and URI is not supported. // func (c *IoTDataPlane) Publish(input *PublishInput) (*PublishOutput, error) { req, out := c.PublishRequest(input) err := req.Send() return out, err } const opUpdateThingShadow = "UpdateThingShadow" // UpdateThingShadowRequest generates a "aws/request.Request" representing the // client's request for the UpdateThingShadow operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateThingShadow for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateThingShadow method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateThingShadowRequest method. // req, resp := client.UpdateThingShadowRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *IoTDataPlane) UpdateThingShadowRequest(input *UpdateThingShadowInput) (req *request.Request, output *UpdateThingShadowOutput) { op := &request.Operation{ Name: opUpdateThingShadow, HTTPMethod: "POST", HTTPPath: "/things/{thingName}/shadow", } if input == nil { input = &UpdateThingShadowInput{} } req = c.newRequest(op, input, output) output = &UpdateThingShadowOutput{} req.Data = output return } // UpdateThingShadow API operation for AWS IoT Data Plane. // // Updates the thing shadow for the specified thing. // // For more information, see UpdateThingShadow (http://docs.aws.amazon.com/iot/latest/developerguide/API_UpdateThingShadow.html) // in the AWS IoT Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS IoT Data Plane's // API operation UpdateThingShadow for usage and error information. // // Returned Error Codes: // * ConflictException // The specified version does not match the version of the document. // // * RequestEntityTooLargeException // The payload exceeds the maximum size allowed. // // * InvalidRequestException // The request is not valid. // // * ThrottlingException // The rate exceeds the limit. // // * UnauthorizedException // You are not authorized to perform this operation. // // * ServiceUnavailableException // The service is temporarily unavailable. // // * InternalFailureException // An unexpected error has occurred. // // * MethodNotAllowedException // The specified combination of HTTP verb and URI is not supported. // // * UnsupportedDocumentEncodingException // The document encoding is not supported. // func (c *IoTDataPlane) UpdateThingShadow(input *UpdateThingShadowInput) (*UpdateThingShadowOutput, error) { req, out := c.UpdateThingShadowRequest(input) err := req.Send() return out, err } // The input for the DeleteThingShadow operation. type DeleteThingShadowInput struct { _ struct{} `type:"structure"` // The name of the thing. // // ThingName is a required field ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteThingShadowInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteThingShadowInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteThingShadowInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteThingShadowInput"} if s.ThingName == nil { invalidParams.Add(request.NewErrParamRequired("ThingName")) } if s.ThingName != nil && len(*s.ThingName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThingName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the DeleteThingShadow operation. type DeleteThingShadowOutput struct { _ struct{} `type:"structure" payload:"Payload"` // The state information, in JSON format. // // Payload is a required field Payload []byte `locationName:"payload" type:"blob" required:"true"` } // String returns the string representation func (s DeleteThingShadowOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteThingShadowOutput) GoString() string { return s.String() } // The input for the GetThingShadow operation. type GetThingShadowInput struct { _ struct{} `type:"structure"` // The name of the thing. // // ThingName is a required field ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetThingShadowInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetThingShadowInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetThingShadowInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetThingShadowInput"} if s.ThingName == nil { invalidParams.Add(request.NewErrParamRequired("ThingName")) } if s.ThingName != nil && len(*s.ThingName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThingName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the GetThingShadow operation. type GetThingShadowOutput struct { _ struct{} `type:"structure" payload:"Payload"` // The state information, in JSON format. Payload []byte `locationName:"payload" type:"blob"` } // String returns the string representation func (s GetThingShadowOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetThingShadowOutput) GoString() string { return s.String() } // The input for the Publish operation. type PublishInput struct { _ struct{} `type:"structure" payload:"Payload"` // The state information, in JSON format. Payload []byte `locationName:"payload" type:"blob"` // The Quality of Service (QoS) level. Qos *int64 `location:"querystring" locationName:"qos" type:"integer"` // The name of the MQTT topic. // // Topic is a required field Topic *string `location:"uri" locationName:"topic" type:"string" required:"true"` } // String returns the string representation func (s PublishInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PublishInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PublishInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PublishInput"} if s.Topic == nil { invalidParams.Add(request.NewErrParamRequired("Topic")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PublishOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PublishOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PublishOutput) GoString() string { return s.String() } // The input for the UpdateThingShadow operation. type UpdateThingShadowInput struct { _ struct{} `type:"structure" payload:"Payload"` // The state information, in JSON format. // // Payload is a required field Payload []byte `locationName:"payload" type:"blob" required:"true"` // The name of the thing. // // ThingName is a required field ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateThingShadowInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateThingShadowInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateThingShadowInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateThingShadowInput"} if s.Payload == nil { invalidParams.Add(request.NewErrParamRequired("Payload")) } if s.ThingName == nil { invalidParams.Add(request.NewErrParamRequired("ThingName")) } if s.ThingName != nil && len(*s.ThingName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ThingName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The output from the UpdateThingShadow operation. type UpdateThingShadowOutput struct { _ struct{} `type:"structure" payload:"Payload"` // The state information, in JSON format. Payload []byte `locationName:"payload" type:"blob"` } // String returns the string representation func (s UpdateThingShadowOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateThingShadowOutput) GoString() string { return s.String() } aws-sdk-go-1.4.22/service/iotdataplane/customizations_test.go000066400000000000000000000025771300374646400243640ustar00rootroot00000000000000package iotdataplane_test import ( "fmt" "github.com/stretchr/testify/assert" "testing" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/iotdataplane" ) func TestRequireEndpointIfRegionProvided(t *testing.T) { svc := iotdataplane.New(unit.Session, &aws.Config{ Region: aws.String("mock-region"), DisableParamValidation: aws.Bool(true), }) req, _ := svc.GetThingShadowRequest(nil) err := req.Build() assert.Equal(t, "", svc.Endpoint) assert.Error(t, err) assert.Equal(t, aws.ErrMissingEndpoint, err) } func TestRequireEndpointIfNoRegionProvided(t *testing.T) { svc := iotdataplane.New(unit.Session, &aws.Config{ Region: aws.String(""), DisableParamValidation: aws.Bool(true), }) fmt.Println(svc.ClientInfo.SigningRegion) req, _ := svc.GetThingShadowRequest(nil) err := req.Build() assert.Equal(t, "", svc.Endpoint) assert.Error(t, err) assert.Equal(t, aws.ErrMissingEndpoint, err) } func TestRequireEndpointUsed(t *testing.T) { svc := iotdataplane.New(unit.Session, &aws.Config{ Region: aws.String("mock-region"), DisableParamValidation: aws.Bool(true), Endpoint: aws.String("https://endpoint"), }) req, _ := svc.GetThingShadowRequest(nil) err := req.Build() assert.Equal(t, "https://endpoint", svc.Endpoint) assert.NoError(t, err) } aws-sdk-go-1.4.22/service/iotdataplane/examples_test.go000066400000000000000000000047521300374646400231040ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package iotdataplane_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/iotdataplane" ) var _ time.Duration var _ bytes.Buffer func ExampleIoTDataPlane_DeleteThingShadow() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iotdataplane.New(sess) params := &iotdataplane.DeleteThingShadowInput{ ThingName: aws.String("ThingName"), // Required } resp, err := svc.DeleteThingShadow(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoTDataPlane_GetThingShadow() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iotdataplane.New(sess) params := &iotdataplane.GetThingShadowInput{ ThingName: aws.String("ThingName"), // Required } resp, err := svc.GetThingShadow(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoTDataPlane_Publish() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iotdataplane.New(sess) params := &iotdataplane.PublishInput{ Topic: aws.String("Topic"), // Required Payload: []byte("PAYLOAD"), Qos: aws.Int64(1), } resp, err := svc.Publish(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleIoTDataPlane_UpdateThingShadow() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := iotdataplane.New(sess) params := &iotdataplane.UpdateThingShadowInput{ Payload: []byte("PAYLOAD"), // Required ThingName: aws.String("ThingName"), // Required } resp, err := svc.UpdateThingShadow(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/iotdataplane/iotdataplaneiface/000077500000000000000000000000001300374646400233255ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/iotdataplane/iotdataplaneiface/interface.go000066400000000000000000000060521300374646400256170ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package iotdataplaneiface provides an interface to enable mocking the AWS IoT Data Plane service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package iotdataplaneiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/iotdataplane" ) // IoTDataPlaneAPI provides an interface to enable mocking the // iotdataplane.IoTDataPlane service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS IoT Data Plane. // func myFunc(svc iotdataplaneiface.IoTDataPlaneAPI) bool { // // Make svc.DeleteThingShadow request // } // // func main() { // sess := session.New() // svc := iotdataplane.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockIoTDataPlaneClient struct { // iotdataplaneiface.IoTDataPlaneAPI // } // func (m *mockIoTDataPlaneClient) DeleteThingShadow(input *iotdataplane.DeleteThingShadowInput) (*iotdataplane.DeleteThingShadowOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockIoTDataPlaneClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type IoTDataPlaneAPI interface { DeleteThingShadowRequest(*iotdataplane.DeleteThingShadowInput) (*request.Request, *iotdataplane.DeleteThingShadowOutput) DeleteThingShadow(*iotdataplane.DeleteThingShadowInput) (*iotdataplane.DeleteThingShadowOutput, error) GetThingShadowRequest(*iotdataplane.GetThingShadowInput) (*request.Request, *iotdataplane.GetThingShadowOutput) GetThingShadow(*iotdataplane.GetThingShadowInput) (*iotdataplane.GetThingShadowOutput, error) PublishRequest(*iotdataplane.PublishInput) (*request.Request, *iotdataplane.PublishOutput) Publish(*iotdataplane.PublishInput) (*iotdataplane.PublishOutput, error) UpdateThingShadowRequest(*iotdataplane.UpdateThingShadowInput) (*request.Request, *iotdataplane.UpdateThingShadowOutput) UpdateThingShadow(*iotdataplane.UpdateThingShadowInput) (*iotdataplane.UpdateThingShadowOutput, error) } var _ IoTDataPlaneAPI = (*iotdataplane.IoTDataPlane)(nil) aws-sdk-go-1.4.22/service/iotdataplane/service.go000066400000000000000000000061501300374646400216610ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package iotdataplane import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) // AWS IoT-Data enables secure, bi-directional communication between Internet-connected // things (such as sensors, actuators, embedded devices, or smart appliances) // and the AWS cloud. It implements a broker for applications and things to // publish messages over HTTP (Publish) and retrieve, update, and delete thing // shadows. A thing shadow is a persistent representation of your things and // their state in the AWS cloud. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type IoTDataPlane struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "data.iot" // New creates a new instance of the IoTDataPlane client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a IoTDataPlane client from just a session. // svc := iotdataplane.New(mySession) // // // Create a IoTDataPlane client with additional configuration // svc := iotdataplane.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *IoTDataPlane { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *IoTDataPlane { svc := &IoTDataPlane{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningName: "iotdata", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-05-28", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a IoTDataPlane operation and runs any // custom request initialization. func (c *IoTDataPlane) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/kinesis/000077500000000000000000000000001300374646400166705ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/kinesis/api.go000066400000000000000000003702111300374646400177740ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package kinesis provides a client for Amazon Kinesis. package kinesis import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opAddTagsToStream = "AddTagsToStream" // AddTagsToStreamRequest generates a "aws/request.Request" representing the // client's request for the AddTagsToStream operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddTagsToStream for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddTagsToStream method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddTagsToStreamRequest method. // req, resp := client.AddTagsToStreamRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Kinesis) AddTagsToStreamRequest(input *AddTagsToStreamInput) (req *request.Request, output *AddTagsToStreamOutput) { op := &request.Operation{ Name: opAddTagsToStream, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddTagsToStreamInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AddTagsToStreamOutput{} req.Data = output return } // AddTagsToStream API operation for Amazon Kinesis. // // Adds or updates tags for the specified Amazon Kinesis stream. Each stream // can have up to 10 tags. // // If tags have already been assigned to the stream, AddTagsToStream overwrites // any existing tags that correspond to the specified tag keys. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis's // API operation AddTagsToStream for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The requested resource could not be found. The stream might not be specified // correctly, or it might not be in the ACTIVE state if the operation requires // it. // // * ResourceInUseException // The resource is not available for this operation. For successful operation, // the resource needs to be in the ACTIVE state. // // * InvalidArgumentException // A specified parameter exceeds its restrictions, is not supported, or can't // be used. For more information, see the returned message. // // * LimitExceededException // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed (5). // func (c *Kinesis) AddTagsToStream(input *AddTagsToStreamInput) (*AddTagsToStreamOutput, error) { req, out := c.AddTagsToStreamRequest(input) err := req.Send() return out, err } const opCreateStream = "CreateStream" // CreateStreamRequest generates a "aws/request.Request" representing the // client's request for the CreateStream operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateStream for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateStream method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateStreamRequest method. // req, resp := client.CreateStreamRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Kinesis) CreateStreamRequest(input *CreateStreamInput) (req *request.Request, output *CreateStreamOutput) { op := &request.Operation{ Name: opCreateStream, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateStreamInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CreateStreamOutput{} req.Data = output return } // CreateStream API operation for Amazon Kinesis. // // Creates an Amazon Kinesis stream. A stream captures and transports data records // that are continuously emitted from different data sources or producers. Scale-out // within a stream is explicitly supported by means of shards, which are uniquely // identified groups of data records in a stream. // // You specify and control the number of shards that a stream is composed of. // Each shard can support reads up to 5 transactions per second, up to a maximum // data read total of 2 MB per second. Each shard can support writes up to 1,000 // records per second, up to a maximum data write total of 1 MB per second. // You can add shards to a stream if the amount of data input increases and // you can remove shards if the amount of data input decreases. // // The stream name identifies the stream. The name is scoped to the AWS account // used by the application. It is also scoped by region. That is, two streams // in two different accounts can have the same name, and two streams in the // same account, but in two different regions, can have the same name. // // CreateStream is an asynchronous operation. Upon receiving a CreateStream // request, Amazon Kinesis immediately returns and sets the stream status to // CREATING. After the stream is created, Amazon Kinesis sets the stream status // to ACTIVE. You should perform read and write operations only on an ACTIVE // stream. // // You receive a LimitExceededException when making a CreateStream request if // you try to do one of the following: // // * Have more than five streams in the CREATING state at any point in time. // // * Create more shards than are authorized for your account. // For the default shard limit for an AWS account, see Streams Limits (http://docs.aws.amazon.com/kinesis/latest/dev/service-sizes-and-limits.html) // in the Amazon Kinesis Streams Developer Guide. If you need to increase this // limit, contact AWS Support (http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html). // // You can use DescribeStream to check the stream status, which is returned // in StreamStatus. // // CreateStream has a limit of 5 transactions per second per account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis's // API operation CreateStream for usage and error information. // // Returned Error Codes: // * ResourceInUseException // The resource is not available for this operation. For successful operation, // the resource needs to be in the ACTIVE state. // // * LimitExceededException // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed (5). // // * InvalidArgumentException // A specified parameter exceeds its restrictions, is not supported, or can't // be used. For more information, see the returned message. // func (c *Kinesis) CreateStream(input *CreateStreamInput) (*CreateStreamOutput, error) { req, out := c.CreateStreamRequest(input) err := req.Send() return out, err } const opDecreaseStreamRetentionPeriod = "DecreaseStreamRetentionPeriod" // DecreaseStreamRetentionPeriodRequest generates a "aws/request.Request" representing the // client's request for the DecreaseStreamRetentionPeriod operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DecreaseStreamRetentionPeriod for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DecreaseStreamRetentionPeriod method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DecreaseStreamRetentionPeriodRequest method. // req, resp := client.DecreaseStreamRetentionPeriodRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Kinesis) DecreaseStreamRetentionPeriodRequest(input *DecreaseStreamRetentionPeriodInput) (req *request.Request, output *DecreaseStreamRetentionPeriodOutput) { op := &request.Operation{ Name: opDecreaseStreamRetentionPeriod, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DecreaseStreamRetentionPeriodInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DecreaseStreamRetentionPeriodOutput{} req.Data = output return } // DecreaseStreamRetentionPeriod API operation for Amazon Kinesis. // // Decreases the Amazon Kinesis stream's retention period, which is the length // of time data records are accessible after they are added to the stream. The // minimum value of a stream's retention period is 24 hours. // // This operation may result in lost data. For example, if the stream's retention // period is 48 hours and is decreased to 24 hours, any data already in the // stream that is older than 24 hours is inaccessible. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis's // API operation DecreaseStreamRetentionPeriod for usage and error information. // // Returned Error Codes: // * ResourceInUseException // The resource is not available for this operation. For successful operation, // the resource needs to be in the ACTIVE state. // // * ResourceNotFoundException // The requested resource could not be found. The stream might not be specified // correctly, or it might not be in the ACTIVE state if the operation requires // it. // // * LimitExceededException // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed (5). // // * InvalidArgumentException // A specified parameter exceeds its restrictions, is not supported, or can't // be used. For more information, see the returned message. // func (c *Kinesis) DecreaseStreamRetentionPeriod(input *DecreaseStreamRetentionPeriodInput) (*DecreaseStreamRetentionPeriodOutput, error) { req, out := c.DecreaseStreamRetentionPeriodRequest(input) err := req.Send() return out, err } const opDeleteStream = "DeleteStream" // DeleteStreamRequest generates a "aws/request.Request" representing the // client's request for the DeleteStream operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteStream for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteStream method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteStreamRequest method. // req, resp := client.DeleteStreamRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Kinesis) DeleteStreamRequest(input *DeleteStreamInput) (req *request.Request, output *DeleteStreamOutput) { op := &request.Operation{ Name: opDeleteStream, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteStreamInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteStreamOutput{} req.Data = output return } // DeleteStream API operation for Amazon Kinesis. // // Deletes an Amazon Kinesis stream and all its shards and data. You must shut // down any applications that are operating on the stream before you delete // the stream. If an application attempts to operate on a deleted stream, it // will receive the exception ResourceNotFoundException. // // If the stream is in the ACTIVE state, you can delete it. After a DeleteStream // request, the specified stream is in the DELETING state until Amazon Kinesis // completes the deletion. // // Note: Amazon Kinesis might continue to accept data read and write operations, // such as PutRecord, PutRecords, and GetRecords, on a stream in the DELETING // state until the stream deletion is complete. // // When you delete a stream, any shards in that stream are also deleted, and // any tags are dissociated from the stream. // // You can use the DescribeStream operation to check the state of the stream, // which is returned in StreamStatus. // // DeleteStream has a limit of 5 transactions per second per account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis's // API operation DeleteStream for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The requested resource could not be found. The stream might not be specified // correctly, or it might not be in the ACTIVE state if the operation requires // it. // // * LimitExceededException // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed (5). // func (c *Kinesis) DeleteStream(input *DeleteStreamInput) (*DeleteStreamOutput, error) { req, out := c.DeleteStreamRequest(input) err := req.Send() return out, err } const opDescribeStream = "DescribeStream" // DescribeStreamRequest generates a "aws/request.Request" representing the // client's request for the DescribeStream operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeStream for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeStream method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeStreamRequest method. // req, resp := client.DescribeStreamRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Kinesis) DescribeStreamRequest(input *DescribeStreamInput) (req *request.Request, output *DescribeStreamOutput) { op := &request.Operation{ Name: opDescribeStream, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"ExclusiveStartShardId"}, OutputTokens: []string{"StreamDescription.Shards[-1].ShardId"}, LimitToken: "Limit", TruncationToken: "StreamDescription.HasMoreShards", }, } if input == nil { input = &DescribeStreamInput{} } req = c.newRequest(op, input, output) output = &DescribeStreamOutput{} req.Data = output return } // DescribeStream API operation for Amazon Kinesis. // // Describes the specified Amazon Kinesis stream. // // The information about the stream includes its current status, its Amazon // Resource Name (ARN), and an array of shard objects. For each shard object, // there is information about the hash key and sequence number ranges that the // shard spans, and the IDs of any earlier shards that played in a role in creating // the shard. A sequence number is the identifier associated with every record // ingested in the stream. The sequence number is assigned when a record is // put into the stream. // // You can limit the number of returned shards using the Limit parameter. The // number of shards in a stream may be too large to return from a single call // to DescribeStream. You can detect this by using the HasMoreShards flag in // the returned output. HasMoreShards is set to true when there is more data // available. // // DescribeStream is a paginated operation. If there are more shards available, // you can request them using the shard ID of the last shard returned. Specify // this ID in the ExclusiveStartShardId parameter in a subsequent request to // DescribeStream. // // There are no guarantees about the chronological order shards returned in // DescribeStream results. If you want to process shards in chronological order, // use ParentShardId to track lineage to the oldest shard. // // DescribeStream has a limit of 10 transactions per second per account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis's // API operation DescribeStream for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The requested resource could not be found. The stream might not be specified // correctly, or it might not be in the ACTIVE state if the operation requires // it. // // * LimitExceededException // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed (5). // func (c *Kinesis) DescribeStream(input *DescribeStreamInput) (*DescribeStreamOutput, error) { req, out := c.DescribeStreamRequest(input) err := req.Send() return out, err } // DescribeStreamPages iterates over the pages of a DescribeStream operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeStream method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeStream operation. // pageNum := 0 // err := client.DescribeStreamPages(params, // func(page *DescribeStreamOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Kinesis) DescribeStreamPages(input *DescribeStreamInput, fn func(p *DescribeStreamOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeStreamRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeStreamOutput), lastPage) }) } const opDisableEnhancedMonitoring = "DisableEnhancedMonitoring" // DisableEnhancedMonitoringRequest generates a "aws/request.Request" representing the // client's request for the DisableEnhancedMonitoring operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableEnhancedMonitoring for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableEnhancedMonitoring method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableEnhancedMonitoringRequest method. // req, resp := client.DisableEnhancedMonitoringRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Kinesis) DisableEnhancedMonitoringRequest(input *DisableEnhancedMonitoringInput) (req *request.Request, output *EnhancedMonitoringOutput) { op := &request.Operation{ Name: opDisableEnhancedMonitoring, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableEnhancedMonitoringInput{} } req = c.newRequest(op, input, output) output = &EnhancedMonitoringOutput{} req.Data = output return } // DisableEnhancedMonitoring API operation for Amazon Kinesis. // // Disables enhanced monitoring. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis's // API operation DisableEnhancedMonitoring for usage and error information. // // Returned Error Codes: // * InvalidArgumentException // A specified parameter exceeds its restrictions, is not supported, or can't // be used. For more information, see the returned message. // // * LimitExceededException // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed (5). // // * ResourceInUseException // The resource is not available for this operation. For successful operation, // the resource needs to be in the ACTIVE state. // // * ResourceNotFoundException // The requested resource could not be found. The stream might not be specified // correctly, or it might not be in the ACTIVE state if the operation requires // it. // func (c *Kinesis) DisableEnhancedMonitoring(input *DisableEnhancedMonitoringInput) (*EnhancedMonitoringOutput, error) { req, out := c.DisableEnhancedMonitoringRequest(input) err := req.Send() return out, err } const opEnableEnhancedMonitoring = "EnableEnhancedMonitoring" // EnableEnhancedMonitoringRequest generates a "aws/request.Request" representing the // client's request for the EnableEnhancedMonitoring operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableEnhancedMonitoring for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableEnhancedMonitoring method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableEnhancedMonitoringRequest method. // req, resp := client.EnableEnhancedMonitoringRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Kinesis) EnableEnhancedMonitoringRequest(input *EnableEnhancedMonitoringInput) (req *request.Request, output *EnhancedMonitoringOutput) { op := &request.Operation{ Name: opEnableEnhancedMonitoring, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableEnhancedMonitoringInput{} } req = c.newRequest(op, input, output) output = &EnhancedMonitoringOutput{} req.Data = output return } // EnableEnhancedMonitoring API operation for Amazon Kinesis. // // Enables enhanced Amazon Kinesis stream monitoring for shard-level metrics. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis's // API operation EnableEnhancedMonitoring for usage and error information. // // Returned Error Codes: // * InvalidArgumentException // A specified parameter exceeds its restrictions, is not supported, or can't // be used. For more information, see the returned message. // // * LimitExceededException // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed (5). // // * ResourceInUseException // The resource is not available for this operation. For successful operation, // the resource needs to be in the ACTIVE state. // // * ResourceNotFoundException // The requested resource could not be found. The stream might not be specified // correctly, or it might not be in the ACTIVE state if the operation requires // it. // func (c *Kinesis) EnableEnhancedMonitoring(input *EnableEnhancedMonitoringInput) (*EnhancedMonitoringOutput, error) { req, out := c.EnableEnhancedMonitoringRequest(input) err := req.Send() return out, err } const opGetRecords = "GetRecords" // GetRecordsRequest generates a "aws/request.Request" representing the // client's request for the GetRecords operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetRecords for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetRecords method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetRecordsRequest method. // req, resp := client.GetRecordsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Kinesis) GetRecordsRequest(input *GetRecordsInput) (req *request.Request, output *GetRecordsOutput) { op := &request.Operation{ Name: opGetRecords, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetRecordsInput{} } req = c.newRequest(op, input, output) output = &GetRecordsOutput{} req.Data = output return } // GetRecords API operation for Amazon Kinesis. // // Gets data records from an Amazon Kinesis stream's shard. // // Specify a shard iterator using the ShardIterator parameter. The shard iterator // specifies the position in the shard from which you want to start reading // data records sequentially. If there are no records available in the portion // of the shard that the iterator points to, GetRecords returns an empty list. // Note that it might take multiple calls to get to a portion of the shard that // contains records. // // You can scale by provisioning multiple shards per stream while considering // service limits (for more information, see Streams Limits (http://docs.aws.amazon.com/kinesis/latest/dev/service-sizes-and-limits.html) // in the Amazon Kinesis Streams Developer Guide). Your application should have // one thread per shard, each reading continuously from its stream. To read // from a stream continually, call GetRecords in a loop. Use GetShardIterator // to get the shard iterator to specify in the first GetRecords call. GetRecords // returns a new shard iterator in NextShardIterator. Specify the shard iterator // returned in NextShardIterator in subsequent calls to GetRecords. Note that // if the shard has been closed, the shard iterator can't return more data and // GetRecords returns null in NextShardIterator. You can terminate the loop // when the shard is closed, or when the shard iterator reaches the record with // the sequence number or other attribute that marks it as the last record to // process. // // Each data record can be up to 1 MB in size, and each shard can read up to // 2 MB per second. You can ensure that your calls don't exceed the maximum // supported size or throughput by using the Limit parameter to specify the // maximum number of records that GetRecords can return. Consider your average // record size when determining this limit. // // The size of the data returned by GetRecords varies depending on the utilization // of the shard. The maximum size of data that GetRecords can return is 10 MB. // If a call returns this amount of data, subsequent calls made within the next // 5 seconds throw ProvisionedThroughputExceededException. If there is insufficient // provisioned throughput on the shard, subsequent calls made within the next // 1 second throw ProvisionedThroughputExceededException. Note that GetRecords // won't return any data when it throws an exception. For this reason, we recommend // that you wait one second between calls to GetRecords; however, it's possible // that the application will get exceptions for longer than 1 second. // // To detect whether the application is falling behind in processing, you can // use the MillisBehindLatest response attribute. You can also monitor the stream // using CloudWatch metrics and other mechanisms (see Monitoring (http://docs.aws.amazon.com/kinesis/latest/dev/monitoring.html) // in the Amazon Kinesis Streams Developer Guide). // // Each Amazon Kinesis record includes a value, ApproximateArrivalTimestamp, // that is set when a stream successfully receives and stores a record. This // is commonly referred to as a server-side timestamp, whereas a client-side // timestamp is set when a data producer creates or sends the record to a stream // (a data producer is any data source putting data records into a stream, for // example with PutRecords). The timestamp has millisecond precision. There // are no guarantees about the timestamp accuracy, or that the timestamp is // always increasing. For example, records in a shard or across a stream might // have timestamps that are out of order. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis's // API operation GetRecords for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The requested resource could not be found. The stream might not be specified // correctly, or it might not be in the ACTIVE state if the operation requires // it. // // * InvalidArgumentException // A specified parameter exceeds its restrictions, is not supported, or can't // be used. For more information, see the returned message. // // * ProvisionedThroughputExceededException // The request rate for the stream is too high, or the requested data is too // large for the available throughput. Reduce the frequency or size of your // requests. For more information, see Streams Limits (http://docs.aws.amazon.com/kinesis/latest/dev/service-sizes-and-limits.html) // in the Amazon Kinesis Streams Developer Guide, and Error Retries and Exponential // Backoff in AWS (http://docs.aws.amazon.com/general/latest/gr/api-retries.html) // in the AWS General Reference. // // * ExpiredIteratorException // The provided iterator exceeds the maximum age allowed. // func (c *Kinesis) GetRecords(input *GetRecordsInput) (*GetRecordsOutput, error) { req, out := c.GetRecordsRequest(input) err := req.Send() return out, err } const opGetShardIterator = "GetShardIterator" // GetShardIteratorRequest generates a "aws/request.Request" representing the // client's request for the GetShardIterator operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetShardIterator for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetShardIterator method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetShardIteratorRequest method. // req, resp := client.GetShardIteratorRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Kinesis) GetShardIteratorRequest(input *GetShardIteratorInput) (req *request.Request, output *GetShardIteratorOutput) { op := &request.Operation{ Name: opGetShardIterator, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetShardIteratorInput{} } req = c.newRequest(op, input, output) output = &GetShardIteratorOutput{} req.Data = output return } // GetShardIterator API operation for Amazon Kinesis. // // Gets an Amazon Kinesis shard iterator. A shard iterator expires five minutes // after it is returned to the requester. // // A shard iterator specifies the shard position from which to start reading // data records sequentially. The position is specified using the sequence number // of a data record in a shard. A sequence number is the identifier associated // with every record ingested in the stream, and is assigned when a record is // put into the stream. Each stream has one or more shards. // // You must specify the shard iterator type. For example, you can set the ShardIteratorType // parameter to read exactly from the position denoted by a specific sequence // number by using the AT_SEQUENCE_NUMBER shard iterator type, or right after // the sequence number by using the AFTER_SEQUENCE_NUMBER shard iterator type, // using sequence numbers returned by earlier calls to PutRecord, PutRecords, // GetRecords, or DescribeStream. In the request, you can specify the shard // iterator type AT_TIMESTAMP to read records from an arbitrary point in time, // TRIM_HORIZON to cause ShardIterator to point to the last untrimmed record // in the shard in the system (the oldest data record in the shard), or LATEST // so that you always read the most recent data in the shard. // // When you read repeatedly from a stream, use a GetShardIterator request to // get the first shard iterator for use in your first GetRecords request and // for subsequent reads use the shard iterator returned by the GetRecords request // in NextShardIterator. A new shard iterator is returned by every GetRecords // request in NextShardIterator, which you use in the ShardIterator parameter // of the next GetRecords request. // // If a GetShardIterator request is made too often, you receive a ProvisionedThroughputExceededException. // For more information about throughput limits, see GetRecords, and Streams // Limits (http://docs.aws.amazon.com/kinesis/latest/dev/service-sizes-and-limits.html) // in the Amazon Kinesis Streams Developer Guide. // // If the shard is closed, GetShardIterator returns a valid iterator for the // last sequence number of the shard. Note that a shard can be closed as a result // of using SplitShard or MergeShards. // // GetShardIterator has a limit of 5 transactions per second per account per // open shard. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis's // API operation GetShardIterator for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The requested resource could not be found. The stream might not be specified // correctly, or it might not be in the ACTIVE state if the operation requires // it. // // * InvalidArgumentException // A specified parameter exceeds its restrictions, is not supported, or can't // be used. For more information, see the returned message. // // * ProvisionedThroughputExceededException // The request rate for the stream is too high, or the requested data is too // large for the available throughput. Reduce the frequency or size of your // requests. For more information, see Streams Limits (http://docs.aws.amazon.com/kinesis/latest/dev/service-sizes-and-limits.html) // in the Amazon Kinesis Streams Developer Guide, and Error Retries and Exponential // Backoff in AWS (http://docs.aws.amazon.com/general/latest/gr/api-retries.html) // in the AWS General Reference. // func (c *Kinesis) GetShardIterator(input *GetShardIteratorInput) (*GetShardIteratorOutput, error) { req, out := c.GetShardIteratorRequest(input) err := req.Send() return out, err } const opIncreaseStreamRetentionPeriod = "IncreaseStreamRetentionPeriod" // IncreaseStreamRetentionPeriodRequest generates a "aws/request.Request" representing the // client's request for the IncreaseStreamRetentionPeriod operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See IncreaseStreamRetentionPeriod for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the IncreaseStreamRetentionPeriod method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the IncreaseStreamRetentionPeriodRequest method. // req, resp := client.IncreaseStreamRetentionPeriodRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Kinesis) IncreaseStreamRetentionPeriodRequest(input *IncreaseStreamRetentionPeriodInput) (req *request.Request, output *IncreaseStreamRetentionPeriodOutput) { op := &request.Operation{ Name: opIncreaseStreamRetentionPeriod, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &IncreaseStreamRetentionPeriodInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &IncreaseStreamRetentionPeriodOutput{} req.Data = output return } // IncreaseStreamRetentionPeriod API operation for Amazon Kinesis. // // Increases the Amazon Kinesis stream's retention period, which is the length // of time data records are accessible after they are added to the stream. The // maximum value of a stream's retention period is 168 hours (7 days). // // Upon choosing a longer stream retention period, this operation will increase // the time period records are accessible that have not yet expired. However, // it will not make previous data that has expired (older than the stream's // previous retention period) accessible after the operation has been called. // For example, if a stream's retention period is set to 24 hours and is increased // to 168 hours, any data that is older than 24 hours will remain inaccessible // to consumer applications. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis's // API operation IncreaseStreamRetentionPeriod for usage and error information. // // Returned Error Codes: // * ResourceInUseException // The resource is not available for this operation. For successful operation, // the resource needs to be in the ACTIVE state. // // * ResourceNotFoundException // The requested resource could not be found. The stream might not be specified // correctly, or it might not be in the ACTIVE state if the operation requires // it. // // * LimitExceededException // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed (5). // // * InvalidArgumentException // A specified parameter exceeds its restrictions, is not supported, or can't // be used. For more information, see the returned message. // func (c *Kinesis) IncreaseStreamRetentionPeriod(input *IncreaseStreamRetentionPeriodInput) (*IncreaseStreamRetentionPeriodOutput, error) { req, out := c.IncreaseStreamRetentionPeriodRequest(input) err := req.Send() return out, err } const opListStreams = "ListStreams" // ListStreamsRequest generates a "aws/request.Request" representing the // client's request for the ListStreams operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListStreams for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListStreams method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListStreamsRequest method. // req, resp := client.ListStreamsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Kinesis) ListStreamsRequest(input *ListStreamsInput) (req *request.Request, output *ListStreamsOutput) { op := &request.Operation{ Name: opListStreams, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"ExclusiveStartStreamName"}, OutputTokens: []string{"StreamNames[-1]"}, LimitToken: "Limit", TruncationToken: "HasMoreStreams", }, } if input == nil { input = &ListStreamsInput{} } req = c.newRequest(op, input, output) output = &ListStreamsOutput{} req.Data = output return } // ListStreams API operation for Amazon Kinesis. // // Lists your Amazon Kinesis streams. // // The number of streams may be too large to return from a single call to ListStreams. // You can limit the number of returned streams using the Limit parameter. If // you do not specify a value for the Limit parameter, Amazon Kinesis uses the // default limit, which is currently 10. // // You can detect if there are more streams available to list by using the HasMoreStreams // flag from the returned output. If there are more streams available, you can // request more streams by using the name of the last stream returned by the // ListStreams request in the ExclusiveStartStreamName parameter in a subsequent // request to ListStreams. The group of stream names returned by the subsequent // request is then added to the list. You can continue this process until all // the stream names have been collected in the list. // // ListStreams has a limit of 5 transactions per second per account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis's // API operation ListStreams for usage and error information. // // Returned Error Codes: // * LimitExceededException // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed (5). // func (c *Kinesis) ListStreams(input *ListStreamsInput) (*ListStreamsOutput, error) { req, out := c.ListStreamsRequest(input) err := req.Send() return out, err } // ListStreamsPages iterates over the pages of a ListStreams operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListStreams method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListStreams operation. // pageNum := 0 // err := client.ListStreamsPages(params, // func(page *ListStreamsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Kinesis) ListStreamsPages(input *ListStreamsInput, fn func(p *ListStreamsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListStreamsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListStreamsOutput), lastPage) }) } const opListTagsForStream = "ListTagsForStream" // ListTagsForStreamRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForStream operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTagsForStream for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTagsForStream method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTagsForStreamRequest method. // req, resp := client.ListTagsForStreamRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Kinesis) ListTagsForStreamRequest(input *ListTagsForStreamInput) (req *request.Request, output *ListTagsForStreamOutput) { op := &request.Operation{ Name: opListTagsForStream, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListTagsForStreamInput{} } req = c.newRequest(op, input, output) output = &ListTagsForStreamOutput{} req.Data = output return } // ListTagsForStream API operation for Amazon Kinesis. // // Lists the tags for the specified Amazon Kinesis stream. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis's // API operation ListTagsForStream for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The requested resource could not be found. The stream might not be specified // correctly, or it might not be in the ACTIVE state if the operation requires // it. // // * InvalidArgumentException // A specified parameter exceeds its restrictions, is not supported, or can't // be used. For more information, see the returned message. // // * LimitExceededException // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed (5). // func (c *Kinesis) ListTagsForStream(input *ListTagsForStreamInput) (*ListTagsForStreamOutput, error) { req, out := c.ListTagsForStreamRequest(input) err := req.Send() return out, err } const opMergeShards = "MergeShards" // MergeShardsRequest generates a "aws/request.Request" representing the // client's request for the MergeShards operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See MergeShards for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the MergeShards method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the MergeShardsRequest method. // req, resp := client.MergeShardsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Kinesis) MergeShardsRequest(input *MergeShardsInput) (req *request.Request, output *MergeShardsOutput) { op := &request.Operation{ Name: opMergeShards, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &MergeShardsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &MergeShardsOutput{} req.Data = output return } // MergeShards API operation for Amazon Kinesis. // // Merges two adjacent shards in an Amazon Kinesis stream and combines them // into a single shard to reduce the stream's capacity to ingest and transport // data. Two shards are considered adjacent if the union of the hash key ranges // for the two shards form a contiguous set with no gaps. For example, if you // have two shards, one with a hash key range of 276...381 and the other with // a hash key range of 382...454, then you could merge these two shards into // a single shard that would have a hash key range of 276...454. After the merge, // the single child shard receives data for all hash key values covered by the // two parent shards. // // MergeShards is called when there is a need to reduce the overall capacity // of a stream because of excess capacity that is not being used. You must specify // the shard to be merged and the adjacent shard for a stream. For more information // about merging shards, see Merge Two Shards (http://docs.aws.amazon.com/kinesis/latest/dev/kinesis-using-sdk-java-resharding-merge.html) // in the Amazon Kinesis Streams Developer Guide. // // If the stream is in the ACTIVE state, you can call MergeShards. If a stream // is in the CREATING, UPDATING, or DELETING state, MergeShards returns a ResourceInUseException. // If the specified stream does not exist, MergeShards returns a ResourceNotFoundException. // // You can use DescribeStream to check the state of the stream, which is returned // in StreamStatus. // // MergeShards is an asynchronous operation. Upon receiving a MergeShards request, // Amazon Kinesis immediately returns a response and sets the StreamStatus to // UPDATING. After the operation is completed, Amazon Kinesis sets the StreamStatus // to ACTIVE. Read and write operations continue to work while the stream is // in the UPDATING state. // // You use DescribeStream to determine the shard IDs that are specified in the // MergeShards request. // // If you try to operate on too many streams in parallel using CreateStream, // DeleteStream, MergeShards or SplitShard, you will receive a LimitExceededException. // // MergeShards has limit of 5 transactions per second per account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis's // API operation MergeShards for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The requested resource could not be found. The stream might not be specified // correctly, or it might not be in the ACTIVE state if the operation requires // it. // // * ResourceInUseException // The resource is not available for this operation. For successful operation, // the resource needs to be in the ACTIVE state. // // * InvalidArgumentException // A specified parameter exceeds its restrictions, is not supported, or can't // be used. For more information, see the returned message. // // * LimitExceededException // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed (5). // func (c *Kinesis) MergeShards(input *MergeShardsInput) (*MergeShardsOutput, error) { req, out := c.MergeShardsRequest(input) err := req.Send() return out, err } const opPutRecord = "PutRecord" // PutRecordRequest generates a "aws/request.Request" representing the // client's request for the PutRecord operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutRecord for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutRecord method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutRecordRequest method. // req, resp := client.PutRecordRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Kinesis) PutRecordRequest(input *PutRecordInput) (req *request.Request, output *PutRecordOutput) { op := &request.Operation{ Name: opPutRecord, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutRecordInput{} } req = c.newRequest(op, input, output) output = &PutRecordOutput{} req.Data = output return } // PutRecord API operation for Amazon Kinesis. // // Writes a single data record into an Amazon Kinesis stream. Call PutRecord // to send data into the stream for real-time ingestion and subsequent processing, // one record at a time. Each shard can support writes up to 1,000 records per // second, up to a maximum data write total of 1 MB per second. // // You must specify the name of the stream that captures, stores, and transports // the data; a partition key; and the data blob itself. // // The data blob can be any type of data; for example, a segment from a log // file, geographic/location data, website clickstream data, and so on. // // The partition key is used by Amazon Kinesis to distribute data across shards. // Amazon Kinesis segregates the data records that belong to a stream into multiple // shards, using the partition key associated with each data record to determine // which shard a given data record belongs to. // // Partition keys are Unicode strings, with a maximum length limit of 256 characters // for each key. An MD5 hash function is used to map partition keys to 128-bit // integer values and to map associated data records to shards using the hash // key ranges of the shards. You can override hashing the partition key to determine // the shard by explicitly specifying a hash value using the ExplicitHashKey // parameter. For more information, see Adding Data to a Stream (http://docs.aws.amazon.com/kinesis/latest/dev/developing-producers-with-sdk.html#kinesis-using-sdk-java-add-data-to-stream) // in the Amazon Kinesis Streams Developer Guide. // // PutRecord returns the shard ID of where the data record was placed and the // sequence number that was assigned to the data record. // // Sequence numbers increase over time and are specific to a shard within a // stream, not across all shards within a stream. To guarantee strictly increasing // ordering, write serially to a shard and use the SequenceNumberForOrdering // parameter. For more information, see Adding Data to a Stream (http://docs.aws.amazon.com/kinesis/latest/dev/developing-producers-with-sdk.html#kinesis-using-sdk-java-add-data-to-stream) // in the Amazon Kinesis Streams Developer Guide. // // If a PutRecord request cannot be processed because of insufficient provisioned // throughput on the shard involved in the request, PutRecord throws ProvisionedThroughputExceededException. // // Data records are accessible for only 24 hours from the time that they are // added to a stream. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis's // API operation PutRecord for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The requested resource could not be found. The stream might not be specified // correctly, or it might not be in the ACTIVE state if the operation requires // it. // // * InvalidArgumentException // A specified parameter exceeds its restrictions, is not supported, or can't // be used. For more information, see the returned message. // // * ProvisionedThroughputExceededException // The request rate for the stream is too high, or the requested data is too // large for the available throughput. Reduce the frequency or size of your // requests. For more information, see Streams Limits (http://docs.aws.amazon.com/kinesis/latest/dev/service-sizes-and-limits.html) // in the Amazon Kinesis Streams Developer Guide, and Error Retries and Exponential // Backoff in AWS (http://docs.aws.amazon.com/general/latest/gr/api-retries.html) // in the AWS General Reference. // func (c *Kinesis) PutRecord(input *PutRecordInput) (*PutRecordOutput, error) { req, out := c.PutRecordRequest(input) err := req.Send() return out, err } const opPutRecords = "PutRecords" // PutRecordsRequest generates a "aws/request.Request" representing the // client's request for the PutRecords operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutRecords for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutRecords method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutRecordsRequest method. // req, resp := client.PutRecordsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Kinesis) PutRecordsRequest(input *PutRecordsInput) (req *request.Request, output *PutRecordsOutput) { op := &request.Operation{ Name: opPutRecords, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutRecordsInput{} } req = c.newRequest(op, input, output) output = &PutRecordsOutput{} req.Data = output return } // PutRecords API operation for Amazon Kinesis. // // Writes multiple data records into an Amazon Kinesis stream in a single call // (also referred to as a PutRecords request). Use this operation to send data // into the stream for data ingestion and processing. // // Each PutRecords request can support up to 500 records. Each record in the // request can be as large as 1 MB, up to a limit of 5 MB for the entire request, // including partition keys. Each shard can support writes up to 1,000 records // per second, up to a maximum data write total of 1 MB per second. // // You must specify the name of the stream that captures, stores, and transports // the data; and an array of request Records, with each record in the array // requiring a partition key and data blob. The record size limit applies to // the total size of the partition key and data blob. // // The data blob can be any type of data; for example, a segment from a log // file, geographic/location data, website clickstream data, and so on. // // The partition key is used by Amazon Kinesis as input to a hash function that // maps the partition key and associated data to a specific shard. An MD5 hash // function is used to map partition keys to 128-bit integer values and to map // associated data records to shards. As a result of this hashing mechanism, // all data records with the same partition key map to the same shard within // the stream. For more information, see Adding Data to a Stream (http://docs.aws.amazon.com/kinesis/latest/dev/developing-producers-with-sdk.html#kinesis-using-sdk-java-add-data-to-stream) // in the Amazon Kinesis Streams Developer Guide. // // Each record in the Records array may include an optional parameter, ExplicitHashKey, // which overrides the partition key to shard mapping. This parameter allows // a data producer to determine explicitly the shard where the record is stored. // For more information, see Adding Multiple Records with PutRecords (http://docs.aws.amazon.com/kinesis/latest/dev/developing-producers-with-sdk.html#kinesis-using-sdk-java-putrecords) // in the Amazon Kinesis Streams Developer Guide. // // The PutRecords response includes an array of response Records. Each record // in the response array directly correlates with a record in the request array // using natural ordering, from the top to the bottom of the request and response. // The response Records array always includes the same number of records as // the request array. // // The response Records array includes both successfully and unsuccessfully // processed records. Amazon Kinesis attempts to process all records in each // PutRecords request. A single record failure does not stop the processing // of subsequent records. // // A successfully-processed record includes ShardId and SequenceNumber values. // The ShardId parameter identifies the shard in the stream where the record // is stored. The SequenceNumber parameter is an identifier assigned to the // put record, unique to all records in the stream. // // An unsuccessfully-processed record includes ErrorCode and ErrorMessage values. // ErrorCode reflects the type of error and can be one of the following values: // ProvisionedThroughputExceededException or InternalFailure. ErrorMessage provides // more detailed information about the ProvisionedThroughputExceededException // exception including the account ID, stream name, and shard ID of the record // that was throttled. For more information about partially successful responses, // see Adding Multiple Records with PutRecords (http://docs.aws.amazon.com/kinesis/latest/dev/kinesis-using-sdk-java-add-data-to-stream.html#kinesis-using-sdk-java-putrecords) // in the Amazon Kinesis Streams Developer Guide. // // By default, data records are accessible for only 24 hours from the time that // they are added to an Amazon Kinesis stream. This retention period can be // modified using the DecreaseStreamRetentionPeriod and IncreaseStreamRetentionPeriod // operations. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis's // API operation PutRecords for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The requested resource could not be found. The stream might not be specified // correctly, or it might not be in the ACTIVE state if the operation requires // it. // // * InvalidArgumentException // A specified parameter exceeds its restrictions, is not supported, or can't // be used. For more information, see the returned message. // // * ProvisionedThroughputExceededException // The request rate for the stream is too high, or the requested data is too // large for the available throughput. Reduce the frequency or size of your // requests. For more information, see Streams Limits (http://docs.aws.amazon.com/kinesis/latest/dev/service-sizes-and-limits.html) // in the Amazon Kinesis Streams Developer Guide, and Error Retries and Exponential // Backoff in AWS (http://docs.aws.amazon.com/general/latest/gr/api-retries.html) // in the AWS General Reference. // func (c *Kinesis) PutRecords(input *PutRecordsInput) (*PutRecordsOutput, error) { req, out := c.PutRecordsRequest(input) err := req.Send() return out, err } const opRemoveTagsFromStream = "RemoveTagsFromStream" // RemoveTagsFromStreamRequest generates a "aws/request.Request" representing the // client's request for the RemoveTagsFromStream operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveTagsFromStream for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveTagsFromStream method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveTagsFromStreamRequest method. // req, resp := client.RemoveTagsFromStreamRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Kinesis) RemoveTagsFromStreamRequest(input *RemoveTagsFromStreamInput) (req *request.Request, output *RemoveTagsFromStreamOutput) { op := &request.Operation{ Name: opRemoveTagsFromStream, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveTagsFromStreamInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RemoveTagsFromStreamOutput{} req.Data = output return } // RemoveTagsFromStream API operation for Amazon Kinesis. // // Removes tags from the specified Amazon Kinesis stream. Removed tags are deleted // and cannot be recovered after this operation successfully completes. // // If you specify a tag that does not exist, it is ignored. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis's // API operation RemoveTagsFromStream for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The requested resource could not be found. The stream might not be specified // correctly, or it might not be in the ACTIVE state if the operation requires // it. // // * ResourceInUseException // The resource is not available for this operation. For successful operation, // the resource needs to be in the ACTIVE state. // // * InvalidArgumentException // A specified parameter exceeds its restrictions, is not supported, or can't // be used. For more information, see the returned message. // // * LimitExceededException // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed (5). // func (c *Kinesis) RemoveTagsFromStream(input *RemoveTagsFromStreamInput) (*RemoveTagsFromStreamOutput, error) { req, out := c.RemoveTagsFromStreamRequest(input) err := req.Send() return out, err } const opSplitShard = "SplitShard" // SplitShardRequest generates a "aws/request.Request" representing the // client's request for the SplitShard operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SplitShard for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SplitShard method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SplitShardRequest method. // req, resp := client.SplitShardRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Kinesis) SplitShardRequest(input *SplitShardInput) (req *request.Request, output *SplitShardOutput) { op := &request.Operation{ Name: opSplitShard, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SplitShardInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SplitShardOutput{} req.Data = output return } // SplitShard API operation for Amazon Kinesis. // // Splits a shard into two new shards in the Amazon Kinesis stream to increase // the stream's capacity to ingest and transport data. SplitShard is called // when there is a need to increase the overall capacity of a stream because // of an expected increase in the volume of data records being ingested. // // You can also use SplitShard when a shard appears to be approaching its maximum // utilization; for example, the producers sending data into the specific shard // are suddenly sending more than previously anticipated. You can also call // SplitShard to increase stream capacity, so that more Amazon Kinesis applications // can simultaneously read data from the stream for real-time processing. // // You must specify the shard to be split and the new hash key, which is the // position in the shard where the shard gets split in two. In many cases, the // new hash key might simply be the average of the beginning and ending hash // key, but it can be any hash key value in the range being mapped into the // shard. For more information about splitting shards, see Split a Shard (http://docs.aws.amazon.com/kinesis/latest/dev/kinesis-using-sdk-java-resharding-split.html) // in the Amazon Kinesis Streams Developer Guide. // // You can use DescribeStream to determine the shard ID and hash key values // for the ShardToSplit and NewStartingHashKey parameters that are specified // in the SplitShard request. // // SplitShard is an asynchronous operation. Upon receiving a SplitShard request, // Amazon Kinesis immediately returns a response and sets the stream status // to UPDATING. After the operation is completed, Amazon Kinesis sets the stream // status to ACTIVE. Read and write operations continue to work while the stream // is in the UPDATING state. // // You can use DescribeStream to check the status of the stream, which is returned // in StreamStatus. If the stream is in the ACTIVE state, you can call SplitShard. // If a stream is in CREATING or UPDATING or DELETING states, DescribeStream // returns a ResourceInUseException. // // If the specified stream does not exist, DescribeStream returns a ResourceNotFoundException. // If you try to create more shards than are authorized for your account, you // receive a LimitExceededException. // // For the default shard limit for an AWS account, see Streams Limits (http://docs.aws.amazon.com/kinesis/latest/dev/service-sizes-and-limits.html) // in the Amazon Kinesis Streams Developer Guide. If you need to increase this // limit, contact AWS Support (http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html). // // If you try to operate on too many streams simultaneously using CreateStream, // DeleteStream, MergeShards, and/or SplitShard, you receive a LimitExceededException. // // SplitShard has limit of 5 transactions per second per account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis's // API operation SplitShard for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The requested resource could not be found. The stream might not be specified // correctly, or it might not be in the ACTIVE state if the operation requires // it. // // * ResourceInUseException // The resource is not available for this operation. For successful operation, // the resource needs to be in the ACTIVE state. // // * InvalidArgumentException // A specified parameter exceeds its restrictions, is not supported, or can't // be used. For more information, see the returned message. // // * LimitExceededException // The requested resource exceeds the maximum number allowed, or the number // of concurrent stream requests exceeds the maximum number allowed (5). // func (c *Kinesis) SplitShard(input *SplitShardInput) (*SplitShardOutput, error) { req, out := c.SplitShardRequest(input) err := req.Send() return out, err } // Represents the input for AddTagsToStream. type AddTagsToStreamInput struct { _ struct{} `type:"structure"` // The name of the stream. // // StreamName is a required field StreamName *string `min:"1" type:"string" required:"true"` // The set of key-value pairs to use to create the tags. // // Tags is a required field Tags map[string]*string `min:"1" type:"map" required:"true"` } // String returns the string representation func (s AddTagsToStreamInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToStreamInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsToStreamInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsToStreamInput"} if s.StreamName == nil { invalidParams.Add(request.NewErrParamRequired("StreamName")) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil && len(s.Tags) < 1 { invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddTagsToStreamOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddTagsToStreamOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToStreamOutput) GoString() string { return s.String() } // Represents the input for CreateStream. type CreateStreamInput struct { _ struct{} `type:"structure"` // The number of shards that the stream will use. The throughput of the stream // is a function of the number of shards; more shards are required for greater // provisioned throughput. // // DefaultShardLimit; // // ShardCount is a required field ShardCount *int64 `min:"1" type:"integer" required:"true"` // A name to identify the stream. The stream name is scoped to the AWS account // used by the application that creates the stream. It is also scoped by region. // That is, two streams in two different AWS accounts can have the same name, // and two streams in the same AWS account but in two different regions can // have the same name. // // StreamName is a required field StreamName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateStreamInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateStreamInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateStreamInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateStreamInput"} if s.ShardCount == nil { invalidParams.Add(request.NewErrParamRequired("ShardCount")) } if s.ShardCount != nil && *s.ShardCount < 1 { invalidParams.Add(request.NewErrParamMinValue("ShardCount", 1)) } if s.StreamName == nil { invalidParams.Add(request.NewErrParamRequired("StreamName")) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateStreamOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateStreamOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateStreamOutput) GoString() string { return s.String() } // Represents the input for DecreaseStreamRetentionPeriod. type DecreaseStreamRetentionPeriodInput struct { _ struct{} `type:"structure"` // The new retention period of the stream, in hours. Must be less than the current // retention period. // // RetentionPeriodHours is a required field RetentionPeriodHours *int64 `min:"24" type:"integer" required:"true"` // The name of the stream to modify. // // StreamName is a required field StreamName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DecreaseStreamRetentionPeriodInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DecreaseStreamRetentionPeriodInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DecreaseStreamRetentionPeriodInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DecreaseStreamRetentionPeriodInput"} if s.RetentionPeriodHours == nil { invalidParams.Add(request.NewErrParamRequired("RetentionPeriodHours")) } if s.RetentionPeriodHours != nil && *s.RetentionPeriodHours < 24 { invalidParams.Add(request.NewErrParamMinValue("RetentionPeriodHours", 24)) } if s.StreamName == nil { invalidParams.Add(request.NewErrParamRequired("StreamName")) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DecreaseStreamRetentionPeriodOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DecreaseStreamRetentionPeriodOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DecreaseStreamRetentionPeriodOutput) GoString() string { return s.String() } // Represents the input for DeleteStream. type DeleteStreamInput struct { _ struct{} `type:"structure"` // The name of the stream to delete. // // StreamName is a required field StreamName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteStreamInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteStreamInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteStreamInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteStreamInput"} if s.StreamName == nil { invalidParams.Add(request.NewErrParamRequired("StreamName")) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteStreamOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteStreamOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteStreamOutput) GoString() string { return s.String() } // Represents the input for DescribeStream. type DescribeStreamInput struct { _ struct{} `type:"structure"` // The shard ID of the shard to start with. ExclusiveStartShardId *string `min:"1" type:"string"` // The maximum number of shards to return. Limit *int64 `min:"1" type:"integer"` // The name of the stream to describe. // // StreamName is a required field StreamName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeStreamInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStreamInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeStreamInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeStreamInput"} if s.ExclusiveStartShardId != nil && len(*s.ExclusiveStartShardId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ExclusiveStartShardId", 1)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.StreamName == nil { invalidParams.Add(request.NewErrParamRequired("StreamName")) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output for DescribeStream. type DescribeStreamOutput struct { _ struct{} `type:"structure"` // The current status of the stream, the stream ARN, an array of shard objects // that comprise the stream, and states whether there are more shards available. // // StreamDescription is a required field StreamDescription *StreamDescription `type:"structure" required:"true"` } // String returns the string representation func (s DescribeStreamOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStreamOutput) GoString() string { return s.String() } // Represents the input for DisableEnhancedMonitoring. type DisableEnhancedMonitoringInput struct { _ struct{} `type:"structure"` // List of shard-level metrics to disable. // // The following are the valid shard-level metrics. The value "ALL" disables // every metric. // // * IncomingBytes // * IncomingRecords // * OutgoingBytes // * OutgoingRecords // * WriteProvisionedThroughputExceeded // * ReadProvisionedThroughputExceeded // * IteratorAgeMilliseconds // * ALL // For more information, see Monitoring the Amazon Kinesis Streams Service with // Amazon CloudWatch (http://docs.aws.amazon.com/kinesis/latest/dev/monitoring-with-cloudwatch.html) // in the Amazon Kinesis Streams Developer Guide. // // ShardLevelMetrics is a required field ShardLevelMetrics []*string `min:"1" type:"list" required:"true"` // The name of the Amazon Kinesis stream for which to disable enhanced monitoring. // // StreamName is a required field StreamName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DisableEnhancedMonitoringInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableEnhancedMonitoringInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisableEnhancedMonitoringInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisableEnhancedMonitoringInput"} if s.ShardLevelMetrics == nil { invalidParams.Add(request.NewErrParamRequired("ShardLevelMetrics")) } if s.ShardLevelMetrics != nil && len(s.ShardLevelMetrics) < 1 { invalidParams.Add(request.NewErrParamMinLen("ShardLevelMetrics", 1)) } if s.StreamName == nil { invalidParams.Add(request.NewErrParamRequired("StreamName")) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the input for EnableEnhancedMonitoring. type EnableEnhancedMonitoringInput struct { _ struct{} `type:"structure"` // List of shard-level metrics to enable. // // The following are the valid shard-level metrics. The value "ALL" enables // every metric. // // * IncomingBytes // * IncomingRecords // * OutgoingBytes // * OutgoingRecords // * WriteProvisionedThroughputExceeded // * ReadProvisionedThroughputExceeded // * IteratorAgeMilliseconds // * ALL // For more information, see Monitoring the Amazon Kinesis Streams Service with // Amazon CloudWatch (http://docs.aws.amazon.com/kinesis/latest/dev/monitoring-with-cloudwatch.html) // in the Amazon Kinesis Streams Developer Guide. // // ShardLevelMetrics is a required field ShardLevelMetrics []*string `min:"1" type:"list" required:"true"` // The name of the stream for which to enable enhanced monitoring. // // StreamName is a required field StreamName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s EnableEnhancedMonitoringInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableEnhancedMonitoringInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableEnhancedMonitoringInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableEnhancedMonitoringInput"} if s.ShardLevelMetrics == nil { invalidParams.Add(request.NewErrParamRequired("ShardLevelMetrics")) } if s.ShardLevelMetrics != nil && len(s.ShardLevelMetrics) < 1 { invalidParams.Add(request.NewErrParamMinLen("ShardLevelMetrics", 1)) } if s.StreamName == nil { invalidParams.Add(request.NewErrParamRequired("StreamName")) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents enhanced metrics types. type EnhancedMetrics struct { _ struct{} `type:"structure"` // List of shard-level metrics. // // The following are the valid shard-level metrics. The value "ALL" enhances // every metric. // // * IncomingBytes // * IncomingRecords // * OutgoingBytes // * OutgoingRecords // * WriteProvisionedThroughputExceeded // * ReadProvisionedThroughputExceeded // * IteratorAgeMilliseconds // * ALL // For more information, see Monitoring the Amazon Kinesis Streams Service with // Amazon CloudWatch (http://docs.aws.amazon.com/kinesis/latest/dev/monitoring-with-cloudwatch.html) // in the Amazon Kinesis Streams Developer Guide. ShardLevelMetrics []*string `min:"1" type:"list"` } // String returns the string representation func (s EnhancedMetrics) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnhancedMetrics) GoString() string { return s.String() } // Represents the output for EnableEnhancedMonitoring and DisableEnhancedMonitoring. type EnhancedMonitoringOutput struct { _ struct{} `type:"structure"` // Represents the current state of the metrics that are in the enhanced state // before the operation. CurrentShardLevelMetrics []*string `min:"1" type:"list"` // Represents the list of all the metrics that would be in the enhanced state // after the operation. DesiredShardLevelMetrics []*string `min:"1" type:"list"` // The name of the Amazon Kinesis stream. StreamName *string `min:"1" type:"string"` } // String returns the string representation func (s EnhancedMonitoringOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnhancedMonitoringOutput) GoString() string { return s.String() } // Represents the input for GetRecords. type GetRecordsInput struct { _ struct{} `type:"structure"` // The maximum number of records to return. Specify a value of up to 10,000. // If you specify a value that is greater than 10,000, GetRecords throws InvalidArgumentException. Limit *int64 `min:"1" type:"integer"` // The position in the shard from which you want to start sequentially reading // data records. A shard iterator specifies this position using the sequence // number of a data record in the shard. // // ShardIterator is a required field ShardIterator *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetRecordsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRecordsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetRecordsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetRecordsInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.ShardIterator == nil { invalidParams.Add(request.NewErrParamRequired("ShardIterator")) } if s.ShardIterator != nil && len(*s.ShardIterator) < 1 { invalidParams.Add(request.NewErrParamMinLen("ShardIterator", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output for GetRecords. type GetRecordsOutput struct { _ struct{} `type:"structure"` // The number of milliseconds the GetRecords response is from the tip of the // stream, indicating how far behind current time the consumer is. A value of // zero indicates record processing is caught up, and there are no new records // to process at this moment. MillisBehindLatest *int64 `type:"long"` // The next position in the shard from which to start sequentially reading data // records. If set to null, the shard has been closed and the requested iterator // will not return any more data. NextShardIterator *string `min:"1" type:"string"` // The data records retrieved from the shard. // // Records is a required field Records []*Record `type:"list" required:"true"` } // String returns the string representation func (s GetRecordsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRecordsOutput) GoString() string { return s.String() } // Represents the input for GetShardIterator. type GetShardIteratorInput struct { _ struct{} `type:"structure"` // The shard ID of the Amazon Kinesis shard to get the iterator for. // // ShardId is a required field ShardId *string `min:"1" type:"string" required:"true"` // Determines how the shard iterator is used to start reading data records from // the shard. // // The following are the valid Amazon Kinesis shard iterator types: // // * AT_SEQUENCE_NUMBER - Start reading from the position denoted by a specific // sequence number, provided in the value StartingSequenceNumber. // * AFTER_SEQUENCE_NUMBER - Start reading right after the position denoted // by a specific sequence number, provided in the value StartingSequenceNumber. // // * AT_TIMESTAMP - Start reading from the position denoted by a specific // timestamp, provided in the value Timestamp. // * TRIM_HORIZON - Start reading at the last untrimmed record in the shard // in the system, which is the oldest data record in the shard. // * LATEST - Start reading just after the most recent record in the shard, // so that you always read the most recent data in the shard. // // ShardIteratorType is a required field ShardIteratorType *string `type:"string" required:"true" enum:"ShardIteratorType"` // The sequence number of the data record in the shard from which to start reading. // Used with shard iterator type AT_SEQUENCE_NUMBER and AFTER_SEQUENCE_NUMBER. StartingSequenceNumber *string `type:"string"` // The name of the Amazon Kinesis stream. // // StreamName is a required field StreamName *string `min:"1" type:"string" required:"true"` // The timestamp of the data record from which to start reading. Used with shard // iterator type AT_TIMESTAMP. A timestamp is the Unix epoch date with precision // in milliseconds. For example, 2016-04-04T19:58:46.480-00:00 or 1459799926.480. // If a record with this exact timestamp does not exist, the iterator returned // is for the next (later) record. If the timestamp is older than the current // trim horizon, the iterator returned is for the oldest untrimmed data record // (TRIM_HORIZON). Timestamp *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s GetShardIteratorInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetShardIteratorInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetShardIteratorInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetShardIteratorInput"} if s.ShardId == nil { invalidParams.Add(request.NewErrParamRequired("ShardId")) } if s.ShardId != nil && len(*s.ShardId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ShardId", 1)) } if s.ShardIteratorType == nil { invalidParams.Add(request.NewErrParamRequired("ShardIteratorType")) } if s.StreamName == nil { invalidParams.Add(request.NewErrParamRequired("StreamName")) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output for GetShardIterator. type GetShardIteratorOutput struct { _ struct{} `type:"structure"` // The position in the shard from which to start reading data records sequentially. // A shard iterator specifies this position using the sequence number of a data // record in a shard. ShardIterator *string `min:"1" type:"string"` } // String returns the string representation func (s GetShardIteratorOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetShardIteratorOutput) GoString() string { return s.String() } // The range of possible hash key values for the shard, which is a set of ordered // contiguous positive integers. type HashKeyRange struct { _ struct{} `type:"structure"` // The ending hash key of the hash key range. // // EndingHashKey is a required field EndingHashKey *string `type:"string" required:"true"` // The starting hash key of the hash key range. // // StartingHashKey is a required field StartingHashKey *string `type:"string" required:"true"` } // String returns the string representation func (s HashKeyRange) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HashKeyRange) GoString() string { return s.String() } // Represents the input for IncreaseStreamRetentionPeriod. type IncreaseStreamRetentionPeriodInput struct { _ struct{} `type:"structure"` // The new retention period of the stream, in hours. Must be more than the current // retention period. // // RetentionPeriodHours is a required field RetentionPeriodHours *int64 `min:"24" type:"integer" required:"true"` // The name of the stream to modify. // // StreamName is a required field StreamName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s IncreaseStreamRetentionPeriodInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IncreaseStreamRetentionPeriodInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *IncreaseStreamRetentionPeriodInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "IncreaseStreamRetentionPeriodInput"} if s.RetentionPeriodHours == nil { invalidParams.Add(request.NewErrParamRequired("RetentionPeriodHours")) } if s.RetentionPeriodHours != nil && *s.RetentionPeriodHours < 24 { invalidParams.Add(request.NewErrParamMinValue("RetentionPeriodHours", 24)) } if s.StreamName == nil { invalidParams.Add(request.NewErrParamRequired("StreamName")) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type IncreaseStreamRetentionPeriodOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s IncreaseStreamRetentionPeriodOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IncreaseStreamRetentionPeriodOutput) GoString() string { return s.String() } // Represents the input for ListStreams. type ListStreamsInput struct { _ struct{} `type:"structure"` // The name of the stream to start the list with. ExclusiveStartStreamName *string `min:"1" type:"string"` // The maximum number of streams to list. Limit *int64 `min:"1" type:"integer"` } // String returns the string representation func (s ListStreamsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListStreamsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListStreamsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListStreamsInput"} if s.ExclusiveStartStreamName != nil && len(*s.ExclusiveStartStreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ExclusiveStartStreamName", 1)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output for ListStreams. type ListStreamsOutput struct { _ struct{} `type:"structure"` // If set to true, there are more streams available to list. // // HasMoreStreams is a required field HasMoreStreams *bool `type:"boolean" required:"true"` // The names of the streams that are associated with the AWS account making // the ListStreams request. // // StreamNames is a required field StreamNames []*string `type:"list" required:"true"` } // String returns the string representation func (s ListStreamsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListStreamsOutput) GoString() string { return s.String() } // Represents the input for ListTagsForStream. type ListTagsForStreamInput struct { _ struct{} `type:"structure"` // The key to use as the starting point for the list of tags. If this parameter // is set, ListTagsForStream gets all tags that occur after ExclusiveStartTagKey. ExclusiveStartTagKey *string `min:"1" type:"string"` // The number of tags to return. If this number is less than the total number // of tags associated with the stream, HasMoreTags is set to true. To list additional // tags, set ExclusiveStartTagKey to the last key in the response. Limit *int64 `min:"1" type:"integer"` // The name of the stream. // // StreamName is a required field StreamName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListTagsForStreamInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForStreamInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsForStreamInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsForStreamInput"} if s.ExclusiveStartTagKey != nil && len(*s.ExclusiveStartTagKey) < 1 { invalidParams.Add(request.NewErrParamMinLen("ExclusiveStartTagKey", 1)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.StreamName == nil { invalidParams.Add(request.NewErrParamRequired("StreamName")) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output for ListTagsForStream. type ListTagsForStreamOutput struct { _ struct{} `type:"structure"` // If set to true, more tags are available. To request additional tags, set // ExclusiveStartTagKey to the key of the last tag returned. // // HasMoreTags is a required field HasMoreTags *bool `type:"boolean" required:"true"` // A list of tags associated with StreamName, starting with the first tag after // ExclusiveStartTagKey and up to the specified Limit. // // Tags is a required field Tags []*Tag `type:"list" required:"true"` } // String returns the string representation func (s ListTagsForStreamOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForStreamOutput) GoString() string { return s.String() } // Represents the input for MergeShards. type MergeShardsInput struct { _ struct{} `type:"structure"` // The shard ID of the adjacent shard for the merge. // // AdjacentShardToMerge is a required field AdjacentShardToMerge *string `min:"1" type:"string" required:"true"` // The shard ID of the shard to combine with the adjacent shard for the merge. // // ShardToMerge is a required field ShardToMerge *string `min:"1" type:"string" required:"true"` // The name of the stream for the merge. // // StreamName is a required field StreamName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s MergeShardsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MergeShardsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MergeShardsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MergeShardsInput"} if s.AdjacentShardToMerge == nil { invalidParams.Add(request.NewErrParamRequired("AdjacentShardToMerge")) } if s.AdjacentShardToMerge != nil && len(*s.AdjacentShardToMerge) < 1 { invalidParams.Add(request.NewErrParamMinLen("AdjacentShardToMerge", 1)) } if s.ShardToMerge == nil { invalidParams.Add(request.NewErrParamRequired("ShardToMerge")) } if s.ShardToMerge != nil && len(*s.ShardToMerge) < 1 { invalidParams.Add(request.NewErrParamMinLen("ShardToMerge", 1)) } if s.StreamName == nil { invalidParams.Add(request.NewErrParamRequired("StreamName")) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type MergeShardsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s MergeShardsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MergeShardsOutput) GoString() string { return s.String() } // Represents the input for PutRecord. type PutRecordInput struct { _ struct{} `type:"structure"` // The data blob to put into the record, which is base64-encoded when the blob // is serialized. When the data blob (the payload before base64-encoding) is // added to the partition key size, the total size must not exceed the maximum // record size (1 MB). // // Data is automatically base64 encoded/decoded by the SDK. // // Data is a required field Data []byte `type:"blob" required:"true"` // The hash value used to explicitly determine the shard the data record is // assigned to by overriding the partition key hash. ExplicitHashKey *string `type:"string"` // Determines which shard in the stream the data record is assigned to. Partition // keys are Unicode strings with a maximum length limit of 256 characters for // each key. Amazon Kinesis uses the partition key as input to a hash function // that maps the partition key and associated data to a specific shard. Specifically, // an MD5 hash function is used to map partition keys to 128-bit integer values // and to map associated data records to shards. As a result of this hashing // mechanism, all data records with the same partition key map to the same shard // within the stream. // // PartitionKey is a required field PartitionKey *string `min:"1" type:"string" required:"true"` // Guarantees strictly increasing sequence numbers, for puts from the same client // and to the same partition key. Usage: set the SequenceNumberForOrdering of // record n to the sequence number of record n-1 (as returned in the result // when putting record n-1). If this parameter is not set, records will be coarsely // ordered based on arrival time. SequenceNumberForOrdering *string `type:"string"` // The name of the stream to put the data record into. // // StreamName is a required field StreamName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s PutRecordInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRecordInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutRecordInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutRecordInput"} if s.Data == nil { invalidParams.Add(request.NewErrParamRequired("Data")) } if s.PartitionKey == nil { invalidParams.Add(request.NewErrParamRequired("PartitionKey")) } if s.PartitionKey != nil && len(*s.PartitionKey) < 1 { invalidParams.Add(request.NewErrParamMinLen("PartitionKey", 1)) } if s.StreamName == nil { invalidParams.Add(request.NewErrParamRequired("StreamName")) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output for PutRecord. type PutRecordOutput struct { _ struct{} `type:"structure"` // The sequence number identifier that was assigned to the put data record. // The sequence number for the record is unique across all records in the stream. // A sequence number is the identifier associated with every record put into // the stream. // // SequenceNumber is a required field SequenceNumber *string `type:"string" required:"true"` // The shard ID of the shard where the data record was placed. // // ShardId is a required field ShardId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s PutRecordOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRecordOutput) GoString() string { return s.String() } // A PutRecords request. type PutRecordsInput struct { _ struct{} `type:"structure"` // The records associated with the request. // // Records is a required field Records []*PutRecordsRequestEntry `min:"1" type:"list" required:"true"` // The stream name associated with the request. // // StreamName is a required field StreamName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s PutRecordsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRecordsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutRecordsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutRecordsInput"} if s.Records == nil { invalidParams.Add(request.NewErrParamRequired("Records")) } if s.Records != nil && len(s.Records) < 1 { invalidParams.Add(request.NewErrParamMinLen("Records", 1)) } if s.StreamName == nil { invalidParams.Add(request.NewErrParamRequired("StreamName")) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) } if s.Records != nil { for i, v := range s.Records { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Records", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // PutRecords results. type PutRecordsOutput struct { _ struct{} `type:"structure"` // The number of unsuccessfully processed records in a PutRecords request. FailedRecordCount *int64 `min:"1" type:"integer"` // An array of successfully and unsuccessfully processed record results, correlated // with the request by natural ordering. A record that is successfully added // to a stream includes SequenceNumber and ShardId in the result. A record that // fails to be added to a stream includes ErrorCode and ErrorMessage in the // result. // // Records is a required field Records []*PutRecordsResultEntry `min:"1" type:"list" required:"true"` } // String returns the string representation func (s PutRecordsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRecordsOutput) GoString() string { return s.String() } // Represents the output for PutRecords. type PutRecordsRequestEntry struct { _ struct{} `type:"structure"` // The data blob to put into the record, which is base64-encoded when the blob // is serialized. When the data blob (the payload before base64-encoding) is // added to the partition key size, the total size must not exceed the maximum // record size (1 MB). // // Data is automatically base64 encoded/decoded by the SDK. // // Data is a required field Data []byte `type:"blob" required:"true"` // The hash value used to determine explicitly the shard that the data record // is assigned to by overriding the partition key hash. ExplicitHashKey *string `type:"string"` // Determines which shard in the stream the data record is assigned to. Partition // keys are Unicode strings with a maximum length limit of 256 characters for // each key. Amazon Kinesis uses the partition key as input to a hash function // that maps the partition key and associated data to a specific shard. Specifically, // an MD5 hash function is used to map partition keys to 128-bit integer values // and to map associated data records to shards. As a result of this hashing // mechanism, all data records with the same partition key map to the same shard // within the stream. // // PartitionKey is a required field PartitionKey *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s PutRecordsRequestEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRecordsRequestEntry) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutRecordsRequestEntry) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutRecordsRequestEntry"} if s.Data == nil { invalidParams.Add(request.NewErrParamRequired("Data")) } if s.PartitionKey == nil { invalidParams.Add(request.NewErrParamRequired("PartitionKey")) } if s.PartitionKey != nil && len(*s.PartitionKey) < 1 { invalidParams.Add(request.NewErrParamMinLen("PartitionKey", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the result of an individual record from a PutRecords request. // A record that is successfully added to a stream includes SequenceNumber and // ShardId in the result. A record that fails to be added to the stream includes // ErrorCode and ErrorMessage in the result. type PutRecordsResultEntry struct { _ struct{} `type:"structure"` // The error code for an individual record result. ErrorCodes can be either // ProvisionedThroughputExceededException or InternalFailure. ErrorCode *string `type:"string"` // The error message for an individual record result. An ErrorCode value of // ProvisionedThroughputExceededException has an error message that includes // the account ID, stream name, and shard ID. An ErrorCode value of InternalFailure // has the error message "Internal Service Failure". ErrorMessage *string `type:"string"` // The sequence number for an individual record result. SequenceNumber *string `type:"string"` // The shard ID for an individual record result. ShardId *string `min:"1" type:"string"` } // String returns the string representation func (s PutRecordsResultEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutRecordsResultEntry) GoString() string { return s.String() } // The unit of data of the Amazon Kinesis stream, which is composed of a sequence // number, a partition key, and a data blob. type Record struct { _ struct{} `type:"structure"` // The approximate time that the record was inserted into the stream. ApproximateArrivalTimestamp *time.Time `type:"timestamp" timestampFormat:"unix"` // The data blob. The data in the blob is both opaque and immutable to the Amazon // Kinesis service, which does not inspect, interpret, or change the data in // the blob in any way. When the data blob (the payload before base64-encoding) // is added to the partition key size, the total size must not exceed the maximum // record size (1 MB). // // Data is automatically base64 encoded/decoded by the SDK. // // Data is a required field Data []byte `type:"blob" required:"true"` // Identifies which shard in the stream the data record is assigned to. // // PartitionKey is a required field PartitionKey *string `min:"1" type:"string" required:"true"` // The unique identifier of the record in the stream. // // SequenceNumber is a required field SequenceNumber *string `type:"string" required:"true"` } // String returns the string representation func (s Record) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Record) GoString() string { return s.String() } // Represents the input for RemoveTagsFromStream. type RemoveTagsFromStreamInput struct { _ struct{} `type:"structure"` // The name of the stream. // // StreamName is a required field StreamName *string `min:"1" type:"string" required:"true"` // A list of tag keys. Each corresponding tag is removed from the stream. // // TagKeys is a required field TagKeys []*string `min:"1" type:"list" required:"true"` } // String returns the string representation func (s RemoveTagsFromStreamInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromStreamInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTagsFromStreamInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTagsFromStreamInput"} if s.StreamName == nil { invalidParams.Add(request.NewErrParamRequired("StreamName")) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if s.TagKeys != nil && len(s.TagKeys) < 1 { invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemoveTagsFromStreamOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveTagsFromStreamOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromStreamOutput) GoString() string { return s.String() } // The range of possible sequence numbers for the shard. type SequenceNumberRange struct { _ struct{} `type:"structure"` // The ending sequence number for the range. Shards that are in the OPEN state // have an ending sequence number of null. EndingSequenceNumber *string `type:"string"` // The starting sequence number for the range. // // StartingSequenceNumber is a required field StartingSequenceNumber *string `type:"string" required:"true"` } // String returns the string representation func (s SequenceNumberRange) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SequenceNumberRange) GoString() string { return s.String() } // A uniquely identified group of data records in an Amazon Kinesis stream. type Shard struct { _ struct{} `type:"structure"` // The shard ID of the shard adjacent to the shard's parent. AdjacentParentShardId *string `min:"1" type:"string"` // The range of possible hash key values for the shard, which is a set of ordered // contiguous positive integers. // // HashKeyRange is a required field HashKeyRange *HashKeyRange `type:"structure" required:"true"` // The shard ID of the shard's parent. ParentShardId *string `min:"1" type:"string"` // The range of possible sequence numbers for the shard. // // SequenceNumberRange is a required field SequenceNumberRange *SequenceNumberRange `type:"structure" required:"true"` // The unique identifier of the shard within the stream. // // ShardId is a required field ShardId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s Shard) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Shard) GoString() string { return s.String() } // Represents the input for SplitShard. type SplitShardInput struct { _ struct{} `type:"structure"` // A hash key value for the starting hash key of one of the child shards created // by the split. The hash key range for a given shard constitutes a set of ordered // contiguous positive integers. The value for NewStartingHashKey must be in // the range of hash keys being mapped into the shard. The NewStartingHashKey // hash key value and all higher hash key values in hash key range are distributed // to one of the child shards. All the lower hash key values in the range are // distributed to the other child shard. // // NewStartingHashKey is a required field NewStartingHashKey *string `type:"string" required:"true"` // The shard ID of the shard to split. // // ShardToSplit is a required field ShardToSplit *string `min:"1" type:"string" required:"true"` // The name of the stream for the shard split. // // StreamName is a required field StreamName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s SplitShardInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SplitShardInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SplitShardInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SplitShardInput"} if s.NewStartingHashKey == nil { invalidParams.Add(request.NewErrParamRequired("NewStartingHashKey")) } if s.ShardToSplit == nil { invalidParams.Add(request.NewErrParamRequired("ShardToSplit")) } if s.ShardToSplit != nil && len(*s.ShardToSplit) < 1 { invalidParams.Add(request.NewErrParamMinLen("ShardToSplit", 1)) } if s.StreamName == nil { invalidParams.Add(request.NewErrParamRequired("StreamName")) } if s.StreamName != nil && len(*s.StreamName) < 1 { invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SplitShardOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SplitShardOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SplitShardOutput) GoString() string { return s.String() } // Represents the output for DescribeStream. type StreamDescription struct { _ struct{} `type:"structure"` // Represents the current enhanced monitoring settings of the stream. // // EnhancedMonitoring is a required field EnhancedMonitoring []*EnhancedMetrics `type:"list" required:"true"` // If set to true, more shards in the stream are available to describe. // // HasMoreShards is a required field HasMoreShards *bool `type:"boolean" required:"true"` // The current retention period, in hours. // // RetentionPeriodHours is a required field RetentionPeriodHours *int64 `min:"24" type:"integer" required:"true"` // The shards that comprise the stream. // // Shards is a required field Shards []*Shard `type:"list" required:"true"` // The Amazon Resource Name (ARN) for the stream being described. // // StreamARN is a required field StreamARN *string `type:"string" required:"true"` // The name of the stream being described. // // StreamName is a required field StreamName *string `min:"1" type:"string" required:"true"` // The current status of the stream being described. The stream status is one // of the following states: // // * CREATING - The stream is being created. Amazon Kinesis immediately returns // and sets StreamStatus to CREATING. // * DELETING - The stream is being deleted. The specified stream is in the // DELETING state until Amazon Kinesis completes the deletion. // * ACTIVE - The stream exists and is ready for read and write operations // or deletion. You should perform read and write operations only on an ACTIVE // stream. // * UPDATING - Shards in the stream are being merged or split. Read and // write operations continue to work while the stream is in the UPDATING // state. // // StreamStatus is a required field StreamStatus *string `type:"string" required:"true" enum:"StreamStatus"` } // String returns the string representation func (s StreamDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StreamDescription) GoString() string { return s.String() } // Metadata assigned to the stream, consisting of a key-value pair. type Tag struct { _ struct{} `type:"structure"` // A unique identifier for the tag. Maximum length: 128 characters. Valid characters: // Unicode letters, digits, white space, _ . / = + - % @ // // Key is a required field Key *string `min:"1" type:"string" required:"true"` // An optional string, typically used to describe or define the tag. Maximum // length: 256 characters. Valid characters: Unicode letters, digits, white // space, _ . / = + - % @ Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } const ( // MetricsNameIncomingBytes is a MetricsName enum value MetricsNameIncomingBytes = "IncomingBytes" // MetricsNameIncomingRecords is a MetricsName enum value MetricsNameIncomingRecords = "IncomingRecords" // MetricsNameOutgoingBytes is a MetricsName enum value MetricsNameOutgoingBytes = "OutgoingBytes" // MetricsNameOutgoingRecords is a MetricsName enum value MetricsNameOutgoingRecords = "OutgoingRecords" // MetricsNameWriteProvisionedThroughputExceeded is a MetricsName enum value MetricsNameWriteProvisionedThroughputExceeded = "WriteProvisionedThroughputExceeded" // MetricsNameReadProvisionedThroughputExceeded is a MetricsName enum value MetricsNameReadProvisionedThroughputExceeded = "ReadProvisionedThroughputExceeded" // MetricsNameIteratorAgeMilliseconds is a MetricsName enum value MetricsNameIteratorAgeMilliseconds = "IteratorAgeMilliseconds" // MetricsNameAll is a MetricsName enum value MetricsNameAll = "ALL" ) const ( // ShardIteratorTypeAtSequenceNumber is a ShardIteratorType enum value ShardIteratorTypeAtSequenceNumber = "AT_SEQUENCE_NUMBER" // ShardIteratorTypeAfterSequenceNumber is a ShardIteratorType enum value ShardIteratorTypeAfterSequenceNumber = "AFTER_SEQUENCE_NUMBER" // ShardIteratorTypeTrimHorizon is a ShardIteratorType enum value ShardIteratorTypeTrimHorizon = "TRIM_HORIZON" // ShardIteratorTypeLatest is a ShardIteratorType enum value ShardIteratorTypeLatest = "LATEST" // ShardIteratorTypeAtTimestamp is a ShardIteratorType enum value ShardIteratorTypeAtTimestamp = "AT_TIMESTAMP" ) const ( // StreamStatusCreating is a StreamStatus enum value StreamStatusCreating = "CREATING" // StreamStatusDeleting is a StreamStatus enum value StreamStatusDeleting = "DELETING" // StreamStatusActive is a StreamStatus enum value StreamStatusActive = "ACTIVE" // StreamStatusUpdating is a StreamStatus enum value StreamStatusUpdating = "UPDATING" ) aws-sdk-go-1.4.22/service/kinesis/examples_test.go000066400000000000000000000260101300374646400220730ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package kinesis_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/kinesis" ) var _ time.Duration var _ bytes.Buffer func ExampleKinesis_AddTagsToStream() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesis.New(sess) params := &kinesis.AddTagsToStreamInput{ StreamName: aws.String("StreamName"), // Required Tags: map[string]*string{ // Required "Key": aws.String("TagValue"), // Required // More values... }, } resp, err := svc.AddTagsToStream(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesis_CreateStream() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesis.New(sess) params := &kinesis.CreateStreamInput{ ShardCount: aws.Int64(1), // Required StreamName: aws.String("StreamName"), // Required } resp, err := svc.CreateStream(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesis_DecreaseStreamRetentionPeriod() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesis.New(sess) params := &kinesis.DecreaseStreamRetentionPeriodInput{ RetentionPeriodHours: aws.Int64(1), // Required StreamName: aws.String("StreamName"), // Required } resp, err := svc.DecreaseStreamRetentionPeriod(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesis_DeleteStream() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesis.New(sess) params := &kinesis.DeleteStreamInput{ StreamName: aws.String("StreamName"), // Required } resp, err := svc.DeleteStream(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesis_DescribeStream() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesis.New(sess) params := &kinesis.DescribeStreamInput{ StreamName: aws.String("StreamName"), // Required ExclusiveStartShardId: aws.String("ShardId"), Limit: aws.Int64(1), } resp, err := svc.DescribeStream(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesis_DisableEnhancedMonitoring() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesis.New(sess) params := &kinesis.DisableEnhancedMonitoringInput{ ShardLevelMetrics: []*string{ // Required aws.String("MetricsName"), // Required // More values... }, StreamName: aws.String("StreamName"), // Required } resp, err := svc.DisableEnhancedMonitoring(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesis_EnableEnhancedMonitoring() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesis.New(sess) params := &kinesis.EnableEnhancedMonitoringInput{ ShardLevelMetrics: []*string{ // Required aws.String("MetricsName"), // Required // More values... }, StreamName: aws.String("StreamName"), // Required } resp, err := svc.EnableEnhancedMonitoring(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesis_GetRecords() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesis.New(sess) params := &kinesis.GetRecordsInput{ ShardIterator: aws.String("ShardIterator"), // Required Limit: aws.Int64(1), } resp, err := svc.GetRecords(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesis_GetShardIterator() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesis.New(sess) params := &kinesis.GetShardIteratorInput{ ShardId: aws.String("ShardId"), // Required ShardIteratorType: aws.String("ShardIteratorType"), // Required StreamName: aws.String("StreamName"), // Required StartingSequenceNumber: aws.String("SequenceNumber"), Timestamp: aws.Time(time.Now()), } resp, err := svc.GetShardIterator(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesis_IncreaseStreamRetentionPeriod() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesis.New(sess) params := &kinesis.IncreaseStreamRetentionPeriodInput{ RetentionPeriodHours: aws.Int64(1), // Required StreamName: aws.String("StreamName"), // Required } resp, err := svc.IncreaseStreamRetentionPeriod(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesis_ListStreams() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesis.New(sess) params := &kinesis.ListStreamsInput{ ExclusiveStartStreamName: aws.String("StreamName"), Limit: aws.Int64(1), } resp, err := svc.ListStreams(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesis_ListTagsForStream() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesis.New(sess) params := &kinesis.ListTagsForStreamInput{ StreamName: aws.String("StreamName"), // Required ExclusiveStartTagKey: aws.String("TagKey"), Limit: aws.Int64(1), } resp, err := svc.ListTagsForStream(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesis_MergeShards() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesis.New(sess) params := &kinesis.MergeShardsInput{ AdjacentShardToMerge: aws.String("ShardId"), // Required ShardToMerge: aws.String("ShardId"), // Required StreamName: aws.String("StreamName"), // Required } resp, err := svc.MergeShards(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesis_PutRecord() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesis.New(sess) params := &kinesis.PutRecordInput{ Data: []byte("PAYLOAD"), // Required PartitionKey: aws.String("PartitionKey"), // Required StreamName: aws.String("StreamName"), // Required ExplicitHashKey: aws.String("HashKey"), SequenceNumberForOrdering: aws.String("SequenceNumber"), } resp, err := svc.PutRecord(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesis_PutRecords() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesis.New(sess) params := &kinesis.PutRecordsInput{ Records: []*kinesis.PutRecordsRequestEntry{ // Required { // Required Data: []byte("PAYLOAD"), // Required PartitionKey: aws.String("PartitionKey"), // Required ExplicitHashKey: aws.String("HashKey"), }, // More values... }, StreamName: aws.String("StreamName"), // Required } resp, err := svc.PutRecords(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesis_RemoveTagsFromStream() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesis.New(sess) params := &kinesis.RemoveTagsFromStreamInput{ StreamName: aws.String("StreamName"), // Required TagKeys: []*string{ // Required aws.String("TagKey"), // Required // More values... }, } resp, err := svc.RemoveTagsFromStream(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesis_SplitShard() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesis.New(sess) params := &kinesis.SplitShardInput{ NewStartingHashKey: aws.String("HashKey"), // Required ShardToSplit: aws.String("ShardId"), // Required StreamName: aws.String("StreamName"), // Required } resp, err := svc.SplitShard(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/kinesis/kinesisiface/000077500000000000000000000000001300374646400213255ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/kinesis/kinesisiface/interface.go000066400000000000000000000133271300374646400236220ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package kinesisiface provides an interface to enable mocking the Amazon Kinesis service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package kinesisiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/kinesis" ) // KinesisAPI provides an interface to enable mocking the // kinesis.Kinesis service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Kinesis. // func myFunc(svc kinesisiface.KinesisAPI) bool { // // Make svc.AddTagsToStream request // } // // func main() { // sess := session.New() // svc := kinesis.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockKinesisClient struct { // kinesisiface.KinesisAPI // } // func (m *mockKinesisClient) AddTagsToStream(input *kinesis.AddTagsToStreamInput) (*kinesis.AddTagsToStreamOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockKinesisClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type KinesisAPI interface { AddTagsToStreamRequest(*kinesis.AddTagsToStreamInput) (*request.Request, *kinesis.AddTagsToStreamOutput) AddTagsToStream(*kinesis.AddTagsToStreamInput) (*kinesis.AddTagsToStreamOutput, error) CreateStreamRequest(*kinesis.CreateStreamInput) (*request.Request, *kinesis.CreateStreamOutput) CreateStream(*kinesis.CreateStreamInput) (*kinesis.CreateStreamOutput, error) DecreaseStreamRetentionPeriodRequest(*kinesis.DecreaseStreamRetentionPeriodInput) (*request.Request, *kinesis.DecreaseStreamRetentionPeriodOutput) DecreaseStreamRetentionPeriod(*kinesis.DecreaseStreamRetentionPeriodInput) (*kinesis.DecreaseStreamRetentionPeriodOutput, error) DeleteStreamRequest(*kinesis.DeleteStreamInput) (*request.Request, *kinesis.DeleteStreamOutput) DeleteStream(*kinesis.DeleteStreamInput) (*kinesis.DeleteStreamOutput, error) DescribeStreamRequest(*kinesis.DescribeStreamInput) (*request.Request, *kinesis.DescribeStreamOutput) DescribeStream(*kinesis.DescribeStreamInput) (*kinesis.DescribeStreamOutput, error) DescribeStreamPages(*kinesis.DescribeStreamInput, func(*kinesis.DescribeStreamOutput, bool) bool) error DisableEnhancedMonitoringRequest(*kinesis.DisableEnhancedMonitoringInput) (*request.Request, *kinesis.EnhancedMonitoringOutput) DisableEnhancedMonitoring(*kinesis.DisableEnhancedMonitoringInput) (*kinesis.EnhancedMonitoringOutput, error) EnableEnhancedMonitoringRequest(*kinesis.EnableEnhancedMonitoringInput) (*request.Request, *kinesis.EnhancedMonitoringOutput) EnableEnhancedMonitoring(*kinesis.EnableEnhancedMonitoringInput) (*kinesis.EnhancedMonitoringOutput, error) GetRecordsRequest(*kinesis.GetRecordsInput) (*request.Request, *kinesis.GetRecordsOutput) GetRecords(*kinesis.GetRecordsInput) (*kinesis.GetRecordsOutput, error) GetShardIteratorRequest(*kinesis.GetShardIteratorInput) (*request.Request, *kinesis.GetShardIteratorOutput) GetShardIterator(*kinesis.GetShardIteratorInput) (*kinesis.GetShardIteratorOutput, error) IncreaseStreamRetentionPeriodRequest(*kinesis.IncreaseStreamRetentionPeriodInput) (*request.Request, *kinesis.IncreaseStreamRetentionPeriodOutput) IncreaseStreamRetentionPeriod(*kinesis.IncreaseStreamRetentionPeriodInput) (*kinesis.IncreaseStreamRetentionPeriodOutput, error) ListStreamsRequest(*kinesis.ListStreamsInput) (*request.Request, *kinesis.ListStreamsOutput) ListStreams(*kinesis.ListStreamsInput) (*kinesis.ListStreamsOutput, error) ListStreamsPages(*kinesis.ListStreamsInput, func(*kinesis.ListStreamsOutput, bool) bool) error ListTagsForStreamRequest(*kinesis.ListTagsForStreamInput) (*request.Request, *kinesis.ListTagsForStreamOutput) ListTagsForStream(*kinesis.ListTagsForStreamInput) (*kinesis.ListTagsForStreamOutput, error) MergeShardsRequest(*kinesis.MergeShardsInput) (*request.Request, *kinesis.MergeShardsOutput) MergeShards(*kinesis.MergeShardsInput) (*kinesis.MergeShardsOutput, error) PutRecordRequest(*kinesis.PutRecordInput) (*request.Request, *kinesis.PutRecordOutput) PutRecord(*kinesis.PutRecordInput) (*kinesis.PutRecordOutput, error) PutRecordsRequest(*kinesis.PutRecordsInput) (*request.Request, *kinesis.PutRecordsOutput) PutRecords(*kinesis.PutRecordsInput) (*kinesis.PutRecordsOutput, error) RemoveTagsFromStreamRequest(*kinesis.RemoveTagsFromStreamInput) (*request.Request, *kinesis.RemoveTagsFromStreamOutput) RemoveTagsFromStream(*kinesis.RemoveTagsFromStreamInput) (*kinesis.RemoveTagsFromStreamOutput, error) SplitShardRequest(*kinesis.SplitShardInput) (*request.Request, *kinesis.SplitShardOutput) SplitShard(*kinesis.SplitShardInput) (*kinesis.SplitShardOutput, error) WaitUntilStreamExists(*kinesis.DescribeStreamInput) error } var _ KinesisAPI = (*kinesis.Kinesis)(nil) aws-sdk-go-1.4.22/service/kinesis/service.go000066400000000000000000000054241300374646400206640ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package kinesis import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Amazon Kinesis Streams is a managed service that scales elastically for real // time processing of streaming big data. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type Kinesis struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "kinesis" // New creates a new instance of the Kinesis client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a Kinesis client from just a session. // svc := kinesis.New(mySession) // // // Create a Kinesis client with additional configuration // svc := kinesis.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *Kinesis { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *Kinesis { svc := &Kinesis{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2013-12-02", JSONVersion: "1.1", TargetPrefix: "Kinesis_20131202", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a Kinesis operation and runs any // custom request initialization. func (c *Kinesis) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/kinesis/waiters.go000066400000000000000000000014271300374646400207010ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package kinesis import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilStreamExists uses the Kinesis API operation // DescribeStream to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *Kinesis) WaitUntilStreamExists(input *DescribeStreamInput) error { waiterCfg := waiter.Config{ Operation: "DescribeStream", Delay: 10, MaxAttempts: 18, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "path", Argument: "StreamDescription.StreamStatus", Expected: "ACTIVE", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/kinesisanalytics/000077500000000000000000000000001300374646400206005ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/kinesisanalytics/api.go000066400000000000000000004134701300374646400217110ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package kinesisanalytics provides a client for Amazon Kinesis Analytics. package kinesisanalytics import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opAddApplicationInput = "AddApplicationInput" // AddApplicationInputRequest generates a "aws/request.Request" representing the // client's request for the AddApplicationInput operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddApplicationInput for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddApplicationInput method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddApplicationInputRequest method. // req, resp := client.AddApplicationInputRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KinesisAnalytics) AddApplicationInputRequest(input *AddApplicationInputInput) (req *request.Request, output *AddApplicationInputOutput) { op := &request.Operation{ Name: opAddApplicationInput, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddApplicationInputInput{} } req = c.newRequest(op, input, output) output = &AddApplicationInputOutput{} req.Data = output return } // AddApplicationInput API operation for Amazon Kinesis Analytics. // // Adds a streaming source to your Amazon Kinesis application. For conceptual // information, see Configuring Application Input (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-input.html). // // You can add a streaming source either when you create an application or you // can use this operation to add a streaming source after you create an application. // For more information, see CreateApplication. // // Any configuration update, including adding a streaming source using this // operation, results in a new version of the application. You can use the DescribeApplication // operation to find the current application version. // // This operation requires permissions to perform the kinesisanalytics:AddApplicationInput // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Analytics's // API operation AddApplicationInput for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Specified application can't be found. // // * ResourceInUseException // Application is not available for this operation. // // * InvalidArgumentException // Specified input parameter value is invalid. // // * ConcurrentModificationException // Exception thrown as a result of concurrent modification to an application. // For example, two individuals attempting to edit the same application at the // same time. // func (c *KinesisAnalytics) AddApplicationInput(input *AddApplicationInputInput) (*AddApplicationInputOutput, error) { req, out := c.AddApplicationInputRequest(input) err := req.Send() return out, err } const opAddApplicationOutput = "AddApplicationOutput" // AddApplicationOutputRequest generates a "aws/request.Request" representing the // client's request for the AddApplicationOutput operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddApplicationOutput for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddApplicationOutput method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddApplicationOutputRequest method. // req, resp := client.AddApplicationOutputRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KinesisAnalytics) AddApplicationOutputRequest(input *AddApplicationOutputInput) (req *request.Request, output *AddApplicationOutputOutput) { op := &request.Operation{ Name: opAddApplicationOutput, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddApplicationOutputInput{} } req = c.newRequest(op, input, output) output = &AddApplicationOutputOutput{} req.Data = output return } // AddApplicationOutput API operation for Amazon Kinesis Analytics. // // Adds an external destination to your Amazon Kinesis Analytics application. // // If you want Amazon Kinesis Analytics to deliver data from an in-application // stream within your application to an external destination (such as an Amazon // Kinesis stream or a Firehose delivery stream), you add the relevant configuration // to your application using this operation. You can configure one or more outputs // for your application. Each output configuration maps an in-application stream // and an external destination. // // You can use one of the output configurations to deliver data from your in-application // error stream to an external destination so that you can analyze the errors. // For conceptual information, see Understanding Application Output (Destination) // (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-output.html). // // Note that any configuration update, including adding a streaming source using // this operation, results in a new version of the application. You can use // the DescribeApplication operation to find the current application version. // // For the limits on the number of application inputs and outputs you can configure, // see Limits (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/limits.html). // // This operation requires permissions to perform the kinesisanalytics:AddApplicationOutput // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Analytics's // API operation AddApplicationOutput for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Specified application can't be found. // // * ResourceInUseException // Application is not available for this operation. // // * InvalidArgumentException // Specified input parameter value is invalid. // // * ConcurrentModificationException // Exception thrown as a result of concurrent modification to an application. // For example, two individuals attempting to edit the same application at the // same time. // func (c *KinesisAnalytics) AddApplicationOutput(input *AddApplicationOutputInput) (*AddApplicationOutputOutput, error) { req, out := c.AddApplicationOutputRequest(input) err := req.Send() return out, err } const opAddApplicationReferenceDataSource = "AddApplicationReferenceDataSource" // AddApplicationReferenceDataSourceRequest generates a "aws/request.Request" representing the // client's request for the AddApplicationReferenceDataSource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddApplicationReferenceDataSource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddApplicationReferenceDataSource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddApplicationReferenceDataSourceRequest method. // req, resp := client.AddApplicationReferenceDataSourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KinesisAnalytics) AddApplicationReferenceDataSourceRequest(input *AddApplicationReferenceDataSourceInput) (req *request.Request, output *AddApplicationReferenceDataSourceOutput) { op := &request.Operation{ Name: opAddApplicationReferenceDataSource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddApplicationReferenceDataSourceInput{} } req = c.newRequest(op, input, output) output = &AddApplicationReferenceDataSourceOutput{} req.Data = output return } // AddApplicationReferenceDataSource API operation for Amazon Kinesis Analytics. // // Adds a reference data source to an existing application. // // Amazon Kinesis Analytics reads reference data (that is, an Amazon S3 object) // and creates an in-application table within your application. In the request, // you provide the source (S3 bucket name and object key name), name of the // in-application table to create, and the necessary mapping information that // describes how data in Amazon S3 object maps to columns in the resulting in-application // table. // // For conceptual information, see Configuring Application Input (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-input.html). // For the limits on data sources you can add to your application, see Limits // (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/limits.html). // // This operation requires permissions to perform the kinesisanalytics:AddApplicationOutput // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Analytics's // API operation AddApplicationReferenceDataSource for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Specified application can't be found. // // * ResourceInUseException // Application is not available for this operation. // // * InvalidArgumentException // Specified input parameter value is invalid. // // * ConcurrentModificationException // Exception thrown as a result of concurrent modification to an application. // For example, two individuals attempting to edit the same application at the // same time. // func (c *KinesisAnalytics) AddApplicationReferenceDataSource(input *AddApplicationReferenceDataSourceInput) (*AddApplicationReferenceDataSourceOutput, error) { req, out := c.AddApplicationReferenceDataSourceRequest(input) err := req.Send() return out, err } const opCreateApplication = "CreateApplication" // CreateApplicationRequest generates a "aws/request.Request" representing the // client's request for the CreateApplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateApplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateApplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateApplicationRequest method. // req, resp := client.CreateApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KinesisAnalytics) CreateApplicationRequest(input *CreateApplicationInput) (req *request.Request, output *CreateApplicationOutput) { op := &request.Operation{ Name: opCreateApplication, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateApplicationInput{} } req = c.newRequest(op, input, output) output = &CreateApplicationOutput{} req.Data = output return } // CreateApplication API operation for Amazon Kinesis Analytics. // // Creates an Amazon Kinesis Analytics application. You can configure each application // with one streaming source as input, application code to process the input, // and up to five streaming destinations where you want Amazon Kinesis Analytics // to write the output data from your application. For an overview, see How // it Works (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works.html). // // In the input configuration, you map the streaming source to an in-application // stream, which you can think of as a constantly updating table. In the mapping, // you must provide a schema for the in-application stream and map each data // column in the in-application stream to a data element in the streaming source, // with the option of renaming, casting and dropping columns as desired. // // Your application code is one or more SQL statements that read input data, // transform it, and generate output. Your application code can create one or // more SQL artifacts like SQL streams or pumps. // // In the output configuration, you can configure the application to write data // from in-application streams created in your applications to up to five streaming // destinations. // // To read data from your source stream or write data to destination streams, // Amazon Kinesis Analytics needs your permissions. You grant these permissions // by creating IAM roles. This operation requires permissions to perform the // kinesisanalytics:CreateApplication action. // // For introductory exercises to create an Amazon Kinesis Analytics application, // see Getting Started (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/getting-started.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Analytics's // API operation CreateApplication for usage and error information. // // Returned Error Codes: // * CodeValidationException // User-provided application code (query) is invalid. This can be a simple syntax // error. // // * ResourceInUseException // Application is not available for this operation. // // * LimitExceededException // Exceeded the number of applications allowed. // // * InvalidArgumentException // Specified input parameter value is invalid. // func (c *KinesisAnalytics) CreateApplication(input *CreateApplicationInput) (*CreateApplicationOutput, error) { req, out := c.CreateApplicationRequest(input) err := req.Send() return out, err } const opDeleteApplication = "DeleteApplication" // DeleteApplicationRequest generates a "aws/request.Request" representing the // client's request for the DeleteApplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteApplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteApplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteApplicationRequest method. // req, resp := client.DeleteApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KinesisAnalytics) DeleteApplicationRequest(input *DeleteApplicationInput) (req *request.Request, output *DeleteApplicationOutput) { op := &request.Operation{ Name: opDeleteApplication, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteApplicationInput{} } req = c.newRequest(op, input, output) output = &DeleteApplicationOutput{} req.Data = output return } // DeleteApplication API operation for Amazon Kinesis Analytics. // // Deletes the specified application. Amazon Kinesis Analytics halts application // execution and deletes the application, including any application artifacts // (such as in-application streams, reference table, and application code). // // This operation requires permissions to perform the kinesisanalytics:DeleteApplication // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Analytics's // API operation DeleteApplication for usage and error information. // // Returned Error Codes: // * ConcurrentModificationException // Exception thrown as a result of concurrent modification to an application. // For example, two individuals attempting to edit the same application at the // same time. // // * ResourceNotFoundException // Specified application can't be found. // // * ResourceInUseException // Application is not available for this operation. // func (c *KinesisAnalytics) DeleteApplication(input *DeleteApplicationInput) (*DeleteApplicationOutput, error) { req, out := c.DeleteApplicationRequest(input) err := req.Send() return out, err } const opDeleteApplicationOutput = "DeleteApplicationOutput" // DeleteApplicationOutputRequest generates a "aws/request.Request" representing the // client's request for the DeleteApplicationOutput operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteApplicationOutput for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteApplicationOutput method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteApplicationOutputRequest method. // req, resp := client.DeleteApplicationOutputRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KinesisAnalytics) DeleteApplicationOutputRequest(input *DeleteApplicationOutputInput) (req *request.Request, output *DeleteApplicationOutputOutput) { op := &request.Operation{ Name: opDeleteApplicationOutput, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteApplicationOutputInput{} } req = c.newRequest(op, input, output) output = &DeleteApplicationOutputOutput{} req.Data = output return } // DeleteApplicationOutput API operation for Amazon Kinesis Analytics. // // Deletes output destination configuration from your application configuration. // Amazon Kinesis Analytics will no longer write data from the corresponding // in-application stream to the external output destination. // // This operation requires permissions to perform the kinesisanalytics:DeleteApplicationOutput // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Analytics's // API operation DeleteApplicationOutput for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Specified application can't be found. // // * ResourceInUseException // Application is not available for this operation. // // * ConcurrentModificationException // Exception thrown as a result of concurrent modification to an application. // For example, two individuals attempting to edit the same application at the // same time. // func (c *KinesisAnalytics) DeleteApplicationOutput(input *DeleteApplicationOutputInput) (*DeleteApplicationOutputOutput, error) { req, out := c.DeleteApplicationOutputRequest(input) err := req.Send() return out, err } const opDeleteApplicationReferenceDataSource = "DeleteApplicationReferenceDataSource" // DeleteApplicationReferenceDataSourceRequest generates a "aws/request.Request" representing the // client's request for the DeleteApplicationReferenceDataSource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteApplicationReferenceDataSource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteApplicationReferenceDataSource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteApplicationReferenceDataSourceRequest method. // req, resp := client.DeleteApplicationReferenceDataSourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KinesisAnalytics) DeleteApplicationReferenceDataSourceRequest(input *DeleteApplicationReferenceDataSourceInput) (req *request.Request, output *DeleteApplicationReferenceDataSourceOutput) { op := &request.Operation{ Name: opDeleteApplicationReferenceDataSource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteApplicationReferenceDataSourceInput{} } req = c.newRequest(op, input, output) output = &DeleteApplicationReferenceDataSourceOutput{} req.Data = output return } // DeleteApplicationReferenceDataSource API operation for Amazon Kinesis Analytics. // // Deletes a reference data source configuration from the specified application // configuration. // // If the application is running, Amazon Kinesis Analytics immediately removes // the in-application table that you created using the AddApplicationReferenceDataSource // operation. // // This operation requires permissions to perform the kinesisanalytics.DeleteApplicationReferenceDataSource // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Analytics's // API operation DeleteApplicationReferenceDataSource for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Specified application can't be found. // // * ResourceInUseException // Application is not available for this operation. // // * InvalidArgumentException // Specified input parameter value is invalid. // // * ConcurrentModificationException // Exception thrown as a result of concurrent modification to an application. // For example, two individuals attempting to edit the same application at the // same time. // func (c *KinesisAnalytics) DeleteApplicationReferenceDataSource(input *DeleteApplicationReferenceDataSourceInput) (*DeleteApplicationReferenceDataSourceOutput, error) { req, out := c.DeleteApplicationReferenceDataSourceRequest(input) err := req.Send() return out, err } const opDescribeApplication = "DescribeApplication" // DescribeApplicationRequest generates a "aws/request.Request" representing the // client's request for the DescribeApplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeApplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeApplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeApplicationRequest method. // req, resp := client.DescribeApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KinesisAnalytics) DescribeApplicationRequest(input *DescribeApplicationInput) (req *request.Request, output *DescribeApplicationOutput) { op := &request.Operation{ Name: opDescribeApplication, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeApplicationInput{} } req = c.newRequest(op, input, output) output = &DescribeApplicationOutput{} req.Data = output return } // DescribeApplication API operation for Amazon Kinesis Analytics. // // Returns information about a specific Amazon Kinesis Analytics application. // // If you want to retrieve a list of all applications in your account, use the // ListApplications operation. // // This operation requires permissions to perform the kinesisanalytics:DescribeApplication // action. You can use DescribeApplication to get the current application versionId, // which you need to call other operations such as Update. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Analytics's // API operation DescribeApplication for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Specified application can't be found. // func (c *KinesisAnalytics) DescribeApplication(input *DescribeApplicationInput) (*DescribeApplicationOutput, error) { req, out := c.DescribeApplicationRequest(input) err := req.Send() return out, err } const opDiscoverInputSchema = "DiscoverInputSchema" // DiscoverInputSchemaRequest generates a "aws/request.Request" representing the // client's request for the DiscoverInputSchema operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DiscoverInputSchema for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DiscoverInputSchema method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DiscoverInputSchemaRequest method. // req, resp := client.DiscoverInputSchemaRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KinesisAnalytics) DiscoverInputSchemaRequest(input *DiscoverInputSchemaInput) (req *request.Request, output *DiscoverInputSchemaOutput) { op := &request.Operation{ Name: opDiscoverInputSchema, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DiscoverInputSchemaInput{} } req = c.newRequest(op, input, output) output = &DiscoverInputSchemaOutput{} req.Data = output return } // DiscoverInputSchema API operation for Amazon Kinesis Analytics. // // Infers a schema by evaluating sample records on the specified streaming source // (Amazon Kinesis stream or Amazon Kinesis Firehose delivery stream). In the // response, the operation returns the inferred schema and also the sample records // that the operation used to infer the schema. // // You can use the inferred schema when configuring a streaming source for your // application. For conceptual information, see Configuring Application Input // (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-input.html). // Note that when you create an application using the Amazon Kinesis Analytics // console, the console uses this operation to infer a schema and show it in // the console user interface. // // This operation requires permissions to perform the kinesisanalytics:DiscoverInputSchema // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Analytics's // API operation DiscoverInputSchema for usage and error information. // // Returned Error Codes: // * InvalidArgumentException // Specified input parameter value is invalid. // // * UnableToDetectSchemaException // Data format is not valid, Kinesis Analytics is not able to detect schema // for the given streaming source. // // * ResourceProvisionedThroughputExceededException // Discovery failed to get a record from the streaming source because of the // Kinesis Streams ProvisionedThroughputExceededException. // func (c *KinesisAnalytics) DiscoverInputSchema(input *DiscoverInputSchemaInput) (*DiscoverInputSchemaOutput, error) { req, out := c.DiscoverInputSchemaRequest(input) err := req.Send() return out, err } const opListApplications = "ListApplications" // ListApplicationsRequest generates a "aws/request.Request" representing the // client's request for the ListApplications operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListApplications for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListApplications method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListApplicationsRequest method. // req, resp := client.ListApplicationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KinesisAnalytics) ListApplicationsRequest(input *ListApplicationsInput) (req *request.Request, output *ListApplicationsOutput) { op := &request.Operation{ Name: opListApplications, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListApplicationsInput{} } req = c.newRequest(op, input, output) output = &ListApplicationsOutput{} req.Data = output return } // ListApplications API operation for Amazon Kinesis Analytics. // // Returns a list of Amazon Kinesis Analytics applications in your account. // For each application, the response includes the application name, Amazon // Resource Name (ARN), and status. If the response returns the HasMoreApplications // value as true, you can send another request by adding the ExclusiveStartApplicationName // in the request body, and set the value of this to the last application name // from the previous response. // // If you want detailed information about a specific application, use DescribeApplication. // // This operation requires permissions to perform the kinesisanalytics:ListApplications // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Analytics's // API operation ListApplications for usage and error information. func (c *KinesisAnalytics) ListApplications(input *ListApplicationsInput) (*ListApplicationsOutput, error) { req, out := c.ListApplicationsRequest(input) err := req.Send() return out, err } const opStartApplication = "StartApplication" // StartApplicationRequest generates a "aws/request.Request" representing the // client's request for the StartApplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StartApplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StartApplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StartApplicationRequest method. // req, resp := client.StartApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KinesisAnalytics) StartApplicationRequest(input *StartApplicationInput) (req *request.Request, output *StartApplicationOutput) { op := &request.Operation{ Name: opStartApplication, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartApplicationInput{} } req = c.newRequest(op, input, output) output = &StartApplicationOutput{} req.Data = output return } // StartApplication API operation for Amazon Kinesis Analytics. // // Starts the specified Amazon Kinesis Analytics application. After creating // an application, you must exclusively call this operation to start your application. // // After the application starts, it begins consuming the input data, processes // it, and writes the output to the configured destination. // // The application status must be READY for you to start an application. You // can get the application status in the console or using the DescribeApplication // operation. // // After you start the application, you can stop the application from processing // the input by calling the StopApplication operation. // // This operation requires permissions to perform the kinesisanalytics:StartApplication // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Analytics's // API operation StartApplication for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Specified application can't be found. // // * ResourceInUseException // Application is not available for this operation. // // * InvalidArgumentException // Specified input parameter value is invalid. // // * InvalidApplicationConfigurationException // User-provided application configuration is not valid. // func (c *KinesisAnalytics) StartApplication(input *StartApplicationInput) (*StartApplicationOutput, error) { req, out := c.StartApplicationRequest(input) err := req.Send() return out, err } const opStopApplication = "StopApplication" // StopApplicationRequest generates a "aws/request.Request" representing the // client's request for the StopApplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StopApplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StopApplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StopApplicationRequest method. // req, resp := client.StopApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KinesisAnalytics) StopApplicationRequest(input *StopApplicationInput) (req *request.Request, output *StopApplicationOutput) { op := &request.Operation{ Name: opStopApplication, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StopApplicationInput{} } req = c.newRequest(op, input, output) output = &StopApplicationOutput{} req.Data = output return } // StopApplication API operation for Amazon Kinesis Analytics. // // Stops the application from processing input data. You can stop an application // only if it is in the running state. You can use the DescribeApplication operation // to find the application state. After the application is stopped, Amazon Kinesis // Analytics stops reading data from the input, the application stops processing // data, and there is no output written to the destination. // // This operation requires permissions to perform the kinesisanalytics:StopApplication // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Analytics's // API operation StopApplication for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Specified application can't be found. // // * ResourceInUseException // Application is not available for this operation. // func (c *KinesisAnalytics) StopApplication(input *StopApplicationInput) (*StopApplicationOutput, error) { req, out := c.StopApplicationRequest(input) err := req.Send() return out, err } const opUpdateApplication = "UpdateApplication" // UpdateApplicationRequest generates a "aws/request.Request" representing the // client's request for the UpdateApplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateApplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateApplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateApplicationRequest method. // req, resp := client.UpdateApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KinesisAnalytics) UpdateApplicationRequest(input *UpdateApplicationInput) (req *request.Request, output *UpdateApplicationOutput) { op := &request.Operation{ Name: opUpdateApplication, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateApplicationInput{} } req = c.newRequest(op, input, output) output = &UpdateApplicationOutput{} req.Data = output return } // UpdateApplication API operation for Amazon Kinesis Analytics. // // Updates an existing Kinesis Analytics application. Using this API, you can // update application code, input configuration, and output configuration. // // Note that Kinesis Analytics updates the CurrentApplicationVersionId each // time you update your application. // // This opeation requires permission for the kinesisanalytics:UpdateApplication // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Kinesis Analytics's // API operation UpdateApplication for usage and error information. // // Returned Error Codes: // * CodeValidationException // User-provided application code (query) is invalid. This can be a simple syntax // error. // // * ResourceNotFoundException // Specified application can't be found. // // * ResourceInUseException // Application is not available for this operation. // // * InvalidArgumentException // Specified input parameter value is invalid. // // * ConcurrentModificationException // Exception thrown as a result of concurrent modification to an application. // For example, two individuals attempting to edit the same application at the // same time. // func (c *KinesisAnalytics) UpdateApplication(input *UpdateApplicationInput) (*UpdateApplicationOutput, error) { req, out := c.UpdateApplicationRequest(input) err := req.Send() return out, err } type AddApplicationInputInput struct { _ struct{} `type:"structure"` // Name of your existing Amazon Kinesis Analytics application to which you want // to add the streaming source. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // Current version of your Amazon Kinesis Analytics application. You can use // the DescribeApplication operation to find the current application version. // // CurrentApplicationVersionId is a required field CurrentApplicationVersionId *int64 `min:"1" type:"long" required:"true"` // When you configure the application input, you specify the streaming source, // the in-application stream name that is created, and the mapping between the // two. For more information, see Configuring Application Input (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-input.html). // // Input is a required field Input *Input `type:"structure" required:"true"` } // String returns the string representation func (s AddApplicationInputInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddApplicationInputInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddApplicationInputInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddApplicationInputInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.CurrentApplicationVersionId == nil { invalidParams.Add(request.NewErrParamRequired("CurrentApplicationVersionId")) } if s.CurrentApplicationVersionId != nil && *s.CurrentApplicationVersionId < 1 { invalidParams.Add(request.NewErrParamMinValue("CurrentApplicationVersionId", 1)) } if s.Input == nil { invalidParams.Add(request.NewErrParamRequired("Input")) } if s.Input != nil { if err := s.Input.Validate(); err != nil { invalidParams.AddNested("Input", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddApplicationInputOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddApplicationInputOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddApplicationInputOutput) GoString() string { return s.String() } type AddApplicationOutputInput struct { _ struct{} `type:"structure"` // Name of the application to which you want to add the output configuration. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // Version of the application to which you want add the output configuration. // You can use the DescribeApplication operation to get the current application // version. If the version specified is not the current version, the ConcurrentModificationException // is returned. // // CurrentApplicationVersionId is a required field CurrentApplicationVersionId *int64 `min:"1" type:"long" required:"true"` // An array of objects, each describing one output configuration. In the output // configuration, you specify the name of an in-application stream, a destination // (that is, an Amazon Kinesis stream or an Amazon Kinesis Firehose delivery // stream), and record the formation to use when writing to the destination. // // Output is a required field Output *Output `type:"structure" required:"true"` } // String returns the string representation func (s AddApplicationOutputInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddApplicationOutputInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddApplicationOutputInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddApplicationOutputInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.CurrentApplicationVersionId == nil { invalidParams.Add(request.NewErrParamRequired("CurrentApplicationVersionId")) } if s.CurrentApplicationVersionId != nil && *s.CurrentApplicationVersionId < 1 { invalidParams.Add(request.NewErrParamMinValue("CurrentApplicationVersionId", 1)) } if s.Output == nil { invalidParams.Add(request.NewErrParamRequired("Output")) } if s.Output != nil { if err := s.Output.Validate(); err != nil { invalidParams.AddNested("Output", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddApplicationOutputOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddApplicationOutputOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddApplicationOutputOutput) GoString() string { return s.String() } type AddApplicationReferenceDataSourceInput struct { _ struct{} `type:"structure"` // Name of an existing application. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // Version of the application for which you are adding the reference data source. // You can use the DescribeApplication operation to get the current application // version. If the version specified is not the current version, the ConcurrentModificationException // is returned. // // CurrentApplicationVersionId is a required field CurrentApplicationVersionId *int64 `min:"1" type:"long" required:"true"` // The reference data source can be an object in your Amazon S3 bucket. Amazon // Kinesis Analytics reads the object and copies the data into the in-application // table that is created. You provide an S3 bucket, object key name, and the // resulting in-application table that is created. You must also provide an // IAM role with the necessary permissions that Amazon Kinesis Analytics can // assume to read the object from your S3 bucket on your behalf. // // ReferenceDataSource is a required field ReferenceDataSource *ReferenceDataSource `type:"structure" required:"true"` } // String returns the string representation func (s AddApplicationReferenceDataSourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddApplicationReferenceDataSourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddApplicationReferenceDataSourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddApplicationReferenceDataSourceInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.CurrentApplicationVersionId == nil { invalidParams.Add(request.NewErrParamRequired("CurrentApplicationVersionId")) } if s.CurrentApplicationVersionId != nil && *s.CurrentApplicationVersionId < 1 { invalidParams.Add(request.NewErrParamMinValue("CurrentApplicationVersionId", 1)) } if s.ReferenceDataSource == nil { invalidParams.Add(request.NewErrParamRequired("ReferenceDataSource")) } if s.ReferenceDataSource != nil { if err := s.ReferenceDataSource.Validate(); err != nil { invalidParams.AddNested("ReferenceDataSource", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddApplicationReferenceDataSourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddApplicationReferenceDataSourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddApplicationReferenceDataSourceOutput) GoString() string { return s.String() } // Provides a description of the application, including the application Amazon // Resource Name (ARN), status, latest version, and input and output configuration. type ApplicationDetail struct { _ struct{} `type:"structure"` // ARN of the application. // // ApplicationARN is a required field ApplicationARN *string `min:"1" type:"string" required:"true"` // Returns the application code that you provided to perform data analysis on // any of the in-application streams in your application. ApplicationCode *string `type:"string"` // Description of the application. ApplicationDescription *string `type:"string"` // Name of the application. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // Status of the application. // // ApplicationStatus is a required field ApplicationStatus *string `type:"string" required:"true" enum:"ApplicationStatus"` // Provides the current application version. // // ApplicationVersionId is a required field ApplicationVersionId *int64 `min:"1" type:"long" required:"true"` // Timestamp when the application version was created. CreateTimestamp *time.Time `type:"timestamp" timestampFormat:"unix"` // Describes the application input configuration. For more information, see // Configuring Application Input (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-input.html). InputDescriptions []*InputDescription `type:"list"` // Timestamp when the application was last updated. LastUpdateTimestamp *time.Time `type:"timestamp" timestampFormat:"unix"` // Describes the application output configuration. For more information, see // Configuring Application Output (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-output.html). OutputDescriptions []*OutputDescription `type:"list"` // Describes reference data sources configured for the application. For more // information, see Configuring Application Input (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-input.html). ReferenceDataSourceDescriptions []*ReferenceDataSourceDescription `type:"list"` } // String returns the string representation func (s ApplicationDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ApplicationDetail) GoString() string { return s.String() } // Provides application summary information, including the application Amazon // Resource Name (ARN), name, and status. type ApplicationSummary struct { _ struct{} `type:"structure"` // ARN of the application. // // ApplicationARN is a required field ApplicationARN *string `min:"1" type:"string" required:"true"` // Name of the application. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // Status of the application. // // ApplicationStatus is a required field ApplicationStatus *string `type:"string" required:"true" enum:"ApplicationStatus"` } // String returns the string representation func (s ApplicationSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ApplicationSummary) GoString() string { return s.String() } // Describes updates to apply to an existing Kinesis Analytics application. type ApplicationUpdate struct { _ struct{} `type:"structure"` // Describes application code updates. ApplicationCodeUpdate *string `type:"string"` // Describes application input configuration updates. InputUpdates []*InputUpdate `type:"list"` // Describes application output configuration updates. OutputUpdates []*OutputUpdate `type:"list"` // Describes application reference data source updates. ReferenceDataSourceUpdates []*ReferenceDataSourceUpdate `type:"list"` } // String returns the string representation func (s ApplicationUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ApplicationUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ApplicationUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ApplicationUpdate"} if s.InputUpdates != nil { for i, v := range s.InputUpdates { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputUpdates", i), err.(request.ErrInvalidParams)) } } } if s.OutputUpdates != nil { for i, v := range s.OutputUpdates { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OutputUpdates", i), err.(request.ErrInvalidParams)) } } } if s.ReferenceDataSourceUpdates != nil { for i, v := range s.ReferenceDataSourceUpdates { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ReferenceDataSourceUpdates", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides additional mapping information when the record format uses delimiters, // such as CSV. For example, the following sample records use CSV format, where // the records use the '\n' as the row delimiter and a comma (",") as the column // delimiter: // // "name1", "address1" // // "name2, "address2" type CSVMappingParameters struct { _ struct{} `type:"structure"` // Column delimiter. For example, in a CSV format, a comma (",") is the typical // column delimiter. // // RecordColumnDelimiter is a required field RecordColumnDelimiter *string `type:"string" required:"true"` // Row delimiter. For example, in a CSV format, '\n' is the typical row delimiter. // // RecordRowDelimiter is a required field RecordRowDelimiter *string `type:"string" required:"true"` } // String returns the string representation func (s CSVMappingParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CSVMappingParameters) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CSVMappingParameters) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CSVMappingParameters"} if s.RecordColumnDelimiter == nil { invalidParams.Add(request.NewErrParamRequired("RecordColumnDelimiter")) } if s.RecordRowDelimiter == nil { invalidParams.Add(request.NewErrParamRequired("RecordRowDelimiter")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // TBD type CreateApplicationInput struct { _ struct{} `type:"structure"` // One or more SQL statements that read input data, transform it, and generate // output. For example, you can write a SQL statement that reads input data // and generates a running average of the number of advertisement clicks by // vendor. // // You can also provide a series of SQL statements, where output of one statement // can be used as the input for the next statement. // // Note that the application code must create the streams with names specified // in the Outputs. For example, if your Outputs defines output streams named // ExampleOutputStream1 and ExampleOutputStream2, then your application code // must create these streams. ApplicationCode *string `type:"string"` // Summary description of the application. ApplicationDescription *string `type:"string"` // Name of your Amazon Kinesis Analytics application (for example, sample-app). // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // Use this parameter to configure the application input. // // You can configure your application to receive input from a single streaming // source. In this configuration, you map this streaming source to an in-application // stream that is created. Your application code can then query the in-application // stream like a table (you can think of it as a constantly updating table). // // For the streaming source, you provide its Amazon Resource Name (ARN) and // format of data on the stream (for example, JSON, CSV, etc). You also must // provide an IAM role that Amazon Kinesis Analytics can assume to read this // stream on your behalf. // // To create the in-application stream, you need to specify a schema to transform // your data into a schematized version used in SQL. In the schema, you provide // the necessary mapping of the data elements in the streaming source to record // columns in the in-app stream. Inputs []*Input `type:"list"` // You can configure application output to write data from any of the in-application // streams to up to five destinations. // // These destinations can be Amazon Kinesis streams, Amazon Kinesis Firehose // delivery streams, or both. // // In the configuration, you specify the in-application stream name, the destination // stream Amazon Resource Name (ARN), and the format to use when writing data. // You must also provide an IAM role that Amazon Kinesis Analytics can assume // to write to the destination stream on your behalf. // // In the output configuration, you also provide the output stream Amazon Resource // Name (ARN) and the format of data in the stream (for example, JSON, CSV). // You also must provide an IAM role that Amazon Kinesis Analytics can assume // to write to this stream on your behalf. Outputs []*Output `type:"list"` } // String returns the string representation func (s CreateApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateApplicationInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.Inputs != nil { for i, v := range s.Inputs { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Inputs", i), err.(request.ErrInvalidParams)) } } } if s.Outputs != nil { for i, v := range s.Outputs { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Outputs", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // TBD type CreateApplicationOutput struct { _ struct{} `type:"structure"` // In response to your CreateApplication request, Amazon Kinesis Analytics returns // a response with a summary of the application it created, including the application // Amazon Resource Name (ARN), name, and status. // // ApplicationSummary is a required field ApplicationSummary *ApplicationSummary `type:"structure" required:"true"` } // String returns the string representation func (s CreateApplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateApplicationOutput) GoString() string { return s.String() } type DeleteApplicationInput struct { _ struct{} `type:"structure"` // Name of the Amazon Kinesis Analytics application to delete. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // You can use the DescribeApplication operation to get this value. // // CreateTimestamp is a required field CreateTimestamp *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` } // String returns the string representation func (s DeleteApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.CreateTimestamp == nil { invalidParams.Add(request.NewErrParamRequired("CreateTimestamp")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteApplicationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteApplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteApplicationOutput) GoString() string { return s.String() } type DeleteApplicationOutputInput struct { _ struct{} `type:"structure"` // Amazon Kinesis Analytics application name. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // Amazon Kinesis Analytics application version. You can use the DescribeApplication // operation to get the current application version. If the version specified // is not the current version, the ConcurrentModificationException is returned. // // CurrentApplicationVersionId is a required field CurrentApplicationVersionId *int64 `min:"1" type:"long" required:"true"` // The ID of the configuration to delete. Each output configuration that is // added to the application, either when the application is created or later // using the AddApplicationOutput operation, has a unique ID. You need to provide // the ID to uniquely identify the output configuration that you want to delete // from the application configuration. You can use the DescribeApplication operation // to get the specific OutputId. // // OutputId is a required field OutputId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteApplicationOutputInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteApplicationOutputInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteApplicationOutputInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationOutputInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.CurrentApplicationVersionId == nil { invalidParams.Add(request.NewErrParamRequired("CurrentApplicationVersionId")) } if s.CurrentApplicationVersionId != nil && *s.CurrentApplicationVersionId < 1 { invalidParams.Add(request.NewErrParamMinValue("CurrentApplicationVersionId", 1)) } if s.OutputId == nil { invalidParams.Add(request.NewErrParamRequired("OutputId")) } if s.OutputId != nil && len(*s.OutputId) < 1 { invalidParams.Add(request.NewErrParamMinLen("OutputId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteApplicationOutputOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteApplicationOutputOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteApplicationOutputOutput) GoString() string { return s.String() } type DeleteApplicationReferenceDataSourceInput struct { _ struct{} `type:"structure"` // Name of an existing application. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // Version of the application. You can use the DescribeApplication operation // to get the current application version. If the version specified is not the // current version, the ConcurrentModificationException is returned. // // CurrentApplicationVersionId is a required field CurrentApplicationVersionId *int64 `min:"1" type:"long" required:"true"` // ID of the reference data source. When you add a reference data source to // your application using the AddApplicationReferenceDataSource, Amazon Kinesis // Analytics assigns an ID. You can use the DescribeApplication operation to // get the reference ID. // // ReferenceId is a required field ReferenceId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteApplicationReferenceDataSourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteApplicationReferenceDataSourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteApplicationReferenceDataSourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationReferenceDataSourceInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.CurrentApplicationVersionId == nil { invalidParams.Add(request.NewErrParamRequired("CurrentApplicationVersionId")) } if s.CurrentApplicationVersionId != nil && *s.CurrentApplicationVersionId < 1 { invalidParams.Add(request.NewErrParamMinValue("CurrentApplicationVersionId", 1)) } if s.ReferenceId == nil { invalidParams.Add(request.NewErrParamRequired("ReferenceId")) } if s.ReferenceId != nil && len(*s.ReferenceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ReferenceId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteApplicationReferenceDataSourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteApplicationReferenceDataSourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteApplicationReferenceDataSourceOutput) GoString() string { return s.String() } type DescribeApplicationInput struct { _ struct{} `type:"structure"` // Name of the application. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeApplicationInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeApplicationOutput struct { _ struct{} `type:"structure"` // Provides a description of the application, such as the application Amazon // Resource Name (ARN), status, latest version, and input and output configuration // details. // // ApplicationDetail is a required field ApplicationDetail *ApplicationDetail `type:"structure" required:"true"` } // String returns the string representation func (s DescribeApplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeApplicationOutput) GoString() string { return s.String() } // Describes the data format when records are written to the destination. For // more information, see Configuring Application Output (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-output.html). type DestinationSchema struct { _ struct{} `type:"structure"` // Specifies the format of the records on the output stream. RecordFormatType *string `type:"string" enum:"RecordFormatType"` } // String returns the string representation func (s DestinationSchema) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DestinationSchema) GoString() string { return s.String() } type DiscoverInputSchemaInput struct { _ struct{} `type:"structure"` // Point at which you want Amazon Kinesis Analytics to start reading records // from the specified streaming source discovery purposes. // // InputStartingPositionConfiguration is a required field InputStartingPositionConfiguration *InputStartingPositionConfiguration `type:"structure" required:"true"` // Amazon Resource Name (ARN) of the streaming source. // // ResourceARN is a required field ResourceARN *string `min:"1" type:"string" required:"true"` // ARN of the IAM role that Amazon Kinesis Analytics can assume to access the // stream on your behalf. // // RoleARN is a required field RoleARN *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DiscoverInputSchemaInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DiscoverInputSchemaInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DiscoverInputSchemaInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DiscoverInputSchemaInput"} if s.InputStartingPositionConfiguration == nil { invalidParams.Add(request.NewErrParamRequired("InputStartingPositionConfiguration")) } if s.ResourceARN == nil { invalidParams.Add(request.NewErrParamRequired("ResourceARN")) } if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) } if s.RoleARN == nil { invalidParams.Add(request.NewErrParamRequired("RoleARN")) } if s.RoleARN != nil && len(*s.RoleARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DiscoverInputSchemaOutput struct { _ struct{} `type:"structure"` // Schema inferred from the streaming source. It identifies the format of the // data in the streaming source and how each data element maps to corresponding // columns in the in-application stream that you can create. InputSchema *SourceSchema `type:"structure"` // An array of elements, where each element corresponds to a row in a stream // record (a stream record can have more than one row). ParsedInputRecords [][]*string `type:"list"` // Raw stream data that was sampled to infer the schema. RawInputRecords []*string `type:"list"` } // String returns the string representation func (s DiscoverInputSchemaOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DiscoverInputSchemaOutput) GoString() string { return s.String() } // When you configure the application input, you specify the streaming source, // the in-application stream name that is created, and the mapping between the // two. For more information, see Configuring Application Input (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-input.html). type Input struct { _ struct{} `type:"structure"` // Describes the number of in-application streams to create. // // Data from your source will be routed to these in-application input streams. // // (see Configuring Application Input (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-input.html). InputParallelism *InputParallelism `type:"structure"` // Describes the format of the data in the streaming source, and how each data // element maps to corresponding columns in the in-application stream that is // being created. // // Also used to describe the format of the reference data source. // // InputSchema is a required field InputSchema *SourceSchema `type:"structure" required:"true"` // If the streaming source is an Amazon Kinesis Firehose delivery stream, identifies // the Firehose delivery stream's ARN and an IAM role that enables Amazon Kinesis // Analytics to access the stream on your behalf. KinesisFirehoseInput *KinesisFirehoseInput `type:"structure"` // If the streaming source is an Amazon Kinesis stream, identifies the stream's // Amazon Resource Name (ARN) and an IAM role that enables Amazon Kinesis Analytics // to access the stream on your behalf. KinesisStreamsInput *KinesisStreamsInput `type:"structure"` // Name prefix to use when creating in-application stream. Suppose you specify // a prefix "MyInApplicationStream". Kinesis Analytics will then create one // or more (as per the InputParallelism count you specified) in-application // streams with names "MyInApplicationStream_001", "MyInApplicationStream_002" // and so on. // // NamePrefix is a required field NamePrefix *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s Input) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Input) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Input) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Input"} if s.InputSchema == nil { invalidParams.Add(request.NewErrParamRequired("InputSchema")) } if s.NamePrefix == nil { invalidParams.Add(request.NewErrParamRequired("NamePrefix")) } if s.NamePrefix != nil && len(*s.NamePrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("NamePrefix", 1)) } if s.InputParallelism != nil { if err := s.InputParallelism.Validate(); err != nil { invalidParams.AddNested("InputParallelism", err.(request.ErrInvalidParams)) } } if s.InputSchema != nil { if err := s.InputSchema.Validate(); err != nil { invalidParams.AddNested("InputSchema", err.(request.ErrInvalidParams)) } } if s.KinesisFirehoseInput != nil { if err := s.KinesisFirehoseInput.Validate(); err != nil { invalidParams.AddNested("KinesisFirehoseInput", err.(request.ErrInvalidParams)) } } if s.KinesisStreamsInput != nil { if err := s.KinesisStreamsInput.Validate(); err != nil { invalidParams.AddNested("KinesisStreamsInput", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // When you start your application, you provide this configuration, which identifies // the input source and the point in the input source at which you want the // application to start processing records. type InputConfiguration struct { _ struct{} `type:"structure"` // Input source ID. You can get this ID by calling the DescribeApplication operation. // // Id is a required field Id *string `min:"1" type:"string" required:"true"` // Point at which you want the application to start processing records from // the streaming source. // // InputStartingPositionConfiguration is a required field InputStartingPositionConfiguration *InputStartingPositionConfiguration `type:"structure" required:"true"` } // String returns the string representation func (s InputConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InputConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InputConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InputConfiguration"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } if s.InputStartingPositionConfiguration == nil { invalidParams.Add(request.NewErrParamRequired("InputStartingPositionConfiguration")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the application input configuration. For more information, see // Configuring Application Input (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-input.html). type InputDescription struct { _ struct{} `type:"structure"` // Returns the in-application stream names that are mapped to the stream source. InAppStreamNames []*string `type:"list"` // Input ID associated with the application input. This is the ID that Amazon // Kinesis Analytics assigns to each input configuration you add to your application. InputId *string `min:"1" type:"string"` // Describes the configured parallelism (number of in-application streams mapped // to the streaming source). InputParallelism *InputParallelism `type:"structure"` // Describes the format of the data in the streaming source, and how each data // element maps to corresponding columns created in the in-application stream. InputSchema *SourceSchema `type:"structure"` // Point at which the application is configured to read from the input stream. InputStartingPositionConfiguration *InputStartingPositionConfiguration `type:"structure"` // If an Amazon Kinesis Firehose delivery stream is configured as a streaming // source, provides the Firehose delivery stream's Amazon Resource Name (ARN) // and an IAM role that enables Amazon Kinesis Analytics to access the stream // on your behalf. KinesisFirehoseInputDescription *KinesisFirehoseInputDescription `type:"structure"` // If an Amazon Kinesis stream is configured as streaming source, provides Amazon // Kinesis stream's ARN and an IAM role that enables Amazon Kinesis Analytics // to access the stream on your behalf. KinesisStreamsInputDescription *KinesisStreamsInputDescription `type:"structure"` // In-application name prefix. NamePrefix *string `min:"1" type:"string"` } // String returns the string representation func (s InputDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InputDescription) GoString() string { return s.String() } // Describes the number of in-application streams to create for a given streaming // source. For information about parallellism, see Configuring Application Input // (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-input.html). type InputParallelism struct { _ struct{} `type:"structure"` // Number of in-application streams to create. For more information, see Limits // (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/limits.html). Count *int64 `min:"1" type:"integer"` } // String returns the string representation func (s InputParallelism) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InputParallelism) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InputParallelism) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InputParallelism"} if s.Count != nil && *s.Count < 1 { invalidParams.Add(request.NewErrParamMinValue("Count", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides updates to the parallelism count. type InputParallelismUpdate struct { _ struct{} `type:"structure"` // Number of in-application streams to create for the specified streaming source. CountUpdate *int64 `min:"1" type:"integer"` } // String returns the string representation func (s InputParallelismUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InputParallelismUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InputParallelismUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InputParallelismUpdate"} if s.CountUpdate != nil && *s.CountUpdate < 1 { invalidParams.Add(request.NewErrParamMinValue("CountUpdate", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes updates for the application's input schema. type InputSchemaUpdate struct { _ struct{} `type:"structure"` // A list of RecordColumn objects. Each object describes the mapping of the // streaming source element to the corresponding column in the in-application // stream. RecordColumnUpdates []*RecordColumn `min:"1" type:"list"` // Specifies the encoding of the records in the streaming source. For example, // UTF-8. RecordEncodingUpdate *string `type:"string"` // Specifies the format of the records on the streaming source. RecordFormatUpdate *RecordFormat `type:"structure"` } // String returns the string representation func (s InputSchemaUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InputSchemaUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InputSchemaUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InputSchemaUpdate"} if s.RecordColumnUpdates != nil && len(s.RecordColumnUpdates) < 1 { invalidParams.Add(request.NewErrParamMinLen("RecordColumnUpdates", 1)) } if s.RecordColumnUpdates != nil { for i, v := range s.RecordColumnUpdates { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RecordColumnUpdates", i), err.(request.ErrInvalidParams)) } } } if s.RecordFormatUpdate != nil { if err := s.RecordFormatUpdate.Validate(); err != nil { invalidParams.AddNested("RecordFormatUpdate", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the point at which the application reads from the streaming source. type InputStartingPositionConfiguration struct { _ struct{} `type:"structure"` // The starting position on the stream. // // * LATEST - Start reading just after the most recent record in the stream. // // * TRIM_HORIZON - Start reading at the last untrimmed record in the stream, // which is the oldest record available in the stream. This option is not // available for an Amazon Kinesis Firehose delivery stream. // // * LAST_STOPPED_POINT - Resume reading from where the application last // stopped reading. InputStartingPosition *string `type:"string" enum:"InputStartingPosition"` } // String returns the string representation func (s InputStartingPositionConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InputStartingPositionConfiguration) GoString() string { return s.String() } // Describes updates to a specific input configuration (identified by the InputId // of an application). type InputUpdate struct { _ struct{} `type:"structure"` // Input ID of the application input to be updated. // // InputId is a required field InputId *string `min:"1" type:"string" required:"true"` // Describes the parallelism updates (the number in-application streams Kinesis // Analytics creates for the specific streaming source). InputParallelismUpdate *InputParallelismUpdate `type:"structure"` // Describes the data format on the streaming source, and how record elements // on the streaming source map to columns of the in-application stream that // is created. InputSchemaUpdate *InputSchemaUpdate `type:"structure"` // If an Amazon Kinesis Firehose delivery stream is the streaming source to // be updated, provides an updated stream Amazon Resource Name (ARN) and IAM // role ARN. KinesisFirehoseInputUpdate *KinesisFirehoseInputUpdate `type:"structure"` // If a Amazon Kinesis stream is the streaming source to be updated, provides // an updated stream ARN and IAM role ARN. KinesisStreamsInputUpdate *KinesisStreamsInputUpdate `type:"structure"` // Name prefix for in-application stream(s) that Kinesis Analytics creates for // the specific streaming source. NamePrefixUpdate *string `min:"1" type:"string"` } // String returns the string representation func (s InputUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InputUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InputUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InputUpdate"} if s.InputId == nil { invalidParams.Add(request.NewErrParamRequired("InputId")) } if s.InputId != nil && len(*s.InputId) < 1 { invalidParams.Add(request.NewErrParamMinLen("InputId", 1)) } if s.NamePrefixUpdate != nil && len(*s.NamePrefixUpdate) < 1 { invalidParams.Add(request.NewErrParamMinLen("NamePrefixUpdate", 1)) } if s.InputParallelismUpdate != nil { if err := s.InputParallelismUpdate.Validate(); err != nil { invalidParams.AddNested("InputParallelismUpdate", err.(request.ErrInvalidParams)) } } if s.InputSchemaUpdate != nil { if err := s.InputSchemaUpdate.Validate(); err != nil { invalidParams.AddNested("InputSchemaUpdate", err.(request.ErrInvalidParams)) } } if s.KinesisFirehoseInputUpdate != nil { if err := s.KinesisFirehoseInputUpdate.Validate(); err != nil { invalidParams.AddNested("KinesisFirehoseInputUpdate", err.(request.ErrInvalidParams)) } } if s.KinesisStreamsInputUpdate != nil { if err := s.KinesisStreamsInputUpdate.Validate(); err != nil { invalidParams.AddNested("KinesisStreamsInputUpdate", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides additional mapping information when JSON is the record format on // the streaming source. type JSONMappingParameters struct { _ struct{} `type:"structure"` // Path to the top-level parent that contains the records. // // For example, consider the following JSON record: // // In the RecordRowPath, "$" refers to the root and path "$.vehicle.Model" refers // to the specific "Model" key in the JSON. // // RecordRowPath is a required field RecordRowPath *string `type:"string" required:"true"` } // String returns the string representation func (s JSONMappingParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JSONMappingParameters) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *JSONMappingParameters) Validate() error { invalidParams := request.ErrInvalidParams{Context: "JSONMappingParameters"} if s.RecordRowPath == nil { invalidParams.Add(request.NewErrParamRequired("RecordRowPath")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Identifies an Amazon Kinesis Firehose delivery stream as the streaming source. // You provide the Firehose delivery stream's Amazon Resource Name (ARN) and // an IAM role ARN that enables Amazon Kinesis Analytics to access the stream // on your behalf. type KinesisFirehoseInput struct { _ struct{} `type:"structure"` // ARN of the input Firehose delivery stream. // // ResourceARN is a required field ResourceARN *string `min:"1" type:"string" required:"true"` // ARN of the IAM role that Amazon Kinesis Analytics can assume to access the // stream on your behalf. You need to make sure the role has necessary permissions // to access the stream. // // RoleARN is a required field RoleARN *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s KinesisFirehoseInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KinesisFirehoseInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *KinesisFirehoseInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "KinesisFirehoseInput"} if s.ResourceARN == nil { invalidParams.Add(request.NewErrParamRequired("ResourceARN")) } if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) } if s.RoleARN == nil { invalidParams.Add(request.NewErrParamRequired("RoleARN")) } if s.RoleARN != nil && len(*s.RoleARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the Amazon Kinesis Firehose delivery stream that is configured // as the streaming source in the application input configuration. type KinesisFirehoseInputDescription struct { _ struct{} `type:"structure"` // Amazon Resource Name (ARN) of the Amazon Kinesis Firehose delivery stream. ResourceARN *string `min:"1" type:"string"` // ARN of the IAM role that Amazon Kinesis Analytics assumes to access the stream. RoleARN *string `min:"1" type:"string"` } // String returns the string representation func (s KinesisFirehoseInputDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KinesisFirehoseInputDescription) GoString() string { return s.String() } // When updating application input configuration, provides information about // an Amazon Kinesis Firehose delivery stream as the streaming source. type KinesisFirehoseInputUpdate struct { _ struct{} `type:"structure"` // ARN of the input Amazon Kinesis Firehose delivery stream to read. ResourceARNUpdate *string `min:"1" type:"string"` // Amazon Resource Name (ARN) of the IAM role that Amazon Kinesis Analytics // can assume to access the stream on your behalf. You need to grant necessary // permissions to this role. RoleARNUpdate *string `min:"1" type:"string"` } // String returns the string representation func (s KinesisFirehoseInputUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KinesisFirehoseInputUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *KinesisFirehoseInputUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "KinesisFirehoseInputUpdate"} if s.ResourceARNUpdate != nil && len(*s.ResourceARNUpdate) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceARNUpdate", 1)) } if s.RoleARNUpdate != nil && len(*s.RoleARNUpdate) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARNUpdate", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // When configuring application output, identifies an Amazon Kinesis Firehose // delivery stream as the destination. You provide the stream Amazon Resource // Name (ARN) and an IAM role that enables Amazon Kinesis Analytics to write // to the stream on your behalf. type KinesisFirehoseOutput struct { _ struct{} `type:"structure"` // ARN of the destination Amazon Kinesis Firehose delivery stream to write to. // // ResourceARN is a required field ResourceARN *string `min:"1" type:"string" required:"true"` // ARN of the IAM role that Amazon Kinesis Analytics can assume to write to // the destination stream on your behalf. You need to grant the necessary permissions // to this role. // // RoleARN is a required field RoleARN *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s KinesisFirehoseOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KinesisFirehoseOutput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *KinesisFirehoseOutput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "KinesisFirehoseOutput"} if s.ResourceARN == nil { invalidParams.Add(request.NewErrParamRequired("ResourceARN")) } if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) } if s.RoleARN == nil { invalidParams.Add(request.NewErrParamRequired("RoleARN")) } if s.RoleARN != nil && len(*s.RoleARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // For an application output, describes the Amazon Kinesis Firehose delivery // stream configured as its destination. type KinesisFirehoseOutputDescription struct { _ struct{} `type:"structure"` // Amazon Resource Name (ARN) of the Amazon Kinesis Firehose delivery stream. ResourceARN *string `min:"1" type:"string"` // ARN of the IAM role that Amazon Kinesis Analytics can assume to access the // stream. RoleARN *string `min:"1" type:"string"` } // String returns the string representation func (s KinesisFirehoseOutputDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KinesisFirehoseOutputDescription) GoString() string { return s.String() } // When updating an output configuration using the UpdateApplication operation, // provides information about an Amazon Kinesis Firehose delivery stream configured // as the destination. type KinesisFirehoseOutputUpdate struct { _ struct{} `type:"structure"` // Amazon Resource Name (ARN) of the Amazon Kinesis Firehose delivery stream // to write to. ResourceARNUpdate *string `min:"1" type:"string"` // ARN of the IAM role that Amazon Kinesis Analytics can assume to access the // stream on your behalf. You need to grant necessary permissions to this role. RoleARNUpdate *string `min:"1" type:"string"` } // String returns the string representation func (s KinesisFirehoseOutputUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KinesisFirehoseOutputUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *KinesisFirehoseOutputUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "KinesisFirehoseOutputUpdate"} if s.ResourceARNUpdate != nil && len(*s.ResourceARNUpdate) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceARNUpdate", 1)) } if s.RoleARNUpdate != nil && len(*s.RoleARNUpdate) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARNUpdate", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Identifies an Amazon Kinesis stream as the streaming source. You provide // the stream's ARN and an IAM role ARN that enables Amazon Kinesis Analytics // to access the stream on your behalf. type KinesisStreamsInput struct { _ struct{} `type:"structure"` // ARN of the input Amazon Kinesis stream to read. // // ResourceARN is a required field ResourceARN *string `min:"1" type:"string" required:"true"` // ARN of the IAM role that Amazon Kinesis Analytics can assume to access the // stream on your behalf. You need to grant the necessary permissions to this // role. // // RoleARN is a required field RoleARN *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s KinesisStreamsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KinesisStreamsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *KinesisStreamsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "KinesisStreamsInput"} if s.ResourceARN == nil { invalidParams.Add(request.NewErrParamRequired("ResourceARN")) } if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) } if s.RoleARN == nil { invalidParams.Add(request.NewErrParamRequired("RoleARN")) } if s.RoleARN != nil && len(*s.RoleARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the Amazon Kinesis stream that is configured as the streaming source // in the application input configuration. type KinesisStreamsInputDescription struct { _ struct{} `type:"structure"` // Amazon Resource Name (ARN) of the Amazon Kinesis stream. ResourceARN *string `min:"1" type:"string"` // ARN of the IAM role that Amazon Kinesis Analytics can assume to access the // stream. RoleARN *string `min:"1" type:"string"` } // String returns the string representation func (s KinesisStreamsInputDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KinesisStreamsInputDescription) GoString() string { return s.String() } // When updating application input configuration, provides information about // an Amazon Kinesis stream as the streaming source. type KinesisStreamsInputUpdate struct { _ struct{} `type:"structure"` // Amazon Resource Name (ARN) of the input Amazon Kinesis stream to read. ResourceARNUpdate *string `min:"1" type:"string"` // ARN of the IAM role that Amazon Kinesis Analytics can assume to access the // stream on your behalf. You need to grant the necessary permissions to this // role. RoleARNUpdate *string `min:"1" type:"string"` } // String returns the string representation func (s KinesisStreamsInputUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KinesisStreamsInputUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *KinesisStreamsInputUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "KinesisStreamsInputUpdate"} if s.ResourceARNUpdate != nil && len(*s.ResourceARNUpdate) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceARNUpdate", 1)) } if s.RoleARNUpdate != nil && len(*s.RoleARNUpdate) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARNUpdate", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // When configuring application output, identifies a Amazon Kinesis stream as // the destination. You provide the stream Amazon Resource Name (ARN) and also // an IAM role ARN that Amazon Kinesis Analytics can use to write to the stream // on your behalf. type KinesisStreamsOutput struct { _ struct{} `type:"structure"` // ARN of the destination Amazon Kinesis stream to write to. // // ResourceARN is a required field ResourceARN *string `min:"1" type:"string" required:"true"` // ARN of the IAM role that Amazon Kinesis Analytics can assume to write to // the destination stream on your behalf. You need to grant the necessary permissions // to this role. // // RoleARN is a required field RoleARN *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s KinesisStreamsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KinesisStreamsOutput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *KinesisStreamsOutput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "KinesisStreamsOutput"} if s.ResourceARN == nil { invalidParams.Add(request.NewErrParamRequired("ResourceARN")) } if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) } if s.RoleARN == nil { invalidParams.Add(request.NewErrParamRequired("RoleARN")) } if s.RoleARN != nil && len(*s.RoleARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // For an application output, describes the Amazon Kinesis stream configured // as its destination. type KinesisStreamsOutputDescription struct { _ struct{} `type:"structure"` // Amazon Resource Name (ARN) of the Amazon Kinesis stream. ResourceARN *string `min:"1" type:"string"` // ARN of the IAM role that Amazon Kinesis Analytics can assume to access the // stream. RoleARN *string `min:"1" type:"string"` } // String returns the string representation func (s KinesisStreamsOutputDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KinesisStreamsOutputDescription) GoString() string { return s.String() } // When updating an output configuration using the UpdateApplication operation, // provides information about an Amazon Kinesis stream configured as the destination. type KinesisStreamsOutputUpdate struct { _ struct{} `type:"structure"` // Amazon Resource Name (ARN) of the Amazon Kinesis stream where you want to // write the output. ResourceARNUpdate *string `min:"1" type:"string"` // ARN of the IAM role that Amazon Kinesis Analytics can assume to access the // stream on your behalf. You need to grant the necessary permissions to this // role. RoleARNUpdate *string `min:"1" type:"string"` } // String returns the string representation func (s KinesisStreamsOutputUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KinesisStreamsOutputUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *KinesisStreamsOutputUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "KinesisStreamsOutputUpdate"} if s.ResourceARNUpdate != nil && len(*s.ResourceARNUpdate) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceARNUpdate", 1)) } if s.RoleARNUpdate != nil && len(*s.RoleARNUpdate) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARNUpdate", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListApplicationsInput struct { _ struct{} `type:"structure"` // Name of the application to start the list with. When using pagination to // retrieve the list, you don't need to specify this parameter in the first // request. However, in subsequent requests, you add the last application name // from the previous response to get the next page of applications. ExclusiveStartApplicationName *string `min:"1" type:"string"` // Maximum number of applications to list. Limit *int64 `min:"1" type:"integer"` } // String returns the string representation func (s ListApplicationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListApplicationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListApplicationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListApplicationsInput"} if s.ExclusiveStartApplicationName != nil && len(*s.ExclusiveStartApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ExclusiveStartApplicationName", 1)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListApplicationsOutput struct { _ struct{} `type:"structure"` // List of ApplicationSummary objects. // // ApplicationSummaries is a required field ApplicationSummaries []*ApplicationSummary `type:"list" required:"true"` // Returns true if there are more applications to retrieve. // // HasMoreApplications is a required field HasMoreApplications *bool `type:"boolean" required:"true"` } // String returns the string representation func (s ListApplicationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListApplicationsOutput) GoString() string { return s.String() } // When configuring application input at the time of creating or updating an // application, provides additional mapping information specific to the record // format (such as JSON, CSV, or record fields delimited by some delimiter) // on the streaming source. type MappingParameters struct { _ struct{} `type:"structure"` // Provides additional mapping information when the record format uses delimiters // (for example, CSV). CSVMappingParameters *CSVMappingParameters `type:"structure"` // Provides additional mapping information when JSON is the record format on // the streaming source. JSONMappingParameters *JSONMappingParameters `type:"structure"` } // String returns the string representation func (s MappingParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MappingParameters) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MappingParameters) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MappingParameters"} if s.CSVMappingParameters != nil { if err := s.CSVMappingParameters.Validate(); err != nil { invalidParams.AddNested("CSVMappingParameters", err.(request.ErrInvalidParams)) } } if s.JSONMappingParameters != nil { if err := s.JSONMappingParameters.Validate(); err != nil { invalidParams.AddNested("JSONMappingParameters", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes application output configuration in which you identify an in-application // stream and a destination where you want the in-application stream data to // be written. The destination can be an Amazon Kinesis stream or an Amazon // Kinesis Firehose delivery stream. type Output struct { _ struct{} `type:"structure"` // Describes the data format when records are written to the destination. For // more information, see Configuring Application Output (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-output.html). // // DestinationSchema is a required field DestinationSchema *DestinationSchema `type:"structure" required:"true"` // Identifies an Amazon Kinesis Firehose delivery stream as the destination. KinesisFirehoseOutput *KinesisFirehoseOutput `type:"structure"` // Identifies an Amazon Kinesis stream as the destination. KinesisStreamsOutput *KinesisStreamsOutput `type:"structure"` // Name of the in-application stream. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s Output) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Output) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Output) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Output"} if s.DestinationSchema == nil { invalidParams.Add(request.NewErrParamRequired("DestinationSchema")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.KinesisFirehoseOutput != nil { if err := s.KinesisFirehoseOutput.Validate(); err != nil { invalidParams.AddNested("KinesisFirehoseOutput", err.(request.ErrInvalidParams)) } } if s.KinesisStreamsOutput != nil { if err := s.KinesisStreamsOutput.Validate(); err != nil { invalidParams.AddNested("KinesisStreamsOutput", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the application output configuration, which includes the in-application // stream name and the destination where the stream data is written. The destination // can be an Amazon Kinesis stream or an Amazon Kinesis Firehose delivery stream. type OutputDescription struct { _ struct{} `type:"structure"` // Data format used for writing data to the destination. DestinationSchema *DestinationSchema `type:"structure"` // Describes the Amazon Kinesis Firehose delivery stream configured as the destination // where output is written. KinesisFirehoseOutputDescription *KinesisFirehoseOutputDescription `type:"structure"` // Describes Amazon Kinesis stream configured as the destination where output // is written. KinesisStreamsOutputDescription *KinesisStreamsOutputDescription `type:"structure"` // Name of the in-application stream configured as output. Name *string `min:"1" type:"string"` // A unique identifier for the output configuration. OutputId *string `min:"1" type:"string"` } // String returns the string representation func (s OutputDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OutputDescription) GoString() string { return s.String() } // Describes updates to the output configuration identified by the OutputId. type OutputUpdate struct { _ struct{} `type:"structure"` // Describes the data format when records are written to the destination. For // more information, see Configuring Application Output (http://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-output.html). DestinationSchemaUpdate *DestinationSchema `type:"structure"` // Describes a Amazon Kinesis Firehose delivery stream as the destination for // the output. KinesisFirehoseOutputUpdate *KinesisFirehoseOutputUpdate `type:"structure"` // Describes an Amazon Kinesis stream as the destination for the output. KinesisStreamsOutputUpdate *KinesisStreamsOutputUpdate `type:"structure"` // If you want to specify a different in-application stream for this output // configuration, use this field to specify the new in-application stream name. NameUpdate *string `min:"1" type:"string"` // Identifies the specific output configuration that you want to update. // // OutputId is a required field OutputId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s OutputUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OutputUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *OutputUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "OutputUpdate"} if s.NameUpdate != nil && len(*s.NameUpdate) < 1 { invalidParams.Add(request.NewErrParamMinLen("NameUpdate", 1)) } if s.OutputId == nil { invalidParams.Add(request.NewErrParamRequired("OutputId")) } if s.OutputId != nil && len(*s.OutputId) < 1 { invalidParams.Add(request.NewErrParamMinLen("OutputId", 1)) } if s.KinesisFirehoseOutputUpdate != nil { if err := s.KinesisFirehoseOutputUpdate.Validate(); err != nil { invalidParams.AddNested("KinesisFirehoseOutputUpdate", err.(request.ErrInvalidParams)) } } if s.KinesisStreamsOutputUpdate != nil { if err := s.KinesisStreamsOutputUpdate.Validate(); err != nil { invalidParams.AddNested("KinesisStreamsOutputUpdate", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the mapping of each data element in the streaming source to the // corresponding column in the in-application stream. // // Also used to describe the format of the reference data source. type RecordColumn struct { _ struct{} `type:"structure"` // Reference to the data element in the streaming input of the reference data // source. Mapping *string `type:"string"` // Name of the column created in the in-application input stream or reference // table. // // Name is a required field Name *string `type:"string" required:"true"` // Type of column created in the in-application input stream or reference table. // // SqlType is a required field SqlType *string `type:"string" required:"true"` } // String returns the string representation func (s RecordColumn) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecordColumn) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RecordColumn) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RecordColumn"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.SqlType == nil { invalidParams.Add(request.NewErrParamRequired("SqlType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the record format and relevant mapping information that should // be applied to schematize the records on the stream. type RecordFormat struct { _ struct{} `type:"structure"` // When configuring application input at the time of creating or updating an // application, provides additional mapping information specific to the record // format (such as JSON, CSV, or record fields delimited by some delimiter) // on the streaming source. MappingParameters *MappingParameters `type:"structure"` // The type of record format. // // RecordFormatType is a required field RecordFormatType *string `type:"string" required:"true" enum:"RecordFormatType"` } // String returns the string representation func (s RecordFormat) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecordFormat) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RecordFormat) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RecordFormat"} if s.RecordFormatType == nil { invalidParams.Add(request.NewErrParamRequired("RecordFormatType")) } if s.MappingParameters != nil { if err := s.MappingParameters.Validate(); err != nil { invalidParams.AddNested("MappingParameters", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the reference data source by providing the source information (S3 // bucket name and object key name), the resulting in-application table name // that is created, and the necessary schema to map the data elements in the // Amazon S3 object to the in-application table. type ReferenceDataSource struct { _ struct{} `type:"structure"` // Describes the format of the data in the streaming source, and how each data // element maps to corresponding columns created in the in-application stream. // // ReferenceSchema is a required field ReferenceSchema *SourceSchema `type:"structure" required:"true"` // Identifies the S3 bucket and object that contains the reference data. Also // identifies the IAM role Amazon Kinesis Analytics can assume to read this // object on your behalf. // // An Amazon Kinesis Analytics application loads reference data only once. If // the data changes, you call the UpdateApplication operation to trigger reloading // of data into your application. S3ReferenceDataSource *S3ReferenceDataSource `type:"structure"` // Name of the in-application table to create. // // TableName is a required field TableName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ReferenceDataSource) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReferenceDataSource) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReferenceDataSource) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReferenceDataSource"} if s.ReferenceSchema == nil { invalidParams.Add(request.NewErrParamRequired("ReferenceSchema")) } if s.TableName == nil { invalidParams.Add(request.NewErrParamRequired("TableName")) } if s.TableName != nil && len(*s.TableName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TableName", 1)) } if s.ReferenceSchema != nil { if err := s.ReferenceSchema.Validate(); err != nil { invalidParams.AddNested("ReferenceSchema", err.(request.ErrInvalidParams)) } } if s.S3ReferenceDataSource != nil { if err := s.S3ReferenceDataSource.Validate(); err != nil { invalidParams.AddNested("S3ReferenceDataSource", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the reference data source configured for an application. type ReferenceDataSourceDescription struct { _ struct{} `type:"structure"` // ID of the reference data source. This is the ID that Amazon Kinesis Analytics // assigns when you add the reference data source to your application using // the AddApplicationReferenceDataSource operation. // // ReferenceId is a required field ReferenceId *string `min:"1" type:"string" required:"true"` // Describes the format of the data in the streaming source, and how each data // element maps to corresponding columns created in the in-application stream. ReferenceSchema *SourceSchema `type:"structure"` // Provides the S3 bucket name, the object key name that contains the reference // data. It also provides the Amazon Resource Name (ARN) of the IAM role that // Amazon Kinesis Analytics can assume to read the Amazon S3 object and populate // the in-application reference table. // // S3ReferenceDataSourceDescription is a required field S3ReferenceDataSourceDescription *S3ReferenceDataSourceDescription `type:"structure" required:"true"` // The in-application table name created by the specific reference data source // configuration. // // TableName is a required field TableName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ReferenceDataSourceDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReferenceDataSourceDescription) GoString() string { return s.String() } // When you update a reference data source configuration for an application, // this object provides all the updated values (such as the source bucket name // and object key name), the in-application table name that is created, and // updated mapping information that maps the data in the Amazon S3 object to // the in-application reference table that is created. type ReferenceDataSourceUpdate struct { _ struct{} `type:"structure"` // ID of the reference data source being updated. You can use the DescribeApplication // operation to get this value. // // ReferenceId is a required field ReferenceId *string `min:"1" type:"string" required:"true"` // Describes the format of the data in the streaming source, and how each data // element maps to corresponding columns created in the in-application stream. ReferenceSchemaUpdate *SourceSchema `type:"structure"` // Describes the S3 bucket name, object key name, and IAM role that Amazon Kinesis // Analytics can assume to read the Amazon S3 object on your behalf and populate // the in-application reference table. S3ReferenceDataSourceUpdate *S3ReferenceDataSourceUpdate `type:"structure"` // In-application table name that is created by this update. TableNameUpdate *string `min:"1" type:"string"` } // String returns the string representation func (s ReferenceDataSourceUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReferenceDataSourceUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReferenceDataSourceUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReferenceDataSourceUpdate"} if s.ReferenceId == nil { invalidParams.Add(request.NewErrParamRequired("ReferenceId")) } if s.ReferenceId != nil && len(*s.ReferenceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ReferenceId", 1)) } if s.TableNameUpdate != nil && len(*s.TableNameUpdate) < 1 { invalidParams.Add(request.NewErrParamMinLen("TableNameUpdate", 1)) } if s.ReferenceSchemaUpdate != nil { if err := s.ReferenceSchemaUpdate.Validate(); err != nil { invalidParams.AddNested("ReferenceSchemaUpdate", err.(request.ErrInvalidParams)) } } if s.S3ReferenceDataSourceUpdate != nil { if err := s.S3ReferenceDataSourceUpdate.Validate(); err != nil { invalidParams.AddNested("S3ReferenceDataSourceUpdate", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Identifies the S3 bucket and object that contains the reference data. Also // identifies the IAM role Amazon Kinesis Analytics can assume to read this // object on your behalf. // // An Amazon Kinesis Analytics application loads reference data only once. If // the data changes, you call the UpdateApplication operation to trigger reloading // of data into your application. type S3ReferenceDataSource struct { _ struct{} `type:"structure"` // Amazon Resource Name (ARN) of the S3 bucket. // // BucketARN is a required field BucketARN *string `min:"1" type:"string" required:"true"` // Object key name containing reference data. // // FileKey is a required field FileKey *string `type:"string" required:"true"` // ARN of the IAM role that the service can assume to read data on your behalf. // This role must have permission for the s3:GetObject action on the object // and trust policy that allows Amazon Kinesis Analytics service principal to // assume this role. // // ReferenceRoleARN is a required field ReferenceRoleARN *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s S3ReferenceDataSource) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s S3ReferenceDataSource) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3ReferenceDataSource) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3ReferenceDataSource"} if s.BucketARN == nil { invalidParams.Add(request.NewErrParamRequired("BucketARN")) } if s.BucketARN != nil && len(*s.BucketARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("BucketARN", 1)) } if s.FileKey == nil { invalidParams.Add(request.NewErrParamRequired("FileKey")) } if s.ReferenceRoleARN == nil { invalidParams.Add(request.NewErrParamRequired("ReferenceRoleARN")) } if s.ReferenceRoleARN != nil && len(*s.ReferenceRoleARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("ReferenceRoleARN", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides the bucket name and object key name that stores the reference data. type S3ReferenceDataSourceDescription struct { _ struct{} `type:"structure"` // Amazon Resource Name (ARN) of the S3 bucket. // // BucketARN is a required field BucketARN *string `min:"1" type:"string" required:"true"` // Amazon S3 object key name. // // FileKey is a required field FileKey *string `type:"string" required:"true"` // ARN of the IAM role that Amazon Kinesis Analytics can assume to read the // Amazon S3 object on your behalf to populate the in-application reference // table. // // ReferenceRoleARN is a required field ReferenceRoleARN *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s S3ReferenceDataSourceDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s S3ReferenceDataSourceDescription) GoString() string { return s.String() } // Describes the S3 bucket name, object key name, and IAM role that Amazon Kinesis // Analytics can assume to read the Amazon S3 object on your behalf and populate // the in-application reference table. type S3ReferenceDataSourceUpdate struct { _ struct{} `type:"structure"` // Amazon Resource Name (ARN) of the S3 bucket. BucketARNUpdate *string `min:"1" type:"string"` // Object key name. FileKeyUpdate *string `type:"string"` // ARN of the IAM role that Amazon Kinesis Analytics can assume to read the // Amazon S3 object and populate the in-application. ReferenceRoleARNUpdate *string `min:"1" type:"string"` } // String returns the string representation func (s S3ReferenceDataSourceUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s S3ReferenceDataSourceUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3ReferenceDataSourceUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3ReferenceDataSourceUpdate"} if s.BucketARNUpdate != nil && len(*s.BucketARNUpdate) < 1 { invalidParams.Add(request.NewErrParamMinLen("BucketARNUpdate", 1)) } if s.ReferenceRoleARNUpdate != nil && len(*s.ReferenceRoleARNUpdate) < 1 { invalidParams.Add(request.NewErrParamMinLen("ReferenceRoleARNUpdate", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the format of the data in the streaming source, and how each data // element maps to corresponding columns created in the in-application stream. type SourceSchema struct { _ struct{} `type:"structure"` // A list of RecordColumn objects. // // RecordColumns is a required field RecordColumns []*RecordColumn `min:"1" type:"list" required:"true"` // Specifies the encoding of the records in the streaming source. For example, // UTF-8. RecordEncoding *string `type:"string"` // Specifies the format of the records on the streaming source. // // RecordFormat is a required field RecordFormat *RecordFormat `type:"structure" required:"true"` } // String returns the string representation func (s SourceSchema) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SourceSchema) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SourceSchema) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SourceSchema"} if s.RecordColumns == nil { invalidParams.Add(request.NewErrParamRequired("RecordColumns")) } if s.RecordColumns != nil && len(s.RecordColumns) < 1 { invalidParams.Add(request.NewErrParamMinLen("RecordColumns", 1)) } if s.RecordFormat == nil { invalidParams.Add(request.NewErrParamRequired("RecordFormat")) } if s.RecordColumns != nil { for i, v := range s.RecordColumns { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RecordColumns", i), err.(request.ErrInvalidParams)) } } } if s.RecordFormat != nil { if err := s.RecordFormat.Validate(); err != nil { invalidParams.AddNested("RecordFormat", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type StartApplicationInput struct { _ struct{} `type:"structure"` // Name of the application. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // Identifies the specific input, by ID, that the application starts consuming. // Amazon Kinesis Analytics starts reading the streaming source associated with // the input. You can also specify where in the streaming source you want Amazon // Kinesis Analytics to start reading. // // InputConfigurations is a required field InputConfigurations []*InputConfiguration `type:"list" required:"true"` } // String returns the string representation func (s StartApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartApplicationInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.InputConfigurations == nil { invalidParams.Add(request.NewErrParamRequired("InputConfigurations")) } if s.InputConfigurations != nil { for i, v := range s.InputConfigurations { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputConfigurations", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type StartApplicationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s StartApplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartApplicationOutput) GoString() string { return s.String() } type StopApplicationInput struct { _ struct{} `type:"structure"` // Name of the running application to stop. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s StopApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StopApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StopApplicationInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type StopApplicationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s StopApplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopApplicationOutput) GoString() string { return s.String() } type UpdateApplicationInput struct { _ struct{} `type:"structure"` // Name of the Kinesis Analytics application to update. // // ApplicationName is a required field ApplicationName *string `min:"1" type:"string" required:"true"` // Describes application updates. // // ApplicationUpdate is a required field ApplicationUpdate *ApplicationUpdate `type:"structure" required:"true"` // The current application version ID. You can use the DescribeApplication operation // to get this value. // // CurrentApplicationVersionId is a required field CurrentApplicationVersionId *int64 `min:"1" type:"long" required:"true"` } // String returns the string representation func (s UpdateApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationInput"} if s.ApplicationName == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationName")) } if s.ApplicationName != nil && len(*s.ApplicationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1)) } if s.ApplicationUpdate == nil { invalidParams.Add(request.NewErrParamRequired("ApplicationUpdate")) } if s.CurrentApplicationVersionId == nil { invalidParams.Add(request.NewErrParamRequired("CurrentApplicationVersionId")) } if s.CurrentApplicationVersionId != nil && *s.CurrentApplicationVersionId < 1 { invalidParams.Add(request.NewErrParamMinValue("CurrentApplicationVersionId", 1)) } if s.ApplicationUpdate != nil { if err := s.ApplicationUpdate.Validate(); err != nil { invalidParams.AddNested("ApplicationUpdate", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateApplicationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateApplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateApplicationOutput) GoString() string { return s.String() } const ( // ApplicationStatusDeleting is a ApplicationStatus enum value ApplicationStatusDeleting = "DELETING" // ApplicationStatusStarting is a ApplicationStatus enum value ApplicationStatusStarting = "STARTING" // ApplicationStatusStopping is a ApplicationStatus enum value ApplicationStatusStopping = "STOPPING" // ApplicationStatusReady is a ApplicationStatus enum value ApplicationStatusReady = "READY" // ApplicationStatusRunning is a ApplicationStatus enum value ApplicationStatusRunning = "RUNNING" // ApplicationStatusUpdating is a ApplicationStatus enum value ApplicationStatusUpdating = "UPDATING" ) const ( // InputStartingPositionNow is a InputStartingPosition enum value InputStartingPositionNow = "NOW" // InputStartingPositionTrimHorizon is a InputStartingPosition enum value InputStartingPositionTrimHorizon = "TRIM_HORIZON" // InputStartingPositionLastStoppedPoint is a InputStartingPosition enum value InputStartingPositionLastStoppedPoint = "LAST_STOPPED_POINT" ) const ( // RecordFormatTypeJson is a RecordFormatType enum value RecordFormatTypeJson = "JSON" // RecordFormatTypeCsv is a RecordFormatType enum value RecordFormatTypeCsv = "CSV" ) aws-sdk-go-1.4.22/service/kinesisanalytics/examples_test.go000066400000000000000000000453511300374646400240140ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package kinesisanalytics_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/kinesisanalytics" ) var _ time.Duration var _ bytes.Buffer func ExampleKinesisAnalytics_AddApplicationInput() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesisanalytics.New(sess) params := &kinesisanalytics.AddApplicationInputInput{ ApplicationName: aws.String("ApplicationName"), // Required CurrentApplicationVersionId: aws.Int64(1), // Required Input: &kinesisanalytics.Input{ // Required InputSchema: &kinesisanalytics.SourceSchema{ // Required RecordColumns: []*kinesisanalytics.RecordColumn{ // Required { // Required Name: aws.String("RecordColumnName"), // Required SqlType: aws.String("RecordColumnSqlType"), // Required Mapping: aws.String("RecordColumnMapping"), }, // More values... }, RecordFormat: &kinesisanalytics.RecordFormat{ // Required RecordFormatType: aws.String("RecordFormatType"), // Required MappingParameters: &kinesisanalytics.MappingParameters{ CSVMappingParameters: &kinesisanalytics.CSVMappingParameters{ RecordColumnDelimiter: aws.String("RecordColumnDelimiter"), // Required RecordRowDelimiter: aws.String("RecordRowDelimiter"), // Required }, JSONMappingParameters: &kinesisanalytics.JSONMappingParameters{ RecordRowPath: aws.String("RecordRowPath"), // Required }, }, }, RecordEncoding: aws.String("RecordEncoding"), }, NamePrefix: aws.String("InAppStreamName"), // Required InputParallelism: &kinesisanalytics.InputParallelism{ Count: aws.Int64(1), }, KinesisFirehoseInput: &kinesisanalytics.KinesisFirehoseInput{ ResourceARN: aws.String("ResourceARN"), // Required RoleARN: aws.String("RoleARN"), // Required }, KinesisStreamsInput: &kinesisanalytics.KinesisStreamsInput{ ResourceARN: aws.String("ResourceARN"), // Required RoleARN: aws.String("RoleARN"), // Required }, }, } resp, err := svc.AddApplicationInput(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesisAnalytics_AddApplicationOutput() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesisanalytics.New(sess) params := &kinesisanalytics.AddApplicationOutputInput{ ApplicationName: aws.String("ApplicationName"), // Required CurrentApplicationVersionId: aws.Int64(1), // Required Output: &kinesisanalytics.Output{ // Required DestinationSchema: &kinesisanalytics.DestinationSchema{ // Required RecordFormatType: aws.String("RecordFormatType"), }, Name: aws.String("InAppStreamName"), // Required KinesisFirehoseOutput: &kinesisanalytics.KinesisFirehoseOutput{ ResourceARN: aws.String("ResourceARN"), // Required RoleARN: aws.String("RoleARN"), // Required }, KinesisStreamsOutput: &kinesisanalytics.KinesisStreamsOutput{ ResourceARN: aws.String("ResourceARN"), // Required RoleARN: aws.String("RoleARN"), // Required }, }, } resp, err := svc.AddApplicationOutput(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesisAnalytics_AddApplicationReferenceDataSource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesisanalytics.New(sess) params := &kinesisanalytics.AddApplicationReferenceDataSourceInput{ ApplicationName: aws.String("ApplicationName"), // Required CurrentApplicationVersionId: aws.Int64(1), // Required ReferenceDataSource: &kinesisanalytics.ReferenceDataSource{ // Required ReferenceSchema: &kinesisanalytics.SourceSchema{ // Required RecordColumns: []*kinesisanalytics.RecordColumn{ // Required { // Required Name: aws.String("RecordColumnName"), // Required SqlType: aws.String("RecordColumnSqlType"), // Required Mapping: aws.String("RecordColumnMapping"), }, // More values... }, RecordFormat: &kinesisanalytics.RecordFormat{ // Required RecordFormatType: aws.String("RecordFormatType"), // Required MappingParameters: &kinesisanalytics.MappingParameters{ CSVMappingParameters: &kinesisanalytics.CSVMappingParameters{ RecordColumnDelimiter: aws.String("RecordColumnDelimiter"), // Required RecordRowDelimiter: aws.String("RecordRowDelimiter"), // Required }, JSONMappingParameters: &kinesisanalytics.JSONMappingParameters{ RecordRowPath: aws.String("RecordRowPath"), // Required }, }, }, RecordEncoding: aws.String("RecordEncoding"), }, TableName: aws.String("InAppTableName"), // Required S3ReferenceDataSource: &kinesisanalytics.S3ReferenceDataSource{ BucketARN: aws.String("BucketARN"), // Required FileKey: aws.String("FileKey"), // Required ReferenceRoleARN: aws.String("RoleARN"), // Required }, }, } resp, err := svc.AddApplicationReferenceDataSource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesisAnalytics_CreateApplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesisanalytics.New(sess) params := &kinesisanalytics.CreateApplicationInput{ ApplicationName: aws.String("ApplicationName"), // Required ApplicationCode: aws.String("ApplicationCode"), ApplicationDescription: aws.String("ApplicationDescription"), Inputs: []*kinesisanalytics.Input{ { // Required InputSchema: &kinesisanalytics.SourceSchema{ // Required RecordColumns: []*kinesisanalytics.RecordColumn{ // Required { // Required Name: aws.String("RecordColumnName"), // Required SqlType: aws.String("RecordColumnSqlType"), // Required Mapping: aws.String("RecordColumnMapping"), }, // More values... }, RecordFormat: &kinesisanalytics.RecordFormat{ // Required RecordFormatType: aws.String("RecordFormatType"), // Required MappingParameters: &kinesisanalytics.MappingParameters{ CSVMappingParameters: &kinesisanalytics.CSVMappingParameters{ RecordColumnDelimiter: aws.String("RecordColumnDelimiter"), // Required RecordRowDelimiter: aws.String("RecordRowDelimiter"), // Required }, JSONMappingParameters: &kinesisanalytics.JSONMappingParameters{ RecordRowPath: aws.String("RecordRowPath"), // Required }, }, }, RecordEncoding: aws.String("RecordEncoding"), }, NamePrefix: aws.String("InAppStreamName"), // Required InputParallelism: &kinesisanalytics.InputParallelism{ Count: aws.Int64(1), }, KinesisFirehoseInput: &kinesisanalytics.KinesisFirehoseInput{ ResourceARN: aws.String("ResourceARN"), // Required RoleARN: aws.String("RoleARN"), // Required }, KinesisStreamsInput: &kinesisanalytics.KinesisStreamsInput{ ResourceARN: aws.String("ResourceARN"), // Required RoleARN: aws.String("RoleARN"), // Required }, }, // More values... }, Outputs: []*kinesisanalytics.Output{ { // Required DestinationSchema: &kinesisanalytics.DestinationSchema{ // Required RecordFormatType: aws.String("RecordFormatType"), }, Name: aws.String("InAppStreamName"), // Required KinesisFirehoseOutput: &kinesisanalytics.KinesisFirehoseOutput{ ResourceARN: aws.String("ResourceARN"), // Required RoleARN: aws.String("RoleARN"), // Required }, KinesisStreamsOutput: &kinesisanalytics.KinesisStreamsOutput{ ResourceARN: aws.String("ResourceARN"), // Required RoleARN: aws.String("RoleARN"), // Required }, }, // More values... }, } resp, err := svc.CreateApplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesisAnalytics_DeleteApplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesisanalytics.New(sess) params := &kinesisanalytics.DeleteApplicationInput{ ApplicationName: aws.String("ApplicationName"), // Required CreateTimestamp: aws.Time(time.Now()), // Required } resp, err := svc.DeleteApplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesisAnalytics_DeleteApplicationOutput() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesisanalytics.New(sess) params := &kinesisanalytics.DeleteApplicationOutputInput{ ApplicationName: aws.String("ApplicationName"), // Required CurrentApplicationVersionId: aws.Int64(1), // Required OutputId: aws.String("Id"), // Required } resp, err := svc.DeleteApplicationOutput(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesisAnalytics_DeleteApplicationReferenceDataSource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesisanalytics.New(sess) params := &kinesisanalytics.DeleteApplicationReferenceDataSourceInput{ ApplicationName: aws.String("ApplicationName"), // Required CurrentApplicationVersionId: aws.Int64(1), // Required ReferenceId: aws.String("Id"), // Required } resp, err := svc.DeleteApplicationReferenceDataSource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesisAnalytics_DescribeApplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesisanalytics.New(sess) params := &kinesisanalytics.DescribeApplicationInput{ ApplicationName: aws.String("ApplicationName"), // Required } resp, err := svc.DescribeApplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesisAnalytics_DiscoverInputSchema() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesisanalytics.New(sess) params := &kinesisanalytics.DiscoverInputSchemaInput{ InputStartingPositionConfiguration: &kinesisanalytics.InputStartingPositionConfiguration{ // Required InputStartingPosition: aws.String("InputStartingPosition"), }, ResourceARN: aws.String("ResourceARN"), // Required RoleARN: aws.String("RoleARN"), // Required } resp, err := svc.DiscoverInputSchema(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesisAnalytics_ListApplications() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesisanalytics.New(sess) params := &kinesisanalytics.ListApplicationsInput{ ExclusiveStartApplicationName: aws.String("ApplicationName"), Limit: aws.Int64(1), } resp, err := svc.ListApplications(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesisAnalytics_StartApplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesisanalytics.New(sess) params := &kinesisanalytics.StartApplicationInput{ ApplicationName: aws.String("ApplicationName"), // Required InputConfigurations: []*kinesisanalytics.InputConfiguration{ // Required { // Required Id: aws.String("Id"), // Required InputStartingPositionConfiguration: &kinesisanalytics.InputStartingPositionConfiguration{ // Required InputStartingPosition: aws.String("InputStartingPosition"), }, }, // More values... }, } resp, err := svc.StartApplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesisAnalytics_StopApplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesisanalytics.New(sess) params := &kinesisanalytics.StopApplicationInput{ ApplicationName: aws.String("ApplicationName"), // Required } resp, err := svc.StopApplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKinesisAnalytics_UpdateApplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kinesisanalytics.New(sess) params := &kinesisanalytics.UpdateApplicationInput{ ApplicationName: aws.String("ApplicationName"), // Required ApplicationUpdate: &kinesisanalytics.ApplicationUpdate{ // Required ApplicationCodeUpdate: aws.String("ApplicationCode"), InputUpdates: []*kinesisanalytics.InputUpdate{ { // Required InputId: aws.String("Id"), // Required InputParallelismUpdate: &kinesisanalytics.InputParallelismUpdate{ CountUpdate: aws.Int64(1), }, InputSchemaUpdate: &kinesisanalytics.InputSchemaUpdate{ RecordColumnUpdates: []*kinesisanalytics.RecordColumn{ { // Required Name: aws.String("RecordColumnName"), // Required SqlType: aws.String("RecordColumnSqlType"), // Required Mapping: aws.String("RecordColumnMapping"), }, // More values... }, RecordEncodingUpdate: aws.String("RecordEncoding"), RecordFormatUpdate: &kinesisanalytics.RecordFormat{ RecordFormatType: aws.String("RecordFormatType"), // Required MappingParameters: &kinesisanalytics.MappingParameters{ CSVMappingParameters: &kinesisanalytics.CSVMappingParameters{ RecordColumnDelimiter: aws.String("RecordColumnDelimiter"), // Required RecordRowDelimiter: aws.String("RecordRowDelimiter"), // Required }, JSONMappingParameters: &kinesisanalytics.JSONMappingParameters{ RecordRowPath: aws.String("RecordRowPath"), // Required }, }, }, }, KinesisFirehoseInputUpdate: &kinesisanalytics.KinesisFirehoseInputUpdate{ ResourceARNUpdate: aws.String("ResourceARN"), RoleARNUpdate: aws.String("RoleARN"), }, KinesisStreamsInputUpdate: &kinesisanalytics.KinesisStreamsInputUpdate{ ResourceARNUpdate: aws.String("ResourceARN"), RoleARNUpdate: aws.String("RoleARN"), }, NamePrefixUpdate: aws.String("InAppStreamName"), }, // More values... }, OutputUpdates: []*kinesisanalytics.OutputUpdate{ { // Required OutputId: aws.String("Id"), // Required DestinationSchemaUpdate: &kinesisanalytics.DestinationSchema{ RecordFormatType: aws.String("RecordFormatType"), }, KinesisFirehoseOutputUpdate: &kinesisanalytics.KinesisFirehoseOutputUpdate{ ResourceARNUpdate: aws.String("ResourceARN"), RoleARNUpdate: aws.String("RoleARN"), }, KinesisStreamsOutputUpdate: &kinesisanalytics.KinesisStreamsOutputUpdate{ ResourceARNUpdate: aws.String("ResourceARN"), RoleARNUpdate: aws.String("RoleARN"), }, NameUpdate: aws.String("InAppStreamName"), }, // More values... }, ReferenceDataSourceUpdates: []*kinesisanalytics.ReferenceDataSourceUpdate{ { // Required ReferenceId: aws.String("Id"), // Required ReferenceSchemaUpdate: &kinesisanalytics.SourceSchema{ RecordColumns: []*kinesisanalytics.RecordColumn{ // Required { // Required Name: aws.String("RecordColumnName"), // Required SqlType: aws.String("RecordColumnSqlType"), // Required Mapping: aws.String("RecordColumnMapping"), }, // More values... }, RecordFormat: &kinesisanalytics.RecordFormat{ // Required RecordFormatType: aws.String("RecordFormatType"), // Required MappingParameters: &kinesisanalytics.MappingParameters{ CSVMappingParameters: &kinesisanalytics.CSVMappingParameters{ RecordColumnDelimiter: aws.String("RecordColumnDelimiter"), // Required RecordRowDelimiter: aws.String("RecordRowDelimiter"), // Required }, JSONMappingParameters: &kinesisanalytics.JSONMappingParameters{ RecordRowPath: aws.String("RecordRowPath"), // Required }, }, }, RecordEncoding: aws.String("RecordEncoding"), }, S3ReferenceDataSourceUpdate: &kinesisanalytics.S3ReferenceDataSourceUpdate{ BucketARNUpdate: aws.String("BucketARN"), FileKeyUpdate: aws.String("FileKey"), ReferenceRoleARNUpdate: aws.String("RoleARN"), }, TableNameUpdate: aws.String("InAppTableName"), }, // More values... }, }, CurrentApplicationVersionId: aws.Int64(1), // Required } resp, err := svc.UpdateApplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/kinesisanalytics/kinesisanalyticsiface/000077500000000000000000000000001300374646400251455ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/kinesisanalytics/kinesisanalyticsiface/interface.go000066400000000000000000000133041300374646400274350ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package kinesisanalyticsiface provides an interface to enable mocking the Amazon Kinesis Analytics service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package kinesisanalyticsiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/kinesisanalytics" ) // KinesisAnalyticsAPI provides an interface to enable mocking the // kinesisanalytics.KinesisAnalytics service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Kinesis Analytics. // func myFunc(svc kinesisanalyticsiface.KinesisAnalyticsAPI) bool { // // Make svc.AddApplicationInput request // } // // func main() { // sess := session.New() // svc := kinesisanalytics.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockKinesisAnalyticsClient struct { // kinesisanalyticsiface.KinesisAnalyticsAPI // } // func (m *mockKinesisAnalyticsClient) AddApplicationInput(input *kinesisanalytics.AddApplicationInputInput) (*kinesisanalytics.AddApplicationInputOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockKinesisAnalyticsClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type KinesisAnalyticsAPI interface { AddApplicationInputRequest(*kinesisanalytics.AddApplicationInputInput) (*request.Request, *kinesisanalytics.AddApplicationInputOutput) AddApplicationInput(*kinesisanalytics.AddApplicationInputInput) (*kinesisanalytics.AddApplicationInputOutput, error) AddApplicationOutputRequest(*kinesisanalytics.AddApplicationOutputInput) (*request.Request, *kinesisanalytics.AddApplicationOutputOutput) AddApplicationOutput(*kinesisanalytics.AddApplicationOutputInput) (*kinesisanalytics.AddApplicationOutputOutput, error) AddApplicationReferenceDataSourceRequest(*kinesisanalytics.AddApplicationReferenceDataSourceInput) (*request.Request, *kinesisanalytics.AddApplicationReferenceDataSourceOutput) AddApplicationReferenceDataSource(*kinesisanalytics.AddApplicationReferenceDataSourceInput) (*kinesisanalytics.AddApplicationReferenceDataSourceOutput, error) CreateApplicationRequest(*kinesisanalytics.CreateApplicationInput) (*request.Request, *kinesisanalytics.CreateApplicationOutput) CreateApplication(*kinesisanalytics.CreateApplicationInput) (*kinesisanalytics.CreateApplicationOutput, error) DeleteApplicationRequest(*kinesisanalytics.DeleteApplicationInput) (*request.Request, *kinesisanalytics.DeleteApplicationOutput) DeleteApplication(*kinesisanalytics.DeleteApplicationInput) (*kinesisanalytics.DeleteApplicationOutput, error) DeleteApplicationOutputRequest(*kinesisanalytics.DeleteApplicationOutputInput) (*request.Request, *kinesisanalytics.DeleteApplicationOutputOutput) DeleteApplicationOutput(*kinesisanalytics.DeleteApplicationOutputInput) (*kinesisanalytics.DeleteApplicationOutputOutput, error) DeleteApplicationReferenceDataSourceRequest(*kinesisanalytics.DeleteApplicationReferenceDataSourceInput) (*request.Request, *kinesisanalytics.DeleteApplicationReferenceDataSourceOutput) DeleteApplicationReferenceDataSource(*kinesisanalytics.DeleteApplicationReferenceDataSourceInput) (*kinesisanalytics.DeleteApplicationReferenceDataSourceOutput, error) DescribeApplicationRequest(*kinesisanalytics.DescribeApplicationInput) (*request.Request, *kinesisanalytics.DescribeApplicationOutput) DescribeApplication(*kinesisanalytics.DescribeApplicationInput) (*kinesisanalytics.DescribeApplicationOutput, error) DiscoverInputSchemaRequest(*kinesisanalytics.DiscoverInputSchemaInput) (*request.Request, *kinesisanalytics.DiscoverInputSchemaOutput) DiscoverInputSchema(*kinesisanalytics.DiscoverInputSchemaInput) (*kinesisanalytics.DiscoverInputSchemaOutput, error) ListApplicationsRequest(*kinesisanalytics.ListApplicationsInput) (*request.Request, *kinesisanalytics.ListApplicationsOutput) ListApplications(*kinesisanalytics.ListApplicationsInput) (*kinesisanalytics.ListApplicationsOutput, error) StartApplicationRequest(*kinesisanalytics.StartApplicationInput) (*request.Request, *kinesisanalytics.StartApplicationOutput) StartApplication(*kinesisanalytics.StartApplicationInput) (*kinesisanalytics.StartApplicationOutput, error) StopApplicationRequest(*kinesisanalytics.StopApplicationInput) (*request.Request, *kinesisanalytics.StopApplicationOutput) StopApplication(*kinesisanalytics.StopApplicationInput) (*kinesisanalytics.StopApplicationOutput, error) UpdateApplicationRequest(*kinesisanalytics.UpdateApplicationInput) (*request.Request, *kinesisanalytics.UpdateApplicationOutput) UpdateApplication(*kinesisanalytics.UpdateApplicationInput) (*kinesisanalytics.UpdateApplicationOutput, error) } var _ KinesisAnalyticsAPI = (*kinesisanalytics.KinesisAnalytics)(nil) aws-sdk-go-1.4.22/service/kinesisanalytics/service.go000066400000000000000000000055171300374646400225770ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package kinesisanalytics import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // KinesisAnalytics is a client for Kinesis Analytics. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type KinesisAnalytics struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "kinesisanalytics" // New creates a new instance of the KinesisAnalytics client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a KinesisAnalytics client from just a session. // svc := kinesisanalytics.New(mySession) // // // Create a KinesisAnalytics client with additional configuration // svc := kinesisanalytics.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *KinesisAnalytics { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *KinesisAnalytics { svc := &KinesisAnalytics{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-08-14", JSONVersion: "1.1", TargetPrefix: "KinesisAnalytics_20150814", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a KinesisAnalytics operation and runs any // custom request initialization. func (c *KinesisAnalytics) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/kms/000077500000000000000000000000001300374646400160155ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/kms/api.go000066400000000000000000006257561300374646400171420ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package kms provides a client for AWS Key Management Service. package kms import ( "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opCancelKeyDeletion = "CancelKeyDeletion" // CancelKeyDeletionRequest generates a "aws/request.Request" representing the // client's request for the CancelKeyDeletion operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CancelKeyDeletion for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CancelKeyDeletion method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CancelKeyDeletionRequest method. // req, resp := client.CancelKeyDeletionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) CancelKeyDeletionRequest(input *CancelKeyDeletionInput) (req *request.Request, output *CancelKeyDeletionOutput) { op := &request.Operation{ Name: opCancelKeyDeletion, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CancelKeyDeletionInput{} } req = c.newRequest(op, input, output) output = &CancelKeyDeletionOutput{} req.Data = output return } // CancelKeyDeletion API operation for AWS Key Management Service. // // Cancels the deletion of a customer master key (CMK). When this operation // is successful, the CMK is set to the Disabled state. To enable a CMK, use // EnableKey. // // For more information about scheduling and canceling deletion of a CMK, see // Deleting Customer Master Keys (http://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html) // in the AWS Key Management Service Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation CancelKeyDeletion for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) CancelKeyDeletion(input *CancelKeyDeletionInput) (*CancelKeyDeletionOutput, error) { req, out := c.CancelKeyDeletionRequest(input) err := req.Send() return out, err } const opCreateAlias = "CreateAlias" // CreateAliasRequest generates a "aws/request.Request" representing the // client's request for the CreateAlias operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateAlias for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateAlias method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateAliasRequest method. // req, resp := client.CreateAliasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) CreateAliasRequest(input *CreateAliasInput) (req *request.Request, output *CreateAliasOutput) { op := &request.Operation{ Name: opCreateAlias, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateAliasInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CreateAliasOutput{} req.Data = output return } // CreateAlias API operation for AWS Key Management Service. // // Creates a display name for a customer master key. An alias can be used to // identify a key and should be unique. The console enforces a one-to-one mapping // between the alias and a key. An alias name can contain only alphanumeric // characters, forward slashes (/), underscores (_), and dashes (-). An alias // must start with the word "alias" followed by a forward slash (alias/). An // alias that begins with "aws" after the forward slash (alias/aws...) is reserved // by Amazon Web Services (AWS). // // The alias and the key it is mapped to must be in the same AWS account and // the same region. // // To map an alias to a different key, call UpdateAlias. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation CreateAlias for usage and error information. // // Returned Error Codes: // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * AlreadyExistsException // The request was rejected because it attempted to create a resource that already // exists. // // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * InvalidAliasNameException // The request was rejected because the specified alias name is not valid. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * LimitExceededException // The request was rejected because a limit was exceeded. For more information, // see Limits (http://docs.aws.amazon.com/kms/latest/developerguide/limits.html) // in the AWS Key Management Service Developer Guide. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) CreateAlias(input *CreateAliasInput) (*CreateAliasOutput, error) { req, out := c.CreateAliasRequest(input) err := req.Send() return out, err } const opCreateGrant = "CreateGrant" // CreateGrantRequest generates a "aws/request.Request" representing the // client's request for the CreateGrant operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateGrant for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateGrant method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateGrantRequest method. // req, resp := client.CreateGrantRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) CreateGrantRequest(input *CreateGrantInput) (req *request.Request, output *CreateGrantOutput) { op := &request.Operation{ Name: opCreateGrant, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateGrantInput{} } req = c.newRequest(op, input, output) output = &CreateGrantOutput{} req.Data = output return } // CreateGrant API operation for AWS Key Management Service. // // Adds a grant to a key to specify who can use the key and under what conditions. // Grants are alternate permission mechanisms to key policies. // // For more information about grants, see Grants (http://docs.aws.amazon.com/kms/latest/developerguide/grants.html) // in the AWS Key Management Service Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation CreateGrant for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * DisabledException // The request was rejected because the specified CMK is not enabled. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidGrantTokenException // The request was rejected because the specified grant token is not valid. // // * LimitExceededException // The request was rejected because a limit was exceeded. For more information, // see Limits (http://docs.aws.amazon.com/kms/latest/developerguide/limits.html) // in the AWS Key Management Service Developer Guide. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) CreateGrant(input *CreateGrantInput) (*CreateGrantOutput, error) { req, out := c.CreateGrantRequest(input) err := req.Send() return out, err } const opCreateKey = "CreateKey" // CreateKeyRequest generates a "aws/request.Request" representing the // client's request for the CreateKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateKeyRequest method. // req, resp := client.CreateKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) CreateKeyRequest(input *CreateKeyInput) (req *request.Request, output *CreateKeyOutput) { op := &request.Operation{ Name: opCreateKey, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateKeyInput{} } req = c.newRequest(op, input, output) output = &CreateKeyOutput{} req.Data = output return } // CreateKey API operation for AWS Key Management Service. // // Creates a customer master key (CMK). // // You can use a CMK to encrypt small amounts of data (4 KiB or less) directly, // but CMKs are more commonly used to encrypt data encryption keys (DEKs), which // are used to encrypt raw data. For more information about DEKs and the difference // between CMKs and DEKs, see the following: // // * The GenerateDataKey operation // // * AWS Key Management Service Concepts (http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html) // in the AWS Key Management Service Developer Guide // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation CreateKey for usage and error information. // // Returned Error Codes: // * MalformedPolicyDocumentException // The request was rejected because the specified policy is not syntactically // or semantically correct. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * UnsupportedOperationException // The request was rejected because a specified parameter is not supported or // a specified resource is not valid for this operation. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * LimitExceededException // The request was rejected because a limit was exceeded. For more information, // see Limits (http://docs.aws.amazon.com/kms/latest/developerguide/limits.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) CreateKey(input *CreateKeyInput) (*CreateKeyOutput, error) { req, out := c.CreateKeyRequest(input) err := req.Send() return out, err } const opDecrypt = "Decrypt" // DecryptRequest generates a "aws/request.Request" representing the // client's request for the Decrypt operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See Decrypt for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the Decrypt method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DecryptRequest method. // req, resp := client.DecryptRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) DecryptRequest(input *DecryptInput) (req *request.Request, output *DecryptOutput) { op := &request.Operation{ Name: opDecrypt, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DecryptInput{} } req = c.newRequest(op, input, output) output = &DecryptOutput{} req.Data = output return } // Decrypt API operation for AWS Key Management Service. // // Decrypts ciphertext. Ciphertext is plaintext that has been previously encrypted // by using any of the following functions: // // * GenerateDataKey // // * GenerateDataKeyWithoutPlaintext // // * Encrypt // // Note that if a caller has been granted access permissions to all keys (through, // for example, IAM user policies that grant Decrypt permission on all resources), // then ciphertext encrypted by using keys in other accounts where the key grants // access to the caller can be decrypted. To remedy this, we recommend that // you do not grant Decrypt access in an IAM user policy. Instead grant Decrypt // access only in key policies. If you must grant Decrypt access in an IAM user // policy, you should scope the resource to specific keys or to specific trusted // accounts. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation Decrypt for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * DisabledException // The request was rejected because the specified CMK is not enabled. // // * InvalidCiphertextException // The request was rejected because the specified ciphertext has been corrupted // or is otherwise invalid. // // * KeyUnavailableException // The request was rejected because the specified CMK was not available. The // request can be retried. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InvalidGrantTokenException // The request was rejected because the specified grant token is not valid. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) Decrypt(input *DecryptInput) (*DecryptOutput, error) { req, out := c.DecryptRequest(input) err := req.Send() return out, err } const opDeleteAlias = "DeleteAlias" // DeleteAliasRequest generates a "aws/request.Request" representing the // client's request for the DeleteAlias operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteAlias for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteAlias method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteAliasRequest method. // req, resp := client.DeleteAliasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) DeleteAliasRequest(input *DeleteAliasInput) (req *request.Request, output *DeleteAliasOutput) { op := &request.Operation{ Name: opDeleteAlias, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteAliasInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteAliasOutput{} req.Data = output return } // DeleteAlias API operation for AWS Key Management Service. // // Deletes the specified alias. To map an alias to a different key, call UpdateAlias. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation DeleteAlias for usage and error information. // // Returned Error Codes: // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) DeleteAlias(input *DeleteAliasInput) (*DeleteAliasOutput, error) { req, out := c.DeleteAliasRequest(input) err := req.Send() return out, err } const opDeleteImportedKeyMaterial = "DeleteImportedKeyMaterial" // DeleteImportedKeyMaterialRequest generates a "aws/request.Request" representing the // client's request for the DeleteImportedKeyMaterial operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteImportedKeyMaterial for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteImportedKeyMaterial method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteImportedKeyMaterialRequest method. // req, resp := client.DeleteImportedKeyMaterialRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) DeleteImportedKeyMaterialRequest(input *DeleteImportedKeyMaterialInput) (req *request.Request, output *DeleteImportedKeyMaterialOutput) { op := &request.Operation{ Name: opDeleteImportedKeyMaterial, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteImportedKeyMaterialInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteImportedKeyMaterialOutput{} req.Data = output return } // DeleteImportedKeyMaterial API operation for AWS Key Management Service. // // Deletes key material that you previously imported and makes the specified // customer master key (CMK) unusable. For more information about importing // key material into AWS KMS, see Importing Key Material (http://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) // in the AWS Key Management Service Developer Guide. // // When the specified CMK is in the PendingDeletion state, this operation does // not change the CMK's state. Otherwise, it changes the CMK's state to PendingImport. // // After you delete key material, you can use ImportKeyMaterial to reimport // the same key material into the CMK. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation DeleteImportedKeyMaterial for usage and error information. // // Returned Error Codes: // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * UnsupportedOperationException // The request was rejected because a specified parameter is not supported or // a specified resource is not valid for this operation. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) DeleteImportedKeyMaterial(input *DeleteImportedKeyMaterialInput) (*DeleteImportedKeyMaterialOutput, error) { req, out := c.DeleteImportedKeyMaterialRequest(input) err := req.Send() return out, err } const opDescribeKey = "DescribeKey" // DescribeKeyRequest generates a "aws/request.Request" representing the // client's request for the DescribeKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeKeyRequest method. // req, resp := client.DescribeKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) DescribeKeyRequest(input *DescribeKeyInput) (req *request.Request, output *DescribeKeyOutput) { op := &request.Operation{ Name: opDescribeKey, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeKeyInput{} } req = c.newRequest(op, input, output) output = &DescribeKeyOutput{} req.Data = output return } // DescribeKey API operation for AWS Key Management Service. // // Provides detailed information about the specified customer master key. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation DescribeKey for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // func (c *KMS) DescribeKey(input *DescribeKeyInput) (*DescribeKeyOutput, error) { req, out := c.DescribeKeyRequest(input) err := req.Send() return out, err } const opDisableKey = "DisableKey" // DisableKeyRequest generates a "aws/request.Request" representing the // client's request for the DisableKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableKeyRequest method. // req, resp := client.DisableKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) DisableKeyRequest(input *DisableKeyInput) (req *request.Request, output *DisableKeyOutput) { op := &request.Operation{ Name: opDisableKey, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableKeyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DisableKeyOutput{} req.Data = output return } // DisableKey API operation for AWS Key Management Service. // // Sets the state of a customer master key (CMK) to disabled, thereby preventing // its use for cryptographic operations. For more information about how key // state affects the use of a CMK, see How Key State Affects the Use of a Customer // Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation DisableKey for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) DisableKey(input *DisableKeyInput) (*DisableKeyOutput, error) { req, out := c.DisableKeyRequest(input) err := req.Send() return out, err } const opDisableKeyRotation = "DisableKeyRotation" // DisableKeyRotationRequest generates a "aws/request.Request" representing the // client's request for the DisableKeyRotation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableKeyRotation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableKeyRotation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableKeyRotationRequest method. // req, resp := client.DisableKeyRotationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) DisableKeyRotationRequest(input *DisableKeyRotationInput) (req *request.Request, output *DisableKeyRotationOutput) { op := &request.Operation{ Name: opDisableKeyRotation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableKeyRotationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DisableKeyRotationOutput{} req.Data = output return } // DisableKeyRotation API operation for AWS Key Management Service. // // Disables rotation of the specified key. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation DisableKeyRotation for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * DisabledException // The request was rejected because the specified CMK is not enabled. // // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // // * UnsupportedOperationException // The request was rejected because a specified parameter is not supported or // a specified resource is not valid for this operation. // func (c *KMS) DisableKeyRotation(input *DisableKeyRotationInput) (*DisableKeyRotationOutput, error) { req, out := c.DisableKeyRotationRequest(input) err := req.Send() return out, err } const opEnableKey = "EnableKey" // EnableKeyRequest generates a "aws/request.Request" representing the // client's request for the EnableKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableKeyRequest method. // req, resp := client.EnableKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) EnableKeyRequest(input *EnableKeyInput) (req *request.Request, output *EnableKeyOutput) { op := &request.Operation{ Name: opEnableKey, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableKeyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &EnableKeyOutput{} req.Data = output return } // EnableKey API operation for AWS Key Management Service. // // Marks a key as enabled, thereby permitting its use. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation EnableKey for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * LimitExceededException // The request was rejected because a limit was exceeded. For more information, // see Limits (http://docs.aws.amazon.com/kms/latest/developerguide/limits.html) // in the AWS Key Management Service Developer Guide. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) EnableKey(input *EnableKeyInput) (*EnableKeyOutput, error) { req, out := c.EnableKeyRequest(input) err := req.Send() return out, err } const opEnableKeyRotation = "EnableKeyRotation" // EnableKeyRotationRequest generates a "aws/request.Request" representing the // client's request for the EnableKeyRotation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableKeyRotation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableKeyRotation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableKeyRotationRequest method. // req, resp := client.EnableKeyRotationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) EnableKeyRotationRequest(input *EnableKeyRotationInput) (req *request.Request, output *EnableKeyRotationOutput) { op := &request.Operation{ Name: opEnableKeyRotation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableKeyRotationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &EnableKeyRotationOutput{} req.Data = output return } // EnableKeyRotation API operation for AWS Key Management Service. // // Enables rotation of the specified customer master key. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation EnableKeyRotation for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * DisabledException // The request was rejected because the specified CMK is not enabled. // // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // // * UnsupportedOperationException // The request was rejected because a specified parameter is not supported or // a specified resource is not valid for this operation. // func (c *KMS) EnableKeyRotation(input *EnableKeyRotationInput) (*EnableKeyRotationOutput, error) { req, out := c.EnableKeyRotationRequest(input) err := req.Send() return out, err } const opEncrypt = "Encrypt" // EncryptRequest generates a "aws/request.Request" representing the // client's request for the Encrypt operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See Encrypt for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the Encrypt method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EncryptRequest method. // req, resp := client.EncryptRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) EncryptRequest(input *EncryptInput) (req *request.Request, output *EncryptOutput) { op := &request.Operation{ Name: opEncrypt, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EncryptInput{} } req = c.newRequest(op, input, output) output = &EncryptOutput{} req.Data = output return } // Encrypt API operation for AWS Key Management Service. // // Encrypts plaintext into ciphertext by using a customer master key. The Encrypt // function has two primary use cases: // // * You can encrypt up to 4 KB of arbitrary data such as an RSA key, a database // password, or other sensitive customer information. // // * If you are moving encrypted data from one region to another, you can // use this API to encrypt in the new region the plaintext data key that // was used to encrypt the data in the original region. This provides you // with an encrypted copy of the data key that can be decrypted in the new // region and used there to decrypt the encrypted data. // // Unless you are moving encrypted data from one region to another, you don't // use this function to encrypt a generated data key within a region. You retrieve // data keys already encrypted by calling the GenerateDataKey or GenerateDataKeyWithoutPlaintext // function. Data keys don't need to be encrypted again by calling Encrypt. // // If you want to encrypt data locally in your application, you can use the // GenerateDataKey function to return a plaintext data encryption key and a // copy of the key encrypted under the customer master key (CMK) of your choosing. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation Encrypt for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * DisabledException // The request was rejected because the specified CMK is not enabled. // // * KeyUnavailableException // The request was rejected because the specified CMK was not available. The // request can be retried. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InvalidKeyUsageException // The request was rejected because the specified KeySpec value is not valid. // // * InvalidGrantTokenException // The request was rejected because the specified grant token is not valid. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) Encrypt(input *EncryptInput) (*EncryptOutput, error) { req, out := c.EncryptRequest(input) err := req.Send() return out, err } const opGenerateDataKey = "GenerateDataKey" // GenerateDataKeyRequest generates a "aws/request.Request" representing the // client's request for the GenerateDataKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GenerateDataKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GenerateDataKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GenerateDataKeyRequest method. // req, resp := client.GenerateDataKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) GenerateDataKeyRequest(input *GenerateDataKeyInput) (req *request.Request, output *GenerateDataKeyOutput) { op := &request.Operation{ Name: opGenerateDataKey, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GenerateDataKeyInput{} } req = c.newRequest(op, input, output) output = &GenerateDataKeyOutput{} req.Data = output return } // GenerateDataKey API operation for AWS Key Management Service. // // Returns a data encryption key that you can use in your application to encrypt // data locally. // // You must specify the customer master key (CMK) under which to generate the // data key. You must also specify the length of the data key using either the // KeySpec or NumberOfBytes field. You must specify one field or the other, // but not both. For common key lengths (128-bit and 256-bit symmetric keys), // we recommend that you use KeySpec. // // This operation returns a plaintext copy of the data key in the Plaintext // field of the response, and an encrypted copy of the data key in the CiphertextBlob // field. The data key is encrypted under the CMK specified in the KeyId field // of the request. // // We recommend that you use the following pattern to encrypt data locally in // your application: // // Use this operation (GenerateDataKey) to retrieve a data encryption key. // // Use the plaintext data encryption key (returned in the Plaintext field of // the response) to encrypt data locally, then erase the plaintext data key // from memory. // // Store the encrypted data key (returned in the CiphertextBlob field of the // response) alongside the locally encrypted data. // // To decrypt data locally: // // Use the Decrypt operation to decrypt the encrypted data key into a plaintext // copy of the data key. // // Use the plaintext data key to decrypt data locally, then erase the plaintext // data key from memory. // // To return only an encrypted copy of the data key, use GenerateDataKeyWithoutPlaintext. // To return an arbitrary unpredictable byte string, use GenerateRandom. // // If you use the optional EncryptionContext field, you must store at least // enough information to be able to reconstruct the full encryption context // when you later send the ciphertext to the Decrypt operation. It is a good // practice to choose an encryption context that you can reconstruct on the // fly to better secure the ciphertext. For more information, see Encryption // Context (http://docs.aws.amazon.com/kms/latest/developerguide/encryption-context.html) // in the AWS Key Management Service Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation GenerateDataKey for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * DisabledException // The request was rejected because the specified CMK is not enabled. // // * KeyUnavailableException // The request was rejected because the specified CMK was not available. The // request can be retried. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InvalidKeyUsageException // The request was rejected because the specified KeySpec value is not valid. // // * InvalidGrantTokenException // The request was rejected because the specified grant token is not valid. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) GenerateDataKey(input *GenerateDataKeyInput) (*GenerateDataKeyOutput, error) { req, out := c.GenerateDataKeyRequest(input) err := req.Send() return out, err } const opGenerateDataKeyWithoutPlaintext = "GenerateDataKeyWithoutPlaintext" // GenerateDataKeyWithoutPlaintextRequest generates a "aws/request.Request" representing the // client's request for the GenerateDataKeyWithoutPlaintext operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GenerateDataKeyWithoutPlaintext for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GenerateDataKeyWithoutPlaintext method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GenerateDataKeyWithoutPlaintextRequest method. // req, resp := client.GenerateDataKeyWithoutPlaintextRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) GenerateDataKeyWithoutPlaintextRequest(input *GenerateDataKeyWithoutPlaintextInput) (req *request.Request, output *GenerateDataKeyWithoutPlaintextOutput) { op := &request.Operation{ Name: opGenerateDataKeyWithoutPlaintext, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GenerateDataKeyWithoutPlaintextInput{} } req = c.newRequest(op, input, output) output = &GenerateDataKeyWithoutPlaintextOutput{} req.Data = output return } // GenerateDataKeyWithoutPlaintext API operation for AWS Key Management Service. // // Returns a data encryption key encrypted under a customer master key (CMK). // This operation is identical to GenerateDataKey but returns only the encrypted // copy of the data key. // // This operation is useful in a system that has multiple components with different // degrees of trust. For example, consider a system that stores encrypted data // in containers. Each container stores the encrypted data and an encrypted // copy of the data key. One component of the system, called the control plane, // creates new containers. When it creates a new container, it uses this operation // (GenerateDataKeyWithoutPlaintext) to get an encrypted data key and then stores // it in the container. Later, a different component of the system, called the // data plane, puts encrypted data into the containers. To do this, it passes // the encrypted data key to the Decrypt operation, then uses the returned plaintext // data key to encrypt data, and finally stores the encrypted data in the container. // In this system, the control plane never sees the plaintext data key. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation GenerateDataKeyWithoutPlaintext for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * DisabledException // The request was rejected because the specified CMK is not enabled. // // * KeyUnavailableException // The request was rejected because the specified CMK was not available. The // request can be retried. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InvalidKeyUsageException // The request was rejected because the specified KeySpec value is not valid. // // * InvalidGrantTokenException // The request was rejected because the specified grant token is not valid. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) GenerateDataKeyWithoutPlaintext(input *GenerateDataKeyWithoutPlaintextInput) (*GenerateDataKeyWithoutPlaintextOutput, error) { req, out := c.GenerateDataKeyWithoutPlaintextRequest(input) err := req.Send() return out, err } const opGenerateRandom = "GenerateRandom" // GenerateRandomRequest generates a "aws/request.Request" representing the // client's request for the GenerateRandom operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GenerateRandom for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GenerateRandom method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GenerateRandomRequest method. // req, resp := client.GenerateRandomRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) GenerateRandomRequest(input *GenerateRandomInput) (req *request.Request, output *GenerateRandomOutput) { op := &request.Operation{ Name: opGenerateRandom, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GenerateRandomInput{} } req = c.newRequest(op, input, output) output = &GenerateRandomOutput{} req.Data = output return } // GenerateRandom API operation for AWS Key Management Service. // // Generates an unpredictable byte string. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation GenerateRandom for usage and error information. // // Returned Error Codes: // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // func (c *KMS) GenerateRandom(input *GenerateRandomInput) (*GenerateRandomOutput, error) { req, out := c.GenerateRandomRequest(input) err := req.Send() return out, err } const opGetKeyPolicy = "GetKeyPolicy" // GetKeyPolicyRequest generates a "aws/request.Request" representing the // client's request for the GetKeyPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetKeyPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetKeyPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetKeyPolicyRequest method. // req, resp := client.GetKeyPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) GetKeyPolicyRequest(input *GetKeyPolicyInput) (req *request.Request, output *GetKeyPolicyOutput) { op := &request.Operation{ Name: opGetKeyPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetKeyPolicyInput{} } req = c.newRequest(op, input, output) output = &GetKeyPolicyOutput{} req.Data = output return } // GetKeyPolicy API operation for AWS Key Management Service. // // Retrieves a policy attached to the specified key. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation GetKeyPolicy for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) GetKeyPolicy(input *GetKeyPolicyInput) (*GetKeyPolicyOutput, error) { req, out := c.GetKeyPolicyRequest(input) err := req.Send() return out, err } const opGetKeyRotationStatus = "GetKeyRotationStatus" // GetKeyRotationStatusRequest generates a "aws/request.Request" representing the // client's request for the GetKeyRotationStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetKeyRotationStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetKeyRotationStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetKeyRotationStatusRequest method. // req, resp := client.GetKeyRotationStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) GetKeyRotationStatusRequest(input *GetKeyRotationStatusInput) (req *request.Request, output *GetKeyRotationStatusOutput) { op := &request.Operation{ Name: opGetKeyRotationStatus, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetKeyRotationStatusInput{} } req = c.newRequest(op, input, output) output = &GetKeyRotationStatusOutput{} req.Data = output return } // GetKeyRotationStatus API operation for AWS Key Management Service. // // Retrieves a Boolean value that indicates whether key rotation is enabled // for the specified key. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation GetKeyRotationStatus for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // // * UnsupportedOperationException // The request was rejected because a specified parameter is not supported or // a specified resource is not valid for this operation. // func (c *KMS) GetKeyRotationStatus(input *GetKeyRotationStatusInput) (*GetKeyRotationStatusOutput, error) { req, out := c.GetKeyRotationStatusRequest(input) err := req.Send() return out, err } const opGetParametersForImport = "GetParametersForImport" // GetParametersForImportRequest generates a "aws/request.Request" representing the // client's request for the GetParametersForImport operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetParametersForImport for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetParametersForImport method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetParametersForImportRequest method. // req, resp := client.GetParametersForImportRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) GetParametersForImportRequest(input *GetParametersForImportInput) (req *request.Request, output *GetParametersForImportOutput) { op := &request.Operation{ Name: opGetParametersForImport, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetParametersForImportInput{} } req = c.newRequest(op, input, output) output = &GetParametersForImportOutput{} req.Data = output return } // GetParametersForImport API operation for AWS Key Management Service. // // Returns the items you need in order to import key material into AWS KMS from // your existing key management infrastructure. For more information about importing // key material into AWS KMS, see Importing Key Material (http://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) // in the AWS Key Management Service Developer Guide. // // You must specify the key ID of the customer master key (CMK) into which you // will import key material. This CMK's Origin must be EXTERNAL. You must also // specify the wrapping algorithm and type of wrapping key (public key) that // you will use to encrypt the key material. // // This operation returns a public key and an import token. Use the public key // to encrypt the key material. Store the import token to send with a subsequent // ImportKeyMaterial request. The public key and import token from the same // response must be used together. These items are valid for 24 hours, after // which they cannot be used for a subsequent ImportKeyMaterial request. To // retrieve new ones, send another GetParametersForImport request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation GetParametersForImport for usage and error information. // // Returned Error Codes: // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * UnsupportedOperationException // The request was rejected because a specified parameter is not supported or // a specified resource is not valid for this operation. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) GetParametersForImport(input *GetParametersForImportInput) (*GetParametersForImportOutput, error) { req, out := c.GetParametersForImportRequest(input) err := req.Send() return out, err } const opImportKeyMaterial = "ImportKeyMaterial" // ImportKeyMaterialRequest generates a "aws/request.Request" representing the // client's request for the ImportKeyMaterial operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ImportKeyMaterial for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ImportKeyMaterial method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ImportKeyMaterialRequest method. // req, resp := client.ImportKeyMaterialRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) ImportKeyMaterialRequest(input *ImportKeyMaterialInput) (req *request.Request, output *ImportKeyMaterialOutput) { op := &request.Operation{ Name: opImportKeyMaterial, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ImportKeyMaterialInput{} } req = c.newRequest(op, input, output) output = &ImportKeyMaterialOutput{} req.Data = output return } // ImportKeyMaterial API operation for AWS Key Management Service. // // Imports key material into an AWS KMS customer master key (CMK) from your // existing key management infrastructure. For more information about importing // key material into AWS KMS, see Importing Key Material (http://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) // in the AWS Key Management Service Developer Guide. // // You must specify the key ID of the CMK to import the key material into. This // CMK's Origin must be EXTERNAL. You must also send an import token and the // encrypted key material. Send the import token that you received in the same // GetParametersForImport response that contained the public key that you used // to encrypt the key material. You must also specify whether the key material // expires and if so, when. When the key material expires, AWS KMS deletes the // key material and the CMK becomes unusable. To use the CMK again, you can // reimport the same key material. If you set an expiration date, you can change // it only by reimporting the same key material and specifying a new expiration // date. // // When this operation is successful, the specified CMK's key state changes // to Enabled, and you can use the CMK. // // After you successfully import key material into a CMK, you can reimport the // same key material into that CMK, but you cannot import different key material. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation ImportKeyMaterial for usage and error information. // // Returned Error Codes: // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * UnsupportedOperationException // The request was rejected because a specified parameter is not supported or // a specified resource is not valid for this operation. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // // * InvalidCiphertextException // The request was rejected because the specified ciphertext has been corrupted // or is otherwise invalid. // // * IncorrectKeyMaterialException // The request was rejected because the provided key material is invalid or // is not the same key material that was previously imported into this customer // master key (CMK). // // * ExpiredImportTokenException // The request was rejected because the provided import token is expired. Use // GetParametersForImport to retrieve a new import token and public key, use // the new public key to encrypt the key material, and then try the request // again. // // * InvalidImportTokenException // The request was rejected because the provided import token is invalid or // is associated with a different customer master key (CMK). // func (c *KMS) ImportKeyMaterial(input *ImportKeyMaterialInput) (*ImportKeyMaterialOutput, error) { req, out := c.ImportKeyMaterialRequest(input) err := req.Send() return out, err } const opListAliases = "ListAliases" // ListAliasesRequest generates a "aws/request.Request" representing the // client's request for the ListAliases operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListAliases for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListAliases method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListAliasesRequest method. // req, resp := client.ListAliasesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) ListAliasesRequest(input *ListAliasesInput) (req *request.Request, output *ListAliasesOutput) { op := &request.Operation{ Name: opListAliases, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"NextMarker"}, LimitToken: "Limit", TruncationToken: "Truncated", }, } if input == nil { input = &ListAliasesInput{} } req = c.newRequest(op, input, output) output = &ListAliasesOutput{} req.Data = output return } // ListAliases API operation for AWS Key Management Service. // // Lists all of the key aliases in the account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation ListAliases for usage and error information. // // Returned Error Codes: // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InvalidMarkerException // The request was rejected because the marker that specifies where pagination // should next begin is not valid. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // func (c *KMS) ListAliases(input *ListAliasesInput) (*ListAliasesOutput, error) { req, out := c.ListAliasesRequest(input) err := req.Send() return out, err } // ListAliasesPages iterates over the pages of a ListAliases operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListAliases method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListAliases operation. // pageNum := 0 // err := client.ListAliasesPages(params, // func(page *ListAliasesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *KMS) ListAliasesPages(input *ListAliasesInput, fn func(p *ListAliasesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListAliasesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListAliasesOutput), lastPage) }) } const opListGrants = "ListGrants" // ListGrantsRequest generates a "aws/request.Request" representing the // client's request for the ListGrants operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListGrants for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListGrants method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListGrantsRequest method. // req, resp := client.ListGrantsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) ListGrantsRequest(input *ListGrantsInput) (req *request.Request, output *ListGrantsResponse) { op := &request.Operation{ Name: opListGrants, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"NextMarker"}, LimitToken: "Limit", TruncationToken: "Truncated", }, } if input == nil { input = &ListGrantsInput{} } req = c.newRequest(op, input, output) output = &ListGrantsResponse{} req.Data = output return } // ListGrants API operation for AWS Key Management Service. // // List the grants for a specified key. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation ListGrants for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InvalidMarkerException // The request was rejected because the marker that specifies where pagination // should next begin is not valid. // // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) ListGrants(input *ListGrantsInput) (*ListGrantsResponse, error) { req, out := c.ListGrantsRequest(input) err := req.Send() return out, err } // ListGrantsPages iterates over the pages of a ListGrants operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListGrants method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListGrants operation. // pageNum := 0 // err := client.ListGrantsPages(params, // func(page *ListGrantsResponse, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *KMS) ListGrantsPages(input *ListGrantsInput, fn func(p *ListGrantsResponse, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListGrantsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListGrantsResponse), lastPage) }) } const opListKeyPolicies = "ListKeyPolicies" // ListKeyPoliciesRequest generates a "aws/request.Request" representing the // client's request for the ListKeyPolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListKeyPolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListKeyPolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListKeyPoliciesRequest method. // req, resp := client.ListKeyPoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) ListKeyPoliciesRequest(input *ListKeyPoliciesInput) (req *request.Request, output *ListKeyPoliciesOutput) { op := &request.Operation{ Name: opListKeyPolicies, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"NextMarker"}, LimitToken: "Limit", TruncationToken: "Truncated", }, } if input == nil { input = &ListKeyPoliciesInput{} } req = c.newRequest(op, input, output) output = &ListKeyPoliciesOutput{} req.Data = output return } // ListKeyPolicies API operation for AWS Key Management Service. // // Retrieves a list of policies attached to a key. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation ListKeyPolicies for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) ListKeyPolicies(input *ListKeyPoliciesInput) (*ListKeyPoliciesOutput, error) { req, out := c.ListKeyPoliciesRequest(input) err := req.Send() return out, err } // ListKeyPoliciesPages iterates over the pages of a ListKeyPolicies operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListKeyPolicies method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListKeyPolicies operation. // pageNum := 0 // err := client.ListKeyPoliciesPages(params, // func(page *ListKeyPoliciesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *KMS) ListKeyPoliciesPages(input *ListKeyPoliciesInput, fn func(p *ListKeyPoliciesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListKeyPoliciesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListKeyPoliciesOutput), lastPage) }) } const opListKeys = "ListKeys" // ListKeysRequest generates a "aws/request.Request" representing the // client's request for the ListKeys operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListKeys for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListKeys method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListKeysRequest method. // req, resp := client.ListKeysRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) ListKeysRequest(input *ListKeysInput) (req *request.Request, output *ListKeysOutput) { op := &request.Operation{ Name: opListKeys, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"NextMarker"}, LimitToken: "Limit", TruncationToken: "Truncated", }, } if input == nil { input = &ListKeysInput{} } req = c.newRequest(op, input, output) output = &ListKeysOutput{} req.Data = output return } // ListKeys API operation for AWS Key Management Service. // // Lists the customer master keys. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation ListKeys for usage and error information. // // Returned Error Codes: // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidMarkerException // The request was rejected because the marker that specifies where pagination // should next begin is not valid. // func (c *KMS) ListKeys(input *ListKeysInput) (*ListKeysOutput, error) { req, out := c.ListKeysRequest(input) err := req.Send() return out, err } // ListKeysPages iterates over the pages of a ListKeys operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListKeys method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListKeys operation. // pageNum := 0 // err := client.ListKeysPages(params, // func(page *ListKeysOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *KMS) ListKeysPages(input *ListKeysInput, fn func(p *ListKeysOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListKeysRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListKeysOutput), lastPage) }) } const opListRetirableGrants = "ListRetirableGrants" // ListRetirableGrantsRequest generates a "aws/request.Request" representing the // client's request for the ListRetirableGrants operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListRetirableGrants for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListRetirableGrants method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListRetirableGrantsRequest method. // req, resp := client.ListRetirableGrantsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) ListRetirableGrantsRequest(input *ListRetirableGrantsInput) (req *request.Request, output *ListGrantsResponse) { op := &request.Operation{ Name: opListRetirableGrants, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListRetirableGrantsInput{} } req = c.newRequest(op, input, output) output = &ListGrantsResponse{} req.Data = output return } // ListRetirableGrants API operation for AWS Key Management Service. // // Returns a list of all grants for which the grant's RetiringPrincipal matches // the one specified. // // A typical use is to list all grants that you are able to retire. To retire // a grant, use RetireGrant. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation ListRetirableGrants for usage and error information. // // Returned Error Codes: // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InvalidMarkerException // The request was rejected because the marker that specifies where pagination // should next begin is not valid. // // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // func (c *KMS) ListRetirableGrants(input *ListRetirableGrantsInput) (*ListGrantsResponse, error) { req, out := c.ListRetirableGrantsRequest(input) err := req.Send() return out, err } const opPutKeyPolicy = "PutKeyPolicy" // PutKeyPolicyRequest generates a "aws/request.Request" representing the // client's request for the PutKeyPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutKeyPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutKeyPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutKeyPolicyRequest method. // req, resp := client.PutKeyPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) PutKeyPolicyRequest(input *PutKeyPolicyInput) (req *request.Request, output *PutKeyPolicyOutput) { op := &request.Operation{ Name: opPutKeyPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutKeyPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutKeyPolicyOutput{} req.Data = output return } // PutKeyPolicy API operation for AWS Key Management Service. // // Attaches a key policy to the specified customer master key (CMK). // // For more information about key policies, see Key Policies (http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) // in the AWS Key Management Service Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation PutKeyPolicy for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * MalformedPolicyDocumentException // The request was rejected because the specified policy is not syntactically // or semantically correct. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * UnsupportedOperationException // The request was rejected because a specified parameter is not supported or // a specified resource is not valid for this operation. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * LimitExceededException // The request was rejected because a limit was exceeded. For more information, // see Limits (http://docs.aws.amazon.com/kms/latest/developerguide/limits.html) // in the AWS Key Management Service Developer Guide. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) PutKeyPolicy(input *PutKeyPolicyInput) (*PutKeyPolicyOutput, error) { req, out := c.PutKeyPolicyRequest(input) err := req.Send() return out, err } const opReEncrypt = "ReEncrypt" // ReEncryptRequest generates a "aws/request.Request" representing the // client's request for the ReEncrypt operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ReEncrypt for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ReEncrypt method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ReEncryptRequest method. // req, resp := client.ReEncryptRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) ReEncryptRequest(input *ReEncryptInput) (req *request.Request, output *ReEncryptOutput) { op := &request.Operation{ Name: opReEncrypt, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ReEncryptInput{} } req = c.newRequest(op, input, output) output = &ReEncryptOutput{} req.Data = output return } // ReEncrypt API operation for AWS Key Management Service. // // Encrypts data on the server side with a new customer master key without exposing // the plaintext of the data on the client side. The data is first decrypted // and then encrypted. This operation can also be used to change the encryption // context of a ciphertext. // // Unlike other actions, ReEncrypt is authorized twice - once as ReEncryptFrom // on the source key and once as ReEncryptTo on the destination key. We therefore // recommend that you include the "action":"kms:ReEncrypt*" statement in your // key policies to permit re-encryption from or to the key. The statement is // included automatically when you authorize use of the key through the console // but must be included manually when you set a policy by using the PutKeyPolicy // function. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation ReEncrypt for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * DisabledException // The request was rejected because the specified CMK is not enabled. // // * InvalidCiphertextException // The request was rejected because the specified ciphertext has been corrupted // or is otherwise invalid. // // * KeyUnavailableException // The request was rejected because the specified CMK was not available. The // request can be retried. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InvalidKeyUsageException // The request was rejected because the specified KeySpec value is not valid. // // * InvalidGrantTokenException // The request was rejected because the specified grant token is not valid. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) ReEncrypt(input *ReEncryptInput) (*ReEncryptOutput, error) { req, out := c.ReEncryptRequest(input) err := req.Send() return out, err } const opRetireGrant = "RetireGrant" // RetireGrantRequest generates a "aws/request.Request" representing the // client's request for the RetireGrant operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RetireGrant for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RetireGrant method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RetireGrantRequest method. // req, resp := client.RetireGrantRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) RetireGrantRequest(input *RetireGrantInput) (req *request.Request, output *RetireGrantOutput) { op := &request.Operation{ Name: opRetireGrant, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RetireGrantInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RetireGrantOutput{} req.Data = output return } // RetireGrant API operation for AWS Key Management Service. // // Retires a grant. You can retire a grant when you're done using it to clean // up. You should revoke a grant when you intend to actively deny operations // that depend on it. The following are permitted to call this API: // // * The account that created the grant // // * The RetiringPrincipal, if present // // * The GranteePrincipal, if RetireGrant is a grantee operation // // The grant to retire must be identified by its grant token or by a combination // of the key ARN and the grant ID. A grant token is a unique variable-length // base64-encoded string. A grant ID is a 64 character unique identifier of // a grant. Both are returned by the CreateGrant function. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation RetireGrant for usage and error information. // // Returned Error Codes: // * InvalidGrantTokenException // The request was rejected because the specified grant token is not valid. // // * InvalidGrantIdException // The request was rejected because the specified GrantId is not valid. // // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) RetireGrant(input *RetireGrantInput) (*RetireGrantOutput, error) { req, out := c.RetireGrantRequest(input) err := req.Send() return out, err } const opRevokeGrant = "RevokeGrant" // RevokeGrantRequest generates a "aws/request.Request" representing the // client's request for the RevokeGrant operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RevokeGrant for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RevokeGrant method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RevokeGrantRequest method. // req, resp := client.RevokeGrantRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) RevokeGrantRequest(input *RevokeGrantInput) (req *request.Request, output *RevokeGrantOutput) { op := &request.Operation{ Name: opRevokeGrant, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RevokeGrantInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RevokeGrantOutput{} req.Data = output return } // RevokeGrant API operation for AWS Key Management Service. // // Revokes a grant. You can revoke a grant to actively deny operations that // depend on it. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation RevokeGrant for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * InvalidGrantIdException // The request was rejected because the specified GrantId is not valid. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) RevokeGrant(input *RevokeGrantInput) (*RevokeGrantOutput, error) { req, out := c.RevokeGrantRequest(input) err := req.Send() return out, err } const opScheduleKeyDeletion = "ScheduleKeyDeletion" // ScheduleKeyDeletionRequest generates a "aws/request.Request" representing the // client's request for the ScheduleKeyDeletion operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ScheduleKeyDeletion for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ScheduleKeyDeletion method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ScheduleKeyDeletionRequest method. // req, resp := client.ScheduleKeyDeletionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) ScheduleKeyDeletionRequest(input *ScheduleKeyDeletionInput) (req *request.Request, output *ScheduleKeyDeletionOutput) { op := &request.Operation{ Name: opScheduleKeyDeletion, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ScheduleKeyDeletionInput{} } req = c.newRequest(op, input, output) output = &ScheduleKeyDeletionOutput{} req.Data = output return } // ScheduleKeyDeletion API operation for AWS Key Management Service. // // Schedules the deletion of a customer master key (CMK). You may provide a // waiting period, specified in days, before deletion occurs. If you do not // provide a waiting period, the default period of 30 days is used. When this // operation is successful, the state of the CMK changes to PendingDeletion. // Before the waiting period ends, you can use CancelKeyDeletion to cancel the // deletion of the CMK. After the waiting period ends, AWS KMS deletes the CMK // and all AWS KMS data associated with it, including all aliases that point // to it. // // Deleting a CMK is a destructive and potentially dangerous operation. When // a CMK is deleted, all data that was encrypted under the CMK is rendered unrecoverable. // To restrict the use of a CMK without deleting it, use DisableKey. // // For more information about scheduling a CMK for deletion, see Deleting Customer // Master Keys (http://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html) // in the AWS Key Management Service Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation ScheduleKeyDeletion for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) ScheduleKeyDeletion(input *ScheduleKeyDeletionInput) (*ScheduleKeyDeletionOutput, error) { req, out := c.ScheduleKeyDeletionRequest(input) err := req.Send() return out, err } const opUpdateAlias = "UpdateAlias" // UpdateAliasRequest generates a "aws/request.Request" representing the // client's request for the UpdateAlias operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateAlias for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateAlias method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateAliasRequest method. // req, resp := client.UpdateAliasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) UpdateAliasRequest(input *UpdateAliasInput) (req *request.Request, output *UpdateAliasOutput) { op := &request.Operation{ Name: opUpdateAlias, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateAliasInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateAliasOutput{} req.Data = output return } // UpdateAlias API operation for AWS Key Management Service. // // Updates an alias to map it to a different key. // // An alias is not a property of a key. Therefore, an alias can be mapped to // and unmapped from an existing key without changing the properties of the // key. // // An alias name can contain only alphanumeric characters, forward slashes (/), // underscores (_), and dashes (-). An alias must start with the word "alias" // followed by a forward slash (alias/). An alias that begins with "aws" after // the forward slash (alias/aws...) is reserved by Amazon Web Services (AWS). // // The alias and the key it is mapped to must be in the same AWS account and // the same region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation UpdateAlias for usage and error information. // // Returned Error Codes: // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) UpdateAlias(input *UpdateAliasInput) (*UpdateAliasOutput, error) { req, out := c.UpdateAliasRequest(input) err := req.Send() return out, err } const opUpdateKeyDescription = "UpdateKeyDescription" // UpdateKeyDescriptionRequest generates a "aws/request.Request" representing the // client's request for the UpdateKeyDescription operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateKeyDescription for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateKeyDescription method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateKeyDescriptionRequest method. // req, resp := client.UpdateKeyDescriptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *KMS) UpdateKeyDescriptionRequest(input *UpdateKeyDescriptionInput) (req *request.Request, output *UpdateKeyDescriptionOutput) { op := &request.Operation{ Name: opUpdateKeyDescription, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateKeyDescriptionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateKeyDescriptionOutput{} req.Data = output return } // UpdateKeyDescription API operation for AWS Key Management Service. // // Updates the description of a key. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Key Management Service's // API operation UpdateKeyDescription for usage and error information. // // Returned Error Codes: // * NotFoundException // The request was rejected because the specified entity or resource could not // be found. // // * InvalidArnException // The request was rejected because a specified ARN was not valid. // // * DependencyTimeoutException // The system timed out while trying to fulfill the request. The request can // be retried. // // * InternalException // The request was rejected because an internal exception occurred. The request // can be retried. // // * InvalidStateException // The request was rejected because the state of the specified resource is not // valid for this request. // // For more information about how key state affects the use of a CMK, see How // Key State Affects Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. // func (c *KMS) UpdateKeyDescription(input *UpdateKeyDescriptionInput) (*UpdateKeyDescriptionOutput, error) { req, out := c.UpdateKeyDescriptionRequest(input) err := req.Send() return out, err } // Contains information about an alias. type AliasListEntry struct { _ struct{} `type:"structure"` // String that contains the key ARN. AliasArn *string `min:"20" type:"string"` // String that contains the alias. AliasName *string `min:"1" type:"string"` // String that contains the key identifier pointed to by the alias. TargetKeyId *string `min:"1" type:"string"` } // String returns the string representation func (s AliasListEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AliasListEntry) GoString() string { return s.String() } type CancelKeyDeletionInput struct { _ struct{} `type:"structure"` // The unique identifier for the customer master key (CMK) for which to cancel // deletion. // // To specify this value, use the unique key ID or the Amazon Resource Name // (ARN) of the CMK. Examples: // // * Unique key ID: 1234abcd-12ab-34cd-56ef-1234567890ab // // * Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab // // To obtain the unique key ID and key ARN for a given CMK, use ListKeys or // DescribeKey. // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CancelKeyDeletionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelKeyDeletionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CancelKeyDeletionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelKeyDeletionInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CancelKeyDeletionOutput struct { _ struct{} `type:"structure"` // The unique identifier of the master key for which deletion is canceled. KeyId *string `min:"1" type:"string"` } // String returns the string representation func (s CancelKeyDeletionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelKeyDeletionOutput) GoString() string { return s.String() } type CreateAliasInput struct { _ struct{} `type:"structure"` // String that contains the display name. The name must start with the word // "alias" followed by a forward slash (alias/). Aliases that begin with "alias/AWS" // are reserved. // // AliasName is a required field AliasName *string `min:"1" type:"string" required:"true"` // An identifier of the key for which you are creating the alias. This value // cannot be another alias but can be a globally unique identifier or a fully // specified ARN to a key. // // * Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 // // * Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012 // // TargetKeyId is a required field TargetKeyId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateAliasInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateAliasInput"} if s.AliasName == nil { invalidParams.Add(request.NewErrParamRequired("AliasName")) } if s.AliasName != nil && len(*s.AliasName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AliasName", 1)) } if s.TargetKeyId == nil { invalidParams.Add(request.NewErrParamRequired("TargetKeyId")) } if s.TargetKeyId != nil && len(*s.TargetKeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("TargetKeyId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateAliasOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAliasOutput) GoString() string { return s.String() } type CreateGrantInput struct { _ struct{} `type:"structure"` // The conditions under which the operations permitted by the grant are allowed. // // You can use this value to allow the operations permitted by the grant only // when a specified encryption context is present. For more information, see // Encryption Context (http://docs.aws.amazon.com/kms/latest/developerguide/encryption-context.html) // in the AWS Key Management Service Developer Guide. Constraints *GrantConstraints `type:"structure"` // A list of grant tokens. // // For more information, see Grant Tokens (http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token) // in the AWS Key Management Service Developer Guide. GrantTokens []*string `type:"list"` // The principal that is given permission to perform the operations that the // grant permits. // // To specify the principal, use the Amazon Resource Name (ARN) (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // of an AWS principal. Valid AWS principals include AWS accounts (root), IAM // users, federated users, and assumed role users. For examples of the ARN syntax // to use for specifying a principal, see AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-iam) // in the Example ARNs section of the AWS General Reference. // // GranteePrincipal is a required field GranteePrincipal *string `min:"1" type:"string" required:"true"` // The unique identifier for the customer master key (CMK) that the grant applies // to. // // To specify this value, use the globally unique key ID or the Amazon Resource // Name (ARN) of the key. Examples: // // * Globally unique key ID: 12345678-1234-1234-1234-123456789012 // // * Key ARN: arn:aws:kms:us-west-2:123456789012:key/12345678-1234-1234-1234-123456789012 // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` // A friendly name for identifying the grant. Use this value to prevent unintended // creation of duplicate grants when retrying this request. // // When this value is absent, all CreateGrant requests result in a new grant // with a unique GrantId even if all the supplied parameters are identical. // This can result in unintended duplicates when you retry the CreateGrant request. // // When this value is present, you can retry a CreateGrant request with identical // parameters; if the grant already exists, the original GrantId is returned // without creating a new grant. Note that the returned grant token is unique // with every CreateGrant request, even when a duplicate GrantId is returned. // All grant tokens obtained in this way can be used interchangeably. Name *string `min:"1" type:"string"` // A list of operations that the grant permits. The list can contain any combination // of one or more of the following values: // // * Decrypt // // * Encrypt // // * GenerateDataKey // // * GenerateDataKeyWithoutPlaintext // // * ReEncryptFrom (http://docs.aws.amazon.com/kms/latest/APIReference/API_ReEncrypt.html) // // * ReEncryptTo (http://docs.aws.amazon.com/kms/latest/APIReference/API_ReEncrypt.html) // // * CreateGrant // // * RetireGrant // // * DescribeKey Operations []*string `type:"list"` // The principal that is given permission to retire the grant by using RetireGrant // operation. // // To specify the principal, use the Amazon Resource Name (ARN) (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // of an AWS principal. Valid AWS principals include AWS accounts (root), IAM // users, federated users, and assumed role users. For examples of the ARN syntax // to use for specifying a principal, see AWS Identity and Access Management // (IAM) (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-iam) // in the Example ARNs section of the AWS General Reference. RetiringPrincipal *string `min:"1" type:"string"` } // String returns the string representation func (s CreateGrantInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateGrantInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateGrantInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateGrantInput"} if s.GranteePrincipal == nil { invalidParams.Add(request.NewErrParamRequired("GranteePrincipal")) } if s.GranteePrincipal != nil && len(*s.GranteePrincipal) < 1 { invalidParams.Add(request.NewErrParamMinLen("GranteePrincipal", 1)) } if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.RetiringPrincipal != nil && len(*s.RetiringPrincipal) < 1 { invalidParams.Add(request.NewErrParamMinLen("RetiringPrincipal", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateGrantOutput struct { _ struct{} `type:"structure"` // The unique identifier for the grant. // // You can use the GrantId in a subsequent RetireGrant or RevokeGrant operation. GrantId *string `min:"1" type:"string"` // The grant token. // // For more information, see Grant Tokens (http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token) // in the AWS Key Management Service Developer Guide. GrantToken *string `min:"1" type:"string"` } // String returns the string representation func (s CreateGrantOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateGrantOutput) GoString() string { return s.String() } type CreateKeyInput struct { _ struct{} `type:"structure"` // A flag to indicate whether to bypass the key policy lockout safety check. // // Setting this value to true increases the likelihood that the CMK becomes // unmanageable. Do not set this value to true indiscriminately. // // For more information, refer to the scenario in the Default Key Policy (http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam) // section in the AWS Key Management Service Developer Guide. // // Use this parameter only when you include a policy in the request and you // intend to prevent the principal making the request from making a subsequent // PutKeyPolicy request on the CMK. // // The default value is false. BypassPolicyLockoutSafetyCheck *bool `type:"boolean"` // A description of the CMK. // // Use a description that helps you decide whether the CMK is appropriate for // a task. Description *string `type:"string"` // The intended use of the CMK. // // You can use CMKs only for symmetric encryption and decryption. KeyUsage *string `type:"string" enum:"KeyUsageType"` // The source of the CMK's key material. // // The default is AWS_KMS, which means AWS KMS creates the key material. When // this parameter is set to EXTERNAL, the request creates a CMK without key // material so that you can import key material from your existing key management // infrastructure. For more information about importing key material into AWS // KMS, see Importing Key Material (http://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) // in the AWS Key Management Service Developer Guide. // // The CMK's Origin is immutable and is set when the CMK is created. Origin *string `type:"string" enum:"OriginType"` // The key policy to attach to the CMK. // // If you specify a policy and do not set BypassPolicyLockoutSafetyCheck to // true, the policy must meet the following criteria: // // * It must allow the principal making the CreateKey request to make a subsequent // PutKeyPolicy request on the CMK. This reduces the likelihood that the // CMK becomes unmanageable. For more information, refer to the scenario // in the Default Key Policy (http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam) // section in the AWS Key Management Service Developer Guide. // // * The principal(s) specified in the key policy must exist and be visible // to AWS KMS. When you create a new AWS principal (for example, an IAM user // or role), you might need to enforce a delay before specifying the new // principal in a key policy because the new principal might not immediately // be visible to AWS KMS. For more information, see Changes that I make are // not always immediately visible (http://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_general.html#troubleshoot_general_eventual-consistency) // in the IAM User Guide. // // If you do not specify a policy, AWS KMS attaches a default key policy to // the CMK. For more information, see Default Key Policy (http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default) // in the AWS Key Management Service Developer Guide. // // The policy size limit is 32 KiB (32768 bytes). Policy *string `min:"1" type:"string"` } // String returns the string representation func (s CreateKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateKeyInput"} if s.Policy != nil && len(*s.Policy) < 1 { invalidParams.Add(request.NewErrParamMinLen("Policy", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateKeyOutput struct { _ struct{} `type:"structure"` // Metadata associated with the CMK. KeyMetadata *KeyMetadata `type:"structure"` } // String returns the string representation func (s CreateKeyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateKeyOutput) GoString() string { return s.String() } type DecryptInput struct { _ struct{} `type:"structure"` // Ciphertext to be decrypted. The blob includes metadata. // // CiphertextBlob is automatically base64 encoded/decoded by the SDK. // // CiphertextBlob is a required field CiphertextBlob []byte `min:"1" type:"blob" required:"true"` // The encryption context. If this was specified in the Encrypt function, it // must be specified here or the decryption operation will fail. For more information, // see Encryption Context (http://docs.aws.amazon.com/kms/latest/developerguide/encryption-context.html). EncryptionContext map[string]*string `type:"map"` // A list of grant tokens. // // For more information, see Grant Tokens (http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token) // in the AWS Key Management Service Developer Guide. GrantTokens []*string `type:"list"` } // String returns the string representation func (s DecryptInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DecryptInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DecryptInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DecryptInput"} if s.CiphertextBlob == nil { invalidParams.Add(request.NewErrParamRequired("CiphertextBlob")) } if s.CiphertextBlob != nil && len(s.CiphertextBlob) < 1 { invalidParams.Add(request.NewErrParamMinLen("CiphertextBlob", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DecryptOutput struct { _ struct{} `type:"structure"` // ARN of the key used to perform the decryption. This value is returned if // no errors are encountered during the operation. KeyId *string `min:"1" type:"string"` // Decrypted plaintext data. This value may not be returned if the customer // master key is not available or if you didn't have permission to use it. // // Plaintext is automatically base64 encoded/decoded by the SDK. Plaintext []byte `min:"1" type:"blob"` } // String returns the string representation func (s DecryptOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DecryptOutput) GoString() string { return s.String() } type DeleteAliasInput struct { _ struct{} `type:"structure"` // The alias to be deleted. The name must start with the word "alias" followed // by a forward slash (alias/). Aliases that begin with "alias/AWS" are reserved. // // AliasName is a required field AliasName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAliasInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAliasInput"} if s.AliasName == nil { invalidParams.Add(request.NewErrParamRequired("AliasName")) } if s.AliasName != nil && len(*s.AliasName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AliasName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteAliasOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAliasOutput) GoString() string { return s.String() } type DeleteImportedKeyMaterialInput struct { _ struct{} `type:"structure"` // The identifier of the CMK whose key material to delete. The CMK's Origin // must be EXTERNAL. // // A valid identifier is the unique key ID or the Amazon Resource Name (ARN) // of the CMK. Examples: // // * Unique key ID: 1234abcd-12ab-34cd-56ef-1234567890ab // // * Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteImportedKeyMaterialInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteImportedKeyMaterialInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteImportedKeyMaterialInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteImportedKeyMaterialInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteImportedKeyMaterialOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteImportedKeyMaterialOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteImportedKeyMaterialOutput) GoString() string { return s.String() } type DescribeKeyInput struct { _ struct{} `type:"structure"` // A list of grant tokens. // // For more information, see Grant Tokens (http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token) // in the AWS Key Management Service Developer Guide. GrantTokens []*string `type:"list"` // A unique identifier for the customer master key. This value can be a globally // unique identifier, a fully specified ARN to either an alias or a key, or // an alias name prefixed by "alias/". // // * Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 // // * Alias ARN Example - arn:aws:kms:us-east-1:123456789012:alias/MyAliasName // // * Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012 // // * Alias Name Example - alias/MyAliasName // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeKeyInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeKeyOutput struct { _ struct{} `type:"structure"` // Metadata associated with the key. KeyMetadata *KeyMetadata `type:"structure"` } // String returns the string representation func (s DescribeKeyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeKeyOutput) GoString() string { return s.String() } type DisableKeyInput struct { _ struct{} `type:"structure"` // A unique identifier for the CMK. // // Use the CMK's unique identifier or its Amazon Resource Name (ARN). For example: // // * Unique ID: 1234abcd-12ab-34cd-56ef-1234567890ab // // * ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DisableKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisableKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisableKeyInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DisableKeyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DisableKeyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableKeyOutput) GoString() string { return s.String() } type DisableKeyRotationInput struct { _ struct{} `type:"structure"` // A unique identifier for the customer master key. This value can be a globally // unique identifier or the fully specified ARN to a key. // // * Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 // // * Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012 // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DisableKeyRotationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableKeyRotationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisableKeyRotationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisableKeyRotationInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DisableKeyRotationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DisableKeyRotationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableKeyRotationOutput) GoString() string { return s.String() } type EnableKeyInput struct { _ struct{} `type:"structure"` // A unique identifier for the customer master key. This value can be a globally // unique identifier or the fully specified ARN to a key. // // * Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 // // * Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012 // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s EnableKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableKeyInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type EnableKeyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s EnableKeyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableKeyOutput) GoString() string { return s.String() } type EnableKeyRotationInput struct { _ struct{} `type:"structure"` // A unique identifier for the customer master key. This value can be a globally // unique identifier or the fully specified ARN to a key. // // * Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 // // * Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012 // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s EnableKeyRotationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableKeyRotationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableKeyRotationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableKeyRotationInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type EnableKeyRotationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s EnableKeyRotationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableKeyRotationOutput) GoString() string { return s.String() } type EncryptInput struct { _ struct{} `type:"structure"` // Name-value pair that specifies the encryption context to be used for authenticated // encryption. If used here, the same value must be supplied to the Decrypt // API or decryption will fail. For more information, see Encryption Context // (http://docs.aws.amazon.com/kms/latest/developerguide/encryption-context.html). EncryptionContext map[string]*string `type:"map"` // A list of grant tokens. // // For more information, see Grant Tokens (http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token) // in the AWS Key Management Service Developer Guide. GrantTokens []*string `type:"list"` // A unique identifier for the customer master key. This value can be a globally // unique identifier, a fully specified ARN to either an alias or a key, or // an alias name prefixed by "alias/". // // * Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 // // * Alias ARN Example - arn:aws:kms:us-east-1:123456789012:alias/MyAliasName // // * Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012 // // * Alias Name Example - alias/MyAliasName // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` // Data to be encrypted. // // Plaintext is automatically base64 encoded/decoded by the SDK. // // Plaintext is a required field Plaintext []byte `min:"1" type:"blob" required:"true"` } // String returns the string representation func (s EncryptInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EncryptInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EncryptInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EncryptInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if s.Plaintext == nil { invalidParams.Add(request.NewErrParamRequired("Plaintext")) } if s.Plaintext != nil && len(s.Plaintext) < 1 { invalidParams.Add(request.NewErrParamMinLen("Plaintext", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type EncryptOutput struct { _ struct{} `type:"structure"` // The encrypted plaintext. If you are using the CLI, the value is Base64 encoded. // Otherwise, it is not encoded. // // CiphertextBlob is automatically base64 encoded/decoded by the SDK. CiphertextBlob []byte `min:"1" type:"blob"` // The ID of the key used during encryption. KeyId *string `min:"1" type:"string"` } // String returns the string representation func (s EncryptOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EncryptOutput) GoString() string { return s.String() } type GenerateDataKeyInput struct { _ struct{} `type:"structure"` // A set of key-value pairs that represents additional authenticated data. // // For more information, see Encryption Context (http://docs.aws.amazon.com/kms/latest/developerguide/encryption-context.html) // in the AWS Key Management Service Developer Guide. EncryptionContext map[string]*string `type:"map"` // A list of grant tokens. // // For more information, see Grant Tokens (http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token) // in the AWS Key Management Service Developer Guide. GrantTokens []*string `type:"list"` // The identifier of the CMK under which to generate and encrypt the data encryption // key. // // A valid identifier is the unique key ID or the Amazon Resource Name (ARN) // of the CMK, or the alias name or ARN of an alias that points to the CMK. // Examples: // // * Unique key ID: 1234abcd-12ab-34cd-56ef-1234567890ab // // * CMK ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab // // * Alias name: alias/ExampleAlias // // * Alias ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` // The length of the data encryption key. Use AES_128 to generate a 128-bit // symmetric key, or AES_256 to generate a 256-bit symmetric key. KeySpec *string `type:"string" enum:"DataKeySpec"` // The length of the data encryption key in bytes. For example, use the value // 64 to generate a 512-bit data key (64 bytes is 512 bits). For common key // lengths (128-bit and 256-bit symmetric keys), we recommend that you use the // KeySpec field instead of this one. NumberOfBytes *int64 `min:"1" type:"integer"` } // String returns the string representation func (s GenerateDataKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GenerateDataKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GenerateDataKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GenerateDataKeyInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if s.NumberOfBytes != nil && *s.NumberOfBytes < 1 { invalidParams.Add(request.NewErrParamMinValue("NumberOfBytes", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GenerateDataKeyOutput struct { _ struct{} `type:"structure"` // The encrypted data encryption key. // // CiphertextBlob is automatically base64 encoded/decoded by the SDK. CiphertextBlob []byte `min:"1" type:"blob"` // The identifier of the CMK under which the data encryption key was generated // and encrypted. KeyId *string `min:"1" type:"string"` // The data encryption key. Use this data key for local encryption and decryption, // then remove it from memory as soon as possible. // // Plaintext is automatically base64 encoded/decoded by the SDK. Plaintext []byte `min:"1" type:"blob"` } // String returns the string representation func (s GenerateDataKeyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GenerateDataKeyOutput) GoString() string { return s.String() } type GenerateDataKeyWithoutPlaintextInput struct { _ struct{} `type:"structure"` // A set of key-value pairs that represents additional authenticated data. // // For more information, see Encryption Context (http://docs.aws.amazon.com/kms/latest/developerguide/encryption-context.html) // in the AWS Key Management Service Developer Guide. EncryptionContext map[string]*string `type:"map"` // A list of grant tokens. // // For more information, see Grant Tokens (http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token) // in the AWS Key Management Service Developer Guide. GrantTokens []*string `type:"list"` // The identifier of the CMK under which to generate and encrypt the data encryption // key. // // A valid identifier is the unique key ID or the Amazon Resource Name (ARN) // of the CMK, or the alias name or ARN of an alias that points to the CMK. // Examples: // // * Unique key ID: 1234abcd-12ab-34cd-56ef-1234567890ab // // * CMK ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab // // * Alias name: alias/ExampleAlias // // * Alias ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` // The length of the data encryption key. Use AES_128 to generate a 128-bit // symmetric key, or AES_256 to generate a 256-bit symmetric key. KeySpec *string `type:"string" enum:"DataKeySpec"` // The length of the data encryption key in bytes. For example, use the value // 64 to generate a 512-bit data key (64 bytes is 512 bits). For common key // lengths (128-bit and 256-bit symmetric keys), we recommend that you use the // KeySpec field instead of this one. NumberOfBytes *int64 `min:"1" type:"integer"` } // String returns the string representation func (s GenerateDataKeyWithoutPlaintextInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GenerateDataKeyWithoutPlaintextInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GenerateDataKeyWithoutPlaintextInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GenerateDataKeyWithoutPlaintextInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if s.NumberOfBytes != nil && *s.NumberOfBytes < 1 { invalidParams.Add(request.NewErrParamMinValue("NumberOfBytes", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GenerateDataKeyWithoutPlaintextOutput struct { _ struct{} `type:"structure"` // The encrypted data encryption key. // // CiphertextBlob is automatically base64 encoded/decoded by the SDK. CiphertextBlob []byte `min:"1" type:"blob"` // The identifier of the CMK under which the data encryption key was generated // and encrypted. KeyId *string `min:"1" type:"string"` } // String returns the string representation func (s GenerateDataKeyWithoutPlaintextOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GenerateDataKeyWithoutPlaintextOutput) GoString() string { return s.String() } type GenerateRandomInput struct { _ struct{} `type:"structure"` // The length of the byte string. NumberOfBytes *int64 `min:"1" type:"integer"` } // String returns the string representation func (s GenerateRandomInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GenerateRandomInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GenerateRandomInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GenerateRandomInput"} if s.NumberOfBytes != nil && *s.NumberOfBytes < 1 { invalidParams.Add(request.NewErrParamMinValue("NumberOfBytes", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GenerateRandomOutput struct { _ struct{} `type:"structure"` // The unpredictable byte string. // // Plaintext is automatically base64 encoded/decoded by the SDK. Plaintext []byte `min:"1" type:"blob"` } // String returns the string representation func (s GenerateRandomOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GenerateRandomOutput) GoString() string { return s.String() } type GetKeyPolicyInput struct { _ struct{} `type:"structure"` // A unique identifier for the customer master key. This value can be a globally // unique identifier or the fully specified ARN to a key. // // * Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 // // * Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012 // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` // String that contains the name of the policy. Currently, this must be "default". // Policy names can be discovered by calling ListKeyPolicies. // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetKeyPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetKeyPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetKeyPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetKeyPolicyInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetKeyPolicyOutput struct { _ struct{} `type:"structure"` // A policy document in JSON format. Policy *string `min:"1" type:"string"` } // String returns the string representation func (s GetKeyPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetKeyPolicyOutput) GoString() string { return s.String() } type GetKeyRotationStatusInput struct { _ struct{} `type:"structure"` // A unique identifier for the customer master key. This value can be a globally // unique identifier or the fully specified ARN to a key. // // * Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 // // * Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012 // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetKeyRotationStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetKeyRotationStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetKeyRotationStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetKeyRotationStatusInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetKeyRotationStatusOutput struct { _ struct{} `type:"structure"` // A Boolean value that specifies whether key rotation is enabled. KeyRotationEnabled *bool `type:"boolean"` } // String returns the string representation func (s GetKeyRotationStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetKeyRotationStatusOutput) GoString() string { return s.String() } type GetParametersForImportInput struct { _ struct{} `type:"structure"` // The identifier of the CMK into which you will import key material. The CMK's // Origin must be EXTERNAL. // // A valid identifier is the unique key ID or the Amazon Resource Name (ARN) // of the CMK. Examples: // // * Unique key ID: 1234abcd-12ab-34cd-56ef-1234567890ab // // * Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` // The algorithm you will use to encrypt the key material before importing it // with ImportKeyMaterial. For more information, see Encrypt the Key Material // (http://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-encrypt-key-material.html) // in the AWS Key Management Service Developer Guide. // // WrappingAlgorithm is a required field WrappingAlgorithm *string `type:"string" required:"true" enum:"AlgorithmSpec"` // The type of wrapping key (public key) to return in the response. Only 2048-bit // RSA public keys are supported. // // WrappingKeySpec is a required field WrappingKeySpec *string `type:"string" required:"true" enum:"WrappingKeySpec"` } // String returns the string representation func (s GetParametersForImportInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetParametersForImportInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetParametersForImportInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetParametersForImportInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if s.WrappingAlgorithm == nil { invalidParams.Add(request.NewErrParamRequired("WrappingAlgorithm")) } if s.WrappingKeySpec == nil { invalidParams.Add(request.NewErrParamRequired("WrappingKeySpec")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetParametersForImportOutput struct { _ struct{} `type:"structure"` // The import token to send in a subsequent ImportKeyMaterial request. // // ImportToken is automatically base64 encoded/decoded by the SDK. ImportToken []byte `min:"1" type:"blob"` // The identifier of the CMK to use in a subsequent ImportKeyMaterial request. // This is the same CMK specified in the GetParametersForImport request. KeyId *string `min:"1" type:"string"` // The time at which the import token and public key are no longer valid. After // this time, you cannot use them to make an ImportKeyMaterial request and you // must send another GetParametersForImport request to retrieve new ones. ParametersValidTo *time.Time `type:"timestamp" timestampFormat:"unix"` // The public key to use to encrypt the key material before importing it with // ImportKeyMaterial. // // PublicKey is automatically base64 encoded/decoded by the SDK. PublicKey []byte `min:"1" type:"blob"` } // String returns the string representation func (s GetParametersForImportOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetParametersForImportOutput) GoString() string { return s.String() } // A structure for specifying the conditions under which the operations permitted // by the grant are allowed. // // You can use this structure to allow the operations permitted by the grant // only when a specified encryption context is present. For more information // about encryption context, see Encryption Context (http://docs.aws.amazon.com/kms/latest/developerguide/encryption-context.html) // in the AWS Key Management Service Developer Guide. type GrantConstraints struct { _ struct{} `type:"structure"` // Contains a list of key-value pairs that must be present in the encryption // context of a subsequent operation permitted by the grant. When a subsequent // operation permitted by the grant includes an encryption context that matches // this list, the grant allows the operation. Otherwise, the operation is not // allowed. EncryptionContextEquals map[string]*string `type:"map"` // Contains a list of key-value pairs, a subset of which must be present in // the encryption context of a subsequent operation permitted by the grant. // When a subsequent operation permitted by the grant includes an encryption // context that matches this list or is a subset of this list, the grant allows // the operation. Otherwise, the operation is not allowed. EncryptionContextSubset map[string]*string `type:"map"` } // String returns the string representation func (s GrantConstraints) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GrantConstraints) GoString() string { return s.String() } // Contains information about an entry in a list of grants. type GrantListEntry struct { _ struct{} `type:"structure"` // The conditions under which the grant's operations are allowed. Constraints *GrantConstraints `type:"structure"` // The date and time when the grant was created. CreationDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The unique identifier for the grant. GrantId *string `min:"1" type:"string"` // The principal that receives the grant's permissions. GranteePrincipal *string `min:"1" type:"string"` // The AWS account under which the grant was issued. IssuingAccount *string `min:"1" type:"string"` // The unique identifier for the customer master key (CMK) to which the grant // applies. KeyId *string `min:"1" type:"string"` // The friendly name that identifies the grant. If a name was provided in the // CreateGrant request, that name is returned. Otherwise this value is null. Name *string `min:"1" type:"string"` // The list of operations permitted by the grant. Operations []*string `type:"list"` // The principal that can retire the grant. RetiringPrincipal *string `min:"1" type:"string"` } // String returns the string representation func (s GrantListEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GrantListEntry) GoString() string { return s.String() } type ImportKeyMaterialInput struct { _ struct{} `type:"structure"` // The encrypted key material to import. It must be encrypted with the public // key that you received in the response to a previous GetParametersForImport // request, using the wrapping algorithm that you specified in that request. // // EncryptedKeyMaterial is automatically base64 encoded/decoded by the SDK. // // EncryptedKeyMaterial is a required field EncryptedKeyMaterial []byte `min:"1" type:"blob" required:"true"` // Specifies whether the key material expires. The default is KEY_MATERIAL_EXPIRES, // in which case you must include the ValidTo parameter. When this parameter // is set to KEY_MATERIAL_DOES_NOT_EXPIRE, you must omit the ValidTo parameter. ExpirationModel *string `type:"string" enum:"ExpirationModelType"` // The import token that you received in the response to a previous GetParametersForImport // request. It must be from the same response that contained the public key // that you used to encrypt the key material. // // ImportToken is automatically base64 encoded/decoded by the SDK. // // ImportToken is a required field ImportToken []byte `min:"1" type:"blob" required:"true"` // The identifier of the CMK to import the key material into. The CMK's Origin // must be EXTERNAL. // // A valid identifier is the unique key ID or the Amazon Resource Name (ARN) // of the CMK. Examples: // // * Unique key ID: 1234abcd-12ab-34cd-56ef-1234567890ab // // * Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` // The time at which the imported key material expires. When the key material // expires, AWS KMS deletes the key material and the CMK becomes unusable. You // must omit this parameter when the ExpirationModel parameter is set to KEY_MATERIAL_DOES_NOT_EXPIRE. // Otherwise it is required. ValidTo *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s ImportKeyMaterialInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportKeyMaterialInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ImportKeyMaterialInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ImportKeyMaterialInput"} if s.EncryptedKeyMaterial == nil { invalidParams.Add(request.NewErrParamRequired("EncryptedKeyMaterial")) } if s.EncryptedKeyMaterial != nil && len(s.EncryptedKeyMaterial) < 1 { invalidParams.Add(request.NewErrParamMinLen("EncryptedKeyMaterial", 1)) } if s.ImportToken == nil { invalidParams.Add(request.NewErrParamRequired("ImportToken")) } if s.ImportToken != nil && len(s.ImportToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ImportToken", 1)) } if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ImportKeyMaterialOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ImportKeyMaterialOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportKeyMaterialOutput) GoString() string { return s.String() } // Contains information about each entry in the key list. type KeyListEntry struct { _ struct{} `type:"structure"` // ARN of the key. KeyArn *string `min:"20" type:"string"` // Unique identifier of the key. KeyId *string `min:"1" type:"string"` } // String returns the string representation func (s KeyListEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KeyListEntry) GoString() string { return s.String() } // Contains metadata about a customer master key (CMK). // // This data type is used as a response element for the CreateKey and DescribeKey // operations. type KeyMetadata struct { _ struct{} `type:"structure"` // The twelve-digit account ID of the AWS account that owns the CMK. AWSAccountId *string `type:"string"` // The Amazon Resource Name (ARN) of the CMK. For examples, see AWS Key Management // Service (AWS KMS) (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-kms) // in the Example ARNs section of the AWS General Reference. Arn *string `min:"20" type:"string"` // The date and time when the CMK was created. CreationDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The date and time after which AWS KMS deletes the CMK. This value is present // only when KeyState is PendingDeletion, otherwise this value is omitted. DeletionDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The description of the CMK. Description *string `type:"string"` // Specifies whether the CMK is enabled. When KeyState is Enabled this value // is true, otherwise it is false. Enabled *bool `type:"boolean"` // Specifies whether the CMK's key material expires. This value is present only // when Origin is EXTERNAL, otherwise this value is omitted. ExpirationModel *string `type:"string" enum:"ExpirationModelType"` // The globally unique identifier for the CMK. // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` // The state of the CMK. // // For more information about how key state affects the use of a CMK, see How // Key State Affects the Use of a Customer Master Key (http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) // in the AWS Key Management Service Developer Guide. KeyState *string `type:"string" enum:"KeyState"` // The cryptographic operations for which you can use the CMK. Currently the // only allowed value is ENCRYPT_DECRYPT, which means you can use the CMK for // the Encrypt and Decrypt operations. KeyUsage *string `type:"string" enum:"KeyUsageType"` // The source of the CMK's key material. When this value is AWS_KMS, AWS KMS // created the key material. When this value is EXTERNAL, the key material was // imported from your existing key management infrastructure or the CMK lacks // key material. Origin *string `type:"string" enum:"OriginType"` // The time at which the imported key material expires. When the key material // expires, AWS KMS deletes the key material and the CMK becomes unusable. This // value is present only for CMKs whose Origin is EXTERNAL and whose ExpirationModel // is KEY_MATERIAL_EXPIRES, otherwise this value is omitted. ValidTo *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s KeyMetadata) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KeyMetadata) GoString() string { return s.String() } type ListAliasesInput struct { _ struct{} `type:"structure"` // When paginating results, specify the maximum number of items to return in // the response. If additional items exist beyond the number you specify, the // Truncated element in the response is set to true. // // This value is optional. If you include a value, it must be between 1 and // 100, inclusive. If you do not include a value, it defaults to 50. Limit *int64 `min:"1" type:"integer"` // Use this parameter only when paginating results and only in a subsequent // request after you receive a response with truncated results. Set it to the // value of NextMarker from the response you just received. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s ListAliasesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAliasesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListAliasesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListAliasesInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListAliasesOutput struct { _ struct{} `type:"structure"` // A list of key aliases in the user's account. Aliases []*AliasListEntry `type:"list"` // When Truncated is true, this value is present and contains the value to use // for the Marker parameter in a subsequent pagination request. NextMarker *string `min:"1" type:"string"` // A flag that indicates whether there are more items in the list. If your results // were truncated, you can use the Marker parameter to make a subsequent pagination // request to retrieve more items in the list. Truncated *bool `type:"boolean"` } // String returns the string representation func (s ListAliasesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAliasesOutput) GoString() string { return s.String() } type ListGrantsInput struct { _ struct{} `type:"structure"` // A unique identifier for the customer master key. This value can be a globally // unique identifier or the fully specified ARN to a key. // // * Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 // // * Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012 // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` // When paginating results, specify the maximum number of items to return in // the response. If additional items exist beyond the number you specify, the // Truncated element in the response is set to true. // // This value is optional. If you include a value, it must be between 1 and // 100, inclusive. If you do not include a value, it defaults to 50. Limit *int64 `min:"1" type:"integer"` // Use this parameter only when paginating results and only in a subsequent // request after you receive a response with truncated results. Set it to the // value of NextMarker from the response you just received. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s ListGrantsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListGrantsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListGrantsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListGrantsInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListGrantsResponse struct { _ struct{} `type:"structure"` // A list of grants. Grants []*GrantListEntry `type:"list"` // When Truncated is true, this value is present and contains the value to use // for the Marker parameter in a subsequent pagination request. NextMarker *string `min:"1" type:"string"` // A flag that indicates whether there are more items in the list. If your results // were truncated, you can use the Marker parameter to make a subsequent pagination // request to retrieve more items in the list. Truncated *bool `type:"boolean"` } // String returns the string representation func (s ListGrantsResponse) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListGrantsResponse) GoString() string { return s.String() } type ListKeyPoliciesInput struct { _ struct{} `type:"structure"` // A unique identifier for the customer master key. This value can be a globally // unique identifier, a fully specified ARN to either an alias or a key, or // an alias name prefixed by "alias/". // // * Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 // // * Alias ARN Example - arn:aws:kms:us-east-1:123456789012:alias/MyAliasName // // * Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012 // // * Alias Name Example - alias/MyAliasName // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` // When paginating results, specify the maximum number of items to return in // the response. If additional items exist beyond the number you specify, the // Truncated element in the response is set to true. // // This value is optional. If you include a value, it must be between 1 and // 1000, inclusive. If you do not include a value, it defaults to 100. // // Currently only 1 policy can be attached to a key. Limit *int64 `min:"1" type:"integer"` // Use this parameter only when paginating results and only in a subsequent // request after you receive a response with truncated results. Set it to the // value of NextMarker from the response you just received. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s ListKeyPoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListKeyPoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListKeyPoliciesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListKeyPoliciesInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListKeyPoliciesOutput struct { _ struct{} `type:"structure"` // When Truncated is true, this value is present and contains the value to use // for the Marker parameter in a subsequent pagination request. NextMarker *string `min:"1" type:"string"` // A list of policy names. Currently, there is only one policy and it is named // "Default". PolicyNames []*string `type:"list"` // A flag that indicates whether there are more items in the list. If your results // were truncated, you can use the Marker parameter to make a subsequent pagination // request to retrieve more items in the list. Truncated *bool `type:"boolean"` } // String returns the string representation func (s ListKeyPoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListKeyPoliciesOutput) GoString() string { return s.String() } type ListKeysInput struct { _ struct{} `type:"structure"` // When paginating results, specify the maximum number of items to return in // the response. If additional items exist beyond the number you specify, the // Truncated element in the response is set to true. // // This value is optional. If you include a value, it must be between 1 and // 1000, inclusive. If you do not include a value, it defaults to 100. Limit *int64 `min:"1" type:"integer"` // Use this parameter only when paginating results and only in a subsequent // request after you receive a response with truncated results. Set it to the // value of NextMarker from the response you just received. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s ListKeysInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListKeysInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListKeysInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListKeysInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListKeysOutput struct { _ struct{} `type:"structure"` // A list of keys. Keys []*KeyListEntry `type:"list"` // When Truncated is true, this value is present and contains the value to use // for the Marker parameter in a subsequent pagination request. NextMarker *string `min:"1" type:"string"` // A flag that indicates whether there are more items in the list. If your results // were truncated, you can use the Marker parameter to make a subsequent pagination // request to retrieve more items in the list. Truncated *bool `type:"boolean"` } // String returns the string representation func (s ListKeysOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListKeysOutput) GoString() string { return s.String() } type ListRetirableGrantsInput struct { _ struct{} `type:"structure"` // When paginating results, specify the maximum number of items to return in // the response. If additional items exist beyond the number you specify, the // Truncated element in the response is set to true. // // This value is optional. If you include a value, it must be between 1 and // 100, inclusive. If you do not include a value, it defaults to 50. Limit *int64 `min:"1" type:"integer"` // Use this parameter only when paginating results and only in a subsequent // request after you receive a response with truncated results. Set it to the // value of NextMarker from the response you just received. Marker *string `min:"1" type:"string"` // The retiring principal for which to list grants. // // To specify the retiring principal, use the Amazon Resource Name (ARN) (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) // of an AWS principal. Valid AWS principals include AWS accounts (root), IAM // users, federated users, and assumed role users. For examples of the ARN syntax // for specifying a principal, see AWS Identity and Access Management (IAM) // (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-iam) // in the Example ARNs section of the Amazon Web Services General Reference. // // RetiringPrincipal is a required field RetiringPrincipal *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListRetirableGrantsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRetirableGrantsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListRetirableGrantsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListRetirableGrantsInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.RetiringPrincipal == nil { invalidParams.Add(request.NewErrParamRequired("RetiringPrincipal")) } if s.RetiringPrincipal != nil && len(*s.RetiringPrincipal) < 1 { invalidParams.Add(request.NewErrParamMinLen("RetiringPrincipal", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutKeyPolicyInput struct { _ struct{} `type:"structure"` // A flag to indicate whether to bypass the key policy lockout safety check. // // Setting this value to true increases the likelihood that the CMK becomes // unmanageable. Do not set this value to true indiscriminately. // // For more information, refer to the scenario in the Default Key Policy (http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam) // section in the AWS Key Management Service Developer Guide. // // Use this parameter only when you intend to prevent the principal making the // request from making a subsequent PutKeyPolicy request on the CMK. // // The default value is false. BypassPolicyLockoutSafetyCheck *bool `type:"boolean"` // A unique identifier for the CMK. // // Use the CMK's unique identifier or its Amazon Resource Name (ARN). For example: // // * Unique ID: 1234abcd-12ab-34cd-56ef-1234567890ab // // * ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` // The key policy to attach to the CMK. // // If you do not set BypassPolicyLockoutSafetyCheck to true, the policy must // meet the following criteria: // // * It must allow the principal making the PutKeyPolicy request to make // a subsequent PutKeyPolicy request on the CMK. This reduces the likelihood // that the CMK becomes unmanageable. For more information, refer to the // scenario in the Default Key Policy (http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam) // section in the AWS Key Management Service Developer Guide. // // * The principal(s) specified in the key policy must exist and be visible // to AWS KMS. When you create a new AWS principal (for example, an IAM user // or role), you might need to enforce a delay before specifying the new // principal in a key policy because the new principal might not immediately // be visible to AWS KMS. For more information, see Changes that I make are // not always immediately visible (http://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_general.html#troubleshoot_general_eventual-consistency) // in the IAM User Guide. // // The policy size limit is 32 KiB (32768 bytes). // // Policy is a required field Policy *string `min:"1" type:"string" required:"true"` // The name of the key policy. // // This value must be default. // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s PutKeyPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutKeyPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutKeyPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutKeyPolicyInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if s.Policy == nil { invalidParams.Add(request.NewErrParamRequired("Policy")) } if s.Policy != nil && len(*s.Policy) < 1 { invalidParams.Add(request.NewErrParamMinLen("Policy", 1)) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutKeyPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutKeyPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutKeyPolicyOutput) GoString() string { return s.String() } type ReEncryptInput struct { _ struct{} `type:"structure"` // Ciphertext of the data to re-encrypt. // // CiphertextBlob is automatically base64 encoded/decoded by the SDK. // // CiphertextBlob is a required field CiphertextBlob []byte `min:"1" type:"blob" required:"true"` // Encryption context to be used when the data is re-encrypted. DestinationEncryptionContext map[string]*string `type:"map"` // A unique identifier for the customer master key used to re-encrypt the data. // This value can be a globally unique identifier, a fully specified ARN to // either an alias or a key, or an alias name prefixed by "alias/". // // * Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 // // * Alias ARN Example - arn:aws:kms:us-east-1:123456789012:alias/MyAliasName // // * Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012 // // * Alias Name Example - alias/MyAliasName // // DestinationKeyId is a required field DestinationKeyId *string `min:"1" type:"string" required:"true"` // A list of grant tokens. // // For more information, see Grant Tokens (http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token) // in the AWS Key Management Service Developer Guide. GrantTokens []*string `type:"list"` // Encryption context used to encrypt and decrypt the data specified in the // CiphertextBlob parameter. SourceEncryptionContext map[string]*string `type:"map"` } // String returns the string representation func (s ReEncryptInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReEncryptInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReEncryptInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReEncryptInput"} if s.CiphertextBlob == nil { invalidParams.Add(request.NewErrParamRequired("CiphertextBlob")) } if s.CiphertextBlob != nil && len(s.CiphertextBlob) < 1 { invalidParams.Add(request.NewErrParamMinLen("CiphertextBlob", 1)) } if s.DestinationKeyId == nil { invalidParams.Add(request.NewErrParamRequired("DestinationKeyId")) } if s.DestinationKeyId != nil && len(*s.DestinationKeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("DestinationKeyId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ReEncryptOutput struct { _ struct{} `type:"structure"` // The re-encrypted data. If you are using the CLI, the value is Base64 encoded. // Otherwise, it is not encoded. // // CiphertextBlob is automatically base64 encoded/decoded by the SDK. CiphertextBlob []byte `min:"1" type:"blob"` // Unique identifier of the key used to re-encrypt the data. KeyId *string `min:"1" type:"string"` // Unique identifier of the key used to originally encrypt the data. SourceKeyId *string `min:"1" type:"string"` } // String returns the string representation func (s ReEncryptOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReEncryptOutput) GoString() string { return s.String() } type RetireGrantInput struct { _ struct{} `type:"structure"` // Unique identifier of the grant to be retired. The grant ID is returned by // the CreateGrant function. // // * Grant ID Example - 0123456789012345678901234567890123456789012345678901234567890123 GrantId *string `min:"1" type:"string"` // Token that identifies the grant to be retired. GrantToken *string `min:"1" type:"string"` // A unique identifier for the customer master key associated with the grant. // This value can be a globally unique identifier or a fully specified ARN of // the key. // // * Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 // // * Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012 KeyId *string `min:"1" type:"string"` } // String returns the string representation func (s RetireGrantInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RetireGrantInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RetireGrantInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RetireGrantInput"} if s.GrantId != nil && len(*s.GrantId) < 1 { invalidParams.Add(request.NewErrParamMinLen("GrantId", 1)) } if s.GrantToken != nil && len(*s.GrantToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("GrantToken", 1)) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RetireGrantOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RetireGrantOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RetireGrantOutput) GoString() string { return s.String() } type RevokeGrantInput struct { _ struct{} `type:"structure"` // Identifier of the grant to be revoked. // // GrantId is a required field GrantId *string `min:"1" type:"string" required:"true"` // A unique identifier for the customer master key associated with the grant. // This value can be a globally unique identifier or the fully specified ARN // to a key. // // * Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 // // * Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012 // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s RevokeGrantInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RevokeGrantInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RevokeGrantInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RevokeGrantInput"} if s.GrantId == nil { invalidParams.Add(request.NewErrParamRequired("GrantId")) } if s.GrantId != nil && len(*s.GrantId) < 1 { invalidParams.Add(request.NewErrParamMinLen("GrantId", 1)) } if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RevokeGrantOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RevokeGrantOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RevokeGrantOutput) GoString() string { return s.String() } type ScheduleKeyDeletionInput struct { _ struct{} `type:"structure"` // The unique identifier for the customer master key (CMK) to delete. // // To specify this value, use the unique key ID or the Amazon Resource Name // (ARN) of the CMK. Examples: // // * Unique key ID: 1234abcd-12ab-34cd-56ef-1234567890ab // // * Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab // // To obtain the unique key ID and key ARN for a given CMK, use ListKeys or // DescribeKey. // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` // The waiting period, specified in number of days. After the waiting period // ends, AWS KMS deletes the customer master key (CMK). // // This value is optional. If you include a value, it must be between 7 and // 30, inclusive. If you do not include a value, it defaults to 30. PendingWindowInDays *int64 `min:"1" type:"integer"` } // String returns the string representation func (s ScheduleKeyDeletionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduleKeyDeletionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ScheduleKeyDeletionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ScheduleKeyDeletionInput"} if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if s.PendingWindowInDays != nil && *s.PendingWindowInDays < 1 { invalidParams.Add(request.NewErrParamMinValue("PendingWindowInDays", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ScheduleKeyDeletionOutput struct { _ struct{} `type:"structure"` // The date and time after which AWS KMS deletes the customer master key (CMK). DeletionDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The unique identifier of the customer master key (CMK) for which deletion // is scheduled. KeyId *string `min:"1" type:"string"` } // String returns the string representation func (s ScheduleKeyDeletionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduleKeyDeletionOutput) GoString() string { return s.String() } type UpdateAliasInput struct { _ struct{} `type:"structure"` // String that contains the name of the alias to be modified. The name must // start with the word "alias" followed by a forward slash (alias/). Aliases // that begin with "alias/aws" are reserved. // // AliasName is a required field AliasName *string `min:"1" type:"string" required:"true"` // Unique identifier of the customer master key to be mapped to the alias. This // value can be a globally unique identifier or the fully specified ARN of a // key. // // * Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 // // * Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012 // // You can call ListAliases to verify that the alias is mapped to the correct // TargetKeyId. // // TargetKeyId is a required field TargetKeyId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateAliasInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateAliasInput"} if s.AliasName == nil { invalidParams.Add(request.NewErrParamRequired("AliasName")) } if s.AliasName != nil && len(*s.AliasName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AliasName", 1)) } if s.TargetKeyId == nil { invalidParams.Add(request.NewErrParamRequired("TargetKeyId")) } if s.TargetKeyId != nil && len(*s.TargetKeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("TargetKeyId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateAliasOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAliasOutput) GoString() string { return s.String() } type UpdateKeyDescriptionInput struct { _ struct{} `type:"structure"` // New description for the key. // // Description is a required field Description *string `type:"string" required:"true"` // A unique identifier for the customer master key. This value can be a globally // unique identifier or the fully specified ARN to a key. // // * Key ARN Example - arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 // // * Globally Unique Key ID Example - 12345678-1234-1234-1234-123456789012 // // KeyId is a required field KeyId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateKeyDescriptionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateKeyDescriptionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateKeyDescriptionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateKeyDescriptionInput"} if s.Description == nil { invalidParams.Add(request.NewErrParamRequired("Description")) } if s.KeyId == nil { invalidParams.Add(request.NewErrParamRequired("KeyId")) } if s.KeyId != nil && len(*s.KeyId) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateKeyDescriptionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateKeyDescriptionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateKeyDescriptionOutput) GoString() string { return s.String() } const ( // AlgorithmSpecRsaesPkcs1V15 is a AlgorithmSpec enum value AlgorithmSpecRsaesPkcs1V15 = "RSAES_PKCS1_V1_5" // AlgorithmSpecRsaesOaepSha1 is a AlgorithmSpec enum value AlgorithmSpecRsaesOaepSha1 = "RSAES_OAEP_SHA_1" // AlgorithmSpecRsaesOaepSha256 is a AlgorithmSpec enum value AlgorithmSpecRsaesOaepSha256 = "RSAES_OAEP_SHA_256" ) const ( // DataKeySpecAes256 is a DataKeySpec enum value DataKeySpecAes256 = "AES_256" // DataKeySpecAes128 is a DataKeySpec enum value DataKeySpecAes128 = "AES_128" ) const ( // ExpirationModelTypeKeyMaterialExpires is a ExpirationModelType enum value ExpirationModelTypeKeyMaterialExpires = "KEY_MATERIAL_EXPIRES" // ExpirationModelTypeKeyMaterialDoesNotExpire is a ExpirationModelType enum value ExpirationModelTypeKeyMaterialDoesNotExpire = "KEY_MATERIAL_DOES_NOT_EXPIRE" ) const ( // GrantOperationDecrypt is a GrantOperation enum value GrantOperationDecrypt = "Decrypt" // GrantOperationEncrypt is a GrantOperation enum value GrantOperationEncrypt = "Encrypt" // GrantOperationGenerateDataKey is a GrantOperation enum value GrantOperationGenerateDataKey = "GenerateDataKey" // GrantOperationGenerateDataKeyWithoutPlaintext is a GrantOperation enum value GrantOperationGenerateDataKeyWithoutPlaintext = "GenerateDataKeyWithoutPlaintext" // GrantOperationReEncryptFrom is a GrantOperation enum value GrantOperationReEncryptFrom = "ReEncryptFrom" // GrantOperationReEncryptTo is a GrantOperation enum value GrantOperationReEncryptTo = "ReEncryptTo" // GrantOperationCreateGrant is a GrantOperation enum value GrantOperationCreateGrant = "CreateGrant" // GrantOperationRetireGrant is a GrantOperation enum value GrantOperationRetireGrant = "RetireGrant" // GrantOperationDescribeKey is a GrantOperation enum value GrantOperationDescribeKey = "DescribeKey" ) const ( // KeyStateEnabled is a KeyState enum value KeyStateEnabled = "Enabled" // KeyStateDisabled is a KeyState enum value KeyStateDisabled = "Disabled" // KeyStatePendingDeletion is a KeyState enum value KeyStatePendingDeletion = "PendingDeletion" // KeyStatePendingImport is a KeyState enum value KeyStatePendingImport = "PendingImport" ) const ( // KeyUsageTypeEncryptDecrypt is a KeyUsageType enum value KeyUsageTypeEncryptDecrypt = "ENCRYPT_DECRYPT" ) const ( // OriginTypeAwsKms is a OriginType enum value OriginTypeAwsKms = "AWS_KMS" // OriginTypeExternal is a OriginType enum value OriginTypeExternal = "EXTERNAL" ) const ( // WrappingKeySpecRsa2048 is a WrappingKeySpec enum value WrappingKeySpecRsa2048 = "RSA_2048" ) aws-sdk-go-1.4.22/service/kms/examples_test.go000066400000000000000000000477261300374646400212410ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package kms_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/kms" ) var _ time.Duration var _ bytes.Buffer func ExampleKMS_CancelKeyDeletion() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.CancelKeyDeletionInput{ KeyId: aws.String("KeyIdType"), // Required } resp, err := svc.CancelKeyDeletion(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_CreateAlias() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.CreateAliasInput{ AliasName: aws.String("AliasNameType"), // Required TargetKeyId: aws.String("KeyIdType"), // Required } resp, err := svc.CreateAlias(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_CreateGrant() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.CreateGrantInput{ GranteePrincipal: aws.String("PrincipalIdType"), // Required KeyId: aws.String("KeyIdType"), // Required Constraints: &kms.GrantConstraints{ EncryptionContextEquals: map[string]*string{ "Key": aws.String("EncryptionContextValue"), // Required // More values... }, EncryptionContextSubset: map[string]*string{ "Key": aws.String("EncryptionContextValue"), // Required // More values... }, }, GrantTokens: []*string{ aws.String("GrantTokenType"), // Required // More values... }, Name: aws.String("GrantNameType"), Operations: []*string{ aws.String("GrantOperation"), // Required // More values... }, RetiringPrincipal: aws.String("PrincipalIdType"), } resp, err := svc.CreateGrant(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_CreateKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.CreateKeyInput{ BypassPolicyLockoutSafetyCheck: aws.Bool(true), Description: aws.String("DescriptionType"), KeyUsage: aws.String("KeyUsageType"), Origin: aws.String("OriginType"), Policy: aws.String("PolicyType"), } resp, err := svc.CreateKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_Decrypt() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.DecryptInput{ CiphertextBlob: []byte("PAYLOAD"), // Required EncryptionContext: map[string]*string{ "Key": aws.String("EncryptionContextValue"), // Required // More values... }, GrantTokens: []*string{ aws.String("GrantTokenType"), // Required // More values... }, } resp, err := svc.Decrypt(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_DeleteAlias() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.DeleteAliasInput{ AliasName: aws.String("AliasNameType"), // Required } resp, err := svc.DeleteAlias(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_DeleteImportedKeyMaterial() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.DeleteImportedKeyMaterialInput{ KeyId: aws.String("KeyIdType"), // Required } resp, err := svc.DeleteImportedKeyMaterial(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_DescribeKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.DescribeKeyInput{ KeyId: aws.String("KeyIdType"), // Required GrantTokens: []*string{ aws.String("GrantTokenType"), // Required // More values... }, } resp, err := svc.DescribeKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_DisableKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.DisableKeyInput{ KeyId: aws.String("KeyIdType"), // Required } resp, err := svc.DisableKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_DisableKeyRotation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.DisableKeyRotationInput{ KeyId: aws.String("KeyIdType"), // Required } resp, err := svc.DisableKeyRotation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_EnableKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.EnableKeyInput{ KeyId: aws.String("KeyIdType"), // Required } resp, err := svc.EnableKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_EnableKeyRotation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.EnableKeyRotationInput{ KeyId: aws.String("KeyIdType"), // Required } resp, err := svc.EnableKeyRotation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_Encrypt() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.EncryptInput{ KeyId: aws.String("KeyIdType"), // Required Plaintext: []byte("PAYLOAD"), // Required EncryptionContext: map[string]*string{ "Key": aws.String("EncryptionContextValue"), // Required // More values... }, GrantTokens: []*string{ aws.String("GrantTokenType"), // Required // More values... }, } resp, err := svc.Encrypt(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_GenerateDataKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.GenerateDataKeyInput{ KeyId: aws.String("KeyIdType"), // Required EncryptionContext: map[string]*string{ "Key": aws.String("EncryptionContextValue"), // Required // More values... }, GrantTokens: []*string{ aws.String("GrantTokenType"), // Required // More values... }, KeySpec: aws.String("DataKeySpec"), NumberOfBytes: aws.Int64(1), } resp, err := svc.GenerateDataKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_GenerateDataKeyWithoutPlaintext() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.GenerateDataKeyWithoutPlaintextInput{ KeyId: aws.String("KeyIdType"), // Required EncryptionContext: map[string]*string{ "Key": aws.String("EncryptionContextValue"), // Required // More values... }, GrantTokens: []*string{ aws.String("GrantTokenType"), // Required // More values... }, KeySpec: aws.String("DataKeySpec"), NumberOfBytes: aws.Int64(1), } resp, err := svc.GenerateDataKeyWithoutPlaintext(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_GenerateRandom() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.GenerateRandomInput{ NumberOfBytes: aws.Int64(1), } resp, err := svc.GenerateRandom(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_GetKeyPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.GetKeyPolicyInput{ KeyId: aws.String("KeyIdType"), // Required PolicyName: aws.String("PolicyNameType"), // Required } resp, err := svc.GetKeyPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_GetKeyRotationStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.GetKeyRotationStatusInput{ KeyId: aws.String("KeyIdType"), // Required } resp, err := svc.GetKeyRotationStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_GetParametersForImport() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.GetParametersForImportInput{ KeyId: aws.String("KeyIdType"), // Required WrappingAlgorithm: aws.String("AlgorithmSpec"), // Required WrappingKeySpec: aws.String("WrappingKeySpec"), // Required } resp, err := svc.GetParametersForImport(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_ImportKeyMaterial() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.ImportKeyMaterialInput{ EncryptedKeyMaterial: []byte("PAYLOAD"), // Required ImportToken: []byte("PAYLOAD"), // Required KeyId: aws.String("KeyIdType"), // Required ExpirationModel: aws.String("ExpirationModelType"), ValidTo: aws.Time(time.Now()), } resp, err := svc.ImportKeyMaterial(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_ListAliases() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.ListAliasesInput{ Limit: aws.Int64(1), Marker: aws.String("MarkerType"), } resp, err := svc.ListAliases(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_ListGrants() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.ListGrantsInput{ KeyId: aws.String("KeyIdType"), // Required Limit: aws.Int64(1), Marker: aws.String("MarkerType"), } resp, err := svc.ListGrants(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_ListKeyPolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.ListKeyPoliciesInput{ KeyId: aws.String("KeyIdType"), // Required Limit: aws.Int64(1), Marker: aws.String("MarkerType"), } resp, err := svc.ListKeyPolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_ListKeys() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.ListKeysInput{ Limit: aws.Int64(1), Marker: aws.String("MarkerType"), } resp, err := svc.ListKeys(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_ListRetirableGrants() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.ListRetirableGrantsInput{ RetiringPrincipal: aws.String("PrincipalIdType"), // Required Limit: aws.Int64(1), Marker: aws.String("MarkerType"), } resp, err := svc.ListRetirableGrants(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_PutKeyPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.PutKeyPolicyInput{ KeyId: aws.String("KeyIdType"), // Required Policy: aws.String("PolicyType"), // Required PolicyName: aws.String("PolicyNameType"), // Required BypassPolicyLockoutSafetyCheck: aws.Bool(true), } resp, err := svc.PutKeyPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_ReEncrypt() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.ReEncryptInput{ CiphertextBlob: []byte("PAYLOAD"), // Required DestinationKeyId: aws.String("KeyIdType"), // Required DestinationEncryptionContext: map[string]*string{ "Key": aws.String("EncryptionContextValue"), // Required // More values... }, GrantTokens: []*string{ aws.String("GrantTokenType"), // Required // More values... }, SourceEncryptionContext: map[string]*string{ "Key": aws.String("EncryptionContextValue"), // Required // More values... }, } resp, err := svc.ReEncrypt(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_RetireGrant() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.RetireGrantInput{ GrantId: aws.String("GrantIdType"), GrantToken: aws.String("GrantTokenType"), KeyId: aws.String("KeyIdType"), } resp, err := svc.RetireGrant(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_RevokeGrant() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.RevokeGrantInput{ GrantId: aws.String("GrantIdType"), // Required KeyId: aws.String("KeyIdType"), // Required } resp, err := svc.RevokeGrant(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_ScheduleKeyDeletion() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.ScheduleKeyDeletionInput{ KeyId: aws.String("KeyIdType"), // Required PendingWindowInDays: aws.Int64(1), } resp, err := svc.ScheduleKeyDeletion(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_UpdateAlias() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.UpdateAliasInput{ AliasName: aws.String("AliasNameType"), // Required TargetKeyId: aws.String("KeyIdType"), // Required } resp, err := svc.UpdateAlias(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleKMS_UpdateKeyDescription() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := kms.New(sess) params := &kms.UpdateKeyDescriptionInput{ Description: aws.String("DescriptionType"), // Required KeyId: aws.String("KeyIdType"), // Required } resp, err := svc.UpdateKeyDescription(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/kms/kmsiface/000077500000000000000000000000001300374646400175775ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/kms/kmsiface/interface.go000066400000000000000000000175541300374646400221020ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package kmsiface provides an interface to enable mocking the AWS Key Management Service service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package kmsiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/kms" ) // KMSAPI provides an interface to enable mocking the // kms.KMS service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Key Management Service. // func myFunc(svc kmsiface.KMSAPI) bool { // // Make svc.CancelKeyDeletion request // } // // func main() { // sess := session.New() // svc := kms.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockKMSClient struct { // kmsiface.KMSAPI // } // func (m *mockKMSClient) CancelKeyDeletion(input *kms.CancelKeyDeletionInput) (*kms.CancelKeyDeletionOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockKMSClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type KMSAPI interface { CancelKeyDeletionRequest(*kms.CancelKeyDeletionInput) (*request.Request, *kms.CancelKeyDeletionOutput) CancelKeyDeletion(*kms.CancelKeyDeletionInput) (*kms.CancelKeyDeletionOutput, error) CreateAliasRequest(*kms.CreateAliasInput) (*request.Request, *kms.CreateAliasOutput) CreateAlias(*kms.CreateAliasInput) (*kms.CreateAliasOutput, error) CreateGrantRequest(*kms.CreateGrantInput) (*request.Request, *kms.CreateGrantOutput) CreateGrant(*kms.CreateGrantInput) (*kms.CreateGrantOutput, error) CreateKeyRequest(*kms.CreateKeyInput) (*request.Request, *kms.CreateKeyOutput) CreateKey(*kms.CreateKeyInput) (*kms.CreateKeyOutput, error) DecryptRequest(*kms.DecryptInput) (*request.Request, *kms.DecryptOutput) Decrypt(*kms.DecryptInput) (*kms.DecryptOutput, error) DeleteAliasRequest(*kms.DeleteAliasInput) (*request.Request, *kms.DeleteAliasOutput) DeleteAlias(*kms.DeleteAliasInput) (*kms.DeleteAliasOutput, error) DeleteImportedKeyMaterialRequest(*kms.DeleteImportedKeyMaterialInput) (*request.Request, *kms.DeleteImportedKeyMaterialOutput) DeleteImportedKeyMaterial(*kms.DeleteImportedKeyMaterialInput) (*kms.DeleteImportedKeyMaterialOutput, error) DescribeKeyRequest(*kms.DescribeKeyInput) (*request.Request, *kms.DescribeKeyOutput) DescribeKey(*kms.DescribeKeyInput) (*kms.DescribeKeyOutput, error) DisableKeyRequest(*kms.DisableKeyInput) (*request.Request, *kms.DisableKeyOutput) DisableKey(*kms.DisableKeyInput) (*kms.DisableKeyOutput, error) DisableKeyRotationRequest(*kms.DisableKeyRotationInput) (*request.Request, *kms.DisableKeyRotationOutput) DisableKeyRotation(*kms.DisableKeyRotationInput) (*kms.DisableKeyRotationOutput, error) EnableKeyRequest(*kms.EnableKeyInput) (*request.Request, *kms.EnableKeyOutput) EnableKey(*kms.EnableKeyInput) (*kms.EnableKeyOutput, error) EnableKeyRotationRequest(*kms.EnableKeyRotationInput) (*request.Request, *kms.EnableKeyRotationOutput) EnableKeyRotation(*kms.EnableKeyRotationInput) (*kms.EnableKeyRotationOutput, error) EncryptRequest(*kms.EncryptInput) (*request.Request, *kms.EncryptOutput) Encrypt(*kms.EncryptInput) (*kms.EncryptOutput, error) GenerateDataKeyRequest(*kms.GenerateDataKeyInput) (*request.Request, *kms.GenerateDataKeyOutput) GenerateDataKey(*kms.GenerateDataKeyInput) (*kms.GenerateDataKeyOutput, error) GenerateDataKeyWithoutPlaintextRequest(*kms.GenerateDataKeyWithoutPlaintextInput) (*request.Request, *kms.GenerateDataKeyWithoutPlaintextOutput) GenerateDataKeyWithoutPlaintext(*kms.GenerateDataKeyWithoutPlaintextInput) (*kms.GenerateDataKeyWithoutPlaintextOutput, error) GenerateRandomRequest(*kms.GenerateRandomInput) (*request.Request, *kms.GenerateRandomOutput) GenerateRandom(*kms.GenerateRandomInput) (*kms.GenerateRandomOutput, error) GetKeyPolicyRequest(*kms.GetKeyPolicyInput) (*request.Request, *kms.GetKeyPolicyOutput) GetKeyPolicy(*kms.GetKeyPolicyInput) (*kms.GetKeyPolicyOutput, error) GetKeyRotationStatusRequest(*kms.GetKeyRotationStatusInput) (*request.Request, *kms.GetKeyRotationStatusOutput) GetKeyRotationStatus(*kms.GetKeyRotationStatusInput) (*kms.GetKeyRotationStatusOutput, error) GetParametersForImportRequest(*kms.GetParametersForImportInput) (*request.Request, *kms.GetParametersForImportOutput) GetParametersForImport(*kms.GetParametersForImportInput) (*kms.GetParametersForImportOutput, error) ImportKeyMaterialRequest(*kms.ImportKeyMaterialInput) (*request.Request, *kms.ImportKeyMaterialOutput) ImportKeyMaterial(*kms.ImportKeyMaterialInput) (*kms.ImportKeyMaterialOutput, error) ListAliasesRequest(*kms.ListAliasesInput) (*request.Request, *kms.ListAliasesOutput) ListAliases(*kms.ListAliasesInput) (*kms.ListAliasesOutput, error) ListAliasesPages(*kms.ListAliasesInput, func(*kms.ListAliasesOutput, bool) bool) error ListGrantsRequest(*kms.ListGrantsInput) (*request.Request, *kms.ListGrantsResponse) ListGrants(*kms.ListGrantsInput) (*kms.ListGrantsResponse, error) ListGrantsPages(*kms.ListGrantsInput, func(*kms.ListGrantsResponse, bool) bool) error ListKeyPoliciesRequest(*kms.ListKeyPoliciesInput) (*request.Request, *kms.ListKeyPoliciesOutput) ListKeyPolicies(*kms.ListKeyPoliciesInput) (*kms.ListKeyPoliciesOutput, error) ListKeyPoliciesPages(*kms.ListKeyPoliciesInput, func(*kms.ListKeyPoliciesOutput, bool) bool) error ListKeysRequest(*kms.ListKeysInput) (*request.Request, *kms.ListKeysOutput) ListKeys(*kms.ListKeysInput) (*kms.ListKeysOutput, error) ListKeysPages(*kms.ListKeysInput, func(*kms.ListKeysOutput, bool) bool) error ListRetirableGrantsRequest(*kms.ListRetirableGrantsInput) (*request.Request, *kms.ListGrantsResponse) ListRetirableGrants(*kms.ListRetirableGrantsInput) (*kms.ListGrantsResponse, error) PutKeyPolicyRequest(*kms.PutKeyPolicyInput) (*request.Request, *kms.PutKeyPolicyOutput) PutKeyPolicy(*kms.PutKeyPolicyInput) (*kms.PutKeyPolicyOutput, error) ReEncryptRequest(*kms.ReEncryptInput) (*request.Request, *kms.ReEncryptOutput) ReEncrypt(*kms.ReEncryptInput) (*kms.ReEncryptOutput, error) RetireGrantRequest(*kms.RetireGrantInput) (*request.Request, *kms.RetireGrantOutput) RetireGrant(*kms.RetireGrantInput) (*kms.RetireGrantOutput, error) RevokeGrantRequest(*kms.RevokeGrantInput) (*request.Request, *kms.RevokeGrantOutput) RevokeGrant(*kms.RevokeGrantInput) (*kms.RevokeGrantOutput, error) ScheduleKeyDeletionRequest(*kms.ScheduleKeyDeletionInput) (*request.Request, *kms.ScheduleKeyDeletionOutput) ScheduleKeyDeletion(*kms.ScheduleKeyDeletionInput) (*kms.ScheduleKeyDeletionOutput, error) UpdateAliasRequest(*kms.UpdateAliasInput) (*request.Request, *kms.UpdateAliasOutput) UpdateAlias(*kms.UpdateAliasInput) (*kms.UpdateAliasOutput, error) UpdateKeyDescriptionRequest(*kms.UpdateKeyDescriptionInput) (*request.Request, *kms.UpdateKeyDescriptionOutput) UpdateKeyDescription(*kms.UpdateKeyDescriptionInput) (*kms.UpdateKeyDescriptionOutput, error) } var _ KMSAPI = (*kms.KMS)(nil) aws-sdk-go-1.4.22/service/kms/service.go000066400000000000000000000141611300374646400200070ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package kms import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // AWS Key Management Service (AWS KMS) is an encryption and key management // web service. This guide describes the AWS KMS operations that you can call // programmatically. For general information about AWS KMS, see the AWS Key // Management Service Developer Guide (http://docs.aws.amazon.com/kms/latest/developerguide/). // // AWS provides SDKs that consist of libraries and sample code for various programming // languages and platforms (Java, Ruby, .Net, iOS, Android, etc.). The SDKs // provide a convenient way to create programmatic access to AWS KMS and other // AWS services. For example, the SDKs take care of tasks such as signing requests // (see below), managing errors, and retrying requests automatically. For more // information about the AWS SDKs, including how to download and install them, // see Tools for Amazon Web Services (http://aws.amazon.com/tools/). // // We recommend that you use the AWS SDKs to make programmatic API calls to // AWS KMS. // // Clients must support TLS (Transport Layer Security) 1.0. We recommend TLS // 1.2. Clients must also support cipher suites with Perfect Forward Secrecy // (PFS) such as Ephemeral Diffie-Hellman (DHE) or Elliptic Curve Ephemeral // Diffie-Hellman (ECDHE). Most modern systems such as Java 7 and later support // these modes. // // Signing Requests // // Requests must be signed by using an access key ID and a secret access key. // We strongly recommend that you do not use your AWS account (root) access // key ID and secret key for everyday work with AWS KMS. Instead, use the access // key ID and secret access key for an IAM user, or you can use the AWS Security // Token Service to generate temporary security credentials that you can use // to sign requests. // // All AWS KMS operations require Signature Version 4 (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). // // Logging API Requests // // AWS KMS supports AWS CloudTrail, a service that logs AWS API calls and related // events for your AWS account and delivers them to an Amazon S3 bucket that // you specify. By using the information collected by CloudTrail, you can determine // what requests were made to AWS KMS, who made the request, when it was made, // and so on. To learn more about CloudTrail, including how to turn it on and // find your log files, see the AWS CloudTrail User Guide (http://docs.aws.amazon.com/awscloudtrail/latest/userguide/). // // Additional Resources // // For more information about credentials and request signing, see the following: // // * AWS Security Credentials (http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html) // - This topic provides general information about the types of credentials // used for accessing AWS. // // * Temporary Security Credentials (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html) // - This section of the IAM User Guide describes how to create and use temporary // security credentials. // // * Signature Version 4 Signing Process (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) // - This set of topics walks you through the process of signing a request // using an access key ID and a secret access key. // // Commonly Used APIs // // Of the APIs discussed in this guide, the following will prove the most useful // for most applications. You will likely perform actions other than these, // such as creating keys and assigning policies, by using the console. // // * Encrypt // // * Decrypt // // * GenerateDataKey // // * GenerateDataKeyWithoutPlaintext //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type KMS struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "kms" // New creates a new instance of the KMS client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a KMS client from just a session. // svc := kms.New(mySession) // // // Create a KMS client with additional configuration // svc := kms.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *KMS { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *KMS { svc := &KMS{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-11-01", JSONVersion: "1.1", TargetPrefix: "TrentService", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a KMS operation and runs any // custom request initialization. func (c *KMS) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/lambda/000077500000000000000000000000001300374646400164435ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/lambda/api.go000066400000000000000000004607501300374646400175570ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package lambda provides a client for AWS Lambda. package lambda import ( "io" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) const opAddPermission = "AddPermission" // AddPermissionRequest generates a "aws/request.Request" representing the // client's request for the AddPermission operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddPermission for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddPermission method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddPermissionRequest method. // req, resp := client.AddPermissionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) AddPermissionRequest(input *AddPermissionInput) (req *request.Request, output *AddPermissionOutput) { op := &request.Operation{ Name: opAddPermission, HTTPMethod: "POST", HTTPPath: "/2015-03-31/functions/{FunctionName}/policy", } if input == nil { input = &AddPermissionInput{} } req = c.newRequest(op, input, output) output = &AddPermissionOutput{} req.Data = output return } // AddPermission API operation for AWS Lambda. // // Adds a permission to the resource policy associated with the specified AWS // Lambda function. You use resource policies to grant permissions to event // sources that use push model. In a push model, event sources (such as Amazon // S3 and custom applications) invoke your Lambda function. Each permission // you add to the resource policy allows an event source, permission to invoke // the Lambda function. // // For information about the push model, see AWS Lambda: How it Works (http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html). // // If you are using versioning, the permissions you add are specific to the // Lambda function version or alias you specify in the AddPermission request // via the Qualifier parameter. For more information about versioning, see AWS // Lambda Function Versioning and Aliases (http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html). // // This operation requires permission for the lambda:AddPermission action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation AddPermission for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * ResourceConflictException // The resource already exists. // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * PolicyLengthExceededException // Lambda function access policy is limited to 20 KB. // // * TooManyRequestsException // func (c *Lambda) AddPermission(input *AddPermissionInput) (*AddPermissionOutput, error) { req, out := c.AddPermissionRequest(input) err := req.Send() return out, err } const opCreateAlias = "CreateAlias" // CreateAliasRequest generates a "aws/request.Request" representing the // client's request for the CreateAlias operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateAlias for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateAlias method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateAliasRequest method. // req, resp := client.CreateAliasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) CreateAliasRequest(input *CreateAliasInput) (req *request.Request, output *AliasConfiguration) { op := &request.Operation{ Name: opCreateAlias, HTTPMethod: "POST", HTTPPath: "/2015-03-31/functions/{FunctionName}/aliases", } if input == nil { input = &CreateAliasInput{} } req = c.newRequest(op, input, output) output = &AliasConfiguration{} req.Data = output return } // CreateAlias API operation for AWS Lambda. // // Creates an alias that points to the specified Lambda function version. For // more information, see Introduction to AWS Lambda Aliases (http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html). // // Alias names are unique for a given function. This requires permission for // the lambda:CreateAlias action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation CreateAlias for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * ResourceConflictException // The resource already exists. // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * TooManyRequestsException // func (c *Lambda) CreateAlias(input *CreateAliasInput) (*AliasConfiguration, error) { req, out := c.CreateAliasRequest(input) err := req.Send() return out, err } const opCreateEventSourceMapping = "CreateEventSourceMapping" // CreateEventSourceMappingRequest generates a "aws/request.Request" representing the // client's request for the CreateEventSourceMapping operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateEventSourceMapping for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateEventSourceMapping method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateEventSourceMappingRequest method. // req, resp := client.CreateEventSourceMappingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) CreateEventSourceMappingRequest(input *CreateEventSourceMappingInput) (req *request.Request, output *EventSourceMappingConfiguration) { op := &request.Operation{ Name: opCreateEventSourceMapping, HTTPMethod: "POST", HTTPPath: "/2015-03-31/event-source-mappings/", } if input == nil { input = &CreateEventSourceMappingInput{} } req = c.newRequest(op, input, output) output = &EventSourceMappingConfiguration{} req.Data = output return } // CreateEventSourceMapping API operation for AWS Lambda. // // Identifies a stream as an event source for a Lambda function. It can be either // an Amazon Kinesis stream or an Amazon DynamoDB stream. AWS Lambda invokes // the specified function when records are posted to the stream. // // This association between a stream source and a Lambda function is called // the event source mapping. // // This event source mapping is relevant only in the AWS Lambda pull model, // where AWS Lambda invokes the function. For more information, go to AWS Lambda: // How it Works (http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html) // in the AWS Lambda Developer Guide. // // You provide mapping information (for example, which stream to read from and // which Lambda function to invoke) in the request body. // // Each event source, such as an Amazon Kinesis or a DynamoDB stream, can be // associated with multiple AWS Lambda function. A given Lambda function can // be associated with multiple AWS event sources. // // If you are using versioning, you can specify a specific function version // or an alias via the function name parameter. For more information about versioning, // see AWS Lambda Function Versioning and Aliases (http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html). // // This operation requires permission for the lambda:CreateEventSourceMapping // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation CreateEventSourceMapping for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * ResourceConflictException // The resource already exists. // // * TooManyRequestsException // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // func (c *Lambda) CreateEventSourceMapping(input *CreateEventSourceMappingInput) (*EventSourceMappingConfiguration, error) { req, out := c.CreateEventSourceMappingRequest(input) err := req.Send() return out, err } const opCreateFunction = "CreateFunction" // CreateFunctionRequest generates a "aws/request.Request" representing the // client's request for the CreateFunction operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateFunction for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateFunction method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateFunctionRequest method. // req, resp := client.CreateFunctionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) CreateFunctionRequest(input *CreateFunctionInput) (req *request.Request, output *FunctionConfiguration) { op := &request.Operation{ Name: opCreateFunction, HTTPMethod: "POST", HTTPPath: "/2015-03-31/functions", } if input == nil { input = &CreateFunctionInput{} } req = c.newRequest(op, input, output) output = &FunctionConfiguration{} req.Data = output return } // CreateFunction API operation for AWS Lambda. // // Creates a new Lambda function. The function metadata is created from the // request parameters, and the code for the function is provided by a .zip file // in the request body. If the function name already exists, the operation will // fail. Note that the function name is case-sensitive. // // If you are using versioning, you can also publish a version of the Lambda // function you are creating using the Publish parameter. For more information // about versioning, see AWS Lambda Function Versioning and Aliases (http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html). // // This operation requires permission for the lambda:CreateFunction action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation CreateFunction for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * ResourceConflictException // The resource already exists. // // * TooManyRequestsException // // * CodeStorageExceededException // You have exceeded your maximum total code size per account. Limits (http://docs.aws.amazon.com/lambda/latest/dg/limits.html) // func (c *Lambda) CreateFunction(input *CreateFunctionInput) (*FunctionConfiguration, error) { req, out := c.CreateFunctionRequest(input) err := req.Send() return out, err } const opDeleteAlias = "DeleteAlias" // DeleteAliasRequest generates a "aws/request.Request" representing the // client's request for the DeleteAlias operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteAlias for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteAlias method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteAliasRequest method. // req, resp := client.DeleteAliasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) DeleteAliasRequest(input *DeleteAliasInput) (req *request.Request, output *DeleteAliasOutput) { op := &request.Operation{ Name: opDeleteAlias, HTTPMethod: "DELETE", HTTPPath: "/2015-03-31/functions/{FunctionName}/aliases/{Name}", } if input == nil { input = &DeleteAliasInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteAliasOutput{} req.Data = output return } // DeleteAlias API operation for AWS Lambda. // // Deletes the specified Lambda function alias. For more information, see Introduction // to AWS Lambda Aliases (http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html). // // This requires permission for the lambda:DeleteAlias action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation DeleteAlias for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * TooManyRequestsException // func (c *Lambda) DeleteAlias(input *DeleteAliasInput) (*DeleteAliasOutput, error) { req, out := c.DeleteAliasRequest(input) err := req.Send() return out, err } const opDeleteEventSourceMapping = "DeleteEventSourceMapping" // DeleteEventSourceMappingRequest generates a "aws/request.Request" representing the // client's request for the DeleteEventSourceMapping operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteEventSourceMapping for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteEventSourceMapping method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteEventSourceMappingRequest method. // req, resp := client.DeleteEventSourceMappingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) DeleteEventSourceMappingRequest(input *DeleteEventSourceMappingInput) (req *request.Request, output *EventSourceMappingConfiguration) { op := &request.Operation{ Name: opDeleteEventSourceMapping, HTTPMethod: "DELETE", HTTPPath: "/2015-03-31/event-source-mappings/{UUID}", } if input == nil { input = &DeleteEventSourceMappingInput{} } req = c.newRequest(op, input, output) output = &EventSourceMappingConfiguration{} req.Data = output return } // DeleteEventSourceMapping API operation for AWS Lambda. // // Removes an event source mapping. This means AWS Lambda will no longer invoke // the function for events in the associated source. // // This operation requires permission for the lambda:DeleteEventSourceMapping // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation DeleteEventSourceMapping for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * TooManyRequestsException // func (c *Lambda) DeleteEventSourceMapping(input *DeleteEventSourceMappingInput) (*EventSourceMappingConfiguration, error) { req, out := c.DeleteEventSourceMappingRequest(input) err := req.Send() return out, err } const opDeleteFunction = "DeleteFunction" // DeleteFunctionRequest generates a "aws/request.Request" representing the // client's request for the DeleteFunction operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteFunction for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteFunction method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteFunctionRequest method. // req, resp := client.DeleteFunctionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) DeleteFunctionRequest(input *DeleteFunctionInput) (req *request.Request, output *DeleteFunctionOutput) { op := &request.Operation{ Name: opDeleteFunction, HTTPMethod: "DELETE", HTTPPath: "/2015-03-31/functions/{FunctionName}", } if input == nil { input = &DeleteFunctionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteFunctionOutput{} req.Data = output return } // DeleteFunction API operation for AWS Lambda. // // Deletes the specified Lambda function code and configuration. // // If you are using the versioning feature and you don't specify a function // version in your DeleteFunction request, AWS Lambda will delete the function, // including all its versions, and any aliases pointing to the function versions. // To delete a specific function version, you must provide the function version // via the Qualifier parameter. For information about function versioning, see // AWS Lambda Function Versioning and Aliases (http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html). // // When you delete a function the associated resource policy is also deleted. // You will need to delete the event source mappings explicitly. // // This operation requires permission for the lambda:DeleteFunction action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation DeleteFunction for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * TooManyRequestsException // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * ResourceConflictException // The resource already exists. // func (c *Lambda) DeleteFunction(input *DeleteFunctionInput) (*DeleteFunctionOutput, error) { req, out := c.DeleteFunctionRequest(input) err := req.Send() return out, err } const opGetAlias = "GetAlias" // GetAliasRequest generates a "aws/request.Request" representing the // client's request for the GetAlias operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetAlias for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetAlias method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetAliasRequest method. // req, resp := client.GetAliasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) GetAliasRequest(input *GetAliasInput) (req *request.Request, output *AliasConfiguration) { op := &request.Operation{ Name: opGetAlias, HTTPMethod: "GET", HTTPPath: "/2015-03-31/functions/{FunctionName}/aliases/{Name}", } if input == nil { input = &GetAliasInput{} } req = c.newRequest(op, input, output) output = &AliasConfiguration{} req.Data = output return } // GetAlias API operation for AWS Lambda. // // Returns the specified alias information such as the alias ARN, description, // and function version it is pointing to. For more information, see Introduction // to AWS Lambda Aliases (http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html). // // This requires permission for the lambda:GetAlias action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation GetAlias for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * TooManyRequestsException // func (c *Lambda) GetAlias(input *GetAliasInput) (*AliasConfiguration, error) { req, out := c.GetAliasRequest(input) err := req.Send() return out, err } const opGetEventSourceMapping = "GetEventSourceMapping" // GetEventSourceMappingRequest generates a "aws/request.Request" representing the // client's request for the GetEventSourceMapping operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetEventSourceMapping for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetEventSourceMapping method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetEventSourceMappingRequest method. // req, resp := client.GetEventSourceMappingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) GetEventSourceMappingRequest(input *GetEventSourceMappingInput) (req *request.Request, output *EventSourceMappingConfiguration) { op := &request.Operation{ Name: opGetEventSourceMapping, HTTPMethod: "GET", HTTPPath: "/2015-03-31/event-source-mappings/{UUID}", } if input == nil { input = &GetEventSourceMappingInput{} } req = c.newRequest(op, input, output) output = &EventSourceMappingConfiguration{} req.Data = output return } // GetEventSourceMapping API operation for AWS Lambda. // // Returns configuration information for the specified event source mapping // (see CreateEventSourceMapping). // // This operation requires permission for the lambda:GetEventSourceMapping action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation GetEventSourceMapping for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * TooManyRequestsException // func (c *Lambda) GetEventSourceMapping(input *GetEventSourceMappingInput) (*EventSourceMappingConfiguration, error) { req, out := c.GetEventSourceMappingRequest(input) err := req.Send() return out, err } const opGetFunction = "GetFunction" // GetFunctionRequest generates a "aws/request.Request" representing the // client's request for the GetFunction operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetFunction for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetFunction method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetFunctionRequest method. // req, resp := client.GetFunctionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) GetFunctionRequest(input *GetFunctionInput) (req *request.Request, output *GetFunctionOutput) { op := &request.Operation{ Name: opGetFunction, HTTPMethod: "GET", HTTPPath: "/2015-03-31/functions/{FunctionName}", } if input == nil { input = &GetFunctionInput{} } req = c.newRequest(op, input, output) output = &GetFunctionOutput{} req.Data = output return } // GetFunction API operation for AWS Lambda. // // Returns the configuration information of the Lambda function and a presigned // URL link to the .zip file you uploaded with CreateFunction so you can download // the .zip file. Note that the URL is valid for up to 10 minutes. The configuration // information is the same information you provided as parameters when uploading // the function. // // Using the optional Qualifier parameter, you can specify a specific function // version for which you want this information. If you don't specify this parameter, // the API uses unqualified function ARN which return information about the // $LATEST version of the Lambda function. For more information, see AWS Lambda // Function Versioning and Aliases (http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html). // // This operation requires permission for the lambda:GetFunction action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation GetFunction for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * TooManyRequestsException // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // func (c *Lambda) GetFunction(input *GetFunctionInput) (*GetFunctionOutput, error) { req, out := c.GetFunctionRequest(input) err := req.Send() return out, err } const opGetFunctionConfiguration = "GetFunctionConfiguration" // GetFunctionConfigurationRequest generates a "aws/request.Request" representing the // client's request for the GetFunctionConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetFunctionConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetFunctionConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetFunctionConfigurationRequest method. // req, resp := client.GetFunctionConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) GetFunctionConfigurationRequest(input *GetFunctionConfigurationInput) (req *request.Request, output *FunctionConfiguration) { op := &request.Operation{ Name: opGetFunctionConfiguration, HTTPMethod: "GET", HTTPPath: "/2015-03-31/functions/{FunctionName}/configuration", } if input == nil { input = &GetFunctionConfigurationInput{} } req = c.newRequest(op, input, output) output = &FunctionConfiguration{} req.Data = output return } // GetFunctionConfiguration API operation for AWS Lambda. // // Returns the configuration information of the Lambda function. This the same // information you provided as parameters when uploading the function by using // CreateFunction. // // If you are using the versioning feature, you can retrieve this information // for a specific function version by using the optional Qualifier parameter // and specifying the function version or alias that points to it. If you don't // provide it, the API returns information about the $LATEST version of the // function. For more information about versioning, see AWS Lambda Function // Versioning and Aliases (http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html). // // This operation requires permission for the lambda:GetFunctionConfiguration // operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation GetFunctionConfiguration for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * TooManyRequestsException // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // func (c *Lambda) GetFunctionConfiguration(input *GetFunctionConfigurationInput) (*FunctionConfiguration, error) { req, out := c.GetFunctionConfigurationRequest(input) err := req.Send() return out, err } const opGetPolicy = "GetPolicy" // GetPolicyRequest generates a "aws/request.Request" representing the // client's request for the GetPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetPolicyRequest method. // req, resp := client.GetPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) GetPolicyRequest(input *GetPolicyInput) (req *request.Request, output *GetPolicyOutput) { op := &request.Operation{ Name: opGetPolicy, HTTPMethod: "GET", HTTPPath: "/2015-03-31/functions/{FunctionName}/policy", } if input == nil { input = &GetPolicyInput{} } req = c.newRequest(op, input, output) output = &GetPolicyOutput{} req.Data = output return } // GetPolicy API operation for AWS Lambda. // // Returns the resource policy associated with the specified Lambda function. // // If you are using the versioning feature, you can get the resource policy // associated with the specific Lambda function version or alias by specifying // the version or alias name using the Qualifier parameter. For more information // about versioning, see AWS Lambda Function Versioning and Aliases (http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html). // // For information about adding permissions, see AddPermission. // // You need permission for the lambda:GetPolicy action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation GetPolicy for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * TooManyRequestsException // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // func (c *Lambda) GetPolicy(input *GetPolicyInput) (*GetPolicyOutput, error) { req, out := c.GetPolicyRequest(input) err := req.Send() return out, err } const opInvoke = "Invoke" // InvokeRequest generates a "aws/request.Request" representing the // client's request for the Invoke operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See Invoke for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the Invoke method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InvokeRequest method. // req, resp := client.InvokeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) InvokeRequest(input *InvokeInput) (req *request.Request, output *InvokeOutput) { op := &request.Operation{ Name: opInvoke, HTTPMethod: "POST", HTTPPath: "/2015-03-31/functions/{FunctionName}/invocations", } if input == nil { input = &InvokeInput{} } req = c.newRequest(op, input, output) output = &InvokeOutput{} req.Data = output return } // Invoke API operation for AWS Lambda. // // Invokes a specific Lambda function. // // If you are using the versioning feature, you can invoke the specific function // version by providing function version or alias name that is pointing to the // function version using the Qualifier parameter in the request. If you don't // provide the Qualifier parameter, the $LATEST version of the Lambda function // is invoked. Invocations occur at least once in response to an event and functions // must be idempotent to handle this. For information about the versioning feature, // see AWS Lambda Function Versioning and Aliases (http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html). // // This operation requires permission for the lambda:InvokeFunction action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation Invoke for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * InvalidRequestContentException // The request body could not be parsed as JSON. // // * RequestTooLargeException // The request payload exceeded the Invoke request body JSON input limit. For // more information, see Limits (http://docs.aws.amazon.com/lambda/latest/dg/limits.html). // // * UnsupportedMediaTypeException // The content type of the Invoke request body is not JSON. // // * TooManyRequestsException // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * EC2UnexpectedException // AWS Lambda received an unexpected EC2 client exception while setting up for // the Lambda function. // // * SubnetIPAddressLimitReachedException // AWS Lambda was not able to set up VPC access for the Lambda function because // one or more configured subnets has no available IP addresses. // // * ENILimitReachedException // AWS Lambda was not able to create an Elastic Network Interface (ENI) in the // VPC, specified as part of Lambda function configuration, because the limit // for network interfaces has been reached. // // * EC2ThrottledException // AWS Lambda was throttled by Amazon EC2 during Lambda function initialization // using the execution role provided for the Lambda function. // // * EC2AccessDeniedException // // * InvalidSubnetIDException // The Subnet ID provided in the Lambda function VPC configuration is invalid. // // * InvalidSecurityGroupIDException // The Security Group ID provided in the Lambda function VPC configuration is // invalid. // // * InvalidZipFileException // AWS Lambda could not unzip the function zip file. // func (c *Lambda) Invoke(input *InvokeInput) (*InvokeOutput, error) { req, out := c.InvokeRequest(input) err := req.Send() return out, err } const opInvokeAsync = "InvokeAsync" // InvokeAsyncRequest generates a "aws/request.Request" representing the // client's request for the InvokeAsync operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See InvokeAsync for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the InvokeAsync method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the InvokeAsyncRequest method. // req, resp := client.InvokeAsyncRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) InvokeAsyncRequest(input *InvokeAsyncInput) (req *request.Request, output *InvokeAsyncOutput) { if c.Client.Config.Logger != nil { c.Client.Config.Logger.Log("This operation, InvokeAsync, has been deprecated") } op := &request.Operation{ Name: opInvokeAsync, HTTPMethod: "POST", HTTPPath: "/2014-11-13/functions/{FunctionName}/invoke-async/", } if input == nil { input = &InvokeAsyncInput{} } req = c.newRequest(op, input, output) output = &InvokeAsyncOutput{} req.Data = output return } // InvokeAsync API operation for AWS Lambda. // // This API is deprecated. We recommend you use Invoke API (see Invoke). // // Submits an invocation request to AWS Lambda. Upon receiving the request, // Lambda executes the specified function asynchronously. To see the logs generated // by the Lambda function execution, see the CloudWatch Logs console. // // This operation requires permission for the lambda:InvokeFunction action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation InvokeAsync for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * InvalidRequestContentException // The request body could not be parsed as JSON. // func (c *Lambda) InvokeAsync(input *InvokeAsyncInput) (*InvokeAsyncOutput, error) { req, out := c.InvokeAsyncRequest(input) err := req.Send() return out, err } const opListAliases = "ListAliases" // ListAliasesRequest generates a "aws/request.Request" representing the // client's request for the ListAliases operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListAliases for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListAliases method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListAliasesRequest method. // req, resp := client.ListAliasesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) ListAliasesRequest(input *ListAliasesInput) (req *request.Request, output *ListAliasesOutput) { op := &request.Operation{ Name: opListAliases, HTTPMethod: "GET", HTTPPath: "/2015-03-31/functions/{FunctionName}/aliases", } if input == nil { input = &ListAliasesInput{} } req = c.newRequest(op, input, output) output = &ListAliasesOutput{} req.Data = output return } // ListAliases API operation for AWS Lambda. // // Returns list of aliases created for a Lambda function. For each alias, the // response includes information such as the alias ARN, description, alias name, // and the function version to which it points. For more information, see Introduction // to AWS Lambda Aliases (http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html). // // This requires permission for the lambda:ListAliases action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation ListAliases for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * TooManyRequestsException // func (c *Lambda) ListAliases(input *ListAliasesInput) (*ListAliasesOutput, error) { req, out := c.ListAliasesRequest(input) err := req.Send() return out, err } const opListEventSourceMappings = "ListEventSourceMappings" // ListEventSourceMappingsRequest generates a "aws/request.Request" representing the // client's request for the ListEventSourceMappings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListEventSourceMappings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListEventSourceMappings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListEventSourceMappingsRequest method. // req, resp := client.ListEventSourceMappingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) ListEventSourceMappingsRequest(input *ListEventSourceMappingsInput) (req *request.Request, output *ListEventSourceMappingsOutput) { op := &request.Operation{ Name: opListEventSourceMappings, HTTPMethod: "GET", HTTPPath: "/2015-03-31/event-source-mappings/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"NextMarker"}, LimitToken: "MaxItems", TruncationToken: "", }, } if input == nil { input = &ListEventSourceMappingsInput{} } req = c.newRequest(op, input, output) output = &ListEventSourceMappingsOutput{} req.Data = output return } // ListEventSourceMappings API operation for AWS Lambda. // // Returns a list of event source mappings you created using the CreateEventSourceMapping // (see CreateEventSourceMapping). // // For each mapping, the API returns configuration information. You can optionally // specify filters to retrieve specific event source mappings. // // If you are using the versioning feature, you can get list of event source // mappings for a specific Lambda function version or an alias as described // in the FunctionName parameter. For information about the versioning feature, // see AWS Lambda Function Versioning and Aliases (http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html). // // This operation requires permission for the lambda:ListEventSourceMappings // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation ListEventSourceMappings for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * TooManyRequestsException // func (c *Lambda) ListEventSourceMappings(input *ListEventSourceMappingsInput) (*ListEventSourceMappingsOutput, error) { req, out := c.ListEventSourceMappingsRequest(input) err := req.Send() return out, err } // ListEventSourceMappingsPages iterates over the pages of a ListEventSourceMappings operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListEventSourceMappings method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListEventSourceMappings operation. // pageNum := 0 // err := client.ListEventSourceMappingsPages(params, // func(page *ListEventSourceMappingsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Lambda) ListEventSourceMappingsPages(input *ListEventSourceMappingsInput, fn func(p *ListEventSourceMappingsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListEventSourceMappingsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListEventSourceMappingsOutput), lastPage) }) } const opListFunctions = "ListFunctions" // ListFunctionsRequest generates a "aws/request.Request" representing the // client's request for the ListFunctions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListFunctions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListFunctions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListFunctionsRequest method. // req, resp := client.ListFunctionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) ListFunctionsRequest(input *ListFunctionsInput) (req *request.Request, output *ListFunctionsOutput) { op := &request.Operation{ Name: opListFunctions, HTTPMethod: "GET", HTTPPath: "/2015-03-31/functions/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"NextMarker"}, LimitToken: "MaxItems", TruncationToken: "", }, } if input == nil { input = &ListFunctionsInput{} } req = c.newRequest(op, input, output) output = &ListFunctionsOutput{} req.Data = output return } // ListFunctions API operation for AWS Lambda. // // Returns a list of your Lambda functions. For each function, the response // includes the function configuration information. You must use GetFunction // to retrieve the code for your function. // // This operation requires permission for the lambda:ListFunctions action. // // If you are using versioning feature, the response returns list of $LATEST // versions of your functions. For information about the versioning feature, // see AWS Lambda Function Versioning and Aliases (http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation ListFunctions for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * TooManyRequestsException // func (c *Lambda) ListFunctions(input *ListFunctionsInput) (*ListFunctionsOutput, error) { req, out := c.ListFunctionsRequest(input) err := req.Send() return out, err } // ListFunctionsPages iterates over the pages of a ListFunctions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListFunctions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListFunctions operation. // pageNum := 0 // err := client.ListFunctionsPages(params, // func(page *ListFunctionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Lambda) ListFunctionsPages(input *ListFunctionsInput, fn func(p *ListFunctionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListFunctionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListFunctionsOutput), lastPage) }) } const opListVersionsByFunction = "ListVersionsByFunction" // ListVersionsByFunctionRequest generates a "aws/request.Request" representing the // client's request for the ListVersionsByFunction operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListVersionsByFunction for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListVersionsByFunction method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListVersionsByFunctionRequest method. // req, resp := client.ListVersionsByFunctionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) ListVersionsByFunctionRequest(input *ListVersionsByFunctionInput) (req *request.Request, output *ListVersionsByFunctionOutput) { op := &request.Operation{ Name: opListVersionsByFunction, HTTPMethod: "GET", HTTPPath: "/2015-03-31/functions/{FunctionName}/versions", } if input == nil { input = &ListVersionsByFunctionInput{} } req = c.newRequest(op, input, output) output = &ListVersionsByFunctionOutput{} req.Data = output return } // ListVersionsByFunction API operation for AWS Lambda. // // List all versions of a function. For information about the versioning feature, // see AWS Lambda Function Versioning and Aliases (http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation ListVersionsByFunction for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * TooManyRequestsException // func (c *Lambda) ListVersionsByFunction(input *ListVersionsByFunctionInput) (*ListVersionsByFunctionOutput, error) { req, out := c.ListVersionsByFunctionRequest(input) err := req.Send() return out, err } const opPublishVersion = "PublishVersion" // PublishVersionRequest generates a "aws/request.Request" representing the // client's request for the PublishVersion operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PublishVersion for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PublishVersion method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PublishVersionRequest method. // req, resp := client.PublishVersionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) PublishVersionRequest(input *PublishVersionInput) (req *request.Request, output *FunctionConfiguration) { op := &request.Operation{ Name: opPublishVersion, HTTPMethod: "POST", HTTPPath: "/2015-03-31/functions/{FunctionName}/versions", } if input == nil { input = &PublishVersionInput{} } req = c.newRequest(op, input, output) output = &FunctionConfiguration{} req.Data = output return } // PublishVersion API operation for AWS Lambda. // // Publishes a version of your function from the current snapshot of $LATEST. // That is, AWS Lambda takes a snapshot of the function code and configuration // information from $LATEST and publishes a new version. The code and configuration // cannot be modified after publication. For information about the versioning // feature, see AWS Lambda Function Versioning and Aliases (http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation PublishVersion for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * TooManyRequestsException // // * CodeStorageExceededException // You have exceeded your maximum total code size per account. Limits (http://docs.aws.amazon.com/lambda/latest/dg/limits.html) // func (c *Lambda) PublishVersion(input *PublishVersionInput) (*FunctionConfiguration, error) { req, out := c.PublishVersionRequest(input) err := req.Send() return out, err } const opRemovePermission = "RemovePermission" // RemovePermissionRequest generates a "aws/request.Request" representing the // client's request for the RemovePermission operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemovePermission for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemovePermission method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemovePermissionRequest method. // req, resp := client.RemovePermissionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) RemovePermissionRequest(input *RemovePermissionInput) (req *request.Request, output *RemovePermissionOutput) { op := &request.Operation{ Name: opRemovePermission, HTTPMethod: "DELETE", HTTPPath: "/2015-03-31/functions/{FunctionName}/policy/{StatementId}", } if input == nil { input = &RemovePermissionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RemovePermissionOutput{} req.Data = output return } // RemovePermission API operation for AWS Lambda. // // You can remove individual permissions from an resource policy associated // with a Lambda function by providing a statement ID that you provided when // you added the permission. // // If you are using versioning, the permissions you remove are specific to the // Lambda function version or alias you specify in the AddPermission request // via the Qualifier parameter. For more information about versioning, see AWS // Lambda Function Versioning and Aliases (http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html). // // Note that removal of a permission will cause an active event source to lose // permission to the function. // // You need permission for the lambda:RemovePermission action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation RemovePermission for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * TooManyRequestsException // func (c *Lambda) RemovePermission(input *RemovePermissionInput) (*RemovePermissionOutput, error) { req, out := c.RemovePermissionRequest(input) err := req.Send() return out, err } const opUpdateAlias = "UpdateAlias" // UpdateAliasRequest generates a "aws/request.Request" representing the // client's request for the UpdateAlias operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateAlias for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateAlias method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateAliasRequest method. // req, resp := client.UpdateAliasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) UpdateAliasRequest(input *UpdateAliasInput) (req *request.Request, output *AliasConfiguration) { op := &request.Operation{ Name: opUpdateAlias, HTTPMethod: "PUT", HTTPPath: "/2015-03-31/functions/{FunctionName}/aliases/{Name}", } if input == nil { input = &UpdateAliasInput{} } req = c.newRequest(op, input, output) output = &AliasConfiguration{} req.Data = output return } // UpdateAlias API operation for AWS Lambda. // // Using this API you can update the function version to which the alias points // and the alias description. For more information, see Introduction to AWS // Lambda Aliases (http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html). // // This requires permission for the lambda:UpdateAlias action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation UpdateAlias for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * TooManyRequestsException // func (c *Lambda) UpdateAlias(input *UpdateAliasInput) (*AliasConfiguration, error) { req, out := c.UpdateAliasRequest(input) err := req.Send() return out, err } const opUpdateEventSourceMapping = "UpdateEventSourceMapping" // UpdateEventSourceMappingRequest generates a "aws/request.Request" representing the // client's request for the UpdateEventSourceMapping operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateEventSourceMapping for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateEventSourceMapping method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateEventSourceMappingRequest method. // req, resp := client.UpdateEventSourceMappingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) UpdateEventSourceMappingRequest(input *UpdateEventSourceMappingInput) (req *request.Request, output *EventSourceMappingConfiguration) { op := &request.Operation{ Name: opUpdateEventSourceMapping, HTTPMethod: "PUT", HTTPPath: "/2015-03-31/event-source-mappings/{UUID}", } if input == nil { input = &UpdateEventSourceMappingInput{} } req = c.newRequest(op, input, output) output = &EventSourceMappingConfiguration{} req.Data = output return } // UpdateEventSourceMapping API operation for AWS Lambda. // // You can update an event source mapping. This is useful if you want to change // the parameters of the existing mapping without losing your position in the // stream. You can change which function will receive the stream records, but // to change the stream itself, you must create a new mapping. // // If you are using the versioning feature, you can update the event source // mapping to map to a specific Lambda function version or alias as described // in the FunctionName parameter. For information about the versioning feature, // see AWS Lambda Function Versioning and Aliases (http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html). // // If you disable the event source mapping, AWS Lambda stops polling. If you // enable again, it will resume polling from the time it had stopped polling, // so you don't lose processing of any records. However, if you delete event // source mapping and create it again, it will reset. // // This operation requires permission for the lambda:UpdateEventSourceMapping // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation UpdateEventSourceMapping for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * TooManyRequestsException // // * ResourceConflictException // The resource already exists. // func (c *Lambda) UpdateEventSourceMapping(input *UpdateEventSourceMappingInput) (*EventSourceMappingConfiguration, error) { req, out := c.UpdateEventSourceMappingRequest(input) err := req.Send() return out, err } const opUpdateFunctionCode = "UpdateFunctionCode" // UpdateFunctionCodeRequest generates a "aws/request.Request" representing the // client's request for the UpdateFunctionCode operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateFunctionCode for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateFunctionCode method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateFunctionCodeRequest method. // req, resp := client.UpdateFunctionCodeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) UpdateFunctionCodeRequest(input *UpdateFunctionCodeInput) (req *request.Request, output *FunctionConfiguration) { op := &request.Operation{ Name: opUpdateFunctionCode, HTTPMethod: "PUT", HTTPPath: "/2015-03-31/functions/{FunctionName}/code", } if input == nil { input = &UpdateFunctionCodeInput{} } req = c.newRequest(op, input, output) output = &FunctionConfiguration{} req.Data = output return } // UpdateFunctionCode API operation for AWS Lambda. // // Updates the code for the specified Lambda function. This operation must only // be used on an existing Lambda function and cannot be used to update the function // configuration. // // If you are using the versioning feature, note this API will always update // the $LATEST version of your Lambda function. For information about the versioning // feature, see AWS Lambda Function Versioning and Aliases (http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html). // // This operation requires permission for the lambda:UpdateFunctionCode action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation UpdateFunctionCode for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * TooManyRequestsException // // * CodeStorageExceededException // You have exceeded your maximum total code size per account. Limits (http://docs.aws.amazon.com/lambda/latest/dg/limits.html) // func (c *Lambda) UpdateFunctionCode(input *UpdateFunctionCodeInput) (*FunctionConfiguration, error) { req, out := c.UpdateFunctionCodeRequest(input) err := req.Send() return out, err } const opUpdateFunctionConfiguration = "UpdateFunctionConfiguration" // UpdateFunctionConfigurationRequest generates a "aws/request.Request" representing the // client's request for the UpdateFunctionConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateFunctionConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateFunctionConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateFunctionConfigurationRequest method. // req, resp := client.UpdateFunctionConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Lambda) UpdateFunctionConfigurationRequest(input *UpdateFunctionConfigurationInput) (req *request.Request, output *FunctionConfiguration) { op := &request.Operation{ Name: opUpdateFunctionConfiguration, HTTPMethod: "PUT", HTTPPath: "/2015-03-31/functions/{FunctionName}/configuration", } if input == nil { input = &UpdateFunctionConfigurationInput{} } req = c.newRequest(op, input, output) output = &FunctionConfiguration{} req.Data = output return } // UpdateFunctionConfiguration API operation for AWS Lambda. // // Updates the configuration parameters for the specified Lambda function by // using the values provided in the request. You provide only the parameters // you want to change. This operation must only be used on an existing Lambda // function and cannot be used to update the function's code. // // If you are using the versioning feature, note this API will always update // the $LATEST version of your Lambda function. For information about the versioning // feature, see AWS Lambda Function Versioning and Aliases (http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html). // // This operation requires permission for the lambda:UpdateFunctionConfiguration // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Lambda's // API operation UpdateFunctionConfiguration for usage and error information. // // Returned Error Codes: // * ServiceException // The AWS Lambda service encountered an internal error. // // * ResourceNotFoundException // The resource (for example, a Lambda function or access policy statement) // specified in the request does not exist. // // * InvalidParameterValueException // One of the parameters in the request is invalid. For example, if you provided // an IAM role for AWS Lambda to assume in the CreateFunction or the UpdateFunctionConfiguration // API, that AWS Lambda is unable to assume you will get this exception. // // * TooManyRequestsException // func (c *Lambda) UpdateFunctionConfiguration(input *UpdateFunctionConfigurationInput) (*FunctionConfiguration, error) { req, out := c.UpdateFunctionConfigurationRequest(input) err := req.Send() return out, err } type AddPermissionInput struct { _ struct{} `type:"structure"` // The AWS Lambda action you want to allow in this statement. Each Lambda action // is a string starting with lambda: followed by the API name . For example, // lambda:CreateFunction. You can use wildcard (lambda:*) to grant permission // for all AWS Lambda actions. // // Action is a required field Action *string `type:"string" required:"true"` // A unique token that must be supplied by the principal invoking the function. // This is currently only used for Alexa Smart Home functions. EventSourceToken *string `type:"string"` // Name of the Lambda function whose resource policy you are updating by adding // a new permission. // // You can specify a function name (for example, Thumbnail) or you can specify // Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). // AWS Lambda also allows you to specify partial ARN (for example, account-id:Thumbnail). // Note that the length constraint applies only to the ARN. If you specify only // the function name, it is limited to 64 character in length. // // FunctionName is a required field FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"` // The principal who is getting this permission. It can be Amazon S3 service // Principal (s3.amazonaws.com) if you want Amazon S3 to invoke the function, // an AWS account ID if you are granting cross-account permission, or any valid // AWS service principal such as sns.amazonaws.com. For example, you might want // to allow a custom application in another AWS account to push events to AWS // Lambda by invoking your function. // // Principal is a required field Principal *string `type:"string" required:"true"` // You can use this optional query parameter to describe a qualified ARN using // a function version or an alias name. The permission will then apply to the // specific qualified ARN. For example, if you specify function version 2 as // the qualifier, then permission applies only when request is made using qualified // function ARN: // // arn:aws:lambda:aws-region:acct-id:function:function-name:2 // // If you specify an alias name, for example PROD, then the permission is valid // only for requests made using the alias ARN: // // arn:aws:lambda:aws-region:acct-id:function:function-name:PROD // // If the qualifier is not specified, the permission is valid only when requests // is made using unqualified function ARN. // // arn:aws:lambda:aws-region:acct-id:function:function-name Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"` // This parameter is used for S3 and SES only. The AWS account ID (without a // hyphen) of the source owner. For example, if the SourceArn identifies a bucket, // then this is the bucket owner's account ID. You can use this additional condition // to ensure the bucket you specify is owned by a specific account (it is possible // the bucket owner deleted the bucket and some other AWS account created the // bucket). You can also use this condition to specify all sources (that is, // you don't specify the SourceArn) owned by a specific account. SourceAccount *string `type:"string"` // This is optional; however, when granting Amazon S3 permission to invoke your // function, you should specify this field with the Amazon Resource Name (ARN) // as its value. This ensures that only events generated from the specified // source can invoke the function. // // If you add a permission for the Amazon S3 principal without providing the // source ARN, any AWS account that creates a mapping to your function ARN can // send events to invoke your Lambda function from Amazon S3. SourceArn *string `type:"string"` // A unique statement identifier. // // StatementId is a required field StatementId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s AddPermissionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddPermissionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddPermissionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddPermissionInput"} if s.Action == nil { invalidParams.Add(request.NewErrParamRequired("Action")) } if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.Principal == nil { invalidParams.Add(request.NewErrParamRequired("Principal")) } if s.Qualifier != nil && len(*s.Qualifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1)) } if s.StatementId == nil { invalidParams.Add(request.NewErrParamRequired("StatementId")) } if s.StatementId != nil && len(*s.StatementId) < 1 { invalidParams.Add(request.NewErrParamMinLen("StatementId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddPermissionOutput struct { _ struct{} `type:"structure"` // The permission statement you specified in the request. The response returns // the same as a string using a backslash ("\") as an escape character in the // JSON. Statement *string `type:"string"` } // String returns the string representation func (s AddPermissionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddPermissionOutput) GoString() string { return s.String() } // Provides configuration information about a Lambda function version alias. type AliasConfiguration struct { _ struct{} `type:"structure"` // Lambda function ARN that is qualified using the alias name as the suffix. // For example, if you create an alias called BETA that points to a helloworld // function version, the ARN is arn:aws:lambda:aws-regions:acct-id:function:helloworld:BETA. AliasArn *string `type:"string"` // Alias description. Description *string `type:"string"` // Function version to which the alias points. FunctionVersion *string `min:"1" type:"string"` // Alias name. Name *string `min:"1" type:"string"` } // String returns the string representation func (s AliasConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AliasConfiguration) GoString() string { return s.String() } type CreateAliasInput struct { _ struct{} `type:"structure"` // Description of the alias. Description *string `type:"string"` // Name of the Lambda function for which you want to create an alias. // // FunctionName is a required field FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"` // Lambda function version for which you are creating the alias. // // FunctionVersion is a required field FunctionVersion *string `min:"1" type:"string" required:"true"` // Name for the alias you are creating. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateAliasInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateAliasInput"} if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.FunctionVersion == nil { invalidParams.Add(request.NewErrParamRequired("FunctionVersion")) } if s.FunctionVersion != nil && len(*s.FunctionVersion) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionVersion", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateEventSourceMappingInput struct { _ struct{} `type:"structure"` // The largest number of records that AWS Lambda will retrieve from your event // source at the time of invoking your function. Your function receives an event // with all the retrieved records. The default is 100 records. BatchSize *int64 `min:"1" type:"integer"` // Indicates whether AWS Lambda should begin polling the event source. By default, // Enabled is true. Enabled *bool `type:"boolean"` // The Amazon Resource Name (ARN) of the Amazon Kinesis or the Amazon DynamoDB // stream that is the event source. Any record added to this stream could cause // AWS Lambda to invoke your Lambda function, it depends on the BatchSize. AWS // Lambda POSTs the Amazon Kinesis event, containing records, to your Lambda // function as JSON. // // EventSourceArn is a required field EventSourceArn *string `type:"string" required:"true"` // The Lambda function to invoke when AWS Lambda detects an event on the stream. // // You can specify the function name (for example, Thumbnail) or you can specify // Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). // // If you are using versioning, you can also provide a qualified function ARN // (ARN that is qualified with function version or alias name as suffix). For // more information about versioning, see AWS Lambda Function Versioning and // Aliases (http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html) // // AWS Lambda also allows you to specify only the function name with the account // ID qualifier (for example, account-id:Thumbnail). // // Note that the length constraint applies only to the ARN. If you specify only // the function name, it is limited to 64 character in length. // // FunctionName is a required field FunctionName *string `min:"1" type:"string" required:"true"` // The position in the stream where AWS Lambda should start reading. For more // information, go to ShardIteratorType (http://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetShardIterator.html#Kinesis-GetShardIterator-request-ShardIteratorType) // in the Amazon Kinesis API Reference. // // StartingPosition is a required field StartingPosition *string `type:"string" required:"true" enum:"EventSourcePosition"` } // String returns the string representation func (s CreateEventSourceMappingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateEventSourceMappingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateEventSourceMappingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateEventSourceMappingInput"} if s.BatchSize != nil && *s.BatchSize < 1 { invalidParams.Add(request.NewErrParamMinValue("BatchSize", 1)) } if s.EventSourceArn == nil { invalidParams.Add(request.NewErrParamRequired("EventSourceArn")) } if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.StartingPosition == nil { invalidParams.Add(request.NewErrParamRequired("StartingPosition")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateFunctionInput struct { _ struct{} `type:"structure"` // The code for the Lambda function. // // Code is a required field Code *FunctionCode `type:"structure" required:"true"` // A short, user-defined function description. Lambda does not use this value. // Assign a meaningful description as you see fit. Description *string `type:"string"` // The name you want to assign to the function you are uploading. The function // names appear in the console and are returned in the ListFunctions API. Function // names are used to specify functions to other AWS Lambda APIs, such as Invoke. // // FunctionName is a required field FunctionName *string `min:"1" type:"string" required:"true"` // The function within your code that Lambda calls to begin execution. For Node.js, // it is the module-name.export value in your function. For Java, it can be // package.class-name::handler or package.class-name. For more information, // see Lambda Function Handler (Java) (http://docs.aws.amazon.com/lambda/latest/dg/java-programming-model-handler-types.html). // // Handler is a required field Handler *string `type:"string" required:"true"` // The amount of memory, in MB, your Lambda function is given. Lambda uses this // memory size to infer the amount of CPU and memory allocated to your function. // Your function use-case determines your CPU and memory requirements. For example, // a database operation might need less memory compared to an image processing // function. The default value is 128 MB. The value must be a multiple of 64 // MB. MemorySize *int64 `min:"128" type:"integer"` // This boolean parameter can be used to request AWS Lambda to create the Lambda // function and publish a version as an atomic operation. Publish *bool `type:"boolean"` // The Amazon Resource Name (ARN) of the IAM role that Lambda assumes when it // executes your function to access any other Amazon Web Services (AWS) resources. // For more information, see AWS Lambda: How it Works (http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html). // // Role is a required field Role *string `type:"string" required:"true"` // The runtime environment for the Lambda function you are uploading. // // To use the Node.js runtime v4.3, set the value to "nodejs4.3". To use earlier // runtime (v0.10.42), set the value to "nodejs". // // Runtime is a required field Runtime *string `type:"string" required:"true" enum:"Runtime"` // The function execution time at which Lambda should terminate the function. // Because the execution time has cost implications, we recommend you set this // value based on your expected execution time. The default is 3 seconds. Timeout *int64 `min:"1" type:"integer"` // If your Lambda function accesses resources in a VPC, you provide this parameter // identifying the list of security group IDs and subnet IDs. These must belong // to the same VPC. You must provide at least one security group and one subnet // ID. VpcConfig *VpcConfig `type:"structure"` } // String returns the string representation func (s CreateFunctionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateFunctionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateFunctionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateFunctionInput"} if s.Code == nil { invalidParams.Add(request.NewErrParamRequired("Code")) } if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.Handler == nil { invalidParams.Add(request.NewErrParamRequired("Handler")) } if s.MemorySize != nil && *s.MemorySize < 128 { invalidParams.Add(request.NewErrParamMinValue("MemorySize", 128)) } if s.Role == nil { invalidParams.Add(request.NewErrParamRequired("Role")) } if s.Runtime == nil { invalidParams.Add(request.NewErrParamRequired("Runtime")) } if s.Timeout != nil && *s.Timeout < 1 { invalidParams.Add(request.NewErrParamMinValue("Timeout", 1)) } if s.Code != nil { if err := s.Code.Validate(); err != nil { invalidParams.AddNested("Code", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteAliasInput struct { _ struct{} `type:"structure"` // The Lambda function name for which the alias is created. Deleting an alias // does not delete the function version to which it is pointing. // // FunctionName is a required field FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"` // Name of the alias to delete. // // Name is a required field Name *string `location:"uri" locationName:"Name" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAliasInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAliasInput"} if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteAliasOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteAliasOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAliasOutput) GoString() string { return s.String() } type DeleteEventSourceMappingInput struct { _ struct{} `type:"structure"` // The event source mapping ID. // // UUID is a required field UUID *string `location:"uri" locationName:"UUID" type:"string" required:"true"` } // String returns the string representation func (s DeleteEventSourceMappingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteEventSourceMappingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteEventSourceMappingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteEventSourceMappingInput"} if s.UUID == nil { invalidParams.Add(request.NewErrParamRequired("UUID")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteFunctionInput struct { _ struct{} `type:"structure"` // The Lambda function to delete. // // You can specify the function name (for example, Thumbnail) or you can specify // Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). // If you are using versioning, you can also provide a qualified function ARN // (ARN that is qualified with function version or alias name as suffix). AWS // Lambda also allows you to specify only the function name with the account // ID qualifier (for example, account-id:Thumbnail). Note that the length constraint // applies only to the ARN. If you specify only the function name, it is limited // to 64 character in length. // // FunctionName is a required field FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"` // Using this optional parameter you can specify a function version (but not // the $LATEST version) to direct AWS Lambda to delete a specific function version. // If the function version has one or more aliases pointing to it, you will // get an error because you cannot have aliases pointing to it. You can delete // any function version but not the $LATEST, that is, you cannot specify $LATEST // as the value of this parameter. The $LATEST version can be deleted only when // you want to delete all the function versions and aliases. // // You can only specify a function version, not an alias name, using this parameter. // You cannot delete a function version using its alias. // // If you don't specify this parameter, AWS Lambda will delete the function, // including all of its versions and aliases. Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"` } // String returns the string representation func (s DeleteFunctionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteFunctionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteFunctionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteFunctionInput"} if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.Qualifier != nil && len(*s.Qualifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteFunctionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteFunctionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteFunctionOutput) GoString() string { return s.String() } // Describes mapping between an Amazon Kinesis stream and a Lambda function. type EventSourceMappingConfiguration struct { _ struct{} `type:"structure"` // The largest number of records that AWS Lambda will retrieve from your event // source at the time of invoking your function. Your function receives an event // with all the retrieved records. BatchSize *int64 `min:"1" type:"integer"` // The Amazon Resource Name (ARN) of the Amazon Kinesis stream that is the source // of events. EventSourceArn *string `type:"string"` // The Lambda function to invoke when AWS Lambda detects an event on the stream. FunctionArn *string `type:"string"` // The UTC time string indicating the last time the event mapping was updated. LastModified *time.Time `type:"timestamp" timestampFormat:"unix"` // The result of the last AWS Lambda invocation of your Lambda function. LastProcessingResult *string `type:"string"` // The state of the event source mapping. It can be Creating, Enabled, Disabled, // Enabling, Disabling, Updating, or Deleting. State *string `type:"string"` // The reason the event source mapping is in its current state. It is either // user-requested or an AWS Lambda-initiated state transition. StateTransitionReason *string `type:"string"` // The AWS Lambda assigned opaque identifier for the mapping. UUID *string `type:"string"` } // String returns the string representation func (s EventSourceMappingConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EventSourceMappingConfiguration) GoString() string { return s.String() } // The code for the Lambda function. type FunctionCode struct { _ struct{} `type:"structure"` // Amazon S3 bucket name where the .zip file containing your deployment package // is stored. This bucket must reside in the same AWS region where you are creating // the Lambda function. S3Bucket *string `min:"3" type:"string"` // The Amazon S3 object (the deployment package) key name you want to upload. S3Key *string `min:"1" type:"string"` // The Amazon S3 object (the deployment package) version you want to upload. S3ObjectVersion *string `min:"1" type:"string"` // The contents of your zip file containing your deployment package. If you // are using the web API directly, the contents of the zip file must be base64-encoded. // If you are using the AWS SDKs or the AWS CLI, the SDKs or CLI will do the // encoding for you. For more information about creating a .zip file, go to // Execution Permissions (http://docs.aws.amazon.com/lambda/latest/dg/intro-permission-model.html#lambda-intro-execution-role.html) // in the AWS Lambda Developer Guide. // // ZipFile is automatically base64 encoded/decoded by the SDK. ZipFile []byte `type:"blob"` } // String returns the string representation func (s FunctionCode) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FunctionCode) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *FunctionCode) Validate() error { invalidParams := request.ErrInvalidParams{Context: "FunctionCode"} if s.S3Bucket != nil && len(*s.S3Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("S3Bucket", 3)) } if s.S3Key != nil && len(*s.S3Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("S3Key", 1)) } if s.S3ObjectVersion != nil && len(*s.S3ObjectVersion) < 1 { invalidParams.Add(request.NewErrParamMinLen("S3ObjectVersion", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The object for the Lambda function location. type FunctionCodeLocation struct { _ struct{} `type:"structure"` // The presigned URL you can use to download the function's .zip file that you // previously uploaded. The URL is valid for up to 10 minutes. Location *string `type:"string"` // The repository from which you can download the function. RepositoryType *string `type:"string"` } // String returns the string representation func (s FunctionCodeLocation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FunctionCodeLocation) GoString() string { return s.String() } // A complex type that describes function metadata. type FunctionConfiguration struct { _ struct{} `type:"structure"` // It is the SHA256 hash of your function deployment package. CodeSha256 *string `type:"string"` // The size, in bytes, of the function .zip file you uploaded. CodeSize *int64 `type:"long"` // The user-provided description. Description *string `type:"string"` // The Amazon Resource Name (ARN) assigned to the function. FunctionArn *string `type:"string"` // The name of the function. FunctionName *string `min:"1" type:"string"` // The function Lambda calls to begin executing your function. Handler *string `type:"string"` // The time stamp of the last time you updated the function. LastModified *string `type:"string"` // The memory size, in MB, you configured for the function. Must be a multiple // of 64 MB. MemorySize *int64 `min:"128" type:"integer"` // The Amazon Resource Name (ARN) of the IAM role that Lambda assumes when it // executes your function to access any other Amazon Web Services (AWS) resources. Role *string `type:"string"` // The runtime environment for the Lambda function. // // To use the Node.js runtime v4.3, set the value to "nodejs4.3". To use earlier // runtime (v0.10.42), set the value to "nodejs". Runtime *string `type:"string" enum:"Runtime"` // The function execution time at which Lambda should terminate the function. // Because the execution time has cost implications, we recommend you set this // value based on your expected execution time. The default is 3 seconds. Timeout *int64 `min:"1" type:"integer"` // The version of the Lambda function. Version *string `min:"1" type:"string"` // VPC configuration associated with your Lambda function. VpcConfig *VpcConfigResponse `type:"structure"` } // String returns the string representation func (s FunctionConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FunctionConfiguration) GoString() string { return s.String() } type GetAliasInput struct { _ struct{} `type:"structure"` // Function name for which the alias is created. An alias is a subresource that // exists only in the context of an existing Lambda function so you must specify // the function name. // // FunctionName is a required field FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"` // Name of the alias for which you want to retrieve information. // // Name is a required field Name *string `location:"uri" locationName:"Name" min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetAliasInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetAliasInput"} if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetEventSourceMappingInput struct { _ struct{} `type:"structure"` // The AWS Lambda assigned ID of the event source mapping. // // UUID is a required field UUID *string `location:"uri" locationName:"UUID" type:"string" required:"true"` } // String returns the string representation func (s GetEventSourceMappingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetEventSourceMappingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetEventSourceMappingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetEventSourceMappingInput"} if s.UUID == nil { invalidParams.Add(request.NewErrParamRequired("UUID")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetFunctionConfigurationInput struct { _ struct{} `type:"structure"` // The name of the Lambda function for which you want to retrieve the configuration // information. // // You can specify a function name (for example, Thumbnail) or you can specify // Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). // AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail). // Note that the length constraint applies only to the ARN. If you specify only // the function name, it is limited to 64 character in length. // // FunctionName is a required field FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"` // Using this optional parameter you can specify a function version or an alias // name. If you specify function version, the API uses qualified function ARN // and returns information about the specific function version. If you specify // an alias name, the API uses the alias ARN and returns information about the // function version to which the alias points. // // If you don't specify this parameter, the API uses unqualified function ARN, // and returns information about the $LATEST function version. Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"` } // String returns the string representation func (s GetFunctionConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetFunctionConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetFunctionConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetFunctionConfigurationInput"} if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.Qualifier != nil && len(*s.Qualifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetFunctionInput struct { _ struct{} `type:"structure"` // The Lambda function name. // // You can specify a function name (for example, Thumbnail) or you can specify // Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). // AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail). // Note that the length constraint applies only to the ARN. If you specify only // the function name, it is limited to 64 character in length. // // FunctionName is a required field FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"` // Using this optional parameter to specify a function version or an alias name. // If you specify function version, the API uses qualified function ARN for // the request and returns information about the specific Lambda function version. // If you specify an alias name, the API uses the alias ARN and returns information // about the function version to which the alias points. If you don't provide // this parameter, the API uses unqualified function ARN and returns information // about the $LATEST version of the Lambda function. Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"` } // String returns the string representation func (s GetFunctionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetFunctionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetFunctionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetFunctionInput"} if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.Qualifier != nil && len(*s.Qualifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // This response contains the object for the Lambda function location (see . type GetFunctionOutput struct { _ struct{} `type:"structure"` // The object for the Lambda function location. Code *FunctionCodeLocation `type:"structure"` // A complex type that describes function metadata. Configuration *FunctionConfiguration `type:"structure"` } // String returns the string representation func (s GetFunctionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetFunctionOutput) GoString() string { return s.String() } type GetPolicyInput struct { _ struct{} `type:"structure"` // Function name whose resource policy you want to retrieve. // // You can specify the function name (for example, Thumbnail) or you can specify // Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). // If you are using versioning, you can also provide a qualified function ARN // (ARN that is qualified with function version or alias name as suffix). AWS // Lambda also allows you to specify only the function name with the account // ID qualifier (for example, account-id:Thumbnail). Note that the length constraint // applies only to the ARN. If you specify only the function name, it is limited // to 64 character in length. // // FunctionName is a required field FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"` // You can specify this optional query parameter to specify a function version // or an alias name in which case this API will return all permissions associated // with the specific qualified ARN. If you don't provide this parameter, the // API will return permissions that apply to the unqualified function ARN. Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"` } // String returns the string representation func (s GetPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetPolicyInput"} if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.Qualifier != nil && len(*s.Qualifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetPolicyOutput struct { _ struct{} `type:"structure"` // The resource policy associated with the specified function. The response // returns the same as a string using a backslash ("\") as an escape character // in the JSON. Policy *string `type:"string"` } // String returns the string representation func (s GetPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPolicyOutput) GoString() string { return s.String() } type InvokeAsyncInput struct { _ struct{} `deprecated:"true" type:"structure" payload:"InvokeArgs"` // The Lambda function name. // // FunctionName is a required field FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"` // JSON that you want to provide to your Lambda function as input. // // InvokeArgs is a required field InvokeArgs io.ReadSeeker `type:"blob" required:"true"` } // String returns the string representation func (s InvokeAsyncInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InvokeAsyncInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InvokeAsyncInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InvokeAsyncInput"} if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.InvokeArgs == nil { invalidParams.Add(request.NewErrParamRequired("InvokeArgs")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Upon success, it returns empty response. Otherwise, throws an exception. type InvokeAsyncOutput struct { _ struct{} `deprecated:"true" type:"structure"` // It will be 202 upon success. Status *int64 `location:"statusCode" type:"integer"` } // String returns the string representation func (s InvokeAsyncOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InvokeAsyncOutput) GoString() string { return s.String() } type InvokeInput struct { _ struct{} `type:"structure" payload:"Payload"` // Using the ClientContext you can pass client-specific information to the Lambda // function you are invoking. You can then process the client information in // your Lambda function as you choose through the context variable. For an example // of a ClientContext JSON, see PutEvents (http://docs.aws.amazon.com/mobileanalytics/latest/ug/PutEvents.html) // in the Amazon Mobile Analytics API Reference and User Guide. // // The ClientContext JSON must be base64-encoded. ClientContext *string `location:"header" locationName:"X-Amz-Client-Context" type:"string"` // The Lambda function name. // // You can specify a function name (for example, Thumbnail) or you can specify // Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). // AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail). // Note that the length constraint applies only to the ARN. If you specify only // the function name, it is limited to 64 character in length. // // FunctionName is a required field FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"` // By default, the Invoke API assumes RequestResponse invocation type. You can // optionally request asynchronous execution by specifying Event as the InvocationType. // You can also use this parameter to request AWS Lambda to not execute the // function but do some verification, such as if the caller is authorized to // invoke the function and if the inputs are valid. You request this by specifying // DryRun as the InvocationType. This is useful in a cross-account scenario // when you want to verify access to a function without running it. InvocationType *string `location:"header" locationName:"X-Amz-Invocation-Type" type:"string" enum:"InvocationType"` // You can set this optional parameter to Tail in the request only if you specify // the InvocationType parameter with value RequestResponse. In this case, AWS // Lambda returns the base64-encoded last 4 KB of log data produced by your // Lambda function in the x-amz-log-result header. LogType *string `location:"header" locationName:"X-Amz-Log-Type" type:"string" enum:"LogType"` // JSON that you want to provide to your Lambda function as input. Payload []byte `type:"blob"` // You can use this optional parameter to specify a Lambda function version // or alias name. If you specify a function version, the API uses the qualified // function ARN to invoke a specific Lambda function. If you specify an alias // name, the API uses the alias ARN to invoke the Lambda function version to // which the alias points. // // If you don't provide this parameter, then the API uses unqualified function // ARN which results in invocation of the $LATEST version. Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"` } // String returns the string representation func (s InvokeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InvokeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InvokeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InvokeInput"} if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.Qualifier != nil && len(*s.Qualifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Upon success, returns an empty response. Otherwise, throws an exception. type InvokeOutput struct { _ struct{} `type:"structure" payload:"Payload"` // Indicates whether an error occurred while executing the Lambda function. // If an error occurred this field will have one of two values; Handled or Unhandled. // Handled errors are errors that are reported by the function while the Unhandled // errors are those detected and reported by AWS Lambda. Unhandled errors include // out of memory errors and function timeouts. For information about how to // report an Handled error, see Programming Model (http://docs.aws.amazon.com/lambda/latest/dg/programming-model.html). FunctionError *string `location:"header" locationName:"X-Amz-Function-Error" type:"string"` // It is the base64-encoded logs for the Lambda function invocation. This is // present only if the invocation type is RequestResponse and the logs were // requested. LogResult *string `location:"header" locationName:"X-Amz-Log-Result" type:"string"` // It is the JSON representation of the object returned by the Lambda function. // In This is present only if the invocation type is RequestResponse. // // In the event of a function error this field contains a message describing // the error. For the Handled errors the Lambda function will report this message. // For Unhandled errors AWS Lambda reports the message. Payload []byte `type:"blob"` // The HTTP status code will be in the 200 range for successful request. For // the RequestResonse invocation type this status code will be 200. For the // Event invocation type this status code will be 202. For the DryRun invocation // type the status code will be 204. StatusCode *int64 `location:"statusCode" type:"integer"` } // String returns the string representation func (s InvokeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InvokeOutput) GoString() string { return s.String() } type ListAliasesInput struct { _ struct{} `type:"structure"` // Lambda function name for which the alias is created. // // FunctionName is a required field FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"` // If you specify this optional parameter, the API returns only the aliases // that are pointing to the specific Lambda function version, otherwise the // API returns all of the aliases created for the Lambda function. FunctionVersion *string `location:"querystring" locationName:"FunctionVersion" min:"1" type:"string"` // Optional string. An opaque pagination token returned from a previous ListAliases // operation. If present, indicates where to continue the listing. Marker *string `location:"querystring" locationName:"Marker" type:"string"` // Optional integer. Specifies the maximum number of aliases to return in response. // This parameter value must be greater than 0. MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"` } // String returns the string representation func (s ListAliasesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAliasesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListAliasesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListAliasesInput"} if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.FunctionVersion != nil && len(*s.FunctionVersion) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionVersion", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListAliasesOutput struct { _ struct{} `type:"structure"` // A list of aliases. Aliases []*AliasConfiguration `type:"list"` // A string, present if there are more aliases. NextMarker *string `type:"string"` } // String returns the string representation func (s ListAliasesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAliasesOutput) GoString() string { return s.String() } type ListEventSourceMappingsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the Amazon Kinesis stream. (This parameter // is optional.) EventSourceArn *string `location:"querystring" locationName:"EventSourceArn" type:"string"` // The name of the Lambda function. // // You can specify the function name (for example, Thumbnail) or you can specify // Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). // If you are using versioning, you can also provide a qualified function ARN // (ARN that is qualified with function version or alias name as suffix). AWS // Lambda also allows you to specify only the function name with the account // ID qualifier (for example, account-id:Thumbnail). Note that the length constraint // applies only to the ARN. If you specify only the function name, it is limited // to 64 character in length. FunctionName *string `location:"querystring" locationName:"FunctionName" min:"1" type:"string"` // Optional string. An opaque pagination token returned from a previous ListEventSourceMappings // operation. If present, specifies to continue the list from where the returning // call left off. Marker *string `location:"querystring" locationName:"Marker" type:"string"` // Optional integer. Specifies the maximum number of event sources to return // in response. This value must be greater than 0. MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"` } // String returns the string representation func (s ListEventSourceMappingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListEventSourceMappingsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListEventSourceMappingsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListEventSourceMappingsInput"} if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains a list of event sources (see ) type ListEventSourceMappingsOutput struct { _ struct{} `type:"structure"` // An array of EventSourceMappingConfiguration objects. EventSourceMappings []*EventSourceMappingConfiguration `type:"list"` // A string, present if there are more event source mappings. NextMarker *string `type:"string"` } // String returns the string representation func (s ListEventSourceMappingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListEventSourceMappingsOutput) GoString() string { return s.String() } type ListFunctionsInput struct { _ struct{} `type:"structure"` // Optional string. An opaque pagination token returned from a previous ListFunctions // operation. If present, indicates where to continue the listing. Marker *string `location:"querystring" locationName:"Marker" type:"string"` // Optional integer. Specifies the maximum number of AWS Lambda functions to // return in response. This parameter value must be greater than 0. MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"` } // String returns the string representation func (s ListFunctionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListFunctionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListFunctionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListFunctionsInput"} if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains a list of AWS Lambda function configurations (see FunctionConfiguration. type ListFunctionsOutput struct { _ struct{} `type:"structure"` // A list of Lambda functions. Functions []*FunctionConfiguration `type:"list"` // A string, present if there are more functions. NextMarker *string `type:"string"` } // String returns the string representation func (s ListFunctionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListFunctionsOutput) GoString() string { return s.String() } type ListVersionsByFunctionInput struct { _ struct{} `type:"structure"` // Function name whose versions to list. You can specify a function name (for // example, Thumbnail) or you can specify Amazon Resource Name (ARN) of the // function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). // AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail). // Note that the length constraint applies only to the ARN. If you specify only // the function name, it is limited to 64 character in length. // // FunctionName is a required field FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"` // Optional string. An opaque pagination token returned from a previous ListVersionsByFunction // operation. If present, indicates where to continue the listing. Marker *string `location:"querystring" locationName:"Marker" type:"string"` // Optional integer. Specifies the maximum number of AWS Lambda function versions // to return in response. This parameter value must be greater than 0. MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"` } // String returns the string representation func (s ListVersionsByFunctionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListVersionsByFunctionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListVersionsByFunctionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListVersionsByFunctionInput"} if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListVersionsByFunctionOutput struct { _ struct{} `type:"structure"` // A string, present if there are more function versions. NextMarker *string `type:"string"` // A list of Lambda function versions. Versions []*FunctionConfiguration `type:"list"` } // String returns the string representation func (s ListVersionsByFunctionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListVersionsByFunctionOutput) GoString() string { return s.String() } type PublishVersionInput struct { _ struct{} `type:"structure"` // The SHA256 hash of the deployment package you want to publish. This provides // validation on the code you are publishing. If you provide this parameter // value must match the SHA256 of the $LATEST version for the publication to // succeed. CodeSha256 *string `type:"string"` // The description for the version you are publishing. If not provided, AWS // Lambda copies the description from the $LATEST version. Description *string `type:"string"` // The Lambda function name. You can specify a function name (for example, Thumbnail) // or you can specify Amazon Resource Name (ARN) of the function (for example, // arn:aws:lambda:us-west-2:account-id:function:ThumbNail). AWS Lambda also // allows you to specify a partial ARN (for example, account-id:Thumbnail). // Note that the length constraint applies only to the ARN. If you specify only // the function name, it is limited to 64 character in length. // // FunctionName is a required field FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s PublishVersionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PublishVersionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PublishVersionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PublishVersionInput"} if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemovePermissionInput struct { _ struct{} `type:"structure"` // Lambda function whose resource policy you want to remove a permission from. // // You can specify a function name (for example, Thumbnail) or you can specify // Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). // AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail). // Note that the length constraint applies only to the ARN. If you specify only // the function name, it is limited to 64 character in length. // // FunctionName is a required field FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"` // You can specify this optional parameter to remove permission associated with // a specific function version or function alias. If you don't specify this // parameter, the API removes permission associated with the unqualified function // ARN. Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"` // Statement ID of the permission to remove. // // StatementId is a required field StatementId *string `location:"uri" locationName:"StatementId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RemovePermissionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemovePermissionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemovePermissionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemovePermissionInput"} if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.Qualifier != nil && len(*s.Qualifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1)) } if s.StatementId == nil { invalidParams.Add(request.NewErrParamRequired("StatementId")) } if s.StatementId != nil && len(*s.StatementId) < 1 { invalidParams.Add(request.NewErrParamMinLen("StatementId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemovePermissionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemovePermissionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemovePermissionOutput) GoString() string { return s.String() } type UpdateAliasInput struct { _ struct{} `type:"structure"` // You can change the description of the alias using this parameter. Description *string `type:"string"` // The function name for which the alias is created. // // FunctionName is a required field FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"` // Using this parameter you can change the Lambda function version to which // the alias points. FunctionVersion *string `min:"1" type:"string"` // The alias name. // // Name is a required field Name *string `location:"uri" locationName:"Name" min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateAliasInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAliasInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateAliasInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateAliasInput"} if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.FunctionVersion != nil && len(*s.FunctionVersion) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionVersion", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateEventSourceMappingInput struct { _ struct{} `type:"structure"` // The maximum number of stream records that can be sent to your Lambda function // for a single invocation. BatchSize *int64 `min:"1" type:"integer"` // Specifies whether AWS Lambda should actively poll the stream or not. If disabled, // AWS Lambda will not poll the stream. Enabled *bool `type:"boolean"` // The Lambda function to which you want the stream records sent. // // You can specify a function name (for example, Thumbnail) or you can specify // Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). // AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail). // // If you are using versioning, you can also provide a qualified function ARN // (ARN that is qualified with function version or alias name as suffix). For // more information about versioning, see AWS Lambda Function Versioning and // Aliases (http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html) // // Note that the length constraint applies only to the ARN. If you specify only // the function name, it is limited to 64 character in length. FunctionName *string `min:"1" type:"string"` // The event source mapping identifier. // // UUID is a required field UUID *string `location:"uri" locationName:"UUID" type:"string" required:"true"` } // String returns the string representation func (s UpdateEventSourceMappingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateEventSourceMappingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateEventSourceMappingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateEventSourceMappingInput"} if s.BatchSize != nil && *s.BatchSize < 1 { invalidParams.Add(request.NewErrParamMinValue("BatchSize", 1)) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.UUID == nil { invalidParams.Add(request.NewErrParamRequired("UUID")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateFunctionCodeInput struct { _ struct{} `type:"structure"` // The existing Lambda function name whose code you want to replace. // // You can specify a function name (for example, Thumbnail) or you can specify // Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). // AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail). // Note that the length constraint applies only to the ARN. If you specify only // the function name, it is limited to 64 character in length. // // FunctionName is a required field FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"` // This boolean parameter can be used to request AWS Lambda to update the Lambda // function and publish a version as an atomic operation. Publish *bool `type:"boolean"` // Amazon S3 bucket name where the .zip file containing your deployment package // is stored. This bucket must reside in the same AWS region where you are creating // the Lambda function. S3Bucket *string `min:"3" type:"string"` // The Amazon S3 object (the deployment package) key name you want to upload. S3Key *string `min:"1" type:"string"` // The Amazon S3 object (the deployment package) version you want to upload. S3ObjectVersion *string `min:"1" type:"string"` // The contents of your zip file containing your deployment package. If you // are using the web API directly, the contents of the zip file must be base64-encoded. // If you are using the AWS SDKs or the AWS CLI, the SDKs or CLI will do the // encoding for you. For more information about creating a .zip file, go to // Execution Permissions (http://docs.aws.amazon.com/lambda/latest/dg/intro-permission-model.html#lambda-intro-execution-role.html) // in the AWS Lambda Developer Guide. // // ZipFile is automatically base64 encoded/decoded by the SDK. ZipFile []byte `type:"blob"` } // String returns the string representation func (s UpdateFunctionCodeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateFunctionCodeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateFunctionCodeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateFunctionCodeInput"} if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.S3Bucket != nil && len(*s.S3Bucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("S3Bucket", 3)) } if s.S3Key != nil && len(*s.S3Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("S3Key", 1)) } if s.S3ObjectVersion != nil && len(*s.S3ObjectVersion) < 1 { invalidParams.Add(request.NewErrParamMinLen("S3ObjectVersion", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateFunctionConfigurationInput struct { _ struct{} `type:"structure"` // A short user-defined function description. AWS Lambda does not use this value. // Assign a meaningful description as you see fit. Description *string `type:"string"` // The name of the Lambda function. // // You can specify a function name (for example, Thumbnail) or you can specify // Amazon Resource Name (ARN) of the function (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). // AWS Lambda also allows you to specify a partial ARN (for example, account-id:Thumbnail). // Note that the length constraint applies only to the ARN. If you specify only // the function name, it is limited to 64 character in length. // // FunctionName is a required field FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"` // The function that Lambda calls to begin executing your function. For Node.js, // it is the module-name.export value in your function. Handler *string `type:"string"` // The amount of memory, in MB, your Lambda function is given. AWS Lambda uses // this memory size to infer the amount of CPU allocated to your function. Your // function use-case determines your CPU and memory requirements. For example, // a database operation might need less memory compared to an image processing // function. The default value is 128 MB. The value must be a multiple of 64 // MB. MemorySize *int64 `min:"128" type:"integer"` // The Amazon Resource Name (ARN) of the IAM role that Lambda will assume when // it executes your function. Role *string `type:"string"` // The runtime environment for the Lambda function. // // To use the Node.js runtime v4.3, set the value to "nodejs4.3". To use earlier // runtime (v0.10.42), set the value to "nodejs". Runtime *string `type:"string" enum:"Runtime"` // The function execution time at which AWS Lambda should terminate the function. // Because the execution time has cost implications, we recommend you set this // value based on your expected execution time. The default is 3 seconds. Timeout *int64 `min:"1" type:"integer"` // If your Lambda function accesses resources in a VPC, you provide this parameter // identifying the list of security group IDs and subnet IDs. These must belong // to the same VPC. You must provide at least one security group and one subnet // ID. VpcConfig *VpcConfig `type:"structure"` } // String returns the string representation func (s UpdateFunctionConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateFunctionConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateFunctionConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateFunctionConfigurationInput"} if s.FunctionName == nil { invalidParams.Add(request.NewErrParamRequired("FunctionName")) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1)) } if s.MemorySize != nil && *s.MemorySize < 128 { invalidParams.Add(request.NewErrParamMinValue("MemorySize", 128)) } if s.Timeout != nil && *s.Timeout < 1 { invalidParams.Add(request.NewErrParamMinValue("Timeout", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // If your Lambda function accesses resources in a VPC, you provide this parameter // identifying the list of security group IDs and subnet IDs. These must belong // to the same VPC. You must provide at least one security group and one subnet // ID. type VpcConfig struct { _ struct{} `type:"structure"` // A list of one or more security groups IDs in your VPC. SecurityGroupIds []*string `type:"list"` // A list of one or more subnet IDs in your VPC. SubnetIds []*string `type:"list"` } // String returns the string representation func (s VpcConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VpcConfig) GoString() string { return s.String() } // VPC configuration associated with your Lambda function. type VpcConfigResponse struct { _ struct{} `type:"structure"` // A list of security group IDs associated with the Lambda function. SecurityGroupIds []*string `type:"list"` // A list of subnet IDs associated with the Lambda function. SubnetIds []*string `type:"list"` // The VPC ID associated with you Lambda function. VpcId *string `type:"string"` } // String returns the string representation func (s VpcConfigResponse) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VpcConfigResponse) GoString() string { return s.String() } const ( // EventSourcePositionTrimHorizon is a EventSourcePosition enum value EventSourcePositionTrimHorizon = "TRIM_HORIZON" // EventSourcePositionLatest is a EventSourcePosition enum value EventSourcePositionLatest = "LATEST" ) const ( // InvocationTypeEvent is a InvocationType enum value InvocationTypeEvent = "Event" // InvocationTypeRequestResponse is a InvocationType enum value InvocationTypeRequestResponse = "RequestResponse" // InvocationTypeDryRun is a InvocationType enum value InvocationTypeDryRun = "DryRun" ) const ( // LogTypeNone is a LogType enum value LogTypeNone = "None" // LogTypeTail is a LogType enum value LogTypeTail = "Tail" ) const ( // RuntimeNodejs is a Runtime enum value RuntimeNodejs = "nodejs" // RuntimeNodejs43 is a Runtime enum value RuntimeNodejs43 = "nodejs4.3" // RuntimeJava8 is a Runtime enum value RuntimeJava8 = "java8" // RuntimePython27 is a Runtime enum value RuntimePython27 = "python2.7" ) const ( // ThrottleReasonConcurrentInvocationLimitExceeded is a ThrottleReason enum value ThrottleReasonConcurrentInvocationLimitExceeded = "ConcurrentInvocationLimitExceeded" // ThrottleReasonFunctionInvocationRateLimitExceeded is a ThrottleReason enum value ThrottleReasonFunctionInvocationRateLimitExceeded = "FunctionInvocationRateLimitExceeded" // ThrottleReasonCallerRateLimitExceeded is a ThrottleReason enum value ThrottleReasonCallerRateLimitExceeded = "CallerRateLimitExceeded" ) aws-sdk-go-1.4.22/service/lambda/examples_test.go000066400000000000000000000401641300374646400216540ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package lambda_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/lambda" ) var _ time.Duration var _ bytes.Buffer func ExampleLambda_AddPermission() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.AddPermissionInput{ Action: aws.String("Action"), // Required FunctionName: aws.String("FunctionName"), // Required Principal: aws.String("Principal"), // Required StatementId: aws.String("StatementId"), // Required EventSourceToken: aws.String("EventSourceToken"), Qualifier: aws.String("Qualifier"), SourceAccount: aws.String("SourceOwner"), SourceArn: aws.String("Arn"), } resp, err := svc.AddPermission(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_CreateAlias() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.CreateAliasInput{ FunctionName: aws.String("FunctionName"), // Required FunctionVersion: aws.String("Version"), // Required Name: aws.String("Alias"), // Required Description: aws.String("Description"), } resp, err := svc.CreateAlias(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_CreateEventSourceMapping() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.CreateEventSourceMappingInput{ EventSourceArn: aws.String("Arn"), // Required FunctionName: aws.String("FunctionName"), // Required StartingPosition: aws.String("EventSourcePosition"), // Required BatchSize: aws.Int64(1), Enabled: aws.Bool(true), } resp, err := svc.CreateEventSourceMapping(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_CreateFunction() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.CreateFunctionInput{ Code: &lambda.FunctionCode{ // Required S3Bucket: aws.String("S3Bucket"), S3Key: aws.String("S3Key"), S3ObjectVersion: aws.String("S3ObjectVersion"), ZipFile: []byte("PAYLOAD"), }, FunctionName: aws.String("FunctionName"), // Required Handler: aws.String("Handler"), // Required Role: aws.String("RoleArn"), // Required Runtime: aws.String("Runtime"), // Required Description: aws.String("Description"), MemorySize: aws.Int64(1), Publish: aws.Bool(true), Timeout: aws.Int64(1), VpcConfig: &lambda.VpcConfig{ SecurityGroupIds: []*string{ aws.String("SecurityGroupId"), // Required // More values... }, SubnetIds: []*string{ aws.String("SubnetId"), // Required // More values... }, }, } resp, err := svc.CreateFunction(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_DeleteAlias() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.DeleteAliasInput{ FunctionName: aws.String("FunctionName"), // Required Name: aws.String("Alias"), // Required } resp, err := svc.DeleteAlias(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_DeleteEventSourceMapping() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.DeleteEventSourceMappingInput{ UUID: aws.String("String"), // Required } resp, err := svc.DeleteEventSourceMapping(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_DeleteFunction() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.DeleteFunctionInput{ FunctionName: aws.String("FunctionName"), // Required Qualifier: aws.String("Qualifier"), } resp, err := svc.DeleteFunction(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_GetAlias() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.GetAliasInput{ FunctionName: aws.String("FunctionName"), // Required Name: aws.String("Alias"), // Required } resp, err := svc.GetAlias(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_GetEventSourceMapping() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.GetEventSourceMappingInput{ UUID: aws.String("String"), // Required } resp, err := svc.GetEventSourceMapping(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_GetFunction() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.GetFunctionInput{ FunctionName: aws.String("FunctionName"), // Required Qualifier: aws.String("Qualifier"), } resp, err := svc.GetFunction(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_GetFunctionConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.GetFunctionConfigurationInput{ FunctionName: aws.String("FunctionName"), // Required Qualifier: aws.String("Qualifier"), } resp, err := svc.GetFunctionConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_GetPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.GetPolicyInput{ FunctionName: aws.String("FunctionName"), // Required Qualifier: aws.String("Qualifier"), } resp, err := svc.GetPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_Invoke() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.InvokeInput{ FunctionName: aws.String("FunctionName"), // Required ClientContext: aws.String("String"), InvocationType: aws.String("InvocationType"), LogType: aws.String("LogType"), Payload: []byte("PAYLOAD"), Qualifier: aws.String("Qualifier"), } resp, err := svc.Invoke(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_InvokeAsync() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.InvokeAsyncInput{ FunctionName: aws.String("FunctionName"), // Required InvokeArgs: bytes.NewReader([]byte("PAYLOAD")), // Required } resp, err := svc.InvokeAsync(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_ListAliases() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.ListAliasesInput{ FunctionName: aws.String("FunctionName"), // Required FunctionVersion: aws.String("Version"), Marker: aws.String("String"), MaxItems: aws.Int64(1), } resp, err := svc.ListAliases(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_ListEventSourceMappings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.ListEventSourceMappingsInput{ EventSourceArn: aws.String("Arn"), FunctionName: aws.String("FunctionName"), Marker: aws.String("String"), MaxItems: aws.Int64(1), } resp, err := svc.ListEventSourceMappings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_ListFunctions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.ListFunctionsInput{ Marker: aws.String("String"), MaxItems: aws.Int64(1), } resp, err := svc.ListFunctions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_ListVersionsByFunction() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.ListVersionsByFunctionInput{ FunctionName: aws.String("FunctionName"), // Required Marker: aws.String("String"), MaxItems: aws.Int64(1), } resp, err := svc.ListVersionsByFunction(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_PublishVersion() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.PublishVersionInput{ FunctionName: aws.String("FunctionName"), // Required CodeSha256: aws.String("String"), Description: aws.String("Description"), } resp, err := svc.PublishVersion(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_RemovePermission() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.RemovePermissionInput{ FunctionName: aws.String("FunctionName"), // Required StatementId: aws.String("StatementId"), // Required Qualifier: aws.String("Qualifier"), } resp, err := svc.RemovePermission(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_UpdateAlias() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.UpdateAliasInput{ FunctionName: aws.String("FunctionName"), // Required Name: aws.String("Alias"), // Required Description: aws.String("Description"), FunctionVersion: aws.String("Version"), } resp, err := svc.UpdateAlias(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_UpdateEventSourceMapping() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.UpdateEventSourceMappingInput{ UUID: aws.String("String"), // Required BatchSize: aws.Int64(1), Enabled: aws.Bool(true), FunctionName: aws.String("FunctionName"), } resp, err := svc.UpdateEventSourceMapping(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_UpdateFunctionCode() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.UpdateFunctionCodeInput{ FunctionName: aws.String("FunctionName"), // Required Publish: aws.Bool(true), S3Bucket: aws.String("S3Bucket"), S3Key: aws.String("S3Key"), S3ObjectVersion: aws.String("S3ObjectVersion"), ZipFile: []byte("PAYLOAD"), } resp, err := svc.UpdateFunctionCode(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleLambda_UpdateFunctionConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := lambda.New(sess) params := &lambda.UpdateFunctionConfigurationInput{ FunctionName: aws.String("FunctionName"), // Required Description: aws.String("Description"), Handler: aws.String("Handler"), MemorySize: aws.Int64(1), Role: aws.String("RoleArn"), Runtime: aws.String("Runtime"), Timeout: aws.Int64(1), VpcConfig: &lambda.VpcConfig{ SecurityGroupIds: []*string{ aws.String("SecurityGroupId"), // Required // More values... }, SubnetIds: []*string{ aws.String("SubnetId"), // Required // More values... }, }, } resp, err := svc.UpdateFunctionConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/lambda/lambdaiface/000077500000000000000000000000001300374646400206535ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/lambda/lambdaiface/interface.go000066400000000000000000000156361300374646400231550ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package lambdaiface provides an interface to enable mocking the AWS Lambda service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package lambdaiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/lambda" ) // LambdaAPI provides an interface to enable mocking the // lambda.Lambda service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Lambda. // func myFunc(svc lambdaiface.LambdaAPI) bool { // // Make svc.AddPermission request // } // // func main() { // sess := session.New() // svc := lambda.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockLambdaClient struct { // lambdaiface.LambdaAPI // } // func (m *mockLambdaClient) AddPermission(input *lambda.AddPermissionInput) (*lambda.AddPermissionOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockLambdaClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type LambdaAPI interface { AddPermissionRequest(*lambda.AddPermissionInput) (*request.Request, *lambda.AddPermissionOutput) AddPermission(*lambda.AddPermissionInput) (*lambda.AddPermissionOutput, error) CreateAliasRequest(*lambda.CreateAliasInput) (*request.Request, *lambda.AliasConfiguration) CreateAlias(*lambda.CreateAliasInput) (*lambda.AliasConfiguration, error) CreateEventSourceMappingRequest(*lambda.CreateEventSourceMappingInput) (*request.Request, *lambda.EventSourceMappingConfiguration) CreateEventSourceMapping(*lambda.CreateEventSourceMappingInput) (*lambda.EventSourceMappingConfiguration, error) CreateFunctionRequest(*lambda.CreateFunctionInput) (*request.Request, *lambda.FunctionConfiguration) CreateFunction(*lambda.CreateFunctionInput) (*lambda.FunctionConfiguration, error) DeleteAliasRequest(*lambda.DeleteAliasInput) (*request.Request, *lambda.DeleteAliasOutput) DeleteAlias(*lambda.DeleteAliasInput) (*lambda.DeleteAliasOutput, error) DeleteEventSourceMappingRequest(*lambda.DeleteEventSourceMappingInput) (*request.Request, *lambda.EventSourceMappingConfiguration) DeleteEventSourceMapping(*lambda.DeleteEventSourceMappingInput) (*lambda.EventSourceMappingConfiguration, error) DeleteFunctionRequest(*lambda.DeleteFunctionInput) (*request.Request, *lambda.DeleteFunctionOutput) DeleteFunction(*lambda.DeleteFunctionInput) (*lambda.DeleteFunctionOutput, error) GetAliasRequest(*lambda.GetAliasInput) (*request.Request, *lambda.AliasConfiguration) GetAlias(*lambda.GetAliasInput) (*lambda.AliasConfiguration, error) GetEventSourceMappingRequest(*lambda.GetEventSourceMappingInput) (*request.Request, *lambda.EventSourceMappingConfiguration) GetEventSourceMapping(*lambda.GetEventSourceMappingInput) (*lambda.EventSourceMappingConfiguration, error) GetFunctionRequest(*lambda.GetFunctionInput) (*request.Request, *lambda.GetFunctionOutput) GetFunction(*lambda.GetFunctionInput) (*lambda.GetFunctionOutput, error) GetFunctionConfigurationRequest(*lambda.GetFunctionConfigurationInput) (*request.Request, *lambda.FunctionConfiguration) GetFunctionConfiguration(*lambda.GetFunctionConfigurationInput) (*lambda.FunctionConfiguration, error) GetPolicyRequest(*lambda.GetPolicyInput) (*request.Request, *lambda.GetPolicyOutput) GetPolicy(*lambda.GetPolicyInput) (*lambda.GetPolicyOutput, error) InvokeRequest(*lambda.InvokeInput) (*request.Request, *lambda.InvokeOutput) Invoke(*lambda.InvokeInput) (*lambda.InvokeOutput, error) InvokeAsyncRequest(*lambda.InvokeAsyncInput) (*request.Request, *lambda.InvokeAsyncOutput) InvokeAsync(*lambda.InvokeAsyncInput) (*lambda.InvokeAsyncOutput, error) ListAliasesRequest(*lambda.ListAliasesInput) (*request.Request, *lambda.ListAliasesOutput) ListAliases(*lambda.ListAliasesInput) (*lambda.ListAliasesOutput, error) ListEventSourceMappingsRequest(*lambda.ListEventSourceMappingsInput) (*request.Request, *lambda.ListEventSourceMappingsOutput) ListEventSourceMappings(*lambda.ListEventSourceMappingsInput) (*lambda.ListEventSourceMappingsOutput, error) ListEventSourceMappingsPages(*lambda.ListEventSourceMappingsInput, func(*lambda.ListEventSourceMappingsOutput, bool) bool) error ListFunctionsRequest(*lambda.ListFunctionsInput) (*request.Request, *lambda.ListFunctionsOutput) ListFunctions(*lambda.ListFunctionsInput) (*lambda.ListFunctionsOutput, error) ListFunctionsPages(*lambda.ListFunctionsInput, func(*lambda.ListFunctionsOutput, bool) bool) error ListVersionsByFunctionRequest(*lambda.ListVersionsByFunctionInput) (*request.Request, *lambda.ListVersionsByFunctionOutput) ListVersionsByFunction(*lambda.ListVersionsByFunctionInput) (*lambda.ListVersionsByFunctionOutput, error) PublishVersionRequest(*lambda.PublishVersionInput) (*request.Request, *lambda.FunctionConfiguration) PublishVersion(*lambda.PublishVersionInput) (*lambda.FunctionConfiguration, error) RemovePermissionRequest(*lambda.RemovePermissionInput) (*request.Request, *lambda.RemovePermissionOutput) RemovePermission(*lambda.RemovePermissionInput) (*lambda.RemovePermissionOutput, error) UpdateAliasRequest(*lambda.UpdateAliasInput) (*request.Request, *lambda.AliasConfiguration) UpdateAlias(*lambda.UpdateAliasInput) (*lambda.AliasConfiguration, error) UpdateEventSourceMappingRequest(*lambda.UpdateEventSourceMappingInput) (*request.Request, *lambda.EventSourceMappingConfiguration) UpdateEventSourceMapping(*lambda.UpdateEventSourceMappingInput) (*lambda.EventSourceMappingConfiguration, error) UpdateFunctionCodeRequest(*lambda.UpdateFunctionCodeInput) (*request.Request, *lambda.FunctionConfiguration) UpdateFunctionCode(*lambda.UpdateFunctionCodeInput) (*lambda.FunctionConfiguration, error) UpdateFunctionConfigurationRequest(*lambda.UpdateFunctionConfigurationInput) (*request.Request, *lambda.FunctionConfiguration) UpdateFunctionConfiguration(*lambda.UpdateFunctionConfigurationInput) (*lambda.FunctionConfiguration, error) } var _ LambdaAPI = (*lambda.Lambda)(nil) aws-sdk-go-1.4.22/service/lambda/service.go000066400000000000000000000057761300374646400204510ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package lambda import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) // Overview // // This is the AWS Lambda API Reference. The AWS Lambda Developer Guide provides // additional information. For the service overview, go to What is AWS Lambda // (http://docs.aws.amazon.com/lambda/latest/dg/welcome.html), and for information // about how the service works, go to AWS Lambda: How it Works (http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html) // in the AWS Lambda Developer Guide. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type Lambda struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "lambda" // New creates a new instance of the Lambda client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a Lambda client from just a session. // svc := lambda.New(mySession) // // // Create a Lambda client with additional configuration // svc := lambda.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *Lambda { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *Lambda { svc := &Lambda{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-03-31", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a Lambda operation and runs any // custom request initialization. func (c *Lambda) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/machinelearning/000077500000000000000000000000001300374646400203475ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/machinelearning/api.go000066400000000000000000007210631300374646400214600ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package machinelearning provides a client for Amazon Machine Learning. package machinelearning import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opAddTags = "AddTags" // AddTagsRequest generates a "aws/request.Request" representing the // client's request for the AddTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddTagsRequest method. // req, resp := client.AddTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) AddTagsRequest(input *AddTagsInput) (req *request.Request, output *AddTagsOutput) { op := &request.Operation{ Name: opAddTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddTagsInput{} } req = c.newRequest(op, input, output) output = &AddTagsOutput{} req.Data = output return } // AddTags API operation for Amazon Machine Learning. // // Adds one or more tags to an object, up to a limit of 10. Each tag consists // of a key and an optional value. If you add a tag using a key that is already // associated with the ML object, AddTags updates the tag's value. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation AddTags for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * InvalidTagException // // * TagLimitExceededException // // * ResourceNotFoundException // A specified resource cannot be located. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) AddTags(input *AddTagsInput) (*AddTagsOutput, error) { req, out := c.AddTagsRequest(input) err := req.Send() return out, err } const opCreateBatchPrediction = "CreateBatchPrediction" // CreateBatchPredictionRequest generates a "aws/request.Request" representing the // client's request for the CreateBatchPrediction operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateBatchPrediction for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateBatchPrediction method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateBatchPredictionRequest method. // req, resp := client.CreateBatchPredictionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) CreateBatchPredictionRequest(input *CreateBatchPredictionInput) (req *request.Request, output *CreateBatchPredictionOutput) { op := &request.Operation{ Name: opCreateBatchPrediction, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateBatchPredictionInput{} } req = c.newRequest(op, input, output) output = &CreateBatchPredictionOutput{} req.Data = output return } // CreateBatchPrediction API operation for Amazon Machine Learning. // // Generates predictions for a group of observations. The observations to process // exist in one or more data files referenced by a DataSource. This operation // creates a new BatchPrediction, and uses an MLModel and the data files referenced // by the DataSource as information sources. // // CreateBatchPrediction is an asynchronous operation. In response to CreateBatchPrediction, // Amazon Machine Learning (Amazon ML) immediately returns and sets the BatchPrediction // status to PENDING. After the BatchPrediction completes, Amazon ML sets the // status to COMPLETED. // // You can poll for status updates by using the GetBatchPrediction operation // and checking the Status parameter of the result. After the COMPLETED status // appears, the results are available in the location specified by the OutputUri // parameter. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation CreateBatchPrediction for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * InternalServerException // An error on the server occurred when trying to process a request. // // * IdempotentParameterMismatchException // A second request to use or change an object was not allowed. This can result // from retrying a request using a parameter that was not present in the original // request. // func (c *MachineLearning) CreateBatchPrediction(input *CreateBatchPredictionInput) (*CreateBatchPredictionOutput, error) { req, out := c.CreateBatchPredictionRequest(input) err := req.Send() return out, err } const opCreateDataSourceFromRDS = "CreateDataSourceFromRDS" // CreateDataSourceFromRDSRequest generates a "aws/request.Request" representing the // client's request for the CreateDataSourceFromRDS operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDataSourceFromRDS for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDataSourceFromRDS method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDataSourceFromRDSRequest method. // req, resp := client.CreateDataSourceFromRDSRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) CreateDataSourceFromRDSRequest(input *CreateDataSourceFromRDSInput) (req *request.Request, output *CreateDataSourceFromRDSOutput) { op := &request.Operation{ Name: opCreateDataSourceFromRDS, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDataSourceFromRDSInput{} } req = c.newRequest(op, input, output) output = &CreateDataSourceFromRDSOutput{} req.Data = output return } // CreateDataSourceFromRDS API operation for Amazon Machine Learning. // // Creates a DataSource object from an Amazon Relational Database Service (http://aws.amazon.com/rds/) // (Amazon RDS). A DataSource references data that can be used to perform CreateMLModel, // CreateEvaluation, or CreateBatchPrediction operations. // // CreateDataSourceFromRDS is an asynchronous operation. In response to CreateDataSourceFromRDS, // Amazon Machine Learning (Amazon ML) immediately returns and sets the DataSource // status to PENDING. After the DataSource is created and ready for use, Amazon // ML sets the Status parameter to COMPLETED. DataSource in the COMPLETED or // PENDING state can be used only to perform >CreateMLModel>, CreateEvaluation, // or CreateBatchPrediction operations. // // If Amazon ML cannot accept the input source, it sets the Status parameter // to FAILED and includes an error message in the Message attribute of the GetDataSource // operation response. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation CreateDataSourceFromRDS for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * InternalServerException // An error on the server occurred when trying to process a request. // // * IdempotentParameterMismatchException // A second request to use or change an object was not allowed. This can result // from retrying a request using a parameter that was not present in the original // request. // func (c *MachineLearning) CreateDataSourceFromRDS(input *CreateDataSourceFromRDSInput) (*CreateDataSourceFromRDSOutput, error) { req, out := c.CreateDataSourceFromRDSRequest(input) err := req.Send() return out, err } const opCreateDataSourceFromRedshift = "CreateDataSourceFromRedshift" // CreateDataSourceFromRedshiftRequest generates a "aws/request.Request" representing the // client's request for the CreateDataSourceFromRedshift operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDataSourceFromRedshift for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDataSourceFromRedshift method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDataSourceFromRedshiftRequest method. // req, resp := client.CreateDataSourceFromRedshiftRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) CreateDataSourceFromRedshiftRequest(input *CreateDataSourceFromRedshiftInput) (req *request.Request, output *CreateDataSourceFromRedshiftOutput) { op := &request.Operation{ Name: opCreateDataSourceFromRedshift, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDataSourceFromRedshiftInput{} } req = c.newRequest(op, input, output) output = &CreateDataSourceFromRedshiftOutput{} req.Data = output return } // CreateDataSourceFromRedshift API operation for Amazon Machine Learning. // // Creates a DataSource from a database hosted on an Amazon Redshift cluster. // A DataSource references data that can be used to perform either CreateMLModel, // CreateEvaluation, or CreateBatchPrediction operations. // // CreateDataSourceFromRedshift is an asynchronous operation. In response to // CreateDataSourceFromRedshift, Amazon Machine Learning (Amazon ML) immediately // returns and sets the DataSource status to PENDING. After the DataSource is // created and ready for use, Amazon ML sets the Status parameter to COMPLETED. // DataSource in COMPLETED or PENDING states can be used to perform only CreateMLModel, // CreateEvaluation, or CreateBatchPrediction operations. // // If Amazon ML can't accept the input source, it sets the Status parameter // to FAILED and includes an error message in the Message attribute of the GetDataSource // operation response. // // The observations should be contained in the database hosted on an Amazon // Redshift cluster and should be specified by a SelectSqlQuery query. Amazon // ML executes an Unload command in Amazon Redshift to transfer the result set // of the SelectSqlQuery query to S3StagingLocation. // // After the DataSource has been created, it's ready for use in evaluations // and batch predictions. If you plan to use the DataSource to train an MLModel, // the DataSource also requires a recipe. A recipe describes how each input // variable will be used in training an MLModel. Will the variable be included // or excluded from training? Will the variable be manipulated; for example, // will it be combined with another variable or will it be split apart into // word combinations? The recipe provides answers to these questions. // // You can't change an existing datasource, but you can copy and modify the // settings from an existing Amazon Redshift datasource to create a new datasource. // To do so, call GetDataSource for an existing datasource and copy the values // to a CreateDataSource call. Change the settings that you want to change and // make sure that all required fields have the appropriate values. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation CreateDataSourceFromRedshift for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * InternalServerException // An error on the server occurred when trying to process a request. // // * IdempotentParameterMismatchException // A second request to use or change an object was not allowed. This can result // from retrying a request using a parameter that was not present in the original // request. // func (c *MachineLearning) CreateDataSourceFromRedshift(input *CreateDataSourceFromRedshiftInput) (*CreateDataSourceFromRedshiftOutput, error) { req, out := c.CreateDataSourceFromRedshiftRequest(input) err := req.Send() return out, err } const opCreateDataSourceFromS3 = "CreateDataSourceFromS3" // CreateDataSourceFromS3Request generates a "aws/request.Request" representing the // client's request for the CreateDataSourceFromS3 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDataSourceFromS3 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDataSourceFromS3 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDataSourceFromS3Request method. // req, resp := client.CreateDataSourceFromS3Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) CreateDataSourceFromS3Request(input *CreateDataSourceFromS3Input) (req *request.Request, output *CreateDataSourceFromS3Output) { op := &request.Operation{ Name: opCreateDataSourceFromS3, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDataSourceFromS3Input{} } req = c.newRequest(op, input, output) output = &CreateDataSourceFromS3Output{} req.Data = output return } // CreateDataSourceFromS3 API operation for Amazon Machine Learning. // // Creates a DataSource object. A DataSource references data that can be used // to perform CreateMLModel, CreateEvaluation, or CreateBatchPrediction operations. // // CreateDataSourceFromS3 is an asynchronous operation. In response to CreateDataSourceFromS3, // Amazon Machine Learning (Amazon ML) immediately returns and sets the DataSource // status to PENDING. After the DataSource has been created and is ready for // use, Amazon ML sets the Status parameter to COMPLETED. DataSource in the // COMPLETED or PENDING state can be used to perform only CreateMLModel, CreateEvaluation // or CreateBatchPrediction operations. // // If Amazon ML can't accept the input source, it sets the Status parameter // to FAILED and includes an error message in the Message attribute of the GetDataSource // operation response. // // The observation data used in a DataSource should be ready to use; that is, // it should have a consistent structure, and missing data values should be // kept to a minimum. The observation data must reside in one or more .csv files // in an Amazon Simple Storage Service (Amazon S3) location, along with a schema // that describes the data items by name and type. The same schema must be used // for all of the data files referenced by the DataSource. // // After the DataSource has been created, it's ready to use in evaluations and // batch predictions. If you plan to use the DataSource to train an MLModel, // the DataSource also needs a recipe. A recipe describes how each input variable // will be used in training an MLModel. Will the variable be included or excluded // from training? Will the variable be manipulated; for example, will it be // combined with another variable or will it be split apart into word combinations? // The recipe provides answers to these questions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation CreateDataSourceFromS3 for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * InternalServerException // An error on the server occurred when trying to process a request. // // * IdempotentParameterMismatchException // A second request to use or change an object was not allowed. This can result // from retrying a request using a parameter that was not present in the original // request. // func (c *MachineLearning) CreateDataSourceFromS3(input *CreateDataSourceFromS3Input) (*CreateDataSourceFromS3Output, error) { req, out := c.CreateDataSourceFromS3Request(input) err := req.Send() return out, err } const opCreateEvaluation = "CreateEvaluation" // CreateEvaluationRequest generates a "aws/request.Request" representing the // client's request for the CreateEvaluation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateEvaluation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateEvaluation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateEvaluationRequest method. // req, resp := client.CreateEvaluationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) CreateEvaluationRequest(input *CreateEvaluationInput) (req *request.Request, output *CreateEvaluationOutput) { op := &request.Operation{ Name: opCreateEvaluation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateEvaluationInput{} } req = c.newRequest(op, input, output) output = &CreateEvaluationOutput{} req.Data = output return } // CreateEvaluation API operation for Amazon Machine Learning. // // Creates a new Evaluation of an MLModel. An MLModel is evaluated on a set // of observations associated to a DataSource. Like a DataSource for an MLModel, // the DataSource for an Evaluation contains values for the Target Variable. // The Evaluation compares the predicted result for each observation to the // actual outcome and provides a summary so that you know how effective the // MLModel functions on the test data. Evaluation generates a relevant performance // metric, such as BinaryAUC, RegressionRMSE or MulticlassAvgFScore based on // the corresponding MLModelType: BINARY, REGRESSION or MULTICLASS. // // CreateEvaluation is an asynchronous operation. In response to CreateEvaluation, // Amazon Machine Learning (Amazon ML) immediately returns and sets the evaluation // status to PENDING. After the Evaluation is created and ready for use, Amazon // ML sets the status to COMPLETED. // // You can use the GetEvaluation operation to check progress of the evaluation // during the creation operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation CreateEvaluation for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * InternalServerException // An error on the server occurred when trying to process a request. // // * IdempotentParameterMismatchException // A second request to use or change an object was not allowed. This can result // from retrying a request using a parameter that was not present in the original // request. // func (c *MachineLearning) CreateEvaluation(input *CreateEvaluationInput) (*CreateEvaluationOutput, error) { req, out := c.CreateEvaluationRequest(input) err := req.Send() return out, err } const opCreateMLModel = "CreateMLModel" // CreateMLModelRequest generates a "aws/request.Request" representing the // client's request for the CreateMLModel operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateMLModel for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateMLModel method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateMLModelRequest method. // req, resp := client.CreateMLModelRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) CreateMLModelRequest(input *CreateMLModelInput) (req *request.Request, output *CreateMLModelOutput) { op := &request.Operation{ Name: opCreateMLModel, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateMLModelInput{} } req = c.newRequest(op, input, output) output = &CreateMLModelOutput{} req.Data = output return } // CreateMLModel API operation for Amazon Machine Learning. // // Creates a new MLModel using the DataSource and the recipe as information // sources. // // An MLModel is nearly immutable. Users can update only the MLModelName and // the ScoreThreshold in an MLModel without creating a new MLModel. // // CreateMLModel is an asynchronous operation. In response to CreateMLModel, // Amazon Machine Learning (Amazon ML) immediately returns and sets the MLModel // status to PENDING. After the MLModel has been created and ready is for use, // Amazon ML sets the status to COMPLETED. // // You can use the GetMLModel operation to check the progress of the MLModel // during the creation operation. // // CreateMLModel requires a DataSource with computed statistics, which can be // created by setting ComputeStatistics to true in CreateDataSourceFromRDS, // CreateDataSourceFromS3, or CreateDataSourceFromRedshift operations. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation CreateMLModel for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * InternalServerException // An error on the server occurred when trying to process a request. // // * IdempotentParameterMismatchException // A second request to use or change an object was not allowed. This can result // from retrying a request using a parameter that was not present in the original // request. // func (c *MachineLearning) CreateMLModel(input *CreateMLModelInput) (*CreateMLModelOutput, error) { req, out := c.CreateMLModelRequest(input) err := req.Send() return out, err } const opCreateRealtimeEndpoint = "CreateRealtimeEndpoint" // CreateRealtimeEndpointRequest generates a "aws/request.Request" representing the // client's request for the CreateRealtimeEndpoint operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateRealtimeEndpoint for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateRealtimeEndpoint method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateRealtimeEndpointRequest method. // req, resp := client.CreateRealtimeEndpointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) CreateRealtimeEndpointRequest(input *CreateRealtimeEndpointInput) (req *request.Request, output *CreateRealtimeEndpointOutput) { op := &request.Operation{ Name: opCreateRealtimeEndpoint, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateRealtimeEndpointInput{} } req = c.newRequest(op, input, output) output = &CreateRealtimeEndpointOutput{} req.Data = output return } // CreateRealtimeEndpoint API operation for Amazon Machine Learning. // // Creates a real-time endpoint for the MLModel. The endpoint contains the URI // of the MLModel; that is, the location to send real-time prediction requests // for the specified MLModel. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation CreateRealtimeEndpoint for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * ResourceNotFoundException // A specified resource cannot be located. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) CreateRealtimeEndpoint(input *CreateRealtimeEndpointInput) (*CreateRealtimeEndpointOutput, error) { req, out := c.CreateRealtimeEndpointRequest(input) err := req.Send() return out, err } const opDeleteBatchPrediction = "DeleteBatchPrediction" // DeleteBatchPredictionRequest generates a "aws/request.Request" representing the // client's request for the DeleteBatchPrediction operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteBatchPrediction for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteBatchPrediction method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteBatchPredictionRequest method. // req, resp := client.DeleteBatchPredictionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) DeleteBatchPredictionRequest(input *DeleteBatchPredictionInput) (req *request.Request, output *DeleteBatchPredictionOutput) { op := &request.Operation{ Name: opDeleteBatchPrediction, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteBatchPredictionInput{} } req = c.newRequest(op, input, output) output = &DeleteBatchPredictionOutput{} req.Data = output return } // DeleteBatchPrediction API operation for Amazon Machine Learning. // // Assigns the DELETED status to a BatchPrediction, rendering it unusable. // // After using the DeleteBatchPrediction operation, you can use the GetBatchPrediction // operation to verify that the status of the BatchPrediction changed to DELETED. // // Caution: The result of the DeleteBatchPrediction operation is irreversible. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation DeleteBatchPrediction for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * ResourceNotFoundException // A specified resource cannot be located. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) DeleteBatchPrediction(input *DeleteBatchPredictionInput) (*DeleteBatchPredictionOutput, error) { req, out := c.DeleteBatchPredictionRequest(input) err := req.Send() return out, err } const opDeleteDataSource = "DeleteDataSource" // DeleteDataSourceRequest generates a "aws/request.Request" representing the // client's request for the DeleteDataSource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDataSource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDataSource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDataSourceRequest method. // req, resp := client.DeleteDataSourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) DeleteDataSourceRequest(input *DeleteDataSourceInput) (req *request.Request, output *DeleteDataSourceOutput) { op := &request.Operation{ Name: opDeleteDataSource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDataSourceInput{} } req = c.newRequest(op, input, output) output = &DeleteDataSourceOutput{} req.Data = output return } // DeleteDataSource API operation for Amazon Machine Learning. // // Assigns the DELETED status to a DataSource, rendering it unusable. // // After using the DeleteDataSource operation, you can use the GetDataSource // operation to verify that the status of the DataSource changed to DELETED. // // Caution: The results of the DeleteDataSource operation are irreversible. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation DeleteDataSource for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * ResourceNotFoundException // A specified resource cannot be located. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) DeleteDataSource(input *DeleteDataSourceInput) (*DeleteDataSourceOutput, error) { req, out := c.DeleteDataSourceRequest(input) err := req.Send() return out, err } const opDeleteEvaluation = "DeleteEvaluation" // DeleteEvaluationRequest generates a "aws/request.Request" representing the // client's request for the DeleteEvaluation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteEvaluation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteEvaluation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteEvaluationRequest method. // req, resp := client.DeleteEvaluationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) DeleteEvaluationRequest(input *DeleteEvaluationInput) (req *request.Request, output *DeleteEvaluationOutput) { op := &request.Operation{ Name: opDeleteEvaluation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteEvaluationInput{} } req = c.newRequest(op, input, output) output = &DeleteEvaluationOutput{} req.Data = output return } // DeleteEvaluation API operation for Amazon Machine Learning. // // Assigns the DELETED status to an Evaluation, rendering it unusable. // // After invoking the DeleteEvaluation operation, you can use the GetEvaluation // operation to verify that the status of the Evaluation changed to DELETED. // // CautionThe results of the DeleteEvaluation operation are irreversible. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation DeleteEvaluation for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * ResourceNotFoundException // A specified resource cannot be located. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) DeleteEvaluation(input *DeleteEvaluationInput) (*DeleteEvaluationOutput, error) { req, out := c.DeleteEvaluationRequest(input) err := req.Send() return out, err } const opDeleteMLModel = "DeleteMLModel" // DeleteMLModelRequest generates a "aws/request.Request" representing the // client's request for the DeleteMLModel operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteMLModel for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteMLModel method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteMLModelRequest method. // req, resp := client.DeleteMLModelRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) DeleteMLModelRequest(input *DeleteMLModelInput) (req *request.Request, output *DeleteMLModelOutput) { op := &request.Operation{ Name: opDeleteMLModel, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteMLModelInput{} } req = c.newRequest(op, input, output) output = &DeleteMLModelOutput{} req.Data = output return } // DeleteMLModel API operation for Amazon Machine Learning. // // Assigns the DELETED status to an MLModel, rendering it unusable. // // After using the DeleteMLModel operation, you can use the GetMLModel operation // to verify that the status of the MLModel changed to DELETED. // // Caution: The result of the DeleteMLModel operation is irreversible. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation DeleteMLModel for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * ResourceNotFoundException // A specified resource cannot be located. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) DeleteMLModel(input *DeleteMLModelInput) (*DeleteMLModelOutput, error) { req, out := c.DeleteMLModelRequest(input) err := req.Send() return out, err } const opDeleteRealtimeEndpoint = "DeleteRealtimeEndpoint" // DeleteRealtimeEndpointRequest generates a "aws/request.Request" representing the // client's request for the DeleteRealtimeEndpoint operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteRealtimeEndpoint for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteRealtimeEndpoint method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteRealtimeEndpointRequest method. // req, resp := client.DeleteRealtimeEndpointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) DeleteRealtimeEndpointRequest(input *DeleteRealtimeEndpointInput) (req *request.Request, output *DeleteRealtimeEndpointOutput) { op := &request.Operation{ Name: opDeleteRealtimeEndpoint, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteRealtimeEndpointInput{} } req = c.newRequest(op, input, output) output = &DeleteRealtimeEndpointOutput{} req.Data = output return } // DeleteRealtimeEndpoint API operation for Amazon Machine Learning. // // Deletes a real time endpoint of an MLModel. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation DeleteRealtimeEndpoint for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * ResourceNotFoundException // A specified resource cannot be located. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) DeleteRealtimeEndpoint(input *DeleteRealtimeEndpointInput) (*DeleteRealtimeEndpointOutput, error) { req, out := c.DeleteRealtimeEndpointRequest(input) err := req.Send() return out, err } const opDeleteTags = "DeleteTags" // DeleteTagsRequest generates a "aws/request.Request" representing the // client's request for the DeleteTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteTagsRequest method. // req, resp := client.DeleteTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) DeleteTagsRequest(input *DeleteTagsInput) (req *request.Request, output *DeleteTagsOutput) { op := &request.Operation{ Name: opDeleteTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteTagsInput{} } req = c.newRequest(op, input, output) output = &DeleteTagsOutput{} req.Data = output return } // DeleteTags API operation for Amazon Machine Learning. // // Deletes the specified tags associated with an ML object. After this operation // is complete, you can't recover deleted tags. // // If you specify a tag that doesn't exist, Amazon ML ignores it. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation DeleteTags for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * InvalidTagException // // * ResourceNotFoundException // A specified resource cannot be located. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) DeleteTags(input *DeleteTagsInput) (*DeleteTagsOutput, error) { req, out := c.DeleteTagsRequest(input) err := req.Send() return out, err } const opDescribeBatchPredictions = "DescribeBatchPredictions" // DescribeBatchPredictionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeBatchPredictions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeBatchPredictions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeBatchPredictions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeBatchPredictionsRequest method. // req, resp := client.DescribeBatchPredictionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) DescribeBatchPredictionsRequest(input *DescribeBatchPredictionsInput) (req *request.Request, output *DescribeBatchPredictionsOutput) { op := &request.Operation{ Name: opDescribeBatchPredictions, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "Limit", TruncationToken: "", }, } if input == nil { input = &DescribeBatchPredictionsInput{} } req = c.newRequest(op, input, output) output = &DescribeBatchPredictionsOutput{} req.Data = output return } // DescribeBatchPredictions API operation for Amazon Machine Learning. // // Returns a list of BatchPrediction operations that match the search criteria // in the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation DescribeBatchPredictions for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) DescribeBatchPredictions(input *DescribeBatchPredictionsInput) (*DescribeBatchPredictionsOutput, error) { req, out := c.DescribeBatchPredictionsRequest(input) err := req.Send() return out, err } // DescribeBatchPredictionsPages iterates over the pages of a DescribeBatchPredictions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeBatchPredictions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeBatchPredictions operation. // pageNum := 0 // err := client.DescribeBatchPredictionsPages(params, // func(page *DescribeBatchPredictionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *MachineLearning) DescribeBatchPredictionsPages(input *DescribeBatchPredictionsInput, fn func(p *DescribeBatchPredictionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeBatchPredictionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeBatchPredictionsOutput), lastPage) }) } const opDescribeDataSources = "DescribeDataSources" // DescribeDataSourcesRequest generates a "aws/request.Request" representing the // client's request for the DescribeDataSources operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDataSources for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDataSources method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDataSourcesRequest method. // req, resp := client.DescribeDataSourcesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) DescribeDataSourcesRequest(input *DescribeDataSourcesInput) (req *request.Request, output *DescribeDataSourcesOutput) { op := &request.Operation{ Name: opDescribeDataSources, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "Limit", TruncationToken: "", }, } if input == nil { input = &DescribeDataSourcesInput{} } req = c.newRequest(op, input, output) output = &DescribeDataSourcesOutput{} req.Data = output return } // DescribeDataSources API operation for Amazon Machine Learning. // // Returns a list of DataSource that match the search criteria in the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation DescribeDataSources for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) DescribeDataSources(input *DescribeDataSourcesInput) (*DescribeDataSourcesOutput, error) { req, out := c.DescribeDataSourcesRequest(input) err := req.Send() return out, err } // DescribeDataSourcesPages iterates over the pages of a DescribeDataSources operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeDataSources method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeDataSources operation. // pageNum := 0 // err := client.DescribeDataSourcesPages(params, // func(page *DescribeDataSourcesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *MachineLearning) DescribeDataSourcesPages(input *DescribeDataSourcesInput, fn func(p *DescribeDataSourcesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeDataSourcesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeDataSourcesOutput), lastPage) }) } const opDescribeEvaluations = "DescribeEvaluations" // DescribeEvaluationsRequest generates a "aws/request.Request" representing the // client's request for the DescribeEvaluations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEvaluations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEvaluations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEvaluationsRequest method. // req, resp := client.DescribeEvaluationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) DescribeEvaluationsRequest(input *DescribeEvaluationsInput) (req *request.Request, output *DescribeEvaluationsOutput) { op := &request.Operation{ Name: opDescribeEvaluations, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "Limit", TruncationToken: "", }, } if input == nil { input = &DescribeEvaluationsInput{} } req = c.newRequest(op, input, output) output = &DescribeEvaluationsOutput{} req.Data = output return } // DescribeEvaluations API operation for Amazon Machine Learning. // // Returns a list of DescribeEvaluations that match the search criteria in the // request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation DescribeEvaluations for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) DescribeEvaluations(input *DescribeEvaluationsInput) (*DescribeEvaluationsOutput, error) { req, out := c.DescribeEvaluationsRequest(input) err := req.Send() return out, err } // DescribeEvaluationsPages iterates over the pages of a DescribeEvaluations operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeEvaluations method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeEvaluations operation. // pageNum := 0 // err := client.DescribeEvaluationsPages(params, // func(page *DescribeEvaluationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *MachineLearning) DescribeEvaluationsPages(input *DescribeEvaluationsInput, fn func(p *DescribeEvaluationsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeEvaluationsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeEvaluationsOutput), lastPage) }) } const opDescribeMLModels = "DescribeMLModels" // DescribeMLModelsRequest generates a "aws/request.Request" representing the // client's request for the DescribeMLModels operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeMLModels for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeMLModels method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeMLModelsRequest method. // req, resp := client.DescribeMLModelsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) DescribeMLModelsRequest(input *DescribeMLModelsInput) (req *request.Request, output *DescribeMLModelsOutput) { op := &request.Operation{ Name: opDescribeMLModels, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "Limit", TruncationToken: "", }, } if input == nil { input = &DescribeMLModelsInput{} } req = c.newRequest(op, input, output) output = &DescribeMLModelsOutput{} req.Data = output return } // DescribeMLModels API operation for Amazon Machine Learning. // // Returns a list of MLModel that match the search criteria in the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation DescribeMLModels for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) DescribeMLModels(input *DescribeMLModelsInput) (*DescribeMLModelsOutput, error) { req, out := c.DescribeMLModelsRequest(input) err := req.Send() return out, err } // DescribeMLModelsPages iterates over the pages of a DescribeMLModels operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeMLModels method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeMLModels operation. // pageNum := 0 // err := client.DescribeMLModelsPages(params, // func(page *DescribeMLModelsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *MachineLearning) DescribeMLModelsPages(input *DescribeMLModelsInput, fn func(p *DescribeMLModelsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeMLModelsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeMLModelsOutput), lastPage) }) } const opDescribeTags = "DescribeTags" // DescribeTagsRequest generates a "aws/request.Request" representing the // client's request for the DescribeTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTagsRequest method. // req, resp := client.DescribeTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) DescribeTagsRequest(input *DescribeTagsInput) (req *request.Request, output *DescribeTagsOutput) { op := &request.Operation{ Name: opDescribeTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTagsInput{} } req = c.newRequest(op, input, output) output = &DescribeTagsOutput{} req.Data = output return } // DescribeTags API operation for Amazon Machine Learning. // // Describes one or more of the tags for your Amazon ML object. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation DescribeTags for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * ResourceNotFoundException // A specified resource cannot be located. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) DescribeTags(input *DescribeTagsInput) (*DescribeTagsOutput, error) { req, out := c.DescribeTagsRequest(input) err := req.Send() return out, err } const opGetBatchPrediction = "GetBatchPrediction" // GetBatchPredictionRequest generates a "aws/request.Request" representing the // client's request for the GetBatchPrediction operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBatchPrediction for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBatchPrediction method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBatchPredictionRequest method. // req, resp := client.GetBatchPredictionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) GetBatchPredictionRequest(input *GetBatchPredictionInput) (req *request.Request, output *GetBatchPredictionOutput) { op := &request.Operation{ Name: opGetBatchPrediction, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetBatchPredictionInput{} } req = c.newRequest(op, input, output) output = &GetBatchPredictionOutput{} req.Data = output return } // GetBatchPrediction API operation for Amazon Machine Learning. // // Returns a BatchPrediction that includes detailed metadata, status, and data // file information for a Batch Prediction request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation GetBatchPrediction for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * ResourceNotFoundException // A specified resource cannot be located. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) GetBatchPrediction(input *GetBatchPredictionInput) (*GetBatchPredictionOutput, error) { req, out := c.GetBatchPredictionRequest(input) err := req.Send() return out, err } const opGetDataSource = "GetDataSource" // GetDataSourceRequest generates a "aws/request.Request" representing the // client's request for the GetDataSource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDataSource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDataSource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDataSourceRequest method. // req, resp := client.GetDataSourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) GetDataSourceRequest(input *GetDataSourceInput) (req *request.Request, output *GetDataSourceOutput) { op := &request.Operation{ Name: opGetDataSource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetDataSourceInput{} } req = c.newRequest(op, input, output) output = &GetDataSourceOutput{} req.Data = output return } // GetDataSource API operation for Amazon Machine Learning. // // Returns a DataSource that includes metadata and data file information, as // well as the current status of the DataSource. // // GetDataSource provides results in normal or verbose format. The verbose format // adds the schema description and the list of files pointed to by the DataSource // to the normal format. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation GetDataSource for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * ResourceNotFoundException // A specified resource cannot be located. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) GetDataSource(input *GetDataSourceInput) (*GetDataSourceOutput, error) { req, out := c.GetDataSourceRequest(input) err := req.Send() return out, err } const opGetEvaluation = "GetEvaluation" // GetEvaluationRequest generates a "aws/request.Request" representing the // client's request for the GetEvaluation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetEvaluation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetEvaluation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetEvaluationRequest method. // req, resp := client.GetEvaluationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) GetEvaluationRequest(input *GetEvaluationInput) (req *request.Request, output *GetEvaluationOutput) { op := &request.Operation{ Name: opGetEvaluation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetEvaluationInput{} } req = c.newRequest(op, input, output) output = &GetEvaluationOutput{} req.Data = output return } // GetEvaluation API operation for Amazon Machine Learning. // // Returns an Evaluation that includes metadata as well as the current status // of the Evaluation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation GetEvaluation for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * ResourceNotFoundException // A specified resource cannot be located. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) GetEvaluation(input *GetEvaluationInput) (*GetEvaluationOutput, error) { req, out := c.GetEvaluationRequest(input) err := req.Send() return out, err } const opGetMLModel = "GetMLModel" // GetMLModelRequest generates a "aws/request.Request" representing the // client's request for the GetMLModel operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetMLModel for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetMLModel method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetMLModelRequest method. // req, resp := client.GetMLModelRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) GetMLModelRequest(input *GetMLModelInput) (req *request.Request, output *GetMLModelOutput) { op := &request.Operation{ Name: opGetMLModel, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetMLModelInput{} } req = c.newRequest(op, input, output) output = &GetMLModelOutput{} req.Data = output return } // GetMLModel API operation for Amazon Machine Learning. // // Returns an MLModel that includes detailed metadata, data source information, // and the current status of the MLModel. // // GetMLModel provides results in normal or verbose format. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation GetMLModel for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * ResourceNotFoundException // A specified resource cannot be located. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) GetMLModel(input *GetMLModelInput) (*GetMLModelOutput, error) { req, out := c.GetMLModelRequest(input) err := req.Send() return out, err } const opPredict = "Predict" // PredictRequest generates a "aws/request.Request" representing the // client's request for the Predict operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See Predict for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the Predict method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PredictRequest method. // req, resp := client.PredictRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) PredictRequest(input *PredictInput) (req *request.Request, output *PredictOutput) { op := &request.Operation{ Name: opPredict, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PredictInput{} } req = c.newRequest(op, input, output) output = &PredictOutput{} req.Data = output return } // Predict API operation for Amazon Machine Learning. // // Generates a prediction for the observation using the specified ML Model. // // NoteNot all response parameters will be populated. Whether a response parameter // is populated depends on the type of model requested. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation Predict for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * ResourceNotFoundException // A specified resource cannot be located. // // * LimitExceededException // The subscriber exceeded the maximum number of operations. This exception // can occur when listing objects such as DataSource. // // * InternalServerException // An error on the server occurred when trying to process a request. // // * PredictorNotMountedException // The exception is thrown when a predict request is made to an unmounted MLModel. // func (c *MachineLearning) Predict(input *PredictInput) (*PredictOutput, error) { req, out := c.PredictRequest(input) err := req.Send() return out, err } const opUpdateBatchPrediction = "UpdateBatchPrediction" // UpdateBatchPredictionRequest generates a "aws/request.Request" representing the // client's request for the UpdateBatchPrediction operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateBatchPrediction for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateBatchPrediction method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateBatchPredictionRequest method. // req, resp := client.UpdateBatchPredictionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) UpdateBatchPredictionRequest(input *UpdateBatchPredictionInput) (req *request.Request, output *UpdateBatchPredictionOutput) { op := &request.Operation{ Name: opUpdateBatchPrediction, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateBatchPredictionInput{} } req = c.newRequest(op, input, output) output = &UpdateBatchPredictionOutput{} req.Data = output return } // UpdateBatchPrediction API operation for Amazon Machine Learning. // // Updates the BatchPredictionName of a BatchPrediction. // // You can use the GetBatchPrediction operation to view the contents of the // updated data element. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation UpdateBatchPrediction for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * ResourceNotFoundException // A specified resource cannot be located. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) UpdateBatchPrediction(input *UpdateBatchPredictionInput) (*UpdateBatchPredictionOutput, error) { req, out := c.UpdateBatchPredictionRequest(input) err := req.Send() return out, err } const opUpdateDataSource = "UpdateDataSource" // UpdateDataSourceRequest generates a "aws/request.Request" representing the // client's request for the UpdateDataSource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateDataSource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateDataSource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateDataSourceRequest method. // req, resp := client.UpdateDataSourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) UpdateDataSourceRequest(input *UpdateDataSourceInput) (req *request.Request, output *UpdateDataSourceOutput) { op := &request.Operation{ Name: opUpdateDataSource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateDataSourceInput{} } req = c.newRequest(op, input, output) output = &UpdateDataSourceOutput{} req.Data = output return } // UpdateDataSource API operation for Amazon Machine Learning. // // Updates the DataSourceName of a DataSource. // // You can use the GetDataSource operation to view the contents of the updated // data element. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation UpdateDataSource for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * ResourceNotFoundException // A specified resource cannot be located. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) UpdateDataSource(input *UpdateDataSourceInput) (*UpdateDataSourceOutput, error) { req, out := c.UpdateDataSourceRequest(input) err := req.Send() return out, err } const opUpdateEvaluation = "UpdateEvaluation" // UpdateEvaluationRequest generates a "aws/request.Request" representing the // client's request for the UpdateEvaluation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateEvaluation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateEvaluation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateEvaluationRequest method. // req, resp := client.UpdateEvaluationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) UpdateEvaluationRequest(input *UpdateEvaluationInput) (req *request.Request, output *UpdateEvaluationOutput) { op := &request.Operation{ Name: opUpdateEvaluation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateEvaluationInput{} } req = c.newRequest(op, input, output) output = &UpdateEvaluationOutput{} req.Data = output return } // UpdateEvaluation API operation for Amazon Machine Learning. // // Updates the EvaluationName of an Evaluation. // // You can use the GetEvaluation operation to view the contents of the updated // data element. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation UpdateEvaluation for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * ResourceNotFoundException // A specified resource cannot be located. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) UpdateEvaluation(input *UpdateEvaluationInput) (*UpdateEvaluationOutput, error) { req, out := c.UpdateEvaluationRequest(input) err := req.Send() return out, err } const opUpdateMLModel = "UpdateMLModel" // UpdateMLModelRequest generates a "aws/request.Request" representing the // client's request for the UpdateMLModel operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateMLModel for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateMLModel method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateMLModelRequest method. // req, resp := client.UpdateMLModelRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MachineLearning) UpdateMLModelRequest(input *UpdateMLModelInput) (req *request.Request, output *UpdateMLModelOutput) { op := &request.Operation{ Name: opUpdateMLModel, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateMLModelInput{} } req = c.newRequest(op, input, output) output = &UpdateMLModelOutput{} req.Data = output return } // UpdateMLModel API operation for Amazon Machine Learning. // // Updates the MLModelName and the ScoreThreshold of an MLModel. // // You can use the GetMLModel operation to view the contents of the updated // data element. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Machine Learning's // API operation UpdateMLModel for usage and error information. // // Returned Error Codes: // * InvalidInputException // An error on the client occurred. Typically, the cause is an invalid input // value. // // * ResourceNotFoundException // A specified resource cannot be located. // // * InternalServerException // An error on the server occurred when trying to process a request. // func (c *MachineLearning) UpdateMLModel(input *UpdateMLModelInput) (*UpdateMLModelOutput, error) { req, out := c.UpdateMLModelRequest(input) err := req.Send() return out, err } type AddTagsInput struct { _ struct{} `type:"structure"` // The ID of the ML object to tag. For example, exampleModelId. // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` // The type of the ML object to tag. // // ResourceType is a required field ResourceType *string `type:"string" required:"true" enum:"TaggableResourceType"` // The key-value pairs to use to create tags. If you specify a key without specifying // a value, Amazon ML creates a tag with the specified key and a value of null. // // Tags is a required field Tags []*Tag `type:"list" required:"true"` } // String returns the string representation func (s AddTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceId != nil && len(*s.ResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) } if s.ResourceType == nil { invalidParams.Add(request.NewErrParamRequired("ResourceType")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Amazon ML returns the following elements. type AddTagsOutput struct { _ struct{} `type:"structure"` // The ID of the ML object that was tagged. ResourceId *string `min:"1" type:"string"` // The type of the ML object that was tagged. ResourceType *string `type:"string" enum:"TaggableResourceType"` } // String returns the string representation func (s AddTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsOutput) GoString() string { return s.String() } // Represents the output of a GetBatchPrediction operation. // // The content consists of the detailed metadata, the status, and the data file // information of a Batch Prediction. type BatchPrediction struct { _ struct{} `type:"structure"` // The ID of the DataSource that points to the group of observations to predict. BatchPredictionDataSourceId *string `min:"1" type:"string"` // The ID assigned to the BatchPrediction at creation. This value should be // identical to the value of the BatchPredictionID in the request. BatchPredictionId *string `min:"1" type:"string"` // Long integer type that is a 64-bit signed number. ComputeTime *int64 `type:"long"` // The time that the BatchPrediction was created. The time is expressed in epoch // time. CreatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The AWS user account that invoked the BatchPrediction. The account type can // be either an AWS root account or an AWS Identity and Access Management (IAM) // user account. CreatedByIamUser *string `type:"string"` // A timestamp represented in epoch time. FinishedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The location of the data file or directory in Amazon Simple Storage Service // (Amazon S3). InputDataLocationS3 *string `type:"string"` // Long integer type that is a 64-bit signed number. InvalidRecordCount *int64 `type:"long"` // The time of the most recent edit to the BatchPrediction. The time is expressed // in epoch time. LastUpdatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The ID of the MLModel that generated predictions for the BatchPrediction // request. MLModelId *string `min:"1" type:"string"` // A description of the most recent details about processing the batch prediction // request. Message *string `type:"string"` // A user-supplied name or description of the BatchPrediction. Name *string `type:"string"` // The location of an Amazon S3 bucket or directory to receive the operation // results. The following substrings are not allowed in the s3 key portion of // the outputURI field: ':', '//', '/./', '/../'. OutputUri *string `type:"string"` // A timestamp represented in epoch time. StartedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The status of the BatchPrediction. This element can have one of the following // values: // // * PENDING - Amazon Machine Learning (Amazon ML) submitted a request to // generate predictions for a batch of observations. // * INPROGRESS - The process is underway. // * FAILED - The request to perform a batch prediction did not run to completion. // It is not usable. // * COMPLETED - The batch prediction process completed successfully. // * DELETED - The BatchPrediction is marked as deleted. It is not usable. Status *string `type:"string" enum:"EntityStatus"` // Long integer type that is a 64-bit signed number. TotalRecordCount *int64 `type:"long"` } // String returns the string representation func (s BatchPrediction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchPrediction) GoString() string { return s.String() } type CreateBatchPredictionInput struct { _ struct{} `type:"structure"` // The ID of the DataSource that points to the group of observations to predict. // // BatchPredictionDataSourceId is a required field BatchPredictionDataSourceId *string `min:"1" type:"string" required:"true"` // A user-supplied ID that uniquely identifies the BatchPrediction. // // BatchPredictionId is a required field BatchPredictionId *string `min:"1" type:"string" required:"true"` // A user-supplied name or description of the BatchPrediction. BatchPredictionName // can only use the UTF-8 character set. BatchPredictionName *string `type:"string"` // The ID of the MLModel that will generate predictions for the group of observations. // // MLModelId is a required field MLModelId *string `min:"1" type:"string" required:"true"` // The location of an Amazon Simple Storage Service (Amazon S3) bucket or directory // to store the batch prediction results. The following substrings are not allowed // in the s3 key portion of the outputURI field: ':', '//', '/./', '/../'. // // Amazon ML needs permissions to store and retrieve the logs on your behalf. // For information about how to set permissions, see the Amazon Machine Learning // Developer Guide (http://docs.aws.amazon.com/machine-learning/latest/dg). // // OutputUri is a required field OutputUri *string `type:"string" required:"true"` } // String returns the string representation func (s CreateBatchPredictionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateBatchPredictionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateBatchPredictionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateBatchPredictionInput"} if s.BatchPredictionDataSourceId == nil { invalidParams.Add(request.NewErrParamRequired("BatchPredictionDataSourceId")) } if s.BatchPredictionDataSourceId != nil && len(*s.BatchPredictionDataSourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("BatchPredictionDataSourceId", 1)) } if s.BatchPredictionId == nil { invalidParams.Add(request.NewErrParamRequired("BatchPredictionId")) } if s.BatchPredictionId != nil && len(*s.BatchPredictionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("BatchPredictionId", 1)) } if s.MLModelId == nil { invalidParams.Add(request.NewErrParamRequired("MLModelId")) } if s.MLModelId != nil && len(*s.MLModelId) < 1 { invalidParams.Add(request.NewErrParamMinLen("MLModelId", 1)) } if s.OutputUri == nil { invalidParams.Add(request.NewErrParamRequired("OutputUri")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a CreateBatchPrediction operation, and is an acknowledgement // that Amazon ML received the request. // // The CreateBatchPrediction operation is asynchronous. You can poll for status // updates by using the >GetBatchPrediction operation and checking the Status // parameter of the result. type CreateBatchPredictionOutput struct { _ struct{} `type:"structure"` // A user-supplied ID that uniquely identifies the BatchPrediction. This value // is identical to the value of the BatchPredictionId in the request. BatchPredictionId *string `min:"1" type:"string"` } // String returns the string representation func (s CreateBatchPredictionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateBatchPredictionOutput) GoString() string { return s.String() } type CreateDataSourceFromRDSInput struct { _ struct{} `type:"structure"` // The compute statistics for a DataSource. The statistics are generated from // the observation data referenced by a DataSource. Amazon ML uses the statistics // internally during MLModel training. This parameter must be set to true if // the DataSource needs to be used for MLModel training. ComputeStatistics *bool `type:"boolean"` // A user-supplied ID that uniquely identifies the DataSource. Typically, an // Amazon Resource Number (ARN) becomes the ID for a DataSource. // // DataSourceId is a required field DataSourceId *string `min:"1" type:"string" required:"true"` // A user-supplied name or description of the DataSource. DataSourceName *string `type:"string"` // The data specification of an Amazon RDS DataSource: // // RDSData is a required field RDSData *RDSDataSpec `type:"structure" required:"true"` // The role that Amazon ML assumes on behalf of the user to create and activate // a data pipeline in the user's account and copy data using the SelectSqlQuery // query from Amazon RDS to Amazon S3. // // RoleARN is a required field RoleARN *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateDataSourceFromRDSInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDataSourceFromRDSInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDataSourceFromRDSInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDataSourceFromRDSInput"} if s.DataSourceId == nil { invalidParams.Add(request.NewErrParamRequired("DataSourceId")) } if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 1)) } if s.RDSData == nil { invalidParams.Add(request.NewErrParamRequired("RDSData")) } if s.RoleARN == nil { invalidParams.Add(request.NewErrParamRequired("RoleARN")) } if s.RoleARN != nil && len(*s.RoleARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 1)) } if s.RDSData != nil { if err := s.RDSData.Validate(); err != nil { invalidParams.AddNested("RDSData", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a CreateDataSourceFromRDS operation, and is an acknowledgement // that Amazon ML received the request. // // The CreateDataSourceFromRDS> operation is asynchronous. You can poll for // updates by using the GetBatchPrediction operation and checking the Status // parameter. You can inspect the Message when Status shows up as FAILED. You // can also check the progress of the copy operation by going to the DataPipeline // console and looking up the pipeline using the pipelineId from the describe // call. type CreateDataSourceFromRDSOutput struct { _ struct{} `type:"structure"` // A user-supplied ID that uniquely identifies the datasource. This value should // be identical to the value of the DataSourceID in the request. DataSourceId *string `min:"1" type:"string"` } // String returns the string representation func (s CreateDataSourceFromRDSOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDataSourceFromRDSOutput) GoString() string { return s.String() } type CreateDataSourceFromRedshiftInput struct { _ struct{} `type:"structure"` // The compute statistics for a DataSource. The statistics are generated from // the observation data referenced by a DataSource. Amazon ML uses the statistics // internally during MLModel training. This parameter must be set to true if // the DataSource needs to be used for MLModel training. ComputeStatistics *bool `type:"boolean"` // A user-supplied ID that uniquely identifies the DataSource. // // DataSourceId is a required field DataSourceId *string `min:"1" type:"string" required:"true"` // A user-supplied name or description of the DataSource. DataSourceName *string `type:"string"` // The data specification of an Amazon Redshift DataSource: // // * DatabaseInformation - DatabaseName - The name of the Amazon Redshift // database. // ClusterIdentifier - The unique ID for the Amazon Redshift cluster. // // * DatabaseCredentials - The AWS Identity and Access Management (IAM) credentials // that are used to connect to the Amazon Redshift database. // // * SelectSqlQuery - The query that is used to retrieve the observation // data for the Datasource. // // * S3StagingLocation - The Amazon Simple Storage Service (Amazon S3) location // for staging Amazon Redshift data. The data retrieved from Amazon Redshift // using the SelectSqlQuery query is stored in this location. // // * DataSchemaUri - The Amazon S3 location of the DataSchema. // // * DataSchema - A JSON string representing the schema. This is not required // if DataSchemaUri is specified. // // * DataRearrangement - A JSON string that represents the splitting and // rearrangement requirements for the DataSource. // // Sample - "{\"splitting\":{\"percentBegin\":10,\"percentEnd\":60}}" // // DataSpec is a required field DataSpec *RedshiftDataSpec `type:"structure" required:"true"` // A fully specified role Amazon Resource Name (ARN). Amazon ML assumes the // role on behalf of the user to create the following: // // A security group to allow Amazon ML to execute the SelectSqlQuery query on // an Amazon Redshift cluster // // An Amazon S3 bucket policy to grant Amazon ML read/write permissions on the // S3StagingLocation // // RoleARN is a required field RoleARN *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateDataSourceFromRedshiftInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDataSourceFromRedshiftInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDataSourceFromRedshiftInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDataSourceFromRedshiftInput"} if s.DataSourceId == nil { invalidParams.Add(request.NewErrParamRequired("DataSourceId")) } if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 1)) } if s.DataSpec == nil { invalidParams.Add(request.NewErrParamRequired("DataSpec")) } if s.RoleARN == nil { invalidParams.Add(request.NewErrParamRequired("RoleARN")) } if s.RoleARN != nil && len(*s.RoleARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleARN", 1)) } if s.DataSpec != nil { if err := s.DataSpec.Validate(); err != nil { invalidParams.AddNested("DataSpec", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a CreateDataSourceFromRedshift operation, and is // an acknowledgement that Amazon ML received the request. // // The CreateDataSourceFromRedshift operation is asynchronous. You can poll // for updates by using the GetBatchPrediction operation and checking the Status // parameter. type CreateDataSourceFromRedshiftOutput struct { _ struct{} `type:"structure"` // A user-supplied ID that uniquely identifies the datasource. This value should // be identical to the value of the DataSourceID in the request. DataSourceId *string `min:"1" type:"string"` } // String returns the string representation func (s CreateDataSourceFromRedshiftOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDataSourceFromRedshiftOutput) GoString() string { return s.String() } type CreateDataSourceFromS3Input struct { _ struct{} `type:"structure"` // The compute statistics for a DataSource. The statistics are generated from // the observation data referenced by a DataSource. Amazon ML uses the statistics // internally during MLModel training. This parameter must be set to true if // the DataSource needs to be used for MLModel training. ComputeStatistics *bool `type:"boolean"` // A user-supplied identifier that uniquely identifies the DataSource. // // DataSourceId is a required field DataSourceId *string `min:"1" type:"string" required:"true"` // A user-supplied name or description of the DataSource. DataSourceName *string `type:"string"` // The data specification of a DataSource: // // * DataLocationS3 - The Amazon S3 location of the observation data. // // * DataSchemaLocationS3 - The Amazon S3 location of the DataSchema. // // * DataSchema - A JSON string representing the schema. This is not required // if DataSchemaUri is specified. // // * DataRearrangement - A JSON string that represents the splitting and // rearrangement requirements for the Datasource. // // Sample - "{\"splitting\":{\"percentBegin\":10,\"percentEnd\":60}}" // // DataSpec is a required field DataSpec *S3DataSpec `type:"structure" required:"true"` } // String returns the string representation func (s CreateDataSourceFromS3Input) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDataSourceFromS3Input) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDataSourceFromS3Input) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDataSourceFromS3Input"} if s.DataSourceId == nil { invalidParams.Add(request.NewErrParamRequired("DataSourceId")) } if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 1)) } if s.DataSpec == nil { invalidParams.Add(request.NewErrParamRequired("DataSpec")) } if s.DataSpec != nil { if err := s.DataSpec.Validate(); err != nil { invalidParams.AddNested("DataSpec", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a CreateDataSourceFromS3 operation, and is an acknowledgement // that Amazon ML received the request. // // The CreateDataSourceFromS3 operation is asynchronous. You can poll for updates // by using the GetBatchPrediction operation and checking the Status parameter. type CreateDataSourceFromS3Output struct { _ struct{} `type:"structure"` // A user-supplied ID that uniquely identifies the DataSource. This value should // be identical to the value of the DataSourceID in the request. DataSourceId *string `min:"1" type:"string"` } // String returns the string representation func (s CreateDataSourceFromS3Output) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDataSourceFromS3Output) GoString() string { return s.String() } type CreateEvaluationInput struct { _ struct{} `type:"structure"` // The ID of the DataSource for the evaluation. The schema of the DataSource // must match the schema used to create the MLModel. // // EvaluationDataSourceId is a required field EvaluationDataSourceId *string `min:"1" type:"string" required:"true"` // A user-supplied ID that uniquely identifies the Evaluation. // // EvaluationId is a required field EvaluationId *string `min:"1" type:"string" required:"true"` // A user-supplied name or description of the Evaluation. EvaluationName *string `type:"string"` // The ID of the MLModel to evaluate. // // The schema used in creating the MLModel must match the schema of the DataSource // used in the Evaluation. // // MLModelId is a required field MLModelId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateEvaluationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateEvaluationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateEvaluationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateEvaluationInput"} if s.EvaluationDataSourceId == nil { invalidParams.Add(request.NewErrParamRequired("EvaluationDataSourceId")) } if s.EvaluationDataSourceId != nil && len(*s.EvaluationDataSourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("EvaluationDataSourceId", 1)) } if s.EvaluationId == nil { invalidParams.Add(request.NewErrParamRequired("EvaluationId")) } if s.EvaluationId != nil && len(*s.EvaluationId) < 1 { invalidParams.Add(request.NewErrParamMinLen("EvaluationId", 1)) } if s.MLModelId == nil { invalidParams.Add(request.NewErrParamRequired("MLModelId")) } if s.MLModelId != nil && len(*s.MLModelId) < 1 { invalidParams.Add(request.NewErrParamMinLen("MLModelId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a CreateEvaluation operation, and is an acknowledgement // that Amazon ML received the request. // // CreateEvaluation operation is asynchronous. You can poll for status updates // by using the GetEvcaluation operation and checking the Status parameter. type CreateEvaluationOutput struct { _ struct{} `type:"structure"` // The user-supplied ID that uniquely identifies the Evaluation. This value // should be identical to the value of the EvaluationId in the request. EvaluationId *string `min:"1" type:"string"` } // String returns the string representation func (s CreateEvaluationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateEvaluationOutput) GoString() string { return s.String() } type CreateMLModelInput struct { _ struct{} `type:"structure"` // A user-supplied ID that uniquely identifies the MLModel. // // MLModelId is a required field MLModelId *string `min:"1" type:"string" required:"true"` // A user-supplied name or description of the MLModel. MLModelName *string `type:"string"` // The category of supervised learning that this MLModel will address. Choose // from the following types: // // * Choose REGRESSION if the MLModel will be used to predict a numeric value. // // * Choose BINARY if the MLModel result has two possible values. // * Choose MULTICLASS if the MLModel result has a limited number of values. // // For more information, see the Amazon Machine Learning Developer Guide (http://docs.aws.amazon.com/machine-learning/latest/dg). // // MLModelType is a required field MLModelType *string `type:"string" required:"true" enum:"MLModelType"` // A list of the training parameters in the MLModel. The list is implemented // as a map of key-value pairs. // // The following is the current set of training parameters: // // * sgd.maxMLModelSizeInBytes - The maximum allowed size of the model. Depending // on the input data, the size of the model might affect its performance. // // The value is an integer that ranges from 100000 to 2147483648. The default // value is 33554432. // // * sgd.maxPasses - The number of times that the training process traverses // the observations to build the MLModel. The value is an integer that ranges // from 1 to 10000. The default value is 10. // // * sgd.shuffleType - Whether Amazon ML shuffles the training data. Shuffling // the data improves a model's ability to find the optimal solution for a // variety of data types. The valid values are auto and none. The default // value is none. We strongly recommend that you shuffle your data. // // * sgd.l1RegularizationAmount - The coefficient regularization L1 norm. // It controls overfitting the data by penalizing large coefficients. This // tends to drive coefficients to zero, resulting in a sparse feature set. // If you use this parameter, start by specifying a small value, such as // 1.0E-08. // // The value is a double that ranges from 0 to MAX_DOUBLE. The default is to // not use L1 normalization. This parameter can't be used when L2 is specified. // Use this parameter sparingly. // // * sgd.l2RegularizationAmount - The coefficient regularization L2 norm. // It controls overfitting the data by penalizing large coefficients. This // tends to drive coefficients to small, nonzero values. If you use this // parameter, start by specifying a small value, such as 1.0E-08. // // The value is a double that ranges from 0 to MAX_DOUBLE. The default is to // not use L2 normalization. This parameter can't be used when L1 is specified. // Use this parameter sparingly. Parameters map[string]*string `type:"map"` // The data recipe for creating the MLModel. You must specify either the recipe // or its URI. If you don't specify a recipe or its URI, Amazon ML creates a // default. Recipe *string `type:"string"` // The Amazon Simple Storage Service (Amazon S3) location and file name that // contains the MLModel recipe. You must specify either the recipe or its URI. // If you don't specify a recipe or its URI, Amazon ML creates a default. RecipeUri *string `type:"string"` // The DataSource that points to the training data. // // TrainingDataSourceId is a required field TrainingDataSourceId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateMLModelInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateMLModelInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateMLModelInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateMLModelInput"} if s.MLModelId == nil { invalidParams.Add(request.NewErrParamRequired("MLModelId")) } if s.MLModelId != nil && len(*s.MLModelId) < 1 { invalidParams.Add(request.NewErrParamMinLen("MLModelId", 1)) } if s.MLModelType == nil { invalidParams.Add(request.NewErrParamRequired("MLModelType")) } if s.TrainingDataSourceId == nil { invalidParams.Add(request.NewErrParamRequired("TrainingDataSourceId")) } if s.TrainingDataSourceId != nil && len(*s.TrainingDataSourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("TrainingDataSourceId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a CreateMLModel operation, and is an acknowledgement // that Amazon ML received the request. // // The CreateMLModel operation is asynchronous. You can poll for status updates // by using the GetMLModel operation and checking the Status parameter. type CreateMLModelOutput struct { _ struct{} `type:"structure"` // A user-supplied ID that uniquely identifies the MLModel. This value should // be identical to the value of the MLModelId in the request. MLModelId *string `min:"1" type:"string"` } // String returns the string representation func (s CreateMLModelOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateMLModelOutput) GoString() string { return s.String() } type CreateRealtimeEndpointInput struct { _ struct{} `type:"structure"` // The ID assigned to the MLModel during creation. // // MLModelId is a required field MLModelId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateRealtimeEndpointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRealtimeEndpointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateRealtimeEndpointInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateRealtimeEndpointInput"} if s.MLModelId == nil { invalidParams.Add(request.NewErrParamRequired("MLModelId")) } if s.MLModelId != nil && len(*s.MLModelId) < 1 { invalidParams.Add(request.NewErrParamMinLen("MLModelId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of an CreateRealtimeEndpoint operation. // // The result contains the MLModelId and the endpoint information for the MLModel. // // The endpoint information includes the URI of the MLModel; that is, the location // to send online prediction requests for the specified MLModel. type CreateRealtimeEndpointOutput struct { _ struct{} `type:"structure"` // A user-supplied ID that uniquely identifies the MLModel. This value should // be identical to the value of the MLModelId in the request. MLModelId *string `min:"1" type:"string"` // The endpoint information of the MLModel RealtimeEndpointInfo *RealtimeEndpointInfo `type:"structure"` } // String returns the string representation func (s CreateRealtimeEndpointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRealtimeEndpointOutput) GoString() string { return s.String() } // Represents the output of the GetDataSource operation. // // The content consists of the detailed metadata and data file information and // the current status of the DataSource. type DataSource struct { _ struct{} `type:"structure"` // The parameter is true if statistics need to be generated from the observation // data. ComputeStatistics *bool `type:"boolean"` // Long integer type that is a 64-bit signed number. ComputeTime *int64 `type:"long"` // The time that the DataSource was created. The time is expressed in epoch // time. CreatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The AWS user account from which the DataSource was created. The account type // can be either an AWS root account or an AWS Identity and Access Management // (IAM) user account. CreatedByIamUser *string `type:"string"` // The location and name of the data in Amazon Simple Storage Service (Amazon // S3) that is used by a DataSource. DataLocationS3 *string `type:"string"` // A JSON string that represents the splitting and rearrangement requirement // used when this DataSource was created. DataRearrangement *string `type:"string"` // The total number of observations contained in the data files that the DataSource // references. DataSizeInBytes *int64 `type:"long"` // The ID that is assigned to the DataSource during creation. DataSourceId *string `min:"1" type:"string"` // A timestamp represented in epoch time. FinishedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The time of the most recent edit to the BatchPrediction. The time is expressed // in epoch time. LastUpdatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // A description of the most recent details about creating the DataSource. Message *string `type:"string"` // A user-supplied name or description of the DataSource. Name *string `type:"string"` // The number of data files referenced by the DataSource. NumberOfFiles *int64 `type:"long"` // The datasource details that are specific to Amazon RDS. RDSMetadata *RDSMetadata `type:"structure"` // Describes the DataSource details specific to Amazon Redshift. RedshiftMetadata *RedshiftMetadata `type:"structure"` // The Amazon Resource Name (ARN) of an AWS IAM Role (http://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html#roles-about-termsandconcepts), // such as the following: arn:aws:iam::account:role/rolename. RoleARN *string `min:"1" type:"string"` // A timestamp represented in epoch time. StartedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The current status of the DataSource. This element can have one of the following // values: // // * PENDING - Amazon Machine Learning (Amazon ML) submitted a request to // create a DataSource. // * INPROGRESS - The creation process is underway. // * FAILED - The request to create a DataSource did not run to completion. // It is not usable. // * COMPLETED - The creation process completed successfully. // * DELETED - The DataSource is marked as deleted. It is not usable. Status *string `type:"string" enum:"EntityStatus"` } // String returns the string representation func (s DataSource) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DataSource) GoString() string { return s.String() } type DeleteBatchPredictionInput struct { _ struct{} `type:"structure"` // A user-supplied ID that uniquely identifies the BatchPrediction. // // BatchPredictionId is a required field BatchPredictionId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteBatchPredictionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBatchPredictionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteBatchPredictionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteBatchPredictionInput"} if s.BatchPredictionId == nil { invalidParams.Add(request.NewErrParamRequired("BatchPredictionId")) } if s.BatchPredictionId != nil && len(*s.BatchPredictionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("BatchPredictionId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a DeleteBatchPrediction operation. // // You can use the GetBatchPrediction operation and check the value of the Status // parameter to see whether a BatchPrediction is marked as DELETED. type DeleteBatchPredictionOutput struct { _ struct{} `type:"structure"` // A user-supplied ID that uniquely identifies the BatchPrediction. This value // should be identical to the value of the BatchPredictionID in the request. BatchPredictionId *string `min:"1" type:"string"` } // String returns the string representation func (s DeleteBatchPredictionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBatchPredictionOutput) GoString() string { return s.String() } type DeleteDataSourceInput struct { _ struct{} `type:"structure"` // A user-supplied ID that uniquely identifies the DataSource. // // DataSourceId is a required field DataSourceId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteDataSourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDataSourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDataSourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDataSourceInput"} if s.DataSourceId == nil { invalidParams.Add(request.NewErrParamRequired("DataSourceId")) } if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a DeleteDataSource operation. type DeleteDataSourceOutput struct { _ struct{} `type:"structure"` // A user-supplied ID that uniquely identifies the DataSource. This value should // be identical to the value of the DataSourceID in the request. DataSourceId *string `min:"1" type:"string"` } // String returns the string representation func (s DeleteDataSourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDataSourceOutput) GoString() string { return s.String() } type DeleteEvaluationInput struct { _ struct{} `type:"structure"` // A user-supplied ID that uniquely identifies the Evaluation to delete. // // EvaluationId is a required field EvaluationId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteEvaluationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteEvaluationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteEvaluationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteEvaluationInput"} if s.EvaluationId == nil { invalidParams.Add(request.NewErrParamRequired("EvaluationId")) } if s.EvaluationId != nil && len(*s.EvaluationId) < 1 { invalidParams.Add(request.NewErrParamMinLen("EvaluationId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a DeleteEvaluation operation. The output indicates // that Amazon Machine Learning (Amazon ML) received the request. // // You can use the GetEvaluation operation and check the value of the Status // parameter to see whether an Evaluation is marked as DELETED. type DeleteEvaluationOutput struct { _ struct{} `type:"structure"` // A user-supplied ID that uniquely identifies the Evaluation. This value should // be identical to the value of the EvaluationId in the request. EvaluationId *string `min:"1" type:"string"` } // String returns the string representation func (s DeleteEvaluationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteEvaluationOutput) GoString() string { return s.String() } type DeleteMLModelInput struct { _ struct{} `type:"structure"` // A user-supplied ID that uniquely identifies the MLModel. // // MLModelId is a required field MLModelId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteMLModelInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteMLModelInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteMLModelInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteMLModelInput"} if s.MLModelId == nil { invalidParams.Add(request.NewErrParamRequired("MLModelId")) } if s.MLModelId != nil && len(*s.MLModelId) < 1 { invalidParams.Add(request.NewErrParamMinLen("MLModelId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a DeleteMLModel operation. // // You can use the GetMLModel operation and check the value of the Status parameter // to see whether an MLModel is marked as DELETED. type DeleteMLModelOutput struct { _ struct{} `type:"structure"` // A user-supplied ID that uniquely identifies the MLModel. This value should // be identical to the value of the MLModelID in the request. MLModelId *string `min:"1" type:"string"` } // String returns the string representation func (s DeleteMLModelOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteMLModelOutput) GoString() string { return s.String() } type DeleteRealtimeEndpointInput struct { _ struct{} `type:"structure"` // The ID assigned to the MLModel during creation. // // MLModelId is a required field MLModelId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteRealtimeEndpointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRealtimeEndpointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteRealtimeEndpointInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteRealtimeEndpointInput"} if s.MLModelId == nil { invalidParams.Add(request.NewErrParamRequired("MLModelId")) } if s.MLModelId != nil && len(*s.MLModelId) < 1 { invalidParams.Add(request.NewErrParamMinLen("MLModelId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of an DeleteRealtimeEndpoint operation. // // The result contains the MLModelId and the endpoint information for the MLModel. type DeleteRealtimeEndpointOutput struct { _ struct{} `type:"structure"` // A user-supplied ID that uniquely identifies the MLModel. This value should // be identical to the value of the MLModelId in the request. MLModelId *string `min:"1" type:"string"` // The endpoint information of the MLModel RealtimeEndpointInfo *RealtimeEndpointInfo `type:"structure"` } // String returns the string representation func (s DeleteRealtimeEndpointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRealtimeEndpointOutput) GoString() string { return s.String() } type DeleteTagsInput struct { _ struct{} `type:"structure"` // The ID of the tagged ML object. For example, exampleModelId. // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` // The type of the tagged ML object. // // ResourceType is a required field ResourceType *string `type:"string" required:"true" enum:"TaggableResourceType"` // One or more tags to delete. // // TagKeys is a required field TagKeys []*string `type:"list" required:"true"` } // String returns the string representation func (s DeleteTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTagsInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceId != nil && len(*s.ResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) } if s.ResourceType == nil { invalidParams.Add(request.NewErrParamRequired("ResourceType")) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Amazon ML returns the following elements. type DeleteTagsOutput struct { _ struct{} `type:"structure"` // The ID of the ML object from which tags were deleted. ResourceId *string `min:"1" type:"string"` // The type of the ML object from which tags were deleted. ResourceType *string `type:"string" enum:"TaggableResourceType"` } // String returns the string representation func (s DeleteTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTagsOutput) GoString() string { return s.String() } type DescribeBatchPredictionsInput struct { _ struct{} `type:"structure"` // The equal to operator. The BatchPrediction results will have FilterVariable // values that exactly match the value specified with EQ. EQ *string `type:"string"` // Use one of the following variables to filter a list of BatchPrediction: // // * CreatedAt - Sets the search criteria to the BatchPrediction creation // date. // * Status - Sets the search criteria to the BatchPrediction status. // * Name - Sets the search criteria to the contents of the BatchPredictionName. // // * IAMUser - Sets the search criteria to the user account that invoked // the BatchPrediction creation. // * MLModelId - Sets the search criteria to the MLModel used in the BatchPrediction. // // * DataSourceId - Sets the search criteria to the DataSource used in the // BatchPrediction. // * DataURI - Sets the search criteria to the data file(s) used in the BatchPrediction. // The URL can identify either a file or an Amazon Simple Storage Solution // (Amazon S3) bucket or directory. FilterVariable *string `type:"string" enum:"BatchPredictionFilterVariable"` // The greater than or equal to operator. The BatchPrediction results will have // FilterVariable values that are greater than or equal to the value specified // with GE. GE *string `type:"string"` // The greater than operator. The BatchPrediction results will have FilterVariable // values that are greater than the value specified with GT. GT *string `type:"string"` // The less than or equal to operator. The BatchPrediction results will have // FilterVariable values that are less than or equal to the value specified // with LE. LE *string `type:"string"` // The less than operator. The BatchPrediction results will have FilterVariable // values that are less than the value specified with LT. LT *string `type:"string"` // The number of pages of information to include in the result. The range of // acceptable values is 1 through 100. The default value is 100. Limit *int64 `min:"1" type:"integer"` // The not equal to operator. The BatchPrediction results will have FilterVariable // values not equal to the value specified with NE. NE *string `type:"string"` // An ID of the page in the paginated results. NextToken *string `type:"string"` // A string that is found at the beginning of a variable, such as Name or Id. // // For example, a Batch Prediction operation could have the Name2014-09-09-HolidayGiftMailer. // To search for this BatchPrediction, select Name for the FilterVariable and // any of the following strings for the Prefix: // // * 2014-09 // // * 2014-09-09 // // * 2014-09-09-Holiday Prefix *string `type:"string"` // A two-value parameter that determines the sequence of the resulting list // of MLModels. // // * asc - Arranges the list in ascending order (A-Z, 0-9). // * dsc - Arranges the list in descending order (Z-A, 9-0). // Results are sorted by FilterVariable. SortOrder *string `type:"string" enum:"SortOrder"` } // String returns the string representation func (s DescribeBatchPredictionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeBatchPredictionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeBatchPredictionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeBatchPredictionsInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a DescribeBatchPredictions operation. The content // is essentially a list of BatchPredictions. type DescribeBatchPredictionsOutput struct { _ struct{} `type:"structure"` // The ID of the next page in the paginated results that indicates at least // one more page follows. NextToken *string `type:"string"` // A list of BatchPrediction objects that meet the search criteria. Results []*BatchPrediction `type:"list"` } // String returns the string representation func (s DescribeBatchPredictionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeBatchPredictionsOutput) GoString() string { return s.String() } type DescribeDataSourcesInput struct { _ struct{} `type:"structure"` // The equal to operator. The DataSource results will have FilterVariable values // that exactly match the value specified with EQ. EQ *string `type:"string"` // Use one of the following variables to filter a list of DataSource: // // * CreatedAt - Sets the search criteria to DataSource creation dates. // * Status - Sets the search criteria to DataSource statuses. // * Name - Sets the search criteria to the contents of DataSourceName. // * DataUri - Sets the search criteria to the URI of data files used to // create the DataSource. The URI can identify either a file or an Amazon // Simple Storage Service (Amazon S3) bucket or directory. // * IAMUser - Sets the search criteria to the user account that invoked // the DataSource creation. FilterVariable *string `type:"string" enum:"DataSourceFilterVariable"` // The greater than or equal to operator. The DataSource results will have FilterVariable // values that are greater than or equal to the value specified with GE. GE *string `type:"string"` // The greater than operator. The DataSource results will have FilterVariable // values that are greater than the value specified with GT. GT *string `type:"string"` // The less than or equal to operator. The DataSource results will have FilterVariable // values that are less than or equal to the value specified with LE. LE *string `type:"string"` // The less than operator. The DataSource results will have FilterVariable values // that are less than the value specified with LT. LT *string `type:"string"` // The maximum number of DataSource to include in the result. Limit *int64 `min:"1" type:"integer"` // The not equal to operator. The DataSource results will have FilterVariable // values not equal to the value specified with NE. NE *string `type:"string"` // The ID of the page in the paginated results. NextToken *string `type:"string"` // A string that is found at the beginning of a variable, such as Name or Id. // // For example, a DataSource could have the Name2014-09-09-HolidayGiftMailer. // To search for this DataSource, select Name for the FilterVariable and any // of the following strings for the Prefix: // // * 2014-09 // // * 2014-09-09 // // * 2014-09-09-Holiday Prefix *string `type:"string"` // A two-value parameter that determines the sequence of the resulting list // of DataSource. // // * asc - Arranges the list in ascending order (A-Z, 0-9). // * dsc - Arranges the list in descending order (Z-A, 9-0). // Results are sorted by FilterVariable. SortOrder *string `type:"string" enum:"SortOrder"` } // String returns the string representation func (s DescribeDataSourcesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDataSourcesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDataSourcesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDataSourcesInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the query results from a DescribeDataSources operation. The content // is essentially a list of DataSource. type DescribeDataSourcesOutput struct { _ struct{} `type:"structure"` // An ID of the next page in the paginated results that indicates at least one // more page follows. NextToken *string `type:"string"` // A list of DataSource that meet the search criteria. Results []*DataSource `type:"list"` } // String returns the string representation func (s DescribeDataSourcesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDataSourcesOutput) GoString() string { return s.String() } type DescribeEvaluationsInput struct { _ struct{} `type:"structure"` // The equal to operator. The Evaluation results will have FilterVariable values // that exactly match the value specified with EQ. EQ *string `type:"string"` // Use one of the following variable to filter a list of Evaluation objects: // // * CreatedAt - Sets the search criteria to the Evaluation creation date. // // * Status - Sets the search criteria to the Evaluation status. // * Name - Sets the search criteria to the contents of EvaluationName. // * IAMUser - Sets the search criteria to the user account that invoked // an Evaluation. // * MLModelId - Sets the search criteria to the MLModel that was evaluated. // // * DataSourceId - Sets the search criteria to the DataSource used in Evaluation. // // * DataUri - Sets the search criteria to the data file(s) used in Evaluation. // The URL can identify either a file or an Amazon Simple Storage Solution // (Amazon S3) bucket or directory. FilterVariable *string `type:"string" enum:"EvaluationFilterVariable"` // The greater than or equal to operator. The Evaluation results will have FilterVariable // values that are greater than or equal to the value specified with GE. GE *string `type:"string"` // The greater than operator. The Evaluation results will have FilterVariable // values that are greater than the value specified with GT. GT *string `type:"string"` // The less than or equal to operator. The Evaluation results will have FilterVariable // values that are less than or equal to the value specified with LE. LE *string `type:"string"` // The less than operator. The Evaluation results will have FilterVariable values // that are less than the value specified with LT. LT *string `type:"string"` // The maximum number of Evaluation to include in the result. Limit *int64 `min:"1" type:"integer"` // The not equal to operator. The Evaluation results will have FilterVariable // values not equal to the value specified with NE. NE *string `type:"string"` // The ID of the page in the paginated results. NextToken *string `type:"string"` // A string that is found at the beginning of a variable, such as Name or Id. // // For example, an Evaluation could have the Name2014-09-09-HolidayGiftMailer. // To search for this Evaluation, select Name for the FilterVariable and any // of the following strings for the Prefix: // // * 2014-09 // // * 2014-09-09 // // * 2014-09-09-Holiday Prefix *string `type:"string"` // A two-value parameter that determines the sequence of the resulting list // of Evaluation. // // * asc - Arranges the list in ascending order (A-Z, 0-9). // * dsc - Arranges the list in descending order (Z-A, 9-0). // Results are sorted by FilterVariable. SortOrder *string `type:"string" enum:"SortOrder"` } // String returns the string representation func (s DescribeEvaluationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEvaluationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeEvaluationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeEvaluationsInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the query results from a DescribeEvaluations operation. The content // is essentially a list of Evaluation. type DescribeEvaluationsOutput struct { _ struct{} `type:"structure"` // The ID of the next page in the paginated results that indicates at least // one more page follows. NextToken *string `type:"string"` // A list of Evaluation that meet the search criteria. Results []*Evaluation `type:"list"` } // String returns the string representation func (s DescribeEvaluationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEvaluationsOutput) GoString() string { return s.String() } type DescribeMLModelsInput struct { _ struct{} `type:"structure"` // The equal to operator. The MLModel results will have FilterVariable values // that exactly match the value specified with EQ. EQ *string `type:"string"` // Use one of the following variables to filter a list of MLModel: // // * CreatedAt - Sets the search criteria to MLModel creation date. // * Status - Sets the search criteria to MLModel status. // * Name - Sets the search criteria to the contents of MLModelName. // * IAMUser - Sets the search criteria to the user account that invoked // the MLModel creation. // * TrainingDataSourceId - Sets the search criteria to the DataSource used // to train one or more MLModel. // * RealtimeEndpointStatus - Sets the search criteria to the MLModel real-time // endpoint status. // * MLModelType - Sets the search criteria to MLModel type: binary, regression, // or multi-class. // * Algorithm - Sets the search criteria to the algorithm that the MLModel // uses. // * TrainingDataURI - Sets the search criteria to the data file(s) used // in training a MLModel. The URL can identify either a file or an Amazon // Simple Storage Service (Amazon S3) bucket or directory. FilterVariable *string `type:"string" enum:"MLModelFilterVariable"` // The greater than or equal to operator. The MLModel results will have FilterVariable // values that are greater than or equal to the value specified with GE. GE *string `type:"string"` // The greater than operator. The MLModel results will have FilterVariable values // that are greater than the value specified with GT. GT *string `type:"string"` // The less than or equal to operator. The MLModel results will have FilterVariable // values that are less than or equal to the value specified with LE. LE *string `type:"string"` // The less than operator. The MLModel results will have FilterVariable values // that are less than the value specified with LT. LT *string `type:"string"` // The number of pages of information to include in the result. The range of // acceptable values is 1 through 100. The default value is 100. Limit *int64 `min:"1" type:"integer"` // The not equal to operator. The MLModel results will have FilterVariable values // not equal to the value specified with NE. NE *string `type:"string"` // The ID of the page in the paginated results. NextToken *string `type:"string"` // A string that is found at the beginning of a variable, such as Name or Id. // // For example, an MLModel could have the Name2014-09-09-HolidayGiftMailer. // To search for this MLModel, select Name for the FilterVariable and any of // the following strings for the Prefix: // // * 2014-09 // // * 2014-09-09 // // * 2014-09-09-Holiday Prefix *string `type:"string"` // A two-value parameter that determines the sequence of the resulting list // of MLModel. // // * asc - Arranges the list in ascending order (A-Z, 0-9). // * dsc - Arranges the list in descending order (Z-A, 9-0). // Results are sorted by FilterVariable. SortOrder *string `type:"string" enum:"SortOrder"` } // String returns the string representation func (s DescribeMLModelsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeMLModelsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeMLModelsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeMLModelsInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a DescribeMLModels operation. The content is essentially // a list of MLModel. type DescribeMLModelsOutput struct { _ struct{} `type:"structure"` // The ID of the next page in the paginated results that indicates at least // one more page follows. NextToken *string `type:"string"` // A list of MLModel that meet the search criteria. Results []*MLModel `type:"list"` } // String returns the string representation func (s DescribeMLModelsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeMLModelsOutput) GoString() string { return s.String() } type DescribeTagsInput struct { _ struct{} `type:"structure"` // The ID of the ML object. For example, exampleModelId. // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` // The type of the ML object. // // ResourceType is a required field ResourceType *string `type:"string" required:"true" enum:"TaggableResourceType"` } // String returns the string representation func (s DescribeTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTagsInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceId != nil && len(*s.ResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) } if s.ResourceType == nil { invalidParams.Add(request.NewErrParamRequired("ResourceType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Amazon ML returns the following elements. type DescribeTagsOutput struct { _ struct{} `type:"structure"` // The ID of the tagged ML object. ResourceId *string `min:"1" type:"string"` // The type of the tagged ML object. ResourceType *string `type:"string" enum:"TaggableResourceType"` // A list of tags associated with the ML object. Tags []*Tag `type:"list"` } // String returns the string representation func (s DescribeTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsOutput) GoString() string { return s.String() } // Represents the output of GetEvaluation operation. // // The content consists of the detailed metadata and data file information and // the current status of the Evaluation. type Evaluation struct { _ struct{} `type:"structure"` // Long integer type that is a 64-bit signed number. ComputeTime *int64 `type:"long"` // The time that the Evaluation was created. The time is expressed in epoch // time. CreatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The AWS user account that invoked the evaluation. The account type can be // either an AWS root account or an AWS Identity and Access Management (IAM) // user account. CreatedByIamUser *string `type:"string"` // The ID of the DataSource that is used to evaluate the MLModel. EvaluationDataSourceId *string `min:"1" type:"string"` // The ID that is assigned to the Evaluation at creation. EvaluationId *string `min:"1" type:"string"` // A timestamp represented in epoch time. FinishedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The location and name of the data in Amazon Simple Storage Server (Amazon // S3) that is used in the evaluation. InputDataLocationS3 *string `type:"string"` // The time of the most recent edit to the Evaluation. The time is expressed // in epoch time. LastUpdatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The ID of the MLModel that is the focus of the evaluation. MLModelId *string `min:"1" type:"string"` // A description of the most recent details about evaluating the MLModel. Message *string `type:"string"` // A user-supplied name or description of the Evaluation. Name *string `type:"string"` // Measurements of how well the MLModel performed, using observations referenced // by the DataSource. One of the following metrics is returned, based on the // type of the MLModel: // // * BinaryAUC: A binary MLModel uses the Area Under the Curve (AUC) technique // to measure performance. // // * RegressionRMSE: A regression MLModel uses the Root Mean Square Error // (RMSE) technique to measure performance. RMSE measures the difference // between predicted and actual values for a single variable. // // * MulticlassAvgFScore: A multiclass MLModel uses the F1 score technique // to measure performance. // // For more information about performance metrics, please see the Amazon Machine // Learning Developer Guide (http://docs.aws.amazon.com/machine-learning/latest/dg). PerformanceMetrics *PerformanceMetrics `type:"structure"` // A timestamp represented in epoch time. StartedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The status of the evaluation. This element can have one of the following // values: // // * PENDING - Amazon Machine Learning (Amazon ML) submitted a request to // evaluate an MLModel. // * INPROGRESS - The evaluation is underway. // * FAILED - The request to evaluate an MLModel did not run to completion. // It is not usable. // * COMPLETED - The evaluation process completed successfully. // * DELETED - The Evaluation is marked as deleted. It is not usable. Status *string `type:"string" enum:"EntityStatus"` } // String returns the string representation func (s Evaluation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Evaluation) GoString() string { return s.String() } type GetBatchPredictionInput struct { _ struct{} `type:"structure"` // An ID assigned to the BatchPrediction at creation. // // BatchPredictionId is a required field BatchPredictionId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetBatchPredictionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBatchPredictionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBatchPredictionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBatchPredictionInput"} if s.BatchPredictionId == nil { invalidParams.Add(request.NewErrParamRequired("BatchPredictionId")) } if s.BatchPredictionId != nil && len(*s.BatchPredictionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("BatchPredictionId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a GetBatchPrediction operation and describes a BatchPrediction. type GetBatchPredictionOutput struct { _ struct{} `type:"structure"` // The ID of the DataSource that was used to create the BatchPrediction. BatchPredictionDataSourceId *string `min:"1" type:"string"` // An ID assigned to the BatchPrediction at creation. This value should be identical // to the value of the BatchPredictionID in the request. BatchPredictionId *string `min:"1" type:"string"` // The approximate CPU time in milliseconds that Amazon Machine Learning spent // processing the BatchPrediction, normalized and scaled on computation resources. // ComputeTime is only available if the BatchPrediction is in the COMPLETED // state. ComputeTime *int64 `type:"long"` // The time when the BatchPrediction was created. The time is expressed in epoch // time. CreatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The AWS user account that invoked the BatchPrediction. The account type can // be either an AWS root account or an AWS Identity and Access Management (IAM) // user account. CreatedByIamUser *string `type:"string"` // The epoch time when Amazon Machine Learning marked the BatchPrediction as // COMPLETED or FAILED. FinishedAt is only available when the BatchPrediction // is in the COMPLETED or FAILED state. FinishedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The location of the data file or directory in Amazon Simple Storage Service // (Amazon S3). InputDataLocationS3 *string `type:"string"` // The number of invalid records that Amazon Machine Learning saw while processing // the BatchPrediction. InvalidRecordCount *int64 `type:"long"` // The time of the most recent edit to BatchPrediction. The time is expressed // in epoch time. LastUpdatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // A link to the file that contains logs of the CreateBatchPrediction operation. LogUri *string `type:"string"` // The ID of the MLModel that generated predictions for the BatchPrediction // request. MLModelId *string `min:"1" type:"string"` // A description of the most recent details about processing the batch prediction // request. Message *string `type:"string"` // A user-supplied name or description of the BatchPrediction. Name *string `type:"string"` // The location of an Amazon S3 bucket or directory to receive the operation // results. OutputUri *string `type:"string"` // The epoch time when Amazon Machine Learning marked the BatchPrediction as // INPROGRESS. StartedAt isn't available if the BatchPrediction is in the PENDING // state. StartedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The status of the BatchPrediction, which can be one of the following values: // // * PENDING - Amazon Machine Learning (Amazon ML) submitted a request to // generate batch predictions. // * INPROGRESS - The batch predictions are in progress. // * FAILED - The request to perform a batch prediction did not run to completion. // It is not usable. // * COMPLETED - The batch prediction process completed successfully. // * DELETED - The BatchPrediction is marked as deleted. It is not usable. Status *string `type:"string" enum:"EntityStatus"` // The number of total records that Amazon Machine Learning saw while processing // the BatchPrediction. TotalRecordCount *int64 `type:"long"` } // String returns the string representation func (s GetBatchPredictionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBatchPredictionOutput) GoString() string { return s.String() } type GetDataSourceInput struct { _ struct{} `type:"structure"` // The ID assigned to the DataSource at creation. // // DataSourceId is a required field DataSourceId *string `min:"1" type:"string" required:"true"` // Specifies whether the GetDataSource operation should return DataSourceSchema. // // If true, DataSourceSchema is returned. // // If false, DataSourceSchema is not returned. Verbose *bool `type:"boolean"` } // String returns the string representation func (s GetDataSourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDataSourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDataSourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDataSourceInput"} if s.DataSourceId == nil { invalidParams.Add(request.NewErrParamRequired("DataSourceId")) } if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a GetDataSource operation and describes a DataSource. type GetDataSourceOutput struct { _ struct{} `type:"structure"` // The parameter is true if statistics need to be generated from the observation // data. ComputeStatistics *bool `type:"boolean"` // The approximate CPU time in milliseconds that Amazon Machine Learning spent // processing the DataSource, normalized and scaled on computation resources. // ComputeTime is only available if the DataSource is in the COMPLETED state // and the ComputeStatistics is set to true. ComputeTime *int64 `type:"long"` // The time that the DataSource was created. The time is expressed in epoch // time. CreatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The AWS user account from which the DataSource was created. The account type // can be either an AWS root account or an AWS Identity and Access Management // (IAM) user account. CreatedByIamUser *string `type:"string"` // The location of the data file or directory in Amazon Simple Storage Service // (Amazon S3). DataLocationS3 *string `type:"string"` // A JSON string that represents the splitting and rearrangement requirement // used when this DataSource was created. DataRearrangement *string `type:"string"` // The total size of observations in the data files. DataSizeInBytes *int64 `type:"long"` // The ID assigned to the DataSource at creation. This value should be identical // to the value of the DataSourceId in the request. DataSourceId *string `min:"1" type:"string"` // The schema used by all of the data files of this DataSource. // // NoteThis parameter is provided as part of the verbose format. DataSourceSchema *string `type:"string"` // The epoch time when Amazon Machine Learning marked the DataSource as COMPLETED // or FAILED. FinishedAt is only available when the DataSource is in the COMPLETED // or FAILED state. FinishedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The time of the most recent edit to the DataSource. The time is expressed // in epoch time. LastUpdatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // A link to the file containing logs of CreateDataSourceFrom* operations. LogUri *string `type:"string"` // The user-supplied description of the most recent details about creating the // DataSource. Message *string `type:"string"` // A user-supplied name or description of the DataSource. Name *string `type:"string"` // The number of data files referenced by the DataSource. NumberOfFiles *int64 `type:"long"` // The datasource details that are specific to Amazon RDS. RDSMetadata *RDSMetadata `type:"structure"` // Describes the DataSource details specific to Amazon Redshift. RedshiftMetadata *RedshiftMetadata `type:"structure"` // The Amazon Resource Name (ARN) of an AWS IAM Role (http://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html#roles-about-termsandconcepts), // such as the following: arn:aws:iam::account:role/rolename. RoleARN *string `min:"1" type:"string"` // The epoch time when Amazon Machine Learning marked the DataSource as INPROGRESS. // StartedAt isn't available if the DataSource is in the PENDING state. StartedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The current status of the DataSource. This element can have one of the following // values: // // * PENDING - Amazon ML submitted a request to create a DataSource. // * INPROGRESS - The creation process is underway. // * FAILED - The request to create a DataSource did not run to completion. // It is not usable. // * COMPLETED - The creation process completed successfully. // * DELETED - The DataSource is marked as deleted. It is not usable. Status *string `type:"string" enum:"EntityStatus"` } // String returns the string representation func (s GetDataSourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDataSourceOutput) GoString() string { return s.String() } type GetEvaluationInput struct { _ struct{} `type:"structure"` // The ID of the Evaluation to retrieve. The evaluation of each MLModel is recorded // and cataloged. The ID provides the means to access the information. // // EvaluationId is a required field EvaluationId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetEvaluationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetEvaluationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetEvaluationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetEvaluationInput"} if s.EvaluationId == nil { invalidParams.Add(request.NewErrParamRequired("EvaluationId")) } if s.EvaluationId != nil && len(*s.EvaluationId) < 1 { invalidParams.Add(request.NewErrParamMinLen("EvaluationId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a GetEvaluation operation and describes an Evaluation. type GetEvaluationOutput struct { _ struct{} `type:"structure"` // The approximate CPU time in milliseconds that Amazon Machine Learning spent // processing the Evaluation, normalized and scaled on computation resources. // ComputeTime is only available if the Evaluation is in the COMPLETED state. ComputeTime *int64 `type:"long"` // The time that the Evaluation was created. The time is expressed in epoch // time. CreatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The AWS user account that invoked the evaluation. The account type can be // either an AWS root account or an AWS Identity and Access Management (IAM) // user account. CreatedByIamUser *string `type:"string"` // The DataSource used for this evaluation. EvaluationDataSourceId *string `min:"1" type:"string"` // The evaluation ID which is same as the EvaluationId in the request. EvaluationId *string `min:"1" type:"string"` // The epoch time when Amazon Machine Learning marked the Evaluation as COMPLETED // or FAILED. FinishedAt is only available when the Evaluation is in the COMPLETED // or FAILED state. FinishedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The location of the data file or directory in Amazon Simple Storage Service // (Amazon S3). InputDataLocationS3 *string `type:"string"` // The time of the most recent edit to the Evaluation. The time is expressed // in epoch time. LastUpdatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // A link to the file that contains logs of the CreateEvaluation operation. LogUri *string `type:"string"` // The ID of the MLModel that was the focus of the evaluation. MLModelId *string `min:"1" type:"string"` // A description of the most recent details about evaluating the MLModel. Message *string `type:"string"` // A user-supplied name or description of the Evaluation. Name *string `type:"string"` // Measurements of how well the MLModel performed using observations referenced // by the DataSource. One of the following metric is returned based on the type // of the MLModel: // // * BinaryAUC: A binary MLModel uses the Area Under the Curve (AUC) technique // to measure performance. // // * RegressionRMSE: A regression MLModel uses the Root Mean Square Error // (RMSE) technique to measure performance. RMSE measures the difference // between predicted and actual values for a single variable. // // * MulticlassAvgFScore: A multiclass MLModel uses the F1 score technique // to measure performance. // // For more information about performance metrics, please see the Amazon Machine // Learning Developer Guide (http://docs.aws.amazon.com/machine-learning/latest/dg). PerformanceMetrics *PerformanceMetrics `type:"structure"` // The epoch time when Amazon Machine Learning marked the Evaluation as INPROGRESS. // StartedAt isn't available if the Evaluation is in the PENDING state. StartedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The status of the evaluation. This element can have one of the following // values: // // * PENDING - Amazon Machine Language (Amazon ML) submitted a request to // evaluate an MLModel. // * INPROGRESS - The evaluation is underway. // * FAILED - The request to evaluate an MLModel did not run to completion. // It is not usable. // * COMPLETED - The evaluation process completed successfully. // * DELETED - The Evaluation is marked as deleted. It is not usable. Status *string `type:"string" enum:"EntityStatus"` } // String returns the string representation func (s GetEvaluationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetEvaluationOutput) GoString() string { return s.String() } type GetMLModelInput struct { _ struct{} `type:"structure"` // The ID assigned to the MLModel at creation. // // MLModelId is a required field MLModelId *string `min:"1" type:"string" required:"true"` // Specifies whether the GetMLModel operation should return Recipe. // // If true, Recipe is returned. // // If false, Recipe is not returned. Verbose *bool `type:"boolean"` } // String returns the string representation func (s GetMLModelInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetMLModelInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetMLModelInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetMLModelInput"} if s.MLModelId == nil { invalidParams.Add(request.NewErrParamRequired("MLModelId")) } if s.MLModelId != nil && len(*s.MLModelId) < 1 { invalidParams.Add(request.NewErrParamMinLen("MLModelId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of a GetMLModel operation, and provides detailed information // about a MLModel. type GetMLModelOutput struct { _ struct{} `type:"structure"` // The approximate CPU time in milliseconds that Amazon Machine Learning spent // processing the MLModel, normalized and scaled on computation resources. ComputeTime // is only available if the MLModel is in the COMPLETED state. ComputeTime *int64 `type:"long"` // The time that the MLModel was created. The time is expressed in epoch time. CreatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The AWS user account from which the MLModel was created. The account type // can be either an AWS root account or an AWS Identity and Access Management // (IAM) user account. CreatedByIamUser *string `type:"string"` // The current endpoint of the MLModel EndpointInfo *RealtimeEndpointInfo `type:"structure"` // The epoch time when Amazon Machine Learning marked the MLModel as COMPLETED // or FAILED. FinishedAt is only available when the MLModel is in the COMPLETED // or FAILED state. FinishedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The location of the data file or directory in Amazon Simple Storage Service // (Amazon S3). InputDataLocationS3 *string `type:"string"` // The time of the most recent edit to the MLModel. The time is expressed in // epoch time. LastUpdatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // A link to the file that contains logs of the CreateMLModel operation. LogUri *string `type:"string"` // The MLModel ID, which is same as the MLModelId in the request. MLModelId *string `min:"1" type:"string"` // Identifies the MLModel category. The following are the available types: // // * REGRESSION -- Produces a numeric result. For example, "What price should // a house be listed at?" // * BINARY -- Produces one of two possible results. For example, "Is this // an e-commerce website?" // * MULTICLASS -- Produces one of several possible results. For example, // "Is this a HIGH, LOW or MEDIUM risk trade?" MLModelType *string `type:"string" enum:"MLModelType"` // A description of the most recent details about accessing the MLModel. Message *string `type:"string"` // A user-supplied name or description of the MLModel. Name *string `type:"string"` // The recipe to use when training the MLModel. The Recipe provides detailed // information about the observation data to use during training, and manipulations // to perform on the observation data during training. // // NoteThis parameter is provided as part of the verbose format. Recipe *string `type:"string"` // The schema used by all of the data files referenced by the DataSource. // // NoteThis parameter is provided as part of the verbose format. Schema *string `type:"string"` // The scoring threshold is used in binary classification MLModelmodels. It // marks the boundary between a positive prediction and a negative prediction. // // Output values greater than or equal to the threshold receive a positive result // from the MLModel, such as true. Output values less than the threshold receive // a negative response from the MLModel, such as false. ScoreThreshold *float64 `type:"float"` // The time of the most recent edit to the ScoreThreshold. The time is expressed // in epoch time. ScoreThresholdLastUpdatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // Long integer type that is a 64-bit signed number. SizeInBytes *int64 `type:"long"` // The epoch time when Amazon Machine Learning marked the MLModel as INPROGRESS. // StartedAt isn't available if the MLModel is in the PENDING state. StartedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The current status of the MLModel. This element can have one of the following // values: // // * PENDING - Amazon Machine Learning (Amazon ML) submitted a request to // describe a MLModel. // * INPROGRESS - The request is processing. // * FAILED - The request did not run to completion. The ML model isn't usable. // // * COMPLETED - The request completed successfully. // * DELETED - The MLModel is marked as deleted. It isn't usable. Status *string `type:"string" enum:"EntityStatus"` // The ID of the training DataSource. TrainingDataSourceId *string `min:"1" type:"string"` // A list of the training parameters in the MLModel. The list is implemented // as a map of key-value pairs. // // The following is the current set of training parameters: // // * sgd.maxMLModelSizeInBytes - The maximum allowed size of the model. Depending // on the input data, the size of the model might affect its performance. // // The value is an integer that ranges from 100000 to 2147483648. The default // value is 33554432. // // * sgd.maxPasses - The number of times that the training process traverses // the observations to build the MLModel. The value is an integer that ranges // from 1 to 10000. The default value is 10. // // * sgd.shuffleType - Whether Amazon ML shuffles the training data. Shuffling // data improves a model's ability to find the optimal solution for a variety // of data types. The valid values are auto and none. The default value is // none. We strongly recommend that you shuffle your data. // // * sgd.l1RegularizationAmount - The coefficient regularization L1 norm. // It controls overfitting the data by penalizing large coefficients. This // tends to drive coefficients to zero, resulting in a sparse feature set. // If you use this parameter, start by specifying a small value, such as // 1.0E-08. // // The value is a double that ranges from 0 to MAX_DOUBLE. The default is to // not use L1 normalization. This parameter can't be used when L2 is specified. // Use this parameter sparingly. // // * sgd.l2RegularizationAmount - The coefficient regularization L2 norm. // It controls overfitting the data by penalizing large coefficients. This // tends to drive coefficients to small, nonzero values. If you use this // parameter, start by specifying a small value, such as 1.0E-08. // // The value is a double that ranges from 0 to MAX_DOUBLE. The default is to // not use L2 normalization. This parameter can't be used when L1 is specified. // Use this parameter sparingly. TrainingParameters map[string]*string `type:"map"` } // String returns the string representation func (s GetMLModelOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetMLModelOutput) GoString() string { return s.String() } // Represents the output of a GetMLModel operation. // // The content consists of the detailed metadata and the current status of the // MLModel. type MLModel struct { _ struct{} `type:"structure"` // The algorithm used to train the MLModel. The following algorithm is supported: // // * SGD -- Stochastic gradient descent. The goal of SGD is to minimize the // gradient of the loss function. Algorithm *string `type:"string" enum:"Algorithm"` // Long integer type that is a 64-bit signed number. ComputeTime *int64 `type:"long"` // The time that the MLModel was created. The time is expressed in epoch time. CreatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The AWS user account from which the MLModel was created. The account type // can be either an AWS root account or an AWS Identity and Access Management // (IAM) user account. CreatedByIamUser *string `type:"string"` // The current endpoint of the MLModel. EndpointInfo *RealtimeEndpointInfo `type:"structure"` // A timestamp represented in epoch time. FinishedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The location of the data file or directory in Amazon Simple Storage Service // (Amazon S3). InputDataLocationS3 *string `type:"string"` // The time of the most recent edit to the MLModel. The time is expressed in // epoch time. LastUpdatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The ID assigned to the MLModel at creation. MLModelId *string `min:"1" type:"string"` // Identifies the MLModel category. The following are the available types: // // * REGRESSION - Produces a numeric result. For example, "What price should // a house be listed at?" // * BINARY - Produces one of two possible results. For example, "Is this // a child-friendly web site?". // * MULTICLASS - Produces one of several possible results. For example, // "Is this a HIGH-, LOW-, or MEDIUM-risk trade?". MLModelType *string `type:"string" enum:"MLModelType"` // A description of the most recent details about accessing the MLModel. Message *string `type:"string"` // A user-supplied name or description of the MLModel. Name *string `type:"string"` ScoreThreshold *float64 `type:"float"` // The time of the most recent edit to the ScoreThreshold. The time is expressed // in epoch time. ScoreThresholdLastUpdatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // Long integer type that is a 64-bit signed number. SizeInBytes *int64 `type:"long"` // A timestamp represented in epoch time. StartedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The current status of an MLModel. This element can have one of the following // values: // // * PENDING - Amazon Machine Learning (Amazon ML) submitted a request to // create an MLModel. // * INPROGRESS - The creation process is underway. // * FAILED - The request to create an MLModel didn't run to completion. // The model isn't usable. // * COMPLETED - The creation process completed successfully. // * DELETED - The MLModel is marked as deleted. It isn't usable. Status *string `type:"string" enum:"EntityStatus"` // The ID of the training DataSource. The CreateMLModel operation uses the TrainingDataSourceId. TrainingDataSourceId *string `min:"1" type:"string"` // A list of the training parameters in the MLModel. The list is implemented // as a map of key-value pairs. // // The following is the current set of training parameters: // // * sgd.maxMLModelSizeInBytes - The maximum allowed size of the model. Depending // on the input data, the size of the model might affect its performance. // // The value is an integer that ranges from 100000 to 2147483648. The default // value is 33554432. // // * sgd.maxPasses - The number of times that the training process traverses // the observations to build the MLModel. The value is an integer that ranges // from 1 to 10000. The default value is 10. // // * sgd.shuffleType - Whether Amazon ML shuffles the training data. Shuffling // the data improves a model's ability to find the optimal solution for a // variety of data types. The valid values are auto and none. The default // value is none. // // * sgd.l1RegularizationAmount - The coefficient regularization L1 norm, // which controls overfitting the data by penalizing large coefficients. // This parameter tends to drive coefficients to zero, resulting in sparse // feature set. If you use this parameter, start by specifying a small value, // such as 1.0E-08. // // The value is a double that ranges from 0 to MAX_DOUBLE. The default is to // not use L1 normalization. This parameter can't be used when L2 is specified. // Use this parameter sparingly. // // * sgd.l2RegularizationAmount - The coefficient regularization L2 norm, // which controls overfitting the data by penalizing large coefficients. // This tends to drive coefficients to small, nonzero values. If you use // this parameter, start by specifying a small value, such as 1.0E-08. // // The value is a double that ranges from 0 to MAX_DOUBLE. The default is to // not use L2 normalization. This parameter can't be used when L1 is specified. // Use this parameter sparingly. TrainingParameters map[string]*string `type:"map"` } // String returns the string representation func (s MLModel) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MLModel) GoString() string { return s.String() } // Measurements of how well the MLModel performed on known observations. One // of the following metrics is returned, based on the type of the MLModel: // // * BinaryAUC: The binary MLModel uses the Area Under the Curve (AUC) technique // to measure performance. // // * RegressionRMSE: The regression MLModel uses the Root Mean Square Error // (RMSE) technique to measure performance. RMSE measures the difference // between predicted and actual values for a single variable. // // * MulticlassAvgFScore: The multiclass MLModel uses the F1 score technique // to measure performance. // // For more information about performance metrics, please see the Amazon Machine // Learning Developer Guide (http://docs.aws.amazon.com/machine-learning/latest/dg). type PerformanceMetrics struct { _ struct{} `type:"structure"` Properties map[string]*string `type:"map"` } // String returns the string representation func (s PerformanceMetrics) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PerformanceMetrics) GoString() string { return s.String() } type PredictInput struct { _ struct{} `type:"structure"` // A unique identifier of the MLModel. // // MLModelId is a required field MLModelId *string `min:"1" type:"string" required:"true"` // PredictEndpoint is a required field PredictEndpoint *string `type:"string" required:"true"` // A map of variable name-value pairs that represent an observation. // // Record is a required field Record map[string]*string `type:"map" required:"true"` } // String returns the string representation func (s PredictInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PredictInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PredictInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PredictInput"} if s.MLModelId == nil { invalidParams.Add(request.NewErrParamRequired("MLModelId")) } if s.MLModelId != nil && len(*s.MLModelId) < 1 { invalidParams.Add(request.NewErrParamMinLen("MLModelId", 1)) } if s.PredictEndpoint == nil { invalidParams.Add(request.NewErrParamRequired("PredictEndpoint")) } if s.Record == nil { invalidParams.Add(request.NewErrParamRequired("Record")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PredictOutput struct { _ struct{} `type:"structure"` // The output from a Predict operation: // // * Details - Contains the following attributes: DetailsAttributes.PREDICTIVE_MODEL_TYPE // - REGRESSION | BINARY | MULTICLASSDetailsAttributes.ALGORITHM - SGD // // * PredictedLabel - Present for either a BINARY or MULTICLASSMLModel request. // // // * PredictedScores - Contains the raw classification score corresponding // to each label. // // * PredictedValue - Present for a REGRESSIONMLModel request. Prediction *Prediction `type:"structure"` } // String returns the string representation func (s PredictOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PredictOutput) GoString() string { return s.String() } // The output from a Predict operation: // // * Details - Contains the following attributes: DetailsAttributes.PREDICTIVE_MODEL_TYPE // - REGRESSION | BINARY | MULTICLASSDetailsAttributes.ALGORITHM - SGD // // * PredictedLabel - Present for either a BINARY or MULTICLASSMLModel request. // // // * PredictedScores - Contains the raw classification score corresponding // to each label. // // * PredictedValue - Present for a REGRESSIONMLModel request. type Prediction struct { _ struct{} `type:"structure"` // Provides any additional details regarding the prediction. Details map[string]*string `locationName:"details" type:"map"` // The prediction label for either a BINARY or MULTICLASSMLModel. PredictedLabel *string `locationName:"predictedLabel" min:"1" type:"string"` // Provides the raw classification score corresponding to each label. PredictedScores map[string]*float64 `locationName:"predictedScores" type:"map"` // The prediction value for REGRESSIONMLModel PredictedValue *float64 `locationName:"predictedValue" type:"float"` } // String returns the string representation func (s Prediction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Prediction) GoString() string { return s.String() } // The data specification of an Amazon Relational Database Service (Amazon RDS) // DataSource. type RDSDataSpec struct { _ struct{} `type:"structure"` // A JSON string that represents the splitting and rearrangement processing // to be applied to a DataSource. If the DataRearrangement parameter is not // provided, all of the input data is used to create the Datasource. // // There are multiple parameters that control what data is used to create a // datasource: // // * percentBegin // // Use percentBegin to indicate the beginning of the range of the data used // to create the Datasource. If you do not include percentBegin and percentEnd, // Amazon ML includes all of the data when creating the datasource. // // * percentEnd // // Use percentEnd to indicate the end of the range of the data used to create // the Datasource. If you do not include percentBegin and percentEnd, Amazon // ML includes all of the data when creating the datasource. // // * complement // // The complement parameter instructs Amazon ML to use the data that is not // included in the range of percentBegin to percentEnd to create a datasource. // The complement parameter is useful if you need to create complementary // datasources for training and evaluation. To create a complementary datasource, // use the same values for percentBegin and percentEnd, along with the complement // parameter. // // For example, the following two datasources do not share any data, and can // be used to train and evaluate a model. The first datasource has 25 percent // of the data, and the second one has 75 percent of the data. // // Datasource for evaluation: {"splitting":{"percentBegin":0, "percentEnd":25}} // // Datasource for training: {"splitting":{"percentBegin":0, "percentEnd":25, // "complement":"true"}} // // * strategy // // To change how Amazon ML splits the data for a datasource, use the strategy // parameter. // // The default value for the strategy parameter is sequential, meaning that // Amazon ML takes all of the data records between the percentBegin and percentEnd // parameters for the datasource, in the order that the records appear in // the input data. // // The following two DataRearrangement lines are examples of sequentially ordered // training and evaluation datasources: // // Datasource for evaluation: {"splitting":{"percentBegin":70, "percentEnd":100, // "strategy":"sequential"}} // // Datasource for training: {"splitting":{"percentBegin":70, "percentEnd":100, // "strategy":"sequential", "complement":"true"}} // // To randomly split the input data into the proportions indicated by the percentBegin // and percentEnd parameters, set the strategy parameter to random and provide // a string that is used as the seed value for the random data splitting // (for example, you can use the S3 path to your data as the random seed // string). If you choose the random split strategy, Amazon ML assigns each // row of data a pseudo-random number between 0 and 100, and then selects // the rows that have an assigned number between percentBegin and percentEnd. // Pseudo-random numbers are assigned using both the input seed string value // and the byte offset as a seed, so changing the data results in a different // split. Any existing ordering is preserved. The random splitting strategy // ensures that variables in the training and evaluation data are distributed // similarly. It is useful in the cases where the input data may have an // implicit sort order, which would otherwise result in training and evaluation // datasources containing non-similar data records. // // The following two DataRearrangement lines are examples of non-sequentially // ordered training and evaluation datasources: // // Datasource for evaluation: {"splitting":{"percentBegin":70, "percentEnd":100, // "strategy":"random", "randomSeed"="s3://my_s3_path/bucket/file.csv"}} // // Datasource for training: {"splitting":{"percentBegin":70, "percentEnd":100, // "strategy":"random", "randomSeed"="s3://my_s3_path/bucket/file.csv", "complement":"true"}} DataRearrangement *string `type:"string"` // A JSON string that represents the schema for an Amazon RDS DataSource. The // DataSchema defines the structure of the observation data in the data file(s) // referenced in the DataSource. // // A DataSchema is not required if you specify a DataSchemaUri // // Define your DataSchema as a series of key-value pairs. attributes and excludedVariableNames // have an array of key-value pairs for their value. Use the following format // to define your DataSchema. // // { "version": "1.0", // // "recordAnnotationFieldName": "F1", // // "recordWeightFieldName": "F2", // // "targetFieldName": "F3", // // "dataFormat": "CSV", // // "dataFileContainsHeader": true, // // "attributes": [ // // { "fieldName": "F1", "fieldType": "TEXT" }, { "fieldName": "F2", "fieldType": // "NUMERIC" }, { "fieldName": "F3", "fieldType": "CATEGORICAL" }, { "fieldName": // "F4", "fieldType": "NUMERIC" }, { "fieldName": "F5", "fieldType": "CATEGORICAL" // }, { "fieldName": "F6", "fieldType": "TEXT" }, { "fieldName": "F7", "fieldType": // "WEIGHTED_INT_SEQUENCE" }, { "fieldName": "F8", "fieldType": "WEIGHTED_STRING_SEQUENCE" // } ], // // "excludedVariableNames": [ "F6" ] } DataSchema *string `type:"string"` // The Amazon S3 location of the DataSchema. DataSchemaUri *string `type:"string"` // The AWS Identity and Access Management (IAM) credentials that are used connect // to the Amazon RDS database. // // DatabaseCredentials is a required field DatabaseCredentials *RDSDatabaseCredentials `type:"structure" required:"true"` // Describes the DatabaseName and InstanceIdentifier of an Amazon RDS database. // // DatabaseInformation is a required field DatabaseInformation *RDSDatabase `type:"structure" required:"true"` // The role (DataPipelineDefaultResourceRole) assumed by an Amazon Elastic Compute // Cloud (Amazon EC2) instance to carry out the copy operation from Amazon RDS // to an Amazon S3 task. For more information, see Role templates (http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-iam-roles.html) // for data pipelines. // // ResourceRole is a required field ResourceRole *string `min:"1" type:"string" required:"true"` // The Amazon S3 location for staging Amazon RDS data. The data retrieved from // Amazon RDS using SelectSqlQuery is stored in this location. // // S3StagingLocation is a required field S3StagingLocation *string `type:"string" required:"true"` // The security group IDs to be used to access a VPC-based RDS DB instance. // Ensure that there are appropriate ingress rules set up to allow access to // the RDS DB instance. This attribute is used by Data Pipeline to carry out // the copy operation from Amazon RDS to an Amazon S3 task. // // SecurityGroupIds is a required field SecurityGroupIds []*string `type:"list" required:"true"` // The query that is used to retrieve the observation data for the DataSource. // // SelectSqlQuery is a required field SelectSqlQuery *string `min:"1" type:"string" required:"true"` // The role (DataPipelineDefaultRole) assumed by AWS Data Pipeline service to // monitor the progress of the copy task from Amazon RDS to Amazon S3. For more // information, see Role templates (http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-iam-roles.html) // for data pipelines. // // ServiceRole is a required field ServiceRole *string `min:"1" type:"string" required:"true"` // The subnet ID to be used to access a VPC-based RDS DB instance. This attribute // is used by Data Pipeline to carry out the copy task from Amazon RDS to Amazon // S3. // // SubnetId is a required field SubnetId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s RDSDataSpec) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RDSDataSpec) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RDSDataSpec) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RDSDataSpec"} if s.DatabaseCredentials == nil { invalidParams.Add(request.NewErrParamRequired("DatabaseCredentials")) } if s.DatabaseInformation == nil { invalidParams.Add(request.NewErrParamRequired("DatabaseInformation")) } if s.ResourceRole == nil { invalidParams.Add(request.NewErrParamRequired("ResourceRole")) } if s.ResourceRole != nil && len(*s.ResourceRole) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceRole", 1)) } if s.S3StagingLocation == nil { invalidParams.Add(request.NewErrParamRequired("S3StagingLocation")) } if s.SecurityGroupIds == nil { invalidParams.Add(request.NewErrParamRequired("SecurityGroupIds")) } if s.SelectSqlQuery == nil { invalidParams.Add(request.NewErrParamRequired("SelectSqlQuery")) } if s.SelectSqlQuery != nil && len(*s.SelectSqlQuery) < 1 { invalidParams.Add(request.NewErrParamMinLen("SelectSqlQuery", 1)) } if s.ServiceRole == nil { invalidParams.Add(request.NewErrParamRequired("ServiceRole")) } if s.ServiceRole != nil && len(*s.ServiceRole) < 1 { invalidParams.Add(request.NewErrParamMinLen("ServiceRole", 1)) } if s.SubnetId == nil { invalidParams.Add(request.NewErrParamRequired("SubnetId")) } if s.SubnetId != nil && len(*s.SubnetId) < 1 { invalidParams.Add(request.NewErrParamMinLen("SubnetId", 1)) } if s.DatabaseCredentials != nil { if err := s.DatabaseCredentials.Validate(); err != nil { invalidParams.AddNested("DatabaseCredentials", err.(request.ErrInvalidParams)) } } if s.DatabaseInformation != nil { if err := s.DatabaseInformation.Validate(); err != nil { invalidParams.AddNested("DatabaseInformation", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The database details of an Amazon RDS database. type RDSDatabase struct { _ struct{} `type:"structure"` // The name of a database hosted on an RDS DB instance. // // DatabaseName is a required field DatabaseName *string `min:"1" type:"string" required:"true"` // The ID of an RDS DB instance. // // InstanceIdentifier is a required field InstanceIdentifier *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s RDSDatabase) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RDSDatabase) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RDSDatabase) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RDSDatabase"} if s.DatabaseName == nil { invalidParams.Add(request.NewErrParamRequired("DatabaseName")) } if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DatabaseName", 1)) } if s.InstanceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("InstanceIdentifier")) } if s.InstanceIdentifier != nil && len(*s.InstanceIdentifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceIdentifier", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The database credentials to connect to a database on an RDS DB instance. type RDSDatabaseCredentials struct { _ struct{} `type:"structure"` // The password to be used by Amazon ML to connect to a database on an RDS DB // instance. The password should have sufficient permissions to execute the // RDSSelectQuery query. // // Password is a required field Password *string `min:"8" type:"string" required:"true"` // The username to be used by Amazon ML to connect to database on an Amazon // RDS instance. The username should have sufficient permissions to execute // an RDSSelectSqlQuery query. // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s RDSDatabaseCredentials) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RDSDatabaseCredentials) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RDSDatabaseCredentials) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RDSDatabaseCredentials"} if s.Password == nil { invalidParams.Add(request.NewErrParamRequired("Password")) } if s.Password != nil && len(*s.Password) < 8 { invalidParams.Add(request.NewErrParamMinLen("Password", 8)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The datasource details that are specific to Amazon RDS. type RDSMetadata struct { _ struct{} `type:"structure"` // The ID of the Data Pipeline instance that is used to carry to copy data from // Amazon RDS to Amazon S3. You can use the ID to find details about the instance // in the Data Pipeline console. DataPipelineId *string `min:"1" type:"string"` // The database details required to connect to an Amazon RDS. Database *RDSDatabase `type:"structure"` // The username to be used by Amazon ML to connect to database on an Amazon // RDS instance. The username should have sufficient permissions to execute // an RDSSelectSqlQuery query. DatabaseUserName *string `min:"1" type:"string"` // The role (DataPipelineDefaultResourceRole) assumed by an Amazon EC2 instance // to carry out the copy task from Amazon RDS to Amazon S3. For more information, // see Role templates (http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-iam-roles.html) // for data pipelines. ResourceRole *string `min:"1" type:"string"` // The SQL query that is supplied during CreateDataSourceFromRDS. Returns only // if Verbose is true in GetDataSourceInput. SelectSqlQuery *string `min:"1" type:"string"` // The role (DataPipelineDefaultRole) assumed by the Data Pipeline service to // monitor the progress of the copy task from Amazon RDS to Amazon S3. For more // information, see Role templates (http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-iam-roles.html) // for data pipelines. ServiceRole *string `min:"1" type:"string"` } // String returns the string representation func (s RDSMetadata) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RDSMetadata) GoString() string { return s.String() } // Describes the real-time endpoint information for an MLModel. type RealtimeEndpointInfo struct { _ struct{} `type:"structure"` // The time that the request to create the real-time endpoint for the MLModel // was received. The time is expressed in epoch time. CreatedAt *time.Time `type:"timestamp" timestampFormat:"unix"` // The current status of the real-time endpoint for the MLModel. This element // can have one of the following values: // // * NONE - Endpoint does not exist or was previously deleted. // * READY - Endpoint is ready to be used for real-time predictions. // * UPDATING - Updating/creating the endpoint. EndpointStatus *string `type:"string" enum:"RealtimeEndpointStatus"` // The URI that specifies where to send real-time prediction requests for the // MLModel. // // NoteThe application must wait until the real-time endpoint is ready before // using this URI. EndpointUrl *string `type:"string"` // The maximum processing rate for the real-time endpoint for MLModel, measured // in incoming requests per second. PeakRequestsPerSecond *int64 `type:"integer"` } // String returns the string representation func (s RealtimeEndpointInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RealtimeEndpointInfo) GoString() string { return s.String() } // Describes the data specification of an Amazon Redshift DataSource. type RedshiftDataSpec struct { _ struct{} `type:"structure"` // A JSON string that represents the splitting and rearrangement processing // to be applied to a DataSource. If the DataRearrangement parameter is not // provided, all of the input data is used to create the Datasource. // // There are multiple parameters that control what data is used to create a // datasource: // // * percentBegin // // Use percentBegin to indicate the beginning of the range of the data used // to create the Datasource. If you do not include percentBegin and percentEnd, // Amazon ML includes all of the data when creating the datasource. // // * percentEnd // // Use percentEnd to indicate the end of the range of the data used to create // the Datasource. If you do not include percentBegin and percentEnd, Amazon // ML includes all of the data when creating the datasource. // // * complement // // The complement parameter instructs Amazon ML to use the data that is not // included in the range of percentBegin to percentEnd to create a datasource. // The complement parameter is useful if you need to create complementary // datasources for training and evaluation. To create a complementary datasource, // use the same values for percentBegin and percentEnd, along with the complement // parameter. // // For example, the following two datasources do not share any data, and can // be used to train and evaluate a model. The first datasource has 25 percent // of the data, and the second one has 75 percent of the data. // // Datasource for evaluation: {"splitting":{"percentBegin":0, "percentEnd":25}} // // Datasource for training: {"splitting":{"percentBegin":0, "percentEnd":25, // "complement":"true"}} // // * strategy // // To change how Amazon ML splits the data for a datasource, use the strategy // parameter. // // The default value for the strategy parameter is sequential, meaning that // Amazon ML takes all of the data records between the percentBegin and percentEnd // parameters for the datasource, in the order that the records appear in // the input data. // // The following two DataRearrangement lines are examples of sequentially ordered // training and evaluation datasources: // // Datasource for evaluation: {"splitting":{"percentBegin":70, "percentEnd":100, // "strategy":"sequential"}} // // Datasource for training: {"splitting":{"percentBegin":70, "percentEnd":100, // "strategy":"sequential", "complement":"true"}} // // To randomly split the input data into the proportions indicated by the percentBegin // and percentEnd parameters, set the strategy parameter to random and provide // a string that is used as the seed value for the random data splitting // (for example, you can use the S3 path to your data as the random seed // string). If you choose the random split strategy, Amazon ML assigns each // row of data a pseudo-random number between 0 and 100, and then selects // the rows that have an assigned number between percentBegin and percentEnd. // Pseudo-random numbers are assigned using both the input seed string value // and the byte offset as a seed, so changing the data results in a different // split. Any existing ordering is preserved. The random splitting strategy // ensures that variables in the training and evaluation data are distributed // similarly. It is useful in the cases where the input data may have an // implicit sort order, which would otherwise result in training and evaluation // datasources containing non-similar data records. // // The following two DataRearrangement lines are examples of non-sequentially // ordered training and evaluation datasources: // // Datasource for evaluation: {"splitting":{"percentBegin":70, "percentEnd":100, // "strategy":"random", "randomSeed"="s3://my_s3_path/bucket/file.csv"}} // // Datasource for training: {"splitting":{"percentBegin":70, "percentEnd":100, // "strategy":"random", "randomSeed"="s3://my_s3_path/bucket/file.csv", "complement":"true"}} DataRearrangement *string `type:"string"` // A JSON string that represents the schema for an Amazon Redshift DataSource. // The DataSchema defines the structure of the observation data in the data // file(s) referenced in the DataSource. // // A DataSchema is not required if you specify a DataSchemaUri. // // Define your DataSchema as a series of key-value pairs. attributes and excludedVariableNames // have an array of key-value pairs for their value. Use the following format // to define your DataSchema. // // { "version": "1.0", // // "recordAnnotationFieldName": "F1", // // "recordWeightFieldName": "F2", // // "targetFieldName": "F3", // // "dataFormat": "CSV", // // "dataFileContainsHeader": true, // // "attributes": [ // // { "fieldName": "F1", "fieldType": "TEXT" }, { "fieldName": "F2", "fieldType": // "NUMERIC" }, { "fieldName": "F3", "fieldType": "CATEGORICAL" }, { "fieldName": // "F4", "fieldType": "NUMERIC" }, { "fieldName": "F5", "fieldType": "CATEGORICAL" // }, { "fieldName": "F6", "fieldType": "TEXT" }, { "fieldName": "F7", "fieldType": // "WEIGHTED_INT_SEQUENCE" }, { "fieldName": "F8", "fieldType": "WEIGHTED_STRING_SEQUENCE" // } ], // // "excludedVariableNames": [ "F6" ] } DataSchema *string `type:"string"` // Describes the schema location for an Amazon Redshift DataSource. DataSchemaUri *string `type:"string"` // Describes AWS Identity and Access Management (IAM) credentials that are used // connect to the Amazon Redshift database. // // DatabaseCredentials is a required field DatabaseCredentials *RedshiftDatabaseCredentials `type:"structure" required:"true"` // Describes the DatabaseName and ClusterIdentifier for an Amazon Redshift DataSource. // // DatabaseInformation is a required field DatabaseInformation *RedshiftDatabase `type:"structure" required:"true"` // Describes an Amazon S3 location to store the result set of the SelectSqlQuery // query. // // S3StagingLocation is a required field S3StagingLocation *string `type:"string" required:"true"` // Describes the SQL Query to execute on an Amazon Redshift database for an // Amazon Redshift DataSource. // // SelectSqlQuery is a required field SelectSqlQuery *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s RedshiftDataSpec) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RedshiftDataSpec) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RedshiftDataSpec) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RedshiftDataSpec"} if s.DatabaseCredentials == nil { invalidParams.Add(request.NewErrParamRequired("DatabaseCredentials")) } if s.DatabaseInformation == nil { invalidParams.Add(request.NewErrParamRequired("DatabaseInformation")) } if s.S3StagingLocation == nil { invalidParams.Add(request.NewErrParamRequired("S3StagingLocation")) } if s.SelectSqlQuery == nil { invalidParams.Add(request.NewErrParamRequired("SelectSqlQuery")) } if s.SelectSqlQuery != nil && len(*s.SelectSqlQuery) < 1 { invalidParams.Add(request.NewErrParamMinLen("SelectSqlQuery", 1)) } if s.DatabaseCredentials != nil { if err := s.DatabaseCredentials.Validate(); err != nil { invalidParams.AddNested("DatabaseCredentials", err.(request.ErrInvalidParams)) } } if s.DatabaseInformation != nil { if err := s.DatabaseInformation.Validate(); err != nil { invalidParams.AddNested("DatabaseInformation", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the database details required to connect to an Amazon Redshift // database. type RedshiftDatabase struct { _ struct{} `type:"structure"` // The ID of an Amazon Redshift cluster. // // ClusterIdentifier is a required field ClusterIdentifier *string `min:"1" type:"string" required:"true"` // The name of a database hosted on an Amazon Redshift cluster. // // DatabaseName is a required field DatabaseName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s RedshiftDatabase) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RedshiftDatabase) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RedshiftDatabase) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RedshiftDatabase"} if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } if s.ClusterIdentifier != nil && len(*s.ClusterIdentifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClusterIdentifier", 1)) } if s.DatabaseName == nil { invalidParams.Add(request.NewErrParamRequired("DatabaseName")) } if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DatabaseName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the database credentials for connecting to a database on an Amazon // Redshift cluster. type RedshiftDatabaseCredentials struct { _ struct{} `type:"structure"` // A password to be used by Amazon ML to connect to a database on an Amazon // Redshift cluster. The password should have sufficient permissions to execute // a RedshiftSelectSqlQuery query. The password should be valid for an Amazon // Redshift USER (http://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_USER.html). // // Password is a required field Password *string `min:"8" type:"string" required:"true"` // A username to be used by Amazon Machine Learning (Amazon ML)to connect to // a database on an Amazon Redshift cluster. The username should have sufficient // permissions to execute the RedshiftSelectSqlQuery query. The username should // be valid for an Amazon Redshift USER (http://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_USER.html). // // Username is a required field Username *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s RedshiftDatabaseCredentials) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RedshiftDatabaseCredentials) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RedshiftDatabaseCredentials) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RedshiftDatabaseCredentials"} if s.Password == nil { invalidParams.Add(request.NewErrParamRequired("Password")) } if s.Password != nil && len(*s.Password) < 8 { invalidParams.Add(request.NewErrParamMinLen("Password", 8)) } if s.Username == nil { invalidParams.Add(request.NewErrParamRequired("Username")) } if s.Username != nil && len(*s.Username) < 1 { invalidParams.Add(request.NewErrParamMinLen("Username", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the DataSource details specific to Amazon Redshift. type RedshiftMetadata struct { _ struct{} `type:"structure"` // A username to be used by Amazon Machine Learning (Amazon ML)to connect to // a database on an Amazon Redshift cluster. The username should have sufficient // permissions to execute the RedshiftSelectSqlQuery query. The username should // be valid for an Amazon Redshift USER (http://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_USER.html). DatabaseUserName *string `min:"1" type:"string"` // Describes the database details required to connect to an Amazon Redshift // database. RedshiftDatabase *RedshiftDatabase `type:"structure"` // The SQL query that is specified during CreateDataSourceFromRedshift. Returns // only if Verbose is true in GetDataSourceInput. SelectSqlQuery *string `min:"1" type:"string"` } // String returns the string representation func (s RedshiftMetadata) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RedshiftMetadata) GoString() string { return s.String() } // Describes the data specification of a DataSource. type S3DataSpec struct { _ struct{} `type:"structure"` // The location of the data file(s) used by a DataSource. The URI specifies // a data file or an Amazon Simple Storage Service (Amazon S3) directory or // bucket containing data files. // // DataLocationS3 is a required field DataLocationS3 *string `type:"string" required:"true"` // A JSON string that represents the splitting and rearrangement processing // to be applied to a DataSource. If the DataRearrangement parameter is not // provided, all of the input data is used to create the Datasource. // // There are multiple parameters that control what data is used to create a // datasource: // // * percentBegin // // Use percentBegin to indicate the beginning of the range of the data used // to create the Datasource. If you do not include percentBegin and percentEnd, // Amazon ML includes all of the data when creating the datasource. // // * percentEnd // // Use percentEnd to indicate the end of the range of the data used to create // the Datasource. If you do not include percentBegin and percentEnd, Amazon // ML includes all of the data when creating the datasource. // // * complement // // The complement parameter instructs Amazon ML to use the data that is not // included in the range of percentBegin to percentEnd to create a datasource. // The complement parameter is useful if you need to create complementary // datasources for training and evaluation. To create a complementary datasource, // use the same values for percentBegin and percentEnd, along with the complement // parameter. // // For example, the following two datasources do not share any data, and can // be used to train and evaluate a model. The first datasource has 25 percent // of the data, and the second one has 75 percent of the data. // // Datasource for evaluation: {"splitting":{"percentBegin":0, "percentEnd":25}} // // Datasource for training: {"splitting":{"percentBegin":0, "percentEnd":25, // "complement":"true"}} // // * strategy // // To change how Amazon ML splits the data for a datasource, use the strategy // parameter. // // The default value for the strategy parameter is sequential, meaning that // Amazon ML takes all of the data records between the percentBegin and percentEnd // parameters for the datasource, in the order that the records appear in // the input data. // // The following two DataRearrangement lines are examples of sequentially ordered // training and evaluation datasources: // // Datasource for evaluation: {"splitting":{"percentBegin":70, "percentEnd":100, // "strategy":"sequential"}} // // Datasource for training: {"splitting":{"percentBegin":70, "percentEnd":100, // "strategy":"sequential", "complement":"true"}} // // To randomly split the input data into the proportions indicated by the percentBegin // and percentEnd parameters, set the strategy parameter to random and provide // a string that is used as the seed value for the random data splitting // (for example, you can use the S3 path to your data as the random seed // string). If you choose the random split strategy, Amazon ML assigns each // row of data a pseudo-random number between 0 and 100, and then selects // the rows that have an assigned number between percentBegin and percentEnd. // Pseudo-random numbers are assigned using both the input seed string value // and the byte offset as a seed, so changing the data results in a different // split. Any existing ordering is preserved. The random splitting strategy // ensures that variables in the training and evaluation data are distributed // similarly. It is useful in the cases where the input data may have an // implicit sort order, which would otherwise result in training and evaluation // datasources containing non-similar data records. // // The following two DataRearrangement lines are examples of non-sequentially // ordered training and evaluation datasources: // // Datasource for evaluation: {"splitting":{"percentBegin":70, "percentEnd":100, // "strategy":"random", "randomSeed"="s3://my_s3_path/bucket/file.csv"}} // // Datasource for training: {"splitting":{"percentBegin":70, "percentEnd":100, // "strategy":"random", "randomSeed"="s3://my_s3_path/bucket/file.csv", "complement":"true"}} DataRearrangement *string `type:"string"` // A JSON string that represents the schema for an Amazon S3 DataSource. The // DataSchema defines the structure of the observation data in the data file(s) // referenced in the DataSource. // // You must provide either the DataSchema or the DataSchemaLocationS3. // // Define your DataSchema as a series of key-value pairs. attributes and excludedVariableNames // have an array of key-value pairs for their value. Use the following format // to define your DataSchema. // // { "version": "1.0", // // "recordAnnotationFieldName": "F1", // // "recordWeightFieldName": "F2", // // "targetFieldName": "F3", // // "dataFormat": "CSV", // // "dataFileContainsHeader": true, // // "attributes": [ // // { "fieldName": "F1", "fieldType": "TEXT" }, { "fieldName": "F2", "fieldType": // "NUMERIC" }, { "fieldName": "F3", "fieldType": "CATEGORICAL" }, { "fieldName": // "F4", "fieldType": "NUMERIC" }, { "fieldName": "F5", "fieldType": "CATEGORICAL" // }, { "fieldName": "F6", "fieldType": "TEXT" }, { "fieldName": "F7", "fieldType": // "WEIGHTED_INT_SEQUENCE" }, { "fieldName": "F8", "fieldType": "WEIGHTED_STRING_SEQUENCE" // } ], // // "excludedVariableNames": [ "F6" ] } DataSchema *string `type:"string"` // Describes the schema location in Amazon S3. You must provide either the DataSchema // or the DataSchemaLocationS3. DataSchemaLocationS3 *string `type:"string"` } // String returns the string representation func (s S3DataSpec) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s S3DataSpec) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3DataSpec) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3DataSpec"} if s.DataLocationS3 == nil { invalidParams.Add(request.NewErrParamRequired("DataLocationS3")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A custom key-value pair associated with an ML object, such as an ML model. type Tag struct { _ struct{} `type:"structure"` // A unique identifier for the tag. Valid characters include Unicode letters, // digits, white space, _, ., /, =, +, -, %, and @. Key *string `min:"1" type:"string"` // An optional string, typically used to describe or define the tag. Valid characters // include Unicode letters, digits, white space, _, ., /, =, +, -, %, and @. Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateBatchPredictionInput struct { _ struct{} `type:"structure"` // The ID assigned to the BatchPrediction during creation. // // BatchPredictionId is a required field BatchPredictionId *string `min:"1" type:"string" required:"true"` // A new user-supplied name or description of the BatchPrediction. // // BatchPredictionName is a required field BatchPredictionName *string `type:"string" required:"true"` } // String returns the string representation func (s UpdateBatchPredictionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateBatchPredictionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateBatchPredictionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateBatchPredictionInput"} if s.BatchPredictionId == nil { invalidParams.Add(request.NewErrParamRequired("BatchPredictionId")) } if s.BatchPredictionId != nil && len(*s.BatchPredictionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("BatchPredictionId", 1)) } if s.BatchPredictionName == nil { invalidParams.Add(request.NewErrParamRequired("BatchPredictionName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of an UpdateBatchPrediction operation. // // You can see the updated content by using the GetBatchPrediction operation. type UpdateBatchPredictionOutput struct { _ struct{} `type:"structure"` // The ID assigned to the BatchPrediction during creation. This value should // be identical to the value of the BatchPredictionId in the request. BatchPredictionId *string `min:"1" type:"string"` } // String returns the string representation func (s UpdateBatchPredictionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateBatchPredictionOutput) GoString() string { return s.String() } type UpdateDataSourceInput struct { _ struct{} `type:"structure"` // The ID assigned to the DataSource during creation. // // DataSourceId is a required field DataSourceId *string `min:"1" type:"string" required:"true"` // A new user-supplied name or description of the DataSource that will replace // the current description. // // DataSourceName is a required field DataSourceName *string `type:"string" required:"true"` } // String returns the string representation func (s UpdateDataSourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDataSourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateDataSourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateDataSourceInput"} if s.DataSourceId == nil { invalidParams.Add(request.NewErrParamRequired("DataSourceId")) } if s.DataSourceId != nil && len(*s.DataSourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("DataSourceId", 1)) } if s.DataSourceName == nil { invalidParams.Add(request.NewErrParamRequired("DataSourceName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of an UpdateDataSource operation. // // You can see the updated content by using the GetBatchPrediction operation. type UpdateDataSourceOutput struct { _ struct{} `type:"structure"` // The ID assigned to the DataSource during creation. This value should be identical // to the value of the DataSourceID in the request. DataSourceId *string `min:"1" type:"string"` } // String returns the string representation func (s UpdateDataSourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDataSourceOutput) GoString() string { return s.String() } type UpdateEvaluationInput struct { _ struct{} `type:"structure"` // The ID assigned to the Evaluation during creation. // // EvaluationId is a required field EvaluationId *string `min:"1" type:"string" required:"true"` // A new user-supplied name or description of the Evaluation that will replace // the current content. // // EvaluationName is a required field EvaluationName *string `type:"string" required:"true"` } // String returns the string representation func (s UpdateEvaluationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateEvaluationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateEvaluationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateEvaluationInput"} if s.EvaluationId == nil { invalidParams.Add(request.NewErrParamRequired("EvaluationId")) } if s.EvaluationId != nil && len(*s.EvaluationId) < 1 { invalidParams.Add(request.NewErrParamMinLen("EvaluationId", 1)) } if s.EvaluationName == nil { invalidParams.Add(request.NewErrParamRequired("EvaluationName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of an UpdateEvaluation operation. // // You can see the updated content by using the GetEvaluation operation. type UpdateEvaluationOutput struct { _ struct{} `type:"structure"` // The ID assigned to the Evaluation during creation. This value should be identical // to the value of the Evaluation in the request. EvaluationId *string `min:"1" type:"string"` } // String returns the string representation func (s UpdateEvaluationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateEvaluationOutput) GoString() string { return s.String() } type UpdateMLModelInput struct { _ struct{} `type:"structure"` // The ID assigned to the MLModel during creation. // // MLModelId is a required field MLModelId *string `min:"1" type:"string" required:"true"` // A user-supplied name or description of the MLModel. MLModelName *string `type:"string"` // The ScoreThreshold used in binary classification MLModel that marks the boundary // between a positive prediction and a negative prediction. // // Output values greater than or equal to the ScoreThreshold receive a positive // result from the MLModel, such as true. Output values less than the ScoreThreshold // receive a negative response from the MLModel, such as false. ScoreThreshold *float64 `type:"float"` } // String returns the string representation func (s UpdateMLModelInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateMLModelInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateMLModelInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateMLModelInput"} if s.MLModelId == nil { invalidParams.Add(request.NewErrParamRequired("MLModelId")) } if s.MLModelId != nil && len(*s.MLModelId) < 1 { invalidParams.Add(request.NewErrParamMinLen("MLModelId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the output of an UpdateMLModel operation. // // You can see the updated content by using the GetMLModel operation. type UpdateMLModelOutput struct { _ struct{} `type:"structure"` // The ID assigned to the MLModel during creation. This value should be identical // to the value of the MLModelID in the request. MLModelId *string `min:"1" type:"string"` } // String returns the string representation func (s UpdateMLModelOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateMLModelOutput) GoString() string { return s.String() } // The function used to train an MLModel. Training choices supported by Amazon // ML include the following: // // * SGD - Stochastic Gradient Descent. // * RandomForest - Random forest of decision trees. const ( // AlgorithmSgd is a Algorithm enum value AlgorithmSgd = "sgd" ) // A list of the variables to use in searching or filtering BatchPrediction. // // * CreatedAt - Sets the search criteria to BatchPrediction creation date. // // * Status - Sets the search criteria to BatchPrediction status. // * Name - Sets the search criteria to the contents of BatchPredictionName. // // * IAMUser - Sets the search criteria to the user account that invoked // the BatchPrediction creation. // * MLModelId - Sets the search criteria to the MLModel used in the BatchPrediction. // // * DataSourceId - Sets the search criteria to the DataSource used in the // BatchPrediction. // * DataURI - Sets the search criteria to the data file(s) used in the BatchPrediction. // The URL can identify either a file or an Amazon Simple Storage Service // (Amazon S3) bucket or directory. const ( // BatchPredictionFilterVariableCreatedAt is a BatchPredictionFilterVariable enum value BatchPredictionFilterVariableCreatedAt = "CreatedAt" // BatchPredictionFilterVariableLastUpdatedAt is a BatchPredictionFilterVariable enum value BatchPredictionFilterVariableLastUpdatedAt = "LastUpdatedAt" // BatchPredictionFilterVariableStatus is a BatchPredictionFilterVariable enum value BatchPredictionFilterVariableStatus = "Status" // BatchPredictionFilterVariableName is a BatchPredictionFilterVariable enum value BatchPredictionFilterVariableName = "Name" // BatchPredictionFilterVariableIamuser is a BatchPredictionFilterVariable enum value BatchPredictionFilterVariableIamuser = "IAMUser" // BatchPredictionFilterVariableMlmodelId is a BatchPredictionFilterVariable enum value BatchPredictionFilterVariableMlmodelId = "MLModelId" // BatchPredictionFilterVariableDataSourceId is a BatchPredictionFilterVariable enum value BatchPredictionFilterVariableDataSourceId = "DataSourceId" // BatchPredictionFilterVariableDataUri is a BatchPredictionFilterVariable enum value BatchPredictionFilterVariableDataUri = "DataURI" ) // A list of the variables to use in searching or filtering DataSource. // // * CreatedAt - Sets the search criteria to DataSource creation date. // * Status - Sets the search criteria to DataSource status. // * Name - Sets the search criteria to the contents of DataSourceName. // * DataUri - Sets the search criteria to the URI of data files used to // create the DataSource. The URI can identify either a file or an Amazon // Simple Storage Service (Amazon S3) bucket or directory. // * IAMUser - Sets the search criteria to the user account that invoked // the DataSource creation. // NoteThe variable names should match the variable names in the DataSource. const ( // DataSourceFilterVariableCreatedAt is a DataSourceFilterVariable enum value DataSourceFilterVariableCreatedAt = "CreatedAt" // DataSourceFilterVariableLastUpdatedAt is a DataSourceFilterVariable enum value DataSourceFilterVariableLastUpdatedAt = "LastUpdatedAt" // DataSourceFilterVariableStatus is a DataSourceFilterVariable enum value DataSourceFilterVariableStatus = "Status" // DataSourceFilterVariableName is a DataSourceFilterVariable enum value DataSourceFilterVariableName = "Name" // DataSourceFilterVariableDataLocationS3 is a DataSourceFilterVariable enum value DataSourceFilterVariableDataLocationS3 = "DataLocationS3" // DataSourceFilterVariableIamuser is a DataSourceFilterVariable enum value DataSourceFilterVariableIamuser = "IAMUser" ) // Contains the key values of DetailsMap: PredictiveModelType- Indicates the type of the MLModel. Algorithm- Indicates the algorithm that was used for the MLModel const ( // DetailsAttributesPredictiveModelType is a DetailsAttributes enum value DetailsAttributesPredictiveModelType = "PredictiveModelType" // DetailsAttributesAlgorithm is a DetailsAttributes enum value DetailsAttributesAlgorithm = "Algorithm" ) // Object status with the following possible values: // // * PENDING // * INPROGRESS // * FAILED // * COMPLETED // * DELETED const ( // EntityStatusPending is a EntityStatus enum value EntityStatusPending = "PENDING" // EntityStatusInprogress is a EntityStatus enum value EntityStatusInprogress = "INPROGRESS" // EntityStatusFailed is a EntityStatus enum value EntityStatusFailed = "FAILED" // EntityStatusCompleted is a EntityStatus enum value EntityStatusCompleted = "COMPLETED" // EntityStatusDeleted is a EntityStatus enum value EntityStatusDeleted = "DELETED" ) // A list of the variables to use in searching or filtering Evaluation. // // * CreatedAt - Sets the search criteria to Evaluation creation date. // * Status - Sets the search criteria to Evaluation status. // * Name - Sets the search criteria to the contents of EvaluationName. // * IAMUser - Sets the search criteria to the user account that invoked // an evaluation. // * MLModelId - Sets the search criteria to the Predictor that was evaluated. // // * DataSourceId - Sets the search criteria to the DataSource used in evaluation. // // * DataUri - Sets the search criteria to the data file(s) used in evaluation. // The URL can identify either a file or an Amazon Simple Storage Service // (Amazon S3) bucket or directory. const ( // EvaluationFilterVariableCreatedAt is a EvaluationFilterVariable enum value EvaluationFilterVariableCreatedAt = "CreatedAt" // EvaluationFilterVariableLastUpdatedAt is a EvaluationFilterVariable enum value EvaluationFilterVariableLastUpdatedAt = "LastUpdatedAt" // EvaluationFilterVariableStatus is a EvaluationFilterVariable enum value EvaluationFilterVariableStatus = "Status" // EvaluationFilterVariableName is a EvaluationFilterVariable enum value EvaluationFilterVariableName = "Name" // EvaluationFilterVariableIamuser is a EvaluationFilterVariable enum value EvaluationFilterVariableIamuser = "IAMUser" // EvaluationFilterVariableMlmodelId is a EvaluationFilterVariable enum value EvaluationFilterVariableMlmodelId = "MLModelId" // EvaluationFilterVariableDataSourceId is a EvaluationFilterVariable enum value EvaluationFilterVariableDataSourceId = "DataSourceId" // EvaluationFilterVariableDataUri is a EvaluationFilterVariable enum value EvaluationFilterVariableDataUri = "DataURI" ) const ( // MLModelFilterVariableCreatedAt is a MLModelFilterVariable enum value MLModelFilterVariableCreatedAt = "CreatedAt" // MLModelFilterVariableLastUpdatedAt is a MLModelFilterVariable enum value MLModelFilterVariableLastUpdatedAt = "LastUpdatedAt" // MLModelFilterVariableStatus is a MLModelFilterVariable enum value MLModelFilterVariableStatus = "Status" // MLModelFilterVariableName is a MLModelFilterVariable enum value MLModelFilterVariableName = "Name" // MLModelFilterVariableIamuser is a MLModelFilterVariable enum value MLModelFilterVariableIamuser = "IAMUser" // MLModelFilterVariableTrainingDataSourceId is a MLModelFilterVariable enum value MLModelFilterVariableTrainingDataSourceId = "TrainingDataSourceId" // MLModelFilterVariableRealtimeEndpointStatus is a MLModelFilterVariable enum value MLModelFilterVariableRealtimeEndpointStatus = "RealtimeEndpointStatus" // MLModelFilterVariableMlmodelType is a MLModelFilterVariable enum value MLModelFilterVariableMlmodelType = "MLModelType" // MLModelFilterVariableAlgorithm is a MLModelFilterVariable enum value MLModelFilterVariableAlgorithm = "Algorithm" // MLModelFilterVariableTrainingDataUri is a MLModelFilterVariable enum value MLModelFilterVariableTrainingDataUri = "TrainingDataURI" ) const ( // MLModelTypeRegression is a MLModelType enum value MLModelTypeRegression = "REGRESSION" // MLModelTypeBinary is a MLModelType enum value MLModelTypeBinary = "BINARY" // MLModelTypeMulticlass is a MLModelType enum value MLModelTypeMulticlass = "MULTICLASS" ) const ( // RealtimeEndpointStatusNone is a RealtimeEndpointStatus enum value RealtimeEndpointStatusNone = "NONE" // RealtimeEndpointStatusReady is a RealtimeEndpointStatus enum value RealtimeEndpointStatusReady = "READY" // RealtimeEndpointStatusUpdating is a RealtimeEndpointStatus enum value RealtimeEndpointStatusUpdating = "UPDATING" // RealtimeEndpointStatusFailed is a RealtimeEndpointStatus enum value RealtimeEndpointStatusFailed = "FAILED" ) // The sort order specified in a listing condition. Possible values include // the following: // // * asc - Present the information in ascending order (from A-Z). // * dsc - Present the information in descending order (from Z-A). const ( // SortOrderAsc is a SortOrder enum value SortOrderAsc = "asc" // SortOrderDsc is a SortOrder enum value SortOrderDsc = "dsc" ) const ( // TaggableResourceTypeBatchPrediction is a TaggableResourceType enum value TaggableResourceTypeBatchPrediction = "BatchPrediction" // TaggableResourceTypeDataSource is a TaggableResourceType enum value TaggableResourceTypeDataSource = "DataSource" // TaggableResourceTypeEvaluation is a TaggableResourceType enum value TaggableResourceTypeEvaluation = "Evaluation" // TaggableResourceTypeMlmodel is a TaggableResourceType enum value TaggableResourceTypeMlmodel = "MLModel" ) aws-sdk-go-1.4.22/service/machinelearning/customizations.go000066400000000000000000000012111300374646400237640ustar00rootroot00000000000000package machinelearning import ( "net/url" "github.com/aws/aws-sdk-go/aws/request" ) func init() { initRequest = func(r *request.Request) { switch r.Operation.Name { case opPredict: r.Handlers.Build.PushBack(updatePredictEndpoint) } } } // updatePredictEndpoint rewrites the request endpoint to use the // "PredictEndpoint" parameter of the Predict operation. func updatePredictEndpoint(r *request.Request) { if !r.ParamsFilled() { return } r.ClientInfo.Endpoint = *r.Params.(*PredictInput).PredictEndpoint uri, err := url.Parse(r.ClientInfo.Endpoint) if err != nil { r.Error = err return } r.HTTPRequest.URL = uri } aws-sdk-go-1.4.22/service/machinelearning/customizations_test.go000066400000000000000000000016551300374646400250370ustar00rootroot00000000000000package machinelearning_test import ( "bytes" "io/ioutil" "net/http" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/machinelearning" ) func TestPredictEndpoint(t *testing.T) { ml := machinelearning.New(unit.Session) ml.Handlers.Send.Clear() ml.Handlers.Send.PushBack(func(r *request.Request) { r.HTTPResponse = &http.Response{ StatusCode: 200, Header: http.Header{}, Body: ioutil.NopCloser(bytes.NewReader([]byte("{}"))), } }) req, _ := ml.PredictRequest(&machinelearning.PredictInput{ PredictEndpoint: aws.String("https://localhost/endpoint"), MLModelId: aws.String("id"), Record: map[string]*string{}, }) err := req.Send() assert.Nil(t, err) assert.Equal(t, "https://localhost/endpoint", req.HTTPRequest.URL.String()) } aws-sdk-go-1.4.22/service/machinelearning/examples_test.go000066400000000000000000000532061300374646400235610ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package machinelearning_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/machinelearning" ) var _ time.Duration var _ bytes.Buffer func ExampleMachineLearning_AddTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.AddTagsInput{ ResourceId: aws.String("EntityId"), // Required ResourceType: aws.String("TaggableResourceType"), // Required Tags: []*machinelearning.Tag{ // Required { // Required Key: aws.String("TagKey"), Value: aws.String("TagValue"), }, // More values... }, } resp, err := svc.AddTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_CreateBatchPrediction() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.CreateBatchPredictionInput{ BatchPredictionDataSourceId: aws.String("EntityId"), // Required BatchPredictionId: aws.String("EntityId"), // Required MLModelId: aws.String("EntityId"), // Required OutputUri: aws.String("S3Url"), // Required BatchPredictionName: aws.String("EntityName"), } resp, err := svc.CreateBatchPrediction(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_CreateDataSourceFromRDS() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.CreateDataSourceFromRDSInput{ DataSourceId: aws.String("EntityId"), // Required RDSData: &machinelearning.RDSDataSpec{ // Required DatabaseCredentials: &machinelearning.RDSDatabaseCredentials{ // Required Password: aws.String("RDSDatabasePassword"), // Required Username: aws.String("RDSDatabaseUsername"), // Required }, DatabaseInformation: &machinelearning.RDSDatabase{ // Required DatabaseName: aws.String("RDSDatabaseName"), // Required InstanceIdentifier: aws.String("RDSInstanceIdentifier"), // Required }, ResourceRole: aws.String("EDPResourceRole"), // Required S3StagingLocation: aws.String("S3Url"), // Required SecurityGroupIds: []*string{ // Required aws.String("EDPSecurityGroupId"), // Required // More values... }, SelectSqlQuery: aws.String("RDSSelectSqlQuery"), // Required ServiceRole: aws.String("EDPServiceRole"), // Required SubnetId: aws.String("EDPSubnetId"), // Required DataRearrangement: aws.String("DataRearrangement"), DataSchema: aws.String("DataSchema"), DataSchemaUri: aws.String("S3Url"), }, RoleARN: aws.String("RoleARN"), // Required ComputeStatistics: aws.Bool(true), DataSourceName: aws.String("EntityName"), } resp, err := svc.CreateDataSourceFromRDS(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_CreateDataSourceFromRedshift() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.CreateDataSourceFromRedshiftInput{ DataSourceId: aws.String("EntityId"), // Required DataSpec: &machinelearning.RedshiftDataSpec{ // Required DatabaseCredentials: &machinelearning.RedshiftDatabaseCredentials{ // Required Password: aws.String("RedshiftDatabasePassword"), // Required Username: aws.String("RedshiftDatabaseUsername"), // Required }, DatabaseInformation: &machinelearning.RedshiftDatabase{ // Required ClusterIdentifier: aws.String("RedshiftClusterIdentifier"), // Required DatabaseName: aws.String("RedshiftDatabaseName"), // Required }, S3StagingLocation: aws.String("S3Url"), // Required SelectSqlQuery: aws.String("RedshiftSelectSqlQuery"), // Required DataRearrangement: aws.String("DataRearrangement"), DataSchema: aws.String("DataSchema"), DataSchemaUri: aws.String("S3Url"), }, RoleARN: aws.String("RoleARN"), // Required ComputeStatistics: aws.Bool(true), DataSourceName: aws.String("EntityName"), } resp, err := svc.CreateDataSourceFromRedshift(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_CreateDataSourceFromS3() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.CreateDataSourceFromS3Input{ DataSourceId: aws.String("EntityId"), // Required DataSpec: &machinelearning.S3DataSpec{ // Required DataLocationS3: aws.String("S3Url"), // Required DataRearrangement: aws.String("DataRearrangement"), DataSchema: aws.String("DataSchema"), DataSchemaLocationS3: aws.String("S3Url"), }, ComputeStatistics: aws.Bool(true), DataSourceName: aws.String("EntityName"), } resp, err := svc.CreateDataSourceFromS3(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_CreateEvaluation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.CreateEvaluationInput{ EvaluationDataSourceId: aws.String("EntityId"), // Required EvaluationId: aws.String("EntityId"), // Required MLModelId: aws.String("EntityId"), // Required EvaluationName: aws.String("EntityName"), } resp, err := svc.CreateEvaluation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_CreateMLModel() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.CreateMLModelInput{ MLModelId: aws.String("EntityId"), // Required MLModelType: aws.String("MLModelType"), // Required TrainingDataSourceId: aws.String("EntityId"), // Required MLModelName: aws.String("EntityName"), Parameters: map[string]*string{ "Key": aws.String("StringType"), // Required // More values... }, Recipe: aws.String("Recipe"), RecipeUri: aws.String("S3Url"), } resp, err := svc.CreateMLModel(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_CreateRealtimeEndpoint() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.CreateRealtimeEndpointInput{ MLModelId: aws.String("EntityId"), // Required } resp, err := svc.CreateRealtimeEndpoint(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_DeleteBatchPrediction() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.DeleteBatchPredictionInput{ BatchPredictionId: aws.String("EntityId"), // Required } resp, err := svc.DeleteBatchPrediction(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_DeleteDataSource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.DeleteDataSourceInput{ DataSourceId: aws.String("EntityId"), // Required } resp, err := svc.DeleteDataSource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_DeleteEvaluation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.DeleteEvaluationInput{ EvaluationId: aws.String("EntityId"), // Required } resp, err := svc.DeleteEvaluation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_DeleteMLModel() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.DeleteMLModelInput{ MLModelId: aws.String("EntityId"), // Required } resp, err := svc.DeleteMLModel(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_DeleteRealtimeEndpoint() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.DeleteRealtimeEndpointInput{ MLModelId: aws.String("EntityId"), // Required } resp, err := svc.DeleteRealtimeEndpoint(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_DeleteTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.DeleteTagsInput{ ResourceId: aws.String("EntityId"), // Required ResourceType: aws.String("TaggableResourceType"), // Required TagKeys: []*string{ // Required aws.String("TagKey"), // Required // More values... }, } resp, err := svc.DeleteTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_DescribeBatchPredictions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.DescribeBatchPredictionsInput{ EQ: aws.String("ComparatorValue"), FilterVariable: aws.String("BatchPredictionFilterVariable"), GE: aws.String("ComparatorValue"), GT: aws.String("ComparatorValue"), LE: aws.String("ComparatorValue"), LT: aws.String("ComparatorValue"), Limit: aws.Int64(1), NE: aws.String("ComparatorValue"), NextToken: aws.String("StringType"), Prefix: aws.String("ComparatorValue"), SortOrder: aws.String("SortOrder"), } resp, err := svc.DescribeBatchPredictions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_DescribeDataSources() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.DescribeDataSourcesInput{ EQ: aws.String("ComparatorValue"), FilterVariable: aws.String("DataSourceFilterVariable"), GE: aws.String("ComparatorValue"), GT: aws.String("ComparatorValue"), LE: aws.String("ComparatorValue"), LT: aws.String("ComparatorValue"), Limit: aws.Int64(1), NE: aws.String("ComparatorValue"), NextToken: aws.String("StringType"), Prefix: aws.String("ComparatorValue"), SortOrder: aws.String("SortOrder"), } resp, err := svc.DescribeDataSources(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_DescribeEvaluations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.DescribeEvaluationsInput{ EQ: aws.String("ComparatorValue"), FilterVariable: aws.String("EvaluationFilterVariable"), GE: aws.String("ComparatorValue"), GT: aws.String("ComparatorValue"), LE: aws.String("ComparatorValue"), LT: aws.String("ComparatorValue"), Limit: aws.Int64(1), NE: aws.String("ComparatorValue"), NextToken: aws.String("StringType"), Prefix: aws.String("ComparatorValue"), SortOrder: aws.String("SortOrder"), } resp, err := svc.DescribeEvaluations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_DescribeMLModels() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.DescribeMLModelsInput{ EQ: aws.String("ComparatorValue"), FilterVariable: aws.String("MLModelFilterVariable"), GE: aws.String("ComparatorValue"), GT: aws.String("ComparatorValue"), LE: aws.String("ComparatorValue"), LT: aws.String("ComparatorValue"), Limit: aws.Int64(1), NE: aws.String("ComparatorValue"), NextToken: aws.String("StringType"), Prefix: aws.String("ComparatorValue"), SortOrder: aws.String("SortOrder"), } resp, err := svc.DescribeMLModels(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_DescribeTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.DescribeTagsInput{ ResourceId: aws.String("EntityId"), // Required ResourceType: aws.String("TaggableResourceType"), // Required } resp, err := svc.DescribeTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_GetBatchPrediction() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.GetBatchPredictionInput{ BatchPredictionId: aws.String("EntityId"), // Required } resp, err := svc.GetBatchPrediction(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_GetDataSource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.GetDataSourceInput{ DataSourceId: aws.String("EntityId"), // Required Verbose: aws.Bool(true), } resp, err := svc.GetDataSource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_GetEvaluation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.GetEvaluationInput{ EvaluationId: aws.String("EntityId"), // Required } resp, err := svc.GetEvaluation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_GetMLModel() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.GetMLModelInput{ MLModelId: aws.String("EntityId"), // Required Verbose: aws.Bool(true), } resp, err := svc.GetMLModel(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_Predict() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.PredictInput{ MLModelId: aws.String("EntityId"), // Required PredictEndpoint: aws.String("VipURL"), // Required Record: map[string]*string{ // Required "Key": aws.String("VariableValue"), // Required // More values... }, } resp, err := svc.Predict(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_UpdateBatchPrediction() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.UpdateBatchPredictionInput{ BatchPredictionId: aws.String("EntityId"), // Required BatchPredictionName: aws.String("EntityName"), // Required } resp, err := svc.UpdateBatchPrediction(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_UpdateDataSource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.UpdateDataSourceInput{ DataSourceId: aws.String("EntityId"), // Required DataSourceName: aws.String("EntityName"), // Required } resp, err := svc.UpdateDataSource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_UpdateEvaluation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.UpdateEvaluationInput{ EvaluationId: aws.String("EntityId"), // Required EvaluationName: aws.String("EntityName"), // Required } resp, err := svc.UpdateEvaluation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMachineLearning_UpdateMLModel() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := machinelearning.New(sess) params := &machinelearning.UpdateMLModelInput{ MLModelId: aws.String("EntityId"), // Required MLModelName: aws.String("EntityName"), ScoreThreshold: aws.Float64(1.0), } resp, err := svc.UpdateMLModel(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/machinelearning/machinelearningiface/000077500000000000000000000000001300374646400244635ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/machinelearning/machinelearningiface/interface.go000066400000000000000000000231761300374646400267630ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package machinelearningiface provides an interface to enable mocking the Amazon Machine Learning service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package machinelearningiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/machinelearning" ) // MachineLearningAPI provides an interface to enable mocking the // machinelearning.MachineLearning service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Machine Learning. // func myFunc(svc machinelearningiface.MachineLearningAPI) bool { // // Make svc.AddTags request // } // // func main() { // sess := session.New() // svc := machinelearning.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockMachineLearningClient struct { // machinelearningiface.MachineLearningAPI // } // func (m *mockMachineLearningClient) AddTags(input *machinelearning.AddTagsInput) (*machinelearning.AddTagsOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockMachineLearningClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type MachineLearningAPI interface { AddTagsRequest(*machinelearning.AddTagsInput) (*request.Request, *machinelearning.AddTagsOutput) AddTags(*machinelearning.AddTagsInput) (*machinelearning.AddTagsOutput, error) CreateBatchPredictionRequest(*machinelearning.CreateBatchPredictionInput) (*request.Request, *machinelearning.CreateBatchPredictionOutput) CreateBatchPrediction(*machinelearning.CreateBatchPredictionInput) (*machinelearning.CreateBatchPredictionOutput, error) CreateDataSourceFromRDSRequest(*machinelearning.CreateDataSourceFromRDSInput) (*request.Request, *machinelearning.CreateDataSourceFromRDSOutput) CreateDataSourceFromRDS(*machinelearning.CreateDataSourceFromRDSInput) (*machinelearning.CreateDataSourceFromRDSOutput, error) CreateDataSourceFromRedshiftRequest(*machinelearning.CreateDataSourceFromRedshiftInput) (*request.Request, *machinelearning.CreateDataSourceFromRedshiftOutput) CreateDataSourceFromRedshift(*machinelearning.CreateDataSourceFromRedshiftInput) (*machinelearning.CreateDataSourceFromRedshiftOutput, error) CreateDataSourceFromS3Request(*machinelearning.CreateDataSourceFromS3Input) (*request.Request, *machinelearning.CreateDataSourceFromS3Output) CreateDataSourceFromS3(*machinelearning.CreateDataSourceFromS3Input) (*machinelearning.CreateDataSourceFromS3Output, error) CreateEvaluationRequest(*machinelearning.CreateEvaluationInput) (*request.Request, *machinelearning.CreateEvaluationOutput) CreateEvaluation(*machinelearning.CreateEvaluationInput) (*machinelearning.CreateEvaluationOutput, error) CreateMLModelRequest(*machinelearning.CreateMLModelInput) (*request.Request, *machinelearning.CreateMLModelOutput) CreateMLModel(*machinelearning.CreateMLModelInput) (*machinelearning.CreateMLModelOutput, error) CreateRealtimeEndpointRequest(*machinelearning.CreateRealtimeEndpointInput) (*request.Request, *machinelearning.CreateRealtimeEndpointOutput) CreateRealtimeEndpoint(*machinelearning.CreateRealtimeEndpointInput) (*machinelearning.CreateRealtimeEndpointOutput, error) DeleteBatchPredictionRequest(*machinelearning.DeleteBatchPredictionInput) (*request.Request, *machinelearning.DeleteBatchPredictionOutput) DeleteBatchPrediction(*machinelearning.DeleteBatchPredictionInput) (*machinelearning.DeleteBatchPredictionOutput, error) DeleteDataSourceRequest(*machinelearning.DeleteDataSourceInput) (*request.Request, *machinelearning.DeleteDataSourceOutput) DeleteDataSource(*machinelearning.DeleteDataSourceInput) (*machinelearning.DeleteDataSourceOutput, error) DeleteEvaluationRequest(*machinelearning.DeleteEvaluationInput) (*request.Request, *machinelearning.DeleteEvaluationOutput) DeleteEvaluation(*machinelearning.DeleteEvaluationInput) (*machinelearning.DeleteEvaluationOutput, error) DeleteMLModelRequest(*machinelearning.DeleteMLModelInput) (*request.Request, *machinelearning.DeleteMLModelOutput) DeleteMLModel(*machinelearning.DeleteMLModelInput) (*machinelearning.DeleteMLModelOutput, error) DeleteRealtimeEndpointRequest(*machinelearning.DeleteRealtimeEndpointInput) (*request.Request, *machinelearning.DeleteRealtimeEndpointOutput) DeleteRealtimeEndpoint(*machinelearning.DeleteRealtimeEndpointInput) (*machinelearning.DeleteRealtimeEndpointOutput, error) DeleteTagsRequest(*machinelearning.DeleteTagsInput) (*request.Request, *machinelearning.DeleteTagsOutput) DeleteTags(*machinelearning.DeleteTagsInput) (*machinelearning.DeleteTagsOutput, error) DescribeBatchPredictionsRequest(*machinelearning.DescribeBatchPredictionsInput) (*request.Request, *machinelearning.DescribeBatchPredictionsOutput) DescribeBatchPredictions(*machinelearning.DescribeBatchPredictionsInput) (*machinelearning.DescribeBatchPredictionsOutput, error) DescribeBatchPredictionsPages(*machinelearning.DescribeBatchPredictionsInput, func(*machinelearning.DescribeBatchPredictionsOutput, bool) bool) error DescribeDataSourcesRequest(*machinelearning.DescribeDataSourcesInput) (*request.Request, *machinelearning.DescribeDataSourcesOutput) DescribeDataSources(*machinelearning.DescribeDataSourcesInput) (*machinelearning.DescribeDataSourcesOutput, error) DescribeDataSourcesPages(*machinelearning.DescribeDataSourcesInput, func(*machinelearning.DescribeDataSourcesOutput, bool) bool) error DescribeEvaluationsRequest(*machinelearning.DescribeEvaluationsInput) (*request.Request, *machinelearning.DescribeEvaluationsOutput) DescribeEvaluations(*machinelearning.DescribeEvaluationsInput) (*machinelearning.DescribeEvaluationsOutput, error) DescribeEvaluationsPages(*machinelearning.DescribeEvaluationsInput, func(*machinelearning.DescribeEvaluationsOutput, bool) bool) error DescribeMLModelsRequest(*machinelearning.DescribeMLModelsInput) (*request.Request, *machinelearning.DescribeMLModelsOutput) DescribeMLModels(*machinelearning.DescribeMLModelsInput) (*machinelearning.DescribeMLModelsOutput, error) DescribeMLModelsPages(*machinelearning.DescribeMLModelsInput, func(*machinelearning.DescribeMLModelsOutput, bool) bool) error DescribeTagsRequest(*machinelearning.DescribeTagsInput) (*request.Request, *machinelearning.DescribeTagsOutput) DescribeTags(*machinelearning.DescribeTagsInput) (*machinelearning.DescribeTagsOutput, error) GetBatchPredictionRequest(*machinelearning.GetBatchPredictionInput) (*request.Request, *machinelearning.GetBatchPredictionOutput) GetBatchPrediction(*machinelearning.GetBatchPredictionInput) (*machinelearning.GetBatchPredictionOutput, error) GetDataSourceRequest(*machinelearning.GetDataSourceInput) (*request.Request, *machinelearning.GetDataSourceOutput) GetDataSource(*machinelearning.GetDataSourceInput) (*machinelearning.GetDataSourceOutput, error) GetEvaluationRequest(*machinelearning.GetEvaluationInput) (*request.Request, *machinelearning.GetEvaluationOutput) GetEvaluation(*machinelearning.GetEvaluationInput) (*machinelearning.GetEvaluationOutput, error) GetMLModelRequest(*machinelearning.GetMLModelInput) (*request.Request, *machinelearning.GetMLModelOutput) GetMLModel(*machinelearning.GetMLModelInput) (*machinelearning.GetMLModelOutput, error) PredictRequest(*machinelearning.PredictInput) (*request.Request, *machinelearning.PredictOutput) Predict(*machinelearning.PredictInput) (*machinelearning.PredictOutput, error) UpdateBatchPredictionRequest(*machinelearning.UpdateBatchPredictionInput) (*request.Request, *machinelearning.UpdateBatchPredictionOutput) UpdateBatchPrediction(*machinelearning.UpdateBatchPredictionInput) (*machinelearning.UpdateBatchPredictionOutput, error) UpdateDataSourceRequest(*machinelearning.UpdateDataSourceInput) (*request.Request, *machinelearning.UpdateDataSourceOutput) UpdateDataSource(*machinelearning.UpdateDataSourceInput) (*machinelearning.UpdateDataSourceOutput, error) UpdateEvaluationRequest(*machinelearning.UpdateEvaluationInput) (*request.Request, *machinelearning.UpdateEvaluationOutput) UpdateEvaluation(*machinelearning.UpdateEvaluationInput) (*machinelearning.UpdateEvaluationOutput, error) UpdateMLModelRequest(*machinelearning.UpdateMLModelInput) (*request.Request, *machinelearning.UpdateMLModelOutput) UpdateMLModel(*machinelearning.UpdateMLModelInput) (*machinelearning.UpdateMLModelOutput, error) WaitUntilBatchPredictionAvailable(*machinelearning.DescribeBatchPredictionsInput) error WaitUntilDataSourceAvailable(*machinelearning.DescribeDataSourcesInput) error WaitUntilEvaluationAvailable(*machinelearning.DescribeEvaluationsInput) error WaitUntilMLModelAvailable(*machinelearning.DescribeMLModelsInput) error } var _ MachineLearningAPI = (*machinelearning.MachineLearning)(nil) aws-sdk-go-1.4.22/service/machinelearning/service.go000066400000000000000000000055071300374646400223450ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package machinelearning import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Definition of the public APIs exposed by Amazon Machine Learning //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type MachineLearning struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "machinelearning" // New creates a new instance of the MachineLearning client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a MachineLearning client from just a session. // svc := machinelearning.New(mySession) // // // Create a MachineLearning client with additional configuration // svc := machinelearning.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *MachineLearning { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *MachineLearning { svc := &MachineLearning{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-12-12", JSONVersion: "1.1", TargetPrefix: "AmazonML_20141212", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a MachineLearning operation and runs any // custom request initialization. func (c *MachineLearning) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/machinelearning/waiters.go000066400000000000000000000066011300374646400223570ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package machinelearning import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilBatchPredictionAvailable uses the Amazon Machine Learning API operation // DescribeBatchPredictions to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *MachineLearning) WaitUntilBatchPredictionAvailable(input *DescribeBatchPredictionsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeBatchPredictions", Delay: 30, MaxAttempts: 60, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Results[].Status", Expected: "COMPLETED", }, { State: "failure", Matcher: "pathAny", Argument: "Results[].Status", Expected: "FAILED", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilDataSourceAvailable uses the Amazon Machine Learning API operation // DescribeDataSources to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *MachineLearning) WaitUntilDataSourceAvailable(input *DescribeDataSourcesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeDataSources", Delay: 30, MaxAttempts: 60, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Results[].Status", Expected: "COMPLETED", }, { State: "failure", Matcher: "pathAny", Argument: "Results[].Status", Expected: "FAILED", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilEvaluationAvailable uses the Amazon Machine Learning API operation // DescribeEvaluations to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *MachineLearning) WaitUntilEvaluationAvailable(input *DescribeEvaluationsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeEvaluations", Delay: 30, MaxAttempts: 60, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Results[].Status", Expected: "COMPLETED", }, { State: "failure", Matcher: "pathAny", Argument: "Results[].Status", Expected: "FAILED", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilMLModelAvailable uses the Amazon Machine Learning API operation // DescribeMLModels to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *MachineLearning) WaitUntilMLModelAvailable(input *DescribeMLModelsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeMLModels", Delay: 30, MaxAttempts: 60, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Results[].Status", Expected: "COMPLETED", }, { State: "failure", Matcher: "pathAny", Argument: "Results[].Status", Expected: "FAILED", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/marketplacecommerceanalytics/000077500000000000000000000000001300374646400231365ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/marketplacecommerceanalytics/api.go000066400000000000000000000533451300374646400242500ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package marketplacecommerceanalytics provides a client for AWS Marketplace Commerce Analytics. package marketplacecommerceanalytics import ( "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opGenerateDataSet = "GenerateDataSet" // GenerateDataSetRequest generates a "aws/request.Request" representing the // client's request for the GenerateDataSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GenerateDataSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GenerateDataSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GenerateDataSetRequest method. // req, resp := client.GenerateDataSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MarketplaceCommerceAnalytics) GenerateDataSetRequest(input *GenerateDataSetInput) (req *request.Request, output *GenerateDataSetOutput) { op := &request.Operation{ Name: opGenerateDataSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GenerateDataSetInput{} } req = c.newRequest(op, input, output) output = &GenerateDataSetOutput{} req.Data = output return } // GenerateDataSet API operation for AWS Marketplace Commerce Analytics. // // Given a data set type and data set publication date, asynchronously publishes // the requested data set to the specified S3 bucket and notifies the specified // SNS topic once the data is available. Returns a unique request identifier // that can be used to correlate requests with notifications from the SNS topic. // Data sets will be published in comma-separated values (CSV) format with the // file name {data_set_type}_YYYY-MM-DD.csv. If a file with the same name already // exists (e.g. if the same data set is requested twice), the original file // will be overwritten by the new file. Requires a Role with an attached permissions // policy providing Allow permissions for the following actions: s3:PutObject, // s3:GetBucketLocation, sns:GetTopicAttributes, sns:Publish, iam:GetRolePolicy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Marketplace Commerce Analytics's // API operation GenerateDataSet for usage and error information. // // Returned Error Codes: // * Exception // This exception is thrown when an internal service error occurs. // func (c *MarketplaceCommerceAnalytics) GenerateDataSet(input *GenerateDataSetInput) (*GenerateDataSetOutput, error) { req, out := c.GenerateDataSetRequest(input) err := req.Send() return out, err } const opStartSupportDataExport = "StartSupportDataExport" // StartSupportDataExportRequest generates a "aws/request.Request" representing the // client's request for the StartSupportDataExport operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StartSupportDataExport for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StartSupportDataExport method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StartSupportDataExportRequest method. // req, resp := client.StartSupportDataExportRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MarketplaceCommerceAnalytics) StartSupportDataExportRequest(input *StartSupportDataExportInput) (req *request.Request, output *StartSupportDataExportOutput) { op := &request.Operation{ Name: opStartSupportDataExport, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartSupportDataExportInput{} } req = c.newRequest(op, input, output) output = &StartSupportDataExportOutput{} req.Data = output return } // StartSupportDataExport API operation for AWS Marketplace Commerce Analytics. // // Given a data set type and a from date, asynchronously publishes the requested // customer support data to the specified S3 bucket and notifies the specified // SNS topic once the data is available. Returns a unique request identifier // that can be used to correlate requests with notifications from the SNS topic. // Data sets will be published in comma-separated values (CSV) format with the // file name {data_set_type}_YYYY-MM-DD'T'HH-mm-ss'Z'.csv. If a file with the // same name already exists (e.g. if the same data set is requested twice), // the original file will be overwritten by the new file. Requires a Role with // an attached permissions policy providing Allow permissions for the following // actions: s3:PutObject, s3:GetBucketLocation, sns:GetTopicAttributes, sns:Publish, // iam:GetRolePolicy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Marketplace Commerce Analytics's // API operation StartSupportDataExport for usage and error information. // // Returned Error Codes: // * Exception // This exception is thrown when an internal service error occurs. // func (c *MarketplaceCommerceAnalytics) StartSupportDataExport(input *StartSupportDataExportInput) (*StartSupportDataExportOutput, error) { req, out := c.StartSupportDataExportRequest(input) err := req.Send() return out, err } // Container for the parameters to the GenerateDataSet operation. type GenerateDataSetInput struct { _ struct{} `type:"structure"` // (Optional) Key-value pairs which will be returned, unmodified, in the Amazon // SNS notification message and the data set metadata file. These key-value // pairs can be used to correlated responses with tracking information from // other systems. CustomerDefinedValues map[string]*string `locationName:"customerDefinedValues" min:"1" type:"map"` // The date a data set was published. For daily data sets, provide a date with // day-level granularity for the desired day. For weekly data sets, provide // a date with day-level granularity within the desired week (the day value // will be ignored). For monthly data sets, provide a date with month-level // granularity for the desired month (the day value will be ignored). // // DataSetPublicationDate is a required field DataSetPublicationDate *time.Time `locationName:"dataSetPublicationDate" type:"timestamp" timestampFormat:"unix" required:"true"` // The desired data set type. // // customer_subscriber_hourly_monthly_subscriptions - Available daily by 5:00 // PM Pacific Time since 2014-07-21. // customer_subscriber_annual_subscriptions - Available daily by 5:00 PM Pacific // Time since 2014-07-21. // daily_business_usage_by_instance_type - Available daily by 5:00 PM Pacific // Time since 2015-01-26. // daily_business_fees - Available daily by 5:00 PM Pacific Time since 2015-01-26. // // daily_business_free_trial_conversions - Available daily by 5:00 PM Pacific // Time since 2015-01-26. // daily_business_new_instances - Available daily by 5:00 PM Pacific Time since // 2015-01-26. // daily_business_new_product_subscribers - Available daily by 5:00 PM Pacific // Time since 2015-01-26. // daily_business_canceled_product_subscribers - Available daily by 5:00 PM // Pacific Time since 2015-01-26. // monthly_revenue_billing_and_revenue_data - Available monthly on the 4th day // of the month by 5:00 PM Pacific Time since 2015-02. // monthly_revenue_annual_subscriptions - Available monthly on the 4th day of // the month by 5:00 PM Pacific Time since 2015-02. // disbursed_amount_by_product - Available every 30 days by 5:00 PM Pacific // Time since 2015-01-26. // disbursed_amount_by_product_with_uncollected_funds -This data set is only // available from 2012-04-19 until 2015-01-25. After 2015-01-25, this data set // was split into three data sets: disbursed_amount_by_product, disbursed_amount_by_age_of_uncollected_funds, // and disbursed_amount_by_age_of_disbursed_funds. // disbursed_amount_by_customer_geo - Available every 30 days by 5:00 PM Pacific // Time since 2012-04-19. // disbursed_amount_by_age_of_uncollected_funds - Available every 30 days by // 5:00 PM Pacific Time since 2015-01-26. // disbursed_amount_by_age_of_disbursed_funds - Available every 30 days by 5:00 // PM Pacific Time since 2015-01-26. // customer_profile_by_industry - Available daily by 5:00 PM Pacific Time since // 2015-10-01. // customer_profile_by_revenue - Available daily by 5:00 PM Pacific Time since // 2015-10-01. // customer_profile_by_geography - Available daily by 5:00 PM Pacific Time since // 2015-10-01. // // DataSetType is a required field DataSetType *string `locationName:"dataSetType" min:"1" type:"string" required:"true" enum:"DataSetType"` // The name (friendly name, not ARN) of the destination S3 bucket. // // DestinationS3BucketName is a required field DestinationS3BucketName *string `locationName:"destinationS3BucketName" min:"1" type:"string" required:"true"` // (Optional) The desired S3 prefix for the published data set, similar to a // directory path in standard file systems. For example, if given the bucket // name "mybucket" and the prefix "myprefix/mydatasets", the output file "outputfile" // would be published to "s3://mybucket/myprefix/mydatasets/outputfile". If // the prefix directory structure does not exist, it will be created. If no // prefix is provided, the data set will be published to the S3 bucket root. DestinationS3Prefix *string `locationName:"destinationS3Prefix" type:"string"` // The Amazon Resource Name (ARN) of the Role with an attached permissions policy // to interact with the provided AWS services. // // RoleNameArn is a required field RoleNameArn *string `locationName:"roleNameArn" min:"1" type:"string" required:"true"` // Amazon Resource Name (ARN) for the SNS Topic that will be notified when the // data set has been published or if an error has occurred. // // SnsTopicArn is a required field SnsTopicArn *string `locationName:"snsTopicArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s GenerateDataSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GenerateDataSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GenerateDataSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GenerateDataSetInput"} if s.CustomerDefinedValues != nil && len(s.CustomerDefinedValues) < 1 { invalidParams.Add(request.NewErrParamMinLen("CustomerDefinedValues", 1)) } if s.DataSetPublicationDate == nil { invalidParams.Add(request.NewErrParamRequired("DataSetPublicationDate")) } if s.DataSetType == nil { invalidParams.Add(request.NewErrParamRequired("DataSetType")) } if s.DataSetType != nil && len(*s.DataSetType) < 1 { invalidParams.Add(request.NewErrParamMinLen("DataSetType", 1)) } if s.DestinationS3BucketName == nil { invalidParams.Add(request.NewErrParamRequired("DestinationS3BucketName")) } if s.DestinationS3BucketName != nil && len(*s.DestinationS3BucketName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DestinationS3BucketName", 1)) } if s.RoleNameArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleNameArn")) } if s.RoleNameArn != nil && len(*s.RoleNameArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleNameArn", 1)) } if s.SnsTopicArn == nil { invalidParams.Add(request.NewErrParamRequired("SnsTopicArn")) } if s.SnsTopicArn != nil && len(*s.SnsTopicArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("SnsTopicArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for the result of the GenerateDataSet operation. type GenerateDataSetOutput struct { _ struct{} `type:"structure"` // A unique identifier representing a specific request to the GenerateDataSet // operation. This identifier can be used to correlate a request with notifications // from the SNS topic. DataSetRequestId *string `locationName:"dataSetRequestId" type:"string"` } // String returns the string representation func (s GenerateDataSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GenerateDataSetOutput) GoString() string { return s.String() } // Container for the parameters to the StartSupportDataExport operation. type StartSupportDataExportInput struct { _ struct{} `type:"structure"` // (Optional) Key-value pairs which will be returned, unmodified, in the Amazon // SNS notification message and the data set metadata file. CustomerDefinedValues map[string]*string `locationName:"customerDefinedValues" min:"1" type:"map"` // Specifies the data set type to be written to the output csv file. The data // set types customer_support_contacts_data and test_customer_support_contacts_data // both result in a csv file containing the following fields: Product Id, Customer // Guid, Subscription Guid, Subscription Start Date, Organization, AWS Account // Id, Given Name, Surname, Telephone Number, Email, Title, Country Code, ZIP // Code, Operation Type, and Operation Time. Currently, only the test_customer_support_contacts_data // value is supported // // customer_support_contacts_data Customer support contact data. The data set // will contain all changes (Creates, Updates, and Deletes) to customer support // contact data from the date specified in the from_date parameter. // test_customer_support_contacts_data An example data set containing static // test data in the same format as customer_support_contacts_data // // DataSetType is a required field DataSetType *string `locationName:"dataSetType" min:"1" type:"string" required:"true" enum:"SupportDataSetType"` // The name (friendly name, not ARN) of the destination S3 bucket. // // DestinationS3BucketName is a required field DestinationS3BucketName *string `locationName:"destinationS3BucketName" min:"1" type:"string" required:"true"` // (Optional) The desired S3 prefix for the published data set, similar to a // directory path in standard file systems. For example, if given the bucket // name "mybucket" and the prefix "myprefix/mydatasets", the output file "outputfile" // would be published to "s3://mybucket/myprefix/mydatasets/outputfile". If // the prefix directory structure does not exist, it will be created. If no // prefix is provided, the data set will be published to the S3 bucket root. DestinationS3Prefix *string `locationName:"destinationS3Prefix" type:"string"` // The start date from which to retrieve the data set. This parameter only affects // the customer_support_contacts_data data set type. // // FromDate is a required field FromDate *time.Time `locationName:"fromDate" type:"timestamp" timestampFormat:"unix" required:"true"` // The Amazon Resource Name (ARN) of the Role with an attached permissions policy // to interact with the provided AWS services. // // RoleNameArn is a required field RoleNameArn *string `locationName:"roleNameArn" min:"1" type:"string" required:"true"` // Amazon Resource Name (ARN) for the SNS Topic that will be notified when the // data set has been published or if an error has occurred. // // SnsTopicArn is a required field SnsTopicArn *string `locationName:"snsTopicArn" min:"1" type:"string" required:"true"` } // String returns the string representation func (s StartSupportDataExportInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartSupportDataExportInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartSupportDataExportInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartSupportDataExportInput"} if s.CustomerDefinedValues != nil && len(s.CustomerDefinedValues) < 1 { invalidParams.Add(request.NewErrParamMinLen("CustomerDefinedValues", 1)) } if s.DataSetType == nil { invalidParams.Add(request.NewErrParamRequired("DataSetType")) } if s.DataSetType != nil && len(*s.DataSetType) < 1 { invalidParams.Add(request.NewErrParamMinLen("DataSetType", 1)) } if s.DestinationS3BucketName == nil { invalidParams.Add(request.NewErrParamRequired("DestinationS3BucketName")) } if s.DestinationS3BucketName != nil && len(*s.DestinationS3BucketName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DestinationS3BucketName", 1)) } if s.FromDate == nil { invalidParams.Add(request.NewErrParamRequired("FromDate")) } if s.RoleNameArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleNameArn")) } if s.RoleNameArn != nil && len(*s.RoleNameArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleNameArn", 1)) } if s.SnsTopicArn == nil { invalidParams.Add(request.NewErrParamRequired("SnsTopicArn")) } if s.SnsTopicArn != nil && len(*s.SnsTopicArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("SnsTopicArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for the result of the StartSupportDataExport operation. type StartSupportDataExportOutput struct { _ struct{} `type:"structure"` // A unique identifier representing a specific request to the StartSupportDataExport // operation. This identifier can be used to correlate a request with notifications // from the SNS topic. DataSetRequestId *string `locationName:"dataSetRequestId" type:"string"` } // String returns the string representation func (s StartSupportDataExportOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartSupportDataExportOutput) GoString() string { return s.String() } const ( // DataSetTypeCustomerSubscriberHourlyMonthlySubscriptions is a DataSetType enum value DataSetTypeCustomerSubscriberHourlyMonthlySubscriptions = "customer_subscriber_hourly_monthly_subscriptions" // DataSetTypeCustomerSubscriberAnnualSubscriptions is a DataSetType enum value DataSetTypeCustomerSubscriberAnnualSubscriptions = "customer_subscriber_annual_subscriptions" // DataSetTypeDailyBusinessUsageByInstanceType is a DataSetType enum value DataSetTypeDailyBusinessUsageByInstanceType = "daily_business_usage_by_instance_type" // DataSetTypeDailyBusinessFees is a DataSetType enum value DataSetTypeDailyBusinessFees = "daily_business_fees" // DataSetTypeDailyBusinessFreeTrialConversions is a DataSetType enum value DataSetTypeDailyBusinessFreeTrialConversions = "daily_business_free_trial_conversions" // DataSetTypeDailyBusinessNewInstances is a DataSetType enum value DataSetTypeDailyBusinessNewInstances = "daily_business_new_instances" // DataSetTypeDailyBusinessNewProductSubscribers is a DataSetType enum value DataSetTypeDailyBusinessNewProductSubscribers = "daily_business_new_product_subscribers" // DataSetTypeDailyBusinessCanceledProductSubscribers is a DataSetType enum value DataSetTypeDailyBusinessCanceledProductSubscribers = "daily_business_canceled_product_subscribers" // DataSetTypeMonthlyRevenueBillingAndRevenueData is a DataSetType enum value DataSetTypeMonthlyRevenueBillingAndRevenueData = "monthly_revenue_billing_and_revenue_data" // DataSetTypeMonthlyRevenueAnnualSubscriptions is a DataSetType enum value DataSetTypeMonthlyRevenueAnnualSubscriptions = "monthly_revenue_annual_subscriptions" // DataSetTypeDisbursedAmountByProduct is a DataSetType enum value DataSetTypeDisbursedAmountByProduct = "disbursed_amount_by_product" // DataSetTypeDisbursedAmountByProductWithUncollectedFunds is a DataSetType enum value DataSetTypeDisbursedAmountByProductWithUncollectedFunds = "disbursed_amount_by_product_with_uncollected_funds" // DataSetTypeDisbursedAmountByCustomerGeo is a DataSetType enum value DataSetTypeDisbursedAmountByCustomerGeo = "disbursed_amount_by_customer_geo" // DataSetTypeDisbursedAmountByAgeOfUncollectedFunds is a DataSetType enum value DataSetTypeDisbursedAmountByAgeOfUncollectedFunds = "disbursed_amount_by_age_of_uncollected_funds" // DataSetTypeDisbursedAmountByAgeOfDisbursedFunds is a DataSetType enum value DataSetTypeDisbursedAmountByAgeOfDisbursedFunds = "disbursed_amount_by_age_of_disbursed_funds" // DataSetTypeCustomerProfileByIndustry is a DataSetType enum value DataSetTypeCustomerProfileByIndustry = "customer_profile_by_industry" // DataSetTypeCustomerProfileByRevenue is a DataSetType enum value DataSetTypeCustomerProfileByRevenue = "customer_profile_by_revenue" // DataSetTypeCustomerProfileByGeography is a DataSetType enum value DataSetTypeCustomerProfileByGeography = "customer_profile_by_geography" ) const ( // SupportDataSetTypeCustomerSupportContactsData is a SupportDataSetType enum value SupportDataSetTypeCustomerSupportContactsData = "customer_support_contacts_data" // SupportDataSetTypeTestCustomerSupportContactsData is a SupportDataSetType enum value SupportDataSetTypeTestCustomerSupportContactsData = "test_customer_support_contacts_data" ) aws-sdk-go-1.4.22/service/marketplacecommerceanalytics/examples_test.go000066400000000000000000000047751300374646400263570ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package marketplacecommerceanalytics_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/marketplacecommerceanalytics" ) var _ time.Duration var _ bytes.Buffer func ExampleMarketplaceCommerceAnalytics_GenerateDataSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := marketplacecommerceanalytics.New(sess) params := &marketplacecommerceanalytics.GenerateDataSetInput{ DataSetPublicationDate: aws.Time(time.Now()), // Required DataSetType: aws.String("DataSetType"), // Required DestinationS3BucketName: aws.String("DestinationS3BucketName"), // Required RoleNameArn: aws.String("RoleNameArn"), // Required SnsTopicArn: aws.String("SnsTopicArn"), // Required CustomerDefinedValues: map[string]*string{ "Key": aws.String("OptionalValue"), // Required // More values... }, DestinationS3Prefix: aws.String("DestinationS3Prefix"), } resp, err := svc.GenerateDataSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleMarketplaceCommerceAnalytics_StartSupportDataExport() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := marketplacecommerceanalytics.New(sess) params := &marketplacecommerceanalytics.StartSupportDataExportInput{ DataSetType: aws.String("SupportDataSetType"), // Required DestinationS3BucketName: aws.String("DestinationS3BucketName"), // Required FromDate: aws.Time(time.Now()), // Required RoleNameArn: aws.String("RoleNameArn"), // Required SnsTopicArn: aws.String("SnsTopicArn"), // Required CustomerDefinedValues: map[string]*string{ "Key": aws.String("OptionalValue"), // Required // More values... }, DestinationS3Prefix: aws.String("DestinationS3Prefix"), } resp, err := svc.StartSupportDataExport(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/marketplacecommerceanalytics/marketplacecommerceanalyticsiface/000077500000000000000000000000001300374646400320415ustar00rootroot00000000000000interface.go000066400000000000000000000062321300374646400342540ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/marketplacecommerceanalytics/marketplacecommerceanalyticsiface// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package marketplacecommerceanalyticsiface provides an interface to enable mocking the AWS Marketplace Commerce Analytics service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package marketplacecommerceanalyticsiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/marketplacecommerceanalytics" ) // MarketplaceCommerceAnalyticsAPI provides an interface to enable mocking the // marketplacecommerceanalytics.MarketplaceCommerceAnalytics service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Marketplace Commerce Analytics. // func myFunc(svc marketplacecommerceanalyticsiface.MarketplaceCommerceAnalyticsAPI) bool { // // Make svc.GenerateDataSet request // } // // func main() { // sess := session.New() // svc := marketplacecommerceanalytics.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockMarketplaceCommerceAnalyticsClient struct { // marketplacecommerceanalyticsiface.MarketplaceCommerceAnalyticsAPI // } // func (m *mockMarketplaceCommerceAnalyticsClient) GenerateDataSet(input *marketplacecommerceanalytics.GenerateDataSetInput) (*marketplacecommerceanalytics.GenerateDataSetOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockMarketplaceCommerceAnalyticsClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type MarketplaceCommerceAnalyticsAPI interface { GenerateDataSetRequest(*marketplacecommerceanalytics.GenerateDataSetInput) (*request.Request, *marketplacecommerceanalytics.GenerateDataSetOutput) GenerateDataSet(*marketplacecommerceanalytics.GenerateDataSetInput) (*marketplacecommerceanalytics.GenerateDataSetOutput, error) StartSupportDataExportRequest(*marketplacecommerceanalytics.StartSupportDataExportInput) (*request.Request, *marketplacecommerceanalytics.StartSupportDataExportOutput) StartSupportDataExport(*marketplacecommerceanalytics.StartSupportDataExportInput) (*marketplacecommerceanalytics.StartSupportDataExportOutput, error) } var _ MarketplaceCommerceAnalyticsAPI = (*marketplacecommerceanalytics.MarketplaceCommerceAnalytics)(nil) aws-sdk-go-1.4.22/service/marketplacecommerceanalytics/service.go000066400000000000000000000060641300374646400251330ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package marketplacecommerceanalytics import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Provides AWS Marketplace business intelligence data on-demand. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type MarketplaceCommerceAnalytics struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "marketplacecommerceanalytics" // New creates a new instance of the MarketplaceCommerceAnalytics client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a MarketplaceCommerceAnalytics client from just a session. // svc := marketplacecommerceanalytics.New(mySession) // // // Create a MarketplaceCommerceAnalytics client with additional configuration // svc := marketplacecommerceanalytics.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *MarketplaceCommerceAnalytics { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *MarketplaceCommerceAnalytics { svc := &MarketplaceCommerceAnalytics{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningName: "marketplacecommerceanalytics", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-07-01", JSONVersion: "1.1", TargetPrefix: "MarketplaceCommerceAnalytics20150701", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a MarketplaceCommerceAnalytics operation and runs any // custom request initialization. func (c *MarketplaceCommerceAnalytics) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/marketplacemetering/000077500000000000000000000000001300374646400212465ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/marketplacemetering/api.go000066400000000000000000000140571300374646400223550ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package marketplacemetering provides a client for AWSMarketplace Metering. package marketplacemetering import ( "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opMeterUsage = "MeterUsage" // MeterUsageRequest generates a "aws/request.Request" representing the // client's request for the MeterUsage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See MeterUsage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the MeterUsage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the MeterUsageRequest method. // req, resp := client.MeterUsageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MarketplaceMetering) MeterUsageRequest(input *MeterUsageInput) (req *request.Request, output *MeterUsageOutput) { op := &request.Operation{ Name: opMeterUsage, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &MeterUsageInput{} } req = c.newRequest(op, input, output) output = &MeterUsageOutput{} req.Data = output return } // MeterUsage API operation for AWSMarketplace Metering. // // API to emit metering records. For identical requests, the API is idempotent. // It simply returns the metering record ID. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWSMarketplace Metering's // API operation MeterUsage for usage and error information. // // Returned Error Codes: // * InternalServiceErrorException // An internal error has occurred. Retry your request. If the problem persists, // post a message with details on the AWS forums. // // * InvalidProductCodeException // The product code passed does not match the product code used for publishing // the product. // // * InvalidUsageDimensionException // The usage dimension does not match one of the UsageDimensions associated // with products. // // * InvalidEndpointRegionException // The endpoint being called is in a region different from your EC2 instance. // The region of the Metering service endpoint and the region of the EC2 instance // must match. // // * TimestampOutOfBoundsException // The timestamp value passed in the meterUsage() is out of allowed range. // // * DuplicateRequestException // A metering record has already been emitted by the same EC2 instance for the // given {usageDimension, timestamp} with a different usageQuantity. // // * ThrottlingException // The calls to the MeterUsage API are throttled. // func (c *MarketplaceMetering) MeterUsage(input *MeterUsageInput) (*MeterUsageOutput, error) { req, out := c.MeterUsageRequest(input) err := req.Send() return out, err } type MeterUsageInput struct { _ struct{} `type:"structure"` // Checks whether you have the permissions required for the action, but does // not make the request. If you have the permissions, the request returns DryRunOperation; // otherwise, it returns UnauthorizedException. // // DryRun is a required field DryRun *bool `type:"boolean" required:"true"` // Product code is used to uniquely identify a product in AWS Marketplace. The // product code should be the same as the one used during the publishing of // a new product. // // ProductCode is a required field ProductCode *string `min:"1" type:"string" required:"true"` // Timestamp of the hour, recorded in UTC. The seconds and milliseconds portions // of the timestamp will be ignored. // // Timestamp is a required field Timestamp *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` // It will be one of the 'fcp dimension name' provided during the publishing // of the product. // // UsageDimension is a required field UsageDimension *string `min:"1" type:"string" required:"true"` // Consumption value for the hour. // // UsageQuantity is a required field UsageQuantity *int64 `type:"integer" required:"true"` } // String returns the string representation func (s MeterUsageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MeterUsageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MeterUsageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MeterUsageInput"} if s.DryRun == nil { invalidParams.Add(request.NewErrParamRequired("DryRun")) } if s.ProductCode == nil { invalidParams.Add(request.NewErrParamRequired("ProductCode")) } if s.ProductCode != nil && len(*s.ProductCode) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProductCode", 1)) } if s.Timestamp == nil { invalidParams.Add(request.NewErrParamRequired("Timestamp")) } if s.UsageDimension == nil { invalidParams.Add(request.NewErrParamRequired("UsageDimension")) } if s.UsageDimension != nil && len(*s.UsageDimension) < 1 { invalidParams.Add(request.NewErrParamMinLen("UsageDimension", 1)) } if s.UsageQuantity == nil { invalidParams.Add(request.NewErrParamRequired("UsageQuantity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type MeterUsageOutput struct { _ struct{} `type:"structure"` MeteringRecordId *string `type:"string"` } // String returns the string representation func (s MeterUsageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MeterUsageOutput) GoString() string { return s.String() } aws-sdk-go-1.4.22/service/marketplacemetering/examples_test.go000066400000000000000000000021071300374646400244520ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package marketplacemetering_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/marketplacemetering" ) var _ time.Duration var _ bytes.Buffer func ExampleMarketplaceMetering_MeterUsage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := marketplacemetering.New(sess) params := &marketplacemetering.MeterUsageInput{ DryRun: aws.Bool(true), // Required ProductCode: aws.String("ProductCode"), // Required Timestamp: aws.Time(time.Now()), // Required UsageDimension: aws.String("UsageDimension"), // Required UsageQuantity: aws.Int64(1), // Required } resp, err := svc.MeterUsage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/marketplacemetering/marketplacemeteringiface/000077500000000000000000000000001300374646400262615ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/marketplacemetering/marketplacemeteringiface/interface.go000066400000000000000000000050701300374646400305520ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package marketplacemeteringiface provides an interface to enable mocking the AWSMarketplace Metering service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package marketplacemeteringiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/marketplacemetering" ) // MarketplaceMeteringAPI provides an interface to enable mocking the // marketplacemetering.MarketplaceMetering service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWSMarketplace Metering. // func myFunc(svc marketplacemeteringiface.MarketplaceMeteringAPI) bool { // // Make svc.MeterUsage request // } // // func main() { // sess := session.New() // svc := marketplacemetering.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockMarketplaceMeteringClient struct { // marketplacemeteringiface.MarketplaceMeteringAPI // } // func (m *mockMarketplaceMeteringClient) MeterUsage(input *marketplacemetering.MeterUsageInput) (*marketplacemetering.MeterUsageOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockMarketplaceMeteringClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type MarketplaceMeteringAPI interface { MeterUsageRequest(*marketplacemetering.MeterUsageInput) (*request.Request, *marketplacemetering.MeterUsageOutput) MeterUsage(*marketplacemetering.MeterUsageInput) (*marketplacemetering.MeterUsageOutput, error) } var _ MarketplaceMeteringAPI = (*marketplacemetering.MarketplaceMetering)(nil) aws-sdk-go-1.4.22/service/marketplacemetering/service.go000066400000000000000000000062271300374646400232440ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package marketplacemetering import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // This reference provides descriptions of the low-level AWS Marketplace Metering // Service API. // // AWS Marketplace sellers can use this API to submit usage data for custom // usage dimensions. // // Submitting Metering Records // // * MeterUsage- Submits the metering record for a Marketplace product. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type MarketplaceMetering struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "metering.marketplace" // New creates a new instance of the MarketplaceMetering client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a MarketplaceMetering client from just a session. // svc := marketplacemetering.New(mySession) // // // Create a MarketplaceMetering client with additional configuration // svc := marketplacemetering.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *MarketplaceMetering { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *MarketplaceMetering { svc := &MarketplaceMetering{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningName: "aws-marketplace", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2016-01-14", JSONVersion: "1.1", TargetPrefix: "AWSMPMeteringService", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a MarketplaceMetering operation and runs any // custom request initialization. func (c *MarketplaceMetering) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/mobileanalytics/000077500000000000000000000000001300374646400204025ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/mobileanalytics/api.go000066400000000000000000000201311300374646400214770ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package mobileanalytics provides a client for Amazon Mobile Analytics. package mobileanalytics import ( "fmt" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) const opPutEvents = "PutEvents" // PutEventsRequest generates a "aws/request.Request" representing the // client's request for the PutEvents operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutEvents for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutEvents method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutEventsRequest method. // req, resp := client.PutEventsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *MobileAnalytics) PutEventsRequest(input *PutEventsInput) (req *request.Request, output *PutEventsOutput) { op := &request.Operation{ Name: opPutEvents, HTTPMethod: "POST", HTTPPath: "/2014-06-05/events", } if input == nil { input = &PutEventsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutEventsOutput{} req.Data = output return } // PutEvents API operation for Amazon Mobile Analytics. // // The PutEvents operation records one or more events. You can have up to 1,500 // unique custom events per app, any combination of up to 40 attributes and // metrics per custom event, and any number of attribute or metric values. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Mobile Analytics's // API operation PutEvents for usage and error information. // // Returned Error Codes: // * BadRequestException // An exception object returned when a request fails. // func (c *MobileAnalytics) PutEvents(input *PutEventsInput) (*PutEventsOutput, error) { req, out := c.PutEventsRequest(input) err := req.Send() return out, err } // A JSON object representing a batch of unique event occurrences in your app. type Event struct { _ struct{} `type:"structure"` // A collection of key-value pairs that give additional context to the event. // The key-value pairs are specified by the developer. // // This collection can be empty or the attribute object can be omitted. Attributes map[string]*string `locationName:"attributes" type:"map"` // A name signifying an event that occurred in your app. This is used for grouping // and aggregating like events together for reporting purposes. // // EventType is a required field EventType *string `locationName:"eventType" min:"1" type:"string" required:"true"` // A collection of key-value pairs that gives additional, measurable context // to the event. The key-value pairs are specified by the developer. // // This collection can be empty or the attribute object can be omitted. Metrics map[string]*float64 `locationName:"metrics" type:"map"` // The session the event occured within. Session *Session `locationName:"session" type:"structure"` // The time the event occurred in ISO 8601 standard date time format. For example, // 2014-06-30T19:07:47.885Z // // Timestamp is a required field Timestamp *string `locationName:"timestamp" type:"string" required:"true"` // The version of the event. Version *string `locationName:"version" min:"1" type:"string"` } // String returns the string representation func (s Event) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Event) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Event) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Event"} if s.EventType == nil { invalidParams.Add(request.NewErrParamRequired("EventType")) } if s.EventType != nil && len(*s.EventType) < 1 { invalidParams.Add(request.NewErrParamMinLen("EventType", 1)) } if s.Timestamp == nil { invalidParams.Add(request.NewErrParamRequired("Timestamp")) } if s.Version != nil && len(*s.Version) < 1 { invalidParams.Add(request.NewErrParamMinLen("Version", 1)) } if s.Session != nil { if err := s.Session.Validate(); err != nil { invalidParams.AddNested("Session", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A container for the data needed for a PutEvent operation type PutEventsInput struct { _ struct{} `type:"structure"` // The client context including the client ID, app title, app version and package // name. // // ClientContext is a required field ClientContext *string `location:"header" locationName:"x-amz-Client-Context" type:"string" required:"true"` // The encoding used for the client context. ClientContextEncoding *string `location:"header" locationName:"x-amz-Client-Context-Encoding" type:"string"` // An array of Event JSON objects // // Events is a required field Events []*Event `locationName:"events" type:"list" required:"true"` } // String returns the string representation func (s PutEventsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutEventsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutEventsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutEventsInput"} if s.ClientContext == nil { invalidParams.Add(request.NewErrParamRequired("ClientContext")) } if s.Events == nil { invalidParams.Add(request.NewErrParamRequired("Events")) } if s.Events != nil { for i, v := range s.Events { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Events", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutEventsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutEventsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutEventsOutput) GoString() string { return s.String() } // Describes the session. Session information is required on ALL events. type Session struct { _ struct{} `type:"structure"` // The duration of the session. Duration *int64 `locationName:"duration" type:"long"` // A unique identifier for the session Id *string `locationName:"id" min:"1" type:"string"` // The time the event started in ISO 8601 standard date time format. For example, // 2014-06-30T19:07:47.885Z StartTimestamp *string `locationName:"startTimestamp" type:"string"` // The time the event terminated in ISO 8601 standard date time format. For // example, 2014-06-30T19:07:47.885Z StopTimestamp *string `locationName:"stopTimestamp" type:"string"` } // String returns the string representation func (s Session) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Session) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Session) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Session"} if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } aws-sdk-go-1.4.22/service/mobileanalytics/examples_test.go000066400000000000000000000030721300374646400236100ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package mobileanalytics_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/mobileanalytics" ) var _ time.Duration var _ bytes.Buffer func ExampleMobileAnalytics_PutEvents() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := mobileanalytics.New(sess) params := &mobileanalytics.PutEventsInput{ ClientContext: aws.String("String"), // Required Events: []*mobileanalytics.Event{ // Required { // Required EventType: aws.String("String50Chars"), // Required Timestamp: aws.String("ISO8601Timestamp"), // Required Attributes: map[string]*string{ "Key": aws.String("String0to1000Chars"), // Required // More values... }, Metrics: map[string]*float64{ "Key": aws.Float64(1.0), // Required // More values... }, Session: &mobileanalytics.Session{ Duration: aws.Int64(1), Id: aws.String("String50Chars"), StartTimestamp: aws.String("ISO8601Timestamp"), StopTimestamp: aws.String("ISO8601Timestamp"), }, Version: aws.String("String10Chars"), }, // More values... }, ClientContextEncoding: aws.String("String"), } resp, err := svc.PutEvents(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/mobileanalytics/mobileanalyticsiface/000077500000000000000000000000001300374646400245515ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/mobileanalytics/mobileanalyticsiface/interface.go000066400000000000000000000047161300374646400270500ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package mobileanalyticsiface provides an interface to enable mocking the Amazon Mobile Analytics service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package mobileanalyticsiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/mobileanalytics" ) // MobileAnalyticsAPI provides an interface to enable mocking the // mobileanalytics.MobileAnalytics service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Mobile Analytics. // func myFunc(svc mobileanalyticsiface.MobileAnalyticsAPI) bool { // // Make svc.PutEvents request // } // // func main() { // sess := session.New() // svc := mobileanalytics.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockMobileAnalyticsClient struct { // mobileanalyticsiface.MobileAnalyticsAPI // } // func (m *mockMobileAnalyticsClient) PutEvents(input *mobileanalytics.PutEventsInput) (*mobileanalytics.PutEventsOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockMobileAnalyticsClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type MobileAnalyticsAPI interface { PutEventsRequest(*mobileanalytics.PutEventsInput) (*request.Request, *mobileanalytics.PutEventsOutput) PutEvents(*mobileanalytics.PutEventsInput) (*mobileanalytics.PutEventsOutput, error) } var _ MobileAnalyticsAPI = (*mobileanalytics.MobileAnalytics)(nil) aws-sdk-go-1.4.22/service/mobileanalytics/service.go000066400000000000000000000054711300374646400224000ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package mobileanalytics import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) // Amazon Mobile Analytics is a service for collecting, visualizing, and understanding // app usage data at scale. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type MobileAnalytics struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "mobileanalytics" // New creates a new instance of the MobileAnalytics client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a MobileAnalytics client from just a session. // svc := mobileanalytics.New(mySession) // // // Create a MobileAnalytics client with additional configuration // svc := mobileanalytics.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *MobileAnalytics { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *MobileAnalytics { svc := &MobileAnalytics{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-06-05", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restjson.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a MobileAnalytics operation and runs any // custom request initialization. func (c *MobileAnalytics) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/opsworks/000077500000000000000000000000001300374646400171125ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/opsworks/api.go000066400000000000000000014411721300374646400202240ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package opsworks provides a client for AWS OpsWorks. package opsworks import ( "fmt" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opAssignInstance = "AssignInstance" // AssignInstanceRequest generates a "aws/request.Request" representing the // client's request for the AssignInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AssignInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AssignInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AssignInstanceRequest method. // req, resp := client.AssignInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) AssignInstanceRequest(input *AssignInstanceInput) (req *request.Request, output *AssignInstanceOutput) { op := &request.Operation{ Name: opAssignInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AssignInstanceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AssignInstanceOutput{} req.Data = output return } // AssignInstance API operation for AWS OpsWorks. // // Assign a registered instance to a layer. // // * You can assign registered on-premises instances to any layer type. // // * You can assign registered Amazon EC2 instances only to custom layers. // // * You cannot use this action with instances that were created with AWS // OpsWorks. // // Required Permissions: To use this action, an AWS Identity and Access Management // (IAM) user must have a Manage permissions level for the stack or an attached // policy that explicitly grants permissions. For more information on user permissions, // see Managing User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation AssignInstance for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) AssignInstance(input *AssignInstanceInput) (*AssignInstanceOutput, error) { req, out := c.AssignInstanceRequest(input) err := req.Send() return out, err } const opAssignVolume = "AssignVolume" // AssignVolumeRequest generates a "aws/request.Request" representing the // client's request for the AssignVolume operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AssignVolume for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AssignVolume method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AssignVolumeRequest method. // req, resp := client.AssignVolumeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) AssignVolumeRequest(input *AssignVolumeInput) (req *request.Request, output *AssignVolumeOutput) { op := &request.Operation{ Name: opAssignVolume, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AssignVolumeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AssignVolumeOutput{} req.Data = output return } // AssignVolume API operation for AWS OpsWorks. // // Assigns one of the stack's registered Amazon EBS volumes to a specified instance. // The volume must first be registered with the stack by calling RegisterVolume. // After you register the volume, you must call UpdateVolume to specify a mount // point before calling AssignVolume. For more information, see Resource Management // (http://docs.aws.amazon.com/opsworks/latest/userguide/resources.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation AssignVolume for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) AssignVolume(input *AssignVolumeInput) (*AssignVolumeOutput, error) { req, out := c.AssignVolumeRequest(input) err := req.Send() return out, err } const opAssociateElasticIp = "AssociateElasticIp" // AssociateElasticIpRequest generates a "aws/request.Request" representing the // client's request for the AssociateElasticIp operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AssociateElasticIp for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AssociateElasticIp method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AssociateElasticIpRequest method. // req, resp := client.AssociateElasticIpRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) AssociateElasticIpRequest(input *AssociateElasticIpInput) (req *request.Request, output *AssociateElasticIpOutput) { op := &request.Operation{ Name: opAssociateElasticIp, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AssociateElasticIpInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AssociateElasticIpOutput{} req.Data = output return } // AssociateElasticIp API operation for AWS OpsWorks. // // Associates one of the stack's registered Elastic IP addresses with a specified // instance. The address must first be registered with the stack by calling // RegisterElasticIp. For more information, see Resource Management (http://docs.aws.amazon.com/opsworks/latest/userguide/resources.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation AssociateElasticIp for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) AssociateElasticIp(input *AssociateElasticIpInput) (*AssociateElasticIpOutput, error) { req, out := c.AssociateElasticIpRequest(input) err := req.Send() return out, err } const opAttachElasticLoadBalancer = "AttachElasticLoadBalancer" // AttachElasticLoadBalancerRequest generates a "aws/request.Request" representing the // client's request for the AttachElasticLoadBalancer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AttachElasticLoadBalancer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AttachElasticLoadBalancer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AttachElasticLoadBalancerRequest method. // req, resp := client.AttachElasticLoadBalancerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) AttachElasticLoadBalancerRequest(input *AttachElasticLoadBalancerInput) (req *request.Request, output *AttachElasticLoadBalancerOutput) { op := &request.Operation{ Name: opAttachElasticLoadBalancer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AttachElasticLoadBalancerInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AttachElasticLoadBalancerOutput{} req.Data = output return } // AttachElasticLoadBalancer API operation for AWS OpsWorks. // // Attaches an Elastic Load Balancing load balancer to a specified layer. For // more information, see Elastic Load Balancing (http://docs.aws.amazon.com/opsworks/latest/userguide/load-balancer-elb.html). // // You must create the Elastic Load Balancing instance separately, by using // the Elastic Load Balancing console, API, or CLI. For more information, see // Elastic Load Balancing Developer Guide (http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/Welcome.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation AttachElasticLoadBalancer for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) AttachElasticLoadBalancer(input *AttachElasticLoadBalancerInput) (*AttachElasticLoadBalancerOutput, error) { req, out := c.AttachElasticLoadBalancerRequest(input) err := req.Send() return out, err } const opCloneStack = "CloneStack" // CloneStackRequest generates a "aws/request.Request" representing the // client's request for the CloneStack operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CloneStack for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CloneStack method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CloneStackRequest method. // req, resp := client.CloneStackRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) CloneStackRequest(input *CloneStackInput) (req *request.Request, output *CloneStackOutput) { op := &request.Operation{ Name: opCloneStack, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CloneStackInput{} } req = c.newRequest(op, input, output) output = &CloneStackOutput{} req.Data = output return } // CloneStack API operation for AWS OpsWorks. // // Creates a clone of a specified stack. For more information, see Clone a Stack // (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-cloning.html). // By default, all parameters are set to the values used by the parent stack. // // Required Permissions: To use this action, an IAM user must have an attached // policy that explicitly grants permissions. For more information on user permissions, // see Managing User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation CloneStack for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) CloneStack(input *CloneStackInput) (*CloneStackOutput, error) { req, out := c.CloneStackRequest(input) err := req.Send() return out, err } const opCreateApp = "CreateApp" // CreateAppRequest generates a "aws/request.Request" representing the // client's request for the CreateApp operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateApp for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateApp method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateAppRequest method. // req, resp := client.CreateAppRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) CreateAppRequest(input *CreateAppInput) (req *request.Request, output *CreateAppOutput) { op := &request.Operation{ Name: opCreateApp, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateAppInput{} } req = c.newRequest(op, input, output) output = &CreateAppOutput{} req.Data = output return } // CreateApp API operation for AWS OpsWorks. // // Creates an app for a specified stack. For more information, see Creating // Apps (http://docs.aws.amazon.com/opsworks/latest/userguide/workingapps-creating.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation CreateApp for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) CreateApp(input *CreateAppInput) (*CreateAppOutput, error) { req, out := c.CreateAppRequest(input) err := req.Send() return out, err } const opCreateDeployment = "CreateDeployment" // CreateDeploymentRequest generates a "aws/request.Request" representing the // client's request for the CreateDeployment operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDeployment for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDeployment method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDeploymentRequest method. // req, resp := client.CreateDeploymentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) CreateDeploymentRequest(input *CreateDeploymentInput) (req *request.Request, output *CreateDeploymentOutput) { op := &request.Operation{ Name: opCreateDeployment, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDeploymentInput{} } req = c.newRequest(op, input, output) output = &CreateDeploymentOutput{} req.Data = output return } // CreateDeployment API operation for AWS OpsWorks. // // Runs deployment or stack commands. For more information, see Deploying Apps // (http://docs.aws.amazon.com/opsworks/latest/userguide/workingapps-deploying.html) // and Run Stack Commands (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-commands.html). // // Required Permissions: To use this action, an IAM user must have a Deploy // or Manage permissions level for the stack, or an attached policy that explicitly // grants permissions. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation CreateDeployment for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) CreateDeployment(input *CreateDeploymentInput) (*CreateDeploymentOutput, error) { req, out := c.CreateDeploymentRequest(input) err := req.Send() return out, err } const opCreateInstance = "CreateInstance" // CreateInstanceRequest generates a "aws/request.Request" representing the // client's request for the CreateInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateInstanceRequest method. // req, resp := client.CreateInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) CreateInstanceRequest(input *CreateInstanceInput) (req *request.Request, output *CreateInstanceOutput) { op := &request.Operation{ Name: opCreateInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateInstanceInput{} } req = c.newRequest(op, input, output) output = &CreateInstanceOutput{} req.Data = output return } // CreateInstance API operation for AWS OpsWorks. // // Creates an instance in a specified stack. For more information, see Adding // an Instance to a Layer (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-add.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation CreateInstance for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) CreateInstance(input *CreateInstanceInput) (*CreateInstanceOutput, error) { req, out := c.CreateInstanceRequest(input) err := req.Send() return out, err } const opCreateLayer = "CreateLayer" // CreateLayerRequest generates a "aws/request.Request" representing the // client's request for the CreateLayer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateLayer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateLayer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateLayerRequest method. // req, resp := client.CreateLayerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) CreateLayerRequest(input *CreateLayerInput) (req *request.Request, output *CreateLayerOutput) { op := &request.Operation{ Name: opCreateLayer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateLayerInput{} } req = c.newRequest(op, input, output) output = &CreateLayerOutput{} req.Data = output return } // CreateLayer API operation for AWS OpsWorks. // // Creates a layer. For more information, see How to Create a Layer (http://docs.aws.amazon.com/opsworks/latest/userguide/workinglayers-basics-create.html). // // You should use CreateLayer for noncustom layer types such as PHP App Server // only if the stack does not have an existing layer of that type. A stack can // have at most one instance of each noncustom layer; if you attempt to create // a second instance, CreateLayer fails. A stack can have an arbitrary number // of custom layers, so you can call CreateLayer as many times as you like for // that layer type. // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation CreateLayer for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) CreateLayer(input *CreateLayerInput) (*CreateLayerOutput, error) { req, out := c.CreateLayerRequest(input) err := req.Send() return out, err } const opCreateStack = "CreateStack" // CreateStackRequest generates a "aws/request.Request" representing the // client's request for the CreateStack operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateStack for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateStack method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateStackRequest method. // req, resp := client.CreateStackRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) CreateStackRequest(input *CreateStackInput) (req *request.Request, output *CreateStackOutput) { op := &request.Operation{ Name: opCreateStack, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateStackInput{} } req = c.newRequest(op, input, output) output = &CreateStackOutput{} req.Data = output return } // CreateStack API operation for AWS OpsWorks. // // Creates a new stack. For more information, see Create a New Stack (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-edit.html). // // Required Permissions: To use this action, an IAM user must have an attached // policy that explicitly grants permissions. For more information on user permissions, // see Managing User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation CreateStack for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // func (c *OpsWorks) CreateStack(input *CreateStackInput) (*CreateStackOutput, error) { req, out := c.CreateStackRequest(input) err := req.Send() return out, err } const opCreateUserProfile = "CreateUserProfile" // CreateUserProfileRequest generates a "aws/request.Request" representing the // client's request for the CreateUserProfile operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateUserProfile for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateUserProfile method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateUserProfileRequest method. // req, resp := client.CreateUserProfileRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) CreateUserProfileRequest(input *CreateUserProfileInput) (req *request.Request, output *CreateUserProfileOutput) { op := &request.Operation{ Name: opCreateUserProfile, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateUserProfileInput{} } req = c.newRequest(op, input, output) output = &CreateUserProfileOutput{} req.Data = output return } // CreateUserProfile API operation for AWS OpsWorks. // // Creates a new user profile. // // Required Permissions: To use this action, an IAM user must have an attached // policy that explicitly grants permissions. For more information on user permissions, // see Managing User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation CreateUserProfile for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // func (c *OpsWorks) CreateUserProfile(input *CreateUserProfileInput) (*CreateUserProfileOutput, error) { req, out := c.CreateUserProfileRequest(input) err := req.Send() return out, err } const opDeleteApp = "DeleteApp" // DeleteAppRequest generates a "aws/request.Request" representing the // client's request for the DeleteApp operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteApp for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteApp method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteAppRequest method. // req, resp := client.DeleteAppRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DeleteAppRequest(input *DeleteAppInput) (req *request.Request, output *DeleteAppOutput) { op := &request.Operation{ Name: opDeleteApp, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteAppInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteAppOutput{} req.Data = output return } // DeleteApp API operation for AWS OpsWorks. // // Deletes a specified app. // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DeleteApp for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DeleteApp(input *DeleteAppInput) (*DeleteAppOutput, error) { req, out := c.DeleteAppRequest(input) err := req.Send() return out, err } const opDeleteInstance = "DeleteInstance" // DeleteInstanceRequest generates a "aws/request.Request" representing the // client's request for the DeleteInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteInstanceRequest method. // req, resp := client.DeleteInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DeleteInstanceRequest(input *DeleteInstanceInput) (req *request.Request, output *DeleteInstanceOutput) { op := &request.Operation{ Name: opDeleteInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteInstanceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteInstanceOutput{} req.Data = output return } // DeleteInstance API operation for AWS OpsWorks. // // Deletes a specified instance, which terminates the associated Amazon EC2 // instance. You must stop an instance before you can delete it. // // For more information, see Deleting Instances (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-delete.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DeleteInstance for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DeleteInstance(input *DeleteInstanceInput) (*DeleteInstanceOutput, error) { req, out := c.DeleteInstanceRequest(input) err := req.Send() return out, err } const opDeleteLayer = "DeleteLayer" // DeleteLayerRequest generates a "aws/request.Request" representing the // client's request for the DeleteLayer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteLayer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteLayer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteLayerRequest method. // req, resp := client.DeleteLayerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DeleteLayerRequest(input *DeleteLayerInput) (req *request.Request, output *DeleteLayerOutput) { op := &request.Operation{ Name: opDeleteLayer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteLayerInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteLayerOutput{} req.Data = output return } // DeleteLayer API operation for AWS OpsWorks. // // Deletes a specified layer. You must first stop and then delete all associated // instances or unassign registered instances. For more information, see How // to Delete a Layer (http://docs.aws.amazon.com/opsworks/latest/userguide/workinglayers-basics-delete.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DeleteLayer for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DeleteLayer(input *DeleteLayerInput) (*DeleteLayerOutput, error) { req, out := c.DeleteLayerRequest(input) err := req.Send() return out, err } const opDeleteStack = "DeleteStack" // DeleteStackRequest generates a "aws/request.Request" representing the // client's request for the DeleteStack operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteStack for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteStack method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteStackRequest method. // req, resp := client.DeleteStackRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DeleteStackRequest(input *DeleteStackInput) (req *request.Request, output *DeleteStackOutput) { op := &request.Operation{ Name: opDeleteStack, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteStackInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteStackOutput{} req.Data = output return } // DeleteStack API operation for AWS OpsWorks. // // Deletes a specified stack. You must first delete all instances, layers, and // apps or deregister registered instances. For more information, see Shut Down // a Stack (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-shutting.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DeleteStack for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DeleteStack(input *DeleteStackInput) (*DeleteStackOutput, error) { req, out := c.DeleteStackRequest(input) err := req.Send() return out, err } const opDeleteUserProfile = "DeleteUserProfile" // DeleteUserProfileRequest generates a "aws/request.Request" representing the // client's request for the DeleteUserProfile operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteUserProfile for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteUserProfile method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteUserProfileRequest method. // req, resp := client.DeleteUserProfileRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DeleteUserProfileRequest(input *DeleteUserProfileInput) (req *request.Request, output *DeleteUserProfileOutput) { op := &request.Operation{ Name: opDeleteUserProfile, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteUserProfileInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteUserProfileOutput{} req.Data = output return } // DeleteUserProfile API operation for AWS OpsWorks. // // Deletes a user profile. // // Required Permissions: To use this action, an IAM user must have an attached // policy that explicitly grants permissions. For more information on user permissions, // see Managing User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DeleteUserProfile for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DeleteUserProfile(input *DeleteUserProfileInput) (*DeleteUserProfileOutput, error) { req, out := c.DeleteUserProfileRequest(input) err := req.Send() return out, err } const opDeregisterEcsCluster = "DeregisterEcsCluster" // DeregisterEcsClusterRequest generates a "aws/request.Request" representing the // client's request for the DeregisterEcsCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeregisterEcsCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeregisterEcsCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeregisterEcsClusterRequest method. // req, resp := client.DeregisterEcsClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DeregisterEcsClusterRequest(input *DeregisterEcsClusterInput) (req *request.Request, output *DeregisterEcsClusterOutput) { op := &request.Operation{ Name: opDeregisterEcsCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeregisterEcsClusterInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeregisterEcsClusterOutput{} req.Data = output return } // DeregisterEcsCluster API operation for AWS OpsWorks. // // Deregisters a specified Amazon ECS cluster from a stack. For more information, // see Resource Management (http://docs.aws.amazon.com/opsworks/latest/userguide/workinglayers-ecscluster.html#workinglayers-ecscluster-delete). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack or an attached policy that explicitly grants // permissions. For more information on user permissions, see http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html // (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DeregisterEcsCluster for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DeregisterEcsCluster(input *DeregisterEcsClusterInput) (*DeregisterEcsClusterOutput, error) { req, out := c.DeregisterEcsClusterRequest(input) err := req.Send() return out, err } const opDeregisterElasticIp = "DeregisterElasticIp" // DeregisterElasticIpRequest generates a "aws/request.Request" representing the // client's request for the DeregisterElasticIp operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeregisterElasticIp for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeregisterElasticIp method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeregisterElasticIpRequest method. // req, resp := client.DeregisterElasticIpRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DeregisterElasticIpRequest(input *DeregisterElasticIpInput) (req *request.Request, output *DeregisterElasticIpOutput) { op := &request.Operation{ Name: opDeregisterElasticIp, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeregisterElasticIpInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeregisterElasticIpOutput{} req.Data = output return } // DeregisterElasticIp API operation for AWS OpsWorks. // // Deregisters a specified Elastic IP address. The address can then be registered // by another stack. For more information, see Resource Management (http://docs.aws.amazon.com/opsworks/latest/userguide/resources.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DeregisterElasticIp for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DeregisterElasticIp(input *DeregisterElasticIpInput) (*DeregisterElasticIpOutput, error) { req, out := c.DeregisterElasticIpRequest(input) err := req.Send() return out, err } const opDeregisterInstance = "DeregisterInstance" // DeregisterInstanceRequest generates a "aws/request.Request" representing the // client's request for the DeregisterInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeregisterInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeregisterInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeregisterInstanceRequest method. // req, resp := client.DeregisterInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DeregisterInstanceRequest(input *DeregisterInstanceInput) (req *request.Request, output *DeregisterInstanceOutput) { op := &request.Operation{ Name: opDeregisterInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeregisterInstanceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeregisterInstanceOutput{} req.Data = output return } // DeregisterInstance API operation for AWS OpsWorks. // // Deregister a registered Amazon EC2 or on-premises instance. This action removes // the instance from the stack and returns it to your control. This action can // not be used with instances that were created with AWS OpsWorks. // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DeregisterInstance for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DeregisterInstance(input *DeregisterInstanceInput) (*DeregisterInstanceOutput, error) { req, out := c.DeregisterInstanceRequest(input) err := req.Send() return out, err } const opDeregisterRdsDbInstance = "DeregisterRdsDbInstance" // DeregisterRdsDbInstanceRequest generates a "aws/request.Request" representing the // client's request for the DeregisterRdsDbInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeregisterRdsDbInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeregisterRdsDbInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeregisterRdsDbInstanceRequest method. // req, resp := client.DeregisterRdsDbInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DeregisterRdsDbInstanceRequest(input *DeregisterRdsDbInstanceInput) (req *request.Request, output *DeregisterRdsDbInstanceOutput) { op := &request.Operation{ Name: opDeregisterRdsDbInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeregisterRdsDbInstanceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeregisterRdsDbInstanceOutput{} req.Data = output return } // DeregisterRdsDbInstance API operation for AWS OpsWorks. // // Deregisters an Amazon RDS instance. // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DeregisterRdsDbInstance for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DeregisterRdsDbInstance(input *DeregisterRdsDbInstanceInput) (*DeregisterRdsDbInstanceOutput, error) { req, out := c.DeregisterRdsDbInstanceRequest(input) err := req.Send() return out, err } const opDeregisterVolume = "DeregisterVolume" // DeregisterVolumeRequest generates a "aws/request.Request" representing the // client's request for the DeregisterVolume operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeregisterVolume for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeregisterVolume method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeregisterVolumeRequest method. // req, resp := client.DeregisterVolumeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DeregisterVolumeRequest(input *DeregisterVolumeInput) (req *request.Request, output *DeregisterVolumeOutput) { op := &request.Operation{ Name: opDeregisterVolume, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeregisterVolumeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeregisterVolumeOutput{} req.Data = output return } // DeregisterVolume API operation for AWS OpsWorks. // // Deregisters an Amazon EBS volume. The volume can then be registered by another // stack. For more information, see Resource Management (http://docs.aws.amazon.com/opsworks/latest/userguide/resources.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DeregisterVolume for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DeregisterVolume(input *DeregisterVolumeInput) (*DeregisterVolumeOutput, error) { req, out := c.DeregisterVolumeRequest(input) err := req.Send() return out, err } const opDescribeAgentVersions = "DescribeAgentVersions" // DescribeAgentVersionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeAgentVersions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAgentVersions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAgentVersions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAgentVersionsRequest method. // req, resp := client.DescribeAgentVersionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeAgentVersionsRequest(input *DescribeAgentVersionsInput) (req *request.Request, output *DescribeAgentVersionsOutput) { op := &request.Operation{ Name: opDescribeAgentVersions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAgentVersionsInput{} } req = c.newRequest(op, input, output) output = &DescribeAgentVersionsOutput{} req.Data = output return } // DescribeAgentVersions API operation for AWS OpsWorks. // // Describes the available AWS OpsWorks agent versions. You must specify a stack // ID or a configuration manager. DescribeAgentVersions returns a list of available // agent versions for the specified stack or configuration manager. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeAgentVersions for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeAgentVersions(input *DescribeAgentVersionsInput) (*DescribeAgentVersionsOutput, error) { req, out := c.DescribeAgentVersionsRequest(input) err := req.Send() return out, err } const opDescribeApps = "DescribeApps" // DescribeAppsRequest generates a "aws/request.Request" representing the // client's request for the DescribeApps operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeApps for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeApps method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAppsRequest method. // req, resp := client.DescribeAppsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeAppsRequest(input *DescribeAppsInput) (req *request.Request, output *DescribeAppsOutput) { op := &request.Operation{ Name: opDescribeApps, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAppsInput{} } req = c.newRequest(op, input, output) output = &DescribeAppsOutput{} req.Data = output return } // DescribeApps API operation for AWS OpsWorks. // // Requests a description of a specified set of apps. // // You must specify at least one of the parameters. // // Required Permissions: To use this action, an IAM user must have a Show, Deploy, // or Manage permissions level for the stack, or an attached policy that explicitly // grants permissions. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeApps for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeApps(input *DescribeAppsInput) (*DescribeAppsOutput, error) { req, out := c.DescribeAppsRequest(input) err := req.Send() return out, err } const opDescribeCommands = "DescribeCommands" // DescribeCommandsRequest generates a "aws/request.Request" representing the // client's request for the DescribeCommands operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCommands for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCommands method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeCommandsRequest method. // req, resp := client.DescribeCommandsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeCommandsRequest(input *DescribeCommandsInput) (req *request.Request, output *DescribeCommandsOutput) { op := &request.Operation{ Name: opDescribeCommands, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeCommandsInput{} } req = c.newRequest(op, input, output) output = &DescribeCommandsOutput{} req.Data = output return } // DescribeCommands API operation for AWS OpsWorks. // // Describes the results of specified commands. // // You must specify at least one of the parameters. // // Required Permissions: To use this action, an IAM user must have a Show, Deploy, // or Manage permissions level for the stack, or an attached policy that explicitly // grants permissions. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeCommands for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeCommands(input *DescribeCommandsInput) (*DescribeCommandsOutput, error) { req, out := c.DescribeCommandsRequest(input) err := req.Send() return out, err } const opDescribeDeployments = "DescribeDeployments" // DescribeDeploymentsRequest generates a "aws/request.Request" representing the // client's request for the DescribeDeployments operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDeployments for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDeployments method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDeploymentsRequest method. // req, resp := client.DescribeDeploymentsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeDeploymentsRequest(input *DescribeDeploymentsInput) (req *request.Request, output *DescribeDeploymentsOutput) { op := &request.Operation{ Name: opDescribeDeployments, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeDeploymentsInput{} } req = c.newRequest(op, input, output) output = &DescribeDeploymentsOutput{} req.Data = output return } // DescribeDeployments API operation for AWS OpsWorks. // // Requests a description of a specified set of deployments. // // You must specify at least one of the parameters. // // Required Permissions: To use this action, an IAM user must have a Show, Deploy, // or Manage permissions level for the stack, or an attached policy that explicitly // grants permissions. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeDeployments for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeDeployments(input *DescribeDeploymentsInput) (*DescribeDeploymentsOutput, error) { req, out := c.DescribeDeploymentsRequest(input) err := req.Send() return out, err } const opDescribeEcsClusters = "DescribeEcsClusters" // DescribeEcsClustersRequest generates a "aws/request.Request" representing the // client's request for the DescribeEcsClusters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEcsClusters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEcsClusters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEcsClustersRequest method. // req, resp := client.DescribeEcsClustersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeEcsClustersRequest(input *DescribeEcsClustersInput) (req *request.Request, output *DescribeEcsClustersOutput) { op := &request.Operation{ Name: opDescribeEcsClusters, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &DescribeEcsClustersInput{} } req = c.newRequest(op, input, output) output = &DescribeEcsClustersOutput{} req.Data = output return } // DescribeEcsClusters API operation for AWS OpsWorks. // // Describes Amazon ECS clusters that are registered with a stack. If you specify // only a stack ID, you can use the MaxResults and NextToken parameters to paginate // the response. However, AWS OpsWorks currently supports only one cluster per // layer, so the result set has a maximum of one element. // // Required Permissions: To use this action, an IAM user must have a Show, Deploy, // or Manage permissions level for the stack or an attached policy that explicitly // grants permission. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeEcsClusters for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeEcsClusters(input *DescribeEcsClustersInput) (*DescribeEcsClustersOutput, error) { req, out := c.DescribeEcsClustersRequest(input) err := req.Send() return out, err } // DescribeEcsClustersPages iterates over the pages of a DescribeEcsClusters operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeEcsClusters method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeEcsClusters operation. // pageNum := 0 // err := client.DescribeEcsClustersPages(params, // func(page *DescribeEcsClustersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *OpsWorks) DescribeEcsClustersPages(input *DescribeEcsClustersInput, fn func(p *DescribeEcsClustersOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeEcsClustersRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeEcsClustersOutput), lastPage) }) } const opDescribeElasticIps = "DescribeElasticIps" // DescribeElasticIpsRequest generates a "aws/request.Request" representing the // client's request for the DescribeElasticIps operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeElasticIps for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeElasticIps method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeElasticIpsRequest method. // req, resp := client.DescribeElasticIpsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeElasticIpsRequest(input *DescribeElasticIpsInput) (req *request.Request, output *DescribeElasticIpsOutput) { op := &request.Operation{ Name: opDescribeElasticIps, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeElasticIpsInput{} } req = c.newRequest(op, input, output) output = &DescribeElasticIpsOutput{} req.Data = output return } // DescribeElasticIps API operation for AWS OpsWorks. // // Describes Elastic IP addresses (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html). // // You must specify at least one of the parameters. // // Required Permissions: To use this action, an IAM user must have a Show, Deploy, // or Manage permissions level for the stack, or an attached policy that explicitly // grants permissions. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeElasticIps for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeElasticIps(input *DescribeElasticIpsInput) (*DescribeElasticIpsOutput, error) { req, out := c.DescribeElasticIpsRequest(input) err := req.Send() return out, err } const opDescribeElasticLoadBalancers = "DescribeElasticLoadBalancers" // DescribeElasticLoadBalancersRequest generates a "aws/request.Request" representing the // client's request for the DescribeElasticLoadBalancers operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeElasticLoadBalancers for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeElasticLoadBalancers method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeElasticLoadBalancersRequest method. // req, resp := client.DescribeElasticLoadBalancersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeElasticLoadBalancersRequest(input *DescribeElasticLoadBalancersInput) (req *request.Request, output *DescribeElasticLoadBalancersOutput) { op := &request.Operation{ Name: opDescribeElasticLoadBalancers, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeElasticLoadBalancersInput{} } req = c.newRequest(op, input, output) output = &DescribeElasticLoadBalancersOutput{} req.Data = output return } // DescribeElasticLoadBalancers API operation for AWS OpsWorks. // // Describes a stack's Elastic Load Balancing instances. // // You must specify at least one of the parameters. // // Required Permissions: To use this action, an IAM user must have a Show, Deploy, // or Manage permissions level for the stack, or an attached policy that explicitly // grants permissions. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeElasticLoadBalancers for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeElasticLoadBalancers(input *DescribeElasticLoadBalancersInput) (*DescribeElasticLoadBalancersOutput, error) { req, out := c.DescribeElasticLoadBalancersRequest(input) err := req.Send() return out, err } const opDescribeInstances = "DescribeInstances" // DescribeInstancesRequest generates a "aws/request.Request" representing the // client's request for the DescribeInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeInstancesRequest method. // req, resp := client.DescribeInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeInstancesRequest(input *DescribeInstancesInput) (req *request.Request, output *DescribeInstancesOutput) { op := &request.Operation{ Name: opDescribeInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeInstancesInput{} } req = c.newRequest(op, input, output) output = &DescribeInstancesOutput{} req.Data = output return } // DescribeInstances API operation for AWS OpsWorks. // // Requests a description of a set of instances. // // You must specify at least one of the parameters. // // Required Permissions: To use this action, an IAM user must have a Show, Deploy, // or Manage permissions level for the stack, or an attached policy that explicitly // grants permissions. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeInstances for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeInstances(input *DescribeInstancesInput) (*DescribeInstancesOutput, error) { req, out := c.DescribeInstancesRequest(input) err := req.Send() return out, err } const opDescribeLayers = "DescribeLayers" // DescribeLayersRequest generates a "aws/request.Request" representing the // client's request for the DescribeLayers operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLayers for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLayers method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLayersRequest method. // req, resp := client.DescribeLayersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeLayersRequest(input *DescribeLayersInput) (req *request.Request, output *DescribeLayersOutput) { op := &request.Operation{ Name: opDescribeLayers, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeLayersInput{} } req = c.newRequest(op, input, output) output = &DescribeLayersOutput{} req.Data = output return } // DescribeLayers API operation for AWS OpsWorks. // // Requests a description of one or more layers in a specified stack. // // You must specify at least one of the parameters. // // Required Permissions: To use this action, an IAM user must have a Show, Deploy, // or Manage permissions level for the stack, or an attached policy that explicitly // grants permissions. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeLayers for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeLayers(input *DescribeLayersInput) (*DescribeLayersOutput, error) { req, out := c.DescribeLayersRequest(input) err := req.Send() return out, err } const opDescribeLoadBasedAutoScaling = "DescribeLoadBasedAutoScaling" // DescribeLoadBasedAutoScalingRequest generates a "aws/request.Request" representing the // client's request for the DescribeLoadBasedAutoScaling operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLoadBasedAutoScaling for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLoadBasedAutoScaling method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLoadBasedAutoScalingRequest method. // req, resp := client.DescribeLoadBasedAutoScalingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeLoadBasedAutoScalingRequest(input *DescribeLoadBasedAutoScalingInput) (req *request.Request, output *DescribeLoadBasedAutoScalingOutput) { op := &request.Operation{ Name: opDescribeLoadBasedAutoScaling, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeLoadBasedAutoScalingInput{} } req = c.newRequest(op, input, output) output = &DescribeLoadBasedAutoScalingOutput{} req.Data = output return } // DescribeLoadBasedAutoScaling API operation for AWS OpsWorks. // // Describes load-based auto scaling configurations for specified layers. // // You must specify at least one of the parameters. // // Required Permissions: To use this action, an IAM user must have a Show, Deploy, // or Manage permissions level for the stack, or an attached policy that explicitly // grants permissions. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeLoadBasedAutoScaling for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeLoadBasedAutoScaling(input *DescribeLoadBasedAutoScalingInput) (*DescribeLoadBasedAutoScalingOutput, error) { req, out := c.DescribeLoadBasedAutoScalingRequest(input) err := req.Send() return out, err } const opDescribeMyUserProfile = "DescribeMyUserProfile" // DescribeMyUserProfileRequest generates a "aws/request.Request" representing the // client's request for the DescribeMyUserProfile operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeMyUserProfile for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeMyUserProfile method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeMyUserProfileRequest method. // req, resp := client.DescribeMyUserProfileRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeMyUserProfileRequest(input *DescribeMyUserProfileInput) (req *request.Request, output *DescribeMyUserProfileOutput) { op := &request.Operation{ Name: opDescribeMyUserProfile, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeMyUserProfileInput{} } req = c.newRequest(op, input, output) output = &DescribeMyUserProfileOutput{} req.Data = output return } // DescribeMyUserProfile API operation for AWS OpsWorks. // // Describes a user's SSH information. // // Required Permissions: To use this action, an IAM user must have self-management // enabled or an attached policy that explicitly grants permissions. For more // information on user permissions, see Managing User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeMyUserProfile for usage and error information. func (c *OpsWorks) DescribeMyUserProfile(input *DescribeMyUserProfileInput) (*DescribeMyUserProfileOutput, error) { req, out := c.DescribeMyUserProfileRequest(input) err := req.Send() return out, err } const opDescribePermissions = "DescribePermissions" // DescribePermissionsRequest generates a "aws/request.Request" representing the // client's request for the DescribePermissions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribePermissions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribePermissions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribePermissionsRequest method. // req, resp := client.DescribePermissionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribePermissionsRequest(input *DescribePermissionsInput) (req *request.Request, output *DescribePermissionsOutput) { op := &request.Operation{ Name: opDescribePermissions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribePermissionsInput{} } req = c.newRequest(op, input, output) output = &DescribePermissionsOutput{} req.Data = output return } // DescribePermissions API operation for AWS OpsWorks. // // Describes the permissions for a specified stack. // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribePermissions for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribePermissions(input *DescribePermissionsInput) (*DescribePermissionsOutput, error) { req, out := c.DescribePermissionsRequest(input) err := req.Send() return out, err } const opDescribeRaidArrays = "DescribeRaidArrays" // DescribeRaidArraysRequest generates a "aws/request.Request" representing the // client's request for the DescribeRaidArrays operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeRaidArrays for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeRaidArrays method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeRaidArraysRequest method. // req, resp := client.DescribeRaidArraysRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeRaidArraysRequest(input *DescribeRaidArraysInput) (req *request.Request, output *DescribeRaidArraysOutput) { op := &request.Operation{ Name: opDescribeRaidArrays, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeRaidArraysInput{} } req = c.newRequest(op, input, output) output = &DescribeRaidArraysOutput{} req.Data = output return } // DescribeRaidArrays API operation for AWS OpsWorks. // // Describe an instance's RAID arrays. // // You must specify at least one of the parameters. // // Required Permissions: To use this action, an IAM user must have a Show, Deploy, // or Manage permissions level for the stack, or an attached policy that explicitly // grants permissions. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeRaidArrays for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeRaidArrays(input *DescribeRaidArraysInput) (*DescribeRaidArraysOutput, error) { req, out := c.DescribeRaidArraysRequest(input) err := req.Send() return out, err } const opDescribeRdsDbInstances = "DescribeRdsDbInstances" // DescribeRdsDbInstancesRequest generates a "aws/request.Request" representing the // client's request for the DescribeRdsDbInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeRdsDbInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeRdsDbInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeRdsDbInstancesRequest method. // req, resp := client.DescribeRdsDbInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeRdsDbInstancesRequest(input *DescribeRdsDbInstancesInput) (req *request.Request, output *DescribeRdsDbInstancesOutput) { op := &request.Operation{ Name: opDescribeRdsDbInstances, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeRdsDbInstancesInput{} } req = c.newRequest(op, input, output) output = &DescribeRdsDbInstancesOutput{} req.Data = output return } // DescribeRdsDbInstances API operation for AWS OpsWorks. // // Describes Amazon RDS instances. // // Required Permissions: To use this action, an IAM user must have a Show, Deploy, // or Manage permissions level for the stack, or an attached policy that explicitly // grants permissions. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeRdsDbInstances for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeRdsDbInstances(input *DescribeRdsDbInstancesInput) (*DescribeRdsDbInstancesOutput, error) { req, out := c.DescribeRdsDbInstancesRequest(input) err := req.Send() return out, err } const opDescribeServiceErrors = "DescribeServiceErrors" // DescribeServiceErrorsRequest generates a "aws/request.Request" representing the // client's request for the DescribeServiceErrors operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeServiceErrors for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeServiceErrors method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeServiceErrorsRequest method. // req, resp := client.DescribeServiceErrorsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeServiceErrorsRequest(input *DescribeServiceErrorsInput) (req *request.Request, output *DescribeServiceErrorsOutput) { op := &request.Operation{ Name: opDescribeServiceErrors, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeServiceErrorsInput{} } req = c.newRequest(op, input, output) output = &DescribeServiceErrorsOutput{} req.Data = output return } // DescribeServiceErrors API operation for AWS OpsWorks. // // Describes AWS OpsWorks service errors. // // Required Permissions: To use this action, an IAM user must have a Show, Deploy, // or Manage permissions level for the stack, or an attached policy that explicitly // grants permissions. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeServiceErrors for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeServiceErrors(input *DescribeServiceErrorsInput) (*DescribeServiceErrorsOutput, error) { req, out := c.DescribeServiceErrorsRequest(input) err := req.Send() return out, err } const opDescribeStackProvisioningParameters = "DescribeStackProvisioningParameters" // DescribeStackProvisioningParametersRequest generates a "aws/request.Request" representing the // client's request for the DescribeStackProvisioningParameters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeStackProvisioningParameters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeStackProvisioningParameters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeStackProvisioningParametersRequest method. // req, resp := client.DescribeStackProvisioningParametersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeStackProvisioningParametersRequest(input *DescribeStackProvisioningParametersInput) (req *request.Request, output *DescribeStackProvisioningParametersOutput) { op := &request.Operation{ Name: opDescribeStackProvisioningParameters, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeStackProvisioningParametersInput{} } req = c.newRequest(op, input, output) output = &DescribeStackProvisioningParametersOutput{} req.Data = output return } // DescribeStackProvisioningParameters API operation for AWS OpsWorks. // // Requests a description of a stack's provisioning parameters. // // Required Permissions: To use this action, an IAM user must have a Show, Deploy, // or Manage permissions level for the stack or an attached policy that explicitly // grants permissions. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeStackProvisioningParameters for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeStackProvisioningParameters(input *DescribeStackProvisioningParametersInput) (*DescribeStackProvisioningParametersOutput, error) { req, out := c.DescribeStackProvisioningParametersRequest(input) err := req.Send() return out, err } const opDescribeStackSummary = "DescribeStackSummary" // DescribeStackSummaryRequest generates a "aws/request.Request" representing the // client's request for the DescribeStackSummary operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeStackSummary for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeStackSummary method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeStackSummaryRequest method. // req, resp := client.DescribeStackSummaryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeStackSummaryRequest(input *DescribeStackSummaryInput) (req *request.Request, output *DescribeStackSummaryOutput) { op := &request.Operation{ Name: opDescribeStackSummary, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeStackSummaryInput{} } req = c.newRequest(op, input, output) output = &DescribeStackSummaryOutput{} req.Data = output return } // DescribeStackSummary API operation for AWS OpsWorks. // // Describes the number of layers and apps in a specified stack, and the number // of instances in each state, such as running_setup or online. // // Required Permissions: To use this action, an IAM user must have a Show, Deploy, // or Manage permissions level for the stack, or an attached policy that explicitly // grants permissions. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeStackSummary for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeStackSummary(input *DescribeStackSummaryInput) (*DescribeStackSummaryOutput, error) { req, out := c.DescribeStackSummaryRequest(input) err := req.Send() return out, err } const opDescribeStacks = "DescribeStacks" // DescribeStacksRequest generates a "aws/request.Request" representing the // client's request for the DescribeStacks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeStacks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeStacks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeStacksRequest method. // req, resp := client.DescribeStacksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeStacksRequest(input *DescribeStacksInput) (req *request.Request, output *DescribeStacksOutput) { op := &request.Operation{ Name: opDescribeStacks, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeStacksInput{} } req = c.newRequest(op, input, output) output = &DescribeStacksOutput{} req.Data = output return } // DescribeStacks API operation for AWS OpsWorks. // // Requests a description of one or more stacks. // // Required Permissions: To use this action, an IAM user must have a Show, Deploy, // or Manage permissions level for the stack, or an attached policy that explicitly // grants permissions. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeStacks for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeStacks(input *DescribeStacksInput) (*DescribeStacksOutput, error) { req, out := c.DescribeStacksRequest(input) err := req.Send() return out, err } const opDescribeTimeBasedAutoScaling = "DescribeTimeBasedAutoScaling" // DescribeTimeBasedAutoScalingRequest generates a "aws/request.Request" representing the // client's request for the DescribeTimeBasedAutoScaling operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTimeBasedAutoScaling for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTimeBasedAutoScaling method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTimeBasedAutoScalingRequest method. // req, resp := client.DescribeTimeBasedAutoScalingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeTimeBasedAutoScalingRequest(input *DescribeTimeBasedAutoScalingInput) (req *request.Request, output *DescribeTimeBasedAutoScalingOutput) { op := &request.Operation{ Name: opDescribeTimeBasedAutoScaling, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTimeBasedAutoScalingInput{} } req = c.newRequest(op, input, output) output = &DescribeTimeBasedAutoScalingOutput{} req.Data = output return } // DescribeTimeBasedAutoScaling API operation for AWS OpsWorks. // // Describes time-based auto scaling configurations for specified instances. // // You must specify at least one of the parameters. // // Required Permissions: To use this action, an IAM user must have a Show, Deploy, // or Manage permissions level for the stack, or an attached policy that explicitly // grants permissions. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeTimeBasedAutoScaling for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeTimeBasedAutoScaling(input *DescribeTimeBasedAutoScalingInput) (*DescribeTimeBasedAutoScalingOutput, error) { req, out := c.DescribeTimeBasedAutoScalingRequest(input) err := req.Send() return out, err } const opDescribeUserProfiles = "DescribeUserProfiles" // DescribeUserProfilesRequest generates a "aws/request.Request" representing the // client's request for the DescribeUserProfiles operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeUserProfiles for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeUserProfiles method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeUserProfilesRequest method. // req, resp := client.DescribeUserProfilesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeUserProfilesRequest(input *DescribeUserProfilesInput) (req *request.Request, output *DescribeUserProfilesOutput) { op := &request.Operation{ Name: opDescribeUserProfiles, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeUserProfilesInput{} } req = c.newRequest(op, input, output) output = &DescribeUserProfilesOutput{} req.Data = output return } // DescribeUserProfiles API operation for AWS OpsWorks. // // Describe specified users. // // Required Permissions: To use this action, an IAM user must have an attached // policy that explicitly grants permissions. For more information on user permissions, // see Managing User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeUserProfiles for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeUserProfiles(input *DescribeUserProfilesInput) (*DescribeUserProfilesOutput, error) { req, out := c.DescribeUserProfilesRequest(input) err := req.Send() return out, err } const opDescribeVolumes = "DescribeVolumes" // DescribeVolumesRequest generates a "aws/request.Request" representing the // client's request for the DescribeVolumes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeVolumes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeVolumes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeVolumesRequest method. // req, resp := client.DescribeVolumesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DescribeVolumesRequest(input *DescribeVolumesInput) (req *request.Request, output *DescribeVolumesOutput) { op := &request.Operation{ Name: opDescribeVolumes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeVolumesInput{} } req = c.newRequest(op, input, output) output = &DescribeVolumesOutput{} req.Data = output return } // DescribeVolumes API operation for AWS OpsWorks. // // Describes an instance's Amazon EBS volumes. // // You must specify at least one of the parameters. // // Required Permissions: To use this action, an IAM user must have a Show, Deploy, // or Manage permissions level for the stack, or an attached policy that explicitly // grants permissions. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DescribeVolumes for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DescribeVolumes(input *DescribeVolumesInput) (*DescribeVolumesOutput, error) { req, out := c.DescribeVolumesRequest(input) err := req.Send() return out, err } const opDetachElasticLoadBalancer = "DetachElasticLoadBalancer" // DetachElasticLoadBalancerRequest generates a "aws/request.Request" representing the // client's request for the DetachElasticLoadBalancer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DetachElasticLoadBalancer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DetachElasticLoadBalancer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DetachElasticLoadBalancerRequest method. // req, resp := client.DetachElasticLoadBalancerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DetachElasticLoadBalancerRequest(input *DetachElasticLoadBalancerInput) (req *request.Request, output *DetachElasticLoadBalancerOutput) { op := &request.Operation{ Name: opDetachElasticLoadBalancer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DetachElasticLoadBalancerInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DetachElasticLoadBalancerOutput{} req.Data = output return } // DetachElasticLoadBalancer API operation for AWS OpsWorks. // // Detaches a specified Elastic Load Balancing instance from its layer. // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DetachElasticLoadBalancer for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DetachElasticLoadBalancer(input *DetachElasticLoadBalancerInput) (*DetachElasticLoadBalancerOutput, error) { req, out := c.DetachElasticLoadBalancerRequest(input) err := req.Send() return out, err } const opDisassociateElasticIp = "DisassociateElasticIp" // DisassociateElasticIpRequest generates a "aws/request.Request" representing the // client's request for the DisassociateElasticIp operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisassociateElasticIp for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisassociateElasticIp method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisassociateElasticIpRequest method. // req, resp := client.DisassociateElasticIpRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) DisassociateElasticIpRequest(input *DisassociateElasticIpInput) (req *request.Request, output *DisassociateElasticIpOutput) { op := &request.Operation{ Name: opDisassociateElasticIp, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisassociateElasticIpInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DisassociateElasticIpOutput{} req.Data = output return } // DisassociateElasticIp API operation for AWS OpsWorks. // // Disassociates an Elastic IP address from its instance. The address remains // registered with the stack. For more information, see Resource Management // (http://docs.aws.amazon.com/opsworks/latest/userguide/resources.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation DisassociateElasticIp for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) DisassociateElasticIp(input *DisassociateElasticIpInput) (*DisassociateElasticIpOutput, error) { req, out := c.DisassociateElasticIpRequest(input) err := req.Send() return out, err } const opGetHostnameSuggestion = "GetHostnameSuggestion" // GetHostnameSuggestionRequest generates a "aws/request.Request" representing the // client's request for the GetHostnameSuggestion operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetHostnameSuggestion for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetHostnameSuggestion method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetHostnameSuggestionRequest method. // req, resp := client.GetHostnameSuggestionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) GetHostnameSuggestionRequest(input *GetHostnameSuggestionInput) (req *request.Request, output *GetHostnameSuggestionOutput) { op := &request.Operation{ Name: opGetHostnameSuggestion, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetHostnameSuggestionInput{} } req = c.newRequest(op, input, output) output = &GetHostnameSuggestionOutput{} req.Data = output return } // GetHostnameSuggestion API operation for AWS OpsWorks. // // Gets a generated host name for the specified layer, based on the current // host name theme. // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation GetHostnameSuggestion for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) GetHostnameSuggestion(input *GetHostnameSuggestionInput) (*GetHostnameSuggestionOutput, error) { req, out := c.GetHostnameSuggestionRequest(input) err := req.Send() return out, err } const opGrantAccess = "GrantAccess" // GrantAccessRequest generates a "aws/request.Request" representing the // client's request for the GrantAccess operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GrantAccess for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GrantAccess method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GrantAccessRequest method. // req, resp := client.GrantAccessRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) GrantAccessRequest(input *GrantAccessInput) (req *request.Request, output *GrantAccessOutput) { op := &request.Operation{ Name: opGrantAccess, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GrantAccessInput{} } req = c.newRequest(op, input, output) output = &GrantAccessOutput{} req.Data = output return } // GrantAccess API operation for AWS OpsWorks. // // This action can be used only with Windows stacks. // // Grants RDP access to a Windows instance for a specified time period. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation GrantAccess for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) GrantAccess(input *GrantAccessInput) (*GrantAccessOutput, error) { req, out := c.GrantAccessRequest(input) err := req.Send() return out, err } const opRebootInstance = "RebootInstance" // RebootInstanceRequest generates a "aws/request.Request" representing the // client's request for the RebootInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RebootInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RebootInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RebootInstanceRequest method. // req, resp := client.RebootInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) RebootInstanceRequest(input *RebootInstanceInput) (req *request.Request, output *RebootInstanceOutput) { op := &request.Operation{ Name: opRebootInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RebootInstanceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RebootInstanceOutput{} req.Data = output return } // RebootInstance API operation for AWS OpsWorks. // // Reboots a specified instance. For more information, see Starting, Stopping, // and Rebooting Instances (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-starting.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation RebootInstance for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) RebootInstance(input *RebootInstanceInput) (*RebootInstanceOutput, error) { req, out := c.RebootInstanceRequest(input) err := req.Send() return out, err } const opRegisterEcsCluster = "RegisterEcsCluster" // RegisterEcsClusterRequest generates a "aws/request.Request" representing the // client's request for the RegisterEcsCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterEcsCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterEcsCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterEcsClusterRequest method. // req, resp := client.RegisterEcsClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) RegisterEcsClusterRequest(input *RegisterEcsClusterInput) (req *request.Request, output *RegisterEcsClusterOutput) { op := &request.Operation{ Name: opRegisterEcsCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterEcsClusterInput{} } req = c.newRequest(op, input, output) output = &RegisterEcsClusterOutput{} req.Data = output return } // RegisterEcsCluster API operation for AWS OpsWorks. // // Registers a specified Amazon ECS cluster with a stack. You can register only // one cluster with a stack. A cluster can be registered with only one stack. // For more information, see Resource Management (http://docs.aws.amazon.com/opsworks/latest/userguide/workinglayers-ecscluster.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation RegisterEcsCluster for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) RegisterEcsCluster(input *RegisterEcsClusterInput) (*RegisterEcsClusterOutput, error) { req, out := c.RegisterEcsClusterRequest(input) err := req.Send() return out, err } const opRegisterElasticIp = "RegisterElasticIp" // RegisterElasticIpRequest generates a "aws/request.Request" representing the // client's request for the RegisterElasticIp operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterElasticIp for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterElasticIp method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterElasticIpRequest method. // req, resp := client.RegisterElasticIpRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) RegisterElasticIpRequest(input *RegisterElasticIpInput) (req *request.Request, output *RegisterElasticIpOutput) { op := &request.Operation{ Name: opRegisterElasticIp, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterElasticIpInput{} } req = c.newRequest(op, input, output) output = &RegisterElasticIpOutput{} req.Data = output return } // RegisterElasticIp API operation for AWS OpsWorks. // // Registers an Elastic IP address with a specified stack. An address can be // registered with only one stack at a time. If the address is already registered, // you must first deregister it by calling DeregisterElasticIp. For more information, // see Resource Management (http://docs.aws.amazon.com/opsworks/latest/userguide/resources.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation RegisterElasticIp for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) RegisterElasticIp(input *RegisterElasticIpInput) (*RegisterElasticIpOutput, error) { req, out := c.RegisterElasticIpRequest(input) err := req.Send() return out, err } const opRegisterInstance = "RegisterInstance" // RegisterInstanceRequest generates a "aws/request.Request" representing the // client's request for the RegisterInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterInstanceRequest method. // req, resp := client.RegisterInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) RegisterInstanceRequest(input *RegisterInstanceInput) (req *request.Request, output *RegisterInstanceOutput) { op := &request.Operation{ Name: opRegisterInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterInstanceInput{} } req = c.newRequest(op, input, output) output = &RegisterInstanceOutput{} req.Data = output return } // RegisterInstance API operation for AWS OpsWorks. // // Registers instances with a specified stack that were created outside of AWS // OpsWorks. // // We do not recommend using this action to register instances. The complete // registration operation has two primary steps, installing the AWS OpsWorks // agent on the instance and registering the instance with the stack. RegisterInstance // handles only the second step. You should instead use the AWS CLI register // command, which performs the entire registration operation. For more information, // see Registering an Instance with an AWS OpsWorks Stack (http://docs.aws.amazon.com/opsworks/latest/userguide/registered-instances-register.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation RegisterInstance for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) RegisterInstance(input *RegisterInstanceInput) (*RegisterInstanceOutput, error) { req, out := c.RegisterInstanceRequest(input) err := req.Send() return out, err } const opRegisterRdsDbInstance = "RegisterRdsDbInstance" // RegisterRdsDbInstanceRequest generates a "aws/request.Request" representing the // client's request for the RegisterRdsDbInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterRdsDbInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterRdsDbInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterRdsDbInstanceRequest method. // req, resp := client.RegisterRdsDbInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) RegisterRdsDbInstanceRequest(input *RegisterRdsDbInstanceInput) (req *request.Request, output *RegisterRdsDbInstanceOutput) { op := &request.Operation{ Name: opRegisterRdsDbInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterRdsDbInstanceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RegisterRdsDbInstanceOutput{} req.Data = output return } // RegisterRdsDbInstance API operation for AWS OpsWorks. // // Registers an Amazon RDS instance with a stack. // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation RegisterRdsDbInstance for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) RegisterRdsDbInstance(input *RegisterRdsDbInstanceInput) (*RegisterRdsDbInstanceOutput, error) { req, out := c.RegisterRdsDbInstanceRequest(input) err := req.Send() return out, err } const opRegisterVolume = "RegisterVolume" // RegisterVolumeRequest generates a "aws/request.Request" representing the // client's request for the RegisterVolume operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterVolume for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterVolume method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterVolumeRequest method. // req, resp := client.RegisterVolumeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) RegisterVolumeRequest(input *RegisterVolumeInput) (req *request.Request, output *RegisterVolumeOutput) { op := &request.Operation{ Name: opRegisterVolume, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterVolumeInput{} } req = c.newRequest(op, input, output) output = &RegisterVolumeOutput{} req.Data = output return } // RegisterVolume API operation for AWS OpsWorks. // // Registers an Amazon EBS volume with a specified stack. A volume can be registered // with only one stack at a time. If the volume is already registered, you must // first deregister it by calling DeregisterVolume. For more information, see // Resource Management (http://docs.aws.amazon.com/opsworks/latest/userguide/resources.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation RegisterVolume for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) RegisterVolume(input *RegisterVolumeInput) (*RegisterVolumeOutput, error) { req, out := c.RegisterVolumeRequest(input) err := req.Send() return out, err } const opSetLoadBasedAutoScaling = "SetLoadBasedAutoScaling" // SetLoadBasedAutoScalingRequest generates a "aws/request.Request" representing the // client's request for the SetLoadBasedAutoScaling operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetLoadBasedAutoScaling for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetLoadBasedAutoScaling method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetLoadBasedAutoScalingRequest method. // req, resp := client.SetLoadBasedAutoScalingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) SetLoadBasedAutoScalingRequest(input *SetLoadBasedAutoScalingInput) (req *request.Request, output *SetLoadBasedAutoScalingOutput) { op := &request.Operation{ Name: opSetLoadBasedAutoScaling, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetLoadBasedAutoScalingInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetLoadBasedAutoScalingOutput{} req.Data = output return } // SetLoadBasedAutoScaling API operation for AWS OpsWorks. // // Specify the load-based auto scaling configuration for a specified layer. // For more information, see Managing Load with Time-based and Load-based Instances // (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-autoscaling.html). // // To use load-based auto scaling, you must create a set of load-based auto // scaling instances. Load-based auto scaling operates only on the instances // from that set, so you must ensure that you have created enough instances // to handle the maximum anticipated load. // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation SetLoadBasedAutoScaling for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) SetLoadBasedAutoScaling(input *SetLoadBasedAutoScalingInput) (*SetLoadBasedAutoScalingOutput, error) { req, out := c.SetLoadBasedAutoScalingRequest(input) err := req.Send() return out, err } const opSetPermission = "SetPermission" // SetPermissionRequest generates a "aws/request.Request" representing the // client's request for the SetPermission operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetPermission for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetPermission method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetPermissionRequest method. // req, resp := client.SetPermissionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) SetPermissionRequest(input *SetPermissionInput) (req *request.Request, output *SetPermissionOutput) { op := &request.Operation{ Name: opSetPermission, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetPermissionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetPermissionOutput{} req.Data = output return } // SetPermission API operation for AWS OpsWorks. // // Specifies a user's permissions. For more information, see Security and Permissions // (http://docs.aws.amazon.com/opsworks/latest/userguide/workingsecurity.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation SetPermission for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) SetPermission(input *SetPermissionInput) (*SetPermissionOutput, error) { req, out := c.SetPermissionRequest(input) err := req.Send() return out, err } const opSetTimeBasedAutoScaling = "SetTimeBasedAutoScaling" // SetTimeBasedAutoScalingRequest generates a "aws/request.Request" representing the // client's request for the SetTimeBasedAutoScaling operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetTimeBasedAutoScaling for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetTimeBasedAutoScaling method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetTimeBasedAutoScalingRequest method. // req, resp := client.SetTimeBasedAutoScalingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) SetTimeBasedAutoScalingRequest(input *SetTimeBasedAutoScalingInput) (req *request.Request, output *SetTimeBasedAutoScalingOutput) { op := &request.Operation{ Name: opSetTimeBasedAutoScaling, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetTimeBasedAutoScalingInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetTimeBasedAutoScalingOutput{} req.Data = output return } // SetTimeBasedAutoScaling API operation for AWS OpsWorks. // // Specify the time-based auto scaling configuration for a specified instance. // For more information, see Managing Load with Time-based and Load-based Instances // (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-autoscaling.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation SetTimeBasedAutoScaling for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) SetTimeBasedAutoScaling(input *SetTimeBasedAutoScalingInput) (*SetTimeBasedAutoScalingOutput, error) { req, out := c.SetTimeBasedAutoScalingRequest(input) err := req.Send() return out, err } const opStartInstance = "StartInstance" // StartInstanceRequest generates a "aws/request.Request" representing the // client's request for the StartInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StartInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StartInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StartInstanceRequest method. // req, resp := client.StartInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) StartInstanceRequest(input *StartInstanceInput) (req *request.Request, output *StartInstanceOutput) { op := &request.Operation{ Name: opStartInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartInstanceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &StartInstanceOutput{} req.Data = output return } // StartInstance API operation for AWS OpsWorks. // // Starts a specified instance. For more information, see Starting, Stopping, // and Rebooting Instances (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-starting.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation StartInstance for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) StartInstance(input *StartInstanceInput) (*StartInstanceOutput, error) { req, out := c.StartInstanceRequest(input) err := req.Send() return out, err } const opStartStack = "StartStack" // StartStackRequest generates a "aws/request.Request" representing the // client's request for the StartStack operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StartStack for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StartStack method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StartStackRequest method. // req, resp := client.StartStackRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) StartStackRequest(input *StartStackInput) (req *request.Request, output *StartStackOutput) { op := &request.Operation{ Name: opStartStack, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartStackInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &StartStackOutput{} req.Data = output return } // StartStack API operation for AWS OpsWorks. // // Starts a stack's instances. // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation StartStack for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) StartStack(input *StartStackInput) (*StartStackOutput, error) { req, out := c.StartStackRequest(input) err := req.Send() return out, err } const opStopInstance = "StopInstance" // StopInstanceRequest generates a "aws/request.Request" representing the // client's request for the StopInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StopInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StopInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StopInstanceRequest method. // req, resp := client.StopInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) StopInstanceRequest(input *StopInstanceInput) (req *request.Request, output *StopInstanceOutput) { op := &request.Operation{ Name: opStopInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StopInstanceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &StopInstanceOutput{} req.Data = output return } // StopInstance API operation for AWS OpsWorks. // // Stops a specified instance. When you stop a standard instance, the data disappears // and must be reinstalled when you restart the instance. You can stop an Amazon // EBS-backed instance without losing data. For more information, see Starting, // Stopping, and Rebooting Instances (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-starting.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation StopInstance for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) StopInstance(input *StopInstanceInput) (*StopInstanceOutput, error) { req, out := c.StopInstanceRequest(input) err := req.Send() return out, err } const opStopStack = "StopStack" // StopStackRequest generates a "aws/request.Request" representing the // client's request for the StopStack operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StopStack for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StopStack method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StopStackRequest method. // req, resp := client.StopStackRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) StopStackRequest(input *StopStackInput) (req *request.Request, output *StopStackOutput) { op := &request.Operation{ Name: opStopStack, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StopStackInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &StopStackOutput{} req.Data = output return } // StopStack API operation for AWS OpsWorks. // // Stops a specified stack. // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation StopStack for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) StopStack(input *StopStackInput) (*StopStackOutput, error) { req, out := c.StopStackRequest(input) err := req.Send() return out, err } const opUnassignInstance = "UnassignInstance" // UnassignInstanceRequest generates a "aws/request.Request" representing the // client's request for the UnassignInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UnassignInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UnassignInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UnassignInstanceRequest method. // req, resp := client.UnassignInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) UnassignInstanceRequest(input *UnassignInstanceInput) (req *request.Request, output *UnassignInstanceOutput) { op := &request.Operation{ Name: opUnassignInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UnassignInstanceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UnassignInstanceOutput{} req.Data = output return } // UnassignInstance API operation for AWS OpsWorks. // // Unassigns a registered instance from all of it's layers. The instance remains // in the stack as an unassigned instance and can be assigned to another layer, // as needed. You cannot use this action with instances that were created with // AWS OpsWorks. // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation UnassignInstance for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) UnassignInstance(input *UnassignInstanceInput) (*UnassignInstanceOutput, error) { req, out := c.UnassignInstanceRequest(input) err := req.Send() return out, err } const opUnassignVolume = "UnassignVolume" // UnassignVolumeRequest generates a "aws/request.Request" representing the // client's request for the UnassignVolume operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UnassignVolume for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UnassignVolume method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UnassignVolumeRequest method. // req, resp := client.UnassignVolumeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) UnassignVolumeRequest(input *UnassignVolumeInput) (req *request.Request, output *UnassignVolumeOutput) { op := &request.Operation{ Name: opUnassignVolume, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UnassignVolumeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UnassignVolumeOutput{} req.Data = output return } // UnassignVolume API operation for AWS OpsWorks. // // Unassigns an assigned Amazon EBS volume. The volume remains registered with // the stack. For more information, see Resource Management (http://docs.aws.amazon.com/opsworks/latest/userguide/resources.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation UnassignVolume for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) UnassignVolume(input *UnassignVolumeInput) (*UnassignVolumeOutput, error) { req, out := c.UnassignVolumeRequest(input) err := req.Send() return out, err } const opUpdateApp = "UpdateApp" // UpdateAppRequest generates a "aws/request.Request" representing the // client's request for the UpdateApp operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateApp for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateApp method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateAppRequest method. // req, resp := client.UpdateAppRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) UpdateAppRequest(input *UpdateAppInput) (req *request.Request, output *UpdateAppOutput) { op := &request.Operation{ Name: opUpdateApp, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateAppInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateAppOutput{} req.Data = output return } // UpdateApp API operation for AWS OpsWorks. // // Updates a specified app. // // Required Permissions: To use this action, an IAM user must have a Deploy // or Manage permissions level for the stack, or an attached policy that explicitly // grants permissions. For more information on user permissions, see Managing // User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation UpdateApp for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) UpdateApp(input *UpdateAppInput) (*UpdateAppOutput, error) { req, out := c.UpdateAppRequest(input) err := req.Send() return out, err } const opUpdateElasticIp = "UpdateElasticIp" // UpdateElasticIpRequest generates a "aws/request.Request" representing the // client's request for the UpdateElasticIp operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateElasticIp for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateElasticIp method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateElasticIpRequest method. // req, resp := client.UpdateElasticIpRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) UpdateElasticIpRequest(input *UpdateElasticIpInput) (req *request.Request, output *UpdateElasticIpOutput) { op := &request.Operation{ Name: opUpdateElasticIp, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateElasticIpInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateElasticIpOutput{} req.Data = output return } // UpdateElasticIp API operation for AWS OpsWorks. // // Updates a registered Elastic IP address's name. For more information, see // Resource Management (http://docs.aws.amazon.com/opsworks/latest/userguide/resources.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation UpdateElasticIp for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) UpdateElasticIp(input *UpdateElasticIpInput) (*UpdateElasticIpOutput, error) { req, out := c.UpdateElasticIpRequest(input) err := req.Send() return out, err } const opUpdateInstance = "UpdateInstance" // UpdateInstanceRequest generates a "aws/request.Request" representing the // client's request for the UpdateInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateInstanceRequest method. // req, resp := client.UpdateInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) UpdateInstanceRequest(input *UpdateInstanceInput) (req *request.Request, output *UpdateInstanceOutput) { op := &request.Operation{ Name: opUpdateInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateInstanceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateInstanceOutput{} req.Data = output return } // UpdateInstance API operation for AWS OpsWorks. // // Updates a specified instance. // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation UpdateInstance for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) UpdateInstance(input *UpdateInstanceInput) (*UpdateInstanceOutput, error) { req, out := c.UpdateInstanceRequest(input) err := req.Send() return out, err } const opUpdateLayer = "UpdateLayer" // UpdateLayerRequest generates a "aws/request.Request" representing the // client's request for the UpdateLayer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateLayer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateLayer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateLayerRequest method. // req, resp := client.UpdateLayerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) UpdateLayerRequest(input *UpdateLayerInput) (req *request.Request, output *UpdateLayerOutput) { op := &request.Operation{ Name: opUpdateLayer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateLayerInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateLayerOutput{} req.Data = output return } // UpdateLayer API operation for AWS OpsWorks. // // Updates a specified layer. // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation UpdateLayer for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) UpdateLayer(input *UpdateLayerInput) (*UpdateLayerOutput, error) { req, out := c.UpdateLayerRequest(input) err := req.Send() return out, err } const opUpdateMyUserProfile = "UpdateMyUserProfile" // UpdateMyUserProfileRequest generates a "aws/request.Request" representing the // client's request for the UpdateMyUserProfile operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateMyUserProfile for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateMyUserProfile method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateMyUserProfileRequest method. // req, resp := client.UpdateMyUserProfileRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) UpdateMyUserProfileRequest(input *UpdateMyUserProfileInput) (req *request.Request, output *UpdateMyUserProfileOutput) { op := &request.Operation{ Name: opUpdateMyUserProfile, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateMyUserProfileInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateMyUserProfileOutput{} req.Data = output return } // UpdateMyUserProfile API operation for AWS OpsWorks. // // Updates a user's SSH public key. // // Required Permissions: To use this action, an IAM user must have self-management // enabled or an attached policy that explicitly grants permissions. For more // information on user permissions, see Managing User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation UpdateMyUserProfile for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // func (c *OpsWorks) UpdateMyUserProfile(input *UpdateMyUserProfileInput) (*UpdateMyUserProfileOutput, error) { req, out := c.UpdateMyUserProfileRequest(input) err := req.Send() return out, err } const opUpdateRdsDbInstance = "UpdateRdsDbInstance" // UpdateRdsDbInstanceRequest generates a "aws/request.Request" representing the // client's request for the UpdateRdsDbInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateRdsDbInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateRdsDbInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateRdsDbInstanceRequest method. // req, resp := client.UpdateRdsDbInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) UpdateRdsDbInstanceRequest(input *UpdateRdsDbInstanceInput) (req *request.Request, output *UpdateRdsDbInstanceOutput) { op := &request.Operation{ Name: opUpdateRdsDbInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateRdsDbInstanceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateRdsDbInstanceOutput{} req.Data = output return } // UpdateRdsDbInstance API operation for AWS OpsWorks. // // Updates an Amazon RDS instance. // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation UpdateRdsDbInstance for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) UpdateRdsDbInstance(input *UpdateRdsDbInstanceInput) (*UpdateRdsDbInstanceOutput, error) { req, out := c.UpdateRdsDbInstanceRequest(input) err := req.Send() return out, err } const opUpdateStack = "UpdateStack" // UpdateStackRequest generates a "aws/request.Request" representing the // client's request for the UpdateStack operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateStack for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateStack method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateStackRequest method. // req, resp := client.UpdateStackRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) UpdateStackRequest(input *UpdateStackInput) (req *request.Request, output *UpdateStackOutput) { op := &request.Operation{ Name: opUpdateStack, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateStackInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateStackOutput{} req.Data = output return } // UpdateStack API operation for AWS OpsWorks. // // Updates a specified stack. // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation UpdateStack for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) UpdateStack(input *UpdateStackInput) (*UpdateStackOutput, error) { req, out := c.UpdateStackRequest(input) err := req.Send() return out, err } const opUpdateUserProfile = "UpdateUserProfile" // UpdateUserProfileRequest generates a "aws/request.Request" representing the // client's request for the UpdateUserProfile operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateUserProfile for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateUserProfile method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateUserProfileRequest method. // req, resp := client.UpdateUserProfileRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) UpdateUserProfileRequest(input *UpdateUserProfileInput) (req *request.Request, output *UpdateUserProfileOutput) { op := &request.Operation{ Name: opUpdateUserProfile, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateUserProfileInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateUserProfileOutput{} req.Data = output return } // UpdateUserProfile API operation for AWS OpsWorks. // // Updates a specified user profile. // // Required Permissions: To use this action, an IAM user must have an attached // policy that explicitly grants permissions. For more information on user permissions, // see Managing User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation UpdateUserProfile for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) UpdateUserProfile(input *UpdateUserProfileInput) (*UpdateUserProfileOutput, error) { req, out := c.UpdateUserProfileRequest(input) err := req.Send() return out, err } const opUpdateVolume = "UpdateVolume" // UpdateVolumeRequest generates a "aws/request.Request" representing the // client's request for the UpdateVolume operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateVolume for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateVolume method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateVolumeRequest method. // req, resp := client.UpdateVolumeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *OpsWorks) UpdateVolumeRequest(input *UpdateVolumeInput) (req *request.Request, output *UpdateVolumeOutput) { op := &request.Operation{ Name: opUpdateVolume, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateVolumeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UpdateVolumeOutput{} req.Data = output return } // UpdateVolume API operation for AWS OpsWorks. // // Updates an Amazon EBS volume's name or mount point. For more information, // see Resource Management (http://docs.aws.amazon.com/opsworks/latest/userguide/resources.html). // // Required Permissions: To use this action, an IAM user must have a Manage // permissions level for the stack, or an attached policy that explicitly grants // permissions. For more information on user permissions, see Managing User // Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS OpsWorks's // API operation UpdateVolume for usage and error information. // // Returned Error Codes: // * ValidationException // Indicates that a request was not valid. // // * ResourceNotFoundException // Indicates that a resource was not found. // func (c *OpsWorks) UpdateVolume(input *UpdateVolumeInput) (*UpdateVolumeOutput, error) { req, out := c.UpdateVolumeRequest(input) err := req.Send() return out, err } // Describes an agent version. type AgentVersion struct { _ struct{} `type:"structure"` // The configuration manager. ConfigurationManager *StackConfigurationManager `type:"structure"` // The agent version. Version *string `type:"string"` } // String returns the string representation func (s AgentVersion) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AgentVersion) GoString() string { return s.String() } // A description of the app. type App struct { _ struct{} `type:"structure"` // The app ID. AppId *string `type:"string"` // A Source object that describes the app repository. AppSource *Source `type:"structure"` // The stack attributes. Attributes map[string]*string `type:"map"` // When the app was created. CreatedAt *string `type:"string"` // The app's data sources. DataSources []*DataSource `type:"list"` // A description of the app. Description *string `type:"string"` // The app vhost settings with multiple domains separated by commas. For example: // 'www.example.com, example.com' Domains []*string `type:"list"` // Whether to enable SSL for the app. EnableSsl *bool `type:"boolean"` // An array of EnvironmentVariable objects that specify environment variables // to be associated with the app. After you deploy the app, these variables // are defined on the associated app server instances. For more information, // see Environment Variables (http://docs.aws.amazon.com/opsworks/latest/userguide/workingapps-creating.html#workingapps-creating-environment). // // There is no specific limit on the number of environment variables. However, // the size of the associated data structure - which includes the variable names, // values, and protected flag values - cannot exceed 10 KB (10240 Bytes). This // limit should accommodate most if not all use cases, but if you do exceed // it, you will cause an exception (API) with an "Environment: is too large // (maximum is 10KB)" message. Environment []*EnvironmentVariable `type:"list"` // The app name. Name *string `type:"string"` // The app's short name. Shortname *string `type:"string"` // An SslConfiguration object with the SSL configuration. SslConfiguration *SslConfiguration `type:"structure"` // The app stack ID. StackId *string `type:"string"` // The app type. Type *string `type:"string" enum:"AppType"` } // String returns the string representation func (s App) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s App) GoString() string { return s.String() } type AssignInstanceInput struct { _ struct{} `type:"structure"` // The instance ID. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` // The layer ID, which must correspond to a custom layer. You cannot assign // a registered instance to a built-in layer. // // LayerIds is a required field LayerIds []*string `type:"list" required:"true"` } // String returns the string representation func (s AssignInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssignInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssignInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssignInstanceInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if s.LayerIds == nil { invalidParams.Add(request.NewErrParamRequired("LayerIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AssignInstanceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AssignInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssignInstanceOutput) GoString() string { return s.String() } type AssignVolumeInput struct { _ struct{} `type:"structure"` // The instance ID. InstanceId *string `type:"string"` // The volume ID. // // VolumeId is a required field VolumeId *string `type:"string" required:"true"` } // String returns the string representation func (s AssignVolumeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssignVolumeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssignVolumeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssignVolumeInput"} if s.VolumeId == nil { invalidParams.Add(request.NewErrParamRequired("VolumeId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AssignVolumeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AssignVolumeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssignVolumeOutput) GoString() string { return s.String() } type AssociateElasticIpInput struct { _ struct{} `type:"structure"` // The Elastic IP address. // // ElasticIp is a required field ElasticIp *string `type:"string" required:"true"` // The instance ID. InstanceId *string `type:"string"` } // String returns the string representation func (s AssociateElasticIpInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociateElasticIpInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssociateElasticIpInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssociateElasticIpInput"} if s.ElasticIp == nil { invalidParams.Add(request.NewErrParamRequired("ElasticIp")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AssociateElasticIpOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AssociateElasticIpOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociateElasticIpOutput) GoString() string { return s.String() } type AttachElasticLoadBalancerInput struct { _ struct{} `type:"structure"` // The Elastic Load Balancing instance's name. // // ElasticLoadBalancerName is a required field ElasticLoadBalancerName *string `type:"string" required:"true"` // The ID of the layer that the Elastic Load Balancing instance is to be attached // to. // // LayerId is a required field LayerId *string `type:"string" required:"true"` } // String returns the string representation func (s AttachElasticLoadBalancerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachElasticLoadBalancerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AttachElasticLoadBalancerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AttachElasticLoadBalancerInput"} if s.ElasticLoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("ElasticLoadBalancerName")) } if s.LayerId == nil { invalidParams.Add(request.NewErrParamRequired("LayerId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AttachElasticLoadBalancerOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AttachElasticLoadBalancerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachElasticLoadBalancerOutput) GoString() string { return s.String() } // Describes a load-based auto scaling upscaling or downscaling threshold configuration, // which specifies when AWS OpsWorks starts or stops load-based instances. type AutoScalingThresholds struct { _ struct{} `type:"structure"` // Custom Cloudwatch auto scaling alarms, to be used as thresholds. This parameter // takes a list of up to five alarm names, which are case sensitive and must // be in the same region as the stack. // // To use custom alarms, you must update your service role to allow cloudwatch:DescribeAlarms. // You can either have AWS OpsWorks update the role for you when you first use // this feature or you can edit the role manually. For more information, see // Allowing AWS OpsWorks to Act on Your Behalf (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-servicerole.html). Alarms []*string `type:"list"` // The CPU utilization threshold, as a percent of the available CPU. A value // of -1 disables the threshold. CpuThreshold *float64 `type:"double"` // The amount of time (in minutes) after a scaling event occurs that AWS OpsWorks // should ignore metrics and suppress additional scaling events. For example, // AWS OpsWorks adds new instances following an upscaling event but the instances // won't start reducing the load until they have been booted and configured. // There is no point in raising additional scaling events during that operation, // which typically takes several minutes. IgnoreMetricsTime allows you to direct // AWS OpsWorks to suppress scaling events long enough to get the new instances // online. IgnoreMetricsTime *int64 `min:"1" type:"integer"` // The number of instances to add or remove when the load exceeds a threshold. InstanceCount *int64 `type:"integer"` // The load threshold. A value of -1 disables the threshold. For more information // about how load is computed, see Load (computing) (http://en.wikipedia.org/wiki/Load_%28computing%29). LoadThreshold *float64 `type:"double"` // The memory utilization threshold, as a percent of the available memory. A // value of -1 disables the threshold. MemoryThreshold *float64 `type:"double"` // The amount of time, in minutes, that the load must exceed a threshold before // more instances are added or removed. ThresholdsWaitTime *int64 `min:"1" type:"integer"` } // String returns the string representation func (s AutoScalingThresholds) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AutoScalingThresholds) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AutoScalingThresholds) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AutoScalingThresholds"} if s.IgnoreMetricsTime != nil && *s.IgnoreMetricsTime < 1 { invalidParams.Add(request.NewErrParamMinValue("IgnoreMetricsTime", 1)) } if s.ThresholdsWaitTime != nil && *s.ThresholdsWaitTime < 1 { invalidParams.Add(request.NewErrParamMinValue("ThresholdsWaitTime", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a block device mapping. This data type maps directly to the Amazon // EC2 BlockDeviceMapping (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_BlockDeviceMapping.html) // data type. type BlockDeviceMapping struct { _ struct{} `type:"structure"` // The device name that is exposed to the instance, such as /dev/sdh. For the // root device, you can use the explicit device name or you can set this parameter // to ROOT_DEVICE and AWS OpsWorks will provide the correct device name. DeviceName *string `type:"string"` // An EBSBlockDevice that defines how to configure an Amazon EBS volume when // the instance is launched. Ebs *EbsBlockDevice `type:"structure"` // Suppresses the specified device included in the AMI's block device mapping. NoDevice *string `type:"string"` // The virtual device name. For more information, see BlockDeviceMapping (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_BlockDeviceMapping.html). VirtualName *string `type:"string"` } // String returns the string representation func (s BlockDeviceMapping) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BlockDeviceMapping) GoString() string { return s.String() } // Describes the Chef configuration. type ChefConfiguration struct { _ struct{} `type:"structure"` // The Berkshelf version. BerkshelfVersion *string `type:"string"` // Whether to enable Berkshelf. ManageBerkshelf *bool `type:"boolean"` } // String returns the string representation func (s ChefConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChefConfiguration) GoString() string { return s.String() } type CloneStackInput struct { _ struct{} `type:"structure"` // The default AWS OpsWorks agent version. You have the following options: // // * Auto-update - Set this parameter to LATEST. AWS OpsWorks automatically // installs new agent versions on the stack's instances as soon as they are // available. // // * Fixed version - Set this parameter to your preferred agent version. // To update the agent version, you must edit the stack configuration and // specify a new version. AWS OpsWorks then automatically installs that version // on the stack's instances. // // The default setting is LATEST. To specify an agent version, you must use // the complete version number, not the abbreviated number shown on the console. // For a list of available agent version numbers, call DescribeAgentVersions. // // You can also specify an agent version when you create or update an instance, // which overrides the stack's default setting. AgentVersion *string `type:"string"` // A list of stack attributes and values as key/value pairs to be added to the // cloned stack. Attributes map[string]*string `type:"map"` // A ChefConfiguration object that specifies whether to enable Berkshelf and // the Berkshelf version on Chef 11.10 stacks. For more information, see Create // a New Stack (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-creating.html). ChefConfiguration *ChefConfiguration `type:"structure"` // A list of source stack app IDs to be included in the cloned stack. CloneAppIds []*string `type:"list"` // Whether to clone the source stack's permissions. ClonePermissions *bool `type:"boolean"` // The configuration manager. When you clone a stack we recommend that you use // the configuration manager to specify the Chef version: 12, 11.10, or 11.4 // for Linux stacks, or 12.2 for Windows stacks. The default value for Linux // stacks is currently 12. ConfigurationManager *StackConfigurationManager `type:"structure"` // Contains the information required to retrieve an app or cookbook from a repository. // For more information, see Creating Apps (http://docs.aws.amazon.com/opsworks/latest/userguide/workingapps-creating.html) // or Custom Recipes and Cookbooks (http://docs.aws.amazon.com/opsworks/latest/userguide/workingcookbook.html). CustomCookbooksSource *Source `type:"structure"` // A string that contains user-defined, custom JSON. It is used to override // the corresponding default stack configuration JSON values. The string should // be in the following format: // // "{\"key1\": \"value1\", \"key2\": \"value2\",...}" // // For more information on custom JSON, see Use Custom JSON to Modify the Stack // Configuration Attributes (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-json.html) CustomJson *string `type:"string"` // The cloned stack's default Availability Zone, which must be in the specified // region. For more information, see Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html). // If you also specify a value for DefaultSubnetId, the subnet must be in the // same zone. For more information, see the VpcId parameter description. DefaultAvailabilityZone *string `type:"string"` // The Amazon Resource Name (ARN) of an IAM profile that is the default profile // for all of the stack's EC2 instances. For more information about IAM ARNs, // see Using Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html). DefaultInstanceProfileArn *string `type:"string"` // The stack's operating system, which must be set to one of the following. // // * A supported Linux operating system: An Amazon Linux version, such as // Amazon Linux 2016.03, Amazon Linux 2015.09, or Amazon Linux 2015.03. // // * A supported Ubuntu operating system, such as Ubuntu 16.04 LTS, Ubuntu // 14.04 LTS, or Ubuntu 12.04 LTS. // // * CentOS 7 // // * Red Hat Enterprise Linux 7 // // * Microsoft Windows Server 2012 R2 Base, Microsoft Windows Server 2012 // R2 with SQL Server Express, Microsoft Windows Server 2012 R2 with SQL // Server Standard, or Microsoft Windows Server 2012 R2 with SQL Server Web. // // * A custom AMI: Custom. You specify the custom AMI you want to use when // you create instances. For more information on how to use custom AMIs with // OpsWorks, see Using Custom AMIs (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-custom-ami.html). // // The default option is the parent stack's operating system. For more information // on the supported operating systems, see AWS OpsWorks Operating Systems (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-os.html). // // You can specify a different Linux operating system for the cloned stack, // but you cannot change from Linux to Windows or Windows to Linux. DefaultOs *string `type:"string"` // The default root device type. This value is used by default for all instances // in the cloned stack, but you can override it when you create an instance. // For more information, see Storage for the Root Device (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ComponentsAMIs.html#storage-for-the-root-device). DefaultRootDeviceType *string `type:"string" enum:"RootDeviceType"` // A default Amazon EC2 key pair name. The default value is none. If you specify // a key pair name, AWS OpsWorks installs the public key on the instance and // you can use the private key with an SSH client to log in to the instance. // For more information, see Using SSH to Communicate with an Instance (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-ssh.html) // and Managing SSH Access (http://docs.aws.amazon.com/opsworks/latest/userguide/security-ssh-access.html). // You can override this setting by specifying a different key pair, or no key // pair, when you create an instance (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-add.html). DefaultSshKeyName *string `type:"string"` // The stack's default VPC subnet ID. This parameter is required if you specify // a value for the VpcId parameter. All instances are launched into this subnet // unless you specify otherwise when you create the instance. If you also specify // a value for DefaultAvailabilityZone, the subnet must be in that zone. For // information on default values and when this parameter is required, see the // VpcId parameter description. DefaultSubnetId *string `type:"string"` // The stack's host name theme, with spaces are replaced by underscores. The // theme is used to generate host names for the stack's instances. By default, // HostnameTheme is set to Layer_Dependent, which creates host names by appending // integers to the layer's short name. The other themes are: // // * Baked_Goods // // * Clouds // // * Europe_Cities // // * Fruits // // * Greek_Deities // // * Legendary_creatures_from_Japan // // * Planets_and_Moons // // * Roman_Deities // // * Scottish_Islands // // * US_Cities // // * Wild_Cats // // To obtain a generated host name, call GetHostNameSuggestion, which returns // a host name based on the current theme. HostnameTheme *string `type:"string"` // The cloned stack name. Name *string `type:"string"` // The cloned stack AWS region, such as "ap-northeast-2". For more information // about AWS regions, see Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html). Region *string `type:"string"` // The stack AWS Identity and Access Management (IAM) role, which allows AWS // OpsWorks to work with AWS resources on your behalf. You must set this parameter // to the Amazon Resource Name (ARN) for an existing IAM role. If you create // a stack by using the AWS OpsWorks console, it creates the role for you. You // can obtain an existing stack's IAM ARN programmatically by calling DescribePermissions. // For more information about IAM ARNs, see Using Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html). // // You must set this parameter to a valid service role ARN or the action will // fail; there is no default value. You can specify the source stack's service // role ARN, if you prefer, but you must do so explicitly. // // ServiceRoleArn is a required field ServiceRoleArn *string `type:"string" required:"true"` // The source stack ID. // // SourceStackId is a required field SourceStackId *string `type:"string" required:"true"` // Whether to use custom cookbooks. UseCustomCookbooks *bool `type:"boolean"` // Whether to associate the AWS OpsWorks built-in security groups with the stack's // layers. // // AWS OpsWorks provides a standard set of built-in security groups, one for // each layer, which are associated with layers by default. With UseOpsworksSecurityGroups // you can instead provide your own custom security groups. UseOpsworksSecurityGroups // has the following settings: // // * True - AWS OpsWorks automatically associates the appropriate built-in // security group with each layer (default setting). You can associate additional // security groups with a layer after you create it but you cannot delete // the built-in security group. // // * False - AWS OpsWorks does not associate built-in security groups with // layers. You must create appropriate Amazon Elastic Compute Cloud (Amazon // EC2) security groups and associate a security group with each layer that // you create. However, you can still manually associate a built-in security // group with a layer on creation; custom security groups are required only // for those layers that need custom settings. // // For more information, see Create a New Stack (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-creating.html). UseOpsworksSecurityGroups *bool `type:"boolean"` // The ID of the VPC that the cloned stack is to be launched into. It must be // in the specified region. All instances are launched into this VPC, and you // cannot change the ID later. // // * If your account supports EC2 Classic, the default value is no VPC. // // * If your account does not support EC2 Classic, the default value is the // default VPC for the specified region. // // If the VPC ID corresponds to a default VPC and you have specified either // the DefaultAvailabilityZone or the DefaultSubnetId parameter only, AWS OpsWorks // infers the value of the other parameter. If you specify neither parameter, // AWS OpsWorks sets these parameters to the first valid Availability Zone for // the specified region and the corresponding default VPC subnet ID, respectively. // // If you specify a nondefault VPC ID, note the following: // // * It must belong to a VPC in your account that is in the specified region. // // * You must specify a value for DefaultSubnetId. // // For more information on how to use AWS OpsWorks with a VPC, see Running a // Stack in a VPC (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-vpc.html). // For more information on default VPC and EC2 Classic, see Supported Platforms // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html). VpcId *string `type:"string"` } // String returns the string representation func (s CloneStackInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CloneStackInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CloneStackInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CloneStackInput"} if s.ServiceRoleArn == nil { invalidParams.Add(request.NewErrParamRequired("ServiceRoleArn")) } if s.SourceStackId == nil { invalidParams.Add(request.NewErrParamRequired("SourceStackId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a CloneStack request. type CloneStackOutput struct { _ struct{} `type:"structure"` // The cloned stack ID. StackId *string `type:"string"` } // String returns the string representation func (s CloneStackOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CloneStackOutput) GoString() string { return s.String() } // Describes a command. type Command struct { _ struct{} `type:"structure"` // Date and time when the command was acknowledged. AcknowledgedAt *string `type:"string"` // The command ID. CommandId *string `type:"string"` // Date when the command completed. CompletedAt *string `type:"string"` // Date and time when the command was run. CreatedAt *string `type:"string"` // The command deployment ID. DeploymentId *string `type:"string"` // The command exit code. ExitCode *int64 `type:"integer"` // The ID of the instance where the command was executed. InstanceId *string `type:"string"` // The URL of the command log. LogUrl *string `type:"string"` // The command status: // // * failed // // * successful // // * skipped // // * pending Status *string `type:"string"` // The command type: // // * deploy // // * rollback // // * start // // * stop // // * restart // // * undeploy // // * update_dependencies // // * install_dependencies // // * update_custom_cookbooks // // * execute_recipes Type *string `type:"string"` } // String returns the string representation func (s Command) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Command) GoString() string { return s.String() } type CreateAppInput struct { _ struct{} `type:"structure"` // A Source object that specifies the app repository. AppSource *Source `type:"structure"` // One or more user-defined key/value pairs to be added to the stack attributes. Attributes map[string]*string `type:"map"` // The app's data source. DataSources []*DataSource `type:"list"` // A description of the app. Description *string `type:"string"` // The app virtual host settings, with multiple domains separated by commas. // For example: 'www.example.com, example.com' Domains []*string `type:"list"` // Whether to enable SSL for the app. EnableSsl *bool `type:"boolean"` // An array of EnvironmentVariable objects that specify environment variables // to be associated with the app. After you deploy the app, these variables // are defined on the associated app server instance. For more information, // see Environment Variables (http://docs.aws.amazon.com/opsworks/latest/userguide/workingapps-creating.html#workingapps-creating-environment). // // There is no specific limit on the number of environment variables. However, // the size of the associated data structure - which includes the variables' // names, values, and protected flag values - cannot exceed 10 KB (10240 Bytes). // This limit should accommodate most if not all use cases. Exceeding it will // cause an exception with the message, "Environment: is too large (maximum // is 10KB)." // // This parameter is supported only by Chef 11.10 stacks. If you have specified // one or more environment variables, you cannot modify the stack's Chef version. Environment []*EnvironmentVariable `type:"list"` // The app name. // // Name is a required field Name *string `type:"string" required:"true"` // The app's short name. Shortname *string `type:"string"` // An SslConfiguration object with the SSL configuration. SslConfiguration *SslConfiguration `type:"structure"` // The stack ID. // // StackId is a required field StackId *string `type:"string" required:"true"` // The app type. Each supported type is associated with a particular layer. // For example, PHP applications are associated with a PHP layer. AWS OpsWorks // deploys an application to those instances that are members of the corresponding // layer. If your app isn't one of the standard types, or you prefer to implement // your own Deploy recipes, specify other. // // Type is a required field Type *string `type:"string" required:"true" enum:"AppType"` } // String returns the string representation func (s CreateAppInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAppInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateAppInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateAppInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.StackId == nil { invalidParams.Add(request.NewErrParamRequired("StackId")) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if s.Environment != nil { for i, v := range s.Environment { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Environment", i), err.(request.ErrInvalidParams)) } } } if s.SslConfiguration != nil { if err := s.SslConfiguration.Validate(); err != nil { invalidParams.AddNested("SslConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a CreateApp request. type CreateAppOutput struct { _ struct{} `type:"structure"` // The app ID. AppId *string `type:"string"` } // String returns the string representation func (s CreateAppOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAppOutput) GoString() string { return s.String() } type CreateDeploymentInput struct { _ struct{} `type:"structure"` // The app ID. This parameter is required for app deployments, but not for other // deployment commands. AppId *string `type:"string"` // A DeploymentCommand object that specifies the deployment command and any // associated arguments. // // Command is a required field Command *DeploymentCommand `type:"structure" required:"true"` // A user-defined comment. Comment *string `type:"string"` // A string that contains user-defined, custom JSON. It is used to override // the corresponding default stack configuration JSON values. The string should // be in the following format: // // "{\"key1\": \"value1\", \"key2\": \"value2\",...}" // // For more information on custom JSON, see Use Custom JSON to Modify the Stack // Configuration Attributes (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-json.html). CustomJson *string `type:"string"` // The instance IDs for the deployment targets. InstanceIds []*string `type:"list"` // The layer IDs for the deployment targets. LayerIds []*string `type:"list"` // The stack ID. // // StackId is a required field StackId *string `type:"string" required:"true"` } // String returns the string representation func (s CreateDeploymentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDeploymentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDeploymentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDeploymentInput"} if s.Command == nil { invalidParams.Add(request.NewErrParamRequired("Command")) } if s.StackId == nil { invalidParams.Add(request.NewErrParamRequired("StackId")) } if s.Command != nil { if err := s.Command.Validate(); err != nil { invalidParams.AddNested("Command", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a CreateDeployment request. type CreateDeploymentOutput struct { _ struct{} `type:"structure"` // The deployment ID, which can be used with other requests to identify the // deployment. DeploymentId *string `type:"string"` } // String returns the string representation func (s CreateDeploymentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDeploymentOutput) GoString() string { return s.String() } type CreateInstanceInput struct { _ struct{} `type:"structure"` // The default AWS OpsWorks agent version. You have the following options: // // * INHERIT - Use the stack's default agent version setting. // // * version_number - Use the specified agent version. This value overrides // the stack's default setting. To update the agent version, edit the instance // configuration and specify a new version. AWS OpsWorks then automatically // installs that version on the instance. // // The default setting is INHERIT. To specify an agent version, you must use // the complete version number, not the abbreviated number shown on the console. // For a list of available agent version numbers, call DescribeAgentVersions. AgentVersion *string `type:"string"` // A custom AMI ID to be used to create the instance. The AMI should be based // on one of the supported operating systems. For more information, see Using // Custom AMIs (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-custom-ami.html). // // If you specify a custom AMI, you must set Os to Custom. AmiId *string `type:"string"` // The instance architecture. The default option is x86_64. Instance types do // not necessarily support both architectures. For a list of the architectures // that are supported by the different instance types, see Instance Families // and Types (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html). Architecture *string `type:"string" enum:"Architecture"` // For load-based or time-based instances, the type. Windows stacks can use // only time-based instances. AutoScalingType *string `type:"string" enum:"AutoScalingType"` // The instance Availability Zone. For more information, see Regions and Endpoints // (http://docs.aws.amazon.com/general/latest/gr/rande.html). AvailabilityZone *string `type:"string"` // An array of BlockDeviceMapping objects that specify the instance's block // devices. For more information, see Block Device Mapping (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-device-mapping-concepts.html). // Note that block device mappings are not supported for custom AMIs. BlockDeviceMappings []*BlockDeviceMapping `type:"list"` // Whether to create an Amazon EBS-optimized instance. EbsOptimized *bool `type:"boolean"` // The instance host name. Hostname *string `type:"string"` // Whether to install operating system and package updates when the instance // boots. The default value is true. To control when updates are installed, // set this value to false. You must then update your instances manually by // using CreateDeployment to run the update_dependencies stack command or by // manually running yum (Amazon Linux) or apt-get (Ubuntu) on the instances. // // We strongly recommend using the default value of true to ensure that your // instances have the latest security updates. InstallUpdatesOnBoot *bool `type:"boolean"` // The instance type, such as t2.micro. For a list of supported instance types, // open the stack in the console, choose Instances, and choose + Instance. The // Size list contains the currently supported types. For more information, see // Instance Families and Types (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html). // The parameter values that you use to specify the various types are in the // API Name column of the Available Instance Types table. // // InstanceType is a required field InstanceType *string `type:"string" required:"true"` // An array that contains the instance's layer IDs. // // LayerIds is a required field LayerIds []*string `type:"list" required:"true"` // The instance's operating system, which must be set to one of the following. // // * A supported Linux operating system: An Amazon Linux version, such as // Amazon Linux 2016.03, Amazon Linux 2015.09, or Amazon Linux 2015.03. // // * A supported Ubuntu operating system, such as Ubuntu 16.04 LTS, Ubuntu // 14.04 LTS, or Ubuntu 12.04 LTS. // // * CentOS 7 // // * Red Hat Enterprise Linux 7 // // * A supported Windows operating system, such as Microsoft Windows Server // 2012 R2 Base, Microsoft Windows Server 2012 R2 with SQL Server Express, // Microsoft Windows Server 2012 R2 with SQL Server Standard, or Microsoft // Windows Server 2012 R2 with SQL Server Web. // // * A custom AMI: Custom. // // For more information on the supported operating systems, see AWS OpsWorks // Operating Systems (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-os.html). // // The default option is the current Amazon Linux version. If you set this parameter // to Custom, you must use the CreateInstance action's AmiId parameter to specify // the custom AMI that you want to use. Block device mappings are not supported // if the value is Custom. For more information on the supported operating systems, // see Operating Systems (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-os.html)For // more information on how to use custom AMIs with AWS OpsWorks, see Using Custom // AMIs (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-custom-ami.html). Os *string `type:"string"` // The instance root device type. For more information, see Storage for the // Root Device (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ComponentsAMIs.html#storage-for-the-root-device). RootDeviceType *string `type:"string" enum:"RootDeviceType"` // The instance's Amazon EC2 key-pair name. SshKeyName *string `type:"string"` // The stack ID. // // StackId is a required field StackId *string `type:"string" required:"true"` // The ID of the instance's subnet. If the stack is running in a VPC, you can // use this parameter to override the stack's default subnet ID value and direct // AWS OpsWorks to launch the instance in a different subnet. SubnetId *string `type:"string"` // The instance's tenancy option. The default option is no tenancy, or if the // instance is running in a VPC, inherit tenancy settings from the VPC. The // following are valid values for this parameter: dedicated, default, or host. // Because there are costs associated with changes in tenancy options, we recommend // that you research tenancy options before choosing them for your instances. // For more information about dedicated hosts, see Dedicated Hosts Overview // (http://aws.amazon.com/ec2/dedicated-hosts/) and Amazon EC2 Dedicated Hosts // (http://aws.amazon.com/ec2/dedicated-hosts/). For more information about // dedicated instances, see Dedicated Instances (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/dedicated-instance.html) // and Amazon EC2 Dedicated Instances (http://aws.amazon.com/ec2/purchasing-options/dedicated-instances/). Tenancy *string `type:"string"` // The instance's virtualization type, paravirtual or hvm. VirtualizationType *string `type:"string"` } // String returns the string representation func (s CreateInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateInstanceInput"} if s.InstanceType == nil { invalidParams.Add(request.NewErrParamRequired("InstanceType")) } if s.LayerIds == nil { invalidParams.Add(request.NewErrParamRequired("LayerIds")) } if s.StackId == nil { invalidParams.Add(request.NewErrParamRequired("StackId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a CreateInstance request. type CreateInstanceOutput struct { _ struct{} `type:"structure"` // The instance ID. InstanceId *string `type:"string"` } // String returns the string representation func (s CreateInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateInstanceOutput) GoString() string { return s.String() } type CreateLayerInput struct { _ struct{} `type:"structure"` // One or more user-defined key-value pairs to be added to the stack attributes. // // To create a cluster layer, set the EcsClusterArn attribute to the cluster's // ARN. Attributes map[string]*string `type:"map"` // Whether to automatically assign an Elastic IP address (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) // to the layer's instances. For more information, see How to Edit a Layer (http://docs.aws.amazon.com/opsworks/latest/userguide/workinglayers-basics-edit.html). AutoAssignElasticIps *bool `type:"boolean"` // For stacks that are running in a VPC, whether to automatically assign a public // IP address to the layer's instances. For more information, see How to Edit // a Layer (http://docs.aws.amazon.com/opsworks/latest/userguide/workinglayers-basics-edit.html). AutoAssignPublicIps *bool `type:"boolean"` // The ARN of an IAM profile to be used for the layer's EC2 instances. For more // information about IAM ARNs, see Using Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html). CustomInstanceProfileArn *string `type:"string"` // A JSON-formatted string containing custom stack configuration and deployment // attributes to be installed on the layer's instances. For more information, // see Using Custom JSON (http://docs.aws.amazon.com/opsworks/latest/userguide/workingcookbook-json-override.html). // This feature is supported as of version 1.7.42 of the AWS CLI. CustomJson *string `type:"string"` // A LayerCustomRecipes object that specifies the layer custom recipes. CustomRecipes *Recipes `type:"structure"` // An array containing the layer custom security group IDs. CustomSecurityGroupIds []*string `type:"list"` // Whether to disable auto healing for the layer. EnableAutoHealing *bool `type:"boolean"` // Whether to install operating system and package updates when the instance // boots. The default value is true. To control when updates are installed, // set this value to false. You must then update your instances manually by // using CreateDeployment to run the update_dependencies stack command or by // manually running yum (Amazon Linux) or apt-get (Ubuntu) on the instances. // // To ensure that your instances have the latest security updates, we strongly // recommend using the default value of true. InstallUpdatesOnBoot *bool `type:"boolean"` // A LifeCycleEventConfiguration object that you can use to configure the Shutdown // event to specify an execution timeout and enable or disable Elastic Load // Balancer connection draining. LifecycleEventConfiguration *LifecycleEventConfiguration `type:"structure"` // The layer name, which is used by the console. // // Name is a required field Name *string `type:"string" required:"true"` // An array of Package objects that describes the layer packages. Packages []*string `type:"list"` // For custom layers only, use this parameter to specify the layer's short name, // which is used internally by AWS OpsWorks and by Chef recipes. The short name // is also used as the name for the directory where your app files are installed. // It can have a maximum of 200 characters, which are limited to the alphanumeric // characters, '-', '_', and '.'. // // The built-in layers' short names are defined by AWS OpsWorks. For more information, // see the Layer Reference (http://docs.aws.amazon.com/opsworks/latest/userguide/layers.html). // // Shortname is a required field Shortname *string `type:"string" required:"true"` // The layer stack ID. // // StackId is a required field StackId *string `type:"string" required:"true"` // The layer type. A stack cannot have more than one built-in layer of the same // type. It can have any number of custom layers. Built-in layers are not available // in Chef 12 stacks. // // Type is a required field Type *string `type:"string" required:"true" enum:"LayerType"` // Whether to use Amazon EBS-optimized instances. UseEbsOptimizedInstances *bool `type:"boolean"` // A VolumeConfigurations object that describes the layer's Amazon EBS volumes. VolumeConfigurations []*VolumeConfiguration `type:"list"` } // String returns the string representation func (s CreateLayerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLayerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateLayerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateLayerInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Shortname == nil { invalidParams.Add(request.NewErrParamRequired("Shortname")) } if s.StackId == nil { invalidParams.Add(request.NewErrParamRequired("StackId")) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if s.VolumeConfigurations != nil { for i, v := range s.VolumeConfigurations { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "VolumeConfigurations", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a CreateLayer request. type CreateLayerOutput struct { _ struct{} `type:"structure"` // The layer ID. LayerId *string `type:"string"` } // String returns the string representation func (s CreateLayerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateLayerOutput) GoString() string { return s.String() } type CreateStackInput struct { _ struct{} `type:"structure"` // The default AWS OpsWorks agent version. You have the following options: // // * Auto-update - Set this parameter to LATEST. AWS OpsWorks automatically // installs new agent versions on the stack's instances as soon as they are // available. // // * Fixed version - Set this parameter to your preferred agent version. // To update the agent version, you must edit the stack configuration and // specify a new version. AWS OpsWorks then automatically installs that version // on the stack's instances. // // The default setting is the most recent release of the agent. To specify an // agent version, you must use the complete version number, not the abbreviated // number shown on the console. For a list of available agent version numbers, // call DescribeAgentVersions. // // You can also specify an agent version when you create or update an instance, // which overrides the stack's default setting. AgentVersion *string `type:"string"` // One or more user-defined key-value pairs to be added to the stack attributes. Attributes map[string]*string `type:"map"` // A ChefConfiguration object that specifies whether to enable Berkshelf and // the Berkshelf version on Chef 11.10 stacks. For more information, see Create // a New Stack (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-creating.html). ChefConfiguration *ChefConfiguration `type:"structure"` // The configuration manager. When you create a stack we recommend that you // use the configuration manager to specify the Chef version: 12, 11.10, or // 11.4 for Linux stacks, or 12.2 for Windows stacks. The default value for // Linux stacks is currently 11.4. ConfigurationManager *StackConfigurationManager `type:"structure"` // Contains the information required to retrieve an app or cookbook from a repository. // For more information, see Creating Apps (http://docs.aws.amazon.com/opsworks/latest/userguide/workingapps-creating.html) // or Custom Recipes and Cookbooks (http://docs.aws.amazon.com/opsworks/latest/userguide/workingcookbook.html). CustomCookbooksSource *Source `type:"structure"` // A string that contains user-defined, custom JSON. It can be used to override // the corresponding default stack configuration attribute values or to pass // data to recipes. The string should be in the following format: // // "{\"key1\": \"value1\", \"key2\": \"value2\",...}" // // For more information on custom JSON, see Use Custom JSON to Modify the Stack // Configuration Attributes (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-json.html). CustomJson *string `type:"string"` // The stack's default Availability Zone, which must be in the specified region. // For more information, see Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html). // If you also specify a value for DefaultSubnetId, the subnet must be in the // same zone. For more information, see the VpcId parameter description. DefaultAvailabilityZone *string `type:"string"` // The Amazon Resource Name (ARN) of an IAM profile that is the default profile // for all of the stack's EC2 instances. For more information about IAM ARNs, // see Using Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html). // // DefaultInstanceProfileArn is a required field DefaultInstanceProfileArn *string `type:"string" required:"true"` // The stack's default operating system, which is installed on every instance // unless you specify a different operating system when you create the instance. // You can specify one of the following. // // * A supported Linux operating system: An Amazon Linux version, such as // Amazon Linux 2016.03, Amazon Linux 2015.09, or Amazon Linux 2015.03. // // * A supported Ubuntu operating system, such as Ubuntu 16.04 LTS, Ubuntu // 14.04 LTS, or Ubuntu 12.04 LTS. // // * CentOS 7 // // * Red Hat Enterprise Linux 7 // // * A supported Windows operating system, such as Microsoft Windows Server // 2012 R2 Base, Microsoft Windows Server 2012 R2 with SQL Server Express, // Microsoft Windows Server 2012 R2 with SQL Server Standard, or Microsoft // Windows Server 2012 R2 with SQL Server Web. // // * A custom AMI: Custom. You specify the custom AMI you want to use when // you create instances. For more information, see Using Custom AMIs (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-custom-ami.html). // // The default option is the current Amazon Linux version. For more information // on the supported operating systems, see AWS OpsWorks Operating Systems (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-os.html). DefaultOs *string `type:"string"` // The default root device type. This value is the default for all instances // in the stack, but you can override it when you create an instance. The default // option is instance-store. For more information, see Storage for the Root // Device (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ComponentsAMIs.html#storage-for-the-root-device). DefaultRootDeviceType *string `type:"string" enum:"RootDeviceType"` // A default Amazon EC2 key pair name. The default value is none. If you specify // a key pair name, AWS OpsWorks installs the public key on the instance and // you can use the private key with an SSH client to log in to the instance. // For more information, see Using SSH to Communicate with an Instance (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-ssh.html) // and Managing SSH Access (http://docs.aws.amazon.com/opsworks/latest/userguide/security-ssh-access.html). // You can override this setting by specifying a different key pair, or no key // pair, when you create an instance (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-add.html). DefaultSshKeyName *string `type:"string"` // The stack's default VPC subnet ID. This parameter is required if you specify // a value for the VpcId parameter. All instances are launched into this subnet // unless you specify otherwise when you create the instance. If you also specify // a value for DefaultAvailabilityZone, the subnet must be in that zone. For // information on default values and when this parameter is required, see the // VpcId parameter description. DefaultSubnetId *string `type:"string"` // The stack's host name theme, with spaces replaced by underscores. The theme // is used to generate host names for the stack's instances. By default, HostnameTheme // is set to Layer_Dependent, which creates host names by appending integers // to the layer's short name. The other themes are: // // * Baked_Goods // // * Clouds // // * Europe_Cities // // * Fruits // // * Greek_Deities // // * Legendary_creatures_from_Japan // // * Planets_and_Moons // // * Roman_Deities // // * Scottish_Islands // // * US_Cities // // * Wild_Cats // // To obtain a generated host name, call GetHostNameSuggestion, which returns // a host name based on the current theme. HostnameTheme *string `type:"string"` // The stack name. // // Name is a required field Name *string `type:"string" required:"true"` // The stack's AWS region, such as "ap-south-1". For more information about // Amazon regions, see Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html). // // Region is a required field Region *string `type:"string" required:"true"` // The stack's AWS Identity and Access Management (IAM) role, which allows AWS // OpsWorks to work with AWS resources on your behalf. You must set this parameter // to the Amazon Resource Name (ARN) for an existing IAM role. For more information // about IAM ARNs, see Using Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html). // // ServiceRoleArn is a required field ServiceRoleArn *string `type:"string" required:"true"` // Whether the stack uses custom cookbooks. UseCustomCookbooks *bool `type:"boolean"` // Whether to associate the AWS OpsWorks built-in security groups with the stack's // layers. // // AWS OpsWorks provides a standard set of built-in security groups, one for // each layer, which are associated with layers by default. With UseOpsworksSecurityGroups // you can instead provide your own custom security groups. UseOpsworksSecurityGroups // has the following settings: // // * True - AWS OpsWorks automatically associates the appropriate built-in // security group with each layer (default setting). You can associate additional // security groups with a layer after you create it, but you cannot delete // the built-in security group. // // * False - AWS OpsWorks does not associate built-in security groups with // layers. You must create appropriate EC2 security groups and associate // a security group with each layer that you create. However, you can still // manually associate a built-in security group with a layer on creation; // custom security groups are required only for those layers that need custom // settings. // // For more information, see Create a New Stack (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-creating.html). UseOpsworksSecurityGroups *bool `type:"boolean"` // The ID of the VPC that the stack is to be launched into. The VPC must be // in the stack's region. All instances are launched into this VPC. You cannot // change the ID later. // // * If your account supports EC2-Classic, the default value is no VPC. // // * If your account does not support EC2-Classic, the default value is the // default VPC for the specified region. // // If the VPC ID corresponds to a default VPC and you have specified either // the DefaultAvailabilityZone or the DefaultSubnetId parameter only, AWS OpsWorks // infers the value of the other parameter. If you specify neither parameter, // AWS OpsWorks sets these parameters to the first valid Availability Zone for // the specified region and the corresponding default VPC subnet ID, respectively. // // If you specify a nondefault VPC ID, note the following: // // * It must belong to a VPC in your account that is in the specified region. // // * You must specify a value for DefaultSubnetId. // // For more information on how to use AWS OpsWorks with a VPC, see Running a // Stack in a VPC (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-vpc.html). // For more information on default VPC and EC2-Classic, see Supported Platforms // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html). VpcId *string `type:"string"` } // String returns the string representation func (s CreateStackInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateStackInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateStackInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateStackInput"} if s.DefaultInstanceProfileArn == nil { invalidParams.Add(request.NewErrParamRequired("DefaultInstanceProfileArn")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Region == nil { invalidParams.Add(request.NewErrParamRequired("Region")) } if s.ServiceRoleArn == nil { invalidParams.Add(request.NewErrParamRequired("ServiceRoleArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a CreateStack request. type CreateStackOutput struct { _ struct{} `type:"structure"` // The stack ID, which is an opaque string that you use to identify the stack // when performing actions such as DescribeStacks. StackId *string `type:"string"` } // String returns the string representation func (s CreateStackOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateStackOutput) GoString() string { return s.String() } type CreateUserProfileInput struct { _ struct{} `type:"structure"` // Whether users can specify their own SSH public key through the My Settings // page. For more information, see Setting an IAM User's Public SSH Key (http://docs.aws.amazon.com/opsworks/latest/userguide/security-settingsshkey.html). AllowSelfManagement *bool `type:"boolean"` // The user's IAM ARN; this can also be a federated user's ARN. // // IamUserArn is a required field IamUserArn *string `type:"string" required:"true"` // The user's public SSH key. SshPublicKey *string `type:"string"` // The user's SSH user name. The allowable characters are [a-z], [A-Z], [0-9], // '-', and '_'. If the specified name includes other punctuation marks, AWS // OpsWorks removes them. For example, my.name will be changed to myname. If // you do not specify an SSH user name, AWS OpsWorks generates one from the // IAM user name. SshUsername *string `type:"string"` } // String returns the string representation func (s CreateUserProfileInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateUserProfileInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateUserProfileInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateUserProfileInput"} if s.IamUserArn == nil { invalidParams.Add(request.NewErrParamRequired("IamUserArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a CreateUserProfile request. type CreateUserProfileOutput struct { _ struct{} `type:"structure"` // The user's IAM ARN. IamUserArn *string `type:"string"` } // String returns the string representation func (s CreateUserProfileOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateUserProfileOutput) GoString() string { return s.String() } // Describes an app's data source. type DataSource struct { _ struct{} `type:"structure"` // The data source's ARN. Arn *string `type:"string"` // The database name. DatabaseName *string `type:"string"` // The data source's type, AutoSelectOpsworksMysqlInstance, OpsworksMysqlInstance, // or RdsDbInstance. Type *string `type:"string"` } // String returns the string representation func (s DataSource) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DataSource) GoString() string { return s.String() } type DeleteAppInput struct { _ struct{} `type:"structure"` // The app ID. // // AppId is a required field AppId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteAppInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAppInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAppInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAppInput"} if s.AppId == nil { invalidParams.Add(request.NewErrParamRequired("AppId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteAppOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteAppOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAppOutput) GoString() string { return s.String() } type DeleteInstanceInput struct { _ struct{} `type:"structure"` // Whether to delete the instance Elastic IP address. DeleteElasticIp *bool `type:"boolean"` // Whether to delete the instance's Amazon EBS volumes. DeleteVolumes *bool `type:"boolean"` // The instance ID. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteInstanceInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteInstanceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteInstanceOutput) GoString() string { return s.String() } type DeleteLayerInput struct { _ struct{} `type:"structure"` // The layer ID. // // LayerId is a required field LayerId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteLayerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLayerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteLayerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteLayerInput"} if s.LayerId == nil { invalidParams.Add(request.NewErrParamRequired("LayerId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteLayerOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteLayerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteLayerOutput) GoString() string { return s.String() } type DeleteStackInput struct { _ struct{} `type:"structure"` // The stack ID. // // StackId is a required field StackId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteStackInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteStackInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteStackInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteStackInput"} if s.StackId == nil { invalidParams.Add(request.NewErrParamRequired("StackId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteStackOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteStackOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteStackOutput) GoString() string { return s.String() } type DeleteUserProfileInput struct { _ struct{} `type:"structure"` // The user's IAM ARN. This can also be a federated user's ARN. // // IamUserArn is a required field IamUserArn *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteUserProfileInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUserProfileInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteUserProfileInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteUserProfileInput"} if s.IamUserArn == nil { invalidParams.Add(request.NewErrParamRequired("IamUserArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteUserProfileOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteUserProfileOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteUserProfileOutput) GoString() string { return s.String() } // Describes a deployment of a stack or app. type Deployment struct { _ struct{} `type:"structure"` // The app ID. AppId *string `type:"string"` // Used to specify a stack or deployment command. Command *DeploymentCommand `type:"structure"` // A user-defined comment. Comment *string `type:"string"` // Date when the deployment completed. CompletedAt *string `type:"string"` // Date when the deployment was created. CreatedAt *string `type:"string"` // A string that contains user-defined custom JSON. It can be used to override // the corresponding default stack configuration attribute values for stack // or to pass data to recipes. The string should be in the following format: // // "{\"key1\": \"value1\", \"key2\": \"value2\",...}" // // For more information on custom JSON, see Use Custom JSON to Modify the Stack // Configuration Attributes (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-json.html). CustomJson *string `type:"string"` // The deployment ID. DeploymentId *string `type:"string"` // The deployment duration. Duration *int64 `type:"integer"` // The user's IAM ARN. IamUserArn *string `type:"string"` // The IDs of the target instances. InstanceIds []*string `type:"list"` // The stack ID. StackId *string `type:"string"` // The deployment status: // // * running // // * successful // // * failed Status *string `type:"string"` } // String returns the string representation func (s Deployment) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Deployment) GoString() string { return s.String() } // Used to specify a stack or deployment command. type DeploymentCommand struct { _ struct{} `type:"structure"` // The arguments of those commands that take arguments. It should be set to // a JSON object with the following format: // // {"arg_name1" : ["value1", "value2", ...], "arg_name2" : ["value1", "value2", // ...], ...} // // The update_dependencies command takes two arguments: // // * upgrade_os_to - Specifies the desired Amazon Linux version for instances // whose OS you want to upgrade, such as Amazon Linux 2014.09. You must also // set the allow_reboot argument to true. // // * allow_reboot - Specifies whether to allow AWS OpsWorks to reboot the // instances if necessary, after installing the updates. This argument can // be set to either true or false. The default value is false. // // For example, to upgrade an instance to Amazon Linux 2014.09, set Args to // the following. // // { "upgrade_os_to":["Amazon Linux 2014.09"], "allow_reboot":["true"] } Args map[string][]*string `type:"map"` // Specifies the operation. You can specify only one command. // // For stacks, the following commands are available: // // * execute_recipes: Execute one or more recipes. To specify the recipes, // set an Args parameter named recipes to the list of recipes to be executed. // For example, to execute phpapp::appsetup, set Args to {"recipes":["phpapp::appsetup"]}. // // * install_dependencies: Install the stack's dependencies. // // * update_custom_cookbooks: Update the stack's custom cookbooks. // // * update_dependencies: Update the stack's dependencies. // // The update_dependencies and install_dependencies commands are supported only // for Linux instances. You can run the commands successfully on Windows instances, // but they do nothing. // // For apps, the following commands are available: // // * deploy: Deploy an app. Ruby on Rails apps have an optional Args parameter // named migrate. Set Args to {"migrate":["true"]} to migrate the database. // The default setting is {"migrate":["false"]}. // // * rollback Roll the app back to the previous version. When you update // an app, AWS OpsWorks stores the previous version, up to a maximum of five // versions. You can use this command to roll an app back as many as four // versions. // // * start: Start the app's web or application server. // // * stop: Stop the app's web or application server. // // * restart: Restart the app's web or application server. // // * undeploy: Undeploy the app. // // Name is a required field Name *string `type:"string" required:"true" enum:"DeploymentCommandName"` } // String returns the string representation func (s DeploymentCommand) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeploymentCommand) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeploymentCommand) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeploymentCommand"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeregisterEcsClusterInput struct { _ struct{} `type:"structure"` // The cluster's ARN. // // EcsClusterArn is a required field EcsClusterArn *string `type:"string" required:"true"` } // String returns the string representation func (s DeregisterEcsClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterEcsClusterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeregisterEcsClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeregisterEcsClusterInput"} if s.EcsClusterArn == nil { invalidParams.Add(request.NewErrParamRequired("EcsClusterArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeregisterEcsClusterOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeregisterEcsClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterEcsClusterOutput) GoString() string { return s.String() } type DeregisterElasticIpInput struct { _ struct{} `type:"structure"` // The Elastic IP address. // // ElasticIp is a required field ElasticIp *string `type:"string" required:"true"` } // String returns the string representation func (s DeregisterElasticIpInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterElasticIpInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeregisterElasticIpInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeregisterElasticIpInput"} if s.ElasticIp == nil { invalidParams.Add(request.NewErrParamRequired("ElasticIp")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeregisterElasticIpOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeregisterElasticIpOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterElasticIpOutput) GoString() string { return s.String() } type DeregisterInstanceInput struct { _ struct{} `type:"structure"` // The instance ID. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` } // String returns the string representation func (s DeregisterInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeregisterInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeregisterInstanceInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeregisterInstanceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeregisterInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterInstanceOutput) GoString() string { return s.String() } type DeregisterRdsDbInstanceInput struct { _ struct{} `type:"structure"` // The Amazon RDS instance's ARN. // // RdsDbInstanceArn is a required field RdsDbInstanceArn *string `type:"string" required:"true"` } // String returns the string representation func (s DeregisterRdsDbInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterRdsDbInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeregisterRdsDbInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeregisterRdsDbInstanceInput"} if s.RdsDbInstanceArn == nil { invalidParams.Add(request.NewErrParamRequired("RdsDbInstanceArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeregisterRdsDbInstanceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeregisterRdsDbInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterRdsDbInstanceOutput) GoString() string { return s.String() } type DeregisterVolumeInput struct { _ struct{} `type:"structure"` // The AWS OpsWorks volume ID, which is the GUID that AWS OpsWorks assigned // to the instance when you registered the volume with the stack, not the Amazon // EC2 volume ID. // // VolumeId is a required field VolumeId *string `type:"string" required:"true"` } // String returns the string representation func (s DeregisterVolumeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterVolumeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeregisterVolumeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeregisterVolumeInput"} if s.VolumeId == nil { invalidParams.Add(request.NewErrParamRequired("VolumeId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeregisterVolumeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeregisterVolumeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterVolumeOutput) GoString() string { return s.String() } type DescribeAgentVersionsInput struct { _ struct{} `type:"structure"` // The configuration manager. ConfigurationManager *StackConfigurationManager `type:"structure"` // The stack ID. StackId *string `type:"string"` } // String returns the string representation func (s DescribeAgentVersionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAgentVersionsInput) GoString() string { return s.String() } // Contains the response to a DescribeAgentVersions request. type DescribeAgentVersionsOutput struct { _ struct{} `type:"structure"` // The agent versions for the specified stack or configuration manager. Note // that this value is the complete version number, not the abbreviated number // used by the console. AgentVersions []*AgentVersion `type:"list"` } // String returns the string representation func (s DescribeAgentVersionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAgentVersionsOutput) GoString() string { return s.String() } type DescribeAppsInput struct { _ struct{} `type:"structure"` // An array of app IDs for the apps to be described. If you use this parameter, // DescribeApps returns a description of the specified apps. Otherwise, it returns // a description of every app. AppIds []*string `type:"list"` // The app stack ID. If you use this parameter, DescribeApps returns a description // of the apps in the specified stack. StackId *string `type:"string"` } // String returns the string representation func (s DescribeAppsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAppsInput) GoString() string { return s.String() } // Contains the response to a DescribeApps request. type DescribeAppsOutput struct { _ struct{} `type:"structure"` // An array of App objects that describe the specified apps. Apps []*App `type:"list"` } // String returns the string representation func (s DescribeAppsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAppsOutput) GoString() string { return s.String() } type DescribeCommandsInput struct { _ struct{} `type:"structure"` // An array of command IDs. If you include this parameter, DescribeCommands // returns a description of the specified commands. Otherwise, it returns a // description of every command. CommandIds []*string `type:"list"` // The deployment ID. If you include this parameter, DescribeCommands returns // a description of the commands associated with the specified deployment. DeploymentId *string `type:"string"` // The instance ID. If you include this parameter, DescribeCommands returns // a description of the commands associated with the specified instance. InstanceId *string `type:"string"` } // String returns the string representation func (s DescribeCommandsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCommandsInput) GoString() string { return s.String() } // Contains the response to a DescribeCommands request. type DescribeCommandsOutput struct { _ struct{} `type:"structure"` // An array of Command objects that describe each of the specified commands. Commands []*Command `type:"list"` } // String returns the string representation func (s DescribeCommandsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCommandsOutput) GoString() string { return s.String() } type DescribeDeploymentsInput struct { _ struct{} `type:"structure"` // The app ID. If you include this parameter, DescribeDeployments returns a // description of the commands associated with the specified app. AppId *string `type:"string"` // An array of deployment IDs to be described. If you include this parameter, // DescribeDeployments returns a description of the specified deployments. Otherwise, // it returns a description of every deployment. DeploymentIds []*string `type:"list"` // The stack ID. If you include this parameter, DescribeDeployments returns // a description of the commands associated with the specified stack. StackId *string `type:"string"` } // String returns the string representation func (s DescribeDeploymentsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDeploymentsInput) GoString() string { return s.String() } // Contains the response to a DescribeDeployments request. type DescribeDeploymentsOutput struct { _ struct{} `type:"structure"` // An array of Deployment objects that describe the deployments. Deployments []*Deployment `type:"list"` } // String returns the string representation func (s DescribeDeploymentsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDeploymentsOutput) GoString() string { return s.String() } type DescribeEcsClustersInput struct { _ struct{} `type:"structure"` // A list of ARNs, one for each cluster to be described. EcsClusterArns []*string `type:"list"` // To receive a paginated response, use this parameter to specify the maximum // number of results to be returned with a single call. If the number of available // results exceeds this maximum, the response includes a NextToken value that // you can assign to the NextToken request parameter to get the next set of // results. MaxResults *int64 `type:"integer"` // If the previous paginated request did not return all of the remaining results, // the response object'sNextToken parameter value is set to a token. To retrieve // the next set of results, call DescribeEcsClusters again and assign that token // to the request object's NextToken parameter. If there are no remaining results, // the previous response object's NextToken parameter is set to null. NextToken *string `type:"string"` // A stack ID. DescribeEcsClusters returns a description of the cluster that // is registered with the stack. StackId *string `type:"string"` } // String returns the string representation func (s DescribeEcsClustersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEcsClustersInput) GoString() string { return s.String() } // Contains the response to a DescribeEcsClusters request. type DescribeEcsClustersOutput struct { _ struct{} `type:"structure"` // A list of EcsCluster objects containing the cluster descriptions. EcsClusters []*EcsCluster `type:"list"` // If a paginated request does not return all of the remaining results, this // parameter is set to a token that you can assign to the request object's NextToken // parameter to retrieve the next set of results. If the previous paginated // request returned all of the remaining results, this parameter is set to null. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeEcsClustersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEcsClustersOutput) GoString() string { return s.String() } type DescribeElasticIpsInput struct { _ struct{} `type:"structure"` // The instance ID. If you include this parameter, DescribeElasticIps returns // a description of the Elastic IP addresses associated with the specified instance. InstanceId *string `type:"string"` // An array of Elastic IP addresses to be described. If you include this parameter, // DescribeElasticIps returns a description of the specified Elastic IP addresses. // Otherwise, it returns a description of every Elastic IP address. Ips []*string `type:"list"` // A stack ID. If you include this parameter, DescribeElasticIps returns a description // of the Elastic IP addresses that are registered with the specified stack. StackId *string `type:"string"` } // String returns the string representation func (s DescribeElasticIpsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeElasticIpsInput) GoString() string { return s.String() } // Contains the response to a DescribeElasticIps request. type DescribeElasticIpsOutput struct { _ struct{} `type:"structure"` // An ElasticIps object that describes the specified Elastic IP addresses. ElasticIps []*ElasticIp `type:"list"` } // String returns the string representation func (s DescribeElasticIpsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeElasticIpsOutput) GoString() string { return s.String() } type DescribeElasticLoadBalancersInput struct { _ struct{} `type:"structure"` // A list of layer IDs. The action describes the Elastic Load Balancing instances // for the specified layers. LayerIds []*string `type:"list"` // A stack ID. The action describes the stack's Elastic Load Balancing instances. StackId *string `type:"string"` } // String returns the string representation func (s DescribeElasticLoadBalancersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeElasticLoadBalancersInput) GoString() string { return s.String() } // Contains the response to a DescribeElasticLoadBalancers request. type DescribeElasticLoadBalancersOutput struct { _ struct{} `type:"structure"` // A list of ElasticLoadBalancer objects that describe the specified Elastic // Load Balancing instances. ElasticLoadBalancers []*ElasticLoadBalancer `type:"list"` } // String returns the string representation func (s DescribeElasticLoadBalancersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeElasticLoadBalancersOutput) GoString() string { return s.String() } type DescribeInstancesInput struct { _ struct{} `type:"structure"` // An array of instance IDs to be described. If you use this parameter, DescribeInstances // returns a description of the specified instances. Otherwise, it returns a // description of every instance. InstanceIds []*string `type:"list"` // A layer ID. If you use this parameter, DescribeInstances returns descriptions // of the instances associated with the specified layer. LayerId *string `type:"string"` // A stack ID. If you use this parameter, DescribeInstances returns descriptions // of the instances associated with the specified stack. StackId *string `type:"string"` } // String returns the string representation func (s DescribeInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInstancesInput) GoString() string { return s.String() } // Contains the response to a DescribeInstances request. type DescribeInstancesOutput struct { _ struct{} `type:"structure"` // An array of Instance objects that describe the instances. Instances []*Instance `type:"list"` } // String returns the string representation func (s DescribeInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInstancesOutput) GoString() string { return s.String() } type DescribeLayersInput struct { _ struct{} `type:"structure"` // An array of layer IDs that specify the layers to be described. If you omit // this parameter, DescribeLayers returns a description of every layer in the // specified stack. LayerIds []*string `type:"list"` // The stack ID. StackId *string `type:"string"` } // String returns the string representation func (s DescribeLayersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLayersInput) GoString() string { return s.String() } // Contains the response to a DescribeLayers request. type DescribeLayersOutput struct { _ struct{} `type:"structure"` // An array of Layer objects that describe the layers. Layers []*Layer `type:"list"` } // String returns the string representation func (s DescribeLayersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLayersOutput) GoString() string { return s.String() } type DescribeLoadBasedAutoScalingInput struct { _ struct{} `type:"structure"` // An array of layer IDs. // // LayerIds is a required field LayerIds []*string `type:"list" required:"true"` } // String returns the string representation func (s DescribeLoadBasedAutoScalingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoadBasedAutoScalingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeLoadBasedAutoScalingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeLoadBasedAutoScalingInput"} if s.LayerIds == nil { invalidParams.Add(request.NewErrParamRequired("LayerIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a DescribeLoadBasedAutoScaling request. type DescribeLoadBasedAutoScalingOutput struct { _ struct{} `type:"structure"` // An array of LoadBasedAutoScalingConfiguration objects that describe each // layer's configuration. LoadBasedAutoScalingConfigurations []*LoadBasedAutoScalingConfiguration `type:"list"` } // String returns the string representation func (s DescribeLoadBasedAutoScalingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoadBasedAutoScalingOutput) GoString() string { return s.String() } type DescribeMyUserProfileInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DescribeMyUserProfileInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeMyUserProfileInput) GoString() string { return s.String() } // Contains the response to a DescribeMyUserProfile request. type DescribeMyUserProfileOutput struct { _ struct{} `type:"structure"` // A UserProfile object that describes the user's SSH information. UserProfile *SelfUserProfile `type:"structure"` } // String returns the string representation func (s DescribeMyUserProfileOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeMyUserProfileOutput) GoString() string { return s.String() } type DescribePermissionsInput struct { _ struct{} `type:"structure"` // The user's IAM ARN. This can also be a federated user's ARN. For more information // about IAM ARNs, see Using Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html). IamUserArn *string `type:"string"` // The stack ID. StackId *string `type:"string"` } // String returns the string representation func (s DescribePermissionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribePermissionsInput) GoString() string { return s.String() } // Contains the response to a DescribePermissions request. type DescribePermissionsOutput struct { _ struct{} `type:"structure"` // An array of Permission objects that describe the stack permissions. // // * If the request object contains only a stack ID, the array contains a // Permission object with permissions for each of the stack IAM ARNs. // // * If the request object contains only an IAM ARN, the array contains a // Permission object with permissions for each of the user's stack IDs. // // * If the request contains a stack ID and an IAM ARN, the array contains // a single Permission object with permissions for the specified stack and // IAM ARN. Permissions []*Permission `type:"list"` } // String returns the string representation func (s DescribePermissionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribePermissionsOutput) GoString() string { return s.String() } type DescribeRaidArraysInput struct { _ struct{} `type:"structure"` // The instance ID. If you use this parameter, DescribeRaidArrays returns descriptions // of the RAID arrays associated with the specified instance. InstanceId *string `type:"string"` // An array of RAID array IDs. If you use this parameter, DescribeRaidArrays // returns descriptions of the specified arrays. Otherwise, it returns a description // of every array. RaidArrayIds []*string `type:"list"` // The stack ID. StackId *string `type:"string"` } // String returns the string representation func (s DescribeRaidArraysInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRaidArraysInput) GoString() string { return s.String() } // Contains the response to a DescribeRaidArrays request. type DescribeRaidArraysOutput struct { _ struct{} `type:"structure"` // A RaidArrays object that describes the specified RAID arrays. RaidArrays []*RaidArray `type:"list"` } // String returns the string representation func (s DescribeRaidArraysOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRaidArraysOutput) GoString() string { return s.String() } type DescribeRdsDbInstancesInput struct { _ struct{} `type:"structure"` // An array containing the ARNs of the instances to be described. RdsDbInstanceArns []*string `type:"list"` // The stack ID that the instances are registered with. The operation returns // descriptions of all registered Amazon RDS instances. // // StackId is a required field StackId *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeRdsDbInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRdsDbInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeRdsDbInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeRdsDbInstancesInput"} if s.StackId == nil { invalidParams.Add(request.NewErrParamRequired("StackId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a DescribeRdsDbInstances request. type DescribeRdsDbInstancesOutput struct { _ struct{} `type:"structure"` // An a array of RdsDbInstance objects that describe the instances. RdsDbInstances []*RdsDbInstance `type:"list"` } // String returns the string representation func (s DescribeRdsDbInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRdsDbInstancesOutput) GoString() string { return s.String() } type DescribeServiceErrorsInput struct { _ struct{} `type:"structure"` // The instance ID. If you use this parameter, DescribeServiceErrors returns // descriptions of the errors associated with the specified instance. InstanceId *string `type:"string"` // An array of service error IDs. If you use this parameter, DescribeServiceErrors // returns descriptions of the specified errors. Otherwise, it returns a description // of every error. ServiceErrorIds []*string `type:"list"` // The stack ID. If you use this parameter, DescribeServiceErrors returns descriptions // of the errors associated with the specified stack. StackId *string `type:"string"` } // String returns the string representation func (s DescribeServiceErrorsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeServiceErrorsInput) GoString() string { return s.String() } // Contains the response to a DescribeServiceErrors request. type DescribeServiceErrorsOutput struct { _ struct{} `type:"structure"` // An array of ServiceError objects that describe the specified service errors. ServiceErrors []*ServiceError `type:"list"` } // String returns the string representation func (s DescribeServiceErrorsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeServiceErrorsOutput) GoString() string { return s.String() } type DescribeStackProvisioningParametersInput struct { _ struct{} `type:"structure"` // The stack ID // // StackId is a required field StackId *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeStackProvisioningParametersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStackProvisioningParametersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeStackProvisioningParametersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeStackProvisioningParametersInput"} if s.StackId == nil { invalidParams.Add(request.NewErrParamRequired("StackId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a DescribeStackProvisioningParameters request. type DescribeStackProvisioningParametersOutput struct { _ struct{} `type:"structure"` // The AWS OpsWorks agent installer's URL. AgentInstallerUrl *string `type:"string"` // An embedded object that contains the provisioning parameters. Parameters map[string]*string `type:"map"` } // String returns the string representation func (s DescribeStackProvisioningParametersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStackProvisioningParametersOutput) GoString() string { return s.String() } type DescribeStackSummaryInput struct { _ struct{} `type:"structure"` // The stack ID. // // StackId is a required field StackId *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeStackSummaryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStackSummaryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeStackSummaryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeStackSummaryInput"} if s.StackId == nil { invalidParams.Add(request.NewErrParamRequired("StackId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a DescribeStackSummary request. type DescribeStackSummaryOutput struct { _ struct{} `type:"structure"` // A StackSummary object that contains the results. StackSummary *StackSummary `type:"structure"` } // String returns the string representation func (s DescribeStackSummaryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStackSummaryOutput) GoString() string { return s.String() } type DescribeStacksInput struct { _ struct{} `type:"structure"` // An array of stack IDs that specify the stacks to be described. If you omit // this parameter, DescribeStacks returns a description of every stack. StackIds []*string `type:"list"` } // String returns the string representation func (s DescribeStacksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStacksInput) GoString() string { return s.String() } // Contains the response to a DescribeStacks request. type DescribeStacksOutput struct { _ struct{} `type:"structure"` // An array of Stack objects that describe the stacks. Stacks []*Stack `type:"list"` } // String returns the string representation func (s DescribeStacksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStacksOutput) GoString() string { return s.String() } type DescribeTimeBasedAutoScalingInput struct { _ struct{} `type:"structure"` // An array of instance IDs. // // InstanceIds is a required field InstanceIds []*string `type:"list" required:"true"` } // String returns the string representation func (s DescribeTimeBasedAutoScalingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTimeBasedAutoScalingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTimeBasedAutoScalingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTimeBasedAutoScalingInput"} if s.InstanceIds == nil { invalidParams.Add(request.NewErrParamRequired("InstanceIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a DescribeTimeBasedAutoScaling request. type DescribeTimeBasedAutoScalingOutput struct { _ struct{} `type:"structure"` // An array of TimeBasedAutoScalingConfiguration objects that describe the configuration // for the specified instances. TimeBasedAutoScalingConfigurations []*TimeBasedAutoScalingConfiguration `type:"list"` } // String returns the string representation func (s DescribeTimeBasedAutoScalingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTimeBasedAutoScalingOutput) GoString() string { return s.String() } type DescribeUserProfilesInput struct { _ struct{} `type:"structure"` // An array of IAM or federated user ARNs that identify the users to be described. IamUserArns []*string `type:"list"` } // String returns the string representation func (s DescribeUserProfilesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeUserProfilesInput) GoString() string { return s.String() } // Contains the response to a DescribeUserProfiles request. type DescribeUserProfilesOutput struct { _ struct{} `type:"structure"` // A Users object that describes the specified users. UserProfiles []*UserProfile `type:"list"` } // String returns the string representation func (s DescribeUserProfilesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeUserProfilesOutput) GoString() string { return s.String() } type DescribeVolumesInput struct { _ struct{} `type:"structure"` // The instance ID. If you use this parameter, DescribeVolumes returns descriptions // of the volumes associated with the specified instance. InstanceId *string `type:"string"` // The RAID array ID. If you use this parameter, DescribeVolumes returns descriptions // of the volumes associated with the specified RAID array. RaidArrayId *string `type:"string"` // A stack ID. The action describes the stack's registered Amazon EBS volumes. StackId *string `type:"string"` // Am array of volume IDs. If you use this parameter, DescribeVolumes returns // descriptions of the specified volumes. Otherwise, it returns a description // of every volume. VolumeIds []*string `type:"list"` } // String returns the string representation func (s DescribeVolumesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVolumesInput) GoString() string { return s.String() } // Contains the response to a DescribeVolumes request. type DescribeVolumesOutput struct { _ struct{} `type:"structure"` // An array of volume IDs. Volumes []*Volume `type:"list"` } // String returns the string representation func (s DescribeVolumesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVolumesOutput) GoString() string { return s.String() } type DetachElasticLoadBalancerInput struct { _ struct{} `type:"structure"` // The Elastic Load Balancing instance's name. // // ElasticLoadBalancerName is a required field ElasticLoadBalancerName *string `type:"string" required:"true"` // The ID of the layer that the Elastic Load Balancing instance is attached // to. // // LayerId is a required field LayerId *string `type:"string" required:"true"` } // String returns the string representation func (s DetachElasticLoadBalancerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachElasticLoadBalancerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DetachElasticLoadBalancerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DetachElasticLoadBalancerInput"} if s.ElasticLoadBalancerName == nil { invalidParams.Add(request.NewErrParamRequired("ElasticLoadBalancerName")) } if s.LayerId == nil { invalidParams.Add(request.NewErrParamRequired("LayerId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DetachElasticLoadBalancerOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DetachElasticLoadBalancerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DetachElasticLoadBalancerOutput) GoString() string { return s.String() } type DisassociateElasticIpInput struct { _ struct{} `type:"structure"` // The Elastic IP address. // // ElasticIp is a required field ElasticIp *string `type:"string" required:"true"` } // String returns the string representation func (s DisassociateElasticIpInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisassociateElasticIpInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisassociateElasticIpInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisassociateElasticIpInput"} if s.ElasticIp == nil { invalidParams.Add(request.NewErrParamRequired("ElasticIp")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DisassociateElasticIpOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DisassociateElasticIpOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisassociateElasticIpOutput) GoString() string { return s.String() } // Describes an Amazon EBS volume. This data type maps directly to the Amazon // EC2 EbsBlockDevice (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_EbsBlockDevice.html) // data type. type EbsBlockDevice struct { _ struct{} `type:"structure"` // Whether the volume is deleted on instance termination. DeleteOnTermination *bool `type:"boolean"` // The number of I/O operations per second (IOPS) that the volume supports. // For more information, see EbsBlockDevice (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_EbsBlockDevice.html). Iops *int64 `type:"integer"` // The snapshot ID. SnapshotId *string `type:"string"` // The volume size, in GiB. For more information, see EbsBlockDevice (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_EbsBlockDevice.html). VolumeSize *int64 `type:"integer"` // The volume type. gp2 for General Purpose (SSD) volumes, io1 for Provisioned // IOPS (SSD) volumes, and standard for Magnetic volumes. VolumeType *string `type:"string" enum:"VolumeType"` } // String returns the string representation func (s EbsBlockDevice) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EbsBlockDevice) GoString() string { return s.String() } // Describes a registered Amazon ECS cluster. type EcsCluster struct { _ struct{} `type:"structure"` // The cluster's ARN. EcsClusterArn *string `type:"string"` // The cluster name. EcsClusterName *string `type:"string"` // The time and date that the cluster was registered with the stack. RegisteredAt *string `type:"string"` // The stack ID. StackId *string `type:"string"` } // String returns the string representation func (s EcsCluster) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EcsCluster) GoString() string { return s.String() } // Describes an Elastic IP address. type ElasticIp struct { _ struct{} `type:"structure"` // The domain. Domain *string `type:"string"` // The ID of the instance that the address is attached to. InstanceId *string `type:"string"` // The IP address. Ip *string `type:"string"` // The name. Name *string `type:"string"` // The AWS region. For more information, see Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html). Region *string `type:"string"` } // String returns the string representation func (s ElasticIp) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ElasticIp) GoString() string { return s.String() } // Describes an Elastic Load Balancing instance. type ElasticLoadBalancer struct { _ struct{} `type:"structure"` // A list of Availability Zones. AvailabilityZones []*string `type:"list"` // The instance's public DNS name. DnsName *string `type:"string"` // A list of the EC2 instances that the Elastic Load Balancing instance is managing // traffic for. Ec2InstanceIds []*string `type:"list"` // The Elastic Load Balancing instance's name. ElasticLoadBalancerName *string `type:"string"` // The ID of the layer that the instance is attached to. LayerId *string `type:"string"` // The instance's AWS region. Region *string `type:"string"` // The ID of the stack that the instance is associated with. StackId *string `type:"string"` // A list of subnet IDs, if the stack is running in a VPC. SubnetIds []*string `type:"list"` // The VPC ID. VpcId *string `type:"string"` } // String returns the string representation func (s ElasticLoadBalancer) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ElasticLoadBalancer) GoString() string { return s.String() } // Represents an app's environment variable. type EnvironmentVariable struct { _ struct{} `type:"structure"` // (Required) The environment variable's name, which can consist of up to 64 // characters and must be specified. The name can contain upper- and lowercase // letters, numbers, and underscores (_), but it must start with a letter or // underscore. // // Key is a required field Key *string `type:"string" required:"true"` // (Optional) Whether the variable's value will be returned by the DescribeApps // action. To conceal an environment variable's value, set Secure to true. DescribeApps // then returns *****FILTERED***** instead of the actual value. The default // value for Secure is false. Secure *bool `type:"boolean"` // (Optional) The environment variable's value, which can be left empty. If // you specify a value, it can contain up to 256 characters, which must all // be printable. // // Value is a required field Value *string `type:"string" required:"true"` } // String returns the string representation func (s EnvironmentVariable) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnvironmentVariable) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnvironmentVariable) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnvironmentVariable"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetHostnameSuggestionInput struct { _ struct{} `type:"structure"` // The layer ID. // // LayerId is a required field LayerId *string `type:"string" required:"true"` } // String returns the string representation func (s GetHostnameSuggestionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetHostnameSuggestionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetHostnameSuggestionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetHostnameSuggestionInput"} if s.LayerId == nil { invalidParams.Add(request.NewErrParamRequired("LayerId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a GetHostnameSuggestion request. type GetHostnameSuggestionOutput struct { _ struct{} `type:"structure"` // The generated host name. Hostname *string `type:"string"` // The layer ID. LayerId *string `type:"string"` } // String returns the string representation func (s GetHostnameSuggestionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetHostnameSuggestionOutput) GoString() string { return s.String() } type GrantAccessInput struct { _ struct{} `type:"structure"` // The instance's AWS OpsWorks ID. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` // The length of time (in minutes) that the grant is valid. When the grant expires // at the end of this period, the user will no longer be able to use the credentials // to log in. If the user is logged in at the time, he or she automatically // will be logged out. ValidForInMinutes *int64 `min:"60" type:"integer"` } // String returns the string representation func (s GrantAccessInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GrantAccessInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GrantAccessInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GrantAccessInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if s.ValidForInMinutes != nil && *s.ValidForInMinutes < 60 { invalidParams.Add(request.NewErrParamMinValue("ValidForInMinutes", 60)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a GrantAccess request. type GrantAccessOutput struct { _ struct{} `type:"structure"` // A TemporaryCredential object that contains the data needed to log in to the // instance by RDP clients, such as the Microsoft Remote Desktop Connection. TemporaryCredential *TemporaryCredential `type:"structure"` } // String returns the string representation func (s GrantAccessOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GrantAccessOutput) GoString() string { return s.String() } // Describes an instance. type Instance struct { _ struct{} `type:"structure"` // The agent version. This parameter is set to INHERIT if the instance inherits // the default stack setting or to a a version number for a fixed agent version. AgentVersion *string `type:"string"` // A custom AMI ID to be used to create the instance. For more information, // see Instances (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-custom-ami.html) AmiId *string `type:"string"` // The instance architecture: "i386" or "x86_64". Architecture *string `type:"string" enum:"Architecture"` // For load-based or time-based instances, the type. AutoScalingType *string `type:"string" enum:"AutoScalingType"` // The instance Availability Zone. For more information, see Regions and Endpoints // (http://docs.aws.amazon.com/general/latest/gr/rande.html). AvailabilityZone *string `type:"string"` // An array of BlockDeviceMapping objects that specify the instance's block // device mappings. BlockDeviceMappings []*BlockDeviceMapping `type:"list"` // The time that the instance was created. CreatedAt *string `type:"string"` // Whether this is an Amazon EBS-optimized instance. EbsOptimized *bool `type:"boolean"` // The ID of the associated Amazon EC2 instance. Ec2InstanceId *string `type:"string"` // For container instances, the Amazon ECS cluster's ARN. EcsClusterArn *string `type:"string"` // For container instances, the instance's ARN. EcsContainerInstanceArn *string `type:"string"` // The instance Elastic IP address (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html). ElasticIp *string `type:"string"` // The instance host name. Hostname *string `type:"string"` // For registered instances, the infrastructure class: ec2 or on-premises. InfrastructureClass *string `type:"string"` // Whether to install operating system and package updates when the instance // boots. The default value is true. If this value is set to false, you must // then update your instances manually by using CreateDeployment to run the // update_dependencies stack command or by manually running yum (Amazon Linux) // or apt-get (Ubuntu) on the instances. // // We strongly recommend using the default value of true, to ensure that your // instances have the latest security updates. InstallUpdatesOnBoot *bool `type:"boolean"` // The instance ID. InstanceId *string `type:"string"` // The ARN of the instance's IAM profile. For more information about IAM ARNs, // see Using Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html). InstanceProfileArn *string `type:"string"` // The instance type, such as t2.micro. InstanceType *string `type:"string"` // The ID of the last service error. For more information, call DescribeServiceErrors. LastServiceErrorId *string `type:"string"` // An array containing the instance layer IDs. LayerIds []*string `type:"list"` // The instance's operating system. Os *string `type:"string"` // The instance's platform. Platform *string `type:"string"` // The The instance's private DNS name. PrivateDns *string `type:"string"` // The instance's private IP address. PrivateIp *string `type:"string"` // The instance public DNS name. PublicDns *string `type:"string"` // The instance public IP address. PublicIp *string `type:"string"` // For registered instances, who performed the registration. RegisteredBy *string `type:"string"` // The instance's reported AWS OpsWorks agent version. ReportedAgentVersion *string `type:"string"` // For registered instances, the reported operating system. ReportedOs *ReportedOs `type:"structure"` // The instance's root device type. For more information, see Storage for the // Root Device (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ComponentsAMIs.html#storage-for-the-root-device). RootDeviceType *string `type:"string" enum:"RootDeviceType"` // The root device volume ID. RootDeviceVolumeId *string `type:"string"` // An array containing the instance security group IDs. SecurityGroupIds []*string `type:"list"` // The SSH key's Deep Security Agent (DSA) fingerprint. SshHostDsaKeyFingerprint *string `type:"string"` // The SSH key's RSA fingerprint. SshHostRsaKeyFingerprint *string `type:"string"` // The instance's Amazon EC2 key-pair name. SshKeyName *string `type:"string"` // The stack ID. StackId *string `type:"string"` // The instance status: // // * booting // // * connection_lost // // * online // // * pending // // * rebooting // // * requested // // * running_setup // // * setup_failed // // * shutting_down // // * start_failed // // * stop_failed // // * stopped // // * stopping // // * terminated // // * terminating Status *string `type:"string"` // The instance's subnet ID; applicable only if the stack is running in a VPC. SubnetId *string `type:"string"` // The instance's tenancy option, such as dedicated or host. Tenancy *string `type:"string"` // The instance's virtualization type: paravirtual or hvm. VirtualizationType *string `type:"string" enum:"VirtualizationType"` } // String returns the string representation func (s Instance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Instance) GoString() string { return s.String() } // Contains a description of an Amazon EC2 instance from the Amazon EC2 metadata // service. For more information, see Instance Metadata and User Data (http://docs.aws.amazon.com/sdkfornet/latest/apidocs/Index.html). type InstanceIdentity struct { _ struct{} `type:"structure"` // A JSON document that contains the metadata. Document *string `type:"string"` // A signature that can be used to verify the document's accuracy and authenticity. Signature *string `type:"string"` } // String returns the string representation func (s InstanceIdentity) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceIdentity) GoString() string { return s.String() } // Describes how many instances a stack has for each status. type InstancesCount struct { _ struct{} `type:"structure"` // The number of instances in the Assigning state. Assigning *int64 `type:"integer"` // The number of instances with booting status. Booting *int64 `type:"integer"` // The number of instances with connection_lost status. ConnectionLost *int64 `type:"integer"` // The number of instances in the Deregistering state. Deregistering *int64 `type:"integer"` // The number of instances with online status. Online *int64 `type:"integer"` // The number of instances with pending status. Pending *int64 `type:"integer"` // The number of instances with rebooting status. Rebooting *int64 `type:"integer"` // The number of instances in the Registered state. Registered *int64 `type:"integer"` // The number of instances in the Registering state. Registering *int64 `type:"integer"` // The number of instances with requested status. Requested *int64 `type:"integer"` // The number of instances with running_setup status. RunningSetup *int64 `type:"integer"` // The number of instances with setup_failed status. SetupFailed *int64 `type:"integer"` // The number of instances with shutting_down status. ShuttingDown *int64 `type:"integer"` // The number of instances with start_failed status. StartFailed *int64 `type:"integer"` // The number of instances with stopped status. Stopped *int64 `type:"integer"` // The number of instances with stopping status. Stopping *int64 `type:"integer"` // The number of instances with terminated status. Terminated *int64 `type:"integer"` // The number of instances with terminating status. Terminating *int64 `type:"integer"` // The number of instances in the Unassigning state. Unassigning *int64 `type:"integer"` } // String returns the string representation func (s InstancesCount) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstancesCount) GoString() string { return s.String() } // Describes a layer. type Layer struct { _ struct{} `type:"structure"` // The layer attributes. // // For the HaproxyStatsPassword, MysqlRootPassword, and GangliaPassword attributes, // AWS OpsWorks returns *****FILTERED***** instead of the actual value // // For an ECS Cluster layer, AWS OpsWorks the EcsClusterArn attribute is set // to the cluster's ARN. Attributes map[string]*string `type:"map"` // Whether to automatically assign an Elastic IP address (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) // to the layer's instances. For more information, see How to Edit a Layer (http://docs.aws.amazon.com/opsworks/latest/userguide/workinglayers-basics-edit.html). AutoAssignElasticIps *bool `type:"boolean"` // For stacks that are running in a VPC, whether to automatically assign a public // IP address to the layer's instances. For more information, see How to Edit // a Layer (http://docs.aws.amazon.com/opsworks/latest/userguide/workinglayers-basics-edit.html). AutoAssignPublicIps *bool `type:"boolean"` // Date when the layer was created. CreatedAt *string `type:"string"` // The ARN of the default IAM profile to be used for the layer's EC2 instances. // For more information about IAM ARNs, see Using Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html). CustomInstanceProfileArn *string `type:"string"` // A JSON formatted string containing the layer's custom stack configuration // and deployment attributes. CustomJson *string `type:"string"` // A LayerCustomRecipes object that specifies the layer's custom recipes. CustomRecipes *Recipes `type:"structure"` // An array containing the layer's custom security group IDs. CustomSecurityGroupIds []*string `type:"list"` // AWS OpsWorks supports five lifecycle events: setup, configuration, deploy, // undeploy, and shutdown. For each layer, AWS OpsWorks runs a set of standard // recipes for each event. In addition, you can provide custom recipes for any // or all layers and events. AWS OpsWorks runs custom event recipes after the // standard recipes. LayerCustomRecipes specifies the custom recipes for a particular // layer to be run in response to each of the five events. // // To specify a recipe, use the cookbook's directory name in the repository // followed by two colons and the recipe name, which is the recipe's file name // without the .rb extension. For example: phpapp2::dbsetup specifies the dbsetup.rb // recipe in the repository's phpapp2 folder. DefaultRecipes *Recipes `type:"structure"` // An array containing the layer's security group names. DefaultSecurityGroupNames []*string `type:"list"` // Whether auto healing is disabled for the layer. EnableAutoHealing *bool `type:"boolean"` // Whether to install operating system and package updates when the instance // boots. The default value is true. If this value is set to false, you must // then update your instances manually by using CreateDeployment to run the // update_dependencies stack command or manually running yum (Amazon Linux) // or apt-get (Ubuntu) on the instances. // // We strongly recommend using the default value of true, to ensure that your // instances have the latest security updates. InstallUpdatesOnBoot *bool `type:"boolean"` // The layer ID. LayerId *string `type:"string"` // A LifeCycleEventConfiguration object that specifies the Shutdown event configuration. LifecycleEventConfiguration *LifecycleEventConfiguration `type:"structure"` // The layer name. Name *string `type:"string"` // An array of Package objects that describe the layer's packages. Packages []*string `type:"list"` // The layer short name. Shortname *string `type:"string"` // The layer stack ID. StackId *string `type:"string"` // The layer type. Type *string `type:"string" enum:"LayerType"` // Whether the layer uses Amazon EBS-optimized instances. UseEbsOptimizedInstances *bool `type:"boolean"` // A VolumeConfigurations object that describes the layer's Amazon EBS volumes. VolumeConfigurations []*VolumeConfiguration `type:"list"` } // String returns the string representation func (s Layer) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Layer) GoString() string { return s.String() } // Specifies the lifecycle event configuration type LifecycleEventConfiguration struct { _ struct{} `type:"structure"` // A ShutdownEventConfiguration object that specifies the Shutdown event configuration. Shutdown *ShutdownEventConfiguration `type:"structure"` } // String returns the string representation func (s LifecycleEventConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LifecycleEventConfiguration) GoString() string { return s.String() } // Describes a layer's load-based auto scaling configuration. type LoadBasedAutoScalingConfiguration struct { _ struct{} `type:"structure"` // An AutoScalingThresholds object that describes the downscaling configuration, // which defines how and when AWS OpsWorks reduces the number of instances. DownScaling *AutoScalingThresholds `type:"structure"` // Whether load-based auto scaling is enabled for the layer. Enable *bool `type:"boolean"` // The layer ID. LayerId *string `type:"string"` // An AutoScalingThresholds object that describes the upscaling configuration, // which defines how and when AWS OpsWorks increases the number of instances. UpScaling *AutoScalingThresholds `type:"structure"` } // String returns the string representation func (s LoadBasedAutoScalingConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LoadBasedAutoScalingConfiguration) GoString() string { return s.String() } // Describes stack or user permissions. type Permission struct { _ struct{} `type:"structure"` // Whether the user can use SSH. AllowSsh *bool `type:"boolean"` // Whether the user can use sudo. AllowSudo *bool `type:"boolean"` // The Amazon Resource Name (ARN) for an AWS Identity and Access Management // (IAM) role. For more information about IAM ARNs, see Using Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html). IamUserArn *string `type:"string"` // The user's permission level, which must be the following: // // * deny // // * show // // * deploy // // * manage // // * iam_only // // For more information on the permissions associated with these levels, see // Managing User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html) Level *string `type:"string"` // A stack ID. StackId *string `type:"string"` } // String returns the string representation func (s Permission) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Permission) GoString() string { return s.String() } // Describes an instance's RAID array. type RaidArray struct { _ struct{} `type:"structure"` // The array's Availability Zone. For more information, see Regions and Endpoints // (http://docs.aws.amazon.com/general/latest/gr/rande.html). AvailabilityZone *string `type:"string"` // When the RAID array was created. CreatedAt *string `type:"string"` // The array's Linux device. For example /dev/mdadm0. Device *string `type:"string"` // The instance ID. InstanceId *string `type:"string"` // For PIOPS volumes, the IOPS per disk. Iops *int64 `type:"integer"` // The array's mount point. MountPoint *string `type:"string"` // The array name. Name *string `type:"string"` // The number of disks in the array. NumberOfDisks *int64 `type:"integer"` // The array ID. RaidArrayId *string `type:"string"` // The RAID level (http://en.wikipedia.org/wiki/Standard_RAID_levels). RaidLevel *int64 `type:"integer"` // The array's size. Size *int64 `type:"integer"` // The stack ID. StackId *string `type:"string"` // The volume type, standard or PIOPS. VolumeType *string `type:"string"` } // String returns the string representation func (s RaidArray) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RaidArray) GoString() string { return s.String() } // Describes an Amazon RDS instance. type RdsDbInstance struct { _ struct{} `type:"structure"` // The instance's address. Address *string `type:"string"` // The DB instance identifier. DbInstanceIdentifier *string `type:"string"` // AWS OpsWorks returns *****FILTERED***** instead of the actual value. DbPassword *string `type:"string"` // The master user name. DbUser *string `type:"string"` // The instance's database engine. Engine *string `type:"string"` // Set to true if AWS OpsWorks was unable to discover the Amazon RDS instance. // AWS OpsWorks attempts to discover the instance only once. If this value is // set to true, you must deregister the instance and then register it again. MissingOnRds *bool `type:"boolean"` // The instance's ARN. RdsDbInstanceArn *string `type:"string"` // The instance's AWS region. Region *string `type:"string"` // The ID of the stack that the instance is registered with. StackId *string `type:"string"` } // String returns the string representation func (s RdsDbInstance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RdsDbInstance) GoString() string { return s.String() } type RebootInstanceInput struct { _ struct{} `type:"structure"` // The instance ID. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` } // String returns the string representation func (s RebootInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebootInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RebootInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RebootInstanceInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RebootInstanceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RebootInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebootInstanceOutput) GoString() string { return s.String() } // AWS OpsWorks supports five lifecycle events: setup, configuration, deploy, // undeploy, and shutdown. For each layer, AWS OpsWorks runs a set of standard // recipes for each event. In addition, you can provide custom recipes for any // or all layers and events. AWS OpsWorks runs custom event recipes after the // standard recipes. LayerCustomRecipes specifies the custom recipes for a particular // layer to be run in response to each of the five events. // // To specify a recipe, use the cookbook's directory name in the repository // followed by two colons and the recipe name, which is the recipe's file name // without the .rb extension. For example: phpapp2::dbsetup specifies the dbsetup.rb // recipe in the repository's phpapp2 folder. type Recipes struct { _ struct{} `type:"structure"` // An array of custom recipe names to be run following a configure event. Configure []*string `type:"list"` // An array of custom recipe names to be run following a deploy event. Deploy []*string `type:"list"` // An array of custom recipe names to be run following a setup event. Setup []*string `type:"list"` // An array of custom recipe names to be run following a shutdown event. Shutdown []*string `type:"list"` // An array of custom recipe names to be run following a undeploy event. Undeploy []*string `type:"list"` } // String returns the string representation func (s Recipes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Recipes) GoString() string { return s.String() } type RegisterEcsClusterInput struct { _ struct{} `type:"structure"` // The cluster's ARN. // // EcsClusterArn is a required field EcsClusterArn *string `type:"string" required:"true"` // The stack ID. // // StackId is a required field StackId *string `type:"string" required:"true"` } // String returns the string representation func (s RegisterEcsClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterEcsClusterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterEcsClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterEcsClusterInput"} if s.EcsClusterArn == nil { invalidParams.Add(request.NewErrParamRequired("EcsClusterArn")) } if s.StackId == nil { invalidParams.Add(request.NewErrParamRequired("StackId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a RegisterEcsCluster request. type RegisterEcsClusterOutput struct { _ struct{} `type:"structure"` // The cluster's ARN. EcsClusterArn *string `type:"string"` } // String returns the string representation func (s RegisterEcsClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterEcsClusterOutput) GoString() string { return s.String() } type RegisterElasticIpInput struct { _ struct{} `type:"structure"` // The Elastic IP address. // // ElasticIp is a required field ElasticIp *string `type:"string" required:"true"` // The stack ID. // // StackId is a required field StackId *string `type:"string" required:"true"` } // String returns the string representation func (s RegisterElasticIpInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterElasticIpInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterElasticIpInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterElasticIpInput"} if s.ElasticIp == nil { invalidParams.Add(request.NewErrParamRequired("ElasticIp")) } if s.StackId == nil { invalidParams.Add(request.NewErrParamRequired("StackId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a RegisterElasticIp request. type RegisterElasticIpOutput struct { _ struct{} `type:"structure"` // The Elastic IP address. ElasticIp *string `type:"string"` } // String returns the string representation func (s RegisterElasticIpOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterElasticIpOutput) GoString() string { return s.String() } type RegisterInstanceInput struct { _ struct{} `type:"structure"` // The instance's hostname. Hostname *string `type:"string"` // An InstanceIdentity object that contains the instance's identity. InstanceIdentity *InstanceIdentity `type:"structure"` // The instance's private IP address. PrivateIp *string `type:"string"` // The instance's public IP address. PublicIp *string `type:"string"` // The instances public RSA key. This key is used to encrypt communication between // the instance and the service. RsaPublicKey *string `type:"string"` // The instances public RSA key fingerprint. RsaPublicKeyFingerprint *string `type:"string"` // The ID of the stack that the instance is to be registered with. // // StackId is a required field StackId *string `type:"string" required:"true"` } // String returns the string representation func (s RegisterInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterInstanceInput"} if s.StackId == nil { invalidParams.Add(request.NewErrParamRequired("StackId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a RegisterInstanceResult request. type RegisterInstanceOutput struct { _ struct{} `type:"structure"` // The registered instance's AWS OpsWorks ID. InstanceId *string `type:"string"` } // String returns the string representation func (s RegisterInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterInstanceOutput) GoString() string { return s.String() } type RegisterRdsDbInstanceInput struct { _ struct{} `type:"structure"` // The database password. // // DbPassword is a required field DbPassword *string `type:"string" required:"true"` // The database's master user name. // // DbUser is a required field DbUser *string `type:"string" required:"true"` // The Amazon RDS instance's ARN. // // RdsDbInstanceArn is a required field RdsDbInstanceArn *string `type:"string" required:"true"` // The stack ID. // // StackId is a required field StackId *string `type:"string" required:"true"` } // String returns the string representation func (s RegisterRdsDbInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterRdsDbInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterRdsDbInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterRdsDbInstanceInput"} if s.DbPassword == nil { invalidParams.Add(request.NewErrParamRequired("DbPassword")) } if s.DbUser == nil { invalidParams.Add(request.NewErrParamRequired("DbUser")) } if s.RdsDbInstanceArn == nil { invalidParams.Add(request.NewErrParamRequired("RdsDbInstanceArn")) } if s.StackId == nil { invalidParams.Add(request.NewErrParamRequired("StackId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RegisterRdsDbInstanceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RegisterRdsDbInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterRdsDbInstanceOutput) GoString() string { return s.String() } type RegisterVolumeInput struct { _ struct{} `type:"structure"` // The Amazon EBS volume ID. Ec2VolumeId *string `type:"string"` // The stack ID. // // StackId is a required field StackId *string `type:"string" required:"true"` } // String returns the string representation func (s RegisterVolumeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterVolumeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterVolumeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterVolumeInput"} if s.StackId == nil { invalidParams.Add(request.NewErrParamRequired("StackId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a RegisterVolume request. type RegisterVolumeOutput struct { _ struct{} `type:"structure"` // The volume ID. VolumeId *string `type:"string"` } // String returns the string representation func (s RegisterVolumeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterVolumeOutput) GoString() string { return s.String() } // A registered instance's reported operating system. type ReportedOs struct { _ struct{} `type:"structure"` // The operating system family. Family *string `type:"string"` // The operating system name. Name *string `type:"string"` // The operating system version. Version *string `type:"string"` } // String returns the string representation func (s ReportedOs) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReportedOs) GoString() string { return s.String() } // Describes a user's SSH information. type SelfUserProfile struct { _ struct{} `type:"structure"` // The user's IAM ARN. IamUserArn *string `type:"string"` // The user's name. Name *string `type:"string"` // The user's SSH public key. SshPublicKey *string `type:"string"` // The user's SSH user name. SshUsername *string `type:"string"` } // String returns the string representation func (s SelfUserProfile) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SelfUserProfile) GoString() string { return s.String() } // Describes an AWS OpsWorks service error. type ServiceError struct { _ struct{} `type:"structure"` // When the error occurred. CreatedAt *string `type:"string"` // The instance ID. InstanceId *string `type:"string"` // A message that describes the error. Message *string `type:"string"` // The error ID. ServiceErrorId *string `type:"string"` // The stack ID. StackId *string `type:"string"` // The error type. Type *string `type:"string"` } // String returns the string representation func (s ServiceError) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ServiceError) GoString() string { return s.String() } type SetLoadBasedAutoScalingInput struct { _ struct{} `type:"structure"` // An AutoScalingThresholds object with the downscaling threshold configuration. // If the load falls below these thresholds for a specified amount of time, // AWS OpsWorks stops a specified number of instances. DownScaling *AutoScalingThresholds `type:"structure"` // Enables load-based auto scaling for the layer. Enable *bool `type:"boolean"` // The layer ID. // // LayerId is a required field LayerId *string `type:"string" required:"true"` // An AutoScalingThresholds object with the upscaling threshold configuration. // If the load exceeds these thresholds for a specified amount of time, AWS // OpsWorks starts a specified number of instances. UpScaling *AutoScalingThresholds `type:"structure"` } // String returns the string representation func (s SetLoadBasedAutoScalingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetLoadBasedAutoScalingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetLoadBasedAutoScalingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetLoadBasedAutoScalingInput"} if s.LayerId == nil { invalidParams.Add(request.NewErrParamRequired("LayerId")) } if s.DownScaling != nil { if err := s.DownScaling.Validate(); err != nil { invalidParams.AddNested("DownScaling", err.(request.ErrInvalidParams)) } } if s.UpScaling != nil { if err := s.UpScaling.Validate(); err != nil { invalidParams.AddNested("UpScaling", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetLoadBasedAutoScalingOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetLoadBasedAutoScalingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetLoadBasedAutoScalingOutput) GoString() string { return s.String() } type SetPermissionInput struct { _ struct{} `type:"structure"` // The user is allowed to use SSH to communicate with the instance. AllowSsh *bool `type:"boolean"` // The user is allowed to use sudo to elevate privileges. AllowSudo *bool `type:"boolean"` // The user's IAM ARN. This can also be a federated user's ARN. // // IamUserArn is a required field IamUserArn *string `type:"string" required:"true"` // The user's permission level, which must be set to one of the following strings. // You cannot set your own permissions level. // // * deny // // * show // // * deploy // // * manage // // * iam_only // // For more information on the permissions associated with these levels, see // Managing User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/opsworks-security-users.html). Level *string `type:"string"` // The stack ID. // // StackId is a required field StackId *string `type:"string" required:"true"` } // String returns the string representation func (s SetPermissionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetPermissionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetPermissionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetPermissionInput"} if s.IamUserArn == nil { invalidParams.Add(request.NewErrParamRequired("IamUserArn")) } if s.StackId == nil { invalidParams.Add(request.NewErrParamRequired("StackId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetPermissionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetPermissionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetPermissionOutput) GoString() string { return s.String() } type SetTimeBasedAutoScalingInput struct { _ struct{} `type:"structure"` // An AutoScalingSchedule with the instance schedule. AutoScalingSchedule *WeeklyAutoScalingSchedule `type:"structure"` // The instance ID. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` } // String returns the string representation func (s SetTimeBasedAutoScalingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetTimeBasedAutoScalingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetTimeBasedAutoScalingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetTimeBasedAutoScalingInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetTimeBasedAutoScalingOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetTimeBasedAutoScalingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetTimeBasedAutoScalingOutput) GoString() string { return s.String() } // The Shutdown event configuration. type ShutdownEventConfiguration struct { _ struct{} `type:"structure"` // Whether to enable Elastic Load Balancing connection draining. For more information, // see Connection Draining (http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/TerminologyandKeyConcepts.html#conn-drain) DelayUntilElbConnectionsDrained *bool `type:"boolean"` // The time, in seconds, that AWS OpsWorks will wait after triggering a Shutdown // event before shutting down an instance. ExecutionTimeout *int64 `type:"integer"` } // String returns the string representation func (s ShutdownEventConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ShutdownEventConfiguration) GoString() string { return s.String() } // Contains the information required to retrieve an app or cookbook from a repository. // For more information, see Creating Apps (http://docs.aws.amazon.com/opsworks/latest/userguide/workingapps-creating.html) // or Custom Recipes and Cookbooks (http://docs.aws.amazon.com/opsworks/latest/userguide/workingcookbook.html). type Source struct { _ struct{} `type:"structure"` // When included in a request, the parameter depends on the repository type. // // * For Amazon S3 bundles, set Password to the appropriate IAM secret access // key. // // * For HTTP bundles and Subversion repositories, set Password to the password. // // For more information on how to safely handle IAM credentials, see http://docs.aws.amazon.com/general/latest/gr/aws-access-keys-best-practices.html // (http://docs.aws.amazon.com/general/latest/gr/aws-access-keys-best-practices.html). // // In responses, AWS OpsWorks returns *****FILTERED***** instead of the actual // value. Password *string `type:"string"` // The application's version. AWS OpsWorks enables you to easily deploy new // versions of an application. One of the simplest approaches is to have branches // or revisions in your repository that represent different versions that can // potentially be deployed. Revision *string `type:"string"` // In requests, the repository's SSH key. // // In responses, AWS OpsWorks returns *****FILTERED***** instead of the actual // value. SshKey *string `type:"string"` // The repository type. Type *string `type:"string" enum:"SourceType"` // The source URL. Url *string `type:"string"` // This parameter depends on the repository type. // // * For Amazon S3 bundles, set Username to the appropriate IAM access key // ID. // // * For HTTP bundles, Git repositories, and Subversion repositories, set // Username to the user name. Username *string `type:"string"` } // String returns the string representation func (s Source) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Source) GoString() string { return s.String() } // Describes an app's SSL configuration. type SslConfiguration struct { _ struct{} `type:"structure"` // The contents of the certificate's domain.crt file. // // Certificate is a required field Certificate *string `type:"string" required:"true"` // Optional. Can be used to specify an intermediate certificate authority key // or client authentication. Chain *string `type:"string"` // The private key; the contents of the certificate's domain.kex file. // // PrivateKey is a required field PrivateKey *string `type:"string" required:"true"` } // String returns the string representation func (s SslConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SslConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SslConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SslConfiguration"} if s.Certificate == nil { invalidParams.Add(request.NewErrParamRequired("Certificate")) } if s.PrivateKey == nil { invalidParams.Add(request.NewErrParamRequired("PrivateKey")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a stack. type Stack struct { _ struct{} `type:"structure"` // The agent version. This parameter is set to LATEST for auto-update. or a // version number for a fixed agent version. AgentVersion *string `type:"string"` // The stack's ARN. Arn *string `type:"string"` // The stack's attributes. Attributes map[string]*string `type:"map"` // A ChefConfiguration object that specifies whether to enable Berkshelf and // the Berkshelf version. For more information, see Create a New Stack (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-creating.html). ChefConfiguration *ChefConfiguration `type:"structure"` // The configuration manager. ConfigurationManager *StackConfigurationManager `type:"structure"` // The date when the stack was created. CreatedAt *string `type:"string"` // Contains the information required to retrieve an app or cookbook from a repository. // For more information, see Creating Apps (http://docs.aws.amazon.com/opsworks/latest/userguide/workingapps-creating.html) // or Custom Recipes and Cookbooks (http://docs.aws.amazon.com/opsworks/latest/userguide/workingcookbook.html). CustomCookbooksSource *Source `type:"structure"` // A JSON object that contains user-defined attributes to be added to the stack // configuration and deployment attributes. You can use custom JSON to override // the corresponding default stack configuration attribute values or to pass // data to recipes. The string should be in the following format: // // "{\"key1\": \"value1\", \"key2\": \"value2\",...}" // // For more information on custom JSON, see Use Custom JSON to Modify the Stack // Configuration Attributes (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-json.html). CustomJson *string `type:"string"` // The stack's default Availability Zone. For more information, see Regions // and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html). DefaultAvailabilityZone *string `type:"string"` // The ARN of an IAM profile that is the default profile for all of the stack's // EC2 instances. For more information about IAM ARNs, see Using Identifiers // (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html). DefaultInstanceProfileArn *string `type:"string"` // The stack's default operating system. DefaultOs *string `type:"string"` // The default root device type. This value is used by default for all instances // in the stack, but you can override it when you create an instance. For more // information, see Storage for the Root Device (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ComponentsAMIs.html#storage-for-the-root-device). DefaultRootDeviceType *string `type:"string" enum:"RootDeviceType"` // A default Amazon EC2 key pair for the stack's instances. You can override // this value when you create or update an instance. DefaultSshKeyName *string `type:"string"` // The default subnet ID; applicable only if the stack is running in a VPC. DefaultSubnetId *string `type:"string"` // The stack host name theme, with spaces replaced by underscores. HostnameTheme *string `type:"string"` // The stack name. Name *string `type:"string"` // The stack AWS region, such as "ap-northeast-2". For more information about // AWS regions, see Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html). Region *string `type:"string"` // The stack AWS Identity and Access Management (IAM) role. ServiceRoleArn *string `type:"string"` // The stack ID. StackId *string `type:"string"` // Whether the stack uses custom cookbooks. UseCustomCookbooks *bool `type:"boolean"` // Whether the stack automatically associates the AWS OpsWorks built-in security // groups with the stack's layers. UseOpsworksSecurityGroups *bool `type:"boolean"` // The VPC ID; applicable only if the stack is running in a VPC. VpcId *string `type:"string"` } // String returns the string representation func (s Stack) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Stack) GoString() string { return s.String() } // Describes the configuration manager. type StackConfigurationManager struct { _ struct{} `type:"structure"` // The name. This parameter must be set to "Chef". Name *string `type:"string"` // The Chef version. This parameter must be set to 12, 11.10, or 11.4 for Linux // stacks, and to 12.2 for Windows stacks. The default value for Linux stacks // is 11.4. Version *string `type:"string"` } // String returns the string representation func (s StackConfigurationManager) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StackConfigurationManager) GoString() string { return s.String() } // Summarizes the number of layers, instances, and apps in a stack. type StackSummary struct { _ struct{} `type:"structure"` // The number of apps. AppsCount *int64 `type:"integer"` // The stack's ARN. Arn *string `type:"string"` // An InstancesCount object with the number of instances in each status. InstancesCount *InstancesCount `type:"structure"` // The number of layers. LayersCount *int64 `type:"integer"` // The stack name. Name *string `type:"string"` // The stack ID. StackId *string `type:"string"` } // String returns the string representation func (s StackSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StackSummary) GoString() string { return s.String() } type StartInstanceInput struct { _ struct{} `type:"structure"` // The instance ID. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` } // String returns the string representation func (s StartInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartInstanceInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type StartInstanceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s StartInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartInstanceOutput) GoString() string { return s.String() } type StartStackInput struct { _ struct{} `type:"structure"` // The stack ID. // // StackId is a required field StackId *string `type:"string" required:"true"` } // String returns the string representation func (s StartStackInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartStackInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartStackInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartStackInput"} if s.StackId == nil { invalidParams.Add(request.NewErrParamRequired("StackId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type StartStackOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s StartStackOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartStackOutput) GoString() string { return s.String() } type StopInstanceInput struct { _ struct{} `type:"structure"` // The instance ID. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` } // String returns the string representation func (s StopInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StopInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StopInstanceInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type StopInstanceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s StopInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopInstanceOutput) GoString() string { return s.String() } type StopStackInput struct { _ struct{} `type:"structure"` // The stack ID. // // StackId is a required field StackId *string `type:"string" required:"true"` } // String returns the string representation func (s StopStackInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopStackInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StopStackInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StopStackInput"} if s.StackId == nil { invalidParams.Add(request.NewErrParamRequired("StackId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type StopStackOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s StopStackOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopStackOutput) GoString() string { return s.String() } // Contains the data needed by RDP clients such as the Microsoft Remote Desktop // Connection to log in to the instance. type TemporaryCredential struct { _ struct{} `type:"structure"` // The instance's AWS OpsWorks ID. InstanceId *string `type:"string"` // The password. Password *string `type:"string"` // The user name. Username *string `type:"string"` // The length of time (in minutes) that the grant is valid. When the grant expires, // at the end of this period, the user will no longer be able to use the credentials // to log in. If they are logged in at the time, they will be automatically // logged out. ValidForInMinutes *int64 `type:"integer"` } // String returns the string representation func (s TemporaryCredential) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TemporaryCredential) GoString() string { return s.String() } // Describes an instance's time-based auto scaling configuration. type TimeBasedAutoScalingConfiguration struct { _ struct{} `type:"structure"` // A WeeklyAutoScalingSchedule object with the instance schedule. AutoScalingSchedule *WeeklyAutoScalingSchedule `type:"structure"` // The instance ID. InstanceId *string `type:"string"` } // String returns the string representation func (s TimeBasedAutoScalingConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TimeBasedAutoScalingConfiguration) GoString() string { return s.String() } type UnassignInstanceInput struct { _ struct{} `type:"structure"` // The instance ID. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` } // String returns the string representation func (s UnassignInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnassignInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UnassignInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UnassignInstanceInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UnassignInstanceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UnassignInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnassignInstanceOutput) GoString() string { return s.String() } type UnassignVolumeInput struct { _ struct{} `type:"structure"` // The volume ID. // // VolumeId is a required field VolumeId *string `type:"string" required:"true"` } // String returns the string representation func (s UnassignVolumeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnassignVolumeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UnassignVolumeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UnassignVolumeInput"} if s.VolumeId == nil { invalidParams.Add(request.NewErrParamRequired("VolumeId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UnassignVolumeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UnassignVolumeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnassignVolumeOutput) GoString() string { return s.String() } type UpdateAppInput struct { _ struct{} `type:"structure"` // The app ID. // // AppId is a required field AppId *string `type:"string" required:"true"` // A Source object that specifies the app repository. AppSource *Source `type:"structure"` // One or more user-defined key/value pairs to be added to the stack attributes. Attributes map[string]*string `type:"map"` // The app's data sources. DataSources []*DataSource `type:"list"` // A description of the app. Description *string `type:"string"` // The app's virtual host settings, with multiple domains separated by commas. // For example: 'www.example.com, example.com' Domains []*string `type:"list"` // Whether SSL is enabled for the app. EnableSsl *bool `type:"boolean"` // An array of EnvironmentVariable objects that specify environment variables // to be associated with the app. After you deploy the app, these variables // are defined on the associated app server instances.For more information, // see Environment Variables (http://docs.aws.amazon.com/opsworks/latest/userguide/workingapps-creating.html#workingapps-creating-environment). // // There is no specific limit on the number of environment variables. However, // the size of the associated data structure - which includes the variables' // names, values, and protected flag values - cannot exceed 10 KB (10240 Bytes). // This limit should accommodate most if not all use cases. Exceeding it will // cause an exception with the message, "Environment: is too large (maximum // is 10KB)." // // This parameter is supported only by Chef 11.10 stacks. If you have specified // one or more environment variables, you cannot modify the stack's Chef version. Environment []*EnvironmentVariable `type:"list"` // The app name. Name *string `type:"string"` // An SslConfiguration object with the SSL configuration. SslConfiguration *SslConfiguration `type:"structure"` // The app type. Type *string `type:"string" enum:"AppType"` } // String returns the string representation func (s UpdateAppInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAppInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateAppInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateAppInput"} if s.AppId == nil { invalidParams.Add(request.NewErrParamRequired("AppId")) } if s.Environment != nil { for i, v := range s.Environment { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Environment", i), err.(request.ErrInvalidParams)) } } } if s.SslConfiguration != nil { if err := s.SslConfiguration.Validate(); err != nil { invalidParams.AddNested("SslConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateAppOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateAppOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAppOutput) GoString() string { return s.String() } type UpdateElasticIpInput struct { _ struct{} `type:"structure"` // The address. // // ElasticIp is a required field ElasticIp *string `type:"string" required:"true"` // The new name. Name *string `type:"string"` } // String returns the string representation func (s UpdateElasticIpInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateElasticIpInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateElasticIpInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateElasticIpInput"} if s.ElasticIp == nil { invalidParams.Add(request.NewErrParamRequired("ElasticIp")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateElasticIpOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateElasticIpOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateElasticIpOutput) GoString() string { return s.String() } type UpdateInstanceInput struct { _ struct{} `type:"structure"` // The default AWS OpsWorks agent version. You have the following options: // // * INHERIT - Use the stack's default agent version setting. // // * version_number - Use the specified agent version. This value overrides // the stack's default setting. To update the agent version, you must edit // the instance configuration and specify a new version. AWS OpsWorks then // automatically installs that version on the instance. // // The default setting is INHERIT. To specify an agent version, you must use // the complete version number, not the abbreviated number shown on the console. // For a list of available agent version numbers, call DescribeAgentVersions. AgentVersion *string `type:"string"` // The ID of the AMI that was used to create the instance. The value of this // parameter must be the same AMI ID that the instance is already using. You // cannot apply a new AMI to an instance by running UpdateInstance. UpdateInstance // does not work on instances that are using custom AMIs. AmiId *string `type:"string"` // The instance architecture. Instance types do not necessarily support both // architectures. For a list of the architectures that are supported by the // different instance types, see Instance Families and Types (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html). Architecture *string `type:"string" enum:"Architecture"` // For load-based or time-based instances, the type. Windows stacks can use // only time-based instances. AutoScalingType *string `type:"string" enum:"AutoScalingType"` // This property cannot be updated. EbsOptimized *bool `type:"boolean"` // The instance host name. Hostname *string `type:"string"` // Whether to install operating system and package updates when the instance // boots. The default value is true. To control when updates are installed, // set this value to false. You must then update your instances manually by // using CreateDeployment to run the update_dependencies stack command or by // manually running yum (Amazon Linux) or apt-get (Ubuntu) on the instances. // // We strongly recommend using the default value of true, to ensure that your // instances have the latest security updates. InstallUpdatesOnBoot *bool `type:"boolean"` // The instance ID. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` // The instance type, such as t2.micro. For a list of supported instance types, // open the stack in the console, choose Instances, and choose + Instance. The // Size list contains the currently supported types. For more information, see // Instance Families and Types (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html). // The parameter values that you use to specify the various types are in the // API Name column of the Available Instance Types table. InstanceType *string `type:"string"` // The instance's layer IDs. LayerIds []*string `type:"list"` // The instance's operating system, which must be set to one of the following. // You cannot update an instance that is using a custom AMI. // // * A supported Linux operating system: An Amazon Linux version, such as // Amazon Linux 2016.03, Amazon Linux 2015.09, or Amazon Linux 2015.03. // // * A supported Ubuntu operating system, such as Ubuntu 16.04 LTS, Ubuntu // 14.04 LTS, or Ubuntu 12.04 LTS. // // * CentOS 7 // // * Red Hat Enterprise Linux 7 // // * A supported Windows operating system, such as Microsoft Windows Server // 2012 R2 Base, Microsoft Windows Server 2012 R2 with SQL Server Express, // Microsoft Windows Server 2012 R2 with SQL Server Standard, or Microsoft // Windows Server 2012 R2 with SQL Server Web. // // For more information on the supported operating systems, see AWS OpsWorks // Operating Systems (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-os.html). // // The default option is the current Amazon Linux version. If you set this parameter // to Custom, you must use the AmiId parameter to specify the custom AMI that // you want to use. For more information on the supported operating systems, // see Operating Systems (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-os.html). // For more information on how to use custom AMIs with OpsWorks, see Using Custom // AMIs (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-custom-ami.html). // // You can specify a different Linux operating system for the updated stack, // but you cannot change from Linux to Windows or Windows to Linux. Os *string `type:"string"` // The instance's Amazon EC2 key name. SshKeyName *string `type:"string"` } // String returns the string representation func (s UpdateInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateInstanceInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateInstanceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateInstanceOutput) GoString() string { return s.String() } type UpdateLayerInput struct { _ struct{} `type:"structure"` // One or more user-defined key/value pairs to be added to the stack attributes. Attributes map[string]*string `type:"map"` // Whether to automatically assign an Elastic IP address (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) // to the layer's instances. For more information, see How to Edit a Layer (http://docs.aws.amazon.com/opsworks/latest/userguide/workinglayers-basics-edit.html). AutoAssignElasticIps *bool `type:"boolean"` // For stacks that are running in a VPC, whether to automatically assign a public // IP address to the layer's instances. For more information, see How to Edit // a Layer (http://docs.aws.amazon.com/opsworks/latest/userguide/workinglayers-basics-edit.html). AutoAssignPublicIps *bool `type:"boolean"` // The ARN of an IAM profile to be used for all of the layer's EC2 instances. // For more information about IAM ARNs, see Using Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html). CustomInstanceProfileArn *string `type:"string"` // A JSON-formatted string containing custom stack configuration and deployment // attributes to be installed on the layer's instances. For more information, // see Using Custom JSON (http://docs.aws.amazon.com/opsworks/latest/userguide/workingcookbook-json-override.html). CustomJson *string `type:"string"` // A LayerCustomRecipes object that specifies the layer's custom recipes. CustomRecipes *Recipes `type:"structure"` // An array containing the layer's custom security group IDs. CustomSecurityGroupIds []*string `type:"list"` // Whether to disable auto healing for the layer. EnableAutoHealing *bool `type:"boolean"` // Whether to install operating system and package updates when the instance // boots. The default value is true. To control when updates are installed, // set this value to false. You must then update your instances manually by // using CreateDeployment to run the update_dependencies stack command or manually // running yum (Amazon Linux) or apt-get (Ubuntu) on the instances. // // We strongly recommend using the default value of true, to ensure that your // instances have the latest security updates. InstallUpdatesOnBoot *bool `type:"boolean"` // The layer ID. // // LayerId is a required field LayerId *string `type:"string" required:"true"` LifecycleEventConfiguration *LifecycleEventConfiguration `type:"structure"` // The layer name, which is used by the console. Name *string `type:"string"` // An array of Package objects that describe the layer's packages. Packages []*string `type:"list"` // For custom layers only, use this parameter to specify the layer's short name, // which is used internally by AWS OpsWorksand by Chef. The short name is also // used as the name for the directory where your app files are installed. It // can have a maximum of 200 characters and must be in the following format: // /\A[a-z0-9\-\_\.]+\Z/. // // The built-in layers' short names are defined by AWS OpsWorks. For more information, // see the Layer Reference (http://docs.aws.amazon.com/opsworks/latest/userguide/layers.html) Shortname *string `type:"string"` // Whether to use Amazon EBS-optimized instances. UseEbsOptimizedInstances *bool `type:"boolean"` // A VolumeConfigurations object that describes the layer's Amazon EBS volumes. VolumeConfigurations []*VolumeConfiguration `type:"list"` } // String returns the string representation func (s UpdateLayerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateLayerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateLayerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateLayerInput"} if s.LayerId == nil { invalidParams.Add(request.NewErrParamRequired("LayerId")) } if s.VolumeConfigurations != nil { for i, v := range s.VolumeConfigurations { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "VolumeConfigurations", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateLayerOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateLayerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateLayerOutput) GoString() string { return s.String() } type UpdateMyUserProfileInput struct { _ struct{} `type:"structure"` // The user's SSH public key. SshPublicKey *string `type:"string"` } // String returns the string representation func (s UpdateMyUserProfileInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateMyUserProfileInput) GoString() string { return s.String() } type UpdateMyUserProfileOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateMyUserProfileOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateMyUserProfileOutput) GoString() string { return s.String() } type UpdateRdsDbInstanceInput struct { _ struct{} `type:"structure"` // The database password. DbPassword *string `type:"string"` // The master user name. DbUser *string `type:"string"` // The Amazon RDS instance's ARN. // // RdsDbInstanceArn is a required field RdsDbInstanceArn *string `type:"string" required:"true"` } // String returns the string representation func (s UpdateRdsDbInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateRdsDbInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateRdsDbInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateRdsDbInstanceInput"} if s.RdsDbInstanceArn == nil { invalidParams.Add(request.NewErrParamRequired("RdsDbInstanceArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateRdsDbInstanceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateRdsDbInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateRdsDbInstanceOutput) GoString() string { return s.String() } type UpdateStackInput struct { _ struct{} `type:"structure"` // The default AWS OpsWorks agent version. You have the following options: // // * Auto-update - Set this parameter to LATEST. AWS OpsWorks automatically // installs new agent versions on the stack's instances as soon as they are // available. // // * Fixed version - Set this parameter to your preferred agent version. // To update the agent version, you must edit the stack configuration and // specify a new version. AWS OpsWorks then automatically installs that version // on the stack's instances. // // The default setting is LATEST. To specify an agent version, you must use // the complete version number, not the abbreviated number shown on the console. // For a list of available agent version numbers, call DescribeAgentVersions. // // You can also specify an agent version when you create or update an instance, // which overrides the stack's default setting. AgentVersion *string `type:"string"` // One or more user-defined key-value pairs to be added to the stack attributes. Attributes map[string]*string `type:"map"` // A ChefConfiguration object that specifies whether to enable Berkshelf and // the Berkshelf version on Chef 11.10 stacks. For more information, see Create // a New Stack (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-creating.html). ChefConfiguration *ChefConfiguration `type:"structure"` // The configuration manager. When you update a stack, we recommend that you // use the configuration manager to specify the Chef version: 12, 11.10, or // 11.4 for Linux stacks, or 12.2 for Windows stacks. The default value for // Linux stacks is currently 11.4. ConfigurationManager *StackConfigurationManager `type:"structure"` // Contains the information required to retrieve an app or cookbook from a repository. // For more information, see Creating Apps (http://docs.aws.amazon.com/opsworks/latest/userguide/workingapps-creating.html) // or Custom Recipes and Cookbooks (http://docs.aws.amazon.com/opsworks/latest/userguide/workingcookbook.html). CustomCookbooksSource *Source `type:"structure"` // A string that contains user-defined, custom JSON. It can be used to override // the corresponding default stack configuration JSON values or to pass data // to recipes. The string should be in the following format: // // "{\"key1\": \"value1\", \"key2\": \"value2\",...}" // // For more information on custom JSON, see Use Custom JSON to Modify the Stack // Configuration Attributes (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-json.html). CustomJson *string `type:"string"` // The stack's default Availability Zone, which must be in the stack's region. // For more information, see Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html). // If you also specify a value for DefaultSubnetId, the subnet must be in the // same zone. For more information, see CreateStack. DefaultAvailabilityZone *string `type:"string"` // The ARN of an IAM profile that is the default profile for all of the stack's // EC2 instances. For more information about IAM ARNs, see Using Identifiers // (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html). DefaultInstanceProfileArn *string `type:"string"` // The stack's operating system, which must be set to one of the following: // // * A supported Linux operating system: An Amazon Linux version, such as // Amazon Linux 2016.03, Amazon Linux 2015.09, or Amazon Linux 2015.03. // // * A supported Ubuntu operating system, such as Ubuntu 16.04 LTS, Ubuntu // 14.04 LTS, or Ubuntu 12.04 LTS. // // * CentOS 7 // // * Red Hat Enterprise Linux 7 // // * A supported Windows operating system, such as Microsoft Windows Server // 2012 R2 Base, Microsoft Windows Server 2012 R2 with SQL Server Express, // Microsoft Windows Server 2012 R2 with SQL Server Standard, or Microsoft // Windows Server 2012 R2 with SQL Server Web. // // * A custom AMI: Custom. You specify the custom AMI you want to use when // you create instances. For more information on how to use custom AMIs with // OpsWorks, see Using Custom AMIs (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-custom-ami.html). // // The default option is the stack's current operating system. For more information // on the supported operating systems, see AWS OpsWorks Operating Systems (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-os.html). DefaultOs *string `type:"string"` // The default root device type. This value is used by default for all instances // in the stack, but you can override it when you create an instance. For more // information, see Storage for the Root Device (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ComponentsAMIs.html#storage-for-the-root-device). DefaultRootDeviceType *string `type:"string" enum:"RootDeviceType"` // A default Amazon EC2 key-pair name. The default value is none. If you specify // a key-pair name, AWS OpsWorks installs the public key on the instance and // you can use the private key with an SSH client to log in to the instance. // For more information, see Using SSH to Communicate with an Instance (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-ssh.html) // and Managing SSH Access (http://docs.aws.amazon.com/opsworks/latest/userguide/security-ssh-access.html). // You can override this setting by specifying a different key pair, or no key // pair, when you create an instance (http://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-add.html). DefaultSshKeyName *string `type:"string"` // The stack's default VPC subnet ID. This parameter is required if you specify // a value for the VpcId parameter. All instances are launched into this subnet // unless you specify otherwise when you create the instance. If you also specify // a value for DefaultAvailabilityZone, the subnet must be in that zone. For // information on default values and when this parameter is required, see the // VpcId parameter description. DefaultSubnetId *string `type:"string"` // The stack's new host name theme, with spaces replaced by underscores. The // theme is used to generate host names for the stack's instances. By default, // HostnameTheme is set to Layer_Dependent, which creates host names by appending // integers to the layer's short name. The other themes are: // // * Baked_Goods // // * Clouds // // * Europe_Cities // // * Fruits // // * Greek_Deities // // * Legendary_creatures_from_Japan // // * Planets_and_Moons // // * Roman_Deities // // * Scottish_Islands // // * US_Cities // // * Wild_Cats // // To obtain a generated host name, call GetHostNameSuggestion, which returns // a host name based on the current theme. HostnameTheme *string `type:"string"` // The stack's new name. Name *string `type:"string"` // Do not use this parameter. You cannot update a stack's service role. ServiceRoleArn *string `type:"string"` // The stack ID. // // StackId is a required field StackId *string `type:"string" required:"true"` // Whether the stack uses custom cookbooks. UseCustomCookbooks *bool `type:"boolean"` // Whether to associate the AWS OpsWorks built-in security groups with the stack's // layers. // // AWS OpsWorks provides a standard set of built-in security groups, one for // each layer, which are associated with layers by default. UseOpsworksSecurityGroups // allows you to provide your own custom security groups instead of using the // built-in groups. UseOpsworksSecurityGroups has the following settings: // // * True - AWS OpsWorks automatically associates the appropriate built-in // security group with each layer (default setting). You can associate additional // security groups with a layer after you create it, but you cannot delete // the built-in security group. // // * False - AWS OpsWorks does not associate built-in security groups with // layers. You must create appropriate EC2 security groups and associate // a security group with each layer that you create. However, you can still // manually associate a built-in security group with a layer on. Custom security // groups are required only for those layers that need custom settings. // // For more information, see Create a New Stack (http://docs.aws.amazon.com/opsworks/latest/userguide/workingstacks-creating.html). UseOpsworksSecurityGroups *bool `type:"boolean"` } // String returns the string representation func (s UpdateStackInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateStackInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateStackInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateStackInput"} if s.StackId == nil { invalidParams.Add(request.NewErrParamRequired("StackId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateStackOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateStackOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateStackOutput) GoString() string { return s.String() } type UpdateUserProfileInput struct { _ struct{} `type:"structure"` // Whether users can specify their own SSH public key through the My Settings // page. For more information, see Managing User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/security-settingsshkey.html). AllowSelfManagement *bool `type:"boolean"` // The user IAM ARN. This can also be a federated user's ARN. // // IamUserArn is a required field IamUserArn *string `type:"string" required:"true"` // The user's new SSH public key. SshPublicKey *string `type:"string"` // The user's SSH user name. The allowable characters are [a-z], [A-Z], [0-9], // '-', and '_'. If the specified name includes other punctuation marks, AWS // OpsWorks removes them. For example, my.name will be changed to myname. If // you do not specify an SSH user name, AWS OpsWorks generates one from the // IAM user name. SshUsername *string `type:"string"` } // String returns the string representation func (s UpdateUserProfileInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateUserProfileInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateUserProfileInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateUserProfileInput"} if s.IamUserArn == nil { invalidParams.Add(request.NewErrParamRequired("IamUserArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateUserProfileOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateUserProfileOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateUserProfileOutput) GoString() string { return s.String() } type UpdateVolumeInput struct { _ struct{} `type:"structure"` // The new mount point. MountPoint *string `type:"string"` // The new name. Name *string `type:"string"` // The volume ID. // // VolumeId is a required field VolumeId *string `type:"string" required:"true"` } // String returns the string representation func (s UpdateVolumeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateVolumeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateVolumeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateVolumeInput"} if s.VolumeId == nil { invalidParams.Add(request.NewErrParamRequired("VolumeId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateVolumeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateVolumeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateVolumeOutput) GoString() string { return s.String() } // Describes a user's SSH information. type UserProfile struct { _ struct{} `type:"structure"` // Whether users can specify their own SSH public key through the My Settings // page. For more information, see Managing User Permissions (http://docs.aws.amazon.com/opsworks/latest/userguide/security-settingsshkey.html). AllowSelfManagement *bool `type:"boolean"` // The user's IAM ARN. IamUserArn *string `type:"string"` // The user's name. Name *string `type:"string"` // The user's SSH public key. SshPublicKey *string `type:"string"` // The user's SSH user name. SshUsername *string `type:"string"` } // String returns the string representation func (s UserProfile) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UserProfile) GoString() string { return s.String() } // Describes an instance's Amazon EBS volume. type Volume struct { _ struct{} `type:"structure"` // The volume Availability Zone. For more information, see Regions and Endpoints // (http://docs.aws.amazon.com/general/latest/gr/rande.html). AvailabilityZone *string `type:"string"` // The device name. Device *string `type:"string"` // The Amazon EC2 volume ID. Ec2VolumeId *string `type:"string"` // The instance ID. InstanceId *string `type:"string"` // For PIOPS volumes, the IOPS per disk. Iops *int64 `type:"integer"` // The volume mount point. For example, "/mnt/disk1". MountPoint *string `type:"string"` // The volume name. Name *string `type:"string"` // The RAID array ID. RaidArrayId *string `type:"string"` // The AWS region. For more information about AWS regions, see Regions and Endpoints // (http://docs.aws.amazon.com/general/latest/gr/rande.html). Region *string `type:"string"` // The volume size. Size *int64 `type:"integer"` // The value returned by DescribeVolumes (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeVolumes.html). Status *string `type:"string"` // The volume ID. VolumeId *string `type:"string"` // The volume type, standard or PIOPS. VolumeType *string `type:"string"` } // String returns the string representation func (s Volume) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Volume) GoString() string { return s.String() } // Describes an Amazon EBS volume configuration. type VolumeConfiguration struct { _ struct{} `type:"structure"` // For PIOPS volumes, the IOPS per disk. Iops *int64 `type:"integer"` // The volume mount point. For example "/dev/sdh". // // MountPoint is a required field MountPoint *string `type:"string" required:"true"` // The number of disks in the volume. // // NumberOfDisks is a required field NumberOfDisks *int64 `type:"integer" required:"true"` // The volume RAID level (http://en.wikipedia.org/wiki/Standard_RAID_levels). RaidLevel *int64 `type:"integer"` // The volume size. // // Size is a required field Size *int64 `type:"integer" required:"true"` // The volume type: // // * standard - Magnetic // // * io1 - Provisioned IOPS (SSD) // // * gp2 - General Purpose (SSD) VolumeType *string `type:"string"` } // String returns the string representation func (s VolumeConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VolumeConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *VolumeConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "VolumeConfiguration"} if s.MountPoint == nil { invalidParams.Add(request.NewErrParamRequired("MountPoint")) } if s.NumberOfDisks == nil { invalidParams.Add(request.NewErrParamRequired("NumberOfDisks")) } if s.Size == nil { invalidParams.Add(request.NewErrParamRequired("Size")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a time-based instance's auto scaling schedule. The schedule consists // of a set of key-value pairs. // // * The key is the time period (a UTC hour) and must be an integer from // 0 - 23. // // * The value indicates whether the instance should be online or offline // for the specified period, and must be set to "on" or "off" // // The default setting for all time periods is off, so you use the following // parameters primarily to specify the online periods. You don't have to explicitly // specify offline periods unless you want to change an online period to an // offline period. // // The following example specifies that the instance should be online for four // hours, from UTC 1200 - 1600. It will be off for the remainder of the day. // // { "12":"on", "13":"on", "14":"on", "15":"on" } type WeeklyAutoScalingSchedule struct { _ struct{} `type:"structure"` // The schedule for Friday. Friday map[string]*string `type:"map"` // The schedule for Monday. Monday map[string]*string `type:"map"` // The schedule for Saturday. Saturday map[string]*string `type:"map"` // The schedule for Sunday. Sunday map[string]*string `type:"map"` // The schedule for Thursday. Thursday map[string]*string `type:"map"` // The schedule for Tuesday. Tuesday map[string]*string `type:"map"` // The schedule for Wednesday. Wednesday map[string]*string `type:"map"` } // String returns the string representation func (s WeeklyAutoScalingSchedule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WeeklyAutoScalingSchedule) GoString() string { return s.String() } const ( // AppAttributesKeysDocumentRoot is a AppAttributesKeys enum value AppAttributesKeysDocumentRoot = "DocumentRoot" // AppAttributesKeysRailsEnv is a AppAttributesKeys enum value AppAttributesKeysRailsEnv = "RailsEnv" // AppAttributesKeysAutoBundleOnDeploy is a AppAttributesKeys enum value AppAttributesKeysAutoBundleOnDeploy = "AutoBundleOnDeploy" // AppAttributesKeysAwsFlowRubySettings is a AppAttributesKeys enum value AppAttributesKeysAwsFlowRubySettings = "AwsFlowRubySettings" ) const ( // AppTypeAwsFlowRuby is a AppType enum value AppTypeAwsFlowRuby = "aws-flow-ruby" // AppTypeJava is a AppType enum value AppTypeJava = "java" // AppTypeRails is a AppType enum value AppTypeRails = "rails" // AppTypePhp is a AppType enum value AppTypePhp = "php" // AppTypeNodejs is a AppType enum value AppTypeNodejs = "nodejs" // AppTypeStatic is a AppType enum value AppTypeStatic = "static" // AppTypeOther is a AppType enum value AppTypeOther = "other" ) const ( // ArchitectureX8664 is a Architecture enum value ArchitectureX8664 = "x86_64" // ArchitectureI386 is a Architecture enum value ArchitectureI386 = "i386" ) const ( // AutoScalingTypeLoad is a AutoScalingType enum value AutoScalingTypeLoad = "load" // AutoScalingTypeTimer is a AutoScalingType enum value AutoScalingTypeTimer = "timer" ) const ( // DeploymentCommandNameInstallDependencies is a DeploymentCommandName enum value DeploymentCommandNameInstallDependencies = "install_dependencies" // DeploymentCommandNameUpdateDependencies is a DeploymentCommandName enum value DeploymentCommandNameUpdateDependencies = "update_dependencies" // DeploymentCommandNameUpdateCustomCookbooks is a DeploymentCommandName enum value DeploymentCommandNameUpdateCustomCookbooks = "update_custom_cookbooks" // DeploymentCommandNameExecuteRecipes is a DeploymentCommandName enum value DeploymentCommandNameExecuteRecipes = "execute_recipes" // DeploymentCommandNameConfigure is a DeploymentCommandName enum value DeploymentCommandNameConfigure = "configure" // DeploymentCommandNameSetup is a DeploymentCommandName enum value DeploymentCommandNameSetup = "setup" // DeploymentCommandNameDeploy is a DeploymentCommandName enum value DeploymentCommandNameDeploy = "deploy" // DeploymentCommandNameRollback is a DeploymentCommandName enum value DeploymentCommandNameRollback = "rollback" // DeploymentCommandNameStart is a DeploymentCommandName enum value DeploymentCommandNameStart = "start" // DeploymentCommandNameStop is a DeploymentCommandName enum value DeploymentCommandNameStop = "stop" // DeploymentCommandNameRestart is a DeploymentCommandName enum value DeploymentCommandNameRestart = "restart" // DeploymentCommandNameUndeploy is a DeploymentCommandName enum value DeploymentCommandNameUndeploy = "undeploy" ) const ( // LayerAttributesKeysEcsClusterArn is a LayerAttributesKeys enum value LayerAttributesKeysEcsClusterArn = "EcsClusterArn" // LayerAttributesKeysEnableHaproxyStats is a LayerAttributesKeys enum value LayerAttributesKeysEnableHaproxyStats = "EnableHaproxyStats" // LayerAttributesKeysHaproxyStatsUrl is a LayerAttributesKeys enum value LayerAttributesKeysHaproxyStatsUrl = "HaproxyStatsUrl" // LayerAttributesKeysHaproxyStatsUser is a LayerAttributesKeys enum value LayerAttributesKeysHaproxyStatsUser = "HaproxyStatsUser" // LayerAttributesKeysHaproxyStatsPassword is a LayerAttributesKeys enum value LayerAttributesKeysHaproxyStatsPassword = "HaproxyStatsPassword" // LayerAttributesKeysHaproxyHealthCheckUrl is a LayerAttributesKeys enum value LayerAttributesKeysHaproxyHealthCheckUrl = "HaproxyHealthCheckUrl" // LayerAttributesKeysHaproxyHealthCheckMethod is a LayerAttributesKeys enum value LayerAttributesKeysHaproxyHealthCheckMethod = "HaproxyHealthCheckMethod" // LayerAttributesKeysMysqlRootPassword is a LayerAttributesKeys enum value LayerAttributesKeysMysqlRootPassword = "MysqlRootPassword" // LayerAttributesKeysMysqlRootPasswordUbiquitous is a LayerAttributesKeys enum value LayerAttributesKeysMysqlRootPasswordUbiquitous = "MysqlRootPasswordUbiquitous" // LayerAttributesKeysGangliaUrl is a LayerAttributesKeys enum value LayerAttributesKeysGangliaUrl = "GangliaUrl" // LayerAttributesKeysGangliaUser is a LayerAttributesKeys enum value LayerAttributesKeysGangliaUser = "GangliaUser" // LayerAttributesKeysGangliaPassword is a LayerAttributesKeys enum value LayerAttributesKeysGangliaPassword = "GangliaPassword" // LayerAttributesKeysMemcachedMemory is a LayerAttributesKeys enum value LayerAttributesKeysMemcachedMemory = "MemcachedMemory" // LayerAttributesKeysNodejsVersion is a LayerAttributesKeys enum value LayerAttributesKeysNodejsVersion = "NodejsVersion" // LayerAttributesKeysRubyVersion is a LayerAttributesKeys enum value LayerAttributesKeysRubyVersion = "RubyVersion" // LayerAttributesKeysRubygemsVersion is a LayerAttributesKeys enum value LayerAttributesKeysRubygemsVersion = "RubygemsVersion" // LayerAttributesKeysManageBundler is a LayerAttributesKeys enum value LayerAttributesKeysManageBundler = "ManageBundler" // LayerAttributesKeysBundlerVersion is a LayerAttributesKeys enum value LayerAttributesKeysBundlerVersion = "BundlerVersion" // LayerAttributesKeysRailsStack is a LayerAttributesKeys enum value LayerAttributesKeysRailsStack = "RailsStack" // LayerAttributesKeysPassengerVersion is a LayerAttributesKeys enum value LayerAttributesKeysPassengerVersion = "PassengerVersion" // LayerAttributesKeysJvm is a LayerAttributesKeys enum value LayerAttributesKeysJvm = "Jvm" // LayerAttributesKeysJvmVersion is a LayerAttributesKeys enum value LayerAttributesKeysJvmVersion = "JvmVersion" // LayerAttributesKeysJvmOptions is a LayerAttributesKeys enum value LayerAttributesKeysJvmOptions = "JvmOptions" // LayerAttributesKeysJavaAppServer is a LayerAttributesKeys enum value LayerAttributesKeysJavaAppServer = "JavaAppServer" // LayerAttributesKeysJavaAppServerVersion is a LayerAttributesKeys enum value LayerAttributesKeysJavaAppServerVersion = "JavaAppServerVersion" ) const ( // LayerTypeAwsFlowRuby is a LayerType enum value LayerTypeAwsFlowRuby = "aws-flow-ruby" // LayerTypeEcsCluster is a LayerType enum value LayerTypeEcsCluster = "ecs-cluster" // LayerTypeJavaApp is a LayerType enum value LayerTypeJavaApp = "java-app" // LayerTypeLb is a LayerType enum value LayerTypeLb = "lb" // LayerTypeWeb is a LayerType enum value LayerTypeWeb = "web" // LayerTypePhpApp is a LayerType enum value LayerTypePhpApp = "php-app" // LayerTypeRailsApp is a LayerType enum value LayerTypeRailsApp = "rails-app" // LayerTypeNodejsApp is a LayerType enum value LayerTypeNodejsApp = "nodejs-app" // LayerTypeMemcached is a LayerType enum value LayerTypeMemcached = "memcached" // LayerTypeDbMaster is a LayerType enum value LayerTypeDbMaster = "db-master" // LayerTypeMonitoringMaster is a LayerType enum value LayerTypeMonitoringMaster = "monitoring-master" // LayerTypeCustom is a LayerType enum value LayerTypeCustom = "custom" ) const ( // RootDeviceTypeEbs is a RootDeviceType enum value RootDeviceTypeEbs = "ebs" // RootDeviceTypeInstanceStore is a RootDeviceType enum value RootDeviceTypeInstanceStore = "instance-store" ) const ( // SourceTypeGit is a SourceType enum value SourceTypeGit = "git" // SourceTypeSvn is a SourceType enum value SourceTypeSvn = "svn" // SourceTypeArchive is a SourceType enum value SourceTypeArchive = "archive" // SourceTypeS3 is a SourceType enum value SourceTypeS3 = "s3" ) const ( // StackAttributesKeysColor is a StackAttributesKeys enum value StackAttributesKeysColor = "Color" ) const ( // VirtualizationTypeParavirtual is a VirtualizationType enum value VirtualizationTypeParavirtual = "paravirtual" // VirtualizationTypeHvm is a VirtualizationType enum value VirtualizationTypeHvm = "hvm" ) const ( // VolumeTypeGp2 is a VolumeType enum value VolumeTypeGp2 = "gp2" // VolumeTypeIo1 is a VolumeType enum value VolumeTypeIo1 = "io1" // VolumeTypeStandard is a VolumeType enum value VolumeTypeStandard = "standard" ) aws-sdk-go-1.4.22/service/opsworks/examples_test.go000066400000000000000000001533101300374646400223210ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package opsworks_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/opsworks" ) var _ time.Duration var _ bytes.Buffer func ExampleOpsWorks_AssignInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.AssignInstanceInput{ InstanceId: aws.String("String"), // Required LayerIds: []*string{ // Required aws.String("String"), // Required // More values... }, } resp, err := svc.AssignInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_AssignVolume() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.AssignVolumeInput{ VolumeId: aws.String("String"), // Required InstanceId: aws.String("String"), } resp, err := svc.AssignVolume(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_AssociateElasticIp() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.AssociateElasticIpInput{ ElasticIp: aws.String("String"), // Required InstanceId: aws.String("String"), } resp, err := svc.AssociateElasticIp(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_AttachElasticLoadBalancer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.AttachElasticLoadBalancerInput{ ElasticLoadBalancerName: aws.String("String"), // Required LayerId: aws.String("String"), // Required } resp, err := svc.AttachElasticLoadBalancer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_CloneStack() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.CloneStackInput{ ServiceRoleArn: aws.String("String"), // Required SourceStackId: aws.String("String"), // Required AgentVersion: aws.String("String"), Attributes: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, ChefConfiguration: &opsworks.ChefConfiguration{ BerkshelfVersion: aws.String("String"), ManageBerkshelf: aws.Bool(true), }, CloneAppIds: []*string{ aws.String("String"), // Required // More values... }, ClonePermissions: aws.Bool(true), ConfigurationManager: &opsworks.StackConfigurationManager{ Name: aws.String("String"), Version: aws.String("String"), }, CustomCookbooksSource: &opsworks.Source{ Password: aws.String("String"), Revision: aws.String("String"), SshKey: aws.String("String"), Type: aws.String("SourceType"), Url: aws.String("String"), Username: aws.String("String"), }, CustomJson: aws.String("String"), DefaultAvailabilityZone: aws.String("String"), DefaultInstanceProfileArn: aws.String("String"), DefaultOs: aws.String("String"), DefaultRootDeviceType: aws.String("RootDeviceType"), DefaultSshKeyName: aws.String("String"), DefaultSubnetId: aws.String("String"), HostnameTheme: aws.String("String"), Name: aws.String("String"), Region: aws.String("String"), UseCustomCookbooks: aws.Bool(true), UseOpsworksSecurityGroups: aws.Bool(true), VpcId: aws.String("String"), } resp, err := svc.CloneStack(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_CreateApp() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.CreateAppInput{ Name: aws.String("String"), // Required StackId: aws.String("String"), // Required Type: aws.String("AppType"), // Required AppSource: &opsworks.Source{ Password: aws.String("String"), Revision: aws.String("String"), SshKey: aws.String("String"), Type: aws.String("SourceType"), Url: aws.String("String"), Username: aws.String("String"), }, Attributes: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, DataSources: []*opsworks.DataSource{ { // Required Arn: aws.String("String"), DatabaseName: aws.String("String"), Type: aws.String("String"), }, // More values... }, Description: aws.String("String"), Domains: []*string{ aws.String("String"), // Required // More values... }, EnableSsl: aws.Bool(true), Environment: []*opsworks.EnvironmentVariable{ { // Required Key: aws.String("String"), // Required Value: aws.String("String"), // Required Secure: aws.Bool(true), }, // More values... }, Shortname: aws.String("String"), SslConfiguration: &opsworks.SslConfiguration{ Certificate: aws.String("String"), // Required PrivateKey: aws.String("String"), // Required Chain: aws.String("String"), }, } resp, err := svc.CreateApp(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_CreateDeployment() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.CreateDeploymentInput{ Command: &opsworks.DeploymentCommand{ // Required Name: aws.String("DeploymentCommandName"), // Required Args: map[string][]*string{ "Key": { // Required aws.String("String"), // Required // More values... }, // More values... }, }, StackId: aws.String("String"), // Required AppId: aws.String("String"), Comment: aws.String("String"), CustomJson: aws.String("String"), InstanceIds: []*string{ aws.String("String"), // Required // More values... }, LayerIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.CreateDeployment(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_CreateInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.CreateInstanceInput{ InstanceType: aws.String("String"), // Required LayerIds: []*string{ // Required aws.String("String"), // Required // More values... }, StackId: aws.String("String"), // Required AgentVersion: aws.String("String"), AmiId: aws.String("String"), Architecture: aws.String("Architecture"), AutoScalingType: aws.String("AutoScalingType"), AvailabilityZone: aws.String("String"), BlockDeviceMappings: []*opsworks.BlockDeviceMapping{ { // Required DeviceName: aws.String("String"), Ebs: &opsworks.EbsBlockDevice{ DeleteOnTermination: aws.Bool(true), Iops: aws.Int64(1), SnapshotId: aws.String("String"), VolumeSize: aws.Int64(1), VolumeType: aws.String("VolumeType"), }, NoDevice: aws.String("String"), VirtualName: aws.String("String"), }, // More values... }, EbsOptimized: aws.Bool(true), Hostname: aws.String("String"), InstallUpdatesOnBoot: aws.Bool(true), Os: aws.String("String"), RootDeviceType: aws.String("RootDeviceType"), SshKeyName: aws.String("String"), SubnetId: aws.String("String"), Tenancy: aws.String("String"), VirtualizationType: aws.String("String"), } resp, err := svc.CreateInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_CreateLayer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.CreateLayerInput{ Name: aws.String("String"), // Required Shortname: aws.String("String"), // Required StackId: aws.String("String"), // Required Type: aws.String("LayerType"), // Required Attributes: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, AutoAssignElasticIps: aws.Bool(true), AutoAssignPublicIps: aws.Bool(true), CustomInstanceProfileArn: aws.String("String"), CustomJson: aws.String("String"), CustomRecipes: &opsworks.Recipes{ Configure: []*string{ aws.String("String"), // Required // More values... }, Deploy: []*string{ aws.String("String"), // Required // More values... }, Setup: []*string{ aws.String("String"), // Required // More values... }, Shutdown: []*string{ aws.String("String"), // Required // More values... }, Undeploy: []*string{ aws.String("String"), // Required // More values... }, }, CustomSecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, EnableAutoHealing: aws.Bool(true), InstallUpdatesOnBoot: aws.Bool(true), LifecycleEventConfiguration: &opsworks.LifecycleEventConfiguration{ Shutdown: &opsworks.ShutdownEventConfiguration{ DelayUntilElbConnectionsDrained: aws.Bool(true), ExecutionTimeout: aws.Int64(1), }, }, Packages: []*string{ aws.String("String"), // Required // More values... }, UseEbsOptimizedInstances: aws.Bool(true), VolumeConfigurations: []*opsworks.VolumeConfiguration{ { // Required MountPoint: aws.String("String"), // Required NumberOfDisks: aws.Int64(1), // Required Size: aws.Int64(1), // Required Iops: aws.Int64(1), RaidLevel: aws.Int64(1), VolumeType: aws.String("String"), }, // More values... }, } resp, err := svc.CreateLayer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_CreateStack() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.CreateStackInput{ DefaultInstanceProfileArn: aws.String("String"), // Required Name: aws.String("String"), // Required Region: aws.String("String"), // Required ServiceRoleArn: aws.String("String"), // Required AgentVersion: aws.String("String"), Attributes: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, ChefConfiguration: &opsworks.ChefConfiguration{ BerkshelfVersion: aws.String("String"), ManageBerkshelf: aws.Bool(true), }, ConfigurationManager: &opsworks.StackConfigurationManager{ Name: aws.String("String"), Version: aws.String("String"), }, CustomCookbooksSource: &opsworks.Source{ Password: aws.String("String"), Revision: aws.String("String"), SshKey: aws.String("String"), Type: aws.String("SourceType"), Url: aws.String("String"), Username: aws.String("String"), }, CustomJson: aws.String("String"), DefaultAvailabilityZone: aws.String("String"), DefaultOs: aws.String("String"), DefaultRootDeviceType: aws.String("RootDeviceType"), DefaultSshKeyName: aws.String("String"), DefaultSubnetId: aws.String("String"), HostnameTheme: aws.String("String"), UseCustomCookbooks: aws.Bool(true), UseOpsworksSecurityGroups: aws.Bool(true), VpcId: aws.String("String"), } resp, err := svc.CreateStack(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_CreateUserProfile() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.CreateUserProfileInput{ IamUserArn: aws.String("String"), // Required AllowSelfManagement: aws.Bool(true), SshPublicKey: aws.String("String"), SshUsername: aws.String("String"), } resp, err := svc.CreateUserProfile(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DeleteApp() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DeleteAppInput{ AppId: aws.String("String"), // Required } resp, err := svc.DeleteApp(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DeleteInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DeleteInstanceInput{ InstanceId: aws.String("String"), // Required DeleteElasticIp: aws.Bool(true), DeleteVolumes: aws.Bool(true), } resp, err := svc.DeleteInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DeleteLayer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DeleteLayerInput{ LayerId: aws.String("String"), // Required } resp, err := svc.DeleteLayer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DeleteStack() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DeleteStackInput{ StackId: aws.String("String"), // Required } resp, err := svc.DeleteStack(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DeleteUserProfile() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DeleteUserProfileInput{ IamUserArn: aws.String("String"), // Required } resp, err := svc.DeleteUserProfile(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DeregisterEcsCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DeregisterEcsClusterInput{ EcsClusterArn: aws.String("String"), // Required } resp, err := svc.DeregisterEcsCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DeregisterElasticIp() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DeregisterElasticIpInput{ ElasticIp: aws.String("String"), // Required } resp, err := svc.DeregisterElasticIp(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DeregisterInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DeregisterInstanceInput{ InstanceId: aws.String("String"), // Required } resp, err := svc.DeregisterInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DeregisterRdsDbInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DeregisterRdsDbInstanceInput{ RdsDbInstanceArn: aws.String("String"), // Required } resp, err := svc.DeregisterRdsDbInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DeregisterVolume() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DeregisterVolumeInput{ VolumeId: aws.String("String"), // Required } resp, err := svc.DeregisterVolume(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeAgentVersions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeAgentVersionsInput{ ConfigurationManager: &opsworks.StackConfigurationManager{ Name: aws.String("String"), Version: aws.String("String"), }, StackId: aws.String("String"), } resp, err := svc.DescribeAgentVersions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeApps() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeAppsInput{ AppIds: []*string{ aws.String("String"), // Required // More values... }, StackId: aws.String("String"), } resp, err := svc.DescribeApps(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeCommands() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeCommandsInput{ CommandIds: []*string{ aws.String("String"), // Required // More values... }, DeploymentId: aws.String("String"), InstanceId: aws.String("String"), } resp, err := svc.DescribeCommands(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeDeployments() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeDeploymentsInput{ AppId: aws.String("String"), DeploymentIds: []*string{ aws.String("String"), // Required // More values... }, StackId: aws.String("String"), } resp, err := svc.DescribeDeployments(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeEcsClusters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeEcsClustersInput{ EcsClusterArns: []*string{ aws.String("String"), // Required // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("String"), StackId: aws.String("String"), } resp, err := svc.DescribeEcsClusters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeElasticIps() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeElasticIpsInput{ InstanceId: aws.String("String"), Ips: []*string{ aws.String("String"), // Required // More values... }, StackId: aws.String("String"), } resp, err := svc.DescribeElasticIps(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeElasticLoadBalancers() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeElasticLoadBalancersInput{ LayerIds: []*string{ aws.String("String"), // Required // More values... }, StackId: aws.String("String"), } resp, err := svc.DescribeElasticLoadBalancers(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeInstancesInput{ InstanceIds: []*string{ aws.String("String"), // Required // More values... }, LayerId: aws.String("String"), StackId: aws.String("String"), } resp, err := svc.DescribeInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeLayers() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeLayersInput{ LayerIds: []*string{ aws.String("String"), // Required // More values... }, StackId: aws.String("String"), } resp, err := svc.DescribeLayers(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeLoadBasedAutoScaling() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeLoadBasedAutoScalingInput{ LayerIds: []*string{ // Required aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeLoadBasedAutoScaling(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeMyUserProfile() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) var params *opsworks.DescribeMyUserProfileInput resp, err := svc.DescribeMyUserProfile(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribePermissions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribePermissionsInput{ IamUserArn: aws.String("String"), StackId: aws.String("String"), } resp, err := svc.DescribePermissions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeRaidArrays() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeRaidArraysInput{ InstanceId: aws.String("String"), RaidArrayIds: []*string{ aws.String("String"), // Required // More values... }, StackId: aws.String("String"), } resp, err := svc.DescribeRaidArrays(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeRdsDbInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeRdsDbInstancesInput{ StackId: aws.String("String"), // Required RdsDbInstanceArns: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeRdsDbInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeServiceErrors() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeServiceErrorsInput{ InstanceId: aws.String("String"), ServiceErrorIds: []*string{ aws.String("String"), // Required // More values... }, StackId: aws.String("String"), } resp, err := svc.DescribeServiceErrors(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeStackProvisioningParameters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeStackProvisioningParametersInput{ StackId: aws.String("String"), // Required } resp, err := svc.DescribeStackProvisioningParameters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeStackSummary() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeStackSummaryInput{ StackId: aws.String("String"), // Required } resp, err := svc.DescribeStackSummary(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeStacks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeStacksInput{ StackIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeStacks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeTimeBasedAutoScaling() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeTimeBasedAutoScalingInput{ InstanceIds: []*string{ // Required aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeTimeBasedAutoScaling(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeUserProfiles() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeUserProfilesInput{ IamUserArns: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeUserProfiles(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DescribeVolumes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DescribeVolumesInput{ InstanceId: aws.String("String"), RaidArrayId: aws.String("String"), StackId: aws.String("String"), VolumeIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeVolumes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DetachElasticLoadBalancer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DetachElasticLoadBalancerInput{ ElasticLoadBalancerName: aws.String("String"), // Required LayerId: aws.String("String"), // Required } resp, err := svc.DetachElasticLoadBalancer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_DisassociateElasticIp() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.DisassociateElasticIpInput{ ElasticIp: aws.String("String"), // Required } resp, err := svc.DisassociateElasticIp(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_GetHostnameSuggestion() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.GetHostnameSuggestionInput{ LayerId: aws.String("String"), // Required } resp, err := svc.GetHostnameSuggestion(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_GrantAccess() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.GrantAccessInput{ InstanceId: aws.String("String"), // Required ValidForInMinutes: aws.Int64(1), } resp, err := svc.GrantAccess(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_RebootInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.RebootInstanceInput{ InstanceId: aws.String("String"), // Required } resp, err := svc.RebootInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_RegisterEcsCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.RegisterEcsClusterInput{ EcsClusterArn: aws.String("String"), // Required StackId: aws.String("String"), // Required } resp, err := svc.RegisterEcsCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_RegisterElasticIp() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.RegisterElasticIpInput{ ElasticIp: aws.String("String"), // Required StackId: aws.String("String"), // Required } resp, err := svc.RegisterElasticIp(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_RegisterInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.RegisterInstanceInput{ StackId: aws.String("String"), // Required Hostname: aws.String("String"), InstanceIdentity: &opsworks.InstanceIdentity{ Document: aws.String("String"), Signature: aws.String("String"), }, PrivateIp: aws.String("String"), PublicIp: aws.String("String"), RsaPublicKey: aws.String("String"), RsaPublicKeyFingerprint: aws.String("String"), } resp, err := svc.RegisterInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_RegisterRdsDbInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.RegisterRdsDbInstanceInput{ DbPassword: aws.String("String"), // Required DbUser: aws.String("String"), // Required RdsDbInstanceArn: aws.String("String"), // Required StackId: aws.String("String"), // Required } resp, err := svc.RegisterRdsDbInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_RegisterVolume() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.RegisterVolumeInput{ StackId: aws.String("String"), // Required Ec2VolumeId: aws.String("String"), } resp, err := svc.RegisterVolume(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_SetLoadBasedAutoScaling() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.SetLoadBasedAutoScalingInput{ LayerId: aws.String("String"), // Required DownScaling: &opsworks.AutoScalingThresholds{ Alarms: []*string{ aws.String("String"), // Required // More values... }, CpuThreshold: aws.Float64(1.0), IgnoreMetricsTime: aws.Int64(1), InstanceCount: aws.Int64(1), LoadThreshold: aws.Float64(1.0), MemoryThreshold: aws.Float64(1.0), ThresholdsWaitTime: aws.Int64(1), }, Enable: aws.Bool(true), UpScaling: &opsworks.AutoScalingThresholds{ Alarms: []*string{ aws.String("String"), // Required // More values... }, CpuThreshold: aws.Float64(1.0), IgnoreMetricsTime: aws.Int64(1), InstanceCount: aws.Int64(1), LoadThreshold: aws.Float64(1.0), MemoryThreshold: aws.Float64(1.0), ThresholdsWaitTime: aws.Int64(1), }, } resp, err := svc.SetLoadBasedAutoScaling(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_SetPermission() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.SetPermissionInput{ IamUserArn: aws.String("String"), // Required StackId: aws.String("String"), // Required AllowSsh: aws.Bool(true), AllowSudo: aws.Bool(true), Level: aws.String("String"), } resp, err := svc.SetPermission(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_SetTimeBasedAutoScaling() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.SetTimeBasedAutoScalingInput{ InstanceId: aws.String("String"), // Required AutoScalingSchedule: &opsworks.WeeklyAutoScalingSchedule{ Friday: map[string]*string{ "Key": aws.String("Switch"), // Required // More values... }, Monday: map[string]*string{ "Key": aws.String("Switch"), // Required // More values... }, Saturday: map[string]*string{ "Key": aws.String("Switch"), // Required // More values... }, Sunday: map[string]*string{ "Key": aws.String("Switch"), // Required // More values... }, Thursday: map[string]*string{ "Key": aws.String("Switch"), // Required // More values... }, Tuesday: map[string]*string{ "Key": aws.String("Switch"), // Required // More values... }, Wednesday: map[string]*string{ "Key": aws.String("Switch"), // Required // More values... }, }, } resp, err := svc.SetTimeBasedAutoScaling(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_StartInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.StartInstanceInput{ InstanceId: aws.String("String"), // Required } resp, err := svc.StartInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_StartStack() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.StartStackInput{ StackId: aws.String("String"), // Required } resp, err := svc.StartStack(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_StopInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.StopInstanceInput{ InstanceId: aws.String("String"), // Required } resp, err := svc.StopInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_StopStack() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.StopStackInput{ StackId: aws.String("String"), // Required } resp, err := svc.StopStack(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_UnassignInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.UnassignInstanceInput{ InstanceId: aws.String("String"), // Required } resp, err := svc.UnassignInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_UnassignVolume() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.UnassignVolumeInput{ VolumeId: aws.String("String"), // Required } resp, err := svc.UnassignVolume(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_UpdateApp() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.UpdateAppInput{ AppId: aws.String("String"), // Required AppSource: &opsworks.Source{ Password: aws.String("String"), Revision: aws.String("String"), SshKey: aws.String("String"), Type: aws.String("SourceType"), Url: aws.String("String"), Username: aws.String("String"), }, Attributes: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, DataSources: []*opsworks.DataSource{ { // Required Arn: aws.String("String"), DatabaseName: aws.String("String"), Type: aws.String("String"), }, // More values... }, Description: aws.String("String"), Domains: []*string{ aws.String("String"), // Required // More values... }, EnableSsl: aws.Bool(true), Environment: []*opsworks.EnvironmentVariable{ { // Required Key: aws.String("String"), // Required Value: aws.String("String"), // Required Secure: aws.Bool(true), }, // More values... }, Name: aws.String("String"), SslConfiguration: &opsworks.SslConfiguration{ Certificate: aws.String("String"), // Required PrivateKey: aws.String("String"), // Required Chain: aws.String("String"), }, Type: aws.String("AppType"), } resp, err := svc.UpdateApp(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_UpdateElasticIp() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.UpdateElasticIpInput{ ElasticIp: aws.String("String"), // Required Name: aws.String("String"), } resp, err := svc.UpdateElasticIp(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_UpdateInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.UpdateInstanceInput{ InstanceId: aws.String("String"), // Required AgentVersion: aws.String("String"), AmiId: aws.String("String"), Architecture: aws.String("Architecture"), AutoScalingType: aws.String("AutoScalingType"), EbsOptimized: aws.Bool(true), Hostname: aws.String("String"), InstallUpdatesOnBoot: aws.Bool(true), InstanceType: aws.String("String"), LayerIds: []*string{ aws.String("String"), // Required // More values... }, Os: aws.String("String"), SshKeyName: aws.String("String"), } resp, err := svc.UpdateInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_UpdateLayer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.UpdateLayerInput{ LayerId: aws.String("String"), // Required Attributes: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, AutoAssignElasticIps: aws.Bool(true), AutoAssignPublicIps: aws.Bool(true), CustomInstanceProfileArn: aws.String("String"), CustomJson: aws.String("String"), CustomRecipes: &opsworks.Recipes{ Configure: []*string{ aws.String("String"), // Required // More values... }, Deploy: []*string{ aws.String("String"), // Required // More values... }, Setup: []*string{ aws.String("String"), // Required // More values... }, Shutdown: []*string{ aws.String("String"), // Required // More values... }, Undeploy: []*string{ aws.String("String"), // Required // More values... }, }, CustomSecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, EnableAutoHealing: aws.Bool(true), InstallUpdatesOnBoot: aws.Bool(true), LifecycleEventConfiguration: &opsworks.LifecycleEventConfiguration{ Shutdown: &opsworks.ShutdownEventConfiguration{ DelayUntilElbConnectionsDrained: aws.Bool(true), ExecutionTimeout: aws.Int64(1), }, }, Name: aws.String("String"), Packages: []*string{ aws.String("String"), // Required // More values... }, Shortname: aws.String("String"), UseEbsOptimizedInstances: aws.Bool(true), VolumeConfigurations: []*opsworks.VolumeConfiguration{ { // Required MountPoint: aws.String("String"), // Required NumberOfDisks: aws.Int64(1), // Required Size: aws.Int64(1), // Required Iops: aws.Int64(1), RaidLevel: aws.Int64(1), VolumeType: aws.String("String"), }, // More values... }, } resp, err := svc.UpdateLayer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_UpdateMyUserProfile() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.UpdateMyUserProfileInput{ SshPublicKey: aws.String("String"), } resp, err := svc.UpdateMyUserProfile(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_UpdateRdsDbInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.UpdateRdsDbInstanceInput{ RdsDbInstanceArn: aws.String("String"), // Required DbPassword: aws.String("String"), DbUser: aws.String("String"), } resp, err := svc.UpdateRdsDbInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_UpdateStack() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.UpdateStackInput{ StackId: aws.String("String"), // Required AgentVersion: aws.String("String"), Attributes: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, ChefConfiguration: &opsworks.ChefConfiguration{ BerkshelfVersion: aws.String("String"), ManageBerkshelf: aws.Bool(true), }, ConfigurationManager: &opsworks.StackConfigurationManager{ Name: aws.String("String"), Version: aws.String("String"), }, CustomCookbooksSource: &opsworks.Source{ Password: aws.String("String"), Revision: aws.String("String"), SshKey: aws.String("String"), Type: aws.String("SourceType"), Url: aws.String("String"), Username: aws.String("String"), }, CustomJson: aws.String("String"), DefaultAvailabilityZone: aws.String("String"), DefaultInstanceProfileArn: aws.String("String"), DefaultOs: aws.String("String"), DefaultRootDeviceType: aws.String("RootDeviceType"), DefaultSshKeyName: aws.String("String"), DefaultSubnetId: aws.String("String"), HostnameTheme: aws.String("String"), Name: aws.String("String"), ServiceRoleArn: aws.String("String"), UseCustomCookbooks: aws.Bool(true), UseOpsworksSecurityGroups: aws.Bool(true), } resp, err := svc.UpdateStack(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_UpdateUserProfile() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.UpdateUserProfileInput{ IamUserArn: aws.String("String"), // Required AllowSelfManagement: aws.Bool(true), SshPublicKey: aws.String("String"), SshUsername: aws.String("String"), } resp, err := svc.UpdateUserProfile(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleOpsWorks_UpdateVolume() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := opsworks.New(sess) params := &opsworks.UpdateVolumeInput{ VolumeId: aws.String("String"), // Required MountPoint: aws.String("String"), Name: aws.String("String"), } resp, err := svc.UpdateVolume(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/opsworks/opsworksiface/000077500000000000000000000000001300374646400217715ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/opsworks/opsworksiface/interface.go000066400000000000000000000420761300374646400242710ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package opsworksiface provides an interface to enable mocking the AWS OpsWorks service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package opsworksiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/opsworks" ) // OpsWorksAPI provides an interface to enable mocking the // opsworks.OpsWorks service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS OpsWorks. // func myFunc(svc opsworksiface.OpsWorksAPI) bool { // // Make svc.AssignInstance request // } // // func main() { // sess := session.New() // svc := opsworks.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockOpsWorksClient struct { // opsworksiface.OpsWorksAPI // } // func (m *mockOpsWorksClient) AssignInstance(input *opsworks.AssignInstanceInput) (*opsworks.AssignInstanceOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockOpsWorksClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type OpsWorksAPI interface { AssignInstanceRequest(*opsworks.AssignInstanceInput) (*request.Request, *opsworks.AssignInstanceOutput) AssignInstance(*opsworks.AssignInstanceInput) (*opsworks.AssignInstanceOutput, error) AssignVolumeRequest(*opsworks.AssignVolumeInput) (*request.Request, *opsworks.AssignVolumeOutput) AssignVolume(*opsworks.AssignVolumeInput) (*opsworks.AssignVolumeOutput, error) AssociateElasticIpRequest(*opsworks.AssociateElasticIpInput) (*request.Request, *opsworks.AssociateElasticIpOutput) AssociateElasticIp(*opsworks.AssociateElasticIpInput) (*opsworks.AssociateElasticIpOutput, error) AttachElasticLoadBalancerRequest(*opsworks.AttachElasticLoadBalancerInput) (*request.Request, *opsworks.AttachElasticLoadBalancerOutput) AttachElasticLoadBalancer(*opsworks.AttachElasticLoadBalancerInput) (*opsworks.AttachElasticLoadBalancerOutput, error) CloneStackRequest(*opsworks.CloneStackInput) (*request.Request, *opsworks.CloneStackOutput) CloneStack(*opsworks.CloneStackInput) (*opsworks.CloneStackOutput, error) CreateAppRequest(*opsworks.CreateAppInput) (*request.Request, *opsworks.CreateAppOutput) CreateApp(*opsworks.CreateAppInput) (*opsworks.CreateAppOutput, error) CreateDeploymentRequest(*opsworks.CreateDeploymentInput) (*request.Request, *opsworks.CreateDeploymentOutput) CreateDeployment(*opsworks.CreateDeploymentInput) (*opsworks.CreateDeploymentOutput, error) CreateInstanceRequest(*opsworks.CreateInstanceInput) (*request.Request, *opsworks.CreateInstanceOutput) CreateInstance(*opsworks.CreateInstanceInput) (*opsworks.CreateInstanceOutput, error) CreateLayerRequest(*opsworks.CreateLayerInput) (*request.Request, *opsworks.CreateLayerOutput) CreateLayer(*opsworks.CreateLayerInput) (*opsworks.CreateLayerOutput, error) CreateStackRequest(*opsworks.CreateStackInput) (*request.Request, *opsworks.CreateStackOutput) CreateStack(*opsworks.CreateStackInput) (*opsworks.CreateStackOutput, error) CreateUserProfileRequest(*opsworks.CreateUserProfileInput) (*request.Request, *opsworks.CreateUserProfileOutput) CreateUserProfile(*opsworks.CreateUserProfileInput) (*opsworks.CreateUserProfileOutput, error) DeleteAppRequest(*opsworks.DeleteAppInput) (*request.Request, *opsworks.DeleteAppOutput) DeleteApp(*opsworks.DeleteAppInput) (*opsworks.DeleteAppOutput, error) DeleteInstanceRequest(*opsworks.DeleteInstanceInput) (*request.Request, *opsworks.DeleteInstanceOutput) DeleteInstance(*opsworks.DeleteInstanceInput) (*opsworks.DeleteInstanceOutput, error) DeleteLayerRequest(*opsworks.DeleteLayerInput) (*request.Request, *opsworks.DeleteLayerOutput) DeleteLayer(*opsworks.DeleteLayerInput) (*opsworks.DeleteLayerOutput, error) DeleteStackRequest(*opsworks.DeleteStackInput) (*request.Request, *opsworks.DeleteStackOutput) DeleteStack(*opsworks.DeleteStackInput) (*opsworks.DeleteStackOutput, error) DeleteUserProfileRequest(*opsworks.DeleteUserProfileInput) (*request.Request, *opsworks.DeleteUserProfileOutput) DeleteUserProfile(*opsworks.DeleteUserProfileInput) (*opsworks.DeleteUserProfileOutput, error) DeregisterEcsClusterRequest(*opsworks.DeregisterEcsClusterInput) (*request.Request, *opsworks.DeregisterEcsClusterOutput) DeregisterEcsCluster(*opsworks.DeregisterEcsClusterInput) (*opsworks.DeregisterEcsClusterOutput, error) DeregisterElasticIpRequest(*opsworks.DeregisterElasticIpInput) (*request.Request, *opsworks.DeregisterElasticIpOutput) DeregisterElasticIp(*opsworks.DeregisterElasticIpInput) (*opsworks.DeregisterElasticIpOutput, error) DeregisterInstanceRequest(*opsworks.DeregisterInstanceInput) (*request.Request, *opsworks.DeregisterInstanceOutput) DeregisterInstance(*opsworks.DeregisterInstanceInput) (*opsworks.DeregisterInstanceOutput, error) DeregisterRdsDbInstanceRequest(*opsworks.DeregisterRdsDbInstanceInput) (*request.Request, *opsworks.DeregisterRdsDbInstanceOutput) DeregisterRdsDbInstance(*opsworks.DeregisterRdsDbInstanceInput) (*opsworks.DeregisterRdsDbInstanceOutput, error) DeregisterVolumeRequest(*opsworks.DeregisterVolumeInput) (*request.Request, *opsworks.DeregisterVolumeOutput) DeregisterVolume(*opsworks.DeregisterVolumeInput) (*opsworks.DeregisterVolumeOutput, error) DescribeAgentVersionsRequest(*opsworks.DescribeAgentVersionsInput) (*request.Request, *opsworks.DescribeAgentVersionsOutput) DescribeAgentVersions(*opsworks.DescribeAgentVersionsInput) (*opsworks.DescribeAgentVersionsOutput, error) DescribeAppsRequest(*opsworks.DescribeAppsInput) (*request.Request, *opsworks.DescribeAppsOutput) DescribeApps(*opsworks.DescribeAppsInput) (*opsworks.DescribeAppsOutput, error) DescribeCommandsRequest(*opsworks.DescribeCommandsInput) (*request.Request, *opsworks.DescribeCommandsOutput) DescribeCommands(*opsworks.DescribeCommandsInput) (*opsworks.DescribeCommandsOutput, error) DescribeDeploymentsRequest(*opsworks.DescribeDeploymentsInput) (*request.Request, *opsworks.DescribeDeploymentsOutput) DescribeDeployments(*opsworks.DescribeDeploymentsInput) (*opsworks.DescribeDeploymentsOutput, error) DescribeEcsClustersRequest(*opsworks.DescribeEcsClustersInput) (*request.Request, *opsworks.DescribeEcsClustersOutput) DescribeEcsClusters(*opsworks.DescribeEcsClustersInput) (*opsworks.DescribeEcsClustersOutput, error) DescribeEcsClustersPages(*opsworks.DescribeEcsClustersInput, func(*opsworks.DescribeEcsClustersOutput, bool) bool) error DescribeElasticIpsRequest(*opsworks.DescribeElasticIpsInput) (*request.Request, *opsworks.DescribeElasticIpsOutput) DescribeElasticIps(*opsworks.DescribeElasticIpsInput) (*opsworks.DescribeElasticIpsOutput, error) DescribeElasticLoadBalancersRequest(*opsworks.DescribeElasticLoadBalancersInput) (*request.Request, *opsworks.DescribeElasticLoadBalancersOutput) DescribeElasticLoadBalancers(*opsworks.DescribeElasticLoadBalancersInput) (*opsworks.DescribeElasticLoadBalancersOutput, error) DescribeInstancesRequest(*opsworks.DescribeInstancesInput) (*request.Request, *opsworks.DescribeInstancesOutput) DescribeInstances(*opsworks.DescribeInstancesInput) (*opsworks.DescribeInstancesOutput, error) DescribeLayersRequest(*opsworks.DescribeLayersInput) (*request.Request, *opsworks.DescribeLayersOutput) DescribeLayers(*opsworks.DescribeLayersInput) (*opsworks.DescribeLayersOutput, error) DescribeLoadBasedAutoScalingRequest(*opsworks.DescribeLoadBasedAutoScalingInput) (*request.Request, *opsworks.DescribeLoadBasedAutoScalingOutput) DescribeLoadBasedAutoScaling(*opsworks.DescribeLoadBasedAutoScalingInput) (*opsworks.DescribeLoadBasedAutoScalingOutput, error) DescribeMyUserProfileRequest(*opsworks.DescribeMyUserProfileInput) (*request.Request, *opsworks.DescribeMyUserProfileOutput) DescribeMyUserProfile(*opsworks.DescribeMyUserProfileInput) (*opsworks.DescribeMyUserProfileOutput, error) DescribePermissionsRequest(*opsworks.DescribePermissionsInput) (*request.Request, *opsworks.DescribePermissionsOutput) DescribePermissions(*opsworks.DescribePermissionsInput) (*opsworks.DescribePermissionsOutput, error) DescribeRaidArraysRequest(*opsworks.DescribeRaidArraysInput) (*request.Request, *opsworks.DescribeRaidArraysOutput) DescribeRaidArrays(*opsworks.DescribeRaidArraysInput) (*opsworks.DescribeRaidArraysOutput, error) DescribeRdsDbInstancesRequest(*opsworks.DescribeRdsDbInstancesInput) (*request.Request, *opsworks.DescribeRdsDbInstancesOutput) DescribeRdsDbInstances(*opsworks.DescribeRdsDbInstancesInput) (*opsworks.DescribeRdsDbInstancesOutput, error) DescribeServiceErrorsRequest(*opsworks.DescribeServiceErrorsInput) (*request.Request, *opsworks.DescribeServiceErrorsOutput) DescribeServiceErrors(*opsworks.DescribeServiceErrorsInput) (*opsworks.DescribeServiceErrorsOutput, error) DescribeStackProvisioningParametersRequest(*opsworks.DescribeStackProvisioningParametersInput) (*request.Request, *opsworks.DescribeStackProvisioningParametersOutput) DescribeStackProvisioningParameters(*opsworks.DescribeStackProvisioningParametersInput) (*opsworks.DescribeStackProvisioningParametersOutput, error) DescribeStackSummaryRequest(*opsworks.DescribeStackSummaryInput) (*request.Request, *opsworks.DescribeStackSummaryOutput) DescribeStackSummary(*opsworks.DescribeStackSummaryInput) (*opsworks.DescribeStackSummaryOutput, error) DescribeStacksRequest(*opsworks.DescribeStacksInput) (*request.Request, *opsworks.DescribeStacksOutput) DescribeStacks(*opsworks.DescribeStacksInput) (*opsworks.DescribeStacksOutput, error) DescribeTimeBasedAutoScalingRequest(*opsworks.DescribeTimeBasedAutoScalingInput) (*request.Request, *opsworks.DescribeTimeBasedAutoScalingOutput) DescribeTimeBasedAutoScaling(*opsworks.DescribeTimeBasedAutoScalingInput) (*opsworks.DescribeTimeBasedAutoScalingOutput, error) DescribeUserProfilesRequest(*opsworks.DescribeUserProfilesInput) (*request.Request, *opsworks.DescribeUserProfilesOutput) DescribeUserProfiles(*opsworks.DescribeUserProfilesInput) (*opsworks.DescribeUserProfilesOutput, error) DescribeVolumesRequest(*opsworks.DescribeVolumesInput) (*request.Request, *opsworks.DescribeVolumesOutput) DescribeVolumes(*opsworks.DescribeVolumesInput) (*opsworks.DescribeVolumesOutput, error) DetachElasticLoadBalancerRequest(*opsworks.DetachElasticLoadBalancerInput) (*request.Request, *opsworks.DetachElasticLoadBalancerOutput) DetachElasticLoadBalancer(*opsworks.DetachElasticLoadBalancerInput) (*opsworks.DetachElasticLoadBalancerOutput, error) DisassociateElasticIpRequest(*opsworks.DisassociateElasticIpInput) (*request.Request, *opsworks.DisassociateElasticIpOutput) DisassociateElasticIp(*opsworks.DisassociateElasticIpInput) (*opsworks.DisassociateElasticIpOutput, error) GetHostnameSuggestionRequest(*opsworks.GetHostnameSuggestionInput) (*request.Request, *opsworks.GetHostnameSuggestionOutput) GetHostnameSuggestion(*opsworks.GetHostnameSuggestionInput) (*opsworks.GetHostnameSuggestionOutput, error) GrantAccessRequest(*opsworks.GrantAccessInput) (*request.Request, *opsworks.GrantAccessOutput) GrantAccess(*opsworks.GrantAccessInput) (*opsworks.GrantAccessOutput, error) RebootInstanceRequest(*opsworks.RebootInstanceInput) (*request.Request, *opsworks.RebootInstanceOutput) RebootInstance(*opsworks.RebootInstanceInput) (*opsworks.RebootInstanceOutput, error) RegisterEcsClusterRequest(*opsworks.RegisterEcsClusterInput) (*request.Request, *opsworks.RegisterEcsClusterOutput) RegisterEcsCluster(*opsworks.RegisterEcsClusterInput) (*opsworks.RegisterEcsClusterOutput, error) RegisterElasticIpRequest(*opsworks.RegisterElasticIpInput) (*request.Request, *opsworks.RegisterElasticIpOutput) RegisterElasticIp(*opsworks.RegisterElasticIpInput) (*opsworks.RegisterElasticIpOutput, error) RegisterInstanceRequest(*opsworks.RegisterInstanceInput) (*request.Request, *opsworks.RegisterInstanceOutput) RegisterInstance(*opsworks.RegisterInstanceInput) (*opsworks.RegisterInstanceOutput, error) RegisterRdsDbInstanceRequest(*opsworks.RegisterRdsDbInstanceInput) (*request.Request, *opsworks.RegisterRdsDbInstanceOutput) RegisterRdsDbInstance(*opsworks.RegisterRdsDbInstanceInput) (*opsworks.RegisterRdsDbInstanceOutput, error) RegisterVolumeRequest(*opsworks.RegisterVolumeInput) (*request.Request, *opsworks.RegisterVolumeOutput) RegisterVolume(*opsworks.RegisterVolumeInput) (*opsworks.RegisterVolumeOutput, error) SetLoadBasedAutoScalingRequest(*opsworks.SetLoadBasedAutoScalingInput) (*request.Request, *opsworks.SetLoadBasedAutoScalingOutput) SetLoadBasedAutoScaling(*opsworks.SetLoadBasedAutoScalingInput) (*opsworks.SetLoadBasedAutoScalingOutput, error) SetPermissionRequest(*opsworks.SetPermissionInput) (*request.Request, *opsworks.SetPermissionOutput) SetPermission(*opsworks.SetPermissionInput) (*opsworks.SetPermissionOutput, error) SetTimeBasedAutoScalingRequest(*opsworks.SetTimeBasedAutoScalingInput) (*request.Request, *opsworks.SetTimeBasedAutoScalingOutput) SetTimeBasedAutoScaling(*opsworks.SetTimeBasedAutoScalingInput) (*opsworks.SetTimeBasedAutoScalingOutput, error) StartInstanceRequest(*opsworks.StartInstanceInput) (*request.Request, *opsworks.StartInstanceOutput) StartInstance(*opsworks.StartInstanceInput) (*opsworks.StartInstanceOutput, error) StartStackRequest(*opsworks.StartStackInput) (*request.Request, *opsworks.StartStackOutput) StartStack(*opsworks.StartStackInput) (*opsworks.StartStackOutput, error) StopInstanceRequest(*opsworks.StopInstanceInput) (*request.Request, *opsworks.StopInstanceOutput) StopInstance(*opsworks.StopInstanceInput) (*opsworks.StopInstanceOutput, error) StopStackRequest(*opsworks.StopStackInput) (*request.Request, *opsworks.StopStackOutput) StopStack(*opsworks.StopStackInput) (*opsworks.StopStackOutput, error) UnassignInstanceRequest(*opsworks.UnassignInstanceInput) (*request.Request, *opsworks.UnassignInstanceOutput) UnassignInstance(*opsworks.UnassignInstanceInput) (*opsworks.UnassignInstanceOutput, error) UnassignVolumeRequest(*opsworks.UnassignVolumeInput) (*request.Request, *opsworks.UnassignVolumeOutput) UnassignVolume(*opsworks.UnassignVolumeInput) (*opsworks.UnassignVolumeOutput, error) UpdateAppRequest(*opsworks.UpdateAppInput) (*request.Request, *opsworks.UpdateAppOutput) UpdateApp(*opsworks.UpdateAppInput) (*opsworks.UpdateAppOutput, error) UpdateElasticIpRequest(*opsworks.UpdateElasticIpInput) (*request.Request, *opsworks.UpdateElasticIpOutput) UpdateElasticIp(*opsworks.UpdateElasticIpInput) (*opsworks.UpdateElasticIpOutput, error) UpdateInstanceRequest(*opsworks.UpdateInstanceInput) (*request.Request, *opsworks.UpdateInstanceOutput) UpdateInstance(*opsworks.UpdateInstanceInput) (*opsworks.UpdateInstanceOutput, error) UpdateLayerRequest(*opsworks.UpdateLayerInput) (*request.Request, *opsworks.UpdateLayerOutput) UpdateLayer(*opsworks.UpdateLayerInput) (*opsworks.UpdateLayerOutput, error) UpdateMyUserProfileRequest(*opsworks.UpdateMyUserProfileInput) (*request.Request, *opsworks.UpdateMyUserProfileOutput) UpdateMyUserProfile(*opsworks.UpdateMyUserProfileInput) (*opsworks.UpdateMyUserProfileOutput, error) UpdateRdsDbInstanceRequest(*opsworks.UpdateRdsDbInstanceInput) (*request.Request, *opsworks.UpdateRdsDbInstanceOutput) UpdateRdsDbInstance(*opsworks.UpdateRdsDbInstanceInput) (*opsworks.UpdateRdsDbInstanceOutput, error) UpdateStackRequest(*opsworks.UpdateStackInput) (*request.Request, *opsworks.UpdateStackOutput) UpdateStack(*opsworks.UpdateStackInput) (*opsworks.UpdateStackOutput, error) UpdateUserProfileRequest(*opsworks.UpdateUserProfileInput) (*request.Request, *opsworks.UpdateUserProfileOutput) UpdateUserProfile(*opsworks.UpdateUserProfileInput) (*opsworks.UpdateUserProfileOutput, error) UpdateVolumeRequest(*opsworks.UpdateVolumeInput) (*request.Request, *opsworks.UpdateVolumeOutput) UpdateVolume(*opsworks.UpdateVolumeInput) (*opsworks.UpdateVolumeOutput, error) WaitUntilAppExists(*opsworks.DescribeAppsInput) error WaitUntilDeploymentSuccessful(*opsworks.DescribeDeploymentsInput) error WaitUntilInstanceOnline(*opsworks.DescribeInstancesInput) error WaitUntilInstanceRegistered(*opsworks.DescribeInstancesInput) error WaitUntilInstanceStopped(*opsworks.DescribeInstancesInput) error WaitUntilInstanceTerminated(*opsworks.DescribeInstancesInput) error } var _ OpsWorksAPI = (*opsworks.OpsWorks)(nil) aws-sdk-go-1.4.22/service/opsworks/service.go000066400000000000000000000124541300374646400211070ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package opsworks import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Welcome to the AWS OpsWorks API Reference. This guide provides descriptions, // syntax, and usage examples for AWS OpsWorks actions and data types, including // common parameters and error codes. // // AWS OpsWorks is an application management service that provides an integrated // experience for overseeing the complete application lifecycle. For information // about this product, go to the AWS OpsWorks (http://aws.amazon.com/opsworks/) // details page. // // SDKs and CLI // // The most common way to use the AWS OpsWorks API is by using the AWS Command // Line Interface (CLI) or by using one of the AWS SDKs to implement applications // in your preferred language. For more information, see: // // * AWS CLI (http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) // // * AWS SDK for Java (http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/opsworks/AWSOpsWorksClient.html) // // * AWS SDK for .NET (http://docs.aws.amazon.com/sdkfornet/latest/apidocs/html/N_Amazon_OpsWorks.htm) // // * AWS SDK for PHP 2 (http://docs.aws.amazon.com/aws-sdk-php-2/latest/class-Aws.OpsWorks.OpsWorksClient.html) // // * AWS SDK for Ruby (http://docs.aws.amazon.com/sdkforruby/api/) // // * AWS SDK for Node.js (http://aws.amazon.com/documentation/sdkforjavascript/) // // * AWS SDK for Python(Boto) (http://docs.pythonboto.org/en/latest/ref/opsworks.html) // // Endpoints // // AWS OpsWorks supports the following endpoints, all HTTPS. You must connect // to one of the following endpoints. Stacks can only be accessed or managed // within the endpoint in which they are created. // // * opsworks.us-east-1.amazonaws.com // // * opsworks.us-west-1.amazonaws.com // // * opsworks.us-west-2.amazonaws.com // // * opsworks.eu-west-1.amazonaws.com // // * opsworks.eu-central-1.amazonaws.com // // * opsworks.ap-northeast-1.amazonaws.com // // * opsworks.ap-northeast-2.amazonaws.com // // * opsworks.ap-south-1.amazonaws.com // // * opsworks.ap-southeast-1.amazonaws.com // // * opsworks.ap-southeast-2.amazonaws.com // // * opsworks.sa-east-1.amazonaws.com // // Chef Versions // // When you call CreateStack, CloneStack, or UpdateStack we recommend you use // the ConfigurationManager parameter to specify the Chef version. The recommended // and default value for Linux stacks is currently 12. Windows stacks use Chef // 12.2. For more information, see Chef Versions (http://docs.aws.amazon.com/opsworks/latest/userguide/workingcookbook-chef11.html). // // You can specify Chef 12, 11.10, or 11.4 for your Linux stack. We recommend // migrating your existing Linux stacks to Chef 12 as soon as possible. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type OpsWorks struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "opsworks" // New creates a new instance of the OpsWorks client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a OpsWorks client from just a session. // svc := opsworks.New(mySession) // // // Create a OpsWorks client with additional configuration // svc := opsworks.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *OpsWorks { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OpsWorks { svc := &OpsWorks{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2013-02-18", JSONVersion: "1.1", TargetPrefix: "OpsWorks_20130218", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a OpsWorks operation and runs any // custom request initialization. func (c *OpsWorks) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/opsworks/waiters.go000066400000000000000000000204761300374646400211300ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package opsworks import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilAppExists uses the AWS OpsWorks API operation // DescribeApps to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *OpsWorks) WaitUntilAppExists(input *DescribeAppsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeApps", Delay: 1, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "status", Argument: "", Expected: 200, }, { State: "failure", Matcher: "status", Argument: "", Expected: 400, }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilDeploymentSuccessful uses the AWS OpsWorks API operation // DescribeDeployments to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *OpsWorks) WaitUntilDeploymentSuccessful(input *DescribeDeploymentsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeDeployments", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Deployments[].Status", Expected: "successful", }, { State: "failure", Matcher: "pathAny", Argument: "Deployments[].Status", Expected: "failed", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilInstanceOnline uses the AWS OpsWorks API operation // DescribeInstances to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *OpsWorks) WaitUntilInstanceOnline(input *DescribeInstancesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeInstances", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Instances[].Status", Expected: "online", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "setup_failed", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "shutting_down", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "start_failed", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "stopped", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "stopping", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "terminating", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "terminated", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "stop_failed", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilInstanceRegistered uses the AWS OpsWorks API operation // DescribeInstances to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *OpsWorks) WaitUntilInstanceRegistered(input *DescribeInstancesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeInstances", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Instances[].Status", Expected: "registered", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "setup_failed", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "shutting_down", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "stopped", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "stopping", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "terminating", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "terminated", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "stop_failed", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilInstanceStopped uses the AWS OpsWorks API operation // DescribeInstances to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *OpsWorks) WaitUntilInstanceStopped(input *DescribeInstancesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeInstances", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Instances[].Status", Expected: "stopped", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "booting", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "online", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "pending", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "rebooting", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "requested", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "running_setup", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "setup_failed", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "start_failed", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "stop_failed", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilInstanceTerminated uses the AWS OpsWorks API operation // DescribeInstances to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *OpsWorks) WaitUntilInstanceTerminated(input *DescribeInstancesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeInstances", Delay: 15, MaxAttempts: 40, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Instances[].Status", Expected: "terminated", }, { State: "success", Matcher: "error", Argument: "", Expected: "ResourceNotFoundException", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "booting", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "online", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "pending", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "rebooting", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "requested", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "running_setup", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "setup_failed", }, { State: "failure", Matcher: "pathAny", Argument: "Instances[].Status", Expected: "start_failed", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/rds/000077500000000000000000000000001300374646400160135ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/rds/api.go000066400000000000000000024065141300374646400171270ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package rds provides a client for Amazon Relational Database Service. package rds import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/query" ) const opAddRoleToDBCluster = "AddRoleToDBCluster" // AddRoleToDBClusterRequest generates a "aws/request.Request" representing the // client's request for the AddRoleToDBCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddRoleToDBCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddRoleToDBCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddRoleToDBClusterRequest method. // req, resp := client.AddRoleToDBClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) AddRoleToDBClusterRequest(input *AddRoleToDBClusterInput) (req *request.Request, output *AddRoleToDBClusterOutput) { op := &request.Operation{ Name: opAddRoleToDBCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddRoleToDBClusterInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AddRoleToDBClusterOutput{} req.Data = output return } // AddRoleToDBCluster API operation for Amazon Relational Database Service. // // Associates an Identity and Access Management (IAM) role from an Aurora DB // cluster. For more information, see Authorizing Amazon Aurora to Access Other // AWS Services On Your Behalf (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Authorizing.AWSServices.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation AddRoleToDBCluster for usage and error information. // // Returned Error Codes: // * DBClusterNotFoundFault // DBClusterIdentifier does not refer to an existing DB cluster. // // * DBClusterRoleAlreadyExists // The specified IAM role Amazon Resource Name (ARN) is already associated with // the specified DB cluster. // // * InvalidDBClusterStateFault // The DB cluster is not in a valid state. // // * DBClusterRoleQuotaExceeded // You have exceeded the maximum number of IAM roles that can be associated // with the specified DB cluster. // func (c *RDS) AddRoleToDBCluster(input *AddRoleToDBClusterInput) (*AddRoleToDBClusterOutput, error) { req, out := c.AddRoleToDBClusterRequest(input) err := req.Send() return out, err } const opAddSourceIdentifierToSubscription = "AddSourceIdentifierToSubscription" // AddSourceIdentifierToSubscriptionRequest generates a "aws/request.Request" representing the // client's request for the AddSourceIdentifierToSubscription operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddSourceIdentifierToSubscription for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddSourceIdentifierToSubscription method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddSourceIdentifierToSubscriptionRequest method. // req, resp := client.AddSourceIdentifierToSubscriptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) AddSourceIdentifierToSubscriptionRequest(input *AddSourceIdentifierToSubscriptionInput) (req *request.Request, output *AddSourceIdentifierToSubscriptionOutput) { op := &request.Operation{ Name: opAddSourceIdentifierToSubscription, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddSourceIdentifierToSubscriptionInput{} } req = c.newRequest(op, input, output) output = &AddSourceIdentifierToSubscriptionOutput{} req.Data = output return } // AddSourceIdentifierToSubscription API operation for Amazon Relational Database Service. // // Adds a source identifier to an existing RDS event notification subscription. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation AddSourceIdentifierToSubscription for usage and error information. // // Returned Error Codes: // * SubscriptionNotFound // The subscription name does not exist. // // * SourceNotFound // The requested source could not be found. // func (c *RDS) AddSourceIdentifierToSubscription(input *AddSourceIdentifierToSubscriptionInput) (*AddSourceIdentifierToSubscriptionOutput, error) { req, out := c.AddSourceIdentifierToSubscriptionRequest(input) err := req.Send() return out, err } const opAddTagsToResource = "AddTagsToResource" // AddTagsToResourceRequest generates a "aws/request.Request" representing the // client's request for the AddTagsToResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddTagsToResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddTagsToResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddTagsToResourceRequest method. // req, resp := client.AddTagsToResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) AddTagsToResourceRequest(input *AddTagsToResourceInput) (req *request.Request, output *AddTagsToResourceOutput) { op := &request.Operation{ Name: opAddTagsToResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddTagsToResourceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AddTagsToResourceOutput{} req.Data = output return } // AddTagsToResource API operation for Amazon Relational Database Service. // // Adds metadata tags to an Amazon RDS resource. These tags can also be used // with cost allocation reporting to track cost associated with Amazon RDS resources, // or used in a Condition statement in an IAM policy for Amazon RDS. // // For an overview on tagging Amazon RDS resources, see Tagging Amazon RDS Resources // (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.Tagging.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation AddTagsToResource for usage and error information. // // Returned Error Codes: // * DBInstanceNotFound // DBInstanceIdentifier does not refer to an existing DB instance. // // * DBSnapshotNotFound // DBSnapshotIdentifier does not refer to an existing DB snapshot. // func (c *RDS) AddTagsToResource(input *AddTagsToResourceInput) (*AddTagsToResourceOutput, error) { req, out := c.AddTagsToResourceRequest(input) err := req.Send() return out, err } const opApplyPendingMaintenanceAction = "ApplyPendingMaintenanceAction" // ApplyPendingMaintenanceActionRequest generates a "aws/request.Request" representing the // client's request for the ApplyPendingMaintenanceAction operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ApplyPendingMaintenanceAction for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ApplyPendingMaintenanceAction method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ApplyPendingMaintenanceActionRequest method. // req, resp := client.ApplyPendingMaintenanceActionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) ApplyPendingMaintenanceActionRequest(input *ApplyPendingMaintenanceActionInput) (req *request.Request, output *ApplyPendingMaintenanceActionOutput) { op := &request.Operation{ Name: opApplyPendingMaintenanceAction, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ApplyPendingMaintenanceActionInput{} } req = c.newRequest(op, input, output) output = &ApplyPendingMaintenanceActionOutput{} req.Data = output return } // ApplyPendingMaintenanceAction API operation for Amazon Relational Database Service. // // Applies a pending maintenance action to a resource (for example, to a DB // instance). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation ApplyPendingMaintenanceAction for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The specified resource ID was not found. // func (c *RDS) ApplyPendingMaintenanceAction(input *ApplyPendingMaintenanceActionInput) (*ApplyPendingMaintenanceActionOutput, error) { req, out := c.ApplyPendingMaintenanceActionRequest(input) err := req.Send() return out, err } const opAuthorizeDBSecurityGroupIngress = "AuthorizeDBSecurityGroupIngress" // AuthorizeDBSecurityGroupIngressRequest generates a "aws/request.Request" representing the // client's request for the AuthorizeDBSecurityGroupIngress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AuthorizeDBSecurityGroupIngress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AuthorizeDBSecurityGroupIngress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AuthorizeDBSecurityGroupIngressRequest method. // req, resp := client.AuthorizeDBSecurityGroupIngressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) AuthorizeDBSecurityGroupIngressRequest(input *AuthorizeDBSecurityGroupIngressInput) (req *request.Request, output *AuthorizeDBSecurityGroupIngressOutput) { op := &request.Operation{ Name: opAuthorizeDBSecurityGroupIngress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AuthorizeDBSecurityGroupIngressInput{} } req = c.newRequest(op, input, output) output = &AuthorizeDBSecurityGroupIngressOutput{} req.Data = output return } // AuthorizeDBSecurityGroupIngress API operation for Amazon Relational Database Service. // // Enables ingress to a DBSecurityGroup using one of two forms of authorization. // First, EC2 or VPC security groups can be added to the DBSecurityGroup if // the application using the database is running on EC2 or VPC instances. Second, // IP ranges are available if the application accessing your database is running // on the Internet. Required parameters for this API are one of CIDR range, // EC2SecurityGroupId for VPC, or (EC2SecurityGroupOwnerId and either EC2SecurityGroupName // or EC2SecurityGroupId for non-VPC). // // You cannot authorize ingress from an EC2 security group in one region to // an Amazon RDS DB instance in another. You cannot authorize ingress from a // VPC security group in one VPC to an Amazon RDS DB instance in another. // // For an overview of CIDR ranges, go to the Wikipedia Tutorial (http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation AuthorizeDBSecurityGroupIngress for usage and error information. // // Returned Error Codes: // * DBSecurityGroupNotFound // DBSecurityGroupName does not refer to an existing DB security group. // // * InvalidDBSecurityGroupState // The state of the DB security group does not allow deletion. // // * AuthorizationAlreadyExists // The specified CIDRIP or EC2 security group is already authorized for the // specified DB security group. // // * AuthorizationQuotaExceeded // DB security group authorization quota has been reached. // func (c *RDS) AuthorizeDBSecurityGroupIngress(input *AuthorizeDBSecurityGroupIngressInput) (*AuthorizeDBSecurityGroupIngressOutput, error) { req, out := c.AuthorizeDBSecurityGroupIngressRequest(input) err := req.Send() return out, err } const opCopyDBClusterParameterGroup = "CopyDBClusterParameterGroup" // CopyDBClusterParameterGroupRequest generates a "aws/request.Request" representing the // client's request for the CopyDBClusterParameterGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CopyDBClusterParameterGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CopyDBClusterParameterGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CopyDBClusterParameterGroupRequest method. // req, resp := client.CopyDBClusterParameterGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) CopyDBClusterParameterGroupRequest(input *CopyDBClusterParameterGroupInput) (req *request.Request, output *CopyDBClusterParameterGroupOutput) { op := &request.Operation{ Name: opCopyDBClusterParameterGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CopyDBClusterParameterGroupInput{} } req = c.newRequest(op, input, output) output = &CopyDBClusterParameterGroupOutput{} req.Data = output return } // CopyDBClusterParameterGroup API operation for Amazon Relational Database Service. // // Copies the specified DB cluster parameter group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation CopyDBClusterParameterGroup for usage and error information. // // Returned Error Codes: // * DBParameterGroupNotFound // DBParameterGroupName does not refer to an existing DB parameter group. // // * DBParameterGroupQuotaExceeded // Request would result in user exceeding the allowed number of DB parameter // groups. // // * DBParameterGroupAlreadyExists // A DB parameter group with the same name exists. // func (c *RDS) CopyDBClusterParameterGroup(input *CopyDBClusterParameterGroupInput) (*CopyDBClusterParameterGroupOutput, error) { req, out := c.CopyDBClusterParameterGroupRequest(input) err := req.Send() return out, err } const opCopyDBClusterSnapshot = "CopyDBClusterSnapshot" // CopyDBClusterSnapshotRequest generates a "aws/request.Request" representing the // client's request for the CopyDBClusterSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CopyDBClusterSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CopyDBClusterSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CopyDBClusterSnapshotRequest method. // req, resp := client.CopyDBClusterSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) CopyDBClusterSnapshotRequest(input *CopyDBClusterSnapshotInput) (req *request.Request, output *CopyDBClusterSnapshotOutput) { op := &request.Operation{ Name: opCopyDBClusterSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CopyDBClusterSnapshotInput{} } req = c.newRequest(op, input, output) output = &CopyDBClusterSnapshotOutput{} req.Data = output return } // CopyDBClusterSnapshot API operation for Amazon Relational Database Service. // // Creates a snapshot of a DB cluster. For more information on Amazon Aurora, // see Aurora on Amazon RDS (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html) // in the Amazon RDS User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation CopyDBClusterSnapshot for usage and error information. // // Returned Error Codes: // * DBClusterSnapshotAlreadyExistsFault // User already has a DB cluster snapshot with the given identifier. // // * DBClusterSnapshotNotFoundFault // DBClusterSnapshotIdentifier does not refer to an existing DB cluster snapshot. // // * InvalidDBClusterStateFault // The DB cluster is not in a valid state. // // * InvalidDBClusterSnapshotStateFault // The supplied value is not a valid DB cluster snapshot state. // // * SnapshotQuotaExceeded // Request would result in user exceeding the allowed number of DB snapshots. // // * KMSKeyNotAccessibleFault // Error accessing KMS key. // func (c *RDS) CopyDBClusterSnapshot(input *CopyDBClusterSnapshotInput) (*CopyDBClusterSnapshotOutput, error) { req, out := c.CopyDBClusterSnapshotRequest(input) err := req.Send() return out, err } const opCopyDBParameterGroup = "CopyDBParameterGroup" // CopyDBParameterGroupRequest generates a "aws/request.Request" representing the // client's request for the CopyDBParameterGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CopyDBParameterGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CopyDBParameterGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CopyDBParameterGroupRequest method. // req, resp := client.CopyDBParameterGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) CopyDBParameterGroupRequest(input *CopyDBParameterGroupInput) (req *request.Request, output *CopyDBParameterGroupOutput) { op := &request.Operation{ Name: opCopyDBParameterGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CopyDBParameterGroupInput{} } req = c.newRequest(op, input, output) output = &CopyDBParameterGroupOutput{} req.Data = output return } // CopyDBParameterGroup API operation for Amazon Relational Database Service. // // Copies the specified DB parameter group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation CopyDBParameterGroup for usage and error information. // // Returned Error Codes: // * DBParameterGroupNotFound // DBParameterGroupName does not refer to an existing DB parameter group. // // * DBParameterGroupAlreadyExists // A DB parameter group with the same name exists. // // * DBParameterGroupQuotaExceeded // Request would result in user exceeding the allowed number of DB parameter // groups. // func (c *RDS) CopyDBParameterGroup(input *CopyDBParameterGroupInput) (*CopyDBParameterGroupOutput, error) { req, out := c.CopyDBParameterGroupRequest(input) err := req.Send() return out, err } const opCopyDBSnapshot = "CopyDBSnapshot" // CopyDBSnapshotRequest generates a "aws/request.Request" representing the // client's request for the CopyDBSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CopyDBSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CopyDBSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CopyDBSnapshotRequest method. // req, resp := client.CopyDBSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) CopyDBSnapshotRequest(input *CopyDBSnapshotInput) (req *request.Request, output *CopyDBSnapshotOutput) { op := &request.Operation{ Name: opCopyDBSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CopyDBSnapshotInput{} } req = c.newRequest(op, input, output) output = &CopyDBSnapshotOutput{} req.Data = output return } // CopyDBSnapshot API operation for Amazon Relational Database Service. // // Copies the specified DB snapshot. The source DB snapshot must be in the "available" // state. // // If you are copying from a shared manual DB snapshot, the SourceDBSnapshotIdentifier // must be the ARN of the shared DB snapshot. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation CopyDBSnapshot for usage and error information. // // Returned Error Codes: // * DBSnapshotAlreadyExists // DBSnapshotIdentifier is already used by an existing snapshot. // // * DBSnapshotNotFound // DBSnapshotIdentifier does not refer to an existing DB snapshot. // // * InvalidDBSnapshotState // The state of the DB snapshot does not allow deletion. // // * SnapshotQuotaExceeded // Request would result in user exceeding the allowed number of DB snapshots. // // * KMSKeyNotAccessibleFault // Error accessing KMS key. // func (c *RDS) CopyDBSnapshot(input *CopyDBSnapshotInput) (*CopyDBSnapshotOutput, error) { req, out := c.CopyDBSnapshotRequest(input) err := req.Send() return out, err } const opCopyOptionGroup = "CopyOptionGroup" // CopyOptionGroupRequest generates a "aws/request.Request" representing the // client's request for the CopyOptionGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CopyOptionGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CopyOptionGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CopyOptionGroupRequest method. // req, resp := client.CopyOptionGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) CopyOptionGroupRequest(input *CopyOptionGroupInput) (req *request.Request, output *CopyOptionGroupOutput) { op := &request.Operation{ Name: opCopyOptionGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CopyOptionGroupInput{} } req = c.newRequest(op, input, output) output = &CopyOptionGroupOutput{} req.Data = output return } // CopyOptionGroup API operation for Amazon Relational Database Service. // // Copies the specified option group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation CopyOptionGroup for usage and error information. // // Returned Error Codes: // * OptionGroupAlreadyExistsFault // The option group you are trying to create already exists. // // * OptionGroupNotFoundFault // The specified option group could not be found. // // * OptionGroupQuotaExceededFault // The quota of 20 option groups was exceeded for this AWS account. // func (c *RDS) CopyOptionGroup(input *CopyOptionGroupInput) (*CopyOptionGroupOutput, error) { req, out := c.CopyOptionGroupRequest(input) err := req.Send() return out, err } const opCreateDBCluster = "CreateDBCluster" // CreateDBClusterRequest generates a "aws/request.Request" representing the // client's request for the CreateDBCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDBCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDBCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDBClusterRequest method. // req, resp := client.CreateDBClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) CreateDBClusterRequest(input *CreateDBClusterInput) (req *request.Request, output *CreateDBClusterOutput) { op := &request.Operation{ Name: opCreateDBCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDBClusterInput{} } req = c.newRequest(op, input, output) output = &CreateDBClusterOutput{} req.Data = output return } // CreateDBCluster API operation for Amazon Relational Database Service. // // Creates a new Amazon Aurora DB cluster. // // You can use the ReplicationSourceIdentifier parameter to create the DB cluster // as a Read Replica of another DB cluster. // // For more information on Amazon Aurora, see Aurora on Amazon RDS (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html) // in the Amazon RDS User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation CreateDBCluster for usage and error information. // // Returned Error Codes: // * DBClusterAlreadyExistsFault // User already has a DB cluster with the given identifier. // // * InsufficientStorageClusterCapacity // There is insufficient storage available for the current action. You may be // able to resolve this error by updating your subnet group to use different // Availability Zones that have more storage available. // // * DBClusterQuotaExceededFault // User attempted to create a new DB cluster and the user has already reached // the maximum allowed DB cluster quota. // // * StorageQuotaExceeded // Request would result in user exceeding the allowed amount of storage available // across all DB instances. // // * DBSubnetGroupNotFoundFault // DBSubnetGroupName does not refer to an existing DB subnet group. // // * InvalidVPCNetworkStateFault // DB subnet group does not cover all Availability Zones after it is created // because users' change. // // * InvalidDBClusterStateFault // The DB cluster is not in a valid state. // // * InvalidDBSubnetGroupStateFault // The DB subnet group cannot be deleted because it is in use. // // * InvalidSubnet // The requested subnet is invalid, or multiple subnets were requested that // are not all in a common VPC. // // * DBClusterParameterGroupNotFound // DBClusterParameterGroupName does not refer to an existing DB Cluster parameter // group. // // * KMSKeyNotAccessibleFault // Error accessing KMS key. // // * DBClusterNotFoundFault // DBClusterIdentifier does not refer to an existing DB cluster. // func (c *RDS) CreateDBCluster(input *CreateDBClusterInput) (*CreateDBClusterOutput, error) { req, out := c.CreateDBClusterRequest(input) err := req.Send() return out, err } const opCreateDBClusterParameterGroup = "CreateDBClusterParameterGroup" // CreateDBClusterParameterGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateDBClusterParameterGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDBClusterParameterGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDBClusterParameterGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDBClusterParameterGroupRequest method. // req, resp := client.CreateDBClusterParameterGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) CreateDBClusterParameterGroupRequest(input *CreateDBClusterParameterGroupInput) (req *request.Request, output *CreateDBClusterParameterGroupOutput) { op := &request.Operation{ Name: opCreateDBClusterParameterGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDBClusterParameterGroupInput{} } req = c.newRequest(op, input, output) output = &CreateDBClusterParameterGroupOutput{} req.Data = output return } // CreateDBClusterParameterGroup API operation for Amazon Relational Database Service. // // Creates a new DB cluster parameter group. // // Parameters in a DB cluster parameter group apply to all of the instances // in a DB cluster. // // A DB cluster parameter group is initially created with the default parameters // for the database engine used by instances in the DB cluster. To provide custom // values for any of the parameters, you must modify the group after creating // it using ModifyDBClusterParameterGroup. Once you've created a DB cluster // parameter group, you need to associate it with your DB cluster using ModifyDBCluster. // When you associate a new DB cluster parameter group with a running DB cluster, // you need to reboot the DB instances in the DB cluster without failover for // the new DB cluster parameter group and associated settings to take effect. // // After you create a DB cluster parameter group, you should wait at least 5 // minutes before creating your first DB cluster that uses that DB cluster parameter // group as the default parameter group. This allows Amazon RDS to fully complete // the create action before the DB cluster parameter group is used as the default // for a new DB cluster. This is especially important for parameters that are // critical when creating the default database for a DB cluster, such as the // character set for the default database defined by the character_set_database // parameter. You can use the Parameter Groups option of the Amazon RDS console // (https://console.aws.amazon.com/rds/) or the DescribeDBClusterParameters // command to verify that your DB cluster parameter group has been created or // modified. // // For more information on Amazon Aurora, see Aurora on Amazon RDS (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html) // in the Amazon RDS User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation CreateDBClusterParameterGroup for usage and error information. // // Returned Error Codes: // * DBParameterGroupQuotaExceeded // Request would result in user exceeding the allowed number of DB parameter // groups. // // * DBParameterGroupAlreadyExists // A DB parameter group with the same name exists. // func (c *RDS) CreateDBClusterParameterGroup(input *CreateDBClusterParameterGroupInput) (*CreateDBClusterParameterGroupOutput, error) { req, out := c.CreateDBClusterParameterGroupRequest(input) err := req.Send() return out, err } const opCreateDBClusterSnapshot = "CreateDBClusterSnapshot" // CreateDBClusterSnapshotRequest generates a "aws/request.Request" representing the // client's request for the CreateDBClusterSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDBClusterSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDBClusterSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDBClusterSnapshotRequest method. // req, resp := client.CreateDBClusterSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) CreateDBClusterSnapshotRequest(input *CreateDBClusterSnapshotInput) (req *request.Request, output *CreateDBClusterSnapshotOutput) { op := &request.Operation{ Name: opCreateDBClusterSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDBClusterSnapshotInput{} } req = c.newRequest(op, input, output) output = &CreateDBClusterSnapshotOutput{} req.Data = output return } // CreateDBClusterSnapshot API operation for Amazon Relational Database Service. // // Creates a snapshot of a DB cluster. For more information on Amazon Aurora, // see Aurora on Amazon RDS (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html) // in the Amazon RDS User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation CreateDBClusterSnapshot for usage and error information. // // Returned Error Codes: // * DBClusterSnapshotAlreadyExistsFault // User already has a DB cluster snapshot with the given identifier. // // * InvalidDBClusterStateFault // The DB cluster is not in a valid state. // // * DBClusterNotFoundFault // DBClusterIdentifier does not refer to an existing DB cluster. // // * SnapshotQuotaExceeded // Request would result in user exceeding the allowed number of DB snapshots. // // * InvalidDBClusterSnapshotStateFault // The supplied value is not a valid DB cluster snapshot state. // func (c *RDS) CreateDBClusterSnapshot(input *CreateDBClusterSnapshotInput) (*CreateDBClusterSnapshotOutput, error) { req, out := c.CreateDBClusterSnapshotRequest(input) err := req.Send() return out, err } const opCreateDBInstance = "CreateDBInstance" // CreateDBInstanceRequest generates a "aws/request.Request" representing the // client's request for the CreateDBInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDBInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDBInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDBInstanceRequest method. // req, resp := client.CreateDBInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) CreateDBInstanceRequest(input *CreateDBInstanceInput) (req *request.Request, output *CreateDBInstanceOutput) { op := &request.Operation{ Name: opCreateDBInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDBInstanceInput{} } req = c.newRequest(op, input, output) output = &CreateDBInstanceOutput{} req.Data = output return } // CreateDBInstance API operation for Amazon Relational Database Service. // // Creates a new DB instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation CreateDBInstance for usage and error information. // // Returned Error Codes: // * DBInstanceAlreadyExists // User already has a DB instance with the given identifier. // // * InsufficientDBInstanceCapacity // Specified DB instance class is not available in the specified Availability // Zone. // // * DBParameterGroupNotFound // DBParameterGroupName does not refer to an existing DB parameter group. // // * DBSecurityGroupNotFound // DBSecurityGroupName does not refer to an existing DB security group. // // * InstanceQuotaExceeded // Request would result in user exceeding the allowed number of DB instances. // // * StorageQuotaExceeded // Request would result in user exceeding the allowed amount of storage available // across all DB instances. // // * DBSubnetGroupNotFoundFault // DBSubnetGroupName does not refer to an existing DB subnet group. // // * DBSubnetGroupDoesNotCoverEnoughAZs // Subnets in the DB subnet group should cover at least two Availability Zones // unless there is only one Availability Zone. // // * InvalidDBClusterStateFault // The DB cluster is not in a valid state. // // * InvalidSubnet // The requested subnet is invalid, or multiple subnets were requested that // are not all in a common VPC. // // * InvalidVPCNetworkStateFault // DB subnet group does not cover all Availability Zones after it is created // because users' change. // // * ProvisionedIopsNotAvailableInAZFault // Provisioned IOPS not available in the specified Availability Zone. // // * OptionGroupNotFoundFault // The specified option group could not be found. // // * DBClusterNotFoundFault // DBClusterIdentifier does not refer to an existing DB cluster. // // * StorageTypeNotSupported // StorageType specified cannot be associated with the DB Instance. // // * AuthorizationNotFound // Specified CIDRIP or EC2 security group is not authorized for the specified // DB security group. // // RDS may not also be authorized via IAM to perform necessary actions on your // behalf. // // * KMSKeyNotAccessibleFault // Error accessing KMS key. // // * DomainNotFoundFault // Domain does not refer to an existing Active Directory Domain. // func (c *RDS) CreateDBInstance(input *CreateDBInstanceInput) (*CreateDBInstanceOutput, error) { req, out := c.CreateDBInstanceRequest(input) err := req.Send() return out, err } const opCreateDBInstanceReadReplica = "CreateDBInstanceReadReplica" // CreateDBInstanceReadReplicaRequest generates a "aws/request.Request" representing the // client's request for the CreateDBInstanceReadReplica operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDBInstanceReadReplica for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDBInstanceReadReplica method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDBInstanceReadReplicaRequest method. // req, resp := client.CreateDBInstanceReadReplicaRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) CreateDBInstanceReadReplicaRequest(input *CreateDBInstanceReadReplicaInput) (req *request.Request, output *CreateDBInstanceReadReplicaOutput) { op := &request.Operation{ Name: opCreateDBInstanceReadReplica, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDBInstanceReadReplicaInput{} } req = c.newRequest(op, input, output) output = &CreateDBInstanceReadReplicaOutput{} req.Data = output return } // CreateDBInstanceReadReplica API operation for Amazon Relational Database Service. // // Creates a DB instance for a DB instance running MySQL, MariaDB, or PostgreSQL // that acts as a Read Replica of a source DB instance. // // All Read Replica DB instances are created as Single-AZ deployments with backups // disabled. All other DB instance attributes (including DB security groups // and DB parameter groups) are inherited from the source DB instance, except // as specified below. // // The source DB instance must have backup retention enabled. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation CreateDBInstanceReadReplica for usage and error information. // // Returned Error Codes: // * DBInstanceAlreadyExists // User already has a DB instance with the given identifier. // // * InsufficientDBInstanceCapacity // Specified DB instance class is not available in the specified Availability // Zone. // // * DBParameterGroupNotFound // DBParameterGroupName does not refer to an existing DB parameter group. // // * DBSecurityGroupNotFound // DBSecurityGroupName does not refer to an existing DB security group. // // * InstanceQuotaExceeded // Request would result in user exceeding the allowed number of DB instances. // // * StorageQuotaExceeded // Request would result in user exceeding the allowed amount of storage available // across all DB instances. // // * DBInstanceNotFound // DBInstanceIdentifier does not refer to an existing DB instance. // // * InvalidDBInstanceState // The specified DB instance is not in the available state. // // * DBSubnetGroupNotFoundFault // DBSubnetGroupName does not refer to an existing DB subnet group. // // * DBSubnetGroupDoesNotCoverEnoughAZs // Subnets in the DB subnet group should cover at least two Availability Zones // unless there is only one Availability Zone. // // * InvalidSubnet // The requested subnet is invalid, or multiple subnets were requested that // are not all in a common VPC. // // * InvalidVPCNetworkStateFault // DB subnet group does not cover all Availability Zones after it is created // because users' change. // // * ProvisionedIopsNotAvailableInAZFault // Provisioned IOPS not available in the specified Availability Zone. // // * OptionGroupNotFoundFault // The specified option group could not be found. // // * DBSubnetGroupNotAllowedFault // Indicates that the DBSubnetGroup should not be specified while creating read // replicas that lie in the same region as the source instance. // // * InvalidDBSubnetGroupFault // Indicates the DBSubnetGroup does not belong to the same VPC as that of an // existing cross region read replica of the same source instance. // // * StorageTypeNotSupported // StorageType specified cannot be associated with the DB Instance. // // * KMSKeyNotAccessibleFault // Error accessing KMS key. // func (c *RDS) CreateDBInstanceReadReplica(input *CreateDBInstanceReadReplicaInput) (*CreateDBInstanceReadReplicaOutput, error) { req, out := c.CreateDBInstanceReadReplicaRequest(input) err := req.Send() return out, err } const opCreateDBParameterGroup = "CreateDBParameterGroup" // CreateDBParameterGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateDBParameterGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDBParameterGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDBParameterGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDBParameterGroupRequest method. // req, resp := client.CreateDBParameterGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) CreateDBParameterGroupRequest(input *CreateDBParameterGroupInput) (req *request.Request, output *CreateDBParameterGroupOutput) { op := &request.Operation{ Name: opCreateDBParameterGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDBParameterGroupInput{} } req = c.newRequest(op, input, output) output = &CreateDBParameterGroupOutput{} req.Data = output return } // CreateDBParameterGroup API operation for Amazon Relational Database Service. // // Creates a new DB parameter group. // // A DB parameter group is initially created with the default parameters for // the database engine used by the DB instance. To provide custom values for // any of the parameters, you must modify the group after creating it using // ModifyDBParameterGroup. Once you've created a DB parameter group, you need // to associate it with your DB instance using ModifyDBInstance. When you associate // a new DB parameter group with a running DB instance, you need to reboot the // DB instance without failover for the new DB parameter group and associated // settings to take effect. // // After you create a DB parameter group, you should wait at least 5 minutes // before creating your first DB instance that uses that DB parameter group // as the default parameter group. This allows Amazon RDS to fully complete // the create action before the parameter group is used as the default for a // new DB instance. This is especially important for parameters that are critical // when creating the default database for a DB instance, such as the character // set for the default database defined by the character_set_database parameter. // You can use the Parameter Groups option of the Amazon RDS console (https://console.aws.amazon.com/rds/) // or the DescribeDBParameters command to verify that your DB parameter group // has been created or modified. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation CreateDBParameterGroup for usage and error information. // // Returned Error Codes: // * DBParameterGroupQuotaExceeded // Request would result in user exceeding the allowed number of DB parameter // groups. // // * DBParameterGroupAlreadyExists // A DB parameter group with the same name exists. // func (c *RDS) CreateDBParameterGroup(input *CreateDBParameterGroupInput) (*CreateDBParameterGroupOutput, error) { req, out := c.CreateDBParameterGroupRequest(input) err := req.Send() return out, err } const opCreateDBSecurityGroup = "CreateDBSecurityGroup" // CreateDBSecurityGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateDBSecurityGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDBSecurityGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDBSecurityGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDBSecurityGroupRequest method. // req, resp := client.CreateDBSecurityGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) CreateDBSecurityGroupRequest(input *CreateDBSecurityGroupInput) (req *request.Request, output *CreateDBSecurityGroupOutput) { op := &request.Operation{ Name: opCreateDBSecurityGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDBSecurityGroupInput{} } req = c.newRequest(op, input, output) output = &CreateDBSecurityGroupOutput{} req.Data = output return } // CreateDBSecurityGroup API operation for Amazon Relational Database Service. // // Creates a new DB security group. DB security groups control access to a DB // instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation CreateDBSecurityGroup for usage and error information. // // Returned Error Codes: // * DBSecurityGroupAlreadyExists // A DB security group with the name specified in DBSecurityGroupName already // exists. // // * QuotaExceeded.DBSecurityGroup // Request would result in user exceeding the allowed number of DB security // groups. // // * DBSecurityGroupNotSupported // A DB security group is not allowed for this action. // func (c *RDS) CreateDBSecurityGroup(input *CreateDBSecurityGroupInput) (*CreateDBSecurityGroupOutput, error) { req, out := c.CreateDBSecurityGroupRequest(input) err := req.Send() return out, err } const opCreateDBSnapshot = "CreateDBSnapshot" // CreateDBSnapshotRequest generates a "aws/request.Request" representing the // client's request for the CreateDBSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDBSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDBSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDBSnapshotRequest method. // req, resp := client.CreateDBSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) CreateDBSnapshotRequest(input *CreateDBSnapshotInput) (req *request.Request, output *CreateDBSnapshotOutput) { op := &request.Operation{ Name: opCreateDBSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDBSnapshotInput{} } req = c.newRequest(op, input, output) output = &CreateDBSnapshotOutput{} req.Data = output return } // CreateDBSnapshot API operation for Amazon Relational Database Service. // // Creates a DBSnapshot. The source DBInstance must be in "available" state. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation CreateDBSnapshot for usage and error information. // // Returned Error Codes: // * DBSnapshotAlreadyExists // DBSnapshotIdentifier is already used by an existing snapshot. // // * InvalidDBInstanceState // The specified DB instance is not in the available state. // // * DBInstanceNotFound // DBInstanceIdentifier does not refer to an existing DB instance. // // * SnapshotQuotaExceeded // Request would result in user exceeding the allowed number of DB snapshots. // func (c *RDS) CreateDBSnapshot(input *CreateDBSnapshotInput) (*CreateDBSnapshotOutput, error) { req, out := c.CreateDBSnapshotRequest(input) err := req.Send() return out, err } const opCreateDBSubnetGroup = "CreateDBSubnetGroup" // CreateDBSubnetGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateDBSubnetGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDBSubnetGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDBSubnetGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDBSubnetGroupRequest method. // req, resp := client.CreateDBSubnetGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) CreateDBSubnetGroupRequest(input *CreateDBSubnetGroupInput) (req *request.Request, output *CreateDBSubnetGroupOutput) { op := &request.Operation{ Name: opCreateDBSubnetGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDBSubnetGroupInput{} } req = c.newRequest(op, input, output) output = &CreateDBSubnetGroupOutput{} req.Data = output return } // CreateDBSubnetGroup API operation for Amazon Relational Database Service. // // Creates a new DB subnet group. DB subnet groups must contain at least one // subnet in at least two AZs in the region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation CreateDBSubnetGroup for usage and error information. // // Returned Error Codes: // * DBSubnetGroupAlreadyExists // DBSubnetGroupName is already used by an existing DB subnet group. // // * DBSubnetGroupQuotaExceeded // Request would result in user exceeding the allowed number of DB subnet groups. // // * DBSubnetQuotaExceededFault // Request would result in user exceeding the allowed number of subnets in a // DB subnet groups. // // * DBSubnetGroupDoesNotCoverEnoughAZs // Subnets in the DB subnet group should cover at least two Availability Zones // unless there is only one Availability Zone. // // * InvalidSubnet // The requested subnet is invalid, or multiple subnets were requested that // are not all in a common VPC. // func (c *RDS) CreateDBSubnetGroup(input *CreateDBSubnetGroupInput) (*CreateDBSubnetGroupOutput, error) { req, out := c.CreateDBSubnetGroupRequest(input) err := req.Send() return out, err } const opCreateEventSubscription = "CreateEventSubscription" // CreateEventSubscriptionRequest generates a "aws/request.Request" representing the // client's request for the CreateEventSubscription operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateEventSubscription for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateEventSubscription method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateEventSubscriptionRequest method. // req, resp := client.CreateEventSubscriptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) CreateEventSubscriptionRequest(input *CreateEventSubscriptionInput) (req *request.Request, output *CreateEventSubscriptionOutput) { op := &request.Operation{ Name: opCreateEventSubscription, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateEventSubscriptionInput{} } req = c.newRequest(op, input, output) output = &CreateEventSubscriptionOutput{} req.Data = output return } // CreateEventSubscription API operation for Amazon Relational Database Service. // // Creates an RDS event notification subscription. This action requires a topic // ARN (Amazon Resource Name) created by either the RDS console, the SNS console, // or the SNS API. To obtain an ARN with SNS, you must create a topic in Amazon // SNS and subscribe to the topic. The ARN is displayed in the SNS console. // // You can specify the type of source (SourceType) you want to be notified of, // provide a list of RDS sources (SourceIds) that triggers the events, and provide // a list of event categories (EventCategories) for events you want to be notified // of. For example, you can specify SourceType = db-instance, SourceIds = mydbinstance1, // mydbinstance2 and EventCategories = Availability, Backup. // // If you specify both the SourceType and SourceIds, such as SourceType = db-instance // and SourceIdentifier = myDBInstance1, you will be notified of all the db-instance // events for the specified source. If you specify a SourceType but do not specify // a SourceIdentifier, you will receive notice of the events for that source // type for all your RDS sources. If you do not specify either the SourceType // nor the SourceIdentifier, you will be notified of events generated from all // RDS sources belonging to your customer account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation CreateEventSubscription for usage and error information. // // Returned Error Codes: // * EventSubscriptionQuotaExceeded // You have reached the maximum number of event subscriptions. // // * SubscriptionAlreadyExist // The supplied subscription name already exists. // // * SNSInvalidTopic // SNS has responded that there is a problem with the SND topic specified. // // * SNSNoAuthorization // You do not have permission to publish to the SNS topic ARN. // // * SNSTopicArnNotFound // The SNS topic ARN does not exist. // // * SubscriptionCategoryNotFound // The supplied category does not exist. // // * SourceNotFound // The requested source could not be found. // func (c *RDS) CreateEventSubscription(input *CreateEventSubscriptionInput) (*CreateEventSubscriptionOutput, error) { req, out := c.CreateEventSubscriptionRequest(input) err := req.Send() return out, err } const opCreateOptionGroup = "CreateOptionGroup" // CreateOptionGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateOptionGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateOptionGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateOptionGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateOptionGroupRequest method. // req, resp := client.CreateOptionGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) CreateOptionGroupRequest(input *CreateOptionGroupInput) (req *request.Request, output *CreateOptionGroupOutput) { op := &request.Operation{ Name: opCreateOptionGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateOptionGroupInput{} } req = c.newRequest(op, input, output) output = &CreateOptionGroupOutput{} req.Data = output return } // CreateOptionGroup API operation for Amazon Relational Database Service. // // Creates a new option group. You can create up to 20 option groups. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation CreateOptionGroup for usage and error information. // // Returned Error Codes: // * OptionGroupAlreadyExistsFault // The option group you are trying to create already exists. // // * OptionGroupQuotaExceededFault // The quota of 20 option groups was exceeded for this AWS account. // func (c *RDS) CreateOptionGroup(input *CreateOptionGroupInput) (*CreateOptionGroupOutput, error) { req, out := c.CreateOptionGroupRequest(input) err := req.Send() return out, err } const opDeleteDBCluster = "DeleteDBCluster" // DeleteDBClusterRequest generates a "aws/request.Request" representing the // client's request for the DeleteDBCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDBCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDBCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDBClusterRequest method. // req, resp := client.DeleteDBClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DeleteDBClusterRequest(input *DeleteDBClusterInput) (req *request.Request, output *DeleteDBClusterOutput) { op := &request.Operation{ Name: opDeleteDBCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDBClusterInput{} } req = c.newRequest(op, input, output) output = &DeleteDBClusterOutput{} req.Data = output return } // DeleteDBCluster API operation for Amazon Relational Database Service. // // The DeleteDBCluster action deletes a previously provisioned DB cluster. When // you delete a DB cluster, all automated backups for that DB cluster are deleted // and cannot be recovered. Manual DB cluster snapshots of the specified DB // cluster are not deleted. // // For more information on Amazon Aurora, see Aurora on Amazon RDS (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html)in the Amazon RDS User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DeleteDBCluster for usage and error information. // // Returned Error Codes: // * DBClusterNotFoundFault // DBClusterIdentifier does not refer to an existing DB cluster. // // * InvalidDBClusterStateFault // The DB cluster is not in a valid state. // // * DBClusterSnapshotAlreadyExistsFault // User already has a DB cluster snapshot with the given identifier. // // * SnapshotQuotaExceeded // Request would result in user exceeding the allowed number of DB snapshots. // // * InvalidDBClusterSnapshotStateFault // The supplied value is not a valid DB cluster snapshot state. // func (c *RDS) DeleteDBCluster(input *DeleteDBClusterInput) (*DeleteDBClusterOutput, error) { req, out := c.DeleteDBClusterRequest(input) err := req.Send() return out, err } const opDeleteDBClusterParameterGroup = "DeleteDBClusterParameterGroup" // DeleteDBClusterParameterGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteDBClusterParameterGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDBClusterParameterGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDBClusterParameterGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDBClusterParameterGroupRequest method. // req, resp := client.DeleteDBClusterParameterGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DeleteDBClusterParameterGroupRequest(input *DeleteDBClusterParameterGroupInput) (req *request.Request, output *DeleteDBClusterParameterGroupOutput) { op := &request.Operation{ Name: opDeleteDBClusterParameterGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDBClusterParameterGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteDBClusterParameterGroupOutput{} req.Data = output return } // DeleteDBClusterParameterGroup API operation for Amazon Relational Database Service. // // Deletes a specified DB cluster parameter group. The DB cluster parameter // group to be deleted cannot be associated with any DB clusters. // // For more information on Amazon Aurora, see Aurora on Amazon RDS (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html) // in the Amazon RDS User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DeleteDBClusterParameterGroup for usage and error information. // // Returned Error Codes: // * InvalidDBParameterGroupState // The DB parameter group cannot be deleted because it is in use. // // * DBParameterGroupNotFound // DBParameterGroupName does not refer to an existing DB parameter group. // func (c *RDS) DeleteDBClusterParameterGroup(input *DeleteDBClusterParameterGroupInput) (*DeleteDBClusterParameterGroupOutput, error) { req, out := c.DeleteDBClusterParameterGroupRequest(input) err := req.Send() return out, err } const opDeleteDBClusterSnapshot = "DeleteDBClusterSnapshot" // DeleteDBClusterSnapshotRequest generates a "aws/request.Request" representing the // client's request for the DeleteDBClusterSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDBClusterSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDBClusterSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDBClusterSnapshotRequest method. // req, resp := client.DeleteDBClusterSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DeleteDBClusterSnapshotRequest(input *DeleteDBClusterSnapshotInput) (req *request.Request, output *DeleteDBClusterSnapshotOutput) { op := &request.Operation{ Name: opDeleteDBClusterSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDBClusterSnapshotInput{} } req = c.newRequest(op, input, output) output = &DeleteDBClusterSnapshotOutput{} req.Data = output return } // DeleteDBClusterSnapshot API operation for Amazon Relational Database Service. // // Deletes a DB cluster snapshot. If the snapshot is being copied, the copy // operation is terminated. // // The DB cluster snapshot must be in the available state to be deleted. // // For more information on Amazon Aurora, see Aurora on Amazon RDS (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html) // in the Amazon RDS User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DeleteDBClusterSnapshot for usage and error information. // // Returned Error Codes: // * InvalidDBClusterSnapshotStateFault // The supplied value is not a valid DB cluster snapshot state. // // * DBClusterSnapshotNotFoundFault // DBClusterSnapshotIdentifier does not refer to an existing DB cluster snapshot. // func (c *RDS) DeleteDBClusterSnapshot(input *DeleteDBClusterSnapshotInput) (*DeleteDBClusterSnapshotOutput, error) { req, out := c.DeleteDBClusterSnapshotRequest(input) err := req.Send() return out, err } const opDeleteDBInstance = "DeleteDBInstance" // DeleteDBInstanceRequest generates a "aws/request.Request" representing the // client's request for the DeleteDBInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDBInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDBInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDBInstanceRequest method. // req, resp := client.DeleteDBInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DeleteDBInstanceRequest(input *DeleteDBInstanceInput) (req *request.Request, output *DeleteDBInstanceOutput) { op := &request.Operation{ Name: opDeleteDBInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDBInstanceInput{} } req = c.newRequest(op, input, output) output = &DeleteDBInstanceOutput{} req.Data = output return } // DeleteDBInstance API operation for Amazon Relational Database Service. // // The DeleteDBInstance action deletes a previously provisioned DB instance. // When you delete a DB instance, all automated backups for that instance are // deleted and cannot be recovered. Manual DB snapshots of the DB instance to // be deleted by DeleteDBInstance are not deleted. // // If you request a final DB snapshot the status of the Amazon RDS DB instance // is deleting until the DB snapshot is created. The API action DescribeDBInstance // is used to monitor the status of this operation. The action cannot be canceled // or reverted once submitted. // // Note that when a DB instance is in a failure state and has a status of failed, // incompatible-restore, or incompatible-network, you can only delete it when // the SkipFinalSnapshot parameter is set to true. // // If the specified DB instance is part of an Amazon Aurora DB cluster, you // cannot delete the DB instance if the following are true: // // * The DB cluster is a Read Replica of another Amazon Aurora DB cluster. // // * The DB instance is the only instance in the DB cluster. // // To delete a DB instance in this case, first call the PromoteReadReplicaDBCluster // API action to promote the DB cluster so it's no longer a Read Replica. After // the promotion completes, then call the DeleteDBInstance API action to delete // the final instance in the DB cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DeleteDBInstance for usage and error information. // // Returned Error Codes: // * DBInstanceNotFound // DBInstanceIdentifier does not refer to an existing DB instance. // // * InvalidDBInstanceState // The specified DB instance is not in the available state. // // * DBSnapshotAlreadyExists // DBSnapshotIdentifier is already used by an existing snapshot. // // * SnapshotQuotaExceeded // Request would result in user exceeding the allowed number of DB snapshots. // // * InvalidDBClusterStateFault // The DB cluster is not in a valid state. // func (c *RDS) DeleteDBInstance(input *DeleteDBInstanceInput) (*DeleteDBInstanceOutput, error) { req, out := c.DeleteDBInstanceRequest(input) err := req.Send() return out, err } const opDeleteDBParameterGroup = "DeleteDBParameterGroup" // DeleteDBParameterGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteDBParameterGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDBParameterGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDBParameterGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDBParameterGroupRequest method. // req, resp := client.DeleteDBParameterGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DeleteDBParameterGroupRequest(input *DeleteDBParameterGroupInput) (req *request.Request, output *DeleteDBParameterGroupOutput) { op := &request.Operation{ Name: opDeleteDBParameterGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDBParameterGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteDBParameterGroupOutput{} req.Data = output return } // DeleteDBParameterGroup API operation for Amazon Relational Database Service. // // Deletes a specified DBParameterGroup. The DBParameterGroup to be deleted // cannot be associated with any DB instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DeleteDBParameterGroup for usage and error information. // // Returned Error Codes: // * InvalidDBParameterGroupState // The DB parameter group cannot be deleted because it is in use. // // * DBParameterGroupNotFound // DBParameterGroupName does not refer to an existing DB parameter group. // func (c *RDS) DeleteDBParameterGroup(input *DeleteDBParameterGroupInput) (*DeleteDBParameterGroupOutput, error) { req, out := c.DeleteDBParameterGroupRequest(input) err := req.Send() return out, err } const opDeleteDBSecurityGroup = "DeleteDBSecurityGroup" // DeleteDBSecurityGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteDBSecurityGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDBSecurityGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDBSecurityGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDBSecurityGroupRequest method. // req, resp := client.DeleteDBSecurityGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DeleteDBSecurityGroupRequest(input *DeleteDBSecurityGroupInput) (req *request.Request, output *DeleteDBSecurityGroupOutput) { op := &request.Operation{ Name: opDeleteDBSecurityGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDBSecurityGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteDBSecurityGroupOutput{} req.Data = output return } // DeleteDBSecurityGroup API operation for Amazon Relational Database Service. // // Deletes a DB security group. // // The specified DB security group must not be associated with any DB instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DeleteDBSecurityGroup for usage and error information. // // Returned Error Codes: // * InvalidDBSecurityGroupState // The state of the DB security group does not allow deletion. // // * DBSecurityGroupNotFound // DBSecurityGroupName does not refer to an existing DB security group. // func (c *RDS) DeleteDBSecurityGroup(input *DeleteDBSecurityGroupInput) (*DeleteDBSecurityGroupOutput, error) { req, out := c.DeleteDBSecurityGroupRequest(input) err := req.Send() return out, err } const opDeleteDBSnapshot = "DeleteDBSnapshot" // DeleteDBSnapshotRequest generates a "aws/request.Request" representing the // client's request for the DeleteDBSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDBSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDBSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDBSnapshotRequest method. // req, resp := client.DeleteDBSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DeleteDBSnapshotRequest(input *DeleteDBSnapshotInput) (req *request.Request, output *DeleteDBSnapshotOutput) { op := &request.Operation{ Name: opDeleteDBSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDBSnapshotInput{} } req = c.newRequest(op, input, output) output = &DeleteDBSnapshotOutput{} req.Data = output return } // DeleteDBSnapshot API operation for Amazon Relational Database Service. // // Deletes a DBSnapshot. If the snapshot is being copied, the copy operation // is terminated. // // The DBSnapshot must be in the available state to be deleted. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DeleteDBSnapshot for usage and error information. // // Returned Error Codes: // * InvalidDBSnapshotState // The state of the DB snapshot does not allow deletion. // // * DBSnapshotNotFound // DBSnapshotIdentifier does not refer to an existing DB snapshot. // func (c *RDS) DeleteDBSnapshot(input *DeleteDBSnapshotInput) (*DeleteDBSnapshotOutput, error) { req, out := c.DeleteDBSnapshotRequest(input) err := req.Send() return out, err } const opDeleteDBSubnetGroup = "DeleteDBSubnetGroup" // DeleteDBSubnetGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteDBSubnetGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDBSubnetGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDBSubnetGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDBSubnetGroupRequest method. // req, resp := client.DeleteDBSubnetGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DeleteDBSubnetGroupRequest(input *DeleteDBSubnetGroupInput) (req *request.Request, output *DeleteDBSubnetGroupOutput) { op := &request.Operation{ Name: opDeleteDBSubnetGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDBSubnetGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteDBSubnetGroupOutput{} req.Data = output return } // DeleteDBSubnetGroup API operation for Amazon Relational Database Service. // // Deletes a DB subnet group. // // The specified database subnet group must not be associated with any DB instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DeleteDBSubnetGroup for usage and error information. // // Returned Error Codes: // * InvalidDBSubnetGroupStateFault // The DB subnet group cannot be deleted because it is in use. // // * InvalidDBSubnetStateFault // The DB subnet is not in the available state. // // * DBSubnetGroupNotFoundFault // DBSubnetGroupName does not refer to an existing DB subnet group. // func (c *RDS) DeleteDBSubnetGroup(input *DeleteDBSubnetGroupInput) (*DeleteDBSubnetGroupOutput, error) { req, out := c.DeleteDBSubnetGroupRequest(input) err := req.Send() return out, err } const opDeleteEventSubscription = "DeleteEventSubscription" // DeleteEventSubscriptionRequest generates a "aws/request.Request" representing the // client's request for the DeleteEventSubscription operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteEventSubscription for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteEventSubscription method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteEventSubscriptionRequest method. // req, resp := client.DeleteEventSubscriptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DeleteEventSubscriptionRequest(input *DeleteEventSubscriptionInput) (req *request.Request, output *DeleteEventSubscriptionOutput) { op := &request.Operation{ Name: opDeleteEventSubscription, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteEventSubscriptionInput{} } req = c.newRequest(op, input, output) output = &DeleteEventSubscriptionOutput{} req.Data = output return } // DeleteEventSubscription API operation for Amazon Relational Database Service. // // Deletes an RDS event notification subscription. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DeleteEventSubscription for usage and error information. // // Returned Error Codes: // * SubscriptionNotFound // The subscription name does not exist. // // * InvalidEventSubscriptionState // This error can occur if someone else is modifying a subscription. You should // retry the action. // func (c *RDS) DeleteEventSubscription(input *DeleteEventSubscriptionInput) (*DeleteEventSubscriptionOutput, error) { req, out := c.DeleteEventSubscriptionRequest(input) err := req.Send() return out, err } const opDeleteOptionGroup = "DeleteOptionGroup" // DeleteOptionGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteOptionGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteOptionGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteOptionGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteOptionGroupRequest method. // req, resp := client.DeleteOptionGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DeleteOptionGroupRequest(input *DeleteOptionGroupInput) (req *request.Request, output *DeleteOptionGroupOutput) { op := &request.Operation{ Name: opDeleteOptionGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteOptionGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteOptionGroupOutput{} req.Data = output return } // DeleteOptionGroup API operation for Amazon Relational Database Service. // // Deletes an existing option group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DeleteOptionGroup for usage and error information. // // Returned Error Codes: // * OptionGroupNotFoundFault // The specified option group could not be found. // // * InvalidOptionGroupStateFault // The option group is not in the available state. // func (c *RDS) DeleteOptionGroup(input *DeleteOptionGroupInput) (*DeleteOptionGroupOutput, error) { req, out := c.DeleteOptionGroupRequest(input) err := req.Send() return out, err } const opDescribeAccountAttributes = "DescribeAccountAttributes" // DescribeAccountAttributesRequest generates a "aws/request.Request" representing the // client's request for the DescribeAccountAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAccountAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAccountAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAccountAttributesRequest method. // req, resp := client.DescribeAccountAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeAccountAttributesRequest(input *DescribeAccountAttributesInput) (req *request.Request, output *DescribeAccountAttributesOutput) { op := &request.Operation{ Name: opDescribeAccountAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAccountAttributesInput{} } req = c.newRequest(op, input, output) output = &DescribeAccountAttributesOutput{} req.Data = output return } // DescribeAccountAttributes API operation for Amazon Relational Database Service. // // Lists all of the attributes for a customer account. The attributes include // Amazon RDS quotas for the account, such as the number of DB instances allowed. // The description for a quota includes the quota name, current usage toward // that quota, and the quota's maximum value. // // This command does not take any parameters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeAccountAttributes for usage and error information. func (c *RDS) DescribeAccountAttributes(input *DescribeAccountAttributesInput) (*DescribeAccountAttributesOutput, error) { req, out := c.DescribeAccountAttributesRequest(input) err := req.Send() return out, err } const opDescribeCertificates = "DescribeCertificates" // DescribeCertificatesRequest generates a "aws/request.Request" representing the // client's request for the DescribeCertificates operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCertificates for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCertificates method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeCertificatesRequest method. // req, resp := client.DescribeCertificatesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeCertificatesRequest(input *DescribeCertificatesInput) (req *request.Request, output *DescribeCertificatesOutput) { op := &request.Operation{ Name: opDescribeCertificates, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeCertificatesInput{} } req = c.newRequest(op, input, output) output = &DescribeCertificatesOutput{} req.Data = output return } // DescribeCertificates API operation for Amazon Relational Database Service. // // Lists the set of CA certificates provided by Amazon RDS for this AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeCertificates for usage and error information. // // Returned Error Codes: // * CertificateNotFound // CertificateIdentifier does not refer to an existing certificate. // func (c *RDS) DescribeCertificates(input *DescribeCertificatesInput) (*DescribeCertificatesOutput, error) { req, out := c.DescribeCertificatesRequest(input) err := req.Send() return out, err } const opDescribeDBClusterParameterGroups = "DescribeDBClusterParameterGroups" // DescribeDBClusterParameterGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeDBClusterParameterGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDBClusterParameterGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDBClusterParameterGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDBClusterParameterGroupsRequest method. // req, resp := client.DescribeDBClusterParameterGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeDBClusterParameterGroupsRequest(input *DescribeDBClusterParameterGroupsInput) (req *request.Request, output *DescribeDBClusterParameterGroupsOutput) { op := &request.Operation{ Name: opDescribeDBClusterParameterGroups, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeDBClusterParameterGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeDBClusterParameterGroupsOutput{} req.Data = output return } // DescribeDBClusterParameterGroups API operation for Amazon Relational Database Service. // // Returns a list of DBClusterParameterGroup descriptions. If a DBClusterParameterGroupName // parameter is specified, the list will contain only the description of the // specified DB cluster parameter group. // // For more information on Amazon Aurora, see Aurora on Amazon RDS (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html) // in the Amazon RDS User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeDBClusterParameterGroups for usage and error information. // // Returned Error Codes: // * DBParameterGroupNotFound // DBParameterGroupName does not refer to an existing DB parameter group. // func (c *RDS) DescribeDBClusterParameterGroups(input *DescribeDBClusterParameterGroupsInput) (*DescribeDBClusterParameterGroupsOutput, error) { req, out := c.DescribeDBClusterParameterGroupsRequest(input) err := req.Send() return out, err } const opDescribeDBClusterParameters = "DescribeDBClusterParameters" // DescribeDBClusterParametersRequest generates a "aws/request.Request" representing the // client's request for the DescribeDBClusterParameters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDBClusterParameters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDBClusterParameters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDBClusterParametersRequest method. // req, resp := client.DescribeDBClusterParametersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeDBClusterParametersRequest(input *DescribeDBClusterParametersInput) (req *request.Request, output *DescribeDBClusterParametersOutput) { op := &request.Operation{ Name: opDescribeDBClusterParameters, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeDBClusterParametersInput{} } req = c.newRequest(op, input, output) output = &DescribeDBClusterParametersOutput{} req.Data = output return } // DescribeDBClusterParameters API operation for Amazon Relational Database Service. // // Returns the detailed parameter list for a particular DB cluster parameter // group. // // For more information on Amazon Aurora, see Aurora on Amazon RDS (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html) // in the Amazon RDS User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeDBClusterParameters for usage and error information. // // Returned Error Codes: // * DBParameterGroupNotFound // DBParameterGroupName does not refer to an existing DB parameter group. // func (c *RDS) DescribeDBClusterParameters(input *DescribeDBClusterParametersInput) (*DescribeDBClusterParametersOutput, error) { req, out := c.DescribeDBClusterParametersRequest(input) err := req.Send() return out, err } const opDescribeDBClusterSnapshotAttributes = "DescribeDBClusterSnapshotAttributes" // DescribeDBClusterSnapshotAttributesRequest generates a "aws/request.Request" representing the // client's request for the DescribeDBClusterSnapshotAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDBClusterSnapshotAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDBClusterSnapshotAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDBClusterSnapshotAttributesRequest method. // req, resp := client.DescribeDBClusterSnapshotAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeDBClusterSnapshotAttributesRequest(input *DescribeDBClusterSnapshotAttributesInput) (req *request.Request, output *DescribeDBClusterSnapshotAttributesOutput) { op := &request.Operation{ Name: opDescribeDBClusterSnapshotAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeDBClusterSnapshotAttributesInput{} } req = c.newRequest(op, input, output) output = &DescribeDBClusterSnapshotAttributesOutput{} req.Data = output return } // DescribeDBClusterSnapshotAttributes API operation for Amazon Relational Database Service. // // Returns a list of DB cluster snapshot attribute names and values for a manual // DB cluster snapshot. // // When sharing snapshots with other AWS accounts, DescribeDBClusterSnapshotAttributes // returns the restore attribute and a list of IDs for the AWS accounts that // are authorized to copy or restore the manual DB cluster snapshot. If all // is included in the list of values for the restore attribute, then the manual // DB cluster snapshot is public and can be copied or restored by all AWS accounts. // // To add or remove access for an AWS account to copy or restore a manual DB // cluster snapshot, or to make the manual DB cluster snapshot public or private, // use the ModifyDBClusterSnapshotAttribute API action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeDBClusterSnapshotAttributes for usage and error information. // // Returned Error Codes: // * DBClusterSnapshotNotFoundFault // DBClusterSnapshotIdentifier does not refer to an existing DB cluster snapshot. // func (c *RDS) DescribeDBClusterSnapshotAttributes(input *DescribeDBClusterSnapshotAttributesInput) (*DescribeDBClusterSnapshotAttributesOutput, error) { req, out := c.DescribeDBClusterSnapshotAttributesRequest(input) err := req.Send() return out, err } const opDescribeDBClusterSnapshots = "DescribeDBClusterSnapshots" // DescribeDBClusterSnapshotsRequest generates a "aws/request.Request" representing the // client's request for the DescribeDBClusterSnapshots operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDBClusterSnapshots for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDBClusterSnapshots method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDBClusterSnapshotsRequest method. // req, resp := client.DescribeDBClusterSnapshotsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeDBClusterSnapshotsRequest(input *DescribeDBClusterSnapshotsInput) (req *request.Request, output *DescribeDBClusterSnapshotsOutput) { op := &request.Operation{ Name: opDescribeDBClusterSnapshots, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeDBClusterSnapshotsInput{} } req = c.newRequest(op, input, output) output = &DescribeDBClusterSnapshotsOutput{} req.Data = output return } // DescribeDBClusterSnapshots API operation for Amazon Relational Database Service. // // Returns information about DB cluster snapshots. This API action supports // pagination. // // For more information on Amazon Aurora, see Aurora on Amazon RDS (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html) // in the Amazon RDS User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeDBClusterSnapshots for usage and error information. // // Returned Error Codes: // * DBClusterSnapshotNotFoundFault // DBClusterSnapshotIdentifier does not refer to an existing DB cluster snapshot. // func (c *RDS) DescribeDBClusterSnapshots(input *DescribeDBClusterSnapshotsInput) (*DescribeDBClusterSnapshotsOutput, error) { req, out := c.DescribeDBClusterSnapshotsRequest(input) err := req.Send() return out, err } const opDescribeDBClusters = "DescribeDBClusters" // DescribeDBClustersRequest generates a "aws/request.Request" representing the // client's request for the DescribeDBClusters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDBClusters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDBClusters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDBClustersRequest method. // req, resp := client.DescribeDBClustersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeDBClustersRequest(input *DescribeDBClustersInput) (req *request.Request, output *DescribeDBClustersOutput) { op := &request.Operation{ Name: opDescribeDBClusters, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeDBClustersInput{} } req = c.newRequest(op, input, output) output = &DescribeDBClustersOutput{} req.Data = output return } // DescribeDBClusters API operation for Amazon Relational Database Service. // // Returns information about provisioned Aurora DB clusters. This API supports // pagination. // // For more information on Amazon Aurora, see Aurora on Amazon RDS (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html) // in the Amazon RDS User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeDBClusters for usage and error information. // // Returned Error Codes: // * DBClusterNotFoundFault // DBClusterIdentifier does not refer to an existing DB cluster. // func (c *RDS) DescribeDBClusters(input *DescribeDBClustersInput) (*DescribeDBClustersOutput, error) { req, out := c.DescribeDBClustersRequest(input) err := req.Send() return out, err } const opDescribeDBEngineVersions = "DescribeDBEngineVersions" // DescribeDBEngineVersionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeDBEngineVersions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDBEngineVersions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDBEngineVersions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDBEngineVersionsRequest method. // req, resp := client.DescribeDBEngineVersionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeDBEngineVersionsRequest(input *DescribeDBEngineVersionsInput) (req *request.Request, output *DescribeDBEngineVersionsOutput) { op := &request.Operation{ Name: opDescribeDBEngineVersions, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeDBEngineVersionsInput{} } req = c.newRequest(op, input, output) output = &DescribeDBEngineVersionsOutput{} req.Data = output return } // DescribeDBEngineVersions API operation for Amazon Relational Database Service. // // Returns a list of the available DB engines. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeDBEngineVersions for usage and error information. func (c *RDS) DescribeDBEngineVersions(input *DescribeDBEngineVersionsInput) (*DescribeDBEngineVersionsOutput, error) { req, out := c.DescribeDBEngineVersionsRequest(input) err := req.Send() return out, err } // DescribeDBEngineVersionsPages iterates over the pages of a DescribeDBEngineVersions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeDBEngineVersions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeDBEngineVersions operation. // pageNum := 0 // err := client.DescribeDBEngineVersionsPages(params, // func(page *DescribeDBEngineVersionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *RDS) DescribeDBEngineVersionsPages(input *DescribeDBEngineVersionsInput, fn func(p *DescribeDBEngineVersionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeDBEngineVersionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeDBEngineVersionsOutput), lastPage) }) } const opDescribeDBInstances = "DescribeDBInstances" // DescribeDBInstancesRequest generates a "aws/request.Request" representing the // client's request for the DescribeDBInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDBInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDBInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDBInstancesRequest method. // req, resp := client.DescribeDBInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeDBInstancesRequest(input *DescribeDBInstancesInput) (req *request.Request, output *DescribeDBInstancesOutput) { op := &request.Operation{ Name: opDescribeDBInstances, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeDBInstancesInput{} } req = c.newRequest(op, input, output) output = &DescribeDBInstancesOutput{} req.Data = output return } // DescribeDBInstances API operation for Amazon Relational Database Service. // // Returns information about provisioned RDS instances. This API supports pagination. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeDBInstances for usage and error information. // // Returned Error Codes: // * DBInstanceNotFound // DBInstanceIdentifier does not refer to an existing DB instance. // func (c *RDS) DescribeDBInstances(input *DescribeDBInstancesInput) (*DescribeDBInstancesOutput, error) { req, out := c.DescribeDBInstancesRequest(input) err := req.Send() return out, err } // DescribeDBInstancesPages iterates over the pages of a DescribeDBInstances operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeDBInstances method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeDBInstances operation. // pageNum := 0 // err := client.DescribeDBInstancesPages(params, // func(page *DescribeDBInstancesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *RDS) DescribeDBInstancesPages(input *DescribeDBInstancesInput, fn func(p *DescribeDBInstancesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeDBInstancesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeDBInstancesOutput), lastPage) }) } const opDescribeDBLogFiles = "DescribeDBLogFiles" // DescribeDBLogFilesRequest generates a "aws/request.Request" representing the // client's request for the DescribeDBLogFiles operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDBLogFiles for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDBLogFiles method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDBLogFilesRequest method. // req, resp := client.DescribeDBLogFilesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeDBLogFilesRequest(input *DescribeDBLogFilesInput) (req *request.Request, output *DescribeDBLogFilesOutput) { op := &request.Operation{ Name: opDescribeDBLogFiles, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeDBLogFilesInput{} } req = c.newRequest(op, input, output) output = &DescribeDBLogFilesOutput{} req.Data = output return } // DescribeDBLogFiles API operation for Amazon Relational Database Service. // // Returns a list of DB log files for the DB instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeDBLogFiles for usage and error information. // // Returned Error Codes: // * DBInstanceNotFound // DBInstanceIdentifier does not refer to an existing DB instance. // func (c *RDS) DescribeDBLogFiles(input *DescribeDBLogFilesInput) (*DescribeDBLogFilesOutput, error) { req, out := c.DescribeDBLogFilesRequest(input) err := req.Send() return out, err } // DescribeDBLogFilesPages iterates over the pages of a DescribeDBLogFiles operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeDBLogFiles method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeDBLogFiles operation. // pageNum := 0 // err := client.DescribeDBLogFilesPages(params, // func(page *DescribeDBLogFilesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *RDS) DescribeDBLogFilesPages(input *DescribeDBLogFilesInput, fn func(p *DescribeDBLogFilesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeDBLogFilesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeDBLogFilesOutput), lastPage) }) } const opDescribeDBParameterGroups = "DescribeDBParameterGroups" // DescribeDBParameterGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeDBParameterGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDBParameterGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDBParameterGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDBParameterGroupsRequest method. // req, resp := client.DescribeDBParameterGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeDBParameterGroupsRequest(input *DescribeDBParameterGroupsInput) (req *request.Request, output *DescribeDBParameterGroupsOutput) { op := &request.Operation{ Name: opDescribeDBParameterGroups, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeDBParameterGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeDBParameterGroupsOutput{} req.Data = output return } // DescribeDBParameterGroups API operation for Amazon Relational Database Service. // // Returns a list of DBParameterGroup descriptions. If a DBParameterGroupName // is specified, the list will contain only the description of the specified // DB parameter group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeDBParameterGroups for usage and error information. // // Returned Error Codes: // * DBParameterGroupNotFound // DBParameterGroupName does not refer to an existing DB parameter group. // func (c *RDS) DescribeDBParameterGroups(input *DescribeDBParameterGroupsInput) (*DescribeDBParameterGroupsOutput, error) { req, out := c.DescribeDBParameterGroupsRequest(input) err := req.Send() return out, err } // DescribeDBParameterGroupsPages iterates over the pages of a DescribeDBParameterGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeDBParameterGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeDBParameterGroups operation. // pageNum := 0 // err := client.DescribeDBParameterGroupsPages(params, // func(page *DescribeDBParameterGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *RDS) DescribeDBParameterGroupsPages(input *DescribeDBParameterGroupsInput, fn func(p *DescribeDBParameterGroupsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeDBParameterGroupsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeDBParameterGroupsOutput), lastPage) }) } const opDescribeDBParameters = "DescribeDBParameters" // DescribeDBParametersRequest generates a "aws/request.Request" representing the // client's request for the DescribeDBParameters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDBParameters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDBParameters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDBParametersRequest method. // req, resp := client.DescribeDBParametersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeDBParametersRequest(input *DescribeDBParametersInput) (req *request.Request, output *DescribeDBParametersOutput) { op := &request.Operation{ Name: opDescribeDBParameters, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeDBParametersInput{} } req = c.newRequest(op, input, output) output = &DescribeDBParametersOutput{} req.Data = output return } // DescribeDBParameters API operation for Amazon Relational Database Service. // // Returns the detailed parameter list for a particular DB parameter group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeDBParameters for usage and error information. // // Returned Error Codes: // * DBParameterGroupNotFound // DBParameterGroupName does not refer to an existing DB parameter group. // func (c *RDS) DescribeDBParameters(input *DescribeDBParametersInput) (*DescribeDBParametersOutput, error) { req, out := c.DescribeDBParametersRequest(input) err := req.Send() return out, err } // DescribeDBParametersPages iterates over the pages of a DescribeDBParameters operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeDBParameters method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeDBParameters operation. // pageNum := 0 // err := client.DescribeDBParametersPages(params, // func(page *DescribeDBParametersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *RDS) DescribeDBParametersPages(input *DescribeDBParametersInput, fn func(p *DescribeDBParametersOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeDBParametersRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeDBParametersOutput), lastPage) }) } const opDescribeDBSecurityGroups = "DescribeDBSecurityGroups" // DescribeDBSecurityGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeDBSecurityGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDBSecurityGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDBSecurityGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDBSecurityGroupsRequest method. // req, resp := client.DescribeDBSecurityGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeDBSecurityGroupsRequest(input *DescribeDBSecurityGroupsInput) (req *request.Request, output *DescribeDBSecurityGroupsOutput) { op := &request.Operation{ Name: opDescribeDBSecurityGroups, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeDBSecurityGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeDBSecurityGroupsOutput{} req.Data = output return } // DescribeDBSecurityGroups API operation for Amazon Relational Database Service. // // Returns a list of DBSecurityGroup descriptions. If a DBSecurityGroupName // is specified, the list will contain only the descriptions of the specified // DB security group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeDBSecurityGroups for usage and error information. // // Returned Error Codes: // * DBSecurityGroupNotFound // DBSecurityGroupName does not refer to an existing DB security group. // func (c *RDS) DescribeDBSecurityGroups(input *DescribeDBSecurityGroupsInput) (*DescribeDBSecurityGroupsOutput, error) { req, out := c.DescribeDBSecurityGroupsRequest(input) err := req.Send() return out, err } // DescribeDBSecurityGroupsPages iterates over the pages of a DescribeDBSecurityGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeDBSecurityGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeDBSecurityGroups operation. // pageNum := 0 // err := client.DescribeDBSecurityGroupsPages(params, // func(page *DescribeDBSecurityGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *RDS) DescribeDBSecurityGroupsPages(input *DescribeDBSecurityGroupsInput, fn func(p *DescribeDBSecurityGroupsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeDBSecurityGroupsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeDBSecurityGroupsOutput), lastPage) }) } const opDescribeDBSnapshotAttributes = "DescribeDBSnapshotAttributes" // DescribeDBSnapshotAttributesRequest generates a "aws/request.Request" representing the // client's request for the DescribeDBSnapshotAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDBSnapshotAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDBSnapshotAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDBSnapshotAttributesRequest method. // req, resp := client.DescribeDBSnapshotAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeDBSnapshotAttributesRequest(input *DescribeDBSnapshotAttributesInput) (req *request.Request, output *DescribeDBSnapshotAttributesOutput) { op := &request.Operation{ Name: opDescribeDBSnapshotAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeDBSnapshotAttributesInput{} } req = c.newRequest(op, input, output) output = &DescribeDBSnapshotAttributesOutput{} req.Data = output return } // DescribeDBSnapshotAttributes API operation for Amazon Relational Database Service. // // Returns a list of DB snapshot attribute names and values for a manual DB // snapshot. // // When sharing snapshots with other AWS accounts, DescribeDBSnapshotAttributes // returns the restore attribute and a list of IDs for the AWS accounts that // are authorized to copy or restore the manual DB snapshot. If all is included // in the list of values for the restore attribute, then the manual DB snapshot // is public and can be copied or restored by all AWS accounts. // // To add or remove access for an AWS account to copy or restore a manual DB // snapshot, or to make the manual DB snapshot public or private, use the ModifyDBSnapshotAttribute // API action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeDBSnapshotAttributes for usage and error information. // // Returned Error Codes: // * DBSnapshotNotFound // DBSnapshotIdentifier does not refer to an existing DB snapshot. // func (c *RDS) DescribeDBSnapshotAttributes(input *DescribeDBSnapshotAttributesInput) (*DescribeDBSnapshotAttributesOutput, error) { req, out := c.DescribeDBSnapshotAttributesRequest(input) err := req.Send() return out, err } const opDescribeDBSnapshots = "DescribeDBSnapshots" // DescribeDBSnapshotsRequest generates a "aws/request.Request" representing the // client's request for the DescribeDBSnapshots operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDBSnapshots for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDBSnapshots method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDBSnapshotsRequest method. // req, resp := client.DescribeDBSnapshotsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeDBSnapshotsRequest(input *DescribeDBSnapshotsInput) (req *request.Request, output *DescribeDBSnapshotsOutput) { op := &request.Operation{ Name: opDescribeDBSnapshots, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeDBSnapshotsInput{} } req = c.newRequest(op, input, output) output = &DescribeDBSnapshotsOutput{} req.Data = output return } // DescribeDBSnapshots API operation for Amazon Relational Database Service. // // Returns information about DB snapshots. This API action supports pagination. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeDBSnapshots for usage and error information. // // Returned Error Codes: // * DBSnapshotNotFound // DBSnapshotIdentifier does not refer to an existing DB snapshot. // func (c *RDS) DescribeDBSnapshots(input *DescribeDBSnapshotsInput) (*DescribeDBSnapshotsOutput, error) { req, out := c.DescribeDBSnapshotsRequest(input) err := req.Send() return out, err } // DescribeDBSnapshotsPages iterates over the pages of a DescribeDBSnapshots operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeDBSnapshots method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeDBSnapshots operation. // pageNum := 0 // err := client.DescribeDBSnapshotsPages(params, // func(page *DescribeDBSnapshotsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *RDS) DescribeDBSnapshotsPages(input *DescribeDBSnapshotsInput, fn func(p *DescribeDBSnapshotsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeDBSnapshotsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeDBSnapshotsOutput), lastPage) }) } const opDescribeDBSubnetGroups = "DescribeDBSubnetGroups" // DescribeDBSubnetGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeDBSubnetGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDBSubnetGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDBSubnetGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDBSubnetGroupsRequest method. // req, resp := client.DescribeDBSubnetGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeDBSubnetGroupsRequest(input *DescribeDBSubnetGroupsInput) (req *request.Request, output *DescribeDBSubnetGroupsOutput) { op := &request.Operation{ Name: opDescribeDBSubnetGroups, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeDBSubnetGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeDBSubnetGroupsOutput{} req.Data = output return } // DescribeDBSubnetGroups API operation for Amazon Relational Database Service. // // Returns a list of DBSubnetGroup descriptions. If a DBSubnetGroupName is specified, // the list will contain only the descriptions of the specified DBSubnetGroup. // // For an overview of CIDR ranges, go to the Wikipedia Tutorial (http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeDBSubnetGroups for usage and error information. // // Returned Error Codes: // * DBSubnetGroupNotFoundFault // DBSubnetGroupName does not refer to an existing DB subnet group. // func (c *RDS) DescribeDBSubnetGroups(input *DescribeDBSubnetGroupsInput) (*DescribeDBSubnetGroupsOutput, error) { req, out := c.DescribeDBSubnetGroupsRequest(input) err := req.Send() return out, err } // DescribeDBSubnetGroupsPages iterates over the pages of a DescribeDBSubnetGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeDBSubnetGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeDBSubnetGroups operation. // pageNum := 0 // err := client.DescribeDBSubnetGroupsPages(params, // func(page *DescribeDBSubnetGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *RDS) DescribeDBSubnetGroupsPages(input *DescribeDBSubnetGroupsInput, fn func(p *DescribeDBSubnetGroupsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeDBSubnetGroupsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeDBSubnetGroupsOutput), lastPage) }) } const opDescribeEngineDefaultClusterParameters = "DescribeEngineDefaultClusterParameters" // DescribeEngineDefaultClusterParametersRequest generates a "aws/request.Request" representing the // client's request for the DescribeEngineDefaultClusterParameters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEngineDefaultClusterParameters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEngineDefaultClusterParameters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEngineDefaultClusterParametersRequest method. // req, resp := client.DescribeEngineDefaultClusterParametersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeEngineDefaultClusterParametersRequest(input *DescribeEngineDefaultClusterParametersInput) (req *request.Request, output *DescribeEngineDefaultClusterParametersOutput) { op := &request.Operation{ Name: opDescribeEngineDefaultClusterParameters, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeEngineDefaultClusterParametersInput{} } req = c.newRequest(op, input, output) output = &DescribeEngineDefaultClusterParametersOutput{} req.Data = output return } // DescribeEngineDefaultClusterParameters API operation for Amazon Relational Database Service. // // Returns the default engine and system parameter information for the cluster // database engine. // // For more information on Amazon Aurora, see Aurora on Amazon RDS (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html) // in the Amazon RDS User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeEngineDefaultClusterParameters for usage and error information. func (c *RDS) DescribeEngineDefaultClusterParameters(input *DescribeEngineDefaultClusterParametersInput) (*DescribeEngineDefaultClusterParametersOutput, error) { req, out := c.DescribeEngineDefaultClusterParametersRequest(input) err := req.Send() return out, err } const opDescribeEngineDefaultParameters = "DescribeEngineDefaultParameters" // DescribeEngineDefaultParametersRequest generates a "aws/request.Request" representing the // client's request for the DescribeEngineDefaultParameters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEngineDefaultParameters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEngineDefaultParameters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEngineDefaultParametersRequest method. // req, resp := client.DescribeEngineDefaultParametersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeEngineDefaultParametersRequest(input *DescribeEngineDefaultParametersInput) (req *request.Request, output *DescribeEngineDefaultParametersOutput) { op := &request.Operation{ Name: opDescribeEngineDefaultParameters, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"EngineDefaults.Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeEngineDefaultParametersInput{} } req = c.newRequest(op, input, output) output = &DescribeEngineDefaultParametersOutput{} req.Data = output return } // DescribeEngineDefaultParameters API operation for Amazon Relational Database Service. // // Returns the default engine and system parameter information for the specified // database engine. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeEngineDefaultParameters for usage and error information. func (c *RDS) DescribeEngineDefaultParameters(input *DescribeEngineDefaultParametersInput) (*DescribeEngineDefaultParametersOutput, error) { req, out := c.DescribeEngineDefaultParametersRequest(input) err := req.Send() return out, err } // DescribeEngineDefaultParametersPages iterates over the pages of a DescribeEngineDefaultParameters operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeEngineDefaultParameters method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeEngineDefaultParameters operation. // pageNum := 0 // err := client.DescribeEngineDefaultParametersPages(params, // func(page *DescribeEngineDefaultParametersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *RDS) DescribeEngineDefaultParametersPages(input *DescribeEngineDefaultParametersInput, fn func(p *DescribeEngineDefaultParametersOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeEngineDefaultParametersRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeEngineDefaultParametersOutput), lastPage) }) } const opDescribeEventCategories = "DescribeEventCategories" // DescribeEventCategoriesRequest generates a "aws/request.Request" representing the // client's request for the DescribeEventCategories operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEventCategories for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEventCategories method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEventCategoriesRequest method. // req, resp := client.DescribeEventCategoriesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeEventCategoriesRequest(input *DescribeEventCategoriesInput) (req *request.Request, output *DescribeEventCategoriesOutput) { op := &request.Operation{ Name: opDescribeEventCategories, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeEventCategoriesInput{} } req = c.newRequest(op, input, output) output = &DescribeEventCategoriesOutput{} req.Data = output return } // DescribeEventCategories API operation for Amazon Relational Database Service. // // Displays a list of categories for all event source types, or, if specified, // for a specified source type. You can see a list of the event categories and // source types in the Events (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html) // topic in the Amazon RDS User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeEventCategories for usage and error information. func (c *RDS) DescribeEventCategories(input *DescribeEventCategoriesInput) (*DescribeEventCategoriesOutput, error) { req, out := c.DescribeEventCategoriesRequest(input) err := req.Send() return out, err } const opDescribeEventSubscriptions = "DescribeEventSubscriptions" // DescribeEventSubscriptionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeEventSubscriptions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEventSubscriptions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEventSubscriptions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEventSubscriptionsRequest method. // req, resp := client.DescribeEventSubscriptionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeEventSubscriptionsRequest(input *DescribeEventSubscriptionsInput) (req *request.Request, output *DescribeEventSubscriptionsOutput) { op := &request.Operation{ Name: opDescribeEventSubscriptions, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeEventSubscriptionsInput{} } req = c.newRequest(op, input, output) output = &DescribeEventSubscriptionsOutput{} req.Data = output return } // DescribeEventSubscriptions API operation for Amazon Relational Database Service. // // Lists all the subscription descriptions for a customer account. The description // for a subscription includes SubscriptionName, SNSTopicARN, CustomerID, SourceType, // SourceID, CreationTime, and Status. // // If you specify a SubscriptionName, lists the description for that subscription. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeEventSubscriptions for usage and error information. // // Returned Error Codes: // * SubscriptionNotFound // The subscription name does not exist. // func (c *RDS) DescribeEventSubscriptions(input *DescribeEventSubscriptionsInput) (*DescribeEventSubscriptionsOutput, error) { req, out := c.DescribeEventSubscriptionsRequest(input) err := req.Send() return out, err } // DescribeEventSubscriptionsPages iterates over the pages of a DescribeEventSubscriptions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeEventSubscriptions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeEventSubscriptions operation. // pageNum := 0 // err := client.DescribeEventSubscriptionsPages(params, // func(page *DescribeEventSubscriptionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *RDS) DescribeEventSubscriptionsPages(input *DescribeEventSubscriptionsInput, fn func(p *DescribeEventSubscriptionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeEventSubscriptionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeEventSubscriptionsOutput), lastPage) }) } const opDescribeEvents = "DescribeEvents" // DescribeEventsRequest generates a "aws/request.Request" representing the // client's request for the DescribeEvents operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEvents for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEvents method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEventsRequest method. // req, resp := client.DescribeEventsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeEventsRequest(input *DescribeEventsInput) (req *request.Request, output *DescribeEventsOutput) { op := &request.Operation{ Name: opDescribeEvents, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeEventsInput{} } req = c.newRequest(op, input, output) output = &DescribeEventsOutput{} req.Data = output return } // DescribeEvents API operation for Amazon Relational Database Service. // // Returns events related to DB instances, DB security groups, DB snapshots, // and DB parameter groups for the past 14 days. Events specific to a particular // DB instance, DB security group, database snapshot, or DB parameter group // can be obtained by providing the name as a parameter. By default, the past // hour of events are returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeEvents for usage and error information. func (c *RDS) DescribeEvents(input *DescribeEventsInput) (*DescribeEventsOutput, error) { req, out := c.DescribeEventsRequest(input) err := req.Send() return out, err } // DescribeEventsPages iterates over the pages of a DescribeEvents operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeEvents method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeEvents operation. // pageNum := 0 // err := client.DescribeEventsPages(params, // func(page *DescribeEventsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *RDS) DescribeEventsPages(input *DescribeEventsInput, fn func(p *DescribeEventsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeEventsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeEventsOutput), lastPage) }) } const opDescribeOptionGroupOptions = "DescribeOptionGroupOptions" // DescribeOptionGroupOptionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeOptionGroupOptions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeOptionGroupOptions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeOptionGroupOptions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeOptionGroupOptionsRequest method. // req, resp := client.DescribeOptionGroupOptionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeOptionGroupOptionsRequest(input *DescribeOptionGroupOptionsInput) (req *request.Request, output *DescribeOptionGroupOptionsOutput) { op := &request.Operation{ Name: opDescribeOptionGroupOptions, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeOptionGroupOptionsInput{} } req = c.newRequest(op, input, output) output = &DescribeOptionGroupOptionsOutput{} req.Data = output return } // DescribeOptionGroupOptions API operation for Amazon Relational Database Service. // // Describes all available options. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeOptionGroupOptions for usage and error information. func (c *RDS) DescribeOptionGroupOptions(input *DescribeOptionGroupOptionsInput) (*DescribeOptionGroupOptionsOutput, error) { req, out := c.DescribeOptionGroupOptionsRequest(input) err := req.Send() return out, err } // DescribeOptionGroupOptionsPages iterates over the pages of a DescribeOptionGroupOptions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeOptionGroupOptions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeOptionGroupOptions operation. // pageNum := 0 // err := client.DescribeOptionGroupOptionsPages(params, // func(page *DescribeOptionGroupOptionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *RDS) DescribeOptionGroupOptionsPages(input *DescribeOptionGroupOptionsInput, fn func(p *DescribeOptionGroupOptionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeOptionGroupOptionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeOptionGroupOptionsOutput), lastPage) }) } const opDescribeOptionGroups = "DescribeOptionGroups" // DescribeOptionGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeOptionGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeOptionGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeOptionGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeOptionGroupsRequest method. // req, resp := client.DescribeOptionGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeOptionGroupsRequest(input *DescribeOptionGroupsInput) (req *request.Request, output *DescribeOptionGroupsOutput) { op := &request.Operation{ Name: opDescribeOptionGroups, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeOptionGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeOptionGroupsOutput{} req.Data = output return } // DescribeOptionGroups API operation for Amazon Relational Database Service. // // Describes the available option groups. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeOptionGroups for usage and error information. // // Returned Error Codes: // * OptionGroupNotFoundFault // The specified option group could not be found. // func (c *RDS) DescribeOptionGroups(input *DescribeOptionGroupsInput) (*DescribeOptionGroupsOutput, error) { req, out := c.DescribeOptionGroupsRequest(input) err := req.Send() return out, err } // DescribeOptionGroupsPages iterates over the pages of a DescribeOptionGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeOptionGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeOptionGroups operation. // pageNum := 0 // err := client.DescribeOptionGroupsPages(params, // func(page *DescribeOptionGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *RDS) DescribeOptionGroupsPages(input *DescribeOptionGroupsInput, fn func(p *DescribeOptionGroupsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeOptionGroupsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeOptionGroupsOutput), lastPage) }) } const opDescribeOrderableDBInstanceOptions = "DescribeOrderableDBInstanceOptions" // DescribeOrderableDBInstanceOptionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeOrderableDBInstanceOptions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeOrderableDBInstanceOptions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeOrderableDBInstanceOptions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeOrderableDBInstanceOptionsRequest method. // req, resp := client.DescribeOrderableDBInstanceOptionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeOrderableDBInstanceOptionsRequest(input *DescribeOrderableDBInstanceOptionsInput) (req *request.Request, output *DescribeOrderableDBInstanceOptionsOutput) { op := &request.Operation{ Name: opDescribeOrderableDBInstanceOptions, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeOrderableDBInstanceOptionsInput{} } req = c.newRequest(op, input, output) output = &DescribeOrderableDBInstanceOptionsOutput{} req.Data = output return } // DescribeOrderableDBInstanceOptions API operation for Amazon Relational Database Service. // // Returns a list of orderable DB instance options for the specified engine. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeOrderableDBInstanceOptions for usage and error information. func (c *RDS) DescribeOrderableDBInstanceOptions(input *DescribeOrderableDBInstanceOptionsInput) (*DescribeOrderableDBInstanceOptionsOutput, error) { req, out := c.DescribeOrderableDBInstanceOptionsRequest(input) err := req.Send() return out, err } // DescribeOrderableDBInstanceOptionsPages iterates over the pages of a DescribeOrderableDBInstanceOptions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeOrderableDBInstanceOptions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeOrderableDBInstanceOptions operation. // pageNum := 0 // err := client.DescribeOrderableDBInstanceOptionsPages(params, // func(page *DescribeOrderableDBInstanceOptionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *RDS) DescribeOrderableDBInstanceOptionsPages(input *DescribeOrderableDBInstanceOptionsInput, fn func(p *DescribeOrderableDBInstanceOptionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeOrderableDBInstanceOptionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeOrderableDBInstanceOptionsOutput), lastPage) }) } const opDescribePendingMaintenanceActions = "DescribePendingMaintenanceActions" // DescribePendingMaintenanceActionsRequest generates a "aws/request.Request" representing the // client's request for the DescribePendingMaintenanceActions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribePendingMaintenanceActions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribePendingMaintenanceActions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribePendingMaintenanceActionsRequest method. // req, resp := client.DescribePendingMaintenanceActionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribePendingMaintenanceActionsRequest(input *DescribePendingMaintenanceActionsInput) (req *request.Request, output *DescribePendingMaintenanceActionsOutput) { op := &request.Operation{ Name: opDescribePendingMaintenanceActions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribePendingMaintenanceActionsInput{} } req = c.newRequest(op, input, output) output = &DescribePendingMaintenanceActionsOutput{} req.Data = output return } // DescribePendingMaintenanceActions API operation for Amazon Relational Database Service. // // Returns a list of resources (for example, DB instances) that have at least // one pending maintenance action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribePendingMaintenanceActions for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The specified resource ID was not found. // func (c *RDS) DescribePendingMaintenanceActions(input *DescribePendingMaintenanceActionsInput) (*DescribePendingMaintenanceActionsOutput, error) { req, out := c.DescribePendingMaintenanceActionsRequest(input) err := req.Send() return out, err } const opDescribeReservedDBInstances = "DescribeReservedDBInstances" // DescribeReservedDBInstancesRequest generates a "aws/request.Request" representing the // client's request for the DescribeReservedDBInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeReservedDBInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeReservedDBInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeReservedDBInstancesRequest method. // req, resp := client.DescribeReservedDBInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeReservedDBInstancesRequest(input *DescribeReservedDBInstancesInput) (req *request.Request, output *DescribeReservedDBInstancesOutput) { op := &request.Operation{ Name: opDescribeReservedDBInstances, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeReservedDBInstancesInput{} } req = c.newRequest(op, input, output) output = &DescribeReservedDBInstancesOutput{} req.Data = output return } // DescribeReservedDBInstances API operation for Amazon Relational Database Service. // // Returns information about reserved DB instances for this account, or about // a specified reserved DB instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeReservedDBInstances for usage and error information. // // Returned Error Codes: // * ReservedDBInstanceNotFound // The specified reserved DB Instance not found. // func (c *RDS) DescribeReservedDBInstances(input *DescribeReservedDBInstancesInput) (*DescribeReservedDBInstancesOutput, error) { req, out := c.DescribeReservedDBInstancesRequest(input) err := req.Send() return out, err } // DescribeReservedDBInstancesPages iterates over the pages of a DescribeReservedDBInstances operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeReservedDBInstances method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeReservedDBInstances operation. // pageNum := 0 // err := client.DescribeReservedDBInstancesPages(params, // func(page *DescribeReservedDBInstancesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *RDS) DescribeReservedDBInstancesPages(input *DescribeReservedDBInstancesInput, fn func(p *DescribeReservedDBInstancesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeReservedDBInstancesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeReservedDBInstancesOutput), lastPage) }) } const opDescribeReservedDBInstancesOfferings = "DescribeReservedDBInstancesOfferings" // DescribeReservedDBInstancesOfferingsRequest generates a "aws/request.Request" representing the // client's request for the DescribeReservedDBInstancesOfferings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeReservedDBInstancesOfferings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeReservedDBInstancesOfferings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeReservedDBInstancesOfferingsRequest method. // req, resp := client.DescribeReservedDBInstancesOfferingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeReservedDBInstancesOfferingsRequest(input *DescribeReservedDBInstancesOfferingsInput) (req *request.Request, output *DescribeReservedDBInstancesOfferingsOutput) { op := &request.Operation{ Name: opDescribeReservedDBInstancesOfferings, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeReservedDBInstancesOfferingsInput{} } req = c.newRequest(op, input, output) output = &DescribeReservedDBInstancesOfferingsOutput{} req.Data = output return } // DescribeReservedDBInstancesOfferings API operation for Amazon Relational Database Service. // // Lists available reserved DB instance offerings. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeReservedDBInstancesOfferings for usage and error information. // // Returned Error Codes: // * ReservedDBInstancesOfferingNotFound // Specified offering does not exist. // func (c *RDS) DescribeReservedDBInstancesOfferings(input *DescribeReservedDBInstancesOfferingsInput) (*DescribeReservedDBInstancesOfferingsOutput, error) { req, out := c.DescribeReservedDBInstancesOfferingsRequest(input) err := req.Send() return out, err } // DescribeReservedDBInstancesOfferingsPages iterates over the pages of a DescribeReservedDBInstancesOfferings operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeReservedDBInstancesOfferings method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeReservedDBInstancesOfferings operation. // pageNum := 0 // err := client.DescribeReservedDBInstancesOfferingsPages(params, // func(page *DescribeReservedDBInstancesOfferingsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *RDS) DescribeReservedDBInstancesOfferingsPages(input *DescribeReservedDBInstancesOfferingsInput, fn func(p *DescribeReservedDBInstancesOfferingsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeReservedDBInstancesOfferingsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeReservedDBInstancesOfferingsOutput), lastPage) }) } const opDescribeSourceRegions = "DescribeSourceRegions" // DescribeSourceRegionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeSourceRegions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSourceRegions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSourceRegions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSourceRegionsRequest method. // req, resp := client.DescribeSourceRegionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DescribeSourceRegionsRequest(input *DescribeSourceRegionsInput) (req *request.Request, output *DescribeSourceRegionsOutput) { op := &request.Operation{ Name: opDescribeSourceRegions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSourceRegionsInput{} } req = c.newRequest(op, input, output) output = &DescribeSourceRegionsOutput{} req.Data = output return } // DescribeSourceRegions API operation for Amazon Relational Database Service. // // Returns a list of the source AWS regions where the current AWS region can // create a Read Replica or copy a DB snapshot from. This API action supports // pagination. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DescribeSourceRegions for usage and error information. func (c *RDS) DescribeSourceRegions(input *DescribeSourceRegionsInput) (*DescribeSourceRegionsOutput, error) { req, out := c.DescribeSourceRegionsRequest(input) err := req.Send() return out, err } const opDownloadDBLogFilePortion = "DownloadDBLogFilePortion" // DownloadDBLogFilePortionRequest generates a "aws/request.Request" representing the // client's request for the DownloadDBLogFilePortion operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DownloadDBLogFilePortion for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DownloadDBLogFilePortion method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DownloadDBLogFilePortionRequest method. // req, resp := client.DownloadDBLogFilePortionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) DownloadDBLogFilePortionRequest(input *DownloadDBLogFilePortionInput) (req *request.Request, output *DownloadDBLogFilePortionOutput) { op := &request.Operation{ Name: opDownloadDBLogFilePortion, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "NumberOfLines", TruncationToken: "AdditionalDataPending", }, } if input == nil { input = &DownloadDBLogFilePortionInput{} } req = c.newRequest(op, input, output) output = &DownloadDBLogFilePortionOutput{} req.Data = output return } // DownloadDBLogFilePortion API operation for Amazon Relational Database Service. // // Downloads all or a portion of the specified log file, up to 1 MB in size. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation DownloadDBLogFilePortion for usage and error information. // // Returned Error Codes: // * DBInstanceNotFound // DBInstanceIdentifier does not refer to an existing DB instance. // // * DBLogFileNotFoundFault // LogFileName does not refer to an existing DB log file. // func (c *RDS) DownloadDBLogFilePortion(input *DownloadDBLogFilePortionInput) (*DownloadDBLogFilePortionOutput, error) { req, out := c.DownloadDBLogFilePortionRequest(input) err := req.Send() return out, err } // DownloadDBLogFilePortionPages iterates over the pages of a DownloadDBLogFilePortion operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DownloadDBLogFilePortion method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DownloadDBLogFilePortion operation. // pageNum := 0 // err := client.DownloadDBLogFilePortionPages(params, // func(page *DownloadDBLogFilePortionOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *RDS) DownloadDBLogFilePortionPages(input *DownloadDBLogFilePortionInput, fn func(p *DownloadDBLogFilePortionOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DownloadDBLogFilePortionRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DownloadDBLogFilePortionOutput), lastPage) }) } const opFailoverDBCluster = "FailoverDBCluster" // FailoverDBClusterRequest generates a "aws/request.Request" representing the // client's request for the FailoverDBCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See FailoverDBCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the FailoverDBCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the FailoverDBClusterRequest method. // req, resp := client.FailoverDBClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) FailoverDBClusterRequest(input *FailoverDBClusterInput) (req *request.Request, output *FailoverDBClusterOutput) { op := &request.Operation{ Name: opFailoverDBCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &FailoverDBClusterInput{} } req = c.newRequest(op, input, output) output = &FailoverDBClusterOutput{} req.Data = output return } // FailoverDBCluster API operation for Amazon Relational Database Service. // // Forces a failover for a DB cluster. // // A failover for a DB cluster promotes one of the read-only instances in the // DB cluster to the master DB instance (the cluster writer) and deletes the // current primary instance. // // Amazon Aurora will automatically fail over to a read-only instance, if one // exists, when the primary instance fails. You can force a failover when you // want to simulate a failure of a DB instance for testing. Because each instance // in a DB cluster has its own endpoint address, you will need to clean up and // re-establish any existing connections that use those endpoint addresses when // the failover is complete. // // For more information on Amazon Aurora, see Aurora on Amazon RDS (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html) // in the Amazon RDS User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation FailoverDBCluster for usage and error information. // // Returned Error Codes: // * DBClusterNotFoundFault // DBClusterIdentifier does not refer to an existing DB cluster. // // * InvalidDBClusterStateFault // The DB cluster is not in a valid state. // // * InvalidDBInstanceState // The specified DB instance is not in the available state. // func (c *RDS) FailoverDBCluster(input *FailoverDBClusterInput) (*FailoverDBClusterOutput, error) { req, out := c.FailoverDBClusterRequest(input) err := req.Send() return out, err } const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTagsForResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTagsForResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTagsForResourceRequest method. // req, resp := client.ListTagsForResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { op := &request.Operation{ Name: opListTagsForResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListTagsForResourceInput{} } req = c.newRequest(op, input, output) output = &ListTagsForResourceOutput{} req.Data = output return } // ListTagsForResource API operation for Amazon Relational Database Service. // // Lists all tags on an Amazon RDS resource. // // For an overview on tagging an Amazon RDS resource, see Tagging Amazon RDS // Resources (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.Tagging.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation ListTagsForResource for usage and error information. // // Returned Error Codes: // * DBInstanceNotFound // DBInstanceIdentifier does not refer to an existing DB instance. // // * DBSnapshotNotFound // DBSnapshotIdentifier does not refer to an existing DB snapshot. // func (c *RDS) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { req, out := c.ListTagsForResourceRequest(input) err := req.Send() return out, err } const opModifyDBCluster = "ModifyDBCluster" // ModifyDBClusterRequest generates a "aws/request.Request" representing the // client's request for the ModifyDBCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyDBCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyDBCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyDBClusterRequest method. // req, resp := client.ModifyDBClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) ModifyDBClusterRequest(input *ModifyDBClusterInput) (req *request.Request, output *ModifyDBClusterOutput) { op := &request.Operation{ Name: opModifyDBCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyDBClusterInput{} } req = c.newRequest(op, input, output) output = &ModifyDBClusterOutput{} req.Data = output return } // ModifyDBCluster API operation for Amazon Relational Database Service. // // Modify a setting for an Amazon Aurora DB cluster. You can change one or more // database configuration parameters by specifying these parameters and the // new values in the request. For more information on Amazon Aurora, see Aurora // on Amazon RDS (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html) // in the Amazon RDS User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation ModifyDBCluster for usage and error information. // // Returned Error Codes: // * DBClusterNotFoundFault // DBClusterIdentifier does not refer to an existing DB cluster. // // * InvalidDBClusterStateFault // The DB cluster is not in a valid state. // // * StorageQuotaExceeded // Request would result in user exceeding the allowed amount of storage available // across all DB instances. // // * DBSubnetGroupNotFoundFault // DBSubnetGroupName does not refer to an existing DB subnet group. // // * InvalidVPCNetworkStateFault // DB subnet group does not cover all Availability Zones after it is created // because users' change. // // * InvalidDBSubnetGroupStateFault // The DB subnet group cannot be deleted because it is in use. // // * InvalidSubnet // The requested subnet is invalid, or multiple subnets were requested that // are not all in a common VPC. // // * DBClusterParameterGroupNotFound // DBClusterParameterGroupName does not refer to an existing DB Cluster parameter // group. // // * InvalidDBSecurityGroupState // The state of the DB security group does not allow deletion. // // * InvalidDBInstanceState // The specified DB instance is not in the available state. // // * DBClusterAlreadyExistsFault // User already has a DB cluster with the given identifier. // func (c *RDS) ModifyDBCluster(input *ModifyDBClusterInput) (*ModifyDBClusterOutput, error) { req, out := c.ModifyDBClusterRequest(input) err := req.Send() return out, err } const opModifyDBClusterParameterGroup = "ModifyDBClusterParameterGroup" // ModifyDBClusterParameterGroupRequest generates a "aws/request.Request" representing the // client's request for the ModifyDBClusterParameterGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyDBClusterParameterGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyDBClusterParameterGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyDBClusterParameterGroupRequest method. // req, resp := client.ModifyDBClusterParameterGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) ModifyDBClusterParameterGroupRequest(input *ModifyDBClusterParameterGroupInput) (req *request.Request, output *DBClusterParameterGroupNameMessage) { op := &request.Operation{ Name: opModifyDBClusterParameterGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyDBClusterParameterGroupInput{} } req = c.newRequest(op, input, output) output = &DBClusterParameterGroupNameMessage{} req.Data = output return } // ModifyDBClusterParameterGroup API operation for Amazon Relational Database Service. // // Modifies the parameters of a DB cluster parameter group. To modify more than // one parameter, submit a list of the following: ParameterName, ParameterValue, // and ApplyMethod. A maximum of 20 parameters can be modified in a single request. // // For more information on Amazon Aurora, see Aurora on Amazon RDS (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html) // in the Amazon RDS User Guide. // // Changes to dynamic parameters are applied immediately. Changes to static // parameters require a reboot without failover to the DB cluster associated // with the parameter group before the change can take effect. // // After you create a DB cluster parameter group, you should wait at least 5 // minutes before creating your first DB cluster that uses that DB cluster parameter // group as the default parameter group. This allows Amazon RDS to fully complete // the create action before the parameter group is used as the default for a // new DB cluster. This is especially important for parameters that are critical // when creating the default database for a DB cluster, such as the character // set for the default database defined by the character_set_database parameter. // You can use the Parameter Groups option of the Amazon RDS console (https://console.aws.amazon.com/rds/) // or the DescribeDBClusterParameters command to verify that your DB cluster // parameter group has been created or modified. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation ModifyDBClusterParameterGroup for usage and error information. // // Returned Error Codes: // * DBParameterGroupNotFound // DBParameterGroupName does not refer to an existing DB parameter group. // // * InvalidDBParameterGroupState // The DB parameter group cannot be deleted because it is in use. // func (c *RDS) ModifyDBClusterParameterGroup(input *ModifyDBClusterParameterGroupInput) (*DBClusterParameterGroupNameMessage, error) { req, out := c.ModifyDBClusterParameterGroupRequest(input) err := req.Send() return out, err } const opModifyDBClusterSnapshotAttribute = "ModifyDBClusterSnapshotAttribute" // ModifyDBClusterSnapshotAttributeRequest generates a "aws/request.Request" representing the // client's request for the ModifyDBClusterSnapshotAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyDBClusterSnapshotAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyDBClusterSnapshotAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyDBClusterSnapshotAttributeRequest method. // req, resp := client.ModifyDBClusterSnapshotAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) ModifyDBClusterSnapshotAttributeRequest(input *ModifyDBClusterSnapshotAttributeInput) (req *request.Request, output *ModifyDBClusterSnapshotAttributeOutput) { op := &request.Operation{ Name: opModifyDBClusterSnapshotAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyDBClusterSnapshotAttributeInput{} } req = c.newRequest(op, input, output) output = &ModifyDBClusterSnapshotAttributeOutput{} req.Data = output return } // ModifyDBClusterSnapshotAttribute API operation for Amazon Relational Database Service. // // Adds an attribute and values to, or removes an attribute and values from, // a manual DB cluster snapshot. // // To share a manual DB cluster snapshot with other AWS accounts, specify restore // as the AttributeName and use the ValuesToAdd parameter to add a list of IDs // of the AWS accounts that are authorized to restore the manual DB cluster // snapshot. Use the value all to make the manual DB cluster snapshot public, // which means that it can be copied or restored by all AWS accounts. Do not // add the all value for any manual DB cluster snapshots that contain private // information that you don't want available to all AWS accounts. // // To view which AWS accounts have access to copy or restore a manual DB cluster // snapshot, or whether a manual DB cluster snapshot public or private, use // the DescribeDBClusterSnapshotAttributes API action. // // If a manual DB cluster snapshot is encrypted, it cannot be shared. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation ModifyDBClusterSnapshotAttribute for usage and error information. // // Returned Error Codes: // * DBClusterSnapshotNotFoundFault // DBClusterSnapshotIdentifier does not refer to an existing DB cluster snapshot. // // * InvalidDBClusterSnapshotStateFault // The supplied value is not a valid DB cluster snapshot state. // // * SharedSnapshotQuotaExceeded // You have exceeded the maximum number of accounts that you can share a manual // DB snapshot with. // func (c *RDS) ModifyDBClusterSnapshotAttribute(input *ModifyDBClusterSnapshotAttributeInput) (*ModifyDBClusterSnapshotAttributeOutput, error) { req, out := c.ModifyDBClusterSnapshotAttributeRequest(input) err := req.Send() return out, err } const opModifyDBInstance = "ModifyDBInstance" // ModifyDBInstanceRequest generates a "aws/request.Request" representing the // client's request for the ModifyDBInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyDBInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyDBInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyDBInstanceRequest method. // req, resp := client.ModifyDBInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) ModifyDBInstanceRequest(input *ModifyDBInstanceInput) (req *request.Request, output *ModifyDBInstanceOutput) { op := &request.Operation{ Name: opModifyDBInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyDBInstanceInput{} } req = c.newRequest(op, input, output) output = &ModifyDBInstanceOutput{} req.Data = output return } // ModifyDBInstance API operation for Amazon Relational Database Service. // // Modifies settings for a DB instance. You can change one or more database // configuration parameters by specifying these parameters and the new values // in the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation ModifyDBInstance for usage and error information. // // Returned Error Codes: // * InvalidDBInstanceState // The specified DB instance is not in the available state. // // * InvalidDBSecurityGroupState // The state of the DB security group does not allow deletion. // // * DBInstanceAlreadyExists // User already has a DB instance with the given identifier. // // * DBInstanceNotFound // DBInstanceIdentifier does not refer to an existing DB instance. // // * DBSecurityGroupNotFound // DBSecurityGroupName does not refer to an existing DB security group. // // * DBParameterGroupNotFound // DBParameterGroupName does not refer to an existing DB parameter group. // // * InsufficientDBInstanceCapacity // Specified DB instance class is not available in the specified Availability // Zone. // // * StorageQuotaExceeded // Request would result in user exceeding the allowed amount of storage available // across all DB instances. // // * InvalidVPCNetworkStateFault // DB subnet group does not cover all Availability Zones after it is created // because users' change. // // * ProvisionedIopsNotAvailableInAZFault // Provisioned IOPS not available in the specified Availability Zone. // // * OptionGroupNotFoundFault // The specified option group could not be found. // // * DBUpgradeDependencyFailure // The DB upgrade failed because a resource the DB depends on could not be modified. // // * StorageTypeNotSupported // StorageType specified cannot be associated with the DB Instance. // // * AuthorizationNotFound // Specified CIDRIP or EC2 security group is not authorized for the specified // DB security group. // // RDS may not also be authorized via IAM to perform necessary actions on your // behalf. // // * CertificateNotFound // CertificateIdentifier does not refer to an existing certificate. // // * DomainNotFoundFault // Domain does not refer to an existing Active Directory Domain. // func (c *RDS) ModifyDBInstance(input *ModifyDBInstanceInput) (*ModifyDBInstanceOutput, error) { req, out := c.ModifyDBInstanceRequest(input) err := req.Send() return out, err } const opModifyDBParameterGroup = "ModifyDBParameterGroup" // ModifyDBParameterGroupRequest generates a "aws/request.Request" representing the // client's request for the ModifyDBParameterGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyDBParameterGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyDBParameterGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyDBParameterGroupRequest method. // req, resp := client.ModifyDBParameterGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) ModifyDBParameterGroupRequest(input *ModifyDBParameterGroupInput) (req *request.Request, output *DBParameterGroupNameMessage) { op := &request.Operation{ Name: opModifyDBParameterGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyDBParameterGroupInput{} } req = c.newRequest(op, input, output) output = &DBParameterGroupNameMessage{} req.Data = output return } // ModifyDBParameterGroup API operation for Amazon Relational Database Service. // // Modifies the parameters of a DB parameter group. To modify more than one // parameter, submit a list of the following: ParameterName, ParameterValue, // and ApplyMethod. A maximum of 20 parameters can be modified in a single request. // // Changes to dynamic parameters are applied immediately. Changes to static // parameters require a reboot without failover to the DB instance associated // with the parameter group before the change can take effect. // // After you modify a DB parameter group, you should wait at least 5 minutes // before creating your first DB instance that uses that DB parameter group // as the default parameter group. This allows Amazon RDS to fully complete // the modify action before the parameter group is used as the default for a // new DB instance. This is especially important for parameters that are critical // when creating the default database for a DB instance, such as the character // set for the default database defined by the character_set_database parameter. // You can use the Parameter Groups option of the Amazon RDS console (https://console.aws.amazon.com/rds/) // or the DescribeDBParameters command to verify that your DB parameter group // has been created or modified. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation ModifyDBParameterGroup for usage and error information. // // Returned Error Codes: // * DBParameterGroupNotFound // DBParameterGroupName does not refer to an existing DB parameter group. // // * InvalidDBParameterGroupState // The DB parameter group cannot be deleted because it is in use. // func (c *RDS) ModifyDBParameterGroup(input *ModifyDBParameterGroupInput) (*DBParameterGroupNameMessage, error) { req, out := c.ModifyDBParameterGroupRequest(input) err := req.Send() return out, err } const opModifyDBSnapshotAttribute = "ModifyDBSnapshotAttribute" // ModifyDBSnapshotAttributeRequest generates a "aws/request.Request" representing the // client's request for the ModifyDBSnapshotAttribute operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyDBSnapshotAttribute for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyDBSnapshotAttribute method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyDBSnapshotAttributeRequest method. // req, resp := client.ModifyDBSnapshotAttributeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) ModifyDBSnapshotAttributeRequest(input *ModifyDBSnapshotAttributeInput) (req *request.Request, output *ModifyDBSnapshotAttributeOutput) { op := &request.Operation{ Name: opModifyDBSnapshotAttribute, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyDBSnapshotAttributeInput{} } req = c.newRequest(op, input, output) output = &ModifyDBSnapshotAttributeOutput{} req.Data = output return } // ModifyDBSnapshotAttribute API operation for Amazon Relational Database Service. // // Adds an attribute and values to, or removes an attribute and values from, // a manual DB snapshot. // // To share a manual DB snapshot with other AWS accounts, specify restore as // the AttributeName and use the ValuesToAdd parameter to add a list of IDs // of the AWS accounts that are authorized to restore the manual DB snapshot. // Uses the value all to make the manual DB snapshot public, which means it // can be copied or restored by all AWS accounts. Do not add the all value for // any manual DB snapshots that contain private information that you don't want // available to all AWS accounts. // // To view which AWS accounts have access to copy or restore a manual DB snapshot, // or whether a manual DB snapshot public or private, use the DescribeDBSnapshotAttributes // API action. // // If the manual DB snapshot is encrypted, it cannot be shared. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation ModifyDBSnapshotAttribute for usage and error information. // // Returned Error Codes: // * DBSnapshotNotFound // DBSnapshotIdentifier does not refer to an existing DB snapshot. // // * InvalidDBSnapshotState // The state of the DB snapshot does not allow deletion. // // * SharedSnapshotQuotaExceeded // You have exceeded the maximum number of accounts that you can share a manual // DB snapshot with. // func (c *RDS) ModifyDBSnapshotAttribute(input *ModifyDBSnapshotAttributeInput) (*ModifyDBSnapshotAttributeOutput, error) { req, out := c.ModifyDBSnapshotAttributeRequest(input) err := req.Send() return out, err } const opModifyDBSubnetGroup = "ModifyDBSubnetGroup" // ModifyDBSubnetGroupRequest generates a "aws/request.Request" representing the // client's request for the ModifyDBSubnetGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyDBSubnetGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyDBSubnetGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyDBSubnetGroupRequest method. // req, resp := client.ModifyDBSubnetGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) ModifyDBSubnetGroupRequest(input *ModifyDBSubnetGroupInput) (req *request.Request, output *ModifyDBSubnetGroupOutput) { op := &request.Operation{ Name: opModifyDBSubnetGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyDBSubnetGroupInput{} } req = c.newRequest(op, input, output) output = &ModifyDBSubnetGroupOutput{} req.Data = output return } // ModifyDBSubnetGroup API operation for Amazon Relational Database Service. // // Modifies an existing DB subnet group. DB subnet groups must contain at least // one subnet in at least two AZs in the region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation ModifyDBSubnetGroup for usage and error information. // // Returned Error Codes: // * DBSubnetGroupNotFoundFault // DBSubnetGroupName does not refer to an existing DB subnet group. // // * DBSubnetQuotaExceededFault // Request would result in user exceeding the allowed number of subnets in a // DB subnet groups. // // * SubnetAlreadyInUse // The DB subnet is already in use in the Availability Zone. // // * DBSubnetGroupDoesNotCoverEnoughAZs // Subnets in the DB subnet group should cover at least two Availability Zones // unless there is only one Availability Zone. // // * InvalidSubnet // The requested subnet is invalid, or multiple subnets were requested that // are not all in a common VPC. // func (c *RDS) ModifyDBSubnetGroup(input *ModifyDBSubnetGroupInput) (*ModifyDBSubnetGroupOutput, error) { req, out := c.ModifyDBSubnetGroupRequest(input) err := req.Send() return out, err } const opModifyEventSubscription = "ModifyEventSubscription" // ModifyEventSubscriptionRequest generates a "aws/request.Request" representing the // client's request for the ModifyEventSubscription operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyEventSubscription for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyEventSubscription method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyEventSubscriptionRequest method. // req, resp := client.ModifyEventSubscriptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) ModifyEventSubscriptionRequest(input *ModifyEventSubscriptionInput) (req *request.Request, output *ModifyEventSubscriptionOutput) { op := &request.Operation{ Name: opModifyEventSubscription, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyEventSubscriptionInput{} } req = c.newRequest(op, input, output) output = &ModifyEventSubscriptionOutput{} req.Data = output return } // ModifyEventSubscription API operation for Amazon Relational Database Service. // // Modifies an existing RDS event notification subscription. Note that you cannot // modify the source identifiers using this call; to change source identifiers // for a subscription, use the AddSourceIdentifierToSubscription and RemoveSourceIdentifierFromSubscription // calls. // // You can see a list of the event categories for a given SourceType in the // Events (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html) // topic in the Amazon RDS User Guide or by using the DescribeEventCategories // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation ModifyEventSubscription for usage and error information. // // Returned Error Codes: // * EventSubscriptionQuotaExceeded // You have reached the maximum number of event subscriptions. // // * SubscriptionNotFound // The subscription name does not exist. // // * SNSInvalidTopic // SNS has responded that there is a problem with the SND topic specified. // // * SNSNoAuthorization // You do not have permission to publish to the SNS topic ARN. // // * SNSTopicArnNotFound // The SNS topic ARN does not exist. // // * SubscriptionCategoryNotFound // The supplied category does not exist. // func (c *RDS) ModifyEventSubscription(input *ModifyEventSubscriptionInput) (*ModifyEventSubscriptionOutput, error) { req, out := c.ModifyEventSubscriptionRequest(input) err := req.Send() return out, err } const opModifyOptionGroup = "ModifyOptionGroup" // ModifyOptionGroupRequest generates a "aws/request.Request" representing the // client's request for the ModifyOptionGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyOptionGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyOptionGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyOptionGroupRequest method. // req, resp := client.ModifyOptionGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) ModifyOptionGroupRequest(input *ModifyOptionGroupInput) (req *request.Request, output *ModifyOptionGroupOutput) { op := &request.Operation{ Name: opModifyOptionGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyOptionGroupInput{} } req = c.newRequest(op, input, output) output = &ModifyOptionGroupOutput{} req.Data = output return } // ModifyOptionGroup API operation for Amazon Relational Database Service. // // Modifies an existing option group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation ModifyOptionGroup for usage and error information. // // Returned Error Codes: // * InvalidOptionGroupStateFault // The option group is not in the available state. // // * OptionGroupNotFoundFault // The specified option group could not be found. // func (c *RDS) ModifyOptionGroup(input *ModifyOptionGroupInput) (*ModifyOptionGroupOutput, error) { req, out := c.ModifyOptionGroupRequest(input) err := req.Send() return out, err } const opPromoteReadReplica = "PromoteReadReplica" // PromoteReadReplicaRequest generates a "aws/request.Request" representing the // client's request for the PromoteReadReplica operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PromoteReadReplica for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PromoteReadReplica method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PromoteReadReplicaRequest method. // req, resp := client.PromoteReadReplicaRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) PromoteReadReplicaRequest(input *PromoteReadReplicaInput) (req *request.Request, output *PromoteReadReplicaOutput) { op := &request.Operation{ Name: opPromoteReadReplica, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PromoteReadReplicaInput{} } req = c.newRequest(op, input, output) output = &PromoteReadReplicaOutput{} req.Data = output return } // PromoteReadReplica API operation for Amazon Relational Database Service. // // Promotes a Read Replica DB instance to a standalone DB instance. // // We recommend that you enable automated backups on your Read Replica before // promoting the Read Replica. This ensures that no backup is taken during the // promotion process. Once the instance is promoted to a primary instance, backups // are taken based on your backup settings. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation PromoteReadReplica for usage and error information. // // Returned Error Codes: // * InvalidDBInstanceState // The specified DB instance is not in the available state. // // * DBInstanceNotFound // DBInstanceIdentifier does not refer to an existing DB instance. // func (c *RDS) PromoteReadReplica(input *PromoteReadReplicaInput) (*PromoteReadReplicaOutput, error) { req, out := c.PromoteReadReplicaRequest(input) err := req.Send() return out, err } const opPromoteReadReplicaDBCluster = "PromoteReadReplicaDBCluster" // PromoteReadReplicaDBClusterRequest generates a "aws/request.Request" representing the // client's request for the PromoteReadReplicaDBCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PromoteReadReplicaDBCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PromoteReadReplicaDBCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PromoteReadReplicaDBClusterRequest method. // req, resp := client.PromoteReadReplicaDBClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) PromoteReadReplicaDBClusterRequest(input *PromoteReadReplicaDBClusterInput) (req *request.Request, output *PromoteReadReplicaDBClusterOutput) { op := &request.Operation{ Name: opPromoteReadReplicaDBCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PromoteReadReplicaDBClusterInput{} } req = c.newRequest(op, input, output) output = &PromoteReadReplicaDBClusterOutput{} req.Data = output return } // PromoteReadReplicaDBCluster API operation for Amazon Relational Database Service. // // Promotes a Read Replica DB cluster to a standalone DB cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation PromoteReadReplicaDBCluster for usage and error information. // // Returned Error Codes: // * DBClusterNotFoundFault // DBClusterIdentifier does not refer to an existing DB cluster. // // * InvalidDBClusterStateFault // The DB cluster is not in a valid state. // func (c *RDS) PromoteReadReplicaDBCluster(input *PromoteReadReplicaDBClusterInput) (*PromoteReadReplicaDBClusterOutput, error) { req, out := c.PromoteReadReplicaDBClusterRequest(input) err := req.Send() return out, err } const opPurchaseReservedDBInstancesOffering = "PurchaseReservedDBInstancesOffering" // PurchaseReservedDBInstancesOfferingRequest generates a "aws/request.Request" representing the // client's request for the PurchaseReservedDBInstancesOffering operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PurchaseReservedDBInstancesOffering for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PurchaseReservedDBInstancesOffering method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PurchaseReservedDBInstancesOfferingRequest method. // req, resp := client.PurchaseReservedDBInstancesOfferingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) PurchaseReservedDBInstancesOfferingRequest(input *PurchaseReservedDBInstancesOfferingInput) (req *request.Request, output *PurchaseReservedDBInstancesOfferingOutput) { op := &request.Operation{ Name: opPurchaseReservedDBInstancesOffering, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PurchaseReservedDBInstancesOfferingInput{} } req = c.newRequest(op, input, output) output = &PurchaseReservedDBInstancesOfferingOutput{} req.Data = output return } // PurchaseReservedDBInstancesOffering API operation for Amazon Relational Database Service. // // Purchases a reserved DB instance offering. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation PurchaseReservedDBInstancesOffering for usage and error information. // // Returned Error Codes: // * ReservedDBInstancesOfferingNotFound // Specified offering does not exist. // // * ReservedDBInstanceAlreadyExists // User already has a reservation with the given identifier. // // * ReservedDBInstanceQuotaExceeded // Request would exceed the user's DB Instance quota. // func (c *RDS) PurchaseReservedDBInstancesOffering(input *PurchaseReservedDBInstancesOfferingInput) (*PurchaseReservedDBInstancesOfferingOutput, error) { req, out := c.PurchaseReservedDBInstancesOfferingRequest(input) err := req.Send() return out, err } const opRebootDBInstance = "RebootDBInstance" // RebootDBInstanceRequest generates a "aws/request.Request" representing the // client's request for the RebootDBInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RebootDBInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RebootDBInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RebootDBInstanceRequest method. // req, resp := client.RebootDBInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) RebootDBInstanceRequest(input *RebootDBInstanceInput) (req *request.Request, output *RebootDBInstanceOutput) { op := &request.Operation{ Name: opRebootDBInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RebootDBInstanceInput{} } req = c.newRequest(op, input, output) output = &RebootDBInstanceOutput{} req.Data = output return } // RebootDBInstance API operation for Amazon Relational Database Service. // // Rebooting a DB instance restarts the database engine service. A reboot also // applies to the DB instance any modifications to the associated DB parameter // group that were pending. Rebooting a DB instance results in a momentary outage // of the instance, during which the DB instance status is set to rebooting. // If the RDS instance is configured for MultiAZ, it is possible that the reboot // will be conducted through a failover. An Amazon RDS event is created when // the reboot is completed. // // If your DB instance is deployed in multiple Availability Zones, you can force // a failover from one AZ to the other during the reboot. You might force a // failover to test the availability of your DB instance deployment or to restore // operations to the original AZ after a failover occurs. // // The time required to reboot is a function of the specific database engine's // crash recovery process. To improve the reboot time, we recommend that you // reduce database activities as much as possible during the reboot process // to reduce rollback activity for in-transit transactions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation RebootDBInstance for usage and error information. // // Returned Error Codes: // * InvalidDBInstanceState // The specified DB instance is not in the available state. // // * DBInstanceNotFound // DBInstanceIdentifier does not refer to an existing DB instance. // func (c *RDS) RebootDBInstance(input *RebootDBInstanceInput) (*RebootDBInstanceOutput, error) { req, out := c.RebootDBInstanceRequest(input) err := req.Send() return out, err } const opRemoveRoleFromDBCluster = "RemoveRoleFromDBCluster" // RemoveRoleFromDBClusterRequest generates a "aws/request.Request" representing the // client's request for the RemoveRoleFromDBCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveRoleFromDBCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveRoleFromDBCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveRoleFromDBClusterRequest method. // req, resp := client.RemoveRoleFromDBClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) RemoveRoleFromDBClusterRequest(input *RemoveRoleFromDBClusterInput) (req *request.Request, output *RemoveRoleFromDBClusterOutput) { op := &request.Operation{ Name: opRemoveRoleFromDBCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveRoleFromDBClusterInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RemoveRoleFromDBClusterOutput{} req.Data = output return } // RemoveRoleFromDBCluster API operation for Amazon Relational Database Service. // // Disassociates an Identity and Access Management (IAM) role from an Aurora // DB cluster. For more information, see Authorizing Amazon Aurora to Access // Other AWS Services On Your Behalf (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Authorizing.AWSServices.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation RemoveRoleFromDBCluster for usage and error information. // // Returned Error Codes: // * DBClusterNotFoundFault // DBClusterIdentifier does not refer to an existing DB cluster. // // * DBClusterRoleNotFound // The specified IAM role Amazon Resource Name (ARN) is not associated with // the specified DB cluster. // // * InvalidDBClusterStateFault // The DB cluster is not in a valid state. // func (c *RDS) RemoveRoleFromDBCluster(input *RemoveRoleFromDBClusterInput) (*RemoveRoleFromDBClusterOutput, error) { req, out := c.RemoveRoleFromDBClusterRequest(input) err := req.Send() return out, err } const opRemoveSourceIdentifierFromSubscription = "RemoveSourceIdentifierFromSubscription" // RemoveSourceIdentifierFromSubscriptionRequest generates a "aws/request.Request" representing the // client's request for the RemoveSourceIdentifierFromSubscription operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveSourceIdentifierFromSubscription for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveSourceIdentifierFromSubscription method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveSourceIdentifierFromSubscriptionRequest method. // req, resp := client.RemoveSourceIdentifierFromSubscriptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) RemoveSourceIdentifierFromSubscriptionRequest(input *RemoveSourceIdentifierFromSubscriptionInput) (req *request.Request, output *RemoveSourceIdentifierFromSubscriptionOutput) { op := &request.Operation{ Name: opRemoveSourceIdentifierFromSubscription, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveSourceIdentifierFromSubscriptionInput{} } req = c.newRequest(op, input, output) output = &RemoveSourceIdentifierFromSubscriptionOutput{} req.Data = output return } // RemoveSourceIdentifierFromSubscription API operation for Amazon Relational Database Service. // // Removes a source identifier from an existing RDS event notification subscription. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation RemoveSourceIdentifierFromSubscription for usage and error information. // // Returned Error Codes: // * SubscriptionNotFound // The subscription name does not exist. // // * SourceNotFound // The requested source could not be found. // func (c *RDS) RemoveSourceIdentifierFromSubscription(input *RemoveSourceIdentifierFromSubscriptionInput) (*RemoveSourceIdentifierFromSubscriptionOutput, error) { req, out := c.RemoveSourceIdentifierFromSubscriptionRequest(input) err := req.Send() return out, err } const opRemoveTagsFromResource = "RemoveTagsFromResource" // RemoveTagsFromResourceRequest generates a "aws/request.Request" representing the // client's request for the RemoveTagsFromResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveTagsFromResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveTagsFromResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveTagsFromResourceRequest method. // req, resp := client.RemoveTagsFromResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) RemoveTagsFromResourceRequest(input *RemoveTagsFromResourceInput) (req *request.Request, output *RemoveTagsFromResourceOutput) { op := &request.Operation{ Name: opRemoveTagsFromResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveTagsFromResourceInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RemoveTagsFromResourceOutput{} req.Data = output return } // RemoveTagsFromResource API operation for Amazon Relational Database Service. // // Removes metadata tags from an Amazon RDS resource. // // For an overview on tagging an Amazon RDS resource, see Tagging Amazon RDS // Resources (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.Tagging.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation RemoveTagsFromResource for usage and error information. // // Returned Error Codes: // * DBInstanceNotFound // DBInstanceIdentifier does not refer to an existing DB instance. // // * DBSnapshotNotFound // DBSnapshotIdentifier does not refer to an existing DB snapshot. // func (c *RDS) RemoveTagsFromResource(input *RemoveTagsFromResourceInput) (*RemoveTagsFromResourceOutput, error) { req, out := c.RemoveTagsFromResourceRequest(input) err := req.Send() return out, err } const opResetDBClusterParameterGroup = "ResetDBClusterParameterGroup" // ResetDBClusterParameterGroupRequest generates a "aws/request.Request" representing the // client's request for the ResetDBClusterParameterGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ResetDBClusterParameterGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ResetDBClusterParameterGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ResetDBClusterParameterGroupRequest method. // req, resp := client.ResetDBClusterParameterGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) ResetDBClusterParameterGroupRequest(input *ResetDBClusterParameterGroupInput) (req *request.Request, output *DBClusterParameterGroupNameMessage) { op := &request.Operation{ Name: opResetDBClusterParameterGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ResetDBClusterParameterGroupInput{} } req = c.newRequest(op, input, output) output = &DBClusterParameterGroupNameMessage{} req.Data = output return } // ResetDBClusterParameterGroup API operation for Amazon Relational Database Service. // // Modifies the parameters of a DB cluster parameter group to the default value. // To reset specific parameters submit a list of the following: ParameterName // and ApplyMethod. To reset the entire DB cluster parameter group, specify // the DBClusterParameterGroupName and ResetAllParameters parameters. // // When resetting the entire group, dynamic parameters are updated immediately // and static parameters are set to pending-reboot to take effect on the next // DB instance restart or RebootDBInstance request. You must call RebootDBInstance // for every DB instance in your DB cluster that you want the updated static // parameter to apply to. // // For more information on Amazon Aurora, see Aurora on Amazon RDS (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html) // in the Amazon RDS User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation ResetDBClusterParameterGroup for usage and error information. // // Returned Error Codes: // * InvalidDBParameterGroupState // The DB parameter group cannot be deleted because it is in use. // // * DBParameterGroupNotFound // DBParameterGroupName does not refer to an existing DB parameter group. // func (c *RDS) ResetDBClusterParameterGroup(input *ResetDBClusterParameterGroupInput) (*DBClusterParameterGroupNameMessage, error) { req, out := c.ResetDBClusterParameterGroupRequest(input) err := req.Send() return out, err } const opResetDBParameterGroup = "ResetDBParameterGroup" // ResetDBParameterGroupRequest generates a "aws/request.Request" representing the // client's request for the ResetDBParameterGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ResetDBParameterGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ResetDBParameterGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ResetDBParameterGroupRequest method. // req, resp := client.ResetDBParameterGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) ResetDBParameterGroupRequest(input *ResetDBParameterGroupInput) (req *request.Request, output *DBParameterGroupNameMessage) { op := &request.Operation{ Name: opResetDBParameterGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ResetDBParameterGroupInput{} } req = c.newRequest(op, input, output) output = &DBParameterGroupNameMessage{} req.Data = output return } // ResetDBParameterGroup API operation for Amazon Relational Database Service. // // Modifies the parameters of a DB parameter group to the engine/system default // value. To reset specific parameters submit a list of the following: ParameterName // and ApplyMethod. To reset the entire DB parameter group, specify the DBParameterGroup // name and ResetAllParameters parameters. When resetting the entire group, // dynamic parameters are updated immediately and static parameters are set // to pending-reboot to take effect on the next DB instance restart or RebootDBInstance // request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation ResetDBParameterGroup for usage and error information. // // Returned Error Codes: // * InvalidDBParameterGroupState // The DB parameter group cannot be deleted because it is in use. // // * DBParameterGroupNotFound // DBParameterGroupName does not refer to an existing DB parameter group. // func (c *RDS) ResetDBParameterGroup(input *ResetDBParameterGroupInput) (*DBParameterGroupNameMessage, error) { req, out := c.ResetDBParameterGroupRequest(input) err := req.Send() return out, err } const opRestoreDBClusterFromS3 = "RestoreDBClusterFromS3" // RestoreDBClusterFromS3Request generates a "aws/request.Request" representing the // client's request for the RestoreDBClusterFromS3 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RestoreDBClusterFromS3 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RestoreDBClusterFromS3 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RestoreDBClusterFromS3Request method. // req, resp := client.RestoreDBClusterFromS3Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) RestoreDBClusterFromS3Request(input *RestoreDBClusterFromS3Input) (req *request.Request, output *RestoreDBClusterFromS3Output) { op := &request.Operation{ Name: opRestoreDBClusterFromS3, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RestoreDBClusterFromS3Input{} } req = c.newRequest(op, input, output) output = &RestoreDBClusterFromS3Output{} req.Data = output return } // RestoreDBClusterFromS3 API operation for Amazon Relational Database Service. // // Creates an Amazon Aurora DB cluster from data stored in an Amazon S3 bucket. // Amazon RDS must be authorized to access the Amazon S3 bucket and the data // must be created using the Percona XtraBackup utility as described in Migrating // Data from MySQL by Using an Amazon S3 Bucket (AmazonRDS/latest/UserGuide/Aurora.Migrate.MySQL.html#Aurora.Migrate.MySQL.S3). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation RestoreDBClusterFromS3 for usage and error information. // // Returned Error Codes: // * DBClusterAlreadyExistsFault // User already has a DB cluster with the given identifier. // // * DBClusterQuotaExceededFault // User attempted to create a new DB cluster and the user has already reached // the maximum allowed DB cluster quota. // // * StorageQuotaExceeded // Request would result in user exceeding the allowed amount of storage available // across all DB instances. // // * DBSubnetGroupNotFoundFault // DBSubnetGroupName does not refer to an existing DB subnet group. // // * InvalidVPCNetworkStateFault // DB subnet group does not cover all Availability Zones after it is created // because users' change. // // * InvalidDBClusterStateFault // The DB cluster is not in a valid state. // // * InvalidDBSubnetGroupStateFault // The DB subnet group cannot be deleted because it is in use. // // * InvalidSubnet // The requested subnet is invalid, or multiple subnets were requested that // are not all in a common VPC. // // * InvalidS3BucketFault // The specified Amazon S3 bucket name could not be found or Amazon RDS is not // authorized to access the specified Amazon S3 bucket. Verify the SourceS3BucketName // and S3IngestionRoleArn values and try again. // // * DBClusterParameterGroupNotFound // DBClusterParameterGroupName does not refer to an existing DB Cluster parameter // group. // // * KMSKeyNotAccessibleFault // Error accessing KMS key. // // * DBClusterNotFoundFault // DBClusterIdentifier does not refer to an existing DB cluster. // // * InsufficientStorageClusterCapacity // There is insufficient storage available for the current action. You may be // able to resolve this error by updating your subnet group to use different // Availability Zones that have more storage available. // func (c *RDS) RestoreDBClusterFromS3(input *RestoreDBClusterFromS3Input) (*RestoreDBClusterFromS3Output, error) { req, out := c.RestoreDBClusterFromS3Request(input) err := req.Send() return out, err } const opRestoreDBClusterFromSnapshot = "RestoreDBClusterFromSnapshot" // RestoreDBClusterFromSnapshotRequest generates a "aws/request.Request" representing the // client's request for the RestoreDBClusterFromSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RestoreDBClusterFromSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RestoreDBClusterFromSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RestoreDBClusterFromSnapshotRequest method. // req, resp := client.RestoreDBClusterFromSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) RestoreDBClusterFromSnapshotRequest(input *RestoreDBClusterFromSnapshotInput) (req *request.Request, output *RestoreDBClusterFromSnapshotOutput) { op := &request.Operation{ Name: opRestoreDBClusterFromSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RestoreDBClusterFromSnapshotInput{} } req = c.newRequest(op, input, output) output = &RestoreDBClusterFromSnapshotOutput{} req.Data = output return } // RestoreDBClusterFromSnapshot API operation for Amazon Relational Database Service. // // Creates a new DB cluster from a DB cluster snapshot. The target DB cluster // is created from the source DB cluster restore point with the same configuration // as the original source DB cluster, except that the new DB cluster is created // with the default security group. // // For more information on Amazon Aurora, see Aurora on Amazon RDS (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html) // in the Amazon RDS User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation RestoreDBClusterFromSnapshot for usage and error information. // // Returned Error Codes: // * DBClusterAlreadyExistsFault // User already has a DB cluster with the given identifier. // // * DBClusterQuotaExceededFault // User attempted to create a new DB cluster and the user has already reached // the maximum allowed DB cluster quota. // // * StorageQuotaExceeded // Request would result in user exceeding the allowed amount of storage available // across all DB instances. // // * DBSubnetGroupNotFoundFault // DBSubnetGroupName does not refer to an existing DB subnet group. // // * DBSnapshotNotFound // DBSnapshotIdentifier does not refer to an existing DB snapshot. // // * DBClusterSnapshotNotFoundFault // DBClusterSnapshotIdentifier does not refer to an existing DB cluster snapshot. // // * InsufficientDBClusterCapacityFault // The DB cluster does not have enough capacity for the current operation. // // * InsufficientStorageClusterCapacity // There is insufficient storage available for the current action. You may be // able to resolve this error by updating your subnet group to use different // Availability Zones that have more storage available. // // * InvalidDBSnapshotState // The state of the DB snapshot does not allow deletion. // // * InvalidDBClusterSnapshotStateFault // The supplied value is not a valid DB cluster snapshot state. // // * StorageQuotaExceeded // Request would result in user exceeding the allowed amount of storage available // across all DB instances. // // * InvalidVPCNetworkStateFault // DB subnet group does not cover all Availability Zones after it is created // because users' change. // // * InvalidRestoreFault // Cannot restore from vpc backup to non-vpc DB instance. // // * DBSubnetGroupNotFoundFault // DBSubnetGroupName does not refer to an existing DB subnet group. // // * InvalidSubnet // The requested subnet is invalid, or multiple subnets were requested that // are not all in a common VPC. // // * OptionGroupNotFoundFault // The specified option group could not be found. // // * KMSKeyNotAccessibleFault // Error accessing KMS key. // func (c *RDS) RestoreDBClusterFromSnapshot(input *RestoreDBClusterFromSnapshotInput) (*RestoreDBClusterFromSnapshotOutput, error) { req, out := c.RestoreDBClusterFromSnapshotRequest(input) err := req.Send() return out, err } const opRestoreDBClusterToPointInTime = "RestoreDBClusterToPointInTime" // RestoreDBClusterToPointInTimeRequest generates a "aws/request.Request" representing the // client's request for the RestoreDBClusterToPointInTime operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RestoreDBClusterToPointInTime for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RestoreDBClusterToPointInTime method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RestoreDBClusterToPointInTimeRequest method. // req, resp := client.RestoreDBClusterToPointInTimeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) RestoreDBClusterToPointInTimeRequest(input *RestoreDBClusterToPointInTimeInput) (req *request.Request, output *RestoreDBClusterToPointInTimeOutput) { op := &request.Operation{ Name: opRestoreDBClusterToPointInTime, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RestoreDBClusterToPointInTimeInput{} } req = c.newRequest(op, input, output) output = &RestoreDBClusterToPointInTimeOutput{} req.Data = output return } // RestoreDBClusterToPointInTime API operation for Amazon Relational Database Service. // // Restores a DB cluster to an arbitrary point in time. Users can restore to // any point in time before LatestRestorableTime for up to BackupRetentionPeriod // days. The target DB cluster is created from the source DB cluster with the // same configuration as the original DB cluster, except that the new DB cluster // is created with the default DB security group. // // For more information on Amazon Aurora, see Aurora on Amazon RDS (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html) // in the Amazon RDS User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation RestoreDBClusterToPointInTime for usage and error information. // // Returned Error Codes: // * DBClusterAlreadyExistsFault // User already has a DB cluster with the given identifier. // // * DBClusterQuotaExceededFault // User attempted to create a new DB cluster and the user has already reached // the maximum allowed DB cluster quota. // // * StorageQuotaExceeded // Request would result in user exceeding the allowed amount of storage available // across all DB instances. // // * DBSubnetGroupNotFoundFault // DBSubnetGroupName does not refer to an existing DB subnet group. // // * DBClusterNotFoundFault // DBClusterIdentifier does not refer to an existing DB cluster. // // * DBClusterSnapshotNotFoundFault // DBClusterSnapshotIdentifier does not refer to an existing DB cluster snapshot. // // * InsufficientDBClusterCapacityFault // The DB cluster does not have enough capacity for the current operation. // // * InsufficientStorageClusterCapacity // There is insufficient storage available for the current action. You may be // able to resolve this error by updating your subnet group to use different // Availability Zones that have more storage available. // // * InvalidDBSnapshotState // The state of the DB snapshot does not allow deletion. // // * InvalidDBClusterSnapshotStateFault // The supplied value is not a valid DB cluster snapshot state. // // * StorageQuotaExceeded // Request would result in user exceeding the allowed amount of storage available // across all DB instances. // // * InvalidVPCNetworkStateFault // DB subnet group does not cover all Availability Zones after it is created // because users' change. // // * InvalidRestoreFault // Cannot restore from vpc backup to non-vpc DB instance. // // * DBSubnetGroupNotFoundFault // DBSubnetGroupName does not refer to an existing DB subnet group. // // * InvalidSubnet // The requested subnet is invalid, or multiple subnets were requested that // are not all in a common VPC. // // * OptionGroupNotFoundFault // The specified option group could not be found. // // * KMSKeyNotAccessibleFault // Error accessing KMS key. // func (c *RDS) RestoreDBClusterToPointInTime(input *RestoreDBClusterToPointInTimeInput) (*RestoreDBClusterToPointInTimeOutput, error) { req, out := c.RestoreDBClusterToPointInTimeRequest(input) err := req.Send() return out, err } const opRestoreDBInstanceFromDBSnapshot = "RestoreDBInstanceFromDBSnapshot" // RestoreDBInstanceFromDBSnapshotRequest generates a "aws/request.Request" representing the // client's request for the RestoreDBInstanceFromDBSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RestoreDBInstanceFromDBSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RestoreDBInstanceFromDBSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RestoreDBInstanceFromDBSnapshotRequest method. // req, resp := client.RestoreDBInstanceFromDBSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) RestoreDBInstanceFromDBSnapshotRequest(input *RestoreDBInstanceFromDBSnapshotInput) (req *request.Request, output *RestoreDBInstanceFromDBSnapshotOutput) { op := &request.Operation{ Name: opRestoreDBInstanceFromDBSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RestoreDBInstanceFromDBSnapshotInput{} } req = c.newRequest(op, input, output) output = &RestoreDBInstanceFromDBSnapshotOutput{} req.Data = output return } // RestoreDBInstanceFromDBSnapshot API operation for Amazon Relational Database Service. // // Creates a new DB instance from a DB snapshot. The target database is created // from the source database restore point with the most of original configuration // with the default security group and the default DB parameter group. By default, // the new DB instance is created as a single-AZ deployment except when the // instance is a SQL Server instance that has an option group that is associated // with mirroring; in this case, the instance becomes a mirrored AZ deployment // and not a single-AZ deployment. // // If your intent is to replace your original DB instance with the new, restored // DB instance, then rename your original DB instance before you call the RestoreDBInstanceFromDBSnapshot // action. RDS does not allow two DB instances with the same name. Once you // have renamed your original DB instance with a different identifier, then // you can pass the original name of the DB instance as the DBInstanceIdentifier // in the call to the RestoreDBInstanceFromDBSnapshot action. The result is // that you will replace the original DB instance with the DB instance created // from the snapshot. // // If you are restoring from a shared manual DB snapshot, the DBSnapshotIdentifier // must be the ARN of the shared DB snapshot. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation RestoreDBInstanceFromDBSnapshot for usage and error information. // // Returned Error Codes: // * DBInstanceAlreadyExists // User already has a DB instance with the given identifier. // // * DBSnapshotNotFound // DBSnapshotIdentifier does not refer to an existing DB snapshot. // // * InstanceQuotaExceeded // Request would result in user exceeding the allowed number of DB instances. // // * InsufficientDBInstanceCapacity // Specified DB instance class is not available in the specified Availability // Zone. // // * InvalidDBSnapshotState // The state of the DB snapshot does not allow deletion. // // * StorageQuotaExceeded // Request would result in user exceeding the allowed amount of storage available // across all DB instances. // // * InvalidVPCNetworkStateFault // DB subnet group does not cover all Availability Zones after it is created // because users' change. // // * InvalidRestoreFault // Cannot restore from vpc backup to non-vpc DB instance. // // * DBSubnetGroupNotFoundFault // DBSubnetGroupName does not refer to an existing DB subnet group. // // * DBSubnetGroupDoesNotCoverEnoughAZs // Subnets in the DB subnet group should cover at least two Availability Zones // unless there is only one Availability Zone. // // * InvalidSubnet // The requested subnet is invalid, or multiple subnets were requested that // are not all in a common VPC. // // * ProvisionedIopsNotAvailableInAZFault // Provisioned IOPS not available in the specified Availability Zone. // // * OptionGroupNotFoundFault // The specified option group could not be found. // // * StorageTypeNotSupported // StorageType specified cannot be associated with the DB Instance. // // * AuthorizationNotFound // Specified CIDRIP or EC2 security group is not authorized for the specified // DB security group. // // RDS may not also be authorized via IAM to perform necessary actions on your // behalf. // // * KMSKeyNotAccessibleFault // Error accessing KMS key. // // * DBSecurityGroupNotFound // DBSecurityGroupName does not refer to an existing DB security group. // // * DomainNotFoundFault // Domain does not refer to an existing Active Directory Domain. // func (c *RDS) RestoreDBInstanceFromDBSnapshot(input *RestoreDBInstanceFromDBSnapshotInput) (*RestoreDBInstanceFromDBSnapshotOutput, error) { req, out := c.RestoreDBInstanceFromDBSnapshotRequest(input) err := req.Send() return out, err } const opRestoreDBInstanceToPointInTime = "RestoreDBInstanceToPointInTime" // RestoreDBInstanceToPointInTimeRequest generates a "aws/request.Request" representing the // client's request for the RestoreDBInstanceToPointInTime operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RestoreDBInstanceToPointInTime for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RestoreDBInstanceToPointInTime method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RestoreDBInstanceToPointInTimeRequest method. // req, resp := client.RestoreDBInstanceToPointInTimeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) RestoreDBInstanceToPointInTimeRequest(input *RestoreDBInstanceToPointInTimeInput) (req *request.Request, output *RestoreDBInstanceToPointInTimeOutput) { op := &request.Operation{ Name: opRestoreDBInstanceToPointInTime, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RestoreDBInstanceToPointInTimeInput{} } req = c.newRequest(op, input, output) output = &RestoreDBInstanceToPointInTimeOutput{} req.Data = output return } // RestoreDBInstanceToPointInTime API operation for Amazon Relational Database Service. // // Restores a DB instance to an arbitrary point in time. You can restore to // any point in time before the time identified by the LatestRestorableTime // property. You can restore to a point up to the number of days specified by // the BackupRetentionPeriod property. // // The target database is created with most of the original configuration, but // in a system-selected availability zone, with the default security group, // the default subnet group, and the default DB parameter group. By default, // the new DB instance is created as a single-AZ deployment except when the // instance is a SQL Server instance that has an option group that is associated // with mirroring; in this case, the instance becomes a mirrored deployment // and not a single-AZ deployment. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation RestoreDBInstanceToPointInTime for usage and error information. // // Returned Error Codes: // * DBInstanceAlreadyExists // User already has a DB instance with the given identifier. // // * DBInstanceNotFound // DBInstanceIdentifier does not refer to an existing DB instance. // // * InstanceQuotaExceeded // Request would result in user exceeding the allowed number of DB instances. // // * InsufficientDBInstanceCapacity // Specified DB instance class is not available in the specified Availability // Zone. // // * InvalidDBInstanceState // The specified DB instance is not in the available state. // // * PointInTimeRestoreNotEnabled // SourceDBInstanceIdentifier refers to a DB instance with BackupRetentionPeriod // equal to 0. // // * StorageQuotaExceeded // Request would result in user exceeding the allowed amount of storage available // across all DB instances. // // * InvalidVPCNetworkStateFault // DB subnet group does not cover all Availability Zones after it is created // because users' change. // // * InvalidRestoreFault // Cannot restore from vpc backup to non-vpc DB instance. // // * DBSubnetGroupNotFoundFault // DBSubnetGroupName does not refer to an existing DB subnet group. // // * DBSubnetGroupDoesNotCoverEnoughAZs // Subnets in the DB subnet group should cover at least two Availability Zones // unless there is only one Availability Zone. // // * InvalidSubnet // The requested subnet is invalid, or multiple subnets were requested that // are not all in a common VPC. // // * ProvisionedIopsNotAvailableInAZFault // Provisioned IOPS not available in the specified Availability Zone. // // * OptionGroupNotFoundFault // The specified option group could not be found. // // * StorageTypeNotSupported // StorageType specified cannot be associated with the DB Instance. // // * AuthorizationNotFound // Specified CIDRIP or EC2 security group is not authorized for the specified // DB security group. // // RDS may not also be authorized via IAM to perform necessary actions on your // behalf. // // * KMSKeyNotAccessibleFault // Error accessing KMS key. // // * DBSecurityGroupNotFound // DBSecurityGroupName does not refer to an existing DB security group. // // * DomainNotFoundFault // Domain does not refer to an existing Active Directory Domain. // func (c *RDS) RestoreDBInstanceToPointInTime(input *RestoreDBInstanceToPointInTimeInput) (*RestoreDBInstanceToPointInTimeOutput, error) { req, out := c.RestoreDBInstanceToPointInTimeRequest(input) err := req.Send() return out, err } const opRevokeDBSecurityGroupIngress = "RevokeDBSecurityGroupIngress" // RevokeDBSecurityGroupIngressRequest generates a "aws/request.Request" representing the // client's request for the RevokeDBSecurityGroupIngress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RevokeDBSecurityGroupIngress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RevokeDBSecurityGroupIngress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RevokeDBSecurityGroupIngressRequest method. // req, resp := client.RevokeDBSecurityGroupIngressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *RDS) RevokeDBSecurityGroupIngressRequest(input *RevokeDBSecurityGroupIngressInput) (req *request.Request, output *RevokeDBSecurityGroupIngressOutput) { op := &request.Operation{ Name: opRevokeDBSecurityGroupIngress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RevokeDBSecurityGroupIngressInput{} } req = c.newRequest(op, input, output) output = &RevokeDBSecurityGroupIngressOutput{} req.Data = output return } // RevokeDBSecurityGroupIngress API operation for Amazon Relational Database Service. // // Revokes ingress from a DBSecurityGroup for previously authorized IP ranges // or EC2 or VPC Security Groups. Required parameters for this API are one of // CIDRIP, EC2SecurityGroupId for VPC, or (EC2SecurityGroupOwnerId and either // EC2SecurityGroupName or EC2SecurityGroupId). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Relational Database Service's // API operation RevokeDBSecurityGroupIngress for usage and error information. // // Returned Error Codes: // * DBSecurityGroupNotFound // DBSecurityGroupName does not refer to an existing DB security group. // // * AuthorizationNotFound // Specified CIDRIP or EC2 security group is not authorized for the specified // DB security group. // // RDS may not also be authorized via IAM to perform necessary actions on your // behalf. // // * InvalidDBSecurityGroupState // The state of the DB security group does not allow deletion. // func (c *RDS) RevokeDBSecurityGroupIngress(input *RevokeDBSecurityGroupIngressInput) (*RevokeDBSecurityGroupIngressOutput, error) { req, out := c.RevokeDBSecurityGroupIngressRequest(input) err := req.Send() return out, err } // Describes a quota for an AWS account, for example, the number of DB instances // allowed. type AccountQuota struct { _ struct{} `type:"structure"` // The name of the Amazon RDS quota for this AWS account. AccountQuotaName *string `type:"string"` // The maximum allowed value for the quota. Max *int64 `type:"long"` // The amount currently used toward the quota maximum. Used *int64 `type:"long"` } // String returns the string representation func (s AccountQuota) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AccountQuota) GoString() string { return s.String() } type AddRoleToDBClusterInput struct { _ struct{} `type:"structure"` // The name of the DB cluster to associate the IAM role with. // // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` // The Amazon Resource Name (ARN) of the IAM role to associate with the Aurora // DB cluster, for example arn:aws:iam::123456789012:role/AuroraAccessRole. // // RoleArn is a required field RoleArn *string `type:"string" required:"true"` } // String returns the string representation func (s AddRoleToDBClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddRoleToDBClusterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddRoleToDBClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddRoleToDBClusterInput"} if s.DBClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterIdentifier")) } if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddRoleToDBClusterOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddRoleToDBClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddRoleToDBClusterOutput) GoString() string { return s.String() } type AddSourceIdentifierToSubscriptionInput struct { _ struct{} `type:"structure"` // The identifier of the event source to be added. An identifier must begin // with a letter and must contain only ASCII letters, digits, and hyphens; it // cannot end with a hyphen or contain two consecutive hyphens. // // Constraints: // // * If the source type is a DB instance, then a DBInstanceIdentifier must // be supplied. // // * If the source type is a DB security group, a DBSecurityGroupName must // be supplied. // // * If the source type is a DB parameter group, a DBParameterGroupName must // be supplied. // // * If the source type is a DB snapshot, a DBSnapshotIdentifier must be // supplied. // // SourceIdentifier is a required field SourceIdentifier *string `type:"string" required:"true"` // The name of the RDS event notification subscription you want to add a source // identifier to. // // SubscriptionName is a required field SubscriptionName *string `type:"string" required:"true"` } // String returns the string representation func (s AddSourceIdentifierToSubscriptionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddSourceIdentifierToSubscriptionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddSourceIdentifierToSubscriptionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddSourceIdentifierToSubscriptionInput"} if s.SourceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SourceIdentifier")) } if s.SubscriptionName == nil { invalidParams.Add(request.NewErrParamRequired("SubscriptionName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddSourceIdentifierToSubscriptionOutput struct { _ struct{} `type:"structure"` // Contains the results of a successful invocation of the DescribeEventSubscriptions // action. EventSubscription *EventSubscription `type:"structure"` } // String returns the string representation func (s AddSourceIdentifierToSubscriptionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddSourceIdentifierToSubscriptionOutput) GoString() string { return s.String() } type AddTagsToResourceInput struct { _ struct{} `type:"structure"` // The Amazon RDS resource the tags will be added to. This value is an Amazon // Resource Name (ARN). For information about creating an ARN, see Constructing // an RDS Amazon Resource Name (ARN) (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.ARN.html#USER_Tagging.ARN.Constructing). // // ResourceName is a required field ResourceName *string `type:"string" required:"true"` // The tags to be assigned to the Amazon RDS resource. // // Tags is a required field Tags []*Tag `locationNameList:"Tag" type:"list" required:"true"` } // String returns the string representation func (s AddTagsToResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsToResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsToResourceInput"} if s.ResourceName == nil { invalidParams.Add(request.NewErrParamRequired("ResourceName")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddTagsToResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddTagsToResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToResourceOutput) GoString() string { return s.String() } type ApplyPendingMaintenanceActionInput struct { _ struct{} `type:"structure"` // The pending maintenance action to apply to this resource. // // Valid values: system-update, db-upgrade // // ApplyAction is a required field ApplyAction *string `type:"string" required:"true"` // A value that specifies the type of opt-in request, or undoes an opt-in request. // An opt-in request of type immediate cannot be undone. // // Valid values: // // * immediate - Apply the maintenance action immediately. // // * next-maintenance - Apply the maintenance action during the next maintenance // window for the resource. // // * undo-opt-in - Cancel any existing next-maintenance opt-in requests. // // OptInType is a required field OptInType *string `type:"string" required:"true"` // The RDS Amazon Resource Name (ARN) of the resource that the pending maintenance // action applies to. For information about creating an ARN, see Constructing // an RDS Amazon Resource Name (ARN) (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.ARN.html#USER_Tagging.ARN.Constructing). // // ResourceIdentifier is a required field ResourceIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s ApplyPendingMaintenanceActionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ApplyPendingMaintenanceActionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ApplyPendingMaintenanceActionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ApplyPendingMaintenanceActionInput"} if s.ApplyAction == nil { invalidParams.Add(request.NewErrParamRequired("ApplyAction")) } if s.OptInType == nil { invalidParams.Add(request.NewErrParamRequired("OptInType")) } if s.ResourceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ResourceIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ApplyPendingMaintenanceActionOutput struct { _ struct{} `type:"structure"` // Describes the pending maintenance actions for a resource. ResourcePendingMaintenanceActions *ResourcePendingMaintenanceActions `type:"structure"` } // String returns the string representation func (s ApplyPendingMaintenanceActionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ApplyPendingMaintenanceActionOutput) GoString() string { return s.String() } type AuthorizeDBSecurityGroupIngressInput struct { _ struct{} `type:"structure"` // The IP range to authorize. CIDRIP *string `type:"string"` // The name of the DB security group to add authorization to. // // DBSecurityGroupName is a required field DBSecurityGroupName *string `type:"string" required:"true"` // Id of the EC2 security group to authorize. For VPC DB security groups, EC2SecurityGroupId // must be provided. Otherwise, EC2SecurityGroupOwnerId and either EC2SecurityGroupName // or EC2SecurityGroupId must be provided. EC2SecurityGroupId *string `type:"string"` // Name of the EC2 security group to authorize. For VPC DB security groups, // EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId and // either EC2SecurityGroupName or EC2SecurityGroupId must be provided. EC2SecurityGroupName *string `type:"string"` // AWS account number of the owner of the EC2 security group specified in the // EC2SecurityGroupName parameter. The AWS Access Key ID is not an acceptable // value. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, // EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId // must be provided. EC2SecurityGroupOwnerId *string `type:"string"` } // String returns the string representation func (s AuthorizeDBSecurityGroupIngressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AuthorizeDBSecurityGroupIngressInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AuthorizeDBSecurityGroupIngressInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AuthorizeDBSecurityGroupIngressInput"} if s.DBSecurityGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DBSecurityGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AuthorizeDBSecurityGroupIngressOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * DescribeDBSecurityGroups // // * AuthorizeDBSecurityGroupIngress // // * CreateDBSecurityGroup // // * RevokeDBSecurityGroupIngress // // This data type is used as a response element in the DescribeDBSecurityGroups // action. DBSecurityGroup *DBSecurityGroup `type:"structure"` } // String returns the string representation func (s AuthorizeDBSecurityGroupIngressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AuthorizeDBSecurityGroupIngressOutput) GoString() string { return s.String() } // Contains Availability Zone information. // // This data type is used as an element in the following data type: // // * OrderableDBInstanceOption type AvailabilityZone struct { _ struct{} `type:"structure"` // The name of the availability zone. Name *string `type:"string"` } // String returns the string representation func (s AvailabilityZone) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AvailabilityZone) GoString() string { return s.String() } // A CA certificate for an AWS account. type Certificate struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) for the certificate. CertificateArn *string `type:"string"` // The unique key that identifies a certificate. CertificateIdentifier *string `type:"string"` // The type of the certificate. CertificateType *string `type:"string"` // The thumbprint of the certificate. Thumbprint *string `type:"string"` // The starting date from which the certificate is valid. ValidFrom *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The final date that the certificate continues to be valid. ValidTill *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s Certificate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Certificate) GoString() string { return s.String() } // This data type is used as a response element in the action DescribeDBEngineVersions. type CharacterSet struct { _ struct{} `type:"structure"` // The description of the character set. CharacterSetDescription *string `type:"string"` // The name of the character set. CharacterSetName *string `type:"string"` } // String returns the string representation func (s CharacterSet) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CharacterSet) GoString() string { return s.String() } type CopyDBClusterParameterGroupInput struct { _ struct{} `type:"structure"` // The identifier or Amazon Resource Name (ARN) for the source DB cluster parameter // group. For information about creating an ARN, see Constructing an RDS Amazon // Resource Name (ARN) (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.ARN.html#USER_Tagging.ARN.Constructing). // // Constraints: // // * Must specify a valid DB cluster parameter group. // // * If the source DB cluster parameter group is in the same region as the // copy, specify a valid DB parameter group identifier, for example my-db-cluster-param-group, // or a valid ARN. // // * If the source DB parameter group is in a different region than the copy, // specify a valid DB cluster parameter group ARN, for example arn:aws:rds:us-east-1:123456789012:cluster-pg:custom-cluster-group1. // // SourceDBClusterParameterGroupIdentifier is a required field SourceDBClusterParameterGroupIdentifier *string `type:"string" required:"true"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` // A description for the copied DB cluster parameter group. // // TargetDBClusterParameterGroupDescription is a required field TargetDBClusterParameterGroupDescription *string `type:"string" required:"true"` // The identifier for the copied DB cluster parameter group. // // Constraints: // // * Cannot be null, empty, or blank // // * Must contain from 1 to 255 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // Example: my-cluster-param-group1 // // TargetDBClusterParameterGroupIdentifier is a required field TargetDBClusterParameterGroupIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s CopyDBClusterParameterGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyDBClusterParameterGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CopyDBClusterParameterGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CopyDBClusterParameterGroupInput"} if s.SourceDBClusterParameterGroupIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SourceDBClusterParameterGroupIdentifier")) } if s.TargetDBClusterParameterGroupDescription == nil { invalidParams.Add(request.NewErrParamRequired("TargetDBClusterParameterGroupDescription")) } if s.TargetDBClusterParameterGroupIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("TargetDBClusterParameterGroupIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CopyDBClusterParameterGroupOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the CreateDBClusterParameterGroup // or CopyDBClusterParameterGroup action. // // This data type is used as a request parameter in the DeleteDBClusterParameterGroup // action, and as a response element in the DescribeDBClusterParameterGroups // action. DBClusterParameterGroup *DBClusterParameterGroup `type:"structure"` } // String returns the string representation func (s CopyDBClusterParameterGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyDBClusterParameterGroupOutput) GoString() string { return s.String() } type CopyDBClusterSnapshotInput struct { _ struct{} `type:"structure"` // The identifier of the DB cluster snapshot to copy. This parameter is not // case-sensitive. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // Example: my-cluster-snapshot1 // // SourceDBClusterSnapshotIdentifier is a required field SourceDBClusterSnapshotIdentifier *string `type:"string" required:"true"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` // The identifier of the new DB cluster snapshot to create from the source DB // cluster snapshot. This parameter is not case-sensitive. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // Example: my-cluster-snapshot2 // // TargetDBClusterSnapshotIdentifier is a required field TargetDBClusterSnapshotIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s CopyDBClusterSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyDBClusterSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CopyDBClusterSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CopyDBClusterSnapshotInput"} if s.SourceDBClusterSnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SourceDBClusterSnapshotIdentifier")) } if s.TargetDBClusterSnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("TargetDBClusterSnapshotIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CopyDBClusterSnapshotOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBClusterSnapshot // // * DeleteDBClusterSnapshot // // This data type is used as a response element in the DescribeDBClusterSnapshots // action. DBClusterSnapshot *DBClusterSnapshot `type:"structure"` } // String returns the string representation func (s CopyDBClusterSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyDBClusterSnapshotOutput) GoString() string { return s.String() } type CopyDBParameterGroupInput struct { _ struct{} `type:"structure"` // The identifier or ARN for the source DB parameter group. For information // about creating an ARN, see Constructing an RDS Amazon Resource Name (ARN) // (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.ARN.html#USER_Tagging.ARN.Constructing). // // Constraints: // // * Must specify a valid DB parameter group. // // * Must specify a valid DB parameter group identifier, for example my-db-param-group, // or a valid ARN. // // SourceDBParameterGroupIdentifier is a required field SourceDBParameterGroupIdentifier *string `type:"string" required:"true"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` // A description for the copied DB parameter group. // // TargetDBParameterGroupDescription is a required field TargetDBParameterGroupDescription *string `type:"string" required:"true"` // The identifier for the copied DB parameter group. // // Constraints: // // * Cannot be null, empty, or blank // // * Must contain from 1 to 255 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // Example: my-db-parameter-group // // TargetDBParameterGroupIdentifier is a required field TargetDBParameterGroupIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s CopyDBParameterGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyDBParameterGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CopyDBParameterGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CopyDBParameterGroupInput"} if s.SourceDBParameterGroupIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SourceDBParameterGroupIdentifier")) } if s.TargetDBParameterGroupDescription == nil { invalidParams.Add(request.NewErrParamRequired("TargetDBParameterGroupDescription")) } if s.TargetDBParameterGroupIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("TargetDBParameterGroupIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CopyDBParameterGroupOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the CreateDBParameterGroup // action. // // This data type is used as a request parameter in the DeleteDBParameterGroup // action, and as a response element in the DescribeDBParameterGroups action. DBParameterGroup *DBParameterGroup `type:"structure"` } // String returns the string representation func (s CopyDBParameterGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyDBParameterGroupOutput) GoString() string { return s.String() } type CopyDBSnapshotInput struct { _ struct{} `type:"structure"` // True to copy all tags from the source DB snapshot to the target DB snapshot; // otherwise false. The default is false. CopyTags *bool `type:"boolean"` // The AWS Key Management Service (AWS KMS) key identifier for an encrypted // DB snapshot. The KMS key identifier is the Amazon Resource Name (ARN) or // the KMS key alias for the KMS encryption key. // // If you copy an unencrypted DB snapshot and specify a value for the KmsKeyId // parameter, Amazon RDS encrypts the target DB snapshot using the specified // KMS encryption key. // // If you copy an encrypted DB snapshot from your AWS account, you can specify // a value for KmsKeyId to encrypt the copy with a new KMS encryption key. If // you don't specify a value for KmsKeyId then the copy of the DB snapshot is // encrypted with the same KMS key as the source DB snapshot. // // If you copy an encrypted DB snapshot that is shared from another AWS account, // then you must specify a value for KmsKeyId. KmsKeyId *string `type:"string"` // The identifier for the source DB snapshot. // // If you are copying from a shared manual DB snapshot, this must be the ARN // of the shared DB snapshot. // // Constraints: // // * Must specify a valid system snapshot in the "available" state. // // * If the source snapshot is in the same region as the copy, specify a // valid DB snapshot identifier. // // * If the source snapshot is in a different region than the copy, specify // a valid DB snapshot ARN. For more information, go to Copying a DB Snapshot // (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CopySnapshot.html). // // Example: rds:mydb-2012-04-02-00-01 // // Example: arn:aws:rds:rr-regn-1:123456789012:snapshot:mysql-instance1-snapshot-20130805 // // SourceDBSnapshotIdentifier is a required field SourceDBSnapshotIdentifier *string `type:"string" required:"true"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` // The identifier for the copied snapshot. // // Constraints: // // * Cannot be null, empty, or blank // // * Must contain from 1 to 255 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // Example: my-db-snapshot // // TargetDBSnapshotIdentifier is a required field TargetDBSnapshotIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s CopyDBSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyDBSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CopyDBSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CopyDBSnapshotInput"} if s.SourceDBSnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SourceDBSnapshotIdentifier")) } if s.TargetDBSnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("TargetDBSnapshotIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CopyDBSnapshotOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBSnapshot // // * DeleteDBSnapshot // // This data type is used as a response element in the DescribeDBSnapshots action. DBSnapshot *DBSnapshot `type:"structure"` } // String returns the string representation func (s CopyDBSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyDBSnapshotOutput) GoString() string { return s.String() } type CopyOptionGroupInput struct { _ struct{} `type:"structure"` // The identifier or ARN for the source option group. For information about // creating an ARN, see Constructing an RDS Amazon Resource Name (ARN) (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.ARN.html#USER_Tagging.ARN.Constructing). // // Constraints: // // * Must specify a valid option group. // // * If the source option group is in the same region as the copy, specify // a valid option group identifier, for example my-option-group, or a valid // ARN. // // * If the source option group is in a different region than the copy, specify // a valid option group ARN, for example arn:aws:rds:us-west-2:123456789012:og:special-options. // // SourceOptionGroupIdentifier is a required field SourceOptionGroupIdentifier *string `type:"string" required:"true"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` // The description for the copied option group. // // TargetOptionGroupDescription is a required field TargetOptionGroupDescription *string `type:"string" required:"true"` // The identifier for the copied option group. // // Constraints: // // * Cannot be null, empty, or blank // // * Must contain from 1 to 255 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // Example: my-option-group // // TargetOptionGroupIdentifier is a required field TargetOptionGroupIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s CopyOptionGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyOptionGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CopyOptionGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CopyOptionGroupInput"} if s.SourceOptionGroupIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SourceOptionGroupIdentifier")) } if s.TargetOptionGroupDescription == nil { invalidParams.Add(request.NewErrParamRequired("TargetOptionGroupDescription")) } if s.TargetOptionGroupIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("TargetOptionGroupIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CopyOptionGroupOutput struct { _ struct{} `type:"structure"` OptionGroup *OptionGroup `type:"structure"` } // String returns the string representation func (s CopyOptionGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyOptionGroupOutput) GoString() string { return s.String() } type CreateDBClusterInput struct { _ struct{} `type:"structure"` // A list of EC2 Availability Zones that instances in the DB cluster can be // created in. For information on regions and Availability Zones, see Regions // and Availability Zones (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html). AvailabilityZones []*string `locationNameList:"AvailabilityZone" type:"list"` // The number of days for which automated backups are retained. You must specify // a minimum value of 1. // // Default: 1 // // Constraints: // // * Must be a value from 1 to 35 BackupRetentionPeriod *int64 `type:"integer"` // A value that indicates that the DB cluster should be associated with the // specified CharacterSet. CharacterSetName *string `type:"string"` // The DB cluster identifier. This parameter is stored as a lowercase string. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // Example: my-cluster1 // // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` // The name of the DB cluster parameter group to associate with this DB cluster. // If this argument is omitted, default.aurora5.6 will be used. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens DBClusterParameterGroupName *string `type:"string"` // A DB subnet group to associate with this DB cluster. // // Constraints: Must contain no more than 255 alphanumeric characters, periods, // underscores, spaces, or hyphens. Must not be default. // // Example: mySubnetgroup DBSubnetGroupName *string `type:"string"` // The name for your database of up to 8 alpha-numeric characters. If you do // not provide a name, Amazon RDS will not create a database in the DB cluster // you are creating. DatabaseName *string `type:"string"` // The name of the database engine to be used for this DB cluster. // // Valid Values: aurora // // Engine is a required field Engine *string `type:"string" required:"true"` // The version number of the database engine to use. // // Aurora // // Example: 5.6.10a EngineVersion *string `type:"string"` // The KMS key identifier for an encrypted DB cluster. // // The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption // key. If you are creating a DB cluster with the same AWS account that owns // the KMS encryption key used to encrypt the new DB cluster, then you can use // the KMS key alias instead of the ARN for the KM encryption key. // // If the StorageEncrypted parameter is true, and you do not specify a value // for the KmsKeyId parameter, then Amazon RDS will use your default encryption // key. AWS KMS creates the default encryption key for your AWS account. Your // AWS account has a different default encryption key for each AWS region. KmsKeyId *string `type:"string"` // The password for the master database user. This password can contain any // printable ASCII character except "/", """, or "@". // // Constraints: Must contain from 8 to 41 characters. MasterUserPassword *string `type:"string"` // The name of the master user for the DB cluster. // // Constraints: // // * Must be 1 to 16 alphanumeric characters. // // * First character must be a letter. // // * Cannot be a reserved word for the chosen database engine. MasterUsername *string `type:"string"` // A value that indicates that the DB cluster should be associated with the // specified option group. // // Permanent options cannot be removed from an option group. The option group // cannot be removed from a DB cluster once it is associated with a DB cluster. OptionGroupName *string `type:"string"` // The port number on which the instances in the DB cluster accept connections. // // Default: 3306 Port *int64 `type:"integer"` // The daily time range during which automated backups are created if automated // backups are enabled using the BackupRetentionPeriod parameter. // // Default: A 30-minute window selected at random from an 8-hour block of time // per region. To see the time blocks available, see Adjusting the Preferred // Maintenance Window (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AdjustingTheMaintenanceWindow.html) // in the Amazon RDS User Guide. // // Constraints: // // * Must be in the format hh24:mi-hh24:mi. // // * Times should be in Universal Coordinated Time (UTC). // // * Must not conflict with the preferred maintenance window. // // * Must be at least 30 minutes. PreferredBackupWindow *string `type:"string"` // The weekly time range during which system maintenance can occur, in Universal // Coordinated Time (UTC). // // Format: ddd:hh24:mi-ddd:hh24:mi // // Default: A 30-minute window selected at random from an 8-hour block of time // per region, occurring on a random day of the week. To see the time blocks // available, see Adjusting the Preferred Maintenance Window (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AdjustingTheMaintenanceWindow.html) // in the Amazon RDS User Guide. // // Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun // // Constraints: Minimum 30-minute window. PreferredMaintenanceWindow *string `type:"string"` // The Amazon Resource Name (ARN) of the source DB cluster if this DB cluster // is created as a Read Replica. ReplicationSourceIdentifier *string `type:"string"` // Specifies whether the DB cluster is encrypted. StorageEncrypted *bool `type:"boolean"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` // A list of EC2 VPC security groups to associate with this DB cluster. VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` } // String returns the string representation func (s CreateDBClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDBClusterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDBClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDBClusterInput"} if s.DBClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterIdentifier")) } if s.Engine == nil { invalidParams.Add(request.NewErrParamRequired("Engine")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateDBClusterOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBCluster // // * DeleteDBCluster // // * FailoverDBCluster // // * ModifyDBCluster // // * RestoreDBClusterFromSnapshot // // * RestoreDBClusterToPointInTime // // This data type is used as a response element in the DescribeDBClusters action. DBCluster *DBCluster `type:"structure"` } // String returns the string representation func (s CreateDBClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDBClusterOutput) GoString() string { return s.String() } type CreateDBClusterParameterGroupInput struct { _ struct{} `type:"structure"` // The name of the DB cluster parameter group. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // This value is stored as a lowercase string. // // DBClusterParameterGroupName is a required field DBClusterParameterGroupName *string `type:"string" required:"true"` // The DB cluster parameter group family name. A DB cluster parameter group // can be associated with one and only one DB cluster parameter group family, // and can be applied only to a DB cluster running a database engine and engine // version compatible with that DB cluster parameter group family. // // DBParameterGroupFamily is a required field DBParameterGroupFamily *string `type:"string" required:"true"` // The description for the DB cluster parameter group. // // Description is a required field Description *string `type:"string" required:"true"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateDBClusterParameterGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDBClusterParameterGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDBClusterParameterGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDBClusterParameterGroupInput"} if s.DBClusterParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterParameterGroupName")) } if s.DBParameterGroupFamily == nil { invalidParams.Add(request.NewErrParamRequired("DBParameterGroupFamily")) } if s.Description == nil { invalidParams.Add(request.NewErrParamRequired("Description")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateDBClusterParameterGroupOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the CreateDBClusterParameterGroup // or CopyDBClusterParameterGroup action. // // This data type is used as a request parameter in the DeleteDBClusterParameterGroup // action, and as a response element in the DescribeDBClusterParameterGroups // action. DBClusterParameterGroup *DBClusterParameterGroup `type:"structure"` } // String returns the string representation func (s CreateDBClusterParameterGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDBClusterParameterGroupOutput) GoString() string { return s.String() } type CreateDBClusterSnapshotInput struct { _ struct{} `type:"structure"` // The identifier of the DB cluster to create a snapshot for. This parameter // is not case-sensitive. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // Example: my-cluster1 // // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` // The identifier of the DB cluster snapshot. This parameter is stored as a // lowercase string. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // Example: my-cluster1-snapshot1 // // DBClusterSnapshotIdentifier is a required field DBClusterSnapshotIdentifier *string `type:"string" required:"true"` // The tags to be assigned to the DB cluster snapshot. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateDBClusterSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDBClusterSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDBClusterSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDBClusterSnapshotInput"} if s.DBClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterIdentifier")) } if s.DBClusterSnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterSnapshotIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateDBClusterSnapshotOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBClusterSnapshot // // * DeleteDBClusterSnapshot // // This data type is used as a response element in the DescribeDBClusterSnapshots // action. DBClusterSnapshot *DBClusterSnapshot `type:"structure"` } // String returns the string representation func (s CreateDBClusterSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDBClusterSnapshotOutput) GoString() string { return s.String() } type CreateDBInstanceInput struct { _ struct{} `type:"structure"` // The amount of storage (in gigabytes) to be initially allocated for the database // instance. // // Type: Integer // // MySQL // // Constraints: Must be an integer from 5 to 6144. // // MariaDB // // Constraints: Must be an integer from 5 to 6144. // // PostgreSQL // // Constraints: Must be an integer from 5 to 6144. // // Oracle // // Constraints: Must be an integer from 10 to 6144. // // SQL Server // // Constraints: Must be an integer from 200 to 4096 (Standard Edition and Enterprise // Edition) or from 20 to 4096 (Express Edition and Web Edition) AllocatedStorage *int64 `type:"integer"` // Indicates that minor engine upgrades will be applied automatically to the // DB instance during the maintenance window. // // Default: true AutoMinorVersionUpgrade *bool `type:"boolean"` // The EC2 Availability Zone that the database instance will be created in. // For information on regions and Availability Zones, see Regions and Availability // Zones (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html). // // Default: A random, system-chosen Availability Zone in the endpoint's region. // // Example: us-east-1d // // Constraint: The AvailabilityZone parameter cannot be specified if the MultiAZ // parameter is set to true. The specified Availability Zone must be in the // same region as the current endpoint. AvailabilityZone *string `type:"string"` // The number of days for which automated backups are retained. Setting this // parameter to a positive number enables backups. Setting this parameter to // 0 disables automated backups. // // Default: 1 // // Constraints: // // * Must be a value from 0 to 35 // // * Cannot be set to 0 if the DB instance is a source to Read Replicas BackupRetentionPeriod *int64 `type:"integer"` // For supported engines, indicates that the DB instance should be associated // with the specified CharacterSet. CharacterSetName *string `type:"string"` // True to copy all tags from the DB instance to snapshots of the DB instance; // otherwise false. The default is false. CopyTagsToSnapshot *bool `type:"boolean"` // The identifier of the DB cluster that the instance will belong to. // // For information on creating a DB cluster, see CreateDBCluster. // // Type: String DBClusterIdentifier *string `type:"string"` // The compute and memory capacity of the DB instance. // // Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge // | db.m2.xlarge |db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large // | db.m3.xlarge | db.m3.2xlarge | db.m4.large | db.m4.xlarge | db.m4.2xlarge // | db.m4.4xlarge | db.m4.10xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge // | db.r3.4xlarge | db.r3.8xlarge | db.t2.micro | db.t2.small | db.t2.medium // | db.t2.large // // DBInstanceClass is a required field DBInstanceClass *string `type:"string" required:"true"` // The DB instance identifier. This parameter is stored as a lowercase string. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens (1 to 15 // for SQL Server). // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // Example: mydbinstance // // DBInstanceIdentifier is a required field DBInstanceIdentifier *string `type:"string" required:"true"` // The meaning of this parameter differs according to the database engine you // use. // // Type: String // // MySQL // // The name of the database to create when the DB instance is created. If this // parameter is not specified, no database is created in the DB instance. // // Constraints: // // * Must contain 1 to 64 alphanumeric characters // // * Cannot be a word reserved by the specified database engine // // MariaDB // // The name of the database to create when the DB instance is created. If this // parameter is not specified, no database is created in the DB instance. // // Constraints: // // * Must contain 1 to 64 alphanumeric characters // // * Cannot be a word reserved by the specified database engine // // PostgreSQL // // The name of the database to create when the DB instance is created. If this // parameter is not specified, the default "postgres" database is created in // the DB instance. // // Constraints: // // * Must contain 1 to 63 alphanumeric characters // // * Must begin with a letter or an underscore. Subsequent characters can // be letters, underscores, or digits (0-9). // // * Cannot be a word reserved by the specified database engine // // Oracle // // The Oracle System ID (SID) of the created DB instance. // // Default: ORCL // // Constraints: // // * Cannot be longer than 8 characters // // SQL Server // // Not applicable. Must be null. // // Amazon Aurora // // The name of the database to create when the primary instance of the DB cluster // is created. If this parameter is not specified, no database is created in // the DB instance. // // Constraints: // // * Must contain 1 to 64 alphanumeric characters // // * Cannot be a word reserved by the specified database engine DBName *string `type:"string"` // The name of the DB parameter group to associate with this DB instance. If // this argument is omitted, the default DBParameterGroup for the specified // engine will be used. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens DBParameterGroupName *string `type:"string"` // A list of DB security groups to associate with this DB instance. // // Default: The default DB security group for the database engine. DBSecurityGroups []*string `locationNameList:"DBSecurityGroupName" type:"list"` // A DB subnet group to associate with this DB instance. // // If there is no DB subnet group, then it is a non-VPC DB instance. DBSubnetGroupName *string `type:"string"` // Specify the Active Directory Domain to create the instance in. Domain *string `type:"string"` // Specify the name of the IAM role to be used when making API calls to the // Directory Service. DomainIAMRoleName *string `type:"string"` // The name of the database engine to be used for this instance. // // Valid Values: mysql | mariadb | oracle-se1 | oracle-se2 | oracle-se | oracle-ee // | sqlserver-ee | sqlserver-se | sqlserver-ex | sqlserver-web | postgres | // aurora // // Not every database engine is available for every AWS region. // // Engine is a required field Engine *string `type:"string" required:"true"` // The version number of the database engine to use. // // The following are the database engines and major and minor versions that // are available with Amazon RDS. Not every database engine is available for // every AWS region. // // Amazon Aurora // // * Version 5.6 (available in these AWS regions: ap-northeast-1, ap-northeast-2, // ap-south-1, ap-southeast-2, eu-west-1, us-east-1, us-west-2): 5.6.10a // // MariaDB // // * Version 10.1 (available in these AWS regions: ap-northeast-1, ap-northeast-2, // ap-south-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, // us-east-1, us-west-1, us-west-2): 10.1.14 // // * Version 10.0 (available in all AWS regions): 10.0.17 | 10.0.24 // // MySQL // // * Version 5.7 (available in all AWS regions): 5.7.10 | 5.7.11 // // * Version 5.6 (available in all AWS regions): 5.6.27 | 5.6.29 // // * Version 5.6 (available in these AWS regions: ap-northeast-1, ap-northeast-2, // ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, // us-gov-west-1, us-west-1, us-west-2): 5.6.23 // // * Version 5.6 (available in these AWS regions: ap-northeast-1, ap-southeast-1, // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, // us-west-1, us-west-2): 5.6.19a | 5.6.19b | 5.6.21 | 5.6.21b | 5.6.22 // // * Version 5.5 (available in all AWS regions): 5.5.46 // // * Version 5.5 (available in these AWS regions: ap-northeast-1, ap-northeast-2, // ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, // us-gov-west-1, us-west-1, us-west-2): 5.5.42 // // * Version 5.5 (available in these AWS regions: ap-northeast-1, ap-southeast-1, // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, // us-west-1, us-west-2): 5.5.40b | 5.5.41 // // * Version 5.5 (available in these AWS regions: ap-northeast-1, ap-southeast-1, // ap-southeast-2, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-west-1, // us-west-2): 5.5.40 | 5.5.40a // // Oracle Database Enterprise Edition (oracle-ee) // // * Version 12.1.0.2 (available in these AWS regions: ap-northeast-1, ap-northeast-2, // ap-south-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, // us-east-1, us-west-1, us-west-2): 12.1.0.2.v5 // // * Version 12.1.0.2 (available in all AWS regions): 12.1.0.2.v1 | 12.1.0.2.v2 // | 12.1.0.2.v3 | 12.1.0.2.v4 // // * Version 12.1.0.1 (available in these AWS regions: ap-northeast-1, ap-southeast-1, // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, // us-west-2): 12.1.0.1.v6 // // * Version 12.1.0.1 (available in these AWS regions: ap-northeast-1, ap-southeast-1, // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, // us-west-1, us-west-2): 12.1.0.1.v3 | 12.1.0.1.v4 | 12.1.0.1.v5 // // * Version 12.1.0.1 (available in these AWS regions: ap-northeast-1, ap-southeast-1, // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, // us-gov-west-1, us-west-1, us-west-2): 12.1.0.1.v1 | 12.1.0.1.v2 // // * Version 11.2.0.4 (available in these AWS regions: ap-northeast-1, ap-northeast-2, // ap-south-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, // us-east-1, us-west-1, us-west-2): 11.2.0.4.v6 | 11.2.0.4.v9 // // * Version 11.2.0.4 (available in all AWS regions): 11.2.0.4.v1 | 11.2.0.4.v3 // | 11.2.0.4.v4 | 11.2.0.4.v5 | 11.2.0.4.v7 | 11.2.0.4.v8 // // Oracle Database Standard Edition Two (oracle-se2) // // * Version 12.1.0.2 (available in these AWS regions: ap-northeast-1, ap-northeast-2, // ap-south-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, // us-east-1, us-west-1, us-west-2): 12.1.0.2.v5 // // * Version 12.1.0.2 (available in all AWS regions): 12.1.0.2.v2 | 12.1.0.2.v3 // | 12.1.0.2.v4 // // Oracle Database Standard Edition One (oracle-se1) // // * Version 12.1.0.1 (available in these AWS regions: ap-northeast-1, ap-southeast-1, // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, // us-west-2): 12.1.0.1.v6 // // * Version 12.1.0.1 (available in these AWS regions: ap-northeast-1, ap-southeast-1, // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, // us-west-1, us-west-2): 12.1.0.1.v3 | 12.1.0.1.v4 | 12.1.0.1.v5 // // * Version 12.1.0.1 (available in these AWS regions: ap-northeast-1, ap-southeast-1, // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, // us-gov-west-1, us-west-1, us-west-2): 12.1.0.1.v1 | 12.1.0.1.v2 // // * Version 11.2.0.4 (available in these AWS regions: ap-northeast-1, ap-northeast-2, // ap-south-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, // us-east-1, us-west-1, us-west-2): 11.2.0.4.v6 | 11.2.0.4.v9 // // * Version 11.2.0.4 (available in all AWS regions): 11.2.0.4.v1 | 11.2.0.4.v3 // | 11.2.0.4.v4 | 11.2.0.4.v5 | 11.2.0.4.v7 | 11.2.0.4.v8 // // Oracle Database Standard Edition (oracle-se) // // * Version 12.1.0.1 (available in these AWS regions: ap-northeast-1, ap-southeast-1, // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, // us-west-2): 12.1.0.1.v6 // // * Version 12.1.0.1 (available in these AWS regions: ap-northeast-1, ap-southeast-1, // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, // us-west-1, us-west-2): 12.1.0.1.v3 | 12.1.0.1.v4 | 12.1.0.1.v5 // // * Version 12.1.0.1 (available in these AWS regions: ap-northeast-1, ap-southeast-1, // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, // us-gov-west-1, us-west-1, us-west-2): 12.1.0.1.v1 | 12.1.0.1.v2 // // * Version 11.2.0.4 (available in these AWS regions: ap-northeast-1, ap-northeast-2, // ap-south-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, // us-east-1, us-west-1, us-west-2): 11.2.0.4.v6 | 11.2.0.4.v9 // // * Version 11.2.0.4 (available in all AWS regions): 11.2.0.4.v1 | 11.2.0.4.v3 // | 11.2.0.4.v4 | 11.2.0.4.v5 | 11.2.0.4.v7 | 11.2.0.4.v8 // // PostgreSQL // // * Version 9.5 (available in these AWS regions: ap-northeast-1, ap-northeast-2, // ap-south-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, // us-east-1, us-west-1, us-west-2): 9.5.2 | 9.5.4 // // * Version 9.4 (available in these AWS regions: ap-northeast-1, ap-northeast-2, // ap-south-1, ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, // us-east-1, us-west-1, us-west-2): 9.4.7 | 9.4.9 // // * Version 9.4 (available in all AWS regions): 9.4.5 // // * Version 9.4 (available in these AWS regions: ap-northeast-1, ap-northeast-2, // ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, // us-gov-west-1, us-west-1, us-west-2): 9.4.1 | 9.4.4 // // * Version 9.3 (available in these AWS regions: ap-northeast-1, ap-southeast-1, // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, // us-west-1, us-west-2): 9.3.10 | 9.3.3 | 9.3.5 | 9.3.6 | 9.3.9 // // * Version 9.3 (available in these AWS regions: ap-northeast-1, ap-southeast-1, // ap-southeast-2, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-west-1, // us-west-2): 9.3.1 | 9.3.2 // // * Version 9.3 (available in these AWS regions: ap-northeast-1, ap-southeast-1, // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, // us-west-2): 9.3.12 | 9.3.14 // // Microsoft SQL Server Enterprise Edition (sqlserver-ee) // // * Version 11.00 (available in all AWS regions): 11.00.2100.60.v1 | 11.00.5058.0.v1 // | 11.00.6020.0.v1 // // * Version 10.50 (available in all AWS regions): 10.50.2789.0.v1 | 10.50.6000.34.v1 // | 10.50.6529.0.v1 // // Microsoft SQL Server Express Edition (sqlserver-ex) // // * Version 12.00 (available in all AWS regions): 12.00.4422.0.v1 // // * Version 11.00 (available in all AWS regions): 11.00.2100.60.v1 | 11.00.5058.0.v1 // | 11.00.6020.0.v1 // // * Version 10.50 (available in all AWS regions): 10.50.2789.0.v1 | 10.50.6000.34.v1 // | 10.50.6529.0.v1 // // Microsoft SQL Server Standard Edition (sqlserver-se) // // * Version 12.00 (available in all AWS regions): 12.00.4422.0.v1 // // * Version 11.00 (available in all AWS regions): 11.00.2100.60.v1 | 11.00.5058.0.v1 // | 11.00.6020.0.v1 // // * Version 10.50 (available in all AWS regions): 10.50.2789.0.v1 | 10.50.6000.34.v1 // | 10.50.6529.0.v1 // // Microsoft SQL Server Web Edition (sqlserver-web) // // * Version 12.00 (available in all AWS regions): 12.00.4422.0.v1 // // * Version 11.00 (available in all AWS regions): 11.00.2100.60.v1 | 11.00.5058.0.v1 // | 11.00.6020.0.v1 // // * Version 10.50 (available in all AWS regions): 10.50.2789.0.v1 | 10.50.6000.34.v1 // | 10.50.6529.0.v1 EngineVersion *string `type:"string"` // The amount of Provisioned IOPS (input/output operations per second) to be // initially allocated for the DB instance. // // Constraints: Must be a multiple between 3 and 10 of the storage amount for // the DB instance. Must also be an integer multiple of 1000. For example, if // the size of your DB instance is 500 GB, then your Iops value can be 2000, // 3000, 4000, or 5000. Iops *int64 `type:"integer"` // The KMS key identifier for an encrypted DB instance. // // The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption // key. If you are creating a DB instance with the same AWS account that owns // the KMS encryption key used to encrypt the new DB instance, then you can // use the KMS key alias instead of the ARN for the KM encryption key. // // If the StorageEncrypted parameter is true, and you do not specify a value // for the KmsKeyId parameter, then Amazon RDS will use your default encryption // key. AWS KMS creates the default encryption key for your AWS account. Your // AWS account has a different default encryption key for each AWS region. KmsKeyId *string `type:"string"` // License model information for this DB instance. // // Valid values: license-included | bring-your-own-license | general-public-license LicenseModel *string `type:"string"` // The password for the master database user. Can be any printable ASCII character // except "/", """, or "@". // // Type: String // // MySQL // // Constraints: Must contain from 8 to 41 characters. // // MariaDB // // Constraints: Must contain from 8 to 41 characters. // // Oracle // // Constraints: Must contain from 8 to 30 characters. // // SQL Server // // Constraints: Must contain from 8 to 128 characters. // // PostgreSQL // // Constraints: Must contain from 8 to 128 characters. // // Amazon Aurora // // Constraints: Must contain from 8 to 41 characters. MasterUserPassword *string `type:"string"` // The name of master user for the client DB instance. // // MySQL // // Constraints: // // * Must be 1 to 16 alphanumeric characters. // // * First character must be a letter. // // * Cannot be a reserved word for the chosen database engine. // // MariaDB // // Constraints: // // * Must be 1 to 16 alphanumeric characters. // // * Cannot be a reserved word for the chosen database engine. // // Type: String // // Oracle // // Constraints: // // * Must be 1 to 30 alphanumeric characters. // // * First character must be a letter. // // * Cannot be a reserved word for the chosen database engine. // // SQL Server // // Constraints: // // * Must be 1 to 128 alphanumeric characters. // // * First character must be a letter. // // * Cannot be a reserved word for the chosen database engine. // // PostgreSQL // // Constraints: // // * Must be 1 to 63 alphanumeric characters. // // * First character must be a letter. // // * Cannot be a reserved word for the chosen database engine. MasterUsername *string `type:"string"` // The interval, in seconds, between points when Enhanced Monitoring metrics // are collected for the DB instance. To disable collecting Enhanced Monitoring // metrics, specify 0. The default is 0. // // If MonitoringRoleArn is specified, then you must also set MonitoringInterval // to a value other than 0. // // Valid Values: 0, 1, 5, 10, 15, 30, 60 MonitoringInterval *int64 `type:"integer"` // The ARN for the IAM role that permits RDS to send enhanced monitoring metrics // to CloudWatch Logs. For example, arn:aws:iam:123456789012:role/emaccess. // For information on creating a monitoring role, go to To create an IAM role // for Amazon RDS Enhanced Monitoring (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html#USER_Monitoring.OS.IAMRole). // // If MonitoringInterval is set to a value other than 0, then you must supply // a MonitoringRoleArn value. MonitoringRoleArn *string `type:"string"` // Specifies if the DB instance is a Multi-AZ deployment. You cannot set the // AvailabilityZone parameter if the MultiAZ parameter is set to true. MultiAZ *bool `type:"boolean"` // Indicates that the DB instance should be associated with the specified option // group. // // Permanent options, such as the TDE option for Oracle Advanced Security TDE, // cannot be removed from an option group, and that option group cannot be removed // from a DB instance once it is associated with a DB instance OptionGroupName *string `type:"string"` // The port number on which the database accepts connections. // // MySQL // // Default: 3306 // // Valid Values: 1150-65535 // // Type: Integer // // MariaDB // // Default: 3306 // // Valid Values: 1150-65535 // // Type: Integer // // PostgreSQL // // Default: 5432 // // Valid Values: 1150-65535 // // Type: Integer // // Oracle // // Default: 1521 // // Valid Values: 1150-65535 // // SQL Server // // Default: 1433 // // Valid Values: 1150-65535 except for 1434, 3389, 47001, 49152, and 49152 through // 49156. // // Amazon Aurora // // Default: 3306 // // Valid Values: 1150-65535 // // Type: Integer Port *int64 `type:"integer"` // The daily time range during which automated backups are created if automated // backups are enabled, using the BackupRetentionPeriod parameter. For more // information, see DB Instance Backups (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.BackingUpAndRestoringAmazonRDSInstances.html). // // Default: A 30-minute window selected at random from an 8-hour block of time // per region. To see the time blocks available, see Adjusting the Preferred // Maintenance Window (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AdjustingTheMaintenanceWindow.html) // in the Amazon RDS User Guide. // // Constraints: // // * Must be in the format hh24:mi-hh24:mi. // // * Times should be in Universal Coordinated Time (UTC). // // * Must not conflict with the preferred maintenance window. // // * Must be at least 30 minutes. PreferredBackupWindow *string `type:"string"` // The weekly time range during which system maintenance can occur, in Universal // Coordinated Time (UTC). For more information, see DB Instance Maintenance // (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBMaintenance.html). // // Format: ddd:hh24:mi-ddd:hh24:mi // // Default: A 30-minute window selected at random from an 8-hour block of time // per region, occurring on a random day of the week. To see the time blocks // available, see Adjusting the Preferred Maintenance Window (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AdjustingTheMaintenanceWindow.html) // in the Amazon RDS User Guide. // // Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun // // Constraints: Minimum 30-minute window. PreferredMaintenanceWindow *string `type:"string"` // A value that specifies the order in which an Aurora Replica is promoted to // the primary instance after a failure of the existing primary instance. For // more information, see Fault Tolerance for an Aurora DB Cluster (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Managing.html#Aurora.Managing.FaultTolerance). // // Default: 1 // // Valid Values: 0 - 15 PromotionTier *int64 `type:"integer"` // Specifies the accessibility options for the DB instance. A value of true // specifies an Internet-facing instance with a publicly resolvable DNS name, // which resolves to a public IP address. A value of false specifies an internal // instance with a DNS name that resolves to a private IP address. // // Default: The default behavior varies depending on whether a VPC has been // requested or not. The following list shows the default behavior in each case. // // * Default VPC: true // // * VPC: false // // If no DB subnet group has been specified as part of the request and the PubliclyAccessible // value has not been set, the DB instance will be publicly accessible. If a // specific DB subnet group has been specified as part of the request and the // PubliclyAccessible value has not been set, the DB instance will be private. PubliclyAccessible *bool `type:"boolean"` // Specifies whether the DB instance is encrypted. // // Default: false StorageEncrypted *bool `type:"boolean"` // Specifies the storage type to be associated with the DB instance. // // Valid values: standard | gp2 | io1 // // If you specify io1, you must also include a value for the Iops parameter. // // Default: io1 if the Iops parameter is specified; otherwise standard StorageType *string `type:"string"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` // The ARN from the Key Store with which to associate the instance for TDE encryption. TdeCredentialArn *string `type:"string"` // The password for the given ARN from the Key Store in order to access the // device. TdeCredentialPassword *string `type:"string"` // The time zone of the DB instance. The time zone parameter is currently supported // only by Microsoft SQL Server (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_SQLServer.html#SQLServer.Concepts.General.TimeZone). Timezone *string `type:"string"` // A list of EC2 VPC security groups to associate with this DB instance. // // Default: The default EC2 VPC security group for the DB subnet group's VPC. VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` } // String returns the string representation func (s CreateDBInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDBInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDBInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDBInstanceInput"} if s.DBInstanceClass == nil { invalidParams.Add(request.NewErrParamRequired("DBInstanceClass")) } if s.DBInstanceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBInstanceIdentifier")) } if s.Engine == nil { invalidParams.Add(request.NewErrParamRequired("Engine")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateDBInstanceOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBInstance // // * DeleteDBInstance // // * ModifyDBInstance // // This data type is used as a response element in the DescribeDBInstances action. DBInstance *DBInstance `type:"structure"` } // String returns the string representation func (s CreateDBInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDBInstanceOutput) GoString() string { return s.String() } type CreateDBInstanceReadReplicaInput struct { _ struct{} `type:"structure"` // Indicates that minor engine upgrades will be applied automatically to the // Read Replica during the maintenance window. // // Default: Inherits from the source DB instance AutoMinorVersionUpgrade *bool `type:"boolean"` // The Amazon EC2 Availability Zone that the Read Replica will be created in. // // Default: A random, system-chosen Availability Zone in the endpoint's region. // // Example: us-east-1d AvailabilityZone *string `type:"string"` // True to copy all tags from the Read Replica to snapshots of the Read Replica; // otherwise false. The default is false. CopyTagsToSnapshot *bool `type:"boolean"` // The compute and memory capacity of the Read Replica. // // Valid Values: db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.xlarge // |db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge // | db.m3.2xlarge | db.m4.large | db.m4.xlarge | db.m4.2xlarge | db.m4.4xlarge // | db.m4.10xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge // | db.r3.8xlarge | db.t2.micro | db.t2.small | db.t2.medium | db.t2.large // // Default: Inherits from the source DB instance. DBInstanceClass *string `type:"string"` // The DB instance identifier of the Read Replica. This identifier is the unique // key that identifies a DB instance. This parameter is stored as a lowercase // string. // // DBInstanceIdentifier is a required field DBInstanceIdentifier *string `type:"string" required:"true"` // Specifies a DB subnet group for the DB instance. The new DB instance will // be created in the VPC associated with the DB subnet group. If no DB subnet // group is specified, then the new DB instance is not created in a VPC. // // Constraints: // // * Can only be specified if the source DB instance identifier specifies // a DB instance in another region. // // * The specified DB subnet group must be in the same region in which the // operation is running. // // * All Read Replicas in one region that are created from the same source // DB instance must either:> // // Specify DB subnet groups from the same VPC. All these Read Replicas will // be created in the same VPC. // // Not specify a DB subnet group. All these Read Replicas will be created outside // of any VPC. // // Constraints: Must contain no more than 255 alphanumeric characters, periods, // underscores, spaces, or hyphens. Must not be default. // // Example: mySubnetgroup DBSubnetGroupName *string `type:"string"` // The amount of Provisioned IOPS (input/output operations per second) to be // initially allocated for the DB instance. Iops *int64 `type:"integer"` // The interval, in seconds, between points when Enhanced Monitoring metrics // are collected for the Read Replica. To disable collecting Enhanced Monitoring // metrics, specify 0. The default is 0. // // If MonitoringRoleArn is specified, then you must also set MonitoringInterval // to a value other than 0. // // Valid Values: 0, 1, 5, 10, 15, 30, 60 MonitoringInterval *int64 `type:"integer"` // The ARN for the IAM role that permits RDS to send enhanced monitoring metrics // to CloudWatch Logs. For example, arn:aws:iam:123456789012:role/emaccess. // For information on creating a monitoring role, go to To create an IAM role // for Amazon RDS Enhanced Monitoring (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html#USER_Monitoring.OS.IAMRole). // // If MonitoringInterval is set to a value other than 0, then you must supply // a MonitoringRoleArn value. MonitoringRoleArn *string `type:"string"` // The option group the DB instance will be associated with. If omitted, the // default option group for the engine specified will be used. OptionGroupName *string `type:"string"` // The port number that the DB instance uses for connections. // // Default: Inherits from the source DB instance // // Valid Values: 1150-65535 Port *int64 `type:"integer"` // Specifies the accessibility options for the DB instance. A value of true // specifies an Internet-facing instance with a publicly resolvable DNS name, // which resolves to a public IP address. A value of false specifies an internal // instance with a DNS name that resolves to a private IP address. // // Default: The default behavior varies depending on whether a VPC has been // requested or not. The following list shows the default behavior in each case. // // * Default VPC:true // // * VPC:false // // If no DB subnet group has been specified as part of the request and the PubliclyAccessible // value has not been set, the DB instance will be publicly accessible. If a // specific DB subnet group has been specified as part of the request and the // PubliclyAccessible value has not been set, the DB instance will be private. PubliclyAccessible *bool `type:"boolean"` // The identifier of the DB instance that will act as the source for the Read // Replica. Each DB instance can have up to five Read Replicas. // // Constraints: // // * Must be the identifier of an existing MySQL, MariaDB, or PostgreSQL // DB instance. // // * Can specify a DB instance that is a MySQL Read Replica only if the source // is running MySQL 5.6. // // * Can specify a DB instance that is a PostgreSQL Read Replica only if // the source is running PostgreSQL 9.3.5. // // * The specified DB instance must have automatic backups enabled, its backup // retention period must be greater than 0. // // * If the source DB instance is in the same region as the Read Replica, // specify a valid DB instance identifier. // // * If the source DB instance is in a different region than the Read Replica, // specify a valid DB instance ARN. For more information, go to Constructing // a Amazon RDS Amazon Resource Name (ARN) (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.ARN.html#USER_Tagging.ARN.Constructing). // // SourceDBInstanceIdentifier is a required field SourceDBInstanceIdentifier *string `type:"string" required:"true"` // Specifies the storage type to be associated with the Read Replica. // // Valid values: standard | gp2 | io1 // // If you specify io1, you must also include a value for the Iops parameter. // // Default: io1 if the Iops parameter is specified; otherwise standard StorageType *string `type:"string"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateDBInstanceReadReplicaInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDBInstanceReadReplicaInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDBInstanceReadReplicaInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDBInstanceReadReplicaInput"} if s.DBInstanceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBInstanceIdentifier")) } if s.SourceDBInstanceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SourceDBInstanceIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateDBInstanceReadReplicaOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBInstance // // * DeleteDBInstance // // * ModifyDBInstance // // This data type is used as a response element in the DescribeDBInstances action. DBInstance *DBInstance `type:"structure"` } // String returns the string representation func (s CreateDBInstanceReadReplicaOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDBInstanceReadReplicaOutput) GoString() string { return s.String() } type CreateDBParameterGroupInput struct { _ struct{} `type:"structure"` // The DB parameter group family name. A DB parameter group can be associated // with one and only one DB parameter group family, and can be applied only // to a DB instance running a database engine and engine version compatible // with that DB parameter group family. // // DBParameterGroupFamily is a required field DBParameterGroupFamily *string `type:"string" required:"true"` // The name of the DB parameter group. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // This value is stored as a lowercase string. // // DBParameterGroupName is a required field DBParameterGroupName *string `type:"string" required:"true"` // The description for the DB parameter group. // // Description is a required field Description *string `type:"string" required:"true"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateDBParameterGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDBParameterGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDBParameterGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDBParameterGroupInput"} if s.DBParameterGroupFamily == nil { invalidParams.Add(request.NewErrParamRequired("DBParameterGroupFamily")) } if s.DBParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DBParameterGroupName")) } if s.Description == nil { invalidParams.Add(request.NewErrParamRequired("Description")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateDBParameterGroupOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the CreateDBParameterGroup // action. // // This data type is used as a request parameter in the DeleteDBParameterGroup // action, and as a response element in the DescribeDBParameterGroups action. DBParameterGroup *DBParameterGroup `type:"structure"` } // String returns the string representation func (s CreateDBParameterGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDBParameterGroupOutput) GoString() string { return s.String() } type CreateDBSecurityGroupInput struct { _ struct{} `type:"structure"` // The description for the DB security group. // // DBSecurityGroupDescription is a required field DBSecurityGroupDescription *string `type:"string" required:"true"` // The name for the DB security group. This value is stored as a lowercase string. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // * Must not be "Default" // // Example: mysecuritygroup // // DBSecurityGroupName is a required field DBSecurityGroupName *string `type:"string" required:"true"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateDBSecurityGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDBSecurityGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDBSecurityGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDBSecurityGroupInput"} if s.DBSecurityGroupDescription == nil { invalidParams.Add(request.NewErrParamRequired("DBSecurityGroupDescription")) } if s.DBSecurityGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DBSecurityGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateDBSecurityGroupOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * DescribeDBSecurityGroups // // * AuthorizeDBSecurityGroupIngress // // * CreateDBSecurityGroup // // * RevokeDBSecurityGroupIngress // // This data type is used as a response element in the DescribeDBSecurityGroups // action. DBSecurityGroup *DBSecurityGroup `type:"structure"` } // String returns the string representation func (s CreateDBSecurityGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDBSecurityGroupOutput) GoString() string { return s.String() } type CreateDBSnapshotInput struct { _ struct{} `type:"structure"` // The DB instance identifier. This is the unique key that identifies a DB instance. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // DBInstanceIdentifier is a required field DBInstanceIdentifier *string `type:"string" required:"true"` // The identifier for the DB snapshot. // // Constraints: // // * Cannot be null, empty, or blank // // * Must contain from 1 to 255 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // Example: my-snapshot-id // // DBSnapshotIdentifier is a required field DBSnapshotIdentifier *string `type:"string" required:"true"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateDBSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDBSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDBSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDBSnapshotInput"} if s.DBInstanceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBInstanceIdentifier")) } if s.DBSnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBSnapshotIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateDBSnapshotOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBSnapshot // // * DeleteDBSnapshot // // This data type is used as a response element in the DescribeDBSnapshots action. DBSnapshot *DBSnapshot `type:"structure"` } // String returns the string representation func (s CreateDBSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDBSnapshotOutput) GoString() string { return s.String() } type CreateDBSubnetGroupInput struct { _ struct{} `type:"structure"` // The description for the DB subnet group. // // DBSubnetGroupDescription is a required field DBSubnetGroupDescription *string `type:"string" required:"true"` // The name for the DB subnet group. This value is stored as a lowercase string. // // Constraints: Must contain no more than 255 alphanumeric characters, periods, // underscores, spaces, or hyphens. Must not be default. // // Example: mySubnetgroup // // DBSubnetGroupName is a required field DBSubnetGroupName *string `type:"string" required:"true"` // The EC2 Subnet IDs for the DB subnet group. // // SubnetIds is a required field SubnetIds []*string `locationNameList:"SubnetIdentifier" type:"list" required:"true"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateDBSubnetGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDBSubnetGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDBSubnetGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDBSubnetGroupInput"} if s.DBSubnetGroupDescription == nil { invalidParams.Add(request.NewErrParamRequired("DBSubnetGroupDescription")) } if s.DBSubnetGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DBSubnetGroupName")) } if s.SubnetIds == nil { invalidParams.Add(request.NewErrParamRequired("SubnetIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateDBSubnetGroupOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBSubnetGroup // // * ModifyDBSubnetGroup // // * DescribeDBSubnetGroups // // * DeleteDBSubnetGroup // // This data type is used as a response element in the DescribeDBSubnetGroups // action. DBSubnetGroup *DBSubnetGroup `type:"structure"` } // String returns the string representation func (s CreateDBSubnetGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDBSubnetGroupOutput) GoString() string { return s.String() } type CreateEventSubscriptionInput struct { _ struct{} `type:"structure"` // A Boolean value; set to true to activate the subscription, set to false to // create the subscription but not active it. Enabled *bool `type:"boolean"` // A list of event categories for a SourceType that you want to subscribe to. // You can see a list of the categories for a given SourceType in the Events // (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html) // topic in the Amazon RDS User Guide or by using the DescribeEventCategories // action. EventCategories []*string `locationNameList:"EventCategory" type:"list"` // The Amazon Resource Name (ARN) of the SNS topic created for event notification. // The ARN is created by Amazon SNS when you create a topic and subscribe to // it. // // SnsTopicArn is a required field SnsTopicArn *string `type:"string" required:"true"` // The list of identifiers of the event sources for which events will be returned. // If not specified, then all sources are included in the response. An identifier // must begin with a letter and must contain only ASCII letters, digits, and // hyphens; it cannot end with a hyphen or contain two consecutive hyphens. // // Constraints: // // * If SourceIds are supplied, SourceType must also be provided. // // * If the source type is a DB instance, then a DBInstanceIdentifier must // be supplied. // // * If the source type is a DB security group, a DBSecurityGroupName must // be supplied. // // * If the source type is a DB parameter group, a DBParameterGroupName must // be supplied. // // * If the source type is a DB snapshot, a DBSnapshotIdentifier must be // supplied. SourceIds []*string `locationNameList:"SourceId" type:"list"` // The type of source that will be generating the events. For example, if you // want to be notified of events generated by a DB instance, you would set this // parameter to db-instance. if this value is not specified, all events are // returned. // // Valid values: db-instance | db-cluster | db-parameter-group | db-security-group // | db-snapshot | db-cluster-snapshot SourceType *string `type:"string"` // The name of the subscription. // // Constraints: The name must be less than 255 characters. // // SubscriptionName is a required field SubscriptionName *string `type:"string" required:"true"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateEventSubscriptionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateEventSubscriptionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateEventSubscriptionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateEventSubscriptionInput"} if s.SnsTopicArn == nil { invalidParams.Add(request.NewErrParamRequired("SnsTopicArn")) } if s.SubscriptionName == nil { invalidParams.Add(request.NewErrParamRequired("SubscriptionName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateEventSubscriptionOutput struct { _ struct{} `type:"structure"` // Contains the results of a successful invocation of the DescribeEventSubscriptions // action. EventSubscription *EventSubscription `type:"structure"` } // String returns the string representation func (s CreateEventSubscriptionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateEventSubscriptionOutput) GoString() string { return s.String() } type CreateOptionGroupInput struct { _ struct{} `type:"structure"` // Specifies the name of the engine that this option group should be associated // with. // // EngineName is a required field EngineName *string `type:"string" required:"true"` // Specifies the major version of the engine that this option group should be // associated with. // // MajorEngineVersion is a required field MajorEngineVersion *string `type:"string" required:"true"` // The description of the option group. // // OptionGroupDescription is a required field OptionGroupDescription *string `type:"string" required:"true"` // Specifies the name of the option group to be created. // // Constraints: // // * Must be 1 to 255 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // Example: myoptiongroup // // OptionGroupName is a required field OptionGroupName *string `type:"string" required:"true"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateOptionGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateOptionGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateOptionGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateOptionGroupInput"} if s.EngineName == nil { invalidParams.Add(request.NewErrParamRequired("EngineName")) } if s.MajorEngineVersion == nil { invalidParams.Add(request.NewErrParamRequired("MajorEngineVersion")) } if s.OptionGroupDescription == nil { invalidParams.Add(request.NewErrParamRequired("OptionGroupDescription")) } if s.OptionGroupName == nil { invalidParams.Add(request.NewErrParamRequired("OptionGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateOptionGroupOutput struct { _ struct{} `type:"structure"` OptionGroup *OptionGroup `type:"structure"` } // String returns the string representation func (s CreateOptionGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateOptionGroupOutput) GoString() string { return s.String() } // Contains the result of a successful invocation of the following actions: // // * CreateDBCluster // // * DeleteDBCluster // // * FailoverDBCluster // // * ModifyDBCluster // // * RestoreDBClusterFromSnapshot // // * RestoreDBClusterToPointInTime // // This data type is used as a response element in the DescribeDBClusters action. type DBCluster struct { _ struct{} `type:"structure"` // Specifies the allocated storage size in gigabytes (GB). AllocatedStorage *int64 `type:"integer"` // Provides a list of the AWS Identity and Access Management (IAM) roles that // are associated with the DB cluster. IAM roles that are associated with a // DB cluster grant permission for the DB cluster to access other AWS services // on your behalf. AssociatedRoles []*DBClusterRole `locationNameList:"DBClusterRole" type:"list"` // Provides the list of EC2 Availability Zones that instances in the DB cluster // can be created in. AvailabilityZones []*string `locationNameList:"AvailabilityZone" type:"list"` // Specifies the number of days for which automatic DB snapshots are retained. BackupRetentionPeriod *int64 `type:"integer"` // If present, specifies the name of the character set that this cluster is // associated with. CharacterSetName *string `type:"string"` // The Amazon Resource Name (ARN) for the DB cluster. DBClusterArn *string `type:"string"` // Contains a user-supplied DB cluster identifier. This identifier is the unique // key that identifies a DB cluster. DBClusterIdentifier *string `type:"string"` // Provides the list of instances that make up the DB cluster. DBClusterMembers []*DBClusterMember `locationNameList:"DBClusterMember" type:"list"` // Provides the list of option group memberships for this DB cluster. DBClusterOptionGroupMemberships []*DBClusterOptionGroupStatus `locationNameList:"DBClusterOptionGroup" type:"list"` // Specifies the name of the DB cluster parameter group for the DB cluster. DBClusterParameterGroup *string `type:"string"` // Specifies information on the subnet group associated with the DB cluster, // including the name, description, and subnets in the subnet group. DBSubnetGroup *string `type:"string"` // Contains the name of the initial database of this DB cluster that was provided // at create time, if one was specified when the DB cluster was created. This // same name is returned for the life of the DB cluster. DatabaseName *string `type:"string"` // The region-unique, immutable identifier for the DB cluster. This identifier // is found in AWS CloudTrail log entries whenever the KMS key for the DB cluster // is accessed. DbClusterResourceId *string `type:"string"` // Specifies the earliest time to which a database can be restored with point-in-time // restore. EarliestRestorableTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Specifies the connection endpoint for the primary instance of the DB cluster. Endpoint *string `type:"string"` // Provides the name of the database engine to be used for this DB cluster. Engine *string `type:"string"` // Indicates the database engine version. EngineVersion *string `type:"string"` // Specifies the ID that Amazon Route 53 assigns when you create a hosted zone. HostedZoneId *string `type:"string"` // If StorageEncrypted is true, the KMS key identifier for the encrypted DB // cluster. KmsKeyId *string `type:"string"` // Specifies the latest time to which a database can be restored with point-in-time // restore. LatestRestorableTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Contains the master username for the DB cluster. MasterUsername *string `type:"string"` // Specifies the progress of the operation as a percentage. PercentProgress *string `type:"string"` // Specifies the port that the database engine is listening on. Port *int64 `type:"integer"` // Specifies the daily time range during which automated backups are created // if automated backups are enabled, as determined by the BackupRetentionPeriod. PreferredBackupWindow *string `type:"string"` // Specifies the weekly time range during which system maintenance can occur, // in Universal Coordinated Time (UTC). PreferredMaintenanceWindow *string `type:"string"` // Contains one or more identifiers of the Read Replicas associated with this // DB cluster. ReadReplicaIdentifiers []*string `locationNameList:"ReadReplicaIdentifier" type:"list"` // The reader endpoint for the DB cluster. The reader endpoint for a DB cluster // load-balances connections across the Aurora Replicas that are available in // a DB cluster. As clients request new connections to the reader endpoint, // Aurora distributes the connection requests among the Aurora Replicas in the // DB cluster. This functionality can help balance your read workload across // multiple Aurora Replicas in your DB cluster. // // If a failover occurs, and the Aurora Replica that you are connected to is // promoted to be the primary instance, your connection will be dropped. To // continue sending your read workload to other Aurora Replicas in the cluster, // you can then recoonect to the reader endpoint. ReaderEndpoint *string `type:"string"` // Contains the identifier of the source DB cluster if this DB cluster is a // Read Replica. ReplicationSourceIdentifier *string `type:"string"` // Specifies the current state of this DB cluster. Status *string `type:"string"` // Specifies whether the DB cluster is encrypted. StorageEncrypted *bool `type:"boolean"` // Provides a list of VPC security groups that the DB cluster belongs to. VpcSecurityGroups []*VpcSecurityGroupMembership `locationNameList:"VpcSecurityGroupMembership" type:"list"` } // String returns the string representation func (s DBCluster) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBCluster) GoString() string { return s.String() } // Contains information about an instance that is part of a DB cluster. type DBClusterMember struct { _ struct{} `type:"structure"` // Specifies the status of the DB cluster parameter group for this member of // the DB cluster. DBClusterParameterGroupStatus *string `type:"string"` // Specifies the instance identifier for this member of the DB cluster. DBInstanceIdentifier *string `type:"string"` // Value that is true if the cluster member is the primary instance for the // DB cluster and false otherwise. IsClusterWriter *bool `type:"boolean"` // A value that specifies the order in which an Aurora Replica is promoted to // the primary instance after a failure of the existing primary instance. For // more information, see Fault Tolerance for an Aurora DB Cluster (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Managing.html#Aurora.Managing.FaultTolerance). PromotionTier *int64 `type:"integer"` } // String returns the string representation func (s DBClusterMember) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBClusterMember) GoString() string { return s.String() } // Contains status information for a DB cluster option group. type DBClusterOptionGroupStatus struct { _ struct{} `type:"structure"` // Specifies the name of the DB cluster option group. DBClusterOptionGroupName *string `type:"string"` // Specifies the status of the DB cluster option group. Status *string `type:"string"` } // String returns the string representation func (s DBClusterOptionGroupStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBClusterOptionGroupStatus) GoString() string { return s.String() } // Contains the result of a successful invocation of the CreateDBClusterParameterGroup // or CopyDBClusterParameterGroup action. // // This data type is used as a request parameter in the DeleteDBClusterParameterGroup // action, and as a response element in the DescribeDBClusterParameterGroups // action. type DBClusterParameterGroup struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) for the DB cluster parameter group. DBClusterParameterGroupArn *string `type:"string"` // Provides the name of the DB cluster parameter group. DBClusterParameterGroupName *string `type:"string"` // Provides the name of the DB parameter group family that this DB cluster parameter // group is compatible with. DBParameterGroupFamily *string `type:"string"` // Provides the customer-specified description for this DB cluster parameter // group. Description *string `type:"string"` } // String returns the string representation func (s DBClusterParameterGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBClusterParameterGroup) GoString() string { return s.String() } type DBClusterParameterGroupNameMessage struct { _ struct{} `type:"structure"` // The name of the DB cluster parameter group. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // This value is stored as a lowercase string. DBClusterParameterGroupName *string `type:"string"` } // String returns the string representation func (s DBClusterParameterGroupNameMessage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBClusterParameterGroupNameMessage) GoString() string { return s.String() } // Describes an AWS Identity and Access Management (IAM) role that is associated // with a DB cluster. type DBClusterRole struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the IAM role that is associated with the // DB cluster. RoleArn *string `type:"string"` // Describes the state of association between the IAM role and the DB cluster. // The Status property returns one of the following values: // // * ACTIVE - the IAM role ARN is associated with the DB cluster and can // be used to access other AWS services on your behalf. // // * PENDING - the IAM role ARN is being associated with the DB cluster. // // * INVALID - the IAM role ARN is associated with the DB cluster, but the // DB cluster is unable to assume the IAM role in order to access other AWS // services on your behalf. Status *string `type:"string"` } // String returns the string representation func (s DBClusterRole) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBClusterRole) GoString() string { return s.String() } // Contains the result of a successful invocation of the following actions: // // * CreateDBClusterSnapshot // // * DeleteDBClusterSnapshot // // This data type is used as a response element in the DescribeDBClusterSnapshots // action. type DBClusterSnapshot struct { _ struct{} `type:"structure"` // Specifies the allocated storage size in gigabytes (GB). AllocatedStorage *int64 `type:"integer"` // Provides the list of EC2 Availability Zones that instances in the DB cluster // snapshot can be restored in. AvailabilityZones []*string `locationNameList:"AvailabilityZone" type:"list"` // Specifies the time when the DB cluster was created, in Universal Coordinated // Time (UTC). ClusterCreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Specifies the DB cluster identifier of the DB cluster that this DB cluster // snapshot was created from. DBClusterIdentifier *string `type:"string"` // The Amazon Resource Name (ARN) for the DB cluster snapshot. DBClusterSnapshotArn *string `type:"string"` // Specifies the identifier for the DB cluster snapshot. DBClusterSnapshotIdentifier *string `type:"string"` // Specifies the name of the database engine. Engine *string `type:"string"` // Provides the version of the database engine for this DB cluster snapshot. EngineVersion *string `type:"string"` // If StorageEncrypted is true, the KMS key identifier for the encrypted DB // cluster snapshot. KmsKeyId *string `type:"string"` // Provides the license model information for this DB cluster snapshot. LicenseModel *string `type:"string"` // Provides the master username for the DB cluster snapshot. MasterUsername *string `type:"string"` // Specifies the percentage of the estimated data that has been transferred. PercentProgress *int64 `type:"integer"` // Specifies the port that the DB cluster was listening on at the time of the // snapshot. Port *int64 `type:"integer"` // Provides the time when the snapshot was taken, in Universal Coordinated Time // (UTC). SnapshotCreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Provides the type of the DB cluster snapshot. SnapshotType *string `type:"string"` // Specifies the status of this DB cluster snapshot. Status *string `type:"string"` // Specifies whether the DB cluster snapshot is encrypted. StorageEncrypted *bool `type:"boolean"` // Provides the VPC ID associated with the DB cluster snapshot. VpcId *string `type:"string"` } // String returns the string representation func (s DBClusterSnapshot) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBClusterSnapshot) GoString() string { return s.String() } // Contains the name and values of a manual DB cluster snapshot attribute. // // Manual DB cluster snapshot attributes are used to authorize other AWS accounts // to restore a manual DB cluster snapshot. For more information, see the ModifyDBClusterSnapshotAttribute // API action. type DBClusterSnapshotAttribute struct { _ struct{} `type:"structure"` // The name of the manual DB cluster snapshot attribute. // // The attribute named restore refers to the list of AWS accounts that have // permission to copy or restore the manual DB cluster snapshot. For more information, // see the ModifyDBClusterSnapshotAttribute API action. AttributeName *string `type:"string"` // The value(s) for the manual DB cluster snapshot attribute. // // If the AttributeName field is set to restore, then this element returns a // list of IDs of the AWS accounts that are authorized to copy or restore the // manual DB cluster snapshot. If a value of all is in the list, then the manual // DB cluster snapshot is public and available for any AWS account to copy or // restore. AttributeValues []*string `locationNameList:"AttributeValue" type:"list"` } // String returns the string representation func (s DBClusterSnapshotAttribute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBClusterSnapshotAttribute) GoString() string { return s.String() } // Contains the results of a successful call to the DescribeDBClusterSnapshotAttributes // API action. // // Manual DB cluster snapshot attributes are used to authorize other AWS accounts // to copy or restore a manual DB cluster snapshot. For more information, see // the ModifyDBClusterSnapshotAttribute API action. type DBClusterSnapshotAttributesResult struct { _ struct{} `type:"structure"` // The list of attributes and values for the manual DB cluster snapshot. DBClusterSnapshotAttributes []*DBClusterSnapshotAttribute `locationNameList:"DBClusterSnapshotAttribute" type:"list"` // The identifier of the manual DB cluster snapshot that the attributes apply // to. DBClusterSnapshotIdentifier *string `type:"string"` } // String returns the string representation func (s DBClusterSnapshotAttributesResult) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBClusterSnapshotAttributesResult) GoString() string { return s.String() } // This data type is used as a response element in the action DescribeDBEngineVersions. type DBEngineVersion struct { _ struct{} `type:"structure"` // The description of the database engine. DBEngineDescription *string `type:"string"` // The description of the database engine version. DBEngineVersionDescription *string `type:"string"` // The name of the DB parameter group family for the database engine. DBParameterGroupFamily *string `type:"string"` // The default character set for new instances of this engine version, if the // CharacterSetName parameter of the CreateDBInstance API is not specified. DefaultCharacterSet *CharacterSet `type:"structure"` // The name of the database engine. Engine *string `type:"string"` // The version number of the database engine. EngineVersion *string `type:"string"` // A list of the character sets supported by this engine for the CharacterSetName // parameter of the CreateDBInstance action. SupportedCharacterSets []*CharacterSet `locationNameList:"CharacterSet" type:"list"` // A list of the time zones supported by this engine for the Timezone parameter // of the CreateDBInstance action. SupportedTimezones []*Timezone `locationNameList:"Timezone" type:"list"` // A list of engine versions that this database engine version can be upgraded // to. ValidUpgradeTarget []*UpgradeTarget `locationNameList:"UpgradeTarget" type:"list"` } // String returns the string representation func (s DBEngineVersion) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBEngineVersion) GoString() string { return s.String() } // Contains the result of a successful invocation of the following actions: // // * CreateDBInstance // // * DeleteDBInstance // // * ModifyDBInstance // // This data type is used as a response element in the DescribeDBInstances action. type DBInstance struct { _ struct{} `type:"structure"` // Specifies the allocated storage size specified in gigabytes. AllocatedStorage *int64 `type:"integer"` // Indicates that minor version patches are applied automatically. AutoMinorVersionUpgrade *bool `type:"boolean"` // Specifies the name of the Availability Zone the DB instance is located in. AvailabilityZone *string `type:"string"` // Specifies the number of days for which automatic DB snapshots are retained. BackupRetentionPeriod *int64 `type:"integer"` // The identifier of the CA certificate for this DB instance. CACertificateIdentifier *string `type:"string"` // If present, specifies the name of the character set that this instance is // associated with. CharacterSetName *string `type:"string"` // Specifies whether tags are copied from the DB instance to snapshots of the // DB instance. CopyTagsToSnapshot *bool `type:"boolean"` // If the DB instance is a member of a DB cluster, contains the name of the // DB cluster that the DB instance is a member of. DBClusterIdentifier *string `type:"string"` // The Amazon Resource Name (ARN) for the DB instance. DBInstanceArn *string `type:"string"` // Contains the name of the compute and memory capacity class of the DB instance. DBInstanceClass *string `type:"string"` // Contains a user-supplied database identifier. This identifier is the unique // key that identifies a DB instance. DBInstanceIdentifier *string `type:"string"` // Specifies the current state of this database. DBInstanceStatus *string `type:"string"` // The meaning of this parameter differs according to the database engine you // use. For example, this value returns MySQL, MariaDB, or PostgreSQL information // when returning values from CreateDBInstanceReadReplica since Read Replicas // are only supported for these engines. // // MySQL, MariaDB, SQL Server, PostgreSQL, Amazon Aurora // // Contains the name of the initial database of this instance that was provided // at create time, if one was specified when the DB instance was created. This // same name is returned for the life of the DB instance. // // Type: String // // Oracle // // Contains the Oracle System ID (SID) of the created DB instance. Not shown // when the returned parameters do not apply to an Oracle DB instance. DBName *string `type:"string"` // Provides the list of DB parameter groups applied to this DB instance. DBParameterGroups []*DBParameterGroupStatus `locationNameList:"DBParameterGroup" type:"list"` // Provides List of DB security group elements containing only DBSecurityGroup.Name // and DBSecurityGroup.Status subelements. DBSecurityGroups []*DBSecurityGroupMembership `locationNameList:"DBSecurityGroup" type:"list"` // Specifies information on the subnet group associated with the DB instance, // including the name, description, and subnets in the subnet group. DBSubnetGroup *DBSubnetGroup `type:"structure"` // Specifies the port that the DB instance listens on. If the DB instance is // part of a DB cluster, this can be a different port than the DB cluster port. DbInstancePort *int64 `type:"integer"` // The region-unique, immutable identifier for the DB instance. This identifier // is found in AWS CloudTrail log entries whenever the KMS key for the DB instance // is accessed. DbiResourceId *string `type:"string"` // The Active Directory Domain membership records associated with the DB instance. DomainMemberships []*DomainMembership `locationNameList:"DomainMembership" type:"list"` // Specifies the connection endpoint. Endpoint *Endpoint `type:"structure"` // Provides the name of the database engine to be used for this DB instance. Engine *string `type:"string"` // Indicates the database engine version. EngineVersion *string `type:"string"` // The Amazon Resource Name (ARN) of the Amazon CloudWatch Logs log stream that // receives the Enhanced Monitoring metrics data for the DB instance. EnhancedMonitoringResourceArn *string `type:"string"` // Provides the date and time the DB instance was created. InstanceCreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Specifies the Provisioned IOPS (I/O operations per second) value. Iops *int64 `type:"integer"` // If StorageEncrypted is true, the KMS key identifier for the encrypted DB // instance. KmsKeyId *string `type:"string"` // Specifies the latest time to which a database can be restored with point-in-time // restore. LatestRestorableTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // License model information for this DB instance. LicenseModel *string `type:"string"` // Contains the master username for the DB instance. MasterUsername *string `type:"string"` // The interval, in seconds, between points when Enhanced Monitoring metrics // are collected for the DB instance. MonitoringInterval *int64 `type:"integer"` // The ARN for the IAM role that permits RDS to send Enhanced Monitoring metrics // to CloudWatch Logs. MonitoringRoleArn *string `type:"string"` // Specifies if the DB instance is a Multi-AZ deployment. MultiAZ *bool `type:"boolean"` // Provides the list of option group memberships for this DB instance. OptionGroupMemberships []*OptionGroupMembership `locationNameList:"OptionGroupMembership" type:"list"` // Specifies that changes to the DB instance are pending. This element is only // included when changes are pending. Specific changes are identified by subelements. PendingModifiedValues *PendingModifiedValues `type:"structure"` // Specifies the daily time range during which automated backups are created // if automated backups are enabled, as determined by the BackupRetentionPeriod. PreferredBackupWindow *string `type:"string"` // Specifies the weekly time range during which system maintenance can occur, // in Universal Coordinated Time (UTC). PreferredMaintenanceWindow *string `type:"string"` // A value that specifies the order in which an Aurora Replica is promoted to // the primary instance after a failure of the existing primary instance. For // more information, see Fault Tolerance for an Aurora DB Cluster (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Managing.html#Aurora.Managing.FaultTolerance). PromotionTier *int64 `type:"integer"` // Specifies the accessibility options for the DB instance. A value of true // specifies an Internet-facing instance with a publicly resolvable DNS name, // which resolves to a public IP address. A value of false specifies an internal // instance with a DNS name that resolves to a private IP address. // // Default: The default behavior varies depending on whether a VPC has been // requested or not. The following list shows the default behavior in each case. // // * Default VPC:true // // * VPC:false // // If no DB subnet group has been specified as part of the request and the PubliclyAccessible // value has not been set, the DB instance will be publicly accessible. If a // specific DB subnet group has been specified as part of the request and the // PubliclyAccessible value has not been set, the DB instance will be private. PubliclyAccessible *bool `type:"boolean"` // Contains one or more identifiers of the Read Replicas associated with this // DB instance. ReadReplicaDBInstanceIdentifiers []*string `locationNameList:"ReadReplicaDBInstanceIdentifier" type:"list"` // Contains the identifier of the source DB instance if this DB instance is // a Read Replica. ReadReplicaSourceDBInstanceIdentifier *string `type:"string"` // If present, specifies the name of the secondary Availability Zone for a DB // instance with multi-AZ support. SecondaryAvailabilityZone *string `type:"string"` // The status of a Read Replica. If the instance is not a Read Replica, this // will be blank. StatusInfos []*DBInstanceStatusInfo `locationNameList:"DBInstanceStatusInfo" type:"list"` // Specifies whether the DB instance is encrypted. StorageEncrypted *bool `type:"boolean"` // Specifies the storage type associated with DB instance. StorageType *string `type:"string"` // The ARN from the key store with which the instance is associated for TDE // encryption. TdeCredentialArn *string `type:"string"` // The time zone of the DB instance. In most cases, the Timezone element is // empty. Timezone content appears only for Microsoft SQL Server DB instances // that were created with a time zone specified. Timezone *string `type:"string"` // Provides a list of VPC security group elements that the DB instance belongs // to. VpcSecurityGroups []*VpcSecurityGroupMembership `locationNameList:"VpcSecurityGroupMembership" type:"list"` } // String returns the string representation func (s DBInstance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBInstance) GoString() string { return s.String() } // Provides a list of status information for a DB instance. type DBInstanceStatusInfo struct { _ struct{} `type:"structure"` // Details of the error if there is an error for the instance. If the instance // is not in an error state, this value is blank. Message *string `type:"string"` // Boolean value that is true if the instance is operating normally, or false // if the instance is in an error state. Normal *bool `type:"boolean"` // Status of the DB instance. For a StatusType of read replica, the values can // be replicating, error, stopped, or terminated. Status *string `type:"string"` // This value is currently "read replication." StatusType *string `type:"string"` } // String returns the string representation func (s DBInstanceStatusInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBInstanceStatusInfo) GoString() string { return s.String() } // Contains the result of a successful invocation of the CreateDBParameterGroup // action. // // This data type is used as a request parameter in the DeleteDBParameterGroup // action, and as a response element in the DescribeDBParameterGroups action. type DBParameterGroup struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) for the DB parameter group. DBParameterGroupArn *string `type:"string"` // Provides the name of the DB parameter group family that this DB parameter // group is compatible with. DBParameterGroupFamily *string `type:"string"` // Provides the name of the DB parameter group. DBParameterGroupName *string `type:"string"` // Provides the customer-specified description for this DB parameter group. Description *string `type:"string"` } // String returns the string representation func (s DBParameterGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBParameterGroup) GoString() string { return s.String() } // Contains the result of a successful invocation of the ModifyDBParameterGroup // or ResetDBParameterGroup action. type DBParameterGroupNameMessage struct { _ struct{} `type:"structure"` // Provides the name of the DB parameter group. DBParameterGroupName *string `type:"string"` } // String returns the string representation func (s DBParameterGroupNameMessage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBParameterGroupNameMessage) GoString() string { return s.String() } // The status of the DB parameter group. // // This data type is used as a response element in the following actions: // // * CreateDBInstance // // * CreateDBInstanceReadReplica // // * DeleteDBInstance // // * ModifyDBInstance // // * RebootDBInstance // // * RestoreDBInstanceFromDBSnapshot type DBParameterGroupStatus struct { _ struct{} `type:"structure"` // The name of the DP parameter group. DBParameterGroupName *string `type:"string"` // The status of parameter updates. ParameterApplyStatus *string `type:"string"` } // String returns the string representation func (s DBParameterGroupStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBParameterGroupStatus) GoString() string { return s.String() } // Contains the result of a successful invocation of the following actions: // // * DescribeDBSecurityGroups // // * AuthorizeDBSecurityGroupIngress // // * CreateDBSecurityGroup // // * RevokeDBSecurityGroupIngress // // This data type is used as a response element in the DescribeDBSecurityGroups // action. type DBSecurityGroup struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) for the DB security group. DBSecurityGroupArn *string `type:"string"` // Provides the description of the DB security group. DBSecurityGroupDescription *string `type:"string"` // Specifies the name of the DB security group. DBSecurityGroupName *string `type:"string"` // Contains a list of EC2SecurityGroup elements. EC2SecurityGroups []*EC2SecurityGroup `locationNameList:"EC2SecurityGroup" type:"list"` // Contains a list of IPRange elements. IPRanges []*IPRange `locationNameList:"IPRange" type:"list"` // Provides the AWS ID of the owner of a specific DB security group. OwnerId *string `type:"string"` // Provides the VpcId of the DB security group. VpcId *string `type:"string"` } // String returns the string representation func (s DBSecurityGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBSecurityGroup) GoString() string { return s.String() } // This data type is used as a response element in the following actions: // // * ModifyDBInstance // // * RebootDBInstance // // * RestoreDBInstanceFromDBSnapshot // // * RestoreDBInstanceToPointInTime type DBSecurityGroupMembership struct { _ struct{} `type:"structure"` // The name of the DB security group. DBSecurityGroupName *string `type:"string"` // The status of the DB security group. Status *string `type:"string"` } // String returns the string representation func (s DBSecurityGroupMembership) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBSecurityGroupMembership) GoString() string { return s.String() } // Contains the result of a successful invocation of the following actions: // // * CreateDBSnapshot // // * DeleteDBSnapshot // // This data type is used as a response element in the DescribeDBSnapshots action. type DBSnapshot struct { _ struct{} `type:"structure"` // Specifies the allocated storage size in gigabytes (GB). AllocatedStorage *int64 `type:"integer"` // Specifies the name of the Availability Zone the DB instance was located in // at the time of the DB snapshot. AvailabilityZone *string `type:"string"` // Specifies the DB instance identifier of the DB instance this DB snapshot // was created from. DBInstanceIdentifier *string `type:"string"` // The Amazon Resource Name (ARN) for the DB snapshot. DBSnapshotArn *string `type:"string"` // Specifies the identifier for the DB snapshot. DBSnapshotIdentifier *string `type:"string"` // Specifies whether the DB snapshot is encrypted. Encrypted *bool `type:"boolean"` // Specifies the name of the database engine. Engine *string `type:"string"` // Specifies the version of the database engine. EngineVersion *string `type:"string"` // Specifies the time when the snapshot was taken, in Universal Coordinated // Time (UTC). InstanceCreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Specifies the Provisioned IOPS (I/O operations per second) value of the DB // instance at the time of the snapshot. Iops *int64 `type:"integer"` // If Encrypted is true, the KMS key identifier for the encrypted DB snapshot. KmsKeyId *string `type:"string"` // License model information for the restored DB instance. LicenseModel *string `type:"string"` // Provides the master username for the DB snapshot. MasterUsername *string `type:"string"` // Provides the option group name for the DB snapshot. OptionGroupName *string `type:"string"` // The percentage of the estimated data that has been transferred. PercentProgress *int64 `type:"integer"` // Specifies the port that the database engine was listening on at the time // of the snapshot. Port *int64 `type:"integer"` // Provides the time when the snapshot was taken, in Universal Coordinated Time // (UTC). SnapshotCreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Provides the type of the DB snapshot. SnapshotType *string `type:"string"` // The DB snapshot Arn that the DB snapshot was copied from. It only has value // in case of cross customer or cross region copy. SourceDBSnapshotIdentifier *string `type:"string"` // The region that the DB snapshot was created in or copied from. SourceRegion *string `type:"string"` // Specifies the status of this DB snapshot. Status *string `type:"string"` // Specifies the storage type associated with DB snapshot. StorageType *string `type:"string"` // The ARN from the key store with which to associate the instance for TDE encryption. TdeCredentialArn *string `type:"string"` // The time zone of the DB snapshot. In most cases, the Timezone element is // empty. Timezone content appears only for snapshots taken from Microsoft SQL // Server DB instances that were created with a time zone specified. Timezone *string `type:"string"` // Provides the VPC ID associated with the DB snapshot. VpcId *string `type:"string"` } // String returns the string representation func (s DBSnapshot) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBSnapshot) GoString() string { return s.String() } // Contains the name and values of a manual DB snapshot attribute // // Manual DB snapshot attributes are used to authorize other AWS accounts to // restore a manual DB snapshot. For more information, see the ModifyDBSnapshotAttribute // API. type DBSnapshotAttribute struct { _ struct{} `type:"structure"` // The name of the manual DB snapshot attribute. // // The attribute named restore refers to the list of AWS accounts that have // permission to copy or restore the manual DB cluster snapshot. For more information, // see the ModifyDBSnapshotAttribute API action. AttributeName *string `type:"string"` // The value or values for the manual DB snapshot attribute. // // If the AttributeName field is set to restore, then this element returns a // list of IDs of the AWS accounts that are authorized to copy or restore the // manual DB snapshot. If a value of all is in the list, then the manual DB // snapshot is public and available for any AWS account to copy or restore. AttributeValues []*string `locationNameList:"AttributeValue" type:"list"` } // String returns the string representation func (s DBSnapshotAttribute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBSnapshotAttribute) GoString() string { return s.String() } // Contains the results of a successful call to the DescribeDBSnapshotAttributes // API action. // // Manual DB snapshot attributes are used to authorize other AWS accounts to // copy or restore a manual DB snapshot. For more information, see the ModifyDBSnapshotAttribute // API action. type DBSnapshotAttributesResult struct { _ struct{} `type:"structure"` // The list of attributes and values for the manual DB snapshot. DBSnapshotAttributes []*DBSnapshotAttribute `locationNameList:"DBSnapshotAttribute" type:"list"` // The identifier of the manual DB snapshot that the attributes apply to. DBSnapshotIdentifier *string `type:"string"` } // String returns the string representation func (s DBSnapshotAttributesResult) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBSnapshotAttributesResult) GoString() string { return s.String() } // Contains the result of a successful invocation of the following actions: // // * CreateDBSubnetGroup // // * ModifyDBSubnetGroup // // * DescribeDBSubnetGroups // // * DeleteDBSubnetGroup // // This data type is used as a response element in the DescribeDBSubnetGroups // action. type DBSubnetGroup struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) for the DB subnet group. DBSubnetGroupArn *string `type:"string"` // Provides the description of the DB subnet group. DBSubnetGroupDescription *string `type:"string"` // The name of the DB subnet group. DBSubnetGroupName *string `type:"string"` // Provides the status of the DB subnet group. SubnetGroupStatus *string `type:"string"` // Contains a list of Subnet elements. Subnets []*Subnet `locationNameList:"Subnet" type:"list"` // Provides the VpcId of the DB subnet group. VpcId *string `type:"string"` } // String returns the string representation func (s DBSubnetGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DBSubnetGroup) GoString() string { return s.String() } type DeleteDBClusterInput struct { _ struct{} `type:"structure"` // The DB cluster identifier for the DB cluster to be deleted. This parameter // isn't case-sensitive. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` // The DB cluster snapshot identifier of the new DB cluster snapshot created // when SkipFinalSnapshot is set to false. // // Specifying this parameter and also setting the SkipFinalShapshot parameter // to true results in an error. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens FinalDBSnapshotIdentifier *string `type:"string"` // Determines whether a final DB cluster snapshot is created before the DB cluster // is deleted. If true is specified, no DB cluster snapshot is created. If false // is specified, a DB cluster snapshot is created before the DB cluster is deleted. // // You must specify a FinalDBSnapshotIdentifier parameter if SkipFinalSnapshot // is false. // // Default: false SkipFinalSnapshot *bool `type:"boolean"` } // String returns the string representation func (s DeleteDBClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDBClusterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDBClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDBClusterInput"} if s.DBClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteDBClusterOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBCluster // // * DeleteDBCluster // // * FailoverDBCluster // // * ModifyDBCluster // // * RestoreDBClusterFromSnapshot // // * RestoreDBClusterToPointInTime // // This data type is used as a response element in the DescribeDBClusters action. DBCluster *DBCluster `type:"structure"` } // String returns the string representation func (s DeleteDBClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDBClusterOutput) GoString() string { return s.String() } type DeleteDBClusterParameterGroupInput struct { _ struct{} `type:"structure"` // The name of the DB cluster parameter group. // // Constraints: // // * Must be the name of an existing DB cluster parameter group. // // * You cannot delete a default DB cluster parameter group. // // * Cannot be associated with any DB clusters. // // DBClusterParameterGroupName is a required field DBClusterParameterGroupName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteDBClusterParameterGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDBClusterParameterGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDBClusterParameterGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDBClusterParameterGroupInput"} if s.DBClusterParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterParameterGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteDBClusterParameterGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteDBClusterParameterGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDBClusterParameterGroupOutput) GoString() string { return s.String() } type DeleteDBClusterSnapshotInput struct { _ struct{} `type:"structure"` // The identifier of the DB cluster snapshot to delete. // // Constraints: Must be the name of an existing DB cluster snapshot in the available // state. // // DBClusterSnapshotIdentifier is a required field DBClusterSnapshotIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteDBClusterSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDBClusterSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDBClusterSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDBClusterSnapshotInput"} if s.DBClusterSnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterSnapshotIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteDBClusterSnapshotOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBClusterSnapshot // // * DeleteDBClusterSnapshot // // This data type is used as a response element in the DescribeDBClusterSnapshots // action. DBClusterSnapshot *DBClusterSnapshot `type:"structure"` } // String returns the string representation func (s DeleteDBClusterSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDBClusterSnapshotOutput) GoString() string { return s.String() } type DeleteDBInstanceInput struct { _ struct{} `type:"structure"` // The DB instance identifier for the DB instance to be deleted. This parameter // isn't case-sensitive. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // DBInstanceIdentifier is a required field DBInstanceIdentifier *string `type:"string" required:"true"` // The DBSnapshotIdentifier of the new DBSnapshot created when SkipFinalSnapshot // is set to false. // // Specifying this parameter and also setting the SkipFinalShapshot parameter // to true results in an error. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // * Cannot be specified when deleting a Read Replica. FinalDBSnapshotIdentifier *string `type:"string"` // Determines whether a final DB snapshot is created before the DB instance // is deleted. If true is specified, no DBSnapshot is created. If false is specified, // a DB snapshot is created before the DB instance is deleted. // // Note that when a DB instance is in a failure state and has a status of 'failed', // 'incompatible-restore', or 'incompatible-network', it can only be deleted // when the SkipFinalSnapshot parameter is set to "true". // // Specify true when deleting a Read Replica. // // The FinalDBSnapshotIdentifier parameter must be specified if SkipFinalSnapshot // is false. // // Default: false SkipFinalSnapshot *bool `type:"boolean"` } // String returns the string representation func (s DeleteDBInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDBInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDBInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDBInstanceInput"} if s.DBInstanceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBInstanceIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteDBInstanceOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBInstance // // * DeleteDBInstance // // * ModifyDBInstance // // This data type is used as a response element in the DescribeDBInstances action. DBInstance *DBInstance `type:"structure"` } // String returns the string representation func (s DeleteDBInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDBInstanceOutput) GoString() string { return s.String() } type DeleteDBParameterGroupInput struct { _ struct{} `type:"structure"` // The name of the DB parameter group. // // Constraints: // // * Must be the name of an existing DB parameter group // // * You cannot delete a default DB parameter group // // * Cannot be associated with any DB instances // // DBParameterGroupName is a required field DBParameterGroupName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteDBParameterGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDBParameterGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDBParameterGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDBParameterGroupInput"} if s.DBParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DBParameterGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteDBParameterGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteDBParameterGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDBParameterGroupOutput) GoString() string { return s.String() } type DeleteDBSecurityGroupInput struct { _ struct{} `type:"structure"` // The name of the DB security group to delete. // // You cannot delete the default DB security group. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // * Must not be "Default" // // DBSecurityGroupName is a required field DBSecurityGroupName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteDBSecurityGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDBSecurityGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDBSecurityGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDBSecurityGroupInput"} if s.DBSecurityGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DBSecurityGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteDBSecurityGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteDBSecurityGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDBSecurityGroupOutput) GoString() string { return s.String() } type DeleteDBSnapshotInput struct { _ struct{} `type:"structure"` // The DBSnapshot identifier. // // Constraints: Must be the name of an existing DB snapshot in the available // state. // // DBSnapshotIdentifier is a required field DBSnapshotIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteDBSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDBSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDBSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDBSnapshotInput"} if s.DBSnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBSnapshotIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteDBSnapshotOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBSnapshot // // * DeleteDBSnapshot // // This data type is used as a response element in the DescribeDBSnapshots action. DBSnapshot *DBSnapshot `type:"structure"` } // String returns the string representation func (s DeleteDBSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDBSnapshotOutput) GoString() string { return s.String() } type DeleteDBSubnetGroupInput struct { _ struct{} `type:"structure"` // The name of the database subnet group to delete. // // You cannot delete the default subnet group. // // Constraints: // // Constraints: Must contain no more than 255 alphanumeric characters, periods, // underscores, spaces, or hyphens. Must not be default. // // Example: mySubnetgroup // // DBSubnetGroupName is a required field DBSubnetGroupName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteDBSubnetGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDBSubnetGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDBSubnetGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDBSubnetGroupInput"} if s.DBSubnetGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DBSubnetGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteDBSubnetGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteDBSubnetGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDBSubnetGroupOutput) GoString() string { return s.String() } type DeleteEventSubscriptionInput struct { _ struct{} `type:"structure"` // The name of the RDS event notification subscription you want to delete. // // SubscriptionName is a required field SubscriptionName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteEventSubscriptionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteEventSubscriptionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteEventSubscriptionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteEventSubscriptionInput"} if s.SubscriptionName == nil { invalidParams.Add(request.NewErrParamRequired("SubscriptionName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteEventSubscriptionOutput struct { _ struct{} `type:"structure"` // Contains the results of a successful invocation of the DescribeEventSubscriptions // action. EventSubscription *EventSubscription `type:"structure"` } // String returns the string representation func (s DeleteEventSubscriptionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteEventSubscriptionOutput) GoString() string { return s.String() } type DeleteOptionGroupInput struct { _ struct{} `type:"structure"` // The name of the option group to be deleted. // // You cannot delete default option groups. // // OptionGroupName is a required field OptionGroupName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteOptionGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteOptionGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteOptionGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteOptionGroupInput"} if s.OptionGroupName == nil { invalidParams.Add(request.NewErrParamRequired("OptionGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteOptionGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteOptionGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteOptionGroupOutput) GoString() string { return s.String() } type DescribeAccountAttributesInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DescribeAccountAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAccountAttributesInput) GoString() string { return s.String() } // Data returned by the DescribeAccountAttributes action. type DescribeAccountAttributesOutput struct { _ struct{} `type:"structure"` // A list of AccountQuota objects. Within this list, each quota has a name, // a count of usage toward the quota maximum, and a maximum value for the quota. AccountQuotas []*AccountQuota `locationNameList:"AccountQuota" type:"list"` } // String returns the string representation func (s DescribeAccountAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAccountAttributesOutput) GoString() string { return s.String() } type DescribeCertificatesInput struct { _ struct{} `type:"structure"` // The user-supplied certificate identifier. If this parameter is specified, // information for only the identified certificate is returned. This parameter // isn't case-sensitive. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens CertificateIdentifier *string `type:"string"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous DescribeCertificates // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeCertificatesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCertificatesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeCertificatesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeCertificatesInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Data returned by the DescribeCertificates action. type DescribeCertificatesOutput struct { _ struct{} `type:"structure"` // The list of Certificate objects for the AWS account. Certificates []*Certificate `locationNameList:"Certificate" type:"list"` // An optional pagination token provided by a previous DescribeCertificates // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords . Marker *string `type:"string"` } // String returns the string representation func (s DescribeCertificatesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCertificatesOutput) GoString() string { return s.String() } type DescribeDBClusterParameterGroupsInput struct { _ struct{} `type:"structure"` // The name of a specific DB cluster parameter group to return details for. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens DBClusterParameterGroupName *string `type:"string"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous DescribeDBClusterParameterGroups // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeDBClusterParameterGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBClusterParameterGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDBClusterParameterGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDBClusterParameterGroupsInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeDBClusterParameterGroupsOutput struct { _ struct{} `type:"structure"` // A list of DB cluster parameter groups. DBClusterParameterGroups []*DBClusterParameterGroup `locationNameList:"DBClusterParameterGroup" type:"list"` // An optional pagination token provided by a previous DescribeDBClusterParameterGroups // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` } // String returns the string representation func (s DescribeDBClusterParameterGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBClusterParameterGroupsOutput) GoString() string { return s.String() } type DescribeDBClusterParametersInput struct { _ struct{} `type:"structure"` // The name of a specific DB cluster parameter group to return parameter details // for. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // DBClusterParameterGroupName is a required field DBClusterParameterGroupName *string `type:"string" required:"true"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous DescribeDBClusterParameters // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // A value that indicates to return only parameters for a specific source. Parameter // sources can be engine, service, or customer. Source *string `type:"string"` } // String returns the string representation func (s DescribeDBClusterParametersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBClusterParametersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDBClusterParametersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDBClusterParametersInput"} if s.DBClusterParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterParameterGroupName")) } if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides details about a DB cluster parameter group including the parameters // in the DB cluster parameter group. type DescribeDBClusterParametersOutput struct { _ struct{} `type:"structure"` // An optional pagination token provided by a previous DescribeDBClusterParameters // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords . Marker *string `type:"string"` // Provides a list of parameters for the DB cluster parameter group. Parameters []*Parameter `locationNameList:"Parameter" type:"list"` } // String returns the string representation func (s DescribeDBClusterParametersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBClusterParametersOutput) GoString() string { return s.String() } type DescribeDBClusterSnapshotAttributesInput struct { _ struct{} `type:"structure"` // The identifier for the DB cluster snapshot to describe the attributes for. // // DBClusterSnapshotIdentifier is a required field DBClusterSnapshotIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeDBClusterSnapshotAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBClusterSnapshotAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDBClusterSnapshotAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDBClusterSnapshotAttributesInput"} if s.DBClusterSnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterSnapshotIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeDBClusterSnapshotAttributesOutput struct { _ struct{} `type:"structure"` // Contains the results of a successful call to the DescribeDBClusterSnapshotAttributes // API action. // // Manual DB cluster snapshot attributes are used to authorize other AWS accounts // to copy or restore a manual DB cluster snapshot. For more information, see // the ModifyDBClusterSnapshotAttribute API action. DBClusterSnapshotAttributesResult *DBClusterSnapshotAttributesResult `type:"structure"` } // String returns the string representation func (s DescribeDBClusterSnapshotAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBClusterSnapshotAttributesOutput) GoString() string { return s.String() } type DescribeDBClusterSnapshotsInput struct { _ struct{} `type:"structure"` // The ID of the DB cluster to retrieve the list of DB cluster snapshots for. // This parameter cannot be used in conjunction with the DBClusterSnapshotIdentifier // parameter. This parameter is not case-sensitive. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens DBClusterIdentifier *string `type:"string"` // A specific DB cluster snapshot identifier to describe. This parameter cannot // be used in conjunction with the DBClusterIdentifier parameter. This value // is stored as a lowercase string. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // * If this identifier is for an automated snapshot, the SnapshotType parameter // must also be specified. DBClusterSnapshotIdentifier *string `type:"string"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // Set this value to true to include manual DB cluster snapshots that are public // and can be copied or restored by any AWS account, otherwise set this value // to false. The default is false. The default is false. // // You can share a manual DB cluster snapshot as public by using the ModifyDBClusterSnapshotAttribute // API action. IncludePublic *bool `type:"boolean"` // Set this value to true to include shared manual DB cluster snapshots from // other AWS accounts that this AWS account has been given permission to copy // or restore, otherwise set this value to false. The default is false. // // You can give an AWS account permission to restore a manual DB cluster snapshot // from another AWS account by the ModifyDBClusterSnapshotAttribute API action. IncludeShared *bool `type:"boolean"` // An optional pagination token provided by a previous DescribeDBClusterSnapshots // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The type of DB cluster snapshots to be returned. You can specify one of the // following values: // // * automated - Return all DB cluster snapshots that have been automatically // taken by Amazon RDS for my AWS account. // // * manual - Return all DB cluster snapshots that have been taken by my // AWS account. // // * shared - Return all manual DB cluster snapshots that have been shared // to my AWS account. // // * public - Return all DB cluster snapshots that have been marked as public. // // If you don't specify a SnapshotType value, then both automated and manual // DB cluster snapshots are returned. You can include shared DB cluster snapshots // with these results by setting the IncludeShared parameter to true. You can // include public DB cluster snapshots with these results by setting the IncludePublic // parameter to true. // // The IncludeShared and IncludePublic parameters don't apply for SnapshotType // values of manual or automated. The IncludePublic parameter doesn't apply // when SnapshotType is set to shared. The IncludeShared parameter doesn't apply // when SnapshotType is set to public. SnapshotType *string `type:"string"` } // String returns the string representation func (s DescribeDBClusterSnapshotsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBClusterSnapshotsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDBClusterSnapshotsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDBClusterSnapshotsInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides a list of DB cluster snapshots for the user as the result of a call // to the DescribeDBClusterSnapshots action. type DescribeDBClusterSnapshotsOutput struct { _ struct{} `type:"structure"` // Provides a list of DB cluster snapshots for the user. DBClusterSnapshots []*DBClusterSnapshot `locationNameList:"DBClusterSnapshot" type:"list"` // An optional pagination token provided by a previous DescribeDBClusterSnapshots // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` } // String returns the string representation func (s DescribeDBClusterSnapshotsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBClusterSnapshotsOutput) GoString() string { return s.String() } type DescribeDBClustersInput struct { _ struct{} `type:"structure"` // The user-supplied DB cluster identifier. If this parameter is specified, // information from only the specific DB cluster is returned. This parameter // isn't case-sensitive. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens DBClusterIdentifier *string `type:"string"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous DescribeDBClusters request. // If this parameter is specified, the response includes only records beyond // the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeDBClustersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBClustersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDBClustersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDBClustersInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the result of a successful invocation of the DescribeDBClusters // action. type DescribeDBClustersOutput struct { _ struct{} `type:"structure"` // Contains a list of DB clusters for the user. DBClusters []*DBCluster `locationNameList:"DBCluster" type:"list"` // A pagination token that can be used in a subsequent DescribeDBClusters request. Marker *string `type:"string"` } // String returns the string representation func (s DescribeDBClustersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBClustersOutput) GoString() string { return s.String() } type DescribeDBEngineVersionsInput struct { _ struct{} `type:"structure"` // The name of a specific DB parameter group family to return details for. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens DBParameterGroupFamily *string `type:"string"` // Indicates that only the default version of the specified engine or engine // and major version combination is returned. DefaultOnly *bool `type:"boolean"` // The database engine to return. Engine *string `type:"string"` // The database engine version to return. // // Example: 5.1.49 EngineVersion *string `type:"string"` // Not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // If this parameter is specified and the requested engine supports the CharacterSetName // parameter for CreateDBInstance, the response includes a list of supported // character sets for each engine version. ListSupportedCharacterSets *bool `type:"boolean"` // If this parameter is specified and the requested engine supports the TimeZone // parameter for CreateDBInstance, the response includes a list of supported // time zones for each engine version. ListSupportedTimezones *bool `type:"boolean"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more than the // MaxRecords value is available, a pagination token called a marker is included // in the response so that the following results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeDBEngineVersionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBEngineVersionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDBEngineVersionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDBEngineVersionsInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the result of a successful invocation of the DescribeDBEngineVersions // action. type DescribeDBEngineVersionsOutput struct { _ struct{} `type:"structure"` // A list of DBEngineVersion elements. DBEngineVersions []*DBEngineVersion `locationNameList:"DBEngineVersion" type:"list"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` } // String returns the string representation func (s DescribeDBEngineVersionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBEngineVersionsOutput) GoString() string { return s.String() } type DescribeDBInstancesInput struct { _ struct{} `type:"structure"` // The user-supplied instance identifier. If this parameter is specified, information // from only the specific DB instance is returned. This parameter isn't case-sensitive. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens DBInstanceIdentifier *string `type:"string"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous DescribeDBInstances request. // If this parameter is specified, the response includes only records beyond // the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeDBInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDBInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDBInstancesInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the result of a successful invocation of the DescribeDBInstances // action. type DescribeDBInstancesOutput struct { _ struct{} `type:"structure"` // A list of DBInstance instances. DBInstances []*DBInstance `locationNameList:"DBInstance" type:"list"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords . Marker *string `type:"string"` } // String returns the string representation func (s DescribeDBInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBInstancesOutput) GoString() string { return s.String() } // This data type is used as a response element to DescribeDBLogFiles. type DescribeDBLogFilesDetails struct { _ struct{} `type:"structure"` // A POSIX timestamp when the last log entry was written. LastWritten *int64 `type:"long"` // The name of the log file for the specified DB instance. LogFileName *string `type:"string"` // The size, in bytes, of the log file for the specified DB instance. Size *int64 `type:"long"` } // String returns the string representation func (s DescribeDBLogFilesDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBLogFilesDetails) GoString() string { return s.String() } type DescribeDBLogFilesInput struct { _ struct{} `type:"structure"` // The customer-assigned name of the DB instance that contains the log files // you want to list. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // DBInstanceIdentifier is a required field DBInstanceIdentifier *string `type:"string" required:"true"` // Filters the available log files for files written since the specified date, // in POSIX timestamp format with milliseconds. FileLastWritten *int64 `type:"long"` // Filters the available log files for files larger than the specified size. FileSize *int64 `type:"long"` // Filters the available log files for log file names that contain the specified // string. FilenameContains *string `type:"string"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // The pagination token provided in the previous request. If this parameter // is specified the response includes only records beyond the marker, up to // MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeDBLogFilesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBLogFilesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDBLogFilesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDBLogFilesInput"} if s.DBInstanceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBInstanceIdentifier")) } if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response from a call to DescribeDBLogFiles. type DescribeDBLogFilesOutput struct { _ struct{} `type:"structure"` // The DB log files returned. DescribeDBLogFiles []*DescribeDBLogFilesDetails `locationNameList:"DescribeDBLogFilesDetails" type:"list"` // A pagination token that can be used in a subsequent DescribeDBLogFiles request. Marker *string `type:"string"` } // String returns the string representation func (s DescribeDBLogFilesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBLogFilesOutput) GoString() string { return s.String() } type DescribeDBParameterGroupsInput struct { _ struct{} `type:"structure"` // The name of a specific DB parameter group to return details for. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens DBParameterGroupName *string `type:"string"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous DescribeDBParameterGroups // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeDBParameterGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBParameterGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDBParameterGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDBParameterGroupsInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the result of a successful invocation of the DescribeDBParameterGroups // action. type DescribeDBParameterGroupsOutput struct { _ struct{} `type:"structure"` // A list of DBParameterGroup instances. DBParameterGroups []*DBParameterGroup `locationNameList:"DBParameterGroup" type:"list"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` } // String returns the string representation func (s DescribeDBParameterGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBParameterGroupsOutput) GoString() string { return s.String() } type DescribeDBParametersInput struct { _ struct{} `type:"structure"` // The name of a specific DB parameter group to return details for. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // DBParameterGroupName is a required field DBParameterGroupName *string `type:"string" required:"true"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous DescribeDBParameters // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The parameter types to return. // // Default: All parameter types returned // // Valid Values: user | system | engine-default Source *string `type:"string"` } // String returns the string representation func (s DescribeDBParametersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBParametersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDBParametersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDBParametersInput"} if s.DBParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DBParameterGroupName")) } if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the result of a successful invocation of the DescribeDBParameters // action. type DescribeDBParametersOutput struct { _ struct{} `type:"structure"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // A list of Parameter values. Parameters []*Parameter `locationNameList:"Parameter" type:"list"` } // String returns the string representation func (s DescribeDBParametersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBParametersOutput) GoString() string { return s.String() } type DescribeDBSecurityGroupsInput struct { _ struct{} `type:"structure"` // The name of the DB security group to return details for. DBSecurityGroupName *string `type:"string"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous DescribeDBSecurityGroups // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeDBSecurityGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBSecurityGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDBSecurityGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDBSecurityGroupsInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the result of a successful invocation of the DescribeDBSecurityGroups // action. type DescribeDBSecurityGroupsOutput struct { _ struct{} `type:"structure"` // A list of DBSecurityGroup instances. DBSecurityGroups []*DBSecurityGroup `locationNameList:"DBSecurityGroup" type:"list"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` } // String returns the string representation func (s DescribeDBSecurityGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBSecurityGroupsOutput) GoString() string { return s.String() } type DescribeDBSnapshotAttributesInput struct { _ struct{} `type:"structure"` // The identifier for the DB snapshot to describe the attributes for. // // DBSnapshotIdentifier is a required field DBSnapshotIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeDBSnapshotAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBSnapshotAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDBSnapshotAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDBSnapshotAttributesInput"} if s.DBSnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBSnapshotIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeDBSnapshotAttributesOutput struct { _ struct{} `type:"structure"` // Contains the results of a successful call to the DescribeDBSnapshotAttributes // API action. // // Manual DB snapshot attributes are used to authorize other AWS accounts to // copy or restore a manual DB snapshot. For more information, see the ModifyDBSnapshotAttribute // API action. DBSnapshotAttributesResult *DBSnapshotAttributesResult `type:"structure"` } // String returns the string representation func (s DescribeDBSnapshotAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBSnapshotAttributesOutput) GoString() string { return s.String() } type DescribeDBSnapshotsInput struct { _ struct{} `type:"structure"` // The ID of the DB instance to retrieve the list of DB snapshots for. This // parameter cannot be used in conjunction with DBSnapshotIdentifier. This parameter // is not case-sensitive. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens DBInstanceIdentifier *string `type:"string"` // A specific DB snapshot identifier to describe. This parameter cannot be used // in conjunction with DBInstanceIdentifier. This value is stored as a lowercase // string. // // Constraints: // // * Must be 1 to 255 alphanumeric characters. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // * If this identifier is for an automated snapshot, the SnapshotType parameter // must also be specified. DBSnapshotIdentifier *string `type:"string"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // Set this value to true to include manual DB snapshots that are public and // can be copied or restored by any AWS account, otherwise set this value to // false. The default is false. // // You can share a manual DB snapshot as public by using the ModifyDBSnapshotAttribute // API. IncludePublic *bool `type:"boolean"` // Set this value to true to include shared manual DB snapshots from other AWS // accounts that this AWS account has been given permission to copy or restore, // otherwise set this value to false. The default is false. // // You can give an AWS account permission to restore a manual DB snapshot from // another AWS account by using the ModifyDBSnapshotAttribute API action. IncludeShared *bool `type:"boolean"` // An optional pagination token provided by a previous DescribeDBSnapshots request. // If this parameter is specified, the response includes only records beyond // the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The type of snapshots to be returned. You can specify one of the following // values: // // * automated - Return all DB snapshots that have been automatically taken // by Amazon RDS for my AWS account. // // * manual - Return all DB snapshots that have been taken by my AWS account. // // * shared - Return all manual DB snapshots that have been shared to my // AWS account. // // * public - Return all DB snapshots that have been marked as public. // // If you don't specify a SnapshotType value, then both automated and manual // snapshots are returned. Shared and public DB snapshots are not included in // the returned results by default. You can include shared snapshots with these // results by setting the IncludeShared parameter to true. You can include public // snapshots with these results by setting the IncludePublic parameter to true. // // The IncludeShared and IncludePublic parameters don't apply for SnapshotType // values of manual or automated. The IncludePublic parameter doesn't apply // when SnapshotType is set to shared. The IncludeShared parameter doesn't apply // when SnapshotType is set to public. SnapshotType *string `type:"string"` } // String returns the string representation func (s DescribeDBSnapshotsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBSnapshotsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDBSnapshotsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDBSnapshotsInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the result of a successful invocation of the DescribeDBSnapshots // action. type DescribeDBSnapshotsOutput struct { _ struct{} `type:"structure"` // A list of DBSnapshot instances. DBSnapshots []*DBSnapshot `locationNameList:"DBSnapshot" type:"list"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` } // String returns the string representation func (s DescribeDBSnapshotsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBSnapshotsOutput) GoString() string { return s.String() } type DescribeDBSubnetGroupsInput struct { _ struct{} `type:"structure"` // The name of the DB subnet group to return details for. DBSubnetGroupName *string `type:"string"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous DescribeDBSubnetGroups // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeDBSubnetGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBSubnetGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDBSubnetGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDBSubnetGroupsInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the result of a successful invocation of the DescribeDBSubnetGroups // action. type DescribeDBSubnetGroupsOutput struct { _ struct{} `type:"structure"` // A list of DBSubnetGroup instances. DBSubnetGroups []*DBSubnetGroup `locationNameList:"DBSubnetGroup" type:"list"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` } // String returns the string representation func (s DescribeDBSubnetGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDBSubnetGroupsOutput) GoString() string { return s.String() } type DescribeEngineDefaultClusterParametersInput struct { _ struct{} `type:"structure"` // The name of the DB cluster parameter group family to return engine parameter // information for. // // DBParameterGroupFamily is a required field DBParameterGroupFamily *string `type:"string" required:"true"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous DescribeEngineDefaultClusterParameters // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeEngineDefaultClusterParametersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEngineDefaultClusterParametersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeEngineDefaultClusterParametersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeEngineDefaultClusterParametersInput"} if s.DBParameterGroupFamily == nil { invalidParams.Add(request.NewErrParamRequired("DBParameterGroupFamily")) } if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeEngineDefaultClusterParametersOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the DescribeEngineDefaultParameters // action. EngineDefaults *EngineDefaults `type:"structure"` } // String returns the string representation func (s DescribeEngineDefaultClusterParametersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEngineDefaultClusterParametersOutput) GoString() string { return s.String() } type DescribeEngineDefaultParametersInput struct { _ struct{} `type:"structure"` // The name of the DB parameter group family. // // DBParameterGroupFamily is a required field DBParameterGroupFamily *string `type:"string" required:"true"` // Not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous DescribeEngineDefaultParameters // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeEngineDefaultParametersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEngineDefaultParametersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeEngineDefaultParametersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeEngineDefaultParametersInput"} if s.DBParameterGroupFamily == nil { invalidParams.Add(request.NewErrParamRequired("DBParameterGroupFamily")) } if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeEngineDefaultParametersOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the DescribeEngineDefaultParameters // action. EngineDefaults *EngineDefaults `type:"structure"` } // String returns the string representation func (s DescribeEngineDefaultParametersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEngineDefaultParametersOutput) GoString() string { return s.String() } type DescribeEventCategoriesInput struct { _ struct{} `type:"structure"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // The type of source that will be generating the events. // // Valid values: db-instance | db-parameter-group | db-security-group | db-snapshot SourceType *string `type:"string"` } // String returns the string representation func (s DescribeEventCategoriesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEventCategoriesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeEventCategoriesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeEventCategoriesInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Data returned from the DescribeEventCategories action. type DescribeEventCategoriesOutput struct { _ struct{} `type:"structure"` // A list of EventCategoriesMap data types. EventCategoriesMapList []*EventCategoriesMap `locationNameList:"EventCategoriesMap" type:"list"` } // String returns the string representation func (s DescribeEventCategoriesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEventCategoriesOutput) GoString() string { return s.String() } type DescribeEventSubscriptionsInput struct { _ struct{} `type:"structure"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords . Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The name of the RDS event notification subscription you want to describe. SubscriptionName *string `type:"string"` } // String returns the string representation func (s DescribeEventSubscriptionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEventSubscriptionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeEventSubscriptionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeEventSubscriptionsInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Data returned by the DescribeEventSubscriptions action. type DescribeEventSubscriptionsOutput struct { _ struct{} `type:"structure"` // A list of EventSubscriptions data types. EventSubscriptionsList []*EventSubscription `locationNameList:"EventSubscription" type:"list"` // An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` } // String returns the string representation func (s DescribeEventSubscriptionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEventSubscriptionsOutput) GoString() string { return s.String() } type DescribeEventsInput struct { _ struct{} `type:"structure"` // The number of minutes to retrieve events for. // // Default: 60 Duration *int64 `type:"integer"` // The end of the time interval for which to retrieve events, specified in ISO // 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia // page. (http://en.wikipedia.org/wiki/ISO_8601) // // Example: 2009-07-08T18:00Z EndTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // A list of event categories that trigger notifications for a event notification // subscription. EventCategories []*string `locationNameList:"EventCategory" type:"list"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous DescribeEvents request. // If this parameter is specified, the response includes only records beyond // the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The identifier of the event source for which events will be returned. If // not specified, then all sources are included in the response. // // Constraints: // // * If SourceIdentifier is supplied, SourceType must also be provided. // // * If the source type is DBInstance, then a DBInstanceIdentifier must be // supplied. // // * If the source type is DBSecurityGroup, a DBSecurityGroupName must be // supplied. // // * If the source type is DBParameterGroup, a DBParameterGroupName must // be supplied. // // * If the source type is DBSnapshot, a DBSnapshotIdentifier must be supplied. // // * Cannot end with a hyphen or contain two consecutive hyphens. SourceIdentifier *string `type:"string"` // The event source to retrieve events for. If no value is specified, all events // are returned. SourceType *string `type:"string" enum:"SourceType"` // The beginning of the time interval to retrieve events for, specified in ISO // 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia // page. (http://en.wikipedia.org/wiki/ISO_8601) // // Example: 2009-07-08T18:00Z StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s DescribeEventsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEventsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeEventsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeEventsInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the result of a successful invocation of the DescribeEvents action. type DescribeEventsOutput struct { _ struct{} `type:"structure"` // A list of Event instances. Events []*Event `locationNameList:"Event" type:"list"` // An optional pagination token provided by a previous Events request. If this // parameter is specified, the response includes only records beyond the marker, // up to the value specified by MaxRecords . Marker *string `type:"string"` } // String returns the string representation func (s DescribeEventsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEventsOutput) GoString() string { return s.String() } type DescribeOptionGroupOptionsInput struct { _ struct{} `type:"structure"` // A required parameter. Options available for the given engine name will be // described. // // EngineName is a required field EngineName *string `type:"string" required:"true"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // If specified, filters the results to include only options for the specified // major engine version. MajorEngineVersion *string `type:"string"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeOptionGroupOptionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeOptionGroupOptionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeOptionGroupOptionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeOptionGroupOptionsInput"} if s.EngineName == nil { invalidParams.Add(request.NewErrParamRequired("EngineName")) } if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeOptionGroupOptionsOutput struct { _ struct{} `type:"structure"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // List of available option group options. OptionGroupOptions []*OptionGroupOption `locationNameList:"OptionGroupOption" type:"list"` } // String returns the string representation func (s DescribeOptionGroupOptionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeOptionGroupOptionsOutput) GoString() string { return s.String() } type DescribeOptionGroupsInput struct { _ struct{} `type:"structure"` // Filters the list of option groups to only include groups associated with // a specific database engine. EngineName *string `type:"string"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // Filters the list of option groups to only include groups associated with // a specific database engine version. If specified, then EngineName must also // be specified. MajorEngineVersion *string `type:"string"` // An optional pagination token provided by a previous DescribeOptionGroups // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The name of the option group to describe. Cannot be supplied together with // EngineName or MajorEngineVersion. OptionGroupName *string `type:"string"` } // String returns the string representation func (s DescribeOptionGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeOptionGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeOptionGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeOptionGroupsInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // List of option groups. type DescribeOptionGroupsOutput struct { _ struct{} `type:"structure"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // List of option groups. OptionGroupsList []*OptionGroup `locationNameList:"OptionGroup" type:"list"` } // String returns the string representation func (s DescribeOptionGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeOptionGroupsOutput) GoString() string { return s.String() } type DescribeOrderableDBInstanceOptionsInput struct { _ struct{} `type:"structure"` // The DB instance class filter value. Specify this parameter to show only the // available offerings matching the specified DB instance class. DBInstanceClass *string `type:"string"` // The name of the engine to retrieve DB instance options for. // // Engine is a required field Engine *string `type:"string" required:"true"` // The engine version filter value. Specify this parameter to show only the // available offerings matching the specified engine version. EngineVersion *string `type:"string"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // The license model filter value. Specify this parameter to show only the available // offerings matching the specified license model. LicenseModel *string `type:"string"` // An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords . Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The VPC filter value. Specify this parameter to show only the available VPC // or non-VPC offerings. Vpc *bool `type:"boolean"` } // String returns the string representation func (s DescribeOrderableDBInstanceOptionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeOrderableDBInstanceOptionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeOrderableDBInstanceOptionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeOrderableDBInstanceOptionsInput"} if s.Engine == nil { invalidParams.Add(request.NewErrParamRequired("Engine")) } if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the result of a successful invocation of the DescribeOrderableDBInstanceOptions // action. type DescribeOrderableDBInstanceOptionsOutput struct { _ struct{} `type:"structure"` // An optional pagination token provided by a previous OrderableDBInstanceOptions // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords . Marker *string `type:"string"` // An OrderableDBInstanceOption structure containing information about orderable // options for the DB instance. OrderableDBInstanceOptions []*OrderableDBInstanceOption `locationNameList:"OrderableDBInstanceOption" type:"list"` } // String returns the string representation func (s DescribeOrderableDBInstanceOptionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeOrderableDBInstanceOptionsOutput) GoString() string { return s.String() } type DescribePendingMaintenanceActionsInput struct { _ struct{} `type:"structure"` // A filter that specifies one or more resources to return pending maintenance // actions for. // // Supported filters: // // * db-instance-id - Accepts DB instance identifiers and DB instance Amazon // Resource Names (ARNs). The results list will only include pending maintenance // actions for the DB instances identified by these ARNs. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous DescribePendingMaintenanceActions // request. If this parameter is specified, the response includes only records // beyond the marker, up to a number of records specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The ARN of a resource to return pending maintenance actions for. ResourceIdentifier *string `type:"string"` } // String returns the string representation func (s DescribePendingMaintenanceActionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribePendingMaintenanceActionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribePendingMaintenanceActionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribePendingMaintenanceActionsInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Data returned from the DescribePendingMaintenanceActions action. type DescribePendingMaintenanceActionsOutput struct { _ struct{} `type:"structure"` // An optional pagination token provided by a previous DescribePendingMaintenanceActions // request. If this parameter is specified, the response includes only records // beyond the marker, up to a number of records specified by MaxRecords. Marker *string `type:"string"` // A list of the pending maintenance actions for the resource. PendingMaintenanceActions []*ResourcePendingMaintenanceActions `locationNameList:"ResourcePendingMaintenanceActions" type:"list"` } // String returns the string representation func (s DescribePendingMaintenanceActionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribePendingMaintenanceActionsOutput) GoString() string { return s.String() } type DescribeReservedDBInstancesInput struct { _ struct{} `type:"structure"` // The DB instance class filter value. Specify this parameter to show only those // reservations matching the specified DB instances class. DBInstanceClass *string `type:"string"` // The duration filter value, specified in years or seconds. Specify this parameter // to show only reservations for this duration. // // Valid Values: 1 | 3 | 31536000 | 94608000 Duration *string `type:"string"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more than the // MaxRecords value is available, a pagination token called a marker is included // in the response so that the following results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The Multi-AZ filter value. Specify this parameter to show only those reservations // matching the specified Multi-AZ parameter. MultiAZ *bool `type:"boolean"` // The offering type filter value. Specify this parameter to show only the available // offerings matching the specified offering type. // // Valid Values: "Partial Upfront" | "All Upfront" | "No Upfront" OfferingType *string `type:"string"` // The product description filter value. Specify this parameter to show only // those reservations matching the specified product description. ProductDescription *string `type:"string"` // The reserved DB instance identifier filter value. Specify this parameter // to show only the reservation that matches the specified reservation ID. ReservedDBInstanceId *string `type:"string"` // The offering identifier filter value. Specify this parameter to show only // purchased reservations matching the specified offering identifier. ReservedDBInstancesOfferingId *string `type:"string"` } // String returns the string representation func (s DescribeReservedDBInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedDBInstancesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeReservedDBInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeReservedDBInstancesInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeReservedDBInstancesOfferingsInput struct { _ struct{} `type:"structure"` // The DB instance class filter value. Specify this parameter to show only the // available offerings matching the specified DB instance class. DBInstanceClass *string `type:"string"` // Duration filter value, specified in years or seconds. Specify this parameter // to show only reservations for this duration. // // Valid Values: 1 | 3 | 31536000 | 94608000 Duration *string `type:"string"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more than the // MaxRecords value is available, a pagination token called a marker is included // in the response so that the following results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The Multi-AZ filter value. Specify this parameter to show only the available // offerings matching the specified Multi-AZ parameter. MultiAZ *bool `type:"boolean"` // The offering type filter value. Specify this parameter to show only the available // offerings matching the specified offering type. // // Valid Values: "Partial Upfront" | "All Upfront" | "No Upfront" OfferingType *string `type:"string"` // Product description filter value. Specify this parameter to show only the // available offerings matching the specified product description. ProductDescription *string `type:"string"` // The offering identifier filter value. Specify this parameter to show only // the available offering that matches the specified reservation identifier. // // Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706 ReservedDBInstancesOfferingId *string `type:"string"` } // String returns the string representation func (s DescribeReservedDBInstancesOfferingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedDBInstancesOfferingsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeReservedDBInstancesOfferingsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeReservedDBInstancesOfferingsInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the result of a successful invocation of the DescribeReservedDBInstancesOfferings // action. type DescribeReservedDBInstancesOfferingsOutput struct { _ struct{} `type:"structure"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // A list of reserved DB instance offerings. ReservedDBInstancesOfferings []*ReservedDBInstancesOffering `locationNameList:"ReservedDBInstancesOffering" type:"list"` } // String returns the string representation func (s DescribeReservedDBInstancesOfferingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedDBInstancesOfferingsOutput) GoString() string { return s.String() } // Contains the result of a successful invocation of the DescribeReservedDBInstances // action. type DescribeReservedDBInstancesOutput struct { _ struct{} `type:"structure"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // A list of reserved DB instances. ReservedDBInstances []*ReservedDBInstance `locationNameList:"ReservedDBInstance" type:"list"` } // String returns the string representation func (s DescribeReservedDBInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedDBInstancesOutput) GoString() string { return s.String() } type DescribeSourceRegionsInput struct { _ struct{} `type:"structure"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous DescribeSourceRegions // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by MaxRecords. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. // // Default: 100 // // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The source region name. For example, us-east-1. // // Constraints: // // * Must specify a valid AWS Region name. RegionName *string `type:"string"` } // String returns the string representation func (s DescribeSourceRegionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSourceRegionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeSourceRegionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeSourceRegionsInput"} if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the result of a successful invocation of the DescribeSourceRegions // action. type DescribeSourceRegionsOutput struct { _ struct{} `type:"structure"` // An optional pagination token provided by a previous request. If this parameter // is specified, the response includes only records beyond the marker, up to // the value specified by MaxRecords. Marker *string `type:"string"` // A list of SourceRegion instances that contains each source AWS Region that // the current region can get a Read Replica or a DB snapshot from. SourceRegions []*SourceRegion `locationNameList:"SourceRegion" type:"list"` } // String returns the string representation func (s DescribeSourceRegionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSourceRegionsOutput) GoString() string { return s.String() } // An Active Directory Domain membership record associated with the DB instance. type DomainMembership struct { _ struct{} `type:"structure"` // The identifier of the Active Directory Domain. Domain *string `type:"string"` // The fully qualified domain name of the Active Directory Domain. FQDN *string `type:"string"` // The name of the IAM role to be used when making API calls to the Directory // Service. IAMRoleName *string `type:"string"` // The status of the DB instance's Active Directory Domain membership, such // as joined, pending-join, failed etc). Status *string `type:"string"` } // String returns the string representation func (s DomainMembership) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DomainMembership) GoString() string { return s.String() } type DownloadDBLogFilePortionInput struct { _ struct{} `type:"structure"` // The customer-assigned name of the DB instance that contains the log files // you want to list. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // DBInstanceIdentifier is a required field DBInstanceIdentifier *string `type:"string" required:"true"` // The name of the log file to be downloaded. // // LogFileName is a required field LogFileName *string `type:"string" required:"true"` // The pagination token provided in the previous request or "0". If the Marker // parameter is specified the response includes only records beyond the marker // until the end of the file or up to NumberOfLines. Marker *string `type:"string"` // The number of lines to download. If the number of lines specified results // in a file over 1 MB in size, the file will be truncated at 1 MB in size. // // If the NumberOfLines parameter is specified, then the block of lines returned // can be from the beginning or the end of the log file, depending on the value // of the Marker parameter. // // * If neither Marker or NumberOfLines are specified, the entire log file // is returned up to a maximum of 10000 lines, starting with the most recent // log entries first. // // * If NumberOfLines is specified and Marker is not specified, then the // most recent lines from the end of the log file are returned. // // * If Marker is specified as "0", then the specified number of lines from // the beginning of the log file are returned. // // * You can download the log file in blocks of lines by specifying the size // of the block using the NumberOfLines parameter, and by specifying a value // of "0" for the Marker parameter in your first request. Include the Marker // value returned in the response as the Marker value for the next request, // continuing until the AdditionalDataPending response element returns false. NumberOfLines *int64 `type:"integer"` } // String returns the string representation func (s DownloadDBLogFilePortionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DownloadDBLogFilePortionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DownloadDBLogFilePortionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DownloadDBLogFilePortionInput"} if s.DBInstanceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBInstanceIdentifier")) } if s.LogFileName == nil { invalidParams.Add(request.NewErrParamRequired("LogFileName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // This data type is used as a response element to DownloadDBLogFilePortion. type DownloadDBLogFilePortionOutput struct { _ struct{} `type:"structure"` // Boolean value that if true, indicates there is more data to be downloaded. AdditionalDataPending *bool `type:"boolean"` // Entries from the specified log file. LogFileData *string `type:"string"` // A pagination token that can be used in a subsequent DownloadDBLogFilePortion // request. Marker *string `type:"string"` } // String returns the string representation func (s DownloadDBLogFilePortionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DownloadDBLogFilePortionOutput) GoString() string { return s.String() } // This data type is used as a response element in the following actions: // // * AuthorizeDBSecurityGroupIngress // // * DescribeDBSecurityGroups // // * RevokeDBSecurityGroupIngress type EC2SecurityGroup struct { _ struct{} `type:"structure"` // Specifies the id of the EC2 security group. EC2SecurityGroupId *string `type:"string"` // Specifies the name of the EC2 security group. EC2SecurityGroupName *string `type:"string"` // Specifies the AWS ID of the owner of the EC2 security group specified in // the EC2SecurityGroupName field. EC2SecurityGroupOwnerId *string `type:"string"` // Provides the status of the EC2 security group. Status can be "authorizing", // "authorized", "revoking", and "revoked". Status *string `type:"string"` } // String returns the string representation func (s EC2SecurityGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EC2SecurityGroup) GoString() string { return s.String() } // This data type is used as a response element in the following actions: // // * CreateDBInstance // // * DescribeDBInstances // // * DeleteDBInstance type Endpoint struct { _ struct{} `type:"structure"` // Specifies the DNS address of the DB instance. Address *string `type:"string"` // Specifies the ID that Amazon Route 53 assigns when you create a hosted zone. HostedZoneId *string `type:"string"` // Specifies the port that the database engine is listening on. Port *int64 `type:"integer"` } // String returns the string representation func (s Endpoint) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Endpoint) GoString() string { return s.String() } // Contains the result of a successful invocation of the DescribeEngineDefaultParameters // action. type EngineDefaults struct { _ struct{} `type:"structure"` // Specifies the name of the DB parameter group family that the engine default // parameters apply to. DBParameterGroupFamily *string `type:"string"` // An optional pagination token provided by a previous EngineDefaults request. // If this parameter is specified, the response includes only records beyond // the marker, up to the value specified by MaxRecords . Marker *string `type:"string"` // Contains a list of engine default parameters. Parameters []*Parameter `locationNameList:"Parameter" type:"list"` } // String returns the string representation func (s EngineDefaults) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EngineDefaults) GoString() string { return s.String() } // This data type is used as a response element in the DescribeEvents action. type Event struct { _ struct{} `type:"structure"` // Specifies the date and time of the event. Date *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Specifies the category for the event. EventCategories []*string `locationNameList:"EventCategory" type:"list"` // Provides the text of this event. Message *string `type:"string"` // The Amazon Resource Name (ARN) for the event. SourceArn *string `type:"string"` // Provides the identifier for the source of the event. SourceIdentifier *string `type:"string"` // Specifies the source type for this event. SourceType *string `type:"string" enum:"SourceType"` } // String returns the string representation func (s Event) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Event) GoString() string { return s.String() } // Contains the results of a successful invocation of the DescribeEventCategories // action. type EventCategoriesMap struct { _ struct{} `type:"structure"` // The event categories for the specified source type EventCategories []*string `locationNameList:"EventCategory" type:"list"` // The source type that the returned categories belong to SourceType *string `type:"string"` } // String returns the string representation func (s EventCategoriesMap) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EventCategoriesMap) GoString() string { return s.String() } // Contains the results of a successful invocation of the DescribeEventSubscriptions // action. type EventSubscription struct { _ struct{} `type:"structure"` // The RDS event notification subscription Id. CustSubscriptionId *string `type:"string"` // The AWS customer account associated with the RDS event notification subscription. CustomerAwsId *string `type:"string"` // A Boolean value indicating if the subscription is enabled. True indicates // the subscription is enabled. Enabled *bool `type:"boolean"` // A list of event categories for the RDS event notification subscription. EventCategoriesList []*string `locationNameList:"EventCategory" type:"list"` // The Amazon Resource Name (ARN) for the event subscription. EventSubscriptionArn *string `type:"string"` // The topic ARN of the RDS event notification subscription. SnsTopicArn *string `type:"string"` // A list of source IDs for the RDS event notification subscription. SourceIdsList []*string `locationNameList:"SourceId" type:"list"` // The source type for the RDS event notification subscription. SourceType *string `type:"string"` // The status of the RDS event notification subscription. // // Constraints: // // Can be one of the following: creating | modifying | deleting | active | no-permission // | topic-not-exist // // The status "no-permission" indicates that RDS no longer has permission to // post to the SNS topic. The status "topic-not-exist" indicates that the topic // was deleted after the subscription was created. Status *string `type:"string"` // The time the RDS event notification subscription was created. SubscriptionCreationTime *string `type:"string"` } // String returns the string representation func (s EventSubscription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EventSubscription) GoString() string { return s.String() } type FailoverDBClusterInput struct { _ struct{} `type:"structure"` // A DB cluster identifier to force a failover for. This parameter is not case-sensitive. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens DBClusterIdentifier *string `type:"string"` // The name of the instance to promote to the primary instance. // // You must specify the instance identifier for an Aurora Replica in the DB // cluster. For example, mydbcluster-replica1. TargetDBInstanceIdentifier *string `type:"string"` } // String returns the string representation func (s FailoverDBClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FailoverDBClusterInput) GoString() string { return s.String() } type FailoverDBClusterOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBCluster // // * DeleteDBCluster // // * FailoverDBCluster // // * ModifyDBCluster // // * RestoreDBClusterFromSnapshot // // * RestoreDBClusterToPointInTime // // This data type is used as a response element in the DescribeDBClusters action. DBCluster *DBCluster `type:"structure"` } // String returns the string representation func (s FailoverDBClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FailoverDBClusterOutput) GoString() string { return s.String() } // This type is not currently supported. type Filter struct { _ struct{} `type:"structure"` // This parameter is not currently supported. // // Name is a required field Name *string `type:"string" required:"true"` // This parameter is not currently supported. // // Values is a required field Values []*string `locationNameList:"Value" type:"list" required:"true"` } // String returns the string representation func (s Filter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Filter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Filter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Filter"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Values == nil { invalidParams.Add(request.NewErrParamRequired("Values")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // This data type is used as a response element in the DescribeDBSecurityGroups // action. type IPRange struct { _ struct{} `type:"structure"` // Specifies the IP range. CIDRIP *string `type:"string"` // Specifies the status of the IP range. Status can be "authorizing", "authorized", // "revoking", and "revoked". Status *string `type:"string"` } // String returns the string representation func (s IPRange) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IPRange) GoString() string { return s.String() } type ListTagsForResourceInput struct { _ struct{} `type:"structure"` // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` // The Amazon RDS resource with tags to be listed. This value is an Amazon Resource // Name (ARN). For information about creating an ARN, see Constructing an RDS // Amazon Resource Name (ARN) (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.ARN.html#USER_Tagging.ARN.Constructing). // // ResourceName is a required field ResourceName *string `type:"string" required:"true"` } // String returns the string representation func (s ListTagsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsForResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} if s.ResourceName == nil { invalidParams.Add(request.NewErrParamRequired("ResourceName")) } if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListTagsForResourceOutput struct { _ struct{} `type:"structure"` // List of tags returned by the ListTagsForResource operation. TagList []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s ListTagsForResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceOutput) GoString() string { return s.String() } type ModifyDBClusterInput struct { _ struct{} `type:"structure"` // A value that specifies whether the modifications in this request and any // pending modifications are asynchronously applied as soon as possible, regardless // of the PreferredMaintenanceWindow setting for the DB cluster. If this parameter // is set to false, changes to the DB cluster are applied during the next maintenance // window. // // The ApplyImmediately parameter only affects the NewDBClusterIdentifier and // MasterUserPassword values. If you set the ApplyImmediately parameter value // to false, then changes to the NewDBClusterIdentifier and MasterUserPassword // values are applied during the next maintenance window. All other changes // are applied immediately, regardless of the value of the ApplyImmediately // parameter. // // Default: false ApplyImmediately *bool `type:"boolean"` // The number of days for which automated backups are retained. You must specify // a minimum value of 1. // // Default: 1 // // Constraints: // // * Must be a value from 1 to 35 BackupRetentionPeriod *int64 `type:"integer"` // The DB cluster identifier for the cluster being modified. This parameter // is not case-sensitive. // // Constraints: // // * Must be the identifier for an existing DB cluster. // // * Must contain from 1 to 63 alphanumeric characters or hyphens. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` // The name of the DB cluster parameter group to use for the DB cluster. DBClusterParameterGroupName *string `type:"string"` // The new password for the master database user. This password can contain // any printable ASCII character except "/", """, or "@". // // Constraints: Must contain from 8 to 41 characters. MasterUserPassword *string `type:"string"` // The new DB cluster identifier for the DB cluster when renaming a DB cluster. // This value is stored as a lowercase string. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // Example: my-cluster2 NewDBClusterIdentifier *string `type:"string"` // A value that indicates that the DB cluster should be associated with the // specified option group. Changing this parameter does not result in an outage // except in the following case, and the change is applied during the next maintenance // window unless the ApplyImmediately parameter is set to true for this request. // If the parameter change results in an option group that enables OEM, this // change can cause a brief (sub-second) period during which new connections // are rejected but existing connections are not interrupted. // // Permanent options cannot be removed from an option group. The option group // cannot be removed from a DB cluster once it is associated with a DB cluster. OptionGroupName *string `type:"string"` // The port number on which the DB cluster accepts connections. // // Constraints: Value must be 1150-65535 // // Default: The same port as the original DB cluster. Port *int64 `type:"integer"` // The daily time range during which automated backups are created if automated // backups are enabled, using the BackupRetentionPeriod parameter. // // Default: A 30-minute window selected at random from an 8-hour block of time // per region. To see the time blocks available, see Adjusting the Preferred // Maintenance Window (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AdjustingTheMaintenanceWindow.html) // in the Amazon RDS User Guide. // // Constraints: // // * Must be in the format hh24:mi-hh24:mi. // // * Times should be in Universal Coordinated Time (UTC). // // * Must not conflict with the preferred maintenance window. // // * Must be at least 30 minutes. PreferredBackupWindow *string `type:"string"` // The weekly time range during which system maintenance can occur, in Universal // Coordinated Time (UTC). // // Format: ddd:hh24:mi-ddd:hh24:mi // // Default: A 30-minute window selected at random from an 8-hour block of time // per region, occurring on a random day of the week. To see the time blocks // available, see Adjusting the Preferred Maintenance Window (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AdjustingTheMaintenanceWindow.html) // in the Amazon RDS User Guide. // // Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun // // Constraints: Minimum 30-minute window. PreferredMaintenanceWindow *string `type:"string"` // A lst of VPC security groups that the DB cluster will belong to. VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` } // String returns the string representation func (s ModifyDBClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyDBClusterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyDBClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyDBClusterInput"} if s.DBClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyDBClusterOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBCluster // // * DeleteDBCluster // // * FailoverDBCluster // // * ModifyDBCluster // // * RestoreDBClusterFromSnapshot // // * RestoreDBClusterToPointInTime // // This data type is used as a response element in the DescribeDBClusters action. DBCluster *DBCluster `type:"structure"` } // String returns the string representation func (s ModifyDBClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyDBClusterOutput) GoString() string { return s.String() } type ModifyDBClusterParameterGroupInput struct { _ struct{} `type:"structure"` // The name of the DB cluster parameter group to modify. // // DBClusterParameterGroupName is a required field DBClusterParameterGroupName *string `type:"string" required:"true"` // A list of parameters in the DB cluster parameter group to modify. // // Parameters is a required field Parameters []*Parameter `locationNameList:"Parameter" type:"list" required:"true"` } // String returns the string representation func (s ModifyDBClusterParameterGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyDBClusterParameterGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyDBClusterParameterGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyDBClusterParameterGroupInput"} if s.DBClusterParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterParameterGroupName")) } if s.Parameters == nil { invalidParams.Add(request.NewErrParamRequired("Parameters")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyDBClusterSnapshotAttributeInput struct { _ struct{} `type:"structure"` // The name of the DB cluster snapshot attribute to modify. // // To manage authorization for other AWS accounts to copy or restore a manual // DB cluster snapshot, set this value to restore. // // AttributeName is a required field AttributeName *string `type:"string" required:"true"` // The identifier for the DB cluster snapshot to modify the attributes for. // // DBClusterSnapshotIdentifier is a required field DBClusterSnapshotIdentifier *string `type:"string" required:"true"` // A list of DB cluster snapshot attributes to add to the attribute specified // by AttributeName. // // To authorize other AWS accounts to copy or restore a manual DB cluster snapshot, // set this list to include one or more AWS account IDs, or all to make the // manual DB cluster snapshot restorable by any AWS account. Do not add the // all value for any manual DB cluster snapshots that contain private information // that you don't want available to all AWS accounts. ValuesToAdd []*string `locationNameList:"AttributeValue" type:"list"` // A list of DB cluster snapshot attributes to remove from the attribute specified // by AttributeName. // // To remove authorization for other AWS accounts to copy or restore a manual // DB cluster snapshot, set this list to include one or more AWS account identifiers, // or all to remove authorization for any AWS account to copy or restore the // DB cluster snapshot. If you specify all, an AWS account whose account ID // is explicitly added to the restore attribute can still copy or restore a // manual DB cluster snapshot. ValuesToRemove []*string `locationNameList:"AttributeValue" type:"list"` } // String returns the string representation func (s ModifyDBClusterSnapshotAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyDBClusterSnapshotAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyDBClusterSnapshotAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyDBClusterSnapshotAttributeInput"} if s.AttributeName == nil { invalidParams.Add(request.NewErrParamRequired("AttributeName")) } if s.DBClusterSnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterSnapshotIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyDBClusterSnapshotAttributeOutput struct { _ struct{} `type:"structure"` // Contains the results of a successful call to the DescribeDBClusterSnapshotAttributes // API action. // // Manual DB cluster snapshot attributes are used to authorize other AWS accounts // to copy or restore a manual DB cluster snapshot. For more information, see // the ModifyDBClusterSnapshotAttribute API action. DBClusterSnapshotAttributesResult *DBClusterSnapshotAttributesResult `type:"structure"` } // String returns the string representation func (s ModifyDBClusterSnapshotAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyDBClusterSnapshotAttributeOutput) GoString() string { return s.String() } type ModifyDBInstanceInput struct { _ struct{} `type:"structure"` // The new storage capacity of the RDS instance. Changing this setting does // not result in an outage and the change is applied during the next maintenance // window unless ApplyImmediately is set to true for this request. // // MySQL // // Default: Uses existing setting // // Valid Values: 5-6144 // // Constraints: Value supplied must be at least 10% greater than the current // value. Values that are not at least 10% greater than the existing value are // rounded up so that they are 10% greater than the current value. // // Type: Integer // // MariaDB // // Default: Uses existing setting // // Valid Values: 5-6144 // // Constraints: Value supplied must be at least 10% greater than the current // value. Values that are not at least 10% greater than the existing value are // rounded up so that they are 10% greater than the current value. // // Type: Integer // // PostgreSQL // // Default: Uses existing setting // // Valid Values: 5-6144 // // Constraints: Value supplied must be at least 10% greater than the current // value. Values that are not at least 10% greater than the existing value are // rounded up so that they are 10% greater than the current value. // // Type: Integer // // Oracle // // Default: Uses existing setting // // Valid Values: 10-6144 // // Constraints: Value supplied must be at least 10% greater than the current // value. Values that are not at least 10% greater than the existing value are // rounded up so that they are 10% greater than the current value. // // SQL Server // // Cannot be modified. // // If you choose to migrate your DB instance from using standard storage to // using Provisioned IOPS, or from using Provisioned IOPS to using standard // storage, the process can take time. The duration of the migration depends // on several factors such as database load, storage size, storage type (standard // or Provisioned IOPS), amount of IOPS provisioned (if any), and the number // of prior scale storage operations. Typical migration times are under 24 hours, // but the process can take up to several days in some cases. During the migration, // the DB instance will be available for use, but might experience performance // degradation. While the migration takes place, nightly backups for the instance // will be suspended. No other Amazon RDS operations can take place for the // instance, including modifying the instance, rebooting the instance, deleting // the instance, creating a Read Replica for the instance, and creating a DB // snapshot of the instance. AllocatedStorage *int64 `type:"integer"` // Indicates that major version upgrades are allowed. Changing this parameter // does not result in an outage and the change is asynchronously applied as // soon as possible. // // Constraints: This parameter must be set to true when specifying a value for // the EngineVersion parameter that is a different major version than the DB // instance's current version. AllowMajorVersionUpgrade *bool `type:"boolean"` // Specifies whether the modifications in this request and any pending modifications // are asynchronously applied as soon as possible, regardless of the PreferredMaintenanceWindow // setting for the DB instance. // // If this parameter is set to false, changes to the DB instance are applied // during the next maintenance window. Some parameter changes can cause an outage // and will be applied on the next call to RebootDBInstance, or the next failure // reboot. Review the table of parameters in Modifying a DB Instance and Using // the Apply Immediately Parameter (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.DBInstance.Modifying.html) // to see the impact that setting ApplyImmediately to true or false has for // each modified parameter and to determine when the changes will be applied. // // Default: false ApplyImmediately *bool `type:"boolean"` // Indicates that minor version upgrades will be applied automatically to the // DB instance during the maintenance window. Changing this parameter does not // result in an outage except in the following case and the change is asynchronously // applied as soon as possible. An outage will result if this parameter is set // to true during the maintenance window, and a newer minor version is available, // and RDS has enabled auto patching for that engine version. AutoMinorVersionUpgrade *bool `type:"boolean"` // The number of days to retain automated backups. Setting this parameter to // a positive number enables backups. Setting this parameter to 0 disables automated // backups. // // Changing this parameter can result in an outage if you change from 0 to a // non-zero value or from a non-zero value to 0. These changes are applied during // the next maintenance window unless the ApplyImmediately parameter is set // to true for this request. If you change the parameter from one non-zero value // to another non-zero value, the change is asynchronously applied as soon as // possible. // // Default: Uses existing setting // // Constraints: // // * Must be a value from 0 to 35 // // * Can be specified for a MySQL Read Replica only if the source is running // MySQL 5.6 // // * Can be specified for a PostgreSQL Read Replica only if the source is // running PostgreSQL 9.3.5 // // * Cannot be set to 0 if the DB instance is a source to Read Replicas BackupRetentionPeriod *int64 `type:"integer"` // Indicates the certificate that needs to be associated with the instance. CACertificateIdentifier *string `type:"string"` // True to copy all tags from the DB instance to snapshots of the DB instance; // otherwise false. The default is false. CopyTagsToSnapshot *bool `type:"boolean"` // The new compute and memory capacity of the DB instance. To determine the // instance classes that are available for a particular DB engine, use the DescribeOrderableDBInstanceOptions // action. // // Passing a value for this setting causes an outage during the change and is // applied during the next maintenance window, unless ApplyImmediately is specified // as true for this request. // // Default: Uses existing setting // // Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge // | db.m2.xlarge | db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large // | db.m3.xlarge | db.m3.2xlarge | db.m4.large | db.m4.xlarge | db.m4.2xlarge // | db.m4.4xlarge | db.m4.10xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge // | db.r3.4xlarge | db.r3.8xlarge | db.t2.micro | db.t2.small | db.t2.medium // | db.t2.large DBInstanceClass *string `type:"string"` // The DB instance identifier. This value is stored as a lowercase string. // // Constraints: // // * Must be the identifier for an existing DB instance // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // DBInstanceIdentifier is a required field DBInstanceIdentifier *string `type:"string" required:"true"` // The name of the DB parameter group to apply to the DB instance. Changing // this setting does not result in an outage. The parameter group name itself // is changed immediately, but the actual parameter changes are not applied // until you reboot the instance without failover. The db instance will NOT // be rebooted automatically and the parameter changes will NOT be applied during // the next maintenance window. // // Default: Uses existing setting // // Constraints: The DB parameter group must be in the same DB parameter group // family as this DB instance. DBParameterGroupName *string `type:"string"` // The port number on which the database accepts connections. // // The value of the DBPortNumber parameter must not match any of the port values // specified for options in the option group for the DB instance. // // Your database will restart when you change the DBPortNumber value regardless // of the value of the ApplyImmediately parameter. // // MySQL // // Default: 3306 // // Valid Values: 1150-65535 // // MariaDB // // Default: 3306 // // Valid Values: 1150-65535 // // PostgreSQL // // Default: 5432 // // Valid Values: 1150-65535 // // Type: Integer // // Oracle // // Default: 1521 // // Valid Values: 1150-65535 // // SQL Server // // Default: 1433 // // Valid Values: 1150-65535 except for 1434, 3389, 47001, 49152, and 49152 through // 49156. // // Amazon Aurora // // Default: 3306 // // Valid Values: 1150-65535 DBPortNumber *int64 `type:"integer"` // A list of DB security groups to authorize on this DB instance. Changing this // setting does not result in an outage and the change is asynchronously applied // as soon as possible. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens DBSecurityGroups []*string `locationNameList:"DBSecurityGroupName" type:"list"` // The new DB subnet group for the DB instance. You can use this parameter to // move your DB instance to a different VPC. If your DB instance is not in a // VPC, you can also use this parameter to move your DB instance into a VPC. // For more information, see Updating the VPC for a DB Instance (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html#USER_VPC.Non-VPC2VPC). // // Changing the subnet group causes an outage during the change. The change // is applied during the next maintenance window, unless you specify true for // the ApplyImmediately parameter. // // Constraints: Must contain no more than 255 alphanumeric characters, periods, // underscores, spaces, or hyphens. // // Example: mySubnetGroup DBSubnetGroupName *string `type:"string"` // The Active Directory Domain to move the instance to. Specify none to remove // the instance from its current domain. The domain must be created prior to // this operation. Currently only a Microsoft SQL Server instance can be created // in a Active Directory Domain. Domain *string `type:"string"` // The name of the IAM role to use when making API calls to the Directory Service. DomainIAMRoleName *string `type:"string"` // The version number of the database engine to upgrade to. Changing this parameter // results in an outage and the change is applied during the next maintenance // window unless the ApplyImmediately parameter is set to true for this request. // // For major version upgrades, if a non-default DB parameter group is currently // in use, a new DB parameter group in the DB parameter group family for the // new engine version must be specified. The new DB parameter group can be the // default for that DB parameter group family. // // For a list of valid engine versions, see CreateDBInstance. EngineVersion *string `type:"string"` // The new Provisioned IOPS (I/O operations per second) value for the RDS instance. // Changing this setting does not result in an outage and the change is applied // during the next maintenance window unless the ApplyImmediately parameter // is set to true for this request. // // Default: Uses existing setting // // Constraints: Value supplied must be at least 10% greater than the current // value. Values that are not at least 10% greater than the existing value are // rounded up so that they are 10% greater than the current value. If you are // migrating from Provisioned IOPS to standard storage, set this value to 0. // The DB instance will require a reboot for the change in storage type to take // effect. // // SQL Server // // Setting the IOPS value for the SQL Server database engine is not supported. // // Type: Integer // // If you choose to migrate your DB instance from using standard storage to // using Provisioned IOPS, or from using Provisioned IOPS to using standard // storage, the process can take time. The duration of the migration depends // on several factors such as database load, storage size, storage type (standard // or Provisioned IOPS), amount of IOPS provisioned (if any), and the number // of prior scale storage operations. Typical migration times are under 24 hours, // but the process can take up to several days in some cases. During the migration, // the DB instance will be available for use, but might experience performance // degradation. While the migration takes place, nightly backups for the instance // will be suspended. No other Amazon RDS operations can take place for the // instance, including modifying the instance, rebooting the instance, deleting // the instance, creating a Read Replica for the instance, and creating a DB // snapshot of the instance. Iops *int64 `type:"integer"` // The license model for the DB instance. // // Valid values: license-included | bring-your-own-license | general-public-license LicenseModel *string `type:"string"` // The new password for the DB instance master user. Can be any printable ASCII // character except "/", """, or "@". // // Changing this parameter does not result in an outage and the change is asynchronously // applied as soon as possible. Between the time of the request and the completion // of the request, the MasterUserPassword element exists in the PendingModifiedValues // element of the operation response. // // Default: Uses existing setting // // Constraints: Must be 8 to 41 alphanumeric characters (MySQL, MariaDB, and // Amazon Aurora), 8 to 30 alphanumeric characters (Oracle), or 8 to 128 alphanumeric // characters (SQL Server). // // Amazon RDS API actions never return the password, so this action provides // a way to regain access to a primary instance user if the password is lost. // This includes restoring privileges that might have been accidentally revoked. MasterUserPassword *string `type:"string"` // The interval, in seconds, between points when Enhanced Monitoring metrics // are collected for the DB instance. To disable collecting Enhanced Monitoring // metrics, specify 0. The default is 0. // // If MonitoringRoleArn is specified, then you must also set MonitoringInterval // to a value other than 0. // // Valid Values: 0, 1, 5, 10, 15, 30, 60 MonitoringInterval *int64 `type:"integer"` // The ARN for the IAM role that permits RDS to send enhanced monitoring metrics // to CloudWatch Logs. For example, arn:aws:iam:123456789012:role/emaccess. // For information on creating a monitoring role, go to To create an IAM role // for Amazon RDS Enhanced Monitoring (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html#USER_Monitoring.OS.IAMRole). // // If MonitoringInterval is set to a value other than 0, then you must supply // a MonitoringRoleArn value. MonitoringRoleArn *string `type:"string"` // Specifies if the DB instance is a Multi-AZ deployment. Changing this parameter // does not result in an outage and the change is applied during the next maintenance // window unless the ApplyImmediately parameter is set to true for this request. // // Constraints: Cannot be specified if the DB instance is a Read Replica. MultiAZ *bool `type:"boolean"` // The new DB instance identifier for the DB instance when renaming a DB instance. // When you change the DB instance identifier, an instance reboot will occur // immediately if you set Apply Immediately to true, or will occur during the // next maintenance window if Apply Immediately to false. This value is stored // as a lowercase string. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens NewDBInstanceIdentifier *string `type:"string"` // Indicates that the DB instance should be associated with the specified option // group. Changing this parameter does not result in an outage except in the // following case and the change is applied during the next maintenance window // unless the ApplyImmediately parameter is set to true for this request. If // the parameter change results in an option group that enables OEM, this change // can cause a brief (sub-second) period during which new connections are rejected // but existing connections are not interrupted. // // Permanent options, such as the TDE option for Oracle Advanced Security TDE, // cannot be removed from an option group, and that option group cannot be removed // from a DB instance once it is associated with a DB instance OptionGroupName *string `type:"string"` // The daily time range during which automated backups are created if automated // backups are enabled, as determined by the BackupRetentionPeriod parameter. // Changing this parameter does not result in an outage and the change is asynchronously // applied as soon as possible. // // Constraints: // // * Must be in the format hh24:mi-hh24:mi // // * Times should be in Universal Time Coordinated (UTC) // // * Must not conflict with the preferred maintenance window // // * Must be at least 30 minutes PreferredBackupWindow *string `type:"string"` // The weekly time range (in UTC) during which system maintenance can occur, // which might result in an outage. Changing this parameter does not result // in an outage, except in the following situation, and the change is asynchronously // applied as soon as possible. If there are pending actions that cause a reboot, // and the maintenance window is changed to include the current time, then changing // this parameter will cause a reboot of the DB instance. If moving this window // to the current time, there must be at least 30 minutes between the current // time and end of the window to ensure pending changes are applied. // // Default: Uses existing setting // // Format: ddd:hh24:mi-ddd:hh24:mi // // Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun // // Constraints: Must be at least 30 minutes PreferredMaintenanceWindow *string `type:"string"` // A value that specifies the order in which an Aurora Replica is promoted to // the primary instance after a failure of the existing primary instance. For // more information, see Fault Tolerance for an Aurora DB Cluster (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Managing.html#Aurora.Managing.FaultTolerance). // // Default: 1 // // Valid Values: 0 - 15 PromotionTier *int64 `type:"integer"` // Boolean value that indicates if the DB instance has a publicly resolvable // DNS name. Set to True to make the DB instance Internet-facing with a publicly // resolvable DNS name, which resolves to a public IP address. Set to False // to make the DB instance internal with a DNS name that resolves to a private // IP address. // // PubliclyAccessible only applies to DB instances in a VPC. The DB instance // must be part of a public subnet and PubliclyAccessible must be true in order // for it to be publicly accessible. // // Changes to the PubliclyAccessible parameter are applied immediately regardless // of the value of the ApplyImmediately parameter. // // Default: false PubliclyAccessible *bool `type:"boolean"` // Specifies the storage type to be associated with the DB instance. // // Valid values: standard | gp2 | io1 // // If you specify io1, you must also include a value for the Iops parameter. // // Default: io1 if the Iops parameter is specified; otherwise standard StorageType *string `type:"string"` // The ARN from the Key Store with which to associate the instance for TDE encryption. TdeCredentialArn *string `type:"string"` // The password for the given ARN from the Key Store in order to access the // device. TdeCredentialPassword *string `type:"string"` // A list of EC2 VPC security groups to authorize on this DB instance. This // change is asynchronously applied as soon as possible. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` } // String returns the string representation func (s ModifyDBInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyDBInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyDBInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyDBInstanceInput"} if s.DBInstanceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBInstanceIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyDBInstanceOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBInstance // // * DeleteDBInstance // // * ModifyDBInstance // // This data type is used as a response element in the DescribeDBInstances action. DBInstance *DBInstance `type:"structure"` } // String returns the string representation func (s ModifyDBInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyDBInstanceOutput) GoString() string { return s.String() } type ModifyDBParameterGroupInput struct { _ struct{} `type:"structure"` // The name of the DB parameter group. // // Constraints: // // * Must be the name of an existing DB parameter group // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // DBParameterGroupName is a required field DBParameterGroupName *string `type:"string" required:"true"` // An array of parameter names, values, and the apply method for the parameter // update. At least one parameter name, value, and apply method must be supplied; // subsequent arguments are optional. A maximum of 20 parameters can be modified // in a single request. // // Valid Values (for the application method): immediate | pending-reboot // // You can use the immediate value with dynamic parameters only. You can use // the pending-reboot value for both dynamic and static parameters, and changes // are applied when you reboot the DB instance without failover. // // Parameters is a required field Parameters []*Parameter `locationNameList:"Parameter" type:"list" required:"true"` } // String returns the string representation func (s ModifyDBParameterGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyDBParameterGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyDBParameterGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyDBParameterGroupInput"} if s.DBParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DBParameterGroupName")) } if s.Parameters == nil { invalidParams.Add(request.NewErrParamRequired("Parameters")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyDBSnapshotAttributeInput struct { _ struct{} `type:"structure"` // The name of the DB snapshot attribute to modify. // // To manage authorization for other AWS accounts to copy or restore a manual // DB snapshot, set this value to restore. // // AttributeName is a required field AttributeName *string `type:"string" required:"true"` // The identifier for the DB snapshot to modify the attributes for. // // DBSnapshotIdentifier is a required field DBSnapshotIdentifier *string `type:"string" required:"true"` // A list of DB snapshot attributes to add to the attribute specified by AttributeName. // // To authorize other AWS accounts to copy or restore a manual snapshot, set // this list to include one or more AWS account IDs, or all to make the manual // DB snapshot restorable by any AWS account. Do not add the all value for any // manual DB snapshots that contain private information that you don't want // available to all AWS accounts. ValuesToAdd []*string `locationNameList:"AttributeValue" type:"list"` // A list of DB snapshot attributes to remove from the attribute specified by // AttributeName. // // To remove authorization for other AWS accounts to copy or restore a manual // snapshot, set this list to include one or more AWS account identifiers, or // all to remove authorization for any AWS account to copy or restore the DB // snapshot. If you specify all, an AWS account whose account ID is explicitly // added to the restore attribute can still copy or restore the manual DB snapshot. ValuesToRemove []*string `locationNameList:"AttributeValue" type:"list"` } // String returns the string representation func (s ModifyDBSnapshotAttributeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyDBSnapshotAttributeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyDBSnapshotAttributeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyDBSnapshotAttributeInput"} if s.AttributeName == nil { invalidParams.Add(request.NewErrParamRequired("AttributeName")) } if s.DBSnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBSnapshotIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyDBSnapshotAttributeOutput struct { _ struct{} `type:"structure"` // Contains the results of a successful call to the DescribeDBSnapshotAttributes // API action. // // Manual DB snapshot attributes are used to authorize other AWS accounts to // copy or restore a manual DB snapshot. For more information, see the ModifyDBSnapshotAttribute // API action. DBSnapshotAttributesResult *DBSnapshotAttributesResult `type:"structure"` } // String returns the string representation func (s ModifyDBSnapshotAttributeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyDBSnapshotAttributeOutput) GoString() string { return s.String() } type ModifyDBSubnetGroupInput struct { _ struct{} `type:"structure"` // The description for the DB subnet group. DBSubnetGroupDescription *string `type:"string"` // The name for the DB subnet group. This value is stored as a lowercase string. // // Constraints: Must contain no more than 255 alphanumeric characters, periods, // underscores, spaces, or hyphens. Must not be default. // // Example: mySubnetgroup // // DBSubnetGroupName is a required field DBSubnetGroupName *string `type:"string" required:"true"` // The EC2 subnet IDs for the DB subnet group. // // SubnetIds is a required field SubnetIds []*string `locationNameList:"SubnetIdentifier" type:"list" required:"true"` } // String returns the string representation func (s ModifyDBSubnetGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyDBSubnetGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyDBSubnetGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyDBSubnetGroupInput"} if s.DBSubnetGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DBSubnetGroupName")) } if s.SubnetIds == nil { invalidParams.Add(request.NewErrParamRequired("SubnetIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyDBSubnetGroupOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBSubnetGroup // // * ModifyDBSubnetGroup // // * DescribeDBSubnetGroups // // * DeleteDBSubnetGroup // // This data type is used as a response element in the DescribeDBSubnetGroups // action. DBSubnetGroup *DBSubnetGroup `type:"structure"` } // String returns the string representation func (s ModifyDBSubnetGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyDBSubnetGroupOutput) GoString() string { return s.String() } type ModifyEventSubscriptionInput struct { _ struct{} `type:"structure"` // A Boolean value; set to true to activate the subscription. Enabled *bool `type:"boolean"` // A list of event categories for a SourceType that you want to subscribe to. // You can see a list of the categories for a given SourceType in the Events // (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html) // topic in the Amazon RDS User Guide or by using the DescribeEventCategories // action. EventCategories []*string `locationNameList:"EventCategory" type:"list"` // The Amazon Resource Name (ARN) of the SNS topic created for event notification. // The ARN is created by Amazon SNS when you create a topic and subscribe to // it. SnsTopicArn *string `type:"string"` // The type of source that will be generating the events. For example, if you // want to be notified of events generated by a DB instance, you would set this // parameter to db-instance. if this value is not specified, all events are // returned. // // Valid values: db-instance | db-parameter-group | db-security-group | db-snapshot SourceType *string `type:"string"` // The name of the RDS event notification subscription. // // SubscriptionName is a required field SubscriptionName *string `type:"string" required:"true"` } // String returns the string representation func (s ModifyEventSubscriptionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyEventSubscriptionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyEventSubscriptionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyEventSubscriptionInput"} if s.SubscriptionName == nil { invalidParams.Add(request.NewErrParamRequired("SubscriptionName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyEventSubscriptionOutput struct { _ struct{} `type:"structure"` // Contains the results of a successful invocation of the DescribeEventSubscriptions // action. EventSubscription *EventSubscription `type:"structure"` } // String returns the string representation func (s ModifyEventSubscriptionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyEventSubscriptionOutput) GoString() string { return s.String() } type ModifyOptionGroupInput struct { _ struct{} `type:"structure"` // Indicates whether the changes should be applied immediately, or during the // next maintenance window for each instance associated with the option group. ApplyImmediately *bool `type:"boolean"` // The name of the option group to be modified. // // Permanent options, such as the TDE option for Oracle Advanced Security TDE, // cannot be removed from an option group, and that option group cannot be removed // from a DB instance once it is associated with a DB instance // // OptionGroupName is a required field OptionGroupName *string `type:"string" required:"true"` // Options in this list are added to the option group or, if already present, // the specified configuration is used to update the existing configuration. OptionsToInclude []*OptionConfiguration `locationNameList:"OptionConfiguration" type:"list"` // Options in this list are removed from the option group. OptionsToRemove []*string `type:"list"` } // String returns the string representation func (s ModifyOptionGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyOptionGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyOptionGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyOptionGroupInput"} if s.OptionGroupName == nil { invalidParams.Add(request.NewErrParamRequired("OptionGroupName")) } if s.OptionsToInclude != nil { for i, v := range s.OptionsToInclude { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionsToInclude", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyOptionGroupOutput struct { _ struct{} `type:"structure"` OptionGroup *OptionGroup `type:"structure"` } // String returns the string representation func (s ModifyOptionGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyOptionGroupOutput) GoString() string { return s.String() } // Option details. type Option struct { _ struct{} `type:"structure"` // If the option requires access to a port, then this DB security group allows // access to the port. DBSecurityGroupMemberships []*DBSecurityGroupMembership `locationNameList:"DBSecurityGroup" type:"list"` // The description of the option. OptionDescription *string `type:"string"` // The name of the option. OptionName *string `type:"string"` // The option settings for this option. OptionSettings []*OptionSetting `locationNameList:"OptionSetting" type:"list"` // The version of the option. OptionVersion *string `type:"string"` // Indicate if this option is permanent. Permanent *bool `type:"boolean"` // Indicate if this option is persistent. Persistent *bool `type:"boolean"` // If required, the port configured for this option to use. Port *int64 `type:"integer"` // If the option requires access to a port, then this VPC security group allows // access to the port. VpcSecurityGroupMemberships []*VpcSecurityGroupMembership `locationNameList:"VpcSecurityGroupMembership" type:"list"` } // String returns the string representation func (s Option) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Option) GoString() string { return s.String() } // A list of all available options type OptionConfiguration struct { _ struct{} `type:"structure"` // A list of DBSecurityGroupMemebrship name strings used for this option. DBSecurityGroupMemberships []*string `locationNameList:"DBSecurityGroupName" type:"list"` // The configuration of options to include in a group. // // OptionName is a required field OptionName *string `type:"string" required:"true"` // The option settings to include in an option group. OptionSettings []*OptionSetting `locationNameList:"OptionSetting" type:"list"` // The version for the option. OptionVersion *string `type:"string"` // The optional port for the option. Port *int64 `type:"integer"` // A list of VpcSecurityGroupMemebrship name strings used for this option. VpcSecurityGroupMemberships []*string `locationNameList:"VpcSecurityGroupId" type:"list"` } // String returns the string representation func (s OptionConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OptionConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *OptionConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "OptionConfiguration"} if s.OptionName == nil { invalidParams.Add(request.NewErrParamRequired("OptionName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type OptionGroup struct { _ struct{} `type:"structure"` // Indicates whether this option group can be applied to both VPC and non-VPC // instances. The value true indicates the option group can be applied to both // VPC and non-VPC instances. AllowsVpcAndNonVpcInstanceMemberships *bool `type:"boolean"` // Indicates the name of the engine that this option group can be applied to. EngineName *string `type:"string"` // Indicates the major engine version associated with this option group. MajorEngineVersion *string `type:"string"` // The Amazon Resource Name (ARN) for the option group. OptionGroupArn *string `type:"string"` // Provides a description of the option group. OptionGroupDescription *string `type:"string"` // Specifies the name of the option group. OptionGroupName *string `type:"string"` // Indicates what options are available in the option group. Options []*Option `locationNameList:"Option" type:"list"` // If AllowsVpcAndNonVpcInstanceMemberships is false, this field is blank. If // AllowsVpcAndNonVpcInstanceMemberships is true and this field is blank, then // this option group can be applied to both VPC and non-VPC instances. If this // field contains a value, then this option group can only be applied to instances // that are in the VPC indicated by this field. VpcId *string `type:"string"` } // String returns the string representation func (s OptionGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OptionGroup) GoString() string { return s.String() } // Provides information on the option groups the DB instance is a member of. type OptionGroupMembership struct { _ struct{} `type:"structure"` // The name of the option group that the instance belongs to. OptionGroupName *string `type:"string"` // The status of the DB instance's option group membership. Valid values are: // in-sync, pending-apply, pending-removal, pending-maintenance-apply, pending-maintenance-removal, // applying, removing, and failed. Status *string `type:"string"` } // String returns the string representation func (s OptionGroupMembership) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OptionGroupMembership) GoString() string { return s.String() } // Available option. type OptionGroupOption struct { _ struct{} `type:"structure"` // If the option requires a port, specifies the default port for the option. DefaultPort *int64 `type:"integer"` // The description of the option. Description *string `type:"string"` // The name of the engine that this option can be applied to. EngineName *string `type:"string"` // Indicates the major engine version that the option is available for. MajorEngineVersion *string `type:"string"` // The minimum required engine version for the option to be applied. MinimumRequiredMinorEngineVersion *string `type:"string"` // The name of the option. Name *string `type:"string"` // The option settings that are available (and the default value) for each option // in an option group. OptionGroupOptionSettings []*OptionGroupOptionSetting `locationNameList:"OptionGroupOptionSetting" type:"list"` // The versions that are available for the option. OptionGroupOptionVersions []*OptionVersion `locationNameList:"OptionVersion" type:"list"` // The options that conflict with this option. OptionsConflictsWith []*string `locationNameList:"OptionConflictName" type:"list"` // The options that are prerequisites for this option. OptionsDependedOn []*string `locationNameList:"OptionName" type:"list"` // Permanent options can never be removed from an option group. An option group // containing a permanent option can't be removed from a DB instance. Permanent *bool `type:"boolean"` // Persistent options can't be removed from an option group while DB instances // are associated with the option group. If you disassociate all DB instances // from the option group, your can remove the persistent option from the option // group. Persistent *bool `type:"boolean"` // Specifies whether the option requires a port. PortRequired *bool `type:"boolean"` } // String returns the string representation func (s OptionGroupOption) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OptionGroupOption) GoString() string { return s.String() } // Option group option settings are used to display settings available for each // option with their default values and other information. These values are // used with the DescribeOptionGroupOptions action. type OptionGroupOptionSetting struct { _ struct{} `type:"structure"` // Indicates the acceptable values for the option group option. AllowedValues *string `type:"string"` // The DB engine specific parameter type for the option group option. ApplyType *string `type:"string"` // The default value for the option group option. DefaultValue *string `type:"string"` // Boolean value where true indicates that this option group option can be changed // from the default value. IsModifiable *bool `type:"boolean"` // The description of the option group option. SettingDescription *string `type:"string"` // The name of the option group option. SettingName *string `type:"string"` } // String returns the string representation func (s OptionGroupOptionSetting) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OptionGroupOptionSetting) GoString() string { return s.String() } // Option settings are the actual settings being applied or configured for that // option. It is used when you modify an option group or describe option groups. // For example, the NATIVE_NETWORK_ENCRYPTION option has a setting called SQLNET.ENCRYPTION_SERVER // that can have several different values. type OptionSetting struct { _ struct{} `type:"structure"` // The allowed values of the option setting. AllowedValues *string `type:"string"` // The DB engine specific parameter type. ApplyType *string `type:"string"` // The data type of the option setting. DataType *string `type:"string"` // The default value of the option setting. DefaultValue *string `type:"string"` // The description of the option setting. Description *string `type:"string"` // Indicates if the option setting is part of a collection. IsCollection *bool `type:"boolean"` // A Boolean value that, when true, indicates the option setting can be modified // from the default. IsModifiable *bool `type:"boolean"` // The name of the option that has settings that you can set. Name *string `type:"string"` // The current value of the option setting. Value *string `type:"string"` } // String returns the string representation func (s OptionSetting) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OptionSetting) GoString() string { return s.String() } // The version for an option. Option group option versions are returned by the // DescribeOptionGroupOptions action. type OptionVersion struct { _ struct{} `type:"structure"` // True if the version is the default version of the option; otherwise, false. IsDefault *bool `type:"boolean"` // The version of the option. Version *string `type:"string"` } // String returns the string representation func (s OptionVersion) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OptionVersion) GoString() string { return s.String() } // Contains a list of available options for a DB instance // // This data type is used as a response element in the DescribeOrderableDBInstanceOptions // action. type OrderableDBInstanceOption struct { _ struct{} `type:"structure"` // A list of Availability Zones for the orderable DB instance. AvailabilityZones []*AvailabilityZone `locationNameList:"AvailabilityZone" type:"list"` // The DB instance class for the orderable DB instance. DBInstanceClass *string `type:"string"` // The engine type of the orderable DB instance. Engine *string `type:"string"` // The engine version of the orderable DB instance. EngineVersion *string `type:"string"` // The license model for the orderable DB instance. LicenseModel *string `type:"string"` // Indicates whether this orderable DB instance is multi-AZ capable. MultiAZCapable *bool `type:"boolean"` // Indicates whether this orderable DB instance can have a Read Replica. ReadReplicaCapable *bool `type:"boolean"` // Indicates the storage type for this orderable DB instance. StorageType *string `type:"string"` // Indicates whether the DB instance supports enhanced monitoring at intervals // from 1 to 60 seconds. SupportsEnhancedMonitoring *bool `type:"boolean"` // Indicates whether this orderable DB instance supports provisioned IOPS. SupportsIops *bool `type:"boolean"` // Indicates whether this orderable DB instance supports encrypted storage. SupportsStorageEncryption *bool `type:"boolean"` // Indicates whether this is a VPC orderable DB instance. Vpc *bool `type:"boolean"` } // String returns the string representation func (s OrderableDBInstanceOption) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OrderableDBInstanceOption) GoString() string { return s.String() } // This data type is used as a request parameter in the ModifyDBParameterGroup // and ResetDBParameterGroup actions. // // This data type is used as a response element in the DescribeEngineDefaultParameters // and DescribeDBParameters actions. type Parameter struct { _ struct{} `type:"structure"` // Specifies the valid range of values for the parameter. AllowedValues *string `type:"string"` // Indicates when to apply parameter updates. ApplyMethod *string `type:"string" enum:"ApplyMethod"` // Specifies the engine specific parameters type. ApplyType *string `type:"string"` // Specifies the valid data type for the parameter. DataType *string `type:"string"` // Provides a description of the parameter. Description *string `type:"string"` // Indicates whether (true) or not (false) the parameter can be modified. Some // parameters have security or operational implications that prevent them from // being changed. IsModifiable *bool `type:"boolean"` // The earliest engine version to which the parameter can apply. MinimumEngineVersion *string `type:"string"` // Specifies the name of the parameter. ParameterName *string `type:"string"` // Specifies the value of the parameter. ParameterValue *string `type:"string"` // Indicates the source of the parameter value. Source *string `type:"string"` } // String returns the string representation func (s Parameter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Parameter) GoString() string { return s.String() } // Provides information about a pending maintenance action for a resource. type PendingMaintenanceAction struct { _ struct{} `type:"structure"` // The type of pending maintenance action that is available for the resource. Action *string `type:"string"` // The date of the maintenance window when the action will be applied. The maintenance // action will be applied to the resource during its first maintenance window // after this date. If this date is specified, any next-maintenance opt-in requests // are ignored. AutoAppliedAfterDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The effective date when the pending maintenance action will be applied to // the resource. This date takes into account opt-in requests received from // the ApplyPendingMaintenanceAction API, the AutoAppliedAfterDate, and the // ForcedApplyDate. This value is blank if an opt-in request has not been received // and nothing has been specified as AutoAppliedAfterDate or ForcedApplyDate. CurrentApplyDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // A description providing more detail about the maintenance action. Description *string `type:"string"` // The date when the maintenance action will be automatically applied. The maintenance // action will be applied to the resource on this date regardless of the maintenance // window for the resource. If this date is specified, any immediate opt-in // requests are ignored. ForcedApplyDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Indicates the type of opt-in request that has been received for the resource. OptInStatus *string `type:"string"` } // String returns the string representation func (s PendingMaintenanceAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PendingMaintenanceAction) GoString() string { return s.String() } // This data type is used as a response element in the ModifyDBInstance action. type PendingModifiedValues struct { _ struct{} `type:"structure"` // Contains the new AllocatedStorage size for the DB instance that will be applied // or is in progress. AllocatedStorage *int64 `type:"integer"` // Specifies the pending number of days for which automated backups are retained. BackupRetentionPeriod *int64 `type:"integer"` // Specifies the identifier of the CA certificate for the DB instance. CACertificateIdentifier *string `type:"string"` // Contains the new DBInstanceClass for the DB instance that will be applied // or is in progress. DBInstanceClass *string `type:"string"` // Contains the new DBInstanceIdentifier for the DB instance that will be applied // or is in progress. DBInstanceIdentifier *string `type:"string"` // The new DB subnet group for the DB instance. DBSubnetGroupName *string `type:"string"` // Indicates the database engine version. EngineVersion *string `type:"string"` // Specifies the new Provisioned IOPS value for the DB instance that will be // applied or is being applied. Iops *int64 `type:"integer"` // The license model for the DB instance. // // Valid values: license-included | bring-your-own-license | general-public-license LicenseModel *string `type:"string"` // Contains the pending or in-progress change of the master credentials for // the DB instance. MasterUserPassword *string `type:"string"` // Indicates that the Single-AZ DB instance is to change to a Multi-AZ deployment. MultiAZ *bool `type:"boolean"` // Specifies the pending port for the DB instance. Port *int64 `type:"integer"` // Specifies the storage type to be associated with the DB instance. StorageType *string `type:"string"` } // String returns the string representation func (s PendingModifiedValues) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PendingModifiedValues) GoString() string { return s.String() } type PromoteReadReplicaDBClusterInput struct { _ struct{} `type:"structure"` // The identifier of the DB cluster Read Replica to promote. This parameter // is not case-sensitive. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // Example: my-cluster-replica1 // // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s PromoteReadReplicaDBClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PromoteReadReplicaDBClusterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PromoteReadReplicaDBClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PromoteReadReplicaDBClusterInput"} if s.DBClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PromoteReadReplicaDBClusterOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBCluster // // * DeleteDBCluster // // * FailoverDBCluster // // * ModifyDBCluster // // * RestoreDBClusterFromSnapshot // // * RestoreDBClusterToPointInTime // // This data type is used as a response element in the DescribeDBClusters action. DBCluster *DBCluster `type:"structure"` } // String returns the string representation func (s PromoteReadReplicaDBClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PromoteReadReplicaDBClusterOutput) GoString() string { return s.String() } type PromoteReadReplicaInput struct { _ struct{} `type:"structure"` // The number of days to retain automated backups. Setting this parameter to // a positive number enables backups. Setting this parameter to 0 disables automated // backups. // // Default: 1 // // Constraints: // // * Must be a value from 0 to 8 BackupRetentionPeriod *int64 `type:"integer"` // The DB instance identifier. This value is stored as a lowercase string. // // Constraints: // // * Must be the identifier for an existing Read Replica DB instance // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // Example: mydbinstance // // DBInstanceIdentifier is a required field DBInstanceIdentifier *string `type:"string" required:"true"` // The daily time range during which automated backups are created if automated // backups are enabled, using the BackupRetentionPeriod parameter. // // Default: A 30-minute window selected at random from an 8-hour block of time // per region. To see the time blocks available, see Adjusting the Preferred // Maintenance Window (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AdjustingTheMaintenanceWindow.html) // in the Amazon RDS User Guide. // // Constraints: // // * Must be in the format hh24:mi-hh24:mi. // // * Times should be in Universal Coordinated Time (UTC). // // * Must not conflict with the preferred maintenance window. // // * Must be at least 30 minutes. PreferredBackupWindow *string `type:"string"` } // String returns the string representation func (s PromoteReadReplicaInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PromoteReadReplicaInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PromoteReadReplicaInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PromoteReadReplicaInput"} if s.DBInstanceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBInstanceIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PromoteReadReplicaOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBInstance // // * DeleteDBInstance // // * ModifyDBInstance // // This data type is used as a response element in the DescribeDBInstances action. DBInstance *DBInstance `type:"structure"` } // String returns the string representation func (s PromoteReadReplicaOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PromoteReadReplicaOutput) GoString() string { return s.String() } type PurchaseReservedDBInstancesOfferingInput struct { _ struct{} `type:"structure"` // The number of instances to reserve. // // Default: 1 DBInstanceCount *int64 `type:"integer"` // Customer-specified identifier to track this reservation. // // Example: myreservationID ReservedDBInstanceId *string `type:"string"` // The ID of the Reserved DB instance offering to purchase. // // Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706 // // ReservedDBInstancesOfferingId is a required field ReservedDBInstancesOfferingId *string `type:"string" required:"true"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s PurchaseReservedDBInstancesOfferingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PurchaseReservedDBInstancesOfferingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PurchaseReservedDBInstancesOfferingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PurchaseReservedDBInstancesOfferingInput"} if s.ReservedDBInstancesOfferingId == nil { invalidParams.Add(request.NewErrParamRequired("ReservedDBInstancesOfferingId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PurchaseReservedDBInstancesOfferingOutput struct { _ struct{} `type:"structure"` // This data type is used as a response element in the DescribeReservedDBInstances // and PurchaseReservedDBInstancesOffering actions. ReservedDBInstance *ReservedDBInstance `type:"structure"` } // String returns the string representation func (s PurchaseReservedDBInstancesOfferingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PurchaseReservedDBInstancesOfferingOutput) GoString() string { return s.String() } type RebootDBInstanceInput struct { _ struct{} `type:"structure"` // The DB instance identifier. This parameter is stored as a lowercase string. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // DBInstanceIdentifier is a required field DBInstanceIdentifier *string `type:"string" required:"true"` // When true, the reboot will be conducted through a MultiAZ failover. // // Constraint: You cannot specify true if the instance is not configured for // MultiAZ. ForceFailover *bool `type:"boolean"` } // String returns the string representation func (s RebootDBInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebootDBInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RebootDBInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RebootDBInstanceInput"} if s.DBInstanceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBInstanceIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RebootDBInstanceOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBInstance // // * DeleteDBInstance // // * ModifyDBInstance // // This data type is used as a response element in the DescribeDBInstances action. DBInstance *DBInstance `type:"structure"` } // String returns the string representation func (s RebootDBInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebootDBInstanceOutput) GoString() string { return s.String() } // This data type is used as a response element in the DescribeReservedDBInstances // and DescribeReservedDBInstancesOfferings actions. type RecurringCharge struct { _ struct{} `type:"structure"` // The amount of the recurring charge. RecurringChargeAmount *float64 `type:"double"` // The frequency of the recurring charge. RecurringChargeFrequency *string `type:"string"` } // String returns the string representation func (s RecurringCharge) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecurringCharge) GoString() string { return s.String() } type RemoveRoleFromDBClusterInput struct { _ struct{} `type:"structure"` // The name of the DB cluster to disassociate the IAM role rom. // // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` // The Amazon Resource Name (ARN) of the IAM role to disassociate from the Aurora // DB cluster, for example arn:aws:iam::123456789012:role/AuroraAccessRole. // // RoleArn is a required field RoleArn *string `type:"string" required:"true"` } // String returns the string representation func (s RemoveRoleFromDBClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveRoleFromDBClusterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveRoleFromDBClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveRoleFromDBClusterInput"} if s.DBClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterIdentifier")) } if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemoveRoleFromDBClusterOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveRoleFromDBClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveRoleFromDBClusterOutput) GoString() string { return s.String() } type RemoveSourceIdentifierFromSubscriptionInput struct { _ struct{} `type:"structure"` // The source identifier to be removed from the subscription, such as the DB // instance identifier for a DB instance or the name of a security group. // // SourceIdentifier is a required field SourceIdentifier *string `type:"string" required:"true"` // The name of the RDS event notification subscription you want to remove a // source identifier from. // // SubscriptionName is a required field SubscriptionName *string `type:"string" required:"true"` } // String returns the string representation func (s RemoveSourceIdentifierFromSubscriptionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveSourceIdentifierFromSubscriptionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveSourceIdentifierFromSubscriptionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveSourceIdentifierFromSubscriptionInput"} if s.SourceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SourceIdentifier")) } if s.SubscriptionName == nil { invalidParams.Add(request.NewErrParamRequired("SubscriptionName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemoveSourceIdentifierFromSubscriptionOutput struct { _ struct{} `type:"structure"` // Contains the results of a successful invocation of the DescribeEventSubscriptions // action. EventSubscription *EventSubscription `type:"structure"` } // String returns the string representation func (s RemoveSourceIdentifierFromSubscriptionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveSourceIdentifierFromSubscriptionOutput) GoString() string { return s.String() } type RemoveTagsFromResourceInput struct { _ struct{} `type:"structure"` // The Amazon RDS resource the tags will be removed from. This value is an Amazon // Resource Name (ARN). For information about creating an ARN, see Constructing // an RDS Amazon Resource Name (ARN) (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.ARN.html#USER_Tagging.ARN.Constructing). // // ResourceName is a required field ResourceName *string `type:"string" required:"true"` // The tag key (name) of the tag to be removed. // // TagKeys is a required field TagKeys []*string `type:"list" required:"true"` } // String returns the string representation func (s RemoveTagsFromResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTagsFromResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTagsFromResourceInput"} if s.ResourceName == nil { invalidParams.Add(request.NewErrParamRequired("ResourceName")) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemoveTagsFromResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveTagsFromResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromResourceOutput) GoString() string { return s.String() } // This data type is used as a response element in the DescribeReservedDBInstances // and PurchaseReservedDBInstancesOffering actions. type ReservedDBInstance struct { _ struct{} `type:"structure"` // The currency code for the reserved DB instance. CurrencyCode *string `type:"string"` // The DB instance class for the reserved DB instance. DBInstanceClass *string `type:"string"` // The number of reserved DB instances. DBInstanceCount *int64 `type:"integer"` // The duration of the reservation in seconds. Duration *int64 `type:"integer"` // The fixed price charged for this reserved DB instance. FixedPrice *float64 `type:"double"` // Indicates if the reservation applies to Multi-AZ deployments. MultiAZ *bool `type:"boolean"` // The offering type of this reserved DB instance. OfferingType *string `type:"string"` // The description of the reserved DB instance. ProductDescription *string `type:"string"` // The recurring price charged to run this reserved DB instance. RecurringCharges []*RecurringCharge `locationNameList:"RecurringCharge" type:"list"` // The Amazon Resource Name (ARN) for the reserved DB instance. ReservedDBInstanceArn *string `type:"string"` // The unique identifier for the reservation. ReservedDBInstanceId *string `type:"string"` // The offering identifier. ReservedDBInstancesOfferingId *string `type:"string"` // The time the reservation started. StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The state of the reserved DB instance. State *string `type:"string"` // The hourly price charged for this reserved DB instance. UsagePrice *float64 `type:"double"` } // String returns the string representation func (s ReservedDBInstance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReservedDBInstance) GoString() string { return s.String() } // This data type is used as a response element in the DescribeReservedDBInstancesOfferings // action. type ReservedDBInstancesOffering struct { _ struct{} `type:"structure"` // The currency code for the reserved DB instance offering. CurrencyCode *string `type:"string"` // The DB instance class for the reserved DB instance. DBInstanceClass *string `type:"string"` // The duration of the offering in seconds. Duration *int64 `type:"integer"` // The fixed price charged for this offering. FixedPrice *float64 `type:"double"` // Indicates if the offering applies to Multi-AZ deployments. MultiAZ *bool `type:"boolean"` // The offering type. OfferingType *string `type:"string"` // The database engine used by the offering. ProductDescription *string `type:"string"` // The recurring price charged to run this reserved DB instance. RecurringCharges []*RecurringCharge `locationNameList:"RecurringCharge" type:"list"` // The offering identifier. ReservedDBInstancesOfferingId *string `type:"string"` // The hourly price charged for this offering. UsagePrice *float64 `type:"double"` } // String returns the string representation func (s ReservedDBInstancesOffering) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReservedDBInstancesOffering) GoString() string { return s.String() } type ResetDBClusterParameterGroupInput struct { _ struct{} `type:"structure"` // The name of the DB cluster parameter group to reset. // // DBClusterParameterGroupName is a required field DBClusterParameterGroupName *string `type:"string" required:"true"` // A list of parameter names in the DB cluster parameter group to reset to the // default values. You cannot use this parameter if the ResetAllParameters parameter // is set to true. Parameters []*Parameter `locationNameList:"Parameter" type:"list"` // A value that is set to true to reset all parameters in the DB cluster parameter // group to their default values, and false otherwise. You cannot use this parameter // if there is a list of parameter names specified for the Parameters parameter. ResetAllParameters *bool `type:"boolean"` } // String returns the string representation func (s ResetDBClusterParameterGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResetDBClusterParameterGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ResetDBClusterParameterGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ResetDBClusterParameterGroupInput"} if s.DBClusterParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterParameterGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ResetDBParameterGroupInput struct { _ struct{} `type:"structure"` // The name of the DB parameter group. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // DBParameterGroupName is a required field DBParameterGroupName *string `type:"string" required:"true"` // An array of parameter names, values, and the apply method for the parameter // update. At least one parameter name, value, and apply method must be supplied; // subsequent arguments are optional. A maximum of 20 parameters can be modified // in a single request. // // MySQL // // Valid Values (for Apply method): immediate | pending-reboot // // You can use the immediate value with dynamic parameters only. You can use // the pending-reboot value for both dynamic and static parameters, and changes // are applied when DB instance reboots. // // MariaDB // // Valid Values (for Apply method): immediate | pending-reboot // // You can use the immediate value with dynamic parameters only. You can use // the pending-reboot value for both dynamic and static parameters, and changes // are applied when DB instance reboots. // // Oracle // // Valid Values (for Apply method): pending-reboot Parameters []*Parameter `locationNameList:"Parameter" type:"list"` // Specifies whether (true) or not (false) to reset all parameters in the DB // parameter group to default values. // // Default: true ResetAllParameters *bool `type:"boolean"` } // String returns the string representation func (s ResetDBParameterGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResetDBParameterGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ResetDBParameterGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ResetDBParameterGroupInput"} if s.DBParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DBParameterGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the pending maintenance actions for a resource. type ResourcePendingMaintenanceActions struct { _ struct{} `type:"structure"` // A list that provides details about the pending maintenance actions for the // resource. PendingMaintenanceActionDetails []*PendingMaintenanceAction `locationNameList:"PendingMaintenanceAction" type:"list"` // The ARN of the resource that has pending maintenance actions. ResourceIdentifier *string `type:"string"` } // String returns the string representation func (s ResourcePendingMaintenanceActions) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResourcePendingMaintenanceActions) GoString() string { return s.String() } type RestoreDBClusterFromS3Input struct { _ struct{} `type:"structure"` // A list of EC2 Availability Zones that instances in the restored DB cluster // can be created in. AvailabilityZones []*string `locationNameList:"AvailabilityZone" type:"list"` // The number of days for which automated backups of the restored DB cluster // are retained. You must specify a minimum value of 1. // // Default: 1 // // Constraints: // // * Must be a value from 1 to 35 BackupRetentionPeriod *int64 `type:"integer"` // A value that indicates that the restored DB cluster should be associated // with the specified CharacterSet. CharacterSetName *string `type:"string"` // The name of the DB cluster to create from the source data in the S3 bucket. // This parameter is isn't case-sensitive. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // Example: my-cluster1 // // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` // The name of the DB cluster parameter group to associate with the restored // DB cluster. If this argument is omitted, default.aurora5.6 will be used. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens DBClusterParameterGroupName *string `type:"string"` // A DB subnet group to associate with the restored DB cluster. // // Constraints: Must contain no more than 255 alphanumeric characters, periods, // underscores, spaces, or hyphens. Must not be default. // // Example: mySubnetgroup DBSubnetGroupName *string `type:"string"` // The database name for the restored DB cluster. DatabaseName *string `type:"string"` // The name of the database engine to be used for the restored DB cluster. // // Valid Values: aurora // // Engine is a required field Engine *string `type:"string" required:"true"` // The version number of the database engine to use. // // Aurora // // Example: 5.6.10a EngineVersion *string `type:"string"` // The KMS key identifier for an encrypted DB cluster. // // The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption // key. If you are creating a DB cluster with the same AWS account that owns // the KMS encryption key used to encrypt the new DB cluster, then you can use // the KMS key alias instead of the ARN for the KM encryption key. // // If the StorageEncrypted parameter is true, and you do not specify a value // for the KmsKeyId parameter, then Amazon RDS will use your default encryption // key. AWS KMS creates the default encryption key for your AWS account. Your // AWS account has a different default encryption key for each AWS region. KmsKeyId *string `type:"string"` // The password for the master database user. This password can contain any // printable ASCII character except "/", """, or "@". // // Constraints: Must contain from 8 to 41 characters. // // MasterUserPassword is a required field MasterUserPassword *string `type:"string" required:"true"` // The name of the master user for the restored DB cluster. // // Constraints: // // * Must be 1 to 16 alphanumeric characters. // // * First character must be a letter. // // * Cannot be a reserved word for the chosen database engine. // // MasterUsername is a required field MasterUsername *string `type:"string" required:"true"` // A value that indicates that the restored DB cluster should be associated // with the specified option group. // // Permanent options cannot be removed from an option group. An option group // cannot be removed from a DB cluster once it is associated with a DB cluster. OptionGroupName *string `type:"string"` // The port number on which the instances in the restored DB cluster accept // connections. // // Default: 3306 Port *int64 `type:"integer"` // The daily time range during which automated backups are created if automated // backups are enabled using the BackupRetentionPeriod parameter. // // Default: A 30-minute window selected at random from an 8-hour block of time // per region. To see the time blocks available, see Adjusting the Preferred // Maintenance Window (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AdjustingTheMaintenanceWindow.html) // in the Amazon RDS User Guide. // // Constraints: // // * Must be in the format hh24:mi-hh24:mi. // // * Times should be in Universal Coordinated Time (UTC). // // * Must not conflict with the preferred maintenance window. // // * Must be at least 30 minutes. PreferredBackupWindow *string `type:"string"` // The weekly time range during which system maintenance can occur, in Universal // Coordinated Time (UTC). // // Format: ddd:hh24:mi-ddd:hh24:mi // // Default: A 30-minute window selected at random from an 8-hour block of time // per region, occurring on a random day of the week. To see the time blocks // available, see Adjusting the Preferred Maintenance Window (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AdjustingTheMaintenanceWindow.html) // in the Amazon RDS User Guide. // // Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun // // Constraints: Minimum 30-minute window. PreferredMaintenanceWindow *string `type:"string"` // The name of the Amazon S3 bucket that contains the data used to create the // Amazon Aurora DB cluster. // // S3BucketName is a required field S3BucketName *string `type:"string" required:"true"` // The Amazon Resource Name (ARN) of the AWS Identity and Access Management // (IAM) role that authorizes Amazon RDS to access the Amazon S3 bucket on your // behalf. // // S3IngestionRoleArn is a required field S3IngestionRoleArn *string `type:"string" required:"true"` // The prefix for all of the file names that contain the data used to create // the Amazon Aurora DB cluster. If you do not specify a SourceS3Prefix value, // then the Amazon Aurora DB cluster is created by using all of the files in // the Amazon S3 bucket. S3Prefix *string `type:"string"` // The identifier for the database engine that was backed up to create the files // stored in the Amazon S3 bucket. // // Valid values: mysql // // SourceEngine is a required field SourceEngine *string `type:"string" required:"true"` // The version of the database that the backup files were created from. // // MySQL version 5.5 and 5.6 are supported. // // Example: 5.6.22 // // SourceEngineVersion is a required field SourceEngineVersion *string `type:"string" required:"true"` // Specifies whether the restored DB cluster is encrypted. StorageEncrypted *bool `type:"boolean"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` // A list of EC2 VPC security groups to associate with the restored DB cluster. VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` } // String returns the string representation func (s RestoreDBClusterFromS3Input) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreDBClusterFromS3Input) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RestoreDBClusterFromS3Input) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RestoreDBClusterFromS3Input"} if s.DBClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterIdentifier")) } if s.Engine == nil { invalidParams.Add(request.NewErrParamRequired("Engine")) } if s.MasterUserPassword == nil { invalidParams.Add(request.NewErrParamRequired("MasterUserPassword")) } if s.MasterUsername == nil { invalidParams.Add(request.NewErrParamRequired("MasterUsername")) } if s.S3BucketName == nil { invalidParams.Add(request.NewErrParamRequired("S3BucketName")) } if s.S3IngestionRoleArn == nil { invalidParams.Add(request.NewErrParamRequired("S3IngestionRoleArn")) } if s.SourceEngine == nil { invalidParams.Add(request.NewErrParamRequired("SourceEngine")) } if s.SourceEngineVersion == nil { invalidParams.Add(request.NewErrParamRequired("SourceEngineVersion")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RestoreDBClusterFromS3Output struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBCluster // // * DeleteDBCluster // // * FailoverDBCluster // // * ModifyDBCluster // // * RestoreDBClusterFromSnapshot // // * RestoreDBClusterToPointInTime // // This data type is used as a response element in the DescribeDBClusters action. DBCluster *DBCluster `type:"structure"` } // String returns the string representation func (s RestoreDBClusterFromS3Output) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreDBClusterFromS3Output) GoString() string { return s.String() } type RestoreDBClusterFromSnapshotInput struct { _ struct{} `type:"structure"` // Provides the list of EC2 Availability Zones that instances in the restored // DB cluster can be created in. AvailabilityZones []*string `locationNameList:"AvailabilityZone" type:"list"` // The name of the DB cluster to create from the DB cluster snapshot. This parameter // isn't case-sensitive. // // Constraints: // // * Must contain from 1 to 255 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // Example: my-snapshot-id // // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` // The name of the DB subnet group to use for the new DB cluster. // // Constraints: Must contain no more than 255 alphanumeric characters, periods, // underscores, spaces, or hyphens. Must not be default. // // Example: mySubnetgroup DBSubnetGroupName *string `type:"string"` // The database name for the restored DB cluster. DatabaseName *string `type:"string"` // The database engine to use for the new DB cluster. // // Default: The same as source // // Constraint: Must be compatible with the engine of the source // // Engine is a required field Engine *string `type:"string" required:"true"` // The version of the database engine to use for the new DB cluster. EngineVersion *string `type:"string"` // The KMS key identifier to use when restoring an encrypted DB cluster from // a DB cluster snapshot. // // The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption // key. If you are restoring a DB cluster with the same AWS account that owns // the KMS encryption key used to encrypt the new DB cluster, then you can use // the KMS key alias instead of the ARN for the KMS encryption key. // // If you do not specify a value for the KmsKeyId parameter, then the following // will occur: // // * If the DB cluster snapshot is encrypted, then the restored DB cluster // is encrypted using the KMS key that was used to encrypt the DB cluster // snapshot. // // * If the DB cluster snapshot is not encrypted, then the restored DB cluster // is encrypted using the specified encryption key. KmsKeyId *string `type:"string"` // The name of the option group to use for the restored DB cluster. OptionGroupName *string `type:"string"` // The port number on which the new DB cluster accepts connections. // // Constraints: Value must be 1150-65535 // // Default: The same port as the original DB cluster. Port *int64 `type:"integer"` // The identifier for the DB cluster snapshot to restore from. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // SnapshotIdentifier is a required field SnapshotIdentifier *string `type:"string" required:"true"` // The tags to be assigned to the restored DB cluster. Tags []*Tag `locationNameList:"Tag" type:"list"` // A list of VPC security groups that the new DB cluster will belong to. VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` } // String returns the string representation func (s RestoreDBClusterFromSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreDBClusterFromSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RestoreDBClusterFromSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RestoreDBClusterFromSnapshotInput"} if s.DBClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterIdentifier")) } if s.Engine == nil { invalidParams.Add(request.NewErrParamRequired("Engine")) } if s.SnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RestoreDBClusterFromSnapshotOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBCluster // // * DeleteDBCluster // // * FailoverDBCluster // // * ModifyDBCluster // // * RestoreDBClusterFromSnapshot // // * RestoreDBClusterToPointInTime // // This data type is used as a response element in the DescribeDBClusters action. DBCluster *DBCluster `type:"structure"` } // String returns the string representation func (s RestoreDBClusterFromSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreDBClusterFromSnapshotOutput) GoString() string { return s.String() } type RestoreDBClusterToPointInTimeInput struct { _ struct{} `type:"structure"` // The name of the new DB cluster to be created. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` // The DB subnet group name to use for the new DB cluster. // // Constraints: Must contain no more than 255 alphanumeric characters, periods, // underscores, spaces, or hyphens. Must not be default. // // Example: mySubnetgroup DBSubnetGroupName *string `type:"string"` // The KMS key identifier to use when restoring an encrypted DB cluster from // an encrypted DB cluster. // // The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption // key. If you are restoring a DB cluster with the same AWS account that owns // the KMS encryption key used to encrypt the new DB cluster, then you can use // the KMS key alias instead of the ARN for the KMS encryption key. // // You can restore to a new DB cluster and encrypt the new DB cluster with a // KMS key that is different than the KMS key used to encrypt the source DB // cluster. The new DB cluster will be encrypted with the KMS key identified // by the KmsKeyId parameter. // // If you do not specify a value for the KmsKeyId parameter, then the following // will occur: // // * If the DB cluster is encrypted, then the restored DB cluster is encrypted // using the KMS key that was used to encrypt the source DB cluster. // // * If the DB cluster is not encrypted, then the restored DB cluster is // not encrypted. // // If DBClusterIdentifier refers to a DB cluster that is note encrypted, then // the restore request is rejected. KmsKeyId *string `type:"string"` // The name of the option group for the new DB cluster. OptionGroupName *string `type:"string"` // The port number on which the new DB cluster accepts connections. // // Constraints: Value must be 1150-65535 // // Default: The same port as the original DB cluster. Port *int64 `type:"integer"` // The date and time to restore the DB cluster to. // // Valid Values: Value must be a time in Universal Coordinated Time (UTC) format // // Constraints: // // * Must be before the latest restorable time for the DB instance // // * Cannot be specified if UseLatestRestorableTime parameter is true // // Example: 2015-03-07T23:45:00Z RestoreToTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The identifier of the source DB cluster from which to restore. // // Constraints: // // * Must be the identifier of an existing database instance // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // SourceDBClusterIdentifier is a required field SourceDBClusterIdentifier *string `type:"string" required:"true"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` // A value that is set to true to restore the DB cluster to the latest restorable // backup time, and false otherwise. // // Default: false // // Constraints: Cannot be specified if RestoreToTime parameter is provided. UseLatestRestorableTime *bool `type:"boolean"` // A lst of VPC security groups that the new DB cluster belongs to. VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` } // String returns the string representation func (s RestoreDBClusterToPointInTimeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreDBClusterToPointInTimeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RestoreDBClusterToPointInTimeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RestoreDBClusterToPointInTimeInput"} if s.DBClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBClusterIdentifier")) } if s.SourceDBClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SourceDBClusterIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RestoreDBClusterToPointInTimeOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBCluster // // * DeleteDBCluster // // * FailoverDBCluster // // * ModifyDBCluster // // * RestoreDBClusterFromSnapshot // // * RestoreDBClusterToPointInTime // // This data type is used as a response element in the DescribeDBClusters action. DBCluster *DBCluster `type:"structure"` } // String returns the string representation func (s RestoreDBClusterToPointInTimeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreDBClusterToPointInTimeOutput) GoString() string { return s.String() } type RestoreDBInstanceFromDBSnapshotInput struct { _ struct{} `type:"structure"` // Indicates that minor version upgrades will be applied automatically to the // DB instance during the maintenance window. AutoMinorVersionUpgrade *bool `type:"boolean"` // The EC2 Availability Zone that the database instance will be created in. // // Default: A random, system-chosen Availability Zone. // // Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ // parameter is set to true. // // Example: us-east-1a AvailabilityZone *string `type:"string"` // True to copy all tags from the restored DB instance to snapshots of the DB // instance; otherwise false. The default is false. CopyTagsToSnapshot *bool `type:"boolean"` // The compute and memory capacity of the Amazon RDS DB instance. // // Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge // | db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge // | db.m3.2xlarge | db.m4.large | db.m4.xlarge | db.m4.2xlarge | db.m4.4xlarge // | db.m4.10xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge // | db.r3.8xlarge | db.t2.micro | db.t2.small | db.t2.medium | db.t2.large DBInstanceClass *string `type:"string"` // Name of the DB instance to create from the DB snapshot. This parameter isn't // case-sensitive. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens (1 to 15 // for SQL Server) // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // Example: my-snapshot-id // // DBInstanceIdentifier is a required field DBInstanceIdentifier *string `type:"string" required:"true"` // The database name for the restored DB instance. // // This parameter doesn't apply to the MySQL, PostgreSQL, or MariaDB engines. DBName *string `type:"string"` // The identifier for the DB snapshot to restore from. // // Constraints: // // * Must contain from 1 to 255 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // If you are restoring from a shared manual DB snapshot, the DBSnapshotIdentifier // must be the ARN of the shared DB snapshot. // // DBSnapshotIdentifier is a required field DBSnapshotIdentifier *string `type:"string" required:"true"` // The DB subnet group name to use for the new instance. // // Constraints: Must contain no more than 255 alphanumeric characters, periods, // underscores, spaces, or hyphens. Must not be default. // // Example: mySubnetgroup DBSubnetGroupName *string `type:"string"` // Specify the Active Directory Domain to restore the instance in. Domain *string `type:"string"` // Specify the name of the IAM role to be used when making API calls to the // Directory Service. DomainIAMRoleName *string `type:"string"` // The database engine to use for the new instance. // // Default: The same as source // // Constraint: Must be compatible with the engine of the source // // Valid Values: MySQL | mariadb | oracle-se1 | oracle-se | oracle-ee | sqlserver-ee // | sqlserver-se | sqlserver-ex | sqlserver-web | postgres | aurora Engine *string `type:"string"` // Specifies the amount of provisioned IOPS for the DB instance, expressed in // I/O operations per second. If this parameter is not specified, the IOPS value // will be taken from the backup. If this parameter is set to 0, the new instance // will be converted to a non-PIOPS instance, which will take additional time, // though your DB instance will be available for connections before the conversion // starts. // // Constraints: Must be an integer greater than 1000. // // SQL Server // // Setting the IOPS value for the SQL Server database engine is not supported. Iops *int64 `type:"integer"` // License model information for the restored DB instance. // // Default: Same as source. // // Valid values: license-included | bring-your-own-license | general-public-license LicenseModel *string `type:"string"` // Specifies if the DB instance is a Multi-AZ deployment. // // Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ // parameter is set to true. MultiAZ *bool `type:"boolean"` // The name of the option group to be used for the restored DB instance. // // Permanent options, such as the TDE option for Oracle Advanced Security TDE, // cannot be removed from an option group, and that option group cannot be removed // from a DB instance once it is associated with a DB instance OptionGroupName *string `type:"string"` // The port number on which the database accepts connections. // // Default: The same port as the original DB instance // // Constraints: Value must be 1150-65535 Port *int64 `type:"integer"` // Specifies the accessibility options for the DB instance. A value of true // specifies an Internet-facing instance with a publicly resolvable DNS name, // which resolves to a public IP address. A value of false specifies an internal // instance with a DNS name that resolves to a private IP address. // // Default: The default behavior varies depending on whether a VPC has been // requested or not. The following list shows the default behavior in each case. // // * Default VPC: true // // * VPC: false // // If no DB subnet group has been specified as part of the request and the PubliclyAccessible // value has not been set, the DB instance will be publicly accessible. If a // specific DB subnet group has been specified as part of the request and the // PubliclyAccessible value has not been set, the DB instance will be private. PubliclyAccessible *bool `type:"boolean"` // Specifies the storage type to be associated with the DB instance. // // Valid values: standard | gp2 | io1 // // If you specify io1, you must also include a value for the Iops parameter. // // Default: io1 if the Iops parameter is specified; otherwise standard StorageType *string `type:"string"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` // The ARN from the Key Store with which to associate the instance for TDE encryption. TdeCredentialArn *string `type:"string"` // The password for the given ARN from the Key Store in order to access the // device. TdeCredentialPassword *string `type:"string"` } // String returns the string representation func (s RestoreDBInstanceFromDBSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreDBInstanceFromDBSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RestoreDBInstanceFromDBSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RestoreDBInstanceFromDBSnapshotInput"} if s.DBInstanceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBInstanceIdentifier")) } if s.DBSnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("DBSnapshotIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RestoreDBInstanceFromDBSnapshotOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBInstance // // * DeleteDBInstance // // * ModifyDBInstance // // This data type is used as a response element in the DescribeDBInstances action. DBInstance *DBInstance `type:"structure"` } // String returns the string representation func (s RestoreDBInstanceFromDBSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreDBInstanceFromDBSnapshotOutput) GoString() string { return s.String() } type RestoreDBInstanceToPointInTimeInput struct { _ struct{} `type:"structure"` // Indicates that minor version upgrades will be applied automatically to the // DB instance during the maintenance window. AutoMinorVersionUpgrade *bool `type:"boolean"` // The EC2 Availability Zone that the database instance will be created in. // // Default: A random, system-chosen Availability Zone. // // Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ // parameter is set to true. // // Example: us-east-1a AvailabilityZone *string `type:"string"` // True to copy all tags from the restored DB instance to snapshots of the DB // instance; otherwise false. The default is false. CopyTagsToSnapshot *bool `type:"boolean"` // The compute and memory capacity of the Amazon RDS DB instance. // // Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge // | db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge // | db.m3.2xlarge | db.m4.large | db.m4.xlarge | db.m4.2xlarge | db.m4.4xlarge // | db.m4.10xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge // | db.r3.8xlarge | db.t2.micro | db.t2.small | db.t2.medium | db.t2.large // // Default: The same DBInstanceClass as the original DB instance. DBInstanceClass *string `type:"string"` // The database name for the restored DB instance. // // This parameter is not used for the MySQL or MariaDB engines. DBName *string `type:"string"` // The DB subnet group name to use for the new instance. // // Constraints: Must contain no more than 255 alphanumeric characters, periods, // underscores, spaces, or hyphens. Must not be default. // // Example: mySubnetgroup DBSubnetGroupName *string `type:"string"` // Specify the Active Directory Domain to restore the instance in. Domain *string `type:"string"` // Specify the name of the IAM role to be used when making API calls to the // Directory Service. DomainIAMRoleName *string `type:"string"` // The database engine to use for the new instance. // // Default: The same as source // // Constraint: Must be compatible with the engine of the source // // Valid Values: MySQL | mariadb | oracle-se1 | oracle-se | oracle-ee | sqlserver-ee // | sqlserver-se | sqlserver-ex | sqlserver-web | postgres | aurora Engine *string `type:"string"` // The amount of Provisioned IOPS (input/output operations per second) to be // initially allocated for the DB instance. // // Constraints: Must be an integer greater than 1000. // // SQL Server // // Setting the IOPS value for the SQL Server database engine is not supported. Iops *int64 `type:"integer"` // License model information for the restored DB instance. // // Default: Same as source. // // Valid values: license-included | bring-your-own-license | general-public-license LicenseModel *string `type:"string"` // Specifies if the DB instance is a Multi-AZ deployment. // // Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ // parameter is set to true. MultiAZ *bool `type:"boolean"` // The name of the option group to be used for the restored DB instance. // // Permanent options, such as the TDE option for Oracle Advanced Security TDE, // cannot be removed from an option group, and that option group cannot be removed // from a DB instance once it is associated with a DB instance OptionGroupName *string `type:"string"` // The port number on which the database accepts connections. // // Constraints: Value must be 1150-65535 // // Default: The same port as the original DB instance. Port *int64 `type:"integer"` // Specifies the accessibility options for the DB instance. A value of true // specifies an Internet-facing instance with a publicly resolvable DNS name, // which resolves to a public IP address. A value of false specifies an internal // instance with a DNS name that resolves to a private IP address. // // Default: The default behavior varies depending on whether a VPC has been // requested or not. The following list shows the default behavior in each case. // // * Default VPC:true // // * VPC:false // // If no DB subnet group has been specified as part of the request and the PubliclyAccessible // value has not been set, the DB instance will be publicly accessible. If a // specific DB subnet group has been specified as part of the request and the // PubliclyAccessible value has not been set, the DB instance will be private. PubliclyAccessible *bool `type:"boolean"` // The date and time to restore from. // // Valid Values: Value must be a time in Universal Coordinated Time (UTC) format // // Constraints: // // * Must be before the latest restorable time for the DB instance // // * Cannot be specified if UseLatestRestorableTime parameter is true // // Example: 2009-09-07T23:45:00Z RestoreTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The identifier of the source DB instance from which to restore. // // Constraints: // // * Must be the identifier of an existing database instance // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // SourceDBInstanceIdentifier is a required field SourceDBInstanceIdentifier *string `type:"string" required:"true"` // Specifies the storage type to be associated with the DB instance. // // Valid values: standard | gp2 | io1 // // If you specify io1, you must also include a value for the Iops parameter. // // Default: io1 if the Iops parameter is specified; otherwise standard StorageType *string `type:"string"` // A list of tags. Tags []*Tag `locationNameList:"Tag" type:"list"` // The name of the new database instance to be created. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // TargetDBInstanceIdentifier is a required field TargetDBInstanceIdentifier *string `type:"string" required:"true"` // The ARN from the Key Store with which to associate the instance for TDE encryption. TdeCredentialArn *string `type:"string"` // The password for the given ARN from the Key Store in order to access the // device. TdeCredentialPassword *string `type:"string"` // Specifies whether (true) or not (false) the DB instance is restored from // the latest backup time. // // Default: false // // Constraints: Cannot be specified if RestoreTime parameter is provided. UseLatestRestorableTime *bool `type:"boolean"` } // String returns the string representation func (s RestoreDBInstanceToPointInTimeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreDBInstanceToPointInTimeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RestoreDBInstanceToPointInTimeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RestoreDBInstanceToPointInTimeInput"} if s.SourceDBInstanceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SourceDBInstanceIdentifier")) } if s.TargetDBInstanceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("TargetDBInstanceIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RestoreDBInstanceToPointInTimeOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * CreateDBInstance // // * DeleteDBInstance // // * ModifyDBInstance // // This data type is used as a response element in the DescribeDBInstances action. DBInstance *DBInstance `type:"structure"` } // String returns the string representation func (s RestoreDBInstanceToPointInTimeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreDBInstanceToPointInTimeOutput) GoString() string { return s.String() } type RevokeDBSecurityGroupIngressInput struct { _ struct{} `type:"structure"` // The IP range to revoke access from. Must be a valid CIDR range. If CIDRIP // is specified, EC2SecurityGroupName, EC2SecurityGroupId and EC2SecurityGroupOwnerId // cannot be provided. CIDRIP *string `type:"string"` // The name of the DB security group to revoke ingress from. // // DBSecurityGroupName is a required field DBSecurityGroupName *string `type:"string" required:"true"` // The id of the EC2 security group to revoke access from. For VPC DB security // groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId // and either EC2SecurityGroupName or EC2SecurityGroupId must be provided. EC2SecurityGroupId *string `type:"string"` // The name of the EC2 security group to revoke access from. For VPC DB security // groups, EC2SecurityGroupId must be provided. Otherwise, EC2SecurityGroupOwnerId // and either EC2SecurityGroupName or EC2SecurityGroupId must be provided. EC2SecurityGroupName *string `type:"string"` // The AWS Account Number of the owner of the EC2 security group specified in // the EC2SecurityGroupName parameter. The AWS Access Key ID is not an acceptable // value. For VPC DB security groups, EC2SecurityGroupId must be provided. Otherwise, // EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId // must be provided. EC2SecurityGroupOwnerId *string `type:"string"` } // String returns the string representation func (s RevokeDBSecurityGroupIngressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RevokeDBSecurityGroupIngressInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RevokeDBSecurityGroupIngressInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RevokeDBSecurityGroupIngressInput"} if s.DBSecurityGroupName == nil { invalidParams.Add(request.NewErrParamRequired("DBSecurityGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RevokeDBSecurityGroupIngressOutput struct { _ struct{} `type:"structure"` // Contains the result of a successful invocation of the following actions: // // * DescribeDBSecurityGroups // // * AuthorizeDBSecurityGroupIngress // // * CreateDBSecurityGroup // // * RevokeDBSecurityGroupIngress // // This data type is used as a response element in the DescribeDBSecurityGroups // action. DBSecurityGroup *DBSecurityGroup `type:"structure"` } // String returns the string representation func (s RevokeDBSecurityGroupIngressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RevokeDBSecurityGroupIngressOutput) GoString() string { return s.String() } // Contains an AWS Region name as the result of a successful call to the DescribeSourceRegions // action. type SourceRegion struct { _ struct{} `type:"structure"` // The source region endpoint. Endpoint *string `type:"string"` // The source region name. RegionName *string `type:"string"` // The status of the source region. Status *string `type:"string"` } // String returns the string representation func (s SourceRegion) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SourceRegion) GoString() string { return s.String() } // This data type is used as a response element in the DescribeDBSubnetGroups // action. type Subnet struct { _ struct{} `type:"structure"` // Contains Availability Zone information. // // This data type is used as an element in the following data type: // // * OrderableDBInstanceOption SubnetAvailabilityZone *AvailabilityZone `type:"structure"` // Specifies the identifier of the subnet. SubnetIdentifier *string `type:"string"` // Specifies the status of the subnet. SubnetStatus *string `type:"string"` } // String returns the string representation func (s Subnet) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Subnet) GoString() string { return s.String() } // Metadata assigned to an Amazon RDS resource consisting of a key-value pair. type Tag struct { _ struct{} `type:"structure"` // A key is the required name of the tag. The string value can be from 1 to // 128 Unicode characters in length and cannot be prefixed with "aws:" or "rds:". // The string can only contain only the set of Unicode letters, digits, white-space, // '_', '.', '/', '=', '+', '-' (Java regex: "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-]*)$"). Key *string `type:"string"` // A value is the optional value of the tag. The string value can be from 1 // to 256 Unicode characters in length and cannot be prefixed with "aws:" or // "rds:". The string can only contain only the set of Unicode letters, digits, // white-space, '_', '.', '/', '=', '+', '-' (Java regex: "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-]*)$"). Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // A time zone associated with a DBInstance or a DBSnapshot. This data type // is an element in the response to the DescribeDBInstances, the DescribeDBSnapshots, // and the DescribeDBEngineVersions actions. type Timezone struct { _ struct{} `type:"structure"` // The name of the time zone. TimezoneName *string `type:"string"` } // String returns the string representation func (s Timezone) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Timezone) GoString() string { return s.String() } // The version of the database engine that a DB instance can be upgraded to. type UpgradeTarget struct { _ struct{} `type:"structure"` // A value that indicates whether the target version will be applied to any // source DB instances that have AutoMinorVersionUpgrade set to true. AutoUpgrade *bool `type:"boolean"` // The version of the database engine that a DB instance can be upgraded to. Description *string `type:"string"` // The name of the upgrade target database engine. Engine *string `type:"string"` // The version number of the upgrade target database engine. EngineVersion *string `type:"string"` // A value that indicates whether a database engine will be upgraded to a major // version. IsMajorVersionUpgrade *bool `type:"boolean"` } // String returns the string representation func (s UpgradeTarget) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpgradeTarget) GoString() string { return s.String() } // This data type is used as a response element for queries on VPC security // group membership. type VpcSecurityGroupMembership struct { _ struct{} `type:"structure"` // The status of the VPC security group. Status *string `type:"string"` // The name of the VPC security group. VpcSecurityGroupId *string `type:"string"` } // String returns the string representation func (s VpcSecurityGroupMembership) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VpcSecurityGroupMembership) GoString() string { return s.String() } const ( // ApplyMethodImmediate is a ApplyMethod enum value ApplyMethodImmediate = "immediate" // ApplyMethodPendingReboot is a ApplyMethod enum value ApplyMethodPendingReboot = "pending-reboot" ) const ( // SourceTypeDbInstance is a SourceType enum value SourceTypeDbInstance = "db-instance" // SourceTypeDbParameterGroup is a SourceType enum value SourceTypeDbParameterGroup = "db-parameter-group" // SourceTypeDbSecurityGroup is a SourceType enum value SourceTypeDbSecurityGroup = "db-security-group" // SourceTypeDbSnapshot is a SourceType enum value SourceTypeDbSnapshot = "db-snapshot" // SourceTypeDbCluster is a SourceType enum value SourceTypeDbCluster = "db-cluster" // SourceTypeDbClusterSnapshot is a SourceType enum value SourceTypeDbClusterSnapshot = "db-cluster-snapshot" ) aws-sdk-go-1.4.22/service/rds/examples_test.go000066400000000000000000002262361300374646400212320ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package rds_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/rds" ) var _ time.Duration var _ bytes.Buffer func ExampleRDS_AddRoleToDBCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.AddRoleToDBClusterInput{ DBClusterIdentifier: aws.String("String"), // Required RoleArn: aws.String("String"), // Required } resp, err := svc.AddRoleToDBCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_AddSourceIdentifierToSubscription() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.AddSourceIdentifierToSubscriptionInput{ SourceIdentifier: aws.String("String"), // Required SubscriptionName: aws.String("String"), // Required } resp, err := svc.AddSourceIdentifierToSubscription(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_AddTagsToResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.AddTagsToResourceInput{ ResourceName: aws.String("String"), // Required Tags: []*rds.Tag{ // Required { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.AddTagsToResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_ApplyPendingMaintenanceAction() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.ApplyPendingMaintenanceActionInput{ ApplyAction: aws.String("String"), // Required OptInType: aws.String("String"), // Required ResourceIdentifier: aws.String("String"), // Required } resp, err := svc.ApplyPendingMaintenanceAction(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_AuthorizeDBSecurityGroupIngress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.AuthorizeDBSecurityGroupIngressInput{ DBSecurityGroupName: aws.String("String"), // Required CIDRIP: aws.String("String"), EC2SecurityGroupId: aws.String("String"), EC2SecurityGroupName: aws.String("String"), EC2SecurityGroupOwnerId: aws.String("String"), } resp, err := svc.AuthorizeDBSecurityGroupIngress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_CopyDBClusterParameterGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.CopyDBClusterParameterGroupInput{ SourceDBClusterParameterGroupIdentifier: aws.String("String"), // Required TargetDBClusterParameterGroupDescription: aws.String("String"), // Required TargetDBClusterParameterGroupIdentifier: aws.String("String"), // Required Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CopyDBClusterParameterGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_CopyDBClusterSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.CopyDBClusterSnapshotInput{ SourceDBClusterSnapshotIdentifier: aws.String("String"), // Required TargetDBClusterSnapshotIdentifier: aws.String("String"), // Required Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CopyDBClusterSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_CopyDBParameterGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.CopyDBParameterGroupInput{ SourceDBParameterGroupIdentifier: aws.String("String"), // Required TargetDBParameterGroupDescription: aws.String("String"), // Required TargetDBParameterGroupIdentifier: aws.String("String"), // Required Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CopyDBParameterGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_CopyDBSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.CopyDBSnapshotInput{ SourceDBSnapshotIdentifier: aws.String("String"), // Required TargetDBSnapshotIdentifier: aws.String("String"), // Required CopyTags: aws.Bool(true), KmsKeyId: aws.String("String"), Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CopyDBSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_CopyOptionGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.CopyOptionGroupInput{ SourceOptionGroupIdentifier: aws.String("String"), // Required TargetOptionGroupDescription: aws.String("String"), // Required TargetOptionGroupIdentifier: aws.String("String"), // Required Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CopyOptionGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_CreateDBCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.CreateDBClusterInput{ DBClusterIdentifier: aws.String("String"), // Required Engine: aws.String("String"), // Required AvailabilityZones: []*string{ aws.String("String"), // Required // More values... }, BackupRetentionPeriod: aws.Int64(1), CharacterSetName: aws.String("String"), DBClusterParameterGroupName: aws.String("String"), DBSubnetGroupName: aws.String("String"), DatabaseName: aws.String("String"), EngineVersion: aws.String("String"), KmsKeyId: aws.String("String"), MasterUserPassword: aws.String("String"), MasterUsername: aws.String("String"), OptionGroupName: aws.String("String"), Port: aws.Int64(1), PreferredBackupWindow: aws.String("String"), PreferredMaintenanceWindow: aws.String("String"), ReplicationSourceIdentifier: aws.String("String"), StorageEncrypted: aws.Bool(true), Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, VpcSecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.CreateDBCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_CreateDBClusterParameterGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.CreateDBClusterParameterGroupInput{ DBClusterParameterGroupName: aws.String("String"), // Required DBParameterGroupFamily: aws.String("String"), // Required Description: aws.String("String"), // Required Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateDBClusterParameterGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_CreateDBClusterSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.CreateDBClusterSnapshotInput{ DBClusterIdentifier: aws.String("String"), // Required DBClusterSnapshotIdentifier: aws.String("String"), // Required Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateDBClusterSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_CreateDBInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.CreateDBInstanceInput{ DBInstanceClass: aws.String("String"), // Required DBInstanceIdentifier: aws.String("String"), // Required Engine: aws.String("String"), // Required AllocatedStorage: aws.Int64(1), AutoMinorVersionUpgrade: aws.Bool(true), AvailabilityZone: aws.String("String"), BackupRetentionPeriod: aws.Int64(1), CharacterSetName: aws.String("String"), CopyTagsToSnapshot: aws.Bool(true), DBClusterIdentifier: aws.String("String"), DBName: aws.String("String"), DBParameterGroupName: aws.String("String"), DBSecurityGroups: []*string{ aws.String("String"), // Required // More values... }, DBSubnetGroupName: aws.String("String"), Domain: aws.String("String"), DomainIAMRoleName: aws.String("String"), EngineVersion: aws.String("String"), Iops: aws.Int64(1), KmsKeyId: aws.String("String"), LicenseModel: aws.String("String"), MasterUserPassword: aws.String("String"), MasterUsername: aws.String("String"), MonitoringInterval: aws.Int64(1), MonitoringRoleArn: aws.String("String"), MultiAZ: aws.Bool(true), OptionGroupName: aws.String("String"), Port: aws.Int64(1), PreferredBackupWindow: aws.String("String"), PreferredMaintenanceWindow: aws.String("String"), PromotionTier: aws.Int64(1), PubliclyAccessible: aws.Bool(true), StorageEncrypted: aws.Bool(true), StorageType: aws.String("String"), Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, TdeCredentialArn: aws.String("String"), TdeCredentialPassword: aws.String("String"), Timezone: aws.String("String"), VpcSecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.CreateDBInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_CreateDBInstanceReadReplica() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.CreateDBInstanceReadReplicaInput{ DBInstanceIdentifier: aws.String("String"), // Required SourceDBInstanceIdentifier: aws.String("String"), // Required AutoMinorVersionUpgrade: aws.Bool(true), AvailabilityZone: aws.String("String"), CopyTagsToSnapshot: aws.Bool(true), DBInstanceClass: aws.String("String"), DBSubnetGroupName: aws.String("String"), Iops: aws.Int64(1), MonitoringInterval: aws.Int64(1), MonitoringRoleArn: aws.String("String"), OptionGroupName: aws.String("String"), Port: aws.Int64(1), PubliclyAccessible: aws.Bool(true), StorageType: aws.String("String"), Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateDBInstanceReadReplica(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_CreateDBParameterGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.CreateDBParameterGroupInput{ DBParameterGroupFamily: aws.String("String"), // Required DBParameterGroupName: aws.String("String"), // Required Description: aws.String("String"), // Required Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateDBParameterGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_CreateDBSecurityGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.CreateDBSecurityGroupInput{ DBSecurityGroupDescription: aws.String("String"), // Required DBSecurityGroupName: aws.String("String"), // Required Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateDBSecurityGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_CreateDBSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.CreateDBSnapshotInput{ DBInstanceIdentifier: aws.String("String"), // Required DBSnapshotIdentifier: aws.String("String"), // Required Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateDBSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_CreateDBSubnetGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.CreateDBSubnetGroupInput{ DBSubnetGroupDescription: aws.String("String"), // Required DBSubnetGroupName: aws.String("String"), // Required SubnetIds: []*string{ // Required aws.String("String"), // Required // More values... }, Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateDBSubnetGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_CreateEventSubscription() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.CreateEventSubscriptionInput{ SnsTopicArn: aws.String("String"), // Required SubscriptionName: aws.String("String"), // Required Enabled: aws.Bool(true), EventCategories: []*string{ aws.String("String"), // Required // More values... }, SourceIds: []*string{ aws.String("String"), // Required // More values... }, SourceType: aws.String("String"), Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateEventSubscription(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_CreateOptionGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.CreateOptionGroupInput{ EngineName: aws.String("String"), // Required MajorEngineVersion: aws.String("String"), // Required OptionGroupDescription: aws.String("String"), // Required OptionGroupName: aws.String("String"), // Required Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateOptionGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DeleteDBCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DeleteDBClusterInput{ DBClusterIdentifier: aws.String("String"), // Required FinalDBSnapshotIdentifier: aws.String("String"), SkipFinalSnapshot: aws.Bool(true), } resp, err := svc.DeleteDBCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DeleteDBClusterParameterGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DeleteDBClusterParameterGroupInput{ DBClusterParameterGroupName: aws.String("String"), // Required } resp, err := svc.DeleteDBClusterParameterGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DeleteDBClusterSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DeleteDBClusterSnapshotInput{ DBClusterSnapshotIdentifier: aws.String("String"), // Required } resp, err := svc.DeleteDBClusterSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DeleteDBInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DeleteDBInstanceInput{ DBInstanceIdentifier: aws.String("String"), // Required FinalDBSnapshotIdentifier: aws.String("String"), SkipFinalSnapshot: aws.Bool(true), } resp, err := svc.DeleteDBInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DeleteDBParameterGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DeleteDBParameterGroupInput{ DBParameterGroupName: aws.String("String"), // Required } resp, err := svc.DeleteDBParameterGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DeleteDBSecurityGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DeleteDBSecurityGroupInput{ DBSecurityGroupName: aws.String("String"), // Required } resp, err := svc.DeleteDBSecurityGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DeleteDBSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DeleteDBSnapshotInput{ DBSnapshotIdentifier: aws.String("String"), // Required } resp, err := svc.DeleteDBSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DeleteDBSubnetGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DeleteDBSubnetGroupInput{ DBSubnetGroupName: aws.String("String"), // Required } resp, err := svc.DeleteDBSubnetGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DeleteEventSubscription() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DeleteEventSubscriptionInput{ SubscriptionName: aws.String("String"), // Required } resp, err := svc.DeleteEventSubscription(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DeleteOptionGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DeleteOptionGroupInput{ OptionGroupName: aws.String("String"), // Required } resp, err := svc.DeleteOptionGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeAccountAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) var params *rds.DescribeAccountAttributesInput resp, err := svc.DescribeAccountAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeCertificates() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeCertificatesInput{ CertificateIdentifier: aws.String("String"), Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeCertificates(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeDBClusterParameterGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeDBClusterParameterGroupsInput{ DBClusterParameterGroupName: aws.String("String"), Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeDBClusterParameterGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeDBClusterParameters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeDBClusterParametersInput{ DBClusterParameterGroupName: aws.String("String"), // Required Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), Source: aws.String("String"), } resp, err := svc.DescribeDBClusterParameters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeDBClusterSnapshotAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeDBClusterSnapshotAttributesInput{ DBClusterSnapshotIdentifier: aws.String("String"), // Required } resp, err := svc.DescribeDBClusterSnapshotAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeDBClusterSnapshots() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeDBClusterSnapshotsInput{ DBClusterIdentifier: aws.String("String"), DBClusterSnapshotIdentifier: aws.String("String"), Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, IncludePublic: aws.Bool(true), IncludeShared: aws.Bool(true), Marker: aws.String("String"), MaxRecords: aws.Int64(1), SnapshotType: aws.String("String"), } resp, err := svc.DescribeDBClusterSnapshots(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeDBClusters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeDBClustersInput{ DBClusterIdentifier: aws.String("String"), Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeDBClusters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeDBEngineVersions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeDBEngineVersionsInput{ DBParameterGroupFamily: aws.String("String"), DefaultOnly: aws.Bool(true), Engine: aws.String("String"), EngineVersion: aws.String("String"), Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, ListSupportedCharacterSets: aws.Bool(true), ListSupportedTimezones: aws.Bool(true), Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeDBEngineVersions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeDBInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeDBInstancesInput{ DBInstanceIdentifier: aws.String("String"), Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeDBInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeDBLogFiles() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeDBLogFilesInput{ DBInstanceIdentifier: aws.String("String"), // Required FileLastWritten: aws.Int64(1), FileSize: aws.Int64(1), FilenameContains: aws.String("String"), Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeDBLogFiles(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeDBParameterGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeDBParameterGroupsInput{ DBParameterGroupName: aws.String("String"), Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeDBParameterGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeDBParameters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeDBParametersInput{ DBParameterGroupName: aws.String("String"), // Required Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), Source: aws.String("String"), } resp, err := svc.DescribeDBParameters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeDBSecurityGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeDBSecurityGroupsInput{ DBSecurityGroupName: aws.String("String"), Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeDBSecurityGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeDBSnapshotAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeDBSnapshotAttributesInput{ DBSnapshotIdentifier: aws.String("String"), // Required } resp, err := svc.DescribeDBSnapshotAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeDBSnapshots() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeDBSnapshotsInput{ DBInstanceIdentifier: aws.String("String"), DBSnapshotIdentifier: aws.String("String"), Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, IncludePublic: aws.Bool(true), IncludeShared: aws.Bool(true), Marker: aws.String("String"), MaxRecords: aws.Int64(1), SnapshotType: aws.String("String"), } resp, err := svc.DescribeDBSnapshots(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeDBSubnetGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeDBSubnetGroupsInput{ DBSubnetGroupName: aws.String("String"), Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeDBSubnetGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeEngineDefaultClusterParameters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeEngineDefaultClusterParametersInput{ DBParameterGroupFamily: aws.String("String"), // Required Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeEngineDefaultClusterParameters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeEngineDefaultParameters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeEngineDefaultParametersInput{ DBParameterGroupFamily: aws.String("String"), // Required Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeEngineDefaultParameters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeEventCategories() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeEventCategoriesInput{ Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, SourceType: aws.String("String"), } resp, err := svc.DescribeEventCategories(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeEventSubscriptions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeEventSubscriptionsInput{ Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), SubscriptionName: aws.String("String"), } resp, err := svc.DescribeEventSubscriptions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeEvents() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeEventsInput{ Duration: aws.Int64(1), EndTime: aws.Time(time.Now()), EventCategories: []*string{ aws.String("String"), // Required // More values... }, Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), SourceIdentifier: aws.String("String"), SourceType: aws.String("SourceType"), StartTime: aws.Time(time.Now()), } resp, err := svc.DescribeEvents(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeOptionGroupOptions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeOptionGroupOptionsInput{ EngineName: aws.String("String"), // Required Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, MajorEngineVersion: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeOptionGroupOptions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeOptionGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeOptionGroupsInput{ EngineName: aws.String("String"), Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, MajorEngineVersion: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), OptionGroupName: aws.String("String"), } resp, err := svc.DescribeOptionGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeOrderableDBInstanceOptions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeOrderableDBInstanceOptionsInput{ Engine: aws.String("String"), // Required DBInstanceClass: aws.String("String"), EngineVersion: aws.String("String"), Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, LicenseModel: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), Vpc: aws.Bool(true), } resp, err := svc.DescribeOrderableDBInstanceOptions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribePendingMaintenanceActions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribePendingMaintenanceActionsInput{ Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), ResourceIdentifier: aws.String("String"), } resp, err := svc.DescribePendingMaintenanceActions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeReservedDBInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeReservedDBInstancesInput{ DBInstanceClass: aws.String("String"), Duration: aws.String("String"), Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), MultiAZ: aws.Bool(true), OfferingType: aws.String("String"), ProductDescription: aws.String("String"), ReservedDBInstanceId: aws.String("String"), ReservedDBInstancesOfferingId: aws.String("String"), } resp, err := svc.DescribeReservedDBInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeReservedDBInstancesOfferings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeReservedDBInstancesOfferingsInput{ DBInstanceClass: aws.String("String"), Duration: aws.String("String"), Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), MultiAZ: aws.Bool(true), OfferingType: aws.String("String"), ProductDescription: aws.String("String"), ReservedDBInstancesOfferingId: aws.String("String"), } resp, err := svc.DescribeReservedDBInstancesOfferings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DescribeSourceRegions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DescribeSourceRegionsInput{ Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, Marker: aws.String("String"), MaxRecords: aws.Int64(1), RegionName: aws.String("String"), } resp, err := svc.DescribeSourceRegions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_DownloadDBLogFilePortion() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.DownloadDBLogFilePortionInput{ DBInstanceIdentifier: aws.String("String"), // Required LogFileName: aws.String("String"), // Required Marker: aws.String("String"), NumberOfLines: aws.Int64(1), } resp, err := svc.DownloadDBLogFilePortion(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_FailoverDBCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.FailoverDBClusterInput{ DBClusterIdentifier: aws.String("String"), TargetDBInstanceIdentifier: aws.String("String"), } resp, err := svc.FailoverDBCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_ListTagsForResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.ListTagsForResourceInput{ ResourceName: aws.String("String"), // Required Filters: []*rds.Filter{ { // Required Name: aws.String("String"), // Required Values: []*string{ // Required aws.String("String"), // Required // More values... }, }, // More values... }, } resp, err := svc.ListTagsForResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_ModifyDBCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.ModifyDBClusterInput{ DBClusterIdentifier: aws.String("String"), // Required ApplyImmediately: aws.Bool(true), BackupRetentionPeriod: aws.Int64(1), DBClusterParameterGroupName: aws.String("String"), MasterUserPassword: aws.String("String"), NewDBClusterIdentifier: aws.String("String"), OptionGroupName: aws.String("String"), Port: aws.Int64(1), PreferredBackupWindow: aws.String("String"), PreferredMaintenanceWindow: aws.String("String"), VpcSecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.ModifyDBCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_ModifyDBClusterParameterGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.ModifyDBClusterParameterGroupInput{ DBClusterParameterGroupName: aws.String("String"), // Required Parameters: []*rds.Parameter{ // Required { // Required AllowedValues: aws.String("String"), ApplyMethod: aws.String("ApplyMethod"), ApplyType: aws.String("String"), DataType: aws.String("String"), Description: aws.String("String"), IsModifiable: aws.Bool(true), MinimumEngineVersion: aws.String("String"), ParameterName: aws.String("String"), ParameterValue: aws.String("String"), Source: aws.String("String"), }, // More values... }, } resp, err := svc.ModifyDBClusterParameterGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_ModifyDBClusterSnapshotAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.ModifyDBClusterSnapshotAttributeInput{ AttributeName: aws.String("String"), // Required DBClusterSnapshotIdentifier: aws.String("String"), // Required ValuesToAdd: []*string{ aws.String("String"), // Required // More values... }, ValuesToRemove: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.ModifyDBClusterSnapshotAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_ModifyDBInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.ModifyDBInstanceInput{ DBInstanceIdentifier: aws.String("String"), // Required AllocatedStorage: aws.Int64(1), AllowMajorVersionUpgrade: aws.Bool(true), ApplyImmediately: aws.Bool(true), AutoMinorVersionUpgrade: aws.Bool(true), BackupRetentionPeriod: aws.Int64(1), CACertificateIdentifier: aws.String("String"), CopyTagsToSnapshot: aws.Bool(true), DBInstanceClass: aws.String("String"), DBParameterGroupName: aws.String("String"), DBPortNumber: aws.Int64(1), DBSecurityGroups: []*string{ aws.String("String"), // Required // More values... }, DBSubnetGroupName: aws.String("String"), Domain: aws.String("String"), DomainIAMRoleName: aws.String("String"), EngineVersion: aws.String("String"), Iops: aws.Int64(1), LicenseModel: aws.String("String"), MasterUserPassword: aws.String("String"), MonitoringInterval: aws.Int64(1), MonitoringRoleArn: aws.String("String"), MultiAZ: aws.Bool(true), NewDBInstanceIdentifier: aws.String("String"), OptionGroupName: aws.String("String"), PreferredBackupWindow: aws.String("String"), PreferredMaintenanceWindow: aws.String("String"), PromotionTier: aws.Int64(1), PubliclyAccessible: aws.Bool(true), StorageType: aws.String("String"), TdeCredentialArn: aws.String("String"), TdeCredentialPassword: aws.String("String"), VpcSecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.ModifyDBInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_ModifyDBParameterGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.ModifyDBParameterGroupInput{ DBParameterGroupName: aws.String("String"), // Required Parameters: []*rds.Parameter{ // Required { // Required AllowedValues: aws.String("String"), ApplyMethod: aws.String("ApplyMethod"), ApplyType: aws.String("String"), DataType: aws.String("String"), Description: aws.String("String"), IsModifiable: aws.Bool(true), MinimumEngineVersion: aws.String("String"), ParameterName: aws.String("String"), ParameterValue: aws.String("String"), Source: aws.String("String"), }, // More values... }, } resp, err := svc.ModifyDBParameterGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_ModifyDBSnapshotAttribute() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.ModifyDBSnapshotAttributeInput{ AttributeName: aws.String("String"), // Required DBSnapshotIdentifier: aws.String("String"), // Required ValuesToAdd: []*string{ aws.String("String"), // Required // More values... }, ValuesToRemove: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.ModifyDBSnapshotAttribute(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_ModifyDBSubnetGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.ModifyDBSubnetGroupInput{ DBSubnetGroupName: aws.String("String"), // Required SubnetIds: []*string{ // Required aws.String("String"), // Required // More values... }, DBSubnetGroupDescription: aws.String("String"), } resp, err := svc.ModifyDBSubnetGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_ModifyEventSubscription() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.ModifyEventSubscriptionInput{ SubscriptionName: aws.String("String"), // Required Enabled: aws.Bool(true), EventCategories: []*string{ aws.String("String"), // Required // More values... }, SnsTopicArn: aws.String("String"), SourceType: aws.String("String"), } resp, err := svc.ModifyEventSubscription(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_ModifyOptionGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.ModifyOptionGroupInput{ OptionGroupName: aws.String("String"), // Required ApplyImmediately: aws.Bool(true), OptionsToInclude: []*rds.OptionConfiguration{ { // Required OptionName: aws.String("String"), // Required DBSecurityGroupMemberships: []*string{ aws.String("String"), // Required // More values... }, OptionSettings: []*rds.OptionSetting{ { // Required AllowedValues: aws.String("String"), ApplyType: aws.String("String"), DataType: aws.String("String"), DefaultValue: aws.String("String"), Description: aws.String("String"), IsCollection: aws.Bool(true), IsModifiable: aws.Bool(true), Name: aws.String("String"), Value: aws.String("String"), }, // More values... }, OptionVersion: aws.String("String"), Port: aws.Int64(1), VpcSecurityGroupMemberships: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, OptionsToRemove: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.ModifyOptionGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_PromoteReadReplica() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.PromoteReadReplicaInput{ DBInstanceIdentifier: aws.String("String"), // Required BackupRetentionPeriod: aws.Int64(1), PreferredBackupWindow: aws.String("String"), } resp, err := svc.PromoteReadReplica(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_PromoteReadReplicaDBCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.PromoteReadReplicaDBClusterInput{ DBClusterIdentifier: aws.String("String"), // Required } resp, err := svc.PromoteReadReplicaDBCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_PurchaseReservedDBInstancesOffering() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.PurchaseReservedDBInstancesOfferingInput{ ReservedDBInstancesOfferingId: aws.String("String"), // Required DBInstanceCount: aws.Int64(1), ReservedDBInstanceId: aws.String("String"), Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.PurchaseReservedDBInstancesOffering(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_RebootDBInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.RebootDBInstanceInput{ DBInstanceIdentifier: aws.String("String"), // Required ForceFailover: aws.Bool(true), } resp, err := svc.RebootDBInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_RemoveRoleFromDBCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.RemoveRoleFromDBClusterInput{ DBClusterIdentifier: aws.String("String"), // Required RoleArn: aws.String("String"), // Required } resp, err := svc.RemoveRoleFromDBCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_RemoveSourceIdentifierFromSubscription() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.RemoveSourceIdentifierFromSubscriptionInput{ SourceIdentifier: aws.String("String"), // Required SubscriptionName: aws.String("String"), // Required } resp, err := svc.RemoveSourceIdentifierFromSubscription(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_RemoveTagsFromResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.RemoveTagsFromResourceInput{ ResourceName: aws.String("String"), // Required TagKeys: []*string{ // Required aws.String("String"), // Required // More values... }, } resp, err := svc.RemoveTagsFromResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_ResetDBClusterParameterGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.ResetDBClusterParameterGroupInput{ DBClusterParameterGroupName: aws.String("String"), // Required Parameters: []*rds.Parameter{ { // Required AllowedValues: aws.String("String"), ApplyMethod: aws.String("ApplyMethod"), ApplyType: aws.String("String"), DataType: aws.String("String"), Description: aws.String("String"), IsModifiable: aws.Bool(true), MinimumEngineVersion: aws.String("String"), ParameterName: aws.String("String"), ParameterValue: aws.String("String"), Source: aws.String("String"), }, // More values... }, ResetAllParameters: aws.Bool(true), } resp, err := svc.ResetDBClusterParameterGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_ResetDBParameterGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.ResetDBParameterGroupInput{ DBParameterGroupName: aws.String("String"), // Required Parameters: []*rds.Parameter{ { // Required AllowedValues: aws.String("String"), ApplyMethod: aws.String("ApplyMethod"), ApplyType: aws.String("String"), DataType: aws.String("String"), Description: aws.String("String"), IsModifiable: aws.Bool(true), MinimumEngineVersion: aws.String("String"), ParameterName: aws.String("String"), ParameterValue: aws.String("String"), Source: aws.String("String"), }, // More values... }, ResetAllParameters: aws.Bool(true), } resp, err := svc.ResetDBParameterGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_RestoreDBClusterFromS3() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.RestoreDBClusterFromS3Input{ DBClusterIdentifier: aws.String("String"), // Required Engine: aws.String("String"), // Required MasterUserPassword: aws.String("String"), // Required MasterUsername: aws.String("String"), // Required S3BucketName: aws.String("String"), // Required S3IngestionRoleArn: aws.String("String"), // Required SourceEngine: aws.String("String"), // Required SourceEngineVersion: aws.String("String"), // Required AvailabilityZones: []*string{ aws.String("String"), // Required // More values... }, BackupRetentionPeriod: aws.Int64(1), CharacterSetName: aws.String("String"), DBClusterParameterGroupName: aws.String("String"), DBSubnetGroupName: aws.String("String"), DatabaseName: aws.String("String"), EngineVersion: aws.String("String"), KmsKeyId: aws.String("String"), OptionGroupName: aws.String("String"), Port: aws.Int64(1), PreferredBackupWindow: aws.String("String"), PreferredMaintenanceWindow: aws.String("String"), S3Prefix: aws.String("String"), StorageEncrypted: aws.Bool(true), Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, VpcSecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.RestoreDBClusterFromS3(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_RestoreDBClusterFromSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.RestoreDBClusterFromSnapshotInput{ DBClusterIdentifier: aws.String("String"), // Required Engine: aws.String("String"), // Required SnapshotIdentifier: aws.String("String"), // Required AvailabilityZones: []*string{ aws.String("String"), // Required // More values... }, DBSubnetGroupName: aws.String("String"), DatabaseName: aws.String("String"), EngineVersion: aws.String("String"), KmsKeyId: aws.String("String"), OptionGroupName: aws.String("String"), Port: aws.Int64(1), Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, VpcSecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.RestoreDBClusterFromSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_RestoreDBClusterToPointInTime() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.RestoreDBClusterToPointInTimeInput{ DBClusterIdentifier: aws.String("String"), // Required SourceDBClusterIdentifier: aws.String("String"), // Required DBSubnetGroupName: aws.String("String"), KmsKeyId: aws.String("String"), OptionGroupName: aws.String("String"), Port: aws.Int64(1), RestoreToTime: aws.Time(time.Now()), Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, UseLatestRestorableTime: aws.Bool(true), VpcSecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.RestoreDBClusterToPointInTime(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_RestoreDBInstanceFromDBSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.RestoreDBInstanceFromDBSnapshotInput{ DBInstanceIdentifier: aws.String("String"), // Required DBSnapshotIdentifier: aws.String("String"), // Required AutoMinorVersionUpgrade: aws.Bool(true), AvailabilityZone: aws.String("String"), CopyTagsToSnapshot: aws.Bool(true), DBInstanceClass: aws.String("String"), DBName: aws.String("String"), DBSubnetGroupName: aws.String("String"), Domain: aws.String("String"), DomainIAMRoleName: aws.String("String"), Engine: aws.String("String"), Iops: aws.Int64(1), LicenseModel: aws.String("String"), MultiAZ: aws.Bool(true), OptionGroupName: aws.String("String"), Port: aws.Int64(1), PubliclyAccessible: aws.Bool(true), StorageType: aws.String("String"), Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, TdeCredentialArn: aws.String("String"), TdeCredentialPassword: aws.String("String"), } resp, err := svc.RestoreDBInstanceFromDBSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_RestoreDBInstanceToPointInTime() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.RestoreDBInstanceToPointInTimeInput{ SourceDBInstanceIdentifier: aws.String("String"), // Required TargetDBInstanceIdentifier: aws.String("String"), // Required AutoMinorVersionUpgrade: aws.Bool(true), AvailabilityZone: aws.String("String"), CopyTagsToSnapshot: aws.Bool(true), DBInstanceClass: aws.String("String"), DBName: aws.String("String"), DBSubnetGroupName: aws.String("String"), Domain: aws.String("String"), DomainIAMRoleName: aws.String("String"), Engine: aws.String("String"), Iops: aws.Int64(1), LicenseModel: aws.String("String"), MultiAZ: aws.Bool(true), OptionGroupName: aws.String("String"), Port: aws.Int64(1), PubliclyAccessible: aws.Bool(true), RestoreTime: aws.Time(time.Now()), StorageType: aws.String("String"), Tags: []*rds.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, TdeCredentialArn: aws.String("String"), TdeCredentialPassword: aws.String("String"), UseLatestRestorableTime: aws.Bool(true), } resp, err := svc.RestoreDBInstanceToPointInTime(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRDS_RevokeDBSecurityGroupIngress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := rds.New(sess) params := &rds.RevokeDBSecurityGroupIngressInput{ DBSecurityGroupName: aws.String("String"), // Required CIDRIP: aws.String("String"), EC2SecurityGroupId: aws.String("String"), EC2SecurityGroupName: aws.String("String"), EC2SecurityGroupOwnerId: aws.String("String"), } resp, err := svc.RevokeDBSecurityGroupIngress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/rds/rdsiface/000077500000000000000000000000001300374646400175735ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/rds/rdsiface/interface.go000066400000000000000000000573531300374646400220770ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package rdsiface provides an interface to enable mocking the Amazon Relational Database Service service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package rdsiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/rds" ) // RDSAPI provides an interface to enable mocking the // rds.RDS service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Relational Database Service. // func myFunc(svc rdsiface.RDSAPI) bool { // // Make svc.AddRoleToDBCluster request // } // // func main() { // sess := session.New() // svc := rds.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockRDSClient struct { // rdsiface.RDSAPI // } // func (m *mockRDSClient) AddRoleToDBCluster(input *rds.AddRoleToDBClusterInput) (*rds.AddRoleToDBClusterOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockRDSClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type RDSAPI interface { AddRoleToDBClusterRequest(*rds.AddRoleToDBClusterInput) (*request.Request, *rds.AddRoleToDBClusterOutput) AddRoleToDBCluster(*rds.AddRoleToDBClusterInput) (*rds.AddRoleToDBClusterOutput, error) AddSourceIdentifierToSubscriptionRequest(*rds.AddSourceIdentifierToSubscriptionInput) (*request.Request, *rds.AddSourceIdentifierToSubscriptionOutput) AddSourceIdentifierToSubscription(*rds.AddSourceIdentifierToSubscriptionInput) (*rds.AddSourceIdentifierToSubscriptionOutput, error) AddTagsToResourceRequest(*rds.AddTagsToResourceInput) (*request.Request, *rds.AddTagsToResourceOutput) AddTagsToResource(*rds.AddTagsToResourceInput) (*rds.AddTagsToResourceOutput, error) ApplyPendingMaintenanceActionRequest(*rds.ApplyPendingMaintenanceActionInput) (*request.Request, *rds.ApplyPendingMaintenanceActionOutput) ApplyPendingMaintenanceAction(*rds.ApplyPendingMaintenanceActionInput) (*rds.ApplyPendingMaintenanceActionOutput, error) AuthorizeDBSecurityGroupIngressRequest(*rds.AuthorizeDBSecurityGroupIngressInput) (*request.Request, *rds.AuthorizeDBSecurityGroupIngressOutput) AuthorizeDBSecurityGroupIngress(*rds.AuthorizeDBSecurityGroupIngressInput) (*rds.AuthorizeDBSecurityGroupIngressOutput, error) CopyDBClusterParameterGroupRequest(*rds.CopyDBClusterParameterGroupInput) (*request.Request, *rds.CopyDBClusterParameterGroupOutput) CopyDBClusterParameterGroup(*rds.CopyDBClusterParameterGroupInput) (*rds.CopyDBClusterParameterGroupOutput, error) CopyDBClusterSnapshotRequest(*rds.CopyDBClusterSnapshotInput) (*request.Request, *rds.CopyDBClusterSnapshotOutput) CopyDBClusterSnapshot(*rds.CopyDBClusterSnapshotInput) (*rds.CopyDBClusterSnapshotOutput, error) CopyDBParameterGroupRequest(*rds.CopyDBParameterGroupInput) (*request.Request, *rds.CopyDBParameterGroupOutput) CopyDBParameterGroup(*rds.CopyDBParameterGroupInput) (*rds.CopyDBParameterGroupOutput, error) CopyDBSnapshotRequest(*rds.CopyDBSnapshotInput) (*request.Request, *rds.CopyDBSnapshotOutput) CopyDBSnapshot(*rds.CopyDBSnapshotInput) (*rds.CopyDBSnapshotOutput, error) CopyOptionGroupRequest(*rds.CopyOptionGroupInput) (*request.Request, *rds.CopyOptionGroupOutput) CopyOptionGroup(*rds.CopyOptionGroupInput) (*rds.CopyOptionGroupOutput, error) CreateDBClusterRequest(*rds.CreateDBClusterInput) (*request.Request, *rds.CreateDBClusterOutput) CreateDBCluster(*rds.CreateDBClusterInput) (*rds.CreateDBClusterOutput, error) CreateDBClusterParameterGroupRequest(*rds.CreateDBClusterParameterGroupInput) (*request.Request, *rds.CreateDBClusterParameterGroupOutput) CreateDBClusterParameterGroup(*rds.CreateDBClusterParameterGroupInput) (*rds.CreateDBClusterParameterGroupOutput, error) CreateDBClusterSnapshotRequest(*rds.CreateDBClusterSnapshotInput) (*request.Request, *rds.CreateDBClusterSnapshotOutput) CreateDBClusterSnapshot(*rds.CreateDBClusterSnapshotInput) (*rds.CreateDBClusterSnapshotOutput, error) CreateDBInstanceRequest(*rds.CreateDBInstanceInput) (*request.Request, *rds.CreateDBInstanceOutput) CreateDBInstance(*rds.CreateDBInstanceInput) (*rds.CreateDBInstanceOutput, error) CreateDBInstanceReadReplicaRequest(*rds.CreateDBInstanceReadReplicaInput) (*request.Request, *rds.CreateDBInstanceReadReplicaOutput) CreateDBInstanceReadReplica(*rds.CreateDBInstanceReadReplicaInput) (*rds.CreateDBInstanceReadReplicaOutput, error) CreateDBParameterGroupRequest(*rds.CreateDBParameterGroupInput) (*request.Request, *rds.CreateDBParameterGroupOutput) CreateDBParameterGroup(*rds.CreateDBParameterGroupInput) (*rds.CreateDBParameterGroupOutput, error) CreateDBSecurityGroupRequest(*rds.CreateDBSecurityGroupInput) (*request.Request, *rds.CreateDBSecurityGroupOutput) CreateDBSecurityGroup(*rds.CreateDBSecurityGroupInput) (*rds.CreateDBSecurityGroupOutput, error) CreateDBSnapshotRequest(*rds.CreateDBSnapshotInput) (*request.Request, *rds.CreateDBSnapshotOutput) CreateDBSnapshot(*rds.CreateDBSnapshotInput) (*rds.CreateDBSnapshotOutput, error) CreateDBSubnetGroupRequest(*rds.CreateDBSubnetGroupInput) (*request.Request, *rds.CreateDBSubnetGroupOutput) CreateDBSubnetGroup(*rds.CreateDBSubnetGroupInput) (*rds.CreateDBSubnetGroupOutput, error) CreateEventSubscriptionRequest(*rds.CreateEventSubscriptionInput) (*request.Request, *rds.CreateEventSubscriptionOutput) CreateEventSubscription(*rds.CreateEventSubscriptionInput) (*rds.CreateEventSubscriptionOutput, error) CreateOptionGroupRequest(*rds.CreateOptionGroupInput) (*request.Request, *rds.CreateOptionGroupOutput) CreateOptionGroup(*rds.CreateOptionGroupInput) (*rds.CreateOptionGroupOutput, error) DeleteDBClusterRequest(*rds.DeleteDBClusterInput) (*request.Request, *rds.DeleteDBClusterOutput) DeleteDBCluster(*rds.DeleteDBClusterInput) (*rds.DeleteDBClusterOutput, error) DeleteDBClusterParameterGroupRequest(*rds.DeleteDBClusterParameterGroupInput) (*request.Request, *rds.DeleteDBClusterParameterGroupOutput) DeleteDBClusterParameterGroup(*rds.DeleteDBClusterParameterGroupInput) (*rds.DeleteDBClusterParameterGroupOutput, error) DeleteDBClusterSnapshotRequest(*rds.DeleteDBClusterSnapshotInput) (*request.Request, *rds.DeleteDBClusterSnapshotOutput) DeleteDBClusterSnapshot(*rds.DeleteDBClusterSnapshotInput) (*rds.DeleteDBClusterSnapshotOutput, error) DeleteDBInstanceRequest(*rds.DeleteDBInstanceInput) (*request.Request, *rds.DeleteDBInstanceOutput) DeleteDBInstance(*rds.DeleteDBInstanceInput) (*rds.DeleteDBInstanceOutput, error) DeleteDBParameterGroupRequest(*rds.DeleteDBParameterGroupInput) (*request.Request, *rds.DeleteDBParameterGroupOutput) DeleteDBParameterGroup(*rds.DeleteDBParameterGroupInput) (*rds.DeleteDBParameterGroupOutput, error) DeleteDBSecurityGroupRequest(*rds.DeleteDBSecurityGroupInput) (*request.Request, *rds.DeleteDBSecurityGroupOutput) DeleteDBSecurityGroup(*rds.DeleteDBSecurityGroupInput) (*rds.DeleteDBSecurityGroupOutput, error) DeleteDBSnapshotRequest(*rds.DeleteDBSnapshotInput) (*request.Request, *rds.DeleteDBSnapshotOutput) DeleteDBSnapshot(*rds.DeleteDBSnapshotInput) (*rds.DeleteDBSnapshotOutput, error) DeleteDBSubnetGroupRequest(*rds.DeleteDBSubnetGroupInput) (*request.Request, *rds.DeleteDBSubnetGroupOutput) DeleteDBSubnetGroup(*rds.DeleteDBSubnetGroupInput) (*rds.DeleteDBSubnetGroupOutput, error) DeleteEventSubscriptionRequest(*rds.DeleteEventSubscriptionInput) (*request.Request, *rds.DeleteEventSubscriptionOutput) DeleteEventSubscription(*rds.DeleteEventSubscriptionInput) (*rds.DeleteEventSubscriptionOutput, error) DeleteOptionGroupRequest(*rds.DeleteOptionGroupInput) (*request.Request, *rds.DeleteOptionGroupOutput) DeleteOptionGroup(*rds.DeleteOptionGroupInput) (*rds.DeleteOptionGroupOutput, error) DescribeAccountAttributesRequest(*rds.DescribeAccountAttributesInput) (*request.Request, *rds.DescribeAccountAttributesOutput) DescribeAccountAttributes(*rds.DescribeAccountAttributesInput) (*rds.DescribeAccountAttributesOutput, error) DescribeCertificatesRequest(*rds.DescribeCertificatesInput) (*request.Request, *rds.DescribeCertificatesOutput) DescribeCertificates(*rds.DescribeCertificatesInput) (*rds.DescribeCertificatesOutput, error) DescribeDBClusterParameterGroupsRequest(*rds.DescribeDBClusterParameterGroupsInput) (*request.Request, *rds.DescribeDBClusterParameterGroupsOutput) DescribeDBClusterParameterGroups(*rds.DescribeDBClusterParameterGroupsInput) (*rds.DescribeDBClusterParameterGroupsOutput, error) DescribeDBClusterParametersRequest(*rds.DescribeDBClusterParametersInput) (*request.Request, *rds.DescribeDBClusterParametersOutput) DescribeDBClusterParameters(*rds.DescribeDBClusterParametersInput) (*rds.DescribeDBClusterParametersOutput, error) DescribeDBClusterSnapshotAttributesRequest(*rds.DescribeDBClusterSnapshotAttributesInput) (*request.Request, *rds.DescribeDBClusterSnapshotAttributesOutput) DescribeDBClusterSnapshotAttributes(*rds.DescribeDBClusterSnapshotAttributesInput) (*rds.DescribeDBClusterSnapshotAttributesOutput, error) DescribeDBClusterSnapshotsRequest(*rds.DescribeDBClusterSnapshotsInput) (*request.Request, *rds.DescribeDBClusterSnapshotsOutput) DescribeDBClusterSnapshots(*rds.DescribeDBClusterSnapshotsInput) (*rds.DescribeDBClusterSnapshotsOutput, error) DescribeDBClustersRequest(*rds.DescribeDBClustersInput) (*request.Request, *rds.DescribeDBClustersOutput) DescribeDBClusters(*rds.DescribeDBClustersInput) (*rds.DescribeDBClustersOutput, error) DescribeDBEngineVersionsRequest(*rds.DescribeDBEngineVersionsInput) (*request.Request, *rds.DescribeDBEngineVersionsOutput) DescribeDBEngineVersions(*rds.DescribeDBEngineVersionsInput) (*rds.DescribeDBEngineVersionsOutput, error) DescribeDBEngineVersionsPages(*rds.DescribeDBEngineVersionsInput, func(*rds.DescribeDBEngineVersionsOutput, bool) bool) error DescribeDBInstancesRequest(*rds.DescribeDBInstancesInput) (*request.Request, *rds.DescribeDBInstancesOutput) DescribeDBInstances(*rds.DescribeDBInstancesInput) (*rds.DescribeDBInstancesOutput, error) DescribeDBInstancesPages(*rds.DescribeDBInstancesInput, func(*rds.DescribeDBInstancesOutput, bool) bool) error DescribeDBLogFilesRequest(*rds.DescribeDBLogFilesInput) (*request.Request, *rds.DescribeDBLogFilesOutput) DescribeDBLogFiles(*rds.DescribeDBLogFilesInput) (*rds.DescribeDBLogFilesOutput, error) DescribeDBLogFilesPages(*rds.DescribeDBLogFilesInput, func(*rds.DescribeDBLogFilesOutput, bool) bool) error DescribeDBParameterGroupsRequest(*rds.DescribeDBParameterGroupsInput) (*request.Request, *rds.DescribeDBParameterGroupsOutput) DescribeDBParameterGroups(*rds.DescribeDBParameterGroupsInput) (*rds.DescribeDBParameterGroupsOutput, error) DescribeDBParameterGroupsPages(*rds.DescribeDBParameterGroupsInput, func(*rds.DescribeDBParameterGroupsOutput, bool) bool) error DescribeDBParametersRequest(*rds.DescribeDBParametersInput) (*request.Request, *rds.DescribeDBParametersOutput) DescribeDBParameters(*rds.DescribeDBParametersInput) (*rds.DescribeDBParametersOutput, error) DescribeDBParametersPages(*rds.DescribeDBParametersInput, func(*rds.DescribeDBParametersOutput, bool) bool) error DescribeDBSecurityGroupsRequest(*rds.DescribeDBSecurityGroupsInput) (*request.Request, *rds.DescribeDBSecurityGroupsOutput) DescribeDBSecurityGroups(*rds.DescribeDBSecurityGroupsInput) (*rds.DescribeDBSecurityGroupsOutput, error) DescribeDBSecurityGroupsPages(*rds.DescribeDBSecurityGroupsInput, func(*rds.DescribeDBSecurityGroupsOutput, bool) bool) error DescribeDBSnapshotAttributesRequest(*rds.DescribeDBSnapshotAttributesInput) (*request.Request, *rds.DescribeDBSnapshotAttributesOutput) DescribeDBSnapshotAttributes(*rds.DescribeDBSnapshotAttributesInput) (*rds.DescribeDBSnapshotAttributesOutput, error) DescribeDBSnapshotsRequest(*rds.DescribeDBSnapshotsInput) (*request.Request, *rds.DescribeDBSnapshotsOutput) DescribeDBSnapshots(*rds.DescribeDBSnapshotsInput) (*rds.DescribeDBSnapshotsOutput, error) DescribeDBSnapshotsPages(*rds.DescribeDBSnapshotsInput, func(*rds.DescribeDBSnapshotsOutput, bool) bool) error DescribeDBSubnetGroupsRequest(*rds.DescribeDBSubnetGroupsInput) (*request.Request, *rds.DescribeDBSubnetGroupsOutput) DescribeDBSubnetGroups(*rds.DescribeDBSubnetGroupsInput) (*rds.DescribeDBSubnetGroupsOutput, error) DescribeDBSubnetGroupsPages(*rds.DescribeDBSubnetGroupsInput, func(*rds.DescribeDBSubnetGroupsOutput, bool) bool) error DescribeEngineDefaultClusterParametersRequest(*rds.DescribeEngineDefaultClusterParametersInput) (*request.Request, *rds.DescribeEngineDefaultClusterParametersOutput) DescribeEngineDefaultClusterParameters(*rds.DescribeEngineDefaultClusterParametersInput) (*rds.DescribeEngineDefaultClusterParametersOutput, error) DescribeEngineDefaultParametersRequest(*rds.DescribeEngineDefaultParametersInput) (*request.Request, *rds.DescribeEngineDefaultParametersOutput) DescribeEngineDefaultParameters(*rds.DescribeEngineDefaultParametersInput) (*rds.DescribeEngineDefaultParametersOutput, error) DescribeEngineDefaultParametersPages(*rds.DescribeEngineDefaultParametersInput, func(*rds.DescribeEngineDefaultParametersOutput, bool) bool) error DescribeEventCategoriesRequest(*rds.DescribeEventCategoriesInput) (*request.Request, *rds.DescribeEventCategoriesOutput) DescribeEventCategories(*rds.DescribeEventCategoriesInput) (*rds.DescribeEventCategoriesOutput, error) DescribeEventSubscriptionsRequest(*rds.DescribeEventSubscriptionsInput) (*request.Request, *rds.DescribeEventSubscriptionsOutput) DescribeEventSubscriptions(*rds.DescribeEventSubscriptionsInput) (*rds.DescribeEventSubscriptionsOutput, error) DescribeEventSubscriptionsPages(*rds.DescribeEventSubscriptionsInput, func(*rds.DescribeEventSubscriptionsOutput, bool) bool) error DescribeEventsRequest(*rds.DescribeEventsInput) (*request.Request, *rds.DescribeEventsOutput) DescribeEvents(*rds.DescribeEventsInput) (*rds.DescribeEventsOutput, error) DescribeEventsPages(*rds.DescribeEventsInput, func(*rds.DescribeEventsOutput, bool) bool) error DescribeOptionGroupOptionsRequest(*rds.DescribeOptionGroupOptionsInput) (*request.Request, *rds.DescribeOptionGroupOptionsOutput) DescribeOptionGroupOptions(*rds.DescribeOptionGroupOptionsInput) (*rds.DescribeOptionGroupOptionsOutput, error) DescribeOptionGroupOptionsPages(*rds.DescribeOptionGroupOptionsInput, func(*rds.DescribeOptionGroupOptionsOutput, bool) bool) error DescribeOptionGroupsRequest(*rds.DescribeOptionGroupsInput) (*request.Request, *rds.DescribeOptionGroupsOutput) DescribeOptionGroups(*rds.DescribeOptionGroupsInput) (*rds.DescribeOptionGroupsOutput, error) DescribeOptionGroupsPages(*rds.DescribeOptionGroupsInput, func(*rds.DescribeOptionGroupsOutput, bool) bool) error DescribeOrderableDBInstanceOptionsRequest(*rds.DescribeOrderableDBInstanceOptionsInput) (*request.Request, *rds.DescribeOrderableDBInstanceOptionsOutput) DescribeOrderableDBInstanceOptions(*rds.DescribeOrderableDBInstanceOptionsInput) (*rds.DescribeOrderableDBInstanceOptionsOutput, error) DescribeOrderableDBInstanceOptionsPages(*rds.DescribeOrderableDBInstanceOptionsInput, func(*rds.DescribeOrderableDBInstanceOptionsOutput, bool) bool) error DescribePendingMaintenanceActionsRequest(*rds.DescribePendingMaintenanceActionsInput) (*request.Request, *rds.DescribePendingMaintenanceActionsOutput) DescribePendingMaintenanceActions(*rds.DescribePendingMaintenanceActionsInput) (*rds.DescribePendingMaintenanceActionsOutput, error) DescribeReservedDBInstancesRequest(*rds.DescribeReservedDBInstancesInput) (*request.Request, *rds.DescribeReservedDBInstancesOutput) DescribeReservedDBInstances(*rds.DescribeReservedDBInstancesInput) (*rds.DescribeReservedDBInstancesOutput, error) DescribeReservedDBInstancesPages(*rds.DescribeReservedDBInstancesInput, func(*rds.DescribeReservedDBInstancesOutput, bool) bool) error DescribeReservedDBInstancesOfferingsRequest(*rds.DescribeReservedDBInstancesOfferingsInput) (*request.Request, *rds.DescribeReservedDBInstancesOfferingsOutput) DescribeReservedDBInstancesOfferings(*rds.DescribeReservedDBInstancesOfferingsInput) (*rds.DescribeReservedDBInstancesOfferingsOutput, error) DescribeReservedDBInstancesOfferingsPages(*rds.DescribeReservedDBInstancesOfferingsInput, func(*rds.DescribeReservedDBInstancesOfferingsOutput, bool) bool) error DescribeSourceRegionsRequest(*rds.DescribeSourceRegionsInput) (*request.Request, *rds.DescribeSourceRegionsOutput) DescribeSourceRegions(*rds.DescribeSourceRegionsInput) (*rds.DescribeSourceRegionsOutput, error) DownloadDBLogFilePortionRequest(*rds.DownloadDBLogFilePortionInput) (*request.Request, *rds.DownloadDBLogFilePortionOutput) DownloadDBLogFilePortion(*rds.DownloadDBLogFilePortionInput) (*rds.DownloadDBLogFilePortionOutput, error) DownloadDBLogFilePortionPages(*rds.DownloadDBLogFilePortionInput, func(*rds.DownloadDBLogFilePortionOutput, bool) bool) error FailoverDBClusterRequest(*rds.FailoverDBClusterInput) (*request.Request, *rds.FailoverDBClusterOutput) FailoverDBCluster(*rds.FailoverDBClusterInput) (*rds.FailoverDBClusterOutput, error) ListTagsForResourceRequest(*rds.ListTagsForResourceInput) (*request.Request, *rds.ListTagsForResourceOutput) ListTagsForResource(*rds.ListTagsForResourceInput) (*rds.ListTagsForResourceOutput, error) ModifyDBClusterRequest(*rds.ModifyDBClusterInput) (*request.Request, *rds.ModifyDBClusterOutput) ModifyDBCluster(*rds.ModifyDBClusterInput) (*rds.ModifyDBClusterOutput, error) ModifyDBClusterParameterGroupRequest(*rds.ModifyDBClusterParameterGroupInput) (*request.Request, *rds.DBClusterParameterGroupNameMessage) ModifyDBClusterParameterGroup(*rds.ModifyDBClusterParameterGroupInput) (*rds.DBClusterParameterGroupNameMessage, error) ModifyDBClusterSnapshotAttributeRequest(*rds.ModifyDBClusterSnapshotAttributeInput) (*request.Request, *rds.ModifyDBClusterSnapshotAttributeOutput) ModifyDBClusterSnapshotAttribute(*rds.ModifyDBClusterSnapshotAttributeInput) (*rds.ModifyDBClusterSnapshotAttributeOutput, error) ModifyDBInstanceRequest(*rds.ModifyDBInstanceInput) (*request.Request, *rds.ModifyDBInstanceOutput) ModifyDBInstance(*rds.ModifyDBInstanceInput) (*rds.ModifyDBInstanceOutput, error) ModifyDBParameterGroupRequest(*rds.ModifyDBParameterGroupInput) (*request.Request, *rds.DBParameterGroupNameMessage) ModifyDBParameterGroup(*rds.ModifyDBParameterGroupInput) (*rds.DBParameterGroupNameMessage, error) ModifyDBSnapshotAttributeRequest(*rds.ModifyDBSnapshotAttributeInput) (*request.Request, *rds.ModifyDBSnapshotAttributeOutput) ModifyDBSnapshotAttribute(*rds.ModifyDBSnapshotAttributeInput) (*rds.ModifyDBSnapshotAttributeOutput, error) ModifyDBSubnetGroupRequest(*rds.ModifyDBSubnetGroupInput) (*request.Request, *rds.ModifyDBSubnetGroupOutput) ModifyDBSubnetGroup(*rds.ModifyDBSubnetGroupInput) (*rds.ModifyDBSubnetGroupOutput, error) ModifyEventSubscriptionRequest(*rds.ModifyEventSubscriptionInput) (*request.Request, *rds.ModifyEventSubscriptionOutput) ModifyEventSubscription(*rds.ModifyEventSubscriptionInput) (*rds.ModifyEventSubscriptionOutput, error) ModifyOptionGroupRequest(*rds.ModifyOptionGroupInput) (*request.Request, *rds.ModifyOptionGroupOutput) ModifyOptionGroup(*rds.ModifyOptionGroupInput) (*rds.ModifyOptionGroupOutput, error) PromoteReadReplicaRequest(*rds.PromoteReadReplicaInput) (*request.Request, *rds.PromoteReadReplicaOutput) PromoteReadReplica(*rds.PromoteReadReplicaInput) (*rds.PromoteReadReplicaOutput, error) PromoteReadReplicaDBClusterRequest(*rds.PromoteReadReplicaDBClusterInput) (*request.Request, *rds.PromoteReadReplicaDBClusterOutput) PromoteReadReplicaDBCluster(*rds.PromoteReadReplicaDBClusterInput) (*rds.PromoteReadReplicaDBClusterOutput, error) PurchaseReservedDBInstancesOfferingRequest(*rds.PurchaseReservedDBInstancesOfferingInput) (*request.Request, *rds.PurchaseReservedDBInstancesOfferingOutput) PurchaseReservedDBInstancesOffering(*rds.PurchaseReservedDBInstancesOfferingInput) (*rds.PurchaseReservedDBInstancesOfferingOutput, error) RebootDBInstanceRequest(*rds.RebootDBInstanceInput) (*request.Request, *rds.RebootDBInstanceOutput) RebootDBInstance(*rds.RebootDBInstanceInput) (*rds.RebootDBInstanceOutput, error) RemoveRoleFromDBClusterRequest(*rds.RemoveRoleFromDBClusterInput) (*request.Request, *rds.RemoveRoleFromDBClusterOutput) RemoveRoleFromDBCluster(*rds.RemoveRoleFromDBClusterInput) (*rds.RemoveRoleFromDBClusterOutput, error) RemoveSourceIdentifierFromSubscriptionRequest(*rds.RemoveSourceIdentifierFromSubscriptionInput) (*request.Request, *rds.RemoveSourceIdentifierFromSubscriptionOutput) RemoveSourceIdentifierFromSubscription(*rds.RemoveSourceIdentifierFromSubscriptionInput) (*rds.RemoveSourceIdentifierFromSubscriptionOutput, error) RemoveTagsFromResourceRequest(*rds.RemoveTagsFromResourceInput) (*request.Request, *rds.RemoveTagsFromResourceOutput) RemoveTagsFromResource(*rds.RemoveTagsFromResourceInput) (*rds.RemoveTagsFromResourceOutput, error) ResetDBClusterParameterGroupRequest(*rds.ResetDBClusterParameterGroupInput) (*request.Request, *rds.DBClusterParameterGroupNameMessage) ResetDBClusterParameterGroup(*rds.ResetDBClusterParameterGroupInput) (*rds.DBClusterParameterGroupNameMessage, error) ResetDBParameterGroupRequest(*rds.ResetDBParameterGroupInput) (*request.Request, *rds.DBParameterGroupNameMessage) ResetDBParameterGroup(*rds.ResetDBParameterGroupInput) (*rds.DBParameterGroupNameMessage, error) RestoreDBClusterFromS3Request(*rds.RestoreDBClusterFromS3Input) (*request.Request, *rds.RestoreDBClusterFromS3Output) RestoreDBClusterFromS3(*rds.RestoreDBClusterFromS3Input) (*rds.RestoreDBClusterFromS3Output, error) RestoreDBClusterFromSnapshotRequest(*rds.RestoreDBClusterFromSnapshotInput) (*request.Request, *rds.RestoreDBClusterFromSnapshotOutput) RestoreDBClusterFromSnapshot(*rds.RestoreDBClusterFromSnapshotInput) (*rds.RestoreDBClusterFromSnapshotOutput, error) RestoreDBClusterToPointInTimeRequest(*rds.RestoreDBClusterToPointInTimeInput) (*request.Request, *rds.RestoreDBClusterToPointInTimeOutput) RestoreDBClusterToPointInTime(*rds.RestoreDBClusterToPointInTimeInput) (*rds.RestoreDBClusterToPointInTimeOutput, error) RestoreDBInstanceFromDBSnapshotRequest(*rds.RestoreDBInstanceFromDBSnapshotInput) (*request.Request, *rds.RestoreDBInstanceFromDBSnapshotOutput) RestoreDBInstanceFromDBSnapshot(*rds.RestoreDBInstanceFromDBSnapshotInput) (*rds.RestoreDBInstanceFromDBSnapshotOutput, error) RestoreDBInstanceToPointInTimeRequest(*rds.RestoreDBInstanceToPointInTimeInput) (*request.Request, *rds.RestoreDBInstanceToPointInTimeOutput) RestoreDBInstanceToPointInTime(*rds.RestoreDBInstanceToPointInTimeInput) (*rds.RestoreDBInstanceToPointInTimeOutput, error) RevokeDBSecurityGroupIngressRequest(*rds.RevokeDBSecurityGroupIngressInput) (*request.Request, *rds.RevokeDBSecurityGroupIngressOutput) RevokeDBSecurityGroupIngress(*rds.RevokeDBSecurityGroupIngressInput) (*rds.RevokeDBSecurityGroupIngressOutput, error) WaitUntilDBInstanceAvailable(*rds.DescribeDBInstancesInput) error WaitUntilDBInstanceDeleted(*rds.DescribeDBInstancesInput) error } var _ RDSAPI = (*rds.RDS)(nil) aws-sdk-go-1.4.22/service/rds/service.go000066400000000000000000000122571300374646400200110ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package rds import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/query" ) // // Amazon Relational Database Service (Amazon RDS) is a web service that makes // it easier to set up, operate, and scale a relational database in the cloud. // It provides cost-efficient, resizeable capacity for an industry-standard // relational database and manages common database administration tasks, freeing // up developers to focus on what makes their applications and businesses unique. // // Amazon RDS gives you access to the capabilities of a MySQL, MariaDB, PostgreSQL, // Microsoft SQL Server, Oracle, or Amazon Aurora database server. These capabilities // mean that the code, applications, and tools you already use today with your // existing databases work with Amazon RDS without modification. Amazon RDS // automatically backs up your database and maintains the database software // that powers your DB instance. Amazon RDS is flexible: you can scale your // database instance's compute resources and storage capacity to meet your application's // demand. As with all Amazon Web Services, there are no up-front investments, // and you pay only for the resources you use. // // This interface reference for Amazon RDS contains documentation for a programming // or command line interface you can use to manage Amazon RDS. Note that Amazon // RDS is asynchronous, which means that some interfaces might require techniques // such as polling or callback functions to determine when a command has been // applied. In this reference, the parameter descriptions indicate whether a // command is applied immediately, on the next instance reboot, or during the // maintenance window. The reference structure is as follows, and we list following // some related topics from the user guide. // // Amazon RDS API Reference // // * For the alphabetical list of API actions, see API Actions (http://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_Operations.html). // // * For the alphabetical list of data types, see Data Types (http://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_Types.html). // // * For a list of common query parameters, see Common Parameters (http://docs.aws.amazon.com/AmazonRDS/latest/APIReference/CommonParameters.html). // // * For descriptions of the error codes, see Common Errors (http://docs.aws.amazon.com/AmazonRDS/latest/APIReference/CommonErrors.html). // // Amazon RDS User Guide // // * For a summary of the Amazon RDS interfaces, see Available RDS Interfaces // (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html#Welcome.Interfaces). // // * For more information about how to use the Query API, see Using the Query // API (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Using_the_Query_API.html). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type RDS struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "rds" // New creates a new instance of the RDS client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a RDS client from just a session. // svc := rds.New(mySession) // // // Create a RDS client with additional configuration // svc := rds.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *RDS { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *RDS { svc := &RDS{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-10-31", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a RDS operation and runs any // custom request initialization. func (c *RDS) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/rds/waiters.go000066400000000000000000000055071300374646400200270ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package rds import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilDBInstanceAvailable uses the Amazon RDS API operation // DescribeDBInstances to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *RDS) WaitUntilDBInstanceAvailable(input *DescribeDBInstancesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeDBInstances", Delay: 30, MaxAttempts: 60, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "DBInstances[].DBInstanceStatus", Expected: "available", }, { State: "failure", Matcher: "pathAny", Argument: "DBInstances[].DBInstanceStatus", Expected: "deleted", }, { State: "failure", Matcher: "pathAny", Argument: "DBInstances[].DBInstanceStatus", Expected: "deleting", }, { State: "failure", Matcher: "pathAny", Argument: "DBInstances[].DBInstanceStatus", Expected: "failed", }, { State: "failure", Matcher: "pathAny", Argument: "DBInstances[].DBInstanceStatus", Expected: "incompatible-restore", }, { State: "failure", Matcher: "pathAny", Argument: "DBInstances[].DBInstanceStatus", Expected: "incompatible-parameters", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilDBInstanceDeleted uses the Amazon RDS API operation // DescribeDBInstances to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *RDS) WaitUntilDBInstanceDeleted(input *DescribeDBInstancesInput) error { waiterCfg := waiter.Config{ Operation: "DescribeDBInstances", Delay: 30, MaxAttempts: 60, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "DBInstances[].DBInstanceStatus", Expected: "deleted", }, { State: "success", Matcher: "error", Argument: "", Expected: "DBInstanceNotFound", }, { State: "failure", Matcher: "pathAny", Argument: "DBInstances[].DBInstanceStatus", Expected: "creating", }, { State: "failure", Matcher: "pathAny", Argument: "DBInstances[].DBInstanceStatus", Expected: "modifying", }, { State: "failure", Matcher: "pathAny", Argument: "DBInstances[].DBInstanceStatus", Expected: "rebooting", }, { State: "failure", Matcher: "pathAny", Argument: "DBInstances[].DBInstanceStatus", Expected: "resetting-master-credentials", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/redshift/000077500000000000000000000000001300374646400170335ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/redshift/api.go000066400000000000000000015163111300374646400201430ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package redshift provides a client for Amazon Redshift. package redshift import ( "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/query" ) const opAuthorizeClusterSecurityGroupIngress = "AuthorizeClusterSecurityGroupIngress" // AuthorizeClusterSecurityGroupIngressRequest generates a "aws/request.Request" representing the // client's request for the AuthorizeClusterSecurityGroupIngress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AuthorizeClusterSecurityGroupIngress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AuthorizeClusterSecurityGroupIngress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AuthorizeClusterSecurityGroupIngressRequest method. // req, resp := client.AuthorizeClusterSecurityGroupIngressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) AuthorizeClusterSecurityGroupIngressRequest(input *AuthorizeClusterSecurityGroupIngressInput) (req *request.Request, output *AuthorizeClusterSecurityGroupIngressOutput) { op := &request.Operation{ Name: opAuthorizeClusterSecurityGroupIngress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AuthorizeClusterSecurityGroupIngressInput{} } req = c.newRequest(op, input, output) output = &AuthorizeClusterSecurityGroupIngressOutput{} req.Data = output return } // AuthorizeClusterSecurityGroupIngress API operation for Amazon Redshift. // // Adds an inbound (ingress) rule to an Amazon Redshift security group. Depending // on whether the application accessing your cluster is running on the Internet // or an Amazon EC2 instance, you can authorize inbound access to either a Classless // Interdomain Routing (CIDR)/Internet Protocol (IP) range or to an Amazon EC2 // security group. You can add as many as 20 ingress rules to an Amazon Redshift // security group. // // If you authorize access to an Amazon EC2 security group, specify EC2SecurityGroupName // and EC2SecurityGroupOwnerId. The Amazon EC2 security group and Amazon Redshift // cluster must be in the same AWS region. // // If you authorize access to a CIDR/IP address range, specify CIDRIP. For an // overview of CIDR blocks, see the Wikipedia article on Classless Inter-Domain // Routing (http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). // // You must also associate the security group with a cluster so that clients // running on these IP addresses or the EC2 instance are authorized to connect // to the cluster. For information about managing security groups, go to Working // with Security Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation AuthorizeClusterSecurityGroupIngress for usage and error information. // // Returned Error Codes: // * ClusterSecurityGroupNotFound // The cluster security group name does not refer to an existing cluster security // group. // // * InvalidClusterSecurityGroupState // The state of the cluster security group is not available. // // * AuthorizationAlreadyExists // The specified CIDR block or EC2 security group is already authorized for // the specified cluster security group. // // * AuthorizationQuotaExceeded // The authorization quota for the cluster security group has been reached. // func (c *Redshift) AuthorizeClusterSecurityGroupIngress(input *AuthorizeClusterSecurityGroupIngressInput) (*AuthorizeClusterSecurityGroupIngressOutput, error) { req, out := c.AuthorizeClusterSecurityGroupIngressRequest(input) err := req.Send() return out, err } const opAuthorizeSnapshotAccess = "AuthorizeSnapshotAccess" // AuthorizeSnapshotAccessRequest generates a "aws/request.Request" representing the // client's request for the AuthorizeSnapshotAccess operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AuthorizeSnapshotAccess for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AuthorizeSnapshotAccess method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AuthorizeSnapshotAccessRequest method. // req, resp := client.AuthorizeSnapshotAccessRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) AuthorizeSnapshotAccessRequest(input *AuthorizeSnapshotAccessInput) (req *request.Request, output *AuthorizeSnapshotAccessOutput) { op := &request.Operation{ Name: opAuthorizeSnapshotAccess, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AuthorizeSnapshotAccessInput{} } req = c.newRequest(op, input, output) output = &AuthorizeSnapshotAccessOutput{} req.Data = output return } // AuthorizeSnapshotAccess API operation for Amazon Redshift. // // Authorizes the specified AWS customer account to restore the specified snapshot. // // For more information about working with snapshots, go to Amazon Redshift // Snapshots (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-snapshots.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation AuthorizeSnapshotAccess for usage and error information. // // Returned Error Codes: // * ClusterSnapshotNotFound // The snapshot identifier does not refer to an existing cluster snapshot. // // * AuthorizationAlreadyExists // The specified CIDR block or EC2 security group is already authorized for // the specified cluster security group. // // * AuthorizationQuotaExceeded // The authorization quota for the cluster security group has been reached. // // * DependentServiceRequestThrottlingFault // The request cannot be completed because a dependent service is throttling // requests made by Amazon Redshift on your behalf. Wait and retry the request. // // * InvalidClusterSnapshotState // The specified cluster snapshot is not in the available state, or other accounts // are authorized to access the snapshot. // // * LimitExceededFault // The encryption key has exceeded its grant limit in AWS KMS. // func (c *Redshift) AuthorizeSnapshotAccess(input *AuthorizeSnapshotAccessInput) (*AuthorizeSnapshotAccessOutput, error) { req, out := c.AuthorizeSnapshotAccessRequest(input) err := req.Send() return out, err } const opCopyClusterSnapshot = "CopyClusterSnapshot" // CopyClusterSnapshotRequest generates a "aws/request.Request" representing the // client's request for the CopyClusterSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CopyClusterSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CopyClusterSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CopyClusterSnapshotRequest method. // req, resp := client.CopyClusterSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) CopyClusterSnapshotRequest(input *CopyClusterSnapshotInput) (req *request.Request, output *CopyClusterSnapshotOutput) { op := &request.Operation{ Name: opCopyClusterSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CopyClusterSnapshotInput{} } req = c.newRequest(op, input, output) output = &CopyClusterSnapshotOutput{} req.Data = output return } // CopyClusterSnapshot API operation for Amazon Redshift. // // Copies the specified automated cluster snapshot to a new manual cluster snapshot. // The source must be an automated snapshot and it must be in the available // state. // // When you delete a cluster, Amazon Redshift deletes any automated snapshots // of the cluster. Also, when the retention period of the snapshot expires, // Amazon Redshift automatically deletes it. If you want to keep an automated // snapshot for a longer period, you can make a manual copy of the snapshot. // Manual snapshots are retained until you delete them. // // For more information about working with snapshots, go to Amazon Redshift // Snapshots (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-snapshots.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation CopyClusterSnapshot for usage and error information. // // Returned Error Codes: // * ClusterSnapshotAlreadyExists // The value specified as a snapshot identifier is already used by an existing // snapshot. // // * ClusterSnapshotNotFound // The snapshot identifier does not refer to an existing cluster snapshot. // // * InvalidClusterSnapshotState // The specified cluster snapshot is not in the available state, or other accounts // are authorized to access the snapshot. // // * ClusterSnapshotQuotaExceeded // The request would result in the user exceeding the allowed number of cluster // snapshots. // func (c *Redshift) CopyClusterSnapshot(input *CopyClusterSnapshotInput) (*CopyClusterSnapshotOutput, error) { req, out := c.CopyClusterSnapshotRequest(input) err := req.Send() return out, err } const opCreateCluster = "CreateCluster" // CreateClusterRequest generates a "aws/request.Request" representing the // client's request for the CreateCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateClusterRequest method. // req, resp := client.CreateClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) CreateClusterRequest(input *CreateClusterInput) (req *request.Request, output *CreateClusterOutput) { op := &request.Operation{ Name: opCreateCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateClusterInput{} } req = c.newRequest(op, input, output) output = &CreateClusterOutput{} req.Data = output return } // CreateCluster API operation for Amazon Redshift. // // Creates a new cluster. // // To create the cluster in Virtual Private Cloud (VPC), you must provide a // cluster subnet group name. The cluster subnet group identifies the subnets // of your VPC that Amazon Redshift uses when creating the cluster. For more // information about managing clusters, go to Amazon Redshift Clusters (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation CreateCluster for usage and error information. // // Returned Error Codes: // * ClusterAlreadyExists // The account already has a cluster with the given identifier. // // * InsufficientClusterCapacity // The number of nodes specified exceeds the allotted capacity of the cluster. // // * ClusterParameterGroupNotFound // The parameter group name does not refer to an existing parameter group. // // * ClusterSecurityGroupNotFound // The cluster security group name does not refer to an existing cluster security // group. // // * ClusterQuotaExceeded // The request would exceed the allowed number of cluster instances for this // account. For information about increasing your quota, go to Limits in Amazon // Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) // in the Amazon Redshift Cluster Management Guide. // // * NumberOfNodesQuotaExceeded // The operation would exceed the number of nodes allotted to the account. For // information about increasing your quota, go to Limits in Amazon Redshift // (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) // in the Amazon Redshift Cluster Management Guide. // // * NumberOfNodesPerClusterLimitExceeded // The operation would exceed the number of nodes allowed for a cluster. // // * ClusterSubnetGroupNotFoundFault // The cluster subnet group name does not refer to an existing cluster subnet // group. // // * InvalidVPCNetworkStateFault // The cluster subnet group does not cover all Availability Zones. // // * InvalidClusterSubnetGroupStateFault // The cluster subnet group cannot be deleted because it is in use. // // * InvalidSubnet // The requested subnet is not valid, or not all of the subnets are in the same // VPC. // // * UnauthorizedOperation // Your account is not authorized to perform the requested operation. // // * HsmClientCertificateNotFoundFault // There is no Amazon Redshift HSM client certificate with the specified identifier. // // * HsmConfigurationNotFoundFault // There is no Amazon Redshift HSM configuration with the specified identifier. // // * InvalidElasticIpFault // The Elastic IP (EIP) is invalid or cannot be found. // // * TagLimitExceededFault // The request exceeds the limit of 10 tags for the resource. // // * InvalidTagFault // The tag is invalid. // // * LimitExceededFault // The encryption key has exceeded its grant limit in AWS KMS. // // * DependentServiceRequestThrottlingFault // The request cannot be completed because a dependent service is throttling // requests made by Amazon Redshift on your behalf. Wait and retry the request. // func (c *Redshift) CreateCluster(input *CreateClusterInput) (*CreateClusterOutput, error) { req, out := c.CreateClusterRequest(input) err := req.Send() return out, err } const opCreateClusterParameterGroup = "CreateClusterParameterGroup" // CreateClusterParameterGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateClusterParameterGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateClusterParameterGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateClusterParameterGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateClusterParameterGroupRequest method. // req, resp := client.CreateClusterParameterGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) CreateClusterParameterGroupRequest(input *CreateClusterParameterGroupInput) (req *request.Request, output *CreateClusterParameterGroupOutput) { op := &request.Operation{ Name: opCreateClusterParameterGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateClusterParameterGroupInput{} } req = c.newRequest(op, input, output) output = &CreateClusterParameterGroupOutput{} req.Data = output return } // CreateClusterParameterGroup API operation for Amazon Redshift. // // Creates an Amazon Redshift parameter group. // // Creating parameter groups is independent of creating clusters. You can associate // a cluster with a parameter group when you create the cluster. You can also // associate an existing cluster with a parameter group after the cluster is // created by using ModifyCluster. // // Parameters in the parameter group define specific behavior that applies to // the databases you create on the cluster. For more information about parameters // and parameter groups, go to Amazon Redshift Parameter Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation CreateClusterParameterGroup for usage and error information. // // Returned Error Codes: // * ClusterParameterGroupQuotaExceeded // The request would result in the user exceeding the allowed number of cluster // parameter groups. For information about increasing your quota, go to Limits // in Amazon Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) // in the Amazon Redshift Cluster Management Guide. // // * ClusterParameterGroupAlreadyExists // A cluster parameter group with the same name already exists. // // * TagLimitExceededFault // The request exceeds the limit of 10 tags for the resource. // // * InvalidTagFault // The tag is invalid. // func (c *Redshift) CreateClusterParameterGroup(input *CreateClusterParameterGroupInput) (*CreateClusterParameterGroupOutput, error) { req, out := c.CreateClusterParameterGroupRequest(input) err := req.Send() return out, err } const opCreateClusterSecurityGroup = "CreateClusterSecurityGroup" // CreateClusterSecurityGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateClusterSecurityGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateClusterSecurityGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateClusterSecurityGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateClusterSecurityGroupRequest method. // req, resp := client.CreateClusterSecurityGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) CreateClusterSecurityGroupRequest(input *CreateClusterSecurityGroupInput) (req *request.Request, output *CreateClusterSecurityGroupOutput) { op := &request.Operation{ Name: opCreateClusterSecurityGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateClusterSecurityGroupInput{} } req = c.newRequest(op, input, output) output = &CreateClusterSecurityGroupOutput{} req.Data = output return } // CreateClusterSecurityGroup API operation for Amazon Redshift. // // Creates a new Amazon Redshift security group. You use security groups to // control access to non-VPC clusters. // // For information about managing security groups, go to Amazon Redshift Cluster // Security Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation CreateClusterSecurityGroup for usage and error information. // // Returned Error Codes: // * ClusterSecurityGroupAlreadyExists // A cluster security group with the same name already exists. // // * QuotaExceeded.ClusterSecurityGroup // The request would result in the user exceeding the allowed number of cluster // security groups. For information about increasing your quota, go to Limits // in Amazon Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) // in the Amazon Redshift Cluster Management Guide. // // * TagLimitExceededFault // The request exceeds the limit of 10 tags for the resource. // // * InvalidTagFault // The tag is invalid. // func (c *Redshift) CreateClusterSecurityGroup(input *CreateClusterSecurityGroupInput) (*CreateClusterSecurityGroupOutput, error) { req, out := c.CreateClusterSecurityGroupRequest(input) err := req.Send() return out, err } const opCreateClusterSnapshot = "CreateClusterSnapshot" // CreateClusterSnapshotRequest generates a "aws/request.Request" representing the // client's request for the CreateClusterSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateClusterSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateClusterSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateClusterSnapshotRequest method. // req, resp := client.CreateClusterSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) CreateClusterSnapshotRequest(input *CreateClusterSnapshotInput) (req *request.Request, output *CreateClusterSnapshotOutput) { op := &request.Operation{ Name: opCreateClusterSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateClusterSnapshotInput{} } req = c.newRequest(op, input, output) output = &CreateClusterSnapshotOutput{} req.Data = output return } // CreateClusterSnapshot API operation for Amazon Redshift. // // Creates a manual snapshot of the specified cluster. The cluster must be in // the available state. // // For more information about working with snapshots, go to Amazon Redshift // Snapshots (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-snapshots.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation CreateClusterSnapshot for usage and error information. // // Returned Error Codes: // * ClusterSnapshotAlreadyExists // The value specified as a snapshot identifier is already used by an existing // snapshot. // // * InvalidClusterState // The specified cluster is not in the available state. // // * ClusterNotFound // The ClusterIdentifier parameter does not refer to an existing cluster. // // * ClusterSnapshotQuotaExceeded // The request would result in the user exceeding the allowed number of cluster // snapshots. // // * TagLimitExceededFault // The request exceeds the limit of 10 tags for the resource. // // * InvalidTagFault // The tag is invalid. // func (c *Redshift) CreateClusterSnapshot(input *CreateClusterSnapshotInput) (*CreateClusterSnapshotOutput, error) { req, out := c.CreateClusterSnapshotRequest(input) err := req.Send() return out, err } const opCreateClusterSubnetGroup = "CreateClusterSubnetGroup" // CreateClusterSubnetGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateClusterSubnetGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateClusterSubnetGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateClusterSubnetGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateClusterSubnetGroupRequest method. // req, resp := client.CreateClusterSubnetGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) CreateClusterSubnetGroupRequest(input *CreateClusterSubnetGroupInput) (req *request.Request, output *CreateClusterSubnetGroupOutput) { op := &request.Operation{ Name: opCreateClusterSubnetGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateClusterSubnetGroupInput{} } req = c.newRequest(op, input, output) output = &CreateClusterSubnetGroupOutput{} req.Data = output return } // CreateClusterSubnetGroup API operation for Amazon Redshift. // // Creates a new Amazon Redshift subnet group. You must provide a list of one // or more subnets in your existing Amazon Virtual Private Cloud (Amazon VPC) // when creating Amazon Redshift subnet group. // // For information about subnet groups, go to Amazon Redshift Cluster Subnet // Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-cluster-subnet-groups.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation CreateClusterSubnetGroup for usage and error information. // // Returned Error Codes: // * ClusterSubnetGroupAlreadyExists // A ClusterSubnetGroupName is already used by an existing cluster subnet group. // // * ClusterSubnetGroupQuotaExceeded // The request would result in user exceeding the allowed number of cluster // subnet groups. For information about increasing your quota, go to Limits // in Amazon Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) // in the Amazon Redshift Cluster Management Guide. // // * ClusterSubnetQuotaExceededFault // The request would result in user exceeding the allowed number of subnets // in a cluster subnet groups. For information about increasing your quota, // go to Limits in Amazon Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) // in the Amazon Redshift Cluster Management Guide. // // * InvalidSubnet // The requested subnet is not valid, or not all of the subnets are in the same // VPC. // // * UnauthorizedOperation // Your account is not authorized to perform the requested operation. // // * TagLimitExceededFault // The request exceeds the limit of 10 tags for the resource. // // * InvalidTagFault // The tag is invalid. // // * DependentServiceRequestThrottlingFault // The request cannot be completed because a dependent service is throttling // requests made by Amazon Redshift on your behalf. Wait and retry the request. // func (c *Redshift) CreateClusterSubnetGroup(input *CreateClusterSubnetGroupInput) (*CreateClusterSubnetGroupOutput, error) { req, out := c.CreateClusterSubnetGroupRequest(input) err := req.Send() return out, err } const opCreateEventSubscription = "CreateEventSubscription" // CreateEventSubscriptionRequest generates a "aws/request.Request" representing the // client's request for the CreateEventSubscription operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateEventSubscription for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateEventSubscription method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateEventSubscriptionRequest method. // req, resp := client.CreateEventSubscriptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) CreateEventSubscriptionRequest(input *CreateEventSubscriptionInput) (req *request.Request, output *CreateEventSubscriptionOutput) { op := &request.Operation{ Name: opCreateEventSubscription, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateEventSubscriptionInput{} } req = c.newRequest(op, input, output) output = &CreateEventSubscriptionOutput{} req.Data = output return } // CreateEventSubscription API operation for Amazon Redshift. // // Creates an Amazon Redshift event notification subscription. This action requires // an ARN (Amazon Resource Name) of an Amazon SNS topic created by either the // Amazon Redshift console, the Amazon SNS console, or the Amazon SNS API. To // obtain an ARN with Amazon SNS, you must create a topic in Amazon SNS and // subscribe to the topic. The ARN is displayed in the SNS console. // // You can specify the source type, and lists of Amazon Redshift source IDs, // event categories, and event severities. Notifications will be sent for all // events you want that match those criteria. For example, you can specify source // type = cluster, source ID = my-cluster-1 and mycluster2, event categories // = Availability, Backup, and severity = ERROR. The subscription will only // send notifications for those ERROR events in the Availability and Backup // categories for the specified clusters. // // If you specify both the source type and source IDs, such as source type = // cluster and source identifier = my-cluster-1, notifications will be sent // for all the cluster events for my-cluster-1. If you specify a source type // but do not specify a source identifier, you will receive notice of the events // for the objects of that type in your AWS account. If you do not specify either // the SourceType nor the SourceIdentifier, you will be notified of events generated // from all Amazon Redshift sources belonging to your AWS account. You must // specify a source type if you specify a source ID. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation CreateEventSubscription for usage and error information. // // Returned Error Codes: // * EventSubscriptionQuotaExceeded // The request would exceed the allowed number of event subscriptions for this // account. For information about increasing your quota, go to Limits in Amazon // Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) // in the Amazon Redshift Cluster Management Guide. // // * SubscriptionAlreadyExist // There is already an existing event notification subscription with the specified // name. // // * SNSInvalidTopic // Amazon SNS has responded that there is a problem with the specified Amazon // SNS topic. // // * SNSNoAuthorization // You do not have permission to publish to the specified Amazon SNS topic. // // * SNSTopicArnNotFound // An Amazon SNS topic with the specified Amazon Resource Name (ARN) does not // exist. // // * SubscriptionEventIdNotFound // An Amazon Redshift event with the specified event ID does not exist. // // * SubscriptionCategoryNotFound // The value specified for the event category was not one of the allowed values, // or it specified a category that does not apply to the specified source type. // The allowed values are Configuration, Management, Monitoring, and Security. // // * SubscriptionSeverityNotFound // The value specified for the event severity was not one of the allowed values, // or it specified a severity that does not apply to the specified source type. // The allowed values are ERROR and INFO. // // * SourceNotFound // The specified Amazon Redshift event source could not be found. // // * TagLimitExceededFault // The request exceeds the limit of 10 tags for the resource. // // * InvalidTagFault // The tag is invalid. // func (c *Redshift) CreateEventSubscription(input *CreateEventSubscriptionInput) (*CreateEventSubscriptionOutput, error) { req, out := c.CreateEventSubscriptionRequest(input) err := req.Send() return out, err } const opCreateHsmClientCertificate = "CreateHsmClientCertificate" // CreateHsmClientCertificateRequest generates a "aws/request.Request" representing the // client's request for the CreateHsmClientCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateHsmClientCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateHsmClientCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateHsmClientCertificateRequest method. // req, resp := client.CreateHsmClientCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) CreateHsmClientCertificateRequest(input *CreateHsmClientCertificateInput) (req *request.Request, output *CreateHsmClientCertificateOutput) { op := &request.Operation{ Name: opCreateHsmClientCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateHsmClientCertificateInput{} } req = c.newRequest(op, input, output) output = &CreateHsmClientCertificateOutput{} req.Data = output return } // CreateHsmClientCertificate API operation for Amazon Redshift. // // Creates an HSM client certificate that an Amazon Redshift cluster will use // to connect to the client's HSM in order to store and retrieve the keys used // to encrypt the cluster databases. // // The command returns a public key, which you must store in the HSM. In addition // to creating the HSM certificate, you must create an Amazon Redshift HSM configuration // that provides a cluster the information needed to store and use encryption // keys in the HSM. For more information, go to Hardware Security Modules (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-HSM.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation CreateHsmClientCertificate for usage and error information. // // Returned Error Codes: // * HsmClientCertificateAlreadyExistsFault // There is already an existing Amazon Redshift HSM client certificate with // the specified identifier. // // * HsmClientCertificateQuotaExceededFault // The quota for HSM client certificates has been reached. For information about // increasing your quota, go to Limits in Amazon Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) // in the Amazon Redshift Cluster Management Guide. // // * TagLimitExceededFault // The request exceeds the limit of 10 tags for the resource. // // * InvalidTagFault // The tag is invalid. // func (c *Redshift) CreateHsmClientCertificate(input *CreateHsmClientCertificateInput) (*CreateHsmClientCertificateOutput, error) { req, out := c.CreateHsmClientCertificateRequest(input) err := req.Send() return out, err } const opCreateHsmConfiguration = "CreateHsmConfiguration" // CreateHsmConfigurationRequest generates a "aws/request.Request" representing the // client's request for the CreateHsmConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateHsmConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateHsmConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateHsmConfigurationRequest method. // req, resp := client.CreateHsmConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) CreateHsmConfigurationRequest(input *CreateHsmConfigurationInput) (req *request.Request, output *CreateHsmConfigurationOutput) { op := &request.Operation{ Name: opCreateHsmConfiguration, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateHsmConfigurationInput{} } req = c.newRequest(op, input, output) output = &CreateHsmConfigurationOutput{} req.Data = output return } // CreateHsmConfiguration API operation for Amazon Redshift. // // Creates an HSM configuration that contains the information required by an // Amazon Redshift cluster to store and use database encryption keys in a Hardware // Security Module (HSM). After creating the HSM configuration, you can specify // it as a parameter when creating a cluster. The cluster will then store its // encryption keys in the HSM. // // In addition to creating an HSM configuration, you must also create an HSM // client certificate. For more information, go to Hardware Security Modules // (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-HSM.html) in // the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation CreateHsmConfiguration for usage and error information. // // Returned Error Codes: // * HsmConfigurationAlreadyExistsFault // There is already an existing Amazon Redshift HSM configuration with the specified // identifier. // // * HsmConfigurationQuotaExceededFault // The quota for HSM configurations has been reached. For information about // increasing your quota, go to Limits in Amazon Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) // in the Amazon Redshift Cluster Management Guide. // // * TagLimitExceededFault // The request exceeds the limit of 10 tags for the resource. // // * InvalidTagFault // The tag is invalid. // func (c *Redshift) CreateHsmConfiguration(input *CreateHsmConfigurationInput) (*CreateHsmConfigurationOutput, error) { req, out := c.CreateHsmConfigurationRequest(input) err := req.Send() return out, err } const opCreateSnapshotCopyGrant = "CreateSnapshotCopyGrant" // CreateSnapshotCopyGrantRequest generates a "aws/request.Request" representing the // client's request for the CreateSnapshotCopyGrant operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateSnapshotCopyGrant for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateSnapshotCopyGrant method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateSnapshotCopyGrantRequest method. // req, resp := client.CreateSnapshotCopyGrantRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) CreateSnapshotCopyGrantRequest(input *CreateSnapshotCopyGrantInput) (req *request.Request, output *CreateSnapshotCopyGrantOutput) { op := &request.Operation{ Name: opCreateSnapshotCopyGrant, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateSnapshotCopyGrantInput{} } req = c.newRequest(op, input, output) output = &CreateSnapshotCopyGrantOutput{} req.Data = output return } // CreateSnapshotCopyGrant API operation for Amazon Redshift. // // Creates a snapshot copy grant that permits Amazon Redshift to use a customer // master key (CMK) from AWS Key Management Service (AWS KMS) to encrypt copied // snapshots in a destination region. // // For more information about managing snapshot copy grants, go to Amazon Redshift // Database Encryption (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-db-encryption.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation CreateSnapshotCopyGrant for usage and error information. // // Returned Error Codes: // * SnapshotCopyGrantAlreadyExistsFault // The snapshot copy grant can't be created because a grant with the same name // already exists. // // * SnapshotCopyGrantQuotaExceededFault // The AWS account has exceeded the maximum number of snapshot copy grants in // this region. // // * LimitExceededFault // The encryption key has exceeded its grant limit in AWS KMS. // // * TagLimitExceededFault // The request exceeds the limit of 10 tags for the resource. // // * InvalidTagFault // The tag is invalid. // // * DependentServiceRequestThrottlingFault // The request cannot be completed because a dependent service is throttling // requests made by Amazon Redshift on your behalf. Wait and retry the request. // func (c *Redshift) CreateSnapshotCopyGrant(input *CreateSnapshotCopyGrantInput) (*CreateSnapshotCopyGrantOutput, error) { req, out := c.CreateSnapshotCopyGrantRequest(input) err := req.Send() return out, err } const opCreateTags = "CreateTags" // CreateTagsRequest generates a "aws/request.Request" representing the // client's request for the CreateTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateTagsRequest method. // req, resp := client.CreateTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) CreateTagsRequest(input *CreateTagsInput) (req *request.Request, output *CreateTagsOutput) { op := &request.Operation{ Name: opCreateTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateTagsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CreateTagsOutput{} req.Data = output return } // CreateTags API operation for Amazon Redshift. // // Adds one or more tags to a specified resource. // // A resource can have up to 10 tags. If you try to create more than 10 tags // for a resource, you will receive an error and the attempt will fail. // // If you specify a key that already exists for the resource, the value for // that key will be updated with the new value. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation CreateTags for usage and error information. // // Returned Error Codes: // * TagLimitExceededFault // The request exceeds the limit of 10 tags for the resource. // // * ResourceNotFoundFault // The resource could not be found. // // * InvalidTagFault // The tag is invalid. // func (c *Redshift) CreateTags(input *CreateTagsInput) (*CreateTagsOutput, error) { req, out := c.CreateTagsRequest(input) err := req.Send() return out, err } const opDeleteCluster = "DeleteCluster" // DeleteClusterRequest generates a "aws/request.Request" representing the // client's request for the DeleteCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteClusterRequest method. // req, resp := client.DeleteClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DeleteClusterRequest(input *DeleteClusterInput) (req *request.Request, output *DeleteClusterOutput) { op := &request.Operation{ Name: opDeleteCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteClusterInput{} } req = c.newRequest(op, input, output) output = &DeleteClusterOutput{} req.Data = output return } // DeleteCluster API operation for Amazon Redshift. // // Deletes a previously provisioned cluster. A successful response from the // web service indicates that the request was received correctly. Use DescribeClusters // to monitor the status of the deletion. The delete operation cannot be canceled // or reverted once submitted. For more information about managing clusters, // go to Amazon Redshift Clusters (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html) // in the Amazon Redshift Cluster Management Guide. // // If you want to shut down the cluster and retain it for future use, set SkipFinalClusterSnapshot // to false and specify a name for FinalClusterSnapshotIdentifier. You can later // restore this snapshot to resume using the cluster. If a final cluster snapshot // is requested, the status of the cluster will be "final-snapshot" while the // snapshot is being taken, then it's "deleting" once Amazon Redshift begins // deleting the cluster. // // For more information about managing clusters, go to Amazon Redshift Clusters // (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DeleteCluster for usage and error information. // // Returned Error Codes: // * ClusterNotFound // The ClusterIdentifier parameter does not refer to an existing cluster. // // * InvalidClusterState // The specified cluster is not in the available state. // // * ClusterSnapshotAlreadyExists // The value specified as a snapshot identifier is already used by an existing // snapshot. // // * ClusterSnapshotQuotaExceeded // The request would result in the user exceeding the allowed number of cluster // snapshots. // func (c *Redshift) DeleteCluster(input *DeleteClusterInput) (*DeleteClusterOutput, error) { req, out := c.DeleteClusterRequest(input) err := req.Send() return out, err } const opDeleteClusterParameterGroup = "DeleteClusterParameterGroup" // DeleteClusterParameterGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteClusterParameterGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteClusterParameterGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteClusterParameterGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteClusterParameterGroupRequest method. // req, resp := client.DeleteClusterParameterGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DeleteClusterParameterGroupRequest(input *DeleteClusterParameterGroupInput) (req *request.Request, output *DeleteClusterParameterGroupOutput) { op := &request.Operation{ Name: opDeleteClusterParameterGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteClusterParameterGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteClusterParameterGroupOutput{} req.Data = output return } // DeleteClusterParameterGroup API operation for Amazon Redshift. // // Deletes a specified Amazon Redshift parameter group. // // You cannot delete a parameter group if it is associated with a cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DeleteClusterParameterGroup for usage and error information. // // Returned Error Codes: // * InvalidClusterParameterGroupState // The cluster parameter group action can not be completed because another task // is in progress that involves the parameter group. Wait a few moments and // try the operation again. // // * ClusterParameterGroupNotFound // The parameter group name does not refer to an existing parameter group. // func (c *Redshift) DeleteClusterParameterGroup(input *DeleteClusterParameterGroupInput) (*DeleteClusterParameterGroupOutput, error) { req, out := c.DeleteClusterParameterGroupRequest(input) err := req.Send() return out, err } const opDeleteClusterSecurityGroup = "DeleteClusterSecurityGroup" // DeleteClusterSecurityGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteClusterSecurityGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteClusterSecurityGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteClusterSecurityGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteClusterSecurityGroupRequest method. // req, resp := client.DeleteClusterSecurityGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DeleteClusterSecurityGroupRequest(input *DeleteClusterSecurityGroupInput) (req *request.Request, output *DeleteClusterSecurityGroupOutput) { op := &request.Operation{ Name: opDeleteClusterSecurityGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteClusterSecurityGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteClusterSecurityGroupOutput{} req.Data = output return } // DeleteClusterSecurityGroup API operation for Amazon Redshift. // // Deletes an Amazon Redshift security group. // // You cannot delete a security group that is associated with any clusters. // You cannot delete the default security group. // // For information about managing security groups, go to Amazon Redshift Cluster // Security Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DeleteClusterSecurityGroup for usage and error information. // // Returned Error Codes: // * InvalidClusterSecurityGroupState // The state of the cluster security group is not available. // // * ClusterSecurityGroupNotFound // The cluster security group name does not refer to an existing cluster security // group. // func (c *Redshift) DeleteClusterSecurityGroup(input *DeleteClusterSecurityGroupInput) (*DeleteClusterSecurityGroupOutput, error) { req, out := c.DeleteClusterSecurityGroupRequest(input) err := req.Send() return out, err } const opDeleteClusterSnapshot = "DeleteClusterSnapshot" // DeleteClusterSnapshotRequest generates a "aws/request.Request" representing the // client's request for the DeleteClusterSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteClusterSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteClusterSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteClusterSnapshotRequest method. // req, resp := client.DeleteClusterSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DeleteClusterSnapshotRequest(input *DeleteClusterSnapshotInput) (req *request.Request, output *DeleteClusterSnapshotOutput) { op := &request.Operation{ Name: opDeleteClusterSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteClusterSnapshotInput{} } req = c.newRequest(op, input, output) output = &DeleteClusterSnapshotOutput{} req.Data = output return } // DeleteClusterSnapshot API operation for Amazon Redshift. // // Deletes the specified manual snapshot. The snapshot must be in the available // state, with no other users authorized to access the snapshot. // // Unlike automated snapshots, manual snapshots are retained even after you // delete your cluster. Amazon Redshift does not delete your manual snapshots. // You must delete manual snapshot explicitly to avoid getting charged. If other // accounts are authorized to access the snapshot, you must revoke all of the // authorizations before you can delete the snapshot. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DeleteClusterSnapshot for usage and error information. // // Returned Error Codes: // * InvalidClusterSnapshotState // The specified cluster snapshot is not in the available state, or other accounts // are authorized to access the snapshot. // // * ClusterSnapshotNotFound // The snapshot identifier does not refer to an existing cluster snapshot. // func (c *Redshift) DeleteClusterSnapshot(input *DeleteClusterSnapshotInput) (*DeleteClusterSnapshotOutput, error) { req, out := c.DeleteClusterSnapshotRequest(input) err := req.Send() return out, err } const opDeleteClusterSubnetGroup = "DeleteClusterSubnetGroup" // DeleteClusterSubnetGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteClusterSubnetGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteClusterSubnetGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteClusterSubnetGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteClusterSubnetGroupRequest method. // req, resp := client.DeleteClusterSubnetGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DeleteClusterSubnetGroupRequest(input *DeleteClusterSubnetGroupInput) (req *request.Request, output *DeleteClusterSubnetGroupOutput) { op := &request.Operation{ Name: opDeleteClusterSubnetGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteClusterSubnetGroupInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteClusterSubnetGroupOutput{} req.Data = output return } // DeleteClusterSubnetGroup API operation for Amazon Redshift. // // Deletes the specified cluster subnet group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DeleteClusterSubnetGroup for usage and error information. // // Returned Error Codes: // * InvalidClusterSubnetGroupStateFault // The cluster subnet group cannot be deleted because it is in use. // // * InvalidClusterSubnetStateFault // The state of the subnet is invalid. // // * ClusterSubnetGroupNotFoundFault // The cluster subnet group name does not refer to an existing cluster subnet // group. // func (c *Redshift) DeleteClusterSubnetGroup(input *DeleteClusterSubnetGroupInput) (*DeleteClusterSubnetGroupOutput, error) { req, out := c.DeleteClusterSubnetGroupRequest(input) err := req.Send() return out, err } const opDeleteEventSubscription = "DeleteEventSubscription" // DeleteEventSubscriptionRequest generates a "aws/request.Request" representing the // client's request for the DeleteEventSubscription operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteEventSubscription for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteEventSubscription method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteEventSubscriptionRequest method. // req, resp := client.DeleteEventSubscriptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DeleteEventSubscriptionRequest(input *DeleteEventSubscriptionInput) (req *request.Request, output *DeleteEventSubscriptionOutput) { op := &request.Operation{ Name: opDeleteEventSubscription, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteEventSubscriptionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteEventSubscriptionOutput{} req.Data = output return } // DeleteEventSubscription API operation for Amazon Redshift. // // Deletes an Amazon Redshift event notification subscription. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DeleteEventSubscription for usage and error information. // // Returned Error Codes: // * SubscriptionNotFound // An Amazon Redshift event notification subscription with the specified name // does not exist. // // * InvalidSubscriptionStateFault // The subscription request is invalid because it is a duplicate request. This // subscription request is already in progress. // func (c *Redshift) DeleteEventSubscription(input *DeleteEventSubscriptionInput) (*DeleteEventSubscriptionOutput, error) { req, out := c.DeleteEventSubscriptionRequest(input) err := req.Send() return out, err } const opDeleteHsmClientCertificate = "DeleteHsmClientCertificate" // DeleteHsmClientCertificateRequest generates a "aws/request.Request" representing the // client's request for the DeleteHsmClientCertificate operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteHsmClientCertificate for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteHsmClientCertificate method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteHsmClientCertificateRequest method. // req, resp := client.DeleteHsmClientCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DeleteHsmClientCertificateRequest(input *DeleteHsmClientCertificateInput) (req *request.Request, output *DeleteHsmClientCertificateOutput) { op := &request.Operation{ Name: opDeleteHsmClientCertificate, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteHsmClientCertificateInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteHsmClientCertificateOutput{} req.Data = output return } // DeleteHsmClientCertificate API operation for Amazon Redshift. // // Deletes the specified HSM client certificate. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DeleteHsmClientCertificate for usage and error information. // // Returned Error Codes: // * InvalidHsmClientCertificateStateFault // The specified HSM client certificate is not in the available state, or it // is still in use by one or more Amazon Redshift clusters. // // * HsmClientCertificateNotFoundFault // There is no Amazon Redshift HSM client certificate with the specified identifier. // func (c *Redshift) DeleteHsmClientCertificate(input *DeleteHsmClientCertificateInput) (*DeleteHsmClientCertificateOutput, error) { req, out := c.DeleteHsmClientCertificateRequest(input) err := req.Send() return out, err } const opDeleteHsmConfiguration = "DeleteHsmConfiguration" // DeleteHsmConfigurationRequest generates a "aws/request.Request" representing the // client's request for the DeleteHsmConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteHsmConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteHsmConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteHsmConfigurationRequest method. // req, resp := client.DeleteHsmConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DeleteHsmConfigurationRequest(input *DeleteHsmConfigurationInput) (req *request.Request, output *DeleteHsmConfigurationOutput) { op := &request.Operation{ Name: opDeleteHsmConfiguration, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteHsmConfigurationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteHsmConfigurationOutput{} req.Data = output return } // DeleteHsmConfiguration API operation for Amazon Redshift. // // Deletes the specified Amazon Redshift HSM configuration. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DeleteHsmConfiguration for usage and error information. // // Returned Error Codes: // * InvalidHsmConfigurationStateFault // The specified HSM configuration is not in the available state, or it is still // in use by one or more Amazon Redshift clusters. // // * HsmConfigurationNotFoundFault // There is no Amazon Redshift HSM configuration with the specified identifier. // func (c *Redshift) DeleteHsmConfiguration(input *DeleteHsmConfigurationInput) (*DeleteHsmConfigurationOutput, error) { req, out := c.DeleteHsmConfigurationRequest(input) err := req.Send() return out, err } const opDeleteSnapshotCopyGrant = "DeleteSnapshotCopyGrant" // DeleteSnapshotCopyGrantRequest generates a "aws/request.Request" representing the // client's request for the DeleteSnapshotCopyGrant operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteSnapshotCopyGrant for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteSnapshotCopyGrant method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteSnapshotCopyGrantRequest method. // req, resp := client.DeleteSnapshotCopyGrantRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DeleteSnapshotCopyGrantRequest(input *DeleteSnapshotCopyGrantInput) (req *request.Request, output *DeleteSnapshotCopyGrantOutput) { op := &request.Operation{ Name: opDeleteSnapshotCopyGrant, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteSnapshotCopyGrantInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteSnapshotCopyGrantOutput{} req.Data = output return } // DeleteSnapshotCopyGrant API operation for Amazon Redshift. // // Deletes the specified snapshot copy grant. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DeleteSnapshotCopyGrant for usage and error information. // // Returned Error Codes: // * InvalidSnapshotCopyGrantStateFault // The snapshot copy grant can't be deleted because it is used by one or more // clusters. // // * SnapshotCopyGrantNotFoundFault // The specified snapshot copy grant can't be found. Make sure that the name // is typed correctly and that the grant exists in the destination region. // func (c *Redshift) DeleteSnapshotCopyGrant(input *DeleteSnapshotCopyGrantInput) (*DeleteSnapshotCopyGrantOutput, error) { req, out := c.DeleteSnapshotCopyGrantRequest(input) err := req.Send() return out, err } const opDeleteTags = "DeleteTags" // DeleteTagsRequest generates a "aws/request.Request" representing the // client's request for the DeleteTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteTagsRequest method. // req, resp := client.DeleteTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DeleteTagsRequest(input *DeleteTagsInput) (req *request.Request, output *DeleteTagsOutput) { op := &request.Operation{ Name: opDeleteTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteTagsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteTagsOutput{} req.Data = output return } // DeleteTags API operation for Amazon Redshift. // // Deletes a tag or tags from a resource. You must provide the ARN of the resource // from which you want to delete the tag or tags. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DeleteTags for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The resource could not be found. // // * InvalidTagFault // The tag is invalid. // func (c *Redshift) DeleteTags(input *DeleteTagsInput) (*DeleteTagsOutput, error) { req, out := c.DeleteTagsRequest(input) err := req.Send() return out, err } const opDescribeClusterParameterGroups = "DescribeClusterParameterGroups" // DescribeClusterParameterGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeClusterParameterGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeClusterParameterGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeClusterParameterGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeClusterParameterGroupsRequest method. // req, resp := client.DescribeClusterParameterGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeClusterParameterGroupsRequest(input *DescribeClusterParameterGroupsInput) (req *request.Request, output *DescribeClusterParameterGroupsOutput) { op := &request.Operation{ Name: opDescribeClusterParameterGroups, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeClusterParameterGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeClusterParameterGroupsOutput{} req.Data = output return } // DescribeClusterParameterGroups API operation for Amazon Redshift. // // Returns a list of Amazon Redshift parameter groups, including parameter groups // you created and the default parameter group. For each parameter group, the // response includes the parameter group name, description, and parameter group // family name. You can optionally specify a name to retrieve the description // of a specific parameter group. // // For more information about parameters and parameter groups, go to Amazon // Redshift Parameter Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) // in the Amazon Redshift Cluster Management Guide. // // If you specify both tag keys and tag values in the same request, Amazon Redshift // returns all parameter groups that match any combination of the specified // keys and values. For example, if you have owner and environment for tag keys, // and admin and test for tag values, all parameter groups that have any combination // of those values are returned. // // If both tag keys and values are omitted from the request, parameter groups // are returned regardless of whether they have tag keys or values associated // with them. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeClusterParameterGroups for usage and error information. // // Returned Error Codes: // * ClusterParameterGroupNotFound // The parameter group name does not refer to an existing parameter group. // // * InvalidTagFault // The tag is invalid. // func (c *Redshift) DescribeClusterParameterGroups(input *DescribeClusterParameterGroupsInput) (*DescribeClusterParameterGroupsOutput, error) { req, out := c.DescribeClusterParameterGroupsRequest(input) err := req.Send() return out, err } // DescribeClusterParameterGroupsPages iterates over the pages of a DescribeClusterParameterGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeClusterParameterGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeClusterParameterGroups operation. // pageNum := 0 // err := client.DescribeClusterParameterGroupsPages(params, // func(page *DescribeClusterParameterGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Redshift) DescribeClusterParameterGroupsPages(input *DescribeClusterParameterGroupsInput, fn func(p *DescribeClusterParameterGroupsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeClusterParameterGroupsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeClusterParameterGroupsOutput), lastPage) }) } const opDescribeClusterParameters = "DescribeClusterParameters" // DescribeClusterParametersRequest generates a "aws/request.Request" representing the // client's request for the DescribeClusterParameters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeClusterParameters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeClusterParameters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeClusterParametersRequest method. // req, resp := client.DescribeClusterParametersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeClusterParametersRequest(input *DescribeClusterParametersInput) (req *request.Request, output *DescribeClusterParametersOutput) { op := &request.Operation{ Name: opDescribeClusterParameters, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeClusterParametersInput{} } req = c.newRequest(op, input, output) output = &DescribeClusterParametersOutput{} req.Data = output return } // DescribeClusterParameters API operation for Amazon Redshift. // // Returns a detailed list of parameters contained within the specified Amazon // Redshift parameter group. For each parameter the response includes information // such as parameter name, description, data type, value, whether the parameter // value is modifiable, and so on. // // You can specify source filter to retrieve parameters of only specific type. // For example, to retrieve parameters that were modified by a user action such // as from ModifyClusterParameterGroup, you can specify source equal to user. // // For more information about parameters and parameter groups, go to Amazon // Redshift Parameter Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeClusterParameters for usage and error information. // // Returned Error Codes: // * ClusterParameterGroupNotFound // The parameter group name does not refer to an existing parameter group. // func (c *Redshift) DescribeClusterParameters(input *DescribeClusterParametersInput) (*DescribeClusterParametersOutput, error) { req, out := c.DescribeClusterParametersRequest(input) err := req.Send() return out, err } // DescribeClusterParametersPages iterates over the pages of a DescribeClusterParameters operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeClusterParameters method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeClusterParameters operation. // pageNum := 0 // err := client.DescribeClusterParametersPages(params, // func(page *DescribeClusterParametersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Redshift) DescribeClusterParametersPages(input *DescribeClusterParametersInput, fn func(p *DescribeClusterParametersOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeClusterParametersRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeClusterParametersOutput), lastPage) }) } const opDescribeClusterSecurityGroups = "DescribeClusterSecurityGroups" // DescribeClusterSecurityGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeClusterSecurityGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeClusterSecurityGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeClusterSecurityGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeClusterSecurityGroupsRequest method. // req, resp := client.DescribeClusterSecurityGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeClusterSecurityGroupsRequest(input *DescribeClusterSecurityGroupsInput) (req *request.Request, output *DescribeClusterSecurityGroupsOutput) { op := &request.Operation{ Name: opDescribeClusterSecurityGroups, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeClusterSecurityGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeClusterSecurityGroupsOutput{} req.Data = output return } // DescribeClusterSecurityGroups API operation for Amazon Redshift. // // Returns information about Amazon Redshift security groups. If the name of // a security group is specified, the response will contain only information // about only that security group. // // For information about managing security groups, go to Amazon Redshift Cluster // Security Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html) // in the Amazon Redshift Cluster Management Guide. // // If you specify both tag keys and tag values in the same request, Amazon Redshift // returns all security groups that match any combination of the specified keys // and values. For example, if you have owner and environment for tag keys, // and admin and test for tag values, all security groups that have any combination // of those values are returned. // // If both tag keys and values are omitted from the request, security groups // are returned regardless of whether they have tag keys or values associated // with them. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeClusterSecurityGroups for usage and error information. // // Returned Error Codes: // * ClusterSecurityGroupNotFound // The cluster security group name does not refer to an existing cluster security // group. // // * InvalidTagFault // The tag is invalid. // func (c *Redshift) DescribeClusterSecurityGroups(input *DescribeClusterSecurityGroupsInput) (*DescribeClusterSecurityGroupsOutput, error) { req, out := c.DescribeClusterSecurityGroupsRequest(input) err := req.Send() return out, err } // DescribeClusterSecurityGroupsPages iterates over the pages of a DescribeClusterSecurityGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeClusterSecurityGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeClusterSecurityGroups operation. // pageNum := 0 // err := client.DescribeClusterSecurityGroupsPages(params, // func(page *DescribeClusterSecurityGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Redshift) DescribeClusterSecurityGroupsPages(input *DescribeClusterSecurityGroupsInput, fn func(p *DescribeClusterSecurityGroupsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeClusterSecurityGroupsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeClusterSecurityGroupsOutput), lastPage) }) } const opDescribeClusterSnapshots = "DescribeClusterSnapshots" // DescribeClusterSnapshotsRequest generates a "aws/request.Request" representing the // client's request for the DescribeClusterSnapshots operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeClusterSnapshots for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeClusterSnapshots method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeClusterSnapshotsRequest method. // req, resp := client.DescribeClusterSnapshotsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeClusterSnapshotsRequest(input *DescribeClusterSnapshotsInput) (req *request.Request, output *DescribeClusterSnapshotsOutput) { op := &request.Operation{ Name: opDescribeClusterSnapshots, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeClusterSnapshotsInput{} } req = c.newRequest(op, input, output) output = &DescribeClusterSnapshotsOutput{} req.Data = output return } // DescribeClusterSnapshots API operation for Amazon Redshift. // // Returns one or more snapshot objects, which contain metadata about your cluster // snapshots. By default, this operation returns information about all snapshots // of all clusters that are owned by you AWS customer account. No information // is returned for snapshots owned by inactive AWS customer accounts. // // If you specify both tag keys and tag values in the same request, Amazon Redshift // returns all snapshots that match any combination of the specified keys and // values. For example, if you have owner and environment for tag keys, and // admin and test for tag values, all snapshots that have any combination of // those values are returned. Only snapshots that you own are returned in the // response; shared snapshots are not returned with the tag key and tag value // request parameters. // // If both tag keys and values are omitted from the request, snapshots are returned // regardless of whether they have tag keys or values associated with them. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeClusterSnapshots for usage and error information. // // Returned Error Codes: // * ClusterSnapshotNotFound // The snapshot identifier does not refer to an existing cluster snapshot. // // * InvalidTagFault // The tag is invalid. // func (c *Redshift) DescribeClusterSnapshots(input *DescribeClusterSnapshotsInput) (*DescribeClusterSnapshotsOutput, error) { req, out := c.DescribeClusterSnapshotsRequest(input) err := req.Send() return out, err } // DescribeClusterSnapshotsPages iterates over the pages of a DescribeClusterSnapshots operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeClusterSnapshots method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeClusterSnapshots operation. // pageNum := 0 // err := client.DescribeClusterSnapshotsPages(params, // func(page *DescribeClusterSnapshotsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Redshift) DescribeClusterSnapshotsPages(input *DescribeClusterSnapshotsInput, fn func(p *DescribeClusterSnapshotsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeClusterSnapshotsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeClusterSnapshotsOutput), lastPage) }) } const opDescribeClusterSubnetGroups = "DescribeClusterSubnetGroups" // DescribeClusterSubnetGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeClusterSubnetGroups operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeClusterSubnetGroups for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeClusterSubnetGroups method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeClusterSubnetGroupsRequest method. // req, resp := client.DescribeClusterSubnetGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeClusterSubnetGroupsRequest(input *DescribeClusterSubnetGroupsInput) (req *request.Request, output *DescribeClusterSubnetGroupsOutput) { op := &request.Operation{ Name: opDescribeClusterSubnetGroups, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeClusterSubnetGroupsInput{} } req = c.newRequest(op, input, output) output = &DescribeClusterSubnetGroupsOutput{} req.Data = output return } // DescribeClusterSubnetGroups API operation for Amazon Redshift. // // Returns one or more cluster subnet group objects, which contain metadata // about your cluster subnet groups. By default, this operation returns information // about all cluster subnet groups that are defined in you AWS account. // // If you specify both tag keys and tag values in the same request, Amazon Redshift // returns all subnet groups that match any combination of the specified keys // and values. For example, if you have owner and environment for tag keys, // and admin and test for tag values, all subnet groups that have any combination // of those values are returned. // // If both tag keys and values are omitted from the request, subnet groups are // returned regardless of whether they have tag keys or values associated with // them. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeClusterSubnetGroups for usage and error information. // // Returned Error Codes: // * ClusterSubnetGroupNotFoundFault // The cluster subnet group name does not refer to an existing cluster subnet // group. // // * InvalidTagFault // The tag is invalid. // func (c *Redshift) DescribeClusterSubnetGroups(input *DescribeClusterSubnetGroupsInput) (*DescribeClusterSubnetGroupsOutput, error) { req, out := c.DescribeClusterSubnetGroupsRequest(input) err := req.Send() return out, err } // DescribeClusterSubnetGroupsPages iterates over the pages of a DescribeClusterSubnetGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeClusterSubnetGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeClusterSubnetGroups operation. // pageNum := 0 // err := client.DescribeClusterSubnetGroupsPages(params, // func(page *DescribeClusterSubnetGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Redshift) DescribeClusterSubnetGroupsPages(input *DescribeClusterSubnetGroupsInput, fn func(p *DescribeClusterSubnetGroupsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeClusterSubnetGroupsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeClusterSubnetGroupsOutput), lastPage) }) } const opDescribeClusterVersions = "DescribeClusterVersions" // DescribeClusterVersionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeClusterVersions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeClusterVersions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeClusterVersions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeClusterVersionsRequest method. // req, resp := client.DescribeClusterVersionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeClusterVersionsRequest(input *DescribeClusterVersionsInput) (req *request.Request, output *DescribeClusterVersionsOutput) { op := &request.Operation{ Name: opDescribeClusterVersions, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeClusterVersionsInput{} } req = c.newRequest(op, input, output) output = &DescribeClusterVersionsOutput{} req.Data = output return } // DescribeClusterVersions API operation for Amazon Redshift. // // Returns descriptions of the available Amazon Redshift cluster versions. You // can call this operation even before creating any clusters to learn more about // the Amazon Redshift versions. For more information about managing clusters, // go to Amazon Redshift Clusters (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeClusterVersions for usage and error information. func (c *Redshift) DescribeClusterVersions(input *DescribeClusterVersionsInput) (*DescribeClusterVersionsOutput, error) { req, out := c.DescribeClusterVersionsRequest(input) err := req.Send() return out, err } // DescribeClusterVersionsPages iterates over the pages of a DescribeClusterVersions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeClusterVersions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeClusterVersions operation. // pageNum := 0 // err := client.DescribeClusterVersionsPages(params, // func(page *DescribeClusterVersionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Redshift) DescribeClusterVersionsPages(input *DescribeClusterVersionsInput, fn func(p *DescribeClusterVersionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeClusterVersionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeClusterVersionsOutput), lastPage) }) } const opDescribeClusters = "DescribeClusters" // DescribeClustersRequest generates a "aws/request.Request" representing the // client's request for the DescribeClusters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeClusters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeClusters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeClustersRequest method. // req, resp := client.DescribeClustersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeClustersRequest(input *DescribeClustersInput) (req *request.Request, output *DescribeClustersOutput) { op := &request.Operation{ Name: opDescribeClusters, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeClustersInput{} } req = c.newRequest(op, input, output) output = &DescribeClustersOutput{} req.Data = output return } // DescribeClusters API operation for Amazon Redshift. // // Returns properties of provisioned clusters including general cluster properties, // cluster database properties, maintenance and backup properties, and security // and access properties. This operation supports pagination. For more information // about managing clusters, go to Amazon Redshift Clusters (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html) // in the Amazon Redshift Cluster Management Guide. // // If you specify both tag keys and tag values in the same request, Amazon Redshift // returns all clusters that match any combination of the specified keys and // values. For example, if you have owner and environment for tag keys, and // admin and test for tag values, all clusters that have any combination of // those values are returned. // // If both tag keys and values are omitted from the request, clusters are returned // regardless of whether they have tag keys or values associated with them. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeClusters for usage and error information. // // Returned Error Codes: // * ClusterNotFound // The ClusterIdentifier parameter does not refer to an existing cluster. // // * InvalidTagFault // The tag is invalid. // func (c *Redshift) DescribeClusters(input *DescribeClustersInput) (*DescribeClustersOutput, error) { req, out := c.DescribeClustersRequest(input) err := req.Send() return out, err } // DescribeClustersPages iterates over the pages of a DescribeClusters operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeClusters method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeClusters operation. // pageNum := 0 // err := client.DescribeClustersPages(params, // func(page *DescribeClustersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Redshift) DescribeClustersPages(input *DescribeClustersInput, fn func(p *DescribeClustersOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeClustersRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeClustersOutput), lastPage) }) } const opDescribeDefaultClusterParameters = "DescribeDefaultClusterParameters" // DescribeDefaultClusterParametersRequest generates a "aws/request.Request" representing the // client's request for the DescribeDefaultClusterParameters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDefaultClusterParameters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDefaultClusterParameters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDefaultClusterParametersRequest method. // req, resp := client.DescribeDefaultClusterParametersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeDefaultClusterParametersRequest(input *DescribeDefaultClusterParametersInput) (req *request.Request, output *DescribeDefaultClusterParametersOutput) { op := &request.Operation{ Name: opDescribeDefaultClusterParameters, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"DefaultClusterParameters.Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeDefaultClusterParametersInput{} } req = c.newRequest(op, input, output) output = &DescribeDefaultClusterParametersOutput{} req.Data = output return } // DescribeDefaultClusterParameters API operation for Amazon Redshift. // // Returns a list of parameter settings for the specified parameter group family. // // For more information about parameters and parameter groups, go to Amazon // Redshift Parameter Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeDefaultClusterParameters for usage and error information. func (c *Redshift) DescribeDefaultClusterParameters(input *DescribeDefaultClusterParametersInput) (*DescribeDefaultClusterParametersOutput, error) { req, out := c.DescribeDefaultClusterParametersRequest(input) err := req.Send() return out, err } // DescribeDefaultClusterParametersPages iterates over the pages of a DescribeDefaultClusterParameters operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeDefaultClusterParameters method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeDefaultClusterParameters operation. // pageNum := 0 // err := client.DescribeDefaultClusterParametersPages(params, // func(page *DescribeDefaultClusterParametersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Redshift) DescribeDefaultClusterParametersPages(input *DescribeDefaultClusterParametersInput, fn func(p *DescribeDefaultClusterParametersOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeDefaultClusterParametersRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeDefaultClusterParametersOutput), lastPage) }) } const opDescribeEventCategories = "DescribeEventCategories" // DescribeEventCategoriesRequest generates a "aws/request.Request" representing the // client's request for the DescribeEventCategories operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEventCategories for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEventCategories method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEventCategoriesRequest method. // req, resp := client.DescribeEventCategoriesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeEventCategoriesRequest(input *DescribeEventCategoriesInput) (req *request.Request, output *DescribeEventCategoriesOutput) { op := &request.Operation{ Name: opDescribeEventCategories, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeEventCategoriesInput{} } req = c.newRequest(op, input, output) output = &DescribeEventCategoriesOutput{} req.Data = output return } // DescribeEventCategories API operation for Amazon Redshift. // // Displays a list of event categories for all event source types, or for a // specified source type. For a list of the event categories and source types, // go to Amazon Redshift Event Notifications (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-event-notifications.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeEventCategories for usage and error information. func (c *Redshift) DescribeEventCategories(input *DescribeEventCategoriesInput) (*DescribeEventCategoriesOutput, error) { req, out := c.DescribeEventCategoriesRequest(input) err := req.Send() return out, err } const opDescribeEventSubscriptions = "DescribeEventSubscriptions" // DescribeEventSubscriptionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeEventSubscriptions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEventSubscriptions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEventSubscriptions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEventSubscriptionsRequest method. // req, resp := client.DescribeEventSubscriptionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeEventSubscriptionsRequest(input *DescribeEventSubscriptionsInput) (req *request.Request, output *DescribeEventSubscriptionsOutput) { op := &request.Operation{ Name: opDescribeEventSubscriptions, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeEventSubscriptionsInput{} } req = c.newRequest(op, input, output) output = &DescribeEventSubscriptionsOutput{} req.Data = output return } // DescribeEventSubscriptions API operation for Amazon Redshift. // // Lists descriptions of all the Amazon Redshift event notifications subscription // for a customer account. If you specify a subscription name, lists the description // for that subscription. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeEventSubscriptions for usage and error information. // // Returned Error Codes: // * SubscriptionNotFound // An Amazon Redshift event notification subscription with the specified name // does not exist. // func (c *Redshift) DescribeEventSubscriptions(input *DescribeEventSubscriptionsInput) (*DescribeEventSubscriptionsOutput, error) { req, out := c.DescribeEventSubscriptionsRequest(input) err := req.Send() return out, err } // DescribeEventSubscriptionsPages iterates over the pages of a DescribeEventSubscriptions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeEventSubscriptions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeEventSubscriptions operation. // pageNum := 0 // err := client.DescribeEventSubscriptionsPages(params, // func(page *DescribeEventSubscriptionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Redshift) DescribeEventSubscriptionsPages(input *DescribeEventSubscriptionsInput, fn func(p *DescribeEventSubscriptionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeEventSubscriptionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeEventSubscriptionsOutput), lastPage) }) } const opDescribeEvents = "DescribeEvents" // DescribeEventsRequest generates a "aws/request.Request" representing the // client's request for the DescribeEvents operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeEvents for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeEvents method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeEventsRequest method. // req, resp := client.DescribeEventsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeEventsRequest(input *DescribeEventsInput) (req *request.Request, output *DescribeEventsOutput) { op := &request.Operation{ Name: opDescribeEvents, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeEventsInput{} } req = c.newRequest(op, input, output) output = &DescribeEventsOutput{} req.Data = output return } // DescribeEvents API operation for Amazon Redshift. // // Returns events related to clusters, security groups, snapshots, and parameter // groups for the past 14 days. Events specific to a particular cluster, security // group, snapshot or parameter group can be obtained by providing the name // as a parameter. By default, the past hour of events are returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeEvents for usage and error information. func (c *Redshift) DescribeEvents(input *DescribeEventsInput) (*DescribeEventsOutput, error) { req, out := c.DescribeEventsRequest(input) err := req.Send() return out, err } // DescribeEventsPages iterates over the pages of a DescribeEvents operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeEvents method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeEvents operation. // pageNum := 0 // err := client.DescribeEventsPages(params, // func(page *DescribeEventsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Redshift) DescribeEventsPages(input *DescribeEventsInput, fn func(p *DescribeEventsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeEventsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeEventsOutput), lastPage) }) } const opDescribeHsmClientCertificates = "DescribeHsmClientCertificates" // DescribeHsmClientCertificatesRequest generates a "aws/request.Request" representing the // client's request for the DescribeHsmClientCertificates operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeHsmClientCertificates for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeHsmClientCertificates method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeHsmClientCertificatesRequest method. // req, resp := client.DescribeHsmClientCertificatesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeHsmClientCertificatesRequest(input *DescribeHsmClientCertificatesInput) (req *request.Request, output *DescribeHsmClientCertificatesOutput) { op := &request.Operation{ Name: opDescribeHsmClientCertificates, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeHsmClientCertificatesInput{} } req = c.newRequest(op, input, output) output = &DescribeHsmClientCertificatesOutput{} req.Data = output return } // DescribeHsmClientCertificates API operation for Amazon Redshift. // // Returns information about the specified HSM client certificate. If no certificate // ID is specified, returns information about all the HSM certificates owned // by your AWS customer account. // // If you specify both tag keys and tag values in the same request, Amazon Redshift // returns all HSM client certificates that match any combination of the specified // keys and values. For example, if you have owner and environment for tag keys, // and admin and test for tag values, all HSM client certificates that have // any combination of those values are returned. // // If both tag keys and values are omitted from the request, HSM client certificates // are returned regardless of whether they have tag keys or values associated // with them. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeHsmClientCertificates for usage and error information. // // Returned Error Codes: // * HsmClientCertificateNotFoundFault // There is no Amazon Redshift HSM client certificate with the specified identifier. // // * InvalidTagFault // The tag is invalid. // func (c *Redshift) DescribeHsmClientCertificates(input *DescribeHsmClientCertificatesInput) (*DescribeHsmClientCertificatesOutput, error) { req, out := c.DescribeHsmClientCertificatesRequest(input) err := req.Send() return out, err } // DescribeHsmClientCertificatesPages iterates over the pages of a DescribeHsmClientCertificates operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeHsmClientCertificates method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeHsmClientCertificates operation. // pageNum := 0 // err := client.DescribeHsmClientCertificatesPages(params, // func(page *DescribeHsmClientCertificatesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Redshift) DescribeHsmClientCertificatesPages(input *DescribeHsmClientCertificatesInput, fn func(p *DescribeHsmClientCertificatesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeHsmClientCertificatesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeHsmClientCertificatesOutput), lastPage) }) } const opDescribeHsmConfigurations = "DescribeHsmConfigurations" // DescribeHsmConfigurationsRequest generates a "aws/request.Request" representing the // client's request for the DescribeHsmConfigurations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeHsmConfigurations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeHsmConfigurations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeHsmConfigurationsRequest method. // req, resp := client.DescribeHsmConfigurationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeHsmConfigurationsRequest(input *DescribeHsmConfigurationsInput) (req *request.Request, output *DescribeHsmConfigurationsOutput) { op := &request.Operation{ Name: opDescribeHsmConfigurations, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeHsmConfigurationsInput{} } req = c.newRequest(op, input, output) output = &DescribeHsmConfigurationsOutput{} req.Data = output return } // DescribeHsmConfigurations API operation for Amazon Redshift. // // Returns information about the specified Amazon Redshift HSM configuration. // If no configuration ID is specified, returns information about all the HSM // configurations owned by your AWS customer account. // // If you specify both tag keys and tag values in the same request, Amazon Redshift // returns all HSM connections that match any combination of the specified keys // and values. For example, if you have owner and environment for tag keys, // and admin and test for tag values, all HSM connections that have any combination // of those values are returned. // // If both tag keys and values are omitted from the request, HSM connections // are returned regardless of whether they have tag keys or values associated // with them. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeHsmConfigurations for usage and error information. // // Returned Error Codes: // * HsmConfigurationNotFoundFault // There is no Amazon Redshift HSM configuration with the specified identifier. // // * InvalidTagFault // The tag is invalid. // func (c *Redshift) DescribeHsmConfigurations(input *DescribeHsmConfigurationsInput) (*DescribeHsmConfigurationsOutput, error) { req, out := c.DescribeHsmConfigurationsRequest(input) err := req.Send() return out, err } // DescribeHsmConfigurationsPages iterates over the pages of a DescribeHsmConfigurations operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeHsmConfigurations method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeHsmConfigurations operation. // pageNum := 0 // err := client.DescribeHsmConfigurationsPages(params, // func(page *DescribeHsmConfigurationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Redshift) DescribeHsmConfigurationsPages(input *DescribeHsmConfigurationsInput, fn func(p *DescribeHsmConfigurationsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeHsmConfigurationsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeHsmConfigurationsOutput), lastPage) }) } const opDescribeLoggingStatus = "DescribeLoggingStatus" // DescribeLoggingStatusRequest generates a "aws/request.Request" representing the // client's request for the DescribeLoggingStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeLoggingStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeLoggingStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeLoggingStatusRequest method. // req, resp := client.DescribeLoggingStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeLoggingStatusRequest(input *DescribeLoggingStatusInput) (req *request.Request, output *LoggingStatus) { op := &request.Operation{ Name: opDescribeLoggingStatus, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeLoggingStatusInput{} } req = c.newRequest(op, input, output) output = &LoggingStatus{} req.Data = output return } // DescribeLoggingStatus API operation for Amazon Redshift. // // Describes whether information, such as queries and connection attempts, is // being logged for the specified Amazon Redshift cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeLoggingStatus for usage and error information. // // Returned Error Codes: // * ClusterNotFound // The ClusterIdentifier parameter does not refer to an existing cluster. // func (c *Redshift) DescribeLoggingStatus(input *DescribeLoggingStatusInput) (*LoggingStatus, error) { req, out := c.DescribeLoggingStatusRequest(input) err := req.Send() return out, err } const opDescribeOrderableClusterOptions = "DescribeOrderableClusterOptions" // DescribeOrderableClusterOptionsRequest generates a "aws/request.Request" representing the // client's request for the DescribeOrderableClusterOptions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeOrderableClusterOptions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeOrderableClusterOptions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeOrderableClusterOptionsRequest method. // req, resp := client.DescribeOrderableClusterOptionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeOrderableClusterOptionsRequest(input *DescribeOrderableClusterOptionsInput) (req *request.Request, output *DescribeOrderableClusterOptionsOutput) { op := &request.Operation{ Name: opDescribeOrderableClusterOptions, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeOrderableClusterOptionsInput{} } req = c.newRequest(op, input, output) output = &DescribeOrderableClusterOptionsOutput{} req.Data = output return } // DescribeOrderableClusterOptions API operation for Amazon Redshift. // // Returns a list of orderable cluster options. Before you create a new cluster // you can use this operation to find what options are available, such as the // EC2 Availability Zones (AZ) in the specific AWS region that you can specify, // and the node types you can request. The node types differ by available storage, // memory, CPU and price. With the cost involved you might want to obtain a // list of cluster options in the specific region and specify values when creating // a cluster. For more information about managing clusters, go to Amazon Redshift // Clusters (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeOrderableClusterOptions for usage and error information. func (c *Redshift) DescribeOrderableClusterOptions(input *DescribeOrderableClusterOptionsInput) (*DescribeOrderableClusterOptionsOutput, error) { req, out := c.DescribeOrderableClusterOptionsRequest(input) err := req.Send() return out, err } // DescribeOrderableClusterOptionsPages iterates over the pages of a DescribeOrderableClusterOptions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeOrderableClusterOptions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeOrderableClusterOptions operation. // pageNum := 0 // err := client.DescribeOrderableClusterOptionsPages(params, // func(page *DescribeOrderableClusterOptionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Redshift) DescribeOrderableClusterOptionsPages(input *DescribeOrderableClusterOptionsInput, fn func(p *DescribeOrderableClusterOptionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeOrderableClusterOptionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeOrderableClusterOptionsOutput), lastPage) }) } const opDescribeReservedNodeOfferings = "DescribeReservedNodeOfferings" // DescribeReservedNodeOfferingsRequest generates a "aws/request.Request" representing the // client's request for the DescribeReservedNodeOfferings operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeReservedNodeOfferings for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeReservedNodeOfferings method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeReservedNodeOfferingsRequest method. // req, resp := client.DescribeReservedNodeOfferingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeReservedNodeOfferingsRequest(input *DescribeReservedNodeOfferingsInput) (req *request.Request, output *DescribeReservedNodeOfferingsOutput) { op := &request.Operation{ Name: opDescribeReservedNodeOfferings, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeReservedNodeOfferingsInput{} } req = c.newRequest(op, input, output) output = &DescribeReservedNodeOfferingsOutput{} req.Data = output return } // DescribeReservedNodeOfferings API operation for Amazon Redshift. // // Returns a list of the available reserved node offerings by Amazon Redshift // with their descriptions including the node type, the fixed and recurring // costs of reserving the node and duration the node will be reserved for you. // These descriptions help you determine which reserve node offering you want // to purchase. You then use the unique offering ID in you call to PurchaseReservedNodeOffering // to reserve one or more nodes for your Amazon Redshift cluster. // // For more information about reserved node offerings, go to Purchasing Reserved // Nodes (http://docs.aws.amazon.com/redshift/latest/mgmt/purchase-reserved-node-instance.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeReservedNodeOfferings for usage and error information. // // Returned Error Codes: // * ReservedNodeOfferingNotFound // Specified offering does not exist. // // * UnsupportedOperation // The requested operation isn't supported. // func (c *Redshift) DescribeReservedNodeOfferings(input *DescribeReservedNodeOfferingsInput) (*DescribeReservedNodeOfferingsOutput, error) { req, out := c.DescribeReservedNodeOfferingsRequest(input) err := req.Send() return out, err } // DescribeReservedNodeOfferingsPages iterates over the pages of a DescribeReservedNodeOfferings operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeReservedNodeOfferings method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeReservedNodeOfferings operation. // pageNum := 0 // err := client.DescribeReservedNodeOfferingsPages(params, // func(page *DescribeReservedNodeOfferingsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Redshift) DescribeReservedNodeOfferingsPages(input *DescribeReservedNodeOfferingsInput, fn func(p *DescribeReservedNodeOfferingsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeReservedNodeOfferingsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeReservedNodeOfferingsOutput), lastPage) }) } const opDescribeReservedNodes = "DescribeReservedNodes" // DescribeReservedNodesRequest generates a "aws/request.Request" representing the // client's request for the DescribeReservedNodes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeReservedNodes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeReservedNodes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeReservedNodesRequest method. // req, resp := client.DescribeReservedNodesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeReservedNodesRequest(input *DescribeReservedNodesInput) (req *request.Request, output *DescribeReservedNodesOutput) { op := &request.Operation{ Name: opDescribeReservedNodes, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "MaxRecords", TruncationToken: "", }, } if input == nil { input = &DescribeReservedNodesInput{} } req = c.newRequest(op, input, output) output = &DescribeReservedNodesOutput{} req.Data = output return } // DescribeReservedNodes API operation for Amazon Redshift. // // Returns the descriptions of the reserved nodes. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeReservedNodes for usage and error information. // // Returned Error Codes: // * ReservedNodeNotFound // The specified reserved compute node not found. // func (c *Redshift) DescribeReservedNodes(input *DescribeReservedNodesInput) (*DescribeReservedNodesOutput, error) { req, out := c.DescribeReservedNodesRequest(input) err := req.Send() return out, err } // DescribeReservedNodesPages iterates over the pages of a DescribeReservedNodes operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeReservedNodes method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeReservedNodes operation. // pageNum := 0 // err := client.DescribeReservedNodesPages(params, // func(page *DescribeReservedNodesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Redshift) DescribeReservedNodesPages(input *DescribeReservedNodesInput, fn func(p *DescribeReservedNodesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeReservedNodesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeReservedNodesOutput), lastPage) }) } const opDescribeResize = "DescribeResize" // DescribeResizeRequest generates a "aws/request.Request" representing the // client's request for the DescribeResize operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeResize for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeResize method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeResizeRequest method. // req, resp := client.DescribeResizeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeResizeRequest(input *DescribeResizeInput) (req *request.Request, output *DescribeResizeOutput) { op := &request.Operation{ Name: opDescribeResize, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeResizeInput{} } req = c.newRequest(op, input, output) output = &DescribeResizeOutput{} req.Data = output return } // DescribeResize API operation for Amazon Redshift. // // Returns information about the last resize operation for the specified cluster. // If no resize operation has ever been initiated for the specified cluster, // a HTTP 404 error is returned. If a resize operation was initiated and completed, // the status of the resize remains as SUCCEEDED until the next resize. // // A resize operation can be requested using ModifyCluster and specifying a // different number or type of nodes for the cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeResize for usage and error information. // // Returned Error Codes: // * ClusterNotFound // The ClusterIdentifier parameter does not refer to an existing cluster. // // * ResizeNotFound // A resize operation for the specified cluster is not found. // func (c *Redshift) DescribeResize(input *DescribeResizeInput) (*DescribeResizeOutput, error) { req, out := c.DescribeResizeRequest(input) err := req.Send() return out, err } const opDescribeSnapshotCopyGrants = "DescribeSnapshotCopyGrants" // DescribeSnapshotCopyGrantsRequest generates a "aws/request.Request" representing the // client's request for the DescribeSnapshotCopyGrants operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSnapshotCopyGrants for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSnapshotCopyGrants method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSnapshotCopyGrantsRequest method. // req, resp := client.DescribeSnapshotCopyGrantsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeSnapshotCopyGrantsRequest(input *DescribeSnapshotCopyGrantsInput) (req *request.Request, output *DescribeSnapshotCopyGrantsOutput) { op := &request.Operation{ Name: opDescribeSnapshotCopyGrants, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSnapshotCopyGrantsInput{} } req = c.newRequest(op, input, output) output = &DescribeSnapshotCopyGrantsOutput{} req.Data = output return } // DescribeSnapshotCopyGrants API operation for Amazon Redshift. // // Returns a list of snapshot copy grants owned by the AWS account in the destination // region. // // For more information about managing snapshot copy grants, go to Amazon Redshift // Database Encryption (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-db-encryption.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeSnapshotCopyGrants for usage and error information. // // Returned Error Codes: // * SnapshotCopyGrantNotFoundFault // The specified snapshot copy grant can't be found. Make sure that the name // is typed correctly and that the grant exists in the destination region. // // * InvalidTagFault // The tag is invalid. // func (c *Redshift) DescribeSnapshotCopyGrants(input *DescribeSnapshotCopyGrantsInput) (*DescribeSnapshotCopyGrantsOutput, error) { req, out := c.DescribeSnapshotCopyGrantsRequest(input) err := req.Send() return out, err } const opDescribeTableRestoreStatus = "DescribeTableRestoreStatus" // DescribeTableRestoreStatusRequest generates a "aws/request.Request" representing the // client's request for the DescribeTableRestoreStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTableRestoreStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTableRestoreStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTableRestoreStatusRequest method. // req, resp := client.DescribeTableRestoreStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeTableRestoreStatusRequest(input *DescribeTableRestoreStatusInput) (req *request.Request, output *DescribeTableRestoreStatusOutput) { op := &request.Operation{ Name: opDescribeTableRestoreStatus, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTableRestoreStatusInput{} } req = c.newRequest(op, input, output) output = &DescribeTableRestoreStatusOutput{} req.Data = output return } // DescribeTableRestoreStatus API operation for Amazon Redshift. // // Lists the status of one or more table restore requests made using the RestoreTableFromClusterSnapshot // API action. If you don't specify a value for the TableRestoreRequestId parameter, // then DescribeTableRestoreStatus returns the status of all table restore requests // ordered by the date and time of the request in ascending order. Otherwise // DescribeTableRestoreStatus returns the status of the table specified by TableRestoreRequestId. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeTableRestoreStatus for usage and error information. // // Returned Error Codes: // * TableRestoreNotFoundFault // The specified TableRestoreRequestId value was not found. // // * ClusterNotFound // The ClusterIdentifier parameter does not refer to an existing cluster. // func (c *Redshift) DescribeTableRestoreStatus(input *DescribeTableRestoreStatusInput) (*DescribeTableRestoreStatusOutput, error) { req, out := c.DescribeTableRestoreStatusRequest(input) err := req.Send() return out, err } const opDescribeTags = "DescribeTags" // DescribeTagsRequest generates a "aws/request.Request" representing the // client's request for the DescribeTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTagsRequest method. // req, resp := client.DescribeTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DescribeTagsRequest(input *DescribeTagsInput) (req *request.Request, output *DescribeTagsOutput) { op := &request.Operation{ Name: opDescribeTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTagsInput{} } req = c.newRequest(op, input, output) output = &DescribeTagsOutput{} req.Data = output return } // DescribeTags API operation for Amazon Redshift. // // Returns a list of tags. You can return tags from a specific resource by specifying // an ARN, or you can return all tags for a given type of resource, such as // clusters, snapshots, and so on. // // The following are limitations for DescribeTags: // // * You cannot specify an ARN and a resource-type value together in the // same request. // // * You cannot use the MaxRecords and Marker parameters together with the // ARN parameter. // // * The MaxRecords parameter can be a range from 10 to 50 results to return // in a request. // // If you specify both tag keys and tag values in the same request, Amazon Redshift // returns all resources that match any combination of the specified keys and // values. For example, if you have owner and environment for tag keys, and // admin and test for tag values, all resources that have any combination of // those values are returned. // // If both tag keys and values are omitted from the request, resources are returned // regardless of whether they have tag keys or values associated with them. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DescribeTags for usage and error information. // // Returned Error Codes: // * ResourceNotFoundFault // The resource could not be found. // // * InvalidTagFault // The tag is invalid. // func (c *Redshift) DescribeTags(input *DescribeTagsInput) (*DescribeTagsOutput, error) { req, out := c.DescribeTagsRequest(input) err := req.Send() return out, err } const opDisableLogging = "DisableLogging" // DisableLoggingRequest generates a "aws/request.Request" representing the // client's request for the DisableLogging operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableLogging for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableLogging method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableLoggingRequest method. // req, resp := client.DisableLoggingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DisableLoggingRequest(input *DisableLoggingInput) (req *request.Request, output *LoggingStatus) { op := &request.Operation{ Name: opDisableLogging, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableLoggingInput{} } req = c.newRequest(op, input, output) output = &LoggingStatus{} req.Data = output return } // DisableLogging API operation for Amazon Redshift. // // Stops logging information, such as queries and connection attempts, for the // specified Amazon Redshift cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DisableLogging for usage and error information. // // Returned Error Codes: // * ClusterNotFound // The ClusterIdentifier parameter does not refer to an existing cluster. // func (c *Redshift) DisableLogging(input *DisableLoggingInput) (*LoggingStatus, error) { req, out := c.DisableLoggingRequest(input) err := req.Send() return out, err } const opDisableSnapshotCopy = "DisableSnapshotCopy" // DisableSnapshotCopyRequest generates a "aws/request.Request" representing the // client's request for the DisableSnapshotCopy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableSnapshotCopy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableSnapshotCopy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableSnapshotCopyRequest method. // req, resp := client.DisableSnapshotCopyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) DisableSnapshotCopyRequest(input *DisableSnapshotCopyInput) (req *request.Request, output *DisableSnapshotCopyOutput) { op := &request.Operation{ Name: opDisableSnapshotCopy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableSnapshotCopyInput{} } req = c.newRequest(op, input, output) output = &DisableSnapshotCopyOutput{} req.Data = output return } // DisableSnapshotCopy API operation for Amazon Redshift. // // Disables the automatic copying of snapshots from one region to another region // for a specified cluster. // // If your cluster and its snapshots are encrypted using a customer master key // (CMK) from AWS KMS, use DeleteSnapshotCopyGrant to delete the grant that // grants Amazon Redshift permission to the CMK in the destination region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation DisableSnapshotCopy for usage and error information. // // Returned Error Codes: // * ClusterNotFound // The ClusterIdentifier parameter does not refer to an existing cluster. // // * SnapshotCopyAlreadyDisabledFault // The cluster already has cross-region snapshot copy disabled. // // * InvalidClusterState // The specified cluster is not in the available state. // // * UnauthorizedOperation // Your account is not authorized to perform the requested operation. // func (c *Redshift) DisableSnapshotCopy(input *DisableSnapshotCopyInput) (*DisableSnapshotCopyOutput, error) { req, out := c.DisableSnapshotCopyRequest(input) err := req.Send() return out, err } const opEnableLogging = "EnableLogging" // EnableLoggingRequest generates a "aws/request.Request" representing the // client's request for the EnableLogging operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableLogging for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableLogging method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableLoggingRequest method. // req, resp := client.EnableLoggingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) EnableLoggingRequest(input *EnableLoggingInput) (req *request.Request, output *LoggingStatus) { op := &request.Operation{ Name: opEnableLogging, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableLoggingInput{} } req = c.newRequest(op, input, output) output = &LoggingStatus{} req.Data = output return } // EnableLogging API operation for Amazon Redshift. // // Starts logging information, such as queries and connection attempts, for // the specified Amazon Redshift cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation EnableLogging for usage and error information. // // Returned Error Codes: // * ClusterNotFound // The ClusterIdentifier parameter does not refer to an existing cluster. // // * BucketNotFoundFault // Could not find the specified S3 bucket. // // * InsufficientS3BucketPolicyFault // The cluster does not have read bucket or put object permissions on the S3 // bucket specified when enabling logging. // // * InvalidS3KeyPrefixFault // The string specified for the logging S3 key prefix does not comply with the // documented constraints. // // * InvalidS3BucketNameFault // The S3 bucket name is invalid. For more information about naming rules, go // to Bucket Restrictions and Limitations (http://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html) // in the Amazon Simple Storage Service (S3) Developer Guide. // func (c *Redshift) EnableLogging(input *EnableLoggingInput) (*LoggingStatus, error) { req, out := c.EnableLoggingRequest(input) err := req.Send() return out, err } const opEnableSnapshotCopy = "EnableSnapshotCopy" // EnableSnapshotCopyRequest generates a "aws/request.Request" representing the // client's request for the EnableSnapshotCopy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableSnapshotCopy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableSnapshotCopy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableSnapshotCopyRequest method. // req, resp := client.EnableSnapshotCopyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) EnableSnapshotCopyRequest(input *EnableSnapshotCopyInput) (req *request.Request, output *EnableSnapshotCopyOutput) { op := &request.Operation{ Name: opEnableSnapshotCopy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableSnapshotCopyInput{} } req = c.newRequest(op, input, output) output = &EnableSnapshotCopyOutput{} req.Data = output return } // EnableSnapshotCopy API operation for Amazon Redshift. // // Enables the automatic copy of snapshots from one region to another region // for a specified cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation EnableSnapshotCopy for usage and error information. // // Returned Error Codes: // * IncompatibleOrderableOptions // The specified options are incompatible. // // * InvalidClusterState // The specified cluster is not in the available state. // // * ClusterNotFound // The ClusterIdentifier parameter does not refer to an existing cluster. // // * CopyToRegionDisabledFault // Cross-region snapshot copy was temporarily disabled. Try your request again. // // * SnapshotCopyAlreadyEnabledFault // The cluster already has cross-region snapshot copy enabled. // // * UnknownSnapshotCopyRegionFault // The specified region is incorrect or does not exist. // // * UnauthorizedOperation // Your account is not authorized to perform the requested operation. // // * SnapshotCopyGrantNotFoundFault // The specified snapshot copy grant can't be found. Make sure that the name // is typed correctly and that the grant exists in the destination region. // // * LimitExceededFault // The encryption key has exceeded its grant limit in AWS KMS. // // * DependentServiceRequestThrottlingFault // The request cannot be completed because a dependent service is throttling // requests made by Amazon Redshift on your behalf. Wait and retry the request. // func (c *Redshift) EnableSnapshotCopy(input *EnableSnapshotCopyInput) (*EnableSnapshotCopyOutput, error) { req, out := c.EnableSnapshotCopyRequest(input) err := req.Send() return out, err } const opModifyCluster = "ModifyCluster" // ModifyClusterRequest generates a "aws/request.Request" representing the // client's request for the ModifyCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyClusterRequest method. // req, resp := client.ModifyClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) ModifyClusterRequest(input *ModifyClusterInput) (req *request.Request, output *ModifyClusterOutput) { op := &request.Operation{ Name: opModifyCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyClusterInput{} } req = c.newRequest(op, input, output) output = &ModifyClusterOutput{} req.Data = output return } // ModifyCluster API operation for Amazon Redshift. // // Modifies the settings for a cluster. For example, you can add another security // or parameter group, update the preferred maintenance window, or change the // master user password. Resetting a cluster password or modifying the security // groups associated with a cluster do not need a reboot. However, modifying // a parameter group requires a reboot for parameters to take effect. For more // information about managing clusters, go to Amazon Redshift Clusters (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html) // in the Amazon Redshift Cluster Management Guide. // // You can also change node type and the number of nodes to scale up or down // the cluster. When resizing a cluster, you must specify both the number of // nodes and the node type even if one of the parameters does not change. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation ModifyCluster for usage and error information. // // Returned Error Codes: // * InvalidClusterState // The specified cluster is not in the available state. // // * InvalidClusterSecurityGroupState // The state of the cluster security group is not available. // // * ClusterNotFound // The ClusterIdentifier parameter does not refer to an existing cluster. // // * NumberOfNodesQuotaExceeded // The operation would exceed the number of nodes allotted to the account. For // information about increasing your quota, go to Limits in Amazon Redshift // (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) // in the Amazon Redshift Cluster Management Guide. // // * ClusterSecurityGroupNotFound // The cluster security group name does not refer to an existing cluster security // group. // // * ClusterParameterGroupNotFound // The parameter group name does not refer to an existing parameter group. // // * InsufficientClusterCapacity // The number of nodes specified exceeds the allotted capacity of the cluster. // // * UnsupportedOptionFault // A request option was specified that is not supported. // // * UnauthorizedOperation // Your account is not authorized to perform the requested operation. // // * HsmClientCertificateNotFoundFault // There is no Amazon Redshift HSM client certificate with the specified identifier. // // * HsmConfigurationNotFoundFault // There is no Amazon Redshift HSM configuration with the specified identifier. // // * ClusterAlreadyExists // The account already has a cluster with the given identifier. // // * LimitExceededFault // The encryption key has exceeded its grant limit in AWS KMS. // // * DependentServiceRequestThrottlingFault // The request cannot be completed because a dependent service is throttling // requests made by Amazon Redshift on your behalf. Wait and retry the request. // // * InvalidElasticIpFault // The Elastic IP (EIP) is invalid or cannot be found. // func (c *Redshift) ModifyCluster(input *ModifyClusterInput) (*ModifyClusterOutput, error) { req, out := c.ModifyClusterRequest(input) err := req.Send() return out, err } const opModifyClusterIamRoles = "ModifyClusterIamRoles" // ModifyClusterIamRolesRequest generates a "aws/request.Request" representing the // client's request for the ModifyClusterIamRoles operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyClusterIamRoles for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyClusterIamRoles method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyClusterIamRolesRequest method. // req, resp := client.ModifyClusterIamRolesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) ModifyClusterIamRolesRequest(input *ModifyClusterIamRolesInput) (req *request.Request, output *ModifyClusterIamRolesOutput) { op := &request.Operation{ Name: opModifyClusterIamRoles, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyClusterIamRolesInput{} } req = c.newRequest(op, input, output) output = &ModifyClusterIamRolesOutput{} req.Data = output return } // ModifyClusterIamRoles API operation for Amazon Redshift. // // Modifies the list of AWS Identity and Access Management (IAM) roles that // can be used by the cluster to access other AWS services. // // A cluster can have up to 10 IAM roles associated at any time. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation ModifyClusterIamRoles for usage and error information. // // Returned Error Codes: // * InvalidClusterState // The specified cluster is not in the available state. // // * ClusterNotFound // The ClusterIdentifier parameter does not refer to an existing cluster. // func (c *Redshift) ModifyClusterIamRoles(input *ModifyClusterIamRolesInput) (*ModifyClusterIamRolesOutput, error) { req, out := c.ModifyClusterIamRolesRequest(input) err := req.Send() return out, err } const opModifyClusterParameterGroup = "ModifyClusterParameterGroup" // ModifyClusterParameterGroupRequest generates a "aws/request.Request" representing the // client's request for the ModifyClusterParameterGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyClusterParameterGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyClusterParameterGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyClusterParameterGroupRequest method. // req, resp := client.ModifyClusterParameterGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) ModifyClusterParameterGroupRequest(input *ModifyClusterParameterGroupInput) (req *request.Request, output *ClusterParameterGroupNameMessage) { op := &request.Operation{ Name: opModifyClusterParameterGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyClusterParameterGroupInput{} } req = c.newRequest(op, input, output) output = &ClusterParameterGroupNameMessage{} req.Data = output return } // ModifyClusterParameterGroup API operation for Amazon Redshift. // // Modifies the parameters of a parameter group. // // For more information about parameters and parameter groups, go to Amazon // Redshift Parameter Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation ModifyClusterParameterGroup for usage and error information. // // Returned Error Codes: // * ClusterParameterGroupNotFound // The parameter group name does not refer to an existing parameter group. // // * InvalidClusterParameterGroupState // The cluster parameter group action can not be completed because another task // is in progress that involves the parameter group. Wait a few moments and // try the operation again. // func (c *Redshift) ModifyClusterParameterGroup(input *ModifyClusterParameterGroupInput) (*ClusterParameterGroupNameMessage, error) { req, out := c.ModifyClusterParameterGroupRequest(input) err := req.Send() return out, err } const opModifyClusterSubnetGroup = "ModifyClusterSubnetGroup" // ModifyClusterSubnetGroupRequest generates a "aws/request.Request" representing the // client's request for the ModifyClusterSubnetGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyClusterSubnetGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyClusterSubnetGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyClusterSubnetGroupRequest method. // req, resp := client.ModifyClusterSubnetGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) ModifyClusterSubnetGroupRequest(input *ModifyClusterSubnetGroupInput) (req *request.Request, output *ModifyClusterSubnetGroupOutput) { op := &request.Operation{ Name: opModifyClusterSubnetGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyClusterSubnetGroupInput{} } req = c.newRequest(op, input, output) output = &ModifyClusterSubnetGroupOutput{} req.Data = output return } // ModifyClusterSubnetGroup API operation for Amazon Redshift. // // Modifies a cluster subnet group to include the specified list of VPC subnets. // The operation replaces the existing list of subnets with the new list of // subnets. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation ModifyClusterSubnetGroup for usage and error information. // // Returned Error Codes: // * ClusterSubnetGroupNotFoundFault // The cluster subnet group name does not refer to an existing cluster subnet // group. // // * ClusterSubnetQuotaExceededFault // The request would result in user exceeding the allowed number of subnets // in a cluster subnet groups. For information about increasing your quota, // go to Limits in Amazon Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) // in the Amazon Redshift Cluster Management Guide. // // * SubnetAlreadyInUse // A specified subnet is already in use by another cluster. // // * InvalidSubnet // The requested subnet is not valid, or not all of the subnets are in the same // VPC. // // * UnauthorizedOperation // Your account is not authorized to perform the requested operation. // // * DependentServiceRequestThrottlingFault // The request cannot be completed because a dependent service is throttling // requests made by Amazon Redshift on your behalf. Wait and retry the request. // func (c *Redshift) ModifyClusterSubnetGroup(input *ModifyClusterSubnetGroupInput) (*ModifyClusterSubnetGroupOutput, error) { req, out := c.ModifyClusterSubnetGroupRequest(input) err := req.Send() return out, err } const opModifyEventSubscription = "ModifyEventSubscription" // ModifyEventSubscriptionRequest generates a "aws/request.Request" representing the // client's request for the ModifyEventSubscription operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyEventSubscription for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyEventSubscription method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyEventSubscriptionRequest method. // req, resp := client.ModifyEventSubscriptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) ModifyEventSubscriptionRequest(input *ModifyEventSubscriptionInput) (req *request.Request, output *ModifyEventSubscriptionOutput) { op := &request.Operation{ Name: opModifyEventSubscription, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyEventSubscriptionInput{} } req = c.newRequest(op, input, output) output = &ModifyEventSubscriptionOutput{} req.Data = output return } // ModifyEventSubscription API operation for Amazon Redshift. // // Modifies an existing Amazon Redshift event notification subscription. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation ModifyEventSubscription for usage and error information. // // Returned Error Codes: // * SubscriptionNotFound // An Amazon Redshift event notification subscription with the specified name // does not exist. // // * SNSInvalidTopic // Amazon SNS has responded that there is a problem with the specified Amazon // SNS topic. // // * SNSNoAuthorization // You do not have permission to publish to the specified Amazon SNS topic. // // * SNSTopicArnNotFound // An Amazon SNS topic with the specified Amazon Resource Name (ARN) does not // exist. // // * SubscriptionEventIdNotFound // An Amazon Redshift event with the specified event ID does not exist. // // * SubscriptionCategoryNotFound // The value specified for the event category was not one of the allowed values, // or it specified a category that does not apply to the specified source type. // The allowed values are Configuration, Management, Monitoring, and Security. // // * SubscriptionSeverityNotFound // The value specified for the event severity was not one of the allowed values, // or it specified a severity that does not apply to the specified source type. // The allowed values are ERROR and INFO. // // * SourceNotFound // The specified Amazon Redshift event source could not be found. // // * InvalidSubscriptionStateFault // The subscription request is invalid because it is a duplicate request. This // subscription request is already in progress. // func (c *Redshift) ModifyEventSubscription(input *ModifyEventSubscriptionInput) (*ModifyEventSubscriptionOutput, error) { req, out := c.ModifyEventSubscriptionRequest(input) err := req.Send() return out, err } const opModifySnapshotCopyRetentionPeriod = "ModifySnapshotCopyRetentionPeriod" // ModifySnapshotCopyRetentionPeriodRequest generates a "aws/request.Request" representing the // client's request for the ModifySnapshotCopyRetentionPeriod operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifySnapshotCopyRetentionPeriod for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifySnapshotCopyRetentionPeriod method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifySnapshotCopyRetentionPeriodRequest method. // req, resp := client.ModifySnapshotCopyRetentionPeriodRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) ModifySnapshotCopyRetentionPeriodRequest(input *ModifySnapshotCopyRetentionPeriodInput) (req *request.Request, output *ModifySnapshotCopyRetentionPeriodOutput) { op := &request.Operation{ Name: opModifySnapshotCopyRetentionPeriod, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifySnapshotCopyRetentionPeriodInput{} } req = c.newRequest(op, input, output) output = &ModifySnapshotCopyRetentionPeriodOutput{} req.Data = output return } // ModifySnapshotCopyRetentionPeriod API operation for Amazon Redshift. // // Modifies the number of days to retain automated snapshots in the destination // region after they are copied from the source region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation ModifySnapshotCopyRetentionPeriod for usage and error information. // // Returned Error Codes: // * ClusterNotFound // The ClusterIdentifier parameter does not refer to an existing cluster. // // * SnapshotCopyDisabledFault // Cross-region snapshot copy was temporarily disabled. Try your request again. // // * UnauthorizedOperation // Your account is not authorized to perform the requested operation. // // * InvalidClusterState // The specified cluster is not in the available state. // func (c *Redshift) ModifySnapshotCopyRetentionPeriod(input *ModifySnapshotCopyRetentionPeriodInput) (*ModifySnapshotCopyRetentionPeriodOutput, error) { req, out := c.ModifySnapshotCopyRetentionPeriodRequest(input) err := req.Send() return out, err } const opPurchaseReservedNodeOffering = "PurchaseReservedNodeOffering" // PurchaseReservedNodeOfferingRequest generates a "aws/request.Request" representing the // client's request for the PurchaseReservedNodeOffering operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PurchaseReservedNodeOffering for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PurchaseReservedNodeOffering method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PurchaseReservedNodeOfferingRequest method. // req, resp := client.PurchaseReservedNodeOfferingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) PurchaseReservedNodeOfferingRequest(input *PurchaseReservedNodeOfferingInput) (req *request.Request, output *PurchaseReservedNodeOfferingOutput) { op := &request.Operation{ Name: opPurchaseReservedNodeOffering, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PurchaseReservedNodeOfferingInput{} } req = c.newRequest(op, input, output) output = &PurchaseReservedNodeOfferingOutput{} req.Data = output return } // PurchaseReservedNodeOffering API operation for Amazon Redshift. // // Allows you to purchase reserved nodes. Amazon Redshift offers a predefined // set of reserved node offerings. You can purchase one or more of the offerings. // You can call the DescribeReservedNodeOfferings API to obtain the available // reserved node offerings. You can call this API by providing a specific reserved // node offering and the number of nodes you want to reserve. // // For more information about reserved node offerings, go to Purchasing Reserved // Nodes (http://docs.aws.amazon.com/redshift/latest/mgmt/purchase-reserved-node-instance.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation PurchaseReservedNodeOffering for usage and error information. // // Returned Error Codes: // * ReservedNodeOfferingNotFound // Specified offering does not exist. // // * ReservedNodeAlreadyExists // User already has a reservation with the given identifier. // // * ReservedNodeQuotaExceeded // Request would exceed the user's compute node quota. For information about // increasing your quota, go to Limits in Amazon Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) // in the Amazon Redshift Cluster Management Guide. // // * UnsupportedOperation // The requested operation isn't supported. // func (c *Redshift) PurchaseReservedNodeOffering(input *PurchaseReservedNodeOfferingInput) (*PurchaseReservedNodeOfferingOutput, error) { req, out := c.PurchaseReservedNodeOfferingRequest(input) err := req.Send() return out, err } const opRebootCluster = "RebootCluster" // RebootClusterRequest generates a "aws/request.Request" representing the // client's request for the RebootCluster operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RebootCluster for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RebootCluster method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RebootClusterRequest method. // req, resp := client.RebootClusterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) RebootClusterRequest(input *RebootClusterInput) (req *request.Request, output *RebootClusterOutput) { op := &request.Operation{ Name: opRebootCluster, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RebootClusterInput{} } req = c.newRequest(op, input, output) output = &RebootClusterOutput{} req.Data = output return } // RebootCluster API operation for Amazon Redshift. // // Reboots a cluster. This action is taken as soon as possible. It results in // a momentary outage to the cluster, during which the cluster status is set // to rebooting. A cluster event is created when the reboot is completed. Any // pending cluster modifications (see ModifyCluster) are applied at this reboot. // For more information about managing clusters, go to Amazon Redshift Clusters // (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation RebootCluster for usage and error information. // // Returned Error Codes: // * InvalidClusterState // The specified cluster is not in the available state. // // * ClusterNotFound // The ClusterIdentifier parameter does not refer to an existing cluster. // func (c *Redshift) RebootCluster(input *RebootClusterInput) (*RebootClusterOutput, error) { req, out := c.RebootClusterRequest(input) err := req.Send() return out, err } const opResetClusterParameterGroup = "ResetClusterParameterGroup" // ResetClusterParameterGroupRequest generates a "aws/request.Request" representing the // client's request for the ResetClusterParameterGroup operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ResetClusterParameterGroup for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ResetClusterParameterGroup method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ResetClusterParameterGroupRequest method. // req, resp := client.ResetClusterParameterGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) ResetClusterParameterGroupRequest(input *ResetClusterParameterGroupInput) (req *request.Request, output *ClusterParameterGroupNameMessage) { op := &request.Operation{ Name: opResetClusterParameterGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ResetClusterParameterGroupInput{} } req = c.newRequest(op, input, output) output = &ClusterParameterGroupNameMessage{} req.Data = output return } // ResetClusterParameterGroup API operation for Amazon Redshift. // // Sets one or more parameters of the specified parameter group to their default // values and sets the source values of the parameters to "engine-default". // To reset the entire parameter group specify the ResetAllParameters parameter. // For parameter changes to take effect you must reboot any associated clusters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation ResetClusterParameterGroup for usage and error information. // // Returned Error Codes: // * InvalidClusterParameterGroupState // The cluster parameter group action can not be completed because another task // is in progress that involves the parameter group. Wait a few moments and // try the operation again. // // * ClusterParameterGroupNotFound // The parameter group name does not refer to an existing parameter group. // func (c *Redshift) ResetClusterParameterGroup(input *ResetClusterParameterGroupInput) (*ClusterParameterGroupNameMessage, error) { req, out := c.ResetClusterParameterGroupRequest(input) err := req.Send() return out, err } const opRestoreFromClusterSnapshot = "RestoreFromClusterSnapshot" // RestoreFromClusterSnapshotRequest generates a "aws/request.Request" representing the // client's request for the RestoreFromClusterSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RestoreFromClusterSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RestoreFromClusterSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RestoreFromClusterSnapshotRequest method. // req, resp := client.RestoreFromClusterSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) RestoreFromClusterSnapshotRequest(input *RestoreFromClusterSnapshotInput) (req *request.Request, output *RestoreFromClusterSnapshotOutput) { op := &request.Operation{ Name: opRestoreFromClusterSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RestoreFromClusterSnapshotInput{} } req = c.newRequest(op, input, output) output = &RestoreFromClusterSnapshotOutput{} req.Data = output return } // RestoreFromClusterSnapshot API operation for Amazon Redshift. // // Creates a new cluster from a snapshot. By default, Amazon Redshift creates // the resulting cluster with the same configuration as the original cluster // from which the snapshot was created, except that the new cluster is created // with the default cluster security and parameter groups. After Amazon Redshift // creates the cluster, you can use the ModifyCluster API to associate a different // security group and different parameter group with the restored cluster. If // you are using a DS node type, you can also choose to change to another DS // node type of the same size during restore. // // If you restore a cluster into a VPC, you must provide a cluster subnet group // where you want the cluster restored. // // For more information about working with snapshots, go to Amazon Redshift // Snapshots (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-snapshots.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation RestoreFromClusterSnapshot for usage and error information. // // Returned Error Codes: // * AccessToSnapshotDenied // The owner of the specified snapshot has not authorized your account to access // the snapshot. // // * ClusterAlreadyExists // The account already has a cluster with the given identifier. // // * ClusterSnapshotNotFound // The snapshot identifier does not refer to an existing cluster snapshot. // // * ClusterQuotaExceeded // The request would exceed the allowed number of cluster instances for this // account. For information about increasing your quota, go to Limits in Amazon // Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) // in the Amazon Redshift Cluster Management Guide. // // * InsufficientClusterCapacity // The number of nodes specified exceeds the allotted capacity of the cluster. // // * InvalidClusterSnapshotState // The specified cluster snapshot is not in the available state, or other accounts // are authorized to access the snapshot. // // * InvalidRestore // The restore is invalid. // // * NumberOfNodesQuotaExceeded // The operation would exceed the number of nodes allotted to the account. For // information about increasing your quota, go to Limits in Amazon Redshift // (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) // in the Amazon Redshift Cluster Management Guide. // // * NumberOfNodesPerClusterLimitExceeded // The operation would exceed the number of nodes allowed for a cluster. // // * InvalidVPCNetworkStateFault // The cluster subnet group does not cover all Availability Zones. // // * InvalidClusterSubnetGroupStateFault // The cluster subnet group cannot be deleted because it is in use. // // * InvalidSubnet // The requested subnet is not valid, or not all of the subnets are in the same // VPC. // // * ClusterSubnetGroupNotFoundFault // The cluster subnet group name does not refer to an existing cluster subnet // group. // // * UnauthorizedOperation // Your account is not authorized to perform the requested operation. // // * HsmClientCertificateNotFoundFault // There is no Amazon Redshift HSM client certificate with the specified identifier. // // * HsmConfigurationNotFoundFault // There is no Amazon Redshift HSM configuration with the specified identifier. // // * InvalidElasticIpFault // The Elastic IP (EIP) is invalid or cannot be found. // // * ClusterParameterGroupNotFound // The parameter group name does not refer to an existing parameter group. // // * ClusterSecurityGroupNotFound // The cluster security group name does not refer to an existing cluster security // group. // // * LimitExceededFault // The encryption key has exceeded its grant limit in AWS KMS. // // * DependentServiceRequestThrottlingFault // The request cannot be completed because a dependent service is throttling // requests made by Amazon Redshift on your behalf. Wait and retry the request. // func (c *Redshift) RestoreFromClusterSnapshot(input *RestoreFromClusterSnapshotInput) (*RestoreFromClusterSnapshotOutput, error) { req, out := c.RestoreFromClusterSnapshotRequest(input) err := req.Send() return out, err } const opRestoreTableFromClusterSnapshot = "RestoreTableFromClusterSnapshot" // RestoreTableFromClusterSnapshotRequest generates a "aws/request.Request" representing the // client's request for the RestoreTableFromClusterSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RestoreTableFromClusterSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RestoreTableFromClusterSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RestoreTableFromClusterSnapshotRequest method. // req, resp := client.RestoreTableFromClusterSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) RestoreTableFromClusterSnapshotRequest(input *RestoreTableFromClusterSnapshotInput) (req *request.Request, output *RestoreTableFromClusterSnapshotOutput) { op := &request.Operation{ Name: opRestoreTableFromClusterSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RestoreTableFromClusterSnapshotInput{} } req = c.newRequest(op, input, output) output = &RestoreTableFromClusterSnapshotOutput{} req.Data = output return } // RestoreTableFromClusterSnapshot API operation for Amazon Redshift. // // Creates a new table from a table in an Amazon Redshift cluster snapshot. // You must create the new table within the Amazon Redshift cluster that the // snapshot was taken from. // // You cannot use RestoreTableFromClusterSnapshot to restore a table with the // same name as an existing table in an Amazon Redshift cluster. That is, you // cannot overwrite an existing table in a cluster with a restored table. If // you want to replace your original table with a new, restored table, then // rename or drop your original table before you call RestoreTableFromClusterSnapshot. // When you have renamed your original table, then you can pass the original // name of the table as the NewTableName parameter value in the call to RestoreTableFromClusterSnapshot. // This way, you can replace the original table with the table created from // the snapshot. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation RestoreTableFromClusterSnapshot for usage and error information. // // Returned Error Codes: // * ClusterSnapshotNotFound // The snapshot identifier does not refer to an existing cluster snapshot. // // * InProgressTableRestoreQuotaExceededFault // You have exceeded the allowed number of table restore requests. Wait for // your current table restore requests to complete before making a new request. // // * InvalidClusterSnapshotState // The specified cluster snapshot is not in the available state, or other accounts // are authorized to access the snapshot. // // * InvalidTableRestoreArgument // The value specified for the sourceDatabaseName, sourceSchemaName, or sourceTableName // parameter, or a combination of these, doesn't exist in the snapshot. // // * ClusterNotFound // The ClusterIdentifier parameter does not refer to an existing cluster. // // * InvalidClusterState // The specified cluster is not in the available state. // // * UnsupportedOperation // The requested operation isn't supported. // func (c *Redshift) RestoreTableFromClusterSnapshot(input *RestoreTableFromClusterSnapshotInput) (*RestoreTableFromClusterSnapshotOutput, error) { req, out := c.RestoreTableFromClusterSnapshotRequest(input) err := req.Send() return out, err } const opRevokeClusterSecurityGroupIngress = "RevokeClusterSecurityGroupIngress" // RevokeClusterSecurityGroupIngressRequest generates a "aws/request.Request" representing the // client's request for the RevokeClusterSecurityGroupIngress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RevokeClusterSecurityGroupIngress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RevokeClusterSecurityGroupIngress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RevokeClusterSecurityGroupIngressRequest method. // req, resp := client.RevokeClusterSecurityGroupIngressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) RevokeClusterSecurityGroupIngressRequest(input *RevokeClusterSecurityGroupIngressInput) (req *request.Request, output *RevokeClusterSecurityGroupIngressOutput) { op := &request.Operation{ Name: opRevokeClusterSecurityGroupIngress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RevokeClusterSecurityGroupIngressInput{} } req = c.newRequest(op, input, output) output = &RevokeClusterSecurityGroupIngressOutput{} req.Data = output return } // RevokeClusterSecurityGroupIngress API operation for Amazon Redshift. // // Revokes an ingress rule in an Amazon Redshift security group for a previously // authorized IP range or Amazon EC2 security group. To add an ingress rule, // see AuthorizeClusterSecurityGroupIngress. For information about managing // security groups, go to Amazon Redshift Cluster Security Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation RevokeClusterSecurityGroupIngress for usage and error information. // // Returned Error Codes: // * ClusterSecurityGroupNotFound // The cluster security group name does not refer to an existing cluster security // group. // // * AuthorizationNotFound // The specified CIDR IP range or EC2 security group is not authorized for the // specified cluster security group. // // * InvalidClusterSecurityGroupState // The state of the cluster security group is not available. // func (c *Redshift) RevokeClusterSecurityGroupIngress(input *RevokeClusterSecurityGroupIngressInput) (*RevokeClusterSecurityGroupIngressOutput, error) { req, out := c.RevokeClusterSecurityGroupIngressRequest(input) err := req.Send() return out, err } const opRevokeSnapshotAccess = "RevokeSnapshotAccess" // RevokeSnapshotAccessRequest generates a "aws/request.Request" representing the // client's request for the RevokeSnapshotAccess operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RevokeSnapshotAccess for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RevokeSnapshotAccess method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RevokeSnapshotAccessRequest method. // req, resp := client.RevokeSnapshotAccessRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) RevokeSnapshotAccessRequest(input *RevokeSnapshotAccessInput) (req *request.Request, output *RevokeSnapshotAccessOutput) { op := &request.Operation{ Name: opRevokeSnapshotAccess, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RevokeSnapshotAccessInput{} } req = c.newRequest(op, input, output) output = &RevokeSnapshotAccessOutput{} req.Data = output return } // RevokeSnapshotAccess API operation for Amazon Redshift. // // Removes the ability of the specified AWS customer account to restore the // specified snapshot. If the account is currently restoring the snapshot, the // restore will run to completion. // // For more information about working with snapshots, go to Amazon Redshift // Snapshots (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-snapshots.html) // in the Amazon Redshift Cluster Management Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation RevokeSnapshotAccess for usage and error information. // // Returned Error Codes: // * AccessToSnapshotDenied // The owner of the specified snapshot has not authorized your account to access // the snapshot. // // * AuthorizationNotFound // The specified CIDR IP range or EC2 security group is not authorized for the // specified cluster security group. // // * ClusterSnapshotNotFound // The snapshot identifier does not refer to an existing cluster snapshot. // func (c *Redshift) RevokeSnapshotAccess(input *RevokeSnapshotAccessInput) (*RevokeSnapshotAccessOutput, error) { req, out := c.RevokeSnapshotAccessRequest(input) err := req.Send() return out, err } const opRotateEncryptionKey = "RotateEncryptionKey" // RotateEncryptionKeyRequest generates a "aws/request.Request" representing the // client's request for the RotateEncryptionKey operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RotateEncryptionKey for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RotateEncryptionKey method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RotateEncryptionKeyRequest method. // req, resp := client.RotateEncryptionKeyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Redshift) RotateEncryptionKeyRequest(input *RotateEncryptionKeyInput) (req *request.Request, output *RotateEncryptionKeyOutput) { op := &request.Operation{ Name: opRotateEncryptionKey, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RotateEncryptionKeyInput{} } req = c.newRequest(op, input, output) output = &RotateEncryptionKeyOutput{} req.Data = output return } // RotateEncryptionKey API operation for Amazon Redshift. // // Rotates the encryption keys for a cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Redshift's // API operation RotateEncryptionKey for usage and error information. // // Returned Error Codes: // * ClusterNotFound // The ClusterIdentifier parameter does not refer to an existing cluster. // // * InvalidClusterState // The specified cluster is not in the available state. // // * DependentServiceRequestThrottlingFault // The request cannot be completed because a dependent service is throttling // requests made by Amazon Redshift on your behalf. Wait and retry the request. // func (c *Redshift) RotateEncryptionKey(input *RotateEncryptionKeyInput) (*RotateEncryptionKeyOutput, error) { req, out := c.RotateEncryptionKeyRequest(input) err := req.Send() return out, err } // Describes an AWS customer account authorized to restore a snapshot. type AccountWithRestoreAccess struct { _ struct{} `type:"structure"` // The identifier of an AWS customer account authorized to restore a snapshot. AccountId *string `type:"string"` } // String returns the string representation func (s AccountWithRestoreAccess) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AccountWithRestoreAccess) GoString() string { return s.String() } type AuthorizeClusterSecurityGroupIngressInput struct { _ struct{} `type:"structure"` // The IP range to be added the Amazon Redshift security group. CIDRIP *string `type:"string"` // The name of the security group to which the ingress rule is added. // // ClusterSecurityGroupName is a required field ClusterSecurityGroupName *string `type:"string" required:"true"` // The EC2 security group to be added the Amazon Redshift security group. EC2SecurityGroupName *string `type:"string"` // The AWS account number of the owner of the security group specified by the // EC2SecurityGroupName parameter. The AWS Access Key ID is not an acceptable // value. // // Example: 111122223333 EC2SecurityGroupOwnerId *string `type:"string"` } // String returns the string representation func (s AuthorizeClusterSecurityGroupIngressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AuthorizeClusterSecurityGroupIngressInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AuthorizeClusterSecurityGroupIngressInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AuthorizeClusterSecurityGroupIngressInput"} if s.ClusterSecurityGroupName == nil { invalidParams.Add(request.NewErrParamRequired("ClusterSecurityGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AuthorizeClusterSecurityGroupIngressOutput struct { _ struct{} `type:"structure"` // Describes a security group. ClusterSecurityGroup *ClusterSecurityGroup `type:"structure"` } // String returns the string representation func (s AuthorizeClusterSecurityGroupIngressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AuthorizeClusterSecurityGroupIngressOutput) GoString() string { return s.String() } type AuthorizeSnapshotAccessInput struct { _ struct{} `type:"structure"` // The identifier of the AWS customer account authorized to restore the specified // snapshot. // // AccountWithRestoreAccess is a required field AccountWithRestoreAccess *string `type:"string" required:"true"` // The identifier of the cluster the snapshot was created from. This parameter // is required if your IAM user has a policy containing a snapshot resource // element that specifies anything other than * for the cluster name. SnapshotClusterIdentifier *string `type:"string"` // The identifier of the snapshot the account is authorized to restore. // // SnapshotIdentifier is a required field SnapshotIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s AuthorizeSnapshotAccessInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AuthorizeSnapshotAccessInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AuthorizeSnapshotAccessInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AuthorizeSnapshotAccessInput"} if s.AccountWithRestoreAccess == nil { invalidParams.Add(request.NewErrParamRequired("AccountWithRestoreAccess")) } if s.SnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AuthorizeSnapshotAccessOutput struct { _ struct{} `type:"structure"` // Describes a snapshot. Snapshot *Snapshot `type:"structure"` } // String returns the string representation func (s AuthorizeSnapshotAccessOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AuthorizeSnapshotAccessOutput) GoString() string { return s.String() } // Describes an availability zone. type AvailabilityZone struct { _ struct{} `type:"structure"` // The name of the availability zone. Name *string `type:"string"` } // String returns the string representation func (s AvailabilityZone) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AvailabilityZone) GoString() string { return s.String() } // Describes a cluster. type Cluster struct { _ struct{} `type:"structure"` // A Boolean value that, if true, indicates that major version upgrades will // be applied automatically to the cluster during the maintenance window. AllowVersionUpgrade *bool `type:"boolean"` // The number of days that automatic cluster snapshots are retained. AutomatedSnapshotRetentionPeriod *int64 `type:"integer"` // The name of the Availability Zone in which the cluster is located. AvailabilityZone *string `type:"string"` // The date and time that the cluster was created. ClusterCreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The unique identifier of the cluster. ClusterIdentifier *string `type:"string"` // The nodes in the cluster. ClusterNodes []*ClusterNode `type:"list"` // The list of cluster parameter groups that are associated with this cluster. // Each parameter group in the list is returned with its status. ClusterParameterGroups []*ClusterParameterGroupStatus `locationNameList:"ClusterParameterGroup" type:"list"` // The public key for the cluster. ClusterPublicKey *string `type:"string"` // The specific revision number of the database in the cluster. ClusterRevisionNumber *string `type:"string"` // A list of cluster security group that are associated with the cluster. Each // security group is represented by an element that contains ClusterSecurityGroup.Name // and ClusterSecurityGroup.Status subelements. // // Cluster security groups are used when the cluster is not created in an Amazon // Virtual Private Cloud (VPC). Clusters that are created in a VPC use VPC security // groups, which are listed by the VpcSecurityGroups parameter. ClusterSecurityGroups []*ClusterSecurityGroupMembership `locationNameList:"ClusterSecurityGroup" type:"list"` // A value that returns the destination region and retention period that are // configured for cross-region snapshot copy. ClusterSnapshotCopyStatus *ClusterSnapshotCopyStatus `type:"structure"` // The current state of the cluster. Possible values are the following: // // * available // // * creating // // * deleting // // * final-snapshot // // * hardware-failure // // * incompatible-hsm // // * incompatible-network // // * incompatible-parameters // // * incompatible-restore // // * modifying // // * rebooting // // * renaming // // * resizing // // * rotating-keys // // * storage-full // // * updating-hsm ClusterStatus *string `type:"string"` // The name of the subnet group that is associated with the cluster. This parameter // is valid only when the cluster is in a VPC. ClusterSubnetGroupName *string `type:"string"` // The version ID of the Amazon Redshift engine that is running on the cluster. ClusterVersion *string `type:"string"` // The name of the initial database that was created when the cluster was created. // This same name is returned for the life of the cluster. If an initial database // was not specified, a database named devdev was created by default. DBName *string `type:"string"` // The status of the elastic IP (EIP) address. ElasticIpStatus *ElasticIpStatus `type:"structure"` // A Boolean value that, if true, indicates that data in the cluster is encrypted // at rest. Encrypted *bool `type:"boolean"` // The connection endpoint. Endpoint *Endpoint `type:"structure"` // An option that specifies whether to create the cluster with enhanced VPC // routing enabled. To create a cluster that uses enhanced VPC routing, the // cluster must be in a VPC. For more information, see Enhanced VPC Routing // (http://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html) // in the Amazon Redshift Cluster Management Guide. // // If this option is true, enhanced VPC routing is enabled. // // Default: false EnhancedVpcRouting *bool `type:"boolean"` // A value that reports whether the Amazon Redshift cluster has finished applying // any hardware security module (HSM) settings changes specified in a modify // cluster command. // // Values: active, applying HsmStatus *HsmStatus `type:"structure"` // A list of AWS Identity and Access Management (IAM) roles that can be used // by the cluster to access other AWS services. IamRoles []*ClusterIamRole `locationNameList:"ClusterIamRole" type:"list"` // The AWS Key Management Service (AWS KMS) key ID of the encryption key used // to encrypt data in the cluster. KmsKeyId *string `type:"string"` // The master user name for the cluster. This name is used to connect to the // database that is specified in the DBName parameter. MasterUsername *string `type:"string"` // The status of a modify operation, if any, initiated for the cluster. ModifyStatus *string `type:"string"` // The node type for the nodes in the cluster. NodeType *string `type:"string"` // The number of compute nodes in the cluster. NumberOfNodes *int64 `type:"integer"` // A value that, if present, indicates that changes to the cluster are pending. // Specific pending changes are identified by subelements. PendingModifiedValues *PendingModifiedValues `type:"structure"` // The weekly time range, in Universal Coordinated Time (UTC), during which // system maintenance can occur. PreferredMaintenanceWindow *string `type:"string"` // A Boolean value that, if true, indicates that the cluster can be accessed // from a public network. PubliclyAccessible *bool `type:"boolean"` // A value that describes the status of a cluster restore action. This parameter // returns null if the cluster was not created by restoring a snapshot. RestoreStatus *RestoreStatus `type:"structure"` // The list of tags for the cluster. Tags []*Tag `locationNameList:"Tag" type:"list"` // The identifier of the VPC the cluster is in, if the cluster is in a VPC. VpcId *string `type:"string"` // A list of Amazon Virtual Private Cloud (Amazon VPC) security groups that // are associated with the cluster. This parameter is returned only if the cluster // is in a VPC. VpcSecurityGroups []*VpcSecurityGroupMembership `locationNameList:"VpcSecurityGroup" type:"list"` } // String returns the string representation func (s Cluster) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Cluster) GoString() string { return s.String() } // An AWS Identity and Access Management (IAM) role that can be used by the // associated Amazon Redshift cluster to access other AWS services. type ClusterIamRole struct { _ struct{} `type:"structure"` // A value that describes the status of the IAM role's association with an Amazon // Redshift cluster. // // The following are possible statuses and descriptions. // // * in-sync: The role is available for use by the cluster. // // * adding: The role is in the process of being associated with the cluster. // // * removing: The role is in the process of being disassociated with the // cluster. ApplyStatus *string `type:"string"` // The Amazon Resource Name (ARN) of the IAM role, for example, arn:aws:iam::123456789012:role/RedshiftCopyUnload. IamRoleArn *string `type:"string"` } // String returns the string representation func (s ClusterIamRole) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClusterIamRole) GoString() string { return s.String() } // The identifier of a node in a cluster. type ClusterNode struct { _ struct{} `type:"structure"` // Whether the node is a leader node or a compute node. NodeRole *string `type:"string"` // The private IP address of a node within a cluster. PrivateIPAddress *string `type:"string"` // The public IP address of a node within a cluster. PublicIPAddress *string `type:"string"` } // String returns the string representation func (s ClusterNode) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClusterNode) GoString() string { return s.String() } // Describes a parameter group. type ClusterParameterGroup struct { _ struct{} `type:"structure"` // The description of the parameter group. Description *string `type:"string"` // The name of the cluster parameter group family that this cluster parameter // group is compatible with. ParameterGroupFamily *string `type:"string"` // The name of the cluster parameter group. ParameterGroupName *string `type:"string"` // The list of tags for the cluster parameter group. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s ClusterParameterGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClusterParameterGroup) GoString() string { return s.String() } type ClusterParameterGroupNameMessage struct { _ struct{} `type:"structure"` // The name of the cluster parameter group. ParameterGroupName *string `type:"string"` // The status of the parameter group. For example, if you made a change to a // parameter group name-value pair, then the change could be pending a reboot // of an associated cluster. ParameterGroupStatus *string `type:"string"` } // String returns the string representation func (s ClusterParameterGroupNameMessage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClusterParameterGroupNameMessage) GoString() string { return s.String() } // Describes the status of a parameter group. type ClusterParameterGroupStatus struct { _ struct{} `type:"structure"` // The list of parameter statuses. // // For more information about parameters and parameter groups, go to Amazon // Redshift Parameter Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) // in the Amazon Redshift Cluster Management Guide. ClusterParameterStatusList []*ClusterParameterStatus `type:"list"` // The status of parameter updates. ParameterApplyStatus *string `type:"string"` // The name of the cluster parameter group. ParameterGroupName *string `type:"string"` } // String returns the string representation func (s ClusterParameterGroupStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClusterParameterGroupStatus) GoString() string { return s.String() } // Describes the status of a parameter group. type ClusterParameterStatus struct { _ struct{} `type:"structure"` // The error that prevented the parameter from being applied to the database. ParameterApplyErrorDescription *string `type:"string"` // The status of the parameter that indicates whether the parameter is in sync // with the database, waiting for a cluster reboot, or encountered an error // when being applied. // // The following are possible statuses and descriptions. // // * in-sync: The parameter value is in sync with the database. // // * pending-reboot: The parameter value will be applied after the cluster // reboots. // // * applying: The parameter value is being applied to the database. // // * invalid-parameter: Cannot apply the parameter value because it has an // invalid value or syntax. // // * apply-deferred: The parameter contains static property changes. The // changes are deferred until the cluster reboots. // // * apply-error: Cannot connect to the cluster. The parameter change will // be applied after the cluster reboots. // // * unknown-error: Cannot apply the parameter change right now. The change // will be applied after the cluster reboots. ParameterApplyStatus *string `type:"string"` // The name of the parameter. ParameterName *string `type:"string"` } // String returns the string representation func (s ClusterParameterStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClusterParameterStatus) GoString() string { return s.String() } // Describes a security group. type ClusterSecurityGroup struct { _ struct{} `type:"structure"` // The name of the cluster security group to which the operation was applied. ClusterSecurityGroupName *string `type:"string"` // A description of the security group. Description *string `type:"string"` // A list of EC2 security groups that are permitted to access clusters associated // with this cluster security group. EC2SecurityGroups []*EC2SecurityGroup `locationNameList:"EC2SecurityGroup" type:"list"` // A list of IP ranges (CIDR blocks) that are permitted to access clusters associated // with this cluster security group. IPRanges []*IPRange `locationNameList:"IPRange" type:"list"` // The list of tags for the cluster security group. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s ClusterSecurityGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClusterSecurityGroup) GoString() string { return s.String() } // Describes a cluster security group. type ClusterSecurityGroupMembership struct { _ struct{} `type:"structure"` // The name of the cluster security group. ClusterSecurityGroupName *string `type:"string"` // The status of the cluster security group. Status *string `type:"string"` } // String returns the string representation func (s ClusterSecurityGroupMembership) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClusterSecurityGroupMembership) GoString() string { return s.String() } // Returns the destination region and retention period that are configured for // cross-region snapshot copy. type ClusterSnapshotCopyStatus struct { _ struct{} `type:"structure"` // The destination region that snapshots are automatically copied to when cross-region // snapshot copy is enabled. DestinationRegion *string `type:"string"` // The number of days that automated snapshots are retained in the destination // region after they are copied from a source region. RetentionPeriod *int64 `type:"long"` // The name of the snapshot copy grant. SnapshotCopyGrantName *string `type:"string"` } // String returns the string representation func (s ClusterSnapshotCopyStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClusterSnapshotCopyStatus) GoString() string { return s.String() } // Describes a subnet group. type ClusterSubnetGroup struct { _ struct{} `type:"structure"` // The name of the cluster subnet group. ClusterSubnetGroupName *string `type:"string"` // The description of the cluster subnet group. Description *string `type:"string"` // The status of the cluster subnet group. Possible values are Complete, Incomplete // and Invalid. SubnetGroupStatus *string `type:"string"` // A list of the VPC Subnet elements. Subnets []*Subnet `locationNameList:"Subnet" type:"list"` // The list of tags for the cluster subnet group. Tags []*Tag `locationNameList:"Tag" type:"list"` // The VPC ID of the cluster subnet group. VpcId *string `type:"string"` } // String returns the string representation func (s ClusterSubnetGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClusterSubnetGroup) GoString() string { return s.String() } // Describes a cluster version, including the parameter group family and description // of the version. type ClusterVersion struct { _ struct{} `type:"structure"` // The name of the cluster parameter group family for the cluster. ClusterParameterGroupFamily *string `type:"string"` // The version number used by the cluster. ClusterVersion *string `type:"string"` // The description of the cluster version. Description *string `type:"string"` } // String returns the string representation func (s ClusterVersion) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ClusterVersion) GoString() string { return s.String() } type CopyClusterSnapshotInput struct { _ struct{} `type:"structure"` // The identifier of the cluster the source snapshot was created from. This // parameter is required if your IAM user has a policy containing a snapshot // resource element that specifies anything other than * for the cluster name. // // Constraints: // // * Must be the identifier for a valid cluster. SourceSnapshotClusterIdentifier *string `type:"string"` // The identifier for the source snapshot. // // Constraints: // // * Must be the identifier for a valid automated snapshot whose state is // available. // // SourceSnapshotIdentifier is a required field SourceSnapshotIdentifier *string `type:"string" required:"true"` // The identifier given to the new manual snapshot. // // Constraints: // // * Cannot be null, empty, or blank. // // * Must contain from 1 to 255 alphanumeric characters or hyphens. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // * Must be unique for the AWS account that is making the request. // // TargetSnapshotIdentifier is a required field TargetSnapshotIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s CopyClusterSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyClusterSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CopyClusterSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CopyClusterSnapshotInput"} if s.SourceSnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SourceSnapshotIdentifier")) } if s.TargetSnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("TargetSnapshotIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CopyClusterSnapshotOutput struct { _ struct{} `type:"structure"` // Describes a snapshot. Snapshot *Snapshot `type:"structure"` } // String returns the string representation func (s CopyClusterSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyClusterSnapshotOutput) GoString() string { return s.String() } type CreateClusterInput struct { _ struct{} `type:"structure"` // Reserved. AdditionalInfo *string `type:"string"` // If true, major version upgrades can be applied during the maintenance window // to the Amazon Redshift engine that is running on the cluster. // // When a new major version of the Amazon Redshift engine is released, you can // request that the service automatically apply upgrades during the maintenance // window to the Amazon Redshift engine that is running on your cluster. // // Default: true AllowVersionUpgrade *bool `type:"boolean"` // The number of days that automated snapshots are retained. If the value is // 0, automated snapshots are disabled. Even if automated snapshots are disabled, // you can still create manual snapshots when you want with CreateClusterSnapshot. // // Default: 1 // // Constraints: Must be a value from 0 to 35. AutomatedSnapshotRetentionPeriod *int64 `type:"integer"` // The EC2 Availability Zone (AZ) in which you want Amazon Redshift to provision // the cluster. For example, if you have several EC2 instances running in a // specific Availability Zone, then you might want the cluster to be provisioned // in the same zone in order to decrease network latency. // // Default: A random, system-chosen Availability Zone in the region that is // specified by the endpoint. // // Example: us-east-1d // // Constraint: The specified Availability Zone must be in the same region as // the current endpoint. AvailabilityZone *string `type:"string"` // A unique identifier for the cluster. You use this identifier to refer to // the cluster for any subsequent cluster operations such as deleting or modifying. // The identifier also appears in the Amazon Redshift console. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens. // // * Alphabetic characters must be lowercase. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // * Must be unique for all clusters within an AWS account. // // Example: myexamplecluster // // ClusterIdentifier is a required field ClusterIdentifier *string `type:"string" required:"true"` // The name of the parameter group to be associated with this cluster. // // Default: The default Amazon Redshift cluster parameter group. For information // about the default parameter group, go to Working with Amazon Redshift Parameter // Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) // // Constraints: // // * Must be 1 to 255 alphanumeric characters or hyphens. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. ClusterParameterGroupName *string `type:"string"` // A list of security groups to be associated with this cluster. // // Default: The default cluster security group for Amazon Redshift. ClusterSecurityGroups []*string `locationNameList:"ClusterSecurityGroupName" type:"list"` // The name of a cluster subnet group to be associated with this cluster. // // If this parameter is not provided the resulting cluster will be deployed // outside virtual private cloud (VPC). ClusterSubnetGroupName *string `type:"string"` // The type of the cluster. When cluster type is specified as // // * single-node, the NumberOfNodes parameter is not required. // // * multi-node, the NumberOfNodes parameter is required. // // Valid Values: multi-node | single-node // // Default: multi-node ClusterType *string `type:"string"` // The version of the Amazon Redshift engine software that you want to deploy // on the cluster. // // The version selected runs on all the nodes in the cluster. // // Constraints: Only version 1.0 is currently available. // // Example: 1.0 ClusterVersion *string `type:"string"` // The name of the first database to be created when the cluster is created. // // To create additional databases after the cluster is created, connect to the // cluster with a SQL client and use SQL commands to create a database. For // more information, go to Create a Database (http://docs.aws.amazon.com/redshift/latest/dg/t_creating_database.html) // in the Amazon Redshift Database Developer Guide. // // Default: dev // // Constraints: // // * Must contain 1 to 64 alphanumeric characters. // // * Must contain only lowercase letters. // // * Cannot be a word that is reserved by the service. A list of reserved // words can be found in Reserved Words (http://docs.aws.amazon.com/redshift/latest/dg/r_pg_keywords.html) // in the Amazon Redshift Database Developer Guide. DBName *string `type:"string"` // The Elastic IP (EIP) address for the cluster. // // Constraints: The cluster must be provisioned in EC2-VPC and publicly-accessible // through an Internet gateway. For more information about provisioning clusters // in EC2-VPC, go to Supported Platforms to Launch Your Cluster (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#cluster-platforms) // in the Amazon Redshift Cluster Management Guide. ElasticIp *string `type:"string"` // If true, the data in the cluster is encrypted at rest. // // Default: false Encrypted *bool `type:"boolean"` // An option that specifies whether to create the cluster with enhanced VPC // routing enabled. To create a cluster that uses enhanced VPC routing, the // cluster must be in a VPC. For more information, see Enhanced VPC Routing // (http://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html) // in the Amazon Redshift Cluster Management Guide. // // If this option is true, enhanced VPC routing is enabled. // // Default: false EnhancedVpcRouting *bool `type:"boolean"` // Specifies the name of the HSM client certificate the Amazon Redshift cluster // uses to retrieve the data encryption keys stored in an HSM. HsmClientCertificateIdentifier *string `type:"string"` // Specifies the name of the HSM configuration that contains the information // the Amazon Redshift cluster can use to retrieve and store keys in an HSM. HsmConfigurationIdentifier *string `type:"string"` // A list of AWS Identity and Access Management (IAM) roles that can be used // by the cluster to access other AWS services. You must supply the IAM roles // in their Amazon Resource Name (ARN) format. You can supply up to 10 IAM roles // in a single request. // // A cluster can have up to 10 IAM roles associated with it at any time. IamRoles []*string `locationNameList:"IamRoleArn" type:"list"` // The AWS Key Management Service (KMS) key ID of the encryption key that you // want to use to encrypt data in the cluster. KmsKeyId *string `type:"string"` // The password associated with the master user account for the cluster that // is being created. // // Constraints: // // * Must be between 8 and 64 characters in length. // // * Must contain at least one uppercase letter. // // * Must contain at least one lowercase letter. // // * Must contain one number. // // * Can be any printable ASCII character (ASCII code 33 to 126) except ' // (single quote), " (double quote), \, /, @, or space. // // MasterUserPassword is a required field MasterUserPassword *string `type:"string" required:"true"` // The user name associated with the master user account for the cluster that // is being created. // // Constraints: // // * Must be 1 - 128 alphanumeric characters. // // * First character must be a letter. // // * Cannot be a reserved word. A list of reserved words can be found in // Reserved Words (http://docs.aws.amazon.com/redshift/latest/dg/r_pg_keywords.html) // in the Amazon Redshift Database Developer Guide. // // MasterUsername is a required field MasterUsername *string `type:"string" required:"true"` // The node type to be provisioned for the cluster. For information about node // types, go to Working with Clusters (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#how-many-nodes) // in the Amazon Redshift Cluster Management Guide. // // Valid Values: ds1.xlarge | ds1.8xlarge | ds2.xlarge | ds2.8xlarge | dc1.large // | dc1.8xlarge. // // NodeType is a required field NodeType *string `type:"string" required:"true"` // The number of compute nodes in the cluster. This parameter is required when // the ClusterType parameter is specified as multi-node. // // For information about determining how many nodes you need, go to Working // with Clusters (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#how-many-nodes) // in the Amazon Redshift Cluster Management Guide. // // If you don't specify this parameter, you get a single-node cluster. When // requesting a multi-node cluster, you must specify the number of nodes that // you want in the cluster. // // Default: 1 // // Constraints: Value must be at least 1 and no more than 100. NumberOfNodes *int64 `type:"integer"` // The port number on which the cluster accepts incoming connections. // // The cluster is accessible only via the JDBC and ODBC connection strings. // Part of the connection string requires the port on which the cluster will // listen for incoming connections. // // Default: 5439 // // Valid Values: 1150-65535 Port *int64 `type:"integer"` // The weekly time range (in UTC) during which automated cluster maintenance // can occur. // // Format: ddd:hh24:mi-ddd:hh24:mi // // Default: A 30-minute window selected at random from an 8-hour block of time // per region, occurring on a random day of the week. For more information about // the time blocks for each region, see Maintenance Windows (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#rs-maintenance-windows) // in Amazon Redshift Cluster Management Guide. // // Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun // // Constraints: Minimum 30-minute window. PreferredMaintenanceWindow *string `type:"string"` // If true, the cluster can be accessed from a public network. PubliclyAccessible *bool `type:"boolean"` // A list of tag instances. Tags []*Tag `locationNameList:"Tag" type:"list"` // A list of Virtual Private Cloud (VPC) security groups to be associated with // the cluster. // // Default: The default VPC security group is associated with the cluster. VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` } // String returns the string representation func (s CreateClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateClusterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateClusterInput"} if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } if s.MasterUserPassword == nil { invalidParams.Add(request.NewErrParamRequired("MasterUserPassword")) } if s.MasterUsername == nil { invalidParams.Add(request.NewErrParamRequired("MasterUsername")) } if s.NodeType == nil { invalidParams.Add(request.NewErrParamRequired("NodeType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateClusterOutput struct { _ struct{} `type:"structure"` // Describes a cluster. Cluster *Cluster `type:"structure"` } // String returns the string representation func (s CreateClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateClusterOutput) GoString() string { return s.String() } type CreateClusterParameterGroupInput struct { _ struct{} `type:"structure"` // A description of the parameter group. // // Description is a required field Description *string `type:"string" required:"true"` // The Amazon Redshift engine version to which the cluster parameter group applies. // The cluster engine version determines the set of parameters. // // To get a list of valid parameter group family names, you can call DescribeClusterParameterGroups. // By default, Amazon Redshift returns a list of all the parameter groups that // are owned by your AWS account, including the default parameter groups for // each Amazon Redshift engine version. The parameter group family names associated // with the default parameter groups provide you the valid values. For example, // a valid family name is "redshift-1.0". // // ParameterGroupFamily is a required field ParameterGroupFamily *string `type:"string" required:"true"` // The name of the cluster parameter group. // // Constraints: // // * Must be 1 to 255 alphanumeric characters or hyphens // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // * Must be unique withing your AWS account. // // This value is stored as a lower-case string. // // ParameterGroupName is a required field ParameterGroupName *string `type:"string" required:"true"` // A list of tag instances. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateClusterParameterGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateClusterParameterGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateClusterParameterGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateClusterParameterGroupInput"} if s.Description == nil { invalidParams.Add(request.NewErrParamRequired("Description")) } if s.ParameterGroupFamily == nil { invalidParams.Add(request.NewErrParamRequired("ParameterGroupFamily")) } if s.ParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("ParameterGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateClusterParameterGroupOutput struct { _ struct{} `type:"structure"` // Describes a parameter group. ClusterParameterGroup *ClusterParameterGroup `type:"structure"` } // String returns the string representation func (s CreateClusterParameterGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateClusterParameterGroupOutput) GoString() string { return s.String() } type CreateClusterSecurityGroupInput struct { _ struct{} `type:"structure"` // The name for the security group. Amazon Redshift stores the value as a lowercase // string. // // Constraints: // // * Must contain no more than 255 alphanumeric characters or hyphens. // // * Must not be "Default". // // * Must be unique for all security groups that are created by your AWS // account. // // Example: examplesecuritygroup // // ClusterSecurityGroupName is a required field ClusterSecurityGroupName *string `type:"string" required:"true"` // A description for the security group. // // Description is a required field Description *string `type:"string" required:"true"` // A list of tag instances. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateClusterSecurityGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateClusterSecurityGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateClusterSecurityGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateClusterSecurityGroupInput"} if s.ClusterSecurityGroupName == nil { invalidParams.Add(request.NewErrParamRequired("ClusterSecurityGroupName")) } if s.Description == nil { invalidParams.Add(request.NewErrParamRequired("Description")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateClusterSecurityGroupOutput struct { _ struct{} `type:"structure"` // Describes a security group. ClusterSecurityGroup *ClusterSecurityGroup `type:"structure"` } // String returns the string representation func (s CreateClusterSecurityGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateClusterSecurityGroupOutput) GoString() string { return s.String() } type CreateClusterSnapshotInput struct { _ struct{} `type:"structure"` // The cluster identifier for which you want a snapshot. // // ClusterIdentifier is a required field ClusterIdentifier *string `type:"string" required:"true"` // A unique identifier for the snapshot that you are requesting. This identifier // must be unique for all snapshots within the AWS account. // // Constraints: // // * Cannot be null, empty, or blank // // * Must contain from 1 to 255 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens // // Example: my-snapshot-id // // SnapshotIdentifier is a required field SnapshotIdentifier *string `type:"string" required:"true"` // A list of tag instances. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateClusterSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateClusterSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateClusterSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateClusterSnapshotInput"} if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } if s.SnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateClusterSnapshotOutput struct { _ struct{} `type:"structure"` // Describes a snapshot. Snapshot *Snapshot `type:"structure"` } // String returns the string representation func (s CreateClusterSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateClusterSnapshotOutput) GoString() string { return s.String() } type CreateClusterSubnetGroupInput struct { _ struct{} `type:"structure"` // The name for the subnet group. Amazon Redshift stores the value as a lowercase // string. // // Constraints: // // * Must contain no more than 255 alphanumeric characters or hyphens. // // * Must not be "Default". // // * Must be unique for all subnet groups that are created by your AWS account. // // Example: examplesubnetgroup // // ClusterSubnetGroupName is a required field ClusterSubnetGroupName *string `type:"string" required:"true"` // A description for the subnet group. // // Description is a required field Description *string `type:"string" required:"true"` // An array of VPC subnet IDs. A maximum of 20 subnets can be modified in a // single request. // // SubnetIds is a required field SubnetIds []*string `locationNameList:"SubnetIdentifier" type:"list" required:"true"` // A list of tag instances. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateClusterSubnetGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateClusterSubnetGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateClusterSubnetGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateClusterSubnetGroupInput"} if s.ClusterSubnetGroupName == nil { invalidParams.Add(request.NewErrParamRequired("ClusterSubnetGroupName")) } if s.Description == nil { invalidParams.Add(request.NewErrParamRequired("Description")) } if s.SubnetIds == nil { invalidParams.Add(request.NewErrParamRequired("SubnetIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateClusterSubnetGroupOutput struct { _ struct{} `type:"structure"` // Describes a subnet group. ClusterSubnetGroup *ClusterSubnetGroup `type:"structure"` } // String returns the string representation func (s CreateClusterSubnetGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateClusterSubnetGroupOutput) GoString() string { return s.String() } type CreateEventSubscriptionInput struct { _ struct{} `type:"structure"` // A Boolean value; set to true to activate the subscription, set to false to // create the subscription but not active it. Enabled *bool `type:"boolean"` // Specifies the Amazon Redshift event categories to be published by the event // notification subscription. // // Values: Configuration, Management, Monitoring, Security EventCategories []*string `locationNameList:"EventCategory" type:"list"` // Specifies the Amazon Redshift event severity to be published by the event // notification subscription. // // Values: ERROR, INFO Severity *string `type:"string"` // The Amazon Resource Name (ARN) of the Amazon SNS topic used to transmit the // event notifications. The ARN is created by Amazon SNS when you create a topic // and subscribe to it. // // SnsTopicArn is a required field SnsTopicArn *string `type:"string" required:"true"` // A list of one or more identifiers of Amazon Redshift source objects. All // of the objects must be of the same type as was specified in the source type // parameter. The event subscription will return only events generated by the // specified objects. If not specified, then events are returned for all objects // within the source type specified. // // Example: my-cluster-1, my-cluster-2 // // Example: my-snapshot-20131010 SourceIds []*string `locationNameList:"SourceId" type:"list"` // The type of source that will be generating the events. For example, if you // want to be notified of events generated by a cluster, you would set this // parameter to cluster. If this value is not specified, events are returned // for all Amazon Redshift objects in your AWS account. You must specify a source // type in order to specify source IDs. // // Valid values: cluster, cluster-parameter-group, cluster-security-group, and // cluster-snapshot. SourceType *string `type:"string"` // The name of the event subscription to be created. // // Constraints: // // * Cannot be null, empty, or blank. // // * Must contain from 1 to 255 alphanumeric characters or hyphens. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // SubscriptionName is a required field SubscriptionName *string `type:"string" required:"true"` // A list of tag instances. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateEventSubscriptionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateEventSubscriptionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateEventSubscriptionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateEventSubscriptionInput"} if s.SnsTopicArn == nil { invalidParams.Add(request.NewErrParamRequired("SnsTopicArn")) } if s.SubscriptionName == nil { invalidParams.Add(request.NewErrParamRequired("SubscriptionName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateEventSubscriptionOutput struct { _ struct{} `type:"structure"` // Describes event subscriptions. EventSubscription *EventSubscription `type:"structure"` } // String returns the string representation func (s CreateEventSubscriptionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateEventSubscriptionOutput) GoString() string { return s.String() } type CreateHsmClientCertificateInput struct { _ struct{} `type:"structure"` // The identifier to be assigned to the new HSM client certificate that the // cluster will use to connect to the HSM to use the database encryption keys. // // HsmClientCertificateIdentifier is a required field HsmClientCertificateIdentifier *string `type:"string" required:"true"` // A list of tag instances. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateHsmClientCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateHsmClientCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateHsmClientCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateHsmClientCertificateInput"} if s.HsmClientCertificateIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("HsmClientCertificateIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateHsmClientCertificateOutput struct { _ struct{} `type:"structure"` // Returns information about an HSM client certificate. The certificate is stored // in a secure Hardware Storage Module (HSM), and used by the Amazon Redshift // cluster to encrypt data files. HsmClientCertificate *HsmClientCertificate `type:"structure"` } // String returns the string representation func (s CreateHsmClientCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateHsmClientCertificateOutput) GoString() string { return s.String() } type CreateHsmConfigurationInput struct { _ struct{} `type:"structure"` // A text description of the HSM configuration to be created. // // Description is a required field Description *string `type:"string" required:"true"` // The identifier to be assigned to the new Amazon Redshift HSM configuration. // // HsmConfigurationIdentifier is a required field HsmConfigurationIdentifier *string `type:"string" required:"true"` // The IP address that the Amazon Redshift cluster must use to access the HSM. // // HsmIpAddress is a required field HsmIpAddress *string `type:"string" required:"true"` // The name of the partition in the HSM where the Amazon Redshift clusters will // store their database encryption keys. // // HsmPartitionName is a required field HsmPartitionName *string `type:"string" required:"true"` // The password required to access the HSM partition. // // HsmPartitionPassword is a required field HsmPartitionPassword *string `type:"string" required:"true"` // The HSMs public certificate file. When using Cloud HSM, the file name is // server.pem. // // HsmServerPublicCertificate is a required field HsmServerPublicCertificate *string `type:"string" required:"true"` // A list of tag instances. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateHsmConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateHsmConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateHsmConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateHsmConfigurationInput"} if s.Description == nil { invalidParams.Add(request.NewErrParamRequired("Description")) } if s.HsmConfigurationIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("HsmConfigurationIdentifier")) } if s.HsmIpAddress == nil { invalidParams.Add(request.NewErrParamRequired("HsmIpAddress")) } if s.HsmPartitionName == nil { invalidParams.Add(request.NewErrParamRequired("HsmPartitionName")) } if s.HsmPartitionPassword == nil { invalidParams.Add(request.NewErrParamRequired("HsmPartitionPassword")) } if s.HsmServerPublicCertificate == nil { invalidParams.Add(request.NewErrParamRequired("HsmServerPublicCertificate")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateHsmConfigurationOutput struct { _ struct{} `type:"structure"` // Returns information about an HSM configuration, which is an object that describes // to Amazon Redshift clusters the information they require to connect to an // HSM where they can store database encryption keys. HsmConfiguration *HsmConfiguration `type:"structure"` } // String returns the string representation func (s CreateHsmConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateHsmConfigurationOutput) GoString() string { return s.String() } // The result of the CreateSnapshotCopyGrant action. type CreateSnapshotCopyGrantInput struct { _ struct{} `type:"structure"` // The unique identifier of the customer master key (CMK) to which to grant // Amazon Redshift permission. If no key is specified, the default key is used. KmsKeyId *string `type:"string"` // The name of the snapshot copy grant. This name must be unique in the region // for the AWS account. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens. // // * Alphabetic characters must be lowercase. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // * Must be unique for all clusters within an AWS account. // // SnapshotCopyGrantName is a required field SnapshotCopyGrantName *string `type:"string" required:"true"` // A list of tag instances. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s CreateSnapshotCopyGrantInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSnapshotCopyGrantInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateSnapshotCopyGrantInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateSnapshotCopyGrantInput"} if s.SnapshotCopyGrantName == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotCopyGrantName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateSnapshotCopyGrantOutput struct { _ struct{} `type:"structure"` // The snapshot copy grant that grants Amazon Redshift permission to encrypt // copied snapshots with the specified customer master key (CMK) from AWS KMS // in the destination region. // // For more information about managing snapshot copy grants, go to Amazon Redshift // Database Encryption (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-db-encryption.html) // in the Amazon Redshift Cluster Management Guide. SnapshotCopyGrant *SnapshotCopyGrant `type:"structure"` } // String returns the string representation func (s CreateSnapshotCopyGrantOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSnapshotCopyGrantOutput) GoString() string { return s.String() } // Contains the output from the CreateTags action. type CreateTagsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) to which you want to add the tag or tags. // For example, arn:aws:redshift:us-east-1:123456789:cluster:t1. // // ResourceName is a required field ResourceName *string `type:"string" required:"true"` // One or more name/value pairs to add as tags to the specified resource. Each // tag name is passed in with the parameter Key and the corresponding value // is passed in with the parameter Value. The Key and Value parameters are separated // by a comma (,). Separate multiple tags with a space. For example, --tags // "Key"="owner","Value"="admin" "Key"="environment","Value"="test" "Key"="version","Value"="1.0". // // Tags is a required field Tags []*Tag `locationNameList:"Tag" type:"list" required:"true"` } // String returns the string representation func (s CreateTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateTagsInput"} if s.ResourceName == nil { invalidParams.Add(request.NewErrParamRequired("ResourceName")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTagsOutput) GoString() string { return s.String() } // Describes the default cluster parameters for a parameter group family. type DefaultClusterParameters struct { _ struct{} `type:"structure"` // A value that indicates the starting point for the next set of response records // in a subsequent request. If a value is returned in a response, you can retrieve // the next set of records by providing this returned marker value in the Marker // parameter and retrying the command. If the Marker field is empty, all response // records have been retrieved for the request. Marker *string `type:"string"` // The name of the cluster parameter group family to which the engine default // parameters apply. ParameterGroupFamily *string `type:"string"` // The list of cluster default parameters. Parameters []*Parameter `locationNameList:"Parameter" type:"list"` } // String returns the string representation func (s DefaultClusterParameters) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DefaultClusterParameters) GoString() string { return s.String() } type DeleteClusterInput struct { _ struct{} `type:"structure"` // The identifier of the cluster to be deleted. // // Constraints: // // * Must contain lowercase characters. // // * Must contain from 1 to 63 alphanumeric characters or hyphens. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // ClusterIdentifier is a required field ClusterIdentifier *string `type:"string" required:"true"` // The identifier of the final snapshot that is to be created immediately before // deleting the cluster. If this parameter is provided, SkipFinalClusterSnapshot // must be false. // // Constraints: // // * Must be 1 to 255 alphanumeric characters. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. FinalClusterSnapshotIdentifier *string `type:"string"` // Determines whether a final snapshot of the cluster is created before Amazon // Redshift deletes the cluster. If true, a final cluster snapshot is not created. // If false, a final cluster snapshot is created before the cluster is deleted. // // The FinalClusterSnapshotIdentifier parameter must be specified if SkipFinalClusterSnapshot // is false. // // Default: false SkipFinalClusterSnapshot *bool `type:"boolean"` } // String returns the string representation func (s DeleteClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteClusterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteClusterInput"} if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteClusterOutput struct { _ struct{} `type:"structure"` // Describes a cluster. Cluster *Cluster `type:"structure"` } // String returns the string representation func (s DeleteClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteClusterOutput) GoString() string { return s.String() } type DeleteClusterParameterGroupInput struct { _ struct{} `type:"structure"` // The name of the parameter group to be deleted. // // Constraints: // // * Must be the name of an existing cluster parameter group. // // * Cannot delete a default cluster parameter group. // // ParameterGroupName is a required field ParameterGroupName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteClusterParameterGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteClusterParameterGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteClusterParameterGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteClusterParameterGroupInput"} if s.ParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("ParameterGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteClusterParameterGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteClusterParameterGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteClusterParameterGroupOutput) GoString() string { return s.String() } type DeleteClusterSecurityGroupInput struct { _ struct{} `type:"structure"` // The name of the cluster security group to be deleted. // // ClusterSecurityGroupName is a required field ClusterSecurityGroupName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteClusterSecurityGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteClusterSecurityGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteClusterSecurityGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteClusterSecurityGroupInput"} if s.ClusterSecurityGroupName == nil { invalidParams.Add(request.NewErrParamRequired("ClusterSecurityGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteClusterSecurityGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteClusterSecurityGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteClusterSecurityGroupOutput) GoString() string { return s.String() } type DeleteClusterSnapshotInput struct { _ struct{} `type:"structure"` // The unique identifier of the cluster the snapshot was created from. This // parameter is required if your IAM user has a policy containing a snapshot // resource element that specifies anything other than * for the cluster name. // // Constraints: Must be the name of valid cluster. SnapshotClusterIdentifier *string `type:"string"` // The unique identifier of the manual snapshot to be deleted. // // Constraints: Must be the name of an existing snapshot that is in the available // state. // // SnapshotIdentifier is a required field SnapshotIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteClusterSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteClusterSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteClusterSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteClusterSnapshotInput"} if s.SnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteClusterSnapshotOutput struct { _ struct{} `type:"structure"` // Describes a snapshot. Snapshot *Snapshot `type:"structure"` } // String returns the string representation func (s DeleteClusterSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteClusterSnapshotOutput) GoString() string { return s.String() } type DeleteClusterSubnetGroupInput struct { _ struct{} `type:"structure"` // The name of the cluster subnet group name to be deleted. // // ClusterSubnetGroupName is a required field ClusterSubnetGroupName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteClusterSubnetGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteClusterSubnetGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteClusterSubnetGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteClusterSubnetGroupInput"} if s.ClusterSubnetGroupName == nil { invalidParams.Add(request.NewErrParamRequired("ClusterSubnetGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteClusterSubnetGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteClusterSubnetGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteClusterSubnetGroupOutput) GoString() string { return s.String() } type DeleteEventSubscriptionInput struct { _ struct{} `type:"structure"` // The name of the Amazon Redshift event notification subscription to be deleted. // // SubscriptionName is a required field SubscriptionName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteEventSubscriptionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteEventSubscriptionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteEventSubscriptionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteEventSubscriptionInput"} if s.SubscriptionName == nil { invalidParams.Add(request.NewErrParamRequired("SubscriptionName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteEventSubscriptionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteEventSubscriptionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteEventSubscriptionOutput) GoString() string { return s.String() } type DeleteHsmClientCertificateInput struct { _ struct{} `type:"structure"` // The identifier of the HSM client certificate to be deleted. // // HsmClientCertificateIdentifier is a required field HsmClientCertificateIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteHsmClientCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteHsmClientCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteHsmClientCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteHsmClientCertificateInput"} if s.HsmClientCertificateIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("HsmClientCertificateIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteHsmClientCertificateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteHsmClientCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteHsmClientCertificateOutput) GoString() string { return s.String() } type DeleteHsmConfigurationInput struct { _ struct{} `type:"structure"` // The identifier of the Amazon Redshift HSM configuration to be deleted. // // HsmConfigurationIdentifier is a required field HsmConfigurationIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteHsmConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteHsmConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteHsmConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteHsmConfigurationInput"} if s.HsmConfigurationIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("HsmConfigurationIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteHsmConfigurationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteHsmConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteHsmConfigurationOutput) GoString() string { return s.String() } // The result of the DeleteSnapshotCopyGrant action. type DeleteSnapshotCopyGrantInput struct { _ struct{} `type:"structure"` // The name of the snapshot copy grant to delete. // // SnapshotCopyGrantName is a required field SnapshotCopyGrantName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteSnapshotCopyGrantInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSnapshotCopyGrantInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteSnapshotCopyGrantInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteSnapshotCopyGrantInput"} if s.SnapshotCopyGrantName == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotCopyGrantName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteSnapshotCopyGrantOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteSnapshotCopyGrantOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSnapshotCopyGrantOutput) GoString() string { return s.String() } // Contains the output from the DeleteTags action. type DeleteTagsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) from which you want to remove the tag or tags. // For example, arn:aws:redshift:us-east-1:123456789:cluster:t1. // // ResourceName is a required field ResourceName *string `type:"string" required:"true"` // The tag key that you want to delete. // // TagKeys is a required field TagKeys []*string `locationNameList:"TagKey" type:"list" required:"true"` } // String returns the string representation func (s DeleteTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTagsInput"} if s.ResourceName == nil { invalidParams.Add(request.NewErrParamRequired("ResourceName")) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTagsOutput) GoString() string { return s.String() } type DescribeClusterParameterGroupsInput struct { _ struct{} `type:"structure"` // An optional parameter that specifies the starting point to return a set of // response records. When the results of a DescribeClusterParameterGroups request // exceed the value specified in MaxRecords, AWS returns a value in the Marker // field of the response. You can retrieve the next set of response records // by providing the returned marker value in the Marker parameter and retrying // the request. Marker *string `type:"string"` // The maximum number of response records to return in each call. If the number // of remaining response records exceeds the specified MaxRecords value, a value // is returned in a marker field of the response. You can retrieve the next // set of records by retrying the command with the returned marker value. // // Default: 100 // // Constraints: minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The name of a specific parameter group for which to return details. By default, // details about all parameter groups and the default parameter group are returned. ParameterGroupName *string `type:"string"` // A tag key or keys for which you want to return all matching cluster parameter // groups that are associated with the specified key or keys. For example, suppose // that you have parameter groups that are tagged with keys called owner and // environment. If you specify both of these tag keys in the request, Amazon // Redshift returns a response with the parameter groups that have either or // both of these tag keys associated with them. TagKeys []*string `locationNameList:"TagKey" type:"list"` // A tag value or values for which you want to return all matching cluster parameter // groups that are associated with the specified tag value or values. For example, // suppose that you have parameter groups that are tagged with values called // admin and test. If you specify both of these tag values in the request, Amazon // Redshift returns a response with the parameter groups that have either or // both of these tag values associated with them. TagValues []*string `locationNameList:"TagValue" type:"list"` } // String returns the string representation func (s DescribeClusterParameterGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClusterParameterGroupsInput) GoString() string { return s.String() } // Contains the output from the DescribeClusterParameterGroups action. type DescribeClusterParameterGroupsOutput struct { _ struct{} `type:"structure"` // A value that indicates the starting point for the next set of response records // in a subsequent request. If a value is returned in a response, you can retrieve // the next set of records by providing this returned marker value in the Marker // parameter and retrying the command. If the Marker field is empty, all response // records have been retrieved for the request. Marker *string `type:"string"` // A list of ClusterParameterGroup instances. Each instance describes one cluster // parameter group. ParameterGroups []*ClusterParameterGroup `locationNameList:"ClusterParameterGroup" type:"list"` } // String returns the string representation func (s DescribeClusterParameterGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClusterParameterGroupsOutput) GoString() string { return s.String() } type DescribeClusterParametersInput struct { _ struct{} `type:"structure"` // An optional parameter that specifies the starting point to return a set of // response records. When the results of a DescribeClusterParameters request // exceed the value specified in MaxRecords, AWS returns a value in the Marker // field of the response. You can retrieve the next set of response records // by providing the returned marker value in the Marker parameter and retrying // the request. Marker *string `type:"string"` // The maximum number of response records to return in each call. If the number // of remaining response records exceeds the specified MaxRecords value, a value // is returned in a marker field of the response. You can retrieve the next // set of records by retrying the command with the returned marker value. // // Default: 100 // // Constraints: minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The name of a cluster parameter group for which to return details. // // ParameterGroupName is a required field ParameterGroupName *string `type:"string" required:"true"` // The parameter types to return. Specify user to show parameters that are different // form the default. Similarly, specify engine-default to show parameters that // are the same as the default parameter group. // // Default: All parameter types returned. // // Valid Values: user | engine-default Source *string `type:"string"` } // String returns the string representation func (s DescribeClusterParametersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClusterParametersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeClusterParametersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeClusterParametersInput"} if s.ParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("ParameterGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the output from the DescribeClusterParameters action. type DescribeClusterParametersOutput struct { _ struct{} `type:"structure"` // A value that indicates the starting point for the next set of response records // in a subsequent request. If a value is returned in a response, you can retrieve // the next set of records by providing this returned marker value in the Marker // parameter and retrying the command. If the Marker field is empty, all response // records have been retrieved for the request. Marker *string `type:"string"` // A list of Parameter instances. Each instance lists the parameters of one // cluster parameter group. Parameters []*Parameter `locationNameList:"Parameter" type:"list"` } // String returns the string representation func (s DescribeClusterParametersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClusterParametersOutput) GoString() string { return s.String() } type DescribeClusterSecurityGroupsInput struct { _ struct{} `type:"structure"` // The name of a cluster security group for which you are requesting details. // You can specify either the Marker parameter or a ClusterSecurityGroupName // parameter, but not both. // // Example: securitygroup1 ClusterSecurityGroupName *string `type:"string"` // An optional parameter that specifies the starting point to return a set of // response records. When the results of a DescribeClusterSecurityGroups request // exceed the value specified in MaxRecords, AWS returns a value in the Marker // field of the response. You can retrieve the next set of response records // by providing the returned marker value in the Marker parameter and retrying // the request. // // Constraints: You can specify either the ClusterSecurityGroupName parameter // or the Marker parameter, but not both. Marker *string `type:"string"` // The maximum number of response records to return in each call. If the number // of remaining response records exceeds the specified MaxRecords value, a value // is returned in a marker field of the response. You can retrieve the next // set of records by retrying the command with the returned marker value. // // Default: 100 // // Constraints: minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // A tag key or keys for which you want to return all matching cluster security // groups that are associated with the specified key or keys. For example, suppose // that you have security groups that are tagged with keys called owner and // environment. If you specify both of these tag keys in the request, Amazon // Redshift returns a response with the security groups that have either or // both of these tag keys associated with them. TagKeys []*string `locationNameList:"TagKey" type:"list"` // A tag value or values for which you want to return all matching cluster security // groups that are associated with the specified tag value or values. For example, // suppose that you have security groups that are tagged with values called // admin and test. If you specify both of these tag values in the request, Amazon // Redshift returns a response with the security groups that have either or // both of these tag values associated with them. TagValues []*string `locationNameList:"TagValue" type:"list"` } // String returns the string representation func (s DescribeClusterSecurityGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClusterSecurityGroupsInput) GoString() string { return s.String() } type DescribeClusterSecurityGroupsOutput struct { _ struct{} `type:"structure"` // A list of ClusterSecurityGroup instances. ClusterSecurityGroups []*ClusterSecurityGroup `locationNameList:"ClusterSecurityGroup" type:"list"` // A value that indicates the starting point for the next set of response records // in a subsequent request. If a value is returned in a response, you can retrieve // the next set of records by providing this returned marker value in the Marker // parameter and retrying the command. If the Marker field is empty, all response // records have been retrieved for the request. Marker *string `type:"string"` } // String returns the string representation func (s DescribeClusterSecurityGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClusterSecurityGroupsOutput) GoString() string { return s.String() } type DescribeClusterSnapshotsInput struct { _ struct{} `type:"structure"` // The identifier of the cluster for which information about snapshots is requested. ClusterIdentifier *string `type:"string"` // A time value that requests only snapshots created at or before the specified // time. The time value is specified in ISO 8601 format. For more information // about ISO 8601, go to the ISO8601 Wikipedia page. (http://en.wikipedia.org/wiki/ISO_8601) // // Example: 2012-07-16T18:00:00Z EndTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // An optional parameter that specifies the starting point to return a set of // response records. When the results of a DescribeClusterSnapshots request // exceed the value specified in MaxRecords, AWS returns a value in the Marker // field of the response. You can retrieve the next set of response records // by providing the returned marker value in the Marker parameter and retrying // the request. Marker *string `type:"string"` // The maximum number of response records to return in each call. If the number // of remaining response records exceeds the specified MaxRecords value, a value // is returned in a marker field of the response. You can retrieve the next // set of records by retrying the command with the returned marker value. // // Default: 100 // // Constraints: minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The AWS customer account used to create or copy the snapshot. Use this field // to filter the results to snapshots owned by a particular account. To describe // snapshots you own, either specify your AWS customer account, or do not specify // the parameter. OwnerAccount *string `type:"string"` // The snapshot identifier of the snapshot about which to return information. SnapshotIdentifier *string `type:"string"` // The type of snapshots for which you are requesting information. By default, // snapshots of all types are returned. // // Valid Values: automated | manual SnapshotType *string `type:"string"` // A value that requests only snapshots created at or after the specified time. // The time value is specified in ISO 8601 format. For more information about // ISO 8601, go to the ISO8601 Wikipedia page. (http://en.wikipedia.org/wiki/ISO_8601) // // Example: 2012-07-16T18:00:00Z StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // A tag key or keys for which you want to return all matching cluster snapshots // that are associated with the specified key or keys. For example, suppose // that you have snapshots that are tagged with keys called owner and environment. // If you specify both of these tag keys in the request, Amazon Redshift returns // a response with the snapshots that have either or both of these tag keys // associated with them. TagKeys []*string `locationNameList:"TagKey" type:"list"` // A tag value or values for which you want to return all matching cluster snapshots // that are associated with the specified tag value or values. For example, // suppose that you have snapshots that are tagged with values called admin // and test. If you specify both of these tag values in the request, Amazon // Redshift returns a response with the snapshots that have either or both of // these tag values associated with them. TagValues []*string `locationNameList:"TagValue" type:"list"` } // String returns the string representation func (s DescribeClusterSnapshotsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClusterSnapshotsInput) GoString() string { return s.String() } // Contains the output from the DescribeClusterSnapshots action. type DescribeClusterSnapshotsOutput struct { _ struct{} `type:"structure"` // A value that indicates the starting point for the next set of response records // in a subsequent request. If a value is returned in a response, you can retrieve // the next set of records by providing this returned marker value in the Marker // parameter and retrying the command. If the Marker field is empty, all response // records have been retrieved for the request. Marker *string `type:"string"` // A list of Snapshot instances. Snapshots []*Snapshot `locationNameList:"Snapshot" type:"list"` } // String returns the string representation func (s DescribeClusterSnapshotsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClusterSnapshotsOutput) GoString() string { return s.String() } type DescribeClusterSubnetGroupsInput struct { _ struct{} `type:"structure"` // The name of the cluster subnet group for which information is requested. ClusterSubnetGroupName *string `type:"string"` // An optional parameter that specifies the starting point to return a set of // response records. When the results of a DescribeClusterSubnetGroups request // exceed the value specified in MaxRecords, AWS returns a value in the Marker // field of the response. You can retrieve the next set of response records // by providing the returned marker value in the Marker parameter and retrying // the request. Marker *string `type:"string"` // The maximum number of response records to return in each call. If the number // of remaining response records exceeds the specified MaxRecords value, a value // is returned in a marker field of the response. You can retrieve the next // set of records by retrying the command with the returned marker value. // // Default: 100 // // Constraints: minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // A tag key or keys for which you want to return all matching cluster subnet // groups that are associated with the specified key or keys. For example, suppose // that you have subnet groups that are tagged with keys called owner and environment. // If you specify both of these tag keys in the request, Amazon Redshift returns // a response with the subnet groups that have either or both of these tag keys // associated with them. TagKeys []*string `locationNameList:"TagKey" type:"list"` // A tag value or values for which you want to return all matching cluster subnet // groups that are associated with the specified tag value or values. For example, // suppose that you have subnet groups that are tagged with values called admin // and test. If you specify both of these tag values in the request, Amazon // Redshift returns a response with the subnet groups that have either or both // of these tag values associated with them. TagValues []*string `locationNameList:"TagValue" type:"list"` } // String returns the string representation func (s DescribeClusterSubnetGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClusterSubnetGroupsInput) GoString() string { return s.String() } // Contains the output from the DescribeClusterSubnetGroups action. type DescribeClusterSubnetGroupsOutput struct { _ struct{} `type:"structure"` // A list of ClusterSubnetGroup instances. ClusterSubnetGroups []*ClusterSubnetGroup `locationNameList:"ClusterSubnetGroup" type:"list"` // A value that indicates the starting point for the next set of response records // in a subsequent request. If a value is returned in a response, you can retrieve // the next set of records by providing this returned marker value in the Marker // parameter and retrying the command. If the Marker field is empty, all response // records have been retrieved for the request. Marker *string `type:"string"` } // String returns the string representation func (s DescribeClusterSubnetGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClusterSubnetGroupsOutput) GoString() string { return s.String() } type DescribeClusterVersionsInput struct { _ struct{} `type:"structure"` // The name of a specific cluster parameter group family to return details for. // // Constraints: // // * Must be 1 to 255 alphanumeric characters // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens ClusterParameterGroupFamily *string `type:"string"` // The specific cluster version to return. // // Example: 1.0 ClusterVersion *string `type:"string"` // An optional parameter that specifies the starting point to return a set of // response records. When the results of a DescribeClusterVersions request exceed // the value specified in MaxRecords, AWS returns a value in the Marker field // of the response. You can retrieve the next set of response records by providing // the returned marker value in the Marker parameter and retrying the request. Marker *string `type:"string"` // The maximum number of response records to return in each call. If the number // of remaining response records exceeds the specified MaxRecords value, a value // is returned in a marker field of the response. You can retrieve the next // set of records by retrying the command with the returned marker value. // // Default: 100 // // Constraints: minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` } // String returns the string representation func (s DescribeClusterVersionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClusterVersionsInput) GoString() string { return s.String() } // Contains the output from the DescribeClusterVersions action. type DescribeClusterVersionsOutput struct { _ struct{} `type:"structure"` // A list of Version elements. ClusterVersions []*ClusterVersion `locationNameList:"ClusterVersion" type:"list"` // A value that indicates the starting point for the next set of response records // in a subsequent request. If a value is returned in a response, you can retrieve // the next set of records by providing this returned marker value in the Marker // parameter and retrying the command. If the Marker field is empty, all response // records have been retrieved for the request. Marker *string `type:"string"` } // String returns the string representation func (s DescribeClusterVersionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClusterVersionsOutput) GoString() string { return s.String() } type DescribeClustersInput struct { _ struct{} `type:"structure"` // The unique identifier of a cluster whose properties you are requesting. This // parameter is case sensitive. // // The default is that all clusters defined for an account are returned. ClusterIdentifier *string `type:"string"` // An optional parameter that specifies the starting point to return a set of // response records. When the results of a DescribeClusters request exceed the // value specified in MaxRecords, AWS returns a value in the Marker field of // the response. You can retrieve the next set of response records by providing // the returned marker value in the Marker parameter and retrying the request. // // Constraints: You can specify either the ClusterIdentifier parameter or the // Marker parameter, but not both. Marker *string `type:"string"` // The maximum number of response records to return in each call. If the number // of remaining response records exceeds the specified MaxRecords value, a value // is returned in a marker field of the response. You can retrieve the next // set of records by retrying the command with the returned marker value. // // Default: 100 // // Constraints: minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // A tag key or keys for which you want to return all matching clusters that // are associated with the specified key or keys. For example, suppose that // you have clusters that are tagged with keys called owner and environment. // If you specify both of these tag keys in the request, Amazon Redshift returns // a response with the clusters that have either or both of these tag keys associated // with them. TagKeys []*string `locationNameList:"TagKey" type:"list"` // A tag value or values for which you want to return all matching clusters // that are associated with the specified tag value or values. For example, // suppose that you have clusters that are tagged with values called admin and // test. If you specify both of these tag values in the request, Amazon Redshift // returns a response with the clusters that have either or both of these tag // values associated with them. TagValues []*string `locationNameList:"TagValue" type:"list"` } // String returns the string representation func (s DescribeClustersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClustersInput) GoString() string { return s.String() } // Contains the output from the DescribeClusters action. type DescribeClustersOutput struct { _ struct{} `type:"structure"` // A list of Cluster objects, where each object describes one cluster. Clusters []*Cluster `locationNameList:"Cluster" type:"list"` // A value that indicates the starting point for the next set of response records // in a subsequent request. If a value is returned in a response, you can retrieve // the next set of records by providing this returned marker value in the Marker // parameter and retrying the command. If the Marker field is empty, all response // records have been retrieved for the request. Marker *string `type:"string"` } // String returns the string representation func (s DescribeClustersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeClustersOutput) GoString() string { return s.String() } type DescribeDefaultClusterParametersInput struct { _ struct{} `type:"structure"` // An optional parameter that specifies the starting point to return a set of // response records. When the results of a DescribeDefaultClusterParameters // request exceed the value specified in MaxRecords, AWS returns a value in // the Marker field of the response. You can retrieve the next set of response // records by providing the returned marker value in the Marker parameter and // retrying the request. Marker *string `type:"string"` // The maximum number of response records to return in each call. If the number // of remaining response records exceeds the specified MaxRecords value, a value // is returned in a marker field of the response. You can retrieve the next // set of records by retrying the command with the returned marker value. // // Default: 100 // // Constraints: minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The name of the cluster parameter group family. // // ParameterGroupFamily is a required field ParameterGroupFamily *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeDefaultClusterParametersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDefaultClusterParametersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDefaultClusterParametersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDefaultClusterParametersInput"} if s.ParameterGroupFamily == nil { invalidParams.Add(request.NewErrParamRequired("ParameterGroupFamily")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeDefaultClusterParametersOutput struct { _ struct{} `type:"structure"` // Describes the default cluster parameters for a parameter group family. DefaultClusterParameters *DefaultClusterParameters `type:"structure"` } // String returns the string representation func (s DescribeDefaultClusterParametersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDefaultClusterParametersOutput) GoString() string { return s.String() } type DescribeEventCategoriesInput struct { _ struct{} `type:"structure"` // The source type, such as cluster or parameter group, to which the described // event categories apply. // // Valid values: cluster, cluster-snapshot, cluster-parameter-group, and cluster-security-group. SourceType *string `type:"string"` } // String returns the string representation func (s DescribeEventCategoriesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEventCategoriesInput) GoString() string { return s.String() } type DescribeEventCategoriesOutput struct { _ struct{} `type:"structure"` // A list of event categories descriptions. EventCategoriesMapList []*EventCategoriesMap `locationNameList:"EventCategoriesMap" type:"list"` } // String returns the string representation func (s DescribeEventCategoriesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEventCategoriesOutput) GoString() string { return s.String() } type DescribeEventSubscriptionsInput struct { _ struct{} `type:"structure"` // An optional parameter that specifies the starting point to return a set of // response records. When the results of a DescribeEventSubscriptions request // exceed the value specified in MaxRecords, AWS returns a value in the Marker // field of the response. You can retrieve the next set of response records // by providing the returned marker value in the Marker parameter and retrying // the request. Marker *string `type:"string"` // The maximum number of response records to return in each call. If the number // of remaining response records exceeds the specified MaxRecords value, a value // is returned in a marker field of the response. You can retrieve the next // set of records by retrying the command with the returned marker value. // // Default: 100 // // Constraints: minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The name of the Amazon Redshift event notification subscription to be described. SubscriptionName *string `type:"string"` } // String returns the string representation func (s DescribeEventSubscriptionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEventSubscriptionsInput) GoString() string { return s.String() } type DescribeEventSubscriptionsOutput struct { _ struct{} `type:"structure"` // A list of event subscriptions. EventSubscriptionsList []*EventSubscription `locationNameList:"EventSubscription" type:"list"` // A value that indicates the starting point for the next set of response records // in a subsequent request. If a value is returned in a response, you can retrieve // the next set of records by providing this returned marker value in the Marker // parameter and retrying the command. If the Marker field is empty, all response // records have been retrieved for the request. Marker *string `type:"string"` } // String returns the string representation func (s DescribeEventSubscriptionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEventSubscriptionsOutput) GoString() string { return s.String() } type DescribeEventsInput struct { _ struct{} `type:"structure"` // The number of minutes prior to the time of the request for which to retrieve // events. For example, if the request is sent at 18:00 and you specify a duration // of 60, then only events which have occurred after 17:00 will be returned. // // Default: 60 Duration *int64 `type:"integer"` // The end of the time interval for which to retrieve events, specified in ISO // 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia // page. (http://en.wikipedia.org/wiki/ISO_8601) // // Example: 2009-07-08T18:00Z EndTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // An optional parameter that specifies the starting point to return a set of // response records. When the results of a DescribeEvents request exceed the // value specified in MaxRecords, AWS returns a value in the Marker field of // the response. You can retrieve the next set of response records by providing // the returned marker value in the Marker parameter and retrying the request. Marker *string `type:"string"` // The maximum number of response records to return in each call. If the number // of remaining response records exceeds the specified MaxRecords value, a value // is returned in a marker field of the response. You can retrieve the next // set of records by retrying the command with the returned marker value. // // Default: 100 // // Constraints: minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The identifier of the event source for which events will be returned. If // this parameter is not specified, then all sources are included in the response. // // Constraints: // // If SourceIdentifier is supplied, SourceType must also be provided. // // * Specify a cluster identifier when SourceType is cluster. // // * Specify a cluster security group name when SourceType is cluster-security-group. // // * Specify a cluster parameter group name when SourceType is cluster-parameter-group. // // * Specify a cluster snapshot identifier when SourceType is cluster-snapshot. SourceIdentifier *string `type:"string"` // The event source to retrieve events for. If no value is specified, all events // are returned. // // Constraints: // // If SourceType is supplied, SourceIdentifier must also be provided. // // * Specify cluster when SourceIdentifier is a cluster identifier. // // * Specify cluster-security-group when SourceIdentifier is a cluster security // group name. // // * Specify cluster-parameter-group when SourceIdentifier is a cluster parameter // group name. // // * Specify cluster-snapshot when SourceIdentifier is a cluster snapshot // identifier. SourceType *string `type:"string" enum:"SourceType"` // The beginning of the time interval to retrieve events for, specified in ISO // 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia // page. (http://en.wikipedia.org/wiki/ISO_8601) // // Example: 2009-07-08T18:00Z StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s DescribeEventsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEventsInput) GoString() string { return s.String() } type DescribeEventsOutput struct { _ struct{} `type:"structure"` // A list of Event instances. Events []*Event `locationNameList:"Event" type:"list"` // A value that indicates the starting point for the next set of response records // in a subsequent request. If a value is returned in a response, you can retrieve // the next set of records by providing this returned marker value in the Marker // parameter and retrying the command. If the Marker field is empty, all response // records have been retrieved for the request. Marker *string `type:"string"` } // String returns the string representation func (s DescribeEventsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEventsOutput) GoString() string { return s.String() } type DescribeHsmClientCertificatesInput struct { _ struct{} `type:"structure"` // The identifier of a specific HSM client certificate for which you want information. // If no identifier is specified, information is returned for all HSM client // certificates owned by your AWS customer account. HsmClientCertificateIdentifier *string `type:"string"` // An optional parameter that specifies the starting point to return a set of // response records. When the results of a DescribeHsmClientCertificates request // exceed the value specified in MaxRecords, AWS returns a value in the Marker // field of the response. You can retrieve the next set of response records // by providing the returned marker value in the Marker parameter and retrying // the request. Marker *string `type:"string"` // The maximum number of response records to return in each call. If the number // of remaining response records exceeds the specified MaxRecords value, a value // is returned in a marker field of the response. You can retrieve the next // set of records by retrying the command with the returned marker value. // // Default: 100 // // Constraints: minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // A tag key or keys for which you want to return all matching HSM client certificates // that are associated with the specified key or keys. For example, suppose // that you have HSM client certificates that are tagged with keys called owner // and environment. If you specify both of these tag keys in the request, Amazon // Redshift returns a response with the HSM client certificates that have either // or both of these tag keys associated with them. TagKeys []*string `locationNameList:"TagKey" type:"list"` // A tag value or values for which you want to return all matching HSM client // certificates that are associated with the specified tag value or values. // For example, suppose that you have HSM client certificates that are tagged // with values called admin and test. If you specify both of these tag values // in the request, Amazon Redshift returns a response with the HSM client certificates // that have either or both of these tag values associated with them. TagValues []*string `locationNameList:"TagValue" type:"list"` } // String returns the string representation func (s DescribeHsmClientCertificatesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeHsmClientCertificatesInput) GoString() string { return s.String() } type DescribeHsmClientCertificatesOutput struct { _ struct{} `type:"structure"` // A list of the identifiers for one or more HSM client certificates used by // Amazon Redshift clusters to store and retrieve database encryption keys in // an HSM. HsmClientCertificates []*HsmClientCertificate `locationNameList:"HsmClientCertificate" type:"list"` // A value that indicates the starting point for the next set of response records // in a subsequent request. If a value is returned in a response, you can retrieve // the next set of records by providing this returned marker value in the Marker // parameter and retrying the command. If the Marker field is empty, all response // records have been retrieved for the request. Marker *string `type:"string"` } // String returns the string representation func (s DescribeHsmClientCertificatesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeHsmClientCertificatesOutput) GoString() string { return s.String() } type DescribeHsmConfigurationsInput struct { _ struct{} `type:"structure"` // The identifier of a specific Amazon Redshift HSM configuration to be described. // If no identifier is specified, information is returned for all HSM configurations // owned by your AWS customer account. HsmConfigurationIdentifier *string `type:"string"` // An optional parameter that specifies the starting point to return a set of // response records. When the results of a DescribeHsmConfigurations request // exceed the value specified in MaxRecords, AWS returns a value in the Marker // field of the response. You can retrieve the next set of response records // by providing the returned marker value in the Marker parameter and retrying // the request. Marker *string `type:"string"` // The maximum number of response records to return in each call. If the number // of remaining response records exceeds the specified MaxRecords value, a value // is returned in a marker field of the response. You can retrieve the next // set of records by retrying the command with the returned marker value. // // Default: 100 // // Constraints: minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // A tag key or keys for which you want to return all matching HSM configurations // that are associated with the specified key or keys. For example, suppose // that you have HSM configurations that are tagged with keys called owner and // environment. If you specify both of these tag keys in the request, Amazon // Redshift returns a response with the HSM configurations that have either // or both of these tag keys associated with them. TagKeys []*string `locationNameList:"TagKey" type:"list"` // A tag value or values for which you want to return all matching HSM configurations // that are associated with the specified tag value or values. For example, // suppose that you have HSM configurations that are tagged with values called // admin and test. If you specify both of these tag values in the request, Amazon // Redshift returns a response with the HSM configurations that have either // or both of these tag values associated with them. TagValues []*string `locationNameList:"TagValue" type:"list"` } // String returns the string representation func (s DescribeHsmConfigurationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeHsmConfigurationsInput) GoString() string { return s.String() } type DescribeHsmConfigurationsOutput struct { _ struct{} `type:"structure"` // A list of HsmConfiguration objects. HsmConfigurations []*HsmConfiguration `locationNameList:"HsmConfiguration" type:"list"` // A value that indicates the starting point for the next set of response records // in a subsequent request. If a value is returned in a response, you can retrieve // the next set of records by providing this returned marker value in the Marker // parameter and retrying the command. If the Marker field is empty, all response // records have been retrieved for the request. Marker *string `type:"string"` } // String returns the string representation func (s DescribeHsmConfigurationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeHsmConfigurationsOutput) GoString() string { return s.String() } type DescribeLoggingStatusInput struct { _ struct{} `type:"structure"` // The identifier of the cluster from which to get the logging status. // // Example: examplecluster // // ClusterIdentifier is a required field ClusterIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeLoggingStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeLoggingStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeLoggingStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeLoggingStatusInput"} if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeOrderableClusterOptionsInput struct { _ struct{} `type:"structure"` // The version filter value. Specify this parameter to show only the available // offerings matching the specified version. // // Default: All versions. // // Constraints: Must be one of the version returned from DescribeClusterVersions. ClusterVersion *string `type:"string"` // An optional parameter that specifies the starting point to return a set of // response records. When the results of a DescribeOrderableClusterOptions request // exceed the value specified in MaxRecords, AWS returns a value in the Marker // field of the response. You can retrieve the next set of response records // by providing the returned marker value in the Marker parameter and retrying // the request. Marker *string `type:"string"` // The maximum number of response records to return in each call. If the number // of remaining response records exceeds the specified MaxRecords value, a value // is returned in a marker field of the response. You can retrieve the next // set of records by retrying the command with the returned marker value. // // Default: 100 // // Constraints: minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The node type filter value. Specify this parameter to show only the available // offerings matching the specified node type. NodeType *string `type:"string"` } // String returns the string representation func (s DescribeOrderableClusterOptionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeOrderableClusterOptionsInput) GoString() string { return s.String() } // Contains the output from the DescribeOrderableClusterOptions action. type DescribeOrderableClusterOptionsOutput struct { _ struct{} `type:"structure"` // A value that indicates the starting point for the next set of response records // in a subsequent request. If a value is returned in a response, you can retrieve // the next set of records by providing this returned marker value in the Marker // parameter and retrying the command. If the Marker field is empty, all response // records have been retrieved for the request. Marker *string `type:"string"` // An OrderableClusterOption structure containing information about orderable // options for the cluster. OrderableClusterOptions []*OrderableClusterOption `locationNameList:"OrderableClusterOption" type:"list"` } // String returns the string representation func (s DescribeOrderableClusterOptionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeOrderableClusterOptionsOutput) GoString() string { return s.String() } type DescribeReservedNodeOfferingsInput struct { _ struct{} `type:"structure"` // An optional parameter that specifies the starting point to return a set of // response records. When the results of a DescribeReservedNodeOfferings request // exceed the value specified in MaxRecords, AWS returns a value in the Marker // field of the response. You can retrieve the next set of response records // by providing the returned marker value in the Marker parameter and retrying // the request. Marker *string `type:"string"` // The maximum number of response records to return in each call. If the number // of remaining response records exceeds the specified MaxRecords value, a value // is returned in a marker field of the response. You can retrieve the next // set of records by retrying the command with the returned marker value. // // Default: 100 // // Constraints: minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The unique identifier for the offering. ReservedNodeOfferingId *string `type:"string"` } // String returns the string representation func (s DescribeReservedNodeOfferingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedNodeOfferingsInput) GoString() string { return s.String() } type DescribeReservedNodeOfferingsOutput struct { _ struct{} `type:"structure"` // A value that indicates the starting point for the next set of response records // in a subsequent request. If a value is returned in a response, you can retrieve // the next set of records by providing this returned marker value in the Marker // parameter and retrying the command. If the Marker field is empty, all response // records have been retrieved for the request. Marker *string `type:"string"` // A list of ReservedNodeOffering objects. ReservedNodeOfferings []*ReservedNodeOffering `locationNameList:"ReservedNodeOffering" type:"list"` } // String returns the string representation func (s DescribeReservedNodeOfferingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedNodeOfferingsOutput) GoString() string { return s.String() } type DescribeReservedNodesInput struct { _ struct{} `type:"structure"` // An optional parameter that specifies the starting point to return a set of // response records. When the results of a DescribeReservedNodes request exceed // the value specified in MaxRecords, AWS returns a value in the Marker field // of the response. You can retrieve the next set of response records by providing // the returned marker value in the Marker parameter and retrying the request. Marker *string `type:"string"` // The maximum number of response records to return in each call. If the number // of remaining response records exceeds the specified MaxRecords value, a value // is returned in a marker field of the response. You can retrieve the next // set of records by retrying the command with the returned marker value. // // Default: 100 // // Constraints: minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // Identifier for the node reservation. ReservedNodeId *string `type:"string"` } // String returns the string representation func (s DescribeReservedNodesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedNodesInput) GoString() string { return s.String() } type DescribeReservedNodesOutput struct { _ struct{} `type:"structure"` // A value that indicates the starting point for the next set of response records // in a subsequent request. If a value is returned in a response, you can retrieve // the next set of records by providing this returned marker value in the Marker // parameter and retrying the command. If the Marker field is empty, all response // records have been retrieved for the request. Marker *string `type:"string"` // The list of ReservedNode objects. ReservedNodes []*ReservedNode `locationNameList:"ReservedNode" type:"list"` } // String returns the string representation func (s DescribeReservedNodesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReservedNodesOutput) GoString() string { return s.String() } type DescribeResizeInput struct { _ struct{} `type:"structure"` // The unique identifier of a cluster whose resize progress you are requesting. // This parameter is case-sensitive. // // By default, resize operations for all clusters defined for an AWS account // are returned. // // ClusterIdentifier is a required field ClusterIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeResizeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeResizeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeResizeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeResizeInput"} if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the result of a cluster resize operation. type DescribeResizeOutput struct { _ struct{} `type:"structure"` // The average rate of the resize operation over the last few minutes, measured // in megabytes per second. After the resize operation completes, this value // shows the average rate of the entire resize operation. AvgResizeRateInMegaBytesPerSecond *float64 `type:"double"` // The amount of seconds that have elapsed since the resize operation began. // After the resize operation completes, this value shows the total actual time, // in seconds, for the resize operation. ElapsedTimeInSeconds *int64 `type:"long"` // The estimated time remaining, in seconds, until the resize operation is complete. // This value is calculated based on the average resize rate and the estimated // amount of data remaining to be processed. Once the resize operation is complete, // this value will be 0. EstimatedTimeToCompletionInSeconds *int64 `type:"long"` // The names of tables that have been completely imported . // // Valid Values: List of table names. ImportTablesCompleted []*string `type:"list"` // The names of tables that are being currently imported. // // Valid Values: List of table names. ImportTablesInProgress []*string `type:"list"` // The names of tables that have not been yet imported. // // Valid Values: List of table names ImportTablesNotStarted []*string `type:"list"` // While the resize operation is in progress, this value shows the current amount // of data, in megabytes, that has been processed so far. When the resize operation // is complete, this value shows the total amount of data, in megabytes, on // the cluster, which may be more or less than TotalResizeDataInMegaBytes (the // estimated total amount of data before resize). ProgressInMegaBytes *int64 `type:"long"` // The status of the resize operation. // // Valid Values: NONE | IN_PROGRESS | FAILED | SUCCEEDED Status *string `type:"string"` // The cluster type after the resize operation is complete. // // Valid Values: multi-node | single-node TargetClusterType *string `type:"string"` // The node type that the cluster will have after the resize operation is complete. TargetNodeType *string `type:"string"` // The number of nodes that the cluster will have after the resize operation // is complete. TargetNumberOfNodes *int64 `type:"integer"` // The estimated total amount of data, in megabytes, on the cluster before the // resize operation began. TotalResizeDataInMegaBytes *int64 `type:"long"` } // String returns the string representation func (s DescribeResizeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeResizeOutput) GoString() string { return s.String() } // The result of the DescribeSnapshotCopyGrants action. type DescribeSnapshotCopyGrantsInput struct { _ struct{} `type:"structure"` // An optional parameter that specifies the starting point to return a set of // response records. When the results of a DescribeSnapshotCopyGrant request // exceed the value specified in MaxRecords, AWS returns a value in the Marker // field of the response. You can retrieve the next set of response records // by providing the returned marker value in the Marker parameter and retrying // the request. // // Constraints: You can specify either the SnapshotCopyGrantName parameter or // the Marker parameter, but not both. Marker *string `type:"string"` // The maximum number of response records to return in each call. If the number // of remaining response records exceeds the specified MaxRecords value, a value // is returned in a marker field of the response. You can retrieve the next // set of records by retrying the command with the returned marker value. // // Default: 100 // // Constraints: minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` // The name of the snapshot copy grant. SnapshotCopyGrantName *string `type:"string"` // A tag key or keys for which you want to return all matching resources that // are associated with the specified key or keys. For example, suppose that // you have resources tagged with keys called owner and environment. If you // specify both of these tag keys in the request, Amazon Redshift returns a // response with all resources that have either or both of these tag keys associated // with them. TagKeys []*string `locationNameList:"TagKey" type:"list"` // A tag value or values for which you want to return all matching resources // that are associated with the specified value or values. For example, suppose // that you have resources tagged with values called admin and test. If you // specify both of these tag values in the request, Amazon Redshift returns // a response with all resources that have either or both of these tag values // associated with them. TagValues []*string `locationNameList:"TagValue" type:"list"` } // String returns the string representation func (s DescribeSnapshotCopyGrantsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSnapshotCopyGrantsInput) GoString() string { return s.String() } type DescribeSnapshotCopyGrantsOutput struct { _ struct{} `type:"structure"` // An optional parameter that specifies the starting point to return a set of // response records. When the results of a DescribeSnapshotCopyGrant request // exceed the value specified in MaxRecords, AWS returns a value in the Marker // field of the response. You can retrieve the next set of response records // by providing the returned marker value in the Marker parameter and retrying // the request. // // Constraints: You can specify either the SnapshotCopyGrantName parameter or // the Marker parameter, but not both. Marker *string `type:"string"` // The list of SnapshotCopyGrant objects. SnapshotCopyGrants []*SnapshotCopyGrant `locationNameList:"SnapshotCopyGrant" type:"list"` } // String returns the string representation func (s DescribeSnapshotCopyGrantsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSnapshotCopyGrantsOutput) GoString() string { return s.String() } type DescribeTableRestoreStatusInput struct { _ struct{} `type:"structure"` // The Amazon Redshift cluster that the table is being restored to. ClusterIdentifier *string `type:"string"` // An optional pagination token provided by a previous DescribeTableRestoreStatus // request. If this parameter is specified, the response includes only records // beyond the marker, up to the value specified by the MaxRecords parameter. Marker *string `type:"string"` // The maximum number of records to include in the response. If more records // exist than the specified MaxRecords value, a pagination token called a marker // is included in the response so that the remaining results can be retrieved. MaxRecords *int64 `type:"integer"` // The identifier of the table restore request to return status for. If you // don't specify a TableRestoreRequestId value, then DescribeTableRestoreStatus // returns the status of all in-progress table restore requests. TableRestoreRequestId *string `type:"string"` } // String returns the string representation func (s DescribeTableRestoreStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTableRestoreStatusInput) GoString() string { return s.String() } type DescribeTableRestoreStatusOutput struct { _ struct{} `type:"structure"` // A pagination token that can be used in a subsequent DescribeTableRestoreStatus // request. Marker *string `type:"string"` // A list of status details for one or more table restore requests. TableRestoreStatusDetails []*TableRestoreStatus `locationNameList:"TableRestoreStatus" type:"list"` } // String returns the string representation func (s DescribeTableRestoreStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTableRestoreStatusOutput) GoString() string { return s.String() } type DescribeTagsInput struct { _ struct{} `type:"structure"` // A value that indicates the starting point for the next set of response records // in a subsequent request. If a value is returned in a response, you can retrieve // the next set of records by providing this returned marker value in the marker // parameter and retrying the command. If the marker field is empty, all response // records have been retrieved for the request. Marker *string `type:"string"` // The maximum number or response records to return in each call. If the number // of remaining response records exceeds the specified MaxRecords value, a value // is returned in a marker field of the response. You can retrieve the next // set of records by retrying the command with the returned marker value. MaxRecords *int64 `type:"integer"` // The Amazon Resource Name (ARN) for which you want to describe the tag or // tags. For example, arn:aws:redshift:us-east-1:123456789:cluster:t1. ResourceName *string `type:"string"` // The type of resource with which you want to view tags. Valid resource types // are: // // * Cluster // // * CIDR/IP // // * EC2 security group // // * Snapshot // // * Cluster security group // // * Subnet group // // * HSM connection // // * HSM certificate // // * Parameter group // // * Snapshot copy grant // // For more information about Amazon Redshift resource types and constructing // ARNs, go to Constructing an Amazon Redshift Amazon Resource Name (ARN) (http://docs.aws.amazon.com/redshift/latest/mgmt/constructing-redshift-arn.html) // in the Amazon Redshift Cluster Management Guide. ResourceType *string `type:"string"` // A tag key or keys for which you want to return all matching resources that // are associated with the specified key or keys. For example, suppose that // you have resources tagged with keys called owner and environment. If you // specify both of these tag keys in the request, Amazon Redshift returns a // response with all resources that have either or both of these tag keys associated // with them. TagKeys []*string `locationNameList:"TagKey" type:"list"` // A tag value or values for which you want to return all matching resources // that are associated with the specified value or values. For example, suppose // that you have resources tagged with values called admin and test. If you // specify both of these tag values in the request, Amazon Redshift returns // a response with all resources that have either or both of these tag values // associated with them. TagValues []*string `locationNameList:"TagValue" type:"list"` } // String returns the string representation func (s DescribeTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsInput) GoString() string { return s.String() } type DescribeTagsOutput struct { _ struct{} `type:"structure"` // A value that indicates the starting point for the next set of response records // in a subsequent request. If a value is returned in a response, you can retrieve // the next set of records by providing this returned marker value in the Marker // parameter and retrying the command. If the Marker field is empty, all response // records have been retrieved for the request. Marker *string `type:"string"` // A list of tags with their associated resources. TaggedResources []*TaggedResource `locationNameList:"TaggedResource" type:"list"` } // String returns the string representation func (s DescribeTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsOutput) GoString() string { return s.String() } type DisableLoggingInput struct { _ struct{} `type:"structure"` // The identifier of the cluster on which logging is to be stopped. // // Example: examplecluster // // ClusterIdentifier is a required field ClusterIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s DisableLoggingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableLoggingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisableLoggingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisableLoggingInput"} if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DisableSnapshotCopyInput struct { _ struct{} `type:"structure"` // The unique identifier of the source cluster that you want to disable copying // of snapshots to a destination region. // // Constraints: Must be the valid name of an existing cluster that has cross-region // snapshot copy enabled. // // ClusterIdentifier is a required field ClusterIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s DisableSnapshotCopyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableSnapshotCopyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisableSnapshotCopyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisableSnapshotCopyInput"} if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DisableSnapshotCopyOutput struct { _ struct{} `type:"structure"` // Describes a cluster. Cluster *Cluster `type:"structure"` } // String returns the string representation func (s DisableSnapshotCopyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableSnapshotCopyOutput) GoString() string { return s.String() } // Describes an Amazon EC2 security group. type EC2SecurityGroup struct { _ struct{} `type:"structure"` // The name of the EC2 Security Group. EC2SecurityGroupName *string `type:"string"` // The AWS ID of the owner of the EC2 security group specified in the EC2SecurityGroupName // field. EC2SecurityGroupOwnerId *string `type:"string"` // The status of the EC2 security group. Status *string `type:"string"` // The list of tags for the EC2 security group. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s EC2SecurityGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EC2SecurityGroup) GoString() string { return s.String() } // Describes the status of the elastic IP (EIP) address. type ElasticIpStatus struct { _ struct{} `type:"structure"` // The elastic IP (EIP) address for the cluster. ElasticIp *string `type:"string"` // The status of the elastic IP (EIP) address. Status *string `type:"string"` } // String returns the string representation func (s ElasticIpStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ElasticIpStatus) GoString() string { return s.String() } type EnableLoggingInput struct { _ struct{} `type:"structure"` // The name of an existing S3 bucket where the log files are to be stored. // // Constraints: // // * Must be in the same region as the cluster // // * The cluster must have read bucket and put object permissions // // BucketName is a required field BucketName *string `type:"string" required:"true"` // The identifier of the cluster on which logging is to be started. // // Example: examplecluster // // ClusterIdentifier is a required field ClusterIdentifier *string `type:"string" required:"true"` // The prefix applied to the log file names. // // Constraints: // // * Cannot exceed 512 characters // // * Cannot contain spaces( ), double quotes ("), single quotes ('), a backslash // (\), or control characters. The hexadecimal codes for invalid characters // are: // // x00 to x20 // // x22 // // x27 // // x5c // // x7f or larger S3KeyPrefix *string `type:"string"` } // String returns the string representation func (s EnableLoggingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableLoggingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableLoggingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableLoggingInput"} if s.BucketName == nil { invalidParams.Add(request.NewErrParamRequired("BucketName")) } if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type EnableSnapshotCopyInput struct { _ struct{} `type:"structure"` // The unique identifier of the source cluster to copy snapshots from. // // Constraints: Must be the valid name of an existing cluster that does not // already have cross-region snapshot copy enabled. // // ClusterIdentifier is a required field ClusterIdentifier *string `type:"string" required:"true"` // The destination region that you want to copy snapshots to. // // Constraints: Must be the name of a valid region. For more information, see // Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html#redshift_region) // in the Amazon Web Services General Reference. // // DestinationRegion is a required field DestinationRegion *string `type:"string" required:"true"` // The number of days to retain automated snapshots in the destination region // after they are copied from the source region. // // Default: 7. // // Constraints: Must be at least 1 and no more than 35. RetentionPeriod *int64 `type:"integer"` // The name of the snapshot copy grant to use when snapshots of an AWS KMS-encrypted // cluster are copied to the destination region. SnapshotCopyGrantName *string `type:"string"` } // String returns the string representation func (s EnableSnapshotCopyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableSnapshotCopyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableSnapshotCopyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableSnapshotCopyInput"} if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } if s.DestinationRegion == nil { invalidParams.Add(request.NewErrParamRequired("DestinationRegion")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type EnableSnapshotCopyOutput struct { _ struct{} `type:"structure"` // Describes a cluster. Cluster *Cluster `type:"structure"` } // String returns the string representation func (s EnableSnapshotCopyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableSnapshotCopyOutput) GoString() string { return s.String() } // Describes a connection endpoint. type Endpoint struct { _ struct{} `type:"structure"` // The DNS address of the Cluster. Address *string `type:"string"` // The port that the database engine is listening on. Port *int64 `type:"integer"` } // String returns the string representation func (s Endpoint) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Endpoint) GoString() string { return s.String() } // Describes an event. type Event struct { _ struct{} `type:"structure"` // The date and time of the event. Date *time.Time `type:"timestamp" timestampFormat:"iso8601"` // A list of the event categories. // // Values: Configuration, Management, Monitoring, Security EventCategories []*string `locationNameList:"EventCategory" type:"list"` // The identifier of the event. EventId *string `type:"string"` // The text of this event. Message *string `type:"string"` // The severity of the event. // // Values: ERROR, INFO Severity *string `type:"string"` // The identifier for the source of the event. SourceIdentifier *string `type:"string"` // The source type for this event. SourceType *string `type:"string" enum:"SourceType"` } // String returns the string representation func (s Event) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Event) GoString() string { return s.String() } // Describes event categories. type EventCategoriesMap struct { _ struct{} `type:"structure"` // The events in the event category. Events []*EventInfoMap `locationNameList:"EventInfoMap" type:"list"` // The source type, such as cluster or cluster-snapshot, that the returned categories // belong to. SourceType *string `type:"string"` } // String returns the string representation func (s EventCategoriesMap) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EventCategoriesMap) GoString() string { return s.String() } // Describes event information. type EventInfoMap struct { _ struct{} `type:"structure"` // The category of an Amazon Redshift event. EventCategories []*string `locationNameList:"EventCategory" type:"list"` // The description of an Amazon Redshift event. EventDescription *string `type:"string"` // The identifier of an Amazon Redshift event. EventId *string `type:"string"` // The severity of the event. // // Values: ERROR, INFO Severity *string `type:"string"` } // String returns the string representation func (s EventInfoMap) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EventInfoMap) GoString() string { return s.String() } // Describes event subscriptions. type EventSubscription struct { _ struct{} `type:"structure"` // The name of the Amazon Redshift event notification subscription. CustSubscriptionId *string `type:"string"` // The AWS customer account associated with the Amazon Redshift event notification // subscription. CustomerAwsId *string `type:"string"` // A Boolean value indicating whether the subscription is enabled. true indicates // the subscription is enabled. Enabled *bool `type:"boolean"` // The list of Amazon Redshift event categories specified in the event notification // subscription. // // Values: Configuration, Management, Monitoring, Security EventCategoriesList []*string `locationNameList:"EventCategory" type:"list"` // The event severity specified in the Amazon Redshift event notification subscription. // // Values: ERROR, INFO Severity *string `type:"string"` // The Amazon Resource Name (ARN) of the Amazon SNS topic used by the event // notification subscription. SnsTopicArn *string `type:"string"` // A list of the sources that publish events to the Amazon Redshift event notification // subscription. SourceIdsList []*string `locationNameList:"SourceId" type:"list"` // The source type of the events returned the Amazon Redshift event notification, // such as cluster, or cluster-snapshot. SourceType *string `type:"string"` // The status of the Amazon Redshift event notification subscription. // // Constraints: // // * Can be one of the following: active | no-permission | topic-not-exist // // * The status "no-permission" indicates that Amazon Redshift no longer // has permission to post to the Amazon SNS topic. The status "topic-not-exist" // indicates that the topic was deleted after the subscription was created. Status *string `type:"string"` // The date and time the Amazon Redshift event notification subscription was // created. SubscriptionCreationTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The list of tags for the event subscription. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s EventSubscription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EventSubscription) GoString() string { return s.String() } // Returns information about an HSM client certificate. The certificate is stored // in a secure Hardware Storage Module (HSM), and used by the Amazon Redshift // cluster to encrypt data files. type HsmClientCertificate struct { _ struct{} `type:"structure"` // The identifier of the HSM client certificate. HsmClientCertificateIdentifier *string `type:"string"` // The public key that the Amazon Redshift cluster will use to connect to the // HSM. You must register the public key in the HSM. HsmClientCertificatePublicKey *string `type:"string"` // The list of tags for the HSM client certificate. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s HsmClientCertificate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HsmClientCertificate) GoString() string { return s.String() } // Returns information about an HSM configuration, which is an object that describes // to Amazon Redshift clusters the information they require to connect to an // HSM where they can store database encryption keys. type HsmConfiguration struct { _ struct{} `type:"structure"` // A text description of the HSM configuration. Description *string `type:"string"` // The name of the Amazon Redshift HSM configuration. HsmConfigurationIdentifier *string `type:"string"` // The IP address that the Amazon Redshift cluster must use to access the HSM. HsmIpAddress *string `type:"string"` // The name of the partition in the HSM where the Amazon Redshift clusters will // store their database encryption keys. HsmPartitionName *string `type:"string"` // The list of tags for the HSM configuration. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s HsmConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HsmConfiguration) GoString() string { return s.String() } // Describes the status of changes to HSM settings. type HsmStatus struct { _ struct{} `type:"structure"` // Specifies the name of the HSM client certificate the Amazon Redshift cluster // uses to retrieve the data encryption keys stored in an HSM. HsmClientCertificateIdentifier *string `type:"string"` // Specifies the name of the HSM configuration that contains the information // the Amazon Redshift cluster can use to retrieve and store keys in an HSM. HsmConfigurationIdentifier *string `type:"string"` // Reports whether the Amazon Redshift cluster has finished applying any HSM // settings changes specified in a modify cluster command. // // Values: active, applying Status *string `type:"string"` } // String returns the string representation func (s HsmStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HsmStatus) GoString() string { return s.String() } // Describes an IP range used in a security group. type IPRange struct { _ struct{} `type:"structure"` // The IP range in Classless Inter-Domain Routing (CIDR) notation. CIDRIP *string `type:"string"` // The status of the IP range, for example, "authorized". Status *string `type:"string"` // The list of tags for the IP range. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s IPRange) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IPRange) GoString() string { return s.String() } // Describes the status of logging for a cluster. type LoggingStatus struct { _ struct{} `type:"structure"` // The name of the S3 bucket where the log files are stored. BucketName *string `type:"string"` // The message indicating that logs failed to be delivered. LastFailureMessage *string `type:"string"` // The last time when logs failed to be delivered. LastFailureTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The last time that logs were delivered. LastSuccessfulDeliveryTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // true if logging is on, false if logging is off. LoggingEnabled *bool `type:"boolean"` // The prefix applied to the log file names. S3KeyPrefix *string `type:"string"` } // String returns the string representation func (s LoggingStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LoggingStatus) GoString() string { return s.String() } type ModifyClusterIamRolesInput struct { _ struct{} `type:"structure"` // Zero or more IAM roles to associate with the cluster. The roles must be in // their Amazon Resource Name (ARN) format. You can associate up to 10 IAM roles // with a single cluster in a single request. AddIamRoles []*string `locationNameList:"IamRoleArn" type:"list"` // The unique identifier of the cluster for which you want to associate or disassociate // IAM roles. // // ClusterIdentifier is a required field ClusterIdentifier *string `type:"string" required:"true"` // Zero or more IAM roles in ARN format to disassociate from the cluster. You // can disassociate up to 10 IAM roles from a single cluster in a single request. RemoveIamRoles []*string `locationNameList:"IamRoleArn" type:"list"` } // String returns the string representation func (s ModifyClusterIamRolesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyClusterIamRolesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyClusterIamRolesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyClusterIamRolesInput"} if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyClusterIamRolesOutput struct { _ struct{} `type:"structure"` // Describes a cluster. Cluster *Cluster `type:"structure"` } // String returns the string representation func (s ModifyClusterIamRolesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyClusterIamRolesOutput) GoString() string { return s.String() } type ModifyClusterInput struct { _ struct{} `type:"structure"` // If true, major version upgrades will be applied automatically to the cluster // during the maintenance window. // // Default: false AllowVersionUpgrade *bool `type:"boolean"` // The number of days that automated snapshots are retained. If the value is // 0, automated snapshots are disabled. Even if automated snapshots are disabled, // you can still create manual snapshots when you want with CreateClusterSnapshot. // // If you decrease the automated snapshot retention period from its current // value, existing automated snapshots that fall outside of the new retention // period will be immediately deleted. // // Default: Uses existing setting. // // Constraints: Must be a value from 0 to 35. AutomatedSnapshotRetentionPeriod *int64 `type:"integer"` // The unique identifier of the cluster to be modified. // // Example: examplecluster // // ClusterIdentifier is a required field ClusterIdentifier *string `type:"string" required:"true"` // The name of the cluster parameter group to apply to this cluster. This change // is applied only after the cluster is rebooted. To reboot a cluster use RebootCluster. // // Default: Uses existing setting. // // Constraints: The cluster parameter group must be in the same parameter group // family that matches the cluster version. ClusterParameterGroupName *string `type:"string"` // A list of cluster security groups to be authorized on this cluster. This // change is asynchronously applied as soon as possible. // // Security groups currently associated with the cluster, and not in the list // of groups to apply, will be revoked from the cluster. // // Constraints: // // * Must be 1 to 255 alphanumeric characters or hyphens // // * First character must be a letter // // * Cannot end with a hyphen or contain two consecutive hyphens ClusterSecurityGroups []*string `locationNameList:"ClusterSecurityGroupName" type:"list"` // The new cluster type. // // When you submit your cluster resize request, your existing cluster goes into // a read-only mode. After Amazon Redshift provisions a new cluster based on // your resize requirements, there will be outage for a period while the old // cluster is deleted and your connection is switched to the new cluster. You // can use DescribeResize to track the progress of the resize request. // // Valid Values: multi-node | single-node ClusterType *string `type:"string"` // The new version number of the Amazon Redshift engine to upgrade to. // // For major version upgrades, if a non-default cluster parameter group is currently // in use, a new cluster parameter group in the cluster parameter group family // for the new version must be specified. The new cluster parameter group can // be the default for that cluster parameter group family. For more information // about parameters and parameter groups, go to Amazon Redshift Parameter Groups // (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) // in the Amazon Redshift Cluster Management Guide. // // Example: 1.0 ClusterVersion *string `type:"string"` // The Elastic IP (EIP) address for the cluster. // // Constraints: The cluster must be provisioned in EC2-VPC and publicly-accessible // through an Internet gateway. For more information about provisioning clusters // in EC2-VPC, go to Supported Platforms to Launch Your Cluster (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#cluster-platforms) // in the Amazon Redshift Cluster Management Guide. ElasticIp *string `type:"string"` // An option that specifies whether to create the cluster with enhanced VPC // routing enabled. To create a cluster that uses enhanced VPC routing, the // cluster must be in a VPC. For more information, see Enhanced VPC Routing // (http://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html) // in the Amazon Redshift Cluster Management Guide. // // If this option is true, enhanced VPC routing is enabled. // // Default: false EnhancedVpcRouting *bool `type:"boolean"` // Specifies the name of the HSM client certificate the Amazon Redshift cluster // uses to retrieve the data encryption keys stored in an HSM. HsmClientCertificateIdentifier *string `type:"string"` // Specifies the name of the HSM configuration that contains the information // the Amazon Redshift cluster can use to retrieve and store keys in an HSM. HsmConfigurationIdentifier *string `type:"string"` // The new password for the cluster master user. This change is asynchronously // applied as soon as possible. Between the time of the request and the completion // of the request, the MasterUserPassword element exists in the PendingModifiedValues // element of the operation response. // // Operations never return the password, so this operation provides a way to // regain access to the master user account for a cluster if the password is // lost. // // Default: Uses existing setting. // // Constraints: // // * Must be between 8 and 64 characters in length. // // * Must contain at least one uppercase letter. // // * Must contain at least one lowercase letter. // // * Must contain one number. // // * Can be any printable ASCII character (ASCII code 33 to 126) except ' // (single quote), " (double quote), \, /, @, or space. MasterUserPassword *string `type:"string"` // The new identifier for the cluster. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens. // // * Alphabetic characters must be lowercase. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // * Must be unique for all clusters within an AWS account. // // Example: examplecluster NewClusterIdentifier *string `type:"string"` // The new node type of the cluster. If you specify a new node type, you must // also specify the number of nodes parameter. // // When you submit your request to resize a cluster, Amazon Redshift sets access // permissions for the cluster to read-only. After Amazon Redshift provisions // a new cluster according to your resize requirements, there will be a temporary // outage while the old cluster is deleted and your connection is switched to // the new cluster. When the new connection is complete, the original access // permissions for the cluster are restored. You can use DescribeResize to track // the progress of the resize request. // // Valid Values: ds1.xlarge | ds1.8xlarge | ds2.xlarge | ds2.8xlarge | dc1.large // | dc1.8xlarge. NodeType *string `type:"string"` // The new number of nodes of the cluster. If you specify a new number of nodes, // you must also specify the node type parameter. // // When you submit your request to resize a cluster, Amazon Redshift sets access // permissions for the cluster to read-only. After Amazon Redshift provisions // a new cluster according to your resize requirements, there will be a temporary // outage while the old cluster is deleted and your connection is switched to // the new cluster. When the new connection is complete, the original access // permissions for the cluster are restored. You can use DescribeResize to track // the progress of the resize request. // // Valid Values: Integer greater than 0. NumberOfNodes *int64 `type:"integer"` // The weekly time range (in UTC) during which system maintenance can occur, // if necessary. If system maintenance is necessary during the window, it may // result in an outage. // // This maintenance window change is made immediately. If the new maintenance // window indicates the current time, there must be at least 120 minutes between // the current time and end of the window in order to ensure that pending changes // are applied. // // Default: Uses existing setting. // // Format: ddd:hh24:mi-ddd:hh24:mi, for example wed:07:30-wed:08:00. // // Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun // // Constraints: Must be at least 30 minutes. PreferredMaintenanceWindow *string `type:"string"` // If true, the cluster can be accessed from a public network. Only clusters // in VPCs can be set to be publicly available. PubliclyAccessible *bool `type:"boolean"` // A list of virtual private cloud (VPC) security groups to be associated with // the cluster. VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` } // String returns the string representation func (s ModifyClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyClusterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyClusterInput"} if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyClusterOutput struct { _ struct{} `type:"structure"` // Describes a cluster. Cluster *Cluster `type:"structure"` } // String returns the string representation func (s ModifyClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyClusterOutput) GoString() string { return s.String() } type ModifyClusterParameterGroupInput struct { _ struct{} `type:"structure"` // The name of the parameter group to be modified. // // ParameterGroupName is a required field ParameterGroupName *string `type:"string" required:"true"` // An array of parameters to be modified. A maximum of 20 parameters can be // modified in a single request. // // For each parameter to be modified, you must supply at least the parameter // name and parameter value; other name-value pairs of the parameter are optional. // // For the workload management (WLM) configuration, you must supply all the // name-value pairs in the wlm_json_configuration parameter. // // Parameters is a required field Parameters []*Parameter `locationNameList:"Parameter" type:"list" required:"true"` } // String returns the string representation func (s ModifyClusterParameterGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyClusterParameterGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyClusterParameterGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyClusterParameterGroupInput"} if s.ParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("ParameterGroupName")) } if s.Parameters == nil { invalidParams.Add(request.NewErrParamRequired("Parameters")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyClusterSubnetGroupInput struct { _ struct{} `type:"structure"` // The name of the subnet group to be modified. // // ClusterSubnetGroupName is a required field ClusterSubnetGroupName *string `type:"string" required:"true"` // A text description of the subnet group to be modified. Description *string `type:"string"` // An array of VPC subnet IDs. A maximum of 20 subnets can be modified in a // single request. // // SubnetIds is a required field SubnetIds []*string `locationNameList:"SubnetIdentifier" type:"list" required:"true"` } // String returns the string representation func (s ModifyClusterSubnetGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyClusterSubnetGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyClusterSubnetGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyClusterSubnetGroupInput"} if s.ClusterSubnetGroupName == nil { invalidParams.Add(request.NewErrParamRequired("ClusterSubnetGroupName")) } if s.SubnetIds == nil { invalidParams.Add(request.NewErrParamRequired("SubnetIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyClusterSubnetGroupOutput struct { _ struct{} `type:"structure"` // Describes a subnet group. ClusterSubnetGroup *ClusterSubnetGroup `type:"structure"` } // String returns the string representation func (s ModifyClusterSubnetGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyClusterSubnetGroupOutput) GoString() string { return s.String() } type ModifyEventSubscriptionInput struct { _ struct{} `type:"structure"` // A Boolean value indicating if the subscription is enabled. true indicates // the subscription is enabled Enabled *bool `type:"boolean"` // Specifies the Amazon Redshift event categories to be published by the event // notification subscription. // // Values: Configuration, Management, Monitoring, Security EventCategories []*string `locationNameList:"EventCategory" type:"list"` // Specifies the Amazon Redshift event severity to be published by the event // notification subscription. // // Values: ERROR, INFO Severity *string `type:"string"` // The Amazon Resource Name (ARN) of the SNS topic to be used by the event notification // subscription. SnsTopicArn *string `type:"string"` // A list of one or more identifiers of Amazon Redshift source objects. All // of the objects must be of the same type as was specified in the source type // parameter. The event subscription will return only events generated by the // specified objects. If not specified, then events are returned for all objects // within the source type specified. // // Example: my-cluster-1, my-cluster-2 // // Example: my-snapshot-20131010 SourceIds []*string `locationNameList:"SourceId" type:"list"` // The type of source that will be generating the events. For example, if you // want to be notified of events generated by a cluster, you would set this // parameter to cluster. If this value is not specified, events are returned // for all Amazon Redshift objects in your AWS account. You must specify a source // type in order to specify source IDs. // // Valid values: cluster, cluster-parameter-group, cluster-security-group, and // cluster-snapshot. SourceType *string `type:"string"` // The name of the modified Amazon Redshift event notification subscription. // // SubscriptionName is a required field SubscriptionName *string `type:"string" required:"true"` } // String returns the string representation func (s ModifyEventSubscriptionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyEventSubscriptionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyEventSubscriptionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyEventSubscriptionInput"} if s.SubscriptionName == nil { invalidParams.Add(request.NewErrParamRequired("SubscriptionName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyEventSubscriptionOutput struct { _ struct{} `type:"structure"` // Describes event subscriptions. EventSubscription *EventSubscription `type:"structure"` } // String returns the string representation func (s ModifyEventSubscriptionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyEventSubscriptionOutput) GoString() string { return s.String() } type ModifySnapshotCopyRetentionPeriodInput struct { _ struct{} `type:"structure"` // The unique identifier of the cluster for which you want to change the retention // period for automated snapshots that are copied to a destination region. // // Constraints: Must be the valid name of an existing cluster that has cross-region // snapshot copy enabled. // // ClusterIdentifier is a required field ClusterIdentifier *string `type:"string" required:"true"` // The number of days to retain automated snapshots in the destination region // after they are copied from the source region. // // If you decrease the retention period for automated snapshots that are copied // to a destination region, Amazon Redshift will delete any existing automated // snapshots that were copied to the destination region and that fall outside // of the new retention period. // // Constraints: Must be at least 1 and no more than 35. // // RetentionPeriod is a required field RetentionPeriod *int64 `type:"integer" required:"true"` } // String returns the string representation func (s ModifySnapshotCopyRetentionPeriodInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifySnapshotCopyRetentionPeriodInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifySnapshotCopyRetentionPeriodInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifySnapshotCopyRetentionPeriodInput"} if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } if s.RetentionPeriod == nil { invalidParams.Add(request.NewErrParamRequired("RetentionPeriod")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifySnapshotCopyRetentionPeriodOutput struct { _ struct{} `type:"structure"` // Describes a cluster. Cluster *Cluster `type:"structure"` } // String returns the string representation func (s ModifySnapshotCopyRetentionPeriodOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifySnapshotCopyRetentionPeriodOutput) GoString() string { return s.String() } // Describes an orderable cluster option. type OrderableClusterOption struct { _ struct{} `type:"structure"` // A list of availability zones for the orderable cluster. AvailabilityZones []*AvailabilityZone `locationNameList:"AvailabilityZone" type:"list"` // The cluster type, for example multi-node. ClusterType *string `type:"string"` // The version of the orderable cluster. ClusterVersion *string `type:"string"` // The node type for the orderable cluster. NodeType *string `type:"string"` } // String returns the string representation func (s OrderableClusterOption) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OrderableClusterOption) GoString() string { return s.String() } // Describes a parameter in a cluster parameter group. type Parameter struct { _ struct{} `type:"structure"` // The valid range of values for the parameter. AllowedValues *string `type:"string"` // Specifies how to apply the WLM configuration parameter. Some properties can // be applied dynamically, while other properties require that any associated // clusters be rebooted for the configuration changes to be applied. For more // information about parameters and parameter groups, go to Amazon Redshift // Parameter Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) // in the Amazon Redshift Cluster Management Guide. ApplyType *string `type:"string" enum:"ParameterApplyType"` // The data type of the parameter. DataType *string `type:"string"` // A description of the parameter. Description *string `type:"string"` // If true, the parameter can be modified. Some parameters have security or // operational implications that prevent them from being changed. IsModifiable *bool `type:"boolean"` // The earliest engine version to which the parameter can apply. MinimumEngineVersion *string `type:"string"` // The name of the parameter. ParameterName *string `type:"string"` // The value of the parameter. ParameterValue *string `type:"string"` // The source of the parameter value, such as "engine-default" or "user". Source *string `type:"string"` } // String returns the string representation func (s Parameter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Parameter) GoString() string { return s.String() } // Describes cluster attributes that are in a pending state. A change to one // or more the attributes was requested and is in progress or will be applied. type PendingModifiedValues struct { _ struct{} `type:"structure"` // The pending or in-progress change of the automated snapshot retention period. AutomatedSnapshotRetentionPeriod *int64 `type:"integer"` // The pending or in-progress change of the new identifier for the cluster. ClusterIdentifier *string `type:"string"` // The pending or in-progress change of the cluster type. ClusterType *string `type:"string"` // The pending or in-progress change of the service version. ClusterVersion *string `type:"string"` // An option that specifies whether to create the cluster with enhanced VPC // routing enabled. To create a cluster that uses enhanced VPC routing, the // cluster must be in a VPC. For more information, see Enhanced VPC Routing // (http://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html) // in the Amazon Redshift Cluster Management Guide. // // If this option is true, enhanced VPC routing is enabled. // // Default: false EnhancedVpcRouting *bool `type:"boolean"` // The pending or in-progress change of the master user password for the cluster. MasterUserPassword *string `type:"string"` // The pending or in-progress change of the cluster's node type. NodeType *string `type:"string"` // The pending or in-progress change of the number of nodes in the cluster. NumberOfNodes *int64 `type:"integer"` // The pending or in-progress change of the ability to connect to the cluster // from the public network. PubliclyAccessible *bool `type:"boolean"` } // String returns the string representation func (s PendingModifiedValues) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PendingModifiedValues) GoString() string { return s.String() } type PurchaseReservedNodeOfferingInput struct { _ struct{} `type:"structure"` // The number of reserved nodes that you want to purchase. // // Default: 1 NodeCount *int64 `type:"integer"` // The unique identifier of the reserved node offering you want to purchase. // // ReservedNodeOfferingId is a required field ReservedNodeOfferingId *string `type:"string" required:"true"` } // String returns the string representation func (s PurchaseReservedNodeOfferingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PurchaseReservedNodeOfferingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PurchaseReservedNodeOfferingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PurchaseReservedNodeOfferingInput"} if s.ReservedNodeOfferingId == nil { invalidParams.Add(request.NewErrParamRequired("ReservedNodeOfferingId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PurchaseReservedNodeOfferingOutput struct { _ struct{} `type:"structure"` // Describes a reserved node. You can call the DescribeReservedNodeOfferings // API to obtain the available reserved node offerings. ReservedNode *ReservedNode `type:"structure"` } // String returns the string representation func (s PurchaseReservedNodeOfferingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PurchaseReservedNodeOfferingOutput) GoString() string { return s.String() } type RebootClusterInput struct { _ struct{} `type:"structure"` // The cluster identifier. // // ClusterIdentifier is a required field ClusterIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s RebootClusterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebootClusterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RebootClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RebootClusterInput"} if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RebootClusterOutput struct { _ struct{} `type:"structure"` // Describes a cluster. Cluster *Cluster `type:"structure"` } // String returns the string representation func (s RebootClusterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebootClusterOutput) GoString() string { return s.String() } // Describes a recurring charge. type RecurringCharge struct { _ struct{} `type:"structure"` // The amount charged per the period of time specified by the recurring charge // frequency. RecurringChargeAmount *float64 `type:"double"` // The frequency at which the recurring charge amount is applied. RecurringChargeFrequency *string `type:"string"` } // String returns the string representation func (s RecurringCharge) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecurringCharge) GoString() string { return s.String() } // Describes a reserved node. You can call the DescribeReservedNodeOfferings // API to obtain the available reserved node offerings. type ReservedNode struct { _ struct{} `type:"structure"` // The currency code for the reserved cluster. CurrencyCode *string `type:"string"` // The duration of the node reservation in seconds. Duration *int64 `type:"integer"` // The fixed cost Amazon Redshift charges you for this reserved node. FixedPrice *float64 `type:"double"` // The number of reserved compute nodes. NodeCount *int64 `type:"integer"` // The node type of the reserved node. NodeType *string `type:"string"` // The anticipated utilization of the reserved node, as defined in the reserved // node offering. OfferingType *string `type:"string"` // The recurring charges for the reserved node. RecurringCharges []*RecurringCharge `locationNameList:"RecurringCharge" type:"list"` // The unique identifier for the reservation. ReservedNodeId *string `type:"string"` // The identifier for the reserved node offering. ReservedNodeOfferingId *string `type:"string"` // The time the reservation started. You purchase a reserved node offering for // a duration. This is the start time of that duration. StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The state of the reserved compute node. // // Possible Values: // // * pending-payment-This reserved node has recently been purchased, and // the sale has been approved, but payment has not yet been confirmed. // // * active-This reserved node is owned by the caller and is available for // use. // // * payment-failed-Payment failed for the purchase attempt. State *string `type:"string"` // The hourly rate Amazon Redshift charges you for this reserved node. UsagePrice *float64 `type:"double"` } // String returns the string representation func (s ReservedNode) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReservedNode) GoString() string { return s.String() } // Describes a reserved node offering. type ReservedNodeOffering struct { _ struct{} `type:"structure"` // The currency code for the compute nodes offering. CurrencyCode *string `type:"string"` // The duration, in seconds, for which the offering will reserve the node. Duration *int64 `type:"integer"` // The upfront fixed charge you will pay to purchase the specific reserved node // offering. FixedPrice *float64 `type:"double"` // The node type offered by the reserved node offering. NodeType *string `type:"string"` // The anticipated utilization of the reserved node, as defined in the reserved // node offering. OfferingType *string `type:"string"` // The charge to your account regardless of whether you are creating any clusters // using the node offering. Recurring charges are only in effect for heavy-utilization // reserved nodes. RecurringCharges []*RecurringCharge `locationNameList:"RecurringCharge" type:"list"` // The offering identifier. ReservedNodeOfferingId *string `type:"string"` // The rate you are charged for each hour the cluster that is using the offering // is running. UsagePrice *float64 `type:"double"` } // String returns the string representation func (s ReservedNodeOffering) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReservedNodeOffering) GoString() string { return s.String() } type ResetClusterParameterGroupInput struct { _ struct{} `type:"structure"` // The name of the cluster parameter group to be reset. // // ParameterGroupName is a required field ParameterGroupName *string `type:"string" required:"true"` // An array of names of parameters to be reset. If ResetAllParameters option // is not used, then at least one parameter name must be supplied. // // Constraints: A maximum of 20 parameters can be reset in a single request. Parameters []*Parameter `locationNameList:"Parameter" type:"list"` // If true, all parameters in the specified parameter group will be reset to // their default values. // // Default: true ResetAllParameters *bool `type:"boolean"` } // String returns the string representation func (s ResetClusterParameterGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResetClusterParameterGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ResetClusterParameterGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ResetClusterParameterGroupInput"} if s.ParameterGroupName == nil { invalidParams.Add(request.NewErrParamRequired("ParameterGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RestoreFromClusterSnapshotInput struct { _ struct{} `type:"structure"` // Reserved. AdditionalInfo *string `type:"string"` // If true, major version upgrades can be applied during the maintenance window // to the Amazon Redshift engine that is running on the cluster. // // Default: true AllowVersionUpgrade *bool `type:"boolean"` // The number of days that automated snapshots are retained. If the value is // 0, automated snapshots are disabled. Even if automated snapshots are disabled, // you can still create manual snapshots when you want with CreateClusterSnapshot. // // Default: The value selected for the cluster from which the snapshot was taken. // // Constraints: Must be a value from 0 to 35. AutomatedSnapshotRetentionPeriod *int64 `type:"integer"` // The Amazon EC2 Availability Zone in which to restore the cluster. // // Default: A random, system-chosen Availability Zone. // // Example: us-east-1a AvailabilityZone *string `type:"string"` // The identifier of the cluster that will be created from restoring the snapshot. // // Constraints: // // * Must contain from 1 to 63 alphanumeric characters or hyphens. // // * Alphabetic characters must be lowercase. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. // // * Must be unique for all clusters within an AWS account. // // ClusterIdentifier is a required field ClusterIdentifier *string `type:"string" required:"true"` // The name of the parameter group to be associated with this cluster. // // Default: The default Amazon Redshift cluster parameter group. For information // about the default parameter group, go to Working with Amazon Redshift Parameter // Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html). // // Constraints: // // * Must be 1 to 255 alphanumeric characters or hyphens. // // * First character must be a letter. // // * Cannot end with a hyphen or contain two consecutive hyphens. ClusterParameterGroupName *string `type:"string"` // A list of security groups to be associated with this cluster. // // Default: The default cluster security group for Amazon Redshift. // // Cluster security groups only apply to clusters outside of VPCs. ClusterSecurityGroups []*string `locationNameList:"ClusterSecurityGroupName" type:"list"` // The name of the subnet group where you want to cluster restored. // // A snapshot of cluster in VPC can be restored only in VPC. Therefore, you // must provide subnet group name where you want the cluster restored. ClusterSubnetGroupName *string `type:"string"` // The elastic IP (EIP) address for the cluster. ElasticIp *string `type:"string"` // An option that specifies whether to create the cluster with enhanced VPC // routing enabled. To create a cluster that uses enhanced VPC routing, the // cluster must be in a VPC. For more information, see Enhanced VPC Routing // (http://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html) // in the Amazon Redshift Cluster Management Guide. // // If this option is true, enhanced VPC routing is enabled. // // Default: false EnhancedVpcRouting *bool `type:"boolean"` // Specifies the name of the HSM client certificate the Amazon Redshift cluster // uses to retrieve the data encryption keys stored in an HSM. HsmClientCertificateIdentifier *string `type:"string"` // Specifies the name of the HSM configuration that contains the information // the Amazon Redshift cluster can use to retrieve and store keys in an HSM. HsmConfigurationIdentifier *string `type:"string"` // A list of AWS Identity and Access Management (IAM) roles that can be used // by the cluster to access other AWS services. You must supply the IAM roles // in their Amazon Resource Name (ARN) format. You can supply up to 10 IAM roles // in a single request. // // A cluster can have up to 10 IAM roles associated at any time. IamRoles []*string `locationNameList:"IamRoleArn" type:"list"` // The AWS Key Management Service (KMS) key ID of the encryption key that you // want to use to encrypt data in the cluster that you restore from a shared // snapshot. KmsKeyId *string `type:"string"` // The node type that the restored cluster will be provisioned with. // // Default: The node type of the cluster from which the snapshot was taken. // You can modify this if you are using any DS node type. In that case, you // can choose to restore into another DS node type of the same size. For example, // you can restore ds1.8xlarge into ds2.8xlarge, or ds2.xlarge into ds1.xlarge. // If you have a DC instance type, you must restore into that same instance // type and size. In other words, you can only restore a dc1.large instance // type into another dc1.large instance type. For more information about node // types, see About Clusters and Nodes (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#rs-about-clusters-and-nodes) // in the Amazon Redshift Cluster Management Guide NodeType *string `type:"string"` // The AWS customer account used to create or copy the snapshot. Required if // you are restoring a snapshot you do not own, optional if you own the snapshot. OwnerAccount *string `type:"string"` // The port number on which the cluster accepts connections. // // Default: The same port as the original cluster. // // Constraints: Must be between 1115 and 65535. Port *int64 `type:"integer"` // The weekly time range (in UTC) during which automated cluster maintenance // can occur. // // Format: ddd:hh24:mi-ddd:hh24:mi // // Default: The value selected for the cluster from which the snapshot was taken. // For more information about the time blocks for each region, see Maintenance // Windows (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#rs-maintenance-windows) // in Amazon Redshift Cluster Management Guide. // // Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun // // Constraints: Minimum 30-minute window. PreferredMaintenanceWindow *string `type:"string"` // If true, the cluster can be accessed from a public network. PubliclyAccessible *bool `type:"boolean"` // The name of the cluster the source snapshot was created from. This parameter // is required if your IAM user has a policy containing a snapshot resource // element that specifies anything other than * for the cluster name. SnapshotClusterIdentifier *string `type:"string"` // The name of the snapshot from which to create the new cluster. This parameter // isn't case sensitive. // // Example: my-snapshot-id // // SnapshotIdentifier is a required field SnapshotIdentifier *string `type:"string" required:"true"` // A list of Virtual Private Cloud (VPC) security groups to be associated with // the cluster. // // Default: The default VPC security group is associated with the cluster. // // VPC security groups only apply to clusters in VPCs. VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` } // String returns the string representation func (s RestoreFromClusterSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreFromClusterSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RestoreFromClusterSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RestoreFromClusterSnapshotInput"} if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } if s.SnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RestoreFromClusterSnapshotOutput struct { _ struct{} `type:"structure"` // Describes a cluster. Cluster *Cluster `type:"structure"` } // String returns the string representation func (s RestoreFromClusterSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreFromClusterSnapshotOutput) GoString() string { return s.String() } // Describes the status of a cluster restore action. Returns null if the cluster // was not created by restoring a snapshot. type RestoreStatus struct { _ struct{} `type:"structure"` // The number of megabytes per second being transferred from the backup storage. // Returns the average rate for a completed backup. CurrentRestoreRateInMegaBytesPerSecond *float64 `type:"double"` // The amount of time an in-progress restore has been running, or the amount // of time it took a completed restore to finish. ElapsedTimeInSeconds *int64 `type:"long"` // The estimate of the time remaining before the restore will complete. Returns // 0 for a completed restore. EstimatedTimeToCompletionInSeconds *int64 `type:"long"` // The number of megabytes that have been transferred from snapshot storage. ProgressInMegaBytes *int64 `type:"long"` // The size of the set of snapshot data used to restore the cluster. SnapshotSizeInMegaBytes *int64 `type:"long"` // The status of the restore action. Returns starting, restoring, completed, // or failed. Status *string `type:"string"` } // String returns the string representation func (s RestoreStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreStatus) GoString() string { return s.String() } type RestoreTableFromClusterSnapshotInput struct { _ struct{} `type:"structure"` // The identifier of the Amazon Redshift cluster to restore the table to. // // ClusterIdentifier is a required field ClusterIdentifier *string `type:"string" required:"true"` // The name of the table to create as a result of the current request. // // NewTableName is a required field NewTableName *string `type:"string" required:"true"` // The identifier of the snapshot to restore the table from. This snapshot must // have been created from the Amazon Redshift cluster specified by the ClusterIdentifier // parameter. // // SnapshotIdentifier is a required field SnapshotIdentifier *string `type:"string" required:"true"` // The name of the source database that contains the table to restore from. // // SourceDatabaseName is a required field SourceDatabaseName *string `type:"string" required:"true"` // The name of the source schema that contains the table to restore from. If // you do not specify a SourceSchemaName value, the default is public. SourceSchemaName *string `type:"string"` // The name of the source table to restore from. // // SourceTableName is a required field SourceTableName *string `type:"string" required:"true"` // The name of the database to restore the table to. TargetDatabaseName *string `type:"string"` // The name of the schema to restore the table to. TargetSchemaName *string `type:"string"` } // String returns the string representation func (s RestoreTableFromClusterSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreTableFromClusterSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RestoreTableFromClusterSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RestoreTableFromClusterSnapshotInput"} if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } if s.NewTableName == nil { invalidParams.Add(request.NewErrParamRequired("NewTableName")) } if s.SnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier")) } if s.SourceDatabaseName == nil { invalidParams.Add(request.NewErrParamRequired("SourceDatabaseName")) } if s.SourceTableName == nil { invalidParams.Add(request.NewErrParamRequired("SourceTableName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RestoreTableFromClusterSnapshotOutput struct { _ struct{} `type:"structure"` // Describes the status of a RestoreTableFromClusterSnapshot operation. TableRestoreStatus *TableRestoreStatus `type:"structure"` } // String returns the string representation func (s RestoreTableFromClusterSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreTableFromClusterSnapshotOutput) GoString() string { return s.String() } type RevokeClusterSecurityGroupIngressInput struct { _ struct{} `type:"structure"` // The IP range for which to revoke access. This range must be a valid Classless // Inter-Domain Routing (CIDR) block of IP addresses. If CIDRIP is specified, // EC2SecurityGroupName and EC2SecurityGroupOwnerId cannot be provided. CIDRIP *string `type:"string"` // The name of the security Group from which to revoke the ingress rule. // // ClusterSecurityGroupName is a required field ClusterSecurityGroupName *string `type:"string" required:"true"` // The name of the EC2 Security Group whose access is to be revoked. If EC2SecurityGroupName // is specified, EC2SecurityGroupOwnerId must also be provided and CIDRIP cannot // be provided. EC2SecurityGroupName *string `type:"string"` // The AWS account number of the owner of the security group specified in the // EC2SecurityGroupName parameter. The AWS access key ID is not an acceptable // value. If EC2SecurityGroupOwnerId is specified, EC2SecurityGroupName must // also be provided. and CIDRIP cannot be provided. // // Example: 111122223333 EC2SecurityGroupOwnerId *string `type:"string"` } // String returns the string representation func (s RevokeClusterSecurityGroupIngressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RevokeClusterSecurityGroupIngressInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RevokeClusterSecurityGroupIngressInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RevokeClusterSecurityGroupIngressInput"} if s.ClusterSecurityGroupName == nil { invalidParams.Add(request.NewErrParamRequired("ClusterSecurityGroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RevokeClusterSecurityGroupIngressOutput struct { _ struct{} `type:"structure"` // Describes a security group. ClusterSecurityGroup *ClusterSecurityGroup `type:"structure"` } // String returns the string representation func (s RevokeClusterSecurityGroupIngressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RevokeClusterSecurityGroupIngressOutput) GoString() string { return s.String() } type RevokeSnapshotAccessInput struct { _ struct{} `type:"structure"` // The identifier of the AWS customer account that can no longer restore the // specified snapshot. // // AccountWithRestoreAccess is a required field AccountWithRestoreAccess *string `type:"string" required:"true"` // The identifier of the cluster the snapshot was created from. This parameter // is required if your IAM user has a policy containing a snapshot resource // element that specifies anything other than * for the cluster name. SnapshotClusterIdentifier *string `type:"string"` // The identifier of the snapshot that the account can no longer access. // // SnapshotIdentifier is a required field SnapshotIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s RevokeSnapshotAccessInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RevokeSnapshotAccessInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RevokeSnapshotAccessInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RevokeSnapshotAccessInput"} if s.AccountWithRestoreAccess == nil { invalidParams.Add(request.NewErrParamRequired("AccountWithRestoreAccess")) } if s.SnapshotIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RevokeSnapshotAccessOutput struct { _ struct{} `type:"structure"` // Describes a snapshot. Snapshot *Snapshot `type:"structure"` } // String returns the string representation func (s RevokeSnapshotAccessOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RevokeSnapshotAccessOutput) GoString() string { return s.String() } type RotateEncryptionKeyInput struct { _ struct{} `type:"structure"` // The unique identifier of the cluster that you want to rotate the encryption // keys for. // // Constraints: Must be the name of valid cluster that has encryption enabled. // // ClusterIdentifier is a required field ClusterIdentifier *string `type:"string" required:"true"` } // String returns the string representation func (s RotateEncryptionKeyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RotateEncryptionKeyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RotateEncryptionKeyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RotateEncryptionKeyInput"} if s.ClusterIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RotateEncryptionKeyOutput struct { _ struct{} `type:"structure"` // Describes a cluster. Cluster *Cluster `type:"structure"` } // String returns the string representation func (s RotateEncryptionKeyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RotateEncryptionKeyOutput) GoString() string { return s.String() } // Describes a snapshot. type Snapshot struct { _ struct{} `type:"structure"` // A list of the AWS customer accounts authorized to restore the snapshot. Returns // null if no accounts are authorized. Visible only to the snapshot owner. AccountsWithRestoreAccess []*AccountWithRestoreAccess `locationNameList:"AccountWithRestoreAccess" type:"list"` // The size of the incremental backup. ActualIncrementalBackupSizeInMegaBytes *float64 `type:"double"` // The Availability Zone in which the cluster was created. AvailabilityZone *string `type:"string"` // The number of megabytes that have been transferred to the snapshot backup. BackupProgressInMegaBytes *float64 `type:"double"` // The time (UTC) when the cluster was originally created. ClusterCreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The identifier of the cluster for which the snapshot was taken. ClusterIdentifier *string `type:"string"` // The version ID of the Amazon Redshift engine that is running on the cluster. ClusterVersion *string `type:"string"` // The number of megabytes per second being transferred to the snapshot backup. // Returns 0 for a completed backup. CurrentBackupRateInMegaBytesPerSecond *float64 `type:"double"` // The name of the database that was created when the cluster was created. DBName *string `type:"string"` // The amount of time an in-progress snapshot backup has been running, or the // amount of time it took a completed backup to finish. ElapsedTimeInSeconds *int64 `type:"long"` // If true, the data in the snapshot is encrypted at rest. Encrypted *bool `type:"boolean"` // A boolean that indicates whether the snapshot data is encrypted using the // HSM keys of the source cluster. true indicates that the data is encrypted // using HSM keys. EncryptedWithHSM *bool `type:"boolean"` // An option that specifies whether to create the cluster with enhanced VPC // routing enabled. To create a cluster that uses enhanced VPC routing, the // cluster must be in a VPC. For more information, see Enhanced VPC Routing // (http://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html) // in the Amazon Redshift Cluster Management Guide. // // If this option is true, enhanced VPC routing is enabled. // // Default: false EnhancedVpcRouting *bool `type:"boolean"` // The estimate of the time remaining before the snapshot backup will complete. // Returns 0 for a completed backup. EstimatedSecondsToCompletion *int64 `type:"long"` // The AWS Key Management Service (KMS) key ID of the encryption key that was // used to encrypt data in the cluster from which the snapshot was taken. KmsKeyId *string `type:"string"` // The master user name for the cluster. MasterUsername *string `type:"string"` // The node type of the nodes in the cluster. NodeType *string `type:"string"` // The number of nodes in the cluster. NumberOfNodes *int64 `type:"integer"` // For manual snapshots, the AWS customer account used to create or copy the // snapshot. For automatic snapshots, the owner of the cluster. The owner can // perform all snapshot actions, such as sharing a manual snapshot. OwnerAccount *string `type:"string"` // The port that the cluster is listening on. Port *int64 `type:"integer"` // The list of node types that this cluster snapshot is able to restore into. RestorableNodeTypes []*string `locationNameList:"NodeType" type:"list"` // The time (UTC) when Amazon Redshift began the snapshot. A snapshot contains // a copy of the cluster data as of this exact time. SnapshotCreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The snapshot identifier that is provided in the request. SnapshotIdentifier *string `type:"string"` // The snapshot type. Snapshots created using CreateClusterSnapshot and CopyClusterSnapshot // will be of type "manual". SnapshotType *string `type:"string"` // The source region from which the snapshot was copied. SourceRegion *string `type:"string"` // The snapshot status. The value of the status depends on the API operation // used. // // * CreateClusterSnapshot and CopyClusterSnapshot returns status as "creating". // // // * DescribeClusterSnapshots returns status as "creating", "available", // "final snapshot", or "failed". // // * DeleteClusterSnapshot returns status as "deleted". Status *string `type:"string"` // The list of tags for the cluster snapshot. Tags []*Tag `locationNameList:"Tag" type:"list"` // The size of the complete set of backup data that would be used to restore // the cluster. TotalBackupSizeInMegaBytes *float64 `type:"double"` // The VPC identifier of the cluster if the snapshot is from a cluster in a // VPC. Otherwise, this field is not in the output. VpcId *string `type:"string"` } // String returns the string representation func (s Snapshot) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Snapshot) GoString() string { return s.String() } // The snapshot copy grant that grants Amazon Redshift permission to encrypt // copied snapshots with the specified customer master key (CMK) from AWS KMS // in the destination region. // // For more information about managing snapshot copy grants, go to Amazon Redshift // Database Encryption (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-db-encryption.html) // in the Amazon Redshift Cluster Management Guide. type SnapshotCopyGrant struct { _ struct{} `type:"structure"` // The unique identifier of the customer master key (CMK) in AWS KMS to which // Amazon Redshift is granted permission. KmsKeyId *string `type:"string"` // The name of the snapshot copy grant. SnapshotCopyGrantName *string `type:"string"` // A list of tag instances. Tags []*Tag `locationNameList:"Tag" type:"list"` } // String returns the string representation func (s SnapshotCopyGrant) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SnapshotCopyGrant) GoString() string { return s.String() } // Describes a subnet. type Subnet struct { _ struct{} `type:"structure"` // Describes an availability zone. SubnetAvailabilityZone *AvailabilityZone `type:"structure"` // The identifier of the subnet. SubnetIdentifier *string `type:"string"` // The status of the subnet. SubnetStatus *string `type:"string"` } // String returns the string representation func (s Subnet) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Subnet) GoString() string { return s.String() } // Describes the status of a RestoreTableFromClusterSnapshot operation. type TableRestoreStatus struct { _ struct{} `type:"structure"` // The identifier of the Amazon Redshift cluster that the table is being restored // to. ClusterIdentifier *string `type:"string"` // A description of the status of the table restore request. Status values include // SUCCEEDED, FAILED, CANCELED, PENDING, IN_PROGRESS. Message *string `type:"string"` // The name of the table to create as a result of the table restore request. NewTableName *string `type:"string"` // The amount of data restored to the new table so far, in megabytes (MB). ProgressInMegaBytes *int64 `type:"long"` // The time that the table restore request was made, in Universal Coordinated // Time (UTC). RequestTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The identifier of the snapshot that the table is being restored from. SnapshotIdentifier *string `type:"string"` // The name of the source database that contains the table being restored. SourceDatabaseName *string `type:"string"` // The name of the source schema that contains the table being restored. SourceSchemaName *string `type:"string"` // The name of the source table being restored. SourceTableName *string `type:"string"` // A value that describes the current state of the table restore request. // // Valid Values: SUCCEEDED, FAILED, CANCELED, PENDING, IN_PROGRESS Status *string `type:"string" enum:"TableRestoreStatusType"` // The unique identifier for the table restore request. TableRestoreRequestId *string `type:"string"` // The name of the database to restore the table to. TargetDatabaseName *string `type:"string"` // The name of the schema to restore the table to. TargetSchemaName *string `type:"string"` // The total amount of data to restore to the new table, in megabytes (MB). TotalDataInMegaBytes *int64 `type:"long"` } // String returns the string representation func (s TableRestoreStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TableRestoreStatus) GoString() string { return s.String() } // A tag consisting of a name/value pair for a resource. type Tag struct { _ struct{} `type:"structure"` // The key, or name, for the resource tag. Key *string `type:"string"` // The value for the resource tag. Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // A tag and its associated resource. type TaggedResource struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) with which the tag is associated. For example, // arn:aws:redshift:us-east-1:123456789:cluster:t1. ResourceName *string `type:"string"` // The type of resource with which the tag is associated. Valid resource types // are: // // * Cluster // // * CIDR/IP // // * EC2 security group // // * Snapshot // // * Cluster security group // // * Subnet group // // * HSM connection // // * HSM certificate // // * Parameter group // // For more information about Amazon Redshift resource types and constructing // ARNs, go to Constructing an Amazon Redshift Amazon Resource Name (ARN) (http://docs.aws.amazon.com/redshift/latest/mgmt/constructing-redshift-arn.html) // in the Amazon Redshift Cluster Management Guide. ResourceType *string `type:"string"` // The tag for the resource. Tag *Tag `type:"structure"` } // String returns the string representation func (s TaggedResource) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TaggedResource) GoString() string { return s.String() } // Describes the members of a VPC security group. type VpcSecurityGroupMembership struct { _ struct{} `type:"structure"` // The status of the VPC security group. Status *string `type:"string"` // The identifier of the VPC security group. VpcSecurityGroupId *string `type:"string"` } // String returns the string representation func (s VpcSecurityGroupMembership) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VpcSecurityGroupMembership) GoString() string { return s.String() } const ( // ParameterApplyTypeStatic is a ParameterApplyType enum value ParameterApplyTypeStatic = "static" // ParameterApplyTypeDynamic is a ParameterApplyType enum value ParameterApplyTypeDynamic = "dynamic" ) const ( // SourceTypeCluster is a SourceType enum value SourceTypeCluster = "cluster" // SourceTypeClusterParameterGroup is a SourceType enum value SourceTypeClusterParameterGroup = "cluster-parameter-group" // SourceTypeClusterSecurityGroup is a SourceType enum value SourceTypeClusterSecurityGroup = "cluster-security-group" // SourceTypeClusterSnapshot is a SourceType enum value SourceTypeClusterSnapshot = "cluster-snapshot" ) const ( // TableRestoreStatusTypePending is a TableRestoreStatusType enum value TableRestoreStatusTypePending = "PENDING" // TableRestoreStatusTypeInProgress is a TableRestoreStatusType enum value TableRestoreStatusTypeInProgress = "IN_PROGRESS" // TableRestoreStatusTypeSucceeded is a TableRestoreStatusType enum value TableRestoreStatusTypeSucceeded = "SUCCEEDED" // TableRestoreStatusTypeFailed is a TableRestoreStatusType enum value TableRestoreStatusTypeFailed = "FAILED" // TableRestoreStatusTypeCanceled is a TableRestoreStatusType enum value TableRestoreStatusTypeCanceled = "CANCELED" ) aws-sdk-go-1.4.22/service/redshift/examples_test.go000066400000000000000000001356701300374646400222530ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package redshift_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/redshift" ) var _ time.Duration var _ bytes.Buffer func ExampleRedshift_AuthorizeClusterSecurityGroupIngress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.AuthorizeClusterSecurityGroupIngressInput{ ClusterSecurityGroupName: aws.String("String"), // Required CIDRIP: aws.String("String"), EC2SecurityGroupName: aws.String("String"), EC2SecurityGroupOwnerId: aws.String("String"), } resp, err := svc.AuthorizeClusterSecurityGroupIngress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_AuthorizeSnapshotAccess() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.AuthorizeSnapshotAccessInput{ AccountWithRestoreAccess: aws.String("String"), // Required SnapshotIdentifier: aws.String("String"), // Required SnapshotClusterIdentifier: aws.String("String"), } resp, err := svc.AuthorizeSnapshotAccess(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_CopyClusterSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.CopyClusterSnapshotInput{ SourceSnapshotIdentifier: aws.String("String"), // Required TargetSnapshotIdentifier: aws.String("String"), // Required SourceSnapshotClusterIdentifier: aws.String("String"), } resp, err := svc.CopyClusterSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_CreateCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.CreateClusterInput{ ClusterIdentifier: aws.String("String"), // Required MasterUserPassword: aws.String("String"), // Required MasterUsername: aws.String("String"), // Required NodeType: aws.String("String"), // Required AdditionalInfo: aws.String("String"), AllowVersionUpgrade: aws.Bool(true), AutomatedSnapshotRetentionPeriod: aws.Int64(1), AvailabilityZone: aws.String("String"), ClusterParameterGroupName: aws.String("String"), ClusterSecurityGroups: []*string{ aws.String("String"), // Required // More values... }, ClusterSubnetGroupName: aws.String("String"), ClusterType: aws.String("String"), ClusterVersion: aws.String("String"), DBName: aws.String("String"), ElasticIp: aws.String("String"), Encrypted: aws.Bool(true), EnhancedVpcRouting: aws.Bool(true), HsmClientCertificateIdentifier: aws.String("String"), HsmConfigurationIdentifier: aws.String("String"), IamRoles: []*string{ aws.String("String"), // Required // More values... }, KmsKeyId: aws.String("String"), NumberOfNodes: aws.Int64(1), Port: aws.Int64(1), PreferredMaintenanceWindow: aws.String("String"), PubliclyAccessible: aws.Bool(true), Tags: []*redshift.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, VpcSecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.CreateCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_CreateClusterParameterGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.CreateClusterParameterGroupInput{ Description: aws.String("String"), // Required ParameterGroupFamily: aws.String("String"), // Required ParameterGroupName: aws.String("String"), // Required Tags: []*redshift.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateClusterParameterGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_CreateClusterSecurityGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.CreateClusterSecurityGroupInput{ ClusterSecurityGroupName: aws.String("String"), // Required Description: aws.String("String"), // Required Tags: []*redshift.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateClusterSecurityGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_CreateClusterSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.CreateClusterSnapshotInput{ ClusterIdentifier: aws.String("String"), // Required SnapshotIdentifier: aws.String("String"), // Required Tags: []*redshift.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateClusterSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_CreateClusterSubnetGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.CreateClusterSubnetGroupInput{ ClusterSubnetGroupName: aws.String("String"), // Required Description: aws.String("String"), // Required SubnetIds: []*string{ // Required aws.String("String"), // Required // More values... }, Tags: []*redshift.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateClusterSubnetGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_CreateEventSubscription() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.CreateEventSubscriptionInput{ SnsTopicArn: aws.String("String"), // Required SubscriptionName: aws.String("String"), // Required Enabled: aws.Bool(true), EventCategories: []*string{ aws.String("String"), // Required // More values... }, Severity: aws.String("String"), SourceIds: []*string{ aws.String("String"), // Required // More values... }, SourceType: aws.String("String"), Tags: []*redshift.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateEventSubscription(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_CreateHsmClientCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.CreateHsmClientCertificateInput{ HsmClientCertificateIdentifier: aws.String("String"), // Required Tags: []*redshift.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateHsmClientCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_CreateHsmConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.CreateHsmConfigurationInput{ Description: aws.String("String"), // Required HsmConfigurationIdentifier: aws.String("String"), // Required HsmIpAddress: aws.String("String"), // Required HsmPartitionName: aws.String("String"), // Required HsmPartitionPassword: aws.String("String"), // Required HsmServerPublicCertificate: aws.String("String"), // Required Tags: []*redshift.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateHsmConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_CreateSnapshotCopyGrant() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.CreateSnapshotCopyGrantInput{ SnapshotCopyGrantName: aws.String("String"), // Required KmsKeyId: aws.String("String"), Tags: []*redshift.Tag{ { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateSnapshotCopyGrant(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_CreateTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.CreateTagsInput{ ResourceName: aws.String("String"), // Required Tags: []*redshift.Tag{ // Required { // Required Key: aws.String("String"), Value: aws.String("String"), }, // More values... }, } resp, err := svc.CreateTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DeleteCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DeleteClusterInput{ ClusterIdentifier: aws.String("String"), // Required FinalClusterSnapshotIdentifier: aws.String("String"), SkipFinalClusterSnapshot: aws.Bool(true), } resp, err := svc.DeleteCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DeleteClusterParameterGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DeleteClusterParameterGroupInput{ ParameterGroupName: aws.String("String"), // Required } resp, err := svc.DeleteClusterParameterGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DeleteClusterSecurityGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DeleteClusterSecurityGroupInput{ ClusterSecurityGroupName: aws.String("String"), // Required } resp, err := svc.DeleteClusterSecurityGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DeleteClusterSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DeleteClusterSnapshotInput{ SnapshotIdentifier: aws.String("String"), // Required SnapshotClusterIdentifier: aws.String("String"), } resp, err := svc.DeleteClusterSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DeleteClusterSubnetGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DeleteClusterSubnetGroupInput{ ClusterSubnetGroupName: aws.String("String"), // Required } resp, err := svc.DeleteClusterSubnetGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DeleteEventSubscription() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DeleteEventSubscriptionInput{ SubscriptionName: aws.String("String"), // Required } resp, err := svc.DeleteEventSubscription(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DeleteHsmClientCertificate() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DeleteHsmClientCertificateInput{ HsmClientCertificateIdentifier: aws.String("String"), // Required } resp, err := svc.DeleteHsmClientCertificate(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DeleteHsmConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DeleteHsmConfigurationInput{ HsmConfigurationIdentifier: aws.String("String"), // Required } resp, err := svc.DeleteHsmConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DeleteSnapshotCopyGrant() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DeleteSnapshotCopyGrantInput{ SnapshotCopyGrantName: aws.String("String"), // Required } resp, err := svc.DeleteSnapshotCopyGrant(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DeleteTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DeleteTagsInput{ ResourceName: aws.String("String"), // Required TagKeys: []*string{ // Required aws.String("String"), // Required // More values... }, } resp, err := svc.DeleteTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeClusterParameterGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeClusterParameterGroupsInput{ Marker: aws.String("String"), MaxRecords: aws.Int64(1), ParameterGroupName: aws.String("String"), TagKeys: []*string{ aws.String("String"), // Required // More values... }, TagValues: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeClusterParameterGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeClusterParameters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeClusterParametersInput{ ParameterGroupName: aws.String("String"), // Required Marker: aws.String("String"), MaxRecords: aws.Int64(1), Source: aws.String("String"), } resp, err := svc.DescribeClusterParameters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeClusterSecurityGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeClusterSecurityGroupsInput{ ClusterSecurityGroupName: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), TagKeys: []*string{ aws.String("String"), // Required // More values... }, TagValues: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeClusterSecurityGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeClusterSnapshots() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeClusterSnapshotsInput{ ClusterIdentifier: aws.String("String"), EndTime: aws.Time(time.Now()), Marker: aws.String("String"), MaxRecords: aws.Int64(1), OwnerAccount: aws.String("String"), SnapshotIdentifier: aws.String("String"), SnapshotType: aws.String("String"), StartTime: aws.Time(time.Now()), TagKeys: []*string{ aws.String("String"), // Required // More values... }, TagValues: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeClusterSnapshots(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeClusterSubnetGroups() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeClusterSubnetGroupsInput{ ClusterSubnetGroupName: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), TagKeys: []*string{ aws.String("String"), // Required // More values... }, TagValues: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeClusterSubnetGroups(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeClusterVersions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeClusterVersionsInput{ ClusterParameterGroupFamily: aws.String("String"), ClusterVersion: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeClusterVersions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeClusters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeClustersInput{ ClusterIdentifier: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), TagKeys: []*string{ aws.String("String"), // Required // More values... }, TagValues: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeClusters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeDefaultClusterParameters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeDefaultClusterParametersInput{ ParameterGroupFamily: aws.String("String"), // Required Marker: aws.String("String"), MaxRecords: aws.Int64(1), } resp, err := svc.DescribeDefaultClusterParameters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeEventCategories() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeEventCategoriesInput{ SourceType: aws.String("String"), } resp, err := svc.DescribeEventCategories(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeEventSubscriptions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeEventSubscriptionsInput{ Marker: aws.String("String"), MaxRecords: aws.Int64(1), SubscriptionName: aws.String("String"), } resp, err := svc.DescribeEventSubscriptions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeEvents() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeEventsInput{ Duration: aws.Int64(1), EndTime: aws.Time(time.Now()), Marker: aws.String("String"), MaxRecords: aws.Int64(1), SourceIdentifier: aws.String("String"), SourceType: aws.String("SourceType"), StartTime: aws.Time(time.Now()), } resp, err := svc.DescribeEvents(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeHsmClientCertificates() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeHsmClientCertificatesInput{ HsmClientCertificateIdentifier: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), TagKeys: []*string{ aws.String("String"), // Required // More values... }, TagValues: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeHsmClientCertificates(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeHsmConfigurations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeHsmConfigurationsInput{ HsmConfigurationIdentifier: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), TagKeys: []*string{ aws.String("String"), // Required // More values... }, TagValues: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeHsmConfigurations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeLoggingStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeLoggingStatusInput{ ClusterIdentifier: aws.String("String"), // Required } resp, err := svc.DescribeLoggingStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeOrderableClusterOptions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeOrderableClusterOptionsInput{ ClusterVersion: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), NodeType: aws.String("String"), } resp, err := svc.DescribeOrderableClusterOptions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeReservedNodeOfferings() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeReservedNodeOfferingsInput{ Marker: aws.String("String"), MaxRecords: aws.Int64(1), ReservedNodeOfferingId: aws.String("String"), } resp, err := svc.DescribeReservedNodeOfferings(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeReservedNodes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeReservedNodesInput{ Marker: aws.String("String"), MaxRecords: aws.Int64(1), ReservedNodeId: aws.String("String"), } resp, err := svc.DescribeReservedNodes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeResize() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeResizeInput{ ClusterIdentifier: aws.String("String"), // Required } resp, err := svc.DescribeResize(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeSnapshotCopyGrants() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeSnapshotCopyGrantsInput{ Marker: aws.String("String"), MaxRecords: aws.Int64(1), SnapshotCopyGrantName: aws.String("String"), TagKeys: []*string{ aws.String("String"), // Required // More values... }, TagValues: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeSnapshotCopyGrants(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeTableRestoreStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeTableRestoreStatusInput{ ClusterIdentifier: aws.String("String"), Marker: aws.String("String"), MaxRecords: aws.Int64(1), TableRestoreRequestId: aws.String("String"), } resp, err := svc.DescribeTableRestoreStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DescribeTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DescribeTagsInput{ Marker: aws.String("String"), MaxRecords: aws.Int64(1), ResourceName: aws.String("String"), ResourceType: aws.String("String"), TagKeys: []*string{ aws.String("String"), // Required // More values... }, TagValues: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DisableLogging() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DisableLoggingInput{ ClusterIdentifier: aws.String("String"), // Required } resp, err := svc.DisableLogging(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_DisableSnapshotCopy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.DisableSnapshotCopyInput{ ClusterIdentifier: aws.String("String"), // Required } resp, err := svc.DisableSnapshotCopy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_EnableLogging() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.EnableLoggingInput{ BucketName: aws.String("String"), // Required ClusterIdentifier: aws.String("String"), // Required S3KeyPrefix: aws.String("String"), } resp, err := svc.EnableLogging(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_EnableSnapshotCopy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.EnableSnapshotCopyInput{ ClusterIdentifier: aws.String("String"), // Required DestinationRegion: aws.String("String"), // Required RetentionPeriod: aws.Int64(1), SnapshotCopyGrantName: aws.String("String"), } resp, err := svc.EnableSnapshotCopy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_ModifyCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.ModifyClusterInput{ ClusterIdentifier: aws.String("String"), // Required AllowVersionUpgrade: aws.Bool(true), AutomatedSnapshotRetentionPeriod: aws.Int64(1), ClusterParameterGroupName: aws.String("String"), ClusterSecurityGroups: []*string{ aws.String("String"), // Required // More values... }, ClusterType: aws.String("String"), ClusterVersion: aws.String("String"), ElasticIp: aws.String("String"), EnhancedVpcRouting: aws.Bool(true), HsmClientCertificateIdentifier: aws.String("String"), HsmConfigurationIdentifier: aws.String("String"), MasterUserPassword: aws.String("String"), NewClusterIdentifier: aws.String("String"), NodeType: aws.String("String"), NumberOfNodes: aws.Int64(1), PreferredMaintenanceWindow: aws.String("String"), PubliclyAccessible: aws.Bool(true), VpcSecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.ModifyCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_ModifyClusterIamRoles() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.ModifyClusterIamRolesInput{ ClusterIdentifier: aws.String("String"), // Required AddIamRoles: []*string{ aws.String("String"), // Required // More values... }, RemoveIamRoles: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.ModifyClusterIamRoles(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_ModifyClusterParameterGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.ModifyClusterParameterGroupInput{ ParameterGroupName: aws.String("String"), // Required Parameters: []*redshift.Parameter{ // Required { // Required AllowedValues: aws.String("String"), ApplyType: aws.String("ParameterApplyType"), DataType: aws.String("String"), Description: aws.String("String"), IsModifiable: aws.Bool(true), MinimumEngineVersion: aws.String("String"), ParameterName: aws.String("String"), ParameterValue: aws.String("String"), Source: aws.String("String"), }, // More values... }, } resp, err := svc.ModifyClusterParameterGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_ModifyClusterSubnetGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.ModifyClusterSubnetGroupInput{ ClusterSubnetGroupName: aws.String("String"), // Required SubnetIds: []*string{ // Required aws.String("String"), // Required // More values... }, Description: aws.String("String"), } resp, err := svc.ModifyClusterSubnetGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_ModifyEventSubscription() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.ModifyEventSubscriptionInput{ SubscriptionName: aws.String("String"), // Required Enabled: aws.Bool(true), EventCategories: []*string{ aws.String("String"), // Required // More values... }, Severity: aws.String("String"), SnsTopicArn: aws.String("String"), SourceIds: []*string{ aws.String("String"), // Required // More values... }, SourceType: aws.String("String"), } resp, err := svc.ModifyEventSubscription(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_ModifySnapshotCopyRetentionPeriod() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.ModifySnapshotCopyRetentionPeriodInput{ ClusterIdentifier: aws.String("String"), // Required RetentionPeriod: aws.Int64(1), // Required } resp, err := svc.ModifySnapshotCopyRetentionPeriod(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_PurchaseReservedNodeOffering() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.PurchaseReservedNodeOfferingInput{ ReservedNodeOfferingId: aws.String("String"), // Required NodeCount: aws.Int64(1), } resp, err := svc.PurchaseReservedNodeOffering(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_RebootCluster() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.RebootClusterInput{ ClusterIdentifier: aws.String("String"), // Required } resp, err := svc.RebootCluster(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_ResetClusterParameterGroup() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.ResetClusterParameterGroupInput{ ParameterGroupName: aws.String("String"), // Required Parameters: []*redshift.Parameter{ { // Required AllowedValues: aws.String("String"), ApplyType: aws.String("ParameterApplyType"), DataType: aws.String("String"), Description: aws.String("String"), IsModifiable: aws.Bool(true), MinimumEngineVersion: aws.String("String"), ParameterName: aws.String("String"), ParameterValue: aws.String("String"), Source: aws.String("String"), }, // More values... }, ResetAllParameters: aws.Bool(true), } resp, err := svc.ResetClusterParameterGroup(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_RestoreFromClusterSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.RestoreFromClusterSnapshotInput{ ClusterIdentifier: aws.String("String"), // Required SnapshotIdentifier: aws.String("String"), // Required AdditionalInfo: aws.String("String"), AllowVersionUpgrade: aws.Bool(true), AutomatedSnapshotRetentionPeriod: aws.Int64(1), AvailabilityZone: aws.String("String"), ClusterParameterGroupName: aws.String("String"), ClusterSecurityGroups: []*string{ aws.String("String"), // Required // More values... }, ClusterSubnetGroupName: aws.String("String"), ElasticIp: aws.String("String"), EnhancedVpcRouting: aws.Bool(true), HsmClientCertificateIdentifier: aws.String("String"), HsmConfigurationIdentifier: aws.String("String"), IamRoles: []*string{ aws.String("String"), // Required // More values... }, KmsKeyId: aws.String("String"), NodeType: aws.String("String"), OwnerAccount: aws.String("String"), Port: aws.Int64(1), PreferredMaintenanceWindow: aws.String("String"), PubliclyAccessible: aws.Bool(true), SnapshotClusterIdentifier: aws.String("String"), VpcSecurityGroupIds: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.RestoreFromClusterSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_RestoreTableFromClusterSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.RestoreTableFromClusterSnapshotInput{ ClusterIdentifier: aws.String("String"), // Required NewTableName: aws.String("String"), // Required SnapshotIdentifier: aws.String("String"), // Required SourceDatabaseName: aws.String("String"), // Required SourceTableName: aws.String("String"), // Required SourceSchemaName: aws.String("String"), TargetDatabaseName: aws.String("String"), TargetSchemaName: aws.String("String"), } resp, err := svc.RestoreTableFromClusterSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_RevokeClusterSecurityGroupIngress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.RevokeClusterSecurityGroupIngressInput{ ClusterSecurityGroupName: aws.String("String"), // Required CIDRIP: aws.String("String"), EC2SecurityGroupName: aws.String("String"), EC2SecurityGroupOwnerId: aws.String("String"), } resp, err := svc.RevokeClusterSecurityGroupIngress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_RevokeSnapshotAccess() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.RevokeSnapshotAccessInput{ AccountWithRestoreAccess: aws.String("String"), // Required SnapshotIdentifier: aws.String("String"), // Required SnapshotClusterIdentifier: aws.String("String"), } resp, err := svc.RevokeSnapshotAccess(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRedshift_RotateEncryptionKey() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := redshift.New(sess) params := &redshift.RotateEncryptionKeyInput{ ClusterIdentifier: aws.String("String"), // Required } resp, err := svc.RotateEncryptionKey(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/redshift/redshiftiface/000077500000000000000000000000001300374646400216335ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/redshift/redshiftiface/interface.go000066400000000000000000000467111300374646400241330ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package redshiftiface provides an interface to enable mocking the Amazon Redshift service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package redshiftiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/redshift" ) // RedshiftAPI provides an interface to enable mocking the // redshift.Redshift service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Redshift. // func myFunc(svc redshiftiface.RedshiftAPI) bool { // // Make svc.AuthorizeClusterSecurityGroupIngress request // } // // func main() { // sess := session.New() // svc := redshift.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockRedshiftClient struct { // redshiftiface.RedshiftAPI // } // func (m *mockRedshiftClient) AuthorizeClusterSecurityGroupIngress(input *redshift.AuthorizeClusterSecurityGroupIngressInput) (*redshift.AuthorizeClusterSecurityGroupIngressOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockRedshiftClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type RedshiftAPI interface { AuthorizeClusterSecurityGroupIngressRequest(*redshift.AuthorizeClusterSecurityGroupIngressInput) (*request.Request, *redshift.AuthorizeClusterSecurityGroupIngressOutput) AuthorizeClusterSecurityGroupIngress(*redshift.AuthorizeClusterSecurityGroupIngressInput) (*redshift.AuthorizeClusterSecurityGroupIngressOutput, error) AuthorizeSnapshotAccessRequest(*redshift.AuthorizeSnapshotAccessInput) (*request.Request, *redshift.AuthorizeSnapshotAccessOutput) AuthorizeSnapshotAccess(*redshift.AuthorizeSnapshotAccessInput) (*redshift.AuthorizeSnapshotAccessOutput, error) CopyClusterSnapshotRequest(*redshift.CopyClusterSnapshotInput) (*request.Request, *redshift.CopyClusterSnapshotOutput) CopyClusterSnapshot(*redshift.CopyClusterSnapshotInput) (*redshift.CopyClusterSnapshotOutput, error) CreateClusterRequest(*redshift.CreateClusterInput) (*request.Request, *redshift.CreateClusterOutput) CreateCluster(*redshift.CreateClusterInput) (*redshift.CreateClusterOutput, error) CreateClusterParameterGroupRequest(*redshift.CreateClusterParameterGroupInput) (*request.Request, *redshift.CreateClusterParameterGroupOutput) CreateClusterParameterGroup(*redshift.CreateClusterParameterGroupInput) (*redshift.CreateClusterParameterGroupOutput, error) CreateClusterSecurityGroupRequest(*redshift.CreateClusterSecurityGroupInput) (*request.Request, *redshift.CreateClusterSecurityGroupOutput) CreateClusterSecurityGroup(*redshift.CreateClusterSecurityGroupInput) (*redshift.CreateClusterSecurityGroupOutput, error) CreateClusterSnapshotRequest(*redshift.CreateClusterSnapshotInput) (*request.Request, *redshift.CreateClusterSnapshotOutput) CreateClusterSnapshot(*redshift.CreateClusterSnapshotInput) (*redshift.CreateClusterSnapshotOutput, error) CreateClusterSubnetGroupRequest(*redshift.CreateClusterSubnetGroupInput) (*request.Request, *redshift.CreateClusterSubnetGroupOutput) CreateClusterSubnetGroup(*redshift.CreateClusterSubnetGroupInput) (*redshift.CreateClusterSubnetGroupOutput, error) CreateEventSubscriptionRequest(*redshift.CreateEventSubscriptionInput) (*request.Request, *redshift.CreateEventSubscriptionOutput) CreateEventSubscription(*redshift.CreateEventSubscriptionInput) (*redshift.CreateEventSubscriptionOutput, error) CreateHsmClientCertificateRequest(*redshift.CreateHsmClientCertificateInput) (*request.Request, *redshift.CreateHsmClientCertificateOutput) CreateHsmClientCertificate(*redshift.CreateHsmClientCertificateInput) (*redshift.CreateHsmClientCertificateOutput, error) CreateHsmConfigurationRequest(*redshift.CreateHsmConfigurationInput) (*request.Request, *redshift.CreateHsmConfigurationOutput) CreateHsmConfiguration(*redshift.CreateHsmConfigurationInput) (*redshift.CreateHsmConfigurationOutput, error) CreateSnapshotCopyGrantRequest(*redshift.CreateSnapshotCopyGrantInput) (*request.Request, *redshift.CreateSnapshotCopyGrantOutput) CreateSnapshotCopyGrant(*redshift.CreateSnapshotCopyGrantInput) (*redshift.CreateSnapshotCopyGrantOutput, error) CreateTagsRequest(*redshift.CreateTagsInput) (*request.Request, *redshift.CreateTagsOutput) CreateTags(*redshift.CreateTagsInput) (*redshift.CreateTagsOutput, error) DeleteClusterRequest(*redshift.DeleteClusterInput) (*request.Request, *redshift.DeleteClusterOutput) DeleteCluster(*redshift.DeleteClusterInput) (*redshift.DeleteClusterOutput, error) DeleteClusterParameterGroupRequest(*redshift.DeleteClusterParameterGroupInput) (*request.Request, *redshift.DeleteClusterParameterGroupOutput) DeleteClusterParameterGroup(*redshift.DeleteClusterParameterGroupInput) (*redshift.DeleteClusterParameterGroupOutput, error) DeleteClusterSecurityGroupRequest(*redshift.DeleteClusterSecurityGroupInput) (*request.Request, *redshift.DeleteClusterSecurityGroupOutput) DeleteClusterSecurityGroup(*redshift.DeleteClusterSecurityGroupInput) (*redshift.DeleteClusterSecurityGroupOutput, error) DeleteClusterSnapshotRequest(*redshift.DeleteClusterSnapshotInput) (*request.Request, *redshift.DeleteClusterSnapshotOutput) DeleteClusterSnapshot(*redshift.DeleteClusterSnapshotInput) (*redshift.DeleteClusterSnapshotOutput, error) DeleteClusterSubnetGroupRequest(*redshift.DeleteClusterSubnetGroupInput) (*request.Request, *redshift.DeleteClusterSubnetGroupOutput) DeleteClusterSubnetGroup(*redshift.DeleteClusterSubnetGroupInput) (*redshift.DeleteClusterSubnetGroupOutput, error) DeleteEventSubscriptionRequest(*redshift.DeleteEventSubscriptionInput) (*request.Request, *redshift.DeleteEventSubscriptionOutput) DeleteEventSubscription(*redshift.DeleteEventSubscriptionInput) (*redshift.DeleteEventSubscriptionOutput, error) DeleteHsmClientCertificateRequest(*redshift.DeleteHsmClientCertificateInput) (*request.Request, *redshift.DeleteHsmClientCertificateOutput) DeleteHsmClientCertificate(*redshift.DeleteHsmClientCertificateInput) (*redshift.DeleteHsmClientCertificateOutput, error) DeleteHsmConfigurationRequest(*redshift.DeleteHsmConfigurationInput) (*request.Request, *redshift.DeleteHsmConfigurationOutput) DeleteHsmConfiguration(*redshift.DeleteHsmConfigurationInput) (*redshift.DeleteHsmConfigurationOutput, error) DeleteSnapshotCopyGrantRequest(*redshift.DeleteSnapshotCopyGrantInput) (*request.Request, *redshift.DeleteSnapshotCopyGrantOutput) DeleteSnapshotCopyGrant(*redshift.DeleteSnapshotCopyGrantInput) (*redshift.DeleteSnapshotCopyGrantOutput, error) DeleteTagsRequest(*redshift.DeleteTagsInput) (*request.Request, *redshift.DeleteTagsOutput) DeleteTags(*redshift.DeleteTagsInput) (*redshift.DeleteTagsOutput, error) DescribeClusterParameterGroupsRequest(*redshift.DescribeClusterParameterGroupsInput) (*request.Request, *redshift.DescribeClusterParameterGroupsOutput) DescribeClusterParameterGroups(*redshift.DescribeClusterParameterGroupsInput) (*redshift.DescribeClusterParameterGroupsOutput, error) DescribeClusterParameterGroupsPages(*redshift.DescribeClusterParameterGroupsInput, func(*redshift.DescribeClusterParameterGroupsOutput, bool) bool) error DescribeClusterParametersRequest(*redshift.DescribeClusterParametersInput) (*request.Request, *redshift.DescribeClusterParametersOutput) DescribeClusterParameters(*redshift.DescribeClusterParametersInput) (*redshift.DescribeClusterParametersOutput, error) DescribeClusterParametersPages(*redshift.DescribeClusterParametersInput, func(*redshift.DescribeClusterParametersOutput, bool) bool) error DescribeClusterSecurityGroupsRequest(*redshift.DescribeClusterSecurityGroupsInput) (*request.Request, *redshift.DescribeClusterSecurityGroupsOutput) DescribeClusterSecurityGroups(*redshift.DescribeClusterSecurityGroupsInput) (*redshift.DescribeClusterSecurityGroupsOutput, error) DescribeClusterSecurityGroupsPages(*redshift.DescribeClusterSecurityGroupsInput, func(*redshift.DescribeClusterSecurityGroupsOutput, bool) bool) error DescribeClusterSnapshotsRequest(*redshift.DescribeClusterSnapshotsInput) (*request.Request, *redshift.DescribeClusterSnapshotsOutput) DescribeClusterSnapshots(*redshift.DescribeClusterSnapshotsInput) (*redshift.DescribeClusterSnapshotsOutput, error) DescribeClusterSnapshotsPages(*redshift.DescribeClusterSnapshotsInput, func(*redshift.DescribeClusterSnapshotsOutput, bool) bool) error DescribeClusterSubnetGroupsRequest(*redshift.DescribeClusterSubnetGroupsInput) (*request.Request, *redshift.DescribeClusterSubnetGroupsOutput) DescribeClusterSubnetGroups(*redshift.DescribeClusterSubnetGroupsInput) (*redshift.DescribeClusterSubnetGroupsOutput, error) DescribeClusterSubnetGroupsPages(*redshift.DescribeClusterSubnetGroupsInput, func(*redshift.DescribeClusterSubnetGroupsOutput, bool) bool) error DescribeClusterVersionsRequest(*redshift.DescribeClusterVersionsInput) (*request.Request, *redshift.DescribeClusterVersionsOutput) DescribeClusterVersions(*redshift.DescribeClusterVersionsInput) (*redshift.DescribeClusterVersionsOutput, error) DescribeClusterVersionsPages(*redshift.DescribeClusterVersionsInput, func(*redshift.DescribeClusterVersionsOutput, bool) bool) error DescribeClustersRequest(*redshift.DescribeClustersInput) (*request.Request, *redshift.DescribeClustersOutput) DescribeClusters(*redshift.DescribeClustersInput) (*redshift.DescribeClustersOutput, error) DescribeClustersPages(*redshift.DescribeClustersInput, func(*redshift.DescribeClustersOutput, bool) bool) error DescribeDefaultClusterParametersRequest(*redshift.DescribeDefaultClusterParametersInput) (*request.Request, *redshift.DescribeDefaultClusterParametersOutput) DescribeDefaultClusterParameters(*redshift.DescribeDefaultClusterParametersInput) (*redshift.DescribeDefaultClusterParametersOutput, error) DescribeDefaultClusterParametersPages(*redshift.DescribeDefaultClusterParametersInput, func(*redshift.DescribeDefaultClusterParametersOutput, bool) bool) error DescribeEventCategoriesRequest(*redshift.DescribeEventCategoriesInput) (*request.Request, *redshift.DescribeEventCategoriesOutput) DescribeEventCategories(*redshift.DescribeEventCategoriesInput) (*redshift.DescribeEventCategoriesOutput, error) DescribeEventSubscriptionsRequest(*redshift.DescribeEventSubscriptionsInput) (*request.Request, *redshift.DescribeEventSubscriptionsOutput) DescribeEventSubscriptions(*redshift.DescribeEventSubscriptionsInput) (*redshift.DescribeEventSubscriptionsOutput, error) DescribeEventSubscriptionsPages(*redshift.DescribeEventSubscriptionsInput, func(*redshift.DescribeEventSubscriptionsOutput, bool) bool) error DescribeEventsRequest(*redshift.DescribeEventsInput) (*request.Request, *redshift.DescribeEventsOutput) DescribeEvents(*redshift.DescribeEventsInput) (*redshift.DescribeEventsOutput, error) DescribeEventsPages(*redshift.DescribeEventsInput, func(*redshift.DescribeEventsOutput, bool) bool) error DescribeHsmClientCertificatesRequest(*redshift.DescribeHsmClientCertificatesInput) (*request.Request, *redshift.DescribeHsmClientCertificatesOutput) DescribeHsmClientCertificates(*redshift.DescribeHsmClientCertificatesInput) (*redshift.DescribeHsmClientCertificatesOutput, error) DescribeHsmClientCertificatesPages(*redshift.DescribeHsmClientCertificatesInput, func(*redshift.DescribeHsmClientCertificatesOutput, bool) bool) error DescribeHsmConfigurationsRequest(*redshift.DescribeHsmConfigurationsInput) (*request.Request, *redshift.DescribeHsmConfigurationsOutput) DescribeHsmConfigurations(*redshift.DescribeHsmConfigurationsInput) (*redshift.DescribeHsmConfigurationsOutput, error) DescribeHsmConfigurationsPages(*redshift.DescribeHsmConfigurationsInput, func(*redshift.DescribeHsmConfigurationsOutput, bool) bool) error DescribeLoggingStatusRequest(*redshift.DescribeLoggingStatusInput) (*request.Request, *redshift.LoggingStatus) DescribeLoggingStatus(*redshift.DescribeLoggingStatusInput) (*redshift.LoggingStatus, error) DescribeOrderableClusterOptionsRequest(*redshift.DescribeOrderableClusterOptionsInput) (*request.Request, *redshift.DescribeOrderableClusterOptionsOutput) DescribeOrderableClusterOptions(*redshift.DescribeOrderableClusterOptionsInput) (*redshift.DescribeOrderableClusterOptionsOutput, error) DescribeOrderableClusterOptionsPages(*redshift.DescribeOrderableClusterOptionsInput, func(*redshift.DescribeOrderableClusterOptionsOutput, bool) bool) error DescribeReservedNodeOfferingsRequest(*redshift.DescribeReservedNodeOfferingsInput) (*request.Request, *redshift.DescribeReservedNodeOfferingsOutput) DescribeReservedNodeOfferings(*redshift.DescribeReservedNodeOfferingsInput) (*redshift.DescribeReservedNodeOfferingsOutput, error) DescribeReservedNodeOfferingsPages(*redshift.DescribeReservedNodeOfferingsInput, func(*redshift.DescribeReservedNodeOfferingsOutput, bool) bool) error DescribeReservedNodesRequest(*redshift.DescribeReservedNodesInput) (*request.Request, *redshift.DescribeReservedNodesOutput) DescribeReservedNodes(*redshift.DescribeReservedNodesInput) (*redshift.DescribeReservedNodesOutput, error) DescribeReservedNodesPages(*redshift.DescribeReservedNodesInput, func(*redshift.DescribeReservedNodesOutput, bool) bool) error DescribeResizeRequest(*redshift.DescribeResizeInput) (*request.Request, *redshift.DescribeResizeOutput) DescribeResize(*redshift.DescribeResizeInput) (*redshift.DescribeResizeOutput, error) DescribeSnapshotCopyGrantsRequest(*redshift.DescribeSnapshotCopyGrantsInput) (*request.Request, *redshift.DescribeSnapshotCopyGrantsOutput) DescribeSnapshotCopyGrants(*redshift.DescribeSnapshotCopyGrantsInput) (*redshift.DescribeSnapshotCopyGrantsOutput, error) DescribeTableRestoreStatusRequest(*redshift.DescribeTableRestoreStatusInput) (*request.Request, *redshift.DescribeTableRestoreStatusOutput) DescribeTableRestoreStatus(*redshift.DescribeTableRestoreStatusInput) (*redshift.DescribeTableRestoreStatusOutput, error) DescribeTagsRequest(*redshift.DescribeTagsInput) (*request.Request, *redshift.DescribeTagsOutput) DescribeTags(*redshift.DescribeTagsInput) (*redshift.DescribeTagsOutput, error) DisableLoggingRequest(*redshift.DisableLoggingInput) (*request.Request, *redshift.LoggingStatus) DisableLogging(*redshift.DisableLoggingInput) (*redshift.LoggingStatus, error) DisableSnapshotCopyRequest(*redshift.DisableSnapshotCopyInput) (*request.Request, *redshift.DisableSnapshotCopyOutput) DisableSnapshotCopy(*redshift.DisableSnapshotCopyInput) (*redshift.DisableSnapshotCopyOutput, error) EnableLoggingRequest(*redshift.EnableLoggingInput) (*request.Request, *redshift.LoggingStatus) EnableLogging(*redshift.EnableLoggingInput) (*redshift.LoggingStatus, error) EnableSnapshotCopyRequest(*redshift.EnableSnapshotCopyInput) (*request.Request, *redshift.EnableSnapshotCopyOutput) EnableSnapshotCopy(*redshift.EnableSnapshotCopyInput) (*redshift.EnableSnapshotCopyOutput, error) ModifyClusterRequest(*redshift.ModifyClusterInput) (*request.Request, *redshift.ModifyClusterOutput) ModifyCluster(*redshift.ModifyClusterInput) (*redshift.ModifyClusterOutput, error) ModifyClusterIamRolesRequest(*redshift.ModifyClusterIamRolesInput) (*request.Request, *redshift.ModifyClusterIamRolesOutput) ModifyClusterIamRoles(*redshift.ModifyClusterIamRolesInput) (*redshift.ModifyClusterIamRolesOutput, error) ModifyClusterParameterGroupRequest(*redshift.ModifyClusterParameterGroupInput) (*request.Request, *redshift.ClusterParameterGroupNameMessage) ModifyClusterParameterGroup(*redshift.ModifyClusterParameterGroupInput) (*redshift.ClusterParameterGroupNameMessage, error) ModifyClusterSubnetGroupRequest(*redshift.ModifyClusterSubnetGroupInput) (*request.Request, *redshift.ModifyClusterSubnetGroupOutput) ModifyClusterSubnetGroup(*redshift.ModifyClusterSubnetGroupInput) (*redshift.ModifyClusterSubnetGroupOutput, error) ModifyEventSubscriptionRequest(*redshift.ModifyEventSubscriptionInput) (*request.Request, *redshift.ModifyEventSubscriptionOutput) ModifyEventSubscription(*redshift.ModifyEventSubscriptionInput) (*redshift.ModifyEventSubscriptionOutput, error) ModifySnapshotCopyRetentionPeriodRequest(*redshift.ModifySnapshotCopyRetentionPeriodInput) (*request.Request, *redshift.ModifySnapshotCopyRetentionPeriodOutput) ModifySnapshotCopyRetentionPeriod(*redshift.ModifySnapshotCopyRetentionPeriodInput) (*redshift.ModifySnapshotCopyRetentionPeriodOutput, error) PurchaseReservedNodeOfferingRequest(*redshift.PurchaseReservedNodeOfferingInput) (*request.Request, *redshift.PurchaseReservedNodeOfferingOutput) PurchaseReservedNodeOffering(*redshift.PurchaseReservedNodeOfferingInput) (*redshift.PurchaseReservedNodeOfferingOutput, error) RebootClusterRequest(*redshift.RebootClusterInput) (*request.Request, *redshift.RebootClusterOutput) RebootCluster(*redshift.RebootClusterInput) (*redshift.RebootClusterOutput, error) ResetClusterParameterGroupRequest(*redshift.ResetClusterParameterGroupInput) (*request.Request, *redshift.ClusterParameterGroupNameMessage) ResetClusterParameterGroup(*redshift.ResetClusterParameterGroupInput) (*redshift.ClusterParameterGroupNameMessage, error) RestoreFromClusterSnapshotRequest(*redshift.RestoreFromClusterSnapshotInput) (*request.Request, *redshift.RestoreFromClusterSnapshotOutput) RestoreFromClusterSnapshot(*redshift.RestoreFromClusterSnapshotInput) (*redshift.RestoreFromClusterSnapshotOutput, error) RestoreTableFromClusterSnapshotRequest(*redshift.RestoreTableFromClusterSnapshotInput) (*request.Request, *redshift.RestoreTableFromClusterSnapshotOutput) RestoreTableFromClusterSnapshot(*redshift.RestoreTableFromClusterSnapshotInput) (*redshift.RestoreTableFromClusterSnapshotOutput, error) RevokeClusterSecurityGroupIngressRequest(*redshift.RevokeClusterSecurityGroupIngressInput) (*request.Request, *redshift.RevokeClusterSecurityGroupIngressOutput) RevokeClusterSecurityGroupIngress(*redshift.RevokeClusterSecurityGroupIngressInput) (*redshift.RevokeClusterSecurityGroupIngressOutput, error) RevokeSnapshotAccessRequest(*redshift.RevokeSnapshotAccessInput) (*request.Request, *redshift.RevokeSnapshotAccessOutput) RevokeSnapshotAccess(*redshift.RevokeSnapshotAccessInput) (*redshift.RevokeSnapshotAccessOutput, error) RotateEncryptionKeyRequest(*redshift.RotateEncryptionKeyInput) (*request.Request, *redshift.RotateEncryptionKeyOutput) RotateEncryptionKey(*redshift.RotateEncryptionKeyInput) (*redshift.RotateEncryptionKeyOutput, error) WaitUntilClusterAvailable(*redshift.DescribeClustersInput) error WaitUntilClusterDeleted(*redshift.DescribeClustersInput) error WaitUntilClusterRestored(*redshift.DescribeClustersInput) error WaitUntilSnapshotAvailable(*redshift.DescribeClusterSnapshotsInput) error } var _ RedshiftAPI = (*redshift.Redshift)(nil) aws-sdk-go-1.4.22/service/redshift/service.go000066400000000000000000000101671300374646400210270ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package redshift import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/query" ) // Overview // // This is an interface reference for Amazon Redshift. It contains documentation // for one of the programming or command line interfaces you can use to manage // Amazon Redshift clusters. Note that Amazon Redshift is asynchronous, which // means that some interfaces may require techniques, such as polling or asynchronous // callback handlers, to determine when a command has been applied. In this // reference, the parameter descriptions indicate whether a change is applied // immediately, on the next instance reboot, or during the next maintenance // window. For a summary of the Amazon Redshift cluster management interfaces, // go to Using the Amazon Redshift Management Interfaces (http://docs.aws.amazon.com/redshift/latest/mgmt/using-aws-sdk.html). // // Amazon Redshift manages all the work of setting up, operating, and scaling // a data warehouse: provisioning capacity, monitoring and backing up the cluster, // and applying patches and upgrades to the Amazon Redshift engine. You can // focus on using your data to acquire new insights for your business and customers. // // If you are a first-time user of Amazon Redshift, we recommend that you begin // by reading the Amazon Redshift Getting Started Guide (http://docs.aws.amazon.com/redshift/latest/gsg/getting-started.html). // // If you are a database developer, the Amazon Redshift Database Developer Guide // (http://docs.aws.amazon.com/redshift/latest/dg/welcome.html) explains how // to design, build, query, and maintain the databases that make up your data // warehouse. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type Redshift struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "redshift" // New creates a new instance of the Redshift client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a Redshift client from just a session. // svc := redshift.New(mySession) // // // Create a Redshift client with additional configuration // svc := redshift.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *Redshift { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *Redshift { svc := &Redshift{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2012-12-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a Redshift operation and runs any // custom request initialization. func (c *Redshift) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/redshift/waiters.go000066400000000000000000000072411300374646400210440ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package redshift import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilClusterAvailable uses the Amazon Redshift API operation // DescribeClusters to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *Redshift) WaitUntilClusterAvailable(input *DescribeClustersInput) error { waiterCfg := waiter.Config{ Operation: "DescribeClusters", Delay: 60, MaxAttempts: 30, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Clusters[].ClusterStatus", Expected: "available", }, { State: "failure", Matcher: "pathAny", Argument: "Clusters[].ClusterStatus", Expected: "deleting", }, { State: "retry", Matcher: "error", Argument: "", Expected: "ClusterNotFound", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilClusterDeleted uses the Amazon Redshift API operation // DescribeClusters to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *Redshift) WaitUntilClusterDeleted(input *DescribeClustersInput) error { waiterCfg := waiter.Config{ Operation: "DescribeClusters", Delay: 60, MaxAttempts: 30, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "error", Argument: "", Expected: "ClusterNotFound", }, { State: "failure", Matcher: "pathAny", Argument: "Clusters[].ClusterStatus", Expected: "creating", }, { State: "failure", Matcher: "pathAny", Argument: "Clusters[].ClusterStatus", Expected: "modifying", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilClusterRestored uses the Amazon Redshift API operation // DescribeClusters to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *Redshift) WaitUntilClusterRestored(input *DescribeClustersInput) error { waiterCfg := waiter.Config{ Operation: "DescribeClusters", Delay: 60, MaxAttempts: 30, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Clusters[].RestoreStatus.Status", Expected: "completed", }, { State: "failure", Matcher: "pathAny", Argument: "Clusters[].ClusterStatus", Expected: "deleting", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilSnapshotAvailable uses the Amazon Redshift API operation // DescribeClusterSnapshots to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *Redshift) WaitUntilSnapshotAvailable(input *DescribeClusterSnapshotsInput) error { waiterCfg := waiter.Config{ Operation: "DescribeClusterSnapshots", Delay: 15, MaxAttempts: 20, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "Snapshots[].Status", Expected: "available", }, { State: "failure", Matcher: "pathAny", Argument: "Snapshots[].Status", Expected: "failed", }, { State: "failure", Matcher: "pathAny", Argument: "Snapshots[].Status", Expected: "deleted", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/route53/000077500000000000000000000000001300374646400165315ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/route53/api.go000066400000000000000000014344161300374646400176460ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package route53 provides a client for Amazon Route 53. package route53 import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opAssociateVPCWithHostedZone = "AssociateVPCWithHostedZone" // AssociateVPCWithHostedZoneRequest generates a "aws/request.Request" representing the // client's request for the AssociateVPCWithHostedZone operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AssociateVPCWithHostedZone for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AssociateVPCWithHostedZone method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AssociateVPCWithHostedZoneRequest method. // req, resp := client.AssociateVPCWithHostedZoneRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) AssociateVPCWithHostedZoneRequest(input *AssociateVPCWithHostedZoneInput) (req *request.Request, output *AssociateVPCWithHostedZoneOutput) { op := &request.Operation{ Name: opAssociateVPCWithHostedZone, HTTPMethod: "POST", HTTPPath: "/2013-04-01/hostedzone/{Id}/associatevpc", } if input == nil { input = &AssociateVPCWithHostedZoneInput{} } req = c.newRequest(op, input, output) output = &AssociateVPCWithHostedZoneOutput{} req.Data = output return } // AssociateVPCWithHostedZone API operation for Amazon Route 53. // // Associates an Amazon VPC with a private hosted zone. // // The VPC and the hosted zone must already exist, and you must have created // a private hosted zone. You cannot convert a public hosted zone into a private // hosted zone. // // Send a POST request to the /2013-04-01/hostedzone/hosted zone ID/associatevpc // resource. The request body must include an XML document with a AssociateVPCWithHostedZoneRequest // element. The response returns the AssociateVPCWithHostedZoneResponse element. // // If you used different accounts to create the hosted zone and to create the // Amazon VPCs that you want to associate with the hosted zone, we need to update // account permissions for you. For more information, see Associating Amazon // VPCs and Private Hosted Zones That You Create with Different AWS Accounts // (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zone-private-associate-vpcs-different-accounts.html) // in the Amazon Route 53 Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation AssociateVPCWithHostedZone for usage and error information. // // Returned Error Codes: // * NoSuchHostedZone // No hosted zone exists with the ID that you specified. // // * InvalidVPCId // The hosted zone you are trying to create for your VPC_ID does not belong // to you. Amazon Route 53 returns this error when the VPC specified by VPCId // does not belong to you. // // * InvalidInput // The input is not valid. // // * PublicZoneVPCAssociation // The hosted zone specified in HostedZoneId is a public hosted zone. // // * ConflictingDomainExists // You specified an Amazon VPC that you're already using for another hosted // zone, and the domain that you specified for one of the hosted zones is a // subdomain of the domain that you specified for the other hosted zone. For // example, you cannot use the same Amazon VPC for the hosted zones for example.com // and test.example.com. // // * LimitsExceeded // The limits specified for a resource have been exceeded. // func (c *Route53) AssociateVPCWithHostedZone(input *AssociateVPCWithHostedZoneInput) (*AssociateVPCWithHostedZoneOutput, error) { req, out := c.AssociateVPCWithHostedZoneRequest(input) err := req.Send() return out, err } const opChangeResourceRecordSets = "ChangeResourceRecordSets" // ChangeResourceRecordSetsRequest generates a "aws/request.Request" representing the // client's request for the ChangeResourceRecordSets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ChangeResourceRecordSets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ChangeResourceRecordSets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ChangeResourceRecordSetsRequest method. // req, resp := client.ChangeResourceRecordSetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) ChangeResourceRecordSetsRequest(input *ChangeResourceRecordSetsInput) (req *request.Request, output *ChangeResourceRecordSetsOutput) { op := &request.Operation{ Name: opChangeResourceRecordSets, HTTPMethod: "POST", HTTPPath: "/2013-04-01/hostedzone/{Id}/rrset/", } if input == nil { input = &ChangeResourceRecordSetsInput{} } req = c.newRequest(op, input, output) output = &ChangeResourceRecordSetsOutput{} req.Data = output return } // ChangeResourceRecordSets API operation for Amazon Route 53. // // Create, change, update, or delete authoritative DNS information on all Amazon // Route 53 servers. Send a POST request to: // // /2013-04-01/hostedzone/Amazon Route 53 hosted Zone ID/rrset resource. // // The request body must include a document with a ChangeResourceRecordSetsRequest // element. The request body contains a list of change items, known as a change // batch. Change batches are considered transactional changes. When using the // Amazon Route 53 API to change resource record sets, Amazon Route 53 either // makes all or none of the changes in a change batch request. This ensures // that Amazon Route 53 never partially implements the intended changes to the // resource record sets in a hosted zone. // // For example, a change batch request that deletes the CNAME record for www.example.com // and creates an alias resource record set for www.example.com. Amazon Route // 53 deletes the first resource record set and creates the second resource // record set in a single operation. If either the DELETE or the CREATE action // fails, then both changes (plus any other changes in the batch) fail, and // the original CNAME record continues to exist. // // Due to the nature of transactional changes, you cannot delete the same resource // record set more than once in a single change batch. If you attempt to delete // the same change batch more than once, Amazon Route 53 returns an InvalidChangeBatch // error. // // To create resource record sets for complex routing configurations, use either // the traffic flow visual editor in the Amazon Route 53 console or the API // actions for traffic policies and traffic policy instances. Save the configuration // as a traffic policy, then associate the traffic policy with one or more domain // names (such as example.com) or subdomain names (such as www.example.com), // in the same hosted zone or in multiple hosted zones. You can roll back the // updates if the new configuration isn't performing as expected. For more information, // see Using Traffic Flow to Route DNS Traffic (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/traffic-flow.html) // in the Amazon Route 53 Developer Guide. // // Use ChangeResourceRecordsSetsRequest to perform the following actions: // // * CREATE: Creates a resource record set that has the specified values. // // * DELETE: Deletes an existing resource record set that has the specified // values for Name, Type, Set Identifier (for code latency, weighted, geolocation, // and failover resource record sets), and TTL (except alias resource record // sets, for which the TTL is determined by the AWS resource you're routing // queries to). // // * UPSERT: If a resource record set does not already exist, AWS creates // it. If a resource set does exist, Amazon Route 53 updates it with the // values in the request. Amazon Route 53 can update an existing resource // record set only when all of the following values match: Name, Type, and // Set Identifier (for weighted, latency, geolocation, and failover resource // record sets). // // In response to a ChangeResourceRecordSets request, the DNS data is changed // on all Amazon Route 53 DNS servers. Initially, the status of a change is // PENDING, meaning the change has not yet propagated to all the authoritative // Amazon Route 53 DNS servers. When the change is propagated to all hosts, // the change returns a status of INSYNC. // // After sending a change request, confirm your change has propagated to all // Amazon Route 53 DNS servers. Changes generally propagate to all Amazon Route // 53 name servers in a few minutes. In rare circumstances, propagation can // take up to 30 minutes. For more information, see GetChange. // // For information about the limits on a ChangeResourceRecordSets request, see // Limits (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html) // in the Amazon Route 53 Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation ChangeResourceRecordSets for usage and error information. // // Returned Error Codes: // * NoSuchHostedZone // No hosted zone exists with the ID that you specified. // // * NoSuchHealthCheck // No health check exists with the ID that you specified in the DeleteHealthCheck // request. // // * InvalidChangeBatch // This exception contains a list of messages that might contain one or more // error messages. Each error message indicates one error in the change batch. // // * InvalidInput // The input is not valid. // // * PriorRequestNotComplete // If Amazon Route 53 can't process a request before the next request arrives, // it will reject subsequent requests for the same hosted zone and return an // HTTP 400 error (Bad request). If Amazon Route 53 returns this error repeatedly // for the same request, we recommend that you wait, in intervals of increasing // duration, before you try the request again. // func (c *Route53) ChangeResourceRecordSets(input *ChangeResourceRecordSetsInput) (*ChangeResourceRecordSetsOutput, error) { req, out := c.ChangeResourceRecordSetsRequest(input) err := req.Send() return out, err } const opChangeTagsForResource = "ChangeTagsForResource" // ChangeTagsForResourceRequest generates a "aws/request.Request" representing the // client's request for the ChangeTagsForResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ChangeTagsForResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ChangeTagsForResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ChangeTagsForResourceRequest method. // req, resp := client.ChangeTagsForResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) ChangeTagsForResourceRequest(input *ChangeTagsForResourceInput) (req *request.Request, output *ChangeTagsForResourceOutput) { op := &request.Operation{ Name: opChangeTagsForResource, HTTPMethod: "POST", HTTPPath: "/2013-04-01/tags/{ResourceType}/{ResourceId}", } if input == nil { input = &ChangeTagsForResourceInput{} } req = c.newRequest(op, input, output) output = &ChangeTagsForResourceOutput{} req.Data = output return } // ChangeTagsForResource API operation for Amazon Route 53. // // Adds, edits, or deletes tags for a health check or a hosted zone. // // For information about using tags for cost allocation, see Using Cost Allocation // Tags (http://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) // in the AWS Billing and Cost Management User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation ChangeTagsForResource for usage and error information. // // Returned Error Codes: // * InvalidInput // The input is not valid. // // * NoSuchHealthCheck // No health check exists with the ID that you specified in the DeleteHealthCheck // request. // // * NoSuchHostedZone // No hosted zone exists with the ID that you specified. // // * PriorRequestNotComplete // If Amazon Route 53 can't process a request before the next request arrives, // it will reject subsequent requests for the same hosted zone and return an // HTTP 400 error (Bad request). If Amazon Route 53 returns this error repeatedly // for the same request, we recommend that you wait, in intervals of increasing // duration, before you try the request again. // // * ThrottlingException // func (c *Route53) ChangeTagsForResource(input *ChangeTagsForResourceInput) (*ChangeTagsForResourceOutput, error) { req, out := c.ChangeTagsForResourceRequest(input) err := req.Send() return out, err } const opCreateHealthCheck = "CreateHealthCheck" // CreateHealthCheckRequest generates a "aws/request.Request" representing the // client's request for the CreateHealthCheck operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateHealthCheck for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateHealthCheck method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateHealthCheckRequest method. // req, resp := client.CreateHealthCheckRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) CreateHealthCheckRequest(input *CreateHealthCheckInput) (req *request.Request, output *CreateHealthCheckOutput) { op := &request.Operation{ Name: opCreateHealthCheck, HTTPMethod: "POST", HTTPPath: "/2013-04-01/healthcheck", } if input == nil { input = &CreateHealthCheckInput{} } req = c.newRequest(op, input, output) output = &CreateHealthCheckOutput{} req.Data = output return } // CreateHealthCheck API operation for Amazon Route 53. // // Creates a new health check. // // To create a new health check, send a POST request to the /2013-04-01/healthcheck // resource. The request body must include an XML document with a CreateHealthCheckRequest // element. The response returns the CreateHealthCheckResponse element, containing // the health check ID specified when adding health check to a resource record // set. For information about adding health checks to resource record sets, // see ResourceRecordSet$HealthCheckId in ChangeResourceRecordSets. // // If you are registering Amazon EC2 instances with an Elastic Load Balancing // (ELB) load balancer, do not create Amazon Route 53 health checks for the // Amazon EC2 instances. When you register an Amazon EC2 instance with a load // balancer, you configure settings for an ELB health check, which performs // a similar function to an Amazon Route 53 health check. // // You can associate health checks with failover resource record sets in a private // hosted zone. Note the following: // // * Amazon Route 53 health checkers are outside the VPC. To check the health // of an endpoint within a VPC by IP address, you must assign a public IP // address to the instance in the VPC. // // * You can configure a health checker to check the health of an external // resource that the instance relies on, such as a database server. // // * You can create a CloudWatch metric, associate an alarm with the metric, // and then create a health check that is based on the state of the alarm. // For example, you might create a CloudWatch metric that checks the status // of the Amazon EC2 StatusCheckFailed metric, add an alarm to the metric, // and then create a health check that is based on the state of the alarm. // For information about creating CloudWatch metrics and alarms by using // the CloudWatch console, see the Amazon CloudWatch Developer Guide (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/WhatIsCloudWatch.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation CreateHealthCheck for usage and error information. // // Returned Error Codes: // * TooManyHealthChecks // You have reached the maximum number of active health checks for an AWS account. // The default limit is 100. To request a higher limit, create a case (http://aws.amazon.com/route53-request) // with the AWS Support Center. // // * HealthCheckAlreadyExists // The health check you're attempting to create already exists. // // Amazon Route 53 returns this error when a health check has already been created // with the specified value for CallerReference. // // * InvalidInput // The input is not valid. // func (c *Route53) CreateHealthCheck(input *CreateHealthCheckInput) (*CreateHealthCheckOutput, error) { req, out := c.CreateHealthCheckRequest(input) err := req.Send() return out, err } const opCreateHostedZone = "CreateHostedZone" // CreateHostedZoneRequest generates a "aws/request.Request" representing the // client's request for the CreateHostedZone operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateHostedZone for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateHostedZone method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateHostedZoneRequest method. // req, resp := client.CreateHostedZoneRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) CreateHostedZoneRequest(input *CreateHostedZoneInput) (req *request.Request, output *CreateHostedZoneOutput) { op := &request.Operation{ Name: opCreateHostedZone, HTTPMethod: "POST", HTTPPath: "/2013-04-01/hostedzone", } if input == nil { input = &CreateHostedZoneInput{} } req = c.newRequest(op, input, output) output = &CreateHostedZoneOutput{} req.Data = output return } // CreateHostedZone API operation for Amazon Route 53. // // Creates a new public hosted zone, used to specify how the Domain Name System // (DNS) routes traffic on the Internet for a domain, such as example.com, and // its subdomains. // // Public hosted zones cannot be converted to a private hosted zone or vice // versa. Instead, create a new hosted zone with the same name and create new // resource record sets. // // Send a POST request to the /2013-04-01/hostedzone resource. The request body // must include an XML document with a CreateHostedZoneRequest element. The // response returns the CreateHostedZoneResponse element containing metadata // about the hosted zone. // // Fore more information about charges for hosted zones, see Amazon Route 53 // Pricing (http://aws.amazon.com/route53/pricing/). // // Note the following: // // * You cannot create a hosted zone for a top-level domain (TLD). // // * Amazon Route 53 automatically creates a default SOA record and four // NS records for the zone. For more information about SOA and NS records, // see NS and SOA Records that Amazon Route 53 Creates for a Hosted Zone // (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/SOA-NSrecords.html) // in the Amazon Route 53 Developer Guide. // // * If your domain is registered with a registrar other than Amazon Route // 53, you must update the name servers with your registrar to make Amazon // Route 53 your DNS service. For more information, see Configuring Amazon // Route 53 as your DNS Service (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/creating-migrating.html) // in the Amazon Route 53 Developer's Guide. // // After creating a zone, its initial status is PENDING. This means that it // is not yet available on all DNS servers. The status of the zone changes to // INSYNC when the NS and SOA records are available on all Amazon Route 53 DNS // servers. // // When trying to create a hosted zone using a reusable delegation set, specify // an optional DelegationSetId, and Amazon Route 53 would assign those 4 NS // records for the zone, instead of allotting a new one. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation CreateHostedZone for usage and error information. // // Returned Error Codes: // * InvalidDomainName // The specified domain name is not valid. // // * HostedZoneAlreadyExists // The hosted zone you are trying to create already exists. Amazon Route 53 // returns this error when a hosted zone has already been created with the specified // CallerReference. // // * TooManyHostedZones // This hosted zone cannot be created because the hosted zone limit is exceeded. // To request a limit increase, go to the Amazon Route 53 Contact Us (http://aws.amazon.com/route53-request/) // page. // // * InvalidVPCId // The hosted zone you are trying to create for your VPC_ID does not belong // to you. Amazon Route 53 returns this error when the VPC specified by VPCId // does not belong to you. // // * InvalidInput // The input is not valid. // // * DelegationSetNotAvailable // You can create a hosted zone that has the same name as an existing hosted // zone (example.com is common), but there is a limit to the number of hosted // zones that have the same name. If you get this error, Amazon Route 53 has // reached that limit. If you own the domain name and Amazon Route 53 generates // this error, contact Customer Support. // // * ConflictingDomainExists // You specified an Amazon VPC that you're already using for another hosted // zone, and the domain that you specified for one of the hosted zones is a // subdomain of the domain that you specified for the other hosted zone. For // example, you cannot use the same Amazon VPC for the hosted zones for example.com // and test.example.com. // // * NoSuchDelegationSet // A reusable delegation set with the specified ID does not exist. // // * DelegationSetNotReusable // A reusable delegation set with the specified ID does not exist. // func (c *Route53) CreateHostedZone(input *CreateHostedZoneInput) (*CreateHostedZoneOutput, error) { req, out := c.CreateHostedZoneRequest(input) err := req.Send() return out, err } const opCreateReusableDelegationSet = "CreateReusableDelegationSet" // CreateReusableDelegationSetRequest generates a "aws/request.Request" representing the // client's request for the CreateReusableDelegationSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateReusableDelegationSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateReusableDelegationSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateReusableDelegationSetRequest method. // req, resp := client.CreateReusableDelegationSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) CreateReusableDelegationSetRequest(input *CreateReusableDelegationSetInput) (req *request.Request, output *CreateReusableDelegationSetOutput) { op := &request.Operation{ Name: opCreateReusableDelegationSet, HTTPMethod: "POST", HTTPPath: "/2013-04-01/delegationset", } if input == nil { input = &CreateReusableDelegationSetInput{} } req = c.newRequest(op, input, output) output = &CreateReusableDelegationSetOutput{} req.Data = output return } // CreateReusableDelegationSet API operation for Amazon Route 53. // // Creates a delegation set (a group of four name servers) that can be reused // by multiple hosted zones. If a hosted zoned ID is specified, CreateReusableDelegationSet // marks the delegation set associated with that zone as reusable // // Send a POST request to the /2013-04-01/delegationset resource. The request // body must include an XML document with a CreateReusableDelegationSetRequest // element. // // A reusable delegation set cannot be associated with a private hosted zone/ // // For more information, including a procedure on how to create and configure // a reusable delegation set (also known as white label name servers), see Configuring // White Label Name Servers (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/white-label-name-servers.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation CreateReusableDelegationSet for usage and error information. // // Returned Error Codes: // * DelegationSetAlreadyCreated // A delegation set with the same owner and caller reference combination has // already been created. // // * LimitsExceeded // The limits specified for a resource have been exceeded. // // * HostedZoneNotFound // The specified HostedZone cannot be found. // // * InvalidArgument // Parameter name and problem. // // * InvalidInput // The input is not valid. // // * DelegationSetNotAvailable // You can create a hosted zone that has the same name as an existing hosted // zone (example.com is common), but there is a limit to the number of hosted // zones that have the same name. If you get this error, Amazon Route 53 has // reached that limit. If you own the domain name and Amazon Route 53 generates // this error, contact Customer Support. // // * DelegationSetAlreadyReusable // The specified delegation set has already been marked as reusable. // func (c *Route53) CreateReusableDelegationSet(input *CreateReusableDelegationSetInput) (*CreateReusableDelegationSetOutput, error) { req, out := c.CreateReusableDelegationSetRequest(input) err := req.Send() return out, err } const opCreateTrafficPolicy = "CreateTrafficPolicy" // CreateTrafficPolicyRequest generates a "aws/request.Request" representing the // client's request for the CreateTrafficPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateTrafficPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateTrafficPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateTrafficPolicyRequest method. // req, resp := client.CreateTrafficPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) CreateTrafficPolicyRequest(input *CreateTrafficPolicyInput) (req *request.Request, output *CreateTrafficPolicyOutput) { op := &request.Operation{ Name: opCreateTrafficPolicy, HTTPMethod: "POST", HTTPPath: "/2013-04-01/trafficpolicy", } if input == nil { input = &CreateTrafficPolicyInput{} } req = c.newRequest(op, input, output) output = &CreateTrafficPolicyOutput{} req.Data = output return } // CreateTrafficPolicy API operation for Amazon Route 53. // // Creates a traffic policy, which you use to create multiple DNS resource record // sets for one domain name (such as example.com) or one subdomain name (such // as www.example.com). // // Send a POST request to the /2013-04-01/trafficpolicy resource. The request // body must include a document with a CreateTrafficPolicyRequest element. The // response includes the CreateTrafficPolicyResponse element, which contains // information about the new traffic policy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation CreateTrafficPolicy for usage and error information. // // Returned Error Codes: // * InvalidInput // The input is not valid. // // * TooManyTrafficPolicies // You've created the maximum number of traffic policies that can be created // for the current AWS account. You can request an increase to the limit on // the Contact Us (http://aws.amazon.com/route53-request/) page. // // * TrafficPolicyAlreadyExists // A traffic policy that has the same value for Name already exists. // // * InvalidTrafficPolicyDocument // The format of the traffic policy document that you specified in the Document // element is invalid. // func (c *Route53) CreateTrafficPolicy(input *CreateTrafficPolicyInput) (*CreateTrafficPolicyOutput, error) { req, out := c.CreateTrafficPolicyRequest(input) err := req.Send() return out, err } const opCreateTrafficPolicyInstance = "CreateTrafficPolicyInstance" // CreateTrafficPolicyInstanceRequest generates a "aws/request.Request" representing the // client's request for the CreateTrafficPolicyInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateTrafficPolicyInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateTrafficPolicyInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateTrafficPolicyInstanceRequest method. // req, resp := client.CreateTrafficPolicyInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) CreateTrafficPolicyInstanceRequest(input *CreateTrafficPolicyInstanceInput) (req *request.Request, output *CreateTrafficPolicyInstanceOutput) { op := &request.Operation{ Name: opCreateTrafficPolicyInstance, HTTPMethod: "POST", HTTPPath: "/2013-04-01/trafficpolicyinstance", } if input == nil { input = &CreateTrafficPolicyInstanceInput{} } req = c.newRequest(op, input, output) output = &CreateTrafficPolicyInstanceOutput{} req.Data = output return } // CreateTrafficPolicyInstance API operation for Amazon Route 53. // // Creates resource record sets in a specified hosted zone based on the settings // in a specified traffic policy version. In addition, CreateTrafficPolicyInstance // associates the resource record sets with a specified domain name (such as // example.com) or subdomain name (such as www.example.com). Amazon Route 53 // responds to DNS queries for the domain or subdomain name by using the resource // record sets that CreateTrafficPolicyInstance created. // // Send a POST request to the /2013-04-01/trafficpolicyinstance resource. The // request body must include a document with a CreateTrafficPolicyRequest element. // The response returns the CreateTrafficPolicyInstanceResponse element, which // contains information about the traffic policy instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation CreateTrafficPolicyInstance for usage and error information. // // Returned Error Codes: // * NoSuchHostedZone // No hosted zone exists with the ID that you specified. // // * InvalidInput // The input is not valid. // // * TooManyTrafficPolicyInstances // You've created the maximum number of traffic policy instances that can be // created for the current AWS account. You can request an increase to the limit // on the Contact Us (http://aws.amazon.com/route53-request/) page. // // * NoSuchTrafficPolicy // No traffic policy exists with the specified ID. // // * TrafficPolicyInstanceAlreadyExists // Traffic policy instance with given Id already exists. // func (c *Route53) CreateTrafficPolicyInstance(input *CreateTrafficPolicyInstanceInput) (*CreateTrafficPolicyInstanceOutput, error) { req, out := c.CreateTrafficPolicyInstanceRequest(input) err := req.Send() return out, err } const opCreateTrafficPolicyVersion = "CreateTrafficPolicyVersion" // CreateTrafficPolicyVersionRequest generates a "aws/request.Request" representing the // client's request for the CreateTrafficPolicyVersion operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateTrafficPolicyVersion for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateTrafficPolicyVersion method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateTrafficPolicyVersionRequest method. // req, resp := client.CreateTrafficPolicyVersionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) CreateTrafficPolicyVersionRequest(input *CreateTrafficPolicyVersionInput) (req *request.Request, output *CreateTrafficPolicyVersionOutput) { op := &request.Operation{ Name: opCreateTrafficPolicyVersion, HTTPMethod: "POST", HTTPPath: "/2013-04-01/trafficpolicy/{Id}", } if input == nil { input = &CreateTrafficPolicyVersionInput{} } req = c.newRequest(op, input, output) output = &CreateTrafficPolicyVersionOutput{} req.Data = output return } // CreateTrafficPolicyVersion API operation for Amazon Route 53. // // Creates a new version of an existing traffic policy. When you create a new // version of a traffic policy, you specify the ID of the traffic policy that // you want to update and a JSON-formatted document that describes the new version. // You use traffic policies to create multiple DNS resource record sets for // one domain name (such as example.com) or one subdomain name (such as www.example.com). // You can create a maximum of 1000 versions of a traffic policy. If you reach // the limit and need to create another version, you'll need to start a new // traffic policy. // // Send a POST request to the /2013-04-01/trafficpolicy/ resource. The request // body includes a document with a CreateTrafficPolicyVersionRequest element. // The response returns the CreateTrafficPolicyVersionResponse element, which // contains information about the new version of the traffic policy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation CreateTrafficPolicyVersion for usage and error information. // // Returned Error Codes: // * NoSuchTrafficPolicy // No traffic policy exists with the specified ID. // // * InvalidInput // The input is not valid. // // * ConcurrentModification // Another user submitted a request to update the object at the same time that // you did. Retry the request. // // * InvalidTrafficPolicyDocument // The format of the traffic policy document that you specified in the Document // element is invalid. // func (c *Route53) CreateTrafficPolicyVersion(input *CreateTrafficPolicyVersionInput) (*CreateTrafficPolicyVersionOutput, error) { req, out := c.CreateTrafficPolicyVersionRequest(input) err := req.Send() return out, err } const opDeleteHealthCheck = "DeleteHealthCheck" // DeleteHealthCheckRequest generates a "aws/request.Request" representing the // client's request for the DeleteHealthCheck operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteHealthCheck for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteHealthCheck method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteHealthCheckRequest method. // req, resp := client.DeleteHealthCheckRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) DeleteHealthCheckRequest(input *DeleteHealthCheckInput) (req *request.Request, output *DeleteHealthCheckOutput) { op := &request.Operation{ Name: opDeleteHealthCheck, HTTPMethod: "DELETE", HTTPPath: "/2013-04-01/healthcheck/{HealthCheckId}", } if input == nil { input = &DeleteHealthCheckInput{} } req = c.newRequest(op, input, output) output = &DeleteHealthCheckOutput{} req.Data = output return } // DeleteHealthCheck API operation for Amazon Route 53. // // Deletes a health check. Send a DELETE request to the /2013-04-01/healthcheck/health // check ID resource. // // Amazon Route 53 does not prevent you from deleting a health check even if // the health check is associated with one or more resource record sets. If // you delete a health check and you don't update the associated resource record // sets, the future status of the health check cannot be predicted and may change. // This will affect the routing of DNS queries for your DNS failover configuration. // For more information, see Replacing and Deleting Health Checks (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/health-checks-creating-deleting.html#health-checks-deleting.html) // in the Amazon Route 53 Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation DeleteHealthCheck for usage and error information. // // Returned Error Codes: // * NoSuchHealthCheck // No health check exists with the ID that you specified in the DeleteHealthCheck // request. // // * HealthCheckInUse // The health check ID for this health check is referenced in the HealthCheckId // element in one of the resource record sets in one of the hosted zones that // are owned by the current AWS account. // // * InvalidInput // The input is not valid. // func (c *Route53) DeleteHealthCheck(input *DeleteHealthCheckInput) (*DeleteHealthCheckOutput, error) { req, out := c.DeleteHealthCheckRequest(input) err := req.Send() return out, err } const opDeleteHostedZone = "DeleteHostedZone" // DeleteHostedZoneRequest generates a "aws/request.Request" representing the // client's request for the DeleteHostedZone operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteHostedZone for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteHostedZone method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteHostedZoneRequest method. // req, resp := client.DeleteHostedZoneRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) DeleteHostedZoneRequest(input *DeleteHostedZoneInput) (req *request.Request, output *DeleteHostedZoneOutput) { op := &request.Operation{ Name: opDeleteHostedZone, HTTPMethod: "DELETE", HTTPPath: "/2013-04-01/hostedzone/{Id}", } if input == nil { input = &DeleteHostedZoneInput{} } req = c.newRequest(op, input, output) output = &DeleteHostedZoneOutput{} req.Data = output return } // DeleteHostedZone API operation for Amazon Route 53. // // Deletes a hosted zone. Send a DELETE request to the /Amazon Route 53 API // version/hostedzone/hosted zone ID resource. // // Delete a hosted zone only if there are no resource record sets other than // the default SOA record and NS resource record sets. If the hosted zone contains // other resource record sets, delete them before deleting the hosted zone. // If you try to delete a hosted zone that contains other resource record sets, // Amazon Route 53 denies your request with a HostedZoneNotEmpty error. For // information about deleting records from your hosted zone, see ChangeResourceRecordSets. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation DeleteHostedZone for usage and error information. // // Returned Error Codes: // * NoSuchHostedZone // No hosted zone exists with the ID that you specified. // // * HostedZoneNotEmpty // The hosted zone contains resource records that are not SOA or NS records. // // * PriorRequestNotComplete // If Amazon Route 53 can't process a request before the next request arrives, // it will reject subsequent requests for the same hosted zone and return an // HTTP 400 error (Bad request). If Amazon Route 53 returns this error repeatedly // for the same request, we recommend that you wait, in intervals of increasing // duration, before you try the request again. // // * InvalidInput // The input is not valid. // // * InvalidDomainName // The specified domain name is not valid. // func (c *Route53) DeleteHostedZone(input *DeleteHostedZoneInput) (*DeleteHostedZoneOutput, error) { req, out := c.DeleteHostedZoneRequest(input) err := req.Send() return out, err } const opDeleteReusableDelegationSet = "DeleteReusableDelegationSet" // DeleteReusableDelegationSetRequest generates a "aws/request.Request" representing the // client's request for the DeleteReusableDelegationSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteReusableDelegationSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteReusableDelegationSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteReusableDelegationSetRequest method. // req, resp := client.DeleteReusableDelegationSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) DeleteReusableDelegationSetRequest(input *DeleteReusableDelegationSetInput) (req *request.Request, output *DeleteReusableDelegationSetOutput) { op := &request.Operation{ Name: opDeleteReusableDelegationSet, HTTPMethod: "DELETE", HTTPPath: "/2013-04-01/delegationset/{Id}", } if input == nil { input = &DeleteReusableDelegationSetInput{} } req = c.newRequest(op, input, output) output = &DeleteReusableDelegationSetOutput{} req.Data = output return } // DeleteReusableDelegationSet API operation for Amazon Route 53. // // Deletes a reusable delegation set. Send a DELETE request to the /2013-04-01/delegationset/delegation // set ID resource. // // You can delete a reusable delegation set only if there are no associated // hosted zones. // // To verify that the reusable delegation set is not associated with any hosted // zones, run the GetReusableDelegationSet action and specify the ID of the // reusable delegation set that you want to delete. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation DeleteReusableDelegationSet for usage and error information. // // Returned Error Codes: // * NoSuchDelegationSet // A reusable delegation set with the specified ID does not exist. // // * DelegationSetInUse // The specified delegation contains associated hosted zones which must be deleted // before the reusable delegation set can be deleted. // // * DelegationSetNotReusable // A reusable delegation set with the specified ID does not exist. // // * InvalidInput // The input is not valid. // func (c *Route53) DeleteReusableDelegationSet(input *DeleteReusableDelegationSetInput) (*DeleteReusableDelegationSetOutput, error) { req, out := c.DeleteReusableDelegationSetRequest(input) err := req.Send() return out, err } const opDeleteTrafficPolicy = "DeleteTrafficPolicy" // DeleteTrafficPolicyRequest generates a "aws/request.Request" representing the // client's request for the DeleteTrafficPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteTrafficPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteTrafficPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteTrafficPolicyRequest method. // req, resp := client.DeleteTrafficPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) DeleteTrafficPolicyRequest(input *DeleteTrafficPolicyInput) (req *request.Request, output *DeleteTrafficPolicyOutput) { op := &request.Operation{ Name: opDeleteTrafficPolicy, HTTPMethod: "DELETE", HTTPPath: "/2013-04-01/trafficpolicy/{Id}/{Version}", } if input == nil { input = &DeleteTrafficPolicyInput{} } req = c.newRequest(op, input, output) output = &DeleteTrafficPolicyOutput{} req.Data = output return } // DeleteTrafficPolicy API operation for Amazon Route 53. // // Deletes a traffic policy. // // Send a DELETE request to the /Amazon Route 53 API version/trafficpolicy resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation DeleteTrafficPolicy for usage and error information. // // Returned Error Codes: // * NoSuchTrafficPolicy // No traffic policy exists with the specified ID. // // * InvalidInput // The input is not valid. // // * TrafficPolicyInUse // One or more traffic policy instances were created by using the specified // traffic policy. // // * ConcurrentModification // Another user submitted a request to update the object at the same time that // you did. Retry the request. // func (c *Route53) DeleteTrafficPolicy(input *DeleteTrafficPolicyInput) (*DeleteTrafficPolicyOutput, error) { req, out := c.DeleteTrafficPolicyRequest(input) err := req.Send() return out, err } const opDeleteTrafficPolicyInstance = "DeleteTrafficPolicyInstance" // DeleteTrafficPolicyInstanceRequest generates a "aws/request.Request" representing the // client's request for the DeleteTrafficPolicyInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteTrafficPolicyInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteTrafficPolicyInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteTrafficPolicyInstanceRequest method. // req, resp := client.DeleteTrafficPolicyInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) DeleteTrafficPolicyInstanceRequest(input *DeleteTrafficPolicyInstanceInput) (req *request.Request, output *DeleteTrafficPolicyInstanceOutput) { op := &request.Operation{ Name: opDeleteTrafficPolicyInstance, HTTPMethod: "DELETE", HTTPPath: "/2013-04-01/trafficpolicyinstance/{Id}", } if input == nil { input = &DeleteTrafficPolicyInstanceInput{} } req = c.newRequest(op, input, output) output = &DeleteTrafficPolicyInstanceOutput{} req.Data = output return } // DeleteTrafficPolicyInstance API operation for Amazon Route 53. // // Deletes a traffic policy instance and all of the resource record sets that // Amazon Route 53 created when you created the instance. // // Send a DELETE request to the /Amazon Route 53 API version/trafficpolicy/traffic // policy instance ID resource. // // In the Amazon Route 53 console, traffic policy instances are known as policy // records. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation DeleteTrafficPolicyInstance for usage and error information. // // Returned Error Codes: // * NoSuchTrafficPolicyInstance // No traffic policy instance exists with the specified ID. // // * InvalidInput // The input is not valid. // // * PriorRequestNotComplete // If Amazon Route 53 can't process a request before the next request arrives, // it will reject subsequent requests for the same hosted zone and return an // HTTP 400 error (Bad request). If Amazon Route 53 returns this error repeatedly // for the same request, we recommend that you wait, in intervals of increasing // duration, before you try the request again. // func (c *Route53) DeleteTrafficPolicyInstance(input *DeleteTrafficPolicyInstanceInput) (*DeleteTrafficPolicyInstanceOutput, error) { req, out := c.DeleteTrafficPolicyInstanceRequest(input) err := req.Send() return out, err } const opDisassociateVPCFromHostedZone = "DisassociateVPCFromHostedZone" // DisassociateVPCFromHostedZoneRequest generates a "aws/request.Request" representing the // client's request for the DisassociateVPCFromHostedZone operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisassociateVPCFromHostedZone for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisassociateVPCFromHostedZone method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisassociateVPCFromHostedZoneRequest method. // req, resp := client.DisassociateVPCFromHostedZoneRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) DisassociateVPCFromHostedZoneRequest(input *DisassociateVPCFromHostedZoneInput) (req *request.Request, output *DisassociateVPCFromHostedZoneOutput) { op := &request.Operation{ Name: opDisassociateVPCFromHostedZone, HTTPMethod: "POST", HTTPPath: "/2013-04-01/hostedzone/{Id}/disassociatevpc", } if input == nil { input = &DisassociateVPCFromHostedZoneInput{} } req = c.newRequest(op, input, output) output = &DisassociateVPCFromHostedZoneOutput{} req.Data = output return } // DisassociateVPCFromHostedZone API operation for Amazon Route 53. // // Disassociates a VPC from a Amazon Route 53 private hosted zone. // // Send a POST request to the /2013-04-01/hostedzone/hosted zone ID/disassociatevpc // resource. The request body must include an XML document with a DisassociateVPCFromHostedZoneRequest // element. The response returns the DisassociateVPCFromHostedZoneResponse element. // // You can only disassociate a VPC from a private hosted zone when two or more // VPCs are associated with that hosted zone. You cannot convert a private hosted // zone into a public hosted zone. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation DisassociateVPCFromHostedZone for usage and error information. // // Returned Error Codes: // * NoSuchHostedZone // No hosted zone exists with the ID that you specified. // // * InvalidVPCId // The hosted zone you are trying to create for your VPC_ID does not belong // to you. Amazon Route 53 returns this error when the VPC specified by VPCId // does not belong to you. // // * VPCAssociationNotFound // The specified VPC and hosted zone are not currently associated. // // * LastVPCAssociation // Only one VPC is currently associated with the hosted zone. You cannot convert // a private hosted zone into a public hosted zone by disassociating the last // VPC from a hosted zone. // // * InvalidInput // The input is not valid. // func (c *Route53) DisassociateVPCFromHostedZone(input *DisassociateVPCFromHostedZoneInput) (*DisassociateVPCFromHostedZoneOutput, error) { req, out := c.DisassociateVPCFromHostedZoneRequest(input) err := req.Send() return out, err } const opGetChange = "GetChange" // GetChangeRequest generates a "aws/request.Request" representing the // client's request for the GetChange operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetChange for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetChange method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetChangeRequest method. // req, resp := client.GetChangeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) GetChangeRequest(input *GetChangeInput) (req *request.Request, output *GetChangeOutput) { op := &request.Operation{ Name: opGetChange, HTTPMethod: "GET", HTTPPath: "/2013-04-01/change/{Id}", } if input == nil { input = &GetChangeInput{} } req = c.newRequest(op, input, output) output = &GetChangeOutput{} req.Data = output return } // GetChange API operation for Amazon Route 53. // // Returns the current status of a change batch request. The status is one of // the following values: // // * PENDING indicates that the changes in this request have not replicated // to all Amazon Route 53 DNS servers. This is the initial status of all // change batch requests. // // * INSYNC indicates that the changes have replicated to all Amazon Route // 53 DNS servers. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation GetChange for usage and error information. // // Returned Error Codes: // * NoSuchChange // A change with the specified change ID does not exist. // // * InvalidInput // The input is not valid. // func (c *Route53) GetChange(input *GetChangeInput) (*GetChangeOutput, error) { req, out := c.GetChangeRequest(input) err := req.Send() return out, err } const opGetChangeDetails = "GetChangeDetails" // GetChangeDetailsRequest generates a "aws/request.Request" representing the // client's request for the GetChangeDetails operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetChangeDetails for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetChangeDetails method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetChangeDetailsRequest method. // req, resp := client.GetChangeDetailsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) GetChangeDetailsRequest(input *GetChangeDetailsInput) (req *request.Request, output *GetChangeDetailsOutput) { if c.Client.Config.Logger != nil { c.Client.Config.Logger.Log("This operation, GetChangeDetails, has been deprecated") } op := &request.Operation{ Name: opGetChangeDetails, HTTPMethod: "GET", HTTPPath: "/2013-04-01/changedetails/{Id}", } if input == nil { input = &GetChangeDetailsInput{} } req = c.newRequest(op, input, output) output = &GetChangeDetailsOutput{} req.Data = output return } // GetChangeDetails API operation for Amazon Route 53. // // Returns the status and changes of a change batch request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation GetChangeDetails for usage and error information. // // Returned Error Codes: // * NoSuchChange // A change with the specified change ID does not exist. // // * InvalidInput // The input is not valid. // func (c *Route53) GetChangeDetails(input *GetChangeDetailsInput) (*GetChangeDetailsOutput, error) { req, out := c.GetChangeDetailsRequest(input) err := req.Send() return out, err } const opGetCheckerIpRanges = "GetCheckerIpRanges" // GetCheckerIpRangesRequest generates a "aws/request.Request" representing the // client's request for the GetCheckerIpRanges operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetCheckerIpRanges for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetCheckerIpRanges method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetCheckerIpRangesRequest method. // req, resp := client.GetCheckerIpRangesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) GetCheckerIpRangesRequest(input *GetCheckerIpRangesInput) (req *request.Request, output *GetCheckerIpRangesOutput) { op := &request.Operation{ Name: opGetCheckerIpRanges, HTTPMethod: "GET", HTTPPath: "/2013-04-01/checkeripranges", } if input == nil { input = &GetCheckerIpRangesInput{} } req = c.newRequest(op, input, output) output = &GetCheckerIpRangesOutput{} req.Data = output return } // GetCheckerIpRanges API operation for Amazon Route 53. // // Retrieves a list of the IP ranges used by Amazon Route 53 health checkers // to check the health of your resources. Send a GET request to the /Amazon // Route 53 API version/checkeripranges resource. Use these IP addresses to // configure router and firewall rules to allow health checkers to check the // health of your resources. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation GetCheckerIpRanges for usage and error information. func (c *Route53) GetCheckerIpRanges(input *GetCheckerIpRangesInput) (*GetCheckerIpRangesOutput, error) { req, out := c.GetCheckerIpRangesRequest(input) err := req.Send() return out, err } const opGetGeoLocation = "GetGeoLocation" // GetGeoLocationRequest generates a "aws/request.Request" representing the // client's request for the GetGeoLocation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetGeoLocation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetGeoLocation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetGeoLocationRequest method. // req, resp := client.GetGeoLocationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) GetGeoLocationRequest(input *GetGeoLocationInput) (req *request.Request, output *GetGeoLocationOutput) { op := &request.Operation{ Name: opGetGeoLocation, HTTPMethod: "GET", HTTPPath: "/2013-04-01/geolocation", } if input == nil { input = &GetGeoLocationInput{} } req = c.newRequest(op, input, output) output = &GetGeoLocationOutput{} req.Data = output return } // GetGeoLocation API operation for Amazon Route 53. // // Retrieves a single geo location. Send a GET request to the /2013-04-01/geolocation // resource with one of these options: continentcode | countrycode | countrycode // and subdivisioncode. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation GetGeoLocation for usage and error information. // // Returned Error Codes: // * NoSuchGeoLocation // Amazon Route 53 doesn't support the specified geolocation. // // * InvalidInput // The input is not valid. // func (c *Route53) GetGeoLocation(input *GetGeoLocationInput) (*GetGeoLocationOutput, error) { req, out := c.GetGeoLocationRequest(input) err := req.Send() return out, err } const opGetHealthCheck = "GetHealthCheck" // GetHealthCheckRequest generates a "aws/request.Request" representing the // client's request for the GetHealthCheck operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetHealthCheck for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetHealthCheck method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetHealthCheckRequest method. // req, resp := client.GetHealthCheckRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) GetHealthCheckRequest(input *GetHealthCheckInput) (req *request.Request, output *GetHealthCheckOutput) { op := &request.Operation{ Name: opGetHealthCheck, HTTPMethod: "GET", HTTPPath: "/2013-04-01/healthcheck/{HealthCheckId}", } if input == nil { input = &GetHealthCheckInput{} } req = c.newRequest(op, input, output) output = &GetHealthCheckOutput{} req.Data = output return } // GetHealthCheck API operation for Amazon Route 53. // // Gets information about a specified health check. Send a GET request to the // /2013-04-01/healthcheck/health check ID resource. For more information about // using the console to perform this operation, see Amazon Route 53 Health Checks // and DNS Failover (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover.html) // in the Amazon Route 53 Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation GetHealthCheck for usage and error information. // // Returned Error Codes: // * NoSuchHealthCheck // No health check exists with the ID that you specified in the DeleteHealthCheck // request. // // * InvalidInput // The input is not valid. // // * IncompatibleVersion // The resource you are trying to access is unsupported on this Amazon Route // 53 endpoint. Please consider using a newer endpoint or a tool that does so. // func (c *Route53) GetHealthCheck(input *GetHealthCheckInput) (*GetHealthCheckOutput, error) { req, out := c.GetHealthCheckRequest(input) err := req.Send() return out, err } const opGetHealthCheckCount = "GetHealthCheckCount" // GetHealthCheckCountRequest generates a "aws/request.Request" representing the // client's request for the GetHealthCheckCount operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetHealthCheckCount for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetHealthCheckCount method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetHealthCheckCountRequest method. // req, resp := client.GetHealthCheckCountRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) GetHealthCheckCountRequest(input *GetHealthCheckCountInput) (req *request.Request, output *GetHealthCheckCountOutput) { op := &request.Operation{ Name: opGetHealthCheckCount, HTTPMethod: "GET", HTTPPath: "/2013-04-01/healthcheckcount", } if input == nil { input = &GetHealthCheckCountInput{} } req = c.newRequest(op, input, output) output = &GetHealthCheckCountOutput{} req.Data = output return } // GetHealthCheckCount API operation for Amazon Route 53. // // To retrieve a count of all your health checks, send a GET request to the // /2013-04-01/healthcheckcount resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation GetHealthCheckCount for usage and error information. func (c *Route53) GetHealthCheckCount(input *GetHealthCheckCountInput) (*GetHealthCheckCountOutput, error) { req, out := c.GetHealthCheckCountRequest(input) err := req.Send() return out, err } const opGetHealthCheckLastFailureReason = "GetHealthCheckLastFailureReason" // GetHealthCheckLastFailureReasonRequest generates a "aws/request.Request" representing the // client's request for the GetHealthCheckLastFailureReason operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetHealthCheckLastFailureReason for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetHealthCheckLastFailureReason method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetHealthCheckLastFailureReasonRequest method. // req, resp := client.GetHealthCheckLastFailureReasonRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) GetHealthCheckLastFailureReasonRequest(input *GetHealthCheckLastFailureReasonInput) (req *request.Request, output *GetHealthCheckLastFailureReasonOutput) { op := &request.Operation{ Name: opGetHealthCheckLastFailureReason, HTTPMethod: "GET", HTTPPath: "/2013-04-01/healthcheck/{HealthCheckId}/lastfailurereason", } if input == nil { input = &GetHealthCheckLastFailureReasonInput{} } req = c.newRequest(op, input, output) output = &GetHealthCheckLastFailureReasonOutput{} req.Data = output return } // GetHealthCheckLastFailureReason API operation for Amazon Route 53. // // If you want to learn why a health check is currently failing or why it failed // most recently (if at all), you can get the failure reason for the most recent // failure. Send a GET request to the /Amazon Route 53 API version/healthcheck/health // check ID/lastfailurereason resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation GetHealthCheckLastFailureReason for usage and error information. // // Returned Error Codes: // * NoSuchHealthCheck // No health check exists with the ID that you specified in the DeleteHealthCheck // request. // // * InvalidInput // The input is not valid. // func (c *Route53) GetHealthCheckLastFailureReason(input *GetHealthCheckLastFailureReasonInput) (*GetHealthCheckLastFailureReasonOutput, error) { req, out := c.GetHealthCheckLastFailureReasonRequest(input) err := req.Send() return out, err } const opGetHealthCheckStatus = "GetHealthCheckStatus" // GetHealthCheckStatusRequest generates a "aws/request.Request" representing the // client's request for the GetHealthCheckStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetHealthCheckStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetHealthCheckStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetHealthCheckStatusRequest method. // req, resp := client.GetHealthCheckStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) GetHealthCheckStatusRequest(input *GetHealthCheckStatusInput) (req *request.Request, output *GetHealthCheckStatusOutput) { op := &request.Operation{ Name: opGetHealthCheckStatus, HTTPMethod: "GET", HTTPPath: "/2013-04-01/healthcheck/{HealthCheckId}/status", } if input == nil { input = &GetHealthCheckStatusInput{} } req = c.newRequest(op, input, output) output = &GetHealthCheckStatusOutput{} req.Data = output return } // GetHealthCheckStatus API operation for Amazon Route 53. // // Gets status of a specified health check. Send a GET request to the /2013-04-01/healthcheck/health // check ID/status resource. You can use this call to get a health check's current // status. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation GetHealthCheckStatus for usage and error information. // // Returned Error Codes: // * NoSuchHealthCheck // No health check exists with the ID that you specified in the DeleteHealthCheck // request. // // * InvalidInput // The input is not valid. // func (c *Route53) GetHealthCheckStatus(input *GetHealthCheckStatusInput) (*GetHealthCheckStatusOutput, error) { req, out := c.GetHealthCheckStatusRequest(input) err := req.Send() return out, err } const opGetHostedZone = "GetHostedZone" // GetHostedZoneRequest generates a "aws/request.Request" representing the // client's request for the GetHostedZone operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetHostedZone for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetHostedZone method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetHostedZoneRequest method. // req, resp := client.GetHostedZoneRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) GetHostedZoneRequest(input *GetHostedZoneInput) (req *request.Request, output *GetHostedZoneOutput) { op := &request.Operation{ Name: opGetHostedZone, HTTPMethod: "GET", HTTPPath: "/2013-04-01/hostedzone/{Id}", } if input == nil { input = &GetHostedZoneInput{} } req = c.newRequest(op, input, output) output = &GetHostedZoneOutput{} req.Data = output return } // GetHostedZone API operation for Amazon Route 53. // // Retrieves the delegation set for a hosted zone, including the four name servers // assigned to the hosted zone. Send a GET request to the /Amazon Route 53 API // version/hostedzone/hosted zone ID resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation GetHostedZone for usage and error information. // // Returned Error Codes: // * NoSuchHostedZone // No hosted zone exists with the ID that you specified. // // * InvalidInput // The input is not valid. // func (c *Route53) GetHostedZone(input *GetHostedZoneInput) (*GetHostedZoneOutput, error) { req, out := c.GetHostedZoneRequest(input) err := req.Send() return out, err } const opGetHostedZoneCount = "GetHostedZoneCount" // GetHostedZoneCountRequest generates a "aws/request.Request" representing the // client's request for the GetHostedZoneCount operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetHostedZoneCount for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetHostedZoneCount method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetHostedZoneCountRequest method. // req, resp := client.GetHostedZoneCountRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) GetHostedZoneCountRequest(input *GetHostedZoneCountInput) (req *request.Request, output *GetHostedZoneCountOutput) { op := &request.Operation{ Name: opGetHostedZoneCount, HTTPMethod: "GET", HTTPPath: "/2013-04-01/hostedzonecount", } if input == nil { input = &GetHostedZoneCountInput{} } req = c.newRequest(op, input, output) output = &GetHostedZoneCountOutput{} req.Data = output return } // GetHostedZoneCount API operation for Amazon Route 53. // // Retrieves a count of all your hosted zones. Send a GET request to the /2013-04-01/hostedzonecount // resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation GetHostedZoneCount for usage and error information. // // Returned Error Codes: // * InvalidInput // The input is not valid. // func (c *Route53) GetHostedZoneCount(input *GetHostedZoneCountInput) (*GetHostedZoneCountOutput, error) { req, out := c.GetHostedZoneCountRequest(input) err := req.Send() return out, err } const opGetReusableDelegationSet = "GetReusableDelegationSet" // GetReusableDelegationSetRequest generates a "aws/request.Request" representing the // client's request for the GetReusableDelegationSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetReusableDelegationSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetReusableDelegationSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetReusableDelegationSetRequest method. // req, resp := client.GetReusableDelegationSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) GetReusableDelegationSetRequest(input *GetReusableDelegationSetInput) (req *request.Request, output *GetReusableDelegationSetOutput) { op := &request.Operation{ Name: opGetReusableDelegationSet, HTTPMethod: "GET", HTTPPath: "/2013-04-01/delegationset/{Id}", } if input == nil { input = &GetReusableDelegationSetInput{} } req = c.newRequest(op, input, output) output = &GetReusableDelegationSetOutput{} req.Data = output return } // GetReusableDelegationSet API operation for Amazon Route 53. // // Retrieves the reusable delegation set. Send a GET request to the /2013-04-01/delegationset/delegation // set ID resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation GetReusableDelegationSet for usage and error information. // // Returned Error Codes: // * NoSuchDelegationSet // A reusable delegation set with the specified ID does not exist. // // * DelegationSetNotReusable // A reusable delegation set with the specified ID does not exist. // // * InvalidInput // The input is not valid. // func (c *Route53) GetReusableDelegationSet(input *GetReusableDelegationSetInput) (*GetReusableDelegationSetOutput, error) { req, out := c.GetReusableDelegationSetRequest(input) err := req.Send() return out, err } const opGetTrafficPolicy = "GetTrafficPolicy" // GetTrafficPolicyRequest generates a "aws/request.Request" representing the // client's request for the GetTrafficPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetTrafficPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetTrafficPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetTrafficPolicyRequest method. // req, resp := client.GetTrafficPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) GetTrafficPolicyRequest(input *GetTrafficPolicyInput) (req *request.Request, output *GetTrafficPolicyOutput) { op := &request.Operation{ Name: opGetTrafficPolicy, HTTPMethod: "GET", HTTPPath: "/2013-04-01/trafficpolicy/{Id}/{Version}", } if input == nil { input = &GetTrafficPolicyInput{} } req = c.newRequest(op, input, output) output = &GetTrafficPolicyOutput{} req.Data = output return } // GetTrafficPolicy API operation for Amazon Route 53. // // Gets information about a specific traffic policy version. // // Send a GET request to the /Amazon Route 53 API version/trafficpolicy resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation GetTrafficPolicy for usage and error information. // // Returned Error Codes: // * NoSuchTrafficPolicy // No traffic policy exists with the specified ID. // // * InvalidInput // The input is not valid. // func (c *Route53) GetTrafficPolicy(input *GetTrafficPolicyInput) (*GetTrafficPolicyOutput, error) { req, out := c.GetTrafficPolicyRequest(input) err := req.Send() return out, err } const opGetTrafficPolicyInstance = "GetTrafficPolicyInstance" // GetTrafficPolicyInstanceRequest generates a "aws/request.Request" representing the // client's request for the GetTrafficPolicyInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetTrafficPolicyInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetTrafficPolicyInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetTrafficPolicyInstanceRequest method. // req, resp := client.GetTrafficPolicyInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) GetTrafficPolicyInstanceRequest(input *GetTrafficPolicyInstanceInput) (req *request.Request, output *GetTrafficPolicyInstanceOutput) { op := &request.Operation{ Name: opGetTrafficPolicyInstance, HTTPMethod: "GET", HTTPPath: "/2013-04-01/trafficpolicyinstance/{Id}", } if input == nil { input = &GetTrafficPolicyInstanceInput{} } req = c.newRequest(op, input, output) output = &GetTrafficPolicyInstanceOutput{} req.Data = output return } // GetTrafficPolicyInstance API operation for Amazon Route 53. // // Gets information about a specified traffic policy instance. // // Send a GET request to the /Amazon Route 53 API version/trafficpolicyinstance // resource. // // After you submit a CreateTrafficPolicyInstance or an UpdateTrafficPolicyInstance // request, there's a brief delay while Amazon Route 53 creates the resource // record sets that are specified in the traffic policy definition. For more // information, see the State response element. // // In the Amazon Route 53 console, traffic policy instances are known as policy // records. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation GetTrafficPolicyInstance for usage and error information. // // Returned Error Codes: // * NoSuchTrafficPolicyInstance // No traffic policy instance exists with the specified ID. // // * InvalidInput // The input is not valid. // func (c *Route53) GetTrafficPolicyInstance(input *GetTrafficPolicyInstanceInput) (*GetTrafficPolicyInstanceOutput, error) { req, out := c.GetTrafficPolicyInstanceRequest(input) err := req.Send() return out, err } const opGetTrafficPolicyInstanceCount = "GetTrafficPolicyInstanceCount" // GetTrafficPolicyInstanceCountRequest generates a "aws/request.Request" representing the // client's request for the GetTrafficPolicyInstanceCount operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetTrafficPolicyInstanceCount for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetTrafficPolicyInstanceCount method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetTrafficPolicyInstanceCountRequest method. // req, resp := client.GetTrafficPolicyInstanceCountRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) GetTrafficPolicyInstanceCountRequest(input *GetTrafficPolicyInstanceCountInput) (req *request.Request, output *GetTrafficPolicyInstanceCountOutput) { op := &request.Operation{ Name: opGetTrafficPolicyInstanceCount, HTTPMethod: "GET", HTTPPath: "/2013-04-01/trafficpolicyinstancecount", } if input == nil { input = &GetTrafficPolicyInstanceCountInput{} } req = c.newRequest(op, input, output) output = &GetTrafficPolicyInstanceCountOutput{} req.Data = output return } // GetTrafficPolicyInstanceCount API operation for Amazon Route 53. // // Gets the number of traffic policy instances that are associated with the // current AWS account. // // To get the number of traffic policy instances, send a GET request to the // /2013-04-01/trafficpolicyinstancecount resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation GetTrafficPolicyInstanceCount for usage and error information. func (c *Route53) GetTrafficPolicyInstanceCount(input *GetTrafficPolicyInstanceCountInput) (*GetTrafficPolicyInstanceCountOutput, error) { req, out := c.GetTrafficPolicyInstanceCountRequest(input) err := req.Send() return out, err } const opListChangeBatchesByHostedZone = "ListChangeBatchesByHostedZone" // ListChangeBatchesByHostedZoneRequest generates a "aws/request.Request" representing the // client's request for the ListChangeBatchesByHostedZone operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListChangeBatchesByHostedZone for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListChangeBatchesByHostedZone method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListChangeBatchesByHostedZoneRequest method. // req, resp := client.ListChangeBatchesByHostedZoneRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) ListChangeBatchesByHostedZoneRequest(input *ListChangeBatchesByHostedZoneInput) (req *request.Request, output *ListChangeBatchesByHostedZoneOutput) { if c.Client.Config.Logger != nil { c.Client.Config.Logger.Log("This operation, ListChangeBatchesByHostedZone, has been deprecated") } op := &request.Operation{ Name: opListChangeBatchesByHostedZone, HTTPMethod: "GET", HTTPPath: "/2013-04-01/hostedzone/{Id}/changes", } if input == nil { input = &ListChangeBatchesByHostedZoneInput{} } req = c.newRequest(op, input, output) output = &ListChangeBatchesByHostedZoneOutput{} req.Data = output return } // ListChangeBatchesByHostedZone API operation for Amazon Route 53. // // Gets the list of ChangeBatches in a given time period for a given hosted // zone. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation ListChangeBatchesByHostedZone for usage and error information. // // Returned Error Codes: // * NoSuchHostedZone // No hosted zone exists with the ID that you specified. // // * InvalidInput // The input is not valid. // func (c *Route53) ListChangeBatchesByHostedZone(input *ListChangeBatchesByHostedZoneInput) (*ListChangeBatchesByHostedZoneOutput, error) { req, out := c.ListChangeBatchesByHostedZoneRequest(input) err := req.Send() return out, err } const opListChangeBatchesByRRSet = "ListChangeBatchesByRRSet" // ListChangeBatchesByRRSetRequest generates a "aws/request.Request" representing the // client's request for the ListChangeBatchesByRRSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListChangeBatchesByRRSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListChangeBatchesByRRSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListChangeBatchesByRRSetRequest method. // req, resp := client.ListChangeBatchesByRRSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) ListChangeBatchesByRRSetRequest(input *ListChangeBatchesByRRSetInput) (req *request.Request, output *ListChangeBatchesByRRSetOutput) { if c.Client.Config.Logger != nil { c.Client.Config.Logger.Log("This operation, ListChangeBatchesByRRSet, has been deprecated") } op := &request.Operation{ Name: opListChangeBatchesByRRSet, HTTPMethod: "GET", HTTPPath: "/2013-04-01/hostedzone/{Id}/rrsChanges", } if input == nil { input = &ListChangeBatchesByRRSetInput{} } req = c.newRequest(op, input, output) output = &ListChangeBatchesByRRSetOutput{} req.Data = output return } // ListChangeBatchesByRRSet API operation for Amazon Route 53. // // Gets the list of ChangeBatches in a given time period for a given hosted // zone and RRSet. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation ListChangeBatchesByRRSet for usage and error information. // // Returned Error Codes: // * NoSuchHostedZone // No hosted zone exists with the ID that you specified. // // * InvalidInput // The input is not valid. // func (c *Route53) ListChangeBatchesByRRSet(input *ListChangeBatchesByRRSetInput) (*ListChangeBatchesByRRSetOutput, error) { req, out := c.ListChangeBatchesByRRSetRequest(input) err := req.Send() return out, err } const opListGeoLocations = "ListGeoLocations" // ListGeoLocationsRequest generates a "aws/request.Request" representing the // client's request for the ListGeoLocations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListGeoLocations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListGeoLocations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListGeoLocationsRequest method. // req, resp := client.ListGeoLocationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) ListGeoLocationsRequest(input *ListGeoLocationsInput) (req *request.Request, output *ListGeoLocationsOutput) { op := &request.Operation{ Name: opListGeoLocations, HTTPMethod: "GET", HTTPPath: "/2013-04-01/geolocations", } if input == nil { input = &ListGeoLocationsInput{} } req = c.newRequest(op, input, output) output = &ListGeoLocationsOutput{} req.Data = output return } // ListGeoLocations API operation for Amazon Route 53. // // Retrieves a list of supported geo locations. Send a GET request to the /2013-04-01/geolocations // resource. The response to this request includes a GeoLocationDetailsList // element for each location that Amazon Route 53 supports. // // Countries are listed first, and continents are listed last. If Amazon Route // 53 supports subdivisions for a country (for example, states or provinces), // the subdivisions for that country are listed in alphabetical order immediately // after the corresponding country. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation ListGeoLocations for usage and error information. // // Returned Error Codes: // * InvalidInput // The input is not valid. // func (c *Route53) ListGeoLocations(input *ListGeoLocationsInput) (*ListGeoLocationsOutput, error) { req, out := c.ListGeoLocationsRequest(input) err := req.Send() return out, err } const opListHealthChecks = "ListHealthChecks" // ListHealthChecksRequest generates a "aws/request.Request" representing the // client's request for the ListHealthChecks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListHealthChecks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListHealthChecks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListHealthChecksRequest method. // req, resp := client.ListHealthChecksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) ListHealthChecksRequest(input *ListHealthChecksInput) (req *request.Request, output *ListHealthChecksOutput) { op := &request.Operation{ Name: opListHealthChecks, HTTPMethod: "GET", HTTPPath: "/2013-04-01/healthcheck", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"NextMarker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListHealthChecksInput{} } req = c.newRequest(op, input, output) output = &ListHealthChecksOutput{} req.Data = output return } // ListHealthChecks API operation for Amazon Route 53. // // Retrieve a list of your health checks. Send a GET request to the /2013-04-01/healthcheck // resource. The response to this request includes a HealthChecks element with // zero or more HealthCheck child elements. By default, the list of health checks // is displayed on a single page. You can control the length of the page that // is displayed by using the MaxItems parameter. You can use the Marker parameter // to control the health check that the list begins with. // // For information about listing health checks using the Amazon Route 53 console, // see Amazon Route 53 Health Checks and DNS Failover (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation ListHealthChecks for usage and error information. // // Returned Error Codes: // * InvalidInput // The input is not valid. // // * IncompatibleVersion // The resource you are trying to access is unsupported on this Amazon Route // 53 endpoint. Please consider using a newer endpoint or a tool that does so. // func (c *Route53) ListHealthChecks(input *ListHealthChecksInput) (*ListHealthChecksOutput, error) { req, out := c.ListHealthChecksRequest(input) err := req.Send() return out, err } // ListHealthChecksPages iterates over the pages of a ListHealthChecks operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListHealthChecks method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListHealthChecks operation. // pageNum := 0 // err := client.ListHealthChecksPages(params, // func(page *ListHealthChecksOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Route53) ListHealthChecksPages(input *ListHealthChecksInput, fn func(p *ListHealthChecksOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListHealthChecksRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListHealthChecksOutput), lastPage) }) } const opListHostedZones = "ListHostedZones" // ListHostedZonesRequest generates a "aws/request.Request" representing the // client's request for the ListHostedZones operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListHostedZones for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListHostedZones method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListHostedZonesRequest method. // req, resp := client.ListHostedZonesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) ListHostedZonesRequest(input *ListHostedZonesInput) (req *request.Request, output *ListHostedZonesOutput) { op := &request.Operation{ Name: opListHostedZones, HTTPMethod: "GET", HTTPPath: "/2013-04-01/hostedzone", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"NextMarker"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListHostedZonesInput{} } req = c.newRequest(op, input, output) output = &ListHostedZonesOutput{} req.Data = output return } // ListHostedZones API operation for Amazon Route 53. // // To retrieve a list of your public and private hosted zones, send a GET request // to the /2013-04-01/hostedzone resource. The response to this request includes // a HostedZones child element for each hosted zone created by the current AWS // account. // // Amazon Route 53 returns a maximum of 100 items in each response. If you have // a lot of hosted zones, you can use the maxitems parameter to list them in // groups of up to 100. The response includes four values that help navigate // from one group of maxitems hosted zones to the next: // // * MaxItems is the value specified for the maxitems parameter in the request // that produced the current response. // // * If the value of IsTruncated in the response is true, there are more // hosted zones associated with the current AWS account. // // * NextMarker is the hosted zone ID of the next hosted zone that is associated // with the current AWS account. If you want to list more hosted zones, make // another call to ListHostedZones, and specify the value of the NextMarker // element in the marker parameter. // // If IsTruncated is false, the NextMarker element is omitted from the response. // // * If you're making the second or subsequent call to ListHostedZones, the // Marker element matches the value that you specified in the marker parameter // in the previous request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation ListHostedZones for usage and error information. // // Returned Error Codes: // * InvalidInput // The input is not valid. // // * NoSuchDelegationSet // A reusable delegation set with the specified ID does not exist. // // * DelegationSetNotReusable // A reusable delegation set with the specified ID does not exist. // func (c *Route53) ListHostedZones(input *ListHostedZonesInput) (*ListHostedZonesOutput, error) { req, out := c.ListHostedZonesRequest(input) err := req.Send() return out, err } // ListHostedZonesPages iterates over the pages of a ListHostedZones operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListHostedZones method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListHostedZones operation. // pageNum := 0 // err := client.ListHostedZonesPages(params, // func(page *ListHostedZonesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Route53) ListHostedZonesPages(input *ListHostedZonesInput, fn func(p *ListHostedZonesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListHostedZonesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListHostedZonesOutput), lastPage) }) } const opListHostedZonesByName = "ListHostedZonesByName" // ListHostedZonesByNameRequest generates a "aws/request.Request" representing the // client's request for the ListHostedZonesByName operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListHostedZonesByName for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListHostedZonesByName method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListHostedZonesByNameRequest method. // req, resp := client.ListHostedZonesByNameRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) ListHostedZonesByNameRequest(input *ListHostedZonesByNameInput) (req *request.Request, output *ListHostedZonesByNameOutput) { op := &request.Operation{ Name: opListHostedZonesByName, HTTPMethod: "GET", HTTPPath: "/2013-04-01/hostedzonesbyname", } if input == nil { input = &ListHostedZonesByNameInput{} } req = c.newRequest(op, input, output) output = &ListHostedZonesByNameOutput{} req.Data = output return } // ListHostedZonesByName API operation for Amazon Route 53. // // Retrieves a list of your hosted zones in lexicographic order. Send a GET // request to the /2013-04-01/hostedzonesbyname resource. The response includes // a HostedZones child element for each hosted zone created by the current AWS // account. // // ListHostedZonesByName sorts hosted zones by name with the labels reversed. // For example: // // * com.example.www. // // Note the trailing dot, which can change the sort order in some circumstances. // // If the domain name includes escape characters or Punycode, ListHostedZonesByName // alphabetizes the domain name using the escaped or Punycoded value, which // is the format that Amazon Route 53 saves in its database. For example, to // create a hosted zone for example.com, specify ex\344mple.com for the domain // name. ListHostedZonesByName alphabetizes it as: // // * com.ex\344mple. // // The labels are reversed and alphabetized using the escaped value. For more // information about valid domain name formats, including internationalized // domain names, see DNS Domain Name Format (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DomainNameFormat.html) // in the Amazon Route 53 Developer Guide. // // Amazon Route 53 returns up to 100 items in each response. If you have a lot // of hosted zones, use the MaxItems parameter to list them in groups of up // to 100. The response includes values that help navigate from one group of // MaxItems hosted zones to the next: // // * The DNSName and HostedZoneId elements in the response contain the values, // if any, specified for the dnsname and hostedzoneid parameters in the request // that produced the current response. // // * The MaxItems element in the response contains the value, if any, that // you specified for the maxitems parameter in the request that produced // the current response. // // * If the value of IsTruncated in the response is true, there are more // hosted zones associated with the current AWS account. // // If IsTruncated is false, this response includes the last hosted zone that // is associated with the current account. The NextDNSName element and NextHostedZoneId // elements are omitted from the response. // // * The NextDNSName and NextHostedZoneId elements in the response contain // the domain name and the hosted zone ID of the next hosted zone that is // associated with the current AWS account. If you want to list more hosted // zones, make another call to ListHostedZonesByName, and specify the value // of NextDNSName and NextHostedZoneId in the dnsname and hostedzoneid parameters, // respectively. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation ListHostedZonesByName for usage and error information. // // Returned Error Codes: // * InvalidInput // The input is not valid. // // * InvalidDomainName // The specified domain name is not valid. // func (c *Route53) ListHostedZonesByName(input *ListHostedZonesByNameInput) (*ListHostedZonesByNameOutput, error) { req, out := c.ListHostedZonesByNameRequest(input) err := req.Send() return out, err } const opListResourceRecordSets = "ListResourceRecordSets" // ListResourceRecordSetsRequest generates a "aws/request.Request" representing the // client's request for the ListResourceRecordSets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListResourceRecordSets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListResourceRecordSets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListResourceRecordSetsRequest method. // req, resp := client.ListResourceRecordSetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) ListResourceRecordSetsRequest(input *ListResourceRecordSetsInput) (req *request.Request, output *ListResourceRecordSetsOutput) { op := &request.Operation{ Name: opListResourceRecordSets, HTTPMethod: "GET", HTTPPath: "/2013-04-01/hostedzone/{Id}/rrset", Paginator: &request.Paginator{ InputTokens: []string{"StartRecordName", "StartRecordType", "StartRecordIdentifier"}, OutputTokens: []string{"NextRecordName", "NextRecordType", "NextRecordIdentifier"}, LimitToken: "MaxItems", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListResourceRecordSetsInput{} } req = c.newRequest(op, input, output) output = &ListResourceRecordSetsOutput{} req.Data = output return } // ListResourceRecordSets API operation for Amazon Route 53. // // Lists the resource record sets in a specified hosted zone. // // ListResourceRecordSets returns up to 100 resource record sets at a time in // ASCII order, beginning at a position specified by the name and type elements. // The action sorts results first by DNS name with the labels reversed, for // example: // // com.example.www. // // Note the trailing dot, which can change the sort order in some circumstances. // // When multiple records have the same DNS name, the action sorts results by // the record type. // // You can use the name and type elements to adjust the beginning position of // the list of resource record sets returned: // // If you do not specify Name or TypeThe results begin with the first resource // record set that the hosted zone contains. // // If you specify Name but not TypeThe results begin with the first resource // record set in the list whose name is greater than or equal to Name. // // If you specify Type but not NameAmazon Route 53 returns the InvalidInput // error. // // If you specify both Name and TypeThe results begin with the first resource // record set in the list whose name is greater than or equal to Name, and whose // type is greater than or equal to Type. // // This action returns the most current version of the records. This includes // records that are PENDING, and that are not yet available on all Amazon Route // 53 DNS servers. // // To ensure that you get an accurate listing of the resource record sets for // a hosted zone at a point in time, do not submit a ChangeResourceRecordSets // request while you're paging through the results of a ListResourceRecordSets // request. If you do, some pages may display results without the latest changes // while other pages display results with the latest changes. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation ListResourceRecordSets for usage and error information. // // Returned Error Codes: // * NoSuchHostedZone // No hosted zone exists with the ID that you specified. // // * InvalidInput // The input is not valid. // func (c *Route53) ListResourceRecordSets(input *ListResourceRecordSetsInput) (*ListResourceRecordSetsOutput, error) { req, out := c.ListResourceRecordSetsRequest(input) err := req.Send() return out, err } // ListResourceRecordSetsPages iterates over the pages of a ListResourceRecordSets operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListResourceRecordSets method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListResourceRecordSets operation. // pageNum := 0 // err := client.ListResourceRecordSetsPages(params, // func(page *ListResourceRecordSetsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Route53) ListResourceRecordSetsPages(input *ListResourceRecordSetsInput, fn func(p *ListResourceRecordSetsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListResourceRecordSetsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListResourceRecordSetsOutput), lastPage) }) } const opListReusableDelegationSets = "ListReusableDelegationSets" // ListReusableDelegationSetsRequest generates a "aws/request.Request" representing the // client's request for the ListReusableDelegationSets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListReusableDelegationSets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListReusableDelegationSets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListReusableDelegationSetsRequest method. // req, resp := client.ListReusableDelegationSetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) ListReusableDelegationSetsRequest(input *ListReusableDelegationSetsInput) (req *request.Request, output *ListReusableDelegationSetsOutput) { op := &request.Operation{ Name: opListReusableDelegationSets, HTTPMethod: "GET", HTTPPath: "/2013-04-01/delegationset", } if input == nil { input = &ListReusableDelegationSetsInput{} } req = c.newRequest(op, input, output) output = &ListReusableDelegationSetsOutput{} req.Data = output return } // ListReusableDelegationSets API operation for Amazon Route 53. // // To retrieve a list of your reusable delegation sets, send a GET request to // the /2013-04-01/delegationset resource. The response to this request includes // a DelegationSets element with zero, one, or multiple DelegationSet child // elements. By default, the list of delegation sets is displayed on a single // page. You can control the length of the page that is displayed by using the // MaxItems parameter. You can use the Marker parameter to control the delegation // set that the list begins with. // // Amazon Route 53 returns a maximum of 100 items. If you set MaxItems to a // value greater than 100, Amazon Route 53 returns only the first 100. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation ListReusableDelegationSets for usage and error information. // // Returned Error Codes: // * InvalidInput // The input is not valid. // func (c *Route53) ListReusableDelegationSets(input *ListReusableDelegationSetsInput) (*ListReusableDelegationSetsOutput, error) { req, out := c.ListReusableDelegationSetsRequest(input) err := req.Send() return out, err } const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTagsForResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTagsForResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTagsForResourceRequest method. // req, resp := client.ListTagsForResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { op := &request.Operation{ Name: opListTagsForResource, HTTPMethod: "GET", HTTPPath: "/2013-04-01/tags/{ResourceType}/{ResourceId}", } if input == nil { input = &ListTagsForResourceInput{} } req = c.newRequest(op, input, output) output = &ListTagsForResourceOutput{} req.Data = output return } // ListTagsForResource API operation for Amazon Route 53. // // Lists tags for one health check or hosted zone. // // For information about using tags for cost allocation, see Using Cost Allocation // Tags (http://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) // in the AWS Billing and Cost Management User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation ListTagsForResource for usage and error information. // // Returned Error Codes: // * InvalidInput // The input is not valid. // // * NoSuchHealthCheck // No health check exists with the ID that you specified in the DeleteHealthCheck // request. // // * NoSuchHostedZone // No hosted zone exists with the ID that you specified. // // * PriorRequestNotComplete // If Amazon Route 53 can't process a request before the next request arrives, // it will reject subsequent requests for the same hosted zone and return an // HTTP 400 error (Bad request). If Amazon Route 53 returns this error repeatedly // for the same request, we recommend that you wait, in intervals of increasing // duration, before you try the request again. // // * ThrottlingException // func (c *Route53) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { req, out := c.ListTagsForResourceRequest(input) err := req.Send() return out, err } const opListTagsForResources = "ListTagsForResources" // ListTagsForResourcesRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForResources operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTagsForResources for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTagsForResources method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTagsForResourcesRequest method. // req, resp := client.ListTagsForResourcesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) ListTagsForResourcesRequest(input *ListTagsForResourcesInput) (req *request.Request, output *ListTagsForResourcesOutput) { op := &request.Operation{ Name: opListTagsForResources, HTTPMethod: "POST", HTTPPath: "/2013-04-01/tags/{ResourceType}", } if input == nil { input = &ListTagsForResourcesInput{} } req = c.newRequest(op, input, output) output = &ListTagsForResourcesOutput{} req.Data = output return } // ListTagsForResources API operation for Amazon Route 53. // // Lists tags for up to 10 health checks or hosted zones. // // For information about using tags for cost allocation, see Using Cost Allocation // Tags (http://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) // in the AWS Billing and Cost Management User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation ListTagsForResources for usage and error information. // // Returned Error Codes: // * InvalidInput // The input is not valid. // // * NoSuchHealthCheck // No health check exists with the ID that you specified in the DeleteHealthCheck // request. // // * NoSuchHostedZone // No hosted zone exists with the ID that you specified. // // * PriorRequestNotComplete // If Amazon Route 53 can't process a request before the next request arrives, // it will reject subsequent requests for the same hosted zone and return an // HTTP 400 error (Bad request). If Amazon Route 53 returns this error repeatedly // for the same request, we recommend that you wait, in intervals of increasing // duration, before you try the request again. // // * ThrottlingException // func (c *Route53) ListTagsForResources(input *ListTagsForResourcesInput) (*ListTagsForResourcesOutput, error) { req, out := c.ListTagsForResourcesRequest(input) err := req.Send() return out, err } const opListTrafficPolicies = "ListTrafficPolicies" // ListTrafficPoliciesRequest generates a "aws/request.Request" representing the // client's request for the ListTrafficPolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTrafficPolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTrafficPolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTrafficPoliciesRequest method. // req, resp := client.ListTrafficPoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) ListTrafficPoliciesRequest(input *ListTrafficPoliciesInput) (req *request.Request, output *ListTrafficPoliciesOutput) { op := &request.Operation{ Name: opListTrafficPolicies, HTTPMethod: "GET", HTTPPath: "/2013-04-01/trafficpolicies", } if input == nil { input = &ListTrafficPoliciesInput{} } req = c.newRequest(op, input, output) output = &ListTrafficPoliciesOutput{} req.Data = output return } // ListTrafficPolicies API operation for Amazon Route 53. // // Gets information about the latest version for every traffic policy that is // associated with the current AWS account. Send a GET request to the /Amazon // Route 53 API version/trafficpolicy resource. // // Amazon Route 53 returns a maximum of 100 items in each response. If you have // a lot of traffic policies, you can use the maxitems parameter to list them // in groups of up to 100. // // The response includes three values that help you navigate from one group // of maxitems traffic policies to the next: // // * IsTruncated // // If the value of IsTruncated in the response is true, there are more traffic // policies associated with the current AWS account. // // If IsTruncated is false, this response includes the last traffic policy that // is associated with the current account. // // * TrafficPolicyIdMarker // // If IsTruncated is true, TrafficPolicyIdMarker is the ID of the first traffic // policy in the next group of MaxItems traffic policies. If you want to // list more traffic policies, make another call to ListTrafficPolicies, // and specify the value of the TrafficPolicyIdMarker element from the response // in the TrafficPolicyIdMarker request parameter. // // If IsTruncated is false, the TrafficPolicyIdMarker element is omitted from // the response. // // * MaxItems // // The value that you specified for the MaxItems parameter in the request that // produced the current response. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation ListTrafficPolicies for usage and error information. // // Returned Error Codes: // * InvalidInput // The input is not valid. // func (c *Route53) ListTrafficPolicies(input *ListTrafficPoliciesInput) (*ListTrafficPoliciesOutput, error) { req, out := c.ListTrafficPoliciesRequest(input) err := req.Send() return out, err } const opListTrafficPolicyInstances = "ListTrafficPolicyInstances" // ListTrafficPolicyInstancesRequest generates a "aws/request.Request" representing the // client's request for the ListTrafficPolicyInstances operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTrafficPolicyInstances for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTrafficPolicyInstances method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTrafficPolicyInstancesRequest method. // req, resp := client.ListTrafficPolicyInstancesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) ListTrafficPolicyInstancesRequest(input *ListTrafficPolicyInstancesInput) (req *request.Request, output *ListTrafficPolicyInstancesOutput) { op := &request.Operation{ Name: opListTrafficPolicyInstances, HTTPMethod: "GET", HTTPPath: "/2013-04-01/trafficpolicyinstances", } if input == nil { input = &ListTrafficPolicyInstancesInput{} } req = c.newRequest(op, input, output) output = &ListTrafficPolicyInstancesOutput{} req.Data = output return } // ListTrafficPolicyInstances API operation for Amazon Route 53. // // Gets information about the traffic policy instances that you created by using // the current AWS account. // // After you submit an UpdateTrafficPolicyInstance request, there's a brief // delay while Amazon Route 53 creates the resource record sets that are specified // in the traffic policy definition. For more information, see the State response // element. // // Send a GET request to the /Amazon Route 53 API version/trafficpolicyinstance // resource. // // Amazon Route 53 returns a maximum of 100 items in each response. If you have // a lot of traffic policy instances, you can use the MaxItems parameter to // list them in groups of up to 100. // // The response includes five values that help you navigate from one group of // MaxItems traffic policy instances to the next: // // * IsTruncated // // If the value of IsTruncated in the response is true, there are more traffic // policy instances associated with the current AWS account. // // If IsTruncated is false, this response includes the last traffic policy instance // that is associated with the current account. // // * MaxItems // // The value that you specified for the MaxItems parameter in the request that // produced the current response. // // * HostedZoneIdMarker, TrafficPolicyInstanceNameMarker, and TrafficPolicyInstanceTypeMarker // // If IsTruncated is true, these three values in the response represent the // first traffic policy instance in the next group of MaxItems traffic policy // instances. To list more traffic policy instances, make another call to // ListTrafficPolicyInstances, and specify these values in the corresponding // request parameters. // // If IsTruncated is false, all three elements are omitted from the response. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation ListTrafficPolicyInstances for usage and error information. // // Returned Error Codes: // * InvalidInput // The input is not valid. // // * NoSuchTrafficPolicyInstance // No traffic policy instance exists with the specified ID. // func (c *Route53) ListTrafficPolicyInstances(input *ListTrafficPolicyInstancesInput) (*ListTrafficPolicyInstancesOutput, error) { req, out := c.ListTrafficPolicyInstancesRequest(input) err := req.Send() return out, err } const opListTrafficPolicyInstancesByHostedZone = "ListTrafficPolicyInstancesByHostedZone" // ListTrafficPolicyInstancesByHostedZoneRequest generates a "aws/request.Request" representing the // client's request for the ListTrafficPolicyInstancesByHostedZone operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTrafficPolicyInstancesByHostedZone for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTrafficPolicyInstancesByHostedZone method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTrafficPolicyInstancesByHostedZoneRequest method. // req, resp := client.ListTrafficPolicyInstancesByHostedZoneRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) ListTrafficPolicyInstancesByHostedZoneRequest(input *ListTrafficPolicyInstancesByHostedZoneInput) (req *request.Request, output *ListTrafficPolicyInstancesByHostedZoneOutput) { op := &request.Operation{ Name: opListTrafficPolicyInstancesByHostedZone, HTTPMethod: "GET", HTTPPath: "/2013-04-01/trafficpolicyinstances/hostedzone", } if input == nil { input = &ListTrafficPolicyInstancesByHostedZoneInput{} } req = c.newRequest(op, input, output) output = &ListTrafficPolicyInstancesByHostedZoneOutput{} req.Data = output return } // ListTrafficPolicyInstancesByHostedZone API operation for Amazon Route 53. // // Gets information about the traffic policy instances that you created in a // specified hosted zone. // // After you submit an UpdateTrafficPolicyInstance request, there's a brief // delay while Amazon Route 53 creates the resource record sets that are specified // in the traffic policy definition. For more information, see the State response // element. // // Send a GET request to the /Amazon Route 53 API version/trafficpolicyinstance // resource and include the ID of the hosted zone. // // Amazon Route 53 returns a maximum of 100 items in each response. If you have // a lot of traffic policy instances, you can use the MaxItems parameter to // list them in groups of up to 100. // // The response includes four values that help you navigate from one group of // MaxItems traffic policy instances to the next: // // * IsTruncated // // If the value of IsTruncated in the response is true, there are more traffic // policy instances associated with the current AWS account. // // * If IsTruncated is false, this response includes the last traffic policy // instance that is associated with the current account. // // * MaxItems // // * The value that you specified for the MaxItems parameter in the request // that produced the current response. // // * TrafficPolicyInstanceNameMarker and TrafficPolicyInstanceTypeMarker // // * If IsTruncated is true, these two values in the response represent the // first traffic policy instance in the next group of MaxItems traffic policy // instances. To list more traffic policy instances, make another call to // ListTrafficPolicyInstancesByHostedZone, and specify these values in the // corresponding request parameters. // // * If IsTruncated is false, all three elements are omitted from the response. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation ListTrafficPolicyInstancesByHostedZone for usage and error information. // // Returned Error Codes: // * InvalidInput // The input is not valid. // // * NoSuchTrafficPolicyInstance // No traffic policy instance exists with the specified ID. // // * NoSuchHostedZone // No hosted zone exists with the ID that you specified. // func (c *Route53) ListTrafficPolicyInstancesByHostedZone(input *ListTrafficPolicyInstancesByHostedZoneInput) (*ListTrafficPolicyInstancesByHostedZoneOutput, error) { req, out := c.ListTrafficPolicyInstancesByHostedZoneRequest(input) err := req.Send() return out, err } const opListTrafficPolicyInstancesByPolicy = "ListTrafficPolicyInstancesByPolicy" // ListTrafficPolicyInstancesByPolicyRequest generates a "aws/request.Request" representing the // client's request for the ListTrafficPolicyInstancesByPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTrafficPolicyInstancesByPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTrafficPolicyInstancesByPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTrafficPolicyInstancesByPolicyRequest method. // req, resp := client.ListTrafficPolicyInstancesByPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) ListTrafficPolicyInstancesByPolicyRequest(input *ListTrafficPolicyInstancesByPolicyInput) (req *request.Request, output *ListTrafficPolicyInstancesByPolicyOutput) { op := &request.Operation{ Name: opListTrafficPolicyInstancesByPolicy, HTTPMethod: "GET", HTTPPath: "/2013-04-01/trafficpolicyinstances/trafficpolicy", } if input == nil { input = &ListTrafficPolicyInstancesByPolicyInput{} } req = c.newRequest(op, input, output) output = &ListTrafficPolicyInstancesByPolicyOutput{} req.Data = output return } // ListTrafficPolicyInstancesByPolicy API operation for Amazon Route 53. // // Gets information about the traffic policy instances that you created by using // a specify traffic policy version. // // After you submit a CreateTrafficPolicyInstance or an UpdateTrafficPolicyInstance // request, there's a brief delay while Amazon Route 53 creates the resource // record sets that are specified in the traffic policy definition. For more // information, see the State response element. // // Send a GET request to the /Route 53 API version/trafficpolicyinstance resource // and include the ID and version of the traffic policy. // // Amazon Route 53 returns a maximum of 100 items in each response. If you have // a lot of traffic policy instances, you can use the MaxItems parameter to // list them in groups of up to 100. // // The response includes five values that help you navigate from one group of // MaxItems traffic policy instances to the next: // // * IsTruncated // // If the value of IsTruncated in the response is true, there are more traffic // policy instances associated with the specified traffic policy. // // If IsTruncated is false, this response includes the last traffic policy instance // that is associated with the specified traffic policy. // // * MaxItems // // The value that you specified for the MaxItems parameter in the request that // produced the current response. // // * HostedZoneIdMarker, TrafficPolicyInstanceNameMarker, and TrafficPolicyInstanceTypeMarker // // If IsTruncated is true, these values in the response represent the first // traffic policy instance in the next group of MaxItems traffic policy instances. // To list more traffic policy instances, make another call to ListTrafficPolicyInstancesByPolicy, // and specify these values in the corresponding request parameters. // // If IsTruncated is false, all three elements are omitted from the response. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation ListTrafficPolicyInstancesByPolicy for usage and error information. // // Returned Error Codes: // * InvalidInput // The input is not valid. // // * NoSuchTrafficPolicyInstance // No traffic policy instance exists with the specified ID. // // * NoSuchTrafficPolicy // No traffic policy exists with the specified ID. // func (c *Route53) ListTrafficPolicyInstancesByPolicy(input *ListTrafficPolicyInstancesByPolicyInput) (*ListTrafficPolicyInstancesByPolicyOutput, error) { req, out := c.ListTrafficPolicyInstancesByPolicyRequest(input) err := req.Send() return out, err } const opListTrafficPolicyVersions = "ListTrafficPolicyVersions" // ListTrafficPolicyVersionsRequest generates a "aws/request.Request" representing the // client's request for the ListTrafficPolicyVersions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTrafficPolicyVersions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTrafficPolicyVersions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTrafficPolicyVersionsRequest method. // req, resp := client.ListTrafficPolicyVersionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) ListTrafficPolicyVersionsRequest(input *ListTrafficPolicyVersionsInput) (req *request.Request, output *ListTrafficPolicyVersionsOutput) { op := &request.Operation{ Name: opListTrafficPolicyVersions, HTTPMethod: "GET", HTTPPath: "/2013-04-01/trafficpolicies/{Id}/versions", } if input == nil { input = &ListTrafficPolicyVersionsInput{} } req = c.newRequest(op, input, output) output = &ListTrafficPolicyVersionsOutput{} req.Data = output return } // ListTrafficPolicyVersions API operation for Amazon Route 53. // // Gets information about all of the versions for a specified traffic policy. // // Send a GET request to the /Amazon Route 53 API version/trafficpolicy resource // and specify the ID of the traffic policy for which you want to list versions. // // Amazon Route 53 returns a maximum of 100 items in each response. If you have // a lot of traffic policies, you can use the maxitems parameter to list them // in groups of up to 100. // // The response includes three values that help you navigate from one group // of maxitems traffic policies to the next: // // * IsTruncated // // If the value of IsTruncated in the response is true, there are more traffic // policy versions associated with the specified traffic policy. // // If IsTruncated is false, this response includes the last traffic policy version // that is associated with the specified traffic policy. // // * TrafficPolicyVersionMarker // // The ID of the next traffic policy version that is associated with the current // AWS account. If you want to list more traffic policies, make another call // to ListTrafficPolicyVersions, and specify the value of the TrafficPolicyVersionMarker // element in the TrafficPolicyVersionMarker request parameter. // // If IsTruncated is false, Amazon Route 53 omits the TrafficPolicyVersionMarker // element from the response. // // * MaxItems // // The value that you specified for the MaxItems parameter in the request that // produced the current response. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation ListTrafficPolicyVersions for usage and error information. // // Returned Error Codes: // * InvalidInput // The input is not valid. // // * NoSuchTrafficPolicy // No traffic policy exists with the specified ID. // func (c *Route53) ListTrafficPolicyVersions(input *ListTrafficPolicyVersionsInput) (*ListTrafficPolicyVersionsOutput, error) { req, out := c.ListTrafficPolicyVersionsRequest(input) err := req.Send() return out, err } const opTestDNSAnswer = "TestDNSAnswer" // TestDNSAnswerRequest generates a "aws/request.Request" representing the // client's request for the TestDNSAnswer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See TestDNSAnswer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the TestDNSAnswer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the TestDNSAnswerRequest method. // req, resp := client.TestDNSAnswerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) TestDNSAnswerRequest(input *TestDNSAnswerInput) (req *request.Request, output *TestDNSAnswerOutput) { op := &request.Operation{ Name: opTestDNSAnswer, HTTPMethod: "GET", HTTPPath: "/2013-04-01/testdnsanswer", } if input == nil { input = &TestDNSAnswerInput{} } req = c.newRequest(op, input, output) output = &TestDNSAnswerOutput{} req.Data = output return } // TestDNSAnswer API operation for Amazon Route 53. // // Gets the value that Amazon Route 53 returns in response to a DNS request // for a specified record name and type. You can optionally specify the IP address // of a DNS resolver, an EDNS0 client subnet IP address, and a subnet mask. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation TestDNSAnswer for usage and error information. // // Returned Error Codes: // * NoSuchHostedZone // No hosted zone exists with the ID that you specified. // // * InvalidInput // The input is not valid. // func (c *Route53) TestDNSAnswer(input *TestDNSAnswerInput) (*TestDNSAnswerOutput, error) { req, out := c.TestDNSAnswerRequest(input) err := req.Send() return out, err } const opUpdateHealthCheck = "UpdateHealthCheck" // UpdateHealthCheckRequest generates a "aws/request.Request" representing the // client's request for the UpdateHealthCheck operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateHealthCheck for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateHealthCheck method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateHealthCheckRequest method. // req, resp := client.UpdateHealthCheckRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) UpdateHealthCheckRequest(input *UpdateHealthCheckInput) (req *request.Request, output *UpdateHealthCheckOutput) { op := &request.Operation{ Name: opUpdateHealthCheck, HTTPMethod: "POST", HTTPPath: "/2013-04-01/healthcheck/{HealthCheckId}", } if input == nil { input = &UpdateHealthCheckInput{} } req = c.newRequest(op, input, output) output = &UpdateHealthCheckOutput{} req.Data = output return } // UpdateHealthCheck API operation for Amazon Route 53. // // Updates an existing health check. // // Send a POST request to the /2013-04-01/healthcheck/health check ID resource. // The request body must include an XML document with an UpdateHealthCheckRequest // element. For more information about updating health checks, see Creating, // Updating, and Deleting Health Checks (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/health-checks-creating-deleting.html) // in the Amazon Route 53 Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation UpdateHealthCheck for usage and error information. // // Returned Error Codes: // * NoSuchHealthCheck // No health check exists with the ID that you specified in the DeleteHealthCheck // request. // // * InvalidInput // The input is not valid. // // * HealthCheckVersionMismatch // The value of HealthCheckVersion in the request doesn't match the value of // HealthCheckVersion in the health check. // func (c *Route53) UpdateHealthCheck(input *UpdateHealthCheckInput) (*UpdateHealthCheckOutput, error) { req, out := c.UpdateHealthCheckRequest(input) err := req.Send() return out, err } const opUpdateHostedZoneComment = "UpdateHostedZoneComment" // UpdateHostedZoneCommentRequest generates a "aws/request.Request" representing the // client's request for the UpdateHostedZoneComment operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateHostedZoneComment for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateHostedZoneComment method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateHostedZoneCommentRequest method. // req, resp := client.UpdateHostedZoneCommentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) UpdateHostedZoneCommentRequest(input *UpdateHostedZoneCommentInput) (req *request.Request, output *UpdateHostedZoneCommentOutput) { op := &request.Operation{ Name: opUpdateHostedZoneComment, HTTPMethod: "POST", HTTPPath: "/2013-04-01/hostedzone/{Id}", } if input == nil { input = &UpdateHostedZoneCommentInput{} } req = c.newRequest(op, input, output) output = &UpdateHostedZoneCommentOutput{} req.Data = output return } // UpdateHostedZoneComment API operation for Amazon Route 53. // // Updates the hosted zone comment. Send a POST request to the /2013-04-01/hostedzone/hosted // zone ID resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation UpdateHostedZoneComment for usage and error information. // // Returned Error Codes: // * NoSuchHostedZone // No hosted zone exists with the ID that you specified. // // * InvalidInput // The input is not valid. // func (c *Route53) UpdateHostedZoneComment(input *UpdateHostedZoneCommentInput) (*UpdateHostedZoneCommentOutput, error) { req, out := c.UpdateHostedZoneCommentRequest(input) err := req.Send() return out, err } const opUpdateTrafficPolicyComment = "UpdateTrafficPolicyComment" // UpdateTrafficPolicyCommentRequest generates a "aws/request.Request" representing the // client's request for the UpdateTrafficPolicyComment operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateTrafficPolicyComment for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateTrafficPolicyComment method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateTrafficPolicyCommentRequest method. // req, resp := client.UpdateTrafficPolicyCommentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) UpdateTrafficPolicyCommentRequest(input *UpdateTrafficPolicyCommentInput) (req *request.Request, output *UpdateTrafficPolicyCommentOutput) { op := &request.Operation{ Name: opUpdateTrafficPolicyComment, HTTPMethod: "POST", HTTPPath: "/2013-04-01/trafficpolicy/{Id}/{Version}", } if input == nil { input = &UpdateTrafficPolicyCommentInput{} } req = c.newRequest(op, input, output) output = &UpdateTrafficPolicyCommentOutput{} req.Data = output return } // UpdateTrafficPolicyComment API operation for Amazon Route 53. // // Updates the comment for a specified traffic policy version. // // Send a POST request to the /2013-04-01/trafficpolicy/ resource. // // The request body must include a document with an UpdateTrafficPolicyCommentRequest // element. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation UpdateTrafficPolicyComment for usage and error information. // // Returned Error Codes: // * InvalidInput // The input is not valid. // // * NoSuchTrafficPolicy // No traffic policy exists with the specified ID. // // * ConcurrentModification // Another user submitted a request to update the object at the same time that // you did. Retry the request. // func (c *Route53) UpdateTrafficPolicyComment(input *UpdateTrafficPolicyCommentInput) (*UpdateTrafficPolicyCommentOutput, error) { req, out := c.UpdateTrafficPolicyCommentRequest(input) err := req.Send() return out, err } const opUpdateTrafficPolicyInstance = "UpdateTrafficPolicyInstance" // UpdateTrafficPolicyInstanceRequest generates a "aws/request.Request" representing the // client's request for the UpdateTrafficPolicyInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateTrafficPolicyInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateTrafficPolicyInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateTrafficPolicyInstanceRequest method. // req, resp := client.UpdateTrafficPolicyInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53) UpdateTrafficPolicyInstanceRequest(input *UpdateTrafficPolicyInstanceInput) (req *request.Request, output *UpdateTrafficPolicyInstanceOutput) { op := &request.Operation{ Name: opUpdateTrafficPolicyInstance, HTTPMethod: "POST", HTTPPath: "/2013-04-01/trafficpolicyinstance/{Id}", } if input == nil { input = &UpdateTrafficPolicyInstanceInput{} } req = c.newRequest(op, input, output) output = &UpdateTrafficPolicyInstanceOutput{} req.Data = output return } // UpdateTrafficPolicyInstance API operation for Amazon Route 53. // // Updates the resource record sets in a specified hosted zone that were created // based on the settings in a specified traffic policy version. // // Send a POST request to the /2013-04-01/trafficpolicyinstance/traffic policy // ID resource. The request body must include a document with an UpdateTrafficPolicyInstanceRequest // element. // // When you update a traffic policy instance, Amazon Route 53 continues to respond // to DNS queries for the root resource record set name (such as example.com) // while it replaces one group of resource record sets with another. Amazon // Route 53 performs the following operations: // // Amazon Route 53 creates a new group of resource record sets based on the // specified traffic policy. This is true regardless of how substantial the // differences are between the existing resource record sets and the new resource // record sets. // // When all of the new resource record sets have been created, Amazon Route // 53 starts to respond to DNS queries for the root resource record set name // (such as example.com) by using the new resource record sets. // // Amazon Route 53 deletes the old group of resource record sets that are associated // with the root resource record set name. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53's // API operation UpdateTrafficPolicyInstance for usage and error information. // // Returned Error Codes: // * InvalidInput // The input is not valid. // // * NoSuchTrafficPolicy // No traffic policy exists with the specified ID. // // * NoSuchTrafficPolicyInstance // No traffic policy instance exists with the specified ID. // // * PriorRequestNotComplete // If Amazon Route 53 can't process a request before the next request arrives, // it will reject subsequent requests for the same hosted zone and return an // HTTP 400 error (Bad request). If Amazon Route 53 returns this error repeatedly // for the same request, we recommend that you wait, in intervals of increasing // duration, before you try the request again. // // * ConflictingTypes // You tried to update a traffic policy instance by using a traffic policy version // that has a different DNS type than the current type for the instance. You // specified the type in the JSON document in the CreateTrafficPolicy or CreateTrafficPolicyVersionrequest. // func (c *Route53) UpdateTrafficPolicyInstance(input *UpdateTrafficPolicyInstanceInput) (*UpdateTrafficPolicyInstanceOutput, error) { req, out := c.UpdateTrafficPolicyInstanceRequest(input) err := req.Send() return out, err } // A complex type that identifies the CloudWatch alarm that you want Amazon // Route 53 health checkers to use to determine whether this health check is // healthy. type AlarmIdentifier struct { _ struct{} `type:"structure"` // The name of the CloudWatch alarm that you want Amazon Route 53 health checkers // to use to determine whether this health check is healthy. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // A complex type that identifies the CloudWatch alarm that you want Amazon // Route 53 health checkers to use to determine whether this health check is // healthy. // // For the current list of CloudWatch regions, see Amazon CloudWatch (http://docs.aws.amazon.com/general/latest/gr/rande.html#cw_region) // in AWS Regions and Endpoints in the Amazon Web Services General Reference. // // Region is a required field Region *string `min:"1" type:"string" required:"true" enum:"CloudWatchRegion"` } // String returns the string representation func (s AlarmIdentifier) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AlarmIdentifier) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AlarmIdentifier) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AlarmIdentifier"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Region == nil { invalidParams.Add(request.NewErrParamRequired("Region")) } if s.Region != nil && len(*s.Region) < 1 { invalidParams.Add(request.NewErrParamMinLen("Region", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Alias resource record sets only: Information about the CloudFront distribution, // Elastic Beanstalk environment, ELB load balancer, Amazon S3 bucket, or Amazon // Route 53 resource record set to which you are redirecting queries. The Elastic // Beanstalk environment must have a regionalized subdomain. // // When creating resource record sets for a private hosted zone, note the following: // // * Resource record sets cannot be created for CloudFront distributions // in a private hosted zone. // // * Creating geolocation alias resource record sets or latency alias resource // record sets in a private hosted zone is unsupported. // // * For information about creating failover resource record sets in a private // hosted zone, see Configuring Failover in a Private Hosted Zone (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-private-hosted-zones.html). type AliasTarget struct { _ struct{} `type:"structure"` // Alias resource record sets only: The value that you specify depends on where // you want to route queries: // // * A CloudFront distribution: Specify the domain name that CloudFront assigned // when you created your distribution. // // Your CloudFront distribution must include an alternate domain name that matches // the name of the resource record set. For example, if the name of the resource // record set is acme.example.com, your CloudFront distribution must include // acme.example.com as one of the alternate domain names. For more information, // see Using Alternate Domain Names (CNAMEs) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/CNAMEs.html) // in the Amazon CloudFront Developer Guide. // // * Elastic Beanstalk environment: Specify the CNAME attribute for the environment. // (The environment must have a regionalized domain name.) You can use the // following methods to get the value of the CNAME attribute: // // AWS Managment Console: For information about how to get the value by using // the console, see Using Custom Domains with Elastic Beanstalk (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customdomains.html) // in the AWS Elastic Beanstalk Developer Guide. // // Elastic Load Balancing API: Use the DescribeEnvironments action to get the // value of the CNAME attribute. For more information, see DescribeEnvironments // (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/API_DescribeEnvironments.html) // in the AWS Elastic Beanstalk API Reference. // // AWS CLI: Use the describe-environments command to get the value of the CNAME // attribute. For more information, see describe-environments (http://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk/describe-environments.html) // in the AWS Command Line Interface Reference. // // * An ELB load balancer: Specify the DNS name associated with the load // balancer. Get the DNS name by using the AWS Management Console, the ELB // API, or the AWS CLI. Use the same method to get values for HostedZoneId // and DNSName. If you get one value from the console and the other value // from the API or the CLI, creating the resource record set will fail. // // AWS Management Console: Go to the Amazon EC2 page, click Load Balancers in // the navigation pane, choose the load balancer, choose the Description // tab, and get the value of the DNS Name field that begins with dualstack. // Use the same process to get the Hosted Zone ID. See HostedZone$Id. // // Elastic Load Balancing API: Use DescribeLoadBalancers (http://docs.aws.amazon.com/ElasticLoadBalancing/latest/APIReference/API_DescribeLoadBalancers.html) // to get the value of CanonicalHostedZoneName. Use the same process to get // the CanonicalHostedZoneNameId. See HostedZone$Id. // // AWS CLI: Use describe-load-balancers (http://docs.aws.amazon.com/ElasticLoadBalancing/latest/APIReference/API_DescribeLoadBalancers.html) // to get the value of CanonicalHostedZoneName. Use the same process to get // the CanonicalHostedZoneNameId. See HostedZoneId. // // * An Amazon S3 bucket that is configured as a static website: Specify // the domain name of the Amazon S3 website endpoint in which you created // the bucket; for example, s3-website-us-east-1.amazonaws.com. For more // information about valid values, see the table Amazon Simple Storage Service // (S3) Website Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) // in the Amazon Web Services General Reference. For more information about // using Amazon S3 buckets for websites, see Hosting a Static Website on // Amazon S3 (http://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html) // in the Amazon Simple Storage Service Developer Guide. // // * Another Amazon Route 53 resource record set: Specify the value of the // Name element for a resource record set in the current hosted zone. // // DNSName is a required field DNSName *string `type:"string" required:"true"` // Applies only to alias, weighted alias, latency alias, and failover alias // record sets: If you set the value of EvaluateTargetHealth to true for the // resource record set or sets in an alias, weighted alias, latency alias, or // failover alias resource record set, and if you specify a value for HealthCheck$Id // for every resource record set that is referenced by these alias resource // record sets, the alias resource record sets inherit the health of the referenced // resource record sets. // // In this configuration, when Amazon Route 53 receives a DNS query for an alias // resource record set: // // * Amazon Route 53 looks at the resource record sets that are referenced // by the alias resource record sets to determine which health checks they're // using. // // * Amazon Route 53 checks the current status of each health check. (Amazon // Route 53 periodically checks the health of the endpoint that is specified // in a health check; it doesn't perform the health check when the DNS query // arrives.) // // * Based on the status of the health checks, Amazon Route 53 determines // which resource record sets are healthy. Unhealthy resource record sets // are immediately removed from consideration. In addition, if all of the // resource record sets that are referenced by an alias resource record set // are unhealthy, that alias resource record set also is immediately removed // from consideration. // // * Based on the configuration of the alias resource record sets (weighted // alias or latency alias, for example) and the configuration of the resource // record sets that they reference, Amazon Route 53 chooses a resource record // set from the healthy resource record sets, and responds to the query. // // Note the following: // // * You cannot set EvaluateTargetHealth to true when the alias target is // a CloudFront distribution. // // * If the AWS resource that you specify in AliasTarget is a resource record // set or a group of resource record sets (for example, a group of weighted // resource record sets), but it is not another alias resource record set, // we recommend that you associate a health check with all of the resource // record sets in the alias target.For more information, see What Happens // When You Omit Health Checks? (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-complex-configs.html#dns-failover-complex-configs-hc-omitting) // in the Amazon Route 53 Developer Guide. // // * If you specify an Elastic Beanstalk environment in HostedZoneId and // DNSName, and if the environment contains an ELB load balancer, Elastic // Load Balancing routes queries only to the healthy Amazon EC2 instances // that are registered with the load balancer. (An environment automatically // contains an ELB load balancer if it includes more than one Amazon EC2 // instance.) If you set EvaluateTargetHealth to true and either no Amazon // EC2 instances are healthy or the load balancer itself is unhealthy, Amazon // Route 53 routes queries to other available resources that are healthy, // if any. // // If the environment contains a single Amazon EC2 instance, there are no special // requirements. // // * If you specify an ELB load balancer in AliasTarget, Elastic Load Balancing // routes queries only to the healthy Amazon EC2 instances that are registered // with the load balancer. If no Amazon EC2 instances are healthy or if the // load balancer itself is unhealthy, and if EvaluateTargetHealth is true // for the corresponding alias resource record set, Amazon Route 53 routes // queries to other resources. When you create a load balancer, you configure // settings for Elastic Load Balancing health checks; they're not Amazon // Route 53 health checks, but they perform a similar function. Do not create // Amazon Route 53 health checks for the Amazon EC2 instances that you register // with an ELB load balancer. // // For more information, see How Health Checks Work in More Complex Amazon Route // 53 Configurations (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-complex-configs.html) // in the Amazon Route 53 Developers Guide. // // * We recommend that you set EvaluateTargetHealth to true only when you // have enough idle capacity to handle the failure of one or more endpoints. // // For more information and examples, see Amazon Route 53 Health Checks and // DNS Failover (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover.html) // in the Amazon Route 53 Developer Guide. // // EvaluateTargetHealth is a required field EvaluateTargetHealth *bool `type:"boolean" required:"true"` // Alias resource records sets only: The value used depends on where the queries // are routed: // // A CloudFront distributionSpecify Z2FDTNDATAQYW2. // // Alias resource record sets for CloudFront cannot be created in a private // zone. // // Elastic Beanstalk environmentSpecify the hosted zone ID for the region in // which you created the environment. The environment must have a regionalized // subdomain. For a list of regions and the corresponding hosted zone IDs, see // AWS Elastic Beanstalk (http://docs.aws.amazon.com/general/latest/gr/rande.html#elasticbeanstalk_region) // in the Regions and Endpoints chapter of the AWS General Reference. // // ELB load balancerSpecify the value of the hosted zone ID for the load balancer. // Use the following methods to get the hosted zone ID: // // AWS Management Console: Go to the Amazon EC2; page, click Load Balancers // in the navigation pane, select the load balancer, and get the value of the // Hosted Zone ID field on the Description tab. Use the same process to get // the DNS Name. See HostedZone$Name. // // Elastic Load Balancing API: Use DescribeLoadBalancers to get the value of // CanonicalHostedZoneNameID. Use the same process to get the CanonicalHostedZoneName. // See HostedZone$Name. // // AWS CLI: Use describe-load-balancers (http://docs.aws.amazon.com/cli/latest/reference/elb/describe-load-balancers.html) // to get the value of CanonicalHostedZoneNameID. Use the same process to get // the CanonicalHostedZoneName. See HostedZone$Name. // // An Amazon S3 bucket configured as a static websiteSpecify the hosted zone // ID for the Amazon S3 website endpoint in which you created the bucket. For // more information about valid values, see the table Amazon S3 (S3) Website // Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) // in the Amazon Web Services General Reference. // // Another Amazon Route 53 resource record set in your hosted zoneSpecify the // hosted zone ID of your hosted zone. (An alias resource record set cannot // reference a resource record set in a different hosted zone.) // // HostedZoneId is a required field HostedZoneId *string `type:"string" required:"true"` } // String returns the string representation func (s AliasTarget) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AliasTarget) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AliasTarget) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AliasTarget"} if s.DNSName == nil { invalidParams.Add(request.NewErrParamRequired("DNSName")) } if s.EvaluateTargetHealth == nil { invalidParams.Add(request.NewErrParamRequired("EvaluateTargetHealth")) } if s.HostedZoneId == nil { invalidParams.Add(request.NewErrParamRequired("HostedZoneId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains information about the VPC and the hosted zone // that you want to associate. type AssociateVPCWithHostedZoneInput struct { _ struct{} `locationName:"AssociateVPCWithHostedZoneRequest" type:"structure" xmlURI:"https://route53.amazonaws.com/doc/2013-04-01/"` // Optional: A comment about the association request. Comment *string `type:"string"` // The ID of the hosted zone you want to associate your VPC with. // // Note that you cannot associate a VPC with a hosted zone that doesn't have // an existing VPC association. // // HostedZoneId is a required field HostedZoneId *string `location:"uri" locationName:"Id" type:"string" required:"true"` // A complex type containing information about the Amazon VPC that you're associating // with the specified hosted zone. // // VPC is a required field VPC *VPC `type:"structure" required:"true"` } // String returns the string representation func (s AssociateVPCWithHostedZoneInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociateVPCWithHostedZoneInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssociateVPCWithHostedZoneInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssociateVPCWithHostedZoneInput"} if s.HostedZoneId == nil { invalidParams.Add(request.NewErrParamRequired("HostedZoneId")) } if s.VPC == nil { invalidParams.Add(request.NewErrParamRequired("VPC")) } if s.VPC != nil { if err := s.VPC.Validate(); err != nil { invalidParams.AddNested("VPC", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the response information for the hosted zone. type AssociateVPCWithHostedZoneOutput struct { _ struct{} `type:"structure"` // A complex type that describes the changes made to your hosted zone. // // ChangeInfo is a required field ChangeInfo *ChangeInfo `type:"structure" required:"true"` } // String returns the string representation func (s AssociateVPCWithHostedZoneOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociateVPCWithHostedZoneOutput) GoString() string { return s.String() } // The information for each resource record set that you want to change. type Change struct { _ struct{} `type:"structure"` // The action to perform: // // * CREATE: Creates a resource record set that has the specified values. // // * DELETE: Deletes a existing resource record set that has the specified // values for Name, Type, SetIdentifier (for latency, weighted, geolocation, // and failover resource record sets), and TTL (except alias resource record // sets, for which the TTL is determined by the AWS resource that you're // routing DNS queries to). // // To delete the resource record set that is associated with a traffic policy // instance, use DeleteTrafficPolicyInstance. Amazon Route 53will delete // the resource record set automatically. If you delete the resource record // set by using ChangeResourceRecordSets, Amazon Route 53 doesn't automatically // delete the traffic policy instance, and you'll continue to be charged // for it even though it's no longer in use. // // * UPSERT: If a resource record set does not already exist, Amazon Route // 53 creates it. If a resource record set does exist, Amazon Route 53 updates // it with the values in the request. Amazon Route 53 can update an existing // resource record set only when all of the following values match: Name, // Type, and SetIdentifier (for weighted, latency, geolocation, and failover // resource record sets). // // Action is a required field Action *string `type:"string" required:"true" enum:"ChangeAction"` // Information about the resource record set to create or delete. // // ResourceRecordSet is a required field ResourceRecordSet *ResourceRecordSet `type:"structure" required:"true"` } // String returns the string representation func (s Change) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Change) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Change) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Change"} if s.Action == nil { invalidParams.Add(request.NewErrParamRequired("Action")) } if s.ResourceRecordSet == nil { invalidParams.Add(request.NewErrParamRequired("ResourceRecordSet")) } if s.ResourceRecordSet != nil { if err := s.ResourceRecordSet.Validate(); err != nil { invalidParams.AddNested("ResourceRecordSet", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The information for a change request. type ChangeBatch struct { _ struct{} `type:"structure"` // Information about the changes to make to the record sets. // // Changes is a required field Changes []*Change `locationNameList:"Change" min:"1" type:"list" required:"true"` // Optional: Any comments you want to include about a change batch request. Comment *string `type:"string"` } // String returns the string representation func (s ChangeBatch) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChangeBatch) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ChangeBatch) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ChangeBatch"} if s.Changes == nil { invalidParams.Add(request.NewErrParamRequired("Changes")) } if s.Changes != nil && len(s.Changes) < 1 { invalidParams.Add(request.NewErrParamMinLen("Changes", 1)) } if s.Changes != nil { for i, v := range s.Changes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Changes", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that lists the changes and information for a ChangeBatch. type ChangeBatchRecord struct { _ struct{} `deprecated:"true" type:"structure"` // A list of changes made in the ChangeBatch. Changes []*Change `locationNameList:"Change" min:"1" type:"list"` // A complex type that describes change information about changes made to your // hosted zone. // // This element contains an ID that you use when performing a GetChange action // to get detailed information about the change. Comment *string `type:"string"` // The ID of the request. Use this ID to track when the change has completed // across all Amazon Route 53 DNS servers. // // Id is a required field Id *string `type:"string" required:"true"` // The current state of the request. PENDING indicates that this request has // not yet been applied to all Amazon Route 53 DNS servers. // // Valid Values: PENDING | INSYNC // // Status is a required field Status *string `type:"string" required:"true" enum:"ChangeStatus"` // The date and time the change was submitted, in the format YYYY-MM-DDThh:mm:ssZ, // as specified in the ISO 8601 standard (for example, 2009-11-19T19:37:58Z). // The Z after the time indicates that the time is listed in Coordinated Universal // Time (UTC). SubmittedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The AWS account ID attached to the changes. Submitter *string `type:"string"` } // String returns the string representation func (s ChangeBatchRecord) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChangeBatchRecord) GoString() string { return s.String() } // A complex type that describes change information about changes made to your // hosted zone. type ChangeInfo struct { _ struct{} `type:"structure"` // A complex type that describes change information about changes made to your // hosted zone. // // This element contains an ID that you use when performing a GetChange action // to get detailed information about the change. Comment *string `type:"string"` // The ID of the request. // // Id is a required field Id *string `type:"string" required:"true"` // The current state of the request. PENDING indicates that this request has // not yet been applied to all Amazon Route 53 DNS servers. // // Status is a required field Status *string `type:"string" required:"true" enum:"ChangeStatus"` // The date and time the change request was submitted, in Coordinated Universal // Time (UTC) format: YYYY-MM-DDThh:mm:ssZ. For more information, see the Wikipedia // entry ISO 8601 (https://en.wikipedia.org/wiki/ISO_8601). // // SubmittedAt is a required field SubmittedAt *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` } // String returns the string representation func (s ChangeInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChangeInfo) GoString() string { return s.String() } // A complex type that contains change information for the resource record set. type ChangeResourceRecordSetsInput struct { _ struct{} `locationName:"ChangeResourceRecordSetsRequest" type:"structure" xmlURI:"https://route53.amazonaws.com/doc/2013-04-01/"` // A complex type that contains an optional comment and the Changes element. // // ChangeBatch is a required field ChangeBatch *ChangeBatch `type:"structure" required:"true"` // The ID of the hosted zone that contains the resource record sets that you // want to change. // // HostedZoneId is a required field HostedZoneId *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s ChangeResourceRecordSetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChangeResourceRecordSetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ChangeResourceRecordSetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ChangeResourceRecordSetsInput"} if s.ChangeBatch == nil { invalidParams.Add(request.NewErrParamRequired("ChangeBatch")) } if s.HostedZoneId == nil { invalidParams.Add(request.NewErrParamRequired("HostedZoneId")) } if s.ChangeBatch != nil { if err := s.ChangeBatch.Validate(); err != nil { invalidParams.AddNested("ChangeBatch", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type containing the response for the request. type ChangeResourceRecordSetsOutput struct { _ struct{} `type:"structure"` // A complex type that contains information about changes made to your hosted // zone. // // This element contains an ID that you use when performing a GetChange action // to get detailed information about the change. // // ChangeInfo is a required field ChangeInfo *ChangeInfo `type:"structure" required:"true"` } // String returns the string representation func (s ChangeResourceRecordSetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChangeResourceRecordSetsOutput) GoString() string { return s.String() } // A complex type that contains information about the tags that you want to // add, edit, or delete. type ChangeTagsForResourceInput struct { _ struct{} `locationName:"ChangeTagsForResourceRequest" type:"structure" xmlURI:"https://route53.amazonaws.com/doc/2013-04-01/"` // A complex type that contains a list of the tags that you want to add to the // specified health check or hosted zone and/or the tags for which you want // to edit the Value element. // // You can add a maximum of 10 tags to a health check or a hosted zone. AddTags []*Tag `locationNameList:"Tag" min:"1" type:"list"` // A complex type that contains a list of the tags that you want to delete from // the specified health check or hosted zone. You can specify up to 10 keys. RemoveTagKeys []*string `locationNameList:"Key" min:"1" type:"list"` // The ID of the resource for which you want to add, change, or delete tags. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"ResourceId" type:"string" required:"true"` // The type of the resource. // // * The resource type for health checks is healthcheck. // // * The resource type for hosted zones is hostedzone. // // ResourceType is a required field ResourceType *string `location:"uri" locationName:"ResourceType" type:"string" required:"true" enum:"TagResourceType"` } // String returns the string representation func (s ChangeTagsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChangeTagsForResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ChangeTagsForResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ChangeTagsForResourceInput"} if s.AddTags != nil && len(s.AddTags) < 1 { invalidParams.Add(request.NewErrParamMinLen("AddTags", 1)) } if s.RemoveTagKeys != nil && len(s.RemoveTagKeys) < 1 { invalidParams.Add(request.NewErrParamMinLen("RemoveTagKeys", 1)) } if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceType == nil { invalidParams.Add(request.NewErrParamRequired("ResourceType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Empty response for the request. type ChangeTagsForResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ChangeTagsForResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChangeTagsForResourceOutput) GoString() string { return s.String() } // A complex type that contains information about the CloudWatch alarm that // Amazon Route 53 is monitoring for this health check. type CloudWatchAlarmConfiguration struct { _ struct{} `type:"structure"` // For the metric that the CloudWatch alarm is associated with, the arithmetic // operation that is used for the comparison. // // ComparisonOperator is a required field ComparisonOperator *string `type:"string" required:"true" enum:"ComparisonOperator"` // For the metric that the CloudWatch alarm is associated with, a complex type // that contains information about the dimensions for the metric.For information, // see Amazon CloudWatch Namespaces, Dimensions, and Metrics Reference ( http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/CW_Support_For_AWS.html) // in the Amazon CloudWatch Developer Guide. Dimensions []*Dimension `locationNameList:"Dimension" type:"list"` // For the metric that the CloudWatch alarm is associated with, the number of // periods that the metric is compared to the threshold. // // EvaluationPeriods is a required field EvaluationPeriods *int64 `min:"1" type:"integer" required:"true"` // The name of the CloudWatch metric that the alarm is associated with. // // MetricName is a required field MetricName *string `min:"1" type:"string" required:"true"` // The namespace of the metric that the alarm is associated with. For more information, // see Amazon CloudWatch Namespaces, Dimensions, and Metrics Reference (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/CW_Support_For_AWS.html) // in the Amazon CloudWatch Developer Guide. // // Namespace is a required field Namespace *string `min:"1" type:"string" required:"true"` // For the metric that the CloudWatch alarm is associated with, the duration // of one evaluation period in seconds. // // Period is a required field Period *int64 `min:"60" type:"integer" required:"true"` // For the metric that the CloudWatch alarm is associated with, the statistic // that is applied to the metric. // // Statistic is a required field Statistic *string `type:"string" required:"true" enum:"Statistic"` // For the metric that the CloudWatch alarm is associated with, the value the // metric is compared with. // // Threshold is a required field Threshold *float64 `type:"double" required:"true"` } // String returns the string representation func (s CloudWatchAlarmConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CloudWatchAlarmConfiguration) GoString() string { return s.String() } // A complex type that contains the health check request information. type CreateHealthCheckInput struct { _ struct{} `locationName:"CreateHealthCheckRequest" type:"structure" xmlURI:"https://route53.amazonaws.com/doc/2013-04-01/"` // A unique string that identifies the request and that allows failed CreateHealthCheck // requests to be retried without the risk of executing the operation twice. // You must use a unique CallerReference string every time you create a health // check. // // CallerReference is a required field CallerReference *string `min:"1" type:"string" required:"true"` // A complex type that contains the response to a CreateHealthCheck request. // // HealthCheckConfig is a required field HealthCheckConfig *HealthCheckConfig `type:"structure" required:"true"` } // String returns the string representation func (s CreateHealthCheckInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateHealthCheckInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateHealthCheckInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateHealthCheckInput"} if s.CallerReference == nil { invalidParams.Add(request.NewErrParamRequired("CallerReference")) } if s.CallerReference != nil && len(*s.CallerReference) < 1 { invalidParams.Add(request.NewErrParamMinLen("CallerReference", 1)) } if s.HealthCheckConfig == nil { invalidParams.Add(request.NewErrParamRequired("HealthCheckConfig")) } if s.HealthCheckConfig != nil { if err := s.HealthCheckConfig.Validate(); err != nil { invalidParams.AddNested("HealthCheckConfig", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type containing the response information for the new health check. type CreateHealthCheckOutput struct { _ struct{} `type:"structure"` // A complex type that contains identifying information about the health check. // // HealthCheck is a required field HealthCheck *HealthCheck `type:"structure" required:"true"` // The unique URL representing the new health check. // // Location is a required field Location *string `location:"header" locationName:"Location" type:"string" required:"true"` } // String returns the string representation func (s CreateHealthCheckOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateHealthCheckOutput) GoString() string { return s.String() } // A complex type containing the hosted zone request information. type CreateHostedZoneInput struct { _ struct{} `locationName:"CreateHostedZoneRequest" type:"structure" xmlURI:"https://route53.amazonaws.com/doc/2013-04-01/"` // A unique string that identifies the request and that allows failed CreateHostedZone // requests to be retried without the risk of executing the operation twice. // You must use a unique CallerReference string every time you create a hosted // zone. CallerReference can be any unique string, for example, a date/time // stamp. // // CallerReference is a required field CallerReference *string `min:"1" type:"string" required:"true"` // If you want to associate a reusable delegation set with this hosted zone, // the ID that Amazon Route 53 assigned to the reusable delegation set when // you created it. For more information about reusable delegation sets, see // CreateReusableDelegationSet. // // TypeString // // DefaultNone // // ParentCreatedHostedZoneRequest DelegationSetId *string `type:"string"` // (Optional) A complex type that contains an optional comment about your hosted // zone. If you don't want to specify a comment, omit both the HostedZoneConfig // and Comment elements. HostedZoneConfig *HostedZoneConfig `type:"structure"` // The name of the domain. For resource record types that include a domain name, // specify a fully qualified domain name, for example, www.example.com. The // trailing dot is optional; Amazon Route 53 assumes that the domain name is // fully qualified. This means that Amazon Route 53 treats www.example.com (without // a trailing dot) and www.example.com. (with a trailing dot) as identical. // // If you're creating a public hosted zone, this is the name you have registered // with your DNS registrar. If your domain name is registered with a registrar // other than Amazon Route 53, change the name servers for your domain to the // set of NameServers that CreateHostedZone returns in the DelegationSet element. // // Name is a required field Name *string `type:"string" required:"true"` // The VPC that you want your hosted zone to be associated with. By providing // this parameter, your newly created hosted cannot be resolved anywhere other // than the given VPC. VPC *VPC `type:"structure"` } // String returns the string representation func (s CreateHostedZoneInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateHostedZoneInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateHostedZoneInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateHostedZoneInput"} if s.CallerReference == nil { invalidParams.Add(request.NewErrParamRequired("CallerReference")) } if s.CallerReference != nil && len(*s.CallerReference) < 1 { invalidParams.Add(request.NewErrParamMinLen("CallerReference", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.VPC != nil { if err := s.VPC.Validate(); err != nil { invalidParams.AddNested("VPC", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type containing the response information for the hosted zone. type CreateHostedZoneOutput struct { _ struct{} `type:"structure"` // A complex type that describes the changes made to your hosted zone. // // ChangeInfo is a required field ChangeInfo *ChangeInfo `type:"structure" required:"true"` // A complex type that describes the name servers for this hosted zone. // // DelegationSet is a required field DelegationSet *DelegationSet `type:"structure" required:"true"` // A complex type that contains general information about the hosted zone. // // HostedZone is a required field HostedZone *HostedZone `type:"structure" required:"true"` // The unique URL representing the new hosted zone. // // Location is a required field Location *string `location:"header" locationName:"Location" type:"string" required:"true"` // A complex type that contains information about an Amazon VPC that you associated // with this hosted zone. VPC *VPC `type:"structure"` } // String returns the string representation func (s CreateHostedZoneOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateHostedZoneOutput) GoString() string { return s.String() } type CreateReusableDelegationSetInput struct { _ struct{} `locationName:"CreateReusableDelegationSetRequest" type:"structure" xmlURI:"https://route53.amazonaws.com/doc/2013-04-01/"` // A unique string that identifies the request, and that allows you to retry // failed CreateReusableDelegationSet requests without the risk of executing // the operation twice. You must use a unique CallerReference string every time // you submit a CreateReusableDelegationSet request. CallerReference can be // any unique string, for example a date/time stamp. // // CallerReference is a required field CallerReference *string `min:"1" type:"string" required:"true"` // If you want to mark the delegation set for an existing hosted zone as reusable, // the ID for that hosted zone. HostedZoneId *string `type:"string"` } // String returns the string representation func (s CreateReusableDelegationSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReusableDelegationSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateReusableDelegationSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateReusableDelegationSetInput"} if s.CallerReference == nil { invalidParams.Add(request.NewErrParamRequired("CallerReference")) } if s.CallerReference != nil && len(*s.CallerReference) < 1 { invalidParams.Add(request.NewErrParamMinLen("CallerReference", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateReusableDelegationSetOutput struct { _ struct{} `type:"structure"` // A complex type that contains name server information. // // DelegationSet is a required field DelegationSet *DelegationSet `type:"structure" required:"true"` // The unique URL representing the new reusable delegation set. // // Location is a required field Location *string `location:"header" locationName:"Location" type:"string" required:"true"` } // String returns the string representation func (s CreateReusableDelegationSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReusableDelegationSetOutput) GoString() string { return s.String() } // A complex type that contains information about the traffic policy that you // want to create. type CreateTrafficPolicyInput struct { _ struct{} `locationName:"CreateTrafficPolicyRequest" type:"structure" xmlURI:"https://route53.amazonaws.com/doc/2013-04-01/"` // (Optional) Any comments that you want to include about the traffic policy. Comment *string `type:"string"` // The definition of this traffic policy in JSON format. For more information, // see Traffic Policy Document Format (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/api-policies-traffic-policy-document-format.html) // in the Amazon Route 53 API Reference. // // Document is a required field Document *string `type:"string" required:"true"` // The name of the traffic policy. // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s CreateTrafficPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTrafficPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateTrafficPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateTrafficPolicyInput"} if s.Document == nil { invalidParams.Add(request.NewErrParamRequired("Document")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains information about the resource record sets that // you want to create based on a specified traffic policy. type CreateTrafficPolicyInstanceInput struct { _ struct{} `locationName:"CreateTrafficPolicyInstanceRequest" type:"structure" xmlURI:"https://route53.amazonaws.com/doc/2013-04-01/"` // The ID of the hosted zone in which you want Amazon Route 53 to create resource // record sets by using the configuration in a traffic policy. // // HostedZoneId is a required field HostedZoneId *string `type:"string" required:"true"` // The domain name (such as example.com) or subdomain name (such as www.example.com) // for which Amazon Route 53 responds to DNS queries by using the resource record // sets that Amazon Route 53 creates for this traffic policy instance. // // Name is a required field Name *string `type:"string" required:"true"` // (Optional) The TTL that you want Amazon Route 53 to assign to all of the // resource record sets that it creates in the specified hosted zone. // // TTL is a required field TTL *int64 `type:"long" required:"true"` // The ID of the traffic policy that you want to use to create resource record // sets in the specified hosted zone. // // TrafficPolicyId is a required field TrafficPolicyId *string `type:"string" required:"true"` // The version of the traffic policy that you want to use to create resource // record sets in the specified hosted zone. // // TrafficPolicyVersion is a required field TrafficPolicyVersion *int64 `min:"1" type:"integer" required:"true"` } // String returns the string representation func (s CreateTrafficPolicyInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTrafficPolicyInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateTrafficPolicyInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateTrafficPolicyInstanceInput"} if s.HostedZoneId == nil { invalidParams.Add(request.NewErrParamRequired("HostedZoneId")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.TTL == nil { invalidParams.Add(request.NewErrParamRequired("TTL")) } if s.TrafficPolicyId == nil { invalidParams.Add(request.NewErrParamRequired("TrafficPolicyId")) } if s.TrafficPolicyVersion == nil { invalidParams.Add(request.NewErrParamRequired("TrafficPolicyVersion")) } if s.TrafficPolicyVersion != nil && *s.TrafficPolicyVersion < 1 { invalidParams.Add(request.NewErrParamMinValue("TrafficPolicyVersion", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the response information for the CreateTrafficPolicyInstance // request. type CreateTrafficPolicyInstanceOutput struct { _ struct{} `type:"structure"` // A unique URL that represents a new traffic policy instance. // // Location is a required field Location *string `location:"header" locationName:"Location" type:"string" required:"true"` // A complex type that contains settings for the new traffic policy instance. // // TrafficPolicyInstance is a required field TrafficPolicyInstance *TrafficPolicyInstance `type:"structure" required:"true"` } // String returns the string representation func (s CreateTrafficPolicyInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTrafficPolicyInstanceOutput) GoString() string { return s.String() } // A complex type that contains the response information for the CreateTrafficPolicy // request. type CreateTrafficPolicyOutput struct { _ struct{} `type:"structure"` // A unique URL that represents a new traffic policy. // // Location is a required field Location *string `location:"header" locationName:"Location" type:"string" required:"true"` // A complex type that contains settings for the new traffic policy. // // TrafficPolicy is a required field TrafficPolicy *TrafficPolicy `type:"structure" required:"true"` } // String returns the string representation func (s CreateTrafficPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTrafficPolicyOutput) GoString() string { return s.String() } // A complex type that contains information about the traffic policy for which // you want to create a new version. type CreateTrafficPolicyVersionInput struct { _ struct{} `locationName:"CreateTrafficPolicyVersionRequest" type:"structure" xmlURI:"https://route53.amazonaws.com/doc/2013-04-01/"` // The comment that you specified in the CreateTrafficPolicyVersion request, // if any. Comment *string `type:"string"` // The definition of this version of the traffic policy, in JSON format. You // specified the JSON in the CreateTrafficPolicyVersion request. For more information // about the JSON format, see CreateTrafficPolicy. // // Document is a required field Document *string `type:"string" required:"true"` // The ID of the traffic policy for which you want to create a new version. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s CreateTrafficPolicyVersionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTrafficPolicyVersionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateTrafficPolicyVersionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateTrafficPolicyVersionInput"} if s.Document == nil { invalidParams.Add(request.NewErrParamRequired("Document")) } if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the response information for the CreateTrafficPolicyVersion // request. type CreateTrafficPolicyVersionOutput struct { _ struct{} `type:"structure"` // A unique URL that represents a new traffic policy version. // // Location is a required field Location *string `location:"header" locationName:"Location" type:"string" required:"true"` // A complex type that contains settings for the new version of the traffic // policy. // // TrafficPolicy is a required field TrafficPolicy *TrafficPolicy `type:"structure" required:"true"` } // String returns the string representation func (s CreateTrafficPolicyVersionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTrafficPolicyVersionOutput) GoString() string { return s.String() } // A complex type that describes the name servers for this hosted zone. type DelegationSet struct { _ struct{} `type:"structure"` // A unique string that identifies the request, and that allows you to retry // failed CreateReusableDelegationSet requests without the risk of executing // the operation twice. You must use a unique CallerReference string every time // you submit a CreateReusableDelegationSet request. CallerReference can be // any unique string, for example, a date/time stamp. CallerReference *string `min:"1" type:"string"` // The ID that Amazon Route 53 assigns to a reusable delegation set. Id *string `type:"string"` // A complex type that contains a list of the authoritative name servers for // the hosted zone. // // NameServers is a required field NameServers []*string `locationNameList:"NameServer" min:"1" type:"list" required:"true"` } // String returns the string representation func (s DelegationSet) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DelegationSet) GoString() string { return s.String() } // This action deletes a health check. Send a DELETE request to the /2013-04-01/DeleteHealthCheckRequest // resource. type DeleteHealthCheckInput struct { _ struct{} `type:"structure"` // The ID of the health check that you want to delete. // // HealthCheckId is a required field HealthCheckId *string `location:"uri" locationName:"HealthCheckId" type:"string" required:"true"` } // String returns the string representation func (s DeleteHealthCheckInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteHealthCheckInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteHealthCheckInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteHealthCheckInput"} if s.HealthCheckId == nil { invalidParams.Add(request.NewErrParamRequired("HealthCheckId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element. type DeleteHealthCheckOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteHealthCheckOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteHealthCheckOutput) GoString() string { return s.String() } // A complex type that contains information about the hosted zone that you want // to delete. type DeleteHostedZoneInput struct { _ struct{} `type:"structure"` // The ID of the hosted zone you want to delete. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s DeleteHostedZoneInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteHostedZoneInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteHostedZoneInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteHostedZoneInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type containing the response information for the request. type DeleteHostedZoneOutput struct { _ struct{} `type:"structure"` // A complex type that contains the ID, the status, and the date and time of // your delete request. // // ChangeInfo is a required field ChangeInfo *ChangeInfo `type:"structure" required:"true"` } // String returns the string representation func (s DeleteHostedZoneOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteHostedZoneOutput) GoString() string { return s.String() } // A complex type containing the information for the delete request. type DeleteReusableDelegationSetInput struct { _ struct{} `type:"structure"` // The ID of the reusable delegation set you want to delete. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s DeleteReusableDelegationSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteReusableDelegationSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteReusableDelegationSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteReusableDelegationSetInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element. type DeleteReusableDelegationSetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteReusableDelegationSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteReusableDelegationSetOutput) GoString() string { return s.String() } // A request to delete a specified traffic policy version. type DeleteTrafficPolicyInput struct { _ struct{} `type:"structure"` // The ID of the traffic policy that you want to delete. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` // The version number of the traffic policy that you want to delete. // // Version is a required field Version *int64 `location:"uri" locationName:"Version" min:"1" type:"integer" required:"true"` } // String returns the string representation func (s DeleteTrafficPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTrafficPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTrafficPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTrafficPolicyInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Version == nil { invalidParams.Add(request.NewErrParamRequired("Version")) } if s.Version != nil && *s.Version < 1 { invalidParams.Add(request.NewErrParamMinValue("Version", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains information about the traffic policy instance // that you want to delete. type DeleteTrafficPolicyInstanceInput struct { _ struct{} `type:"structure"` // The ID of the traffic policy instance that you want to delete. // // When you delete a traffic policy instance, Amazon Route 53 also deletes all // of the resource record sets that were created when you created the traffic // policy instance. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s DeleteTrafficPolicyInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTrafficPolicyInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTrafficPolicyInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTrafficPolicyInstanceInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element. type DeleteTrafficPolicyInstanceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteTrafficPolicyInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTrafficPolicyInstanceOutput) GoString() string { return s.String() } // An empty element. type DeleteTrafficPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteTrafficPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTrafficPolicyOutput) GoString() string { return s.String() } // For the metric that the CloudWatch alarm is associated with, a complex type // that contains information about one dimension. type Dimension struct { _ struct{} `type:"structure"` // For the metric that the CloudWatch alarm is associated with, the name of // one dimension. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // For the metric that the CloudWatch alarm is associated with, the value of // one dimension. // // Value is a required field Value *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s Dimension) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Dimension) GoString() string { return s.String() } // A complex type that contains information about the VPC and the hosted zone // that you want to disassociate. type DisassociateVPCFromHostedZoneInput struct { _ struct{} `locationName:"DisassociateVPCFromHostedZoneRequest" type:"structure" xmlURI:"https://route53.amazonaws.com/doc/2013-04-01/"` // Optional: A comment about the disassociation request. Comment *string `type:"string"` // The ID of the VPC that you want to disassociate from an Amazon Route 53 hosted // zone. // // HostedZoneId is a required field HostedZoneId *string `location:"uri" locationName:"Id" type:"string" required:"true"` // A complex type containing information about the Amazon VPC that you're disassociating // from the specified hosted zone. // // VPC is a required field VPC *VPC `type:"structure" required:"true"` } // String returns the string representation func (s DisassociateVPCFromHostedZoneInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisassociateVPCFromHostedZoneInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisassociateVPCFromHostedZoneInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisassociateVPCFromHostedZoneInput"} if s.HostedZoneId == nil { invalidParams.Add(request.NewErrParamRequired("HostedZoneId")) } if s.VPC == nil { invalidParams.Add(request.NewErrParamRequired("VPC")) } if s.VPC != nil { if err := s.VPC.Validate(); err != nil { invalidParams.AddNested("VPC", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the response information for the disassociate // request. type DisassociateVPCFromHostedZoneOutput struct { _ struct{} `type:"structure"` // A complex type that describes the changes made to your hosted zone. // // ChangeInfo is a required field ChangeInfo *ChangeInfo `type:"structure" required:"true"` } // String returns the string representation func (s DisassociateVPCFromHostedZoneOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisassociateVPCFromHostedZoneOutput) GoString() string { return s.String() } // A complex type that contains information about a geo location. type GeoLocation struct { _ struct{} `type:"structure"` // The two-letter code for the continent. // // Valid values: AF | AN | AS | EU | OC | NA | SA // // Constraint: Specifying ContinentCode with either CountryCode or SubdivisionCode // returns an InvalidInput error. ContinentCode *string `min:"2" type:"string"` // The two-letter code for the country. CountryCode *string `min:"1" type:"string"` // The code for the subdivision, for example, a state in the United States or // a province in Canada. SubdivisionCode *string `min:"1" type:"string"` } // String returns the string representation func (s GeoLocation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GeoLocation) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GeoLocation) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GeoLocation"} if s.ContinentCode != nil && len(*s.ContinentCode) < 2 { invalidParams.Add(request.NewErrParamMinLen("ContinentCode", 2)) } if s.CountryCode != nil && len(*s.CountryCode) < 1 { invalidParams.Add(request.NewErrParamMinLen("CountryCode", 1)) } if s.SubdivisionCode != nil && len(*s.SubdivisionCode) < 1 { invalidParams.Add(request.NewErrParamMinLen("SubdivisionCode", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the codes and full continent, country, and subdivision // names for the specified geolocation code. type GeoLocationDetails struct { _ struct{} `type:"structure"` // The two-letter code for the continent. ContinentCode *string `min:"2" type:"string"` // The full name of the continent. ContinentName *string `min:"1" type:"string"` // The two-letter code for the country. CountryCode *string `min:"1" type:"string"` // The name of the country. CountryName *string `min:"1" type:"string"` // The code for the subdivision, for example, a state in the United States or // a province in Canada. SubdivisionCode *string `min:"1" type:"string"` // The full name of the subdivision, for example, a state in the United States // or a province in Canada. SubdivisionName *string `min:"1" type:"string"` } // String returns the string representation func (s GeoLocationDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GeoLocationDetails) GoString() string { return s.String() } // The input for a GetChangeDetails request. type GetChangeDetailsInput struct { _ struct{} `deprecated:"true" type:"structure"` // The ID of the change batch. This is the value that you specified in the change // ID parameter when you submitted the request. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s GetChangeDetailsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetChangeDetailsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetChangeDetailsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetChangeDetailsInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the ChangeBatchRecord element. type GetChangeDetailsOutput struct { _ struct{} `deprecated:"true" type:"structure"` // A complex type that contains information about the specified change batch, // including the change batch ID, the status of the change, and the contained // changes. // // ChangeBatchRecord is a required field ChangeBatchRecord *ChangeBatchRecord `deprecated:"true" type:"structure" required:"true"` } // String returns the string representation func (s GetChangeDetailsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetChangeDetailsOutput) GoString() string { return s.String() } // The input for a GetChange request. type GetChangeInput struct { _ struct{} `type:"structure"` // The ID of the change batch request. The value that you specify here is the // value that ChangeResourceRecordSets returned in the Id element when you submitted // the request. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s GetChangeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetChangeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetChangeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetChangeInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the ChangeInfo element. type GetChangeOutput struct { _ struct{} `type:"structure"` // A complex type that contains information about the specified change batch. // // ChangeInfo is a required field ChangeInfo *ChangeInfo `type:"structure" required:"true"` } // String returns the string representation func (s GetChangeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetChangeOutput) GoString() string { return s.String() } // Empty request. type GetCheckerIpRangesInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GetCheckerIpRangesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCheckerIpRangesInput) GoString() string { return s.String() } // A complex type that contains the CheckerIpRanges element. type GetCheckerIpRangesOutput struct { _ struct{} `type:"structure"` // A complex type that contains sorted list of IP ranges in CIDR format for // Amazon Route 53 health checkers. // // CheckerIpRanges is a required field CheckerIpRanges []*string `type:"list" required:"true"` } // String returns the string representation func (s GetCheckerIpRangesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCheckerIpRangesOutput) GoString() string { return s.String() } // A complex type that contains information about the request to get a geo location. type GetGeoLocationInput struct { _ struct{} `type:"structure"` // Amazon Route 53 supports the following continent codes: // // * AF: Africa // // * AN: Antarctica // // * AS: Asia // // * EU: Europe // // * OC: Oceania // // * NA: North America // // * SA: South America ContinentCode *string `location:"querystring" locationName:"continentcode" min:"2" type:"string"` // Amazon Route 53 uses the two-letter country codes that are specified in ISO // standard 3166-1 alpha-2 (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). CountryCode *string `location:"querystring" locationName:"countrycode" min:"1" type:"string"` // Amazon Route 53 uses the one- to three-letter subdivision codes that are // specified in ISO standard 3166-1 alpha-2 (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). // Amazon Route 53 doesn't support subdivision codes for all countries. If you // specify SubdivisionCode, you must also specify CountryCode. SubdivisionCode *string `location:"querystring" locationName:"subdivisioncode" min:"1" type:"string"` } // String returns the string representation func (s GetGeoLocationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetGeoLocationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetGeoLocationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetGeoLocationInput"} if s.ContinentCode != nil && len(*s.ContinentCode) < 2 { invalidParams.Add(request.NewErrParamMinLen("ContinentCode", 2)) } if s.CountryCode != nil && len(*s.CountryCode) < 1 { invalidParams.Add(request.NewErrParamMinLen("CountryCode", 1)) } if s.SubdivisionCode != nil && len(*s.SubdivisionCode) < 1 { invalidParams.Add(request.NewErrParamMinLen("SubdivisionCode", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the response information for the specified geolocation // code. type GetGeoLocationOutput struct { _ struct{} `type:"structure"` // A complex type that contains the codes and full continent, country, and subdivision // names for the specified geolocation code. // // GeoLocationDetails is a required field GeoLocationDetails *GeoLocationDetails `type:"structure" required:"true"` } // String returns the string representation func (s GetGeoLocationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetGeoLocationOutput) GoString() string { return s.String() } // To retrieve a count of all your health checks, send a GET request to the // /2013-04-01/healthcheckcount resource. type GetHealthCheckCountInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GetHealthCheckCountInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetHealthCheckCountInput) GoString() string { return s.String() } // A complex type that contains the response to a healthcheckcount request. type GetHealthCheckCountOutput struct { _ struct{} `type:"structure"` // The number of health checks associated with the current AWS account. // // HealthCheckCount is a required field HealthCheckCount *int64 `type:"long" required:"true"` } // String returns the string representation func (s GetHealthCheckCountOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetHealthCheckCountOutput) GoString() string { return s.String() } // This action gets information about a specified health check. // // Send a GET request to the /Amazon Route 53 API version/gethealthcheckrequest // resource. // // For information about getting information about a health check using the // Amazon Route 53 console, see Amazon Route 53 Health Checks and DNS Failover // (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover.html) // in the Amazon Route 53 Developer Guide. type GetHealthCheckInput struct { _ struct{} `type:"structure"` // The identifier that Amazon Route 53 assigned to the health check when you // created it. When you add or update a resource record set, you use this value // to specify which health check to use. The value can be up to 64 characters // long. // // HealthCheckId is a required field HealthCheckId *string `location:"uri" locationName:"HealthCheckId" type:"string" required:"true"` } // String returns the string representation func (s GetHealthCheckInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetHealthCheckInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetHealthCheckInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetHealthCheckInput"} if s.HealthCheckId == nil { invalidParams.Add(request.NewErrParamRequired("HealthCheckId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // This action gets the reason that a specified health check failed most recently. // // To get the reason for the last failure of a health check, send a GET request // to the /2013-04-01/healthcheck/health check ID/lastfailurereason resource. // // For information about viewing the last failure reason for a health check // using the Amazon Route 53 console, see Viewing Health Check Status and the // Reason for Health Check Failures (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/health-checks-monitor-view-status.html) // in the Amazon Route 53 Developer Guide. type GetHealthCheckLastFailureReasonInput struct { _ struct{} `type:"structure"` // The ID for the health check for which you want the last failure reason. When // you created the health check, CreateHealthCheck returned the ID in the response, // in the HealthCheckId element. // // HealthCheckId is a required field HealthCheckId *string `location:"uri" locationName:"HealthCheckId" type:"string" required:"true"` } // String returns the string representation func (s GetHealthCheckLastFailureReasonInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetHealthCheckLastFailureReasonInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetHealthCheckLastFailureReasonInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetHealthCheckLastFailureReasonInput"} if s.HealthCheckId == nil { invalidParams.Add(request.NewErrParamRequired("HealthCheckId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the response to a GetHealthCheckLastFailureReason // request. type GetHealthCheckLastFailureReasonOutput struct { _ struct{} `type:"structure"` // A list that contains one Observation element for each Amazon Route 53 health // checker that is reporting a last failure reason. // // HealthCheckObservations is a required field HealthCheckObservations []*HealthCheckObservation `locationNameList:"HealthCheckObservation" type:"list" required:"true"` } // String returns the string representation func (s GetHealthCheckLastFailureReasonOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetHealthCheckLastFailureReasonOutput) GoString() string { return s.String() } // A complex type that contains the response to a GetHealthCheck request. type GetHealthCheckOutput struct { _ struct{} `type:"structure"` // A complex type that contains information about one health check that is associated // with the current AWS account. // // HealthCheck is a required field HealthCheck *HealthCheck `type:"structure" required:"true"` } // String returns the string representation func (s GetHealthCheckOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetHealthCheckOutput) GoString() string { return s.String() } // A complex type that contains information about the request to get health // check status for a health check. type GetHealthCheckStatusInput struct { _ struct{} `type:"structure"` // If you want Amazon Route 53 to return this resource record set in response // to a DNS query only when a health check is passing, include the HealthCheckId // element and specify the ID of the applicable health check. // // Amazon Route 53 determines whether a resource record set is healthy by periodically // sending a request to the endpoint that is specified in the health check. // If that endpoint returns an HTTP status code of 2xx or 3xx, the endpoint // is healthy. If the endpoint returns an HTTP status code of 400 or greater, // or if the endpoint doesn't respond for a certain amount of time, Amazon Route // 53 considers the endpoint unhealthy and also considers the resource record // set unhealthy. // // The HealthCheckId element is only useful when Amazon Route 53 is choosing // between two or more resource record sets to respond to a DNS query, and you // want Amazon Route 53 to base the choice in part on the status of a health // check. Configuring health checks only makes sense in the following configurations: // // * You're checking the health of the resource record sets in a weighted, // latency, geolocation, or failover resource record set, and you specify // health check IDs for all of the resource record sets. If the health check // for one resource record set specifies an endpoint that is not healthy, // Amazon Route 53 stops responding to queries using the value for that resource // record set. // // * You set EvaluateTargetHealth to true for the resource record sets in // an alias, weighted alias, latency alias, geolocation alias, or failover // alias resource record set, and you specify health check IDs for all of // the resource record sets that are referenced by the alias resource record // sets. For more information about this configuration, see EvaluateTargetHealth. // // Amazon Route 53 doesn't check the health of the endpoint specified in the // resource record set, for example, the endpoint specified by the IP address // in the Value element. When you add a HealthCheckId element to a resource // record set, Amazon Route 53 checks the health of the endpoint that you // specified in the health check. // // For geolocation resource record sets, if an endpoint is unhealthy, Amazon // Route 53 looks for a resource record set for the larger, associated geographic // region. For example, suppose you have resource record sets for a state in // the United States, for the United States, for North America, and for all // locations. If the endpoint for the state resource record set is unhealthy, // Amazon Route 53 checks the resource record sets for the United States, for // North America, and for all locations (a resource record set for which the // value of CountryCode is *), in that order, until it finds a resource record // set for which the endpoint is healthy. // // If your health checks specify the endpoint only by domain name, we recommend // that you create a separate health check for each endpoint. For example, create // a health check for each HTTP server that is serving content for www.example.com. // For the value of FullyQualifiedDomainName, specify the domain name of the // server (such as us-east-1-www.example.com), not the name of the resource // record sets (example.com). // // In this configuration, if you create a health check for which the value of // FullyQualifiedDomainName matches the name of the resource record sets and // then associate the health check with those resource record sets, health check // results will be unpredictable. // // HealthCheckId is a required field HealthCheckId *string `location:"uri" locationName:"HealthCheckId" type:"string" required:"true"` } // String returns the string representation func (s GetHealthCheckStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetHealthCheckStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetHealthCheckStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetHealthCheckStatusInput"} if s.HealthCheckId == nil { invalidParams.Add(request.NewErrParamRequired("HealthCheckId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the response to a GetHealthCheck request. type GetHealthCheckStatusOutput struct { _ struct{} `type:"structure"` // A list that contains one HealthCheckObservation element for each Amazon Route // 53 health checker that is reporting a status about the health check endpoint. // // HealthCheckObservations is a required field HealthCheckObservations []*HealthCheckObservation `locationNameList:"HealthCheckObservation" type:"list" required:"true"` } // String returns the string representation func (s GetHealthCheckStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetHealthCheckStatusOutput) GoString() string { return s.String() } // To retrieve a count of all your hosted zones, send a GET request to the /2013-04-01/hostedzonecount // resource. type GetHostedZoneCountInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GetHostedZoneCountInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetHostedZoneCountInput) GoString() string { return s.String() } // A complex type that contains the response to a hostedzonecount request. type GetHostedZoneCountOutput struct { _ struct{} `type:"structure"` // The total number of public and private hosted zones associated with the current // AWS account. // // HostedZoneCount is a required field HostedZoneCount *int64 `type:"long" required:"true"` } // String returns the string representation func (s GetHostedZoneCountOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetHostedZoneCountOutput) GoString() string { return s.String() } // The input for a GetHostedZone request. type GetHostedZoneInput struct { _ struct{} `type:"structure"` // The ID of the hosted zone for which you want to get a list of the name servers // in the delegation set. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s GetHostedZoneInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetHostedZoneInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetHostedZoneInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetHostedZoneInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type containing the response information for the hosted zone. type GetHostedZoneOutput struct { _ struct{} `type:"structure"` // A complex type that describes the name servers for this hosted zone. DelegationSet *DelegationSet `type:"structure"` // A complex type that contains general information about the hosted zone. // // HostedZone is a required field HostedZone *HostedZone `type:"structure" required:"true"` // A complex type that contains information about VPCs associated with the specified // hosted zone. VPCs []*VPC `locationNameList:"VPC" min:"1" type:"list"` } // String returns the string representation func (s GetHostedZoneOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetHostedZoneOutput) GoString() string { return s.String() } // The input for a GetReusableDelegationSet request. type GetReusableDelegationSetInput struct { _ struct{} `type:"structure"` // The ID of the reusable delegation set for which you want to get a list of // the name server. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s GetReusableDelegationSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetReusableDelegationSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetReusableDelegationSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetReusableDelegationSetInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the response to the GetReusableDelegationSet // request. type GetReusableDelegationSetOutput struct { _ struct{} `type:"structure"` // A complex type that contains information about the reusable delegation set. // // DelegationSet is a required field DelegationSet *DelegationSet `type:"structure" required:"true"` } // String returns the string representation func (s GetReusableDelegationSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetReusableDelegationSetOutput) GoString() string { return s.String() } // Gets information about a specific traffic policy version. To get the information, // send a GET request to the /2013-04-01/trafficpolicy resource, and specify // the ID and the version of the traffic policy. type GetTrafficPolicyInput struct { _ struct{} `type:"structure"` // The ID of the traffic policy that you want to get information about. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` // The version number of the traffic policy that you want to get information // about. // // Version is a required field Version *int64 `location:"uri" locationName:"Version" min:"1" type:"integer" required:"true"` } // String returns the string representation func (s GetTrafficPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTrafficPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetTrafficPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetTrafficPolicyInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Version == nil { invalidParams.Add(request.NewErrParamRequired("Version")) } if s.Version != nil && *s.Version < 1 { invalidParams.Add(request.NewErrParamMinValue("Version", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // To retrieve a count of all your traffic policy instances, send a GET request // to the /2013-04-01/trafficpolicyinstancecount resource. type GetTrafficPolicyInstanceCountInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GetTrafficPolicyInstanceCountInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTrafficPolicyInstanceCountInput) GoString() string { return s.String() } // A complex type that contains information about the resource record sets that // Amazon Route 53 created based on a specified traffic policy. type GetTrafficPolicyInstanceCountOutput struct { _ struct{} `type:"structure"` // The number of traffic policy instances that are associated with the current // AWS account. // // TrafficPolicyInstanceCount is a required field TrafficPolicyInstanceCount *int64 `type:"integer" required:"true"` } // String returns the string representation func (s GetTrafficPolicyInstanceCountOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTrafficPolicyInstanceCountOutput) GoString() string { return s.String() } // Gets information about a specified traffic policy instance. // // To get information about a traffic policy instance, send a GET request to // the /Amazon Route 53 API version/trafficpolicyinstance/Id resource. type GetTrafficPolicyInstanceInput struct { _ struct{} `type:"structure"` // The ID of the traffic policy instance that you want to get information about. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s GetTrafficPolicyInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTrafficPolicyInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetTrafficPolicyInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetTrafficPolicyInstanceInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains information about the resource record sets that // Amazon Route 53 created based on a specified traffic policy. type GetTrafficPolicyInstanceOutput struct { _ struct{} `type:"structure"` // A complex type that contains settings for the traffic policy instance. // // TrafficPolicyInstance is a required field TrafficPolicyInstance *TrafficPolicyInstance `type:"structure" required:"true"` } // String returns the string representation func (s GetTrafficPolicyInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTrafficPolicyInstanceOutput) GoString() string { return s.String() } // A complex type that contains the response information for the request. type GetTrafficPolicyOutput struct { _ struct{} `type:"structure"` // A complex type that contains settings for the specified traffic policy. // // TrafficPolicy is a required field TrafficPolicy *TrafficPolicy `type:"structure" required:"true"` } // String returns the string representation func (s GetTrafficPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTrafficPolicyOutput) GoString() string { return s.String() } // A complex type that contains information about one health check that is associated // with the current AWS account. type HealthCheck struct { _ struct{} `type:"structure"` // A unique string that you specified when you created the health check. // // CallerReference is a required field CallerReference *string `min:"1" type:"string" required:"true"` // A complex type that contains information about the CloudWatch alarm that // Amazon Route 53 is monitoring for this health check. CloudWatchAlarmConfiguration *CloudWatchAlarmConfiguration `type:"structure"` // A complex type that contains detailed information about one health check. // // HealthCheckConfig is a required field HealthCheckConfig *HealthCheckConfig `type:"structure" required:"true"` // The version of the health check. You can optionally pass this value in a // call to UpdateHealthCheck to prevent overwriting another change to the health // check. // // HealthCheckVersion is a required field HealthCheckVersion *int64 `min:"1" type:"long" required:"true"` // The identifier that Amazon Route 53assigned to the health check when you // created it. When you add or update a resource record set, you use this value // to specify which health check to use. The value can be up to 64 characters // long. // // Id is a required field Id *string `type:"string" required:"true"` } // String returns the string representation func (s HealthCheck) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HealthCheck) GoString() string { return s.String() } // A complex type that contains information about the health check. type HealthCheckConfig struct { _ struct{} `type:"structure"` // A complex type that identifies the CloudWatch alarm that you want Amazon // Route 53 health checkers to use to determine whether this health check is // healthy. AlarmIdentifier *AlarmIdentifier `type:"structure"` // (CALCULATED Health Checks Only) A complex type that contains one ChildHealthCheck // element for each health check that you want to associate with a CALCULATED // health check. ChildHealthChecks []*string `locationNameList:"ChildHealthCheck" type:"list"` // Specify whether you want Amazon Route 53 to send the value of FullyQualifiedDomainName // to the endpoint in the client_hello message during TLS negotiation. This // allows the endpoint to respond to HTTPS health check requests with the applicable // SSL/TLS certificate. // // Some endpoints require that HTTPS requests include the host name in the client_hello // message. If you don't enable SNI, the status of the health check will be // SSL alert handshake_failure. A health check can also have that status for // other reasons. If SNI is enabled and you're still getting the error, check // the SSL/TLS configuration on your endpoint and confirm that your certificate // is valid. // // The SSL/TLS certificate on your endpoint includes a domain name in the Common // Name field and possibly several more in the Subject Alternative Names field. // One of the domain names in the certificate should match the value that you // specify for FullyQualifiedDomainName. If the endpoint responds to the client_hello // message with a certificate that does not include the domain name that you // specified in FullyQualifiedDomainName, a health checker will retry the handshake. // In the second attempt, the health checker will omit FullyQualifiedDomainName // from the client_hello message. EnableSNI *bool `type:"boolean"` // The number of consecutive health checks that an endpoint must pass or fail // for Amazon Route 53 to change the current status of the endpoint from unhealthy // to healthy or vice versa. For more information, see How Amazon Route 53 Determines // Whether an Endpoint Is Healthy (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-determining-health-of-endpoints.html) // in the Amazon Route 53 Developer Guide. FailureThreshold *int64 `min:"1" type:"integer"` // Amazon Route 53 behavior depends on whether you specify a value for IPAddress. // // If you specifyIPAddress: // // The value that you want Amazon Route 53 to pass in the Host header in all // health checks except TCP health checks. This is typically the fully qualified // DNS name of the website that you are attempting to health check. When Amazon // Route 53 checks the health of an endpoint, here is how it constructs the // Host header: // // * If you specify a value of 80 for Port and HTTP or HTTP_STR_MATCH for // Type, Amazon Route 53 passes the value of FullyQualifiedDomainName to // the endpoint in the Host header. // // * If you specify a value of 443 for Port and HTTPS or HTTPS_STR_MATCH // for Type, Amazon Route 53 passes the value of FullyQualifiedDomainName // to the endpoint in the Host header. // // * If you specify another value for Port and any value except TCP for Type, // Amazon Route 53 passes FullyQualifiedDomainName:Port to the endpoint in // the Host header. // // If you don't specify a value for FullyQualifiedDomainName, Amazon Route 53 // substitutes the value of IPAddress in the Host header in each of the preceding // cases. // // If you don't specifyIPAddress: // // If you don't specify a value for IPAddress, Amazon Route 53 sends a DNS request // to the domain that you specify in FullyQualifiedDomainName at the interval // you specify in RequestInterval. Using an IP address that DNS returns, Amazon // Route 53 then checks the health of the endpoint. // // If you want to check the health of weighted, latency, or failover resource // record sets and you choose to specify the endpoint only by FullyQualifiedDomainName, // we recommend that you create a separate health check for each endpoint. For // example, create a health check for each HTTP server that is serving content // for www.example.com. For the value of FullyQualifiedDomainName, specify the // domain name of the server (such as us-east-1-www.example.com), not the name // of the resource record sets (www.example.com). // // In this configuration, if you create a health check for which the value of // FullyQualifiedDomainName matches the name of the resource record sets and // you then associate the health check with those resource record sets, health // check results will be unpredictable. // // In addition, if the value that you specify for Type is HTTP, HTTPS, HTTP_STR_MATCH, // or HTTPS_STR_MATCH, Amazon Route 53 passes the value of FullyQualifiedDomainName // in the Host header, as it does when you specify a value for IPAddress. If // the value of Type is TCP, Amazon Route 53 doesn't pass a Host header. FullyQualifiedDomainName *string `type:"string"` // The number of child health checks that are associated with a CALCULATED health // that Amazon Route 53 must consider healthy for the CALCULATED health check // to be considered healthy. To specify the child health checks that you want // to associate with a CALCULATED health check, use the HealthCheckConfig$ChildHealthChecks // and HealthCheckConfig$ChildHealthChecks elements. // // Note the following: // // * If you specify a number greater than the number of child health checks, // Amazon Route 53 always considers this health check to be unhealthy. // // * If you specify 0, Amazon Route 53 always considers this health check // to be healthy. HealthThreshold *int64 `type:"integer"` // The IPv4 IP address of the endpoint on which you want Amazon Route 53 to // perform health checks. If you don't specify a value for IPAddress, Amazon // Route 53 sends a DNS request to resolve the domain name that you specify // in FullyQualifiedDomainName at the interval that you specify in RequestInterval. // Using an IP address that DNS returns, Amazon Route 53 then checks the health // of the endpoint. // // If the endpoint is an Amazon EC2 instance, we recommend that you create an // Elastic IP address, associate it with your Amazon EC2 instance, and specify // the Elastic IP address for IPAddress. This ensures that the IP address of // your instance will never change. // // For more information, see HealthCheckConfig$FullyQualifiedDomainName. // // Contraints: Amazon Route 53 cannot check the health of endpoints for which // the IP address is in local, private, non-routable, or multicast ranges. For // more information about IP addresses for which you cannot create health checks, // see RFC 5735, Special Use IPv4 Addresses (https://tools.ietf.org/html/rfc5735) // and RFC 6598, IANA-Reserved IPv4 Prefix for Shared Address Space (https://tools.ietf.org/html/rfc6598). // // When the value of Type is CALCULATED or CLOUDWATCH_METRIC, omit IPAddress. IPAddress *string `type:"string"` // When CloudWatch has insufficient data about the metric to determine the alarm // state, the status that you want Amazon Route 53 to assign to the health check: // // * Healthy: Amazon Route 53 considers the health check to be healthy. // // * Unhealthy: Amazon Route 53 considers the health check to be unhealthy. // // * LastKnownStatus: Amazon Route 53uses the status of the health check // from the last time CloudWatch had sufficient data to determine the alarm // state. For new health checks that have no last known status, the default // status for the health check is healthy. InsufficientDataHealthStatus *string `type:"string" enum:"InsufficientDataHealthStatus"` // Specify whether you want Amazon Route 53 to invert the status of a health // check, for example, to consider a health check unhealthy when it otherwise // would be considered healthy. Inverted *bool `type:"boolean"` // Specify whether you want Amazon Route 53 to measure the latency between health // checkers in multiple AWS regions and your endpoint, and to display CloudWatch // latency graphs on the Health Checks page in the Amazon Route 53 console. // // You can't change the value of MeasureLatency after you create a health check. MeasureLatency *bool `type:"boolean"` // The port on the endpoint on which you want Amazon Route 53 to perform health // checks. Specify a value for Port only when you specify a value for IPAddress. Port *int64 `min:"1" type:"integer"` // A complex type that contains one Region element for each region from which // you want Amazon Route 53 health checkers to check the specified endpoint. Regions []*string `locationNameList:"Region" min:"1" type:"list"` // The number of seconds between the time that Amazon Route 53 gets a response // from your endpoint and the time that it sends the next health-check request. // Each Amazon Route 53 health checker makes requests at this interval. // // You can't change the value of RequestInterval after you create a health check. RequestInterval *int64 `min:"10" type:"integer"` // The path, if any, that you want Amazon Route 53 to request when performing // health checks. The path can be any value for which your endpoint will return // an HTTP status code of 2xx or 3xx when the endpoint is healthy, for example, // the file /docs/route53-health-check.html. ResourcePath *string `type:"string"` // If the value of Type is HTTP_STR_MATCH or HTTP_STR_MATCH, the string that // you want Amazon Route 53 to search for in the response body from the specified // resource. If the string appears in the response body, Amazon Route 53 considers // the resource healthy. // // Amazon Route 53 considers case when searching for SearchString in the response // body. SearchString *string `type:"string"` // The type of health check that you want to create, which indicates how Amazon // Route 53 determines whether an endpoint is healthy. // // You can't change the value of Type after you create a health check. // // You can create the following types of health checks: // // * HTTP: Amazon Route 53 tries to establish a TCP connection. If successful, // Amazon Route 53 submits an HTTP request and waits for an HTTP status code // of 200 or greater and less than 400. // // * HTTPS: Amazon Route 53 tries to establish a TCP connection. If successful, // Amazon Route 53 submits an HTTPS request and waits for an HTTP status // code of 200 or greater and less than 400. // // If you specify HTTPS for the value of Type, the endpoint must support TLS // v1.0 or later. // // * HTTP_STR_MATCH: Amazon Route 53 tries to establish a TCP connection. // If successful, Amazon Route 53 submits an HTTP request and searches the // first 5,120 bytes of the response body for the string that you specify // in SearchString. // // * HTTPS_STR_MATCH: Amazon Route 53 tries to establish a TCP connection. // If successful, Amazon Route 53 submits an HTTPS request and searches the // first 5,120 bytes of the response body for the string that you specify // in SearchString. // // * TCP: Amazon Route 53 tries to establish a TCP connection. // // * CLOUDWATCH_METRIC: The health check is associated with a CloudWatch // alarm. If the state of the alarm is OK, the health check is considered // healthy. If the state is ALARM, the health check is considered unhealthy. // If CloudWatch doesn't have sufficient data to determine whether the state // is OK or ALARM, the health check status depends on the setting for InsufficientDataHealthStatus: // Healthy, Unhealthy, or LastKnownStatus. // // * CALCULATED: For health checks that monitor the status of other health // checks, Amazon Route 53 adds up the number of health checks that Amazon // Route 53 health checkers consider to be healthy and compares that number // with the value of HealthThreshold. // // For more information about how Amazon Route 53 determines whether an endpoint // is healthy, see the introduction to this topic. // // Type is a required field Type *string `type:"string" required:"true" enum:"HealthCheckType"` } // String returns the string representation func (s HealthCheckConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HealthCheckConfig) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *HealthCheckConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "HealthCheckConfig"} if s.FailureThreshold != nil && *s.FailureThreshold < 1 { invalidParams.Add(request.NewErrParamMinValue("FailureThreshold", 1)) } if s.Port != nil && *s.Port < 1 { invalidParams.Add(request.NewErrParamMinValue("Port", 1)) } if s.Regions != nil && len(s.Regions) < 1 { invalidParams.Add(request.NewErrParamMinLen("Regions", 1)) } if s.RequestInterval != nil && *s.RequestInterval < 10 { invalidParams.Add(request.NewErrParamMinValue("RequestInterval", 10)) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if s.AlarmIdentifier != nil { if err := s.AlarmIdentifier.Validate(); err != nil { invalidParams.AddNested("AlarmIdentifier", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the last failure reason as reported by one Amazon // Route 53 health checker. type HealthCheckObservation struct { _ struct{} `type:"structure"` // The IP address of the Amazon Route 53 health checker that provided the failure // reason in StatusReport. IPAddress *string `type:"string"` // The region of the Amazon Route 53 health checker that provided the status // in StatusReport. Region *string `min:"1" type:"string" enum:"HealthCheckRegion"` // A complex type that contains the last failure reason as reported by one Amazon // Route 53 health checker and the time of the failed health check. StatusReport *StatusReport `type:"structure"` } // String returns the string representation func (s HealthCheckObservation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HealthCheckObservation) GoString() string { return s.String() } // A complex type that contains general information about the hosted zone. type HostedZone struct { _ struct{} `type:"structure"` // The value that you specified for CallerReference when you created the hosted // zone. // // CallerReference is a required field CallerReference *string `min:"1" type:"string" required:"true"` // A complex type that includes the Comment and PrivateZone elements. If you // omitted the HostedZoneConfig and Comment elements from the request, the Config // and Comment elements don't appear in the response. Config *HostedZoneConfig `type:"structure"` // The ID that Amazon Route 53 assigned to the hosted zone when you created // it. // // Id is a required field Id *string `type:"string" required:"true"` // The name of the domain. For public hosted zones, this is the name that you // have registered with your DNS registrar. // // For information about how to specify characters other than a-z, 0-9, and // - (hyphen) and how to specify internationalized domain names, see CreateHostedZone. // // Name is a required field Name *string `type:"string" required:"true"` // The number of resource record sets in the hosted zone. ResourceRecordSetCount *int64 `type:"long"` } // String returns the string representation func (s HostedZone) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HostedZone) GoString() string { return s.String() } // A complex type that contains an optional comment about your hosted zone. // If you don't want to specify a comment, omit both the HostedZoneConfig and // Comment elements. type HostedZoneConfig struct { _ struct{} `type:"structure"` // Any comments that you want to include about the hosted zone. Comment *string `type:"string"` // A value that indicates whether this is a private hosted zone. PrivateZone *bool `type:"boolean"` } // String returns the string representation func (s HostedZoneConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HostedZoneConfig) GoString() string { return s.String() } // The input for a ListChangeBatchesByHostedZone request. type ListChangeBatchesByHostedZoneInput struct { _ struct{} `deprecated:"true" type:"structure"` // The end of the time period you want to see changes for. // // EndDate is a required field EndDate *string `location:"querystring" locationName:"endDate" deprecated:"true" type:"string" required:"true"` // The ID of the hosted zone that you want to see changes for. // // HostedZoneId is a required field HostedZoneId *string `location:"uri" locationName:"Id" type:"string" required:"true"` // The page marker. Marker *string `location:"querystring" locationName:"marker" type:"string"` // The maximum number of items on a page. MaxItems *string `location:"querystring" locationName:"maxItems" type:"string"` // The start of the time period you want to see changes for. // // StartDate is a required field StartDate *string `location:"querystring" locationName:"startDate" deprecated:"true" type:"string" required:"true"` } // String returns the string representation func (s ListChangeBatchesByHostedZoneInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListChangeBatchesByHostedZoneInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListChangeBatchesByHostedZoneInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListChangeBatchesByHostedZoneInput"} if s.EndDate == nil { invalidParams.Add(request.NewErrParamRequired("EndDate")) } if s.HostedZoneId == nil { invalidParams.Add(request.NewErrParamRequired("HostedZoneId")) } if s.StartDate == nil { invalidParams.Add(request.NewErrParamRequired("StartDate")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type containing the response information for the request. type ListChangeBatchesByHostedZoneOutput struct { _ struct{} `deprecated:"true" type:"structure"` // The change batches within the given hosted zone and time period. // // ChangeBatchRecords is a required field ChangeBatchRecords []*ChangeBatchRecord `locationNameList:"ChangeBatchRecord" min:"1" deprecated:"true" type:"list" required:"true"` // A flag that indicates if there are more change batches to list. IsTruncated *bool `type:"boolean"` // For the second and subsequent calls to ListHostedZones, Marker is the value // that you specified for the marker parameter in the request that produced // the current response. // // Marker is a required field Marker *string `type:"string" required:"true"` // The value that you specified for the maxitems parameter in the call to ListHostedZones // that produced the current response. // // MaxItems is a required field MaxItems *string `type:"string" required:"true"` // The next page marker. NextMarker *string `type:"string"` } // String returns the string representation func (s ListChangeBatchesByHostedZoneOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListChangeBatchesByHostedZoneOutput) GoString() string { return s.String() } // The input for a ListChangeBatchesByRRSet request. type ListChangeBatchesByRRSetInput struct { _ struct{} `deprecated:"true" type:"structure"` // The end of the time period you want to see changes for. // // EndDate is a required field EndDate *string `location:"querystring" locationName:"endDate" deprecated:"true" type:"string" required:"true"` // The ID of the hosted zone that you want to see changes for. // // HostedZoneId is a required field HostedZoneId *string `location:"uri" locationName:"Id" type:"string" required:"true"` // The page marker. Marker *string `location:"querystring" locationName:"marker" type:"string"` // The maximum number of items on a page. MaxItems *string `location:"querystring" locationName:"maxItems" type:"string"` // The name of the RRSet that you want to see changes for. // // Name is a required field Name *string `location:"querystring" locationName:"rrSet_name" type:"string" required:"true"` // The identifier of the RRSet that you want to see changes for. SetIdentifier *string `location:"querystring" locationName:"identifier" min:"1" type:"string"` // The start of the time period you want to see changes for. // // StartDate is a required field StartDate *string `location:"querystring" locationName:"startDate" deprecated:"true" type:"string" required:"true"` // The type of the RRSet that you want to see changes for. // // Type is a required field Type *string `location:"querystring" locationName:"type" type:"string" required:"true" enum:"RRType"` } // String returns the string representation func (s ListChangeBatchesByRRSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListChangeBatchesByRRSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListChangeBatchesByRRSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListChangeBatchesByRRSetInput"} if s.EndDate == nil { invalidParams.Add(request.NewErrParamRequired("EndDate")) } if s.HostedZoneId == nil { invalidParams.Add(request.NewErrParamRequired("HostedZoneId")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.SetIdentifier != nil && len(*s.SetIdentifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("SetIdentifier", 1)) } if s.StartDate == nil { invalidParams.Add(request.NewErrParamRequired("StartDate")) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The input for a ListChangeBatchesByRRSet request. type ListChangeBatchesByRRSetOutput struct { _ struct{} `deprecated:"true" type:"structure"` // The change batches within the given hosted zone and time period. // // ChangeBatchRecords is a required field ChangeBatchRecords []*ChangeBatchRecord `locationNameList:"ChangeBatchRecord" min:"1" deprecated:"true" type:"list" required:"true"` // A flag that indicates if there are more change batches to list. IsTruncated *bool `type:"boolean"` // The page marker. // // Marker is a required field Marker *string `type:"string" required:"true"` // The maximum number of items on a page. // // MaxItems is a required field MaxItems *string `type:"string" required:"true"` // The next page marker. NextMarker *string `type:"string"` } // String returns the string representation func (s ListChangeBatchesByRRSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListChangeBatchesByRRSetOutput) GoString() string { return s.String() } // To get a list of geographic locations that Amazon Route 53 supports for geolocation, // send a GET request to the /Amazon Route 53 API version/geolocations resource. // The response to this request includes a GeoLocationDetails element for each // location that Amazon Route 53 supports. // // Countries are listed first, and continents are listed last. If Amazon Route // 53 supports subdivisions for a country (for example, states or provinces), // the subdivisions for that country are listed in alphabetical order immediately // after the corresponding country. type ListGeoLocationsInput struct { _ struct{} `type:"structure"` // (Optional) The maximum number of geolocations to be included in the response // body for this request. If more than MaxItems geolocations remain to be listed, // then the value of the IsTruncated element in the response is true. MaxItems *string `location:"querystring" locationName:"maxitems" type:"string"` // The code for the continent with which you want to start listing locations // that Amazon Route 53 supports for geolocation. If Amazon Route 53 has already // returned a page or more of results, if IsTruncated is true, and if NextContinentCode // from the previous response has a value, enter that value in StartContinentCode // to return the next page of results. // // Include StartContinentCode only if you want to list continents. Don't include // StartContinentCode when you're listing countries or countries with their // subdivisions. StartContinentCode *string `location:"querystring" locationName:"startcontinentcode" min:"2" type:"string"` // The code for the country with which you want to start listing locations that // Amazon Route 53 supports for geolocation. If Amazon Route 53 has already // returned a page or more of results, if IsTruncated is true, and if NextCountryCode // from the previous response has a value, enter that value in StartCountryCode // to return the next page of results. // // Amazon Route 53 uses the two-letter country codes that are specified in ISO // standard 3166-1 alpha-2 (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). StartCountryCode *string `location:"querystring" locationName:"startcountrycode" min:"1" type:"string"` // The code for the subdivision (for example, state or province) with which // you want to start listing locations that Amazon Route 53 supports for geolocation. // If Amazon Route 53 has already returned a page or more of results, if IsTruncated // is true, and if NextSubdivisionCode from the previous response has a value, // enter that value in StartSubdivisionCode to return the next page of results. // // To list subdivisions of a country, you must include both StartCountryCode // and StartSubdivisionCode. StartSubdivisionCode *string `location:"querystring" locationName:"startsubdivisioncode" min:"1" type:"string"` } // String returns the string representation func (s ListGeoLocationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListGeoLocationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListGeoLocationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListGeoLocationsInput"} if s.StartContinentCode != nil && len(*s.StartContinentCode) < 2 { invalidParams.Add(request.NewErrParamMinLen("StartContinentCode", 2)) } if s.StartCountryCode != nil && len(*s.StartCountryCode) < 1 { invalidParams.Add(request.NewErrParamMinLen("StartCountryCode", 1)) } if s.StartSubdivisionCode != nil && len(*s.StartSubdivisionCode) < 1 { invalidParams.Add(request.NewErrParamMinLen("StartSubdivisionCode", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type containing the response information for the request. type ListGeoLocationsOutput struct { _ struct{} `type:"structure"` // A complex type that contains one GeoLocationDetails element for each location // that Amazon Route 53 supports for geolocation. // // GeoLocationDetailsList is a required field GeoLocationDetailsList []*GeoLocationDetails `locationNameList:"GeoLocationDetails" type:"list" required:"true"` // A value that indicates whether more locations remain to be listed after the // last location in this response. If so, the value of IsTruncated is true. // To get more values, submit another request and include the values of NextContinentCode, // NextCountryCode, and NextSubdivisionCode in the StartContinentCode, StartCountryCode, // and StartSubdivisionCode, as applicable. // // IsTruncated is a required field IsTruncated *bool `type:"boolean" required:"true"` // The value that you specified for MaxItems in the request. // // MaxItems is a required field MaxItems *string `type:"string" required:"true"` // If IsTruncated is true, you can make a follow-up request to display more // locations. Enter the value of NextContinentCode in the StartContinentCode // parameter in another GETListGeoLocations request. NextContinentCode *string `min:"2" type:"string"` // If IsTruncated is true, you can make a follow-up request to display more // locations. Enter the value of NextCountryCode in the StartCountryCode parameter // in another GETListGeoLocations request. NextCountryCode *string `min:"1" type:"string"` // If IsTruncated is true, you can make a follow-up request to display more // locations. Enter the value of NextSubdivisionCode in the StartSubdivisionCode // parameter in another GETListGeoLocations request. NextSubdivisionCode *string `min:"1" type:"string"` } // String returns the string representation func (s ListGeoLocationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListGeoLocationsOutput) GoString() string { return s.String() } // To retrieve a list of your health checks, send a GET request to the /2013-04-01/healthcheck // resource. The response to this request includes a HealthChecks element with // zero or more HealthCheck child elements. By default, the list of health checks // is displayed on a single page. You can control the length of the page that // is displayed by using the MaxItems parameter. You can use the Marker parameter // to control the health check that the list begins with. // // Amazon Route 53 returns a maximum of 100 items. If you set MaxItems to a // value greater than 100, Amazon Route 53 returns only the first 100. type ListHealthChecksInput struct { _ struct{} `type:"structure"` // If the response to a ListHealthChecks is more than one page, marker is the // health check ID for the first health check on the next page of results. For // more information, see ListHealthChecksResponse$MaxItems. Marker *string `location:"querystring" locationName:"marker" type:"string"` // The maximum number of HealthCheck elements you want ListHealthChecks to return // on each page of the response body. If the AWS account includes more HealthCheck // elements than the value of maxitems, the response is broken into pages. Each // page contains the number of HealthCheck elements specified by maxitems. // // For example, suppose you specify 10 for maxitems and the current AWS account // has 51 health checks. In the response, ListHealthChecks sets ListHealthChecksResponse$IsTruncated // to true and includes the ListHealthChecksResponse$NextMarker element. To // access the second and subsequent pages, you resend the GETListHealthChecks // request, add the ListHealthChecksResponse$Marker parameter to the request, // and specify the value of the ListHealthChecksResponse$NextMarker element // from the previous response. On the last (sixth) page of the response, which // contains only one HealthCheck element: // // * The value of ListHealthChecksResponse$IsTruncated is false. // // * ListHealthChecksResponse$NextMarker is omitted. MaxItems *string `location:"querystring" locationName:"maxitems" type:"string"` } // String returns the string representation func (s ListHealthChecksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListHealthChecksInput) GoString() string { return s.String() } // A complex type that contains the response to a ListHealthChecks request. type ListHealthChecksOutput struct { _ struct{} `type:"structure"` // A complex type that contains one HealthCheck element for each health check // that is associated with the current AWS account. // // HealthChecks is a required field HealthChecks []*HealthCheck `locationNameList:"HealthCheck" type:"list" required:"true"` // A flag that indicates whether there are more health checks to be listed. // If the response was truncated, you can get the next group of maxitems health // checks by calling ListHealthChecks again and specifying the value of the // NextMarker element in the marker parameter. // // Valid Values: true | false // // IsTruncated is a required field IsTruncated *bool `type:"boolean" required:"true"` // For the second and subsequent calls to ListHealthChecks, Marker is the value // that you specified for the marker parameter in the previous request. // // Marker is a required field Marker *string `type:"string" required:"true"` // The value that you specified for the maxitems parameter in the call to ListHealthChecks // that produced the current response. // // MaxItems is a required field MaxItems *string `type:"string" required:"true"` // If IsTruncated is true, the value of NextMarker identifies the first health // check in the next group of maxitems health checks. Call ListHealthChecks // again and specify the value of NextMarker in the marker parameter. NextMarker *string `type:"string"` } // String returns the string representation func (s ListHealthChecksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListHealthChecksOutput) GoString() string { return s.String() } // To retrieve a list of your public and private hosted zones in ASCII order // by domain name, send a GET request to the /Amazon Route 53 API version/hostedzonesbyname // resource. The response to this request includes a HostedZone child element // for each hosted zone that was created by the current AWS account. ListHostedZonesByName // sorts hosted zones by name with the labels reversed, for example: // // com.example.www. // // Note the trailing dot, which can change the sort order in some circumstances. // // If the domain name includes escape characters or Punycode, ListHostedZonesByName // alphabetizes the domain name using the escaped or Punycoded value, which // is the format that Amazon Route 53 saves in its database. For example, to // create a hosted zone for exämple.com, you specify ex\344mple.com for the // domain name. ListHostedZonesByName alphabetizes it as: com.ex\344mple. The // labels are reversed, and it's alphabetized using the escaped value. For more // information about valid domain name formats, including internationalized // domain names, see DNS Domain Name Format (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DomainNameFormat.html) // in the Amazon Route 53 Developer Guide. // // Amazon Route 53 returns up to 100 items in each response. If you have a lot // of hosted zones, you can use the MaxItems parameter to list them in groups // of up to 100. The response includes values that help you navigate from one // group of MaxItems hosted zones to the next: // // * The DNSName and HostedZoneId elements in the response contain the values, // if any, that you specified for the dnsname and hostedzoneid parameters // in the request that produced the current response. // // * The MaxItems element in the response contains the value, if any, that // you specified for the maxitems parameter in the request that produced // the current response. // // * If the value of IsTruncated in the response is true, there are more // hosted zones associated with the current Amazon Route 53 account. // // If IsTruncated is false, this response includes the last hosted zone that // is associated with the current account. The NextDNSName element and NextHostedZoneId // elements are omitted from the response. // // * The NextDNSName and NextHostedZoneId elements in the response contain // the domain name and the hosted zone ID of the next hosted zone that is // associated with the current AWS account. If you want to list more hosted // zones, make another call to ListHostedZonesByName, and specify the value // of NextDNSName and NextHostedZoneId in the dnsname and hostedzoneid parameters, // respectively. type ListHostedZonesByNameInput struct { _ struct{} `type:"structure"` // (Optional) For your first request to ListHostedZonesByName, include the dnsname // parameter only if you want to specify the name of the first hosted zone in // the response. If you don't include the dnsname parameter, Amazon Route 53 // returns all of the hosted zones that were created by the current AWS account, // in ASCII order. For subsequent requests, include both dnsname and hostedzoneid // parameters. For dnsname, specify the value of NextDNSName from the previous // response. DNSName *string `location:"querystring" locationName:"dnsname" type:"string"` // (Optional) For your first request to ListHostedZonesByName, do not include // the hostedzoneid parameter. // // If you have more hosted zones than the value of maxitems, ListHostedZonesByName // returns only the first maxitems hosted zones. To get the next group of maxitems // hosted zones, submit another request to ListHostedZonesByName and include // both dnsname and hostedzoneid parameters. For the value of hostedzoneid, // specify the value of the NextHostedZoneId element from the previous response. HostedZoneId *string `location:"querystring" locationName:"hostedzoneid" type:"string"` // The maximum number of hosted zones to be included in the response body for // this request. If you have more than maxitems hosted zones, then the value // of the IsTruncated element in the response is true, and the values of NextDNSName // and NextHostedZoneId specify the first hosted zone in the next group of maxitems // hosted zones. MaxItems *string `location:"querystring" locationName:"maxitems" type:"string"` } // String returns the string representation func (s ListHostedZonesByNameInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListHostedZonesByNameInput) GoString() string { return s.String() } // A complex type that contains the response information for the request. type ListHostedZonesByNameOutput struct { _ struct{} `type:"structure"` // For the second and subsequent calls to ListHostedZonesByName, DNSName is // the value that you specified for the dnsname parameter in the request that // produced the current response. DNSName *string `type:"string"` // The ID that Amazon Route 53 assigned to the hosted zone when you created // it. HostedZoneId *string `type:"string"` // A complex type that contains general information about the hosted zone. // // HostedZones is a required field HostedZones []*HostedZone `locationNameList:"HostedZone" type:"list" required:"true"` // A flag that indicates whether there are more hosted zones to be listed. If // the response was truncated, you can get the next group of maxitems hosted // zones by calling ListHostedZonesByName again and specifying the values of // NextDNSName and NextHostedZoneId elements in the dnsname and hostedzoneid // parameters. // // IsTruncated is a required field IsTruncated *bool `type:"boolean" required:"true"` // The value that you specified for the maxitems parameter in the call to ListHostedZonesByName // that produced the current response. // // MaxItems is a required field MaxItems *string `type:"string" required:"true"` // If IsTruncated is true, the value of NextDNSName is the name of the first // hosted zone in the next group of maxitems hosted zones. Call ListHostedZonesByName // again and specify the value of NextDNSName and NextHostedZoneId in the dnsname // and hostedzoneid parameters, respectively. // // This element is present only if IsTruncated is true. NextDNSName *string `type:"string"` // If IsTruncated is true, the value of NextHostedZoneId identifies the first // hosted zone in the next group of maxitems hosted zones. Call ListHostedZonesByName // again and specify the value of NextDNSName and NextHostedZoneId in the dnsname // and hostedzoneid parameters, respectively. // // This element is present only if IsTruncated is true. NextHostedZoneId *string `type:"string"` } // String returns the string representation func (s ListHostedZonesByNameOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListHostedZonesByNameOutput) GoString() string { return s.String() } // To retrieve a list of your public and private hosted zones, send a GET request // to the /2013-04-01/hostedzone resource. The response to this request includes // a HostedZone child element for each hosted zone that was created by the current // AWS account. // // Amazon Route 53 returns a maximum of 100 items in each response. If you have // a lot of hosted zones, you can use the maxitems parameter to list them in // groups of up to 100. The response includes four values that help you navigate // from one group of maxitems hosted zones to the next: // // * MaxItems is the value that you specified for the maxitems parameter // in the request that produced the current response. // // * If the value of IsTruncated in the response is true, there are more // hosted zones associated with the current AWS account. // // If IsTruncated is false, this response includes the last hosted zone that // is associated with the current account. // // * NextMarker is the hosted zone ID of the next hosted zone that is associated // with the current AWS account. If you want to list more hosted zones, make // another call to ListHostedZones, and specify the value of the NextMarker // element in the marker parameter. // // If IsTruncated is false, the NextMarker element is omitted from the response. // // * If you're making the second or subsequent call to ListHostedZones, the // Marker element matches the value that you specified in the marker parameter // in the previous request. type ListHostedZonesInput struct { _ struct{} `type:"structure"` // If you're using reusable delegation sets and you want to list all of the // hosted zones that are associated with a reusable delegation set, specify // the ID of that reusable delegation set. DelegationSetId *string `location:"querystring" locationName:"delegationsetid" type:"string"` // (Optional) If you have more hosted zones than the value of maxitems, ListHostedZones // returns only the first maxitems hosted zones. To get the next group of maxitems // hosted zones, submit another request to ListHostedZones. For the value of // marker, specify the value of the NextMarker element that was returned in // the previous response. // // Hosted zones are listed in the order in which they were created. Marker *string `location:"querystring" locationName:"marker" type:"string"` // (Optional) The maximum number of hosted zones to be included in the response // body for this request. If you have more than maxitems hosted zones, the value // of the IsTruncated element in the response is true, and the value of the // NextMarker element is the hosted zone ID of the first hosted zone in the // next group of maxitems hosted zones. MaxItems *string `location:"querystring" locationName:"maxitems" type:"string"` } // String returns the string representation func (s ListHostedZonesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListHostedZonesInput) GoString() string { return s.String() } type ListHostedZonesOutput struct { _ struct{} `type:"structure"` // A complex type that contains general information about the hosted zone. // // HostedZones is a required field HostedZones []*HostedZone `locationNameList:"HostedZone" type:"list" required:"true"` // A flag indicating whether there are more hosted zones to be listed. If the // response was truncated, you can get the next group of maxitems hosted zones // by calling ListHostedZones again and specifying the value of the NextMarker // element in the marker parameter. // // IsTruncated is a required field IsTruncated *bool `type:"boolean" required:"true"` // For the second and subsequent calls to ListHostedZones, Marker is the value // that you specified for the marker parameter in the request that produced // the current response. // // Marker is a required field Marker *string `type:"string" required:"true"` // The value that you specified for the maxitems parameter in the call to ListHostedZones // that produced the current response. // // MaxItems is a required field MaxItems *string `type:"string" required:"true"` // If IsTruncated is true, the value of NextMarker identifies the first hosted // zone in the next group of maxitems hosted zones. Call ListHostedZones again // and specify the value of NextMarker in the marker parameter. // // This element is present only if IsTruncated is true. NextMarker *string `type:"string"` } // String returns the string representation func (s ListHostedZonesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListHostedZonesOutput) GoString() string { return s.String() } // The input for a ListResourceRecordSets request. type ListResourceRecordSetsInput struct { _ struct{} `type:"structure"` // The ID of the hosted zone that contains the resource record sets that you // want to get. // // HostedZoneId is a required field HostedZoneId *string `location:"uri" locationName:"Id" type:"string" required:"true"` // (Optional) The maximum number of resource records sets to include in the // response body for this request. If the response includes more than maxitems // resource record sets, the value of the IsTruncated element in the response // is true, and the values of the NextRecordName and NextRecordType elements // in the response identify the first resource record set in the next group // of maxitems resource record sets. MaxItems *string `location:"querystring" locationName:"maxitems" type:"string"` // Weighted resource record sets only: If results were truncated for a given // DNS name and type, specify the value of NextRecordIdentifier from the previous // response to get the next resource record set that has the current DNS name // and type. StartRecordIdentifier *string `location:"querystring" locationName:"identifier" min:"1" type:"string"` // The first name in the lexicographic ordering of domain names that you want // the ListResourceRecordSets request to list. StartRecordName *string `location:"querystring" locationName:"name" type:"string"` // The type of resource record set to begin the record listing from. // // Valid values for basic resource record sets: A | AAAA | CNAME | MX | NAPTR // | NS | PTR | SOA | SPF | SRV | TXT // // Values for weighted, latency, geo, and failover resource record sets: A | // AAAA | CNAME | MX | NAPTR | PTR | SPF | SRV | TXT // // Values for alias resource record sets: // // * CloudFront distribution: A // // * Elastic Beanstalk environment that has a regionalized subdomain: A // // * ELB load balancer: A | AAAA // // * Amazon S3 bucket: A // // Constraint: Specifying type without specifying name returns an InvalidInput // error. StartRecordType *string `location:"querystring" locationName:"type" type:"string" enum:"RRType"` } // String returns the string representation func (s ListResourceRecordSetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListResourceRecordSetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListResourceRecordSetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListResourceRecordSetsInput"} if s.HostedZoneId == nil { invalidParams.Add(request.NewErrParamRequired("HostedZoneId")) } if s.StartRecordIdentifier != nil && len(*s.StartRecordIdentifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("StartRecordIdentifier", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains list information for the resource record set. type ListResourceRecordSetsOutput struct { _ struct{} `type:"structure"` // A flag that indicates whether more resource record sets remain to be listed. // If your results were truncated, you can make a follow-up pagination request // by using the NextRecordName element. // // IsTruncated is a required field IsTruncated *bool `type:"boolean" required:"true"` // The maximum number of records you requested. // // MaxItems is a required field MaxItems *string `type:"string" required:"true"` // Weighted, latency, geolocation, and failover resource record sets only: If // results were truncated for a given DNS name and type, the value of SetIdentifier // for the next resource record set that has the current DNS name and type. NextRecordIdentifier *string `min:"1" type:"string"` // If the results were truncated, the name of the next record in the list. // // This element is present only if IsTruncated is true. NextRecordName *string `type:"string"` // If the results were truncated, the type of the next record in the list. // // This element is present only if IsTruncated is true. NextRecordType *string `type:"string" enum:"RRType"` // Information about multiple resource record sets. // // ResourceRecordSets is a required field ResourceRecordSets []*ResourceRecordSet `locationNameList:"ResourceRecordSet" type:"list" required:"true"` } // String returns the string representation func (s ListResourceRecordSetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListResourceRecordSetsOutput) GoString() string { return s.String() } // To retrieve a list of your reusable delegation sets, send a GET request to // the /2013-04-01/delegationset resource. The response to this request includes // a DelegationSets element with zero or more DelegationSet child elements. // By default, the list of reusable delegation sets is displayed on a single // page. You can control the length of the page that is displayed by using the // MaxItems parameter. You can use the Marker parameter to control the delegation // set that the list begins with. // // Amazon Route 53 returns a maximum of 100 items. If you set MaxItems to a // value greater than 100, Amazon Route 53 returns only the first 100. type ListReusableDelegationSetsInput struct { _ struct{} `type:"structure"` // If you're making the second or subsequent call to ListReusableDelegationSets, // the Marker element matches the value that you specified in the marker parameter // in the previous request. Marker *string `location:"querystring" locationName:"marker" type:"string"` // The value that you specified for the maxitems parameter in the request that // produced the current response. MaxItems *string `location:"querystring" locationName:"maxitems" type:"string"` } // String returns the string representation func (s ListReusableDelegationSetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListReusableDelegationSetsInput) GoString() string { return s.String() } // A complex type that contains information about the reusable delegation sets // that are associated with the current AWS account. type ListReusableDelegationSetsOutput struct { _ struct{} `type:"structure"` // A complex type that contains one DelegationSet element for each reusable // delegation set that was created by the current AWS account. // // DelegationSets is a required field DelegationSets []*DelegationSet `locationNameList:"DelegationSet" type:"list" required:"true"` // A flag that indicates whether there are more reusable delegation sets to // be listed. If the response is truncated, you can get the next group of maxitems // reusable delegation sets by calling ListReusableDelegationSets again and // specifying the value of the NextMarker element in the marker parameter. // // IsTruncated is a required field IsTruncated *bool `type:"boolean" required:"true"` // For the second and subsequent calls to ListReusableDelegationSets, Marker // is the value that you specified for the marker parameter in the request that // produced the current response. // // Marker is a required field Marker *string `type:"string" required:"true"` // The value that you specified for the maxitems parameter in the call to ListReusableDelegationSets // that produced the current response. // // MaxItems is a required field MaxItems *string `type:"string" required:"true"` // If IsTruncated is true, the value of NextMarker identifies the first reusable // delegation set in the next group of maxitems reusable delegation sets. Call // ListReusableDelegationSets again and specify the value of NextMarker in the // marker parameter. NextMarker *string `type:"string"` } // String returns the string representation func (s ListReusableDelegationSetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListReusableDelegationSetsOutput) GoString() string { return s.String() } // A complex type containing information about a request for a list of the tags // that are associated with an individual resource. type ListTagsForResourceInput struct { _ struct{} `type:"structure"` // The ID of the resource for which you want to retrieve tags. // // ResourceId is a required field ResourceId *string `location:"uri" locationName:"ResourceId" type:"string" required:"true"` // The type of the resource. // // * The resource type for health checks is healthcheck. // // * The resource type for hosted zones is hostedzone. // // ResourceType is a required field ResourceType *string `location:"uri" locationName:"ResourceType" type:"string" required:"true" enum:"TagResourceType"` } // String returns the string representation func (s ListTagsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsForResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceType == nil { invalidParams.Add(request.NewErrParamRequired("ResourceType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains information about the health checks or hosted // zones for which you want to list tags. type ListTagsForResourceOutput struct { _ struct{} `type:"structure"` // A ResourceTagSet containing tags associated with the specified resource. // // ResourceTagSet is a required field ResourceTagSet *ResourceTagSet `type:"structure" required:"true"` } // String returns the string representation func (s ListTagsForResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceOutput) GoString() string { return s.String() } // A complex type that contains information about the health checks or hosted // zones for which you want to list tags. type ListTagsForResourcesInput struct { _ struct{} `locationName:"ListTagsForResourcesRequest" type:"structure" xmlURI:"https://route53.amazonaws.com/doc/2013-04-01/"` // A complex type that contains the ResourceId element for each resource for // which you want to get a list of tags. // // ResourceIds is a required field ResourceIds []*string `locationNameList:"ResourceId" min:"1" type:"list" required:"true"` // The type of the resources. // // * The resource type for health checks is healthcheck. // // * The resource type for hosted zones is hostedzone. // // ResourceType is a required field ResourceType *string `location:"uri" locationName:"ResourceType" type:"string" required:"true" enum:"TagResourceType"` } // String returns the string representation func (s ListTagsForResourcesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourcesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsForResourcesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourcesInput"} if s.ResourceIds == nil { invalidParams.Add(request.NewErrParamRequired("ResourceIds")) } if s.ResourceIds != nil && len(s.ResourceIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceIds", 1)) } if s.ResourceType == nil { invalidParams.Add(request.NewErrParamRequired("ResourceType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type containing tags for the specified resources. type ListTagsForResourcesOutput struct { _ struct{} `type:"structure"` // A list of ResourceTagSets containing tags associated with the specified resources. // // ResourceTagSets is a required field ResourceTagSets []*ResourceTagSet `locationNameList:"ResourceTagSet" type:"list" required:"true"` } // String returns the string representation func (s ListTagsForResourcesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourcesOutput) GoString() string { return s.String() } // A complex type that contains the information about the request to list the // traffic policies that are associated with the current AWS account. type ListTrafficPoliciesInput struct { _ struct{} `type:"structure"` // (Optional) The maximum number of traffic policies to be included in the response // body for this request. If you have more than MaxItems traffic policies, the // value of the IsTruncated element in the response is true, and the value of // the TrafficPolicyIdMarker element is the ID of the first traffic policy in // the next group of MaxItems traffic policies. MaxItems *string `location:"querystring" locationName:"maxitems" type:"string"` // (Conditional) For your first request to ListTrafficPolicies, do not include // the TrafficPolicyIdMarker parameter. // // If you have more traffic policies than the value of MaxItems, ListTrafficPolicies // returns only the first MaxItems traffic policies. To get the next group of // MaxItems policies, submit another request to ListTrafficPolicies. For the // value of TrafficPolicyIdMarker, specify the value of the TrafficPolicyIdMarker // element that was returned in the previous response. // // Policies are listed in the order in which they were created. TrafficPolicyIdMarker *string `location:"querystring" locationName:"trafficpolicyid" type:"string"` } // String returns the string representation func (s ListTrafficPoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTrafficPoliciesInput) GoString() string { return s.String() } // A complex type that contains the response information for the request. type ListTrafficPoliciesOutput struct { _ struct{} `type:"structure"` // A flag that indicates whether there are more traffic policies to be listed. // If the response was truncated, you can get the next group of MaxItems traffic // policies by calling ListTrafficPolicies again and specifying the value of // the TrafficPolicyIdMarker element in the TrafficPolicyIdMarker request parameter. // // Valid Values: true | false // // IsTruncated is a required field IsTruncated *bool `type:"boolean" required:"true"` // The value that you specified for the MaxItems parameter in the call to ListTrafficPolicies // that produced the current response. // // MaxItems is a required field MaxItems *string `type:"string" required:"true"` // If the value of IsTruncated is true, TrafficPolicyIdMarker is the ID of the // first traffic policy in the next group of MaxItems traffic policies. // // TrafficPolicyIdMarker is a required field TrafficPolicyIdMarker *string `type:"string" required:"true"` // A list that contains one TrafficPolicySummary element for each traffic policy // that was created by the current AWS account. // // TrafficPolicySummaries is a required field TrafficPolicySummaries []*TrafficPolicySummary `locationNameList:"TrafficPolicySummary" type:"list" required:"true"` } // String returns the string representation func (s ListTrafficPoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTrafficPoliciesOutput) GoString() string { return s.String() } // A request for the traffic policy instances that you created in a specified // hosted zone. type ListTrafficPolicyInstancesByHostedZoneInput struct { _ struct{} `type:"structure"` // The ID of the hosted zone for which you want to list traffic policy instances. // // HostedZoneId is a required field HostedZoneId *string `location:"querystring" locationName:"id" type:"string" required:"true"` // The maximum number of traffic policy instances to be included in the response // body for this request. If you have more than MaxItems traffic policy instances, // the value of the IsTruncated element in the response is true, and the values // of HostedZoneIdMarker, TrafficPolicyInstanceNameMarker, and TrafficPolicyInstanceTypeMarker // represent the first traffic policy instance in the next group of MaxItems // traffic policy instances. MaxItems *string `location:"querystring" locationName:"maxitems" type:"string"` // For the first request to ListTrafficPolicyInstancesByHostedZone, omit this // value. // // If the value of IsTruncated in the previous response was true, TrafficPolicyInstanceNameMarker // is the name of the first traffic policy instance in the next group of MaxItems // traffic policy instances. // // If the value of IsTruncated in the previous response was false, there are // no more traffic policy instances to get for this hosted zone. // // If the value of IsTruncated in the previous response was false, omit this // value. TrafficPolicyInstanceNameMarker *string `location:"querystring" locationName:"trafficpolicyinstancename" type:"string"` // For the first request to ListTrafficPolicyInstancesByHostedZone, omit this // value. // // If the value of IsTruncated in the previous response was true, TrafficPolicyInstanceTypeMarker // is the DNS type of the first traffic policy instance in the next group of // MaxItems traffic policy instances. // // If the value of IsTruncated in the previous response was false, there are // no more traffic policy instances to get for this hosted zone. TrafficPolicyInstanceTypeMarker *string `location:"querystring" locationName:"trafficpolicyinstancetype" type:"string" enum:"RRType"` } // String returns the string representation func (s ListTrafficPolicyInstancesByHostedZoneInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTrafficPolicyInstancesByHostedZoneInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTrafficPolicyInstancesByHostedZoneInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTrafficPolicyInstancesByHostedZoneInput"} if s.HostedZoneId == nil { invalidParams.Add(request.NewErrParamRequired("HostedZoneId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the response information for the request. type ListTrafficPolicyInstancesByHostedZoneOutput struct { _ struct{} `type:"structure"` // A flag that indicates whether there are more traffic policy instances to // be listed. If the response was truncated, you can get the next group of MaxItems // traffic policy instances by calling ListTrafficPolicyInstancesByHostedZone // again and specifying the values of the HostedZoneIdMarker, TrafficPolicyInstanceNameMarker, // and TrafficPolicyInstanceTypeMarker elements in the corresponding request // parameters. // // IsTruncated is a required field IsTruncated *bool `type:"boolean" required:"true"` // The value that you specified for the MaxItems parameter in the call to ListTrafficPolicyInstancesByHostedZone // that produced the current response. // // MaxItems is a required field MaxItems *string `type:"string" required:"true"` // If IsTruncated is true, TrafficPolicyInstanceNameMarker is the name of the // first traffic policy instance in the next group of MaxItems traffic policy // instances. TrafficPolicyInstanceNameMarker *string `type:"string"` // If IsTruncated is true, TrafficPolicyInstanceTypeMarker is the DNS type of // the resource record sets that are associated with the first traffic policy // instance in the next group of MaxItems traffic policy instances. TrafficPolicyInstanceTypeMarker *string `type:"string" enum:"RRType"` // A list that contains one TrafficPolicyInstance element for each traffic policy // instance that matches the elements in the request. // // TrafficPolicyInstances is a required field TrafficPolicyInstances []*TrafficPolicyInstance `locationNameList:"TrafficPolicyInstance" type:"list" required:"true"` } // String returns the string representation func (s ListTrafficPolicyInstancesByHostedZoneOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTrafficPolicyInstancesByHostedZoneOutput) GoString() string { return s.String() } // A complex type that contains the information about the request to list your // traffic policy instances. type ListTrafficPolicyInstancesByPolicyInput struct { _ struct{} `type:"structure"` // For the first request to ListTrafficPolicyInstancesByPolicy, omit this value. // // If the value of IsTruncated in the previous response was true, HostedZoneIdMarker // is the ID of the hosted zone for the first traffic policy instance in the // next group of MaxItems traffic policy instances. // // If the value of IsTruncated in the previous response was false, there are // no more traffic policy instances to get for this hosted zone. // // If the value of IsTruncated in the previous response was false, omit this // value. HostedZoneIdMarker *string `location:"querystring" locationName:"hostedzoneid" type:"string"` // The maximum number of traffic policy instances to be included in the response // body for this request. If you have more than MaxItems traffic policy instances, // the value of the IsTruncated element in the response is true, and the values // of HostedZoneIdMarker, TrafficPolicyInstanceNameMarker, and TrafficPolicyInstanceTypeMarker // represent the first traffic policy instance in the next group of MaxItems // traffic policy instances. MaxItems *string `location:"querystring" locationName:"maxitems" type:"string"` // The ID of the traffic policy for which you want to list traffic policy instances. // // TrafficPolicyId is a required field TrafficPolicyId *string `location:"querystring" locationName:"id" type:"string" required:"true"` // For the first request to ListTrafficPolicyInstancesByPolicy, omit this value. // // If the value of IsTruncated in the previous response was true, TrafficPolicyInstanceNameMarker // is the name of the first traffic policy instance in the next group of MaxItems // traffic policy instances. // // If the value of IsTruncated in the previous response was false, there are // no more traffic policy instances to get for this hosted zone. // // If the value of IsTruncated in the previous response was false, omit this // value. TrafficPolicyInstanceNameMarker *string `location:"querystring" locationName:"trafficpolicyinstancename" type:"string"` // For the first request to ListTrafficPolicyInstancesByPolicy, omit this value. // // If the value of IsTruncated in the previous response was true, TrafficPolicyInstanceTypeMarker // is the DNS type of the first traffic policy instance in the next group of // MaxItems traffic policy instances. // // If the value of IsTruncated in the previous response was false, there are // no more traffic policy instances to get for this hosted zone. TrafficPolicyInstanceTypeMarker *string `location:"querystring" locationName:"trafficpolicyinstancetype" type:"string" enum:"RRType"` // The version of the traffic policy for which you want to list traffic policy // instances. The version must be associated with the traffic policy that is // specified by TrafficPolicyId. // // TrafficPolicyVersion is a required field TrafficPolicyVersion *int64 `location:"querystring" locationName:"version" min:"1" type:"integer" required:"true"` } // String returns the string representation func (s ListTrafficPolicyInstancesByPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTrafficPolicyInstancesByPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTrafficPolicyInstancesByPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTrafficPolicyInstancesByPolicyInput"} if s.TrafficPolicyId == nil { invalidParams.Add(request.NewErrParamRequired("TrafficPolicyId")) } if s.TrafficPolicyVersion == nil { invalidParams.Add(request.NewErrParamRequired("TrafficPolicyVersion")) } if s.TrafficPolicyVersion != nil && *s.TrafficPolicyVersion < 1 { invalidParams.Add(request.NewErrParamMinValue("TrafficPolicyVersion", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the response information for the request. type ListTrafficPolicyInstancesByPolicyOutput struct { _ struct{} `type:"structure"` // If IsTruncated is true, HostedZoneIdMarker is the ID of the hosted zone of // the first traffic policy instance in the next group of MaxItems traffic policy // instances. HostedZoneIdMarker *string `type:"string"` // A flag that indicates whether there are more traffic policy instances to // be listed. If the response was truncated, you can get the next group of MaxItems // traffic policy instances by calling ListTrafficPolicyInstancesByPolicy again // and specifying the values of the HostedZoneIdMarker, TrafficPolicyInstanceNameMarker, // and TrafficPolicyInstanceTypeMarker elements in the corresponding request // parameters. // // IsTruncated is a required field IsTruncated *bool `type:"boolean" required:"true"` // The value that you specified for the MaxItems parameter in the call to ListTrafficPolicyInstancesByPolicy // that produced the current response. // // MaxItems is a required field MaxItems *string `type:"string" required:"true"` // If IsTruncated is true, TrafficPolicyInstanceNameMarker is the name of the // first traffic policy instance in the next group of MaxItems traffic policy // instances. TrafficPolicyInstanceNameMarker *string `type:"string"` // If IsTruncated is true, TrafficPolicyInstanceTypeMarker is the DNS type of // the resource record sets that are associated with the first traffic policy // instance in the next group of MaxItems traffic policy instances. TrafficPolicyInstanceTypeMarker *string `type:"string" enum:"RRType"` // A list that contains one TrafficPolicyInstance element for each traffic policy // instance that matches the elements in the request. // // TrafficPolicyInstances is a required field TrafficPolicyInstances []*TrafficPolicyInstance `locationNameList:"TrafficPolicyInstance" type:"list" required:"true"` } // String returns the string representation func (s ListTrafficPolicyInstancesByPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTrafficPolicyInstancesByPolicyOutput) GoString() string { return s.String() } // A complex type that contains the information about the request to list your // traffic policy instances. type ListTrafficPolicyInstancesInput struct { _ struct{} `type:"structure"` // For the first request to ListTrafficPolicyInstances, omit this value. // // If the value of IsTruncated in the previous response was true, you have more // traffic policy instances. To get the next group of MaxItems traffic policy // instances, submit another ListTrafficPolicyInstances request. For the value // of HostedZoneIdMarker, specify the value of HostedZoneIdMarker from the previous // response, which is the hosted zone ID of the first traffic policy instance // in the next group of MaxItems traffic policy instances. // // If the value of IsTruncated in the previous response was false, there are // no more traffic policy instances to get. HostedZoneIdMarker *string `location:"querystring" locationName:"hostedzoneid" type:"string"` // The maximum number of traffic policy instances to be included in the response // body for this request. If you have more than MaxItems traffic policy instances, // the value of the IsTruncated element in the response is true, and the values // of HostedZoneIdMarker, TrafficPolicyInstanceNameMarker, and TrafficPolicyInstanceTypeMarker // represent the first traffic policy instance in the next group of MaxItems // traffic policy instances. MaxItems *string `location:"querystring" locationName:"maxitems" type:"string"` // For the first request to ListTrafficPolicyInstances, omit this value. // // If the value of IsTruncated in the previous response was true, TrafficPolicyInstanceNameMarker // is the name of the first traffic policy instance in the next group of MaxItems // traffic policy instances. // // If the value of IsTruncated in the previous response was false, there are // no more traffic policy instances to get. TrafficPolicyInstanceNameMarker *string `location:"querystring" locationName:"trafficpolicyinstancename" type:"string"` // For the first request to ListTrafficPolicyInstances, omit this value. // // If the value of IsTruncated in the previous response was true, TrafficPolicyInstanceTypeMarker // is the DNS type of the first traffic policy instance in the next group of // MaxItems traffic policy instances. // // If the value of IsTruncated in the previous response was false, there are // no more traffic policy instances to get. TrafficPolicyInstanceTypeMarker *string `location:"querystring" locationName:"trafficpolicyinstancetype" type:"string" enum:"RRType"` } // String returns the string representation func (s ListTrafficPolicyInstancesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTrafficPolicyInstancesInput) GoString() string { return s.String() } // A complex type that contains the response information for the request. type ListTrafficPolicyInstancesOutput struct { _ struct{} `type:"structure"` // If IsTruncated is true, HostedZoneIdMarker is the ID of the hosted zone of // the first traffic policy instance in the next group of MaxItems traffic policy // instances. HostedZoneIdMarker *string `type:"string"` // A flag that indicates whether there are more traffic policy instances to // be listed. If the response was truncated, you can get the next group of MaxItems // traffic policy instances by calling ListTrafficPolicyInstances again and // specifying the values of the HostedZoneIdMarker, TrafficPolicyInstanceNameMarker, // and TrafficPolicyInstanceTypeMarker elements in the corresponding request // parameters. // // IsTruncated is a required field IsTruncated *bool `type:"boolean" required:"true"` // The value that you specified for the MaxItems parameter in the call to ListTrafficPolicyInstances // that produced the current response. // // MaxItems is a required field MaxItems *string `type:"string" required:"true"` // If IsTruncated is true, TrafficPolicyInstanceNameMarker is the name of the // first traffic policy instance in the next group of MaxItems traffic policy // instances. TrafficPolicyInstanceNameMarker *string `type:"string"` // If IsTruncated is true, TrafficPolicyInstanceTypeMarker is the DNS type of // the resource record sets that are associated with the first traffic policy // instance in the next group of MaxItems traffic policy instances. TrafficPolicyInstanceTypeMarker *string `type:"string" enum:"RRType"` // A list that contains one TrafficPolicyInstance element for each traffic policy // instance that matches the elements in the request. // // TrafficPolicyInstances is a required field TrafficPolicyInstances []*TrafficPolicyInstance `locationNameList:"TrafficPolicyInstance" type:"list" required:"true"` } // String returns the string representation func (s ListTrafficPolicyInstancesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTrafficPolicyInstancesOutput) GoString() string { return s.String() } // A complex type that contains the information about the request to list your // traffic policies. type ListTrafficPolicyVersionsInput struct { _ struct{} `type:"structure"` // Specify the value of Id of the traffic policy for which you want to list // all versions. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` // The maximum number of traffic policy versions that you want Amazon Route // 53 to include in the response body for this request. If the specified traffic // policy has more than MaxItems versions, the value of the IsTruncated element // in the response is true, and the value of the TrafficPolicyVersionMarker // element is the ID of the first version in the next group of MaxItems traffic // policy versions. MaxItems *string `location:"querystring" locationName:"maxitems" type:"string"` // For your first request to ListTrafficPolicyVersions, do not include the TrafficPolicyVersionMarker // parameter. // // If you have more traffic policy versions than the value of MaxItems, ListTrafficPolicyVersions // returns only the first group of MaxItems versions. To get the next group // of MaxItems traffic policy versions, submit another request to ListTrafficPolicyVersions. // For the value of TrafficPolicyVersionMarker, specify the value of the TrafficPolicyVersionMarker // element that was returned in the previous response. // // Traffic policy versions are listed in sequential order. TrafficPolicyVersionMarker *string `location:"querystring" locationName:"trafficpolicyversion" type:"string"` } // String returns the string representation func (s ListTrafficPolicyVersionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTrafficPolicyVersionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTrafficPolicyVersionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTrafficPolicyVersionsInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the response information for the request. type ListTrafficPolicyVersionsOutput struct { _ struct{} `type:"structure"` // A flag that indicates whether there are more traffic policies to be listed. // If the response was truncated, you can get the next group of maxitems traffic // policies by calling ListTrafficPolicyVersions again and specifying the value // of the NextMarker element in the marker parameter. // // IsTruncated is a required field IsTruncated *bool `type:"boolean" required:"true"` // The value that you specified for the maxitems parameter in the call to ListTrafficPolicyVersions // that produced the current response. // // MaxItems is a required field MaxItems *string `type:"string" required:"true"` // A list that contains one TrafficPolicy element for each traffic policy version // that is associated with the specified traffic policy. // // TrafficPolicies is a required field TrafficPolicies []*TrafficPolicy `locationNameList:"TrafficPolicy" type:"list" required:"true"` // If IsTruncated is true, the value of TrafficPolicyVersionMarker identifies // the first traffic policy in the next group of MaxItems traffic policies. // Call ListTrafficPolicyVersions again and specify the value of TrafficPolicyVersionMarker // in the TrafficPolicyVersionMarker request parameter. // // This element is present only if IsTruncated is true. // // TrafficPolicyVersionMarker is a required field TrafficPolicyVersionMarker *string `type:"string" required:"true"` } // String returns the string representation func (s ListTrafficPolicyVersionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTrafficPolicyVersionsOutput) GoString() string { return s.String() } // Information specific to the resource record. // // If you are creating an alias resource record set, omit ResourceRecord. type ResourceRecord struct { _ struct{} `type:"structure"` // The current or new DNS record value, not to exceed 4,000 characters. In the // case of a DELETE action, if the current value does not match the actual value, // an error is returned. For descriptions about how to format Value for different // record types, see Supported DNS Resource Record Types (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/ResourceRecordTypes.html) // in the Amazon Route 53 Developer Guide. // // You can specify more than one value for all record types except CNAME and // SOA. // // If you are creating an alias resource record set, omit Value. // // Value is a required field Value *string `type:"string" required:"true"` } // String returns the string representation func (s ResourceRecord) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResourceRecord) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ResourceRecord) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ResourceRecord"} if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Information about the resource record set to create or delete. type ResourceRecordSet struct { _ struct{} `type:"structure"` // Alias resource record sets only: Information about the CloudFront distribution, // Elastic Beanstalk environment, ELB load balancer, Amazon S3 bucket, or Amazon // Route 53 resource record set to which you are redirecting queries. The Elastic // Beanstalk environment must have a regionalized subdomain. // // If you're creating resource records sets for a private hosted zone, note // the following: // // * You can't create alias resource record sets for CloudFront distributions // in a private hosted zone. // // * Creating geolocation alias resource record sets or latency alias resource // record sets in a private hosted zone is unsupported. // // * For information about creating failover resource record sets in a private // hosted zone, see Configuring Failover in a Private Hosted Zone (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-private-hosted-zones.html) // in the Amazon Route 53 Developer Guide. AliasTarget *AliasTarget `type:"structure"` // Failover resource record sets only: To configure failover, you add the Failover // element to two resource record sets. For one resource record set, you specify // PRIMARY as the value for Failover; for the other resource record set, you // specify SECONDARY. In addition, you include the HealthCheckId element and // specify the health check that you want Amazon Route 53 to perform for each // resource record set. // // Except where noted, the following failover behaviors assume that you have // included the HealthCheckId element in both resource record sets: // // * When the primary resource record set is healthy, Amazon Route 53 responds // to DNS queries with the applicable value from the primary resource record // set regardless of the health of the secondary resource record set. // // * When the primary resource record set is unhealthy and the secondary // resource record set is healthy, Amazon Route 53 responds to DNS queries // with the applicable value from the secondary resource record set. // // * When the secondary resource record set is unhealthy, Amazon Route 53 // responds to DNS queries with the applicable value from the primary resource // record set regardless of the health of the primary resource record set. // // * If you omit the HealthCheckId element for the secondary resource record // set, and if the primary resource record set is unhealthy, Amazon Route // 53 always responds to DNS queries with the applicable value from the secondary // resource record set. This is true regardless of the health of the associated // endpoint. // // You cannot create non-failover resource record sets that have the same values // for the Name and Type elements as failover resource record sets. // // For failover alias resource record sets, you must also include the EvaluateTargetHealth // element and set the value to true. // // For more information about configuring failover for Amazon Route 53, see // the following topics in the Amazon Route 53 Developer Guide: // // * Amazon Route 53 Health Checks and DNS Failover (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover.html) // // * Configuring Failover in a Private Hosted Zone (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-private-hosted-zones.html) // // Valid values: PRIMARY | SECONDARY Failover *string `type:"string" enum:"ResourceRecordSetFailover"` // Geo location resource record sets only: A complex type that lets you control // how Amazon Route 53 responds to DNS queries based on the geographic origin // of the query. For example, if you want all queries from Africa to be routed // to a web server with an IP address of 192.0.2.111, create a resource record // set with a Type of A and a ContinentCode of AF. // // Creating geolocation and geolocation alias resource record sets in private // hosted zones is not supported. // // If you create separate resource record sets for overlapping geographic regions // (for example, one resource record set for a continent and one for a country // on the same continent), priority goes to the smallest geographic region. // This allows you to route most queries for a continent to one resource and // to route queries for a country on that continent to a different resource. // // You cannot create two geolocation resource record sets that specify the same // geographic location. // // The value * in the CountryCode element matches all geographic locations that // aren't specified in other geolocation resource record sets that have the // same values for the Name and Type elements. // // Geolocation works by mapping IP addresses to locations. However, some IP // addresses aren't mapped to geographic locations, so even if you create geolocation // resource record sets that cover all seven continents, Amazon Route 53 will // receive some DNS queries from locations that it can't identify. We recommend // that you create a resource record set for which the value of CountryCode // is *, which handles both queries that come from locations for which you haven't // created geolocation resource record sets and queries from IP addresses that // aren't mapped to a location. If you don't create a * resource record set, // Amazon Route 53 returns a "no answer" response for queries from those locations. // // You cannot create non-geolocation resource record sets that have the same // values for the Name and Type elements as geolocation resource record sets. GeoLocation *GeoLocation `type:"structure"` // If you want Amazon Route 53 to return this resource record set in response // to a DNS query only when a health check is passing, include the HealthCheckId // element and specify the ID of the applicable health check. // // Amazon Route 53 determines whether a resource record set is healthy based // on one of the following: // // * By periodically sending a request to the endpoint that is specified // in the health check // // * By aggregating the status of a specified group of health checks (calculated // health checks) // // * By determining the current state of a CloudWatch alarm (CloudWatch metric // health checks) // // For information about how Amazon Route 53 determines whether a health check // is healthy, see CreateHealthCheck. // // The HealthCheckId element is only useful when Amazon Route 53 is choosing // between two or more resource record sets to respond to a DNS query, and you // want Amazon Route 53 to base the choice in part on the status of a health // check. Configuring health checks only makes sense in the following configurations: // // * You're checking the health of the resource record sets in a weighted, // latency, geolocation, or failover resource record set, and you specify // health check IDs for all of the resource record sets. If the health check // for one resource record set specifies an endpoint that is not healthy, // Amazon Route 53 stops responding to queries using the value for that resource // record set. // // * You set EvaluateTargetHealth to true for the resource record sets in // an alias, weighted alias, latency alias, geolocation alias, or failover // alias resource record set, and you specify health check IDs for all of // the resource record sets that are referenced by the alias resource record // sets. // // Amazon Route 53 doesn't check the health of the endpoint specified in the // resource record set, for example, the endpoint specified by the IP address // in the Value element. When you add a HealthCheckId element to a resource // record set, Amazon Route 53 checks the health of the endpoint that you specified // in the health check. // // For geolocation resource record sets, if an endpoint is unhealthy, Amazon // Route 53 looks for a resource record set for the larger, associated geographic // region. For example, suppose you have resource record sets for a state in // the United States, for the United States, for North America, and for all // locations. If the endpoint for the state resource record set is unhealthy, // Amazon Route 53 checks the resource record sets for the United States, for // North America, and for all locations (a resource record set for which the // value of CountryCode is *), in that order, until it finds a resource record // set for which the endpoint is healthy. // // If your health checks specify the endpoint only by domain name, we recommend // that you create a separate health check for each endpoint. For example, create // a health check for each HTTP server that is serving content for www.example.com. // For the value of FullyQualifiedDomainName, specify the domain name of the // server (such as us-east-1-www.example.com), not the name of the resource // record sets (example.com). // // n this configuration, if you create a health check for which the value of // FullyQualifiedDomainName matches the name of the resource record sets and // then associate the health check with those resource record sets, health check // results will be unpredictable. // // For more information, see the following topics in the Amazon Route 53 Developer // Guide: // // * Amazon Route 53 Health Checks and DNS Failover (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover.html) // // * Configuring Failover in a Private Hosted Zone (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-private-hosted-zones.html) HealthCheckId *string `type:"string"` // The name of the domain you want to perform the action on. // // Enter a fully qualified domain name, for example, www.example.com. You can // optionally include a trailing dot. If you omit the trailing dot, Amazon Route // 53 still assumes that the domain name that you specify is fully qualified. // This means that Amazon Route 53 treats www.example.com (without a trailing // dot) and www.example.com. (with a trailing dot) as identical. // // For information about how to specify characters other than a-z, 0-9, and // - (hyphen) and how to specify internationalized domain names, see DNS Domain // Name Format (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DomainNameFormat.html) // in the Amazon Route 53 Developer Guide. // // You can use the asterisk (*) wildcard to replace the leftmost label in a // domain name. For example, *.example.com. Note the following: // // * The * must replace the entire label. For example, you can't specify // *prod.example.com or prod*.example.com. // // * The * can't replace any of the middle labels, for example, marketing.*.example.com. // // * If you include * in any position other than the leftmost label in a // domain name, DNS treats it as an * character (ASCII 42), not as a wildcard. // // You can't use the * wildcard for resource records sets that have a type of // NS. // // You can use the * wildcard as the leftmost label in a domain name, for example, // *.example.com. You cannot use an * for one of the middle labels, for example, // marketing.*.example.com. In addition, the * must replace the entire label; // for example, you can't specify prod*.example.com. // // Name is a required field Name *string `type:"string" required:"true"` // Latency-based resource record sets only: The Amazon EC2 region where the // resource that is specified in this resource record set resides. The resource // typically is an AWS resource, such as an Amazon EC2 instance or an ELB load // balancer, and is referred to by an IP address or a DNS domain name, depending // on the record type. // // Creating latency and latency alias resource record sets in private hosted // zones is not supported. // // When Amazon Route 53 receives a DNS query for a domain name and type for // which you have created latency resource record sets, Amazon Route 53 selects // the latency resource record set that has the lowest latency between the end // user and the associated Amazon EC2 region. Amazon Route 53 then returns the // value that is associated with the selected resource record set. // // Note the following: // // * You can only specify one ResourceRecord per latency resource record // set. // // * You can only create one latency resource record set for each Amazon // EC2 region. // // * You are not required to create latency resource record sets for all // Amazon EC2 regions. Amazon Route 53 will choose the region with the best // latency from among the regions for which you create latency resource record // sets. // // * You cannot create non-latency resource record sets that have the same // values for the Name and Type elements as latency resource record sets. Region *string `min:"1" type:"string" enum:"ResourceRecordSetRegion"` // Information about the resource records to act upon. // // If you are creating an alias resource record set, omit ResourceRecords. ResourceRecords []*ResourceRecord `locationNameList:"ResourceRecord" min:"1" type:"list"` // Weighted, Latency, Geo, and Failover resource record sets only: An identifier // that differentiates among multiple resource record sets that have the same // combination of DNS name and type. The value of SetIdentifier must be unique // for each resource record set that has the same combination of DNS name and // type. Omit SetIdentifier for any other types of record sets. SetIdentifier *string `min:"1" type:"string"` // The resource record cache time to live (TTL), in seconds. Note the following: // // * If you're creating an alias resource record set, omit TTL. Amazon Route // 53 uses the value of TTL for the alias target. // // * If you're associating this resource record set with a health check (if // you're adding a HealthCheckId element), we recommend that you specify // a TTL of 60 seconds or less so clients respond quickly to changes in health // status. // // * All of the resource record sets in a group of weighted, latency, geolocation, // or failover resource record sets must have the same value for TTL. // // * If a group of weighted resource record sets includes one or more weighted // alias resource record sets for which the alias target is an ELB load balancer, // we recommend that you specify a TTL of 60 seconds for all of the non-alias // weighted resource record sets that have the same name and type. Values // other than 60 seconds (the TTL for load balancers) will change the effect // of the values that you specify for Weight. TTL *int64 `type:"long"` // When you create a traffic policy instance, Amazon Route 53 automatically // creates a resource record set. TrafficPolicyInstanceId is the ID of the traffic // policy instance that Amazon Route 53 created this resource record set for. // // To delete the resource record set that is associated with a traffic policy // instance, use DeleteTrafficPolicyInstance. Amazon Route 53 will delete the // resource record set automatically. If you delete the resource record set // by using ChangeResourceRecordSets, Amazon Route 53 doesn't automatically // delete the traffic policy instance, and you'll continue to be charged for // it even though it's no longer in use. TrafficPolicyInstanceId *string `type:"string"` // The DNS record type. For information about different record types and how // data is encoded for them, see Supported DNS Resource Record Types (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/ResourceRecordTypes.html) // in the Amazon Route 53 Developer Guide. // // Valid values for basic resource record sets: A | AAAA | CNAME | MX | NAPTR // | NS | PTR | SOA | SPF | SRV | TXT // // Values for weighted, latency, geolocation, and failover resource record sets: // A | AAAA | CNAME | MX | NAPTR | PTR | SPF | SRV | TXT. When creating a group // of weighted, latency, geolocation, or failover resource record sets, specify // the same value for all of the resource record sets in the group. // // SPF records were formerly used to verify the identity of the sender of email // messages. However, we no longer recommend that you create resource record // sets for which the value of Type is SPF. RFC 7208, Sender Policy Framework // (SPF) for Authorizing Use of Domains in Email, Version 1, has been updated // to say, "...[I]ts existence and mechanism defined in [RFC4408] have led to // some interoperability issues. Accordingly, its use is no longer appropriate // for SPF version 1; implementations are not to use it." In RFC 7208, see section // 14.1, The SPF DNS Record Type (http://tools.ietf.org/html/rfc7208#section-14.1). // // Values for alias resource record sets: // // * CloudFront distributions:A // // * Elastic Beanstalk environment that has a regionalized subdomain: A // // * ELB load balancers:A | AAAA // // * Amazon S3 buckets:A // // * Another resource record set in this hosted zone: Specify the type of // the resource record set for which you're creating the alias. Specify any // value except NS or SOA. // // Type is a required field Type *string `type:"string" required:"true" enum:"RRType"` // Weighted resource record sets only: Among resource record sets that have // the same combination of DNS name and type, a value that determines the proportion // of DNS queries that Amazon Route 53 responds to using the current resource // record set. Amazon Route 53 calculates the sum of the weights for the resource // record sets that have the same combination of DNS name and type. Amazon Route // 53 then responds to queries based on the ratio of a resource's weight to // the total. Note the following: // // * You must specify a value for the Weight element for every weighted resource // record set. // // * You can only specify one ResourceRecord per weighted resource record // set. // // * You cannot create latency, failover, or geolocation resource record // sets that have the same values for the Name and Type elements as weighted // resource record sets. // // * You can create a maximum of 100 weighted resource record sets that have // the same values for the Name and Type elements. // // * For weighted (but not weighted alias) resource record sets, if you set // Weight to 0 for a resource record set, Amazon Route 53 never responds // to queries with the applicable value for that resource record set. However, // if you set Weight to 0 for all resource record sets that have the same // combination of DNS name and type, traffic is routed to all resources with // equal probability. // // The effect of setting Weight to 0 is different when you associate health // checks with weighted resource record sets. For more information, see Options // for Configuring Amazon Route 53 Active-Active and Active-Passive Failover // (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-configuring-options.html) // in the Amazon Route 53 Developer Guide. Weight *int64 `type:"long"` } // String returns the string representation func (s ResourceRecordSet) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResourceRecordSet) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ResourceRecordSet) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ResourceRecordSet"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Region != nil && len(*s.Region) < 1 { invalidParams.Add(request.NewErrParamMinLen("Region", 1)) } if s.ResourceRecords != nil && len(s.ResourceRecords) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceRecords", 1)) } if s.SetIdentifier != nil && len(*s.SetIdentifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("SetIdentifier", 1)) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if s.AliasTarget != nil { if err := s.AliasTarget.Validate(); err != nil { invalidParams.AddNested("AliasTarget", err.(request.ErrInvalidParams)) } } if s.GeoLocation != nil { if err := s.GeoLocation.Validate(); err != nil { invalidParams.AddNested("GeoLocation", err.(request.ErrInvalidParams)) } } if s.ResourceRecords != nil { for i, v := range s.ResourceRecords { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ResourceRecords", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type containing a resource and its associated tags. type ResourceTagSet struct { _ struct{} `type:"structure"` // The ID for the specified resource. ResourceId *string `type:"string"` // The type of the resource. // // * The resource type for health checks is healthcheck. // // * The resource type for hosted zones is hostedzone. ResourceType *string `type:"string" enum:"TagResourceType"` // The tags associated with the specified resource. Tags []*Tag `locationNameList:"Tag" min:"1" type:"list"` } // String returns the string representation func (s ResourceTagSet) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResourceTagSet) GoString() string { return s.String() } // A complex type that contains the status that one Amazon Route 53 health checker // reports and the time of the health check. type StatusReport struct { _ struct{} `type:"structure"` // The time at which the health checker performed the health check in ISO 8601 // format (https://en.wikipedia.org/wiki/ISO_8601) and Coordinated Universal // Time (UTC). For example, the value 2014-10-27T17:48:16.751Z represents October // 27, 2014 at 17:48:16.751 UTC. CheckedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"` // A description of the status of the health check endpoint as reported by one // of the Amazon Route 53 health checkers. Status *string `type:"string"` } // String returns the string representation func (s StatusReport) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StatusReport) GoString() string { return s.String() } // A complex type that contains information about a tag that you want to add // or edit for the specified health check or hosted zone. type Tag struct { _ struct{} `type:"structure"` // The value of Key depends on the operation that you want to perform: // // * Add a tag to a health check or hosted zone: Key is the name that you // want to give the new tag. // // * Edit a tag: Key is the name of the tag whose Value element you want // to remove. // // * Delete a key: Key is the name of the tag you want to remove. // // * Give a name to a health check: Edit the default Name tag. In the Amazon // Route 53 console, the list of your health checks includes a Name column // that lets you see the name that you've given to each health check. Key *string `type:"string"` // The value of Value depends on the operation that you want to perform: // // * Add a tag to a health check or hosted zone: Value is the value that // you want to give the new tag. // // * Edit a tag: Value is the new value that you want to assign the tag. Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Gets the value that Amazon Route 53 returns in response to a DNS request // for a specified record name and type. You can optionally specify the IP address // of a DNS resolver, an EDNS0 client subnet IP address, and a subnet mask. // // Parameters // // hostedzoneidThe ID of the hosted zone that you want Amazon Route 53 to simulate // a query for. // // recordnameThe name of the resource record set that you want Amazon Route // 53 to simulate a query for. // // recordtypeThe type of the resource record set. // // resolverip (optional)If you want to simulate a request from a specific DNS // resolver, specify the IP address for that resolver. If you omit this value, // TestDNSAnswer uses the IP address of a DNS resolver in the AWS US East region. // // edns0clientsubnetip (optional)If the resolver that you specified for resolverip // supports EDNS0, specify the IP address of a client in the applicable location. // // edns0clientsubnetmask (optional)If you specify an IP address for edns0clientsubnetip, // you can optionally specify the number of bits of the IP address that you // want the checking tool to include in the DNS query. For example, if you specify // 192.0.2.44 for edns0clientsubnetip and 24 for edns0clientsubnetmask, the // checking tool will simulate a request from 192.0.2.0/24. The default value // is 24 bits. type TestDNSAnswerInput struct { _ struct{} `type:"structure"` // If the resolver that you specified for resolverip supports EDNS0, specify // the IP address of a client in the applicable location. EDNS0ClientSubnetIP *string `location:"querystring" locationName:"edns0clientsubnetip" type:"string"` // If you specify an IP address for edns0clientsubnetip, you can optionally // specify the number of bits of the IP address that you want the checking tool // to include in the DNS query. For example, if you specify 192.0.2.44 for edns0clientsubnetip // and 24 for edns0clientsubnetmask, the checking tool will simulate a request // from 192.0.2.0/24. The default value is 24 bits. EDNS0ClientSubnetMask *string `location:"querystring" locationName:"edns0clientsubnetmask" type:"string"` // The ID of the hosted zone that you want Amazon Route 53 to simulate a query // for. // // HostedZoneId is a required field HostedZoneId *string `location:"querystring" locationName:"hostedzoneid" type:"string" required:"true"` // The name of the resource record set that you want Amazon Route 53 to simulate // a query for. // // RecordName is a required field RecordName *string `location:"querystring" locationName:"recordname" type:"string" required:"true"` // The type of the resource record set. // // RecordType is a required field RecordType *string `location:"querystring" locationName:"recordtype" type:"string" required:"true" enum:"RRType"` // If you want to simulate a request from a specific DNS resolver, specify the // IP address for that resolver. If you omit this value, TestDnsAnswer uses // the IP address of a DNS resolver in the AWS US East region. ResolverIP *string `location:"querystring" locationName:"resolverip" type:"string"` } // String returns the string representation func (s TestDNSAnswerInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TestDNSAnswerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TestDNSAnswerInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TestDNSAnswerInput"} if s.HostedZoneId == nil { invalidParams.Add(request.NewErrParamRequired("HostedZoneId")) } if s.RecordName == nil { invalidParams.Add(request.NewErrParamRequired("RecordName")) } if s.RecordType == nil { invalidParams.Add(request.NewErrParamRequired("RecordType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the response to a TestDNSAnswer request. type TestDNSAnswerOutput struct { _ struct{} `type:"structure"` // The Amazon Route 53 name server used to respond to the request. // // Nameserver is a required field Nameserver *string `type:"string" required:"true"` // The protocol that Amazon Route 53 used to respond to the request, either // UDP or TCP. // // Protocol is a required field Protocol *string `type:"string" required:"true"` // A list that contains values that Amazon Route 53 returned for this resource // record set. // // RecordData is a required field RecordData []*string `locationNameList:"RecordDataEntry" type:"list" required:"true"` // The name of the resource record set that you submitted a request for. // // RecordName is a required field RecordName *string `type:"string" required:"true"` // The type of the resource record set that you submitted a request for. // // RecordType is a required field RecordType *string `type:"string" required:"true" enum:"RRType"` // A code that indicates whether the request is valid or not. The most common // response code is NOERROR, meaning that the request is valid. If the response // is not valid, Amazon Route 53 returns a response code that describes the // error. For a list of possible response codes, see DNS RCODES (http://www.iana.org/assignments/dns-parameters/dns-parameters.xhtml#dns-parameters-6) // on the IANA website. // // ResponseCode is a required field ResponseCode *string `type:"string" required:"true"` } // String returns the string representation func (s TestDNSAnswerOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TestDNSAnswerOutput) GoString() string { return s.String() } // A complex type that contains settings for a traffic policy. type TrafficPolicy struct { _ struct{} `type:"structure"` // The comment that you specify in the CreateTrafficPolicy request, if any. Comment *string `type:"string"` // The definition of a traffic policy in JSON format. You specify the JSON document // to use for a new traffic policy in the CreateTrafficPolicy request. For more // information about the JSON format, see Traffic Policy Document Format (http://docs.aws.amazon.com/Route53/latest/api-reference/api-policies-traffic-policy-document-format.html). // // Document is a required field Document *string `type:"string" required:"true"` // The ID that Amazon Route 53 assigned to a traffic policy when you created // it. // // Id is a required field Id *string `type:"string" required:"true"` // The name that you specified when you created the traffic policy. // // Name is a required field Name *string `type:"string" required:"true"` // The DNS type of the resource record sets that Amazon Route 53 creates when // you use a traffic policy to create a traffic policy instance. // // Type is a required field Type *string `type:"string" required:"true" enum:"RRType"` // The version number that Amazon Route 53 assigns to a traffic policy. For // a new traffic policy, the value of Version is always 1. // // Version is a required field Version *int64 `min:"1" type:"integer" required:"true"` } // String returns the string representation func (s TrafficPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TrafficPolicy) GoString() string { return s.String() } // A complex type that contains settings for the new traffic policy instance. type TrafficPolicyInstance struct { _ struct{} `type:"structure"` // The ID of the hosted zone that Amazon Route 53 created resource record sets // in. // // HostedZoneId is a required field HostedZoneId *string `type:"string" required:"true"` // The ID that Amazon Route 53 assigned to the new traffic policy instance. // // Id is a required field Id *string `type:"string" required:"true"` // If State is Failed, an explanation of the reason for the failure. If State // is another value, Message is empty. // // Message is a required field Message *string `type:"string" required:"true"` // The DNS name, such as www.example.com, for which Amazon Route 53 responds // to queries by using the resource record sets that are associated with this // traffic policy instance. // // Name is a required field Name *string `type:"string" required:"true"` // The value of State is one of the following values: // // AppliedAmazon Route 53 has finished creating resource record sets, and changes // have propagated to all Amazon Route 53 edge locations. // // CreatingAmazon Route 53 is creating the resource record sets. Use GetTrafficPolicyInstance // to confirm that the CreateTrafficPolicyInstance request completed successfully. // // FailedAmazon Route 53 wasn't able to create or update the resource record // sets. When the value of State is Failed, see Message for an explanation of // what caused the request to fail. // // State is a required field State *string `type:"string" required:"true"` // The TTL that Amazon Route 53 assigned to all of the resource record sets // that it created in the specified hosted zone. // // TTL is a required field TTL *int64 `type:"long" required:"true"` // The ID of the traffic policy that Amazon Route 53 used to create resource // record sets in the specified hosted zone. // // TrafficPolicyId is a required field TrafficPolicyId *string `type:"string" required:"true"` // The DNS type that Amazon Route 53 assigned to all of the resource record // sets that it created for this traffic policy instance. // // TrafficPolicyType is a required field TrafficPolicyType *string `type:"string" required:"true" enum:"RRType"` // The version of the traffic policy that Amazon Route 53 used to create resource // record sets in the specified hosted zone. // // TrafficPolicyVersion is a required field TrafficPolicyVersion *int64 `min:"1" type:"integer" required:"true"` } // String returns the string representation func (s TrafficPolicyInstance) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TrafficPolicyInstance) GoString() string { return s.String() } // A complex type that contains information about the latest version of one // traffic policy that is associated with the current AWS account. type TrafficPolicySummary struct { _ struct{} `type:"structure"` // The ID that Amazon Route 53 assigned to the traffic policy when you created // it. // // Id is a required field Id *string `type:"string" required:"true"` // The version number of the latest version of the traffic policy. // // LatestVersion is a required field LatestVersion *int64 `min:"1" type:"integer" required:"true"` // The name that you specified for the traffic policy when you created it. // // Name is a required field Name *string `type:"string" required:"true"` // The number of traffic policies that are associated with the current AWS account. // // TrafficPolicyCount is a required field TrafficPolicyCount *int64 `min:"1" type:"integer" required:"true"` // The DNS type of the resource record sets that Amazon Route 53 creates when // you use a traffic policy to create a traffic policy instance. // // Type is a required field Type *string `type:"string" required:"true" enum:"RRType"` } // String returns the string representation func (s TrafficPolicySummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TrafficPolicySummary) GoString() string { return s.String() } // A complex type that contains the health check request information. type UpdateHealthCheckInput struct { _ struct{} `locationName:"UpdateHealthCheckRequest" type:"structure" xmlURI:"https://route53.amazonaws.com/doc/2013-04-01/"` // A complex type that identifies the CloudWatch alarm that you want Amazon // Route 53 health checkers to use to determine whether this health check is // healthy. AlarmIdentifier *AlarmIdentifier `type:"structure"` // A complex type that contains one ChildHealthCheck element for each health // check that you want to associate with a CALCULATED health check. ChildHealthChecks []*string `locationNameList:"ChildHealthCheck" type:"list"` // Specify whether you want Amazon Route 53 to send the value of FullyQualifiedDomainName // to the endpoint in the client_hello message during TLS negotiation. This // allows the endpoint to respond to HTTPS health check requests with the applicable // SSL/TLS certificate. // // Some endpoints require that HTTPS requests include the host name in the client_hello // message. If you don't enable SNI, the status of the health check will be // SSL alert handshake_failure. A health check can also have that status for // other reasons. If SNI is enabled and you're still getting the error, check // the SSL/TLS configuration on your endpoint and confirm that your certificate // is valid. // // The SSL/TLS certificate on your endpoint includes a domain name in the Common // Name field and possibly several more in the Subject Alternative Names field. // One of the domain names in the certificate should match the value that you // specify for FullyQualifiedDomainName. If the endpoint responds to the client_hello // message with a certificate that does not include the domain name that you // specified in FullyQualifiedDomainName, a health checker will retry the handshake. // In the second attempt, the health checker will omit FullyQualifiedDomainName // from the client_hello message. EnableSNI *bool `type:"boolean"` // The number of consecutive health checks that an endpoint must pass or fail // for Amazon Route 53 to change the current status of the endpoint from unhealthy // to healthy or vice versa. For more information, see How Amazon Route 53 Determines // Whether an Endpoint Is Healthy (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-determining-health-of-endpoints.html) // in the Amazon Route 53 Developer Guide. FailureThreshold *int64 `min:"1" type:"integer"` // Amazon Route 53 behavior depends on whether you specify a value for IPAddress. // // If a health check already has a value for IPAddress, you can change the value. // However, you can't update an existing health check to add or remove the value // of IPAddress. // // If you specifyIPAddress: // // The value that you want Amazon Route 53 to pass in the Host header in all // health checks except TCP health checks. This is typically the fully qualified // DNS name of the endpoint on which you want Amazon Route 53 to perform health // checks. When Amazon Route 53 checks the health of an endpoint, here is how // it constructs the Host header: // // * If you specify a value of 80 for Port and HTTP or HTTP_STR_MATCH for // Type, Amazon Route 53 passes the value of FullyQualifiedDomainName to // the endpoint in the Host header. // // * If you specify a value of 443 for Port and HTTPS or HTTPS_STR_MATCH // for Type, Amazon Route 53 passes the value of FullyQualifiedDomainName // to the endpoint in the Host header. // // * If you specify another value for Port and any value except TCP for Type, // Amazon Route 53 passes FullyQualifiedDomainName:Port to the endpoint in // the Host header. // // If you don't specify a value for FullyQualifiedDomainName, Amazon Route 53 // substitutes the value of IPAddress in the Host header in each of the above // cases. // // If you don't specifyIPAddress: // // If you don't specify a value for IPAddress, Amazon Route 53 sends a DNS request // to the domain that you specify in FullyQualifiedDomainName at the interval // you specify in RequestInterval. Using an IP address that DNS returns, Amazon // Route 53 then checks the health of the endpoint. // // If you want to check the health of weighted, latency, or failover resource // record sets and you choose to specify the endpoint only by FullyQualifiedDomainName, // we recommend that you create a separate health check for each endpoint. For // example, create a health check for each HTTP server that is serving content // for www.example.com. For the value of FullyQualifiedDomainName, specify the // domain name of the server (such as us-east-1-www.example.com), not the name // of the resource record sets (www.example.com). // // In this configuration, if the value of FullyQualifiedDomainName matches the // name of the resource record sets and you then associate the health check // with those resource record sets, health check results will be unpredictable. // // In addition, if the value of Type is HTTP, HTTPS, HTTP_STR_MATCH, or HTTPS_STR_MATCH, // Amazon Route 53 passes the value of FullyQualifiedDomainName in the Host // header, as it does when you specify a value for IPAddress. If the value of // Type is TCP, Amazon Route 53 doesn't pass a Host header. FullyQualifiedDomainName *string `type:"string"` // The ID for the health check for which you want detailed information. When // you created the health check, CreateHealthCheck returned the ID in the response, // in the HealthCheckId element. // // HealthCheckId is a required field HealthCheckId *string `location:"uri" locationName:"HealthCheckId" type:"string" required:"true"` // A sequential counter that Amazon Route 53 sets to 1 when you create a health // check and increments by 1 each time you update settings for the health check. // // We recommend that you use GetHealthCheck or ListHealthChecks to get the current // value of HealthCheckVersion for the health check that you want to update, // and that you include that value in your UpdateHealthCheck request. This prevents // Amazon Route 53 from overwriting an intervening update: // // * f the value in the UpdateHealthCheck request matches the value of HealthCheckVersion // in the health check, Amazon Route 53 updates the health check with the // new settings. // // * If the value of HealthCheckVersion in the health check is greater, the // health check was changed after you got the version number. Amazon Route // 53 does not update the health check, and it returns a HealthCheckVersionMismatch // error. HealthCheckVersion *int64 `min:"1" type:"long"` // The number of child health checks that are associated with a CALCULATED health // that Amazon Route 53 must consider healthy for the CALCULATED health check // to be considered healthy. To specify the child health checks that you want // to associate with a CALCULATED health check, use the ChildHealthChecks and // ChildHealthCheck elements. // // Note the following: // // * If you specify a number greater than the number of child health checks, // Amazon Route 53 always considers this health check to be unhealthy. // // * If you specify 0, Amazon Route 53 always considers this health check // to be healthy. HealthThreshold *int64 `type:"integer"` // The IPv4 IP address of the endpoint on which you want Amazon Route 53 to // perform health checks. If you don't specify a value for IPAddress, Amazon // Route 53 sends a DNS request to resolve the domain name that you specify // in FullyQualifiedDomainName at the interval you specify in RequestInterval. // Using an IP address that DNS returns, Amazon Route 53 then checks the health // of the endpoint. // // f the endpoint is an Amazon EC2 instance, we recommend that you create an // Elastic IP address, associate it with your Amazon EC2 instance, and specify // the Elastic IP address for IPAddress. This ensures that the IP address of // your instance never changes. For more information, see Elastic IP Addresses // (EIP) (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) // in the Amazon EC2 User Guide for Linux Instances. // // If a health check already has a value for IPAddress, you can change the value. // However, you can't update an existing health check to add or remove the value // of IPAddress. // // For more information, see UpdateHealthCheckRequest$FullyQualifiedDomainName. IPAddress *string `type:"string"` // When CloudWatch has insufficient data about the metric to determine the alarm // state, the status that you want Amazon Route 53 to assign to the health check: // // * Healthy: Amazon Route 53 considers the health check to be healthy. // // * Unhealthy: Amazon Route 53 considers the health check to be unhealthy. // // * LastKnownStatus: Amazon Route 53 uses the status of the health check // from the last time CloudWatch had sufficient data to determine the alarm // state. For new health checks that have no last known status, the default // status for the health check is healthy. InsufficientDataHealthStatus *string `type:"string" enum:"InsufficientDataHealthStatus"` // Specify whether you want Amazon Route 53 to invert the status of a health // check, for example, to consider a health check unhealthy when it otherwise // would be considered healthy. Inverted *bool `type:"boolean"` // The port on the endpoint on which you want Amazon Route 53 to perform health // checks. Port *int64 `min:"1" type:"integer"` // A complex type that contains one Region element for each region from which // you want Amazon Route 53 health checkers to check the specified endpoint. Regions []*string `locationNameList:"Region" min:"1" type:"list"` // The path that you want Amazon Route 53 to request when performing health // checks. The path can be any value for which your endpoint will return an // HTTP status code of 2xx or 3xx when the endpoint is healthy, for example // the file /docs/route53-health-check.html. // // Specify this value only if you want to change it. ResourcePath *string `type:"string"` // If the value of Type is HTTP_STR_MATCH or HTTP_STR_MATCH, the string that // you want Amazon Route 53 to search for in the response body from the specified // resource. If the string appears in the response body, Amazon Route 53 considers // the resource healthy. (You can't change the value of Type when you update // a health check.) SearchString *string `type:"string"` } // String returns the string representation func (s UpdateHealthCheckInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateHealthCheckInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateHealthCheckInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateHealthCheckInput"} if s.FailureThreshold != nil && *s.FailureThreshold < 1 { invalidParams.Add(request.NewErrParamMinValue("FailureThreshold", 1)) } if s.HealthCheckId == nil { invalidParams.Add(request.NewErrParamRequired("HealthCheckId")) } if s.HealthCheckVersion != nil && *s.HealthCheckVersion < 1 { invalidParams.Add(request.NewErrParamMinValue("HealthCheckVersion", 1)) } if s.Port != nil && *s.Port < 1 { invalidParams.Add(request.NewErrParamMinValue("Port", 1)) } if s.Regions != nil && len(s.Regions) < 1 { invalidParams.Add(request.NewErrParamMinLen("Regions", 1)) } if s.AlarmIdentifier != nil { if err := s.AlarmIdentifier.Validate(); err != nil { invalidParams.AddNested("AlarmIdentifier", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateHealthCheckOutput struct { _ struct{} `type:"structure"` // A complex type that contains information about one health check that is associated // with the current AWS account. // // HealthCheck is a required field HealthCheck *HealthCheck `type:"structure" required:"true"` } // String returns the string representation func (s UpdateHealthCheckOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateHealthCheckOutput) GoString() string { return s.String() } // A complex type that contains the hosted zone request information. type UpdateHostedZoneCommentInput struct { _ struct{} `locationName:"UpdateHostedZoneCommentRequest" type:"structure" xmlURI:"https://route53.amazonaws.com/doc/2013-04-01/"` // The new comment for the hosted zone. If you don't specify a value for Comment, // Amazon Route 53 deletes the existing value of the Comment element, if any. Comment *string `type:"string"` // The ID for the hosted zone for which you want to update the comment. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` } // String returns the string representation func (s UpdateHostedZoneCommentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateHostedZoneCommentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateHostedZoneCommentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateHostedZoneCommentInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the response to the UpdateHostedZoneCommentRequest. type UpdateHostedZoneCommentOutput struct { _ struct{} `type:"structure"` // A complex type that contains general information about the hosted zone. // // HostedZone is a required field HostedZone *HostedZone `type:"structure" required:"true"` } // String returns the string representation func (s UpdateHostedZoneCommentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateHostedZoneCommentOutput) GoString() string { return s.String() } // A complex type that contains information about the traffic policy for which // you want to update the comment. type UpdateTrafficPolicyCommentInput struct { _ struct{} `locationName:"UpdateTrafficPolicyCommentRequest" type:"structure" xmlURI:"https://route53.amazonaws.com/doc/2013-04-01/"` // The new comment for the specified traffic policy and version. // // Comment is a required field Comment *string `type:"string" required:"true"` // The value of Id for the traffic policy for which you want to update the comment. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` // The value of Version for the traffic policy for which you want to update // the comment. // // Version is a required field Version *int64 `location:"uri" locationName:"Version" min:"1" type:"integer" required:"true"` } // String returns the string representation func (s UpdateTrafficPolicyCommentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateTrafficPolicyCommentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateTrafficPolicyCommentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateTrafficPolicyCommentInput"} if s.Comment == nil { invalidParams.Add(request.NewErrParamRequired("Comment")) } if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Version == nil { invalidParams.Add(request.NewErrParamRequired("Version")) } if s.Version != nil && *s.Version < 1 { invalidParams.Add(request.NewErrParamMinValue("Version", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains the response information for the traffic policy. type UpdateTrafficPolicyCommentOutput struct { _ struct{} `type:"structure"` // A complex type that contains settings for the specified traffic policy. // // TrafficPolicy is a required field TrafficPolicy *TrafficPolicy `type:"structure" required:"true"` } // String returns the string representation func (s UpdateTrafficPolicyCommentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateTrafficPolicyCommentOutput) GoString() string { return s.String() } // A complex type that contains information about the resource record sets that // you want to update based on a specified traffic policy instance. type UpdateTrafficPolicyInstanceInput struct { _ struct{} `locationName:"UpdateTrafficPolicyInstanceRequest" type:"structure" xmlURI:"https://route53.amazonaws.com/doc/2013-04-01/"` // The ID of the traffic policy instance that you want to update. // // Id is a required field Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` // The TTL that you want Amazon Route 53 to assign to all of the updated resource // record sets. // // TTL is a required field TTL *int64 `type:"long" required:"true"` // The ID of the traffic policy that you want Amazon Route 53 to use to update // resource record sets for the specified traffic policy instance. // // TrafficPolicyId is a required field TrafficPolicyId *string `type:"string" required:"true"` // The version of the traffic policy that you want Amazon Route 53 to use to // update resource record sets for the specified traffic policy instance. // // TrafficPolicyVersion is a required field TrafficPolicyVersion *int64 `min:"1" type:"integer" required:"true"` } // String returns the string representation func (s UpdateTrafficPolicyInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateTrafficPolicyInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateTrafficPolicyInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateTrafficPolicyInstanceInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.TTL == nil { invalidParams.Add(request.NewErrParamRequired("TTL")) } if s.TrafficPolicyId == nil { invalidParams.Add(request.NewErrParamRequired("TrafficPolicyId")) } if s.TrafficPolicyVersion == nil { invalidParams.Add(request.NewErrParamRequired("TrafficPolicyVersion")) } if s.TrafficPolicyVersion != nil && *s.TrafficPolicyVersion < 1 { invalidParams.Add(request.NewErrParamMinValue("TrafficPolicyVersion", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains information about the resource record sets that // Amazon Route 53 created based on a specified traffic policy. type UpdateTrafficPolicyInstanceOutput struct { _ struct{} `type:"structure"` // A complex type that contains settings for the updated traffic policy instance. // // TrafficPolicyInstance is a required field TrafficPolicyInstance *TrafficPolicyInstance `type:"structure" required:"true"` } // String returns the string representation func (s UpdateTrafficPolicyInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateTrafficPolicyInstanceOutput) GoString() string { return s.String() } // A complex type that contains information about the Amazon VPC that you're // associating with the specified hosted zone. type VPC struct { _ struct{} `type:"structure"` // A VPC ID VPCId *string `type:"string"` // The region in which you created the VPC that you want to associate with the // specified Amazon Route 53 hosted zone. VPCRegion *string `min:"1" type:"string" enum:"VPCRegion"` } // String returns the string representation func (s VPC) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VPC) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *VPC) Validate() error { invalidParams := request.ErrInvalidParams{Context: "VPC"} if s.VPCRegion != nil && len(*s.VPCRegion) < 1 { invalidParams.Add(request.NewErrParamMinLen("VPCRegion", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } const ( // ChangeActionCreate is a ChangeAction enum value ChangeActionCreate = "CREATE" // ChangeActionDelete is a ChangeAction enum value ChangeActionDelete = "DELETE" // ChangeActionUpsert is a ChangeAction enum value ChangeActionUpsert = "UPSERT" ) const ( // ChangeStatusPending is a ChangeStatus enum value ChangeStatusPending = "PENDING" // ChangeStatusInsync is a ChangeStatus enum value ChangeStatusInsync = "INSYNC" ) const ( // CloudWatchRegionUsEast1 is a CloudWatchRegion enum value CloudWatchRegionUsEast1 = "us-east-1" // CloudWatchRegionUsWest1 is a CloudWatchRegion enum value CloudWatchRegionUsWest1 = "us-west-1" // CloudWatchRegionUsWest2 is a CloudWatchRegion enum value CloudWatchRegionUsWest2 = "us-west-2" // CloudWatchRegionEuCentral1 is a CloudWatchRegion enum value CloudWatchRegionEuCentral1 = "eu-central-1" // CloudWatchRegionEuWest1 is a CloudWatchRegion enum value CloudWatchRegionEuWest1 = "eu-west-1" // CloudWatchRegionApSouth1 is a CloudWatchRegion enum value CloudWatchRegionApSouth1 = "ap-south-1" // CloudWatchRegionApSoutheast1 is a CloudWatchRegion enum value CloudWatchRegionApSoutheast1 = "ap-southeast-1" // CloudWatchRegionApSoutheast2 is a CloudWatchRegion enum value CloudWatchRegionApSoutheast2 = "ap-southeast-2" // CloudWatchRegionApNortheast1 is a CloudWatchRegion enum value CloudWatchRegionApNortheast1 = "ap-northeast-1" // CloudWatchRegionApNortheast2 is a CloudWatchRegion enum value CloudWatchRegionApNortheast2 = "ap-northeast-2" // CloudWatchRegionSaEast1 is a CloudWatchRegion enum value CloudWatchRegionSaEast1 = "sa-east-1" ) const ( // ComparisonOperatorGreaterThanOrEqualToThreshold is a ComparisonOperator enum value ComparisonOperatorGreaterThanOrEqualToThreshold = "GreaterThanOrEqualToThreshold" // ComparisonOperatorGreaterThanThreshold is a ComparisonOperator enum value ComparisonOperatorGreaterThanThreshold = "GreaterThanThreshold" // ComparisonOperatorLessThanThreshold is a ComparisonOperator enum value ComparisonOperatorLessThanThreshold = "LessThanThreshold" // ComparisonOperatorLessThanOrEqualToThreshold is a ComparisonOperator enum value ComparisonOperatorLessThanOrEqualToThreshold = "LessThanOrEqualToThreshold" ) // An Amazon EC2 region that you want Amazon Route 53 to use to perform health // checks. const ( // HealthCheckRegionUsEast1 is a HealthCheckRegion enum value HealthCheckRegionUsEast1 = "us-east-1" // HealthCheckRegionUsWest1 is a HealthCheckRegion enum value HealthCheckRegionUsWest1 = "us-west-1" // HealthCheckRegionUsWest2 is a HealthCheckRegion enum value HealthCheckRegionUsWest2 = "us-west-2" // HealthCheckRegionEuWest1 is a HealthCheckRegion enum value HealthCheckRegionEuWest1 = "eu-west-1" // HealthCheckRegionApSoutheast1 is a HealthCheckRegion enum value HealthCheckRegionApSoutheast1 = "ap-southeast-1" // HealthCheckRegionApSoutheast2 is a HealthCheckRegion enum value HealthCheckRegionApSoutheast2 = "ap-southeast-2" // HealthCheckRegionApNortheast1 is a HealthCheckRegion enum value HealthCheckRegionApNortheast1 = "ap-northeast-1" // HealthCheckRegionSaEast1 is a HealthCheckRegion enum value HealthCheckRegionSaEast1 = "sa-east-1" ) const ( // HealthCheckTypeHttp is a HealthCheckType enum value HealthCheckTypeHttp = "HTTP" // HealthCheckTypeHttps is a HealthCheckType enum value HealthCheckTypeHttps = "HTTPS" // HealthCheckTypeHttpStrMatch is a HealthCheckType enum value HealthCheckTypeHttpStrMatch = "HTTP_STR_MATCH" // HealthCheckTypeHttpsStrMatch is a HealthCheckType enum value HealthCheckTypeHttpsStrMatch = "HTTPS_STR_MATCH" // HealthCheckTypeTcp is a HealthCheckType enum value HealthCheckTypeTcp = "TCP" // HealthCheckTypeCalculated is a HealthCheckType enum value HealthCheckTypeCalculated = "CALCULATED" // HealthCheckTypeCloudwatchMetric is a HealthCheckType enum value HealthCheckTypeCloudwatchMetric = "CLOUDWATCH_METRIC" ) const ( // InsufficientDataHealthStatusHealthy is a InsufficientDataHealthStatus enum value InsufficientDataHealthStatusHealthy = "Healthy" // InsufficientDataHealthStatusUnhealthy is a InsufficientDataHealthStatus enum value InsufficientDataHealthStatusUnhealthy = "Unhealthy" // InsufficientDataHealthStatusLastKnownStatus is a InsufficientDataHealthStatus enum value InsufficientDataHealthStatusLastKnownStatus = "LastKnownStatus" ) const ( // RRTypeSoa is a RRType enum value RRTypeSoa = "SOA" // RRTypeA is a RRType enum value RRTypeA = "A" // RRTypeTxt is a RRType enum value RRTypeTxt = "TXT" // RRTypeNs is a RRType enum value RRTypeNs = "NS" // RRTypeCname is a RRType enum value RRTypeCname = "CNAME" // RRTypeMx is a RRType enum value RRTypeMx = "MX" // RRTypeNaptr is a RRType enum value RRTypeNaptr = "NAPTR" // RRTypePtr is a RRType enum value RRTypePtr = "PTR" // RRTypeSrv is a RRType enum value RRTypeSrv = "SRV" // RRTypeSpf is a RRType enum value RRTypeSpf = "SPF" // RRTypeAaaa is a RRType enum value RRTypeAaaa = "AAAA" ) const ( // ResourceRecordSetFailoverPrimary is a ResourceRecordSetFailover enum value ResourceRecordSetFailoverPrimary = "PRIMARY" // ResourceRecordSetFailoverSecondary is a ResourceRecordSetFailover enum value ResourceRecordSetFailoverSecondary = "SECONDARY" ) const ( // ResourceRecordSetRegionUsEast1 is a ResourceRecordSetRegion enum value ResourceRecordSetRegionUsEast1 = "us-east-1" // ResourceRecordSetRegionUsEast2 is a ResourceRecordSetRegion enum value ResourceRecordSetRegionUsEast2 = "us-east-2" // ResourceRecordSetRegionUsWest1 is a ResourceRecordSetRegion enum value ResourceRecordSetRegionUsWest1 = "us-west-1" // ResourceRecordSetRegionUsWest2 is a ResourceRecordSetRegion enum value ResourceRecordSetRegionUsWest2 = "us-west-2" // ResourceRecordSetRegionEuWest1 is a ResourceRecordSetRegion enum value ResourceRecordSetRegionEuWest1 = "eu-west-1" // ResourceRecordSetRegionEuCentral1 is a ResourceRecordSetRegion enum value ResourceRecordSetRegionEuCentral1 = "eu-central-1" // ResourceRecordSetRegionApSoutheast1 is a ResourceRecordSetRegion enum value ResourceRecordSetRegionApSoutheast1 = "ap-southeast-1" // ResourceRecordSetRegionApSoutheast2 is a ResourceRecordSetRegion enum value ResourceRecordSetRegionApSoutheast2 = "ap-southeast-2" // ResourceRecordSetRegionApNortheast1 is a ResourceRecordSetRegion enum value ResourceRecordSetRegionApNortheast1 = "ap-northeast-1" // ResourceRecordSetRegionApNortheast2 is a ResourceRecordSetRegion enum value ResourceRecordSetRegionApNortheast2 = "ap-northeast-2" // ResourceRecordSetRegionSaEast1 is a ResourceRecordSetRegion enum value ResourceRecordSetRegionSaEast1 = "sa-east-1" // ResourceRecordSetRegionCnNorth1 is a ResourceRecordSetRegion enum value ResourceRecordSetRegionCnNorth1 = "cn-north-1" // ResourceRecordSetRegionApSouth1 is a ResourceRecordSetRegion enum value ResourceRecordSetRegionApSouth1 = "ap-south-1" ) const ( // StatisticAverage is a Statistic enum value StatisticAverage = "Average" // StatisticSum is a Statistic enum value StatisticSum = "Sum" // StatisticSampleCount is a Statistic enum value StatisticSampleCount = "SampleCount" // StatisticMaximum is a Statistic enum value StatisticMaximum = "Maximum" // StatisticMinimum is a Statistic enum value StatisticMinimum = "Minimum" ) const ( // TagResourceTypeHealthcheck is a TagResourceType enum value TagResourceTypeHealthcheck = "healthcheck" // TagResourceTypeHostedzone is a TagResourceType enum value TagResourceTypeHostedzone = "hostedzone" ) const ( // VPCRegionUsEast1 is a VPCRegion enum value VPCRegionUsEast1 = "us-east-1" // VPCRegionUsEast2 is a VPCRegion enum value VPCRegionUsEast2 = "us-east-2" // VPCRegionUsWest1 is a VPCRegion enum value VPCRegionUsWest1 = "us-west-1" // VPCRegionUsWest2 is a VPCRegion enum value VPCRegionUsWest2 = "us-west-2" // VPCRegionEuWest1 is a VPCRegion enum value VPCRegionEuWest1 = "eu-west-1" // VPCRegionEuCentral1 is a VPCRegion enum value VPCRegionEuCentral1 = "eu-central-1" // VPCRegionApSoutheast1 is a VPCRegion enum value VPCRegionApSoutheast1 = "ap-southeast-1" // VPCRegionApSoutheast2 is a VPCRegion enum value VPCRegionApSoutheast2 = "ap-southeast-2" // VPCRegionApSouth1 is a VPCRegion enum value VPCRegionApSouth1 = "ap-south-1" // VPCRegionApNortheast1 is a VPCRegion enum value VPCRegionApNortheast1 = "ap-northeast-1" // VPCRegionApNortheast2 is a VPCRegion enum value VPCRegionApNortheast2 = "ap-northeast-2" // VPCRegionSaEast1 is a VPCRegion enum value VPCRegionSaEast1 = "sa-east-1" // VPCRegionCnNorth1 is a VPCRegion enum value VPCRegionCnNorth1 = "cn-north-1" ) aws-sdk-go-1.4.22/service/route53/customizations.go000066400000000000000000000013211300374646400221500ustar00rootroot00000000000000package route53 import ( "regexp" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol/restxml" ) func init() { initClient = func(c *client.Client) { c.Handlers.Build.PushBack(sanitizeURL) } initRequest = func(r *request.Request) { switch r.Operation.Name { case opChangeResourceRecordSets: r.Handlers.UnmarshalError.Remove(restxml.UnmarshalErrorHandler) r.Handlers.UnmarshalError.PushBack(unmarshalChangeResourceRecordSetsError) } } } var reSanitizeURL = regexp.MustCompile(`\/%2F\w+%2F`) func sanitizeURL(r *request.Request) { r.HTTPRequest.URL.Opaque = reSanitizeURL.ReplaceAllString(r.HTTPRequest.URL.Opaque, "/") } aws-sdk-go-1.4.22/service/route53/customizations_test.go000066400000000000000000000010071300374646400232100ustar00rootroot00000000000000package route53_test import ( "testing" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/route53" ) func TestBuildCorrectURI(t *testing.T) { svc := route53.New(unit.Session) svc.Handlers.Validate.Clear() req, _ := svc.GetHostedZoneRequest(&route53.GetHostedZoneInput{ Id: aws.String("/hostedzone/ABCDEFG"), }) req.Build() awstesting.Match(t, `\/hostedzone\/ABCDEFG$`, req.HTTPRequest.URL.String()) } aws-sdk-go-1.4.22/service/route53/examples_test.go000066400000000000000000001047141300374646400217440ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package route53_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/route53" ) var _ time.Duration var _ bytes.Buffer func ExampleRoute53_AssociateVPCWithHostedZone() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.AssociateVPCWithHostedZoneInput{ HostedZoneId: aws.String("ResourceId"), // Required VPC: &route53.VPC{ // Required VPCId: aws.String("VPCId"), VPCRegion: aws.String("VPCRegion"), }, Comment: aws.String("AssociateVPCComment"), } resp, err := svc.AssociateVPCWithHostedZone(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_ChangeResourceRecordSets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.ChangeResourceRecordSetsInput{ ChangeBatch: &route53.ChangeBatch{ // Required Changes: []*route53.Change{ // Required { // Required Action: aws.String("ChangeAction"), // Required ResourceRecordSet: &route53.ResourceRecordSet{ // Required Name: aws.String("DNSName"), // Required Type: aws.String("RRType"), // Required AliasTarget: &route53.AliasTarget{ DNSName: aws.String("DNSName"), // Required EvaluateTargetHealth: aws.Bool(true), // Required HostedZoneId: aws.String("ResourceId"), // Required }, Failover: aws.String("ResourceRecordSetFailover"), GeoLocation: &route53.GeoLocation{ ContinentCode: aws.String("GeoLocationContinentCode"), CountryCode: aws.String("GeoLocationCountryCode"), SubdivisionCode: aws.String("GeoLocationSubdivisionCode"), }, HealthCheckId: aws.String("HealthCheckId"), Region: aws.String("ResourceRecordSetRegion"), ResourceRecords: []*route53.ResourceRecord{ { // Required Value: aws.String("RData"), // Required }, // More values... }, SetIdentifier: aws.String("ResourceRecordSetIdentifier"), TTL: aws.Int64(1), TrafficPolicyInstanceId: aws.String("TrafficPolicyInstanceId"), Weight: aws.Int64(1), }, }, // More values... }, Comment: aws.String("ResourceDescription"), }, HostedZoneId: aws.String("ResourceId"), // Required } resp, err := svc.ChangeResourceRecordSets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_ChangeTagsForResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.ChangeTagsForResourceInput{ ResourceId: aws.String("TagResourceId"), // Required ResourceType: aws.String("TagResourceType"), // Required AddTags: []*route53.Tag{ { // Required Key: aws.String("TagKey"), Value: aws.String("TagValue"), }, // More values... }, RemoveTagKeys: []*string{ aws.String("TagKey"), // Required // More values... }, } resp, err := svc.ChangeTagsForResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_CreateHealthCheck() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.CreateHealthCheckInput{ CallerReference: aws.String("HealthCheckNonce"), // Required HealthCheckConfig: &route53.HealthCheckConfig{ // Required Type: aws.String("HealthCheckType"), // Required AlarmIdentifier: &route53.AlarmIdentifier{ Name: aws.String("AlarmName"), // Required Region: aws.String("CloudWatchRegion"), // Required }, ChildHealthChecks: []*string{ aws.String("HealthCheckId"), // Required // More values... }, EnableSNI: aws.Bool(true), FailureThreshold: aws.Int64(1), FullyQualifiedDomainName: aws.String("FullyQualifiedDomainName"), HealthThreshold: aws.Int64(1), IPAddress: aws.String("IPAddress"), InsufficientDataHealthStatus: aws.String("InsufficientDataHealthStatus"), Inverted: aws.Bool(true), MeasureLatency: aws.Bool(true), Port: aws.Int64(1), Regions: []*string{ aws.String("HealthCheckRegion"), // Required // More values... }, RequestInterval: aws.Int64(1), ResourcePath: aws.String("ResourcePath"), SearchString: aws.String("SearchString"), }, } resp, err := svc.CreateHealthCheck(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_CreateHostedZone() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.CreateHostedZoneInput{ CallerReference: aws.String("Nonce"), // Required Name: aws.String("DNSName"), // Required DelegationSetId: aws.String("ResourceId"), HostedZoneConfig: &route53.HostedZoneConfig{ Comment: aws.String("ResourceDescription"), PrivateZone: aws.Bool(true), }, VPC: &route53.VPC{ VPCId: aws.String("VPCId"), VPCRegion: aws.String("VPCRegion"), }, } resp, err := svc.CreateHostedZone(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_CreateReusableDelegationSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.CreateReusableDelegationSetInput{ CallerReference: aws.String("Nonce"), // Required HostedZoneId: aws.String("ResourceId"), } resp, err := svc.CreateReusableDelegationSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_CreateTrafficPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.CreateTrafficPolicyInput{ Document: aws.String("TrafficPolicyDocument"), // Required Name: aws.String("TrafficPolicyName"), // Required Comment: aws.String("TrafficPolicyComment"), } resp, err := svc.CreateTrafficPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_CreateTrafficPolicyInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.CreateTrafficPolicyInstanceInput{ HostedZoneId: aws.String("ResourceId"), // Required Name: aws.String("DNSName"), // Required TTL: aws.Int64(1), // Required TrafficPolicyId: aws.String("TrafficPolicyId"), // Required TrafficPolicyVersion: aws.Int64(1), // Required } resp, err := svc.CreateTrafficPolicyInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_CreateTrafficPolicyVersion() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.CreateTrafficPolicyVersionInput{ Document: aws.String("TrafficPolicyDocument"), // Required Id: aws.String("TrafficPolicyId"), // Required Comment: aws.String("TrafficPolicyComment"), } resp, err := svc.CreateTrafficPolicyVersion(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_DeleteHealthCheck() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.DeleteHealthCheckInput{ HealthCheckId: aws.String("HealthCheckId"), // Required } resp, err := svc.DeleteHealthCheck(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_DeleteHostedZone() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.DeleteHostedZoneInput{ Id: aws.String("ResourceId"), // Required } resp, err := svc.DeleteHostedZone(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_DeleteReusableDelegationSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.DeleteReusableDelegationSetInput{ Id: aws.String("ResourceId"), // Required } resp, err := svc.DeleteReusableDelegationSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_DeleteTrafficPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.DeleteTrafficPolicyInput{ Id: aws.String("TrafficPolicyId"), // Required Version: aws.Int64(1), // Required } resp, err := svc.DeleteTrafficPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_DeleteTrafficPolicyInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.DeleteTrafficPolicyInstanceInput{ Id: aws.String("TrafficPolicyInstanceId"), // Required } resp, err := svc.DeleteTrafficPolicyInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_DisassociateVPCFromHostedZone() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.DisassociateVPCFromHostedZoneInput{ HostedZoneId: aws.String("ResourceId"), // Required VPC: &route53.VPC{ // Required VPCId: aws.String("VPCId"), VPCRegion: aws.String("VPCRegion"), }, Comment: aws.String("DisassociateVPCComment"), } resp, err := svc.DisassociateVPCFromHostedZone(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_GetChange() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.GetChangeInput{ Id: aws.String("ResourceId"), // Required } resp, err := svc.GetChange(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_GetChangeDetails() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.GetChangeDetailsInput{ Id: aws.String("ResourceId"), // Required } resp, err := svc.GetChangeDetails(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_GetCheckerIpRanges() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) var params *route53.GetCheckerIpRangesInput resp, err := svc.GetCheckerIpRanges(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_GetGeoLocation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.GetGeoLocationInput{ ContinentCode: aws.String("GeoLocationContinentCode"), CountryCode: aws.String("GeoLocationCountryCode"), SubdivisionCode: aws.String("GeoLocationSubdivisionCode"), } resp, err := svc.GetGeoLocation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_GetHealthCheck() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.GetHealthCheckInput{ HealthCheckId: aws.String("HealthCheckId"), // Required } resp, err := svc.GetHealthCheck(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_GetHealthCheckCount() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) var params *route53.GetHealthCheckCountInput resp, err := svc.GetHealthCheckCount(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_GetHealthCheckLastFailureReason() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.GetHealthCheckLastFailureReasonInput{ HealthCheckId: aws.String("HealthCheckId"), // Required } resp, err := svc.GetHealthCheckLastFailureReason(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_GetHealthCheckStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.GetHealthCheckStatusInput{ HealthCheckId: aws.String("HealthCheckId"), // Required } resp, err := svc.GetHealthCheckStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_GetHostedZone() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.GetHostedZoneInput{ Id: aws.String("ResourceId"), // Required } resp, err := svc.GetHostedZone(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_GetHostedZoneCount() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) var params *route53.GetHostedZoneCountInput resp, err := svc.GetHostedZoneCount(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_GetReusableDelegationSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.GetReusableDelegationSetInput{ Id: aws.String("ResourceId"), // Required } resp, err := svc.GetReusableDelegationSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_GetTrafficPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.GetTrafficPolicyInput{ Id: aws.String("TrafficPolicyId"), // Required Version: aws.Int64(1), // Required } resp, err := svc.GetTrafficPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_GetTrafficPolicyInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.GetTrafficPolicyInstanceInput{ Id: aws.String("TrafficPolicyInstanceId"), // Required } resp, err := svc.GetTrafficPolicyInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_GetTrafficPolicyInstanceCount() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) var params *route53.GetTrafficPolicyInstanceCountInput resp, err := svc.GetTrafficPolicyInstanceCount(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_ListChangeBatchesByHostedZone() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.ListChangeBatchesByHostedZoneInput{ EndDate: aws.String("Date"), // Required HostedZoneId: aws.String("ResourceId"), // Required StartDate: aws.String("Date"), // Required Marker: aws.String("PageMarker"), MaxItems: aws.String("PageMaxItems"), } resp, err := svc.ListChangeBatchesByHostedZone(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_ListChangeBatchesByRRSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.ListChangeBatchesByRRSetInput{ EndDate: aws.String("Date"), // Required HostedZoneId: aws.String("ResourceId"), // Required Name: aws.String("DNSName"), // Required StartDate: aws.String("Date"), // Required Type: aws.String("RRType"), // Required Marker: aws.String("PageMarker"), MaxItems: aws.String("PageMaxItems"), SetIdentifier: aws.String("ResourceRecordSetIdentifier"), } resp, err := svc.ListChangeBatchesByRRSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_ListGeoLocations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.ListGeoLocationsInput{ MaxItems: aws.String("PageMaxItems"), StartContinentCode: aws.String("GeoLocationContinentCode"), StartCountryCode: aws.String("GeoLocationCountryCode"), StartSubdivisionCode: aws.String("GeoLocationSubdivisionCode"), } resp, err := svc.ListGeoLocations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_ListHealthChecks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.ListHealthChecksInput{ Marker: aws.String("PageMarker"), MaxItems: aws.String("PageMaxItems"), } resp, err := svc.ListHealthChecks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_ListHostedZones() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.ListHostedZonesInput{ DelegationSetId: aws.String("ResourceId"), Marker: aws.String("PageMarker"), MaxItems: aws.String("PageMaxItems"), } resp, err := svc.ListHostedZones(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_ListHostedZonesByName() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.ListHostedZonesByNameInput{ DNSName: aws.String("DNSName"), HostedZoneId: aws.String("ResourceId"), MaxItems: aws.String("PageMaxItems"), } resp, err := svc.ListHostedZonesByName(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_ListResourceRecordSets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.ListResourceRecordSetsInput{ HostedZoneId: aws.String("ResourceId"), // Required MaxItems: aws.String("PageMaxItems"), StartRecordIdentifier: aws.String("ResourceRecordSetIdentifier"), StartRecordName: aws.String("DNSName"), StartRecordType: aws.String("RRType"), } resp, err := svc.ListResourceRecordSets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_ListReusableDelegationSets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.ListReusableDelegationSetsInput{ Marker: aws.String("PageMarker"), MaxItems: aws.String("PageMaxItems"), } resp, err := svc.ListReusableDelegationSets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_ListTagsForResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.ListTagsForResourceInput{ ResourceId: aws.String("TagResourceId"), // Required ResourceType: aws.String("TagResourceType"), // Required } resp, err := svc.ListTagsForResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_ListTagsForResources() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.ListTagsForResourcesInput{ ResourceIds: []*string{ // Required aws.String("TagResourceId"), // Required // More values... }, ResourceType: aws.String("TagResourceType"), // Required } resp, err := svc.ListTagsForResources(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_ListTrafficPolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.ListTrafficPoliciesInput{ MaxItems: aws.String("PageMaxItems"), TrafficPolicyIdMarker: aws.String("TrafficPolicyId"), } resp, err := svc.ListTrafficPolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_ListTrafficPolicyInstances() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.ListTrafficPolicyInstancesInput{ HostedZoneIdMarker: aws.String("ResourceId"), MaxItems: aws.String("PageMaxItems"), TrafficPolicyInstanceNameMarker: aws.String("DNSName"), TrafficPolicyInstanceTypeMarker: aws.String("RRType"), } resp, err := svc.ListTrafficPolicyInstances(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_ListTrafficPolicyInstancesByHostedZone() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.ListTrafficPolicyInstancesByHostedZoneInput{ HostedZoneId: aws.String("ResourceId"), // Required MaxItems: aws.String("PageMaxItems"), TrafficPolicyInstanceNameMarker: aws.String("DNSName"), TrafficPolicyInstanceTypeMarker: aws.String("RRType"), } resp, err := svc.ListTrafficPolicyInstancesByHostedZone(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_ListTrafficPolicyInstancesByPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.ListTrafficPolicyInstancesByPolicyInput{ TrafficPolicyId: aws.String("TrafficPolicyId"), // Required TrafficPolicyVersion: aws.Int64(1), // Required HostedZoneIdMarker: aws.String("ResourceId"), MaxItems: aws.String("PageMaxItems"), TrafficPolicyInstanceNameMarker: aws.String("DNSName"), TrafficPolicyInstanceTypeMarker: aws.String("RRType"), } resp, err := svc.ListTrafficPolicyInstancesByPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_ListTrafficPolicyVersions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.ListTrafficPolicyVersionsInput{ Id: aws.String("TrafficPolicyId"), // Required MaxItems: aws.String("PageMaxItems"), TrafficPolicyVersionMarker: aws.String("TrafficPolicyVersionMarker"), } resp, err := svc.ListTrafficPolicyVersions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_TestDNSAnswer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.TestDNSAnswerInput{ HostedZoneId: aws.String("ResourceId"), // Required RecordName: aws.String("DNSName"), // Required RecordType: aws.String("RRType"), // Required EDNS0ClientSubnetIP: aws.String("IPAddress"), EDNS0ClientSubnetMask: aws.String("SubnetMask"), ResolverIP: aws.String("IPAddress"), } resp, err := svc.TestDNSAnswer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_UpdateHealthCheck() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.UpdateHealthCheckInput{ HealthCheckId: aws.String("HealthCheckId"), // Required AlarmIdentifier: &route53.AlarmIdentifier{ Name: aws.String("AlarmName"), // Required Region: aws.String("CloudWatchRegion"), // Required }, ChildHealthChecks: []*string{ aws.String("HealthCheckId"), // Required // More values... }, EnableSNI: aws.Bool(true), FailureThreshold: aws.Int64(1), FullyQualifiedDomainName: aws.String("FullyQualifiedDomainName"), HealthCheckVersion: aws.Int64(1), HealthThreshold: aws.Int64(1), IPAddress: aws.String("IPAddress"), InsufficientDataHealthStatus: aws.String("InsufficientDataHealthStatus"), Inverted: aws.Bool(true), Port: aws.Int64(1), Regions: []*string{ aws.String("HealthCheckRegion"), // Required // More values... }, ResourcePath: aws.String("ResourcePath"), SearchString: aws.String("SearchString"), } resp, err := svc.UpdateHealthCheck(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_UpdateHostedZoneComment() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.UpdateHostedZoneCommentInput{ Id: aws.String("ResourceId"), // Required Comment: aws.String("ResourceDescription"), } resp, err := svc.UpdateHostedZoneComment(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_UpdateTrafficPolicyComment() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.UpdateTrafficPolicyCommentInput{ Comment: aws.String("TrafficPolicyComment"), // Required Id: aws.String("TrafficPolicyId"), // Required Version: aws.Int64(1), // Required } resp, err := svc.UpdateTrafficPolicyComment(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53_UpdateTrafficPolicyInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53.New(sess) params := &route53.UpdateTrafficPolicyInstanceInput{ Id: aws.String("TrafficPolicyInstanceId"), // Required TTL: aws.Int64(1), // Required TrafficPolicyId: aws.String("TrafficPolicyId"), // Required TrafficPolicyVersion: aws.Int64(1), // Required } resp, err := svc.UpdateTrafficPolicyInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/route53/route53iface/000077500000000000000000000000001300374646400210275ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/route53/route53iface/interface.go000066400000000000000000000335411300374646400233240ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package route53iface provides an interface to enable mocking the Amazon Route 53 service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package route53iface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/route53" ) // Route53API provides an interface to enable mocking the // route53.Route53 service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Route 53. // func myFunc(svc route53iface.Route53API) bool { // // Make svc.AssociateVPCWithHostedZone request // } // // func main() { // sess := session.New() // svc := route53.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockRoute53Client struct { // route53iface.Route53API // } // func (m *mockRoute53Client) AssociateVPCWithHostedZone(input *route53.AssociateVPCWithHostedZoneInput) (*route53.AssociateVPCWithHostedZoneOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockRoute53Client{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type Route53API interface { AssociateVPCWithHostedZoneRequest(*route53.AssociateVPCWithHostedZoneInput) (*request.Request, *route53.AssociateVPCWithHostedZoneOutput) AssociateVPCWithHostedZone(*route53.AssociateVPCWithHostedZoneInput) (*route53.AssociateVPCWithHostedZoneOutput, error) ChangeResourceRecordSetsRequest(*route53.ChangeResourceRecordSetsInput) (*request.Request, *route53.ChangeResourceRecordSetsOutput) ChangeResourceRecordSets(*route53.ChangeResourceRecordSetsInput) (*route53.ChangeResourceRecordSetsOutput, error) ChangeTagsForResourceRequest(*route53.ChangeTagsForResourceInput) (*request.Request, *route53.ChangeTagsForResourceOutput) ChangeTagsForResource(*route53.ChangeTagsForResourceInput) (*route53.ChangeTagsForResourceOutput, error) CreateHealthCheckRequest(*route53.CreateHealthCheckInput) (*request.Request, *route53.CreateHealthCheckOutput) CreateHealthCheck(*route53.CreateHealthCheckInput) (*route53.CreateHealthCheckOutput, error) CreateHostedZoneRequest(*route53.CreateHostedZoneInput) (*request.Request, *route53.CreateHostedZoneOutput) CreateHostedZone(*route53.CreateHostedZoneInput) (*route53.CreateHostedZoneOutput, error) CreateReusableDelegationSetRequest(*route53.CreateReusableDelegationSetInput) (*request.Request, *route53.CreateReusableDelegationSetOutput) CreateReusableDelegationSet(*route53.CreateReusableDelegationSetInput) (*route53.CreateReusableDelegationSetOutput, error) CreateTrafficPolicyRequest(*route53.CreateTrafficPolicyInput) (*request.Request, *route53.CreateTrafficPolicyOutput) CreateTrafficPolicy(*route53.CreateTrafficPolicyInput) (*route53.CreateTrafficPolicyOutput, error) CreateTrafficPolicyInstanceRequest(*route53.CreateTrafficPolicyInstanceInput) (*request.Request, *route53.CreateTrafficPolicyInstanceOutput) CreateTrafficPolicyInstance(*route53.CreateTrafficPolicyInstanceInput) (*route53.CreateTrafficPolicyInstanceOutput, error) CreateTrafficPolicyVersionRequest(*route53.CreateTrafficPolicyVersionInput) (*request.Request, *route53.CreateTrafficPolicyVersionOutput) CreateTrafficPolicyVersion(*route53.CreateTrafficPolicyVersionInput) (*route53.CreateTrafficPolicyVersionOutput, error) DeleteHealthCheckRequest(*route53.DeleteHealthCheckInput) (*request.Request, *route53.DeleteHealthCheckOutput) DeleteHealthCheck(*route53.DeleteHealthCheckInput) (*route53.DeleteHealthCheckOutput, error) DeleteHostedZoneRequest(*route53.DeleteHostedZoneInput) (*request.Request, *route53.DeleteHostedZoneOutput) DeleteHostedZone(*route53.DeleteHostedZoneInput) (*route53.DeleteHostedZoneOutput, error) DeleteReusableDelegationSetRequest(*route53.DeleteReusableDelegationSetInput) (*request.Request, *route53.DeleteReusableDelegationSetOutput) DeleteReusableDelegationSet(*route53.DeleteReusableDelegationSetInput) (*route53.DeleteReusableDelegationSetOutput, error) DeleteTrafficPolicyRequest(*route53.DeleteTrafficPolicyInput) (*request.Request, *route53.DeleteTrafficPolicyOutput) DeleteTrafficPolicy(*route53.DeleteTrafficPolicyInput) (*route53.DeleteTrafficPolicyOutput, error) DeleteTrafficPolicyInstanceRequest(*route53.DeleteTrafficPolicyInstanceInput) (*request.Request, *route53.DeleteTrafficPolicyInstanceOutput) DeleteTrafficPolicyInstance(*route53.DeleteTrafficPolicyInstanceInput) (*route53.DeleteTrafficPolicyInstanceOutput, error) DisassociateVPCFromHostedZoneRequest(*route53.DisassociateVPCFromHostedZoneInput) (*request.Request, *route53.DisassociateVPCFromHostedZoneOutput) DisassociateVPCFromHostedZone(*route53.DisassociateVPCFromHostedZoneInput) (*route53.DisassociateVPCFromHostedZoneOutput, error) GetChangeRequest(*route53.GetChangeInput) (*request.Request, *route53.GetChangeOutput) GetChange(*route53.GetChangeInput) (*route53.GetChangeOutput, error) GetChangeDetailsRequest(*route53.GetChangeDetailsInput) (*request.Request, *route53.GetChangeDetailsOutput) GetChangeDetails(*route53.GetChangeDetailsInput) (*route53.GetChangeDetailsOutput, error) GetCheckerIpRangesRequest(*route53.GetCheckerIpRangesInput) (*request.Request, *route53.GetCheckerIpRangesOutput) GetCheckerIpRanges(*route53.GetCheckerIpRangesInput) (*route53.GetCheckerIpRangesOutput, error) GetGeoLocationRequest(*route53.GetGeoLocationInput) (*request.Request, *route53.GetGeoLocationOutput) GetGeoLocation(*route53.GetGeoLocationInput) (*route53.GetGeoLocationOutput, error) GetHealthCheckRequest(*route53.GetHealthCheckInput) (*request.Request, *route53.GetHealthCheckOutput) GetHealthCheck(*route53.GetHealthCheckInput) (*route53.GetHealthCheckOutput, error) GetHealthCheckCountRequest(*route53.GetHealthCheckCountInput) (*request.Request, *route53.GetHealthCheckCountOutput) GetHealthCheckCount(*route53.GetHealthCheckCountInput) (*route53.GetHealthCheckCountOutput, error) GetHealthCheckLastFailureReasonRequest(*route53.GetHealthCheckLastFailureReasonInput) (*request.Request, *route53.GetHealthCheckLastFailureReasonOutput) GetHealthCheckLastFailureReason(*route53.GetHealthCheckLastFailureReasonInput) (*route53.GetHealthCheckLastFailureReasonOutput, error) GetHealthCheckStatusRequest(*route53.GetHealthCheckStatusInput) (*request.Request, *route53.GetHealthCheckStatusOutput) GetHealthCheckStatus(*route53.GetHealthCheckStatusInput) (*route53.GetHealthCheckStatusOutput, error) GetHostedZoneRequest(*route53.GetHostedZoneInput) (*request.Request, *route53.GetHostedZoneOutput) GetHostedZone(*route53.GetHostedZoneInput) (*route53.GetHostedZoneOutput, error) GetHostedZoneCountRequest(*route53.GetHostedZoneCountInput) (*request.Request, *route53.GetHostedZoneCountOutput) GetHostedZoneCount(*route53.GetHostedZoneCountInput) (*route53.GetHostedZoneCountOutput, error) GetReusableDelegationSetRequest(*route53.GetReusableDelegationSetInput) (*request.Request, *route53.GetReusableDelegationSetOutput) GetReusableDelegationSet(*route53.GetReusableDelegationSetInput) (*route53.GetReusableDelegationSetOutput, error) GetTrafficPolicyRequest(*route53.GetTrafficPolicyInput) (*request.Request, *route53.GetTrafficPolicyOutput) GetTrafficPolicy(*route53.GetTrafficPolicyInput) (*route53.GetTrafficPolicyOutput, error) GetTrafficPolicyInstanceRequest(*route53.GetTrafficPolicyInstanceInput) (*request.Request, *route53.GetTrafficPolicyInstanceOutput) GetTrafficPolicyInstance(*route53.GetTrafficPolicyInstanceInput) (*route53.GetTrafficPolicyInstanceOutput, error) GetTrafficPolicyInstanceCountRequest(*route53.GetTrafficPolicyInstanceCountInput) (*request.Request, *route53.GetTrafficPolicyInstanceCountOutput) GetTrafficPolicyInstanceCount(*route53.GetTrafficPolicyInstanceCountInput) (*route53.GetTrafficPolicyInstanceCountOutput, error) ListChangeBatchesByHostedZoneRequest(*route53.ListChangeBatchesByHostedZoneInput) (*request.Request, *route53.ListChangeBatchesByHostedZoneOutput) ListChangeBatchesByHostedZone(*route53.ListChangeBatchesByHostedZoneInput) (*route53.ListChangeBatchesByHostedZoneOutput, error) ListChangeBatchesByRRSetRequest(*route53.ListChangeBatchesByRRSetInput) (*request.Request, *route53.ListChangeBatchesByRRSetOutput) ListChangeBatchesByRRSet(*route53.ListChangeBatchesByRRSetInput) (*route53.ListChangeBatchesByRRSetOutput, error) ListGeoLocationsRequest(*route53.ListGeoLocationsInput) (*request.Request, *route53.ListGeoLocationsOutput) ListGeoLocations(*route53.ListGeoLocationsInput) (*route53.ListGeoLocationsOutput, error) ListHealthChecksRequest(*route53.ListHealthChecksInput) (*request.Request, *route53.ListHealthChecksOutput) ListHealthChecks(*route53.ListHealthChecksInput) (*route53.ListHealthChecksOutput, error) ListHealthChecksPages(*route53.ListHealthChecksInput, func(*route53.ListHealthChecksOutput, bool) bool) error ListHostedZonesRequest(*route53.ListHostedZonesInput) (*request.Request, *route53.ListHostedZonesOutput) ListHostedZones(*route53.ListHostedZonesInput) (*route53.ListHostedZonesOutput, error) ListHostedZonesPages(*route53.ListHostedZonesInput, func(*route53.ListHostedZonesOutput, bool) bool) error ListHostedZonesByNameRequest(*route53.ListHostedZonesByNameInput) (*request.Request, *route53.ListHostedZonesByNameOutput) ListHostedZonesByName(*route53.ListHostedZonesByNameInput) (*route53.ListHostedZonesByNameOutput, error) ListResourceRecordSetsRequest(*route53.ListResourceRecordSetsInput) (*request.Request, *route53.ListResourceRecordSetsOutput) ListResourceRecordSets(*route53.ListResourceRecordSetsInput) (*route53.ListResourceRecordSetsOutput, error) ListResourceRecordSetsPages(*route53.ListResourceRecordSetsInput, func(*route53.ListResourceRecordSetsOutput, bool) bool) error ListReusableDelegationSetsRequest(*route53.ListReusableDelegationSetsInput) (*request.Request, *route53.ListReusableDelegationSetsOutput) ListReusableDelegationSets(*route53.ListReusableDelegationSetsInput) (*route53.ListReusableDelegationSetsOutput, error) ListTagsForResourceRequest(*route53.ListTagsForResourceInput) (*request.Request, *route53.ListTagsForResourceOutput) ListTagsForResource(*route53.ListTagsForResourceInput) (*route53.ListTagsForResourceOutput, error) ListTagsForResourcesRequest(*route53.ListTagsForResourcesInput) (*request.Request, *route53.ListTagsForResourcesOutput) ListTagsForResources(*route53.ListTagsForResourcesInput) (*route53.ListTagsForResourcesOutput, error) ListTrafficPoliciesRequest(*route53.ListTrafficPoliciesInput) (*request.Request, *route53.ListTrafficPoliciesOutput) ListTrafficPolicies(*route53.ListTrafficPoliciesInput) (*route53.ListTrafficPoliciesOutput, error) ListTrafficPolicyInstancesRequest(*route53.ListTrafficPolicyInstancesInput) (*request.Request, *route53.ListTrafficPolicyInstancesOutput) ListTrafficPolicyInstances(*route53.ListTrafficPolicyInstancesInput) (*route53.ListTrafficPolicyInstancesOutput, error) ListTrafficPolicyInstancesByHostedZoneRequest(*route53.ListTrafficPolicyInstancesByHostedZoneInput) (*request.Request, *route53.ListTrafficPolicyInstancesByHostedZoneOutput) ListTrafficPolicyInstancesByHostedZone(*route53.ListTrafficPolicyInstancesByHostedZoneInput) (*route53.ListTrafficPolicyInstancesByHostedZoneOutput, error) ListTrafficPolicyInstancesByPolicyRequest(*route53.ListTrafficPolicyInstancesByPolicyInput) (*request.Request, *route53.ListTrafficPolicyInstancesByPolicyOutput) ListTrafficPolicyInstancesByPolicy(*route53.ListTrafficPolicyInstancesByPolicyInput) (*route53.ListTrafficPolicyInstancesByPolicyOutput, error) ListTrafficPolicyVersionsRequest(*route53.ListTrafficPolicyVersionsInput) (*request.Request, *route53.ListTrafficPolicyVersionsOutput) ListTrafficPolicyVersions(*route53.ListTrafficPolicyVersionsInput) (*route53.ListTrafficPolicyVersionsOutput, error) TestDNSAnswerRequest(*route53.TestDNSAnswerInput) (*request.Request, *route53.TestDNSAnswerOutput) TestDNSAnswer(*route53.TestDNSAnswerInput) (*route53.TestDNSAnswerOutput, error) UpdateHealthCheckRequest(*route53.UpdateHealthCheckInput) (*request.Request, *route53.UpdateHealthCheckOutput) UpdateHealthCheck(*route53.UpdateHealthCheckInput) (*route53.UpdateHealthCheckOutput, error) UpdateHostedZoneCommentRequest(*route53.UpdateHostedZoneCommentInput) (*request.Request, *route53.UpdateHostedZoneCommentOutput) UpdateHostedZoneComment(*route53.UpdateHostedZoneCommentInput) (*route53.UpdateHostedZoneCommentOutput, error) UpdateTrafficPolicyCommentRequest(*route53.UpdateTrafficPolicyCommentInput) (*request.Request, *route53.UpdateTrafficPolicyCommentOutput) UpdateTrafficPolicyComment(*route53.UpdateTrafficPolicyCommentInput) (*route53.UpdateTrafficPolicyCommentOutput, error) UpdateTrafficPolicyInstanceRequest(*route53.UpdateTrafficPolicyInstanceInput) (*request.Request, *route53.UpdateTrafficPolicyInstanceOutput) UpdateTrafficPolicyInstance(*route53.UpdateTrafficPolicyInstanceInput) (*route53.UpdateTrafficPolicyInstanceOutput, error) WaitUntilResourceRecordSetsChanged(*route53.GetChangeInput) error } var _ Route53API = (*route53.Route53)(nil) aws-sdk-go-1.4.22/service/route53/service.go000066400000000000000000000051761300374646400205310ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package route53 import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/restxml" ) // Route53 is a client for Route 53. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type Route53 struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "route53" // New creates a new instance of the Route53 client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a Route53 client from just a session. // svc := route53.New(mySession) // // // Create a Route53 client with additional configuration // svc := route53.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *Route53 { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *Route53 { svc := &Route53{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2013-04-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a Route53 operation and runs any // custom request initialization. func (c *Route53) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/route53/unmarshal_error.go000066400000000000000000000036361300374646400222730ustar00rootroot00000000000000package route53 import ( "bytes" "encoding/xml" "io/ioutil" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol/restxml" ) type baseXMLErrorResponse struct { XMLName xml.Name } type standardXMLErrorResponse struct { XMLName xml.Name `xml:"ErrorResponse"` Code string `xml:"Error>Code"` Message string `xml:"Error>Message"` RequestID string `xml:"RequestId"` } type invalidChangeBatchXMLErrorResponse struct { XMLName xml.Name `xml:"InvalidChangeBatch"` Messages []string `xml:"Messages>Message"` } func unmarshalChangeResourceRecordSetsError(r *request.Request) { defer r.HTTPResponse.Body.Close() responseBody, err := ioutil.ReadAll(r.HTTPResponse.Body) if err != nil { r.Error = awserr.New("SerializationError", "failed to read Route53 XML error response", err) return } baseError := &baseXMLErrorResponse{} if err := xml.Unmarshal(responseBody, baseError); err != nil { r.Error = awserr.New("SerializationError", "failed to decode Route53 XML error response", err) return } switch baseError.XMLName.Local { case "InvalidChangeBatch": unmarshalInvalidChangeBatchError(r, responseBody) default: r.HTTPResponse.Body = ioutil.NopCloser(bytes.NewReader(responseBody)) restxml.UnmarshalError(r) } } func unmarshalInvalidChangeBatchError(r *request.Request, requestBody []byte) { resp := &invalidChangeBatchXMLErrorResponse{} err := xml.Unmarshal(requestBody, resp) if err != nil { r.Error = awserr.New("SerializationError", "failed to decode query XML error response", err) return } const errorCode = "InvalidChangeBatch" errors := []error{} for _, msg := range resp.Messages { errors = append(errors, awserr.New(errorCode, msg, nil)) } r.Error = awserr.NewRequestFailure( awserr.NewBatchError(errorCode, "ChangeBatch errors occurred", errors), r.HTTPResponse.StatusCode, r.RequestID, ) } aws-sdk-go-1.4.22/service/route53/unmarshal_error_leak_test.go000066400000000000000000000014621300374646400243210ustar00rootroot00000000000000package route53 import ( "net/http" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting" ) func TestUnmarhsalErrorLeak(t *testing.T) { req := &request.Request{ Operation: &request.Operation{ Name: opChangeResourceRecordSets, }, HTTPRequest: &http.Request{ Header: make(http.Header), Body: &awstesting.ReadCloser{Size: 2048}, }, } req.HTTPResponse = &http.Response{ Body: &awstesting.ReadCloser{Size: 2048}, Header: http.Header{ "X-Amzn-Requestid": []string{"1"}, }, StatusCode: http.StatusOK, } reader := req.HTTPResponse.Body.(*awstesting.ReadCloser) unmarshalChangeResourceRecordSetsError(req) assert.NotNil(t, req.Error) assert.Equal(t, reader.Closed, true) assert.Equal(t, reader.Size, 0) } aws-sdk-go-1.4.22/service/route53/unmarshal_error_test.go000066400000000000000000000056041300374646400233270ustar00rootroot00000000000000package route53_test import ( "bytes" "io/ioutil" "net/http" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/route53" ) func makeClientWithResponse(response string) *route53.Route53 { r := route53.New(unit.Session) r.Handlers.Send.Clear() r.Handlers.Send.PushBack(func(r *request.Request) { body := ioutil.NopCloser(bytes.NewReader([]byte(response))) r.HTTPResponse = &http.Response{ ContentLength: int64(len(response)), StatusCode: 400, Status: "Bad Request", Body: body, } }) return r } func TestUnmarshalStandardError(t *testing.T) { const errorResponse = ` InvalidDomainName The domain name is invalid 12345 ` r := makeClientWithResponse(errorResponse) _, err := r.CreateHostedZone(&route53.CreateHostedZoneInput{ CallerReference: aws.String("test"), Name: aws.String("test_zone"), }) assert.Error(t, err) assert.Equal(t, "InvalidDomainName", err.(awserr.Error).Code()) assert.Equal(t, "The domain name is invalid", err.(awserr.Error).Message()) } func TestUnmarshalInvalidChangeBatch(t *testing.T) { const errorMessage = ` Tried to create resource record set duplicate.example.com. type A, but it already exists ` const errorResponse = ` ` + errorMessage + ` ` r := makeClientWithResponse(errorResponse) req := &route53.ChangeResourceRecordSetsInput{ HostedZoneId: aws.String("zoneId"), ChangeBatch: &route53.ChangeBatch{ Changes: []*route53.Change{ { Action: aws.String("CREATE"), ResourceRecordSet: &route53.ResourceRecordSet{ Name: aws.String("domain"), Type: aws.String("CNAME"), TTL: aws.Int64(120), ResourceRecords: []*route53.ResourceRecord{ { Value: aws.String("cname"), }, }, }, }, }, }, } _, err := r.ChangeResourceRecordSets(req) assert.Error(t, err) if reqErr, ok := err.(awserr.RequestFailure); ok { assert.Error(t, reqErr) assert.Equal(t, 400, reqErr.StatusCode()) } else { assert.Fail(t, "returned error is not a RequestFailure") } if batchErr, ok := err.(awserr.BatchedErrors); ok { errs := batchErr.OrigErrs() assert.Len(t, errs, 1) assert.Equal(t, "InvalidChangeBatch", errs[0].(awserr.Error).Code()) assert.Equal(t, errorMessage, errs[0].(awserr.Error).Message()) } else { assert.Fail(t, "returned error is not a BatchedErrors") } } aws-sdk-go-1.4.22/service/route53/waiters.go000066400000000000000000000014261300374646400205410ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package route53 import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilResourceRecordSetsChanged uses the Route 53 API operation // GetChange to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *Route53) WaitUntilResourceRecordSetsChanged(input *GetChangeInput) error { waiterCfg := waiter.Config{ Operation: "GetChange", Delay: 30, MaxAttempts: 60, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "path", Argument: "ChangeInfo.Status", Expected: "INSYNC", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/route53domains/000077500000000000000000000000001300374646400201045ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/route53domains/api.go000066400000000000000000005056031300374646400212150ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package route53domains provides a client for Amazon Route 53 Domains. package route53domains import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opCheckDomainAvailability = "CheckDomainAvailability" // CheckDomainAvailabilityRequest generates a "aws/request.Request" representing the // client's request for the CheckDomainAvailability operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CheckDomainAvailability for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CheckDomainAvailability method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CheckDomainAvailabilityRequest method. // req, resp := client.CheckDomainAvailabilityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) CheckDomainAvailabilityRequest(input *CheckDomainAvailabilityInput) (req *request.Request, output *CheckDomainAvailabilityOutput) { op := &request.Operation{ Name: opCheckDomainAvailability, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CheckDomainAvailabilityInput{} } req = c.newRequest(op, input, output) output = &CheckDomainAvailabilityOutput{} req.Data = output return } // CheckDomainAvailability API operation for Amazon Route 53 Domains. // // This operation checks the availability of one domain name. Note that if the // availability status of a domain is pending, you must submit another request // to determine the availability of the domain name. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation CheckDomainAvailability for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // func (c *Route53Domains) CheckDomainAvailability(input *CheckDomainAvailabilityInput) (*CheckDomainAvailabilityOutput, error) { req, out := c.CheckDomainAvailabilityRequest(input) err := req.Send() return out, err } const opDeleteTagsForDomain = "DeleteTagsForDomain" // DeleteTagsForDomainRequest generates a "aws/request.Request" representing the // client's request for the DeleteTagsForDomain operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteTagsForDomain for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteTagsForDomain method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteTagsForDomainRequest method. // req, resp := client.DeleteTagsForDomainRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) DeleteTagsForDomainRequest(input *DeleteTagsForDomainInput) (req *request.Request, output *DeleteTagsForDomainOutput) { op := &request.Operation{ Name: opDeleteTagsForDomain, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteTagsForDomainInput{} } req = c.newRequest(op, input, output) output = &DeleteTagsForDomainOutput{} req.Data = output return } // DeleteTagsForDomain API operation for Amazon Route 53 Domains. // // This operation deletes the specified tags for a domain. // // All tag operations are eventually consistent; subsequent operations may not // immediately represent all issued operations. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation DeleteTagsForDomain for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * OperationLimitExceeded // The number of operations or jobs running exceeded the allowed threshold for // the account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // func (c *Route53Domains) DeleteTagsForDomain(input *DeleteTagsForDomainInput) (*DeleteTagsForDomainOutput, error) { req, out := c.DeleteTagsForDomainRequest(input) err := req.Send() return out, err } const opDisableDomainAutoRenew = "DisableDomainAutoRenew" // DisableDomainAutoRenewRequest generates a "aws/request.Request" representing the // client's request for the DisableDomainAutoRenew operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableDomainAutoRenew for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableDomainAutoRenew method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableDomainAutoRenewRequest method. // req, resp := client.DisableDomainAutoRenewRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) DisableDomainAutoRenewRequest(input *DisableDomainAutoRenewInput) (req *request.Request, output *DisableDomainAutoRenewOutput) { op := &request.Operation{ Name: opDisableDomainAutoRenew, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableDomainAutoRenewInput{} } req = c.newRequest(op, input, output) output = &DisableDomainAutoRenewOutput{} req.Data = output return } // DisableDomainAutoRenew API operation for Amazon Route 53 Domains. // // This operation disables automatic renewal of domain registration for the // specified domain. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation DisableDomainAutoRenew for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // func (c *Route53Domains) DisableDomainAutoRenew(input *DisableDomainAutoRenewInput) (*DisableDomainAutoRenewOutput, error) { req, out := c.DisableDomainAutoRenewRequest(input) err := req.Send() return out, err } const opDisableDomainTransferLock = "DisableDomainTransferLock" // DisableDomainTransferLockRequest generates a "aws/request.Request" representing the // client's request for the DisableDomainTransferLock operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableDomainTransferLock for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableDomainTransferLock method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableDomainTransferLockRequest method. // req, resp := client.DisableDomainTransferLockRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) DisableDomainTransferLockRequest(input *DisableDomainTransferLockInput) (req *request.Request, output *DisableDomainTransferLockOutput) { op := &request.Operation{ Name: opDisableDomainTransferLock, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableDomainTransferLockInput{} } req = c.newRequest(op, input, output) output = &DisableDomainTransferLockOutput{} req.Data = output return } // DisableDomainTransferLock API operation for Amazon Route 53 Domains. // // This operation removes the transfer lock on the domain (specifically the // clientTransferProhibited status) to allow domain transfers. We recommend // you refrain from performing this action unless you intend to transfer the // domain to a different registrar. Successful submission returns an operation // ID that you can use to track the progress and completion of the action. If // the request is not completed successfully, the domain registrant will be // notified by email. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation DisableDomainTransferLock for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * DuplicateRequest // The request is already in progress for the domain. // // * TLDRulesViolation // The top-level domain does not support this operation. // // * OperationLimitExceeded // The number of operations or jobs running exceeded the allowed threshold for // the account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // func (c *Route53Domains) DisableDomainTransferLock(input *DisableDomainTransferLockInput) (*DisableDomainTransferLockOutput, error) { req, out := c.DisableDomainTransferLockRequest(input) err := req.Send() return out, err } const opEnableDomainAutoRenew = "EnableDomainAutoRenew" // EnableDomainAutoRenewRequest generates a "aws/request.Request" representing the // client's request for the EnableDomainAutoRenew operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableDomainAutoRenew for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableDomainAutoRenew method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableDomainAutoRenewRequest method. // req, resp := client.EnableDomainAutoRenewRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) EnableDomainAutoRenewRequest(input *EnableDomainAutoRenewInput) (req *request.Request, output *EnableDomainAutoRenewOutput) { op := &request.Operation{ Name: opEnableDomainAutoRenew, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableDomainAutoRenewInput{} } req = c.newRequest(op, input, output) output = &EnableDomainAutoRenewOutput{} req.Data = output return } // EnableDomainAutoRenew API operation for Amazon Route 53 Domains. // // This operation configures Amazon Route 53 to automatically renew the specified // domain before the domain registration expires. The cost of renewing your // domain registration is billed to your AWS account. // // The period during which you can renew a domain name varies by TLD. For a // list of TLDs and their renewal policies, see "Renewal, restoration, and deletion // times" (http://wiki.gandi.net/en/domains/renew#renewal_restoration_and_deletion_times) // on the website for our registrar partner, Gandi. Route 53 requires that you // renew before the end of the renewal period that is listed on the Gandi website // so we can complete processing before the deadline. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation EnableDomainAutoRenew for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // // * TLDRulesViolation // The top-level domain does not support this operation. // func (c *Route53Domains) EnableDomainAutoRenew(input *EnableDomainAutoRenewInput) (*EnableDomainAutoRenewOutput, error) { req, out := c.EnableDomainAutoRenewRequest(input) err := req.Send() return out, err } const opEnableDomainTransferLock = "EnableDomainTransferLock" // EnableDomainTransferLockRequest generates a "aws/request.Request" representing the // client's request for the EnableDomainTransferLock operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See EnableDomainTransferLock for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the EnableDomainTransferLock method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the EnableDomainTransferLockRequest method. // req, resp := client.EnableDomainTransferLockRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) EnableDomainTransferLockRequest(input *EnableDomainTransferLockInput) (req *request.Request, output *EnableDomainTransferLockOutput) { op := &request.Operation{ Name: opEnableDomainTransferLock, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableDomainTransferLockInput{} } req = c.newRequest(op, input, output) output = &EnableDomainTransferLockOutput{} req.Data = output return } // EnableDomainTransferLock API operation for Amazon Route 53 Domains. // // This operation sets the transfer lock on the domain (specifically the clientTransferProhibited // status) to prevent domain transfers. Successful submission returns an operation // ID that you can use to track the progress and completion of the action. If // the request is not completed successfully, the domain registrant will be // notified by email. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation EnableDomainTransferLock for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * DuplicateRequest // The request is already in progress for the domain. // // * TLDRulesViolation // The top-level domain does not support this operation. // // * OperationLimitExceeded // The number of operations or jobs running exceeded the allowed threshold for // the account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // func (c *Route53Domains) EnableDomainTransferLock(input *EnableDomainTransferLockInput) (*EnableDomainTransferLockOutput, error) { req, out := c.EnableDomainTransferLockRequest(input) err := req.Send() return out, err } const opGetContactReachabilityStatus = "GetContactReachabilityStatus" // GetContactReachabilityStatusRequest generates a "aws/request.Request" representing the // client's request for the GetContactReachabilityStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetContactReachabilityStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetContactReachabilityStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetContactReachabilityStatusRequest method. // req, resp := client.GetContactReachabilityStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) GetContactReachabilityStatusRequest(input *GetContactReachabilityStatusInput) (req *request.Request, output *GetContactReachabilityStatusOutput) { op := &request.Operation{ Name: opGetContactReachabilityStatus, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetContactReachabilityStatusInput{} } req = c.newRequest(op, input, output) output = &GetContactReachabilityStatusOutput{} req.Data = output return } // GetContactReachabilityStatus API operation for Amazon Route 53 Domains. // // For operations that require confirmation that the email address for the registrant // contact is valid, such as registering a new domain, this operation returns // information about whether the registrant contact has responded. // // If you want us to resend the email, use the ResendContactReachabilityEmail // operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation GetContactReachabilityStatus for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * OperationLimitExceeded // The number of operations or jobs running exceeded the allowed threshold for // the account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // func (c *Route53Domains) GetContactReachabilityStatus(input *GetContactReachabilityStatusInput) (*GetContactReachabilityStatusOutput, error) { req, out := c.GetContactReachabilityStatusRequest(input) err := req.Send() return out, err } const opGetDomainDetail = "GetDomainDetail" // GetDomainDetailRequest generates a "aws/request.Request" representing the // client's request for the GetDomainDetail operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDomainDetail for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDomainDetail method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDomainDetailRequest method. // req, resp := client.GetDomainDetailRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) GetDomainDetailRequest(input *GetDomainDetailInput) (req *request.Request, output *GetDomainDetailOutput) { op := &request.Operation{ Name: opGetDomainDetail, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetDomainDetailInput{} } req = c.newRequest(op, input, output) output = &GetDomainDetailOutput{} req.Data = output return } // GetDomainDetail API operation for Amazon Route 53 Domains. // // This operation returns detailed information about the domain. The domain's // contact information is also returned as part of the output. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation GetDomainDetail for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // func (c *Route53Domains) GetDomainDetail(input *GetDomainDetailInput) (*GetDomainDetailOutput, error) { req, out := c.GetDomainDetailRequest(input) err := req.Send() return out, err } const opGetDomainSuggestions = "GetDomainSuggestions" // GetDomainSuggestionsRequest generates a "aws/request.Request" representing the // client's request for the GetDomainSuggestions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDomainSuggestions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDomainSuggestions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDomainSuggestionsRequest method. // req, resp := client.GetDomainSuggestionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) GetDomainSuggestionsRequest(input *GetDomainSuggestionsInput) (req *request.Request, output *GetDomainSuggestionsOutput) { op := &request.Operation{ Name: opGetDomainSuggestions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetDomainSuggestionsInput{} } req = c.newRequest(op, input, output) output = &GetDomainSuggestionsOutput{} req.Data = output return } // GetDomainSuggestions API operation for Amazon Route 53 Domains. // // The GetDomainSuggestions operation returns a list of suggested domain names // given a string, which can either be a domain name or simply a word or phrase // (without spaces). // // Parameters: DomainName (string): The basis for your domain suggestion search, // a string with (or without) top-level domain specified. // SuggestionCount (int): The number of domain suggestions to be returned, maximum // 50, minimum 1. // OnlyAvailable (bool): If true, availability check will be performed on suggestion // results, and only available domains will be returned. If false, suggestions // will be returned without checking whether the domain is actually available, // and caller will have to call checkDomainAvailability for each suggestion // to determine availability for registration. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation GetDomainSuggestions for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // func (c *Route53Domains) GetDomainSuggestions(input *GetDomainSuggestionsInput) (*GetDomainSuggestionsOutput, error) { req, out := c.GetDomainSuggestionsRequest(input) err := req.Send() return out, err } const opGetOperationDetail = "GetOperationDetail" // GetOperationDetailRequest generates a "aws/request.Request" representing the // client's request for the GetOperationDetail operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetOperationDetail for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetOperationDetail method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetOperationDetailRequest method. // req, resp := client.GetOperationDetailRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) GetOperationDetailRequest(input *GetOperationDetailInput) (req *request.Request, output *GetOperationDetailOutput) { op := &request.Operation{ Name: opGetOperationDetail, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetOperationDetailInput{} } req = c.newRequest(op, input, output) output = &GetOperationDetailOutput{} req.Data = output return } // GetOperationDetail API operation for Amazon Route 53 Domains. // // This operation returns the current status of an operation that is not completed. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation GetOperationDetail for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // func (c *Route53Domains) GetOperationDetail(input *GetOperationDetailInput) (*GetOperationDetailOutput, error) { req, out := c.GetOperationDetailRequest(input) err := req.Send() return out, err } const opListDomains = "ListDomains" // ListDomainsRequest generates a "aws/request.Request" representing the // client's request for the ListDomains operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDomains for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDomains method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDomainsRequest method. // req, resp := client.ListDomainsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) ListDomainsRequest(input *ListDomainsInput) (req *request.Request, output *ListDomainsOutput) { op := &request.Operation{ Name: opListDomains, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"NextPageMarker"}, LimitToken: "MaxItems", TruncationToken: "", }, } if input == nil { input = &ListDomainsInput{} } req = c.newRequest(op, input, output) output = &ListDomainsOutput{} req.Data = output return } // ListDomains API operation for Amazon Route 53 Domains. // // This operation returns all the domain names registered with Amazon Route // 53 for the current AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation ListDomains for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // func (c *Route53Domains) ListDomains(input *ListDomainsInput) (*ListDomainsOutput, error) { req, out := c.ListDomainsRequest(input) err := req.Send() return out, err } // ListDomainsPages iterates over the pages of a ListDomains operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListDomains method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListDomains operation. // pageNum := 0 // err := client.ListDomainsPages(params, // func(page *ListDomainsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Route53Domains) ListDomainsPages(input *ListDomainsInput, fn func(p *ListDomainsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListDomainsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListDomainsOutput), lastPage) }) } const opListOperations = "ListOperations" // ListOperationsRequest generates a "aws/request.Request" representing the // client's request for the ListOperations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListOperations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListOperations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListOperationsRequest method. // req, resp := client.ListOperationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) ListOperationsRequest(input *ListOperationsInput) (req *request.Request, output *ListOperationsOutput) { op := &request.Operation{ Name: opListOperations, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"NextPageMarker"}, LimitToken: "MaxItems", TruncationToken: "", }, } if input == nil { input = &ListOperationsInput{} } req = c.newRequest(op, input, output) output = &ListOperationsOutput{} req.Data = output return } // ListOperations API operation for Amazon Route 53 Domains. // // This operation returns the operation IDs of operations that are not yet complete. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation ListOperations for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // func (c *Route53Domains) ListOperations(input *ListOperationsInput) (*ListOperationsOutput, error) { req, out := c.ListOperationsRequest(input) err := req.Send() return out, err } // ListOperationsPages iterates over the pages of a ListOperations operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListOperations method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListOperations operation. // pageNum := 0 // err := client.ListOperationsPages(params, // func(page *ListOperationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Route53Domains) ListOperationsPages(input *ListOperationsInput, fn func(p *ListOperationsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListOperationsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListOperationsOutput), lastPage) }) } const opListTagsForDomain = "ListTagsForDomain" // ListTagsForDomainRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForDomain operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTagsForDomain for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTagsForDomain method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTagsForDomainRequest method. // req, resp := client.ListTagsForDomainRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) ListTagsForDomainRequest(input *ListTagsForDomainInput) (req *request.Request, output *ListTagsForDomainOutput) { op := &request.Operation{ Name: opListTagsForDomain, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListTagsForDomainInput{} } req = c.newRequest(op, input, output) output = &ListTagsForDomainOutput{} req.Data = output return } // ListTagsForDomain API operation for Amazon Route 53 Domains. // // This operation returns all of the tags that are associated with the specified // domain. // // All tag operations are eventually consistent; subsequent operations may not // immediately represent all issued operations. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation ListTagsForDomain for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * OperationLimitExceeded // The number of operations or jobs running exceeded the allowed threshold for // the account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // func (c *Route53Domains) ListTagsForDomain(input *ListTagsForDomainInput) (*ListTagsForDomainOutput, error) { req, out := c.ListTagsForDomainRequest(input) err := req.Send() return out, err } const opRegisterDomain = "RegisterDomain" // RegisterDomainRequest generates a "aws/request.Request" representing the // client's request for the RegisterDomain operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterDomain for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterDomain method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterDomainRequest method. // req, resp := client.RegisterDomainRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) RegisterDomainRequest(input *RegisterDomainInput) (req *request.Request, output *RegisterDomainOutput) { op := &request.Operation{ Name: opRegisterDomain, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterDomainInput{} } req = c.newRequest(op, input, output) output = &RegisterDomainOutput{} req.Data = output return } // RegisterDomain API operation for Amazon Route 53 Domains. // // This operation registers a domain. Domains are registered by the AWS registrar // partner, Gandi. For some top-level domains (TLDs), this operation requires // extra parameters. // // When you register a domain, Amazon Route 53 does the following: // // * Creates a Amazon Route 53 hosted zone that has the same name as the // domain. Amazon Route 53 assigns four name servers to your hosted zone // and automatically updates your domain registration with the names of these // name servers. // * Enables autorenew, so your domain registration will renew automatically // each year. We'll notify you in advance of the renewal date so you can // choose whether to renew the registration. // * Optionally enables privacy protection, so WHOIS queries return contact // information for our registrar partner, Gandi, instead of the information // you entered for registrant, admin, and tech contacts. // * If registration is successful, returns an operation ID that you can // use to track the progress and completion of the action. If the request // is not completed successfully, the domain registrant is notified by email. // // * Charges your AWS account an amount based on the top-level domain. For // more information, see Amazon Route 53 Pricing (http://aws.amazon.com/route53/pricing/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation RegisterDomain for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // // * DuplicateRequest // The request is already in progress for the domain. // // * TLDRulesViolation // The top-level domain does not support this operation. // // * DomainLimitExceeded // The number of domains has exceeded the allowed threshold for the account. // // * OperationLimitExceeded // The number of operations or jobs running exceeded the allowed threshold for // the account. // func (c *Route53Domains) RegisterDomain(input *RegisterDomainInput) (*RegisterDomainOutput, error) { req, out := c.RegisterDomainRequest(input) err := req.Send() return out, err } const opRenewDomain = "RenewDomain" // RenewDomainRequest generates a "aws/request.Request" representing the // client's request for the RenewDomain operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RenewDomain for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RenewDomain method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RenewDomainRequest method. // req, resp := client.RenewDomainRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) RenewDomainRequest(input *RenewDomainInput) (req *request.Request, output *RenewDomainOutput) { op := &request.Operation{ Name: opRenewDomain, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RenewDomainInput{} } req = c.newRequest(op, input, output) output = &RenewDomainOutput{} req.Data = output return } // RenewDomain API operation for Amazon Route 53 Domains. // // This operation renews a domain for the specified number of years. The cost // of renewing your domain is billed to your AWS account. // // We recommend that you renew your domain several weeks before the expiration // date. Some TLD registries delete domains before the expiration date if you // haven't renewed far enough in advance. For more information about renewing // domain registration, see Renewing Registration for a Domain (http://docs.aws.amazon.com/console/route53/domain-renew) // in the Amazon Route 53 documentation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation RenewDomain for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // // * DuplicateRequest // The request is already in progress for the domain. // // * TLDRulesViolation // The top-level domain does not support this operation. // // * OperationLimitExceeded // The number of operations or jobs running exceeded the allowed threshold for // the account. // func (c *Route53Domains) RenewDomain(input *RenewDomainInput) (*RenewDomainOutput, error) { req, out := c.RenewDomainRequest(input) err := req.Send() return out, err } const opResendContactReachabilityEmail = "ResendContactReachabilityEmail" // ResendContactReachabilityEmailRequest generates a "aws/request.Request" representing the // client's request for the ResendContactReachabilityEmail operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ResendContactReachabilityEmail for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ResendContactReachabilityEmail method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ResendContactReachabilityEmailRequest method. // req, resp := client.ResendContactReachabilityEmailRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) ResendContactReachabilityEmailRequest(input *ResendContactReachabilityEmailInput) (req *request.Request, output *ResendContactReachabilityEmailOutput) { op := &request.Operation{ Name: opResendContactReachabilityEmail, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ResendContactReachabilityEmailInput{} } req = c.newRequest(op, input, output) output = &ResendContactReachabilityEmailOutput{} req.Data = output return } // ResendContactReachabilityEmail API operation for Amazon Route 53 Domains. // // For operations that require confirmation that the email address for the registrant // contact is valid, such as registering a new domain, this operation resends // the confirmation email to the current email address for the registrant contact. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation ResendContactReachabilityEmail for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * OperationLimitExceeded // The number of operations or jobs running exceeded the allowed threshold for // the account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // func (c *Route53Domains) ResendContactReachabilityEmail(input *ResendContactReachabilityEmailInput) (*ResendContactReachabilityEmailOutput, error) { req, out := c.ResendContactReachabilityEmailRequest(input) err := req.Send() return out, err } const opRetrieveDomainAuthCode = "RetrieveDomainAuthCode" // RetrieveDomainAuthCodeRequest generates a "aws/request.Request" representing the // client's request for the RetrieveDomainAuthCode operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RetrieveDomainAuthCode for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RetrieveDomainAuthCode method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RetrieveDomainAuthCodeRequest method. // req, resp := client.RetrieveDomainAuthCodeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) RetrieveDomainAuthCodeRequest(input *RetrieveDomainAuthCodeInput) (req *request.Request, output *RetrieveDomainAuthCodeOutput) { op := &request.Operation{ Name: opRetrieveDomainAuthCode, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RetrieveDomainAuthCodeInput{} } req = c.newRequest(op, input, output) output = &RetrieveDomainAuthCodeOutput{} req.Data = output return } // RetrieveDomainAuthCode API operation for Amazon Route 53 Domains. // // This operation returns the AuthCode for the domain. To transfer a domain // to another registrar, you provide this value to the new registrar. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation RetrieveDomainAuthCode for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // func (c *Route53Domains) RetrieveDomainAuthCode(input *RetrieveDomainAuthCodeInput) (*RetrieveDomainAuthCodeOutput, error) { req, out := c.RetrieveDomainAuthCodeRequest(input) err := req.Send() return out, err } const opTransferDomain = "TransferDomain" // TransferDomainRequest generates a "aws/request.Request" representing the // client's request for the TransferDomain operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See TransferDomain for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the TransferDomain method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the TransferDomainRequest method. // req, resp := client.TransferDomainRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) TransferDomainRequest(input *TransferDomainInput) (req *request.Request, output *TransferDomainOutput) { op := &request.Operation{ Name: opTransferDomain, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &TransferDomainInput{} } req = c.newRequest(op, input, output) output = &TransferDomainOutput{} req.Data = output return } // TransferDomain API operation for Amazon Route 53 Domains. // // This operation transfers a domain from another registrar to Amazon Route // 53. When the transfer is complete, the domain is registered with the AWS // registrar partner, Gandi. // // For transfer requirements, a detailed procedure, and information about viewing // the status of a domain transfer, see Transferring Registration for a Domain // to Amazon Route 53 (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/domain-transfer-to-route-53.html) // in the Amazon Route 53 Developer Guide. // // If the registrar for your domain is also the DNS service provider for the // domain, we highly recommend that you consider transferring your DNS service // to Amazon Route 53 or to another DNS service provider before you transfer // your registration. Some registrars provide free DNS service when you purchase // a domain registration. When you transfer the registration, the previous registrar // will not renew your domain registration and could end your DNS service at // any time. // // Caution! If the registrar for your domain is also the DNS service provider // for the domain and you don't transfer DNS service to another provider, your // website, email, and the web applications associated with the domain might // become unavailable.If the transfer is successful, this method returns an operation ID that you // can use to track the progress and completion of the action. If the transfer // doesn't complete successfully, the domain registrant will be notified by // email. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation TransferDomain for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // // * DuplicateRequest // The request is already in progress for the domain. // // * TLDRulesViolation // The top-level domain does not support this operation. // // * DomainLimitExceeded // The number of domains has exceeded the allowed threshold for the account. // // * OperationLimitExceeded // The number of operations or jobs running exceeded the allowed threshold for // the account. // func (c *Route53Domains) TransferDomain(input *TransferDomainInput) (*TransferDomainOutput, error) { req, out := c.TransferDomainRequest(input) err := req.Send() return out, err } const opUpdateDomainContact = "UpdateDomainContact" // UpdateDomainContactRequest generates a "aws/request.Request" representing the // client's request for the UpdateDomainContact operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateDomainContact for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateDomainContact method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateDomainContactRequest method. // req, resp := client.UpdateDomainContactRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) UpdateDomainContactRequest(input *UpdateDomainContactInput) (req *request.Request, output *UpdateDomainContactOutput) { op := &request.Operation{ Name: opUpdateDomainContact, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateDomainContactInput{} } req = c.newRequest(op, input, output) output = &UpdateDomainContactOutput{} req.Data = output return } // UpdateDomainContact API operation for Amazon Route 53 Domains. // // This operation updates the contact information for a particular domain. Information // for at least one contact (registrant, administrator, or technical) must be // supplied for update. // // If the update is successful, this method returns an operation ID that you // can use to track the progress and completion of the action. If the request // is not completed successfully, the domain registrant will be notified by // email. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation UpdateDomainContact for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * DuplicateRequest // The request is already in progress for the domain. // // * TLDRulesViolation // The top-level domain does not support this operation. // // * OperationLimitExceeded // The number of operations or jobs running exceeded the allowed threshold for // the account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // func (c *Route53Domains) UpdateDomainContact(input *UpdateDomainContactInput) (*UpdateDomainContactOutput, error) { req, out := c.UpdateDomainContactRequest(input) err := req.Send() return out, err } const opUpdateDomainContactPrivacy = "UpdateDomainContactPrivacy" // UpdateDomainContactPrivacyRequest generates a "aws/request.Request" representing the // client's request for the UpdateDomainContactPrivacy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateDomainContactPrivacy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateDomainContactPrivacy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateDomainContactPrivacyRequest method. // req, resp := client.UpdateDomainContactPrivacyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) UpdateDomainContactPrivacyRequest(input *UpdateDomainContactPrivacyInput) (req *request.Request, output *UpdateDomainContactPrivacyOutput) { op := &request.Operation{ Name: opUpdateDomainContactPrivacy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateDomainContactPrivacyInput{} } req = c.newRequest(op, input, output) output = &UpdateDomainContactPrivacyOutput{} req.Data = output return } // UpdateDomainContactPrivacy API operation for Amazon Route 53 Domains. // // This operation updates the specified domain contact's privacy setting. When // the privacy option is enabled, personal information such as postal or email // address is hidden from the results of a public WHOIS query. The privacy services // are provided by the AWS registrar, Gandi. For more information, see the Gandi // privacy features (http://www.gandi.net/domain/whois/?currency=USD&lang=en). // // This operation only affects the privacy of the specified contact type (registrant, // administrator, or tech). Successful acceptance returns an operation ID that // you can use with GetOperationDetail to track the progress and completion // of the action. If the request is not completed successfully, the domain registrant // will be notified by email. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation UpdateDomainContactPrivacy for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * DuplicateRequest // The request is already in progress for the domain. // // * TLDRulesViolation // The top-level domain does not support this operation. // // * OperationLimitExceeded // The number of operations or jobs running exceeded the allowed threshold for // the account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // func (c *Route53Domains) UpdateDomainContactPrivacy(input *UpdateDomainContactPrivacyInput) (*UpdateDomainContactPrivacyOutput, error) { req, out := c.UpdateDomainContactPrivacyRequest(input) err := req.Send() return out, err } const opUpdateDomainNameservers = "UpdateDomainNameservers" // UpdateDomainNameserversRequest generates a "aws/request.Request" representing the // client's request for the UpdateDomainNameservers operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateDomainNameservers for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateDomainNameservers method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateDomainNameserversRequest method. // req, resp := client.UpdateDomainNameserversRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) UpdateDomainNameserversRequest(input *UpdateDomainNameserversInput) (req *request.Request, output *UpdateDomainNameserversOutput) { op := &request.Operation{ Name: opUpdateDomainNameservers, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateDomainNameserversInput{} } req = c.newRequest(op, input, output) output = &UpdateDomainNameserversOutput{} req.Data = output return } // UpdateDomainNameservers API operation for Amazon Route 53 Domains. // // This operation replaces the current set of name servers for the domain with // the specified set of name servers. If you use Amazon Route 53 as your DNS // service, specify the four name servers in the delegation set for the hosted // zone for the domain. // // If successful, this operation returns an operation ID that you can use to // track the progress and completion of the action. If the request is not completed // successfully, the domain registrant will be notified by email. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation UpdateDomainNameservers for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * DuplicateRequest // The request is already in progress for the domain. // // * TLDRulesViolation // The top-level domain does not support this operation. // // * OperationLimitExceeded // The number of operations or jobs running exceeded the allowed threshold for // the account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // func (c *Route53Domains) UpdateDomainNameservers(input *UpdateDomainNameserversInput) (*UpdateDomainNameserversOutput, error) { req, out := c.UpdateDomainNameserversRequest(input) err := req.Send() return out, err } const opUpdateTagsForDomain = "UpdateTagsForDomain" // UpdateTagsForDomainRequest generates a "aws/request.Request" representing the // client's request for the UpdateTagsForDomain operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateTagsForDomain for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateTagsForDomain method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateTagsForDomainRequest method. // req, resp := client.UpdateTagsForDomainRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) UpdateTagsForDomainRequest(input *UpdateTagsForDomainInput) (req *request.Request, output *UpdateTagsForDomainOutput) { op := &request.Operation{ Name: opUpdateTagsForDomain, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateTagsForDomainInput{} } req = c.newRequest(op, input, output) output = &UpdateTagsForDomainOutput{} req.Data = output return } // UpdateTagsForDomain API operation for Amazon Route 53 Domains. // // This operation adds or updates tags for a specified domain. // // All tag operations are eventually consistent; subsequent operations may not // immediately represent all issued operations. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation UpdateTagsForDomain for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // // * OperationLimitExceeded // The number of operations or jobs running exceeded the allowed threshold for // the account. // // * UnsupportedTLD // Amazon Route 53 does not support this top-level domain. // func (c *Route53Domains) UpdateTagsForDomain(input *UpdateTagsForDomainInput) (*UpdateTagsForDomainOutput, error) { req, out := c.UpdateTagsForDomainRequest(input) err := req.Send() return out, err } const opViewBilling = "ViewBilling" // ViewBillingRequest generates a "aws/request.Request" representing the // client's request for the ViewBilling operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ViewBilling for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ViewBilling method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ViewBillingRequest method. // req, resp := client.ViewBillingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Route53Domains) ViewBillingRequest(input *ViewBillingInput) (req *request.Request, output *ViewBillingOutput) { op := &request.Operation{ Name: opViewBilling, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ViewBillingInput{} } req = c.newRequest(op, input, output) output = &ViewBillingOutput{} req.Data = output return } // ViewBilling API operation for Amazon Route 53 Domains. // // This operation returns all the domain-related billing records for the current // AWS account for a specified period // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Route 53 Domains's // API operation ViewBilling for usage and error information. // // Returned Error Codes: // * InvalidInput // The requested item is not acceptable. For example, for an OperationId it // may refer to the ID of an operation that is already completed. For a domain // name, it may not be a valid domain name or belong to the requester account. // func (c *Route53Domains) ViewBilling(input *ViewBillingInput) (*ViewBillingOutput, error) { req, out := c.ViewBillingRequest(input) err := req.Send() return out, err } type BillingRecord struct { _ struct{} `type:"structure"` // The date that the operation was billed, in Unix format. // // Type: Double BillDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The name of a domain. // // Type: String DomainName *string `type:"string"` // The ID of the invoice that is associated with the billing record. // // Type: String InvoiceId *string `type:"string"` // The operation that you were charged for. // // Type: String // // Valid values: REGISTER_DOMAIN // TRANSFER_IN_DOMAIN // RENEW_DOMAIN // CHANGE_DOMAIN_OWNER Operation *string `type:"string" enum:"OperationType"` // The price that you were charged for the operation, in US dollars. // // Type: Double // // Example value: 12.0 Price *float64 `type:"double"` } // String returns the string representation func (s BillingRecord) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BillingRecord) GoString() string { return s.String() } // The CheckDomainAvailability request contains the following elements. type CheckDomainAvailabilityInput struct { _ struct{} `type:"structure"` // The name of a domain. // // Type: String // // Default: None // // Constraints: The domain name can contain only the letters a through z, the // numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not // supported. // // Required: Yes // // DomainName is a required field DomainName *string `type:"string" required:"true"` // Reserved for future use. IdnLangCode *string `type:"string"` } // String returns the string representation func (s CheckDomainAvailabilityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CheckDomainAvailabilityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CheckDomainAvailabilityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CheckDomainAvailabilityInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The CheckDomainAvailability response includes the following elements. type CheckDomainAvailabilityOutput struct { _ struct{} `type:"structure"` // Whether the domain name is available for registering. // // You can only register domains designated as AVAILABLE. // // Type: String // // Valid values: // // * AVAILABLE – The domain name is available. // * AVAILABLE_RESERVED – The domain name is reserved under specific conditions. // // * AVAILABLE_PREORDER – The domain name is available and can be preordered. // // * UNAVAILABLE – The domain name is not available. // * UNAVAILABLE_PREMIUM – The domain name is not available. // * UNAVAILABLE_RESTRICTED – The domain name is forbidden. // * RESERVED – The domain name has been reserved for another person or organization. // // * DONT_KNOW – The TLD registry didn't reply with a definitive answer about // whether the domain name is available. Amazon Route 53 can return this // response for a variety of reasons, for example, the registry is performing // maintenance. Try again later. // // Availability is a required field Availability *string `type:"string" required:"true" enum:"DomainAvailability"` } // String returns the string representation func (s CheckDomainAvailabilityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CheckDomainAvailabilityOutput) GoString() string { return s.String() } // ContactDetail includes the following elements. type ContactDetail struct { _ struct{} `type:"structure"` // First line of the contact's address. // // Type: String // // Default: None // // Constraints: Maximum 255 characters. // // Parents: RegistrantContact, AdminContact, TechContact // // Required: Yes AddressLine1 *string `type:"string"` // Second line of contact's address, if any. // // Type: String // // Default: None // // Constraints: Maximum 255 characters. // // Parents: RegistrantContact, AdminContact, TechContact // // Required: No AddressLine2 *string `type:"string"` // The city of the contact's address. // // Type: String // // Default: None // // Constraints: Maximum 255 characters. // // Parents: RegistrantContact, AdminContact, TechContact // // Required: Yes City *string `type:"string"` // Indicates whether the contact is a person, company, association, or public // organization. If you choose an option other than PERSON, you must enter an // organization name, and you can't enable privacy protection for the contact. // // Type: String // // Default: None // // Constraints: Maximum 255 characters. // // Valid values: PERSON | COMPANY | ASSOCIATION | PUBLIC_BODY // // Parents: RegistrantContact, AdminContact, TechContact // // Required: Yes ContactType *string `type:"string" enum:"ContactType"` // Code for the country of the contact's address. // // Type: String // // Default: None // // Constraints: Maximum 255 characters. // // Parents: RegistrantContact, AdminContact, TechContact // // Required: Yes CountryCode *string `type:"string" enum:"CountryCode"` // Email address of the contact. // // Type: String // // Default: None // // Constraints: Maximum 254 characters. // // Parents: RegistrantContact, AdminContact, TechContact // // Required: Yes Email *string `type:"string"` // A list of name-value pairs for parameters required by certain top-level domains. // // Type: Complex // // Default: None // // Parents: RegistrantContact, AdminContact, TechContact // // Children: Name, Value // // Required: No ExtraParams []*ExtraParam `type:"list"` // Fax number of the contact. // // Type: String // // Default: None // // Constraints: Phone number must be specified in the format "+[country dialing // code].[number including any area code]". For example, a US phone number might // appear as "+1.1234567890". // // Parents: RegistrantContact, AdminContact, TechContact // // Required: No Fax *string `type:"string"` // First name of contact. // // Type: String // // Default: None // // Constraints: Maximum 255 characters. // // Parents: RegistrantContact, AdminContact, TechContact // // Required: Yes FirstName *string `type:"string"` // Last name of contact. // // Type: String // // Default: None // // Constraints: Maximum 255 characters. // // Parents: RegistrantContact, AdminContact, TechContact // // Required: Yes LastName *string `type:"string"` // Name of the organization for contact types other than PERSON. // // Type: String // // Default: None // // Constraints: Maximum 255 characters. Contact type must not be PERSON. // // Parents: RegistrantContact, AdminContact, TechContact // // Required: No OrganizationName *string `type:"string"` // The phone number of the contact. // // Type: String // // Default: None // // Constraints: Phone number must be specified in the format "+[country dialing // code].[number including any area code>]". For example, a US phone number // might appear as "+1.1234567890". // // Parents: RegistrantContact, AdminContact, TechContact // // Required: Yes PhoneNumber *string `type:"string"` // The state or province of the contact's city. // // Type: String // // Default: None // // Constraints: Maximum 255 characters. // // Parents: RegistrantContact, AdminContact, TechContact // // Required: No State *string `type:"string"` // The zip or postal code of the contact's address. // // Type: String // // Default: None // // Constraints: Maximum 255 characters. // // Parents: RegistrantContact, AdminContact, TechContact // // Required: No ZipCode *string `type:"string"` } // String returns the string representation func (s ContactDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ContactDetail) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ContactDetail) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ContactDetail"} if s.ExtraParams != nil { for i, v := range s.ExtraParams { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ExtraParams", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The DeleteTagsForDomainRequest includes the following elements. type DeleteTagsForDomainInput struct { _ struct{} `type:"structure"` // The domain for which you want to delete one or more tags. // // The name of a domain. // // Type: String // // Default: None // // Constraints: The domain name can contain only the letters a through z, the // numbers 0 through 9, and hyphen (-). Hyphens are allowed only when they're // surrounded by letters, numbers, or other hyphens. You can't specify a hyphen // at the beginning or end of a label. To specify an Internationalized Domain // Name, you must convert the name to Punycode. // // Required: Yes // // DomainName is a required field DomainName *string `type:"string" required:"true"` // A list of tag keys to delete. // // Type: A list that contains the keys of the tags that you want to delete. // // Default: None // // Required: No // // TagsToDelete is a required field TagsToDelete []*string `type:"list" required:"true"` } // String returns the string representation func (s DeleteTagsForDomainInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTagsForDomainInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTagsForDomainInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTagsForDomainInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.TagsToDelete == nil { invalidParams.Add(request.NewErrParamRequired("TagsToDelete")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteTagsForDomainOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteTagsForDomainOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTagsForDomainOutput) GoString() string { return s.String() } type DisableDomainAutoRenewInput struct { _ struct{} `type:"structure"` // DomainName is a required field DomainName *string `type:"string" required:"true"` } // String returns the string representation func (s DisableDomainAutoRenewInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableDomainAutoRenewInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisableDomainAutoRenewInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisableDomainAutoRenewInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DisableDomainAutoRenewOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DisableDomainAutoRenewOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableDomainAutoRenewOutput) GoString() string { return s.String() } // The DisableDomainTransferLock request includes the following element. type DisableDomainTransferLockInput struct { _ struct{} `type:"structure"` // The name of a domain. // // Type: String // // Default: None // // Constraints: The domain name can contain only the letters a through z, the // numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not // supported. // // Required: Yes // // DomainName is a required field DomainName *string `type:"string" required:"true"` } // String returns the string representation func (s DisableDomainTransferLockInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableDomainTransferLockInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisableDomainTransferLockInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisableDomainTransferLockInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The DisableDomainTransferLock response includes the following element. type DisableDomainTransferLockOutput struct { _ struct{} `type:"structure"` // Identifier for tracking the progress of the request. To use this ID to query // the operation status, use GetOperationDetail. // // Type: String // // Default: None // // Constraints: Maximum 255 characters. // // OperationId is a required field OperationId *string `type:"string" required:"true"` } // String returns the string representation func (s DisableDomainTransferLockOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableDomainTransferLockOutput) GoString() string { return s.String() } type DomainSuggestion struct { _ struct{} `type:"structure"` Availability *string `type:"string"` DomainName *string `type:"string"` } // String returns the string representation func (s DomainSuggestion) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DomainSuggestion) GoString() string { return s.String() } type DomainSummary struct { _ struct{} `type:"structure"` // Indicates whether the domain is automatically renewed upon expiration. // // Type: Boolean // // Valid values: True | False AutoRenew *bool `type:"boolean"` // The name of a domain. // // Type: String // // DomainName is a required field DomainName *string `type:"string" required:"true"` // Expiration date of the domain in Coordinated Universal Time (UTC). // // Type: Long Expiry *time.Time `type:"timestamp" timestampFormat:"unix"` // Indicates whether a domain is locked from unauthorized transfer to another // party. // // Type: Boolean // // Valid values: True | False TransferLock *bool `type:"boolean"` } // String returns the string representation func (s DomainSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DomainSummary) GoString() string { return s.String() } type EnableDomainAutoRenewInput struct { _ struct{} `type:"structure"` // DomainName is a required field DomainName *string `type:"string" required:"true"` } // String returns the string representation func (s EnableDomainAutoRenewInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableDomainAutoRenewInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableDomainAutoRenewInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableDomainAutoRenewInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type EnableDomainAutoRenewOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s EnableDomainAutoRenewOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableDomainAutoRenewOutput) GoString() string { return s.String() } // The EnableDomainTransferLock request includes the following element. type EnableDomainTransferLockInput struct { _ struct{} `type:"structure"` // The name of a domain. // // Type: String // // Default: None // // Constraints: The domain name can contain only the letters a through z, the // numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not // supported. // // Required: Yes // // DomainName is a required field DomainName *string `type:"string" required:"true"` } // String returns the string representation func (s EnableDomainTransferLockInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableDomainTransferLockInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EnableDomainTransferLockInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EnableDomainTransferLockInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The EnableDomainTransferLock response includes the following elements. type EnableDomainTransferLockOutput struct { _ struct{} `type:"structure"` // Identifier for tracking the progress of the request. To use this ID to query // the operation status, use GetOperationDetail. // // Type: String // // Default: None // // Constraints: Maximum 255 characters. // // OperationId is a required field OperationId *string `type:"string" required:"true"` } // String returns the string representation func (s EnableDomainTransferLockOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EnableDomainTransferLockOutput) GoString() string { return s.String() } // ExtraParam includes the following elements. type ExtraParam struct { _ struct{} `type:"structure"` // Name of the additional parameter required by the top-level domain. // // Type: String // // Default: None // // Valid values: DUNS_NUMBER | BRAND_NUMBER | BIRTH_DEPARTMENT | BIRTH_DATE_IN_YYYY_MM_DD // | BIRTH_COUNTRY | BIRTH_CITY | DOCUMENT_NUMBER | AU_ID_NUMBER | AU_ID_TYPE // | CA_LEGAL_TYPE | CA_BUSINESS_ENTITY_TYPE |ES_IDENTIFICATION | ES_IDENTIFICATION_TYPE // | ES_LEGAL_FORM | FI_BUSINESS_NUMBER | FI_ID_NUMBER | IT_PIN | RU_PASSPORT_DATA // | SE_ID_NUMBER | SG_ID_NUMBER | VAT_NUMBER // // Parent: ExtraParams // // Required: Yes // // Name is a required field Name *string `type:"string" required:"true" enum:"ExtraParamName"` // Values corresponding to the additional parameter names required by some top-level // domains. // // Type: String // // Default: None // // Constraints: Maximum 2048 characters. // // Parent: ExtraParams // // Required: Yes // // Value is a required field Value *string `type:"string" required:"true"` } // String returns the string representation func (s ExtraParam) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExtraParam) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ExtraParam) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ExtraParam"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetContactReachabilityStatusInput struct { _ struct{} `type:"structure"` // The name of the domain for which you want to know whether the registrant // contact has confirmed that the email address is valid. // // Type: String // // Default: None // // Required: Yes DomainName *string `locationName:"domainName" type:"string"` } // String returns the string representation func (s GetContactReachabilityStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetContactReachabilityStatusInput) GoString() string { return s.String() } type GetContactReachabilityStatusOutput struct { _ struct{} `type:"structure"` // The domain name for which you requested the reachability status. DomainName *string `locationName:"domainName" type:"string"` // Whether the registrant contact has responded. PENDING indicates that we sent // the confirmation email and haven't received a response yet, DONE indicates // that we sent the email and got confirmation from the registrant contact, // and EXPIRED indicates that the time limit expired before the registrant contact // responded. // // Type: String // // Valid values: PENDING, DONE, EXPIRED Status *string `locationName:"status" type:"string" enum:"ReachabilityStatus"` } // String returns the string representation func (s GetContactReachabilityStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetContactReachabilityStatusOutput) GoString() string { return s.String() } // The GetDomainDetail request includes the following element. type GetDomainDetailInput struct { _ struct{} `type:"structure"` // The name of a domain. // // Type: String // // Default: None // // Constraints: The domain name can contain only the letters a through z, the // numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not // supported. // // Required: Yes // // DomainName is a required field DomainName *string `type:"string" required:"true"` } // String returns the string representation func (s GetDomainDetailInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDomainDetailInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDomainDetailInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDomainDetailInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The GetDomainDetail response includes the following elements. type GetDomainDetailOutput struct { _ struct{} `type:"structure"` // Email address to contact to report incorrect contact information for a domain, // to report that the domain is being used to send spam, to report that someone // is cybersquatting on a domain name, or report some other type of abuse. // // Type: String AbuseContactEmail *string `type:"string"` // Phone number for reporting abuse. // // Type: String AbuseContactPhone *string `type:"string"` // Provides details about the domain administrative contact. // // Type: Complex // // Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, // AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, // Email, Fax, ExtraParams // // AdminContact is a required field AdminContact *ContactDetail `type:"structure" required:"true"` // Specifies whether contact information for the admin contact is concealed // from WHOIS queries. If the value is true, WHOIS ("who is") queries will return // contact information for our registrar partner, Gandi, instead of the contact // information that you enter. // // Type: Boolean AdminPrivacy *bool `type:"boolean"` // Specifies whether the domain registration is set to renew automatically. // // Type: Boolean AutoRenew *bool `type:"boolean"` // The date when the domain was created as found in the response to a WHOIS // query. The date format is Unix time. CreationDate *time.Time `type:"timestamp" timestampFormat:"unix"` // Reserved for future use. DnsSec *string `type:"string"` // The name of a domain. // // Type: String // // DomainName is a required field DomainName *string `type:"string" required:"true"` // The date when the registration for the domain is set to expire. The date // format is Unix time. ExpirationDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The name of the domain. // // Type: String // // Nameservers is a required field Nameservers []*Nameserver `type:"list" required:"true"` // Provides details about the domain registrant. // // Type: Complex // // Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, // AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, // Email, Fax, ExtraParams // // RegistrantContact is a required field RegistrantContact *ContactDetail `type:"structure" required:"true"` // Specifies whether contact information for the registrant contact is concealed // from WHOIS queries. If the value is true, WHOIS ("who is") queries will return // contact information for our registrar partner, Gandi, instead of the contact // information that you enter. // // Type: Boolean RegistrantPrivacy *bool `type:"boolean"` // Name of the registrar of the domain as identified in the registry. Amazon // Route 53 domains are registered by registrar Gandi. The value is "GANDI SAS". // // Type: String RegistrarName *string `type:"string"` // Web address of the registrar. // // Type: String RegistrarUrl *string `type:"string"` // Reserved for future use. RegistryDomainId *string `type:"string"` // Reseller of the domain. Domains registered or transferred using Amazon Route // 53 domains will have "Amazon" as the reseller. // // Type: String Reseller *string `type:"string"` // An array of domain name status codes, also known as Extensible Provisioning // Protocol (EPP) status codes. // // ICANN, the organization that maintains a central database of domain names, // has developed a set of domain name status codes that tell you the status // of a variety of operations on a domain name, for example, registering a domain // name, transferring a domain name to another registrar, renewing the registration // for a domain name, and so on. All registrars use this same set of status // codes. // // For a current list of domain name status codes and an explanation of what // each code means, go to the ICANN website (https://www.icann.org/) and search // for epp status codes. (Search on the ICANN website; web searches sometimes // return an old version of the document.) // // Type: Array of String StatusList []*string `type:"list"` // Provides details about the domain technical contact. // // Type: Complex // // Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, // AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, // Email, Fax, ExtraParams // // TechContact is a required field TechContact *ContactDetail `type:"structure" required:"true"` // Specifies whether contact information for the tech contact is concealed from // WHOIS queries. If the value is true, WHOIS ("who is") queries will return // contact information for our registrar partner, Gandi, instead of the contact // information that you enter. // // Type: Boolean TechPrivacy *bool `type:"boolean"` // The last updated date of the domain as found in the response to a WHOIS query. // The date format is Unix time. UpdatedDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The fully qualified name of the WHOIS server that can answer the WHOIS query // for the domain. // // Type: String WhoIsServer *string `type:"string"` } // String returns the string representation func (s GetDomainDetailOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDomainDetailOutput) GoString() string { return s.String() } type GetDomainSuggestionsInput struct { _ struct{} `type:"structure"` // DomainName is a required field DomainName *string `type:"string" required:"true"` // OnlyAvailable is a required field OnlyAvailable *bool `type:"boolean" required:"true"` // SuggestionCount is a required field SuggestionCount *int64 `type:"integer" required:"true"` } // String returns the string representation func (s GetDomainSuggestionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDomainSuggestionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDomainSuggestionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDomainSuggestionsInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.OnlyAvailable == nil { invalidParams.Add(request.NewErrParamRequired("OnlyAvailable")) } if s.SuggestionCount == nil { invalidParams.Add(request.NewErrParamRequired("SuggestionCount")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetDomainSuggestionsOutput struct { _ struct{} `type:"structure"` SuggestionsList []*DomainSuggestion `type:"list"` } // String returns the string representation func (s GetDomainSuggestionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDomainSuggestionsOutput) GoString() string { return s.String() } // The GetOperationDetail request includes the following element. type GetOperationDetailInput struct { _ struct{} `type:"structure"` // The identifier for the operation for which you want to get the status. Amazon // Route 53 returned the identifier in the response to the original request. // // Type: String // // Default: None // // Required: Yes // // OperationId is a required field OperationId *string `type:"string" required:"true"` } // String returns the string representation func (s GetOperationDetailInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetOperationDetailInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetOperationDetailInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetOperationDetailInput"} if s.OperationId == nil { invalidParams.Add(request.NewErrParamRequired("OperationId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The GetOperationDetail response includes the following elements. type GetOperationDetailOutput struct { _ struct{} `type:"structure"` // The name of a domain. // // Type: String DomainName *string `type:"string"` // Detailed information on the status including possible errors. // // Type: String Message *string `type:"string"` // The identifier for the operation. // // Type: String OperationId *string `type:"string"` // The current status of the requested operation in the system. // // Type: String Status *string `type:"string" enum:"OperationStatus"` // The date when the request was submitted. SubmittedDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The type of operation that was requested. // // Type: String Type *string `type:"string" enum:"OperationType"` } // String returns the string representation func (s GetOperationDetailOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetOperationDetailOutput) GoString() string { return s.String() } // The ListDomains request includes the following elements. type ListDomainsInput struct { _ struct{} `type:"structure"` // For an initial request for a list of domains, omit this element. If the number // of domains that are associated with the current AWS account is greater than // the value that you specified for MaxItems, you can use Marker to return additional // domains. Get the value of NextPageMarker from the previous response, and // submit another request that includes the value of NextPageMarker in the Marker // element. // // Type: String // // Default: None // // Constraints: The marker must match the value specified in the previous request. // // Required: No Marker *string `type:"string"` // Number of domains to be returned. // // Type: Integer // // Default: 20 // // Constraints: A numeral between 1 and 100. // // Required: No MaxItems *int64 `type:"integer"` } // String returns the string representation func (s ListDomainsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDomainsInput) GoString() string { return s.String() } // The ListDomains response includes the following elements. type ListDomainsOutput struct { _ struct{} `type:"structure"` // A summary of domains. // // Type: Complex type containing a list of domain summaries. // // Children: AutoRenew, DomainName, Expiry, TransferLock // // Domains is a required field Domains []*DomainSummary `type:"list" required:"true"` // If there are more domains than you specified for MaxItems in the request, // submit another request and include the value of NextPageMarker in the value // of Marker. // // Type: String // // Parent: Operations NextPageMarker *string `type:"string"` } // String returns the string representation func (s ListDomainsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDomainsOutput) GoString() string { return s.String() } // The ListOperations request includes the following elements. type ListOperationsInput struct { _ struct{} `type:"structure"` // For an initial request for a list of operations, omit this element. If the // number of operations that are not yet complete is greater than the value // that you specified for MaxItems, you can use Marker to return additional // operations. Get the value of NextPageMarker from the previous response, and // submit another request that includes the value of NextPageMarker in the Marker // element. // // Type: String // // Default: None // // Required: No Marker *string `type:"string"` // Number of domains to be returned. // // Type: Integer // // Default: 20 // // Constraints: A value between 1 and 100. // // Required: No MaxItems *int64 `type:"integer"` } // String returns the string representation func (s ListOperationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListOperationsInput) GoString() string { return s.String() } // The ListOperations response includes the following elements. type ListOperationsOutput struct { _ struct{} `type:"structure"` // If there are more operations than you specified for MaxItems in the request, // submit another request and include the value of NextPageMarker in the value // of Marker. // // Type: String // // Parent: Operations NextPageMarker *string `type:"string"` // Lists summaries of the operations. // // Type: Complex type containing a list of operation summaries // // Children: OperationId, Status, SubmittedDate, Type // // Operations is a required field Operations []*OperationSummary `type:"list" required:"true"` } // String returns the string representation func (s ListOperationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListOperationsOutput) GoString() string { return s.String() } // The ListTagsForDomainRequest includes the following elements. type ListTagsForDomainInput struct { _ struct{} `type:"structure"` // The domain for which you want to get a list of tags. // // DomainName is a required field DomainName *string `type:"string" required:"true"` } // String returns the string representation func (s ListTagsForDomainInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForDomainInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsForDomainInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsForDomainInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The ListTagsForDomain response includes the following elements. type ListTagsForDomainOutput struct { _ struct{} `type:"structure"` // A list of the tags that are associated with the specified domain. // // Type: A complex type containing a list of tags // // Each tag includes the following elements. // // * Key // // The key (name) of a tag. // // Type: String // // * Value // // The value of a tag. // // Type: String // // TagList is a required field TagList []*Tag `type:"list" required:"true"` } // String returns the string representation func (s ListTagsForDomainOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForDomainOutput) GoString() string { return s.String() } // Nameserver includes the following elements. type Nameserver struct { _ struct{} `type:"structure"` // Glue IP address of a name server entry. Glue IP addresses are required only // when the name of the name server is a subdomain of the domain. For example, // if your domain is example.com and the name server for the domain is ns.example.com, // you need to specify the IP address for ns.example.com. // // Type: List of IP addresses. // // Constraints: The list can contain only one IPv4 and one IPv6 address. // // Parent: Nameservers GlueIps []*string `type:"list"` // The fully qualified host name of the name server. // // Type: String // // Constraint: Maximum 255 characterss // // Parent: Nameservers // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s Nameserver) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Nameserver) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Nameserver) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Nameserver"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // OperationSummary includes the following elements. type OperationSummary struct { _ struct{} `type:"structure"` // Identifier returned to track the requested action. // // Type: String // // OperationId is a required field OperationId *string `type:"string" required:"true"` // The current status of the requested operation in the system. // // Type: String // // Status is a required field Status *string `type:"string" required:"true" enum:"OperationStatus"` // The date when the request was submitted. // // SubmittedDate is a required field SubmittedDate *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` // Type of the action requested. // // Type: String // // Valid values: REGISTER_DOMAIN | DELETE_DOMAIN | TRANSFER_IN_DOMAIN | UPDATE_DOMAIN_CONTACT // | UPDATE_NAMESERVER | CHANGE_PRIVACY_PROTECTION | DOMAIN_LOCK // // Type is a required field Type *string `type:"string" required:"true" enum:"OperationType"` } // String returns the string representation func (s OperationSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OperationSummary) GoString() string { return s.String() } // The RegisterDomain request includes the following elements. type RegisterDomainInput struct { _ struct{} `type:"structure"` // Provides detailed contact information. // // Type: Complex // // Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, // AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, // Email, Fax, ExtraParams // // Required: Yes // // AdminContact is a required field AdminContact *ContactDetail `type:"structure" required:"true"` // Indicates whether the domain will be automatically renewed (true) or not // (false). Autorenewal only takes effect after the account is charged. // // Type: Boolean // // Valid values: true | false // // Default: true // // Required: No AutoRenew *bool `type:"boolean"` // The name of a domain. // // Type: String // // Default: None // // Constraints: The domain name can contain only the letters a through z, the // numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not // supported. // // Required: Yes // // DomainName is a required field DomainName *string `type:"string" required:"true"` // The number of years the domain will be registered. Domains are registered // for a minimum of one year. The maximum period depends on the top-level domain. // // Type: Integer // // Default: 1 // // Valid values: Integer from 1 to 10 // // Required: Yes // // DurationInYears is a required field DurationInYears *int64 `min:"1" type:"integer" required:"true"` // Reserved for future use. IdnLangCode *string `type:"string"` // Whether you want to conceal contact information from WHOIS queries. If you // specify true, WHOIS ("who is") queries will return contact information for // our registrar partner, Gandi, instead of the contact information that you // enter. // // Type: Boolean // // Default: true // // Valid values: true | false // // Required: No PrivacyProtectAdminContact *bool `type:"boolean"` // Whether you want to conceal contact information from WHOIS queries. If you // specify true, WHOIS ("who is") queries will return contact information for // our registrar partner, Gandi, instead of the contact information that you // enter. // // Type: Boolean // // Default: true // // Valid values: true | false // // Required: No PrivacyProtectRegistrantContact *bool `type:"boolean"` // Whether you want to conceal contact information from WHOIS queries. If you // specify true, WHOIS ("who is") queries will return contact information for // our registrar partner, Gandi, instead of the contact information that you // enter. // // Type: Boolean // // Default: true // // Valid values: true | false // // Required: No PrivacyProtectTechContact *bool `type:"boolean"` // Provides detailed contact information. // // Type: Complex // // Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, // AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, // Email, Fax, ExtraParams // // Required: Yes // // RegistrantContact is a required field RegistrantContact *ContactDetail `type:"structure" required:"true"` // Provides detailed contact information. // // Type: Complex // // Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, // AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, // Email, Fax, ExtraParams // // Required: Yes // // TechContact is a required field TechContact *ContactDetail `type:"structure" required:"true"` } // String returns the string representation func (s RegisterDomainInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterDomainInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterDomainInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterDomainInput"} if s.AdminContact == nil { invalidParams.Add(request.NewErrParamRequired("AdminContact")) } if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DurationInYears == nil { invalidParams.Add(request.NewErrParamRequired("DurationInYears")) } if s.DurationInYears != nil && *s.DurationInYears < 1 { invalidParams.Add(request.NewErrParamMinValue("DurationInYears", 1)) } if s.RegistrantContact == nil { invalidParams.Add(request.NewErrParamRequired("RegistrantContact")) } if s.TechContact == nil { invalidParams.Add(request.NewErrParamRequired("TechContact")) } if s.AdminContact != nil { if err := s.AdminContact.Validate(); err != nil { invalidParams.AddNested("AdminContact", err.(request.ErrInvalidParams)) } } if s.RegistrantContact != nil { if err := s.RegistrantContact.Validate(); err != nil { invalidParams.AddNested("RegistrantContact", err.(request.ErrInvalidParams)) } } if s.TechContact != nil { if err := s.TechContact.Validate(); err != nil { invalidParams.AddNested("TechContact", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The RegisterDomain response includes the following element. type RegisterDomainOutput struct { _ struct{} `type:"structure"` // Identifier for tracking the progress of the request. To use this ID to query // the operation status, use GetOperationDetail. // // Type: String // // Default: None // // Constraints: Maximum 255 characters. // // OperationId is a required field OperationId *string `type:"string" required:"true"` } // String returns the string representation func (s RegisterDomainOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterDomainOutput) GoString() string { return s.String() } // A RenewDomain request includes the number of years that you want to renew // for and the current expiration year. type RenewDomainInput struct { _ struct{} `type:"structure"` // The year when the registration for the domain is set to expire. This value // must match the current expiration date for the domain. // // Type: Integer // // Default: None // // Valid values: Integer // // Required: Yes // // CurrentExpiryYear is a required field CurrentExpiryYear *int64 `type:"integer" required:"true"` // DomainName is a required field DomainName *string `type:"string" required:"true"` // The number of years that you want to renew the domain for. The maximum number // of years depends on the top-level domain. For the range of valid values for // your domain, see Domains that You Can Register with Amazon Route 53 (http://docs.aws.amazon.com/console/route53/domain-tld-list) // in the Amazon Route 53 documentation. // // Type: Integer // // Default: 1 // // Valid values: Integer from 1 to 10 // // Required: No DurationInYears *int64 `min:"1" type:"integer"` } // String returns the string representation func (s RenewDomainInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RenewDomainInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RenewDomainInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RenewDomainInput"} if s.CurrentExpiryYear == nil { invalidParams.Add(request.NewErrParamRequired("CurrentExpiryYear")) } if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DurationInYears != nil && *s.DurationInYears < 1 { invalidParams.Add(request.NewErrParamMinValue("DurationInYears", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RenewDomainOutput struct { _ struct{} `type:"structure"` // OperationId is a required field OperationId *string `type:"string" required:"true"` } // String returns the string representation func (s RenewDomainOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RenewDomainOutput) GoString() string { return s.String() } type ResendContactReachabilityEmailInput struct { _ struct{} `type:"structure"` // The name of the domain for which you want Amazon Route 53 to resend a confirmation // email to the registrant contact. // // Type: String // // Default: None // // Required: Yes DomainName *string `locationName:"domainName" type:"string"` } // String returns the string representation func (s ResendContactReachabilityEmailInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResendContactReachabilityEmailInput) GoString() string { return s.String() } type ResendContactReachabilityEmailOutput struct { _ struct{} `type:"structure"` // The domain name for which you requested a confirmation email. DomainName *string `locationName:"domainName" type:"string"` // The email address for the registrant contact at the time that we sent the // verification email. EmailAddress *string `locationName:"emailAddress" type:"string"` // True if the email address for the registrant contact has already been verified, // and false otherwise. If the email address has already been verified, we don't // send another confirmation email. IsAlreadyVerified *bool `locationName:"isAlreadyVerified" type:"boolean"` } // String returns the string representation func (s ResendContactReachabilityEmailOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResendContactReachabilityEmailOutput) GoString() string { return s.String() } // The RetrieveDomainAuthCode request includes the following element. type RetrieveDomainAuthCodeInput struct { _ struct{} `type:"structure"` // The name of a domain. // // Type: String // // Default: None // // Constraints: The domain name can contain only the letters a through z, the // numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not // supported. // // Required: Yes // // DomainName is a required field DomainName *string `type:"string" required:"true"` } // String returns the string representation func (s RetrieveDomainAuthCodeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RetrieveDomainAuthCodeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RetrieveDomainAuthCodeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RetrieveDomainAuthCodeInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The RetrieveDomainAuthCode response includes the following element. type RetrieveDomainAuthCodeOutput struct { _ struct{} `type:"structure"` // The authorization code for the domain. // // Type: String // // AuthCode is a required field AuthCode *string `type:"string" required:"true"` } // String returns the string representation func (s RetrieveDomainAuthCodeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RetrieveDomainAuthCodeOutput) GoString() string { return s.String() } // Each tag includes the following elements. type Tag struct { _ struct{} `type:"structure"` // The key (name) of a tag. // // Type: String // // Default: None // // Valid values: A-Z, a-z, 0-9, space, ".:/=+\-@" // // Constraints: Each key can be 1-128 characters long. // // Required: Yes Key *string `type:"string"` // The value of a tag. // // Type: String // // Default: None // // Valid values: A-Z, a-z, 0-9, space, ".:/=+\-@" // // Constraints: Each value can be 0-256 characters long. // // Required: Yes Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // The TransferDomain request includes the following elements. type TransferDomainInput struct { _ struct{} `type:"structure"` // Provides detailed contact information. // // Type: Complex // // Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, // AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, // Email, Fax, ExtraParams // // Required: Yes // // AdminContact is a required field AdminContact *ContactDetail `type:"structure" required:"true"` // The authorization code for the domain. You get this value from the current // registrar. // // Type: String // // Required: Yes AuthCode *string `type:"string"` // Indicates whether the domain will be automatically renewed (true) or not // (false). Autorenewal only takes effect after the account is charged. // // Type: Boolean // // Valid values: true | false // // Default: true // // Required: No AutoRenew *bool `type:"boolean"` // The name of a domain. // // Type: String // // Default: None // // Constraints: The domain name can contain only the letters a through z, the // numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not // supported. // // Required: Yes // // DomainName is a required field DomainName *string `type:"string" required:"true"` // The number of years the domain will be registered. Domains are registered // for a minimum of one year. The maximum period depends on the top-level domain. // // Type: Integer // // Default: 1 // // Valid values: Integer from 1 to 10 // // Required: Yes // // DurationInYears is a required field DurationInYears *int64 `min:"1" type:"integer" required:"true"` // Reserved for future use. IdnLangCode *string `type:"string"` // Contains details for the host and glue IP addresses. // // Type: Complex // // Children: GlueIps, Name // // Required: No Nameservers []*Nameserver `type:"list"` // Whether you want to conceal contact information from WHOIS queries. If you // specify true, WHOIS ("who is") queries will return contact information for // our registrar partner, Gandi, instead of the contact information that you // enter. // // Type: Boolean // // Default: true // // Valid values: true | false // // Required: No PrivacyProtectAdminContact *bool `type:"boolean"` // Whether you want to conceal contact information from WHOIS queries. If you // specify true, WHOIS ("who is") queries will return contact information for // our registrar partner, Gandi, instead of the contact information that you // enter. // // Type: Boolean // // Default: true // // Valid values: true | false // // Required: No PrivacyProtectRegistrantContact *bool `type:"boolean"` // Whether you want to conceal contact information from WHOIS queries. If you // specify true, WHOIS ("who is") queries will return contact information for // our registrar partner, Gandi, instead of the contact information that you // enter. // // Type: Boolean // // Default: true // // Valid values: true | false // // Required: No PrivacyProtectTechContact *bool `type:"boolean"` // Provides detailed contact information. // // Type: Complex // // Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, // AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, // Email, Fax, ExtraParams // // Required: Yes // // RegistrantContact is a required field RegistrantContact *ContactDetail `type:"structure" required:"true"` // Provides detailed contact information. // // Type: Complex // // Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, // AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, // Email, Fax, ExtraParams // // Required: Yes // // TechContact is a required field TechContact *ContactDetail `type:"structure" required:"true"` } // String returns the string representation func (s TransferDomainInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TransferDomainInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TransferDomainInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TransferDomainInput"} if s.AdminContact == nil { invalidParams.Add(request.NewErrParamRequired("AdminContact")) } if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.DurationInYears == nil { invalidParams.Add(request.NewErrParamRequired("DurationInYears")) } if s.DurationInYears != nil && *s.DurationInYears < 1 { invalidParams.Add(request.NewErrParamMinValue("DurationInYears", 1)) } if s.RegistrantContact == nil { invalidParams.Add(request.NewErrParamRequired("RegistrantContact")) } if s.TechContact == nil { invalidParams.Add(request.NewErrParamRequired("TechContact")) } if s.AdminContact != nil { if err := s.AdminContact.Validate(); err != nil { invalidParams.AddNested("AdminContact", err.(request.ErrInvalidParams)) } } if s.Nameservers != nil { for i, v := range s.Nameservers { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Nameservers", i), err.(request.ErrInvalidParams)) } } } if s.RegistrantContact != nil { if err := s.RegistrantContact.Validate(); err != nil { invalidParams.AddNested("RegistrantContact", err.(request.ErrInvalidParams)) } } if s.TechContact != nil { if err := s.TechContact.Validate(); err != nil { invalidParams.AddNested("TechContact", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The TranserDomain response includes the following element. type TransferDomainOutput struct { _ struct{} `type:"structure"` // Identifier for tracking the progress of the request. To use this ID to query // the operation status, use GetOperationDetail. // // Type: String // // Default: None // // Constraints: Maximum 255 characters. // // OperationId is a required field OperationId *string `type:"string" required:"true"` } // String returns the string representation func (s TransferDomainOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TransferDomainOutput) GoString() string { return s.String() } // The UpdateDomainContact request includes the following elements. type UpdateDomainContactInput struct { _ struct{} `type:"structure"` // Provides detailed contact information. // // Type: Complex // // Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, // AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, // Email, Fax, ExtraParams // // Required: Yes AdminContact *ContactDetail `type:"structure"` // The name of a domain. // // Type: String // // Default: None // // Constraints: The domain name can contain only the letters a through z, the // numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not // supported. // // Required: Yes // // DomainName is a required field DomainName *string `type:"string" required:"true"` // Provides detailed contact information. // // Type: Complex // // Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, // AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, // Email, Fax, ExtraParams // // Required: Yes RegistrantContact *ContactDetail `type:"structure"` // Provides detailed contact information. // // Type: Complex // // Children: FirstName, MiddleName, LastName, ContactType, OrganizationName, // AddressLine1, AddressLine2, City, State, CountryCode, ZipCode, PhoneNumber, // Email, Fax, ExtraParams // // Required: Yes TechContact *ContactDetail `type:"structure"` } // String returns the string representation func (s UpdateDomainContactInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDomainContactInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateDomainContactInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateDomainContactInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.AdminContact != nil { if err := s.AdminContact.Validate(); err != nil { invalidParams.AddNested("AdminContact", err.(request.ErrInvalidParams)) } } if s.RegistrantContact != nil { if err := s.RegistrantContact.Validate(); err != nil { invalidParams.AddNested("RegistrantContact", err.(request.ErrInvalidParams)) } } if s.TechContact != nil { if err := s.TechContact.Validate(); err != nil { invalidParams.AddNested("TechContact", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The UpdateDomainContact response includes the following element. type UpdateDomainContactOutput struct { _ struct{} `type:"structure"` // Identifier for tracking the progress of the request. To use this ID to query // the operation status, use GetOperationDetail. // // Type: String // // Default: None // // Constraints: Maximum 255 characters. // // OperationId is a required field OperationId *string `type:"string" required:"true"` } // String returns the string representation func (s UpdateDomainContactOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDomainContactOutput) GoString() string { return s.String() } // The UpdateDomainContactPrivacy request includes the following elements. type UpdateDomainContactPrivacyInput struct { _ struct{} `type:"structure"` // Whether you want to conceal contact information from WHOIS queries. If you // specify true, WHOIS ("who is") queries will return contact information for // our registrar partner, Gandi, instead of the contact information that you // enter. // // Type: Boolean // // Default: None // // Valid values: true | false // // Required: No AdminPrivacy *bool `type:"boolean"` // The name of a domain. // // Type: String // // Default: None // // Constraints: The domain name can contain only the letters a through z, the // numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not // supported. // // Required: Yes // // DomainName is a required field DomainName *string `type:"string" required:"true"` // Whether you want to conceal contact information from WHOIS queries. If you // specify true, WHOIS ("who is") queries will return contact information for // our registrar partner, Gandi, instead of the contact information that you // enter. // // Type: Boolean // // Default: None // // Valid values: true | false // // Required: No RegistrantPrivacy *bool `type:"boolean"` // Whether you want to conceal contact information from WHOIS queries. If you // specify true, WHOIS ("who is") queries will return contact information for // our registrar partner, Gandi, instead of the contact information that you // enter. // // Type: Boolean // // Default: None // // Valid values: true | false // // Required: No TechPrivacy *bool `type:"boolean"` } // String returns the string representation func (s UpdateDomainContactPrivacyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDomainContactPrivacyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateDomainContactPrivacyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateDomainContactPrivacyInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The UpdateDomainContactPrivacy response includes the following element. type UpdateDomainContactPrivacyOutput struct { _ struct{} `type:"structure"` // Identifier for tracking the progress of the request. To use this ID to query // the operation status, use GetOperationDetail. // // Type: String // // Default: None // // Constraints: Maximum 255 characters. // // OperationId is a required field OperationId *string `type:"string" required:"true"` } // String returns the string representation func (s UpdateDomainContactPrivacyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDomainContactPrivacyOutput) GoString() string { return s.String() } // The UpdateDomainNameserver request includes the following elements. type UpdateDomainNameserversInput struct { _ struct{} `type:"structure"` // The name of a domain. // // Type: String // // Default: None // // Constraints: The domain name can contain only the letters a through z, the // numbers 0 through 9, and hyphen (-). Internationalized Domain Names are not // supported. // // Required: Yes // // DomainName is a required field DomainName *string `type:"string" required:"true"` // The authorization key for .fi domains FIAuthKey *string `type:"string"` // A list of new name servers for the domain. // // Type: Complex // // Children: Name, GlueIps // // Required: Yes // // Nameservers is a required field Nameservers []*Nameserver `type:"list" required:"true"` } // String returns the string representation func (s UpdateDomainNameserversInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDomainNameserversInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateDomainNameserversInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateDomainNameserversInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.Nameservers == nil { invalidParams.Add(request.NewErrParamRequired("Nameservers")) } if s.Nameservers != nil { for i, v := range s.Nameservers { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Nameservers", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The UpdateDomainNameservers response includes the following element. type UpdateDomainNameserversOutput struct { _ struct{} `type:"structure"` // Identifier for tracking the progress of the request. To use this ID to query // the operation status, use GetOperationDetail. // // Type: String // // Default: None // // Constraints: Maximum 255 characters. // // OperationId is a required field OperationId *string `type:"string" required:"true"` } // String returns the string representation func (s UpdateDomainNameserversOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateDomainNameserversOutput) GoString() string { return s.String() } // The UpdateTagsForDomainRequest includes the following elements. type UpdateTagsForDomainInput struct { _ struct{} `type:"structure"` // The domain for which you want to add or update tags. // // The name of a domain. // // Type: String // // Default: None // // Constraints: The domain name can contain only the letters a through z, the // numbers 0 through 9, and hyphen (-). Hyphens are allowed only when they're // surrounded by letters, numbers, or other hyphens. You can't specify a hyphen // at the beginning or end of a label. To specify an Internationalized Domain // Name, you must convert the name to Punycode. // // Required: Yes // // DomainName is a required field DomainName *string `type:"string" required:"true"` // A list of the tag keys and values that you want to add or update. If you // specify a key that already exists, the corresponding value will be replaced. // // Type: A complex type containing a list of tags // // Default: None // // Required: No // // '> Each tag includes the following elements: // // * Key // // The key (name) of a tag. // // Type: String // // Default: None // // Valid values: Unicode characters including alphanumeric, space, and ".:/=+\-@" // // Constraints: Each key can be 1-128 characters long. // // Required: Yes // // * Value // // The value of a tag. // // Type: String // // Default: None // // Valid values: Unicode characters including alphanumeric, space, and ".:/=+\-@" // // Constraints: Each value can be 0-256 characters long. // // Required: Yes TagsToUpdate []*Tag `type:"list"` } // String returns the string representation func (s UpdateTagsForDomainInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateTagsForDomainInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateTagsForDomainInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateTagsForDomainInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateTagsForDomainOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateTagsForDomainOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateTagsForDomainOutput) GoString() string { return s.String() } // The ViewBilling request includes the following elements. type ViewBillingInput struct { _ struct{} `type:"structure"` // The end date and time for the time period for which you want a list of billing // records. Specify the date in Unix time format. // // Type: Double // // Default: None // // Required: Yes End *time.Time `type:"timestamp" timestampFormat:"unix"` // For an initial request for a list of billing records, omit this element. // If the number of billing records that are associated with the current AWS // account during the specified period is greater than the value that you specified // for MaxItems, you can use Marker to return additional billing records. Get // the value of NextPageMarker from the previous response, and submit another // request that includes the value of NextPageMarker in the Marker element. // // Type: String // // Default: None // // Constraints: The marker must match the value of NextPageMarker that was returned // in the previous response. // // Required: No Marker *string `type:"string"` // The number of billing records to be returned. // // Type: Integer // // Default: 20 // // Constraints: A value between 1 and 100. // // Required: No MaxItems *int64 `type:"integer"` // The beginning date and time for the time period for which you want a list // of billing records. Specify the date in Unix time format. // // Type: Double // // Default: None // // Required: Yes Start *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s ViewBillingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ViewBillingInput) GoString() string { return s.String() } // The ViewBilling response includes the following elements. type ViewBillingOutput struct { _ struct{} `type:"structure"` // A summary of billing records. // // Type: Complex type containing a list of billing record summaries. // // Children: DomainName, Operation, InvoiceId, BillDate and Price BillingRecords []*BillingRecord `type:"list"` // If there are more billing records than you specified for MaxItems in the // request, submit another request and include the value of NextPageMarker in // the value of Marker. // // Type: String // // Parent: BillingRecords NextPageMarker *string `type:"string"` } // String returns the string representation func (s ViewBillingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ViewBillingOutput) GoString() string { return s.String() } const ( // ContactTypePerson is a ContactType enum value ContactTypePerson = "PERSON" // ContactTypeCompany is a ContactType enum value ContactTypeCompany = "COMPANY" // ContactTypeAssociation is a ContactType enum value ContactTypeAssociation = "ASSOCIATION" // ContactTypePublicBody is a ContactType enum value ContactTypePublicBody = "PUBLIC_BODY" // ContactTypeReseller is a ContactType enum value ContactTypeReseller = "RESELLER" ) const ( // CountryCodeAd is a CountryCode enum value CountryCodeAd = "AD" // CountryCodeAe is a CountryCode enum value CountryCodeAe = "AE" // CountryCodeAf is a CountryCode enum value CountryCodeAf = "AF" // CountryCodeAg is a CountryCode enum value CountryCodeAg = "AG" // CountryCodeAi is a CountryCode enum value CountryCodeAi = "AI" // CountryCodeAl is a CountryCode enum value CountryCodeAl = "AL" // CountryCodeAm is a CountryCode enum value CountryCodeAm = "AM" // CountryCodeAn is a CountryCode enum value CountryCodeAn = "AN" // CountryCodeAo is a CountryCode enum value CountryCodeAo = "AO" // CountryCodeAq is a CountryCode enum value CountryCodeAq = "AQ" // CountryCodeAr is a CountryCode enum value CountryCodeAr = "AR" // CountryCodeAs is a CountryCode enum value CountryCodeAs = "AS" // CountryCodeAt is a CountryCode enum value CountryCodeAt = "AT" // CountryCodeAu is a CountryCode enum value CountryCodeAu = "AU" // CountryCodeAw is a CountryCode enum value CountryCodeAw = "AW" // CountryCodeAz is a CountryCode enum value CountryCodeAz = "AZ" // CountryCodeBa is a CountryCode enum value CountryCodeBa = "BA" // CountryCodeBb is a CountryCode enum value CountryCodeBb = "BB" // CountryCodeBd is a CountryCode enum value CountryCodeBd = "BD" // CountryCodeBe is a CountryCode enum value CountryCodeBe = "BE" // CountryCodeBf is a CountryCode enum value CountryCodeBf = "BF" // CountryCodeBg is a CountryCode enum value CountryCodeBg = "BG" // CountryCodeBh is a CountryCode enum value CountryCodeBh = "BH" // CountryCodeBi is a CountryCode enum value CountryCodeBi = "BI" // CountryCodeBj is a CountryCode enum value CountryCodeBj = "BJ" // CountryCodeBl is a CountryCode enum value CountryCodeBl = "BL" // CountryCodeBm is a CountryCode enum value CountryCodeBm = "BM" // CountryCodeBn is a CountryCode enum value CountryCodeBn = "BN" // CountryCodeBo is a CountryCode enum value CountryCodeBo = "BO" // CountryCodeBr is a CountryCode enum value CountryCodeBr = "BR" // CountryCodeBs is a CountryCode enum value CountryCodeBs = "BS" // CountryCodeBt is a CountryCode enum value CountryCodeBt = "BT" // CountryCodeBw is a CountryCode enum value CountryCodeBw = "BW" // CountryCodeBy is a CountryCode enum value CountryCodeBy = "BY" // CountryCodeBz is a CountryCode enum value CountryCodeBz = "BZ" // CountryCodeCa is a CountryCode enum value CountryCodeCa = "CA" // CountryCodeCc is a CountryCode enum value CountryCodeCc = "CC" // CountryCodeCd is a CountryCode enum value CountryCodeCd = "CD" // CountryCodeCf is a CountryCode enum value CountryCodeCf = "CF" // CountryCodeCg is a CountryCode enum value CountryCodeCg = "CG" // CountryCodeCh is a CountryCode enum value CountryCodeCh = "CH" // CountryCodeCi is a CountryCode enum value CountryCodeCi = "CI" // CountryCodeCk is a CountryCode enum value CountryCodeCk = "CK" // CountryCodeCl is a CountryCode enum value CountryCodeCl = "CL" // CountryCodeCm is a CountryCode enum value CountryCodeCm = "CM" // CountryCodeCn is a CountryCode enum value CountryCodeCn = "CN" // CountryCodeCo is a CountryCode enum value CountryCodeCo = "CO" // CountryCodeCr is a CountryCode enum value CountryCodeCr = "CR" // CountryCodeCu is a CountryCode enum value CountryCodeCu = "CU" // CountryCodeCv is a CountryCode enum value CountryCodeCv = "CV" // CountryCodeCx is a CountryCode enum value CountryCodeCx = "CX" // CountryCodeCy is a CountryCode enum value CountryCodeCy = "CY" // CountryCodeCz is a CountryCode enum value CountryCodeCz = "CZ" // CountryCodeDe is a CountryCode enum value CountryCodeDe = "DE" // CountryCodeDj is a CountryCode enum value CountryCodeDj = "DJ" // CountryCodeDk is a CountryCode enum value CountryCodeDk = "DK" // CountryCodeDm is a CountryCode enum value CountryCodeDm = "DM" // CountryCodeDo is a CountryCode enum value CountryCodeDo = "DO" // CountryCodeDz is a CountryCode enum value CountryCodeDz = "DZ" // CountryCodeEc is a CountryCode enum value CountryCodeEc = "EC" // CountryCodeEe is a CountryCode enum value CountryCodeEe = "EE" // CountryCodeEg is a CountryCode enum value CountryCodeEg = "EG" // CountryCodeEr is a CountryCode enum value CountryCodeEr = "ER" // CountryCodeEs is a CountryCode enum value CountryCodeEs = "ES" // CountryCodeEt is a CountryCode enum value CountryCodeEt = "ET" // CountryCodeFi is a CountryCode enum value CountryCodeFi = "FI" // CountryCodeFj is a CountryCode enum value CountryCodeFj = "FJ" // CountryCodeFk is a CountryCode enum value CountryCodeFk = "FK" // CountryCodeFm is a CountryCode enum value CountryCodeFm = "FM" // CountryCodeFo is a CountryCode enum value CountryCodeFo = "FO" // CountryCodeFr is a CountryCode enum value CountryCodeFr = "FR" // CountryCodeGa is a CountryCode enum value CountryCodeGa = "GA" // CountryCodeGb is a CountryCode enum value CountryCodeGb = "GB" // CountryCodeGd is a CountryCode enum value CountryCodeGd = "GD" // CountryCodeGe is a CountryCode enum value CountryCodeGe = "GE" // CountryCodeGh is a CountryCode enum value CountryCodeGh = "GH" // CountryCodeGi is a CountryCode enum value CountryCodeGi = "GI" // CountryCodeGl is a CountryCode enum value CountryCodeGl = "GL" // CountryCodeGm is a CountryCode enum value CountryCodeGm = "GM" // CountryCodeGn is a CountryCode enum value CountryCodeGn = "GN" // CountryCodeGq is a CountryCode enum value CountryCodeGq = "GQ" // CountryCodeGr is a CountryCode enum value CountryCodeGr = "GR" // CountryCodeGt is a CountryCode enum value CountryCodeGt = "GT" // CountryCodeGu is a CountryCode enum value CountryCodeGu = "GU" // CountryCodeGw is a CountryCode enum value CountryCodeGw = "GW" // CountryCodeGy is a CountryCode enum value CountryCodeGy = "GY" // CountryCodeHk is a CountryCode enum value CountryCodeHk = "HK" // CountryCodeHn is a CountryCode enum value CountryCodeHn = "HN" // CountryCodeHr is a CountryCode enum value CountryCodeHr = "HR" // CountryCodeHt is a CountryCode enum value CountryCodeHt = "HT" // CountryCodeHu is a CountryCode enum value CountryCodeHu = "HU" // CountryCodeId is a CountryCode enum value CountryCodeId = "ID" // CountryCodeIe is a CountryCode enum value CountryCodeIe = "IE" // CountryCodeIl is a CountryCode enum value CountryCodeIl = "IL" // CountryCodeIm is a CountryCode enum value CountryCodeIm = "IM" // CountryCodeIn is a CountryCode enum value CountryCodeIn = "IN" // CountryCodeIq is a CountryCode enum value CountryCodeIq = "IQ" // CountryCodeIr is a CountryCode enum value CountryCodeIr = "IR" // CountryCodeIs is a CountryCode enum value CountryCodeIs = "IS" // CountryCodeIt is a CountryCode enum value CountryCodeIt = "IT" // CountryCodeJm is a CountryCode enum value CountryCodeJm = "JM" // CountryCodeJo is a CountryCode enum value CountryCodeJo = "JO" // CountryCodeJp is a CountryCode enum value CountryCodeJp = "JP" // CountryCodeKe is a CountryCode enum value CountryCodeKe = "KE" // CountryCodeKg is a CountryCode enum value CountryCodeKg = "KG" // CountryCodeKh is a CountryCode enum value CountryCodeKh = "KH" // CountryCodeKi is a CountryCode enum value CountryCodeKi = "KI" // CountryCodeKm is a CountryCode enum value CountryCodeKm = "KM" // CountryCodeKn is a CountryCode enum value CountryCodeKn = "KN" // CountryCodeKp is a CountryCode enum value CountryCodeKp = "KP" // CountryCodeKr is a CountryCode enum value CountryCodeKr = "KR" // CountryCodeKw is a CountryCode enum value CountryCodeKw = "KW" // CountryCodeKy is a CountryCode enum value CountryCodeKy = "KY" // CountryCodeKz is a CountryCode enum value CountryCodeKz = "KZ" // CountryCodeLa is a CountryCode enum value CountryCodeLa = "LA" // CountryCodeLb is a CountryCode enum value CountryCodeLb = "LB" // CountryCodeLc is a CountryCode enum value CountryCodeLc = "LC" // CountryCodeLi is a CountryCode enum value CountryCodeLi = "LI" // CountryCodeLk is a CountryCode enum value CountryCodeLk = "LK" // CountryCodeLr is a CountryCode enum value CountryCodeLr = "LR" // CountryCodeLs is a CountryCode enum value CountryCodeLs = "LS" // CountryCodeLt is a CountryCode enum value CountryCodeLt = "LT" // CountryCodeLu is a CountryCode enum value CountryCodeLu = "LU" // CountryCodeLv is a CountryCode enum value CountryCodeLv = "LV" // CountryCodeLy is a CountryCode enum value CountryCodeLy = "LY" // CountryCodeMa is a CountryCode enum value CountryCodeMa = "MA" // CountryCodeMc is a CountryCode enum value CountryCodeMc = "MC" // CountryCodeMd is a CountryCode enum value CountryCodeMd = "MD" // CountryCodeMe is a CountryCode enum value CountryCodeMe = "ME" // CountryCodeMf is a CountryCode enum value CountryCodeMf = "MF" // CountryCodeMg is a CountryCode enum value CountryCodeMg = "MG" // CountryCodeMh is a CountryCode enum value CountryCodeMh = "MH" // CountryCodeMk is a CountryCode enum value CountryCodeMk = "MK" // CountryCodeMl is a CountryCode enum value CountryCodeMl = "ML" // CountryCodeMm is a CountryCode enum value CountryCodeMm = "MM" // CountryCodeMn is a CountryCode enum value CountryCodeMn = "MN" // CountryCodeMo is a CountryCode enum value CountryCodeMo = "MO" // CountryCodeMp is a CountryCode enum value CountryCodeMp = "MP" // CountryCodeMr is a CountryCode enum value CountryCodeMr = "MR" // CountryCodeMs is a CountryCode enum value CountryCodeMs = "MS" // CountryCodeMt is a CountryCode enum value CountryCodeMt = "MT" // CountryCodeMu is a CountryCode enum value CountryCodeMu = "MU" // CountryCodeMv is a CountryCode enum value CountryCodeMv = "MV" // CountryCodeMw is a CountryCode enum value CountryCodeMw = "MW" // CountryCodeMx is a CountryCode enum value CountryCodeMx = "MX" // CountryCodeMy is a CountryCode enum value CountryCodeMy = "MY" // CountryCodeMz is a CountryCode enum value CountryCodeMz = "MZ" // CountryCodeNa is a CountryCode enum value CountryCodeNa = "NA" // CountryCodeNc is a CountryCode enum value CountryCodeNc = "NC" // CountryCodeNe is a CountryCode enum value CountryCodeNe = "NE" // CountryCodeNg is a CountryCode enum value CountryCodeNg = "NG" // CountryCodeNi is a CountryCode enum value CountryCodeNi = "NI" // CountryCodeNl is a CountryCode enum value CountryCodeNl = "NL" // CountryCodeNo is a CountryCode enum value CountryCodeNo = "NO" // CountryCodeNp is a CountryCode enum value CountryCodeNp = "NP" // CountryCodeNr is a CountryCode enum value CountryCodeNr = "NR" // CountryCodeNu is a CountryCode enum value CountryCodeNu = "NU" // CountryCodeNz is a CountryCode enum value CountryCodeNz = "NZ" // CountryCodeOm is a CountryCode enum value CountryCodeOm = "OM" // CountryCodePa is a CountryCode enum value CountryCodePa = "PA" // CountryCodePe is a CountryCode enum value CountryCodePe = "PE" // CountryCodePf is a CountryCode enum value CountryCodePf = "PF" // CountryCodePg is a CountryCode enum value CountryCodePg = "PG" // CountryCodePh is a CountryCode enum value CountryCodePh = "PH" // CountryCodePk is a CountryCode enum value CountryCodePk = "PK" // CountryCodePl is a CountryCode enum value CountryCodePl = "PL" // CountryCodePm is a CountryCode enum value CountryCodePm = "PM" // CountryCodePn is a CountryCode enum value CountryCodePn = "PN" // CountryCodePr is a CountryCode enum value CountryCodePr = "PR" // CountryCodePt is a CountryCode enum value CountryCodePt = "PT" // CountryCodePw is a CountryCode enum value CountryCodePw = "PW" // CountryCodePy is a CountryCode enum value CountryCodePy = "PY" // CountryCodeQa is a CountryCode enum value CountryCodeQa = "QA" // CountryCodeRo is a CountryCode enum value CountryCodeRo = "RO" // CountryCodeRs is a CountryCode enum value CountryCodeRs = "RS" // CountryCodeRu is a CountryCode enum value CountryCodeRu = "RU" // CountryCodeRw is a CountryCode enum value CountryCodeRw = "RW" // CountryCodeSa is a CountryCode enum value CountryCodeSa = "SA" // CountryCodeSb is a CountryCode enum value CountryCodeSb = "SB" // CountryCodeSc is a CountryCode enum value CountryCodeSc = "SC" // CountryCodeSd is a CountryCode enum value CountryCodeSd = "SD" // CountryCodeSe is a CountryCode enum value CountryCodeSe = "SE" // CountryCodeSg is a CountryCode enum value CountryCodeSg = "SG" // CountryCodeSh is a CountryCode enum value CountryCodeSh = "SH" // CountryCodeSi is a CountryCode enum value CountryCodeSi = "SI" // CountryCodeSk is a CountryCode enum value CountryCodeSk = "SK" // CountryCodeSl is a CountryCode enum value CountryCodeSl = "SL" // CountryCodeSm is a CountryCode enum value CountryCodeSm = "SM" // CountryCodeSn is a CountryCode enum value CountryCodeSn = "SN" // CountryCodeSo is a CountryCode enum value CountryCodeSo = "SO" // CountryCodeSr is a CountryCode enum value CountryCodeSr = "SR" // CountryCodeSt is a CountryCode enum value CountryCodeSt = "ST" // CountryCodeSv is a CountryCode enum value CountryCodeSv = "SV" // CountryCodeSy is a CountryCode enum value CountryCodeSy = "SY" // CountryCodeSz is a CountryCode enum value CountryCodeSz = "SZ" // CountryCodeTc is a CountryCode enum value CountryCodeTc = "TC" // CountryCodeTd is a CountryCode enum value CountryCodeTd = "TD" // CountryCodeTg is a CountryCode enum value CountryCodeTg = "TG" // CountryCodeTh is a CountryCode enum value CountryCodeTh = "TH" // CountryCodeTj is a CountryCode enum value CountryCodeTj = "TJ" // CountryCodeTk is a CountryCode enum value CountryCodeTk = "TK" // CountryCodeTl is a CountryCode enum value CountryCodeTl = "TL" // CountryCodeTm is a CountryCode enum value CountryCodeTm = "TM" // CountryCodeTn is a CountryCode enum value CountryCodeTn = "TN" // CountryCodeTo is a CountryCode enum value CountryCodeTo = "TO" // CountryCodeTr is a CountryCode enum value CountryCodeTr = "TR" // CountryCodeTt is a CountryCode enum value CountryCodeTt = "TT" // CountryCodeTv is a CountryCode enum value CountryCodeTv = "TV" // CountryCodeTw is a CountryCode enum value CountryCodeTw = "TW" // CountryCodeTz is a CountryCode enum value CountryCodeTz = "TZ" // CountryCodeUa is a CountryCode enum value CountryCodeUa = "UA" // CountryCodeUg is a CountryCode enum value CountryCodeUg = "UG" // CountryCodeUs is a CountryCode enum value CountryCodeUs = "US" // CountryCodeUy is a CountryCode enum value CountryCodeUy = "UY" // CountryCodeUz is a CountryCode enum value CountryCodeUz = "UZ" // CountryCodeVa is a CountryCode enum value CountryCodeVa = "VA" // CountryCodeVc is a CountryCode enum value CountryCodeVc = "VC" // CountryCodeVe is a CountryCode enum value CountryCodeVe = "VE" // CountryCodeVg is a CountryCode enum value CountryCodeVg = "VG" // CountryCodeVi is a CountryCode enum value CountryCodeVi = "VI" // CountryCodeVn is a CountryCode enum value CountryCodeVn = "VN" // CountryCodeVu is a CountryCode enum value CountryCodeVu = "VU" // CountryCodeWf is a CountryCode enum value CountryCodeWf = "WF" // CountryCodeWs is a CountryCode enum value CountryCodeWs = "WS" // CountryCodeYe is a CountryCode enum value CountryCodeYe = "YE" // CountryCodeYt is a CountryCode enum value CountryCodeYt = "YT" // CountryCodeZa is a CountryCode enum value CountryCodeZa = "ZA" // CountryCodeZm is a CountryCode enum value CountryCodeZm = "ZM" // CountryCodeZw is a CountryCode enum value CountryCodeZw = "ZW" ) const ( // DomainAvailabilityAvailable is a DomainAvailability enum value DomainAvailabilityAvailable = "AVAILABLE" // DomainAvailabilityAvailableReserved is a DomainAvailability enum value DomainAvailabilityAvailableReserved = "AVAILABLE_RESERVED" // DomainAvailabilityAvailablePreorder is a DomainAvailability enum value DomainAvailabilityAvailablePreorder = "AVAILABLE_PREORDER" // DomainAvailabilityUnavailable is a DomainAvailability enum value DomainAvailabilityUnavailable = "UNAVAILABLE" // DomainAvailabilityUnavailablePremium is a DomainAvailability enum value DomainAvailabilityUnavailablePremium = "UNAVAILABLE_PREMIUM" // DomainAvailabilityUnavailableRestricted is a DomainAvailability enum value DomainAvailabilityUnavailableRestricted = "UNAVAILABLE_RESTRICTED" // DomainAvailabilityReserved is a DomainAvailability enum value DomainAvailabilityReserved = "RESERVED" // DomainAvailabilityDontKnow is a DomainAvailability enum value DomainAvailabilityDontKnow = "DONT_KNOW" ) const ( // ExtraParamNameDunsNumber is a ExtraParamName enum value ExtraParamNameDunsNumber = "DUNS_NUMBER" // ExtraParamNameBrandNumber is a ExtraParamName enum value ExtraParamNameBrandNumber = "BRAND_NUMBER" // ExtraParamNameBirthDepartment is a ExtraParamName enum value ExtraParamNameBirthDepartment = "BIRTH_DEPARTMENT" // ExtraParamNameBirthDateInYyyyMmDd is a ExtraParamName enum value ExtraParamNameBirthDateInYyyyMmDd = "BIRTH_DATE_IN_YYYY_MM_DD" // ExtraParamNameBirthCountry is a ExtraParamName enum value ExtraParamNameBirthCountry = "BIRTH_COUNTRY" // ExtraParamNameBirthCity is a ExtraParamName enum value ExtraParamNameBirthCity = "BIRTH_CITY" // ExtraParamNameDocumentNumber is a ExtraParamName enum value ExtraParamNameDocumentNumber = "DOCUMENT_NUMBER" // ExtraParamNameAuIdNumber is a ExtraParamName enum value ExtraParamNameAuIdNumber = "AU_ID_NUMBER" // ExtraParamNameAuIdType is a ExtraParamName enum value ExtraParamNameAuIdType = "AU_ID_TYPE" // ExtraParamNameCaLegalType is a ExtraParamName enum value ExtraParamNameCaLegalType = "CA_LEGAL_TYPE" // ExtraParamNameCaBusinessEntityType is a ExtraParamName enum value ExtraParamNameCaBusinessEntityType = "CA_BUSINESS_ENTITY_TYPE" // ExtraParamNameEsIdentification is a ExtraParamName enum value ExtraParamNameEsIdentification = "ES_IDENTIFICATION" // ExtraParamNameEsIdentificationType is a ExtraParamName enum value ExtraParamNameEsIdentificationType = "ES_IDENTIFICATION_TYPE" // ExtraParamNameEsLegalForm is a ExtraParamName enum value ExtraParamNameEsLegalForm = "ES_LEGAL_FORM" // ExtraParamNameFiBusinessNumber is a ExtraParamName enum value ExtraParamNameFiBusinessNumber = "FI_BUSINESS_NUMBER" // ExtraParamNameFiIdNumber is a ExtraParamName enum value ExtraParamNameFiIdNumber = "FI_ID_NUMBER" // ExtraParamNameItPin is a ExtraParamName enum value ExtraParamNameItPin = "IT_PIN" // ExtraParamNameRuPassportData is a ExtraParamName enum value ExtraParamNameRuPassportData = "RU_PASSPORT_DATA" // ExtraParamNameSeIdNumber is a ExtraParamName enum value ExtraParamNameSeIdNumber = "SE_ID_NUMBER" // ExtraParamNameSgIdNumber is a ExtraParamName enum value ExtraParamNameSgIdNumber = "SG_ID_NUMBER" // ExtraParamNameVatNumber is a ExtraParamName enum value ExtraParamNameVatNumber = "VAT_NUMBER" ) const ( // OperationStatusSubmitted is a OperationStatus enum value OperationStatusSubmitted = "SUBMITTED" // OperationStatusInProgress is a OperationStatus enum value OperationStatusInProgress = "IN_PROGRESS" // OperationStatusError is a OperationStatus enum value OperationStatusError = "ERROR" // OperationStatusSuccessful is a OperationStatus enum value OperationStatusSuccessful = "SUCCESSFUL" // OperationStatusFailed is a OperationStatus enum value OperationStatusFailed = "FAILED" ) const ( // OperationTypeRegisterDomain is a OperationType enum value OperationTypeRegisterDomain = "REGISTER_DOMAIN" // OperationTypeDeleteDomain is a OperationType enum value OperationTypeDeleteDomain = "DELETE_DOMAIN" // OperationTypeTransferInDomain is a OperationType enum value OperationTypeTransferInDomain = "TRANSFER_IN_DOMAIN" // OperationTypeUpdateDomainContact is a OperationType enum value OperationTypeUpdateDomainContact = "UPDATE_DOMAIN_CONTACT" // OperationTypeUpdateNameserver is a OperationType enum value OperationTypeUpdateNameserver = "UPDATE_NAMESERVER" // OperationTypeChangePrivacyProtection is a OperationType enum value OperationTypeChangePrivacyProtection = "CHANGE_PRIVACY_PROTECTION" // OperationTypeDomainLock is a OperationType enum value OperationTypeDomainLock = "DOMAIN_LOCK" ) const ( // ReachabilityStatusPending is a ReachabilityStatus enum value ReachabilityStatusPending = "PENDING" // ReachabilityStatusDone is a ReachabilityStatus enum value ReachabilityStatusDone = "DONE" // ReachabilityStatusExpired is a ReachabilityStatus enum value ReachabilityStatusExpired = "EXPIRED" ) aws-sdk-go-1.4.22/service/route53domains/examples_test.go000066400000000000000000000544351300374646400233230ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package route53domains_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/route53domains" ) var _ time.Duration var _ bytes.Buffer func ExampleRoute53Domains_CheckDomainAvailability() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.CheckDomainAvailabilityInput{ DomainName: aws.String("DomainName"), // Required IdnLangCode: aws.String("LangCode"), } resp, err := svc.CheckDomainAvailability(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_DeleteTagsForDomain() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.DeleteTagsForDomainInput{ DomainName: aws.String("DomainName"), // Required TagsToDelete: []*string{ // Required aws.String("TagKey"), // Required // More values... }, } resp, err := svc.DeleteTagsForDomain(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_DisableDomainAutoRenew() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.DisableDomainAutoRenewInput{ DomainName: aws.String("DomainName"), // Required } resp, err := svc.DisableDomainAutoRenew(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_DisableDomainTransferLock() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.DisableDomainTransferLockInput{ DomainName: aws.String("DomainName"), // Required } resp, err := svc.DisableDomainTransferLock(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_EnableDomainAutoRenew() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.EnableDomainAutoRenewInput{ DomainName: aws.String("DomainName"), // Required } resp, err := svc.EnableDomainAutoRenew(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_EnableDomainTransferLock() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.EnableDomainTransferLockInput{ DomainName: aws.String("DomainName"), // Required } resp, err := svc.EnableDomainTransferLock(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_GetContactReachabilityStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.GetContactReachabilityStatusInput{ DomainName: aws.String("DomainName"), } resp, err := svc.GetContactReachabilityStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_GetDomainDetail() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.GetDomainDetailInput{ DomainName: aws.String("DomainName"), // Required } resp, err := svc.GetDomainDetail(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_GetDomainSuggestions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.GetDomainSuggestionsInput{ DomainName: aws.String("DomainName"), // Required OnlyAvailable: aws.Bool(true), // Required SuggestionCount: aws.Int64(1), // Required } resp, err := svc.GetDomainSuggestions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_GetOperationDetail() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.GetOperationDetailInput{ OperationId: aws.String("OperationId"), // Required } resp, err := svc.GetOperationDetail(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_ListDomains() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.ListDomainsInput{ Marker: aws.String("PageMarker"), MaxItems: aws.Int64(1), } resp, err := svc.ListDomains(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_ListOperations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.ListOperationsInput{ Marker: aws.String("PageMarker"), MaxItems: aws.Int64(1), } resp, err := svc.ListOperations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_ListTagsForDomain() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.ListTagsForDomainInput{ DomainName: aws.String("DomainName"), // Required } resp, err := svc.ListTagsForDomain(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_RegisterDomain() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.RegisterDomainInput{ AdminContact: &route53domains.ContactDetail{ // Required AddressLine1: aws.String("AddressLine"), AddressLine2: aws.String("AddressLine"), City: aws.String("City"), ContactType: aws.String("ContactType"), CountryCode: aws.String("CountryCode"), Email: aws.String("Email"), ExtraParams: []*route53domains.ExtraParam{ { // Required Name: aws.String("ExtraParamName"), // Required Value: aws.String("ExtraParamValue"), // Required }, // More values... }, Fax: aws.String("ContactNumber"), FirstName: aws.String("ContactName"), LastName: aws.String("ContactName"), OrganizationName: aws.String("ContactName"), PhoneNumber: aws.String("ContactNumber"), State: aws.String("State"), ZipCode: aws.String("ZipCode"), }, DomainName: aws.String("DomainName"), // Required DurationInYears: aws.Int64(1), // Required RegistrantContact: &route53domains.ContactDetail{ // Required AddressLine1: aws.String("AddressLine"), AddressLine2: aws.String("AddressLine"), City: aws.String("City"), ContactType: aws.String("ContactType"), CountryCode: aws.String("CountryCode"), Email: aws.String("Email"), ExtraParams: []*route53domains.ExtraParam{ { // Required Name: aws.String("ExtraParamName"), // Required Value: aws.String("ExtraParamValue"), // Required }, // More values... }, Fax: aws.String("ContactNumber"), FirstName: aws.String("ContactName"), LastName: aws.String("ContactName"), OrganizationName: aws.String("ContactName"), PhoneNumber: aws.String("ContactNumber"), State: aws.String("State"), ZipCode: aws.String("ZipCode"), }, TechContact: &route53domains.ContactDetail{ // Required AddressLine1: aws.String("AddressLine"), AddressLine2: aws.String("AddressLine"), City: aws.String("City"), ContactType: aws.String("ContactType"), CountryCode: aws.String("CountryCode"), Email: aws.String("Email"), ExtraParams: []*route53domains.ExtraParam{ { // Required Name: aws.String("ExtraParamName"), // Required Value: aws.String("ExtraParamValue"), // Required }, // More values... }, Fax: aws.String("ContactNumber"), FirstName: aws.String("ContactName"), LastName: aws.String("ContactName"), OrganizationName: aws.String("ContactName"), PhoneNumber: aws.String("ContactNumber"), State: aws.String("State"), ZipCode: aws.String("ZipCode"), }, AutoRenew: aws.Bool(true), IdnLangCode: aws.String("LangCode"), PrivacyProtectAdminContact: aws.Bool(true), PrivacyProtectRegistrantContact: aws.Bool(true), PrivacyProtectTechContact: aws.Bool(true), } resp, err := svc.RegisterDomain(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_RenewDomain() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.RenewDomainInput{ CurrentExpiryYear: aws.Int64(1), // Required DomainName: aws.String("DomainName"), // Required DurationInYears: aws.Int64(1), } resp, err := svc.RenewDomain(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_ResendContactReachabilityEmail() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.ResendContactReachabilityEmailInput{ DomainName: aws.String("DomainName"), } resp, err := svc.ResendContactReachabilityEmail(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_RetrieveDomainAuthCode() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.RetrieveDomainAuthCodeInput{ DomainName: aws.String("DomainName"), // Required } resp, err := svc.RetrieveDomainAuthCode(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_TransferDomain() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.TransferDomainInput{ AdminContact: &route53domains.ContactDetail{ // Required AddressLine1: aws.String("AddressLine"), AddressLine2: aws.String("AddressLine"), City: aws.String("City"), ContactType: aws.String("ContactType"), CountryCode: aws.String("CountryCode"), Email: aws.String("Email"), ExtraParams: []*route53domains.ExtraParam{ { // Required Name: aws.String("ExtraParamName"), // Required Value: aws.String("ExtraParamValue"), // Required }, // More values... }, Fax: aws.String("ContactNumber"), FirstName: aws.String("ContactName"), LastName: aws.String("ContactName"), OrganizationName: aws.String("ContactName"), PhoneNumber: aws.String("ContactNumber"), State: aws.String("State"), ZipCode: aws.String("ZipCode"), }, DomainName: aws.String("DomainName"), // Required DurationInYears: aws.Int64(1), // Required RegistrantContact: &route53domains.ContactDetail{ // Required AddressLine1: aws.String("AddressLine"), AddressLine2: aws.String("AddressLine"), City: aws.String("City"), ContactType: aws.String("ContactType"), CountryCode: aws.String("CountryCode"), Email: aws.String("Email"), ExtraParams: []*route53domains.ExtraParam{ { // Required Name: aws.String("ExtraParamName"), // Required Value: aws.String("ExtraParamValue"), // Required }, // More values... }, Fax: aws.String("ContactNumber"), FirstName: aws.String("ContactName"), LastName: aws.String("ContactName"), OrganizationName: aws.String("ContactName"), PhoneNumber: aws.String("ContactNumber"), State: aws.String("State"), ZipCode: aws.String("ZipCode"), }, TechContact: &route53domains.ContactDetail{ // Required AddressLine1: aws.String("AddressLine"), AddressLine2: aws.String("AddressLine"), City: aws.String("City"), ContactType: aws.String("ContactType"), CountryCode: aws.String("CountryCode"), Email: aws.String("Email"), ExtraParams: []*route53domains.ExtraParam{ { // Required Name: aws.String("ExtraParamName"), // Required Value: aws.String("ExtraParamValue"), // Required }, // More values... }, Fax: aws.String("ContactNumber"), FirstName: aws.String("ContactName"), LastName: aws.String("ContactName"), OrganizationName: aws.String("ContactName"), PhoneNumber: aws.String("ContactNumber"), State: aws.String("State"), ZipCode: aws.String("ZipCode"), }, AuthCode: aws.String("DomainAuthCode"), AutoRenew: aws.Bool(true), IdnLangCode: aws.String("LangCode"), Nameservers: []*route53domains.Nameserver{ { // Required Name: aws.String("HostName"), // Required GlueIps: []*string{ aws.String("GlueIp"), // Required // More values... }, }, // More values... }, PrivacyProtectAdminContact: aws.Bool(true), PrivacyProtectRegistrantContact: aws.Bool(true), PrivacyProtectTechContact: aws.Bool(true), } resp, err := svc.TransferDomain(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_UpdateDomainContact() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.UpdateDomainContactInput{ DomainName: aws.String("DomainName"), // Required AdminContact: &route53domains.ContactDetail{ AddressLine1: aws.String("AddressLine"), AddressLine2: aws.String("AddressLine"), City: aws.String("City"), ContactType: aws.String("ContactType"), CountryCode: aws.String("CountryCode"), Email: aws.String("Email"), ExtraParams: []*route53domains.ExtraParam{ { // Required Name: aws.String("ExtraParamName"), // Required Value: aws.String("ExtraParamValue"), // Required }, // More values... }, Fax: aws.String("ContactNumber"), FirstName: aws.String("ContactName"), LastName: aws.String("ContactName"), OrganizationName: aws.String("ContactName"), PhoneNumber: aws.String("ContactNumber"), State: aws.String("State"), ZipCode: aws.String("ZipCode"), }, RegistrantContact: &route53domains.ContactDetail{ AddressLine1: aws.String("AddressLine"), AddressLine2: aws.String("AddressLine"), City: aws.String("City"), ContactType: aws.String("ContactType"), CountryCode: aws.String("CountryCode"), Email: aws.String("Email"), ExtraParams: []*route53domains.ExtraParam{ { // Required Name: aws.String("ExtraParamName"), // Required Value: aws.String("ExtraParamValue"), // Required }, // More values... }, Fax: aws.String("ContactNumber"), FirstName: aws.String("ContactName"), LastName: aws.String("ContactName"), OrganizationName: aws.String("ContactName"), PhoneNumber: aws.String("ContactNumber"), State: aws.String("State"), ZipCode: aws.String("ZipCode"), }, TechContact: &route53domains.ContactDetail{ AddressLine1: aws.String("AddressLine"), AddressLine2: aws.String("AddressLine"), City: aws.String("City"), ContactType: aws.String("ContactType"), CountryCode: aws.String("CountryCode"), Email: aws.String("Email"), ExtraParams: []*route53domains.ExtraParam{ { // Required Name: aws.String("ExtraParamName"), // Required Value: aws.String("ExtraParamValue"), // Required }, // More values... }, Fax: aws.String("ContactNumber"), FirstName: aws.String("ContactName"), LastName: aws.String("ContactName"), OrganizationName: aws.String("ContactName"), PhoneNumber: aws.String("ContactNumber"), State: aws.String("State"), ZipCode: aws.String("ZipCode"), }, } resp, err := svc.UpdateDomainContact(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_UpdateDomainContactPrivacy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.UpdateDomainContactPrivacyInput{ DomainName: aws.String("DomainName"), // Required AdminPrivacy: aws.Bool(true), RegistrantPrivacy: aws.Bool(true), TechPrivacy: aws.Bool(true), } resp, err := svc.UpdateDomainContactPrivacy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_UpdateDomainNameservers() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.UpdateDomainNameserversInput{ DomainName: aws.String("DomainName"), // Required Nameservers: []*route53domains.Nameserver{ // Required { // Required Name: aws.String("HostName"), // Required GlueIps: []*string{ aws.String("GlueIp"), // Required // More values... }, }, // More values... }, FIAuthKey: aws.String("FIAuthKey"), } resp, err := svc.UpdateDomainNameservers(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_UpdateTagsForDomain() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.UpdateTagsForDomainInput{ DomainName: aws.String("DomainName"), // Required TagsToUpdate: []*route53domains.Tag{ { // Required Key: aws.String("TagKey"), Value: aws.String("TagValue"), }, // More values... }, } resp, err := svc.UpdateTagsForDomain(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleRoute53Domains_ViewBilling() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := route53domains.New(sess) params := &route53domains.ViewBillingInput{ End: aws.Time(time.Now()), Marker: aws.String("PageMarker"), MaxItems: aws.Int64(1), Start: aws.Time(time.Now()), } resp, err := svc.ViewBilling(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/route53domains/route53domainsiface/000077500000000000000000000000001300374646400237555ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/route53domains/route53domainsiface/interface.go000066400000000000000000000202271300374646400262470ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package route53domainsiface provides an interface to enable mocking the Amazon Route 53 Domains service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package route53domainsiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/route53domains" ) // Route53DomainsAPI provides an interface to enable mocking the // route53domains.Route53Domains service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Route 53 Domains. // func myFunc(svc route53domainsiface.Route53DomainsAPI) bool { // // Make svc.CheckDomainAvailability request // } // // func main() { // sess := session.New() // svc := route53domains.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockRoute53DomainsClient struct { // route53domainsiface.Route53DomainsAPI // } // func (m *mockRoute53DomainsClient) CheckDomainAvailability(input *route53domains.CheckDomainAvailabilityInput) (*route53domains.CheckDomainAvailabilityOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockRoute53DomainsClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type Route53DomainsAPI interface { CheckDomainAvailabilityRequest(*route53domains.CheckDomainAvailabilityInput) (*request.Request, *route53domains.CheckDomainAvailabilityOutput) CheckDomainAvailability(*route53domains.CheckDomainAvailabilityInput) (*route53domains.CheckDomainAvailabilityOutput, error) DeleteTagsForDomainRequest(*route53domains.DeleteTagsForDomainInput) (*request.Request, *route53domains.DeleteTagsForDomainOutput) DeleteTagsForDomain(*route53domains.DeleteTagsForDomainInput) (*route53domains.DeleteTagsForDomainOutput, error) DisableDomainAutoRenewRequest(*route53domains.DisableDomainAutoRenewInput) (*request.Request, *route53domains.DisableDomainAutoRenewOutput) DisableDomainAutoRenew(*route53domains.DisableDomainAutoRenewInput) (*route53domains.DisableDomainAutoRenewOutput, error) DisableDomainTransferLockRequest(*route53domains.DisableDomainTransferLockInput) (*request.Request, *route53domains.DisableDomainTransferLockOutput) DisableDomainTransferLock(*route53domains.DisableDomainTransferLockInput) (*route53domains.DisableDomainTransferLockOutput, error) EnableDomainAutoRenewRequest(*route53domains.EnableDomainAutoRenewInput) (*request.Request, *route53domains.EnableDomainAutoRenewOutput) EnableDomainAutoRenew(*route53domains.EnableDomainAutoRenewInput) (*route53domains.EnableDomainAutoRenewOutput, error) EnableDomainTransferLockRequest(*route53domains.EnableDomainTransferLockInput) (*request.Request, *route53domains.EnableDomainTransferLockOutput) EnableDomainTransferLock(*route53domains.EnableDomainTransferLockInput) (*route53domains.EnableDomainTransferLockOutput, error) GetContactReachabilityStatusRequest(*route53domains.GetContactReachabilityStatusInput) (*request.Request, *route53domains.GetContactReachabilityStatusOutput) GetContactReachabilityStatus(*route53domains.GetContactReachabilityStatusInput) (*route53domains.GetContactReachabilityStatusOutput, error) GetDomainDetailRequest(*route53domains.GetDomainDetailInput) (*request.Request, *route53domains.GetDomainDetailOutput) GetDomainDetail(*route53domains.GetDomainDetailInput) (*route53domains.GetDomainDetailOutput, error) GetDomainSuggestionsRequest(*route53domains.GetDomainSuggestionsInput) (*request.Request, *route53domains.GetDomainSuggestionsOutput) GetDomainSuggestions(*route53domains.GetDomainSuggestionsInput) (*route53domains.GetDomainSuggestionsOutput, error) GetOperationDetailRequest(*route53domains.GetOperationDetailInput) (*request.Request, *route53domains.GetOperationDetailOutput) GetOperationDetail(*route53domains.GetOperationDetailInput) (*route53domains.GetOperationDetailOutput, error) ListDomainsRequest(*route53domains.ListDomainsInput) (*request.Request, *route53domains.ListDomainsOutput) ListDomains(*route53domains.ListDomainsInput) (*route53domains.ListDomainsOutput, error) ListDomainsPages(*route53domains.ListDomainsInput, func(*route53domains.ListDomainsOutput, bool) bool) error ListOperationsRequest(*route53domains.ListOperationsInput) (*request.Request, *route53domains.ListOperationsOutput) ListOperations(*route53domains.ListOperationsInput) (*route53domains.ListOperationsOutput, error) ListOperationsPages(*route53domains.ListOperationsInput, func(*route53domains.ListOperationsOutput, bool) bool) error ListTagsForDomainRequest(*route53domains.ListTagsForDomainInput) (*request.Request, *route53domains.ListTagsForDomainOutput) ListTagsForDomain(*route53domains.ListTagsForDomainInput) (*route53domains.ListTagsForDomainOutput, error) RegisterDomainRequest(*route53domains.RegisterDomainInput) (*request.Request, *route53domains.RegisterDomainOutput) RegisterDomain(*route53domains.RegisterDomainInput) (*route53domains.RegisterDomainOutput, error) RenewDomainRequest(*route53domains.RenewDomainInput) (*request.Request, *route53domains.RenewDomainOutput) RenewDomain(*route53domains.RenewDomainInput) (*route53domains.RenewDomainOutput, error) ResendContactReachabilityEmailRequest(*route53domains.ResendContactReachabilityEmailInput) (*request.Request, *route53domains.ResendContactReachabilityEmailOutput) ResendContactReachabilityEmail(*route53domains.ResendContactReachabilityEmailInput) (*route53domains.ResendContactReachabilityEmailOutput, error) RetrieveDomainAuthCodeRequest(*route53domains.RetrieveDomainAuthCodeInput) (*request.Request, *route53domains.RetrieveDomainAuthCodeOutput) RetrieveDomainAuthCode(*route53domains.RetrieveDomainAuthCodeInput) (*route53domains.RetrieveDomainAuthCodeOutput, error) TransferDomainRequest(*route53domains.TransferDomainInput) (*request.Request, *route53domains.TransferDomainOutput) TransferDomain(*route53domains.TransferDomainInput) (*route53domains.TransferDomainOutput, error) UpdateDomainContactRequest(*route53domains.UpdateDomainContactInput) (*request.Request, *route53domains.UpdateDomainContactOutput) UpdateDomainContact(*route53domains.UpdateDomainContactInput) (*route53domains.UpdateDomainContactOutput, error) UpdateDomainContactPrivacyRequest(*route53domains.UpdateDomainContactPrivacyInput) (*request.Request, *route53domains.UpdateDomainContactPrivacyOutput) UpdateDomainContactPrivacy(*route53domains.UpdateDomainContactPrivacyInput) (*route53domains.UpdateDomainContactPrivacyOutput, error) UpdateDomainNameserversRequest(*route53domains.UpdateDomainNameserversInput) (*request.Request, *route53domains.UpdateDomainNameserversOutput) UpdateDomainNameservers(*route53domains.UpdateDomainNameserversInput) (*route53domains.UpdateDomainNameserversOutput, error) UpdateTagsForDomainRequest(*route53domains.UpdateTagsForDomainInput) (*request.Request, *route53domains.UpdateTagsForDomainOutput) UpdateTagsForDomain(*route53domains.UpdateTagsForDomainInput) (*route53domains.UpdateTagsForDomainOutput, error) ViewBillingRequest(*route53domains.ViewBillingInput) (*request.Request, *route53domains.ViewBillingOutput) ViewBilling(*route53domains.ViewBillingInput) (*route53domains.ViewBillingOutput, error) } var _ Route53DomainsAPI = (*route53domains.Route53Domains)(nil) aws-sdk-go-1.4.22/service/route53domains/service.go000066400000000000000000000054701300374646400221010ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package route53domains import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Route53Domains is a client for Amazon Route 53 Domains. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type Route53Domains struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "route53domains" // New creates a new instance of the Route53Domains client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a Route53Domains client from just a session. // svc := route53domains.New(mySession) // // // Create a Route53Domains client with additional configuration // svc := route53domains.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *Route53Domains { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *Route53Domains { svc := &Route53Domains{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-05-15", JSONVersion: "1.1", TargetPrefix: "Route53Domains_v20140515", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a Route53Domains operation and runs any // custom request initialization. func (c *Route53Domains) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/s3/000077500000000000000000000000001300374646400155505ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/s3/api.go000066400000000000000000013065071300374646400166640ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package s3 provides a client for Amazon Simple Storage Service. package s3 import ( "fmt" "io" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/restxml" ) const opAbortMultipartUpload = "AbortMultipartUpload" // AbortMultipartUploadRequest generates a "aws/request.Request" representing the // client's request for the AbortMultipartUpload operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AbortMultipartUpload for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AbortMultipartUpload method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AbortMultipartUploadRequest method. // req, resp := client.AbortMultipartUploadRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) AbortMultipartUploadRequest(input *AbortMultipartUploadInput) (req *request.Request, output *AbortMultipartUploadOutput) { op := &request.Operation{ Name: opAbortMultipartUpload, HTTPMethod: "DELETE", HTTPPath: "/{Bucket}/{Key+}", } if input == nil { input = &AbortMultipartUploadInput{} } req = c.newRequest(op, input, output) output = &AbortMultipartUploadOutput{} req.Data = output return } // AbortMultipartUpload API operation for Amazon Simple Storage Service. // // Aborts a multipart upload. // // To verify that all parts have been removed, so you don't get charged for // the part storage, you should call the List Parts operation and ensure the // parts list is empty. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation AbortMultipartUpload for usage and error information. // // Returned Error Codes: // * NoSuchUpload // The specified multipart upload does not exist. // func (c *S3) AbortMultipartUpload(input *AbortMultipartUploadInput) (*AbortMultipartUploadOutput, error) { req, out := c.AbortMultipartUploadRequest(input) err := req.Send() return out, err } const opCompleteMultipartUpload = "CompleteMultipartUpload" // CompleteMultipartUploadRequest generates a "aws/request.Request" representing the // client's request for the CompleteMultipartUpload operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CompleteMultipartUpload for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CompleteMultipartUpload method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CompleteMultipartUploadRequest method. // req, resp := client.CompleteMultipartUploadRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) CompleteMultipartUploadRequest(input *CompleteMultipartUploadInput) (req *request.Request, output *CompleteMultipartUploadOutput) { op := &request.Operation{ Name: opCompleteMultipartUpload, HTTPMethod: "POST", HTTPPath: "/{Bucket}/{Key+}", } if input == nil { input = &CompleteMultipartUploadInput{} } req = c.newRequest(op, input, output) output = &CompleteMultipartUploadOutput{} req.Data = output return } // CompleteMultipartUpload API operation for Amazon Simple Storage Service. // // Completes a multipart upload by assembling previously uploaded parts. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation CompleteMultipartUpload for usage and error information. func (c *S3) CompleteMultipartUpload(input *CompleteMultipartUploadInput) (*CompleteMultipartUploadOutput, error) { req, out := c.CompleteMultipartUploadRequest(input) err := req.Send() return out, err } const opCopyObject = "CopyObject" // CopyObjectRequest generates a "aws/request.Request" representing the // client's request for the CopyObject operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CopyObject for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CopyObject method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CopyObjectRequest method. // req, resp := client.CopyObjectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) CopyObjectRequest(input *CopyObjectInput) (req *request.Request, output *CopyObjectOutput) { op := &request.Operation{ Name: opCopyObject, HTTPMethod: "PUT", HTTPPath: "/{Bucket}/{Key+}", } if input == nil { input = &CopyObjectInput{} } req = c.newRequest(op, input, output) output = &CopyObjectOutput{} req.Data = output return } // CopyObject API operation for Amazon Simple Storage Service. // // Creates a copy of an object that is already stored in Amazon S3. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation CopyObject for usage and error information. // // Returned Error Codes: // * ObjectNotInActiveTierError // The source object of the COPY operation is not in the active tier and is // only stored in Amazon Glacier. // func (c *S3) CopyObject(input *CopyObjectInput) (*CopyObjectOutput, error) { req, out := c.CopyObjectRequest(input) err := req.Send() return out, err } const opCreateBucket = "CreateBucket" // CreateBucketRequest generates a "aws/request.Request" representing the // client's request for the CreateBucket operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateBucket for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateBucket method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateBucketRequest method. // req, resp := client.CreateBucketRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) CreateBucketRequest(input *CreateBucketInput) (req *request.Request, output *CreateBucketOutput) { op := &request.Operation{ Name: opCreateBucket, HTTPMethod: "PUT", HTTPPath: "/{Bucket}", } if input == nil { input = &CreateBucketInput{} } req = c.newRequest(op, input, output) output = &CreateBucketOutput{} req.Data = output return } // CreateBucket API operation for Amazon Simple Storage Service. // // Creates a new bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation CreateBucket for usage and error information. // // Returned Error Codes: // * BucketAlreadyExists // The requested bucket name is not available. The bucket namespace is shared // by all users of the system. Please select a different name and try again. // // * BucketAlreadyOwnedByYou // func (c *S3) CreateBucket(input *CreateBucketInput) (*CreateBucketOutput, error) { req, out := c.CreateBucketRequest(input) err := req.Send() return out, err } const opCreateMultipartUpload = "CreateMultipartUpload" // CreateMultipartUploadRequest generates a "aws/request.Request" representing the // client's request for the CreateMultipartUpload operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateMultipartUpload for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateMultipartUpload method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateMultipartUploadRequest method. // req, resp := client.CreateMultipartUploadRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) CreateMultipartUploadRequest(input *CreateMultipartUploadInput) (req *request.Request, output *CreateMultipartUploadOutput) { op := &request.Operation{ Name: opCreateMultipartUpload, HTTPMethod: "POST", HTTPPath: "/{Bucket}/{Key+}?uploads", } if input == nil { input = &CreateMultipartUploadInput{} } req = c.newRequest(op, input, output) output = &CreateMultipartUploadOutput{} req.Data = output return } // CreateMultipartUpload API operation for Amazon Simple Storage Service. // // Initiates a multipart upload and returns an upload ID. // // Note: After you initiate multipart upload and upload one or more parts, you // must either complete or abort multipart upload in order to stop getting charged // for storage of the uploaded parts. Only after you either complete or abort // multipart upload, Amazon S3 frees up the parts storage and stops charging // you for the parts storage. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation CreateMultipartUpload for usage and error information. func (c *S3) CreateMultipartUpload(input *CreateMultipartUploadInput) (*CreateMultipartUploadOutput, error) { req, out := c.CreateMultipartUploadRequest(input) err := req.Send() return out, err } const opDeleteBucket = "DeleteBucket" // DeleteBucketRequest generates a "aws/request.Request" representing the // client's request for the DeleteBucket operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteBucket for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteBucket method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteBucketRequest method. // req, resp := client.DeleteBucketRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) DeleteBucketRequest(input *DeleteBucketInput) (req *request.Request, output *DeleteBucketOutput) { op := &request.Operation{ Name: opDeleteBucket, HTTPMethod: "DELETE", HTTPPath: "/{Bucket}", } if input == nil { input = &DeleteBucketInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteBucketOutput{} req.Data = output return } // DeleteBucket API operation for Amazon Simple Storage Service. // // Deletes the bucket. All objects (including all object versions and Delete // Markers) in the bucket must be deleted before the bucket itself can be deleted. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation DeleteBucket for usage and error information. func (c *S3) DeleteBucket(input *DeleteBucketInput) (*DeleteBucketOutput, error) { req, out := c.DeleteBucketRequest(input) err := req.Send() return out, err } const opDeleteBucketCors = "DeleteBucketCors" // DeleteBucketCorsRequest generates a "aws/request.Request" representing the // client's request for the DeleteBucketCors operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteBucketCors for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteBucketCors method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteBucketCorsRequest method. // req, resp := client.DeleteBucketCorsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) DeleteBucketCorsRequest(input *DeleteBucketCorsInput) (req *request.Request, output *DeleteBucketCorsOutput) { op := &request.Operation{ Name: opDeleteBucketCors, HTTPMethod: "DELETE", HTTPPath: "/{Bucket}?cors", } if input == nil { input = &DeleteBucketCorsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteBucketCorsOutput{} req.Data = output return } // DeleteBucketCors API operation for Amazon Simple Storage Service. // // Deletes the cors configuration information set for the bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation DeleteBucketCors for usage and error information. func (c *S3) DeleteBucketCors(input *DeleteBucketCorsInput) (*DeleteBucketCorsOutput, error) { req, out := c.DeleteBucketCorsRequest(input) err := req.Send() return out, err } const opDeleteBucketLifecycle = "DeleteBucketLifecycle" // DeleteBucketLifecycleRequest generates a "aws/request.Request" representing the // client's request for the DeleteBucketLifecycle operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteBucketLifecycle for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteBucketLifecycle method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteBucketLifecycleRequest method. // req, resp := client.DeleteBucketLifecycleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) DeleteBucketLifecycleRequest(input *DeleteBucketLifecycleInput) (req *request.Request, output *DeleteBucketLifecycleOutput) { op := &request.Operation{ Name: opDeleteBucketLifecycle, HTTPMethod: "DELETE", HTTPPath: "/{Bucket}?lifecycle", } if input == nil { input = &DeleteBucketLifecycleInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteBucketLifecycleOutput{} req.Data = output return } // DeleteBucketLifecycle API operation for Amazon Simple Storage Service. // // Deletes the lifecycle configuration from the bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation DeleteBucketLifecycle for usage and error information. func (c *S3) DeleteBucketLifecycle(input *DeleteBucketLifecycleInput) (*DeleteBucketLifecycleOutput, error) { req, out := c.DeleteBucketLifecycleRequest(input) err := req.Send() return out, err } const opDeleteBucketPolicy = "DeleteBucketPolicy" // DeleteBucketPolicyRequest generates a "aws/request.Request" representing the // client's request for the DeleteBucketPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteBucketPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteBucketPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteBucketPolicyRequest method. // req, resp := client.DeleteBucketPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) DeleteBucketPolicyRequest(input *DeleteBucketPolicyInput) (req *request.Request, output *DeleteBucketPolicyOutput) { op := &request.Operation{ Name: opDeleteBucketPolicy, HTTPMethod: "DELETE", HTTPPath: "/{Bucket}?policy", } if input == nil { input = &DeleteBucketPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteBucketPolicyOutput{} req.Data = output return } // DeleteBucketPolicy API operation for Amazon Simple Storage Service. // // Deletes the policy from the bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation DeleteBucketPolicy for usage and error information. func (c *S3) DeleteBucketPolicy(input *DeleteBucketPolicyInput) (*DeleteBucketPolicyOutput, error) { req, out := c.DeleteBucketPolicyRequest(input) err := req.Send() return out, err } const opDeleteBucketReplication = "DeleteBucketReplication" // DeleteBucketReplicationRequest generates a "aws/request.Request" representing the // client's request for the DeleteBucketReplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteBucketReplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteBucketReplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteBucketReplicationRequest method. // req, resp := client.DeleteBucketReplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) DeleteBucketReplicationRequest(input *DeleteBucketReplicationInput) (req *request.Request, output *DeleteBucketReplicationOutput) { op := &request.Operation{ Name: opDeleteBucketReplication, HTTPMethod: "DELETE", HTTPPath: "/{Bucket}?replication", } if input == nil { input = &DeleteBucketReplicationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteBucketReplicationOutput{} req.Data = output return } // DeleteBucketReplication API operation for Amazon Simple Storage Service. // // Deletes the replication configuration from the bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation DeleteBucketReplication for usage and error information. func (c *S3) DeleteBucketReplication(input *DeleteBucketReplicationInput) (*DeleteBucketReplicationOutput, error) { req, out := c.DeleteBucketReplicationRequest(input) err := req.Send() return out, err } const opDeleteBucketTagging = "DeleteBucketTagging" // DeleteBucketTaggingRequest generates a "aws/request.Request" representing the // client's request for the DeleteBucketTagging operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteBucketTagging for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteBucketTagging method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteBucketTaggingRequest method. // req, resp := client.DeleteBucketTaggingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) DeleteBucketTaggingRequest(input *DeleteBucketTaggingInput) (req *request.Request, output *DeleteBucketTaggingOutput) { op := &request.Operation{ Name: opDeleteBucketTagging, HTTPMethod: "DELETE", HTTPPath: "/{Bucket}?tagging", } if input == nil { input = &DeleteBucketTaggingInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteBucketTaggingOutput{} req.Data = output return } // DeleteBucketTagging API operation for Amazon Simple Storage Service. // // Deletes the tags from the bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation DeleteBucketTagging for usage and error information. func (c *S3) DeleteBucketTagging(input *DeleteBucketTaggingInput) (*DeleteBucketTaggingOutput, error) { req, out := c.DeleteBucketTaggingRequest(input) err := req.Send() return out, err } const opDeleteBucketWebsite = "DeleteBucketWebsite" // DeleteBucketWebsiteRequest generates a "aws/request.Request" representing the // client's request for the DeleteBucketWebsite operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteBucketWebsite for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteBucketWebsite method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteBucketWebsiteRequest method. // req, resp := client.DeleteBucketWebsiteRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) DeleteBucketWebsiteRequest(input *DeleteBucketWebsiteInput) (req *request.Request, output *DeleteBucketWebsiteOutput) { op := &request.Operation{ Name: opDeleteBucketWebsite, HTTPMethod: "DELETE", HTTPPath: "/{Bucket}?website", } if input == nil { input = &DeleteBucketWebsiteInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteBucketWebsiteOutput{} req.Data = output return } // DeleteBucketWebsite API operation for Amazon Simple Storage Service. // // This operation removes the website configuration from the bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation DeleteBucketWebsite for usage and error information. func (c *S3) DeleteBucketWebsite(input *DeleteBucketWebsiteInput) (*DeleteBucketWebsiteOutput, error) { req, out := c.DeleteBucketWebsiteRequest(input) err := req.Send() return out, err } const opDeleteObject = "DeleteObject" // DeleteObjectRequest generates a "aws/request.Request" representing the // client's request for the DeleteObject operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteObject for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteObject method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteObjectRequest method. // req, resp := client.DeleteObjectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) DeleteObjectRequest(input *DeleteObjectInput) (req *request.Request, output *DeleteObjectOutput) { op := &request.Operation{ Name: opDeleteObject, HTTPMethod: "DELETE", HTTPPath: "/{Bucket}/{Key+}", } if input == nil { input = &DeleteObjectInput{} } req = c.newRequest(op, input, output) output = &DeleteObjectOutput{} req.Data = output return } // DeleteObject API operation for Amazon Simple Storage Service. // // Removes the null version (if there is one) of an object and inserts a delete // marker, which becomes the latest version of the object. If there isn't a // null version, Amazon S3 does not remove any objects. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation DeleteObject for usage and error information. func (c *S3) DeleteObject(input *DeleteObjectInput) (*DeleteObjectOutput, error) { req, out := c.DeleteObjectRequest(input) err := req.Send() return out, err } const opDeleteObjects = "DeleteObjects" // DeleteObjectsRequest generates a "aws/request.Request" representing the // client's request for the DeleteObjects operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteObjects for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteObjects method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteObjectsRequest method. // req, resp := client.DeleteObjectsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) DeleteObjectsRequest(input *DeleteObjectsInput) (req *request.Request, output *DeleteObjectsOutput) { op := &request.Operation{ Name: opDeleteObjects, HTTPMethod: "POST", HTTPPath: "/{Bucket}?delete", } if input == nil { input = &DeleteObjectsInput{} } req = c.newRequest(op, input, output) output = &DeleteObjectsOutput{} req.Data = output return } // DeleteObjects API operation for Amazon Simple Storage Service. // // This operation enables you to delete multiple objects from a bucket using // a single HTTP request. You may specify up to 1000 keys. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation DeleteObjects for usage and error information. func (c *S3) DeleteObjects(input *DeleteObjectsInput) (*DeleteObjectsOutput, error) { req, out := c.DeleteObjectsRequest(input) err := req.Send() return out, err } const opGetBucketAccelerateConfiguration = "GetBucketAccelerateConfiguration" // GetBucketAccelerateConfigurationRequest generates a "aws/request.Request" representing the // client's request for the GetBucketAccelerateConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBucketAccelerateConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBucketAccelerateConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBucketAccelerateConfigurationRequest method. // req, resp := client.GetBucketAccelerateConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) GetBucketAccelerateConfigurationRequest(input *GetBucketAccelerateConfigurationInput) (req *request.Request, output *GetBucketAccelerateConfigurationOutput) { op := &request.Operation{ Name: opGetBucketAccelerateConfiguration, HTTPMethod: "GET", HTTPPath: "/{Bucket}?accelerate", } if input == nil { input = &GetBucketAccelerateConfigurationInput{} } req = c.newRequest(op, input, output) output = &GetBucketAccelerateConfigurationOutput{} req.Data = output return } // GetBucketAccelerateConfiguration API operation for Amazon Simple Storage Service. // // Returns the accelerate configuration of a bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation GetBucketAccelerateConfiguration for usage and error information. func (c *S3) GetBucketAccelerateConfiguration(input *GetBucketAccelerateConfigurationInput) (*GetBucketAccelerateConfigurationOutput, error) { req, out := c.GetBucketAccelerateConfigurationRequest(input) err := req.Send() return out, err } const opGetBucketAcl = "GetBucketAcl" // GetBucketAclRequest generates a "aws/request.Request" representing the // client's request for the GetBucketAcl operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBucketAcl for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBucketAcl method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBucketAclRequest method. // req, resp := client.GetBucketAclRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) GetBucketAclRequest(input *GetBucketAclInput) (req *request.Request, output *GetBucketAclOutput) { op := &request.Operation{ Name: opGetBucketAcl, HTTPMethod: "GET", HTTPPath: "/{Bucket}?acl", } if input == nil { input = &GetBucketAclInput{} } req = c.newRequest(op, input, output) output = &GetBucketAclOutput{} req.Data = output return } // GetBucketAcl API operation for Amazon Simple Storage Service. // // Gets the access control policy for the bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation GetBucketAcl for usage and error information. func (c *S3) GetBucketAcl(input *GetBucketAclInput) (*GetBucketAclOutput, error) { req, out := c.GetBucketAclRequest(input) err := req.Send() return out, err } const opGetBucketCors = "GetBucketCors" // GetBucketCorsRequest generates a "aws/request.Request" representing the // client's request for the GetBucketCors operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBucketCors for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBucketCors method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBucketCorsRequest method. // req, resp := client.GetBucketCorsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) GetBucketCorsRequest(input *GetBucketCorsInput) (req *request.Request, output *GetBucketCorsOutput) { op := &request.Operation{ Name: opGetBucketCors, HTTPMethod: "GET", HTTPPath: "/{Bucket}?cors", } if input == nil { input = &GetBucketCorsInput{} } req = c.newRequest(op, input, output) output = &GetBucketCorsOutput{} req.Data = output return } // GetBucketCors API operation for Amazon Simple Storage Service. // // Returns the cors configuration for the bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation GetBucketCors for usage and error information. func (c *S3) GetBucketCors(input *GetBucketCorsInput) (*GetBucketCorsOutput, error) { req, out := c.GetBucketCorsRequest(input) err := req.Send() return out, err } const opGetBucketLifecycle = "GetBucketLifecycle" // GetBucketLifecycleRequest generates a "aws/request.Request" representing the // client's request for the GetBucketLifecycle operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBucketLifecycle for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBucketLifecycle method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBucketLifecycleRequest method. // req, resp := client.GetBucketLifecycleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) GetBucketLifecycleRequest(input *GetBucketLifecycleInput) (req *request.Request, output *GetBucketLifecycleOutput) { if c.Client.Config.Logger != nil { c.Client.Config.Logger.Log("This operation, GetBucketLifecycle, has been deprecated") } op := &request.Operation{ Name: opGetBucketLifecycle, HTTPMethod: "GET", HTTPPath: "/{Bucket}?lifecycle", } if input == nil { input = &GetBucketLifecycleInput{} } req = c.newRequest(op, input, output) output = &GetBucketLifecycleOutput{} req.Data = output return } // GetBucketLifecycle API operation for Amazon Simple Storage Service. // // Deprecated, see the GetBucketLifecycleConfiguration operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation GetBucketLifecycle for usage and error information. func (c *S3) GetBucketLifecycle(input *GetBucketLifecycleInput) (*GetBucketLifecycleOutput, error) { req, out := c.GetBucketLifecycleRequest(input) err := req.Send() return out, err } const opGetBucketLifecycleConfiguration = "GetBucketLifecycleConfiguration" // GetBucketLifecycleConfigurationRequest generates a "aws/request.Request" representing the // client's request for the GetBucketLifecycleConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBucketLifecycleConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBucketLifecycleConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBucketLifecycleConfigurationRequest method. // req, resp := client.GetBucketLifecycleConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) GetBucketLifecycleConfigurationRequest(input *GetBucketLifecycleConfigurationInput) (req *request.Request, output *GetBucketLifecycleConfigurationOutput) { op := &request.Operation{ Name: opGetBucketLifecycleConfiguration, HTTPMethod: "GET", HTTPPath: "/{Bucket}?lifecycle", } if input == nil { input = &GetBucketLifecycleConfigurationInput{} } req = c.newRequest(op, input, output) output = &GetBucketLifecycleConfigurationOutput{} req.Data = output return } // GetBucketLifecycleConfiguration API operation for Amazon Simple Storage Service. // // Returns the lifecycle configuration information set on the bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation GetBucketLifecycleConfiguration for usage and error information. func (c *S3) GetBucketLifecycleConfiguration(input *GetBucketLifecycleConfigurationInput) (*GetBucketLifecycleConfigurationOutput, error) { req, out := c.GetBucketLifecycleConfigurationRequest(input) err := req.Send() return out, err } const opGetBucketLocation = "GetBucketLocation" // GetBucketLocationRequest generates a "aws/request.Request" representing the // client's request for the GetBucketLocation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBucketLocation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBucketLocation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBucketLocationRequest method. // req, resp := client.GetBucketLocationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) GetBucketLocationRequest(input *GetBucketLocationInput) (req *request.Request, output *GetBucketLocationOutput) { op := &request.Operation{ Name: opGetBucketLocation, HTTPMethod: "GET", HTTPPath: "/{Bucket}?location", } if input == nil { input = &GetBucketLocationInput{} } req = c.newRequest(op, input, output) output = &GetBucketLocationOutput{} req.Data = output return } // GetBucketLocation API operation for Amazon Simple Storage Service. // // Returns the region the bucket resides in. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation GetBucketLocation for usage and error information. func (c *S3) GetBucketLocation(input *GetBucketLocationInput) (*GetBucketLocationOutput, error) { req, out := c.GetBucketLocationRequest(input) err := req.Send() return out, err } const opGetBucketLogging = "GetBucketLogging" // GetBucketLoggingRequest generates a "aws/request.Request" representing the // client's request for the GetBucketLogging operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBucketLogging for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBucketLogging method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBucketLoggingRequest method. // req, resp := client.GetBucketLoggingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) GetBucketLoggingRequest(input *GetBucketLoggingInput) (req *request.Request, output *GetBucketLoggingOutput) { op := &request.Operation{ Name: opGetBucketLogging, HTTPMethod: "GET", HTTPPath: "/{Bucket}?logging", } if input == nil { input = &GetBucketLoggingInput{} } req = c.newRequest(op, input, output) output = &GetBucketLoggingOutput{} req.Data = output return } // GetBucketLogging API operation for Amazon Simple Storage Service. // // Returns the logging status of a bucket and the permissions users have to // view and modify that status. To use GET, you must be the bucket owner. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation GetBucketLogging for usage and error information. func (c *S3) GetBucketLogging(input *GetBucketLoggingInput) (*GetBucketLoggingOutput, error) { req, out := c.GetBucketLoggingRequest(input) err := req.Send() return out, err } const opGetBucketNotification = "GetBucketNotification" // GetBucketNotificationRequest generates a "aws/request.Request" representing the // client's request for the GetBucketNotification operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBucketNotification for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBucketNotification method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBucketNotificationRequest method. // req, resp := client.GetBucketNotificationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) GetBucketNotificationRequest(input *GetBucketNotificationConfigurationRequest) (req *request.Request, output *NotificationConfigurationDeprecated) { if c.Client.Config.Logger != nil { c.Client.Config.Logger.Log("This operation, GetBucketNotification, has been deprecated") } op := &request.Operation{ Name: opGetBucketNotification, HTTPMethod: "GET", HTTPPath: "/{Bucket}?notification", } if input == nil { input = &GetBucketNotificationConfigurationRequest{} } req = c.newRequest(op, input, output) output = &NotificationConfigurationDeprecated{} req.Data = output return } // GetBucketNotification API operation for Amazon Simple Storage Service. // // Deprecated, see the GetBucketNotificationConfiguration operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation GetBucketNotification for usage and error information. func (c *S3) GetBucketNotification(input *GetBucketNotificationConfigurationRequest) (*NotificationConfigurationDeprecated, error) { req, out := c.GetBucketNotificationRequest(input) err := req.Send() return out, err } const opGetBucketNotificationConfiguration = "GetBucketNotificationConfiguration" // GetBucketNotificationConfigurationRequest generates a "aws/request.Request" representing the // client's request for the GetBucketNotificationConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBucketNotificationConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBucketNotificationConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBucketNotificationConfigurationRequest method. // req, resp := client.GetBucketNotificationConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) GetBucketNotificationConfigurationRequest(input *GetBucketNotificationConfigurationRequest) (req *request.Request, output *NotificationConfiguration) { op := &request.Operation{ Name: opGetBucketNotificationConfiguration, HTTPMethod: "GET", HTTPPath: "/{Bucket}?notification", } if input == nil { input = &GetBucketNotificationConfigurationRequest{} } req = c.newRequest(op, input, output) output = &NotificationConfiguration{} req.Data = output return } // GetBucketNotificationConfiguration API operation for Amazon Simple Storage Service. // // Returns the notification configuration of a bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation GetBucketNotificationConfiguration for usage and error information. func (c *S3) GetBucketNotificationConfiguration(input *GetBucketNotificationConfigurationRequest) (*NotificationConfiguration, error) { req, out := c.GetBucketNotificationConfigurationRequest(input) err := req.Send() return out, err } const opGetBucketPolicy = "GetBucketPolicy" // GetBucketPolicyRequest generates a "aws/request.Request" representing the // client's request for the GetBucketPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBucketPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBucketPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBucketPolicyRequest method. // req, resp := client.GetBucketPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) GetBucketPolicyRequest(input *GetBucketPolicyInput) (req *request.Request, output *GetBucketPolicyOutput) { op := &request.Operation{ Name: opGetBucketPolicy, HTTPMethod: "GET", HTTPPath: "/{Bucket}?policy", } if input == nil { input = &GetBucketPolicyInput{} } req = c.newRequest(op, input, output) output = &GetBucketPolicyOutput{} req.Data = output return } // GetBucketPolicy API operation for Amazon Simple Storage Service. // // Returns the policy of a specified bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation GetBucketPolicy for usage and error information. func (c *S3) GetBucketPolicy(input *GetBucketPolicyInput) (*GetBucketPolicyOutput, error) { req, out := c.GetBucketPolicyRequest(input) err := req.Send() return out, err } const opGetBucketReplication = "GetBucketReplication" // GetBucketReplicationRequest generates a "aws/request.Request" representing the // client's request for the GetBucketReplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBucketReplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBucketReplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBucketReplicationRequest method. // req, resp := client.GetBucketReplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) GetBucketReplicationRequest(input *GetBucketReplicationInput) (req *request.Request, output *GetBucketReplicationOutput) { op := &request.Operation{ Name: opGetBucketReplication, HTTPMethod: "GET", HTTPPath: "/{Bucket}?replication", } if input == nil { input = &GetBucketReplicationInput{} } req = c.newRequest(op, input, output) output = &GetBucketReplicationOutput{} req.Data = output return } // GetBucketReplication API operation for Amazon Simple Storage Service. // // Returns the replication configuration of a bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation GetBucketReplication for usage and error information. func (c *S3) GetBucketReplication(input *GetBucketReplicationInput) (*GetBucketReplicationOutput, error) { req, out := c.GetBucketReplicationRequest(input) err := req.Send() return out, err } const opGetBucketRequestPayment = "GetBucketRequestPayment" // GetBucketRequestPaymentRequest generates a "aws/request.Request" representing the // client's request for the GetBucketRequestPayment operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBucketRequestPayment for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBucketRequestPayment method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBucketRequestPaymentRequest method. // req, resp := client.GetBucketRequestPaymentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) GetBucketRequestPaymentRequest(input *GetBucketRequestPaymentInput) (req *request.Request, output *GetBucketRequestPaymentOutput) { op := &request.Operation{ Name: opGetBucketRequestPayment, HTTPMethod: "GET", HTTPPath: "/{Bucket}?requestPayment", } if input == nil { input = &GetBucketRequestPaymentInput{} } req = c.newRequest(op, input, output) output = &GetBucketRequestPaymentOutput{} req.Data = output return } // GetBucketRequestPayment API operation for Amazon Simple Storage Service. // // Returns the request payment configuration of a bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation GetBucketRequestPayment for usage and error information. func (c *S3) GetBucketRequestPayment(input *GetBucketRequestPaymentInput) (*GetBucketRequestPaymentOutput, error) { req, out := c.GetBucketRequestPaymentRequest(input) err := req.Send() return out, err } const opGetBucketTagging = "GetBucketTagging" // GetBucketTaggingRequest generates a "aws/request.Request" representing the // client's request for the GetBucketTagging operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBucketTagging for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBucketTagging method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBucketTaggingRequest method. // req, resp := client.GetBucketTaggingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) GetBucketTaggingRequest(input *GetBucketTaggingInput) (req *request.Request, output *GetBucketTaggingOutput) { op := &request.Operation{ Name: opGetBucketTagging, HTTPMethod: "GET", HTTPPath: "/{Bucket}?tagging", } if input == nil { input = &GetBucketTaggingInput{} } req = c.newRequest(op, input, output) output = &GetBucketTaggingOutput{} req.Data = output return } // GetBucketTagging API operation for Amazon Simple Storage Service. // // Returns the tag set associated with the bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation GetBucketTagging for usage and error information. func (c *S3) GetBucketTagging(input *GetBucketTaggingInput) (*GetBucketTaggingOutput, error) { req, out := c.GetBucketTaggingRequest(input) err := req.Send() return out, err } const opGetBucketVersioning = "GetBucketVersioning" // GetBucketVersioningRequest generates a "aws/request.Request" representing the // client's request for the GetBucketVersioning operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBucketVersioning for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBucketVersioning method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBucketVersioningRequest method. // req, resp := client.GetBucketVersioningRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) GetBucketVersioningRequest(input *GetBucketVersioningInput) (req *request.Request, output *GetBucketVersioningOutput) { op := &request.Operation{ Name: opGetBucketVersioning, HTTPMethod: "GET", HTTPPath: "/{Bucket}?versioning", } if input == nil { input = &GetBucketVersioningInput{} } req = c.newRequest(op, input, output) output = &GetBucketVersioningOutput{} req.Data = output return } // GetBucketVersioning API operation for Amazon Simple Storage Service. // // Returns the versioning state of a bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation GetBucketVersioning for usage and error information. func (c *S3) GetBucketVersioning(input *GetBucketVersioningInput) (*GetBucketVersioningOutput, error) { req, out := c.GetBucketVersioningRequest(input) err := req.Send() return out, err } const opGetBucketWebsite = "GetBucketWebsite" // GetBucketWebsiteRequest generates a "aws/request.Request" representing the // client's request for the GetBucketWebsite operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetBucketWebsite for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetBucketWebsite method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetBucketWebsiteRequest method. // req, resp := client.GetBucketWebsiteRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) GetBucketWebsiteRequest(input *GetBucketWebsiteInput) (req *request.Request, output *GetBucketWebsiteOutput) { op := &request.Operation{ Name: opGetBucketWebsite, HTTPMethod: "GET", HTTPPath: "/{Bucket}?website", } if input == nil { input = &GetBucketWebsiteInput{} } req = c.newRequest(op, input, output) output = &GetBucketWebsiteOutput{} req.Data = output return } // GetBucketWebsite API operation for Amazon Simple Storage Service. // // Returns the website configuration for a bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation GetBucketWebsite for usage and error information. func (c *S3) GetBucketWebsite(input *GetBucketWebsiteInput) (*GetBucketWebsiteOutput, error) { req, out := c.GetBucketWebsiteRequest(input) err := req.Send() return out, err } const opGetObject = "GetObject" // GetObjectRequest generates a "aws/request.Request" representing the // client's request for the GetObject operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetObject for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetObject method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetObjectRequest method. // req, resp := client.GetObjectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) GetObjectRequest(input *GetObjectInput) (req *request.Request, output *GetObjectOutput) { op := &request.Operation{ Name: opGetObject, HTTPMethod: "GET", HTTPPath: "/{Bucket}/{Key+}", } if input == nil { input = &GetObjectInput{} } req = c.newRequest(op, input, output) output = &GetObjectOutput{} req.Data = output return } // GetObject API operation for Amazon Simple Storage Service. // // Retrieves objects from Amazon S3. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation GetObject for usage and error information. // // Returned Error Codes: // * NoSuchKey // The specified key does not exist. // func (c *S3) GetObject(input *GetObjectInput) (*GetObjectOutput, error) { req, out := c.GetObjectRequest(input) err := req.Send() return out, err } const opGetObjectAcl = "GetObjectAcl" // GetObjectAclRequest generates a "aws/request.Request" representing the // client's request for the GetObjectAcl operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetObjectAcl for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetObjectAcl method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetObjectAclRequest method. // req, resp := client.GetObjectAclRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) GetObjectAclRequest(input *GetObjectAclInput) (req *request.Request, output *GetObjectAclOutput) { op := &request.Operation{ Name: opGetObjectAcl, HTTPMethod: "GET", HTTPPath: "/{Bucket}/{Key+}?acl", } if input == nil { input = &GetObjectAclInput{} } req = c.newRequest(op, input, output) output = &GetObjectAclOutput{} req.Data = output return } // GetObjectAcl API operation for Amazon Simple Storage Service. // // Returns the access control list (ACL) of an object. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation GetObjectAcl for usage and error information. // // Returned Error Codes: // * NoSuchKey // The specified key does not exist. // func (c *S3) GetObjectAcl(input *GetObjectAclInput) (*GetObjectAclOutput, error) { req, out := c.GetObjectAclRequest(input) err := req.Send() return out, err } const opGetObjectTorrent = "GetObjectTorrent" // GetObjectTorrentRequest generates a "aws/request.Request" representing the // client's request for the GetObjectTorrent operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetObjectTorrent for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetObjectTorrent method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetObjectTorrentRequest method. // req, resp := client.GetObjectTorrentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) GetObjectTorrentRequest(input *GetObjectTorrentInput) (req *request.Request, output *GetObjectTorrentOutput) { op := &request.Operation{ Name: opGetObjectTorrent, HTTPMethod: "GET", HTTPPath: "/{Bucket}/{Key+}?torrent", } if input == nil { input = &GetObjectTorrentInput{} } req = c.newRequest(op, input, output) output = &GetObjectTorrentOutput{} req.Data = output return } // GetObjectTorrent API operation for Amazon Simple Storage Service. // // Return torrent files from a bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation GetObjectTorrent for usage and error information. func (c *S3) GetObjectTorrent(input *GetObjectTorrentInput) (*GetObjectTorrentOutput, error) { req, out := c.GetObjectTorrentRequest(input) err := req.Send() return out, err } const opHeadBucket = "HeadBucket" // HeadBucketRequest generates a "aws/request.Request" representing the // client's request for the HeadBucket operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See HeadBucket for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the HeadBucket method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the HeadBucketRequest method. // req, resp := client.HeadBucketRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) HeadBucketRequest(input *HeadBucketInput) (req *request.Request, output *HeadBucketOutput) { op := &request.Operation{ Name: opHeadBucket, HTTPMethod: "HEAD", HTTPPath: "/{Bucket}", } if input == nil { input = &HeadBucketInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &HeadBucketOutput{} req.Data = output return } // HeadBucket API operation for Amazon Simple Storage Service. // // This operation is useful to determine if a bucket exists and you have permission // to access it. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation HeadBucket for usage and error information. // // Returned Error Codes: // * NoSuchBucket // The specified bucket does not exist. // func (c *S3) HeadBucket(input *HeadBucketInput) (*HeadBucketOutput, error) { req, out := c.HeadBucketRequest(input) err := req.Send() return out, err } const opHeadObject = "HeadObject" // HeadObjectRequest generates a "aws/request.Request" representing the // client's request for the HeadObject operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See HeadObject for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the HeadObject method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the HeadObjectRequest method. // req, resp := client.HeadObjectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) HeadObjectRequest(input *HeadObjectInput) (req *request.Request, output *HeadObjectOutput) { op := &request.Operation{ Name: opHeadObject, HTTPMethod: "HEAD", HTTPPath: "/{Bucket}/{Key+}", } if input == nil { input = &HeadObjectInput{} } req = c.newRequest(op, input, output) output = &HeadObjectOutput{} req.Data = output return } // HeadObject API operation for Amazon Simple Storage Service. // // The HEAD operation retrieves metadata from an object without returning the // object itself. This operation is useful if you're only interested in an object's // metadata. To use HEAD, you must have READ access to the object. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation HeadObject for usage and error information. // // Returned Error Codes: // * NoSuchKey // The specified key does not exist. // func (c *S3) HeadObject(input *HeadObjectInput) (*HeadObjectOutput, error) { req, out := c.HeadObjectRequest(input) err := req.Send() return out, err } const opListBuckets = "ListBuckets" // ListBucketsRequest generates a "aws/request.Request" representing the // client's request for the ListBuckets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListBuckets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListBuckets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListBucketsRequest method. // req, resp := client.ListBucketsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) ListBucketsRequest(input *ListBucketsInput) (req *request.Request, output *ListBucketsOutput) { op := &request.Operation{ Name: opListBuckets, HTTPMethod: "GET", HTTPPath: "/", } if input == nil { input = &ListBucketsInput{} } req = c.newRequest(op, input, output) output = &ListBucketsOutput{} req.Data = output return } // ListBuckets API operation for Amazon Simple Storage Service. // // Returns a list of all buckets owned by the authenticated sender of the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation ListBuckets for usage and error information. func (c *S3) ListBuckets(input *ListBucketsInput) (*ListBucketsOutput, error) { req, out := c.ListBucketsRequest(input) err := req.Send() return out, err } const opListMultipartUploads = "ListMultipartUploads" // ListMultipartUploadsRequest generates a "aws/request.Request" representing the // client's request for the ListMultipartUploads operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListMultipartUploads for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListMultipartUploads method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListMultipartUploadsRequest method. // req, resp := client.ListMultipartUploadsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) ListMultipartUploadsRequest(input *ListMultipartUploadsInput) (req *request.Request, output *ListMultipartUploadsOutput) { op := &request.Operation{ Name: opListMultipartUploads, HTTPMethod: "GET", HTTPPath: "/{Bucket}?uploads", Paginator: &request.Paginator{ InputTokens: []string{"KeyMarker", "UploadIdMarker"}, OutputTokens: []string{"NextKeyMarker", "NextUploadIdMarker"}, LimitToken: "MaxUploads", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListMultipartUploadsInput{} } req = c.newRequest(op, input, output) output = &ListMultipartUploadsOutput{} req.Data = output return } // ListMultipartUploads API operation for Amazon Simple Storage Service. // // This operation lists in-progress multipart uploads. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation ListMultipartUploads for usage and error information. func (c *S3) ListMultipartUploads(input *ListMultipartUploadsInput) (*ListMultipartUploadsOutput, error) { req, out := c.ListMultipartUploadsRequest(input) err := req.Send() return out, err } // ListMultipartUploadsPages iterates over the pages of a ListMultipartUploads operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListMultipartUploads method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListMultipartUploads operation. // pageNum := 0 // err := client.ListMultipartUploadsPages(params, // func(page *ListMultipartUploadsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *S3) ListMultipartUploadsPages(input *ListMultipartUploadsInput, fn func(p *ListMultipartUploadsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListMultipartUploadsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListMultipartUploadsOutput), lastPage) }) } const opListObjectVersions = "ListObjectVersions" // ListObjectVersionsRequest generates a "aws/request.Request" representing the // client's request for the ListObjectVersions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListObjectVersions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListObjectVersions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListObjectVersionsRequest method. // req, resp := client.ListObjectVersionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) ListObjectVersionsRequest(input *ListObjectVersionsInput) (req *request.Request, output *ListObjectVersionsOutput) { op := &request.Operation{ Name: opListObjectVersions, HTTPMethod: "GET", HTTPPath: "/{Bucket}?versions", Paginator: &request.Paginator{ InputTokens: []string{"KeyMarker", "VersionIdMarker"}, OutputTokens: []string{"NextKeyMarker", "NextVersionIdMarker"}, LimitToken: "MaxKeys", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListObjectVersionsInput{} } req = c.newRequest(op, input, output) output = &ListObjectVersionsOutput{} req.Data = output return } // ListObjectVersions API operation for Amazon Simple Storage Service. // // Returns metadata about all of the versions of objects in a bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation ListObjectVersions for usage and error information. func (c *S3) ListObjectVersions(input *ListObjectVersionsInput) (*ListObjectVersionsOutput, error) { req, out := c.ListObjectVersionsRequest(input) err := req.Send() return out, err } // ListObjectVersionsPages iterates over the pages of a ListObjectVersions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListObjectVersions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListObjectVersions operation. // pageNum := 0 // err := client.ListObjectVersionsPages(params, // func(page *ListObjectVersionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *S3) ListObjectVersionsPages(input *ListObjectVersionsInput, fn func(p *ListObjectVersionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListObjectVersionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListObjectVersionsOutput), lastPage) }) } const opListObjects = "ListObjects" // ListObjectsRequest generates a "aws/request.Request" representing the // client's request for the ListObjects operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListObjects for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListObjects method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListObjectsRequest method. // req, resp := client.ListObjectsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) ListObjectsRequest(input *ListObjectsInput) (req *request.Request, output *ListObjectsOutput) { op := &request.Operation{ Name: opListObjects, HTTPMethod: "GET", HTTPPath: "/{Bucket}", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"NextMarker || Contents[-1].Key"}, LimitToken: "MaxKeys", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListObjectsInput{} } req = c.newRequest(op, input, output) output = &ListObjectsOutput{} req.Data = output return } // ListObjects API operation for Amazon Simple Storage Service. // // Returns some or all (up to 1000) of the objects in a bucket. You can use // the request parameters as selection criteria to return a subset of the objects // in a bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation ListObjects for usage and error information. // // Returned Error Codes: // * NoSuchBucket // The specified bucket does not exist. // func (c *S3) ListObjects(input *ListObjectsInput) (*ListObjectsOutput, error) { req, out := c.ListObjectsRequest(input) err := req.Send() return out, err } // ListObjectsPages iterates over the pages of a ListObjects operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListObjects method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListObjects operation. // pageNum := 0 // err := client.ListObjectsPages(params, // func(page *ListObjectsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *S3) ListObjectsPages(input *ListObjectsInput, fn func(p *ListObjectsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListObjectsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListObjectsOutput), lastPage) }) } const opListObjectsV2 = "ListObjectsV2" // ListObjectsV2Request generates a "aws/request.Request" representing the // client's request for the ListObjectsV2 operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListObjectsV2 for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListObjectsV2 method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListObjectsV2Request method. // req, resp := client.ListObjectsV2Request(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) ListObjectsV2Request(input *ListObjectsV2Input) (req *request.Request, output *ListObjectsV2Output) { op := &request.Operation{ Name: opListObjectsV2, HTTPMethod: "GET", HTTPPath: "/{Bucket}?list-type=2", Paginator: &request.Paginator{ InputTokens: []string{"ContinuationToken"}, OutputTokens: []string{"NextContinuationToken"}, LimitToken: "MaxKeys", TruncationToken: "", }, } if input == nil { input = &ListObjectsV2Input{} } req = c.newRequest(op, input, output) output = &ListObjectsV2Output{} req.Data = output return } // ListObjectsV2 API operation for Amazon Simple Storage Service. // // Returns some or all (up to 1000) of the objects in a bucket. You can use // the request parameters as selection criteria to return a subset of the objects // in a bucket. Note: ListObjectsV2 is the revised List Objects API and we recommend // you use this revised API for new application development. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation ListObjectsV2 for usage and error information. // // Returned Error Codes: // * NoSuchBucket // The specified bucket does not exist. // func (c *S3) ListObjectsV2(input *ListObjectsV2Input) (*ListObjectsV2Output, error) { req, out := c.ListObjectsV2Request(input) err := req.Send() return out, err } // ListObjectsV2Pages iterates over the pages of a ListObjectsV2 operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListObjectsV2 method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListObjectsV2 operation. // pageNum := 0 // err := client.ListObjectsV2Pages(params, // func(page *ListObjectsV2Output, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *S3) ListObjectsV2Pages(input *ListObjectsV2Input, fn func(p *ListObjectsV2Output, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListObjectsV2Request(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListObjectsV2Output), lastPage) }) } const opListParts = "ListParts" // ListPartsRequest generates a "aws/request.Request" representing the // client's request for the ListParts operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListParts for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListParts method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListPartsRequest method. // req, resp := client.ListPartsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) ListPartsRequest(input *ListPartsInput) (req *request.Request, output *ListPartsOutput) { op := &request.Operation{ Name: opListParts, HTTPMethod: "GET", HTTPPath: "/{Bucket}/{Key+}", Paginator: &request.Paginator{ InputTokens: []string{"PartNumberMarker"}, OutputTokens: []string{"NextPartNumberMarker"}, LimitToken: "MaxParts", TruncationToken: "IsTruncated", }, } if input == nil { input = &ListPartsInput{} } req = c.newRequest(op, input, output) output = &ListPartsOutput{} req.Data = output return } // ListParts API operation for Amazon Simple Storage Service. // // Lists the parts that have been uploaded for a specific multipart upload. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation ListParts for usage and error information. func (c *S3) ListParts(input *ListPartsInput) (*ListPartsOutput, error) { req, out := c.ListPartsRequest(input) err := req.Send() return out, err } // ListPartsPages iterates over the pages of a ListParts operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListParts method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListParts operation. // pageNum := 0 // err := client.ListPartsPages(params, // func(page *ListPartsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *S3) ListPartsPages(input *ListPartsInput, fn func(p *ListPartsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListPartsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListPartsOutput), lastPage) }) } const opPutBucketAccelerateConfiguration = "PutBucketAccelerateConfiguration" // PutBucketAccelerateConfigurationRequest generates a "aws/request.Request" representing the // client's request for the PutBucketAccelerateConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutBucketAccelerateConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutBucketAccelerateConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutBucketAccelerateConfigurationRequest method. // req, resp := client.PutBucketAccelerateConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) PutBucketAccelerateConfigurationRequest(input *PutBucketAccelerateConfigurationInput) (req *request.Request, output *PutBucketAccelerateConfigurationOutput) { op := &request.Operation{ Name: opPutBucketAccelerateConfiguration, HTTPMethod: "PUT", HTTPPath: "/{Bucket}?accelerate", } if input == nil { input = &PutBucketAccelerateConfigurationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutBucketAccelerateConfigurationOutput{} req.Data = output return } // PutBucketAccelerateConfiguration API operation for Amazon Simple Storage Service. // // Sets the accelerate configuration of an existing bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation PutBucketAccelerateConfiguration for usage and error information. func (c *S3) PutBucketAccelerateConfiguration(input *PutBucketAccelerateConfigurationInput) (*PutBucketAccelerateConfigurationOutput, error) { req, out := c.PutBucketAccelerateConfigurationRequest(input) err := req.Send() return out, err } const opPutBucketAcl = "PutBucketAcl" // PutBucketAclRequest generates a "aws/request.Request" representing the // client's request for the PutBucketAcl operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutBucketAcl for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutBucketAcl method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutBucketAclRequest method. // req, resp := client.PutBucketAclRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) PutBucketAclRequest(input *PutBucketAclInput) (req *request.Request, output *PutBucketAclOutput) { op := &request.Operation{ Name: opPutBucketAcl, HTTPMethod: "PUT", HTTPPath: "/{Bucket}?acl", } if input == nil { input = &PutBucketAclInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutBucketAclOutput{} req.Data = output return } // PutBucketAcl API operation for Amazon Simple Storage Service. // // Sets the permissions on a bucket using access control lists (ACL). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation PutBucketAcl for usage and error information. func (c *S3) PutBucketAcl(input *PutBucketAclInput) (*PutBucketAclOutput, error) { req, out := c.PutBucketAclRequest(input) err := req.Send() return out, err } const opPutBucketCors = "PutBucketCors" // PutBucketCorsRequest generates a "aws/request.Request" representing the // client's request for the PutBucketCors operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutBucketCors for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutBucketCors method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutBucketCorsRequest method. // req, resp := client.PutBucketCorsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) PutBucketCorsRequest(input *PutBucketCorsInput) (req *request.Request, output *PutBucketCorsOutput) { op := &request.Operation{ Name: opPutBucketCors, HTTPMethod: "PUT", HTTPPath: "/{Bucket}?cors", } if input == nil { input = &PutBucketCorsInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutBucketCorsOutput{} req.Data = output return } // PutBucketCors API operation for Amazon Simple Storage Service. // // Sets the cors configuration for a bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation PutBucketCors for usage and error information. func (c *S3) PutBucketCors(input *PutBucketCorsInput) (*PutBucketCorsOutput, error) { req, out := c.PutBucketCorsRequest(input) err := req.Send() return out, err } const opPutBucketLifecycle = "PutBucketLifecycle" // PutBucketLifecycleRequest generates a "aws/request.Request" representing the // client's request for the PutBucketLifecycle operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutBucketLifecycle for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutBucketLifecycle method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutBucketLifecycleRequest method. // req, resp := client.PutBucketLifecycleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) PutBucketLifecycleRequest(input *PutBucketLifecycleInput) (req *request.Request, output *PutBucketLifecycleOutput) { if c.Client.Config.Logger != nil { c.Client.Config.Logger.Log("This operation, PutBucketLifecycle, has been deprecated") } op := &request.Operation{ Name: opPutBucketLifecycle, HTTPMethod: "PUT", HTTPPath: "/{Bucket}?lifecycle", } if input == nil { input = &PutBucketLifecycleInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutBucketLifecycleOutput{} req.Data = output return } // PutBucketLifecycle API operation for Amazon Simple Storage Service. // // Deprecated, see the PutBucketLifecycleConfiguration operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation PutBucketLifecycle for usage and error information. func (c *S3) PutBucketLifecycle(input *PutBucketLifecycleInput) (*PutBucketLifecycleOutput, error) { req, out := c.PutBucketLifecycleRequest(input) err := req.Send() return out, err } const opPutBucketLifecycleConfiguration = "PutBucketLifecycleConfiguration" // PutBucketLifecycleConfigurationRequest generates a "aws/request.Request" representing the // client's request for the PutBucketLifecycleConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutBucketLifecycleConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutBucketLifecycleConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutBucketLifecycleConfigurationRequest method. // req, resp := client.PutBucketLifecycleConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) PutBucketLifecycleConfigurationRequest(input *PutBucketLifecycleConfigurationInput) (req *request.Request, output *PutBucketLifecycleConfigurationOutput) { op := &request.Operation{ Name: opPutBucketLifecycleConfiguration, HTTPMethod: "PUT", HTTPPath: "/{Bucket}?lifecycle", } if input == nil { input = &PutBucketLifecycleConfigurationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutBucketLifecycleConfigurationOutput{} req.Data = output return } // PutBucketLifecycleConfiguration API operation for Amazon Simple Storage Service. // // Sets lifecycle configuration for your bucket. If a lifecycle configuration // exists, it replaces it. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation PutBucketLifecycleConfiguration for usage and error information. func (c *S3) PutBucketLifecycleConfiguration(input *PutBucketLifecycleConfigurationInput) (*PutBucketLifecycleConfigurationOutput, error) { req, out := c.PutBucketLifecycleConfigurationRequest(input) err := req.Send() return out, err } const opPutBucketLogging = "PutBucketLogging" // PutBucketLoggingRequest generates a "aws/request.Request" representing the // client's request for the PutBucketLogging operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutBucketLogging for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutBucketLogging method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutBucketLoggingRequest method. // req, resp := client.PutBucketLoggingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) PutBucketLoggingRequest(input *PutBucketLoggingInput) (req *request.Request, output *PutBucketLoggingOutput) { op := &request.Operation{ Name: opPutBucketLogging, HTTPMethod: "PUT", HTTPPath: "/{Bucket}?logging", } if input == nil { input = &PutBucketLoggingInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutBucketLoggingOutput{} req.Data = output return } // PutBucketLogging API operation for Amazon Simple Storage Service. // // Set the logging parameters for a bucket and to specify permissions for who // can view and modify the logging parameters. To set the logging status of // a bucket, you must be the bucket owner. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation PutBucketLogging for usage and error information. func (c *S3) PutBucketLogging(input *PutBucketLoggingInput) (*PutBucketLoggingOutput, error) { req, out := c.PutBucketLoggingRequest(input) err := req.Send() return out, err } const opPutBucketNotification = "PutBucketNotification" // PutBucketNotificationRequest generates a "aws/request.Request" representing the // client's request for the PutBucketNotification operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutBucketNotification for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutBucketNotification method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutBucketNotificationRequest method. // req, resp := client.PutBucketNotificationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) PutBucketNotificationRequest(input *PutBucketNotificationInput) (req *request.Request, output *PutBucketNotificationOutput) { if c.Client.Config.Logger != nil { c.Client.Config.Logger.Log("This operation, PutBucketNotification, has been deprecated") } op := &request.Operation{ Name: opPutBucketNotification, HTTPMethod: "PUT", HTTPPath: "/{Bucket}?notification", } if input == nil { input = &PutBucketNotificationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutBucketNotificationOutput{} req.Data = output return } // PutBucketNotification API operation for Amazon Simple Storage Service. // // Deprecated, see the PutBucketNotificationConfiguraiton operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation PutBucketNotification for usage and error information. func (c *S3) PutBucketNotification(input *PutBucketNotificationInput) (*PutBucketNotificationOutput, error) { req, out := c.PutBucketNotificationRequest(input) err := req.Send() return out, err } const opPutBucketNotificationConfiguration = "PutBucketNotificationConfiguration" // PutBucketNotificationConfigurationRequest generates a "aws/request.Request" representing the // client's request for the PutBucketNotificationConfiguration operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutBucketNotificationConfiguration for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutBucketNotificationConfiguration method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutBucketNotificationConfigurationRequest method. // req, resp := client.PutBucketNotificationConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) PutBucketNotificationConfigurationRequest(input *PutBucketNotificationConfigurationInput) (req *request.Request, output *PutBucketNotificationConfigurationOutput) { op := &request.Operation{ Name: opPutBucketNotificationConfiguration, HTTPMethod: "PUT", HTTPPath: "/{Bucket}?notification", } if input == nil { input = &PutBucketNotificationConfigurationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutBucketNotificationConfigurationOutput{} req.Data = output return } // PutBucketNotificationConfiguration API operation for Amazon Simple Storage Service. // // Enables notifications of specified events for a bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation PutBucketNotificationConfiguration for usage and error information. func (c *S3) PutBucketNotificationConfiguration(input *PutBucketNotificationConfigurationInput) (*PutBucketNotificationConfigurationOutput, error) { req, out := c.PutBucketNotificationConfigurationRequest(input) err := req.Send() return out, err } const opPutBucketPolicy = "PutBucketPolicy" // PutBucketPolicyRequest generates a "aws/request.Request" representing the // client's request for the PutBucketPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutBucketPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutBucketPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutBucketPolicyRequest method. // req, resp := client.PutBucketPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) PutBucketPolicyRequest(input *PutBucketPolicyInput) (req *request.Request, output *PutBucketPolicyOutput) { op := &request.Operation{ Name: opPutBucketPolicy, HTTPMethod: "PUT", HTTPPath: "/{Bucket}?policy", } if input == nil { input = &PutBucketPolicyInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutBucketPolicyOutput{} req.Data = output return } // PutBucketPolicy API operation for Amazon Simple Storage Service. // // Replaces a policy on a bucket. If the bucket already has a policy, the one // in this request completely replaces it. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation PutBucketPolicy for usage and error information. func (c *S3) PutBucketPolicy(input *PutBucketPolicyInput) (*PutBucketPolicyOutput, error) { req, out := c.PutBucketPolicyRequest(input) err := req.Send() return out, err } const opPutBucketReplication = "PutBucketReplication" // PutBucketReplicationRequest generates a "aws/request.Request" representing the // client's request for the PutBucketReplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutBucketReplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutBucketReplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutBucketReplicationRequest method. // req, resp := client.PutBucketReplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) PutBucketReplicationRequest(input *PutBucketReplicationInput) (req *request.Request, output *PutBucketReplicationOutput) { op := &request.Operation{ Name: opPutBucketReplication, HTTPMethod: "PUT", HTTPPath: "/{Bucket}?replication", } if input == nil { input = &PutBucketReplicationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutBucketReplicationOutput{} req.Data = output return } // PutBucketReplication API operation for Amazon Simple Storage Service. // // Creates a new replication configuration (or replaces an existing one, if // present). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation PutBucketReplication for usage and error information. func (c *S3) PutBucketReplication(input *PutBucketReplicationInput) (*PutBucketReplicationOutput, error) { req, out := c.PutBucketReplicationRequest(input) err := req.Send() return out, err } const opPutBucketRequestPayment = "PutBucketRequestPayment" // PutBucketRequestPaymentRequest generates a "aws/request.Request" representing the // client's request for the PutBucketRequestPayment operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutBucketRequestPayment for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutBucketRequestPayment method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutBucketRequestPaymentRequest method. // req, resp := client.PutBucketRequestPaymentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) PutBucketRequestPaymentRequest(input *PutBucketRequestPaymentInput) (req *request.Request, output *PutBucketRequestPaymentOutput) { op := &request.Operation{ Name: opPutBucketRequestPayment, HTTPMethod: "PUT", HTTPPath: "/{Bucket}?requestPayment", } if input == nil { input = &PutBucketRequestPaymentInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutBucketRequestPaymentOutput{} req.Data = output return } // PutBucketRequestPayment API operation for Amazon Simple Storage Service. // // Sets the request payment configuration for a bucket. By default, the bucket // owner pays for downloads from the bucket. This configuration parameter enables // the bucket owner (only) to specify that the person requesting the download // will be charged for the download. Documentation on requester pays buckets // can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation PutBucketRequestPayment for usage and error information. func (c *S3) PutBucketRequestPayment(input *PutBucketRequestPaymentInput) (*PutBucketRequestPaymentOutput, error) { req, out := c.PutBucketRequestPaymentRequest(input) err := req.Send() return out, err } const opPutBucketTagging = "PutBucketTagging" // PutBucketTaggingRequest generates a "aws/request.Request" representing the // client's request for the PutBucketTagging operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutBucketTagging for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutBucketTagging method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutBucketTaggingRequest method. // req, resp := client.PutBucketTaggingRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) PutBucketTaggingRequest(input *PutBucketTaggingInput) (req *request.Request, output *PutBucketTaggingOutput) { op := &request.Operation{ Name: opPutBucketTagging, HTTPMethod: "PUT", HTTPPath: "/{Bucket}?tagging", } if input == nil { input = &PutBucketTaggingInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutBucketTaggingOutput{} req.Data = output return } // PutBucketTagging API operation for Amazon Simple Storage Service. // // Sets the tags for a bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation PutBucketTagging for usage and error information. func (c *S3) PutBucketTagging(input *PutBucketTaggingInput) (*PutBucketTaggingOutput, error) { req, out := c.PutBucketTaggingRequest(input) err := req.Send() return out, err } const opPutBucketVersioning = "PutBucketVersioning" // PutBucketVersioningRequest generates a "aws/request.Request" representing the // client's request for the PutBucketVersioning operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutBucketVersioning for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutBucketVersioning method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutBucketVersioningRequest method. // req, resp := client.PutBucketVersioningRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) PutBucketVersioningRequest(input *PutBucketVersioningInput) (req *request.Request, output *PutBucketVersioningOutput) { op := &request.Operation{ Name: opPutBucketVersioning, HTTPMethod: "PUT", HTTPPath: "/{Bucket}?versioning", } if input == nil { input = &PutBucketVersioningInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutBucketVersioningOutput{} req.Data = output return } // PutBucketVersioning API operation for Amazon Simple Storage Service. // // Sets the versioning state of an existing bucket. To set the versioning state, // you must be the bucket owner. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation PutBucketVersioning for usage and error information. func (c *S3) PutBucketVersioning(input *PutBucketVersioningInput) (*PutBucketVersioningOutput, error) { req, out := c.PutBucketVersioningRequest(input) err := req.Send() return out, err } const opPutBucketWebsite = "PutBucketWebsite" // PutBucketWebsiteRequest generates a "aws/request.Request" representing the // client's request for the PutBucketWebsite operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutBucketWebsite for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutBucketWebsite method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutBucketWebsiteRequest method. // req, resp := client.PutBucketWebsiteRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) PutBucketWebsiteRequest(input *PutBucketWebsiteInput) (req *request.Request, output *PutBucketWebsiteOutput) { op := &request.Operation{ Name: opPutBucketWebsite, HTTPMethod: "PUT", HTTPPath: "/{Bucket}?website", } if input == nil { input = &PutBucketWebsiteInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutBucketWebsiteOutput{} req.Data = output return } // PutBucketWebsite API operation for Amazon Simple Storage Service. // // Set the website configuration for a bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation PutBucketWebsite for usage and error information. func (c *S3) PutBucketWebsite(input *PutBucketWebsiteInput) (*PutBucketWebsiteOutput, error) { req, out := c.PutBucketWebsiteRequest(input) err := req.Send() return out, err } const opPutObject = "PutObject" // PutObjectRequest generates a "aws/request.Request" representing the // client's request for the PutObject operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutObject for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutObject method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutObjectRequest method. // req, resp := client.PutObjectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) PutObjectRequest(input *PutObjectInput) (req *request.Request, output *PutObjectOutput) { op := &request.Operation{ Name: opPutObject, HTTPMethod: "PUT", HTTPPath: "/{Bucket}/{Key+}", } if input == nil { input = &PutObjectInput{} } req = c.newRequest(op, input, output) output = &PutObjectOutput{} req.Data = output return } // PutObject API operation for Amazon Simple Storage Service. // // Adds an object to a bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation PutObject for usage and error information. func (c *S3) PutObject(input *PutObjectInput) (*PutObjectOutput, error) { req, out := c.PutObjectRequest(input) err := req.Send() return out, err } const opPutObjectAcl = "PutObjectAcl" // PutObjectAclRequest generates a "aws/request.Request" representing the // client's request for the PutObjectAcl operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutObjectAcl for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutObjectAcl method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutObjectAclRequest method. // req, resp := client.PutObjectAclRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) PutObjectAclRequest(input *PutObjectAclInput) (req *request.Request, output *PutObjectAclOutput) { op := &request.Operation{ Name: opPutObjectAcl, HTTPMethod: "PUT", HTTPPath: "/{Bucket}/{Key+}?acl", } if input == nil { input = &PutObjectAclInput{} } req = c.newRequest(op, input, output) output = &PutObjectAclOutput{} req.Data = output return } // PutObjectAcl API operation for Amazon Simple Storage Service. // // uses the acl subresource to set the access control list (ACL) permissions // for an object that already exists in a bucket // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation PutObjectAcl for usage and error information. // // Returned Error Codes: // * NoSuchKey // The specified key does not exist. // func (c *S3) PutObjectAcl(input *PutObjectAclInput) (*PutObjectAclOutput, error) { req, out := c.PutObjectAclRequest(input) err := req.Send() return out, err } const opRestoreObject = "RestoreObject" // RestoreObjectRequest generates a "aws/request.Request" representing the // client's request for the RestoreObject operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RestoreObject for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RestoreObject method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RestoreObjectRequest method. // req, resp := client.RestoreObjectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) RestoreObjectRequest(input *RestoreObjectInput) (req *request.Request, output *RestoreObjectOutput) { op := &request.Operation{ Name: opRestoreObject, HTTPMethod: "POST", HTTPPath: "/{Bucket}/{Key+}?restore", } if input == nil { input = &RestoreObjectInput{} } req = c.newRequest(op, input, output) output = &RestoreObjectOutput{} req.Data = output return } // RestoreObject API operation for Amazon Simple Storage Service. // // Restores an archived copy of an object back into Amazon S3 // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation RestoreObject for usage and error information. // // Returned Error Codes: // * ObjectAlreadyInActiveTierError // This operation is not allowed against this storage tier // func (c *S3) RestoreObject(input *RestoreObjectInput) (*RestoreObjectOutput, error) { req, out := c.RestoreObjectRequest(input) err := req.Send() return out, err } const opUploadPart = "UploadPart" // UploadPartRequest generates a "aws/request.Request" representing the // client's request for the UploadPart operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UploadPart for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UploadPart method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UploadPartRequest method. // req, resp := client.UploadPartRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) UploadPartRequest(input *UploadPartInput) (req *request.Request, output *UploadPartOutput) { op := &request.Operation{ Name: opUploadPart, HTTPMethod: "PUT", HTTPPath: "/{Bucket}/{Key+}", } if input == nil { input = &UploadPartInput{} } req = c.newRequest(op, input, output) output = &UploadPartOutput{} req.Data = output return } // UploadPart API operation for Amazon Simple Storage Service. // // Uploads a part in a multipart upload. // // Note: After you initiate multipart upload and upload one or more parts, you // must either complete or abort multipart upload in order to stop getting charged // for storage of the uploaded parts. Only after you either complete or abort // multipart upload, Amazon S3 frees up the parts storage and stops charging // you for the parts storage. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation UploadPart for usage and error information. func (c *S3) UploadPart(input *UploadPartInput) (*UploadPartOutput, error) { req, out := c.UploadPartRequest(input) err := req.Send() return out, err } const opUploadPartCopy = "UploadPartCopy" // UploadPartCopyRequest generates a "aws/request.Request" representing the // client's request for the UploadPartCopy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UploadPartCopy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UploadPartCopy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UploadPartCopyRequest method. // req, resp := client.UploadPartCopyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *S3) UploadPartCopyRequest(input *UploadPartCopyInput) (req *request.Request, output *UploadPartCopyOutput) { op := &request.Operation{ Name: opUploadPartCopy, HTTPMethod: "PUT", HTTPPath: "/{Bucket}/{Key+}", } if input == nil { input = &UploadPartCopyInput{} } req = c.newRequest(op, input, output) output = &UploadPartCopyOutput{} req.Data = output return } // UploadPartCopy API operation for Amazon Simple Storage Service. // // Uploads a part by copying data from an existing object as data source. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Storage Service's // API operation UploadPartCopy for usage and error information. func (c *S3) UploadPartCopy(input *UploadPartCopyInput) (*UploadPartCopyOutput, error) { req, out := c.UploadPartCopyRequest(input) err := req.Send() return out, err } // Specifies the days since the initiation of an Incomplete Multipart Upload // that Lifecycle will wait before permanently removing all parts of the upload. type AbortIncompleteMultipartUpload struct { _ struct{} `type:"structure"` // Indicates the number of days that must pass since initiation for Lifecycle // to abort an Incomplete Multipart Upload. DaysAfterInitiation *int64 `type:"integer"` } // String returns the string representation func (s AbortIncompleteMultipartUpload) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AbortIncompleteMultipartUpload) GoString() string { return s.String() } type AbortMultipartUploadInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Key is a required field Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` // Confirms that the requester knows that she or he will be charged for the // request. Bucket owners need not specify this parameter in their requests. // Documentation on downloading objects from requester pays buckets can be found // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // UploadId is a required field UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"` } // String returns the string representation func (s AbortMultipartUploadInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AbortMultipartUploadInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AbortMultipartUploadInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AbortMultipartUploadInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.UploadId == nil { invalidParams.Add(request.NewErrParamRequired("UploadId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AbortMultipartUploadOutput struct { _ struct{} `type:"structure"` // If present, indicates that the requester was successfully charged for the // request. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` } // String returns the string representation func (s AbortMultipartUploadOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AbortMultipartUploadOutput) GoString() string { return s.String() } type AccelerateConfiguration struct { _ struct{} `type:"structure"` // The accelerate configuration of the bucket. Status *string `type:"string" enum:"BucketAccelerateStatus"` } // String returns the string representation func (s AccelerateConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AccelerateConfiguration) GoString() string { return s.String() } type AccessControlPolicy struct { _ struct{} `type:"structure"` // A list of grants. Grants []*Grant `locationName:"AccessControlList" locationNameList:"Grant" type:"list"` Owner *Owner `type:"structure"` } // String returns the string representation func (s AccessControlPolicy) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AccessControlPolicy) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AccessControlPolicy) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AccessControlPolicy"} if s.Grants != nil { for i, v := range s.Grants { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Grants", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type Bucket struct { _ struct{} `type:"structure"` // Date the bucket was created. CreationDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The name of the bucket. Name *string `type:"string"` } // String returns the string representation func (s Bucket) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Bucket) GoString() string { return s.String() } type BucketLifecycleConfiguration struct { _ struct{} `type:"structure"` // Rules is a required field Rules []*LifecycleRule `locationName:"Rule" type:"list" flattened:"true" required:"true"` } // String returns the string representation func (s BucketLifecycleConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BucketLifecycleConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BucketLifecycleConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BucketLifecycleConfiguration"} if s.Rules == nil { invalidParams.Add(request.NewErrParamRequired("Rules")) } if s.Rules != nil { for i, v := range s.Rules { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type BucketLoggingStatus struct { _ struct{} `type:"structure"` LoggingEnabled *LoggingEnabled `type:"structure"` } // String returns the string representation func (s BucketLoggingStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BucketLoggingStatus) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BucketLoggingStatus) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BucketLoggingStatus"} if s.LoggingEnabled != nil { if err := s.LoggingEnabled.Validate(); err != nil { invalidParams.AddNested("LoggingEnabled", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CORSConfiguration struct { _ struct{} `type:"structure"` // CORSRules is a required field CORSRules []*CORSRule `locationName:"CORSRule" type:"list" flattened:"true" required:"true"` } // String returns the string representation func (s CORSConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CORSConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CORSConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CORSConfiguration"} if s.CORSRules == nil { invalidParams.Add(request.NewErrParamRequired("CORSRules")) } if s.CORSRules != nil { for i, v := range s.CORSRules { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CORSRules", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CORSRule struct { _ struct{} `type:"structure"` // Specifies which headers are allowed in a pre-flight OPTIONS request. AllowedHeaders []*string `locationName:"AllowedHeader" type:"list" flattened:"true"` // Identifies HTTP methods that the domain/origin specified in the rule is allowed // to execute. // // AllowedMethods is a required field AllowedMethods []*string `locationName:"AllowedMethod" type:"list" flattened:"true" required:"true"` // One or more origins you want customers to be able to access the bucket from. // // AllowedOrigins is a required field AllowedOrigins []*string `locationName:"AllowedOrigin" type:"list" flattened:"true" required:"true"` // One or more headers in the response that you want customers to be able to // access from their applications (for example, from a JavaScript XMLHttpRequest // object). ExposeHeaders []*string `locationName:"ExposeHeader" type:"list" flattened:"true"` // The time in seconds that your browser is to cache the preflight response // for the specified resource. MaxAgeSeconds *int64 `type:"integer"` } // String returns the string representation func (s CORSRule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CORSRule) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CORSRule) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CORSRule"} if s.AllowedMethods == nil { invalidParams.Add(request.NewErrParamRequired("AllowedMethods")) } if s.AllowedOrigins == nil { invalidParams.Add(request.NewErrParamRequired("AllowedOrigins")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CloudFunctionConfiguration struct { _ struct{} `type:"structure"` CloudFunction *string `type:"string"` // Bucket event for which to send notifications. Event *string `deprecated:"true" type:"string" enum:"Event"` Events []*string `locationName:"Event" type:"list" flattened:"true"` // Optional unique identifier for configurations in a notification configuration. // If you don't provide one, Amazon S3 will assign an ID. Id *string `type:"string"` InvocationRole *string `type:"string"` } // String returns the string representation func (s CloudFunctionConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CloudFunctionConfiguration) GoString() string { return s.String() } type CommonPrefix struct { _ struct{} `type:"structure"` Prefix *string `type:"string"` } // String returns the string representation func (s CommonPrefix) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CommonPrefix) GoString() string { return s.String() } type CompleteMultipartUploadInput struct { _ struct{} `type:"structure" payload:"MultipartUpload"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Key is a required field Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` MultipartUpload *CompletedMultipartUpload `locationName:"CompleteMultipartUpload" type:"structure"` // Confirms that the requester knows that she or he will be charged for the // request. Bucket owners need not specify this parameter in their requests. // Documentation on downloading objects from requester pays buckets can be found // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // UploadId is a required field UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"` } // String returns the string representation func (s CompleteMultipartUploadInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CompleteMultipartUploadInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CompleteMultipartUploadInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CompleteMultipartUploadInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.UploadId == nil { invalidParams.Add(request.NewErrParamRequired("UploadId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CompleteMultipartUploadOutput struct { _ struct{} `type:"structure"` Bucket *string `type:"string"` // Entity tag of the object. ETag *string `type:"string"` // If the object expiration is configured, this will contain the expiration // date (expiry-date) and rule ID (rule-id). The value of rule-id is URL encoded. Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"` Key *string `min:"1" type:"string"` Location *string `type:"string"` // If present, indicates that the requester was successfully charged for the // request. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // If present, specifies the ID of the AWS Key Management Service (KMS) master // encryption key that was used for the object. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` // The Server-side encryption algorithm used when storing this object in S3 // (e.g., AES256, aws:kms). ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` // Version of the object. VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"` } // String returns the string representation func (s CompleteMultipartUploadOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CompleteMultipartUploadOutput) GoString() string { return s.String() } type CompletedMultipartUpload struct { _ struct{} `type:"structure"` Parts []*CompletedPart `locationName:"Part" type:"list" flattened:"true"` } // String returns the string representation func (s CompletedMultipartUpload) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CompletedMultipartUpload) GoString() string { return s.String() } type CompletedPart struct { _ struct{} `type:"structure"` // Entity tag returned when the part was uploaded. ETag *string `type:"string"` // Part number that identifies the part. This is a positive integer between // 1 and 10,000. PartNumber *int64 `type:"integer"` } // String returns the string representation func (s CompletedPart) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CompletedPart) GoString() string { return s.String() } type Condition struct { _ struct{} `type:"structure"` // The HTTP error code when the redirect is applied. In the event of an error, // if the error code equals this value, then the specified redirect is applied. // Required when parent element Condition is specified and sibling KeyPrefixEquals // is not specified. If both are specified, then both must be true for the redirect // to be applied. HttpErrorCodeReturnedEquals *string `type:"string"` // The object key name prefix when the redirect is applied. For example, to // redirect requests for ExamplePage.html, the key prefix will be ExamplePage.html. // To redirect request for all pages with the prefix docs/, the key prefix will // be /docs, which identifies all objects in the docs/ folder. Required when // the parent element Condition is specified and sibling HttpErrorCodeReturnedEquals // is not specified. If both conditions are specified, both must be true for // the redirect to be applied. KeyPrefixEquals *string `type:"string"` } // String returns the string representation func (s Condition) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Condition) GoString() string { return s.String() } type CopyObjectInput struct { _ struct{} `type:"structure"` // The canned ACL to apply to the object. ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Specifies caching behavior along the request/reply chain. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"` // Specifies presentational information for the object. ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"` // Specifies what content encodings have been applied to the object and thus // what decoding mechanisms must be applied to obtain the media-type referenced // by the Content-Type header field. ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"` // The language the content is in. ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"` // A standard MIME type describing the format of the object data. ContentType *string `location:"header" locationName:"Content-Type" type:"string"` // The name of the source bucket and key name of the source object, separated // by a slash (/). Must be URL-encoded. // // CopySource is a required field CopySource *string `location:"header" locationName:"x-amz-copy-source" type:"string" required:"true"` // Copies the object if its entity tag (ETag) matches the specified tag. CopySourceIfMatch *string `location:"header" locationName:"x-amz-copy-source-if-match" type:"string"` // Copies the object if it has been modified since the specified time. CopySourceIfModifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-modified-since" type:"timestamp" timestampFormat:"rfc822"` // Copies the object if its entity tag (ETag) is different than the specified // ETag. CopySourceIfNoneMatch *string `location:"header" locationName:"x-amz-copy-source-if-none-match" type:"string"` // Copies the object if it hasn't been modified since the specified time. CopySourceIfUnmodifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-unmodified-since" type:"timestamp" timestampFormat:"rfc822"` // Specifies the algorithm to use when decrypting the source object (e.g., AES256). CopySourceSSECustomerAlgorithm *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use to decrypt // the source object. The encryption key provided in this header must be one // that was used when the source object was created. CopySourceSSECustomerKey *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key" type:"string"` // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure the encryption // key was transmitted without error. CopySourceSSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key-MD5" type:"string"` // The date and time at which the object is no longer cacheable. Expires *time.Time `location:"header" locationName:"Expires" type:"timestamp" timestampFormat:"rfc822"` // Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"` // Allows grantee to read the object data and its metadata. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"` // Allows grantee to read the object ACL. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"` // Allows grantee to write the ACL for the applicable object. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"` // Key is a required field Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` // A map of metadata to store with the object in S3. Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"` // Specifies whether the metadata is copied from the source object or replaced // with metadata provided in the request. MetadataDirective *string `location:"header" locationName:"x-amz-metadata-directive" type:"string" enum:"MetadataDirective"` // Confirms that the requester knows that she or he will be charged for the // request. Bucket owners need not specify this parameter in their requests. // Documentation on downloading objects from requester pays buckets can be found // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // Specifies the algorithm to use to when encrypting the object (e.g., AES256). SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting // data. This value is used to store the object and then it is discarded; Amazon // does not store the encryption key. The key must be appropriate for use with // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm // header. SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"` // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure the encryption // key was transmitted without error. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // Specifies the AWS KMS key ID to use for object encryption. All GET and PUT // requests for an object protected by AWS KMS will fail if not made via SSL // or using SigV4. Documentation on configuring any of the officially supported // AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` // The Server-side encryption algorithm used when storing this object in S3 // (e.g., AES256, aws:kms). ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` // The type of storage to use for the object. Defaults to 'STANDARD'. StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"` // If the bucket is configured as a website, redirects requests for this object // to another object in the same bucket or to an external URL. Amazon S3 stores // the value of this header in the object metadata. WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"` } // String returns the string representation func (s CopyObjectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyObjectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CopyObjectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CopyObjectInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.CopySource == nil { invalidParams.Add(request.NewErrParamRequired("CopySource")) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CopyObjectOutput struct { _ struct{} `type:"structure" payload:"CopyObjectResult"` CopyObjectResult *CopyObjectResult `type:"structure"` CopySourceVersionId *string `location:"header" locationName:"x-amz-copy-source-version-id" type:"string"` // If the object expiration is configured, the response includes this header. Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"` // If present, indicates that the requester was successfully charged for the // request. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // If server-side encryption with a customer-provided encryption key was requested, // the response will include this header confirming the encryption algorithm // used. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // If server-side encryption with a customer-provided encryption key was requested, // the response will include this header to provide round trip message integrity // verification of the customer-provided encryption key. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // If present, specifies the ID of the AWS Key Management Service (KMS) master // encryption key that was used for the object. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` // The Server-side encryption algorithm used when storing this object in S3 // (e.g., AES256, aws:kms). ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` // Version ID of the newly created copy. VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"` } // String returns the string representation func (s CopyObjectOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyObjectOutput) GoString() string { return s.String() } type CopyObjectResult struct { _ struct{} `type:"structure"` ETag *string `type:"string"` LastModified *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s CopyObjectResult) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyObjectResult) GoString() string { return s.String() } type CopyPartResult struct { _ struct{} `type:"structure"` // Entity tag of the object. ETag *string `type:"string"` // Date and time at which the object was uploaded. LastModified *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s CopyPartResult) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CopyPartResult) GoString() string { return s.String() } type CreateBucketConfiguration struct { _ struct{} `type:"structure"` // Specifies the region where the bucket will be created. If you don't specify // a region, the bucket will be created in US Standard. LocationConstraint *string `type:"string" enum:"BucketLocationConstraint"` } // String returns the string representation func (s CreateBucketConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateBucketConfiguration) GoString() string { return s.String() } type CreateBucketInput struct { _ struct{} `type:"structure" payload:"CreateBucketConfiguration"` // The canned ACL to apply to the bucket. ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"BucketCannedACL"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` CreateBucketConfiguration *CreateBucketConfiguration `locationName:"CreateBucketConfiguration" type:"structure"` // Allows grantee the read, write, read ACP, and write ACP permissions on the // bucket. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"` // Allows grantee to list the objects in the bucket. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"` // Allows grantee to read the bucket ACL. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"` // Allows grantee to create, overwrite, and delete any object in the bucket. GrantWrite *string `location:"header" locationName:"x-amz-grant-write" type:"string"` // Allows grantee to write the ACL for the applicable bucket. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"` } // String returns the string representation func (s CreateBucketInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateBucketInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateBucketInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateBucketInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateBucketOutput struct { _ struct{} `type:"structure"` Location *string `location:"header" locationName:"Location" type:"string"` } // String returns the string representation func (s CreateBucketOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateBucketOutput) GoString() string { return s.String() } type CreateMultipartUploadInput struct { _ struct{} `type:"structure"` // The canned ACL to apply to the object. ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Specifies caching behavior along the request/reply chain. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"` // Specifies presentational information for the object. ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"` // Specifies what content encodings have been applied to the object and thus // what decoding mechanisms must be applied to obtain the media-type referenced // by the Content-Type header field. ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"` // The language the content is in. ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"` // A standard MIME type describing the format of the object data. ContentType *string `location:"header" locationName:"Content-Type" type:"string"` // The date and time at which the object is no longer cacheable. Expires *time.Time `location:"header" locationName:"Expires" type:"timestamp" timestampFormat:"rfc822"` // Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"` // Allows grantee to read the object data and its metadata. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"` // Allows grantee to read the object ACL. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"` // Allows grantee to write the ACL for the applicable object. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"` // Key is a required field Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` // A map of metadata to store with the object in S3. Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"` // Confirms that the requester knows that she or he will be charged for the // request. Bucket owners need not specify this parameter in their requests. // Documentation on downloading objects from requester pays buckets can be found // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // Specifies the algorithm to use to when encrypting the object (e.g., AES256). SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting // data. This value is used to store the object and then it is discarded; Amazon // does not store the encryption key. The key must be appropriate for use with // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm // header. SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"` // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure the encryption // key was transmitted without error. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // Specifies the AWS KMS key ID to use for object encryption. All GET and PUT // requests for an object protected by AWS KMS will fail if not made via SSL // or using SigV4. Documentation on configuring any of the officially supported // AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` // The Server-side encryption algorithm used when storing this object in S3 // (e.g., AES256, aws:kms). ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` // The type of storage to use for the object. Defaults to 'STANDARD'. StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"` // If the bucket is configured as a website, redirects requests for this object // to another object in the same bucket or to an external URL. Amazon S3 stores // the value of this header in the object metadata. WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"` } // String returns the string representation func (s CreateMultipartUploadInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateMultipartUploadInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateMultipartUploadInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateMultipartUploadInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateMultipartUploadOutput struct { _ struct{} `type:"structure"` // Date when multipart upload will become eligible for abort operation by lifecycle. AbortDate *time.Time `location:"header" locationName:"x-amz-abort-date" type:"timestamp" timestampFormat:"rfc822"` // Id of the lifecycle rule that makes a multipart upload eligible for abort // operation. AbortRuleId *string `location:"header" locationName:"x-amz-abort-rule-id" type:"string"` // Name of the bucket to which the multipart upload was initiated. Bucket *string `locationName:"Bucket" type:"string"` // Object key for which the multipart upload was initiated. Key *string `min:"1" type:"string"` // If present, indicates that the requester was successfully charged for the // request. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // If server-side encryption with a customer-provided encryption key was requested, // the response will include this header confirming the encryption algorithm // used. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // If server-side encryption with a customer-provided encryption key was requested, // the response will include this header to provide round trip message integrity // verification of the customer-provided encryption key. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // If present, specifies the ID of the AWS Key Management Service (KMS) master // encryption key that was used for the object. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` // The Server-side encryption algorithm used when storing this object in S3 // (e.g., AES256, aws:kms). ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` // ID for the initiated multipart upload. UploadId *string `type:"string"` } // String returns the string representation func (s CreateMultipartUploadOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateMultipartUploadOutput) GoString() string { return s.String() } type Delete struct { _ struct{} `type:"structure"` // Objects is a required field Objects []*ObjectIdentifier `locationName:"Object" type:"list" flattened:"true" required:"true"` // Element to enable quiet mode for the request. When you add this element, // you must set its value to true. Quiet *bool `type:"boolean"` } // String returns the string representation func (s Delete) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Delete) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Delete) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Delete"} if s.Objects == nil { invalidParams.Add(request.NewErrParamRequired("Objects")) } if s.Objects != nil { for i, v := range s.Objects { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Objects", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteBucketCorsInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s DeleteBucketCorsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBucketCorsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteBucketCorsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteBucketCorsInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteBucketCorsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteBucketCorsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBucketCorsOutput) GoString() string { return s.String() } type DeleteBucketInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s DeleteBucketInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBucketInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteBucketInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteBucketInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteBucketLifecycleInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s DeleteBucketLifecycleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBucketLifecycleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteBucketLifecycleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteBucketLifecycleInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteBucketLifecycleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteBucketLifecycleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBucketLifecycleOutput) GoString() string { return s.String() } type DeleteBucketOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteBucketOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBucketOutput) GoString() string { return s.String() } type DeleteBucketPolicyInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s DeleteBucketPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBucketPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteBucketPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteBucketPolicyInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteBucketPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteBucketPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBucketPolicyOutput) GoString() string { return s.String() } type DeleteBucketReplicationInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s DeleteBucketReplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBucketReplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteBucketReplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteBucketReplicationInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteBucketReplicationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteBucketReplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBucketReplicationOutput) GoString() string { return s.String() } type DeleteBucketTaggingInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s DeleteBucketTaggingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBucketTaggingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteBucketTaggingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteBucketTaggingInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteBucketTaggingOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteBucketTaggingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBucketTaggingOutput) GoString() string { return s.String() } type DeleteBucketWebsiteInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s DeleteBucketWebsiteInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBucketWebsiteInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteBucketWebsiteInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteBucketWebsiteInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteBucketWebsiteOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteBucketWebsiteOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBucketWebsiteOutput) GoString() string { return s.String() } type DeleteMarkerEntry struct { _ struct{} `type:"structure"` // Specifies whether the object is (true) or is not (false) the latest version // of an object. IsLatest *bool `type:"boolean"` // The object key. Key *string `min:"1" type:"string"` // Date and time the object was last modified. LastModified *time.Time `type:"timestamp" timestampFormat:"iso8601"` Owner *Owner `type:"structure"` // Version ID of an object. VersionId *string `type:"string"` } // String returns the string representation func (s DeleteMarkerEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteMarkerEntry) GoString() string { return s.String() } type DeleteObjectInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Key is a required field Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` // The concatenation of the authentication device's serial number, a space, // and the value that is displayed on your authentication device. MFA *string `location:"header" locationName:"x-amz-mfa" type:"string"` // Confirms that the requester knows that she or he will be charged for the // request. Bucket owners need not specify this parameter in their requests. // Documentation on downloading objects from requester pays buckets can be found // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // VersionId used to reference a specific version of the object. VersionId *string `location:"querystring" locationName:"versionId" type:"string"` } // String returns the string representation func (s DeleteObjectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteObjectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteObjectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteObjectInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteObjectOutput struct { _ struct{} `type:"structure"` // Specifies whether the versioned object that was permanently deleted was (true) // or was not (false) a delete marker. DeleteMarker *bool `location:"header" locationName:"x-amz-delete-marker" type:"boolean"` // If present, indicates that the requester was successfully charged for the // request. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // Returns the version ID of the delete marker created as a result of the DELETE // operation. VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"` } // String returns the string representation func (s DeleteObjectOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteObjectOutput) GoString() string { return s.String() } type DeleteObjectsInput struct { _ struct{} `type:"structure" payload:"Delete"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Delete is a required field Delete *Delete `locationName:"Delete" type:"structure" required:"true"` // The concatenation of the authentication device's serial number, a space, // and the value that is displayed on your authentication device. MFA *string `location:"header" locationName:"x-amz-mfa" type:"string"` // Confirms that the requester knows that she or he will be charged for the // request. Bucket owners need not specify this parameter in their requests. // Documentation on downloading objects from requester pays buckets can be found // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` } // String returns the string representation func (s DeleteObjectsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteObjectsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteObjectsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteObjectsInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Delete == nil { invalidParams.Add(request.NewErrParamRequired("Delete")) } if s.Delete != nil { if err := s.Delete.Validate(); err != nil { invalidParams.AddNested("Delete", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteObjectsOutput struct { _ struct{} `type:"structure"` Deleted []*DeletedObject `type:"list" flattened:"true"` Errors []*Error `locationName:"Error" type:"list" flattened:"true"` // If present, indicates that the requester was successfully charged for the // request. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` } // String returns the string representation func (s DeleteObjectsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteObjectsOutput) GoString() string { return s.String() } type DeletedObject struct { _ struct{} `type:"structure"` DeleteMarker *bool `type:"boolean"` DeleteMarkerVersionId *string `type:"string"` Key *string `min:"1" type:"string"` VersionId *string `type:"string"` } // String returns the string representation func (s DeletedObject) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletedObject) GoString() string { return s.String() } type Destination struct { _ struct{} `type:"structure"` // Amazon resource name (ARN) of the bucket where you want Amazon S3 to store // replicas of the object identified by the rule. // // Bucket is a required field Bucket *string `type:"string" required:"true"` // The class of storage used to store the object. StorageClass *string `type:"string" enum:"StorageClass"` } // String returns the string representation func (s Destination) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Destination) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Destination) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Destination"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type Error struct { _ struct{} `type:"structure"` Code *string `type:"string"` Key *string `min:"1" type:"string"` Message *string `type:"string"` VersionId *string `type:"string"` } // String returns the string representation func (s Error) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Error) GoString() string { return s.String() } type ErrorDocument struct { _ struct{} `type:"structure"` // The object key name to use when a 4XX class error occurs. // // Key is a required field Key *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ErrorDocument) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ErrorDocument) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ErrorDocument) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ErrorDocument"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for key value pair that defines the criteria for the filter rule. type FilterRule struct { _ struct{} `type:"structure"` // Object key name prefix or suffix identifying one or more objects to which // the filtering rule applies. Maximum prefix length can be up to 1,024 characters. // Overlapping prefixes and suffixes are not supported. For more information, // go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) Name *string `type:"string" enum:"FilterRuleName"` Value *string `type:"string"` } // String returns the string representation func (s FilterRule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FilterRule) GoString() string { return s.String() } type GetBucketAccelerateConfigurationInput struct { _ struct{} `type:"structure"` // Name of the bucket for which the accelerate configuration is retrieved. // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s GetBucketAccelerateConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketAccelerateConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketAccelerateConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketAccelerateConfigurationInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetBucketAccelerateConfigurationOutput struct { _ struct{} `type:"structure"` // The accelerate configuration of the bucket. Status *string `type:"string" enum:"BucketAccelerateStatus"` } // String returns the string representation func (s GetBucketAccelerateConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketAccelerateConfigurationOutput) GoString() string { return s.String() } type GetBucketAclInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s GetBucketAclInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketAclInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketAclInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketAclInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetBucketAclOutput struct { _ struct{} `type:"structure"` // A list of grants. Grants []*Grant `locationName:"AccessControlList" locationNameList:"Grant" type:"list"` Owner *Owner `type:"structure"` } // String returns the string representation func (s GetBucketAclOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketAclOutput) GoString() string { return s.String() } type GetBucketCorsInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s GetBucketCorsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketCorsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketCorsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketCorsInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetBucketCorsOutput struct { _ struct{} `type:"structure"` CORSRules []*CORSRule `locationName:"CORSRule" type:"list" flattened:"true"` } // String returns the string representation func (s GetBucketCorsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketCorsOutput) GoString() string { return s.String() } type GetBucketLifecycleConfigurationInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s GetBucketLifecycleConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketLifecycleConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketLifecycleConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketLifecycleConfigurationInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetBucketLifecycleConfigurationOutput struct { _ struct{} `type:"structure"` Rules []*LifecycleRule `locationName:"Rule" type:"list" flattened:"true"` } // String returns the string representation func (s GetBucketLifecycleConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketLifecycleConfigurationOutput) GoString() string { return s.String() } type GetBucketLifecycleInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s GetBucketLifecycleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketLifecycleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketLifecycleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketLifecycleInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetBucketLifecycleOutput struct { _ struct{} `type:"structure"` Rules []*Rule `locationName:"Rule" type:"list" flattened:"true"` } // String returns the string representation func (s GetBucketLifecycleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketLifecycleOutput) GoString() string { return s.String() } type GetBucketLocationInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s GetBucketLocationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketLocationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketLocationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketLocationInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetBucketLocationOutput struct { _ struct{} `type:"structure"` LocationConstraint *string `type:"string" enum:"BucketLocationConstraint"` } // String returns the string representation func (s GetBucketLocationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketLocationOutput) GoString() string { return s.String() } type GetBucketLoggingInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s GetBucketLoggingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketLoggingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketLoggingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketLoggingInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetBucketLoggingOutput struct { _ struct{} `type:"structure"` LoggingEnabled *LoggingEnabled `type:"structure"` } // String returns the string representation func (s GetBucketLoggingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketLoggingOutput) GoString() string { return s.String() } type GetBucketNotificationConfigurationRequest struct { _ struct{} `type:"structure"` // Name of the bucket to get the notification configuration for. // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s GetBucketNotificationConfigurationRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketNotificationConfigurationRequest) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketNotificationConfigurationRequest) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketNotificationConfigurationRequest"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetBucketPolicyInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s GetBucketPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketPolicyInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetBucketPolicyOutput struct { _ struct{} `type:"structure" payload:"Policy"` // The bucket policy as a JSON document. Policy *string `type:"string"` } // String returns the string representation func (s GetBucketPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketPolicyOutput) GoString() string { return s.String() } type GetBucketReplicationInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s GetBucketReplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketReplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketReplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketReplicationInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetBucketReplicationOutput struct { _ struct{} `type:"structure" payload:"ReplicationConfiguration"` // Container for replication rules. You can add as many as 1,000 rules. Total // replication configuration size can be up to 2 MB. ReplicationConfiguration *ReplicationConfiguration `type:"structure"` } // String returns the string representation func (s GetBucketReplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketReplicationOutput) GoString() string { return s.String() } type GetBucketRequestPaymentInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s GetBucketRequestPaymentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketRequestPaymentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketRequestPaymentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketRequestPaymentInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetBucketRequestPaymentOutput struct { _ struct{} `type:"structure"` // Specifies who pays for the download and request fees. Payer *string `type:"string" enum:"Payer"` } // String returns the string representation func (s GetBucketRequestPaymentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketRequestPaymentOutput) GoString() string { return s.String() } type GetBucketTaggingInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s GetBucketTaggingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketTaggingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketTaggingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketTaggingInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetBucketTaggingOutput struct { _ struct{} `type:"structure"` // TagSet is a required field TagSet []*Tag `locationNameList:"Tag" type:"list" required:"true"` } // String returns the string representation func (s GetBucketTaggingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketTaggingOutput) GoString() string { return s.String() } type GetBucketVersioningInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s GetBucketVersioningInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketVersioningInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketVersioningInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketVersioningInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetBucketVersioningOutput struct { _ struct{} `type:"structure"` // Specifies whether MFA delete is enabled in the bucket versioning configuration. // This element is only returned if the bucket has been configured with MFA // delete. If the bucket has never been so configured, this element is not returned. MFADelete *string `locationName:"MfaDelete" type:"string" enum:"MFADeleteStatus"` // The versioning state of the bucket. Status *string `type:"string" enum:"BucketVersioningStatus"` } // String returns the string representation func (s GetBucketVersioningOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketVersioningOutput) GoString() string { return s.String() } type GetBucketWebsiteInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s GetBucketWebsiteInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketWebsiteInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetBucketWebsiteInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetBucketWebsiteInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetBucketWebsiteOutput struct { _ struct{} `type:"structure"` ErrorDocument *ErrorDocument `type:"structure"` IndexDocument *IndexDocument `type:"structure"` RedirectAllRequestsTo *RedirectAllRequestsTo `type:"structure"` RoutingRules []*RoutingRule `locationNameList:"RoutingRule" type:"list"` } // String returns the string representation func (s GetBucketWebsiteOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetBucketWebsiteOutput) GoString() string { return s.String() } type GetObjectAclInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Key is a required field Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` // Confirms that the requester knows that she or he will be charged for the // request. Bucket owners need not specify this parameter in their requests. // Documentation on downloading objects from requester pays buckets can be found // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // VersionId used to reference a specific version of the object. VersionId *string `location:"querystring" locationName:"versionId" type:"string"` } // String returns the string representation func (s GetObjectAclInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetObjectAclInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetObjectAclInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetObjectAclInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetObjectAclOutput struct { _ struct{} `type:"structure"` // A list of grants. Grants []*Grant `locationName:"AccessControlList" locationNameList:"Grant" type:"list"` Owner *Owner `type:"structure"` // If present, indicates that the requester was successfully charged for the // request. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` } // String returns the string representation func (s GetObjectAclOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetObjectAclOutput) GoString() string { return s.String() } type GetObjectInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Return the object only if its entity tag (ETag) is the same as the one specified, // otherwise return a 412 (precondition failed). IfMatch *string `location:"header" locationName:"If-Match" type:"string"` // Return the object only if it has been modified since the specified time, // otherwise return a 304 (not modified). IfModifiedSince *time.Time `location:"header" locationName:"If-Modified-Since" type:"timestamp" timestampFormat:"rfc822"` // Return the object only if its entity tag (ETag) is different from the one // specified, otherwise return a 304 (not modified). IfNoneMatch *string `location:"header" locationName:"If-None-Match" type:"string"` // Return the object only if it has not been modified since the specified time, // otherwise return a 412 (precondition failed). IfUnmodifiedSince *time.Time `location:"header" locationName:"If-Unmodified-Since" type:"timestamp" timestampFormat:"rfc822"` // Key is a required field Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` // Part number of the object being read. This is a positive integer between // 1 and 10,000. Effectively performs a 'ranged' GET request for the part specified. // Useful for downloading just a part of an object. PartNumber *int64 `location:"querystring" locationName:"partNumber" type:"integer"` // Downloads the specified range bytes of an object. For more information about // the HTTP Range header, go to http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35. Range *string `location:"header" locationName:"Range" type:"string"` // Confirms that the requester knows that she or he will be charged for the // request. Bucket owners need not specify this parameter in their requests. // Documentation on downloading objects from requester pays buckets can be found // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // Sets the Cache-Control header of the response. ResponseCacheControl *string `location:"querystring" locationName:"response-cache-control" type:"string"` // Sets the Content-Disposition header of the response ResponseContentDisposition *string `location:"querystring" locationName:"response-content-disposition" type:"string"` // Sets the Content-Encoding header of the response. ResponseContentEncoding *string `location:"querystring" locationName:"response-content-encoding" type:"string"` // Sets the Content-Language header of the response. ResponseContentLanguage *string `location:"querystring" locationName:"response-content-language" type:"string"` // Sets the Content-Type header of the response. ResponseContentType *string `location:"querystring" locationName:"response-content-type" type:"string"` // Sets the Expires header of the response. ResponseExpires *time.Time `location:"querystring" locationName:"response-expires" type:"timestamp" timestampFormat:"iso8601"` // Specifies the algorithm to use to when encrypting the object (e.g., AES256). SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting // data. This value is used to store the object and then it is discarded; Amazon // does not store the encryption key. The key must be appropriate for use with // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm // header. SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"` // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure the encryption // key was transmitted without error. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // VersionId used to reference a specific version of the object. VersionId *string `location:"querystring" locationName:"versionId" type:"string"` } // String returns the string representation func (s GetObjectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetObjectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetObjectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetObjectInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetObjectOutput struct { _ struct{} `type:"structure" payload:"Body"` AcceptRanges *string `location:"header" locationName:"accept-ranges" type:"string"` // Object data. Body io.ReadCloser `type:"blob"` // Specifies caching behavior along the request/reply chain. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"` // Specifies presentational information for the object. ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"` // Specifies what content encodings have been applied to the object and thus // what decoding mechanisms must be applied to obtain the media-type referenced // by the Content-Type header field. ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"` // The language the content is in. ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"` // Size of the body in bytes. ContentLength *int64 `location:"header" locationName:"Content-Length" type:"long"` // The portion of the object returned in the response. ContentRange *string `location:"header" locationName:"Content-Range" type:"string"` // A standard MIME type describing the format of the object data. ContentType *string `location:"header" locationName:"Content-Type" type:"string"` // Specifies whether the object retrieved was (true) or was not (false) a Delete // Marker. If false, this response header does not appear in the response. DeleteMarker *bool `location:"header" locationName:"x-amz-delete-marker" type:"boolean"` // An ETag is an opaque identifier assigned by a web server to a specific version // of a resource found at a URL ETag *string `location:"header" locationName:"ETag" type:"string"` // If the object expiration is configured (see PUT Bucket lifecycle), the response // includes this header. It includes the expiry-date and rule-id key value pairs // providing object expiration information. The value of the rule-id is URL // encoded. Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"` // The date and time at which the object is no longer cacheable. Expires *string `location:"header" locationName:"Expires" type:"string"` // Last modified date of the object LastModified *time.Time `location:"header" locationName:"Last-Modified" type:"timestamp" timestampFormat:"rfc822"` // A map of metadata to store with the object in S3. Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"` // This is set to the number of metadata entries not returned in x-amz-meta // headers. This can happen if you create metadata using an API like SOAP that // supports more flexible metadata than the REST API. For example, using SOAP, // you can create metadata whose values are not legal HTTP headers. MissingMeta *int64 `location:"header" locationName:"x-amz-missing-meta" type:"integer"` // The count of parts this object has. PartsCount *int64 `location:"header" locationName:"x-amz-mp-parts-count" type:"integer"` ReplicationStatus *string `location:"header" locationName:"x-amz-replication-status" type:"string" enum:"ReplicationStatus"` // If present, indicates that the requester was successfully charged for the // request. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // Provides information about object restoration operation and expiration time // of the restored object copy. Restore *string `location:"header" locationName:"x-amz-restore" type:"string"` // If server-side encryption with a customer-provided encryption key was requested, // the response will include this header confirming the encryption algorithm // used. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // If server-side encryption with a customer-provided encryption key was requested, // the response will include this header to provide round trip message integrity // verification of the customer-provided encryption key. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // If present, specifies the ID of the AWS Key Management Service (KMS) master // encryption key that was used for the object. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` // The Server-side encryption algorithm used when storing this object in S3 // (e.g., AES256, aws:kms). ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"` // Version of the object. VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"` // If the bucket is configured as a website, redirects requests for this object // to another object in the same bucket or to an external URL. Amazon S3 stores // the value of this header in the object metadata. WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"` } // String returns the string representation func (s GetObjectOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetObjectOutput) GoString() string { return s.String() } type GetObjectTorrentInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Key is a required field Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` // Confirms that the requester knows that she or he will be charged for the // request. Bucket owners need not specify this parameter in their requests. // Documentation on downloading objects from requester pays buckets can be found // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` } // String returns the string representation func (s GetObjectTorrentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetObjectTorrentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetObjectTorrentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetObjectTorrentInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetObjectTorrentOutput struct { _ struct{} `type:"structure" payload:"Body"` Body io.ReadCloser `type:"blob"` // If present, indicates that the requester was successfully charged for the // request. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` } // String returns the string representation func (s GetObjectTorrentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetObjectTorrentOutput) GoString() string { return s.String() } type Grant struct { _ struct{} `type:"structure"` Grantee *Grantee `type:"structure"` // Specifies the permission given to the grantee. Permission *string `type:"string" enum:"Permission"` } // String returns the string representation func (s Grant) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Grant) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Grant) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Grant"} if s.Grantee != nil { if err := s.Grantee.Validate(); err != nil { invalidParams.AddNested("Grantee", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type Grantee struct { _ struct{} `type:"structure" xmlPrefix:"xsi" xmlURI:"http://www.w3.org/2001/XMLSchema-instance"` // Screen name of the grantee. DisplayName *string `type:"string"` // Email address of the grantee. EmailAddress *string `type:"string"` // The canonical user ID of the grantee. ID *string `type:"string"` // Type of grantee // // Type is a required field Type *string `locationName:"xsi:type" type:"string" xmlAttribute:"true" required:"true" enum:"Type"` // URI of the grantee group. URI *string `type:"string"` } // String returns the string representation func (s Grantee) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Grantee) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Grantee) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Grantee"} if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type HeadBucketInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s HeadBucketInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HeadBucketInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *HeadBucketInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "HeadBucketInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type HeadBucketOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s HeadBucketOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HeadBucketOutput) GoString() string { return s.String() } type HeadObjectInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Return the object only if its entity tag (ETag) is the same as the one specified, // otherwise return a 412 (precondition failed). IfMatch *string `location:"header" locationName:"If-Match" type:"string"` // Return the object only if it has been modified since the specified time, // otherwise return a 304 (not modified). IfModifiedSince *time.Time `location:"header" locationName:"If-Modified-Since" type:"timestamp" timestampFormat:"rfc822"` // Return the object only if its entity tag (ETag) is different from the one // specified, otherwise return a 304 (not modified). IfNoneMatch *string `location:"header" locationName:"If-None-Match" type:"string"` // Return the object only if it has not been modified since the specified time, // otherwise return a 412 (precondition failed). IfUnmodifiedSince *time.Time `location:"header" locationName:"If-Unmodified-Since" type:"timestamp" timestampFormat:"rfc822"` // Key is a required field Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` // Part number of the object being read. This is a positive integer between // 1 and 10,000. Effectively performs a 'ranged' HEAD request for the part specified. // Useful querying about the size of the part and the number of parts in this // object. PartNumber *int64 `location:"querystring" locationName:"partNumber" type:"integer"` // Downloads the specified range bytes of an object. For more information about // the HTTP Range header, go to http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35. Range *string `location:"header" locationName:"Range" type:"string"` // Confirms that the requester knows that she or he will be charged for the // request. Bucket owners need not specify this parameter in their requests. // Documentation on downloading objects from requester pays buckets can be found // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // Specifies the algorithm to use to when encrypting the object (e.g., AES256). SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting // data. This value is used to store the object and then it is discarded; Amazon // does not store the encryption key. The key must be appropriate for use with // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm // header. SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"` // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure the encryption // key was transmitted without error. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // VersionId used to reference a specific version of the object. VersionId *string `location:"querystring" locationName:"versionId" type:"string"` } // String returns the string representation func (s HeadObjectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HeadObjectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *HeadObjectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "HeadObjectInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type HeadObjectOutput struct { _ struct{} `type:"structure"` AcceptRanges *string `location:"header" locationName:"accept-ranges" type:"string"` // Specifies caching behavior along the request/reply chain. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"` // Specifies presentational information for the object. ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"` // Specifies what content encodings have been applied to the object and thus // what decoding mechanisms must be applied to obtain the media-type referenced // by the Content-Type header field. ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"` // The language the content is in. ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"` // Size of the body in bytes. ContentLength *int64 `location:"header" locationName:"Content-Length" type:"long"` // A standard MIME type describing the format of the object data. ContentType *string `location:"header" locationName:"Content-Type" type:"string"` // Specifies whether the object retrieved was (true) or was not (false) a Delete // Marker. If false, this response header does not appear in the response. DeleteMarker *bool `location:"header" locationName:"x-amz-delete-marker" type:"boolean"` // An ETag is an opaque identifier assigned by a web server to a specific version // of a resource found at a URL ETag *string `location:"header" locationName:"ETag" type:"string"` // If the object expiration is configured (see PUT Bucket lifecycle), the response // includes this header. It includes the expiry-date and rule-id key value pairs // providing object expiration information. The value of the rule-id is URL // encoded. Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"` // The date and time at which the object is no longer cacheable. Expires *string `location:"header" locationName:"Expires" type:"string"` // Last modified date of the object LastModified *time.Time `location:"header" locationName:"Last-Modified" type:"timestamp" timestampFormat:"rfc822"` // A map of metadata to store with the object in S3. Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"` // This is set to the number of metadata entries not returned in x-amz-meta // headers. This can happen if you create metadata using an API like SOAP that // supports more flexible metadata than the REST API. For example, using SOAP, // you can create metadata whose values are not legal HTTP headers. MissingMeta *int64 `location:"header" locationName:"x-amz-missing-meta" type:"integer"` // The count of parts this object has. PartsCount *int64 `location:"header" locationName:"x-amz-mp-parts-count" type:"integer"` ReplicationStatus *string `location:"header" locationName:"x-amz-replication-status" type:"string" enum:"ReplicationStatus"` // If present, indicates that the requester was successfully charged for the // request. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // Provides information about object restoration operation and expiration time // of the restored object copy. Restore *string `location:"header" locationName:"x-amz-restore" type:"string"` // If server-side encryption with a customer-provided encryption key was requested, // the response will include this header confirming the encryption algorithm // used. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // If server-side encryption with a customer-provided encryption key was requested, // the response will include this header to provide round trip message integrity // verification of the customer-provided encryption key. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // If present, specifies the ID of the AWS Key Management Service (KMS) master // encryption key that was used for the object. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` // The Server-side encryption algorithm used when storing this object in S3 // (e.g., AES256, aws:kms). ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"` // Version of the object. VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"` // If the bucket is configured as a website, redirects requests for this object // to another object in the same bucket or to an external URL. Amazon S3 stores // the value of this header in the object metadata. WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"` } // String returns the string representation func (s HeadObjectOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HeadObjectOutput) GoString() string { return s.String() } type IndexDocument struct { _ struct{} `type:"structure"` // A suffix that is appended to a request that is for a directory on the website // endpoint (e.g. if the suffix is index.html and you make a request to samplebucket/images/ // the data that is returned will be for the object with the key name images/index.html) // The suffix must not be empty and must not include a slash character. // // Suffix is a required field Suffix *string `type:"string" required:"true"` } // String returns the string representation func (s IndexDocument) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IndexDocument) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *IndexDocument) Validate() error { invalidParams := request.ErrInvalidParams{Context: "IndexDocument"} if s.Suffix == nil { invalidParams.Add(request.NewErrParamRequired("Suffix")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type Initiator struct { _ struct{} `type:"structure"` // Name of the Principal. DisplayName *string `type:"string"` // If the principal is an AWS account, it provides the Canonical User ID. If // the principal is an IAM User, it provides a user ARN value. ID *string `type:"string"` } // String returns the string representation func (s Initiator) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Initiator) GoString() string { return s.String() } // Container for object key name prefix and suffix filtering rules. type KeyFilter struct { _ struct{} `type:"structure"` // A list of containers for key value pair that defines the criteria for the // filter rule. FilterRules []*FilterRule `locationName:"FilterRule" type:"list" flattened:"true"` } // String returns the string representation func (s KeyFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KeyFilter) GoString() string { return s.String() } // Container for specifying the AWS Lambda notification configuration. type LambdaFunctionConfiguration struct { _ struct{} `type:"structure"` // Events is a required field Events []*string `locationName:"Event" type:"list" flattened:"true" required:"true"` // Container for object key name filtering rules. For information about key // name filtering, go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) Filter *NotificationConfigurationFilter `type:"structure"` // Optional unique identifier for configurations in a notification configuration. // If you don't provide one, Amazon S3 will assign an ID. Id *string `type:"string"` // Lambda cloud function ARN that Amazon S3 can invoke when it detects events // of the specified type. // // LambdaFunctionArn is a required field LambdaFunctionArn *string `locationName:"CloudFunction" type:"string" required:"true"` } // String returns the string representation func (s LambdaFunctionConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LambdaFunctionConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LambdaFunctionConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LambdaFunctionConfiguration"} if s.Events == nil { invalidParams.Add(request.NewErrParamRequired("Events")) } if s.LambdaFunctionArn == nil { invalidParams.Add(request.NewErrParamRequired("LambdaFunctionArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type LifecycleConfiguration struct { _ struct{} `type:"structure"` // Rules is a required field Rules []*Rule `locationName:"Rule" type:"list" flattened:"true" required:"true"` } // String returns the string representation func (s LifecycleConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LifecycleConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LifecycleConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LifecycleConfiguration"} if s.Rules == nil { invalidParams.Add(request.NewErrParamRequired("Rules")) } if s.Rules != nil { for i, v := range s.Rules { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type LifecycleExpiration struct { _ struct{} `type:"structure"` // Indicates at what date the object is to be moved or deleted. Should be in // GMT ISO 8601 Format. Date *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Indicates the lifetime, in days, of the objects that are subject to the rule. // The value must be a non-zero positive integer. Days *int64 `type:"integer"` // Indicates whether Amazon S3 will remove a delete marker with no noncurrent // versions. If set to true, the delete marker will be expired; if set to false // the policy takes no action. This cannot be specified with Days or Date in // a Lifecycle Expiration Policy. ExpiredObjectDeleteMarker *bool `type:"boolean"` } // String returns the string representation func (s LifecycleExpiration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LifecycleExpiration) GoString() string { return s.String() } type LifecycleRule struct { _ struct{} `type:"structure"` // Specifies the days since the initiation of an Incomplete Multipart Upload // that Lifecycle will wait before permanently removing all parts of the upload. AbortIncompleteMultipartUpload *AbortIncompleteMultipartUpload `type:"structure"` Expiration *LifecycleExpiration `type:"structure"` // Unique identifier for the rule. The value cannot be longer than 255 characters. ID *string `type:"string"` // Specifies when noncurrent object versions expire. Upon expiration, Amazon // S3 permanently deletes the noncurrent object versions. You set this lifecycle // configuration action on a bucket that has versioning enabled (or suspended) // to request that Amazon S3 delete noncurrent object versions at a specific // period in the object's lifetime. NoncurrentVersionExpiration *NoncurrentVersionExpiration `type:"structure"` NoncurrentVersionTransitions []*NoncurrentVersionTransition `locationName:"NoncurrentVersionTransition" type:"list" flattened:"true"` // Prefix identifying one or more objects to which the rule applies. // // Prefix is a required field Prefix *string `type:"string" required:"true"` // If 'Enabled', the rule is currently being applied. If 'Disabled', the rule // is not currently being applied. // // Status is a required field Status *string `type:"string" required:"true" enum:"ExpirationStatus"` Transitions []*Transition `locationName:"Transition" type:"list" flattened:"true"` } // String returns the string representation func (s LifecycleRule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LifecycleRule) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LifecycleRule) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LifecycleRule"} if s.Prefix == nil { invalidParams.Add(request.NewErrParamRequired("Prefix")) } if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListBucketsInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ListBucketsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListBucketsInput) GoString() string { return s.String() } type ListBucketsOutput struct { _ struct{} `type:"structure"` Buckets []*Bucket `locationNameList:"Bucket" type:"list"` Owner *Owner `type:"structure"` } // String returns the string representation func (s ListBucketsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListBucketsOutput) GoString() string { return s.String() } type ListMultipartUploadsInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Character you use to group keys. Delimiter *string `location:"querystring" locationName:"delimiter" type:"string"` // Requests Amazon S3 to encode the object keys in the response and specifies // the encoding method to use. An object key may contain any Unicode character; // however, XML 1.0 parser cannot parse some characters, such as characters // with an ASCII value from 0 to 10. For characters that are not supported in // XML 1.0, you can add this parameter to request that Amazon S3 encode the // keys in the response. EncodingType *string `location:"querystring" locationName:"encoding-type" type:"string" enum:"EncodingType"` // Together with upload-id-marker, this parameter specifies the multipart upload // after which listing should begin. KeyMarker *string `location:"querystring" locationName:"key-marker" type:"string"` // Sets the maximum number of multipart uploads, from 1 to 1,000, to return // in the response body. 1,000 is the maximum number of uploads that can be // returned in a response. MaxUploads *int64 `location:"querystring" locationName:"max-uploads" type:"integer"` // Lists in-progress uploads only for those keys that begin with the specified // prefix. Prefix *string `location:"querystring" locationName:"prefix" type:"string"` // Together with key-marker, specifies the multipart upload after which listing // should begin. If key-marker is not specified, the upload-id-marker parameter // is ignored. UploadIdMarker *string `location:"querystring" locationName:"upload-id-marker" type:"string"` } // String returns the string representation func (s ListMultipartUploadsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListMultipartUploadsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListMultipartUploadsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListMultipartUploadsInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListMultipartUploadsOutput struct { _ struct{} `type:"structure"` // Name of the bucket to which the multipart upload was initiated. Bucket *string `type:"string"` CommonPrefixes []*CommonPrefix `type:"list" flattened:"true"` Delimiter *string `type:"string"` // Encoding type used by Amazon S3 to encode object keys in the response. EncodingType *string `type:"string" enum:"EncodingType"` // Indicates whether the returned list of multipart uploads is truncated. A // value of true indicates that the list was truncated. The list can be truncated // if the number of multipart uploads exceeds the limit allowed or specified // by max uploads. IsTruncated *bool `type:"boolean"` // The key at or after which the listing began. KeyMarker *string `type:"string"` // Maximum number of multipart uploads that could have been included in the // response. MaxUploads *int64 `type:"integer"` // When a list is truncated, this element specifies the value that should be // used for the key-marker request parameter in a subsequent request. NextKeyMarker *string `type:"string"` // When a list is truncated, this element specifies the value that should be // used for the upload-id-marker request parameter in a subsequent request. NextUploadIdMarker *string `type:"string"` // When a prefix is provided in the request, this field contains the specified // prefix. The result contains only keys starting with the specified prefix. Prefix *string `type:"string"` // Upload ID after which listing began. UploadIdMarker *string `type:"string"` Uploads []*MultipartUpload `locationName:"Upload" type:"list" flattened:"true"` } // String returns the string representation func (s ListMultipartUploadsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListMultipartUploadsOutput) GoString() string { return s.String() } type ListObjectVersionsInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // A delimiter is a character you use to group keys. Delimiter *string `location:"querystring" locationName:"delimiter" type:"string"` // Requests Amazon S3 to encode the object keys in the response and specifies // the encoding method to use. An object key may contain any Unicode character; // however, XML 1.0 parser cannot parse some characters, such as characters // with an ASCII value from 0 to 10. For characters that are not supported in // XML 1.0, you can add this parameter to request that Amazon S3 encode the // keys in the response. EncodingType *string `location:"querystring" locationName:"encoding-type" type:"string" enum:"EncodingType"` // Specifies the key to start with when listing objects in a bucket. KeyMarker *string `location:"querystring" locationName:"key-marker" type:"string"` // Sets the maximum number of keys returned in the response. The response might // contain fewer keys but will never contain more. MaxKeys *int64 `location:"querystring" locationName:"max-keys" type:"integer"` // Limits the response to keys that begin with the specified prefix. Prefix *string `location:"querystring" locationName:"prefix" type:"string"` // Specifies the object version you want to start listing from. VersionIdMarker *string `location:"querystring" locationName:"version-id-marker" type:"string"` } // String returns the string representation func (s ListObjectVersionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListObjectVersionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListObjectVersionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListObjectVersionsInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListObjectVersionsOutput struct { _ struct{} `type:"structure"` CommonPrefixes []*CommonPrefix `type:"list" flattened:"true"` DeleteMarkers []*DeleteMarkerEntry `locationName:"DeleteMarker" type:"list" flattened:"true"` Delimiter *string `type:"string"` // Encoding type used by Amazon S3 to encode object keys in the response. EncodingType *string `type:"string" enum:"EncodingType"` // A flag that indicates whether or not Amazon S3 returned all of the results // that satisfied the search criteria. If your results were truncated, you can // make a follow-up paginated request using the NextKeyMarker and NextVersionIdMarker // response parameters as a starting place in another request to return the // rest of the results. IsTruncated *bool `type:"boolean"` // Marks the last Key returned in a truncated response. KeyMarker *string `type:"string"` MaxKeys *int64 `type:"integer"` Name *string `type:"string"` // Use this value for the key marker request parameter in a subsequent request. NextKeyMarker *string `type:"string"` // Use this value for the next version id marker parameter in a subsequent request. NextVersionIdMarker *string `type:"string"` Prefix *string `type:"string"` VersionIdMarker *string `type:"string"` Versions []*ObjectVersion `locationName:"Version" type:"list" flattened:"true"` } // String returns the string representation func (s ListObjectVersionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListObjectVersionsOutput) GoString() string { return s.String() } type ListObjectsInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // A delimiter is a character you use to group keys. Delimiter *string `location:"querystring" locationName:"delimiter" type:"string"` // Requests Amazon S3 to encode the object keys in the response and specifies // the encoding method to use. An object key may contain any Unicode character; // however, XML 1.0 parser cannot parse some characters, such as characters // with an ASCII value from 0 to 10. For characters that are not supported in // XML 1.0, you can add this parameter to request that Amazon S3 encode the // keys in the response. EncodingType *string `location:"querystring" locationName:"encoding-type" type:"string" enum:"EncodingType"` // Specifies the key to start with when listing objects in a bucket. Marker *string `location:"querystring" locationName:"marker" type:"string"` // Sets the maximum number of keys returned in the response. The response might // contain fewer keys but will never contain more. MaxKeys *int64 `location:"querystring" locationName:"max-keys" type:"integer"` // Limits the response to keys that begin with the specified prefix. Prefix *string `location:"querystring" locationName:"prefix" type:"string"` // Confirms that the requester knows that she or he will be charged for the // list objects request. Bucket owners need not specify this parameter in their // requests. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` } // String returns the string representation func (s ListObjectsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListObjectsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListObjectsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListObjectsInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListObjectsOutput struct { _ struct{} `type:"structure"` CommonPrefixes []*CommonPrefix `type:"list" flattened:"true"` Contents []*Object `type:"list" flattened:"true"` Delimiter *string `type:"string"` // Encoding type used by Amazon S3 to encode object keys in the response. EncodingType *string `type:"string" enum:"EncodingType"` // A flag that indicates whether or not Amazon S3 returned all of the results // that satisfied the search criteria. IsTruncated *bool `type:"boolean"` Marker *string `type:"string"` MaxKeys *int64 `type:"integer"` Name *string `type:"string"` // When response is truncated (the IsTruncated element value in the response // is true), you can use the key name in this field as marker in the subsequent // request to get next set of objects. Amazon S3 lists objects in alphabetical // order Note: This element is returned only if you have delimiter request parameter // specified. If response does not include the NextMaker and it is truncated, // you can use the value of the last Key in the response as the marker in the // subsequent request to get the next set of object keys. NextMarker *string `type:"string"` Prefix *string `type:"string"` } // String returns the string representation func (s ListObjectsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListObjectsOutput) GoString() string { return s.String() } type ListObjectsV2Input struct { _ struct{} `type:"structure"` // Name of the bucket to list. // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // ContinuationToken indicates Amazon S3 that the list is being continued on // this bucket with a token. ContinuationToken is obfuscated and is not a real // key ContinuationToken *string `location:"querystring" locationName:"continuation-token" type:"string"` // A delimiter is a character you use to group keys. Delimiter *string `location:"querystring" locationName:"delimiter" type:"string"` // Encoding type used by Amazon S3 to encode object keys in the response. EncodingType *string `location:"querystring" locationName:"encoding-type" type:"string" enum:"EncodingType"` // The owner field is not present in listV2 by default, if you want to return // owner field with each key in the result then set the fetch owner field to // true FetchOwner *bool `location:"querystring" locationName:"fetch-owner" type:"boolean"` // Sets the maximum number of keys returned in the response. The response might // contain fewer keys but will never contain more. MaxKeys *int64 `location:"querystring" locationName:"max-keys" type:"integer"` // Limits the response to keys that begin with the specified prefix. Prefix *string `location:"querystring" locationName:"prefix" type:"string"` // Confirms that the requester knows that she or he will be charged for the // list objects request in V2 style. Bucket owners need not specify this parameter // in their requests. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // StartAfter is where you want Amazon S3 to start listing from. Amazon S3 starts // listing after this specified key. StartAfter can be any key in the bucket StartAfter *string `location:"querystring" locationName:"start-after" type:"string"` } // String returns the string representation func (s ListObjectsV2Input) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListObjectsV2Input) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListObjectsV2Input) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListObjectsV2Input"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListObjectsV2Output struct { _ struct{} `type:"structure"` // CommonPrefixes contains all (if there are any) keys between Prefix and the // next occurrence of the string specified by delimiter CommonPrefixes []*CommonPrefix `type:"list" flattened:"true"` // Metadata about each object returned. Contents []*Object `type:"list" flattened:"true"` // ContinuationToken indicates Amazon S3 that the list is being continued on // this bucket with a token. ContinuationToken is obfuscated and is not a real // key ContinuationToken *string `type:"string"` // A delimiter is a character you use to group keys. Delimiter *string `type:"string"` // Encoding type used by Amazon S3 to encode object keys in the response. EncodingType *string `type:"string" enum:"EncodingType"` // A flag that indicates whether or not Amazon S3 returned all of the results // that satisfied the search criteria. IsTruncated *bool `type:"boolean"` // KeyCount is the number of keys returned with this request. KeyCount will // always be less than equals to MaxKeys field. Say you ask for 50 keys, your // result will include less than equals 50 keys KeyCount *int64 `type:"integer"` // Sets the maximum number of keys returned in the response. The response might // contain fewer keys but will never contain more. MaxKeys *int64 `type:"integer"` // Name of the bucket to list. Name *string `type:"string"` // NextContinuationToken is sent when isTruncated is true which means there // are more keys in the bucket that can be listed. The next list requests to // Amazon S3 can be continued with this NextContinuationToken. NextContinuationToken // is obfuscated and is not a real key NextContinuationToken *string `type:"string"` // Limits the response to keys that begin with the specified prefix. Prefix *string `type:"string"` // StartAfter is where you want Amazon S3 to start listing from. Amazon S3 starts // listing after this specified key. StartAfter can be any key in the bucket StartAfter *string `type:"string"` } // String returns the string representation func (s ListObjectsV2Output) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListObjectsV2Output) GoString() string { return s.String() } type ListPartsInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Key is a required field Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` // Sets the maximum number of parts to return. MaxParts *int64 `location:"querystring" locationName:"max-parts" type:"integer"` // Specifies the part after which listing should begin. Only parts with higher // part numbers will be listed. PartNumberMarker *int64 `location:"querystring" locationName:"part-number-marker" type:"integer"` // Confirms that the requester knows that she or he will be charged for the // request. Bucket owners need not specify this parameter in their requests. // Documentation on downloading objects from requester pays buckets can be found // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // Upload ID identifying the multipart upload whose parts are being listed. // // UploadId is a required field UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"` } // String returns the string representation func (s ListPartsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPartsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListPartsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListPartsInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.UploadId == nil { invalidParams.Add(request.NewErrParamRequired("UploadId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListPartsOutput struct { _ struct{} `type:"structure"` // Date when multipart upload will become eligible for abort operation by lifecycle. AbortDate *time.Time `location:"header" locationName:"x-amz-abort-date" type:"timestamp" timestampFormat:"rfc822"` // Id of the lifecycle rule that makes a multipart upload eligible for abort // operation. AbortRuleId *string `location:"header" locationName:"x-amz-abort-rule-id" type:"string"` // Name of the bucket to which the multipart upload was initiated. Bucket *string `type:"string"` // Identifies who initiated the multipart upload. Initiator *Initiator `type:"structure"` // Indicates whether the returned list of parts is truncated. IsTruncated *bool `type:"boolean"` // Object key for which the multipart upload was initiated. Key *string `min:"1" type:"string"` // Maximum number of parts that were allowed in the response. MaxParts *int64 `type:"integer"` // When a list is truncated, this element specifies the last part in the list, // as well as the value to use for the part-number-marker request parameter // in a subsequent request. NextPartNumberMarker *int64 `type:"integer"` Owner *Owner `type:"structure"` // Part number after which listing begins. PartNumberMarker *int64 `type:"integer"` Parts []*Part `locationName:"Part" type:"list" flattened:"true"` // If present, indicates that the requester was successfully charged for the // request. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // The class of storage used to store the object. StorageClass *string `type:"string" enum:"StorageClass"` // Upload ID identifying the multipart upload whose parts are being listed. UploadId *string `type:"string"` } // String returns the string representation func (s ListPartsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPartsOutput) GoString() string { return s.String() } type LoggingEnabled struct { _ struct{} `type:"structure"` // Specifies the bucket where you want Amazon S3 to store server access logs. // You can have your logs delivered to any bucket that you own, including the // same bucket that is being logged. You can also configure multiple buckets // to deliver their logs to the same target bucket. In this case you should // choose a different TargetPrefix for each source bucket so that the delivered // log files can be distinguished by key. TargetBucket *string `type:"string"` TargetGrants []*TargetGrant `locationNameList:"Grant" type:"list"` // This element lets you specify a prefix for the keys that the log files will // be stored under. TargetPrefix *string `type:"string"` } // String returns the string representation func (s LoggingEnabled) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LoggingEnabled) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LoggingEnabled) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LoggingEnabled"} if s.TargetGrants != nil { for i, v := range s.TargetGrants { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TargetGrants", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type MultipartUpload struct { _ struct{} `type:"structure"` // Date and time at which the multipart upload was initiated. Initiated *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Identifies who initiated the multipart upload. Initiator *Initiator `type:"structure"` // Key of the object for which the multipart upload was initiated. Key *string `min:"1" type:"string"` Owner *Owner `type:"structure"` // The class of storage used to store the object. StorageClass *string `type:"string" enum:"StorageClass"` // Upload ID that identifies the multipart upload. UploadId *string `type:"string"` } // String returns the string representation func (s MultipartUpload) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MultipartUpload) GoString() string { return s.String() } // Specifies when noncurrent object versions expire. Upon expiration, Amazon // S3 permanently deletes the noncurrent object versions. You set this lifecycle // configuration action on a bucket that has versioning enabled (or suspended) // to request that Amazon S3 delete noncurrent object versions at a specific // period in the object's lifetime. type NoncurrentVersionExpiration struct { _ struct{} `type:"structure"` // Specifies the number of days an object is noncurrent before Amazon S3 can // perform the associated action. For information about the noncurrent days // calculations, see How Amazon S3 Calculates When an Object Became Noncurrent // (http://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html) NoncurrentDays *int64 `type:"integer"` } // String returns the string representation func (s NoncurrentVersionExpiration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NoncurrentVersionExpiration) GoString() string { return s.String() } // Container for the transition rule that describes when noncurrent objects // transition to the STANDARD_IA or GLACIER storage class. If your bucket is // versioning-enabled (or versioning is suspended), you can set this action // to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA // or GLACIER storage class at a specific period in the object's lifetime. type NoncurrentVersionTransition struct { _ struct{} `type:"structure"` // Specifies the number of days an object is noncurrent before Amazon S3 can // perform the associated action. For information about the noncurrent days // calculations, see How Amazon S3 Calculates When an Object Became Noncurrent // (http://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html) NoncurrentDays *int64 `type:"integer"` // The class of storage used to store the object. StorageClass *string `type:"string" enum:"TransitionStorageClass"` } // String returns the string representation func (s NoncurrentVersionTransition) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NoncurrentVersionTransition) GoString() string { return s.String() } // Container for specifying the notification configuration of the bucket. If // this element is empty, notifications are turned off on the bucket. type NotificationConfiguration struct { _ struct{} `type:"structure"` LambdaFunctionConfigurations []*LambdaFunctionConfiguration `locationName:"CloudFunctionConfiguration" type:"list" flattened:"true"` QueueConfigurations []*QueueConfiguration `locationName:"QueueConfiguration" type:"list" flattened:"true"` TopicConfigurations []*TopicConfiguration `locationName:"TopicConfiguration" type:"list" flattened:"true"` } // String returns the string representation func (s NotificationConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NotificationConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *NotificationConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "NotificationConfiguration"} if s.LambdaFunctionConfigurations != nil { for i, v := range s.LambdaFunctionConfigurations { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "LambdaFunctionConfigurations", i), err.(request.ErrInvalidParams)) } } } if s.QueueConfigurations != nil { for i, v := range s.QueueConfigurations { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "QueueConfigurations", i), err.(request.ErrInvalidParams)) } } } if s.TopicConfigurations != nil { for i, v := range s.TopicConfigurations { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TopicConfigurations", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type NotificationConfigurationDeprecated struct { _ struct{} `type:"structure"` CloudFunctionConfiguration *CloudFunctionConfiguration `type:"structure"` QueueConfiguration *QueueConfigurationDeprecated `type:"structure"` TopicConfiguration *TopicConfigurationDeprecated `type:"structure"` } // String returns the string representation func (s NotificationConfigurationDeprecated) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NotificationConfigurationDeprecated) GoString() string { return s.String() } // Container for object key name filtering rules. For information about key // name filtering, go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) type NotificationConfigurationFilter struct { _ struct{} `type:"structure"` // Container for object key name prefix and suffix filtering rules. Key *KeyFilter `locationName:"S3Key" type:"structure"` } // String returns the string representation func (s NotificationConfigurationFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NotificationConfigurationFilter) GoString() string { return s.String() } type Object struct { _ struct{} `type:"structure"` ETag *string `type:"string"` Key *string `min:"1" type:"string"` LastModified *time.Time `type:"timestamp" timestampFormat:"iso8601"` Owner *Owner `type:"structure"` Size *int64 `type:"integer"` // The class of storage used to store the object. StorageClass *string `type:"string" enum:"ObjectStorageClass"` } // String returns the string representation func (s Object) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Object) GoString() string { return s.String() } type ObjectIdentifier struct { _ struct{} `type:"structure"` // Key name of the object to delete. // // Key is a required field Key *string `min:"1" type:"string" required:"true"` // VersionId for the specific version of the object to delete. VersionId *string `type:"string"` } // String returns the string representation func (s ObjectIdentifier) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ObjectIdentifier) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ObjectIdentifier) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ObjectIdentifier"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ObjectVersion struct { _ struct{} `type:"structure"` ETag *string `type:"string"` // Specifies whether the object is (true) or is not (false) the latest version // of an object. IsLatest *bool `type:"boolean"` // The object key. Key *string `min:"1" type:"string"` // Date and time the object was last modified. LastModified *time.Time `type:"timestamp" timestampFormat:"iso8601"` Owner *Owner `type:"structure"` // Size in bytes of the object. Size *int64 `type:"integer"` // The class of storage used to store the object. StorageClass *string `type:"string" enum:"ObjectVersionStorageClass"` // Version ID of an object. VersionId *string `type:"string"` } // String returns the string representation func (s ObjectVersion) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ObjectVersion) GoString() string { return s.String() } type Owner struct { _ struct{} `type:"structure"` DisplayName *string `type:"string"` ID *string `type:"string"` } // String returns the string representation func (s Owner) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Owner) GoString() string { return s.String() } type Part struct { _ struct{} `type:"structure"` // Entity tag returned when the part was uploaded. ETag *string `type:"string"` // Date and time at which the part was uploaded. LastModified *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Part number identifying the part. This is a positive integer between 1 and // 10,000. PartNumber *int64 `type:"integer"` // Size of the uploaded part data. Size *int64 `type:"integer"` } // String returns the string representation func (s Part) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Part) GoString() string { return s.String() } type PutBucketAccelerateConfigurationInput struct { _ struct{} `type:"structure" payload:"AccelerateConfiguration"` // Specifies the Accelerate Configuration you want to set for the bucket. // // AccelerateConfiguration is a required field AccelerateConfiguration *AccelerateConfiguration `locationName:"AccelerateConfiguration" type:"structure" required:"true"` // Name of the bucket for which the accelerate configuration is set. // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` } // String returns the string representation func (s PutBucketAccelerateConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketAccelerateConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketAccelerateConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketAccelerateConfigurationInput"} if s.AccelerateConfiguration == nil { invalidParams.Add(request.NewErrParamRequired("AccelerateConfiguration")) } if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutBucketAccelerateConfigurationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutBucketAccelerateConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketAccelerateConfigurationOutput) GoString() string { return s.String() } type PutBucketAclInput struct { _ struct{} `type:"structure" payload:"AccessControlPolicy"` // The canned ACL to apply to the bucket. ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"BucketCannedACL"` AccessControlPolicy *AccessControlPolicy `locationName:"AccessControlPolicy" type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Allows grantee the read, write, read ACP, and write ACP permissions on the // bucket. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"` // Allows grantee to list the objects in the bucket. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"` // Allows grantee to read the bucket ACL. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"` // Allows grantee to create, overwrite, and delete any object in the bucket. GrantWrite *string `location:"header" locationName:"x-amz-grant-write" type:"string"` // Allows grantee to write the ACL for the applicable bucket. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"` } // String returns the string representation func (s PutBucketAclInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketAclInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketAclInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketAclInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.AccessControlPolicy != nil { if err := s.AccessControlPolicy.Validate(); err != nil { invalidParams.AddNested("AccessControlPolicy", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutBucketAclOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutBucketAclOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketAclOutput) GoString() string { return s.String() } type PutBucketCorsInput struct { _ struct{} `type:"structure" payload:"CORSConfiguration"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // CORSConfiguration is a required field CORSConfiguration *CORSConfiguration `locationName:"CORSConfiguration" type:"structure" required:"true"` } // String returns the string representation func (s PutBucketCorsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketCorsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketCorsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketCorsInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.CORSConfiguration == nil { invalidParams.Add(request.NewErrParamRequired("CORSConfiguration")) } if s.CORSConfiguration != nil { if err := s.CORSConfiguration.Validate(); err != nil { invalidParams.AddNested("CORSConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutBucketCorsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutBucketCorsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketCorsOutput) GoString() string { return s.String() } type PutBucketLifecycleConfigurationInput struct { _ struct{} `type:"structure" payload:"LifecycleConfiguration"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` LifecycleConfiguration *BucketLifecycleConfiguration `locationName:"LifecycleConfiguration" type:"structure"` } // String returns the string representation func (s PutBucketLifecycleConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketLifecycleConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketLifecycleConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketLifecycleConfigurationInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.LifecycleConfiguration != nil { if err := s.LifecycleConfiguration.Validate(); err != nil { invalidParams.AddNested("LifecycleConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutBucketLifecycleConfigurationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutBucketLifecycleConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketLifecycleConfigurationOutput) GoString() string { return s.String() } type PutBucketLifecycleInput struct { _ struct{} `type:"structure" payload:"LifecycleConfiguration"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` LifecycleConfiguration *LifecycleConfiguration `locationName:"LifecycleConfiguration" type:"structure"` } // String returns the string representation func (s PutBucketLifecycleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketLifecycleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketLifecycleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketLifecycleInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.LifecycleConfiguration != nil { if err := s.LifecycleConfiguration.Validate(); err != nil { invalidParams.AddNested("LifecycleConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutBucketLifecycleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutBucketLifecycleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketLifecycleOutput) GoString() string { return s.String() } type PutBucketLoggingInput struct { _ struct{} `type:"structure" payload:"BucketLoggingStatus"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // BucketLoggingStatus is a required field BucketLoggingStatus *BucketLoggingStatus `locationName:"BucketLoggingStatus" type:"structure" required:"true"` } // String returns the string representation func (s PutBucketLoggingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketLoggingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketLoggingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketLoggingInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.BucketLoggingStatus == nil { invalidParams.Add(request.NewErrParamRequired("BucketLoggingStatus")) } if s.BucketLoggingStatus != nil { if err := s.BucketLoggingStatus.Validate(); err != nil { invalidParams.AddNested("BucketLoggingStatus", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutBucketLoggingOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutBucketLoggingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketLoggingOutput) GoString() string { return s.String() } type PutBucketNotificationConfigurationInput struct { _ struct{} `type:"structure" payload:"NotificationConfiguration"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Container for specifying the notification configuration of the bucket. If // this element is empty, notifications are turned off on the bucket. // // NotificationConfiguration is a required field NotificationConfiguration *NotificationConfiguration `locationName:"NotificationConfiguration" type:"structure" required:"true"` } // String returns the string representation func (s PutBucketNotificationConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketNotificationConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketNotificationConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketNotificationConfigurationInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.NotificationConfiguration == nil { invalidParams.Add(request.NewErrParamRequired("NotificationConfiguration")) } if s.NotificationConfiguration != nil { if err := s.NotificationConfiguration.Validate(); err != nil { invalidParams.AddNested("NotificationConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutBucketNotificationConfigurationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutBucketNotificationConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketNotificationConfigurationOutput) GoString() string { return s.String() } type PutBucketNotificationInput struct { _ struct{} `type:"structure" payload:"NotificationConfiguration"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // NotificationConfiguration is a required field NotificationConfiguration *NotificationConfigurationDeprecated `locationName:"NotificationConfiguration" type:"structure" required:"true"` } // String returns the string representation func (s PutBucketNotificationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketNotificationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketNotificationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketNotificationInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.NotificationConfiguration == nil { invalidParams.Add(request.NewErrParamRequired("NotificationConfiguration")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutBucketNotificationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutBucketNotificationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketNotificationOutput) GoString() string { return s.String() } type PutBucketPolicyInput struct { _ struct{} `type:"structure" payload:"Policy"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // The bucket policy as a JSON document. // // Policy is a required field Policy *string `type:"string" required:"true"` } // String returns the string representation func (s PutBucketPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketPolicyInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Policy == nil { invalidParams.Add(request.NewErrParamRequired("Policy")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutBucketPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutBucketPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketPolicyOutput) GoString() string { return s.String() } type PutBucketReplicationInput struct { _ struct{} `type:"structure" payload:"ReplicationConfiguration"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Container for replication rules. You can add as many as 1,000 rules. Total // replication configuration size can be up to 2 MB. // // ReplicationConfiguration is a required field ReplicationConfiguration *ReplicationConfiguration `locationName:"ReplicationConfiguration" type:"structure" required:"true"` } // String returns the string representation func (s PutBucketReplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketReplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketReplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketReplicationInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.ReplicationConfiguration == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationConfiguration")) } if s.ReplicationConfiguration != nil { if err := s.ReplicationConfiguration.Validate(); err != nil { invalidParams.AddNested("ReplicationConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutBucketReplicationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutBucketReplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketReplicationOutput) GoString() string { return s.String() } type PutBucketRequestPaymentInput struct { _ struct{} `type:"structure" payload:"RequestPaymentConfiguration"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // RequestPaymentConfiguration is a required field RequestPaymentConfiguration *RequestPaymentConfiguration `locationName:"RequestPaymentConfiguration" type:"structure" required:"true"` } // String returns the string representation func (s PutBucketRequestPaymentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketRequestPaymentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketRequestPaymentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketRequestPaymentInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.RequestPaymentConfiguration == nil { invalidParams.Add(request.NewErrParamRequired("RequestPaymentConfiguration")) } if s.RequestPaymentConfiguration != nil { if err := s.RequestPaymentConfiguration.Validate(); err != nil { invalidParams.AddNested("RequestPaymentConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutBucketRequestPaymentOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutBucketRequestPaymentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketRequestPaymentOutput) GoString() string { return s.String() } type PutBucketTaggingInput struct { _ struct{} `type:"structure" payload:"Tagging"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Tagging is a required field Tagging *Tagging `locationName:"Tagging" type:"structure" required:"true"` } // String returns the string representation func (s PutBucketTaggingInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketTaggingInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketTaggingInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketTaggingInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Tagging == nil { invalidParams.Add(request.NewErrParamRequired("Tagging")) } if s.Tagging != nil { if err := s.Tagging.Validate(); err != nil { invalidParams.AddNested("Tagging", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutBucketTaggingOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutBucketTaggingOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketTaggingOutput) GoString() string { return s.String() } type PutBucketVersioningInput struct { _ struct{} `type:"structure" payload:"VersioningConfiguration"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // The concatenation of the authentication device's serial number, a space, // and the value that is displayed on your authentication device. MFA *string `location:"header" locationName:"x-amz-mfa" type:"string"` // VersioningConfiguration is a required field VersioningConfiguration *VersioningConfiguration `locationName:"VersioningConfiguration" type:"structure" required:"true"` } // String returns the string representation func (s PutBucketVersioningInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketVersioningInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketVersioningInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketVersioningInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.VersioningConfiguration == nil { invalidParams.Add(request.NewErrParamRequired("VersioningConfiguration")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutBucketVersioningOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutBucketVersioningOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketVersioningOutput) GoString() string { return s.String() } type PutBucketWebsiteInput struct { _ struct{} `type:"structure" payload:"WebsiteConfiguration"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // WebsiteConfiguration is a required field WebsiteConfiguration *WebsiteConfiguration `locationName:"WebsiteConfiguration" type:"structure" required:"true"` } // String returns the string representation func (s PutBucketWebsiteInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketWebsiteInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutBucketWebsiteInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutBucketWebsiteInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.WebsiteConfiguration == nil { invalidParams.Add(request.NewErrParamRequired("WebsiteConfiguration")) } if s.WebsiteConfiguration != nil { if err := s.WebsiteConfiguration.Validate(); err != nil { invalidParams.AddNested("WebsiteConfiguration", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutBucketWebsiteOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutBucketWebsiteOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutBucketWebsiteOutput) GoString() string { return s.String() } type PutObjectAclInput struct { _ struct{} `type:"structure" payload:"AccessControlPolicy"` // The canned ACL to apply to the object. ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"` AccessControlPolicy *AccessControlPolicy `locationName:"AccessControlPolicy" type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Allows grantee the read, write, read ACP, and write ACP permissions on the // bucket. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"` // Allows grantee to list the objects in the bucket. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"` // Allows grantee to read the bucket ACL. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"` // Allows grantee to create, overwrite, and delete any object in the bucket. GrantWrite *string `location:"header" locationName:"x-amz-grant-write" type:"string"` // Allows grantee to write the ACL for the applicable bucket. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"` // Key is a required field Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` // Confirms that the requester knows that she or he will be charged for the // request. Bucket owners need not specify this parameter in their requests. // Documentation on downloading objects from requester pays buckets can be found // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // VersionId used to reference a specific version of the object. VersionId *string `location:"querystring" locationName:"versionId" type:"string"` } // String returns the string representation func (s PutObjectAclInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutObjectAclInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutObjectAclInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutObjectAclInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.AccessControlPolicy != nil { if err := s.AccessControlPolicy.Validate(); err != nil { invalidParams.AddNested("AccessControlPolicy", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutObjectAclOutput struct { _ struct{} `type:"structure"` // If present, indicates that the requester was successfully charged for the // request. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` } // String returns the string representation func (s PutObjectAclOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutObjectAclOutput) GoString() string { return s.String() } type PutObjectInput struct { _ struct{} `type:"structure" payload:"Body"` // The canned ACL to apply to the object. ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"` // Object data. Body io.ReadSeeker `type:"blob"` // Name of the bucket to which the PUT operation was initiated. // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Specifies caching behavior along the request/reply chain. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"` // Specifies presentational information for the object. ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"` // Specifies what content encodings have been applied to the object and thus // what decoding mechanisms must be applied to obtain the media-type referenced // by the Content-Type header field. ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"` // The language the content is in. ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"` // Size of the body in bytes. This parameter is useful when the size of the // body cannot be determined automatically. ContentLength *int64 `location:"header" locationName:"Content-Length" type:"long"` // A standard MIME type describing the format of the object data. ContentType *string `location:"header" locationName:"Content-Type" type:"string"` // The date and time at which the object is no longer cacheable. Expires *time.Time `location:"header" locationName:"Expires" type:"timestamp" timestampFormat:"rfc822"` // Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"` // Allows grantee to read the object data and its metadata. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"` // Allows grantee to read the object ACL. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"` // Allows grantee to write the ACL for the applicable object. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"` // Object key for which the PUT operation was initiated. // // Key is a required field Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` // A map of metadata to store with the object in S3. Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"` // Confirms that the requester knows that she or he will be charged for the // request. Bucket owners need not specify this parameter in their requests. // Documentation on downloading objects from requester pays buckets can be found // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // Specifies the algorithm to use to when encrypting the object (e.g., AES256). SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting // data. This value is used to store the object and then it is discarded; Amazon // does not store the encryption key. The key must be appropriate for use with // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm // header. SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"` // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure the encryption // key was transmitted without error. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // Specifies the AWS KMS key ID to use for object encryption. All GET and PUT // requests for an object protected by AWS KMS will fail if not made via SSL // or using SigV4. Documentation on configuring any of the officially supported // AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` // The Server-side encryption algorithm used when storing this object in S3 // (e.g., AES256, aws:kms). ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` // The type of storage to use for the object. Defaults to 'STANDARD'. StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"` // If the bucket is configured as a website, redirects requests for this object // to another object in the same bucket or to an external URL. Amazon S3 stores // the value of this header in the object metadata. WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"` } // String returns the string representation func (s PutObjectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutObjectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutObjectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutObjectInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutObjectOutput struct { _ struct{} `type:"structure"` // Entity tag for the uploaded object. ETag *string `location:"header" locationName:"ETag" type:"string"` // If the object expiration is configured, this will contain the expiration // date (expiry-date) and rule ID (rule-id). The value of rule-id is URL encoded. Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"` // If present, indicates that the requester was successfully charged for the // request. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // If server-side encryption with a customer-provided encryption key was requested, // the response will include this header confirming the encryption algorithm // used. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // If server-side encryption with a customer-provided encryption key was requested, // the response will include this header to provide round trip message integrity // verification of the customer-provided encryption key. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // If present, specifies the ID of the AWS Key Management Service (KMS) master // encryption key that was used for the object. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` // The Server-side encryption algorithm used when storing this object in S3 // (e.g., AES256, aws:kms). ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` // Version of the object. VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"` } // String returns the string representation func (s PutObjectOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutObjectOutput) GoString() string { return s.String() } // Container for specifying an configuration when you want Amazon S3 to publish // events to an Amazon Simple Queue Service (Amazon SQS) queue. type QueueConfiguration struct { _ struct{} `type:"structure"` // Events is a required field Events []*string `locationName:"Event" type:"list" flattened:"true" required:"true"` // Container for object key name filtering rules. For information about key // name filtering, go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) Filter *NotificationConfigurationFilter `type:"structure"` // Optional unique identifier for configurations in a notification configuration. // If you don't provide one, Amazon S3 will assign an ID. Id *string `type:"string"` // Amazon SQS queue ARN to which Amazon S3 will publish a message when it detects // events of specified type. // // QueueArn is a required field QueueArn *string `locationName:"Queue" type:"string" required:"true"` } // String returns the string representation func (s QueueConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s QueueConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *QueueConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "QueueConfiguration"} if s.Events == nil { invalidParams.Add(request.NewErrParamRequired("Events")) } if s.QueueArn == nil { invalidParams.Add(request.NewErrParamRequired("QueueArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type QueueConfigurationDeprecated struct { _ struct{} `type:"structure"` // Bucket event for which to send notifications. Event *string `deprecated:"true" type:"string" enum:"Event"` Events []*string `locationName:"Event" type:"list" flattened:"true"` // Optional unique identifier for configurations in a notification configuration. // If you don't provide one, Amazon S3 will assign an ID. Id *string `type:"string"` Queue *string `type:"string"` } // String returns the string representation func (s QueueConfigurationDeprecated) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s QueueConfigurationDeprecated) GoString() string { return s.String() } type Redirect struct { _ struct{} `type:"structure"` // The host name to use in the redirect request. HostName *string `type:"string"` // The HTTP redirect code to use on the response. Not required if one of the // siblings is present. HttpRedirectCode *string `type:"string"` // Protocol to use (http, https) when redirecting requests. The default is the // protocol that is used in the original request. Protocol *string `type:"string" enum:"Protocol"` // The object key prefix to use in the redirect request. For example, to redirect // requests for all pages with prefix docs/ (objects in the docs/ folder) to // documents/, you can set a condition block with KeyPrefixEquals set to docs/ // and in the Redirect set ReplaceKeyPrefixWith to /documents. Not required // if one of the siblings is present. Can be present only if ReplaceKeyWith // is not provided. ReplaceKeyPrefixWith *string `type:"string"` // The specific object key to use in the redirect request. For example, redirect // request to error.html. Not required if one of the sibling is present. Can // be present only if ReplaceKeyPrefixWith is not provided. ReplaceKeyWith *string `type:"string"` } // String returns the string representation func (s Redirect) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Redirect) GoString() string { return s.String() } type RedirectAllRequestsTo struct { _ struct{} `type:"structure"` // Name of the host where requests will be redirected. // // HostName is a required field HostName *string `type:"string" required:"true"` // Protocol to use (http, https) when redirecting requests. The default is the // protocol that is used in the original request. Protocol *string `type:"string" enum:"Protocol"` } // String returns the string representation func (s RedirectAllRequestsTo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RedirectAllRequestsTo) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RedirectAllRequestsTo) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RedirectAllRequestsTo"} if s.HostName == nil { invalidParams.Add(request.NewErrParamRequired("HostName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for replication rules. You can add as many as 1,000 rules. Total // replication configuration size can be up to 2 MB. type ReplicationConfiguration struct { _ struct{} `type:"structure"` // Amazon Resource Name (ARN) of an IAM role for Amazon S3 to assume when replicating // the objects. // // Role is a required field Role *string `type:"string" required:"true"` // Container for information about a particular replication rule. Replication // configuration must have at least one rule and can contain up to 1,000 rules. // // Rules is a required field Rules []*ReplicationRule `locationName:"Rule" type:"list" flattened:"true" required:"true"` } // String returns the string representation func (s ReplicationConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplicationConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReplicationConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReplicationConfiguration"} if s.Role == nil { invalidParams.Add(request.NewErrParamRequired("Role")) } if s.Rules == nil { invalidParams.Add(request.NewErrParamRequired("Rules")) } if s.Rules != nil { for i, v := range s.Rules { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ReplicationRule struct { _ struct{} `type:"structure"` // Destination is a required field Destination *Destination `type:"structure" required:"true"` // Unique identifier for the rule. The value cannot be longer than 255 characters. ID *string `type:"string"` // Object keyname prefix identifying one or more objects to which the rule applies. // Maximum prefix length can be up to 1,024 characters. Overlapping prefixes // are not supported. // // Prefix is a required field Prefix *string `type:"string" required:"true"` // The rule is ignored if status is not Enabled. // // Status is a required field Status *string `type:"string" required:"true" enum:"ReplicationRuleStatus"` } // String returns the string representation func (s ReplicationRule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplicationRule) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReplicationRule) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReplicationRule"} if s.Destination == nil { invalidParams.Add(request.NewErrParamRequired("Destination")) } if s.Prefix == nil { invalidParams.Add(request.NewErrParamRequired("Prefix")) } if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if s.Destination != nil { if err := s.Destination.Validate(); err != nil { invalidParams.AddNested("Destination", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type RequestPaymentConfiguration struct { _ struct{} `type:"structure"` // Specifies who pays for the download and request fees. // // Payer is a required field Payer *string `type:"string" required:"true" enum:"Payer"` } // String returns the string representation func (s RequestPaymentConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestPaymentConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RequestPaymentConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RequestPaymentConfiguration"} if s.Payer == nil { invalidParams.Add(request.NewErrParamRequired("Payer")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RestoreObjectInput struct { _ struct{} `type:"structure" payload:"RestoreRequest"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Key is a required field Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` // Confirms that the requester knows that she or he will be charged for the // request. Bucket owners need not specify this parameter in their requests. // Documentation on downloading objects from requester pays buckets can be found // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` RestoreRequest *RestoreRequest `locationName:"RestoreRequest" type:"structure"` VersionId *string `location:"querystring" locationName:"versionId" type:"string"` } // String returns the string representation func (s RestoreObjectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreObjectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RestoreObjectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RestoreObjectInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.RestoreRequest != nil { if err := s.RestoreRequest.Validate(); err != nil { invalidParams.AddNested("RestoreRequest", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type RestoreObjectOutput struct { _ struct{} `type:"structure"` // If present, indicates that the requester was successfully charged for the // request. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` } // String returns the string representation func (s RestoreObjectOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreObjectOutput) GoString() string { return s.String() } type RestoreRequest struct { _ struct{} `type:"structure"` // Lifetime of the active copy in days // // Days is a required field Days *int64 `type:"integer" required:"true"` } // String returns the string representation func (s RestoreRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RestoreRequest) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RestoreRequest) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RestoreRequest"} if s.Days == nil { invalidParams.Add(request.NewErrParamRequired("Days")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RoutingRule struct { _ struct{} `type:"structure"` // A container for describing a condition that must be met for the specified // redirect to apply. For example, 1. If request is for pages in the /docs folder, // redirect to the /documents folder. 2. If request results in HTTP error 4xx, // redirect request to another host where you might process the error. Condition *Condition `type:"structure"` // Container for redirect information. You can redirect requests to another // host, to another page, or with another protocol. In the event of an error, // you can can specify a different error code to return. // // Redirect is a required field Redirect *Redirect `type:"structure" required:"true"` } // String returns the string representation func (s RoutingRule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RoutingRule) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RoutingRule) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RoutingRule"} if s.Redirect == nil { invalidParams.Add(request.NewErrParamRequired("Redirect")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type Rule struct { _ struct{} `type:"structure"` // Specifies the days since the initiation of an Incomplete Multipart Upload // that Lifecycle will wait before permanently removing all parts of the upload. AbortIncompleteMultipartUpload *AbortIncompleteMultipartUpload `type:"structure"` Expiration *LifecycleExpiration `type:"structure"` // Unique identifier for the rule. The value cannot be longer than 255 characters. ID *string `type:"string"` // Specifies when noncurrent object versions expire. Upon expiration, Amazon // S3 permanently deletes the noncurrent object versions. You set this lifecycle // configuration action on a bucket that has versioning enabled (or suspended) // to request that Amazon S3 delete noncurrent object versions at a specific // period in the object's lifetime. NoncurrentVersionExpiration *NoncurrentVersionExpiration `type:"structure"` // Container for the transition rule that describes when noncurrent objects // transition to the STANDARD_IA or GLACIER storage class. If your bucket is // versioning-enabled (or versioning is suspended), you can set this action // to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA // or GLACIER storage class at a specific period in the object's lifetime. NoncurrentVersionTransition *NoncurrentVersionTransition `type:"structure"` // Prefix identifying one or more objects to which the rule applies. // // Prefix is a required field Prefix *string `type:"string" required:"true"` // If 'Enabled', the rule is currently being applied. If 'Disabled', the rule // is not currently being applied. // // Status is a required field Status *string `type:"string" required:"true" enum:"ExpirationStatus"` Transition *Transition `type:"structure"` } // String returns the string representation func (s Rule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Rule) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Rule) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Rule"} if s.Prefix == nil { invalidParams.Add(request.NewErrParamRequired("Prefix")) } if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type Tag struct { _ struct{} `type:"structure"` // Name of the tag. // // Key is a required field Key *string `min:"1" type:"string" required:"true"` // Value of the tag. // // Value is a required field Value *string `type:"string" required:"true"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type Tagging struct { _ struct{} `type:"structure"` // TagSet is a required field TagSet []*Tag `locationNameList:"Tag" type:"list" required:"true"` } // String returns the string representation func (s Tagging) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tagging) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tagging) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tagging"} if s.TagSet == nil { invalidParams.Add(request.NewErrParamRequired("TagSet")) } if s.TagSet != nil { for i, v := range s.TagSet { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TagSet", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type TargetGrant struct { _ struct{} `type:"structure"` Grantee *Grantee `type:"structure"` // Logging permissions assigned to the Grantee for the bucket. Permission *string `type:"string" enum:"BucketLogsPermission"` } // String returns the string representation func (s TargetGrant) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TargetGrant) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TargetGrant) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TargetGrant"} if s.Grantee != nil { if err := s.Grantee.Validate(); err != nil { invalidParams.AddNested("Grantee", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Container for specifying the configuration when you want Amazon S3 to publish // events to an Amazon Simple Notification Service (Amazon SNS) topic. type TopicConfiguration struct { _ struct{} `type:"structure"` // Events is a required field Events []*string `locationName:"Event" type:"list" flattened:"true" required:"true"` // Container for object key name filtering rules. For information about key // name filtering, go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) Filter *NotificationConfigurationFilter `type:"structure"` // Optional unique identifier for configurations in a notification configuration. // If you don't provide one, Amazon S3 will assign an ID. Id *string `type:"string"` // Amazon SNS topic ARN to which Amazon S3 will publish a message when it detects // events of specified type. // // TopicArn is a required field TopicArn *string `locationName:"Topic" type:"string" required:"true"` } // String returns the string representation func (s TopicConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TopicConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TopicConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TopicConfiguration"} if s.Events == nil { invalidParams.Add(request.NewErrParamRequired("Events")) } if s.TopicArn == nil { invalidParams.Add(request.NewErrParamRequired("TopicArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type TopicConfigurationDeprecated struct { _ struct{} `type:"structure"` // Bucket event for which to send notifications. Event *string `deprecated:"true" type:"string" enum:"Event"` Events []*string `locationName:"Event" type:"list" flattened:"true"` // Optional unique identifier for configurations in a notification configuration. // If you don't provide one, Amazon S3 will assign an ID. Id *string `type:"string"` // Amazon SNS topic to which Amazon S3 will publish a message to report the // specified events for the bucket. Topic *string `type:"string"` } // String returns the string representation func (s TopicConfigurationDeprecated) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TopicConfigurationDeprecated) GoString() string { return s.String() } type Transition struct { _ struct{} `type:"structure"` // Indicates at what date the object is to be moved or deleted. Should be in // GMT ISO 8601 Format. Date *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Indicates the lifetime, in days, of the objects that are subject to the rule. // The value must be a non-zero positive integer. Days *int64 `type:"integer"` // The class of storage used to store the object. StorageClass *string `type:"string" enum:"TransitionStorageClass"` } // String returns the string representation func (s Transition) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Transition) GoString() string { return s.String() } type UploadPartCopyInput struct { _ struct{} `type:"structure"` // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // The name of the source bucket and key name of the source object, separated // by a slash (/). Must be URL-encoded. // // CopySource is a required field CopySource *string `location:"header" locationName:"x-amz-copy-source" type:"string" required:"true"` // Copies the object if its entity tag (ETag) matches the specified tag. CopySourceIfMatch *string `location:"header" locationName:"x-amz-copy-source-if-match" type:"string"` // Copies the object if it has been modified since the specified time. CopySourceIfModifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-modified-since" type:"timestamp" timestampFormat:"rfc822"` // Copies the object if its entity tag (ETag) is different than the specified // ETag. CopySourceIfNoneMatch *string `location:"header" locationName:"x-amz-copy-source-if-none-match" type:"string"` // Copies the object if it hasn't been modified since the specified time. CopySourceIfUnmodifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-unmodified-since" type:"timestamp" timestampFormat:"rfc822"` // The range of bytes to copy from the source object. The range value must use // the form bytes=first-last, where the first and last are the zero-based byte // offsets to copy. For example, bytes=0-9 indicates that you want to copy the // first ten bytes of the source. You can copy a range only if the source object // is greater than 5 GB. CopySourceRange *string `location:"header" locationName:"x-amz-copy-source-range" type:"string"` // Specifies the algorithm to use when decrypting the source object (e.g., AES256). CopySourceSSECustomerAlgorithm *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use to decrypt // the source object. The encryption key provided in this header must be one // that was used when the source object was created. CopySourceSSECustomerKey *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key" type:"string"` // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure the encryption // key was transmitted without error. CopySourceSSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key-MD5" type:"string"` // Key is a required field Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` // Part number of part being copied. This is a positive integer between 1 and // 10,000. // // PartNumber is a required field PartNumber *int64 `location:"querystring" locationName:"partNumber" type:"integer" required:"true"` // Confirms that the requester knows that she or he will be charged for the // request. Bucket owners need not specify this parameter in their requests. // Documentation on downloading objects from requester pays buckets can be found // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // Specifies the algorithm to use to when encrypting the object (e.g., AES256). SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting // data. This value is used to store the object and then it is discarded; Amazon // does not store the encryption key. The key must be appropriate for use with // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm // header. This must be the same encryption key specified in the initiate multipart // upload request. SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"` // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure the encryption // key was transmitted without error. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // Upload ID identifying the multipart upload whose part is being copied. // // UploadId is a required field UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"` } // String returns the string representation func (s UploadPartCopyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UploadPartCopyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UploadPartCopyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UploadPartCopyInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.CopySource == nil { invalidParams.Add(request.NewErrParamRequired("CopySource")) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.PartNumber == nil { invalidParams.Add(request.NewErrParamRequired("PartNumber")) } if s.UploadId == nil { invalidParams.Add(request.NewErrParamRequired("UploadId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UploadPartCopyOutput struct { _ struct{} `type:"structure" payload:"CopyPartResult"` CopyPartResult *CopyPartResult `type:"structure"` // The version of the source object that was copied, if you have enabled versioning // on the source bucket. CopySourceVersionId *string `location:"header" locationName:"x-amz-copy-source-version-id" type:"string"` // If present, indicates that the requester was successfully charged for the // request. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // If server-side encryption with a customer-provided encryption key was requested, // the response will include this header confirming the encryption algorithm // used. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // If server-side encryption with a customer-provided encryption key was requested, // the response will include this header to provide round trip message integrity // verification of the customer-provided encryption key. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // If present, specifies the ID of the AWS Key Management Service (KMS) master // encryption key that was used for the object. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` // The Server-side encryption algorithm used when storing this object in S3 // (e.g., AES256, aws:kms). ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` } // String returns the string representation func (s UploadPartCopyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UploadPartCopyOutput) GoString() string { return s.String() } type UploadPartInput struct { _ struct{} `type:"structure" payload:"Body"` // Object data. Body io.ReadSeeker `type:"blob"` // Name of the bucket to which the multipart upload was initiated. // // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Size of the body in bytes. This parameter is useful when the size of the // body cannot be determined automatically. ContentLength *int64 `location:"header" locationName:"Content-Length" type:"long"` // Object key for which the multipart upload was initiated. // // Key is a required field Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"` // Part number of part being uploaded. This is a positive integer between 1 // and 10,000. // // PartNumber is a required field PartNumber *int64 `location:"querystring" locationName:"partNumber" type:"integer" required:"true"` // Confirms that the requester knows that she or he will be charged for the // request. Bucket owners need not specify this parameter in their requests. // Documentation on downloading objects from requester pays buckets can be found // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"` // Specifies the algorithm to use to when encrypting the object (e.g., AES256). SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting // data. This value is used to store the object and then it is discarded; Amazon // does not store the encryption key. The key must be appropriate for use with // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm // header. This must be the same encryption key specified in the initiate multipart // upload request. SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"` // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure the encryption // key was transmitted without error. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // Upload ID identifying the multipart upload whose part is being uploaded. // // UploadId is a required field UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"` } // String returns the string representation func (s UploadPartInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UploadPartInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UploadPartInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UploadPartInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.PartNumber == nil { invalidParams.Add(request.NewErrParamRequired("PartNumber")) } if s.UploadId == nil { invalidParams.Add(request.NewErrParamRequired("UploadId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UploadPartOutput struct { _ struct{} `type:"structure"` // Entity tag for the uploaded object. ETag *string `location:"header" locationName:"ETag" type:"string"` // If present, indicates that the requester was successfully charged for the // request. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"` // If server-side encryption with a customer-provided encryption key was requested, // the response will include this header confirming the encryption algorithm // used. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // If server-side encryption with a customer-provided encryption key was requested, // the response will include this header to provide round trip message integrity // verification of the customer-provided encryption key. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // If present, specifies the ID of the AWS Key Management Service (KMS) master // encryption key that was used for the object. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` // The Server-side encryption algorithm used when storing this object in S3 // (e.g., AES256, aws:kms). ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"` } // String returns the string representation func (s UploadPartOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UploadPartOutput) GoString() string { return s.String() } type VersioningConfiguration struct { _ struct{} `type:"structure"` // Specifies whether MFA delete is enabled in the bucket versioning configuration. // This element is only returned if the bucket has been configured with MFA // delete. If the bucket has never been so configured, this element is not returned. MFADelete *string `locationName:"MfaDelete" type:"string" enum:"MFADelete"` // The versioning state of the bucket. Status *string `type:"string" enum:"BucketVersioningStatus"` } // String returns the string representation func (s VersioningConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VersioningConfiguration) GoString() string { return s.String() } type WebsiteConfiguration struct { _ struct{} `type:"structure"` ErrorDocument *ErrorDocument `type:"structure"` IndexDocument *IndexDocument `type:"structure"` RedirectAllRequestsTo *RedirectAllRequestsTo `type:"structure"` RoutingRules []*RoutingRule `locationNameList:"RoutingRule" type:"list"` } // String returns the string representation func (s WebsiteConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WebsiteConfiguration) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *WebsiteConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "WebsiteConfiguration"} if s.ErrorDocument != nil { if err := s.ErrorDocument.Validate(); err != nil { invalidParams.AddNested("ErrorDocument", err.(request.ErrInvalidParams)) } } if s.IndexDocument != nil { if err := s.IndexDocument.Validate(); err != nil { invalidParams.AddNested("IndexDocument", err.(request.ErrInvalidParams)) } } if s.RedirectAllRequestsTo != nil { if err := s.RedirectAllRequestsTo.Validate(); err != nil { invalidParams.AddNested("RedirectAllRequestsTo", err.(request.ErrInvalidParams)) } } if s.RoutingRules != nil { for i, v := range s.RoutingRules { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RoutingRules", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } const ( // BucketAccelerateStatusEnabled is a BucketAccelerateStatus enum value BucketAccelerateStatusEnabled = "Enabled" // BucketAccelerateStatusSuspended is a BucketAccelerateStatus enum value BucketAccelerateStatusSuspended = "Suspended" ) const ( // BucketCannedACLPrivate is a BucketCannedACL enum value BucketCannedACLPrivate = "private" // BucketCannedACLPublicRead is a BucketCannedACL enum value BucketCannedACLPublicRead = "public-read" // BucketCannedACLPublicReadWrite is a BucketCannedACL enum value BucketCannedACLPublicReadWrite = "public-read-write" // BucketCannedACLAuthenticatedRead is a BucketCannedACL enum value BucketCannedACLAuthenticatedRead = "authenticated-read" ) const ( // BucketLocationConstraintEu is a BucketLocationConstraint enum value BucketLocationConstraintEu = "EU" // BucketLocationConstraintEuWest1 is a BucketLocationConstraint enum value BucketLocationConstraintEuWest1 = "eu-west-1" // BucketLocationConstraintUsWest1 is a BucketLocationConstraint enum value BucketLocationConstraintUsWest1 = "us-west-1" // BucketLocationConstraintUsWest2 is a BucketLocationConstraint enum value BucketLocationConstraintUsWest2 = "us-west-2" // BucketLocationConstraintApSouth1 is a BucketLocationConstraint enum value BucketLocationConstraintApSouth1 = "ap-south-1" // BucketLocationConstraintApSoutheast1 is a BucketLocationConstraint enum value BucketLocationConstraintApSoutheast1 = "ap-southeast-1" // BucketLocationConstraintApSoutheast2 is a BucketLocationConstraint enum value BucketLocationConstraintApSoutheast2 = "ap-southeast-2" // BucketLocationConstraintApNortheast1 is a BucketLocationConstraint enum value BucketLocationConstraintApNortheast1 = "ap-northeast-1" // BucketLocationConstraintSaEast1 is a BucketLocationConstraint enum value BucketLocationConstraintSaEast1 = "sa-east-1" // BucketLocationConstraintCnNorth1 is a BucketLocationConstraint enum value BucketLocationConstraintCnNorth1 = "cn-north-1" // BucketLocationConstraintEuCentral1 is a BucketLocationConstraint enum value BucketLocationConstraintEuCentral1 = "eu-central-1" ) const ( // BucketLogsPermissionFullControl is a BucketLogsPermission enum value BucketLogsPermissionFullControl = "FULL_CONTROL" // BucketLogsPermissionRead is a BucketLogsPermission enum value BucketLogsPermissionRead = "READ" // BucketLogsPermissionWrite is a BucketLogsPermission enum value BucketLogsPermissionWrite = "WRITE" ) const ( // BucketVersioningStatusEnabled is a BucketVersioningStatus enum value BucketVersioningStatusEnabled = "Enabled" // BucketVersioningStatusSuspended is a BucketVersioningStatus enum value BucketVersioningStatusSuspended = "Suspended" ) // Requests Amazon S3 to encode the object keys in the response and specifies // the encoding method to use. An object key may contain any Unicode character; // however, XML 1.0 parser cannot parse some characters, such as characters // with an ASCII value from 0 to 10. For characters that are not supported in // XML 1.0, you can add this parameter to request that Amazon S3 encode the // keys in the response. const ( // EncodingTypeUrl is a EncodingType enum value EncodingTypeUrl = "url" ) // Bucket event for which to send notifications. const ( // EventS3ReducedRedundancyLostObject is a Event enum value EventS3ReducedRedundancyLostObject = "s3:ReducedRedundancyLostObject" // EventS3ObjectCreated is a Event enum value EventS3ObjectCreated = "s3:ObjectCreated:*" // EventS3ObjectCreatedPut is a Event enum value EventS3ObjectCreatedPut = "s3:ObjectCreated:Put" // EventS3ObjectCreatedPost is a Event enum value EventS3ObjectCreatedPost = "s3:ObjectCreated:Post" // EventS3ObjectCreatedCopy is a Event enum value EventS3ObjectCreatedCopy = "s3:ObjectCreated:Copy" // EventS3ObjectCreatedCompleteMultipartUpload is a Event enum value EventS3ObjectCreatedCompleteMultipartUpload = "s3:ObjectCreated:CompleteMultipartUpload" // EventS3ObjectRemoved is a Event enum value EventS3ObjectRemoved = "s3:ObjectRemoved:*" // EventS3ObjectRemovedDelete is a Event enum value EventS3ObjectRemovedDelete = "s3:ObjectRemoved:Delete" // EventS3ObjectRemovedDeleteMarkerCreated is a Event enum value EventS3ObjectRemovedDeleteMarkerCreated = "s3:ObjectRemoved:DeleteMarkerCreated" ) const ( // ExpirationStatusEnabled is a ExpirationStatus enum value ExpirationStatusEnabled = "Enabled" // ExpirationStatusDisabled is a ExpirationStatus enum value ExpirationStatusDisabled = "Disabled" ) const ( // FilterRuleNamePrefix is a FilterRuleName enum value FilterRuleNamePrefix = "prefix" // FilterRuleNameSuffix is a FilterRuleName enum value FilterRuleNameSuffix = "suffix" ) const ( // MFADeleteEnabled is a MFADelete enum value MFADeleteEnabled = "Enabled" // MFADeleteDisabled is a MFADelete enum value MFADeleteDisabled = "Disabled" ) const ( // MFADeleteStatusEnabled is a MFADeleteStatus enum value MFADeleteStatusEnabled = "Enabled" // MFADeleteStatusDisabled is a MFADeleteStatus enum value MFADeleteStatusDisabled = "Disabled" ) const ( // MetadataDirectiveCopy is a MetadataDirective enum value MetadataDirectiveCopy = "COPY" // MetadataDirectiveReplace is a MetadataDirective enum value MetadataDirectiveReplace = "REPLACE" ) const ( // ObjectCannedACLPrivate is a ObjectCannedACL enum value ObjectCannedACLPrivate = "private" // ObjectCannedACLPublicRead is a ObjectCannedACL enum value ObjectCannedACLPublicRead = "public-read" // ObjectCannedACLPublicReadWrite is a ObjectCannedACL enum value ObjectCannedACLPublicReadWrite = "public-read-write" // ObjectCannedACLAuthenticatedRead is a ObjectCannedACL enum value ObjectCannedACLAuthenticatedRead = "authenticated-read" // ObjectCannedACLAwsExecRead is a ObjectCannedACL enum value ObjectCannedACLAwsExecRead = "aws-exec-read" // ObjectCannedACLBucketOwnerRead is a ObjectCannedACL enum value ObjectCannedACLBucketOwnerRead = "bucket-owner-read" // ObjectCannedACLBucketOwnerFullControl is a ObjectCannedACL enum value ObjectCannedACLBucketOwnerFullControl = "bucket-owner-full-control" ) const ( // ObjectStorageClassStandard is a ObjectStorageClass enum value ObjectStorageClassStandard = "STANDARD" // ObjectStorageClassReducedRedundancy is a ObjectStorageClass enum value ObjectStorageClassReducedRedundancy = "REDUCED_REDUNDANCY" // ObjectStorageClassGlacier is a ObjectStorageClass enum value ObjectStorageClassGlacier = "GLACIER" ) const ( // ObjectVersionStorageClassStandard is a ObjectVersionStorageClass enum value ObjectVersionStorageClassStandard = "STANDARD" ) const ( // PayerRequester is a Payer enum value PayerRequester = "Requester" // PayerBucketOwner is a Payer enum value PayerBucketOwner = "BucketOwner" ) const ( // PermissionFullControl is a Permission enum value PermissionFullControl = "FULL_CONTROL" // PermissionWrite is a Permission enum value PermissionWrite = "WRITE" // PermissionWriteAcp is a Permission enum value PermissionWriteAcp = "WRITE_ACP" // PermissionRead is a Permission enum value PermissionRead = "READ" // PermissionReadAcp is a Permission enum value PermissionReadAcp = "READ_ACP" ) const ( // ProtocolHttp is a Protocol enum value ProtocolHttp = "http" // ProtocolHttps is a Protocol enum value ProtocolHttps = "https" ) const ( // ReplicationRuleStatusEnabled is a ReplicationRuleStatus enum value ReplicationRuleStatusEnabled = "Enabled" // ReplicationRuleStatusDisabled is a ReplicationRuleStatus enum value ReplicationRuleStatusDisabled = "Disabled" ) const ( // ReplicationStatusComplete is a ReplicationStatus enum value ReplicationStatusComplete = "COMPLETE" // ReplicationStatusPending is a ReplicationStatus enum value ReplicationStatusPending = "PENDING" // ReplicationStatusFailed is a ReplicationStatus enum value ReplicationStatusFailed = "FAILED" // ReplicationStatusReplica is a ReplicationStatus enum value ReplicationStatusReplica = "REPLICA" ) // If present, indicates that the requester was successfully charged for the // request. const ( // RequestChargedRequester is a RequestCharged enum value RequestChargedRequester = "requester" ) // Confirms that the requester knows that she or he will be charged for the // request. Bucket owners need not specify this parameter in their requests. // Documentation on downloading objects from requester pays buckets can be found // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html const ( // RequestPayerRequester is a RequestPayer enum value RequestPayerRequester = "requester" ) const ( // ServerSideEncryptionAes256 is a ServerSideEncryption enum value ServerSideEncryptionAes256 = "AES256" // ServerSideEncryptionAwsKms is a ServerSideEncryption enum value ServerSideEncryptionAwsKms = "aws:kms" ) const ( // StorageClassStandard is a StorageClass enum value StorageClassStandard = "STANDARD" // StorageClassReducedRedundancy is a StorageClass enum value StorageClassReducedRedundancy = "REDUCED_REDUNDANCY" // StorageClassStandardIa is a StorageClass enum value StorageClassStandardIa = "STANDARD_IA" ) const ( // TransitionStorageClassGlacier is a TransitionStorageClass enum value TransitionStorageClassGlacier = "GLACIER" // TransitionStorageClassStandardIa is a TransitionStorageClass enum value TransitionStorageClassStandardIa = "STANDARD_IA" ) const ( // TypeCanonicalUser is a Type enum value TypeCanonicalUser = "CanonicalUser" // TypeAmazonCustomerByEmail is a Type enum value TypeAmazonCustomerByEmail = "AmazonCustomerByEmail" // TypeGroup is a Type enum value TypeGroup = "Group" ) aws-sdk-go-1.4.22/service/s3/bucket_location.go000066400000000000000000000020771300374646400212520ustar00rootroot00000000000000package s3 import ( "io/ioutil" "regexp" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) var reBucketLocation = regexp.MustCompile(`>([^<>]+)<\/Location`) func buildGetBucketLocation(r *request.Request) { if r.DataFilled() { out := r.Data.(*GetBucketLocationOutput) b, err := ioutil.ReadAll(r.HTTPResponse.Body) if err != nil { r.Error = awserr.New("SerializationError", "failed reading response body", err) return } match := reBucketLocation.FindSubmatch(b) if len(match) > 1 { loc := string(match[1]) out.LocationConstraint = &loc } } } func populateLocationConstraint(r *request.Request) { if r.ParamsFilled() && aws.StringValue(r.Config.Region) != "us-east-1" { in := r.Params.(*CreateBucketInput) if in.CreateBucketConfiguration == nil { r.Params = awsutil.CopyOf(r.Params) in = r.Params.(*CreateBucketInput) in.CreateBucketConfiguration = &CreateBucketConfiguration{ LocationConstraint: r.Config.Region, } } } } aws-sdk-go-1.4.22/service/s3/bucket_location_test.go000066400000000000000000000046511300374646400223110ustar00rootroot00000000000000package s3_test import ( "bytes" "io/ioutil" "net/http" "testing" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/s3" "github.com/stretchr/testify/assert" ) var s3LocationTests = []struct { body string loc string }{ {``, ``}, {`EU`, `EU`}, } func TestGetBucketLocation(t *testing.T) { for _, test := range s3LocationTests { s := s3.New(unit.Session) s.Handlers.Send.Clear() s.Handlers.Send.PushBack(func(r *request.Request) { reader := ioutil.NopCloser(bytes.NewReader([]byte(test.body))) r.HTTPResponse = &http.Response{StatusCode: 200, Body: reader} }) resp, err := s.GetBucketLocation(&s3.GetBucketLocationInput{Bucket: aws.String("bucket")}) assert.NoError(t, err) if test.loc == "" { assert.Nil(t, resp.LocationConstraint) } else { assert.Equal(t, test.loc, *resp.LocationConstraint) } } } func TestPopulateLocationConstraint(t *testing.T) { s := s3.New(unit.Session) in := &s3.CreateBucketInput{ Bucket: aws.String("bucket"), } req, _ := s.CreateBucketRequest(in) err := req.Build() assert.NoError(t, err) v, _ := awsutil.ValuesAtPath(req.Params, "CreateBucketConfiguration.LocationConstraint") assert.Equal(t, "mock-region", *(v[0].(*string))) assert.Nil(t, in.CreateBucketConfiguration) // don't modify original params } func TestNoPopulateLocationConstraintIfProvided(t *testing.T) { s := s3.New(unit.Session) req, _ := s.CreateBucketRequest(&s3.CreateBucketInput{ Bucket: aws.String("bucket"), CreateBucketConfiguration: &s3.CreateBucketConfiguration{}, }) err := req.Build() assert.NoError(t, err) v, _ := awsutil.ValuesAtPath(req.Params, "CreateBucketConfiguration.LocationConstraint") assert.Equal(t, 0, len(v)) } func TestNoPopulateLocationConstraintIfClassic(t *testing.T) { s := s3.New(unit.Session, &aws.Config{Region: aws.String("us-east-1")}) req, _ := s.CreateBucketRequest(&s3.CreateBucketInput{ Bucket: aws.String("bucket"), }) err := req.Build() assert.NoError(t, err) v, _ := awsutil.ValuesAtPath(req.Params, "CreateBucketConfiguration.LocationConstraint") assert.Equal(t, 0, len(v)) } aws-sdk-go-1.4.22/service/s3/content_md5.go000066400000000000000000000016611300374646400203220ustar00rootroot00000000000000package s3 import ( "crypto/md5" "encoding/base64" "io" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" ) // contentMD5 computes and sets the HTTP Content-MD5 header for requests that // require it. func contentMD5(r *request.Request) { h := md5.New() // hash the body. seek back to the first position after reading to reset // the body for transmission. copy errors may be assumed to be from the // body. _, err := io.Copy(h, r.Body) if err != nil { r.Error = awserr.New("ContentMD5", "failed to read body", err) return } _, err = r.Body.Seek(0, 0) if err != nil { r.Error = awserr.New("ContentMD5", "failed to seek body", err) return } // encode the md5 checksum in base64 and set the request header. sum := h.Sum(nil) sum64 := make([]byte, base64.StdEncoding.EncodedLen(len(sum))) base64.StdEncoding.Encode(sum64, sum) r.HTTPRequest.Header.Set("Content-MD5", string(sum64)) } aws-sdk-go-1.4.22/service/s3/customizations.go000066400000000000000000000027321300374646400211760ustar00rootroot00000000000000package s3 import ( "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/request" ) func init() { initClient = defaultInitClientFn initRequest = defaultInitRequestFn } func defaultInitClientFn(c *client.Client) { // Support building custom endpoints based on config c.Handlers.Build.PushFront(updateEndpointForS3Config) // Require SSL when using SSE keys c.Handlers.Validate.PushBack(validateSSERequiresSSL) c.Handlers.Build.PushBack(computeSSEKeys) // S3 uses custom error unmarshaling logic c.Handlers.UnmarshalError.Clear() c.Handlers.UnmarshalError.PushBack(unmarshalError) } func defaultInitRequestFn(r *request.Request) { // Add reuest handlers for specific platforms. // e.g. 100-continue support for PUT requests using Go 1.6 platformRequestHandlers(r) switch r.Operation.Name { case opPutBucketCors, opPutBucketLifecycle, opPutBucketPolicy, opPutBucketTagging, opDeleteObjects, opPutBucketLifecycleConfiguration, opPutBucketReplication: // These S3 operations require Content-MD5 to be set r.Handlers.Build.PushBack(contentMD5) case opGetBucketLocation: // GetBucketLocation has custom parsing logic r.Handlers.Unmarshal.PushFront(buildGetBucketLocation) case opCreateBucket: // Auto-populate LocationConstraint with current region r.Handlers.Validate.PushFront(populateLocationConstraint) case opCopyObject, opUploadPartCopy, opCompleteMultipartUpload: r.Handlers.Unmarshal.PushFront(copyMultipartStatusOKUnmarhsalError) } } aws-sdk-go-1.4.22/service/s3/customizations_test.go000066400000000000000000000076511300374646400222420ustar00rootroot00000000000000package s3_test import ( "crypto/md5" "encoding/base64" "io/ioutil" "net/http" "net/http/httptest" "strings" "testing" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/s3" "github.com/stretchr/testify/assert" ) func assertMD5(t *testing.T, req *request.Request) { err := req.Build() assert.NoError(t, err) b, _ := ioutil.ReadAll(req.HTTPRequest.Body) out := md5.Sum(b) assert.NotEmpty(t, b) assert.Equal(t, base64.StdEncoding.EncodeToString(out[:]), req.HTTPRequest.Header.Get("Content-MD5")) } func TestMD5InPutBucketCors(t *testing.T) { svc := s3.New(unit.Session) req, _ := svc.PutBucketCorsRequest(&s3.PutBucketCorsInput{ Bucket: aws.String("bucketname"), CORSConfiguration: &s3.CORSConfiguration{ CORSRules: []*s3.CORSRule{ { AllowedMethods: []*string{aws.String("GET")}, AllowedOrigins: []*string{aws.String("*")}, }, }, }, }) assertMD5(t, req) } func TestMD5InPutBucketLifecycle(t *testing.T) { svc := s3.New(unit.Session) req, _ := svc.PutBucketLifecycleRequest(&s3.PutBucketLifecycleInput{ Bucket: aws.String("bucketname"), LifecycleConfiguration: &s3.LifecycleConfiguration{ Rules: []*s3.Rule{ { ID: aws.String("ID"), Prefix: aws.String("Prefix"), Status: aws.String("Enabled"), }, }, }, }) assertMD5(t, req) } func TestMD5InPutBucketPolicy(t *testing.T) { svc := s3.New(unit.Session) req, _ := svc.PutBucketPolicyRequest(&s3.PutBucketPolicyInput{ Bucket: aws.String("bucketname"), Policy: aws.String("{}"), }) assertMD5(t, req) } func TestMD5InPutBucketTagging(t *testing.T) { svc := s3.New(unit.Session) req, _ := svc.PutBucketTaggingRequest(&s3.PutBucketTaggingInput{ Bucket: aws.String("bucketname"), Tagging: &s3.Tagging{ TagSet: []*s3.Tag{ {Key: aws.String("KEY"), Value: aws.String("VALUE")}, }, }, }) assertMD5(t, req) } func TestMD5InDeleteObjects(t *testing.T) { svc := s3.New(unit.Session) req, _ := svc.DeleteObjectsRequest(&s3.DeleteObjectsInput{ Bucket: aws.String("bucketname"), Delete: &s3.Delete{ Objects: []*s3.ObjectIdentifier{ {Key: aws.String("key")}, }, }, }) assertMD5(t, req) } func TestMD5InPutBucketLifecycleConfiguration(t *testing.T) { svc := s3.New(unit.Session) req, _ := svc.PutBucketLifecycleConfigurationRequest(&s3.PutBucketLifecycleConfigurationInput{ Bucket: aws.String("bucketname"), LifecycleConfiguration: &s3.BucketLifecycleConfiguration{ Rules: []*s3.LifecycleRule{ {Prefix: aws.String("prefix"), Status: aws.String(s3.ExpirationStatusEnabled)}, }, }, }) assertMD5(t, req) } const ( metaKeyPrefix = `X-Amz-Meta-` utf8KeySuffix = `My-Info` utf8Value = "hello-世界\u0444" ) func TestPutObjectMetadataWithUnicode(t *testing.T) { server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { assert.Equal(t, utf8Value, r.Header.Get(metaKeyPrefix+utf8KeySuffix)) })) svc := s3.New(unit.Session, &aws.Config{ Endpoint: aws.String(server.URL), DisableSSL: aws.Bool(true), }) _, err := svc.PutObject(&s3.PutObjectInput{ Bucket: aws.String("my_bucket"), Key: aws.String("my_key"), Body: strings.NewReader(""), Metadata: func() map[string]*string { v := map[string]*string{} v[utf8KeySuffix] = aws.String(utf8Value) return v }(), }) assert.NoError(t, err) } func TestGetObjectMetadataWithUnicode(t *testing.T) { server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { w.Header().Set(metaKeyPrefix+utf8KeySuffix, utf8Value) })) svc := s3.New(unit.Session, &aws.Config{ Endpoint: aws.String(server.URL), DisableSSL: aws.Bool(true), }) resp, err := svc.GetObject(&s3.GetObjectInput{ Bucket: aws.String("my_bucket"), Key: aws.String("my_key"), }) assert.NoError(t, err) resp.Body.Close() assert.Equal(t, utf8Value, *resp.Metadata[utf8KeySuffix]) } aws-sdk-go-1.4.22/service/s3/examples_test.go000066400000000000000000001463261300374646400207700ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package s3_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/s3" ) var _ time.Duration var _ bytes.Buffer func ExampleS3_AbortMultipartUpload() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.AbortMultipartUploadInput{ Bucket: aws.String("BucketName"), // Required Key: aws.String("ObjectKey"), // Required UploadId: aws.String("MultipartUploadId"), // Required RequestPayer: aws.String("RequestPayer"), } resp, err := svc.AbortMultipartUpload(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_CompleteMultipartUpload() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.CompleteMultipartUploadInput{ Bucket: aws.String("BucketName"), // Required Key: aws.String("ObjectKey"), // Required UploadId: aws.String("MultipartUploadId"), // Required MultipartUpload: &s3.CompletedMultipartUpload{ Parts: []*s3.CompletedPart{ { // Required ETag: aws.String("ETag"), PartNumber: aws.Int64(1), }, // More values... }, }, RequestPayer: aws.String("RequestPayer"), } resp, err := svc.CompleteMultipartUpload(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_CopyObject() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.CopyObjectInput{ Bucket: aws.String("BucketName"), // Required CopySource: aws.String("CopySource"), // Required Key: aws.String("ObjectKey"), // Required ACL: aws.String("ObjectCannedACL"), CacheControl: aws.String("CacheControl"), ContentDisposition: aws.String("ContentDisposition"), ContentEncoding: aws.String("ContentEncoding"), ContentLanguage: aws.String("ContentLanguage"), ContentType: aws.String("ContentType"), CopySourceIfMatch: aws.String("CopySourceIfMatch"), CopySourceIfModifiedSince: aws.Time(time.Now()), CopySourceIfNoneMatch: aws.String("CopySourceIfNoneMatch"), CopySourceIfUnmodifiedSince: aws.Time(time.Now()), CopySourceSSECustomerAlgorithm: aws.String("CopySourceSSECustomerAlgorithm"), CopySourceSSECustomerKey: aws.String("CopySourceSSECustomerKey"), CopySourceSSECustomerKeyMD5: aws.String("CopySourceSSECustomerKeyMD5"), Expires: aws.Time(time.Now()), GrantFullControl: aws.String("GrantFullControl"), GrantRead: aws.String("GrantRead"), GrantReadACP: aws.String("GrantReadACP"), GrantWriteACP: aws.String("GrantWriteACP"), Metadata: map[string]*string{ "Key": aws.String("MetadataValue"), // Required // More values... }, MetadataDirective: aws.String("MetadataDirective"), RequestPayer: aws.String("RequestPayer"), SSECustomerAlgorithm: aws.String("SSECustomerAlgorithm"), SSECustomerKey: aws.String("SSECustomerKey"), SSECustomerKeyMD5: aws.String("SSECustomerKeyMD5"), SSEKMSKeyId: aws.String("SSEKMSKeyId"), ServerSideEncryption: aws.String("ServerSideEncryption"), StorageClass: aws.String("StorageClass"), WebsiteRedirectLocation: aws.String("WebsiteRedirectLocation"), } resp, err := svc.CopyObject(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_CreateBucket() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.CreateBucketInput{ Bucket: aws.String("BucketName"), // Required ACL: aws.String("BucketCannedACL"), CreateBucketConfiguration: &s3.CreateBucketConfiguration{ LocationConstraint: aws.String("BucketLocationConstraint"), }, GrantFullControl: aws.String("GrantFullControl"), GrantRead: aws.String("GrantRead"), GrantReadACP: aws.String("GrantReadACP"), GrantWrite: aws.String("GrantWrite"), GrantWriteACP: aws.String("GrantWriteACP"), } resp, err := svc.CreateBucket(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_CreateMultipartUpload() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.CreateMultipartUploadInput{ Bucket: aws.String("BucketName"), // Required Key: aws.String("ObjectKey"), // Required ACL: aws.String("ObjectCannedACL"), CacheControl: aws.String("CacheControl"), ContentDisposition: aws.String("ContentDisposition"), ContentEncoding: aws.String("ContentEncoding"), ContentLanguage: aws.String("ContentLanguage"), ContentType: aws.String("ContentType"), Expires: aws.Time(time.Now()), GrantFullControl: aws.String("GrantFullControl"), GrantRead: aws.String("GrantRead"), GrantReadACP: aws.String("GrantReadACP"), GrantWriteACP: aws.String("GrantWriteACP"), Metadata: map[string]*string{ "Key": aws.String("MetadataValue"), // Required // More values... }, RequestPayer: aws.String("RequestPayer"), SSECustomerAlgorithm: aws.String("SSECustomerAlgorithm"), SSECustomerKey: aws.String("SSECustomerKey"), SSECustomerKeyMD5: aws.String("SSECustomerKeyMD5"), SSEKMSKeyId: aws.String("SSEKMSKeyId"), ServerSideEncryption: aws.String("ServerSideEncryption"), StorageClass: aws.String("StorageClass"), WebsiteRedirectLocation: aws.String("WebsiteRedirectLocation"), } resp, err := svc.CreateMultipartUpload(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_DeleteBucket() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.DeleteBucketInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.DeleteBucket(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_DeleteBucketCors() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.DeleteBucketCorsInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.DeleteBucketCors(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_DeleteBucketLifecycle() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.DeleteBucketLifecycleInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.DeleteBucketLifecycle(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_DeleteBucketPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.DeleteBucketPolicyInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.DeleteBucketPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_DeleteBucketReplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.DeleteBucketReplicationInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.DeleteBucketReplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_DeleteBucketTagging() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.DeleteBucketTaggingInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.DeleteBucketTagging(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_DeleteBucketWebsite() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.DeleteBucketWebsiteInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.DeleteBucketWebsite(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_DeleteObject() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.DeleteObjectInput{ Bucket: aws.String("BucketName"), // Required Key: aws.String("ObjectKey"), // Required MFA: aws.String("MFA"), RequestPayer: aws.String("RequestPayer"), VersionId: aws.String("ObjectVersionId"), } resp, err := svc.DeleteObject(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_DeleteObjects() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.DeleteObjectsInput{ Bucket: aws.String("BucketName"), // Required Delete: &s3.Delete{ // Required Objects: []*s3.ObjectIdentifier{ // Required { // Required Key: aws.String("ObjectKey"), // Required VersionId: aws.String("ObjectVersionId"), }, // More values... }, Quiet: aws.Bool(true), }, MFA: aws.String("MFA"), RequestPayer: aws.String("RequestPayer"), } resp, err := svc.DeleteObjects(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_GetBucketAccelerateConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.GetBucketAccelerateConfigurationInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.GetBucketAccelerateConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_GetBucketAcl() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.GetBucketAclInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.GetBucketAcl(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_GetBucketCors() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.GetBucketCorsInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.GetBucketCors(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_GetBucketLifecycle() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.GetBucketLifecycleInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.GetBucketLifecycle(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_GetBucketLifecycleConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.GetBucketLifecycleConfigurationInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.GetBucketLifecycleConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_GetBucketLocation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.GetBucketLocationInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.GetBucketLocation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_GetBucketLogging() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.GetBucketLoggingInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.GetBucketLogging(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_GetBucketNotification() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.GetBucketNotificationConfigurationRequest{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.GetBucketNotification(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_GetBucketNotificationConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.GetBucketNotificationConfigurationRequest{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.GetBucketNotificationConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_GetBucketPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.GetBucketPolicyInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.GetBucketPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_GetBucketReplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.GetBucketReplicationInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.GetBucketReplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_GetBucketRequestPayment() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.GetBucketRequestPaymentInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.GetBucketRequestPayment(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_GetBucketTagging() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.GetBucketTaggingInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.GetBucketTagging(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_GetBucketVersioning() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.GetBucketVersioningInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.GetBucketVersioning(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_GetBucketWebsite() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.GetBucketWebsiteInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.GetBucketWebsite(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_GetObject() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.GetObjectInput{ Bucket: aws.String("BucketName"), // Required Key: aws.String("ObjectKey"), // Required IfMatch: aws.String("IfMatch"), IfModifiedSince: aws.Time(time.Now()), IfNoneMatch: aws.String("IfNoneMatch"), IfUnmodifiedSince: aws.Time(time.Now()), PartNumber: aws.Int64(1), Range: aws.String("Range"), RequestPayer: aws.String("RequestPayer"), ResponseCacheControl: aws.String("ResponseCacheControl"), ResponseContentDisposition: aws.String("ResponseContentDisposition"), ResponseContentEncoding: aws.String("ResponseContentEncoding"), ResponseContentLanguage: aws.String("ResponseContentLanguage"), ResponseContentType: aws.String("ResponseContentType"), ResponseExpires: aws.Time(time.Now()), SSECustomerAlgorithm: aws.String("SSECustomerAlgorithm"), SSECustomerKey: aws.String("SSECustomerKey"), SSECustomerKeyMD5: aws.String("SSECustomerKeyMD5"), VersionId: aws.String("ObjectVersionId"), } resp, err := svc.GetObject(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_GetObjectAcl() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.GetObjectAclInput{ Bucket: aws.String("BucketName"), // Required Key: aws.String("ObjectKey"), // Required RequestPayer: aws.String("RequestPayer"), VersionId: aws.String("ObjectVersionId"), } resp, err := svc.GetObjectAcl(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_GetObjectTorrent() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.GetObjectTorrentInput{ Bucket: aws.String("BucketName"), // Required Key: aws.String("ObjectKey"), // Required RequestPayer: aws.String("RequestPayer"), } resp, err := svc.GetObjectTorrent(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_HeadBucket() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.HeadBucketInput{ Bucket: aws.String("BucketName"), // Required } resp, err := svc.HeadBucket(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_HeadObject() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.HeadObjectInput{ Bucket: aws.String("BucketName"), // Required Key: aws.String("ObjectKey"), // Required IfMatch: aws.String("IfMatch"), IfModifiedSince: aws.Time(time.Now()), IfNoneMatch: aws.String("IfNoneMatch"), IfUnmodifiedSince: aws.Time(time.Now()), PartNumber: aws.Int64(1), Range: aws.String("Range"), RequestPayer: aws.String("RequestPayer"), SSECustomerAlgorithm: aws.String("SSECustomerAlgorithm"), SSECustomerKey: aws.String("SSECustomerKey"), SSECustomerKeyMD5: aws.String("SSECustomerKeyMD5"), VersionId: aws.String("ObjectVersionId"), } resp, err := svc.HeadObject(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_ListBuckets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) var params *s3.ListBucketsInput resp, err := svc.ListBuckets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_ListMultipartUploads() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.ListMultipartUploadsInput{ Bucket: aws.String("BucketName"), // Required Delimiter: aws.String("Delimiter"), EncodingType: aws.String("EncodingType"), KeyMarker: aws.String("KeyMarker"), MaxUploads: aws.Int64(1), Prefix: aws.String("Prefix"), UploadIdMarker: aws.String("UploadIdMarker"), } resp, err := svc.ListMultipartUploads(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_ListObjectVersions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.ListObjectVersionsInput{ Bucket: aws.String("BucketName"), // Required Delimiter: aws.String("Delimiter"), EncodingType: aws.String("EncodingType"), KeyMarker: aws.String("KeyMarker"), MaxKeys: aws.Int64(1), Prefix: aws.String("Prefix"), VersionIdMarker: aws.String("VersionIdMarker"), } resp, err := svc.ListObjectVersions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_ListObjects() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.ListObjectsInput{ Bucket: aws.String("BucketName"), // Required Delimiter: aws.String("Delimiter"), EncodingType: aws.String("EncodingType"), Marker: aws.String("Marker"), MaxKeys: aws.Int64(1), Prefix: aws.String("Prefix"), RequestPayer: aws.String("RequestPayer"), } resp, err := svc.ListObjects(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_ListObjectsV2() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.ListObjectsV2Input{ Bucket: aws.String("BucketName"), // Required ContinuationToken: aws.String("Token"), Delimiter: aws.String("Delimiter"), EncodingType: aws.String("EncodingType"), FetchOwner: aws.Bool(true), MaxKeys: aws.Int64(1), Prefix: aws.String("Prefix"), RequestPayer: aws.String("RequestPayer"), StartAfter: aws.String("StartAfter"), } resp, err := svc.ListObjectsV2(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_ListParts() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.ListPartsInput{ Bucket: aws.String("BucketName"), // Required Key: aws.String("ObjectKey"), // Required UploadId: aws.String("MultipartUploadId"), // Required MaxParts: aws.Int64(1), PartNumberMarker: aws.Int64(1), RequestPayer: aws.String("RequestPayer"), } resp, err := svc.ListParts(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_PutBucketAccelerateConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.PutBucketAccelerateConfigurationInput{ AccelerateConfiguration: &s3.AccelerateConfiguration{ // Required Status: aws.String("BucketAccelerateStatus"), }, Bucket: aws.String("BucketName"), // Required } resp, err := svc.PutBucketAccelerateConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_PutBucketAcl() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.PutBucketAclInput{ Bucket: aws.String("BucketName"), // Required ACL: aws.String("BucketCannedACL"), AccessControlPolicy: &s3.AccessControlPolicy{ Grants: []*s3.Grant{ { // Required Grantee: &s3.Grantee{ Type: aws.String("Type"), // Required DisplayName: aws.String("DisplayName"), EmailAddress: aws.String("EmailAddress"), ID: aws.String("ID"), URI: aws.String("URI"), }, Permission: aws.String("Permission"), }, // More values... }, Owner: &s3.Owner{ DisplayName: aws.String("DisplayName"), ID: aws.String("ID"), }, }, GrantFullControl: aws.String("GrantFullControl"), GrantRead: aws.String("GrantRead"), GrantReadACP: aws.String("GrantReadACP"), GrantWrite: aws.String("GrantWrite"), GrantWriteACP: aws.String("GrantWriteACP"), } resp, err := svc.PutBucketAcl(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_PutBucketCors() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.PutBucketCorsInput{ Bucket: aws.String("BucketName"), // Required CORSConfiguration: &s3.CORSConfiguration{ // Required CORSRules: []*s3.CORSRule{ // Required { // Required AllowedMethods: []*string{ // Required aws.String("AllowedMethod"), // Required // More values... }, AllowedOrigins: []*string{ // Required aws.String("AllowedOrigin"), // Required // More values... }, AllowedHeaders: []*string{ aws.String("AllowedHeader"), // Required // More values... }, ExposeHeaders: []*string{ aws.String("ExposeHeader"), // Required // More values... }, MaxAgeSeconds: aws.Int64(1), }, // More values... }, }, } resp, err := svc.PutBucketCors(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_PutBucketLifecycle() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.PutBucketLifecycleInput{ Bucket: aws.String("BucketName"), // Required LifecycleConfiguration: &s3.LifecycleConfiguration{ Rules: []*s3.Rule{ // Required { // Required Prefix: aws.String("Prefix"), // Required Status: aws.String("ExpirationStatus"), // Required AbortIncompleteMultipartUpload: &s3.AbortIncompleteMultipartUpload{ DaysAfterInitiation: aws.Int64(1), }, Expiration: &s3.LifecycleExpiration{ Date: aws.Time(time.Now()), Days: aws.Int64(1), ExpiredObjectDeleteMarker: aws.Bool(true), }, ID: aws.String("ID"), NoncurrentVersionExpiration: &s3.NoncurrentVersionExpiration{ NoncurrentDays: aws.Int64(1), }, NoncurrentVersionTransition: &s3.NoncurrentVersionTransition{ NoncurrentDays: aws.Int64(1), StorageClass: aws.String("TransitionStorageClass"), }, Transition: &s3.Transition{ Date: aws.Time(time.Now()), Days: aws.Int64(1), StorageClass: aws.String("TransitionStorageClass"), }, }, // More values... }, }, } resp, err := svc.PutBucketLifecycle(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_PutBucketLifecycleConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.PutBucketLifecycleConfigurationInput{ Bucket: aws.String("BucketName"), // Required LifecycleConfiguration: &s3.BucketLifecycleConfiguration{ Rules: []*s3.LifecycleRule{ // Required { // Required Prefix: aws.String("Prefix"), // Required Status: aws.String("ExpirationStatus"), // Required AbortIncompleteMultipartUpload: &s3.AbortIncompleteMultipartUpload{ DaysAfterInitiation: aws.Int64(1), }, Expiration: &s3.LifecycleExpiration{ Date: aws.Time(time.Now()), Days: aws.Int64(1), ExpiredObjectDeleteMarker: aws.Bool(true), }, ID: aws.String("ID"), NoncurrentVersionExpiration: &s3.NoncurrentVersionExpiration{ NoncurrentDays: aws.Int64(1), }, NoncurrentVersionTransitions: []*s3.NoncurrentVersionTransition{ { // Required NoncurrentDays: aws.Int64(1), StorageClass: aws.String("TransitionStorageClass"), }, // More values... }, Transitions: []*s3.Transition{ { // Required Date: aws.Time(time.Now()), Days: aws.Int64(1), StorageClass: aws.String("TransitionStorageClass"), }, // More values... }, }, // More values... }, }, } resp, err := svc.PutBucketLifecycleConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_PutBucketLogging() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.PutBucketLoggingInput{ Bucket: aws.String("BucketName"), // Required BucketLoggingStatus: &s3.BucketLoggingStatus{ // Required LoggingEnabled: &s3.LoggingEnabled{ TargetBucket: aws.String("TargetBucket"), TargetGrants: []*s3.TargetGrant{ { // Required Grantee: &s3.Grantee{ Type: aws.String("Type"), // Required DisplayName: aws.String("DisplayName"), EmailAddress: aws.String("EmailAddress"), ID: aws.String("ID"), URI: aws.String("URI"), }, Permission: aws.String("BucketLogsPermission"), }, // More values... }, TargetPrefix: aws.String("TargetPrefix"), }, }, } resp, err := svc.PutBucketLogging(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_PutBucketNotification() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.PutBucketNotificationInput{ Bucket: aws.String("BucketName"), // Required NotificationConfiguration: &s3.NotificationConfigurationDeprecated{ // Required CloudFunctionConfiguration: &s3.CloudFunctionConfiguration{ CloudFunction: aws.String("CloudFunction"), Event: aws.String("Event"), Events: []*string{ aws.String("Event"), // Required // More values... }, Id: aws.String("NotificationId"), InvocationRole: aws.String("CloudFunctionInvocationRole"), }, QueueConfiguration: &s3.QueueConfigurationDeprecated{ Event: aws.String("Event"), Events: []*string{ aws.String("Event"), // Required // More values... }, Id: aws.String("NotificationId"), Queue: aws.String("QueueArn"), }, TopicConfiguration: &s3.TopicConfigurationDeprecated{ Event: aws.String("Event"), Events: []*string{ aws.String("Event"), // Required // More values... }, Id: aws.String("NotificationId"), Topic: aws.String("TopicArn"), }, }, } resp, err := svc.PutBucketNotification(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_PutBucketNotificationConfiguration() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.PutBucketNotificationConfigurationInput{ Bucket: aws.String("BucketName"), // Required NotificationConfiguration: &s3.NotificationConfiguration{ // Required LambdaFunctionConfigurations: []*s3.LambdaFunctionConfiguration{ { // Required Events: []*string{ // Required aws.String("Event"), // Required // More values... }, LambdaFunctionArn: aws.String("LambdaFunctionArn"), // Required Filter: &s3.NotificationConfigurationFilter{ Key: &s3.KeyFilter{ FilterRules: []*s3.FilterRule{ { // Required Name: aws.String("FilterRuleName"), Value: aws.String("FilterRuleValue"), }, // More values... }, }, }, Id: aws.String("NotificationId"), }, // More values... }, QueueConfigurations: []*s3.QueueConfiguration{ { // Required Events: []*string{ // Required aws.String("Event"), // Required // More values... }, QueueArn: aws.String("QueueArn"), // Required Filter: &s3.NotificationConfigurationFilter{ Key: &s3.KeyFilter{ FilterRules: []*s3.FilterRule{ { // Required Name: aws.String("FilterRuleName"), Value: aws.String("FilterRuleValue"), }, // More values... }, }, }, Id: aws.String("NotificationId"), }, // More values... }, TopicConfigurations: []*s3.TopicConfiguration{ { // Required Events: []*string{ // Required aws.String("Event"), // Required // More values... }, TopicArn: aws.String("TopicArn"), // Required Filter: &s3.NotificationConfigurationFilter{ Key: &s3.KeyFilter{ FilterRules: []*s3.FilterRule{ { // Required Name: aws.String("FilterRuleName"), Value: aws.String("FilterRuleValue"), }, // More values... }, }, }, Id: aws.String("NotificationId"), }, // More values... }, }, } resp, err := svc.PutBucketNotificationConfiguration(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_PutBucketPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.PutBucketPolicyInput{ Bucket: aws.String("BucketName"), // Required Policy: aws.String("Policy"), // Required } resp, err := svc.PutBucketPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_PutBucketReplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.PutBucketReplicationInput{ Bucket: aws.String("BucketName"), // Required ReplicationConfiguration: &s3.ReplicationConfiguration{ // Required Role: aws.String("Role"), // Required Rules: []*s3.ReplicationRule{ // Required { // Required Destination: &s3.Destination{ // Required Bucket: aws.String("BucketName"), // Required StorageClass: aws.String("StorageClass"), }, Prefix: aws.String("Prefix"), // Required Status: aws.String("ReplicationRuleStatus"), // Required ID: aws.String("ID"), }, // More values... }, }, } resp, err := svc.PutBucketReplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_PutBucketRequestPayment() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.PutBucketRequestPaymentInput{ Bucket: aws.String("BucketName"), // Required RequestPaymentConfiguration: &s3.RequestPaymentConfiguration{ // Required Payer: aws.String("Payer"), // Required }, } resp, err := svc.PutBucketRequestPayment(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_PutBucketTagging() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.PutBucketTaggingInput{ Bucket: aws.String("BucketName"), // Required Tagging: &s3.Tagging{ // Required TagSet: []*s3.Tag{ // Required { // Required Key: aws.String("ObjectKey"), // Required Value: aws.String("Value"), // Required }, // More values... }, }, } resp, err := svc.PutBucketTagging(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_PutBucketVersioning() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.PutBucketVersioningInput{ Bucket: aws.String("BucketName"), // Required VersioningConfiguration: &s3.VersioningConfiguration{ // Required MFADelete: aws.String("MFADelete"), Status: aws.String("BucketVersioningStatus"), }, MFA: aws.String("MFA"), } resp, err := svc.PutBucketVersioning(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_PutBucketWebsite() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.PutBucketWebsiteInput{ Bucket: aws.String("BucketName"), // Required WebsiteConfiguration: &s3.WebsiteConfiguration{ // Required ErrorDocument: &s3.ErrorDocument{ Key: aws.String("ObjectKey"), // Required }, IndexDocument: &s3.IndexDocument{ Suffix: aws.String("Suffix"), // Required }, RedirectAllRequestsTo: &s3.RedirectAllRequestsTo{ HostName: aws.String("HostName"), // Required Protocol: aws.String("Protocol"), }, RoutingRules: []*s3.RoutingRule{ { // Required Redirect: &s3.Redirect{ // Required HostName: aws.String("HostName"), HttpRedirectCode: aws.String("HttpRedirectCode"), Protocol: aws.String("Protocol"), ReplaceKeyPrefixWith: aws.String("ReplaceKeyPrefixWith"), ReplaceKeyWith: aws.String("ReplaceKeyWith"), }, Condition: &s3.Condition{ HttpErrorCodeReturnedEquals: aws.String("HttpErrorCodeReturnedEquals"), KeyPrefixEquals: aws.String("KeyPrefixEquals"), }, }, // More values... }, }, } resp, err := svc.PutBucketWebsite(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_PutObject() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.PutObjectInput{ Bucket: aws.String("BucketName"), // Required Key: aws.String("ObjectKey"), // Required ACL: aws.String("ObjectCannedACL"), Body: bytes.NewReader([]byte("PAYLOAD")), CacheControl: aws.String("CacheControl"), ContentDisposition: aws.String("ContentDisposition"), ContentEncoding: aws.String("ContentEncoding"), ContentLanguage: aws.String("ContentLanguage"), ContentLength: aws.Int64(1), ContentType: aws.String("ContentType"), Expires: aws.Time(time.Now()), GrantFullControl: aws.String("GrantFullControl"), GrantRead: aws.String("GrantRead"), GrantReadACP: aws.String("GrantReadACP"), GrantWriteACP: aws.String("GrantWriteACP"), Metadata: map[string]*string{ "Key": aws.String("MetadataValue"), // Required // More values... }, RequestPayer: aws.String("RequestPayer"), SSECustomerAlgorithm: aws.String("SSECustomerAlgorithm"), SSECustomerKey: aws.String("SSECustomerKey"), SSECustomerKeyMD5: aws.String("SSECustomerKeyMD5"), SSEKMSKeyId: aws.String("SSEKMSKeyId"), ServerSideEncryption: aws.String("ServerSideEncryption"), StorageClass: aws.String("StorageClass"), WebsiteRedirectLocation: aws.String("WebsiteRedirectLocation"), } resp, err := svc.PutObject(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_PutObjectAcl() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.PutObjectAclInput{ Bucket: aws.String("BucketName"), // Required Key: aws.String("ObjectKey"), // Required ACL: aws.String("ObjectCannedACL"), AccessControlPolicy: &s3.AccessControlPolicy{ Grants: []*s3.Grant{ { // Required Grantee: &s3.Grantee{ Type: aws.String("Type"), // Required DisplayName: aws.String("DisplayName"), EmailAddress: aws.String("EmailAddress"), ID: aws.String("ID"), URI: aws.String("URI"), }, Permission: aws.String("Permission"), }, // More values... }, Owner: &s3.Owner{ DisplayName: aws.String("DisplayName"), ID: aws.String("ID"), }, }, GrantFullControl: aws.String("GrantFullControl"), GrantRead: aws.String("GrantRead"), GrantReadACP: aws.String("GrantReadACP"), GrantWrite: aws.String("GrantWrite"), GrantWriteACP: aws.String("GrantWriteACP"), RequestPayer: aws.String("RequestPayer"), VersionId: aws.String("ObjectVersionId"), } resp, err := svc.PutObjectAcl(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_RestoreObject() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.RestoreObjectInput{ Bucket: aws.String("BucketName"), // Required Key: aws.String("ObjectKey"), // Required RequestPayer: aws.String("RequestPayer"), RestoreRequest: &s3.RestoreRequest{ Days: aws.Int64(1), // Required }, VersionId: aws.String("ObjectVersionId"), } resp, err := svc.RestoreObject(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_UploadPart() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.UploadPartInput{ Bucket: aws.String("BucketName"), // Required Key: aws.String("ObjectKey"), // Required PartNumber: aws.Int64(1), // Required UploadId: aws.String("MultipartUploadId"), // Required Body: bytes.NewReader([]byte("PAYLOAD")), ContentLength: aws.Int64(1), RequestPayer: aws.String("RequestPayer"), SSECustomerAlgorithm: aws.String("SSECustomerAlgorithm"), SSECustomerKey: aws.String("SSECustomerKey"), SSECustomerKeyMD5: aws.String("SSECustomerKeyMD5"), } resp, err := svc.UploadPart(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleS3_UploadPartCopy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := s3.New(sess) params := &s3.UploadPartCopyInput{ Bucket: aws.String("BucketName"), // Required CopySource: aws.String("CopySource"), // Required Key: aws.String("ObjectKey"), // Required PartNumber: aws.Int64(1), // Required UploadId: aws.String("MultipartUploadId"), // Required CopySourceIfMatch: aws.String("CopySourceIfMatch"), CopySourceIfModifiedSince: aws.Time(time.Now()), CopySourceIfNoneMatch: aws.String("CopySourceIfNoneMatch"), CopySourceIfUnmodifiedSince: aws.Time(time.Now()), CopySourceRange: aws.String("CopySourceRange"), CopySourceSSECustomerAlgorithm: aws.String("CopySourceSSECustomerAlgorithm"), CopySourceSSECustomerKey: aws.String("CopySourceSSECustomerKey"), CopySourceSSECustomerKeyMD5: aws.String("CopySourceSSECustomerKeyMD5"), RequestPayer: aws.String("RequestPayer"), SSECustomerAlgorithm: aws.String("SSECustomerAlgorithm"), SSECustomerKey: aws.String("SSECustomerKey"), SSECustomerKeyMD5: aws.String("SSECustomerKeyMD5"), } resp, err := svc.UploadPartCopy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/s3/host_style_bucket.go000066400000000000000000000124421300374646400216340ustar00rootroot00000000000000package s3 import ( "bytes" "fmt" "net/url" "regexp" "strings" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) // an operationBlacklist is a list of operation names that should a // request handler should not be executed with. type operationBlacklist []string // Continue will return true of the Request's operation name is not // in the blacklist. False otherwise. func (b operationBlacklist) Continue(r *request.Request) bool { for i := 0; i < len(b); i++ { if b[i] == r.Operation.Name { return false } } return true } var accelerateOpBlacklist = operationBlacklist{ opListBuckets, opCreateBucket, opDeleteBucket, } // Request handler to automatically add the bucket name to the endpoint domain // if possible. This style of bucket is valid for all bucket names which are // DNS compatible and do not contain "." func updateEndpointForS3Config(r *request.Request) { forceHostStyle := aws.BoolValue(r.Config.S3ForcePathStyle) accelerate := aws.BoolValue(r.Config.S3UseAccelerate) if accelerate && accelerateOpBlacklist.Continue(r) { if forceHostStyle { if r.Config.Logger != nil { r.Config.Logger.Log("ERROR: aws.Config.S3UseAccelerate is not compatible with aws.Config.S3ForcePathStyle, ignoring S3ForcePathStyle.") } } updateEndpointForAccelerate(r) } else if !forceHostStyle && r.Operation.Name != opGetBucketLocation { updateEndpointForHostStyle(r) } } func updateEndpointForHostStyle(r *request.Request) { bucket, ok := bucketNameFromReqParams(r.Params) if !ok { // Ignore operation requests if the bucketname was not provided // if this is an input validation error the validation handler // will report it. return } if !hostCompatibleBucketName(r.HTTPRequest.URL, bucket) { // bucket name must be valid to put into the host return } moveBucketToHost(r.HTTPRequest.URL, bucket) } var ( accelElem = []byte("s3-accelerate.dualstack.") ) func updateEndpointForAccelerate(r *request.Request) { bucket, ok := bucketNameFromReqParams(r.Params) if !ok { // Ignore operation requests if the bucketname was not provided // if this is an input validation error the validation handler // will report it. return } if !hostCompatibleBucketName(r.HTTPRequest.URL, bucket) { r.Error = awserr.New("InvalidParameterException", fmt.Sprintf("bucket name %s is not compatibile with S3 Accelerate", bucket), nil) return } // Change endpoint from s3(-[a-z0-1-])?.amazonaws.com to s3-accelerate.amazonaws.com r.HTTPRequest.URL.Host = replaceHostRegion(r.HTTPRequest.URL.Host, "accelerate") if aws.BoolValue(r.Config.UseDualStack) { host := []byte(r.HTTPRequest.URL.Host) // Strip region from hostname if idx := bytes.Index(host, accelElem); idx >= 0 { start := idx + len(accelElem) if end := bytes.IndexByte(host[start:], '.'); end >= 0 { end += start + 1 copy(host[start:], host[end:]) host = host[:len(host)-(end-start)] r.HTTPRequest.URL.Host = string(host) } } } moveBucketToHost(r.HTTPRequest.URL, bucket) } // Attempts to retrieve the bucket name from the request input parameters. // If no bucket is found, or the field is empty "", false will be returned. func bucketNameFromReqParams(params interface{}) (string, bool) { b, _ := awsutil.ValuesAtPath(params, "Bucket") if len(b) == 0 { return "", false } if bucket, ok := b[0].(*string); ok { if bucketStr := aws.StringValue(bucket); bucketStr != "" { return bucketStr, true } } return "", false } // hostCompatibleBucketName returns true if the request should // put the bucket in the host. This is false if S3ForcePathStyle is // explicitly set or if the bucket is not DNS compatible. func hostCompatibleBucketName(u *url.URL, bucket string) bool { // Bucket might be DNS compatible but dots in the hostname will fail // certificate validation, so do not use host-style. if u.Scheme == "https" && strings.Contains(bucket, ".") { return false } // if the bucket is DNS compatible return dnsCompatibleBucketName(bucket) } var reDomain = regexp.MustCompile(`^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$`) var reIPAddress = regexp.MustCompile(`^(\d+\.){3}\d+$`) // dnsCompatibleBucketName returns true if the bucket name is DNS compatible. // Buckets created outside of the classic region MUST be DNS compatible. func dnsCompatibleBucketName(bucket string) bool { return reDomain.MatchString(bucket) && !reIPAddress.MatchString(bucket) && !strings.Contains(bucket, "..") } // moveBucketToHost moves the bucket name from the URI path to URL host. func moveBucketToHost(u *url.URL, bucket string) { u.Host = bucket + "." + u.Host u.Path = strings.Replace(u.Path, "/{Bucket}", "", -1) if u.Path == "" { u.Path = "/" } } const s3HostPrefix = "s3" // replaceHostRegion replaces the S3 region string in the host with the // value provided. If v is empty the host prefix returned will be s3. func replaceHostRegion(host, v string) string { if !strings.HasPrefix(host, s3HostPrefix) { return host } suffix := host[len(s3HostPrefix):] for i := len(s3HostPrefix); i < len(host); i++ { if host[i] == '.' { // Trim until '.' leave the it in place. suffix = host[i:] break } } if len(v) == 0 { return fmt.Sprintf("s3%s", suffix) } return fmt.Sprintf("s3-%s%s", v, suffix) } aws-sdk-go-1.4.22/service/s3/host_style_bucket_test.go000066400000000000000000000072371300374646400227010ustar00rootroot00000000000000package s3_test import ( "net/url" "testing" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/s3" ) type s3BucketTest struct { bucket string url string errCode string } var ( sslTests = []s3BucketTest{ {"abc", "https://abc.s3-mock-region.amazonaws.com/", ""}, {"a$b$c", "https://s3-mock-region.amazonaws.com/a%24b%24c", ""}, {"a.b.c", "https://s3-mock-region.amazonaws.com/a.b.c", ""}, {"a..bc", "https://s3-mock-region.amazonaws.com/a..bc", ""}, } nosslTests = []s3BucketTest{ {"a.b.c", "http://a.b.c.s3-mock-region.amazonaws.com/", ""}, {"a..bc", "http://s3-mock-region.amazonaws.com/a..bc", ""}, } forcepathTests = []s3BucketTest{ {"abc", "https://s3-mock-region.amazonaws.com/abc", ""}, {"a$b$c", "https://s3-mock-region.amazonaws.com/a%24b%24c", ""}, {"a.b.c", "https://s3-mock-region.amazonaws.com/a.b.c", ""}, {"a..bc", "https://s3-mock-region.amazonaws.com/a..bc", ""}, } accelerateTests = []s3BucketTest{ {"abc", "https://abc.s3-accelerate.amazonaws.com/", ""}, {"a.b.c", "https://s3-mock-region.amazonaws.com/%7BBucket%7D", "InvalidParameterException"}, {"a$b$c", "https://s3-mock-region.amazonaws.com/%7BBucket%7D", "InvalidParameterException"}, } accelerateNoSSLTests = []s3BucketTest{ {"abc", "http://abc.s3-accelerate.amazonaws.com/", ""}, {"a.b.c", "http://a.b.c.s3-accelerate.amazonaws.com/", ""}, {"a$b$c", "http://s3-mock-region.amazonaws.com/%7BBucket%7D", "InvalidParameterException"}, } accelerateDualstack = []s3BucketTest{ {"abc", "https://abc.s3-accelerate.dualstack.amazonaws.com/", ""}, {"a.b.c", "https://s3.dualstack.mock-region.amazonaws.com/%7BBucket%7D", "InvalidParameterException"}, {"a$b$c", "https://s3.dualstack.mock-region.amazonaws.com/%7BBucket%7D", "InvalidParameterException"}, } ) func runTests(t *testing.T, svc *s3.S3, tests []s3BucketTest) { for i, test := range tests { req, _ := svc.ListObjectsRequest(&s3.ListObjectsInput{Bucket: &test.bucket}) req.Build() assert.Equal(t, test.url, req.HTTPRequest.URL.String(), "test case %d", i) if test.errCode != "" { require.Error(t, req.Error, "test case %d", i) assert.Contains(t, req.Error.(awserr.Error).Code(), test.errCode, "test case %d", i) } } } func TestAccelerateBucketBuild(t *testing.T) { s := s3.New(unit.Session, &aws.Config{S3UseAccelerate: aws.Bool(true)}) runTests(t, s, accelerateTests) } func TestAccelerateNoSSLBucketBuild(t *testing.T) { s := s3.New(unit.Session, &aws.Config{S3UseAccelerate: aws.Bool(true), DisableSSL: aws.Bool(true)}) runTests(t, s, accelerateNoSSLTests) } func TestAccelerateDualstackBucketBuild(t *testing.T) { s := s3.New(unit.Session, &aws.Config{ S3UseAccelerate: aws.Bool(true), UseDualStack: aws.Bool(true), }) runTests(t, s, accelerateDualstack) } func TestHostStyleBucketBuild(t *testing.T) { s := s3.New(unit.Session) runTests(t, s, sslTests) } func TestHostStyleBucketBuildNoSSL(t *testing.T) { s := s3.New(unit.Session, &aws.Config{DisableSSL: aws.Bool(true)}) runTests(t, s, nosslTests) } func TestPathStyleBucketBuild(t *testing.T) { s := s3.New(unit.Session, &aws.Config{S3ForcePathStyle: aws.Bool(true)}) runTests(t, s, forcepathTests) } func TestHostStyleBucketGetBucketLocation(t *testing.T) { s := s3.New(unit.Session) req, _ := s.GetBucketLocationRequest(&s3.GetBucketLocationInput{ Bucket: aws.String("bucket"), }) req.Build() require.NoError(t, req.Error) u, _ := url.Parse(req.HTTPRequest.URL.String()) assert.NotContains(t, u.Host, "bucket") assert.Contains(t, u.Path, "bucket") } aws-sdk-go-1.4.22/service/s3/platform_handlers.go000066400000000000000000000002031300374646400215760ustar00rootroot00000000000000// +build !go1.6 package s3 import "github.com/aws/aws-sdk-go/aws/request" func platformRequestHandlers(r *request.Request) { } aws-sdk-go-1.4.22/service/s3/platform_handlers_go1.6.go000066400000000000000000000011601300374646400225130ustar00rootroot00000000000000// +build go1.6 package s3 import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/request" ) func platformRequestHandlers(r *request.Request) { if r.Operation.HTTPMethod == "PUT" { // 100-Continue should only be used on put requests. r.Handlers.Sign.PushBack(add100Continue) } } func add100Continue(r *request.Request) { if aws.BoolValue(r.Config.S3Disable100Continue) { return } if r.HTTPRequest.ContentLength < 1024*1024*2 { // Ignore requests smaller than 2MB. This helps prevent delaying // requests unnecessarily. return } r.HTTPRequest.Header.Set("Expect", "100-Continue") } aws-sdk-go-1.4.22/service/s3/platform_handlers_go1.6_test.go000066400000000000000000000031331300374646400235540ustar00rootroot00000000000000// +build go1.6 package s3_test import ( "bytes" "testing" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/s3" "github.com/stretchr/testify/assert" ) func TestAdd100Continue_Added(t *testing.T) { svc := s3.New(unit.Session) r, _ := svc.PutObjectRequest(&s3.PutObjectInput{ Bucket: aws.String("bucket"), Key: aws.String("dest"), Body: bytes.NewReader(make([]byte, 1024*1024*5)), }) err := r.Sign() assert.NoError(t, err) assert.Equal(t, "100-Continue", r.HTTPRequest.Header.Get("Expect")) } func TestAdd100Continue_SkipDisabled(t *testing.T) { svc := s3.New(unit.Session, aws.NewConfig().WithS3Disable100Continue(true)) r, _ := svc.PutObjectRequest(&s3.PutObjectInput{ Bucket: aws.String("bucket"), Key: aws.String("dest"), Body: bytes.NewReader(make([]byte, 1024*1024*5)), }) err := r.Sign() assert.NoError(t, err) assert.Empty(t, r.HTTPRequest.Header.Get("Expect")) } func TestAdd100Continue_SkipNonPUT(t *testing.T) { svc := s3.New(unit.Session) r, _ := svc.GetObjectRequest(&s3.GetObjectInput{ Bucket: aws.String("bucket"), Key: aws.String("dest"), }) err := r.Sign() assert.NoError(t, err) assert.Empty(t, r.HTTPRequest.Header.Get("Expect")) } func TestAdd100Continue_SkipTooSmall(t *testing.T) { svc := s3.New(unit.Session) r, _ := svc.PutObjectRequest(&s3.PutObjectInput{ Bucket: aws.String("bucket"), Key: aws.String("dest"), Body: bytes.NewReader(make([]byte, 1024*1024*1)), }) err := r.Sign() assert.NoError(t, err) assert.Empty(t, r.HTTPRequest.Header.Get("Expect")) } aws-sdk-go-1.4.22/service/s3/s3crypto/000077500000000000000000000000001300374646400173365ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/s3/s3crypto/aes_gcm.go000066400000000000000000000040751300374646400212710ustar00rootroot00000000000000package s3crypto import ( "bytes" "crypto/aes" "crypto/cipher" "io" "io/ioutil" ) // AESGCM Symmetric encryption algorithm. Since Golang designed this // with only TLS in mind. We have to load it all into memory meaning // this isn't streamed. type aesGCM struct { aead cipher.AEAD nonce []byte } // newAESGCM creates a new AES GCM cipher. Expects keys to be of // the correct size. // // Example: // // cd := &s3crypto.CipherData{ // Key: key, // "IV": iv, // } // cipher, err := s3crypto.newAESGCM(cd) func newAESGCM(cd CipherData) (Cipher, error) { block, err := aes.NewCipher(cd.Key) if err != nil { return nil, err } aesgcm, err := cipher.NewGCM(block) if err != nil { return nil, err } return &aesGCM{aesgcm, cd.IV}, nil } // Encrypt will encrypt the data using AES GCM // Tag will be included as the last 16 bytes of the slice func (c *aesGCM) Encrypt(src io.Reader) io.Reader { reader := &gcmEncryptReader{ encrypter: c.aead, nonce: c.nonce, src: src, } return reader } type gcmEncryptReader struct { encrypter cipher.AEAD nonce []byte src io.Reader buf *bytes.Buffer } func (reader *gcmEncryptReader) Read(data []byte) (int, error) { if reader.buf == nil { b, err := ioutil.ReadAll(reader.src) if err != nil { return len(b), err } b = reader.encrypter.Seal(b[:0], reader.nonce, b, nil) reader.buf = bytes.NewBuffer(b) } return reader.buf.Read(data) } // Decrypt will decrypt the data using AES GCM func (c *aesGCM) Decrypt(src io.Reader) io.Reader { return &gcmDecryptReader{ decrypter: c.aead, nonce: c.nonce, src: src, } } type gcmDecryptReader struct { decrypter cipher.AEAD nonce []byte src io.Reader buf *bytes.Buffer } func (reader *gcmDecryptReader) Read(data []byte) (int, error) { if reader.buf == nil { b, err := ioutil.ReadAll(reader.src) if err != nil { return len(b), err } b, err = reader.decrypter.Open(b[:0], reader.nonce, b, nil) if err != nil { return len(b), err } reader.buf = bytes.NewBuffer(b) } return reader.buf.Read(data) } aws-sdk-go-1.4.22/service/s3/s3crypto/aes_gcm_content_cipher.go000066400000000000000000000034201300374646400243460ustar00rootroot00000000000000package s3crypto import ( "io" ) const ( gcmKeySize = 32 gcmNonceSize = 12 ) type gcmContentCipherBuilder struct { generator CipherDataGenerator } // AESGCMContentCipherBuilder returns a new encryption only mode structure with a specific cipher // for the master key func AESGCMContentCipherBuilder(generator CipherDataGenerator) ContentCipherBuilder { return gcmContentCipherBuilder{generator} } func (builder gcmContentCipherBuilder) ContentCipher() (ContentCipher, error) { cd, err := builder.generator.GenerateCipherData(gcmKeySize, gcmNonceSize) if err != nil { return nil, err } return newAESGCMContentCipher(cd) } func newAESGCMContentCipher(cd CipherData) (ContentCipher, error) { cd.CEKAlgorithm = AESGCMNoPadding cd.TagLength = "128" cipher, err := newAESGCM(cd) if err != nil { return nil, err } return &aesGCMContentCipher{ CipherData: cd, Cipher: cipher, }, nil } // AESGCMContentCipher will use AES GCM for the main cipher. type aesGCMContentCipher struct { CipherData CipherData Cipher Cipher } // EncryptContents will generate a random key and iv and encrypt the data using cbc func (cc *aesGCMContentCipher) EncryptContents(src io.Reader) (io.Reader, error) { return cc.Cipher.Encrypt(src), nil } // DecryptContents will use the symmetric key provider to instantiate a new GCM cipher. // We grab a decrypt reader from gcm and wrap it in a CryptoReadCloser. The only error // expected here is when the key or iv is of invalid length. func (cc *aesGCMContentCipher) DecryptContents(src io.ReadCloser) (io.ReadCloser, error) { reader := cc.Cipher.Decrypt(src) return &CryptoReadCloser{Body: src, Decrypter: reader}, nil } // GetCipherData returns cipher data func (cc aesGCMContentCipher) GetCipherData() CipherData { return cc.CipherData } aws-sdk-go-1.4.22/service/s3/s3crypto/aes_gcm_content_cipher_test.go000066400000000000000000000010401300374646400254010ustar00rootroot00000000000000package s3crypto_test import ( "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/service/s3/s3crypto" ) func TestAESGCMContentCipherBuilder(t *testing.T) { generator := mockGenerator{} builder := s3crypto.AESGCMContentCipherBuilder(generator) assert.NotNil(t, builder) } func TestAESGCMContentCipherNewEncryptor(t *testing.T) { generator := mockGenerator{} builder := s3crypto.AESGCMContentCipherBuilder(generator) cipher, err := builder.ContentCipher() assert.NoError(t, err) assert.NotNil(t, cipher) } aws-sdk-go-1.4.22/service/s3/s3crypto/aes_gcm_test.go000066400000000000000000000060031300374646400223210ustar00rootroot00000000000000package s3crypto import ( "bytes" "encoding/hex" "io/ioutil" "testing" "github.com/stretchr/testify/assert" ) // AES GCM func TestAES_GCM_NIST_gcmEncryptExtIV256_PTLen_128_Test_0(t *testing.T) { iv, _ := hex.DecodeString("0d18e06c7c725ac9e362e1ce") key, _ := hex.DecodeString("31bdadd96698c204aa9ce1448ea94ae1fb4a9a0b3c9d773b51bb1822666b8f22") plaintext, _ := hex.DecodeString("2db5168e932556f8089a0622981d017d") expected, _ := hex.DecodeString("fa4362189661d163fcd6a56d8bf0405ad636ac1bbedd5cc3ee727dc2ab4a9489") tag, _ := hex.DecodeString("d636ac1bbedd5cc3ee727dc2ab4a9489") aesgcmTest(t, iv, key, plaintext, expected, tag) } func TestAES_GCM_NIST_gcmEncryptExtIV256_PTLen_104_Test_3(t *testing.T) { iv, _ := hex.DecodeString("4742357c335913153ff0eb0f") key, _ := hex.DecodeString("e5a0eb92cc2b064e1bc80891faf1fab5e9a17a9c3a984e25416720e30e6c2b21") plaintext, _ := hex.DecodeString("8499893e16b0ba8b007d54665a") expected, _ := hex.DecodeString("eb8e6175f1fe38eb1acf95fd5188a8b74bb74fda553e91020a23deed45") tag, _ := hex.DecodeString("88a8b74bb74fda553e91020a23deed45") aesgcmTest(t, iv, key, plaintext, expected, tag) } func TestAES_GCM_NIST_gcmEncryptExtIV256_PTLen_256_Test_6(t *testing.T) { iv, _ := hex.DecodeString("a291484c3de8bec6b47f525f") key, _ := hex.DecodeString("37f39137416bafde6f75022a7a527cc593b6000a83ff51ec04871a0ff5360e4e") plaintext, _ := hex.DecodeString("fafd94cede8b5a0730394bec68a8e77dba288d6ccaa8e1563a81d6e7ccc7fc97") expected, _ := hex.DecodeString("44dc868006b21d49284016565ffb3979cc4271d967628bf7cdaf86db888e92e501a2b578aa2f41ec6379a44a31cc019c") tag, _ := hex.DecodeString("01a2b578aa2f41ec6379a44a31cc019c") aesgcmTest(t, iv, key, plaintext, expected, tag) } func TestAES_GCM_NIST_gcmEncryptExtIV256_PTLen_408_Test_8(t *testing.T) { iv, _ := hex.DecodeString("92f258071d79af3e63672285") key, _ := hex.DecodeString("595f259c55abe00ae07535ca5d9b09d6efb9f7e9abb64605c337acbd6b14fc7e") plaintext, _ := hex.DecodeString("a6fee33eb110a2d769bbc52b0f36969c287874f665681477a25fc4c48015c541fbe2394133ba490a34ee2dd67b898177849a91") expected, _ := hex.DecodeString("bbca4a9e09ae9690c0f6f8d405e53dccd666aa9c5fa13c8758bc30abe1ddd1bcce0d36a1eaaaaffef20cd3c5970b9673f8a65c26ccecb9976fd6ac9c2c0f372c52c821") tag, _ := hex.DecodeString("26ccecb9976fd6ac9c2c0f372c52c821") aesgcmTest(t, iv, key, plaintext, expected, tag) } func aesgcmTest(t *testing.T, iv, key, plaintext, expected, tag []byte) { cd := CipherData{ Key: key, IV: iv, } gcm, err := newAESGCM(cd) assert.NoError(t, err) cipherdata := gcm.Encrypt(bytes.NewReader(plaintext)) ciphertext, err := ioutil.ReadAll(cipherdata) assert.NoError(t, err) // splitting tag and ciphertext etag := ciphertext[len(ciphertext)-16:] assert.Equal(t, etag, tag) assert.Equal(t, len(ciphertext), len(expected)) assert.Equal(t, ciphertext, expected) data := gcm.Decrypt(bytes.NewReader(ciphertext)) assert.NoError(t, err) text, err := ioutil.ReadAll(data) assert.NoError(t, err) assert.Equal(t, len(text), len(plaintext)) assert.Equal(t, text, plaintext) } aws-sdk-go-1.4.22/service/s3/s3crypto/cipher.go000066400000000000000000000016451300374646400211450ustar00rootroot00000000000000package s3crypto import ( "io" ) // Cipher interface allows for either encryption and decryption of an object type Cipher interface { Encrypter Decrypter } // Encrypter interface with only the encrypt method type Encrypter interface { Encrypt(io.Reader) io.Reader } // Decrypter interface with only the decrypt method type Decrypter interface { Decrypt(io.Reader) io.Reader } // CryptoReadCloser handles closing of the body and allowing reads from the decrypted // content. type CryptoReadCloser struct { Body io.ReadCloser Decrypter io.Reader isClosed bool } // Close lets the CryptoReadCloser satisfy io.ReadCloser interface func (rc *CryptoReadCloser) Close() error { rc.isClosed = true return rc.Body.Close() } // Read lets the CryptoReadCloser satisfy io.ReadCloser interface func (rc *CryptoReadCloser) Read(b []byte) (int, error) { if rc.isClosed { return 0, io.EOF } return rc.Decrypter.Read(b) } aws-sdk-go-1.4.22/service/s3/s3crypto/cipher_builder.go000066400000000000000000000015001300374646400226410ustar00rootroot00000000000000package s3crypto import "io" // ContentCipherBuilder is a builder interface that builds // ciphers for each request. type ContentCipherBuilder interface { ContentCipher() (ContentCipher, error) } // ContentCipher deals with encrypting and decrypting content type ContentCipher interface { EncryptContents(io.Reader) (io.Reader, error) DecryptContents(io.ReadCloser) (io.ReadCloser, error) GetCipherData() CipherData } // CipherData is used for content encryption. It used for storing the // metadata of the encrypted content. type CipherData struct { Key []byte IV []byte WrapAlgorithm string CEKAlgorithm string TagLength string MaterialDescription MaterialDescription // EncryptedKey should be populated when calling GenerateCipherData EncryptedKey []byte } aws-sdk-go-1.4.22/service/s3/s3crypto/cipher_test.go000066400000000000000000000013751300374646400222040ustar00rootroot00000000000000package s3crypto_test import ( "io/ioutil" "strings" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/service/s3/s3crypto" ) func TestCryptoReadCloserRead(t *testing.T) { expectedStr := "HELLO WORLD " str := strings.NewReader(expectedStr) rc := &s3crypto.CryptoReadCloser{Body: ioutil.NopCloser(str), Decrypter: str} b, err := ioutil.ReadAll(rc) assert.NoError(t, err) assert.Equal(t, expectedStr, string(b)) } func TestCryptoReadCloserClose(t *testing.T) { data := "HELLO WORLD " expectedStr := "" str := strings.NewReader(data) rc := &s3crypto.CryptoReadCloser{Body: ioutil.NopCloser(str), Decrypter: str} rc.Close() b, err := ioutil.ReadAll(rc) assert.NoError(t, err) assert.Equal(t, expectedStr, string(b)) } aws-sdk-go-1.4.22/service/s3/s3crypto/cipher_util.go000066400000000000000000000042041300374646400221740ustar00rootroot00000000000000package s3crypto import ( "encoding/base64" "strconv" "github.com/aws/aws-sdk-go/aws/awserr" ) func (client *DecryptionClient) contentCipherFromEnvelope(env Envelope) (ContentCipher, error) { wrap, err := client.wrapFromEnvelope(env) if err != nil { return nil, err } return client.cekFromEnvelope(env, wrap) } func (client *DecryptionClient) wrapFromEnvelope(env Envelope) (CipherDataDecrypter, error) { f, ok := client.WrapRegistry[env.WrapAlg] if !ok || f == nil { return nil, awserr.New( "InvalidWrapAlgorithmError", "wrap algorithm isn't supported, "+env.WrapAlg, nil, ) } return f(env) } // AESGCMNoPadding is the constant value that is used to specify // the CEK algorithm consiting of AES GCM with no padding. const AESGCMNoPadding = "AES/GCM/NoPadding" func (client *DecryptionClient) cekFromEnvelope(env Envelope, decrypter CipherDataDecrypter) (ContentCipher, error) { f, ok := client.CEKRegistry[env.CEKAlg] if !ok || f == nil { return nil, awserr.New( "InvalidCEKAlgorithmError", "cek algorithm isn't supported, "+env.CEKAlg, nil, ) } key, err := base64.StdEncoding.DecodeString(env.CipherKey) if err != nil { return nil, err } iv, err := base64.StdEncoding.DecodeString(env.IV) if err != nil { return nil, err } key, err = decrypter.DecryptKey(key) if err != nil { return nil, err } cd := CipherData{ Key: key, IV: iv, } return f(cd) } func encodeMeta(reader hashReader, cd CipherData) (Envelope, error) { iv := base64.StdEncoding.EncodeToString(cd.IV) key := base64.StdEncoding.EncodeToString(cd.EncryptedKey) md5 := reader.GetValue() contentLength := reader.GetContentLength() md5Str := base64.StdEncoding.EncodeToString(md5) matdesc, err := cd.MaterialDescription.encodeDescription() if err != nil { return Envelope{}, err } return Envelope{ CipherKey: key, IV: iv, MatDesc: string(matdesc), WrapAlg: cd.WrapAlgorithm, CEKAlg: cd.CEKAlgorithm, TagLen: cd.TagLength, UnencryptedMD5: md5Str, UnencryptedContentLen: strconv.FormatInt(contentLength, 10), }, nil } aws-sdk-go-1.4.22/service/s3/s3crypto/cipher_util_test.go000066400000000000000000000136141300374646400232400ustar00rootroot00000000000000package s3crypto import ( "encoding/base64" "encoding/hex" "fmt" "net/http" "net/http/httptest" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/kms" ) func TestWrapFactory(t *testing.T) { c := DecryptionClient{ WrapRegistry: map[string]WrapEntry{ KMSWrap: (kmsKeyHandler{ kms: kms.New(unit.Session), }).decryptHandler, }, CEKRegistry: map[string]CEKEntry{ AESGCMNoPadding: newAESGCMContentCipher, }, } env := Envelope{ WrapAlg: KMSWrap, MatDesc: `{"kms_cmk_id":""}`, } wrap, err := c.wrapFromEnvelope(env) _, ok := wrap.(*kmsKeyHandler) assert.NoError(t, err) assert.NotNil(t, wrap) assert.True(t, ok) } func TestWrapFactoryErrorNoWrap(t *testing.T) { c := DecryptionClient{ WrapRegistry: map[string]WrapEntry{ KMSWrap: (kmsKeyHandler{ kms: kms.New(unit.Session), }).decryptHandler, }, CEKRegistry: map[string]CEKEntry{ AESGCMNoPadding: newAESGCMContentCipher, }, } env := Envelope{ WrapAlg: "none", MatDesc: `{"kms_cmk_id":""}`, } wrap, err := c.wrapFromEnvelope(env) assert.Error(t, err) assert.Nil(t, wrap) } func TestWrapFactoryCustomEntry(t *testing.T) { c := DecryptionClient{ WrapRegistry: map[string]WrapEntry{ "custom": (kmsKeyHandler{ kms: kms.New(unit.Session), }).decryptHandler, }, CEKRegistry: map[string]CEKEntry{ AESGCMNoPadding: newAESGCMContentCipher, }, } env := Envelope{ WrapAlg: "custom", MatDesc: `{"kms_cmk_id":""}`, } wrap, err := c.wrapFromEnvelope(env) assert.NoError(t, err) assert.NotNil(t, wrap) } func TestCEKFactory(t *testing.T) { key, _ := hex.DecodeString("31bdadd96698c204aa9ce1448ea94ae1fb4a9a0b3c9d773b51bb1822666b8f22") keyB64 := base64.URLEncoding.EncodeToString(key) ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { fmt.Fprintln(w, fmt.Sprintf("%s%s%s", `{"KeyId":"test-key-id","Plaintext":"`, keyB64, `"}`)) })) defer ts.Close() sess := unit.Session.Copy(&aws.Config{ MaxRetries: aws.Int(0), Endpoint: aws.String(ts.URL[7:]), DisableSSL: aws.Bool(true), S3ForcePathStyle: aws.Bool(true), Region: aws.String("us-west-2"), }) c := DecryptionClient{ WrapRegistry: map[string]WrapEntry{ KMSWrap: (kmsKeyHandler{ kms: kms.New(sess), }).decryptHandler, }, CEKRegistry: map[string]CEKEntry{ AESGCMNoPadding: newAESGCMContentCipher, }, } iv, err := hex.DecodeString("0d18e06c7c725ac9e362e1ce") assert.NoError(t, err) ivB64 := base64.URLEncoding.EncodeToString(iv) cipherKey, err := hex.DecodeString("31bdadd96698c204aa9ce1448ea94ae1fb4a9a0b3c9d773b51bb1822666b8f22") assert.NoError(t, err) cipherKeyB64 := base64.URLEncoding.EncodeToString(cipherKey) env := Envelope{ WrapAlg: KMSWrap, CEKAlg: AESGCMNoPadding, CipherKey: cipherKeyB64, IV: ivB64, MatDesc: `{"kms_cmk_id":""}`, } wrap, err := c.wrapFromEnvelope(env) cek, err := c.cekFromEnvelope(env, wrap) assert.NoError(t, err) assert.NotNil(t, cek) } func TestCEKFactoryNoCEK(t *testing.T) { key, _ := hex.DecodeString("31bdadd96698c204aa9ce1448ea94ae1fb4a9a0b3c9d773b51bb1822666b8f22") keyB64 := base64.URLEncoding.EncodeToString(key) ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { fmt.Fprintln(w, fmt.Sprintf("%s%s%s", `{"KeyId":"test-key-id","Plaintext":"`, keyB64, `"}`)) })) defer ts.Close() sess := unit.Session.Copy(&aws.Config{ MaxRetries: aws.Int(0), Endpoint: aws.String(ts.URL[7:]), DisableSSL: aws.Bool(true), S3ForcePathStyle: aws.Bool(true), Region: aws.String("us-west-2"), }) c := DecryptionClient{ WrapRegistry: map[string]WrapEntry{ KMSWrap: (kmsKeyHandler{ kms: kms.New(sess), }).decryptHandler, }, CEKRegistry: map[string]CEKEntry{ AESGCMNoPadding: newAESGCMContentCipher, }, } iv, err := hex.DecodeString("0d18e06c7c725ac9e362e1ce") assert.NoError(t, err) ivB64 := base64.URLEncoding.EncodeToString(iv) cipherKey, err := hex.DecodeString("31bdadd96698c204aa9ce1448ea94ae1fb4a9a0b3c9d773b51bb1822666b8f22") assert.NoError(t, err) cipherKeyB64 := base64.URLEncoding.EncodeToString(cipherKey) env := Envelope{ WrapAlg: KMSWrap, CEKAlg: "none", CipherKey: cipherKeyB64, IV: ivB64, MatDesc: `{"kms_cmk_id":""}`, } wrap, err := c.wrapFromEnvelope(env) cek, err := c.cekFromEnvelope(env, wrap) assert.Error(t, err) assert.Nil(t, cek) } func TestCEKFactoryCustomEntry(t *testing.T) { key, _ := hex.DecodeString("31bdadd96698c204aa9ce1448ea94ae1fb4a9a0b3c9d773b51bb1822666b8f22") keyB64 := base64.URLEncoding.EncodeToString(key) ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { fmt.Fprintln(w, fmt.Sprintf("%s%s%s", `{"KeyId":"test-key-id","Plaintext":"`, keyB64, `"}`)) })) defer ts.Close() sess := unit.Session.Copy(&aws.Config{ MaxRetries: aws.Int(0), Endpoint: aws.String(ts.URL[7:]), DisableSSL: aws.Bool(true), S3ForcePathStyle: aws.Bool(true), Region: aws.String("us-west-2"), }) c := DecryptionClient{ WrapRegistry: map[string]WrapEntry{ KMSWrap: (kmsKeyHandler{ kms: kms.New(sess), }).decryptHandler, }, CEKRegistry: map[string]CEKEntry{ "custom": newAESGCMContentCipher, }, } iv, err := hex.DecodeString("0d18e06c7c725ac9e362e1ce") assert.NoError(t, err) ivB64 := base64.URLEncoding.EncodeToString(iv) cipherKey, err := hex.DecodeString("31bdadd96698c204aa9ce1448ea94ae1fb4a9a0b3c9d773b51bb1822666b8f22") assert.NoError(t, err) cipherKeyB64 := base64.URLEncoding.EncodeToString(cipherKey) env := Envelope{ WrapAlg: KMSWrap, CEKAlg: "custom", CipherKey: cipherKeyB64, IV: ivB64, MatDesc: `{"kms_cmk_id":""}`, } wrap, err := c.wrapFromEnvelope(env) cek, err := c.cekFromEnvelope(env, wrap) assert.NoError(t, err) assert.NotNil(t, cek) } aws-sdk-go-1.4.22/service/s3/s3crypto/decryption_client.go000066400000000000000000000063641300374646400234140ustar00rootroot00000000000000package s3crypto import ( "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/kms" "github.com/aws/aws-sdk-go/service/s3" "github.com/aws/aws-sdk-go/service/s3/s3iface" ) // WrapEntry is builder that return a proper key decrypter and error type WrapEntry func(Envelope) (CipherDataDecrypter, error) // CEKEntry is a builder thatn returns a proper content decrypter and error type CEKEntry func(CipherData) (ContentCipher, error) // DecryptionClient is an S3 crypto client. By default the SDK will use Authentication mode which // will use KMS for key wrapping and AES GCM for content encryption. // AES GCM will load all data into memory. However, the rest of the content algorithms // do not load the entire contents into memory. type DecryptionClient struct { S3Client s3iface.S3API // LoadStrategy is used to load the metadata either from the metadata of the object // or from a separate file in s3. // // Defaults to our default load strategy. LoadStrategy LoadStrategy WrapRegistry map[string]WrapEntry CEKRegistry map[string]CEKEntry } // NewDecryptionClient instantiates a new S3 crypto client // // Example: // cmkID := "some key id to kms" // sess := session.New() // handler, err = s3crypto.NewKMSEncryptHandler(sess, cmkID, s3crypto.MaterialDescription{}) // if err != nil { // return err // } // svc := s3crypto.New(sess, s3crypto.AESGCMContentCipherBuilder(handler)) func NewDecryptionClient(prov client.ConfigProvider, options ...func(*DecryptionClient)) *DecryptionClient { s3client := s3.New(prov) client := &DecryptionClient{ S3Client: s3client, LoadStrategy: defaultV2LoadStrategy{ client: s3client, }, WrapRegistry: map[string]WrapEntry{ KMSWrap: (kmsKeyHandler{ kms: kms.New(prov), }).decryptHandler, }, CEKRegistry: map[string]CEKEntry{ AESGCMNoPadding: newAESGCMContentCipher, }, } for _, option := range options { option(client) } return client } // GetObjectRequest will make a request to s3 and retrieve the object. In this process // decryption will be done. The SDK only supports V2 reads of KMS and GCM. // // Example: // svc := s3crypto.New(session.New(),s3crypto.AESGCMContentCipherBuilder(handler)) // req, out := svc.GetObjectRequest(&s3.GetObjectInput { // Key: aws.String("testKey"), // Bucket: aws.String("testBucket"), // }) // err := req.Send() func (c *DecryptionClient) GetObjectRequest(input *s3.GetObjectInput) (*request.Request, *s3.GetObjectOutput) { req, out := c.S3Client.GetObjectRequest(input) req.Handlers.Unmarshal.PushBack(func(r *request.Request) { env, err := c.LoadStrategy.Load(r) if err != nil { r.Error = err out.Body.Close() return } // If KMS should return the correct CEK algorithm with the proper // KMS key provider cipher, err := c.contentCipherFromEnvelope(env) if err != nil { r.Error = err out.Body.Close() return } reader, err := cipher.DecryptContents(out.Body) if err != nil { r.Error = err out.Body.Close() return } out.Body = reader }) return req, out } // GetObject is a wrapper for GetObjectRequest func (c *DecryptionClient) GetObject(input *s3.GetObjectInput) (*s3.GetObjectOutput, error) { req, out := c.GetObjectRequest(input) return out, req.Send() } aws-sdk-go-1.4.22/service/s3/s3crypto/decryption_client_test.go000066400000000000000000000051601300374646400244440ustar00rootroot00000000000000package s3crypto_test import ( "bytes" "encoding/base64" "encoding/hex" "fmt" "io/ioutil" "net/http" "net/http/httptest" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/s3" "github.com/aws/aws-sdk-go/service/s3/s3crypto" ) func TestGetObject(t *testing.T) { key, _ := hex.DecodeString("31bdadd96698c204aa9ce1448ea94ae1fb4a9a0b3c9d773b51bb1822666b8f22") keyB64 := base64.URLEncoding.EncodeToString(key) ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { fmt.Fprintln(w, fmt.Sprintf("%s%s%s", `{"KeyId":"test-key-id","Plaintext":"`, keyB64, `"}`)) })) defer ts.Close() sess := unit.Session.Copy(&aws.Config{ MaxRetries: aws.Int(0), Endpoint: aws.String(ts.URL[7:]), DisableSSL: aws.Bool(true), S3ForcePathStyle: aws.Bool(true), Region: aws.String("us-west-2"), }) c := s3crypto.NewDecryptionClient(sess) assert.NotNil(t, c) input := &s3.GetObjectInput{ Key: aws.String("test"), Bucket: aws.String("test"), } req, out := c.GetObjectRequest(input) req.Handlers.Send.Clear() req.Handlers.Send.PushBack(func(r *request.Request) { iv, err := hex.DecodeString("0d18e06c7c725ac9e362e1ce") assert.NoError(t, err) b, err := hex.DecodeString("fa4362189661d163fcd6a56d8bf0405ad636ac1bbedd5cc3ee727dc2ab4a9489") assert.NoError(t, err) r.HTTPResponse = &http.Response{ StatusCode: 200, Header: http.Header{ http.CanonicalHeaderKey("x-amz-meta-x-amz-key-v2"): []string{"SpFRES0JyU8BLZSKo51SrwILK4lhtZsWiMNjgO4WmoK+joMwZPG7Hw=="}, http.CanonicalHeaderKey("x-amz-meta-x-amz-iv"): []string{base64.URLEncoding.EncodeToString(iv)}, http.CanonicalHeaderKey("x-amz-meta-x-amz-matdesc"): []string{`{"kms_cmk_id":"arn:aws:kms:us-east-1:172259396726:key/a22a4b30-79f4-4b3d-bab4-a26d327a231b"}`}, http.CanonicalHeaderKey("x-amz-meta-x-amz-wrap-alg"): []string{s3crypto.KMSWrap}, http.CanonicalHeaderKey("x-amz-meta-x-amz-cek-alg"): []string{s3crypto.AESGCMNoPadding}, http.CanonicalHeaderKey("x-amz-meta-x-amz-tag-len"): []string{"128"}, }, Body: ioutil.NopCloser(bytes.NewBuffer(b)), } out.Metadata = make(map[string]*string) out.Metadata["x-amz-wrap-alg"] = aws.String(s3crypto.KMSWrap) }) err := req.Send() assert.NoError(t, err) b, err := ioutil.ReadAll(out.Body) assert.NoError(t, err) expected, err := hex.DecodeString("2db5168e932556f8089a0622981d017d") assert.NoError(t, err) assert.Equal(t, len(expected), len(b)) assert.Equal(t, expected, b) } aws-sdk-go-1.4.22/service/s3/s3crypto/doc.go000066400000000000000000000056721300374646400204440ustar00rootroot00000000000000/* Package s3crypto provides encryption to S3 using KMS and AES GCM. Keyproviders are interfaces that handle masterkeys. Masterkeys are used to encrypt and decrypt the randomly generated cipher keys. The SDK currently uses KMS to do this. A user does not need to provide a master key since all that information is hidden in KMS. Modes are interfaces that handle content encryption and decryption. It is an abstraction layer that instantiates the ciphers. If content is being encrypted we generate the key and iv of the cipher. For decryption, we use the metadata stored either on the object or an instruction file object to decrypt the contents. Ciphers are interfaces that handle encryption and decryption of data. This may be key wrap ciphers or content ciphers. Creating an S3 cryptography client cmkID := "" sess := session.New() // Create the KeyProvider handler := s3crypto.NewKMSKeyGenerator(kms.New(sess), cmkID) // Create an encryption and decryption client // We need to pass the session here so S3 can use it. In addition, any decryption that // occurs will use the KMS client. svc := s3crypto.NewEncryptionClient(sess, s3crypto.AESGCMContentCipherBuilder(handler)) svc := s3crypto.NewDecryptionClient(sess) Configuration of the S3 cryptography client cfg := s3crypto.EncryptionConfig{ // Save instruction files to separate objects SaveStrategy: NewS3SaveStrategy(session.New(), ""), // Change instruction file suffix to .example InstructionFileSuffix: ".example", // Set temp folder path TempFolderPath: "/path/to/tmp/folder/", // Any content less than the minimum file size will use memory // instead of writing the contents to a temp file. MinFileSize: int64(1024 * 1024 * 1024), } The default SaveStrategy is to the object's header. The InstructionFileSuffix defaults to .instruction. Careful here though, if you do this, be sure you know what that suffix is in grabbing data. All requests will look for fooKey.example instead of fooKey.instruction. This suffix only affects gets and not puts. Put uses the keyprovider's suffix. Registration of new wrap or cek algorithms are also supported by the SDK. Let's say we want to support `AES Wrap` and `AES CTR`. Let's assume we have already defined the functionality. svc := s3crypto.NewDecryptionClient(sess) svc.WrapRegistry["AESWrap"] = NewAESWrap svc.CEKRegistry["AES/CTR/NoPadding"] = NewAESCTR We have now registered these new algorithms to the decryption client. When the client calls `GetObject` and sees the wrap as `AESWrap` then it'll use that wrap algorithm. This is also true for `AES/CTR/NoPadding`. For encryption adding a custom content cipher builder and key handler will allow for encryption of custom defined ciphers. // Our customer wrap algorith, AESWrap handler := NewAESWrap(key, iv) // Our customer content cipher builder, AESCTRContentCipherBuilder svc := s3crypto.NewEncryptionClient(sess, NewAESCTRContentCipherBuilder(handler)) */ package s3crypto aws-sdk-go-1.4.22/service/s3/s3crypto/encryption_client.go000066400000000000000000000072301300374646400234170ustar00rootroot00000000000000package s3crypto import ( "encoding/hex" "io" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/s3" "github.com/aws/aws-sdk-go/service/s3/s3iface" ) // DefaultMinFileSize is used to check whether we want to write to a temp file // or store the data in memory. const DefaultMinFileSize = 1024 * 512 * 5 // EncryptionClient is an S3 crypto client. By default the SDK will use Authentication mode which // will use KMS for key wrapping and AES GCM for content encryption. // AES GCM will load all data into memory. However, the rest of the content algorithms // do not load the entire contents into memory. type EncryptionClient struct { S3Client s3iface.S3API ContentCipherBuilder ContentCipherBuilder // SaveStrategy will dictate where the envelope is saved. // // Defaults to the object's metadata SaveStrategy SaveStrategy // TempFolderPath is used to store temp files when calling PutObject. // Temporary files are needed to compute the X-Amz-Content-Sha256 header. TempFolderPath string // MinFileSize is the minimum size for the content to write to a // temporary file instead of using memory. MinFileSize int64 } // NewEncryptionClient instantiates a new S3 crypto client // // Example: // cmkID := "arn:aws:kms:region:000000000000:key/00000000-0000-0000-0000-000000000000" // sess := session.New() // handler := s3crypto.NewKMSKeyGenerator(kms.New(sess), cmkID) // svc := s3crypto.New(sess, s3crypto.AESGCMContentCipherBuilder(handler)) func NewEncryptionClient(prov client.ConfigProvider, builder ContentCipherBuilder, options ...func(*EncryptionClient)) *EncryptionClient { client := &EncryptionClient{ S3Client: s3.New(prov), ContentCipherBuilder: builder, SaveStrategy: HeaderV2SaveStrategy{}, MinFileSize: DefaultMinFileSize, } for _, option := range options { option(client) } return client } // PutObjectRequest creates a temp file to encrypt the contents into. It then streams // that data to S3. // // Example: // svc := s3crypto.New(session.New(), s3crypto.AESGCMContentCipherBuilder(handler)) // req, out := svc.PutObjectRequest(&s3.PutObjectInput { // Key: aws.String("testKey"), // Bucket: aws.String("testBucket"), // Body: bytes.NewBuffer("test data"), // }) // err := req.Send() func (c *EncryptionClient) PutObjectRequest(input *s3.PutObjectInput) (*request.Request, *s3.PutObjectOutput) { req, out := c.S3Client.PutObjectRequest(input) // Get Size of file n, err := input.Body.Seek(0, 2) if err != nil { req.Error = err return req, out } input.Body.Seek(0, 0) dst, err := getWriterStore(req, c.TempFolderPath, n >= c.MinFileSize) if err != nil { req.Error = err return req, out } encryptor, err := c.ContentCipherBuilder.ContentCipher() req.Handlers.Build.PushFront(func(r *request.Request) { if err != nil { r.Error = err return } md5 := newMD5Reader(input.Body) sha := newSHA256Writer(dst) reader, err := encryptor.EncryptContents(md5) if err != nil { r.Error = err return } _, err = io.Copy(sha, reader) if err != nil { r.Error = err return } data := encryptor.GetCipherData() env, err := encodeMeta(md5, data) if err != nil { r.Error = err return } shaHex := hex.EncodeToString(sha.GetValue()) req.HTTPRequest.Header.Set("X-Amz-Content-Sha256", shaHex) dst.Seek(0, 0) input.Body = dst err = c.SaveStrategy.Save(env, r) r.Error = err }) return req, out } // PutObject is a wrapper for PutObjectRequest func (c *EncryptionClient) PutObject(input *s3.PutObjectInput) (*s3.PutObjectOutput, error) { req, out := c.PutObjectRequest(input) return out, req.Send() } aws-sdk-go-1.4.22/service/s3/s3crypto/encryption_client_test.go000066400000000000000000000033431300374646400244570ustar00rootroot00000000000000package s3crypto_test import ( "bytes" "errors" "io/ioutil" "net/http" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/kms" "github.com/aws/aws-sdk-go/service/s3" "github.com/aws/aws-sdk-go/service/s3/s3crypto" ) func TestDefaultConfigValues(t *testing.T) { sess := unit.Session.Copy(&aws.Config{ MaxRetries: aws.Int(0), S3ForcePathStyle: aws.Bool(true), Region: aws.String("us-west-2"), }) svc := kms.New(sess) handler := s3crypto.NewKMSKeyGenerator(svc, "testid") c := s3crypto.NewEncryptionClient(sess, s3crypto.AESGCMContentCipherBuilder(handler)) assert.NotNil(t, c) assert.NotNil(t, c.ContentCipherBuilder) assert.NotNil(t, c.SaveStrategy) } func TestPutObject(t *testing.T) { size := 1024 * 1024 data := make([]byte, size) expected := bytes.Repeat([]byte{1}, size) generator := mockGenerator{} cb := mockCipherBuilder{generator} sess := unit.Session.Copy(&aws.Config{ MaxRetries: aws.Int(0), S3ForcePathStyle: aws.Bool(true), Region: aws.String("us-west-2"), }) c := s3crypto.NewEncryptionClient(sess, cb) assert.NotNil(t, c) input := &s3.PutObjectInput{ Key: aws.String("test"), Bucket: aws.String("test"), Body: bytes.NewReader(data), } req, _ := c.PutObjectRequest(input) req.Handlers.Send.Clear() req.Handlers.Send.PushBack(func(r *request.Request) { r.Error = errors.New("stop") r.HTTPResponse = &http.Response{ StatusCode: 200, } }) err := req.Send() assert.Equal(t, "stop", err.Error()) b, err := ioutil.ReadAll(req.HTTPRequest.Body) assert.NoError(t, err) assert.Equal(t, expected, b) } aws-sdk-go-1.4.22/service/s3/s3crypto/envelope.go000066400000000000000000000033031300374646400215010ustar00rootroot00000000000000package s3crypto // DefaultInstructionKeySuffix is appended to the end of the instruction file key when // grabbing or saving to S3 const DefaultInstructionKeySuffix = ".instruction" const ( metaHeader = "x-amz-meta" keyV1Header = "x-amz-key" keyV2Header = keyV1Header + "-v2" ivHeader = "x-amz-iv" matDescHeader = "x-amz-matdesc" cekAlgorithmHeader = "x-amz-cek-alg" wrapAlgorithmHeader = "x-amz-wrap-alg" tagLengthHeader = "x-amz-tag-len" unencryptedMD5Header = "x-amz-unencrypted-content-md5" unencryptedContentLengthHeader = "x-amz-unencrypted-content-length" ) // Envelope encryption starts off by generating a random symmetric key using // AES GCM. The SDK generates a random IV based off the encryption cipher // chosen. The master key that was provided, whether by the user or KMS, will be used // to encrypt the randomly generated symmetric key and base64 encode the iv. This will // allow for decryption of that same data later. type Envelope struct { // IV is the randomly generated IV base64 encoded. IV string `json:"x-amz-iv"` // CipherKey is the randomly generated cipher key. CipherKey string `json:"x-amz-key-v2, x-amz-key"` // MaterialDesc is a description to distinguish from other envelopes. MatDesc string `json:"x-amz-matdesc"` WrapAlg string `json:"x-amz-wrap-alg"` CEKAlg string `json:"x-amz-cek-alg"` TagLen string `json:"x-amz-tag-len"` UnencryptedMD5 string `json:"x-amz-unencrypted-content-md5"` UnencryptedContentLen string `json:"x-amz-unencrypted-content-length"` } aws-sdk-go-1.4.22/service/s3/s3crypto/hash_io.go000066400000000000000000000022361300374646400213020ustar00rootroot00000000000000package s3crypto import ( "crypto/md5" "crypto/sha256" "hash" "io" ) // hashReader is used for calculating SHA256 when following the sigv4 specification. // Additionally this used for calculating the unencrypted MD5. type hashReader interface { GetValue() []byte GetContentLength() int64 } type sha256Writer struct { sha256 []byte hash hash.Hash out io.Writer } func newSHA256Writer(f io.Writer) *sha256Writer { return &sha256Writer{hash: sha256.New(), out: f} } func (r *sha256Writer) Write(b []byte) (int, error) { r.hash.Write(b) return r.out.Write(b) } func (r *sha256Writer) GetValue() []byte { return r.hash.Sum(nil) } type md5Reader struct { contentLength int64 hash hash.Hash body io.Reader } func newMD5Reader(body io.Reader) *md5Reader { return &md5Reader{hash: md5.New(), body: body} } func (w *md5Reader) Read(b []byte) (int, error) { n, err := w.body.Read(b) if err != nil && err != io.EOF { return n, err } w.contentLength += int64(n) w.hash.Write(b[:n]) return n, err } func (w *md5Reader) GetValue() []byte { return w.hash.Sum(nil) } func (w *md5Reader) GetContentLength() int64 { return w.contentLength } aws-sdk-go-1.4.22/service/s3/s3crypto/hash_io_test.go000066400000000000000000000011751300374646400223420ustar00rootroot00000000000000package s3crypto import ( "bytes" "encoding/hex" "testing" "github.com/stretchr/testify/assert" ) // From Go stdlib encoding/sha256 test cases func TestSHA256(t *testing.T) { sha := newSHA256Writer(nil) expected, _ := hex.DecodeString("e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855") b := sha.GetValue() assert.Equal(t, expected, b) } func TestSHA256_Case2(t *testing.T) { sha := newSHA256Writer(bytes.NewBuffer([]byte{})) sha.Write([]byte("hello")) expected, _ := hex.DecodeString("2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824") b := sha.GetValue() assert.Equal(t, expected, b) } aws-sdk-go-1.4.22/service/s3/s3crypto/helper.go000066400000000000000000000026641300374646400211540ustar00rootroot00000000000000package s3crypto import ( "errors" "io" "io/ioutil" "os" "path/filepath" "github.com/aws/aws-sdk-go/aws/request" ) func getWriterStore(req *request.Request, path string, useTempFile bool) (io.ReadWriteSeeker, error) { if !useTempFile { return &bytesReadWriteSeeker{}, nil } // Create temp file to be used later for calculating the SHA256 header f, err := ioutil.TempFile(path, "") if err != nil { return nil, err } req.Handlers.Send.PushBack(func(r *request.Request) { // Close the temp file and cleanup f.Close() fpath := filepath.Join(path, f.Name()) os.Remove(fpath) }) return f, nil } type bytesReadWriteSeeker struct { buf []byte i int64 } // Copied from Go stdlib bytes.Reader func (ws *bytesReadWriteSeeker) Read(b []byte) (int, error) { if ws.i >= int64(len(ws.buf)) { return 0, io.EOF } n := copy(b, ws.buf[ws.i:]) ws.i += int64(n) return n, nil } func (ws *bytesReadWriteSeeker) Write(b []byte) (int, error) { ws.buf = append(ws.buf, b...) return len(b), nil } // Copied from Go stdlib bytes.Reader func (ws *bytesReadWriteSeeker) Seek(offset int64, whence int) (int64, error) { var abs int64 switch whence { case 0: abs = offset case 1: abs = int64(ws.i) + offset case 2: abs = int64(len(ws.buf)) + offset default: return 0, errors.New("bytes.Reader.Seek: invalid whence") } if abs < 0 { return 0, errors.New("bytes.Reader.Seek: negative position") } ws.i = abs return abs, nil } aws-sdk-go-1.4.22/service/s3/s3crypto/helper_test.go000066400000000000000000000017441300374646400222110ustar00rootroot00000000000000package s3crypto import ( "testing" "github.com/stretchr/testify/assert" ) func TestBytesReadWriteSeeker_Read(t *testing.T) { b := &bytesReadWriteSeeker{[]byte{1, 2, 3}, 0} expected := []byte{1, 2, 3} buf := make([]byte, 3) n, err := b.Read(buf) assert.NoError(t, err) assert.Equal(t, 3, n) assert.Equal(t, expected, buf) } func TestBytesReadWriteSeeker_Write(t *testing.T) { b := &bytesReadWriteSeeker{} expected := []byte{1, 2, 3} buf := make([]byte, 3) n, err := b.Write([]byte{1, 2, 3}) assert.NoError(t, err) assert.Equal(t, 3, n) n, err = b.Read(buf) assert.NoError(t, err) assert.Equal(t, 3, n) assert.Equal(t, expected, buf) } func TestBytesReadWriteSeeker_Seek(t *testing.T) { b := &bytesReadWriteSeeker{[]byte{1, 2, 3}, 0} expected := []byte{2, 3} m, err := b.Seek(1, 0) assert.NoError(t, err) assert.Equal(t, 1, int(m)) buf := make([]byte, 3) n, err := b.Read(buf) assert.NoError(t, err) assert.Equal(t, 2, n) assert.Equal(t, expected, buf[:n]) } aws-sdk-go-1.4.22/service/s3/s3crypto/key_handler.go000066400000000000000000000010401300374646400221450ustar00rootroot00000000000000package s3crypto import "crypto/rand" // CipherDataGenerator handles generating proper key and IVs of proper size for the // content cipher. CipherDataGenerator will also encrypt the key and store it in // the CipherData. type CipherDataGenerator interface { GenerateCipherData(int, int) (CipherData, error) } // CipherDataDecrypter is a handler to decrypt keys from the envelope. type CipherDataDecrypter interface { DecryptKey([]byte) ([]byte, error) } func generateBytes(n int) []byte { b := make([]byte, n) rand.Read(b) return b } aws-sdk-go-1.4.22/service/s3/s3crypto/key_handler_test.go000066400000000000000000000004261300374646400232130ustar00rootroot00000000000000package s3crypto import ( "testing" "github.com/stretchr/testify/assert" ) func TestGenerateBytes(t *testing.T) { b := generateBytes(5) assert.Equal(t, 5, len(b)) b = generateBytes(0) assert.Equal(t, 0, len(b)) b = generateBytes(1024) assert.Equal(t, 1024, len(b)) } aws-sdk-go-1.4.22/service/s3/s3crypto/kms_key_handler.go000066400000000000000000000065451300374646400230360ustar00rootroot00000000000000package s3crypto import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/service/kms" "github.com/aws/aws-sdk-go/service/kms/kmsiface" ) const ( // KMSWrap is a constant used during decryption to build a KMS key handler. KMSWrap = "kms" ) // kmsKeyHandler will make calls to KMS to get the masterkey type kmsKeyHandler struct { kms kmsiface.KMSAPI cmkID *string CipherData } // NewKMSKeyGenerator builds a new KMS key provider using the customer key ID and material // description. // // Example: // sess := session.New(&aws.Config{}) // cmkID := "arn to key" // matdesc := s3crypto.MaterialDescription{} // handler := s3crypto.NewKMSKeyGenerator(kms.New(sess), cmkID) func NewKMSKeyGenerator(kmsClient kmsiface.KMSAPI, cmkID string) CipherDataGenerator { return NewKMSKeyGeneratorWithMatDesc(kmsClient, cmkID, MaterialDescription{}) } // NewKMSKeyGeneratorWithMatDesc builds a new KMS key provider using the customer key ID and material // description. // // Example: // sess := session.New(&aws.Config{}) // cmkID := "arn to key" // matdesc := s3crypto.MaterialDescription{} // handler, err := s3crypto.NewKMSEncryptHandler(kms.New(sess), cmkID, matdesc) func NewKMSKeyGeneratorWithMatDesc(kmsClient kmsiface.KMSAPI, cmkID string, matdesc MaterialDescription) CipherDataGenerator { if matdesc == nil { matdesc = MaterialDescription{} } matdesc["kms_cmk_id"] = &cmkID // These values are read only making them thread safe kp := &kmsKeyHandler{ kms: kmsClient, cmkID: &cmkID, } // These values are read only making them thread safe kp.CipherData.WrapAlgorithm = KMSWrap kp.CipherData.MaterialDescription = matdesc return kp } // decryptHandler initializes a KMS keyprovider with a material description. This // is used with Decrypting kms content, due to the cmkID being in the material description. func (kp kmsKeyHandler) decryptHandler(env Envelope) (CipherDataDecrypter, error) { m := MaterialDescription{} err := m.decodeDescription([]byte(env.MatDesc)) if err != nil { return nil, err } cmkID, ok := m["kms_cmk_id"] if !ok { return nil, awserr.New("MissingCMKIDError", "Material description is missing CMK ID", nil) } kp.CipherData.MaterialDescription = m kp.cmkID = cmkID kp.WrapAlgorithm = KMSWrap return &kp, nil } // DecryptKey makes a call to KMS to decrypt the key. func (kp *kmsKeyHandler) DecryptKey(key []byte) ([]byte, error) { out, err := kp.kms.Decrypt(&kms.DecryptInput{ EncryptionContext: map[string]*string(kp.CipherData.MaterialDescription), CiphertextBlob: key, GrantTokens: []*string{}, }) if err != nil { return nil, err } return out.Plaintext, nil } // GenerateCipherData makes a call to KMS to generate a data key, Upon making // the call, it also sets the encrypted key. func (kp *kmsKeyHandler) GenerateCipherData(keySize, ivSize int) (CipherData, error) { out, err := kp.kms.GenerateDataKey(&kms.GenerateDataKeyInput{ EncryptionContext: kp.CipherData.MaterialDescription, KeyId: kp.cmkID, KeySpec: aws.String("AES_256"), }) if err != nil { return CipherData{}, err } iv := generateBytes(ivSize) cd := CipherData{ Key: out.Plaintext, IV: iv, WrapAlgorithm: KMSWrap, MaterialDescription: kp.CipherData.MaterialDescription, EncryptedKey: out.CiphertextBlob, } return cd, nil } aws-sdk-go-1.4.22/service/s3/s3crypto/kms_key_handler_test.go000066400000000000000000000070271300374646400240710ustar00rootroot00000000000000package s3crypto import ( "encoding/base64" "encoding/hex" "fmt" "net/http" "net/http/httptest" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/kms" ) func TestBuildKMSEncryptHandler(t *testing.T) { svc := kms.New(unit.Session) handler := NewKMSKeyGenerator(svc, "testid") assert.NotNil(t, handler) } func TestBuildKMSEncryptHandlerWithMatDesc(t *testing.T) { svc := kms.New(unit.Session) handler := NewKMSKeyGeneratorWithMatDesc(svc, "testid", MaterialDescription{ "Testing": aws.String("123"), }) assert.NotNil(t, handler) kmsHandler := handler.(*kmsKeyHandler) expected := MaterialDescription{ "kms_cmk_id": aws.String("testid"), "Testing": aws.String("123"), } assert.Equal(t, expected, kmsHandler.CipherData.MaterialDescription) } func TestKMSGenerateCipherData(t *testing.T) { ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { fmt.Fprintln(w, `{"CiphertextBlob":"AQEDAHhqBCCY1MSimw8gOGcUma79cn4ANvTtQyv9iuBdbcEF1QAAAH4wfAYJKoZIhvcNAQcGoG8wbQIBADBoBgkqhkiG9w0BBwEwHgYJYIZIAWUDBAEuMBEEDJ6IcN5E4wVbk38MNAIBEIA7oF1E3lS7FY9DkoxPc/UmJsEwHzL82zMqoLwXIvi8LQHr8If4Lv6zKqY8u0+JRgSVoqCvZDx3p8Cn6nM=","KeyId":"arn:aws:kms:us-west-2:042062605278:key/c80a5cdb-8d09-4f9f-89ee-df01b2e3870a","Plaintext":"6tmyz9JLBE2yIuU7iXpArqpDVle172WSmxjcO6GNT7E="}`) })) sess := unit.Session.Copy(&aws.Config{ MaxRetries: aws.Int(0), Endpoint: aws.String(ts.URL[7:]), DisableSSL: aws.Bool(true), S3ForcePathStyle: aws.Bool(true), Region: aws.String("us-west-2"), }) svc := kms.New(sess) handler := NewKMSKeyGenerator(svc, "testid") keySize := 32 ivSize := 16 cd, err := handler.GenerateCipherData(keySize, ivSize) assert.NoError(t, err) assert.Equal(t, keySize, len(cd.Key)) assert.Equal(t, ivSize, len(cd.IV)) assert.NotEmpty(t, cd.Key) assert.NotEmpty(t, cd.IV) } func TestKMSDecrypt(t *testing.T) { key, _ := hex.DecodeString("31bdadd96698c204aa9ce1448ea94ae1fb4a9a0b3c9d773b51bb1822666b8f22") keyB64 := base64.URLEncoding.EncodeToString(key) ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { fmt.Fprintln(w, fmt.Sprintf("%s%s%s", `{"KeyId":"test-key-id","Plaintext":"`, keyB64, `"}`)) })) sess := unit.Session.Copy(&aws.Config{ MaxRetries: aws.Int(0), Endpoint: aws.String(ts.URL[7:]), DisableSSL: aws.Bool(true), S3ForcePathStyle: aws.Bool(true), Region: aws.String("us-west-2"), }) handler, err := (kmsKeyHandler{kms: kms.New(sess)}).decryptHandler(Envelope{MatDesc: `{"kms_cmk_id":"test"}`}) assert.NoError(t, err) plaintextKey, err := handler.DecryptKey([]byte{1, 2, 3, 4}) assert.NoError(t, err) assert.Equal(t, key, plaintextKey) } func TestKMSDecryptBadJSON(t *testing.T) { key, _ := hex.DecodeString("31bdadd96698c204aa9ce1448ea94ae1fb4a9a0b3c9d773b51bb1822666b8f22") keyB64 := base64.URLEncoding.EncodeToString(key) ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { fmt.Fprintln(w, fmt.Sprintf("%s%s%s", `{"KeyId":"test-key-id","Plaintext":"`, keyB64, `"}`)) })) sess := unit.Session.Copy(&aws.Config{ MaxRetries: aws.Int(0), Endpoint: aws.String(ts.URL[7:]), DisableSSL: aws.Bool(true), S3ForcePathStyle: aws.Bool(true), Region: aws.String("us-west-2"), }) _, err := (kmsKeyHandler{kms: kms.New(sess)}).decryptHandler(Envelope{MatDesc: `{"kms_cmk_id":"test"`}) assert.Error(t, err) } aws-sdk-go-1.4.22/service/s3/s3crypto/mat_desc.go000066400000000000000000000006111300374646400214420ustar00rootroot00000000000000package s3crypto import ( "encoding/json" ) // MaterialDescription is used to identify how and what master // key has been used. type MaterialDescription map[string]*string func (md *MaterialDescription) encodeDescription() ([]byte, error) { v, err := json.Marshal(&md) return v, err } func (md *MaterialDescription) decodeDescription(b []byte) error { return json.Unmarshal(b, &md) } aws-sdk-go-1.4.22/service/s3/s3crypto/mat_desc_test.go000066400000000000000000000011561300374646400225060ustar00rootroot00000000000000package s3crypto import ( "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" ) func TestEncodeMaterialDescription(t *testing.T) { md := MaterialDescription{} md["foo"] = aws.String("bar") b, err := md.encodeDescription() expected := `{"foo":"bar"}` assert.NoError(t, err) assert.Equal(t, expected, string(b)) } func TestDecodeMaterialDescription(t *testing.T) { md := MaterialDescription{} json := `{"foo":"bar"}` err := md.decodeDescription([]byte(json)) expected := MaterialDescription{ "foo": aws.String("bar"), } assert.NoError(t, err) assert.Equal(t, expected, md) } aws-sdk-go-1.4.22/service/s3/s3crypto/mock_test.go000066400000000000000000000027471300374646400216670ustar00rootroot00000000000000package s3crypto_test import ( "bytes" "io" "io/ioutil" "github.com/aws/aws-sdk-go/service/s3/s3crypto" ) type mockGenerator struct { } func (m mockGenerator) GenerateCipherData(keySize, ivSize int) (s3crypto.CipherData, error) { cd := s3crypto.CipherData{ Key: make([]byte, keySize), IV: make([]byte, ivSize), } return cd, nil } func (m mockGenerator) EncryptKey(key []byte) ([]byte, error) { size := len(key) b := bytes.Repeat([]byte{1}, size) return b, nil } func (m mockGenerator) DecryptKey(key []byte) ([]byte, error) { return make([]byte, 16), nil } type mockCipherBuilder struct { generator s3crypto.CipherDataGenerator } func (builder mockCipherBuilder) ContentCipher() (s3crypto.ContentCipher, error) { cd, err := builder.generator.GenerateCipherData(32, 16) if err != nil { return nil, err } return &mockContentCipher{cd}, nil } type mockContentCipher struct { cd s3crypto.CipherData } func (cipher *mockContentCipher) GetCipherData() s3crypto.CipherData { return cipher.cd } func (cipher *mockContentCipher) EncryptContents(src io.Reader) (io.Reader, error) { b, err := ioutil.ReadAll(src) if err != nil { return nil, err } size := len(b) b = bytes.Repeat([]byte{1}, size) return bytes.NewReader(b), nil } func (cipher *mockContentCipher) DecryptContents(src io.ReadCloser) (io.ReadCloser, error) { b, err := ioutil.ReadAll(src) if err != nil { return nil, err } size := len(b) return ioutil.NopCloser(bytes.NewReader(make([]byte, size))), nil } aws-sdk-go-1.4.22/service/s3/s3crypto/strategy.go000066400000000000000000000112601300374646400215270ustar00rootroot00000000000000package s3crypto import ( "bytes" "encoding/json" "io/ioutil" "net/http" "strings" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/s3" ) // SaveStrategy is how the data's metadata wants to be saved type SaveStrategy interface { Save(Envelope, *request.Request) error } // S3SaveStrategy will save the metadata to a separate instruction file in S3 type S3SaveStrategy struct { Client *s3.S3 InstructionFileSuffix string } // Save will save the envelope contents to s3. func (strat S3SaveStrategy) Save(env Envelope, req *request.Request) error { input := req.Params.(*s3.PutObjectInput) b, err := json.Marshal(env) if err != nil { return err } instInput := s3.PutObjectInput{ Bucket: input.Bucket, Body: bytes.NewReader(b), } if strat.InstructionFileSuffix == "" { instInput.Key = aws.String(*input.Key + DefaultInstructionKeySuffix) } else { instInput.Key = aws.String(*input.Key + strat.InstructionFileSuffix) } _, err = strat.Client.PutObject(&instInput) return err } // HeaderV2SaveStrategy will save the metadata of the crypto contents to the header of // the object. type HeaderV2SaveStrategy struct{} // Save will save the envelope to the request's header. func (strat HeaderV2SaveStrategy) Save(env Envelope, req *request.Request) error { input := req.Params.(*s3.PutObjectInput) if input.Metadata == nil { input.Metadata = map[string]*string{} } input.Metadata[http.CanonicalHeaderKey(keyV2Header)] = &env.CipherKey input.Metadata[http.CanonicalHeaderKey(ivHeader)] = &env.IV input.Metadata[http.CanonicalHeaderKey(matDescHeader)] = &env.MatDesc input.Metadata[http.CanonicalHeaderKey(wrapAlgorithmHeader)] = &env.WrapAlg input.Metadata[http.CanonicalHeaderKey(cekAlgorithmHeader)] = &env.CEKAlg input.Metadata[http.CanonicalHeaderKey(tagLengthHeader)] = &env.TagLen input.Metadata[http.CanonicalHeaderKey(unencryptedMD5Header)] = &env.UnencryptedMD5 input.Metadata[http.CanonicalHeaderKey(unencryptedContentLengthHeader)] = &env.UnencryptedContentLen return nil } // LoadStrategy ... type LoadStrategy interface { Load(*request.Request) (Envelope, error) } // S3LoadStrategy will load the instruction file from s3 type S3LoadStrategy struct { Client *s3.S3 InstructionFileSuffix string } // Load from a given instruction file suffix func (load S3LoadStrategy) Load(req *request.Request) (Envelope, error) { env := Envelope{} if load.InstructionFileSuffix == "" { load.InstructionFileSuffix = DefaultInstructionKeySuffix } input := req.Params.(*s3.GetObjectInput) out, err := load.Client.GetObject(&s3.GetObjectInput{ Key: aws.String(strings.Join([]string{*input.Key, load.InstructionFileSuffix}, "")), Bucket: input.Bucket, }) if err != nil { return env, err } b, err := ioutil.ReadAll(out.Body) if err != nil { return env, err } err = json.Unmarshal(b, &env) return env, err } // HeaderV2LoadStrategy will load the envelope from the metadata type HeaderV2LoadStrategy struct{} // Load from a given object's header func (load HeaderV2LoadStrategy) Load(req *request.Request) (Envelope, error) { env := Envelope{} env.CipherKey = req.HTTPResponse.Header.Get(strings.Join([]string{metaHeader, keyV2Header}, "-")) env.IV = req.HTTPResponse.Header.Get(strings.Join([]string{metaHeader, ivHeader}, "-")) env.MatDesc = req.HTTPResponse.Header.Get(strings.Join([]string{metaHeader, matDescHeader}, "-")) env.WrapAlg = req.HTTPResponse.Header.Get(strings.Join([]string{metaHeader, wrapAlgorithmHeader}, "-")) env.CEKAlg = req.HTTPResponse.Header.Get(strings.Join([]string{metaHeader, cekAlgorithmHeader}, "-")) env.TagLen = req.HTTPResponse.Header.Get(strings.Join([]string{metaHeader, tagLengthHeader}, "-")) env.UnencryptedMD5 = req.HTTPResponse.Header.Get(strings.Join([]string{metaHeader, unencryptedMD5Header}, "-")) env.UnencryptedContentLen = req.HTTPResponse.Header.Get(strings.Join([]string{metaHeader, unencryptedContentLengthHeader}, "-")) return env, nil } type defaultV2LoadStrategy struct { client *s3.S3 suffix string } func (load defaultV2LoadStrategy) Load(req *request.Request) (Envelope, error) { if value := req.HTTPResponse.Header.Get(strings.Join([]string{metaHeader, keyV2Header}, "-")); value != "" { strat := HeaderV2LoadStrategy{} return strat.Load(req) } else if value = req.HTTPResponse.Header.Get(strings.Join([]string{metaHeader, keyV1Header}, "-")); value != "" { return Envelope{}, awserr.New("V1NotSupportedError", "The AWS SDK for Go does not support version 1", nil) } strat := S3LoadStrategy{ Client: load.client, InstructionFileSuffix: load.suffix, } return strat.Load(req) } aws-sdk-go-1.4.22/service/s3/s3crypto/strategy_test.go000066400000000000000000000025771300374646400226010ustar00rootroot00000000000000package s3crypto_test import ( "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/s3" "github.com/aws/aws-sdk-go/service/s3/s3crypto" ) func TestHeaderV2SaveStrategy(t *testing.T) { env := s3crypto.Envelope{ CipherKey: "Foo", IV: "Bar", MatDesc: "{}", WrapAlg: s3crypto.KMSWrap, CEKAlg: s3crypto.AESGCMNoPadding, TagLen: "128", UnencryptedMD5: "hello", UnencryptedContentLen: "0", } params := &s3.PutObjectInput{} req := &request.Request{ Params: params, } strat := s3crypto.HeaderV2SaveStrategy{} err := strat.Save(env, req) assert.NoError(t, err) expected := map[string]*string{ "X-Amz-Key-V2": aws.String("Foo"), "X-Amz-Iv": aws.String("Bar"), "X-Amz-Matdesc": aws.String("{}"), "X-Amz-Wrap-Alg": aws.String(s3crypto.KMSWrap), "X-Amz-Cek-Alg": aws.String(s3crypto.AESGCMNoPadding), "X-Amz-Tag-Len": aws.String("128"), "X-Amz-Unencrypted-Content-Md5": aws.String("hello"), "X-Amz-Unencrypted-Content-Length": aws.String("0"), } assert.Equal(t, len(expected), len(params.Metadata)) assert.Equal(t, expected, params.Metadata) } aws-sdk-go-1.4.22/service/s3/s3iface/000077500000000000000000000000001300374646400170655ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/s3/s3iface/interface.go000066400000000000000000000333431300374646400213620ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package s3iface provides an interface to enable mocking the Amazon Simple Storage Service service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package s3iface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/s3" ) // S3API provides an interface to enable mocking the // s3.S3 service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Simple Storage Service. // func myFunc(svc s3iface.S3API) bool { // // Make svc.AbortMultipartUpload request // } // // func main() { // sess := session.New() // svc := s3.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockS3Client struct { // s3iface.S3API // } // func (m *mockS3Client) AbortMultipartUpload(input *s3.AbortMultipartUploadInput) (*s3.AbortMultipartUploadOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockS3Client{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type S3API interface { AbortMultipartUploadRequest(*s3.AbortMultipartUploadInput) (*request.Request, *s3.AbortMultipartUploadOutput) AbortMultipartUpload(*s3.AbortMultipartUploadInput) (*s3.AbortMultipartUploadOutput, error) CompleteMultipartUploadRequest(*s3.CompleteMultipartUploadInput) (*request.Request, *s3.CompleteMultipartUploadOutput) CompleteMultipartUpload(*s3.CompleteMultipartUploadInput) (*s3.CompleteMultipartUploadOutput, error) CopyObjectRequest(*s3.CopyObjectInput) (*request.Request, *s3.CopyObjectOutput) CopyObject(*s3.CopyObjectInput) (*s3.CopyObjectOutput, error) CreateBucketRequest(*s3.CreateBucketInput) (*request.Request, *s3.CreateBucketOutput) CreateBucket(*s3.CreateBucketInput) (*s3.CreateBucketOutput, error) CreateMultipartUploadRequest(*s3.CreateMultipartUploadInput) (*request.Request, *s3.CreateMultipartUploadOutput) CreateMultipartUpload(*s3.CreateMultipartUploadInput) (*s3.CreateMultipartUploadOutput, error) DeleteBucketRequest(*s3.DeleteBucketInput) (*request.Request, *s3.DeleteBucketOutput) DeleteBucket(*s3.DeleteBucketInput) (*s3.DeleteBucketOutput, error) DeleteBucketCorsRequest(*s3.DeleteBucketCorsInput) (*request.Request, *s3.DeleteBucketCorsOutput) DeleteBucketCors(*s3.DeleteBucketCorsInput) (*s3.DeleteBucketCorsOutput, error) DeleteBucketLifecycleRequest(*s3.DeleteBucketLifecycleInput) (*request.Request, *s3.DeleteBucketLifecycleOutput) DeleteBucketLifecycle(*s3.DeleteBucketLifecycleInput) (*s3.DeleteBucketLifecycleOutput, error) DeleteBucketPolicyRequest(*s3.DeleteBucketPolicyInput) (*request.Request, *s3.DeleteBucketPolicyOutput) DeleteBucketPolicy(*s3.DeleteBucketPolicyInput) (*s3.DeleteBucketPolicyOutput, error) DeleteBucketReplicationRequest(*s3.DeleteBucketReplicationInput) (*request.Request, *s3.DeleteBucketReplicationOutput) DeleteBucketReplication(*s3.DeleteBucketReplicationInput) (*s3.DeleteBucketReplicationOutput, error) DeleteBucketTaggingRequest(*s3.DeleteBucketTaggingInput) (*request.Request, *s3.DeleteBucketTaggingOutput) DeleteBucketTagging(*s3.DeleteBucketTaggingInput) (*s3.DeleteBucketTaggingOutput, error) DeleteBucketWebsiteRequest(*s3.DeleteBucketWebsiteInput) (*request.Request, *s3.DeleteBucketWebsiteOutput) DeleteBucketWebsite(*s3.DeleteBucketWebsiteInput) (*s3.DeleteBucketWebsiteOutput, error) DeleteObjectRequest(*s3.DeleteObjectInput) (*request.Request, *s3.DeleteObjectOutput) DeleteObject(*s3.DeleteObjectInput) (*s3.DeleteObjectOutput, error) DeleteObjectsRequest(*s3.DeleteObjectsInput) (*request.Request, *s3.DeleteObjectsOutput) DeleteObjects(*s3.DeleteObjectsInput) (*s3.DeleteObjectsOutput, error) GetBucketAccelerateConfigurationRequest(*s3.GetBucketAccelerateConfigurationInput) (*request.Request, *s3.GetBucketAccelerateConfigurationOutput) GetBucketAccelerateConfiguration(*s3.GetBucketAccelerateConfigurationInput) (*s3.GetBucketAccelerateConfigurationOutput, error) GetBucketAclRequest(*s3.GetBucketAclInput) (*request.Request, *s3.GetBucketAclOutput) GetBucketAcl(*s3.GetBucketAclInput) (*s3.GetBucketAclOutput, error) GetBucketCorsRequest(*s3.GetBucketCorsInput) (*request.Request, *s3.GetBucketCorsOutput) GetBucketCors(*s3.GetBucketCorsInput) (*s3.GetBucketCorsOutput, error) GetBucketLifecycleRequest(*s3.GetBucketLifecycleInput) (*request.Request, *s3.GetBucketLifecycleOutput) GetBucketLifecycle(*s3.GetBucketLifecycleInput) (*s3.GetBucketLifecycleOutput, error) GetBucketLifecycleConfigurationRequest(*s3.GetBucketLifecycleConfigurationInput) (*request.Request, *s3.GetBucketLifecycleConfigurationOutput) GetBucketLifecycleConfiguration(*s3.GetBucketLifecycleConfigurationInput) (*s3.GetBucketLifecycleConfigurationOutput, error) GetBucketLocationRequest(*s3.GetBucketLocationInput) (*request.Request, *s3.GetBucketLocationOutput) GetBucketLocation(*s3.GetBucketLocationInput) (*s3.GetBucketLocationOutput, error) GetBucketLoggingRequest(*s3.GetBucketLoggingInput) (*request.Request, *s3.GetBucketLoggingOutput) GetBucketLogging(*s3.GetBucketLoggingInput) (*s3.GetBucketLoggingOutput, error) GetBucketNotificationRequest(*s3.GetBucketNotificationConfigurationRequest) (*request.Request, *s3.NotificationConfigurationDeprecated) GetBucketNotification(*s3.GetBucketNotificationConfigurationRequest) (*s3.NotificationConfigurationDeprecated, error) GetBucketNotificationConfigurationRequest(*s3.GetBucketNotificationConfigurationRequest) (*request.Request, *s3.NotificationConfiguration) GetBucketNotificationConfiguration(*s3.GetBucketNotificationConfigurationRequest) (*s3.NotificationConfiguration, error) GetBucketPolicyRequest(*s3.GetBucketPolicyInput) (*request.Request, *s3.GetBucketPolicyOutput) GetBucketPolicy(*s3.GetBucketPolicyInput) (*s3.GetBucketPolicyOutput, error) GetBucketReplicationRequest(*s3.GetBucketReplicationInput) (*request.Request, *s3.GetBucketReplicationOutput) GetBucketReplication(*s3.GetBucketReplicationInput) (*s3.GetBucketReplicationOutput, error) GetBucketRequestPaymentRequest(*s3.GetBucketRequestPaymentInput) (*request.Request, *s3.GetBucketRequestPaymentOutput) GetBucketRequestPayment(*s3.GetBucketRequestPaymentInput) (*s3.GetBucketRequestPaymentOutput, error) GetBucketTaggingRequest(*s3.GetBucketTaggingInput) (*request.Request, *s3.GetBucketTaggingOutput) GetBucketTagging(*s3.GetBucketTaggingInput) (*s3.GetBucketTaggingOutput, error) GetBucketVersioningRequest(*s3.GetBucketVersioningInput) (*request.Request, *s3.GetBucketVersioningOutput) GetBucketVersioning(*s3.GetBucketVersioningInput) (*s3.GetBucketVersioningOutput, error) GetBucketWebsiteRequest(*s3.GetBucketWebsiteInput) (*request.Request, *s3.GetBucketWebsiteOutput) GetBucketWebsite(*s3.GetBucketWebsiteInput) (*s3.GetBucketWebsiteOutput, error) GetObjectRequest(*s3.GetObjectInput) (*request.Request, *s3.GetObjectOutput) GetObject(*s3.GetObjectInput) (*s3.GetObjectOutput, error) GetObjectAclRequest(*s3.GetObjectAclInput) (*request.Request, *s3.GetObjectAclOutput) GetObjectAcl(*s3.GetObjectAclInput) (*s3.GetObjectAclOutput, error) GetObjectTorrentRequest(*s3.GetObjectTorrentInput) (*request.Request, *s3.GetObjectTorrentOutput) GetObjectTorrent(*s3.GetObjectTorrentInput) (*s3.GetObjectTorrentOutput, error) HeadBucketRequest(*s3.HeadBucketInput) (*request.Request, *s3.HeadBucketOutput) HeadBucket(*s3.HeadBucketInput) (*s3.HeadBucketOutput, error) HeadObjectRequest(*s3.HeadObjectInput) (*request.Request, *s3.HeadObjectOutput) HeadObject(*s3.HeadObjectInput) (*s3.HeadObjectOutput, error) ListBucketsRequest(*s3.ListBucketsInput) (*request.Request, *s3.ListBucketsOutput) ListBuckets(*s3.ListBucketsInput) (*s3.ListBucketsOutput, error) ListMultipartUploadsRequest(*s3.ListMultipartUploadsInput) (*request.Request, *s3.ListMultipartUploadsOutput) ListMultipartUploads(*s3.ListMultipartUploadsInput) (*s3.ListMultipartUploadsOutput, error) ListMultipartUploadsPages(*s3.ListMultipartUploadsInput, func(*s3.ListMultipartUploadsOutput, bool) bool) error ListObjectVersionsRequest(*s3.ListObjectVersionsInput) (*request.Request, *s3.ListObjectVersionsOutput) ListObjectVersions(*s3.ListObjectVersionsInput) (*s3.ListObjectVersionsOutput, error) ListObjectVersionsPages(*s3.ListObjectVersionsInput, func(*s3.ListObjectVersionsOutput, bool) bool) error ListObjectsRequest(*s3.ListObjectsInput) (*request.Request, *s3.ListObjectsOutput) ListObjects(*s3.ListObjectsInput) (*s3.ListObjectsOutput, error) ListObjectsPages(*s3.ListObjectsInput, func(*s3.ListObjectsOutput, bool) bool) error ListObjectsV2Request(*s3.ListObjectsV2Input) (*request.Request, *s3.ListObjectsV2Output) ListObjectsV2(*s3.ListObjectsV2Input) (*s3.ListObjectsV2Output, error) ListObjectsV2Pages(*s3.ListObjectsV2Input, func(*s3.ListObjectsV2Output, bool) bool) error ListPartsRequest(*s3.ListPartsInput) (*request.Request, *s3.ListPartsOutput) ListParts(*s3.ListPartsInput) (*s3.ListPartsOutput, error) ListPartsPages(*s3.ListPartsInput, func(*s3.ListPartsOutput, bool) bool) error PutBucketAccelerateConfigurationRequest(*s3.PutBucketAccelerateConfigurationInput) (*request.Request, *s3.PutBucketAccelerateConfigurationOutput) PutBucketAccelerateConfiguration(*s3.PutBucketAccelerateConfigurationInput) (*s3.PutBucketAccelerateConfigurationOutput, error) PutBucketAclRequest(*s3.PutBucketAclInput) (*request.Request, *s3.PutBucketAclOutput) PutBucketAcl(*s3.PutBucketAclInput) (*s3.PutBucketAclOutput, error) PutBucketCorsRequest(*s3.PutBucketCorsInput) (*request.Request, *s3.PutBucketCorsOutput) PutBucketCors(*s3.PutBucketCorsInput) (*s3.PutBucketCorsOutput, error) PutBucketLifecycleRequest(*s3.PutBucketLifecycleInput) (*request.Request, *s3.PutBucketLifecycleOutput) PutBucketLifecycle(*s3.PutBucketLifecycleInput) (*s3.PutBucketLifecycleOutput, error) PutBucketLifecycleConfigurationRequest(*s3.PutBucketLifecycleConfigurationInput) (*request.Request, *s3.PutBucketLifecycleConfigurationOutput) PutBucketLifecycleConfiguration(*s3.PutBucketLifecycleConfigurationInput) (*s3.PutBucketLifecycleConfigurationOutput, error) PutBucketLoggingRequest(*s3.PutBucketLoggingInput) (*request.Request, *s3.PutBucketLoggingOutput) PutBucketLogging(*s3.PutBucketLoggingInput) (*s3.PutBucketLoggingOutput, error) PutBucketNotificationRequest(*s3.PutBucketNotificationInput) (*request.Request, *s3.PutBucketNotificationOutput) PutBucketNotification(*s3.PutBucketNotificationInput) (*s3.PutBucketNotificationOutput, error) PutBucketNotificationConfigurationRequest(*s3.PutBucketNotificationConfigurationInput) (*request.Request, *s3.PutBucketNotificationConfigurationOutput) PutBucketNotificationConfiguration(*s3.PutBucketNotificationConfigurationInput) (*s3.PutBucketNotificationConfigurationOutput, error) PutBucketPolicyRequest(*s3.PutBucketPolicyInput) (*request.Request, *s3.PutBucketPolicyOutput) PutBucketPolicy(*s3.PutBucketPolicyInput) (*s3.PutBucketPolicyOutput, error) PutBucketReplicationRequest(*s3.PutBucketReplicationInput) (*request.Request, *s3.PutBucketReplicationOutput) PutBucketReplication(*s3.PutBucketReplicationInput) (*s3.PutBucketReplicationOutput, error) PutBucketRequestPaymentRequest(*s3.PutBucketRequestPaymentInput) (*request.Request, *s3.PutBucketRequestPaymentOutput) PutBucketRequestPayment(*s3.PutBucketRequestPaymentInput) (*s3.PutBucketRequestPaymentOutput, error) PutBucketTaggingRequest(*s3.PutBucketTaggingInput) (*request.Request, *s3.PutBucketTaggingOutput) PutBucketTagging(*s3.PutBucketTaggingInput) (*s3.PutBucketTaggingOutput, error) PutBucketVersioningRequest(*s3.PutBucketVersioningInput) (*request.Request, *s3.PutBucketVersioningOutput) PutBucketVersioning(*s3.PutBucketVersioningInput) (*s3.PutBucketVersioningOutput, error) PutBucketWebsiteRequest(*s3.PutBucketWebsiteInput) (*request.Request, *s3.PutBucketWebsiteOutput) PutBucketWebsite(*s3.PutBucketWebsiteInput) (*s3.PutBucketWebsiteOutput, error) PutObjectRequest(*s3.PutObjectInput) (*request.Request, *s3.PutObjectOutput) PutObject(*s3.PutObjectInput) (*s3.PutObjectOutput, error) PutObjectAclRequest(*s3.PutObjectAclInput) (*request.Request, *s3.PutObjectAclOutput) PutObjectAcl(*s3.PutObjectAclInput) (*s3.PutObjectAclOutput, error) RestoreObjectRequest(*s3.RestoreObjectInput) (*request.Request, *s3.RestoreObjectOutput) RestoreObject(*s3.RestoreObjectInput) (*s3.RestoreObjectOutput, error) UploadPartRequest(*s3.UploadPartInput) (*request.Request, *s3.UploadPartOutput) UploadPart(*s3.UploadPartInput) (*s3.UploadPartOutput, error) UploadPartCopyRequest(*s3.UploadPartCopyInput) (*request.Request, *s3.UploadPartCopyOutput) UploadPartCopy(*s3.UploadPartCopyInput) (*s3.UploadPartCopyOutput, error) WaitUntilBucketExists(*s3.HeadBucketInput) error WaitUntilBucketNotExists(*s3.HeadBucketInput) error WaitUntilObjectExists(*s3.HeadObjectInput) error WaitUntilObjectNotExists(*s3.HeadObjectInput) error } var _ S3API = (*s3.S3)(nil) aws-sdk-go-1.4.22/service/s3/s3manager/000077500000000000000000000000001300374646400174305ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/s3/s3manager/doc.go000066400000000000000000000002371300374646400205260ustar00rootroot00000000000000// Package s3manager provides utilities to upload and download objects from // S3 concurrently. Helpful for when working with large objects. package s3manager aws-sdk-go-1.4.22/service/s3/s3manager/download.go000066400000000000000000000247771300374646400216070ustar00rootroot00000000000000package s3manager import ( "fmt" "io" "net/http" "strconv" "strings" "sync" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/s3" "github.com/aws/aws-sdk-go/service/s3/s3iface" ) // DefaultDownloadPartSize is the default range of bytes to get at a time when // using Download(). const DefaultDownloadPartSize = 1024 * 1024 * 5 // DefaultDownloadConcurrency is the default number of goroutines to spin up // when using Download(). const DefaultDownloadConcurrency = 5 // The Downloader structure that calls Download(). It is safe to call Download() // on this structure for multiple objects and across concurrent goroutines. // Mutating the Downloader's properties is not safe to be done concurrently. type Downloader struct { // The buffer size (in bytes) to use when buffering data into chunks and // sending them as parts to S3. The minimum allowed part size is 5MB, and // if this value is set to zero, the DefaultPartSize value will be used. PartSize int64 // The number of goroutines to spin up in parallel when sending parts. // If this is set to zero, the DefaultDownloadConcurrency value will be used. Concurrency int // An S3 client to use when performing downloads. S3 s3iface.S3API } // NewDownloader creates a new Downloader instance to downloads objects from // S3 in concurrent chunks. Pass in additional functional options to customize // the downloader behavior. Requires a client.ConfigProvider in order to create // a S3 service client. The session.Session satisfies the client.ConfigProvider // interface. // // Example: // // The session the S3 Downloader will use // sess, err := session.NewSession() // // // Create a downloader with the session and default options // downloader := s3manager.NewDownloader(sess) // // // Create a downloader with the session and custom options // downloader := s3manager.NewDownloader(sess, func(d *s3manager.Downloader) { // d.PartSize = 64 * 1024 * 1024 // 64MB per part // }) func NewDownloader(c client.ConfigProvider, options ...func(*Downloader)) *Downloader { d := &Downloader{ S3: s3.New(c), PartSize: DefaultDownloadPartSize, Concurrency: DefaultDownloadConcurrency, } for _, option := range options { option(d) } return d } // NewDownloaderWithClient creates a new Downloader instance to downloads // objects from S3 in concurrent chunks. Pass in additional functional // options to customize the downloader behavior. Requires a S3 service client // to make S3 API calls. // // Example: // // The session the S3 Downloader will use // sess, err := session.NewSession() // // // The S3 client the S3 Downloader will use // s3Svc := s3.new(sess) // // // Create a downloader with the s3 client and default options // downloader := s3manager.NewDownloaderWithClient(s3Svc) // // // Create a downloader with the s3 client and custom options // downloader := s3manager.NewDownloaderWithClient(s3Svc, func(d *s3manager.Downloader) { // d.PartSize = 64 * 1024 * 1024 // 64MB per part // }) func NewDownloaderWithClient(svc s3iface.S3API, options ...func(*Downloader)) *Downloader { d := &Downloader{ S3: svc, PartSize: DefaultDownloadPartSize, Concurrency: DefaultDownloadConcurrency, } for _, option := range options { option(d) } return d } type maxRetrier interface { MaxRetries() int } // Download downloads an object in S3 and writes the payload into w using // concurrent GET requests. // // Additional functional options can be provided to configure the individual // download. These options are copies of the Downloader instance Download is called from. // Modifying the options will not impact the original Downloader instance. // // It is safe to call this method concurrently across goroutines. // // The w io.WriterAt can be satisfied by an os.File to do multipart concurrent // downloads, or in memory []byte wrapper using aws.WriteAtBuffer. func (d Downloader) Download(w io.WriterAt, input *s3.GetObjectInput, options ...func(*Downloader)) (n int64, err error) { impl := downloader{w: w, in: input, ctx: d} for _, option := range options { option(&impl.ctx) } if s, ok := d.S3.(maxRetrier); ok { impl.partBodyMaxRetries = s.MaxRetries() } impl.totalBytes = -1 if impl.ctx.Concurrency == 0 { impl.ctx.Concurrency = DefaultDownloadConcurrency } if impl.ctx.PartSize == 0 { impl.ctx.PartSize = DefaultDownloadPartSize } return impl.download() } // downloader is the implementation structure used internally by Downloader. type downloader struct { ctx Downloader in *s3.GetObjectInput w io.WriterAt wg sync.WaitGroup m sync.Mutex pos int64 totalBytes int64 written int64 err error partBodyMaxRetries int } // download performs the implementation of the object download across ranged // GETs. func (d *downloader) download() (n int64, err error) { // Spin off first worker to check additional header information d.getChunk() if total := d.getTotalBytes(); total >= 0 { // Spin up workers ch := make(chan dlchunk, d.ctx.Concurrency) for i := 0; i < d.ctx.Concurrency; i++ { d.wg.Add(1) go d.downloadPart(ch) } // Assign work for d.getErr() == nil { if d.pos >= total { break // We're finished queuing chunks } // Queue the next range of bytes to read. ch <- dlchunk{w: d.w, start: d.pos, size: d.ctx.PartSize} d.pos += d.ctx.PartSize } // Wait for completion close(ch) d.wg.Wait() } else { // Checking if we read anything new for d.err == nil { d.getChunk() } // We expect a 416 error letting us know we are done downloading the // total bytes. Since we do not know the content's length, this will // keep grabbing chunks of data until the range of bytes specified in // the request is out of range of the content. Once, this happens, a // 416 should occur. e, ok := d.err.(awserr.RequestFailure) if ok && e.StatusCode() == http.StatusRequestedRangeNotSatisfiable { d.err = nil } } // Return error return d.written, d.err } // downloadPart is an individual goroutine worker reading from the ch channel // and performing a GetObject request on the data with a given byte range. // // If this is the first worker, this operation also resolves the total number // of bytes to be read so that the worker manager knows when it is finished. func (d *downloader) downloadPart(ch chan dlchunk) { defer d.wg.Done() for { chunk, ok := <-ch if !ok || d.getErr() != nil { break } if err := d.downloadChunk(chunk); err != nil { d.setErr(err) break } } } // getChunk grabs a chunk of data from the body. // Not thread safe. Should only used when grabbing data on a single thread. func (d *downloader) getChunk() { if d.getErr() != nil { return } chunk := dlchunk{w: d.w, start: d.pos, size: d.ctx.PartSize} d.pos += d.ctx.PartSize if err := d.downloadChunk(chunk); err != nil { d.setErr(err) } } // downloadChunk downloads the chunk froom s3 func (d *downloader) downloadChunk(chunk dlchunk) error { in := &s3.GetObjectInput{} awsutil.Copy(in, d.in) // Get the next byte range of data rng := fmt.Sprintf("bytes=%d-%d", chunk.start, chunk.start+chunk.size-1) in.Range = &rng var n int64 var err error for retry := 0; retry <= d.partBodyMaxRetries; retry++ { req, resp := d.ctx.S3.GetObjectRequest(in) req.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("S3Manager")) err = req.Send() if err != nil { return err } d.setTotalBytes(resp) // Set total if not yet set. n, err = io.Copy(&chunk, resp.Body) resp.Body.Close() if err == nil { break } chunk.cur = 0 logMessage(d.ctx.S3, aws.LogDebugWithRequestRetries, fmt.Sprintf("DEBUG: object part body download interrupted %s, err, %v, retrying attempt %d", aws.StringValue(in.Key), err, retry)) } d.incrWritten(n) return err } func logMessage(svc s3iface.S3API, level aws.LogLevelType, msg string) { s, ok := svc.(*s3.S3) if !ok { return } if s.Config.Logger == nil { return } if s.Config.LogLevel.Matches(level) { s.Config.Logger.Log(msg) } } // getTotalBytes is a thread-safe getter for retrieving the total byte status. func (d *downloader) getTotalBytes() int64 { d.m.Lock() defer d.m.Unlock() return d.totalBytes } // setTotalBytes is a thread-safe setter for setting the total byte status. // Will extract the object's total bytes from the Content-Range if the file // will be chunked, or Content-Length. Content-Length is used when the response // does not include a Content-Range. Meaning the object was not chunked. This // occurs when the full file fits within the PartSize directive. func (d *downloader) setTotalBytes(resp *s3.GetObjectOutput) { d.m.Lock() defer d.m.Unlock() if d.totalBytes >= 0 { return } if resp.ContentRange == nil { // ContentRange is nil when the full file contents is provied, and // is not chunked. Use ContentLength instead. if resp.ContentLength != nil { d.totalBytes = *resp.ContentLength return } } else { parts := strings.Split(*resp.ContentRange, "/") total := int64(-1) var err error // Checking for whether or not a numbered total exists // If one does not exist, we will assume the total to be -1, undefined, // and sequentially download each chunk until hitting a 416 error totalStr := parts[len(parts)-1] if totalStr != "*" { total, err = strconv.ParseInt(totalStr, 10, 64) if err != nil { d.err = err return } } d.totalBytes = total } } func (d *downloader) incrWritten(n int64) { d.m.Lock() defer d.m.Unlock() d.written += n } // getErr is a thread-safe getter for the error object func (d *downloader) getErr() error { d.m.Lock() defer d.m.Unlock() return d.err } // setErr is a thread-safe setter for the error object func (d *downloader) setErr(e error) { d.m.Lock() defer d.m.Unlock() d.err = e } // dlchunk represents a single chunk of data to write by the worker routine. // This structure also implements an io.SectionReader style interface for // io.WriterAt, effectively making it an io.SectionWriter (which does not // exist). type dlchunk struct { w io.WriterAt start int64 size int64 cur int64 } // Write wraps io.WriterAt for the dlchunk, writing from the dlchunk's start // position to its end (or EOF). func (c *dlchunk) Write(p []byte) (n int, err error) { if c.cur >= c.size { return 0, io.EOF } n, err = c.w.WriteAt(p, c.start+c.cur) c.cur += int64(n) return } aws-sdk-go-1.4.22/service/s3/s3manager/download_test.go000066400000000000000000000243311300374646400226300ustar00rootroot00000000000000package s3manager_test import ( "bytes" "fmt" "io" "io/ioutil" "net/http" "regexp" "strconv" "sync" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/s3" "github.com/aws/aws-sdk-go/service/s3/s3manager" ) func dlLoggingSvc(data []byte) (*s3.S3, *[]string, *[]string) { var m sync.Mutex names := []string{} ranges := []string{} svc := s3.New(unit.Session) svc.Handlers.Send.Clear() svc.Handlers.Send.PushBack(func(r *request.Request) { m.Lock() defer m.Unlock() names = append(names, r.Operation.Name) ranges = append(ranges, *r.Params.(*s3.GetObjectInput).Range) rerng := regexp.MustCompile(`bytes=(\d+)-(\d+)`) rng := rerng.FindStringSubmatch(r.HTTPRequest.Header.Get("Range")) start, _ := strconv.ParseInt(rng[1], 10, 64) fin, _ := strconv.ParseInt(rng[2], 10, 64) fin++ if fin > int64(len(data)) { fin = int64(len(data)) } bodyBytes := data[start:fin] r.HTTPResponse = &http.Response{ StatusCode: 200, Body: ioutil.NopCloser(bytes.NewReader(bodyBytes)), Header: http.Header{}, } r.HTTPResponse.Header.Set("Content-Range", fmt.Sprintf("bytes %d-%d/%d", start, fin-1, len(data))) r.HTTPResponse.Header.Set("Content-Length", fmt.Sprintf("%d", len(bodyBytes))) }) return svc, &names, &ranges } func dlLoggingSvcNoChunk(data []byte) (*s3.S3, *[]string) { var m sync.Mutex names := []string{} svc := s3.New(unit.Session) svc.Handlers.Send.Clear() svc.Handlers.Send.PushBack(func(r *request.Request) { m.Lock() defer m.Unlock() names = append(names, r.Operation.Name) r.HTTPResponse = &http.Response{ StatusCode: 200, Body: ioutil.NopCloser(bytes.NewReader(data[:])), Header: http.Header{}, } r.HTTPResponse.Header.Set("Content-Length", fmt.Sprintf("%d", len(data))) }) return svc, &names } func dlLoggingSvcNoContentRangeLength(data []byte, states []int) (*s3.S3, *[]string) { var m sync.Mutex names := []string{} var index int = 0 svc := s3.New(unit.Session) svc.Handlers.Send.Clear() svc.Handlers.Send.PushBack(func(r *request.Request) { m.Lock() defer m.Unlock() names = append(names, r.Operation.Name) r.HTTPResponse = &http.Response{ StatusCode: states[index], Body: ioutil.NopCloser(bytes.NewReader(data[:])), Header: http.Header{}, } index++ }) return svc, &names } func dlLoggingSvcContentRangeTotalAny(data []byte, states []int) (*s3.S3, *[]string) { var m sync.Mutex names := []string{} ranges := []string{} var index int = 0 svc := s3.New(unit.Session) svc.Handlers.Send.Clear() svc.Handlers.Send.PushBack(func(r *request.Request) { m.Lock() defer m.Unlock() names = append(names, r.Operation.Name) ranges = append(ranges, *r.Params.(*s3.GetObjectInput).Range) rerng := regexp.MustCompile(`bytes=(\d+)-(\d+)`) rng := rerng.FindStringSubmatch(r.HTTPRequest.Header.Get("Range")) start, _ := strconv.ParseInt(rng[1], 10, 64) fin, _ := strconv.ParseInt(rng[2], 10, 64) fin++ if fin >= int64(len(data)) { fin = int64(len(data)) } // Setting start and finish to 0 because this state of 1 is suppose to // be an error state of 416 if index == len(states)-1 { start = 0 fin = 0 } bodyBytes := data[start:fin] r.HTTPResponse = &http.Response{ StatusCode: states[index], Body: ioutil.NopCloser(bytes.NewReader(bodyBytes)), Header: http.Header{}, } r.HTTPResponse.Header.Set("Content-Range", fmt.Sprintf("bytes %d-%d/*", start, fin-1)) index++ }) return svc, &names } func dlLoggingSvcWithErrReader(cases []testErrReader) (*s3.S3, *[]string) { var m sync.Mutex names := []string{} var index int = 0 svc := s3.New(unit.Session, &aws.Config{ MaxRetries: aws.Int(len(cases) - 1), }) svc.Handlers.Send.Clear() svc.Handlers.Send.PushBack(func(r *request.Request) { m.Lock() defer m.Unlock() names = append(names, r.Operation.Name) c := cases[index] r.HTTPResponse = &http.Response{ StatusCode: http.StatusOK, Body: ioutil.NopCloser(&c), Header: http.Header{}, } r.HTTPResponse.Header.Set("Content-Range", fmt.Sprintf("bytes %d-%d/%d", 0, c.Len-1, c.Len)) r.HTTPResponse.Header.Set("Content-Length", fmt.Sprintf("%d", c.Len)) index++ }) return svc, &names } func TestDownloadOrder(t *testing.T) { s, names, ranges := dlLoggingSvc(buf12MB) d := s3manager.NewDownloaderWithClient(s, func(d *s3manager.Downloader) { d.Concurrency = 1 }) w := &aws.WriteAtBuffer{} n, err := d.Download(w, &s3.GetObjectInput{ Bucket: aws.String("bucket"), Key: aws.String("key"), }) assert.Nil(t, err) assert.Equal(t, int64(len(buf12MB)), n) assert.Equal(t, []string{"GetObject", "GetObject", "GetObject"}, *names) assert.Equal(t, []string{"bytes=0-5242879", "bytes=5242880-10485759", "bytes=10485760-15728639"}, *ranges) count := 0 for _, b := range w.Bytes() { count += int(b) } assert.Equal(t, 0, count) } func TestDownloadZero(t *testing.T) { s, names, ranges := dlLoggingSvc([]byte{}) d := s3manager.NewDownloaderWithClient(s) w := &aws.WriteAtBuffer{} n, err := d.Download(w, &s3.GetObjectInput{ Bucket: aws.String("bucket"), Key: aws.String("key"), }) assert.Nil(t, err) assert.Equal(t, int64(0), n) assert.Equal(t, []string{"GetObject"}, *names) assert.Equal(t, []string{"bytes=0-5242879"}, *ranges) } func TestDownloadSetPartSize(t *testing.T) { s, names, ranges := dlLoggingSvc([]byte{1, 2, 3}) d := s3manager.NewDownloaderWithClient(s, func(d *s3manager.Downloader) { d.Concurrency = 1 d.PartSize = 1 }) w := &aws.WriteAtBuffer{} n, err := d.Download(w, &s3.GetObjectInput{ Bucket: aws.String("bucket"), Key: aws.String("key"), }) assert.Nil(t, err) assert.Equal(t, int64(3), n) assert.Equal(t, []string{"GetObject", "GetObject", "GetObject"}, *names) assert.Equal(t, []string{"bytes=0-0", "bytes=1-1", "bytes=2-2"}, *ranges) assert.Equal(t, []byte{1, 2, 3}, w.Bytes()) } func TestDownloadError(t *testing.T) { s, names, _ := dlLoggingSvc([]byte{1, 2, 3}) num := 0 s.Handlers.Send.PushBack(func(r *request.Request) { num++ if num > 1 { r.HTTPResponse.StatusCode = 400 r.HTTPResponse.Body = ioutil.NopCloser(bytes.NewReader([]byte{})) } }) d := s3manager.NewDownloaderWithClient(s, func(d *s3manager.Downloader) { d.Concurrency = 1 d.PartSize = 1 }) w := &aws.WriteAtBuffer{} n, err := d.Download(w, &s3.GetObjectInput{ Bucket: aws.String("bucket"), Key: aws.String("key"), }) assert.NotNil(t, err) assert.Equal(t, int64(1), n) assert.Equal(t, []string{"GetObject", "GetObject"}, *names) assert.Equal(t, []byte{1}, w.Bytes()) } func TestDownloadNonChunk(t *testing.T) { s, names := dlLoggingSvcNoChunk(buf2MB) d := s3manager.NewDownloaderWithClient(s, func(d *s3manager.Downloader) { d.Concurrency = 1 }) w := &aws.WriteAtBuffer{} n, err := d.Download(w, &s3.GetObjectInput{ Bucket: aws.String("bucket"), Key: aws.String("key"), }) assert.Nil(t, err) assert.Equal(t, int64(len(buf2MB)), n) assert.Equal(t, []string{"GetObject"}, *names) count := 0 for _, b := range w.Bytes() { count += int(b) } assert.Equal(t, 0, count) } func TestDownloadNoContentRangeLength(t *testing.T) { s, names := dlLoggingSvcNoContentRangeLength(buf2MB, []int{200, 416}) d := s3manager.NewDownloaderWithClient(s, func(d *s3manager.Downloader) { d.Concurrency = 1 }) w := &aws.WriteAtBuffer{} n, err := d.Download(w, &s3.GetObjectInput{ Bucket: aws.String("bucket"), Key: aws.String("key"), }) assert.Nil(t, err) assert.Equal(t, int64(len(buf2MB)), n) assert.Equal(t, []string{"GetObject", "GetObject"}, *names) count := 0 for _, b := range w.Bytes() { count += int(b) } assert.Equal(t, 0, count) } func TestDownloadContentRangeTotalAny(t *testing.T) { s, names := dlLoggingSvcContentRangeTotalAny(buf2MB, []int{200, 416}) d := s3manager.NewDownloaderWithClient(s, func(d *s3manager.Downloader) { d.Concurrency = 1 }) w := &aws.WriteAtBuffer{} n, err := d.Download(w, &s3.GetObjectInput{ Bucket: aws.String("bucket"), Key: aws.String("key"), }) assert.Nil(t, err) assert.Equal(t, int64(len(buf2MB)), n) assert.Equal(t, []string{"GetObject", "GetObject"}, *names) count := 0 for _, b := range w.Bytes() { count += int(b) } assert.Equal(t, 0, count) } func TestDownloadPartBodyRetry_SuccessRetry(t *testing.T) { s, names := dlLoggingSvcWithErrReader([]testErrReader{ {Buf: []byte("ab"), Len: 3, Err: io.ErrUnexpectedEOF}, {Buf: []byte("123"), Len: 3, Err: io.EOF}, }) d := s3manager.NewDownloaderWithClient(s, func(d *s3manager.Downloader) { d.Concurrency = 1 }) w := &aws.WriteAtBuffer{} n, err := d.Download(w, &s3.GetObjectInput{ Bucket: aws.String("bucket"), Key: aws.String("key"), }) assert.Nil(t, err) assert.Equal(t, int64(3), n) assert.Equal(t, []string{"GetObject", "GetObject"}, *names) assert.Equal(t, []byte("123"), w.Bytes()) } func TestDownloadPartBodyRetry_SuccessNoRetry(t *testing.T) { s, names := dlLoggingSvcWithErrReader([]testErrReader{ {Buf: []byte("abc"), Len: 3, Err: io.EOF}, }) d := s3manager.NewDownloaderWithClient(s, func(d *s3manager.Downloader) { d.Concurrency = 1 }) w := &aws.WriteAtBuffer{} n, err := d.Download(w, &s3.GetObjectInput{ Bucket: aws.String("bucket"), Key: aws.String("key"), }) assert.Nil(t, err) assert.Equal(t, int64(3), n) assert.Equal(t, []string{"GetObject"}, *names) assert.Equal(t, []byte("abc"), w.Bytes()) } func TestDownloadPartBodyRetry_FailRetry(t *testing.T) { s, names := dlLoggingSvcWithErrReader([]testErrReader{ {Buf: []byte("ab"), Len: 3, Err: io.ErrUnexpectedEOF}, }) d := s3manager.NewDownloaderWithClient(s, func(d *s3manager.Downloader) { d.Concurrency = 1 }) w := &aws.WriteAtBuffer{} n, err := d.Download(w, &s3.GetObjectInput{ Bucket: aws.String("bucket"), Key: aws.String("key"), }) assert.Error(t, err) assert.Equal(t, int64(2), n) assert.Equal(t, []string{"GetObject"}, *names) assert.Equal(t, []byte("ab"), w.Bytes()) } type testErrReader struct { Buf []byte Err error Len int64 off int } func (r *testErrReader) Read(p []byte) (int, error) { to := len(r.Buf) - r.off n := copy(p, r.Buf[r.off:to]) r.off += n if n < len(p) { return n, r.Err } return n, nil } aws-sdk-go-1.4.22/service/s3/s3manager/s3manageriface/000077500000000000000000000000001300374646400223005ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/s3/s3manager/s3manageriface/interface.go000066400000000000000000000012531300374646400245700ustar00rootroot00000000000000// Package s3manageriface provides an interface for the s3manager package package s3manageriface import ( "io" "github.com/aws/aws-sdk-go/service/s3" "github.com/aws/aws-sdk-go/service/s3/s3manager" ) // DownloaderAPI is the interface type for s3manager.Downloader. type DownloaderAPI interface { Download(io.WriterAt, *s3.GetObjectInput, ...func(*s3manager.Downloader)) (int64, error) } var _ DownloaderAPI = (*s3manager.Downloader)(nil) // UploaderAPI is the interface type for s3manager.Uploader. type UploaderAPI interface { Upload(*s3manager.UploadInput, ...func(*s3manager.Uploader)) (*s3manager.UploadOutput, error) } var _ UploaderAPI = (*s3manager.Uploader)(nil) aws-sdk-go-1.4.22/service/s3/s3manager/shared_test.go000066400000000000000000000001501300374646400222600ustar00rootroot00000000000000package s3manager_test var buf12MB = make([]byte, 1024*1024*12) var buf2MB = make([]byte, 1024*1024*2) aws-sdk-go-1.4.22/service/s3/s3manager/upload.go000066400000000000000000000534641300374646400212570ustar00rootroot00000000000000package s3manager import ( "bytes" "fmt" "io" "sort" "sync" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/s3" "github.com/aws/aws-sdk-go/service/s3/s3iface" ) // MaxUploadParts is the maximum allowed number of parts in a multi-part upload // on Amazon S3. const MaxUploadParts = 10000 // MinUploadPartSize is the minimum allowed part size when uploading a part to // Amazon S3. const MinUploadPartSize int64 = 1024 * 1024 * 5 // DefaultUploadPartSize is the default part size to buffer chunks of a // payload into. const DefaultUploadPartSize = MinUploadPartSize // DefaultUploadConcurrency is the default number of goroutines to spin up when // using Upload(). const DefaultUploadConcurrency = 5 // A MultiUploadFailure wraps a failed S3 multipart upload. An error returned // will satisfy this interface when a multi part upload failed to upload all // chucks to S3. In the case of a failure the UploadID is needed to operate on // the chunks, if any, which were uploaded. // // Example: // // u := s3manager.NewUploader(opts) // output, err := u.upload(input) // if err != nil { // if multierr, ok := err.(s3manager.MultiUploadFailure); ok { // // Process error and its associated uploadID // fmt.Println("Error:", multierr.Code(), multierr.Message(), multierr.UploadID()) // } else { // // Process error generically // fmt.Println("Error:", err.Error()) // } // } // type MultiUploadFailure interface { awserr.Error // Returns the upload id for the S3 multipart upload that failed. UploadID() string } // So that the Error interface type can be included as an anonymous field // in the multiUploadError struct and not conflict with the error.Error() method. type awsError awserr.Error // A multiUploadError wraps the upload ID of a failed s3 multipart upload. // Composed of BaseError for code, message, and original error // // Should be used for an error that occurred failing a S3 multipart upload, // and a upload ID is available. If an uploadID is not available a more relevant type multiUploadError struct { awsError // ID for multipart upload which failed. uploadID string } // Error returns the string representation of the error. // // See apierr.BaseError ErrorWithExtra for output format // // Satisfies the error interface. func (m multiUploadError) Error() string { extra := fmt.Sprintf("upload id: %s", m.uploadID) return awserr.SprintError(m.Code(), m.Message(), extra, m.OrigErr()) } // String returns the string representation of the error. // Alias for Error to satisfy the stringer interface. func (m multiUploadError) String() string { return m.Error() } // UploadID returns the id of the S3 upload which failed. func (m multiUploadError) UploadID() string { return m.uploadID } // UploadInput contains all input for upload requests to Amazon S3. type UploadInput struct { // The canned ACL to apply to the object. ACL *string `location:"header" locationName:"x-amz-acl" type:"string"` Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` // Specifies caching behavior along the request/reply chain. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"` // Specifies presentational information for the object. ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"` // Specifies what content encodings have been applied to the object and thus // what decoding mechanisms must be applied to obtain the media-type referenced // by the Content-Type header field. ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"` // The language the content is in. ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"` // A standard MIME type describing the format of the object data. ContentType *string `location:"header" locationName:"Content-Type" type:"string"` // The date and time at which the object is no longer cacheable. Expires *time.Time `location:"header" locationName:"Expires" type:"timestamp" timestampFormat:"rfc822"` // Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"` // Allows grantee to read the object data and its metadata. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"` // Allows grantee to read the object ACL. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"` // Allows grantee to write the ACL for the applicable object. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"` Key *string `location:"uri" locationName:"Key" type:"string" required:"true"` // A map of metadata to store with the object in S3. Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"` // Confirms that the requester knows that she or he will be charged for the // request. Bucket owners need not specify this parameter in their requests. // Documentation on downloading objects from requester pays buckets can be found // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string"` // Specifies the algorithm to use to when encrypting the object (e.g., AES256, // aws:kms). SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"` // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting // data. This value is used to store the object and then it is discarded; Amazon // does not store the encryption key. The key must be appropriate for use with // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm // header. SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"` // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. // Amazon S3 uses this header for a message integrity check to ensure the encryption // key was transmitted without error. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"` // Specifies the AWS KMS key ID to use for object encryption. All GET and PUT // requests for an object protected by AWS KMS will fail if not made via SSL // or using SigV4. Documentation on configuring any of the officially supported // AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"` // The Server-side encryption algorithm used when storing this object in S3 // (e.g., AES256, aws:kms). ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string"` // The type of storage to use for the object. Defaults to 'STANDARD'. StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string"` // If the bucket is configured as a website, redirects requests for this object // to another object in the same bucket or to an external URL. Amazon S3 stores // the value of this header in the object metadata. WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"` // The readable body payload to send to S3. Body io.Reader } // UploadOutput represents a response from the Upload() call. type UploadOutput struct { // The URL where the object was uploaded to. Location string // The version of the object that was uploaded. Will only be populated if // the S3 Bucket is versioned. If the bucket is not versioned this field // will not be set. VersionID *string // The ID for a multipart upload to S3. In the case of an error the error // can be cast to the MultiUploadFailure interface to extract the upload ID. UploadID string } // The Uploader structure that calls Upload(). It is safe to call Upload() // on this structure for multiple objects and across concurrent goroutines. // Mutating the Uploader's properties is not safe to be done concurrently. type Uploader struct { // The buffer size (in bytes) to use when buffering data into chunks and // sending them as parts to S3. The minimum allowed part size is 5MB, and // if this value is set to zero, the DefaultPartSize value will be used. PartSize int64 // The number of goroutines to spin up in parallel when sending parts. // If this is set to zero, the DefaultUploadConcurrency value will be used. Concurrency int // Setting this value to true will cause the SDK to avoid calling // AbortMultipartUpload on a failure, leaving all successfully uploaded // parts on S3 for manual recovery. // // Note that storing parts of an incomplete multipart upload counts towards // space usage on S3 and will add additional costs if not cleaned up. LeavePartsOnError bool // MaxUploadParts is the max number of parts which will be uploaded to S3. // Will be used to calculate the partsize of the object to be uploaded. // E.g: 5GB file, with MaxUploadParts set to 100, will upload the file // as 100, 50MB parts. // With a limited of s3.MaxUploadParts (10,000 parts). MaxUploadParts int // The client to use when uploading to S3. S3 s3iface.S3API } // NewUploader creates a new Uploader instance to upload objects to S3. Pass In // additional functional options to customize the uploader's behavior. Requires a // client.ConfigProvider in order to create a S3 service client. The session.Session // satisfies the client.ConfigProvider interface. // // Example: // // The session the S3 Uploader will use // sess, err := session.NewSession() // // // Create an uploader with the session and default options // uploader := s3manager.NewUploader(sess) // // // Create an uploader with the session and custom options // uploader := s3manager.NewUploader(session, func(u *s3manager.Uploader) { // u.PartSize = 64 * 1024 * 1024 // 64MB per part // }) func NewUploader(c client.ConfigProvider, options ...func(*Uploader)) *Uploader { u := &Uploader{ S3: s3.New(c), PartSize: DefaultUploadPartSize, Concurrency: DefaultUploadConcurrency, LeavePartsOnError: false, MaxUploadParts: MaxUploadParts, } for _, option := range options { option(u) } return u } // NewUploaderWithClient creates a new Uploader instance to upload objects to S3. Pass in // additional functional options to customize the uploader's behavior. Requires // a S3 service client to make S3 API calls. // // Example: // // The session the S3 Uploader will use // sess, err := session.NewSession() // // // S3 service client the Upload manager will use. // s3Svc := s3.New(sess) // // // Create an uploader with S3 client and default options // uploader := s3manager.NewUploaderWithClient(s3Svc) // // // Create an uploader with S3 client and custom options // uploader := s3manager.NewUploaderWithClient(s3Svc, func(u *s3manager.Uploader) { // u.PartSize = 64 * 1024 * 1024 // 64MB per part // }) func NewUploaderWithClient(svc s3iface.S3API, options ...func(*Uploader)) *Uploader { u := &Uploader{ S3: svc, PartSize: DefaultUploadPartSize, Concurrency: DefaultUploadConcurrency, LeavePartsOnError: false, MaxUploadParts: MaxUploadParts, } for _, option := range options { option(u) } return u } // Upload uploads an object to S3, intelligently buffering large files into // smaller chunks and sending them in parallel across multiple goroutines. You // can configure the buffer size and concurrency through the Uploader's parameters. // // Additional functional options can be provided to configure the individual // upload. These options are copies of the Uploader instance Upload is called from. // Modifying the options will not impact the original Uploader instance. // // It is safe to call this method concurrently across goroutines. // // Example: // // Upload input parameters // upParams := &s3manager.UploadInput{ // Bucket: &bucketName, // Key: &keyName, // Body: file, // } // // // Perform an upload. // result, err := uploader.Upload(upParams) // // // Perform upload with options different than the those in the Uploader. // result, err := uploader.Upload(upParams, func(u *s3manager.Uploader) { // u.PartSize = 10 * 1024 * 1024 // 10MB part size // u.LeavePartsOnError = true // Don't delete the parts if the upload fails. // }) func (u Uploader) Upload(input *UploadInput, options ...func(*Uploader)) (*UploadOutput, error) { i := uploader{in: input, ctx: u} for _, option := range options { option(&i.ctx) } return i.upload() } // internal structure to manage an upload to S3. type uploader struct { ctx Uploader in *UploadInput readerPos int64 // current reader position totalSize int64 // set to -1 if the size is not known } // internal logic for deciding whether to upload a single part or use a // multipart upload. func (u *uploader) upload() (*UploadOutput, error) { u.init() if u.ctx.PartSize < MinUploadPartSize { msg := fmt.Sprintf("part size must be at least %d bytes", MinUploadPartSize) return nil, awserr.New("ConfigError", msg, nil) } // Do one read to determine if we have more than one part reader, _, err := u.nextReader() if err == io.EOF { // single part return u.singlePart(reader) } else if err != nil { return nil, awserr.New("ReadRequestBody", "read upload data failed", err) } mu := multiuploader{uploader: u} return mu.upload(reader) } // init will initialize all default options. func (u *uploader) init() { if u.ctx.Concurrency == 0 { u.ctx.Concurrency = DefaultUploadConcurrency } if u.ctx.PartSize == 0 { u.ctx.PartSize = DefaultUploadPartSize } // Try to get the total size for some optimizations u.initSize() } // initSize tries to detect the total stream size, setting u.totalSize. If // the size is not known, totalSize is set to -1. func (u *uploader) initSize() { u.totalSize = -1 switch r := u.in.Body.(type) { case io.Seeker: pos, _ := r.Seek(0, 1) defer r.Seek(pos, 0) n, err := r.Seek(0, 2) if err != nil { return } u.totalSize = n // Try to adjust partSize if it is too small and account for // integer division truncation. if u.totalSize/u.ctx.PartSize >= int64(u.ctx.MaxUploadParts) { // Add one to the part size to account for remainders // during the size calculation. e.g odd number of bytes. u.ctx.PartSize = (u.totalSize / int64(u.ctx.MaxUploadParts)) + 1 } } } // nextReader returns a seekable reader representing the next packet of data. // This operation increases the shared u.readerPos counter, but note that it // does not need to be wrapped in a mutex because nextReader is only called // from the main thread. func (u *uploader) nextReader() (io.ReadSeeker, int, error) { type readerAtSeeker interface { io.ReaderAt io.ReadSeeker } switch r := u.in.Body.(type) { case readerAtSeeker: var err error n := u.ctx.PartSize if u.totalSize >= 0 { bytesLeft := u.totalSize - u.readerPos if bytesLeft <= u.ctx.PartSize { err = io.EOF n = bytesLeft } } reader := io.NewSectionReader(r, u.readerPos, n) u.readerPos += n return reader, int(n), err default: part := make([]byte, u.ctx.PartSize) n, err := readFillBuf(r, part) u.readerPos += int64(n) return bytes.NewReader(part[0:n]), n, err } } func readFillBuf(r io.Reader, b []byte) (offset int, err error) { for offset < len(b) && err == nil { var n int n, err = r.Read(b[offset:]) offset += n } return offset, err } // singlePart contains upload logic for uploading a single chunk via // a regular PutObject request. Multipart requests require at least two // parts, or at least 5MB of data. func (u *uploader) singlePart(buf io.ReadSeeker) (*UploadOutput, error) { params := &s3.PutObjectInput{} awsutil.Copy(params, u.in) params.Body = buf req, out := u.ctx.S3.PutObjectRequest(params) req.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("S3Manager")) if err := req.Send(); err != nil { return nil, err } url := req.HTTPRequest.URL.String() return &UploadOutput{ Location: url, VersionID: out.VersionId, }, nil } // internal structure to manage a specific multipart upload to S3. type multiuploader struct { *uploader wg sync.WaitGroup m sync.Mutex err error uploadID string parts completedParts } // keeps track of a single chunk of data being sent to S3. type chunk struct { buf io.ReadSeeker num int64 } // completedParts is a wrapper to make parts sortable by their part number, // since S3 required this list to be sent in sorted order. type completedParts []*s3.CompletedPart func (a completedParts) Len() int { return len(a) } func (a completedParts) Swap(i, j int) { a[i], a[j] = a[j], a[i] } func (a completedParts) Less(i, j int) bool { return *a[i].PartNumber < *a[j].PartNumber } // upload will perform a multipart upload using the firstBuf buffer containing // the first chunk of data. func (u *multiuploader) upload(firstBuf io.ReadSeeker) (*UploadOutput, error) { params := &s3.CreateMultipartUploadInput{} awsutil.Copy(params, u.in) // Create the multipart req, resp := u.ctx.S3.CreateMultipartUploadRequest(params) req.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("S3Manager")) if err := req.Send(); err != nil { return nil, err } u.uploadID = *resp.UploadId // Create the workers ch := make(chan chunk, u.ctx.Concurrency) for i := 0; i < u.ctx.Concurrency; i++ { u.wg.Add(1) go u.readChunk(ch) } // Send part 1 to the workers var num int64 = 1 ch <- chunk{buf: firstBuf, num: num} // Read and queue the rest of the parts var err error for u.geterr() == nil && err == nil { num++ // This upload exceeded maximum number of supported parts, error now. if num > int64(u.ctx.MaxUploadParts) || num > int64(MaxUploadParts) { var msg string if num > int64(u.ctx.MaxUploadParts) { msg = fmt.Sprintf("exceeded total allowed configured MaxUploadParts (%d). Adjust PartSize to fit in this limit", u.ctx.MaxUploadParts) } else { msg = fmt.Sprintf("exceeded total allowed S3 limit MaxUploadParts (%d). Adjust PartSize to fit in this limit", MaxUploadParts) } u.seterr(awserr.New("TotalPartsExceeded", msg, nil)) break } var reader io.ReadSeeker var nextChunkLen int reader, nextChunkLen, err = u.nextReader() if err != nil && err != io.EOF { u.seterr(awserr.New( "ReadRequestBody", "read multipart upload data failed", err)) break } if nextChunkLen == 0 { // No need to upload empty part, if file was empty to start // with empty single part would of been created and never // started multipart upload. break } ch <- chunk{buf: reader, num: num} } // Close the channel, wait for workers, and complete upload close(ch) u.wg.Wait() complete := u.complete() if err := u.geterr(); err != nil { return nil, &multiUploadError{ awsError: awserr.New( "MultipartUpload", "upload multipart failed", err), uploadID: u.uploadID, } } return &UploadOutput{ Location: aws.StringValue(complete.Location), VersionID: complete.VersionId, UploadID: u.uploadID, }, nil } // readChunk runs in worker goroutines to pull chunks off of the ch channel // and send() them as UploadPart requests. func (u *multiuploader) readChunk(ch chan chunk) { defer u.wg.Done() for { data, ok := <-ch if !ok { break } if u.geterr() == nil { if err := u.send(data); err != nil { u.seterr(err) } } } } // send performs an UploadPart request and keeps track of the completed // part information. func (u *multiuploader) send(c chunk) error { req, resp := u.ctx.S3.UploadPartRequest(&s3.UploadPartInput{ Bucket: u.in.Bucket, Key: u.in.Key, Body: c.buf, UploadId: &u.uploadID, PartNumber: &c.num, }) req.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("S3Manager")) if err := req.Send(); err != nil { return err } n := c.num completed := &s3.CompletedPart{ETag: resp.ETag, PartNumber: &n} u.m.Lock() u.parts = append(u.parts, completed) u.m.Unlock() return nil } // geterr is a thread-safe getter for the error object func (u *multiuploader) geterr() error { u.m.Lock() defer u.m.Unlock() return u.err } // seterr is a thread-safe setter for the error object func (u *multiuploader) seterr(e error) { u.m.Lock() defer u.m.Unlock() u.err = e } // fail will abort the multipart unless LeavePartsOnError is set to true. func (u *multiuploader) fail() { if u.ctx.LeavePartsOnError { return } req, _ := u.ctx.S3.AbortMultipartUploadRequest(&s3.AbortMultipartUploadInput{ Bucket: u.in.Bucket, Key: u.in.Key, UploadId: &u.uploadID, }) req.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("S3Manager")) req.Send() } // complete successfully completes a multipart upload and returns the response. func (u *multiuploader) complete() *s3.CompleteMultipartUploadOutput { if u.geterr() != nil { u.fail() return nil } // Parts must be sorted in PartNumber order. sort.Sort(u.parts) req, resp := u.ctx.S3.CompleteMultipartUploadRequest(&s3.CompleteMultipartUploadInput{ Bucket: u.in.Bucket, Key: u.in.Key, UploadId: &u.uploadID, MultipartUpload: &s3.CompletedMultipartUpload{Parts: u.parts}, }) req.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("S3Manager")) if err := req.Send(); err != nil { u.seterr(err) u.fail() } return resp } aws-sdk-go-1.4.22/service/s3/s3manager/upload_test.go000066400000000000000000000447601300374646400223150ustar00rootroot00000000000000package s3manager_test import ( "bytes" "fmt" "io" "io/ioutil" "net/http" "net/http/httptest" "reflect" "sort" "strings" "sync" "testing" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/s3" "github.com/aws/aws-sdk-go/service/s3/s3manager" "github.com/stretchr/testify/assert" ) var emptyList = []string{} func val(i interface{}, s string) interface{} { v, err := awsutil.ValuesAtPath(i, s) if err != nil || len(v) == 0 { return nil } if _, ok := v[0].(io.Reader); ok { return v[0] } if rv := reflect.ValueOf(v[0]); rv.Kind() == reflect.Ptr { return rv.Elem().Interface() } return v[0] } func contains(src []string, s string) bool { for _, v := range src { if s == v { return true } } return false } func loggingSvc(ignoreOps []string) (*s3.S3, *[]string, *[]interface{}) { var m sync.Mutex partNum := 0 names := []string{} params := []interface{}{} svc := s3.New(unit.Session) svc.Handlers.Unmarshal.Clear() svc.Handlers.UnmarshalMeta.Clear() svc.Handlers.UnmarshalError.Clear() svc.Handlers.Send.Clear() svc.Handlers.Send.PushBack(func(r *request.Request) { m.Lock() defer m.Unlock() if !contains(ignoreOps, r.Operation.Name) { names = append(names, r.Operation.Name) params = append(params, r.Params) } r.HTTPResponse = &http.Response{ StatusCode: 200, Body: ioutil.NopCloser(bytes.NewReader([]byte{})), } switch data := r.Data.(type) { case *s3.CreateMultipartUploadOutput: data.UploadId = aws.String("UPLOAD-ID") case *s3.UploadPartOutput: partNum++ data.ETag = aws.String(fmt.Sprintf("ETAG%d", partNum)) case *s3.CompleteMultipartUploadOutput: data.Location = aws.String("https://location") data.VersionId = aws.String("VERSION-ID") case *s3.PutObjectOutput: data.VersionId = aws.String("VERSION-ID") } }) return svc, &names, ¶ms } func buflen(i interface{}) int { r := i.(io.Reader) b, _ := ioutil.ReadAll(r) return len(b) } func TestUploadOrderMulti(t *testing.T) { s, ops, args := loggingSvc(emptyList) u := s3manager.NewUploaderWithClient(s) resp, err := u.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: bytes.NewReader(buf12MB), ServerSideEncryption: aws.String("aws:kms"), SSEKMSKeyId: aws.String("KmsId"), ContentType: aws.String("content/type"), }) assert.NoError(t, err) assert.Equal(t, []string{"CreateMultipartUpload", "UploadPart", "UploadPart", "UploadPart", "CompleteMultipartUpload"}, *ops) assert.Equal(t, "https://location", resp.Location) assert.Equal(t, "UPLOAD-ID", resp.UploadID) assert.Equal(t, aws.String("VERSION-ID"), resp.VersionID) // Validate input values // UploadPart assert.Equal(t, "UPLOAD-ID", val((*args)[1], "UploadId")) assert.Equal(t, "UPLOAD-ID", val((*args)[2], "UploadId")) assert.Equal(t, "UPLOAD-ID", val((*args)[3], "UploadId")) // CompleteMultipartUpload assert.Equal(t, "UPLOAD-ID", val((*args)[4], "UploadId")) assert.Equal(t, int64(1), val((*args)[4], "MultipartUpload.Parts[0].PartNumber")) assert.Equal(t, int64(2), val((*args)[4], "MultipartUpload.Parts[1].PartNumber")) assert.Equal(t, int64(3), val((*args)[4], "MultipartUpload.Parts[2].PartNumber")) assert.Regexp(t, `^ETAG\d+$`, val((*args)[4], "MultipartUpload.Parts[0].ETag")) assert.Regexp(t, `^ETAG\d+$`, val((*args)[4], "MultipartUpload.Parts[1].ETag")) assert.Regexp(t, `^ETAG\d+$`, val((*args)[4], "MultipartUpload.Parts[2].ETag")) // Custom headers assert.Equal(t, "aws:kms", val((*args)[0], "ServerSideEncryption")) assert.Equal(t, "KmsId", val((*args)[0], "SSEKMSKeyId")) assert.Equal(t, "content/type", val((*args)[0], "ContentType")) } func TestUploadOrderMultiDifferentPartSize(t *testing.T) { s, ops, args := loggingSvc(emptyList) mgr := s3manager.NewUploaderWithClient(s, func(u *s3manager.Uploader) { u.PartSize = 1024 * 1024 * 7 u.Concurrency = 1 }) _, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: bytes.NewReader(buf12MB), }) assert.NoError(t, err) assert.Equal(t, []string{"CreateMultipartUpload", "UploadPart", "UploadPart", "CompleteMultipartUpload"}, *ops) // Part lengths assert.Equal(t, 1024*1024*7, buflen(val((*args)[1], "Body"))) assert.Equal(t, 1024*1024*5, buflen(val((*args)[2], "Body"))) } func TestUploadIncreasePartSize(t *testing.T) { s, ops, args := loggingSvc(emptyList) mgr := s3manager.NewUploaderWithClient(s, func(u *s3manager.Uploader) { u.Concurrency = 1 u.MaxUploadParts = 2 }) _, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: bytes.NewReader(buf12MB), }) assert.NoError(t, err) assert.Equal(t, int64(s3manager.DefaultDownloadPartSize), mgr.PartSize) assert.Equal(t, []string{"CreateMultipartUpload", "UploadPart", "UploadPart", "CompleteMultipartUpload"}, *ops) // Part lengths assert.Equal(t, (1024*1024*6)+1, buflen(val((*args)[1], "Body"))) assert.Equal(t, (1024*1024*6)-1, buflen(val((*args)[2], "Body"))) } func TestUploadFailIfPartSizeTooSmall(t *testing.T) { mgr := s3manager.NewUploader(unit.Session, func(u *s3manager.Uploader) { u.PartSize = 5 }) resp, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: bytes.NewReader(buf12MB), }) assert.Nil(t, resp) assert.NotNil(t, err) aerr := err.(awserr.Error) assert.Equal(t, "ConfigError", aerr.Code()) assert.Contains(t, aerr.Message(), "part size must be at least") } func TestUploadOrderSingle(t *testing.T) { s, ops, args := loggingSvc(emptyList) mgr := s3manager.NewUploaderWithClient(s) resp, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: bytes.NewReader(buf2MB), ServerSideEncryption: aws.String("aws:kms"), SSEKMSKeyId: aws.String("KmsId"), ContentType: aws.String("content/type"), }) assert.NoError(t, err) assert.Equal(t, []string{"PutObject"}, *ops) assert.NotEqual(t, "", resp.Location) assert.Equal(t, aws.String("VERSION-ID"), resp.VersionID) assert.Equal(t, "", resp.UploadID) assert.Equal(t, "aws:kms", val((*args)[0], "ServerSideEncryption")) assert.Equal(t, "KmsId", val((*args)[0], "SSEKMSKeyId")) assert.Equal(t, "content/type", val((*args)[0], "ContentType")) } func TestUploadOrderSingleFailure(t *testing.T) { s, ops, _ := loggingSvc(emptyList) s.Handlers.Send.PushBack(func(r *request.Request) { r.HTTPResponse.StatusCode = 400 }) mgr := s3manager.NewUploaderWithClient(s) resp, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: bytes.NewReader(buf2MB), }) assert.Error(t, err) assert.Equal(t, []string{"PutObject"}, *ops) assert.Nil(t, resp) } func TestUploadOrderZero(t *testing.T) { s, ops, args := loggingSvc(emptyList) mgr := s3manager.NewUploaderWithClient(s) resp, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: bytes.NewReader(make([]byte, 0)), }) assert.NoError(t, err) assert.Equal(t, []string{"PutObject"}, *ops) assert.NotEqual(t, "", resp.Location) assert.Equal(t, "", resp.UploadID) assert.Equal(t, 0, buflen(val((*args)[0], "Body"))) } func TestUploadOrderMultiFailure(t *testing.T) { s, ops, _ := loggingSvc(emptyList) s.Handlers.Send.PushBack(func(r *request.Request) { switch t := r.Data.(type) { case *s3.UploadPartOutput: if *t.ETag == "ETAG2" { r.HTTPResponse.StatusCode = 400 } } }) mgr := s3manager.NewUploaderWithClient(s, func(u *s3manager.Uploader) { u.Concurrency = 1 }) _, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: bytes.NewReader(buf12MB), }) assert.Error(t, err) assert.Equal(t, []string{"CreateMultipartUpload", "UploadPart", "UploadPart", "AbortMultipartUpload"}, *ops) } func TestUploadOrderMultiFailureOnComplete(t *testing.T) { s, ops, _ := loggingSvc(emptyList) s.Handlers.Send.PushBack(func(r *request.Request) { switch r.Data.(type) { case *s3.CompleteMultipartUploadOutput: r.HTTPResponse.StatusCode = 400 } }) mgr := s3manager.NewUploaderWithClient(s, func(u *s3manager.Uploader) { u.Concurrency = 1 }) _, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: bytes.NewReader(buf12MB), }) assert.Error(t, err) assert.Equal(t, []string{"CreateMultipartUpload", "UploadPart", "UploadPart", "UploadPart", "CompleteMultipartUpload", "AbortMultipartUpload"}, *ops) } func TestUploadOrderMultiFailureOnCreate(t *testing.T) { s, ops, _ := loggingSvc(emptyList) s.Handlers.Send.PushBack(func(r *request.Request) { switch r.Data.(type) { case *s3.CreateMultipartUploadOutput: r.HTTPResponse.StatusCode = 400 } }) mgr := s3manager.NewUploaderWithClient(s) _, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: bytes.NewReader(make([]byte, 1024*1024*12)), }) assert.Error(t, err) assert.Equal(t, []string{"CreateMultipartUpload"}, *ops) } func TestUploadOrderMultiFailureLeaveParts(t *testing.T) { s, ops, _ := loggingSvc(emptyList) s.Handlers.Send.PushBack(func(r *request.Request) { switch data := r.Data.(type) { case *s3.UploadPartOutput: if *data.ETag == "ETAG2" { r.HTTPResponse.StatusCode = 400 } } }) mgr := s3manager.NewUploaderWithClient(s, func(u *s3manager.Uploader) { u.Concurrency = 1 u.LeavePartsOnError = true }) _, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: bytes.NewReader(make([]byte, 1024*1024*12)), }) assert.Error(t, err) assert.Equal(t, []string{"CreateMultipartUpload", "UploadPart", "UploadPart"}, *ops) } type failreader struct { times int failCount int } func (f *failreader) Read(b []byte) (int, error) { f.failCount++ if f.failCount >= f.times { return 0, fmt.Errorf("random failure") } return len(b), nil } func TestUploadOrderReadFail1(t *testing.T) { s, ops, _ := loggingSvc(emptyList) mgr := s3manager.NewUploaderWithClient(s) _, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: &failreader{times: 1}, }) assert.Equal(t, "ReadRequestBody", err.(awserr.Error).Code()) assert.EqualError(t, err.(awserr.Error).OrigErr(), "random failure") assert.Equal(t, []string{}, *ops) } func TestUploadOrderReadFail2(t *testing.T) { s, ops, _ := loggingSvc([]string{"UploadPart"}) mgr := s3manager.NewUploaderWithClient(s, func(u *s3manager.Uploader) { u.Concurrency = 1 }) _, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: &failreader{times: 2}, }) assert.Equal(t, "MultipartUpload", err.(awserr.Error).Code()) assert.Equal(t, "ReadRequestBody", err.(awserr.Error).OrigErr().(awserr.Error).Code()) assert.Contains(t, err.(awserr.Error).OrigErr().Error(), "random failure") assert.Equal(t, []string{"CreateMultipartUpload", "AbortMultipartUpload"}, *ops) } type sizedReader struct { size int cur int err error } func (s *sizedReader) Read(p []byte) (n int, err error) { if s.cur >= s.size { if s.err == nil { s.err = io.EOF } return 0, s.err } n = len(p) s.cur += len(p) if s.cur > s.size { n -= s.cur - s.size } return } func TestUploadOrderMultiBufferedReader(t *testing.T) { s, ops, args := loggingSvc(emptyList) mgr := s3manager.NewUploaderWithClient(s) _, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: &sizedReader{size: 1024 * 1024 * 12}, }) assert.NoError(t, err) assert.Equal(t, []string{"CreateMultipartUpload", "UploadPart", "UploadPart", "UploadPart", "CompleteMultipartUpload"}, *ops) // Part lengths parts := []int{ buflen(val((*args)[1], "Body")), buflen(val((*args)[2], "Body")), buflen(val((*args)[3], "Body")), } sort.Ints(parts) assert.Equal(t, []int{1024 * 1024 * 2, 1024 * 1024 * 5, 1024 * 1024 * 5}, parts) } func TestUploadOrderMultiBufferedReaderPartial(t *testing.T) { s, ops, args := loggingSvc(emptyList) mgr := s3manager.NewUploaderWithClient(s) _, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: &sizedReader{size: 1024 * 1024 * 12, err: io.EOF}, }) assert.NoError(t, err) assert.Equal(t, []string{"CreateMultipartUpload", "UploadPart", "UploadPart", "UploadPart", "CompleteMultipartUpload"}, *ops) // Part lengths parts := []int{ buflen(val((*args)[1], "Body")), buflen(val((*args)[2], "Body")), buflen(val((*args)[3], "Body")), } sort.Ints(parts) assert.Equal(t, []int{1024 * 1024 * 2, 1024 * 1024 * 5, 1024 * 1024 * 5}, parts) } // TestUploadOrderMultiBufferedReaderEOF tests the edge case where the // file size is the same as part size. func TestUploadOrderMultiBufferedReaderEOF(t *testing.T) { s, ops, args := loggingSvc(emptyList) mgr := s3manager.NewUploaderWithClient(s) _, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: &sizedReader{size: 1024 * 1024 * 10, err: io.EOF}, }) assert.NoError(t, err) assert.Equal(t, []string{"CreateMultipartUpload", "UploadPart", "UploadPart", "CompleteMultipartUpload"}, *ops) // Part lengths parts := []int{ buflen(val((*args)[1], "Body")), buflen(val((*args)[2], "Body")), } sort.Ints(parts) assert.Equal(t, []int{1024 * 1024 * 5, 1024 * 1024 * 5}, parts) } func TestUploadOrderMultiBufferedReaderExceedTotalParts(t *testing.T) { s, ops, _ := loggingSvc([]string{"UploadPart"}) mgr := s3manager.NewUploaderWithClient(s, func(u *s3manager.Uploader) { u.Concurrency = 1 u.MaxUploadParts = 2 }) resp, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: &sizedReader{size: 1024 * 1024 * 12}, }) assert.Error(t, err) assert.Nil(t, resp) assert.Equal(t, []string{"CreateMultipartUpload", "AbortMultipartUpload"}, *ops) aerr := err.(awserr.Error) assert.Equal(t, "MultipartUpload", aerr.Code()) assert.Equal(t, "TotalPartsExceeded", aerr.OrigErr().(awserr.Error).Code()) assert.Contains(t, aerr.Error(), "configured MaxUploadParts (2)") } func TestUploadOrderSingleBufferedReader(t *testing.T) { s, ops, _ := loggingSvc(emptyList) mgr := s3manager.NewUploaderWithClient(s) resp, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: &sizedReader{size: 1024 * 1024 * 2}, }) assert.NoError(t, err) assert.Equal(t, []string{"PutObject"}, *ops) assert.NotEqual(t, "", resp.Location) assert.Equal(t, "", resp.UploadID) } func TestUploadZeroLenObject(t *testing.T) { requestMade := false server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { requestMade = true w.WriteHeader(http.StatusOK) })) mgr := s3manager.NewUploaderWithClient(s3.New(unit.Session, &aws.Config{ Endpoint: aws.String(server.URL), })) resp, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: strings.NewReader(""), }) assert.NoError(t, err) assert.True(t, requestMade) assert.NotEqual(t, "", resp.Location) assert.Equal(t, "", resp.UploadID) } func TestUploadInputS3PutObjectInputPairity(t *testing.T) { matchings := compareStructType(reflect.TypeOf(s3.PutObjectInput{}), reflect.TypeOf(s3manager.UploadInput{})) aOnly := []string{} bOnly := []string{} for k, c := range matchings { if c == 1 && k != "ContentLength" { aOnly = append(aOnly, k) } else if c == 2 { bOnly = append(bOnly, k) } } assert.Empty(t, aOnly, "s3.PutObjectInput") assert.Empty(t, bOnly, "s3Manager.UploadInput") } type testIncompleteReader struct { Buf []byte Count int } func (r *testIncompleteReader) Read(p []byte) (n int, err error) { if r.Count < 0 { return 0, io.ErrUnexpectedEOF } r.Count-- return copy(p, r.Buf), nil } func TestUploadUnexpectedEOF(t *testing.T) { s, ops, args := loggingSvc(emptyList) mgr := s3manager.NewUploaderWithClient(s, func(u *s3manager.Uploader) { u.Concurrency = 1 }) _, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: &testIncompleteReader{ Buf: make([]byte, 1024*1024*5), Count: 1, }, }) assert.Error(t, err) assert.Equal(t, "CreateMultipartUpload", (*ops)[0]) assert.Equal(t, "UploadPart", (*ops)[1]) assert.Equal(t, "AbortMultipartUpload", (*ops)[len(*ops)-1]) // Part lengths assert.Equal(t, 1024*1024*5, buflen(val((*args)[1], "Body"))) } func compareStructType(a, b reflect.Type) map[string]int { if a.Kind() != reflect.Struct || b.Kind() != reflect.Struct { panic(fmt.Sprintf("types must both be structs, got %v and %v", a.Kind(), b.Kind())) } aFields := enumFields(a) bFields := enumFields(b) matchings := map[string]int{} for i := 0; i < len(aFields) || i < len(bFields); i++ { if i < len(aFields) { c := matchings[aFields[i].Name] matchings[aFields[i].Name] = c + 1 } if i < len(bFields) { c := matchings[bFields[i].Name] matchings[bFields[i].Name] = c + 2 } } return matchings } func enumFields(v reflect.Type) []reflect.StructField { fields := []reflect.StructField{} for i := 0; i < v.NumField(); i++ { field := v.Field(i) // Ignoreing anon fields if field.PkgPath != "" { // Ignore unexported fields continue } fields = append(fields, field) } return fields } type fooReaderAt struct{} func (r *fooReaderAt) Read(p []byte) (n int, err error) { return 12, io.EOF } func (r *fooReaderAt) ReadAt(p []byte, off int64) (n int, err error) { return 12, io.EOF } func TestReaderAt(t *testing.T) { svc := s3.New(unit.Session) svc.Handlers.Unmarshal.Clear() svc.Handlers.UnmarshalMeta.Clear() svc.Handlers.UnmarshalError.Clear() svc.Handlers.Send.Clear() contentLen := "" svc.Handlers.Send.PushBack(func(r *request.Request) { contentLen = r.HTTPRequest.Header.Get("Content-Length") r.HTTPResponse = &http.Response{ StatusCode: 200, Body: ioutil.NopCloser(bytes.NewReader([]byte{})), } }) mgr := s3manager.NewUploaderWithClient(svc, func(u *s3manager.Uploader) { u.Concurrency = 1 }) _, err := mgr.Upload(&s3manager.UploadInput{ Bucket: aws.String("Bucket"), Key: aws.String("Key"), Body: &fooReaderAt{}, }) assert.NoError(t, err) assert.Equal(t, contentLen, "12") } aws-sdk-go-1.4.22/service/s3/service.go000066400000000000000000000050711300374646400175420ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package s3 import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/restxml" ) // S3 is a client for Amazon S3. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type S3 struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "s3" // New creates a new instance of the S3 client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a S3 client from just a session. // svc := s3.New(mySession) // // // Create a S3 client with additional configuration // svc := s3.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *S3 { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *S3 { svc := &S3{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2006-03-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(restxml.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a S3 operation and runs any // custom request initialization. func (c *S3) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/s3/sse.go000066400000000000000000000021601300374646400166700ustar00rootroot00000000000000package s3 import ( "crypto/md5" "encoding/base64" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) var errSSERequiresSSL = awserr.New("ConfigError", "cannot send SSE keys over HTTP.", nil) func validateSSERequiresSSL(r *request.Request) { if r.HTTPRequest.URL.Scheme != "https" { p, _ := awsutil.ValuesAtPath(r.Params, "SSECustomerKey||CopySourceSSECustomerKey") if len(p) > 0 { r.Error = errSSERequiresSSL } } } func computeSSEKeys(r *request.Request) { headers := []string{ "x-amz-server-side-encryption-customer-key", "x-amz-copy-source-server-side-encryption-customer-key", } for _, h := range headers { md5h := h + "-md5" if key := r.HTTPRequest.Header.Get(h); key != "" { // Base64-encode the value b64v := base64.StdEncoding.EncodeToString([]byte(key)) r.HTTPRequest.Header.Set(h, b64v) // Add MD5 if it wasn't computed if r.HTTPRequest.Header.Get(md5h) == "" { sum := md5.Sum([]byte(key)) b64sum := base64.StdEncoding.EncodeToString(sum[:]) r.HTTPRequest.Header.Set(md5h, b64sum) } } } } aws-sdk-go-1.4.22/service/s3/sse_test.go000066400000000000000000000061211300374646400177300ustar00rootroot00000000000000package s3_test import ( "testing" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/s3" "github.com/stretchr/testify/assert" ) func TestSSECustomerKeyOverHTTPError(t *testing.T) { s := s3.New(unit.Session, &aws.Config{DisableSSL: aws.Bool(true)}) req, _ := s.CopyObjectRequest(&s3.CopyObjectInput{ Bucket: aws.String("bucket"), CopySource: aws.String("bucket/source"), Key: aws.String("dest"), SSECustomerKey: aws.String("key"), }) err := req.Build() assert.Error(t, err) assert.Equal(t, "ConfigError", err.(awserr.Error).Code()) assert.Contains(t, err.(awserr.Error).Message(), "cannot send SSE keys over HTTP") } func TestCopySourceSSECustomerKeyOverHTTPError(t *testing.T) { s := s3.New(unit.Session, &aws.Config{DisableSSL: aws.Bool(true)}) req, _ := s.CopyObjectRequest(&s3.CopyObjectInput{ Bucket: aws.String("bucket"), CopySource: aws.String("bucket/source"), Key: aws.String("dest"), CopySourceSSECustomerKey: aws.String("key"), }) err := req.Build() assert.Error(t, err) assert.Equal(t, "ConfigError", err.(awserr.Error).Code()) assert.Contains(t, err.(awserr.Error).Message(), "cannot send SSE keys over HTTP") } func TestComputeSSEKeys(t *testing.T) { s := s3.New(unit.Session) req, _ := s.CopyObjectRequest(&s3.CopyObjectInput{ Bucket: aws.String("bucket"), CopySource: aws.String("bucket/source"), Key: aws.String("dest"), SSECustomerKey: aws.String("key"), CopySourceSSECustomerKey: aws.String("key"), }) err := req.Build() assert.NoError(t, err) assert.Equal(t, "a2V5", req.HTTPRequest.Header.Get("x-amz-server-side-encryption-customer-key")) assert.Equal(t, "a2V5", req.HTTPRequest.Header.Get("x-amz-copy-source-server-side-encryption-customer-key")) assert.Equal(t, "PG4LipwVIkqCKLmpjKFTHQ==", req.HTTPRequest.Header.Get("x-amz-server-side-encryption-customer-key-md5")) assert.Equal(t, "PG4LipwVIkqCKLmpjKFTHQ==", req.HTTPRequest.Header.Get("x-amz-copy-source-server-side-encryption-customer-key-md5")) } func TestComputeSSEKeysShortcircuit(t *testing.T) { s := s3.New(unit.Session) req, _ := s.CopyObjectRequest(&s3.CopyObjectInput{ Bucket: aws.String("bucket"), CopySource: aws.String("bucket/source"), Key: aws.String("dest"), SSECustomerKey: aws.String("key"), CopySourceSSECustomerKey: aws.String("key"), SSECustomerKeyMD5: aws.String("MD5"), CopySourceSSECustomerKeyMD5: aws.String("MD5"), }) err := req.Build() assert.NoError(t, err) assert.Equal(t, "a2V5", req.HTTPRequest.Header.Get("x-amz-server-side-encryption-customer-key")) assert.Equal(t, "a2V5", req.HTTPRequest.Header.Get("x-amz-copy-source-server-side-encryption-customer-key")) assert.Equal(t, "MD5", req.HTTPRequest.Header.Get("x-amz-server-side-encryption-customer-key-md5")) assert.Equal(t, "MD5", req.HTTPRequest.Header.Get("x-amz-copy-source-server-side-encryption-customer-key-md5")) } aws-sdk-go-1.4.22/service/s3/statusok_error.go000066400000000000000000000015121300374646400211640ustar00rootroot00000000000000package s3 import ( "bytes" "io/ioutil" "net/http" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" ) func copyMultipartStatusOKUnmarhsalError(r *request.Request) { b, err := ioutil.ReadAll(r.HTTPResponse.Body) if err != nil { r.Error = awserr.New("SerializationError", "unable to read response body", err) return } body := bytes.NewReader(b) r.HTTPResponse.Body = aws.ReadSeekCloser(body) defer r.HTTPResponse.Body.(aws.ReaderSeekerCloser).Seek(0, 0) if body.Len() == 0 { // If there is no body don't attempt to parse the body. return } unmarshalError(r) if err, ok := r.Error.(awserr.Error); ok && err != nil { if err.Code() == "SerializationError" { r.Error = nil return } r.HTTPResponse.StatusCode = http.StatusServiceUnavailable } } aws-sdk-go-1.4.22/service/s3/statusok_error_test.go000066400000000000000000000104211300374646400222220ustar00rootroot00000000000000package s3_test import ( "fmt" "net/http" "net/http/httptest" "testing" "time" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/s3" ) const errMsg = `ErrorCodemessage bodyrequestIDhostID=` var lastModifiedTime = time.Date(2009, 11, 23, 0, 0, 0, 0, time.UTC) func TestCopyObjectNoError(t *testing.T) { const successMsg = ` 2009-11-23T0:00:00Z"1da64c7f13d1e8dbeaea40b905fd586c"` res, err := newCopyTestSvc(successMsg).CopyObject(&s3.CopyObjectInput{ Bucket: aws.String("bucketname"), CopySource: aws.String("bucketname/exists.txt"), Key: aws.String("destination.txt"), }) require.NoError(t, err) assert.Equal(t, fmt.Sprintf(`%q`, "1da64c7f13d1e8dbeaea40b905fd586c"), *res.CopyObjectResult.ETag) assert.Equal(t, lastModifiedTime, *res.CopyObjectResult.LastModified) } func TestCopyObjectError(t *testing.T) { _, err := newCopyTestSvc(errMsg).CopyObject(&s3.CopyObjectInput{ Bucket: aws.String("bucketname"), CopySource: aws.String("bucketname/doesnotexist.txt"), Key: aws.String("destination.txt"), }) require.Error(t, err) e := err.(awserr.Error) assert.Equal(t, "ErrorCode", e.Code()) assert.Equal(t, "message body", e.Message()) } func TestUploadPartCopySuccess(t *testing.T) { const successMsg = ` 2009-11-23T0:00:00Z"1da64c7f13d1e8dbeaea40b905fd586c"` res, err := newCopyTestSvc(successMsg).UploadPartCopy(&s3.UploadPartCopyInput{ Bucket: aws.String("bucketname"), CopySource: aws.String("bucketname/doesnotexist.txt"), Key: aws.String("destination.txt"), PartNumber: aws.Int64(0), UploadId: aws.String("uploadID"), }) require.NoError(t, err) assert.Equal(t, fmt.Sprintf(`%q`, "1da64c7f13d1e8dbeaea40b905fd586c"), *res.CopyPartResult.ETag) assert.Equal(t, lastModifiedTime, *res.CopyPartResult.LastModified) } func TestUploadPartCopyError(t *testing.T) { _, err := newCopyTestSvc(errMsg).UploadPartCopy(&s3.UploadPartCopyInput{ Bucket: aws.String("bucketname"), CopySource: aws.String("bucketname/doesnotexist.txt"), Key: aws.String("destination.txt"), PartNumber: aws.Int64(0), UploadId: aws.String("uploadID"), }) require.Error(t, err) e := err.(awserr.Error) assert.Equal(t, "ErrorCode", e.Code()) assert.Equal(t, "message body", e.Message()) } func TestCompleteMultipartUploadSuccess(t *testing.T) { const successMsg = ` locationNamebucketNamekeyName"etagVal"` res, err := newCopyTestSvc(successMsg).CompleteMultipartUpload(&s3.CompleteMultipartUploadInput{ Bucket: aws.String("bucketname"), Key: aws.String("key"), UploadId: aws.String("uploadID"), }) require.NoError(t, err) assert.Equal(t, `"etagVal"`, *res.ETag) assert.Equal(t, "bucketName", *res.Bucket) assert.Equal(t, "keyName", *res.Key) assert.Equal(t, "locationName", *res.Location) } func TestCompleteMultipartUploadError(t *testing.T) { _, err := newCopyTestSvc(errMsg).CompleteMultipartUpload(&s3.CompleteMultipartUploadInput{ Bucket: aws.String("bucketname"), Key: aws.String("key"), UploadId: aws.String("uploadID"), }) require.Error(t, err) e := err.(awserr.Error) assert.Equal(t, "ErrorCode", e.Code()) assert.Equal(t, "message body", e.Message()) } func newCopyTestSvc(errMsg string) *s3.S3 { server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { http.Error(w, errMsg, http.StatusOK) })) return s3.New(unit.Session, aws.NewConfig(). WithEndpoint(server.URL). WithDisableSSL(true). WithMaxRetries(0). WithS3ForcePathStyle(true)) } aws-sdk-go-1.4.22/service/s3/unmarshal_error.go000066400000000000000000000030571300374646400213070ustar00rootroot00000000000000package s3 import ( "encoding/xml" "fmt" "io" "io/ioutil" "net/http" "strings" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" ) type xmlErrorResponse struct { XMLName xml.Name `xml:"Error"` Code string `xml:"Code"` Message string `xml:"Message"` } func unmarshalError(r *request.Request) { defer r.HTTPResponse.Body.Close() defer io.Copy(ioutil.Discard, r.HTTPResponse.Body) // Bucket exists in a different region, and request needs // to be made to the correct region. if r.HTTPResponse.StatusCode == http.StatusMovedPermanently { r.Error = awserr.NewRequestFailure( awserr.New("BucketRegionError", fmt.Sprintf("incorrect region, the bucket is not in '%s' region", aws.StringValue(r.Config.Region)), nil), r.HTTPResponse.StatusCode, r.RequestID, ) return } var errCode, errMsg string // Attempt to parse error from body if it is known resp := &xmlErrorResponse{} err := xml.NewDecoder(r.HTTPResponse.Body).Decode(resp) if err != nil && err != io.EOF { errCode = "SerializationError" errMsg = "failed to decode S3 XML error response" } else { errCode = resp.Code errMsg = resp.Message } // Fallback to status code converted to message if still no error code if len(errCode) == 0 { statusText := http.StatusText(r.HTTPResponse.StatusCode) errCode = strings.Replace(statusText, " ", "", -1) errMsg = statusText } r.Error = awserr.NewRequestFailure( awserr.New(errCode, errMsg, nil), r.HTTPResponse.StatusCode, r.RequestID, ) } aws-sdk-go-1.4.22/service/s3/unmarshal_error_leak_test.go000066400000000000000000000013111300374646400233310ustar00rootroot00000000000000package s3 import ( "github.com/stretchr/testify/assert" "net/http" "testing" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting" ) func TestUnmarhsalErrorLeak(t *testing.T) { req := &request.Request{ HTTPRequest: &http.Request{ Header: make(http.Header), Body: &awstesting.ReadCloser{Size: 2048}, }, } req.HTTPResponse = &http.Response{ Body: &awstesting.ReadCloser{Size: 2048}, Header: http.Header{ "X-Amzn-Requestid": []string{"1"}, }, StatusCode: http.StatusOK, } reader := req.HTTPResponse.Body.(*awstesting.ReadCloser) unmarshalError(req) assert.NotNil(t, req.Error) assert.Equal(t, reader.Closed, true) assert.Equal(t, reader.Size, 0) } aws-sdk-go-1.4.22/service/s3/unmarshal_error_test.go000066400000000000000000000133441300374646400223460ustar00rootroot00000000000000package s3_test import ( "bytes" "fmt" "io/ioutil" "net/http" "strings" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/s3" ) type testErrorCase struct { RespFn func() *http.Response ReqID string Code, Msg string WithoutStatusMsg bool } var testUnmarshalCases = []testErrorCase{ { RespFn: func() *http.Response { return &http.Response{ StatusCode: 301, Header: http.Header{"X-Amz-Request-Id": []string{"abc123"}}, Body: ioutil.NopCloser(bytes.NewReader(nil)), ContentLength: -1, } }, ReqID: "abc123", Code: "BucketRegionError", Msg: "incorrect region, the bucket is not in 'mock-region' region", }, { RespFn: func() *http.Response { return &http.Response{ StatusCode: 403, Header: http.Header{"X-Amz-Request-Id": []string{"abc123"}}, Body: ioutil.NopCloser(bytes.NewReader(nil)), ContentLength: 0, } }, ReqID: "abc123", Code: "Forbidden", Msg: "Forbidden", }, { RespFn: func() *http.Response { return &http.Response{ StatusCode: 400, Header: http.Header{"X-Amz-Request-Id": []string{"abc123"}}, Body: ioutil.NopCloser(bytes.NewReader(nil)), ContentLength: 0, } }, ReqID: "abc123", Code: "BadRequest", Msg: "Bad Request", }, { RespFn: func() *http.Response { return &http.Response{ StatusCode: 404, Header: http.Header{"X-Amz-Request-Id": []string{"abc123"}}, Body: ioutil.NopCloser(bytes.NewReader(nil)), ContentLength: 0, } }, ReqID: "abc123", Code: "NotFound", Msg: "Not Found", }, { RespFn: func() *http.Response { body := `SomeExceptionException message` return &http.Response{ StatusCode: 500, Header: http.Header{"X-Amz-Request-Id": []string{"abc123"}}, Body: ioutil.NopCloser(strings.NewReader(body)), ContentLength: int64(len(body)), } }, ReqID: "abc123", Code: "SomeException", Msg: "Exception message", }, { RespFn: func() *http.Response { return &http.Response{ StatusCode: 404, Header: http.Header{"X-Amz-Request-Id": []string{"abc123"}}, Body: ioutil.NopCloser(bytes.NewReader(nil)), ContentLength: -1, } }, ReqID: "abc123", Code: "NotFound", Msg: "Not Found", WithoutStatusMsg: true, }, { RespFn: func() *http.Response { return &http.Response{ StatusCode: 404, Header: http.Header{"X-Amz-Request-Id": []string{"abc123"}}, Body: ioutil.NopCloser(bytes.NewReader(nil)), ContentLength: -1, } }, ReqID: "abc123", Code: "NotFound", Msg: "Not Found", }, } func TestUnmarshalError(t *testing.T) { for _, c := range testUnmarshalCases { s := s3.New(unit.Session) s.Handlers.Send.Clear() s.Handlers.Send.PushBack(func(r *request.Request) { r.HTTPResponse = c.RespFn() if !c.WithoutStatusMsg { r.HTTPResponse.Status = fmt.Sprintf("%d%s", r.HTTPResponse.StatusCode, http.StatusText(r.HTTPResponse.StatusCode)) } }) _, err := s.PutBucketAcl(&s3.PutBucketAclInput{ Bucket: aws.String("bucket"), ACL: aws.String("public-read"), }) assert.Error(t, err) assert.Equal(t, c.Code, err.(awserr.Error).Code()) assert.Equal(t, c.Msg, err.(awserr.Error).Message()) assert.Equal(t, c.ReqID, err.(awserr.RequestFailure).RequestID()) } } const completeMultiResp = ` 163 https://bucket.s3-us-west-2.amazonaws.com/keybucketkey"a7d414b9133d6483d9a1c4e04e856e3b-2" 0 ` func Test200NoErrorUnmarshalError(t *testing.T) { s := s3.New(unit.Session) s.Handlers.Send.Clear() s.Handlers.Send.PushBack(func(r *request.Request) { r.HTTPResponse = &http.Response{ StatusCode: 200, Header: http.Header{"X-Amz-Request-Id": []string{"abc123"}}, Body: ioutil.NopCloser(strings.NewReader(completeMultiResp)), ContentLength: -1, } r.HTTPResponse.Status = http.StatusText(r.HTTPResponse.StatusCode) }) _, err := s.CompleteMultipartUpload(&s3.CompleteMultipartUploadInput{ Bucket: aws.String("bucket"), Key: aws.String("key"), UploadId: aws.String("id"), MultipartUpload: &s3.CompletedMultipartUpload{Parts: []*s3.CompletedPart{ {ETag: aws.String("etag"), PartNumber: aws.Int64(1)}, }}, }) assert.NoError(t, err) } const completeMultiErrResp = `SomeExceptionException message` func Test200WithErrorUnmarshalError(t *testing.T) { s := s3.New(unit.Session) s.Handlers.Send.Clear() s.Handlers.Send.PushBack(func(r *request.Request) { r.HTTPResponse = &http.Response{ StatusCode: 200, Header: http.Header{"X-Amz-Request-Id": []string{"abc123"}}, Body: ioutil.NopCloser(strings.NewReader(completeMultiErrResp)), ContentLength: -1, } r.HTTPResponse.Status = http.StatusText(r.HTTPResponse.StatusCode) }) _, err := s.CompleteMultipartUpload(&s3.CompleteMultipartUploadInput{ Bucket: aws.String("bucket"), Key: aws.String("key"), UploadId: aws.String("id"), MultipartUpload: &s3.CompletedMultipartUpload{Parts: []*s3.CompletedPart{ {ETag: aws.String("etag"), PartNumber: aws.Int64(1)}, }}, }) assert.Error(t, err) assert.Equal(t, "SomeException", err.(awserr.Error).Code()) assert.Equal(t, "Exception message", err.(awserr.Error).Message()) assert.Equal(t, "abc123", err.(awserr.RequestFailure).RequestID()) } aws-sdk-go-1.4.22/service/s3/waiters.go000066400000000000000000000056421300374646400175640ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package s3 import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilBucketExists uses the Amazon S3 API operation // HeadBucket to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *S3) WaitUntilBucketExists(input *HeadBucketInput) error { waiterCfg := waiter.Config{ Operation: "HeadBucket", Delay: 5, MaxAttempts: 20, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "status", Argument: "", Expected: 200, }, { State: "success", Matcher: "status", Argument: "", Expected: 301, }, { State: "success", Matcher: "status", Argument: "", Expected: 403, }, { State: "retry", Matcher: "status", Argument: "", Expected: 404, }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilBucketNotExists uses the Amazon S3 API operation // HeadBucket to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *S3) WaitUntilBucketNotExists(input *HeadBucketInput) error { waiterCfg := waiter.Config{ Operation: "HeadBucket", Delay: 5, MaxAttempts: 20, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "status", Argument: "", Expected: 404, }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilObjectExists uses the Amazon S3 API operation // HeadObject to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *S3) WaitUntilObjectExists(input *HeadObjectInput) error { waiterCfg := waiter.Config{ Operation: "HeadObject", Delay: 5, MaxAttempts: 20, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "status", Argument: "", Expected: 200, }, { State: "retry", Matcher: "status", Argument: "", Expected: 404, }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } // WaitUntilObjectNotExists uses the Amazon S3 API operation // HeadObject to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *S3) WaitUntilObjectNotExists(input *HeadObjectInput) error { waiterCfg := waiter.Config{ Operation: "HeadObject", Delay: 5, MaxAttempts: 20, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "status", Argument: "", Expected: 404, }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/servicecatalog/000077500000000000000000000000001300374646400202165ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/servicecatalog/api.go000066400000000000000000002164241300374646400213270ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package servicecatalog provides a client for AWS Service Catalog. package servicecatalog import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opDescribeProduct = "DescribeProduct" // DescribeProductRequest generates a "aws/request.Request" representing the // client's request for the DescribeProduct operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeProduct for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeProduct method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeProductRequest method. // req, resp := client.DescribeProductRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ServiceCatalog) DescribeProductRequest(input *DescribeProductInput) (req *request.Request, output *DescribeProductOutput) { op := &request.Operation{ Name: opDescribeProduct, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeProductInput{} } req = c.newRequest(op, input, output) output = &DescribeProductOutput{} req.Data = output return } // DescribeProduct API operation for AWS Service Catalog. // // Retrieves information about a specified product. // // This operation is functionally identical to DescribeProductView except that // it takes as input ProductId instead of ProductViewId. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Service Catalog's // API operation DescribeProduct for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource was not found. // // * InvalidParametersException // One or more parameters provided to the operation are invalid. // func (c *ServiceCatalog) DescribeProduct(input *DescribeProductInput) (*DescribeProductOutput, error) { req, out := c.DescribeProductRequest(input) err := req.Send() return out, err } const opDescribeProductView = "DescribeProductView" // DescribeProductViewRequest generates a "aws/request.Request" representing the // client's request for the DescribeProductView operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeProductView for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeProductView method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeProductViewRequest method. // req, resp := client.DescribeProductViewRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ServiceCatalog) DescribeProductViewRequest(input *DescribeProductViewInput) (req *request.Request, output *DescribeProductViewOutput) { op := &request.Operation{ Name: opDescribeProductView, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeProductViewInput{} } req = c.newRequest(op, input, output) output = &DescribeProductViewOutput{} req.Data = output return } // DescribeProductView API operation for AWS Service Catalog. // // Retrieves information about a specified product. // // This operation is functionally identical to DescribeProduct except that it // takes as input ProductViewId instead of ProductId. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Service Catalog's // API operation DescribeProductView for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource was not found. // // * InvalidParametersException // One or more parameters provided to the operation are invalid. // func (c *ServiceCatalog) DescribeProductView(input *DescribeProductViewInput) (*DescribeProductViewOutput, error) { req, out := c.DescribeProductViewRequest(input) err := req.Send() return out, err } const opDescribeProvisioningParameters = "DescribeProvisioningParameters" // DescribeProvisioningParametersRequest generates a "aws/request.Request" representing the // client's request for the DescribeProvisioningParameters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeProvisioningParameters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeProvisioningParameters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeProvisioningParametersRequest method. // req, resp := client.DescribeProvisioningParametersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ServiceCatalog) DescribeProvisioningParametersRequest(input *DescribeProvisioningParametersInput) (req *request.Request, output *DescribeProvisioningParametersOutput) { op := &request.Operation{ Name: opDescribeProvisioningParameters, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeProvisioningParametersInput{} } req = c.newRequest(op, input, output) output = &DescribeProvisioningParametersOutput{} req.Data = output return } // DescribeProvisioningParameters API operation for AWS Service Catalog. // // Provides information about parameters required to provision a specified product // in a specified manner. Use this operation to obtain the list of ProvisioningArtifactParameters // parameters available to call the ProvisionProduct operation for the specified // product. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Service Catalog's // API operation DescribeProvisioningParameters for usage and error information. // // Returned Error Codes: // * InvalidParametersException // One or more parameters provided to the operation are invalid. // // * ResourceNotFoundException // The specified resource was not found. // func (c *ServiceCatalog) DescribeProvisioningParameters(input *DescribeProvisioningParametersInput) (*DescribeProvisioningParametersOutput, error) { req, out := c.DescribeProvisioningParametersRequest(input) err := req.Send() return out, err } const opDescribeRecord = "DescribeRecord" // DescribeRecordRequest generates a "aws/request.Request" representing the // client's request for the DescribeRecord operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeRecord for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeRecord method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeRecordRequest method. // req, resp := client.DescribeRecordRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ServiceCatalog) DescribeRecordRequest(input *DescribeRecordInput) (req *request.Request, output *DescribeRecordOutput) { op := &request.Operation{ Name: opDescribeRecord, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeRecordInput{} } req = c.newRequest(op, input, output) output = &DescribeRecordOutput{} req.Data = output return } // DescribeRecord API operation for AWS Service Catalog. // // Retrieves a paginated list of the full details of a specific request. Use // this operation after calling a request operation (ProvisionProduct, TerminateProvisionedProduct, // or UpdateProvisionedProduct). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Service Catalog's // API operation DescribeRecord for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource was not found. // func (c *ServiceCatalog) DescribeRecord(input *DescribeRecordInput) (*DescribeRecordOutput, error) { req, out := c.DescribeRecordRequest(input) err := req.Send() return out, err } const opListLaunchPaths = "ListLaunchPaths" // ListLaunchPathsRequest generates a "aws/request.Request" representing the // client's request for the ListLaunchPaths operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListLaunchPaths for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListLaunchPaths method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListLaunchPathsRequest method. // req, resp := client.ListLaunchPathsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ServiceCatalog) ListLaunchPathsRequest(input *ListLaunchPathsInput) (req *request.Request, output *ListLaunchPathsOutput) { op := &request.Operation{ Name: opListLaunchPaths, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListLaunchPathsInput{} } req = c.newRequest(op, input, output) output = &ListLaunchPathsOutput{} req.Data = output return } // ListLaunchPaths API operation for AWS Service Catalog. // // Returns a paginated list of all paths to a specified product. A path is how // the user has access to a specified product, and is necessary when provisioning // a product. A path also determines the constraints put on the product. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Service Catalog's // API operation ListLaunchPaths for usage and error information. // // Returned Error Codes: // * InvalidParametersException // One or more parameters provided to the operation are invalid. // // * ResourceNotFoundException // The specified resource was not found. // func (c *ServiceCatalog) ListLaunchPaths(input *ListLaunchPathsInput) (*ListLaunchPathsOutput, error) { req, out := c.ListLaunchPathsRequest(input) err := req.Send() return out, err } const opListRecordHistory = "ListRecordHistory" // ListRecordHistoryRequest generates a "aws/request.Request" representing the // client's request for the ListRecordHistory operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListRecordHistory for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListRecordHistory method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListRecordHistoryRequest method. // req, resp := client.ListRecordHistoryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ServiceCatalog) ListRecordHistoryRequest(input *ListRecordHistoryInput) (req *request.Request, output *ListRecordHistoryOutput) { op := &request.Operation{ Name: opListRecordHistory, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListRecordHistoryInput{} } req = c.newRequest(op, input, output) output = &ListRecordHistoryOutput{} req.Data = output return } // ListRecordHistory API operation for AWS Service Catalog. // // Returns a paginated list of all performed requests, in the form of RecordDetails // objects that are filtered as specified. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Service Catalog's // API operation ListRecordHistory for usage and error information. // // Returned Error Codes: // * InvalidParametersException // One or more parameters provided to the operation are invalid. // func (c *ServiceCatalog) ListRecordHistory(input *ListRecordHistoryInput) (*ListRecordHistoryOutput, error) { req, out := c.ListRecordHistoryRequest(input) err := req.Send() return out, err } const opProvisionProduct = "ProvisionProduct" // ProvisionProductRequest generates a "aws/request.Request" representing the // client's request for the ProvisionProduct operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ProvisionProduct for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ProvisionProduct method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ProvisionProductRequest method. // req, resp := client.ProvisionProductRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ServiceCatalog) ProvisionProductRequest(input *ProvisionProductInput) (req *request.Request, output *ProvisionProductOutput) { op := &request.Operation{ Name: opProvisionProduct, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ProvisionProductInput{} } req = c.newRequest(op, input, output) output = &ProvisionProductOutput{} req.Data = output return } // ProvisionProduct API operation for AWS Service Catalog. // // Requests a Provision of a specified product. A ProvisionedProduct is a resourced // instance for a product. For example, provisioning a CloudFormation-template-backed // product results in launching a CloudFormation stack and all the underlying // resources that come with it. // // You can check the status of this request using the DescribeRecord operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Service Catalog's // API operation ProvisionProduct for usage and error information. // // Returned Error Codes: // * InvalidParametersException // One or more parameters provided to the operation are invalid. // // * ResourceNotFoundException // The specified resource was not found. // // * DuplicateResourceException // The specified resource is a duplicate. // func (c *ServiceCatalog) ProvisionProduct(input *ProvisionProductInput) (*ProvisionProductOutput, error) { req, out := c.ProvisionProductRequest(input) err := req.Send() return out, err } const opScanProvisionedProducts = "ScanProvisionedProducts" // ScanProvisionedProductsRequest generates a "aws/request.Request" representing the // client's request for the ScanProvisionedProducts operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ScanProvisionedProducts for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ScanProvisionedProducts method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ScanProvisionedProductsRequest method. // req, resp := client.ScanProvisionedProductsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ServiceCatalog) ScanProvisionedProductsRequest(input *ScanProvisionedProductsInput) (req *request.Request, output *ScanProvisionedProductsOutput) { op := &request.Operation{ Name: opScanProvisionedProducts, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ScanProvisionedProductsInput{} } req = c.newRequest(op, input, output) output = &ScanProvisionedProductsOutput{} req.Data = output return } // ScanProvisionedProducts API operation for AWS Service Catalog. // // Returns a paginated list of all the ProvisionedProduct objects that are currently // available (not terminated). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Service Catalog's // API operation ScanProvisionedProducts for usage and error information. // // Returned Error Codes: // * InvalidParametersException // One or more parameters provided to the operation are invalid. // func (c *ServiceCatalog) ScanProvisionedProducts(input *ScanProvisionedProductsInput) (*ScanProvisionedProductsOutput, error) { req, out := c.ScanProvisionedProductsRequest(input) err := req.Send() return out, err } const opSearchProducts = "SearchProducts" // SearchProductsRequest generates a "aws/request.Request" representing the // client's request for the SearchProducts operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SearchProducts for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SearchProducts method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SearchProductsRequest method. // req, resp := client.SearchProductsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ServiceCatalog) SearchProductsRequest(input *SearchProductsInput) (req *request.Request, output *SearchProductsOutput) { op := &request.Operation{ Name: opSearchProducts, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SearchProductsInput{} } req = c.newRequest(op, input, output) output = &SearchProductsOutput{} req.Data = output return } // SearchProducts API operation for AWS Service Catalog. // // Returns a paginated list all of the Products objects to which the caller // has access. // // The output of this operation can be used as input for other operations, such // as DescribeProductView. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Service Catalog's // API operation SearchProducts for usage and error information. // // Returned Error Codes: // * InvalidParametersException // One or more parameters provided to the operation are invalid. // func (c *ServiceCatalog) SearchProducts(input *SearchProductsInput) (*SearchProductsOutput, error) { req, out := c.SearchProductsRequest(input) err := req.Send() return out, err } const opTerminateProvisionedProduct = "TerminateProvisionedProduct" // TerminateProvisionedProductRequest generates a "aws/request.Request" representing the // client's request for the TerminateProvisionedProduct operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See TerminateProvisionedProduct for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the TerminateProvisionedProduct method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the TerminateProvisionedProductRequest method. // req, resp := client.TerminateProvisionedProductRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ServiceCatalog) TerminateProvisionedProductRequest(input *TerminateProvisionedProductInput) (req *request.Request, output *TerminateProvisionedProductOutput) { op := &request.Operation{ Name: opTerminateProvisionedProduct, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &TerminateProvisionedProductInput{} } req = c.newRequest(op, input, output) output = &TerminateProvisionedProductOutput{} req.Data = output return } // TerminateProvisionedProduct API operation for AWS Service Catalog. // // Requests termination of an existing ProvisionedProduct object. If there are // Tags associated with the object, they are terminated when the ProvisionedProduct // object is terminated. // // This operation does not delete any records associated with the ProvisionedProduct // object. // // You can check the status of this request using the DescribeRecord operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Service Catalog's // API operation TerminateProvisionedProduct for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The specified resource was not found. // func (c *ServiceCatalog) TerminateProvisionedProduct(input *TerminateProvisionedProductInput) (*TerminateProvisionedProductOutput, error) { req, out := c.TerminateProvisionedProductRequest(input) err := req.Send() return out, err } const opUpdateProvisionedProduct = "UpdateProvisionedProduct" // UpdateProvisionedProductRequest generates a "aws/request.Request" representing the // client's request for the UpdateProvisionedProduct operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateProvisionedProduct for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateProvisionedProduct method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateProvisionedProductRequest method. // req, resp := client.UpdateProvisionedProductRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *ServiceCatalog) UpdateProvisionedProductRequest(input *UpdateProvisionedProductInput) (req *request.Request, output *UpdateProvisionedProductOutput) { op := &request.Operation{ Name: opUpdateProvisionedProduct, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateProvisionedProductInput{} } req = c.newRequest(op, input, output) output = &UpdateProvisionedProductOutput{} req.Data = output return } // UpdateProvisionedProduct API operation for AWS Service Catalog. // // Requests updates to the configuration of an existing ProvisionedProduct object. // If there are tags associated with the object, they cannot be updated or added // with this operation. Depending on the specific updates requested, this operation // may update with no interruption, with some interruption, or replace the ProvisionedProduct // object entirely. // // You can check the status of this request using the DescribeRecord operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Service Catalog's // API operation UpdateProvisionedProduct for usage and error information. // // Returned Error Codes: // * InvalidParametersException // One or more parameters provided to the operation are invalid. // // * ResourceNotFoundException // The specified resource was not found. // func (c *ServiceCatalog) UpdateProvisionedProduct(input *UpdateProvisionedProductInput) (*UpdateProvisionedProductOutput, error) { req, out := c.UpdateProvisionedProductRequest(input) err := req.Send() return out, err } // The access level to limit results. type AccessLevelFilter struct { _ struct{} `type:"structure"` // Specifies the access level. // // Account allows results at the account level. // // Role allows results based on the federated role of the specified user. // // User allows results limited to the specified user. Key *string `type:"string" enum:"AccessLevelFilterKey"` // Specifies the user to which the access level applies. A value of Self is // currently supported. Value *string `type:"string"` } // String returns the string representation func (s AccessLevelFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AccessLevelFilter) GoString() string { return s.String() } // An administrator-specified constraint to apply when provisioning a product. type ConstraintSummary struct { _ struct{} `type:"structure"` // The text description of the constraint. Description *string `type:"string"` // The type of the constraint. Type *string `type:"string"` } // String returns the string representation func (s ConstraintSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConstraintSummary) GoString() string { return s.String() } type DescribeProductInput struct { _ struct{} `type:"structure"` // The language code to use for this operation. Supported language codes are // as follows: // // "en" (English) // // "jp" (Japanese) // // "zh" (Chinese) // // If no code is specified, "en" is used as the default. AcceptLanguage *string `type:"string"` // The ProductId of the product to describe. // // Id is a required field Id *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeProductInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeProductInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeProductInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeProductInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeProductOutput struct { _ struct{} `type:"structure"` // The summary metadata about the specified product. ProductViewSummary *ProductViewSummary `type:"structure"` // A list of provisioning artifact objects for the specified product. The ProvisioningArtifacts // parameter represent the ways the specified product can be provisioned. ProvisioningArtifacts []*ProvisioningArtifact `type:"list"` } // String returns the string representation func (s DescribeProductOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeProductOutput) GoString() string { return s.String() } type DescribeProductViewInput struct { _ struct{} `type:"structure"` // The language code to use for this operation. Supported language codes are // as follows: // // "en" (English) // // "jp" (Japanese) // // "zh" (Chinese) // // If no code is specified, "en" is used as the default. AcceptLanguage *string `type:"string"` // The ProductViewId of the product to describe. // // Id is a required field Id *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeProductViewInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeProductViewInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeProductViewInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeProductViewInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeProductViewOutput struct { _ struct{} `type:"structure"` // The summary metadata about the specified product. ProductViewSummary *ProductViewSummary `type:"structure"` // A list of provisioning artifact objects for the specified product. The ProvisioningArtifacts // represent the ways in which the specified product can be provisioned. ProvisioningArtifacts []*ProvisioningArtifact `type:"list"` } // String returns the string representation func (s DescribeProductViewOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeProductViewOutput) GoString() string { return s.String() } type DescribeProvisioningParametersInput struct { _ struct{} `type:"structure"` // The language code to use for this operation. Supported language codes are // as follows: // // "en" (English) // // "jp" (Japanese) // // "zh" (Chinese) // // If no code is specified, "en" is used as the default. AcceptLanguage *string `type:"string"` // The identifier of the path for this product's provisioning. This value is // optional if the product has a default path, and is required if there is more // than one path for the specified product. PathId *string `min:"1" type:"string"` // The identifier of the product. // // ProductId is a required field ProductId *string `min:"1" type:"string" required:"true"` // The provisioning artifact identifier for this product. // // ProvisioningArtifactId is a required field ProvisioningArtifactId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeProvisioningParametersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeProvisioningParametersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeProvisioningParametersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeProvisioningParametersInput"} if s.PathId != nil && len(*s.PathId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PathId", 1)) } if s.ProductId == nil { invalidParams.Add(request.NewErrParamRequired("ProductId")) } if s.ProductId != nil && len(*s.ProductId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProductId", 1)) } if s.ProvisioningArtifactId == nil { invalidParams.Add(request.NewErrParamRequired("ProvisioningArtifactId")) } if s.ProvisioningArtifactId != nil && len(*s.ProvisioningArtifactId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProvisioningArtifactId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeProvisioningParametersOutput struct { _ struct{} `type:"structure"` // The list of constraint summaries that apply to provisioning this product. ConstraintSummaries []*ConstraintSummary `type:"list"` // The list of parameters used to successfully provision the product. Each parameter // includes a list of allowable values and additional metadata about each parameter. ProvisioningArtifactParameters []*ProvisioningArtifactParameter `type:"list"` // Any additional metadata specifically related to the provisioning of the product. // For example, see the Version field of the CloudFormation template. UsageInstructions []*UsageInstruction `type:"list"` } // String returns the string representation func (s DescribeProvisioningParametersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeProvisioningParametersOutput) GoString() string { return s.String() } type DescribeRecordInput struct { _ struct{} `type:"structure"` // The language code to use for this operation. Supported language codes are // as follows: // // "en" (English) // // "jp" (Japanese) // // "zh" (Chinese) // // If no code is specified, "en" is used as the default. AcceptLanguage *string `type:"string"` // The record identifier of the ProvisionedProduct object for which to retrieve // output information. This is the RecordDetail.RecordId obtained from the request // operation's response. // // Id is a required field Id *string `min:"1" type:"string" required:"true"` // The maximum number of items to return in the results. If more results exist // than fit in the specified PageSize, the value of NextPageToken in the response // is non-null. PageSize *int64 `type:"integer"` // The page token of the first page retrieved. If null, this retrieves the first // page of size PageSize. PageToken *string `type:"string"` } // String returns the string representation func (s DescribeRecordInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRecordInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeRecordInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeRecordInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeRecordOutput struct { _ struct{} `type:"structure"` // The page token to use to retrieve the next page of results for this operation. // If there are no more pages, this value is null. NextPageToken *string `type:"string"` // Detailed record information for the specified product. RecordDetail *RecordDetail `type:"structure"` // A list of outputs for the specified Product object created as the result // of a request. For example, a CloudFormation-backed product that creates an // S3 bucket would have an output for the S3 bucket URL. RecordOutputs []*RecordOutput `type:"list"` } // String returns the string representation func (s DescribeRecordOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeRecordOutput) GoString() string { return s.String() } // Summary information about a path for a user to have access to a specified // product. type LaunchPathSummary struct { _ struct{} `type:"structure"` // List of constraints on the portfolio-product relationship. ConstraintSummaries []*ConstraintSummary `type:"list"` // The unique identifier of the product path. Id *string `min:"1" type:"string"` // Corresponds to the name of the portfolio to which the user was assigned. Name *string `type:"string"` // List of tags used by this launch path. Tags []*Tag `type:"list"` } // String returns the string representation func (s LaunchPathSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LaunchPathSummary) GoString() string { return s.String() } type ListLaunchPathsInput struct { _ struct{} `type:"structure"` // The language code to use for this operation. Supported language codes are // as follows: // // "en" (English) // // "jp" (Japanese) // // "zh" (Chinese) // // If no code is specified, "en" is used as the default. AcceptLanguage *string `type:"string"` // The maximum number of items to return in the results. If more results exist // than fit in the specified PageSize, the value of NextPageToken in the response // is non-null. PageSize *int64 `type:"integer"` // The page token of the first page retrieved. If null, this retrieves the first // page of size PageSize. PageToken *string `type:"string"` // Identifies the product for which to retrieve LaunchPathSummaries information. // // ProductId is a required field ProductId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ListLaunchPathsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListLaunchPathsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListLaunchPathsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListLaunchPathsInput"} if s.ProductId == nil { invalidParams.Add(request.NewErrParamRequired("ProductId")) } if s.ProductId != nil && len(*s.ProductId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProductId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListLaunchPathsOutput struct { _ struct{} `type:"structure"` // List of launch path information summaries for the specified PageToken. LaunchPathSummaries []*LaunchPathSummary `type:"list"` // The page token to use to retrieve the next page of results for this operation. // If there are no more pages, this value is null. NextPageToken *string `type:"string"` } // String returns the string representation func (s ListLaunchPathsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListLaunchPathsOutput) GoString() string { return s.String() } type ListRecordHistoryInput struct { _ struct{} `type:"structure"` // The language code to use for this operation. Supported language codes are // as follows: // // "en" (English) // // "jp" (Japanese) // // "zh" (Chinese) // // If no code is specified, "en" is used as the default. AcceptLanguage *string `type:"string"` // The access level for obtaining results. If left unspecified, User level access // is used. AccessLevelFilter *AccessLevelFilter `type:"structure"` // The maximum number of items to return in the results. If more results exist // than fit in the specified PageSize, the value of NextPageToken in the response // is non-null. PageSize *int64 `type:"integer"` // The page token of the first page retrieved. If null, this retrieves the first // page of size PageSize. PageToken *string `type:"string"` // The filter to limit search results. SearchFilter *ListRecordHistorySearchFilter `type:"structure"` } // String returns the string representation func (s ListRecordHistoryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRecordHistoryInput) GoString() string { return s.String() } type ListRecordHistoryOutput struct { _ struct{} `type:"structure"` // The page token to use to retrieve the next page of results for this operation. // If there are no more pages, this value is null. NextPageToken *string `type:"string"` // A list of record detail objects, listed in reverse chronological order. RecordDetails []*RecordDetail `type:"list"` } // String returns the string representation func (s ListRecordHistoryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRecordHistoryOutput) GoString() string { return s.String() } // The search filter to limit results when listing request history records. type ListRecordHistorySearchFilter struct { _ struct{} `type:"structure"` // The filter key. Key *string `type:"string"` // The filter value for Key. Value *string `type:"string"` } // String returns the string representation func (s ListRecordHistorySearchFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRecordHistorySearchFilter) GoString() string { return s.String() } // The constraints that the administrator has put on the parameter. type ParameterConstraints struct { _ struct{} `type:"structure"` // The values that the administrator has allowed for the parameter. AllowedValues []*string `type:"list"` } // String returns the string representation func (s ParameterConstraints) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ParameterConstraints) GoString() string { return s.String() } // A single product view aggregation value/count pair, containing metadata about // each product to which the calling user has access. type ProductViewAggregationValue struct { _ struct{} `type:"structure"` // An approximate count of the products that match the value. ApproximateCount *int64 `type:"integer"` // The value of the product view aggregation. Value *string `type:"string"` } // String returns the string representation func (s ProductViewAggregationValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ProductViewAggregationValue) GoString() string { return s.String() } // The summary metadata about the specified product. type ProductViewSummary struct { _ struct{} `type:"structure"` // The distributor of the product. Contact the product administrator for the // significance of this value. Distributor *string `type:"string"` // A value of false indicates that the product does not have a default path, // while a value of true indicates that it does. If it's false, call ListLaunchPaths // to disambiguate between paths. If true, ListLaunchPaths is not required, // and the output of the ProductViewSummary operation can be used directly with // DescribeProvisioningParameters. HasDefaultPath *bool `type:"boolean"` // The product view identifier. Id *string `min:"1" type:"string"` // The name of the product. Name *string `type:"string"` // The owner of the product. Contact the product administrator for the significance // of this value. Owner *string `type:"string"` // The product identifier. ProductId *string `min:"1" type:"string"` // Short description of the product. ShortDescription *string `type:"string"` // The description of the support for this Product. SupportDescription *string `type:"string"` // The email contact information to obtain support for this Product. SupportEmail *string `type:"string"` // The URL information to obtain support for this Product. SupportUrl *string `type:"string"` // The product type. Contact the product administrator for the significance // of this value. Type *string `type:"string"` } // String returns the string representation func (s ProductViewSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ProductViewSummary) GoString() string { return s.String() } type ProvisionProductInput struct { _ struct{} `type:"structure"` // The language code to use for this operation. Supported language codes are // as follows: // // "en" (English) // // "jp" (Japanese) // // "zh" (Chinese) // // If no code is specified, "en" is used as the default. AcceptLanguage *string `type:"string"` // Passed to CloudFormation. The SNS topic ARNs to which to publish stack-related // events. NotificationArns []*string `type:"list"` // The identifier of the path for this product's provisioning. This value is // optional if the product has a default path, and is required if there is more // than one path for the specified product. PathId *string `min:"1" type:"string"` // The identifier of the product. // // ProductId is a required field ProductId *string `min:"1" type:"string" required:"true"` // An idempotency token that uniquely identifies the provisioning request. // // ProvisionToken is a required field ProvisionToken *string `min:"1" type:"string" required:"true" idempotencyToken:"true"` // A user-friendly name to identify the ProvisionedProduct object. This value // must be unique for the AWS account and cannot be updated after the product // is provisioned. // // ProvisionedProductName is a required field ProvisionedProductName *string `type:"string" required:"true"` // The provisioning artifact identifier for this product. // // ProvisioningArtifactId is a required field ProvisioningArtifactId *string `min:"1" type:"string" required:"true"` // Parameters specified by the administrator that are required for provisioning // the product. ProvisioningParameters []*ProvisioningParameter `type:"list"` // A list of tags to use as provisioning options. Tags []*Tag `type:"list"` } // String returns the string representation func (s ProvisionProductInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ProvisionProductInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ProvisionProductInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ProvisionProductInput"} if s.PathId != nil && len(*s.PathId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PathId", 1)) } if s.ProductId == nil { invalidParams.Add(request.NewErrParamRequired("ProductId")) } if s.ProductId != nil && len(*s.ProductId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProductId", 1)) } if s.ProvisionToken == nil { invalidParams.Add(request.NewErrParamRequired("ProvisionToken")) } if s.ProvisionToken != nil && len(*s.ProvisionToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProvisionToken", 1)) } if s.ProvisionedProductName == nil { invalidParams.Add(request.NewErrParamRequired("ProvisionedProductName")) } if s.ProvisioningArtifactId == nil { invalidParams.Add(request.NewErrParamRequired("ProvisioningArtifactId")) } if s.ProvisioningArtifactId != nil && len(*s.ProvisioningArtifactId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProvisioningArtifactId", 1)) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ProvisionProductOutput struct { _ struct{} `type:"structure"` // The detailed result of the ProvisionProduct request, containing the inputs // made to that request, the current state of the request, a pointer to the // ProvisionedProduct object of the request, and a list of any errors that the // request encountered. RecordDetail *RecordDetail `type:"structure"` } // String returns the string representation func (s ProvisionProductOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ProvisionProductOutput) GoString() string { return s.String() } // Detailed information about a ProvisionedProduct object. type ProvisionedProductDetail struct { _ struct{} `type:"structure"` // The ARN associated with the ProvisionedProduct object. Arn *string `min:"1" type:"string"` // The time the ProvisionedProduct was created. CreatedTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The identifier of the ProvisionedProduct object. Id *string `type:"string"` // An idempotency token that uniquely identifies this ProvisionedProduct. IdempotencyToken *string `min:"1" type:"string"` // The record identifier of the last request performed on this ProvisionedProduct // object. LastRecordId *string `type:"string"` // The user-friendly name of the ProvisionedProduct object. Name *string `min:"1" type:"string"` // The current status of the ProvisionedProduct. Status *string `type:"string" enum:"RecordStatus"` // The current status message of the ProvisionedProduct. StatusMessage *string `type:"string"` // The type of the ProvisionedProduct object. Type *string `type:"string"` } // String returns the string representation func (s ProvisionedProductDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ProvisionedProductDetail) GoString() string { return s.String() } // Contains information indicating the ways in which a product can be provisioned. type ProvisioningArtifact struct { _ struct{} `type:"structure"` // The time that the artifact was created by the Administrator. CreatedTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The text description of the artifact. Description *string `type:"string"` // The identifier for the artifact. Id *string `min:"1" type:"string"` // The name of the artifact. Name *string `type:"string"` } // String returns the string representation func (s ProvisioningArtifact) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ProvisioningArtifact) GoString() string { return s.String() } // A parameter used to successfully provision the product. This value includes // a list of allowable values and additional metadata. type ProvisioningArtifactParameter struct { _ struct{} `type:"structure"` // The default value for this parameter. DefaultValue *string `type:"string"` // The text description of the parameter. Description *string `type:"string"` // If this value is true, the value for this parameter is obfuscated from view // when the parameter is retrieved. This parameter is used to hide sensitive // information. IsNoEcho *bool `type:"boolean"` // The list of constraints that the administrator has put on the parameter. ParameterConstraints *ParameterConstraints `type:"structure"` // The parameter key. ParameterKey *string `type:"string"` // The parameter type. ParameterType *string `type:"string"` } // String returns the string representation func (s ProvisioningArtifactParameter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ProvisioningArtifactParameter) GoString() string { return s.String() } // The arameter key/value pairs used to provision a product. type ProvisioningParameter struct { _ struct{} `type:"structure"` // The ProvisioningArtifactParameter.ParameterKey parameter from DescribeProvisioningParameters. Key *string `type:"string"` // The value to use for provisioning. Any constraints on this value can be found // in ProvisioningArtifactParameter for Key. Value *string `type:"string"` } // String returns the string representation func (s ProvisioningParameter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ProvisioningParameter) GoString() string { return s.String() } // The full details of a specific ProvisionedProduct object. type RecordDetail struct { _ struct{} `type:"structure"` // The time when the record for the ProvisionedProduct object was created. CreatedTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The identifier of the path for this product's provisioning. PathId *string `min:"1" type:"string"` // The identifier of the product. ProductId *string `min:"1" type:"string"` // The identifier of the ProvisionedProduct object. ProvisionedProductId *string `min:"1" type:"string"` // The user-friendly name of the ProvisionedProduct object. ProvisionedProductName *string `type:"string"` // The type of the ProvisionedProduct object. ProvisionedProductType *string `type:"string"` // The provisioning artifact identifier for this product. ProvisioningArtifactId *string `min:"1" type:"string"` // A list of errors that occurred while processing the request. RecordErrors []*RecordError `type:"list"` // The identifier of the ProvisionedProduct object record. RecordId *string `min:"1" type:"string"` // List of tags associated with this record. RecordTags []*RecordTag `type:"list"` // The record type for this record. RecordType *string `type:"string"` // The status of the ProvisionedProduct object. Status *string `type:"string" enum:"RecordStatus"` // The time when the record for the ProvisionedProduct object was last updated. UpdatedTime *time.Time `type:"timestamp" timestampFormat:"unix"` } // String returns the string representation func (s RecordDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecordDetail) GoString() string { return s.String() } // The error code and description resulting from an operation. type RecordError struct { _ struct{} `type:"structure"` // The numeric value of the error. Code *string `type:"string"` // The text description of the error. Description *string `type:"string"` } // String returns the string representation func (s RecordError) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecordError) GoString() string { return s.String() } // An output for the specified Product object created as the result of a request. // For example, a CloudFormation-backed product that creates an S3 bucket would // have an output for the S3 bucket URL. type RecordOutput struct { _ struct{} `type:"structure"` // The text description of the output. Description *string `type:"string"` // The output key. OutputKey *string `type:"string"` // The output value. OutputValue *string `type:"string"` } // String returns the string representation func (s RecordOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecordOutput) GoString() string { return s.String() } // A tag associated with the record, stored as a key-value pair. type RecordTag struct { _ struct{} `type:"structure"` // The key for this tag. Key *string `min:"1" type:"string"` // The value for this tag. Value *string `min:"1" type:"string"` } // String returns the string representation func (s RecordTag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecordTag) GoString() string { return s.String() } type ScanProvisionedProductsInput struct { _ struct{} `type:"structure"` // The language code to use for this operation. Supported language codes are // as follows: // // "en" (English) // // "jp" (Japanese) // // "zh" (Chinese) // // If no code is specified, "en" is used as the default. AcceptLanguage *string `type:"string"` // The access level for obtaining results. If left unspecified, User level access // is used. AccessLevelFilter *AccessLevelFilter `type:"structure"` // The maximum number of items to return in the results. If more results exist // than fit in the specified PageSize, the value of NextPageToken in the response // is non-null. PageSize *int64 `type:"integer"` // The page token of the first page retrieved. If null, this retrieves the first // page of size PageSize. PageToken *string `type:"string"` } // String returns the string representation func (s ScanProvisionedProductsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScanProvisionedProductsInput) GoString() string { return s.String() } type ScanProvisionedProductsOutput struct { _ struct{} `type:"structure"` // The page token to use to retrieve the next page of results for this operation. // If there are no more pages, this value is null. NextPageToken *string `type:"string"` // A list of ProvisionedProduct detail objects. ProvisionedProducts []*ProvisionedProductDetail `type:"list"` } // String returns the string representation func (s ScanProvisionedProductsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScanProvisionedProductsOutput) GoString() string { return s.String() } type SearchProductsInput struct { _ struct{} `type:"structure"` // The language code to use for this operation. Supported language codes are // as follows: // // "en" (English) // // "jp" (Japanese) // // "zh" (Chinese) // // If no code is specified, "en" is used as the default. AcceptLanguage *string `type:"string"` // The list of filters with which to limit search results. If no search filters // are specified, the output is all the products to which the calling user has // access. Filters map[string][]*string `type:"map"` // The maximum number of items to return in the results. If more results exist // than fit in the specified PageSize, the value of NextPageToken in the response // is non-null. PageSize *int64 `type:"integer"` // The page token of the first page retrieved. If null, this retrieves the first // page of size PageSize. PageToken *string `type:"string"` // The sort field specifier. If no value is specified, results are not sorted. SortBy *string `type:"string" enum:"ProductViewSortBy"` // The sort order specifier. If no value is specified, results are not sorted. SortOrder *string `type:"string" enum:"SortOrder"` } // String returns the string representation func (s SearchProductsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SearchProductsInput) GoString() string { return s.String() } type SearchProductsOutput struct { _ struct{} `type:"structure"` // The page token to use to retrieve the next page of results for this operation. // If there are no more pages, this value is null. NextPageToken *string `type:"string"` // A list of the product view aggregation value objects. ProductViewAggregations map[string][]*ProductViewAggregationValue `type:"map"` // A list of the product view summary objects. ProductViewSummaries []*ProductViewSummary `type:"list"` } // String returns the string representation func (s SearchProductsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SearchProductsOutput) GoString() string { return s.String() } // Key/value pairs to associate with this provisioning. These tags are entirely // discretionary and are propagated to the resources created in the provisioning. type Tag struct { _ struct{} `type:"structure"` // The ProvisioningArtifactParameter.TagKey parameter from DescribeProvisioningParameters. Key *string `min:"1" type:"string"` // The esired value for this key. Value *string `min:"1" type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Value != nil && len(*s.Value) < 1 { invalidParams.Add(request.NewErrParamMinLen("Value", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type TerminateProvisionedProductInput struct { _ struct{} `type:"structure"` // The language code to use for this operation. Supported language codes are // as follows: // // "en" (English) // // "jp" (Japanese) // // "zh" (Chinese) // // If no code is specified, "en" is used as the default. AcceptLanguage *string `type:"string"` // If set to true, AWS Service Catalog stops managing the specified ProvisionedProduct // object even if it cannot delete the underlying resources. IgnoreErrors *bool `type:"boolean"` // The identifier of the ProvisionedProduct object to terminate. You must specify // either ProvisionedProductName or ProvisionedProductId, but not both. ProvisionedProductId *string `min:"1" type:"string"` // The name of the ProvisionedProduct object to terminate. You must specify // either ProvisionedProductName or ProvisionedProductId, but not both. ProvisionedProductName *string `min:"1" type:"string"` // An idempotency token that uniquely identifies the termination request. This // token is only valid during the termination process. After the ProvisionedProduct // object is terminated, further requests to terminate the same ProvisionedProduct // object always return ResourceNotFound regardless of the value of TerminateToken. // // TerminateToken is a required field TerminateToken *string `min:"1" type:"string" required:"true" idempotencyToken:"true"` } // String returns the string representation func (s TerminateProvisionedProductInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TerminateProvisionedProductInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TerminateProvisionedProductInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TerminateProvisionedProductInput"} if s.ProvisionedProductId != nil && len(*s.ProvisionedProductId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProvisionedProductId", 1)) } if s.ProvisionedProductName != nil && len(*s.ProvisionedProductName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProvisionedProductName", 1)) } if s.TerminateToken == nil { invalidParams.Add(request.NewErrParamRequired("TerminateToken")) } if s.TerminateToken != nil && len(*s.TerminateToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("TerminateToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type TerminateProvisionedProductOutput struct { _ struct{} `type:"structure"` // The detailed result of the TerminateProvisionedProduct request, containing // the inputs made to that request, the current state of the request, a pointer // to the ProvisionedProduct object that the request is modifying, and a list // of any errors that the request encountered. RecordDetail *RecordDetail `type:"structure"` } // String returns the string representation func (s TerminateProvisionedProductOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TerminateProvisionedProductOutput) GoString() string { return s.String() } type UpdateProvisionedProductInput struct { _ struct{} `type:"structure"` // The language code to use for this operation. Supported language codes are // as follows: // // "en" (English) // // "jp" (Japanese) // // "zh" (Chinese) // // If no code is specified, "en" is used as the default. AcceptLanguage *string `type:"string"` // The identifier of the path to use in the updated ProvisionedProduct object. // This value is optional if the product has a default path, and is required // if there is more than one path for the specified product. PathId *string `min:"1" type:"string"` // The identifier of the ProvisionedProduct object. ProductId *string `min:"1" type:"string"` // The identifier of the ProvisionedProduct object to update. You must specify // either ProvisionedProductName or ProvisionedProductId, but not both. ProvisionedProductId *string `min:"1" type:"string"` // The updated name of the ProvisionedProduct object . You must specify either // ProvisionedProductName or ProvisionedProductId, but not both. ProvisionedProductName *string `min:"1" type:"string"` // The provisioning artifact identifier for this product. ProvisioningArtifactId *string `min:"1" type:"string"` // A list of ProvisioningParameter objects used to update the ProvisionedProduct // object. ProvisioningParameters []*UpdateProvisioningParameter `type:"list"` // The idempotency token that uniquely identifies the provisioning update request. // // UpdateToken is a required field UpdateToken *string `min:"1" type:"string" required:"true" idempotencyToken:"true"` } // String returns the string representation func (s UpdateProvisionedProductInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateProvisionedProductInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateProvisionedProductInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateProvisionedProductInput"} if s.PathId != nil && len(*s.PathId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PathId", 1)) } if s.ProductId != nil && len(*s.ProductId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProductId", 1)) } if s.ProvisionedProductId != nil && len(*s.ProvisionedProductId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProvisionedProductId", 1)) } if s.ProvisionedProductName != nil && len(*s.ProvisionedProductName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProvisionedProductName", 1)) } if s.ProvisioningArtifactId != nil && len(*s.ProvisioningArtifactId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProvisioningArtifactId", 1)) } if s.UpdateToken == nil { invalidParams.Add(request.NewErrParamRequired("UpdateToken")) } if s.UpdateToken != nil && len(*s.UpdateToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("UpdateToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateProvisionedProductOutput struct { _ struct{} `type:"structure"` // The detailed result of the UpdateProvisionedProduct request, containing the // inputs made to that request, the current state of the request, a pointer // to the ProvisionedProduct object that the request is modifying, and a list // of any errors that the request encountered. RecordDetail *RecordDetail `type:"structure"` } // String returns the string representation func (s UpdateProvisionedProductOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateProvisionedProductOutput) GoString() string { return s.String() } // The parameter key/value pair used to update a ProvisionedProduct object. // If UsePreviousValue is set to true, Value is ignored and the value for Key // is kept as previously set (current value). type UpdateProvisioningParameter struct { _ struct{} `type:"structure"` // The ProvisioningArtifactParameter.ParameterKey parameter from DescribeProvisioningParameters. Key *string `type:"string"` // If true, uses the currently set value for Key, ignoring UpdateProvisioningParameter.Value. UsePreviousValue *bool `type:"boolean"` // The value to use for updating the product provisioning. Any constraints on // this value can be found in the ProvisioningArtifactParameter parameter for // Key. Value *string `type:"string"` } // String returns the string representation func (s UpdateProvisioningParameter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateProvisioningParameter) GoString() string { return s.String() } // Additional information provided by the administrator. type UsageInstruction struct { _ struct{} `type:"structure"` // The usage instruction type for the value. Type *string `type:"string"` // The usage instruction value for this type. Value *string `type:"string"` } // String returns the string representation func (s UsageInstruction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UsageInstruction) GoString() string { return s.String() } const ( // AccessLevelFilterKeyAccount is a AccessLevelFilterKey enum value AccessLevelFilterKeyAccount = "Account" // AccessLevelFilterKeyRole is a AccessLevelFilterKey enum value AccessLevelFilterKeyRole = "Role" // AccessLevelFilterKeyUser is a AccessLevelFilterKey enum value AccessLevelFilterKeyUser = "User" ) const ( // ProductViewFilterByFullTextSearch is a ProductViewFilterBy enum value ProductViewFilterByFullTextSearch = "FullTextSearch" // ProductViewFilterByOwner is a ProductViewFilterBy enum value ProductViewFilterByOwner = "Owner" // ProductViewFilterByProductType is a ProductViewFilterBy enum value ProductViewFilterByProductType = "ProductType" ) const ( // ProductViewSortByTitle is a ProductViewSortBy enum value ProductViewSortByTitle = "Title" // ProductViewSortByVersionCount is a ProductViewSortBy enum value ProductViewSortByVersionCount = "VersionCount" // ProductViewSortByCreationDate is a ProductViewSortBy enum value ProductViewSortByCreationDate = "CreationDate" ) const ( // RecordStatusInProgress is a RecordStatus enum value RecordStatusInProgress = "IN_PROGRESS" // RecordStatusSucceeded is a RecordStatus enum value RecordStatusSucceeded = "SUCCEEDED" // RecordStatusError is a RecordStatus enum value RecordStatusError = "ERROR" ) const ( // SortOrderAscending is a SortOrder enum value SortOrderAscending = "ASCENDING" // SortOrderDescending is a SortOrder enum value SortOrderDescending = "DESCENDING" ) aws-sdk-go-1.4.22/service/servicecatalog/examples_test.go000066400000000000000000000223731300374646400234310ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package servicecatalog_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/servicecatalog" ) var _ time.Duration var _ bytes.Buffer func ExampleServiceCatalog_DescribeProduct() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := servicecatalog.New(sess) params := &servicecatalog.DescribeProductInput{ Id: aws.String("Id"), // Required AcceptLanguage: aws.String("AcceptLanguage"), } resp, err := svc.DescribeProduct(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleServiceCatalog_DescribeProductView() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := servicecatalog.New(sess) params := &servicecatalog.DescribeProductViewInput{ Id: aws.String("Id"), // Required AcceptLanguage: aws.String("AcceptLanguage"), } resp, err := svc.DescribeProductView(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleServiceCatalog_DescribeProvisioningParameters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := servicecatalog.New(sess) params := &servicecatalog.DescribeProvisioningParametersInput{ ProductId: aws.String("Id"), // Required ProvisioningArtifactId: aws.String("Id"), // Required AcceptLanguage: aws.String("AcceptLanguage"), PathId: aws.String("Id"), } resp, err := svc.DescribeProvisioningParameters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleServiceCatalog_DescribeRecord() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := servicecatalog.New(sess) params := &servicecatalog.DescribeRecordInput{ Id: aws.String("Id"), // Required AcceptLanguage: aws.String("AcceptLanguage"), PageSize: aws.Int64(1), PageToken: aws.String("PageToken"), } resp, err := svc.DescribeRecord(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleServiceCatalog_ListLaunchPaths() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := servicecatalog.New(sess) params := &servicecatalog.ListLaunchPathsInput{ ProductId: aws.String("Id"), // Required AcceptLanguage: aws.String("AcceptLanguage"), PageSize: aws.Int64(1), PageToken: aws.String("PageToken"), } resp, err := svc.ListLaunchPaths(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleServiceCatalog_ListRecordHistory() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := servicecatalog.New(sess) params := &servicecatalog.ListRecordHistoryInput{ AcceptLanguage: aws.String("AcceptLanguage"), AccessLevelFilter: &servicecatalog.AccessLevelFilter{ Key: aws.String("AccessLevelFilterKey"), Value: aws.String("AccessLevelFilterValue"), }, PageSize: aws.Int64(1), PageToken: aws.String("PageToken"), SearchFilter: &servicecatalog.ListRecordHistorySearchFilter{ Key: aws.String("SearchFilterKey"), Value: aws.String("SearchFilterValue"), }, } resp, err := svc.ListRecordHistory(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleServiceCatalog_ProvisionProduct() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := servicecatalog.New(sess) params := &servicecatalog.ProvisionProductInput{ ProductId: aws.String("Id"), // Required ProvisionToken: aws.String("IdempotencyToken"), // Required ProvisionedProductName: aws.String("ProvisionedProductName"), // Required ProvisioningArtifactId: aws.String("Id"), // Required AcceptLanguage: aws.String("AcceptLanguage"), NotificationArns: []*string{ aws.String("NotificationArn"), // Required // More values... }, PathId: aws.String("Id"), ProvisioningParameters: []*servicecatalog.ProvisioningParameter{ { // Required Key: aws.String("ParameterKey"), Value: aws.String("ParameterValue"), }, // More values... }, Tags: []*servicecatalog.Tag{ { // Required Key: aws.String("TagKey"), Value: aws.String("TagValue"), }, // More values... }, } resp, err := svc.ProvisionProduct(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleServiceCatalog_ScanProvisionedProducts() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := servicecatalog.New(sess) params := &servicecatalog.ScanProvisionedProductsInput{ AcceptLanguage: aws.String("AcceptLanguage"), AccessLevelFilter: &servicecatalog.AccessLevelFilter{ Key: aws.String("AccessLevelFilterKey"), Value: aws.String("AccessLevelFilterValue"), }, PageSize: aws.Int64(1), PageToken: aws.String("PageToken"), } resp, err := svc.ScanProvisionedProducts(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleServiceCatalog_SearchProducts() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := servicecatalog.New(sess) params := &servicecatalog.SearchProductsInput{ AcceptLanguage: aws.String("AcceptLanguage"), Filters: map[string][]*string{ "Key": { // Required aws.String("ProductViewFilterValue"), // Required // More values... }, // More values... }, PageSize: aws.Int64(1), PageToken: aws.String("PageToken"), SortBy: aws.String("ProductViewSortBy"), SortOrder: aws.String("SortOrder"), } resp, err := svc.SearchProducts(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleServiceCatalog_TerminateProvisionedProduct() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := servicecatalog.New(sess) params := &servicecatalog.TerminateProvisionedProductInput{ TerminateToken: aws.String("IdempotencyToken"), // Required AcceptLanguage: aws.String("AcceptLanguage"), IgnoreErrors: aws.Bool(true), ProvisionedProductId: aws.String("Id"), ProvisionedProductName: aws.String("ProvisionedProductNameOrArn"), } resp, err := svc.TerminateProvisionedProduct(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleServiceCatalog_UpdateProvisionedProduct() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := servicecatalog.New(sess) params := &servicecatalog.UpdateProvisionedProductInput{ UpdateToken: aws.String("IdempotencyToken"), // Required AcceptLanguage: aws.String("AcceptLanguage"), PathId: aws.String("Id"), ProductId: aws.String("Id"), ProvisionedProductId: aws.String("Id"), ProvisionedProductName: aws.String("ProvisionedProductNameOrArn"), ProvisioningArtifactId: aws.String("Id"), ProvisioningParameters: []*servicecatalog.UpdateProvisioningParameter{ { // Required Key: aws.String("ParameterKey"), UsePreviousValue: aws.Bool(true), Value: aws.String("ParameterValue"), }, // More values... }, } resp, err := svc.UpdateProvisionedProduct(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/servicecatalog/service.go000066400000000000000000000070051300374646400222070ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package servicecatalog import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Overview // // AWS Service Catalog (https://aws.amazon.com/servicecatalog/) allows organizations // to create and manage catalogs of IT services that are approved for use on // AWS. This documentation provides reference material for the AWS Service Catalog // end user API. To get the most out of this documentation, you need to be familiar // with the terminology discussed in AWS Service Catalog Concepts (http://docs.aws.amazon.com/servicecatalog/latest/userguide/what-is_concepts.html). // // Additional Resources // // * AWS Service Catalog Administrator Guide (http://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html) // // * AWS Service Catalog User Guide (http://docs.aws.amazon.com/servicecatalog/latest/userguide/introduction.html) //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type ServiceCatalog struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "servicecatalog" // New creates a new instance of the ServiceCatalog client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a ServiceCatalog client from just a session. // svc := servicecatalog.New(mySession) // // // Create a ServiceCatalog client with additional configuration // svc := servicecatalog.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *ServiceCatalog { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *ServiceCatalog { svc := &ServiceCatalog{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-12-10", JSONVersion: "1.1", TargetPrefix: "AWS242ServiceCatalogService", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a ServiceCatalog operation and runs any // custom request initialization. func (c *ServiceCatalog) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/servicecatalog/servicecatalogiface/000077500000000000000000000000001300374646400242015ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/servicecatalog/servicecatalogiface/interface.go000066400000000000000000000117201300374646400264710ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package servicecatalogiface provides an interface to enable mocking the AWS Service Catalog service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package servicecatalogiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/servicecatalog" ) // ServiceCatalogAPI provides an interface to enable mocking the // servicecatalog.ServiceCatalog service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Service Catalog. // func myFunc(svc servicecatalogiface.ServiceCatalogAPI) bool { // // Make svc.DescribeProduct request // } // // func main() { // sess := session.New() // svc := servicecatalog.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockServiceCatalogClient struct { // servicecatalogiface.ServiceCatalogAPI // } // func (m *mockServiceCatalogClient) DescribeProduct(input *servicecatalog.DescribeProductInput) (*servicecatalog.DescribeProductOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockServiceCatalogClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type ServiceCatalogAPI interface { DescribeProductRequest(*servicecatalog.DescribeProductInput) (*request.Request, *servicecatalog.DescribeProductOutput) DescribeProduct(*servicecatalog.DescribeProductInput) (*servicecatalog.DescribeProductOutput, error) DescribeProductViewRequest(*servicecatalog.DescribeProductViewInput) (*request.Request, *servicecatalog.DescribeProductViewOutput) DescribeProductView(*servicecatalog.DescribeProductViewInput) (*servicecatalog.DescribeProductViewOutput, error) DescribeProvisioningParametersRequest(*servicecatalog.DescribeProvisioningParametersInput) (*request.Request, *servicecatalog.DescribeProvisioningParametersOutput) DescribeProvisioningParameters(*servicecatalog.DescribeProvisioningParametersInput) (*servicecatalog.DescribeProvisioningParametersOutput, error) DescribeRecordRequest(*servicecatalog.DescribeRecordInput) (*request.Request, *servicecatalog.DescribeRecordOutput) DescribeRecord(*servicecatalog.DescribeRecordInput) (*servicecatalog.DescribeRecordOutput, error) ListLaunchPathsRequest(*servicecatalog.ListLaunchPathsInput) (*request.Request, *servicecatalog.ListLaunchPathsOutput) ListLaunchPaths(*servicecatalog.ListLaunchPathsInput) (*servicecatalog.ListLaunchPathsOutput, error) ListRecordHistoryRequest(*servicecatalog.ListRecordHistoryInput) (*request.Request, *servicecatalog.ListRecordHistoryOutput) ListRecordHistory(*servicecatalog.ListRecordHistoryInput) (*servicecatalog.ListRecordHistoryOutput, error) ProvisionProductRequest(*servicecatalog.ProvisionProductInput) (*request.Request, *servicecatalog.ProvisionProductOutput) ProvisionProduct(*servicecatalog.ProvisionProductInput) (*servicecatalog.ProvisionProductOutput, error) ScanProvisionedProductsRequest(*servicecatalog.ScanProvisionedProductsInput) (*request.Request, *servicecatalog.ScanProvisionedProductsOutput) ScanProvisionedProducts(*servicecatalog.ScanProvisionedProductsInput) (*servicecatalog.ScanProvisionedProductsOutput, error) SearchProductsRequest(*servicecatalog.SearchProductsInput) (*request.Request, *servicecatalog.SearchProductsOutput) SearchProducts(*servicecatalog.SearchProductsInput) (*servicecatalog.SearchProductsOutput, error) TerminateProvisionedProductRequest(*servicecatalog.TerminateProvisionedProductInput) (*request.Request, *servicecatalog.TerminateProvisionedProductOutput) TerminateProvisionedProduct(*servicecatalog.TerminateProvisionedProductInput) (*servicecatalog.TerminateProvisionedProductOutput, error) UpdateProvisionedProductRequest(*servicecatalog.UpdateProvisionedProductInput) (*request.Request, *servicecatalog.UpdateProvisionedProductOutput) UpdateProvisionedProduct(*servicecatalog.UpdateProvisionedProductInput) (*servicecatalog.UpdateProvisionedProductOutput, error) } var _ ServiceCatalogAPI = (*servicecatalog.ServiceCatalog)(nil) aws-sdk-go-1.4.22/service/ses/000077500000000000000000000000001300374646400160155ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/ses/api.go000066400000000000000000007757441300374646400171450ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package ses provides a client for Amazon Simple Email Service. package ses import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/query" ) const opCloneReceiptRuleSet = "CloneReceiptRuleSet" // CloneReceiptRuleSetRequest generates a "aws/request.Request" representing the // client's request for the CloneReceiptRuleSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CloneReceiptRuleSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CloneReceiptRuleSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CloneReceiptRuleSetRequest method. // req, resp := client.CloneReceiptRuleSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) CloneReceiptRuleSetRequest(input *CloneReceiptRuleSetInput) (req *request.Request, output *CloneReceiptRuleSetOutput) { op := &request.Operation{ Name: opCloneReceiptRuleSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CloneReceiptRuleSetInput{} } req = c.newRequest(op, input, output) output = &CloneReceiptRuleSetOutput{} req.Data = output return } // CloneReceiptRuleSet API operation for Amazon Simple Email Service. // // Creates a receipt rule set by cloning an existing one. All receipt rules // and configurations are copied to the new receipt rule set and are completely // independent of the source rule set. // // For information about setting up rule sets, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rule-set.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation CloneReceiptRuleSet for usage and error information. // // Returned Error Codes: // * RuleSetDoesNotExist // Indicates that the provided receipt rule set does not exist. // // * AlreadyExists // Indicates that a resource could not be created due to a naming conflict. // // * LimitExceeded // Indicates that a resource could not be created due to service limits. For // a list of Amazon SES limits, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/limits.html). // func (c *SES) CloneReceiptRuleSet(input *CloneReceiptRuleSetInput) (*CloneReceiptRuleSetOutput, error) { req, out := c.CloneReceiptRuleSetRequest(input) err := req.Send() return out, err } const opCreateReceiptFilter = "CreateReceiptFilter" // CreateReceiptFilterRequest generates a "aws/request.Request" representing the // client's request for the CreateReceiptFilter operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateReceiptFilter for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateReceiptFilter method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateReceiptFilterRequest method. // req, resp := client.CreateReceiptFilterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) CreateReceiptFilterRequest(input *CreateReceiptFilterInput) (req *request.Request, output *CreateReceiptFilterOutput) { op := &request.Operation{ Name: opCreateReceiptFilter, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateReceiptFilterInput{} } req = c.newRequest(op, input, output) output = &CreateReceiptFilterOutput{} req.Data = output return } // CreateReceiptFilter API operation for Amazon Simple Email Service. // // Creates a new IP address filter. // // For information about setting up IP address filters, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-ip-filters.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation CreateReceiptFilter for usage and error information. // // Returned Error Codes: // * LimitExceeded // Indicates that a resource could not be created due to service limits. For // a list of Amazon SES limits, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/limits.html). // // * AlreadyExists // Indicates that a resource could not be created due to a naming conflict. // func (c *SES) CreateReceiptFilter(input *CreateReceiptFilterInput) (*CreateReceiptFilterOutput, error) { req, out := c.CreateReceiptFilterRequest(input) err := req.Send() return out, err } const opCreateReceiptRule = "CreateReceiptRule" // CreateReceiptRuleRequest generates a "aws/request.Request" representing the // client's request for the CreateReceiptRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateReceiptRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateReceiptRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateReceiptRuleRequest method. // req, resp := client.CreateReceiptRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) CreateReceiptRuleRequest(input *CreateReceiptRuleInput) (req *request.Request, output *CreateReceiptRuleOutput) { op := &request.Operation{ Name: opCreateReceiptRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateReceiptRuleInput{} } req = c.newRequest(op, input, output) output = &CreateReceiptRuleOutput{} req.Data = output return } // CreateReceiptRule API operation for Amazon Simple Email Service. // // Creates a receipt rule. // // For information about setting up receipt rules, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rules.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation CreateReceiptRule for usage and error information. // // Returned Error Codes: // * InvalidSnsTopic // Indicates that the provided Amazon SNS topic is invalid, or that Amazon SES // could not publish to the topic, possibly due to permissions issues. For information // about giving permissions, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html). // // * InvalidS3Configuration // Indicates that the provided Amazon S3 bucket or AWS KMS encryption key is // invalid, or that Amazon SES could not publish to the bucket, possibly due // to permissions issues. For information about giving permissions, see the // Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html). // // * InvalidLambdaFunction // Indicates that the provided AWS Lambda function is invalid, or that Amazon // SES could not execute the provided function, possibly due to permissions // issues. For information about giving permissions, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html). // // * AlreadyExists // Indicates that a resource could not be created due to a naming conflict. // // * RuleDoesNotExist // Indicates that the provided receipt rule does not exist. // // * RuleSetDoesNotExist // Indicates that the provided receipt rule set does not exist. // // * LimitExceeded // Indicates that a resource could not be created due to service limits. For // a list of Amazon SES limits, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/limits.html). // func (c *SES) CreateReceiptRule(input *CreateReceiptRuleInput) (*CreateReceiptRuleOutput, error) { req, out := c.CreateReceiptRuleRequest(input) err := req.Send() return out, err } const opCreateReceiptRuleSet = "CreateReceiptRuleSet" // CreateReceiptRuleSetRequest generates a "aws/request.Request" representing the // client's request for the CreateReceiptRuleSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateReceiptRuleSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateReceiptRuleSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateReceiptRuleSetRequest method. // req, resp := client.CreateReceiptRuleSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) CreateReceiptRuleSetRequest(input *CreateReceiptRuleSetInput) (req *request.Request, output *CreateReceiptRuleSetOutput) { op := &request.Operation{ Name: opCreateReceiptRuleSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateReceiptRuleSetInput{} } req = c.newRequest(op, input, output) output = &CreateReceiptRuleSetOutput{} req.Data = output return } // CreateReceiptRuleSet API operation for Amazon Simple Email Service. // // Creates an empty receipt rule set. // // For information about setting up receipt rule sets, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rule-set.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation CreateReceiptRuleSet for usage and error information. // // Returned Error Codes: // * AlreadyExists // Indicates that a resource could not be created due to a naming conflict. // // * LimitExceeded // Indicates that a resource could not be created due to service limits. For // a list of Amazon SES limits, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/limits.html). // func (c *SES) CreateReceiptRuleSet(input *CreateReceiptRuleSetInput) (*CreateReceiptRuleSetOutput, error) { req, out := c.CreateReceiptRuleSetRequest(input) err := req.Send() return out, err } const opDeleteIdentity = "DeleteIdentity" // DeleteIdentityRequest generates a "aws/request.Request" representing the // client's request for the DeleteIdentity operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteIdentity for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteIdentity method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteIdentityRequest method. // req, resp := client.DeleteIdentityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) DeleteIdentityRequest(input *DeleteIdentityInput) (req *request.Request, output *DeleteIdentityOutput) { op := &request.Operation{ Name: opDeleteIdentity, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteIdentityInput{} } req = c.newRequest(op, input, output) output = &DeleteIdentityOutput{} req.Data = output return } // DeleteIdentity API operation for Amazon Simple Email Service. // // Deletes the specified identity (an email address or a domain) from the list // of verified identities. // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation DeleteIdentity for usage and error information. func (c *SES) DeleteIdentity(input *DeleteIdentityInput) (*DeleteIdentityOutput, error) { req, out := c.DeleteIdentityRequest(input) err := req.Send() return out, err } const opDeleteIdentityPolicy = "DeleteIdentityPolicy" // DeleteIdentityPolicyRequest generates a "aws/request.Request" representing the // client's request for the DeleteIdentityPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteIdentityPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteIdentityPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteIdentityPolicyRequest method. // req, resp := client.DeleteIdentityPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) DeleteIdentityPolicyRequest(input *DeleteIdentityPolicyInput) (req *request.Request, output *DeleteIdentityPolicyOutput) { op := &request.Operation{ Name: opDeleteIdentityPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteIdentityPolicyInput{} } req = c.newRequest(op, input, output) output = &DeleteIdentityPolicyOutput{} req.Data = output return } // DeleteIdentityPolicy API operation for Amazon Simple Email Service. // // Deletes the specified sending authorization policy for the given identity // (an email address or a domain). This API returns successfully even if a policy // with the specified name does not exist. // // This API is for the identity owner only. If you have not verified the identity, // this API will return an error. // // Sending authorization is a feature that enables an identity owner to authorize // other senders to use its identities. For information about using sending // authorization, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation DeleteIdentityPolicy for usage and error information. func (c *SES) DeleteIdentityPolicy(input *DeleteIdentityPolicyInput) (*DeleteIdentityPolicyOutput, error) { req, out := c.DeleteIdentityPolicyRequest(input) err := req.Send() return out, err } const opDeleteReceiptFilter = "DeleteReceiptFilter" // DeleteReceiptFilterRequest generates a "aws/request.Request" representing the // client's request for the DeleteReceiptFilter operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteReceiptFilter for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteReceiptFilter method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteReceiptFilterRequest method. // req, resp := client.DeleteReceiptFilterRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) DeleteReceiptFilterRequest(input *DeleteReceiptFilterInput) (req *request.Request, output *DeleteReceiptFilterOutput) { op := &request.Operation{ Name: opDeleteReceiptFilter, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteReceiptFilterInput{} } req = c.newRequest(op, input, output) output = &DeleteReceiptFilterOutput{} req.Data = output return } // DeleteReceiptFilter API operation for Amazon Simple Email Service. // // Deletes the specified IP address filter. // // For information about managing IP address filters, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-ip-filters.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation DeleteReceiptFilter for usage and error information. func (c *SES) DeleteReceiptFilter(input *DeleteReceiptFilterInput) (*DeleteReceiptFilterOutput, error) { req, out := c.DeleteReceiptFilterRequest(input) err := req.Send() return out, err } const opDeleteReceiptRule = "DeleteReceiptRule" // DeleteReceiptRuleRequest generates a "aws/request.Request" representing the // client's request for the DeleteReceiptRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteReceiptRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteReceiptRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteReceiptRuleRequest method. // req, resp := client.DeleteReceiptRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) DeleteReceiptRuleRequest(input *DeleteReceiptRuleInput) (req *request.Request, output *DeleteReceiptRuleOutput) { op := &request.Operation{ Name: opDeleteReceiptRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteReceiptRuleInput{} } req = c.newRequest(op, input, output) output = &DeleteReceiptRuleOutput{} req.Data = output return } // DeleteReceiptRule API operation for Amazon Simple Email Service. // // Deletes the specified receipt rule. // // For information about managing receipt rules, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-receipt-rules.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation DeleteReceiptRule for usage and error information. // // Returned Error Codes: // * RuleSetDoesNotExist // Indicates that the provided receipt rule set does not exist. // func (c *SES) DeleteReceiptRule(input *DeleteReceiptRuleInput) (*DeleteReceiptRuleOutput, error) { req, out := c.DeleteReceiptRuleRequest(input) err := req.Send() return out, err } const opDeleteReceiptRuleSet = "DeleteReceiptRuleSet" // DeleteReceiptRuleSetRequest generates a "aws/request.Request" representing the // client's request for the DeleteReceiptRuleSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteReceiptRuleSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteReceiptRuleSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteReceiptRuleSetRequest method. // req, resp := client.DeleteReceiptRuleSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) DeleteReceiptRuleSetRequest(input *DeleteReceiptRuleSetInput) (req *request.Request, output *DeleteReceiptRuleSetOutput) { op := &request.Operation{ Name: opDeleteReceiptRuleSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteReceiptRuleSetInput{} } req = c.newRequest(op, input, output) output = &DeleteReceiptRuleSetOutput{} req.Data = output return } // DeleteReceiptRuleSet API operation for Amazon Simple Email Service. // // Deletes the specified receipt rule set and all of the receipt rules it contains. // // The currently active rule set cannot be deleted. // // For information about managing receipt rule sets, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-receipt-rule-sets.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation DeleteReceiptRuleSet for usage and error information. // // Returned Error Codes: // * CannotDelete // Indicates that the delete operation could not be completed. // func (c *SES) DeleteReceiptRuleSet(input *DeleteReceiptRuleSetInput) (*DeleteReceiptRuleSetOutput, error) { req, out := c.DeleteReceiptRuleSetRequest(input) err := req.Send() return out, err } const opDeleteVerifiedEmailAddress = "DeleteVerifiedEmailAddress" // DeleteVerifiedEmailAddressRequest generates a "aws/request.Request" representing the // client's request for the DeleteVerifiedEmailAddress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteVerifiedEmailAddress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteVerifiedEmailAddress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteVerifiedEmailAddressRequest method. // req, resp := client.DeleteVerifiedEmailAddressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) DeleteVerifiedEmailAddressRequest(input *DeleteVerifiedEmailAddressInput) (req *request.Request, output *DeleteVerifiedEmailAddressOutput) { op := &request.Operation{ Name: opDeleteVerifiedEmailAddress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteVerifiedEmailAddressInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteVerifiedEmailAddressOutput{} req.Data = output return } // DeleteVerifiedEmailAddress API operation for Amazon Simple Email Service. // // Deletes the specified email address from the list of verified addresses. // // The DeleteVerifiedEmailAddress action is deprecated as of the May 15, 2012 // release of Domain Verification. The DeleteIdentity action is now preferred. // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation DeleteVerifiedEmailAddress for usage and error information. func (c *SES) DeleteVerifiedEmailAddress(input *DeleteVerifiedEmailAddressInput) (*DeleteVerifiedEmailAddressOutput, error) { req, out := c.DeleteVerifiedEmailAddressRequest(input) err := req.Send() return out, err } const opDescribeActiveReceiptRuleSet = "DescribeActiveReceiptRuleSet" // DescribeActiveReceiptRuleSetRequest generates a "aws/request.Request" representing the // client's request for the DescribeActiveReceiptRuleSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeActiveReceiptRuleSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeActiveReceiptRuleSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeActiveReceiptRuleSetRequest method. // req, resp := client.DescribeActiveReceiptRuleSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) DescribeActiveReceiptRuleSetRequest(input *DescribeActiveReceiptRuleSetInput) (req *request.Request, output *DescribeActiveReceiptRuleSetOutput) { op := &request.Operation{ Name: opDescribeActiveReceiptRuleSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeActiveReceiptRuleSetInput{} } req = c.newRequest(op, input, output) output = &DescribeActiveReceiptRuleSetOutput{} req.Data = output return } // DescribeActiveReceiptRuleSet API operation for Amazon Simple Email Service. // // Returns the metadata and receipt rules for the receipt rule set that is currently // active. // // For information about setting up receipt rule sets, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rule-set.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation DescribeActiveReceiptRuleSet for usage and error information. func (c *SES) DescribeActiveReceiptRuleSet(input *DescribeActiveReceiptRuleSetInput) (*DescribeActiveReceiptRuleSetOutput, error) { req, out := c.DescribeActiveReceiptRuleSetRequest(input) err := req.Send() return out, err } const opDescribeReceiptRule = "DescribeReceiptRule" // DescribeReceiptRuleRequest generates a "aws/request.Request" representing the // client's request for the DescribeReceiptRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeReceiptRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeReceiptRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeReceiptRuleRequest method. // req, resp := client.DescribeReceiptRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) DescribeReceiptRuleRequest(input *DescribeReceiptRuleInput) (req *request.Request, output *DescribeReceiptRuleOutput) { op := &request.Operation{ Name: opDescribeReceiptRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeReceiptRuleInput{} } req = c.newRequest(op, input, output) output = &DescribeReceiptRuleOutput{} req.Data = output return } // DescribeReceiptRule API operation for Amazon Simple Email Service. // // Returns the details of the specified receipt rule. // // For information about setting up receipt rules, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rules.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation DescribeReceiptRule for usage and error information. // // Returned Error Codes: // * RuleDoesNotExist // Indicates that the provided receipt rule does not exist. // // * RuleSetDoesNotExist // Indicates that the provided receipt rule set does not exist. // func (c *SES) DescribeReceiptRule(input *DescribeReceiptRuleInput) (*DescribeReceiptRuleOutput, error) { req, out := c.DescribeReceiptRuleRequest(input) err := req.Send() return out, err } const opDescribeReceiptRuleSet = "DescribeReceiptRuleSet" // DescribeReceiptRuleSetRequest generates a "aws/request.Request" representing the // client's request for the DescribeReceiptRuleSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeReceiptRuleSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeReceiptRuleSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeReceiptRuleSetRequest method. // req, resp := client.DescribeReceiptRuleSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) DescribeReceiptRuleSetRequest(input *DescribeReceiptRuleSetInput) (req *request.Request, output *DescribeReceiptRuleSetOutput) { op := &request.Operation{ Name: opDescribeReceiptRuleSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeReceiptRuleSetInput{} } req = c.newRequest(op, input, output) output = &DescribeReceiptRuleSetOutput{} req.Data = output return } // DescribeReceiptRuleSet API operation for Amazon Simple Email Service. // // Returns the details of the specified receipt rule set. // // For information about managing receipt rule sets, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-receipt-rule-sets.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation DescribeReceiptRuleSet for usage and error information. // // Returned Error Codes: // * RuleSetDoesNotExist // Indicates that the provided receipt rule set does not exist. // func (c *SES) DescribeReceiptRuleSet(input *DescribeReceiptRuleSetInput) (*DescribeReceiptRuleSetOutput, error) { req, out := c.DescribeReceiptRuleSetRequest(input) err := req.Send() return out, err } const opGetIdentityDkimAttributes = "GetIdentityDkimAttributes" // GetIdentityDkimAttributesRequest generates a "aws/request.Request" representing the // client's request for the GetIdentityDkimAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetIdentityDkimAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetIdentityDkimAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetIdentityDkimAttributesRequest method. // req, resp := client.GetIdentityDkimAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) GetIdentityDkimAttributesRequest(input *GetIdentityDkimAttributesInput) (req *request.Request, output *GetIdentityDkimAttributesOutput) { op := &request.Operation{ Name: opGetIdentityDkimAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetIdentityDkimAttributesInput{} } req = c.newRequest(op, input, output) output = &GetIdentityDkimAttributesOutput{} req.Data = output return } // GetIdentityDkimAttributes API operation for Amazon Simple Email Service. // // Returns the current status of Easy DKIM signing for an entity. For domain // name identities, this action also returns the DKIM tokens that are required // for Easy DKIM signing, and whether Amazon SES has successfully verified that // these tokens have been published. // // This action takes a list of identities as input and returns the following // information for each: // // * Whether Easy DKIM signing is enabled or disabled. // // * A set of DKIM tokens that represent the identity. If the identity is // an email address, the tokens represent the domain of that address. // // * Whether Amazon SES has successfully verified the DKIM tokens published // in the domain's DNS. This information is only returned for domain name // identities, not for email addresses. // // This action is throttled at one request per second and can only get DKIM // attributes for up to 100 identities at a time. // // For more information about creating DNS records using DKIM tokens, go to // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim-dns-records.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation GetIdentityDkimAttributes for usage and error information. func (c *SES) GetIdentityDkimAttributes(input *GetIdentityDkimAttributesInput) (*GetIdentityDkimAttributesOutput, error) { req, out := c.GetIdentityDkimAttributesRequest(input) err := req.Send() return out, err } const opGetIdentityMailFromDomainAttributes = "GetIdentityMailFromDomainAttributes" // GetIdentityMailFromDomainAttributesRequest generates a "aws/request.Request" representing the // client's request for the GetIdentityMailFromDomainAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetIdentityMailFromDomainAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetIdentityMailFromDomainAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetIdentityMailFromDomainAttributesRequest method. // req, resp := client.GetIdentityMailFromDomainAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) GetIdentityMailFromDomainAttributesRequest(input *GetIdentityMailFromDomainAttributesInput) (req *request.Request, output *GetIdentityMailFromDomainAttributesOutput) { op := &request.Operation{ Name: opGetIdentityMailFromDomainAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetIdentityMailFromDomainAttributesInput{} } req = c.newRequest(op, input, output) output = &GetIdentityMailFromDomainAttributesOutput{} req.Data = output return } // GetIdentityMailFromDomainAttributes API operation for Amazon Simple Email Service. // // Returns the custom MAIL FROM attributes for a list of identities (email addresses // and/or domains). // // This action is throttled at one request per second and can only get custom // MAIL FROM attributes for up to 100 identities at a time. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation GetIdentityMailFromDomainAttributes for usage and error information. func (c *SES) GetIdentityMailFromDomainAttributes(input *GetIdentityMailFromDomainAttributesInput) (*GetIdentityMailFromDomainAttributesOutput, error) { req, out := c.GetIdentityMailFromDomainAttributesRequest(input) err := req.Send() return out, err } const opGetIdentityNotificationAttributes = "GetIdentityNotificationAttributes" // GetIdentityNotificationAttributesRequest generates a "aws/request.Request" representing the // client's request for the GetIdentityNotificationAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetIdentityNotificationAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetIdentityNotificationAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetIdentityNotificationAttributesRequest method. // req, resp := client.GetIdentityNotificationAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) GetIdentityNotificationAttributesRequest(input *GetIdentityNotificationAttributesInput) (req *request.Request, output *GetIdentityNotificationAttributesOutput) { op := &request.Operation{ Name: opGetIdentityNotificationAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetIdentityNotificationAttributesInput{} } req = c.newRequest(op, input, output) output = &GetIdentityNotificationAttributesOutput{} req.Data = output return } // GetIdentityNotificationAttributes API operation for Amazon Simple Email Service. // // Given a list of verified identities (email addresses and/or domains), returns // a structure describing identity notification attributes. // // This action is throttled at one request per second and can only get notification // attributes for up to 100 identities at a time. // // For more information about using notifications with Amazon SES, see the Amazon // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation GetIdentityNotificationAttributes for usage and error information. func (c *SES) GetIdentityNotificationAttributes(input *GetIdentityNotificationAttributesInput) (*GetIdentityNotificationAttributesOutput, error) { req, out := c.GetIdentityNotificationAttributesRequest(input) err := req.Send() return out, err } const opGetIdentityPolicies = "GetIdentityPolicies" // GetIdentityPoliciesRequest generates a "aws/request.Request" representing the // client's request for the GetIdentityPolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetIdentityPolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetIdentityPolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetIdentityPoliciesRequest method. // req, resp := client.GetIdentityPoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) GetIdentityPoliciesRequest(input *GetIdentityPoliciesInput) (req *request.Request, output *GetIdentityPoliciesOutput) { op := &request.Operation{ Name: opGetIdentityPolicies, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetIdentityPoliciesInput{} } req = c.newRequest(op, input, output) output = &GetIdentityPoliciesOutput{} req.Data = output return } // GetIdentityPolicies API operation for Amazon Simple Email Service. // // Returns the requested sending authorization policies for the given identity // (an email address or a domain). The policies are returned as a map of policy // names to policy contents. You can retrieve a maximum of 20 policies at a // time. // // This API is for the identity owner only. If you have not verified the identity, // this API will return an error. // // Sending authorization is a feature that enables an identity owner to authorize // other senders to use its identities. For information about using sending // authorization, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation GetIdentityPolicies for usage and error information. func (c *SES) GetIdentityPolicies(input *GetIdentityPoliciesInput) (*GetIdentityPoliciesOutput, error) { req, out := c.GetIdentityPoliciesRequest(input) err := req.Send() return out, err } const opGetIdentityVerificationAttributes = "GetIdentityVerificationAttributes" // GetIdentityVerificationAttributesRequest generates a "aws/request.Request" representing the // client's request for the GetIdentityVerificationAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetIdentityVerificationAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetIdentityVerificationAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetIdentityVerificationAttributesRequest method. // req, resp := client.GetIdentityVerificationAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) GetIdentityVerificationAttributesRequest(input *GetIdentityVerificationAttributesInput) (req *request.Request, output *GetIdentityVerificationAttributesOutput) { op := &request.Operation{ Name: opGetIdentityVerificationAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetIdentityVerificationAttributesInput{} } req = c.newRequest(op, input, output) output = &GetIdentityVerificationAttributesOutput{} req.Data = output return } // GetIdentityVerificationAttributes API operation for Amazon Simple Email Service. // // Given a list of identities (email addresses and/or domains), returns the // verification status and (for domain identities) the verification token for // each identity. // // This action is throttled at one request per second and can only get verification // attributes for up to 100 identities at a time. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation GetIdentityVerificationAttributes for usage and error information. func (c *SES) GetIdentityVerificationAttributes(input *GetIdentityVerificationAttributesInput) (*GetIdentityVerificationAttributesOutput, error) { req, out := c.GetIdentityVerificationAttributesRequest(input) err := req.Send() return out, err } const opGetSendQuota = "GetSendQuota" // GetSendQuotaRequest generates a "aws/request.Request" representing the // client's request for the GetSendQuota operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetSendQuota for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetSendQuota method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetSendQuotaRequest method. // req, resp := client.GetSendQuotaRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) GetSendQuotaRequest(input *GetSendQuotaInput) (req *request.Request, output *GetSendQuotaOutput) { op := &request.Operation{ Name: opGetSendQuota, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetSendQuotaInput{} } req = c.newRequest(op, input, output) output = &GetSendQuotaOutput{} req.Data = output return } // GetSendQuota API operation for Amazon Simple Email Service. // // Returns the user's current sending limits. // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation GetSendQuota for usage and error information. func (c *SES) GetSendQuota(input *GetSendQuotaInput) (*GetSendQuotaOutput, error) { req, out := c.GetSendQuotaRequest(input) err := req.Send() return out, err } const opGetSendStatistics = "GetSendStatistics" // GetSendStatisticsRequest generates a "aws/request.Request" representing the // client's request for the GetSendStatistics operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetSendStatistics for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetSendStatistics method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetSendStatisticsRequest method. // req, resp := client.GetSendStatisticsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) GetSendStatisticsRequest(input *GetSendStatisticsInput) (req *request.Request, output *GetSendStatisticsOutput) { op := &request.Operation{ Name: opGetSendStatistics, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetSendStatisticsInput{} } req = c.newRequest(op, input, output) output = &GetSendStatisticsOutput{} req.Data = output return } // GetSendStatistics API operation for Amazon Simple Email Service. // // Returns the user's sending statistics. The result is a list of data points, // representing the last two weeks of sending activity. // // Each data point in the list contains statistics for a 15-minute interval. // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation GetSendStatistics for usage and error information. func (c *SES) GetSendStatistics(input *GetSendStatisticsInput) (*GetSendStatisticsOutput, error) { req, out := c.GetSendStatisticsRequest(input) err := req.Send() return out, err } const opListIdentities = "ListIdentities" // ListIdentitiesRequest generates a "aws/request.Request" representing the // client's request for the ListIdentities operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListIdentities for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListIdentities method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListIdentitiesRequest method. // req, resp := client.ListIdentitiesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) ListIdentitiesRequest(input *ListIdentitiesInput) (req *request.Request, output *ListIdentitiesOutput) { op := &request.Operation{ Name: opListIdentities, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxItems", TruncationToken: "", }, } if input == nil { input = &ListIdentitiesInput{} } req = c.newRequest(op, input, output) output = &ListIdentitiesOutput{} req.Data = output return } // ListIdentities API operation for Amazon Simple Email Service. // // Returns a list containing all of the identities (email addresses and domains) // for your AWS account, regardless of verification status. // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation ListIdentities for usage and error information. func (c *SES) ListIdentities(input *ListIdentitiesInput) (*ListIdentitiesOutput, error) { req, out := c.ListIdentitiesRequest(input) err := req.Send() return out, err } // ListIdentitiesPages iterates over the pages of a ListIdentities operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListIdentities method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListIdentities operation. // pageNum := 0 // err := client.ListIdentitiesPages(params, // func(page *ListIdentitiesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SES) ListIdentitiesPages(input *ListIdentitiesInput, fn func(p *ListIdentitiesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListIdentitiesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListIdentitiesOutput), lastPage) }) } const opListIdentityPolicies = "ListIdentityPolicies" // ListIdentityPoliciesRequest generates a "aws/request.Request" representing the // client's request for the ListIdentityPolicies operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListIdentityPolicies for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListIdentityPolicies method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListIdentityPoliciesRequest method. // req, resp := client.ListIdentityPoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) ListIdentityPoliciesRequest(input *ListIdentityPoliciesInput) (req *request.Request, output *ListIdentityPoliciesOutput) { op := &request.Operation{ Name: opListIdentityPolicies, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListIdentityPoliciesInput{} } req = c.newRequest(op, input, output) output = &ListIdentityPoliciesOutput{} req.Data = output return } // ListIdentityPolicies API operation for Amazon Simple Email Service. // // Returns a list of sending authorization policies that are attached to the // given identity (an email address or a domain). This API returns only a list. // If you want the actual policy content, you can use GetIdentityPolicies. // // This API is for the identity owner only. If you have not verified the identity, // this API will return an error. // // Sending authorization is a feature that enables an identity owner to authorize // other senders to use its identities. For information about using sending // authorization, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation ListIdentityPolicies for usage and error information. func (c *SES) ListIdentityPolicies(input *ListIdentityPoliciesInput) (*ListIdentityPoliciesOutput, error) { req, out := c.ListIdentityPoliciesRequest(input) err := req.Send() return out, err } const opListReceiptFilters = "ListReceiptFilters" // ListReceiptFiltersRequest generates a "aws/request.Request" representing the // client's request for the ListReceiptFilters operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListReceiptFilters for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListReceiptFilters method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListReceiptFiltersRequest method. // req, resp := client.ListReceiptFiltersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) ListReceiptFiltersRequest(input *ListReceiptFiltersInput) (req *request.Request, output *ListReceiptFiltersOutput) { op := &request.Operation{ Name: opListReceiptFilters, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListReceiptFiltersInput{} } req = c.newRequest(op, input, output) output = &ListReceiptFiltersOutput{} req.Data = output return } // ListReceiptFilters API operation for Amazon Simple Email Service. // // Lists the IP address filters associated with your AWS account. // // For information about managing IP address filters, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-ip-filters.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation ListReceiptFilters for usage and error information. func (c *SES) ListReceiptFilters(input *ListReceiptFiltersInput) (*ListReceiptFiltersOutput, error) { req, out := c.ListReceiptFiltersRequest(input) err := req.Send() return out, err } const opListReceiptRuleSets = "ListReceiptRuleSets" // ListReceiptRuleSetsRequest generates a "aws/request.Request" representing the // client's request for the ListReceiptRuleSets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListReceiptRuleSets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListReceiptRuleSets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListReceiptRuleSetsRequest method. // req, resp := client.ListReceiptRuleSetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) ListReceiptRuleSetsRequest(input *ListReceiptRuleSetsInput) (req *request.Request, output *ListReceiptRuleSetsOutput) { op := &request.Operation{ Name: opListReceiptRuleSets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListReceiptRuleSetsInput{} } req = c.newRequest(op, input, output) output = &ListReceiptRuleSetsOutput{} req.Data = output return } // ListReceiptRuleSets API operation for Amazon Simple Email Service. // // Lists the receipt rule sets that exist under your AWS account. If there are // additional receipt rule sets to be retrieved, you will receive a NextToken // that you can provide to the next call to ListReceiptRuleSets to retrieve // the additional entries. // // For information about managing receipt rule sets, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-receipt-rule-sets.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation ListReceiptRuleSets for usage and error information. func (c *SES) ListReceiptRuleSets(input *ListReceiptRuleSetsInput) (*ListReceiptRuleSetsOutput, error) { req, out := c.ListReceiptRuleSetsRequest(input) err := req.Send() return out, err } const opListVerifiedEmailAddresses = "ListVerifiedEmailAddresses" // ListVerifiedEmailAddressesRequest generates a "aws/request.Request" representing the // client's request for the ListVerifiedEmailAddresses operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListVerifiedEmailAddresses for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListVerifiedEmailAddresses method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListVerifiedEmailAddressesRequest method. // req, resp := client.ListVerifiedEmailAddressesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) ListVerifiedEmailAddressesRequest(input *ListVerifiedEmailAddressesInput) (req *request.Request, output *ListVerifiedEmailAddressesOutput) { op := &request.Operation{ Name: opListVerifiedEmailAddresses, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListVerifiedEmailAddressesInput{} } req = c.newRequest(op, input, output) output = &ListVerifiedEmailAddressesOutput{} req.Data = output return } // ListVerifiedEmailAddresses API operation for Amazon Simple Email Service. // // Returns a list containing all of the email addresses that have been verified. // // The ListVerifiedEmailAddresses action is deprecated as of the May 15, 2012 // release of Domain Verification. The ListIdentities action is now preferred. // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation ListVerifiedEmailAddresses for usage and error information. func (c *SES) ListVerifiedEmailAddresses(input *ListVerifiedEmailAddressesInput) (*ListVerifiedEmailAddressesOutput, error) { req, out := c.ListVerifiedEmailAddressesRequest(input) err := req.Send() return out, err } const opPutIdentityPolicy = "PutIdentityPolicy" // PutIdentityPolicyRequest generates a "aws/request.Request" representing the // client's request for the PutIdentityPolicy operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutIdentityPolicy for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutIdentityPolicy method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutIdentityPolicyRequest method. // req, resp := client.PutIdentityPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) PutIdentityPolicyRequest(input *PutIdentityPolicyInput) (req *request.Request, output *PutIdentityPolicyOutput) { op := &request.Operation{ Name: opPutIdentityPolicy, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutIdentityPolicyInput{} } req = c.newRequest(op, input, output) output = &PutIdentityPolicyOutput{} req.Data = output return } // PutIdentityPolicy API operation for Amazon Simple Email Service. // // Adds or updates a sending authorization policy for the specified identity // (an email address or a domain). // // This API is for the identity owner only. If you have not verified the identity, // this API will return an error. // // Sending authorization is a feature that enables an identity owner to authorize // other senders to use its identities. For information about using sending // authorization, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation PutIdentityPolicy for usage and error information. // // Returned Error Codes: // * InvalidPolicy // Indicates that the provided policy is invalid. Check the error stack for // more information about what caused the error. // func (c *SES) PutIdentityPolicy(input *PutIdentityPolicyInput) (*PutIdentityPolicyOutput, error) { req, out := c.PutIdentityPolicyRequest(input) err := req.Send() return out, err } const opReorderReceiptRuleSet = "ReorderReceiptRuleSet" // ReorderReceiptRuleSetRequest generates a "aws/request.Request" representing the // client's request for the ReorderReceiptRuleSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ReorderReceiptRuleSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ReorderReceiptRuleSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ReorderReceiptRuleSetRequest method. // req, resp := client.ReorderReceiptRuleSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) ReorderReceiptRuleSetRequest(input *ReorderReceiptRuleSetInput) (req *request.Request, output *ReorderReceiptRuleSetOutput) { op := &request.Operation{ Name: opReorderReceiptRuleSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ReorderReceiptRuleSetInput{} } req = c.newRequest(op, input, output) output = &ReorderReceiptRuleSetOutput{} req.Data = output return } // ReorderReceiptRuleSet API operation for Amazon Simple Email Service. // // Reorders the receipt rules within a receipt rule set. // // All of the rules in the rule set must be represented in this request. That // is, this API will return an error if the reorder request doesn't explicitly // position all of the rules. // // For information about managing receipt rule sets, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-receipt-rule-sets.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation ReorderReceiptRuleSet for usage and error information. // // Returned Error Codes: // * RuleSetDoesNotExist // Indicates that the provided receipt rule set does not exist. // // * RuleDoesNotExist // Indicates that the provided receipt rule does not exist. // func (c *SES) ReorderReceiptRuleSet(input *ReorderReceiptRuleSetInput) (*ReorderReceiptRuleSetOutput, error) { req, out := c.ReorderReceiptRuleSetRequest(input) err := req.Send() return out, err } const opSendBounce = "SendBounce" // SendBounceRequest generates a "aws/request.Request" representing the // client's request for the SendBounce operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SendBounce for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SendBounce method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SendBounceRequest method. // req, resp := client.SendBounceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) SendBounceRequest(input *SendBounceInput) (req *request.Request, output *SendBounceOutput) { op := &request.Operation{ Name: opSendBounce, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SendBounceInput{} } req = c.newRequest(op, input, output) output = &SendBounceOutput{} req.Data = output return } // SendBounce API operation for Amazon Simple Email Service. // // Generates and sends a bounce message to the sender of an email you received // through Amazon SES. You can only use this API on an email up to 24 hours // after you receive it. // // You cannot use this API to send generic bounces for mail that was not received // by Amazon SES. // // For information about receiving email through Amazon SES, see the Amazon // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation SendBounce for usage and error information. // // Returned Error Codes: // * MessageRejected // Indicates that the action failed, and the message could not be sent. Check // the error stack for more information about what caused the error. // func (c *SES) SendBounce(input *SendBounceInput) (*SendBounceOutput, error) { req, out := c.SendBounceRequest(input) err := req.Send() return out, err } const opSendEmail = "SendEmail" // SendEmailRequest generates a "aws/request.Request" representing the // client's request for the SendEmail operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SendEmail for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SendEmail method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SendEmailRequest method. // req, resp := client.SendEmailRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) SendEmailRequest(input *SendEmailInput) (req *request.Request, output *SendEmailOutput) { op := &request.Operation{ Name: opSendEmail, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SendEmailInput{} } req = c.newRequest(op, input, output) output = &SendEmailOutput{} req.Data = output return } // SendEmail API operation for Amazon Simple Email Service. // // Composes an email message based on input data, and then immediately queues // the message for sending. // // There are several important points to know about SendEmail: // // * You can only send email from verified email addresses and domains; otherwise, // you will get an "Email address not verified" error. If your account is // still in the Amazon SES sandbox, you must also verify every recipient // email address except for the recipients provided by the Amazon SES mailbox // simulator. For more information, go to the Amazon SES Developer Guide // (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html). // // * The total size of the message cannot exceed 10 MB. This includes any // attachments that are part of the message. // // * Amazon SES has a limit on the total number of recipients per message. // The combined number of To:, CC: and BCC: email addresses cannot exceed // 50. If you need to send an email message to a larger audience, you can // divide your recipient list into groups of 50 or fewer, and then call Amazon // SES repeatedly to send the message to each group. // // * For every message that you send, the total number of recipients (To:, // CC: and BCC:) is counted against your sending quota - the maximum number // of emails you can send in a 24-hour period. For information about your // sending quota, go to the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/manage-sending-limits.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation SendEmail for usage and error information. // // Returned Error Codes: // * MessageRejected // Indicates that the action failed, and the message could not be sent. Check // the error stack for more information about what caused the error. // // * MailFromDomainNotVerifiedException // Indicates that the message could not be sent because Amazon SES could not // read the MX record required to use the specified MAIL FROM domain. For information // about editing the custom MAIL FROM domain settings for an identity, see the // Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mail-from-edit.html). // func (c *SES) SendEmail(input *SendEmailInput) (*SendEmailOutput, error) { req, out := c.SendEmailRequest(input) err := req.Send() return out, err } const opSendRawEmail = "SendRawEmail" // SendRawEmailRequest generates a "aws/request.Request" representing the // client's request for the SendRawEmail operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SendRawEmail for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SendRawEmail method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SendRawEmailRequest method. // req, resp := client.SendRawEmailRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) SendRawEmailRequest(input *SendRawEmailInput) (req *request.Request, output *SendRawEmailOutput) { op := &request.Operation{ Name: opSendRawEmail, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SendRawEmailInput{} } req = c.newRequest(op, input, output) output = &SendRawEmailOutput{} req.Data = output return } // SendRawEmail API operation for Amazon Simple Email Service. // // Sends an email message, with header and content specified by the client. // The SendRawEmail action is useful for sending multipart MIME emails. The // raw text of the message must comply with Internet email standards; otherwise, // the message cannot be sent. // // There are several important points to know about SendRawEmail: // // * You can only send email from verified email addresses and domains; otherwise, // you will get an "Email address not verified" error. If your account is // still in the Amazon SES sandbox, you must also verify every recipient // email address except for the recipients provided by the Amazon SES mailbox // simulator. For more information, go to the Amazon SES Developer Guide // (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html). // // * The total size of the message cannot exceed 10 MB. This includes any // attachments that are part of the message. // // * Amazon SES has a limit on the total number of recipients per message. // The combined number of To:, CC: and BCC: email addresses cannot exceed // 50. If you need to send an email message to a larger audience, you can // divide your recipient list into groups of 50 or fewer, and then call Amazon // SES repeatedly to send the message to each group. // // * The To:, CC:, and BCC: headers in the raw message can contain a group // list. Note that each recipient in a group list counts towards the 50-recipient // limit. // // * Amazon SES overrides any Message-ID and Date headers you provide. // // * For every message that you send, the total number of recipients (To:, // CC: and BCC:) is counted against your sending quota - the maximum number // of emails you can send in a 24-hour period. For information about your // sending quota, go to the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/manage-sending-limits.html). // // * If you are using sending authorization to send on behalf of another // user, SendRawEmail enables you to specify the cross-account identity for // the email's "Source," "From," and "Return-Path" parameters in one of two // ways: you can pass optional parameters SourceArn, FromArn, and/or ReturnPathArn // to the API, or you can include the following X-headers in the header of // your raw email: // // X-SES-SOURCE-ARN // // X-SES-FROM-ARN // // X-SES-RETURN-PATH-ARN // // Do not include these X-headers in the DKIM signature, because they are removed // by Amazon SES before sending the email. // // For the most common sending authorization use case, we recommend that you // specify the SourceIdentityArn and do not specify either the FromIdentityArn // or ReturnPathIdentityArn. (The same note applies to the corresponding // X-headers.) If you only specify the SourceIdentityArn, Amazon SES will // simply set the "From" address and the "Return Path" address to the identity // specified in SourceIdentityArn. For more information about sending authorization, // see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation SendRawEmail for usage and error information. // // Returned Error Codes: // * MessageRejected // Indicates that the action failed, and the message could not be sent. Check // the error stack for more information about what caused the error. // // * MailFromDomainNotVerifiedException // Indicates that the message could not be sent because Amazon SES could not // read the MX record required to use the specified MAIL FROM domain. For information // about editing the custom MAIL FROM domain settings for an identity, see the // Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mail-from-edit.html). // func (c *SES) SendRawEmail(input *SendRawEmailInput) (*SendRawEmailOutput, error) { req, out := c.SendRawEmailRequest(input) err := req.Send() return out, err } const opSetActiveReceiptRuleSet = "SetActiveReceiptRuleSet" // SetActiveReceiptRuleSetRequest generates a "aws/request.Request" representing the // client's request for the SetActiveReceiptRuleSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetActiveReceiptRuleSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetActiveReceiptRuleSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetActiveReceiptRuleSetRequest method. // req, resp := client.SetActiveReceiptRuleSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) SetActiveReceiptRuleSetRequest(input *SetActiveReceiptRuleSetInput) (req *request.Request, output *SetActiveReceiptRuleSetOutput) { op := &request.Operation{ Name: opSetActiveReceiptRuleSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetActiveReceiptRuleSetInput{} } req = c.newRequest(op, input, output) output = &SetActiveReceiptRuleSetOutput{} req.Data = output return } // SetActiveReceiptRuleSet API operation for Amazon Simple Email Service. // // Sets the specified receipt rule set as the active receipt rule set. // // To disable your email-receiving through Amazon SES completely, you can call // this API with RuleSetName set to null. // // For information about managing receipt rule sets, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-receipt-rule-sets.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation SetActiveReceiptRuleSet for usage and error information. // // Returned Error Codes: // * RuleSetDoesNotExist // Indicates that the provided receipt rule set does not exist. // func (c *SES) SetActiveReceiptRuleSet(input *SetActiveReceiptRuleSetInput) (*SetActiveReceiptRuleSetOutput, error) { req, out := c.SetActiveReceiptRuleSetRequest(input) err := req.Send() return out, err } const opSetIdentityDkimEnabled = "SetIdentityDkimEnabled" // SetIdentityDkimEnabledRequest generates a "aws/request.Request" representing the // client's request for the SetIdentityDkimEnabled operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetIdentityDkimEnabled for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetIdentityDkimEnabled method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetIdentityDkimEnabledRequest method. // req, resp := client.SetIdentityDkimEnabledRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) SetIdentityDkimEnabledRequest(input *SetIdentityDkimEnabledInput) (req *request.Request, output *SetIdentityDkimEnabledOutput) { op := &request.Operation{ Name: opSetIdentityDkimEnabled, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetIdentityDkimEnabledInput{} } req = c.newRequest(op, input, output) output = &SetIdentityDkimEnabledOutput{} req.Data = output return } // SetIdentityDkimEnabled API operation for Amazon Simple Email Service. // // Enables or disables Easy DKIM signing of email sent from an identity: // // * If Easy DKIM signing is enabled for a domain name identity (e.g., example.com), // then Amazon SES will DKIM-sign all email sent by addresses under that // domain name (e.g., user@example.com). // // * If Easy DKIM signing is enabled for an email address, then Amazon SES // will DKIM-sign all email sent by that email address. // // For email addresses (e.g., user@example.com), you can only enable Easy DKIM // signing if the corresponding domain (e.g., example.com) has been set up for // Easy DKIM using the AWS Console or the VerifyDomainDkim action. // // This action is throttled at one request per second. // // For more information about Easy DKIM signing, go to the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation SetIdentityDkimEnabled for usage and error information. func (c *SES) SetIdentityDkimEnabled(input *SetIdentityDkimEnabledInput) (*SetIdentityDkimEnabledOutput, error) { req, out := c.SetIdentityDkimEnabledRequest(input) err := req.Send() return out, err } const opSetIdentityFeedbackForwardingEnabled = "SetIdentityFeedbackForwardingEnabled" // SetIdentityFeedbackForwardingEnabledRequest generates a "aws/request.Request" representing the // client's request for the SetIdentityFeedbackForwardingEnabled operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetIdentityFeedbackForwardingEnabled for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetIdentityFeedbackForwardingEnabled method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetIdentityFeedbackForwardingEnabledRequest method. // req, resp := client.SetIdentityFeedbackForwardingEnabledRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) SetIdentityFeedbackForwardingEnabledRequest(input *SetIdentityFeedbackForwardingEnabledInput) (req *request.Request, output *SetIdentityFeedbackForwardingEnabledOutput) { op := &request.Operation{ Name: opSetIdentityFeedbackForwardingEnabled, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetIdentityFeedbackForwardingEnabledInput{} } req = c.newRequest(op, input, output) output = &SetIdentityFeedbackForwardingEnabledOutput{} req.Data = output return } // SetIdentityFeedbackForwardingEnabled API operation for Amazon Simple Email Service. // // Given an identity (an email address or a domain), enables or disables whether // Amazon SES forwards bounce and complaint notifications as email. Feedback // forwarding can only be disabled when Amazon Simple Notification Service (Amazon // SNS) topics are specified for both bounces and complaints. // // Feedback forwarding does not apply to delivery notifications. Delivery notifications // are only available through Amazon SNS. // // This action is throttled at one request per second. // // For more information about using notifications with Amazon SES, see the Amazon // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation SetIdentityFeedbackForwardingEnabled for usage and error information. func (c *SES) SetIdentityFeedbackForwardingEnabled(input *SetIdentityFeedbackForwardingEnabledInput) (*SetIdentityFeedbackForwardingEnabledOutput, error) { req, out := c.SetIdentityFeedbackForwardingEnabledRequest(input) err := req.Send() return out, err } const opSetIdentityHeadersInNotificationsEnabled = "SetIdentityHeadersInNotificationsEnabled" // SetIdentityHeadersInNotificationsEnabledRequest generates a "aws/request.Request" representing the // client's request for the SetIdentityHeadersInNotificationsEnabled operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetIdentityHeadersInNotificationsEnabled for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetIdentityHeadersInNotificationsEnabled method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetIdentityHeadersInNotificationsEnabledRequest method. // req, resp := client.SetIdentityHeadersInNotificationsEnabledRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) SetIdentityHeadersInNotificationsEnabledRequest(input *SetIdentityHeadersInNotificationsEnabledInput) (req *request.Request, output *SetIdentityHeadersInNotificationsEnabledOutput) { op := &request.Operation{ Name: opSetIdentityHeadersInNotificationsEnabled, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetIdentityHeadersInNotificationsEnabledInput{} } req = c.newRequest(op, input, output) output = &SetIdentityHeadersInNotificationsEnabledOutput{} req.Data = output return } // SetIdentityHeadersInNotificationsEnabled API operation for Amazon Simple Email Service. // // Given an identity (an email address or a domain), sets whether Amazon SES // includes the original email headers in the Amazon Simple Notification Service // (Amazon SNS) notifications of a specified type. // // This action is throttled at one request per second. // // For more information about using notifications with Amazon SES, see the Amazon // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation SetIdentityHeadersInNotificationsEnabled for usage and error information. func (c *SES) SetIdentityHeadersInNotificationsEnabled(input *SetIdentityHeadersInNotificationsEnabledInput) (*SetIdentityHeadersInNotificationsEnabledOutput, error) { req, out := c.SetIdentityHeadersInNotificationsEnabledRequest(input) err := req.Send() return out, err } const opSetIdentityMailFromDomain = "SetIdentityMailFromDomain" // SetIdentityMailFromDomainRequest generates a "aws/request.Request" representing the // client's request for the SetIdentityMailFromDomain operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetIdentityMailFromDomain for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetIdentityMailFromDomain method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetIdentityMailFromDomainRequest method. // req, resp := client.SetIdentityMailFromDomainRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) SetIdentityMailFromDomainRequest(input *SetIdentityMailFromDomainInput) (req *request.Request, output *SetIdentityMailFromDomainOutput) { op := &request.Operation{ Name: opSetIdentityMailFromDomain, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetIdentityMailFromDomainInput{} } req = c.newRequest(op, input, output) output = &SetIdentityMailFromDomainOutput{} req.Data = output return } // SetIdentityMailFromDomain API operation for Amazon Simple Email Service. // // Enables or disables the custom MAIL FROM domain setup for a verified identity // (an email address or a domain). // // To send emails using the specified MAIL FROM domain, you must add an MX record // to your MAIL FROM domain's DNS settings. If you want your emails to pass // Sender Policy Framework (SPF) checks, you must also add or update an SPF // record. For more information, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mail-from-set.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation SetIdentityMailFromDomain for usage and error information. func (c *SES) SetIdentityMailFromDomain(input *SetIdentityMailFromDomainInput) (*SetIdentityMailFromDomainOutput, error) { req, out := c.SetIdentityMailFromDomainRequest(input) err := req.Send() return out, err } const opSetIdentityNotificationTopic = "SetIdentityNotificationTopic" // SetIdentityNotificationTopicRequest generates a "aws/request.Request" representing the // client's request for the SetIdentityNotificationTopic operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetIdentityNotificationTopic for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetIdentityNotificationTopic method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetIdentityNotificationTopicRequest method. // req, resp := client.SetIdentityNotificationTopicRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) SetIdentityNotificationTopicRequest(input *SetIdentityNotificationTopicInput) (req *request.Request, output *SetIdentityNotificationTopicOutput) { op := &request.Operation{ Name: opSetIdentityNotificationTopic, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetIdentityNotificationTopicInput{} } req = c.newRequest(op, input, output) output = &SetIdentityNotificationTopicOutput{} req.Data = output return } // SetIdentityNotificationTopic API operation for Amazon Simple Email Service. // // Given an identity (an email address or a domain), sets the Amazon Simple // Notification Service (Amazon SNS) topic to which Amazon SES will publish // bounce, complaint, and/or delivery notifications for emails sent with that // identity as the Source. // // Unless feedback forwarding is enabled, you must specify Amazon SNS topics // for bounce and complaint notifications. For more information, see SetIdentityFeedbackForwardingEnabled. // // This action is throttled at one request per second. // // For more information about feedback notification, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation SetIdentityNotificationTopic for usage and error information. func (c *SES) SetIdentityNotificationTopic(input *SetIdentityNotificationTopicInput) (*SetIdentityNotificationTopicOutput, error) { req, out := c.SetIdentityNotificationTopicRequest(input) err := req.Send() return out, err } const opSetReceiptRulePosition = "SetReceiptRulePosition" // SetReceiptRulePositionRequest generates a "aws/request.Request" representing the // client's request for the SetReceiptRulePosition operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetReceiptRulePosition for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetReceiptRulePosition method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetReceiptRulePositionRequest method. // req, resp := client.SetReceiptRulePositionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) SetReceiptRulePositionRequest(input *SetReceiptRulePositionInput) (req *request.Request, output *SetReceiptRulePositionOutput) { op := &request.Operation{ Name: opSetReceiptRulePosition, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetReceiptRulePositionInput{} } req = c.newRequest(op, input, output) output = &SetReceiptRulePositionOutput{} req.Data = output return } // SetReceiptRulePosition API operation for Amazon Simple Email Service. // // Sets the position of the specified receipt rule in the receipt rule set. // // For information about managing receipt rules, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-receipt-rules.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation SetReceiptRulePosition for usage and error information. // // Returned Error Codes: // * RuleSetDoesNotExist // Indicates that the provided receipt rule set does not exist. // // * RuleDoesNotExist // Indicates that the provided receipt rule does not exist. // func (c *SES) SetReceiptRulePosition(input *SetReceiptRulePositionInput) (*SetReceiptRulePositionOutput, error) { req, out := c.SetReceiptRulePositionRequest(input) err := req.Send() return out, err } const opUpdateReceiptRule = "UpdateReceiptRule" // UpdateReceiptRuleRequest generates a "aws/request.Request" representing the // client's request for the UpdateReceiptRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateReceiptRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateReceiptRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateReceiptRuleRequest method. // req, resp := client.UpdateReceiptRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) UpdateReceiptRuleRequest(input *UpdateReceiptRuleInput) (req *request.Request, output *UpdateReceiptRuleOutput) { op := &request.Operation{ Name: opUpdateReceiptRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateReceiptRuleInput{} } req = c.newRequest(op, input, output) output = &UpdateReceiptRuleOutput{} req.Data = output return } // UpdateReceiptRule API operation for Amazon Simple Email Service. // // Updates a receipt rule. // // For information about managing receipt rules, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-receipt-rules.html). // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation UpdateReceiptRule for usage and error information. // // Returned Error Codes: // * InvalidSnsTopic // Indicates that the provided Amazon SNS topic is invalid, or that Amazon SES // could not publish to the topic, possibly due to permissions issues. For information // about giving permissions, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html). // // * InvalidS3Configuration // Indicates that the provided Amazon S3 bucket or AWS KMS encryption key is // invalid, or that Amazon SES could not publish to the bucket, possibly due // to permissions issues. For information about giving permissions, see the // Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html). // // * InvalidLambdaFunction // Indicates that the provided AWS Lambda function is invalid, or that Amazon // SES could not execute the provided function, possibly due to permissions // issues. For information about giving permissions, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html). // // * RuleSetDoesNotExist // Indicates that the provided receipt rule set does not exist. // // * RuleDoesNotExist // Indicates that the provided receipt rule does not exist. // // * LimitExceeded // Indicates that a resource could not be created due to service limits. For // a list of Amazon SES limits, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/limits.html). // func (c *SES) UpdateReceiptRule(input *UpdateReceiptRuleInput) (*UpdateReceiptRuleOutput, error) { req, out := c.UpdateReceiptRuleRequest(input) err := req.Send() return out, err } const opVerifyDomainDkim = "VerifyDomainDkim" // VerifyDomainDkimRequest generates a "aws/request.Request" representing the // client's request for the VerifyDomainDkim operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See VerifyDomainDkim for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the VerifyDomainDkim method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the VerifyDomainDkimRequest method. // req, resp := client.VerifyDomainDkimRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) VerifyDomainDkimRequest(input *VerifyDomainDkimInput) (req *request.Request, output *VerifyDomainDkimOutput) { op := &request.Operation{ Name: opVerifyDomainDkim, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &VerifyDomainDkimInput{} } req = c.newRequest(op, input, output) output = &VerifyDomainDkimOutput{} req.Data = output return } // VerifyDomainDkim API operation for Amazon Simple Email Service. // // Returns a set of DKIM tokens for a domain. DKIM tokens are character strings // that represent your domain's identity. Using these tokens, you will need // to create DNS CNAME records that point to DKIM public keys hosted by Amazon // SES. Amazon Web Services will eventually detect that you have updated your // DNS records; this detection process may take up to 72 hours. Upon successful // detection, Amazon SES will be able to DKIM-sign email originating from that // domain. // // This action is throttled at one request per second. // // To enable or disable Easy DKIM signing for a domain, use the SetIdentityDkimEnabled // action. // // For more information about creating DNS records using DKIM tokens, go to // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim-dns-records.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation VerifyDomainDkim for usage and error information. func (c *SES) VerifyDomainDkim(input *VerifyDomainDkimInput) (*VerifyDomainDkimOutput, error) { req, out := c.VerifyDomainDkimRequest(input) err := req.Send() return out, err } const opVerifyDomainIdentity = "VerifyDomainIdentity" // VerifyDomainIdentityRequest generates a "aws/request.Request" representing the // client's request for the VerifyDomainIdentity operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See VerifyDomainIdentity for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the VerifyDomainIdentity method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the VerifyDomainIdentityRequest method. // req, resp := client.VerifyDomainIdentityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) VerifyDomainIdentityRequest(input *VerifyDomainIdentityInput) (req *request.Request, output *VerifyDomainIdentityOutput) { op := &request.Operation{ Name: opVerifyDomainIdentity, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &VerifyDomainIdentityInput{} } req = c.newRequest(op, input, output) output = &VerifyDomainIdentityOutput{} req.Data = output return } // VerifyDomainIdentity API operation for Amazon Simple Email Service. // // Verifies a domain. // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation VerifyDomainIdentity for usage and error information. func (c *SES) VerifyDomainIdentity(input *VerifyDomainIdentityInput) (*VerifyDomainIdentityOutput, error) { req, out := c.VerifyDomainIdentityRequest(input) err := req.Send() return out, err } const opVerifyEmailAddress = "VerifyEmailAddress" // VerifyEmailAddressRequest generates a "aws/request.Request" representing the // client's request for the VerifyEmailAddress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See VerifyEmailAddress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the VerifyEmailAddress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the VerifyEmailAddressRequest method. // req, resp := client.VerifyEmailAddressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) VerifyEmailAddressRequest(input *VerifyEmailAddressInput) (req *request.Request, output *VerifyEmailAddressOutput) { op := &request.Operation{ Name: opVerifyEmailAddress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &VerifyEmailAddressInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &VerifyEmailAddressOutput{} req.Data = output return } // VerifyEmailAddress API operation for Amazon Simple Email Service. // // Verifies an email address. This action causes a confirmation email message // to be sent to the specified address. // // The VerifyEmailAddress action is deprecated as of the May 15, 2012 release // of Domain Verification. The VerifyEmailIdentity action is now preferred. // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation VerifyEmailAddress for usage and error information. func (c *SES) VerifyEmailAddress(input *VerifyEmailAddressInput) (*VerifyEmailAddressOutput, error) { req, out := c.VerifyEmailAddressRequest(input) err := req.Send() return out, err } const opVerifyEmailIdentity = "VerifyEmailIdentity" // VerifyEmailIdentityRequest generates a "aws/request.Request" representing the // client's request for the VerifyEmailIdentity operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See VerifyEmailIdentity for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the VerifyEmailIdentity method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the VerifyEmailIdentityRequest method. // req, resp := client.VerifyEmailIdentityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SES) VerifyEmailIdentityRequest(input *VerifyEmailIdentityInput) (req *request.Request, output *VerifyEmailIdentityOutput) { op := &request.Operation{ Name: opVerifyEmailIdentity, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &VerifyEmailIdentityInput{} } req = c.newRequest(op, input, output) output = &VerifyEmailIdentityOutput{} req.Data = output return } // VerifyEmailIdentity API operation for Amazon Simple Email Service. // // Verifies an email address. This action causes a confirmation email message // to be sent to the specified address. // // This action is throttled at one request per second. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Email Service's // API operation VerifyEmailIdentity for usage and error information. func (c *SES) VerifyEmailIdentity(input *VerifyEmailIdentityInput) (*VerifyEmailIdentityOutput, error) { req, out := c.VerifyEmailIdentityRequest(input) err := req.Send() return out, err } // When included in a receipt rule, this action adds a header to the received // email. // // For information about adding a header using a receipt rule, see the Amazon // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-add-header.html). type AddHeaderAction struct { _ struct{} `type:"structure"` // The name of the header to add. Must be between 1 and 50 characters, inclusive, // and consist of alphanumeric (a-z, A-Z, 0-9) characters and dashes only. // // HeaderName is a required field HeaderName *string `type:"string" required:"true"` // Must be less than 2048 characters, and must not contain newline characters // ("\r" or "\n"). // // HeaderValue is a required field HeaderValue *string `type:"string" required:"true"` } // String returns the string representation func (s AddHeaderAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddHeaderAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddHeaderAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddHeaderAction"} if s.HeaderName == nil { invalidParams.Add(request.NewErrParamRequired("HeaderName")) } if s.HeaderValue == nil { invalidParams.Add(request.NewErrParamRequired("HeaderValue")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the body of the message. You can specify text, HTML, or both. // If you use both, then the message should display correctly in the widest // variety of email clients. type Body struct { _ struct{} `type:"structure"` // The content of the message, in HTML format. Use this for email clients that // can process HTML. You can include clickable links, formatted text, and much // more in an HTML message. Html *Content `type:"structure"` // The content of the message, in text format. Use this for text-based email // clients, or clients on high-latency networks (such as mobile devices). Text *Content `type:"structure"` } // String returns the string representation func (s Body) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Body) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Body) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Body"} if s.Html != nil { if err := s.Html.Validate(); err != nil { invalidParams.AddNested("Html", err.(request.ErrInvalidParams)) } } if s.Text != nil { if err := s.Text.Validate(); err != nil { invalidParams.AddNested("Text", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // When included in a receipt rule, this action rejects the received email by // returning a bounce response to the sender and, optionally, publishes a notification // to Amazon Simple Notification Service (Amazon SNS). // // For information about sending a bounce message in response to a received // email, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-bounce.html). type BounceAction struct { _ struct{} `type:"structure"` // Human-readable text to include in the bounce message. // // Message is a required field Message *string `type:"string" required:"true"` // The email address of the sender of the bounced email. This is the address // from which the bounce message will be sent. // // Sender is a required field Sender *string `type:"string" required:"true"` // The SMTP reply code, as defined by RFC 5321 (https://tools.ietf.org/html/rfc5321). // // SmtpReplyCode is a required field SmtpReplyCode *string `type:"string" required:"true"` // The SMTP enhanced status code, as defined by RFC 3463 (https://tools.ietf.org/html/rfc3463). StatusCode *string `type:"string"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the // bounce action is taken. An example of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic. // For more information about Amazon SNS topics, see the Amazon SNS Developer // Guide (http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html). TopicArn *string `type:"string"` } // String returns the string representation func (s BounceAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BounceAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BounceAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BounceAction"} if s.Message == nil { invalidParams.Add(request.NewErrParamRequired("Message")) } if s.Sender == nil { invalidParams.Add(request.NewErrParamRequired("Sender")) } if s.SmtpReplyCode == nil { invalidParams.Add(request.NewErrParamRequired("SmtpReplyCode")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Recipient-related information to include in the Delivery Status Notification // (DSN) when an email that Amazon SES receives on your behalf bounces. // // For information about receiving email through Amazon SES, see the Amazon // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html). type BouncedRecipientInfo struct { _ struct{} `type:"structure"` // The reason for the bounce. You must provide either this parameter or RecipientDsnFields. BounceType *string `type:"string" enum:"BounceType"` // The email address of the recipient of the bounced email. // // Recipient is a required field Recipient *string `type:"string" required:"true"` // This parameter is used only for sending authorization. It is the ARN of the // identity that is associated with the sending authorization policy that permits // you to receive email for the recipient of the bounced email. For more information // about sending authorization, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html). RecipientArn *string `type:"string"` // Recipient-related DSN fields, most of which would normally be filled in automatically // when provided with a BounceType. You must provide either this parameter or // BounceType. RecipientDsnFields *RecipientDsnFields `type:"structure"` } // String returns the string representation func (s BouncedRecipientInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BouncedRecipientInfo) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BouncedRecipientInfo) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BouncedRecipientInfo"} if s.Recipient == nil { invalidParams.Add(request.NewErrParamRequired("Recipient")) } if s.RecipientDsnFields != nil { if err := s.RecipientDsnFields.Validate(); err != nil { invalidParams.AddNested("RecipientDsnFields", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a request to create a receipt rule set by cloning an existing // one. You use receipt rule sets to receive email with Amazon SES. For more // information, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html). type CloneReceiptRuleSetInput struct { _ struct{} `type:"structure"` // The name of the rule set to clone. // // OriginalRuleSetName is a required field OriginalRuleSetName *string `type:"string" required:"true"` // The name of the rule set to create. The name must: // // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores // (_), or dashes (-). // // * Start and end with a letter or number. // // * Contain less than 64 characters. // // RuleSetName is a required field RuleSetName *string `type:"string" required:"true"` } // String returns the string representation func (s CloneReceiptRuleSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CloneReceiptRuleSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CloneReceiptRuleSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CloneReceiptRuleSetInput"} if s.OriginalRuleSetName == nil { invalidParams.Add(request.NewErrParamRequired("OriginalRuleSetName")) } if s.RuleSetName == nil { invalidParams.Add(request.NewErrParamRequired("RuleSetName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type CloneReceiptRuleSetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CloneReceiptRuleSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CloneReceiptRuleSetOutput) GoString() string { return s.String() } // Represents textual data, plus an optional character set specification. // // By default, the text must be 7-bit ASCII, due to the constraints of the SMTP // protocol. If the text must contain any other characters, then you must also // specify a character set. Examples include UTF-8, ISO-8859-1, and Shift_JIS. type Content struct { _ struct{} `type:"structure"` // The character set of the content. Charset *string `type:"string"` // The textual data of the content. // // Data is a required field Data *string `type:"string" required:"true"` } // String returns the string representation func (s Content) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Content) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Content) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Content"} if s.Data == nil { invalidParams.Add(request.NewErrParamRequired("Data")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a request to create a new IP address filter. You use IP address // filters when you receive email with Amazon SES. For more information, see // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html). type CreateReceiptFilterInput struct { _ struct{} `type:"structure"` // A data structure that describes the IP address filter to create, which consists // of a name, an IP address range, and whether to allow or block mail from it. // // Filter is a required field Filter *ReceiptFilter `type:"structure" required:"true"` } // String returns the string representation func (s CreateReceiptFilterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReceiptFilterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateReceiptFilterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateReceiptFilterInput"} if s.Filter == nil { invalidParams.Add(request.NewErrParamRequired("Filter")) } if s.Filter != nil { if err := s.Filter.Validate(); err != nil { invalidParams.AddNested("Filter", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type CreateReceiptFilterOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateReceiptFilterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReceiptFilterOutput) GoString() string { return s.String() } // Represents a request to create a receipt rule. You use receipt rules to receive // email with Amazon SES. For more information, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html). type CreateReceiptRuleInput struct { _ struct{} `type:"structure"` // The name of an existing rule after which the new rule will be placed. If // this parameter is null, the new rule will be inserted at the beginning of // the rule list. After *string `type:"string"` // A data structure that contains the specified rule's name, actions, recipients, // domains, enabled status, scan status, and TLS policy. // // Rule is a required field Rule *ReceiptRule `type:"structure" required:"true"` // The name of the rule set to which to add the rule. // // RuleSetName is a required field RuleSetName *string `type:"string" required:"true"` } // String returns the string representation func (s CreateReceiptRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReceiptRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateReceiptRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateReceiptRuleInput"} if s.Rule == nil { invalidParams.Add(request.NewErrParamRequired("Rule")) } if s.RuleSetName == nil { invalidParams.Add(request.NewErrParamRequired("RuleSetName")) } if s.Rule != nil { if err := s.Rule.Validate(); err != nil { invalidParams.AddNested("Rule", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type CreateReceiptRuleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateReceiptRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReceiptRuleOutput) GoString() string { return s.String() } // Represents a request to create an empty receipt rule set. You use receipt // rule sets to receive email with Amazon SES. For more information, see the // Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html). type CreateReceiptRuleSetInput struct { _ struct{} `type:"structure"` // The name of the rule set to create. The name must: // // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores // (_), or dashes (-). // // * Start and end with a letter or number. // // * Contain less than 64 characters. // // RuleSetName is a required field RuleSetName *string `type:"string" required:"true"` } // String returns the string representation func (s CreateReceiptRuleSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReceiptRuleSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateReceiptRuleSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateReceiptRuleSetInput"} if s.RuleSetName == nil { invalidParams.Add(request.NewErrParamRequired("RuleSetName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type CreateReceiptRuleSetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateReceiptRuleSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReceiptRuleSetOutput) GoString() string { return s.String() } // Represents a request to delete one of your Amazon SES identities (an email // address or domain). type DeleteIdentityInput struct { _ struct{} `type:"structure"` // The identity to be removed from the list of identities for the AWS Account. // // Identity is a required field Identity *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteIdentityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteIdentityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteIdentityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteIdentityInput"} if s.Identity == nil { invalidParams.Add(request.NewErrParamRequired("Identity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type DeleteIdentityOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteIdentityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteIdentityOutput) GoString() string { return s.String() } // Represents a request to delete a sending authorization policy for an identity. // Sending authorization is an Amazon SES feature that enables you to authorize // other senders to use your identities. For information, see the Amazon SES // Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html). type DeleteIdentityPolicyInput struct { _ struct{} `type:"structure"` // The identity that is associated with the policy that you want to delete. // You can specify the identity by using its name or by using its Amazon Resource // Name (ARN). Examples: user@example.com, example.com, arn:aws:ses:us-east-1:123456789012:identity/example.com. // // To successfully call this API, you must own the identity. // // Identity is a required field Identity *string `type:"string" required:"true"` // The name of the policy to be deleted. // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteIdentityPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteIdentityPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteIdentityPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteIdentityPolicyInput"} if s.Identity == nil { invalidParams.Add(request.NewErrParamRequired("Identity")) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type DeleteIdentityPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteIdentityPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteIdentityPolicyOutput) GoString() string { return s.String() } // Represents a request to delete an IP address filter. You use IP address filters // when you receive email with Amazon SES. For more information, see the Amazon // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html). type DeleteReceiptFilterInput struct { _ struct{} `type:"structure"` // The name of the IP address filter to delete. // // FilterName is a required field FilterName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteReceiptFilterInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteReceiptFilterInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteReceiptFilterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteReceiptFilterInput"} if s.FilterName == nil { invalidParams.Add(request.NewErrParamRequired("FilterName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type DeleteReceiptFilterOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteReceiptFilterOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteReceiptFilterOutput) GoString() string { return s.String() } // Represents a request to delete a receipt rule. You use receipt rules to receive // email with Amazon SES. For more information, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html). type DeleteReceiptRuleInput struct { _ struct{} `type:"structure"` // The name of the receipt rule to delete. // // RuleName is a required field RuleName *string `type:"string" required:"true"` // The name of the receipt rule set that contains the receipt rule to delete. // // RuleSetName is a required field RuleSetName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteReceiptRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteReceiptRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteReceiptRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteReceiptRuleInput"} if s.RuleName == nil { invalidParams.Add(request.NewErrParamRequired("RuleName")) } if s.RuleSetName == nil { invalidParams.Add(request.NewErrParamRequired("RuleSetName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type DeleteReceiptRuleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteReceiptRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteReceiptRuleOutput) GoString() string { return s.String() } // Represents a request to delete a receipt rule set and all of the receipt // rules it contains. You use receipt rule sets to receive email with Amazon // SES. For more information, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html). type DeleteReceiptRuleSetInput struct { _ struct{} `type:"structure"` // The name of the receipt rule set to delete. // // RuleSetName is a required field RuleSetName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteReceiptRuleSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteReceiptRuleSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteReceiptRuleSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteReceiptRuleSetInput"} if s.RuleSetName == nil { invalidParams.Add(request.NewErrParamRequired("RuleSetName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type DeleteReceiptRuleSetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteReceiptRuleSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteReceiptRuleSetOutput) GoString() string { return s.String() } // Represents a request to delete an email address from the list of email addresses // you have attempted to verify under your AWS account. type DeleteVerifiedEmailAddressInput struct { _ struct{} `type:"structure"` // An email address to be removed from the list of verified addresses. // // EmailAddress is a required field EmailAddress *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteVerifiedEmailAddressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVerifiedEmailAddressInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteVerifiedEmailAddressInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteVerifiedEmailAddressInput"} if s.EmailAddress == nil { invalidParams.Add(request.NewErrParamRequired("EmailAddress")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteVerifiedEmailAddressOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteVerifiedEmailAddressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVerifiedEmailAddressOutput) GoString() string { return s.String() } // Represents a request to return the metadata and receipt rules for the receipt // rule set that is currently active. You use receipt rule sets to receive email // with Amazon SES. For more information, see the Amazon SES Developer Guide // (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html). type DescribeActiveReceiptRuleSetInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DescribeActiveReceiptRuleSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeActiveReceiptRuleSetInput) GoString() string { return s.String() } // Represents the metadata and receipt rules for the receipt rule set that is // currently active. type DescribeActiveReceiptRuleSetOutput struct { _ struct{} `type:"structure"` // The metadata for the currently active receipt rule set. The metadata consists // of the rule set name and a timestamp of when the rule set was created. Metadata *ReceiptRuleSetMetadata `type:"structure"` // The receipt rules that belong to the active rule set. Rules []*ReceiptRule `type:"list"` } // String returns the string representation func (s DescribeActiveReceiptRuleSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeActiveReceiptRuleSetOutput) GoString() string { return s.String() } // Represents a request to return the details of a receipt rule. You use receipt // rules to receive email with Amazon SES. For more information, see the Amazon // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html). type DescribeReceiptRuleInput struct { _ struct{} `type:"structure"` // The name of the receipt rule. // // RuleName is a required field RuleName *string `type:"string" required:"true"` // The name of the receipt rule set to which the receipt rule belongs. // // RuleSetName is a required field RuleSetName *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeReceiptRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReceiptRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeReceiptRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeReceiptRuleInput"} if s.RuleName == nil { invalidParams.Add(request.NewErrParamRequired("RuleName")) } if s.RuleSetName == nil { invalidParams.Add(request.NewErrParamRequired("RuleSetName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the details of a receipt rule. type DescribeReceiptRuleOutput struct { _ struct{} `type:"structure"` // A data structure that contains the specified receipt rule's name, actions, // recipients, domains, enabled status, scan status, and Transport Layer Security // (TLS) policy. Rule *ReceiptRule `type:"structure"` } // String returns the string representation func (s DescribeReceiptRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReceiptRuleOutput) GoString() string { return s.String() } // Represents a request to return the details of a receipt rule set. You use // receipt rule sets to receive email with Amazon SES. For more information, // see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html). type DescribeReceiptRuleSetInput struct { _ struct{} `type:"structure"` // The name of the receipt rule set to describe. // // RuleSetName is a required field RuleSetName *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeReceiptRuleSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReceiptRuleSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeReceiptRuleSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeReceiptRuleSetInput"} if s.RuleSetName == nil { invalidParams.Add(request.NewErrParamRequired("RuleSetName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the details of the specified receipt rule set. type DescribeReceiptRuleSetOutput struct { _ struct{} `type:"structure"` // The metadata for the receipt rule set, which consists of the rule set name // and the timestamp of when the rule set was created. Metadata *ReceiptRuleSetMetadata `type:"structure"` // A list of the receipt rules that belong to the specified receipt rule set. Rules []*ReceiptRule `type:"list"` } // String returns the string representation func (s DescribeReceiptRuleSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeReceiptRuleSetOutput) GoString() string { return s.String() } // Represents the destination of the message, consisting of To:, CC:, and BCC: // fields. // // By default, the string must be 7-bit ASCII. If the text must contain any // other characters, then you must use MIME encoded-word syntax (RFC 2047) instead // of a literal string. MIME encoded-word syntax uses the following form: =?charset?encoding?encoded-text?=. // For more information, see RFC 2047 (http://tools.ietf.org/html/rfc2047). type Destination struct { _ struct{} `type:"structure"` // The BCC: field(s) of the message. BccAddresses []*string `type:"list"` // The CC: field(s) of the message. CcAddresses []*string `type:"list"` // The To: field(s) of the message. ToAddresses []*string `type:"list"` } // String returns the string representation func (s Destination) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Destination) GoString() string { return s.String() } // Additional X-headers to include in the Delivery Status Notification (DSN) // when an email that Amazon SES receives on your behalf bounces. // // For information about receiving email through Amazon SES, see the Amazon // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html). type ExtensionField struct { _ struct{} `type:"structure"` // The name of the header to add. Must be between 1 and 50 characters, inclusive, // and consist of alphanumeric (a-z, A-Z, 0-9) characters and dashes only. // // Name is a required field Name *string `type:"string" required:"true"` // The value of the header to add. Must be less than 2048 characters, and must // not contain newline characters ("\r" or "\n"). // // Value is a required field Value *string `type:"string" required:"true"` } // String returns the string representation func (s ExtensionField) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExtensionField) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ExtensionField) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ExtensionField"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a request for the status of Amazon SES Easy DKIM signing for an // identity. For domain identities, this request also returns the DKIM tokens // that are required for Easy DKIM signing, and whether Amazon SES successfully // verified that these tokens were published. For more information about Easy // DKIM, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim.html). type GetIdentityDkimAttributesInput struct { _ struct{} `type:"structure"` // A list of one or more verified identities - email addresses, domains, or // both. // // Identities is a required field Identities []*string `type:"list" required:"true"` } // String returns the string representation func (s GetIdentityDkimAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIdentityDkimAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetIdentityDkimAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetIdentityDkimAttributesInput"} if s.Identities == nil { invalidParams.Add(request.NewErrParamRequired("Identities")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the status of Amazon SES Easy DKIM signing for an identity. For // domain identities, this response also contains the DKIM tokens that are required // for Easy DKIM signing, and whether Amazon SES successfully verified that // these tokens were published. type GetIdentityDkimAttributesOutput struct { _ struct{} `type:"structure"` // The DKIM attributes for an email address or a domain. // // DkimAttributes is a required field DkimAttributes map[string]*IdentityDkimAttributes `type:"map" required:"true"` } // String returns the string representation func (s GetIdentityDkimAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIdentityDkimAttributesOutput) GoString() string { return s.String() } // Represents a request to return the Amazon SES custom MAIL FROM attributes // for a list of identities. For information about using a custom MAIL FROM // domain, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mail-from.html). type GetIdentityMailFromDomainAttributesInput struct { _ struct{} `type:"structure"` // A list of one or more identities. // // Identities is a required field Identities []*string `type:"list" required:"true"` } // String returns the string representation func (s GetIdentityMailFromDomainAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIdentityMailFromDomainAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetIdentityMailFromDomainAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetIdentityMailFromDomainAttributesInput"} if s.Identities == nil { invalidParams.Add(request.NewErrParamRequired("Identities")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the custom MAIL FROM attributes for a list of identities. type GetIdentityMailFromDomainAttributesOutput struct { _ struct{} `type:"structure"` // A map of identities to custom MAIL FROM attributes. // // MailFromDomainAttributes is a required field MailFromDomainAttributes map[string]*IdentityMailFromDomainAttributes `type:"map" required:"true"` } // String returns the string representation func (s GetIdentityMailFromDomainAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIdentityMailFromDomainAttributesOutput) GoString() string { return s.String() } // Represents a request to return the notification attributes for a list of // identities you verified with Amazon SES. For information about Amazon SES // notifications, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html). type GetIdentityNotificationAttributesInput struct { _ struct{} `type:"structure"` // A list of one or more identities. You can specify an identity by using its // name or by using its Amazon Resource Name (ARN). Examples: user@example.com, // example.com, arn:aws:ses:us-east-1:123456789012:identity/example.com. // // Identities is a required field Identities []*string `type:"list" required:"true"` } // String returns the string representation func (s GetIdentityNotificationAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIdentityNotificationAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetIdentityNotificationAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetIdentityNotificationAttributesInput"} if s.Identities == nil { invalidParams.Add(request.NewErrParamRequired("Identities")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the notification attributes for a list of identities. type GetIdentityNotificationAttributesOutput struct { _ struct{} `type:"structure"` // A map of Identity to IdentityNotificationAttributes. // // NotificationAttributes is a required field NotificationAttributes map[string]*IdentityNotificationAttributes `type:"map" required:"true"` } // String returns the string representation func (s GetIdentityNotificationAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIdentityNotificationAttributesOutput) GoString() string { return s.String() } // Represents a request to return the requested sending authorization policies // for an identity. Sending authorization is an Amazon SES feature that enables // you to authorize other senders to use your identities. For information, see // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html). type GetIdentityPoliciesInput struct { _ struct{} `type:"structure"` // The identity for which the policies will be retrieved. You can specify an // identity by using its name or by using its Amazon Resource Name (ARN). Examples: // user@example.com, example.com, arn:aws:ses:us-east-1:123456789012:identity/example.com. // // To successfully call this API, you must own the identity. // // Identity is a required field Identity *string `type:"string" required:"true"` // A list of the names of policies to be retrieved. You can retrieve a maximum // of 20 policies at a time. If you do not know the names of the policies that // are attached to the identity, you can use ListIdentityPolicies. // // PolicyNames is a required field PolicyNames []*string `type:"list" required:"true"` } // String returns the string representation func (s GetIdentityPoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIdentityPoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetIdentityPoliciesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetIdentityPoliciesInput"} if s.Identity == nil { invalidParams.Add(request.NewErrParamRequired("Identity")) } if s.PolicyNames == nil { invalidParams.Add(request.NewErrParamRequired("PolicyNames")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the requested sending authorization policies. type GetIdentityPoliciesOutput struct { _ struct{} `type:"structure"` // A map of policy names to policies. // // Policies is a required field Policies map[string]*string `type:"map" required:"true"` } // String returns the string representation func (s GetIdentityPoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIdentityPoliciesOutput) GoString() string { return s.String() } // Represents a request to return the Amazon SES verification status of a list // of identities. For domain identities, this request also returns the verification // token. For information about verifying identities with Amazon SES, see the // Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html). type GetIdentityVerificationAttributesInput struct { _ struct{} `type:"structure"` // A list of identities. // // Identities is a required field Identities []*string `type:"list" required:"true"` } // String returns the string representation func (s GetIdentityVerificationAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIdentityVerificationAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetIdentityVerificationAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetIdentityVerificationAttributesInput"} if s.Identities == nil { invalidParams.Add(request.NewErrParamRequired("Identities")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The Amazon SES verification status of a list of identities. For domain identities, // this response also contains the verification token. type GetIdentityVerificationAttributesOutput struct { _ struct{} `type:"structure"` // A map of Identities to IdentityVerificationAttributes objects. // // VerificationAttributes is a required field VerificationAttributes map[string]*IdentityVerificationAttributes `type:"map" required:"true"` } // String returns the string representation func (s GetIdentityVerificationAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIdentityVerificationAttributesOutput) GoString() string { return s.String() } type GetSendQuotaInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GetSendQuotaInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSendQuotaInput) GoString() string { return s.String() } // Represents your Amazon SES daily sending quota, maximum send rate, and the // number of emails you have sent in the last 24 hours. type GetSendQuotaOutput struct { _ struct{} `type:"structure"` // The maximum number of emails the user is allowed to send in a 24-hour interval. // A value of -1 signifies an unlimited quota. Max24HourSend *float64 `type:"double"` // The maximum number of emails that Amazon SES can accept from the user's account // per second. // // The rate at which Amazon SES accepts the user's messages might be less than // the maximum send rate. MaxSendRate *float64 `type:"double"` // The number of emails sent during the previous 24 hours. SentLast24Hours *float64 `type:"double"` } // String returns the string representation func (s GetSendQuotaOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSendQuotaOutput) GoString() string { return s.String() } type GetSendStatisticsInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GetSendStatisticsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSendStatisticsInput) GoString() string { return s.String() } // Represents a list of data points. This list contains aggregated data from // the previous two weeks of your sending activity with Amazon SES. type GetSendStatisticsOutput struct { _ struct{} `type:"structure"` // A list of data points, each of which represents 15 minutes of activity. SendDataPoints []*SendDataPoint `type:"list"` } // String returns the string representation func (s GetSendStatisticsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSendStatisticsOutput) GoString() string { return s.String() } // Represents the DKIM attributes of a verified email address or a domain. type IdentityDkimAttributes struct { _ struct{} `type:"structure"` // True if DKIM signing is enabled for email sent from the identity; false otherwise. // // DkimEnabled is a required field DkimEnabled *bool `type:"boolean" required:"true"` // A set of character strings that represent the domain's identity. Using these // tokens, you will need to create DNS CNAME records that point to DKIM public // keys hosted by Amazon SES. Amazon Web Services will eventually detect that // you have updated your DNS records; this detection process may take up to // 72 hours. Upon successful detection, Amazon SES will be able to DKIM-sign // email originating from that domain. (This only applies to domain identities, // not email address identities.) // // For more information about creating DNS records using DKIM tokens, go to // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim-dns-records.html). DkimTokens []*string `type:"list"` // Describes whether Amazon SES has successfully verified the DKIM DNS records // (tokens) published in the domain name's DNS. (This only applies to domain // identities, not email address identities.) // // DkimVerificationStatus is a required field DkimVerificationStatus *string `type:"string" required:"true" enum:"VerificationStatus"` } // String returns the string representation func (s IdentityDkimAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IdentityDkimAttributes) GoString() string { return s.String() } // Represents the custom MAIL FROM domain attributes of a verified identity // (email address or domain). type IdentityMailFromDomainAttributes struct { _ struct{} `type:"structure"` // The action that Amazon SES takes if it cannot successfully read the required // MX record when you send an email. A value of UseDefaultValue indicates that // if Amazon SES cannot read the required MX record, it uses amazonses.com (or // a subdomain of that) as the MAIL FROM domain. A value of RejectMessage indicates // that if Amazon SES cannot read the required MX record, Amazon SES returns // a MailFromDomainNotVerified error and does not send the email. // // The custom MAIL FROM setup states that result in this behavior are Pending, // Failed, and TemporaryFailure. // // BehaviorOnMXFailure is a required field BehaviorOnMXFailure *string `type:"string" required:"true" enum:"BehaviorOnMXFailure"` // The custom MAIL FROM domain that the identity is configured to use. // // MailFromDomain is a required field MailFromDomain *string `type:"string" required:"true"` // The state that indicates whether Amazon SES has successfully read the MX // record required for custom MAIL FROM domain setup. If the state is Success, // Amazon SES uses the specified custom MAIL FROM domain when the verified identity // sends an email. All other states indicate that Amazon SES takes the action // described by BehaviorOnMXFailure. // // MailFromDomainStatus is a required field MailFromDomainStatus *string `type:"string" required:"true" enum:"CustomMailFromStatus"` } // String returns the string representation func (s IdentityMailFromDomainAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IdentityMailFromDomainAttributes) GoString() string { return s.String() } // Represents the notification attributes of an identity, including whether // an identity has Amazon Simple Notification Service (Amazon SNS) topics set // for bounce, complaint, and/or delivery notifications, and whether feedback // forwarding is enabled for bounce and complaint notifications. type IdentityNotificationAttributes struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the Amazon SNS topic where Amazon SES will // publish bounce notifications. // // BounceTopic is a required field BounceTopic *string `type:"string" required:"true"` // The Amazon Resource Name (ARN) of the Amazon SNS topic where Amazon SES will // publish complaint notifications. // // ComplaintTopic is a required field ComplaintTopic *string `type:"string" required:"true"` // The Amazon Resource Name (ARN) of the Amazon SNS topic where Amazon SES will // publish delivery notifications. // // DeliveryTopic is a required field DeliveryTopic *string `type:"string" required:"true"` // Describes whether Amazon SES will forward bounce and complaint notifications // as email. true indicates that Amazon SES will forward bounce and complaint // notifications as email, while false indicates that bounce and complaint notifications // will be published only to the specified bounce and complaint Amazon SNS topics. // // ForwardingEnabled is a required field ForwardingEnabled *bool `type:"boolean" required:"true"` // Describes whether Amazon SES includes the original email headers in Amazon // SNS notifications of type Bounce. A value of true specifies that Amazon SES // will include headers in bounce notifications, and a value of false specifies // that Amazon SES will not include headers in bounce notifications. HeadersInBounceNotificationsEnabled *bool `type:"boolean"` // Describes whether Amazon SES includes the original email headers in Amazon // SNS notifications of type Complaint. A value of true specifies that Amazon // SES will include headers in complaint notifications, and a value of false // specifies that Amazon SES will not include headers in complaint notifications. HeadersInComplaintNotificationsEnabled *bool `type:"boolean"` // Describes whether Amazon SES includes the original email headers in Amazon // SNS notifications of type Delivery. A value of true specifies that Amazon // SES will include headers in delivery notifications, and a value of false // specifies that Amazon SES will not include headers in delivery notifications. HeadersInDeliveryNotificationsEnabled *bool `type:"boolean"` } // String returns the string representation func (s IdentityNotificationAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IdentityNotificationAttributes) GoString() string { return s.String() } // Represents the verification attributes of a single identity. type IdentityVerificationAttributes struct { _ struct{} `type:"structure"` // The verification status of the identity: "Pending", "Success", "Failed", // or "TemporaryFailure". // // VerificationStatus is a required field VerificationStatus *string `type:"string" required:"true" enum:"VerificationStatus"` // The verification token for a domain identity. Null for email address identities. VerificationToken *string `type:"string"` } // String returns the string representation func (s IdentityVerificationAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IdentityVerificationAttributes) GoString() string { return s.String() } // When included in a receipt rule, this action calls an AWS Lambda function // and, optionally, publishes a notification to Amazon Simple Notification Service // (Amazon SNS). // // To enable Amazon SES to call your AWS Lambda function or to publish to an // Amazon SNS topic of another account, Amazon SES must have permission to access // those resources. For information about giving permissions, see the Amazon // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html). // // For information about using AWS Lambda actions in receipt rules, see the // Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-lambda.html). type LambdaAction struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the AWS Lambda function. An example of // an AWS Lambda function ARN is arn:aws:lambda:us-west-2:account-id:function:MyFunction. // For more information about AWS Lambda, see the AWS Lambda Developer Guide // (http://docs.aws.amazon.com/lambda/latest/dg/welcome.html). // // FunctionArn is a required field FunctionArn *string `type:"string" required:"true"` // The invocation type of the AWS Lambda function. An invocation type of RequestResponse // means that the execution of the function will immediately result in a response, // and a value of Event means that the function will be invoked asynchronously. // The default value is Event. For information about AWS Lambda invocation types, // see the AWS Lambda Developer Guide (http://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html). // // There is a 30-second timeout on RequestResponse invocations. You should use // Event invocation in most cases. Use RequestResponse only when you want to // make a mail flow decision, such as whether to stop the receipt rule or the // receipt rule set. InvocationType *string `type:"string" enum:"InvocationType"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the // Lambda action is taken. An example of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic. // For more information about Amazon SNS topics, see the Amazon SNS Developer // Guide (http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html). TopicArn *string `type:"string"` } // String returns the string representation func (s LambdaAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LambdaAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *LambdaAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "LambdaAction"} if s.FunctionArn == nil { invalidParams.Add(request.NewErrParamRequired("FunctionArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a request to return a list of all identities (email addresses // and domains) that you have attempted to verify under your AWS account, regardless // of verification status. type ListIdentitiesInput struct { _ struct{} `type:"structure"` // The type of the identities to list. Possible values are "EmailAddress" and // "Domain". If this parameter is omitted, then all identities will be listed. IdentityType *string `type:"string" enum:"IdentityType"` // The maximum number of identities per page. Possible values are 1-1000 inclusive. MaxItems *int64 `type:"integer"` // The token to use for pagination. NextToken *string `type:"string"` } // String returns the string representation func (s ListIdentitiesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListIdentitiesInput) GoString() string { return s.String() } // A list of all identities that you have attempted to verify under your AWS // account, regardless of verification status. type ListIdentitiesOutput struct { _ struct{} `type:"structure"` // A list of identities. // // Identities is a required field Identities []*string `type:"list" required:"true"` // The token used for pagination. NextToken *string `type:"string"` } // String returns the string representation func (s ListIdentitiesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListIdentitiesOutput) GoString() string { return s.String() } // Represents a request to return a list of sending authorization policies that // are attached to an identity. Sending authorization is an Amazon SES feature // that enables you to authorize other senders to use your identities. For information, // see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html). type ListIdentityPoliciesInput struct { _ struct{} `type:"structure"` // The identity that is associated with the policy for which the policies will // be listed. You can specify an identity by using its name or by using its // Amazon Resource Name (ARN). Examples: user@example.com, example.com, arn:aws:ses:us-east-1:123456789012:identity/example.com. // // To successfully call this API, you must own the identity. // // Identity is a required field Identity *string `type:"string" required:"true"` } // String returns the string representation func (s ListIdentityPoliciesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListIdentityPoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListIdentityPoliciesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListIdentityPoliciesInput"} if s.Identity == nil { invalidParams.Add(request.NewErrParamRequired("Identity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A list of names of sending authorization policies that apply to an identity. type ListIdentityPoliciesOutput struct { _ struct{} `type:"structure"` // A list of names of policies that apply to the specified identity. // // PolicyNames is a required field PolicyNames []*string `type:"list" required:"true"` } // String returns the string representation func (s ListIdentityPoliciesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListIdentityPoliciesOutput) GoString() string { return s.String() } // : Represents a request to list the IP address filters that exist under your // AWS account. You use IP address filters when you receive email with Amazon // SES. For more information, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html). type ListReceiptFiltersInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ListReceiptFiltersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListReceiptFiltersInput) GoString() string { return s.String() } // A list of IP address filters that exist under your AWS account. type ListReceiptFiltersOutput struct { _ struct{} `type:"structure"` // A list of IP address filter data structures, which each consist of a name, // an IP address range, and whether to allow or block mail from it. Filters []*ReceiptFilter `type:"list"` } // String returns the string representation func (s ListReceiptFiltersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListReceiptFiltersOutput) GoString() string { return s.String() } // Represents a request to list the receipt rule sets that exist under your // AWS account. You use receipt rule sets to receive email with Amazon SES. // For more information, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html). type ListReceiptRuleSetsInput struct { _ struct{} `type:"structure"` // A token returned from a previous call to ListReceiptRuleSets to indicate // the position in the receipt rule set list. NextToken *string `type:"string"` } // String returns the string representation func (s ListReceiptRuleSetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListReceiptRuleSetsInput) GoString() string { return s.String() } // A list of receipt rule sets that exist under your AWS account. type ListReceiptRuleSetsOutput struct { _ struct{} `type:"structure"` // A token indicating that there are additional receipt rule sets available // to be listed. Pass this token to successive calls of ListReceiptRuleSets // to retrieve up to 100 receipt rule sets at a time. NextToken *string `type:"string"` // The metadata for the currently active receipt rule set. The metadata consists // of the rule set name and the timestamp of when the rule set was created. RuleSets []*ReceiptRuleSetMetadata `type:"list"` } // String returns the string representation func (s ListReceiptRuleSetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListReceiptRuleSetsOutput) GoString() string { return s.String() } type ListVerifiedEmailAddressesInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ListVerifiedEmailAddressesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListVerifiedEmailAddressesInput) GoString() string { return s.String() } // A list of email addresses that you have verified with Amazon SES under your // AWS account. type ListVerifiedEmailAddressesOutput struct { _ struct{} `type:"structure"` // A list of email addresses that have been verified. VerifiedEmailAddresses []*string `type:"list"` } // String returns the string representation func (s ListVerifiedEmailAddressesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListVerifiedEmailAddressesOutput) GoString() string { return s.String() } // Represents the message to be sent, composed of a subject and a body. type Message struct { _ struct{} `type:"structure"` // The message body. // // Body is a required field Body *Body `type:"structure" required:"true"` // The subject of the message: A short summary of the content, which will appear // in the recipient's inbox. // // Subject is a required field Subject *Content `type:"structure" required:"true"` } // String returns the string representation func (s Message) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Message) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Message) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Message"} if s.Body == nil { invalidParams.Add(request.NewErrParamRequired("Body")) } if s.Subject == nil { invalidParams.Add(request.NewErrParamRequired("Subject")) } if s.Body != nil { if err := s.Body.Validate(); err != nil { invalidParams.AddNested("Body", err.(request.ErrInvalidParams)) } } if s.Subject != nil { if err := s.Subject.Validate(); err != nil { invalidParams.AddNested("Subject", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Message-related information to include in the Delivery Status Notification // (DSN) when an email that Amazon SES receives on your behalf bounces. // // For information about receiving email through Amazon SES, see the Amazon // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html). type MessageDsn struct { _ struct{} `type:"structure"` // When the message was received by the reporting mail transfer agent (MTA), // in RFC 822 (https://www.ietf.org/rfc/rfc0822.txt) date-time format. ArrivalDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // Additional X-headers to include in the DSN. ExtensionFields []*ExtensionField `type:"list"` // The reporting MTA that attempted to deliver the message, formatted as specified // in RFC 3464 (https://tools.ietf.org/html/rfc3464) (mta-name-type; mta-name). // The default value is dns; inbound-smtp.[region].amazonaws.com. // // ReportingMta is a required field ReportingMta *string `type:"string" required:"true"` } // String returns the string representation func (s MessageDsn) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MessageDsn) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MessageDsn) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MessageDsn"} if s.ReportingMta == nil { invalidParams.Add(request.NewErrParamRequired("ReportingMta")) } if s.ExtensionFields != nil { for i, v := range s.ExtensionFields { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ExtensionFields", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a request to add or update a sending authorization policy for // an identity. Sending authorization is an Amazon SES feature that enables // you to authorize other senders to use your identities. For information, see // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html). type PutIdentityPolicyInput struct { _ struct{} `type:"structure"` // The identity to which the policy will apply. You can specify an identity // by using its name or by using its Amazon Resource Name (ARN). Examples: user@example.com, // example.com, arn:aws:ses:us-east-1:123456789012:identity/example.com. // // To successfully call this API, you must own the identity. // // Identity is a required field Identity *string `type:"string" required:"true"` // The text of the policy in JSON format. The policy cannot exceed 4 KB. // // For information about the syntax of sending authorization policies, see the // Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization-policies.html). // // Policy is a required field Policy *string `min:"1" type:"string" required:"true"` // The name of the policy. // // The policy name cannot exceed 64 characters and can only include alphanumeric // characters, dashes, and underscores. // // PolicyName is a required field PolicyName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s PutIdentityPolicyInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutIdentityPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutIdentityPolicyInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutIdentityPolicyInput"} if s.Identity == nil { invalidParams.Add(request.NewErrParamRequired("Identity")) } if s.Policy == nil { invalidParams.Add(request.NewErrParamRequired("Policy")) } if s.Policy != nil && len(*s.Policy) < 1 { invalidParams.Add(request.NewErrParamMinLen("Policy", 1)) } if s.PolicyName == nil { invalidParams.Add(request.NewErrParamRequired("PolicyName")) } if s.PolicyName != nil && len(*s.PolicyName) < 1 { invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type PutIdentityPolicyOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutIdentityPolicyOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutIdentityPolicyOutput) GoString() string { return s.String() } // Represents the raw data of the message. type RawMessage struct { _ struct{} `type:"structure"` // The raw data of the message. The client must ensure that the message format // complies with Internet email standards regarding email header fields, MIME // types, MIME encoding, and base64 encoding. // // The To:, CC:, and BCC: headers in the raw message can contain a group list. // // If you are using SendRawEmail with sending authorization, you can include // X-headers in the raw message to specify the "Source," "From," and "Return-Path" // addresses. For more information, see the documentation for SendRawEmail. // // Do not include these X-headers in the DKIM signature, because they are removed // by Amazon SES before sending the email. // // For more information, go to the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-raw.html). // // Data is automatically base64 encoded/decoded by the SDK. // // Data is a required field Data []byte `type:"blob" required:"true"` } // String returns the string representation func (s RawMessage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RawMessage) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RawMessage) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RawMessage"} if s.Data == nil { invalidParams.Add(request.NewErrParamRequired("Data")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An action that Amazon SES can take when it receives an email on behalf of // one or more email addresses or domains that you own. An instance of this // data type can represent only one action. // // For information about setting up receipt rules, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rules.html). type ReceiptAction struct { _ struct{} `type:"structure"` // Adds a header to the received email. AddHeaderAction *AddHeaderAction `type:"structure"` // Rejects the received email by returning a bounce response to the sender and, // optionally, publishes a notification to Amazon Simple Notification Service // (Amazon SNS). BounceAction *BounceAction `type:"structure"` // Calls an AWS Lambda function, and optionally, publishes a notification to // Amazon SNS. LambdaAction *LambdaAction `type:"structure"` // Saves the received message to an Amazon Simple Storage Service (Amazon S3) // bucket and, optionally, publishes a notification to Amazon SNS. S3Action *S3Action `type:"structure"` // Publishes the email content within a notification to Amazon SNS. SNSAction *SNSAction `type:"structure"` // Terminates the evaluation of the receipt rule set and optionally publishes // a notification to Amazon SNS. StopAction *StopAction `type:"structure"` // Calls Amazon WorkMail and, optionally, publishes a notification to Amazon // SNS. WorkmailAction *WorkmailAction `type:"structure"` } // String returns the string representation func (s ReceiptAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReceiptAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReceiptAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReceiptAction"} if s.AddHeaderAction != nil { if err := s.AddHeaderAction.Validate(); err != nil { invalidParams.AddNested("AddHeaderAction", err.(request.ErrInvalidParams)) } } if s.BounceAction != nil { if err := s.BounceAction.Validate(); err != nil { invalidParams.AddNested("BounceAction", err.(request.ErrInvalidParams)) } } if s.LambdaAction != nil { if err := s.LambdaAction.Validate(); err != nil { invalidParams.AddNested("LambdaAction", err.(request.ErrInvalidParams)) } } if s.S3Action != nil { if err := s.S3Action.Validate(); err != nil { invalidParams.AddNested("S3Action", err.(request.ErrInvalidParams)) } } if s.SNSAction != nil { if err := s.SNSAction.Validate(); err != nil { invalidParams.AddNested("SNSAction", err.(request.ErrInvalidParams)) } } if s.StopAction != nil { if err := s.StopAction.Validate(); err != nil { invalidParams.AddNested("StopAction", err.(request.ErrInvalidParams)) } } if s.WorkmailAction != nil { if err := s.WorkmailAction.Validate(); err != nil { invalidParams.AddNested("WorkmailAction", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A receipt IP address filter enables you to specify whether to accept or reject // mail originating from an IP address or range of IP addresses. // // For information about setting up IP address filters, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-ip-filters.html). type ReceiptFilter struct { _ struct{} `type:"structure"` // A structure that provides the IP addresses to block or allow, and whether // to block or allow incoming mail from them. // // IpFilter is a required field IpFilter *ReceiptIpFilter `type:"structure" required:"true"` // The name of the IP address filter. The name must: // // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores // (_), or dashes (-). // // * Start and end with a letter or number. // // * Contain less than 64 characters. // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s ReceiptFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReceiptFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReceiptFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReceiptFilter"} if s.IpFilter == nil { invalidParams.Add(request.NewErrParamRequired("IpFilter")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.IpFilter != nil { if err := s.IpFilter.Validate(); err != nil { invalidParams.AddNested("IpFilter", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A receipt IP address filter enables you to specify whether to accept or reject // mail originating from an IP address or range of IP addresses. // // For information about setting up IP address filters, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-ip-filters.html). type ReceiptIpFilter struct { _ struct{} `type:"structure"` // A single IP address or a range of IP addresses that you want to block or // allow, specified in Classless Inter-Domain Routing (CIDR) notation. An example // of a single email address is 10.0.0.1. An example of a range of IP addresses // is 10.0.0.1/24. For more information about CIDR notation, see RFC 2317 (https://tools.ietf.org/html/rfc2317). // // Cidr is a required field Cidr *string `type:"string" required:"true"` // Indicates whether to block or allow incoming mail from the specified IP addresses. // // Policy is a required field Policy *string `type:"string" required:"true" enum:"ReceiptFilterPolicy"` } // String returns the string representation func (s ReceiptIpFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReceiptIpFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReceiptIpFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReceiptIpFilter"} if s.Cidr == nil { invalidParams.Add(request.NewErrParamRequired("Cidr")) } if s.Policy == nil { invalidParams.Add(request.NewErrParamRequired("Policy")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Receipt rules enable you to specify which actions Amazon SES should take // when it receives mail on behalf of one or more email addresses or domains // that you own. // // Each receipt rule defines a set of email addresses or domains to which it // applies. If the email addresses or domains match at least one recipient address // of the message, Amazon SES executes all of the receipt rule's actions on // the message. // // For information about setting up receipt rules, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rules.html). type ReceiptRule struct { _ struct{} `type:"structure"` // An ordered list of actions to perform on messages that match at least one // of the recipient email addresses or domains specified in the receipt rule. Actions []*ReceiptAction `type:"list"` // If true, the receipt rule is active. The default value is false. Enabled *bool `type:"boolean"` // The name of the receipt rule. The name must: // // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores // (_), or dashes (-). // // * Start and end with a letter or number. // // * Contain less than 64 characters. // // Name is a required field Name *string `type:"string" required:"true"` // The recipient domains and email addresses to which the receipt rule applies. // If this field is not specified, this rule will match all recipients under // all verified domains. Recipients []*string `type:"list"` // If true, then messages to which this receipt rule applies are scanned for // spam and viruses. The default value is false. ScanEnabled *bool `type:"boolean"` // Specifies whether Amazon SES should require that incoming email is delivered // over a connection encrypted with Transport Layer Security (TLS). If this // parameter is set to Require, Amazon SES will bounce emails that are not received // over TLS. The default is Optional. TlsPolicy *string `type:"string" enum:"TlsPolicy"` } // String returns the string representation func (s ReceiptRule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReceiptRule) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReceiptRule) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReceiptRule"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Actions != nil { for i, v := range s.Actions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Actions", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Information about a receipt rule set. // // A receipt rule set is a collection of rules that specify what Amazon SES // should do with mail it receives on behalf of your account's verified domains. // // For information about setting up receipt rule sets, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rule-set.html). type ReceiptRuleSetMetadata struct { _ struct{} `type:"structure"` // The date and time the receipt rule set was created. CreatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The name of the receipt rule set. The name must: // // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores // (_), or dashes (-). // // * Start and end with a letter or number. // // * Contain less than 64 characters. Name *string `type:"string"` } // String returns the string representation func (s ReceiptRuleSetMetadata) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReceiptRuleSetMetadata) GoString() string { return s.String() } // Recipient-related information to include in the Delivery Status Notification // (DSN) when an email that Amazon SES receives on your behalf bounces. // // For information about receiving email through Amazon SES, see the Amazon // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html). type RecipientDsnFields struct { _ struct{} `type:"structure"` // The action performed by the reporting mail transfer agent (MTA) as a result // of its attempt to deliver the message to the recipient address. This is required // by RFC 3464 (https://tools.ietf.org/html/rfc3464). // // Action is a required field Action *string `type:"string" required:"true" enum:"DsnAction"` // An extended explanation of what went wrong; this is usually an SMTP response. // See RFC 3463 (https://tools.ietf.org/html/rfc3463) for the correct formatting // of this parameter. DiagnosticCode *string `type:"string"` // Additional X-headers to include in the DSN. ExtensionFields []*ExtensionField `type:"list"` // The email address to which the message was ultimately delivered. This corresponds // to the Final-Recipient in the DSN. If not specified, FinalRecipient will // be set to the Recipient specified in the BouncedRecipientInfo structure. // Either FinalRecipient or the recipient in BouncedRecipientInfo must be a // recipient of the original bounced message. // // Do not prepend the FinalRecipient email address with rfc 822;, as described // in RFC 3798 (https://tools.ietf.org/html/rfc3798). FinalRecipient *string `type:"string"` // The time the final delivery attempt was made, in RFC 822 (https://www.ietf.org/rfc/rfc0822.txt) // date-time format. LastAttemptDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The MTA to which the remote MTA attempted to deliver the message, formatted // as specified in RFC 3464 (https://tools.ietf.org/html/rfc3464) (mta-name-type; // mta-name). This parameter typically applies only to propagating synchronous // bounces. RemoteMta *string `type:"string"` // The status code that indicates what went wrong. This is required by RFC 3464 // (https://tools.ietf.org/html/rfc3464). // // Status is a required field Status *string `type:"string" required:"true"` } // String returns the string representation func (s RecipientDsnFields) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecipientDsnFields) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RecipientDsnFields) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RecipientDsnFields"} if s.Action == nil { invalidParams.Add(request.NewErrParamRequired("Action")) } if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if s.ExtensionFields != nil { for i, v := range s.ExtensionFields { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ExtensionFields", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a request to reorder the receipt rules within a receipt rule set. // You use receipt rule sets to receive email with Amazon SES. For more information, // see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html). type ReorderReceiptRuleSetInput struct { _ struct{} `type:"structure"` // A list of the specified receipt rule set's receipt rules in the order that // you want to put them. // // RuleNames is a required field RuleNames []*string `type:"list" required:"true"` // The name of the receipt rule set to reorder. // // RuleSetName is a required field RuleSetName *string `type:"string" required:"true"` } // String returns the string representation func (s ReorderReceiptRuleSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReorderReceiptRuleSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReorderReceiptRuleSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReorderReceiptRuleSetInput"} if s.RuleNames == nil { invalidParams.Add(request.NewErrParamRequired("RuleNames")) } if s.RuleSetName == nil { invalidParams.Add(request.NewErrParamRequired("RuleSetName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type ReorderReceiptRuleSetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ReorderReceiptRuleSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReorderReceiptRuleSetOutput) GoString() string { return s.String() } // When included in a receipt rule, this action saves the received message to // an Amazon Simple Storage Service (Amazon S3) bucket and, optionally, publishes // a notification to Amazon Simple Notification Service (Amazon SNS). // // To enable Amazon SES to write emails to your Amazon S3 bucket, use an AWS // KMS key to encrypt your emails, or publish to an Amazon SNS topic of another // account, Amazon SES must have permission to access those resources. For information // about giving permissions, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html). // // When you save your emails to an Amazon S3 bucket, the maximum email size // (including headers) is 30 MB. Emails larger than that will bounce. // // For information about specifying Amazon S3 actions in receipt rules, see // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-s3.html). type S3Action struct { _ struct{} `type:"structure"` // The name of the Amazon S3 bucket to which to save the received email. // // BucketName is a required field BucketName *string `type:"string" required:"true"` // The customer master key that Amazon SES should use to encrypt your emails // before saving them to the Amazon S3 bucket. You can use the default master // key or a custom master key you created in AWS KMS as follows: // // * To use the default master key, provide an ARN in the form of arn:aws:kms:REGION:ACCOUNT-ID-WITHOUT-HYPHENS:alias/aws/ses. // For example, if your AWS account ID is 123456789012 and you want to use // the default master key in the US West (Oregon) region, the ARN of the // default master key would be arn:aws:kms:us-west-2:123456789012:alias/aws/ses. // If you use the default master key, you don't need to perform any extra // steps to give Amazon SES permission to use the key. // // * To use a custom master key you created in AWS KMS, provide the ARN of // the master key and ensure that you add a statement to your key's policy // to give Amazon SES permission to use it. For more information about giving // permissions, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html). // // For more information about key policies, see the AWS KMS Developer Guide // (http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html). If // you do not specify a master key, Amazon SES will not encrypt your emails. // // Your mail is encrypted by Amazon SES using the Amazon S3 encryption client // before the mail is submitted to Amazon S3 for storage. It is not encrypted // using Amazon S3 server-side encryption. This means that you must use the // Amazon S3 encryption client to decrypt the email after retrieving it from // Amazon S3, as the service has no access to use your AWS KMS keys for decryption. // This encryption client is currently available with the AWS Java SDK (http://aws.amazon.com/sdk-for-java/) // and AWS Ruby SDK (http://aws.amazon.com/sdk-for-ruby/) only. For more information // about client-side encryption using AWS KMS master keys, see the Amazon S3 // Developer Guide (http://alpha-docs-aws.amazon.com/AmazonS3/latest/dev/UsingClientSideEncryption.html). KmsKeyArn *string `type:"string"` // The key prefix of the Amazon S3 bucket. The key prefix is similar to a directory // name that enables you to store similar data under the same directory in a // bucket. ObjectKeyPrefix *string `type:"string"` // The ARN of the Amazon SNS topic to notify when the message is saved to the // Amazon S3 bucket. An example of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic. // For more information about Amazon SNS topics, see the Amazon SNS Developer // Guide (http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html). TopicArn *string `type:"string"` } // String returns the string representation func (s S3Action) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s S3Action) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3Action) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3Action"} if s.BucketName == nil { invalidParams.Add(request.NewErrParamRequired("BucketName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // When included in a receipt rule, this action publishes a notification to // Amazon Simple Notification Service (Amazon SNS). This action includes a complete // copy of the email content in the Amazon SNS notifications. Amazon SNS notifications // for all other actions simply provide information about the email. They do // not include the email content itself. // // If you own the Amazon SNS topic, you don't need to do anything to give Amazon // SES permission to publish emails to it. However, if you don't own the Amazon // SNS topic, you need to attach a policy to the topic to give Amazon SES permissions // to access it. For information about giving permissions, see the Amazon SES // Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html). // // You can only publish emails that are 150 KB or less (including the header) // to Amazon SNS. Larger emails will bounce. If you anticipate emails larger // than 150 KB, use the S3 action instead. // // For information about using a receipt rule to publish an Amazon SNS notification, // see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-sns.html). type SNSAction struct { _ struct{} `type:"structure"` // The encoding to use for the email within the Amazon SNS notification. UTF-8 // is easier to use, but may not preserve all special characters when a message // was encoded with a different encoding format. Base64 preserves all special // characters. The default value is UTF-8. Encoding *string `type:"string" enum:"SNSActionEncoding"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify. An example // of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic. // For more information about Amazon SNS topics, see the Amazon SNS Developer // Guide (http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html). // // TopicArn is a required field TopicArn *string `type:"string" required:"true"` } // String returns the string representation func (s SNSAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SNSAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SNSAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SNSAction"} if s.TopicArn == nil { invalidParams.Add(request.NewErrParamRequired("TopicArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a request to send a bounce message to the sender of an email you // received through Amazon SES. type SendBounceInput struct { _ struct{} `type:"structure"` // The address to use in the "From" header of the bounce message. This must // be an identity that you have verified with Amazon SES. // // BounceSender is a required field BounceSender *string `type:"string" required:"true"` // This parameter is used only for sending authorization. It is the ARN of the // identity that is associated with the sending authorization policy that permits // you to use the address in the "From" header of the bounce. For more information // about sending authorization, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html). BounceSenderArn *string `type:"string"` // A list of recipients of the bounced message, including the information required // to create the Delivery Status Notifications (DSNs) for the recipients. You // must specify at least one BouncedRecipientInfo in the list. // // BouncedRecipientInfoList is a required field BouncedRecipientInfoList []*BouncedRecipientInfo `type:"list" required:"true"` // Human-readable text for the bounce message to explain the failure. If not // specified, the text will be auto-generated based on the bounced recipient // information. Explanation *string `type:"string"` // Message-related DSN fields. If not specified, Amazon SES will choose the // values. MessageDsn *MessageDsn `type:"structure"` // The message ID of the message to be bounced. // // OriginalMessageId is a required field OriginalMessageId *string `type:"string" required:"true"` } // String returns the string representation func (s SendBounceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SendBounceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SendBounceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SendBounceInput"} if s.BounceSender == nil { invalidParams.Add(request.NewErrParamRequired("BounceSender")) } if s.BouncedRecipientInfoList == nil { invalidParams.Add(request.NewErrParamRequired("BouncedRecipientInfoList")) } if s.OriginalMessageId == nil { invalidParams.Add(request.NewErrParamRequired("OriginalMessageId")) } if s.BouncedRecipientInfoList != nil { for i, v := range s.BouncedRecipientInfoList { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "BouncedRecipientInfoList", i), err.(request.ErrInvalidParams)) } } } if s.MessageDsn != nil { if err := s.MessageDsn.Validate(); err != nil { invalidParams.AddNested("MessageDsn", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a unique message ID. type SendBounceOutput struct { _ struct{} `type:"structure"` // The message ID of the bounce message. MessageId *string `type:"string"` } // String returns the string representation func (s SendBounceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SendBounceOutput) GoString() string { return s.String() } // Represents sending statistics data. Each SendDataPoint contains statistics // for a 15-minute period of sending activity. type SendDataPoint struct { _ struct{} `type:"structure"` // Number of emails that have bounced. Bounces *int64 `type:"long"` // Number of unwanted emails that were rejected by recipients. Complaints *int64 `type:"long"` // Number of emails that have been enqueued for sending. DeliveryAttempts *int64 `type:"long"` // Number of emails rejected by Amazon SES. Rejects *int64 `type:"long"` // Time of the data point. Timestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` } // String returns the string representation func (s SendDataPoint) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SendDataPoint) GoString() string { return s.String() } // Represents a request to send a single formatted email using Amazon SES. For // more information, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-formatted.html). type SendEmailInput struct { _ struct{} `type:"structure"` // The destination for this email, composed of To:, CC:, and BCC: fields. // // Destination is a required field Destination *Destination `type:"structure" required:"true"` // The message to be sent. // // Message is a required field Message *Message `type:"structure" required:"true"` // The reply-to email address(es) for the message. If the recipient replies // to the message, each reply-to address will receive the reply. ReplyToAddresses []*string `type:"list"` // The email address to which bounces and complaints are to be forwarded when // feedback forwarding is enabled. If the message cannot be delivered to the // recipient, then an error message will be returned from the recipient's ISP; // this message will then be forwarded to the email address specified by the // ReturnPath parameter. The ReturnPath parameter is never overwritten. This // email address must be either individually verified with Amazon SES, or from // a domain that has been verified with Amazon SES. ReturnPath *string `type:"string"` // This parameter is used only for sending authorization. It is the ARN of the // identity that is associated with the sending authorization policy that permits // you to use the email address specified in the ReturnPath parameter. // // For example, if the owner of example.com (which has ARN arn:aws:ses:us-east-1:123456789012:identity/example.com) // attaches a policy to it that authorizes you to use feedback@example.com, // then you would specify the ReturnPathArn to be arn:aws:ses:us-east-1:123456789012:identity/example.com, // and the ReturnPath to be feedback@example.com. // // For more information about sending authorization, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html). ReturnPathArn *string `type:"string"` // The email address that is sending the email. This email address must be either // individually verified with Amazon SES, or from a domain that has been verified // with Amazon SES. For information about verifying identities, see the Amazon // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html). // // If you are sending on behalf of another user and have been permitted to do // so by a sending authorization policy, then you must also specify the SourceArn // parameter. For more information about sending authorization, see the Amazon // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html). // // In all cases, the email address must be 7-bit ASCII. If the text must contain // any other characters, then you must use MIME encoded-word syntax (RFC 2047) // instead of a literal string. MIME encoded-word syntax uses the following // form: =?charset?encoding?encoded-text?=. For more information, see RFC 2047 // (http://tools.ietf.org/html/rfc2047). // // Source is a required field Source *string `type:"string" required:"true"` // This parameter is used only for sending authorization. It is the ARN of the // identity that is associated with the sending authorization policy that permits // you to send for the email address specified in the Source parameter. // // For example, if the owner of example.com (which has ARN arn:aws:ses:us-east-1:123456789012:identity/example.com) // attaches a policy to it that authorizes you to send from user@example.com, // then you would specify the SourceArn to be arn:aws:ses:us-east-1:123456789012:identity/example.com, // and the Source to be user@example.com. // // For more information about sending authorization, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html). SourceArn *string `type:"string"` } // String returns the string representation func (s SendEmailInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SendEmailInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SendEmailInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SendEmailInput"} if s.Destination == nil { invalidParams.Add(request.NewErrParamRequired("Destination")) } if s.Message == nil { invalidParams.Add(request.NewErrParamRequired("Message")) } if s.Source == nil { invalidParams.Add(request.NewErrParamRequired("Source")) } if s.Message != nil { if err := s.Message.Validate(); err != nil { invalidParams.AddNested("Message", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a unique message ID. type SendEmailOutput struct { _ struct{} `type:"structure"` // The unique message identifier returned from the SendEmail action. // // MessageId is a required field MessageId *string `type:"string" required:"true"` } // String returns the string representation func (s SendEmailOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SendEmailOutput) GoString() string { return s.String() } // Represents a request to send a single raw email using Amazon SES. For more // information, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-raw.html). type SendRawEmailInput struct { _ struct{} `type:"structure"` // A list of destinations for the message, consisting of To:, CC:, and BCC: // addresses. Destinations []*string `type:"list"` // This parameter is used only for sending authorization. It is the ARN of the // identity that is associated with the sending authorization policy that permits // you to specify a particular "From" address in the header of the raw email. // // Instead of using this parameter, you can use the X-header X-SES-FROM-ARN // in the raw message of the email. If you use both the FromArn parameter and // the corresponding X-header, Amazon SES uses the value of the FromArn parameter. // // For information about when to use this parameter, see the description of // SendRawEmail in this guide, or see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization-delegate-sender-tasks-email.html). FromArn *string `type:"string"` // The raw text of the message. The client is responsible for ensuring the following: // // * Message must contain a header and a body, separated by a blank line. // // * All required header fields must be present. // // * Each part of a multipart MIME message must be formatted properly. // // * MIME content types must be among those supported by Amazon SES. For // more information, go to the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mime-types.html). // // * Must be base64-encoded. // // RawMessage is a required field RawMessage *RawMessage `type:"structure" required:"true"` // This parameter is used only for sending authorization. It is the ARN of the // identity that is associated with the sending authorization policy that permits // you to use the email address specified in the ReturnPath parameter. // // For example, if the owner of example.com (which has ARN arn:aws:ses:us-east-1:123456789012:identity/example.com) // attaches a policy to it that authorizes you to use feedback@example.com, // then you would specify the ReturnPathArn to be arn:aws:ses:us-east-1:123456789012:identity/example.com, // and the ReturnPath to be feedback@example.com. // // Instead of using this parameter, you can use the X-header X-SES-RETURN-PATH-ARN // in the raw message of the email. If you use both the ReturnPathArn parameter // and the corresponding X-header, Amazon SES uses the value of the ReturnPathArn // parameter. // // For information about when to use this parameter, see the description of // SendRawEmail in this guide, or see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization-delegate-sender-tasks-email.html). ReturnPathArn *string `type:"string"` // The identity's email address. If you do not provide a value for this parameter, // you must specify a "From" address in the raw text of the message. (You can // also specify both.) // // By default, the string must be 7-bit ASCII. If the text must contain any // other characters, then you must use MIME encoded-word syntax (RFC 2047) instead // of a literal string. MIME encoded-word syntax uses the following form: =?charset?encoding?encoded-text?=. // For more information, see RFC 2047 (http://tools.ietf.org/html/rfc2047). // // If you specify the Source parameter and have feedback forwarding enabled, // then bounces and complaints will be sent to this email address. This takes // precedence over any Return-Path header that you might include in the raw // text of the message. Source *string `type:"string"` // This parameter is used only for sending authorization. It is the ARN of the // identity that is associated with the sending authorization policy that permits // you to send for the email address specified in the Source parameter. // // For example, if the owner of example.com (which has ARN arn:aws:ses:us-east-1:123456789012:identity/example.com) // attaches a policy to it that authorizes you to send from user@example.com, // then you would specify the SourceArn to be arn:aws:ses:us-east-1:123456789012:identity/example.com, // and the Source to be user@example.com. // // Instead of using this parameter, you can use the X-header X-SES-SOURCE-ARN // in the raw message of the email. If you use both the SourceArn parameter // and the corresponding X-header, Amazon SES uses the value of the SourceArn // parameter. // // For information about when to use this parameter, see the description of // SendRawEmail in this guide, or see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization-delegate-sender-tasks-email.html). SourceArn *string `type:"string"` } // String returns the string representation func (s SendRawEmailInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SendRawEmailInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SendRawEmailInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SendRawEmailInput"} if s.RawMessage == nil { invalidParams.Add(request.NewErrParamRequired("RawMessage")) } if s.RawMessage != nil { if err := s.RawMessage.Validate(); err != nil { invalidParams.AddNested("RawMessage", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a unique message ID. type SendRawEmailOutput struct { _ struct{} `type:"structure"` // The unique message identifier returned from the SendRawEmail action. // // MessageId is a required field MessageId *string `type:"string" required:"true"` } // String returns the string representation func (s SendRawEmailOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SendRawEmailOutput) GoString() string { return s.String() } // Represents a request to set a receipt rule set as the active receipt rule // set. You use receipt rule sets to receive email with Amazon SES. For more // information, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html). type SetActiveReceiptRuleSetInput struct { _ struct{} `type:"structure"` // The name of the receipt rule set to make active. Setting this value to null // disables all email receiving. RuleSetName *string `type:"string"` } // String returns the string representation func (s SetActiveReceiptRuleSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetActiveReceiptRuleSetInput) GoString() string { return s.String() } // An empty element returned on a successful request. type SetActiveReceiptRuleSetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetActiveReceiptRuleSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetActiveReceiptRuleSetOutput) GoString() string { return s.String() } // Represents a request to enable or disable Amazon SES Easy DKIM signing for // an identity. For more information about setting up Easy DKIM, see the Amazon // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim.html). type SetIdentityDkimEnabledInput struct { _ struct{} `type:"structure"` // Sets whether DKIM signing is enabled for an identity. Set to true to enable // DKIM signing for this identity; false to disable it. // // DkimEnabled is a required field DkimEnabled *bool `type:"boolean" required:"true"` // The identity for which DKIM signing should be enabled or disabled. // // Identity is a required field Identity *string `type:"string" required:"true"` } // String returns the string representation func (s SetIdentityDkimEnabledInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetIdentityDkimEnabledInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetIdentityDkimEnabledInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetIdentityDkimEnabledInput"} if s.DkimEnabled == nil { invalidParams.Add(request.NewErrParamRequired("DkimEnabled")) } if s.Identity == nil { invalidParams.Add(request.NewErrParamRequired("Identity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type SetIdentityDkimEnabledOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetIdentityDkimEnabledOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetIdentityDkimEnabledOutput) GoString() string { return s.String() } // Represents a request to enable or disable whether Amazon SES forwards you // bounce and complaint notifications through email. For information about email // feedback forwarding, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications-via-email.html). type SetIdentityFeedbackForwardingEnabledInput struct { _ struct{} `type:"structure"` // Sets whether Amazon SES will forward bounce and complaint notifications as // email. true specifies that Amazon SES will forward bounce and complaint notifications // as email, in addition to any Amazon SNS topic publishing otherwise specified. // false specifies that Amazon SES will publish bounce and complaint notifications // only through Amazon SNS. This value can only be set to false when Amazon // SNS topics are set for both Bounce and Complaint notification types. // // ForwardingEnabled is a required field ForwardingEnabled *bool `type:"boolean" required:"true"` // The identity for which to set bounce and complaint notification forwarding. // Examples: user@example.com, example.com. // // Identity is a required field Identity *string `type:"string" required:"true"` } // String returns the string representation func (s SetIdentityFeedbackForwardingEnabledInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetIdentityFeedbackForwardingEnabledInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetIdentityFeedbackForwardingEnabledInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetIdentityFeedbackForwardingEnabledInput"} if s.ForwardingEnabled == nil { invalidParams.Add(request.NewErrParamRequired("ForwardingEnabled")) } if s.Identity == nil { invalidParams.Add(request.NewErrParamRequired("Identity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type SetIdentityFeedbackForwardingEnabledOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetIdentityFeedbackForwardingEnabledOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetIdentityFeedbackForwardingEnabledOutput) GoString() string { return s.String() } // Represents a request to set whether Amazon SES includes the original email // headers in the Amazon SNS notifications of a specified type. For information // about notifications, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications-via-sns.html). type SetIdentityHeadersInNotificationsEnabledInput struct { _ struct{} `type:"structure"` // Sets whether Amazon SES includes the original email headers in Amazon SNS // notifications of the specified notification type. A value of true specifies // that Amazon SES will include headers in notifications, and a value of false // specifies that Amazon SES will not include headers in notifications. // // This value can only be set when NotificationType is already set to use a // particular Amazon SNS topic. // // Enabled is a required field Enabled *bool `type:"boolean" required:"true"` // The identity for which to enable or disable headers in notifications. Examples: // user@example.com, example.com. // // Identity is a required field Identity *string `type:"string" required:"true"` // The notification type for which to enable or disable headers in notifications. // // NotificationType is a required field NotificationType *string `type:"string" required:"true" enum:"NotificationType"` } // String returns the string representation func (s SetIdentityHeadersInNotificationsEnabledInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetIdentityHeadersInNotificationsEnabledInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetIdentityHeadersInNotificationsEnabledInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetIdentityHeadersInNotificationsEnabledInput"} if s.Enabled == nil { invalidParams.Add(request.NewErrParamRequired("Enabled")) } if s.Identity == nil { invalidParams.Add(request.NewErrParamRequired("Identity")) } if s.NotificationType == nil { invalidParams.Add(request.NewErrParamRequired("NotificationType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type SetIdentityHeadersInNotificationsEnabledOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetIdentityHeadersInNotificationsEnabledOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetIdentityHeadersInNotificationsEnabledOutput) GoString() string { return s.String() } // Represents a request to enable or disable the Amazon SES custom MAIL FROM // domain setup for a verified identity. For information about using a custom // MAIL FROM domain, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mail-from.html). type SetIdentityMailFromDomainInput struct { _ struct{} `type:"structure"` // The action that you want Amazon SES to take if it cannot successfully read // the required MX record when you send an email. If you choose UseDefaultValue, // Amazon SES will use amazonses.com (or a subdomain of that) as the MAIL FROM // domain. If you choose RejectMessage, Amazon SES will return a MailFromDomainNotVerified // error and not send the email. // // The action specified in BehaviorOnMXFailure is taken when the custom MAIL // FROM domain setup is in the Pending, Failed, and TemporaryFailure states. BehaviorOnMXFailure *string `type:"string" enum:"BehaviorOnMXFailure"` // The verified identity for which you want to enable or disable the specified // custom MAIL FROM domain. // // Identity is a required field Identity *string `type:"string" required:"true"` // The custom MAIL FROM domain that you want the verified identity to use. The // MAIL FROM domain must 1) be a subdomain of the verified identity, 2) not // be used in a "From" address if the MAIL FROM domain is the destination of // email feedback forwarding (for more information, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mail-from.html)), // and 3) not be used to receive emails. A value of null disables the custom // MAIL FROM setting for the identity. MailFromDomain *string `type:"string"` } // String returns the string representation func (s SetIdentityMailFromDomainInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetIdentityMailFromDomainInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetIdentityMailFromDomainInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetIdentityMailFromDomainInput"} if s.Identity == nil { invalidParams.Add(request.NewErrParamRequired("Identity")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type SetIdentityMailFromDomainOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetIdentityMailFromDomainOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetIdentityMailFromDomainOutput) GoString() string { return s.String() } // Represents a request to specify the Amazon SNS topic to which Amazon SES // will publish bounce, complaint, or delivery notifications for emails sent // with that identity as the Source. For information about Amazon SES notifications, // see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications-via-sns.html). type SetIdentityNotificationTopicInput struct { _ struct{} `type:"structure"` // The identity for which the Amazon SNS topic will be set. You can specify // an identity by using its name or by using its Amazon Resource Name (ARN). // Examples: user@example.com, example.com, arn:aws:ses:us-east-1:123456789012:identity/example.com. // // Identity is a required field Identity *string `type:"string" required:"true"` // The type of notifications that will be published to the specified Amazon // SNS topic. // // NotificationType is a required field NotificationType *string `type:"string" required:"true" enum:"NotificationType"` // The Amazon Resource Name (ARN) of the Amazon SNS topic. If the parameter // is omitted from the request or a null value is passed, SnsTopic is cleared // and publishing is disabled. SnsTopic *string `type:"string"` } // String returns the string representation func (s SetIdentityNotificationTopicInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetIdentityNotificationTopicInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetIdentityNotificationTopicInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetIdentityNotificationTopicInput"} if s.Identity == nil { invalidParams.Add(request.NewErrParamRequired("Identity")) } if s.NotificationType == nil { invalidParams.Add(request.NewErrParamRequired("NotificationType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type SetIdentityNotificationTopicOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetIdentityNotificationTopicOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetIdentityNotificationTopicOutput) GoString() string { return s.String() } // Represents a request to set the position of a receipt rule in a receipt rule // set. You use receipt rule sets to receive email with Amazon SES. For more // information, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html). type SetReceiptRulePositionInput struct { _ struct{} `type:"structure"` // The name of the receipt rule after which to place the specified receipt rule. After *string `type:"string"` // The name of the receipt rule to reposition. // // RuleName is a required field RuleName *string `type:"string" required:"true"` // The name of the receipt rule set that contains the receipt rule to reposition. // // RuleSetName is a required field RuleSetName *string `type:"string" required:"true"` } // String returns the string representation func (s SetReceiptRulePositionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetReceiptRulePositionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetReceiptRulePositionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetReceiptRulePositionInput"} if s.RuleName == nil { invalidParams.Add(request.NewErrParamRequired("RuleName")) } if s.RuleSetName == nil { invalidParams.Add(request.NewErrParamRequired("RuleSetName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type SetReceiptRulePositionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetReceiptRulePositionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetReceiptRulePositionOutput) GoString() string { return s.String() } // When included in a receipt rule, this action terminates the evaluation of // the receipt rule set and, optionally, publishes a notification to Amazon // Simple Notification Service (Amazon SNS). // // For information about setting a stop action in a receipt rule, see the Amazon // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-stop.html). type StopAction struct { _ struct{} `type:"structure"` // The scope to which the Stop action applies. That is, what is being stopped. // // Scope is a required field Scope *string `type:"string" required:"true" enum:"StopScope"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the // stop action is taken. An example of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic. // For more information about Amazon SNS topics, see the Amazon SNS Developer // Guide (http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html). TopicArn *string `type:"string"` } // String returns the string representation func (s StopAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StopAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StopAction"} if s.Scope == nil { invalidParams.Add(request.NewErrParamRequired("Scope")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a request to update a receipt rule. You use receipt rules to receive // email with Amazon SES. For more information, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html). type UpdateReceiptRuleInput struct { _ struct{} `type:"structure"` // A data structure that contains the updated receipt rule information. // // Rule is a required field Rule *ReceiptRule `type:"structure" required:"true"` // The name of the receipt rule set to which the receipt rule belongs. // // RuleSetName is a required field RuleSetName *string `type:"string" required:"true"` } // String returns the string representation func (s UpdateReceiptRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateReceiptRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateReceiptRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateReceiptRuleInput"} if s.Rule == nil { invalidParams.Add(request.NewErrParamRequired("Rule")) } if s.RuleSetName == nil { invalidParams.Add(request.NewErrParamRequired("RuleSetName")) } if s.Rule != nil { if err := s.Rule.Validate(); err != nil { invalidParams.AddNested("Rule", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type UpdateReceiptRuleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateReceiptRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateReceiptRuleOutput) GoString() string { return s.String() } // Represents a request to generate the CNAME records needed to set up Easy // DKIM with Amazon SES. For more information about setting up Easy DKIM, see // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim.html). type VerifyDomainDkimInput struct { _ struct{} `type:"structure"` // The name of the domain to be verified for Easy DKIM signing. // // Domain is a required field Domain *string `type:"string" required:"true"` } // String returns the string representation func (s VerifyDomainDkimInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VerifyDomainDkimInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *VerifyDomainDkimInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "VerifyDomainDkimInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returns CNAME records that you must publish to the DNS server of your domain // to set up Easy DKIM with Amazon SES. type VerifyDomainDkimOutput struct { _ struct{} `type:"structure"` // A set of character strings that represent the domain's identity. If the identity // is an email address, the tokens represent the domain of that address. // // Using these tokens, you will need to create DNS CNAME records that point // to DKIM public keys hosted by Amazon SES. Amazon Web Services will eventually // detect that you have updated your DNS records; this detection process may // take up to 72 hours. Upon successful detection, Amazon SES will be able to // DKIM-sign emails originating from that domain. // // For more information about creating DNS records using DKIM tokens, go to // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim-dns-records.html). // // DkimTokens is a required field DkimTokens []*string `type:"list" required:"true"` } // String returns the string representation func (s VerifyDomainDkimOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VerifyDomainDkimOutput) GoString() string { return s.String() } // Represents a request to begin Amazon SES domain verification and to generate // the TXT records that you must publish to the DNS server of your domain to // complete the verification. For information about domain verification, see // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-domains.html). type VerifyDomainIdentityInput struct { _ struct{} `type:"structure"` // The domain to be verified. // // Domain is a required field Domain *string `type:"string" required:"true"` } // String returns the string representation func (s VerifyDomainIdentityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VerifyDomainIdentityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *VerifyDomainIdentityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "VerifyDomainIdentityInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returns a TXT record that you must publish to the DNS server of your domain // to complete domain verification with Amazon SES. type VerifyDomainIdentityOutput struct { _ struct{} `type:"structure"` // A TXT record that must be placed in the DNS settings for the domain, in order // to complete domain verification. // // VerificationToken is a required field VerificationToken *string `type:"string" required:"true"` } // String returns the string representation func (s VerifyDomainIdentityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VerifyDomainIdentityOutput) GoString() string { return s.String() } // Represents a request to begin email address verification with Amazon SES. // For information about email address verification, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-email-addresses.html). type VerifyEmailAddressInput struct { _ struct{} `type:"structure"` // The email address to be verified. // // EmailAddress is a required field EmailAddress *string `type:"string" required:"true"` } // String returns the string representation func (s VerifyEmailAddressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VerifyEmailAddressInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *VerifyEmailAddressInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "VerifyEmailAddressInput"} if s.EmailAddress == nil { invalidParams.Add(request.NewErrParamRequired("EmailAddress")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type VerifyEmailAddressOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s VerifyEmailAddressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VerifyEmailAddressOutput) GoString() string { return s.String() } // Represents a request to begin email address verification with Amazon SES. // For information about email address verification, see the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-email-addresses.html). type VerifyEmailIdentityInput struct { _ struct{} `type:"structure"` // The email address to be verified. // // EmailAddress is a required field EmailAddress *string `type:"string" required:"true"` } // String returns the string representation func (s VerifyEmailIdentityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VerifyEmailIdentityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *VerifyEmailIdentityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "VerifyEmailIdentityInput"} if s.EmailAddress == nil { invalidParams.Add(request.NewErrParamRequired("EmailAddress")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An empty element returned on a successful request. type VerifyEmailIdentityOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s VerifyEmailIdentityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VerifyEmailIdentityOutput) GoString() string { return s.String() } // When included in a receipt rule, this action calls Amazon WorkMail and, optionally, // publishes a notification to Amazon Simple Notification Service (Amazon SNS). // You will typically not use this action directly because Amazon WorkMail adds // the rule automatically during its setup procedure. // // For information using a receipt rule to call Amazon WorkMail, see the Amazon // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-workmail.html). type WorkmailAction struct { _ struct{} `type:"structure"` // The ARN of the Amazon WorkMail organization. An example of an Amazon WorkMail // organization ARN is arn:aws:workmail:us-west-2:123456789012:organization/m-68755160c4cb4e29a2b2f8fb58f359d7. // For information about Amazon WorkMail organizations, see the Amazon WorkMail // Administrator Guide (http://docs.aws.amazon.com/workmail/latest/adminguide/organizations_overview.html). // // OrganizationArn is a required field OrganizationArn *string `type:"string" required:"true"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the // WorkMail action is called. An example of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic. // For more information about Amazon SNS topics, see the Amazon SNS Developer // Guide (http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html). TopicArn *string `type:"string"` } // String returns the string representation func (s WorkmailAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkmailAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *WorkmailAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "WorkmailAction"} if s.OrganizationArn == nil { invalidParams.Add(request.NewErrParamRequired("OrganizationArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } const ( // BehaviorOnMXFailureUseDefaultValue is a BehaviorOnMXFailure enum value BehaviorOnMXFailureUseDefaultValue = "UseDefaultValue" // BehaviorOnMXFailureRejectMessage is a BehaviorOnMXFailure enum value BehaviorOnMXFailureRejectMessage = "RejectMessage" ) const ( // BounceTypeDoesNotExist is a BounceType enum value BounceTypeDoesNotExist = "DoesNotExist" // BounceTypeMessageTooLarge is a BounceType enum value BounceTypeMessageTooLarge = "MessageTooLarge" // BounceTypeExceededQuota is a BounceType enum value BounceTypeExceededQuota = "ExceededQuota" // BounceTypeContentRejected is a BounceType enum value BounceTypeContentRejected = "ContentRejected" // BounceTypeUndefined is a BounceType enum value BounceTypeUndefined = "Undefined" // BounceTypeTemporaryFailure is a BounceType enum value BounceTypeTemporaryFailure = "TemporaryFailure" ) const ( // CustomMailFromStatusPending is a CustomMailFromStatus enum value CustomMailFromStatusPending = "Pending" // CustomMailFromStatusSuccess is a CustomMailFromStatus enum value CustomMailFromStatusSuccess = "Success" // CustomMailFromStatusFailed is a CustomMailFromStatus enum value CustomMailFromStatusFailed = "Failed" // CustomMailFromStatusTemporaryFailure is a CustomMailFromStatus enum value CustomMailFromStatusTemporaryFailure = "TemporaryFailure" ) const ( // DsnActionFailed is a DsnAction enum value DsnActionFailed = "failed" // DsnActionDelayed is a DsnAction enum value DsnActionDelayed = "delayed" // DsnActionDelivered is a DsnAction enum value DsnActionDelivered = "delivered" // DsnActionRelayed is a DsnAction enum value DsnActionRelayed = "relayed" // DsnActionExpanded is a DsnAction enum value DsnActionExpanded = "expanded" ) const ( // IdentityTypeEmailAddress is a IdentityType enum value IdentityTypeEmailAddress = "EmailAddress" // IdentityTypeDomain is a IdentityType enum value IdentityTypeDomain = "Domain" ) const ( // InvocationTypeEvent is a InvocationType enum value InvocationTypeEvent = "Event" // InvocationTypeRequestResponse is a InvocationType enum value InvocationTypeRequestResponse = "RequestResponse" ) const ( // NotificationTypeBounce is a NotificationType enum value NotificationTypeBounce = "Bounce" // NotificationTypeComplaint is a NotificationType enum value NotificationTypeComplaint = "Complaint" // NotificationTypeDelivery is a NotificationType enum value NotificationTypeDelivery = "Delivery" ) const ( // ReceiptFilterPolicyBlock is a ReceiptFilterPolicy enum value ReceiptFilterPolicyBlock = "Block" // ReceiptFilterPolicyAllow is a ReceiptFilterPolicy enum value ReceiptFilterPolicyAllow = "Allow" ) const ( // SNSActionEncodingUtf8 is a SNSActionEncoding enum value SNSActionEncodingUtf8 = "UTF-8" // SNSActionEncodingBase64 is a SNSActionEncoding enum value SNSActionEncodingBase64 = "Base64" ) const ( // StopScopeRuleSet is a StopScope enum value StopScopeRuleSet = "RuleSet" ) const ( // TlsPolicyRequire is a TlsPolicy enum value TlsPolicyRequire = "Require" // TlsPolicyOptional is a TlsPolicy enum value TlsPolicyOptional = "Optional" ) const ( // VerificationStatusPending is a VerificationStatus enum value VerificationStatusPending = "Pending" // VerificationStatusSuccess is a VerificationStatus enum value VerificationStatusSuccess = "Success" // VerificationStatusFailed is a VerificationStatus enum value VerificationStatusFailed = "Failed" // VerificationStatusTemporaryFailure is a VerificationStatus enum value VerificationStatusTemporaryFailure = "TemporaryFailure" // VerificationStatusNotStarted is a VerificationStatus enum value VerificationStatusNotStarted = "NotStarted" ) aws-sdk-go-1.4.22/service/ses/examples_test.go000066400000000000000000000737441300374646400212400ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package ses_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/ses" ) var _ time.Duration var _ bytes.Buffer func ExampleSES_CloneReceiptRuleSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.CloneReceiptRuleSetInput{ OriginalRuleSetName: aws.String("ReceiptRuleSetName"), // Required RuleSetName: aws.String("ReceiptRuleSetName"), // Required } resp, err := svc.CloneReceiptRuleSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_CreateReceiptFilter() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.CreateReceiptFilterInput{ Filter: &ses.ReceiptFilter{ // Required IpFilter: &ses.ReceiptIpFilter{ // Required Cidr: aws.String("Cidr"), // Required Policy: aws.String("ReceiptFilterPolicy"), // Required }, Name: aws.String("ReceiptFilterName"), // Required }, } resp, err := svc.CreateReceiptFilter(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_CreateReceiptRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.CreateReceiptRuleInput{ Rule: &ses.ReceiptRule{ // Required Name: aws.String("ReceiptRuleName"), // Required Actions: []*ses.ReceiptAction{ { // Required AddHeaderAction: &ses.AddHeaderAction{ HeaderName: aws.String("HeaderName"), // Required HeaderValue: aws.String("HeaderValue"), // Required }, BounceAction: &ses.BounceAction{ Message: aws.String("BounceMessage"), // Required Sender: aws.String("Address"), // Required SmtpReplyCode: aws.String("BounceSmtpReplyCode"), // Required StatusCode: aws.String("BounceStatusCode"), TopicArn: aws.String("AmazonResourceName"), }, LambdaAction: &ses.LambdaAction{ FunctionArn: aws.String("AmazonResourceName"), // Required InvocationType: aws.String("InvocationType"), TopicArn: aws.String("AmazonResourceName"), }, S3Action: &ses.S3Action{ BucketName: aws.String("S3BucketName"), // Required KmsKeyArn: aws.String("AmazonResourceName"), ObjectKeyPrefix: aws.String("S3KeyPrefix"), TopicArn: aws.String("AmazonResourceName"), }, SNSAction: &ses.SNSAction{ TopicArn: aws.String("AmazonResourceName"), // Required Encoding: aws.String("SNSActionEncoding"), }, StopAction: &ses.StopAction{ Scope: aws.String("StopScope"), // Required TopicArn: aws.String("AmazonResourceName"), }, WorkmailAction: &ses.WorkmailAction{ OrganizationArn: aws.String("AmazonResourceName"), // Required TopicArn: aws.String("AmazonResourceName"), }, }, // More values... }, Enabled: aws.Bool(true), Recipients: []*string{ aws.String("Recipient"), // Required // More values... }, ScanEnabled: aws.Bool(true), TlsPolicy: aws.String("TlsPolicy"), }, RuleSetName: aws.String("ReceiptRuleSetName"), // Required After: aws.String("ReceiptRuleName"), } resp, err := svc.CreateReceiptRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_CreateReceiptRuleSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.CreateReceiptRuleSetInput{ RuleSetName: aws.String("ReceiptRuleSetName"), // Required } resp, err := svc.CreateReceiptRuleSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_DeleteIdentity() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.DeleteIdentityInput{ Identity: aws.String("Identity"), // Required } resp, err := svc.DeleteIdentity(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_DeleteIdentityPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.DeleteIdentityPolicyInput{ Identity: aws.String("Identity"), // Required PolicyName: aws.String("PolicyName"), // Required } resp, err := svc.DeleteIdentityPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_DeleteReceiptFilter() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.DeleteReceiptFilterInput{ FilterName: aws.String("ReceiptFilterName"), // Required } resp, err := svc.DeleteReceiptFilter(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_DeleteReceiptRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.DeleteReceiptRuleInput{ RuleName: aws.String("ReceiptRuleName"), // Required RuleSetName: aws.String("ReceiptRuleSetName"), // Required } resp, err := svc.DeleteReceiptRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_DeleteReceiptRuleSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.DeleteReceiptRuleSetInput{ RuleSetName: aws.String("ReceiptRuleSetName"), // Required } resp, err := svc.DeleteReceiptRuleSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_DeleteVerifiedEmailAddress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.DeleteVerifiedEmailAddressInput{ EmailAddress: aws.String("Address"), // Required } resp, err := svc.DeleteVerifiedEmailAddress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_DescribeActiveReceiptRuleSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) var params *ses.DescribeActiveReceiptRuleSetInput resp, err := svc.DescribeActiveReceiptRuleSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_DescribeReceiptRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.DescribeReceiptRuleInput{ RuleName: aws.String("ReceiptRuleName"), // Required RuleSetName: aws.String("ReceiptRuleSetName"), // Required } resp, err := svc.DescribeReceiptRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_DescribeReceiptRuleSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.DescribeReceiptRuleSetInput{ RuleSetName: aws.String("ReceiptRuleSetName"), // Required } resp, err := svc.DescribeReceiptRuleSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_GetIdentityDkimAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.GetIdentityDkimAttributesInput{ Identities: []*string{ // Required aws.String("Identity"), // Required // More values... }, } resp, err := svc.GetIdentityDkimAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_GetIdentityMailFromDomainAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.GetIdentityMailFromDomainAttributesInput{ Identities: []*string{ // Required aws.String("Identity"), // Required // More values... }, } resp, err := svc.GetIdentityMailFromDomainAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_GetIdentityNotificationAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.GetIdentityNotificationAttributesInput{ Identities: []*string{ // Required aws.String("Identity"), // Required // More values... }, } resp, err := svc.GetIdentityNotificationAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_GetIdentityPolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.GetIdentityPoliciesInput{ Identity: aws.String("Identity"), // Required PolicyNames: []*string{ // Required aws.String("PolicyName"), // Required // More values... }, } resp, err := svc.GetIdentityPolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_GetIdentityVerificationAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.GetIdentityVerificationAttributesInput{ Identities: []*string{ // Required aws.String("Identity"), // Required // More values... }, } resp, err := svc.GetIdentityVerificationAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_GetSendQuota() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) var params *ses.GetSendQuotaInput resp, err := svc.GetSendQuota(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_GetSendStatistics() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) var params *ses.GetSendStatisticsInput resp, err := svc.GetSendStatistics(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_ListIdentities() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.ListIdentitiesInput{ IdentityType: aws.String("IdentityType"), MaxItems: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.ListIdentities(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_ListIdentityPolicies() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.ListIdentityPoliciesInput{ Identity: aws.String("Identity"), // Required } resp, err := svc.ListIdentityPolicies(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_ListReceiptFilters() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) var params *ses.ListReceiptFiltersInput resp, err := svc.ListReceiptFilters(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_ListReceiptRuleSets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.ListReceiptRuleSetsInput{ NextToken: aws.String("NextToken"), } resp, err := svc.ListReceiptRuleSets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_ListVerifiedEmailAddresses() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) var params *ses.ListVerifiedEmailAddressesInput resp, err := svc.ListVerifiedEmailAddresses(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_PutIdentityPolicy() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.PutIdentityPolicyInput{ Identity: aws.String("Identity"), // Required Policy: aws.String("Policy"), // Required PolicyName: aws.String("PolicyName"), // Required } resp, err := svc.PutIdentityPolicy(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_ReorderReceiptRuleSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.ReorderReceiptRuleSetInput{ RuleNames: []*string{ // Required aws.String("ReceiptRuleName"), // Required // More values... }, RuleSetName: aws.String("ReceiptRuleSetName"), // Required } resp, err := svc.ReorderReceiptRuleSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_SendBounce() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.SendBounceInput{ BounceSender: aws.String("Address"), // Required BouncedRecipientInfoList: []*ses.BouncedRecipientInfo{ // Required { // Required Recipient: aws.String("Address"), // Required BounceType: aws.String("BounceType"), RecipientArn: aws.String("AmazonResourceName"), RecipientDsnFields: &ses.RecipientDsnFields{ Action: aws.String("DsnAction"), // Required Status: aws.String("DsnStatus"), // Required DiagnosticCode: aws.String("DiagnosticCode"), ExtensionFields: []*ses.ExtensionField{ { // Required Name: aws.String("ExtensionFieldName"), // Required Value: aws.String("ExtensionFieldValue"), // Required }, // More values... }, FinalRecipient: aws.String("Address"), LastAttemptDate: aws.Time(time.Now()), RemoteMta: aws.String("RemoteMta"), }, }, // More values... }, OriginalMessageId: aws.String("MessageId"), // Required BounceSenderArn: aws.String("AmazonResourceName"), Explanation: aws.String("Explanation"), MessageDsn: &ses.MessageDsn{ ReportingMta: aws.String("ReportingMta"), // Required ArrivalDate: aws.Time(time.Now()), ExtensionFields: []*ses.ExtensionField{ { // Required Name: aws.String("ExtensionFieldName"), // Required Value: aws.String("ExtensionFieldValue"), // Required }, // More values... }, }, } resp, err := svc.SendBounce(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_SendEmail() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.SendEmailInput{ Destination: &ses.Destination{ // Required BccAddresses: []*string{ aws.String("Address"), // Required // More values... }, CcAddresses: []*string{ aws.String("Address"), // Required // More values... }, ToAddresses: []*string{ aws.String("Address"), // Required // More values... }, }, Message: &ses.Message{ // Required Body: &ses.Body{ // Required Html: &ses.Content{ Data: aws.String("MessageData"), // Required Charset: aws.String("Charset"), }, Text: &ses.Content{ Data: aws.String("MessageData"), // Required Charset: aws.String("Charset"), }, }, Subject: &ses.Content{ // Required Data: aws.String("MessageData"), // Required Charset: aws.String("Charset"), }, }, Source: aws.String("Address"), // Required ReplyToAddresses: []*string{ aws.String("Address"), // Required // More values... }, ReturnPath: aws.String("Address"), ReturnPathArn: aws.String("AmazonResourceName"), SourceArn: aws.String("AmazonResourceName"), } resp, err := svc.SendEmail(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_SendRawEmail() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.SendRawEmailInput{ RawMessage: &ses.RawMessage{ // Required Data: []byte("PAYLOAD"), // Required }, Destinations: []*string{ aws.String("Address"), // Required // More values... }, FromArn: aws.String("AmazonResourceName"), ReturnPathArn: aws.String("AmazonResourceName"), Source: aws.String("Address"), SourceArn: aws.String("AmazonResourceName"), } resp, err := svc.SendRawEmail(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_SetActiveReceiptRuleSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.SetActiveReceiptRuleSetInput{ RuleSetName: aws.String("ReceiptRuleSetName"), } resp, err := svc.SetActiveReceiptRuleSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_SetIdentityDkimEnabled() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.SetIdentityDkimEnabledInput{ DkimEnabled: aws.Bool(true), // Required Identity: aws.String("Identity"), // Required } resp, err := svc.SetIdentityDkimEnabled(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_SetIdentityFeedbackForwardingEnabled() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.SetIdentityFeedbackForwardingEnabledInput{ ForwardingEnabled: aws.Bool(true), // Required Identity: aws.String("Identity"), // Required } resp, err := svc.SetIdentityFeedbackForwardingEnabled(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_SetIdentityHeadersInNotificationsEnabled() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.SetIdentityHeadersInNotificationsEnabledInput{ Enabled: aws.Bool(true), // Required Identity: aws.String("Identity"), // Required NotificationType: aws.String("NotificationType"), // Required } resp, err := svc.SetIdentityHeadersInNotificationsEnabled(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_SetIdentityMailFromDomain() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.SetIdentityMailFromDomainInput{ Identity: aws.String("Identity"), // Required BehaviorOnMXFailure: aws.String("BehaviorOnMXFailure"), MailFromDomain: aws.String("MailFromDomainName"), } resp, err := svc.SetIdentityMailFromDomain(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_SetIdentityNotificationTopic() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.SetIdentityNotificationTopicInput{ Identity: aws.String("Identity"), // Required NotificationType: aws.String("NotificationType"), // Required SnsTopic: aws.String("NotificationTopic"), } resp, err := svc.SetIdentityNotificationTopic(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_SetReceiptRulePosition() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.SetReceiptRulePositionInput{ RuleName: aws.String("ReceiptRuleName"), // Required RuleSetName: aws.String("ReceiptRuleSetName"), // Required After: aws.String("ReceiptRuleName"), } resp, err := svc.SetReceiptRulePosition(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_UpdateReceiptRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.UpdateReceiptRuleInput{ Rule: &ses.ReceiptRule{ // Required Name: aws.String("ReceiptRuleName"), // Required Actions: []*ses.ReceiptAction{ { // Required AddHeaderAction: &ses.AddHeaderAction{ HeaderName: aws.String("HeaderName"), // Required HeaderValue: aws.String("HeaderValue"), // Required }, BounceAction: &ses.BounceAction{ Message: aws.String("BounceMessage"), // Required Sender: aws.String("Address"), // Required SmtpReplyCode: aws.String("BounceSmtpReplyCode"), // Required StatusCode: aws.String("BounceStatusCode"), TopicArn: aws.String("AmazonResourceName"), }, LambdaAction: &ses.LambdaAction{ FunctionArn: aws.String("AmazonResourceName"), // Required InvocationType: aws.String("InvocationType"), TopicArn: aws.String("AmazonResourceName"), }, S3Action: &ses.S3Action{ BucketName: aws.String("S3BucketName"), // Required KmsKeyArn: aws.String("AmazonResourceName"), ObjectKeyPrefix: aws.String("S3KeyPrefix"), TopicArn: aws.String("AmazonResourceName"), }, SNSAction: &ses.SNSAction{ TopicArn: aws.String("AmazonResourceName"), // Required Encoding: aws.String("SNSActionEncoding"), }, StopAction: &ses.StopAction{ Scope: aws.String("StopScope"), // Required TopicArn: aws.String("AmazonResourceName"), }, WorkmailAction: &ses.WorkmailAction{ OrganizationArn: aws.String("AmazonResourceName"), // Required TopicArn: aws.String("AmazonResourceName"), }, }, // More values... }, Enabled: aws.Bool(true), Recipients: []*string{ aws.String("Recipient"), // Required // More values... }, ScanEnabled: aws.Bool(true), TlsPolicy: aws.String("TlsPolicy"), }, RuleSetName: aws.String("ReceiptRuleSetName"), // Required } resp, err := svc.UpdateReceiptRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_VerifyDomainDkim() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.VerifyDomainDkimInput{ Domain: aws.String("Domain"), // Required } resp, err := svc.VerifyDomainDkim(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_VerifyDomainIdentity() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.VerifyDomainIdentityInput{ Domain: aws.String("Domain"), // Required } resp, err := svc.VerifyDomainIdentity(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_VerifyEmailAddress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.VerifyEmailAddressInput{ EmailAddress: aws.String("Address"), // Required } resp, err := svc.VerifyEmailAddress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSES_VerifyEmailIdentity() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ses.New(sess) params := &ses.VerifyEmailIdentityInput{ EmailAddress: aws.String("Address"), // Required } resp, err := svc.VerifyEmailIdentity(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/ses/service.go000066400000000000000000000057671300374646400200230ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package ses import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/query" ) // This is the API Reference for Amazon Simple Email Service (Amazon SES). This // documentation is intended to be used in conjunction with the Amazon SES Developer // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/Welcome.html). // // For a list of Amazon SES endpoints to use in service requests, see Regions // and Amazon SES (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/regions.html) // in the Amazon SES Developer Guide. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type SES struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "email" // New creates a new instance of the SES client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a SES client from just a session. // svc := ses.New(mySession) // // // Create a SES client with additional configuration // svc := ses.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *SES { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *SES { svc := &SES{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningName: "ses", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2010-12-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a SES operation and runs any // custom request initialization. func (c *SES) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/ses/sesiface/000077500000000000000000000000001300374646400175775ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/ses/sesiface/interface.go000066400000000000000000000262051300374646400220730ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package sesiface provides an interface to enable mocking the Amazon Simple Email Service service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package sesiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/ses" ) // SESAPI provides an interface to enable mocking the // ses.SES service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Simple Email Service. // func myFunc(svc sesiface.SESAPI) bool { // // Make svc.CloneReceiptRuleSet request // } // // func main() { // sess := session.New() // svc := ses.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockSESClient struct { // sesiface.SESAPI // } // func (m *mockSESClient) CloneReceiptRuleSet(input *ses.CloneReceiptRuleSetInput) (*ses.CloneReceiptRuleSetOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockSESClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type SESAPI interface { CloneReceiptRuleSetRequest(*ses.CloneReceiptRuleSetInput) (*request.Request, *ses.CloneReceiptRuleSetOutput) CloneReceiptRuleSet(*ses.CloneReceiptRuleSetInput) (*ses.CloneReceiptRuleSetOutput, error) CreateReceiptFilterRequest(*ses.CreateReceiptFilterInput) (*request.Request, *ses.CreateReceiptFilterOutput) CreateReceiptFilter(*ses.CreateReceiptFilterInput) (*ses.CreateReceiptFilterOutput, error) CreateReceiptRuleRequest(*ses.CreateReceiptRuleInput) (*request.Request, *ses.CreateReceiptRuleOutput) CreateReceiptRule(*ses.CreateReceiptRuleInput) (*ses.CreateReceiptRuleOutput, error) CreateReceiptRuleSetRequest(*ses.CreateReceiptRuleSetInput) (*request.Request, *ses.CreateReceiptRuleSetOutput) CreateReceiptRuleSet(*ses.CreateReceiptRuleSetInput) (*ses.CreateReceiptRuleSetOutput, error) DeleteIdentityRequest(*ses.DeleteIdentityInput) (*request.Request, *ses.DeleteIdentityOutput) DeleteIdentity(*ses.DeleteIdentityInput) (*ses.DeleteIdentityOutput, error) DeleteIdentityPolicyRequest(*ses.DeleteIdentityPolicyInput) (*request.Request, *ses.DeleteIdentityPolicyOutput) DeleteIdentityPolicy(*ses.DeleteIdentityPolicyInput) (*ses.DeleteIdentityPolicyOutput, error) DeleteReceiptFilterRequest(*ses.DeleteReceiptFilterInput) (*request.Request, *ses.DeleteReceiptFilterOutput) DeleteReceiptFilter(*ses.DeleteReceiptFilterInput) (*ses.DeleteReceiptFilterOutput, error) DeleteReceiptRuleRequest(*ses.DeleteReceiptRuleInput) (*request.Request, *ses.DeleteReceiptRuleOutput) DeleteReceiptRule(*ses.DeleteReceiptRuleInput) (*ses.DeleteReceiptRuleOutput, error) DeleteReceiptRuleSetRequest(*ses.DeleteReceiptRuleSetInput) (*request.Request, *ses.DeleteReceiptRuleSetOutput) DeleteReceiptRuleSet(*ses.DeleteReceiptRuleSetInput) (*ses.DeleteReceiptRuleSetOutput, error) DeleteVerifiedEmailAddressRequest(*ses.DeleteVerifiedEmailAddressInput) (*request.Request, *ses.DeleteVerifiedEmailAddressOutput) DeleteVerifiedEmailAddress(*ses.DeleteVerifiedEmailAddressInput) (*ses.DeleteVerifiedEmailAddressOutput, error) DescribeActiveReceiptRuleSetRequest(*ses.DescribeActiveReceiptRuleSetInput) (*request.Request, *ses.DescribeActiveReceiptRuleSetOutput) DescribeActiveReceiptRuleSet(*ses.DescribeActiveReceiptRuleSetInput) (*ses.DescribeActiveReceiptRuleSetOutput, error) DescribeReceiptRuleRequest(*ses.DescribeReceiptRuleInput) (*request.Request, *ses.DescribeReceiptRuleOutput) DescribeReceiptRule(*ses.DescribeReceiptRuleInput) (*ses.DescribeReceiptRuleOutput, error) DescribeReceiptRuleSetRequest(*ses.DescribeReceiptRuleSetInput) (*request.Request, *ses.DescribeReceiptRuleSetOutput) DescribeReceiptRuleSet(*ses.DescribeReceiptRuleSetInput) (*ses.DescribeReceiptRuleSetOutput, error) GetIdentityDkimAttributesRequest(*ses.GetIdentityDkimAttributesInput) (*request.Request, *ses.GetIdentityDkimAttributesOutput) GetIdentityDkimAttributes(*ses.GetIdentityDkimAttributesInput) (*ses.GetIdentityDkimAttributesOutput, error) GetIdentityMailFromDomainAttributesRequest(*ses.GetIdentityMailFromDomainAttributesInput) (*request.Request, *ses.GetIdentityMailFromDomainAttributesOutput) GetIdentityMailFromDomainAttributes(*ses.GetIdentityMailFromDomainAttributesInput) (*ses.GetIdentityMailFromDomainAttributesOutput, error) GetIdentityNotificationAttributesRequest(*ses.GetIdentityNotificationAttributesInput) (*request.Request, *ses.GetIdentityNotificationAttributesOutput) GetIdentityNotificationAttributes(*ses.GetIdentityNotificationAttributesInput) (*ses.GetIdentityNotificationAttributesOutput, error) GetIdentityPoliciesRequest(*ses.GetIdentityPoliciesInput) (*request.Request, *ses.GetIdentityPoliciesOutput) GetIdentityPolicies(*ses.GetIdentityPoliciesInput) (*ses.GetIdentityPoliciesOutput, error) GetIdentityVerificationAttributesRequest(*ses.GetIdentityVerificationAttributesInput) (*request.Request, *ses.GetIdentityVerificationAttributesOutput) GetIdentityVerificationAttributes(*ses.GetIdentityVerificationAttributesInput) (*ses.GetIdentityVerificationAttributesOutput, error) GetSendQuotaRequest(*ses.GetSendQuotaInput) (*request.Request, *ses.GetSendQuotaOutput) GetSendQuota(*ses.GetSendQuotaInput) (*ses.GetSendQuotaOutput, error) GetSendStatisticsRequest(*ses.GetSendStatisticsInput) (*request.Request, *ses.GetSendStatisticsOutput) GetSendStatistics(*ses.GetSendStatisticsInput) (*ses.GetSendStatisticsOutput, error) ListIdentitiesRequest(*ses.ListIdentitiesInput) (*request.Request, *ses.ListIdentitiesOutput) ListIdentities(*ses.ListIdentitiesInput) (*ses.ListIdentitiesOutput, error) ListIdentitiesPages(*ses.ListIdentitiesInput, func(*ses.ListIdentitiesOutput, bool) bool) error ListIdentityPoliciesRequest(*ses.ListIdentityPoliciesInput) (*request.Request, *ses.ListIdentityPoliciesOutput) ListIdentityPolicies(*ses.ListIdentityPoliciesInput) (*ses.ListIdentityPoliciesOutput, error) ListReceiptFiltersRequest(*ses.ListReceiptFiltersInput) (*request.Request, *ses.ListReceiptFiltersOutput) ListReceiptFilters(*ses.ListReceiptFiltersInput) (*ses.ListReceiptFiltersOutput, error) ListReceiptRuleSetsRequest(*ses.ListReceiptRuleSetsInput) (*request.Request, *ses.ListReceiptRuleSetsOutput) ListReceiptRuleSets(*ses.ListReceiptRuleSetsInput) (*ses.ListReceiptRuleSetsOutput, error) ListVerifiedEmailAddressesRequest(*ses.ListVerifiedEmailAddressesInput) (*request.Request, *ses.ListVerifiedEmailAddressesOutput) ListVerifiedEmailAddresses(*ses.ListVerifiedEmailAddressesInput) (*ses.ListVerifiedEmailAddressesOutput, error) PutIdentityPolicyRequest(*ses.PutIdentityPolicyInput) (*request.Request, *ses.PutIdentityPolicyOutput) PutIdentityPolicy(*ses.PutIdentityPolicyInput) (*ses.PutIdentityPolicyOutput, error) ReorderReceiptRuleSetRequest(*ses.ReorderReceiptRuleSetInput) (*request.Request, *ses.ReorderReceiptRuleSetOutput) ReorderReceiptRuleSet(*ses.ReorderReceiptRuleSetInput) (*ses.ReorderReceiptRuleSetOutput, error) SendBounceRequest(*ses.SendBounceInput) (*request.Request, *ses.SendBounceOutput) SendBounce(*ses.SendBounceInput) (*ses.SendBounceOutput, error) SendEmailRequest(*ses.SendEmailInput) (*request.Request, *ses.SendEmailOutput) SendEmail(*ses.SendEmailInput) (*ses.SendEmailOutput, error) SendRawEmailRequest(*ses.SendRawEmailInput) (*request.Request, *ses.SendRawEmailOutput) SendRawEmail(*ses.SendRawEmailInput) (*ses.SendRawEmailOutput, error) SetActiveReceiptRuleSetRequest(*ses.SetActiveReceiptRuleSetInput) (*request.Request, *ses.SetActiveReceiptRuleSetOutput) SetActiveReceiptRuleSet(*ses.SetActiveReceiptRuleSetInput) (*ses.SetActiveReceiptRuleSetOutput, error) SetIdentityDkimEnabledRequest(*ses.SetIdentityDkimEnabledInput) (*request.Request, *ses.SetIdentityDkimEnabledOutput) SetIdentityDkimEnabled(*ses.SetIdentityDkimEnabledInput) (*ses.SetIdentityDkimEnabledOutput, error) SetIdentityFeedbackForwardingEnabledRequest(*ses.SetIdentityFeedbackForwardingEnabledInput) (*request.Request, *ses.SetIdentityFeedbackForwardingEnabledOutput) SetIdentityFeedbackForwardingEnabled(*ses.SetIdentityFeedbackForwardingEnabledInput) (*ses.SetIdentityFeedbackForwardingEnabledOutput, error) SetIdentityHeadersInNotificationsEnabledRequest(*ses.SetIdentityHeadersInNotificationsEnabledInput) (*request.Request, *ses.SetIdentityHeadersInNotificationsEnabledOutput) SetIdentityHeadersInNotificationsEnabled(*ses.SetIdentityHeadersInNotificationsEnabledInput) (*ses.SetIdentityHeadersInNotificationsEnabledOutput, error) SetIdentityMailFromDomainRequest(*ses.SetIdentityMailFromDomainInput) (*request.Request, *ses.SetIdentityMailFromDomainOutput) SetIdentityMailFromDomain(*ses.SetIdentityMailFromDomainInput) (*ses.SetIdentityMailFromDomainOutput, error) SetIdentityNotificationTopicRequest(*ses.SetIdentityNotificationTopicInput) (*request.Request, *ses.SetIdentityNotificationTopicOutput) SetIdentityNotificationTopic(*ses.SetIdentityNotificationTopicInput) (*ses.SetIdentityNotificationTopicOutput, error) SetReceiptRulePositionRequest(*ses.SetReceiptRulePositionInput) (*request.Request, *ses.SetReceiptRulePositionOutput) SetReceiptRulePosition(*ses.SetReceiptRulePositionInput) (*ses.SetReceiptRulePositionOutput, error) UpdateReceiptRuleRequest(*ses.UpdateReceiptRuleInput) (*request.Request, *ses.UpdateReceiptRuleOutput) UpdateReceiptRule(*ses.UpdateReceiptRuleInput) (*ses.UpdateReceiptRuleOutput, error) VerifyDomainDkimRequest(*ses.VerifyDomainDkimInput) (*request.Request, *ses.VerifyDomainDkimOutput) VerifyDomainDkim(*ses.VerifyDomainDkimInput) (*ses.VerifyDomainDkimOutput, error) VerifyDomainIdentityRequest(*ses.VerifyDomainIdentityInput) (*request.Request, *ses.VerifyDomainIdentityOutput) VerifyDomainIdentity(*ses.VerifyDomainIdentityInput) (*ses.VerifyDomainIdentityOutput, error) VerifyEmailAddressRequest(*ses.VerifyEmailAddressInput) (*request.Request, *ses.VerifyEmailAddressOutput) VerifyEmailAddress(*ses.VerifyEmailAddressInput) (*ses.VerifyEmailAddressOutput, error) VerifyEmailIdentityRequest(*ses.VerifyEmailIdentityInput) (*request.Request, *ses.VerifyEmailIdentityOutput) VerifyEmailIdentity(*ses.VerifyEmailIdentityInput) (*ses.VerifyEmailIdentityOutput, error) WaitUntilIdentityExists(*ses.GetIdentityVerificationAttributesInput) error } var _ SESAPI = (*ses.SES)(nil) aws-sdk-go-1.4.22/service/ses/waiters.go000066400000000000000000000015371300374646400200300ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package ses import ( "github.com/aws/aws-sdk-go/private/waiter" ) // WaitUntilIdentityExists uses the Amazon SES API operation // GetIdentityVerificationAttributes to wait for a condition to be met before returning. // If the condition is not meet within the max attempt window an error will // be returned. func (c *SES) WaitUntilIdentityExists(input *GetIdentityVerificationAttributesInput) error { waiterCfg := waiter.Config{ Operation: "GetIdentityVerificationAttributes", Delay: 3, MaxAttempts: 20, Acceptors: []waiter.WaitAcceptor{ { State: "success", Matcher: "pathAll", Argument: "VerificationAttributes.*.VerificationStatus", Expected: "Success", }, }, } w := waiter.Waiter{ Client: c, Input: input, Config: waiterCfg, } return w.Wait() } aws-sdk-go-1.4.22/service/simpledb/000077500000000000000000000000001300374646400170225ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/simpledb/api.go000066400000000000000000001633711300374646400201350ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package simpledb provides a client for Amazon SimpleDB. package simpledb import ( "fmt" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/query" ) const opBatchDeleteAttributes = "BatchDeleteAttributes" // BatchDeleteAttributesRequest generates a "aws/request.Request" representing the // client's request for the BatchDeleteAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See BatchDeleteAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the BatchDeleteAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the BatchDeleteAttributesRequest method. // req, resp := client.BatchDeleteAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SimpleDB) BatchDeleteAttributesRequest(input *BatchDeleteAttributesInput) (req *request.Request, output *BatchDeleteAttributesOutput) { op := &request.Operation{ Name: opBatchDeleteAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &BatchDeleteAttributesInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &BatchDeleteAttributesOutput{} req.Data = output return } // BatchDeleteAttributes API operation for Amazon SimpleDB. // // Performs multiple DeleteAttributes operations in a single call, which reduces // round trips and latencies. This enables Amazon SimpleDB to optimize requests, // which generally yields better throughput. // // If you specify BatchDeleteAttributes without attributes or values, all the // attributes for the item are deleted. // // BatchDeleteAttributes is an idempotent operation; running it multiple times // on the same item or attribute doesn't result in an error. // // The BatchDeleteAttributes operation succeeds or fails in its entirety. There // are no partial deletes. You can execute multiple BatchDeleteAttributes operations // and other operations in parallel. However, large numbers of concurrent BatchDeleteAttributes // calls can result in Service Unavailable (503) responses. // // This operation is vulnerable to exceeding the maximum URL size when making // a REST request using the HTTP GET method. // // This operation does not support conditions using Expected.X.Name, Expected.X.Value, // or Expected.X.Exists. // // The following limitations are enforced for this operation: 1 MB request size // // 25 item limit per BatchDeleteAttributes operation // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon SimpleDB's // API operation BatchDeleteAttributes for usage and error information. func (c *SimpleDB) BatchDeleteAttributes(input *BatchDeleteAttributesInput) (*BatchDeleteAttributesOutput, error) { req, out := c.BatchDeleteAttributesRequest(input) err := req.Send() return out, err } const opBatchPutAttributes = "BatchPutAttributes" // BatchPutAttributesRequest generates a "aws/request.Request" representing the // client's request for the BatchPutAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See BatchPutAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the BatchPutAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the BatchPutAttributesRequest method. // req, resp := client.BatchPutAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SimpleDB) BatchPutAttributesRequest(input *BatchPutAttributesInput) (req *request.Request, output *BatchPutAttributesOutput) { op := &request.Operation{ Name: opBatchPutAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &BatchPutAttributesInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &BatchPutAttributesOutput{} req.Data = output return } // BatchPutAttributes API operation for Amazon SimpleDB. // // The BatchPutAttributes operation creates or replaces attributes within one // or more items. By using this operation, the client can perform multiple PutAttribute // operation with a single call. This helps yield savings in round trips and // latencies, enabling Amazon SimpleDB to optimize requests and generally produce // better throughput. // // The client may specify the item name with the Item.X.ItemName parameter. // The client may specify new attributes using a combination of the Item.X.Attribute.Y.Name // and Item.X.Attribute.Y.Value parameters. The client may specify the first // attribute for the first item using the parameters Item.0.Attribute.0.Name // and Item.0.Attribute.0.Value, and for the second attribute for the first // item by the parameters Item.0.Attribute.1.Name and Item.0.Attribute.1.Value, // and so on. // // Attributes are uniquely identified within an item by their name/value combination. // For example, a single item can have the attributes { "first_name", "first_value" // } and { "first_name", "second_value" }. However, it cannot have two attribute // instances where both the Item.X.Attribute.Y.Name and Item.X.Attribute.Y.Value // are the same. // // Optionally, the requester can supply the Replace parameter for each individual // value. Setting this value to true will cause the new attribute values to // replace the existing attribute values. For example, if an item I has the // attributes { 'a', '1' }, { 'b', '2'} and { 'b', '3' } and the requester does // a BatchPutAttributes of {'I', 'b', '4' } with the Replace parameter set to // true, the final attributes of the item will be { 'a', '1' } and { 'b', '4' // }, replacing the previous values of the 'b' attribute with the new value. // // You cannot specify an empty string as an item or as an attribute name. The // BatchPutAttributes operation succeeds or fails in its entirety. There are // no partial puts. This operation is vulnerable to exceeding the maximum URL size when making // a REST request using the HTTP GET method. This operation does not support // conditions using Expected.X.Name, Expected.X.Value, or Expected.X.Exists. // You can execute multiple BatchPutAttributes operations and other operations // in parallel. However, large numbers of concurrent BatchPutAttributes calls // can result in Service Unavailable (503) responses. // // The following limitations are enforced for this operation: 256 attribute // name-value pairs per item // 1 MB request size // 1 billion attributes per domain // 10 GB of total user data storage per domain // 25 item limit per BatchPutAttributes operation // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon SimpleDB's // API operation BatchPutAttributes for usage and error information. // // Returned Error Codes: // * DuplicateItemName // The item name was specified more than once. // // * InvalidParameterValue // The value for a parameter is invalid. // // * MissingParameter // The request must contain the specified missing parameter. // // * NoSuchDomain // The specified domain does not exist. // // * NumberItemAttributesExceeded // Too many attributes in this item. // // * NumberDomainAttributesExceeded // Too many attributes in this domain. // // * NumberDomainBytesExceeded // Too many bytes in this domain. // // * NumberSubmittedItemsExceeded // Too many items exist in a single call. // // * NumberSubmittedAttributesExceeded // Too many attributes exist in a single call. // func (c *SimpleDB) BatchPutAttributes(input *BatchPutAttributesInput) (*BatchPutAttributesOutput, error) { req, out := c.BatchPutAttributesRequest(input) err := req.Send() return out, err } const opCreateDomain = "CreateDomain" // CreateDomainRequest generates a "aws/request.Request" representing the // client's request for the CreateDomain operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDomain for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDomain method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDomainRequest method. // req, resp := client.CreateDomainRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SimpleDB) CreateDomainRequest(input *CreateDomainInput) (req *request.Request, output *CreateDomainOutput) { op := &request.Operation{ Name: opCreateDomain, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDomainInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &CreateDomainOutput{} req.Data = output return } // CreateDomain API operation for Amazon SimpleDB. // // The CreateDomain operation creates a new domain. The domain name should be // unique among the domains associated with the Access Key ID provided in the // request. The CreateDomain operation may take 10 or more seconds to complete. // // CreateDomain is an idempotent operation; running it multiple times using // the same domain name will not result in an error response. The client can create up to 100 domains per account. // // If the client requires additional domains, go to http://aws.amazon.com/contact-us/simpledb-limit-request/ // (http://aws.amazon.com/contact-us/simpledb-limit-request/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon SimpleDB's // API operation CreateDomain for usage and error information. // // Returned Error Codes: // * InvalidParameterValue // The value for a parameter is invalid. // // * MissingParameter // The request must contain the specified missing parameter. // // * NumberDomainsExceeded // Too many domains exist per this account. // func (c *SimpleDB) CreateDomain(input *CreateDomainInput) (*CreateDomainOutput, error) { req, out := c.CreateDomainRequest(input) err := req.Send() return out, err } const opDeleteAttributes = "DeleteAttributes" // DeleteAttributesRequest generates a "aws/request.Request" representing the // client's request for the DeleteAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteAttributesRequest method. // req, resp := client.DeleteAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SimpleDB) DeleteAttributesRequest(input *DeleteAttributesInput) (req *request.Request, output *DeleteAttributesOutput) { op := &request.Operation{ Name: opDeleteAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteAttributesInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteAttributesOutput{} req.Data = output return } // DeleteAttributes API operation for Amazon SimpleDB. // // Deletes one or more attributes associated with an item. If all attributes // of the item are deleted, the item is deleted. // // If DeleteAttributes is called without being passed any attributes or values // specified, all the attributes for the item are deleted. DeleteAttributes is an idempotent operation; running it multiple times on // the same item or attribute does not result in an error response. // // Because Amazon SimpleDB makes multiple copies of item data and uses an eventual // consistency update model, performing a GetAttributes or Select operation // (read) immediately after a DeleteAttributes or PutAttributes operation (write) // might not return updated item data. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon SimpleDB's // API operation DeleteAttributes for usage and error information. // // Returned Error Codes: // * InvalidParameterValue // The value for a parameter is invalid. // // * MissingParameter // The request must contain the specified missing parameter. // // * NoSuchDomain // The specified domain does not exist. // // * AttributeDoesNotExist // The specified attribute does not exist. // func (c *SimpleDB) DeleteAttributes(input *DeleteAttributesInput) (*DeleteAttributesOutput, error) { req, out := c.DeleteAttributesRequest(input) err := req.Send() return out, err } const opDeleteDomain = "DeleteDomain" // DeleteDomainRequest generates a "aws/request.Request" representing the // client's request for the DeleteDomain operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDomain for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDomain method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDomainRequest method. // req, resp := client.DeleteDomainRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SimpleDB) DeleteDomainRequest(input *DeleteDomainInput) (req *request.Request, output *DeleteDomainOutput) { op := &request.Operation{ Name: opDeleteDomain, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDomainInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteDomainOutput{} req.Data = output return } // DeleteDomain API operation for Amazon SimpleDB. // // The DeleteDomain operation deletes a domain. Any items (and their attributes) // in the domain are deleted as well. The DeleteDomain operation might take // 10 or more seconds to complete. // // Running DeleteDomain on a domain that does not exist or running the function // multiple times using the same domain name will not result in an error response. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon SimpleDB's // API operation DeleteDomain for usage and error information. // // Returned Error Codes: // * MissingParameter // The request must contain the specified missing parameter. // func (c *SimpleDB) DeleteDomain(input *DeleteDomainInput) (*DeleteDomainOutput, error) { req, out := c.DeleteDomainRequest(input) err := req.Send() return out, err } const opDomainMetadata = "DomainMetadata" // DomainMetadataRequest generates a "aws/request.Request" representing the // client's request for the DomainMetadata operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DomainMetadata for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DomainMetadata method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DomainMetadataRequest method. // req, resp := client.DomainMetadataRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SimpleDB) DomainMetadataRequest(input *DomainMetadataInput) (req *request.Request, output *DomainMetadataOutput) { op := &request.Operation{ Name: opDomainMetadata, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DomainMetadataInput{} } req = c.newRequest(op, input, output) output = &DomainMetadataOutput{} req.Data = output return } // DomainMetadata API operation for Amazon SimpleDB. // // Returns information about the domain, including when the domain was created, // the number of items and attributes in the domain, and the size of the attribute // names and values. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon SimpleDB's // API operation DomainMetadata for usage and error information. // // Returned Error Codes: // * MissingParameter // The request must contain the specified missing parameter. // // * NoSuchDomain // The specified domain does not exist. // func (c *SimpleDB) DomainMetadata(input *DomainMetadataInput) (*DomainMetadataOutput, error) { req, out := c.DomainMetadataRequest(input) err := req.Send() return out, err } const opGetAttributes = "GetAttributes" // GetAttributesRequest generates a "aws/request.Request" representing the // client's request for the GetAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetAttributesRequest method. // req, resp := client.GetAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SimpleDB) GetAttributesRequest(input *GetAttributesInput) (req *request.Request, output *GetAttributesOutput) { op := &request.Operation{ Name: opGetAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetAttributesInput{} } req = c.newRequest(op, input, output) output = &GetAttributesOutput{} req.Data = output return } // GetAttributes API operation for Amazon SimpleDB. // // Returns all of the attributes associated with the specified item. Optionally, // the attributes returned can be limited to one or more attributes by specifying // an attribute name parameter. // // If the item does not exist on the replica that was accessed for this operation, // an empty set is returned. The system does not return an error as it cannot // guarantee the item does not exist on other replicas. // // If GetAttributes is called without being passed any attribute names, all // the attributes for the item are returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon SimpleDB's // API operation GetAttributes for usage and error information. // // Returned Error Codes: // * InvalidParameterValue // The value for a parameter is invalid. // // * MissingParameter // The request must contain the specified missing parameter. // // * NoSuchDomain // The specified domain does not exist. // func (c *SimpleDB) GetAttributes(input *GetAttributesInput) (*GetAttributesOutput, error) { req, out := c.GetAttributesRequest(input) err := req.Send() return out, err } const opListDomains = "ListDomains" // ListDomainsRequest generates a "aws/request.Request" representing the // client's request for the ListDomains operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDomains for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDomains method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDomainsRequest method. // req, resp := client.ListDomainsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SimpleDB) ListDomainsRequest(input *ListDomainsInput) (req *request.Request, output *ListDomainsOutput) { op := &request.Operation{ Name: opListDomains, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxNumberOfDomains", TruncationToken: "", }, } if input == nil { input = &ListDomainsInput{} } req = c.newRequest(op, input, output) output = &ListDomainsOutput{} req.Data = output return } // ListDomains API operation for Amazon SimpleDB. // // The ListDomains operation lists all domains associated with the Access Key // ID. It returns domain names up to the limit set by MaxNumberOfDomains (#MaxNumberOfDomains). // A NextToken (#NextToken) is returned if there are more than MaxNumberOfDomains // domains. Calling ListDomains successive times with the NextToken provided // by the operation returns up to MaxNumberOfDomains more domain names with // each successive operation call. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon SimpleDB's // API operation ListDomains for usage and error information. // // Returned Error Codes: // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidNextToken // The specified NextToken is not valid. // func (c *SimpleDB) ListDomains(input *ListDomainsInput) (*ListDomainsOutput, error) { req, out := c.ListDomainsRequest(input) err := req.Send() return out, err } // ListDomainsPages iterates over the pages of a ListDomains operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListDomains method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListDomains operation. // pageNum := 0 // err := client.ListDomainsPages(params, // func(page *ListDomainsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SimpleDB) ListDomainsPages(input *ListDomainsInput, fn func(p *ListDomainsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListDomainsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListDomainsOutput), lastPage) }) } const opPutAttributes = "PutAttributes" // PutAttributesRequest generates a "aws/request.Request" representing the // client's request for the PutAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PutAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PutAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PutAttributesRequest method. // req, resp := client.PutAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SimpleDB) PutAttributesRequest(input *PutAttributesInput) (req *request.Request, output *PutAttributesOutput) { op := &request.Operation{ Name: opPutAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PutAttributesInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PutAttributesOutput{} req.Data = output return } // PutAttributes API operation for Amazon SimpleDB. // // The PutAttributes operation creates or replaces attributes in an item. The // client may specify new attributes using a combination of the Attribute.X.Name // and Attribute.X.Value parameters. The client specifies the first attribute // by the parameters Attribute.0.Name and Attribute.0.Value, the second attribute // by the parameters Attribute.1.Name and Attribute.1.Value, and so on. // // Attributes are uniquely identified in an item by their name/value combination. // For example, a single item can have the attributes { "first_name", "first_value" // } and { "first_name", second_value" }. However, it cannot have two attribute // instances where both the Attribute.X.Name and Attribute.X.Value are the same. // // Optionally, the requestor can supply the Replace parameter for each individual // attribute. Setting this value to true causes the new attribute value to replace // the existing attribute value(s). For example, if an item has the attributes // { 'a', '1' }, { 'b', '2'} and { 'b', '3' } and the requestor calls PutAttributes // using the attributes { 'b', '4' } with the Replace parameter set to true, // the final attributes of the item are changed to { 'a', '1' } and { 'b', '4' // }, which replaces the previous values of the 'b' attribute with the new value. // // Using PutAttributes to replace attribute values that do not exist will not // result in an error response. You cannot specify an empty string as an attribute name. // // Because Amazon SimpleDB makes multiple copies of client data and uses an // eventual consistency update model, an immediate GetAttributes or Select operation // (read) immediately after a PutAttributes or DeleteAttributes operation (write) // might not return the updated data. // // The following limitations are enforced for this operation: 256 total attribute // name-value pairs per item // One billion attributes per domain // 10 GB of total user data storage per domain // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon SimpleDB's // API operation PutAttributes for usage and error information. // // Returned Error Codes: // * InvalidParameterValue // The value for a parameter is invalid. // // * MissingParameter // The request must contain the specified missing parameter. // // * NoSuchDomain // The specified domain does not exist. // // * NumberDomainAttributesExceeded // Too many attributes in this domain. // // * NumberDomainBytesExceeded // Too many bytes in this domain. // // * NumberItemAttributesExceeded // Too many attributes in this item. // // * AttributeDoesNotExist // The specified attribute does not exist. // func (c *SimpleDB) PutAttributes(input *PutAttributesInput) (*PutAttributesOutput, error) { req, out := c.PutAttributesRequest(input) err := req.Send() return out, err } const opSelect = "Select" // SelectRequest generates a "aws/request.Request" representing the // client's request for the Select operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See Select for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the Select method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SelectRequest method. // req, resp := client.SelectRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SimpleDB) SelectRequest(input *SelectInput) (req *request.Request, output *SelectOutput) { op := &request.Operation{ Name: opSelect, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &SelectInput{} } req = c.newRequest(op, input, output) output = &SelectOutput{} req.Data = output return } // Select API operation for Amazon SimpleDB. // // The Select operation returns a set of attributes for ItemNames that match // the select expression. Select is similar to the standard SQL SELECT statement. // // The total size of the response cannot exceed 1 MB in total size. Amazon SimpleDB // automatically adjusts the number of items returned per page to enforce this // limit. For example, if the client asks to retrieve 2500 items, but each individual // item is 10 kB in size, the system returns 100 items and an appropriate NextToken // so the client can access the next page of results. // // For information on how to construct select expressions, see Using Select // to Create Amazon SimpleDB Queries in the Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon SimpleDB's // API operation Select for usage and error information. // // Returned Error Codes: // * InvalidParameterValue // The value for a parameter is invalid. // // * InvalidNextToken // The specified NextToken is not valid. // // * InvalidNumberPredicates // Too many predicates exist in the query expression. // // * InvalidNumberValueTests // Too many predicates exist in the query expression. // // * InvalidQueryExpression // The specified query expression syntax is not valid. // // * MissingParameter // The request must contain the specified missing parameter. // // * NoSuchDomain // The specified domain does not exist. // // * RequestTimeout // A timeout occurred when attempting to query the specified domain with specified // query expression. // // * TooManyRequestedAttributes // Too many attributes requested. // func (c *SimpleDB) Select(input *SelectInput) (*SelectOutput, error) { req, out := c.SelectRequest(input) err := req.Send() return out, err } // SelectPages iterates over the pages of a Select operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See Select method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a Select operation. // pageNum := 0 // err := client.SelectPages(params, // func(page *SelectOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SimpleDB) SelectPages(input *SelectInput, fn func(p *SelectOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.SelectRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*SelectOutput), lastPage) }) } type Attribute struct { _ struct{} `type:"structure"` AlternateNameEncoding *string `type:"string"` AlternateValueEncoding *string `type:"string"` // The name of the attribute. // // Name is a required field Name *string `type:"string" required:"true"` // The value of the attribute. // // Value is a required field Value *string `type:"string" required:"true"` } // String returns the string representation func (s Attribute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Attribute) GoString() string { return s.String() } type BatchDeleteAttributesInput struct { _ struct{} `type:"structure"` // The name of the domain in which the attributes are being deleted. // // DomainName is a required field DomainName *string `type:"string" required:"true"` // A list of items on which to perform the operation. // // Items is a required field Items []*DeletableItem `locationNameList:"Item" type:"list" flattened:"true" required:"true"` } // String returns the string representation func (s BatchDeleteAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchDeleteAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BatchDeleteAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BatchDeleteAttributesInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.Items == nil { invalidParams.Add(request.NewErrParamRequired("Items")) } if s.Items != nil { for i, v := range s.Items { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type BatchDeleteAttributesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s BatchDeleteAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchDeleteAttributesOutput) GoString() string { return s.String() } type BatchPutAttributesInput struct { _ struct{} `type:"structure"` // The name of the domain in which the attributes are being stored. // // DomainName is a required field DomainName *string `type:"string" required:"true"` // A list of items on which to perform the operation. // // Items is a required field Items []*ReplaceableItem `locationNameList:"Item" type:"list" flattened:"true" required:"true"` } // String returns the string representation func (s BatchPutAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchPutAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BatchPutAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BatchPutAttributesInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.Items == nil { invalidParams.Add(request.NewErrParamRequired("Items")) } if s.Items != nil { for i, v := range s.Items { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type BatchPutAttributesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s BatchPutAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchPutAttributesOutput) GoString() string { return s.String() } type CreateDomainInput struct { _ struct{} `type:"structure"` // The name of the domain to create. The name can range between 3 and 255 characters // and can contain the following characters: a-z, A-Z, 0-9, '_', '-', and '.'. // // DomainName is a required field DomainName *string `type:"string" required:"true"` } // String returns the string representation func (s CreateDomainInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDomainInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDomainInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDomainInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateDomainOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateDomainOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDomainOutput) GoString() string { return s.String() } type DeletableAttribute struct { _ struct{} `type:"structure"` // The name of the attribute. // // Name is a required field Name *string `type:"string" required:"true"` // The value of the attribute. Value *string `type:"string"` } // String returns the string representation func (s DeletableAttribute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletableAttribute) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeletableAttribute) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeletableAttribute"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeletableItem struct { _ struct{} `type:"structure"` Attributes []*DeletableAttribute `locationNameList:"Attribute" type:"list" flattened:"true"` // Name is a required field Name *string `locationName:"ItemName" type:"string" required:"true"` } // String returns the string representation func (s DeletableItem) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletableItem) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeletableItem) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeletableItem"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Attributes != nil { for i, v := range s.Attributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attributes", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteAttributesInput struct { _ struct{} `type:"structure"` // A list of Attributes. Similar to columns on a spreadsheet, attributes represent // categories of data that can be assigned to items. Attributes []*DeletableAttribute `locationNameList:"Attribute" type:"list" flattened:"true"` // The name of the domain in which to perform the operation. // // DomainName is a required field DomainName *string `type:"string" required:"true"` // The update condition which, if specified, determines whether the specified // attributes will be deleted or not. The update condition must be satisfied // in order for this request to be processed and the attributes to be deleted. Expected *UpdateCondition `type:"structure"` // The name of the item. Similar to rows on a spreadsheet, items represent individual // objects that contain one or more value-attribute pairs. // // ItemName is a required field ItemName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAttributesInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.ItemName == nil { invalidParams.Add(request.NewErrParamRequired("ItemName")) } if s.Attributes != nil { for i, v := range s.Attributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attributes", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteAttributesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAttributesOutput) GoString() string { return s.String() } type DeleteDomainInput struct { _ struct{} `type:"structure"` // The name of the domain to delete. // // DomainName is a required field DomainName *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteDomainInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDomainInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDomainInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDomainInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteDomainOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteDomainOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDomainOutput) GoString() string { return s.String() } type DomainMetadataInput struct { _ struct{} `type:"structure"` // The name of the domain for which to display the metadata of. // // DomainName is a required field DomainName *string `type:"string" required:"true"` } // String returns the string representation func (s DomainMetadataInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DomainMetadataInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DomainMetadataInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DomainMetadataInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DomainMetadataOutput struct { _ struct{} `type:"structure"` // The number of unique attribute names in the domain. AttributeNameCount *int64 `type:"integer"` // The total size of all unique attribute names in the domain, in bytes. AttributeNamesSizeBytes *int64 `type:"long"` // The number of all attribute name/value pairs in the domain. AttributeValueCount *int64 `type:"integer"` // The total size of all attribute values in the domain, in bytes. AttributeValuesSizeBytes *int64 `type:"long"` // The number of all items in the domain. ItemCount *int64 `type:"integer"` // The total size of all item names in the domain, in bytes. ItemNamesSizeBytes *int64 `type:"long"` // The data and time when metadata was calculated, in Epoch (UNIX) seconds. Timestamp *int64 `type:"integer"` } // String returns the string representation func (s DomainMetadataOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DomainMetadataOutput) GoString() string { return s.String() } type GetAttributesInput struct { _ struct{} `type:"structure"` // The names of the attributes. AttributeNames []*string `locationNameList:"AttributeName" type:"list" flattened:"true"` // Determines whether or not strong consistency should be enforced when data // is read from SimpleDB. If true ConsistentRead *bool `type:"boolean"` // The name of the domain in which to perform the operation. // // DomainName is a required field DomainName *string `type:"string" required:"true"` // The name of the item. // // ItemName is a required field ItemName *string `type:"string" required:"true"` } // String returns the string representation func (s GetAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetAttributesInput"} if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.ItemName == nil { invalidParams.Add(request.NewErrParamRequired("ItemName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetAttributesOutput struct { _ struct{} `type:"structure"` // The list of attributes returned by the operation. Attributes []*Attribute `locationNameList:"Attribute" type:"list" flattened:"true"` } // String returns the string representation func (s GetAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetAttributesOutput) GoString() string { return s.String() } type Item struct { _ struct{} `type:"structure"` AlternateNameEncoding *string `type:"string"` // A list of attributes. // // Attributes is a required field Attributes []*Attribute `locationNameList:"Attribute" type:"list" flattened:"true" required:"true"` // The name of the item. // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s Item) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Item) GoString() string { return s.String() } type ListDomainsInput struct { _ struct{} `type:"structure"` // The maximum number of domain names you want returned. The range is 1 to 100. // The default setting is 100. MaxNumberOfDomains *int64 `type:"integer"` // A string informing Amazon SimpleDB where to start the next list of domain // names. NextToken *string `type:"string"` } // String returns the string representation func (s ListDomainsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDomainsInput) GoString() string { return s.String() } type ListDomainsOutput struct { _ struct{} `type:"structure"` // A list of domain names that match the expression. DomainNames []*string `locationNameList:"DomainName" type:"list" flattened:"true"` // An opaque token indicating that there are more domains than the specified // MaxNumberOfDomains NextToken *string `type:"string"` } // String returns the string representation func (s ListDomainsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDomainsOutput) GoString() string { return s.String() } type PutAttributesInput struct { _ struct{} `type:"structure"` // The list of attributes. // // Attributes is a required field Attributes []*ReplaceableAttribute `locationNameList:"Attribute" type:"list" flattened:"true" required:"true"` // The name of the domain in which to perform the operation. // // DomainName is a required field DomainName *string `type:"string" required:"true"` // The update condition which, if specified, determines whether the specified // attributes will be updated or not. The update condition must be satisfied // in order for this request to be processed and the attributes to be updated. Expected *UpdateCondition `type:"structure"` // The name of the item. // // ItemName is a required field ItemName *string `type:"string" required:"true"` } // String returns the string representation func (s PutAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PutAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutAttributesInput"} if s.Attributes == nil { invalidParams.Add(request.NewErrParamRequired("Attributes")) } if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } if s.ItemName == nil { invalidParams.Add(request.NewErrParamRequired("ItemName")) } if s.Attributes != nil { for i, v := range s.Attributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attributes", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type PutAttributesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PutAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PutAttributesOutput) GoString() string { return s.String() } type ReplaceableAttribute struct { _ struct{} `type:"structure"` // The name of the replaceable attribute. // // Name is a required field Name *string `type:"string" required:"true"` // A flag specifying whether or not to replace the attribute/value pair or to // add a new attribute/value pair. The default setting is false Replace *bool `type:"boolean"` // The value of the replaceable attribute. // // Value is a required field Value *string `type:"string" required:"true"` } // String returns the string representation func (s ReplaceableAttribute) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplaceableAttribute) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReplaceableAttribute) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReplaceableAttribute"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ReplaceableItem struct { _ struct{} `type:"structure"` // The list of attributes for a replaceable item. // // Attributes is a required field Attributes []*ReplaceableAttribute `locationNameList:"Attribute" type:"list" flattened:"true" required:"true"` // The name of the replaceable item. // // Name is a required field Name *string `locationName:"ItemName" type:"string" required:"true"` } // String returns the string representation func (s ReplaceableItem) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplaceableItem) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReplaceableItem) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReplaceableItem"} if s.Attributes == nil { invalidParams.Add(request.NewErrParamRequired("Attributes")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Attributes != nil { for i, v := range s.Attributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attributes", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type SelectInput struct { _ struct{} `type:"structure"` // Determines whether or not strong consistency should be enforced when data // is read from SimpleDB. If true ConsistentRead *bool `type:"boolean"` // A string informing Amazon SimpleDB where to start the next list of ItemNames NextToken *string `type:"string"` // The expression used to query the domain. // // SelectExpression is a required field SelectExpression *string `type:"string" required:"true"` } // String returns the string representation func (s SelectInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SelectInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SelectInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SelectInput"} if s.SelectExpression == nil { invalidParams.Add(request.NewErrParamRequired("SelectExpression")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SelectOutput struct { _ struct{} `type:"structure"` // A list of items that match the select expression. Items []*Item `locationNameList:"Item" type:"list" flattened:"true"` // An opaque token indicating that more items than MaxNumberOfItems NextToken *string `type:"string"` } // String returns the string representation func (s SelectOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SelectOutput) GoString() string { return s.String() } // Specifies the conditions under which data should be updated. If an update // condition is specified for a request, the data will only be updated if the // condition is satisfied. For example, if an attribute with a specific name // and value exists, or if a specific attribute doesn't exist. type UpdateCondition struct { _ struct{} `type:"structure"` // A value specifying whether or not the specified attribute must exist with // the specified value in order for the update condition to be satisfied. Specify // true if the attribute must exist for the update condition to be satisfied. // Specify false if the attribute should not exist in order for the update condition // to be satisfied. Exists *bool `type:"boolean"` // The name of the attribute involved in the condition. Name *string `type:"string"` // The value of an attribute. This value can only be specified when the Exists // parameter is equal to true. Value *string `type:"string"` } // String returns the string representation func (s UpdateCondition) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateCondition) GoString() string { return s.String() } aws-sdk-go-1.4.22/service/simpledb/customizations.go000066400000000000000000000004071300374646400224450ustar00rootroot00000000000000package simpledb import "github.com/aws/aws-sdk-go/aws/client" func init() { initClient = func(c *client.Client) { // SimpleDB uses custom error unmarshaling logic c.Handlers.UnmarshalError.Clear() c.Handlers.UnmarshalError.PushBack(unmarshalError) } } aws-sdk-go-1.4.22/service/simpledb/examples_test.go000066400000000000000000000162121300374646400222300ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package simpledb_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/simpledb" ) var _ time.Duration var _ bytes.Buffer func ExampleSimpleDB_BatchDeleteAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := simpledb.New(sess) params := &simpledb.BatchDeleteAttributesInput{ DomainName: aws.String("String"), // Required Items: []*simpledb.DeletableItem{ // Required { // Required Name: aws.String("String"), // Required Attributes: []*simpledb.DeletableAttribute{ { // Required Name: aws.String("String"), // Required Value: aws.String("String"), }, // More values... }, }, // More values... }, } resp, err := svc.BatchDeleteAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSimpleDB_BatchPutAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := simpledb.New(sess) params := &simpledb.BatchPutAttributesInput{ DomainName: aws.String("String"), // Required Items: []*simpledb.ReplaceableItem{ // Required { // Required Attributes: []*simpledb.ReplaceableAttribute{ // Required { // Required Name: aws.String("String"), // Required Value: aws.String("String"), // Required Replace: aws.Bool(true), }, // More values... }, Name: aws.String("String"), // Required }, // More values... }, } resp, err := svc.BatchPutAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSimpleDB_CreateDomain() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := simpledb.New(sess) params := &simpledb.CreateDomainInput{ DomainName: aws.String("String"), // Required } resp, err := svc.CreateDomain(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSimpleDB_DeleteAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := simpledb.New(sess) params := &simpledb.DeleteAttributesInput{ DomainName: aws.String("String"), // Required ItemName: aws.String("String"), // Required Attributes: []*simpledb.DeletableAttribute{ { // Required Name: aws.String("String"), // Required Value: aws.String("String"), }, // More values... }, Expected: &simpledb.UpdateCondition{ Exists: aws.Bool(true), Name: aws.String("String"), Value: aws.String("String"), }, } resp, err := svc.DeleteAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSimpleDB_DeleteDomain() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := simpledb.New(sess) params := &simpledb.DeleteDomainInput{ DomainName: aws.String("String"), // Required } resp, err := svc.DeleteDomain(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSimpleDB_DomainMetadata() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := simpledb.New(sess) params := &simpledb.DomainMetadataInput{ DomainName: aws.String("String"), // Required } resp, err := svc.DomainMetadata(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSimpleDB_GetAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := simpledb.New(sess) params := &simpledb.GetAttributesInput{ DomainName: aws.String("String"), // Required ItemName: aws.String("String"), // Required AttributeNames: []*string{ aws.String("String"), // Required // More values... }, ConsistentRead: aws.Bool(true), } resp, err := svc.GetAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSimpleDB_ListDomains() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := simpledb.New(sess) params := &simpledb.ListDomainsInput{ MaxNumberOfDomains: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.ListDomains(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSimpleDB_PutAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := simpledb.New(sess) params := &simpledb.PutAttributesInput{ Attributes: []*simpledb.ReplaceableAttribute{ // Required { // Required Name: aws.String("String"), // Required Value: aws.String("String"), // Required Replace: aws.Bool(true), }, // More values... }, DomainName: aws.String("String"), // Required ItemName: aws.String("String"), // Required Expected: &simpledb.UpdateCondition{ Exists: aws.Bool(true), Name: aws.String("String"), Value: aws.String("String"), }, } resp, err := svc.PutAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSimpleDB_Select() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := simpledb.New(sess) params := &simpledb.SelectInput{ SelectExpression: aws.String("String"), // Required ConsistentRead: aws.Bool(true), NextToken: aws.String("String"), } resp, err := svc.Select(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/simpledb/service.go000066400000000000000000000073131300374646400210150ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package simpledb import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/corehandlers" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol/query" "github.com/aws/aws-sdk-go/private/signer/v2" ) // Amazon SimpleDB is a web service providing the core database functions of // data indexing and querying in the cloud. By offloading the time and effort // associated with building and operating a web-scale database, SimpleDB provides // developers the freedom to focus on application development. A traditional, // clustered relational database requires a sizable upfront capital outlay, // is complex to design, and often requires extensive and repetitive database // administration. Amazon SimpleDB is dramatically simpler, requiring no schema, // automatically indexing your data and providing a simple API for storage and // access. This approach eliminates the administrative burden of data modeling, // index maintenance, and performance tuning. Developers gain access to this // functionality within Amazon's proven computing environment, are able to scale // instantly, and pay only for what they use. // // Visit http://aws.amazon.com/simpledb/ (http://aws.amazon.com/simpledb/) for // more information. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type SimpleDB struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "sdb" // New creates a new instance of the SimpleDB client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a SimpleDB client from just a session. // svc := simpledb.New(mySession) // // // Create a SimpleDB client with additional configuration // svc := simpledb.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *SimpleDB { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *SimpleDB { svc := &SimpleDB{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2009-04-15", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v2.SignRequestHandler) svc.Handlers.Sign.PushBackNamed(corehandlers.BuildContentLengthHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a SimpleDB operation and runs any // custom request initialization. func (c *SimpleDB) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/simpledb/simpledbiface/000077500000000000000000000000001300374646400216115ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/simpledb/simpledbiface/interface.go000066400000000000000000000103251300374646400241010ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package simpledbiface provides an interface to enable mocking the Amazon SimpleDB service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package simpledbiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/simpledb" ) // SimpleDBAPI provides an interface to enable mocking the // simpledb.SimpleDB service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon SimpleDB. // func myFunc(svc simpledbiface.SimpleDBAPI) bool { // // Make svc.BatchDeleteAttributes request // } // // func main() { // sess := session.New() // svc := simpledb.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockSimpleDBClient struct { // simpledbiface.SimpleDBAPI // } // func (m *mockSimpleDBClient) BatchDeleteAttributes(input *simpledb.BatchDeleteAttributesInput) (*simpledb.BatchDeleteAttributesOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockSimpleDBClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type SimpleDBAPI interface { BatchDeleteAttributesRequest(*simpledb.BatchDeleteAttributesInput) (*request.Request, *simpledb.BatchDeleteAttributesOutput) BatchDeleteAttributes(*simpledb.BatchDeleteAttributesInput) (*simpledb.BatchDeleteAttributesOutput, error) BatchPutAttributesRequest(*simpledb.BatchPutAttributesInput) (*request.Request, *simpledb.BatchPutAttributesOutput) BatchPutAttributes(*simpledb.BatchPutAttributesInput) (*simpledb.BatchPutAttributesOutput, error) CreateDomainRequest(*simpledb.CreateDomainInput) (*request.Request, *simpledb.CreateDomainOutput) CreateDomain(*simpledb.CreateDomainInput) (*simpledb.CreateDomainOutput, error) DeleteAttributesRequest(*simpledb.DeleteAttributesInput) (*request.Request, *simpledb.DeleteAttributesOutput) DeleteAttributes(*simpledb.DeleteAttributesInput) (*simpledb.DeleteAttributesOutput, error) DeleteDomainRequest(*simpledb.DeleteDomainInput) (*request.Request, *simpledb.DeleteDomainOutput) DeleteDomain(*simpledb.DeleteDomainInput) (*simpledb.DeleteDomainOutput, error) DomainMetadataRequest(*simpledb.DomainMetadataInput) (*request.Request, *simpledb.DomainMetadataOutput) DomainMetadata(*simpledb.DomainMetadataInput) (*simpledb.DomainMetadataOutput, error) GetAttributesRequest(*simpledb.GetAttributesInput) (*request.Request, *simpledb.GetAttributesOutput) GetAttributes(*simpledb.GetAttributesInput) (*simpledb.GetAttributesOutput, error) ListDomainsRequest(*simpledb.ListDomainsInput) (*request.Request, *simpledb.ListDomainsOutput) ListDomains(*simpledb.ListDomainsInput) (*simpledb.ListDomainsOutput, error) ListDomainsPages(*simpledb.ListDomainsInput, func(*simpledb.ListDomainsOutput, bool) bool) error PutAttributesRequest(*simpledb.PutAttributesInput) (*request.Request, *simpledb.PutAttributesOutput) PutAttributes(*simpledb.PutAttributesInput) (*simpledb.PutAttributesOutput, error) SelectRequest(*simpledb.SelectInput) (*request.Request, *simpledb.SelectOutput) Select(*simpledb.SelectInput) (*simpledb.SelectOutput, error) SelectPages(*simpledb.SelectInput, func(*simpledb.SelectOutput, bool) bool) error } var _ SimpleDBAPI = (*simpledb.SimpleDB)(nil) aws-sdk-go-1.4.22/service/simpledb/unmarshal_error_leak_test.go000066400000000000000000000013171300374646400246110ustar00rootroot00000000000000package simpledb import ( "github.com/stretchr/testify/assert" "net/http" "testing" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting" ) func TestUnmarhsalErrorLeak(t *testing.T) { req := &request.Request{ HTTPRequest: &http.Request{ Header: make(http.Header), Body: &awstesting.ReadCloser{Size: 2048}, }, } req.HTTPResponse = &http.Response{ Body: &awstesting.ReadCloser{Size: 2048}, Header: http.Header{ "X-Amzn-Requestid": []string{"1"}, }, StatusCode: http.StatusOK, } reader := req.HTTPResponse.Body.(*awstesting.ReadCloser) unmarshalError(req) assert.NotNil(t, req.Error) assert.Equal(t, reader.Closed, true) assert.Equal(t, reader.Size, 0) } aws-sdk-go-1.4.22/service/simpledb/unmarshall_error.go000066400000000000000000000027251300374646400227360ustar00rootroot00000000000000package simpledb import ( "encoding/xml" "io" "io/ioutil" "strings" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" ) type xmlErrorDetail struct { Code string `xml:"Code"` Message string `xml:"Message"` } type xmlErrorResponse struct { XMLName xml.Name `xml:"Response"` Errors []xmlErrorDetail `xml:"Errors>Error"` RequestID string `xml:"RequestID"` } func unmarshalError(r *request.Request) { defer r.HTTPResponse.Body.Close() defer io.Copy(ioutil.Discard, r.HTTPResponse.Body) if r.HTTPResponse.ContentLength == int64(0) { // No body, use status code to generate an awserr.Error r.Error = awserr.NewRequestFailure( awserr.New(strings.Replace(r.HTTPResponse.Status, " ", "", -1), r.HTTPResponse.Status, nil), r.HTTPResponse.StatusCode, "", ) return } resp := &xmlErrorResponse{} err := xml.NewDecoder(r.HTTPResponse.Body).Decode(resp) if err != nil && err != io.EOF { r.Error = awserr.New("SerializationError", "failed to decode SimpleDB XML error response", nil) } else if len(resp.Errors) == 0 { r.Error = awserr.New("MissingError", "missing error code in SimpleDB XML error response", nil) } else { // If there are multiple error codes, return only the first as the aws.Error interface only supports // one error code. r.Error = awserr.NewRequestFailure( awserr.New(resp.Errors[0].Code, resp.Errors[0].Message, nil), r.HTTPResponse.StatusCode, resp.RequestID, ) } } aws-sdk-go-1.4.22/service/simpledb/unmarshall_error_test.go000066400000000000000000000074011300374646400237710ustar00rootroot00000000000000package simpledb_test import ( "bytes" "io/ioutil" "net/http" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/simpledb" ) var statusCodeErrorTests = []struct { scode int status string code string message string }{ {301, "Moved Permanently", "MovedPermanently", "Moved Permanently"}, {403, "Forbidden", "Forbidden", "Forbidden"}, {400, "Bad Request", "BadRequest", "Bad Request"}, {404, "Not Found", "NotFound", "Not Found"}, {500, "Internal Error", "InternalError", "Internal Error"}, } func TestStatusCodeError(t *testing.T) { for _, test := range statusCodeErrorTests { s := simpledb.New(unit.Session) s.Handlers.Send.Clear() s.Handlers.Send.PushBack(func(r *request.Request) { body := ioutil.NopCloser(bytes.NewReader([]byte{})) r.HTTPResponse = &http.Response{ ContentLength: 0, StatusCode: test.scode, Status: test.status, Body: body, } }) _, err := s.CreateDomain(&simpledb.CreateDomainInput{ DomainName: aws.String("test-domain"), }) assert.Error(t, err) assert.Equal(t, test.code, err.(awserr.Error).Code()) assert.Equal(t, test.message, err.(awserr.Error).Message()) } } var responseErrorTests = []struct { scode int status string code string message string requestID string errors []struct { code string message string } }{ { scode: 400, status: "Bad Request", code: "MissingError", message: "missing error code in SimpleDB XML error response", requestID: "101", errors: []struct{ code, message string }{}, }, { scode: 403, status: "Forbidden", code: "AuthFailure", message: "AWS was not able to validate the provided access keys.", requestID: "1111", errors: []struct{ code, message string }{ {"AuthFailure", "AWS was not able to validate the provided access keys."}, }, }, { scode: 500, status: "Internal Error", code: "MissingParameter", message: "Message #1", requestID: "8756", errors: []struct{ code, message string }{ {"MissingParameter", "Message #1"}, {"InternalError", "Message #2"}, }, }, } func TestResponseError(t *testing.T) { for _, test := range responseErrorTests { s := simpledb.New(unit.Session) s.Handlers.Send.Clear() s.Handlers.Send.PushBack(func(r *request.Request) { xml := createXMLResponse(test.requestID, test.errors) body := ioutil.NopCloser(bytes.NewReader([]byte(xml))) r.HTTPResponse = &http.Response{ ContentLength: int64(len(xml)), StatusCode: test.scode, Status: test.status, Body: body, } }) _, err := s.CreateDomain(&simpledb.CreateDomainInput{ DomainName: aws.String("test-domain"), }) assert.Error(t, err) assert.Equal(t, test.code, err.(awserr.Error).Code()) assert.Equal(t, test.message, err.(awserr.Error).Message()) if len(test.errors) > 0 { assert.Equal(t, test.requestID, err.(awserr.RequestFailure).RequestID()) assert.Equal(t, test.scode, err.(awserr.RequestFailure).StatusCode()) } } } // createXMLResponse constructs an XML string that has one or more error messages in it. func createXMLResponse(requestID string, errors []struct{ code, message string }) []byte { var buf bytes.Buffer buf.WriteString(``) for _, e := range errors { buf.WriteString(``) buf.WriteString(e.code) buf.WriteString(``) buf.WriteString(e.message) buf.WriteString(``) } buf.WriteString(``) buf.WriteString(requestID) buf.WriteString(``) return buf.Bytes() } aws-sdk-go-1.4.22/service/sms/000077500000000000000000000000001300374646400160255ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/sms/api.go000066400000000000000000001733441300374646400171410ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package sms provides a client for AWS Server Migration Service. package sms import ( "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opCreateReplicationJob = "CreateReplicationJob" // CreateReplicationJobRequest generates a "aws/request.Request" representing the // client's request for the CreateReplicationJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateReplicationJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateReplicationJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateReplicationJobRequest method. // req, resp := client.CreateReplicationJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SMS) CreateReplicationJobRequest(input *CreateReplicationJobInput) (req *request.Request, output *CreateReplicationJobOutput) { op := &request.Operation{ Name: opCreateReplicationJob, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateReplicationJobInput{} } req = c.newRequest(op, input, output) output = &CreateReplicationJobOutput{} req.Data = output return } // CreateReplicationJob API operation for AWS Server Migration Service. // // The CreateReplicationJob API is used to create a ReplicationJob to replicate // a server on AWS. Call this API to first create a ReplicationJob, which will // then schedule periodic ReplicationRuns to replicate your server to AWS. Each // ReplicationRun will result in the creation of an AWS AMI. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Server Migration Service's // API operation CreateReplicationJob for usage and error information. // // Returned Error Codes: // * InvalidParameterException // A parameter specified in the request is not valid, is unsupported, or cannot // be used. // // * MissingRequiredParameterException // The request is missing a required parameter. Ensure that you have supplied // all the required parameters for the request. // // * UnauthorizedOperationException // This user does not have permissions to perform this operation. // // * OperationNotPermittedException // The specified operation is not allowed. This error can occur for a number // of reasons; for example, you might be trying to start a Replication Run before // seed Replication Run. // // * ServerCannotBeReplicatedException // The provided server cannot be replicated. // // * ReplicationJobAlreadyExistsException // An active Replication Job already exists for the specified server. // // * NoConnectorsAvailableException // No connectors are available to handle this request. Please associate connector(s) // and verify any existing connectors are healthy and can respond to requests. // // * InternalError // An internal error has occured. // func (c *SMS) CreateReplicationJob(input *CreateReplicationJobInput) (*CreateReplicationJobOutput, error) { req, out := c.CreateReplicationJobRequest(input) err := req.Send() return out, err } const opDeleteReplicationJob = "DeleteReplicationJob" // DeleteReplicationJobRequest generates a "aws/request.Request" representing the // client's request for the DeleteReplicationJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteReplicationJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteReplicationJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteReplicationJobRequest method. // req, resp := client.DeleteReplicationJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SMS) DeleteReplicationJobRequest(input *DeleteReplicationJobInput) (req *request.Request, output *DeleteReplicationJobOutput) { op := &request.Operation{ Name: opDeleteReplicationJob, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteReplicationJobInput{} } req = c.newRequest(op, input, output) output = &DeleteReplicationJobOutput{} req.Data = output return } // DeleteReplicationJob API operation for AWS Server Migration Service. // // The DeleteReplicationJob API is used to delete a ReplicationJob, resulting // in no further ReplicationRuns. This will delete the contents of the S3 bucket // used to store SMS artifacts, but will not delete any AMIs created by the // SMS service. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Server Migration Service's // API operation DeleteReplicationJob for usage and error information. // // Returned Error Codes: // * InvalidParameterException // A parameter specified in the request is not valid, is unsupported, or cannot // be used. // // * MissingRequiredParameterException // The request is missing a required parameter. Ensure that you have supplied // all the required parameters for the request. // // * UnauthorizedOperationException // This user does not have permissions to perform this operation. // // * OperationNotPermittedException // The specified operation is not allowed. This error can occur for a number // of reasons; for example, you might be trying to start a Replication Run before // seed Replication Run. // // * ReplicationJobNotFoundException // The specified Replication Job cannot be found. // func (c *SMS) DeleteReplicationJob(input *DeleteReplicationJobInput) (*DeleteReplicationJobOutput, error) { req, out := c.DeleteReplicationJobRequest(input) err := req.Send() return out, err } const opDeleteServerCatalog = "DeleteServerCatalog" // DeleteServerCatalogRequest generates a "aws/request.Request" representing the // client's request for the DeleteServerCatalog operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteServerCatalog for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteServerCatalog method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteServerCatalogRequest method. // req, resp := client.DeleteServerCatalogRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SMS) DeleteServerCatalogRequest(input *DeleteServerCatalogInput) (req *request.Request, output *DeleteServerCatalogOutput) { op := &request.Operation{ Name: opDeleteServerCatalog, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteServerCatalogInput{} } req = c.newRequest(op, input, output) output = &DeleteServerCatalogOutput{} req.Data = output return } // DeleteServerCatalog API operation for AWS Server Migration Service. // // The DeleteServerCatalog API clears all servers from your server catalog. // This means that these servers will no longer be accessible to the Server // Migration Service. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Server Migration Service's // API operation DeleteServerCatalog for usage and error information. // // Returned Error Codes: // * UnauthorizedOperationException // This user does not have permissions to perform this operation. // // * OperationNotPermittedException // The specified operation is not allowed. This error can occur for a number // of reasons; for example, you might be trying to start a Replication Run before // seed Replication Run. // // * InvalidParameterException // A parameter specified in the request is not valid, is unsupported, or cannot // be used. // // * MissingRequiredParameterException // The request is missing a required parameter. Ensure that you have supplied // all the required parameters for the request. // func (c *SMS) DeleteServerCatalog(input *DeleteServerCatalogInput) (*DeleteServerCatalogOutput, error) { req, out := c.DeleteServerCatalogRequest(input) err := req.Send() return out, err } const opDisassociateConnector = "DisassociateConnector" // DisassociateConnectorRequest generates a "aws/request.Request" representing the // client's request for the DisassociateConnector operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisassociateConnector for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisassociateConnector method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisassociateConnectorRequest method. // req, resp := client.DisassociateConnectorRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SMS) DisassociateConnectorRequest(input *DisassociateConnectorInput) (req *request.Request, output *DisassociateConnectorOutput) { op := &request.Operation{ Name: opDisassociateConnector, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisassociateConnectorInput{} } req = c.newRequest(op, input, output) output = &DisassociateConnectorOutput{} req.Data = output return } // DisassociateConnector API operation for AWS Server Migration Service. // // The DisassociateConnector API will disassociate a connector from the Server // Migration Service, rendering it unavailable to support replication jobs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Server Migration Service's // API operation DisassociateConnector for usage and error information. // // Returned Error Codes: // * MissingRequiredParameterException // The request is missing a required parameter. Ensure that you have supplied // all the required parameters for the request. // // * UnauthorizedOperationException // This user does not have permissions to perform this operation. // // * OperationNotPermittedException // The specified operation is not allowed. This error can occur for a number // of reasons; for example, you might be trying to start a Replication Run before // seed Replication Run. // // * InvalidParameterException // A parameter specified in the request is not valid, is unsupported, or cannot // be used. // func (c *SMS) DisassociateConnector(input *DisassociateConnectorInput) (*DisassociateConnectorOutput, error) { req, out := c.DisassociateConnectorRequest(input) err := req.Send() return out, err } const opGetConnectors = "GetConnectors" // GetConnectorsRequest generates a "aws/request.Request" representing the // client's request for the GetConnectors operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetConnectors for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetConnectors method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetConnectorsRequest method. // req, resp := client.GetConnectorsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SMS) GetConnectorsRequest(input *GetConnectorsInput) (req *request.Request, output *GetConnectorsOutput) { op := &request.Operation{ Name: opGetConnectors, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &GetConnectorsInput{} } req = c.newRequest(op, input, output) output = &GetConnectorsOutput{} req.Data = output return } // GetConnectors API operation for AWS Server Migration Service. // // The GetConnectors API returns a list of connectors that are registered with // the Server Migration Service. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Server Migration Service's // API operation GetConnectors for usage and error information. // // Returned Error Codes: // * UnauthorizedOperationException // This user does not have permissions to perform this operation. // func (c *SMS) GetConnectors(input *GetConnectorsInput) (*GetConnectorsOutput, error) { req, out := c.GetConnectorsRequest(input) err := req.Send() return out, err } // GetConnectorsPages iterates over the pages of a GetConnectors operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetConnectors method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetConnectors operation. // pageNum := 0 // err := client.GetConnectorsPages(params, // func(page *GetConnectorsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SMS) GetConnectorsPages(input *GetConnectorsInput, fn func(p *GetConnectorsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetConnectorsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetConnectorsOutput), lastPage) }) } const opGetReplicationJobs = "GetReplicationJobs" // GetReplicationJobsRequest generates a "aws/request.Request" representing the // client's request for the GetReplicationJobs operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetReplicationJobs for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetReplicationJobs method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetReplicationJobsRequest method. // req, resp := client.GetReplicationJobsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SMS) GetReplicationJobsRequest(input *GetReplicationJobsInput) (req *request.Request, output *GetReplicationJobsOutput) { op := &request.Operation{ Name: opGetReplicationJobs, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &GetReplicationJobsInput{} } req = c.newRequest(op, input, output) output = &GetReplicationJobsOutput{} req.Data = output return } // GetReplicationJobs API operation for AWS Server Migration Service. // // The GetReplicationJobs API will return all of your ReplicationJobs and their // details. This API returns a paginated list, that may be consecutively called // with nextToken to retrieve all ReplicationJobs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Server Migration Service's // API operation GetReplicationJobs for usage and error information. // // Returned Error Codes: // * InvalidParameterException // A parameter specified in the request is not valid, is unsupported, or cannot // be used. // // * MissingRequiredParameterException // The request is missing a required parameter. Ensure that you have supplied // all the required parameters for the request. // // * UnauthorizedOperationException // This user does not have permissions to perform this operation. // func (c *SMS) GetReplicationJobs(input *GetReplicationJobsInput) (*GetReplicationJobsOutput, error) { req, out := c.GetReplicationJobsRequest(input) err := req.Send() return out, err } // GetReplicationJobsPages iterates over the pages of a GetReplicationJobs operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetReplicationJobs method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetReplicationJobs operation. // pageNum := 0 // err := client.GetReplicationJobsPages(params, // func(page *GetReplicationJobsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SMS) GetReplicationJobsPages(input *GetReplicationJobsInput, fn func(p *GetReplicationJobsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetReplicationJobsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetReplicationJobsOutput), lastPage) }) } const opGetReplicationRuns = "GetReplicationRuns" // GetReplicationRunsRequest generates a "aws/request.Request" representing the // client's request for the GetReplicationRuns operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetReplicationRuns for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetReplicationRuns method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetReplicationRunsRequest method. // req, resp := client.GetReplicationRunsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SMS) GetReplicationRunsRequest(input *GetReplicationRunsInput) (req *request.Request, output *GetReplicationRunsOutput) { op := &request.Operation{ Name: opGetReplicationRuns, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &GetReplicationRunsInput{} } req = c.newRequest(op, input, output) output = &GetReplicationRunsOutput{} req.Data = output return } // GetReplicationRuns API operation for AWS Server Migration Service. // // The GetReplicationRuns API will return all ReplicationRuns for a given ReplicationJob. // This API returns a paginated list, that may be consecutively called with // nextToken to retrieve all ReplicationRuns for a ReplicationJob. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Server Migration Service's // API operation GetReplicationRuns for usage and error information. // // Returned Error Codes: // * InvalidParameterException // A parameter specified in the request is not valid, is unsupported, or cannot // be used. // // * MissingRequiredParameterException // The request is missing a required parameter. Ensure that you have supplied // all the required parameters for the request. // // * UnauthorizedOperationException // This user does not have permissions to perform this operation. // func (c *SMS) GetReplicationRuns(input *GetReplicationRunsInput) (*GetReplicationRunsOutput, error) { req, out := c.GetReplicationRunsRequest(input) err := req.Send() return out, err } // GetReplicationRunsPages iterates over the pages of a GetReplicationRuns operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetReplicationRuns method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetReplicationRuns operation. // pageNum := 0 // err := client.GetReplicationRunsPages(params, // func(page *GetReplicationRunsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SMS) GetReplicationRunsPages(input *GetReplicationRunsInput, fn func(p *GetReplicationRunsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetReplicationRunsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetReplicationRunsOutput), lastPage) }) } const opGetServers = "GetServers" // GetServersRequest generates a "aws/request.Request" representing the // client's request for the GetServers operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetServers for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetServers method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetServersRequest method. // req, resp := client.GetServersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SMS) GetServersRequest(input *GetServersInput) (req *request.Request, output *GetServersOutput) { op := &request.Operation{ Name: opGetServers, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &GetServersInput{} } req = c.newRequest(op, input, output) output = &GetServersOutput{} req.Data = output return } // GetServers API operation for AWS Server Migration Service. // // The GetServers API returns a list of all servers in your server catalog. // For this call to succeed, you must previously have called ImportServerCatalog. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Server Migration Service's // API operation GetServers for usage and error information. // // Returned Error Codes: // * UnauthorizedOperationException // This user does not have permissions to perform this operation. // func (c *SMS) GetServers(input *GetServersInput) (*GetServersOutput, error) { req, out := c.GetServersRequest(input) err := req.Send() return out, err } // GetServersPages iterates over the pages of a GetServers operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetServers method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetServers operation. // pageNum := 0 // err := client.GetServersPages(params, // func(page *GetServersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SMS) GetServersPages(input *GetServersInput, fn func(p *GetServersOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetServersRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetServersOutput), lastPage) }) } const opImportServerCatalog = "ImportServerCatalog" // ImportServerCatalogRequest generates a "aws/request.Request" representing the // client's request for the ImportServerCatalog operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ImportServerCatalog for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ImportServerCatalog method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ImportServerCatalogRequest method. // req, resp := client.ImportServerCatalogRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SMS) ImportServerCatalogRequest(input *ImportServerCatalogInput) (req *request.Request, output *ImportServerCatalogOutput) { op := &request.Operation{ Name: opImportServerCatalog, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ImportServerCatalogInput{} } req = c.newRequest(op, input, output) output = &ImportServerCatalogOutput{} req.Data = output return } // ImportServerCatalog API operation for AWS Server Migration Service. // // The ImportServerCatalog API is used to gather the complete list of on-premises // servers on your premises. This API call requires connectors to be installed // and monitoring all servers you would like imported. This API call returns // immediately, but may take some time to retrieve all of the servers. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Server Migration Service's // API operation ImportServerCatalog for usage and error information. // // Returned Error Codes: // * UnauthorizedOperationException // This user does not have permissions to perform this operation. // // * OperationNotPermittedException // The specified operation is not allowed. This error can occur for a number // of reasons; for example, you might be trying to start a Replication Run before // seed Replication Run. // // * InvalidParameterException // A parameter specified in the request is not valid, is unsupported, or cannot // be used. // // * MissingRequiredParameterException // The request is missing a required parameter. Ensure that you have supplied // all the required parameters for the request. // // * NoConnectorsAvailableException // No connectors are available to handle this request. Please associate connector(s) // and verify any existing connectors are healthy and can respond to requests. // func (c *SMS) ImportServerCatalog(input *ImportServerCatalogInput) (*ImportServerCatalogOutput, error) { req, out := c.ImportServerCatalogRequest(input) err := req.Send() return out, err } const opStartOnDemandReplicationRun = "StartOnDemandReplicationRun" // StartOnDemandReplicationRunRequest generates a "aws/request.Request" representing the // client's request for the StartOnDemandReplicationRun operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StartOnDemandReplicationRun for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StartOnDemandReplicationRun method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StartOnDemandReplicationRunRequest method. // req, resp := client.StartOnDemandReplicationRunRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SMS) StartOnDemandReplicationRunRequest(input *StartOnDemandReplicationRunInput) (req *request.Request, output *StartOnDemandReplicationRunOutput) { op := &request.Operation{ Name: opStartOnDemandReplicationRun, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartOnDemandReplicationRunInput{} } req = c.newRequest(op, input, output) output = &StartOnDemandReplicationRunOutput{} req.Data = output return } // StartOnDemandReplicationRun API operation for AWS Server Migration Service. // // The StartOnDemandReplicationRun API is used to start a ReplicationRun on // demand (in addition to those that are scheduled based on your frequency). // This ReplicationRun will start immediately. StartOnDemandReplicationRun is // subject to limits on how many on demand ReplicationRuns you may call per // 24-hour period. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Server Migration Service's // API operation StartOnDemandReplicationRun for usage and error information. // // Returned Error Codes: // * InvalidParameterException // A parameter specified in the request is not valid, is unsupported, or cannot // be used. // // * MissingRequiredParameterException // The request is missing a required parameter. Ensure that you have supplied // all the required parameters for the request. // // * UnauthorizedOperationException // This user does not have permissions to perform this operation. // // * OperationNotPermittedException // The specified operation is not allowed. This error can occur for a number // of reasons; for example, you might be trying to start a Replication Run before // seed Replication Run. // // * ReplicationRunLimitExceededException // This user has exceeded the maximum allowed Replication Run limit. // func (c *SMS) StartOnDemandReplicationRun(input *StartOnDemandReplicationRunInput) (*StartOnDemandReplicationRunOutput, error) { req, out := c.StartOnDemandReplicationRunRequest(input) err := req.Send() return out, err } const opUpdateReplicationJob = "UpdateReplicationJob" // UpdateReplicationJobRequest generates a "aws/request.Request" representing the // client's request for the UpdateReplicationJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateReplicationJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateReplicationJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateReplicationJobRequest method. // req, resp := client.UpdateReplicationJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SMS) UpdateReplicationJobRequest(input *UpdateReplicationJobInput) (req *request.Request, output *UpdateReplicationJobOutput) { op := &request.Operation{ Name: opUpdateReplicationJob, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateReplicationJobInput{} } req = c.newRequest(op, input, output) output = &UpdateReplicationJobOutput{} req.Data = output return } // UpdateReplicationJob API operation for AWS Server Migration Service. // // The UpdateReplicationJob API is used to change the settings of your existing // ReplicationJob created using CreateReplicationJob. Calling this API will // affect the next scheduled ReplicationRun. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Server Migration Service's // API operation UpdateReplicationJob for usage and error information. // // Returned Error Codes: // * InvalidParameterException // A parameter specified in the request is not valid, is unsupported, or cannot // be used. // // * MissingRequiredParameterException // The request is missing a required parameter. Ensure that you have supplied // all the required parameters for the request. // // * OperationNotPermittedException // The specified operation is not allowed. This error can occur for a number // of reasons; for example, you might be trying to start a Replication Run before // seed Replication Run. // // * UnauthorizedOperationException // This user does not have permissions to perform this operation. // // * ServerCannotBeReplicatedException // The provided server cannot be replicated. // // * ReplicationJobNotFoundException // The specified Replication Job cannot be found. // // * InternalError // An internal error has occured. // func (c *SMS) UpdateReplicationJob(input *UpdateReplicationJobInput) (*UpdateReplicationJobOutput, error) { req, out := c.UpdateReplicationJobRequest(input) err := req.Send() return out, err } // Object representing a Connector type Connector struct { _ struct{} `type:"structure"` // Timestamp of an operation AssociatedOn *time.Time `locationName:"associatedOn" type:"timestamp" timestampFormat:"unix"` // List of Connector Capabilities CapabilityList []*string `locationName:"capabilityList" locationNameList:"item" type:"list"` // Unique Identifier for Connector ConnectorId *string `locationName:"connectorId" type:"string"` // Internet Protocol (IP) Address IpAddress *string `locationName:"ipAddress" type:"string"` // Hardware (MAC) address MacAddress *string `locationName:"macAddress" type:"string"` // Status of on-premise Connector Status *string `locationName:"status" type:"string" enum:"ConnectorStatus"` // Connector version string Version *string `locationName:"version" type:"string"` // Unique Identifier for VM Manager VmManagerId *string `locationName:"vmManagerId" type:"string"` // VM Manager Name VmManagerName *string `locationName:"vmManagerName" type:"string"` // VM Management Product VmManagerType *string `locationName:"vmManagerType" type:"string" enum:"VmManagerType"` } // String returns the string representation func (s Connector) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Connector) GoString() string { return s.String() } type CreateReplicationJobInput struct { _ struct{} `type:"structure"` // The description for a Replication Job/Run. Description *string `locationName:"description" type:"string"` // Interval between Replication Runs. This value is specified in hours, and // represents the time between consecutive Replication Runs. // // Frequency is a required field Frequency *int64 `locationName:"frequency" type:"integer" required:"true"` // The license type to be used for the Amazon Machine Image (AMI) created after // a successful ReplicationRun. LicenseType *string `locationName:"licenseType" type:"string" enum:"LicenseType"` // Name of service role in customer's account to be used by SMS service. RoleName *string `locationName:"roleName" type:"string"` // Timestamp of an operation // // SeedReplicationTime is a required field SeedReplicationTime *time.Time `locationName:"seedReplicationTime" type:"timestamp" timestampFormat:"unix" required:"true"` // Unique Identifier for a server // // ServerId is a required field ServerId *string `locationName:"serverId" type:"string" required:"true"` } // String returns the string representation func (s CreateReplicationJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReplicationJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateReplicationJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateReplicationJobInput"} if s.Frequency == nil { invalidParams.Add(request.NewErrParamRequired("Frequency")) } if s.SeedReplicationTime == nil { invalidParams.Add(request.NewErrParamRequired("SeedReplicationTime")) } if s.ServerId == nil { invalidParams.Add(request.NewErrParamRequired("ServerId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateReplicationJobOutput struct { _ struct{} `type:"structure"` // The unique identifier for a Replication Job. ReplicationJobId *string `locationName:"replicationJobId" type:"string"` } // String returns the string representation func (s CreateReplicationJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateReplicationJobOutput) GoString() string { return s.String() } type DeleteReplicationJobInput struct { _ struct{} `type:"structure"` // The unique identifier for a Replication Job. // // ReplicationJobId is a required field ReplicationJobId *string `locationName:"replicationJobId" type:"string" required:"true"` } // String returns the string representation func (s DeleteReplicationJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteReplicationJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteReplicationJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteReplicationJobInput"} if s.ReplicationJobId == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationJobId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteReplicationJobOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteReplicationJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteReplicationJobOutput) GoString() string { return s.String() } type DeleteServerCatalogInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteServerCatalogInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteServerCatalogInput) GoString() string { return s.String() } type DeleteServerCatalogOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteServerCatalogOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteServerCatalogOutput) GoString() string { return s.String() } type DisassociateConnectorInput struct { _ struct{} `type:"structure"` // Unique Identifier for Connector // // ConnectorId is a required field ConnectorId *string `locationName:"connectorId" type:"string" required:"true"` } // String returns the string representation func (s DisassociateConnectorInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisassociateConnectorInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisassociateConnectorInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisassociateConnectorInput"} if s.ConnectorId == nil { invalidParams.Add(request.NewErrParamRequired("ConnectorId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DisassociateConnectorOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DisassociateConnectorOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisassociateConnectorOutput) GoString() string { return s.String() } type GetConnectorsInput struct { _ struct{} `type:"structure"` // The maximum number of results to return in one API call. If left empty, this // will default to 50. MaxResults *int64 `locationName:"maxResults" type:"integer"` // Pagination token to pass as input to API call NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s GetConnectorsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetConnectorsInput) GoString() string { return s.String() } type GetConnectorsOutput struct { _ struct{} `type:"structure"` // List of connectors ConnectorList []*Connector `locationName:"connectorList" locationNameList:"item" type:"list"` // Pagination token to pass as input to API call NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s GetConnectorsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetConnectorsOutput) GoString() string { return s.String() } type GetReplicationJobsInput struct { _ struct{} `type:"structure"` // The maximum number of results to return in one API call. If left empty, this // will default to 50. MaxResults *int64 `locationName:"maxResults" type:"integer"` // Pagination token to pass as input to API call NextToken *string `locationName:"nextToken" type:"string"` // The unique identifier for a Replication Job. ReplicationJobId *string `locationName:"replicationJobId" type:"string"` } // String returns the string representation func (s GetReplicationJobsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetReplicationJobsInput) GoString() string { return s.String() } type GetReplicationJobsOutput struct { _ struct{} `type:"structure"` // Pagination token to pass as input to API call NextToken *string `locationName:"nextToken" type:"string"` // List of Replication Jobs ReplicationJobList []*ReplicationJob `locationName:"replicationJobList" locationNameList:"item" type:"list"` } // String returns the string representation func (s GetReplicationJobsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetReplicationJobsOutput) GoString() string { return s.String() } type GetReplicationRunsInput struct { _ struct{} `type:"structure"` // The maximum number of results to return in one API call. If left empty, this // will default to 50. MaxResults *int64 `locationName:"maxResults" type:"integer"` // Pagination token to pass as input to API call NextToken *string `locationName:"nextToken" type:"string"` // The unique identifier for a Replication Job. // // ReplicationJobId is a required field ReplicationJobId *string `locationName:"replicationJobId" type:"string" required:"true"` } // String returns the string representation func (s GetReplicationRunsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetReplicationRunsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetReplicationRunsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetReplicationRunsInput"} if s.ReplicationJobId == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationJobId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetReplicationRunsOutput struct { _ struct{} `type:"structure"` // Pagination token to pass as input to API call NextToken *string `locationName:"nextToken" type:"string"` // Object representing a Replication Job ReplicationJob *ReplicationJob `locationName:"replicationJob" type:"structure"` // List of Replication Runs ReplicationRunList []*ReplicationRun `locationName:"replicationRunList" locationNameList:"item" type:"list"` } // String returns the string representation func (s GetReplicationRunsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetReplicationRunsOutput) GoString() string { return s.String() } type GetServersInput struct { _ struct{} `type:"structure"` // The maximum number of results to return in one API call. If left empty, this // will default to 50. MaxResults *int64 `locationName:"maxResults" type:"integer"` // Pagination token to pass as input to API call NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s GetServersInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetServersInput) GoString() string { return s.String() } type GetServersOutput struct { _ struct{} `type:"structure"` // Timestamp of an operation LastModifiedOn *time.Time `locationName:"lastModifiedOn" type:"timestamp" timestampFormat:"unix"` // Pagination token to pass as input to API call NextToken *string `locationName:"nextToken" type:"string"` // Status of Server catalog ServerCatalogStatus *string `locationName:"serverCatalogStatus" type:"string" enum:"ServerCatalogStatus"` // List of servers from catalog ServerList []*Server `locationName:"serverList" locationNameList:"item" type:"list"` } // String returns the string representation func (s GetServersOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetServersOutput) GoString() string { return s.String() } type ImportServerCatalogInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ImportServerCatalogInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportServerCatalogInput) GoString() string { return s.String() } type ImportServerCatalogOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ImportServerCatalogOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImportServerCatalogOutput) GoString() string { return s.String() } // Object representing a Replication Job type ReplicationJob struct { _ struct{} `type:"structure"` // The description for a Replication Job/Run. Description *string `locationName:"description" type:"string"` // Interval between Replication Runs. This value is specified in hours, and // represents the time between consecutive Replication Runs. Frequency *int64 `locationName:"frequency" type:"integer"` // The AMI id for the image resulting from a Replication Run. LatestAmiId *string `locationName:"latestAmiId" type:"string"` // The license type to be used for the Amazon Machine Image (AMI) created after // a successful ReplicationRun. LicenseType *string `locationName:"licenseType" type:"string" enum:"LicenseType"` // Timestamp of an operation NextReplicationRunStartTime *time.Time `locationName:"nextReplicationRunStartTime" type:"timestamp" timestampFormat:"unix"` // The unique identifier for a Replication Job. ReplicationJobId *string `locationName:"replicationJobId" type:"string"` // List of Replication Runs ReplicationRunList []*ReplicationRun `locationName:"replicationRunList" locationNameList:"item" type:"list"` // Name of service role in customer's account to be used by SMS service. RoleName *string `locationName:"roleName" type:"string"` // Timestamp of an operation SeedReplicationTime *time.Time `locationName:"seedReplicationTime" type:"timestamp" timestampFormat:"unix"` // Unique Identifier for a server ServerId *string `locationName:"serverId" type:"string"` // Type of server. ServerType *string `locationName:"serverType" type:"string" enum:"ServerType"` // Current state of Replication Job State *string `locationName:"state" type:"string" enum:"ReplicationJobState"` // String describing current status of Replication Job StatusMessage *string `locationName:"statusMessage" type:"string"` // Object representing a VM server VmServer *VmServer `locationName:"vmServer" type:"structure"` } // String returns the string representation func (s ReplicationJob) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplicationJob) GoString() string { return s.String() } // Object representing a Replication Run type ReplicationRun struct { _ struct{} `type:"structure"` // The AMI id for the image resulting from a Replication Run. AmiId *string `locationName:"amiId" type:"string"` // Timestamp of an operation CompletedTime *time.Time `locationName:"completedTime" type:"timestamp" timestampFormat:"unix"` // The description for a Replication Job/Run. Description *string `locationName:"description" type:"string"` // The unique identifier for a Replication Run. ReplicationRunId *string `locationName:"replicationRunId" type:"string"` // Timestamp of an operation ScheduledStartTime *time.Time `locationName:"scheduledStartTime" type:"timestamp" timestampFormat:"unix"` // Current state of Replication Run State *string `locationName:"state" type:"string" enum:"ReplicationRunState"` // String describing current status of Replication Run StatusMessage *string `locationName:"statusMessage" type:"string"` // Type of Replication Run Type *string `locationName:"type" type:"string" enum:"ReplicationRunType"` } // String returns the string representation func (s ReplicationRun) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReplicationRun) GoString() string { return s.String() } // Object representing a server type Server struct { _ struct{} `type:"structure"` // The unique identifier for a Replication Job. ReplicationJobId *string `locationName:"replicationJobId" type:"string"` // An indicator of the Replication Job being deleted or failed. ReplicationJobTerminated *bool `locationName:"replicationJobTerminated" type:"boolean"` // Unique Identifier for a server ServerId *string `locationName:"serverId" type:"string"` // Type of server. ServerType *string `locationName:"serverType" type:"string" enum:"ServerType"` // Object representing a VM server VmServer *VmServer `locationName:"vmServer" type:"structure"` } // String returns the string representation func (s Server) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Server) GoString() string { return s.String() } type StartOnDemandReplicationRunInput struct { _ struct{} `type:"structure"` // The description for a Replication Job/Run. Description *string `locationName:"description" type:"string"` // The unique identifier for a Replication Job. // // ReplicationJobId is a required field ReplicationJobId *string `locationName:"replicationJobId" type:"string" required:"true"` } // String returns the string representation func (s StartOnDemandReplicationRunInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartOnDemandReplicationRunInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartOnDemandReplicationRunInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartOnDemandReplicationRunInput"} if s.ReplicationJobId == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationJobId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type StartOnDemandReplicationRunOutput struct { _ struct{} `type:"structure"` // The unique identifier for a Replication Run. ReplicationRunId *string `locationName:"replicationRunId" type:"string"` } // String returns the string representation func (s StartOnDemandReplicationRunOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartOnDemandReplicationRunOutput) GoString() string { return s.String() } type UpdateReplicationJobInput struct { _ struct{} `type:"structure"` // The description for a Replication Job/Run. Description *string `locationName:"description" type:"string"` // Interval between Replication Runs. This value is specified in hours, and // represents the time between consecutive Replication Runs. Frequency *int64 `locationName:"frequency" type:"integer"` // The license type to be used for the Amazon Machine Image (AMI) created after // a successful ReplicationRun. LicenseType *string `locationName:"licenseType" type:"string" enum:"LicenseType"` // Timestamp of an operation NextReplicationRunStartTime *time.Time `locationName:"nextReplicationRunStartTime" type:"timestamp" timestampFormat:"unix"` // The unique identifier for a Replication Job. // // ReplicationJobId is a required field ReplicationJobId *string `locationName:"replicationJobId" type:"string" required:"true"` // Name of service role in customer's account to be used by SMS service. RoleName *string `locationName:"roleName" type:"string"` } // String returns the string representation func (s UpdateReplicationJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateReplicationJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateReplicationJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateReplicationJobInput"} if s.ReplicationJobId == nil { invalidParams.Add(request.NewErrParamRequired("ReplicationJobId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateReplicationJobOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateReplicationJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateReplicationJobOutput) GoString() string { return s.String() } // Object representing a VM server type VmServer struct { _ struct{} `type:"structure"` // VM Manager Name VmManagerName *string `locationName:"vmManagerName" type:"string"` // VM Management Product VmManagerType *string `locationName:"vmManagerType" type:"string" enum:"VmManagerType"` // Name of Virtual Machine VmName *string `locationName:"vmName" type:"string"` // Path to VM VmPath *string `locationName:"vmPath" type:"string"` // Object representing a server's location VmServerAddress *VmServerAddress `locationName:"vmServerAddress" type:"structure"` } // String returns the string representation func (s VmServer) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VmServer) GoString() string { return s.String() } // Object representing a server's location type VmServerAddress struct { _ struct{} `type:"structure"` // Unique Identifier for a VM VmId *string `locationName:"vmId" type:"string"` // Unique Identifier for VM Manager VmManagerId *string `locationName:"vmManagerId" type:"string"` } // String returns the string representation func (s VmServerAddress) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VmServerAddress) GoString() string { return s.String() } // Capabilities for a Connector const ( // ConnectorCapabilityVsphere is a ConnectorCapability enum value ConnectorCapabilityVsphere = "VSPHERE" ) // Status of on-premise Connector const ( // ConnectorStatusHealthy is a ConnectorStatus enum value ConnectorStatusHealthy = "HEALTHY" // ConnectorStatusUnhealthy is a ConnectorStatus enum value ConnectorStatusUnhealthy = "UNHEALTHY" ) // The license type to be used for the Amazon Machine Image (AMI) created after // a successful ReplicationRun. const ( // LicenseTypeAws is a LicenseType enum value LicenseTypeAws = "AWS" // LicenseTypeByol is a LicenseType enum value LicenseTypeByol = "BYOL" ) // Current state of Replication Job const ( // ReplicationJobStatePending is a ReplicationJobState enum value ReplicationJobStatePending = "PENDING" // ReplicationJobStateActive is a ReplicationJobState enum value ReplicationJobStateActive = "ACTIVE" // ReplicationJobStateFailed is a ReplicationJobState enum value ReplicationJobStateFailed = "FAILED" // ReplicationJobStateDeleting is a ReplicationJobState enum value ReplicationJobStateDeleting = "DELETING" // ReplicationJobStateDeleted is a ReplicationJobState enum value ReplicationJobStateDeleted = "DELETED" ) // Current state of Replication Run const ( // ReplicationRunStatePending is a ReplicationRunState enum value ReplicationRunStatePending = "PENDING" // ReplicationRunStateMissed is a ReplicationRunState enum value ReplicationRunStateMissed = "MISSED" // ReplicationRunStateActive is a ReplicationRunState enum value ReplicationRunStateActive = "ACTIVE" // ReplicationRunStateFailed is a ReplicationRunState enum value ReplicationRunStateFailed = "FAILED" // ReplicationRunStateCompleted is a ReplicationRunState enum value ReplicationRunStateCompleted = "COMPLETED" // ReplicationRunStateDeleting is a ReplicationRunState enum value ReplicationRunStateDeleting = "DELETING" // ReplicationRunStateDeleted is a ReplicationRunState enum value ReplicationRunStateDeleted = "DELETED" ) // Type of Replication Run const ( // ReplicationRunTypeOnDemand is a ReplicationRunType enum value ReplicationRunTypeOnDemand = "ON_DEMAND" // ReplicationRunTypeAutomatic is a ReplicationRunType enum value ReplicationRunTypeAutomatic = "AUTOMATIC" ) // Status of Server catalog const ( // ServerCatalogStatusNotImported is a ServerCatalogStatus enum value ServerCatalogStatusNotImported = "NOT_IMPORTED" // ServerCatalogStatusImporting is a ServerCatalogStatus enum value ServerCatalogStatusImporting = "IMPORTING" // ServerCatalogStatusAvailable is a ServerCatalogStatus enum value ServerCatalogStatusAvailable = "AVAILABLE" // ServerCatalogStatusDeleted is a ServerCatalogStatus enum value ServerCatalogStatusDeleted = "DELETED" // ServerCatalogStatusExpired is a ServerCatalogStatus enum value ServerCatalogStatusExpired = "EXPIRED" ) // Type of server. const ( // ServerTypeVirtualMachine is a ServerType enum value ServerTypeVirtualMachine = "VIRTUAL_MACHINE" ) // VM Management Product const ( // VmManagerTypeVsphere is a VmManagerType enum value VmManagerTypeVsphere = "VSPHERE" ) aws-sdk-go-1.4.22/service/sms/examples_test.go000066400000000000000000000152311300374646400212330ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package sms_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/sms" ) var _ time.Duration var _ bytes.Buffer func ExampleSMS_CreateReplicationJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sms.New(sess) params := &sms.CreateReplicationJobInput{ Frequency: aws.Int64(1), // Required SeedReplicationTime: aws.Time(time.Now()), // Required ServerId: aws.String("ServerId"), // Required Description: aws.String("Description"), LicenseType: aws.String("LicenseType"), RoleName: aws.String("RoleName"), } resp, err := svc.CreateReplicationJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSMS_DeleteReplicationJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sms.New(sess) params := &sms.DeleteReplicationJobInput{ ReplicationJobId: aws.String("ReplicationJobId"), // Required } resp, err := svc.DeleteReplicationJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSMS_DeleteServerCatalog() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sms.New(sess) var params *sms.DeleteServerCatalogInput resp, err := svc.DeleteServerCatalog(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSMS_DisassociateConnector() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sms.New(sess) params := &sms.DisassociateConnectorInput{ ConnectorId: aws.String("ConnectorId"), // Required } resp, err := svc.DisassociateConnector(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSMS_GetConnectors() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sms.New(sess) params := &sms.GetConnectorsInput{ MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.GetConnectors(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSMS_GetReplicationJobs() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sms.New(sess) params := &sms.GetReplicationJobsInput{ MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), ReplicationJobId: aws.String("ReplicationJobId"), } resp, err := svc.GetReplicationJobs(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSMS_GetReplicationRuns() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sms.New(sess) params := &sms.GetReplicationRunsInput{ ReplicationJobId: aws.String("ReplicationJobId"), // Required MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.GetReplicationRuns(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSMS_GetServers() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sms.New(sess) params := &sms.GetServersInput{ MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.GetServers(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSMS_ImportServerCatalog() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sms.New(sess) var params *sms.ImportServerCatalogInput resp, err := svc.ImportServerCatalog(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSMS_StartOnDemandReplicationRun() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sms.New(sess) params := &sms.StartOnDemandReplicationRunInput{ ReplicationJobId: aws.String("ReplicationJobId"), // Required Description: aws.String("Description"), } resp, err := svc.StartOnDemandReplicationRun(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSMS_UpdateReplicationJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sms.New(sess) params := &sms.UpdateReplicationJobInput{ ReplicationJobId: aws.String("ReplicationJobId"), // Required Description: aws.String("Description"), Frequency: aws.Int64(1), LicenseType: aws.String("LicenseType"), NextReplicationRunStartTime: aws.Time(time.Now()), RoleName: aws.String("RoleName"), } resp, err := svc.UpdateReplicationJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/sms/service.go000066400000000000000000000053241300374646400200200ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package sms import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Amazon Server Migration Service automates the process of migrating servers // to EC2. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type SMS struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "sms" // New creates a new instance of the SMS client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a SMS client from just a session. // svc := sms.New(mySession) // // // Create a SMS client with additional configuration // svc := sms.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *SMS { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *SMS { svc := &SMS{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2016-10-24", JSONVersion: "1.1", TargetPrefix: "AWSServerMigrationService_V2016_10_24", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a SMS operation and runs any // custom request initialization. func (c *SMS) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/sms/smsiface/000077500000000000000000000000001300374646400176175ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/sms/smsiface/interface.go000066400000000000000000000112211300374646400221030ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package smsiface provides an interface to enable mocking the AWS Server Migration Service service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package smsiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/sms" ) // SMSAPI provides an interface to enable mocking the // sms.SMS service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Server Migration Service. // func myFunc(svc smsiface.SMSAPI) bool { // // Make svc.CreateReplicationJob request // } // // func main() { // sess := session.New() // svc := sms.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockSMSClient struct { // smsiface.SMSAPI // } // func (m *mockSMSClient) CreateReplicationJob(input *sms.CreateReplicationJobInput) (*sms.CreateReplicationJobOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockSMSClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type SMSAPI interface { CreateReplicationJobRequest(*sms.CreateReplicationJobInput) (*request.Request, *sms.CreateReplicationJobOutput) CreateReplicationJob(*sms.CreateReplicationJobInput) (*sms.CreateReplicationJobOutput, error) DeleteReplicationJobRequest(*sms.DeleteReplicationJobInput) (*request.Request, *sms.DeleteReplicationJobOutput) DeleteReplicationJob(*sms.DeleteReplicationJobInput) (*sms.DeleteReplicationJobOutput, error) DeleteServerCatalogRequest(*sms.DeleteServerCatalogInput) (*request.Request, *sms.DeleteServerCatalogOutput) DeleteServerCatalog(*sms.DeleteServerCatalogInput) (*sms.DeleteServerCatalogOutput, error) DisassociateConnectorRequest(*sms.DisassociateConnectorInput) (*request.Request, *sms.DisassociateConnectorOutput) DisassociateConnector(*sms.DisassociateConnectorInput) (*sms.DisassociateConnectorOutput, error) GetConnectorsRequest(*sms.GetConnectorsInput) (*request.Request, *sms.GetConnectorsOutput) GetConnectors(*sms.GetConnectorsInput) (*sms.GetConnectorsOutput, error) GetConnectorsPages(*sms.GetConnectorsInput, func(*sms.GetConnectorsOutput, bool) bool) error GetReplicationJobsRequest(*sms.GetReplicationJobsInput) (*request.Request, *sms.GetReplicationJobsOutput) GetReplicationJobs(*sms.GetReplicationJobsInput) (*sms.GetReplicationJobsOutput, error) GetReplicationJobsPages(*sms.GetReplicationJobsInput, func(*sms.GetReplicationJobsOutput, bool) bool) error GetReplicationRunsRequest(*sms.GetReplicationRunsInput) (*request.Request, *sms.GetReplicationRunsOutput) GetReplicationRuns(*sms.GetReplicationRunsInput) (*sms.GetReplicationRunsOutput, error) GetReplicationRunsPages(*sms.GetReplicationRunsInput, func(*sms.GetReplicationRunsOutput, bool) bool) error GetServersRequest(*sms.GetServersInput) (*request.Request, *sms.GetServersOutput) GetServers(*sms.GetServersInput) (*sms.GetServersOutput, error) GetServersPages(*sms.GetServersInput, func(*sms.GetServersOutput, bool) bool) error ImportServerCatalogRequest(*sms.ImportServerCatalogInput) (*request.Request, *sms.ImportServerCatalogOutput) ImportServerCatalog(*sms.ImportServerCatalogInput) (*sms.ImportServerCatalogOutput, error) StartOnDemandReplicationRunRequest(*sms.StartOnDemandReplicationRunInput) (*request.Request, *sms.StartOnDemandReplicationRunOutput) StartOnDemandReplicationRun(*sms.StartOnDemandReplicationRunInput) (*sms.StartOnDemandReplicationRunOutput, error) UpdateReplicationJobRequest(*sms.UpdateReplicationJobInput) (*request.Request, *sms.UpdateReplicationJobOutput) UpdateReplicationJob(*sms.UpdateReplicationJobInput) (*sms.UpdateReplicationJobOutput, error) } var _ SMSAPI = (*sms.SMS)(nil) aws-sdk-go-1.4.22/service/snowball/000077500000000000000000000000001300374646400170445ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/snowball/api.go000066400000000000000000002164451300374646400201600ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package snowball provides a client for Amazon Import/Export Snowball. package snowball import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opCancelJob = "CancelJob" // CancelJobRequest generates a "aws/request.Request" representing the // client's request for the CancelJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CancelJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CancelJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CancelJobRequest method. // req, resp := client.CancelJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Snowball) CancelJobRequest(input *CancelJobInput) (req *request.Request, output *CancelJobOutput) { op := &request.Operation{ Name: opCancelJob, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CancelJobInput{} } req = c.newRequest(op, input, output) output = &CancelJobOutput{} req.Data = output return } // CancelJob API operation for Amazon Import/Export Snowball. // // Cancels the specified job. Note that you can only cancel a job before its // JobState value changes to PreparingAppliance. Requesting the ListJobs or // DescribeJob action will return a job's JobState as part of the response element // data returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Import/Export Snowball's // API operation CancelJob for usage and error information. // // Returned Error Codes: // * InvalidResourceException // The specified resource can't be found. Check the information you provided // in your last request, and try again. // // * InvalidJobStateException // The action can't be performed because the job's current state doesn't allow // that action to be performed. // // * KMSRequestFailedException // The provided AWS Key Management Service key lacks the permissions to perform // the specified CreateJob or UpdateJob action. // func (c *Snowball) CancelJob(input *CancelJobInput) (*CancelJobOutput, error) { req, out := c.CancelJobRequest(input) err := req.Send() return out, err } const opCreateAddress = "CreateAddress" // CreateAddressRequest generates a "aws/request.Request" representing the // client's request for the CreateAddress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateAddress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateAddress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateAddressRequest method. // req, resp := client.CreateAddressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Snowball) CreateAddressRequest(input *CreateAddressInput) (req *request.Request, output *CreateAddressOutput) { op := &request.Operation{ Name: opCreateAddress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateAddressInput{} } req = c.newRequest(op, input, output) output = &CreateAddressOutput{} req.Data = output return } // CreateAddress API operation for Amazon Import/Export Snowball. // // Creates an address for a Snowball to be shipped to. // // Addresses are validated at the time of creation. The address you provide // must be located within the serviceable area of your region. If the address // is invalid or unsupported, then an exception is thrown. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Import/Export Snowball's // API operation CreateAddress for usage and error information. // // Returned Error Codes: // * InvalidAddressException // The address provided was invalid. Check the address with your region's carrier, // and try again. // // * UnsupportedAddressException // The address is either outside the serviceable area for your region, or an // error occurred. Check the address with your region's carrier and try again. // If the issue persists, contact AWS Support. // func (c *Snowball) CreateAddress(input *CreateAddressInput) (*CreateAddressOutput, error) { req, out := c.CreateAddressRequest(input) err := req.Send() return out, err } const opCreateJob = "CreateJob" // CreateJobRequest generates a "aws/request.Request" representing the // client's request for the CreateJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateJobRequest method. // req, resp := client.CreateJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Snowball) CreateJobRequest(input *CreateJobInput) (req *request.Request, output *CreateJobOutput) { op := &request.Operation{ Name: opCreateJob, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateJobInput{} } req = c.newRequest(op, input, output) output = &CreateJobOutput{} req.Data = output return } // CreateJob API operation for Amazon Import/Export Snowball. // // Creates a job to import or export data between Amazon S3 and your on-premises // data center. Note that your AWS account must have the right trust policies // and permissions in place to create a job for Snowball. For more information, // see api-reference-policies. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Import/Export Snowball's // API operation CreateJob for usage and error information. // // Returned Error Codes: // * InvalidResourceException // The specified resource can't be found. Check the information you provided // in your last request, and try again. // // * KMSRequestFailedException // The provided AWS Key Management Service key lacks the permissions to perform // the specified CreateJob or UpdateJob action. // func (c *Snowball) CreateJob(input *CreateJobInput) (*CreateJobOutput, error) { req, out := c.CreateJobRequest(input) err := req.Send() return out, err } const opDescribeAddress = "DescribeAddress" // DescribeAddressRequest generates a "aws/request.Request" representing the // client's request for the DescribeAddress operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAddress for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAddress method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAddressRequest method. // req, resp := client.DescribeAddressRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Snowball) DescribeAddressRequest(input *DescribeAddressInput) (req *request.Request, output *DescribeAddressOutput) { op := &request.Operation{ Name: opDescribeAddress, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAddressInput{} } req = c.newRequest(op, input, output) output = &DescribeAddressOutput{} req.Data = output return } // DescribeAddress API operation for Amazon Import/Export Snowball. // // Takes an AddressId and returns specific details about that address in the // form of an Address object. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Import/Export Snowball's // API operation DescribeAddress for usage and error information. // // Returned Error Codes: // * InvalidResourceException // The specified resource can't be found. Check the information you provided // in your last request, and try again. // func (c *Snowball) DescribeAddress(input *DescribeAddressInput) (*DescribeAddressOutput, error) { req, out := c.DescribeAddressRequest(input) err := req.Send() return out, err } const opDescribeAddresses = "DescribeAddresses" // DescribeAddressesRequest generates a "aws/request.Request" representing the // client's request for the DescribeAddresses operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAddresses for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAddresses method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAddressesRequest method. // req, resp := client.DescribeAddressesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Snowball) DescribeAddressesRequest(input *DescribeAddressesInput) (req *request.Request, output *DescribeAddressesOutput) { op := &request.Operation{ Name: opDescribeAddresses, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &DescribeAddressesInput{} } req = c.newRequest(op, input, output) output = &DescribeAddressesOutput{} req.Data = output return } // DescribeAddresses API operation for Amazon Import/Export Snowball. // // Returns a specified number of ADDRESS objects. Calling this API in one of // the US regions will return addresses from the list of all addresses associated // with this account in all US regions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Import/Export Snowball's // API operation DescribeAddresses for usage and error information. // // Returned Error Codes: // * InvalidResourceException // The specified resource can't be found. Check the information you provided // in your last request, and try again. // func (c *Snowball) DescribeAddresses(input *DescribeAddressesInput) (*DescribeAddressesOutput, error) { req, out := c.DescribeAddressesRequest(input) err := req.Send() return out, err } // DescribeAddressesPages iterates over the pages of a DescribeAddresses operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeAddresses method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeAddresses operation. // pageNum := 0 // err := client.DescribeAddressesPages(params, // func(page *DescribeAddressesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Snowball) DescribeAddressesPages(input *DescribeAddressesInput, fn func(p *DescribeAddressesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeAddressesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeAddressesOutput), lastPage) }) } const opDescribeJob = "DescribeJob" // DescribeJobRequest generates a "aws/request.Request" representing the // client's request for the DescribeJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeJobRequest method. // req, resp := client.DescribeJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Snowball) DescribeJobRequest(input *DescribeJobInput) (req *request.Request, output *DescribeJobOutput) { op := &request.Operation{ Name: opDescribeJob, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeJobInput{} } req = c.newRequest(op, input, output) output = &DescribeJobOutput{} req.Data = output return } // DescribeJob API operation for Amazon Import/Export Snowball. // // Returns information about a specific job including shipping information, // job status, and other important metadata. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Import/Export Snowball's // API operation DescribeJob for usage and error information. // // Returned Error Codes: // * InvalidResourceException // The specified resource can't be found. Check the information you provided // in your last request, and try again. // func (c *Snowball) DescribeJob(input *DescribeJobInput) (*DescribeJobOutput, error) { req, out := c.DescribeJobRequest(input) err := req.Send() return out, err } const opGetJobManifest = "GetJobManifest" // GetJobManifestRequest generates a "aws/request.Request" representing the // client's request for the GetJobManifest operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetJobManifest for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetJobManifest method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetJobManifestRequest method. // req, resp := client.GetJobManifestRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Snowball) GetJobManifestRequest(input *GetJobManifestInput) (req *request.Request, output *GetJobManifestOutput) { op := &request.Operation{ Name: opGetJobManifest, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetJobManifestInput{} } req = c.newRequest(op, input, output) output = &GetJobManifestOutput{} req.Data = output return } // GetJobManifest API operation for Amazon Import/Export Snowball. // // Returns a link to an Amazon S3 presigned URL for the manifest file associated // with the specified JobId value. You can access the manifest file for up to // 60 minutes after this request has been made. To access the manifest file // after 60 minutes have passed, you'll have to make another call to the GetJobManifest // action. // // The manifest is an encrypted file that you can download after your job enters // the WithCustomer status. The manifest is decrypted by using the UnlockCode // code value, when you pass both values to the Snowball through the Snowball // client when the client is started for the first time. // // As a best practice, we recommend that you don't save a copy of an UnlockCode // value in the same location as the manifest file for that job. Saving these // separately helps prevent unauthorized parties from gaining access to the // Snowball associated with that job. // // Note that the credentials of a given job, including its manifest file and // unlock code, expire 90 days after the job is created. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Import/Export Snowball's // API operation GetJobManifest for usage and error information. // // Returned Error Codes: // * InvalidResourceException // The specified resource can't be found. Check the information you provided // in your last request, and try again. // // * InvalidJobStateException // The action can't be performed because the job's current state doesn't allow // that action to be performed. // func (c *Snowball) GetJobManifest(input *GetJobManifestInput) (*GetJobManifestOutput, error) { req, out := c.GetJobManifestRequest(input) err := req.Send() return out, err } const opGetJobUnlockCode = "GetJobUnlockCode" // GetJobUnlockCodeRequest generates a "aws/request.Request" representing the // client's request for the GetJobUnlockCode operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetJobUnlockCode for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetJobUnlockCode method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetJobUnlockCodeRequest method. // req, resp := client.GetJobUnlockCodeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Snowball) GetJobUnlockCodeRequest(input *GetJobUnlockCodeInput) (req *request.Request, output *GetJobUnlockCodeOutput) { op := &request.Operation{ Name: opGetJobUnlockCode, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetJobUnlockCodeInput{} } req = c.newRequest(op, input, output) output = &GetJobUnlockCodeOutput{} req.Data = output return } // GetJobUnlockCode API operation for Amazon Import/Export Snowball. // // Returns the UnlockCode code value for the specified job. A particular UnlockCode // value can be accessed for up to 90 days after the associated job has been // created. // // The UnlockCode value is a 29-character code with 25 alphanumeric characters // and 4 hyphens. This code is used to decrypt the manifest file when it is // passed along with the manifest to the Snowball through the Snowball client // when the client is started for the first time. // // As a best practice, we recommend that you don't save a copy of the UnlockCode // in the same location as the manifest file for that job. Saving these separately // helps prevent unauthorized parties from gaining access to the Snowball associated // with that job. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Import/Export Snowball's // API operation GetJobUnlockCode for usage and error information. // // Returned Error Codes: // * InvalidResourceException // The specified resource can't be found. Check the information you provided // in your last request, and try again. // // * InvalidJobStateException // The action can't be performed because the job's current state doesn't allow // that action to be performed. // func (c *Snowball) GetJobUnlockCode(input *GetJobUnlockCodeInput) (*GetJobUnlockCodeOutput, error) { req, out := c.GetJobUnlockCodeRequest(input) err := req.Send() return out, err } const opGetSnowballUsage = "GetSnowballUsage" // GetSnowballUsageRequest generates a "aws/request.Request" representing the // client's request for the GetSnowballUsage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetSnowballUsage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetSnowballUsage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetSnowballUsageRequest method. // req, resp := client.GetSnowballUsageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Snowball) GetSnowballUsageRequest(input *GetSnowballUsageInput) (req *request.Request, output *GetSnowballUsageOutput) { op := &request.Operation{ Name: opGetSnowballUsage, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetSnowballUsageInput{} } req = c.newRequest(op, input, output) output = &GetSnowballUsageOutput{} req.Data = output return } // GetSnowballUsage API operation for Amazon Import/Export Snowball. // // Returns information about the Snowball service limit for your account, and // also the number of Snowballs your account has in use. // // Note that the default service limit for the number of Snowballs that you // can have at one time is 1. If you want to increase your service limit, contact // AWS Support. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Import/Export Snowball's // API operation GetSnowballUsage for usage and error information. func (c *Snowball) GetSnowballUsage(input *GetSnowballUsageInput) (*GetSnowballUsageOutput, error) { req, out := c.GetSnowballUsageRequest(input) err := req.Send() return out, err } const opListJobs = "ListJobs" // ListJobsRequest generates a "aws/request.Request" representing the // client's request for the ListJobs operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListJobs for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListJobs method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListJobsRequest method. // req, resp := client.ListJobsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Snowball) ListJobsRequest(input *ListJobsInput) (req *request.Request, output *ListJobsOutput) { op := &request.Operation{ Name: opListJobs, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &ListJobsInput{} } req = c.newRequest(op, input, output) output = &ListJobsOutput{} req.Data = output return } // ListJobs API operation for Amazon Import/Export Snowball. // // Returns an array of JobListEntry objects of the specified length. Each JobListEntry // object contains a job's state, a job's ID, and a value that indicates whether // the job is a job part, in the case of export jobs. Calling this API action // in one of the US regions will return jobs from the list of all jobs associated // with this account in all US regions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Import/Export Snowball's // API operation ListJobs for usage and error information. func (c *Snowball) ListJobs(input *ListJobsInput) (*ListJobsOutput, error) { req, out := c.ListJobsRequest(input) err := req.Send() return out, err } // ListJobsPages iterates over the pages of a ListJobs operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListJobs method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListJobs operation. // pageNum := 0 // err := client.ListJobsPages(params, // func(page *ListJobsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Snowball) ListJobsPages(input *ListJobsInput, fn func(p *ListJobsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListJobsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListJobsOutput), lastPage) }) } const opUpdateJob = "UpdateJob" // UpdateJobRequest generates a "aws/request.Request" representing the // client's request for the UpdateJob operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateJob for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateJob method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateJobRequest method. // req, resp := client.UpdateJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Snowball) UpdateJobRequest(input *UpdateJobInput) (req *request.Request, output *UpdateJobOutput) { op := &request.Operation{ Name: opUpdateJob, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateJobInput{} } req = c.newRequest(op, input, output) output = &UpdateJobOutput{} req.Data = output return } // UpdateJob API operation for Amazon Import/Export Snowball. // // While a job's JobState value is New, you can update some of the information // associated with a job. Once the job changes to a different job state, usually // within 60 minutes of the job being created, this action is no longer available. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Import/Export Snowball's // API operation UpdateJob for usage and error information. // // Returned Error Codes: // * InvalidResourceException // The specified resource can't be found. Check the information you provided // in your last request, and try again. // // * InvalidJobStateException // The action can't be performed because the job's current state doesn't allow // that action to be performed. // // * KMSRequestFailedException // The provided AWS Key Management Service key lacks the permissions to perform // the specified CreateJob or UpdateJob action. // func (c *Snowball) UpdateJob(input *UpdateJobInput) (*UpdateJobOutput, error) { req, out := c.UpdateJobRequest(input) err := req.Send() return out, err } // The address that you want the Snowball or Snowballs associated with a specific // job to be shipped to. Addresses are validated at the time of creation. The // address you provide must be located within the serviceable area of your region. // Although no individual elements of the Address are required, if the address // is invalid or unsupported, then an exception is thrown. type Address struct { _ struct{} `type:"structure"` // The unique ID for an address. AddressId *string `min:"40" type:"string"` // The city in an address that a Snowball is to be delivered to. City *string `min:"1" type:"string"` // The name of the company to receive a Snowball at an address. Company *string `min:"1" type:"string"` // The country in an address that a Snowball is to be delivered to. Country *string `min:"1" type:"string"` // A landmark listed in an address that a Snowball is to be delivered to. Landmark *string `min:"1" type:"string"` // The name of a person to receive a Snowball at an address. Name *string `min:"1" type:"string"` // The phone number associated with an address that a Snowball is to be delivered // to. PhoneNumber *string `min:"1" type:"string"` // The postal code in an address that a Snowball is to be delivered to. PostalCode *string `min:"1" type:"string"` // The prefecture or district in an address that a Snowball is to be delivered // to. PrefectureOrDistrict *string `min:"1" type:"string"` // The state or province in an address that a Snowball is to be delivered to. StateOrProvince *string `min:"1" type:"string"` // The first line in a street address that a Snowball is to be delivered to. Street1 *string `min:"1" type:"string"` // The second line in a street address that a Snowball is to be delivered to. Street2 *string `min:"1" type:"string"` // The third line in a street address that a Snowball is to be delivered to. Street3 *string `min:"1" type:"string"` } // String returns the string representation func (s Address) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Address) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Address) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Address"} if s.AddressId != nil && len(*s.AddressId) < 40 { invalidParams.Add(request.NewErrParamMinLen("AddressId", 40)) } if s.City != nil && len(*s.City) < 1 { invalidParams.Add(request.NewErrParamMinLen("City", 1)) } if s.Company != nil && len(*s.Company) < 1 { invalidParams.Add(request.NewErrParamMinLen("Company", 1)) } if s.Country != nil && len(*s.Country) < 1 { invalidParams.Add(request.NewErrParamMinLen("Country", 1)) } if s.Landmark != nil && len(*s.Landmark) < 1 { invalidParams.Add(request.NewErrParamMinLen("Landmark", 1)) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.PhoneNumber != nil && len(*s.PhoneNumber) < 1 { invalidParams.Add(request.NewErrParamMinLen("PhoneNumber", 1)) } if s.PostalCode != nil && len(*s.PostalCode) < 1 { invalidParams.Add(request.NewErrParamMinLen("PostalCode", 1)) } if s.PrefectureOrDistrict != nil && len(*s.PrefectureOrDistrict) < 1 { invalidParams.Add(request.NewErrParamMinLen("PrefectureOrDistrict", 1)) } if s.StateOrProvince != nil && len(*s.StateOrProvince) < 1 { invalidParams.Add(request.NewErrParamMinLen("StateOrProvince", 1)) } if s.Street1 != nil && len(*s.Street1) < 1 { invalidParams.Add(request.NewErrParamMinLen("Street1", 1)) } if s.Street2 != nil && len(*s.Street2) < 1 { invalidParams.Add(request.NewErrParamMinLen("Street2", 1)) } if s.Street3 != nil && len(*s.Street3) < 1 { invalidParams.Add(request.NewErrParamMinLen("Street3", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CancelJobInput struct { _ struct{} `type:"structure"` // The 39 character job ID for the job that you want to cancel, for example // JID123e4567-e89b-12d3-a456-426655440000. // // JobId is a required field JobId *string `min:"39" type:"string" required:"true"` } // String returns the string representation func (s CancelJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CancelJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelJobInput"} if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.JobId != nil && len(*s.JobId) < 39 { invalidParams.Add(request.NewErrParamMinLen("JobId", 39)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CancelJobOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CancelJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelJobOutput) GoString() string { return s.String() } type CreateAddressInput struct { _ struct{} `type:"structure"` // The address that you want the Snowball shipped to. // // Address is a required field Address *Address `type:"structure" required:"true"` } // String returns the string representation func (s CreateAddressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAddressInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateAddressInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateAddressInput"} if s.Address == nil { invalidParams.Add(request.NewErrParamRequired("Address")) } if s.Address != nil { if err := s.Address.Validate(); err != nil { invalidParams.AddNested("Address", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateAddressOutput struct { _ struct{} `type:"structure"` // The automatically generated ID for a specific address. You'll use this ID // when you create a job to specify which address you want the Snowball for // that job shipped to. AddressId *string `min:"1" type:"string"` } // String returns the string representation func (s CreateAddressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAddressOutput) GoString() string { return s.String() } type CreateJobInput struct { _ struct{} `type:"structure"` // The ID for the address that you want the Snowball shipped to. // // AddressId is a required field AddressId *string `min:"40" type:"string" required:"true"` // Defines an optional description of this specific job, for example Important // Photos 2016-08-11. Description *string `min:"1" type:"string"` // Defines the type of job that you're creating. // // JobType is a required field JobType *string `type:"string" required:"true" enum:"JobType"` // The KmsKeyARN that you want to associate with this job. KmsKeyARNs are created // using the CreateKey (http://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html) // AWS Key Management Service (KMS) API action. KmsKeyARN *string `type:"string"` // Defines the Amazon Simple Notification Service (Amazon SNS) notification // settings for this job. Notification *Notification `type:"structure"` // Defines the Amazon S3 buckets associated with this job. // // With IMPORT jobs, you specify the bucket or buckets that your transferred // data will be imported into. // // With EXPORT jobs, you specify the bucket or buckets that your transferred // data will be exported from. Optionally, you can also specify a KeyRange value. // If you choose to export a range, you define the length of the range by providing // either an inclusive BeginMarker value, an inclusive EndMarker value, or both. // Ranges are UTF-8 binary sorted. // // Resources is a required field Resources *JobResource `type:"structure" required:"true"` // The RoleARN that you want to associate with this job. RoleArns are created // using the CreateRole (http://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html) // AWS Identity and Access Management (IAM) API action. // // RoleARN is a required field RoleARN *string `type:"string" required:"true"` // The shipping speed for this job. Note that this speed does not dictate how // soon you'll get the Snowball, rather it represents how quickly the Snowball // moves to its destination while in transit. Regional shipping speeds are as // follows: // // * In Australia, you have access to express shipping. Typically, Snowballs // shipped express are delivered in about a day. // // * In the European Union (EU), you have access to express shipping. Typically, // Snowballs shipped express are delivered in about a day. In addition, most // countries in the EU have access to standard shipping, which typically // takes less than a week, one way. // // * In India, Snowballs are delivered in one to seven days. // // * In the US, you have access to one-day shipping and two-day shipping. // // ShippingOption is a required field ShippingOption *string `type:"string" required:"true" enum:"ShippingOption"` // If your job is being created in one of the US regions, you have the option // of specifying what size Snowball you'd like for this job. In all other regions, // Snowballs come with 80 TB in storage capacity. SnowballCapacityPreference *string `type:"string" enum:"Capacity"` } // String returns the string representation func (s CreateJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateJobInput"} if s.AddressId == nil { invalidParams.Add(request.NewErrParamRequired("AddressId")) } if s.AddressId != nil && len(*s.AddressId) < 40 { invalidParams.Add(request.NewErrParamMinLen("AddressId", 40)) } if s.Description != nil && len(*s.Description) < 1 { invalidParams.Add(request.NewErrParamMinLen("Description", 1)) } if s.JobType == nil { invalidParams.Add(request.NewErrParamRequired("JobType")) } if s.Resources == nil { invalidParams.Add(request.NewErrParamRequired("Resources")) } if s.RoleARN == nil { invalidParams.Add(request.NewErrParamRequired("RoleARN")) } if s.ShippingOption == nil { invalidParams.Add(request.NewErrParamRequired("ShippingOption")) } if s.Resources != nil { if err := s.Resources.Validate(); err != nil { invalidParams.AddNested("Resources", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateJobOutput struct { _ struct{} `type:"structure"` // The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000. JobId *string `min:"39" type:"string"` } // String returns the string representation func (s CreateJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateJobOutput) GoString() string { return s.String() } // Defines the real-time status of a Snowball's data transfer while the appliance // is at AWS. Note that this data is only available while a job has a JobState // value of InProgress, for both import and export jobs. type DataTransfer struct { _ struct{} `type:"structure"` // The number of bytes transferred between a Snowball and Amazon S3. BytesTransferred *int64 `type:"long"` // The number of objects transferred between a Snowball and Amazon S3. ObjectsTransferred *int64 `type:"long"` // The total bytes of data for a transfer between a Snowball and Amazon S3. // This value is set to 0 (zero) until all the keys that will be transferred // have been listed. TotalBytes *int64 `type:"long"` // The total number of objects for a transfer between a Snowball and Amazon // S3. This value is set to 0 (zero) until all the keys that will be transferred // have been listed. TotalObjects *int64 `type:"long"` } // String returns the string representation func (s DataTransfer) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DataTransfer) GoString() string { return s.String() } type DescribeAddressInput struct { _ struct{} `type:"structure"` // The automatically generated ID for a specific address. // // AddressId is a required field AddressId *string `min:"40" type:"string" required:"true"` } // String returns the string representation func (s DescribeAddressInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAddressInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeAddressInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeAddressInput"} if s.AddressId == nil { invalidParams.Add(request.NewErrParamRequired("AddressId")) } if s.AddressId != nil && len(*s.AddressId) < 40 { invalidParams.Add(request.NewErrParamMinLen("AddressId", 40)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeAddressOutput struct { _ struct{} `type:"structure"` // The address that you want the Snowball or Snowballs associated with a specific // job to be shipped to. Address *Address `type:"structure"` } // String returns the string representation func (s DescribeAddressOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAddressOutput) GoString() string { return s.String() } type DescribeAddressesInput struct { _ struct{} `type:"structure"` // The number of ADDRESS objects to return. MaxResults *int64 `type:"integer"` // HTTP requests are stateless. To identify what object comes "next" in the // list of ADDRESS objects, you have the option of specifying a value for NextToken // as the starting point for your list of returned addresses. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeAddressesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAddressesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeAddressesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeAddressesInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeAddressesOutput struct { _ struct{} `type:"structure"` // The Snowball shipping addresses that were created for this account. Addresses []*Address `type:"list"` // HTTP requests are stateless. If you use the automatically generated NextToken // value in your next DescribeAddresses call, your list of returned addresses // will start from this point in the array. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeAddressesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAddressesOutput) GoString() string { return s.String() } type DescribeJobInput struct { _ struct{} `type:"structure"` // The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000. // // JobId is a required field JobId *string `min:"39" type:"string" required:"true"` } // String returns the string representation func (s DescribeJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeJobInput"} if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.JobId != nil && len(*s.JobId) < 39 { invalidParams.Add(request.NewErrParamMinLen("JobId", 39)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeJobOutput struct { _ struct{} `type:"structure"` // Information about a specific job, including shipping information, job status, // and other important metadata. JobMetadata *JobMetadata `type:"structure"` // Information about a specific job part (in the case of an export job), including // shipping information, job status, and other important metadata. SubJobMetadata []*JobMetadata `type:"list"` } // String returns the string representation func (s DescribeJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeJobOutput) GoString() string { return s.String() } type GetJobManifestInput struct { _ struct{} `type:"structure"` // The ID for a job that you want to get the manifest file for, for example // JID123e4567-e89b-12d3-a456-426655440000. // // JobId is a required field JobId *string `min:"39" type:"string" required:"true"` } // String returns the string representation func (s GetJobManifestInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetJobManifestInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetJobManifestInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetJobManifestInput"} if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.JobId != nil && len(*s.JobId) < 39 { invalidParams.Add(request.NewErrParamMinLen("JobId", 39)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetJobManifestOutput struct { _ struct{} `type:"structure"` // The Amazon S3 presigned URL for the manifest file associated with the specified // JobId value. ManifestURI *string `min:"1" type:"string"` } // String returns the string representation func (s GetJobManifestOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetJobManifestOutput) GoString() string { return s.String() } type GetJobUnlockCodeInput struct { _ struct{} `type:"structure"` // The ID for the job that you want to get the UnlockCode value for, for example // JID123e4567-e89b-12d3-a456-426655440000. // // JobId is a required field JobId *string `min:"39" type:"string" required:"true"` } // String returns the string representation func (s GetJobUnlockCodeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetJobUnlockCodeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetJobUnlockCodeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetJobUnlockCodeInput"} if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.JobId != nil && len(*s.JobId) < 39 { invalidParams.Add(request.NewErrParamMinLen("JobId", 39)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetJobUnlockCodeOutput struct { _ struct{} `type:"structure"` // The UnlockCode value for the specified job. The UnlockCode value can be accessed // for up to 90 days after the job has been created. UnlockCode *string `min:"1" type:"string"` } // String returns the string representation func (s GetJobUnlockCodeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetJobUnlockCodeOutput) GoString() string { return s.String() } type GetSnowballUsageInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GetSnowballUsageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSnowballUsageInput) GoString() string { return s.String() } type GetSnowballUsageOutput struct { _ struct{} `type:"structure"` // The service limit for number of Snowballs this account can have at once. // The default service limit is 1 (one). SnowballLimit *int64 `type:"integer"` // The number of Snowballs that this account is currently using. SnowballsInUse *int64 `type:"integer"` } // String returns the string representation func (s GetSnowballUsageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSnowballUsageOutput) GoString() string { return s.String() } // Each JobListEntry object contains a job's state, a job's ID, and a value // that indicates whether the job is a job part, in the case of an export job. type JobListEntry struct { _ struct{} `type:"structure"` // A value that indicates that this job is a master job. A master job represents // a successful request to create an export job. Master jobs aren't associated // with any Snowballs. Instead, each master job will have at least one job part, // and each job part is associated with a Snowball. It might take some time // before the job parts associated with a particular master job are listed, // because they are created after the master job is created. IsMaster *bool `type:"boolean"` // The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000. JobId *string `min:"1" type:"string"` // The current state of this job. JobState *string `type:"string" enum:"JobState"` } // String returns the string representation func (s JobListEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobListEntry) GoString() string { return s.String() } // Contains job logs. Whenever Snowball is used to import data into or export // data out of Amazon S3, you'll have the option of downloading a PDF job report. // Job logs are returned as a part of the response syntax of the DescribeJob // action in the JobMetadata data type. The job logs can be accessed for up // to 60 minutes after this request has been made. To access any of the job // logs after 60 minutes have passed, you'll have to make another call to the // DescribeJob action. // // For import jobs, the PDF job report becomes available at the end of the import // process. For export jobs, your job report typically becomes available while // the Snowball for your job part is being delivered to you. // // The job report provides you insight into the state of your Amazon S3 data // transfer. The report includes details about your job or job part for your // records. // // For deeper visibility into the status of your transferred objects, you can // look at the two associated logs: a success log and a failure log. The logs // are saved in comma-separated value (CSV) format, and the name of each log // includes the ID of the job or job part that the log describes. type JobLogs struct { _ struct{} `type:"structure"` // A link to an Amazon S3 presigned URL where the job completion report is located. JobCompletionReportURI *string `min:"1" type:"string"` // A link to an Amazon S3 presigned URL where the job failure log is located. JobFailureLogURI *string `min:"1" type:"string"` // A link to an Amazon S3 presigned URL where the job success log is located. JobSuccessLogURI *string `min:"1" type:"string"` } // String returns the string representation func (s JobLogs) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobLogs) GoString() string { return s.String() } // Contains information about a specific job including shipping information, // job status, and other important metadata. This information is returned as // a part of the response syntax of the DescribeJob action. type JobMetadata struct { _ struct{} `type:"structure"` // The ID for the address that you want the Snowball shipped to. AddressId *string `min:"40" type:"string"` // The creation date for this job. CreationDate *time.Time `type:"timestamp" timestampFormat:"unix"` // A value that defines the real-time status of a Snowball's data transfer while // the appliance is at AWS. Note that this data is only available while a job // has a JobState value of InProgress, for both import and export jobs. DataTransferProgress *DataTransfer `type:"structure"` // The description of the job, provided at job creation. Description *string `min:"1" type:"string"` // The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000. JobId *string `min:"1" type:"string"` // Links to Amazon S3 presigned URLs for the job report and logs. For import // jobs, the PDF job report becomes available at the end of the import process. // For export jobs, your job report typically becomes available while the Snowball // for your job part is being delivered to you. JobLogInfo *JobLogs `type:"structure"` // The current state of the jobs. JobState *string `type:"string" enum:"JobState"` // The type of job. JobType *string `type:"string" enum:"JobType"` // The Amazon Resource Name (ARN) for the AWS Key Management Service (AWS KMS) // key associated with this job. This ARN was created using the CreateKey API // action in AWS KMS. KmsKeyARN *string `type:"string"` // The Amazon Simple Notification Service (Amazon SNS) notification settings // associated with a specific job. The Notification object is returned as a // part of the response syntax of the DescribeJob action in the JobMetadata // data type. Notification *Notification `type:"structure"` // An array of S3Resource objects. Each S3Resource object represents an Amazon // S3 bucket that your transferred data will be exported from or imported into. Resources *JobResource `type:"structure"` // The role ARN associated with this job. This ARN was created using the CreateRole // API action in AWS Identity and Access Management (IAM). RoleARN *string `type:"string"` // A job's shipping information, including inbound and outbound tracking numbers // and shipping speed options. ShippingDetails *ShippingDetails `type:"structure"` // The Snowball capacity preference for this job, specified at job creation. // In US regions, you can choose between 50 TB and 80 TB Snowballs. All other // regions use 80 TB capacity Snowballs. SnowballCapacityPreference *string `type:"string" enum:"Capacity"` } // String returns the string representation func (s JobMetadata) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobMetadata) GoString() string { return s.String() } // Contains an array of S3Resource objects. Each S3Resource object represents // an Amazon S3 bucket that your transferred data will be exported from or imported // into. type JobResource struct { _ struct{} `type:"structure"` // An array of S3Resource objects. S3Resources []*S3Resource `type:"list"` } // String returns the string representation func (s JobResource) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobResource) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *JobResource) Validate() error { invalidParams := request.ErrInvalidParams{Context: "JobResource"} if s.S3Resources != nil { for i, v := range s.S3Resources { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "S3Resources", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains a key range. For export jobs, a S3Resource object can have an optional // KeyRange value. The length of the range is defined at job creation, and has // either an inclusive BeginMarker, an inclusive EndMarker, or both. Ranges // are UTF-8 binary sorted. type KeyRange struct { _ struct{} `type:"structure"` // The key that starts an optional key range for an export job. Ranges are inclusive // and UTF-8 binary sorted. BeginMarker *string `min:"1" type:"string"` // The key that ends an optional key range for an export job. Ranges are inclusive // and UTF-8 binary sorted. EndMarker *string `min:"1" type:"string"` } // String returns the string representation func (s KeyRange) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s KeyRange) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *KeyRange) Validate() error { invalidParams := request.ErrInvalidParams{Context: "KeyRange"} if s.BeginMarker != nil && len(*s.BeginMarker) < 1 { invalidParams.Add(request.NewErrParamMinLen("BeginMarker", 1)) } if s.EndMarker != nil && len(*s.EndMarker) < 1 { invalidParams.Add(request.NewErrParamMinLen("EndMarker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListJobsInput struct { _ struct{} `type:"structure"` // The number of JobListEntry objects to return. MaxResults *int64 `type:"integer"` // HTTP requests are stateless. To identify what object comes "next" in the // list of JobListEntry objects, you have the option of specifying NextToken // as the starting point for your returned list. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s ListJobsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListJobsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListJobsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListJobsInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListJobsOutput struct { _ struct{} `type:"structure"` // Each JobListEntry object contains a job's state, a job's ID, and a value // that indicates whether the job is a job part, in the case of export jobs. JobListEntries []*JobListEntry `type:"list"` // HTTP requests are stateless. If you use this automatically generated NextToken // value in your next ListJobs call, your returned JobListEntry objects will // start from this point in the array. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s ListJobsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListJobsOutput) GoString() string { return s.String() } // The Amazon Simple Notification Service (Amazon SNS) notification settings // associated with a specific job. The Notification object is returned as a // part of the response syntax of the DescribeJob action in the JobMetadata // data type. // // When the notification settings are defined during job creation, you can choose // to notify based on a specific set of job states using the JobStatesToNotify // array of strings, or you can specify that you want to have Amazon SNS notifications // sent out for all job states with NotifyAll set to true. type Notification struct { _ struct{} `type:"structure"` // The list of job states that will trigger a notification for this job. JobStatesToNotify []*string `type:"list"` // Any change in job state will trigger a notification for this job. NotifyAll *bool `type:"boolean"` // The new SNS TopicArn that you want to associate with this job. You can create // Amazon Resource Names (ARNs) for topics by using the CreateTopic (http://docs.aws.amazon.com/sns/latest/api/API_CreateTopic.html) // Amazon SNS API action. // // Note that you can subscribe email addresses to an Amazon SNS topic through // the AWS Management Console, or by using the Subscribe (http://docs.aws.amazon.com/sns/latest/api/API_Subscribe.html) // AWS Simple Notification Service (SNS) API action. SnsTopicARN *string `type:"string"` } // String returns the string representation func (s Notification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Notification) GoString() string { return s.String() } // Each S3Resource object represents an Amazon S3 bucket that your transferred // data will be exported from or imported into. For export jobs, this object // can have an optional KeyRange value. The length of the range is defined at // job creation, and has either an inclusive BeginMarker, an inclusive EndMarker, // or both. Ranges are UTF-8 binary sorted. type S3Resource struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of an Amazon S3 bucket. BucketArn *string `type:"string"` // For export jobs, you can provide an optional KeyRange within a specific Amazon // S3 bucket. The length of the range is defined at job creation, and has either // an inclusive BeginMarker, an inclusive EndMarker, or both. Ranges are UTF-8 // binary sorted. KeyRange *KeyRange `type:"structure"` } // String returns the string representation func (s S3Resource) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s S3Resource) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *S3Resource) Validate() error { invalidParams := request.ErrInvalidParams{Context: "S3Resource"} if s.KeyRange != nil { if err := s.KeyRange.Validate(); err != nil { invalidParams.AddNested("KeyRange", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The Status and TrackingNumber information for an inbound or outbound shipment. type Shipment struct { _ struct{} `type:"structure"` // Status information for a shipment. Valid statuses include NEW, IN_TRANSIT, // and DELIVERED. Status *string `min:"1" type:"string"` // The tracking number for this job. Using this tracking number with your region's // carrier's website, you can track a Snowball as the carrier transports it. // // For India, the carrier is Amazon Logistics. For all other regions, UPS is // the carrier. TrackingNumber *string `min:"1" type:"string"` } // String returns the string representation func (s Shipment) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Shipment) GoString() string { return s.String() } // A job's shipping information, including inbound and outbound tracking numbers // and shipping speed options. type ShippingDetails struct { _ struct{} `type:"structure"` // The Status and TrackingNumber values for a Snowball being delivered to the // address that you specified for a particular job. InboundShipment *Shipment `type:"structure"` // The Status and TrackingNumber values for a Snowball being returned to AWS // for a particular job. OutboundShipment *Shipment `type:"structure"` // The shipping speed for a particular job. Note that this speed does not dictate // how soon you'll get the Snowball from the job's creation date. This speed // represents how quickly it moves to its destination while in transit. Regional // shipping speeds are as follows: // // * In Australia, you have access to express shipping. Typically, Snowballs // shipped express are delivered in about a day. // // * In the European Union (EU), you have access to express shipping. Typically, // Snowballs shipped express are delivered in about a day. In addition, most // countries in the EU have access to standard shipping, which typically // takes less than a week, one way. // // * In India, Snowballs are delivered in one to seven days. // // * In the United States of America (US), you have access to one-day shipping // and two-day shipping. ShippingOption *string `type:"string" enum:"ShippingOption"` } // String returns the string representation func (s ShippingDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ShippingDetails) GoString() string { return s.String() } type UpdateJobInput struct { _ struct{} `type:"structure"` // The ID of the updated Address object. AddressId *string `min:"40" type:"string"` // The updated description of this job's JobMetadata object. Description *string `min:"1" type:"string"` // The job ID of the job that you want to update, for example JID123e4567-e89b-12d3-a456-426655440000. // // JobId is a required field JobId *string `min:"39" type:"string" required:"true"` // The new or updated Notification object. Notification *Notification `type:"structure"` // The updated S3Resource object (for a single Amazon S3 bucket or key range), // or the updated JobResource object (for multiple buckets or key ranges). Resources *JobResource `type:"structure"` // The new role Amazon Resource Name (ARN) that you want to associate with this // job. To create a role ARN, use the CreateRole (http://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html) // AWS Identity and Access Management (IAM) API action. RoleARN *string `type:"string"` // The updated shipping option value of this job's ShippingDetails object. ShippingOption *string `type:"string" enum:"ShippingOption"` // The updated SnowballCapacityPreference of this job's JobMetadata object. // Note that the 50 TB Snowballs are only available in the US regions. SnowballCapacityPreference *string `type:"string" enum:"Capacity"` } // String returns the string representation func (s UpdateJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateJobInput"} if s.AddressId != nil && len(*s.AddressId) < 40 { invalidParams.Add(request.NewErrParamMinLen("AddressId", 40)) } if s.Description != nil && len(*s.Description) < 1 { invalidParams.Add(request.NewErrParamMinLen("Description", 1)) } if s.JobId == nil { invalidParams.Add(request.NewErrParamRequired("JobId")) } if s.JobId != nil && len(*s.JobId) < 39 { invalidParams.Add(request.NewErrParamMinLen("JobId", 39)) } if s.Resources != nil { if err := s.Resources.Validate(); err != nil { invalidParams.AddNested("Resources", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateJobOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateJobOutput) GoString() string { return s.String() } const ( // CapacityT50 is a Capacity enum value CapacityT50 = "T50" // CapacityT80 is a Capacity enum value CapacityT80 = "T80" // CapacityNoPreference is a Capacity enum value CapacityNoPreference = "NoPreference" ) const ( // JobStateNew is a JobState enum value JobStateNew = "New" // JobStatePreparingAppliance is a JobState enum value JobStatePreparingAppliance = "PreparingAppliance" // JobStatePreparingShipment is a JobState enum value JobStatePreparingShipment = "PreparingShipment" // JobStateInTransitToCustomer is a JobState enum value JobStateInTransitToCustomer = "InTransitToCustomer" // JobStateWithCustomer is a JobState enum value JobStateWithCustomer = "WithCustomer" // JobStateInTransitToAws is a JobState enum value JobStateInTransitToAws = "InTransitToAWS" // JobStateWithAws is a JobState enum value JobStateWithAws = "WithAWS" // JobStateInProgress is a JobState enum value JobStateInProgress = "InProgress" // JobStateComplete is a JobState enum value JobStateComplete = "Complete" // JobStateCancelled is a JobState enum value JobStateCancelled = "Cancelled" // JobStateListing is a JobState enum value JobStateListing = "Listing" // JobStatePending is a JobState enum value JobStatePending = "Pending" ) const ( // JobTypeImport is a JobType enum value JobTypeImport = "IMPORT" // JobTypeExport is a JobType enum value JobTypeExport = "EXPORT" ) const ( // ShippingOptionSecondDay is a ShippingOption enum value ShippingOptionSecondDay = "SECOND_DAY" // ShippingOptionNextDay is a ShippingOption enum value ShippingOptionNextDay = "NEXT_DAY" // ShippingOptionExpress is a ShippingOption enum value ShippingOptionExpress = "EXPRESS" // ShippingOptionStandard is a ShippingOption enum value ShippingOptionStandard = "STANDARD" ) aws-sdk-go-1.4.22/service/snowball/examples_test.go000066400000000000000000000200001300374646400222400ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package snowball_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/snowball" ) var _ time.Duration var _ bytes.Buffer func ExampleSnowball_CancelJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := snowball.New(sess) params := &snowball.CancelJobInput{ JobId: aws.String("JobId"), // Required } resp, err := svc.CancelJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSnowball_CreateAddress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := snowball.New(sess) params := &snowball.CreateAddressInput{ Address: &snowball.Address{ // Required AddressId: aws.String("AddressId"), City: aws.String("String"), Company: aws.String("String"), Country: aws.String("String"), Landmark: aws.String("String"), Name: aws.String("String"), PhoneNumber: aws.String("String"), PostalCode: aws.String("String"), PrefectureOrDistrict: aws.String("String"), StateOrProvince: aws.String("String"), Street1: aws.String("String"), Street2: aws.String("String"), Street3: aws.String("String"), }, } resp, err := svc.CreateAddress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSnowball_CreateJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := snowball.New(sess) params := &snowball.CreateJobInput{ AddressId: aws.String("AddressId"), // Required JobType: aws.String("JobType"), // Required Resources: &snowball.JobResource{ // Required S3Resources: []*snowball.S3Resource{ { // Required BucketArn: aws.String("ResourceARN"), KeyRange: &snowball.KeyRange{ BeginMarker: aws.String("String"), EndMarker: aws.String("String"), }, }, // More values... }, }, RoleARN: aws.String("RoleARN"), // Required ShippingOption: aws.String("ShippingOption"), // Required Description: aws.String("String"), KmsKeyARN: aws.String("KmsKeyARN"), Notification: &snowball.Notification{ JobStatesToNotify: []*string{ aws.String("JobState"), // Required // More values... }, NotifyAll: aws.Bool(true), SnsTopicARN: aws.String("SnsTopicARN"), }, SnowballCapacityPreference: aws.String("Capacity"), } resp, err := svc.CreateJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSnowball_DescribeAddress() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := snowball.New(sess) params := &snowball.DescribeAddressInput{ AddressId: aws.String("AddressId"), // Required } resp, err := svc.DescribeAddress(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSnowball_DescribeAddresses() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := snowball.New(sess) params := &snowball.DescribeAddressesInput{ MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.DescribeAddresses(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSnowball_DescribeJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := snowball.New(sess) params := &snowball.DescribeJobInput{ JobId: aws.String("JobId"), // Required } resp, err := svc.DescribeJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSnowball_GetJobManifest() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := snowball.New(sess) params := &snowball.GetJobManifestInput{ JobId: aws.String("JobId"), // Required } resp, err := svc.GetJobManifest(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSnowball_GetJobUnlockCode() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := snowball.New(sess) params := &snowball.GetJobUnlockCodeInput{ JobId: aws.String("JobId"), // Required } resp, err := svc.GetJobUnlockCode(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSnowball_GetSnowballUsage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := snowball.New(sess) var params *snowball.GetSnowballUsageInput resp, err := svc.GetSnowballUsage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSnowball_ListJobs() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := snowball.New(sess) params := &snowball.ListJobsInput{ MaxResults: aws.Int64(1), NextToken: aws.String("String"), } resp, err := svc.ListJobs(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSnowball_UpdateJob() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := snowball.New(sess) params := &snowball.UpdateJobInput{ JobId: aws.String("JobId"), // Required AddressId: aws.String("AddressId"), Description: aws.String("String"), Notification: &snowball.Notification{ JobStatesToNotify: []*string{ aws.String("JobState"), // Required // More values... }, NotifyAll: aws.Bool(true), SnsTopicARN: aws.String("SnsTopicARN"), }, Resources: &snowball.JobResource{ S3Resources: []*snowball.S3Resource{ { // Required BucketArn: aws.String("ResourceARN"), KeyRange: &snowball.KeyRange{ BeginMarker: aws.String("String"), EndMarker: aws.String("String"), }, }, // More values... }, }, RoleARN: aws.String("RoleARN"), ShippingOption: aws.String("ShippingOption"), SnowballCapacityPreference: aws.String("Capacity"), } resp, err := svc.UpdateJob(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/snowball/service.go000066400000000000000000000065461300374646400210460ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package snowball import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // AWS Import/Export Snowball is a petabyte-scale data transport solution that // uses secure appliances to transfer large amounts of data between your on-premises // data centers and Amazon Simple Storage Service (Amazon S3). The Snowball // commands described here provide access to the same functionality that is // available in the AWS Snowball Management Console, which enables you to create // and manage jobs for Snowball. To transfer data locally with a Snowball appliance, // you'll need to use the Snowball client or the Amazon S3 API adapter for Snowball. // For more information, see the User Guide (http://docs.aws.amazon.com/AWSImportExport/latest/ug/api-reference.html). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type Snowball struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "snowball" // New creates a new instance of the Snowball client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a Snowball client from just a session. // svc := snowball.New(mySession) // // // Create a Snowball client with additional configuration // svc := snowball.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *Snowball { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *Snowball { svc := &Snowball{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2016-06-30", JSONVersion: "1.1", TargetPrefix: "AWSIESnowballJobManagementService", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a Snowball operation and runs any // custom request initialization. func (c *Snowball) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/snowball/snowballiface/000077500000000000000000000000001300374646400216555ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/snowball/snowballiface/interface.go000066400000000000000000000105151300374646400241460ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package snowballiface provides an interface to enable mocking the Amazon Import/Export Snowball service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package snowballiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/snowball" ) // SnowballAPI provides an interface to enable mocking the // snowball.Snowball service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Import/Export Snowball. // func myFunc(svc snowballiface.SnowballAPI) bool { // // Make svc.CancelJob request // } // // func main() { // sess := session.New() // svc := snowball.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockSnowballClient struct { // snowballiface.SnowballAPI // } // func (m *mockSnowballClient) CancelJob(input *snowball.CancelJobInput) (*snowball.CancelJobOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockSnowballClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type SnowballAPI interface { CancelJobRequest(*snowball.CancelJobInput) (*request.Request, *snowball.CancelJobOutput) CancelJob(*snowball.CancelJobInput) (*snowball.CancelJobOutput, error) CreateAddressRequest(*snowball.CreateAddressInput) (*request.Request, *snowball.CreateAddressOutput) CreateAddress(*snowball.CreateAddressInput) (*snowball.CreateAddressOutput, error) CreateJobRequest(*snowball.CreateJobInput) (*request.Request, *snowball.CreateJobOutput) CreateJob(*snowball.CreateJobInput) (*snowball.CreateJobOutput, error) DescribeAddressRequest(*snowball.DescribeAddressInput) (*request.Request, *snowball.DescribeAddressOutput) DescribeAddress(*snowball.DescribeAddressInput) (*snowball.DescribeAddressOutput, error) DescribeAddressesRequest(*snowball.DescribeAddressesInput) (*request.Request, *snowball.DescribeAddressesOutput) DescribeAddresses(*snowball.DescribeAddressesInput) (*snowball.DescribeAddressesOutput, error) DescribeAddressesPages(*snowball.DescribeAddressesInput, func(*snowball.DescribeAddressesOutput, bool) bool) error DescribeJobRequest(*snowball.DescribeJobInput) (*request.Request, *snowball.DescribeJobOutput) DescribeJob(*snowball.DescribeJobInput) (*snowball.DescribeJobOutput, error) GetJobManifestRequest(*snowball.GetJobManifestInput) (*request.Request, *snowball.GetJobManifestOutput) GetJobManifest(*snowball.GetJobManifestInput) (*snowball.GetJobManifestOutput, error) GetJobUnlockCodeRequest(*snowball.GetJobUnlockCodeInput) (*request.Request, *snowball.GetJobUnlockCodeOutput) GetJobUnlockCode(*snowball.GetJobUnlockCodeInput) (*snowball.GetJobUnlockCodeOutput, error) GetSnowballUsageRequest(*snowball.GetSnowballUsageInput) (*request.Request, *snowball.GetSnowballUsageOutput) GetSnowballUsage(*snowball.GetSnowballUsageInput) (*snowball.GetSnowballUsageOutput, error) ListJobsRequest(*snowball.ListJobsInput) (*request.Request, *snowball.ListJobsOutput) ListJobs(*snowball.ListJobsInput) (*snowball.ListJobsOutput, error) ListJobsPages(*snowball.ListJobsInput, func(*snowball.ListJobsOutput, bool) bool) error UpdateJobRequest(*snowball.UpdateJobInput) (*request.Request, *snowball.UpdateJobOutput) UpdateJob(*snowball.UpdateJobInput) (*snowball.UpdateJobOutput, error) } var _ SnowballAPI = (*snowball.Snowball)(nil) aws-sdk-go-1.4.22/service/sns/000077500000000000000000000000001300374646400160265ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/sns/api.go000066400000000000000000004664371300374646400171520ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package sns provides a client for Amazon Simple Notification Service. package sns import ( "fmt" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/query" ) const opAddPermission = "AddPermission" // AddPermissionRequest generates a "aws/request.Request" representing the // client's request for the AddPermission operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddPermission for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddPermission method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddPermissionRequest method. // req, resp := client.AddPermissionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) AddPermissionRequest(input *AddPermissionInput) (req *request.Request, output *AddPermissionOutput) { op := &request.Operation{ Name: opAddPermission, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddPermissionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AddPermissionOutput{} req.Data = output return } // AddPermission API operation for Amazon Simple Notification Service. // // Adds a statement to a topic's access control policy, granting access for // the specified AWS accounts to the specified actions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation AddPermission for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // // * NotFound // Indicates that the requested resource does not exist. // func (c *SNS) AddPermission(input *AddPermissionInput) (*AddPermissionOutput, error) { req, out := c.AddPermissionRequest(input) err := req.Send() return out, err } const opCheckIfPhoneNumberIsOptedOut = "CheckIfPhoneNumberIsOptedOut" // CheckIfPhoneNumberIsOptedOutRequest generates a "aws/request.Request" representing the // client's request for the CheckIfPhoneNumberIsOptedOut operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CheckIfPhoneNumberIsOptedOut for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CheckIfPhoneNumberIsOptedOut method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CheckIfPhoneNumberIsOptedOutRequest method. // req, resp := client.CheckIfPhoneNumberIsOptedOutRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) CheckIfPhoneNumberIsOptedOutRequest(input *CheckIfPhoneNumberIsOptedOutInput) (req *request.Request, output *CheckIfPhoneNumberIsOptedOutOutput) { op := &request.Operation{ Name: opCheckIfPhoneNumberIsOptedOut, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CheckIfPhoneNumberIsOptedOutInput{} } req = c.newRequest(op, input, output) output = &CheckIfPhoneNumberIsOptedOutOutput{} req.Data = output return } // CheckIfPhoneNumberIsOptedOut API operation for Amazon Simple Notification Service. // // Accepts a phone number and indicates whether the phone holder has opted out // of receiving SMS messages from your account. You cannot send SMS messages // to a number that is opted out. // // To resume sending messages, you can opt in the number by using the OptInPhoneNumber // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation CheckIfPhoneNumberIsOptedOut for usage and error information. // // Returned Error Codes: // * Throttled // Indicates that the rate at which requests have been submitted for this action // exceeds the limit for your account. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // func (c *SNS) CheckIfPhoneNumberIsOptedOut(input *CheckIfPhoneNumberIsOptedOutInput) (*CheckIfPhoneNumberIsOptedOutOutput, error) { req, out := c.CheckIfPhoneNumberIsOptedOutRequest(input) err := req.Send() return out, err } const opConfirmSubscription = "ConfirmSubscription" // ConfirmSubscriptionRequest generates a "aws/request.Request" representing the // client's request for the ConfirmSubscription operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ConfirmSubscription for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ConfirmSubscription method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ConfirmSubscriptionRequest method. // req, resp := client.ConfirmSubscriptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) ConfirmSubscriptionRequest(input *ConfirmSubscriptionInput) (req *request.Request, output *ConfirmSubscriptionOutput) { op := &request.Operation{ Name: opConfirmSubscription, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ConfirmSubscriptionInput{} } req = c.newRequest(op, input, output) output = &ConfirmSubscriptionOutput{} req.Data = output return } // ConfirmSubscription API operation for Amazon Simple Notification Service. // // Verifies an endpoint owner's intent to receive messages by validating the // token sent to the endpoint by an earlier Subscribe action. If the token is // valid, the action creates a new subscription and returns its Amazon Resource // Name (ARN). This call requires an AWS signature only when the AuthenticateOnUnsubscribe // flag is set to "true". // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation ConfirmSubscription for usage and error information. // // Returned Error Codes: // * SubscriptionLimitExceeded // Indicates that the customer already owns the maximum allowed number of subscriptions. // // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * NotFound // Indicates that the requested resource does not exist. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // func (c *SNS) ConfirmSubscription(input *ConfirmSubscriptionInput) (*ConfirmSubscriptionOutput, error) { req, out := c.ConfirmSubscriptionRequest(input) err := req.Send() return out, err } const opCreatePlatformApplication = "CreatePlatformApplication" // CreatePlatformApplicationRequest generates a "aws/request.Request" representing the // client's request for the CreatePlatformApplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreatePlatformApplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreatePlatformApplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreatePlatformApplicationRequest method. // req, resp := client.CreatePlatformApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) CreatePlatformApplicationRequest(input *CreatePlatformApplicationInput) (req *request.Request, output *CreatePlatformApplicationOutput) { op := &request.Operation{ Name: opCreatePlatformApplication, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreatePlatformApplicationInput{} } req = c.newRequest(op, input, output) output = &CreatePlatformApplicationOutput{} req.Data = output return } // CreatePlatformApplication API operation for Amazon Simple Notification Service. // // Creates a platform application object for one of the supported push notification // services, such as APNS and GCM, to which devices and mobile apps may register. // You must specify PlatformPrincipal and PlatformCredential attributes when // using the CreatePlatformApplication action. The PlatformPrincipal is received // from the notification service. For APNS/APNS_SANDBOX, PlatformPrincipal is // "SSL certificate". For GCM, PlatformPrincipal is not applicable. For ADM, // PlatformPrincipal is "client id". The PlatformCredential is also received // from the notification service. For WNS, PlatformPrincipal is "Package Security // Identifier". For MPNS, PlatformPrincipal is "TLS certificate". For Baidu, // PlatformPrincipal is "API key". // // For APNS/APNS_SANDBOX, PlatformCredential is "private key". For GCM, PlatformCredential // is "API key". For ADM, PlatformCredential is "client secret". For WNS, PlatformCredential // is "secret key". For MPNS, PlatformCredential is "private key". For Baidu, // PlatformCredential is "secret key". The PlatformApplicationArn that is returned // when using CreatePlatformApplication is then used as an attribute for the // CreatePlatformEndpoint action. For more information, see Using Amazon SNS // Mobile Push Notifications (http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). // For more information about obtaining the PlatformPrincipal and PlatformCredential // for each of the supported push notification services, see Getting Started // with Apple Push Notification Service (http://docs.aws.amazon.com/sns/latest/dg/mobile-push-apns.html), // Getting Started with Amazon Device Messaging (http://docs.aws.amazon.com/sns/latest/dg/mobile-push-adm.html), // Getting Started with Baidu Cloud Push (http://docs.aws.amazon.com/sns/latest/dg/mobile-push-baidu.html), // Getting Started with Google Cloud Messaging for Android (http://docs.aws.amazon.com/sns/latest/dg/mobile-push-gcm.html), // Getting Started with MPNS (http://docs.aws.amazon.com/sns/latest/dg/mobile-push-mpns.html), // or Getting Started with WNS (http://docs.aws.amazon.com/sns/latest/dg/mobile-push-wns.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation CreatePlatformApplication for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // func (c *SNS) CreatePlatformApplication(input *CreatePlatformApplicationInput) (*CreatePlatformApplicationOutput, error) { req, out := c.CreatePlatformApplicationRequest(input) err := req.Send() return out, err } const opCreatePlatformEndpoint = "CreatePlatformEndpoint" // CreatePlatformEndpointRequest generates a "aws/request.Request" representing the // client's request for the CreatePlatformEndpoint operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreatePlatformEndpoint for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreatePlatformEndpoint method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreatePlatformEndpointRequest method. // req, resp := client.CreatePlatformEndpointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) CreatePlatformEndpointRequest(input *CreatePlatformEndpointInput) (req *request.Request, output *CreatePlatformEndpointOutput) { op := &request.Operation{ Name: opCreatePlatformEndpoint, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreatePlatformEndpointInput{} } req = c.newRequest(op, input, output) output = &CreatePlatformEndpointOutput{} req.Data = output return } // CreatePlatformEndpoint API operation for Amazon Simple Notification Service. // // Creates an endpoint for a device and mobile app on one of the supported push // notification services, such as GCM and APNS. CreatePlatformEndpoint requires // the PlatformApplicationArn that is returned from CreatePlatformApplication. // The EndpointArn that is returned when using CreatePlatformEndpoint can then // be used by the Publish action to send a message to a mobile app or by the // Subscribe action for subscription to a topic. The CreatePlatformEndpoint // action is idempotent, so if the requester already owns an endpoint with the // same device token and attributes, that endpoint's ARN is returned without // creating a new endpoint. For more information, see Using Amazon SNS Mobile // Push Notifications (http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). // // When using CreatePlatformEndpoint with Baidu, two attributes must be provided: // ChannelId and UserId. The token field must also contain the ChannelId. For // more information, see Creating an Amazon SNS Endpoint for Baidu (http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePushBaiduEndpoint.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation CreatePlatformEndpoint for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // // * NotFound // Indicates that the requested resource does not exist. // func (c *SNS) CreatePlatformEndpoint(input *CreatePlatformEndpointInput) (*CreatePlatformEndpointOutput, error) { req, out := c.CreatePlatformEndpointRequest(input) err := req.Send() return out, err } const opCreateTopic = "CreateTopic" // CreateTopicRequest generates a "aws/request.Request" representing the // client's request for the CreateTopic operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateTopic for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateTopic method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateTopicRequest method. // req, resp := client.CreateTopicRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) CreateTopicRequest(input *CreateTopicInput) (req *request.Request, output *CreateTopicOutput) { op := &request.Operation{ Name: opCreateTopic, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateTopicInput{} } req = c.newRequest(op, input, output) output = &CreateTopicOutput{} req.Data = output return } // CreateTopic API operation for Amazon Simple Notification Service. // // Creates a topic to which notifications can be published. Users can create // at most 100,000 topics. For more information, see http://aws.amazon.com/sns // (http://aws.amazon.com/sns/). This action is idempotent, so if the requester // already owns a topic with the specified name, that topic's ARN is returned // without creating a new topic. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation CreateTopic for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * TopicLimitExceeded // Indicates that the customer already owns the maximum allowed number of topics. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // func (c *SNS) CreateTopic(input *CreateTopicInput) (*CreateTopicOutput, error) { req, out := c.CreateTopicRequest(input) err := req.Send() return out, err } const opDeleteEndpoint = "DeleteEndpoint" // DeleteEndpointRequest generates a "aws/request.Request" representing the // client's request for the DeleteEndpoint operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteEndpoint for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteEndpoint method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteEndpointRequest method. // req, resp := client.DeleteEndpointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) DeleteEndpointRequest(input *DeleteEndpointInput) (req *request.Request, output *DeleteEndpointOutput) { op := &request.Operation{ Name: opDeleteEndpoint, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteEndpointInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteEndpointOutput{} req.Data = output return } // DeleteEndpoint API operation for Amazon Simple Notification Service. // // Deletes the endpoint for a device and mobile app from Amazon SNS. This action // is idempotent. For more information, see Using Amazon SNS Mobile Push Notifications // (http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). // // When you delete an endpoint that is also subscribed to a topic, then you // must also unsubscribe the endpoint from the topic. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation DeleteEndpoint for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // func (c *SNS) DeleteEndpoint(input *DeleteEndpointInput) (*DeleteEndpointOutput, error) { req, out := c.DeleteEndpointRequest(input) err := req.Send() return out, err } const opDeletePlatformApplication = "DeletePlatformApplication" // DeletePlatformApplicationRequest generates a "aws/request.Request" representing the // client's request for the DeletePlatformApplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeletePlatformApplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeletePlatformApplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeletePlatformApplicationRequest method. // req, resp := client.DeletePlatformApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) DeletePlatformApplicationRequest(input *DeletePlatformApplicationInput) (req *request.Request, output *DeletePlatformApplicationOutput) { op := &request.Operation{ Name: opDeletePlatformApplication, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeletePlatformApplicationInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeletePlatformApplicationOutput{} req.Data = output return } // DeletePlatformApplication API operation for Amazon Simple Notification Service. // // Deletes a platform application object for one of the supported push notification // services, such as APNS and GCM. For more information, see Using Amazon SNS // Mobile Push Notifications (http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation DeletePlatformApplication for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // func (c *SNS) DeletePlatformApplication(input *DeletePlatformApplicationInput) (*DeletePlatformApplicationOutput, error) { req, out := c.DeletePlatformApplicationRequest(input) err := req.Send() return out, err } const opDeleteTopic = "DeleteTopic" // DeleteTopicRequest generates a "aws/request.Request" representing the // client's request for the DeleteTopic operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteTopic for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteTopic method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteTopicRequest method. // req, resp := client.DeleteTopicRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) DeleteTopicRequest(input *DeleteTopicInput) (req *request.Request, output *DeleteTopicOutput) { op := &request.Operation{ Name: opDeleteTopic, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteTopicInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteTopicOutput{} req.Data = output return } // DeleteTopic API operation for Amazon Simple Notification Service. // // Deletes a topic and all its subscriptions. Deleting a topic might prevent // some messages previously sent to the topic from being delivered to subscribers. // This action is idempotent, so deleting a topic that does not exist does not // result in an error. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation DeleteTopic for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // // * NotFound // Indicates that the requested resource does not exist. // func (c *SNS) DeleteTopic(input *DeleteTopicInput) (*DeleteTopicOutput, error) { req, out := c.DeleteTopicRequest(input) err := req.Send() return out, err } const opGetEndpointAttributes = "GetEndpointAttributes" // GetEndpointAttributesRequest generates a "aws/request.Request" representing the // client's request for the GetEndpointAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetEndpointAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetEndpointAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetEndpointAttributesRequest method. // req, resp := client.GetEndpointAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) GetEndpointAttributesRequest(input *GetEndpointAttributesInput) (req *request.Request, output *GetEndpointAttributesOutput) { op := &request.Operation{ Name: opGetEndpointAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetEndpointAttributesInput{} } req = c.newRequest(op, input, output) output = &GetEndpointAttributesOutput{} req.Data = output return } // GetEndpointAttributes API operation for Amazon Simple Notification Service. // // Retrieves the endpoint attributes for a device on one of the supported push // notification services, such as GCM and APNS. For more information, see Using // Amazon SNS Mobile Push Notifications (http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation GetEndpointAttributes for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // // * NotFound // Indicates that the requested resource does not exist. // func (c *SNS) GetEndpointAttributes(input *GetEndpointAttributesInput) (*GetEndpointAttributesOutput, error) { req, out := c.GetEndpointAttributesRequest(input) err := req.Send() return out, err } const opGetPlatformApplicationAttributes = "GetPlatformApplicationAttributes" // GetPlatformApplicationAttributesRequest generates a "aws/request.Request" representing the // client's request for the GetPlatformApplicationAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetPlatformApplicationAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetPlatformApplicationAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetPlatformApplicationAttributesRequest method. // req, resp := client.GetPlatformApplicationAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) GetPlatformApplicationAttributesRequest(input *GetPlatformApplicationAttributesInput) (req *request.Request, output *GetPlatformApplicationAttributesOutput) { op := &request.Operation{ Name: opGetPlatformApplicationAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetPlatformApplicationAttributesInput{} } req = c.newRequest(op, input, output) output = &GetPlatformApplicationAttributesOutput{} req.Data = output return } // GetPlatformApplicationAttributes API operation for Amazon Simple Notification Service. // // Retrieves the attributes of the platform application object for the supported // push notification services, such as APNS and GCM. For more information, see // Using Amazon SNS Mobile Push Notifications (http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation GetPlatformApplicationAttributes for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // // * NotFound // Indicates that the requested resource does not exist. // func (c *SNS) GetPlatformApplicationAttributes(input *GetPlatformApplicationAttributesInput) (*GetPlatformApplicationAttributesOutput, error) { req, out := c.GetPlatformApplicationAttributesRequest(input) err := req.Send() return out, err } const opGetSMSAttributes = "GetSMSAttributes" // GetSMSAttributesRequest generates a "aws/request.Request" representing the // client's request for the GetSMSAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetSMSAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetSMSAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetSMSAttributesRequest method. // req, resp := client.GetSMSAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) GetSMSAttributesRequest(input *GetSMSAttributesInput) (req *request.Request, output *GetSMSAttributesOutput) { op := &request.Operation{ Name: opGetSMSAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetSMSAttributesInput{} } req = c.newRequest(op, input, output) output = &GetSMSAttributesOutput{} req.Data = output return } // GetSMSAttributes API operation for Amazon Simple Notification Service. // // Returns the settings for sending SMS messages from your account. // // These settings are set with the SetSMSAttributes action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation GetSMSAttributes for usage and error information. // // Returned Error Codes: // * Throttled // Indicates that the rate at which requests have been submitted for this action // exceeds the limit for your account. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // func (c *SNS) GetSMSAttributes(input *GetSMSAttributesInput) (*GetSMSAttributesOutput, error) { req, out := c.GetSMSAttributesRequest(input) err := req.Send() return out, err } const opGetSubscriptionAttributes = "GetSubscriptionAttributes" // GetSubscriptionAttributesRequest generates a "aws/request.Request" representing the // client's request for the GetSubscriptionAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetSubscriptionAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetSubscriptionAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetSubscriptionAttributesRequest method. // req, resp := client.GetSubscriptionAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) GetSubscriptionAttributesRequest(input *GetSubscriptionAttributesInput) (req *request.Request, output *GetSubscriptionAttributesOutput) { op := &request.Operation{ Name: opGetSubscriptionAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetSubscriptionAttributesInput{} } req = c.newRequest(op, input, output) output = &GetSubscriptionAttributesOutput{} req.Data = output return } // GetSubscriptionAttributes API operation for Amazon Simple Notification Service. // // Returns all of the properties of a subscription. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation GetSubscriptionAttributes for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * NotFound // Indicates that the requested resource does not exist. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // func (c *SNS) GetSubscriptionAttributes(input *GetSubscriptionAttributesInput) (*GetSubscriptionAttributesOutput, error) { req, out := c.GetSubscriptionAttributesRequest(input) err := req.Send() return out, err } const opGetTopicAttributes = "GetTopicAttributes" // GetTopicAttributesRequest generates a "aws/request.Request" representing the // client's request for the GetTopicAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetTopicAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetTopicAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetTopicAttributesRequest method. // req, resp := client.GetTopicAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) GetTopicAttributesRequest(input *GetTopicAttributesInput) (req *request.Request, output *GetTopicAttributesOutput) { op := &request.Operation{ Name: opGetTopicAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetTopicAttributesInput{} } req = c.newRequest(op, input, output) output = &GetTopicAttributesOutput{} req.Data = output return } // GetTopicAttributes API operation for Amazon Simple Notification Service. // // Returns all of the properties of a topic. Topic properties returned might // differ based on the authorization of the user. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation GetTopicAttributes for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * NotFound // Indicates that the requested resource does not exist. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // func (c *SNS) GetTopicAttributes(input *GetTopicAttributesInput) (*GetTopicAttributesOutput, error) { req, out := c.GetTopicAttributesRequest(input) err := req.Send() return out, err } const opListEndpointsByPlatformApplication = "ListEndpointsByPlatformApplication" // ListEndpointsByPlatformApplicationRequest generates a "aws/request.Request" representing the // client's request for the ListEndpointsByPlatformApplication operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListEndpointsByPlatformApplication for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListEndpointsByPlatformApplication method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListEndpointsByPlatformApplicationRequest method. // req, resp := client.ListEndpointsByPlatformApplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) ListEndpointsByPlatformApplicationRequest(input *ListEndpointsByPlatformApplicationInput) (req *request.Request, output *ListEndpointsByPlatformApplicationOutput) { op := &request.Operation{ Name: opListEndpointsByPlatformApplication, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListEndpointsByPlatformApplicationInput{} } req = c.newRequest(op, input, output) output = &ListEndpointsByPlatformApplicationOutput{} req.Data = output return } // ListEndpointsByPlatformApplication API operation for Amazon Simple Notification Service. // // Lists the endpoints and endpoint attributes for devices in a supported push // notification service, such as GCM and APNS. The results for ListEndpointsByPlatformApplication // are paginated and return a limited list of endpoints, up to 100. If additional // records are available after the first page results, then a NextToken string // will be returned. To receive the next page, you call ListEndpointsByPlatformApplication // again using the NextToken string received from the previous call. When there // are no more records to return, NextToken will be null. For more information, // see Using Amazon SNS Mobile Push Notifications (http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation ListEndpointsByPlatformApplication for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // // * NotFound // Indicates that the requested resource does not exist. // func (c *SNS) ListEndpointsByPlatformApplication(input *ListEndpointsByPlatformApplicationInput) (*ListEndpointsByPlatformApplicationOutput, error) { req, out := c.ListEndpointsByPlatformApplicationRequest(input) err := req.Send() return out, err } // ListEndpointsByPlatformApplicationPages iterates over the pages of a ListEndpointsByPlatformApplication operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListEndpointsByPlatformApplication method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListEndpointsByPlatformApplication operation. // pageNum := 0 // err := client.ListEndpointsByPlatformApplicationPages(params, // func(page *ListEndpointsByPlatformApplicationOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SNS) ListEndpointsByPlatformApplicationPages(input *ListEndpointsByPlatformApplicationInput, fn func(p *ListEndpointsByPlatformApplicationOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListEndpointsByPlatformApplicationRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListEndpointsByPlatformApplicationOutput), lastPage) }) } const opListPhoneNumbersOptedOut = "ListPhoneNumbersOptedOut" // ListPhoneNumbersOptedOutRequest generates a "aws/request.Request" representing the // client's request for the ListPhoneNumbersOptedOut operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListPhoneNumbersOptedOut for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListPhoneNumbersOptedOut method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListPhoneNumbersOptedOutRequest method. // req, resp := client.ListPhoneNumbersOptedOutRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) ListPhoneNumbersOptedOutRequest(input *ListPhoneNumbersOptedOutInput) (req *request.Request, output *ListPhoneNumbersOptedOutOutput) { op := &request.Operation{ Name: opListPhoneNumbersOptedOut, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListPhoneNumbersOptedOutInput{} } req = c.newRequest(op, input, output) output = &ListPhoneNumbersOptedOutOutput{} req.Data = output return } // ListPhoneNumbersOptedOut API operation for Amazon Simple Notification Service. // // Returns a list of phone numbers that are opted out, meaning you cannot send // SMS messages to them. // // The results for ListPhoneNumbersOptedOut are paginated, and each page returns // up to 100 phone numbers. If additional phone numbers are available after // the first page of results, then a NextToken string will be returned. To receive // the next page, you call ListPhoneNumbersOptedOut again using the NextToken // string received from the previous call. When there are no more records to // return, NextToken will be null. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation ListPhoneNumbersOptedOut for usage and error information. // // Returned Error Codes: // * Throttled // Indicates that the rate at which requests have been submitted for this action // exceeds the limit for your account. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // func (c *SNS) ListPhoneNumbersOptedOut(input *ListPhoneNumbersOptedOutInput) (*ListPhoneNumbersOptedOutOutput, error) { req, out := c.ListPhoneNumbersOptedOutRequest(input) err := req.Send() return out, err } const opListPlatformApplications = "ListPlatformApplications" // ListPlatformApplicationsRequest generates a "aws/request.Request" representing the // client's request for the ListPlatformApplications operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListPlatformApplications for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListPlatformApplications method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListPlatformApplicationsRequest method. // req, resp := client.ListPlatformApplicationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) ListPlatformApplicationsRequest(input *ListPlatformApplicationsInput) (req *request.Request, output *ListPlatformApplicationsOutput) { op := &request.Operation{ Name: opListPlatformApplications, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListPlatformApplicationsInput{} } req = c.newRequest(op, input, output) output = &ListPlatformApplicationsOutput{} req.Data = output return } // ListPlatformApplications API operation for Amazon Simple Notification Service. // // Lists the platform application objects for the supported push notification // services, such as APNS and GCM. The results for ListPlatformApplications // are paginated and return a limited list of applications, up to 100. If additional // records are available after the first page results, then a NextToken string // will be returned. To receive the next page, you call ListPlatformApplications // using the NextToken string received from the previous call. When there are // no more records to return, NextToken will be null. For more information, // see Using Amazon SNS Mobile Push Notifications (http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation ListPlatformApplications for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // func (c *SNS) ListPlatformApplications(input *ListPlatformApplicationsInput) (*ListPlatformApplicationsOutput, error) { req, out := c.ListPlatformApplicationsRequest(input) err := req.Send() return out, err } // ListPlatformApplicationsPages iterates over the pages of a ListPlatformApplications operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListPlatformApplications method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListPlatformApplications operation. // pageNum := 0 // err := client.ListPlatformApplicationsPages(params, // func(page *ListPlatformApplicationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SNS) ListPlatformApplicationsPages(input *ListPlatformApplicationsInput, fn func(p *ListPlatformApplicationsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListPlatformApplicationsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListPlatformApplicationsOutput), lastPage) }) } const opListSubscriptions = "ListSubscriptions" // ListSubscriptionsRequest generates a "aws/request.Request" representing the // client's request for the ListSubscriptions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListSubscriptions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListSubscriptions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListSubscriptionsRequest method. // req, resp := client.ListSubscriptionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) ListSubscriptionsRequest(input *ListSubscriptionsInput) (req *request.Request, output *ListSubscriptionsOutput) { op := &request.Operation{ Name: opListSubscriptions, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListSubscriptionsInput{} } req = c.newRequest(op, input, output) output = &ListSubscriptionsOutput{} req.Data = output return } // ListSubscriptions API operation for Amazon Simple Notification Service. // // Returns a list of the requester's subscriptions. Each call returns a limited // list of subscriptions, up to 100. If there are more subscriptions, a NextToken // is also returned. Use the NextToken parameter in a new ListSubscriptions // call to get further results. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation ListSubscriptions for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // func (c *SNS) ListSubscriptions(input *ListSubscriptionsInput) (*ListSubscriptionsOutput, error) { req, out := c.ListSubscriptionsRequest(input) err := req.Send() return out, err } // ListSubscriptionsPages iterates over the pages of a ListSubscriptions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListSubscriptions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListSubscriptions operation. // pageNum := 0 // err := client.ListSubscriptionsPages(params, // func(page *ListSubscriptionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SNS) ListSubscriptionsPages(input *ListSubscriptionsInput, fn func(p *ListSubscriptionsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListSubscriptionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListSubscriptionsOutput), lastPage) }) } const opListSubscriptionsByTopic = "ListSubscriptionsByTopic" // ListSubscriptionsByTopicRequest generates a "aws/request.Request" representing the // client's request for the ListSubscriptionsByTopic operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListSubscriptionsByTopic for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListSubscriptionsByTopic method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListSubscriptionsByTopicRequest method. // req, resp := client.ListSubscriptionsByTopicRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) ListSubscriptionsByTopicRequest(input *ListSubscriptionsByTopicInput) (req *request.Request, output *ListSubscriptionsByTopicOutput) { op := &request.Operation{ Name: opListSubscriptionsByTopic, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListSubscriptionsByTopicInput{} } req = c.newRequest(op, input, output) output = &ListSubscriptionsByTopicOutput{} req.Data = output return } // ListSubscriptionsByTopic API operation for Amazon Simple Notification Service. // // Returns a list of the subscriptions to a specific topic. Each call returns // a limited list of subscriptions, up to 100. If there are more subscriptions, // a NextToken is also returned. Use the NextToken parameter in a new ListSubscriptionsByTopic // call to get further results. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation ListSubscriptionsByTopic for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * NotFound // Indicates that the requested resource does not exist. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // func (c *SNS) ListSubscriptionsByTopic(input *ListSubscriptionsByTopicInput) (*ListSubscriptionsByTopicOutput, error) { req, out := c.ListSubscriptionsByTopicRequest(input) err := req.Send() return out, err } // ListSubscriptionsByTopicPages iterates over the pages of a ListSubscriptionsByTopic operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListSubscriptionsByTopic method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListSubscriptionsByTopic operation. // pageNum := 0 // err := client.ListSubscriptionsByTopicPages(params, // func(page *ListSubscriptionsByTopicOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SNS) ListSubscriptionsByTopicPages(input *ListSubscriptionsByTopicInput, fn func(p *ListSubscriptionsByTopicOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListSubscriptionsByTopicRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListSubscriptionsByTopicOutput), lastPage) }) } const opListTopics = "ListTopics" // ListTopicsRequest generates a "aws/request.Request" representing the // client's request for the ListTopics operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTopics for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTopics method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTopicsRequest method. // req, resp := client.ListTopicsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) ListTopicsRequest(input *ListTopicsInput) (req *request.Request, output *ListTopicsOutput) { op := &request.Operation{ Name: opListTopics, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &ListTopicsInput{} } req = c.newRequest(op, input, output) output = &ListTopicsOutput{} req.Data = output return } // ListTopics API operation for Amazon Simple Notification Service. // // Returns a list of the requester's topics. Each call returns a limited list // of topics, up to 100. If there are more topics, a NextToken is also returned. // Use the NextToken parameter in a new ListTopics call to get further results. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation ListTopics for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // func (c *SNS) ListTopics(input *ListTopicsInput) (*ListTopicsOutput, error) { req, out := c.ListTopicsRequest(input) err := req.Send() return out, err } // ListTopicsPages iterates over the pages of a ListTopics operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListTopics method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListTopics operation. // pageNum := 0 // err := client.ListTopicsPages(params, // func(page *ListTopicsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SNS) ListTopicsPages(input *ListTopicsInput, fn func(p *ListTopicsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListTopicsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListTopicsOutput), lastPage) }) } const opOptInPhoneNumber = "OptInPhoneNumber" // OptInPhoneNumberRequest generates a "aws/request.Request" representing the // client's request for the OptInPhoneNumber operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See OptInPhoneNumber for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the OptInPhoneNumber method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the OptInPhoneNumberRequest method. // req, resp := client.OptInPhoneNumberRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) OptInPhoneNumberRequest(input *OptInPhoneNumberInput) (req *request.Request, output *OptInPhoneNumberOutput) { op := &request.Operation{ Name: opOptInPhoneNumber, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &OptInPhoneNumberInput{} } req = c.newRequest(op, input, output) output = &OptInPhoneNumberOutput{} req.Data = output return } // OptInPhoneNumber API operation for Amazon Simple Notification Service. // // Use this request to opt in a phone number that is opted out, which enables // you to resume sending SMS messages to the number. // // You can opt in a phone number only once every 30 days. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation OptInPhoneNumber for usage and error information. // // Returned Error Codes: // * Throttled // Indicates that the rate at which requests have been submitted for this action // exceeds the limit for your account. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // func (c *SNS) OptInPhoneNumber(input *OptInPhoneNumberInput) (*OptInPhoneNumberOutput, error) { req, out := c.OptInPhoneNumberRequest(input) err := req.Send() return out, err } const opPublish = "Publish" // PublishRequest generates a "aws/request.Request" representing the // client's request for the Publish operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See Publish for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the Publish method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PublishRequest method. // req, resp := client.PublishRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) PublishRequest(input *PublishInput) (req *request.Request, output *PublishOutput) { op := &request.Operation{ Name: opPublish, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PublishInput{} } req = c.newRequest(op, input, output) output = &PublishOutput{} req.Data = output return } // Publish API operation for Amazon Simple Notification Service. // // Sends a message to all of a topic's subscribed endpoints. When a messageId // is returned, the message has been saved and Amazon SNS will attempt to deliver // it to the topic's subscribers shortly. The format of the outgoing message // to each subscribed endpoint depends on the notification protocol. // // To use the Publish action for sending a message to a mobile endpoint, such // as an app on a Kindle device or mobile phone, you must specify the EndpointArn // for the TargetArn parameter. The EndpointArn is returned when making a call // with the CreatePlatformEndpoint action. // // For more information about formatting messages, see Send Custom Platform-Specific // Payloads in Messages to Mobile Devices (http://docs.aws.amazon.com/sns/latest/dg/mobile-push-send-custommessage.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation Publish for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * ParameterValueInvalid // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * NotFound // Indicates that the requested resource does not exist. // // * EndpointDisabled // Exception error indicating endpoint disabled. // // * PlatformApplicationDisabled // Exception error indicating platform application disabled. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // func (c *SNS) Publish(input *PublishInput) (*PublishOutput, error) { req, out := c.PublishRequest(input) err := req.Send() return out, err } const opRemovePermission = "RemovePermission" // RemovePermissionRequest generates a "aws/request.Request" representing the // client's request for the RemovePermission operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemovePermission for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemovePermission method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemovePermissionRequest method. // req, resp := client.RemovePermissionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) RemovePermissionRequest(input *RemovePermissionInput) (req *request.Request, output *RemovePermissionOutput) { op := &request.Operation{ Name: opRemovePermission, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemovePermissionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RemovePermissionOutput{} req.Data = output return } // RemovePermission API operation for Amazon Simple Notification Service. // // Removes a statement from a topic's access control policy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation RemovePermission for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // // * NotFound // Indicates that the requested resource does not exist. // func (c *SNS) RemovePermission(input *RemovePermissionInput) (*RemovePermissionOutput, error) { req, out := c.RemovePermissionRequest(input) err := req.Send() return out, err } const opSetEndpointAttributes = "SetEndpointAttributes" // SetEndpointAttributesRequest generates a "aws/request.Request" representing the // client's request for the SetEndpointAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetEndpointAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetEndpointAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetEndpointAttributesRequest method. // req, resp := client.SetEndpointAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) SetEndpointAttributesRequest(input *SetEndpointAttributesInput) (req *request.Request, output *SetEndpointAttributesOutput) { op := &request.Operation{ Name: opSetEndpointAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetEndpointAttributesInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetEndpointAttributesOutput{} req.Data = output return } // SetEndpointAttributes API operation for Amazon Simple Notification Service. // // Sets the attributes for an endpoint for a device on one of the supported // push notification services, such as GCM and APNS. For more information, see // Using Amazon SNS Mobile Push Notifications (http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation SetEndpointAttributes for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // // * NotFound // Indicates that the requested resource does not exist. // func (c *SNS) SetEndpointAttributes(input *SetEndpointAttributesInput) (*SetEndpointAttributesOutput, error) { req, out := c.SetEndpointAttributesRequest(input) err := req.Send() return out, err } const opSetPlatformApplicationAttributes = "SetPlatformApplicationAttributes" // SetPlatformApplicationAttributesRequest generates a "aws/request.Request" representing the // client's request for the SetPlatformApplicationAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetPlatformApplicationAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetPlatformApplicationAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetPlatformApplicationAttributesRequest method. // req, resp := client.SetPlatformApplicationAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) SetPlatformApplicationAttributesRequest(input *SetPlatformApplicationAttributesInput) (req *request.Request, output *SetPlatformApplicationAttributesOutput) { op := &request.Operation{ Name: opSetPlatformApplicationAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetPlatformApplicationAttributesInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetPlatformApplicationAttributesOutput{} req.Data = output return } // SetPlatformApplicationAttributes API operation for Amazon Simple Notification Service. // // Sets the attributes of the platform application object for the supported // push notification services, such as APNS and GCM. For more information, see // Using Amazon SNS Mobile Push Notifications (http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html). // For information on configuring attributes for message delivery status, see // Using Amazon SNS Application Attributes for Message Delivery Status (http://docs.aws.amazon.com/sns/latest/dg/sns-msg-status.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation SetPlatformApplicationAttributes for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // // * NotFound // Indicates that the requested resource does not exist. // func (c *SNS) SetPlatformApplicationAttributes(input *SetPlatformApplicationAttributesInput) (*SetPlatformApplicationAttributesOutput, error) { req, out := c.SetPlatformApplicationAttributesRequest(input) err := req.Send() return out, err } const opSetSMSAttributes = "SetSMSAttributes" // SetSMSAttributesRequest generates a "aws/request.Request" representing the // client's request for the SetSMSAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetSMSAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetSMSAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetSMSAttributesRequest method. // req, resp := client.SetSMSAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) SetSMSAttributesRequest(input *SetSMSAttributesInput) (req *request.Request, output *SetSMSAttributesOutput) { op := &request.Operation{ Name: opSetSMSAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetSMSAttributesInput{} } req = c.newRequest(op, input, output) output = &SetSMSAttributesOutput{} req.Data = output return } // SetSMSAttributes API operation for Amazon Simple Notification Service. // // Use this request to set the default settings for sending SMS messages and // receiving daily SMS usage reports. // // You can override some of these settings for a single message when you use // the Publish action with the MessageAttributes.entry.N parameter. For more // information, see Sending an SMS Message (http://docs.aws.amazon.com/sns/latest/dg/sms_publish-to-phone.html) // in the Amazon SNS Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation SetSMSAttributes for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * Throttled // Indicates that the rate at which requests have been submitted for this action // exceeds the limit for your account. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // func (c *SNS) SetSMSAttributes(input *SetSMSAttributesInput) (*SetSMSAttributesOutput, error) { req, out := c.SetSMSAttributesRequest(input) err := req.Send() return out, err } const opSetSubscriptionAttributes = "SetSubscriptionAttributes" // SetSubscriptionAttributesRequest generates a "aws/request.Request" representing the // client's request for the SetSubscriptionAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetSubscriptionAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetSubscriptionAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetSubscriptionAttributesRequest method. // req, resp := client.SetSubscriptionAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) SetSubscriptionAttributesRequest(input *SetSubscriptionAttributesInput) (req *request.Request, output *SetSubscriptionAttributesOutput) { op := &request.Operation{ Name: opSetSubscriptionAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetSubscriptionAttributesInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetSubscriptionAttributesOutput{} req.Data = output return } // SetSubscriptionAttributes API operation for Amazon Simple Notification Service. // // Allows a subscription owner to set an attribute of the topic to a new value. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation SetSubscriptionAttributes for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * NotFound // Indicates that the requested resource does not exist. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // func (c *SNS) SetSubscriptionAttributes(input *SetSubscriptionAttributesInput) (*SetSubscriptionAttributesOutput, error) { req, out := c.SetSubscriptionAttributesRequest(input) err := req.Send() return out, err } const opSetTopicAttributes = "SetTopicAttributes" // SetTopicAttributesRequest generates a "aws/request.Request" representing the // client's request for the SetTopicAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetTopicAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetTopicAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetTopicAttributesRequest method. // req, resp := client.SetTopicAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) SetTopicAttributesRequest(input *SetTopicAttributesInput) (req *request.Request, output *SetTopicAttributesOutput) { op := &request.Operation{ Name: opSetTopicAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetTopicAttributesInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetTopicAttributesOutput{} req.Data = output return } // SetTopicAttributes API operation for Amazon Simple Notification Service. // // Allows a topic owner to set an attribute of the topic to a new value. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation SetTopicAttributes for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * NotFound // Indicates that the requested resource does not exist. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // func (c *SNS) SetTopicAttributes(input *SetTopicAttributesInput) (*SetTopicAttributesOutput, error) { req, out := c.SetTopicAttributesRequest(input) err := req.Send() return out, err } const opSubscribe = "Subscribe" // SubscribeRequest generates a "aws/request.Request" representing the // client's request for the Subscribe operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See Subscribe for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the Subscribe method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SubscribeRequest method. // req, resp := client.SubscribeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) SubscribeRequest(input *SubscribeInput) (req *request.Request, output *SubscribeOutput) { op := &request.Operation{ Name: opSubscribe, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SubscribeInput{} } req = c.newRequest(op, input, output) output = &SubscribeOutput{} req.Data = output return } // Subscribe API operation for Amazon Simple Notification Service. // // Prepares to subscribe an endpoint by sending the endpoint a confirmation // message. To actually create a subscription, the endpoint owner must call // the ConfirmSubscription action with the token from the confirmation message. // Confirmation tokens are valid for three days. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation Subscribe for usage and error information. // // Returned Error Codes: // * SubscriptionLimitExceeded // Indicates that the customer already owns the maximum allowed number of subscriptions. // // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * NotFound // Indicates that the requested resource does not exist. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // func (c *SNS) Subscribe(input *SubscribeInput) (*SubscribeOutput, error) { req, out := c.SubscribeRequest(input) err := req.Send() return out, err } const opUnsubscribe = "Unsubscribe" // UnsubscribeRequest generates a "aws/request.Request" representing the // client's request for the Unsubscribe operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See Unsubscribe for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the Unsubscribe method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UnsubscribeRequest method. // req, resp := client.UnsubscribeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SNS) UnsubscribeRequest(input *UnsubscribeInput) (req *request.Request, output *UnsubscribeOutput) { op := &request.Operation{ Name: opUnsubscribe, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UnsubscribeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &UnsubscribeOutput{} req.Data = output return } // Unsubscribe API operation for Amazon Simple Notification Service. // // Deletes a subscription. If the subscription requires authentication for deletion, // only the owner of the subscription or the topic's owner can unsubscribe, // and an AWS signature is required. If the Unsubscribe call does not require // authentication and the requester is not the subscription owner, a final cancellation // message is delivered to the endpoint, so that the endpoint owner can easily // resubscribe to the topic if the Unsubscribe request was unintended. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Notification Service's // API operation Unsubscribe for usage and error information. // // Returned Error Codes: // * InvalidParameter // Indicates that a request parameter does not comply with the associated constraints. // // * InternalError // Indicates an internal service error. // // * AuthorizationError // Indicates that the user has been denied access to the requested resource. // // * NotFound // Indicates that the requested resource does not exist. // func (c *SNS) Unsubscribe(input *UnsubscribeInput) (*UnsubscribeOutput, error) { req, out := c.UnsubscribeRequest(input) err := req.Send() return out, err } type AddPermissionInput struct { _ struct{} `type:"structure"` // The AWS account IDs of the users (principals) who will be given access to // the specified actions. The users must have AWS accounts, but do not need // to be signed up for this service. // // AWSAccountId is a required field AWSAccountId []*string `type:"list" required:"true"` // The action you want to allow for the specified principal(s). // // Valid values: any Amazon SNS action name. // // ActionName is a required field ActionName []*string `type:"list" required:"true"` // A unique identifier for the new policy statement. // // Label is a required field Label *string `type:"string" required:"true"` // The ARN of the topic whose access control policy you wish to modify. // // TopicArn is a required field TopicArn *string `type:"string" required:"true"` } // String returns the string representation func (s AddPermissionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddPermissionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddPermissionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddPermissionInput"} if s.AWSAccountId == nil { invalidParams.Add(request.NewErrParamRequired("AWSAccountId")) } if s.ActionName == nil { invalidParams.Add(request.NewErrParamRequired("ActionName")) } if s.Label == nil { invalidParams.Add(request.NewErrParamRequired("Label")) } if s.TopicArn == nil { invalidParams.Add(request.NewErrParamRequired("TopicArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddPermissionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddPermissionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddPermissionOutput) GoString() string { return s.String() } // The input for the CheckIfPhoneNumberIsOptedOut action. type CheckIfPhoneNumberIsOptedOutInput struct { _ struct{} `type:"structure"` // The phone number for which you want to check the opt out status. // // PhoneNumber is a required field PhoneNumber *string `locationName:"phoneNumber" type:"string" required:"true"` } // String returns the string representation func (s CheckIfPhoneNumberIsOptedOutInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CheckIfPhoneNumberIsOptedOutInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CheckIfPhoneNumberIsOptedOutInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CheckIfPhoneNumberIsOptedOutInput"} if s.PhoneNumber == nil { invalidParams.Add(request.NewErrParamRequired("PhoneNumber")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response from the CheckIfPhoneNumberIsOptedOut action. type CheckIfPhoneNumberIsOptedOutOutput struct { _ struct{} `type:"structure"` // Indicates whether the phone number is opted out: // // * true – The phone number is opted out, meaning you cannot publish SMS // messages to it. // // * false – The phone number is opted in, meaning you can publish SMS messages // to it. IsOptedOut *bool `locationName:"isOptedOut" type:"boolean"` } // String returns the string representation func (s CheckIfPhoneNumberIsOptedOutOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CheckIfPhoneNumberIsOptedOutOutput) GoString() string { return s.String() } // Input for ConfirmSubscription action. type ConfirmSubscriptionInput struct { _ struct{} `type:"structure"` // Disallows unauthenticated unsubscribes of the subscription. If the value // of this parameter is true and the request has an AWS signature, then only // the topic owner and the subscription owner can unsubscribe the endpoint. // The unsubscribe action requires AWS authentication. AuthenticateOnUnsubscribe *string `type:"string"` // Short-lived token sent to an endpoint during the Subscribe action. // // Token is a required field Token *string `type:"string" required:"true"` // The ARN of the topic for which you wish to confirm a subscription. // // TopicArn is a required field TopicArn *string `type:"string" required:"true"` } // String returns the string representation func (s ConfirmSubscriptionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfirmSubscriptionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ConfirmSubscriptionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ConfirmSubscriptionInput"} if s.Token == nil { invalidParams.Add(request.NewErrParamRequired("Token")) } if s.TopicArn == nil { invalidParams.Add(request.NewErrParamRequired("TopicArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response for ConfirmSubscriptions action. type ConfirmSubscriptionOutput struct { _ struct{} `type:"structure"` // The ARN of the created subscription. SubscriptionArn *string `type:"string"` } // String returns the string representation func (s ConfirmSubscriptionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ConfirmSubscriptionOutput) GoString() string { return s.String() } // Input for CreatePlatformApplication action. type CreatePlatformApplicationInput struct { _ struct{} `type:"structure"` // For a list of attributes, see SetPlatformApplicationAttributes (http://docs.aws.amazon.com/sns/latest/api/API_SetPlatformApplicationAttributes.html) // // Attributes is a required field Attributes map[string]*string `type:"map" required:"true"` // Application names must be made up of only uppercase and lowercase ASCII letters, // numbers, underscores, hyphens, and periods, and must be between 1 and 256 // characters long. // // Name is a required field Name *string `type:"string" required:"true"` // The following platforms are supported: ADM (Amazon Device Messaging), APNS // (Apple Push Notification Service), APNS_SANDBOX, and GCM (Google Cloud Messaging). // // Platform is a required field Platform *string `type:"string" required:"true"` } // String returns the string representation func (s CreatePlatformApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePlatformApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePlatformApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePlatformApplicationInput"} if s.Attributes == nil { invalidParams.Add(request.NewErrParamRequired("Attributes")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Platform == nil { invalidParams.Add(request.NewErrParamRequired("Platform")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response from CreatePlatformApplication action. type CreatePlatformApplicationOutput struct { _ struct{} `type:"structure"` // PlatformApplicationArn is returned. PlatformApplicationArn *string `type:"string"` } // String returns the string representation func (s CreatePlatformApplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePlatformApplicationOutput) GoString() string { return s.String() } // Input for CreatePlatformEndpoint action. type CreatePlatformEndpointInput struct { _ struct{} `type:"structure"` // For a list of attributes, see SetEndpointAttributes (http://docs.aws.amazon.com/sns/latest/api/API_SetEndpointAttributes.html). Attributes map[string]*string `type:"map"` // Arbitrary user data to associate with the endpoint. Amazon SNS does not use // this data. The data must be in UTF-8 format and less than 2KB. CustomUserData *string `type:"string"` // PlatformApplicationArn returned from CreatePlatformApplication is used to // create a an endpoint. // // PlatformApplicationArn is a required field PlatformApplicationArn *string `type:"string" required:"true"` // Unique identifier created by the notification service for an app on a device. // The specific name for Token will vary, depending on which notification service // is being used. For example, when using APNS as the notification service, // you need the device token. Alternatively, when using GCM or ADM, the device // token equivalent is called the registration ID. // // Token is a required field Token *string `type:"string" required:"true"` } // String returns the string representation func (s CreatePlatformEndpointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePlatformEndpointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePlatformEndpointInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePlatformEndpointInput"} if s.PlatformApplicationArn == nil { invalidParams.Add(request.NewErrParamRequired("PlatformApplicationArn")) } if s.Token == nil { invalidParams.Add(request.NewErrParamRequired("Token")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response from CreateEndpoint action. type CreatePlatformEndpointOutput struct { _ struct{} `type:"structure"` // EndpointArn returned from CreateEndpoint action. EndpointArn *string `type:"string"` } // String returns the string representation func (s CreatePlatformEndpointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePlatformEndpointOutput) GoString() string { return s.String() } // Input for CreateTopic action. type CreateTopicInput struct { _ struct{} `type:"structure"` // The name of the topic you want to create. // // Constraints: Topic names must be made up of only uppercase and lowercase // ASCII letters, numbers, underscores, and hyphens, and must be between 1 and // 256 characters long. // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s CreateTopicInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTopicInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateTopicInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateTopicInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response from CreateTopic action. type CreateTopicOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) assigned to the created topic. TopicArn *string `type:"string"` } // String returns the string representation func (s CreateTopicOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTopicOutput) GoString() string { return s.String() } // Input for DeleteEndpoint action. type DeleteEndpointInput struct { _ struct{} `type:"structure"` // EndpointArn of endpoint to delete. // // EndpointArn is a required field EndpointArn *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteEndpointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteEndpointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteEndpointInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteEndpointInput"} if s.EndpointArn == nil { invalidParams.Add(request.NewErrParamRequired("EndpointArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteEndpointOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteEndpointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteEndpointOutput) GoString() string { return s.String() } // Input for DeletePlatformApplication action. type DeletePlatformApplicationInput struct { _ struct{} `type:"structure"` // PlatformApplicationArn of platform application object to delete. // // PlatformApplicationArn is a required field PlatformApplicationArn *string `type:"string" required:"true"` } // String returns the string representation func (s DeletePlatformApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePlatformApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeletePlatformApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeletePlatformApplicationInput"} if s.PlatformApplicationArn == nil { invalidParams.Add(request.NewErrParamRequired("PlatformApplicationArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeletePlatformApplicationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeletePlatformApplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePlatformApplicationOutput) GoString() string { return s.String() } type DeleteTopicInput struct { _ struct{} `type:"structure"` // The ARN of the topic you want to delete. // // TopicArn is a required field TopicArn *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteTopicInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTopicInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTopicInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTopicInput"} if s.TopicArn == nil { invalidParams.Add(request.NewErrParamRequired("TopicArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteTopicOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteTopicOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTopicOutput) GoString() string { return s.String() } // Endpoint for mobile app and device. type Endpoint struct { _ struct{} `type:"structure"` // Attributes for endpoint. Attributes map[string]*string `type:"map"` // EndpointArn for mobile app and device. EndpointArn *string `type:"string"` } // String returns the string representation func (s Endpoint) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Endpoint) GoString() string { return s.String() } // Input for GetEndpointAttributes action. type GetEndpointAttributesInput struct { _ struct{} `type:"structure"` // EndpointArn for GetEndpointAttributes input. // // EndpointArn is a required field EndpointArn *string `type:"string" required:"true"` } // String returns the string representation func (s GetEndpointAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetEndpointAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetEndpointAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetEndpointAttributesInput"} if s.EndpointArn == nil { invalidParams.Add(request.NewErrParamRequired("EndpointArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response from GetEndpointAttributes of the EndpointArn. type GetEndpointAttributesOutput struct { _ struct{} `type:"structure"` // Attributes include the following: // // * CustomUserData -- arbitrary user data to associate with the endpoint. // Amazon SNS does not use this data. The data must be in UTF-8 format and // less than 2KB. // // * Enabled -- flag that enables/disables delivery to the endpoint. Amazon // SNS will set this to false when a notification service indicates to Amazon // SNS that the endpoint is invalid. Users can set it back to true, typically // after updating Token. // // * Token -- device token, also referred to as a registration id, for an // app and mobile device. This is returned from the notification service // when an app and mobile device are registered with the notification service. Attributes map[string]*string `type:"map"` } // String returns the string representation func (s GetEndpointAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetEndpointAttributesOutput) GoString() string { return s.String() } // Input for GetPlatformApplicationAttributes action. type GetPlatformApplicationAttributesInput struct { _ struct{} `type:"structure"` // PlatformApplicationArn for GetPlatformApplicationAttributesInput. // // PlatformApplicationArn is a required field PlatformApplicationArn *string `type:"string" required:"true"` } // String returns the string representation func (s GetPlatformApplicationAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPlatformApplicationAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetPlatformApplicationAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetPlatformApplicationAttributesInput"} if s.PlatformApplicationArn == nil { invalidParams.Add(request.NewErrParamRequired("PlatformApplicationArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response for GetPlatformApplicationAttributes action. type GetPlatformApplicationAttributesOutput struct { _ struct{} `type:"structure"` // Attributes include the following: // // * EventEndpointCreated -- Topic ARN to which EndpointCreated event notifications // should be sent. // // * EventEndpointDeleted -- Topic ARN to which EndpointDeleted event notifications // should be sent. // // * EventEndpointUpdated -- Topic ARN to which EndpointUpdate event notifications // should be sent. // // * EventDeliveryFailure -- Topic ARN to which DeliveryFailure event notifications // should be sent upon Direct Publish delivery failure (permanent) to one // of the application's endpoints. Attributes map[string]*string `type:"map"` } // String returns the string representation func (s GetPlatformApplicationAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPlatformApplicationAttributesOutput) GoString() string { return s.String() } // The input for the GetSMSAttributes request. type GetSMSAttributesInput struct { _ struct{} `type:"structure"` // A list of the individual attribute names, such as MonthlySpendLimit, for // which you want values. // // For all attribute names, see SetSMSAttributes (http://docs.aws.amazon.com/sns/latest/api/API_SetSMSAttributes.html). // // If you don't use this parameter, Amazon SNS returns all SMS attributes. Attributes []*string `locationName:"attributes" type:"list"` } // String returns the string representation func (s GetSMSAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSMSAttributesInput) GoString() string { return s.String() } // The response from the GetSMSAttributes request. type GetSMSAttributesOutput struct { _ struct{} `type:"structure"` // The SMS attribute names and their values. Attributes map[string]*string `locationName:"attributes" type:"map"` } // String returns the string representation func (s GetSMSAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSMSAttributesOutput) GoString() string { return s.String() } // Input for GetSubscriptionAttributes. type GetSubscriptionAttributesInput struct { _ struct{} `type:"structure"` // The ARN of the subscription whose properties you want to get. // // SubscriptionArn is a required field SubscriptionArn *string `type:"string" required:"true"` } // String returns the string representation func (s GetSubscriptionAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSubscriptionAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetSubscriptionAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetSubscriptionAttributesInput"} if s.SubscriptionArn == nil { invalidParams.Add(request.NewErrParamRequired("SubscriptionArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response for GetSubscriptionAttributes action. type GetSubscriptionAttributesOutput struct { _ struct{} `type:"structure"` // A map of the subscription's attributes. Attributes in this map include the // following: // // * SubscriptionArn -- the subscription's ARN // // * TopicArn -- the topic ARN that the subscription is associated with // // * Owner -- the AWS account ID of the subscription's owner // // * ConfirmationWasAuthenticated -- true if the subscription confirmation // request was authenticated // // * DeliveryPolicy -- the JSON serialization of the subscription's delivery // policy // // * EffectiveDeliveryPolicy -- the JSON serialization of the effective delivery // policy that takes into account the topic delivery policy and account system // defaults Attributes map[string]*string `type:"map"` } // String returns the string representation func (s GetSubscriptionAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSubscriptionAttributesOutput) GoString() string { return s.String() } // Input for GetTopicAttributes action. type GetTopicAttributesInput struct { _ struct{} `type:"structure"` // The ARN of the topic whose properties you want to get. // // TopicArn is a required field TopicArn *string `type:"string" required:"true"` } // String returns the string representation func (s GetTopicAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTopicAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetTopicAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetTopicAttributesInput"} if s.TopicArn == nil { invalidParams.Add(request.NewErrParamRequired("TopicArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response for GetTopicAttributes action. type GetTopicAttributesOutput struct { _ struct{} `type:"structure"` // A map of the topic's attributes. Attributes in this map include the following: // // * TopicArn -- the topic's ARN // // * Owner -- the AWS account ID of the topic's owner // // * Policy -- the JSON serialization of the topic's access control policy // // * DisplayName -- the human-readable name used in the "From" field for // notifications to email and email-json endpoints // // * SubscriptionsPending -- the number of subscriptions pending confirmation // on this topic // // * SubscriptionsConfirmed -- the number of confirmed subscriptions on this // topic // // * SubscriptionsDeleted -- the number of deleted subscriptions on this // topic // // * DeliveryPolicy -- the JSON serialization of the topic's delivery policy // // * EffectiveDeliveryPolicy -- the JSON serialization of the effective delivery // policy that takes into account system defaults Attributes map[string]*string `type:"map"` } // String returns the string representation func (s GetTopicAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetTopicAttributesOutput) GoString() string { return s.String() } // Input for ListEndpointsByPlatformApplication action. type ListEndpointsByPlatformApplicationInput struct { _ struct{} `type:"structure"` // NextToken string is used when calling ListEndpointsByPlatformApplication // action to retrieve additional records that are available after the first // page results. NextToken *string `type:"string"` // PlatformApplicationArn for ListEndpointsByPlatformApplicationInput action. // // PlatformApplicationArn is a required field PlatformApplicationArn *string `type:"string" required:"true"` } // String returns the string representation func (s ListEndpointsByPlatformApplicationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListEndpointsByPlatformApplicationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListEndpointsByPlatformApplicationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListEndpointsByPlatformApplicationInput"} if s.PlatformApplicationArn == nil { invalidParams.Add(request.NewErrParamRequired("PlatformApplicationArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response for ListEndpointsByPlatformApplication action. type ListEndpointsByPlatformApplicationOutput struct { _ struct{} `type:"structure"` // Endpoints returned for ListEndpointsByPlatformApplication action. Endpoints []*Endpoint `type:"list"` // NextToken string is returned when calling ListEndpointsByPlatformApplication // action if additional records are available after the first page results. NextToken *string `type:"string"` } // String returns the string representation func (s ListEndpointsByPlatformApplicationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListEndpointsByPlatformApplicationOutput) GoString() string { return s.String() } // The input for the ListPhoneNumbersOptedOut action. type ListPhoneNumbersOptedOutInput struct { _ struct{} `type:"structure"` // A NextToken string is used when you call the ListPhoneNumbersOptedOut action // to retrieve additional records that are available after the first page of // results. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListPhoneNumbersOptedOutInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPhoneNumbersOptedOutInput) GoString() string { return s.String() } // The response from the ListPhoneNumbersOptedOut action. type ListPhoneNumbersOptedOutOutput struct { _ struct{} `type:"structure"` // A NextToken string is returned when you call the ListPhoneNumbersOptedOut // action if additional records are available after the first page of results. NextToken *string `locationName:"nextToken" type:"string"` // A list of phone numbers that are opted out of receiving SMS messages. The // list is paginated, and each page can contain up to 100 phone numbers. PhoneNumbers []*string `locationName:"phoneNumbers" type:"list"` } // String returns the string representation func (s ListPhoneNumbersOptedOutOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPhoneNumbersOptedOutOutput) GoString() string { return s.String() } // Input for ListPlatformApplications action. type ListPlatformApplicationsInput struct { _ struct{} `type:"structure"` // NextToken string is used when calling ListPlatformApplications action to // retrieve additional records that are available after the first page results. NextToken *string `type:"string"` } // String returns the string representation func (s ListPlatformApplicationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPlatformApplicationsInput) GoString() string { return s.String() } // Response for ListPlatformApplications action. type ListPlatformApplicationsOutput struct { _ struct{} `type:"structure"` // NextToken string is returned when calling ListPlatformApplications action // if additional records are available after the first page results. NextToken *string `type:"string"` // Platform applications returned when calling ListPlatformApplications action. PlatformApplications []*PlatformApplication `type:"list"` } // String returns the string representation func (s ListPlatformApplicationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPlatformApplicationsOutput) GoString() string { return s.String() } // Input for ListSubscriptionsByTopic action. type ListSubscriptionsByTopicInput struct { _ struct{} `type:"structure"` // Token returned by the previous ListSubscriptionsByTopic request. NextToken *string `type:"string"` // The ARN of the topic for which you wish to find subscriptions. // // TopicArn is a required field TopicArn *string `type:"string" required:"true"` } // String returns the string representation func (s ListSubscriptionsByTopicInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSubscriptionsByTopicInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListSubscriptionsByTopicInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListSubscriptionsByTopicInput"} if s.TopicArn == nil { invalidParams.Add(request.NewErrParamRequired("TopicArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response for ListSubscriptionsByTopic action. type ListSubscriptionsByTopicOutput struct { _ struct{} `type:"structure"` // Token to pass along to the next ListSubscriptionsByTopic request. This element // is returned if there are more subscriptions to retrieve. NextToken *string `type:"string"` // A list of subscriptions. Subscriptions []*Subscription `type:"list"` } // String returns the string representation func (s ListSubscriptionsByTopicOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSubscriptionsByTopicOutput) GoString() string { return s.String() } // Input for ListSubscriptions action. type ListSubscriptionsInput struct { _ struct{} `type:"structure"` // Token returned by the previous ListSubscriptions request. NextToken *string `type:"string"` } // String returns the string representation func (s ListSubscriptionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSubscriptionsInput) GoString() string { return s.String() } // Response for ListSubscriptions action type ListSubscriptionsOutput struct { _ struct{} `type:"structure"` // Token to pass along to the next ListSubscriptions request. This element is // returned if there are more subscriptions to retrieve. NextToken *string `type:"string"` // A list of subscriptions. Subscriptions []*Subscription `type:"list"` } // String returns the string representation func (s ListSubscriptionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSubscriptionsOutput) GoString() string { return s.String() } type ListTopicsInput struct { _ struct{} `type:"structure"` // Token returned by the previous ListTopics request. NextToken *string `type:"string"` } // String returns the string representation func (s ListTopicsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTopicsInput) GoString() string { return s.String() } // Response for ListTopics action. type ListTopicsOutput struct { _ struct{} `type:"structure"` // Token to pass along to the next ListTopics request. This element is returned // if there are additional topics to retrieve. NextToken *string `type:"string"` // A list of topic ARNs. Topics []*Topic `type:"list"` } // String returns the string representation func (s ListTopicsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTopicsOutput) GoString() string { return s.String() } // The user-specified message attribute value. For string data types, the value // attribute has the same restrictions on the content as the message body. For // more information, see Publish (http://docs.aws.amazon.com/sns/latest/api/API_Publish.html). // // Name, type, and value must not be empty or null. In addition, the message // body should not be empty or null. All parts of the message attribute, including // name, type, and value, are included in the message size restriction, which // is currently 256 KB (262,144 bytes). For more information, see Using Amazon // SNS Message Attributes (http://docs.aws.amazon.com/sns/latest/dg/SNSMessageAttributes.html). type MessageAttributeValue struct { _ struct{} `type:"structure"` // Binary type attributes can store any binary data, for example, compressed // data, encrypted data, or images. // // BinaryValue is automatically base64 encoded/decoded by the SDK. BinaryValue []byte `type:"blob"` // Amazon SNS supports the following logical data types: String, Number, and // Binary. For more information, see Message Attribute Data Types (http://docs.aws.amazon.com/sns/latest/dg/SNSMessageAttributes.html#SNSMessageAttributes.DataTypes). // // DataType is a required field DataType *string `type:"string" required:"true"` // Strings are Unicode with UTF8 binary encoding. For a list of code values, // see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters (http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters). StringValue *string `type:"string"` } // String returns the string representation func (s MessageAttributeValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MessageAttributeValue) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MessageAttributeValue) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MessageAttributeValue"} if s.DataType == nil { invalidParams.Add(request.NewErrParamRequired("DataType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Input for the OptInPhoneNumber action. type OptInPhoneNumberInput struct { _ struct{} `type:"structure"` // The phone number to opt in. // // PhoneNumber is a required field PhoneNumber *string `locationName:"phoneNumber" type:"string" required:"true"` } // String returns the string representation func (s OptInPhoneNumberInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OptInPhoneNumberInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *OptInPhoneNumberInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "OptInPhoneNumberInput"} if s.PhoneNumber == nil { invalidParams.Add(request.NewErrParamRequired("PhoneNumber")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response for the OptInPhoneNumber action. type OptInPhoneNumberOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s OptInPhoneNumberOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OptInPhoneNumberOutput) GoString() string { return s.String() } // Platform application object. type PlatformApplication struct { _ struct{} `type:"structure"` // Attributes for platform application object. Attributes map[string]*string `type:"map"` // PlatformApplicationArn for platform application object. PlatformApplicationArn *string `type:"string"` } // String returns the string representation func (s PlatformApplication) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PlatformApplication) GoString() string { return s.String() } // Input for Publish action. type PublishInput struct { _ struct{} `type:"structure"` // The message you want to send to the topic. // // If you want to send the same message to all transport protocols, include // the text of the message as a String value. // // If you want to send different messages for each transport protocol, set the // value of the MessageStructure parameter to json and use a JSON object for // the Message parameter. // // Constraints: Messages must be UTF-8 encoded strings at most 256 KB in size // (262144 bytes, not 262144 characters). // // JSON-specific constraints: // // * Keys in the JSON object that correspond to supported transport protocols // must have simple JSON string values. // // * The values will be parsed (unescaped) before they are used in outgoing // messages. // // * Outbound notifications are JSON encoded (meaning that the characters // will be reescaped for sending). // // * Values have a minimum length of 0 (the empty string, "", is allowed). // // * Values have a maximum length bounded by the overall message size (so, // including multiple protocols may limit message sizes). // // * Non-string values will cause the key to be ignored. // // * Keys that do not correspond to supported transport protocols are ignored. // // * Duplicate keys are not allowed. // // * Failure to parse or validate any key or value in the message will cause // the Publish call to return an error (no partial delivery). // // Message is a required field Message *string `type:"string" required:"true"` // Message attributes for Publish action. MessageAttributes map[string]*MessageAttributeValue `locationNameKey:"Name" locationNameValue:"Value" type:"map"` // Set MessageStructure to json if you want to send a different message for // each protocol. For example, using one publish action, you can send a short // message to your SMS subscribers and a longer message to your email subscribers. // If you set MessageStructure to json, the value of the Message parameter must: // // * be a syntactically valid JSON object; and // // * contain at least a top-level JSON key of "default" with a value that // is a string. // // You can define other top-level keys that define the message you want to send // to a specific transport protocol (e.g., "http"). // // For information about sending different messages for each protocol using // the AWS Management Console, go to Create Different Messages for Each Protocol // (http://docs.aws.amazon.com/sns/latest/gsg/Publish.html#sns-message-formatting-by-protocol) // in the Amazon Simple Notification Service Getting Started Guide. // // Valid value: json MessageStructure *string `type:"string"` // The phone number to which you want to deliver an SMS message. Use E.164 format. // // If you don't specify a value for the PhoneNumber parameter, you must specify // a value for the TargetArn or TopicArn parameters. PhoneNumber *string `type:"string"` // Optional parameter to be used as the "Subject" line when the message is delivered // to email endpoints. This field will also be included, if present, in the // standard JSON messages delivered to other endpoints. // // Constraints: Subjects must be ASCII text that begins with a letter, number, // or punctuation mark; must not include line breaks or control characters; // and must be less than 100 characters long. Subject *string `type:"string"` // Either TopicArn or EndpointArn, but not both. // // If you don't specify a value for the TargetArn parameter, you must specify // a value for the PhoneNumber or TopicArn parameters. TargetArn *string `type:"string"` // The topic you want to publish to. // // If you don't specify a value for the TopicArn parameter, you must specify // a value for the PhoneNumber or TargetArn parameters. TopicArn *string `type:"string"` } // String returns the string representation func (s PublishInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PublishInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PublishInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PublishInput"} if s.Message == nil { invalidParams.Add(request.NewErrParamRequired("Message")) } if s.MessageAttributes != nil { for i, v := range s.MessageAttributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MessageAttributes", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response for Publish action. type PublishOutput struct { _ struct{} `type:"structure"` // Unique identifier assigned to the published message. // // Length Constraint: Maximum 100 characters MessageId *string `type:"string"` } // String returns the string representation func (s PublishOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PublishOutput) GoString() string { return s.String() } // Input for RemovePermission action. type RemovePermissionInput struct { _ struct{} `type:"structure"` // The unique label of the statement you want to remove. // // Label is a required field Label *string `type:"string" required:"true"` // The ARN of the topic whose access control policy you wish to modify. // // TopicArn is a required field TopicArn *string `type:"string" required:"true"` } // String returns the string representation func (s RemovePermissionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemovePermissionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemovePermissionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemovePermissionInput"} if s.Label == nil { invalidParams.Add(request.NewErrParamRequired("Label")) } if s.TopicArn == nil { invalidParams.Add(request.NewErrParamRequired("TopicArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemovePermissionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemovePermissionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemovePermissionOutput) GoString() string { return s.String() } // Input for SetEndpointAttributes action. type SetEndpointAttributesInput struct { _ struct{} `type:"structure"` // A map of the endpoint attributes. Attributes in this map include the following: // // * CustomUserData -- arbitrary user data to associate with the endpoint. // Amazon SNS does not use this data. The data must be in UTF-8 format and // less than 2KB. // // * Enabled -- flag that enables/disables delivery to the endpoint. Amazon // SNS will set this to false when a notification service indicates to Amazon // SNS that the endpoint is invalid. Users can set it back to true, typically // after updating Token. // // * Token -- device token, also referred to as a registration id, for an // app and mobile device. This is returned from the notification service // when an app and mobile device are registered with the notification service. // // Attributes is a required field Attributes map[string]*string `type:"map" required:"true"` // EndpointArn used for SetEndpointAttributes action. // // EndpointArn is a required field EndpointArn *string `type:"string" required:"true"` } // String returns the string representation func (s SetEndpointAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetEndpointAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetEndpointAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetEndpointAttributesInput"} if s.Attributes == nil { invalidParams.Add(request.NewErrParamRequired("Attributes")) } if s.EndpointArn == nil { invalidParams.Add(request.NewErrParamRequired("EndpointArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetEndpointAttributesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetEndpointAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetEndpointAttributesOutput) GoString() string { return s.String() } // Input for SetPlatformApplicationAttributes action. type SetPlatformApplicationAttributesInput struct { _ struct{} `type:"structure"` // A map of the platform application attributes. Attributes in this map include // the following: // // * PlatformCredential -- The credential received from the notification // service. For APNS/APNS_SANDBOX, PlatformCredential is private key. For // GCM, PlatformCredential is "API key". For ADM, PlatformCredential is "client // secret". // // * PlatformPrincipal -- The principal received from the notification service. // For APNS/APNS_SANDBOX, PlatformPrincipal is SSL certificate. For GCM, // PlatformPrincipal is not applicable. For ADM, PlatformPrincipal is "client // id". // // * EventEndpointCreated -- Topic ARN to which EndpointCreated event notifications // should be sent. // // * EventEndpointDeleted -- Topic ARN to which EndpointDeleted event notifications // should be sent. // // * EventEndpointUpdated -- Topic ARN to which EndpointUpdate event notifications // should be sent. // // * EventDeliveryFailure -- Topic ARN to which DeliveryFailure event notifications // should be sent upon Direct Publish delivery failure (permanent) to one // of the application's endpoints. // // * SuccessFeedbackRoleArn -- IAM role ARN used to give Amazon SNS write // access to use CloudWatch Logs on your behalf. // // * FailureFeedbackRoleArn -- IAM role ARN used to give Amazon SNS write // access to use CloudWatch Logs on your behalf. // // * SuccessFeedbackSampleRate -- Sample rate percentage (0-100) of successfully // delivered messages. // // Attributes is a required field Attributes map[string]*string `type:"map" required:"true"` // PlatformApplicationArn for SetPlatformApplicationAttributes action. // // PlatformApplicationArn is a required field PlatformApplicationArn *string `type:"string" required:"true"` } // String returns the string representation func (s SetPlatformApplicationAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetPlatformApplicationAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetPlatformApplicationAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetPlatformApplicationAttributesInput"} if s.Attributes == nil { invalidParams.Add(request.NewErrParamRequired("Attributes")) } if s.PlatformApplicationArn == nil { invalidParams.Add(request.NewErrParamRequired("PlatformApplicationArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetPlatformApplicationAttributesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetPlatformApplicationAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetPlatformApplicationAttributesOutput) GoString() string { return s.String() } // The input for the SetSMSAttributes action. type SetSMSAttributesInput struct { _ struct{} `type:"structure"` // The default settings for sending SMS messages from your account. You can // set values for the following attribute names: // // MonthlySpendLimit – The maximum amount in USD that you are willing to spend // each month to send SMS messages. When Amazon SNS determines that sending // an SMS message would incur a cost that exceeds this limit, it stops sending // SMS messages within minutes. // // Amazon SNS stops sending SMS messages within minutes of the limit being crossed. // During that interval, if you continue to send SMS messages, you will incur // costs that exceed your limit. // // By default, the spend limit is set to the maximum allowed by Amazon SNS. // If you want to exceed the maximum, contact AWS Support (https://aws.amazon.com/premiumsupport/) // or your AWS sales representative for a service limit increase. // // DeliveryStatusIAMRole – The ARN of the IAM role that allows Amazon SNS to // write logs about SMS deliveries in CloudWatch Logs. For each SMS message // that you send, Amazon SNS writes a log that includes the message price, the // success or failure status, the reason for failure (if the message failed), // the message dwell time, and other information. // // DeliveryStatusSuccessSamplingRate – The percentage of successful SMS deliveries // for which Amazon SNS will write logs in CloudWatch Logs. The value can be // an integer from 0 - 100. For example, to write logs only for failed deliveries, // set this value to 0. To write logs for 10% of your successful deliveries, // set it to 10. // // DefaultSenderID – A string, such as your business brand, that is displayed // as the sender on the receiving device. Support for sender IDs varies by country. // The sender ID can be 1 - 11 alphanumeric characters, and it must contain // at least one letter. // // DefaultSMSType – The type of SMS message that you will send by default. You // can assign the following values: // // * Promotional – (Default) Noncritical messages, such as marketing messages. // Amazon SNS optimizes the message delivery to incur the lowest cost. // // * Transactional – Critical messages that support customer transactions, // such as one-time passcodes for multi-factor authentication. Amazon SNS // optimizes the message delivery to achieve the highest reliability. // // UsageReportS3Bucket – The name of the Amazon S3 bucket to receive daily SMS // usage reports from Amazon SNS. Each day, Amazon SNS will deliver a usage // report as a CSV file to the bucket. The report includes the following information // for each SMS message that was successfully delivered by your account: // // * Time that the message was published (in UTC) // // * Message ID // // * Destination phone number // // * Message type // // * Delivery status // // * Message price (in USD) // // * Part number (a message is split into multiple parts if it is too long // for a single message) // // * Total number of parts // // To receive the report, the bucket must have a policy that allows the Amazon // SNS service principle to perform the s3:PutObject and s3:GetBucketLocation // actions. // // For an example bucket policy and usage report, see Monitoring SMS Activity // (http://docs.aws.amazon.com/sns/latest/dg/sms_stats.html) in the Amazon SNS // Developer Guide. // // Attributes is a required field Attributes map[string]*string `locationName:"attributes" type:"map" required:"true"` } // String returns the string representation func (s SetSMSAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetSMSAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetSMSAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetSMSAttributesInput"} if s.Attributes == nil { invalidParams.Add(request.NewErrParamRequired("Attributes")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response for the SetSMSAttributes action. type SetSMSAttributesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetSMSAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetSMSAttributesOutput) GoString() string { return s.String() } // Input for SetSubscriptionAttributes action. type SetSubscriptionAttributesInput struct { _ struct{} `type:"structure"` // The name of the attribute you want to set. Only a subset of the subscriptions // attributes are mutable. // // Valid values: DeliveryPolicy | RawMessageDelivery // // AttributeName is a required field AttributeName *string `type:"string" required:"true"` // The new value for the attribute in JSON format. AttributeValue *string `type:"string"` // The ARN of the subscription to modify. // // SubscriptionArn is a required field SubscriptionArn *string `type:"string" required:"true"` } // String returns the string representation func (s SetSubscriptionAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetSubscriptionAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetSubscriptionAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetSubscriptionAttributesInput"} if s.AttributeName == nil { invalidParams.Add(request.NewErrParamRequired("AttributeName")) } if s.SubscriptionArn == nil { invalidParams.Add(request.NewErrParamRequired("SubscriptionArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetSubscriptionAttributesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetSubscriptionAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetSubscriptionAttributesOutput) GoString() string { return s.String() } // Input for SetTopicAttributes action. type SetTopicAttributesInput struct { _ struct{} `type:"structure"` // The name of the attribute you want to set. Only a subset of the topic's attributes // are mutable. // // Valid values: Policy | DisplayName | DeliveryPolicy // // AttributeName is a required field AttributeName *string `type:"string" required:"true"` // The new value for the attribute. AttributeValue *string `type:"string"` // The ARN of the topic to modify. // // TopicArn is a required field TopicArn *string `type:"string" required:"true"` } // String returns the string representation func (s SetTopicAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetTopicAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetTopicAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetTopicAttributesInput"} if s.AttributeName == nil { invalidParams.Add(request.NewErrParamRequired("AttributeName")) } if s.TopicArn == nil { invalidParams.Add(request.NewErrParamRequired("TopicArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetTopicAttributesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetTopicAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetTopicAttributesOutput) GoString() string { return s.String() } // Input for Subscribe action. type SubscribeInput struct { _ struct{} `type:"structure"` // The endpoint that you want to receive notifications. Endpoints vary by protocol: // // * For the http protocol, the endpoint is an URL beginning with "http://" // // * For the https protocol, the endpoint is a URL beginning with "https://" // // * For the email protocol, the endpoint is an email address // // * For the email-json protocol, the endpoint is an email address // // * For the sms protocol, the endpoint is a phone number of an SMS-enabled // device // // * For the sqs protocol, the endpoint is the ARN of an Amazon SQS queue // // * For the application protocol, the endpoint is the EndpointArn of a mobile // app and device. // // * For the lambda protocol, the endpoint is the ARN of an AWS Lambda function. Endpoint *string `type:"string"` // The protocol you want to use. Supported protocols include: // // * http -- delivery of JSON-encoded message via HTTP POST // // * https -- delivery of JSON-encoded message via HTTPS POST // // * email -- delivery of message via SMTP // // * email-json -- delivery of JSON-encoded message via SMTP // // * sms -- delivery of message via SMS // // * sqs -- delivery of JSON-encoded message to an Amazon SQS queue // // * application -- delivery of JSON-encoded message to an EndpointArn for // a mobile app and device. // // * lambda -- delivery of JSON-encoded message to an AWS Lambda function. // // Protocol is a required field Protocol *string `type:"string" required:"true"` // The ARN of the topic you want to subscribe to. // // TopicArn is a required field TopicArn *string `type:"string" required:"true"` } // String returns the string representation func (s SubscribeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SubscribeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SubscribeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SubscribeInput"} if s.Protocol == nil { invalidParams.Add(request.NewErrParamRequired("Protocol")) } if s.TopicArn == nil { invalidParams.Add(request.NewErrParamRequired("TopicArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Response for Subscribe action. type SubscribeOutput struct { _ struct{} `type:"structure"` // The ARN of the subscription, if the service was able to create a subscription // immediately (without requiring endpoint owner confirmation). SubscriptionArn *string `type:"string"` } // String returns the string representation func (s SubscribeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SubscribeOutput) GoString() string { return s.String() } // A wrapper type for the attributes of an Amazon SNS subscription. type Subscription struct { _ struct{} `type:"structure"` // The subscription's endpoint (format depends on the protocol). Endpoint *string `type:"string"` // The subscription's owner. Owner *string `type:"string"` // The subscription's protocol. Protocol *string `type:"string"` // The subscription's ARN. SubscriptionArn *string `type:"string"` // The ARN of the subscription's topic. TopicArn *string `type:"string"` } // String returns the string representation func (s Subscription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Subscription) GoString() string { return s.String() } // A wrapper type for the topic's Amazon Resource Name (ARN). To retrieve a // topic's attributes, use GetTopicAttributes. type Topic struct { _ struct{} `type:"structure"` // The topic's ARN. TopicArn *string `type:"string"` } // String returns the string representation func (s Topic) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Topic) GoString() string { return s.String() } // Input for Unsubscribe action. type UnsubscribeInput struct { _ struct{} `type:"structure"` // The ARN of the subscription to be deleted. // // SubscriptionArn is a required field SubscriptionArn *string `type:"string" required:"true"` } // String returns the string representation func (s UnsubscribeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnsubscribeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UnsubscribeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UnsubscribeInput"} if s.SubscriptionArn == nil { invalidParams.Add(request.NewErrParamRequired("SubscriptionArn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UnsubscribeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UnsubscribeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UnsubscribeOutput) GoString() string { return s.String() } aws-sdk-go-1.4.22/service/sns/examples_test.go000066400000000000000000000433541300374646400212430ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package sns_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/sns" ) var _ time.Duration var _ bytes.Buffer func ExampleSNS_AddPermission() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.AddPermissionInput{ AWSAccountId: []*string{ // Required aws.String("delegate"), // Required // More values... }, ActionName: []*string{ // Required aws.String("action"), // Required // More values... }, Label: aws.String("label"), // Required TopicArn: aws.String("topicARN"), // Required } resp, err := svc.AddPermission(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_CheckIfPhoneNumberIsOptedOut() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.CheckIfPhoneNumberIsOptedOutInput{ PhoneNumber: aws.String("PhoneNumber"), // Required } resp, err := svc.CheckIfPhoneNumberIsOptedOut(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_ConfirmSubscription() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.ConfirmSubscriptionInput{ Token: aws.String("token"), // Required TopicArn: aws.String("topicARN"), // Required AuthenticateOnUnsubscribe: aws.String("authenticateOnUnsubscribe"), } resp, err := svc.ConfirmSubscription(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_CreatePlatformApplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.CreatePlatformApplicationInput{ Attributes: map[string]*string{ // Required "Key": aws.String("String"), // Required // More values... }, Name: aws.String("String"), // Required Platform: aws.String("String"), // Required } resp, err := svc.CreatePlatformApplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_CreatePlatformEndpoint() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.CreatePlatformEndpointInput{ PlatformApplicationArn: aws.String("String"), // Required Token: aws.String("String"), // Required Attributes: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, CustomUserData: aws.String("String"), } resp, err := svc.CreatePlatformEndpoint(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_CreateTopic() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.CreateTopicInput{ Name: aws.String("topicName"), // Required } resp, err := svc.CreateTopic(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_DeleteEndpoint() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.DeleteEndpointInput{ EndpointArn: aws.String("String"), // Required } resp, err := svc.DeleteEndpoint(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_DeletePlatformApplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.DeletePlatformApplicationInput{ PlatformApplicationArn: aws.String("String"), // Required } resp, err := svc.DeletePlatformApplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_DeleteTopic() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.DeleteTopicInput{ TopicArn: aws.String("topicARN"), // Required } resp, err := svc.DeleteTopic(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_GetEndpointAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.GetEndpointAttributesInput{ EndpointArn: aws.String("String"), // Required } resp, err := svc.GetEndpointAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_GetPlatformApplicationAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.GetPlatformApplicationAttributesInput{ PlatformApplicationArn: aws.String("String"), // Required } resp, err := svc.GetPlatformApplicationAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_GetSMSAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.GetSMSAttributesInput{ Attributes: []*string{ aws.String("String"), // Required // More values... }, } resp, err := svc.GetSMSAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_GetSubscriptionAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.GetSubscriptionAttributesInput{ SubscriptionArn: aws.String("subscriptionARN"), // Required } resp, err := svc.GetSubscriptionAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_GetTopicAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.GetTopicAttributesInput{ TopicArn: aws.String("topicARN"), // Required } resp, err := svc.GetTopicAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_ListEndpointsByPlatformApplication() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.ListEndpointsByPlatformApplicationInput{ PlatformApplicationArn: aws.String("String"), // Required NextToken: aws.String("String"), } resp, err := svc.ListEndpointsByPlatformApplication(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_ListPhoneNumbersOptedOut() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.ListPhoneNumbersOptedOutInput{ NextToken: aws.String("string"), } resp, err := svc.ListPhoneNumbersOptedOut(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_ListPlatformApplications() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.ListPlatformApplicationsInput{ NextToken: aws.String("String"), } resp, err := svc.ListPlatformApplications(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_ListSubscriptions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.ListSubscriptionsInput{ NextToken: aws.String("nextToken"), } resp, err := svc.ListSubscriptions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_ListSubscriptionsByTopic() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.ListSubscriptionsByTopicInput{ TopicArn: aws.String("topicARN"), // Required NextToken: aws.String("nextToken"), } resp, err := svc.ListSubscriptionsByTopic(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_ListTopics() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.ListTopicsInput{ NextToken: aws.String("nextToken"), } resp, err := svc.ListTopics(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_OptInPhoneNumber() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.OptInPhoneNumberInput{ PhoneNumber: aws.String("PhoneNumber"), // Required } resp, err := svc.OptInPhoneNumber(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_Publish() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.PublishInput{ Message: aws.String("message"), // Required MessageAttributes: map[string]*sns.MessageAttributeValue{ "Key": { // Required DataType: aws.String("String"), // Required BinaryValue: []byte("PAYLOAD"), StringValue: aws.String("String"), }, // More values... }, MessageStructure: aws.String("messageStructure"), PhoneNumber: aws.String("String"), Subject: aws.String("subject"), TargetArn: aws.String("String"), TopicArn: aws.String("topicARN"), } resp, err := svc.Publish(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_RemovePermission() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.RemovePermissionInput{ Label: aws.String("label"), // Required TopicArn: aws.String("topicARN"), // Required } resp, err := svc.RemovePermission(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_SetEndpointAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.SetEndpointAttributesInput{ Attributes: map[string]*string{ // Required "Key": aws.String("String"), // Required // More values... }, EndpointArn: aws.String("String"), // Required } resp, err := svc.SetEndpointAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_SetPlatformApplicationAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.SetPlatformApplicationAttributesInput{ Attributes: map[string]*string{ // Required "Key": aws.String("String"), // Required // More values... }, PlatformApplicationArn: aws.String("String"), // Required } resp, err := svc.SetPlatformApplicationAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_SetSMSAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.SetSMSAttributesInput{ Attributes: map[string]*string{ // Required "Key": aws.String("String"), // Required // More values... }, } resp, err := svc.SetSMSAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_SetSubscriptionAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.SetSubscriptionAttributesInput{ AttributeName: aws.String("attributeName"), // Required SubscriptionArn: aws.String("subscriptionARN"), // Required AttributeValue: aws.String("attributeValue"), } resp, err := svc.SetSubscriptionAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_SetTopicAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.SetTopicAttributesInput{ AttributeName: aws.String("attributeName"), // Required TopicArn: aws.String("topicARN"), // Required AttributeValue: aws.String("attributeValue"), } resp, err := svc.SetTopicAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_Subscribe() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.SubscribeInput{ Protocol: aws.String("protocol"), // Required TopicArn: aws.String("topicARN"), // Required Endpoint: aws.String("endpoint"), } resp, err := svc.Subscribe(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSNS_Unsubscribe() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sns.New(sess) params := &sns.UnsubscribeInput{ SubscriptionArn: aws.String("subscriptionARN"), // Required } resp, err := svc.Unsubscribe(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/sns/service.go000066400000000000000000000067141300374646400200250ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package sns import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/query" ) // Amazon Simple Notification Service (Amazon SNS) is a web service that enables // you to build distributed web-enabled applications. Applications can use Amazon // SNS to easily push real-time notification messages to interested subscribers // over multiple delivery protocols. For more information about this product // see http://aws.amazon.com/sns (http://aws.amazon.com/sns/). For detailed // information about Amazon SNS features and their associated API calls, see // the Amazon SNS Developer Guide (http://docs.aws.amazon.com/sns/latest/dg/). // // We also provide SDKs that enable you to access Amazon SNS from your preferred // programming language. The SDKs contain functionality that automatically takes // care of tasks such as: cryptographically signing your service requests, retrying // requests, and handling error responses. For a list of available SDKs, go // to Tools for Amazon Web Services (http://aws.amazon.com/tools/). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type SNS struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "sns" // New creates a new instance of the SNS client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a SNS client from just a session. // svc := sns.New(mySession) // // // Create a SNS client with additional configuration // svc := sns.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *SNS { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *SNS { svc := &SNS{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2010-03-31", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a SNS operation and runs any // custom request initialization. func (c *SNS) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/sns/snsiface/000077500000000000000000000000001300374646400176215ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/sns/snsiface/interface.go000066400000000000000000000213371300374646400221160ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package snsiface provides an interface to enable mocking the Amazon Simple Notification Service service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package snsiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/sns" ) // SNSAPI provides an interface to enable mocking the // sns.SNS service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Simple Notification Service. // func myFunc(svc snsiface.SNSAPI) bool { // // Make svc.AddPermission request // } // // func main() { // sess := session.New() // svc := sns.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockSNSClient struct { // snsiface.SNSAPI // } // func (m *mockSNSClient) AddPermission(input *sns.AddPermissionInput) (*sns.AddPermissionOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockSNSClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type SNSAPI interface { AddPermissionRequest(*sns.AddPermissionInput) (*request.Request, *sns.AddPermissionOutput) AddPermission(*sns.AddPermissionInput) (*sns.AddPermissionOutput, error) CheckIfPhoneNumberIsOptedOutRequest(*sns.CheckIfPhoneNumberIsOptedOutInput) (*request.Request, *sns.CheckIfPhoneNumberIsOptedOutOutput) CheckIfPhoneNumberIsOptedOut(*sns.CheckIfPhoneNumberIsOptedOutInput) (*sns.CheckIfPhoneNumberIsOptedOutOutput, error) ConfirmSubscriptionRequest(*sns.ConfirmSubscriptionInput) (*request.Request, *sns.ConfirmSubscriptionOutput) ConfirmSubscription(*sns.ConfirmSubscriptionInput) (*sns.ConfirmSubscriptionOutput, error) CreatePlatformApplicationRequest(*sns.CreatePlatformApplicationInput) (*request.Request, *sns.CreatePlatformApplicationOutput) CreatePlatformApplication(*sns.CreatePlatformApplicationInput) (*sns.CreatePlatformApplicationOutput, error) CreatePlatformEndpointRequest(*sns.CreatePlatformEndpointInput) (*request.Request, *sns.CreatePlatformEndpointOutput) CreatePlatformEndpoint(*sns.CreatePlatformEndpointInput) (*sns.CreatePlatformEndpointOutput, error) CreateTopicRequest(*sns.CreateTopicInput) (*request.Request, *sns.CreateTopicOutput) CreateTopic(*sns.CreateTopicInput) (*sns.CreateTopicOutput, error) DeleteEndpointRequest(*sns.DeleteEndpointInput) (*request.Request, *sns.DeleteEndpointOutput) DeleteEndpoint(*sns.DeleteEndpointInput) (*sns.DeleteEndpointOutput, error) DeletePlatformApplicationRequest(*sns.DeletePlatformApplicationInput) (*request.Request, *sns.DeletePlatformApplicationOutput) DeletePlatformApplication(*sns.DeletePlatformApplicationInput) (*sns.DeletePlatformApplicationOutput, error) DeleteTopicRequest(*sns.DeleteTopicInput) (*request.Request, *sns.DeleteTopicOutput) DeleteTopic(*sns.DeleteTopicInput) (*sns.DeleteTopicOutput, error) GetEndpointAttributesRequest(*sns.GetEndpointAttributesInput) (*request.Request, *sns.GetEndpointAttributesOutput) GetEndpointAttributes(*sns.GetEndpointAttributesInput) (*sns.GetEndpointAttributesOutput, error) GetPlatformApplicationAttributesRequest(*sns.GetPlatformApplicationAttributesInput) (*request.Request, *sns.GetPlatformApplicationAttributesOutput) GetPlatformApplicationAttributes(*sns.GetPlatformApplicationAttributesInput) (*sns.GetPlatformApplicationAttributesOutput, error) GetSMSAttributesRequest(*sns.GetSMSAttributesInput) (*request.Request, *sns.GetSMSAttributesOutput) GetSMSAttributes(*sns.GetSMSAttributesInput) (*sns.GetSMSAttributesOutput, error) GetSubscriptionAttributesRequest(*sns.GetSubscriptionAttributesInput) (*request.Request, *sns.GetSubscriptionAttributesOutput) GetSubscriptionAttributes(*sns.GetSubscriptionAttributesInput) (*sns.GetSubscriptionAttributesOutput, error) GetTopicAttributesRequest(*sns.GetTopicAttributesInput) (*request.Request, *sns.GetTopicAttributesOutput) GetTopicAttributes(*sns.GetTopicAttributesInput) (*sns.GetTopicAttributesOutput, error) ListEndpointsByPlatformApplicationRequest(*sns.ListEndpointsByPlatformApplicationInput) (*request.Request, *sns.ListEndpointsByPlatformApplicationOutput) ListEndpointsByPlatformApplication(*sns.ListEndpointsByPlatformApplicationInput) (*sns.ListEndpointsByPlatformApplicationOutput, error) ListEndpointsByPlatformApplicationPages(*sns.ListEndpointsByPlatformApplicationInput, func(*sns.ListEndpointsByPlatformApplicationOutput, bool) bool) error ListPhoneNumbersOptedOutRequest(*sns.ListPhoneNumbersOptedOutInput) (*request.Request, *sns.ListPhoneNumbersOptedOutOutput) ListPhoneNumbersOptedOut(*sns.ListPhoneNumbersOptedOutInput) (*sns.ListPhoneNumbersOptedOutOutput, error) ListPlatformApplicationsRequest(*sns.ListPlatformApplicationsInput) (*request.Request, *sns.ListPlatformApplicationsOutput) ListPlatformApplications(*sns.ListPlatformApplicationsInput) (*sns.ListPlatformApplicationsOutput, error) ListPlatformApplicationsPages(*sns.ListPlatformApplicationsInput, func(*sns.ListPlatformApplicationsOutput, bool) bool) error ListSubscriptionsRequest(*sns.ListSubscriptionsInput) (*request.Request, *sns.ListSubscriptionsOutput) ListSubscriptions(*sns.ListSubscriptionsInput) (*sns.ListSubscriptionsOutput, error) ListSubscriptionsPages(*sns.ListSubscriptionsInput, func(*sns.ListSubscriptionsOutput, bool) bool) error ListSubscriptionsByTopicRequest(*sns.ListSubscriptionsByTopicInput) (*request.Request, *sns.ListSubscriptionsByTopicOutput) ListSubscriptionsByTopic(*sns.ListSubscriptionsByTopicInput) (*sns.ListSubscriptionsByTopicOutput, error) ListSubscriptionsByTopicPages(*sns.ListSubscriptionsByTopicInput, func(*sns.ListSubscriptionsByTopicOutput, bool) bool) error ListTopicsRequest(*sns.ListTopicsInput) (*request.Request, *sns.ListTopicsOutput) ListTopics(*sns.ListTopicsInput) (*sns.ListTopicsOutput, error) ListTopicsPages(*sns.ListTopicsInput, func(*sns.ListTopicsOutput, bool) bool) error OptInPhoneNumberRequest(*sns.OptInPhoneNumberInput) (*request.Request, *sns.OptInPhoneNumberOutput) OptInPhoneNumber(*sns.OptInPhoneNumberInput) (*sns.OptInPhoneNumberOutput, error) PublishRequest(*sns.PublishInput) (*request.Request, *sns.PublishOutput) Publish(*sns.PublishInput) (*sns.PublishOutput, error) RemovePermissionRequest(*sns.RemovePermissionInput) (*request.Request, *sns.RemovePermissionOutput) RemovePermission(*sns.RemovePermissionInput) (*sns.RemovePermissionOutput, error) SetEndpointAttributesRequest(*sns.SetEndpointAttributesInput) (*request.Request, *sns.SetEndpointAttributesOutput) SetEndpointAttributes(*sns.SetEndpointAttributesInput) (*sns.SetEndpointAttributesOutput, error) SetPlatformApplicationAttributesRequest(*sns.SetPlatformApplicationAttributesInput) (*request.Request, *sns.SetPlatformApplicationAttributesOutput) SetPlatformApplicationAttributes(*sns.SetPlatformApplicationAttributesInput) (*sns.SetPlatformApplicationAttributesOutput, error) SetSMSAttributesRequest(*sns.SetSMSAttributesInput) (*request.Request, *sns.SetSMSAttributesOutput) SetSMSAttributes(*sns.SetSMSAttributesInput) (*sns.SetSMSAttributesOutput, error) SetSubscriptionAttributesRequest(*sns.SetSubscriptionAttributesInput) (*request.Request, *sns.SetSubscriptionAttributesOutput) SetSubscriptionAttributes(*sns.SetSubscriptionAttributesInput) (*sns.SetSubscriptionAttributesOutput, error) SetTopicAttributesRequest(*sns.SetTopicAttributesInput) (*request.Request, *sns.SetTopicAttributesOutput) SetTopicAttributes(*sns.SetTopicAttributesInput) (*sns.SetTopicAttributesOutput, error) SubscribeRequest(*sns.SubscribeInput) (*request.Request, *sns.SubscribeOutput) Subscribe(*sns.SubscribeInput) (*sns.SubscribeOutput, error) UnsubscribeRequest(*sns.UnsubscribeInput) (*request.Request, *sns.UnsubscribeOutput) Unsubscribe(*sns.UnsubscribeInput) (*sns.UnsubscribeOutput, error) } var _ SNSAPI = (*sns.SNS)(nil) aws-sdk-go-1.4.22/service/sqs/000077500000000000000000000000001300374646400160315ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/sqs/api.go000066400000000000000000003304151300374646400171370ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package sqs provides a client for Amazon Simple Queue Service. package sqs import ( "fmt" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/query" ) const opAddPermission = "AddPermission" // AddPermissionRequest generates a "aws/request.Request" representing the // client's request for the AddPermission operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddPermission for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddPermission method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddPermissionRequest method. // req, resp := client.AddPermissionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SQS) AddPermissionRequest(input *AddPermissionInput) (req *request.Request, output *AddPermissionOutput) { op := &request.Operation{ Name: opAddPermission, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddPermissionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &AddPermissionOutput{} req.Data = output return } // AddPermission API operation for Amazon Simple Queue Service. // // Adds a permission to a queue for a specific principal (http://docs.aws.amazon.com/general/latest/gr/glos-chap.html#P). // This allows for sharing access to the queue. // // When you create a queue, you have full control access rights for the queue. // Only you (as owner of the queue) can grant or deny permissions to the queue. // For more information about these permissions, see Shared Queues (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/acp-overview.html) // in the Amazon SQS Developer Guide. // // AddPermission writes an Amazon SQS-generated policy. If you want to write // your own policy, use SetQueueAttributes to upload your policy. For more information // about writing your own policy, see Using The Access Policy Language (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AccessPolicyLanguage.html) // in the Amazon SQS Developer Guide. // // Some API actions take lists of parameters. These lists are specified using // the param.n notation. Values of n are integers starting from 1. For example, // a parameter list with two elements looks like this: // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation AddPermission for usage and error information. // // Returned Error Codes: // * OverLimit // The action that you requested would violate a limit. For example, ReceiveMessage // returns this error if the maximum number of messages inflight has already // been reached. AddPermission returns this error if the maximum number of permissions // for the queue has already been reached. // func (c *SQS) AddPermission(input *AddPermissionInput) (*AddPermissionOutput, error) { req, out := c.AddPermissionRequest(input) err := req.Send() return out, err } const opChangeMessageVisibility = "ChangeMessageVisibility" // ChangeMessageVisibilityRequest generates a "aws/request.Request" representing the // client's request for the ChangeMessageVisibility operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ChangeMessageVisibility for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ChangeMessageVisibility method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ChangeMessageVisibilityRequest method. // req, resp := client.ChangeMessageVisibilityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SQS) ChangeMessageVisibilityRequest(input *ChangeMessageVisibilityInput) (req *request.Request, output *ChangeMessageVisibilityOutput) { op := &request.Operation{ Name: opChangeMessageVisibility, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ChangeMessageVisibilityInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &ChangeMessageVisibilityOutput{} req.Data = output return } // ChangeMessageVisibility API operation for Amazon Simple Queue Service. // // Changes the visibility timeout of a specified message in a queue to a new // value. The maximum allowed timeout value you can set the value to is 12 hours. // This means you can't extend the timeout of a message in an existing queue // to more than a total visibility timeout of 12 hours. (For more information // visibility timeout, see Visibility Timeout (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html) // in the Amazon SQS Developer Guide.) // // For example, let's say you have a message and its default message visibility // timeout is 5 minutes. After 3 minutes, you call ChangeMessageVisiblity with // a timeout of 10 minutes. At that time, the timeout for the message would // be extended by 10 minutes beyond the time of the ChangeMessageVisibility // call. This results in a total visibility timeout of 13 minutes. You can continue // to call ChangeMessageVisibility to extend the visibility timeout to a maximum // of 12 hours. If you try to extend beyond 12 hours, the request will be rejected. // // There is a 120,000 limit for the number of inflight messages per queue. Messages // are inflight after they have been received from the queue by a consuming // component, but have not yet been deleted from the queue. If you reach the // 120,000 limit, you will receive an OverLimit error message from Amazon SQS. // To help avoid reaching the limit, you should delete the messages from the // queue after they have been processed. You can also increase the number of // queues you use to process the messages. // // If you attempt to set the VisibilityTimeout to an amount more than the maximum // time left, Amazon SQS returns an error. It will not automatically recalculate // and increase the timeout to the maximum time remaining. // // Unlike with a queue, when you change the visibility timeout for a specific // message, that timeout value is applied immediately but is not saved in memory // for that message. If you don't delete a message after it is received, the // visibility timeout for the message the next time it is received reverts to // the original timeout value, not the value you set with the ChangeMessageVisibility // action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation ChangeMessageVisibility for usage and error information. // // Returned Error Codes: // * AWS.SimpleQueueService.MessageNotInflight // The message referred to is not in flight. // // * ReceiptHandleIsInvalid // The receipt handle provided is not valid. // func (c *SQS) ChangeMessageVisibility(input *ChangeMessageVisibilityInput) (*ChangeMessageVisibilityOutput, error) { req, out := c.ChangeMessageVisibilityRequest(input) err := req.Send() return out, err } const opChangeMessageVisibilityBatch = "ChangeMessageVisibilityBatch" // ChangeMessageVisibilityBatchRequest generates a "aws/request.Request" representing the // client's request for the ChangeMessageVisibilityBatch operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ChangeMessageVisibilityBatch for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ChangeMessageVisibilityBatch method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ChangeMessageVisibilityBatchRequest method. // req, resp := client.ChangeMessageVisibilityBatchRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SQS) ChangeMessageVisibilityBatchRequest(input *ChangeMessageVisibilityBatchInput) (req *request.Request, output *ChangeMessageVisibilityBatchOutput) { op := &request.Operation{ Name: opChangeMessageVisibilityBatch, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ChangeMessageVisibilityBatchInput{} } req = c.newRequest(op, input, output) output = &ChangeMessageVisibilityBatchOutput{} req.Data = output return } // ChangeMessageVisibilityBatch API operation for Amazon Simple Queue Service. // // Changes the visibility timeout of multiple messages. This is a batch version // of ChangeMessageVisibility. The result of the action on each message is reported // individually in the response. You can send up to 10 ChangeMessageVisibility // requests with each ChangeMessageVisibilityBatch action. // // Because the batch request can result in a combination of successful and unsuccessful // actions, you should check for batch errors even when the call returns an // HTTP status code of 200. // // Some API actions take lists of parameters. These lists are specified using // the param.n notation. Values of n are integers starting from 1. For example, // a parameter list with two elements looks like this: // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation ChangeMessageVisibilityBatch for usage and error information. // // Returned Error Codes: // * AWS.SimpleQueueService.TooManyEntriesInBatchRequest // Batch request contains more number of entries than permissible. // // * AWS.SimpleQueueService.EmptyBatchRequest // Batch request does not contain an entry. // // * AWS.SimpleQueueService.BatchEntryIdsNotDistinct // Two or more batch entries have the same Id in the request. // // * AWS.SimpleQueueService.InvalidBatchEntryId // The Id of a batch entry in a batch request does not abide by the specification. // func (c *SQS) ChangeMessageVisibilityBatch(input *ChangeMessageVisibilityBatchInput) (*ChangeMessageVisibilityBatchOutput, error) { req, out := c.ChangeMessageVisibilityBatchRequest(input) err := req.Send() return out, err } const opCreateQueue = "CreateQueue" // CreateQueueRequest generates a "aws/request.Request" representing the // client's request for the CreateQueue operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateQueue for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateQueue method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateQueueRequest method. // req, resp := client.CreateQueueRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SQS) CreateQueueRequest(input *CreateQueueInput) (req *request.Request, output *CreateQueueOutput) { op := &request.Operation{ Name: opCreateQueue, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateQueueInput{} } req = c.newRequest(op, input, output) output = &CreateQueueOutput{} req.Data = output return } // CreateQueue API operation for Amazon Simple Queue Service. // // Creates a new queue, or returns the URL of an existing one. When you request // CreateQueue, you provide a name for the queue. To successfully create a new // queue, you must provide a name that is unique within the scope of your own // queues. // // If you delete a queue, you must wait at least 60 seconds before creating // a queue with the same name. // // You may pass one or more attributes in the request. If you do not provide // a value for any attribute, the queue will have the default value for that // attribute. // // Use GetQueueUrl to get a queue's URL. GetQueueUrl requires only the QueueName // parameter. // // If you provide the name of an existing queue, along with the exact names // and values of all the queue's attributes, CreateQueue returns the queue URL // for the existing queue. If the queue name, attribute names, or attribute // values do not match an existing queue, CreateQueue returns an error. // // Some API actions take lists of parameters. These lists are specified using // the param.n notation. Values of n are integers starting from 1. For example, // a parameter list with two elements looks like this: // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation CreateQueue for usage and error information. // // Returned Error Codes: // * AWS.SimpleQueueService.QueueDeletedRecently // You must wait 60 seconds after deleting a queue before you can create another // with the same name. // // * QueueAlreadyExists // A queue already exists with this name. Amazon SQS returns this error only // if the request includes attributes whose values differ from those of the // existing queue. // func (c *SQS) CreateQueue(input *CreateQueueInput) (*CreateQueueOutput, error) { req, out := c.CreateQueueRequest(input) err := req.Send() return out, err } const opDeleteMessage = "DeleteMessage" // DeleteMessageRequest generates a "aws/request.Request" representing the // client's request for the DeleteMessage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteMessage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteMessage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteMessageRequest method. // req, resp := client.DeleteMessageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SQS) DeleteMessageRequest(input *DeleteMessageInput) (req *request.Request, output *DeleteMessageOutput) { op := &request.Operation{ Name: opDeleteMessage, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteMessageInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteMessageOutput{} req.Data = output return } // DeleteMessage API operation for Amazon Simple Queue Service. // // Deletes the specified message from the specified queue. You specify the message // by using the message's receipt handle and not the message ID you received // when you sent the message. Even if the message is locked by another reader // due to the visibility timeout setting, it is still deleted from the queue. // If you leave a message in the queue for longer than the queue's configured // retention period, Amazon SQS automatically deletes it. // // The receipt handle is associated with a specific instance of receiving the // message. If you receive a message more than once, the receipt handle you // get each time you receive the message is different. When you request DeleteMessage, // if you don't provide the most recently received receipt handle for the message, // the request will still succeed, but the message might not be deleted. // // It is possible you will receive a message even after you have deleted it. // This might happen on rare occasions if one of the servers storing a copy // of the message is unavailable when you request to delete the message. The // copy remains on the server and might be returned to you again on a subsequent // receive request. You should create your system to be idempotent so that receiving // a particular message more than once is not a problem. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation DeleteMessage for usage and error information. // // Returned Error Codes: // * InvalidIdFormat // The receipt handle is not valid for the current version. // // * ReceiptHandleIsInvalid // The receipt handle provided is not valid. // func (c *SQS) DeleteMessage(input *DeleteMessageInput) (*DeleteMessageOutput, error) { req, out := c.DeleteMessageRequest(input) err := req.Send() return out, err } const opDeleteMessageBatch = "DeleteMessageBatch" // DeleteMessageBatchRequest generates a "aws/request.Request" representing the // client's request for the DeleteMessageBatch operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteMessageBatch for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteMessageBatch method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteMessageBatchRequest method. // req, resp := client.DeleteMessageBatchRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SQS) DeleteMessageBatchRequest(input *DeleteMessageBatchInput) (req *request.Request, output *DeleteMessageBatchOutput) { op := &request.Operation{ Name: opDeleteMessageBatch, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteMessageBatchInput{} } req = c.newRequest(op, input, output) output = &DeleteMessageBatchOutput{} req.Data = output return } // DeleteMessageBatch API operation for Amazon Simple Queue Service. // // Deletes up to ten messages from the specified queue. This is a batch version // of DeleteMessage. The result of the delete action on each message is reported // individually in the response. // // Because the batch request can result in a combination of successful and unsuccessful // actions, you should check for batch errors even when the call returns an // HTTP status code of 200. // // Some API actions take lists of parameters. These lists are specified using // the param.n notation. Values of n are integers starting from 1. For example, // a parameter list with two elements looks like this: // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation DeleteMessageBatch for usage and error information. // // Returned Error Codes: // * AWS.SimpleQueueService.TooManyEntriesInBatchRequest // Batch request contains more number of entries than permissible. // // * AWS.SimpleQueueService.EmptyBatchRequest // Batch request does not contain an entry. // // * AWS.SimpleQueueService.BatchEntryIdsNotDistinct // Two or more batch entries have the same Id in the request. // // * AWS.SimpleQueueService.InvalidBatchEntryId // The Id of a batch entry in a batch request does not abide by the specification. // func (c *SQS) DeleteMessageBatch(input *DeleteMessageBatchInput) (*DeleteMessageBatchOutput, error) { req, out := c.DeleteMessageBatchRequest(input) err := req.Send() return out, err } const opDeleteQueue = "DeleteQueue" // DeleteQueueRequest generates a "aws/request.Request" representing the // client's request for the DeleteQueue operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteQueue for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteQueue method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteQueueRequest method. // req, resp := client.DeleteQueueRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SQS) DeleteQueueRequest(input *DeleteQueueInput) (req *request.Request, output *DeleteQueueOutput) { op := &request.Operation{ Name: opDeleteQueue, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteQueueInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeleteQueueOutput{} req.Data = output return } // DeleteQueue API operation for Amazon Simple Queue Service. // // Deletes the queue specified by the queue URL, regardless of whether the queue // is empty. If the specified queue does not exist, Amazon SQS returns a successful // response. // // Use DeleteQueue with care; once you delete your queue, any messages in the // queue are no longer available. // // When you delete a queue, the deletion process takes up to 60 seconds. Requests // you send involving that queue during the 60 seconds might succeed. For example, // a SendMessage request might succeed, but after the 60 seconds, the queue // and that message you sent no longer exist. Also, when you delete a queue, // you must wait at least 60 seconds before creating a queue with the same name. // // We reserve the right to delete queues that have had no activity for more // than 30 days. For more information, see How Amazon SQS Queues Work (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSConcepts.html) // in the Amazon SQS Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation DeleteQueue for usage and error information. func (c *SQS) DeleteQueue(input *DeleteQueueInput) (*DeleteQueueOutput, error) { req, out := c.DeleteQueueRequest(input) err := req.Send() return out, err } const opGetQueueAttributes = "GetQueueAttributes" // GetQueueAttributesRequest generates a "aws/request.Request" representing the // client's request for the GetQueueAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetQueueAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetQueueAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetQueueAttributesRequest method. // req, resp := client.GetQueueAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SQS) GetQueueAttributesRequest(input *GetQueueAttributesInput) (req *request.Request, output *GetQueueAttributesOutput) { op := &request.Operation{ Name: opGetQueueAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetQueueAttributesInput{} } req = c.newRequest(op, input, output) output = &GetQueueAttributesOutput{} req.Data = output return } // GetQueueAttributes API operation for Amazon Simple Queue Service. // // Gets attributes for the specified queue. // // Some API actions take lists of parameters. These lists are specified using // the param.n notation. Values of n are integers starting from 1. For example, // a parameter list with two elements looks like this: // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation GetQueueAttributes for usage and error information. // // Returned Error Codes: // * InvalidAttributeName // The attribute referred to does not exist. // func (c *SQS) GetQueueAttributes(input *GetQueueAttributesInput) (*GetQueueAttributesOutput, error) { req, out := c.GetQueueAttributesRequest(input) err := req.Send() return out, err } const opGetQueueUrl = "GetQueueUrl" // GetQueueUrlRequest generates a "aws/request.Request" representing the // client's request for the GetQueueUrl operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetQueueUrl for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetQueueUrl method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetQueueUrlRequest method. // req, resp := client.GetQueueUrlRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SQS) GetQueueUrlRequest(input *GetQueueUrlInput) (req *request.Request, output *GetQueueUrlOutput) { op := &request.Operation{ Name: opGetQueueUrl, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetQueueUrlInput{} } req = c.newRequest(op, input, output) output = &GetQueueUrlOutput{} req.Data = output return } // GetQueueUrl API operation for Amazon Simple Queue Service. // // Returns the URL of an existing queue. This action provides a simple way to // retrieve the URL of an Amazon SQS queue. // // To access a queue that belongs to another AWS account, use the QueueOwnerAWSAccountId // parameter to specify the account ID of the queue's owner. The queue's owner // must grant you permission to access the queue. For more information about // shared queue access, see AddPermission or go to Shared Queues (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/acp-overview.html) // in the Amazon SQS Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation GetQueueUrl for usage and error information. // // Returned Error Codes: // * AWS.SimpleQueueService.NonExistentQueue // The queue referred to does not exist. // func (c *SQS) GetQueueUrl(input *GetQueueUrlInput) (*GetQueueUrlOutput, error) { req, out := c.GetQueueUrlRequest(input) err := req.Send() return out, err } const opListDeadLetterSourceQueues = "ListDeadLetterSourceQueues" // ListDeadLetterSourceQueuesRequest generates a "aws/request.Request" representing the // client's request for the ListDeadLetterSourceQueues operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDeadLetterSourceQueues for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDeadLetterSourceQueues method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDeadLetterSourceQueuesRequest method. // req, resp := client.ListDeadLetterSourceQueuesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SQS) ListDeadLetterSourceQueuesRequest(input *ListDeadLetterSourceQueuesInput) (req *request.Request, output *ListDeadLetterSourceQueuesOutput) { op := &request.Operation{ Name: opListDeadLetterSourceQueues, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListDeadLetterSourceQueuesInput{} } req = c.newRequest(op, input, output) output = &ListDeadLetterSourceQueuesOutput{} req.Data = output return } // ListDeadLetterSourceQueues API operation for Amazon Simple Queue Service. // // Returns a list of your queues that have the RedrivePolicy queue attribute // configured with a dead letter queue. // // For more information about using dead letter queues, see Using Amazon SQS // Dead Letter Queues (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation ListDeadLetterSourceQueues for usage and error information. // // Returned Error Codes: // * AWS.SimpleQueueService.NonExistentQueue // The queue referred to does not exist. // func (c *SQS) ListDeadLetterSourceQueues(input *ListDeadLetterSourceQueuesInput) (*ListDeadLetterSourceQueuesOutput, error) { req, out := c.ListDeadLetterSourceQueuesRequest(input) err := req.Send() return out, err } const opListQueues = "ListQueues" // ListQueuesRequest generates a "aws/request.Request" representing the // client's request for the ListQueues operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListQueues for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListQueues method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListQueuesRequest method. // req, resp := client.ListQueuesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SQS) ListQueuesRequest(input *ListQueuesInput) (req *request.Request, output *ListQueuesOutput) { op := &request.Operation{ Name: opListQueues, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListQueuesInput{} } req = c.newRequest(op, input, output) output = &ListQueuesOutput{} req.Data = output return } // ListQueues API operation for Amazon Simple Queue Service. // // Returns a list of your queues. The maximum number of queues that can be returned // is 1000. If you specify a value for the optional QueueNamePrefix parameter, // only queues with a name beginning with the specified value are returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation ListQueues for usage and error information. func (c *SQS) ListQueues(input *ListQueuesInput) (*ListQueuesOutput, error) { req, out := c.ListQueuesRequest(input) err := req.Send() return out, err } const opPurgeQueue = "PurgeQueue" // PurgeQueueRequest generates a "aws/request.Request" representing the // client's request for the PurgeQueue operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PurgeQueue for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PurgeQueue method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PurgeQueueRequest method. // req, resp := client.PurgeQueueRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SQS) PurgeQueueRequest(input *PurgeQueueInput) (req *request.Request, output *PurgeQueueOutput) { op := &request.Operation{ Name: opPurgeQueue, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PurgeQueueInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &PurgeQueueOutput{} req.Data = output return } // PurgeQueue API operation for Amazon Simple Queue Service. // // Deletes the messages in a queue specified by the queue URL. // // When you use the PurgeQueue API, the deleted messages in the queue cannot // be retrieved. // // When you purge a queue, the message deletion process takes up to 60 seconds. // All messages sent to the queue before calling PurgeQueue will be deleted; // messages sent to the queue while it is being purged may be deleted. While // the queue is being purged, messages sent to the queue before PurgeQueue was // called may be received, but will be deleted within the next minute. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation PurgeQueue for usage and error information. // // Returned Error Codes: // * AWS.SimpleQueueService.NonExistentQueue // The queue referred to does not exist. // // * AWS.SimpleQueueService.PurgeQueueInProgress // Indicates that the specified queue previously received a PurgeQueue request // within the last 60 seconds, the time it can take to delete the messages in // the queue. // func (c *SQS) PurgeQueue(input *PurgeQueueInput) (*PurgeQueueOutput, error) { req, out := c.PurgeQueueRequest(input) err := req.Send() return out, err } const opReceiveMessage = "ReceiveMessage" // ReceiveMessageRequest generates a "aws/request.Request" representing the // client's request for the ReceiveMessage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ReceiveMessage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ReceiveMessage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ReceiveMessageRequest method. // req, resp := client.ReceiveMessageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SQS) ReceiveMessageRequest(input *ReceiveMessageInput) (req *request.Request, output *ReceiveMessageOutput) { op := &request.Operation{ Name: opReceiveMessage, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ReceiveMessageInput{} } req = c.newRequest(op, input, output) output = &ReceiveMessageOutput{} req.Data = output return } // ReceiveMessage API operation for Amazon Simple Queue Service. // // Retrieves one or more messages, with a maximum limit of 10 messages, from // the specified queue. Long poll support is enabled by using the WaitTimeSeconds // parameter. For more information, see Amazon SQS Long Poll (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-long-polling.html) // in the Amazon SQS Developer Guide. // // Short poll is the default behavior where a weighted random set of machines // is sampled on a ReceiveMessage call. This means only the messages on the // sampled machines are returned. If the number of messages in the queue is // small (less than 1000), it is likely you will get fewer messages than you // requested per ReceiveMessage call. If the number of messages in the queue // is extremely small, you might not receive any messages in a particular ReceiveMessage // response; in which case you should repeat the request. // // For each message returned, the response includes the following: // // * Message body // // * MD5 digest of the message body. For information about MD5, go to http://www.faqs.org/rfcs/rfc1321.html // (http://www.faqs.org/rfcs/rfc1321.html). // // * Message ID you received when you sent the message to the queue. // // * Receipt handle. // // * Message attributes. // // * MD5 digest of the message attributes. // // The receipt handle is the identifier you must provide when deleting the message. // For more information, see Queue and Message Identifiers (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/ImportantIdentifiers.html) // in the Amazon SQS Developer Guide. // // You can provide the VisibilityTimeout parameter in your request, which will // be applied to the messages that Amazon SQS returns in the response. If you // do not include the parameter, the overall visibility timeout for the queue // is used for the returned messages. For more information, see Visibility Timeout // (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html) // in the Amazon SQS Developer Guide. // // Going forward, new attributes might be added. If you are writing code that // calls this action, we recommend that you structure your code so that it can // handle new attributes gracefully. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation ReceiveMessage for usage and error information. // // Returned Error Codes: // * OverLimit // The action that you requested would violate a limit. For example, ReceiveMessage // returns this error if the maximum number of messages inflight has already // been reached. AddPermission returns this error if the maximum number of permissions // for the queue has already been reached. // func (c *SQS) ReceiveMessage(input *ReceiveMessageInput) (*ReceiveMessageOutput, error) { req, out := c.ReceiveMessageRequest(input) err := req.Send() return out, err } const opRemovePermission = "RemovePermission" // RemovePermissionRequest generates a "aws/request.Request" representing the // client's request for the RemovePermission operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemovePermission for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemovePermission method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemovePermissionRequest method. // req, resp := client.RemovePermissionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SQS) RemovePermissionRequest(input *RemovePermissionInput) (req *request.Request, output *RemovePermissionOutput) { op := &request.Operation{ Name: opRemovePermission, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemovePermissionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RemovePermissionOutput{} req.Data = output return } // RemovePermission API operation for Amazon Simple Queue Service. // // Revokes any permissions in the queue policy that matches the specified Label // parameter. Only the owner of the queue can remove permissions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation RemovePermission for usage and error information. func (c *SQS) RemovePermission(input *RemovePermissionInput) (*RemovePermissionOutput, error) { req, out := c.RemovePermissionRequest(input) err := req.Send() return out, err } const opSendMessage = "SendMessage" // SendMessageRequest generates a "aws/request.Request" representing the // client's request for the SendMessage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SendMessage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SendMessage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SendMessageRequest method. // req, resp := client.SendMessageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SQS) SendMessageRequest(input *SendMessageInput) (req *request.Request, output *SendMessageOutput) { op := &request.Operation{ Name: opSendMessage, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SendMessageInput{} } req = c.newRequest(op, input, output) output = &SendMessageOutput{} req.Data = output return } // SendMessage API operation for Amazon Simple Queue Service. // // Delivers a message to the specified queue. With Amazon SQS, you now have // the ability to send large payload messages that are up to 256KB (262,144 // bytes) in size. To send large payloads, you must use an AWS SDK that supports // SigV4 signing. To verify whether SigV4 is supported for an AWS SDK, check // the SDK release notes. // // The following list shows the characters (in Unicode) allowed in your message, // according to the W3C XML specification. For more information, go to http://www.w3.org/TR/REC-xml/#charsets // (http://www.w3.org/TR/REC-xml/#charsets) If you send any characters not included // in the list, your request will be rejected. // // #x9 | #xA | #xD | [#x20 to #xD7FF] | [#xE000 to #xFFFD] | [#x10000 to #x10FFFF] // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation SendMessage for usage and error information. // // Returned Error Codes: // * InvalidMessageContents // The message contains characters outside the allowed set. // // * AWS.SimpleQueueService.UnsupportedOperation // Error code 400. Unsupported operation. // func (c *SQS) SendMessage(input *SendMessageInput) (*SendMessageOutput, error) { req, out := c.SendMessageRequest(input) err := req.Send() return out, err } const opSendMessageBatch = "SendMessageBatch" // SendMessageBatchRequest generates a "aws/request.Request" representing the // client's request for the SendMessageBatch operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SendMessageBatch for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SendMessageBatch method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SendMessageBatchRequest method. // req, resp := client.SendMessageBatchRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SQS) SendMessageBatchRequest(input *SendMessageBatchInput) (req *request.Request, output *SendMessageBatchOutput) { op := &request.Operation{ Name: opSendMessageBatch, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SendMessageBatchInput{} } req = c.newRequest(op, input, output) output = &SendMessageBatchOutput{} req.Data = output return } // SendMessageBatch API operation for Amazon Simple Queue Service. // // Delivers up to ten messages to the specified queue. This is a batch version // of SendMessage. The result of the send action on each message is reported // individually in the response. The maximum allowed individual message size // is 256 KB (262,144 bytes). // // The maximum total payload size (i.e., the sum of all a batch's individual // message lengths) is also 256 KB (262,144 bytes). // // If the DelaySeconds parameter is not specified for an entry, the default // for the queue is used. // // The following list shows the characters (in Unicode) that are allowed in // your message, according to the W3C XML specification. For more information, // go to http://www.faqs.org/rfcs/rfc1321.html (http://www.faqs.org/rfcs/rfc1321.html). // If you send any characters that are not included in the list, your request // will be rejected. // // #x9 | #xA | #xD | [#x20 to #xD7FF] | [#xE000 to #xFFFD] | [#x10000 to #x10FFFF] // // Because the batch request can result in a combination of successful and unsuccessful // actions, you should check for batch errors even when the call returns an // HTTP status code of 200. // // Some API actions take lists of parameters. These lists are specified using // the param.n notation. Values of n are integers starting from 1. For example, // a parameter list with two elements looks like this: // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation SendMessageBatch for usage and error information. // // Returned Error Codes: // * AWS.SimpleQueueService.TooManyEntriesInBatchRequest // Batch request contains more number of entries than permissible. // // * AWS.SimpleQueueService.EmptyBatchRequest // Batch request does not contain an entry. // // * AWS.SimpleQueueService.BatchEntryIdsNotDistinct // Two or more batch entries have the same Id in the request. // // * AWS.SimpleQueueService.BatchRequestTooLong // The length of all the messages put together is more than the limit. // // * AWS.SimpleQueueService.InvalidBatchEntryId // The Id of a batch entry in a batch request does not abide by the specification. // // * AWS.SimpleQueueService.UnsupportedOperation // Error code 400. Unsupported operation. // func (c *SQS) SendMessageBatch(input *SendMessageBatchInput) (*SendMessageBatchOutput, error) { req, out := c.SendMessageBatchRequest(input) err := req.Send() return out, err } const opSetQueueAttributes = "SetQueueAttributes" // SetQueueAttributesRequest generates a "aws/request.Request" representing the // client's request for the SetQueueAttributes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetQueueAttributes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetQueueAttributes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetQueueAttributesRequest method. // req, resp := client.SetQueueAttributesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SQS) SetQueueAttributesRequest(input *SetQueueAttributesInput) (req *request.Request, output *SetQueueAttributesOutput) { op := &request.Operation{ Name: opSetQueueAttributes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetQueueAttributesInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(query.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SetQueueAttributesOutput{} req.Data = output return } // SetQueueAttributes API operation for Amazon Simple Queue Service. // // Sets the value of one or more queue attributes. When you change a queue's // attributes, the change can take up to 60 seconds for most of the attributes // to propagate throughout the SQS system. Changes made to the MessageRetentionPeriod // attribute can take up to 15 minutes. // // Going forward, new attributes might be added. If you are writing code that // calls this action, we recommend that you structure your code so that it can // handle new attributes gracefully. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Queue Service's // API operation SetQueueAttributes for usage and error information. // // Returned Error Codes: // * InvalidAttributeName // The attribute referred to does not exist. // func (c *SQS) SetQueueAttributes(input *SetQueueAttributesInput) (*SetQueueAttributesOutput, error) { req, out := c.SetQueueAttributesRequest(input) err := req.Send() return out, err } type AddPermissionInput struct { _ struct{} `type:"structure"` // The AWS account number of the principal (http://docs.aws.amazon.com/general/latest/gr/glos-chap.html#P) // who will be given permission. The principal must have an AWS account, but // does not need to be signed up for Amazon SQS. For information about locating // the AWS account identification, see Your AWS Identifiers (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AWSCredentials.html) // in the Amazon SQS Developer Guide. // // AWSAccountIds is a required field AWSAccountIds []*string `locationNameList:"AWSAccountId" type:"list" flattened:"true" required:"true"` // The action the client wants to allow for the specified principal. The following // are valid values: * | SendMessage | ReceiveMessage | DeleteMessage | ChangeMessageVisibility // | GetQueueAttributes | GetQueueUrl. For more information about these actions, // see Understanding Permissions (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/acp-overview.html#PermissionTypes) // in the Amazon SQS Developer Guide. // // Specifying SendMessage, DeleteMessage, or ChangeMessageVisibility for the // ActionName.n also grants permissions for the corresponding batch versions // of those actions: SendMessageBatch, DeleteMessageBatch, and ChangeMessageVisibilityBatch. // // Actions is a required field Actions []*string `locationNameList:"ActionName" type:"list" flattened:"true" required:"true"` // The unique identification of the permission you're setting (e.g., AliceSendMessage). // Constraints: Maximum 80 characters; alphanumeric characters, hyphens (-), // and underscores (_) are allowed. // // Label is a required field Label *string `type:"string" required:"true"` // The URL of the Amazon SQS queue to take action on. // // Queue URLs are case-sensitive. // // QueueUrl is a required field QueueUrl *string `type:"string" required:"true"` } // String returns the string representation func (s AddPermissionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddPermissionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddPermissionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddPermissionInput"} if s.AWSAccountIds == nil { invalidParams.Add(request.NewErrParamRequired("AWSAccountIds")) } if s.Actions == nil { invalidParams.Add(request.NewErrParamRequired("Actions")) } if s.Label == nil { invalidParams.Add(request.NewErrParamRequired("Label")) } if s.QueueUrl == nil { invalidParams.Add(request.NewErrParamRequired("QueueUrl")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddPermissionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddPermissionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddPermissionOutput) GoString() string { return s.String() } // This is used in the responses of batch API to give a detailed description // of the result of an action on each entry in the request. type BatchResultErrorEntry struct { _ struct{} `type:"structure"` // An error code representing why the action failed on this entry. // // Code is a required field Code *string `type:"string" required:"true"` // The id of an entry in a batch request. // // Id is a required field Id *string `type:"string" required:"true"` // A message explaining why the action failed on this entry. Message *string `type:"string"` // Whether the error happened due to the sender's fault. // // SenderFault is a required field SenderFault *bool `type:"boolean" required:"true"` } // String returns the string representation func (s BatchResultErrorEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BatchResultErrorEntry) GoString() string { return s.String() } type ChangeMessageVisibilityBatchInput struct { _ struct{} `type:"structure"` // A list of receipt handles of the messages for which the visibility timeout // must be changed. // // Entries is a required field Entries []*ChangeMessageVisibilityBatchRequestEntry `locationNameList:"ChangeMessageVisibilityBatchRequestEntry" type:"list" flattened:"true" required:"true"` // The URL of the Amazon SQS queue to take action on. // // Queue URLs are case-sensitive. // // QueueUrl is a required field QueueUrl *string `type:"string" required:"true"` } // String returns the string representation func (s ChangeMessageVisibilityBatchInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChangeMessageVisibilityBatchInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ChangeMessageVisibilityBatchInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ChangeMessageVisibilityBatchInput"} if s.Entries == nil { invalidParams.Add(request.NewErrParamRequired("Entries")) } if s.QueueUrl == nil { invalidParams.Add(request.NewErrParamRequired("QueueUrl")) } if s.Entries != nil { for i, v := range s.Entries { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entries", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // For each message in the batch, the response contains a ChangeMessageVisibilityBatchResultEntry // tag if the message succeeds or a BatchResultErrorEntry tag if the message // fails. type ChangeMessageVisibilityBatchOutput struct { _ struct{} `type:"structure"` // A list of BatchResultErrorEntry items. // // Failed is a required field Failed []*BatchResultErrorEntry `locationNameList:"BatchResultErrorEntry" type:"list" flattened:"true" required:"true"` // A list of ChangeMessageVisibilityBatchResultEntry items. // // Successful is a required field Successful []*ChangeMessageVisibilityBatchResultEntry `locationNameList:"ChangeMessageVisibilityBatchResultEntry" type:"list" flattened:"true" required:"true"` } // String returns the string representation func (s ChangeMessageVisibilityBatchOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChangeMessageVisibilityBatchOutput) GoString() string { return s.String() } // Encloses a receipt handle and an entry id for each message in ChangeMessageVisibilityBatch. // // All of the following parameters are list parameters that must be prefixed // with ChangeMessageVisibilityBatchRequestEntry.n, where n is an integer value // starting with 1. For example, a parameter list for this action might look // like this: // // Your_Receipt_Handle]]> type ChangeMessageVisibilityBatchRequestEntry struct { _ struct{} `type:"structure"` // An identifier for this particular receipt handle. This is used to communicate // the result. Note that the Ids of a batch request need to be unique within // the request. // // Id is a required field Id *string `type:"string" required:"true"` // A receipt handle. // // ReceiptHandle is a required field ReceiptHandle *string `type:"string" required:"true"` // The new value (in seconds) for the message's visibility timeout. VisibilityTimeout *int64 `type:"integer"` } // String returns the string representation func (s ChangeMessageVisibilityBatchRequestEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChangeMessageVisibilityBatchRequestEntry) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ChangeMessageVisibilityBatchRequestEntry) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ChangeMessageVisibilityBatchRequestEntry"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.ReceiptHandle == nil { invalidParams.Add(request.NewErrParamRequired("ReceiptHandle")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Encloses the id of an entry in ChangeMessageVisibilityBatch. type ChangeMessageVisibilityBatchResultEntry struct { _ struct{} `type:"structure"` // Represents a message whose visibility timeout has been changed successfully. // // Id is a required field Id *string `type:"string" required:"true"` } // String returns the string representation func (s ChangeMessageVisibilityBatchResultEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChangeMessageVisibilityBatchResultEntry) GoString() string { return s.String() } type ChangeMessageVisibilityInput struct { _ struct{} `type:"structure"` // The URL of the Amazon SQS queue to take action on. // // Queue URLs are case-sensitive. // // QueueUrl is a required field QueueUrl *string `type:"string" required:"true"` // The receipt handle associated with the message whose visibility timeout should // be changed. This parameter is returned by the ReceiveMessage action. // // ReceiptHandle is a required field ReceiptHandle *string `type:"string" required:"true"` // The new value (in seconds - from 0 to 43200 - maximum 12 hours) for the message's // visibility timeout. // // VisibilityTimeout is a required field VisibilityTimeout *int64 `type:"integer" required:"true"` } // String returns the string representation func (s ChangeMessageVisibilityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChangeMessageVisibilityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ChangeMessageVisibilityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ChangeMessageVisibilityInput"} if s.QueueUrl == nil { invalidParams.Add(request.NewErrParamRequired("QueueUrl")) } if s.ReceiptHandle == nil { invalidParams.Add(request.NewErrParamRequired("ReceiptHandle")) } if s.VisibilityTimeout == nil { invalidParams.Add(request.NewErrParamRequired("VisibilityTimeout")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ChangeMessageVisibilityOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ChangeMessageVisibilityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChangeMessageVisibilityOutput) GoString() string { return s.String() } type CreateQueueInput struct { _ struct{} `type:"structure"` // A map of attributes with their corresponding values. // // The following lists the names, descriptions, and values of the special request // parameters the CreateQueue action uses: // // * DelaySeconds - The time in seconds that the delivery of all messages // in the queue will be delayed. An integer from 0 to 900 (15 minutes). The // default for this attribute is 0 (zero). // // * MaximumMessageSize - The limit of how many bytes a message can contain // before Amazon SQS rejects it. An integer from 1024 bytes (1 KiB) up to // 262144 bytes (256 KiB). The default for this attribute is 262144 (256 // KiB). // // * MessageRetentionPeriod - The number of seconds Amazon SQS retains a // message. Integer representing seconds, from 60 (1 minute) to 1209600 (14 // days). The default for this attribute is 345600 (4 days). // // * Policy - The queue's policy. A valid AWS policy. For more information // about policy structure, see Overview of AWS IAM Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html) // in the Amazon IAM User Guide. // // * ReceiveMessageWaitTimeSeconds - The time for which a ReceiveMessage // call will wait for a message to arrive. An integer from 0 to 20 (seconds). // The default for this attribute is 0. // // * RedrivePolicy - The parameters for dead letter queue functionality of // the source queue. For more information about RedrivePolicy and dead letter // queues, see Using Amazon SQS Dead Letter Queues (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html) // in the Amazon SQS Developer Guide. // // * VisibilityTimeout - The visibility timeout for the queue. An integer // from 0 to 43200 (12 hours). The default for this attribute is 30. For // more information about visibility timeout, see Visibility Timeout (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html) // in the Amazon SQS Developer Guide. // // Any other valid special request parameters that are specified (such as ApproximateNumberOfMessages, // ApproximateNumberOfMessagesDelayed, ApproximateNumberOfMessagesNotVisible, // CreatedTimestamp, LastModifiedTimestamp, and QueueArn) will be ignored. Attributes map[string]*string `locationName:"Attribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"` // The name for the queue to be created. // // Queue names are case-sensitive. // // QueueName is a required field QueueName *string `type:"string" required:"true"` } // String returns the string representation func (s CreateQueueInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateQueueInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateQueueInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateQueueInput"} if s.QueueName == nil { invalidParams.Add(request.NewErrParamRequired("QueueName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returns the QueueUrl element of the created queue. type CreateQueueOutput struct { _ struct{} `type:"structure"` // The URL for the created Amazon SQS queue. QueueUrl *string `type:"string"` } // String returns the string representation func (s CreateQueueOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateQueueOutput) GoString() string { return s.String() } type DeleteMessageBatchInput struct { _ struct{} `type:"structure"` // A list of receipt handles for the messages to be deleted. // // Entries is a required field Entries []*DeleteMessageBatchRequestEntry `locationNameList:"DeleteMessageBatchRequestEntry" type:"list" flattened:"true" required:"true"` // The URL of the Amazon SQS queue to take action on. // // Queue URLs are case-sensitive. // // QueueUrl is a required field QueueUrl *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteMessageBatchInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteMessageBatchInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteMessageBatchInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteMessageBatchInput"} if s.Entries == nil { invalidParams.Add(request.NewErrParamRequired("Entries")) } if s.QueueUrl == nil { invalidParams.Add(request.NewErrParamRequired("QueueUrl")) } if s.Entries != nil { for i, v := range s.Entries { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entries", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // For each message in the batch, the response contains a DeleteMessageBatchResultEntry // tag if the message is deleted or a BatchResultErrorEntry tag if the message // cannot be deleted. type DeleteMessageBatchOutput struct { _ struct{} `type:"structure"` // A list of BatchResultErrorEntry items. // // Failed is a required field Failed []*BatchResultErrorEntry `locationNameList:"BatchResultErrorEntry" type:"list" flattened:"true" required:"true"` // A list of DeleteMessageBatchResultEntry items. // // Successful is a required field Successful []*DeleteMessageBatchResultEntry `locationNameList:"DeleteMessageBatchResultEntry" type:"list" flattened:"true" required:"true"` } // String returns the string representation func (s DeleteMessageBatchOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteMessageBatchOutput) GoString() string { return s.String() } // Encloses a receipt handle and an identifier for it. type DeleteMessageBatchRequestEntry struct { _ struct{} `type:"structure"` // An identifier for this particular receipt handle. This is used to communicate // the result. Note that the Ids of a batch request need to be unique within // the request. // // Id is a required field Id *string `type:"string" required:"true"` // A receipt handle. // // ReceiptHandle is a required field ReceiptHandle *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteMessageBatchRequestEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteMessageBatchRequestEntry) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteMessageBatchRequestEntry) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteMessageBatchRequestEntry"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.ReceiptHandle == nil { invalidParams.Add(request.NewErrParamRequired("ReceiptHandle")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Encloses the id an entry in DeleteMessageBatch. type DeleteMessageBatchResultEntry struct { _ struct{} `type:"structure"` // Represents a successfully deleted message. // // Id is a required field Id *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteMessageBatchResultEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteMessageBatchResultEntry) GoString() string { return s.String() } type DeleteMessageInput struct { _ struct{} `type:"structure"` // The URL of the Amazon SQS queue to take action on. // // Queue URLs are case-sensitive. // // QueueUrl is a required field QueueUrl *string `type:"string" required:"true"` // The receipt handle associated with the message to delete. // // ReceiptHandle is a required field ReceiptHandle *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteMessageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteMessageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteMessageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteMessageInput"} if s.QueueUrl == nil { invalidParams.Add(request.NewErrParamRequired("QueueUrl")) } if s.ReceiptHandle == nil { invalidParams.Add(request.NewErrParamRequired("ReceiptHandle")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteMessageOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteMessageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteMessageOutput) GoString() string { return s.String() } type DeleteQueueInput struct { _ struct{} `type:"structure"` // The URL of the Amazon SQS queue to take action on. // // Queue URLs are case-sensitive. // // QueueUrl is a required field QueueUrl *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteQueueInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteQueueInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteQueueInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteQueueInput"} if s.QueueUrl == nil { invalidParams.Add(request.NewErrParamRequired("QueueUrl")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteQueueOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteQueueOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteQueueOutput) GoString() string { return s.String() } type GetQueueAttributesInput struct { _ struct{} `type:"structure"` // A list of attributes to retrieve information for. The following attributes // are supported: // // * All - returns all values. // // * ApproximateNumberOfMessages - returns the approximate number of visible // messages in a queue. For more information, see Resources Required to Process // Messages (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/ApproximateNumber.html) // in the Amazon SQS Developer Guide. // // * ApproximateNumberOfMessagesNotVisible - returns the approximate number // of messages that are not timed-out and not deleted. For more information, // see Resources Required to Process Messages (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/ApproximateNumber.html) // in the Amazon SQS Developer Guide. // // * VisibilityTimeout - returns the visibility timeout for the queue. For // more information about visibility timeout, see Visibility Timeout (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html) // in the Amazon SQS Developer Guide. // // * CreatedTimestamp - returns the time when the queue was created (epoch // time in seconds). // // * LastModifiedTimestamp - returns the time when the queue was last changed // (epoch time in seconds). // // * Policy - returns the queue's policy. // // * MaximumMessageSize - returns the limit of how many bytes a message can // contain before Amazon SQS rejects it. // // * MessageRetentionPeriod - returns the number of seconds Amazon SQS retains // a message. // // * QueueArn - returns the queue's Amazon resource name (ARN). // // * ApproximateNumberOfMessagesDelayed - returns the approximate number // of messages that are pending to be added to the queue. // // * DelaySeconds - returns the default delay on the queue in seconds. // // * ReceiveMessageWaitTimeSeconds - returns the time for which a ReceiveMessage // call will wait for a message to arrive. // // * RedrivePolicy - returns the parameters for dead letter queue functionality // of the source queue. For more information about RedrivePolicy and dead // letter queues, see Using Amazon SQS Dead Letter Queues (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html) // in the Amazon SQS Developer Guide. // // Going forward, new attributes might be added. If you are writing code that // calls this action, we recommend that you structure your code so that it can // handle new attributes gracefully. AttributeNames []*string `locationNameList:"AttributeName" type:"list" flattened:"true"` // The URL of the Amazon SQS queue to take action on. // // Queue URLs are case-sensitive. // // QueueUrl is a required field QueueUrl *string `type:"string" required:"true"` } // String returns the string representation func (s GetQueueAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetQueueAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetQueueAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetQueueAttributesInput"} if s.QueueUrl == nil { invalidParams.Add(request.NewErrParamRequired("QueueUrl")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A list of returned queue attributes. type GetQueueAttributesOutput struct { _ struct{} `type:"structure"` // A map of attributes to the respective values. Attributes map[string]*string `locationName:"Attribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"` } // String returns the string representation func (s GetQueueAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetQueueAttributesOutput) GoString() string { return s.String() } type GetQueueUrlInput struct { _ struct{} `type:"structure"` // The name of the queue whose URL must be fetched. Maximum 80 characters; alphanumeric // characters, hyphens (-), and underscores (_) are allowed. // // Queue names are case-sensitive. // // QueueName is a required field QueueName *string `type:"string" required:"true"` // The AWS account ID of the account that created the queue. QueueOwnerAWSAccountId *string `type:"string"` } // String returns the string representation func (s GetQueueUrlInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetQueueUrlInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetQueueUrlInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetQueueUrlInput"} if s.QueueName == nil { invalidParams.Add(request.NewErrParamRequired("QueueName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // For more information, see Responses (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/UnderstandingResponses.html) // in the Amazon SQS Developer Guide. type GetQueueUrlOutput struct { _ struct{} `type:"structure"` // The URL for the queue. QueueUrl *string `type:"string"` } // String returns the string representation func (s GetQueueUrlOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetQueueUrlOutput) GoString() string { return s.String() } type ListDeadLetterSourceQueuesInput struct { _ struct{} `type:"structure"` // The queue URL of a dead letter queue. // // Queue URLs are case-sensitive. // // QueueUrl is a required field QueueUrl *string `type:"string" required:"true"` } // String returns the string representation func (s ListDeadLetterSourceQueuesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDeadLetterSourceQueuesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListDeadLetterSourceQueuesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListDeadLetterSourceQueuesInput"} if s.QueueUrl == nil { invalidParams.Add(request.NewErrParamRequired("QueueUrl")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A list of your dead letter source queues. type ListDeadLetterSourceQueuesOutput struct { _ struct{} `type:"structure"` // A list of source queue URLs that have the RedrivePolicy queue attribute configured // with a dead letter queue. // // QueueUrls is a required field QueueUrls []*string `locationName:"queueUrls" locationNameList:"QueueUrl" type:"list" flattened:"true" required:"true"` } // String returns the string representation func (s ListDeadLetterSourceQueuesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDeadLetterSourceQueuesOutput) GoString() string { return s.String() } type ListQueuesInput struct { _ struct{} `type:"structure"` // A string to use for filtering the list results. Only those queues whose name // begins with the specified string are returned. // // Queue names are case-sensitive. QueueNamePrefix *string `type:"string"` } // String returns the string representation func (s ListQueuesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListQueuesInput) GoString() string { return s.String() } // A list of your queues. type ListQueuesOutput struct { _ struct{} `type:"structure"` // A list of queue URLs, up to 1000 entries. QueueUrls []*string `locationNameList:"QueueUrl" type:"list" flattened:"true"` } // String returns the string representation func (s ListQueuesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListQueuesOutput) GoString() string { return s.String() } // An Amazon SQS message. type Message struct { _ struct{} `type:"structure"` // SenderId, SentTimestamp, ApproximateReceiveCount, and/or ApproximateFirstReceiveTimestamp. // SentTimestamp and ApproximateFirstReceiveTimestamp are each returned as an // integer representing the epoch time (http://en.wikipedia.org/wiki/Unix_time) // in milliseconds. Attributes map[string]*string `locationName:"Attribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"` // The message's contents (not URL-encoded). Body *string `type:"string"` // An MD5 digest of the non-URL-encoded message body string. MD5OfBody *string `type:"string"` // An MD5 digest of the non-URL-encoded message attribute string. This can be // used to verify that Amazon SQS received the message correctly. Amazon SQS // first URL decodes the message before creating the MD5 digest. For information // about MD5, go to http://www.faqs.org/rfcs/rfc1321.html (http://www.faqs.org/rfcs/rfc1321.html). MD5OfMessageAttributes *string `type:"string"` // Each message attribute consists of a Name, Type, and Value. For more information, // see Message Attribute Items (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html#SQSMessageAttributesNTV). MessageAttributes map[string]*MessageAttributeValue `locationName:"MessageAttribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"` // A unique identifier for the message. Message IDs are considered unique across // all AWS accounts for an extended period of time. MessageId *string `type:"string"` // An identifier associated with the act of receiving the message. A new receipt // handle is returned every time you receive a message. When deleting a message, // you provide the last received receipt handle to delete the message. ReceiptHandle *string `type:"string"` } // String returns the string representation func (s Message) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Message) GoString() string { return s.String() } // The user-specified message attribute value. For string data types, the value // attribute has the same restrictions on the content as the message body. For // more information, see SendMessage (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html). // // Name, type, and value must not be empty or null. In addition, the message // body should not be empty or null. All parts of the message attribute, including // name, type, and value, are included in the message size restriction, which // is currently 256 KB (262,144 bytes). type MessageAttributeValue struct { _ struct{} `type:"structure"` // Not implemented. Reserved for future use. BinaryListValues [][]byte `locationName:"BinaryListValue" locationNameList:"BinaryListValue" type:"list" flattened:"true"` // Binary type attributes can store any binary data, for example, compressed // data, encrypted data, or images. // // BinaryValue is automatically base64 encoded/decoded by the SDK. BinaryValue []byte `type:"blob"` // Amazon SQS supports the following logical data types: String, Number, and // Binary. For the Number data type, you must use StringValue. // // You can also append custom labels. For more information, see Message Attribute // Data Types (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html#SQSMessageAttributes.DataTypes). // // DataType is a required field DataType *string `type:"string" required:"true"` // Not implemented. Reserved for future use. StringListValues []*string `locationName:"StringListValue" locationNameList:"StringListValue" type:"list" flattened:"true"` // Strings are Unicode with UTF8 binary encoding. For a list of code values, // see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters (http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters). StringValue *string `type:"string"` } // String returns the string representation func (s MessageAttributeValue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MessageAttributeValue) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MessageAttributeValue) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MessageAttributeValue"} if s.DataType == nil { invalidParams.Add(request.NewErrParamRequired("DataType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PurgeQueueInput struct { _ struct{} `type:"structure"` // The queue URL of the queue to delete the messages from when using the PurgeQueue // API. // // Queue URLs are case-sensitive. // // QueueUrl is a required field QueueUrl *string `type:"string" required:"true"` } // String returns the string representation func (s PurgeQueueInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PurgeQueueInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PurgeQueueInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PurgeQueueInput"} if s.QueueUrl == nil { invalidParams.Add(request.NewErrParamRequired("QueueUrl")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type PurgeQueueOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s PurgeQueueOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PurgeQueueOutput) GoString() string { return s.String() } type ReceiveMessageInput struct { _ struct{} `type:"structure"` // A list of attributes that need to be returned along with each message. These // attributes include: // // * All - returns all values. // // * ApproximateFirstReceiveTimestamp - returns the time when the message // was first received from the queue (epoch time in milliseconds). // // * ApproximateReceiveCount - returns the number of times a message has // been received from the queue but not deleted. // // * SenderId - returns the AWS account number (or the IP address, if anonymous // access is allowed) of the sender. // // * SentTimestamp - returns the time when the message was sent to the queue // (epoch time in milliseconds). // // Any other valid special request parameters that are specified (such as ApproximateNumberOfMessages, // ApproximateNumberOfMessagesDelayed, ApproximateNumberOfMessagesNotVisible, // CreatedTimestamp, DelaySeconds, LastModifiedTimestamp, MaximumMessageSize, // MessageRetentionPeriod, Policy, QueueArn, ReceiveMessageWaitTimeSeconds, // RedrivePolicy, and VisibilityTimeout) will be ignored. AttributeNames []*string `locationNameList:"AttributeName" type:"list" flattened:"true"` // The maximum number of messages to return. Amazon SQS never returns more messages // than this value but may return fewer. Values can be from 1 to 10. Default // is 1. // // All of the messages are not necessarily returned. MaxNumberOfMessages *int64 `type:"integer"` // The name of the message attribute, where N is the index. The message attribute // name can contain the following characters: A-Z, a-z, 0-9, underscore (_), // hyphen (-), and period (.). The name must not start or end with a period, // and it should not have successive periods. The name is case sensitive and // must be unique among all attribute names for the message. The name can be // up to 256 characters long. The name cannot start with "AWS." or "Amazon." // (or any variations in casing), because these prefixes are reserved for use // by Amazon Web Services. // // When using ReceiveMessage, you can send a list of attribute names to receive, // or you can return all of the attributes by specifying "All" or ".*" in your // request. You can also use "bar.*" to return all message attributes starting // with the "bar" prefix. MessageAttributeNames []*string `locationNameList:"MessageAttributeName" type:"list" flattened:"true"` // The URL of the Amazon SQS queue to take action on. // // Queue URLs are case-sensitive. // // QueueUrl is a required field QueueUrl *string `type:"string" required:"true"` // The duration (in seconds) that the received messages are hidden from subsequent // retrieve requests after being retrieved by a ReceiveMessage request. VisibilityTimeout *int64 `type:"integer"` // The duration (in seconds) for which the call will wait for a message to arrive // in the queue before returning. If a message is available, the call will return // sooner than WaitTimeSeconds. WaitTimeSeconds *int64 `type:"integer"` } // String returns the string representation func (s ReceiveMessageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReceiveMessageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReceiveMessageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReceiveMessageInput"} if s.QueueUrl == nil { invalidParams.Add(request.NewErrParamRequired("QueueUrl")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A list of received messages. type ReceiveMessageOutput struct { _ struct{} `type:"structure"` // A list of messages. Messages []*Message `locationNameList:"Message" type:"list" flattened:"true"` } // String returns the string representation func (s ReceiveMessageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReceiveMessageOutput) GoString() string { return s.String() } type RemovePermissionInput struct { _ struct{} `type:"structure"` // The identification of the permission to remove. This is the label added with // the AddPermission action. // // Label is a required field Label *string `type:"string" required:"true"` // The URL of the Amazon SQS queue to take action on. // // Queue URLs are case-sensitive. // // QueueUrl is a required field QueueUrl *string `type:"string" required:"true"` } // String returns the string representation func (s RemovePermissionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemovePermissionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemovePermissionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemovePermissionInput"} if s.Label == nil { invalidParams.Add(request.NewErrParamRequired("Label")) } if s.QueueUrl == nil { invalidParams.Add(request.NewErrParamRequired("QueueUrl")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemovePermissionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemovePermissionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemovePermissionOutput) GoString() string { return s.String() } type SendMessageBatchInput struct { _ struct{} `type:"structure"` // A list of SendMessageBatchRequestEntry items. // // Entries is a required field Entries []*SendMessageBatchRequestEntry `locationNameList:"SendMessageBatchRequestEntry" type:"list" flattened:"true" required:"true"` // The URL of the Amazon SQS queue to take action on. // // Queue URLs are case-sensitive. // // QueueUrl is a required field QueueUrl *string `type:"string" required:"true"` } // String returns the string representation func (s SendMessageBatchInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SendMessageBatchInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SendMessageBatchInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SendMessageBatchInput"} if s.Entries == nil { invalidParams.Add(request.NewErrParamRequired("Entries")) } if s.QueueUrl == nil { invalidParams.Add(request.NewErrParamRequired("QueueUrl")) } if s.Entries != nil { for i, v := range s.Entries { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entries", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // For each message in the batch, the response contains a SendMessageBatchResultEntry // tag if the message succeeds or a BatchResultErrorEntry tag if the message // fails. type SendMessageBatchOutput struct { _ struct{} `type:"structure"` // A list of BatchResultErrorEntry items with the error detail about each message // that could not be enqueued. // // Failed is a required field Failed []*BatchResultErrorEntry `locationNameList:"BatchResultErrorEntry" type:"list" flattened:"true" required:"true"` // A list of SendMessageBatchResultEntry items. // // Successful is a required field Successful []*SendMessageBatchResultEntry `locationNameList:"SendMessageBatchResultEntry" type:"list" flattened:"true" required:"true"` } // String returns the string representation func (s SendMessageBatchOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SendMessageBatchOutput) GoString() string { return s.String() } // Contains the details of a single Amazon SQS message along with a Id. type SendMessageBatchRequestEntry struct { _ struct{} `type:"structure"` // The number of seconds for which the message has to be delayed. DelaySeconds *int64 `type:"integer"` // An identifier for the message in this batch. This is used to communicate // the result. Note that the Ids of a batch request need to be unique within // the request. // // Id is a required field Id *string `type:"string" required:"true"` // Each message attribute consists of a Name, Type, and Value. For more information, // see Message Attribute Items (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html#SQSMessageAttributesNTV). MessageAttributes map[string]*MessageAttributeValue `locationName:"MessageAttribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"` // Body of the message. // // MessageBody is a required field MessageBody *string `type:"string" required:"true"` } // String returns the string representation func (s SendMessageBatchRequestEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SendMessageBatchRequestEntry) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SendMessageBatchRequestEntry) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SendMessageBatchRequestEntry"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.MessageBody == nil { invalidParams.Add(request.NewErrParamRequired("MessageBody")) } if s.MessageAttributes != nil { for i, v := range s.MessageAttributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MessageAttributes", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Encloses a message ID for successfully enqueued message of a SendMessageBatch. type SendMessageBatchResultEntry struct { _ struct{} `type:"structure"` // An identifier for the message in this batch. // // Id is a required field Id *string `type:"string" required:"true"` // An MD5 digest of the non-URL-encoded message attribute string. This can be // used to verify that Amazon SQS received the message batch correctly. Amazon // SQS first URL decodes the message before creating the MD5 digest. For information // about MD5, go to http://www.faqs.org/rfcs/rfc1321.html (http://www.faqs.org/rfcs/rfc1321.html). MD5OfMessageAttributes *string `type:"string"` // An MD5 digest of the non-URL-encoded message body string. This can be used // to verify that Amazon SQS received the message correctly. Amazon SQS first // URL decodes the message before creating the MD5 digest. For information about // MD5, go to http://www.faqs.org/rfcs/rfc1321.html (http://www.faqs.org/rfcs/rfc1321.html). // // MD5OfMessageBody is a required field MD5OfMessageBody *string `type:"string" required:"true"` // An identifier for the message. // // MessageId is a required field MessageId *string `type:"string" required:"true"` } // String returns the string representation func (s SendMessageBatchResultEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SendMessageBatchResultEntry) GoString() string { return s.String() } type SendMessageInput struct { _ struct{} `type:"structure"` // The number of seconds (0 to 900 - 15 minutes) to delay a specific message. // Messages with a positive DelaySeconds value become available for processing // after the delay time is finished. If you don't specify a value, the default // value for the queue applies. DelaySeconds *int64 `type:"integer"` // Each message attribute consists of a Name, Type, and Value. For more information, // see Message Attribute Items (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html#SQSMessageAttributesNTV). MessageAttributes map[string]*MessageAttributeValue `locationName:"MessageAttribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"` // The message to send. String maximum 256 KB in size. For a list of allowed // characters, see the preceding important note. // // MessageBody is a required field MessageBody *string `type:"string" required:"true"` // The URL of the Amazon SQS queue to take action on. // // Queue URLs are case-sensitive. // // QueueUrl is a required field QueueUrl *string `type:"string" required:"true"` } // String returns the string representation func (s SendMessageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SendMessageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SendMessageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SendMessageInput"} if s.MessageBody == nil { invalidParams.Add(request.NewErrParamRequired("MessageBody")) } if s.QueueUrl == nil { invalidParams.Add(request.NewErrParamRequired("QueueUrl")) } if s.MessageAttributes != nil { for i, v := range s.MessageAttributes { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MessageAttributes", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The MD5OfMessageBody and MessageId elements. type SendMessageOutput struct { _ struct{} `type:"structure"` // An MD5 digest of the non-URL-encoded message attribute string. This can be // used to verify that Amazon SQS received the message correctly. Amazon SQS // first URL decodes the message before creating the MD5 digest. For information // about MD5, go to http://www.faqs.org/rfcs/rfc1321.html (http://www.faqs.org/rfcs/rfc1321.html). MD5OfMessageAttributes *string `type:"string"` // An MD5 digest of the non-URL-encoded message body string. This can be used // to verify that Amazon SQS received the message correctly. Amazon SQS first // URL decodes the message before creating the MD5 digest. For information about // MD5, go to http://www.faqs.org/rfcs/rfc1321.html (http://www.faqs.org/rfcs/rfc1321.html). MD5OfMessageBody *string `type:"string"` // An element containing the message ID of the message sent to the queue. For // more information, see Queue and Message Identifiers (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/ImportantIdentifiers.html) // in the Amazon SQS Developer Guide. MessageId *string `type:"string"` } // String returns the string representation func (s SendMessageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SendMessageOutput) GoString() string { return s.String() } type SetQueueAttributesInput struct { _ struct{} `type:"structure"` // A map of attributes to set. // // The following lists the names, descriptions, and values of the special request // parameters the SetQueueAttributes action uses: // // * DelaySeconds - The time in seconds that the delivery of all messages // in the queue will be delayed. An integer from 0 to 900 (15 minutes). The // default for this attribute is 0 (zero). // // * MaximumMessageSize - The limit of how many bytes a message can contain // before Amazon SQS rejects it. An integer from 1024 bytes (1 KiB) up to // 262144 bytes (256 KiB). The default for this attribute is 262144 (256 // KiB). // // * MessageRetentionPeriod - The number of seconds Amazon SQS retains a // message. Integer representing seconds, from 60 (1 minute) to 1209600 (14 // days). The default for this attribute is 345600 (4 days). // // * Policy - The queue's policy. A valid AWS policy. For more information // about policy structure, see Overview of AWS IAM Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html) // in the Amazon IAM User Guide. // // * ReceiveMessageWaitTimeSeconds - The time for which a ReceiveMessage // call will wait for a message to arrive. An integer from 0 to 20 (seconds). // The default for this attribute is 0. // // * VisibilityTimeout - The visibility timeout for the queue. An integer // from 0 to 43200 (12 hours). The default for this attribute is 30. For // more information about visibility timeout, see Visibility Timeout in the // Amazon SQS Developer Guide. // // * RedrivePolicy - The parameters for dead letter queue functionality of // the source queue. For more information about RedrivePolicy and dead letter // queues, see Using Amazon SQS Dead Letter Queues in the Amazon SQS Developer // Guide. // // Any other valid special request parameters that are specified (such as ApproximateNumberOfMessages, // ApproximateNumberOfMessagesDelayed, ApproximateNumberOfMessagesNotVisible, // CreatedTimestamp, LastModifiedTimestamp, and QueueArn) will be ignored. // // Attributes is a required field Attributes map[string]*string `locationName:"Attribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true" required:"true"` // The URL of the Amazon SQS queue to take action on. // // Queue URLs are case-sensitive. // // QueueUrl is a required field QueueUrl *string `type:"string" required:"true"` } // String returns the string representation func (s SetQueueAttributesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetQueueAttributesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetQueueAttributesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetQueueAttributesInput"} if s.Attributes == nil { invalidParams.Add(request.NewErrParamRequired("Attributes")) } if s.QueueUrl == nil { invalidParams.Add(request.NewErrParamRequired("QueueUrl")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetQueueAttributesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SetQueueAttributesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetQueueAttributesOutput) GoString() string { return s.String() } const ( // QueueAttributeNamePolicy is a QueueAttributeName enum value QueueAttributeNamePolicy = "Policy" // QueueAttributeNameVisibilityTimeout is a QueueAttributeName enum value QueueAttributeNameVisibilityTimeout = "VisibilityTimeout" // QueueAttributeNameMaximumMessageSize is a QueueAttributeName enum value QueueAttributeNameMaximumMessageSize = "MaximumMessageSize" // QueueAttributeNameMessageRetentionPeriod is a QueueAttributeName enum value QueueAttributeNameMessageRetentionPeriod = "MessageRetentionPeriod" // QueueAttributeNameApproximateNumberOfMessages is a QueueAttributeName enum value QueueAttributeNameApproximateNumberOfMessages = "ApproximateNumberOfMessages" // QueueAttributeNameApproximateNumberOfMessagesNotVisible is a QueueAttributeName enum value QueueAttributeNameApproximateNumberOfMessagesNotVisible = "ApproximateNumberOfMessagesNotVisible" // QueueAttributeNameCreatedTimestamp is a QueueAttributeName enum value QueueAttributeNameCreatedTimestamp = "CreatedTimestamp" // QueueAttributeNameLastModifiedTimestamp is a QueueAttributeName enum value QueueAttributeNameLastModifiedTimestamp = "LastModifiedTimestamp" // QueueAttributeNameQueueArn is a QueueAttributeName enum value QueueAttributeNameQueueArn = "QueueArn" // QueueAttributeNameApproximateNumberOfMessagesDelayed is a QueueAttributeName enum value QueueAttributeNameApproximateNumberOfMessagesDelayed = "ApproximateNumberOfMessagesDelayed" // QueueAttributeNameDelaySeconds is a QueueAttributeName enum value QueueAttributeNameDelaySeconds = "DelaySeconds" // QueueAttributeNameReceiveMessageWaitTimeSeconds is a QueueAttributeName enum value QueueAttributeNameReceiveMessageWaitTimeSeconds = "ReceiveMessageWaitTimeSeconds" // QueueAttributeNameRedrivePolicy is a QueueAttributeName enum value QueueAttributeNameRedrivePolicy = "RedrivePolicy" ) aws-sdk-go-1.4.22/service/sqs/api_test.go000066400000000000000000000012671300374646400201760ustar00rootroot00000000000000// +build integration package sqs_test import ( "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/sqs" ) func TestFlattenedTraits(t *testing.T) { s := sqs.New(unit.Session) _, err := s.DeleteMessageBatch(&sqs.DeleteMessageBatchInput{ QueueURL: aws.String("QUEUE"), Entries: []*sqs.DeleteMessageBatchRequestEntry{ { ID: aws.String("TEST"), ReceiptHandle: aws.String("RECEIPT"), }, }, }) assert.Error(t, err) assert.Equal(t, "InvalidAddress", err.Code()) assert.Equal(t, "The address QUEUE is not valid for this endpoint.", err.Message()) } aws-sdk-go-1.4.22/service/sqs/checksums.go000066400000000000000000000055111300374646400203470ustar00rootroot00000000000000package sqs import ( "crypto/md5" "encoding/hex" "fmt" "strings" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" ) var ( errChecksumMissingBody = fmt.Errorf("cannot compute checksum. missing body") errChecksumMissingMD5 = fmt.Errorf("cannot verify checksum. missing response MD5") ) func setupChecksumValidation(r *request.Request) { if aws.BoolValue(r.Config.DisableComputeChecksums) { return } switch r.Operation.Name { case opSendMessage: r.Handlers.Unmarshal.PushBack(verifySendMessage) case opSendMessageBatch: r.Handlers.Unmarshal.PushBack(verifySendMessageBatch) case opReceiveMessage: r.Handlers.Unmarshal.PushBack(verifyReceiveMessage) } } func verifySendMessage(r *request.Request) { if r.DataFilled() && r.ParamsFilled() { in := r.Params.(*SendMessageInput) out := r.Data.(*SendMessageOutput) err := checksumsMatch(in.MessageBody, out.MD5OfMessageBody) if err != nil { setChecksumError(r, err.Error()) } } } func verifySendMessageBatch(r *request.Request) { if r.DataFilled() && r.ParamsFilled() { entries := map[string]*SendMessageBatchResultEntry{} ids := []string{} out := r.Data.(*SendMessageBatchOutput) for _, entry := range out.Successful { entries[*entry.Id] = entry } in := r.Params.(*SendMessageBatchInput) for _, entry := range in.Entries { if e := entries[*entry.Id]; e != nil { err := checksumsMatch(entry.MessageBody, e.MD5OfMessageBody) if err != nil { ids = append(ids, *e.MessageId) } } } if len(ids) > 0 { setChecksumError(r, "invalid messages: %s", strings.Join(ids, ", ")) } } } func verifyReceiveMessage(r *request.Request) { if r.DataFilled() && r.ParamsFilled() { ids := []string{} out := r.Data.(*ReceiveMessageOutput) for i, msg := range out.Messages { err := checksumsMatch(msg.Body, msg.MD5OfBody) if err != nil { if msg.MessageId == nil { if r.Config.Logger != nil { r.Config.Logger.Log(fmt.Sprintf( "WARN: SQS.ReceiveMessage failed checksum request id: %s, message %d has no message ID.", r.RequestID, i, )) } continue } ids = append(ids, *msg.MessageId) } } if len(ids) > 0 { setChecksumError(r, "invalid messages: %s", strings.Join(ids, ", ")) } } } func checksumsMatch(body, expectedMD5 *string) error { if body == nil { return errChecksumMissingBody } else if expectedMD5 == nil { return errChecksumMissingMD5 } msum := md5.Sum([]byte(*body)) sum := hex.EncodeToString(msum[:]) if sum != *expectedMD5 { return fmt.Errorf("expected MD5 checksum '%s', got '%s'", *expectedMD5, sum) } return nil } func setChecksumError(r *request.Request, format string, args ...interface{}) { r.Retryable = aws.Bool(true) r.Error = awserr.New("InvalidChecksum", fmt.Sprintf(format, args...), nil) } aws-sdk-go-1.4.22/service/sqs/checksums_test.go000066400000000000000000000163471300374646400214170ustar00rootroot00000000000000package sqs_test import ( "bytes" "io/ioutil" "net/http" "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awserr" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/sqs" ) var svc = func() *sqs.SQS { s := sqs.New(unit.Session, &aws.Config{ DisableParamValidation: aws.Bool(true), }) s.Handlers.Send.Clear() return s }() func TestSendMessageChecksum(t *testing.T) { req, _ := svc.SendMessageRequest(&sqs.SendMessageInput{ MessageBody: aws.String("test"), }) req.Handlers.Send.PushBack(func(r *request.Request) { body := ioutil.NopCloser(bytes.NewReader([]byte(""))) r.HTTPResponse = &http.Response{StatusCode: 200, Body: body} r.Data = &sqs.SendMessageOutput{ MD5OfMessageBody: aws.String("098f6bcd4621d373cade4e832627b4f6"), MessageId: aws.String("12345"), } }) err := req.Send() assert.NoError(t, err) } func TestSendMessageChecksumInvalid(t *testing.T) { req, _ := svc.SendMessageRequest(&sqs.SendMessageInput{ MessageBody: aws.String("test"), }) req.Handlers.Send.PushBack(func(r *request.Request) { body := ioutil.NopCloser(bytes.NewReader([]byte(""))) r.HTTPResponse = &http.Response{StatusCode: 200, Body: body} r.Data = &sqs.SendMessageOutput{ MD5OfMessageBody: aws.String("000"), MessageId: aws.String("12345"), } }) err := req.Send() assert.Error(t, err) assert.Equal(t, "InvalidChecksum", err.(awserr.Error).Code()) assert.Contains(t, err.(awserr.Error).Message(), "expected MD5 checksum '000', got '098f6bcd4621d373cade4e832627b4f6'") } func TestSendMessageChecksumInvalidNoValidation(t *testing.T) { s := sqs.New(unit.Session, &aws.Config{ DisableParamValidation: aws.Bool(true), DisableComputeChecksums: aws.Bool(true), }) s.Handlers.Send.Clear() req, _ := s.SendMessageRequest(&sqs.SendMessageInput{ MessageBody: aws.String("test"), }) req.Handlers.Send.PushBack(func(r *request.Request) { body := ioutil.NopCloser(bytes.NewReader([]byte(""))) r.HTTPResponse = &http.Response{StatusCode: 200, Body: body} r.Data = &sqs.SendMessageOutput{ MD5OfMessageBody: aws.String("000"), MessageId: aws.String("12345"), } }) err := req.Send() assert.NoError(t, err) } func TestSendMessageChecksumNoInput(t *testing.T) { req, _ := svc.SendMessageRequest(&sqs.SendMessageInput{}) req.Handlers.Send.PushBack(func(r *request.Request) { body := ioutil.NopCloser(bytes.NewReader([]byte(""))) r.HTTPResponse = &http.Response{StatusCode: 200, Body: body} r.Data = &sqs.SendMessageOutput{} }) err := req.Send() assert.Error(t, err) assert.Equal(t, "InvalidChecksum", err.(awserr.Error).Code()) assert.Contains(t, err.(awserr.Error).Message(), "cannot compute checksum. missing body") } func TestSendMessageChecksumNoOutput(t *testing.T) { req, _ := svc.SendMessageRequest(&sqs.SendMessageInput{ MessageBody: aws.String("test"), }) req.Handlers.Send.PushBack(func(r *request.Request) { body := ioutil.NopCloser(bytes.NewReader([]byte(""))) r.HTTPResponse = &http.Response{StatusCode: 200, Body: body} r.Data = &sqs.SendMessageOutput{} }) err := req.Send() assert.Error(t, err) assert.Equal(t, "InvalidChecksum", err.(awserr.Error).Code()) assert.Contains(t, err.(awserr.Error).Message(), "cannot verify checksum. missing response MD5") } func TestRecieveMessageChecksum(t *testing.T) { req, _ := svc.ReceiveMessageRequest(&sqs.ReceiveMessageInput{}) req.Handlers.Send.PushBack(func(r *request.Request) { md5 := "098f6bcd4621d373cade4e832627b4f6" body := ioutil.NopCloser(bytes.NewReader([]byte(""))) r.HTTPResponse = &http.Response{StatusCode: 200, Body: body} r.Data = &sqs.ReceiveMessageOutput{ Messages: []*sqs.Message{ {Body: aws.String("test"), MD5OfBody: &md5}, {Body: aws.String("test"), MD5OfBody: &md5}, {Body: aws.String("test"), MD5OfBody: &md5}, {Body: aws.String("test"), MD5OfBody: &md5}, }, } }) err := req.Send() assert.NoError(t, err) } func TestRecieveMessageChecksumInvalid(t *testing.T) { req, _ := svc.ReceiveMessageRequest(&sqs.ReceiveMessageInput{}) req.Handlers.Send.PushBack(func(r *request.Request) { md5 := "098f6bcd4621d373cade4e832627b4f6" body := ioutil.NopCloser(bytes.NewReader([]byte(""))) r.HTTPResponse = &http.Response{StatusCode: 200, Body: body} r.Data = &sqs.ReceiveMessageOutput{ Messages: []*sqs.Message{ {Body: aws.String("test"), MD5OfBody: &md5}, {Body: aws.String("test"), MD5OfBody: aws.String("000"), MessageId: aws.String("123")}, {Body: aws.String("test"), MD5OfBody: aws.String("000"), MessageId: aws.String("456")}, {Body: aws.String("test"), MD5OfBody: aws.String("000")}, {Body: aws.String("test"), MD5OfBody: &md5}, }, } }) err := req.Send() assert.Error(t, err) assert.Equal(t, "InvalidChecksum", err.(awserr.Error).Code()) assert.Contains(t, err.(awserr.Error).Message(), "invalid messages: 123, 456") } func TestSendMessageBatchChecksum(t *testing.T) { req, _ := svc.SendMessageBatchRequest(&sqs.SendMessageBatchInput{ Entries: []*sqs.SendMessageBatchRequestEntry{ {Id: aws.String("1"), MessageBody: aws.String("test")}, {Id: aws.String("2"), MessageBody: aws.String("test")}, {Id: aws.String("3"), MessageBody: aws.String("test")}, {Id: aws.String("4"), MessageBody: aws.String("test")}, }, }) req.Handlers.Send.PushBack(func(r *request.Request) { md5 := "098f6bcd4621d373cade4e832627b4f6" body := ioutil.NopCloser(bytes.NewReader([]byte(""))) r.HTTPResponse = &http.Response{StatusCode: 200, Body: body} r.Data = &sqs.SendMessageBatchOutput{ Successful: []*sqs.SendMessageBatchResultEntry{ {MD5OfMessageBody: &md5, MessageId: aws.String("123"), Id: aws.String("1")}, {MD5OfMessageBody: &md5, MessageId: aws.String("456"), Id: aws.String("2")}, {MD5OfMessageBody: &md5, MessageId: aws.String("789"), Id: aws.String("3")}, {MD5OfMessageBody: &md5, MessageId: aws.String("012"), Id: aws.String("4")}, }, } }) err := req.Send() assert.NoError(t, err) } func TestSendMessageBatchChecksumInvalid(t *testing.T) { req, _ := svc.SendMessageBatchRequest(&sqs.SendMessageBatchInput{ Entries: []*sqs.SendMessageBatchRequestEntry{ {Id: aws.String("1"), MessageBody: aws.String("test")}, {Id: aws.String("2"), MessageBody: aws.String("test")}, {Id: aws.String("3"), MessageBody: aws.String("test")}, {Id: aws.String("4"), MessageBody: aws.String("test")}, }, }) req.Handlers.Send.PushBack(func(r *request.Request) { md5 := "098f6bcd4621d373cade4e832627b4f6" body := ioutil.NopCloser(bytes.NewReader([]byte(""))) r.HTTPResponse = &http.Response{StatusCode: 200, Body: body} r.Data = &sqs.SendMessageBatchOutput{ Successful: []*sqs.SendMessageBatchResultEntry{ {MD5OfMessageBody: &md5, MessageId: aws.String("123"), Id: aws.String("1")}, {MD5OfMessageBody: aws.String("000"), MessageId: aws.String("456"), Id: aws.String("2")}, {MD5OfMessageBody: aws.String("000"), MessageId: aws.String("789"), Id: aws.String("3")}, {MD5OfMessageBody: &md5, MessageId: aws.String("012"), Id: aws.String("4")}, }, } }) err := req.Send() assert.Error(t, err) assert.Equal(t, "InvalidChecksum", err.(awserr.Error).Code()) assert.Contains(t, err.(awserr.Error).Message(), "invalid messages: 456, 789") } aws-sdk-go-1.4.22/service/sqs/customizations.go000066400000000000000000000002271300374646400214540ustar00rootroot00000000000000package sqs import "github.com/aws/aws-sdk-go/aws/request" func init() { initRequest = func(r *request.Request) { setupChecksumValidation(r) } } aws-sdk-go-1.4.22/service/sqs/examples_test.go000066400000000000000000000272011300374646400212370ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package sqs_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/sqs" ) var _ time.Duration var _ bytes.Buffer func ExampleSQS_AddPermission() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sqs.New(sess) params := &sqs.AddPermissionInput{ AWSAccountIds: []*string{ // Required aws.String("String"), // Required // More values... }, Actions: []*string{ // Required aws.String("String"), // Required // More values... }, Label: aws.String("String"), // Required QueueUrl: aws.String("String"), // Required } resp, err := svc.AddPermission(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSQS_ChangeMessageVisibility() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sqs.New(sess) params := &sqs.ChangeMessageVisibilityInput{ QueueUrl: aws.String("String"), // Required ReceiptHandle: aws.String("String"), // Required VisibilityTimeout: aws.Int64(1), // Required } resp, err := svc.ChangeMessageVisibility(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSQS_ChangeMessageVisibilityBatch() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sqs.New(sess) params := &sqs.ChangeMessageVisibilityBatchInput{ Entries: []*sqs.ChangeMessageVisibilityBatchRequestEntry{ // Required { // Required Id: aws.String("String"), // Required ReceiptHandle: aws.String("String"), // Required VisibilityTimeout: aws.Int64(1), }, // More values... }, QueueUrl: aws.String("String"), // Required } resp, err := svc.ChangeMessageVisibilityBatch(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSQS_CreateQueue() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sqs.New(sess) params := &sqs.CreateQueueInput{ QueueName: aws.String("String"), // Required Attributes: map[string]*string{ "Key": aws.String("String"), // Required // More values... }, } resp, err := svc.CreateQueue(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSQS_DeleteMessage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sqs.New(sess) params := &sqs.DeleteMessageInput{ QueueUrl: aws.String("String"), // Required ReceiptHandle: aws.String("String"), // Required } resp, err := svc.DeleteMessage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSQS_DeleteMessageBatch() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sqs.New(sess) params := &sqs.DeleteMessageBatchInput{ Entries: []*sqs.DeleteMessageBatchRequestEntry{ // Required { // Required Id: aws.String("String"), // Required ReceiptHandle: aws.String("String"), // Required }, // More values... }, QueueUrl: aws.String("String"), // Required } resp, err := svc.DeleteMessageBatch(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSQS_DeleteQueue() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sqs.New(sess) params := &sqs.DeleteQueueInput{ QueueUrl: aws.String("String"), // Required } resp, err := svc.DeleteQueue(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSQS_GetQueueAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sqs.New(sess) params := &sqs.GetQueueAttributesInput{ QueueUrl: aws.String("String"), // Required AttributeNames: []*string{ aws.String("QueueAttributeName"), // Required // More values... }, } resp, err := svc.GetQueueAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSQS_GetQueueUrl() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sqs.New(sess) params := &sqs.GetQueueUrlInput{ QueueName: aws.String("String"), // Required QueueOwnerAWSAccountId: aws.String("String"), } resp, err := svc.GetQueueUrl(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSQS_ListDeadLetterSourceQueues() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sqs.New(sess) params := &sqs.ListDeadLetterSourceQueuesInput{ QueueUrl: aws.String("String"), // Required } resp, err := svc.ListDeadLetterSourceQueues(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSQS_ListQueues() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sqs.New(sess) params := &sqs.ListQueuesInput{ QueueNamePrefix: aws.String("String"), } resp, err := svc.ListQueues(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSQS_PurgeQueue() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sqs.New(sess) params := &sqs.PurgeQueueInput{ QueueUrl: aws.String("String"), // Required } resp, err := svc.PurgeQueue(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSQS_ReceiveMessage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sqs.New(sess) params := &sqs.ReceiveMessageInput{ QueueUrl: aws.String("String"), // Required AttributeNames: []*string{ aws.String("QueueAttributeName"), // Required // More values... }, MaxNumberOfMessages: aws.Int64(1), MessageAttributeNames: []*string{ aws.String("MessageAttributeName"), // Required // More values... }, VisibilityTimeout: aws.Int64(1), WaitTimeSeconds: aws.Int64(1), } resp, err := svc.ReceiveMessage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSQS_RemovePermission() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sqs.New(sess) params := &sqs.RemovePermissionInput{ Label: aws.String("String"), // Required QueueUrl: aws.String("String"), // Required } resp, err := svc.RemovePermission(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSQS_SendMessage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sqs.New(sess) params := &sqs.SendMessageInput{ MessageBody: aws.String("String"), // Required QueueUrl: aws.String("String"), // Required DelaySeconds: aws.Int64(1), MessageAttributes: map[string]*sqs.MessageAttributeValue{ "Key": { // Required DataType: aws.String("String"), // Required BinaryListValues: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, BinaryValue: []byte("PAYLOAD"), StringListValues: []*string{ aws.String("String"), // Required // More values... }, StringValue: aws.String("String"), }, // More values... }, } resp, err := svc.SendMessage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSQS_SendMessageBatch() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sqs.New(sess) params := &sqs.SendMessageBatchInput{ Entries: []*sqs.SendMessageBatchRequestEntry{ // Required { // Required Id: aws.String("String"), // Required MessageBody: aws.String("String"), // Required DelaySeconds: aws.Int64(1), MessageAttributes: map[string]*sqs.MessageAttributeValue{ "Key": { // Required DataType: aws.String("String"), // Required BinaryListValues: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, BinaryValue: []byte("PAYLOAD"), StringListValues: []*string{ aws.String("String"), // Required // More values... }, StringValue: aws.String("String"), }, // More values... }, }, // More values... }, QueueUrl: aws.String("String"), // Required } resp, err := svc.SendMessageBatch(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSQS_SetQueueAttributes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sqs.New(sess) params := &sqs.SetQueueAttributesInput{ Attributes: map[string]*string{ // Required "Key": aws.String("String"), // Required // More values... }, QueueUrl: aws.String("String"), // Required } resp, err := svc.SetQueueAttributes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/sqs/service.go000066400000000000000000000102511300374646400200170ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package sqs import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/query" ) // Welcome to the Amazon Simple Queue Service API Reference. This section describes // who should read this guide, how the guide is organized, and other resources // related to the Amazon Simple Queue Service (Amazon SQS). // // Amazon SQS offers reliable and scalable hosted queues for storing messages // as they travel between computers. By using Amazon SQS, you can move data // between distributed components of your applications that perform different // tasks without losing messages or requiring each component to be always available. // // Helpful Links: // // * Current WSDL (2012-11-05) (http://queue.amazonaws.com/doc/2012-11-05/QueueService.wsdl) // // * Making API Requests (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/MakingRequestsArticle.html) // // * Amazon SQS product page (http://aws.amazon.com/sqs/) // // * Using Amazon SQS Message Attributes (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSMessageAttributes.html) // // * Using Amazon SQS Dead Letter Queues (http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html) // // * Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html#sqs_region) // // We also provide SDKs that enable you to access Amazon SQS from your preferred // programming language. The SDKs contain functionality that automatically takes // care of tasks such as: // // * Cryptographically signing your service requests // // * Retrying requests // // * Handling error responses // // For a list of available SDKs, go to Tools for Amazon Web Services (http://aws.amazon.com/tools/). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type SQS struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "sqs" // New creates a new instance of the SQS client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a SQS client from just a session. // svc := sqs.New(mySession) // // // Create a SQS client with additional configuration // svc := sqs.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *SQS { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *SQS { svc := &SQS{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2012-11-05", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a SQS operation and runs any // custom request initialization. func (c *SQS) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/sqs/sqsiface/000077500000000000000000000000001300374646400176275ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/sqs/sqsiface/interface.go000066400000000000000000000121621300374646400221200ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package sqsiface provides an interface to enable mocking the Amazon Simple Queue Service service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package sqsiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/sqs" ) // SQSAPI provides an interface to enable mocking the // sqs.SQS service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Simple Queue Service. // func myFunc(svc sqsiface.SQSAPI) bool { // // Make svc.AddPermission request // } // // func main() { // sess := session.New() // svc := sqs.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockSQSClient struct { // sqsiface.SQSAPI // } // func (m *mockSQSClient) AddPermission(input *sqs.AddPermissionInput) (*sqs.AddPermissionOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockSQSClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type SQSAPI interface { AddPermissionRequest(*sqs.AddPermissionInput) (*request.Request, *sqs.AddPermissionOutput) AddPermission(*sqs.AddPermissionInput) (*sqs.AddPermissionOutput, error) ChangeMessageVisibilityRequest(*sqs.ChangeMessageVisibilityInput) (*request.Request, *sqs.ChangeMessageVisibilityOutput) ChangeMessageVisibility(*sqs.ChangeMessageVisibilityInput) (*sqs.ChangeMessageVisibilityOutput, error) ChangeMessageVisibilityBatchRequest(*sqs.ChangeMessageVisibilityBatchInput) (*request.Request, *sqs.ChangeMessageVisibilityBatchOutput) ChangeMessageVisibilityBatch(*sqs.ChangeMessageVisibilityBatchInput) (*sqs.ChangeMessageVisibilityBatchOutput, error) CreateQueueRequest(*sqs.CreateQueueInput) (*request.Request, *sqs.CreateQueueOutput) CreateQueue(*sqs.CreateQueueInput) (*sqs.CreateQueueOutput, error) DeleteMessageRequest(*sqs.DeleteMessageInput) (*request.Request, *sqs.DeleteMessageOutput) DeleteMessage(*sqs.DeleteMessageInput) (*sqs.DeleteMessageOutput, error) DeleteMessageBatchRequest(*sqs.DeleteMessageBatchInput) (*request.Request, *sqs.DeleteMessageBatchOutput) DeleteMessageBatch(*sqs.DeleteMessageBatchInput) (*sqs.DeleteMessageBatchOutput, error) DeleteQueueRequest(*sqs.DeleteQueueInput) (*request.Request, *sqs.DeleteQueueOutput) DeleteQueue(*sqs.DeleteQueueInput) (*sqs.DeleteQueueOutput, error) GetQueueAttributesRequest(*sqs.GetQueueAttributesInput) (*request.Request, *sqs.GetQueueAttributesOutput) GetQueueAttributes(*sqs.GetQueueAttributesInput) (*sqs.GetQueueAttributesOutput, error) GetQueueUrlRequest(*sqs.GetQueueUrlInput) (*request.Request, *sqs.GetQueueUrlOutput) GetQueueUrl(*sqs.GetQueueUrlInput) (*sqs.GetQueueUrlOutput, error) ListDeadLetterSourceQueuesRequest(*sqs.ListDeadLetterSourceQueuesInput) (*request.Request, *sqs.ListDeadLetterSourceQueuesOutput) ListDeadLetterSourceQueues(*sqs.ListDeadLetterSourceQueuesInput) (*sqs.ListDeadLetterSourceQueuesOutput, error) ListQueuesRequest(*sqs.ListQueuesInput) (*request.Request, *sqs.ListQueuesOutput) ListQueues(*sqs.ListQueuesInput) (*sqs.ListQueuesOutput, error) PurgeQueueRequest(*sqs.PurgeQueueInput) (*request.Request, *sqs.PurgeQueueOutput) PurgeQueue(*sqs.PurgeQueueInput) (*sqs.PurgeQueueOutput, error) ReceiveMessageRequest(*sqs.ReceiveMessageInput) (*request.Request, *sqs.ReceiveMessageOutput) ReceiveMessage(*sqs.ReceiveMessageInput) (*sqs.ReceiveMessageOutput, error) RemovePermissionRequest(*sqs.RemovePermissionInput) (*request.Request, *sqs.RemovePermissionOutput) RemovePermission(*sqs.RemovePermissionInput) (*sqs.RemovePermissionOutput, error) SendMessageRequest(*sqs.SendMessageInput) (*request.Request, *sqs.SendMessageOutput) SendMessage(*sqs.SendMessageInput) (*sqs.SendMessageOutput, error) SendMessageBatchRequest(*sqs.SendMessageBatchInput) (*request.Request, *sqs.SendMessageBatchOutput) SendMessageBatch(*sqs.SendMessageBatchInput) (*sqs.SendMessageBatchOutput, error) SetQueueAttributesRequest(*sqs.SetQueueAttributesInput) (*request.Request, *sqs.SetQueueAttributesOutput) SetQueueAttributes(*sqs.SetQueueAttributesInput) (*sqs.SetQueueAttributesOutput, error) } var _ SQSAPI = (*sqs.SQS)(nil) aws-sdk-go-1.4.22/service/ssm/000077500000000000000000000000001300374646400160255ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/ssm/api.go000066400000000000000000004667471300374646400171550ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package ssm provides a client for Amazon Simple Systems Management Service. package ssm import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opAddTagsToResource = "AddTagsToResource" // AddTagsToResourceRequest generates a "aws/request.Request" representing the // client's request for the AddTagsToResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddTagsToResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddTagsToResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddTagsToResourceRequest method. // req, resp := client.AddTagsToResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) AddTagsToResourceRequest(input *AddTagsToResourceInput) (req *request.Request, output *AddTagsToResourceOutput) { op := &request.Operation{ Name: opAddTagsToResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddTagsToResourceInput{} } req = c.newRequest(op, input, output) output = &AddTagsToResourceOutput{} req.Data = output return } // AddTagsToResource API operation for Amazon Simple Systems Management Service. // // Adds or overwrites one or more tags for the specified resource. Tags are // metadata that you assign to your managed instances. Tags enable you to categorize // your managed instances in different ways, for example, by purpose, owner, // or environment. Each tag consists of a key and an optional value, both of // which you define. For example, you could define a set of tags for your account's // managed instances that helps you track each instance's owner and stack level. // For example: Key=Owner and Value=DbAdmin, SysAdmin, or Dev. Or Key=Stack // and Value=Production, Pre-Production, or Test. Each resource can have a maximum // of 10 tags. // // We recommend that you devise a set of tag keys that meets your needs for // each resource type. Using a consistent set of tag keys makes it easier for // you to manage your resources. You can search and filter the resources based // on the tags you add. Tags don't have any semantic meaning to Amazon EC2 and // are interpreted strictly as a string of characters. // // For more information about tags, see Tagging Your Amazon EC2 Resources (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html) // in the Amazon EC2 User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation AddTagsToResource for usage and error information. // // Returned Error Codes: // * InvalidResourceType // The resource type is not valid. If you are attempting to tag an instance, // the instance must be a registered, managed instance. // // * InvalidResourceId // The resource ID is not valid. Verify that you entered the correct ID and // try again. // // * InternalServerError // An error occurred on the server side. // func (c *SSM) AddTagsToResource(input *AddTagsToResourceInput) (*AddTagsToResourceOutput, error) { req, out := c.AddTagsToResourceRequest(input) err := req.Send() return out, err } const opCancelCommand = "CancelCommand" // CancelCommandRequest generates a "aws/request.Request" representing the // client's request for the CancelCommand operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CancelCommand for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CancelCommand method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CancelCommandRequest method. // req, resp := client.CancelCommandRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) CancelCommandRequest(input *CancelCommandInput) (req *request.Request, output *CancelCommandOutput) { op := &request.Operation{ Name: opCancelCommand, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CancelCommandInput{} } req = c.newRequest(op, input, output) output = &CancelCommandOutput{} req.Data = output return } // CancelCommand API operation for Amazon Simple Systems Management Service. // // Attempts to cancel the command specified by the Command ID. There is no guarantee // that the command will be terminated and the underlying process stopped. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation CancelCommand for usage and error information. // // Returned Error Codes: // * InternalServerError // An error occurred on the server side. // // * InvalidCommandId // // * InvalidInstanceId // The instance is not in valid state. Valid states are: Running, Pending, Stopped, // Stopping. Invalid states are: Shutting-down and Terminated. // // * DuplicateInstanceId // You cannot specify an instance ID in more than one association. // func (c *SSM) CancelCommand(input *CancelCommandInput) (*CancelCommandOutput, error) { req, out := c.CancelCommandRequest(input) err := req.Send() return out, err } const opCreateActivation = "CreateActivation" // CreateActivationRequest generates a "aws/request.Request" representing the // client's request for the CreateActivation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateActivation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateActivation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateActivationRequest method. // req, resp := client.CreateActivationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) CreateActivationRequest(input *CreateActivationInput) (req *request.Request, output *CreateActivationOutput) { op := &request.Operation{ Name: opCreateActivation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateActivationInput{} } req = c.newRequest(op, input, output) output = &CreateActivationOutput{} req.Data = output return } // CreateActivation API operation for Amazon Simple Systems Management Service. // // Registers your on-premises server or virtual machine with Amazon EC2 so that // you can manage these resources using Run Command. An on-premises server or // virtual machine that has been registered with EC2 is called a managed instance. // For more information about activations, see Setting Up Managed Instances // (Linux) (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/managed-instances.html) // or Setting Up Managed Instances (Windows) (http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/managed-instances.html) // in the Amazon EC2 User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation CreateActivation for usage and error information. // // Returned Error Codes: // * InternalServerError // An error occurred on the server side. // func (c *SSM) CreateActivation(input *CreateActivationInput) (*CreateActivationOutput, error) { req, out := c.CreateActivationRequest(input) err := req.Send() return out, err } const opCreateAssociation = "CreateAssociation" // CreateAssociationRequest generates a "aws/request.Request" representing the // client's request for the CreateAssociation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateAssociation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateAssociation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateAssociationRequest method. // req, resp := client.CreateAssociationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) CreateAssociationRequest(input *CreateAssociationInput) (req *request.Request, output *CreateAssociationOutput) { op := &request.Operation{ Name: opCreateAssociation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateAssociationInput{} } req = c.newRequest(op, input, output) output = &CreateAssociationOutput{} req.Data = output return } // CreateAssociation API operation for Amazon Simple Systems Management Service. // // Associates the specified SSM document with the specified instance. // // When you associate an SSM document with an instance, the configuration agent // on the instance (SSM agent for Linux and EC2Config service for Windows) processes // the document and configures the instance as specified. // // If you associate a document with an instance that already has an associated // document, the system throws the AssociationAlreadyExists exception. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation CreateAssociation for usage and error information. // // Returned Error Codes: // * AssociationAlreadyExists // The specified association already exists. // // * AssociationLimitExceeded // You can have at most 2,000 active associations. // // * InternalServerError // An error occurred on the server side. // // * InvalidDocument // The specified document does not exist. // // * InvalidInstanceId // The instance is not in valid state. Valid states are: Running, Pending, Stopped, // Stopping. Invalid states are: Shutting-down and Terminated. // // * UnsupportedPlatformType // The document does not support the platform type of the given instance ID(s). // For example, you sent an SSM document for a Windows instance to a Linux instance. // // * InvalidParameters // You must specify values for all required parameters in the SSM document. // You can only supply values to parameters defined in the SSM document. // func (c *SSM) CreateAssociation(input *CreateAssociationInput) (*CreateAssociationOutput, error) { req, out := c.CreateAssociationRequest(input) err := req.Send() return out, err } const opCreateAssociationBatch = "CreateAssociationBatch" // CreateAssociationBatchRequest generates a "aws/request.Request" representing the // client's request for the CreateAssociationBatch operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateAssociationBatch for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateAssociationBatch method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateAssociationBatchRequest method. // req, resp := client.CreateAssociationBatchRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) CreateAssociationBatchRequest(input *CreateAssociationBatchInput) (req *request.Request, output *CreateAssociationBatchOutput) { op := &request.Operation{ Name: opCreateAssociationBatch, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateAssociationBatchInput{} } req = c.newRequest(op, input, output) output = &CreateAssociationBatchOutput{} req.Data = output return } // CreateAssociationBatch API operation for Amazon Simple Systems Management Service. // // Associates the specified SSM document with the specified instances. // // When you associate an SSM document with an instance, the configuration agent // on the instance (SSM agent for Linux and EC2Config service for Windows) processes // the document and configures the instance as specified. // // If you associate a document with an instance that already has an associated // document, the system throws the AssociationAlreadyExists exception. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation CreateAssociationBatch for usage and error information. // // Returned Error Codes: // * InternalServerError // An error occurred on the server side. // // * InvalidDocument // The specified document does not exist. // // * InvalidInstanceId // The instance is not in valid state. Valid states are: Running, Pending, Stopped, // Stopping. Invalid states are: Shutting-down and Terminated. // // * InvalidParameters // You must specify values for all required parameters in the SSM document. // You can only supply values to parameters defined in the SSM document. // // * DuplicateInstanceId // You cannot specify an instance ID in more than one association. // // * AssociationLimitExceeded // You can have at most 2,000 active associations. // // * UnsupportedPlatformType // The document does not support the platform type of the given instance ID(s). // For example, you sent an SSM document for a Windows instance to a Linux instance. // func (c *SSM) CreateAssociationBatch(input *CreateAssociationBatchInput) (*CreateAssociationBatchOutput, error) { req, out := c.CreateAssociationBatchRequest(input) err := req.Send() return out, err } const opCreateDocument = "CreateDocument" // CreateDocumentRequest generates a "aws/request.Request" representing the // client's request for the CreateDocument operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateDocument for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateDocument method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateDocumentRequest method. // req, resp := client.CreateDocumentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) CreateDocumentRequest(input *CreateDocumentInput) (req *request.Request, output *CreateDocumentOutput) { op := &request.Operation{ Name: opCreateDocument, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateDocumentInput{} } req = c.newRequest(op, input, output) output = &CreateDocumentOutput{} req.Data = output return } // CreateDocument API operation for Amazon Simple Systems Management Service. // // Creates an SSM document. // // After you create an SSM document, you can use CreateAssociation to associate // it with one or more running instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation CreateDocument for usage and error information. // // Returned Error Codes: // * DocumentAlreadyExists // The specified SSM document already exists. // // * MaxDocumentSizeExceeded // The size limit of an SSM document is 64 KB. // // * InternalServerError // An error occurred on the server side. // // * InvalidDocumentContent // The content for the SSM document is not valid. // // * DocumentLimitExceeded // You can have at most 200 active SSM documents. // func (c *SSM) CreateDocument(input *CreateDocumentInput) (*CreateDocumentOutput, error) { req, out := c.CreateDocumentRequest(input) err := req.Send() return out, err } const opDeleteActivation = "DeleteActivation" // DeleteActivationRequest generates a "aws/request.Request" representing the // client's request for the DeleteActivation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteActivation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteActivation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteActivationRequest method. // req, resp := client.DeleteActivationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) DeleteActivationRequest(input *DeleteActivationInput) (req *request.Request, output *DeleteActivationOutput) { op := &request.Operation{ Name: opDeleteActivation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteActivationInput{} } req = c.newRequest(op, input, output) output = &DeleteActivationOutput{} req.Data = output return } // DeleteActivation API operation for Amazon Simple Systems Management Service. // // Deletes an activation. You are not required to delete an activation. If you // delete an activation, you can no longer use it to register additional managed // instances. Deleting an activation does not de-register managed instances. // You must manually de-register managed instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation DeleteActivation for usage and error information. // // Returned Error Codes: // * InvalidActivationId // The activation ID is not valid. Verify the you entered the correct ActivationId // or ActivationCode and try again. // // * InvalidActivation // The activation is not valid. The activation might have been deleted, or the // ActivationId and the ActivationCode do not match. // // * InternalServerError // An error occurred on the server side. // func (c *SSM) DeleteActivation(input *DeleteActivationInput) (*DeleteActivationOutput, error) { req, out := c.DeleteActivationRequest(input) err := req.Send() return out, err } const opDeleteAssociation = "DeleteAssociation" // DeleteAssociationRequest generates a "aws/request.Request" representing the // client's request for the DeleteAssociation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteAssociation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteAssociation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteAssociationRequest method. // req, resp := client.DeleteAssociationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) DeleteAssociationRequest(input *DeleteAssociationInput) (req *request.Request, output *DeleteAssociationOutput) { op := &request.Operation{ Name: opDeleteAssociation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteAssociationInput{} } req = c.newRequest(op, input, output) output = &DeleteAssociationOutput{} req.Data = output return } // DeleteAssociation API operation for Amazon Simple Systems Management Service. // // Disassociates the specified SSM document from the specified instance. // // When you disassociate an SSM document from an instance, it does not change // the configuration of the instance. To change the configuration state of an // instance after you disassociate a document, you must create a new document // with the desired configuration and associate it with the instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation DeleteAssociation for usage and error information. // // Returned Error Codes: // * AssociationDoesNotExist // The specified association does not exist. // // * InternalServerError // An error occurred on the server side. // // * InvalidDocument // The specified document does not exist. // // * InvalidInstanceId // The instance is not in valid state. Valid states are: Running, Pending, Stopped, // Stopping. Invalid states are: Shutting-down and Terminated. // // * TooManyUpdates // There are concurrent updates for a resource that supports one update at a // time. // func (c *SSM) DeleteAssociation(input *DeleteAssociationInput) (*DeleteAssociationOutput, error) { req, out := c.DeleteAssociationRequest(input) err := req.Send() return out, err } const opDeleteDocument = "DeleteDocument" // DeleteDocumentRequest generates a "aws/request.Request" representing the // client's request for the DeleteDocument operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteDocument for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteDocument method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteDocumentRequest method. // req, resp := client.DeleteDocumentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) DeleteDocumentRequest(input *DeleteDocumentInput) (req *request.Request, output *DeleteDocumentOutput) { op := &request.Operation{ Name: opDeleteDocument, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteDocumentInput{} } req = c.newRequest(op, input, output) output = &DeleteDocumentOutput{} req.Data = output return } // DeleteDocument API operation for Amazon Simple Systems Management Service. // // Deletes the SSM document and all instance associations to the document. // // Before you delete the SSM document, we recommend that you use DeleteAssociation // to disassociate all instances that are associated with the document. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation DeleteDocument for usage and error information. // // Returned Error Codes: // * InternalServerError // An error occurred on the server side. // // * InvalidDocument // The specified document does not exist. // // * InvalidDocumentOperation // You attempted to delete a document while it is still shared. You must stop // sharing the document before you can delete it. // // * AssociatedInstances // You must disassociate an SSM document from all instances before you can delete // it. // func (c *SSM) DeleteDocument(input *DeleteDocumentInput) (*DeleteDocumentOutput, error) { req, out := c.DeleteDocumentRequest(input) err := req.Send() return out, err } const opDeregisterManagedInstance = "DeregisterManagedInstance" // DeregisterManagedInstanceRequest generates a "aws/request.Request" representing the // client's request for the DeregisterManagedInstance operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeregisterManagedInstance for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeregisterManagedInstance method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeregisterManagedInstanceRequest method. // req, resp := client.DeregisterManagedInstanceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) DeregisterManagedInstanceRequest(input *DeregisterManagedInstanceInput) (req *request.Request, output *DeregisterManagedInstanceOutput) { op := &request.Operation{ Name: opDeregisterManagedInstance, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeregisterManagedInstanceInput{} } req = c.newRequest(op, input, output) output = &DeregisterManagedInstanceOutput{} req.Data = output return } // DeregisterManagedInstance API operation for Amazon Simple Systems Management Service. // // Removes the server or virtual machine from the list of registered servers. // You can reregister the instance again at any time. If you don’t plan to use // Run Command on the server, we suggest uninstalling the SSM agent first. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation DeregisterManagedInstance for usage and error information. // // Returned Error Codes: // * InvalidInstanceId // The instance is not in valid state. Valid states are: Running, Pending, Stopped, // Stopping. Invalid states are: Shutting-down and Terminated. // // * InternalServerError // An error occurred on the server side. // func (c *SSM) DeregisterManagedInstance(input *DeregisterManagedInstanceInput) (*DeregisterManagedInstanceOutput, error) { req, out := c.DeregisterManagedInstanceRequest(input) err := req.Send() return out, err } const opDescribeActivations = "DescribeActivations" // DescribeActivationsRequest generates a "aws/request.Request" representing the // client's request for the DescribeActivations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeActivations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeActivations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeActivationsRequest method. // req, resp := client.DescribeActivationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) DescribeActivationsRequest(input *DescribeActivationsInput) (req *request.Request, output *DescribeActivationsOutput) { op := &request.Operation{ Name: opDescribeActivations, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &DescribeActivationsInput{} } req = c.newRequest(op, input, output) output = &DescribeActivationsOutput{} req.Data = output return } // DescribeActivations API operation for Amazon Simple Systems Management Service. // // Details about the activation, including: the date and time the activation // was created, the expiration date, the IAM role assigned to the instances // in the activation, and the number of instances activated by this registration. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation DescribeActivations for usage and error information. // // Returned Error Codes: // * InvalidFilter // The filter name is not valid. Verify the you entered the correct name and // try again. // // * InvalidNextToken // The specified token is not valid. // // * InternalServerError // An error occurred on the server side. // func (c *SSM) DescribeActivations(input *DescribeActivationsInput) (*DescribeActivationsOutput, error) { req, out := c.DescribeActivationsRequest(input) err := req.Send() return out, err } // DescribeActivationsPages iterates over the pages of a DescribeActivations operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeActivations method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeActivations operation. // pageNum := 0 // err := client.DescribeActivationsPages(params, // func(page *DescribeActivationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SSM) DescribeActivationsPages(input *DescribeActivationsInput, fn func(p *DescribeActivationsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeActivationsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeActivationsOutput), lastPage) }) } const opDescribeAssociation = "DescribeAssociation" // DescribeAssociationRequest generates a "aws/request.Request" representing the // client's request for the DescribeAssociation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAssociation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAssociation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAssociationRequest method. // req, resp := client.DescribeAssociationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) DescribeAssociationRequest(input *DescribeAssociationInput) (req *request.Request, output *DescribeAssociationOutput) { op := &request.Operation{ Name: opDescribeAssociation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAssociationInput{} } req = c.newRequest(op, input, output) output = &DescribeAssociationOutput{} req.Data = output return } // DescribeAssociation API operation for Amazon Simple Systems Management Service. // // Describes the associations for the specified SSM document or instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation DescribeAssociation for usage and error information. // // Returned Error Codes: // * AssociationDoesNotExist // The specified association does not exist. // // * InternalServerError // An error occurred on the server side. // // * InvalidDocument // The specified document does not exist. // // * InvalidInstanceId // The instance is not in valid state. Valid states are: Running, Pending, Stopped, // Stopping. Invalid states are: Shutting-down and Terminated. // func (c *SSM) DescribeAssociation(input *DescribeAssociationInput) (*DescribeAssociationOutput, error) { req, out := c.DescribeAssociationRequest(input) err := req.Send() return out, err } const opDescribeDocument = "DescribeDocument" // DescribeDocumentRequest generates a "aws/request.Request" representing the // client's request for the DescribeDocument operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDocument for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDocument method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDocumentRequest method. // req, resp := client.DescribeDocumentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) DescribeDocumentRequest(input *DescribeDocumentInput) (req *request.Request, output *DescribeDocumentOutput) { op := &request.Operation{ Name: opDescribeDocument, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeDocumentInput{} } req = c.newRequest(op, input, output) output = &DescribeDocumentOutput{} req.Data = output return } // DescribeDocument API operation for Amazon Simple Systems Management Service. // // Describes the specified SSM document. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation DescribeDocument for usage and error information. // // Returned Error Codes: // * InternalServerError // An error occurred on the server side. // // * InvalidDocument // The specified document does not exist. // func (c *SSM) DescribeDocument(input *DescribeDocumentInput) (*DescribeDocumentOutput, error) { req, out := c.DescribeDocumentRequest(input) err := req.Send() return out, err } const opDescribeDocumentPermission = "DescribeDocumentPermission" // DescribeDocumentPermissionRequest generates a "aws/request.Request" representing the // client's request for the DescribeDocumentPermission operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDocumentPermission for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDocumentPermission method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDocumentPermissionRequest method. // req, resp := client.DescribeDocumentPermissionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) DescribeDocumentPermissionRequest(input *DescribeDocumentPermissionInput) (req *request.Request, output *DescribeDocumentPermissionOutput) { op := &request.Operation{ Name: opDescribeDocumentPermission, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeDocumentPermissionInput{} } req = c.newRequest(op, input, output) output = &DescribeDocumentPermissionOutput{} req.Data = output return } // DescribeDocumentPermission API operation for Amazon Simple Systems Management Service. // // Describes the permissions for an SSM document. If you created the document, // you are the owner. If a document is shared, it can either be shared privately // (by specifying a user’s AWS account ID) or publicly (All). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation DescribeDocumentPermission for usage and error information. // // Returned Error Codes: // * InternalServerError // An error occurred on the server side. // // * InvalidDocument // The specified document does not exist. // // * InvalidPermissionType // The permission type is not supported. Share is the only supported permission // type. // func (c *SSM) DescribeDocumentPermission(input *DescribeDocumentPermissionInput) (*DescribeDocumentPermissionOutput, error) { req, out := c.DescribeDocumentPermissionRequest(input) err := req.Send() return out, err } const opDescribeInstanceInformation = "DescribeInstanceInformation" // DescribeInstanceInformationRequest generates a "aws/request.Request" representing the // client's request for the DescribeInstanceInformation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeInstanceInformation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeInstanceInformation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeInstanceInformationRequest method. // req, resp := client.DescribeInstanceInformationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) DescribeInstanceInformationRequest(input *DescribeInstanceInformationInput) (req *request.Request, output *DescribeInstanceInformationOutput) { op := &request.Operation{ Name: opDescribeInstanceInformation, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &DescribeInstanceInformationInput{} } req = c.newRequest(op, input, output) output = &DescribeInstanceInformationOutput{} req.Data = output return } // DescribeInstanceInformation API operation for Amazon Simple Systems Management Service. // // Describes one or more of your instances. You can use this to get information // about instances like the operating system platform, the SSM agent version // (Linux), status etc. If you specify one or more instance IDs, it returns // information for those instances. If you do not specify instance IDs, it returns // information for all your instances. If you specify an instance ID that is // not valid or an instance that you do not own, you receive an error. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation DescribeInstanceInformation for usage and error information. // // Returned Error Codes: // * InternalServerError // An error occurred on the server side. // // * InvalidInstanceId // The instance is not in valid state. Valid states are: Running, Pending, Stopped, // Stopping. Invalid states are: Shutting-down and Terminated. // // * InvalidNextToken // The specified token is not valid. // // * InvalidInstanceInformationFilterValue // The specified filter value is not valid. // // * InvalidFilterKey // The specified key is not valid. // func (c *SSM) DescribeInstanceInformation(input *DescribeInstanceInformationInput) (*DescribeInstanceInformationOutput, error) { req, out := c.DescribeInstanceInformationRequest(input) err := req.Send() return out, err } // DescribeInstanceInformationPages iterates over the pages of a DescribeInstanceInformation operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeInstanceInformation method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeInstanceInformation operation. // pageNum := 0 // err := client.DescribeInstanceInformationPages(params, // func(page *DescribeInstanceInformationOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SSM) DescribeInstanceInformationPages(input *DescribeInstanceInformationInput, fn func(p *DescribeInstanceInformationOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeInstanceInformationRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeInstanceInformationOutput), lastPage) }) } const opGetDocument = "GetDocument" // GetDocumentRequest generates a "aws/request.Request" representing the // client's request for the GetDocument operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetDocument for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetDocument method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetDocumentRequest method. // req, resp := client.GetDocumentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) GetDocumentRequest(input *GetDocumentInput) (req *request.Request, output *GetDocumentOutput) { op := &request.Operation{ Name: opGetDocument, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetDocumentInput{} } req = c.newRequest(op, input, output) output = &GetDocumentOutput{} req.Data = output return } // GetDocument API operation for Amazon Simple Systems Management Service. // // Gets the contents of the specified SSM document. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation GetDocument for usage and error information. // // Returned Error Codes: // * InternalServerError // An error occurred on the server side. // // * InvalidDocument // The specified document does not exist. // func (c *SSM) GetDocument(input *GetDocumentInput) (*GetDocumentOutput, error) { req, out := c.GetDocumentRequest(input) err := req.Send() return out, err } const opListAssociations = "ListAssociations" // ListAssociationsRequest generates a "aws/request.Request" representing the // client's request for the ListAssociations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListAssociations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListAssociations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListAssociationsRequest method. // req, resp := client.ListAssociationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) ListAssociationsRequest(input *ListAssociationsInput) (req *request.Request, output *ListAssociationsOutput) { op := &request.Operation{ Name: opListAssociations, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &ListAssociationsInput{} } req = c.newRequest(op, input, output) output = &ListAssociationsOutput{} req.Data = output return } // ListAssociations API operation for Amazon Simple Systems Management Service. // // Lists the associations for the specified SSM document or instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation ListAssociations for usage and error information. // // Returned Error Codes: // * InternalServerError // An error occurred on the server side. // // * InvalidNextToken // The specified token is not valid. // func (c *SSM) ListAssociations(input *ListAssociationsInput) (*ListAssociationsOutput, error) { req, out := c.ListAssociationsRequest(input) err := req.Send() return out, err } // ListAssociationsPages iterates over the pages of a ListAssociations operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListAssociations method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListAssociations operation. // pageNum := 0 // err := client.ListAssociationsPages(params, // func(page *ListAssociationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SSM) ListAssociationsPages(input *ListAssociationsInput, fn func(p *ListAssociationsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListAssociationsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListAssociationsOutput), lastPage) }) } const opListCommandInvocations = "ListCommandInvocations" // ListCommandInvocationsRequest generates a "aws/request.Request" representing the // client's request for the ListCommandInvocations operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListCommandInvocations for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListCommandInvocations method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListCommandInvocationsRequest method. // req, resp := client.ListCommandInvocationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) ListCommandInvocationsRequest(input *ListCommandInvocationsInput) (req *request.Request, output *ListCommandInvocationsOutput) { op := &request.Operation{ Name: opListCommandInvocations, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &ListCommandInvocationsInput{} } req = c.newRequest(op, input, output) output = &ListCommandInvocationsOutput{} req.Data = output return } // ListCommandInvocations API operation for Amazon Simple Systems Management Service. // // An invocation is copy of a command sent to a specific instance. A command // can apply to one or more instances. A command invocation applies to one instance. // For example, if a user executes SendCommand against three instances, then // a command invocation is created for each requested instance ID. ListCommandInvocations // provide status about command execution. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation ListCommandInvocations for usage and error information. // // Returned Error Codes: // * InternalServerError // An error occurred on the server side. // // * InvalidCommandId // // * InvalidInstanceId // The instance is not in valid state. Valid states are: Running, Pending, Stopped, // Stopping. Invalid states are: Shutting-down and Terminated. // // * InvalidFilterKey // The specified key is not valid. // // * InvalidNextToken // The specified token is not valid. // func (c *SSM) ListCommandInvocations(input *ListCommandInvocationsInput) (*ListCommandInvocationsOutput, error) { req, out := c.ListCommandInvocationsRequest(input) err := req.Send() return out, err } // ListCommandInvocationsPages iterates over the pages of a ListCommandInvocations operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListCommandInvocations method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListCommandInvocations operation. // pageNum := 0 // err := client.ListCommandInvocationsPages(params, // func(page *ListCommandInvocationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SSM) ListCommandInvocationsPages(input *ListCommandInvocationsInput, fn func(p *ListCommandInvocationsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListCommandInvocationsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListCommandInvocationsOutput), lastPage) }) } const opListCommands = "ListCommands" // ListCommandsRequest generates a "aws/request.Request" representing the // client's request for the ListCommands operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListCommands for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListCommands method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListCommandsRequest method. // req, resp := client.ListCommandsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) ListCommandsRequest(input *ListCommandsInput) (req *request.Request, output *ListCommandsOutput) { op := &request.Operation{ Name: opListCommands, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &ListCommandsInput{} } req = c.newRequest(op, input, output) output = &ListCommandsOutput{} req.Data = output return } // ListCommands API operation for Amazon Simple Systems Management Service. // // Lists the commands requested by users of the AWS account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation ListCommands for usage and error information. // // Returned Error Codes: // * InternalServerError // An error occurred on the server side. // // * InvalidCommandId // // * InvalidInstanceId // The instance is not in valid state. Valid states are: Running, Pending, Stopped, // Stopping. Invalid states are: Shutting-down and Terminated. // // * InvalidFilterKey // The specified key is not valid. // // * InvalidNextToken // The specified token is not valid. // func (c *SSM) ListCommands(input *ListCommandsInput) (*ListCommandsOutput, error) { req, out := c.ListCommandsRequest(input) err := req.Send() return out, err } // ListCommandsPages iterates over the pages of a ListCommands operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListCommands method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListCommands operation. // pageNum := 0 // err := client.ListCommandsPages(params, // func(page *ListCommandsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SSM) ListCommandsPages(input *ListCommandsInput, fn func(p *ListCommandsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListCommandsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListCommandsOutput), lastPage) }) } const opListDocuments = "ListDocuments" // ListDocumentsRequest generates a "aws/request.Request" representing the // client's request for the ListDocuments operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDocuments for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDocuments method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDocumentsRequest method. // req, resp := client.ListDocumentsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) ListDocumentsRequest(input *ListDocumentsInput) (req *request.Request, output *ListDocumentsOutput) { op := &request.Operation{ Name: opListDocuments, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &ListDocumentsInput{} } req = c.newRequest(op, input, output) output = &ListDocumentsOutput{} req.Data = output return } // ListDocuments API operation for Amazon Simple Systems Management Service. // // Describes one or more of your SSM documents. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation ListDocuments for usage and error information. // // Returned Error Codes: // * InternalServerError // An error occurred on the server side. // // * InvalidNextToken // The specified token is not valid. // // * InvalidFilterKey // The specified key is not valid. // func (c *SSM) ListDocuments(input *ListDocumentsInput) (*ListDocumentsOutput, error) { req, out := c.ListDocumentsRequest(input) err := req.Send() return out, err } // ListDocumentsPages iterates over the pages of a ListDocuments operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListDocuments method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListDocuments operation. // pageNum := 0 // err := client.ListDocumentsPages(params, // func(page *ListDocumentsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SSM) ListDocumentsPages(input *ListDocumentsInput, fn func(p *ListDocumentsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListDocumentsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListDocumentsOutput), lastPage) }) } const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTagsForResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTagsForResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTagsForResourceRequest method. // req, resp := client.ListTagsForResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { op := &request.Operation{ Name: opListTagsForResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListTagsForResourceInput{} } req = c.newRequest(op, input, output) output = &ListTagsForResourceOutput{} req.Data = output return } // ListTagsForResource API operation for Amazon Simple Systems Management Service. // // Returns a list of the tags assigned to the specified resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation ListTagsForResource for usage and error information. // // Returned Error Codes: // * InvalidResourceType // The resource type is not valid. If you are attempting to tag an instance, // the instance must be a registered, managed instance. // // * InvalidResourceId // The resource ID is not valid. Verify that you entered the correct ID and // try again. // // * InternalServerError // An error occurred on the server side. // func (c *SSM) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { req, out := c.ListTagsForResourceRequest(input) err := req.Send() return out, err } const opModifyDocumentPermission = "ModifyDocumentPermission" // ModifyDocumentPermissionRequest generates a "aws/request.Request" representing the // client's request for the ModifyDocumentPermission operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyDocumentPermission for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyDocumentPermission method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyDocumentPermissionRequest method. // req, resp := client.ModifyDocumentPermissionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) ModifyDocumentPermissionRequest(input *ModifyDocumentPermissionInput) (req *request.Request, output *ModifyDocumentPermissionOutput) { op := &request.Operation{ Name: opModifyDocumentPermission, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyDocumentPermissionInput{} } req = c.newRequest(op, input, output) output = &ModifyDocumentPermissionOutput{} req.Data = output return } // ModifyDocumentPermission API operation for Amazon Simple Systems Management Service. // // Share a document publicly or privately. If you share a document privately, // you must specify the AWS user account IDs for those people who can use the // document. If you share a document publicly, you must specify All as the account // ID. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation ModifyDocumentPermission for usage and error information. // // Returned Error Codes: // * InternalServerError // An error occurred on the server side. // // * InvalidDocument // The specified document does not exist. // // * InvalidPermissionType // The permission type is not supported. Share is the only supported permission // type. // // * DocumentPermissionLimit // The document cannot be shared with more AWS user accounts. You can share // a document with a maximum of 20 accounts. You can publicly share up to five // documents. If you need to increase this limit, contact AWS Support. // // * DocumentLimitExceeded // You can have at most 200 active SSM documents. // func (c *SSM) ModifyDocumentPermission(input *ModifyDocumentPermissionInput) (*ModifyDocumentPermissionOutput, error) { req, out := c.ModifyDocumentPermissionRequest(input) err := req.Send() return out, err } const opRemoveTagsFromResource = "RemoveTagsFromResource" // RemoveTagsFromResourceRequest generates a "aws/request.Request" representing the // client's request for the RemoveTagsFromResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveTagsFromResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveTagsFromResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveTagsFromResourceRequest method. // req, resp := client.RemoveTagsFromResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) RemoveTagsFromResourceRequest(input *RemoveTagsFromResourceInput) (req *request.Request, output *RemoveTagsFromResourceOutput) { op := &request.Operation{ Name: opRemoveTagsFromResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveTagsFromResourceInput{} } req = c.newRequest(op, input, output) output = &RemoveTagsFromResourceOutput{} req.Data = output return } // RemoveTagsFromResource API operation for Amazon Simple Systems Management Service. // // Removes all tags from the specified resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation RemoveTagsFromResource for usage and error information. // // Returned Error Codes: // * InvalidResourceType // The resource type is not valid. If you are attempting to tag an instance, // the instance must be a registered, managed instance. // // * InvalidResourceId // The resource ID is not valid. Verify that you entered the correct ID and // try again. // // * InternalServerError // An error occurred on the server side. // func (c *SSM) RemoveTagsFromResource(input *RemoveTagsFromResourceInput) (*RemoveTagsFromResourceOutput, error) { req, out := c.RemoveTagsFromResourceRequest(input) err := req.Send() return out, err } const opSendCommand = "SendCommand" // SendCommandRequest generates a "aws/request.Request" representing the // client's request for the SendCommand operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SendCommand for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SendCommand method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SendCommandRequest method. // req, resp := client.SendCommandRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) SendCommandRequest(input *SendCommandInput) (req *request.Request, output *SendCommandOutput) { op := &request.Operation{ Name: opSendCommand, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SendCommandInput{} } req = c.newRequest(op, input, output) output = &SendCommandOutput{} req.Data = output return } // SendCommand API operation for Amazon Simple Systems Management Service. // // Executes commands on one or more remote instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation SendCommand for usage and error information. // // Returned Error Codes: // * DuplicateInstanceId // You cannot specify an instance ID in more than one association. // // * InternalServerError // An error occurred on the server side. // // * InvalidInstanceId // The instance is not in valid state. Valid states are: Running, Pending, Stopped, // Stopping. Invalid states are: Shutting-down and Terminated. // // * InvalidDocument // The specified document does not exist. // // * InvalidOutputFolder // The S3 bucket does not exist. // // * InvalidParameters // You must specify values for all required parameters in the SSM document. // You can only supply values to parameters defined in the SSM document. // // * UnsupportedPlatformType // The document does not support the platform type of the given instance ID(s). // For example, you sent an SSM document for a Windows instance to a Linux instance. // // * MaxDocumentSizeExceeded // The size limit of an SSM document is 64 KB. // // * InvalidRole // The role name can't contain invalid characters. Also verify that you specified // an IAM role for notifications that includes the required trust policy. For // information about configuring the IAM role for SSM notifications, see Configuring // SNS Notifications SSM (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/rc-sns.html) // in the Amazon Elastic Compute Cloud User Guide . // // * InvalidNotificationConfig // One or more configuration items is not valid. Verify that a valid Amazon // Resource Name (ARN) was provided for an Amazon SNS topic. // func (c *SSM) SendCommand(input *SendCommandInput) (*SendCommandOutput, error) { req, out := c.SendCommandRequest(input) err := req.Send() return out, err } const opUpdateAssociationStatus = "UpdateAssociationStatus" // UpdateAssociationStatusRequest generates a "aws/request.Request" representing the // client's request for the UpdateAssociationStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateAssociationStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateAssociationStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateAssociationStatusRequest method. // req, resp := client.UpdateAssociationStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) UpdateAssociationStatusRequest(input *UpdateAssociationStatusInput) (req *request.Request, output *UpdateAssociationStatusOutput) { op := &request.Operation{ Name: opUpdateAssociationStatus, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateAssociationStatusInput{} } req = c.newRequest(op, input, output) output = &UpdateAssociationStatusOutput{} req.Data = output return } // UpdateAssociationStatus API operation for Amazon Simple Systems Management Service. // // Updates the status of the SSM document associated with the specified instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation UpdateAssociationStatus for usage and error information. // // Returned Error Codes: // * InternalServerError // An error occurred on the server side. // // * InvalidInstanceId // The instance is not in valid state. Valid states are: Running, Pending, Stopped, // Stopping. Invalid states are: Shutting-down and Terminated. // // * InvalidDocument // The specified document does not exist. // // * AssociationDoesNotExist // The specified association does not exist. // // * StatusUnchanged // The updated status is the same as the current status. // // * TooManyUpdates // There are concurrent updates for a resource that supports one update at a // time. // func (c *SSM) UpdateAssociationStatus(input *UpdateAssociationStatusInput) (*UpdateAssociationStatusOutput, error) { req, out := c.UpdateAssociationStatusRequest(input) err := req.Send() return out, err } const opUpdateManagedInstanceRole = "UpdateManagedInstanceRole" // UpdateManagedInstanceRoleRequest generates a "aws/request.Request" representing the // client's request for the UpdateManagedInstanceRole operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateManagedInstanceRole for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateManagedInstanceRole method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateManagedInstanceRoleRequest method. // req, resp := client.UpdateManagedInstanceRoleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SSM) UpdateManagedInstanceRoleRequest(input *UpdateManagedInstanceRoleInput) (req *request.Request, output *UpdateManagedInstanceRoleOutput) { op := &request.Operation{ Name: opUpdateManagedInstanceRole, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateManagedInstanceRoleInput{} } req = c.newRequest(op, input, output) output = &UpdateManagedInstanceRoleOutput{} req.Data = output return } // UpdateManagedInstanceRole API operation for Amazon Simple Systems Management Service. // // Assigns or changes an Amazon Identity and Access Management (IAM) role to // the managed instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Systems Management Service's // API operation UpdateManagedInstanceRole for usage and error information. // // Returned Error Codes: // * InvalidInstanceId // The instance is not in valid state. Valid states are: Running, Pending, Stopped, // Stopping. Invalid states are: Shutting-down and Terminated. // // * InternalServerError // An error occurred on the server side. // func (c *SSM) UpdateManagedInstanceRole(input *UpdateManagedInstanceRoleInput) (*UpdateManagedInstanceRoleOutput, error) { req, out := c.UpdateManagedInstanceRoleRequest(input) err := req.Send() return out, err } // An activation registers one or more on-premises servers or virtual machines // (VMs) with AWS so that you can configure those servers or VMs using Run Command. // A server or VM that has been registered with AWS is called a managed instance. type Activation struct { _ struct{} `type:"structure"` // The ID created by SSM when you submitted the activation. ActivationId *string `type:"string"` // The date the activation was created. CreatedDate *time.Time `type:"timestamp" timestampFormat:"unix"` // A name for the managed instance when it is created. DefaultInstanceName *string `type:"string"` // A user defined description of the activation. Description *string `type:"string"` // The date when this activation can no longer be used to register managed instances. ExpirationDate *time.Time `type:"timestamp" timestampFormat:"unix"` // Whether or not the activation is expired. Expired *bool `type:"boolean"` // The Amazon Identity and Access Management (IAM) role to assign to the managed // instance. IamRole *string `type:"string"` // The maximum number of managed instances that can be registered using this // activation. RegistrationLimit *int64 `min:"1" type:"integer"` // The number of managed instances already registered with this activation. RegistrationsCount *int64 `min:"1" type:"integer"` } // String returns the string representation func (s Activation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Activation) GoString() string { return s.String() } type AddTagsToResourceInput struct { _ struct{} `type:"structure"` // The resource ID you want to tag. // // ResourceId is a required field ResourceId *string `type:"string" required:"true"` // Specifies the type of resource you are tagging. // // ResourceType is a required field ResourceType *string `type:"string" required:"true" enum:"ResourceTypeForTagging"` // One or more tags. The value parameter is required, but if you don't want // the tag to have a value, specify the parameter with no value, and we set // the value to an empty string. // // Tags is a required field Tags []*Tag `type:"list" required:"true"` } // String returns the string representation func (s AddTagsToResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsToResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsToResourceInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceType == nil { invalidParams.Add(request.NewErrParamRequired("ResourceType")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddTagsToResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AddTagsToResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToResourceOutput) GoString() string { return s.String() } // Describes an association of an SSM document and an instance. type Association struct { _ struct{} `type:"structure"` // The ID of the instance. InstanceId *string `type:"string"` // The name of the SSM document. Name *string `type:"string"` } // String returns the string representation func (s Association) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Association) GoString() string { return s.String() } // Describes the parameters for a document. type AssociationDescription struct { _ struct{} `type:"structure"` // The date when the association was made. Date *time.Time `type:"timestamp" timestampFormat:"unix"` // The ID of the instance. InstanceId *string `type:"string"` // The name of the SSM document. Name *string `type:"string"` // A description of the parameters for a document. Parameters map[string][]*string `type:"map"` // The association status. Status *AssociationStatus `type:"structure"` } // String returns the string representation func (s AssociationDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociationDescription) GoString() string { return s.String() } // Describes a filter. type AssociationFilter struct { _ struct{} `type:"structure"` // The name of the filter. // // Key is a required field Key *string `locationName:"key" type:"string" required:"true" enum:"AssociationFilterKey"` // The filter value. // // Value is a required field Value *string `locationName:"value" min:"1" type:"string" required:"true"` } // String returns the string representation func (s AssociationFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociationFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssociationFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssociationFilter"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if s.Value != nil && len(*s.Value) < 1 { invalidParams.Add(request.NewErrParamMinLen("Value", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes an association status. type AssociationStatus struct { _ struct{} `type:"structure"` // A user-defined string. AdditionalInfo *string `type:"string"` // The date when the status changed. // // Date is a required field Date *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` // The reason for the status. // // Message is a required field Message *string `type:"string" required:"true"` // The status. // // Name is a required field Name *string `type:"string" required:"true" enum:"AssociationStatusName"` } // String returns the string representation func (s AssociationStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociationStatus) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssociationStatus) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssociationStatus"} if s.Date == nil { invalidParams.Add(request.NewErrParamRequired("Date")) } if s.Message == nil { invalidParams.Add(request.NewErrParamRequired("Message")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CancelCommandInput struct { _ struct{} `type:"structure"` // The ID of the command you want to cancel. // // CommandId is a required field CommandId *string `min:"36" type:"string" required:"true"` // (Optional) A list of instance IDs on which you want to cancel the command. // If not provided, the command is canceled on every instance on which it was // requested. InstanceIds []*string `min:"1" type:"list"` } // String returns the string representation func (s CancelCommandInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelCommandInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CancelCommandInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelCommandInput"} if s.CommandId == nil { invalidParams.Add(request.NewErrParamRequired("CommandId")) } if s.CommandId != nil && len(*s.CommandId) < 36 { invalidParams.Add(request.NewErrParamMinLen("CommandId", 36)) } if s.InstanceIds != nil && len(s.InstanceIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceIds", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Whether or not the command was successfully canceled. There is no guarantee // that a request can be canceled. type CancelCommandOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CancelCommandOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelCommandOutput) GoString() string { return s.String() } // Describes a command request. type Command struct { _ struct{} `type:"structure"` // A unique identifier for this command. CommandId *string `min:"36" type:"string"` // User-specified information about the command, such as a brief description // of what the command should do. Comment *string `type:"string"` // The name of the SSM document requested for execution. DocumentName *string `type:"string"` // If this time is reached and the command has not already started executing, // it will not execute. Calculated based on the ExpiresAfter user input provided // as part of the SendCommand API. ExpiresAfter *time.Time `type:"timestamp" timestampFormat:"unix"` // The instance IDs against which this command was requested. InstanceIds []*string `min:"1" type:"list"` // Configurations for sending notifications about command status changes. NotificationConfig *NotificationConfig `type:"structure"` // The S3 bucket where the responses to the command executions should be stored. // This was requested when issuing the command. OutputS3BucketName *string `min:"3" type:"string"` // The S3 directory path inside the bucket where the responses to the command // executions should be stored. This was requested when issuing the command. OutputS3KeyPrefix *string `type:"string"` // The parameter values to be inserted in the SSM document when executing the // command. Parameters map[string][]*string `type:"map"` // The date and time the command was requested. RequestedDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The IAM service role that SSM uses to act on your behalf when sending notifications // about command status changes. ServiceRole *string `type:"string"` // The status of the command. Status *string `type:"string" enum:"CommandStatus"` } // String returns the string representation func (s Command) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Command) GoString() string { return s.String() } // Describes a command filter. type CommandFilter struct { _ struct{} `type:"structure"` // The name of the filter. For example, requested date and time. // // Key is a required field Key *string `locationName:"key" type:"string" required:"true" enum:"CommandFilterKey"` // The filter value. For example: June 30, 2015. // // Value is a required field Value *string `locationName:"value" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CommandFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CommandFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CommandFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CommandFilter"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if s.Value != nil && len(*s.Value) < 1 { invalidParams.Add(request.NewErrParamMinLen("Value", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // An invocation is copy of a command sent to a specific instance. A command // can apply to one or more instances. A command invocation applies to one instance. // For example, if a user executes SendCommand against three instances, then // a command invocation is created for each requested instance ID. A command // invocation returns status and detail information about a command you executed. type CommandInvocation struct { _ struct{} `type:"structure"` // The command against which this invocation was requested. CommandId *string `min:"36" type:"string"` CommandPlugins []*CommandPlugin `type:"list"` // User-specified information about the command, such as a brief description // of what the command should do. Comment *string `type:"string"` // The document name that was requested for execution. DocumentName *string `type:"string"` // The instance ID in which this invocation was requested. InstanceId *string `type:"string"` // Configurations for sending notifications about command status changes on // a per instance basis. NotificationConfig *NotificationConfig `type:"structure"` // The time and date the request was sent to this instance. RequestedDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The IAM service role that SSM uses to act on your behalf when sending notifications // about command status changes on a per instance basis. ServiceRole *string `type:"string"` // Whether or not the invocation succeeded, failed, or is pending. Status *string `type:"string" enum:"CommandInvocationStatus"` // Gets the trace output sent by the agent. TraceOutput *string `type:"string"` } // String returns the string representation func (s CommandInvocation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CommandInvocation) GoString() string { return s.String() } // Describes plugin details. type CommandPlugin struct { _ struct{} `type:"structure"` // The name of the plugin. Must be one of the following: aws:updateAgent, aws:domainjoin, // aws:applications, aws:runPowerShellScript, aws:psmodule, aws:cloudWatch, // aws:runShellScript, or aws:updateSSMAgent. Name *string `min:"4" type:"string"` // Output of the plugin execution. Output *string `type:"string"` // The S3 bucket where the responses to the command executions should be stored. // This was requested when issuing the command. OutputS3BucketName *string `min:"3" type:"string"` // The S3 directory path inside the bucket where the responses to the command // executions should be stored. This was requested when issuing the command. OutputS3KeyPrefix *string `type:"string"` // A numeric response code generated after executing the plugin. ResponseCode *int64 `type:"integer"` // The time the plugin stopped executing. Could stop prematurely if, for example, // a cancel command was sent. ResponseFinishDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The time the plugin started executing. ResponseStartDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The status of this plugin. You can execute a document with multiple plugins. Status *string `type:"string" enum:"CommandPluginStatus"` } // String returns the string representation func (s CommandPlugin) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CommandPlugin) GoString() string { return s.String() } type CreateActivationInput struct { _ struct{} `type:"structure"` // The name of the registered, managed instance as it will appear in the Amazon // EC2 console or when you use the AWS command line tools to list EC2 resources. DefaultInstanceName *string `type:"string"` // A user-defined description of the resource that you want to register with // Amazon EC2. Description *string `type:"string"` // The date by which this activation request should expire. The default value // is 24 hours. ExpirationDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The Amazon Identity and Access Management (IAM) role that you want to assign // to the managed instance. // // IamRole is a required field IamRole *string `type:"string" required:"true"` // Specify the maximum number of managed instances you want to register. The // default value is 1 instance. RegistrationLimit *int64 `min:"1" type:"integer"` } // String returns the string representation func (s CreateActivationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateActivationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateActivationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateActivationInput"} if s.IamRole == nil { invalidParams.Add(request.NewErrParamRequired("IamRole")) } if s.RegistrationLimit != nil && *s.RegistrationLimit < 1 { invalidParams.Add(request.NewErrParamMinValue("RegistrationLimit", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateActivationOutput struct { _ struct{} `type:"structure"` // The code the system generates when it processes the activation. The activation // code functions like a password to validate the activation ID. ActivationCode *string `min:"20" type:"string"` // The ID number generated by the system when it processed the activation. The // activation ID functions like a user name. ActivationId *string `type:"string"` } // String returns the string representation func (s CreateActivationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateActivationOutput) GoString() string { return s.String() } type CreateAssociationBatchInput struct { _ struct{} `type:"structure"` // One or more associations. // // Entries is a required field Entries []*CreateAssociationBatchRequestEntry `locationNameList:"entries" type:"list" required:"true"` } // String returns the string representation func (s CreateAssociationBatchInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAssociationBatchInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateAssociationBatchInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateAssociationBatchInput"} if s.Entries == nil { invalidParams.Add(request.NewErrParamRequired("Entries")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateAssociationBatchOutput struct { _ struct{} `type:"structure"` // Information about the associations that failed. Failed []*FailedCreateAssociation `locationNameList:"FailedCreateAssociationEntry" type:"list"` // Information about the associations that succeeded. Successful []*AssociationDescription `locationNameList:"AssociationDescription" type:"list"` } // String returns the string representation func (s CreateAssociationBatchOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAssociationBatchOutput) GoString() string { return s.String() } // Describes the association of an SSM document and an instance. type CreateAssociationBatchRequestEntry struct { _ struct{} `type:"structure"` // The ID of the instance. InstanceId *string `type:"string"` // The name of the configuration document. Name *string `type:"string"` // A description of the parameters for a document. Parameters map[string][]*string `type:"map"` } // String returns the string representation func (s CreateAssociationBatchRequestEntry) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAssociationBatchRequestEntry) GoString() string { return s.String() } type CreateAssociationInput struct { _ struct{} `type:"structure"` // The instance ID. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` // The name of the SSM document. // // Name is a required field Name *string `type:"string" required:"true"` // The parameters for the documents runtime configuration. Parameters map[string][]*string `type:"map"` } // String returns the string representation func (s CreateAssociationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAssociationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateAssociationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateAssociationInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateAssociationOutput struct { _ struct{} `type:"structure"` // Information about the association. AssociationDescription *AssociationDescription `type:"structure"` } // String returns the string representation func (s CreateAssociationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateAssociationOutput) GoString() string { return s.String() } type CreateDocumentInput struct { _ struct{} `type:"structure"` // A valid JSON string. // // Content is a required field Content *string `min:"1" type:"string" required:"true"` // A name for the SSM document. // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s CreateDocumentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDocumentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDocumentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDocumentInput"} if s.Content == nil { invalidParams.Add(request.NewErrParamRequired("Content")) } if s.Content != nil && len(*s.Content) < 1 { invalidParams.Add(request.NewErrParamMinLen("Content", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateDocumentOutput struct { _ struct{} `type:"structure"` // Information about the SSM document. DocumentDescription *DocumentDescription `type:"structure"` } // String returns the string representation func (s CreateDocumentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateDocumentOutput) GoString() string { return s.String() } type DeleteActivationInput struct { _ struct{} `type:"structure"` // The ID of the activation that you want to delete. // // ActivationId is a required field ActivationId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteActivationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteActivationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteActivationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteActivationInput"} if s.ActivationId == nil { invalidParams.Add(request.NewErrParamRequired("ActivationId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteActivationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteActivationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteActivationOutput) GoString() string { return s.String() } type DeleteAssociationInput struct { _ struct{} `type:"structure"` // The ID of the instance. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` // The name of the SSM document. // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteAssociationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAssociationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteAssociationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteAssociationInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteAssociationOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteAssociationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteAssociationOutput) GoString() string { return s.String() } type DeleteDocumentInput struct { _ struct{} `type:"structure"` // The name of the SSM document. // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteDocumentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDocumentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDocumentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDocumentInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteDocumentOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteDocumentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteDocumentOutput) GoString() string { return s.String() } type DeregisterManagedInstanceInput struct { _ struct{} `type:"structure"` // The ID assigned to the managed instance when you registered it using the // activation process. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` } // String returns the string representation func (s DeregisterManagedInstanceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterManagedInstanceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeregisterManagedInstanceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeregisterManagedInstanceInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeregisterManagedInstanceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeregisterManagedInstanceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeregisterManagedInstanceOutput) GoString() string { return s.String() } // Filter for the DescribeActivation API. type DescribeActivationsFilter struct { _ struct{} `type:"structure"` // The name of the filter. FilterKey *string `type:"string" enum:"DescribeActivationsFilterKeys"` // The filter values. FilterValues []*string `type:"list"` } // String returns the string representation func (s DescribeActivationsFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeActivationsFilter) GoString() string { return s.String() } type DescribeActivationsInput struct { _ struct{} `type:"structure"` // A filter to view information about your activations. Filters []*DescribeActivationsFilter `type:"list"` // The maximum number of items to return for this call. The call also returns // a token that you can specify in a subsequent call to get the next set of // results. MaxResults *int64 `min:"1" type:"integer"` // A token to start the list. Use this token to get the next set of results. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeActivationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeActivationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeActivationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeActivationsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeActivationsOutput struct { _ struct{} `type:"structure"` // A list of activations for your AWS account. ActivationList []*Activation `type:"list"` // The token for the next set of items to return. Use this token to get the // next set of results. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeActivationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeActivationsOutput) GoString() string { return s.String() } type DescribeAssociationInput struct { _ struct{} `type:"structure"` // The instance ID. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` // The name of the SSM document. // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeAssociationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAssociationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeAssociationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeAssociationInput"} if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeAssociationOutput struct { _ struct{} `type:"structure"` // Information about the association. AssociationDescription *AssociationDescription `type:"structure"` } // String returns the string representation func (s DescribeAssociationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAssociationOutput) GoString() string { return s.String() } type DescribeDocumentInput struct { _ struct{} `type:"structure"` // The name of the SSM document. // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s DescribeDocumentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDocumentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDocumentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDocumentInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeDocumentOutput struct { _ struct{} `type:"structure"` // Information about the SSM document. Document *DocumentDescription `type:"structure"` } // String returns the string representation func (s DescribeDocumentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDocumentOutput) GoString() string { return s.String() } type DescribeDocumentPermissionInput struct { _ struct{} `type:"structure"` // The name of the document for which you are the owner. // // Name is a required field Name *string `type:"string" required:"true"` // The permission type for the document. The permission type can be Share. // // PermissionType is a required field PermissionType *string `type:"string" required:"true" enum:"DocumentPermissionType"` } // String returns the string representation func (s DescribeDocumentPermissionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDocumentPermissionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDocumentPermissionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDocumentPermissionInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.PermissionType == nil { invalidParams.Add(request.NewErrParamRequired("PermissionType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeDocumentPermissionOutput struct { _ struct{} `type:"structure"` // The account IDs that have permission to use this document. The ID can be // either an AWS account or All. AccountIds []*string `locationNameList:"AccountId" type:"list"` } // String returns the string representation func (s DescribeDocumentPermissionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDocumentPermissionOutput) GoString() string { return s.String() } type DescribeInstanceInformationInput struct { _ struct{} `type:"structure"` // One or more filters. Use a filter to return a more specific list of instances. InstanceInformationFilterList []*InstanceInformationFilter `locationNameList:"InstanceInformationFilter" min:"1" type:"list"` // The maximum number of items to return for this call. The call also returns // a token that you can specify in a subsequent call to get the next set of // results. MaxResults *int64 `min:"5" type:"integer"` // The token for the next set of items to return. (You received this token from // a previous call.) NextToken *string `type:"string"` } // String returns the string representation func (s DescribeInstanceInformationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInstanceInformationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeInstanceInformationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeInstanceInformationInput"} if s.InstanceInformationFilterList != nil && len(s.InstanceInformationFilterList) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceInformationFilterList", 1)) } if s.MaxResults != nil && *s.MaxResults < 5 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 5)) } if s.InstanceInformationFilterList != nil { for i, v := range s.InstanceInformationFilterList { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceInformationFilterList", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeInstanceInformationOutput struct { _ struct{} `type:"structure"` // The instance information list. InstanceInformationList []*InstanceInformation `locationNameList:"InstanceInformation" type:"list"` // The token to use when requesting the next set of items. If there are no additional // items to return, the string is empty. NextToken *string `type:"string"` } // String returns the string representation func (s DescribeInstanceInformationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeInstanceInformationOutput) GoString() string { return s.String() } // Describes an SSM document. type DocumentDescription struct { _ struct{} `type:"structure"` // The date when the SSM document was created. CreatedDate *time.Time `type:"timestamp" timestampFormat:"unix"` // A description of the document. Description *string `type:"string"` // The Sha256 or Sha1 hash created by the system when the document was created. // // Sha1 hashes have been deprecated. Hash *string `type:"string"` // Sha256 or Sha1. // // Sha1 hashes have been deprecated. HashType *string `type:"string" enum:"DocumentHashType"` // The name of the SSM document. Name *string `type:"string"` // The AWS user account of the person who created the document. Owner *string `type:"string"` // A description of the parameters for a document. Parameters []*DocumentParameter `locationNameList:"DocumentParameter" type:"list"` // The list of OS platforms compatible with this SSM document. PlatformTypes []*string `locationNameList:"PlatformType" type:"list"` // The SHA1 hash of the document, which you can use for verification purposes. Sha1 *string `type:"string"` // The status of the SSM document. Status *string `type:"string" enum:"DocumentStatus"` } // String returns the string representation func (s DocumentDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DocumentDescription) GoString() string { return s.String() } // Describes a filter. type DocumentFilter struct { _ struct{} `type:"structure"` // The name of the filter. // // Key is a required field Key *string `locationName:"key" type:"string" required:"true" enum:"DocumentFilterKey"` // The value of the filter. // // Value is a required field Value *string `locationName:"value" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DocumentFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DocumentFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DocumentFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DocumentFilter"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if s.Value != nil && len(*s.Value) < 1 { invalidParams.Add(request.NewErrParamMinLen("Value", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes the name of an SSM document. type DocumentIdentifier struct { _ struct{} `type:"structure"` // The name of the SSM document. Name *string `type:"string"` // The AWS user account of the person who created the document. Owner *string `type:"string"` // The operating system platform. PlatformTypes []*string `locationNameList:"PlatformType" type:"list"` } // String returns the string representation func (s DocumentIdentifier) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DocumentIdentifier) GoString() string { return s.String() } // Parameters specified in the SSM document that execute on the server when // the command is run. type DocumentParameter struct { _ struct{} `type:"structure"` // If specified, the default values for the parameters. Parameters without a // default value are required. Parameters with a default value are optional. DefaultValue *string `type:"string"` // A description of what the parameter does, how to use it, the default value, // and whether or not the parameter is optional. Description *string `type:"string"` // The name of the parameter. Name *string `type:"string"` // The type of parameter. The type can be either “String” or “StringList”. Type *string `type:"string" enum:"DocumentParameterType"` } // String returns the string representation func (s DocumentParameter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DocumentParameter) GoString() string { return s.String() } // Describes a failed association. type FailedCreateAssociation struct { _ struct{} `type:"structure"` // The association. Entry *CreateAssociationBatchRequestEntry `type:"structure"` // The source of the failure. Fault *string `type:"string" enum:"Fault"` // A description of the failure. Message *string `type:"string"` } // String returns the string representation func (s FailedCreateAssociation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FailedCreateAssociation) GoString() string { return s.String() } type GetDocumentInput struct { _ struct{} `type:"structure"` // The name of the SSM document. // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s GetDocumentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDocumentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetDocumentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetDocumentInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetDocumentOutput struct { _ struct{} `type:"structure"` // The contents of the SSM document. Content *string `min:"1" type:"string"` // The name of the SSM document. Name *string `type:"string"` } // String returns the string representation func (s GetDocumentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetDocumentOutput) GoString() string { return s.String() } // Describes a filter for a specific list of instances. type InstanceInformation struct { _ struct{} `type:"structure"` // The activation ID created by SSM when the server or VM was registered. ActivationId *string `type:"string"` // The version of the SSM agent running on your Linux instance. AgentVersion *string `type:"string"` // The fully qualified host name of the managed instance. ComputerName *string `min:"1" type:"string"` // The IP address of the managed instance. IPAddress *string `min:"1" type:"string"` // The Amazon Identity and Access Management (IAM) role assigned to EC2 instances // or managed instances. IamRole *string `type:"string"` // The instance ID. InstanceId *string `type:"string"` // Indicates whether latest version of the SSM agent is running on your instance. IsLatestVersion *bool `type:"boolean"` // The date and time when agent last pinged SSM service. LastPingDateTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The name of the managed instance. Name *string `type:"string"` // Connection status of the SSM agent. PingStatus *string `type:"string" enum:"PingStatus"` // The name of the operating system platform running on your instance. PlatformName *string `type:"string"` // The operating system platform type. PlatformType *string `type:"string" enum:"PlatformType"` // The version of the OS platform running on your instance. PlatformVersion *string `type:"string"` // The date the server or VM was registered with AWS as a managed instance. RegistrationDate *time.Time `type:"timestamp" timestampFormat:"unix"` // The type of instance. Instances are either EC2 instances or managed instances. ResourceType *string `type:"string" enum:"ResourceType"` } // String returns the string representation func (s InstanceInformation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceInformation) GoString() string { return s.String() } // Describes a filter for a specific list of instances. type InstanceInformationFilter struct { _ struct{} `type:"structure"` // The name of the filter. // // Key is a required field Key *string `locationName:"key" type:"string" required:"true" enum:"InstanceInformationFilterKey"` // The filter values. // // ValueSet is a required field ValueSet []*string `locationName:"valueSet" locationNameList:"InstanceInformationFilterValue" min:"1" type:"list" required:"true"` } // String returns the string representation func (s InstanceInformationFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InstanceInformationFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InstanceInformationFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InstanceInformationFilter"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.ValueSet == nil { invalidParams.Add(request.NewErrParamRequired("ValueSet")) } if s.ValueSet != nil && len(s.ValueSet) < 1 { invalidParams.Add(request.NewErrParamMinLen("ValueSet", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListAssociationsInput struct { _ struct{} `type:"structure"` // One or more filters. Use a filter to return a more specific list of results. // // AssociationFilterList is a required field AssociationFilterList []*AssociationFilter `locationNameList:"AssociationFilter" min:"1" type:"list" required:"true"` // The maximum number of items to return for this call. The call also returns // a token that you can specify in a subsequent call to get the next set of // results. MaxResults *int64 `min:"1" type:"integer"` // The token for the next set of items to return. (You received this token from // a previous call.) NextToken *string `type:"string"` } // String returns the string representation func (s ListAssociationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAssociationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListAssociationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListAssociationsInput"} if s.AssociationFilterList == nil { invalidParams.Add(request.NewErrParamRequired("AssociationFilterList")) } if s.AssociationFilterList != nil && len(s.AssociationFilterList) < 1 { invalidParams.Add(request.NewErrParamMinLen("AssociationFilterList", 1)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.AssociationFilterList != nil { for i, v := range s.AssociationFilterList { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AssociationFilterList", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListAssociationsOutput struct { _ struct{} `type:"structure"` // The associations. Associations []*Association `locationNameList:"Association" type:"list"` // The token to use when requesting the next set of items. If there are no additional // items to return, the string is empty. NextToken *string `type:"string"` } // String returns the string representation func (s ListAssociationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListAssociationsOutput) GoString() string { return s.String() } type ListCommandInvocationsInput struct { _ struct{} `type:"structure"` // (Optional) The invocations for a specific command ID. CommandId *string `min:"36" type:"string"` // (Optional) If set this returns the response of the command executions and // any command output. By default this is set to False. Details *bool `type:"boolean"` // (Optional) One or more filters. Use a filter to return a more specific list // of results. Filters []*CommandFilter `min:"1" type:"list"` // (Optional) The command execution details for a specific instance ID. InstanceId *string `type:"string"` // (Optional) The maximum number of items to return for this call. The call // also returns a token that you can specify in a subsequent call to get the // next set of results. MaxResults *int64 `min:"1" type:"integer"` // (Optional) The token for the next set of items to return. (You received this // token from a previous call.) NextToken *string `type:"string"` } // String returns the string representation func (s ListCommandInvocationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListCommandInvocationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListCommandInvocationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListCommandInvocationsInput"} if s.CommandId != nil && len(*s.CommandId) < 36 { invalidParams.Add(request.NewErrParamMinLen("CommandId", 36)) } if s.Filters != nil && len(s.Filters) < 1 { invalidParams.Add(request.NewErrParamMinLen("Filters", 1)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListCommandInvocationsOutput struct { _ struct{} `type:"structure"` // (Optional) A list of all invocations. CommandInvocations []*CommandInvocation `type:"list"` // (Optional) The token for the next set of items to return. (You received this // token from a previous call.) NextToken *string `type:"string"` } // String returns the string representation func (s ListCommandInvocationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListCommandInvocationsOutput) GoString() string { return s.String() } type ListCommandsInput struct { _ struct{} `type:"structure"` // (Optional) If provided, lists only the specified command. CommandId *string `min:"36" type:"string"` // (Optional) One or more filters. Use a filter to return a more specific list // of results. Filters []*CommandFilter `min:"1" type:"list"` // (Optional) Lists commands issued against this instance ID. InstanceId *string `type:"string"` // (Optional) The maximum number of items to return for this call. The call // also returns a token that you can specify in a subsequent call to get the // next set of results. MaxResults *int64 `min:"1" type:"integer"` // (Optional) The token for the next set of items to return. (You received this // token from a previous call.) NextToken *string `type:"string"` } // String returns the string representation func (s ListCommandsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListCommandsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListCommandsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListCommandsInput"} if s.CommandId != nil && len(*s.CommandId) < 36 { invalidParams.Add(request.NewErrParamMinLen("CommandId", 36)) } if s.Filters != nil && len(s.Filters) < 1 { invalidParams.Add(request.NewErrParamMinLen("Filters", 1)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.Filters != nil { for i, v := range s.Filters { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListCommandsOutput struct { _ struct{} `type:"structure"` // (Optional) The list of commands requested by the user. Commands []*Command `type:"list"` // (Optional) The token for the next set of items to return. (You received this // token from a previous call.) NextToken *string `type:"string"` } // String returns the string representation func (s ListCommandsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListCommandsOutput) GoString() string { return s.String() } type ListDocumentsInput struct { _ struct{} `type:"structure"` // One or more filters. Use a filter to return a more specific list of results. DocumentFilterList []*DocumentFilter `locationNameList:"DocumentFilter" min:"1" type:"list"` // The maximum number of items to return for this call. The call also returns // a token that you can specify in a subsequent call to get the next set of // results. MaxResults *int64 `min:"1" type:"integer"` // The token for the next set of items to return. (You received this token from // a previous call.) NextToken *string `type:"string"` } // String returns the string representation func (s ListDocumentsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDocumentsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListDocumentsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListDocumentsInput"} if s.DocumentFilterList != nil && len(s.DocumentFilterList) < 1 { invalidParams.Add(request.NewErrParamMinLen("DocumentFilterList", 1)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.DocumentFilterList != nil { for i, v := range s.DocumentFilterList { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DocumentFilterList", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListDocumentsOutput struct { _ struct{} `type:"structure"` // The names of the SSM documents. DocumentIdentifiers []*DocumentIdentifier `locationNameList:"DocumentIdentifier" type:"list"` // The token to use when requesting the next set of items. If there are no additional // items to return, the string is empty. NextToken *string `type:"string"` } // String returns the string representation func (s ListDocumentsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDocumentsOutput) GoString() string { return s.String() } type ListTagsForResourceInput struct { _ struct{} `type:"structure"` // The resource ID for which you want to see a list of tags. // // ResourceId is a required field ResourceId *string `type:"string" required:"true"` // Returns a list of tags for a specific resource type. // // ResourceType is a required field ResourceType *string `type:"string" required:"true" enum:"ResourceTypeForTagging"` } // String returns the string representation func (s ListTagsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsForResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceType == nil { invalidParams.Add(request.NewErrParamRequired("ResourceType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListTagsForResourceOutput struct { _ struct{} `type:"structure"` // A list of tags. TagList []*Tag `type:"list"` } // String returns the string representation func (s ListTagsForResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceOutput) GoString() string { return s.String() } type ModifyDocumentPermissionInput struct { _ struct{} `type:"structure"` // The AWS user accounts that should have access to the document. The account // IDs can either be a group of account IDs or All. AccountIdsToAdd []*string `locationNameList:"AccountId" type:"list"` // The AWS user accounts that should no longer have access to the document. // The AWS user account can either be a group of account IDs or All. This action // has a higher priority than AccountIdsToAdd. If you specify an account ID // to add and the same ID to remove, the system removes access to the document. AccountIdsToRemove []*string `locationNameList:"AccountId" type:"list"` // The name of the document that you want to share. // // Name is a required field Name *string `type:"string" required:"true"` // The permission type for the document. The permission type can be Share. // // PermissionType is a required field PermissionType *string `type:"string" required:"true" enum:"DocumentPermissionType"` } // String returns the string representation func (s ModifyDocumentPermissionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyDocumentPermissionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyDocumentPermissionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyDocumentPermissionInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.PermissionType == nil { invalidParams.Add(request.NewErrParamRequired("PermissionType")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyDocumentPermissionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ModifyDocumentPermissionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyDocumentPermissionOutput) GoString() string { return s.String() } // Configurations for sending notifications. type NotificationConfig struct { _ struct{} `type:"structure"` // An Amazon Resource Name (ARN) for a Simple Notification Service (SNS) topic. // SSM pushes notifications about command status changes to this topic. NotificationArn *string `type:"string"` // The different events for which you can receive notifications. These events // include the following: All (events), InProgress, Success, TimedOut, Cancelled, // Failed. To learn more about these events, see Monitoring Commands (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitor-commands.html) // in the Amazon Elastic Compute Cloud User Guide . NotificationEvents []*string `type:"list"` // Command: Receive notification when the status of a command changes. Invocation: // For commands sent to multiple instances, receive notification on a per-instance // basis when the status of a command changes. NotificationType *string `type:"string" enum:"NotificationType"` } // String returns the string representation func (s NotificationConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NotificationConfig) GoString() string { return s.String() } type RemoveTagsFromResourceInput struct { _ struct{} `type:"structure"` // The resource ID for which you want to remove tags. // // ResourceId is a required field ResourceId *string `type:"string" required:"true"` // The type of resource of which you want to remove a tag. // // ResourceType is a required field ResourceType *string `type:"string" required:"true" enum:"ResourceTypeForTagging"` // Tag keys that you want to remove from the specified resource. // // TagKeys is a required field TagKeys []*string `type:"list" required:"true"` } // String returns the string representation func (s RemoveTagsFromResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTagsFromResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTagsFromResourceInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceType == nil { invalidParams.Add(request.NewErrParamRequired("ResourceType")) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RemoveTagsFromResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RemoveTagsFromResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromResourceOutput) GoString() string { return s.String() } type SendCommandInput struct { _ struct{} `type:"structure"` // User-specified information about the command, such as a brief description // of what the command should do. Comment *string `type:"string"` // The Sha256 or Sha1 hash created by the system when the document was created. // // Sha1 hashes have been deprecated. DocumentHash *string `type:"string"` // Sha256 or Sha1. // // Sha1 hashes have been deprecated. DocumentHashType *string `type:"string" enum:"DocumentHashType"` // Required. The name of the SSM document to execute. This can be an SSM public // document or a custom document. // // DocumentName is a required field DocumentName *string `type:"string" required:"true"` // Required. The instance IDs where the command should execute. You can specify // a maximum of 50 IDs. // // InstanceIds is a required field InstanceIds []*string `min:"1" type:"list" required:"true"` // Configurations for sending notifications. NotificationConfig *NotificationConfig `type:"structure"` // The name of the S3 bucket where command execution responses should be stored. OutputS3BucketName *string `min:"3" type:"string"` // The directory structure within the S3 bucket where the responses should be // stored. OutputS3KeyPrefix *string `type:"string"` // The required and optional parameters specified in the SSM document being // executed. Parameters map[string][]*string `type:"map"` // The IAM role that SSM uses to send notifications. ServiceRoleArn *string `type:"string"` // If this time is reached and the command has not already started executing, // it will not execute. TimeoutSeconds *int64 `min:"30" type:"integer"` } // String returns the string representation func (s SendCommandInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SendCommandInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SendCommandInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SendCommandInput"} if s.DocumentName == nil { invalidParams.Add(request.NewErrParamRequired("DocumentName")) } if s.InstanceIds == nil { invalidParams.Add(request.NewErrParamRequired("InstanceIds")) } if s.InstanceIds != nil && len(s.InstanceIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceIds", 1)) } if s.OutputS3BucketName != nil && len(*s.OutputS3BucketName) < 3 { invalidParams.Add(request.NewErrParamMinLen("OutputS3BucketName", 3)) } if s.TimeoutSeconds != nil && *s.TimeoutSeconds < 30 { invalidParams.Add(request.NewErrParamMinValue("TimeoutSeconds", 30)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SendCommandOutput struct { _ struct{} `type:"structure"` // The request as it was received by SSM. Also provides the command ID which // can be used future references to this request. Command *Command `type:"structure"` } // String returns the string representation func (s SendCommandOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SendCommandOutput) GoString() string { return s.String() } // Metadata that you assign to your managed instances. Tags enable you to categorize // your managed instances in different ways, for example, by purpose, owner, // or environment. type Tag struct { _ struct{} `type:"structure"` // The name of the tag. // // Key is a required field Key *string `min:"1" type:"string" required:"true"` // The value of the tag. // // Value is a required field Value *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if s.Value != nil && len(*s.Value) < 1 { invalidParams.Add(request.NewErrParamMinLen("Value", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateAssociationStatusInput struct { _ struct{} `type:"structure"` // The association status. // // AssociationStatus is a required field AssociationStatus *AssociationStatus `type:"structure" required:"true"` // The ID of the instance. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` // The name of the SSM document. // // Name is a required field Name *string `type:"string" required:"true"` } // String returns the string representation func (s UpdateAssociationStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAssociationStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateAssociationStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateAssociationStatusInput"} if s.AssociationStatus == nil { invalidParams.Add(request.NewErrParamRequired("AssociationStatus")) } if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.AssociationStatus != nil { if err := s.AssociationStatus.Validate(); err != nil { invalidParams.AddNested("AssociationStatus", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateAssociationStatusOutput struct { _ struct{} `type:"structure"` // Information about the association. AssociationDescription *AssociationDescription `type:"structure"` } // String returns the string representation func (s UpdateAssociationStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateAssociationStatusOutput) GoString() string { return s.String() } type UpdateManagedInstanceRoleInput struct { _ struct{} `type:"structure"` // The IAM role you want to assign or change. // // IamRole is a required field IamRole *string `type:"string" required:"true"` // The ID of the managed instance where you want to update the role. // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` } // String returns the string representation func (s UpdateManagedInstanceRoleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateManagedInstanceRoleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateManagedInstanceRoleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateManagedInstanceRoleInput"} if s.IamRole == nil { invalidParams.Add(request.NewErrParamRequired("IamRole")) } if s.InstanceId == nil { invalidParams.Add(request.NewErrParamRequired("InstanceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateManagedInstanceRoleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateManagedInstanceRoleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateManagedInstanceRoleOutput) GoString() string { return s.String() } const ( // AssociationFilterKeyInstanceId is a AssociationFilterKey enum value AssociationFilterKeyInstanceId = "InstanceId" // AssociationFilterKeyName is a AssociationFilterKey enum value AssociationFilterKeyName = "Name" ) const ( // AssociationStatusNamePending is a AssociationStatusName enum value AssociationStatusNamePending = "Pending" // AssociationStatusNameSuccess is a AssociationStatusName enum value AssociationStatusNameSuccess = "Success" // AssociationStatusNameFailed is a AssociationStatusName enum value AssociationStatusNameFailed = "Failed" ) const ( // CommandFilterKeyInvokedAfter is a CommandFilterKey enum value CommandFilterKeyInvokedAfter = "InvokedAfter" // CommandFilterKeyInvokedBefore is a CommandFilterKey enum value CommandFilterKeyInvokedBefore = "InvokedBefore" // CommandFilterKeyStatus is a CommandFilterKey enum value CommandFilterKeyStatus = "Status" ) const ( // CommandInvocationStatusPending is a CommandInvocationStatus enum value CommandInvocationStatusPending = "Pending" // CommandInvocationStatusInProgress is a CommandInvocationStatus enum value CommandInvocationStatusInProgress = "InProgress" // CommandInvocationStatusCancelling is a CommandInvocationStatus enum value CommandInvocationStatusCancelling = "Cancelling" // CommandInvocationStatusSuccess is a CommandInvocationStatus enum value CommandInvocationStatusSuccess = "Success" // CommandInvocationStatusTimedOut is a CommandInvocationStatus enum value CommandInvocationStatusTimedOut = "TimedOut" // CommandInvocationStatusCancelled is a CommandInvocationStatus enum value CommandInvocationStatusCancelled = "Cancelled" // CommandInvocationStatusFailed is a CommandInvocationStatus enum value CommandInvocationStatusFailed = "Failed" ) const ( // CommandPluginStatusPending is a CommandPluginStatus enum value CommandPluginStatusPending = "Pending" // CommandPluginStatusInProgress is a CommandPluginStatus enum value CommandPluginStatusInProgress = "InProgress" // CommandPluginStatusSuccess is a CommandPluginStatus enum value CommandPluginStatusSuccess = "Success" // CommandPluginStatusTimedOut is a CommandPluginStatus enum value CommandPluginStatusTimedOut = "TimedOut" // CommandPluginStatusCancelled is a CommandPluginStatus enum value CommandPluginStatusCancelled = "Cancelled" // CommandPluginStatusFailed is a CommandPluginStatus enum value CommandPluginStatusFailed = "Failed" ) const ( // CommandStatusPending is a CommandStatus enum value CommandStatusPending = "Pending" // CommandStatusInProgress is a CommandStatus enum value CommandStatusInProgress = "InProgress" // CommandStatusCancelling is a CommandStatus enum value CommandStatusCancelling = "Cancelling" // CommandStatusSuccess is a CommandStatus enum value CommandStatusSuccess = "Success" // CommandStatusTimedOut is a CommandStatus enum value CommandStatusTimedOut = "TimedOut" // CommandStatusCancelled is a CommandStatus enum value CommandStatusCancelled = "Cancelled" // CommandStatusFailed is a CommandStatus enum value CommandStatusFailed = "Failed" ) const ( // DescribeActivationsFilterKeysActivationIds is a DescribeActivationsFilterKeys enum value DescribeActivationsFilterKeysActivationIds = "ActivationIds" // DescribeActivationsFilterKeysDefaultInstanceName is a DescribeActivationsFilterKeys enum value DescribeActivationsFilterKeysDefaultInstanceName = "DefaultInstanceName" // DescribeActivationsFilterKeysIamRole is a DescribeActivationsFilterKeys enum value DescribeActivationsFilterKeysIamRole = "IamRole" ) const ( // DocumentFilterKeyName is a DocumentFilterKey enum value DocumentFilterKeyName = "Name" // DocumentFilterKeyOwner is a DocumentFilterKey enum value DocumentFilterKeyOwner = "Owner" // DocumentFilterKeyPlatformTypes is a DocumentFilterKey enum value DocumentFilterKeyPlatformTypes = "PlatformTypes" ) const ( // DocumentHashTypeSha256 is a DocumentHashType enum value DocumentHashTypeSha256 = "Sha256" // DocumentHashTypeSha1 is a DocumentHashType enum value DocumentHashTypeSha1 = "Sha1" ) const ( // DocumentParameterTypeString is a DocumentParameterType enum value DocumentParameterTypeString = "String" // DocumentParameterTypeStringList is a DocumentParameterType enum value DocumentParameterTypeStringList = "StringList" ) const ( // DocumentPermissionTypeShare is a DocumentPermissionType enum value DocumentPermissionTypeShare = "Share" ) const ( // DocumentStatusCreating is a DocumentStatus enum value DocumentStatusCreating = "Creating" // DocumentStatusActive is a DocumentStatus enum value DocumentStatusActive = "Active" // DocumentStatusDeleting is a DocumentStatus enum value DocumentStatusDeleting = "Deleting" ) const ( // FaultClient is a Fault enum value FaultClient = "Client" // FaultServer is a Fault enum value FaultServer = "Server" // FaultUnknown is a Fault enum value FaultUnknown = "Unknown" ) const ( // InstanceInformationFilterKeyInstanceIds is a InstanceInformationFilterKey enum value InstanceInformationFilterKeyInstanceIds = "InstanceIds" // InstanceInformationFilterKeyAgentVersion is a InstanceInformationFilterKey enum value InstanceInformationFilterKeyAgentVersion = "AgentVersion" // InstanceInformationFilterKeyPingStatus is a InstanceInformationFilterKey enum value InstanceInformationFilterKeyPingStatus = "PingStatus" // InstanceInformationFilterKeyPlatformTypes is a InstanceInformationFilterKey enum value InstanceInformationFilterKeyPlatformTypes = "PlatformTypes" // InstanceInformationFilterKeyActivationIds is a InstanceInformationFilterKey enum value InstanceInformationFilterKeyActivationIds = "ActivationIds" // InstanceInformationFilterKeyIamRole is a InstanceInformationFilterKey enum value InstanceInformationFilterKeyIamRole = "IamRole" // InstanceInformationFilterKeyResourceType is a InstanceInformationFilterKey enum value InstanceInformationFilterKeyResourceType = "ResourceType" ) const ( // NotificationEventAll is a NotificationEvent enum value NotificationEventAll = "All" // NotificationEventInProgress is a NotificationEvent enum value NotificationEventInProgress = "InProgress" // NotificationEventSuccess is a NotificationEvent enum value NotificationEventSuccess = "Success" // NotificationEventTimedOut is a NotificationEvent enum value NotificationEventTimedOut = "TimedOut" // NotificationEventCancelled is a NotificationEvent enum value NotificationEventCancelled = "Cancelled" // NotificationEventFailed is a NotificationEvent enum value NotificationEventFailed = "Failed" ) const ( // NotificationTypeCommand is a NotificationType enum value NotificationTypeCommand = "Command" // NotificationTypeInvocation is a NotificationType enum value NotificationTypeInvocation = "Invocation" ) const ( // PingStatusOnline is a PingStatus enum value PingStatusOnline = "Online" // PingStatusConnectionLost is a PingStatus enum value PingStatusConnectionLost = "ConnectionLost" // PingStatusInactive is a PingStatus enum value PingStatusInactive = "Inactive" ) const ( // PlatformTypeWindows is a PlatformType enum value PlatformTypeWindows = "Windows" // PlatformTypeLinux is a PlatformType enum value PlatformTypeLinux = "Linux" ) const ( // ResourceTypeManagedInstance is a ResourceType enum value ResourceTypeManagedInstance = "ManagedInstance" // ResourceTypeDocument is a ResourceType enum value ResourceTypeDocument = "Document" // ResourceTypeEc2instance is a ResourceType enum value ResourceTypeEc2instance = "EC2Instance" ) const ( // ResourceTypeForTaggingManagedInstance is a ResourceTypeForTagging enum value ResourceTypeForTaggingManagedInstance = "ManagedInstance" ) aws-sdk-go-1.4.22/service/ssm/examples_test.go000066400000000000000000000446251300374646400212440ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package ssm_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/ssm" ) var _ time.Duration var _ bytes.Buffer func ExampleSSM_AddTagsToResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.AddTagsToResourceInput{ ResourceId: aws.String("ResourceId"), // Required ResourceType: aws.String("ResourceTypeForTagging"), // Required Tags: []*ssm.Tag{ // Required { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), // Required }, // More values... }, } resp, err := svc.AddTagsToResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_CancelCommand() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.CancelCommandInput{ CommandId: aws.String("CommandId"), // Required InstanceIds: []*string{ aws.String("InstanceId"), // Required // More values... }, } resp, err := svc.CancelCommand(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_CreateActivation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.CreateActivationInput{ IamRole: aws.String("IamRole"), // Required DefaultInstanceName: aws.String("DefaultInstanceName"), Description: aws.String("ActivationDescription"), ExpirationDate: aws.Time(time.Now()), RegistrationLimit: aws.Int64(1), } resp, err := svc.CreateActivation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_CreateAssociation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.CreateAssociationInput{ InstanceId: aws.String("InstanceId"), // Required Name: aws.String("DocumentName"), // Required Parameters: map[string][]*string{ "Key": { // Required aws.String("ParameterValue"), // Required // More values... }, // More values... }, } resp, err := svc.CreateAssociation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_CreateAssociationBatch() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.CreateAssociationBatchInput{ Entries: []*ssm.CreateAssociationBatchRequestEntry{ // Required { // Required InstanceId: aws.String("InstanceId"), Name: aws.String("DocumentName"), Parameters: map[string][]*string{ "Key": { // Required aws.String("ParameterValue"), // Required // More values... }, // More values... }, }, // More values... }, } resp, err := svc.CreateAssociationBatch(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_CreateDocument() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.CreateDocumentInput{ Content: aws.String("DocumentContent"), // Required Name: aws.String("DocumentName"), // Required } resp, err := svc.CreateDocument(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_DeleteActivation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.DeleteActivationInput{ ActivationId: aws.String("ActivationId"), // Required } resp, err := svc.DeleteActivation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_DeleteAssociation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.DeleteAssociationInput{ InstanceId: aws.String("InstanceId"), // Required Name: aws.String("DocumentName"), // Required } resp, err := svc.DeleteAssociation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_DeleteDocument() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.DeleteDocumentInput{ Name: aws.String("DocumentName"), // Required } resp, err := svc.DeleteDocument(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_DeregisterManagedInstance() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.DeregisterManagedInstanceInput{ InstanceId: aws.String("ManagedInstanceId"), // Required } resp, err := svc.DeregisterManagedInstance(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_DescribeActivations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.DescribeActivationsInput{ Filters: []*ssm.DescribeActivationsFilter{ { // Required FilterKey: aws.String("DescribeActivationsFilterKeys"), FilterValues: []*string{ aws.String("String"), // Required // More values... }, }, // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.DescribeActivations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_DescribeAssociation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.DescribeAssociationInput{ InstanceId: aws.String("InstanceId"), // Required Name: aws.String("DocumentName"), // Required } resp, err := svc.DescribeAssociation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_DescribeDocument() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.DescribeDocumentInput{ Name: aws.String("DocumentARN"), // Required } resp, err := svc.DescribeDocument(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_DescribeDocumentPermission() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.DescribeDocumentPermissionInput{ Name: aws.String("DocumentName"), // Required PermissionType: aws.String("DocumentPermissionType"), // Required } resp, err := svc.DescribeDocumentPermission(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_DescribeInstanceInformation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.DescribeInstanceInformationInput{ InstanceInformationFilterList: []*ssm.InstanceInformationFilter{ { // Required Key: aws.String("InstanceInformationFilterKey"), // Required ValueSet: []*string{ // Required aws.String("InstanceInformationFilterValue"), // Required // More values... }, }, // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.DescribeInstanceInformation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_GetDocument() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.GetDocumentInput{ Name: aws.String("DocumentARN"), // Required } resp, err := svc.GetDocument(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_ListAssociations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.ListAssociationsInput{ AssociationFilterList: []*ssm.AssociationFilter{ // Required { // Required Key: aws.String("AssociationFilterKey"), // Required Value: aws.String("AssociationFilterValue"), // Required }, // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.ListAssociations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_ListCommandInvocations() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.ListCommandInvocationsInput{ CommandId: aws.String("CommandId"), Details: aws.Bool(true), Filters: []*ssm.CommandFilter{ { // Required Key: aws.String("CommandFilterKey"), // Required Value: aws.String("CommandFilterValue"), // Required }, // More values... }, InstanceId: aws.String("InstanceId"), MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.ListCommandInvocations(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_ListCommands() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.ListCommandsInput{ CommandId: aws.String("CommandId"), Filters: []*ssm.CommandFilter{ { // Required Key: aws.String("CommandFilterKey"), // Required Value: aws.String("CommandFilterValue"), // Required }, // More values... }, InstanceId: aws.String("InstanceId"), MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.ListCommands(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_ListDocuments() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.ListDocumentsInput{ DocumentFilterList: []*ssm.DocumentFilter{ { // Required Key: aws.String("DocumentFilterKey"), // Required Value: aws.String("DocumentFilterValue"), // Required }, // More values... }, MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.ListDocuments(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_ListTagsForResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.ListTagsForResourceInput{ ResourceId: aws.String("ResourceId"), // Required ResourceType: aws.String("ResourceTypeForTagging"), // Required } resp, err := svc.ListTagsForResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_ModifyDocumentPermission() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.ModifyDocumentPermissionInput{ Name: aws.String("DocumentName"), // Required PermissionType: aws.String("DocumentPermissionType"), // Required AccountIdsToAdd: []*string{ aws.String("AccountId"), // Required // More values... }, AccountIdsToRemove: []*string{ aws.String("AccountId"), // Required // More values... }, } resp, err := svc.ModifyDocumentPermission(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_RemoveTagsFromResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.RemoveTagsFromResourceInput{ ResourceId: aws.String("ResourceId"), // Required ResourceType: aws.String("ResourceTypeForTagging"), // Required TagKeys: []*string{ // Required aws.String("TagKey"), // Required // More values... }, } resp, err := svc.RemoveTagsFromResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_SendCommand() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.SendCommandInput{ DocumentName: aws.String("DocumentARN"), // Required InstanceIds: []*string{ // Required aws.String("InstanceId"), // Required // More values... }, Comment: aws.String("Comment"), DocumentHash: aws.String("DocumentHash"), DocumentHashType: aws.String("DocumentHashType"), NotificationConfig: &ssm.NotificationConfig{ NotificationArn: aws.String("NotificationArn"), NotificationEvents: []*string{ aws.String("NotificationEvent"), // Required // More values... }, NotificationType: aws.String("NotificationType"), }, OutputS3BucketName: aws.String("S3BucketName"), OutputS3KeyPrefix: aws.String("S3KeyPrefix"), Parameters: map[string][]*string{ "Key": { // Required aws.String("ParameterValue"), // Required // More values... }, // More values... }, ServiceRoleArn: aws.String("ServiceRole"), TimeoutSeconds: aws.Int64(1), } resp, err := svc.SendCommand(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_UpdateAssociationStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.UpdateAssociationStatusInput{ AssociationStatus: &ssm.AssociationStatus{ // Required Date: aws.Time(time.Now()), // Required Message: aws.String("StatusMessage"), // Required Name: aws.String("AssociationStatusName"), // Required AdditionalInfo: aws.String("StatusAdditionalInfo"), }, InstanceId: aws.String("InstanceId"), // Required Name: aws.String("DocumentName"), // Required } resp, err := svc.UpdateAssociationStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSSM_UpdateManagedInstanceRole() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := ssm.New(sess) params := &ssm.UpdateManagedInstanceRoleInput{ IamRole: aws.String("IamRole"), // Required InstanceId: aws.String("ManagedInstanceId"), // Required } resp, err := svc.UpdateManagedInstanceRole(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/ssm/service.go000066400000000000000000000222611300374646400200170ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package ssm import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // Amazon EC2 Simple Systems Manager (SSM) enables you to remotely manage the // configuration of your Amazon EC2 instances, virtual machines (VMs), or servers // in your on-premises environment or in an environment provided by other cloud // providers using scripts, commands, or the Amazon EC2 console. SSM includes // an on-demand solution called Amazon EC2 Run Command and a lightweight instance // configuration solution called SSM Config. // // This references is intended to be used with the EC2 Run Command User Guide // for Linux (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/execute-remote-commands.html) // or Windows (http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/execute-remote-commands.html). // // You must register your on-premises servers and VMs through an activation // process before you can configure them using Run Command. Registered servers // and VMs are called managed instances. For more information, see Setting Up // Run Command On Managed Instances (On-Premises Servers and VMs) on Linux (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/managed-instances.html) // or Setting Up Run Command On Managed Instances (On-Premises Servers and VMs) // on Windows (http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/managed-instances.html). // // Run Command // // Run Command provides an on-demand experience for executing commands. You // can use pre-defined SSM documents to perform the actions listed later in // this section, or you can create your own documents. With these documents, // you can remotely configure your instances by sending commands using the Commands // page in the Amazon EC2 console (http://console.aws.amazon.com/ec2/), AWS // Tools for Windows PowerShell (http://docs.aws.amazon.com/powershell/latest/reference/items/Amazon_Simple_Systems_Management_cmdlets.html), // the AWS CLI (http://docs.aws.amazon.com/cli/latest/reference/ssm/index.html), // or AWS SDKs. // // Run Command reports the status of the command execution for each instance // targeted by a command. You can also audit the command execution to understand // who executed commands, when, and what changes were made. By switching between // different SSM documents, you can quickly configure your instances with different // types of commands. To get started with Run Command, verify that your environment // meets the prerequisites for remotely running commands on EC2 instances (Linux // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/remote-commands-prereq.html) // or Windows (http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/remote-commands-prereq.html)). // // SSM Config // // SSM Config is a lightweight instance configuration solution. SSM Config is // currently only available for Windows instances. With SSM Config, you can // specify a setup configuration for your instances. SSM Config is similar to // EC2 User Data, which is another way of running one-time scripts or applying // settings during instance launch. SSM Config is an extension of this capability. // Using SSM documents, you can specify which actions the system should perform // on your instances, including which applications to install, which AWS Directory // Service directory to join, which Microsoft PowerShell modules to install, // etc. If an instance is missing one or more of these configurations, the system // makes those changes. By default, the system checks every five minutes to // see if there is a new configuration to apply as defined in a new SSM document. // If so, the system updates the instances accordingly. In this way, you can // remotely maintain a consistent configuration baseline on your instances. // SSM Config is available using the AWS CLI or the AWS Tools for Windows PowerShell. // For more information, see Managing Windows Instance Configuration (http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-configuration-manage.html). // // SSM Config and Run Command include the following pre-defined documents. // // Linux // // AWS-RunShellScript to run shell scripts // // * AWS-UpdateSSMAgent to update the Amazon SSM agent // // Windows // // * AWS-JoinDirectoryServiceDomain to join an AWS Directory // // * AWS-RunPowerShellScript to run PowerShell commands or scripts // // * AWS-UpdateEC2Config to update the EC2Config service // // * AWS-ConfigureWindowsUpdate to configure Windows Update settings // // * AWS-InstallApplication to install, repair, or uninstall software using // an MSI package // // * AWS-InstallPowerShellModule to install PowerShell modules // // * AWS-ConfigureCloudWatch to configure Amazon CloudWatch Logs to monitor // applications and systems // // * AWS-ListWindowsInventory to collect information about an EC2 instance // running in Windows. // // * AWS-FindWindowsUpdates to scan an instance and determines which updates // are missing. // // * AWS-InstallMissingWindowsUpdates to install missing updates on your // EC2 instance. // // * AWS-InstallSpecificWindowsUpdates to install one or more specific updates. // // The commands or scripts specified in SSM documents run with administrative // privilege on your instances because the Amazon SSM agent runs as root // on Linux and the EC2Config service runs in the Local System account on // Windows. If a user has permission to execute any of the pre-defined SSM // documents (any document that begins with AWS-*) then that user also has // administrator access to the instance. Delegate access to Run Command and // SSM Config judiciously. This becomes extremely important if you create // your own SSM documents. Amazon Web Services does not provide guidance // about how to create secure SSM documents. You create SSM documents and // delegate access to Run Command at your own risk. As a security best practice, // we recommend that you assign access to "AWS-*" documents, especially the // AWS-RunShellScript document on Linux and the AWS-RunPowerShellScript document // on Windows, to trusted administrators only. You can create SSM documents // for specific tasks and delegate access to non-administrators. // // For information about creating and sharing SSM documents, see the following // topics in the SSM User Guide: // // * Creating SSM Documents (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-ssm-doc.html) // and * Sharing SSM Documents (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ssm-sharing.html) // (Linux) // // * Creating SSM Documents (http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/create-ssm-doc.html) // and * Sharing SSM Documents (http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ssm-sharing.html) // (Windows) //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type SSM struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "ssm" // New creates a new instance of the SSM client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a SSM client from just a session. // svc := ssm.New(mySession) // // // Create a SSM client with additional configuration // svc := ssm.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *SSM { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *SSM { svc := &SSM{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-11-06", JSONVersion: "1.1", TargetPrefix: "AmazonSSM", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a SSM operation and runs any // custom request initialization. func (c *SSM) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/ssm/ssmiface/000077500000000000000000000000001300374646400176175ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/ssm/ssmiface/interface.go000066400000000000000000000175031300374646400221140ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package ssmiface provides an interface to enable mocking the Amazon Simple Systems Management Service service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package ssmiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/ssm" ) // SSMAPI provides an interface to enable mocking the // ssm.SSM service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Simple Systems Management Service. // func myFunc(svc ssmiface.SSMAPI) bool { // // Make svc.AddTagsToResource request // } // // func main() { // sess := session.New() // svc := ssm.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockSSMClient struct { // ssmiface.SSMAPI // } // func (m *mockSSMClient) AddTagsToResource(input *ssm.AddTagsToResourceInput) (*ssm.AddTagsToResourceOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockSSMClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type SSMAPI interface { AddTagsToResourceRequest(*ssm.AddTagsToResourceInput) (*request.Request, *ssm.AddTagsToResourceOutput) AddTagsToResource(*ssm.AddTagsToResourceInput) (*ssm.AddTagsToResourceOutput, error) CancelCommandRequest(*ssm.CancelCommandInput) (*request.Request, *ssm.CancelCommandOutput) CancelCommand(*ssm.CancelCommandInput) (*ssm.CancelCommandOutput, error) CreateActivationRequest(*ssm.CreateActivationInput) (*request.Request, *ssm.CreateActivationOutput) CreateActivation(*ssm.CreateActivationInput) (*ssm.CreateActivationOutput, error) CreateAssociationRequest(*ssm.CreateAssociationInput) (*request.Request, *ssm.CreateAssociationOutput) CreateAssociation(*ssm.CreateAssociationInput) (*ssm.CreateAssociationOutput, error) CreateAssociationBatchRequest(*ssm.CreateAssociationBatchInput) (*request.Request, *ssm.CreateAssociationBatchOutput) CreateAssociationBatch(*ssm.CreateAssociationBatchInput) (*ssm.CreateAssociationBatchOutput, error) CreateDocumentRequest(*ssm.CreateDocumentInput) (*request.Request, *ssm.CreateDocumentOutput) CreateDocument(*ssm.CreateDocumentInput) (*ssm.CreateDocumentOutput, error) DeleteActivationRequest(*ssm.DeleteActivationInput) (*request.Request, *ssm.DeleteActivationOutput) DeleteActivation(*ssm.DeleteActivationInput) (*ssm.DeleteActivationOutput, error) DeleteAssociationRequest(*ssm.DeleteAssociationInput) (*request.Request, *ssm.DeleteAssociationOutput) DeleteAssociation(*ssm.DeleteAssociationInput) (*ssm.DeleteAssociationOutput, error) DeleteDocumentRequest(*ssm.DeleteDocumentInput) (*request.Request, *ssm.DeleteDocumentOutput) DeleteDocument(*ssm.DeleteDocumentInput) (*ssm.DeleteDocumentOutput, error) DeregisterManagedInstanceRequest(*ssm.DeregisterManagedInstanceInput) (*request.Request, *ssm.DeregisterManagedInstanceOutput) DeregisterManagedInstance(*ssm.DeregisterManagedInstanceInput) (*ssm.DeregisterManagedInstanceOutput, error) DescribeActivationsRequest(*ssm.DescribeActivationsInput) (*request.Request, *ssm.DescribeActivationsOutput) DescribeActivations(*ssm.DescribeActivationsInput) (*ssm.DescribeActivationsOutput, error) DescribeActivationsPages(*ssm.DescribeActivationsInput, func(*ssm.DescribeActivationsOutput, bool) bool) error DescribeAssociationRequest(*ssm.DescribeAssociationInput) (*request.Request, *ssm.DescribeAssociationOutput) DescribeAssociation(*ssm.DescribeAssociationInput) (*ssm.DescribeAssociationOutput, error) DescribeDocumentRequest(*ssm.DescribeDocumentInput) (*request.Request, *ssm.DescribeDocumentOutput) DescribeDocument(*ssm.DescribeDocumentInput) (*ssm.DescribeDocumentOutput, error) DescribeDocumentPermissionRequest(*ssm.DescribeDocumentPermissionInput) (*request.Request, *ssm.DescribeDocumentPermissionOutput) DescribeDocumentPermission(*ssm.DescribeDocumentPermissionInput) (*ssm.DescribeDocumentPermissionOutput, error) DescribeInstanceInformationRequest(*ssm.DescribeInstanceInformationInput) (*request.Request, *ssm.DescribeInstanceInformationOutput) DescribeInstanceInformation(*ssm.DescribeInstanceInformationInput) (*ssm.DescribeInstanceInformationOutput, error) DescribeInstanceInformationPages(*ssm.DescribeInstanceInformationInput, func(*ssm.DescribeInstanceInformationOutput, bool) bool) error GetDocumentRequest(*ssm.GetDocumentInput) (*request.Request, *ssm.GetDocumentOutput) GetDocument(*ssm.GetDocumentInput) (*ssm.GetDocumentOutput, error) ListAssociationsRequest(*ssm.ListAssociationsInput) (*request.Request, *ssm.ListAssociationsOutput) ListAssociations(*ssm.ListAssociationsInput) (*ssm.ListAssociationsOutput, error) ListAssociationsPages(*ssm.ListAssociationsInput, func(*ssm.ListAssociationsOutput, bool) bool) error ListCommandInvocationsRequest(*ssm.ListCommandInvocationsInput) (*request.Request, *ssm.ListCommandInvocationsOutput) ListCommandInvocations(*ssm.ListCommandInvocationsInput) (*ssm.ListCommandInvocationsOutput, error) ListCommandInvocationsPages(*ssm.ListCommandInvocationsInput, func(*ssm.ListCommandInvocationsOutput, bool) bool) error ListCommandsRequest(*ssm.ListCommandsInput) (*request.Request, *ssm.ListCommandsOutput) ListCommands(*ssm.ListCommandsInput) (*ssm.ListCommandsOutput, error) ListCommandsPages(*ssm.ListCommandsInput, func(*ssm.ListCommandsOutput, bool) bool) error ListDocumentsRequest(*ssm.ListDocumentsInput) (*request.Request, *ssm.ListDocumentsOutput) ListDocuments(*ssm.ListDocumentsInput) (*ssm.ListDocumentsOutput, error) ListDocumentsPages(*ssm.ListDocumentsInput, func(*ssm.ListDocumentsOutput, bool) bool) error ListTagsForResourceRequest(*ssm.ListTagsForResourceInput) (*request.Request, *ssm.ListTagsForResourceOutput) ListTagsForResource(*ssm.ListTagsForResourceInput) (*ssm.ListTagsForResourceOutput, error) ModifyDocumentPermissionRequest(*ssm.ModifyDocumentPermissionInput) (*request.Request, *ssm.ModifyDocumentPermissionOutput) ModifyDocumentPermission(*ssm.ModifyDocumentPermissionInput) (*ssm.ModifyDocumentPermissionOutput, error) RemoveTagsFromResourceRequest(*ssm.RemoveTagsFromResourceInput) (*request.Request, *ssm.RemoveTagsFromResourceOutput) RemoveTagsFromResource(*ssm.RemoveTagsFromResourceInput) (*ssm.RemoveTagsFromResourceOutput, error) SendCommandRequest(*ssm.SendCommandInput) (*request.Request, *ssm.SendCommandOutput) SendCommand(*ssm.SendCommandInput) (*ssm.SendCommandOutput, error) UpdateAssociationStatusRequest(*ssm.UpdateAssociationStatusInput) (*request.Request, *ssm.UpdateAssociationStatusOutput) UpdateAssociationStatus(*ssm.UpdateAssociationStatusInput) (*ssm.UpdateAssociationStatusOutput, error) UpdateManagedInstanceRoleRequest(*ssm.UpdateManagedInstanceRoleInput) (*request.Request, *ssm.UpdateManagedInstanceRoleOutput) UpdateManagedInstanceRole(*ssm.UpdateManagedInstanceRoleInput) (*ssm.UpdateManagedInstanceRoleOutput, error) } var _ SSMAPI = (*ssm.SSM)(nil) aws-sdk-go-1.4.22/service/storagegateway/000077500000000000000000000000001300374646400202515ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/storagegateway/api.go000066400000000000000000011527051300374646400213640ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package storagegateway provides a client for AWS Storage Gateway. package storagegateway import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opActivateGateway = "ActivateGateway" // ActivateGatewayRequest generates a "aws/request.Request" representing the // client's request for the ActivateGateway operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ActivateGateway for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ActivateGateway method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ActivateGatewayRequest method. // req, resp := client.ActivateGatewayRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) ActivateGatewayRequest(input *ActivateGatewayInput) (req *request.Request, output *ActivateGatewayOutput) { op := &request.Operation{ Name: opActivateGateway, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ActivateGatewayInput{} } req = c.newRequest(op, input, output) output = &ActivateGatewayOutput{} req.Data = output return } // ActivateGateway API operation for AWS Storage Gateway. // // Activates the gateway you previously deployed on your host. For more information, // see Activate the AWS Storage Gateway (http://docs.aws.amazon.com/storagegateway/latest/userguide/GettingStartedActivateGateway-common.html). // In the activation process, you specify information such as the you want to // use for storing snapshots, the time zone for scheduled snapshots the gateway // snapshot schedule window, an activation key, and a name for your gateway. // The activation process also associates your gateway with your account; for // more information, see UpdateGatewayInformation. // // You must turn on the gateway VM before you can activate your gateway. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation ActivateGateway for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) ActivateGateway(input *ActivateGatewayInput) (*ActivateGatewayOutput, error) { req, out := c.ActivateGatewayRequest(input) err := req.Send() return out, err } const opAddCache = "AddCache" // AddCacheRequest generates a "aws/request.Request" representing the // client's request for the AddCache operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddCache for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddCache method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddCacheRequest method. // req, resp := client.AddCacheRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) AddCacheRequest(input *AddCacheInput) (req *request.Request, output *AddCacheOutput) { op := &request.Operation{ Name: opAddCache, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddCacheInput{} } req = c.newRequest(op, input, output) output = &AddCacheOutput{} req.Data = output return } // AddCache API operation for AWS Storage Gateway. // // Configures one or more gateway local disks as cache for a cached-volume gateway. // This operation is supported only for the gateway-cached volume architecture // (see Storage Gateway Concepts (http://docs.aws.amazon.com/storagegateway/latest/userguide/StorageGatewayConcepts.html)). // // In the request, you specify the gateway Amazon Resource Name (ARN) to which // you want to add cache, and one or more disk IDs that you want to configure // as cache. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation AddCache for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) AddCache(input *AddCacheInput) (*AddCacheOutput, error) { req, out := c.AddCacheRequest(input) err := req.Send() return out, err } const opAddTagsToResource = "AddTagsToResource" // AddTagsToResourceRequest generates a "aws/request.Request" representing the // client's request for the AddTagsToResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddTagsToResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddTagsToResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddTagsToResourceRequest method. // req, resp := client.AddTagsToResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) AddTagsToResourceRequest(input *AddTagsToResourceInput) (req *request.Request, output *AddTagsToResourceOutput) { op := &request.Operation{ Name: opAddTagsToResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddTagsToResourceInput{} } req = c.newRequest(op, input, output) output = &AddTagsToResourceOutput{} req.Data = output return } // AddTagsToResource API operation for AWS Storage Gateway. // // Adds one or more tags to the specified resource. You use tags to add metadata // to resources, which you can use to categorize these resources. For example, // you can categorize resources by purpose, owner, environment, or team. Each // tag consists of a key and a value, which you define. You can add tags to // the following AWS Storage Gateway resources: // // * Storage gateways of all types // // * Storage Volumes // // * Virtual Tapes // // You can create a maximum of 10 tags for each resource. Virtual tapes and // storage volumes that are recovered to a new gateway maintain their tags. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation AddTagsToResource for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) AddTagsToResource(input *AddTagsToResourceInput) (*AddTagsToResourceOutput, error) { req, out := c.AddTagsToResourceRequest(input) err := req.Send() return out, err } const opAddUploadBuffer = "AddUploadBuffer" // AddUploadBufferRequest generates a "aws/request.Request" representing the // client's request for the AddUploadBuffer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddUploadBuffer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddUploadBuffer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddUploadBufferRequest method. // req, resp := client.AddUploadBufferRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) AddUploadBufferRequest(input *AddUploadBufferInput) (req *request.Request, output *AddUploadBufferOutput) { op := &request.Operation{ Name: opAddUploadBuffer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddUploadBufferInput{} } req = c.newRequest(op, input, output) output = &AddUploadBufferOutput{} req.Data = output return } // AddUploadBuffer API operation for AWS Storage Gateway. // // Configures one or more gateway local disks as upload buffer for a specified // gateway. This operation is supported for both the gateway-stored and gateway-cached // volume architectures. // // In the request, you specify the gateway Amazon Resource Name (ARN) to which // you want to add upload buffer, and one or more disk IDs that you want to // configure as upload buffer. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation AddUploadBuffer for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) AddUploadBuffer(input *AddUploadBufferInput) (*AddUploadBufferOutput, error) { req, out := c.AddUploadBufferRequest(input) err := req.Send() return out, err } const opAddWorkingStorage = "AddWorkingStorage" // AddWorkingStorageRequest generates a "aws/request.Request" representing the // client's request for the AddWorkingStorage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddWorkingStorage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddWorkingStorage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddWorkingStorageRequest method. // req, resp := client.AddWorkingStorageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) AddWorkingStorageRequest(input *AddWorkingStorageInput) (req *request.Request, output *AddWorkingStorageOutput) { op := &request.Operation{ Name: opAddWorkingStorage, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddWorkingStorageInput{} } req = c.newRequest(op, input, output) output = &AddWorkingStorageOutput{} req.Data = output return } // AddWorkingStorage API operation for AWS Storage Gateway. // // Configures one or more gateway local disks as working storage for a gateway. // This operation is supported only for the gateway-stored volume architecture. // This operation is deprecated in cached-volumes API version 20120630. Use // AddUploadBuffer instead. // // Working storage is also referred to as upload buffer. You can also use the // AddUploadBuffer operation to add upload buffer to a stored-volume gateway. // // In the request, you specify the gateway Amazon Resource Name (ARN) to which // you want to add working storage, and one or more disk IDs that you want to // configure as working storage. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation AddWorkingStorage for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) AddWorkingStorage(input *AddWorkingStorageInput) (*AddWorkingStorageOutput, error) { req, out := c.AddWorkingStorageRequest(input) err := req.Send() return out, err } const opCancelArchival = "CancelArchival" // CancelArchivalRequest generates a "aws/request.Request" representing the // client's request for the CancelArchival operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CancelArchival for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CancelArchival method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CancelArchivalRequest method. // req, resp := client.CancelArchivalRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) CancelArchivalRequest(input *CancelArchivalInput) (req *request.Request, output *CancelArchivalOutput) { op := &request.Operation{ Name: opCancelArchival, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CancelArchivalInput{} } req = c.newRequest(op, input, output) output = &CancelArchivalOutput{} req.Data = output return } // CancelArchival API operation for AWS Storage Gateway. // // Cancels archiving of a virtual tape to the virtual tape shelf (VTS) after // the archiving process is initiated. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation CancelArchival for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) CancelArchival(input *CancelArchivalInput) (*CancelArchivalOutput, error) { req, out := c.CancelArchivalRequest(input) err := req.Send() return out, err } const opCancelRetrieval = "CancelRetrieval" // CancelRetrievalRequest generates a "aws/request.Request" representing the // client's request for the CancelRetrieval operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CancelRetrieval for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CancelRetrieval method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CancelRetrievalRequest method. // req, resp := client.CancelRetrievalRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) CancelRetrievalRequest(input *CancelRetrievalInput) (req *request.Request, output *CancelRetrievalOutput) { op := &request.Operation{ Name: opCancelRetrieval, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CancelRetrievalInput{} } req = c.newRequest(op, input, output) output = &CancelRetrievalOutput{} req.Data = output return } // CancelRetrieval API operation for AWS Storage Gateway. // // Cancels retrieval of a virtual tape from the virtual tape shelf (VTS) to // a gateway after the retrieval process is initiated. The virtual tape is returned // to the VTS. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation CancelRetrieval for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) CancelRetrieval(input *CancelRetrievalInput) (*CancelRetrievalOutput, error) { req, out := c.CancelRetrievalRequest(input) err := req.Send() return out, err } const opCreateCachediSCSIVolume = "CreateCachediSCSIVolume" // CreateCachediSCSIVolumeRequest generates a "aws/request.Request" representing the // client's request for the CreateCachediSCSIVolume operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateCachediSCSIVolume for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateCachediSCSIVolume method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateCachediSCSIVolumeRequest method. // req, resp := client.CreateCachediSCSIVolumeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) CreateCachediSCSIVolumeRequest(input *CreateCachediSCSIVolumeInput) (req *request.Request, output *CreateCachediSCSIVolumeOutput) { op := &request.Operation{ Name: opCreateCachediSCSIVolume, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateCachediSCSIVolumeInput{} } req = c.newRequest(op, input, output) output = &CreateCachediSCSIVolumeOutput{} req.Data = output return } // CreateCachediSCSIVolume API operation for AWS Storage Gateway. // // Creates a cached volume on a specified cached gateway. This operation is // supported only for the gateway-cached volume architecture. // // Cache storage must be allocated to the gateway before you can create a cached // volume. Use the AddCache operation to add cache storage to a gateway. // // In the request, you must specify the gateway, size of the volume in bytes, // the iSCSI target name, an IP address on which to expose the target, and a // unique client token. In response, AWS Storage Gateway creates the volume // and returns information about it such as the volume Amazon Resource Name // (ARN), its size, and the iSCSI target ARN that initiators can use to connect // to the volume target. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation CreateCachediSCSIVolume for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) CreateCachediSCSIVolume(input *CreateCachediSCSIVolumeInput) (*CreateCachediSCSIVolumeOutput, error) { req, out := c.CreateCachediSCSIVolumeRequest(input) err := req.Send() return out, err } const opCreateSnapshot = "CreateSnapshot" // CreateSnapshotRequest generates a "aws/request.Request" representing the // client's request for the CreateSnapshot operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateSnapshot for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateSnapshot method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateSnapshotRequest method. // req, resp := client.CreateSnapshotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) CreateSnapshotRequest(input *CreateSnapshotInput) (req *request.Request, output *CreateSnapshotOutput) { op := &request.Operation{ Name: opCreateSnapshot, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateSnapshotInput{} } req = c.newRequest(op, input, output) output = &CreateSnapshotOutput{} req.Data = output return } // CreateSnapshot API operation for AWS Storage Gateway. // // Initiates a snapshot of a volume. // // AWS Storage Gateway provides the ability to back up point-in-time snapshots // of your data to Amazon Simple Storage (S3) for durable off-site recovery, // as well as import the data to an Amazon Elastic Block Store (EBS) volume // in Amazon Elastic Compute Cloud (EC2). You can take snapshots of your gateway // volume on a scheduled or ad-hoc basis. This API enables you to take ad-hoc // snapshot. For more information, see Working With Snapshots in the AWS Storage // Gateway Console (http://docs.aws.amazon.com/storagegateway/latest/userguide/WorkingWithSnapshots.html). // // In the CreateSnapshot request you identify the volume by providing its Amazon // Resource Name (ARN). You must also provide description for the snapshot. // When AWS Storage Gateway takes the snapshot of specified volume, the snapshot // and description appears in the AWS Storage Gateway Console. In response, // AWS Storage Gateway returns you a snapshot ID. You can use this snapshot // ID to check the snapshot progress or later use it when you want to create // a volume from a snapshot. // // To list or delete a snapshot, you must use the Amazon EC2 API. For more information, // see DescribeSnapshots or DeleteSnapshot in the EC2 API reference (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Operations.html). // // Volume and snapshot IDs are changing to a longer length ID format. For more // information, see the important note on the Welcome (http://docs.aws.amazon.com/storagegateway/latest/APIReference/Welcome.html) // page. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation CreateSnapshot for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) CreateSnapshot(input *CreateSnapshotInput) (*CreateSnapshotOutput, error) { req, out := c.CreateSnapshotRequest(input) err := req.Send() return out, err } const opCreateSnapshotFromVolumeRecoveryPoint = "CreateSnapshotFromVolumeRecoveryPoint" // CreateSnapshotFromVolumeRecoveryPointRequest generates a "aws/request.Request" representing the // client's request for the CreateSnapshotFromVolumeRecoveryPoint operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateSnapshotFromVolumeRecoveryPoint for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateSnapshotFromVolumeRecoveryPoint method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateSnapshotFromVolumeRecoveryPointRequest method. // req, resp := client.CreateSnapshotFromVolumeRecoveryPointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) CreateSnapshotFromVolumeRecoveryPointRequest(input *CreateSnapshotFromVolumeRecoveryPointInput) (req *request.Request, output *CreateSnapshotFromVolumeRecoveryPointOutput) { op := &request.Operation{ Name: opCreateSnapshotFromVolumeRecoveryPoint, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateSnapshotFromVolumeRecoveryPointInput{} } req = c.newRequest(op, input, output) output = &CreateSnapshotFromVolumeRecoveryPointOutput{} req.Data = output return } // CreateSnapshotFromVolumeRecoveryPoint API operation for AWS Storage Gateway. // // Initiates a snapshot of a gateway from a volume recovery point. This operation // is supported only for the gateway-cached volume architecture. // // A volume recovery point is a point in time at which all data of the volume // is consistent and from which you can create a snapshot. To get a list of // volume recovery point for gateway-cached volumes, use ListVolumeRecoveryPoints. // // In the CreateSnapshotFromVolumeRecoveryPoint request, you identify the volume // by providing its Amazon Resource Name (ARN). You must also provide a description // for the snapshot. When AWS Storage Gateway takes a snapshot of the specified // volume, the snapshot and its description appear in the AWS Storage Gateway // console. In response, AWS Storage Gateway returns you a snapshot ID. You // can use this snapshot ID to check the snapshot progress or later use it when // you want to create a volume from a snapshot. // // To list or delete a snapshot, you must use the Amazon EC2 API. For more information, // in Amazon Elastic Compute Cloud API Reference. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation CreateSnapshotFromVolumeRecoveryPoint for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) CreateSnapshotFromVolumeRecoveryPoint(input *CreateSnapshotFromVolumeRecoveryPointInput) (*CreateSnapshotFromVolumeRecoveryPointOutput, error) { req, out := c.CreateSnapshotFromVolumeRecoveryPointRequest(input) err := req.Send() return out, err } const opCreateStorediSCSIVolume = "CreateStorediSCSIVolume" // CreateStorediSCSIVolumeRequest generates a "aws/request.Request" representing the // client's request for the CreateStorediSCSIVolume operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateStorediSCSIVolume for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateStorediSCSIVolume method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateStorediSCSIVolumeRequest method. // req, resp := client.CreateStorediSCSIVolumeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) CreateStorediSCSIVolumeRequest(input *CreateStorediSCSIVolumeInput) (req *request.Request, output *CreateStorediSCSIVolumeOutput) { op := &request.Operation{ Name: opCreateStorediSCSIVolume, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateStorediSCSIVolumeInput{} } req = c.newRequest(op, input, output) output = &CreateStorediSCSIVolumeOutput{} req.Data = output return } // CreateStorediSCSIVolume API operation for AWS Storage Gateway. // // Creates a volume on a specified gateway. This operation is supported only // for the gateway-stored volume architecture. // // The size of the volume to create is inferred from the disk size. You can // choose to preserve existing data on the disk, create volume from an existing // snapshot, or create an empty volume. If you choose to create an empty gateway // volume, then any existing data on the disk is erased. // // In the request you must specify the gateway and the disk information on which // you are creating the volume. In response, AWS Storage Gateway creates the // volume and returns volume information such as the volume Amazon Resource // Name (ARN), its size, and the iSCSI target ARN that initiators can use to // connect to the volume target. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation CreateStorediSCSIVolume for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) CreateStorediSCSIVolume(input *CreateStorediSCSIVolumeInput) (*CreateStorediSCSIVolumeOutput, error) { req, out := c.CreateStorediSCSIVolumeRequest(input) err := req.Send() return out, err } const opCreateTapeWithBarcode = "CreateTapeWithBarcode" // CreateTapeWithBarcodeRequest generates a "aws/request.Request" representing the // client's request for the CreateTapeWithBarcode operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateTapeWithBarcode for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateTapeWithBarcode method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateTapeWithBarcodeRequest method. // req, resp := client.CreateTapeWithBarcodeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) CreateTapeWithBarcodeRequest(input *CreateTapeWithBarcodeInput) (req *request.Request, output *CreateTapeWithBarcodeOutput) { op := &request.Operation{ Name: opCreateTapeWithBarcode, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateTapeWithBarcodeInput{} } req = c.newRequest(op, input, output) output = &CreateTapeWithBarcodeOutput{} req.Data = output return } // CreateTapeWithBarcode API operation for AWS Storage Gateway. // // Creates a virtual tape by using your own barcode. You write data to the virtual // tape and then archive the tape. // // Cache storage must be allocated to the gateway before you can create a virtual // tape. Use the AddCache operation to add cache storage to a gateway. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation CreateTapeWithBarcode for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) CreateTapeWithBarcode(input *CreateTapeWithBarcodeInput) (*CreateTapeWithBarcodeOutput, error) { req, out := c.CreateTapeWithBarcodeRequest(input) err := req.Send() return out, err } const opCreateTapes = "CreateTapes" // CreateTapesRequest generates a "aws/request.Request" representing the // client's request for the CreateTapes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateTapes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateTapes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateTapesRequest method. // req, resp := client.CreateTapesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) CreateTapesRequest(input *CreateTapesInput) (req *request.Request, output *CreateTapesOutput) { op := &request.Operation{ Name: opCreateTapes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateTapesInput{} } req = c.newRequest(op, input, output) output = &CreateTapesOutput{} req.Data = output return } // CreateTapes API operation for AWS Storage Gateway. // // Creates one or more virtual tapes. You write data to the virtual tapes and // then archive the tapes. // // Cache storage must be allocated to the gateway before you can create virtual // tapes. Use the AddCache operation to add cache storage to a gateway. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation CreateTapes for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) CreateTapes(input *CreateTapesInput) (*CreateTapesOutput, error) { req, out := c.CreateTapesRequest(input) err := req.Send() return out, err } const opDeleteBandwidthRateLimit = "DeleteBandwidthRateLimit" // DeleteBandwidthRateLimitRequest generates a "aws/request.Request" representing the // client's request for the DeleteBandwidthRateLimit operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteBandwidthRateLimit for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteBandwidthRateLimit method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteBandwidthRateLimitRequest method. // req, resp := client.DeleteBandwidthRateLimitRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DeleteBandwidthRateLimitRequest(input *DeleteBandwidthRateLimitInput) (req *request.Request, output *DeleteBandwidthRateLimitOutput) { op := &request.Operation{ Name: opDeleteBandwidthRateLimit, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteBandwidthRateLimitInput{} } req = c.newRequest(op, input, output) output = &DeleteBandwidthRateLimitOutput{} req.Data = output return } // DeleteBandwidthRateLimit API operation for AWS Storage Gateway. // // Deletes the bandwidth rate limits of a gateway. You can delete either the // upload and download bandwidth rate limit, or you can delete both. If you // delete only one of the limits, the other limit remains unchanged. To specify // which gateway to work with, use the Amazon Resource Name (ARN) of the gateway // in your request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DeleteBandwidthRateLimit for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DeleteBandwidthRateLimit(input *DeleteBandwidthRateLimitInput) (*DeleteBandwidthRateLimitOutput, error) { req, out := c.DeleteBandwidthRateLimitRequest(input) err := req.Send() return out, err } const opDeleteChapCredentials = "DeleteChapCredentials" // DeleteChapCredentialsRequest generates a "aws/request.Request" representing the // client's request for the DeleteChapCredentials operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteChapCredentials for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteChapCredentials method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteChapCredentialsRequest method. // req, resp := client.DeleteChapCredentialsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DeleteChapCredentialsRequest(input *DeleteChapCredentialsInput) (req *request.Request, output *DeleteChapCredentialsOutput) { op := &request.Operation{ Name: opDeleteChapCredentials, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteChapCredentialsInput{} } req = c.newRequest(op, input, output) output = &DeleteChapCredentialsOutput{} req.Data = output return } // DeleteChapCredentials API operation for AWS Storage Gateway. // // Deletes Challenge-Handshake Authentication Protocol (CHAP) credentials for // a specified iSCSI target and initiator pair. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DeleteChapCredentials for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DeleteChapCredentials(input *DeleteChapCredentialsInput) (*DeleteChapCredentialsOutput, error) { req, out := c.DeleteChapCredentialsRequest(input) err := req.Send() return out, err } const opDeleteGateway = "DeleteGateway" // DeleteGatewayRequest generates a "aws/request.Request" representing the // client's request for the DeleteGateway operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteGateway for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteGateway method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteGatewayRequest method. // req, resp := client.DeleteGatewayRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DeleteGatewayRequest(input *DeleteGatewayInput) (req *request.Request, output *DeleteGatewayOutput) { op := &request.Operation{ Name: opDeleteGateway, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteGatewayInput{} } req = c.newRequest(op, input, output) output = &DeleteGatewayOutput{} req.Data = output return } // DeleteGateway API operation for AWS Storage Gateway. // // Deletes a gateway. To specify which gateway to delete, use the Amazon Resource // Name (ARN) of the gateway in your request. The operation deletes the gateway; // however, it does not delete the gateway virtual machine (VM) from your host // computer. // // After you delete a gateway, you cannot reactivate it. Completed snapshots // of the gateway volumes are not deleted upon deleting the gateway, however, // pending snapshots will not complete. After you delete a gateway, your next // step is to remove it from your environment. // // You no longer pay software charges after the gateway is deleted; however, // your existing Amazon EBS snapshots persist and you will continue to be billed // for these snapshots. You can choose to remove all remaining Amazon EBS snapshots // by canceling your Amazon EC2 subscription.  If you prefer not to cancel your // Amazon EC2 subscription, you can delete your snapshots using the Amazon EC2 // console. For more information, see the AWS Storage Gateway Detail Page (http://aws.amazon.com/storagegateway). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DeleteGateway for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DeleteGateway(input *DeleteGatewayInput) (*DeleteGatewayOutput, error) { req, out := c.DeleteGatewayRequest(input) err := req.Send() return out, err } const opDeleteSnapshotSchedule = "DeleteSnapshotSchedule" // DeleteSnapshotScheduleRequest generates a "aws/request.Request" representing the // client's request for the DeleteSnapshotSchedule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteSnapshotSchedule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteSnapshotSchedule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteSnapshotScheduleRequest method. // req, resp := client.DeleteSnapshotScheduleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DeleteSnapshotScheduleRequest(input *DeleteSnapshotScheduleInput) (req *request.Request, output *DeleteSnapshotScheduleOutput) { op := &request.Operation{ Name: opDeleteSnapshotSchedule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteSnapshotScheduleInput{} } req = c.newRequest(op, input, output) output = &DeleteSnapshotScheduleOutput{} req.Data = output return } // DeleteSnapshotSchedule API operation for AWS Storage Gateway. // // Deletes a snapshot of a volume. // // You can take snapshots of your gateway volumes on a scheduled or ad hoc basis. // This API action enables you to delete a snapshot schedule for a volume. For // more information, see Working with Snapshots (http://docs.aws.amazon.com/storagegateway/latest/userguide/WorkingWithSnapshots.html). // In the DeleteSnapshotSchedule request, you identify the volume by providing // its Amazon Resource Name (ARN). // // To list or delete a snapshot, you must use the Amazon EC2 API. in Amazon // Elastic Compute Cloud API Reference. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DeleteSnapshotSchedule for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DeleteSnapshotSchedule(input *DeleteSnapshotScheduleInput) (*DeleteSnapshotScheduleOutput, error) { req, out := c.DeleteSnapshotScheduleRequest(input) err := req.Send() return out, err } const opDeleteTape = "DeleteTape" // DeleteTapeRequest generates a "aws/request.Request" representing the // client's request for the DeleteTape operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteTape for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteTape method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteTapeRequest method. // req, resp := client.DeleteTapeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DeleteTapeRequest(input *DeleteTapeInput) (req *request.Request, output *DeleteTapeOutput) { op := &request.Operation{ Name: opDeleteTape, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteTapeInput{} } req = c.newRequest(op, input, output) output = &DeleteTapeOutput{} req.Data = output return } // DeleteTape API operation for AWS Storage Gateway. // // Deletes the specified virtual tape. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DeleteTape for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DeleteTape(input *DeleteTapeInput) (*DeleteTapeOutput, error) { req, out := c.DeleteTapeRequest(input) err := req.Send() return out, err } const opDeleteTapeArchive = "DeleteTapeArchive" // DeleteTapeArchiveRequest generates a "aws/request.Request" representing the // client's request for the DeleteTapeArchive operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteTapeArchive for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteTapeArchive method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteTapeArchiveRequest method. // req, resp := client.DeleteTapeArchiveRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DeleteTapeArchiveRequest(input *DeleteTapeArchiveInput) (req *request.Request, output *DeleteTapeArchiveOutput) { op := &request.Operation{ Name: opDeleteTapeArchive, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteTapeArchiveInput{} } req = c.newRequest(op, input, output) output = &DeleteTapeArchiveOutput{} req.Data = output return } // DeleteTapeArchive API operation for AWS Storage Gateway. // // Deletes the specified virtual tape from the virtual tape shelf (VTS). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DeleteTapeArchive for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DeleteTapeArchive(input *DeleteTapeArchiveInput) (*DeleteTapeArchiveOutput, error) { req, out := c.DeleteTapeArchiveRequest(input) err := req.Send() return out, err } const opDeleteVolume = "DeleteVolume" // DeleteVolumeRequest generates a "aws/request.Request" representing the // client's request for the DeleteVolume operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteVolume for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteVolume method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteVolumeRequest method. // req, resp := client.DeleteVolumeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DeleteVolumeRequest(input *DeleteVolumeInput) (req *request.Request, output *DeleteVolumeOutput) { op := &request.Operation{ Name: opDeleteVolume, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteVolumeInput{} } req = c.newRequest(op, input, output) output = &DeleteVolumeOutput{} req.Data = output return } // DeleteVolume API operation for AWS Storage Gateway. // // Deletes the specified gateway volume that you previously created using the // CreateCachediSCSIVolume or CreateStorediSCSIVolume API. For gateway-stored // volumes, the local disk that was configured as the storage volume is not // deleted. You can reuse the local disk to create another storage volume. // // Before you delete a gateway volume, make sure there are no iSCSI connections // to the volume you are deleting. You should also make sure there is no snapshot // in progress. You can use the Amazon Elastic Compute Cloud (Amazon EC2) API // to query snapshots on the volume you are deleting and check the snapshot // status. For more information, go to DescribeSnapshots (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSnapshots.html) // in the Amazon Elastic Compute Cloud API Reference. // // In the request, you must provide the Amazon Resource Name (ARN) of the storage // volume you want to delete. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DeleteVolume for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DeleteVolume(input *DeleteVolumeInput) (*DeleteVolumeOutput, error) { req, out := c.DeleteVolumeRequest(input) err := req.Send() return out, err } const opDescribeBandwidthRateLimit = "DescribeBandwidthRateLimit" // DescribeBandwidthRateLimitRequest generates a "aws/request.Request" representing the // client's request for the DescribeBandwidthRateLimit operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeBandwidthRateLimit for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeBandwidthRateLimit method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeBandwidthRateLimitRequest method. // req, resp := client.DescribeBandwidthRateLimitRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DescribeBandwidthRateLimitRequest(input *DescribeBandwidthRateLimitInput) (req *request.Request, output *DescribeBandwidthRateLimitOutput) { op := &request.Operation{ Name: opDescribeBandwidthRateLimit, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeBandwidthRateLimitInput{} } req = c.newRequest(op, input, output) output = &DescribeBandwidthRateLimitOutput{} req.Data = output return } // DescribeBandwidthRateLimit API operation for AWS Storage Gateway. // // Returns the bandwidth rate limits of a gateway. By default, these limits // are not set, which means no bandwidth rate limiting is in effect. // // This operation only returns a value for a bandwidth rate limit only if the // limit is set. If no limits are set for the gateway, then this operation returns // only the gateway ARN in the response body. To specify which gateway to describe, // use the Amazon Resource Name (ARN) of the gateway in your request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DescribeBandwidthRateLimit for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DescribeBandwidthRateLimit(input *DescribeBandwidthRateLimitInput) (*DescribeBandwidthRateLimitOutput, error) { req, out := c.DescribeBandwidthRateLimitRequest(input) err := req.Send() return out, err } const opDescribeCache = "DescribeCache" // DescribeCacheRequest generates a "aws/request.Request" representing the // client's request for the DescribeCache operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCache for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCache method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeCacheRequest method. // req, resp := client.DescribeCacheRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DescribeCacheRequest(input *DescribeCacheInput) (req *request.Request, output *DescribeCacheOutput) { op := &request.Operation{ Name: opDescribeCache, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeCacheInput{} } req = c.newRequest(op, input, output) output = &DescribeCacheOutput{} req.Data = output return } // DescribeCache API operation for AWS Storage Gateway. // // Returns information about the cache of a gateway. This operation is supported // only for the gateway-cached volume architecture. // // The response includes disk IDs that are configured as cache, and it includes // the amount of cache allocated and used. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DescribeCache for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DescribeCache(input *DescribeCacheInput) (*DescribeCacheOutput, error) { req, out := c.DescribeCacheRequest(input) err := req.Send() return out, err } const opDescribeCachediSCSIVolumes = "DescribeCachediSCSIVolumes" // DescribeCachediSCSIVolumesRequest generates a "aws/request.Request" representing the // client's request for the DescribeCachediSCSIVolumes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCachediSCSIVolumes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCachediSCSIVolumes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeCachediSCSIVolumesRequest method. // req, resp := client.DescribeCachediSCSIVolumesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DescribeCachediSCSIVolumesRequest(input *DescribeCachediSCSIVolumesInput) (req *request.Request, output *DescribeCachediSCSIVolumesOutput) { op := &request.Operation{ Name: opDescribeCachediSCSIVolumes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeCachediSCSIVolumesInput{} } req = c.newRequest(op, input, output) output = &DescribeCachediSCSIVolumesOutput{} req.Data = output return } // DescribeCachediSCSIVolumes API operation for AWS Storage Gateway. // // Returns a description of the gateway volumes specified in the request. This // operation is supported only for the gateway-cached volume architecture. // // The list of gateway volumes in the request must be from one gateway. In the // response Amazon Storage Gateway returns volume information sorted by volume // Amazon Resource Name (ARN). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DescribeCachediSCSIVolumes for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DescribeCachediSCSIVolumes(input *DescribeCachediSCSIVolumesInput) (*DescribeCachediSCSIVolumesOutput, error) { req, out := c.DescribeCachediSCSIVolumesRequest(input) err := req.Send() return out, err } const opDescribeChapCredentials = "DescribeChapCredentials" // DescribeChapCredentialsRequest generates a "aws/request.Request" representing the // client's request for the DescribeChapCredentials operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeChapCredentials for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeChapCredentials method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeChapCredentialsRequest method. // req, resp := client.DescribeChapCredentialsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DescribeChapCredentialsRequest(input *DescribeChapCredentialsInput) (req *request.Request, output *DescribeChapCredentialsOutput) { op := &request.Operation{ Name: opDescribeChapCredentials, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeChapCredentialsInput{} } req = c.newRequest(op, input, output) output = &DescribeChapCredentialsOutput{} req.Data = output return } // DescribeChapCredentials API operation for AWS Storage Gateway. // // Returns an array of Challenge-Handshake Authentication Protocol (CHAP) credentials // information for a specified iSCSI target, one for each target-initiator pair. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DescribeChapCredentials for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DescribeChapCredentials(input *DescribeChapCredentialsInput) (*DescribeChapCredentialsOutput, error) { req, out := c.DescribeChapCredentialsRequest(input) err := req.Send() return out, err } const opDescribeGatewayInformation = "DescribeGatewayInformation" // DescribeGatewayInformationRequest generates a "aws/request.Request" representing the // client's request for the DescribeGatewayInformation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeGatewayInformation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeGatewayInformation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeGatewayInformationRequest method. // req, resp := client.DescribeGatewayInformationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DescribeGatewayInformationRequest(input *DescribeGatewayInformationInput) (req *request.Request, output *DescribeGatewayInformationOutput) { op := &request.Operation{ Name: opDescribeGatewayInformation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeGatewayInformationInput{} } req = c.newRequest(op, input, output) output = &DescribeGatewayInformationOutput{} req.Data = output return } // DescribeGatewayInformation API operation for AWS Storage Gateway. // // Returns metadata about a gateway such as its name, network interfaces, configured // time zone, and the state (whether the gateway is running or not). To specify // which gateway to describe, use the Amazon Resource Name (ARN) of the gateway // in your request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DescribeGatewayInformation for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DescribeGatewayInformation(input *DescribeGatewayInformationInput) (*DescribeGatewayInformationOutput, error) { req, out := c.DescribeGatewayInformationRequest(input) err := req.Send() return out, err } const opDescribeMaintenanceStartTime = "DescribeMaintenanceStartTime" // DescribeMaintenanceStartTimeRequest generates a "aws/request.Request" representing the // client's request for the DescribeMaintenanceStartTime operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeMaintenanceStartTime for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeMaintenanceStartTime method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeMaintenanceStartTimeRequest method. // req, resp := client.DescribeMaintenanceStartTimeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DescribeMaintenanceStartTimeRequest(input *DescribeMaintenanceStartTimeInput) (req *request.Request, output *DescribeMaintenanceStartTimeOutput) { op := &request.Operation{ Name: opDescribeMaintenanceStartTime, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeMaintenanceStartTimeInput{} } req = c.newRequest(op, input, output) output = &DescribeMaintenanceStartTimeOutput{} req.Data = output return } // DescribeMaintenanceStartTime API operation for AWS Storage Gateway. // // Returns your gateway's weekly maintenance start time including the day and // time of the week. Note that values are in terms of the gateway's time zone. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DescribeMaintenanceStartTime for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DescribeMaintenanceStartTime(input *DescribeMaintenanceStartTimeInput) (*DescribeMaintenanceStartTimeOutput, error) { req, out := c.DescribeMaintenanceStartTimeRequest(input) err := req.Send() return out, err } const opDescribeSnapshotSchedule = "DescribeSnapshotSchedule" // DescribeSnapshotScheduleRequest generates a "aws/request.Request" representing the // client's request for the DescribeSnapshotSchedule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSnapshotSchedule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSnapshotSchedule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSnapshotScheduleRequest method. // req, resp := client.DescribeSnapshotScheduleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DescribeSnapshotScheduleRequest(input *DescribeSnapshotScheduleInput) (req *request.Request, output *DescribeSnapshotScheduleOutput) { op := &request.Operation{ Name: opDescribeSnapshotSchedule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSnapshotScheduleInput{} } req = c.newRequest(op, input, output) output = &DescribeSnapshotScheduleOutput{} req.Data = output return } // DescribeSnapshotSchedule API operation for AWS Storage Gateway. // // Describes the snapshot schedule for the specified gateway volume. The snapshot // schedule information includes intervals at which snapshots are automatically // initiated on the volume. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DescribeSnapshotSchedule for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DescribeSnapshotSchedule(input *DescribeSnapshotScheduleInput) (*DescribeSnapshotScheduleOutput, error) { req, out := c.DescribeSnapshotScheduleRequest(input) err := req.Send() return out, err } const opDescribeStorediSCSIVolumes = "DescribeStorediSCSIVolumes" // DescribeStorediSCSIVolumesRequest generates a "aws/request.Request" representing the // client's request for the DescribeStorediSCSIVolumes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeStorediSCSIVolumes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeStorediSCSIVolumes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeStorediSCSIVolumesRequest method. // req, resp := client.DescribeStorediSCSIVolumesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DescribeStorediSCSIVolumesRequest(input *DescribeStorediSCSIVolumesInput) (req *request.Request, output *DescribeStorediSCSIVolumesOutput) { op := &request.Operation{ Name: opDescribeStorediSCSIVolumes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeStorediSCSIVolumesInput{} } req = c.newRequest(op, input, output) output = &DescribeStorediSCSIVolumesOutput{} req.Data = output return } // DescribeStorediSCSIVolumes API operation for AWS Storage Gateway. // // Returns the description of the gateway volumes specified in the request. // The list of gateway volumes in the request must be from one gateway. In the // response Amazon Storage Gateway returns volume information sorted by volume // ARNs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DescribeStorediSCSIVolumes for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DescribeStorediSCSIVolumes(input *DescribeStorediSCSIVolumesInput) (*DescribeStorediSCSIVolumesOutput, error) { req, out := c.DescribeStorediSCSIVolumesRequest(input) err := req.Send() return out, err } const opDescribeTapeArchives = "DescribeTapeArchives" // DescribeTapeArchivesRequest generates a "aws/request.Request" representing the // client's request for the DescribeTapeArchives operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTapeArchives for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTapeArchives method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTapeArchivesRequest method. // req, resp := client.DescribeTapeArchivesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DescribeTapeArchivesRequest(input *DescribeTapeArchivesInput) (req *request.Request, output *DescribeTapeArchivesOutput) { op := &request.Operation{ Name: opDescribeTapeArchives, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "Limit", TruncationToken: "", }, } if input == nil { input = &DescribeTapeArchivesInput{} } req = c.newRequest(op, input, output) output = &DescribeTapeArchivesOutput{} req.Data = output return } // DescribeTapeArchives API operation for AWS Storage Gateway. // // Returns a description of specified virtual tapes in the virtual tape shelf // (VTS). // // If a specific TapeARN is not specified, AWS Storage Gateway returns a description // of all virtual tapes found in the VTS associated with your account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DescribeTapeArchives for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DescribeTapeArchives(input *DescribeTapeArchivesInput) (*DescribeTapeArchivesOutput, error) { req, out := c.DescribeTapeArchivesRequest(input) err := req.Send() return out, err } // DescribeTapeArchivesPages iterates over the pages of a DescribeTapeArchives operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeTapeArchives method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeTapeArchives operation. // pageNum := 0 // err := client.DescribeTapeArchivesPages(params, // func(page *DescribeTapeArchivesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *StorageGateway) DescribeTapeArchivesPages(input *DescribeTapeArchivesInput, fn func(p *DescribeTapeArchivesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeTapeArchivesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeTapeArchivesOutput), lastPage) }) } const opDescribeTapeRecoveryPoints = "DescribeTapeRecoveryPoints" // DescribeTapeRecoveryPointsRequest generates a "aws/request.Request" representing the // client's request for the DescribeTapeRecoveryPoints operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTapeRecoveryPoints for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTapeRecoveryPoints method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTapeRecoveryPointsRequest method. // req, resp := client.DescribeTapeRecoveryPointsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DescribeTapeRecoveryPointsRequest(input *DescribeTapeRecoveryPointsInput) (req *request.Request, output *DescribeTapeRecoveryPointsOutput) { op := &request.Operation{ Name: opDescribeTapeRecoveryPoints, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "Limit", TruncationToken: "", }, } if input == nil { input = &DescribeTapeRecoveryPointsInput{} } req = c.newRequest(op, input, output) output = &DescribeTapeRecoveryPointsOutput{} req.Data = output return } // DescribeTapeRecoveryPoints API operation for AWS Storage Gateway. // // Returns a list of virtual tape recovery points that are available for the // specified gateway-VTL. // // A recovery point is a point-in-time view of a virtual tape at which all the // data on the virtual tape is consistent. If your gateway crashes, virtual // tapes that have recovery points can be recovered to a new gateway. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DescribeTapeRecoveryPoints for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DescribeTapeRecoveryPoints(input *DescribeTapeRecoveryPointsInput) (*DescribeTapeRecoveryPointsOutput, error) { req, out := c.DescribeTapeRecoveryPointsRequest(input) err := req.Send() return out, err } // DescribeTapeRecoveryPointsPages iterates over the pages of a DescribeTapeRecoveryPoints operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeTapeRecoveryPoints method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeTapeRecoveryPoints operation. // pageNum := 0 // err := client.DescribeTapeRecoveryPointsPages(params, // func(page *DescribeTapeRecoveryPointsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *StorageGateway) DescribeTapeRecoveryPointsPages(input *DescribeTapeRecoveryPointsInput, fn func(p *DescribeTapeRecoveryPointsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeTapeRecoveryPointsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeTapeRecoveryPointsOutput), lastPage) }) } const opDescribeTapes = "DescribeTapes" // DescribeTapesRequest generates a "aws/request.Request" representing the // client's request for the DescribeTapes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTapes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTapes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTapesRequest method. // req, resp := client.DescribeTapesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DescribeTapesRequest(input *DescribeTapesInput) (req *request.Request, output *DescribeTapesOutput) { op := &request.Operation{ Name: opDescribeTapes, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "Limit", TruncationToken: "", }, } if input == nil { input = &DescribeTapesInput{} } req = c.newRequest(op, input, output) output = &DescribeTapesOutput{} req.Data = output return } // DescribeTapes API operation for AWS Storage Gateway. // // Returns a description of the specified Amazon Resource Name (ARN) of virtual // tapes. If a TapeARN is not specified, returns a description of all virtual // tapes associated with the specified gateway. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DescribeTapes for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DescribeTapes(input *DescribeTapesInput) (*DescribeTapesOutput, error) { req, out := c.DescribeTapesRequest(input) err := req.Send() return out, err } // DescribeTapesPages iterates over the pages of a DescribeTapes operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeTapes method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeTapes operation. // pageNum := 0 // err := client.DescribeTapesPages(params, // func(page *DescribeTapesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *StorageGateway) DescribeTapesPages(input *DescribeTapesInput, fn func(p *DescribeTapesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeTapesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeTapesOutput), lastPage) }) } const opDescribeUploadBuffer = "DescribeUploadBuffer" // DescribeUploadBufferRequest generates a "aws/request.Request" representing the // client's request for the DescribeUploadBuffer operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeUploadBuffer for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeUploadBuffer method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeUploadBufferRequest method. // req, resp := client.DescribeUploadBufferRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DescribeUploadBufferRequest(input *DescribeUploadBufferInput) (req *request.Request, output *DescribeUploadBufferOutput) { op := &request.Operation{ Name: opDescribeUploadBuffer, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeUploadBufferInput{} } req = c.newRequest(op, input, output) output = &DescribeUploadBufferOutput{} req.Data = output return } // DescribeUploadBuffer API operation for AWS Storage Gateway. // // Returns information about the upload buffer of a gateway. This operation // is supported for both the gateway-stored and gateway-cached volume architectures. // // The response includes disk IDs that are configured as upload buffer space, // and it includes the amount of upload buffer space allocated and used. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DescribeUploadBuffer for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DescribeUploadBuffer(input *DescribeUploadBufferInput) (*DescribeUploadBufferOutput, error) { req, out := c.DescribeUploadBufferRequest(input) err := req.Send() return out, err } const opDescribeVTLDevices = "DescribeVTLDevices" // DescribeVTLDevicesRequest generates a "aws/request.Request" representing the // client's request for the DescribeVTLDevices operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeVTLDevices for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeVTLDevices method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeVTLDevicesRequest method. // req, resp := client.DescribeVTLDevicesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DescribeVTLDevicesRequest(input *DescribeVTLDevicesInput) (req *request.Request, output *DescribeVTLDevicesOutput) { op := &request.Operation{ Name: opDescribeVTLDevices, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "Limit", TruncationToken: "", }, } if input == nil { input = &DescribeVTLDevicesInput{} } req = c.newRequest(op, input, output) output = &DescribeVTLDevicesOutput{} req.Data = output return } // DescribeVTLDevices API operation for AWS Storage Gateway. // // Returns a description of virtual tape library (VTL) devices for the specified // gateway. In the response, AWS Storage Gateway returns VTL device information. // // The list of VTL devices must be from one gateway. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DescribeVTLDevices for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DescribeVTLDevices(input *DescribeVTLDevicesInput) (*DescribeVTLDevicesOutput, error) { req, out := c.DescribeVTLDevicesRequest(input) err := req.Send() return out, err } // DescribeVTLDevicesPages iterates over the pages of a DescribeVTLDevices operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeVTLDevices method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeVTLDevices operation. // pageNum := 0 // err := client.DescribeVTLDevicesPages(params, // func(page *DescribeVTLDevicesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *StorageGateway) DescribeVTLDevicesPages(input *DescribeVTLDevicesInput, fn func(p *DescribeVTLDevicesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeVTLDevicesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeVTLDevicesOutput), lastPage) }) } const opDescribeWorkingStorage = "DescribeWorkingStorage" // DescribeWorkingStorageRequest generates a "aws/request.Request" representing the // client's request for the DescribeWorkingStorage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeWorkingStorage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeWorkingStorage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeWorkingStorageRequest method. // req, resp := client.DescribeWorkingStorageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DescribeWorkingStorageRequest(input *DescribeWorkingStorageInput) (req *request.Request, output *DescribeWorkingStorageOutput) { op := &request.Operation{ Name: opDescribeWorkingStorage, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeWorkingStorageInput{} } req = c.newRequest(op, input, output) output = &DescribeWorkingStorageOutput{} req.Data = output return } // DescribeWorkingStorage API operation for AWS Storage Gateway. // // Returns information about the working storage of a gateway. This operation // is supported only for the gateway-stored volume architecture. This operation // is deprecated in cached-volumes API version (20120630). Use DescribeUploadBuffer // instead. // // Working storage is also referred to as upload buffer. You can also use the // DescribeUploadBuffer operation to add upload buffer to a stored-volume gateway. // // The response includes disk IDs that are configured as working storage, and // it includes the amount of working storage allocated and used. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DescribeWorkingStorage for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DescribeWorkingStorage(input *DescribeWorkingStorageInput) (*DescribeWorkingStorageOutput, error) { req, out := c.DescribeWorkingStorageRequest(input) err := req.Send() return out, err } const opDisableGateway = "DisableGateway" // DisableGatewayRequest generates a "aws/request.Request" representing the // client's request for the DisableGateway operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DisableGateway for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DisableGateway method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DisableGatewayRequest method. // req, resp := client.DisableGatewayRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) DisableGatewayRequest(input *DisableGatewayInput) (req *request.Request, output *DisableGatewayOutput) { op := &request.Operation{ Name: opDisableGateway, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableGatewayInput{} } req = c.newRequest(op, input, output) output = &DisableGatewayOutput{} req.Data = output return } // DisableGateway API operation for AWS Storage Gateway. // // Disables a gateway when the gateway is no longer functioning. For example, // if your gateway VM is damaged, you can disable the gateway so you can recover // virtual tapes. // // Use this operation for a gateway-VTL that is not reachable or not functioning. // // Once a gateway is disabled it cannot be enabled. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation DisableGateway for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) DisableGateway(input *DisableGatewayInput) (*DisableGatewayOutput, error) { req, out := c.DisableGatewayRequest(input) err := req.Send() return out, err } const opListGateways = "ListGateways" // ListGatewaysRequest generates a "aws/request.Request" representing the // client's request for the ListGateways operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListGateways for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListGateways method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListGatewaysRequest method. // req, resp := client.ListGatewaysRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) ListGatewaysRequest(input *ListGatewaysInput) (req *request.Request, output *ListGatewaysOutput) { op := &request.Operation{ Name: opListGateways, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "Limit", TruncationToken: "", }, } if input == nil { input = &ListGatewaysInput{} } req = c.newRequest(op, input, output) output = &ListGatewaysOutput{} req.Data = output return } // ListGateways API operation for AWS Storage Gateway. // // Lists gateways owned by an AWS account in a region specified in the request. // The returned list is ordered by gateway Amazon Resource Name (ARN). // // By default, the operation returns a maximum of 100 gateways. This operation // supports pagination that allows you to optionally reduce the number of gateways // returned in a response. // // If you have more gateways than are returned in a response (that is, the response // returns only a truncated list of your gateways), the response contains a // marker that you can specify in your next request to fetch the next page of // gateways. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation ListGateways for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) ListGateways(input *ListGatewaysInput) (*ListGatewaysOutput, error) { req, out := c.ListGatewaysRequest(input) err := req.Send() return out, err } // ListGatewaysPages iterates over the pages of a ListGateways operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListGateways method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListGateways operation. // pageNum := 0 // err := client.ListGatewaysPages(params, // func(page *ListGatewaysOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *StorageGateway) ListGatewaysPages(input *ListGatewaysInput, fn func(p *ListGatewaysOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListGatewaysRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListGatewaysOutput), lastPage) }) } const opListLocalDisks = "ListLocalDisks" // ListLocalDisksRequest generates a "aws/request.Request" representing the // client's request for the ListLocalDisks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListLocalDisks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListLocalDisks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListLocalDisksRequest method. // req, resp := client.ListLocalDisksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) ListLocalDisksRequest(input *ListLocalDisksInput) (req *request.Request, output *ListLocalDisksOutput) { op := &request.Operation{ Name: opListLocalDisks, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListLocalDisksInput{} } req = c.newRequest(op, input, output) output = &ListLocalDisksOutput{} req.Data = output return } // ListLocalDisks API operation for AWS Storage Gateway. // // Returns a list of the gateway's local disks. To specify which gateway to // describe, you use the Amazon Resource Name (ARN) of the gateway in the body // of the request. // // The request returns a list of all disks, specifying which are configured // as working storage, cache storage, or stored volume or not configured at // all. The response includes a DiskStatus field. This field can have a value // of present (the disk is available to use), missing (the disk is no longer // connected to the gateway), or mismatch (the disk node is occupied by a disk // that has incorrect metadata or the disk content is corrupted). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation ListLocalDisks for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) ListLocalDisks(input *ListLocalDisksInput) (*ListLocalDisksOutput, error) { req, out := c.ListLocalDisksRequest(input) err := req.Send() return out, err } const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTagsForResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTagsForResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTagsForResourceRequest method. // req, resp := client.ListTagsForResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { op := &request.Operation{ Name: opListTagsForResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListTagsForResourceInput{} } req = c.newRequest(op, input, output) output = &ListTagsForResourceOutput{} req.Data = output return } // ListTagsForResource API operation for AWS Storage Gateway. // // Lists the tags that have been added to the specified resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation ListTagsForResource for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { req, out := c.ListTagsForResourceRequest(input) err := req.Send() return out, err } const opListTapes = "ListTapes" // ListTapesRequest generates a "aws/request.Request" representing the // client's request for the ListTapes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListTapes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListTapes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListTapesRequest method. // req, resp := client.ListTapesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) ListTapesRequest(input *ListTapesInput) (req *request.Request, output *ListTapesOutput) { op := &request.Operation{ Name: opListTapes, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListTapesInput{} } req = c.newRequest(op, input, output) output = &ListTapesOutput{} req.Data = output return } // ListTapes API operation for AWS Storage Gateway. // // Lists virtual tapes in your virtual tape library (VTL) and your virtual tape // shelf (VTS). You specify the tapes to list by specifying one or more tape // Amazon Resource Names (ARNs). If you don't specify a tape ARN, the operation // lists all virtual tapes in both your VTL and VTS. // // This operation supports pagination. By default, the operation returns a maximum // of up to 100 tapes. You can optionally specify the Limit parameter in the // body to limit the number of tapes in the response. If the number of tapes // returned in the response is truncated, the response includes a Marker element // that you can use in your subsequent request to retrieve the next set of tapes. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation ListTapes for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) ListTapes(input *ListTapesInput) (*ListTapesOutput, error) { req, out := c.ListTapesRequest(input) err := req.Send() return out, err } const opListVolumeInitiators = "ListVolumeInitiators" // ListVolumeInitiatorsRequest generates a "aws/request.Request" representing the // client's request for the ListVolumeInitiators operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListVolumeInitiators for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListVolumeInitiators method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListVolumeInitiatorsRequest method. // req, resp := client.ListVolumeInitiatorsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) ListVolumeInitiatorsRequest(input *ListVolumeInitiatorsInput) (req *request.Request, output *ListVolumeInitiatorsOutput) { op := &request.Operation{ Name: opListVolumeInitiators, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListVolumeInitiatorsInput{} } req = c.newRequest(op, input, output) output = &ListVolumeInitiatorsOutput{} req.Data = output return } // ListVolumeInitiators API operation for AWS Storage Gateway. // // Lists iSCSI initiators that are connected to a volume. You can use this operation // to determine whether a volume is being used or not. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation ListVolumeInitiators for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) ListVolumeInitiators(input *ListVolumeInitiatorsInput) (*ListVolumeInitiatorsOutput, error) { req, out := c.ListVolumeInitiatorsRequest(input) err := req.Send() return out, err } const opListVolumeRecoveryPoints = "ListVolumeRecoveryPoints" // ListVolumeRecoveryPointsRequest generates a "aws/request.Request" representing the // client's request for the ListVolumeRecoveryPoints operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListVolumeRecoveryPoints for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListVolumeRecoveryPoints method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListVolumeRecoveryPointsRequest method. // req, resp := client.ListVolumeRecoveryPointsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) ListVolumeRecoveryPointsRequest(input *ListVolumeRecoveryPointsInput) (req *request.Request, output *ListVolumeRecoveryPointsOutput) { op := &request.Operation{ Name: opListVolumeRecoveryPoints, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListVolumeRecoveryPointsInput{} } req = c.newRequest(op, input, output) output = &ListVolumeRecoveryPointsOutput{} req.Data = output return } // ListVolumeRecoveryPoints API operation for AWS Storage Gateway. // // Lists the recovery points for a specified gateway. This operation is supported // only for the gateway-cached volume architecture. // // Each gateway-cached volume has one recovery point. A volume recovery point // is a point in time at which all data of the volume is consistent and from // which you can create a snapshot. To create a snapshot from a volume recovery // point use the CreateSnapshotFromVolumeRecoveryPoint operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation ListVolumeRecoveryPoints for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) ListVolumeRecoveryPoints(input *ListVolumeRecoveryPointsInput) (*ListVolumeRecoveryPointsOutput, error) { req, out := c.ListVolumeRecoveryPointsRequest(input) err := req.Send() return out, err } const opListVolumes = "ListVolumes" // ListVolumesRequest generates a "aws/request.Request" representing the // client's request for the ListVolumes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListVolumes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListVolumes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListVolumesRequest method. // req, resp := client.ListVolumesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) ListVolumesRequest(input *ListVolumesInput) (req *request.Request, output *ListVolumesOutput) { op := &request.Operation{ Name: opListVolumes, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"Marker"}, OutputTokens: []string{"Marker"}, LimitToken: "Limit", TruncationToken: "", }, } if input == nil { input = &ListVolumesInput{} } req = c.newRequest(op, input, output) output = &ListVolumesOutput{} req.Data = output return } // ListVolumes API operation for AWS Storage Gateway. // // Lists the iSCSI stored volumes of a gateway. Results are sorted by volume // ARN. The response includes only the volume ARNs. If you want additional volume // information, use the DescribeStorediSCSIVolumes API. // // The operation supports pagination. By default, the operation returns a maximum // of up to 100 volumes. You can optionally specify the Limit field in the body // to limit the number of volumes in the response. If the number of volumes // returned in the response is truncated, the response includes a Marker field. // You can use this Marker value in your subsequent request to retrieve the // next set of volumes. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation ListVolumes for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) ListVolumes(input *ListVolumesInput) (*ListVolumesOutput, error) { req, out := c.ListVolumesRequest(input) err := req.Send() return out, err } // ListVolumesPages iterates over the pages of a ListVolumes operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListVolumes method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListVolumes operation. // pageNum := 0 // err := client.ListVolumesPages(params, // func(page *ListVolumesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *StorageGateway) ListVolumesPages(input *ListVolumesInput, fn func(p *ListVolumesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListVolumesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListVolumesOutput), lastPage) }) } const opRemoveTagsFromResource = "RemoveTagsFromResource" // RemoveTagsFromResourceRequest generates a "aws/request.Request" representing the // client's request for the RemoveTagsFromResource operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RemoveTagsFromResource for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RemoveTagsFromResource method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RemoveTagsFromResourceRequest method. // req, resp := client.RemoveTagsFromResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) RemoveTagsFromResourceRequest(input *RemoveTagsFromResourceInput) (req *request.Request, output *RemoveTagsFromResourceOutput) { op := &request.Operation{ Name: opRemoveTagsFromResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RemoveTagsFromResourceInput{} } req = c.newRequest(op, input, output) output = &RemoveTagsFromResourceOutput{} req.Data = output return } // RemoveTagsFromResource API operation for AWS Storage Gateway. // // Removes one or more tags from the specified resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation RemoveTagsFromResource for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) RemoveTagsFromResource(input *RemoveTagsFromResourceInput) (*RemoveTagsFromResourceOutput, error) { req, out := c.RemoveTagsFromResourceRequest(input) err := req.Send() return out, err } const opResetCache = "ResetCache" // ResetCacheRequest generates a "aws/request.Request" representing the // client's request for the ResetCache operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ResetCache for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ResetCache method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ResetCacheRequest method. // req, resp := client.ResetCacheRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) ResetCacheRequest(input *ResetCacheInput) (req *request.Request, output *ResetCacheOutput) { op := &request.Operation{ Name: opResetCache, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ResetCacheInput{} } req = c.newRequest(op, input, output) output = &ResetCacheOutput{} req.Data = output return } // ResetCache API operation for AWS Storage Gateway. // // Resets all cache disks that have encountered a error and makes the disks // available for reconfiguration as cache storage. If your cache disk encounters // a error, the gateway prevents read and write operations on virtual tapes // in the gateway. For example, an error can occur when a disk is corrupted // or removed from the gateway. When a cache is reset, the gateway loses its // cache storage. At this point you can reconfigure the disks as cache disks. // // If the cache disk you are resetting contains data that has not been uploaded // to Amazon S3 yet, that data can be lost. After you reset cache disks, there // will be no configured cache disks left in the gateway, so you must configure // at least one new cache disk for your gateway to function properly. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation ResetCache for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) ResetCache(input *ResetCacheInput) (*ResetCacheOutput, error) { req, out := c.ResetCacheRequest(input) err := req.Send() return out, err } const opRetrieveTapeArchive = "RetrieveTapeArchive" // RetrieveTapeArchiveRequest generates a "aws/request.Request" representing the // client's request for the RetrieveTapeArchive operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RetrieveTapeArchive for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RetrieveTapeArchive method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RetrieveTapeArchiveRequest method. // req, resp := client.RetrieveTapeArchiveRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) RetrieveTapeArchiveRequest(input *RetrieveTapeArchiveInput) (req *request.Request, output *RetrieveTapeArchiveOutput) { op := &request.Operation{ Name: opRetrieveTapeArchive, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RetrieveTapeArchiveInput{} } req = c.newRequest(op, input, output) output = &RetrieveTapeArchiveOutput{} req.Data = output return } // RetrieveTapeArchive API operation for AWS Storage Gateway. // // Retrieves an archived virtual tape from the virtual tape shelf (VTS) to a // gateway-VTL. Virtual tapes archived in the VTS are not associated with any // gateway. However after a tape is retrieved, it is associated with a gateway, // even though it is also listed in the VTS. // // Once a tape is successfully retrieved to a gateway, it cannot be retrieved // again to another gateway. You must archive the tape again before you can // retrieve it to another gateway. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation RetrieveTapeArchive for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) RetrieveTapeArchive(input *RetrieveTapeArchiveInput) (*RetrieveTapeArchiveOutput, error) { req, out := c.RetrieveTapeArchiveRequest(input) err := req.Send() return out, err } const opRetrieveTapeRecoveryPoint = "RetrieveTapeRecoveryPoint" // RetrieveTapeRecoveryPointRequest generates a "aws/request.Request" representing the // client's request for the RetrieveTapeRecoveryPoint operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RetrieveTapeRecoveryPoint for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RetrieveTapeRecoveryPoint method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RetrieveTapeRecoveryPointRequest method. // req, resp := client.RetrieveTapeRecoveryPointRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) RetrieveTapeRecoveryPointRequest(input *RetrieveTapeRecoveryPointInput) (req *request.Request, output *RetrieveTapeRecoveryPointOutput) { op := &request.Operation{ Name: opRetrieveTapeRecoveryPoint, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RetrieveTapeRecoveryPointInput{} } req = c.newRequest(op, input, output) output = &RetrieveTapeRecoveryPointOutput{} req.Data = output return } // RetrieveTapeRecoveryPoint API operation for AWS Storage Gateway. // // Retrieves the recovery point for the specified virtual tape. // // A recovery point is a point in time view of a virtual tape at which all the // data on the tape is consistent. If your gateway crashes, virtual tapes that // have recovery points can be recovered to a new gateway. // // The virtual tape can be retrieved to only one gateway. The retrieved tape // is read-only. The virtual tape can be retrieved to only a gateway-VTL. There // is no charge for retrieving recovery points. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation RetrieveTapeRecoveryPoint for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) RetrieveTapeRecoveryPoint(input *RetrieveTapeRecoveryPointInput) (*RetrieveTapeRecoveryPointOutput, error) { req, out := c.RetrieveTapeRecoveryPointRequest(input) err := req.Send() return out, err } const opSetLocalConsolePassword = "SetLocalConsolePassword" // SetLocalConsolePasswordRequest generates a "aws/request.Request" representing the // client's request for the SetLocalConsolePassword operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SetLocalConsolePassword for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SetLocalConsolePassword method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SetLocalConsolePasswordRequest method. // req, resp := client.SetLocalConsolePasswordRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) SetLocalConsolePasswordRequest(input *SetLocalConsolePasswordInput) (req *request.Request, output *SetLocalConsolePasswordOutput) { op := &request.Operation{ Name: opSetLocalConsolePassword, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SetLocalConsolePasswordInput{} } req = c.newRequest(op, input, output) output = &SetLocalConsolePasswordOutput{} req.Data = output return } // SetLocalConsolePassword API operation for AWS Storage Gateway. // // Sets the password for your VM local console. When you log in to the local // console for the first time, you log in to the VM with the default credentials. // We recommend that you set a new password. You don't need to know the default // password to set a new password. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation SetLocalConsolePassword for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) SetLocalConsolePassword(input *SetLocalConsolePasswordInput) (*SetLocalConsolePasswordOutput, error) { req, out := c.SetLocalConsolePasswordRequest(input) err := req.Send() return out, err } const opShutdownGateway = "ShutdownGateway" // ShutdownGatewayRequest generates a "aws/request.Request" representing the // client's request for the ShutdownGateway operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ShutdownGateway for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ShutdownGateway method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ShutdownGatewayRequest method. // req, resp := client.ShutdownGatewayRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) ShutdownGatewayRequest(input *ShutdownGatewayInput) (req *request.Request, output *ShutdownGatewayOutput) { op := &request.Operation{ Name: opShutdownGateway, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ShutdownGatewayInput{} } req = c.newRequest(op, input, output) output = &ShutdownGatewayOutput{} req.Data = output return } // ShutdownGateway API operation for AWS Storage Gateway. // // Shuts down a gateway. To specify which gateway to shut down, use the Amazon // Resource Name (ARN) of the gateway in the body of your request. // // The operation shuts down the gateway service component running in the storage // gateway's virtual machine (VM) and not the VM. // // If you want to shut down the VM, it is recommended that you first shut down // the gateway component in the VM to avoid unpredictable conditions. // // After the gateway is shutdown, you cannot call any other API except StartGateway, // DescribeGatewayInformation, and ListGateways. For more information, see ActivateGateway. // Your applications cannot read from or write to the gateway's storage volumes, // and there are no snapshots taken. // // When you make a shutdown request, you will get a 200 OK success response // immediately. However, it might take some time for the gateway to shut down. // You can call the DescribeGatewayInformation API to check the status. For // more information, see ActivateGateway. // // If do not intend to use the gateway again, you must delete the gateway (using // DeleteGateway) to no longer pay software charges associated with the gateway. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation ShutdownGateway for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) ShutdownGateway(input *ShutdownGatewayInput) (*ShutdownGatewayOutput, error) { req, out := c.ShutdownGatewayRequest(input) err := req.Send() return out, err } const opStartGateway = "StartGateway" // StartGatewayRequest generates a "aws/request.Request" representing the // client's request for the StartGateway operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StartGateway for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StartGateway method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StartGatewayRequest method. // req, resp := client.StartGatewayRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) StartGatewayRequest(input *StartGatewayInput) (req *request.Request, output *StartGatewayOutput) { op := &request.Operation{ Name: opStartGateway, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartGatewayInput{} } req = c.newRequest(op, input, output) output = &StartGatewayOutput{} req.Data = output return } // StartGateway API operation for AWS Storage Gateway. // // Starts a gateway that you previously shut down (see ShutdownGateway). After // the gateway starts, you can then make other API calls, your applications // can read from or write to the gateway's storage volumes and you will be able // to take snapshot backups. // // When you make a request, you will get a 200 OK success response immediately. // However, it might take some time for the gateway to be ready. You should // call DescribeGatewayInformation and check the status before making any additional // API calls. For more information, see ActivateGateway. // // To specify which gateway to start, use the Amazon Resource Name (ARN) of // the gateway in your request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation StartGateway for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) StartGateway(input *StartGatewayInput) (*StartGatewayOutput, error) { req, out := c.StartGatewayRequest(input) err := req.Send() return out, err } const opUpdateBandwidthRateLimit = "UpdateBandwidthRateLimit" // UpdateBandwidthRateLimitRequest generates a "aws/request.Request" representing the // client's request for the UpdateBandwidthRateLimit operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateBandwidthRateLimit for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateBandwidthRateLimit method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateBandwidthRateLimitRequest method. // req, resp := client.UpdateBandwidthRateLimitRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) UpdateBandwidthRateLimitRequest(input *UpdateBandwidthRateLimitInput) (req *request.Request, output *UpdateBandwidthRateLimitOutput) { op := &request.Operation{ Name: opUpdateBandwidthRateLimit, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateBandwidthRateLimitInput{} } req = c.newRequest(op, input, output) output = &UpdateBandwidthRateLimitOutput{} req.Data = output return } // UpdateBandwidthRateLimit API operation for AWS Storage Gateway. // // Updates the bandwidth rate limits of a gateway. You can update both the upload // and download bandwidth rate limit or specify only one of the two. If you // don't set a bandwidth rate limit, the existing rate limit remains. // // By default, a gateway's bandwidth rate limits are not set. If you don't set // any limit, the gateway does not have any limitations on its bandwidth usage // and could potentially use the maximum available bandwidth. // // To specify which gateway to update, use the Amazon Resource Name (ARN) of // the gateway in your request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation UpdateBandwidthRateLimit for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) UpdateBandwidthRateLimit(input *UpdateBandwidthRateLimitInput) (*UpdateBandwidthRateLimitOutput, error) { req, out := c.UpdateBandwidthRateLimitRequest(input) err := req.Send() return out, err } const opUpdateChapCredentials = "UpdateChapCredentials" // UpdateChapCredentialsRequest generates a "aws/request.Request" representing the // client's request for the UpdateChapCredentials operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateChapCredentials for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateChapCredentials method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateChapCredentialsRequest method. // req, resp := client.UpdateChapCredentialsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) UpdateChapCredentialsRequest(input *UpdateChapCredentialsInput) (req *request.Request, output *UpdateChapCredentialsOutput) { op := &request.Operation{ Name: opUpdateChapCredentials, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateChapCredentialsInput{} } req = c.newRequest(op, input, output) output = &UpdateChapCredentialsOutput{} req.Data = output return } // UpdateChapCredentials API operation for AWS Storage Gateway. // // Updates the Challenge-Handshake Authentication Protocol (CHAP) credentials // for a specified iSCSI target. By default, a gateway does not have CHAP enabled; // however, for added security, you might use it. // // When you update CHAP credentials, all existing connections on the target // are closed and initiators must reconnect with the new credentials. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation UpdateChapCredentials for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) UpdateChapCredentials(input *UpdateChapCredentialsInput) (*UpdateChapCredentialsOutput, error) { req, out := c.UpdateChapCredentialsRequest(input) err := req.Send() return out, err } const opUpdateGatewayInformation = "UpdateGatewayInformation" // UpdateGatewayInformationRequest generates a "aws/request.Request" representing the // client's request for the UpdateGatewayInformation operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateGatewayInformation for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateGatewayInformation method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateGatewayInformationRequest method. // req, resp := client.UpdateGatewayInformationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) UpdateGatewayInformationRequest(input *UpdateGatewayInformationInput) (req *request.Request, output *UpdateGatewayInformationOutput) { op := &request.Operation{ Name: opUpdateGatewayInformation, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateGatewayInformationInput{} } req = c.newRequest(op, input, output) output = &UpdateGatewayInformationOutput{} req.Data = output return } // UpdateGatewayInformation API operation for AWS Storage Gateway. // // Updates a gateway's metadata, which includes the gateway's name and time // zone. To specify which gateway to update, use the Amazon Resource Name (ARN) // of the gateway in your request. // // For Gateways activated after September 2, 2015, the gateway's ARN contains // the gateway ID rather than the gateway name. However, changing the name of // the gateway has no effect on the gateway's ARN. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation UpdateGatewayInformation for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) UpdateGatewayInformation(input *UpdateGatewayInformationInput) (*UpdateGatewayInformationOutput, error) { req, out := c.UpdateGatewayInformationRequest(input) err := req.Send() return out, err } const opUpdateGatewaySoftwareNow = "UpdateGatewaySoftwareNow" // UpdateGatewaySoftwareNowRequest generates a "aws/request.Request" representing the // client's request for the UpdateGatewaySoftwareNow operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateGatewaySoftwareNow for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateGatewaySoftwareNow method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateGatewaySoftwareNowRequest method. // req, resp := client.UpdateGatewaySoftwareNowRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) UpdateGatewaySoftwareNowRequest(input *UpdateGatewaySoftwareNowInput) (req *request.Request, output *UpdateGatewaySoftwareNowOutput) { op := &request.Operation{ Name: opUpdateGatewaySoftwareNow, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateGatewaySoftwareNowInput{} } req = c.newRequest(op, input, output) output = &UpdateGatewaySoftwareNowOutput{} req.Data = output return } // UpdateGatewaySoftwareNow API operation for AWS Storage Gateway. // // Updates the gateway virtual machine (VM) software. The request immediately // triggers the software update. // // When you make this request, you get a 200 OK success response immediately. // However, it might take some time for the update to complete. You can call // DescribeGatewayInformation to verify the gateway is in the STATE_RUNNING // state. // // A software update forces a system restart of your gateway. You can minimize // the chance of any disruption to your applications by increasing your iSCSI // Initiators' timeouts. For more information about increasing iSCSI Initiator // timeouts for Windows and Linux, see Customizing Your Windows iSCSI Settings // (http://docs.aws.amazon.com/storagegateway/latest/userguide/ConfiguringiSCSIClientInitiatorWindowsClient.html#CustomizeWindowsiSCSISettings) // and Customizing Your Linux iSCSI Settings (http://docs.aws.amazon.com/storagegateway/latest/userguide/ConfiguringiSCSIClientInitiatorRedHatClient.html#CustomizeLinuxiSCSISettings), // respectively. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation UpdateGatewaySoftwareNow for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) UpdateGatewaySoftwareNow(input *UpdateGatewaySoftwareNowInput) (*UpdateGatewaySoftwareNowOutput, error) { req, out := c.UpdateGatewaySoftwareNowRequest(input) err := req.Send() return out, err } const opUpdateMaintenanceStartTime = "UpdateMaintenanceStartTime" // UpdateMaintenanceStartTimeRequest generates a "aws/request.Request" representing the // client's request for the UpdateMaintenanceStartTime operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateMaintenanceStartTime for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateMaintenanceStartTime method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateMaintenanceStartTimeRequest method. // req, resp := client.UpdateMaintenanceStartTimeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) UpdateMaintenanceStartTimeRequest(input *UpdateMaintenanceStartTimeInput) (req *request.Request, output *UpdateMaintenanceStartTimeOutput) { op := &request.Operation{ Name: opUpdateMaintenanceStartTime, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateMaintenanceStartTimeInput{} } req = c.newRequest(op, input, output) output = &UpdateMaintenanceStartTimeOutput{} req.Data = output return } // UpdateMaintenanceStartTime API operation for AWS Storage Gateway. // // Updates a gateway's weekly maintenance start time information, including // day and time of the week. The maintenance time is the time in your gateway's // time zone. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation UpdateMaintenanceStartTime for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) UpdateMaintenanceStartTime(input *UpdateMaintenanceStartTimeInput) (*UpdateMaintenanceStartTimeOutput, error) { req, out := c.UpdateMaintenanceStartTimeRequest(input) err := req.Send() return out, err } const opUpdateSnapshotSchedule = "UpdateSnapshotSchedule" // UpdateSnapshotScheduleRequest generates a "aws/request.Request" representing the // client's request for the UpdateSnapshotSchedule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateSnapshotSchedule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateSnapshotSchedule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateSnapshotScheduleRequest method. // req, resp := client.UpdateSnapshotScheduleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) UpdateSnapshotScheduleRequest(input *UpdateSnapshotScheduleInput) (req *request.Request, output *UpdateSnapshotScheduleOutput) { op := &request.Operation{ Name: opUpdateSnapshotSchedule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateSnapshotScheduleInput{} } req = c.newRequest(op, input, output) output = &UpdateSnapshotScheduleOutput{} req.Data = output return } // UpdateSnapshotSchedule API operation for AWS Storage Gateway. // // Updates a snapshot schedule configured for a gateway volume. // // The default snapshot schedule for volume is once every 24 hours, starting // at the creation time of the volume. You can use this API to change the snapshot // schedule configured for the volume. // // In the request you must identify the gateway volume whose snapshot schedule // you want to update, and the schedule information, including when you want // the snapshot to begin on a day and the frequency (in hours) of snapshots. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation UpdateSnapshotSchedule for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) UpdateSnapshotSchedule(input *UpdateSnapshotScheduleInput) (*UpdateSnapshotScheduleOutput, error) { req, out := c.UpdateSnapshotScheduleRequest(input) err := req.Send() return out, err } const opUpdateVTLDeviceType = "UpdateVTLDeviceType" // UpdateVTLDeviceTypeRequest generates a "aws/request.Request" representing the // client's request for the UpdateVTLDeviceType operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateVTLDeviceType for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateVTLDeviceType method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateVTLDeviceTypeRequest method. // req, resp := client.UpdateVTLDeviceTypeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *StorageGateway) UpdateVTLDeviceTypeRequest(input *UpdateVTLDeviceTypeInput) (req *request.Request, output *UpdateVTLDeviceTypeOutput) { op := &request.Operation{ Name: opUpdateVTLDeviceType, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateVTLDeviceTypeInput{} } req = c.newRequest(op, input, output) output = &UpdateVTLDeviceTypeOutput{} req.Data = output return } // UpdateVTLDeviceType API operation for AWS Storage Gateway. // // Updates the type of medium changer in a gateway-VTL. When you activate a // gateway-VTL, you select a medium changer type for the gateway-VTL. This operation // enables you to select a different type of medium changer after a gateway-VTL // is activated. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Storage Gateway's // API operation UpdateVTLDeviceType for usage and error information. // // Returned Error Codes: // * InvalidGatewayRequestException // An exception occurred because an invalid gateway request was issued to the // service. For more information, see the error and message fields. // // * InternalServerError // An internal server error has occurred during the request. For more information, // see the error and message fields. // func (c *StorageGateway) UpdateVTLDeviceType(input *UpdateVTLDeviceTypeInput) (*UpdateVTLDeviceTypeOutput, error) { req, out := c.UpdateVTLDeviceTypeRequest(input) err := req.Send() return out, err } // A JSON object containing one or more of the following fields: // // * ActivateGatewayInput$ActivationKey // // * ActivateGatewayInput$GatewayName // // * ActivateGatewayInput$GatewayRegion // // * ActivateGatewayInput$GatewayTimezone // // * ActivateGatewayInput$GatewayType // // * ActivateGatewayInput$TapeDriveType // // * ActivateGatewayInput$MediumChangerType type ActivateGatewayInput struct { _ struct{} `type:"structure"` // Your gateway activation key. You can obtain the activation key by sending // an HTTP GET request with redirects enabled to the gateway IP address (port // 80). The redirect URL returned in the response provides you the activation // key for your gateway in the query string parameter activationKey. It may // also include other activation-related parameters, however, these are merely // defaults -- the arguments you pass to the ActivateGateway API call determine // the actual configuration of your gateway. // // ActivationKey is a required field ActivationKey *string `min:"1" type:"string" required:"true"` // The name you configured for your gateway. // // GatewayName is a required field GatewayName *string `min:"2" type:"string" required:"true"` // A value that indicates the region where you want to store the snapshot backups. // The gateway region specified must be the same region as the region in your // Host header in the request. For more information about available regions // and endpoints for AWS Storage Gateway, see Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html#sg_region) // in the Amazon Web Services Glossary. // // Valid Values: "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", // "ap-northeast-1", "ap-northeast-2", "ap-southeast-1", "ap-southeast-2", "sa-east-1" // // GatewayRegion is a required field GatewayRegion *string `min:"1" type:"string" required:"true"` // A value that indicates the time zone you want to set for the gateway. The // time zone is used, for example, for scheduling snapshots and your gateway's // maintenance schedule. // // GatewayTimezone is a required field GatewayTimezone *string `min:"3" type:"string" required:"true"` // A value that defines the type of gateway to activate. The type specified // is critical to all later functions of the gateway and cannot be changed after // activation. The default value is STORED. GatewayType *string `min:"2" type:"string"` // The value that indicates the type of medium changer to use for gateway-VTL. // This field is optional. // // Valid Values: "STK-L700", "AWS-Gateway-VTL" MediumChangerType *string `min:"2" type:"string"` // The value that indicates the type of tape drive to use for gateway-VTL. This // field is optional. // // Valid Values: "IBM-ULT3580-TD5" TapeDriveType *string `min:"2" type:"string"` } // String returns the string representation func (s ActivateGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActivateGatewayInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ActivateGatewayInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ActivateGatewayInput"} if s.ActivationKey == nil { invalidParams.Add(request.NewErrParamRequired("ActivationKey")) } if s.ActivationKey != nil && len(*s.ActivationKey) < 1 { invalidParams.Add(request.NewErrParamMinLen("ActivationKey", 1)) } if s.GatewayName == nil { invalidParams.Add(request.NewErrParamRequired("GatewayName")) } if s.GatewayName != nil && len(*s.GatewayName) < 2 { invalidParams.Add(request.NewErrParamMinLen("GatewayName", 2)) } if s.GatewayRegion == nil { invalidParams.Add(request.NewErrParamRequired("GatewayRegion")) } if s.GatewayRegion != nil && len(*s.GatewayRegion) < 1 { invalidParams.Add(request.NewErrParamMinLen("GatewayRegion", 1)) } if s.GatewayTimezone == nil { invalidParams.Add(request.NewErrParamRequired("GatewayTimezone")) } if s.GatewayTimezone != nil && len(*s.GatewayTimezone) < 3 { invalidParams.Add(request.NewErrParamMinLen("GatewayTimezone", 3)) } if s.GatewayType != nil && len(*s.GatewayType) < 2 { invalidParams.Add(request.NewErrParamMinLen("GatewayType", 2)) } if s.MediumChangerType != nil && len(*s.MediumChangerType) < 2 { invalidParams.Add(request.NewErrParamMinLen("MediumChangerType", 2)) } if s.TapeDriveType != nil && len(*s.TapeDriveType) < 2 { invalidParams.Add(request.NewErrParamMinLen("TapeDriveType", 2)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // AWS Storage Gateway returns the Amazon Resource Name (ARN) of the activated // gateway. It is a string made of information such as your account, gateway // name, and region. This ARN is used to reference the gateway in other API // operations as well as resource-based authorization. // // For gateways activated prior to September 02, 2015 the gateway ARN contains // the gateway name rather than the gateway id. Changing the name of the gateway // has no effect on the gateway ARN. type ActivateGatewayOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` } // String returns the string representation func (s ActivateGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActivateGatewayOutput) GoString() string { return s.String() } type AddCacheInput struct { _ struct{} `type:"structure"` // DiskIds is a required field DiskIds []*string `type:"list" required:"true"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s AddCacheInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddCacheInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddCacheInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddCacheInput"} if s.DiskIds == nil { invalidParams.Add(request.NewErrParamRequired("DiskIds")) } if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddCacheOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` } // String returns the string representation func (s AddCacheOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddCacheOutput) GoString() string { return s.String() } // AddTagsToResourceInput type AddTagsToResourceInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the resource you want to add tags to. // // ResourceARN is a required field ResourceARN *string `min:"50" type:"string" required:"true"` // The key-value pair that represents the tag you want to add to the resource. // The value can be an empty string. // // Valid characters for key and value are letters, spaces, and numbers representable // in UTF-8 format, and the following special characters: + - = . _ : / @. // // Tags is a required field Tags []*Tag `type:"list" required:"true"` } // String returns the string representation func (s AddTagsToResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddTagsToResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddTagsToResourceInput"} if s.ResourceARN == nil { invalidParams.Add(request.NewErrParamRequired("ResourceARN")) } if s.ResourceARN != nil && len(*s.ResourceARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 50)) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // AddTagsToResourceOutput type AddTagsToResourceOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the resource you want to add tags to. ResourceARN *string `min:"50" type:"string"` } // String returns the string representation func (s AddTagsToResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddTagsToResourceOutput) GoString() string { return s.String() } type AddUploadBufferInput struct { _ struct{} `type:"structure"` // DiskIds is a required field DiskIds []*string `type:"list" required:"true"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s AddUploadBufferInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddUploadBufferInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddUploadBufferInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddUploadBufferInput"} if s.DiskIds == nil { invalidParams.Add(request.NewErrParamRequired("DiskIds")) } if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type AddUploadBufferOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` } // String returns the string representation func (s AddUploadBufferOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddUploadBufferOutput) GoString() string { return s.String() } // A JSON object containing one or more of the following fields: // // * AddWorkingStorageInput$DiskIds type AddWorkingStorageInput struct { _ struct{} `type:"structure"` // An array of strings that identify disks that are to be configured as working // storage. Each string have a minimum length of 1 and maximum length of 300. // You can get the disk IDs from the ListLocalDisks API. // // DiskIds is a required field DiskIds []*string `type:"list" required:"true"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s AddWorkingStorageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddWorkingStorageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddWorkingStorageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddWorkingStorageInput"} if s.DiskIds == nil { invalidParams.Add(request.NewErrParamRequired("DiskIds")) } if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the of the gateway for which working storage was // configured. type AddWorkingStorageOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` } // String returns the string representation func (s AddWorkingStorageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddWorkingStorageOutput) GoString() string { return s.String() } type CachediSCSIVolume struct { _ struct{} `type:"structure"` SourceSnapshotId *string `type:"string"` VolumeARN *string `min:"50" type:"string"` VolumeId *string `min:"12" type:"string"` VolumeProgress *float64 `type:"double"` VolumeSizeInBytes *int64 `type:"long"` VolumeStatus *string `min:"3" type:"string"` VolumeType *string `min:"3" type:"string"` // Lists iSCSI information about a volume. VolumeiSCSIAttributes *VolumeiSCSIAttributes `type:"structure"` } // String returns the string representation func (s CachediSCSIVolume) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CachediSCSIVolume) GoString() string { return s.String() } // CancelArchivalInput type CancelArchivalInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the virtual tape you want to cancel archiving // for. // // TapeARN is a required field TapeARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s CancelArchivalInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelArchivalInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CancelArchivalInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelArchivalInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if s.TapeARN == nil { invalidParams.Add(request.NewErrParamRequired("TapeARN")) } if s.TapeARN != nil && len(*s.TapeARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("TapeARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // CancelArchivalOutput type CancelArchivalOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the virtual tape for which archiving was // canceled. TapeARN *string `min:"50" type:"string"` } // String returns the string representation func (s CancelArchivalOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelArchivalOutput) GoString() string { return s.String() } // CancelRetrievalInput type CancelRetrievalInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the virtual tape you want to cancel retrieval // for. // // TapeARN is a required field TapeARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s CancelRetrievalInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelRetrievalInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CancelRetrievalInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelRetrievalInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if s.TapeARN == nil { invalidParams.Add(request.NewErrParamRequired("TapeARN")) } if s.TapeARN != nil && len(*s.TapeARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("TapeARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // CancelRetrievalOutput type CancelRetrievalOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the virtual tape for which retrieval was // canceled. TapeARN *string `min:"50" type:"string"` } // String returns the string representation func (s CancelRetrievalOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelRetrievalOutput) GoString() string { return s.String() } // Describes Challenge-Handshake Authentication Protocol (CHAP) information // that supports authentication between your gateway and iSCSI initiators. type ChapInfo struct { _ struct{} `type:"structure"` // The iSCSI initiator that connects to the target. InitiatorName *string `min:"1" type:"string"` // The secret key that the initiator (for example, the Windows client) must // provide to participate in mutual CHAP with the target. SecretToAuthenticateInitiator *string `min:"1" type:"string"` // The secret key that the target must provide to participate in mutual CHAP // with the initiator (e.g. Windows client). SecretToAuthenticateTarget *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of the volume. // // Valid Values: 50 to 500 lowercase letters, numbers, periods (.), and hyphens // (-). TargetARN *string `min:"50" type:"string"` } // String returns the string representation func (s ChapInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChapInfo) GoString() string { return s.String() } type CreateCachediSCSIVolumeInput struct { _ struct{} `type:"structure"` // ClientToken is a required field ClientToken *string `min:"5" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` // NetworkInterfaceId is a required field NetworkInterfaceId *string `type:"string" required:"true"` SnapshotId *string `type:"string"` // TargetName is a required field TargetName *string `min:"1" type:"string" required:"true"` // VolumeSizeInBytes is a required field VolumeSizeInBytes *int64 `type:"long" required:"true"` } // String returns the string representation func (s CreateCachediSCSIVolumeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCachediSCSIVolumeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateCachediSCSIVolumeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateCachediSCSIVolumeInput"} if s.ClientToken == nil { invalidParams.Add(request.NewErrParamRequired("ClientToken")) } if s.ClientToken != nil && len(*s.ClientToken) < 5 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 5)) } if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if s.NetworkInterfaceId == nil { invalidParams.Add(request.NewErrParamRequired("NetworkInterfaceId")) } if s.TargetName == nil { invalidParams.Add(request.NewErrParamRequired("TargetName")) } if s.TargetName != nil && len(*s.TargetName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TargetName", 1)) } if s.VolumeSizeInBytes == nil { invalidParams.Add(request.NewErrParamRequired("VolumeSizeInBytes")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateCachediSCSIVolumeOutput struct { _ struct{} `type:"structure"` TargetARN *string `min:"50" type:"string"` VolumeARN *string `min:"50" type:"string"` } // String returns the string representation func (s CreateCachediSCSIVolumeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCachediSCSIVolumeOutput) GoString() string { return s.String() } type CreateSnapshotFromVolumeRecoveryPointInput struct { _ struct{} `type:"structure"` // SnapshotDescription is a required field SnapshotDescription *string `min:"1" type:"string" required:"true"` // VolumeARN is a required field VolumeARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s CreateSnapshotFromVolumeRecoveryPointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSnapshotFromVolumeRecoveryPointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateSnapshotFromVolumeRecoveryPointInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateSnapshotFromVolumeRecoveryPointInput"} if s.SnapshotDescription == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotDescription")) } if s.SnapshotDescription != nil && len(*s.SnapshotDescription) < 1 { invalidParams.Add(request.NewErrParamMinLen("SnapshotDescription", 1)) } if s.VolumeARN == nil { invalidParams.Add(request.NewErrParamRequired("VolumeARN")) } if s.VolumeARN != nil && len(*s.VolumeARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("VolumeARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateSnapshotFromVolumeRecoveryPointOutput struct { _ struct{} `type:"structure"` SnapshotId *string `type:"string"` VolumeARN *string `min:"50" type:"string"` VolumeRecoveryPointTime *string `type:"string"` } // String returns the string representation func (s CreateSnapshotFromVolumeRecoveryPointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSnapshotFromVolumeRecoveryPointOutput) GoString() string { return s.String() } // A JSON object containing one or more of the following fields: // // * CreateSnapshotInput$SnapshotDescription // // * CreateSnapshotInput$VolumeARN type CreateSnapshotInput struct { _ struct{} `type:"structure"` // Textual description of the snapshot that appears in the Amazon EC2 console, // Elastic Block Store snapshots panel in the Description field, and in the // AWS Storage Gateway snapshot Details pane, Description field // // SnapshotDescription is a required field SnapshotDescription *string `min:"1" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the volume. Use the ListVolumes operation // to return a list of gateway volumes. // // VolumeARN is a required field VolumeARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s CreateSnapshotInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSnapshotInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateSnapshotInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateSnapshotInput"} if s.SnapshotDescription == nil { invalidParams.Add(request.NewErrParamRequired("SnapshotDescription")) } if s.SnapshotDescription != nil && len(*s.SnapshotDescription) < 1 { invalidParams.Add(request.NewErrParamMinLen("SnapshotDescription", 1)) } if s.VolumeARN == nil { invalidParams.Add(request.NewErrParamRequired("VolumeARN")) } if s.VolumeARN != nil && len(*s.VolumeARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("VolumeARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the following fields: type CreateSnapshotOutput struct { _ struct{} `type:"structure"` // The snapshot ID that is used to refer to the snapshot in future operations // such as describing snapshots (Amazon Elastic Compute Cloud API DescribeSnapshots) // or creating a volume from a snapshot (CreateStorediSCSIVolume). SnapshotId *string `type:"string"` // The Amazon Resource Name (ARN) of the volume of which the snapshot was taken. VolumeARN *string `min:"50" type:"string"` } // String returns the string representation func (s CreateSnapshotOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSnapshotOutput) GoString() string { return s.String() } // A JSON object containing one or more of the following fields: // // * CreateStorediSCSIVolumeInput$DiskId // // * CreateStorediSCSIVolumeInput$NetworkInterfaceId // // * CreateStorediSCSIVolumeInput$PreserveExistingData // // * CreateStorediSCSIVolumeInput$SnapshotId // // * CreateStorediSCSIVolumeInput$TargetName type CreateStorediSCSIVolumeInput struct { _ struct{} `type:"structure"` // The unique identifier for the gateway local disk that is configured as a // stored volume. Use ListLocalDisks (http://docs.aws.amazon.com/storagegateway/latest/userguide/API_ListLocalDisks.html) // to list disk IDs for a gateway. // // DiskId is a required field DiskId *string `min:"1" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` // The network interface of the gateway on which to expose the iSCSI target. // Only IPv4 addresses are accepted. Use DescribeGatewayInformation to get a // list of the network interfaces available on a gateway. // // Valid Values: A valid IP address. // // NetworkInterfaceId is a required field NetworkInterfaceId *string `type:"string" required:"true"` // Specify this field as true if you want to preserve the data on the local // disk. Otherwise, specifying this field as false creates an empty volume. // // Valid Values: true, false // // PreserveExistingData is a required field PreserveExistingData *bool `type:"boolean" required:"true"` // The snapshot ID (e.g. "snap-1122aabb") of the snapshot to restore as the // new stored volume. Specify this field if you want to create the iSCSI storage // volume from a snapshot otherwise do not include this field. To list snapshots // for your account use DescribeSnapshots (http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeSnapshots.html) // in the Amazon Elastic Compute Cloud API Reference. SnapshotId *string `type:"string"` // The name of the iSCSI target used by initiators to connect to the target // and as a suffix for the target ARN. For example, specifying TargetName as // myvolume results in the target ARN of arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume. // The target name must be unique across all volumes of a gateway. // // TargetName is a required field TargetName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateStorediSCSIVolumeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateStorediSCSIVolumeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateStorediSCSIVolumeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateStorediSCSIVolumeInput"} if s.DiskId == nil { invalidParams.Add(request.NewErrParamRequired("DiskId")) } if s.DiskId != nil && len(*s.DiskId) < 1 { invalidParams.Add(request.NewErrParamMinLen("DiskId", 1)) } if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if s.NetworkInterfaceId == nil { invalidParams.Add(request.NewErrParamRequired("NetworkInterfaceId")) } if s.PreserveExistingData == nil { invalidParams.Add(request.NewErrParamRequired("PreserveExistingData")) } if s.TargetName == nil { invalidParams.Add(request.NewErrParamRequired("TargetName")) } if s.TargetName != nil && len(*s.TargetName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TargetName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the following fields: type CreateStorediSCSIVolumeOutput struct { _ struct{} `type:"structure"` // he Amazon Resource Name (ARN) of the volume target that includes the iSCSI // name that initiators can use to connect to the target. TargetARN *string `min:"50" type:"string"` // The Amazon Resource Name (ARN) of the configured volume. VolumeARN *string `min:"50" type:"string"` // The size of the volume in bytes. VolumeSizeInBytes *int64 `type:"long"` } // String returns the string representation func (s CreateStorediSCSIVolumeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateStorediSCSIVolumeOutput) GoString() string { return s.String() } // CreateTapeWithBarcodeInput type CreateTapeWithBarcodeInput struct { _ struct{} `type:"structure"` // The unique Amazon Resource Name (ARN) that represents the gateway to associate // the virtual tape with. Use the ListGateways operation to return a list of // gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` // The barcode that you want to assign to the tape. // // TapeBarcode is a required field TapeBarcode *string `min:"7" type:"string" required:"true"` // The size, in bytes, of the virtual tape that you want to create. // // The size must be aligned by gigabyte (1024*1024*1024 byte). // // TapeSizeInBytes is a required field TapeSizeInBytes *int64 `type:"long" required:"true"` } // String returns the string representation func (s CreateTapeWithBarcodeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTapeWithBarcodeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateTapeWithBarcodeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateTapeWithBarcodeInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if s.TapeBarcode == nil { invalidParams.Add(request.NewErrParamRequired("TapeBarcode")) } if s.TapeBarcode != nil && len(*s.TapeBarcode) < 7 { invalidParams.Add(request.NewErrParamMinLen("TapeBarcode", 7)) } if s.TapeSizeInBytes == nil { invalidParams.Add(request.NewErrParamRequired("TapeSizeInBytes")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // CreateTapeOutput type CreateTapeWithBarcodeOutput struct { _ struct{} `type:"structure"` // A unique Amazon Resource Name (ARN) that represents the virtual tape that // was created. TapeARN *string `min:"50" type:"string"` } // String returns the string representation func (s CreateTapeWithBarcodeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTapeWithBarcodeOutput) GoString() string { return s.String() } // CreateTapesInput type CreateTapesInput struct { _ struct{} `type:"structure"` // A unique identifier that you use to retry a request. If you retry a request, // use the same ClientToken you specified in the initial request. // // Using the same ClientToken prevents creating the tape multiple times. // // ClientToken is a required field ClientToken *string `min:"5" type:"string" required:"true"` // The unique Amazon Resource Name (ARN) that represents the gateway to associate // the virtual tapes with. Use the ListGateways operation to return a list of // gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` // The number of virtual tapes that you want to create. // // NumTapesToCreate is a required field NumTapesToCreate *int64 `min:"1" type:"integer" required:"true"` // A prefix that you append to the barcode of the virtual tape you are creating. // This prefix makes the barcode unique. // // The prefix must be 1 to 4 characters in length and must be one of the uppercase // letters from A to Z. // // TapeBarcodePrefix is a required field TapeBarcodePrefix *string `min:"1" type:"string" required:"true"` // The size, in bytes, of the virtual tapes that you want to create. // // The size must be aligned by gigabyte (1024*1024*1024 byte). // // TapeSizeInBytes is a required field TapeSizeInBytes *int64 `type:"long" required:"true"` } // String returns the string representation func (s CreateTapesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTapesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateTapesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateTapesInput"} if s.ClientToken == nil { invalidParams.Add(request.NewErrParamRequired("ClientToken")) } if s.ClientToken != nil && len(*s.ClientToken) < 5 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 5)) } if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if s.NumTapesToCreate == nil { invalidParams.Add(request.NewErrParamRequired("NumTapesToCreate")) } if s.NumTapesToCreate != nil && *s.NumTapesToCreate < 1 { invalidParams.Add(request.NewErrParamMinValue("NumTapesToCreate", 1)) } if s.TapeBarcodePrefix == nil { invalidParams.Add(request.NewErrParamRequired("TapeBarcodePrefix")) } if s.TapeBarcodePrefix != nil && len(*s.TapeBarcodePrefix) < 1 { invalidParams.Add(request.NewErrParamMinLen("TapeBarcodePrefix", 1)) } if s.TapeSizeInBytes == nil { invalidParams.Add(request.NewErrParamRequired("TapeSizeInBytes")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // CreateTapeOutput type CreateTapesOutput struct { _ struct{} `type:"structure"` // A list of unique Amazon Resource Names (ARNs) that represents the virtual // tapes that were created. TapeARNs []*string `type:"list"` } // String returns the string representation func (s CreateTapesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTapesOutput) GoString() string { return s.String() } type DeleteBandwidthRateLimitInput struct { _ struct{} `type:"structure"` // BandwidthType is a required field BandwidthType *string `min:"3" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s DeleteBandwidthRateLimitInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBandwidthRateLimitInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteBandwidthRateLimitInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteBandwidthRateLimitInput"} if s.BandwidthType == nil { invalidParams.Add(request.NewErrParamRequired("BandwidthType")) } if s.BandwidthType != nil && len(*s.BandwidthType) < 3 { invalidParams.Add(request.NewErrParamMinLen("BandwidthType", 3)) } if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the of the gateway whose bandwidth rate information // was deleted. type DeleteBandwidthRateLimitOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` } // String returns the string representation func (s DeleteBandwidthRateLimitOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteBandwidthRateLimitOutput) GoString() string { return s.String() } // A JSON object containing one or more of the following fields: // // * DeleteChapCredentialsInput$InitiatorName // // * DeleteChapCredentialsInput$TargetARN type DeleteChapCredentialsInput struct { _ struct{} `type:"structure"` // The iSCSI initiator that connects to the target. // // InitiatorName is a required field InitiatorName *string `min:"1" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the iSCSI volume target. Use the DescribeStorediSCSIVolumes // operation to return to retrieve the TargetARN for specified VolumeARN. // // TargetARN is a required field TargetARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s DeleteChapCredentialsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteChapCredentialsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteChapCredentialsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteChapCredentialsInput"} if s.InitiatorName == nil { invalidParams.Add(request.NewErrParamRequired("InitiatorName")) } if s.InitiatorName != nil && len(*s.InitiatorName) < 1 { invalidParams.Add(request.NewErrParamMinLen("InitiatorName", 1)) } if s.TargetARN == nil { invalidParams.Add(request.NewErrParamRequired("TargetARN")) } if s.TargetARN != nil && len(*s.TargetARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("TargetARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the following fields: type DeleteChapCredentialsOutput struct { _ struct{} `type:"structure"` // The iSCSI initiator that connects to the target. InitiatorName *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of the target. TargetARN *string `min:"50" type:"string"` } // String returns the string representation func (s DeleteChapCredentialsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteChapCredentialsOutput) GoString() string { return s.String() } // A JSON object containing the id of the gateway to delete. type DeleteGatewayInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s DeleteGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteGatewayInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteGatewayInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteGatewayInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the id of the deleted gateway. type DeleteGatewayOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` } // String returns the string representation func (s DeleteGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteGatewayOutput) GoString() string { return s.String() } type DeleteSnapshotScheduleInput struct { _ struct{} `type:"structure"` // VolumeARN is a required field VolumeARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s DeleteSnapshotScheduleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSnapshotScheduleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteSnapshotScheduleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteSnapshotScheduleInput"} if s.VolumeARN == nil { invalidParams.Add(request.NewErrParamRequired("VolumeARN")) } if s.VolumeARN != nil && len(*s.VolumeARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("VolumeARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteSnapshotScheduleOutput struct { _ struct{} `type:"structure"` VolumeARN *string `min:"50" type:"string"` } // String returns the string representation func (s DeleteSnapshotScheduleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSnapshotScheduleOutput) GoString() string { return s.String() } // DeleteTapeArchiveInput type DeleteTapeArchiveInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual // tape shelf (VTS). // // TapeARN is a required field TapeARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s DeleteTapeArchiveInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTapeArchiveInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTapeArchiveInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTapeArchiveInput"} if s.TapeARN == nil { invalidParams.Add(request.NewErrParamRequired("TapeARN")) } if s.TapeARN != nil && len(*s.TapeARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("TapeARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // DeleteTapeArchiveOutput type DeleteTapeArchiveOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the virtual tape that was deleted from // the virtual tape shelf (VTS). TapeARN *string `min:"50" type:"string"` } // String returns the string representation func (s DeleteTapeArchiveOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTapeArchiveOutput) GoString() string { return s.String() } // DeleteTapeInput type DeleteTapeInput struct { _ struct{} `type:"structure"` // The unique Amazon Resource Name (ARN) of the gateway that the virtual tape // to delete is associated with. Use the ListGateways operation to return a // list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the virtual tape to delete. // // TapeARN is a required field TapeARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s DeleteTapeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTapeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTapeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTapeInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if s.TapeARN == nil { invalidParams.Add(request.NewErrParamRequired("TapeARN")) } if s.TapeARN != nil && len(*s.TapeARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("TapeARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // DeleteTapeOutput type DeleteTapeOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the deleted virtual tape. TapeARN *string `min:"50" type:"string"` } // String returns the string representation func (s DeleteTapeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTapeOutput) GoString() string { return s.String() } // A JSON object containing the DeleteVolumeInput$VolumeARN to delete. type DeleteVolumeInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the volume. Use the ListVolumes operation // to return a list of gateway volumes. // // VolumeARN is a required field VolumeARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s DeleteVolumeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVolumeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteVolumeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteVolumeInput"} if s.VolumeARN == nil { invalidParams.Add(request.NewErrParamRequired("VolumeARN")) } if s.VolumeARN != nil && len(*s.VolumeARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("VolumeARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the of the storage volume that was deleted type DeleteVolumeOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the storage volume that was deleted. It // is the same ARN you provided in the request. VolumeARN *string `min:"50" type:"string"` } // String returns the string representation func (s DeleteVolumeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteVolumeOutput) GoString() string { return s.String() } // A JSON object containing the of the gateway. type DescribeBandwidthRateLimitInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s DescribeBandwidthRateLimitInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeBandwidthRateLimitInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeBandwidthRateLimitInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeBandwidthRateLimitInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the following fields: type DescribeBandwidthRateLimitOutput struct { _ struct{} `type:"structure"` // The average download bandwidth rate limit in bits per second. This field // does not appear in the response if the download rate limit is not set. AverageDownloadRateLimitInBitsPerSec *int64 `min:"102400" type:"long"` // The average upload bandwidth rate limit in bits per second. This field does // not appear in the response if the upload rate limit is not set. AverageUploadRateLimitInBitsPerSec *int64 `min:"51200" type:"long"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` } // String returns the string representation func (s DescribeBandwidthRateLimitOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeBandwidthRateLimitOutput) GoString() string { return s.String() } type DescribeCacheInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s DescribeCacheInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCacheInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeCacheInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeCacheInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeCacheOutput struct { _ struct{} `type:"structure"` CacheAllocatedInBytes *int64 `type:"long"` CacheDirtyPercentage *float64 `type:"double"` CacheHitPercentage *float64 `type:"double"` CacheMissPercentage *float64 `type:"double"` CacheUsedPercentage *float64 `type:"double"` DiskIds []*string `type:"list"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` } // String returns the string representation func (s DescribeCacheOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCacheOutput) GoString() string { return s.String() } type DescribeCachediSCSIVolumesInput struct { _ struct{} `type:"structure"` // VolumeARNs is a required field VolumeARNs []*string `type:"list" required:"true"` } // String returns the string representation func (s DescribeCachediSCSIVolumesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCachediSCSIVolumesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeCachediSCSIVolumesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeCachediSCSIVolumesInput"} if s.VolumeARNs == nil { invalidParams.Add(request.NewErrParamRequired("VolumeARNs")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the following fields: type DescribeCachediSCSIVolumesOutput struct { _ struct{} `type:"structure"` // An array of objects where each object contains metadata about one cached // volume. CachediSCSIVolumes []*CachediSCSIVolume `type:"list"` } // String returns the string representation func (s DescribeCachediSCSIVolumesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCachediSCSIVolumesOutput) GoString() string { return s.String() } // A JSON object containing the Amazon Resource Name (ARN) of the iSCSI volume // target. type DescribeChapCredentialsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the iSCSI volume target. Use the DescribeStorediSCSIVolumes // operation to return to retrieve the TargetARN for specified VolumeARN. // // TargetARN is a required field TargetARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s DescribeChapCredentialsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeChapCredentialsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeChapCredentialsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeChapCredentialsInput"} if s.TargetARN == nil { invalidParams.Add(request.NewErrParamRequired("TargetARN")) } if s.TargetARN != nil && len(*s.TargetARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("TargetARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing a . type DescribeChapCredentialsOutput struct { _ struct{} `type:"structure"` // An array of ChapInfo objects that represent CHAP credentials. Each object // in the array contains CHAP credential information for one target-initiator // pair. If no CHAP credentials are set, an empty array is returned. CHAP credential // information is provided in a JSON object with the following fields: // // * InitiatorName: The iSCSI initiator that connects to the target. // // * SecretToAuthenticateInitiator: The secret key that the initiator (for // example, the Windows client) must provide to participate in mutual CHAP // with the target. // // * SecretToAuthenticateTarget: The secret key that the target must provide // to participate in mutual CHAP with the initiator (e.g. Windows client). // // * TargetARN: The Amazon Resource Name (ARN) of the storage volume. ChapCredentials []*ChapInfo `type:"list"` } // String returns the string representation func (s DescribeChapCredentialsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeChapCredentialsOutput) GoString() string { return s.String() } // A JSON object containing the id of the gateway. type DescribeGatewayInformationInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s DescribeGatewayInformationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeGatewayInformationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeGatewayInformationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeGatewayInformationInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the following fields: type DescribeGatewayInformationOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` // The unique identifier assigned to your gateway during activation. This ID // becomes part of the gateway Amazon Resource Name (ARN), which you use as // input for other operations. GatewayId *string `min:"12" type:"string"` // The name you configured for your gateway. GatewayName *string `type:"string"` // A NetworkInterface array that contains descriptions of the gateway network // interfaces. GatewayNetworkInterfaces []*NetworkInterface `type:"list"` // A value that indicates the operating state of the gateway. GatewayState *string `min:"2" type:"string"` // A value that indicates the time zone configured for the gateway. GatewayTimezone *string `min:"3" type:"string"` // The type of the gateway. GatewayType *string `min:"2" type:"string"` // The date on which the last software update was applied to the gateway. If // the gateway has never been updated, this field does not return a value in // the response. LastSoftwareUpdate *string `min:"1" type:"string"` // The date on which an update to the gateway is available. This date is in // the time zone of the gateway. If the gateway is not available for an update // this field is not returned in the response. NextUpdateAvailabilityDate *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeGatewayInformationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeGatewayInformationOutput) GoString() string { return s.String() } // A JSON object containing the of the gateway. type DescribeMaintenanceStartTimeInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s DescribeMaintenanceStartTimeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeMaintenanceStartTimeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeMaintenanceStartTimeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeMaintenanceStartTimeInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeMaintenanceStartTimeOutput struct { _ struct{} `type:"structure"` DayOfWeek *int64 `type:"integer"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` HourOfDay *int64 `type:"integer"` MinuteOfHour *int64 `type:"integer"` Timezone *string `min:"3" type:"string"` } // String returns the string representation func (s DescribeMaintenanceStartTimeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeMaintenanceStartTimeOutput) GoString() string { return s.String() } // A JSON object containing the DescribeSnapshotScheduleInput$VolumeARN of the // volume. type DescribeSnapshotScheduleInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the volume. Use the ListVolumes operation // to return a list of gateway volumes. // // VolumeARN is a required field VolumeARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s DescribeSnapshotScheduleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSnapshotScheduleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeSnapshotScheduleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeSnapshotScheduleInput"} if s.VolumeARN == nil { invalidParams.Add(request.NewErrParamRequired("VolumeARN")) } if s.VolumeARN != nil && len(*s.VolumeARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("VolumeARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeSnapshotScheduleOutput struct { _ struct{} `type:"structure"` Description *string `min:"1" type:"string"` RecurrenceInHours *int64 `min:"1" type:"integer"` StartAt *int64 `type:"integer"` Timezone *string `min:"3" type:"string"` VolumeARN *string `min:"50" type:"string"` } // String returns the string representation func (s DescribeSnapshotScheduleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSnapshotScheduleOutput) GoString() string { return s.String() } // A JSON object containing a list of DescribeStorediSCSIVolumesInput$VolumeARNs. type DescribeStorediSCSIVolumesInput struct { _ struct{} `type:"structure"` // An array of strings where each string represents the Amazon Resource Name // (ARN) of a stored volume. All of the specified stored volumes must from the // same gateway. Use ListVolumes to get volume ARNs for a gateway. // // VolumeARNs is a required field VolumeARNs []*string `type:"list" required:"true"` } // String returns the string representation func (s DescribeStorediSCSIVolumesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStorediSCSIVolumesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeStorediSCSIVolumesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeStorediSCSIVolumesInput"} if s.VolumeARNs == nil { invalidParams.Add(request.NewErrParamRequired("VolumeARNs")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeStorediSCSIVolumesOutput struct { _ struct{} `type:"structure"` StorediSCSIVolumes []*StorediSCSIVolume `type:"list"` } // String returns the string representation func (s DescribeStorediSCSIVolumesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeStorediSCSIVolumesOutput) GoString() string { return s.String() } // DescribeTapeArchivesInput type DescribeTapeArchivesInput struct { _ struct{} `type:"structure"` // Specifies that the number of virtual tapes descried be limited to the specified // number. Limit *int64 `min:"1" type:"integer"` // An opaque string that indicates the position at which to begin describing // virtual tapes. Marker *string `min:"1" type:"string"` // Specifies one or more unique Amazon Resource Names (ARNs) that represent // the virtual tapes you want to describe. TapeARNs []*string `type:"list"` } // String returns the string representation func (s DescribeTapeArchivesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTapeArchivesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTapeArchivesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTapeArchivesInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // DescribeTapeArchivesOutput type DescribeTapeArchivesOutput struct { _ struct{} `type:"structure"` // An opaque string that indicates the position at which the virtual tapes that // were fetched for description ended. Use this marker in your next request // to fetch the next set of virtual tapes in the virtual tape shelf (VTS). If // there are no more virtual tapes to describe, this field does not appear in // the response. Marker *string `min:"1" type:"string"` // An array of virtual tape objects in the virtual tape shelf (VTS). The description // includes of the Amazon Resource Name(ARN) of the virtual tapes. The information // returned includes the Amazon Resource Names (ARNs) of the tapes, size of // the tapes, status of the tapes, progress of the description and tape barcode. TapeArchives []*TapeArchive `type:"list"` } // String returns the string representation func (s DescribeTapeArchivesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTapeArchivesOutput) GoString() string { return s.String() } // DescribeTapeRecoveryPointsInput type DescribeTapeRecoveryPointsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` // Specifies that the number of virtual tape recovery points that are described // be limited to the specified number. Limit *int64 `min:"1" type:"integer"` // An opaque string that indicates the position at which to begin describing // the virtual tape recovery points. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeTapeRecoveryPointsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTapeRecoveryPointsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTapeRecoveryPointsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTapeRecoveryPointsInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // DescribeTapeRecoveryPointsOutput type DescribeTapeRecoveryPointsOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` // An opaque string that indicates the position at which the virtual tape recovery // points that were listed for description ended. // // Use this marker in your next request to list the next set of virtual tape // recovery points in the list. If there are no more recovery points to describe, // this field does not appear in the response. Marker *string `min:"1" type:"string"` // An array of TapeRecoveryPointInfos that are available for the specified gateway. TapeRecoveryPointInfos []*TapeRecoveryPointInfo `type:"list"` } // String returns the string representation func (s DescribeTapeRecoveryPointsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTapeRecoveryPointsOutput) GoString() string { return s.String() } // DescribeTapesInput type DescribeTapesInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` // Specifies that the number of virtual tapes described be limited to the specified // number. // // Amazon Web Services may impose its own limit, if this field is not set. Limit *int64 `min:"1" type:"integer"` // A marker value, obtained in a previous call to DescribeTapes. This marker // indicates which page of results to retrieve. // // If not specified, the first page of results is retrieved. Marker *string `min:"1" type:"string"` // Specifies one or more unique Amazon Resource Names (ARNs) that represent // the virtual tapes you want to describe. If this parameter is not specified, // AWS Storage Gateway returns a description of all virtual tapes associated // with the specified gateway. TapeARNs []*string `type:"list"` } // String returns the string representation func (s DescribeTapesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTapesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTapesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTapesInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // DescribeTapesOutput type DescribeTapesOutput struct { _ struct{} `type:"structure"` // An opaque string which can be used as part of a subsequent DescribeTapes // call to retrieve the next page of results. // // If a response does not contain a marker, then there are no more results to // be retrieved. Marker *string `min:"1" type:"string"` // An array of virtual tape descriptions. Tapes []*Tape `type:"list"` } // String returns the string representation func (s DescribeTapesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTapesOutput) GoString() string { return s.String() } type DescribeUploadBufferInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s DescribeUploadBufferInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeUploadBufferInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeUploadBufferInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeUploadBufferInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeUploadBufferOutput struct { _ struct{} `type:"structure"` DiskIds []*string `type:"list"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` UploadBufferAllocatedInBytes *int64 `type:"long"` UploadBufferUsedInBytes *int64 `type:"long"` } // String returns the string representation func (s DescribeUploadBufferOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeUploadBufferOutput) GoString() string { return s.String() } // DescribeVTLDevicesInput type DescribeVTLDevicesInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` // Specifies that the number of VTL devices described be limited to the specified // number. Limit *int64 `min:"1" type:"integer"` // An opaque string that indicates the position at which to begin describing // the VTL devices. Marker *string `min:"1" type:"string"` // An array of strings, where each string represents the Amazon Resource Name // (ARN) of a VTL device. // // All of the specified VTL devices must be from the same gateway. If no VTL // devices are specified, the result will contain all devices on the specified // gateway. VTLDeviceARNs []*string `type:"list"` } // String returns the string representation func (s DescribeVTLDevicesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVTLDevicesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeVTLDevicesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeVTLDevicesInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // DescribeVTLDevicesOutput type DescribeVTLDevicesOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` // An opaque string that indicates the position at which the VTL devices that // were fetched for description ended. Use the marker in your next request to // fetch the next set of VTL devices in the list. If there are no more VTL devices // to describe, this field does not appear in the response. Marker *string `min:"1" type:"string"` // An array of VTL device objects composed of the Amazon Resource Name(ARN) // of the VTL devices. VTLDevices []*VTLDevice `type:"list"` } // String returns the string representation func (s DescribeVTLDevicesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeVTLDevicesOutput) GoString() string { return s.String() } // A JSON object containing the of the gateway. type DescribeWorkingStorageInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s DescribeWorkingStorageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkingStorageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeWorkingStorageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeWorkingStorageInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the following fields: type DescribeWorkingStorageOutput struct { _ struct{} `type:"structure"` // An array of the gateway's local disk IDs that are configured as working storage. // Each local disk ID is specified as a string (minimum length of 1 and maximum // length of 300). If no local disks are configured as working storage, then // the DiskIds array is empty. DiskIds []*string `type:"list"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` // The total working storage in bytes allocated for the gateway. If no working // storage is configured for the gateway, this field returns 0. WorkingStorageAllocatedInBytes *int64 `type:"long"` // The total working storage in bytes in use by the gateway. If no working storage // is configured for the gateway, this field returns 0. WorkingStorageUsedInBytes *int64 `type:"long"` } // String returns the string representation func (s DescribeWorkingStorageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkingStorageOutput) GoString() string { return s.String() } // Lists iSCSI information about a VTL device. type DeviceiSCSIAttributes struct { _ struct{} `type:"structure"` // Indicates whether mutual CHAP is enabled for the iSCSI target. ChapEnabled *bool `type:"boolean"` // The network interface identifier of the VTL device. NetworkInterfaceId *string `type:"string"` // The port used to communicate with iSCSI VTL device targets. NetworkInterfacePort *int64 `type:"integer"` // Specifies the unique Amazon Resource Name(ARN) that encodes the iSCSI qualified // name(iqn) of a tape drive or media changer target. TargetARN *string `min:"50" type:"string"` } // String returns the string representation func (s DeviceiSCSIAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeviceiSCSIAttributes) GoString() string { return s.String() } // DisableGatewayInput type DisableGatewayInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s DisableGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableGatewayInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisableGatewayInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisableGatewayInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // DisableGatewayOutput type DisableGatewayOutput struct { _ struct{} `type:"structure"` // The unique Amazon Resource Name of the disabled gateway. GatewayARN *string `min:"50" type:"string"` } // String returns the string representation func (s DisableGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisableGatewayOutput) GoString() string { return s.String() } type Disk struct { _ struct{} `type:"structure"` DiskAllocationResource *string `type:"string"` DiskAllocationType *string `min:"3" type:"string"` DiskId *string `min:"1" type:"string"` DiskNode *string `type:"string"` DiskPath *string `type:"string"` DiskSizeInBytes *int64 `type:"long"` DiskStatus *string `type:"string"` } // String returns the string representation func (s Disk) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Disk) GoString() string { return s.String() } // Provides additional information about an error that was returned by the service // as an or. See the errorCode and errorDetails members for more information // about the error. type Error struct { _ struct{} `type:"structure"` // Additional information about the error. ErrorCode *string `locationName:"errorCode" type:"string" enum:"ErrorCode"` // Human-readable text that provides detail about the error that occurred. ErrorDetails map[string]*string `locationName:"errorDetails" type:"map"` } // String returns the string representation func (s Error) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Error) GoString() string { return s.String() } // Describes a gateway object. type GatewayInfo struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` // The unique identifier assigned to your gateway during activation. This ID // becomes part of the gateway Amazon Resource Name (ARN), which you use as // input for other operations. GatewayId *string `min:"12" type:"string"` // The name of the gateway. GatewayName *string `type:"string"` // The state of the gateway. // // Valid Values: DISABLED or ACTIVE GatewayOperationalState *string `min:"2" type:"string"` // The type of the gateway. GatewayType *string `min:"2" type:"string"` } // String returns the string representation func (s GatewayInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GatewayInfo) GoString() string { return s.String() } // A JSON object containing zero or more of the following fields: // // * ListGatewaysInput$Limit // // * ListGatewaysInput$Marker type ListGatewaysInput struct { _ struct{} `type:"structure"` // Specifies that the list of gateways returned be limited to the specified // number of items. Limit *int64 `min:"1" type:"integer"` // An opaque string that indicates the position at which to begin the returned // list of gateways. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s ListGatewaysInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListGatewaysInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListGatewaysInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListGatewaysInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListGatewaysOutput struct { _ struct{} `type:"structure"` Gateways []*GatewayInfo `type:"list"` Marker *string `min:"1" type:"string"` } // String returns the string representation func (s ListGatewaysOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListGatewaysOutput) GoString() string { return s.String() } // A JSON object containing the of the gateway. type ListLocalDisksInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s ListLocalDisksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListLocalDisksInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListLocalDisksInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListLocalDisksInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListLocalDisksOutput struct { _ struct{} `type:"structure"` Disks []*Disk `type:"list"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` } // String returns the string representation func (s ListLocalDisksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListLocalDisksOutput) GoString() string { return s.String() } // ListTagsForResourceInput type ListTagsForResourceInput struct { _ struct{} `type:"structure"` // Specifies that the list of tags returned be limited to the specified number // of items. Limit *int64 `min:"1" type:"integer"` // An opaque string that indicates the position at which to begin returning // the list of tags. Marker *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of the resource for which you want to list // tags. // // ResourceARN is a required field ResourceARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s ListTagsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsForResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if s.ResourceARN == nil { invalidParams.Add(request.NewErrParamRequired("ResourceARN")) } if s.ResourceARN != nil && len(*s.ResourceARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // ListTagsForResourceOutput type ListTagsForResourceOutput struct { _ struct{} `type:"structure"` // An opaque string that indicates the position at which to stop returning the // list of tags. Marker *string `min:"1" type:"string"` // he Amazon Resource Name (ARN) of the resource for which you want to list // tags. ResourceARN *string `min:"50" type:"string"` // An array that contains the tags for the specified resource. Tags []*Tag `type:"list"` } // String returns the string representation func (s ListTagsForResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceOutput) GoString() string { return s.String() } // A JSON object that contains one or more of the following fields: // // * ListTapesInput$Limit // // * ListTapesInput$Marker // // * ListTapesInput$TapeARNs type ListTapesInput struct { _ struct{} `type:"structure"` // An optional number limit for the tapes in the list returned by this call. Limit *int64 `min:"1" type:"integer"` // A string that indicates the position at which to begin the returned list // of tapes. Marker *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of each of the tapes you want to list. If // you don't specify a tape ARN, the response lists all tapes in both your VTL // and VTS. TapeARNs []*string `type:"list"` } // String returns the string representation func (s ListTapesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTapesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTapesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTapesInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the following fields: // // * ListTapesOutput$Marker // // * ListTapesOutput$VolumeInfos type ListTapesOutput struct { _ struct{} `type:"structure"` // A string that indicates the position at which to begin returning the next // list of tapes. Use the marker in your next request to continue pagination // of tapes. If there are no more tapes to list, this element does not appear // in the response body. Marker *string `min:"1" type:"string"` // An array of TapeInfo objects, where each object describes an a single tape. // If there not tapes in the tape library or VTS, then the TapeInfos is an empty // array. TapeInfos []*TapeInfo `type:"list"` } // String returns the string representation func (s ListTapesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTapesOutput) GoString() string { return s.String() } // ListVolumeInitiatorsInput type ListVolumeInitiatorsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the volume. Use the ListVolumes operation // to return a list of gateway volumes for the gateway. // // VolumeARN is a required field VolumeARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s ListVolumeInitiatorsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListVolumeInitiatorsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListVolumeInitiatorsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListVolumeInitiatorsInput"} if s.VolumeARN == nil { invalidParams.Add(request.NewErrParamRequired("VolumeARN")) } if s.VolumeARN != nil && len(*s.VolumeARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("VolumeARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // ListVolumeInitiatorsOutput type ListVolumeInitiatorsOutput struct { _ struct{} `type:"structure"` // The host names and port numbers of all iSCSI initiators that are connected // to the gateway. Initiators []*string `type:"list"` } // String returns the string representation func (s ListVolumeInitiatorsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListVolumeInitiatorsOutput) GoString() string { return s.String() } type ListVolumeRecoveryPointsInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s ListVolumeRecoveryPointsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListVolumeRecoveryPointsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListVolumeRecoveryPointsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListVolumeRecoveryPointsInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListVolumeRecoveryPointsOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` VolumeRecoveryPointInfos []*VolumeRecoveryPointInfo `type:"list"` } // String returns the string representation func (s ListVolumeRecoveryPointsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListVolumeRecoveryPointsOutput) GoString() string { return s.String() } // A JSON object that contains one or more of the following fields: // // * ListVolumesInput$Limit // // * ListVolumesInput$Marker type ListVolumesInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` // Specifies that the list of volumes returned be limited to the specified number // of items. Limit *int64 `min:"1" type:"integer"` // A string that indicates the position at which to begin the returned list // of volumes. Obtain the marker from the response of a previous List iSCSI // Volumes request. Marker *string `min:"1" type:"string"` } // String returns the string representation func (s ListVolumesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListVolumesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListVolumesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListVolumesInput"} if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.Marker != nil && len(*s.Marker) < 1 { invalidParams.Add(request.NewErrParamMinLen("Marker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListVolumesOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` Marker *string `min:"1" type:"string"` VolumeInfos []*VolumeInfo `type:"list"` } // String returns the string representation func (s ListVolumesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListVolumesOutput) GoString() string { return s.String() } // Describes a gateway's network interface. type NetworkInterface struct { _ struct{} `type:"structure"` // The Internet Protocol version 4 (IPv4) address of the interface. Ipv4Address *string `type:"string"` // The Internet Protocol version 6 (IPv6) address of the interface. Currently // not supported. Ipv6Address *string `type:"string"` // The Media Access Control (MAC) address of the interface. // // This is currently unsupported and will not be returned in output. MacAddress *string `type:"string"` } // String returns the string representation func (s NetworkInterface) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NetworkInterface) GoString() string { return s.String() } // RemoveTagsFromResourceInput type RemoveTagsFromResourceInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the resource you want to remove the tags // from. // // ResourceARN is a required field ResourceARN *string `min:"50" type:"string" required:"true"` // The keys of the tags you want to remove from the specified resource. A tag // is composed of a key/value pair. // // TagKeys is a required field TagKeys []*string `type:"list" required:"true"` } // String returns the string representation func (s RemoveTagsFromResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemoveTagsFromResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemoveTagsFromResourceInput"} if s.ResourceARN == nil { invalidParams.Add(request.NewErrParamRequired("ResourceARN")) } if s.ResourceARN != nil && len(*s.ResourceARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 50)) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // RemoveTagsFromResourceOutput type RemoveTagsFromResourceOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the resource that the tags were removed // from. ResourceARN *string `min:"50" type:"string"` } // String returns the string representation func (s RemoveTagsFromResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemoveTagsFromResourceOutput) GoString() string { return s.String() } type ResetCacheInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s ResetCacheInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResetCacheInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ResetCacheInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ResetCacheInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ResetCacheOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` } // String returns the string representation func (s ResetCacheOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResetCacheOutput) GoString() string { return s.String() } // RetrieveTapeArchiveInput type RetrieveTapeArchiveInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway you want to retrieve the virtual // tape to. Use the ListGateways operation to return a list of gateways for // your account and region. // // You retrieve archived virtual tapes to only one gateway and the gateway must // be a gateway-VTL. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the virtual tape you want to retrieve from // the virtual tape shelf (VTS). // // TapeARN is a required field TapeARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s RetrieveTapeArchiveInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RetrieveTapeArchiveInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RetrieveTapeArchiveInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RetrieveTapeArchiveInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if s.TapeARN == nil { invalidParams.Add(request.NewErrParamRequired("TapeARN")) } if s.TapeARN != nil && len(*s.TapeARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("TapeARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // RetrieveTapeArchiveOutput type RetrieveTapeArchiveOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the retrieved virtual tape. TapeARN *string `min:"50" type:"string"` } // String returns the string representation func (s RetrieveTapeArchiveOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RetrieveTapeArchiveOutput) GoString() string { return s.String() } // RetrieveTapeRecoveryPointInput type RetrieveTapeRecoveryPointInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the virtual tape for which you want to // retrieve the recovery point. // // TapeARN is a required field TapeARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s RetrieveTapeRecoveryPointInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RetrieveTapeRecoveryPointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RetrieveTapeRecoveryPointInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RetrieveTapeRecoveryPointInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if s.TapeARN == nil { invalidParams.Add(request.NewErrParamRequired("TapeARN")) } if s.TapeARN != nil && len(*s.TapeARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("TapeARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // RetrieveTapeRecoveryPointOutput type RetrieveTapeRecoveryPointOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the virtual tape for which the recovery // point was retrieved. TapeARN *string `min:"50" type:"string"` } // String returns the string representation func (s RetrieveTapeRecoveryPointOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RetrieveTapeRecoveryPointOutput) GoString() string { return s.String() } // SetLocalConsolePasswordInput type SetLocalConsolePasswordInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` // The password you want to set for your VM local console. // // LocalConsolePassword is a required field LocalConsolePassword *string `min:"6" type:"string" required:"true"` } // String returns the string representation func (s SetLocalConsolePasswordInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetLocalConsolePasswordInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SetLocalConsolePasswordInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SetLocalConsolePasswordInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if s.LocalConsolePassword == nil { invalidParams.Add(request.NewErrParamRequired("LocalConsolePassword")) } if s.LocalConsolePassword != nil && len(*s.LocalConsolePassword) < 6 { invalidParams.Add(request.NewErrParamMinLen("LocalConsolePassword", 6)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SetLocalConsolePasswordOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` } // String returns the string representation func (s SetLocalConsolePasswordOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SetLocalConsolePasswordOutput) GoString() string { return s.String() } // A JSON object containing the of the gateway to shut down. type ShutdownGatewayInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s ShutdownGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ShutdownGatewayInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ShutdownGatewayInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ShutdownGatewayInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the of the gateway that was shut down. type ShutdownGatewayOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` } // String returns the string representation func (s ShutdownGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ShutdownGatewayOutput) GoString() string { return s.String() } // A JSON object containing the of the gateway to start. type StartGatewayInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s StartGatewayInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartGatewayInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartGatewayInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartGatewayInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the of the gateway that was restarted. type StartGatewayOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` } // String returns the string representation func (s StartGatewayOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartGatewayOutput) GoString() string { return s.String() } type StorediSCSIVolume struct { _ struct{} `type:"structure"` PreservedExistingData *bool `type:"boolean"` SourceSnapshotId *string `type:"string"` VolumeARN *string `min:"50" type:"string"` VolumeDiskId *string `min:"1" type:"string"` VolumeId *string `min:"12" type:"string"` VolumeProgress *float64 `type:"double"` VolumeSizeInBytes *int64 `type:"long"` VolumeStatus *string `min:"3" type:"string"` VolumeType *string `min:"3" type:"string"` // Lists iSCSI information about a volume. VolumeiSCSIAttributes *VolumeiSCSIAttributes `type:"structure"` } // String returns the string representation func (s StorediSCSIVolume) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StorediSCSIVolume) GoString() string { return s.String() } type Tag struct { _ struct{} `type:"structure"` // Key is a required field Key *string `min:"1" type:"string" required:"true"` // Value is a required field Value *string `type:"string" required:"true"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Describes a virtual tape object. type Tape struct { _ struct{} `type:"structure"` // For archiving virtual tapes, indicates how much data remains to be uploaded // before archiving is complete. // // Range: 0 (not started) to 100 (complete). Progress *float64 `type:"double"` // The Amazon Resource Name (ARN) of the virtual tape. TapeARN *string `min:"50" type:"string"` // The barcode that identifies a specific virtual tape. TapeBarcode *string `min:"7" type:"string"` // The size, in bytes, of the virtual tape. TapeSizeInBytes *int64 `type:"long"` // The current state of the virtual tape. TapeStatus *string `type:"string"` // The virtual tape library (VTL) device that the virtual tape is associated // with. VTLDevice *string `min:"50" type:"string"` } // String returns the string representation func (s Tape) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tape) GoString() string { return s.String() } // Represents a virtual tape that is archived in the virtual tape shelf (VTS). type TapeArchive struct { _ struct{} `type:"structure"` // The time that the archiving of the virtual tape was completed. // // The string format of the completion time is in the ISO8601 extended YYYY-MM-DD'T'HH:MM:SS'Z' // format. CompletionTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The Amazon Resource Name (ARN) of the gateway-VTL that the virtual tape is // being retrieved to. // // The virtual tape is retrieved from the virtual tape shelf (VTS). RetrievedTo *string `min:"50" type:"string"` // The Amazon Resource Name (ARN) of an archived virtual tape. TapeARN *string `min:"50" type:"string"` // The barcode that identifies the archived virtual tape. TapeBarcode *string `min:"7" type:"string"` // The size, in bytes, of the archived virtual tape. TapeSizeInBytes *int64 `type:"long"` // The current state of the archived virtual tape. TapeStatus *string `type:"string"` } // String returns the string representation func (s TapeArchive) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TapeArchive) GoString() string { return s.String() } // Describes a virtual tape. type TapeInfo struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` // The Amazon Resource Name (ARN) of a virtual tape. TapeARN *string `min:"50" type:"string"` // The barcode that identifies a specific virtual tape. TapeBarcode *string `min:"7" type:"string"` // The size, in bytes, of a virtual tape. TapeSizeInBytes *int64 `type:"long"` // The status of the tape. TapeStatus *string `type:"string"` } // String returns the string representation func (s TapeInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TapeInfo) GoString() string { return s.String() } // Describes a recovery point. type TapeRecoveryPointInfo struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the virtual tape. TapeARN *string `min:"50" type:"string"` // The time when the point-in-time view of the virtual tape was replicated for // later recovery. // // The string format of the tape recovery point time is in the ISO8601 extended // YYYY-MM-DD'T'HH:MM:SS'Z' format. TapeRecoveryPointTime *time.Time `type:"timestamp" timestampFormat:"unix"` // The size, in bytes, of the virtual tapes to recover. TapeSizeInBytes *int64 `type:"long"` TapeStatus *string `type:"string"` } // String returns the string representation func (s TapeRecoveryPointInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TapeRecoveryPointInfo) GoString() string { return s.String() } // A JSON object containing one or more of the following fields: // // * UpdateBandwidthRateLimitInput$AverageDownloadRateLimitInBitsPerSec // // * UpdateBandwidthRateLimitInput$AverageUploadRateLimitInBitsPerSec type UpdateBandwidthRateLimitInput struct { _ struct{} `type:"structure"` // The average download bandwidth rate limit in bits per second. AverageDownloadRateLimitInBitsPerSec *int64 `min:"102400" type:"long"` // The average upload bandwidth rate limit in bits per second. AverageUploadRateLimitInBitsPerSec *int64 `min:"51200" type:"long"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s UpdateBandwidthRateLimitInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateBandwidthRateLimitInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateBandwidthRateLimitInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateBandwidthRateLimitInput"} if s.AverageDownloadRateLimitInBitsPerSec != nil && *s.AverageDownloadRateLimitInBitsPerSec < 102400 { invalidParams.Add(request.NewErrParamMinValue("AverageDownloadRateLimitInBitsPerSec", 102400)) } if s.AverageUploadRateLimitInBitsPerSec != nil && *s.AverageUploadRateLimitInBitsPerSec < 51200 { invalidParams.Add(request.NewErrParamMinValue("AverageUploadRateLimitInBitsPerSec", 51200)) } if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the of the gateway whose throttle information was // updated. type UpdateBandwidthRateLimitOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` } // String returns the string representation func (s UpdateBandwidthRateLimitOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateBandwidthRateLimitOutput) GoString() string { return s.String() } // A JSON object containing one or more of the following fields: // // * UpdateChapCredentialsInput$InitiatorName // // * UpdateChapCredentialsInput$SecretToAuthenticateInitiator // // * UpdateChapCredentialsInput$SecretToAuthenticateTarget // // * UpdateChapCredentialsInput$TargetARN type UpdateChapCredentialsInput struct { _ struct{} `type:"structure"` // The iSCSI initiator that connects to the target. // // InitiatorName is a required field InitiatorName *string `min:"1" type:"string" required:"true"` // The secret key that the initiator (for example, the Windows client) must // provide to participate in mutual CHAP with the target. // // The secret key must be between 12 and 16 bytes when encoded in UTF-8. // // SecretToAuthenticateInitiator is a required field SecretToAuthenticateInitiator *string `min:"1" type:"string" required:"true"` // The secret key that the target must provide to participate in mutual CHAP // with the initiator (e.g. Windows client). // // Byte constraints: Minimum bytes of 12. Maximum bytes of 16. // // The secret key must be between 12 and 16 bytes when encoded in UTF-8. SecretToAuthenticateTarget *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of the iSCSI volume target. Use the DescribeStorediSCSIVolumes // operation to return the TargetARN for specified VolumeARN. // // TargetARN is a required field TargetARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s UpdateChapCredentialsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateChapCredentialsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateChapCredentialsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateChapCredentialsInput"} if s.InitiatorName == nil { invalidParams.Add(request.NewErrParamRequired("InitiatorName")) } if s.InitiatorName != nil && len(*s.InitiatorName) < 1 { invalidParams.Add(request.NewErrParamMinLen("InitiatorName", 1)) } if s.SecretToAuthenticateInitiator == nil { invalidParams.Add(request.NewErrParamRequired("SecretToAuthenticateInitiator")) } if s.SecretToAuthenticateInitiator != nil && len(*s.SecretToAuthenticateInitiator) < 1 { invalidParams.Add(request.NewErrParamMinLen("SecretToAuthenticateInitiator", 1)) } if s.SecretToAuthenticateTarget != nil && len(*s.SecretToAuthenticateTarget) < 1 { invalidParams.Add(request.NewErrParamMinLen("SecretToAuthenticateTarget", 1)) } if s.TargetARN == nil { invalidParams.Add(request.NewErrParamRequired("TargetARN")) } if s.TargetARN != nil && len(*s.TargetARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("TargetARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the following fields: type UpdateChapCredentialsOutput struct { _ struct{} `type:"structure"` // The iSCSI initiator that connects to the target. This is the same initiator // name specified in the request. InitiatorName *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of the target. This is the same target specified // in the request. TargetARN *string `min:"50" type:"string"` } // String returns the string representation func (s UpdateChapCredentialsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateChapCredentialsOutput) GoString() string { return s.String() } type UpdateGatewayInformationInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` // The name you configured for your gateway. GatewayName *string `min:"2" type:"string"` GatewayTimezone *string `min:"3" type:"string"` } // String returns the string representation func (s UpdateGatewayInformationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateGatewayInformationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateGatewayInformationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateGatewayInformationInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if s.GatewayName != nil && len(*s.GatewayName) < 2 { invalidParams.Add(request.NewErrParamMinLen("GatewayName", 2)) } if s.GatewayTimezone != nil && len(*s.GatewayTimezone) < 3 { invalidParams.Add(request.NewErrParamMinLen("GatewayTimezone", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the ARN of the gateway that was updated. type UpdateGatewayInformationOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` GatewayName *string `type:"string"` } // String returns the string representation func (s UpdateGatewayInformationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateGatewayInformationOutput) GoString() string { return s.String() } // A JSON object containing the of the gateway to update. type UpdateGatewaySoftwareNowInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s UpdateGatewaySoftwareNowInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateGatewaySoftwareNowInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateGatewaySoftwareNowInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateGatewaySoftwareNowInput"} if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the of the gateway that was updated. type UpdateGatewaySoftwareNowOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` } // String returns the string representation func (s UpdateGatewaySoftwareNowOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateGatewaySoftwareNowOutput) GoString() string { return s.String() } // A JSON object containing the following fields: // // * UpdateMaintenanceStartTimeInput$DayOfWeek // // * UpdateMaintenanceStartTimeInput$HourOfDay // // * UpdateMaintenanceStartTimeInput$MinuteOfHour type UpdateMaintenanceStartTimeInput struct { _ struct{} `type:"structure"` // The maintenance start time day of the week. // // DayOfWeek is a required field DayOfWeek *int64 `type:"integer" required:"true"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. // // GatewayARN is a required field GatewayARN *string `min:"50" type:"string" required:"true"` // The hour component of the maintenance start time represented as hh, where // hh is the hour (00 to 23). The hour of the day is in the time zone of the // gateway. // // HourOfDay is a required field HourOfDay *int64 `type:"integer" required:"true"` // The minute component of the maintenance start time represented as mm, where // mm is the minute (00 to 59). The minute of the hour is in the time zone of // the gateway. // // MinuteOfHour is a required field MinuteOfHour *int64 `type:"integer" required:"true"` } // String returns the string representation func (s UpdateMaintenanceStartTimeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateMaintenanceStartTimeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateMaintenanceStartTimeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateMaintenanceStartTimeInput"} if s.DayOfWeek == nil { invalidParams.Add(request.NewErrParamRequired("DayOfWeek")) } if s.GatewayARN == nil { invalidParams.Add(request.NewErrParamRequired("GatewayARN")) } if s.GatewayARN != nil && len(*s.GatewayARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("GatewayARN", 50)) } if s.HourOfDay == nil { invalidParams.Add(request.NewErrParamRequired("HourOfDay")) } if s.MinuteOfHour == nil { invalidParams.Add(request.NewErrParamRequired("MinuteOfHour")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the of the gateway whose maintenance start time // is updated. type UpdateMaintenanceStartTimeOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` } // String returns the string representation func (s UpdateMaintenanceStartTimeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateMaintenanceStartTimeOutput) GoString() string { return s.String() } // A JSON object containing one or more of the following fields: // // * UpdateSnapshotScheduleInput$Description // // * UpdateSnapshotScheduleInput$RecurrenceInHours // // * UpdateSnapshotScheduleInput$StartAt // // * UpdateSnapshotScheduleInput$VolumeARN type UpdateSnapshotScheduleInput struct { _ struct{} `type:"structure"` // Optional description of the snapshot that overwrites the existing description. Description *string `min:"1" type:"string"` // Frequency of snapshots. Specify the number of hours between snapshots. // // RecurrenceInHours is a required field RecurrenceInHours *int64 `min:"1" type:"integer" required:"true"` // The hour of the day at which the snapshot schedule begins represented as // hh, where hh is the hour (0 to 23). The hour of the day is in the time zone // of the gateway. // // StartAt is a required field StartAt *int64 `type:"integer" required:"true"` // The Amazon Resource Name (ARN) of the volume. Use the ListVolumes operation // to return a list of gateway volumes. // // VolumeARN is a required field VolumeARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s UpdateSnapshotScheduleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateSnapshotScheduleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateSnapshotScheduleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateSnapshotScheduleInput"} if s.Description != nil && len(*s.Description) < 1 { invalidParams.Add(request.NewErrParamMinLen("Description", 1)) } if s.RecurrenceInHours == nil { invalidParams.Add(request.NewErrParamRequired("RecurrenceInHours")) } if s.RecurrenceInHours != nil && *s.RecurrenceInHours < 1 { invalidParams.Add(request.NewErrParamMinValue("RecurrenceInHours", 1)) } if s.StartAt == nil { invalidParams.Add(request.NewErrParamRequired("StartAt")) } if s.VolumeARN == nil { invalidParams.Add(request.NewErrParamRequired("VolumeARN")) } if s.VolumeARN != nil && len(*s.VolumeARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("VolumeARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A JSON object containing the of the updated storage volume. type UpdateSnapshotScheduleOutput struct { _ struct{} `type:"structure"` VolumeARN *string `min:"50" type:"string"` } // String returns the string representation func (s UpdateSnapshotScheduleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateSnapshotScheduleOutput) GoString() string { return s.String() } type UpdateVTLDeviceTypeInput struct { _ struct{} `type:"structure"` // The type of medium changer you want to select. // // Valid Values: "STK-L700", "AWS-Gateway-VTL" // // DeviceType is a required field DeviceType *string `min:"2" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the medium changer you want to select. // // VTLDeviceARN is a required field VTLDeviceARN *string `min:"50" type:"string" required:"true"` } // String returns the string representation func (s UpdateVTLDeviceTypeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateVTLDeviceTypeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateVTLDeviceTypeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateVTLDeviceTypeInput"} if s.DeviceType == nil { invalidParams.Add(request.NewErrParamRequired("DeviceType")) } if s.DeviceType != nil && len(*s.DeviceType) < 2 { invalidParams.Add(request.NewErrParamMinLen("DeviceType", 2)) } if s.VTLDeviceARN == nil { invalidParams.Add(request.NewErrParamRequired("VTLDeviceARN")) } if s.VTLDeviceARN != nil && len(*s.VTLDeviceARN) < 50 { invalidParams.Add(request.NewErrParamMinLen("VTLDeviceARN", 50)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // UpdateVTLDeviceTypeOutput type UpdateVTLDeviceTypeOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the medium changer you have selected. VTLDeviceARN *string `min:"50" type:"string"` } // String returns the string representation func (s UpdateVTLDeviceTypeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateVTLDeviceTypeOutput) GoString() string { return s.String() } // Represents a device object associated with a gateway-VTL. type VTLDevice struct { _ struct{} `type:"structure"` // A list of iSCSI information about a VTL device. DeviceiSCSIAttributes *DeviceiSCSIAttributes `type:"structure"` // Specifies the unique Amazon Resource Name (ARN) of the device (tape drive // or media changer). VTLDeviceARN *string `min:"50" type:"string"` VTLDeviceProductIdentifier *string `type:"string"` VTLDeviceType *string `type:"string"` VTLDeviceVendor *string `type:"string"` } // String returns the string representation func (s VTLDevice) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VTLDevice) GoString() string { return s.String() } // Describes a storage volume object. type VolumeInfo struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation // to return a list of gateways for your account and region. GatewayARN *string `min:"50" type:"string"` // The unique identifier assigned to your gateway during activation. This ID // becomes part of the gateway Amazon Resource Name (ARN), which you use as // input for other operations. // // Valid Values: 50 to 500 lowercase letters, numbers, periods (.), and hyphens // (-). GatewayId *string `min:"12" type:"string"` // The Amazon Resource Name (ARN) for the storage volume. For example, the following // is a valid ARN: // // arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB // // Valid Values: 50 to 500 lowercase letters, numbers, periods (.), and hyphens // (-). VolumeARN *string `min:"50" type:"string"` // The unique identifier assigned to the volume. This ID becomes part of the // volume Amazon Resource Name (ARN), which you use as input for other operations. // // Valid Values: 50 to 500 lowercase letters, numbers, periods (.), and hyphens // (-). VolumeId *string `min:"12" type:"string"` // The size, in bytes, of the volume. // // Valid Values: 50 to 500 lowercase letters, numbers, periods (.), and hyphens // (-). VolumeSizeInBytes *int64 `type:"long"` VolumeType *string `min:"3" type:"string"` } // String returns the string representation func (s VolumeInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VolumeInfo) GoString() string { return s.String() } type VolumeRecoveryPointInfo struct { _ struct{} `type:"structure"` VolumeARN *string `min:"50" type:"string"` VolumeRecoveryPointTime *string `type:"string"` VolumeSizeInBytes *int64 `type:"long"` VolumeUsageInBytes *int64 `type:"long"` } // String returns the string representation func (s VolumeRecoveryPointInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VolumeRecoveryPointInfo) GoString() string { return s.String() } // Lists iSCSI information about a volume. type VolumeiSCSIAttributes struct { _ struct{} `type:"structure"` // Indicates whether mutual CHAP is enabled for the iSCSI target. ChapEnabled *bool `type:"boolean"` // The logical disk number. LunNumber *int64 `min:"1" type:"integer"` // The network interface identifier. NetworkInterfaceId *string `type:"string"` // The port used to communicate with iSCSI targets. NetworkInterfacePort *int64 `type:"integer"` // The Amazon Resource Name (ARN) of the volume target. TargetARN *string `min:"50" type:"string"` } // String returns the string representation func (s VolumeiSCSIAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VolumeiSCSIAttributes) GoString() string { return s.String() } const ( // ErrorCodeActivationKeyExpired is a ErrorCode enum value ErrorCodeActivationKeyExpired = "ActivationKeyExpired" // ErrorCodeActivationKeyInvalid is a ErrorCode enum value ErrorCodeActivationKeyInvalid = "ActivationKeyInvalid" // ErrorCodeActivationKeyNotFound is a ErrorCode enum value ErrorCodeActivationKeyNotFound = "ActivationKeyNotFound" // ErrorCodeGatewayInternalError is a ErrorCode enum value ErrorCodeGatewayInternalError = "GatewayInternalError" // ErrorCodeGatewayNotConnected is a ErrorCode enum value ErrorCodeGatewayNotConnected = "GatewayNotConnected" // ErrorCodeGatewayNotFound is a ErrorCode enum value ErrorCodeGatewayNotFound = "GatewayNotFound" // ErrorCodeGatewayProxyNetworkConnectionBusy is a ErrorCode enum value ErrorCodeGatewayProxyNetworkConnectionBusy = "GatewayProxyNetworkConnectionBusy" // ErrorCodeAuthenticationFailure is a ErrorCode enum value ErrorCodeAuthenticationFailure = "AuthenticationFailure" // ErrorCodeBandwidthThrottleScheduleNotFound is a ErrorCode enum value ErrorCodeBandwidthThrottleScheduleNotFound = "BandwidthThrottleScheduleNotFound" // ErrorCodeBlocked is a ErrorCode enum value ErrorCodeBlocked = "Blocked" // ErrorCodeCannotExportSnapshot is a ErrorCode enum value ErrorCodeCannotExportSnapshot = "CannotExportSnapshot" // ErrorCodeChapCredentialNotFound is a ErrorCode enum value ErrorCodeChapCredentialNotFound = "ChapCredentialNotFound" // ErrorCodeDiskAlreadyAllocated is a ErrorCode enum value ErrorCodeDiskAlreadyAllocated = "DiskAlreadyAllocated" // ErrorCodeDiskDoesNotExist is a ErrorCode enum value ErrorCodeDiskDoesNotExist = "DiskDoesNotExist" // ErrorCodeDiskSizeGreaterThanVolumeMaxSize is a ErrorCode enum value ErrorCodeDiskSizeGreaterThanVolumeMaxSize = "DiskSizeGreaterThanVolumeMaxSize" // ErrorCodeDiskSizeLessThanVolumeSize is a ErrorCode enum value ErrorCodeDiskSizeLessThanVolumeSize = "DiskSizeLessThanVolumeSize" // ErrorCodeDiskSizeNotGigAligned is a ErrorCode enum value ErrorCodeDiskSizeNotGigAligned = "DiskSizeNotGigAligned" // ErrorCodeDuplicateCertificateInfo is a ErrorCode enum value ErrorCodeDuplicateCertificateInfo = "DuplicateCertificateInfo" // ErrorCodeDuplicateSchedule is a ErrorCode enum value ErrorCodeDuplicateSchedule = "DuplicateSchedule" // ErrorCodeEndpointNotFound is a ErrorCode enum value ErrorCodeEndpointNotFound = "EndpointNotFound" // ErrorCodeIamnotSupported is a ErrorCode enum value ErrorCodeIamnotSupported = "IAMNotSupported" // ErrorCodeInitiatorInvalid is a ErrorCode enum value ErrorCodeInitiatorInvalid = "InitiatorInvalid" // ErrorCodeInitiatorNotFound is a ErrorCode enum value ErrorCodeInitiatorNotFound = "InitiatorNotFound" // ErrorCodeInternalError is a ErrorCode enum value ErrorCodeInternalError = "InternalError" // ErrorCodeInvalidGateway is a ErrorCode enum value ErrorCodeInvalidGateway = "InvalidGateway" // ErrorCodeInvalidEndpoint is a ErrorCode enum value ErrorCodeInvalidEndpoint = "InvalidEndpoint" // ErrorCodeInvalidParameters is a ErrorCode enum value ErrorCodeInvalidParameters = "InvalidParameters" // ErrorCodeInvalidSchedule is a ErrorCode enum value ErrorCodeInvalidSchedule = "InvalidSchedule" // ErrorCodeLocalStorageLimitExceeded is a ErrorCode enum value ErrorCodeLocalStorageLimitExceeded = "LocalStorageLimitExceeded" // ErrorCodeLunAlreadyAllocated is a ErrorCode enum value ErrorCodeLunAlreadyAllocated = "LunAlreadyAllocated " // ErrorCodeLunInvalid is a ErrorCode enum value ErrorCodeLunInvalid = "LunInvalid" // ErrorCodeMaximumContentLengthExceeded is a ErrorCode enum value ErrorCodeMaximumContentLengthExceeded = "MaximumContentLengthExceeded" // ErrorCodeMaximumTapeCartridgeCountExceeded is a ErrorCode enum value ErrorCodeMaximumTapeCartridgeCountExceeded = "MaximumTapeCartridgeCountExceeded" // ErrorCodeMaximumVolumeCountExceeded is a ErrorCode enum value ErrorCodeMaximumVolumeCountExceeded = "MaximumVolumeCountExceeded" // ErrorCodeNetworkConfigurationChanged is a ErrorCode enum value ErrorCodeNetworkConfigurationChanged = "NetworkConfigurationChanged" // ErrorCodeNoDisksAvailable is a ErrorCode enum value ErrorCodeNoDisksAvailable = "NoDisksAvailable" // ErrorCodeNotImplemented is a ErrorCode enum value ErrorCodeNotImplemented = "NotImplemented" // ErrorCodeNotSupported is a ErrorCode enum value ErrorCodeNotSupported = "NotSupported" // ErrorCodeOperationAborted is a ErrorCode enum value ErrorCodeOperationAborted = "OperationAborted" // ErrorCodeOutdatedGateway is a ErrorCode enum value ErrorCodeOutdatedGateway = "OutdatedGateway" // ErrorCodeParametersNotImplemented is a ErrorCode enum value ErrorCodeParametersNotImplemented = "ParametersNotImplemented" // ErrorCodeRegionInvalid is a ErrorCode enum value ErrorCodeRegionInvalid = "RegionInvalid" // ErrorCodeRequestTimeout is a ErrorCode enum value ErrorCodeRequestTimeout = "RequestTimeout" // ErrorCodeServiceUnavailable is a ErrorCode enum value ErrorCodeServiceUnavailable = "ServiceUnavailable" // ErrorCodeSnapshotDeleted is a ErrorCode enum value ErrorCodeSnapshotDeleted = "SnapshotDeleted" // ErrorCodeSnapshotIdInvalid is a ErrorCode enum value ErrorCodeSnapshotIdInvalid = "SnapshotIdInvalid" // ErrorCodeSnapshotInProgress is a ErrorCode enum value ErrorCodeSnapshotInProgress = "SnapshotInProgress" // ErrorCodeSnapshotNotFound is a ErrorCode enum value ErrorCodeSnapshotNotFound = "SnapshotNotFound" // ErrorCodeSnapshotScheduleNotFound is a ErrorCode enum value ErrorCodeSnapshotScheduleNotFound = "SnapshotScheduleNotFound" // ErrorCodeStagingAreaFull is a ErrorCode enum value ErrorCodeStagingAreaFull = "StagingAreaFull" // ErrorCodeStorageFailure is a ErrorCode enum value ErrorCodeStorageFailure = "StorageFailure" // ErrorCodeTapeCartridgeNotFound is a ErrorCode enum value ErrorCodeTapeCartridgeNotFound = "TapeCartridgeNotFound" // ErrorCodeTargetAlreadyExists is a ErrorCode enum value ErrorCodeTargetAlreadyExists = "TargetAlreadyExists" // ErrorCodeTargetInvalid is a ErrorCode enum value ErrorCodeTargetInvalid = "TargetInvalid" // ErrorCodeTargetNotFound is a ErrorCode enum value ErrorCodeTargetNotFound = "TargetNotFound" // ErrorCodeUnauthorizedOperation is a ErrorCode enum value ErrorCodeUnauthorizedOperation = "UnauthorizedOperation" // ErrorCodeVolumeAlreadyExists is a ErrorCode enum value ErrorCodeVolumeAlreadyExists = "VolumeAlreadyExists" // ErrorCodeVolumeIdInvalid is a ErrorCode enum value ErrorCodeVolumeIdInvalid = "VolumeIdInvalid" // ErrorCodeVolumeInUse is a ErrorCode enum value ErrorCodeVolumeInUse = "VolumeInUse" // ErrorCodeVolumeNotFound is a ErrorCode enum value ErrorCodeVolumeNotFound = "VolumeNotFound" // ErrorCodeVolumeNotReady is a ErrorCode enum value ErrorCodeVolumeNotReady = "VolumeNotReady" ) aws-sdk-go-1.4.22/service/storagegateway/examples_test.go000066400000000000000000001064201300374646400234600ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package storagegateway_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/storagegateway" ) var _ time.Duration var _ bytes.Buffer func ExampleStorageGateway_ActivateGateway() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.ActivateGatewayInput{ ActivationKey: aws.String("ActivationKey"), // Required GatewayName: aws.String("GatewayName"), // Required GatewayRegion: aws.String("RegionId"), // Required GatewayTimezone: aws.String("GatewayTimezone"), // Required GatewayType: aws.String("GatewayType"), MediumChangerType: aws.String("MediumChangerType"), TapeDriveType: aws.String("TapeDriveType"), } resp, err := svc.ActivateGateway(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_AddCache() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.AddCacheInput{ DiskIds: []*string{ // Required aws.String("DiskId"), // Required // More values... }, GatewayARN: aws.String("GatewayARN"), // Required } resp, err := svc.AddCache(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_AddTagsToResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.AddTagsToResourceInput{ ResourceARN: aws.String("ResourceARN"), // Required Tags: []*storagegateway.Tag{ // Required { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), // Required }, // More values... }, } resp, err := svc.AddTagsToResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_AddUploadBuffer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.AddUploadBufferInput{ DiskIds: []*string{ // Required aws.String("DiskId"), // Required // More values... }, GatewayARN: aws.String("GatewayARN"), // Required } resp, err := svc.AddUploadBuffer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_AddWorkingStorage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.AddWorkingStorageInput{ DiskIds: []*string{ // Required aws.String("DiskId"), // Required // More values... }, GatewayARN: aws.String("GatewayARN"), // Required } resp, err := svc.AddWorkingStorage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_CancelArchival() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.CancelArchivalInput{ GatewayARN: aws.String("GatewayARN"), // Required TapeARN: aws.String("TapeARN"), // Required } resp, err := svc.CancelArchival(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_CancelRetrieval() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.CancelRetrievalInput{ GatewayARN: aws.String("GatewayARN"), // Required TapeARN: aws.String("TapeARN"), // Required } resp, err := svc.CancelRetrieval(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_CreateCachediSCSIVolume() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.CreateCachediSCSIVolumeInput{ ClientToken: aws.String("ClientToken"), // Required GatewayARN: aws.String("GatewayARN"), // Required NetworkInterfaceId: aws.String("NetworkInterfaceId"), // Required TargetName: aws.String("TargetName"), // Required VolumeSizeInBytes: aws.Int64(1), // Required SnapshotId: aws.String("SnapshotId"), } resp, err := svc.CreateCachediSCSIVolume(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_CreateSnapshot() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.CreateSnapshotInput{ SnapshotDescription: aws.String("SnapshotDescription"), // Required VolumeARN: aws.String("VolumeARN"), // Required } resp, err := svc.CreateSnapshot(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_CreateSnapshotFromVolumeRecoveryPoint() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.CreateSnapshotFromVolumeRecoveryPointInput{ SnapshotDescription: aws.String("SnapshotDescription"), // Required VolumeARN: aws.String("VolumeARN"), // Required } resp, err := svc.CreateSnapshotFromVolumeRecoveryPoint(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_CreateStorediSCSIVolume() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.CreateStorediSCSIVolumeInput{ DiskId: aws.String("DiskId"), // Required GatewayARN: aws.String("GatewayARN"), // Required NetworkInterfaceId: aws.String("NetworkInterfaceId"), // Required PreserveExistingData: aws.Bool(true), // Required TargetName: aws.String("TargetName"), // Required SnapshotId: aws.String("SnapshotId"), } resp, err := svc.CreateStorediSCSIVolume(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_CreateTapeWithBarcode() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.CreateTapeWithBarcodeInput{ GatewayARN: aws.String("GatewayARN"), // Required TapeBarcode: aws.String("TapeBarcode"), // Required TapeSizeInBytes: aws.Int64(1), // Required } resp, err := svc.CreateTapeWithBarcode(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_CreateTapes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.CreateTapesInput{ ClientToken: aws.String("ClientToken"), // Required GatewayARN: aws.String("GatewayARN"), // Required NumTapesToCreate: aws.Int64(1), // Required TapeBarcodePrefix: aws.String("TapeBarcodePrefix"), // Required TapeSizeInBytes: aws.Int64(1), // Required } resp, err := svc.CreateTapes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DeleteBandwidthRateLimit() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DeleteBandwidthRateLimitInput{ BandwidthType: aws.String("BandwidthType"), // Required GatewayARN: aws.String("GatewayARN"), // Required } resp, err := svc.DeleteBandwidthRateLimit(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DeleteChapCredentials() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DeleteChapCredentialsInput{ InitiatorName: aws.String("IqnName"), // Required TargetARN: aws.String("TargetARN"), // Required } resp, err := svc.DeleteChapCredentials(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DeleteGateway() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DeleteGatewayInput{ GatewayARN: aws.String("GatewayARN"), // Required } resp, err := svc.DeleteGateway(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DeleteSnapshotSchedule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DeleteSnapshotScheduleInput{ VolumeARN: aws.String("VolumeARN"), // Required } resp, err := svc.DeleteSnapshotSchedule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DeleteTape() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DeleteTapeInput{ GatewayARN: aws.String("GatewayARN"), // Required TapeARN: aws.String("TapeARN"), // Required } resp, err := svc.DeleteTape(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DeleteTapeArchive() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DeleteTapeArchiveInput{ TapeARN: aws.String("TapeARN"), // Required } resp, err := svc.DeleteTapeArchive(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DeleteVolume() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DeleteVolumeInput{ VolumeARN: aws.String("VolumeARN"), // Required } resp, err := svc.DeleteVolume(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DescribeBandwidthRateLimit() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DescribeBandwidthRateLimitInput{ GatewayARN: aws.String("GatewayARN"), // Required } resp, err := svc.DescribeBandwidthRateLimit(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DescribeCache() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DescribeCacheInput{ GatewayARN: aws.String("GatewayARN"), // Required } resp, err := svc.DescribeCache(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DescribeCachediSCSIVolumes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DescribeCachediSCSIVolumesInput{ VolumeARNs: []*string{ // Required aws.String("VolumeARN"), // Required // More values... }, } resp, err := svc.DescribeCachediSCSIVolumes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DescribeChapCredentials() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DescribeChapCredentialsInput{ TargetARN: aws.String("TargetARN"), // Required } resp, err := svc.DescribeChapCredentials(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DescribeGatewayInformation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DescribeGatewayInformationInput{ GatewayARN: aws.String("GatewayARN"), // Required } resp, err := svc.DescribeGatewayInformation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DescribeMaintenanceStartTime() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DescribeMaintenanceStartTimeInput{ GatewayARN: aws.String("GatewayARN"), // Required } resp, err := svc.DescribeMaintenanceStartTime(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DescribeSnapshotSchedule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DescribeSnapshotScheduleInput{ VolumeARN: aws.String("VolumeARN"), // Required } resp, err := svc.DescribeSnapshotSchedule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DescribeStorediSCSIVolumes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DescribeStorediSCSIVolumesInput{ VolumeARNs: []*string{ // Required aws.String("VolumeARN"), // Required // More values... }, } resp, err := svc.DescribeStorediSCSIVolumes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DescribeTapeArchives() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DescribeTapeArchivesInput{ Limit: aws.Int64(1), Marker: aws.String("Marker"), TapeARNs: []*string{ aws.String("TapeARN"), // Required // More values... }, } resp, err := svc.DescribeTapeArchives(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DescribeTapeRecoveryPoints() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DescribeTapeRecoveryPointsInput{ GatewayARN: aws.String("GatewayARN"), // Required Limit: aws.Int64(1), Marker: aws.String("Marker"), } resp, err := svc.DescribeTapeRecoveryPoints(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DescribeTapes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DescribeTapesInput{ GatewayARN: aws.String("GatewayARN"), // Required Limit: aws.Int64(1), Marker: aws.String("Marker"), TapeARNs: []*string{ aws.String("TapeARN"), // Required // More values... }, } resp, err := svc.DescribeTapes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DescribeUploadBuffer() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DescribeUploadBufferInput{ GatewayARN: aws.String("GatewayARN"), // Required } resp, err := svc.DescribeUploadBuffer(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DescribeVTLDevices() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DescribeVTLDevicesInput{ GatewayARN: aws.String("GatewayARN"), // Required Limit: aws.Int64(1), Marker: aws.String("Marker"), VTLDeviceARNs: []*string{ aws.String("VTLDeviceARN"), // Required // More values... }, } resp, err := svc.DescribeVTLDevices(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DescribeWorkingStorage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DescribeWorkingStorageInput{ GatewayARN: aws.String("GatewayARN"), // Required } resp, err := svc.DescribeWorkingStorage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_DisableGateway() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.DisableGatewayInput{ GatewayARN: aws.String("GatewayARN"), // Required } resp, err := svc.DisableGateway(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_ListGateways() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.ListGatewaysInput{ Limit: aws.Int64(1), Marker: aws.String("Marker"), } resp, err := svc.ListGateways(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_ListLocalDisks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.ListLocalDisksInput{ GatewayARN: aws.String("GatewayARN"), // Required } resp, err := svc.ListLocalDisks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_ListTagsForResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.ListTagsForResourceInput{ ResourceARN: aws.String("ResourceARN"), // Required Limit: aws.Int64(1), Marker: aws.String("Marker"), } resp, err := svc.ListTagsForResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_ListTapes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.ListTapesInput{ Limit: aws.Int64(1), Marker: aws.String("Marker"), TapeARNs: []*string{ aws.String("TapeARN"), // Required // More values... }, } resp, err := svc.ListTapes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_ListVolumeInitiators() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.ListVolumeInitiatorsInput{ VolumeARN: aws.String("VolumeARN"), // Required } resp, err := svc.ListVolumeInitiators(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_ListVolumeRecoveryPoints() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.ListVolumeRecoveryPointsInput{ GatewayARN: aws.String("GatewayARN"), // Required } resp, err := svc.ListVolumeRecoveryPoints(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_ListVolumes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.ListVolumesInput{ GatewayARN: aws.String("GatewayARN"), Limit: aws.Int64(1), Marker: aws.String("Marker"), } resp, err := svc.ListVolumes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_RemoveTagsFromResource() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.RemoveTagsFromResourceInput{ ResourceARN: aws.String("ResourceARN"), // Required TagKeys: []*string{ // Required aws.String("TagKey"), // Required // More values... }, } resp, err := svc.RemoveTagsFromResource(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_ResetCache() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.ResetCacheInput{ GatewayARN: aws.String("GatewayARN"), // Required } resp, err := svc.ResetCache(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_RetrieveTapeArchive() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.RetrieveTapeArchiveInput{ GatewayARN: aws.String("GatewayARN"), // Required TapeARN: aws.String("TapeARN"), // Required } resp, err := svc.RetrieveTapeArchive(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_RetrieveTapeRecoveryPoint() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.RetrieveTapeRecoveryPointInput{ GatewayARN: aws.String("GatewayARN"), // Required TapeARN: aws.String("TapeARN"), // Required } resp, err := svc.RetrieveTapeRecoveryPoint(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_SetLocalConsolePassword() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.SetLocalConsolePasswordInput{ GatewayARN: aws.String("GatewayARN"), // Required LocalConsolePassword: aws.String("LocalConsolePassword"), // Required } resp, err := svc.SetLocalConsolePassword(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_ShutdownGateway() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.ShutdownGatewayInput{ GatewayARN: aws.String("GatewayARN"), // Required } resp, err := svc.ShutdownGateway(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_StartGateway() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.StartGatewayInput{ GatewayARN: aws.String("GatewayARN"), // Required } resp, err := svc.StartGateway(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_UpdateBandwidthRateLimit() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.UpdateBandwidthRateLimitInput{ GatewayARN: aws.String("GatewayARN"), // Required AverageDownloadRateLimitInBitsPerSec: aws.Int64(1), AverageUploadRateLimitInBitsPerSec: aws.Int64(1), } resp, err := svc.UpdateBandwidthRateLimit(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_UpdateChapCredentials() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.UpdateChapCredentialsInput{ InitiatorName: aws.String("IqnName"), // Required SecretToAuthenticateInitiator: aws.String("ChapSecret"), // Required TargetARN: aws.String("TargetARN"), // Required SecretToAuthenticateTarget: aws.String("ChapSecret"), } resp, err := svc.UpdateChapCredentials(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_UpdateGatewayInformation() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.UpdateGatewayInformationInput{ GatewayARN: aws.String("GatewayARN"), // Required GatewayName: aws.String("GatewayName"), GatewayTimezone: aws.String("GatewayTimezone"), } resp, err := svc.UpdateGatewayInformation(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_UpdateGatewaySoftwareNow() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.UpdateGatewaySoftwareNowInput{ GatewayARN: aws.String("GatewayARN"), // Required } resp, err := svc.UpdateGatewaySoftwareNow(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_UpdateMaintenanceStartTime() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.UpdateMaintenanceStartTimeInput{ DayOfWeek: aws.Int64(1), // Required GatewayARN: aws.String("GatewayARN"), // Required HourOfDay: aws.Int64(1), // Required MinuteOfHour: aws.Int64(1), // Required } resp, err := svc.UpdateMaintenanceStartTime(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_UpdateSnapshotSchedule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.UpdateSnapshotScheduleInput{ RecurrenceInHours: aws.Int64(1), // Required StartAt: aws.Int64(1), // Required VolumeARN: aws.String("VolumeARN"), // Required Description: aws.String("Description"), } resp, err := svc.UpdateSnapshotSchedule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleStorageGateway_UpdateVTLDeviceType() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := storagegateway.New(sess) params := &storagegateway.UpdateVTLDeviceTypeInput{ DeviceType: aws.String("DeviceType"), // Required VTLDeviceARN: aws.String("VTLDeviceARN"), // Required } resp, err := svc.UpdateVTLDeviceType(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/storagegateway/service.go000066400000000000000000000134521300374646400222450ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package storagegateway import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // AWS Storage Gateway is the service that connects an on-premises software // appliance with cloud-based storage to provide seamless and secure integration // between an organization's on-premises IT environment and AWS's storage infrastructure. // The service enables you to securely upload data to the AWS cloud for cost // effective backup and rapid disaster recovery. // // Use the following links to get started using the AWS Storage Gateway Service // API Reference: // // * AWS Storage Gateway Required Request Headers (http://docs.aws.amazon.com/storagegateway/latest/userguide/AWSStorageGatewayHTTPRequestsHeaders.html): // Describes the required headers that you must send with every POST request // to AWS Storage Gateway. // // * Signing Requests (http://docs.aws.amazon.com/storagegateway/latest/userguide/AWSStorageGatewaySigningRequests.html): // AWS Storage Gateway requires that you authenticate every request you send; // this topic describes how sign such a request. // // * Error Responses (http://docs.aws.amazon.com/storagegateway/latest/userguide/APIErrorResponses.html): // Provides reference information about AWS Storage Gateway errors. // // * Operations in AWS Storage Gateway (http://docs.aws.amazon.com/storagegateway/latest/userguide/AWSStorageGatewayAPIOperations.html): // Contains detailed descriptions of all AWS Storage Gateway operations, // their request parameters, response elements, possible errors, and examples // of requests and responses. // // * AWS Storage Gateway Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/index.html?rande.html): // Provides a list of each of the s and endpoints available for use with // AWS Storage Gateway. // // AWS Storage Gateway resource IDs are in uppercase. When you use these resource // IDs with the Amazon EC2 API, EC2 expects resource IDs in lowercase. You must // change your resource ID to lowercase to use it with the EC2 API. For example, // in Storage Gateway the ID for a volume might be vol-1122AABB. When you use // this ID with the EC2 API, you must change it to vol-1122aabb. Otherwise, // the EC2 API might not behave as expected. // // IDs for Storage Gateway volumes and Amazon EBS snapshots created from gateway // volumes are changing to a longer format. Starting in December 2016, all new // volumes and snapshots will be created with a 17-character string. Starting // in April 2016, you will be able to use these longer IDs so you can test your // systems with the new format. For more information, see Longer EC2 and EBS // Resource IDs (https://aws.amazon.com/ec2/faqs/#longer-ids). // // For example, a volume ARN with the longer volume ID format will look like // this: // // arn:aws:storagegateway:us-west-2:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABBCCDDEEFFG. // // A snapshot ID with the longer ID format will look like this: snap-78e226633445566ee. // // For more information, see Announcement: Heads-up – Longer AWS Storage Gateway // volume and snapshot IDs coming in 2016 (https://forums.aws.amazon.com/ann.jspa?annID=3557). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type StorageGateway struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "storagegateway" // New creates a new instance of the StorageGateway client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a StorageGateway client from just a session. // svc := storagegateway.New(mySession) // // // Create a StorageGateway client with additional configuration // svc := storagegateway.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *StorageGateway { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *StorageGateway { svc := &StorageGateway{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2013-06-30", JSONVersion: "1.1", TargetPrefix: "StorageGateway_20130630", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a StorageGateway operation and runs any // custom request initialization. func (c *StorageGateway) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/storagegateway/storagegatewayiface/000077500000000000000000000000001300374646400242675ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/storagegateway/storagegatewayiface/interface.go000066400000000000000000000411501300374646400265570ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package storagegatewayiface provides an interface to enable mocking the AWS Storage Gateway service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package storagegatewayiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/storagegateway" ) // StorageGatewayAPI provides an interface to enable mocking the // storagegateway.StorageGateway service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Storage Gateway. // func myFunc(svc storagegatewayiface.StorageGatewayAPI) bool { // // Make svc.ActivateGateway request // } // // func main() { // sess := session.New() // svc := storagegateway.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockStorageGatewayClient struct { // storagegatewayiface.StorageGatewayAPI // } // func (m *mockStorageGatewayClient) ActivateGateway(input *storagegateway.ActivateGatewayInput) (*storagegateway.ActivateGatewayOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockStorageGatewayClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type StorageGatewayAPI interface { ActivateGatewayRequest(*storagegateway.ActivateGatewayInput) (*request.Request, *storagegateway.ActivateGatewayOutput) ActivateGateway(*storagegateway.ActivateGatewayInput) (*storagegateway.ActivateGatewayOutput, error) AddCacheRequest(*storagegateway.AddCacheInput) (*request.Request, *storagegateway.AddCacheOutput) AddCache(*storagegateway.AddCacheInput) (*storagegateway.AddCacheOutput, error) AddTagsToResourceRequest(*storagegateway.AddTagsToResourceInput) (*request.Request, *storagegateway.AddTagsToResourceOutput) AddTagsToResource(*storagegateway.AddTagsToResourceInput) (*storagegateway.AddTagsToResourceOutput, error) AddUploadBufferRequest(*storagegateway.AddUploadBufferInput) (*request.Request, *storagegateway.AddUploadBufferOutput) AddUploadBuffer(*storagegateway.AddUploadBufferInput) (*storagegateway.AddUploadBufferOutput, error) AddWorkingStorageRequest(*storagegateway.AddWorkingStorageInput) (*request.Request, *storagegateway.AddWorkingStorageOutput) AddWorkingStorage(*storagegateway.AddWorkingStorageInput) (*storagegateway.AddWorkingStorageOutput, error) CancelArchivalRequest(*storagegateway.CancelArchivalInput) (*request.Request, *storagegateway.CancelArchivalOutput) CancelArchival(*storagegateway.CancelArchivalInput) (*storagegateway.CancelArchivalOutput, error) CancelRetrievalRequest(*storagegateway.CancelRetrievalInput) (*request.Request, *storagegateway.CancelRetrievalOutput) CancelRetrieval(*storagegateway.CancelRetrievalInput) (*storagegateway.CancelRetrievalOutput, error) CreateCachediSCSIVolumeRequest(*storagegateway.CreateCachediSCSIVolumeInput) (*request.Request, *storagegateway.CreateCachediSCSIVolumeOutput) CreateCachediSCSIVolume(*storagegateway.CreateCachediSCSIVolumeInput) (*storagegateway.CreateCachediSCSIVolumeOutput, error) CreateSnapshotRequest(*storagegateway.CreateSnapshotInput) (*request.Request, *storagegateway.CreateSnapshotOutput) CreateSnapshot(*storagegateway.CreateSnapshotInput) (*storagegateway.CreateSnapshotOutput, error) CreateSnapshotFromVolumeRecoveryPointRequest(*storagegateway.CreateSnapshotFromVolumeRecoveryPointInput) (*request.Request, *storagegateway.CreateSnapshotFromVolumeRecoveryPointOutput) CreateSnapshotFromVolumeRecoveryPoint(*storagegateway.CreateSnapshotFromVolumeRecoveryPointInput) (*storagegateway.CreateSnapshotFromVolumeRecoveryPointOutput, error) CreateStorediSCSIVolumeRequest(*storagegateway.CreateStorediSCSIVolumeInput) (*request.Request, *storagegateway.CreateStorediSCSIVolumeOutput) CreateStorediSCSIVolume(*storagegateway.CreateStorediSCSIVolumeInput) (*storagegateway.CreateStorediSCSIVolumeOutput, error) CreateTapeWithBarcodeRequest(*storagegateway.CreateTapeWithBarcodeInput) (*request.Request, *storagegateway.CreateTapeWithBarcodeOutput) CreateTapeWithBarcode(*storagegateway.CreateTapeWithBarcodeInput) (*storagegateway.CreateTapeWithBarcodeOutput, error) CreateTapesRequest(*storagegateway.CreateTapesInput) (*request.Request, *storagegateway.CreateTapesOutput) CreateTapes(*storagegateway.CreateTapesInput) (*storagegateway.CreateTapesOutput, error) DeleteBandwidthRateLimitRequest(*storagegateway.DeleteBandwidthRateLimitInput) (*request.Request, *storagegateway.DeleteBandwidthRateLimitOutput) DeleteBandwidthRateLimit(*storagegateway.DeleteBandwidthRateLimitInput) (*storagegateway.DeleteBandwidthRateLimitOutput, error) DeleteChapCredentialsRequest(*storagegateway.DeleteChapCredentialsInput) (*request.Request, *storagegateway.DeleteChapCredentialsOutput) DeleteChapCredentials(*storagegateway.DeleteChapCredentialsInput) (*storagegateway.DeleteChapCredentialsOutput, error) DeleteGatewayRequest(*storagegateway.DeleteGatewayInput) (*request.Request, *storagegateway.DeleteGatewayOutput) DeleteGateway(*storagegateway.DeleteGatewayInput) (*storagegateway.DeleteGatewayOutput, error) DeleteSnapshotScheduleRequest(*storagegateway.DeleteSnapshotScheduleInput) (*request.Request, *storagegateway.DeleteSnapshotScheduleOutput) DeleteSnapshotSchedule(*storagegateway.DeleteSnapshotScheduleInput) (*storagegateway.DeleteSnapshotScheduleOutput, error) DeleteTapeRequest(*storagegateway.DeleteTapeInput) (*request.Request, *storagegateway.DeleteTapeOutput) DeleteTape(*storagegateway.DeleteTapeInput) (*storagegateway.DeleteTapeOutput, error) DeleteTapeArchiveRequest(*storagegateway.DeleteTapeArchiveInput) (*request.Request, *storagegateway.DeleteTapeArchiveOutput) DeleteTapeArchive(*storagegateway.DeleteTapeArchiveInput) (*storagegateway.DeleteTapeArchiveOutput, error) DeleteVolumeRequest(*storagegateway.DeleteVolumeInput) (*request.Request, *storagegateway.DeleteVolumeOutput) DeleteVolume(*storagegateway.DeleteVolumeInput) (*storagegateway.DeleteVolumeOutput, error) DescribeBandwidthRateLimitRequest(*storagegateway.DescribeBandwidthRateLimitInput) (*request.Request, *storagegateway.DescribeBandwidthRateLimitOutput) DescribeBandwidthRateLimit(*storagegateway.DescribeBandwidthRateLimitInput) (*storagegateway.DescribeBandwidthRateLimitOutput, error) DescribeCacheRequest(*storagegateway.DescribeCacheInput) (*request.Request, *storagegateway.DescribeCacheOutput) DescribeCache(*storagegateway.DescribeCacheInput) (*storagegateway.DescribeCacheOutput, error) DescribeCachediSCSIVolumesRequest(*storagegateway.DescribeCachediSCSIVolumesInput) (*request.Request, *storagegateway.DescribeCachediSCSIVolumesOutput) DescribeCachediSCSIVolumes(*storagegateway.DescribeCachediSCSIVolumesInput) (*storagegateway.DescribeCachediSCSIVolumesOutput, error) DescribeChapCredentialsRequest(*storagegateway.DescribeChapCredentialsInput) (*request.Request, *storagegateway.DescribeChapCredentialsOutput) DescribeChapCredentials(*storagegateway.DescribeChapCredentialsInput) (*storagegateway.DescribeChapCredentialsOutput, error) DescribeGatewayInformationRequest(*storagegateway.DescribeGatewayInformationInput) (*request.Request, *storagegateway.DescribeGatewayInformationOutput) DescribeGatewayInformation(*storagegateway.DescribeGatewayInformationInput) (*storagegateway.DescribeGatewayInformationOutput, error) DescribeMaintenanceStartTimeRequest(*storagegateway.DescribeMaintenanceStartTimeInput) (*request.Request, *storagegateway.DescribeMaintenanceStartTimeOutput) DescribeMaintenanceStartTime(*storagegateway.DescribeMaintenanceStartTimeInput) (*storagegateway.DescribeMaintenanceStartTimeOutput, error) DescribeSnapshotScheduleRequest(*storagegateway.DescribeSnapshotScheduleInput) (*request.Request, *storagegateway.DescribeSnapshotScheduleOutput) DescribeSnapshotSchedule(*storagegateway.DescribeSnapshotScheduleInput) (*storagegateway.DescribeSnapshotScheduleOutput, error) DescribeStorediSCSIVolumesRequest(*storagegateway.DescribeStorediSCSIVolumesInput) (*request.Request, *storagegateway.DescribeStorediSCSIVolumesOutput) DescribeStorediSCSIVolumes(*storagegateway.DescribeStorediSCSIVolumesInput) (*storagegateway.DescribeStorediSCSIVolumesOutput, error) DescribeTapeArchivesRequest(*storagegateway.DescribeTapeArchivesInput) (*request.Request, *storagegateway.DescribeTapeArchivesOutput) DescribeTapeArchives(*storagegateway.DescribeTapeArchivesInput) (*storagegateway.DescribeTapeArchivesOutput, error) DescribeTapeArchivesPages(*storagegateway.DescribeTapeArchivesInput, func(*storagegateway.DescribeTapeArchivesOutput, bool) bool) error DescribeTapeRecoveryPointsRequest(*storagegateway.DescribeTapeRecoveryPointsInput) (*request.Request, *storagegateway.DescribeTapeRecoveryPointsOutput) DescribeTapeRecoveryPoints(*storagegateway.DescribeTapeRecoveryPointsInput) (*storagegateway.DescribeTapeRecoveryPointsOutput, error) DescribeTapeRecoveryPointsPages(*storagegateway.DescribeTapeRecoveryPointsInput, func(*storagegateway.DescribeTapeRecoveryPointsOutput, bool) bool) error DescribeTapesRequest(*storagegateway.DescribeTapesInput) (*request.Request, *storagegateway.DescribeTapesOutput) DescribeTapes(*storagegateway.DescribeTapesInput) (*storagegateway.DescribeTapesOutput, error) DescribeTapesPages(*storagegateway.DescribeTapesInput, func(*storagegateway.DescribeTapesOutput, bool) bool) error DescribeUploadBufferRequest(*storagegateway.DescribeUploadBufferInput) (*request.Request, *storagegateway.DescribeUploadBufferOutput) DescribeUploadBuffer(*storagegateway.DescribeUploadBufferInput) (*storagegateway.DescribeUploadBufferOutput, error) DescribeVTLDevicesRequest(*storagegateway.DescribeVTLDevicesInput) (*request.Request, *storagegateway.DescribeVTLDevicesOutput) DescribeVTLDevices(*storagegateway.DescribeVTLDevicesInput) (*storagegateway.DescribeVTLDevicesOutput, error) DescribeVTLDevicesPages(*storagegateway.DescribeVTLDevicesInput, func(*storagegateway.DescribeVTLDevicesOutput, bool) bool) error DescribeWorkingStorageRequest(*storagegateway.DescribeWorkingStorageInput) (*request.Request, *storagegateway.DescribeWorkingStorageOutput) DescribeWorkingStorage(*storagegateway.DescribeWorkingStorageInput) (*storagegateway.DescribeWorkingStorageOutput, error) DisableGatewayRequest(*storagegateway.DisableGatewayInput) (*request.Request, *storagegateway.DisableGatewayOutput) DisableGateway(*storagegateway.DisableGatewayInput) (*storagegateway.DisableGatewayOutput, error) ListGatewaysRequest(*storagegateway.ListGatewaysInput) (*request.Request, *storagegateway.ListGatewaysOutput) ListGateways(*storagegateway.ListGatewaysInput) (*storagegateway.ListGatewaysOutput, error) ListGatewaysPages(*storagegateway.ListGatewaysInput, func(*storagegateway.ListGatewaysOutput, bool) bool) error ListLocalDisksRequest(*storagegateway.ListLocalDisksInput) (*request.Request, *storagegateway.ListLocalDisksOutput) ListLocalDisks(*storagegateway.ListLocalDisksInput) (*storagegateway.ListLocalDisksOutput, error) ListTagsForResourceRequest(*storagegateway.ListTagsForResourceInput) (*request.Request, *storagegateway.ListTagsForResourceOutput) ListTagsForResource(*storagegateway.ListTagsForResourceInput) (*storagegateway.ListTagsForResourceOutput, error) ListTapesRequest(*storagegateway.ListTapesInput) (*request.Request, *storagegateway.ListTapesOutput) ListTapes(*storagegateway.ListTapesInput) (*storagegateway.ListTapesOutput, error) ListVolumeInitiatorsRequest(*storagegateway.ListVolumeInitiatorsInput) (*request.Request, *storagegateway.ListVolumeInitiatorsOutput) ListVolumeInitiators(*storagegateway.ListVolumeInitiatorsInput) (*storagegateway.ListVolumeInitiatorsOutput, error) ListVolumeRecoveryPointsRequest(*storagegateway.ListVolumeRecoveryPointsInput) (*request.Request, *storagegateway.ListVolumeRecoveryPointsOutput) ListVolumeRecoveryPoints(*storagegateway.ListVolumeRecoveryPointsInput) (*storagegateway.ListVolumeRecoveryPointsOutput, error) ListVolumesRequest(*storagegateway.ListVolumesInput) (*request.Request, *storagegateway.ListVolumesOutput) ListVolumes(*storagegateway.ListVolumesInput) (*storagegateway.ListVolumesOutput, error) ListVolumesPages(*storagegateway.ListVolumesInput, func(*storagegateway.ListVolumesOutput, bool) bool) error RemoveTagsFromResourceRequest(*storagegateway.RemoveTagsFromResourceInput) (*request.Request, *storagegateway.RemoveTagsFromResourceOutput) RemoveTagsFromResource(*storagegateway.RemoveTagsFromResourceInput) (*storagegateway.RemoveTagsFromResourceOutput, error) ResetCacheRequest(*storagegateway.ResetCacheInput) (*request.Request, *storagegateway.ResetCacheOutput) ResetCache(*storagegateway.ResetCacheInput) (*storagegateway.ResetCacheOutput, error) RetrieveTapeArchiveRequest(*storagegateway.RetrieveTapeArchiveInput) (*request.Request, *storagegateway.RetrieveTapeArchiveOutput) RetrieveTapeArchive(*storagegateway.RetrieveTapeArchiveInput) (*storagegateway.RetrieveTapeArchiveOutput, error) RetrieveTapeRecoveryPointRequest(*storagegateway.RetrieveTapeRecoveryPointInput) (*request.Request, *storagegateway.RetrieveTapeRecoveryPointOutput) RetrieveTapeRecoveryPoint(*storagegateway.RetrieveTapeRecoveryPointInput) (*storagegateway.RetrieveTapeRecoveryPointOutput, error) SetLocalConsolePasswordRequest(*storagegateway.SetLocalConsolePasswordInput) (*request.Request, *storagegateway.SetLocalConsolePasswordOutput) SetLocalConsolePassword(*storagegateway.SetLocalConsolePasswordInput) (*storagegateway.SetLocalConsolePasswordOutput, error) ShutdownGatewayRequest(*storagegateway.ShutdownGatewayInput) (*request.Request, *storagegateway.ShutdownGatewayOutput) ShutdownGateway(*storagegateway.ShutdownGatewayInput) (*storagegateway.ShutdownGatewayOutput, error) StartGatewayRequest(*storagegateway.StartGatewayInput) (*request.Request, *storagegateway.StartGatewayOutput) StartGateway(*storagegateway.StartGatewayInput) (*storagegateway.StartGatewayOutput, error) UpdateBandwidthRateLimitRequest(*storagegateway.UpdateBandwidthRateLimitInput) (*request.Request, *storagegateway.UpdateBandwidthRateLimitOutput) UpdateBandwidthRateLimit(*storagegateway.UpdateBandwidthRateLimitInput) (*storagegateway.UpdateBandwidthRateLimitOutput, error) UpdateChapCredentialsRequest(*storagegateway.UpdateChapCredentialsInput) (*request.Request, *storagegateway.UpdateChapCredentialsOutput) UpdateChapCredentials(*storagegateway.UpdateChapCredentialsInput) (*storagegateway.UpdateChapCredentialsOutput, error) UpdateGatewayInformationRequest(*storagegateway.UpdateGatewayInformationInput) (*request.Request, *storagegateway.UpdateGatewayInformationOutput) UpdateGatewayInformation(*storagegateway.UpdateGatewayInformationInput) (*storagegateway.UpdateGatewayInformationOutput, error) UpdateGatewaySoftwareNowRequest(*storagegateway.UpdateGatewaySoftwareNowInput) (*request.Request, *storagegateway.UpdateGatewaySoftwareNowOutput) UpdateGatewaySoftwareNow(*storagegateway.UpdateGatewaySoftwareNowInput) (*storagegateway.UpdateGatewaySoftwareNowOutput, error) UpdateMaintenanceStartTimeRequest(*storagegateway.UpdateMaintenanceStartTimeInput) (*request.Request, *storagegateway.UpdateMaintenanceStartTimeOutput) UpdateMaintenanceStartTime(*storagegateway.UpdateMaintenanceStartTimeInput) (*storagegateway.UpdateMaintenanceStartTimeOutput, error) UpdateSnapshotScheduleRequest(*storagegateway.UpdateSnapshotScheduleInput) (*request.Request, *storagegateway.UpdateSnapshotScheduleOutput) UpdateSnapshotSchedule(*storagegateway.UpdateSnapshotScheduleInput) (*storagegateway.UpdateSnapshotScheduleOutput, error) UpdateVTLDeviceTypeRequest(*storagegateway.UpdateVTLDeviceTypeInput) (*request.Request, *storagegateway.UpdateVTLDeviceTypeOutput) UpdateVTLDeviceType(*storagegateway.UpdateVTLDeviceTypeInput) (*storagegateway.UpdateVTLDeviceTypeOutput, error) } var _ StorageGatewayAPI = (*storagegateway.StorageGateway)(nil) aws-sdk-go-1.4.22/service/sts/000077500000000000000000000000001300374646400160345ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/sts/api.go000066400000000000000000002520621300374646400171430ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package sts provides a client for AWS Security Token Service. package sts import ( "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opAssumeRole = "AssumeRole" // AssumeRoleRequest generates a "aws/request.Request" representing the // client's request for the AssumeRole operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AssumeRole for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AssumeRole method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AssumeRoleRequest method. // req, resp := client.AssumeRoleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *STS) AssumeRoleRequest(input *AssumeRoleInput) (req *request.Request, output *AssumeRoleOutput) { op := &request.Operation{ Name: opAssumeRole, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AssumeRoleInput{} } req = c.newRequest(op, input, output) output = &AssumeRoleOutput{} req.Data = output return } // AssumeRole API operation for AWS Security Token Service. // // Returns a set of temporary security credentials (consisting of an access // key ID, a secret access key, and a security token) that you can use to access // AWS resources that you might not normally have access to. Typically, you // use AssumeRole for cross-account access or federation. For a comparison of // AssumeRole with the other APIs that produce temporary credentials, see Requesting // Temporary Security Credentials (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html) // and Comparing the AWS STS APIs (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison) // in the IAM User Guide. // // Important: You cannot call AssumeRole by using AWS root account credentials; // access is denied. You must use credentials for an IAM user or an IAM role // to call AssumeRole. // // For cross-account access, imagine that you own multiple accounts and need // to access resources in each account. You could create long-term credentials // in each account to access those resources. However, managing all those credentials // and remembering which one can access which account can be time consuming. // Instead, you can create one set of long-term credentials in one account and // then use temporary security credentials to access all the other accounts // by assuming roles in those accounts. For more information about roles, see // IAM Roles (Delegation and Federation) (http://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html) // in the IAM User Guide. // // For federation, you can, for example, grant single sign-on access to the // AWS Management Console. If you already have an identity and authentication // system in your corporate network, you don't have to recreate user identities // in AWS in order to grant those user identities access to AWS. Instead, after // a user has been authenticated, you call AssumeRole (and specify the role // with the appropriate permissions) to get temporary security credentials for // that user. With those temporary security credentials, you construct a sign-in // URL that users can use to access the console. For more information, see Common // Scenarios for Temporary Credentials (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html#sts-introduction) // in the IAM User Guide. // // The temporary security credentials are valid for the duration that you specified // when calling AssumeRole, which can be from 900 seconds (15 minutes) to a // maximum of 3600 seconds (1 hour). The default is 1 hour. // // The temporary security credentials created by AssumeRole can be used to make // API calls to any AWS service with the following exception: you cannot call // the STS service's GetFederationToken or GetSessionToken APIs. // // Optionally, you can pass an IAM access policy to this operation. If you choose // not to pass a policy, the temporary security credentials that are returned // by the operation have the permissions that are defined in the access policy // of the role that is being assumed. If you pass a policy to this operation, // the temporary security credentials that are returned by the operation have // the permissions that are allowed by both the access policy of the role that // is being assumed, and the policy that you pass. This gives you a way to further // restrict the permissions for the resulting temporary security credentials. // You cannot use the passed policy to grant permissions that are in excess // of those allowed by the access policy of the role that is being assumed. // For more information, see Permissions for AssumeRole, AssumeRoleWithSAML, // and AssumeRoleWithWebIdentity (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_assumerole.html) // in the IAM User Guide. // // To assume a role, your AWS account must be trusted by the role. The trust // relationship is defined in the role's trust policy when the role is created. // That trust policy states which accounts are allowed to delegate access to // this account's role. // // The user who wants to access the role must also have permissions delegated // from the role's administrator. If the user is in a different account than // the role, then the user's administrator must attach a policy that allows // the user to call AssumeRole on the ARN of the role in the other account. // If the user is in the same account as the role, then you can either attach // a policy to the user (identical to the previous different account user), // or you can add the user as a principal directly in the role's trust policy // // Using MFA with AssumeRole // // You can optionally include multi-factor authentication (MFA) information // when you call AssumeRole. This is useful for cross-account scenarios in which // you want to make sure that the user who is assuming the role has been authenticated // using an AWS MFA device. In that scenario, the trust policy of the role being // assumed includes a condition that tests for MFA authentication; if the caller // does not include valid MFA information, the request to assume the role is // denied. The condition in a trust policy that tests for MFA authentication // might look like the following example. // // "Condition": {"Bool": {"aws:MultiFactorAuthPresent": true}} // // For more information, see Configuring MFA-Protected API Access (http://docs.aws.amazon.com/IAM/latest/UserGuide/MFAProtectedAPI.html) // in the IAM User Guide guide. // // To use MFA with AssumeRole, you pass values for the SerialNumber and TokenCode // parameters. The SerialNumber value identifies the user's hardware or virtual // MFA device. The TokenCode is the time-based one-time password (TOTP) that // the MFA devices produces. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Security Token Service's // API operation AssumeRole for usage and error information. // // Returned Error Codes: // * MalformedPolicyDocument // The request was rejected because the policy document was malformed. The error // message describes the specific error. // // * PackedPolicyTooLarge // The request was rejected because the policy document was too large. The error // message describes how big the policy document is, in packed form, as a percentage // of what the API allows. // // * RegionDisabledException // STS is not activated in the requested region for the account that is being // asked to generate credentials. The account administrator must use the IAM // console to activate STS in that region. For more information, see Activating // and Deactivating AWS STS in an AWS Region (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html) // in the IAM User Guide. // func (c *STS) AssumeRole(input *AssumeRoleInput) (*AssumeRoleOutput, error) { req, out := c.AssumeRoleRequest(input) err := req.Send() return out, err } const opAssumeRoleWithSAML = "AssumeRoleWithSAML" // AssumeRoleWithSAMLRequest generates a "aws/request.Request" representing the // client's request for the AssumeRoleWithSAML operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AssumeRoleWithSAML for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AssumeRoleWithSAML method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AssumeRoleWithSAMLRequest method. // req, resp := client.AssumeRoleWithSAMLRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *STS) AssumeRoleWithSAMLRequest(input *AssumeRoleWithSAMLInput) (req *request.Request, output *AssumeRoleWithSAMLOutput) { op := &request.Operation{ Name: opAssumeRoleWithSAML, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AssumeRoleWithSAMLInput{} } req = c.newRequest(op, input, output) output = &AssumeRoleWithSAMLOutput{} req.Data = output return } // AssumeRoleWithSAML API operation for AWS Security Token Service. // // Returns a set of temporary security credentials for users who have been authenticated // via a SAML authentication response. This operation provides a mechanism for // tying an enterprise identity store or directory to role-based AWS access // without user-specific credentials or configuration. For a comparison of AssumeRoleWithSAML // with the other APIs that produce temporary credentials, see Requesting Temporary // Security Credentials (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html) // and Comparing the AWS STS APIs (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison) // in the IAM User Guide. // // The temporary security credentials returned by this operation consist of // an access key ID, a secret access key, and a security token. Applications // can use these temporary security credentials to sign calls to AWS services. // // The temporary security credentials are valid for the duration that you specified // when calling AssumeRole, or until the time specified in the SAML authentication // response's SessionNotOnOrAfter value, whichever is shorter. The duration // can be from 900 seconds (15 minutes) to a maximum of 3600 seconds (1 hour). // The default is 1 hour. // // The temporary security credentials created by AssumeRoleWithSAML can be used // to make API calls to any AWS service with the following exception: you cannot // call the STS service's GetFederationToken or GetSessionToken APIs. // // Optionally, you can pass an IAM access policy to this operation. If you choose // not to pass a policy, the temporary security credentials that are returned // by the operation have the permissions that are defined in the access policy // of the role that is being assumed. If you pass a policy to this operation, // the temporary security credentials that are returned by the operation have // the permissions that are allowed by the intersection of both the access policy // of the role that is being assumed, and the policy that you pass. This means // that both policies must grant the permission for the action to be allowed. // This gives you a way to further restrict the permissions for the resulting // temporary security credentials. You cannot use the passed policy to grant // permissions that are in excess of those allowed by the access policy of the // role that is being assumed. For more information, see Permissions for AssumeRole, // AssumeRoleWithSAML, and AssumeRoleWithWebIdentity (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_assumerole.html) // in the IAM User Guide. // // Before your application can call AssumeRoleWithSAML, you must configure your // SAML identity provider (IdP) to issue the claims required by AWS. Additionally, // you must use AWS Identity and Access Management (IAM) to create a SAML provider // entity in your AWS account that represents your identity provider, and create // an IAM role that specifies this SAML provider in its trust policy. // // Calling AssumeRoleWithSAML does not require the use of AWS security credentials. // The identity of the caller is validated by using keys in the metadata document // that is uploaded for the SAML provider entity for your identity provider. // // Calling AssumeRoleWithSAML can result in an entry in your AWS CloudTrail // logs. The entry includes the value in the NameID element of the SAML assertion. // We recommend that you use a NameIDType that is not associated with any personally // identifiable information (PII). For example, you could instead use the Persistent // Identifier (urn:oasis:names:tc:SAML:2.0:nameid-format:persistent). // // For more information, see the following resources: // // * About SAML 2.0-based Federation (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html) // in the IAM User Guide. // // * Creating SAML Identity Providers (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml.html) // in the IAM User Guide. // // * Configuring a Relying Party and Claims (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml_relying-party.html) // in the IAM User Guide. // // * Creating a Role for SAML 2.0 Federation (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Security Token Service's // API operation AssumeRoleWithSAML for usage and error information. // // Returned Error Codes: // * MalformedPolicyDocument // The request was rejected because the policy document was malformed. The error // message describes the specific error. // // * PackedPolicyTooLarge // The request was rejected because the policy document was too large. The error // message describes how big the policy document is, in packed form, as a percentage // of what the API allows. // // * IDPRejectedClaim // The identity provider (IdP) reported that authentication failed. This might // be because the claim is invalid. // // If this error is returned for the AssumeRoleWithWebIdentity operation, it // can also mean that the claim has expired or has been explicitly revoked. // // * InvalidIdentityToken // The web identity token that was passed could not be validated by AWS. Get // a new identity token from the identity provider and then retry the request. // // * ExpiredTokenException // The web identity token that was passed is expired or is not valid. Get a // new identity token from the identity provider and then retry the request. // // * RegionDisabledException // STS is not activated in the requested region for the account that is being // asked to generate credentials. The account administrator must use the IAM // console to activate STS in that region. For more information, see Activating // and Deactivating AWS STS in an AWS Region (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html) // in the IAM User Guide. // func (c *STS) AssumeRoleWithSAML(input *AssumeRoleWithSAMLInput) (*AssumeRoleWithSAMLOutput, error) { req, out := c.AssumeRoleWithSAMLRequest(input) err := req.Send() return out, err } const opAssumeRoleWithWebIdentity = "AssumeRoleWithWebIdentity" // AssumeRoleWithWebIdentityRequest generates a "aws/request.Request" representing the // client's request for the AssumeRoleWithWebIdentity operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AssumeRoleWithWebIdentity for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AssumeRoleWithWebIdentity method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AssumeRoleWithWebIdentityRequest method. // req, resp := client.AssumeRoleWithWebIdentityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *STS) AssumeRoleWithWebIdentityRequest(input *AssumeRoleWithWebIdentityInput) (req *request.Request, output *AssumeRoleWithWebIdentityOutput) { op := &request.Operation{ Name: opAssumeRoleWithWebIdentity, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AssumeRoleWithWebIdentityInput{} } req = c.newRequest(op, input, output) output = &AssumeRoleWithWebIdentityOutput{} req.Data = output return } // AssumeRoleWithWebIdentity API operation for AWS Security Token Service. // // Returns a set of temporary security credentials for users who have been authenticated // in a mobile or web application with a web identity provider, such as Amazon // Cognito, Login with Amazon, Facebook, Google, or any OpenID Connect-compatible // identity provider. // // For mobile applications, we recommend that you use Amazon Cognito. You can // use Amazon Cognito with the AWS SDK for iOS (http://aws.amazon.com/sdkforios/) // and the AWS SDK for Android (http://aws.amazon.com/sdkforandroid/) to uniquely // identify a user and supply the user with a consistent identity throughout // the lifetime of an application. // // To learn more about Amazon Cognito, see Amazon Cognito Overview (http://docs.aws.amazon.com/mobile/sdkforandroid/developerguide/cognito-auth.html#d0e840) // in the AWS SDK for Android Developer Guide guide and Amazon Cognito Overview // (http://docs.aws.amazon.com/mobile/sdkforios/developerguide/cognito-auth.html#d0e664) // in the AWS SDK for iOS Developer Guide. // // Calling AssumeRoleWithWebIdentity does not require the use of AWS security // credentials. Therefore, you can distribute an application (for example, on // mobile devices) that requests temporary security credentials without including // long-term AWS credentials in the application, and without deploying server-based // proxy services that use long-term AWS credentials. Instead, the identity // of the caller is validated by using a token from the web identity provider. // For a comparison of AssumeRoleWithWebIdentity with the other APIs that produce // temporary credentials, see Requesting Temporary Security Credentials (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html) // and Comparing the AWS STS APIs (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison) // in the IAM User Guide. // // The temporary security credentials returned by this API consist of an access // key ID, a secret access key, and a security token. Applications can use these // temporary security credentials to sign calls to AWS service APIs. // // The credentials are valid for the duration that you specified when calling // AssumeRoleWithWebIdentity, which can be from 900 seconds (15 minutes) to // a maximum of 3600 seconds (1 hour). The default is 1 hour. // // The temporary security credentials created by AssumeRoleWithWebIdentity can // be used to make API calls to any AWS service with the following exception: // you cannot call the STS service's GetFederationToken or GetSessionToken APIs. // // Optionally, you can pass an IAM access policy to this operation. If you choose // not to pass a policy, the temporary security credentials that are returned // by the operation have the permissions that are defined in the access policy // of the role that is being assumed. If you pass a policy to this operation, // the temporary security credentials that are returned by the operation have // the permissions that are allowed by both the access policy of the role that // is being assumed, and the policy that you pass. This gives you a way to further // restrict the permissions for the resulting temporary security credentials. // You cannot use the passed policy to grant permissions that are in excess // of those allowed by the access policy of the role that is being assumed. // For more information, see Permissions for AssumeRole, AssumeRoleWithSAML, // and AssumeRoleWithWebIdentity (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_assumerole.html) // in the IAM User Guide. // // Before your application can call AssumeRoleWithWebIdentity, you must have // an identity token from a supported identity provider and create a role that // the application can assume. The role that your application assumes must trust // the identity provider that is associated with the identity token. In other // words, the identity provider must be specified in the role's trust policy. // // Calling AssumeRoleWithWebIdentity can result in an entry in your AWS CloudTrail // logs. The entry includes the Subject (http://openid.net/specs/openid-connect-core-1_0.html#Claims) // of the provided Web Identity Token. We recommend that you avoid using any // personally identifiable information (PII) in this field. For example, you // could instead use a GUID or a pairwise identifier, as suggested in the OIDC // specification (http://openid.net/specs/openid-connect-core-1_0.html#SubjectIDTypes). // // For more information about how to use web identity federation and the AssumeRoleWithWebIdentity // API, see the following resources: // // * Using Web Identity Federation APIs for Mobile Apps (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_oidc_manual) // and Federation Through a Web-based Identity Provider (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_assumerolewithwebidentity). // // // * Web Identity Federation Playground (https://web-identity-federation-playground.s3.amazonaws.com/index.html). // This interactive website lets you walk through the process of authenticating // via Login with Amazon, Facebook, or Google, getting temporary security // credentials, and then using those credentials to make a request to AWS. // // // * AWS SDK for iOS (http://aws.amazon.com/sdkforios/) and AWS SDK for Android // (http://aws.amazon.com/sdkforandroid/). These toolkits contain sample // apps that show how to invoke the identity providers, and then how to use // the information from these providers to get and use temporary security // credentials. // // * Web Identity Federation with Mobile Applications (http://aws.amazon.com/articles/4617974389850313). // This article discusses web identity federation and shows an example of // how to use web identity federation to get access to content in Amazon // S3. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Security Token Service's // API operation AssumeRoleWithWebIdentity for usage and error information. // // Returned Error Codes: // * MalformedPolicyDocument // The request was rejected because the policy document was malformed. The error // message describes the specific error. // // * PackedPolicyTooLarge // The request was rejected because the policy document was too large. The error // message describes how big the policy document is, in packed form, as a percentage // of what the API allows. // // * IDPRejectedClaim // The identity provider (IdP) reported that authentication failed. This might // be because the claim is invalid. // // If this error is returned for the AssumeRoleWithWebIdentity operation, it // can also mean that the claim has expired or has been explicitly revoked. // // * IDPCommunicationError // The request could not be fulfilled because the non-AWS identity provider // (IDP) that was asked to verify the incoming identity token could not be reached. // This is often a transient error caused by network conditions. Retry the request // a limited number of times so that you don't exceed the request rate. If the // error persists, the non-AWS identity provider might be down or not responding. // // * InvalidIdentityToken // The web identity token that was passed could not be validated by AWS. Get // a new identity token from the identity provider and then retry the request. // // * ExpiredTokenException // The web identity token that was passed is expired or is not valid. Get a // new identity token from the identity provider and then retry the request. // // * RegionDisabledException // STS is not activated in the requested region for the account that is being // asked to generate credentials. The account administrator must use the IAM // console to activate STS in that region. For more information, see Activating // and Deactivating AWS STS in an AWS Region (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html) // in the IAM User Guide. // func (c *STS) AssumeRoleWithWebIdentity(input *AssumeRoleWithWebIdentityInput) (*AssumeRoleWithWebIdentityOutput, error) { req, out := c.AssumeRoleWithWebIdentityRequest(input) err := req.Send() return out, err } const opDecodeAuthorizationMessage = "DecodeAuthorizationMessage" // DecodeAuthorizationMessageRequest generates a "aws/request.Request" representing the // client's request for the DecodeAuthorizationMessage operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DecodeAuthorizationMessage for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DecodeAuthorizationMessage method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DecodeAuthorizationMessageRequest method. // req, resp := client.DecodeAuthorizationMessageRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *STS) DecodeAuthorizationMessageRequest(input *DecodeAuthorizationMessageInput) (req *request.Request, output *DecodeAuthorizationMessageOutput) { op := &request.Operation{ Name: opDecodeAuthorizationMessage, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DecodeAuthorizationMessageInput{} } req = c.newRequest(op, input, output) output = &DecodeAuthorizationMessageOutput{} req.Data = output return } // DecodeAuthorizationMessage API operation for AWS Security Token Service. // // Decodes additional information about the authorization status of a request // from an encoded message returned in response to an AWS request. // // For example, if a user is not authorized to perform an action that he or // she has requested, the request returns a Client.UnauthorizedOperation response // (an HTTP 403 response). Some AWS actions additionally return an encoded message // that can provide details about this authorization failure. // // Only certain AWS actions return an encoded authorization message. The documentation // for an individual action indicates whether that action returns an encoded // message in addition to returning an HTTP code. // // The message is encoded because the details of the authorization status can // constitute privileged information that the user who requested the action // should not see. To decode an authorization status message, a user must be // granted permissions via an IAM policy to request the DecodeAuthorizationMessage // (sts:DecodeAuthorizationMessage) action. // // The decoded message includes the following type of information: // // * Whether the request was denied due to an explicit deny or due to the // absence of an explicit allow. For more information, see Determining Whether // a Request is Allowed or Denied (http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html#policy-eval-denyallow) // in the IAM User Guide. // // * The principal who made the request. // // * The requested action. // // * The requested resource. // // * The values of condition keys in the context of the user's request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Security Token Service's // API operation DecodeAuthorizationMessage for usage and error information. // // Returned Error Codes: // * InvalidAuthorizationMessageException // The error returned if the message passed to DecodeAuthorizationMessage was // invalid. This can happen if the token contains invalid characters, such as // linebreaks. // func (c *STS) DecodeAuthorizationMessage(input *DecodeAuthorizationMessageInput) (*DecodeAuthorizationMessageOutput, error) { req, out := c.DecodeAuthorizationMessageRequest(input) err := req.Send() return out, err } const opGetCallerIdentity = "GetCallerIdentity" // GetCallerIdentityRequest generates a "aws/request.Request" representing the // client's request for the GetCallerIdentity operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetCallerIdentity for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetCallerIdentity method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetCallerIdentityRequest method. // req, resp := client.GetCallerIdentityRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *STS) GetCallerIdentityRequest(input *GetCallerIdentityInput) (req *request.Request, output *GetCallerIdentityOutput) { op := &request.Operation{ Name: opGetCallerIdentity, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetCallerIdentityInput{} } req = c.newRequest(op, input, output) output = &GetCallerIdentityOutput{} req.Data = output return } // GetCallerIdentity API operation for AWS Security Token Service. // // Returns details about the IAM identity whose credentials are used to call // the API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Security Token Service's // API operation GetCallerIdentity for usage and error information. func (c *STS) GetCallerIdentity(input *GetCallerIdentityInput) (*GetCallerIdentityOutput, error) { req, out := c.GetCallerIdentityRequest(input) err := req.Send() return out, err } const opGetFederationToken = "GetFederationToken" // GetFederationTokenRequest generates a "aws/request.Request" representing the // client's request for the GetFederationToken operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetFederationToken for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetFederationToken method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetFederationTokenRequest method. // req, resp := client.GetFederationTokenRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *STS) GetFederationTokenRequest(input *GetFederationTokenInput) (req *request.Request, output *GetFederationTokenOutput) { op := &request.Operation{ Name: opGetFederationToken, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetFederationTokenInput{} } req = c.newRequest(op, input, output) output = &GetFederationTokenOutput{} req.Data = output return } // GetFederationToken API operation for AWS Security Token Service. // // Returns a set of temporary security credentials (consisting of an access // key ID, a secret access key, and a security token) for a federated user. // A typical use is in a proxy application that gets temporary security credentials // on behalf of distributed applications inside a corporate network. Because // you must call the GetFederationToken action using the long-term security // credentials of an IAM user, this call is appropriate in contexts where those // credentials can be safely stored, usually in a server-based application. // For a comparison of GetFederationToken with the other APIs that produce temporary // credentials, see Requesting Temporary Security Credentials (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html) // and Comparing the AWS STS APIs (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison) // in the IAM User Guide. // // If you are creating a mobile-based or browser-based app that can authenticate // users using a web identity provider like Login with Amazon, Facebook, Google, // or an OpenID Connect-compatible identity provider, we recommend that you // use Amazon Cognito (http://aws.amazon.com/cognito/) or AssumeRoleWithWebIdentity. // For more information, see Federation Through a Web-based Identity Provider // (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_assumerolewithwebidentity). // // The GetFederationToken action must be called by using the long-term AWS security // credentials of an IAM user. You can also call GetFederationToken using the // security credentials of an AWS root account, but we do not recommended it. // Instead, we recommend that you create an IAM user for the purpose of the // proxy application and then attach a policy to the IAM user that limits federated // users to only the actions and resources that they need access to. For more // information, see IAM Best Practices (http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) // in the IAM User Guide. // // The temporary security credentials that are obtained by using the long-term // credentials of an IAM user are valid for the specified duration, from 900 // seconds (15 minutes) up to a maximium of 129600 seconds (36 hours). The default // is 43200 seconds (12 hours). Temporary credentials that are obtained by using // AWS root account credentials have a maximum duration of 3600 seconds (1 hour). // // The temporary security credentials created by GetFederationToken can be used // to make API calls to any AWS service with the following exceptions: // // * You cannot use these credentials to call any IAM APIs. // // * You cannot call any STS APIs. // // Permissions // // The permissions for the temporary security credentials returned by GetFederationToken // are determined by a combination of the following: // // * The policy or policies that are attached to the IAM user whose credentials // are used to call GetFederationToken. // // * The policy that is passed as a parameter in the call. // // The passed policy is attached to the temporary security credentials that // result from the GetFederationToken API call--that is, to the federated user. // When the federated user makes an AWS request, AWS evaluates the policy attached // to the federated user in combination with the policy or policies attached // to the IAM user whose credentials were used to call GetFederationToken. AWS // allows the federated user's request only when both the federated user and // the IAM user are explicitly allowed to perform the requested action. The // passed policy cannot grant more permissions than those that are defined in // the IAM user policy. // // A typical use case is that the permissions of the IAM user whose credentials // are used to call GetFederationToken are designed to allow access to all the // actions and resources that any federated user will need. Then, for individual // users, you pass a policy to the operation that scopes down the permissions // to a level that's appropriate to that individual user, using a policy that // allows only a subset of permissions that are granted to the IAM user. // // If you do not pass a policy, the resulting temporary security credentials // have no effective permissions. The only exception is when the temporary security // credentials are used to access a resource that has a resource-based policy // that specifically allows the federated user to access the resource. // // For more information about how permissions work, see Permissions for GetFederationToken // (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_getfederationtoken.html). // For information about using GetFederationToken to create temporary security // credentials, see GetFederationToken—Federation Through a Custom Identity // Broker (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_getfederationtoken). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Security Token Service's // API operation GetFederationToken for usage and error information. // // Returned Error Codes: // * MalformedPolicyDocument // The request was rejected because the policy document was malformed. The error // message describes the specific error. // // * PackedPolicyTooLarge // The request was rejected because the policy document was too large. The error // message describes how big the policy document is, in packed form, as a percentage // of what the API allows. // // * RegionDisabledException // STS is not activated in the requested region for the account that is being // asked to generate credentials. The account administrator must use the IAM // console to activate STS in that region. For more information, see Activating // and Deactivating AWS STS in an AWS Region (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html) // in the IAM User Guide. // func (c *STS) GetFederationToken(input *GetFederationTokenInput) (*GetFederationTokenOutput, error) { req, out := c.GetFederationTokenRequest(input) err := req.Send() return out, err } const opGetSessionToken = "GetSessionToken" // GetSessionTokenRequest generates a "aws/request.Request" representing the // client's request for the GetSessionToken operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetSessionToken for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetSessionToken method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetSessionTokenRequest method. // req, resp := client.GetSessionTokenRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *STS) GetSessionTokenRequest(input *GetSessionTokenInput) (req *request.Request, output *GetSessionTokenOutput) { op := &request.Operation{ Name: opGetSessionToken, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetSessionTokenInput{} } req = c.newRequest(op, input, output) output = &GetSessionTokenOutput{} req.Data = output return } // GetSessionToken API operation for AWS Security Token Service. // // Returns a set of temporary credentials for an AWS account or IAM user. The // credentials consist of an access key ID, a secret access key, and a security // token. Typically, you use GetSessionToken if you want to use MFA to protect // programmatic calls to specific AWS APIs like Amazon EC2 StopInstances. MFA-enabled // IAM users would need to call GetSessionToken and submit an MFA code that // is associated with their MFA device. Using the temporary security credentials // that are returned from the call, IAM users can then make programmatic calls // to APIs that require MFA authentication. If you do not supply a correct MFA // code, then the API returns an access denied error. For a comparison of GetSessionToken // with the other APIs that produce temporary credentials, see Requesting Temporary // Security Credentials (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html) // and Comparing the AWS STS APIs (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison) // in the IAM User Guide. // // The GetSessionToken action must be called by using the long-term AWS security // credentials of the AWS account or an IAM user. Credentials that are created // by IAM users are valid for the duration that you specify, from 900 seconds // (15 minutes) up to a maximum of 129600 seconds (36 hours), with a default // of 43200 seconds (12 hours); credentials that are created by using account // credentials can range from 900 seconds (15 minutes) up to a maximum of 3600 // seconds (1 hour), with a default of 1 hour. // // The temporary security credentials created by GetSessionToken can be used // to make API calls to any AWS service with the following exceptions: // // * You cannot call any IAM APIs unless MFA authentication information is // included in the request. // // * You cannot call any STS API exceptAssumeRole. // // We recommend that you do not call GetSessionToken with root account credentials. // Instead, follow our best practices (http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#create-iam-users) // by creating one or more IAM users, giving them the necessary permissions, // and using IAM users for everyday interaction with AWS. // // The permissions associated with the temporary security credentials returned // by GetSessionToken are based on the permissions associated with account or // IAM user whose credentials are used to call the action. If GetSessionToken // is called using root account credentials, the temporary credentials have // root account permissions. Similarly, if GetSessionToken is called using the // credentials of an IAM user, the temporary credentials have the same permissions // as the IAM user. // // For more information about using GetSessionToken to create temporary credentials, // go to Temporary Credentials for Users in Untrusted Environments (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_getsessiontoken) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Security Token Service's // API operation GetSessionToken for usage and error information. // // Returned Error Codes: // * RegionDisabledException // STS is not activated in the requested region for the account that is being // asked to generate credentials. The account administrator must use the IAM // console to activate STS in that region. For more information, see Activating // and Deactivating AWS STS in an AWS Region (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html) // in the IAM User Guide. // func (c *STS) GetSessionToken(input *GetSessionTokenInput) (*GetSessionTokenOutput, error) { req, out := c.GetSessionTokenRequest(input) err := req.Send() return out, err } type AssumeRoleInput struct { _ struct{} `type:"structure"` // The duration, in seconds, of the role session. The value can range from 900 // seconds (15 minutes) to 3600 seconds (1 hour). By default, the value is set // to 3600 seconds. // // This is separate from the duration of a console session that you might request // using the returned credentials. The request to the federation endpoint for // a console sign-in token takes a SessionDuration parameter that specifies // the maximum length of the console session, separately from the DurationSeconds // parameter on this API. For more information, see Creating a URL that Enables // Federated Users to Access the AWS Management Console (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-console-custom-url.html) // in the IAM User Guide. DurationSeconds *int64 `min:"900" type:"integer"` // A unique identifier that is used by third parties when assuming roles in // their customers' accounts. For each role that the third party can assume, // they should instruct their customers to ensure the role's trust policy checks // for the external ID that the third party generated. Each time the third party // assumes the role, they should pass the customer's external ID. The external // ID is useful in order to help third parties bind a role to the customer who // created it. For more information about the external ID, see How to Use an // External ID When Granting Access to Your AWS Resources to a Third Party (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html) // in the IAM User Guide. // // The format for this parameter, as described by its regex pattern, is a string // of characters consisting of upper- and lower-case alphanumeric characters // with no spaces. You can also include underscores or any of the following // characters: =,.@:\/- ExternalId *string `min:"2" type:"string"` // An IAM policy in JSON format. // // This parameter is optional. If you pass a policy, the temporary security // credentials that are returned by the operation have the permissions that // are allowed by both (the intersection of) the access policy of the role that // is being assumed, and the policy that you pass. This gives you a way to further // restrict the permissions for the resulting temporary security credentials. // You cannot use the passed policy to grant permissions that are in excess // of those allowed by the access policy of the role that is being assumed. // For more information, see Permissions for AssumeRole, AssumeRoleWithSAML, // and AssumeRoleWithWebIdentity (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_assumerole.html) // in the IAM User Guide. // // The format for this parameter, as described by its regex pattern, is a string // of characters up to 2048 characters in length. The characters can be any // ASCII character from the space character to the end of the valid character // list (\u0020-\u00FF). It can also include the tab (\u0009), linefeed (\u000A), // and carriage return (\u000D) characters. // // The policy plain text must be 2048 bytes or shorter. However, an internal // conversion compresses it into a packed binary format with a separate limit. // The PackedPolicySize response element indicates by percentage how close to // the upper size limit the policy is, with 100% equaling the maximum allowed // size. Policy *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of the role to assume. // // RoleArn is a required field RoleArn *string `min:"20" type:"string" required:"true"` // An identifier for the assumed role session. // // Use the role session name to uniquely identify a session when the same role // is assumed by different principals or for different reasons. In cross-account // scenarios, the role session name is visible to, and can be logged by the // account that owns the role. The role session name is also used in the ARN // of the assumed role principal. This means that subsequent cross-account API // requests using the temporary security credentials will expose the role session // name to the external account in their CloudTrail logs. // // The format for this parameter, as described by its regex pattern, is a string // of characters consisting of upper- and lower-case alphanumeric characters // with no spaces. You can also include underscores or any of the following // characters: =,.@- // // RoleSessionName is a required field RoleSessionName *string `min:"2" type:"string" required:"true"` // The identification number of the MFA device that is associated with the user // who is making the AssumeRole call. Specify this value if the trust policy // of the role being assumed includes a condition that requires MFA authentication. // The value is either the serial number for a hardware device (such as GAHT12345678) // or an Amazon Resource Name (ARN) for a virtual device (such as arn:aws:iam::123456789012:mfa/user). // // The format for this parameter, as described by its regex pattern, is a string // of characters consisting of upper- and lower-case alphanumeric characters // with no spaces. You can also include underscores or any of the following // characters: =,.@- SerialNumber *string `min:"9" type:"string"` // The value provided by the MFA device, if the trust policy of the role being // assumed requires MFA (that is, if the policy includes a condition that tests // for MFA). If the role being assumed requires MFA and if the TokenCode value // is missing or expired, the AssumeRole call returns an "access denied" error. // // The format for this parameter, as described by its regex pattern, is a sequence // of six numeric digits. TokenCode *string `min:"6" type:"string"` } // String returns the string representation func (s AssumeRoleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssumeRoleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssumeRoleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssumeRoleInput"} if s.DurationSeconds != nil && *s.DurationSeconds < 900 { invalidParams.Add(request.NewErrParamMinValue("DurationSeconds", 900)) } if s.ExternalId != nil && len(*s.ExternalId) < 2 { invalidParams.Add(request.NewErrParamMinLen("ExternalId", 2)) } if s.Policy != nil && len(*s.Policy) < 1 { invalidParams.Add(request.NewErrParamMinLen("Policy", 1)) } if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if s.RoleArn != nil && len(*s.RoleArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) } if s.RoleSessionName == nil { invalidParams.Add(request.NewErrParamRequired("RoleSessionName")) } if s.RoleSessionName != nil && len(*s.RoleSessionName) < 2 { invalidParams.Add(request.NewErrParamMinLen("RoleSessionName", 2)) } if s.SerialNumber != nil && len(*s.SerialNumber) < 9 { invalidParams.Add(request.NewErrParamMinLen("SerialNumber", 9)) } if s.TokenCode != nil && len(*s.TokenCode) < 6 { invalidParams.Add(request.NewErrParamMinLen("TokenCode", 6)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful AssumeRole request, including temporary // AWS credentials that can be used to make AWS requests. type AssumeRoleOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) and the assumed role ID, which are identifiers // that you can use to refer to the resulting temporary security credentials. // For example, you can reference these credentials as a principal in a resource-based // policy by using the ARN or assumed role ID. The ARN and ID include the RoleSessionName // that you specified when you called AssumeRole. AssumedRoleUser *AssumedRoleUser `type:"structure"` // The temporary security credentials, which include an access key ID, a secret // access key, and a security (or session) token. // // Note: The size of the security token that STS APIs return is not fixed. We // strongly recommend that you make no assumptions about the maximum size. As // of this writing, the typical size is less than 4096 bytes, but that can vary. // Also, future updates to AWS might require larger sizes. Credentials *Credentials `type:"structure"` // A percentage value that indicates the size of the policy in packed form. // The service rejects any policy with a packed size greater than 100 percent, // which means the policy exceeded the allowed space. PackedPolicySize *int64 `type:"integer"` } // String returns the string representation func (s AssumeRoleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssumeRoleOutput) GoString() string { return s.String() } type AssumeRoleWithSAMLInput struct { _ struct{} `type:"structure"` // The duration, in seconds, of the role session. The value can range from 900 // seconds (15 minutes) to 3600 seconds (1 hour). By default, the value is set // to 3600 seconds. An expiration can also be specified in the SAML authentication // response's SessionNotOnOrAfter value. The actual expiration time is whichever // value is shorter. // // This is separate from the duration of a console session that you might request // using the returned credentials. The request to the federation endpoint for // a console sign-in token takes a SessionDuration parameter that specifies // the maximum length of the console session, separately from the DurationSeconds // parameter on this API. For more information, see Enabling SAML 2.0 Federated // Users to Access the AWS Management Console (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-console-saml.html) // in the IAM User Guide. DurationSeconds *int64 `min:"900" type:"integer"` // An IAM policy in JSON format. // // The policy parameter is optional. If you pass a policy, the temporary security // credentials that are returned by the operation have the permissions that // are allowed by both the access policy of the role that is being assumed, // and the policy that you pass. This gives you a way to further restrict the // permissions for the resulting temporary security credentials. You cannot // use the passed policy to grant permissions that are in excess of those allowed // by the access policy of the role that is being assumed. For more information, // Permissions for AssumeRole, AssumeRoleWithSAML, and AssumeRoleWithWebIdentity // (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_assumerole.html) // in the IAM User Guide. // // The format for this parameter, as described by its regex pattern, is a string // of characters up to 2048 characters in length. The characters can be any // ASCII character from the space character to the end of the valid character // list (\u0020-\u00FF). It can also include the tab (\u0009), linefeed (\u000A), // and carriage return (\u000D) characters. // // The policy plain text must be 2048 bytes or shorter. However, an internal // conversion compresses it into a packed binary format with a separate limit. // The PackedPolicySize response element indicates by percentage how close to // the upper size limit the policy is, with 100% equaling the maximum allowed // size. Policy *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of the SAML provider in IAM that describes // the IdP. // // PrincipalArn is a required field PrincipalArn *string `min:"20" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the role that the caller is assuming. // // RoleArn is a required field RoleArn *string `min:"20" type:"string" required:"true"` // The base-64 encoded SAML authentication response provided by the IdP. // // For more information, see Configuring a Relying Party and Adding Claims (http://docs.aws.amazon.com/IAM/latest/UserGuide/create-role-saml-IdP-tasks.html) // in the Using IAM guide. // // SAMLAssertion is a required field SAMLAssertion *string `min:"4" type:"string" required:"true"` } // String returns the string representation func (s AssumeRoleWithSAMLInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssumeRoleWithSAMLInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssumeRoleWithSAMLInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssumeRoleWithSAMLInput"} if s.DurationSeconds != nil && *s.DurationSeconds < 900 { invalidParams.Add(request.NewErrParamMinValue("DurationSeconds", 900)) } if s.Policy != nil && len(*s.Policy) < 1 { invalidParams.Add(request.NewErrParamMinLen("Policy", 1)) } if s.PrincipalArn == nil { invalidParams.Add(request.NewErrParamRequired("PrincipalArn")) } if s.PrincipalArn != nil && len(*s.PrincipalArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("PrincipalArn", 20)) } if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if s.RoleArn != nil && len(*s.RoleArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) } if s.SAMLAssertion == nil { invalidParams.Add(request.NewErrParamRequired("SAMLAssertion")) } if s.SAMLAssertion != nil && len(*s.SAMLAssertion) < 4 { invalidParams.Add(request.NewErrParamMinLen("SAMLAssertion", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful AssumeRoleWithSAML request, including // temporary AWS credentials that can be used to make AWS requests. type AssumeRoleWithSAMLOutput struct { _ struct{} `type:"structure"` // The identifiers for the temporary security credentials that the operation // returns. AssumedRoleUser *AssumedRoleUser `type:"structure"` // The value of the Recipient attribute of the SubjectConfirmationData element // of the SAML assertion. Audience *string `type:"string"` // The temporary security credentials, which include an access key ID, a secret // access key, and a security (or session) token. // // Note: The size of the security token that STS APIs return is not fixed. We // strongly recommend that you make no assumptions about the maximum size. As // of this writing, the typical size is less than 4096 bytes, but that can vary. // Also, future updates to AWS might require larger sizes. Credentials *Credentials `type:"structure"` // The value of the Issuer element of the SAML assertion. Issuer *string `type:"string"` // A hash value based on the concatenation of the Issuer response value, the // AWS account ID, and the friendly name (the last part of the ARN) of the SAML // provider in IAM. The combination of NameQualifier and Subject can be used // to uniquely identify a federated user. // // The following pseudocode shows how the hash value is calculated: // // BASE64 ( SHA1 ( "https://example.com/saml" + "123456789012" + "/MySAMLIdP" // ) ) NameQualifier *string `type:"string"` // A percentage value that indicates the size of the policy in packed form. // The service rejects any policy with a packed size greater than 100 percent, // which means the policy exceeded the allowed space. PackedPolicySize *int64 `type:"integer"` // The value of the NameID element in the Subject element of the SAML assertion. Subject *string `type:"string"` // The format of the name ID, as defined by the Format attribute in the NameID // element of the SAML assertion. Typical examples of the format are transient // or persistent. // // If the format includes the prefix urn:oasis:names:tc:SAML:2.0:nameid-format, // that prefix is removed. For example, urn:oasis:names:tc:SAML:2.0:nameid-format:transient // is returned as transient. If the format includes any other prefix, the format // is returned with no modifications. SubjectType *string `type:"string"` } // String returns the string representation func (s AssumeRoleWithSAMLOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssumeRoleWithSAMLOutput) GoString() string { return s.String() } type AssumeRoleWithWebIdentityInput struct { _ struct{} `type:"structure"` // The duration, in seconds, of the role session. The value can range from 900 // seconds (15 minutes) to 3600 seconds (1 hour). By default, the value is set // to 3600 seconds. // // This is separate from the duration of a console session that you might request // using the returned credentials. The request to the federation endpoint for // a console sign-in token takes a SessionDuration parameter that specifies // the maximum length of the console session, separately from the DurationSeconds // parameter on this API. For more information, see Creating a URL that Enables // Federated Users to Access the AWS Management Console (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-console-custom-url.html) // in the IAM User Guide. DurationSeconds *int64 `min:"900" type:"integer"` // An IAM policy in JSON format. // // The policy parameter is optional. If you pass a policy, the temporary security // credentials that are returned by the operation have the permissions that // are allowed by both the access policy of the role that is being assumed, // and the policy that you pass. This gives you a way to further restrict the // permissions for the resulting temporary security credentials. You cannot // use the passed policy to grant permissions that are in excess of those allowed // by the access policy of the role that is being assumed. For more information, // see Permissions for AssumeRoleWithWebIdentity (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_assumerole.html) // in the IAM User Guide. // // The format for this parameter, as described by its regex pattern, is a string // of characters up to 2048 characters in length. The characters can be any // ASCII character from the space character to the end of the valid character // list (\u0020-\u00FF). It can also include the tab (\u0009), linefeed (\u000A), // and carriage return (\u000D) characters. // // The policy plain text must be 2048 bytes or shorter. However, an internal // conversion compresses it into a packed binary format with a separate limit. // The PackedPolicySize response element indicates by percentage how close to // the upper size limit the policy is, with 100% equaling the maximum allowed // size. Policy *string `min:"1" type:"string"` // The fully qualified host component of the domain name of the identity provider. // // Specify this value only for OAuth 2.0 access tokens. Currently www.amazon.com // and graph.facebook.com are the only supported identity providers for OAuth // 2.0 access tokens. Do not include URL schemes and port numbers. // // Do not specify this value for OpenID Connect ID tokens. ProviderId *string `min:"4" type:"string"` // The Amazon Resource Name (ARN) of the role that the caller is assuming. // // RoleArn is a required field RoleArn *string `min:"20" type:"string" required:"true"` // An identifier for the assumed role session. Typically, you pass the name // or identifier that is associated with the user who is using your application. // That way, the temporary security credentials that your application will use // are associated with that user. This session name is included as part of the // ARN and assumed role ID in the AssumedRoleUser response element. // // The format for this parameter, as described by its regex pattern, is a string // of characters consisting of upper- and lower-case alphanumeric characters // with no spaces. You can also include underscores or any of the following // characters: =,.@- // // RoleSessionName is a required field RoleSessionName *string `min:"2" type:"string" required:"true"` // The OAuth 2.0 access token or OpenID Connect ID token that is provided by // the identity provider. Your application must get this token by authenticating // the user who is using your application with a web identity provider before // the application makes an AssumeRoleWithWebIdentity call. // // WebIdentityToken is a required field WebIdentityToken *string `min:"4" type:"string" required:"true"` } // String returns the string representation func (s AssumeRoleWithWebIdentityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssumeRoleWithWebIdentityInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssumeRoleWithWebIdentityInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssumeRoleWithWebIdentityInput"} if s.DurationSeconds != nil && *s.DurationSeconds < 900 { invalidParams.Add(request.NewErrParamMinValue("DurationSeconds", 900)) } if s.Policy != nil && len(*s.Policy) < 1 { invalidParams.Add(request.NewErrParamMinLen("Policy", 1)) } if s.ProviderId != nil && len(*s.ProviderId) < 4 { invalidParams.Add(request.NewErrParamMinLen("ProviderId", 4)) } if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if s.RoleArn != nil && len(*s.RoleArn) < 20 { invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) } if s.RoleSessionName == nil { invalidParams.Add(request.NewErrParamRequired("RoleSessionName")) } if s.RoleSessionName != nil && len(*s.RoleSessionName) < 2 { invalidParams.Add(request.NewErrParamMinLen("RoleSessionName", 2)) } if s.WebIdentityToken == nil { invalidParams.Add(request.NewErrParamRequired("WebIdentityToken")) } if s.WebIdentityToken != nil && len(*s.WebIdentityToken) < 4 { invalidParams.Add(request.NewErrParamMinLen("WebIdentityToken", 4)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful AssumeRoleWithWebIdentity request, // including temporary AWS credentials that can be used to make AWS requests. type AssumeRoleWithWebIdentityOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) and the assumed role ID, which are identifiers // that you can use to refer to the resulting temporary security credentials. // For example, you can reference these credentials as a principal in a resource-based // policy by using the ARN or assumed role ID. The ARN and ID include the RoleSessionName // that you specified when you called AssumeRole. AssumedRoleUser *AssumedRoleUser `type:"structure"` // The intended audience (also known as client ID) of the web identity token. // This is traditionally the client identifier issued to the application that // requested the web identity token. Audience *string `type:"string"` // The temporary security credentials, which include an access key ID, a secret // access key, and a security token. // // Note: The size of the security token that STS APIs return is not fixed. We // strongly recommend that you make no assumptions about the maximum size. As // of this writing, the typical size is less than 4096 bytes, but that can vary. // Also, future updates to AWS might require larger sizes. Credentials *Credentials `type:"structure"` // A percentage value that indicates the size of the policy in packed form. // The service rejects any policy with a packed size greater than 100 percent, // which means the policy exceeded the allowed space. PackedPolicySize *int64 `type:"integer"` // The issuing authority of the web identity token presented. For OpenID Connect // ID Tokens this contains the value of the iss field. For OAuth 2.0 access // tokens, this contains the value of the ProviderId parameter that was passed // in the AssumeRoleWithWebIdentity request. Provider *string `type:"string"` // The unique user identifier that is returned by the identity provider. This // identifier is associated with the WebIdentityToken that was submitted with // the AssumeRoleWithWebIdentity call. The identifier is typically unique to // the user and the application that acquired the WebIdentityToken (pairwise // identifier). For OpenID Connect ID tokens, this field contains the value // returned by the identity provider as the token's sub (Subject) claim. SubjectFromWebIdentityToken *string `min:"6" type:"string"` } // String returns the string representation func (s AssumeRoleWithWebIdentityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssumeRoleWithWebIdentityOutput) GoString() string { return s.String() } // The identifiers for the temporary security credentials that the operation // returns. type AssumedRoleUser struct { _ struct{} `type:"structure"` // The ARN of the temporary security credentials that are returned from the // AssumeRole action. For more information about ARNs and how to use them in // policies, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html) // in Using IAM. // // Arn is a required field Arn *string `min:"20" type:"string" required:"true"` // A unique identifier that contains the role ID and the role session name of // the role that is being assumed. The role ID is generated by AWS when the // role is created. // // AssumedRoleId is a required field AssumedRoleId *string `min:"2" type:"string" required:"true"` } // String returns the string representation func (s AssumedRoleUser) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssumedRoleUser) GoString() string { return s.String() } // AWS credentials for API authentication. type Credentials struct { _ struct{} `type:"structure"` // The access key ID that identifies the temporary security credentials. // // AccessKeyId is a required field AccessKeyId *string `min:"16" type:"string" required:"true"` // The date on which the current credentials expire. // // Expiration is a required field Expiration *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The secret access key that can be used to sign requests. // // SecretAccessKey is a required field SecretAccessKey *string `type:"string" required:"true"` // The token that users must pass to the service API to use the temporary credentials. // // SessionToken is a required field SessionToken *string `type:"string" required:"true"` } // String returns the string representation func (s Credentials) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Credentials) GoString() string { return s.String() } type DecodeAuthorizationMessageInput struct { _ struct{} `type:"structure"` // The encoded message that was returned with the response. // // EncodedMessage is a required field EncodedMessage *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DecodeAuthorizationMessageInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DecodeAuthorizationMessageInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DecodeAuthorizationMessageInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DecodeAuthorizationMessageInput"} if s.EncodedMessage == nil { invalidParams.Add(request.NewErrParamRequired("EncodedMessage")) } if s.EncodedMessage != nil && len(*s.EncodedMessage) < 1 { invalidParams.Add(request.NewErrParamMinLen("EncodedMessage", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A document that contains additional information about the authorization status // of a request from an encoded message that is returned in response to an AWS // request. type DecodeAuthorizationMessageOutput struct { _ struct{} `type:"structure"` // An XML document that contains the decoded message. DecodedMessage *string `type:"string"` } // String returns the string representation func (s DecodeAuthorizationMessageOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DecodeAuthorizationMessageOutput) GoString() string { return s.String() } // Identifiers for the federated user that is associated with the credentials. type FederatedUser struct { _ struct{} `type:"structure"` // The ARN that specifies the federated user that is associated with the credentials. // For more information about ARNs and how to use them in policies, see IAM // Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html) // in Using IAM. // // Arn is a required field Arn *string `min:"20" type:"string" required:"true"` // The string that identifies the federated user associated with the credentials, // similar to the unique ID of an IAM user. // // FederatedUserId is a required field FederatedUserId *string `min:"2" type:"string" required:"true"` } // String returns the string representation func (s FederatedUser) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FederatedUser) GoString() string { return s.String() } type GetCallerIdentityInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GetCallerIdentityInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCallerIdentityInput) GoString() string { return s.String() } // Contains the response to a successful GetCallerIdentity request, including // information about the entity making the request. type GetCallerIdentityOutput struct { _ struct{} `type:"structure"` // The AWS account ID number of the account that owns or contains the calling // entity. Account *string `type:"string"` // The AWS ARN associated with the calling entity. Arn *string `min:"20" type:"string"` // The unique identifier of the calling entity. The exact value depends on the // type of entity making the call. The values returned are those listed in the // aws:userid column in the Principal table (http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_variables.html#principaltable) // found on the Policy Variables reference page in the IAM User Guide. UserId *string `type:"string"` } // String returns the string representation func (s GetCallerIdentityOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetCallerIdentityOutput) GoString() string { return s.String() } type GetFederationTokenInput struct { _ struct{} `type:"structure"` // The duration, in seconds, that the session should last. Acceptable durations // for federation sessions range from 900 seconds (15 minutes) to 129600 seconds // (36 hours), with 43200 seconds (12 hours) as the default. Sessions obtained // using AWS account (root) credentials are restricted to a maximum of 3600 // seconds (one hour). If the specified duration is longer than one hour, the // session obtained by using AWS account (root) credentials defaults to one // hour. DurationSeconds *int64 `min:"900" type:"integer"` // The name of the federated user. The name is used as an identifier for the // temporary security credentials (such as Bob). For example, you can reference // the federated user name in a resource-based policy, such as in an Amazon // S3 bucket policy. // // The format for this parameter, as described by its regex pattern, is a string // of characters consisting of upper- and lower-case alphanumeric characters // with no spaces. You can also include underscores or any of the following // characters: =,.@- // // Name is a required field Name *string `min:"2" type:"string" required:"true"` // An IAM policy in JSON format that is passed with the GetFederationToken call // and evaluated along with the policy or policies that are attached to the // IAM user whose credentials are used to call GetFederationToken. The passed // policy is used to scope down the permissions that are available to the IAM // user, by allowing only a subset of the permissions that are granted to the // IAM user. The passed policy cannot grant more permissions than those granted // to the IAM user. The final permissions for the federated user are the most // restrictive set based on the intersection of the passed policy and the IAM // user policy. // // If you do not pass a policy, the resulting temporary security credentials // have no effective permissions. The only exception is when the temporary security // credentials are used to access a resource that has a resource-based policy // that specifically allows the federated user to access the resource. // // The format for this parameter, as described by its regex pattern, is a string // of characters up to 2048 characters in length. The characters can be any // ASCII character from the space character to the end of the valid character // list (\u0020-\u00FF). It can also include the tab (\u0009), linefeed (\u000A), // and carriage return (\u000D) characters. // // The policy plain text must be 2048 bytes or shorter. However, an internal // conversion compresses it into a packed binary format with a separate limit. // The PackedPolicySize response element indicates by percentage how close to // the upper size limit the policy is, with 100% equaling the maximum allowed // size. // // For more information about how permissions work, see Permissions for GetFederationToken // (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_getfederationtoken.html). Policy *string `min:"1" type:"string"` } // String returns the string representation func (s GetFederationTokenInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetFederationTokenInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetFederationTokenInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetFederationTokenInput"} if s.DurationSeconds != nil && *s.DurationSeconds < 900 { invalidParams.Add(request.NewErrParamMinValue("DurationSeconds", 900)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 2 { invalidParams.Add(request.NewErrParamMinLen("Name", 2)) } if s.Policy != nil && len(*s.Policy) < 1 { invalidParams.Add(request.NewErrParamMinLen("Policy", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetFederationToken request, including // temporary AWS credentials that can be used to make AWS requests. type GetFederationTokenOutput struct { _ struct{} `type:"structure"` // The temporary security credentials, which include an access key ID, a secret // access key, and a security (or session) token. // // Note: The size of the security token that STS APIs return is not fixed. We // strongly recommend that you make no assumptions about the maximum size. As // of this writing, the typical size is less than 4096 bytes, but that can vary. // Also, future updates to AWS might require larger sizes. Credentials *Credentials `type:"structure"` // Identifiers for the federated user associated with the credentials (such // as arn:aws:sts::123456789012:federated-user/Bob or 123456789012:Bob). You // can use the federated user's ARN in your resource-based policies, such as // an Amazon S3 bucket policy. FederatedUser *FederatedUser `type:"structure"` // A percentage value indicating the size of the policy in packed form. The // service rejects policies for which the packed size is greater than 100 percent // of the allowed value. PackedPolicySize *int64 `type:"integer"` } // String returns the string representation func (s GetFederationTokenOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetFederationTokenOutput) GoString() string { return s.String() } type GetSessionTokenInput struct { _ struct{} `type:"structure"` // The duration, in seconds, that the credentials should remain valid. Acceptable // durations for IAM user sessions range from 900 seconds (15 minutes) to 129600 // seconds (36 hours), with 43200 seconds (12 hours) as the default. Sessions // for AWS account owners are restricted to a maximum of 3600 seconds (one hour). // If the duration is longer than one hour, the session for AWS account owners // defaults to one hour. DurationSeconds *int64 `min:"900" type:"integer"` // The identification number of the MFA device that is associated with the IAM // user who is making the GetSessionToken call. Specify this value if the IAM // user has a policy that requires MFA authentication. The value is either the // serial number for a hardware device (such as GAHT12345678) or an Amazon Resource // Name (ARN) for a virtual device (such as arn:aws:iam::123456789012:mfa/user). // You can find the device for an IAM user by going to the AWS Management Console // and viewing the user's security credentials. // // The format for this parameter, as described by its regex pattern, is a string // of characters consisting of upper- and lower-case alphanumeric characters // with no spaces. You can also include underscores or any of the following // characters: =,.@- SerialNumber *string `min:"9" type:"string"` // The value provided by the MFA device, if MFA is required. If any policy requires // the IAM user to submit an MFA code, specify this value. If MFA authentication // is required, and the user does not provide a code when requesting a set of // temporary security credentials, the user will receive an "access denied" // response when requesting resources that require MFA authentication. // // The format for this parameter, as described by its regex pattern, is a sequence // of six numeric digits. TokenCode *string `min:"6" type:"string"` } // String returns the string representation func (s GetSessionTokenInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSessionTokenInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetSessionTokenInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetSessionTokenInput"} if s.DurationSeconds != nil && *s.DurationSeconds < 900 { invalidParams.Add(request.NewErrParamMinValue("DurationSeconds", 900)) } if s.SerialNumber != nil && len(*s.SerialNumber) < 9 { invalidParams.Add(request.NewErrParamMinLen("SerialNumber", 9)) } if s.TokenCode != nil && len(*s.TokenCode) < 6 { invalidParams.Add(request.NewErrParamMinLen("TokenCode", 6)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the response to a successful GetSessionToken request, including // temporary AWS credentials that can be used to make AWS requests. type GetSessionTokenOutput struct { _ struct{} `type:"structure"` // The temporary security credentials, which include an access key ID, a secret // access key, and a security (or session) token. // // Note: The size of the security token that STS APIs return is not fixed. We // strongly recommend that you make no assumptions about the maximum size. As // of this writing, the typical size is less than 4096 bytes, but that can vary. // Also, future updates to AWS might require larger sizes. Credentials *Credentials `type:"structure"` } // String returns the string representation func (s GetSessionTokenOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSessionTokenOutput) GoString() string { return s.String() } aws-sdk-go-1.4.22/service/sts/customizations.go000066400000000000000000000004201300374646400214520ustar00rootroot00000000000000package sts import "github.com/aws/aws-sdk-go/aws/request" func init() { initRequest = func(r *request.Request) { switch r.Operation.Name { case opAssumeRoleWithSAML, opAssumeRoleWithWebIdentity: r.Handlers.Sign.Clear() // these operations are unsigned } } } aws-sdk-go-1.4.22/service/sts/customizations_test.go000066400000000000000000000021071300374646400225150ustar00rootroot00000000000000package sts_test import ( "testing" "github.com/stretchr/testify/assert" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/awstesting/unit" "github.com/aws/aws-sdk-go/service/sts" ) var svc = sts.New(unit.Session, &aws.Config{ Region: aws.String("mock-region"), }) func TestUnsignedRequest_AssumeRoleWithSAML(t *testing.T) { req, _ := svc.AssumeRoleWithSAMLRequest(&sts.AssumeRoleWithSAMLInput{ PrincipalArn: aws.String("ARN01234567890123456789"), RoleArn: aws.String("ARN01234567890123456789"), SAMLAssertion: aws.String("ASSERT"), }) err := req.Sign() assert.NoError(t, err) assert.Equal(t, "", req.HTTPRequest.Header.Get("Authorization")) } func TestUnsignedRequest_AssumeRoleWithWebIdentity(t *testing.T) { req, _ := svc.AssumeRoleWithWebIdentityRequest(&sts.AssumeRoleWithWebIdentityInput{ RoleArn: aws.String("ARN01234567890123456789"), RoleSessionName: aws.String("SESSION"), WebIdentityToken: aws.String("TOKEN"), }) err := req.Sign() assert.NoError(t, err) assert.Equal(t, "", req.HTTPRequest.Header.Get("Authorization")) } aws-sdk-go-1.4.22/service/sts/examples_test.go000066400000000000000000000115141300374646400212420ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package sts_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/sts" ) var _ time.Duration var _ bytes.Buffer func ExampleSTS_AssumeRole() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sts.New(sess) params := &sts.AssumeRoleInput{ RoleArn: aws.String("arnType"), // Required RoleSessionName: aws.String("roleSessionNameType"), // Required DurationSeconds: aws.Int64(1), ExternalId: aws.String("externalIdType"), Policy: aws.String("sessionPolicyDocumentType"), SerialNumber: aws.String("serialNumberType"), TokenCode: aws.String("tokenCodeType"), } resp, err := svc.AssumeRole(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSTS_AssumeRoleWithSAML() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sts.New(sess) params := &sts.AssumeRoleWithSAMLInput{ PrincipalArn: aws.String("arnType"), // Required RoleArn: aws.String("arnType"), // Required SAMLAssertion: aws.String("SAMLAssertionType"), // Required DurationSeconds: aws.Int64(1), Policy: aws.String("sessionPolicyDocumentType"), } resp, err := svc.AssumeRoleWithSAML(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSTS_AssumeRoleWithWebIdentity() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sts.New(sess) params := &sts.AssumeRoleWithWebIdentityInput{ RoleArn: aws.String("arnType"), // Required RoleSessionName: aws.String("roleSessionNameType"), // Required WebIdentityToken: aws.String("clientTokenType"), // Required DurationSeconds: aws.Int64(1), Policy: aws.String("sessionPolicyDocumentType"), ProviderId: aws.String("urlType"), } resp, err := svc.AssumeRoleWithWebIdentity(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSTS_DecodeAuthorizationMessage() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sts.New(sess) params := &sts.DecodeAuthorizationMessageInput{ EncodedMessage: aws.String("encodedMessageType"), // Required } resp, err := svc.DecodeAuthorizationMessage(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSTS_GetCallerIdentity() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sts.New(sess) var params *sts.GetCallerIdentityInput resp, err := svc.GetCallerIdentity(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSTS_GetFederationToken() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sts.New(sess) params := &sts.GetFederationTokenInput{ Name: aws.String("userNameType"), // Required DurationSeconds: aws.Int64(1), Policy: aws.String("sessionPolicyDocumentType"), } resp, err := svc.GetFederationToken(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSTS_GetSessionToken() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := sts.New(sess) params := &sts.GetSessionTokenInput{ DurationSeconds: aws.Int64(1), SerialNumber: aws.String("serialNumberType"), TokenCode: aws.String("tokenCodeType"), } resp, err := svc.GetSessionToken(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/sts/service.go000066400000000000000000000130201300374646400200170ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package sts import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/query" ) // The AWS Security Token Service (STS) is a web service that enables you to // request temporary, limited-privilege credentials for AWS Identity and Access // Management (IAM) users or for users that you authenticate (federated users). // This guide provides descriptions of the STS API. For more detailed information // about using this service, go to Temporary Security Credentials (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html). // // As an alternative to using the API, you can use one of the AWS SDKs, which // consist of libraries and sample code for various programming languages and // platforms (Java, Ruby, .NET, iOS, Android, etc.). The SDKs provide a convenient // way to create programmatic access to STS. For example, the SDKs take care // of cryptographically signing requests, managing errors, and retrying requests // automatically. For information about the AWS SDKs, including how to download // and install them, see the Tools for Amazon Web Services page (http://aws.amazon.com/tools/). // // For information about setting up signatures and authorization through the // API, go to Signing AWS API Requests (http://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html) // in the AWS General Reference. For general information about the Query API, // go to Making Query Requests (http://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html) // in Using IAM. For information about using security tokens with other AWS // products, go to AWS Services That Work with IAM (http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) // in the IAM User Guide. // // If you're new to AWS and need additional technical information about a specific // AWS product, you can find the product's technical documentation at http://aws.amazon.com/documentation/ // (http://aws.amazon.com/documentation/). // // Endpoints // // The AWS Security Token Service (STS) has a default endpoint of https://sts.amazonaws.com // that maps to the US East (N. Virginia) region. Additional regions are available // and are activated by default. For more information, see Activating and Deactivating // AWS STS in an AWS Region (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html) // in the IAM User Guide. // // For information about STS endpoints, see Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html#sts_region) // in the AWS General Reference. // // Recording API requests // // STS supports AWS CloudTrail, which is a service that records AWS calls for // your AWS account and delivers log files to an Amazon S3 bucket. By using // information collected by CloudTrail, you can determine what requests were // successfully made to STS, who made the request, when it was made, and so // on. To learn more about CloudTrail, including how to turn it on and find // your log files, see the AWS CloudTrail User Guide (http://docs.aws.amazon.com/awscloudtrail/latest/userguide/what_is_cloud_trail_top_level.html). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type STS struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "sts" // New creates a new instance of the STS client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a STS client from just a session. // svc := sts.New(mySession) // // // Create a STS client with additional configuration // svc := sts.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *STS { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *STS { svc := &STS{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2011-06-15", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(query.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a STS operation and runs any // custom request initialization. func (c *STS) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/sts/stsiface/000077500000000000000000000000001300374646400176355ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/sts/stsiface/interface.go000066400000000000000000000066441300374646400221360ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package stsiface provides an interface to enable mocking the AWS Security Token Service service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package stsiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/sts" ) // STSAPI provides an interface to enable mocking the // sts.STS service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Security Token Service. // func myFunc(svc stsiface.STSAPI) bool { // // Make svc.AssumeRole request // } // // func main() { // sess := session.New() // svc := sts.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockSTSClient struct { // stsiface.STSAPI // } // func (m *mockSTSClient) AssumeRole(input *sts.AssumeRoleInput) (*sts.AssumeRoleOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockSTSClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type STSAPI interface { AssumeRoleRequest(*sts.AssumeRoleInput) (*request.Request, *sts.AssumeRoleOutput) AssumeRole(*sts.AssumeRoleInput) (*sts.AssumeRoleOutput, error) AssumeRoleWithSAMLRequest(*sts.AssumeRoleWithSAMLInput) (*request.Request, *sts.AssumeRoleWithSAMLOutput) AssumeRoleWithSAML(*sts.AssumeRoleWithSAMLInput) (*sts.AssumeRoleWithSAMLOutput, error) AssumeRoleWithWebIdentityRequest(*sts.AssumeRoleWithWebIdentityInput) (*request.Request, *sts.AssumeRoleWithWebIdentityOutput) AssumeRoleWithWebIdentity(*sts.AssumeRoleWithWebIdentityInput) (*sts.AssumeRoleWithWebIdentityOutput, error) DecodeAuthorizationMessageRequest(*sts.DecodeAuthorizationMessageInput) (*request.Request, *sts.DecodeAuthorizationMessageOutput) DecodeAuthorizationMessage(*sts.DecodeAuthorizationMessageInput) (*sts.DecodeAuthorizationMessageOutput, error) GetCallerIdentityRequest(*sts.GetCallerIdentityInput) (*request.Request, *sts.GetCallerIdentityOutput) GetCallerIdentity(*sts.GetCallerIdentityInput) (*sts.GetCallerIdentityOutput, error) GetFederationTokenRequest(*sts.GetFederationTokenInput) (*request.Request, *sts.GetFederationTokenOutput) GetFederationToken(*sts.GetFederationTokenInput) (*sts.GetFederationTokenOutput, error) GetSessionTokenRequest(*sts.GetSessionTokenInput) (*request.Request, *sts.GetSessionTokenOutput) GetSessionToken(*sts.GetSessionTokenInput) (*sts.GetSessionTokenOutput, error) } var _ STSAPI = (*sts.STS)(nil) aws-sdk-go-1.4.22/service/support/000077500000000000000000000000001300374646400167375ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/support/api.go000066400000000000000000002631421300374646400200470ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package support provides a client for AWS Support. package support import ( "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opAddAttachmentsToSet = "AddAttachmentsToSet" // AddAttachmentsToSetRequest generates a "aws/request.Request" representing the // client's request for the AddAttachmentsToSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddAttachmentsToSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddAttachmentsToSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddAttachmentsToSetRequest method. // req, resp := client.AddAttachmentsToSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Support) AddAttachmentsToSetRequest(input *AddAttachmentsToSetInput) (req *request.Request, output *AddAttachmentsToSetOutput) { op := &request.Operation{ Name: opAddAttachmentsToSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddAttachmentsToSetInput{} } req = c.newRequest(op, input, output) output = &AddAttachmentsToSetOutput{} req.Data = output return } // AddAttachmentsToSet API operation for AWS Support. // // Adds one or more attachments to an attachment set. If an attachmentSetId // is not specified, a new attachment set is created, and the ID of the set // is returned in the response. If an attachmentSetId is specified, the attachments // are added to the specified set, if it exists. // // An attachment set is a temporary container for attachments that are to be // added to a case or case communication. The set is available for one hour // after it is created; the expiryTime returned in the response indicates when // the set expires. The maximum number of attachments in a set is 3, and the // maximum size of any attachment in the set is 5 MB. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Support's // API operation AddAttachmentsToSet for usage and error information. // // Returned Error Codes: // * InternalServerError // An internal server error occurred. // // * AttachmentSetIdNotFound // An attachment set with the specified ID could not be found. // // * AttachmentSetExpired // The expiration time of the attachment set has passed. The set expires 1 hour // after it is created. // // * AttachmentSetSizeLimitExceeded // A limit for the size of an attachment set has been exceeded. The limits are // 3 attachments and 5 MB per attachment. // // * AttachmentLimitExceeded // The limit for the number of attachment sets created in a short period of // time has been exceeded. // func (c *Support) AddAttachmentsToSet(input *AddAttachmentsToSetInput) (*AddAttachmentsToSetOutput, error) { req, out := c.AddAttachmentsToSetRequest(input) err := req.Send() return out, err } const opAddCommunicationToCase = "AddCommunicationToCase" // AddCommunicationToCaseRequest generates a "aws/request.Request" representing the // client's request for the AddCommunicationToCase operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See AddCommunicationToCase for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the AddCommunicationToCase method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the AddCommunicationToCaseRequest method. // req, resp := client.AddCommunicationToCaseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Support) AddCommunicationToCaseRequest(input *AddCommunicationToCaseInput) (req *request.Request, output *AddCommunicationToCaseOutput) { op := &request.Operation{ Name: opAddCommunicationToCase, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AddCommunicationToCaseInput{} } req = c.newRequest(op, input, output) output = &AddCommunicationToCaseOutput{} req.Data = output return } // AddCommunicationToCase API operation for AWS Support. // // Adds additional customer communication to an AWS Support case. You use the // caseId value to identify the case to add communication to. You can list a // set of email addresses to copy on the communication using the ccEmailAddresses // value. The communicationBody value contains the text of the communication. // // The response indicates the success or failure of the request. // // This operation implements a subset of the features of the AWS Support Center. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Support's // API operation AddCommunicationToCase for usage and error information. // // Returned Error Codes: // * InternalServerError // An internal server error occurred. // // * CaseIdNotFound // The requested caseId could not be located. // // * AttachmentSetIdNotFound // An attachment set with the specified ID could not be found. // // * AttachmentSetExpired // The expiration time of the attachment set has passed. The set expires 1 hour // after it is created. // func (c *Support) AddCommunicationToCase(input *AddCommunicationToCaseInput) (*AddCommunicationToCaseOutput, error) { req, out := c.AddCommunicationToCaseRequest(input) err := req.Send() return out, err } const opCreateCase = "CreateCase" // CreateCaseRequest generates a "aws/request.Request" representing the // client's request for the CreateCase operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateCase for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateCase method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateCaseRequest method. // req, resp := client.CreateCaseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Support) CreateCaseRequest(input *CreateCaseInput) (req *request.Request, output *CreateCaseOutput) { op := &request.Operation{ Name: opCreateCase, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateCaseInput{} } req = c.newRequest(op, input, output) output = &CreateCaseOutput{} req.Data = output return } // CreateCase API operation for AWS Support. // // Creates a new case in the AWS Support Center. This operation is modeled on // the behavior of the AWS Support Center Create Case (https://console.aws.amazon.com/support/home#/case/create) // page. Its parameters require you to specify the following information: // // * issueType. The type of issue for the case. You can specify either "customer-service" // or "technical." If you do not indicate a value, the default is "technical." // // // * serviceCode. The code for an AWS service. You obtain the serviceCode // by calling DescribeServices. // // * categoryCode. The category for the service defined for the serviceCode // value. You also obtain the category code for a service by calling DescribeServices. // Each AWS service defines its own set of category codes. // // * severityCode. A value that indicates the urgency of the case, which // in turn determines the response time according to your service level agreement // with AWS Support. You obtain the SeverityCode by calling DescribeSeverityLevels. // // * subject. The Subject field on the AWS Support Center Create Case (https://console.aws.amazon.com/support/home#/case/create) // page. // // * communicationBody. The Description field on the AWS Support Center Create // Case (https://console.aws.amazon.com/support/home#/case/create) page. // // * attachmentSetId. The ID of a set of attachments that has been created // by using AddAttachmentsToSet. // // * language. The human language in which AWS Support handles the case. // English and Japanese are currently supported. // // * ccEmailAddresses. The AWS Support Center CC field on the Create Case // (https://console.aws.amazon.com/support/home#/case/create) page. You can // list email addresses to be copied on any correspondence about the case. // The account that opens the case is already identified by passing the AWS // Credentials in the HTTP POST method or in a method or function call from // one of the programming languages supported by an AWS SDK (http://aws.amazon.com/tools/). // // // To add additional communication or attachments to an existing case, use AddCommunicationToCase. // // A successful CreateCase request returns an AWS Support case number. Case // numbers are used by the DescribeCases operation to retrieve existing AWS // Support cases. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Support's // API operation CreateCase for usage and error information. // // Returned Error Codes: // * InternalServerError // An internal server error occurred. // // * CaseCreationLimitExceeded // The case creation limit for the account has been exceeded. // // * AttachmentSetIdNotFound // An attachment set with the specified ID could not be found. // // * AttachmentSetExpired // The expiration time of the attachment set has passed. The set expires 1 hour // after it is created. // func (c *Support) CreateCase(input *CreateCaseInput) (*CreateCaseOutput, error) { req, out := c.CreateCaseRequest(input) err := req.Send() return out, err } const opDescribeAttachment = "DescribeAttachment" // DescribeAttachmentRequest generates a "aws/request.Request" representing the // client's request for the DescribeAttachment operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeAttachment for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeAttachment method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeAttachmentRequest method. // req, resp := client.DescribeAttachmentRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Support) DescribeAttachmentRequest(input *DescribeAttachmentInput) (req *request.Request, output *DescribeAttachmentOutput) { op := &request.Operation{ Name: opDescribeAttachment, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAttachmentInput{} } req = c.newRequest(op, input, output) output = &DescribeAttachmentOutput{} req.Data = output return } // DescribeAttachment API operation for AWS Support. // // Returns the attachment that has the specified ID. Attachment IDs are generated // by the case management system when you add an attachment to a case or case // communication. Attachment IDs are returned in the AttachmentDetails objects // that are returned by the DescribeCommunications operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Support's // API operation DescribeAttachment for usage and error information. // // Returned Error Codes: // * InternalServerError // An internal server error occurred. // // * DescribeAttachmentLimitExceeded // The limit for the number of DescribeAttachment requests in a short period // of time has been exceeded. // // * AttachmentIdNotFound // An attachment with the specified ID could not be found. // func (c *Support) DescribeAttachment(input *DescribeAttachmentInput) (*DescribeAttachmentOutput, error) { req, out := c.DescribeAttachmentRequest(input) err := req.Send() return out, err } const opDescribeCases = "DescribeCases" // DescribeCasesRequest generates a "aws/request.Request" representing the // client's request for the DescribeCases operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCases for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCases method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeCasesRequest method. // req, resp := client.DescribeCasesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Support) DescribeCasesRequest(input *DescribeCasesInput) (req *request.Request, output *DescribeCasesOutput) { op := &request.Operation{ Name: opDescribeCases, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &DescribeCasesInput{} } req = c.newRequest(op, input, output) output = &DescribeCasesOutput{} req.Data = output return } // DescribeCases API operation for AWS Support. // // Returns a list of cases that you specify by passing one or more case IDs. // In addition, you can filter the cases by date by setting values for the afterTime // and beforeTime request parameters. You can set values for the includeResolvedCases // and includeCommunications request parameters to control how much information // is returned. // // Case data is available for 12 months after creation. If a case was created // more than 12 months ago, a request for data might cause an error. // // The response returns the following in JSON format: // // * One or more CaseDetails data types. // // * One or more nextToken values, which specify where to paginate the returned // records represented by the CaseDetails objects. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Support's // API operation DescribeCases for usage and error information. // // Returned Error Codes: // * InternalServerError // An internal server error occurred. // // * CaseIdNotFound // The requested caseId could not be located. // func (c *Support) DescribeCases(input *DescribeCasesInput) (*DescribeCasesOutput, error) { req, out := c.DescribeCasesRequest(input) err := req.Send() return out, err } // DescribeCasesPages iterates over the pages of a DescribeCases operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeCases method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeCases operation. // pageNum := 0 // err := client.DescribeCasesPages(params, // func(page *DescribeCasesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Support) DescribeCasesPages(input *DescribeCasesInput, fn func(p *DescribeCasesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeCasesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeCasesOutput), lastPage) }) } const opDescribeCommunications = "DescribeCommunications" // DescribeCommunicationsRequest generates a "aws/request.Request" representing the // client's request for the DescribeCommunications operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeCommunications for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeCommunications method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeCommunicationsRequest method. // req, resp := client.DescribeCommunicationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Support) DescribeCommunicationsRequest(input *DescribeCommunicationsInput) (req *request.Request, output *DescribeCommunicationsOutput) { op := &request.Operation{ Name: opDescribeCommunications, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &DescribeCommunicationsInput{} } req = c.newRequest(op, input, output) output = &DescribeCommunicationsOutput{} req.Data = output return } // DescribeCommunications API operation for AWS Support. // // Returns communications (and attachments) for one or more support cases. You // can use the afterTime and beforeTime parameters to filter by date. You can // use the caseId parameter to restrict the results to a particular case. // // Case data is available for 12 months after creation. If a case was created // more than 12 months ago, a request for data might cause an error. // // You can use the maxResults and nextToken parameters to control the pagination // of the result set. Set maxResults to the number of cases you want displayed // on each page, and use nextToken to specify the resumption of pagination. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Support's // API operation DescribeCommunications for usage and error information. // // Returned Error Codes: // * InternalServerError // An internal server error occurred. // // * CaseIdNotFound // The requested caseId could not be located. // func (c *Support) DescribeCommunications(input *DescribeCommunicationsInput) (*DescribeCommunicationsOutput, error) { req, out := c.DescribeCommunicationsRequest(input) err := req.Send() return out, err } // DescribeCommunicationsPages iterates over the pages of a DescribeCommunications operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeCommunications method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeCommunications operation. // pageNum := 0 // err := client.DescribeCommunicationsPages(params, // func(page *DescribeCommunicationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Support) DescribeCommunicationsPages(input *DescribeCommunicationsInput, fn func(p *DescribeCommunicationsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeCommunicationsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeCommunicationsOutput), lastPage) }) } const opDescribeServices = "DescribeServices" // DescribeServicesRequest generates a "aws/request.Request" representing the // client's request for the DescribeServices operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeServices for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeServices method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeServicesRequest method. // req, resp := client.DescribeServicesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Support) DescribeServicesRequest(input *DescribeServicesInput) (req *request.Request, output *DescribeServicesOutput) { op := &request.Operation{ Name: opDescribeServices, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeServicesInput{} } req = c.newRequest(op, input, output) output = &DescribeServicesOutput{} req.Data = output return } // DescribeServices API operation for AWS Support. // // Returns the current list of AWS services and a list of service categories // that applies to each one. You then use service names and categories in your // CreateCase requests. Each AWS service has its own set of categories. // // The service codes and category codes correspond to the values that are displayed // in the Service and Category drop-down lists on the AWS Support Center Create // Case (https://console.aws.amazon.com/support/home#/case/create) page. The // values in those fields, however, do not necessarily match the service codes // and categories returned by the DescribeServices request. Always use the service // codes and categories obtained programmatically. This practice ensures that // you always have the most recent set of service and category codes. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Support's // API operation DescribeServices for usage and error information. // // Returned Error Codes: // * InternalServerError // An internal server error occurred. // func (c *Support) DescribeServices(input *DescribeServicesInput) (*DescribeServicesOutput, error) { req, out := c.DescribeServicesRequest(input) err := req.Send() return out, err } const opDescribeSeverityLevels = "DescribeSeverityLevels" // DescribeSeverityLevelsRequest generates a "aws/request.Request" representing the // client's request for the DescribeSeverityLevels operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeSeverityLevels for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeSeverityLevels method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeSeverityLevelsRequest method. // req, resp := client.DescribeSeverityLevelsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Support) DescribeSeverityLevelsRequest(input *DescribeSeverityLevelsInput) (req *request.Request, output *DescribeSeverityLevelsOutput) { op := &request.Operation{ Name: opDescribeSeverityLevels, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSeverityLevelsInput{} } req = c.newRequest(op, input, output) output = &DescribeSeverityLevelsOutput{} req.Data = output return } // DescribeSeverityLevels API operation for AWS Support. // // Returns the list of severity levels that you can assign to an AWS Support // case. The severity level for a case is also a field in the CaseDetails data // type included in any CreateCase request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Support's // API operation DescribeSeverityLevels for usage and error information. // // Returned Error Codes: // * InternalServerError // An internal server error occurred. // func (c *Support) DescribeSeverityLevels(input *DescribeSeverityLevelsInput) (*DescribeSeverityLevelsOutput, error) { req, out := c.DescribeSeverityLevelsRequest(input) err := req.Send() return out, err } const opDescribeTrustedAdvisorCheckRefreshStatuses = "DescribeTrustedAdvisorCheckRefreshStatuses" // DescribeTrustedAdvisorCheckRefreshStatusesRequest generates a "aws/request.Request" representing the // client's request for the DescribeTrustedAdvisorCheckRefreshStatuses operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTrustedAdvisorCheckRefreshStatuses for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTrustedAdvisorCheckRefreshStatuses method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTrustedAdvisorCheckRefreshStatusesRequest method. // req, resp := client.DescribeTrustedAdvisorCheckRefreshStatusesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Support) DescribeTrustedAdvisorCheckRefreshStatusesRequest(input *DescribeTrustedAdvisorCheckRefreshStatusesInput) (req *request.Request, output *DescribeTrustedAdvisorCheckRefreshStatusesOutput) { op := &request.Operation{ Name: opDescribeTrustedAdvisorCheckRefreshStatuses, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTrustedAdvisorCheckRefreshStatusesInput{} } req = c.newRequest(op, input, output) output = &DescribeTrustedAdvisorCheckRefreshStatusesOutput{} req.Data = output return } // DescribeTrustedAdvisorCheckRefreshStatuses API operation for AWS Support. // // Returns the refresh status of the Trusted Advisor checks that have the specified // check IDs. Check IDs can be obtained by calling DescribeTrustedAdvisorChecks. // // Some checks are refreshed automatically, and their refresh statuses cannot // be retrieved by using this operation. Use of the DescribeTrustedAdvisorCheckRefreshStatuses // operation for these checks causes an InvalidParameterValue error. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Support's // API operation DescribeTrustedAdvisorCheckRefreshStatuses for usage and error information. // // Returned Error Codes: // * InternalServerError // An internal server error occurred. // func (c *Support) DescribeTrustedAdvisorCheckRefreshStatuses(input *DescribeTrustedAdvisorCheckRefreshStatusesInput) (*DescribeTrustedAdvisorCheckRefreshStatusesOutput, error) { req, out := c.DescribeTrustedAdvisorCheckRefreshStatusesRequest(input) err := req.Send() return out, err } const opDescribeTrustedAdvisorCheckResult = "DescribeTrustedAdvisorCheckResult" // DescribeTrustedAdvisorCheckResultRequest generates a "aws/request.Request" representing the // client's request for the DescribeTrustedAdvisorCheckResult operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTrustedAdvisorCheckResult for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTrustedAdvisorCheckResult method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTrustedAdvisorCheckResultRequest method. // req, resp := client.DescribeTrustedAdvisorCheckResultRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Support) DescribeTrustedAdvisorCheckResultRequest(input *DescribeTrustedAdvisorCheckResultInput) (req *request.Request, output *DescribeTrustedAdvisorCheckResultOutput) { op := &request.Operation{ Name: opDescribeTrustedAdvisorCheckResult, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTrustedAdvisorCheckResultInput{} } req = c.newRequest(op, input, output) output = &DescribeTrustedAdvisorCheckResultOutput{} req.Data = output return } // DescribeTrustedAdvisorCheckResult API operation for AWS Support. // // Returns the results of the Trusted Advisor check that has the specified check // ID. Check IDs can be obtained by calling DescribeTrustedAdvisorChecks. // // The response contains a TrustedAdvisorCheckResult object, which contains // these three objects: // // * TrustedAdvisorCategorySpecificSummary // // * TrustedAdvisorResourceDetail // // * TrustedAdvisorResourcesSummary // // In addition, the response contains these fields: // // * status. The alert status of the check: "ok" (green), "warning" (yellow), // "error" (red), or "not_available". // // * timestamp. The time of the last refresh of the check. // // * checkId. The unique identifier for the check. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Support's // API operation DescribeTrustedAdvisorCheckResult for usage and error information. // // Returned Error Codes: // * InternalServerError // An internal server error occurred. // func (c *Support) DescribeTrustedAdvisorCheckResult(input *DescribeTrustedAdvisorCheckResultInput) (*DescribeTrustedAdvisorCheckResultOutput, error) { req, out := c.DescribeTrustedAdvisorCheckResultRequest(input) err := req.Send() return out, err } const opDescribeTrustedAdvisorCheckSummaries = "DescribeTrustedAdvisorCheckSummaries" // DescribeTrustedAdvisorCheckSummariesRequest generates a "aws/request.Request" representing the // client's request for the DescribeTrustedAdvisorCheckSummaries operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTrustedAdvisorCheckSummaries for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTrustedAdvisorCheckSummaries method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTrustedAdvisorCheckSummariesRequest method. // req, resp := client.DescribeTrustedAdvisorCheckSummariesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Support) DescribeTrustedAdvisorCheckSummariesRequest(input *DescribeTrustedAdvisorCheckSummariesInput) (req *request.Request, output *DescribeTrustedAdvisorCheckSummariesOutput) { op := &request.Operation{ Name: opDescribeTrustedAdvisorCheckSummaries, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTrustedAdvisorCheckSummariesInput{} } req = c.newRequest(op, input, output) output = &DescribeTrustedAdvisorCheckSummariesOutput{} req.Data = output return } // DescribeTrustedAdvisorCheckSummaries API operation for AWS Support. // // Returns the summaries of the results of the Trusted Advisor checks that have // the specified check IDs. Check IDs can be obtained by calling DescribeTrustedAdvisorChecks. // // The response contains an array of TrustedAdvisorCheckSummary objects. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Support's // API operation DescribeTrustedAdvisorCheckSummaries for usage and error information. // // Returned Error Codes: // * InternalServerError // An internal server error occurred. // func (c *Support) DescribeTrustedAdvisorCheckSummaries(input *DescribeTrustedAdvisorCheckSummariesInput) (*DescribeTrustedAdvisorCheckSummariesOutput, error) { req, out := c.DescribeTrustedAdvisorCheckSummariesRequest(input) err := req.Send() return out, err } const opDescribeTrustedAdvisorChecks = "DescribeTrustedAdvisorChecks" // DescribeTrustedAdvisorChecksRequest generates a "aws/request.Request" representing the // client's request for the DescribeTrustedAdvisorChecks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTrustedAdvisorChecks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTrustedAdvisorChecks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTrustedAdvisorChecksRequest method. // req, resp := client.DescribeTrustedAdvisorChecksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Support) DescribeTrustedAdvisorChecksRequest(input *DescribeTrustedAdvisorChecksInput) (req *request.Request, output *DescribeTrustedAdvisorChecksOutput) { op := &request.Operation{ Name: opDescribeTrustedAdvisorChecks, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTrustedAdvisorChecksInput{} } req = c.newRequest(op, input, output) output = &DescribeTrustedAdvisorChecksOutput{} req.Data = output return } // DescribeTrustedAdvisorChecks API operation for AWS Support. // // Returns information about all available Trusted Advisor checks, including // name, ID, category, description, and metadata. You must specify a language // code; English ("en") and Japanese ("ja") are currently supported. The response // contains a TrustedAdvisorCheckDescription for each check. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Support's // API operation DescribeTrustedAdvisorChecks for usage and error information. // // Returned Error Codes: // * InternalServerError // An internal server error occurred. // func (c *Support) DescribeTrustedAdvisorChecks(input *DescribeTrustedAdvisorChecksInput) (*DescribeTrustedAdvisorChecksOutput, error) { req, out := c.DescribeTrustedAdvisorChecksRequest(input) err := req.Send() return out, err } const opRefreshTrustedAdvisorCheck = "RefreshTrustedAdvisorCheck" // RefreshTrustedAdvisorCheckRequest generates a "aws/request.Request" representing the // client's request for the RefreshTrustedAdvisorCheck operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RefreshTrustedAdvisorCheck for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RefreshTrustedAdvisorCheck method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RefreshTrustedAdvisorCheckRequest method. // req, resp := client.RefreshTrustedAdvisorCheckRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Support) RefreshTrustedAdvisorCheckRequest(input *RefreshTrustedAdvisorCheckInput) (req *request.Request, output *RefreshTrustedAdvisorCheckOutput) { op := &request.Operation{ Name: opRefreshTrustedAdvisorCheck, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RefreshTrustedAdvisorCheckInput{} } req = c.newRequest(op, input, output) output = &RefreshTrustedAdvisorCheckOutput{} req.Data = output return } // RefreshTrustedAdvisorCheck API operation for AWS Support. // // Requests a refresh of the Trusted Advisor check that has the specified check // ID. Check IDs can be obtained by calling DescribeTrustedAdvisorChecks. // // Some checks are refreshed automatically, and they cannot be refreshed by // using this operation. Use of the RefreshTrustedAdvisorCheck operation for // these checks causes an InvalidParameterValue error. // // The response contains a TrustedAdvisorCheckRefreshStatus object, which contains // these fields: // // * status. The refresh status of the check: "none", "enqueued", "processing", // "success", or "abandoned". // // * millisUntilNextRefreshable. The amount of time, in milliseconds, until // the check is eligible for refresh. // // * checkId. The unique identifier for the check. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Support's // API operation RefreshTrustedAdvisorCheck for usage and error information. // // Returned Error Codes: // * InternalServerError // An internal server error occurred. // func (c *Support) RefreshTrustedAdvisorCheck(input *RefreshTrustedAdvisorCheckInput) (*RefreshTrustedAdvisorCheckOutput, error) { req, out := c.RefreshTrustedAdvisorCheckRequest(input) err := req.Send() return out, err } const opResolveCase = "ResolveCase" // ResolveCaseRequest generates a "aws/request.Request" representing the // client's request for the ResolveCase operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ResolveCase for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ResolveCase method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ResolveCaseRequest method. // req, resp := client.ResolveCaseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *Support) ResolveCaseRequest(input *ResolveCaseInput) (req *request.Request, output *ResolveCaseOutput) { op := &request.Operation{ Name: opResolveCase, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ResolveCaseInput{} } req = c.newRequest(op, input, output) output = &ResolveCaseOutput{} req.Data = output return } // ResolveCase API operation for AWS Support. // // Takes a caseId and returns the initial state of the case along with the state // of the case after the call to ResolveCase completed. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Support's // API operation ResolveCase for usage and error information. // // Returned Error Codes: // * InternalServerError // An internal server error occurred. // // * CaseIdNotFound // The requested caseId could not be located. // func (c *Support) ResolveCase(input *ResolveCaseInput) (*ResolveCaseOutput, error) { req, out := c.ResolveCaseRequest(input) err := req.Send() return out, err } type AddAttachmentsToSetInput struct { _ struct{} `type:"structure"` // The ID of the attachment set. If an attachmentSetId is not specified, a new // attachment set is created, and the ID of the set is returned in the response. // If an attachmentSetId is specified, the attachments are added to the specified // set, if it exists. AttachmentSetId *string `locationName:"attachmentSetId" type:"string"` // One or more attachments to add to the set. The limit is 3 attachments per // set, and the size limit is 5 MB per attachment. // // Attachments is a required field Attachments []*Attachment `locationName:"attachments" type:"list" required:"true"` } // String returns the string representation func (s AddAttachmentsToSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddAttachmentsToSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddAttachmentsToSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddAttachmentsToSetInput"} if s.Attachments == nil { invalidParams.Add(request.NewErrParamRequired("Attachments")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The ID and expiry time of the attachment set returned by the AddAttachmentsToSet // operation. type AddAttachmentsToSetOutput struct { _ struct{} `type:"structure"` // The ID of the attachment set. If an attachmentSetId was not specified, a // new attachment set is created, and the ID of the set is returned in the response. // If an attachmentSetId was specified, the attachments are added to the specified // set, if it exists. AttachmentSetId *string `locationName:"attachmentSetId" type:"string"` // The time and date when the attachment set expires. ExpiryTime *string `locationName:"expiryTime" type:"string"` } // String returns the string representation func (s AddAttachmentsToSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddAttachmentsToSetOutput) GoString() string { return s.String() } // To be written. type AddCommunicationToCaseInput struct { _ struct{} `type:"structure"` // The ID of a set of one or more attachments for the communication to add to // the case. Create the set by calling AddAttachmentsToSet AttachmentSetId *string `locationName:"attachmentSetId" type:"string"` // The AWS Support case ID requested or returned in the call. The case ID is // an alphanumeric string formatted as shown in this example: case-12345678910-2013-c4c1d2bf33c5cf47 CaseId *string `locationName:"caseId" type:"string"` // The email addresses in the CC line of an email to be added to the support // case. CcEmailAddresses []*string `locationName:"ccEmailAddresses" type:"list"` // The body of an email communication to add to the support case. // // CommunicationBody is a required field CommunicationBody *string `locationName:"communicationBody" min:"1" type:"string" required:"true"` } // String returns the string representation func (s AddCommunicationToCaseInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddCommunicationToCaseInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AddCommunicationToCaseInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AddCommunicationToCaseInput"} if s.CommunicationBody == nil { invalidParams.Add(request.NewErrParamRequired("CommunicationBody")) } if s.CommunicationBody != nil && len(*s.CommunicationBody) < 1 { invalidParams.Add(request.NewErrParamMinLen("CommunicationBody", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of the AddCommunicationToCase operation. type AddCommunicationToCaseOutput struct { _ struct{} `type:"structure"` // True if AddCommunicationToCase succeeds. Otherwise, returns an error. Result *bool `locationName:"result" type:"boolean"` } // String returns the string representation func (s AddCommunicationToCaseOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AddCommunicationToCaseOutput) GoString() string { return s.String() } // An attachment to a case communication. The attachment consists of the file // name and the content of the file. type Attachment struct { _ struct{} `type:"structure"` // The content of the attachment file. // // Data is automatically base64 encoded/decoded by the SDK. Data []byte `locationName:"data" type:"blob"` // The name of the attachment file. FileName *string `locationName:"fileName" type:"string"` } // String returns the string representation func (s Attachment) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Attachment) GoString() string { return s.String() } // The file name and ID of an attachment to a case communication. You can use // the ID to retrieve the attachment with the DescribeAttachment operation. type AttachmentDetails struct { _ struct{} `type:"structure"` // The ID of the attachment. AttachmentId *string `locationName:"attachmentId" type:"string"` // The file name of the attachment. FileName *string `locationName:"fileName" type:"string"` } // String returns the string representation func (s AttachmentDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AttachmentDetails) GoString() string { return s.String() } // A JSON-formatted object that contains the metadata for a support case. It // is contained the response from a DescribeCases request. CaseDetails contains // the following fields: // // * caseId. The AWS Support case ID requested or returned in the call. The // case ID is an alphanumeric string formatted as shown in this example: // case-12345678910-2013-c4c1d2bf33c5cf47. // // * categoryCode. The category of problem for the AWS Support case. Corresponds // to the CategoryCode values returned by a call to DescribeServices. // // * displayId. The identifier for the case on pages in the AWS Support Center. // // * language. The ISO 639-1 code for the language in which AWS provides // support. AWS Support currently supports English ("en") and Japanese ("ja"). // Language parameters must be passed explicitly for operations that take // them. // // * recentCommunications. One or more Communication objects. Fields of these // objects are attachments, body, caseId, submittedBy, and timeCreated. // // * nextToken. A resumption point for pagination. // // * serviceCode. The identifier for the AWS service that corresponds to // the service code defined in the call to DescribeServices. // // * severityCode. The severity code assigned to the case. Contains one of // the values returned by the call to DescribeSeverityLevels. // // * status. The status of the case in the AWS Support Center. // // * subject. The subject line of the case. // // * submittedBy. The email address of the account that submitted the case. // // * timeCreated. The time the case was created, in ISO-8601 format. type CaseDetails struct { _ struct{} `type:"structure"` // The AWS Support case ID requested or returned in the call. The case ID is // an alphanumeric string formatted as shown in this example: case-12345678910-2013-c4c1d2bf33c5cf47 CaseId *string `locationName:"caseId" type:"string"` // The category of problem for the AWS Support case. CategoryCode *string `locationName:"categoryCode" type:"string"` // The email addresses that receive copies of communication about the case. CcEmailAddresses []*string `locationName:"ccEmailAddresses" type:"list"` // The ID displayed for the case in the AWS Support Center. This is a numeric // string. DisplayId *string `locationName:"displayId" type:"string"` // The ISO 639-1 code for the language in which AWS provides support. AWS Support // currently supports English ("en") and Japanese ("ja"). Language parameters // must be passed explicitly for operations that take them. Language *string `locationName:"language" type:"string"` // The five most recent communications between you and AWS Support Center, including // the IDs of any attachments to the communications. Also includes a nextToken // that you can use to retrieve earlier communications. RecentCommunications *RecentCaseCommunications `locationName:"recentCommunications" type:"structure"` // The code for the AWS service returned by the call to DescribeServices. ServiceCode *string `locationName:"serviceCode" type:"string"` // The code for the severity level returned by the call to DescribeSeverityLevels. SeverityCode *string `locationName:"severityCode" type:"string"` // The status of the case. Status *string `locationName:"status" type:"string"` // The subject line for the case in the AWS Support Center. Subject *string `locationName:"subject" type:"string"` // The email address of the account that submitted the case. SubmittedBy *string `locationName:"submittedBy" type:"string"` // The time that the case was case created in the AWS Support Center. TimeCreated *string `locationName:"timeCreated" type:"string"` } // String returns the string representation func (s CaseDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CaseDetails) GoString() string { return s.String() } // A JSON-formatted name/value pair that represents the category name and category // code of the problem, selected from the DescribeServices response for each // AWS service. type Category struct { _ struct{} `type:"structure"` // The category code for the support case. Code *string `locationName:"code" type:"string"` // The category name for the support case. Name *string `locationName:"name" type:"string"` } // String returns the string representation func (s Category) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Category) GoString() string { return s.String() } // A communication associated with an AWS Support case. The communication consists // of the case ID, the message body, attachment information, the account email // address, and the date and time of the communication. type Communication struct { _ struct{} `type:"structure"` // Information about the attachments to the case communication. AttachmentSet []*AttachmentDetails `locationName:"attachmentSet" type:"list"` // The text of the communication between the customer and AWS Support. Body *string `locationName:"body" min:"1" type:"string"` // The AWS Support case ID requested or returned in the call. The case ID is // an alphanumeric string formatted as shown in this example: case-12345678910-2013-c4c1d2bf33c5cf47 CaseId *string `locationName:"caseId" type:"string"` // The email address of the account that submitted the AWS Support case. SubmittedBy *string `locationName:"submittedBy" type:"string"` // The time the communication was created. TimeCreated *string `locationName:"timeCreated" type:"string"` } // String returns the string representation func (s Communication) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Communication) GoString() string { return s.String() } type CreateCaseInput struct { _ struct{} `type:"structure"` // The ID of a set of one or more attachments for the case. Create the set by // using AddAttachmentsToSet. AttachmentSetId *string `locationName:"attachmentSetId" type:"string"` // The category of problem for the AWS Support case. CategoryCode *string `locationName:"categoryCode" type:"string"` // A list of email addresses that AWS Support copies on case correspondence. CcEmailAddresses []*string `locationName:"ccEmailAddresses" type:"list"` // The communication body text when you create an AWS Support case by calling // CreateCase. // // CommunicationBody is a required field CommunicationBody *string `locationName:"communicationBody" min:"1" type:"string" required:"true"` // The type of issue for the case. You can specify either "customer-service" // or "technical." If you do not indicate a value, the default is "technical." IssueType *string `locationName:"issueType" type:"string"` // The ISO 639-1 code for the language in which AWS provides support. AWS Support // currently supports English ("en") and Japanese ("ja"). Language parameters // must be passed explicitly for operations that take them. Language *string `locationName:"language" type:"string"` // The code for the AWS service returned by the call to DescribeServices. ServiceCode *string `locationName:"serviceCode" type:"string"` // The code for the severity level returned by the call to DescribeSeverityLevels. // // The availability of severity levels depends on each customer's support subscription. // In other words, your subscription may not necessarily require the urgent // level of response time. SeverityCode *string `locationName:"severityCode" type:"string"` // The title of the AWS Support case. // // Subject is a required field Subject *string `locationName:"subject" type:"string" required:"true"` } // String returns the string representation func (s CreateCaseInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCaseInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateCaseInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateCaseInput"} if s.CommunicationBody == nil { invalidParams.Add(request.NewErrParamRequired("CommunicationBody")) } if s.CommunicationBody != nil && len(*s.CommunicationBody) < 1 { invalidParams.Add(request.NewErrParamMinLen("CommunicationBody", 1)) } if s.Subject == nil { invalidParams.Add(request.NewErrParamRequired("Subject")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The AWS Support case ID returned by a successful completion of the CreateCase // operation. type CreateCaseOutput struct { _ struct{} `type:"structure"` // The AWS Support case ID requested or returned in the call. The case ID is // an alphanumeric string formatted as shown in this example: case-12345678910-2013-c4c1d2bf33c5cf47 CaseId *string `locationName:"caseId" type:"string"` } // String returns the string representation func (s CreateCaseOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateCaseOutput) GoString() string { return s.String() } type DescribeAttachmentInput struct { _ struct{} `type:"structure"` // The ID of the attachment to return. Attachment IDs are returned by the DescribeCommunications // operation. // // AttachmentId is a required field AttachmentId *string `locationName:"attachmentId" type:"string" required:"true"` } // String returns the string representation func (s DescribeAttachmentInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAttachmentInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeAttachmentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeAttachmentInput"} if s.AttachmentId == nil { invalidParams.Add(request.NewErrParamRequired("AttachmentId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The content and file name of the attachment returned by the DescribeAttachment // operation. type DescribeAttachmentOutput struct { _ struct{} `type:"structure"` // The attachment content and file name. Attachment *Attachment `locationName:"attachment" type:"structure"` } // String returns the string representation func (s DescribeAttachmentOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeAttachmentOutput) GoString() string { return s.String() } type DescribeCasesInput struct { _ struct{} `type:"structure"` // The start date for a filtered date search on support case communications. // Case communications are available for 12 months after creation. AfterTime *string `locationName:"afterTime" type:"string"` // The end date for a filtered date search on support case communications. Case // communications are available for 12 months after creation. BeforeTime *string `locationName:"beforeTime" type:"string"` // A list of ID numbers of the support cases you want returned. The maximum // number of cases is 100. CaseIdList []*string `locationName:"caseIdList" type:"list"` // The ID displayed for a case in the AWS Support Center user interface. DisplayId *string `locationName:"displayId" type:"string"` // Specifies whether communications should be included in the DescribeCases // results. The default is true. IncludeCommunications *bool `locationName:"includeCommunications" type:"boolean"` // Specifies whether resolved support cases should be included in the DescribeCases // results. The default is false. IncludeResolvedCases *bool `locationName:"includeResolvedCases" type:"boolean"` // The ISO 639-1 code for the language in which AWS provides support. AWS Support // currently supports English ("en") and Japanese ("ja"). Language parameters // must be passed explicitly for operations that take them. Language *string `locationName:"language" type:"string"` // The maximum number of results to return before paginating. MaxResults *int64 `locationName:"maxResults" min:"10" type:"integer"` // A resumption point for pagination. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeCasesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCasesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeCasesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeCasesInput"} if s.MaxResults != nil && *s.MaxResults < 10 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Returns an array of CaseDetails objects and a nextToken that defines a point // for pagination in the result set. type DescribeCasesOutput struct { _ struct{} `type:"structure"` // The details for the cases that match the request. Cases []*CaseDetails `locationName:"cases" type:"list"` // A resumption point for pagination. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeCasesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCasesOutput) GoString() string { return s.String() } type DescribeCommunicationsInput struct { _ struct{} `type:"structure"` // The start date for a filtered date search on support case communications. // Case communications are available for 12 months after creation. AfterTime *string `locationName:"afterTime" type:"string"` // The end date for a filtered date search on support case communications. Case // communications are available for 12 months after creation. BeforeTime *string `locationName:"beforeTime" type:"string"` // The AWS Support case ID requested or returned in the call. The case ID is // an alphanumeric string formatted as shown in this example: case-12345678910-2013-c4c1d2bf33c5cf47 // // CaseId is a required field CaseId *string `locationName:"caseId" type:"string" required:"true"` // The maximum number of results to return before paginating. MaxResults *int64 `locationName:"maxResults" min:"10" type:"integer"` // A resumption point for pagination. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeCommunicationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCommunicationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeCommunicationsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeCommunicationsInput"} if s.CaseId == nil { invalidParams.Add(request.NewErrParamRequired("CaseId")) } if s.MaxResults != nil && *s.MaxResults < 10 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The communications returned by the DescribeCommunications operation. type DescribeCommunicationsOutput struct { _ struct{} `type:"structure"` // The communications for the case. Communications []*Communication `locationName:"communications" type:"list"` // A resumption point for pagination. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeCommunicationsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeCommunicationsOutput) GoString() string { return s.String() } type DescribeServicesInput struct { _ struct{} `type:"structure"` // The ISO 639-1 code for the language in which AWS provides support. AWS Support // currently supports English ("en") and Japanese ("ja"). Language parameters // must be passed explicitly for operations that take them. Language *string `locationName:"language" type:"string"` // A JSON-formatted list of service codes available for AWS services. ServiceCodeList []*string `locationName:"serviceCodeList" type:"list"` } // String returns the string representation func (s DescribeServicesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeServicesInput) GoString() string { return s.String() } // The list of AWS services returned by the DescribeServices operation. type DescribeServicesOutput struct { _ struct{} `type:"structure"` // A JSON-formatted list of AWS services. Services []*Service `locationName:"services" type:"list"` } // String returns the string representation func (s DescribeServicesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeServicesOutput) GoString() string { return s.String() } type DescribeSeverityLevelsInput struct { _ struct{} `type:"structure"` // The ISO 639-1 code for the language in which AWS provides support. AWS Support // currently supports English ("en") and Japanese ("ja"). Language parameters // must be passed explicitly for operations that take them. Language *string `locationName:"language" type:"string"` } // String returns the string representation func (s DescribeSeverityLevelsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSeverityLevelsInput) GoString() string { return s.String() } // The list of severity levels returned by the DescribeSeverityLevels operation. type DescribeSeverityLevelsOutput struct { _ struct{} `type:"structure"` // The available severity levels for the support case. Available severity levels // are defined by your service level agreement with AWS. SeverityLevels []*SeverityLevel `locationName:"severityLevels" type:"list"` } // String returns the string representation func (s DescribeSeverityLevelsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeSeverityLevelsOutput) GoString() string { return s.String() } type DescribeTrustedAdvisorCheckRefreshStatusesInput struct { _ struct{} `type:"structure"` // The IDs of the Trusted Advisor checks to get the status of. Note: Specifying // the check ID of a check that is automatically refreshed causes an InvalidParameterValue // error. // // CheckIds is a required field CheckIds []*string `locationName:"checkIds" type:"list" required:"true"` } // String returns the string representation func (s DescribeTrustedAdvisorCheckRefreshStatusesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTrustedAdvisorCheckRefreshStatusesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTrustedAdvisorCheckRefreshStatusesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTrustedAdvisorCheckRefreshStatusesInput"} if s.CheckIds == nil { invalidParams.Add(request.NewErrParamRequired("CheckIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The statuses of the Trusted Advisor checks returned by the DescribeTrustedAdvisorCheckRefreshStatuses // operation. type DescribeTrustedAdvisorCheckRefreshStatusesOutput struct { _ struct{} `type:"structure"` // The refresh status of the specified Trusted Advisor checks. // // Statuses is a required field Statuses []*TrustedAdvisorCheckRefreshStatus `locationName:"statuses" type:"list" required:"true"` } // String returns the string representation func (s DescribeTrustedAdvisorCheckRefreshStatusesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTrustedAdvisorCheckRefreshStatusesOutput) GoString() string { return s.String() } type DescribeTrustedAdvisorCheckResultInput struct { _ struct{} `type:"structure"` // The unique identifier for the Trusted Advisor check. // // CheckId is a required field CheckId *string `locationName:"checkId" type:"string" required:"true"` // The ISO 639-1 code for the language in which AWS provides support. AWS Support // currently supports English ("en") and Japanese ("ja"). Language parameters // must be passed explicitly for operations that take them. Language *string `locationName:"language" type:"string"` } // String returns the string representation func (s DescribeTrustedAdvisorCheckResultInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTrustedAdvisorCheckResultInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTrustedAdvisorCheckResultInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTrustedAdvisorCheckResultInput"} if s.CheckId == nil { invalidParams.Add(request.NewErrParamRequired("CheckId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of the Trusted Advisor check returned by the DescribeTrustedAdvisorCheckResult // operation. type DescribeTrustedAdvisorCheckResultOutput struct { _ struct{} `type:"structure"` // The detailed results of the Trusted Advisor check. Result *TrustedAdvisorCheckResult `locationName:"result" type:"structure"` } // String returns the string representation func (s DescribeTrustedAdvisorCheckResultOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTrustedAdvisorCheckResultOutput) GoString() string { return s.String() } type DescribeTrustedAdvisorCheckSummariesInput struct { _ struct{} `type:"structure"` // The IDs of the Trusted Advisor checks. // // CheckIds is a required field CheckIds []*string `locationName:"checkIds" type:"list" required:"true"` } // String returns the string representation func (s DescribeTrustedAdvisorCheckSummariesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTrustedAdvisorCheckSummariesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTrustedAdvisorCheckSummariesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTrustedAdvisorCheckSummariesInput"} if s.CheckIds == nil { invalidParams.Add(request.NewErrParamRequired("CheckIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The summaries of the Trusted Advisor checks returned by the DescribeTrustedAdvisorCheckSummaries // operation. type DescribeTrustedAdvisorCheckSummariesOutput struct { _ struct{} `type:"structure"` // The summary information for the requested Trusted Advisor checks. // // Summaries is a required field Summaries []*TrustedAdvisorCheckSummary `locationName:"summaries" type:"list" required:"true"` } // String returns the string representation func (s DescribeTrustedAdvisorCheckSummariesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTrustedAdvisorCheckSummariesOutput) GoString() string { return s.String() } type DescribeTrustedAdvisorChecksInput struct { _ struct{} `type:"structure"` // The ISO 639-1 code for the language in which AWS provides support. AWS Support // currently supports English ("en") and Japanese ("ja"). Language parameters // must be passed explicitly for operations that take them. // // Language is a required field Language *string `locationName:"language" type:"string" required:"true"` } // String returns the string representation func (s DescribeTrustedAdvisorChecksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTrustedAdvisorChecksInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTrustedAdvisorChecksInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTrustedAdvisorChecksInput"} if s.Language == nil { invalidParams.Add(request.NewErrParamRequired("Language")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Information about the Trusted Advisor checks returned by the DescribeTrustedAdvisorChecks // operation. type DescribeTrustedAdvisorChecksOutput struct { _ struct{} `type:"structure"` // Information about all available Trusted Advisor checks. // // Checks is a required field Checks []*TrustedAdvisorCheckDescription `locationName:"checks" type:"list" required:"true"` } // String returns the string representation func (s DescribeTrustedAdvisorChecksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTrustedAdvisorChecksOutput) GoString() string { return s.String() } // The five most recent communications associated with the case. type RecentCaseCommunications struct { _ struct{} `type:"structure"` // The five most recent communications associated with the case. Communications []*Communication `locationName:"communications" type:"list"` // A resumption point for pagination. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s RecentCaseCommunications) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecentCaseCommunications) GoString() string { return s.String() } type RefreshTrustedAdvisorCheckInput struct { _ struct{} `type:"structure"` // The unique identifier for the Trusted Advisor check to refresh. Note: Specifying // the check ID of a check that is automatically refreshed causes an InvalidParameterValue // error. // // CheckId is a required field CheckId *string `locationName:"checkId" type:"string" required:"true"` } // String returns the string representation func (s RefreshTrustedAdvisorCheckInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RefreshTrustedAdvisorCheckInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RefreshTrustedAdvisorCheckInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RefreshTrustedAdvisorCheckInput"} if s.CheckId == nil { invalidParams.Add(request.NewErrParamRequired("CheckId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The current refresh status of a Trusted Advisor check. type RefreshTrustedAdvisorCheckOutput struct { _ struct{} `type:"structure"` // The current refresh status for a check, including the amount of time until // the check is eligible for refresh. // // Status is a required field Status *TrustedAdvisorCheckRefreshStatus `locationName:"status" type:"structure" required:"true"` } // String returns the string representation func (s RefreshTrustedAdvisorCheckOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RefreshTrustedAdvisorCheckOutput) GoString() string { return s.String() } type ResolveCaseInput struct { _ struct{} `type:"structure"` // The AWS Support case ID requested or returned in the call. The case ID is // an alphanumeric string formatted as shown in this example: case-12345678910-2013-c4c1d2bf33c5cf47 CaseId *string `locationName:"caseId" type:"string"` } // String returns the string representation func (s ResolveCaseInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResolveCaseInput) GoString() string { return s.String() } // The status of the case returned by the ResolveCase operation. type ResolveCaseOutput struct { _ struct{} `type:"structure"` // The status of the case after the ResolveCase request was processed. FinalCaseStatus *string `locationName:"finalCaseStatus" type:"string"` // The status of the case when the ResolveCase request was sent. InitialCaseStatus *string `locationName:"initialCaseStatus" type:"string"` } // String returns the string representation func (s ResolveCaseOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResolveCaseOutput) GoString() string { return s.String() } // Information about an AWS service returned by the DescribeServices operation. type Service struct { _ struct{} `type:"structure"` // A list of categories that describe the type of support issue a case describes. // Categories consist of a category name and a category code. Category names // and codes are passed to AWS Support when you call CreateCase. Categories []*Category `locationName:"categories" type:"list"` // The code for an AWS service returned by the DescribeServices response. The // name element contains the corresponding friendly name. Code *string `locationName:"code" type:"string"` // The friendly name for an AWS service. The code element contains the corresponding // code. Name *string `locationName:"name" type:"string"` } // String returns the string representation func (s Service) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Service) GoString() string { return s.String() } // A code and name pair that represent a severity level that can be applied // to a support case. type SeverityLevel struct { _ struct{} `type:"structure"` // One of four values: "low," "medium," "high," and "urgent". These values correspond // to response times returned to the caller in severityLevel.name. Code *string `locationName:"code" type:"string"` // The name of the severity level that corresponds to the severity level code. Name *string `locationName:"name" type:"string"` } // String returns the string representation func (s SeverityLevel) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SeverityLevel) GoString() string { return s.String() } // The container for summary information that relates to the category of the // Trusted Advisor check. type TrustedAdvisorCategorySpecificSummary struct { _ struct{} `type:"structure"` // The summary information about cost savings for a Trusted Advisor check that // is in the Cost Optimizing category. CostOptimizing *TrustedAdvisorCostOptimizingSummary `locationName:"costOptimizing" type:"structure"` } // String returns the string representation func (s TrustedAdvisorCategorySpecificSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TrustedAdvisorCategorySpecificSummary) GoString() string { return s.String() } // The description and metadata for a Trusted Advisor check. type TrustedAdvisorCheckDescription struct { _ struct{} `type:"structure"` // The category of the Trusted Advisor check. // // Category is a required field Category *string `locationName:"category" type:"string" required:"true"` // The description of the Trusted Advisor check, which includes the alert criteria // and recommended actions (contains HTML markup). // // Description is a required field Description *string `locationName:"description" type:"string" required:"true"` // The unique identifier for the Trusted Advisor check. // // Id is a required field Id *string `locationName:"id" type:"string" required:"true"` // The column headings for the data returned by the Trusted Advisor check. The // order of the headings corresponds to the order of the data in the Metadata // element of the TrustedAdvisorResourceDetail for the check. Metadata contains // all the data that is shown in the Excel download, even in those cases where // the UI shows just summary data. // // Metadata is a required field Metadata []*string `locationName:"metadata" type:"list" required:"true"` // The display name for the Trusted Advisor check. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` } // String returns the string representation func (s TrustedAdvisorCheckDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TrustedAdvisorCheckDescription) GoString() string { return s.String() } // The refresh status of a Trusted Advisor check. type TrustedAdvisorCheckRefreshStatus struct { _ struct{} `type:"structure"` // The unique identifier for the Trusted Advisor check. // // CheckId is a required field CheckId *string `locationName:"checkId" type:"string" required:"true"` // The amount of time, in milliseconds, until the Trusted Advisor check is eligible // for refresh. // // MillisUntilNextRefreshable is a required field MillisUntilNextRefreshable *int64 `locationName:"millisUntilNextRefreshable" type:"long" required:"true"` // The status of the Trusted Advisor check for which a refresh has been requested: // "none", "enqueued", "processing", "success", or "abandoned". // // Status is a required field Status *string `locationName:"status" type:"string" required:"true"` } // String returns the string representation func (s TrustedAdvisorCheckRefreshStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TrustedAdvisorCheckRefreshStatus) GoString() string { return s.String() } // The results of a Trusted Advisor check returned by DescribeTrustedAdvisorCheckResult. type TrustedAdvisorCheckResult struct { _ struct{} `type:"structure"` // Summary information that relates to the category of the check. Cost Optimizing // is the only category that is currently supported. // // CategorySpecificSummary is a required field CategorySpecificSummary *TrustedAdvisorCategorySpecificSummary `locationName:"categorySpecificSummary" type:"structure" required:"true"` // The unique identifier for the Trusted Advisor check. // // CheckId is a required field CheckId *string `locationName:"checkId" type:"string" required:"true"` // The details about each resource listed in the check result. // // FlaggedResources is a required field FlaggedResources []*TrustedAdvisorResourceDetail `locationName:"flaggedResources" type:"list" required:"true"` // Details about AWS resources that were analyzed in a call to Trusted Advisor // DescribeTrustedAdvisorCheckSummaries. // // ResourcesSummary is a required field ResourcesSummary *TrustedAdvisorResourcesSummary `locationName:"resourcesSummary" type:"structure" required:"true"` // The alert status of the check: "ok" (green), "warning" (yellow), "error" // (red), or "not_available". // // Status is a required field Status *string `locationName:"status" type:"string" required:"true"` // The time of the last refresh of the check. // // Timestamp is a required field Timestamp *string `locationName:"timestamp" type:"string" required:"true"` } // String returns the string representation func (s TrustedAdvisorCheckResult) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TrustedAdvisorCheckResult) GoString() string { return s.String() } // A summary of a Trusted Advisor check result, including the alert status, // last refresh, and number of resources examined. type TrustedAdvisorCheckSummary struct { _ struct{} `type:"structure"` // Summary information that relates to the category of the check. Cost Optimizing // is the only category that is currently supported. // // CategorySpecificSummary is a required field CategorySpecificSummary *TrustedAdvisorCategorySpecificSummary `locationName:"categorySpecificSummary" type:"structure" required:"true"` // The unique identifier for the Trusted Advisor check. // // CheckId is a required field CheckId *string `locationName:"checkId" type:"string" required:"true"` // Specifies whether the Trusted Advisor check has flagged resources. HasFlaggedResources *bool `locationName:"hasFlaggedResources" type:"boolean"` // Details about AWS resources that were analyzed in a call to Trusted Advisor // DescribeTrustedAdvisorCheckSummaries. // // ResourcesSummary is a required field ResourcesSummary *TrustedAdvisorResourcesSummary `locationName:"resourcesSummary" type:"structure" required:"true"` // The alert status of the check: "ok" (green), "warning" (yellow), "error" // (red), or "not_available". // // Status is a required field Status *string `locationName:"status" type:"string" required:"true"` // The time of the last refresh of the check. // // Timestamp is a required field Timestamp *string `locationName:"timestamp" type:"string" required:"true"` } // String returns the string representation func (s TrustedAdvisorCheckSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TrustedAdvisorCheckSummary) GoString() string { return s.String() } // The estimated cost savings that might be realized if the recommended actions // are taken. type TrustedAdvisorCostOptimizingSummary struct { _ struct{} `type:"structure"` // The estimated monthly savings that might be realized if the recommended actions // are taken. // // EstimatedMonthlySavings is a required field EstimatedMonthlySavings *float64 `locationName:"estimatedMonthlySavings" type:"double" required:"true"` // The estimated percentage of savings that might be realized if the recommended // actions are taken. // // EstimatedPercentMonthlySavings is a required field EstimatedPercentMonthlySavings *float64 `locationName:"estimatedPercentMonthlySavings" type:"double" required:"true"` } // String returns the string representation func (s TrustedAdvisorCostOptimizingSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TrustedAdvisorCostOptimizingSummary) GoString() string { return s.String() } // Contains information about a resource identified by a Trusted Advisor check. type TrustedAdvisorResourceDetail struct { _ struct{} `type:"structure"` // Specifies whether the AWS resource was ignored by Trusted Advisor because // it was marked as suppressed by the user. IsSuppressed *bool `locationName:"isSuppressed" type:"boolean"` // Additional information about the identified resource. The exact metadata // and its order can be obtained by inspecting the TrustedAdvisorCheckDescription // object returned by the call to DescribeTrustedAdvisorChecks. Metadata contains // all the data that is shown in the Excel download, even in those cases where // the UI shows just summary data. // // Metadata is a required field Metadata []*string `locationName:"metadata" type:"list" required:"true"` // The AWS region in which the identified resource is located. Region *string `locationName:"region" type:"string"` // The unique identifier for the identified resource. // // ResourceId is a required field ResourceId *string `locationName:"resourceId" type:"string" required:"true"` // The status code for the resource identified in the Trusted Advisor check. // // Status is a required field Status *string `locationName:"status" type:"string" required:"true"` } // String returns the string representation func (s TrustedAdvisorResourceDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TrustedAdvisorResourceDetail) GoString() string { return s.String() } // Details about AWS resources that were analyzed in a call to Trusted Advisor // DescribeTrustedAdvisorCheckSummaries. type TrustedAdvisorResourcesSummary struct { _ struct{} `type:"structure"` // The number of AWS resources that were flagged (listed) by the Trusted Advisor // check. // // ResourcesFlagged is a required field ResourcesFlagged *int64 `locationName:"resourcesFlagged" type:"long" required:"true"` // The number of AWS resources ignored by Trusted Advisor because information // was unavailable. // // ResourcesIgnored is a required field ResourcesIgnored *int64 `locationName:"resourcesIgnored" type:"long" required:"true"` // The number of AWS resources that were analyzed by the Trusted Advisor check. // // ResourcesProcessed is a required field ResourcesProcessed *int64 `locationName:"resourcesProcessed" type:"long" required:"true"` // The number of AWS resources ignored by Trusted Advisor because they were // marked as suppressed by the user. // // ResourcesSuppressed is a required field ResourcesSuppressed *int64 `locationName:"resourcesSuppressed" type:"long" required:"true"` } // String returns the string representation func (s TrustedAdvisorResourcesSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TrustedAdvisorResourcesSummary) GoString() string { return s.String() } aws-sdk-go-1.4.22/service/support/examples_test.go000066400000000000000000000224721300374646400221520ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package support_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/support" ) var _ time.Duration var _ bytes.Buffer func ExampleSupport_AddAttachmentsToSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := support.New(sess) params := &support.AddAttachmentsToSetInput{ Attachments: []*support.Attachment{ // Required { // Required Data: []byte("PAYLOAD"), FileName: aws.String("FileName"), }, // More values... }, AttachmentSetId: aws.String("AttachmentSetId"), } resp, err := svc.AddAttachmentsToSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSupport_AddCommunicationToCase() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := support.New(sess) params := &support.AddCommunicationToCaseInput{ CommunicationBody: aws.String("CommunicationBody"), // Required AttachmentSetId: aws.String("AttachmentSetId"), CaseId: aws.String("CaseId"), CcEmailAddresses: []*string{ aws.String("CcEmailAddress"), // Required // More values... }, } resp, err := svc.AddCommunicationToCase(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSupport_CreateCase() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := support.New(sess) params := &support.CreateCaseInput{ CommunicationBody: aws.String("CommunicationBody"), // Required Subject: aws.String("Subject"), // Required AttachmentSetId: aws.String("AttachmentSetId"), CategoryCode: aws.String("CategoryCode"), CcEmailAddresses: []*string{ aws.String("CcEmailAddress"), // Required // More values... }, IssueType: aws.String("IssueType"), Language: aws.String("Language"), ServiceCode: aws.String("ServiceCode"), SeverityCode: aws.String("SeverityCode"), } resp, err := svc.CreateCase(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSupport_DescribeAttachment() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := support.New(sess) params := &support.DescribeAttachmentInput{ AttachmentId: aws.String("AttachmentId"), // Required } resp, err := svc.DescribeAttachment(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSupport_DescribeCases() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := support.New(sess) params := &support.DescribeCasesInput{ AfterTime: aws.String("AfterTime"), BeforeTime: aws.String("BeforeTime"), CaseIdList: []*string{ aws.String("CaseId"), // Required // More values... }, DisplayId: aws.String("DisplayId"), IncludeCommunications: aws.Bool(true), IncludeResolvedCases: aws.Bool(true), Language: aws.String("Language"), MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.DescribeCases(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSupport_DescribeCommunications() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := support.New(sess) params := &support.DescribeCommunicationsInput{ CaseId: aws.String("CaseId"), // Required AfterTime: aws.String("AfterTime"), BeforeTime: aws.String("BeforeTime"), MaxResults: aws.Int64(1), NextToken: aws.String("NextToken"), } resp, err := svc.DescribeCommunications(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSupport_DescribeServices() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := support.New(sess) params := &support.DescribeServicesInput{ Language: aws.String("Language"), ServiceCodeList: []*string{ aws.String("ServiceCode"), // Required // More values... }, } resp, err := svc.DescribeServices(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSupport_DescribeSeverityLevels() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := support.New(sess) params := &support.DescribeSeverityLevelsInput{ Language: aws.String("Language"), } resp, err := svc.DescribeSeverityLevels(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSupport_DescribeTrustedAdvisorCheckRefreshStatuses() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := support.New(sess) params := &support.DescribeTrustedAdvisorCheckRefreshStatusesInput{ CheckIds: []*string{ // Required aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeTrustedAdvisorCheckRefreshStatuses(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSupport_DescribeTrustedAdvisorCheckResult() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := support.New(sess) params := &support.DescribeTrustedAdvisorCheckResultInput{ CheckId: aws.String("String"), // Required Language: aws.String("String"), } resp, err := svc.DescribeTrustedAdvisorCheckResult(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSupport_DescribeTrustedAdvisorCheckSummaries() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := support.New(sess) params := &support.DescribeTrustedAdvisorCheckSummariesInput{ CheckIds: []*string{ // Required aws.String("String"), // Required // More values... }, } resp, err := svc.DescribeTrustedAdvisorCheckSummaries(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSupport_DescribeTrustedAdvisorChecks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := support.New(sess) params := &support.DescribeTrustedAdvisorChecksInput{ Language: aws.String("String"), // Required } resp, err := svc.DescribeTrustedAdvisorChecks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSupport_RefreshTrustedAdvisorCheck() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := support.New(sess) params := &support.RefreshTrustedAdvisorCheckInput{ CheckId: aws.String("String"), // Required } resp, err := svc.RefreshTrustedAdvisorCheck(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSupport_ResolveCase() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := support.New(sess) params := &support.ResolveCaseInput{ CaseId: aws.String("CaseId"), } resp, err := svc.ResolveCase(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/support/service.go000066400000000000000000000123021300374646400207240ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package support import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // The AWS Support API reference is intended for programmers who need detailed // information about the AWS Support operations and data types. This service // enables you to manage your AWS Support cases programmatically. It uses HTTP // methods that return results in JSON format. // // The AWS Support service also exposes a set of Trusted Advisor (http://aws.amazon.com/premiumsupport/trustedadvisor/) // features. You can retrieve a list of checks and their descriptions, get check // results, specify checks to refresh, and get the refresh status of checks. // // The following list describes the AWS Support case management operations: // // * Service names, issue categories, and available severity levels. The // DescribeServices and DescribeSeverityLevels operations return AWS service // names, service codes, service categories, and problem severity levels. // You use these values when you call the CreateCase operation. // // * Case creation, case details, and case resolution. The CreateCase, DescribeCases, // DescribeAttachment, and ResolveCase operations create AWS Support cases, // retrieve information about cases, and resolve cases. // // * Case communication. The DescribeCommunications, AddCommunicationToCase, // and AddAttachmentsToSet operations retrieve and add communications and // attachments to AWS Support cases. // // The following list describes the operations available from the AWS Support // service for Trusted Advisor: // // * DescribeTrustedAdvisorChecks returns the list of checks that run against // your AWS resources. // // * Using the checkId for a specific check returned by DescribeTrustedAdvisorChecks, // you can call DescribeTrustedAdvisorCheckResult to obtain the results for // the check you specified. // // * DescribeTrustedAdvisorCheckSummaries returns summarized results for // one or more Trusted Advisor checks. // // * RefreshTrustedAdvisorCheck requests that Trusted Advisor rerun a specified // check. // // * DescribeTrustedAdvisorCheckRefreshStatuses reports the refresh status // of one or more checks. // // For authentication of requests, AWS Support uses Signature Version 4 Signing // Process (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). // // See About the AWS Support API (http://docs.aws.amazon.com/awssupport/latest/user/Welcome.html) // in the AWS Support User Guide for information about how to use this service // to create and manage your support cases, and how to call Trusted Advisor // for results of checks on your resources. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type Support struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "support" // New creates a new instance of the Support client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a Support client from just a session. // svc := support.New(mySession) // // // Create a Support client with additional configuration // svc := support.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *Support { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *Support { svc := &Support{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2013-04-15", JSONVersion: "1.1", TargetPrefix: "AWSSupport_20130415", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a Support operation and runs any // custom request initialization. func (c *Support) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/support/supportiface/000077500000000000000000000000001300374646400214435ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/support/supportiface/interface.go000066400000000000000000000132471300374646400237410ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package supportiface provides an interface to enable mocking the AWS Support service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package supportiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/support" ) // SupportAPI provides an interface to enable mocking the // support.Support service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS Support. // func myFunc(svc supportiface.SupportAPI) bool { // // Make svc.AddAttachmentsToSet request // } // // func main() { // sess := session.New() // svc := support.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockSupportClient struct { // supportiface.SupportAPI // } // func (m *mockSupportClient) AddAttachmentsToSet(input *support.AddAttachmentsToSetInput) (*support.AddAttachmentsToSetOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockSupportClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type SupportAPI interface { AddAttachmentsToSetRequest(*support.AddAttachmentsToSetInput) (*request.Request, *support.AddAttachmentsToSetOutput) AddAttachmentsToSet(*support.AddAttachmentsToSetInput) (*support.AddAttachmentsToSetOutput, error) AddCommunicationToCaseRequest(*support.AddCommunicationToCaseInput) (*request.Request, *support.AddCommunicationToCaseOutput) AddCommunicationToCase(*support.AddCommunicationToCaseInput) (*support.AddCommunicationToCaseOutput, error) CreateCaseRequest(*support.CreateCaseInput) (*request.Request, *support.CreateCaseOutput) CreateCase(*support.CreateCaseInput) (*support.CreateCaseOutput, error) DescribeAttachmentRequest(*support.DescribeAttachmentInput) (*request.Request, *support.DescribeAttachmentOutput) DescribeAttachment(*support.DescribeAttachmentInput) (*support.DescribeAttachmentOutput, error) DescribeCasesRequest(*support.DescribeCasesInput) (*request.Request, *support.DescribeCasesOutput) DescribeCases(*support.DescribeCasesInput) (*support.DescribeCasesOutput, error) DescribeCasesPages(*support.DescribeCasesInput, func(*support.DescribeCasesOutput, bool) bool) error DescribeCommunicationsRequest(*support.DescribeCommunicationsInput) (*request.Request, *support.DescribeCommunicationsOutput) DescribeCommunications(*support.DescribeCommunicationsInput) (*support.DescribeCommunicationsOutput, error) DescribeCommunicationsPages(*support.DescribeCommunicationsInput, func(*support.DescribeCommunicationsOutput, bool) bool) error DescribeServicesRequest(*support.DescribeServicesInput) (*request.Request, *support.DescribeServicesOutput) DescribeServices(*support.DescribeServicesInput) (*support.DescribeServicesOutput, error) DescribeSeverityLevelsRequest(*support.DescribeSeverityLevelsInput) (*request.Request, *support.DescribeSeverityLevelsOutput) DescribeSeverityLevels(*support.DescribeSeverityLevelsInput) (*support.DescribeSeverityLevelsOutput, error) DescribeTrustedAdvisorCheckRefreshStatusesRequest(*support.DescribeTrustedAdvisorCheckRefreshStatusesInput) (*request.Request, *support.DescribeTrustedAdvisorCheckRefreshStatusesOutput) DescribeTrustedAdvisorCheckRefreshStatuses(*support.DescribeTrustedAdvisorCheckRefreshStatusesInput) (*support.DescribeTrustedAdvisorCheckRefreshStatusesOutput, error) DescribeTrustedAdvisorCheckResultRequest(*support.DescribeTrustedAdvisorCheckResultInput) (*request.Request, *support.DescribeTrustedAdvisorCheckResultOutput) DescribeTrustedAdvisorCheckResult(*support.DescribeTrustedAdvisorCheckResultInput) (*support.DescribeTrustedAdvisorCheckResultOutput, error) DescribeTrustedAdvisorCheckSummariesRequest(*support.DescribeTrustedAdvisorCheckSummariesInput) (*request.Request, *support.DescribeTrustedAdvisorCheckSummariesOutput) DescribeTrustedAdvisorCheckSummaries(*support.DescribeTrustedAdvisorCheckSummariesInput) (*support.DescribeTrustedAdvisorCheckSummariesOutput, error) DescribeTrustedAdvisorChecksRequest(*support.DescribeTrustedAdvisorChecksInput) (*request.Request, *support.DescribeTrustedAdvisorChecksOutput) DescribeTrustedAdvisorChecks(*support.DescribeTrustedAdvisorChecksInput) (*support.DescribeTrustedAdvisorChecksOutput, error) RefreshTrustedAdvisorCheckRequest(*support.RefreshTrustedAdvisorCheckInput) (*request.Request, *support.RefreshTrustedAdvisorCheckOutput) RefreshTrustedAdvisorCheck(*support.RefreshTrustedAdvisorCheckInput) (*support.RefreshTrustedAdvisorCheckOutput, error) ResolveCaseRequest(*support.ResolveCaseInput) (*request.Request, *support.ResolveCaseOutput) ResolveCase(*support.ResolveCaseInput) (*support.ResolveCaseOutput, error) } var _ SupportAPI = (*support.Support)(nil) aws-sdk-go-1.4.22/service/swf/000077500000000000000000000000001300374646400160225ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/swf/api.go000066400000000000000000016105411300374646400171320ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package swf provides a client for Amazon Simple Workflow Service. package swf import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opCountClosedWorkflowExecutions = "CountClosedWorkflowExecutions" // CountClosedWorkflowExecutionsRequest generates a "aws/request.Request" representing the // client's request for the CountClosedWorkflowExecutions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CountClosedWorkflowExecutions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CountClosedWorkflowExecutions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CountClosedWorkflowExecutionsRequest method. // req, resp := client.CountClosedWorkflowExecutionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) CountClosedWorkflowExecutionsRequest(input *CountClosedWorkflowExecutionsInput) (req *request.Request, output *WorkflowExecutionCount) { op := &request.Operation{ Name: opCountClosedWorkflowExecutions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CountClosedWorkflowExecutionsInput{} } req = c.newRequest(op, input, output) output = &WorkflowExecutionCount{} req.Data = output return } // CountClosedWorkflowExecutions API operation for Amazon Simple Workflow Service. // // Returns the number of closed workflow executions within the given domain // that meet the specified filtering criteria. // // This operation is eventually consistent. The results are best effort and // may not exactly reflect recent updates and changes.Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the following parameters by using a Condition element with // the appropriate keys. tagFilter.tag: String constraint. The key is swf:tagFilter.tag. // // typeFilter.name: String constraint. The key is swf:typeFilter.name. // typeFilter.version: String constraint. The key is swf:typeFilter.version. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation CountClosedWorkflowExecutions for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) CountClosedWorkflowExecutions(input *CountClosedWorkflowExecutionsInput) (*WorkflowExecutionCount, error) { req, out := c.CountClosedWorkflowExecutionsRequest(input) err := req.Send() return out, err } const opCountOpenWorkflowExecutions = "CountOpenWorkflowExecutions" // CountOpenWorkflowExecutionsRequest generates a "aws/request.Request" representing the // client's request for the CountOpenWorkflowExecutions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CountOpenWorkflowExecutions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CountOpenWorkflowExecutions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CountOpenWorkflowExecutionsRequest method. // req, resp := client.CountOpenWorkflowExecutionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) CountOpenWorkflowExecutionsRequest(input *CountOpenWorkflowExecutionsInput) (req *request.Request, output *WorkflowExecutionCount) { op := &request.Operation{ Name: opCountOpenWorkflowExecutions, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CountOpenWorkflowExecutionsInput{} } req = c.newRequest(op, input, output) output = &WorkflowExecutionCount{} req.Data = output return } // CountOpenWorkflowExecutions API operation for Amazon Simple Workflow Service. // // Returns the number of open workflow executions within the given domain that // meet the specified filtering criteria. // // This operation is eventually consistent. The results are best effort and // may not exactly reflect recent updates and changes.Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the following parameters by using a Condition element with // the appropriate keys. tagFilter.tag: String constraint. The key is swf:tagFilter.tag. // // typeFilter.name: String constraint. The key is swf:typeFilter.name. // typeFilter.version: String constraint. The key is swf:typeFilter.version. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation CountOpenWorkflowExecutions for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) CountOpenWorkflowExecutions(input *CountOpenWorkflowExecutionsInput) (*WorkflowExecutionCount, error) { req, out := c.CountOpenWorkflowExecutionsRequest(input) err := req.Send() return out, err } const opCountPendingActivityTasks = "CountPendingActivityTasks" // CountPendingActivityTasksRequest generates a "aws/request.Request" representing the // client's request for the CountPendingActivityTasks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CountPendingActivityTasks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CountPendingActivityTasks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CountPendingActivityTasksRequest method. // req, resp := client.CountPendingActivityTasksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) CountPendingActivityTasksRequest(input *CountPendingActivityTasksInput) (req *request.Request, output *PendingTaskCount) { op := &request.Operation{ Name: opCountPendingActivityTasks, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CountPendingActivityTasksInput{} } req = c.newRequest(op, input, output) output = &PendingTaskCount{} req.Data = output return } // CountPendingActivityTasks API operation for Amazon Simple Workflow Service. // // Returns the estimated number of activity tasks in the specified task list. // The count returned is an approximation and is not guaranteed to be exact. // If you specify a task list that no activity task was ever scheduled in then // 0 will be returned. // // Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the taskList.name parameter by using a Condition element with // the swf:taskList.name key to allow the action to access only certain task // lists. // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation CountPendingActivityTasks for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) CountPendingActivityTasks(input *CountPendingActivityTasksInput) (*PendingTaskCount, error) { req, out := c.CountPendingActivityTasksRequest(input) err := req.Send() return out, err } const opCountPendingDecisionTasks = "CountPendingDecisionTasks" // CountPendingDecisionTasksRequest generates a "aws/request.Request" representing the // client's request for the CountPendingDecisionTasks operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CountPendingDecisionTasks for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CountPendingDecisionTasks method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CountPendingDecisionTasksRequest method. // req, resp := client.CountPendingDecisionTasksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) CountPendingDecisionTasksRequest(input *CountPendingDecisionTasksInput) (req *request.Request, output *PendingTaskCount) { op := &request.Operation{ Name: opCountPendingDecisionTasks, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CountPendingDecisionTasksInput{} } req = c.newRequest(op, input, output) output = &PendingTaskCount{} req.Data = output return } // CountPendingDecisionTasks API operation for Amazon Simple Workflow Service. // // Returns the estimated number of decision tasks in the specified task list. // The count returned is an approximation and is not guaranteed to be exact. // If you specify a task list that no decision task was ever scheduled in then // 0 will be returned. // // Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the taskList.name parameter by using a Condition element with // the swf:taskList.name key to allow the action to access only certain task // lists. // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation CountPendingDecisionTasks for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) CountPendingDecisionTasks(input *CountPendingDecisionTasksInput) (*PendingTaskCount, error) { req, out := c.CountPendingDecisionTasksRequest(input) err := req.Send() return out, err } const opDeprecateActivityType = "DeprecateActivityType" // DeprecateActivityTypeRequest generates a "aws/request.Request" representing the // client's request for the DeprecateActivityType operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeprecateActivityType for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeprecateActivityType method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeprecateActivityTypeRequest method. // req, resp := client.DeprecateActivityTypeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) DeprecateActivityTypeRequest(input *DeprecateActivityTypeInput) (req *request.Request, output *DeprecateActivityTypeOutput) { op := &request.Operation{ Name: opDeprecateActivityType, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeprecateActivityTypeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeprecateActivityTypeOutput{} req.Data = output return } // DeprecateActivityType API operation for Amazon Simple Workflow Service. // // Deprecates the specified activity type. After an activity type has been deprecated, // you cannot create new tasks of that activity type. Tasks of this type that // were scheduled before the type was deprecated will continue to run. // // This operation is eventually consistent. The results are best effort and // may not exactly reflect recent updates and changes.Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the following parameters by using a Condition element with // the appropriate keys. activityType.name: String constraint. The key is // swf:activityType.name. // activityType.version: String constraint. The key is swf:activityType.version. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation DeprecateActivityType for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * TypeDeprecatedFault // Returned when the specified activity or workflow type was already deprecated. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) DeprecateActivityType(input *DeprecateActivityTypeInput) (*DeprecateActivityTypeOutput, error) { req, out := c.DeprecateActivityTypeRequest(input) err := req.Send() return out, err } const opDeprecateDomain = "DeprecateDomain" // DeprecateDomainRequest generates a "aws/request.Request" representing the // client's request for the DeprecateDomain operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeprecateDomain for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeprecateDomain method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeprecateDomainRequest method. // req, resp := client.DeprecateDomainRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) DeprecateDomainRequest(input *DeprecateDomainInput) (req *request.Request, output *DeprecateDomainOutput) { op := &request.Operation{ Name: opDeprecateDomain, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeprecateDomainInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeprecateDomainOutput{} req.Data = output return } // DeprecateDomain API operation for Amazon Simple Workflow Service. // // Deprecates the specified domain. After a domain has been deprecated it cannot // be used to create new workflow executions or register new types. However, // you can still use visibility actions on this domain. Deprecating a domain // also deprecates all activity and workflow types registered in the domain. // Executions that were started before the domain was deprecated will continue // to run. // // This operation is eventually consistent. The results are best effort and // may not exactly reflect recent updates and changes.Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation DeprecateDomain for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * DomainDeprecatedFault // Returned when the specified domain has been deprecated. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) DeprecateDomain(input *DeprecateDomainInput) (*DeprecateDomainOutput, error) { req, out := c.DeprecateDomainRequest(input) err := req.Send() return out, err } const opDeprecateWorkflowType = "DeprecateWorkflowType" // DeprecateWorkflowTypeRequest generates a "aws/request.Request" representing the // client's request for the DeprecateWorkflowType operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeprecateWorkflowType for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeprecateWorkflowType method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeprecateWorkflowTypeRequest method. // req, resp := client.DeprecateWorkflowTypeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) DeprecateWorkflowTypeRequest(input *DeprecateWorkflowTypeInput) (req *request.Request, output *DeprecateWorkflowTypeOutput) { op := &request.Operation{ Name: opDeprecateWorkflowType, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeprecateWorkflowTypeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &DeprecateWorkflowTypeOutput{} req.Data = output return } // DeprecateWorkflowType API operation for Amazon Simple Workflow Service. // // Deprecates the specified workflow type. After a workflow type has been deprecated, // you cannot create new executions of that type. Executions that were started // before the type was deprecated will continue to run. A deprecated workflow // type may still be used when calling visibility actions. // // This operation is eventually consistent. The results are best effort and // may not exactly reflect recent updates and changes.Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the following parameters by using a Condition element with // the appropriate keys. workflowType.name: String constraint. The key is // swf:workflowType.name. // workflowType.version: String constraint. The key is swf:workflowType.version. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation DeprecateWorkflowType for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * TypeDeprecatedFault // Returned when the specified activity or workflow type was already deprecated. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) DeprecateWorkflowType(input *DeprecateWorkflowTypeInput) (*DeprecateWorkflowTypeOutput, error) { req, out := c.DeprecateWorkflowTypeRequest(input) err := req.Send() return out, err } const opDescribeActivityType = "DescribeActivityType" // DescribeActivityTypeRequest generates a "aws/request.Request" representing the // client's request for the DescribeActivityType operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeActivityType for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeActivityType method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeActivityTypeRequest method. // req, resp := client.DescribeActivityTypeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) DescribeActivityTypeRequest(input *DescribeActivityTypeInput) (req *request.Request, output *DescribeActivityTypeOutput) { op := &request.Operation{ Name: opDescribeActivityType, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeActivityTypeInput{} } req = c.newRequest(op, input, output) output = &DescribeActivityTypeOutput{} req.Data = output return } // DescribeActivityType API operation for Amazon Simple Workflow Service. // // Returns information about the specified activity type. This includes configuration // settings provided when the type was registered and other general information // about the type. // // Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the following parameters by using a Condition element with // the appropriate keys. activityType.name: String constraint. The key is // swf:activityType.name. // activityType.version: String constraint. The key is swf:activityType.version. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation DescribeActivityType for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) DescribeActivityType(input *DescribeActivityTypeInput) (*DescribeActivityTypeOutput, error) { req, out := c.DescribeActivityTypeRequest(input) err := req.Send() return out, err } const opDescribeDomain = "DescribeDomain" // DescribeDomainRequest generates a "aws/request.Request" representing the // client's request for the DescribeDomain operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeDomain for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeDomain method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeDomainRequest method. // req, resp := client.DescribeDomainRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) DescribeDomainRequest(input *DescribeDomainInput) (req *request.Request, output *DescribeDomainOutput) { op := &request.Operation{ Name: opDescribeDomain, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeDomainInput{} } req = c.newRequest(op, input, output) output = &DescribeDomainOutput{} req.Data = output return } // DescribeDomain API operation for Amazon Simple Workflow Service. // // Returns information about the specified domain, including description and // status. // // Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation DescribeDomain for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) DescribeDomain(input *DescribeDomainInput) (*DescribeDomainOutput, error) { req, out := c.DescribeDomainRequest(input) err := req.Send() return out, err } const opDescribeWorkflowExecution = "DescribeWorkflowExecution" // DescribeWorkflowExecutionRequest generates a "aws/request.Request" representing the // client's request for the DescribeWorkflowExecution operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeWorkflowExecution for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeWorkflowExecution method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeWorkflowExecutionRequest method. // req, resp := client.DescribeWorkflowExecutionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) DescribeWorkflowExecutionRequest(input *DescribeWorkflowExecutionInput) (req *request.Request, output *DescribeWorkflowExecutionOutput) { op := &request.Operation{ Name: opDescribeWorkflowExecution, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeWorkflowExecutionInput{} } req = c.newRequest(op, input, output) output = &DescribeWorkflowExecutionOutput{} req.Data = output return } // DescribeWorkflowExecution API operation for Amazon Simple Workflow Service. // // Returns information about the specified workflow execution including its // type and some statistics. // // This operation is eventually consistent. The results are best effort and // may not exactly reflect recent updates and changes.Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation DescribeWorkflowExecution for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) DescribeWorkflowExecution(input *DescribeWorkflowExecutionInput) (*DescribeWorkflowExecutionOutput, error) { req, out := c.DescribeWorkflowExecutionRequest(input) err := req.Send() return out, err } const opDescribeWorkflowType = "DescribeWorkflowType" // DescribeWorkflowTypeRequest generates a "aws/request.Request" representing the // client's request for the DescribeWorkflowType operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeWorkflowType for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeWorkflowType method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeWorkflowTypeRequest method. // req, resp := client.DescribeWorkflowTypeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) DescribeWorkflowTypeRequest(input *DescribeWorkflowTypeInput) (req *request.Request, output *DescribeWorkflowTypeOutput) { op := &request.Operation{ Name: opDescribeWorkflowType, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeWorkflowTypeInput{} } req = c.newRequest(op, input, output) output = &DescribeWorkflowTypeOutput{} req.Data = output return } // DescribeWorkflowType API operation for Amazon Simple Workflow Service. // // Returns information about the specified workflow type. This includes configuration // settings specified when the type was registered and other information such // as creation date, current status, and so on. // // Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the following parameters by using a Condition element with // the appropriate keys. workflowType.name: String constraint. The key is // swf:workflowType.name. // workflowType.version: String constraint. The key is swf:workflowType.version. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation DescribeWorkflowType for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) DescribeWorkflowType(input *DescribeWorkflowTypeInput) (*DescribeWorkflowTypeOutput, error) { req, out := c.DescribeWorkflowTypeRequest(input) err := req.Send() return out, err } const opGetWorkflowExecutionHistory = "GetWorkflowExecutionHistory" // GetWorkflowExecutionHistoryRequest generates a "aws/request.Request" representing the // client's request for the GetWorkflowExecutionHistory operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetWorkflowExecutionHistory for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetWorkflowExecutionHistory method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetWorkflowExecutionHistoryRequest method. // req, resp := client.GetWorkflowExecutionHistoryRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) GetWorkflowExecutionHistoryRequest(input *GetWorkflowExecutionHistoryInput) (req *request.Request, output *GetWorkflowExecutionHistoryOutput) { op := &request.Operation{ Name: opGetWorkflowExecutionHistory, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextPageToken"}, OutputTokens: []string{"nextPageToken"}, LimitToken: "maximumPageSize", TruncationToken: "", }, } if input == nil { input = &GetWorkflowExecutionHistoryInput{} } req = c.newRequest(op, input, output) output = &GetWorkflowExecutionHistoryOutput{} req.Data = output return } // GetWorkflowExecutionHistory API operation for Amazon Simple Workflow Service. // // Returns the history of the specified workflow execution. The results may // be split into multiple pages. To retrieve subsequent pages, make the call // again using the nextPageToken returned by the initial call. // // This operation is eventually consistent. The results are best effort and // may not exactly reflect recent updates and changes.Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation GetWorkflowExecutionHistory for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) GetWorkflowExecutionHistory(input *GetWorkflowExecutionHistoryInput) (*GetWorkflowExecutionHistoryOutput, error) { req, out := c.GetWorkflowExecutionHistoryRequest(input) err := req.Send() return out, err } // GetWorkflowExecutionHistoryPages iterates over the pages of a GetWorkflowExecutionHistory operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See GetWorkflowExecutionHistory method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a GetWorkflowExecutionHistory operation. // pageNum := 0 // err := client.GetWorkflowExecutionHistoryPages(params, // func(page *GetWorkflowExecutionHistoryOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SWF) GetWorkflowExecutionHistoryPages(input *GetWorkflowExecutionHistoryInput, fn func(p *GetWorkflowExecutionHistoryOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.GetWorkflowExecutionHistoryRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*GetWorkflowExecutionHistoryOutput), lastPage) }) } const opListActivityTypes = "ListActivityTypes" // ListActivityTypesRequest generates a "aws/request.Request" representing the // client's request for the ListActivityTypes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListActivityTypes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListActivityTypes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListActivityTypesRequest method. // req, resp := client.ListActivityTypesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) ListActivityTypesRequest(input *ListActivityTypesInput) (req *request.Request, output *ListActivityTypesOutput) { op := &request.Operation{ Name: opListActivityTypes, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextPageToken"}, OutputTokens: []string{"nextPageToken"}, LimitToken: "maximumPageSize", TruncationToken: "", }, } if input == nil { input = &ListActivityTypesInput{} } req = c.newRequest(op, input, output) output = &ListActivityTypesOutput{} req.Data = output return } // ListActivityTypes API operation for Amazon Simple Workflow Service. // // Returns information about all activities registered in the specified domain // that match the specified name and registration status. The result includes // information like creation date, current status of the activity, etc. The // results may be split into multiple pages. To retrieve subsequent pages, make // the call again using the nextPageToken returned by the initial call. // // Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation ListActivityTypes for usage and error information. // // Returned Error Codes: // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // func (c *SWF) ListActivityTypes(input *ListActivityTypesInput) (*ListActivityTypesOutput, error) { req, out := c.ListActivityTypesRequest(input) err := req.Send() return out, err } // ListActivityTypesPages iterates over the pages of a ListActivityTypes operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListActivityTypes method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListActivityTypes operation. // pageNum := 0 // err := client.ListActivityTypesPages(params, // func(page *ListActivityTypesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SWF) ListActivityTypesPages(input *ListActivityTypesInput, fn func(p *ListActivityTypesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListActivityTypesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListActivityTypesOutput), lastPage) }) } const opListClosedWorkflowExecutions = "ListClosedWorkflowExecutions" // ListClosedWorkflowExecutionsRequest generates a "aws/request.Request" representing the // client's request for the ListClosedWorkflowExecutions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListClosedWorkflowExecutions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListClosedWorkflowExecutions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListClosedWorkflowExecutionsRequest method. // req, resp := client.ListClosedWorkflowExecutionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) ListClosedWorkflowExecutionsRequest(input *ListClosedWorkflowExecutionsInput) (req *request.Request, output *WorkflowExecutionInfos) { op := &request.Operation{ Name: opListClosedWorkflowExecutions, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextPageToken"}, OutputTokens: []string{"nextPageToken"}, LimitToken: "maximumPageSize", TruncationToken: "", }, } if input == nil { input = &ListClosedWorkflowExecutionsInput{} } req = c.newRequest(op, input, output) output = &WorkflowExecutionInfos{} req.Data = output return } // ListClosedWorkflowExecutions API operation for Amazon Simple Workflow Service. // // Returns a list of closed workflow executions in the specified domain that // meet the filtering criteria. The results may be split into multiple pages. // To retrieve subsequent pages, make the call again using the nextPageToken // returned by the initial call. // // This operation is eventually consistent. The results are best effort and // may not exactly reflect recent updates and changes.Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the following parameters by using a Condition element with // the appropriate keys. tagFilter.tag: String constraint. The key is swf:tagFilter.tag. // // typeFilter.name: String constraint. The key is swf:typeFilter.name. // typeFilter.version: String constraint. The key is swf:typeFilter.version. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation ListClosedWorkflowExecutions for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) ListClosedWorkflowExecutions(input *ListClosedWorkflowExecutionsInput) (*WorkflowExecutionInfos, error) { req, out := c.ListClosedWorkflowExecutionsRequest(input) err := req.Send() return out, err } // ListClosedWorkflowExecutionsPages iterates over the pages of a ListClosedWorkflowExecutions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListClosedWorkflowExecutions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListClosedWorkflowExecutions operation. // pageNum := 0 // err := client.ListClosedWorkflowExecutionsPages(params, // func(page *WorkflowExecutionInfos, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SWF) ListClosedWorkflowExecutionsPages(input *ListClosedWorkflowExecutionsInput, fn func(p *WorkflowExecutionInfos, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListClosedWorkflowExecutionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*WorkflowExecutionInfos), lastPage) }) } const opListDomains = "ListDomains" // ListDomainsRequest generates a "aws/request.Request" representing the // client's request for the ListDomains operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListDomains for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListDomains method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListDomainsRequest method. // req, resp := client.ListDomainsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) ListDomainsRequest(input *ListDomainsInput) (req *request.Request, output *ListDomainsOutput) { op := &request.Operation{ Name: opListDomains, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextPageToken"}, OutputTokens: []string{"nextPageToken"}, LimitToken: "maximumPageSize", TruncationToken: "", }, } if input == nil { input = &ListDomainsInput{} } req = c.newRequest(op, input, output) output = &ListDomainsOutput{} req.Data = output return } // ListDomains API operation for Amazon Simple Workflow Service. // // Returns the list of domains registered in the account. The results may be // split into multiple pages. To retrieve subsequent pages, make the call again // using the nextPageToken returned by the initial call. // // This operation is eventually consistent. The results are best effort and // may not exactly reflect recent updates and changes.Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. The element must be set to arn:aws:swf::AccountID:domain/*, // where AccountID is the account ID, with no dashes. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation ListDomains for usage and error information. // // Returned Error Codes: // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) ListDomains(input *ListDomainsInput) (*ListDomainsOutput, error) { req, out := c.ListDomainsRequest(input) err := req.Send() return out, err } // ListDomainsPages iterates over the pages of a ListDomains operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListDomains method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListDomains operation. // pageNum := 0 // err := client.ListDomainsPages(params, // func(page *ListDomainsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SWF) ListDomainsPages(input *ListDomainsInput, fn func(p *ListDomainsOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListDomainsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListDomainsOutput), lastPage) }) } const opListOpenWorkflowExecutions = "ListOpenWorkflowExecutions" // ListOpenWorkflowExecutionsRequest generates a "aws/request.Request" representing the // client's request for the ListOpenWorkflowExecutions operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListOpenWorkflowExecutions for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListOpenWorkflowExecutions method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListOpenWorkflowExecutionsRequest method. // req, resp := client.ListOpenWorkflowExecutionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) ListOpenWorkflowExecutionsRequest(input *ListOpenWorkflowExecutionsInput) (req *request.Request, output *WorkflowExecutionInfos) { op := &request.Operation{ Name: opListOpenWorkflowExecutions, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextPageToken"}, OutputTokens: []string{"nextPageToken"}, LimitToken: "maximumPageSize", TruncationToken: "", }, } if input == nil { input = &ListOpenWorkflowExecutionsInput{} } req = c.newRequest(op, input, output) output = &WorkflowExecutionInfos{} req.Data = output return } // ListOpenWorkflowExecutions API operation for Amazon Simple Workflow Service. // // Returns a list of open workflow executions in the specified domain that meet // the filtering criteria. The results may be split into multiple pages. To // retrieve subsequent pages, make the call again using the nextPageToken returned // by the initial call. // // This operation is eventually consistent. The results are best effort and // may not exactly reflect recent updates and changes.Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the following parameters by using a Condition element with // the appropriate keys. tagFilter.tag: String constraint. The key is swf:tagFilter.tag. // // typeFilter.name: String constraint. The key is swf:typeFilter.name. // typeFilter.version: String constraint. The key is swf:typeFilter.version. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation ListOpenWorkflowExecutions for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) ListOpenWorkflowExecutions(input *ListOpenWorkflowExecutionsInput) (*WorkflowExecutionInfos, error) { req, out := c.ListOpenWorkflowExecutionsRequest(input) err := req.Send() return out, err } // ListOpenWorkflowExecutionsPages iterates over the pages of a ListOpenWorkflowExecutions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListOpenWorkflowExecutions method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListOpenWorkflowExecutions operation. // pageNum := 0 // err := client.ListOpenWorkflowExecutionsPages(params, // func(page *WorkflowExecutionInfos, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SWF) ListOpenWorkflowExecutionsPages(input *ListOpenWorkflowExecutionsInput, fn func(p *WorkflowExecutionInfos, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListOpenWorkflowExecutionsRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*WorkflowExecutionInfos), lastPage) }) } const opListWorkflowTypes = "ListWorkflowTypes" // ListWorkflowTypesRequest generates a "aws/request.Request" representing the // client's request for the ListWorkflowTypes operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListWorkflowTypes for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListWorkflowTypes method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListWorkflowTypesRequest method. // req, resp := client.ListWorkflowTypesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) ListWorkflowTypesRequest(input *ListWorkflowTypesInput) (req *request.Request, output *ListWorkflowTypesOutput) { op := &request.Operation{ Name: opListWorkflowTypes, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextPageToken"}, OutputTokens: []string{"nextPageToken"}, LimitToken: "maximumPageSize", TruncationToken: "", }, } if input == nil { input = &ListWorkflowTypesInput{} } req = c.newRequest(op, input, output) output = &ListWorkflowTypesOutput{} req.Data = output return } // ListWorkflowTypes API operation for Amazon Simple Workflow Service. // // Returns information about workflow types in the specified domain. The results // may be split into multiple pages that can be retrieved by making the call // repeatedly. // // Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation ListWorkflowTypes for usage and error information. // // Returned Error Codes: // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // func (c *SWF) ListWorkflowTypes(input *ListWorkflowTypesInput) (*ListWorkflowTypesOutput, error) { req, out := c.ListWorkflowTypesRequest(input) err := req.Send() return out, err } // ListWorkflowTypesPages iterates over the pages of a ListWorkflowTypes operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListWorkflowTypes method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListWorkflowTypes operation. // pageNum := 0 // err := client.ListWorkflowTypesPages(params, // func(page *ListWorkflowTypesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SWF) ListWorkflowTypesPages(input *ListWorkflowTypesInput, fn func(p *ListWorkflowTypesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.ListWorkflowTypesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*ListWorkflowTypesOutput), lastPage) }) } const opPollForActivityTask = "PollForActivityTask" // PollForActivityTaskRequest generates a "aws/request.Request" representing the // client's request for the PollForActivityTask operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PollForActivityTask for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PollForActivityTask method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PollForActivityTaskRequest method. // req, resp := client.PollForActivityTaskRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) PollForActivityTaskRequest(input *PollForActivityTaskInput) (req *request.Request, output *PollForActivityTaskOutput) { op := &request.Operation{ Name: opPollForActivityTask, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &PollForActivityTaskInput{} } req = c.newRequest(op, input, output) output = &PollForActivityTaskOutput{} req.Data = output return } // PollForActivityTask API operation for Amazon Simple Workflow Service. // // Used by workers to get an ActivityTask from the specified activity taskList. // This initiates a long poll, where the service holds the HTTP connection open // and responds as soon as a task becomes available. The maximum time the service // holds on to the request before responding is 60 seconds. If no task is available // within 60 seconds, the poll will return an empty result. An empty result, // in this context, means that an ActivityTask is returned, but that the value // of taskToken is an empty string. If a task is returned, the worker should // use its type to identify and process it correctly. // // Workers should set their client side socket timeout to at least 70 seconds // (10 seconds higher than the maximum time service may hold the poll request).Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the taskList.name parameter by using a Condition element with // the swf:taskList.name key to allow the action to access only certain task // lists. // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation PollForActivityTask for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // // * LimitExceededFault // Returned by any operation if a system imposed limitation has been reached. // To address this fault you should either clean up unused resources or increase // the limit by contacting AWS. // func (c *SWF) PollForActivityTask(input *PollForActivityTaskInput) (*PollForActivityTaskOutput, error) { req, out := c.PollForActivityTaskRequest(input) err := req.Send() return out, err } const opPollForDecisionTask = "PollForDecisionTask" // PollForDecisionTaskRequest generates a "aws/request.Request" representing the // client's request for the PollForDecisionTask operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See PollForDecisionTask for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the PollForDecisionTask method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the PollForDecisionTaskRequest method. // req, resp := client.PollForDecisionTaskRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) PollForDecisionTaskRequest(input *PollForDecisionTaskInput) (req *request.Request, output *PollForDecisionTaskOutput) { op := &request.Operation{ Name: opPollForDecisionTask, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"nextPageToken"}, OutputTokens: []string{"nextPageToken"}, LimitToken: "maximumPageSize", TruncationToken: "", }, } if input == nil { input = &PollForDecisionTaskInput{} } req = c.newRequest(op, input, output) output = &PollForDecisionTaskOutput{} req.Data = output return } // PollForDecisionTask API operation for Amazon Simple Workflow Service. // // Used by deciders to get a DecisionTask from the specified decision taskList. // A decision task may be returned for any open workflow execution that is using // the specified task list. The task includes a paginated view of the history // of the workflow execution. The decider should use the workflow type and the // history to determine how to properly handle the task. // // This action initiates a long poll, where the service holds the HTTP connection // open and responds as soon a task becomes available. If no decision task is // available in the specified task list before the timeout of 60 seconds expires, // an empty result is returned. An empty result, in this context, means that // a DecisionTask is returned, but that the value of taskToken is an empty string. // // Deciders should set their client-side socket timeout to at least 70 seconds // (10 seconds higher than the timeout).Because the number of workflow history events for a single workflow execution // might be very large, the result returned might be split up across a number // of pages. To retrieve subsequent pages, make additional calls to PollForDecisionTask // using the nextPageToken returned by the initial call. Note that you do not // call GetWorkflowExecutionHistory with this nextPageToken. Instead, call PollForDecisionTask // again.Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the taskList.name parameter by using a Condition element with // the swf:taskList.name key to allow the action to access only certain task // lists. // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation PollForDecisionTask for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // // * LimitExceededFault // Returned by any operation if a system imposed limitation has been reached. // To address this fault you should either clean up unused resources or increase // the limit by contacting AWS. // func (c *SWF) PollForDecisionTask(input *PollForDecisionTaskInput) (*PollForDecisionTaskOutput, error) { req, out := c.PollForDecisionTaskRequest(input) err := req.Send() return out, err } // PollForDecisionTaskPages iterates over the pages of a PollForDecisionTask operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See PollForDecisionTask method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a PollForDecisionTask operation. // pageNum := 0 // err := client.PollForDecisionTaskPages(params, // func(page *PollForDecisionTaskOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *SWF) PollForDecisionTaskPages(input *PollForDecisionTaskInput, fn func(p *PollForDecisionTaskOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.PollForDecisionTaskRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*PollForDecisionTaskOutput), lastPage) }) } const opRecordActivityTaskHeartbeat = "RecordActivityTaskHeartbeat" // RecordActivityTaskHeartbeatRequest generates a "aws/request.Request" representing the // client's request for the RecordActivityTaskHeartbeat operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RecordActivityTaskHeartbeat for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RecordActivityTaskHeartbeat method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RecordActivityTaskHeartbeatRequest method. // req, resp := client.RecordActivityTaskHeartbeatRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) RecordActivityTaskHeartbeatRequest(input *RecordActivityTaskHeartbeatInput) (req *request.Request, output *RecordActivityTaskHeartbeatOutput) { op := &request.Operation{ Name: opRecordActivityTaskHeartbeat, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RecordActivityTaskHeartbeatInput{} } req = c.newRequest(op, input, output) output = &RecordActivityTaskHeartbeatOutput{} req.Data = output return } // RecordActivityTaskHeartbeat API operation for Amazon Simple Workflow Service. // // Used by activity workers to report to the service that the ActivityTask represented // by the specified taskToken is still making progress. The worker can also // (optionally) specify details of the progress, for example percent complete, // using the details parameter. This action can also be used by the worker as // a mechanism to check if cancellation is being requested for the activity // task. If a cancellation is being attempted for the specified task, then the // boolean cancelRequested flag returned by the service is set to true. // // This action resets the taskHeartbeatTimeout clock. The taskHeartbeatTimeout // is specified in RegisterActivityType. // // This action does not in itself create an event in the workflow execution // history. However, if the task times out, the workflow execution history will // contain a ActivityTaskTimedOut event that contains the information from the // last heartbeat generated by the activity worker. // // The taskStartToCloseTimeout of an activity type is the maximum duration of // an activity task, regardless of the number of RecordActivityTaskHeartbeat // requests received. The taskStartToCloseTimeout is also specified in RegisterActivityType.This operation is only useful for long-lived activities to report liveliness // of the task and to determine if a cancellation is being attempted. If the cancelRequested flag returns true, a cancellation is being attempted. // If the worker can cancel the activity, it should respond with RespondActivityTaskCanceled. // Otherwise, it should ignore the cancellation request.Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation RecordActivityTaskHeartbeat for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) RecordActivityTaskHeartbeat(input *RecordActivityTaskHeartbeatInput) (*RecordActivityTaskHeartbeatOutput, error) { req, out := c.RecordActivityTaskHeartbeatRequest(input) err := req.Send() return out, err } const opRegisterActivityType = "RegisterActivityType" // RegisterActivityTypeRequest generates a "aws/request.Request" representing the // client's request for the RegisterActivityType operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterActivityType for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterActivityType method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterActivityTypeRequest method. // req, resp := client.RegisterActivityTypeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) RegisterActivityTypeRequest(input *RegisterActivityTypeInput) (req *request.Request, output *RegisterActivityTypeOutput) { op := &request.Operation{ Name: opRegisterActivityType, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterActivityTypeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RegisterActivityTypeOutput{} req.Data = output return } // RegisterActivityType API operation for Amazon Simple Workflow Service. // // Registers a new activity type along with its configuration settings in the // specified domain. // // A TypeAlreadyExists fault is returned if the type already exists in the domain. // You cannot change any configuration settings of the type after its registration, // and it must be registered as a new version.Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the following parameters by using a Condition element with // the appropriate keys. defaultTaskList.name: String constraint. The key // is swf:defaultTaskList.name. // name: String constraint. The key is swf:name. // version: String constraint. The key is swf:version. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation RegisterActivityType for usage and error information. // // Returned Error Codes: // * TypeAlreadyExistsFault // Returned if the type already exists in the specified domain. You will get // this fault even if the existing type is in deprecated status. You can specify // another version if the intent is to create a new distinct version of the // type. // // * LimitExceededFault // Returned by any operation if a system imposed limitation has been reached. // To address this fault you should either clean up unused resources or increase // the limit by contacting AWS. // // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) RegisterActivityType(input *RegisterActivityTypeInput) (*RegisterActivityTypeOutput, error) { req, out := c.RegisterActivityTypeRequest(input) err := req.Send() return out, err } const opRegisterDomain = "RegisterDomain" // RegisterDomainRequest generates a "aws/request.Request" representing the // client's request for the RegisterDomain operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterDomain for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterDomain method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterDomainRequest method. // req, resp := client.RegisterDomainRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) RegisterDomainRequest(input *RegisterDomainInput) (req *request.Request, output *RegisterDomainOutput) { op := &request.Operation{ Name: opRegisterDomain, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterDomainInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RegisterDomainOutput{} req.Data = output return } // RegisterDomain API operation for Amazon Simple Workflow Service. // // Registers a new domain. // // Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * You cannot use an IAM policy to control domain access for this action. // The name of the domain being registered is available as the resource of // this action. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation RegisterDomain for usage and error information. // // Returned Error Codes: // * DomainAlreadyExistsFault // Returned if the specified domain already exists. You will get this fault // even if the existing domain is in deprecated status. // // * LimitExceededFault // Returned by any operation if a system imposed limitation has been reached. // To address this fault you should either clean up unused resources or increase // the limit by contacting AWS. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) RegisterDomain(input *RegisterDomainInput) (*RegisterDomainOutput, error) { req, out := c.RegisterDomainRequest(input) err := req.Send() return out, err } const opRegisterWorkflowType = "RegisterWorkflowType" // RegisterWorkflowTypeRequest generates a "aws/request.Request" representing the // client's request for the RegisterWorkflowType operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RegisterWorkflowType for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RegisterWorkflowType method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RegisterWorkflowTypeRequest method. // req, resp := client.RegisterWorkflowTypeRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) RegisterWorkflowTypeRequest(input *RegisterWorkflowTypeInput) (req *request.Request, output *RegisterWorkflowTypeOutput) { op := &request.Operation{ Name: opRegisterWorkflowType, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RegisterWorkflowTypeInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RegisterWorkflowTypeOutput{} req.Data = output return } // RegisterWorkflowType API operation for Amazon Simple Workflow Service. // // Registers a new workflow type and its configuration settings in the specified // domain. // // The retention period for the workflow history is set by the RegisterDomain // action. // // If the type already exists, then a TypeAlreadyExists fault is returned. You // cannot change the configuration settings of a workflow type once it is registered // and it must be registered as a new version.Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the following parameters by using a Condition element with // the appropriate keys. defaultTaskList.name: String constraint. The key // is swf:defaultTaskList.name. // name: String constraint. The key is swf:name. // version: String constraint. The key is swf:version. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation RegisterWorkflowType for usage and error information. // // Returned Error Codes: // * TypeAlreadyExistsFault // Returned if the type already exists in the specified domain. You will get // this fault even if the existing type is in deprecated status. You can specify // another version if the intent is to create a new distinct version of the // type. // // * LimitExceededFault // Returned by any operation if a system imposed limitation has been reached. // To address this fault you should either clean up unused resources or increase // the limit by contacting AWS. // // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) RegisterWorkflowType(input *RegisterWorkflowTypeInput) (*RegisterWorkflowTypeOutput, error) { req, out := c.RegisterWorkflowTypeRequest(input) err := req.Send() return out, err } const opRequestCancelWorkflowExecution = "RequestCancelWorkflowExecution" // RequestCancelWorkflowExecutionRequest generates a "aws/request.Request" representing the // client's request for the RequestCancelWorkflowExecution operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RequestCancelWorkflowExecution for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RequestCancelWorkflowExecution method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RequestCancelWorkflowExecutionRequest method. // req, resp := client.RequestCancelWorkflowExecutionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) RequestCancelWorkflowExecutionRequest(input *RequestCancelWorkflowExecutionInput) (req *request.Request, output *RequestCancelWorkflowExecutionOutput) { op := &request.Operation{ Name: opRequestCancelWorkflowExecution, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RequestCancelWorkflowExecutionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RequestCancelWorkflowExecutionOutput{} req.Data = output return } // RequestCancelWorkflowExecution API operation for Amazon Simple Workflow Service. // // Records a WorkflowExecutionCancelRequested event in the currently running // workflow execution identified by the given domain, workflowId, and runId. // This logically requests the cancellation of the workflow execution as a whole. // It is up to the decider to take appropriate actions when it receives an execution // history with this event. // // If the runId is not specified, the WorkflowExecutionCancelRequested event // is recorded in the history of the current open workflow execution with the // specified workflowId in the domain.Because this action allows the workflow to properly clean up and gracefully // close, it should be used instead of TerminateWorkflowExecution when possible.Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation RequestCancelWorkflowExecution for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) RequestCancelWorkflowExecution(input *RequestCancelWorkflowExecutionInput) (*RequestCancelWorkflowExecutionOutput, error) { req, out := c.RequestCancelWorkflowExecutionRequest(input) err := req.Send() return out, err } const opRespondActivityTaskCanceled = "RespondActivityTaskCanceled" // RespondActivityTaskCanceledRequest generates a "aws/request.Request" representing the // client's request for the RespondActivityTaskCanceled operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RespondActivityTaskCanceled for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RespondActivityTaskCanceled method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RespondActivityTaskCanceledRequest method. // req, resp := client.RespondActivityTaskCanceledRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) RespondActivityTaskCanceledRequest(input *RespondActivityTaskCanceledInput) (req *request.Request, output *RespondActivityTaskCanceledOutput) { op := &request.Operation{ Name: opRespondActivityTaskCanceled, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RespondActivityTaskCanceledInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RespondActivityTaskCanceledOutput{} req.Data = output return } // RespondActivityTaskCanceled API operation for Amazon Simple Workflow Service. // // Used by workers to tell the service that the ActivityTask identified by the // taskToken was successfully canceled. Additional details can be optionally // provided using the details argument. // // These details (if provided) appear in the ActivityTaskCanceled event added // to the workflow history. // // Only use this operation if the canceled flag of a RecordActivityTaskHeartbeat // request returns true and if the activity can be safely undone or abandoned.A task is considered open from the time that it is scheduled until it is // closed. Therefore a task is reported as open while a worker is processing // it. A task is closed after it has been specified in a call to RespondActivityTaskCompleted, // RespondActivityTaskCanceled, RespondActivityTaskFailed, or the task has timed // out (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dg-basic.html#swf-dev-timeout-types). // // Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation RespondActivityTaskCanceled for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) RespondActivityTaskCanceled(input *RespondActivityTaskCanceledInput) (*RespondActivityTaskCanceledOutput, error) { req, out := c.RespondActivityTaskCanceledRequest(input) err := req.Send() return out, err } const opRespondActivityTaskCompleted = "RespondActivityTaskCompleted" // RespondActivityTaskCompletedRequest generates a "aws/request.Request" representing the // client's request for the RespondActivityTaskCompleted operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RespondActivityTaskCompleted for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RespondActivityTaskCompleted method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RespondActivityTaskCompletedRequest method. // req, resp := client.RespondActivityTaskCompletedRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) RespondActivityTaskCompletedRequest(input *RespondActivityTaskCompletedInput) (req *request.Request, output *RespondActivityTaskCompletedOutput) { op := &request.Operation{ Name: opRespondActivityTaskCompleted, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RespondActivityTaskCompletedInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RespondActivityTaskCompletedOutput{} req.Data = output return } // RespondActivityTaskCompleted API operation for Amazon Simple Workflow Service. // // Used by workers to tell the service that the ActivityTask identified by the // taskToken completed successfully with a result (if provided). The result // appears in the ActivityTaskCompleted event in the workflow history. // // If the requested task does not complete successfully, use RespondActivityTaskFailed // instead. If the worker finds that the task is canceled through the canceled // flag returned by RecordActivityTaskHeartbeat, it should cancel the task, // clean up and then call RespondActivityTaskCanceled.A task is considered open from the time that it is scheduled until it is // closed. Therefore a task is reported as open while a worker is processing // it. A task is closed after it has been specified in a call to RespondActivityTaskCompleted, // RespondActivityTaskCanceled, RespondActivityTaskFailed, or the task has timed // out (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dg-basic.html#swf-dev-timeout-types). // // Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation RespondActivityTaskCompleted for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) RespondActivityTaskCompleted(input *RespondActivityTaskCompletedInput) (*RespondActivityTaskCompletedOutput, error) { req, out := c.RespondActivityTaskCompletedRequest(input) err := req.Send() return out, err } const opRespondActivityTaskFailed = "RespondActivityTaskFailed" // RespondActivityTaskFailedRequest generates a "aws/request.Request" representing the // client's request for the RespondActivityTaskFailed operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RespondActivityTaskFailed for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RespondActivityTaskFailed method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RespondActivityTaskFailedRequest method. // req, resp := client.RespondActivityTaskFailedRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) RespondActivityTaskFailedRequest(input *RespondActivityTaskFailedInput) (req *request.Request, output *RespondActivityTaskFailedOutput) { op := &request.Operation{ Name: opRespondActivityTaskFailed, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RespondActivityTaskFailedInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RespondActivityTaskFailedOutput{} req.Data = output return } // RespondActivityTaskFailed API operation for Amazon Simple Workflow Service. // // Used by workers to tell the service that the ActivityTask identified by the // taskToken has failed with reason (if specified). The reason and details appear // in the ActivityTaskFailed event added to the workflow history. // // A task is considered open from the time that it is scheduled until it is // closed. Therefore a task is reported as open while a worker is processing // it. A task is closed after it has been specified in a call to RespondActivityTaskCompleted, // RespondActivityTaskCanceled, RespondActivityTaskFailed, or the task has timed // out (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dg-basic.html#swf-dev-timeout-types). // // Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation RespondActivityTaskFailed for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) RespondActivityTaskFailed(input *RespondActivityTaskFailedInput) (*RespondActivityTaskFailedOutput, error) { req, out := c.RespondActivityTaskFailedRequest(input) err := req.Send() return out, err } const opRespondDecisionTaskCompleted = "RespondDecisionTaskCompleted" // RespondDecisionTaskCompletedRequest generates a "aws/request.Request" representing the // client's request for the RespondDecisionTaskCompleted operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RespondDecisionTaskCompleted for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RespondDecisionTaskCompleted method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RespondDecisionTaskCompletedRequest method. // req, resp := client.RespondDecisionTaskCompletedRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) RespondDecisionTaskCompletedRequest(input *RespondDecisionTaskCompletedInput) (req *request.Request, output *RespondDecisionTaskCompletedOutput) { op := &request.Operation{ Name: opRespondDecisionTaskCompleted, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RespondDecisionTaskCompletedInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &RespondDecisionTaskCompletedOutput{} req.Data = output return } // RespondDecisionTaskCompleted API operation for Amazon Simple Workflow Service. // // Used by deciders to tell the service that the DecisionTask identified by // the taskToken has successfully completed. The decisions argument specifies // the list of decisions made while processing the task. // // A DecisionTaskCompleted event is added to the workflow history. The executionContext // specified is attached to the event in the workflow execution history. // // Access Control // // If an IAM policy grants permission to use RespondDecisionTaskCompleted, it // can express permissions for the list of decisions in the decisions parameter. // Each of the decisions has one or more parameters, much like a regular API // call. To allow for policies to be as readable as possible, you can express // permissions on decisions as if they were actual API calls, including applying // conditions to some parameters. For more information, see Using IAM to Manage // Access to Amazon SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation RespondDecisionTaskCompleted for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) RespondDecisionTaskCompleted(input *RespondDecisionTaskCompletedInput) (*RespondDecisionTaskCompletedOutput, error) { req, out := c.RespondDecisionTaskCompletedRequest(input) err := req.Send() return out, err } const opSignalWorkflowExecution = "SignalWorkflowExecution" // SignalWorkflowExecutionRequest generates a "aws/request.Request" representing the // client's request for the SignalWorkflowExecution operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See SignalWorkflowExecution for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the SignalWorkflowExecution method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the SignalWorkflowExecutionRequest method. // req, resp := client.SignalWorkflowExecutionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) SignalWorkflowExecutionRequest(input *SignalWorkflowExecutionInput) (req *request.Request, output *SignalWorkflowExecutionOutput) { op := &request.Operation{ Name: opSignalWorkflowExecution, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &SignalWorkflowExecutionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &SignalWorkflowExecutionOutput{} req.Data = output return } // SignalWorkflowExecution API operation for Amazon Simple Workflow Service. // // Records a WorkflowExecutionSignaled event in the workflow execution history // and creates a decision task for the workflow execution identified by the // given domain, workflowId and runId. The event is recorded with the specified // user defined signalName and input (if provided). // // If a runId is not specified, then the WorkflowExecutionSignaled event is // recorded in the history of the current open workflow with the matching workflowId // in the domain.If the specified workflow execution is not open, this method fails with UnknownResource.Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation SignalWorkflowExecution for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) SignalWorkflowExecution(input *SignalWorkflowExecutionInput) (*SignalWorkflowExecutionOutput, error) { req, out := c.SignalWorkflowExecutionRequest(input) err := req.Send() return out, err } const opStartWorkflowExecution = "StartWorkflowExecution" // StartWorkflowExecutionRequest generates a "aws/request.Request" representing the // client's request for the StartWorkflowExecution operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StartWorkflowExecution for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StartWorkflowExecution method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StartWorkflowExecutionRequest method. // req, resp := client.StartWorkflowExecutionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) StartWorkflowExecutionRequest(input *StartWorkflowExecutionInput) (req *request.Request, output *StartWorkflowExecutionOutput) { op := &request.Operation{ Name: opStartWorkflowExecution, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartWorkflowExecutionInput{} } req = c.newRequest(op, input, output) output = &StartWorkflowExecutionOutput{} req.Data = output return } // StartWorkflowExecution API operation for Amazon Simple Workflow Service. // // Starts an execution of the workflow type in the specified domain using the // provided workflowId and input data. // // This action returns the newly started workflow execution. // // Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the following parameters by using a Condition element with // the appropriate keys. tagList.member.0: The key is swf:tagList.member.0. // // tagList.member.1: The key is swf:tagList.member.1. // tagList.member.2: The key is swf:tagList.member.2. // tagList.member.3: The key is swf:tagList.member.3. // tagList.member.4: The key is swf:tagList.member.4. // taskList: String constraint. The key is swf:taskList.name. // workflowType.name: String constraint. The key is swf:workflowType.name. // workflowType.version: String constraint. The key is swf:workflowType.version. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation StartWorkflowExecution for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * TypeDeprecatedFault // Returned when the specified activity or workflow type was already deprecated. // // * WorkflowExecutionAlreadyStartedFault // Returned by StartWorkflowExecution when an open execution with the same workflowId // is already running in the specified domain. // // * LimitExceededFault // Returned by any operation if a system imposed limitation has been reached. // To address this fault you should either clean up unused resources or increase // the limit by contacting AWS. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // // * DefaultUndefinedFault // func (c *SWF) StartWorkflowExecution(input *StartWorkflowExecutionInput) (*StartWorkflowExecutionOutput, error) { req, out := c.StartWorkflowExecutionRequest(input) err := req.Send() return out, err } const opTerminateWorkflowExecution = "TerminateWorkflowExecution" // TerminateWorkflowExecutionRequest generates a "aws/request.Request" representing the // client's request for the TerminateWorkflowExecution operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See TerminateWorkflowExecution for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the TerminateWorkflowExecution method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the TerminateWorkflowExecutionRequest method. // req, resp := client.TerminateWorkflowExecutionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *SWF) TerminateWorkflowExecutionRequest(input *TerminateWorkflowExecutionInput) (req *request.Request, output *TerminateWorkflowExecutionOutput) { op := &request.Operation{ Name: opTerminateWorkflowExecution, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &TerminateWorkflowExecutionInput{} } req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) output = &TerminateWorkflowExecutionOutput{} req.Data = output return } // TerminateWorkflowExecution API operation for Amazon Simple Workflow Service. // // Records a WorkflowExecutionTerminated event and forces closure of the workflow // execution identified by the given domain, runId, and workflowId. The child // policy, registered with the workflow type or specified when starting this // execution, is applied to any open child workflow executions of this workflow // execution. // // If the identified workflow execution was in progress, it is terminated immediately.If a runId is not specified, then the WorkflowExecutionTerminated event is // recorded in the history of the current open workflow with the matching workflowId // in the domain.You should consider using RequestCancelWorkflowExecution action instead because // it allows the workflow to gracefully close while TerminateWorkflowExecution // does not.Access Control // // You can use IAM policies to control this action's access to Amazon SWF resources // as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Simple Workflow Service's // API operation TerminateWorkflowExecution for usage and error information. // // Returned Error Codes: // * UnknownResourceFault // Returned when the named resource cannot be found with in the scope of this // operation (region or domain). This could happen if the named resource was // never created or is no longer available for this operation. // // * OperationNotPermittedFault // Returned when the caller does not have sufficient permissions to invoke the // action. // func (c *SWF) TerminateWorkflowExecution(input *TerminateWorkflowExecutionInput) (*TerminateWorkflowExecutionOutput, error) { req, out := c.TerminateWorkflowExecutionRequest(input) err := req.Send() return out, err } // Provides details of the ActivityTaskCancelRequested event. type ActivityTaskCancelRequestedEventAttributes struct { _ struct{} `type:"structure"` // The unique ID of the task. // // ActivityId is a required field ActivityId *string `locationName:"activityId" min:"1" type:"string" required:"true"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the RequestCancelActivityTask decision for this cancellation // request. This information can be useful for diagnosing problems by tracing // back the chain of events leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` } // String returns the string representation func (s ActivityTaskCancelRequestedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActivityTaskCancelRequestedEventAttributes) GoString() string { return s.String() } // Provides details of the ActivityTaskCanceled event. type ActivityTaskCanceledEventAttributes struct { _ struct{} `type:"structure"` // Details of the cancellation (if any). Details *string `locationName:"details" type:"string"` // If set, contains the ID of the last ActivityTaskCancelRequested event recorded // for this activity task. This information can be useful for diagnosing problems // by tracing back the chain of events leading up to this event. LatestCancelRequestedEventId *int64 `locationName:"latestCancelRequestedEventId" type:"long"` // The ID of the ActivityTaskScheduled event that was recorded when this activity // task was scheduled. This information can be useful for diagnosing problems // by tracing back the chain of events leading up to this event. // // ScheduledEventId is a required field ScheduledEventId *int64 `locationName:"scheduledEventId" type:"long" required:"true"` // The ID of the ActivityTaskStarted event recorded when this activity task // was started. This information can be useful for diagnosing problems by tracing // back the chain of events leading up to this event. // // StartedEventId is a required field StartedEventId *int64 `locationName:"startedEventId" type:"long" required:"true"` } // String returns the string representation func (s ActivityTaskCanceledEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActivityTaskCanceledEventAttributes) GoString() string { return s.String() } // Provides details of the ActivityTaskCompleted event. type ActivityTaskCompletedEventAttributes struct { _ struct{} `type:"structure"` // The results of the activity task (if any). Result *string `locationName:"result" type:"string"` // The ID of the ActivityTaskScheduled event that was recorded when this activity // task was scheduled. This information can be useful for diagnosing problems // by tracing back the chain of events leading up to this event. // // ScheduledEventId is a required field ScheduledEventId *int64 `locationName:"scheduledEventId" type:"long" required:"true"` // The ID of the ActivityTaskStarted event recorded when this activity task // was started. This information can be useful for diagnosing problems by tracing // back the chain of events leading up to this event. // // StartedEventId is a required field StartedEventId *int64 `locationName:"startedEventId" type:"long" required:"true"` } // String returns the string representation func (s ActivityTaskCompletedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActivityTaskCompletedEventAttributes) GoString() string { return s.String() } // Provides details of the ActivityTaskFailed event. type ActivityTaskFailedEventAttributes struct { _ struct{} `type:"structure"` // The details of the failure (if any). Details *string `locationName:"details" type:"string"` // The reason provided for the failure (if any). Reason *string `locationName:"reason" type:"string"` // The ID of the ActivityTaskScheduled event that was recorded when this activity // task was scheduled. This information can be useful for diagnosing problems // by tracing back the chain of events leading up to this event. // // ScheduledEventId is a required field ScheduledEventId *int64 `locationName:"scheduledEventId" type:"long" required:"true"` // The ID of the ActivityTaskStarted event recorded when this activity task // was started. This information can be useful for diagnosing problems by tracing // back the chain of events leading up to this event. // // StartedEventId is a required field StartedEventId *int64 `locationName:"startedEventId" type:"long" required:"true"` } // String returns the string representation func (s ActivityTaskFailedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActivityTaskFailedEventAttributes) GoString() string { return s.String() } // Provides details of the ActivityTaskScheduled event. type ActivityTaskScheduledEventAttributes struct { _ struct{} `type:"structure"` // The unique ID of the activity task. // // ActivityId is a required field ActivityId *string `locationName:"activityId" min:"1" type:"string" required:"true"` // The type of the activity task. // // ActivityType is a required field ActivityType *ActivityType `locationName:"activityType" type:"structure" required:"true"` // Optional. Data attached to the event that can be used by the decider in subsequent // workflow tasks. This data is not sent to the activity. Control *string `locationName:"control" type:"string"` // The ID of the DecisionTaskCompleted event corresponding to the decision that // resulted in the scheduling of this activity task. This information can be // useful for diagnosing problems by tracing back the chain of events leading // up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // The maximum time before which the worker processing this task must report // progress by calling RecordActivityTaskHeartbeat. If the timeout is exceeded, // the activity task is automatically timed out. If the worker subsequently // attempts to record a heartbeat or return a result, it will be ignored. HeartbeatTimeout *string `locationName:"heartbeatTimeout" type:"string"` // The input provided to the activity task. Input *string `locationName:"input" type:"string"` // The maximum amount of time for this activity task. ScheduleToCloseTimeout *string `locationName:"scheduleToCloseTimeout" type:"string"` // The maximum amount of time the activity task can wait to be assigned to a // worker. ScheduleToStartTimeout *string `locationName:"scheduleToStartTimeout" type:"string"` // The maximum amount of time a worker may take to process the activity task. StartToCloseTimeout *string `locationName:"startToCloseTimeout" type:"string"` // The task list in which the activity task has been scheduled. // // TaskList is a required field TaskList *TaskList `locationName:"taskList" type:"structure" required:"true"` // Optional. The priority to assign to the scheduled activity task. If set, // this will override any default priority value that was assigned when the // activity type was registered. // // Valid values are integers that range from Java's Integer.MIN_VALUE (-2147483648) // to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority. // // For more information about setting task priority, see Setting Task Priority // (http://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) // in the Amazon Simple Workflow Developer Guide. TaskPriority *string `locationName:"taskPriority" type:"string"` } // String returns the string representation func (s ActivityTaskScheduledEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActivityTaskScheduledEventAttributes) GoString() string { return s.String() } // Provides details of the ActivityTaskStarted event. type ActivityTaskStartedEventAttributes struct { _ struct{} `type:"structure"` // Identity of the worker that was assigned this task. This aids diagnostics // when problems arise. The form of this identity is user defined. Identity *string `locationName:"identity" type:"string"` // The ID of the ActivityTaskScheduled event that was recorded when this activity // task was scheduled. This information can be useful for diagnosing problems // by tracing back the chain of events leading up to this event. // // ScheduledEventId is a required field ScheduledEventId *int64 `locationName:"scheduledEventId" type:"long" required:"true"` } // String returns the string representation func (s ActivityTaskStartedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActivityTaskStartedEventAttributes) GoString() string { return s.String() } // Provides details of the ActivityTaskTimedOut event. type ActivityTaskTimedOutEventAttributes struct { _ struct{} `type:"structure"` // Contains the content of the details parameter for the last call made by the // activity to RecordActivityTaskHeartbeat. Details *string `locationName:"details" type:"string"` // The ID of the ActivityTaskScheduled event that was recorded when this activity // task was scheduled. This information can be useful for diagnosing problems // by tracing back the chain of events leading up to this event. // // ScheduledEventId is a required field ScheduledEventId *int64 `locationName:"scheduledEventId" type:"long" required:"true"` // The ID of the ActivityTaskStarted event recorded when this activity task // was started. This information can be useful for diagnosing problems by tracing // back the chain of events leading up to this event. // // StartedEventId is a required field StartedEventId *int64 `locationName:"startedEventId" type:"long" required:"true"` // The type of the timeout that caused this event. // // TimeoutType is a required field TimeoutType *string `locationName:"timeoutType" type:"string" required:"true" enum:"ActivityTaskTimeoutType"` } // String returns the string representation func (s ActivityTaskTimedOutEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActivityTaskTimedOutEventAttributes) GoString() string { return s.String() } // Represents an activity type. type ActivityType struct { _ struct{} `type:"structure"` // The name of this activity. // // The combination of activity type name and version must be unique within a // domain. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // The version of this activity. // // The combination of activity type name and version must be unique with in // a domain. // // Version is a required field Version *string `locationName:"version" min:"1" type:"string" required:"true"` } // String returns the string representation func (s ActivityType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActivityType) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ActivityType) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ActivityType"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Version == nil { invalidParams.Add(request.NewErrParamRequired("Version")) } if s.Version != nil && len(*s.Version) < 1 { invalidParams.Add(request.NewErrParamMinLen("Version", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Configuration settings registered with the activity type. type ActivityTypeConfiguration struct { _ struct{} `type:"structure"` // Optional. The default maximum time, in seconds, before which a worker processing // a task must report progress by calling RecordActivityTaskHeartbeat. // // You can specify this value only when registering an activity type. The registered // default value can be overridden when you schedule a task through the ScheduleActivityTask // decision. If the activity worker subsequently attempts to record a heartbeat // or returns a result, the activity worker receives an UnknownResource fault. // In this case, Amazon SWF no longer considers the activity task to be valid; // the activity worker should clean up the activity task. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. DefaultTaskHeartbeatTimeout *string `locationName:"defaultTaskHeartbeatTimeout" type:"string"` // Optional. The default task list specified for this activity type at registration. // This default is used if a task list is not provided when a task is scheduled // through the ScheduleActivityTask decision. You can override the default registered // task list when scheduling a task through the ScheduleActivityTask decision. DefaultTaskList *TaskList `locationName:"defaultTaskList" type:"structure"` // Optional. The default task priority for tasks of this activity type, specified // at registration. If not set, then "0" will be used as the default priority. // This default can be overridden when scheduling an activity task. // // Valid values are integers that range from Java's Integer.MIN_VALUE (-2147483648) // to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority. // // For more information about setting task priority, see Setting Task Priority // (http://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) // in the Amazon Simple Workflow Developer Guide. DefaultTaskPriority *string `locationName:"defaultTaskPriority" type:"string"` // Optional. The default maximum duration, specified when registering the activity // type, for tasks of this activity type. You can override this default when // scheduling a task through the ScheduleActivityTask decision. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. DefaultTaskScheduleToCloseTimeout *string `locationName:"defaultTaskScheduleToCloseTimeout" type:"string"` // Optional. The default maximum duration, specified when registering the activity // type, that a task of an activity type can wait before being assigned to a // worker. You can override this default when scheduling a task through the // ScheduleActivityTask decision. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. DefaultTaskScheduleToStartTimeout *string `locationName:"defaultTaskScheduleToStartTimeout" type:"string"` // Optional. The default maximum duration for tasks of an activity type specified // when registering the activity type. You can override this default when scheduling // a task through the ScheduleActivityTask decision. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. DefaultTaskStartToCloseTimeout *string `locationName:"defaultTaskStartToCloseTimeout" type:"string"` } // String returns the string representation func (s ActivityTypeConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActivityTypeConfiguration) GoString() string { return s.String() } // Detailed information about an activity type. type ActivityTypeInfo struct { _ struct{} `type:"structure"` // The ActivityType type structure representing the activity type. // // ActivityType is a required field ActivityType *ActivityType `locationName:"activityType" type:"structure" required:"true"` // The date and time this activity type was created through RegisterActivityType. // // CreationDate is a required field CreationDate *time.Time `locationName:"creationDate" type:"timestamp" timestampFormat:"unix" required:"true"` // If DEPRECATED, the date and time DeprecateActivityType was called. DeprecationDate *time.Time `locationName:"deprecationDate" type:"timestamp" timestampFormat:"unix"` // The description of the activity type provided in RegisterActivityType. Description *string `locationName:"description" type:"string"` // The current status of the activity type. // // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"RegistrationStatus"` } // String returns the string representation func (s ActivityTypeInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActivityTypeInfo) GoString() string { return s.String() } // Provides details of the CancelTimer decision. // // Access Control // // You can use IAM policies to control this decision's access to Amazon SWF // resources as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). type CancelTimerDecisionAttributes struct { _ struct{} `type:"structure"` // Required. The unique ID of the timer to cancel. // // TimerId is a required field TimerId *string `locationName:"timerId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CancelTimerDecisionAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelTimerDecisionAttributes) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CancelTimerDecisionAttributes) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelTimerDecisionAttributes"} if s.TimerId == nil { invalidParams.Add(request.NewErrParamRequired("TimerId")) } if s.TimerId != nil && len(*s.TimerId) < 1 { invalidParams.Add(request.NewErrParamMinLen("TimerId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides details of the CancelTimerFailed event. type CancelTimerFailedEventAttributes struct { _ struct{} `type:"structure"` // The cause of the failure. This information is generated by the system and // can be useful for diagnostic purposes. // // If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it // lacked sufficient permissions. For details and example IAM policies, see // Using IAM to Manage Access to Amazon SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Cause is a required field Cause *string `locationName:"cause" type:"string" required:"true" enum:"CancelTimerFailedCause"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the CancelTimer decision to cancel this timer. This information // can be useful for diagnosing problems by tracing back the chain of events // leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // The timerId provided in the CancelTimer decision that failed. // // TimerId is a required field TimerId *string `locationName:"timerId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s CancelTimerFailedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelTimerFailedEventAttributes) GoString() string { return s.String() } // Provides details of the CancelWorkflowExecution decision. // // Access Control // // You can use IAM policies to control this decision's access to Amazon SWF // resources as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). type CancelWorkflowExecutionDecisionAttributes struct { _ struct{} `type:"structure"` // Optional. details of the cancellation. Details *string `locationName:"details" type:"string"` } // String returns the string representation func (s CancelWorkflowExecutionDecisionAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelWorkflowExecutionDecisionAttributes) GoString() string { return s.String() } // Provides details of the CancelWorkflowExecutionFailed event. type CancelWorkflowExecutionFailedEventAttributes struct { _ struct{} `type:"structure"` // The cause of the failure. This information is generated by the system and // can be useful for diagnostic purposes. // // If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it // lacked sufficient permissions. For details and example IAM policies, see // Using IAM to Manage Access to Amazon SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Cause is a required field Cause *string `locationName:"cause" type:"string" required:"true" enum:"CancelWorkflowExecutionFailedCause"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the CancelWorkflowExecution decision for this cancellation // request. This information can be useful for diagnosing problems by tracing // back the chain of events leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` } // String returns the string representation func (s CancelWorkflowExecutionFailedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelWorkflowExecutionFailedEventAttributes) GoString() string { return s.String() } // Provide details of the ChildWorkflowExecutionCanceled event. type ChildWorkflowExecutionCanceledEventAttributes struct { _ struct{} `type:"structure"` // Details of the cancellation (if provided). Details *string `locationName:"details" type:"string"` // The ID of the StartChildWorkflowExecutionInitiated event corresponding to // the StartChildWorkflowExecution decision to start this child workflow execution. // This information can be useful for diagnosing problems by tracing back the // chain of events leading up to this event. // // InitiatedEventId is a required field InitiatedEventId *int64 `locationName:"initiatedEventId" type:"long" required:"true"` // The ID of the ChildWorkflowExecutionStarted event recorded when this child // workflow execution was started. This information can be useful for diagnosing // problems by tracing back the chain of events leading up to this event. // // StartedEventId is a required field StartedEventId *int64 `locationName:"startedEventId" type:"long" required:"true"` // The child workflow execution that was canceled. // // WorkflowExecution is a required field WorkflowExecution *WorkflowExecution `locationName:"workflowExecution" type:"structure" required:"true"` // The type of the child workflow execution. // // WorkflowType is a required field WorkflowType *WorkflowType `locationName:"workflowType" type:"structure" required:"true"` } // String returns the string representation func (s ChildWorkflowExecutionCanceledEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChildWorkflowExecutionCanceledEventAttributes) GoString() string { return s.String() } // Provides details of the ChildWorkflowExecutionCompleted event. type ChildWorkflowExecutionCompletedEventAttributes struct { _ struct{} `type:"structure"` // The ID of the StartChildWorkflowExecutionInitiated event corresponding to // the StartChildWorkflowExecution decision to start this child workflow execution. // This information can be useful for diagnosing problems by tracing back the // chain of events leading up to this event. // // InitiatedEventId is a required field InitiatedEventId *int64 `locationName:"initiatedEventId" type:"long" required:"true"` // The result of the child workflow execution (if any). Result *string `locationName:"result" type:"string"` // The ID of the ChildWorkflowExecutionStarted event recorded when this child // workflow execution was started. This information can be useful for diagnosing // problems by tracing back the chain of events leading up to this event. // // StartedEventId is a required field StartedEventId *int64 `locationName:"startedEventId" type:"long" required:"true"` // The child workflow execution that was completed. // // WorkflowExecution is a required field WorkflowExecution *WorkflowExecution `locationName:"workflowExecution" type:"structure" required:"true"` // The type of the child workflow execution. // // WorkflowType is a required field WorkflowType *WorkflowType `locationName:"workflowType" type:"structure" required:"true"` } // String returns the string representation func (s ChildWorkflowExecutionCompletedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChildWorkflowExecutionCompletedEventAttributes) GoString() string { return s.String() } // Provides details of the ChildWorkflowExecutionFailed event. type ChildWorkflowExecutionFailedEventAttributes struct { _ struct{} `type:"structure"` // The details of the failure (if provided). Details *string `locationName:"details" type:"string"` // The ID of the StartChildWorkflowExecutionInitiated event corresponding to // the StartChildWorkflowExecution decision to start this child workflow execution. // This information can be useful for diagnosing problems by tracing back the // chain of events leading up to this event. // // InitiatedEventId is a required field InitiatedEventId *int64 `locationName:"initiatedEventId" type:"long" required:"true"` // The reason for the failure (if provided). Reason *string `locationName:"reason" type:"string"` // The ID of the ChildWorkflowExecutionStarted event recorded when this child // workflow execution was started. This information can be useful for diagnosing // problems by tracing back the chain of events leading up to this event. // // StartedEventId is a required field StartedEventId *int64 `locationName:"startedEventId" type:"long" required:"true"` // The child workflow execution that failed. // // WorkflowExecution is a required field WorkflowExecution *WorkflowExecution `locationName:"workflowExecution" type:"structure" required:"true"` // The type of the child workflow execution. // // WorkflowType is a required field WorkflowType *WorkflowType `locationName:"workflowType" type:"structure" required:"true"` } // String returns the string representation func (s ChildWorkflowExecutionFailedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChildWorkflowExecutionFailedEventAttributes) GoString() string { return s.String() } // Provides details of the ChildWorkflowExecutionStarted event. type ChildWorkflowExecutionStartedEventAttributes struct { _ struct{} `type:"structure"` // The ID of the StartChildWorkflowExecutionInitiated event corresponding to // the StartChildWorkflowExecution decision to start this child workflow execution. // This information can be useful for diagnosing problems by tracing back the // chain of events leading up to this event. // // InitiatedEventId is a required field InitiatedEventId *int64 `locationName:"initiatedEventId" type:"long" required:"true"` // The child workflow execution that was started. // // WorkflowExecution is a required field WorkflowExecution *WorkflowExecution `locationName:"workflowExecution" type:"structure" required:"true"` // The type of the child workflow execution. // // WorkflowType is a required field WorkflowType *WorkflowType `locationName:"workflowType" type:"structure" required:"true"` } // String returns the string representation func (s ChildWorkflowExecutionStartedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChildWorkflowExecutionStartedEventAttributes) GoString() string { return s.String() } // Provides details of the ChildWorkflowExecutionTerminated event. type ChildWorkflowExecutionTerminatedEventAttributes struct { _ struct{} `type:"structure"` // The ID of the StartChildWorkflowExecutionInitiated event corresponding to // the StartChildWorkflowExecution decision to start this child workflow execution. // This information can be useful for diagnosing problems by tracing back the // chain of events leading up to this event. // // InitiatedEventId is a required field InitiatedEventId *int64 `locationName:"initiatedEventId" type:"long" required:"true"` // The ID of the ChildWorkflowExecutionStarted event recorded when this child // workflow execution was started. This information can be useful for diagnosing // problems by tracing back the chain of events leading up to this event. // // StartedEventId is a required field StartedEventId *int64 `locationName:"startedEventId" type:"long" required:"true"` // The child workflow execution that was terminated. // // WorkflowExecution is a required field WorkflowExecution *WorkflowExecution `locationName:"workflowExecution" type:"structure" required:"true"` // The type of the child workflow execution. // // WorkflowType is a required field WorkflowType *WorkflowType `locationName:"workflowType" type:"structure" required:"true"` } // String returns the string representation func (s ChildWorkflowExecutionTerminatedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChildWorkflowExecutionTerminatedEventAttributes) GoString() string { return s.String() } // Provides details of the ChildWorkflowExecutionTimedOut event. type ChildWorkflowExecutionTimedOutEventAttributes struct { _ struct{} `type:"structure"` // The ID of the StartChildWorkflowExecutionInitiated event corresponding to // the StartChildWorkflowExecution decision to start this child workflow execution. // This information can be useful for diagnosing problems by tracing back the // chain of events leading up to this event. // // InitiatedEventId is a required field InitiatedEventId *int64 `locationName:"initiatedEventId" type:"long" required:"true"` // The ID of the ChildWorkflowExecutionStarted event recorded when this child // workflow execution was started. This information can be useful for diagnosing // problems by tracing back the chain of events leading up to this event. // // StartedEventId is a required field StartedEventId *int64 `locationName:"startedEventId" type:"long" required:"true"` // The type of the timeout that caused the child workflow execution to time // out. // // TimeoutType is a required field TimeoutType *string `locationName:"timeoutType" type:"string" required:"true" enum:"WorkflowExecutionTimeoutType"` // The child workflow execution that timed out. // // WorkflowExecution is a required field WorkflowExecution *WorkflowExecution `locationName:"workflowExecution" type:"structure" required:"true"` // The type of the child workflow execution. // // WorkflowType is a required field WorkflowType *WorkflowType `locationName:"workflowType" type:"structure" required:"true"` } // String returns the string representation func (s ChildWorkflowExecutionTimedOutEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChildWorkflowExecutionTimedOutEventAttributes) GoString() string { return s.String() } // Used to filter the closed workflow executions in visibility APIs by their // close status. type CloseStatusFilter struct { _ struct{} `type:"structure"` // Required. The close status that must match the close status of an execution // for it to meet the criteria of this filter. // // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"CloseStatus"` } // String returns the string representation func (s CloseStatusFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CloseStatusFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CloseStatusFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CloseStatusFilter"} if s.Status == nil { invalidParams.Add(request.NewErrParamRequired("Status")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides details of the CompleteWorkflowExecution decision. // // Access Control // // You can use IAM policies to control this decision's access to Amazon SWF // resources as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). type CompleteWorkflowExecutionDecisionAttributes struct { _ struct{} `type:"structure"` // The result of the workflow execution. The form of the result is implementation // defined. Result *string `locationName:"result" type:"string"` } // String returns the string representation func (s CompleteWorkflowExecutionDecisionAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CompleteWorkflowExecutionDecisionAttributes) GoString() string { return s.String() } // Provides details of the CompleteWorkflowExecutionFailed event. type CompleteWorkflowExecutionFailedEventAttributes struct { _ struct{} `type:"structure"` // The cause of the failure. This information is generated by the system and // can be useful for diagnostic purposes. // // If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it // lacked sufficient permissions. For details and example IAM policies, see // Using IAM to Manage Access to Amazon SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Cause is a required field Cause *string `locationName:"cause" type:"string" required:"true" enum:"CompleteWorkflowExecutionFailedCause"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the CompleteWorkflowExecution decision to complete this // execution. This information can be useful for diagnosing problems by tracing // back the chain of events leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` } // String returns the string representation func (s CompleteWorkflowExecutionFailedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CompleteWorkflowExecutionFailedEventAttributes) GoString() string { return s.String() } // Provides details of the ContinueAsNewWorkflowExecution decision. // // Access Control // // You can use IAM policies to control this decision's access to Amazon SWF // resources as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the following parameters by using a Condition element with // the appropriate keys. tag: Optional.. A tag used to identify the workflow // execution // taskList: String constraint. The key is swf:taskList.name. // workflowType.version: String constraint. The key is swf:workflowType.version. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). type ContinueAsNewWorkflowExecutionDecisionAttributes struct { _ struct{} `type:"structure"` // If set, specifies the policy to use for the child workflow executions of // the new execution if it is terminated by calling the TerminateWorkflowExecution // action explicitly or due to an expired timeout. This policy overrides the // default child policy specified when registering the workflow type using RegisterWorkflowType. // // The supported child policies are: // // * TERMINATE: the child executions will be terminated. // * REQUEST_CANCEL: a request to cancel will be attempted for each child // execution by recording a WorkflowExecutionCancelRequested event in its // history. It is up to the decider to take appropriate actions when it receives // an execution history with this event. // * ABANDON: no action will be taken. The child executions will continue // to run. // A child policy for this workflow execution must be specified either as a // default for the workflow type or through this parameter. If neither this // parameter is set nor a default child policy was specified at registration // time then a fault will be returned. ChildPolicy *string `locationName:"childPolicy" type:"string" enum:"ChildPolicy"` // If set, specifies the total duration for this workflow execution. This overrides // the defaultExecutionStartToCloseTimeout specified when registering the workflow // type. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. // // An execution start-to-close timeout for this workflow execution must be specified // either as a default for the workflow type or through this field. If neither // this field is set nor a default execution start-to-close timeout was specified // at registration time then a fault will be returned. ExecutionStartToCloseTimeout *string `locationName:"executionStartToCloseTimeout" type:"string"` // The input provided to the new workflow execution. Input *string `locationName:"input" type:"string"` // The ARN of an IAM role that authorizes Amazon SWF to invoke AWS Lambda functions. // // In order for this workflow execution to invoke AWS Lambda functions, an appropriate // IAM role must be specified either as a default for the workflow type or through // this field. LambdaRole *string `locationName:"lambdaRole" min:"1" type:"string"` // The list of tags to associate with the new workflow execution. A maximum // of 5 tags can be specified. You can list workflow executions with a specific // tag by calling ListOpenWorkflowExecutions or ListClosedWorkflowExecutions // and specifying a TagFilter. TagList []*string `locationName:"tagList" type:"list"` // Represents a task list. TaskList *TaskList `locationName:"taskList" type:"structure"` // Optional. The task priority that, if set, specifies the priority for the // decision tasks for this workflow execution. This overrides the defaultTaskPriority // specified when registering the workflow type. Valid values are integers that // range from Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE (2147483647). // Higher numbers indicate higher priority. // // For more information about setting task priority, see Setting Task Priority // (http://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) // in the Amazon Simple Workflow Developer Guide. TaskPriority *string `locationName:"taskPriority" type:"string"` // Specifies the maximum duration of decision tasks for the new workflow execution. // This parameter overrides the defaultTaskStartToCloseTimout specified when // registering the workflow type using RegisterWorkflowType. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. // // A task start-to-close timeout for the new workflow execution must be specified // either as a default for the workflow type or through this parameter. If neither // this parameter is set nor a default task start-to-close timeout was specified // at registration time then a fault will be returned. TaskStartToCloseTimeout *string `locationName:"taskStartToCloseTimeout" type:"string"` WorkflowTypeVersion *string `locationName:"workflowTypeVersion" min:"1" type:"string"` } // String returns the string representation func (s ContinueAsNewWorkflowExecutionDecisionAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ContinueAsNewWorkflowExecutionDecisionAttributes) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ContinueAsNewWorkflowExecutionDecisionAttributes) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ContinueAsNewWorkflowExecutionDecisionAttributes"} if s.LambdaRole != nil && len(*s.LambdaRole) < 1 { invalidParams.Add(request.NewErrParamMinLen("LambdaRole", 1)) } if s.WorkflowTypeVersion != nil && len(*s.WorkflowTypeVersion) < 1 { invalidParams.Add(request.NewErrParamMinLen("WorkflowTypeVersion", 1)) } if s.TaskList != nil { if err := s.TaskList.Validate(); err != nil { invalidParams.AddNested("TaskList", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides details of the ContinueAsNewWorkflowExecutionFailed event. type ContinueAsNewWorkflowExecutionFailedEventAttributes struct { _ struct{} `type:"structure"` // The cause of the failure. This information is generated by the system and // can be useful for diagnostic purposes. // // If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it // lacked sufficient permissions. For details and example IAM policies, see // Using IAM to Manage Access to Amazon SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Cause is a required field Cause *string `locationName:"cause" type:"string" required:"true" enum:"ContinueAsNewWorkflowExecutionFailedCause"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the ContinueAsNewWorkflowExecution decision that started // this execution. This information can be useful for diagnosing problems by // tracing back the chain of events leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` } // String returns the string representation func (s ContinueAsNewWorkflowExecutionFailedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ContinueAsNewWorkflowExecutionFailedEventAttributes) GoString() string { return s.String() } type CountClosedWorkflowExecutionsInput struct { _ struct{} `type:"structure"` // If specified, only workflow executions that match this close status are counted. // This filter has an affect only if executionStatus is specified as CLOSED. // // closeStatusFilter, executionFilter, typeFilter and tagFilter are mutually // exclusive. You can specify at most one of these in a request. CloseStatusFilter *CloseStatusFilter `locationName:"closeStatusFilter" type:"structure"` // If specified, only workflow executions that meet the close time criteria // of the filter are counted. // // startTimeFilter and closeTimeFilter are mutually exclusive. You must specify // one of these in a request but not both. CloseTimeFilter *ExecutionTimeFilter `locationName:"closeTimeFilter" type:"structure"` // The name of the domain containing the workflow executions to count. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // If specified, only workflow executions matching the WorkflowId in the filter // are counted. // // closeStatusFilter, executionFilter, typeFilter and tagFilter are mutually // exclusive. You can specify at most one of these in a request. ExecutionFilter *WorkflowExecutionFilter `locationName:"executionFilter" type:"structure"` // If specified, only workflow executions that meet the start time criteria // of the filter are counted. // // startTimeFilter and closeTimeFilter are mutually exclusive. You must specify // one of these in a request but not both. StartTimeFilter *ExecutionTimeFilter `locationName:"startTimeFilter" type:"structure"` // If specified, only executions that have a tag that matches the filter are // counted. // // closeStatusFilter, executionFilter, typeFilter and tagFilter are mutually // exclusive. You can specify at most one of these in a request. TagFilter *TagFilter `locationName:"tagFilter" type:"structure"` // If specified, indicates the type of the workflow executions to be counted. // // closeStatusFilter, executionFilter, typeFilter and tagFilter are mutually // exclusive. You can specify at most one of these in a request. TypeFilter *WorkflowTypeFilter `locationName:"typeFilter" type:"structure"` } // String returns the string representation func (s CountClosedWorkflowExecutionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CountClosedWorkflowExecutionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CountClosedWorkflowExecutionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CountClosedWorkflowExecutionsInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.CloseStatusFilter != nil { if err := s.CloseStatusFilter.Validate(); err != nil { invalidParams.AddNested("CloseStatusFilter", err.(request.ErrInvalidParams)) } } if s.CloseTimeFilter != nil { if err := s.CloseTimeFilter.Validate(); err != nil { invalidParams.AddNested("CloseTimeFilter", err.(request.ErrInvalidParams)) } } if s.ExecutionFilter != nil { if err := s.ExecutionFilter.Validate(); err != nil { invalidParams.AddNested("ExecutionFilter", err.(request.ErrInvalidParams)) } } if s.StartTimeFilter != nil { if err := s.StartTimeFilter.Validate(); err != nil { invalidParams.AddNested("StartTimeFilter", err.(request.ErrInvalidParams)) } } if s.TagFilter != nil { if err := s.TagFilter.Validate(); err != nil { invalidParams.AddNested("TagFilter", err.(request.ErrInvalidParams)) } } if s.TypeFilter != nil { if err := s.TypeFilter.Validate(); err != nil { invalidParams.AddNested("TypeFilter", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CountOpenWorkflowExecutionsInput struct { _ struct{} `type:"structure"` // The name of the domain containing the workflow executions to count. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // If specified, only workflow executions matching the WorkflowId in the filter // are counted. // // executionFilter, typeFilter and tagFilter are mutually exclusive. You can // specify at most one of these in a request. ExecutionFilter *WorkflowExecutionFilter `locationName:"executionFilter" type:"structure"` // Specifies the start time criteria that workflow executions must meet in order // to be counted. // // StartTimeFilter is a required field StartTimeFilter *ExecutionTimeFilter `locationName:"startTimeFilter" type:"structure" required:"true"` // If specified, only executions that have a tag that matches the filter are // counted. // // executionFilter, typeFilter and tagFilter are mutually exclusive. You can // specify at most one of these in a request. TagFilter *TagFilter `locationName:"tagFilter" type:"structure"` // Specifies the type of the workflow executions to be counted. // // executionFilter, typeFilter and tagFilter are mutually exclusive. You can // specify at most one of these in a request. TypeFilter *WorkflowTypeFilter `locationName:"typeFilter" type:"structure"` } // String returns the string representation func (s CountOpenWorkflowExecutionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CountOpenWorkflowExecutionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CountOpenWorkflowExecutionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CountOpenWorkflowExecutionsInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.StartTimeFilter == nil { invalidParams.Add(request.NewErrParamRequired("StartTimeFilter")) } if s.ExecutionFilter != nil { if err := s.ExecutionFilter.Validate(); err != nil { invalidParams.AddNested("ExecutionFilter", err.(request.ErrInvalidParams)) } } if s.StartTimeFilter != nil { if err := s.StartTimeFilter.Validate(); err != nil { invalidParams.AddNested("StartTimeFilter", err.(request.ErrInvalidParams)) } } if s.TagFilter != nil { if err := s.TagFilter.Validate(); err != nil { invalidParams.AddNested("TagFilter", err.(request.ErrInvalidParams)) } } if s.TypeFilter != nil { if err := s.TypeFilter.Validate(); err != nil { invalidParams.AddNested("TypeFilter", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CountPendingActivityTasksInput struct { _ struct{} `type:"structure"` // The name of the domain that contains the task list. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // The name of the task list. // // TaskList is a required field TaskList *TaskList `locationName:"taskList" type:"structure" required:"true"` } // String returns the string representation func (s CountPendingActivityTasksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CountPendingActivityTasksInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CountPendingActivityTasksInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CountPendingActivityTasksInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.TaskList == nil { invalidParams.Add(request.NewErrParamRequired("TaskList")) } if s.TaskList != nil { if err := s.TaskList.Validate(); err != nil { invalidParams.AddNested("TaskList", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CountPendingDecisionTasksInput struct { _ struct{} `type:"structure"` // The name of the domain that contains the task list. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // The name of the task list. // // TaskList is a required field TaskList *TaskList `locationName:"taskList" type:"structure" required:"true"` } // String returns the string representation func (s CountPendingDecisionTasksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CountPendingDecisionTasksInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CountPendingDecisionTasksInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CountPendingDecisionTasksInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.TaskList == nil { invalidParams.Add(request.NewErrParamRequired("TaskList")) } if s.TaskList != nil { if err := s.TaskList.Validate(); err != nil { invalidParams.AddNested("TaskList", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies a decision made by the decider. A decision can be one of these // types: // // * CancelTimer: cancels a previously started timer and records a TimerCanceled // event in the history. // * CancelWorkflowExecution: closes the workflow execution and records a // WorkflowExecutionCanceled event in the history. // * CompleteWorkflowExecution: closes the workflow execution and records // a WorkflowExecutionCompleted event in the history . // * ContinueAsNewWorkflowExecution: closes the workflow execution and starts // a new workflow execution of the same type using the same workflow ID and // a unique run ID. A WorkflowExecutionContinuedAsNew event is recorded in // the history. // * FailWorkflowExecution: closes the workflow execution and records a WorkflowExecutionFailed // event in the history. // * RecordMarker: records a MarkerRecorded event in the history. Markers // can be used for adding custom information in the history for instance // to let deciders know that they do not need to look at the history beyond // the marker event. // * RequestCancelActivityTask: attempts to cancel a previously scheduled // activity task. If the activity task was scheduled but has not been assigned // to a worker, then it will be canceled. If the activity task was already // assigned to a worker, then the worker will be informed that cancellation // has been requested in the response to RecordActivityTaskHeartbeat. // * RequestCancelExternalWorkflowExecution: requests that a request be made // to cancel the specified external workflow execution and records a RequestCancelExternalWorkflowExecutionInitiated // event in the history. // * ScheduleActivityTask: schedules an activity task. // * ScheduleLambdaFunction: schedules a AWS Lambda function. // * SignalExternalWorkflowExecution: requests a signal to be delivered to // the specified external workflow execution and records a SignalExternalWorkflowExecutionInitiated // event in the history. // * StartChildWorkflowExecution: requests that a child workflow execution // be started and records a StartChildWorkflowExecutionInitiated event in // the history. The child workflow execution is a separate workflow execution // with its own history. // * StartTimer: starts a timer for this workflow execution and records a // TimerStarted event in the history. This timer will fire after the specified // delay and record a TimerFired event. // Access Control // // If you grant permission to use RespondDecisionTaskCompleted, you can use // IAM policies to express permissions for the list of decisions returned by // this action as if they were members of the API. Treating decisions as a pseudo // API maintains a uniform conceptual model and helps keep policies readable. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Decision Failure // // Decisions can fail for several reasons // // * The ordering of decisions should follow a logical flow. Some decisions // might not make sense in the current context of the workflow execution // and will therefore fail. // * A limit on your account was reached. // * The decision lacks sufficient permissions. // One of the following events might be added to the history to indicate an // error. The event attribute's cause parameter indicates the cause. If cause // is set to OPERATION_NOT_PERMITTED, the decision failed because it lacked // sufficient permissions. For details and example IAM policies, see Using IAM // to Manage Access to Amazon SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // * ScheduleActivityTaskFailed: a ScheduleActivityTask decision failed. // This could happen if the activity type specified in the decision is not // registered, is in a deprecated state, or the decision is not properly // configured. // * ScheduleLambdaFunctionFailed: a ScheduleLambdaFunctionFailed decision // failed. This could happen if the AWS Lambda function specified in the // decision does not exist, or the AWS Lambda service's limits are exceeded. // // * RequestCancelActivityTaskFailed: a RequestCancelActivityTask decision // failed. This could happen if there is no open activity task with the specified // activityId. // * StartTimerFailed: a StartTimer decision failed. This could happen if // there is another open timer with the same timerId. // * CancelTimerFailed: a CancelTimer decision failed. This could happen // if there is no open timer with the specified timerId. // * StartChildWorkflowExecutionFailed: a StartChildWorkflowExecution decision // failed. This could happen if the workflow type specified is not registered, // is deprecated, or the decision is not properly configured. // * SignalExternalWorkflowExecutionFailed: a SignalExternalWorkflowExecution // decision failed. This could happen if the workflowID specified in the // decision was incorrect. // * RequestCancelExternalWorkflowExecutionFailed: a RequestCancelExternalWorkflowExecution // decision failed. This could happen if the workflowID specified in the // decision was incorrect. // * CancelWorkflowExecutionFailed: a CancelWorkflowExecution decision failed. // This could happen if there is an unhandled decision task pending in the // workflow execution. // * CompleteWorkflowExecutionFailed: a CompleteWorkflowExecution decision // failed. This could happen if there is an unhandled decision task pending // in the workflow execution. // * ContinueAsNewWorkflowExecutionFailed: a ContinueAsNewWorkflowExecution // decision failed. This could happen if there is an unhandled decision task // pending in the workflow execution or the ContinueAsNewWorkflowExecution // decision was not configured correctly. // * FailWorkflowExecutionFailed: a FailWorkflowExecution decision failed. // This could happen if there is an unhandled decision task pending in the // workflow execution. // The preceding error events might occur due to an error in the decider logic, // which might put the workflow execution in an unstable state The cause field // in the event structure for the error event indicates the cause of the error. // // A workflow execution may be closed by the decider by returning one of the // following decisions when completing a decision task: CompleteWorkflowExecution, // FailWorkflowExecution, CancelWorkflowExecution and ContinueAsNewWorkflowExecution. // An UnhandledDecision fault will be returned if a workflow closing decision // is specified and a signal or activity event had been added to the history // while the decision task was being performed by the decider. Unlike the above // situations which are logic issues, this fault is always possible because // of race conditions in a distributed system. The right action here is to call // RespondDecisionTaskCompleted without any decisions. This would result in // another decision task with these new events included in the history. The // decider should handle the new events and may decide to close the workflow // execution.How to code a decision // // You code a decision by first setting the decision type field to one of the // above decision values, and then set the corresponding attributes field shown // below: // // * ScheduleActivityTaskDecisionAttributes // * ScheduleLambdaFunctionDecisionAttributes // * RequestCancelActivityTaskDecisionAttributes // * CompleteWorkflowExecutionDecisionAttributes // * FailWorkflowExecutionDecisionAttributes // * CancelWorkflowExecutionDecisionAttributes // * ContinueAsNewWorkflowExecutionDecisionAttributes // * RecordMarkerDecisionAttributes // * StartTimerDecisionAttributes // * CancelTimerDecisionAttributes // * SignalExternalWorkflowExecutionDecisionAttributes // * RequestCancelExternalWorkflowExecutionDecisionAttributes // * StartChildWorkflowExecutionDecisionAttributes type Decision struct { _ struct{} `type:"structure"` // Provides details of the CancelTimer decision. It is not set for other decision // types. CancelTimerDecisionAttributes *CancelTimerDecisionAttributes `locationName:"cancelTimerDecisionAttributes" type:"structure"` // Provides details of the CancelWorkflowExecution decision. It is not set for // other decision types. CancelWorkflowExecutionDecisionAttributes *CancelWorkflowExecutionDecisionAttributes `locationName:"cancelWorkflowExecutionDecisionAttributes" type:"structure"` // Provides details of the CompleteWorkflowExecution decision. It is not set // for other decision types. CompleteWorkflowExecutionDecisionAttributes *CompleteWorkflowExecutionDecisionAttributes `locationName:"completeWorkflowExecutionDecisionAttributes" type:"structure"` // Provides details of the ContinueAsNewWorkflowExecution decision. It is not // set for other decision types. ContinueAsNewWorkflowExecutionDecisionAttributes *ContinueAsNewWorkflowExecutionDecisionAttributes `locationName:"continueAsNewWorkflowExecutionDecisionAttributes" type:"structure"` // Specifies the type of the decision. // // DecisionType is a required field DecisionType *string `locationName:"decisionType" type:"string" required:"true" enum:"DecisionType"` // Provides details of the FailWorkflowExecution decision. It is not set for // other decision types. FailWorkflowExecutionDecisionAttributes *FailWorkflowExecutionDecisionAttributes `locationName:"failWorkflowExecutionDecisionAttributes" type:"structure"` // Provides details of the RecordMarker decision. It is not set for other decision // types. RecordMarkerDecisionAttributes *RecordMarkerDecisionAttributes `locationName:"recordMarkerDecisionAttributes" type:"structure"` // Provides details of the RequestCancelActivityTask decision. It is not set // for other decision types. RequestCancelActivityTaskDecisionAttributes *RequestCancelActivityTaskDecisionAttributes `locationName:"requestCancelActivityTaskDecisionAttributes" type:"structure"` // Provides details of the RequestCancelExternalWorkflowExecution decision. // It is not set for other decision types. RequestCancelExternalWorkflowExecutionDecisionAttributes *RequestCancelExternalWorkflowExecutionDecisionAttributes `locationName:"requestCancelExternalWorkflowExecutionDecisionAttributes" type:"structure"` // Provides details of the ScheduleActivityTask decision. It is not set for // other decision types. ScheduleActivityTaskDecisionAttributes *ScheduleActivityTaskDecisionAttributes `locationName:"scheduleActivityTaskDecisionAttributes" type:"structure"` // Provides details of the ScheduleLambdaFunction decision. // // Access Control // // You can use IAM policies to control this decision's access to Amazon SWF // resources as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the following parameters by using a Condition element with // the appropriate keys. activityType.name: String constraint. The key is // swf:activityType.name. // activityType.version: String constraint. The key is swf:activityType.version. // // taskList: String constraint. The key is swf:taskList.name. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). ScheduleLambdaFunctionDecisionAttributes *ScheduleLambdaFunctionDecisionAttributes `locationName:"scheduleLambdaFunctionDecisionAttributes" type:"structure"` // Provides details of the SignalExternalWorkflowExecution decision. It is not // set for other decision types. SignalExternalWorkflowExecutionDecisionAttributes *SignalExternalWorkflowExecutionDecisionAttributes `locationName:"signalExternalWorkflowExecutionDecisionAttributes" type:"structure"` // Provides details of the StartChildWorkflowExecution decision. It is not set // for other decision types. StartChildWorkflowExecutionDecisionAttributes *StartChildWorkflowExecutionDecisionAttributes `locationName:"startChildWorkflowExecutionDecisionAttributes" type:"structure"` // Provides details of the StartTimer decision. It is not set for other decision // types. StartTimerDecisionAttributes *StartTimerDecisionAttributes `locationName:"startTimerDecisionAttributes" type:"structure"` } // String returns the string representation func (s Decision) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Decision) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Decision) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Decision"} if s.DecisionType == nil { invalidParams.Add(request.NewErrParamRequired("DecisionType")) } if s.CancelTimerDecisionAttributes != nil { if err := s.CancelTimerDecisionAttributes.Validate(); err != nil { invalidParams.AddNested("CancelTimerDecisionAttributes", err.(request.ErrInvalidParams)) } } if s.ContinueAsNewWorkflowExecutionDecisionAttributes != nil { if err := s.ContinueAsNewWorkflowExecutionDecisionAttributes.Validate(); err != nil { invalidParams.AddNested("ContinueAsNewWorkflowExecutionDecisionAttributes", err.(request.ErrInvalidParams)) } } if s.RecordMarkerDecisionAttributes != nil { if err := s.RecordMarkerDecisionAttributes.Validate(); err != nil { invalidParams.AddNested("RecordMarkerDecisionAttributes", err.(request.ErrInvalidParams)) } } if s.RequestCancelActivityTaskDecisionAttributes != nil { if err := s.RequestCancelActivityTaskDecisionAttributes.Validate(); err != nil { invalidParams.AddNested("RequestCancelActivityTaskDecisionAttributes", err.(request.ErrInvalidParams)) } } if s.RequestCancelExternalWorkflowExecutionDecisionAttributes != nil { if err := s.RequestCancelExternalWorkflowExecutionDecisionAttributes.Validate(); err != nil { invalidParams.AddNested("RequestCancelExternalWorkflowExecutionDecisionAttributes", err.(request.ErrInvalidParams)) } } if s.ScheduleActivityTaskDecisionAttributes != nil { if err := s.ScheduleActivityTaskDecisionAttributes.Validate(); err != nil { invalidParams.AddNested("ScheduleActivityTaskDecisionAttributes", err.(request.ErrInvalidParams)) } } if s.ScheduleLambdaFunctionDecisionAttributes != nil { if err := s.ScheduleLambdaFunctionDecisionAttributes.Validate(); err != nil { invalidParams.AddNested("ScheduleLambdaFunctionDecisionAttributes", err.(request.ErrInvalidParams)) } } if s.SignalExternalWorkflowExecutionDecisionAttributes != nil { if err := s.SignalExternalWorkflowExecutionDecisionAttributes.Validate(); err != nil { invalidParams.AddNested("SignalExternalWorkflowExecutionDecisionAttributes", err.(request.ErrInvalidParams)) } } if s.StartChildWorkflowExecutionDecisionAttributes != nil { if err := s.StartChildWorkflowExecutionDecisionAttributes.Validate(); err != nil { invalidParams.AddNested("StartChildWorkflowExecutionDecisionAttributes", err.(request.ErrInvalidParams)) } } if s.StartTimerDecisionAttributes != nil { if err := s.StartTimerDecisionAttributes.Validate(); err != nil { invalidParams.AddNested("StartTimerDecisionAttributes", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides details of the DecisionTaskCompleted event. type DecisionTaskCompletedEventAttributes struct { _ struct{} `type:"structure"` // User defined context for the workflow execution. ExecutionContext *string `locationName:"executionContext" type:"string"` // The ID of the DecisionTaskScheduled event that was recorded when this decision // task was scheduled. This information can be useful for diagnosing problems // by tracing back the chain of events leading up to this event. // // ScheduledEventId is a required field ScheduledEventId *int64 `locationName:"scheduledEventId" type:"long" required:"true"` // The ID of the DecisionTaskStarted event recorded when this decision task // was started. This information can be useful for diagnosing problems by tracing // back the chain of events leading up to this event. // // StartedEventId is a required field StartedEventId *int64 `locationName:"startedEventId" type:"long" required:"true"` } // String returns the string representation func (s DecisionTaskCompletedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DecisionTaskCompletedEventAttributes) GoString() string { return s.String() } // Provides details about the DecisionTaskScheduled event. type DecisionTaskScheduledEventAttributes struct { _ struct{} `type:"structure"` // The maximum duration for this decision task. The task is considered timed // out if it does not completed within this duration. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. StartToCloseTimeout *string `locationName:"startToCloseTimeout" type:"string"` // The name of the task list in which the decision task was scheduled. // // TaskList is a required field TaskList *TaskList `locationName:"taskList" type:"structure" required:"true"` // Optional. A task priority that, if set, specifies the priority for this decision // task. Valid values are integers that range from Java's Integer.MIN_VALUE // (-2147483648) to Integer.MAX_VALUE (2147483647). Higher numbers indicate // higher priority. // // For more information about setting task priority, see Setting Task Priority // (http://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) // in the Amazon Simple Workflow Developer Guide. TaskPriority *string `locationName:"taskPriority" type:"string"` } // String returns the string representation func (s DecisionTaskScheduledEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DecisionTaskScheduledEventAttributes) GoString() string { return s.String() } // Provides details of the DecisionTaskStarted event. type DecisionTaskStartedEventAttributes struct { _ struct{} `type:"structure"` // Identity of the decider making the request. This enables diagnostic tracing // when problems arise. The form of this identity is user defined. Identity *string `locationName:"identity" type:"string"` // The ID of the DecisionTaskScheduled event that was recorded when this decision // task was scheduled. This information can be useful for diagnosing problems // by tracing back the chain of events leading up to this event. // // ScheduledEventId is a required field ScheduledEventId *int64 `locationName:"scheduledEventId" type:"long" required:"true"` } // String returns the string representation func (s DecisionTaskStartedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DecisionTaskStartedEventAttributes) GoString() string { return s.String() } // Provides details of the DecisionTaskTimedOut event. type DecisionTaskTimedOutEventAttributes struct { _ struct{} `type:"structure"` // The ID of the DecisionTaskScheduled event that was recorded when this decision // task was scheduled. This information can be useful for diagnosing problems // by tracing back the chain of events leading up to this event. // // ScheduledEventId is a required field ScheduledEventId *int64 `locationName:"scheduledEventId" type:"long" required:"true"` // The ID of the DecisionTaskStarted event recorded when this decision task // was started. This information can be useful for diagnosing problems by tracing // back the chain of events leading up to this event. // // StartedEventId is a required field StartedEventId *int64 `locationName:"startedEventId" type:"long" required:"true"` // The type of timeout that expired before the decision task could be completed. // // TimeoutType is a required field TimeoutType *string `locationName:"timeoutType" type:"string" required:"true" enum:"DecisionTaskTimeoutType"` } // String returns the string representation func (s DecisionTaskTimedOutEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DecisionTaskTimedOutEventAttributes) GoString() string { return s.String() } type DeprecateActivityTypeInput struct { _ struct{} `type:"structure"` // The activity type to deprecate. // // ActivityType is a required field ActivityType *ActivityType `locationName:"activityType" type:"structure" required:"true"` // The name of the domain in which the activity type is registered. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeprecateActivityTypeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeprecateActivityTypeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeprecateActivityTypeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeprecateActivityTypeInput"} if s.ActivityType == nil { invalidParams.Add(request.NewErrParamRequired("ActivityType")) } if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.ActivityType != nil { if err := s.ActivityType.Validate(); err != nil { invalidParams.AddNested("ActivityType", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeprecateActivityTypeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeprecateActivityTypeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeprecateActivityTypeOutput) GoString() string { return s.String() } type DeprecateDomainInput struct { _ struct{} `type:"structure"` // The name of the domain to deprecate. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeprecateDomainInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeprecateDomainInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeprecateDomainInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeprecateDomainInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeprecateDomainOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeprecateDomainOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeprecateDomainOutput) GoString() string { return s.String() } type DeprecateWorkflowTypeInput struct { _ struct{} `type:"structure"` // The name of the domain in which the workflow type is registered. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // The workflow type to deprecate. // // WorkflowType is a required field WorkflowType *WorkflowType `locationName:"workflowType" type:"structure" required:"true"` } // String returns the string representation func (s DeprecateWorkflowTypeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeprecateWorkflowTypeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeprecateWorkflowTypeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeprecateWorkflowTypeInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.WorkflowType == nil { invalidParams.Add(request.NewErrParamRequired("WorkflowType")) } if s.WorkflowType != nil { if err := s.WorkflowType.Validate(); err != nil { invalidParams.AddNested("WorkflowType", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeprecateWorkflowTypeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeprecateWorkflowTypeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeprecateWorkflowTypeOutput) GoString() string { return s.String() } type DescribeActivityTypeInput struct { _ struct{} `type:"structure"` // The activity type to get information about. Activity types are identified // by the name and version that were supplied when the activity was registered. // // ActivityType is a required field ActivityType *ActivityType `locationName:"activityType" type:"structure" required:"true"` // The name of the domain in which the activity type is registered. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeActivityTypeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeActivityTypeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeActivityTypeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeActivityTypeInput"} if s.ActivityType == nil { invalidParams.Add(request.NewErrParamRequired("ActivityType")) } if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.ActivityType != nil { if err := s.ActivityType.Validate(); err != nil { invalidParams.AddNested("ActivityType", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Detailed information about an activity type. type DescribeActivityTypeOutput struct { _ struct{} `type:"structure"` // The configuration settings registered with the activity type. // // Configuration is a required field Configuration *ActivityTypeConfiguration `locationName:"configuration" type:"structure" required:"true"` // General information about the activity type. // // The status of activity type (returned in the ActivityTypeInfo structure) // can be one of the following. // // * REGISTERED: The type is registered and available. Workers supporting // this type should be running. // * DEPRECATED: The type was deprecated using DeprecateActivityType, but // is still in use. You should keep workers supporting this type running. // You cannot create new tasks of this type. // // TypeInfo is a required field TypeInfo *ActivityTypeInfo `locationName:"typeInfo" type:"structure" required:"true"` } // String returns the string representation func (s DescribeActivityTypeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeActivityTypeOutput) GoString() string { return s.String() } type DescribeDomainInput struct { _ struct{} `type:"structure"` // The name of the domain to describe. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeDomainInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDomainInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeDomainInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeDomainInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains details of a domain. type DescribeDomainOutput struct { _ struct{} `type:"structure"` // Contains the configuration settings of a domain. // // Configuration is a required field Configuration *DomainConfiguration `locationName:"configuration" type:"structure" required:"true"` // Contains general information about a domain. // // DomainInfo is a required field DomainInfo *DomainInfo `locationName:"domainInfo" type:"structure" required:"true"` } // String returns the string representation func (s DescribeDomainOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeDomainOutput) GoString() string { return s.String() } type DescribeWorkflowExecutionInput struct { _ struct{} `type:"structure"` // The name of the domain containing the workflow execution. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // The workflow execution to describe. // // Execution is a required field Execution *WorkflowExecution `locationName:"execution" type:"structure" required:"true"` } // String returns the string representation func (s DescribeWorkflowExecutionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkflowExecutionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeWorkflowExecutionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeWorkflowExecutionInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.Execution == nil { invalidParams.Add(request.NewErrParamRequired("Execution")) } if s.Execution != nil { if err := s.Execution.Validate(); err != nil { invalidParams.AddNested("Execution", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains details about a workflow execution. type DescribeWorkflowExecutionOutput struct { _ struct{} `type:"structure"` // The configuration settings for this workflow execution including timeout // values, tasklist etc. // // ExecutionConfiguration is a required field ExecutionConfiguration *WorkflowExecutionConfiguration `locationName:"executionConfiguration" type:"structure" required:"true"` // Information about the workflow execution. // // ExecutionInfo is a required field ExecutionInfo *WorkflowExecutionInfo `locationName:"executionInfo" type:"structure" required:"true"` // The time when the last activity task was scheduled for this workflow execution. // You can use this information to determine if the workflow has not made progress // for an unusually long period of time and might require a corrective action. LatestActivityTaskTimestamp *time.Time `locationName:"latestActivityTaskTimestamp" type:"timestamp" timestampFormat:"unix"` // The latest executionContext provided by the decider for this workflow execution. // A decider can provide an executionContext (a free-form string) when closing // a decision task using RespondDecisionTaskCompleted. LatestExecutionContext *string `locationName:"latestExecutionContext" type:"string"` // The number of tasks for this workflow execution. This includes open and closed // tasks of all types. // // OpenCounts is a required field OpenCounts *WorkflowExecutionOpenCounts `locationName:"openCounts" type:"structure" required:"true"` } // String returns the string representation func (s DescribeWorkflowExecutionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkflowExecutionOutput) GoString() string { return s.String() } type DescribeWorkflowTypeInput struct { _ struct{} `type:"structure"` // The name of the domain in which this workflow type is registered. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // The workflow type to describe. // // WorkflowType is a required field WorkflowType *WorkflowType `locationName:"workflowType" type:"structure" required:"true"` } // String returns the string representation func (s DescribeWorkflowTypeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkflowTypeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeWorkflowTypeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeWorkflowTypeInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.WorkflowType == nil { invalidParams.Add(request.NewErrParamRequired("WorkflowType")) } if s.WorkflowType != nil { if err := s.WorkflowType.Validate(); err != nil { invalidParams.AddNested("WorkflowType", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains details about a workflow type. type DescribeWorkflowTypeOutput struct { _ struct{} `type:"structure"` // Configuration settings of the workflow type registered through RegisterWorkflowType // // Configuration is a required field Configuration *WorkflowTypeConfiguration `locationName:"configuration" type:"structure" required:"true"` // General information about the workflow type. // // The status of the workflow type (returned in the WorkflowTypeInfo structure) // can be one of the following. // // * REGISTERED: The type is registered and available. Workers supporting // this type should be running. // * DEPRECATED: The type was deprecated using DeprecateWorkflowType, but // is still in use. You should keep workers supporting this type running. // You cannot create new workflow executions of this type. // // TypeInfo is a required field TypeInfo *WorkflowTypeInfo `locationName:"typeInfo" type:"structure" required:"true"` } // String returns the string representation func (s DescribeWorkflowTypeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkflowTypeOutput) GoString() string { return s.String() } // Contains the configuration settings of a domain. type DomainConfiguration struct { _ struct{} `type:"structure"` // The retention period for workflow executions in this domain. // // WorkflowExecutionRetentionPeriodInDays is a required field WorkflowExecutionRetentionPeriodInDays *string `locationName:"workflowExecutionRetentionPeriodInDays" min:"1" type:"string" required:"true"` } // String returns the string representation func (s DomainConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DomainConfiguration) GoString() string { return s.String() } // Contains general information about a domain. type DomainInfo struct { _ struct{} `type:"structure"` // The description of the domain provided through RegisterDomain. Description *string `locationName:"description" type:"string"` // The name of the domain. This name is unique within the account. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // The status of the domain: // // * REGISTERED: The domain is properly registered and available. You can // use this domain for registering types and creating new workflow executions. // // * DEPRECATED: The domain was deprecated using DeprecateDomain, but is // still in use. You should not create new workflow executions in this domain. // // // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"RegistrationStatus"` } // String returns the string representation func (s DomainInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DomainInfo) GoString() string { return s.String() } // Used to filter the workflow executions in visibility APIs by various time-based // rules. Each parameter, if specified, defines a rule that must be satisfied // by each returned query result. The parameter values are in the Unix Time // format (https://en.wikipedia.org/wiki/Unix_time). For example: "oldestDate": // 1325376070. type ExecutionTimeFilter struct { _ struct{} `type:"structure"` // Specifies the latest start or close date and time to return. LatestDate *time.Time `locationName:"latestDate" type:"timestamp" timestampFormat:"unix"` // Specifies the oldest start or close date and time to return. // // OldestDate is a required field OldestDate *time.Time `locationName:"oldestDate" type:"timestamp" timestampFormat:"unix" required:"true"` } // String returns the string representation func (s ExecutionTimeFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExecutionTimeFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ExecutionTimeFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ExecutionTimeFilter"} if s.OldestDate == nil { invalidParams.Add(request.NewErrParamRequired("OldestDate")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides details of the ExternalWorkflowExecutionCancelRequested event. type ExternalWorkflowExecutionCancelRequestedEventAttributes struct { _ struct{} `type:"structure"` // The ID of the RequestCancelExternalWorkflowExecutionInitiated event corresponding // to the RequestCancelExternalWorkflowExecution decision to cancel this external // workflow execution. This information can be useful for diagnosing problems // by tracing back the chain of events leading up to this event. // // InitiatedEventId is a required field InitiatedEventId *int64 `locationName:"initiatedEventId" type:"long" required:"true"` // The external workflow execution to which the cancellation request was delivered. // // WorkflowExecution is a required field WorkflowExecution *WorkflowExecution `locationName:"workflowExecution" type:"structure" required:"true"` } // String returns the string representation func (s ExternalWorkflowExecutionCancelRequestedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExternalWorkflowExecutionCancelRequestedEventAttributes) GoString() string { return s.String() } // Provides details of the ExternalWorkflowExecutionSignaled event. type ExternalWorkflowExecutionSignaledEventAttributes struct { _ struct{} `type:"structure"` // The ID of the SignalExternalWorkflowExecutionInitiated event corresponding // to the SignalExternalWorkflowExecution decision to request this signal. This // information can be useful for diagnosing problems by tracing back the chain // of events leading up to this event. // // InitiatedEventId is a required field InitiatedEventId *int64 `locationName:"initiatedEventId" type:"long" required:"true"` // The external workflow execution that the signal was delivered to. // // WorkflowExecution is a required field WorkflowExecution *WorkflowExecution `locationName:"workflowExecution" type:"structure" required:"true"` } // String returns the string representation func (s ExternalWorkflowExecutionSignaledEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ExternalWorkflowExecutionSignaledEventAttributes) GoString() string { return s.String() } // Provides details of the FailWorkflowExecution decision. // // Access Control // // You can use IAM policies to control this decision's access to Amazon SWF // resources as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). type FailWorkflowExecutionDecisionAttributes struct { _ struct{} `type:"structure"` // Optional. Details of the failure. Details *string `locationName:"details" type:"string"` // A descriptive reason for the failure that may help in diagnostics. Reason *string `locationName:"reason" type:"string"` } // String returns the string representation func (s FailWorkflowExecutionDecisionAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FailWorkflowExecutionDecisionAttributes) GoString() string { return s.String() } // Provides details of the FailWorkflowExecutionFailed event. type FailWorkflowExecutionFailedEventAttributes struct { _ struct{} `type:"structure"` // The cause of the failure. This information is generated by the system and // can be useful for diagnostic purposes. // // If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it // lacked sufficient permissions. For details and example IAM policies, see // Using IAM to Manage Access to Amazon SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Cause is a required field Cause *string `locationName:"cause" type:"string" required:"true" enum:"FailWorkflowExecutionFailedCause"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the FailWorkflowExecution decision to fail this execution. // This information can be useful for diagnosing problems by tracing back the // chain of events leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` } // String returns the string representation func (s FailWorkflowExecutionFailedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FailWorkflowExecutionFailedEventAttributes) GoString() string { return s.String() } type GetWorkflowExecutionHistoryInput struct { _ struct{} `type:"structure"` // The name of the domain containing the workflow execution. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // Specifies the workflow execution for which to return the history. // // Execution is a required field Execution *WorkflowExecution `locationName:"execution" type:"structure" required:"true"` // The maximum number of results that will be returned per call. nextPageToken // can be used to obtain futher pages of results. The default is 1000, which // is the maximum allowed page size. You can, however, specify a page size smaller // than the maximum. // // This is an upper limit only; the actual number of results returned per call // may be fewer than the specified maximum. MaximumPageSize *int64 `locationName:"maximumPageSize" type:"integer"` // If a NextPageToken was returned by a previous call, there are more results // available. To retrieve the next page of results, make the call again using // the returned token in nextPageToken. Keep all other arguments unchanged. // // The configured maximumPageSize determines how many results can be returned // in a single call. NextPageToken *string `locationName:"nextPageToken" type:"string"` // When set to true, returns the events in reverse order. By default the results // are returned in ascending order of the eventTimeStamp of the events. ReverseOrder *bool `locationName:"reverseOrder" type:"boolean"` } // String returns the string representation func (s GetWorkflowExecutionHistoryInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetWorkflowExecutionHistoryInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetWorkflowExecutionHistoryInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetWorkflowExecutionHistoryInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.Execution == nil { invalidParams.Add(request.NewErrParamRequired("Execution")) } if s.Execution != nil { if err := s.Execution.Validate(); err != nil { invalidParams.AddNested("Execution", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Paginated representation of a workflow history for a workflow execution. // This is the up to date, complete and authoritative record of the events related // to all tasks and events in the life of the workflow execution. type GetWorkflowExecutionHistoryOutput struct { _ struct{} `type:"structure"` // The list of history events. // // Events is a required field Events []*HistoryEvent `locationName:"events" type:"list" required:"true"` // If a NextPageToken was returned by a previous call, there are more results // available. To retrieve the next page of results, make the call again using // the returned token in nextPageToken. Keep all other arguments unchanged. // // The configured maximumPageSize determines how many results can be returned // in a single call. NextPageToken *string `locationName:"nextPageToken" type:"string"` } // String returns the string representation func (s GetWorkflowExecutionHistoryOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetWorkflowExecutionHistoryOutput) GoString() string { return s.String() } // Event within a workflow execution. A history event can be one of these types: // // * WorkflowExecutionStarted: The workflow execution was started. // * WorkflowExecutionCompleted: The workflow execution was closed due to // successful completion. // * WorkflowExecutionFailed: The workflow execution closed due to a failure. // // * WorkflowExecutionTimedOut: The workflow execution was closed because // a time out was exceeded. // * WorkflowExecutionCanceled: The workflow execution was successfully canceled // and closed. // * WorkflowExecutionTerminated: The workflow execution was terminated. // // * WorkflowExecutionContinuedAsNew: The workflow execution was closed and // a new execution of the same type was created with the same workflowId. // // * WorkflowExecutionCancelRequested: A request to cancel this workflow // execution was made. // * DecisionTaskScheduled: A decision task was scheduled for the workflow // execution. // * DecisionTaskStarted: The decision task was dispatched to a decider. // // * DecisionTaskCompleted: The decider successfully completed a decision // task by calling RespondDecisionTaskCompleted. // * DecisionTaskTimedOut: The decision task timed out. // * ActivityTaskScheduled: An activity task was scheduled for execution. // // * ScheduleActivityTaskFailed: Failed to process ScheduleActivityTask decision. // This happens when the decision is not configured properly, for example // the activity type specified is not registered. // * ActivityTaskStarted: The scheduled activity task was dispatched to a // worker. // * ActivityTaskCompleted: An activity worker successfully completed an // activity task by calling RespondActivityTaskCompleted. // * ActivityTaskFailed: An activity worker failed an activity task by calling // RespondActivityTaskFailed. // * ActivityTaskTimedOut: The activity task timed out. // * ActivityTaskCanceled: The activity task was successfully canceled. // * ActivityTaskCancelRequested: A RequestCancelActivityTask decision was // received by the system. // * RequestCancelActivityTaskFailed: Failed to process RequestCancelActivityTask // decision. This happens when the decision is not configured properly. // * WorkflowExecutionSignaled: An external signal was received for the workflow // execution. // * MarkerRecorded: A marker was recorded in the workflow history as the // result of a RecordMarker decision. // * TimerStarted: A timer was started for the workflow execution due to // a StartTimer decision. // * StartTimerFailed: Failed to process StartTimer decision. This happens // when the decision is not configured properly, for example a timer already // exists with the specified timer ID. // * TimerFired: A timer, previously started for this workflow execution, // fired. // * TimerCanceled: A timer, previously started for this workflow execution, // was successfully canceled. // * CancelTimerFailed: Failed to process CancelTimer decision. This happens // when the decision is not configured properly, for example no timer exists // with the specified timer ID. // * StartChildWorkflowExecutionInitiated: A request was made to start a // child workflow execution. // * StartChildWorkflowExecutionFailed: Failed to process StartChildWorkflowExecution // decision. This happens when the decision is not configured properly, for // example the workflow type specified is not registered. // * ChildWorkflowExecutionStarted: A child workflow execution was successfully // started. // * ChildWorkflowExecutionCompleted: A child workflow execution, started // by this workflow execution, completed successfully and was closed. // * ChildWorkflowExecutionFailed: A child workflow execution, started by // this workflow execution, failed to complete successfully and was closed. // // * ChildWorkflowExecutionTimedOut: A child workflow execution, started // by this workflow execution, timed out and was closed. // * ChildWorkflowExecutionCanceled: A child workflow execution, started // by this workflow execution, was canceled and closed. // * ChildWorkflowExecutionTerminated: A child workflow execution, started // by this workflow execution, was terminated. // * SignalExternalWorkflowExecutionInitiated: A request to signal an external // workflow was made. // * ExternalWorkflowExecutionSignaled: A signal, requested by this workflow // execution, was successfully delivered to the target external workflow // execution. // * SignalExternalWorkflowExecutionFailed: The request to signal an external // workflow execution failed. // * RequestCancelExternalWorkflowExecutionInitiated: A request was made // to request the cancellation of an external workflow execution. // * ExternalWorkflowExecutionCancelRequested: Request to cancel an external // workflow execution was successfully delivered to the target execution. // // * RequestCancelExternalWorkflowExecutionFailed: Request to cancel an external // workflow execution failed. // * LambdaFunctionScheduled: An AWS Lambda function was scheduled for execution. // // * LambdaFunctionStarted: The scheduled function was invoked in the AWS // Lambda service. // * LambdaFunctionCompleted: The AWS Lambda function successfully completed. // // * LambdaFunctionFailed: The AWS Lambda function execution failed. // * LambdaFunctionTimedOut: The AWS Lambda function execution timed out. // // * ScheduleLambdaFunctionFailed: Failed to process ScheduleLambdaFunction // decision. This happens when the workflow execution does not have the proper // IAM role attached to invoke AWS Lambda functions. // * StartLambdaFunctionFailed: Failed to invoke the scheduled function in // the AWS Lambda service. This happens when the AWS Lambda service is not // available in the current region, or received too many requests. type HistoryEvent struct { _ struct{} `type:"structure"` // If the event is of type ActivityTaskcancelRequested then this member is set // and provides detailed information about the event. It is not set for other // event types. ActivityTaskCancelRequestedEventAttributes *ActivityTaskCancelRequestedEventAttributes `locationName:"activityTaskCancelRequestedEventAttributes" type:"structure"` // If the event is of type ActivityTaskCanceled then this member is set and // provides detailed information about the event. It is not set for other event // types. ActivityTaskCanceledEventAttributes *ActivityTaskCanceledEventAttributes `locationName:"activityTaskCanceledEventAttributes" type:"structure"` // If the event is of type ActivityTaskCompleted then this member is set and // provides detailed information about the event. It is not set for other event // types. ActivityTaskCompletedEventAttributes *ActivityTaskCompletedEventAttributes `locationName:"activityTaskCompletedEventAttributes" type:"structure"` // If the event is of type ActivityTaskFailed then this member is set and provides // detailed information about the event. It is not set for other event types. ActivityTaskFailedEventAttributes *ActivityTaskFailedEventAttributes `locationName:"activityTaskFailedEventAttributes" type:"structure"` // If the event is of type ActivityTaskScheduled then this member is set and // provides detailed information about the event. It is not set for other event // types. ActivityTaskScheduledEventAttributes *ActivityTaskScheduledEventAttributes `locationName:"activityTaskScheduledEventAttributes" type:"structure"` // If the event is of type ActivityTaskStarted then this member is set and provides // detailed information about the event. It is not set for other event types. ActivityTaskStartedEventAttributes *ActivityTaskStartedEventAttributes `locationName:"activityTaskStartedEventAttributes" type:"structure"` // If the event is of type ActivityTaskTimedOut then this member is set and // provides detailed information about the event. It is not set for other event // types. ActivityTaskTimedOutEventAttributes *ActivityTaskTimedOutEventAttributes `locationName:"activityTaskTimedOutEventAttributes" type:"structure"` // If the event is of type CancelTimerFailed then this member is set and provides // detailed information about the event. It is not set for other event types. CancelTimerFailedEventAttributes *CancelTimerFailedEventAttributes `locationName:"cancelTimerFailedEventAttributes" type:"structure"` // If the event is of type CancelWorkflowExecutionFailed then this member is // set and provides detailed information about the event. It is not set for // other event types. CancelWorkflowExecutionFailedEventAttributes *CancelWorkflowExecutionFailedEventAttributes `locationName:"cancelWorkflowExecutionFailedEventAttributes" type:"structure"` // If the event is of type ChildWorkflowExecutionCanceled then this member is // set and provides detailed information about the event. It is not set for // other event types. ChildWorkflowExecutionCanceledEventAttributes *ChildWorkflowExecutionCanceledEventAttributes `locationName:"childWorkflowExecutionCanceledEventAttributes" type:"structure"` // If the event is of type ChildWorkflowExecutionCompleted then this member // is set and provides detailed information about the event. It is not set for // other event types. ChildWorkflowExecutionCompletedEventAttributes *ChildWorkflowExecutionCompletedEventAttributes `locationName:"childWorkflowExecutionCompletedEventAttributes" type:"structure"` // If the event is of type ChildWorkflowExecutionFailed then this member is // set and provides detailed information about the event. It is not set for // other event types. ChildWorkflowExecutionFailedEventAttributes *ChildWorkflowExecutionFailedEventAttributes `locationName:"childWorkflowExecutionFailedEventAttributes" type:"structure"` // If the event is of type ChildWorkflowExecutionStarted then this member is // set and provides detailed information about the event. It is not set for // other event types. ChildWorkflowExecutionStartedEventAttributes *ChildWorkflowExecutionStartedEventAttributes `locationName:"childWorkflowExecutionStartedEventAttributes" type:"structure"` // If the event is of type ChildWorkflowExecutionTerminated then this member // is set and provides detailed information about the event. It is not set for // other event types. ChildWorkflowExecutionTerminatedEventAttributes *ChildWorkflowExecutionTerminatedEventAttributes `locationName:"childWorkflowExecutionTerminatedEventAttributes" type:"structure"` // If the event is of type ChildWorkflowExecutionTimedOut then this member is // set and provides detailed information about the event. It is not set for // other event types. ChildWorkflowExecutionTimedOutEventAttributes *ChildWorkflowExecutionTimedOutEventAttributes `locationName:"childWorkflowExecutionTimedOutEventAttributes" type:"structure"` // If the event is of type CompleteWorkflowExecutionFailed then this member // is set and provides detailed information about the event. It is not set for // other event types. CompleteWorkflowExecutionFailedEventAttributes *CompleteWorkflowExecutionFailedEventAttributes `locationName:"completeWorkflowExecutionFailedEventAttributes" type:"structure"` // If the event is of type ContinueAsNewWorkflowExecutionFailed then this member // is set and provides detailed information about the event. It is not set for // other event types. ContinueAsNewWorkflowExecutionFailedEventAttributes *ContinueAsNewWorkflowExecutionFailedEventAttributes `locationName:"continueAsNewWorkflowExecutionFailedEventAttributes" type:"structure"` // If the event is of type DecisionTaskCompleted then this member is set and // provides detailed information about the event. It is not set for other event // types. DecisionTaskCompletedEventAttributes *DecisionTaskCompletedEventAttributes `locationName:"decisionTaskCompletedEventAttributes" type:"structure"` // If the event is of type DecisionTaskScheduled then this member is set and // provides detailed information about the event. It is not set for other event // types. DecisionTaskScheduledEventAttributes *DecisionTaskScheduledEventAttributes `locationName:"decisionTaskScheduledEventAttributes" type:"structure"` // If the event is of type DecisionTaskStarted then this member is set and provides // detailed information about the event. It is not set for other event types. DecisionTaskStartedEventAttributes *DecisionTaskStartedEventAttributes `locationName:"decisionTaskStartedEventAttributes" type:"structure"` // If the event is of type DecisionTaskTimedOut then this member is set and // provides detailed information about the event. It is not set for other event // types. DecisionTaskTimedOutEventAttributes *DecisionTaskTimedOutEventAttributes `locationName:"decisionTaskTimedOutEventAttributes" type:"structure"` // The system generated ID of the event. This ID uniquely identifies the event // with in the workflow execution history. // // EventId is a required field EventId *int64 `locationName:"eventId" type:"long" required:"true"` // The date and time when the event occurred. // // EventTimestamp is a required field EventTimestamp *time.Time `locationName:"eventTimestamp" type:"timestamp" timestampFormat:"unix" required:"true"` // The type of the history event. // // EventType is a required field EventType *string `locationName:"eventType" type:"string" required:"true" enum:"EventType"` // If the event is of type ExternalWorkflowExecutionCancelRequested then this // member is set and provides detailed information about the event. It is not // set for other event types. ExternalWorkflowExecutionCancelRequestedEventAttributes *ExternalWorkflowExecutionCancelRequestedEventAttributes `locationName:"externalWorkflowExecutionCancelRequestedEventAttributes" type:"structure"` // If the event is of type ExternalWorkflowExecutionSignaled then this member // is set and provides detailed information about the event. It is not set for // other event types. ExternalWorkflowExecutionSignaledEventAttributes *ExternalWorkflowExecutionSignaledEventAttributes `locationName:"externalWorkflowExecutionSignaledEventAttributes" type:"structure"` // If the event is of type FailWorkflowExecutionFailed then this member is set // and provides detailed information about the event. It is not set for other // event types. FailWorkflowExecutionFailedEventAttributes *FailWorkflowExecutionFailedEventAttributes `locationName:"failWorkflowExecutionFailedEventAttributes" type:"structure"` // Provides details for the LambdaFunctionCompleted event. LambdaFunctionCompletedEventAttributes *LambdaFunctionCompletedEventAttributes `locationName:"lambdaFunctionCompletedEventAttributes" type:"structure"` // Provides details for the LambdaFunctionFailed event. LambdaFunctionFailedEventAttributes *LambdaFunctionFailedEventAttributes `locationName:"lambdaFunctionFailedEventAttributes" type:"structure"` // Provides details for the LambdaFunctionScheduled event. LambdaFunctionScheduledEventAttributes *LambdaFunctionScheduledEventAttributes `locationName:"lambdaFunctionScheduledEventAttributes" type:"structure"` // Provides details for the LambdaFunctionStarted event. LambdaFunctionStartedEventAttributes *LambdaFunctionStartedEventAttributes `locationName:"lambdaFunctionStartedEventAttributes" type:"structure"` // Provides details for the LambdaFunctionTimedOut event. LambdaFunctionTimedOutEventAttributes *LambdaFunctionTimedOutEventAttributes `locationName:"lambdaFunctionTimedOutEventAttributes" type:"structure"` // If the event is of type MarkerRecorded then this member is set and provides // detailed information about the event. It is not set for other event types. MarkerRecordedEventAttributes *MarkerRecordedEventAttributes `locationName:"markerRecordedEventAttributes" type:"structure"` // If the event is of type DecisionTaskFailed then this member is set and provides // detailed information about the event. It is not set for other event types. RecordMarkerFailedEventAttributes *RecordMarkerFailedEventAttributes `locationName:"recordMarkerFailedEventAttributes" type:"structure"` // If the event is of type RequestCancelActivityTaskFailed then this member // is set and provides detailed information about the event. It is not set for // other event types. RequestCancelActivityTaskFailedEventAttributes *RequestCancelActivityTaskFailedEventAttributes `locationName:"requestCancelActivityTaskFailedEventAttributes" type:"structure"` // If the event is of type RequestCancelExternalWorkflowExecutionFailed then // this member is set and provides detailed information about the event. It // is not set for other event types. RequestCancelExternalWorkflowExecutionFailedEventAttributes *RequestCancelExternalWorkflowExecutionFailedEventAttributes `locationName:"requestCancelExternalWorkflowExecutionFailedEventAttributes" type:"structure"` // If the event is of type RequestCancelExternalWorkflowExecutionInitiated then // this member is set and provides detailed information about the event. It // is not set for other event types. RequestCancelExternalWorkflowExecutionInitiatedEventAttributes *RequestCancelExternalWorkflowExecutionInitiatedEventAttributes `locationName:"requestCancelExternalWorkflowExecutionInitiatedEventAttributes" type:"structure"` // If the event is of type ScheduleActivityTaskFailed then this member is set // and provides detailed information about the event. It is not set for other // event types. ScheduleActivityTaskFailedEventAttributes *ScheduleActivityTaskFailedEventAttributes `locationName:"scheduleActivityTaskFailedEventAttributes" type:"structure"` // Provides details for the ScheduleLambdaFunctionFailed event. ScheduleLambdaFunctionFailedEventAttributes *ScheduleLambdaFunctionFailedEventAttributes `locationName:"scheduleLambdaFunctionFailedEventAttributes" type:"structure"` // If the event is of type SignalExternalWorkflowExecutionFailed then this member // is set and provides detailed information about the event. It is not set for // other event types. SignalExternalWorkflowExecutionFailedEventAttributes *SignalExternalWorkflowExecutionFailedEventAttributes `locationName:"signalExternalWorkflowExecutionFailedEventAttributes" type:"structure"` // If the event is of type SignalExternalWorkflowExecutionInitiated then this // member is set and provides detailed information about the event. It is not // set for other event types. SignalExternalWorkflowExecutionInitiatedEventAttributes *SignalExternalWorkflowExecutionInitiatedEventAttributes `locationName:"signalExternalWorkflowExecutionInitiatedEventAttributes" type:"structure"` // If the event is of type StartChildWorkflowExecutionFailed then this member // is set and provides detailed information about the event. It is not set for // other event types. StartChildWorkflowExecutionFailedEventAttributes *StartChildWorkflowExecutionFailedEventAttributes `locationName:"startChildWorkflowExecutionFailedEventAttributes" type:"structure"` // If the event is of type StartChildWorkflowExecutionInitiated then this member // is set and provides detailed information about the event. It is not set for // other event types. StartChildWorkflowExecutionInitiatedEventAttributes *StartChildWorkflowExecutionInitiatedEventAttributes `locationName:"startChildWorkflowExecutionInitiatedEventAttributes" type:"structure"` // Provides details for the StartLambdaFunctionFailed event. StartLambdaFunctionFailedEventAttributes *StartLambdaFunctionFailedEventAttributes `locationName:"startLambdaFunctionFailedEventAttributes" type:"structure"` // If the event is of type StartTimerFailed then this member is set and provides // detailed information about the event. It is not set for other event types. StartTimerFailedEventAttributes *StartTimerFailedEventAttributes `locationName:"startTimerFailedEventAttributes" type:"structure"` // If the event is of type TimerCanceled then this member is set and provides // detailed information about the event. It is not set for other event types. TimerCanceledEventAttributes *TimerCanceledEventAttributes `locationName:"timerCanceledEventAttributes" type:"structure"` // If the event is of type TimerFired then this member is set and provides detailed // information about the event. It is not set for other event types. TimerFiredEventAttributes *TimerFiredEventAttributes `locationName:"timerFiredEventAttributes" type:"structure"` // If the event is of type TimerStarted then this member is set and provides // detailed information about the event. It is not set for other event types. TimerStartedEventAttributes *TimerStartedEventAttributes `locationName:"timerStartedEventAttributes" type:"structure"` // If the event is of type WorkflowExecutionCancelRequested then this member // is set and provides detailed information about the event. It is not set for // other event types. WorkflowExecutionCancelRequestedEventAttributes *WorkflowExecutionCancelRequestedEventAttributes `locationName:"workflowExecutionCancelRequestedEventAttributes" type:"structure"` // If the event is of type WorkflowExecutionCanceled then this member is set // and provides detailed information about the event. It is not set for other // event types. WorkflowExecutionCanceledEventAttributes *WorkflowExecutionCanceledEventAttributes `locationName:"workflowExecutionCanceledEventAttributes" type:"structure"` // If the event is of type WorkflowExecutionCompleted then this member is set // and provides detailed information about the event. It is not set for other // event types. WorkflowExecutionCompletedEventAttributes *WorkflowExecutionCompletedEventAttributes `locationName:"workflowExecutionCompletedEventAttributes" type:"structure"` // If the event is of type WorkflowExecutionContinuedAsNew then this member // is set and provides detailed information about the event. It is not set for // other event types. WorkflowExecutionContinuedAsNewEventAttributes *WorkflowExecutionContinuedAsNewEventAttributes `locationName:"workflowExecutionContinuedAsNewEventAttributes" type:"structure"` // If the event is of type WorkflowExecutionFailed then this member is set and // provides detailed information about the event. It is not set for other event // types. WorkflowExecutionFailedEventAttributes *WorkflowExecutionFailedEventAttributes `locationName:"workflowExecutionFailedEventAttributes" type:"structure"` // If the event is of type WorkflowExecutionSignaled then this member is set // and provides detailed information about the event. It is not set for other // event types. WorkflowExecutionSignaledEventAttributes *WorkflowExecutionSignaledEventAttributes `locationName:"workflowExecutionSignaledEventAttributes" type:"structure"` // If the event is of type WorkflowExecutionStarted then this member is set // and provides detailed information about the event. It is not set for other // event types. WorkflowExecutionStartedEventAttributes *WorkflowExecutionStartedEventAttributes `locationName:"workflowExecutionStartedEventAttributes" type:"structure"` // If the event is of type WorkflowExecutionTerminated then this member is set // and provides detailed information about the event. It is not set for other // event types. WorkflowExecutionTerminatedEventAttributes *WorkflowExecutionTerminatedEventAttributes `locationName:"workflowExecutionTerminatedEventAttributes" type:"structure"` // If the event is of type WorkflowExecutionTimedOut then this member is set // and provides detailed information about the event. It is not set for other // event types. WorkflowExecutionTimedOutEventAttributes *WorkflowExecutionTimedOutEventAttributes `locationName:"workflowExecutionTimedOutEventAttributes" type:"structure"` } // String returns the string representation func (s HistoryEvent) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HistoryEvent) GoString() string { return s.String() } // Provides details for the LambdaFunctionCompleted event. type LambdaFunctionCompletedEventAttributes struct { _ struct{} `type:"structure"` // The result of the function execution (if any). Result *string `locationName:"result" type:"string"` // The ID of the LambdaFunctionScheduled event that was recorded when this AWS // Lambda function was scheduled. This information can be useful for diagnosing // problems by tracing back the chain of events leading up to this event. // // ScheduledEventId is a required field ScheduledEventId *int64 `locationName:"scheduledEventId" type:"long" required:"true"` // The ID of the LambdaFunctionStarted event recorded in the history. // // StartedEventId is a required field StartedEventId *int64 `locationName:"startedEventId" type:"long" required:"true"` } // String returns the string representation func (s LambdaFunctionCompletedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LambdaFunctionCompletedEventAttributes) GoString() string { return s.String() } // Provides details for the LambdaFunctionFailed event. type LambdaFunctionFailedEventAttributes struct { _ struct{} `type:"structure"` // The details of the failure (if any). Details *string `locationName:"details" type:"string"` // The reason provided for the failure (if any). Reason *string `locationName:"reason" type:"string"` // The ID of the LambdaFunctionScheduled event that was recorded when this AWS // Lambda function was scheduled. This information can be useful for diagnosing // problems by tracing back the chain of events leading up to this event. // // ScheduledEventId is a required field ScheduledEventId *int64 `locationName:"scheduledEventId" type:"long" required:"true"` // The ID of the LambdaFunctionStarted event recorded in the history. // // StartedEventId is a required field StartedEventId *int64 `locationName:"startedEventId" type:"long" required:"true"` } // String returns the string representation func (s LambdaFunctionFailedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LambdaFunctionFailedEventAttributes) GoString() string { return s.String() } // Provides details for the LambdaFunctionScheduled event. type LambdaFunctionScheduledEventAttributes struct { _ struct{} `type:"structure"` // The ID of the DecisionTaskCompleted event for the decision that resulted // in the scheduling of this AWS Lambda function. This information can be useful // for diagnosing problems by tracing back the chain of events leading up to // this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // The unique Amazon SWF ID for the AWS Lambda task. // // Id is a required field Id *string `locationName:"id" min:"1" type:"string" required:"true"` // Input provided to the AWS Lambda function. Input *string `locationName:"input" min:"1" type:"string"` // The name of the scheduled AWS Lambda function. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // The maximum time, in seconds, that the AWS Lambda function can take to execute // from start to close before it is marked as failed. StartToCloseTimeout *string `locationName:"startToCloseTimeout" type:"string"` } // String returns the string representation func (s LambdaFunctionScheduledEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LambdaFunctionScheduledEventAttributes) GoString() string { return s.String() } // Provides details for the LambdaFunctionStarted event. type LambdaFunctionStartedEventAttributes struct { _ struct{} `type:"structure"` // The ID of the LambdaFunctionScheduled event that was recorded when this AWS // Lambda function was scheduled. This information can be useful for diagnosing // problems by tracing back the chain of events leading up to this event. // // ScheduledEventId is a required field ScheduledEventId *int64 `locationName:"scheduledEventId" type:"long" required:"true"` } // String returns the string representation func (s LambdaFunctionStartedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LambdaFunctionStartedEventAttributes) GoString() string { return s.String() } // Provides details for the LambdaFunctionTimedOut event. type LambdaFunctionTimedOutEventAttributes struct { _ struct{} `type:"structure"` // The ID of the LambdaFunctionScheduled event that was recorded when this AWS // Lambda function was scheduled. This information can be useful for diagnosing // problems by tracing back the chain of events leading up to this event. // // ScheduledEventId is a required field ScheduledEventId *int64 `locationName:"scheduledEventId" type:"long" required:"true"` // The ID of the LambdaFunctionStarted event recorded in the history. // // StartedEventId is a required field StartedEventId *int64 `locationName:"startedEventId" type:"long" required:"true"` // The type of the timeout that caused this event. TimeoutType *string `locationName:"timeoutType" type:"string" enum:"LambdaFunctionTimeoutType"` } // String returns the string representation func (s LambdaFunctionTimedOutEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s LambdaFunctionTimedOutEventAttributes) GoString() string { return s.String() } type ListActivityTypesInput struct { _ struct{} `type:"structure"` // The name of the domain in which the activity types have been registered. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // The maximum number of results that will be returned per call. nextPageToken // can be used to obtain futher pages of results. The default is 1000, which // is the maximum allowed page size. You can, however, specify a page size smaller // than the maximum. // // This is an upper limit only; the actual number of results returned per call // may be fewer than the specified maximum. MaximumPageSize *int64 `locationName:"maximumPageSize" type:"integer"` // If specified, only lists the activity types that have this name. Name *string `locationName:"name" min:"1" type:"string"` // If a NextPageToken was returned by a previous call, there are more results // available. To retrieve the next page of results, make the call again using // the returned token in nextPageToken. Keep all other arguments unchanged. // // The configured maximumPageSize determines how many results can be returned // in a single call. NextPageToken *string `locationName:"nextPageToken" type:"string"` // Specifies the registration status of the activity types to list. // // RegistrationStatus is a required field RegistrationStatus *string `locationName:"registrationStatus" type:"string" required:"true" enum:"RegistrationStatus"` // When set to true, returns the results in reverse order. By default, the results // are returned in ascending alphabetical order by name of the activity types. ReverseOrder *bool `locationName:"reverseOrder" type:"boolean"` } // String returns the string representation func (s ListActivityTypesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListActivityTypesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListActivityTypesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListActivityTypesInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.RegistrationStatus == nil { invalidParams.Add(request.NewErrParamRequired("RegistrationStatus")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains a paginated list of activity type information structures. type ListActivityTypesOutput struct { _ struct{} `type:"structure"` // If a NextPageToken was returned by a previous call, there are more results // available. To retrieve the next page of results, make the call again using // the returned token in nextPageToken. Keep all other arguments unchanged. // // The configured maximumPageSize determines how many results can be returned // in a single call. NextPageToken *string `locationName:"nextPageToken" type:"string"` // List of activity type information. // // TypeInfos is a required field TypeInfos []*ActivityTypeInfo `locationName:"typeInfos" type:"list" required:"true"` } // String returns the string representation func (s ListActivityTypesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListActivityTypesOutput) GoString() string { return s.String() } type ListClosedWorkflowExecutionsInput struct { _ struct{} `type:"structure"` // If specified, only workflow executions that match this close status are listed. // For example, if TERMINATED is specified, then only TERMINATED workflow executions // are listed. // // closeStatusFilter, executionFilter, typeFilter and tagFilter are mutually // exclusive. You can specify at most one of these in a request. CloseStatusFilter *CloseStatusFilter `locationName:"closeStatusFilter" type:"structure"` // If specified, the workflow executions are included in the returned results // based on whether their close times are within the range specified by this // filter. Also, if this parameter is specified, the returned results are ordered // by their close times. // // startTimeFilter and closeTimeFilter are mutually exclusive. You must specify // one of these in a request but not both. CloseTimeFilter *ExecutionTimeFilter `locationName:"closeTimeFilter" type:"structure"` // The name of the domain that contains the workflow executions to list. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // If specified, only workflow executions matching the workflow ID specified // in the filter are returned. // // closeStatusFilter, executionFilter, typeFilter and tagFilter are mutually // exclusive. You can specify at most one of these in a request. ExecutionFilter *WorkflowExecutionFilter `locationName:"executionFilter" type:"structure"` // The maximum number of results that will be returned per call. nextPageToken // can be used to obtain futher pages of results. The default is 1000, which // is the maximum allowed page size. You can, however, specify a page size smaller // than the maximum. // // This is an upper limit only; the actual number of results returned per call // may be fewer than the specified maximum. MaximumPageSize *int64 `locationName:"maximumPageSize" type:"integer"` // If a NextPageToken was returned by a previous call, there are more results // available. To retrieve the next page of results, make the call again using // the returned token in nextPageToken. Keep all other arguments unchanged. // // The configured maximumPageSize determines how many results can be returned // in a single call. NextPageToken *string `locationName:"nextPageToken" type:"string"` // When set to true, returns the results in reverse order. By default the results // are returned in descending order of the start or the close time of the executions. ReverseOrder *bool `locationName:"reverseOrder" type:"boolean"` // If specified, the workflow executions are included in the returned results // based on whether their start times are within the range specified by this // filter. Also, if this parameter is specified, the returned results are ordered // by their start times. // // startTimeFilter and closeTimeFilter are mutually exclusive. You must specify // one of these in a request but not both. StartTimeFilter *ExecutionTimeFilter `locationName:"startTimeFilter" type:"structure"` // If specified, only executions that have the matching tag are listed. // // closeStatusFilter, executionFilter, typeFilter and tagFilter are mutually // exclusive. You can specify at most one of these in a request. TagFilter *TagFilter `locationName:"tagFilter" type:"structure"` // If specified, only executions of the type specified in the filter are returned. // // closeStatusFilter, executionFilter, typeFilter and tagFilter are mutually // exclusive. You can specify at most one of these in a request. TypeFilter *WorkflowTypeFilter `locationName:"typeFilter" type:"structure"` } // String returns the string representation func (s ListClosedWorkflowExecutionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListClosedWorkflowExecutionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListClosedWorkflowExecutionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListClosedWorkflowExecutionsInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.CloseStatusFilter != nil { if err := s.CloseStatusFilter.Validate(); err != nil { invalidParams.AddNested("CloseStatusFilter", err.(request.ErrInvalidParams)) } } if s.CloseTimeFilter != nil { if err := s.CloseTimeFilter.Validate(); err != nil { invalidParams.AddNested("CloseTimeFilter", err.(request.ErrInvalidParams)) } } if s.ExecutionFilter != nil { if err := s.ExecutionFilter.Validate(); err != nil { invalidParams.AddNested("ExecutionFilter", err.(request.ErrInvalidParams)) } } if s.StartTimeFilter != nil { if err := s.StartTimeFilter.Validate(); err != nil { invalidParams.AddNested("StartTimeFilter", err.(request.ErrInvalidParams)) } } if s.TagFilter != nil { if err := s.TagFilter.Validate(); err != nil { invalidParams.AddNested("TagFilter", err.(request.ErrInvalidParams)) } } if s.TypeFilter != nil { if err := s.TypeFilter.Validate(); err != nil { invalidParams.AddNested("TypeFilter", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListDomainsInput struct { _ struct{} `type:"structure"` // The maximum number of results that will be returned per call. nextPageToken // can be used to obtain futher pages of results. The default is 1000, which // is the maximum allowed page size. You can, however, specify a page size smaller // than the maximum. // // This is an upper limit only; the actual number of results returned per call // may be fewer than the specified maximum. MaximumPageSize *int64 `locationName:"maximumPageSize" type:"integer"` // If a NextPageToken was returned by a previous call, there are more results // available. To retrieve the next page of results, make the call again using // the returned token in nextPageToken. Keep all other arguments unchanged. // // The configured maximumPageSize determines how many results can be returned // in a single call. NextPageToken *string `locationName:"nextPageToken" type:"string"` // Specifies the registration status of the domains to list. // // RegistrationStatus is a required field RegistrationStatus *string `locationName:"registrationStatus" type:"string" required:"true" enum:"RegistrationStatus"` // When set to true, returns the results in reverse order. By default, the results // are returned in ascending alphabetical order by name of the domains. ReverseOrder *bool `locationName:"reverseOrder" type:"boolean"` } // String returns the string representation func (s ListDomainsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDomainsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListDomainsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListDomainsInput"} if s.RegistrationStatus == nil { invalidParams.Add(request.NewErrParamRequired("RegistrationStatus")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains a paginated collection of DomainInfo structures. type ListDomainsOutput struct { _ struct{} `type:"structure"` // A list of DomainInfo structures. // // DomainInfos is a required field DomainInfos []*DomainInfo `locationName:"domainInfos" type:"list" required:"true"` // If a NextPageToken was returned by a previous call, there are more results // available. To retrieve the next page of results, make the call again using // the returned token in nextPageToken. Keep all other arguments unchanged. // // The configured maximumPageSize determines how many results can be returned // in a single call. NextPageToken *string `locationName:"nextPageToken" type:"string"` } // String returns the string representation func (s ListDomainsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListDomainsOutput) GoString() string { return s.String() } type ListOpenWorkflowExecutionsInput struct { _ struct{} `type:"structure"` // The name of the domain that contains the workflow executions to list. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // If specified, only workflow executions matching the workflow ID specified // in the filter are returned. // // executionFilter, typeFilter and tagFilter are mutually exclusive. You can // specify at most one of these in a request. ExecutionFilter *WorkflowExecutionFilter `locationName:"executionFilter" type:"structure"` // The maximum number of results that will be returned per call. nextPageToken // can be used to obtain futher pages of results. The default is 1000, which // is the maximum allowed page size. You can, however, specify a page size smaller // than the maximum. // // This is an upper limit only; the actual number of results returned per call // may be fewer than the specified maximum. MaximumPageSize *int64 `locationName:"maximumPageSize" type:"integer"` // If a NextPageToken was returned by a previous call, there are more results // available. To retrieve the next page of results, make the call again using // the returned token in nextPageToken. Keep all other arguments unchanged. // // The configured maximumPageSize determines how many results can be returned // in a single call. NextPageToken *string `locationName:"nextPageToken" type:"string"` // When set to true, returns the results in reverse order. By default the results // are returned in descending order of the start time of the executions. ReverseOrder *bool `locationName:"reverseOrder" type:"boolean"` // Workflow executions are included in the returned results based on whether // their start times are within the range specified by this filter. // // StartTimeFilter is a required field StartTimeFilter *ExecutionTimeFilter `locationName:"startTimeFilter" type:"structure" required:"true"` // If specified, only executions that have the matching tag are listed. // // executionFilter, typeFilter and tagFilter are mutually exclusive. You can // specify at most one of these in a request. TagFilter *TagFilter `locationName:"tagFilter" type:"structure"` // If specified, only executions of the type specified in the filter are returned. // // executionFilter, typeFilter and tagFilter are mutually exclusive. You can // specify at most one of these in a request. TypeFilter *WorkflowTypeFilter `locationName:"typeFilter" type:"structure"` } // String returns the string representation func (s ListOpenWorkflowExecutionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListOpenWorkflowExecutionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListOpenWorkflowExecutionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListOpenWorkflowExecutionsInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.StartTimeFilter == nil { invalidParams.Add(request.NewErrParamRequired("StartTimeFilter")) } if s.ExecutionFilter != nil { if err := s.ExecutionFilter.Validate(); err != nil { invalidParams.AddNested("ExecutionFilter", err.(request.ErrInvalidParams)) } } if s.StartTimeFilter != nil { if err := s.StartTimeFilter.Validate(); err != nil { invalidParams.AddNested("StartTimeFilter", err.(request.ErrInvalidParams)) } } if s.TagFilter != nil { if err := s.TagFilter.Validate(); err != nil { invalidParams.AddNested("TagFilter", err.(request.ErrInvalidParams)) } } if s.TypeFilter != nil { if err := s.TypeFilter.Validate(); err != nil { invalidParams.AddNested("TypeFilter", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListWorkflowTypesInput struct { _ struct{} `type:"structure"` // The name of the domain in which the workflow types have been registered. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // The maximum number of results that will be returned per call. nextPageToken // can be used to obtain futher pages of results. The default is 1000, which // is the maximum allowed page size. You can, however, specify a page size smaller // than the maximum. // // This is an upper limit only; the actual number of results returned per call // may be fewer than the specified maximum. MaximumPageSize *int64 `locationName:"maximumPageSize" type:"integer"` // If specified, lists the workflow type with this name. Name *string `locationName:"name" min:"1" type:"string"` // If a NextPageToken was returned by a previous call, there are more results // available. To retrieve the next page of results, make the call again using // the returned token in nextPageToken. Keep all other arguments unchanged. // // The configured maximumPageSize determines how many results can be returned // in a single call. NextPageToken *string `locationName:"nextPageToken" type:"string"` // Specifies the registration status of the workflow types to list. // // RegistrationStatus is a required field RegistrationStatus *string `locationName:"registrationStatus" type:"string" required:"true" enum:"RegistrationStatus"` // When set to true, returns the results in reverse order. By default the results // are returned in ascending alphabetical order of the name of the workflow // types. ReverseOrder *bool `locationName:"reverseOrder" type:"boolean"` } // String returns the string representation func (s ListWorkflowTypesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListWorkflowTypesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListWorkflowTypesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListWorkflowTypesInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.RegistrationStatus == nil { invalidParams.Add(request.NewErrParamRequired("RegistrationStatus")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains a paginated list of information structures about workflow types. type ListWorkflowTypesOutput struct { _ struct{} `type:"structure"` // If a NextPageToken was returned by a previous call, there are more results // available. To retrieve the next page of results, make the call again using // the returned token in nextPageToken. Keep all other arguments unchanged. // // The configured maximumPageSize determines how many results can be returned // in a single call. NextPageToken *string `locationName:"nextPageToken" type:"string"` // The list of workflow type information. // // TypeInfos is a required field TypeInfos []*WorkflowTypeInfo `locationName:"typeInfos" type:"list" required:"true"` } // String returns the string representation func (s ListWorkflowTypesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListWorkflowTypesOutput) GoString() string { return s.String() } // Provides details of the MarkerRecorded event. type MarkerRecordedEventAttributes struct { _ struct{} `type:"structure"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the RecordMarker decision that requested this marker. This // information can be useful for diagnosing problems by tracing back the chain // of events leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // Details of the marker (if any). Details *string `locationName:"details" type:"string"` // The name of the marker. // // MarkerName is a required field MarkerName *string `locationName:"markerName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s MarkerRecordedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MarkerRecordedEventAttributes) GoString() string { return s.String() } // Contains the count of tasks in a task list. type PendingTaskCount struct { _ struct{} `type:"structure"` // The number of tasks in the task list. // // Count is a required field Count *int64 `locationName:"count" type:"integer" required:"true"` // If set to true, indicates that the actual count was more than the maximum // supported by this API and the count returned is the truncated value. Truncated *bool `locationName:"truncated" type:"boolean"` } // String returns the string representation func (s PendingTaskCount) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PendingTaskCount) GoString() string { return s.String() } type PollForActivityTaskInput struct { _ struct{} `type:"structure"` // The name of the domain that contains the task lists being polled. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // Identity of the worker making the request, recorded in the ActivityTaskStarted // event in the workflow history. This enables diagnostic tracing when problems // arise. The form of this identity is user defined. Identity *string `locationName:"identity" type:"string"` // Specifies the task list to poll for activity tasks. // // The specified string must not start or end with whitespace. It must not contain // a : (colon), / (slash), | (vertical bar), or any control characters (\u0000-\u001f // | \u007f - \u009f). Also, it must not contain the literal string quotarnquot. // // TaskList is a required field TaskList *TaskList `locationName:"taskList" type:"structure" required:"true"` } // String returns the string representation func (s PollForActivityTaskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PollForActivityTaskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PollForActivityTaskInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PollForActivityTaskInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.TaskList == nil { invalidParams.Add(request.NewErrParamRequired("TaskList")) } if s.TaskList != nil { if err := s.TaskList.Validate(); err != nil { invalidParams.AddNested("TaskList", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Unit of work sent to an activity worker. type PollForActivityTaskOutput struct { _ struct{} `type:"structure"` // The unique ID of the task. // // ActivityId is a required field ActivityId *string `locationName:"activityId" min:"1" type:"string" required:"true"` // The type of this activity task. // // ActivityType is a required field ActivityType *ActivityType `locationName:"activityType" type:"structure" required:"true"` // The inputs provided when the activity task was scheduled. The form of the // input is user defined and should be meaningful to the activity implementation. Input *string `locationName:"input" type:"string"` // The ID of the ActivityTaskStarted event recorded in the history. // // StartedEventId is a required field StartedEventId *int64 `locationName:"startedEventId" type:"long" required:"true"` // The opaque string used as a handle on the task. This token is used by workers // to communicate progress and response information back to the system about // the task. // // TaskToken is a required field TaskToken *string `locationName:"taskToken" min:"1" type:"string" required:"true"` // The workflow execution that started this activity task. // // WorkflowExecution is a required field WorkflowExecution *WorkflowExecution `locationName:"workflowExecution" type:"structure" required:"true"` } // String returns the string representation func (s PollForActivityTaskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PollForActivityTaskOutput) GoString() string { return s.String() } type PollForDecisionTaskInput struct { _ struct{} `type:"structure"` // The name of the domain containing the task lists to poll. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // Identity of the decider making the request, which is recorded in the DecisionTaskStarted // event in the workflow history. This enables diagnostic tracing when problems // arise. The form of this identity is user defined. Identity *string `locationName:"identity" type:"string"` // The maximum number of results that will be returned per call. nextPageToken // can be used to obtain futher pages of results. The default is 1000, which // is the maximum allowed page size. You can, however, specify a page size smaller // than the maximum. // // This is an upper limit only; the actual number of results returned per call // may be fewer than the specified maximum. MaximumPageSize *int64 `locationName:"maximumPageSize" type:"integer"` // If a NextPageToken was returned by a previous call, there are more results // available. To retrieve the next page of results, make the call again using // the returned token in nextPageToken. Keep all other arguments unchanged. // // The configured maximumPageSize determines how many results can be returned // in a single call. // // The nextPageToken returned by this action cannot be used with GetWorkflowExecutionHistory // to get the next page. You must call PollForDecisionTask again (with the nextPageToken) // to retrieve the next page of history records. Calling PollForDecisionTask // with a nextPageToken will not return a new decision task. NextPageToken *string `locationName:"nextPageToken" type:"string"` // When set to true, returns the events in reverse order. By default the results // are returned in ascending order of the eventTimestamp of the events. ReverseOrder *bool `locationName:"reverseOrder" type:"boolean"` // Specifies the task list to poll for decision tasks. // // The specified string must not start or end with whitespace. It must not contain // a : (colon), / (slash), | (vertical bar), or any control characters (\u0000-\u001f // | \u007f - \u009f). Also, it must not contain the literal string quotarnquot. // // TaskList is a required field TaskList *TaskList `locationName:"taskList" type:"structure" required:"true"` } // String returns the string representation func (s PollForDecisionTaskInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PollForDecisionTaskInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PollForDecisionTaskInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PollForDecisionTaskInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.TaskList == nil { invalidParams.Add(request.NewErrParamRequired("TaskList")) } if s.TaskList != nil { if err := s.TaskList.Validate(); err != nil { invalidParams.AddNested("TaskList", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A structure that represents a decision task. Decision tasks are sent to deciders // in order for them to make decisions. type PollForDecisionTaskOutput struct { _ struct{} `type:"structure"` // A paginated list of history events of the workflow execution. The decider // uses this during the processing of the decision task. // // Events is a required field Events []*HistoryEvent `locationName:"events" type:"list" required:"true"` // If a NextPageToken was returned by a previous call, there are more results // available. To retrieve the next page of results, make the call again using // the returned token in nextPageToken. Keep all other arguments unchanged. // // The configured maximumPageSize determines how many results can be returned // in a single call. NextPageToken *string `locationName:"nextPageToken" type:"string"` // The ID of the DecisionTaskStarted event of the previous decision task of // this workflow execution that was processed by the decider. This can be used // to determine the events in the history new since the last decision task received // by the decider. PreviousStartedEventId *int64 `locationName:"previousStartedEventId" type:"long"` // The ID of the DecisionTaskStarted event recorded in the history. // // StartedEventId is a required field StartedEventId *int64 `locationName:"startedEventId" type:"long" required:"true"` // The opaque string used as a handle on the task. This token is used by workers // to communicate progress and response information back to the system about // the task. // // TaskToken is a required field TaskToken *string `locationName:"taskToken" min:"1" type:"string" required:"true"` // The workflow execution for which this decision task was created. // // WorkflowExecution is a required field WorkflowExecution *WorkflowExecution `locationName:"workflowExecution" type:"structure" required:"true"` // The type of the workflow execution for which this decision task was created. // // WorkflowType is a required field WorkflowType *WorkflowType `locationName:"workflowType" type:"structure" required:"true"` } // String returns the string representation func (s PollForDecisionTaskOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PollForDecisionTaskOutput) GoString() string { return s.String() } type RecordActivityTaskHeartbeatInput struct { _ struct{} `type:"structure"` // If specified, contains details about the progress of the task. Details *string `locationName:"details" type:"string"` // The taskToken of the ActivityTask. // // taskToken is generated by the service and should be treated as an opaque // value. If the task is passed to another process, its taskToken must also // be passed. This enables it to provide its progress and respond with results. // // TaskToken is a required field TaskToken *string `locationName:"taskToken" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RecordActivityTaskHeartbeatInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecordActivityTaskHeartbeatInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RecordActivityTaskHeartbeatInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RecordActivityTaskHeartbeatInput"} if s.TaskToken == nil { invalidParams.Add(request.NewErrParamRequired("TaskToken")) } if s.TaskToken != nil && len(*s.TaskToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("TaskToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Status information about an activity task. type RecordActivityTaskHeartbeatOutput struct { _ struct{} `type:"structure"` // Set to true if cancellation of the task is requested. // // CancelRequested is a required field CancelRequested *bool `locationName:"cancelRequested" type:"boolean" required:"true"` } // String returns the string representation func (s RecordActivityTaskHeartbeatOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecordActivityTaskHeartbeatOutput) GoString() string { return s.String() } // Provides details of the RecordMarker decision. // // Access Control // // You can use IAM policies to control this decision's access to Amazon SWF // resources as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). type RecordMarkerDecisionAttributes struct { _ struct{} `type:"structure"` // Optional. details of the marker. Details *string `locationName:"details" type:"string"` // Required. The name of the marker. // // MarkerName is a required field MarkerName *string `locationName:"markerName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RecordMarkerDecisionAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecordMarkerDecisionAttributes) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RecordMarkerDecisionAttributes) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RecordMarkerDecisionAttributes"} if s.MarkerName == nil { invalidParams.Add(request.NewErrParamRequired("MarkerName")) } if s.MarkerName != nil && len(*s.MarkerName) < 1 { invalidParams.Add(request.NewErrParamMinLen("MarkerName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides details of the RecordMarkerFailed event. type RecordMarkerFailedEventAttributes struct { _ struct{} `type:"structure"` // The cause of the failure. This information is generated by the system and // can be useful for diagnostic purposes. // // If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it // lacked sufficient permissions. For details and example IAM policies, see // Using IAM to Manage Access to Amazon SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Cause is a required field Cause *string `locationName:"cause" type:"string" required:"true" enum:"RecordMarkerFailedCause"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the RecordMarkerFailed decision for this cancellation request. // This information can be useful for diagnosing problems by tracing back the // chain of events leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // The marker's name. // // MarkerName is a required field MarkerName *string `locationName:"markerName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RecordMarkerFailedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RecordMarkerFailedEventAttributes) GoString() string { return s.String() } type RegisterActivityTypeInput struct { _ struct{} `type:"structure"` // If set, specifies the default maximum time before which a worker processing // a task of this type must report progress by calling RecordActivityTaskHeartbeat. // If the timeout is exceeded, the activity task is automatically timed out. // This default can be overridden when scheduling an activity task using the // ScheduleActivityTask decision. If the activity worker subsequently attempts // to record a heartbeat or returns a result, the activity worker receives an // UnknownResource fault. In this case, Amazon SWF no longer considers the activity // task to be valid; the activity worker should clean up the activity task. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. DefaultTaskHeartbeatTimeout *string `locationName:"defaultTaskHeartbeatTimeout" type:"string"` // If set, specifies the default task list to use for scheduling tasks of this // activity type. This default task list is used if a task list is not provided // when a task is scheduled through the ScheduleActivityTask decision. DefaultTaskList *TaskList `locationName:"defaultTaskList" type:"structure"` // The default task priority to assign to the activity type. If not assigned, // then "0" will be used. Valid values are integers that range from Java's Integer.MIN_VALUE // (-2147483648) to Integer.MAX_VALUE (2147483647). Higher numbers indicate // higher priority. // // For more information about setting task priority, see Setting Task Priority // (http://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) // in the Amazon Simple Workflow Developer Guide. DefaultTaskPriority *string `locationName:"defaultTaskPriority" type:"string"` // If set, specifies the default maximum duration for a task of this activity // type. This default can be overridden when scheduling an activity task using // the ScheduleActivityTask decision. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. DefaultTaskScheduleToCloseTimeout *string `locationName:"defaultTaskScheduleToCloseTimeout" type:"string"` // If set, specifies the default maximum duration that a task of this activity // type can wait before being assigned to a worker. This default can be overridden // when scheduling an activity task using the ScheduleActivityTask decision. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. DefaultTaskScheduleToStartTimeout *string `locationName:"defaultTaskScheduleToStartTimeout" type:"string"` // If set, specifies the default maximum duration that a worker can take to // process tasks of this activity type. This default can be overridden when // scheduling an activity task using the ScheduleActivityTask decision. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. DefaultTaskStartToCloseTimeout *string `locationName:"defaultTaskStartToCloseTimeout" type:"string"` // A textual description of the activity type. Description *string `locationName:"description" type:"string"` // The name of the domain in which this activity is to be registered. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // The name of the activity type within the domain. // // The specified string must not start or end with whitespace. It must not contain // a : (colon), / (slash), | (vertical bar), or any control characters (\u0000-\u001f // | \u007f - \u009f). Also, it must not contain the literal string quotarnquot. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // The version of the activity type. // // The activity type consists of the name and version, the combination of which // must be unique within the domain.The specified string must not start or end with whitespace. It must not contain // a : (colon), / (slash), | (vertical bar), or any control characters (\u0000-\u001f // | \u007f - \u009f). Also, it must not contain the literal string quotarnquot. // // Version is a required field Version *string `locationName:"version" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RegisterActivityTypeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterActivityTypeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterActivityTypeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterActivityTypeInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Version == nil { invalidParams.Add(request.NewErrParamRequired("Version")) } if s.Version != nil && len(*s.Version) < 1 { invalidParams.Add(request.NewErrParamMinLen("Version", 1)) } if s.DefaultTaskList != nil { if err := s.DefaultTaskList.Validate(); err != nil { invalidParams.AddNested("DefaultTaskList", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type RegisterActivityTypeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RegisterActivityTypeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterActivityTypeOutput) GoString() string { return s.String() } type RegisterDomainInput struct { _ struct{} `type:"structure"` // A text description of the domain. Description *string `locationName:"description" type:"string"` // Name of the domain to register. The name must be unique in the region that // the domain is registered in. // // The specified string must not start or end with whitespace. It must not contain // a : (colon), / (slash), | (vertical bar), or any control characters (\u0000-\u001f // | \u007f - \u009f). Also, it must not contain the literal string quotarnquot. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // The duration (in days) that records and histories of workflow executions // on the domain should be kept by the service. After the retention period, // the workflow execution is not available in the results of visibility calls. // // If you pass the value NONE or 0 (zero), then the workflow execution history // will not be retained. As soon as the workflow execution completes, the execution // record and its history are deleted. // // The maximum workflow execution retention period is 90 days. For more information // about Amazon SWF service limits, see: Amazon SWF Service Limits (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dg-limits.html) // in the Amazon SWF Developer Guide. // // WorkflowExecutionRetentionPeriodInDays is a required field WorkflowExecutionRetentionPeriodInDays *string `locationName:"workflowExecutionRetentionPeriodInDays" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RegisterDomainInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterDomainInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterDomainInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterDomainInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.WorkflowExecutionRetentionPeriodInDays == nil { invalidParams.Add(request.NewErrParamRequired("WorkflowExecutionRetentionPeriodInDays")) } if s.WorkflowExecutionRetentionPeriodInDays != nil && len(*s.WorkflowExecutionRetentionPeriodInDays) < 1 { invalidParams.Add(request.NewErrParamMinLen("WorkflowExecutionRetentionPeriodInDays", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RegisterDomainOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RegisterDomainOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterDomainOutput) GoString() string { return s.String() } type RegisterWorkflowTypeInput struct { _ struct{} `type:"structure"` // If set, specifies the default policy to use for the child workflow executions // when a workflow execution of this type is terminated, by calling the TerminateWorkflowExecution // action explicitly or due to an expired timeout. This default can be overridden // when starting a workflow execution using the StartWorkflowExecution action // or the StartChildWorkflowExecution decision. // // The supported child policies are: // // * TERMINATE: the child executions will be terminated. // * REQUEST_CANCEL: a request to cancel will be attempted for each child // execution by recording a WorkflowExecutionCancelRequested event in its // history. It is up to the decider to take appropriate actions when it receives // an execution history with this event. // * ABANDON: no action will be taken. The child executions will continue // to run. DefaultChildPolicy *string `locationName:"defaultChildPolicy" type:"string" enum:"ChildPolicy"` // If set, specifies the default maximum duration for executions of this workflow // type. You can override this default when starting an execution through the // StartWorkflowExecution action or StartChildWorkflowExecution decision. // // The duration is specified in seconds; an integer greater than or equal to // 0. Unlike some of the other timeout parameters in Amazon SWF, you cannot // specify a value of "NONE" for defaultExecutionStartToCloseTimeout; there // is a one-year max limit on the time that a workflow execution can run. Exceeding // this limit will always cause the workflow execution to time out. DefaultExecutionStartToCloseTimeout *string `locationName:"defaultExecutionStartToCloseTimeout" type:"string"` // The ARN of the default IAM role to use when a workflow execution of this // type invokes AWS Lambda functions. // // This default can be overridden when starting a workflow execution using the // StartWorkflowExecution action or the StartChildWorkflowExecution and ContinueAsNewWorkflowExecution // decision. DefaultLambdaRole *string `locationName:"defaultLambdaRole" min:"1" type:"string"` // If set, specifies the default task list to use for scheduling decision tasks // for executions of this workflow type. This default is used only if a task // list is not provided when starting the execution through the StartWorkflowExecution // action or StartChildWorkflowExecution decision. DefaultTaskList *TaskList `locationName:"defaultTaskList" type:"structure"` // The default task priority to assign to the workflow type. If not assigned, // then "0" will be used. Valid values are integers that range from Java's Integer.MIN_VALUE // (-2147483648) to Integer.MAX_VALUE (2147483647). Higher numbers indicate // higher priority. // // For more information about setting task priority, see Setting Task Priority // (http://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) // in the Amazon Simple Workflow Developer Guide. DefaultTaskPriority *string `locationName:"defaultTaskPriority" type:"string"` // If set, specifies the default maximum duration of decision tasks for this // workflow type. This default can be overridden when starting a workflow execution // using the StartWorkflowExecution action or the StartChildWorkflowExecution // decision. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. DefaultTaskStartToCloseTimeout *string `locationName:"defaultTaskStartToCloseTimeout" type:"string"` // Textual description of the workflow type. Description *string `locationName:"description" type:"string"` // The name of the domain in which to register the workflow type. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // The name of the workflow type. // // The specified string must not start or end with whitespace. It must not contain // a : (colon), / (slash), | (vertical bar), or any control characters (\u0000-\u001f // | \u007f - \u009f). Also, it must not contain the literal string quotarnquot. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // The version of the workflow type. // // The workflow type consists of the name and version, the combination of which // must be unique within the domain. To get a list of all currently registered // workflow types, use the ListWorkflowTypes action.The specified string must not start or end with whitespace. It must not contain // a : (colon), / (slash), | (vertical bar), or any control characters (\u0000-\u001f // | \u007f - \u009f). Also, it must not contain the literal string quotarnquot. // // Version is a required field Version *string `locationName:"version" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RegisterWorkflowTypeInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterWorkflowTypeInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RegisterWorkflowTypeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RegisterWorkflowTypeInput"} if s.DefaultLambdaRole != nil && len(*s.DefaultLambdaRole) < 1 { invalidParams.Add(request.NewErrParamMinLen("DefaultLambdaRole", 1)) } if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Version == nil { invalidParams.Add(request.NewErrParamRequired("Version")) } if s.Version != nil && len(*s.Version) < 1 { invalidParams.Add(request.NewErrParamMinLen("Version", 1)) } if s.DefaultTaskList != nil { if err := s.DefaultTaskList.Validate(); err != nil { invalidParams.AddNested("DefaultTaskList", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type RegisterWorkflowTypeOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RegisterWorkflowTypeOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RegisterWorkflowTypeOutput) GoString() string { return s.String() } // Provides details of the RequestCancelActivityTask decision. // // Access Control // // You can use IAM policies to control this decision's access to Amazon SWF // resources as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). type RequestCancelActivityTaskDecisionAttributes struct { _ struct{} `type:"structure"` // The activityId of the activity task to be canceled. // // ActivityId is a required field ActivityId *string `locationName:"activityId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RequestCancelActivityTaskDecisionAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestCancelActivityTaskDecisionAttributes) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RequestCancelActivityTaskDecisionAttributes) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RequestCancelActivityTaskDecisionAttributes"} if s.ActivityId == nil { invalidParams.Add(request.NewErrParamRequired("ActivityId")) } if s.ActivityId != nil && len(*s.ActivityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ActivityId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides details of the RequestCancelActivityTaskFailed event. type RequestCancelActivityTaskFailedEventAttributes struct { _ struct{} `type:"structure"` // The activityId provided in the RequestCancelActivityTask decision that failed. // // ActivityId is a required field ActivityId *string `locationName:"activityId" min:"1" type:"string" required:"true"` // The cause of the failure. This information is generated by the system and // can be useful for diagnostic purposes. // // If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it // lacked sufficient permissions. For details and example IAM policies, see // Using IAM to Manage Access to Amazon SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Cause is a required field Cause *string `locationName:"cause" type:"string" required:"true" enum:"RequestCancelActivityTaskFailedCause"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the RequestCancelActivityTask decision for this cancellation // request. This information can be useful for diagnosing problems by tracing // back the chain of events leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` } // String returns the string representation func (s RequestCancelActivityTaskFailedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestCancelActivityTaskFailedEventAttributes) GoString() string { return s.String() } // Provides details of the RequestCancelExternalWorkflowExecution decision. // // Access Control // // You can use IAM policies to control this decision's access to Amazon SWF // resources as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). type RequestCancelExternalWorkflowExecutionDecisionAttributes struct { _ struct{} `type:"structure"` // Optional. Data attached to the event that can be used by the decider in subsequent // workflow tasks. Control *string `locationName:"control" type:"string"` // The runId of the external workflow execution to cancel. RunId *string `locationName:"runId" type:"string"` // Required. The workflowId of the external workflow execution to cancel. // // WorkflowId is a required field WorkflowId *string `locationName:"workflowId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RequestCancelExternalWorkflowExecutionDecisionAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestCancelExternalWorkflowExecutionDecisionAttributes) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RequestCancelExternalWorkflowExecutionDecisionAttributes) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RequestCancelExternalWorkflowExecutionDecisionAttributes"} if s.WorkflowId == nil { invalidParams.Add(request.NewErrParamRequired("WorkflowId")) } if s.WorkflowId != nil && len(*s.WorkflowId) < 1 { invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides details of the RequestCancelExternalWorkflowExecutionFailed event. type RequestCancelExternalWorkflowExecutionFailedEventAttributes struct { _ struct{} `type:"structure"` // The cause of the failure. This information is generated by the system and // can be useful for diagnostic purposes. // // If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it // lacked sufficient permissions. For details and example IAM policies, see // Using IAM to Manage Access to Amazon SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Cause is a required field Cause *string `locationName:"cause" type:"string" required:"true" enum:"RequestCancelExternalWorkflowExecutionFailedCause"` Control *string `locationName:"control" type:"string"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the RequestCancelExternalWorkflowExecution decision for // this cancellation request. This information can be useful for diagnosing // problems by tracing back the chain of events leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // The ID of the RequestCancelExternalWorkflowExecutionInitiated event corresponding // to the RequestCancelExternalWorkflowExecution decision to cancel this external // workflow execution. This information can be useful for diagnosing problems // by tracing back the chain of events leading up to this event. // // InitiatedEventId is a required field InitiatedEventId *int64 `locationName:"initiatedEventId" type:"long" required:"true"` // The runId of the external workflow execution. RunId *string `locationName:"runId" type:"string"` // The workflowId of the external workflow to which the cancel request was to // be delivered. // // WorkflowId is a required field WorkflowId *string `locationName:"workflowId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RequestCancelExternalWorkflowExecutionFailedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestCancelExternalWorkflowExecutionFailedEventAttributes) GoString() string { return s.String() } // Provides details of the RequestCancelExternalWorkflowExecutionInitiated event. type RequestCancelExternalWorkflowExecutionInitiatedEventAttributes struct { _ struct{} `type:"structure"` // Optional. Data attached to the event that can be used by the decider in subsequent // workflow tasks. Control *string `locationName:"control" type:"string"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the RequestCancelExternalWorkflowExecution decision for // this cancellation request. This information can be useful for diagnosing // problems by tracing back the chain of events leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // The runId of the external workflow execution to be canceled. RunId *string `locationName:"runId" type:"string"` // The workflowId of the external workflow execution to be canceled. // // WorkflowId is a required field WorkflowId *string `locationName:"workflowId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RequestCancelExternalWorkflowExecutionInitiatedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestCancelExternalWorkflowExecutionInitiatedEventAttributes) GoString() string { return s.String() } type RequestCancelWorkflowExecutionInput struct { _ struct{} `type:"structure"` // The name of the domain containing the workflow execution to cancel. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // The runId of the workflow execution to cancel. RunId *string `locationName:"runId" type:"string"` // The workflowId of the workflow execution to cancel. // // WorkflowId is a required field WorkflowId *string `locationName:"workflowId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RequestCancelWorkflowExecutionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestCancelWorkflowExecutionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RequestCancelWorkflowExecutionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RequestCancelWorkflowExecutionInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.WorkflowId == nil { invalidParams.Add(request.NewErrParamRequired("WorkflowId")) } if s.WorkflowId != nil && len(*s.WorkflowId) < 1 { invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RequestCancelWorkflowExecutionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RequestCancelWorkflowExecutionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RequestCancelWorkflowExecutionOutput) GoString() string { return s.String() } type RespondActivityTaskCanceledInput struct { _ struct{} `type:"structure"` // Optional. Information about the cancellation. Details *string `locationName:"details" type:"string"` // The taskToken of the ActivityTask. // // taskToken is generated by the service and should be treated as an opaque // value. If the task is passed to another process, its taskToken must also // be passed. This enables it to provide its progress and respond with results. // // TaskToken is a required field TaskToken *string `locationName:"taskToken" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RespondActivityTaskCanceledInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RespondActivityTaskCanceledInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RespondActivityTaskCanceledInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RespondActivityTaskCanceledInput"} if s.TaskToken == nil { invalidParams.Add(request.NewErrParamRequired("TaskToken")) } if s.TaskToken != nil && len(*s.TaskToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("TaskToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RespondActivityTaskCanceledOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RespondActivityTaskCanceledOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RespondActivityTaskCanceledOutput) GoString() string { return s.String() } type RespondActivityTaskCompletedInput struct { _ struct{} `type:"structure"` // The result of the activity task. It is a free form string that is implementation // specific. Result *string `locationName:"result" type:"string"` // The taskToken of the ActivityTask. // // taskToken is generated by the service and should be treated as an opaque // value. If the task is passed to another process, its taskToken must also // be passed. This enables it to provide its progress and respond with results. // // TaskToken is a required field TaskToken *string `locationName:"taskToken" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RespondActivityTaskCompletedInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RespondActivityTaskCompletedInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RespondActivityTaskCompletedInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RespondActivityTaskCompletedInput"} if s.TaskToken == nil { invalidParams.Add(request.NewErrParamRequired("TaskToken")) } if s.TaskToken != nil && len(*s.TaskToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("TaskToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RespondActivityTaskCompletedOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RespondActivityTaskCompletedOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RespondActivityTaskCompletedOutput) GoString() string { return s.String() } type RespondActivityTaskFailedInput struct { _ struct{} `type:"structure"` // Optional. Detailed information about the failure. Details *string `locationName:"details" type:"string"` // Description of the error that may assist in diagnostics. Reason *string `locationName:"reason" type:"string"` // The taskToken of the ActivityTask. // // taskToken is generated by the service and should be treated as an opaque // value. If the task is passed to another process, its taskToken must also // be passed. This enables it to provide its progress and respond with results. // // TaskToken is a required field TaskToken *string `locationName:"taskToken" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RespondActivityTaskFailedInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RespondActivityTaskFailedInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RespondActivityTaskFailedInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RespondActivityTaskFailedInput"} if s.TaskToken == nil { invalidParams.Add(request.NewErrParamRequired("TaskToken")) } if s.TaskToken != nil && len(*s.TaskToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("TaskToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type RespondActivityTaskFailedOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RespondActivityTaskFailedOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RespondActivityTaskFailedOutput) GoString() string { return s.String() } type RespondDecisionTaskCompletedInput struct { _ struct{} `type:"structure"` // The list of decisions (possibly empty) made by the decider while processing // this decision task. See the docs for the decision structure for details. Decisions []*Decision `locationName:"decisions" type:"list"` // User defined context to add to workflow execution. ExecutionContext *string `locationName:"executionContext" type:"string"` // The taskToken from the DecisionTask. // // taskToken is generated by the service and should be treated as an opaque // value. If the task is passed to another process, its taskToken must also // be passed. This enables it to provide its progress and respond with results. // // TaskToken is a required field TaskToken *string `locationName:"taskToken" min:"1" type:"string" required:"true"` } // String returns the string representation func (s RespondDecisionTaskCompletedInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RespondDecisionTaskCompletedInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RespondDecisionTaskCompletedInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RespondDecisionTaskCompletedInput"} if s.TaskToken == nil { invalidParams.Add(request.NewErrParamRequired("TaskToken")) } if s.TaskToken != nil && len(*s.TaskToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("TaskToken", 1)) } if s.Decisions != nil { for i, v := range s.Decisions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Decisions", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type RespondDecisionTaskCompletedOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RespondDecisionTaskCompletedOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RespondDecisionTaskCompletedOutput) GoString() string { return s.String() } // Provides details of the ScheduleActivityTask decision. // // Access Control // // You can use IAM policies to control this decision's access to Amazon SWF // resources as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the following parameters by using a Condition element with // the appropriate keys. activityType.name: String constraint. The key is // swf:activityType.name. // activityType.version: String constraint. The key is swf:activityType.version. // // taskList: String constraint. The key is swf:taskList.name. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). type ScheduleActivityTaskDecisionAttributes struct { _ struct{} `type:"structure"` // Required. The activityId of the activity task. // // The specified string must not start or end with whitespace. It must not contain // a : (colon), / (slash), | (vertical bar), or any control characters (\u0000-\u001f // | \u007f - \u009f). Also, it must not contain the literal string quotarnquot. // // ActivityId is a required field ActivityId *string `locationName:"activityId" min:"1" type:"string" required:"true"` // Required. The type of the activity task to schedule. // // ActivityType is a required field ActivityType *ActivityType `locationName:"activityType" type:"structure" required:"true"` // Optional. Data attached to the event that can be used by the decider in subsequent // workflow tasks. This data is not sent to the activity. Control *string `locationName:"control" type:"string"` // If set, specifies the maximum time before which a worker processing a task // of this type must report progress by calling RecordActivityTaskHeartbeat. // If the timeout is exceeded, the activity task is automatically timed out. // If the worker subsequently attempts to record a heartbeat or returns a result, // it will be ignored. This overrides the default heartbeat timeout specified // when registering the activity type using RegisterActivityType. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. HeartbeatTimeout *string `locationName:"heartbeatTimeout" type:"string"` // The input provided to the activity task. Input *string `locationName:"input" type:"string"` // The maximum duration for this activity task. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. // // A schedule-to-close timeout for this activity task must be specified either // as a default for the activity type or through this field. If neither this // field is set nor a default schedule-to-close timeout was specified at registration // time then a fault will be returned. ScheduleToCloseTimeout *string `locationName:"scheduleToCloseTimeout" type:"string"` // Optional. If set, specifies the maximum duration the activity task can wait // to be assigned to a worker. This overrides the default schedule-to-start // timeout specified when registering the activity type using RegisterActivityType. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. // // A schedule-to-start timeout for this activity task must be specified either // as a default for the activity type or through this field. If neither this // field is set nor a default schedule-to-start timeout was specified at registration // time then a fault will be returned. ScheduleToStartTimeout *string `locationName:"scheduleToStartTimeout" type:"string"` // If set, specifies the maximum duration a worker may take to process this // activity task. This overrides the default start-to-close timeout specified // when registering the activity type using RegisterActivityType. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. // // A start-to-close timeout for this activity task must be specified either // as a default for the activity type or through this field. If neither this // field is set nor a default start-to-close timeout was specified at registration // time then a fault will be returned. StartToCloseTimeout *string `locationName:"startToCloseTimeout" type:"string"` // If set, specifies the name of the task list in which to schedule the activity // task. If not specified, the defaultTaskList registered with the activity // type will be used. // // A task list for this activity task must be specified either as a default // for the activity type or through this field. If neither this field is set // nor a default task list was specified at registration time then a fault will // be returned.The specified string must not start or end with whitespace. It must not contain // a : (colon), / (slash), | (vertical bar), or any control characters (\u0000-\u001f // | \u007f - \u009f). Also, it must not contain the literal string quotarnquot. TaskList *TaskList `locationName:"taskList" type:"structure"` // Optional. If set, specifies the priority with which the activity task is // to be assigned to a worker. This overrides the defaultTaskPriority specified // when registering the activity type using RegisterActivityType. Valid values // are integers that range from Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE // (2147483647). Higher numbers indicate higher priority. // // For more information about setting task priority, see Setting Task Priority // (http://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) // in the Amazon Simple Workflow Developer Guide. TaskPriority *string `locationName:"taskPriority" type:"string"` } // String returns the string representation func (s ScheduleActivityTaskDecisionAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduleActivityTaskDecisionAttributes) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ScheduleActivityTaskDecisionAttributes) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ScheduleActivityTaskDecisionAttributes"} if s.ActivityId == nil { invalidParams.Add(request.NewErrParamRequired("ActivityId")) } if s.ActivityId != nil && len(*s.ActivityId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ActivityId", 1)) } if s.ActivityType == nil { invalidParams.Add(request.NewErrParamRequired("ActivityType")) } if s.ActivityType != nil { if err := s.ActivityType.Validate(); err != nil { invalidParams.AddNested("ActivityType", err.(request.ErrInvalidParams)) } } if s.TaskList != nil { if err := s.TaskList.Validate(); err != nil { invalidParams.AddNested("TaskList", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides details of the ScheduleActivityTaskFailed event. type ScheduleActivityTaskFailedEventAttributes struct { _ struct{} `type:"structure"` // The activityId provided in the ScheduleActivityTask decision that failed. // // ActivityId is a required field ActivityId *string `locationName:"activityId" min:"1" type:"string" required:"true"` // The activity type provided in the ScheduleActivityTask decision that failed. // // ActivityType is a required field ActivityType *ActivityType `locationName:"activityType" type:"structure" required:"true"` // The cause of the failure. This information is generated by the system and // can be useful for diagnostic purposes. // // If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it // lacked sufficient permissions. For details and example IAM policies, see // Using IAM to Manage Access to Amazon SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Cause is a required field Cause *string `locationName:"cause" type:"string" required:"true" enum:"ScheduleActivityTaskFailedCause"` // The ID of the DecisionTaskCompleted event corresponding to the decision that // resulted in the scheduling of this activity task. This information can be // useful for diagnosing problems by tracing back the chain of events leading // up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` } // String returns the string representation func (s ScheduleActivityTaskFailedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduleActivityTaskFailedEventAttributes) GoString() string { return s.String() } // Provides details of the ScheduleLambdaFunction decision. // // Access Control // // You can use IAM policies to control this decision's access to Amazon SWF // resources as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the following parameters by using a Condition element with // the appropriate keys. activityType.name: String constraint. The key is // swf:activityType.name. // activityType.version: String constraint. The key is swf:activityType.version. // // taskList: String constraint. The key is swf:taskList.name. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). type ScheduleLambdaFunctionDecisionAttributes struct { _ struct{} `type:"structure"` // Required. The SWF id of the AWS Lambda task. // // The specified string must not start or end with whitespace. It must not contain // a : (colon), / (slash), | (vertical bar), or any control characters (\u0000-\u001f // | \u007f - \u009f). Also, it must not contain the literal string quotarnquot. // // Id is a required field Id *string `locationName:"id" min:"1" type:"string" required:"true"` // The input provided to the AWS Lambda function. Input *string `locationName:"input" min:"1" type:"string"` // Required. The name of the AWS Lambda function to invoke. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // If set, specifies the maximum duration the function may take to execute. StartToCloseTimeout *string `locationName:"startToCloseTimeout" type:"string"` } // String returns the string representation func (s ScheduleLambdaFunctionDecisionAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduleLambdaFunctionDecisionAttributes) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ScheduleLambdaFunctionDecisionAttributes) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ScheduleLambdaFunctionDecisionAttributes"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } if s.Input != nil && len(*s.Input) < 1 { invalidParams.Add(request.NewErrParamMinLen("Input", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides details for the ScheduleLambdaFunctionFailed event. type ScheduleLambdaFunctionFailedEventAttributes struct { _ struct{} `type:"structure"` // The cause of the failure. This information is generated by the system and // can be useful for diagnostic purposes. // // If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it // lacked sufficient permissions. For details and example IAM policies, see // Using IAM to Manage Access to Amazon SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Cause is a required field Cause *string `locationName:"cause" type:"string" required:"true" enum:"ScheduleLambdaFunctionFailedCause"` // The ID of the DecisionTaskCompleted event corresponding to the decision that // resulted in the scheduling of this AWS Lambda function. This information // can be useful for diagnosing problems by tracing back the chain of events // leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // The unique Amazon SWF ID of the AWS Lambda task. // // Id is a required field Id *string `locationName:"id" min:"1" type:"string" required:"true"` // The name of the scheduled AWS Lambda function. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` } // String returns the string representation func (s ScheduleLambdaFunctionFailedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ScheduleLambdaFunctionFailedEventAttributes) GoString() string { return s.String() } // Provides details of the SignalExternalWorkflowExecution decision. // // Access Control // // You can use IAM policies to control this decision's access to Amazon SWF // resources as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). type SignalExternalWorkflowExecutionDecisionAttributes struct { _ struct{} `type:"structure"` // Optional. Data attached to the event that can be used by the decider in subsequent // decision tasks. Control *string `locationName:"control" type:"string"` // Optional. Input data to be provided with the signal. The target workflow // execution will use the signal name and input data to process the signal. Input *string `locationName:"input" type:"string"` // The runId of the workflow execution to be signaled. RunId *string `locationName:"runId" type:"string"` // Required. The name of the signal.The target workflow execution will use the // signal name and input to process the signal. // // SignalName is a required field SignalName *string `locationName:"signalName" min:"1" type:"string" required:"true"` // Required. The workflowId of the workflow execution to be signaled. // // WorkflowId is a required field WorkflowId *string `locationName:"workflowId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s SignalExternalWorkflowExecutionDecisionAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SignalExternalWorkflowExecutionDecisionAttributes) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SignalExternalWorkflowExecutionDecisionAttributes) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SignalExternalWorkflowExecutionDecisionAttributes"} if s.SignalName == nil { invalidParams.Add(request.NewErrParamRequired("SignalName")) } if s.SignalName != nil && len(*s.SignalName) < 1 { invalidParams.Add(request.NewErrParamMinLen("SignalName", 1)) } if s.WorkflowId == nil { invalidParams.Add(request.NewErrParamRequired("WorkflowId")) } if s.WorkflowId != nil && len(*s.WorkflowId) < 1 { invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides details of the SignalExternalWorkflowExecutionFailed event. type SignalExternalWorkflowExecutionFailedEventAttributes struct { _ struct{} `type:"structure"` // The cause of the failure. This information is generated by the system and // can be useful for diagnostic purposes. // // If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it // lacked sufficient permissions. For details and example IAM policies, see // Using IAM to Manage Access to Amazon SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Cause is a required field Cause *string `locationName:"cause" type:"string" required:"true" enum:"SignalExternalWorkflowExecutionFailedCause"` Control *string `locationName:"control" type:"string"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the SignalExternalWorkflowExecution decision for this signal. // This information can be useful for diagnosing problems by tracing back the // chain of events leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // The ID of the SignalExternalWorkflowExecutionInitiated event corresponding // to the SignalExternalWorkflowExecution decision to request this signal. This // information can be useful for diagnosing problems by tracing back the chain // of events leading up to this event. // // InitiatedEventId is a required field InitiatedEventId *int64 `locationName:"initiatedEventId" type:"long" required:"true"` // The runId of the external workflow execution that the signal was being delivered // to. RunId *string `locationName:"runId" type:"string"` // The workflowId of the external workflow execution that the signal was being // delivered to. // // WorkflowId is a required field WorkflowId *string `locationName:"workflowId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s SignalExternalWorkflowExecutionFailedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SignalExternalWorkflowExecutionFailedEventAttributes) GoString() string { return s.String() } // Provides details of the SignalExternalWorkflowExecutionInitiated event. type SignalExternalWorkflowExecutionInitiatedEventAttributes struct { _ struct{} `type:"structure"` // Optional. data attached to the event that can be used by the decider in subsequent // decision tasks. Control *string `locationName:"control" type:"string"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the SignalExternalWorkflowExecution decision for this signal. // This information can be useful for diagnosing problems by tracing back the // chain of events leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // Input provided to the signal (if any). Input *string `locationName:"input" type:"string"` // The runId of the external workflow execution to send the signal to. RunId *string `locationName:"runId" type:"string"` // The name of the signal. // // SignalName is a required field SignalName *string `locationName:"signalName" min:"1" type:"string" required:"true"` // The workflowId of the external workflow execution. // // WorkflowId is a required field WorkflowId *string `locationName:"workflowId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s SignalExternalWorkflowExecutionInitiatedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SignalExternalWorkflowExecutionInitiatedEventAttributes) GoString() string { return s.String() } type SignalWorkflowExecutionInput struct { _ struct{} `type:"structure"` // The name of the domain containing the workflow execution to signal. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // Data to attach to the WorkflowExecutionSignaled event in the target workflow // execution's history. Input *string `locationName:"input" type:"string"` // The runId of the workflow execution to signal. RunId *string `locationName:"runId" type:"string"` // The name of the signal. This name must be meaningful to the target workflow. // // SignalName is a required field SignalName *string `locationName:"signalName" min:"1" type:"string" required:"true"` // The workflowId of the workflow execution to signal. // // WorkflowId is a required field WorkflowId *string `locationName:"workflowId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s SignalWorkflowExecutionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SignalWorkflowExecutionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SignalWorkflowExecutionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SignalWorkflowExecutionInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.SignalName == nil { invalidParams.Add(request.NewErrParamRequired("SignalName")) } if s.SignalName != nil && len(*s.SignalName) < 1 { invalidParams.Add(request.NewErrParamMinLen("SignalName", 1)) } if s.WorkflowId == nil { invalidParams.Add(request.NewErrParamRequired("WorkflowId")) } if s.WorkflowId != nil && len(*s.WorkflowId) < 1 { invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type SignalWorkflowExecutionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s SignalWorkflowExecutionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SignalWorkflowExecutionOutput) GoString() string { return s.String() } // Provides details of the StartChildWorkflowExecution decision. // // Access Control // // You can use IAM policies to control this decision's access to Amazon SWF // resources as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * Constrain the following parameters by using a Condition element with // the appropriate keys. tagList.member.N: The key is "swf:tagList.N" where // N is the tag number from 0 to 4, inclusive. // taskList: String constraint. The key is swf:taskList.name. // workflowType.name: String constraint. The key is swf:workflowType.name. // workflowType.version: String constraint. The key is swf:workflowType.version. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). type StartChildWorkflowExecutionDecisionAttributes struct { _ struct{} `type:"structure"` // Optional. If set, specifies the policy to use for the child workflow executions // if the workflow execution being started is terminated by calling the TerminateWorkflowExecution // action explicitly or due to an expired timeout. This policy overrides the // default child policy specified when registering the workflow type using RegisterWorkflowType. // // The supported child policies are: // // * TERMINATE: the child executions will be terminated. // * REQUEST_CANCEL: a request to cancel will be attempted for each child // execution by recording a WorkflowExecutionCancelRequested event in its // history. It is up to the decider to take appropriate actions when it receives // an execution history with this event. // * ABANDON: no action will be taken. The child executions will continue // to run. // A child policy for this workflow execution must be specified either as a // default for the workflow type or through this parameter. If neither this // parameter is set nor a default child policy was specified at registration // time then a fault will be returned. ChildPolicy *string `locationName:"childPolicy" type:"string" enum:"ChildPolicy"` // Optional. Data attached to the event that can be used by the decider in subsequent // workflow tasks. This data is not sent to the child workflow execution. Control *string `locationName:"control" type:"string"` // The total duration for this workflow execution. This overrides the defaultExecutionStartToCloseTimeout // specified when registering the workflow type. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. // // An execution start-to-close timeout for this workflow execution must be specified // either as a default for the workflow type or through this parameter. If neither // this parameter is set nor a default execution start-to-close timeout was // specified at registration time then a fault will be returned. ExecutionStartToCloseTimeout *string `locationName:"executionStartToCloseTimeout" type:"string"` // The input to be provided to the workflow execution. Input *string `locationName:"input" type:"string"` // The ARN of an IAM role that authorizes Amazon SWF to invoke AWS Lambda functions. // // In order for this workflow execution to invoke AWS Lambda functions, an appropriate // IAM role must be specified either as a default for the workflow type or through // this field. LambdaRole *string `locationName:"lambdaRole" min:"1" type:"string"` // The list of tags to associate with the child workflow execution. A maximum // of 5 tags can be specified. You can list workflow executions with a specific // tag by calling ListOpenWorkflowExecutions or ListClosedWorkflowExecutions // and specifying a TagFilter. TagList []*string `locationName:"tagList" type:"list"` // The name of the task list to be used for decision tasks of the child workflow // execution. // // A task list for this workflow execution must be specified either as a default // for the workflow type or through this parameter. If neither this parameter // is set nor a default task list was specified at registration time then a // fault will be returned.The specified string must not start or end with whitespace. It must not contain // a : (colon), / (slash), | (vertical bar), or any control characters (\u0000-\u001f // | \u007f - \u009f). Also, it must not contain the literal string quotarnquot. TaskList *TaskList `locationName:"taskList" type:"structure"` // Optional. A task priority that, if set, specifies the priority for a decision // task of this workflow execution. This overrides the defaultTaskPriority specified // when registering the workflow type. Valid values are integers that range // from Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE (2147483647). // Higher numbers indicate higher priority. // // For more information about setting task priority, see Setting Task Priority // (http://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) // in the Amazon Simple Workflow Developer Guide. TaskPriority *string `locationName:"taskPriority" type:"string"` // Specifies the maximum duration of decision tasks for this workflow execution. // This parameter overrides the defaultTaskStartToCloseTimout specified when // registering the workflow type using RegisterWorkflowType. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. // // A task start-to-close timeout for this workflow execution must be specified // either as a default for the workflow type or through this parameter. If neither // this parameter is set nor a default task start-to-close timeout was specified // at registration time then a fault will be returned. TaskStartToCloseTimeout *string `locationName:"taskStartToCloseTimeout" type:"string"` // Required. The workflowId of the workflow execution. // // The specified string must not start or end with whitespace. It must not contain // a : (colon), / (slash), | (vertical bar), or any control characters (\u0000-\u001f // | \u007f - \u009f). Also, it must not contain the literal string quotarnquot. // // WorkflowId is a required field WorkflowId *string `locationName:"workflowId" min:"1" type:"string" required:"true"` // Required. The type of the workflow execution to be started. // // WorkflowType is a required field WorkflowType *WorkflowType `locationName:"workflowType" type:"structure" required:"true"` } // String returns the string representation func (s StartChildWorkflowExecutionDecisionAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartChildWorkflowExecutionDecisionAttributes) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartChildWorkflowExecutionDecisionAttributes) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartChildWorkflowExecutionDecisionAttributes"} if s.LambdaRole != nil && len(*s.LambdaRole) < 1 { invalidParams.Add(request.NewErrParamMinLen("LambdaRole", 1)) } if s.WorkflowId == nil { invalidParams.Add(request.NewErrParamRequired("WorkflowId")) } if s.WorkflowId != nil && len(*s.WorkflowId) < 1 { invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 1)) } if s.WorkflowType == nil { invalidParams.Add(request.NewErrParamRequired("WorkflowType")) } if s.TaskList != nil { if err := s.TaskList.Validate(); err != nil { invalidParams.AddNested("TaskList", err.(request.ErrInvalidParams)) } } if s.WorkflowType != nil { if err := s.WorkflowType.Validate(); err != nil { invalidParams.AddNested("WorkflowType", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides details of the StartChildWorkflowExecutionFailed event. type StartChildWorkflowExecutionFailedEventAttributes struct { _ struct{} `type:"structure"` // The cause of the failure. This information is generated by the system and // can be useful for diagnostic purposes. // // If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it // lacked sufficient permissions. For details and example IAM policies, see // Using IAM to Manage Access to Amazon SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Cause is a required field Cause *string `locationName:"cause" type:"string" required:"true" enum:"StartChildWorkflowExecutionFailedCause"` Control *string `locationName:"control" type:"string"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the StartChildWorkflowExecution decision to request this // child workflow execution. This information can be useful for diagnosing problems // by tracing back the cause of events. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // The ID of the StartChildWorkflowExecutionInitiated event corresponding to // the StartChildWorkflowExecution decision to start this child workflow execution. // This information can be useful for diagnosing problems by tracing back the // chain of events leading up to this event. // // InitiatedEventId is a required field InitiatedEventId *int64 `locationName:"initiatedEventId" type:"long" required:"true"` // The workflowId of the child workflow execution. // // WorkflowId is a required field WorkflowId *string `locationName:"workflowId" min:"1" type:"string" required:"true"` // The workflow type provided in the StartChildWorkflowExecution decision that // failed. // // WorkflowType is a required field WorkflowType *WorkflowType `locationName:"workflowType" type:"structure" required:"true"` } // String returns the string representation func (s StartChildWorkflowExecutionFailedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartChildWorkflowExecutionFailedEventAttributes) GoString() string { return s.String() } // Provides details of the StartChildWorkflowExecutionInitiated event. type StartChildWorkflowExecutionInitiatedEventAttributes struct { _ struct{} `type:"structure"` // The policy to use for the child workflow executions if this execution gets // terminated by explicitly calling the TerminateWorkflowExecution action or // due to an expired timeout. // // The supported child policies are: // // * TERMINATE: the child executions will be terminated. // * REQUEST_CANCEL: a request to cancel will be attempted for each child // execution by recording a WorkflowExecutionCancelRequested event in its // history. It is up to the decider to take appropriate actions when it receives // an execution history with this event. // * ABANDON: no action will be taken. The child executions will continue // to run. // // ChildPolicy is a required field ChildPolicy *string `locationName:"childPolicy" type:"string" required:"true" enum:"ChildPolicy"` // Optional. Data attached to the event that can be used by the decider in subsequent // decision tasks. This data is not sent to the activity. Control *string `locationName:"control" type:"string"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the StartChildWorkflowExecution decision to request this // child workflow execution. This information can be useful for diagnosing problems // by tracing back the cause of events. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // The maximum duration for the child workflow execution. If the workflow execution // is not closed within this duration, it will be timed out and force terminated. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. ExecutionStartToCloseTimeout *string `locationName:"executionStartToCloseTimeout" type:"string"` // The inputs provided to the child workflow execution (if any). Input *string `locationName:"input" type:"string"` // The IAM role attached to this workflow execution to use when invoking AWS // Lambda functions. LambdaRole *string `locationName:"lambdaRole" min:"1" type:"string"` // The list of tags to associated with the child workflow execution. TagList []*string `locationName:"tagList" type:"list"` // The name of the task list used for the decision tasks of the child workflow // execution. // // TaskList is a required field TaskList *TaskList `locationName:"taskList" type:"structure" required:"true"` // Optional. The priority assigned for the decision tasks for this workflow // execution. Valid values are integers that range from Java's Integer.MIN_VALUE // (-2147483648) to Integer.MAX_VALUE (2147483647). Higher numbers indicate // higher priority. // // For more information about setting task priority, see Setting Task Priority // (http://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) // in the Amazon Simple Workflow Developer Guide. TaskPriority *string `locationName:"taskPriority" type:"string"` // The maximum duration allowed for the decision tasks for this workflow execution. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. TaskStartToCloseTimeout *string `locationName:"taskStartToCloseTimeout" type:"string"` // The workflowId of the child workflow execution. // // WorkflowId is a required field WorkflowId *string `locationName:"workflowId" min:"1" type:"string" required:"true"` // The type of the child workflow execution. // // WorkflowType is a required field WorkflowType *WorkflowType `locationName:"workflowType" type:"structure" required:"true"` } // String returns the string representation func (s StartChildWorkflowExecutionInitiatedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartChildWorkflowExecutionInitiatedEventAttributes) GoString() string { return s.String() } // Provides details for the StartLambdaFunctionFailed event. type StartLambdaFunctionFailedEventAttributes struct { _ struct{} `type:"structure"` // The cause of the failure. This information is generated by the system and // can be useful for diagnostic purposes. // // If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it // lacked sufficient permissions. For details and example IAM policies, see // Using IAM to Manage Access to Amazon SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). Cause *string `locationName:"cause" type:"string" enum:"StartLambdaFunctionFailedCause"` // The error message (if any). Message *string `locationName:"message" type:"string"` // The ID of the LambdaFunctionScheduled event that was recorded when this AWS // Lambda function was scheduled. This information can be useful for diagnosing // problems by tracing back the chain of events leading up to this event. ScheduledEventId *int64 `locationName:"scheduledEventId" type:"long"` } // String returns the string representation func (s StartLambdaFunctionFailedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartLambdaFunctionFailedEventAttributes) GoString() string { return s.String() } // Provides details of the StartTimer decision. // // Access Control // // You can use IAM policies to control this decision's access to Amazon SWF // resources as follows: // // * Use a Resource element with the domain name to limit the action to only // specified domains. // * Use an Action element to allow or deny permission to call this action. // // * You cannot use an IAM policy to constrain this action's parameters. // // If the caller does not have sufficient permissions to invoke the action, // or the parameter values fall outside the specified constraints, the action // fails. The associated event attribute's cause parameter will be set to OPERATION_NOT_PERMITTED. // For details and example IAM policies, see Using IAM to Manage Access to Amazon // SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). type StartTimerDecisionAttributes struct { _ struct{} `type:"structure"` // Optional. Data attached to the event that can be used by the decider in subsequent // workflow tasks. Control *string `locationName:"control" type:"string"` // Required. The duration to wait before firing the timer. // // The duration is specified in seconds; an integer greater than or equal to // 0. // // StartToFireTimeout is a required field StartToFireTimeout *string `locationName:"startToFireTimeout" min:"1" type:"string" required:"true"` // Required. The unique ID of the timer. // // The specified string must not start or end with whitespace. It must not contain // a : (colon), / (slash), | (vertical bar), or any control characters (\u0000-\u001f // | \u007f - \u009f). Also, it must not contain the literal string quotarnquot. // // TimerId is a required field TimerId *string `locationName:"timerId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s StartTimerDecisionAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartTimerDecisionAttributes) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartTimerDecisionAttributes) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartTimerDecisionAttributes"} if s.StartToFireTimeout == nil { invalidParams.Add(request.NewErrParamRequired("StartToFireTimeout")) } if s.StartToFireTimeout != nil && len(*s.StartToFireTimeout) < 1 { invalidParams.Add(request.NewErrParamMinLen("StartToFireTimeout", 1)) } if s.TimerId == nil { invalidParams.Add(request.NewErrParamRequired("TimerId")) } if s.TimerId != nil && len(*s.TimerId) < 1 { invalidParams.Add(request.NewErrParamMinLen("TimerId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides details of the StartTimerFailed event. type StartTimerFailedEventAttributes struct { _ struct{} `type:"structure"` // The cause of the failure. This information is generated by the system and // can be useful for diagnostic purposes. // // If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it // lacked sufficient permissions. For details and example IAM policies, see // Using IAM to Manage Access to Amazon SWF Workflows (http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html). // // Cause is a required field Cause *string `locationName:"cause" type:"string" required:"true" enum:"StartTimerFailedCause"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the StartTimer decision for this activity task. This information // can be useful for diagnosing problems by tracing back the chain of events // leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // The timerId provided in the StartTimer decision that failed. // // TimerId is a required field TimerId *string `locationName:"timerId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s StartTimerFailedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartTimerFailedEventAttributes) GoString() string { return s.String() } type StartWorkflowExecutionInput struct { _ struct{} `type:"structure"` // If set, specifies the policy to use for the child workflow executions of // this workflow execution if it is terminated, by calling the TerminateWorkflowExecution // action explicitly or due to an expired timeout. This policy overrides the // default child policy specified when registering the workflow type using RegisterWorkflowType. // // The supported child policies are: // // * TERMINATE: the child executions will be terminated. // * REQUEST_CANCEL: a request to cancel will be attempted for each child // execution by recording a WorkflowExecutionCancelRequested event in its // history. It is up to the decider to take appropriate actions when it receives // an execution history with this event. // * ABANDON: no action will be taken. The child executions will continue // to run. // A child policy for this workflow execution must be specified either as a // default for the workflow type or through this parameter. If neither this // parameter is set nor a default child policy was specified at registration // time then a fault will be returned. ChildPolicy *string `locationName:"childPolicy" type:"string" enum:"ChildPolicy"` // The name of the domain in which the workflow execution is created. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // The total duration for this workflow execution. This overrides the defaultExecutionStartToCloseTimeout // specified when registering the workflow type. // // The duration is specified in seconds; an integer greater than or equal to // 0. Exceeding this limit will cause the workflow execution to time out. Unlike // some of the other timeout parameters in Amazon SWF, you cannot specify a // value of "NONE" for this timeout; there is a one-year max limit on the time // that a workflow execution can run. // // An execution start-to-close timeout must be specified either through this // parameter or as a default when the workflow type is registered. If neither // this parameter nor a default execution start-to-close timeout is specified, // a fault is returned. ExecutionStartToCloseTimeout *string `locationName:"executionStartToCloseTimeout" type:"string"` // The input for the workflow execution. This is a free form string which should // be meaningful to the workflow you are starting. This input is made available // to the new workflow execution in the WorkflowExecutionStarted history event. Input *string `locationName:"input" type:"string"` // The ARN of an IAM role that authorizes Amazon SWF to invoke AWS Lambda functions. // // In order for this workflow execution to invoke AWS Lambda functions, an appropriate // IAM role must be specified either as a default for the workflow type or through // this field. LambdaRole *string `locationName:"lambdaRole" min:"1" type:"string"` // The list of tags to associate with the workflow execution. You can specify // a maximum of 5 tags. You can list workflow executions with a specific tag // by calling ListOpenWorkflowExecutions or ListClosedWorkflowExecutions and // specifying a TagFilter. TagList []*string `locationName:"tagList" type:"list"` // The task list to use for the decision tasks generated for this workflow execution. // This overrides the defaultTaskList specified when registering the workflow // type. // // A task list for this workflow execution must be specified either as a default // for the workflow type or through this parameter. If neither this parameter // is set nor a default task list was specified at registration time then a // fault will be returned.The specified string must not start or end with whitespace. It must not contain // a : (colon), / (slash), | (vertical bar), or any control characters (\u0000-\u001f // | \u007f - \u009f). Also, it must not contain the literal string quotarnquot. TaskList *TaskList `locationName:"taskList" type:"structure"` // The task priority to use for this workflow execution. This will override // any default priority that was assigned when the workflow type was registered. // If not set, then the default task priority for the workflow type will be // used. Valid values are integers that range from Java's Integer.MIN_VALUE // (-2147483648) to Integer.MAX_VALUE (2147483647). Higher numbers indicate // higher priority. // // For more information about setting task priority, see Setting Task Priority // (http://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) // in the Amazon Simple Workflow Developer Guide. TaskPriority *string `locationName:"taskPriority" type:"string"` // Specifies the maximum duration of decision tasks for this workflow execution. // This parameter overrides the defaultTaskStartToCloseTimout specified when // registering the workflow type using RegisterWorkflowType. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. // // A task start-to-close timeout for this workflow execution must be specified // either as a default for the workflow type or through this parameter. If neither // this parameter is set nor a default task start-to-close timeout was specified // at registration time then a fault will be returned. TaskStartToCloseTimeout *string `locationName:"taskStartToCloseTimeout" type:"string"` // The user defined identifier associated with the workflow execution. You can // use this to associate a custom identifier with the workflow execution. You // may specify the same identifier if a workflow execution is logically a restart // of a previous execution. You cannot have two open workflow executions with // the same workflowId at the same time. // // The specified string must not start or end with whitespace. It must not contain // a : (colon), / (slash), | (vertical bar), or any control characters (\u0000-\u001f // | \u007f - \u009f). Also, it must not contain the literal string quotarnquot. // // WorkflowId is a required field WorkflowId *string `locationName:"workflowId" min:"1" type:"string" required:"true"` // The type of the workflow to start. // // WorkflowType is a required field WorkflowType *WorkflowType `locationName:"workflowType" type:"structure" required:"true"` } // String returns the string representation func (s StartWorkflowExecutionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartWorkflowExecutionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartWorkflowExecutionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartWorkflowExecutionInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.LambdaRole != nil && len(*s.LambdaRole) < 1 { invalidParams.Add(request.NewErrParamMinLen("LambdaRole", 1)) } if s.WorkflowId == nil { invalidParams.Add(request.NewErrParamRequired("WorkflowId")) } if s.WorkflowId != nil && len(*s.WorkflowId) < 1 { invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 1)) } if s.WorkflowType == nil { invalidParams.Add(request.NewErrParamRequired("WorkflowType")) } if s.TaskList != nil { if err := s.TaskList.Validate(); err != nil { invalidParams.AddNested("TaskList", err.(request.ErrInvalidParams)) } } if s.WorkflowType != nil { if err := s.WorkflowType.Validate(); err != nil { invalidParams.AddNested("WorkflowType", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies the runId of a workflow execution. type StartWorkflowExecutionOutput struct { _ struct{} `type:"structure"` // The runId of a workflow execution. This ID is generated by the service and // can be used to uniquely identify the workflow execution within a domain. RunId *string `locationName:"runId" min:"1" type:"string"` } // String returns the string representation func (s StartWorkflowExecutionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartWorkflowExecutionOutput) GoString() string { return s.String() } // Used to filter the workflow executions in visibility APIs based on a tag. type TagFilter struct { _ struct{} `type:"structure"` // Required. Specifies the tag that must be associated with the execution for // it to meet the filter criteria. // // Tag is a required field Tag *string `locationName:"tag" min:"1" type:"string" required:"true"` } // String returns the string representation func (s TagFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TagFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TagFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TagFilter"} if s.Tag == nil { invalidParams.Add(request.NewErrParamRequired("Tag")) } if s.Tag != nil && len(*s.Tag) < 1 { invalidParams.Add(request.NewErrParamMinLen("Tag", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a task list. type TaskList struct { _ struct{} `type:"structure"` // The name of the task list. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` } // String returns the string representation func (s TaskList) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TaskList) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TaskList) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TaskList"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type TerminateWorkflowExecutionInput struct { _ struct{} `type:"structure"` // If set, specifies the policy to use for the child workflow executions of // the workflow execution being terminated. This policy overrides the child // policy specified for the workflow execution at registration time or when // starting the execution. // // The supported child policies are: // // * TERMINATE: the child executions will be terminated. // * REQUEST_CANCEL: a request to cancel will be attempted for each child // execution by recording a WorkflowExecutionCancelRequested event in its // history. It is up to the decider to take appropriate actions when it receives // an execution history with this event. // * ABANDON: no action will be taken. The child executions will continue // to run. // A child policy for this workflow execution must be specified either as a // default for the workflow type or through this parameter. If neither this // parameter is set nor a default child policy was specified at registration // time then a fault will be returned. ChildPolicy *string `locationName:"childPolicy" type:"string" enum:"ChildPolicy"` // Optional. Details for terminating the workflow execution. Details *string `locationName:"details" type:"string"` // The domain of the workflow execution to terminate. // // Domain is a required field Domain *string `locationName:"domain" min:"1" type:"string" required:"true"` // Optional. A descriptive reason for terminating the workflow execution. Reason *string `locationName:"reason" type:"string"` // The runId of the workflow execution to terminate. RunId *string `locationName:"runId" type:"string"` // The workflowId of the workflow execution to terminate. // // WorkflowId is a required field WorkflowId *string `locationName:"workflowId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s TerminateWorkflowExecutionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TerminateWorkflowExecutionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TerminateWorkflowExecutionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TerminateWorkflowExecutionInput"} if s.Domain == nil { invalidParams.Add(request.NewErrParamRequired("Domain")) } if s.Domain != nil && len(*s.Domain) < 1 { invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) } if s.WorkflowId == nil { invalidParams.Add(request.NewErrParamRequired("WorkflowId")) } if s.WorkflowId != nil && len(*s.WorkflowId) < 1 { invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type TerminateWorkflowExecutionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s TerminateWorkflowExecutionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TerminateWorkflowExecutionOutput) GoString() string { return s.String() } // Provides details of the TimerCanceled event. type TimerCanceledEventAttributes struct { _ struct{} `type:"structure"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the CancelTimer decision to cancel this timer. This information // can be useful for diagnosing problems by tracing back the chain of events // leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // The ID of the TimerStarted event that was recorded when this timer was started. // This information can be useful for diagnosing problems by tracing back the // chain of events leading up to this event. // // StartedEventId is a required field StartedEventId *int64 `locationName:"startedEventId" type:"long" required:"true"` // The unique ID of the timer that was canceled. // // TimerId is a required field TimerId *string `locationName:"timerId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s TimerCanceledEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TimerCanceledEventAttributes) GoString() string { return s.String() } // Provides details of the TimerFired event. type TimerFiredEventAttributes struct { _ struct{} `type:"structure"` // The ID of the TimerStarted event that was recorded when this timer was started. // This information can be useful for diagnosing problems by tracing back the // chain of events leading up to this event. // // StartedEventId is a required field StartedEventId *int64 `locationName:"startedEventId" type:"long" required:"true"` // The unique ID of the timer that fired. // // TimerId is a required field TimerId *string `locationName:"timerId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s TimerFiredEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TimerFiredEventAttributes) GoString() string { return s.String() } // Provides details of the TimerStarted event. type TimerStartedEventAttributes struct { _ struct{} `type:"structure"` // Optional. Data attached to the event that can be used by the decider in subsequent // workflow tasks. Control *string `locationName:"control" type:"string"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the StartTimer decision for this activity task. This information // can be useful for diagnosing problems by tracing back the chain of events // leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // The duration of time after which the timer will fire. // // The duration is specified in seconds; an integer greater than or equal to // 0. // // StartToFireTimeout is a required field StartToFireTimeout *string `locationName:"startToFireTimeout" min:"1" type:"string" required:"true"` // The unique ID of the timer that was started. // // TimerId is a required field TimerId *string `locationName:"timerId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s TimerStartedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TimerStartedEventAttributes) GoString() string { return s.String() } // Represents a workflow execution. type WorkflowExecution struct { _ struct{} `type:"structure"` // A system-generated unique identifier for the workflow execution. // // RunId is a required field RunId *string `locationName:"runId" min:"1" type:"string" required:"true"` // The user defined identifier associated with the workflow execution. // // WorkflowId is a required field WorkflowId *string `locationName:"workflowId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s WorkflowExecution) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowExecution) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *WorkflowExecution) Validate() error { invalidParams := request.ErrInvalidParams{Context: "WorkflowExecution"} if s.RunId == nil { invalidParams.Add(request.NewErrParamRequired("RunId")) } if s.RunId != nil && len(*s.RunId) < 1 { invalidParams.Add(request.NewErrParamMinLen("RunId", 1)) } if s.WorkflowId == nil { invalidParams.Add(request.NewErrParamRequired("WorkflowId")) } if s.WorkflowId != nil && len(*s.WorkflowId) < 1 { invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Provides details of the WorkflowExecutionCancelRequested event. type WorkflowExecutionCancelRequestedEventAttributes struct { _ struct{} `type:"structure"` // If set, indicates that the request to cancel the workflow execution was automatically // generated, and specifies the cause. This happens if the parent workflow execution // times out or is terminated, and the child policy is set to cancel child executions. Cause *string `locationName:"cause" type:"string" enum:"WorkflowExecutionCancelRequestedCause"` // The ID of the RequestCancelExternalWorkflowExecutionInitiated event corresponding // to the RequestCancelExternalWorkflowExecution decision to cancel this workflow // execution.The source event with this ID can be found in the history of the // source workflow execution. This information can be useful for diagnosing // problems by tracing back the chain of events leading up to this event. ExternalInitiatedEventId *int64 `locationName:"externalInitiatedEventId" type:"long"` // The external workflow execution for which the cancellation was requested. ExternalWorkflowExecution *WorkflowExecution `locationName:"externalWorkflowExecution" type:"structure"` } // String returns the string representation func (s WorkflowExecutionCancelRequestedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowExecutionCancelRequestedEventAttributes) GoString() string { return s.String() } // Provides details of the WorkflowExecutionCanceled event. type WorkflowExecutionCanceledEventAttributes struct { _ struct{} `type:"structure"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the CancelWorkflowExecution decision for this cancellation // request. This information can be useful for diagnosing problems by tracing // back the chain of events leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // Details for the cancellation (if any). Details *string `locationName:"details" type:"string"` } // String returns the string representation func (s WorkflowExecutionCanceledEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowExecutionCanceledEventAttributes) GoString() string { return s.String() } // Provides details of the WorkflowExecutionCompleted event. type WorkflowExecutionCompletedEventAttributes struct { _ struct{} `type:"structure"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the CompleteWorkflowExecution decision to complete this // execution. This information can be useful for diagnosing problems by tracing // back the chain of events leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // The result produced by the workflow execution upon successful completion. Result *string `locationName:"result" type:"string"` } // String returns the string representation func (s WorkflowExecutionCompletedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowExecutionCompletedEventAttributes) GoString() string { return s.String() } // The configuration settings for a workflow execution including timeout values, // tasklist etc. These configuration settings are determined from the defaults // specified when registering the workflow type and those specified when starting // the workflow execution. type WorkflowExecutionConfiguration struct { _ struct{} `type:"structure"` // The policy to use for the child workflow executions if this workflow execution // is terminated, by calling the TerminateWorkflowExecution action explicitly // or due to an expired timeout. // // The supported child policies are: // // * TERMINATE: the child executions will be terminated. // * REQUEST_CANCEL: a request to cancel will be attempted for each child // execution by recording a WorkflowExecutionCancelRequested event in its // history. It is up to the decider to take appropriate actions when it receives // an execution history with this event. // * ABANDON: no action will be taken. The child executions will continue // to run. // // ChildPolicy is a required field ChildPolicy *string `locationName:"childPolicy" type:"string" required:"true" enum:"ChildPolicy"` // The total duration for this workflow execution. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. // // ExecutionStartToCloseTimeout is a required field ExecutionStartToCloseTimeout *string `locationName:"executionStartToCloseTimeout" min:"1" type:"string" required:"true"` // The IAM role used by this workflow execution when invoking AWS Lambda functions. LambdaRole *string `locationName:"lambdaRole" min:"1" type:"string"` // The task list used for the decision tasks generated for this workflow execution. // // TaskList is a required field TaskList *TaskList `locationName:"taskList" type:"structure" required:"true"` // The priority assigned to decision tasks for this workflow execution. Valid // values are integers that range from Java's Integer.MIN_VALUE (-2147483648) // to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority. // // For more information about setting task priority, see Setting Task Priority // (http://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) // in the Amazon Simple Workflow Developer Guide. TaskPriority *string `locationName:"taskPriority" type:"string"` // The maximum duration allowed for decision tasks for this workflow execution. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. // // TaskStartToCloseTimeout is a required field TaskStartToCloseTimeout *string `locationName:"taskStartToCloseTimeout" min:"1" type:"string" required:"true"` } // String returns the string representation func (s WorkflowExecutionConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowExecutionConfiguration) GoString() string { return s.String() } // Provides details of the WorkflowExecutionContinuedAsNew event. type WorkflowExecutionContinuedAsNewEventAttributes struct { _ struct{} `type:"structure"` // The policy to use for the child workflow executions of the new execution // if it is terminated by calling the TerminateWorkflowExecution action explicitly // or due to an expired timeout. // // The supported child policies are: // // * TERMINATE: the child executions will be terminated. // * REQUEST_CANCEL: a request to cancel will be attempted for each child // execution by recording a WorkflowExecutionCancelRequested event in its // history. It is up to the decider to take appropriate actions when it receives // an execution history with this event. // * ABANDON: no action will be taken. The child executions will continue // to run. // // ChildPolicy is a required field ChildPolicy *string `locationName:"childPolicy" type:"string" required:"true" enum:"ChildPolicy"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the ContinueAsNewWorkflowExecution decision that started // this execution. This information can be useful for diagnosing problems by // tracing back the chain of events leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // The total duration allowed for the new workflow execution. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. ExecutionStartToCloseTimeout *string `locationName:"executionStartToCloseTimeout" type:"string"` // The input provided to the new workflow execution. Input *string `locationName:"input" type:"string"` // The IAM role attached to this workflow execution to use when invoking AWS // Lambda functions. LambdaRole *string `locationName:"lambdaRole" min:"1" type:"string"` // The runId of the new workflow execution. // // NewExecutionRunId is a required field NewExecutionRunId *string `locationName:"newExecutionRunId" min:"1" type:"string" required:"true"` // The list of tags associated with the new workflow execution. TagList []*string `locationName:"tagList" type:"list"` // Represents a task list. // // TaskList is a required field TaskList *TaskList `locationName:"taskList" type:"structure" required:"true"` TaskPriority *string `locationName:"taskPriority" type:"string"` // The maximum duration of decision tasks for the new workflow execution. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. TaskStartToCloseTimeout *string `locationName:"taskStartToCloseTimeout" type:"string"` // Represents a workflow type. // // WorkflowType is a required field WorkflowType *WorkflowType `locationName:"workflowType" type:"structure" required:"true"` } // String returns the string representation func (s WorkflowExecutionContinuedAsNewEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowExecutionContinuedAsNewEventAttributes) GoString() string { return s.String() } // Contains the count of workflow executions returned from CountOpenWorkflowExecutions // or CountClosedWorkflowExecutions type WorkflowExecutionCount struct { _ struct{} `type:"structure"` // The number of workflow executions. // // Count is a required field Count *int64 `locationName:"count" type:"integer" required:"true"` // If set to true, indicates that the actual count was more than the maximum // supported by this API and the count returned is the truncated value. Truncated *bool `locationName:"truncated" type:"boolean"` } // String returns the string representation func (s WorkflowExecutionCount) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowExecutionCount) GoString() string { return s.String() } // Provides details of the WorkflowExecutionFailed event. type WorkflowExecutionFailedEventAttributes struct { _ struct{} `type:"structure"` // The ID of the DecisionTaskCompleted event corresponding to the decision task // that resulted in the FailWorkflowExecution decision to fail this execution. // This information can be useful for diagnosing problems by tracing back the // chain of events leading up to this event. // // DecisionTaskCompletedEventId is a required field DecisionTaskCompletedEventId *int64 `locationName:"decisionTaskCompletedEventId" type:"long" required:"true"` // The details of the failure (if any). Details *string `locationName:"details" type:"string"` // The descriptive reason provided for the failure (if any). Reason *string `locationName:"reason" type:"string"` } // String returns the string representation func (s WorkflowExecutionFailedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowExecutionFailedEventAttributes) GoString() string { return s.String() } // Used to filter the workflow executions in visibility APIs by their workflowId. type WorkflowExecutionFilter struct { _ struct{} `type:"structure"` // The workflowId to pass of match the criteria of this filter. // // WorkflowId is a required field WorkflowId *string `locationName:"workflowId" min:"1" type:"string" required:"true"` } // String returns the string representation func (s WorkflowExecutionFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowExecutionFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *WorkflowExecutionFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "WorkflowExecutionFilter"} if s.WorkflowId == nil { invalidParams.Add(request.NewErrParamRequired("WorkflowId")) } if s.WorkflowId != nil && len(*s.WorkflowId) < 1 { invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains information about a workflow execution. type WorkflowExecutionInfo struct { _ struct{} `type:"structure"` // Set to true if a cancellation is requested for this workflow execution. CancelRequested *bool `locationName:"cancelRequested" type:"boolean"` // If the execution status is closed then this specifies how the execution was // closed: // // * COMPLETED: the execution was successfully completed. // * CANCELED: the execution was canceled.Cancellation allows the implementation // to gracefully clean up before the execution is closed. // * TERMINATED: the execution was force terminated. // * FAILED: the execution failed to complete. // * TIMED_OUT: the execution did not complete in the alloted time and was // automatically timed out. // * CONTINUED_AS_NEW: the execution is logically continued. This means the // current execution was completed and a new execution was started to carry // on the workflow. CloseStatus *string `locationName:"closeStatus" type:"string" enum:"CloseStatus"` // The time when the workflow execution was closed. Set only if the execution // status is CLOSED. CloseTimestamp *time.Time `locationName:"closeTimestamp" type:"timestamp" timestampFormat:"unix"` // The workflow execution this information is about. // // Execution is a required field Execution *WorkflowExecution `locationName:"execution" type:"structure" required:"true"` // The current status of the execution. // // ExecutionStatus is a required field ExecutionStatus *string `locationName:"executionStatus" type:"string" required:"true" enum:"ExecutionStatus"` // If this workflow execution is a child of another execution then contains // the workflow execution that started this execution. Parent *WorkflowExecution `locationName:"parent" type:"structure"` // The time when the execution was started. // // StartTimestamp is a required field StartTimestamp *time.Time `locationName:"startTimestamp" type:"timestamp" timestampFormat:"unix" required:"true"` // The list of tags associated with the workflow execution. Tags can be used // to identify and list workflow executions of interest through the visibility // APIs. A workflow execution can have a maximum of 5 tags. TagList []*string `locationName:"tagList" type:"list"` // The type of the workflow execution. // // WorkflowType is a required field WorkflowType *WorkflowType `locationName:"workflowType" type:"structure" required:"true"` } // String returns the string representation func (s WorkflowExecutionInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowExecutionInfo) GoString() string { return s.String() } // Contains a paginated list of information about workflow executions. type WorkflowExecutionInfos struct { _ struct{} `type:"structure"` // The list of workflow information structures. // // ExecutionInfos is a required field ExecutionInfos []*WorkflowExecutionInfo `locationName:"executionInfos" type:"list" required:"true"` // If a NextPageToken was returned by a previous call, there are more results // available. To retrieve the next page of results, make the call again using // the returned token in nextPageToken. Keep all other arguments unchanged. // // The configured maximumPageSize determines how many results can be returned // in a single call. NextPageToken *string `locationName:"nextPageToken" type:"string"` } // String returns the string representation func (s WorkflowExecutionInfos) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowExecutionInfos) GoString() string { return s.String() } // Contains the counts of open tasks, child workflow executions and timers for // a workflow execution. type WorkflowExecutionOpenCounts struct { _ struct{} `type:"structure"` // The count of activity tasks whose status is OPEN. // // OpenActivityTasks is a required field OpenActivityTasks *int64 `locationName:"openActivityTasks" type:"integer" required:"true"` // The count of child workflow executions whose status is OPEN. // // OpenChildWorkflowExecutions is a required field OpenChildWorkflowExecutions *int64 `locationName:"openChildWorkflowExecutions" type:"integer" required:"true"` // The count of decision tasks whose status is OPEN. A workflow execution can // have at most one open decision task. // // OpenDecisionTasks is a required field OpenDecisionTasks *int64 `locationName:"openDecisionTasks" type:"integer" required:"true"` // The count of AWS Lambda functions that are currently executing. OpenLambdaFunctions *int64 `locationName:"openLambdaFunctions" type:"integer"` // The count of timers started by this workflow execution that have not fired // yet. // // OpenTimers is a required field OpenTimers *int64 `locationName:"openTimers" type:"integer" required:"true"` } // String returns the string representation func (s WorkflowExecutionOpenCounts) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowExecutionOpenCounts) GoString() string { return s.String() } // Provides details of the WorkflowExecutionSignaled event. type WorkflowExecutionSignaledEventAttributes struct { _ struct{} `type:"structure"` // The ID of the SignalExternalWorkflowExecutionInitiated event corresponding // to the SignalExternalWorkflow decision to signal this workflow execution.The // source event with this ID can be found in the history of the source workflow // execution. This information can be useful for diagnosing problems by tracing // back the chain of events leading up to this event. This field is set only // if the signal was initiated by another workflow execution. ExternalInitiatedEventId *int64 `locationName:"externalInitiatedEventId" type:"long"` // The workflow execution that sent the signal. This is set only of the signal // was sent by another workflow execution. ExternalWorkflowExecution *WorkflowExecution `locationName:"externalWorkflowExecution" type:"structure"` // Inputs provided with the signal (if any). The decider can use the signal // name and inputs to determine how to process the signal. Input *string `locationName:"input" type:"string"` // The name of the signal received. The decider can use the signal name and // inputs to determine how to the process the signal. // // SignalName is a required field SignalName *string `locationName:"signalName" min:"1" type:"string" required:"true"` } // String returns the string representation func (s WorkflowExecutionSignaledEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowExecutionSignaledEventAttributes) GoString() string { return s.String() } // Provides details of WorkflowExecutionStarted event. type WorkflowExecutionStartedEventAttributes struct { _ struct{} `type:"structure"` // The policy to use for the child workflow executions if this workflow execution // is terminated, by calling the TerminateWorkflowExecution action explicitly // or due to an expired timeout. // // The supported child policies are: // // * TERMINATE: the child executions will be terminated. // * REQUEST_CANCEL: a request to cancel will be attempted for each child // execution by recording a WorkflowExecutionCancelRequested event in its // history. It is up to the decider to take appropriate actions when it receives // an execution history with this event. // * ABANDON: no action will be taken. The child executions will continue // to run. // // ChildPolicy is a required field ChildPolicy *string `locationName:"childPolicy" type:"string" required:"true" enum:"ChildPolicy"` // If this workflow execution was started due to a ContinueAsNewWorkflowExecution // decision, then it contains the runId of the previous workflow execution that // was closed and continued as this execution. ContinuedExecutionRunId *string `locationName:"continuedExecutionRunId" type:"string"` // The maximum duration for this workflow execution. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. ExecutionStartToCloseTimeout *string `locationName:"executionStartToCloseTimeout" type:"string"` // The input provided to the workflow execution (if any). Input *string `locationName:"input" type:"string"` // The IAM role attached to this workflow execution to use when invoking AWS // Lambda functions. LambdaRole *string `locationName:"lambdaRole" min:"1" type:"string"` // The ID of the StartChildWorkflowExecutionInitiated event corresponding to // the StartChildWorkflowExecution decision to start this workflow execution. // The source event with this ID can be found in the history of the source workflow // execution. This information can be useful for diagnosing problems by tracing // back the chain of events leading up to this event. ParentInitiatedEventId *int64 `locationName:"parentInitiatedEventId" type:"long"` // The source workflow execution that started this workflow execution. The member // is not set if the workflow execution was not started by a workflow. ParentWorkflowExecution *WorkflowExecution `locationName:"parentWorkflowExecution" type:"structure"` // The list of tags associated with this workflow execution. An execution can // have up to 5 tags. TagList []*string `locationName:"tagList" type:"list"` // The name of the task list for scheduling the decision tasks for this workflow // execution. // // TaskList is a required field TaskList *TaskList `locationName:"taskList" type:"structure" required:"true"` TaskPriority *string `locationName:"taskPriority" type:"string"` // The maximum duration of decision tasks for this workflow type. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. TaskStartToCloseTimeout *string `locationName:"taskStartToCloseTimeout" type:"string"` // The workflow type of this execution. // // WorkflowType is a required field WorkflowType *WorkflowType `locationName:"workflowType" type:"structure" required:"true"` } // String returns the string representation func (s WorkflowExecutionStartedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowExecutionStartedEventAttributes) GoString() string { return s.String() } // Provides details of the WorkflowExecutionTerminated event. type WorkflowExecutionTerminatedEventAttributes struct { _ struct{} `type:"structure"` // If set, indicates that the workflow execution was automatically terminated, // and specifies the cause. This happens if the parent workflow execution times // out or is terminated and the child policy is set to terminate child executions. Cause *string `locationName:"cause" type:"string" enum:"WorkflowExecutionTerminatedCause"` // The policy used for the child workflow executions of this workflow execution. // // The supported child policies are: // // * TERMINATE: the child executions will be terminated. // * REQUEST_CANCEL: a request to cancel will be attempted for each child // execution by recording a WorkflowExecutionCancelRequested event in its // history. It is up to the decider to take appropriate actions when it receives // an execution history with this event. // * ABANDON: no action will be taken. The child executions will continue // to run. // // ChildPolicy is a required field ChildPolicy *string `locationName:"childPolicy" type:"string" required:"true" enum:"ChildPolicy"` // The details provided for the termination (if any). Details *string `locationName:"details" type:"string"` // The reason provided for the termination (if any). Reason *string `locationName:"reason" type:"string"` } // String returns the string representation func (s WorkflowExecutionTerminatedEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowExecutionTerminatedEventAttributes) GoString() string { return s.String() } // Provides details of the WorkflowExecutionTimedOut event. type WorkflowExecutionTimedOutEventAttributes struct { _ struct{} `type:"structure"` // The policy used for the child workflow executions of this workflow execution. // // The supported child policies are: // // * TERMINATE: the child executions will be terminated. // * REQUEST_CANCEL: a request to cancel will be attempted for each child // execution by recording a WorkflowExecutionCancelRequested event in its // history. It is up to the decider to take appropriate actions when it receives // an execution history with this event. // * ABANDON: no action will be taken. The child executions will continue // to run. // // ChildPolicy is a required field ChildPolicy *string `locationName:"childPolicy" type:"string" required:"true" enum:"ChildPolicy"` // The type of timeout that caused this event. // // TimeoutType is a required field TimeoutType *string `locationName:"timeoutType" type:"string" required:"true" enum:"WorkflowExecutionTimeoutType"` } // String returns the string representation func (s WorkflowExecutionTimedOutEventAttributes) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowExecutionTimedOutEventAttributes) GoString() string { return s.String() } // Represents a workflow type. type WorkflowType struct { _ struct{} `type:"structure"` // Required. The name of the workflow type. // // The combination of workflow type name and version must be unique with in // a domain. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // Required. The version of the workflow type. // // The combination of workflow type name and version must be unique with in // a domain. // // Version is a required field Version *string `locationName:"version" min:"1" type:"string" required:"true"` } // String returns the string representation func (s WorkflowType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowType) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *WorkflowType) Validate() error { invalidParams := request.ErrInvalidParams{Context: "WorkflowType"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Version == nil { invalidParams.Add(request.NewErrParamRequired("Version")) } if s.Version != nil && len(*s.Version) < 1 { invalidParams.Add(request.NewErrParamMinLen("Version", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The configuration settings of a workflow type. type WorkflowTypeConfiguration struct { _ struct{} `type:"structure"` // Optional. The default policy to use for the child workflow executions when // a workflow execution of this type is terminated, by calling the TerminateWorkflowExecution // action explicitly or due to an expired timeout. This default can be overridden // when starting a workflow execution using the StartWorkflowExecution action // or the StartChildWorkflowExecution decision. // // The supported child policies are: // // * TERMINATE: the child executions will be terminated. // * REQUEST_CANCEL: a request to cancel will be attempted for each child // execution by recording a WorkflowExecutionCancelRequested event in its // history. It is up to the decider to take appropriate actions when it receives // an execution history with this event. // * ABANDON: no action will be taken. The child executions will continue // to run. DefaultChildPolicy *string `locationName:"defaultChildPolicy" type:"string" enum:"ChildPolicy"` // Optional. The default maximum duration, specified when registering the workflow // type, for executions of this workflow type. This default can be overridden // when starting a workflow execution using the StartWorkflowExecution action // or the StartChildWorkflowExecution decision. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. DefaultExecutionStartToCloseTimeout *string `locationName:"defaultExecutionStartToCloseTimeout" type:"string"` // The default IAM role to use when a workflow execution invokes a AWS Lambda // function. DefaultLambdaRole *string `locationName:"defaultLambdaRole" min:"1" type:"string"` // Optional. The default task list, specified when registering the workflow // type, for decisions tasks scheduled for workflow executions of this type. // This default can be overridden when starting a workflow execution using the // StartWorkflowExecution action or the StartChildWorkflowExecution decision. DefaultTaskList *TaskList `locationName:"defaultTaskList" type:"structure"` // Optional. The default task priority, specified when registering the workflow // type, for all decision tasks of this workflow type. This default can be overridden // when starting a workflow execution using the StartWorkflowExecution action // or the StartChildWorkflowExecution decision. // // Valid values are integers that range from Java's Integer.MIN_VALUE (-2147483648) // to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority. // // For more information about setting task priority, see Setting Task Priority // (http://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) // in the Amazon Simple Workflow Developer Guide. DefaultTaskPriority *string `locationName:"defaultTaskPriority" type:"string"` // Optional. The default maximum duration, specified when registering the workflow // type, that a decision task for executions of this workflow type might take // before returning completion or failure. If the task does not close in the // specified time then the task is automatically timed out and rescheduled. // If the decider eventually reports a completion or failure, it is ignored. // This default can be overridden when starting a workflow execution using the // StartWorkflowExecution action or the StartChildWorkflowExecution decision. // // The duration is specified in seconds; an integer greater than or equal to // 0. The value "NONE" can be used to specify unlimited duration. DefaultTaskStartToCloseTimeout *string `locationName:"defaultTaskStartToCloseTimeout" type:"string"` } // String returns the string representation func (s WorkflowTypeConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowTypeConfiguration) GoString() string { return s.String() } // Used to filter workflow execution query results by type. Each parameter, // if specified, defines a rule that must be satisfied by each returned result. type WorkflowTypeFilter struct { _ struct{} `type:"structure"` // Required. Name of the workflow type. // // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` // Version of the workflow type. Version *string `locationName:"version" type:"string"` } // String returns the string representation func (s WorkflowTypeFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowTypeFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *WorkflowTypeFilter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "WorkflowTypeFilter"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains information about a workflow type. type WorkflowTypeInfo struct { _ struct{} `type:"structure"` // The date when this type was registered. // // CreationDate is a required field CreationDate *time.Time `locationName:"creationDate" type:"timestamp" timestampFormat:"unix" required:"true"` // If the type is in deprecated state, then it is set to the date when the type // was deprecated. DeprecationDate *time.Time `locationName:"deprecationDate" type:"timestamp" timestampFormat:"unix"` // The description of the type registered through RegisterWorkflowType. Description *string `locationName:"description" type:"string"` // The current status of the workflow type. // // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"RegistrationStatus"` // The workflow type this information is about. // // WorkflowType is a required field WorkflowType *WorkflowType `locationName:"workflowType" type:"structure" required:"true"` } // String returns the string representation func (s WorkflowTypeInfo) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkflowTypeInfo) GoString() string { return s.String() } const ( // ActivityTaskTimeoutTypeStartToClose is a ActivityTaskTimeoutType enum value ActivityTaskTimeoutTypeStartToClose = "START_TO_CLOSE" // ActivityTaskTimeoutTypeScheduleToStart is a ActivityTaskTimeoutType enum value ActivityTaskTimeoutTypeScheduleToStart = "SCHEDULE_TO_START" // ActivityTaskTimeoutTypeScheduleToClose is a ActivityTaskTimeoutType enum value ActivityTaskTimeoutTypeScheduleToClose = "SCHEDULE_TO_CLOSE" // ActivityTaskTimeoutTypeHeartbeat is a ActivityTaskTimeoutType enum value ActivityTaskTimeoutTypeHeartbeat = "HEARTBEAT" ) const ( // CancelTimerFailedCauseTimerIdUnknown is a CancelTimerFailedCause enum value CancelTimerFailedCauseTimerIdUnknown = "TIMER_ID_UNKNOWN" // CancelTimerFailedCauseOperationNotPermitted is a CancelTimerFailedCause enum value CancelTimerFailedCauseOperationNotPermitted = "OPERATION_NOT_PERMITTED" ) const ( // CancelWorkflowExecutionFailedCauseUnhandledDecision is a CancelWorkflowExecutionFailedCause enum value CancelWorkflowExecutionFailedCauseUnhandledDecision = "UNHANDLED_DECISION" // CancelWorkflowExecutionFailedCauseOperationNotPermitted is a CancelWorkflowExecutionFailedCause enum value CancelWorkflowExecutionFailedCauseOperationNotPermitted = "OPERATION_NOT_PERMITTED" ) const ( // ChildPolicyTerminate is a ChildPolicy enum value ChildPolicyTerminate = "TERMINATE" // ChildPolicyRequestCancel is a ChildPolicy enum value ChildPolicyRequestCancel = "REQUEST_CANCEL" // ChildPolicyAbandon is a ChildPolicy enum value ChildPolicyAbandon = "ABANDON" ) const ( // CloseStatusCompleted is a CloseStatus enum value CloseStatusCompleted = "COMPLETED" // CloseStatusFailed is a CloseStatus enum value CloseStatusFailed = "FAILED" // CloseStatusCanceled is a CloseStatus enum value CloseStatusCanceled = "CANCELED" // CloseStatusTerminated is a CloseStatus enum value CloseStatusTerminated = "TERMINATED" // CloseStatusContinuedAsNew is a CloseStatus enum value CloseStatusContinuedAsNew = "CONTINUED_AS_NEW" // CloseStatusTimedOut is a CloseStatus enum value CloseStatusTimedOut = "TIMED_OUT" ) const ( // CompleteWorkflowExecutionFailedCauseUnhandledDecision is a CompleteWorkflowExecutionFailedCause enum value CompleteWorkflowExecutionFailedCauseUnhandledDecision = "UNHANDLED_DECISION" // CompleteWorkflowExecutionFailedCauseOperationNotPermitted is a CompleteWorkflowExecutionFailedCause enum value CompleteWorkflowExecutionFailedCauseOperationNotPermitted = "OPERATION_NOT_PERMITTED" ) const ( // ContinueAsNewWorkflowExecutionFailedCauseUnhandledDecision is a ContinueAsNewWorkflowExecutionFailedCause enum value ContinueAsNewWorkflowExecutionFailedCauseUnhandledDecision = "UNHANDLED_DECISION" // ContinueAsNewWorkflowExecutionFailedCauseWorkflowTypeDeprecated is a ContinueAsNewWorkflowExecutionFailedCause enum value ContinueAsNewWorkflowExecutionFailedCauseWorkflowTypeDeprecated = "WORKFLOW_TYPE_DEPRECATED" // ContinueAsNewWorkflowExecutionFailedCauseWorkflowTypeDoesNotExist is a ContinueAsNewWorkflowExecutionFailedCause enum value ContinueAsNewWorkflowExecutionFailedCauseWorkflowTypeDoesNotExist = "WORKFLOW_TYPE_DOES_NOT_EXIST" // ContinueAsNewWorkflowExecutionFailedCauseDefaultExecutionStartToCloseTimeoutUndefined is a ContinueAsNewWorkflowExecutionFailedCause enum value ContinueAsNewWorkflowExecutionFailedCauseDefaultExecutionStartToCloseTimeoutUndefined = "DEFAULT_EXECUTION_START_TO_CLOSE_TIMEOUT_UNDEFINED" // ContinueAsNewWorkflowExecutionFailedCauseDefaultTaskStartToCloseTimeoutUndefined is a ContinueAsNewWorkflowExecutionFailedCause enum value ContinueAsNewWorkflowExecutionFailedCauseDefaultTaskStartToCloseTimeoutUndefined = "DEFAULT_TASK_START_TO_CLOSE_TIMEOUT_UNDEFINED" // ContinueAsNewWorkflowExecutionFailedCauseDefaultTaskListUndefined is a ContinueAsNewWorkflowExecutionFailedCause enum value ContinueAsNewWorkflowExecutionFailedCauseDefaultTaskListUndefined = "DEFAULT_TASK_LIST_UNDEFINED" // ContinueAsNewWorkflowExecutionFailedCauseDefaultChildPolicyUndefined is a ContinueAsNewWorkflowExecutionFailedCause enum value ContinueAsNewWorkflowExecutionFailedCauseDefaultChildPolicyUndefined = "DEFAULT_CHILD_POLICY_UNDEFINED" // ContinueAsNewWorkflowExecutionFailedCauseContinueAsNewWorkflowExecutionRateExceeded is a ContinueAsNewWorkflowExecutionFailedCause enum value ContinueAsNewWorkflowExecutionFailedCauseContinueAsNewWorkflowExecutionRateExceeded = "CONTINUE_AS_NEW_WORKFLOW_EXECUTION_RATE_EXCEEDED" // ContinueAsNewWorkflowExecutionFailedCauseOperationNotPermitted is a ContinueAsNewWorkflowExecutionFailedCause enum value ContinueAsNewWorkflowExecutionFailedCauseOperationNotPermitted = "OPERATION_NOT_PERMITTED" ) const ( // DecisionTaskTimeoutTypeStartToClose is a DecisionTaskTimeoutType enum value DecisionTaskTimeoutTypeStartToClose = "START_TO_CLOSE" ) const ( // DecisionTypeScheduleActivityTask is a DecisionType enum value DecisionTypeScheduleActivityTask = "ScheduleActivityTask" // DecisionTypeRequestCancelActivityTask is a DecisionType enum value DecisionTypeRequestCancelActivityTask = "RequestCancelActivityTask" // DecisionTypeCompleteWorkflowExecution is a DecisionType enum value DecisionTypeCompleteWorkflowExecution = "CompleteWorkflowExecution" // DecisionTypeFailWorkflowExecution is a DecisionType enum value DecisionTypeFailWorkflowExecution = "FailWorkflowExecution" // DecisionTypeCancelWorkflowExecution is a DecisionType enum value DecisionTypeCancelWorkflowExecution = "CancelWorkflowExecution" // DecisionTypeContinueAsNewWorkflowExecution is a DecisionType enum value DecisionTypeContinueAsNewWorkflowExecution = "ContinueAsNewWorkflowExecution" // DecisionTypeRecordMarker is a DecisionType enum value DecisionTypeRecordMarker = "RecordMarker" // DecisionTypeStartTimer is a DecisionType enum value DecisionTypeStartTimer = "StartTimer" // DecisionTypeCancelTimer is a DecisionType enum value DecisionTypeCancelTimer = "CancelTimer" // DecisionTypeSignalExternalWorkflowExecution is a DecisionType enum value DecisionTypeSignalExternalWorkflowExecution = "SignalExternalWorkflowExecution" // DecisionTypeRequestCancelExternalWorkflowExecution is a DecisionType enum value DecisionTypeRequestCancelExternalWorkflowExecution = "RequestCancelExternalWorkflowExecution" // DecisionTypeStartChildWorkflowExecution is a DecisionType enum value DecisionTypeStartChildWorkflowExecution = "StartChildWorkflowExecution" // DecisionTypeScheduleLambdaFunction is a DecisionType enum value DecisionTypeScheduleLambdaFunction = "ScheduleLambdaFunction" ) const ( // EventTypeWorkflowExecutionStarted is a EventType enum value EventTypeWorkflowExecutionStarted = "WorkflowExecutionStarted" // EventTypeWorkflowExecutionCancelRequested is a EventType enum value EventTypeWorkflowExecutionCancelRequested = "WorkflowExecutionCancelRequested" // EventTypeWorkflowExecutionCompleted is a EventType enum value EventTypeWorkflowExecutionCompleted = "WorkflowExecutionCompleted" // EventTypeCompleteWorkflowExecutionFailed is a EventType enum value EventTypeCompleteWorkflowExecutionFailed = "CompleteWorkflowExecutionFailed" // EventTypeWorkflowExecutionFailed is a EventType enum value EventTypeWorkflowExecutionFailed = "WorkflowExecutionFailed" // EventTypeFailWorkflowExecutionFailed is a EventType enum value EventTypeFailWorkflowExecutionFailed = "FailWorkflowExecutionFailed" // EventTypeWorkflowExecutionTimedOut is a EventType enum value EventTypeWorkflowExecutionTimedOut = "WorkflowExecutionTimedOut" // EventTypeWorkflowExecutionCanceled is a EventType enum value EventTypeWorkflowExecutionCanceled = "WorkflowExecutionCanceled" // EventTypeCancelWorkflowExecutionFailed is a EventType enum value EventTypeCancelWorkflowExecutionFailed = "CancelWorkflowExecutionFailed" // EventTypeWorkflowExecutionContinuedAsNew is a EventType enum value EventTypeWorkflowExecutionContinuedAsNew = "WorkflowExecutionContinuedAsNew" // EventTypeContinueAsNewWorkflowExecutionFailed is a EventType enum value EventTypeContinueAsNewWorkflowExecutionFailed = "ContinueAsNewWorkflowExecutionFailed" // EventTypeWorkflowExecutionTerminated is a EventType enum value EventTypeWorkflowExecutionTerminated = "WorkflowExecutionTerminated" // EventTypeDecisionTaskScheduled is a EventType enum value EventTypeDecisionTaskScheduled = "DecisionTaskScheduled" // EventTypeDecisionTaskStarted is a EventType enum value EventTypeDecisionTaskStarted = "DecisionTaskStarted" // EventTypeDecisionTaskCompleted is a EventType enum value EventTypeDecisionTaskCompleted = "DecisionTaskCompleted" // EventTypeDecisionTaskTimedOut is a EventType enum value EventTypeDecisionTaskTimedOut = "DecisionTaskTimedOut" // EventTypeActivityTaskScheduled is a EventType enum value EventTypeActivityTaskScheduled = "ActivityTaskScheduled" // EventTypeScheduleActivityTaskFailed is a EventType enum value EventTypeScheduleActivityTaskFailed = "ScheduleActivityTaskFailed" // EventTypeActivityTaskStarted is a EventType enum value EventTypeActivityTaskStarted = "ActivityTaskStarted" // EventTypeActivityTaskCompleted is a EventType enum value EventTypeActivityTaskCompleted = "ActivityTaskCompleted" // EventTypeActivityTaskFailed is a EventType enum value EventTypeActivityTaskFailed = "ActivityTaskFailed" // EventTypeActivityTaskTimedOut is a EventType enum value EventTypeActivityTaskTimedOut = "ActivityTaskTimedOut" // EventTypeActivityTaskCanceled is a EventType enum value EventTypeActivityTaskCanceled = "ActivityTaskCanceled" // EventTypeActivityTaskCancelRequested is a EventType enum value EventTypeActivityTaskCancelRequested = "ActivityTaskCancelRequested" // EventTypeRequestCancelActivityTaskFailed is a EventType enum value EventTypeRequestCancelActivityTaskFailed = "RequestCancelActivityTaskFailed" // EventTypeWorkflowExecutionSignaled is a EventType enum value EventTypeWorkflowExecutionSignaled = "WorkflowExecutionSignaled" // EventTypeMarkerRecorded is a EventType enum value EventTypeMarkerRecorded = "MarkerRecorded" // EventTypeRecordMarkerFailed is a EventType enum value EventTypeRecordMarkerFailed = "RecordMarkerFailed" // EventTypeTimerStarted is a EventType enum value EventTypeTimerStarted = "TimerStarted" // EventTypeStartTimerFailed is a EventType enum value EventTypeStartTimerFailed = "StartTimerFailed" // EventTypeTimerFired is a EventType enum value EventTypeTimerFired = "TimerFired" // EventTypeTimerCanceled is a EventType enum value EventTypeTimerCanceled = "TimerCanceled" // EventTypeCancelTimerFailed is a EventType enum value EventTypeCancelTimerFailed = "CancelTimerFailed" // EventTypeStartChildWorkflowExecutionInitiated is a EventType enum value EventTypeStartChildWorkflowExecutionInitiated = "StartChildWorkflowExecutionInitiated" // EventTypeStartChildWorkflowExecutionFailed is a EventType enum value EventTypeStartChildWorkflowExecutionFailed = "StartChildWorkflowExecutionFailed" // EventTypeChildWorkflowExecutionStarted is a EventType enum value EventTypeChildWorkflowExecutionStarted = "ChildWorkflowExecutionStarted" // EventTypeChildWorkflowExecutionCompleted is a EventType enum value EventTypeChildWorkflowExecutionCompleted = "ChildWorkflowExecutionCompleted" // EventTypeChildWorkflowExecutionFailed is a EventType enum value EventTypeChildWorkflowExecutionFailed = "ChildWorkflowExecutionFailed" // EventTypeChildWorkflowExecutionTimedOut is a EventType enum value EventTypeChildWorkflowExecutionTimedOut = "ChildWorkflowExecutionTimedOut" // EventTypeChildWorkflowExecutionCanceled is a EventType enum value EventTypeChildWorkflowExecutionCanceled = "ChildWorkflowExecutionCanceled" // EventTypeChildWorkflowExecutionTerminated is a EventType enum value EventTypeChildWorkflowExecutionTerminated = "ChildWorkflowExecutionTerminated" // EventTypeSignalExternalWorkflowExecutionInitiated is a EventType enum value EventTypeSignalExternalWorkflowExecutionInitiated = "SignalExternalWorkflowExecutionInitiated" // EventTypeSignalExternalWorkflowExecutionFailed is a EventType enum value EventTypeSignalExternalWorkflowExecutionFailed = "SignalExternalWorkflowExecutionFailed" // EventTypeExternalWorkflowExecutionSignaled is a EventType enum value EventTypeExternalWorkflowExecutionSignaled = "ExternalWorkflowExecutionSignaled" // EventTypeRequestCancelExternalWorkflowExecutionInitiated is a EventType enum value EventTypeRequestCancelExternalWorkflowExecutionInitiated = "RequestCancelExternalWorkflowExecutionInitiated" // EventTypeRequestCancelExternalWorkflowExecutionFailed is a EventType enum value EventTypeRequestCancelExternalWorkflowExecutionFailed = "RequestCancelExternalWorkflowExecutionFailed" // EventTypeExternalWorkflowExecutionCancelRequested is a EventType enum value EventTypeExternalWorkflowExecutionCancelRequested = "ExternalWorkflowExecutionCancelRequested" // EventTypeLambdaFunctionScheduled is a EventType enum value EventTypeLambdaFunctionScheduled = "LambdaFunctionScheduled" // EventTypeLambdaFunctionStarted is a EventType enum value EventTypeLambdaFunctionStarted = "LambdaFunctionStarted" // EventTypeLambdaFunctionCompleted is a EventType enum value EventTypeLambdaFunctionCompleted = "LambdaFunctionCompleted" // EventTypeLambdaFunctionFailed is a EventType enum value EventTypeLambdaFunctionFailed = "LambdaFunctionFailed" // EventTypeLambdaFunctionTimedOut is a EventType enum value EventTypeLambdaFunctionTimedOut = "LambdaFunctionTimedOut" // EventTypeScheduleLambdaFunctionFailed is a EventType enum value EventTypeScheduleLambdaFunctionFailed = "ScheduleLambdaFunctionFailed" // EventTypeStartLambdaFunctionFailed is a EventType enum value EventTypeStartLambdaFunctionFailed = "StartLambdaFunctionFailed" ) const ( // ExecutionStatusOpen is a ExecutionStatus enum value ExecutionStatusOpen = "OPEN" // ExecutionStatusClosed is a ExecutionStatus enum value ExecutionStatusClosed = "CLOSED" ) const ( // FailWorkflowExecutionFailedCauseUnhandledDecision is a FailWorkflowExecutionFailedCause enum value FailWorkflowExecutionFailedCauseUnhandledDecision = "UNHANDLED_DECISION" // FailWorkflowExecutionFailedCauseOperationNotPermitted is a FailWorkflowExecutionFailedCause enum value FailWorkflowExecutionFailedCauseOperationNotPermitted = "OPERATION_NOT_PERMITTED" ) const ( // LambdaFunctionTimeoutTypeStartToClose is a LambdaFunctionTimeoutType enum value LambdaFunctionTimeoutTypeStartToClose = "START_TO_CLOSE" ) const ( // RecordMarkerFailedCauseOperationNotPermitted is a RecordMarkerFailedCause enum value RecordMarkerFailedCauseOperationNotPermitted = "OPERATION_NOT_PERMITTED" ) const ( // RegistrationStatusRegistered is a RegistrationStatus enum value RegistrationStatusRegistered = "REGISTERED" // RegistrationStatusDeprecated is a RegistrationStatus enum value RegistrationStatusDeprecated = "DEPRECATED" ) const ( // RequestCancelActivityTaskFailedCauseActivityIdUnknown is a RequestCancelActivityTaskFailedCause enum value RequestCancelActivityTaskFailedCauseActivityIdUnknown = "ACTIVITY_ID_UNKNOWN" // RequestCancelActivityTaskFailedCauseOperationNotPermitted is a RequestCancelActivityTaskFailedCause enum value RequestCancelActivityTaskFailedCauseOperationNotPermitted = "OPERATION_NOT_PERMITTED" ) const ( // RequestCancelExternalWorkflowExecutionFailedCauseUnknownExternalWorkflowExecution is a RequestCancelExternalWorkflowExecutionFailedCause enum value RequestCancelExternalWorkflowExecutionFailedCauseUnknownExternalWorkflowExecution = "UNKNOWN_EXTERNAL_WORKFLOW_EXECUTION" // RequestCancelExternalWorkflowExecutionFailedCauseRequestCancelExternalWorkflowExecutionRateExceeded is a RequestCancelExternalWorkflowExecutionFailedCause enum value RequestCancelExternalWorkflowExecutionFailedCauseRequestCancelExternalWorkflowExecutionRateExceeded = "REQUEST_CANCEL_EXTERNAL_WORKFLOW_EXECUTION_RATE_EXCEEDED" // RequestCancelExternalWorkflowExecutionFailedCauseOperationNotPermitted is a RequestCancelExternalWorkflowExecutionFailedCause enum value RequestCancelExternalWorkflowExecutionFailedCauseOperationNotPermitted = "OPERATION_NOT_PERMITTED" ) const ( // ScheduleActivityTaskFailedCauseActivityTypeDeprecated is a ScheduleActivityTaskFailedCause enum value ScheduleActivityTaskFailedCauseActivityTypeDeprecated = "ACTIVITY_TYPE_DEPRECATED" // ScheduleActivityTaskFailedCauseActivityTypeDoesNotExist is a ScheduleActivityTaskFailedCause enum value ScheduleActivityTaskFailedCauseActivityTypeDoesNotExist = "ACTIVITY_TYPE_DOES_NOT_EXIST" // ScheduleActivityTaskFailedCauseActivityIdAlreadyInUse is a ScheduleActivityTaskFailedCause enum value ScheduleActivityTaskFailedCauseActivityIdAlreadyInUse = "ACTIVITY_ID_ALREADY_IN_USE" // ScheduleActivityTaskFailedCauseOpenActivitiesLimitExceeded is a ScheduleActivityTaskFailedCause enum value ScheduleActivityTaskFailedCauseOpenActivitiesLimitExceeded = "OPEN_ACTIVITIES_LIMIT_EXCEEDED" // ScheduleActivityTaskFailedCauseActivityCreationRateExceeded is a ScheduleActivityTaskFailedCause enum value ScheduleActivityTaskFailedCauseActivityCreationRateExceeded = "ACTIVITY_CREATION_RATE_EXCEEDED" // ScheduleActivityTaskFailedCauseDefaultScheduleToCloseTimeoutUndefined is a ScheduleActivityTaskFailedCause enum value ScheduleActivityTaskFailedCauseDefaultScheduleToCloseTimeoutUndefined = "DEFAULT_SCHEDULE_TO_CLOSE_TIMEOUT_UNDEFINED" // ScheduleActivityTaskFailedCauseDefaultTaskListUndefined is a ScheduleActivityTaskFailedCause enum value ScheduleActivityTaskFailedCauseDefaultTaskListUndefined = "DEFAULT_TASK_LIST_UNDEFINED" // ScheduleActivityTaskFailedCauseDefaultScheduleToStartTimeoutUndefined is a ScheduleActivityTaskFailedCause enum value ScheduleActivityTaskFailedCauseDefaultScheduleToStartTimeoutUndefined = "DEFAULT_SCHEDULE_TO_START_TIMEOUT_UNDEFINED" // ScheduleActivityTaskFailedCauseDefaultStartToCloseTimeoutUndefined is a ScheduleActivityTaskFailedCause enum value ScheduleActivityTaskFailedCauseDefaultStartToCloseTimeoutUndefined = "DEFAULT_START_TO_CLOSE_TIMEOUT_UNDEFINED" // ScheduleActivityTaskFailedCauseDefaultHeartbeatTimeoutUndefined is a ScheduleActivityTaskFailedCause enum value ScheduleActivityTaskFailedCauseDefaultHeartbeatTimeoutUndefined = "DEFAULT_HEARTBEAT_TIMEOUT_UNDEFINED" // ScheduleActivityTaskFailedCauseOperationNotPermitted is a ScheduleActivityTaskFailedCause enum value ScheduleActivityTaskFailedCauseOperationNotPermitted = "OPERATION_NOT_PERMITTED" ) const ( // ScheduleLambdaFunctionFailedCauseIdAlreadyInUse is a ScheduleLambdaFunctionFailedCause enum value ScheduleLambdaFunctionFailedCauseIdAlreadyInUse = "ID_ALREADY_IN_USE" // ScheduleLambdaFunctionFailedCauseOpenLambdaFunctionsLimitExceeded is a ScheduleLambdaFunctionFailedCause enum value ScheduleLambdaFunctionFailedCauseOpenLambdaFunctionsLimitExceeded = "OPEN_LAMBDA_FUNCTIONS_LIMIT_EXCEEDED" // ScheduleLambdaFunctionFailedCauseLambdaFunctionCreationRateExceeded is a ScheduleLambdaFunctionFailedCause enum value ScheduleLambdaFunctionFailedCauseLambdaFunctionCreationRateExceeded = "LAMBDA_FUNCTION_CREATION_RATE_EXCEEDED" // ScheduleLambdaFunctionFailedCauseLambdaServiceNotAvailableInRegion is a ScheduleLambdaFunctionFailedCause enum value ScheduleLambdaFunctionFailedCauseLambdaServiceNotAvailableInRegion = "LAMBDA_SERVICE_NOT_AVAILABLE_IN_REGION" ) const ( // SignalExternalWorkflowExecutionFailedCauseUnknownExternalWorkflowExecution is a SignalExternalWorkflowExecutionFailedCause enum value SignalExternalWorkflowExecutionFailedCauseUnknownExternalWorkflowExecution = "UNKNOWN_EXTERNAL_WORKFLOW_EXECUTION" // SignalExternalWorkflowExecutionFailedCauseSignalExternalWorkflowExecutionRateExceeded is a SignalExternalWorkflowExecutionFailedCause enum value SignalExternalWorkflowExecutionFailedCauseSignalExternalWorkflowExecutionRateExceeded = "SIGNAL_EXTERNAL_WORKFLOW_EXECUTION_RATE_EXCEEDED" // SignalExternalWorkflowExecutionFailedCauseOperationNotPermitted is a SignalExternalWorkflowExecutionFailedCause enum value SignalExternalWorkflowExecutionFailedCauseOperationNotPermitted = "OPERATION_NOT_PERMITTED" ) const ( // StartChildWorkflowExecutionFailedCauseWorkflowTypeDoesNotExist is a StartChildWorkflowExecutionFailedCause enum value StartChildWorkflowExecutionFailedCauseWorkflowTypeDoesNotExist = "WORKFLOW_TYPE_DOES_NOT_EXIST" // StartChildWorkflowExecutionFailedCauseWorkflowTypeDeprecated is a StartChildWorkflowExecutionFailedCause enum value StartChildWorkflowExecutionFailedCauseWorkflowTypeDeprecated = "WORKFLOW_TYPE_DEPRECATED" // StartChildWorkflowExecutionFailedCauseOpenChildrenLimitExceeded is a StartChildWorkflowExecutionFailedCause enum value StartChildWorkflowExecutionFailedCauseOpenChildrenLimitExceeded = "OPEN_CHILDREN_LIMIT_EXCEEDED" // StartChildWorkflowExecutionFailedCauseOpenWorkflowsLimitExceeded is a StartChildWorkflowExecutionFailedCause enum value StartChildWorkflowExecutionFailedCauseOpenWorkflowsLimitExceeded = "OPEN_WORKFLOWS_LIMIT_EXCEEDED" // StartChildWorkflowExecutionFailedCauseChildCreationRateExceeded is a StartChildWorkflowExecutionFailedCause enum value StartChildWorkflowExecutionFailedCauseChildCreationRateExceeded = "CHILD_CREATION_RATE_EXCEEDED" // StartChildWorkflowExecutionFailedCauseWorkflowAlreadyRunning is a StartChildWorkflowExecutionFailedCause enum value StartChildWorkflowExecutionFailedCauseWorkflowAlreadyRunning = "WORKFLOW_ALREADY_RUNNING" // StartChildWorkflowExecutionFailedCauseDefaultExecutionStartToCloseTimeoutUndefined is a StartChildWorkflowExecutionFailedCause enum value StartChildWorkflowExecutionFailedCauseDefaultExecutionStartToCloseTimeoutUndefined = "DEFAULT_EXECUTION_START_TO_CLOSE_TIMEOUT_UNDEFINED" // StartChildWorkflowExecutionFailedCauseDefaultTaskListUndefined is a StartChildWorkflowExecutionFailedCause enum value StartChildWorkflowExecutionFailedCauseDefaultTaskListUndefined = "DEFAULT_TASK_LIST_UNDEFINED" // StartChildWorkflowExecutionFailedCauseDefaultTaskStartToCloseTimeoutUndefined is a StartChildWorkflowExecutionFailedCause enum value StartChildWorkflowExecutionFailedCauseDefaultTaskStartToCloseTimeoutUndefined = "DEFAULT_TASK_START_TO_CLOSE_TIMEOUT_UNDEFINED" // StartChildWorkflowExecutionFailedCauseDefaultChildPolicyUndefined is a StartChildWorkflowExecutionFailedCause enum value StartChildWorkflowExecutionFailedCauseDefaultChildPolicyUndefined = "DEFAULT_CHILD_POLICY_UNDEFINED" // StartChildWorkflowExecutionFailedCauseOperationNotPermitted is a StartChildWorkflowExecutionFailedCause enum value StartChildWorkflowExecutionFailedCauseOperationNotPermitted = "OPERATION_NOT_PERMITTED" ) const ( // StartLambdaFunctionFailedCauseAssumeRoleFailed is a StartLambdaFunctionFailedCause enum value StartLambdaFunctionFailedCauseAssumeRoleFailed = "ASSUME_ROLE_FAILED" ) const ( // StartTimerFailedCauseTimerIdAlreadyInUse is a StartTimerFailedCause enum value StartTimerFailedCauseTimerIdAlreadyInUse = "TIMER_ID_ALREADY_IN_USE" // StartTimerFailedCauseOpenTimersLimitExceeded is a StartTimerFailedCause enum value StartTimerFailedCauseOpenTimersLimitExceeded = "OPEN_TIMERS_LIMIT_EXCEEDED" // StartTimerFailedCauseTimerCreationRateExceeded is a StartTimerFailedCause enum value StartTimerFailedCauseTimerCreationRateExceeded = "TIMER_CREATION_RATE_EXCEEDED" // StartTimerFailedCauseOperationNotPermitted is a StartTimerFailedCause enum value StartTimerFailedCauseOperationNotPermitted = "OPERATION_NOT_PERMITTED" ) const ( // WorkflowExecutionCancelRequestedCauseChildPolicyApplied is a WorkflowExecutionCancelRequestedCause enum value WorkflowExecutionCancelRequestedCauseChildPolicyApplied = "CHILD_POLICY_APPLIED" ) const ( // WorkflowExecutionTerminatedCauseChildPolicyApplied is a WorkflowExecutionTerminatedCause enum value WorkflowExecutionTerminatedCauseChildPolicyApplied = "CHILD_POLICY_APPLIED" // WorkflowExecutionTerminatedCauseEventLimitExceeded is a WorkflowExecutionTerminatedCause enum value WorkflowExecutionTerminatedCauseEventLimitExceeded = "EVENT_LIMIT_EXCEEDED" // WorkflowExecutionTerminatedCauseOperatorInitiated is a WorkflowExecutionTerminatedCause enum value WorkflowExecutionTerminatedCauseOperatorInitiated = "OPERATOR_INITIATED" ) const ( // WorkflowExecutionTimeoutTypeStartToClose is a WorkflowExecutionTimeoutType enum value WorkflowExecutionTimeoutTypeStartToClose = "START_TO_CLOSE" ) aws-sdk-go-1.4.22/service/swf/examples_test.go000066400000000000000000000706751300374646400212450ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package swf_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/swf" ) var _ time.Duration var _ bytes.Buffer func ExampleSWF_CountClosedWorkflowExecutions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.CountClosedWorkflowExecutionsInput{ Domain: aws.String("DomainName"), // Required CloseStatusFilter: &swf.CloseStatusFilter{ Status: aws.String("CloseStatus"), // Required }, CloseTimeFilter: &swf.ExecutionTimeFilter{ OldestDate: aws.Time(time.Now()), // Required LatestDate: aws.Time(time.Now()), }, ExecutionFilter: &swf.WorkflowExecutionFilter{ WorkflowId: aws.String("WorkflowId"), // Required }, StartTimeFilter: &swf.ExecutionTimeFilter{ OldestDate: aws.Time(time.Now()), // Required LatestDate: aws.Time(time.Now()), }, TagFilter: &swf.TagFilter{ Tag: aws.String("Tag"), // Required }, TypeFilter: &swf.WorkflowTypeFilter{ Name: aws.String("Name"), // Required Version: aws.String("VersionOptional"), }, } resp, err := svc.CountClosedWorkflowExecutions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_CountOpenWorkflowExecutions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.CountOpenWorkflowExecutionsInput{ Domain: aws.String("DomainName"), // Required StartTimeFilter: &swf.ExecutionTimeFilter{ // Required OldestDate: aws.Time(time.Now()), // Required LatestDate: aws.Time(time.Now()), }, ExecutionFilter: &swf.WorkflowExecutionFilter{ WorkflowId: aws.String("WorkflowId"), // Required }, TagFilter: &swf.TagFilter{ Tag: aws.String("Tag"), // Required }, TypeFilter: &swf.WorkflowTypeFilter{ Name: aws.String("Name"), // Required Version: aws.String("VersionOptional"), }, } resp, err := svc.CountOpenWorkflowExecutions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_CountPendingActivityTasks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.CountPendingActivityTasksInput{ Domain: aws.String("DomainName"), // Required TaskList: &swf.TaskList{ // Required Name: aws.String("Name"), // Required }, } resp, err := svc.CountPendingActivityTasks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_CountPendingDecisionTasks() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.CountPendingDecisionTasksInput{ Domain: aws.String("DomainName"), // Required TaskList: &swf.TaskList{ // Required Name: aws.String("Name"), // Required }, } resp, err := svc.CountPendingDecisionTasks(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_DeprecateActivityType() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.DeprecateActivityTypeInput{ ActivityType: &swf.ActivityType{ // Required Name: aws.String("Name"), // Required Version: aws.String("Version"), // Required }, Domain: aws.String("DomainName"), // Required } resp, err := svc.DeprecateActivityType(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_DeprecateDomain() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.DeprecateDomainInput{ Name: aws.String("DomainName"), // Required } resp, err := svc.DeprecateDomain(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_DeprecateWorkflowType() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.DeprecateWorkflowTypeInput{ Domain: aws.String("DomainName"), // Required WorkflowType: &swf.WorkflowType{ // Required Name: aws.String("Name"), // Required Version: aws.String("Version"), // Required }, } resp, err := svc.DeprecateWorkflowType(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_DescribeActivityType() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.DescribeActivityTypeInput{ ActivityType: &swf.ActivityType{ // Required Name: aws.String("Name"), // Required Version: aws.String("Version"), // Required }, Domain: aws.String("DomainName"), // Required } resp, err := svc.DescribeActivityType(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_DescribeDomain() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.DescribeDomainInput{ Name: aws.String("DomainName"), // Required } resp, err := svc.DescribeDomain(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_DescribeWorkflowExecution() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.DescribeWorkflowExecutionInput{ Domain: aws.String("DomainName"), // Required Execution: &swf.WorkflowExecution{ // Required RunId: aws.String("RunId"), // Required WorkflowId: aws.String("WorkflowId"), // Required }, } resp, err := svc.DescribeWorkflowExecution(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_DescribeWorkflowType() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.DescribeWorkflowTypeInput{ Domain: aws.String("DomainName"), // Required WorkflowType: &swf.WorkflowType{ // Required Name: aws.String("Name"), // Required Version: aws.String("Version"), // Required }, } resp, err := svc.DescribeWorkflowType(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_GetWorkflowExecutionHistory() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.GetWorkflowExecutionHistoryInput{ Domain: aws.String("DomainName"), // Required Execution: &swf.WorkflowExecution{ // Required RunId: aws.String("RunId"), // Required WorkflowId: aws.String("WorkflowId"), // Required }, MaximumPageSize: aws.Int64(1), NextPageToken: aws.String("PageToken"), ReverseOrder: aws.Bool(true), } resp, err := svc.GetWorkflowExecutionHistory(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_ListActivityTypes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.ListActivityTypesInput{ Domain: aws.String("DomainName"), // Required RegistrationStatus: aws.String("RegistrationStatus"), // Required MaximumPageSize: aws.Int64(1), Name: aws.String("Name"), NextPageToken: aws.String("PageToken"), ReverseOrder: aws.Bool(true), } resp, err := svc.ListActivityTypes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_ListClosedWorkflowExecutions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.ListClosedWorkflowExecutionsInput{ Domain: aws.String("DomainName"), // Required CloseStatusFilter: &swf.CloseStatusFilter{ Status: aws.String("CloseStatus"), // Required }, CloseTimeFilter: &swf.ExecutionTimeFilter{ OldestDate: aws.Time(time.Now()), // Required LatestDate: aws.Time(time.Now()), }, ExecutionFilter: &swf.WorkflowExecutionFilter{ WorkflowId: aws.String("WorkflowId"), // Required }, MaximumPageSize: aws.Int64(1), NextPageToken: aws.String("PageToken"), ReverseOrder: aws.Bool(true), StartTimeFilter: &swf.ExecutionTimeFilter{ OldestDate: aws.Time(time.Now()), // Required LatestDate: aws.Time(time.Now()), }, TagFilter: &swf.TagFilter{ Tag: aws.String("Tag"), // Required }, TypeFilter: &swf.WorkflowTypeFilter{ Name: aws.String("Name"), // Required Version: aws.String("VersionOptional"), }, } resp, err := svc.ListClosedWorkflowExecutions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_ListDomains() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.ListDomainsInput{ RegistrationStatus: aws.String("RegistrationStatus"), // Required MaximumPageSize: aws.Int64(1), NextPageToken: aws.String("PageToken"), ReverseOrder: aws.Bool(true), } resp, err := svc.ListDomains(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_ListOpenWorkflowExecutions() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.ListOpenWorkflowExecutionsInput{ Domain: aws.String("DomainName"), // Required StartTimeFilter: &swf.ExecutionTimeFilter{ // Required OldestDate: aws.Time(time.Now()), // Required LatestDate: aws.Time(time.Now()), }, ExecutionFilter: &swf.WorkflowExecutionFilter{ WorkflowId: aws.String("WorkflowId"), // Required }, MaximumPageSize: aws.Int64(1), NextPageToken: aws.String("PageToken"), ReverseOrder: aws.Bool(true), TagFilter: &swf.TagFilter{ Tag: aws.String("Tag"), // Required }, TypeFilter: &swf.WorkflowTypeFilter{ Name: aws.String("Name"), // Required Version: aws.String("VersionOptional"), }, } resp, err := svc.ListOpenWorkflowExecutions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_ListWorkflowTypes() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.ListWorkflowTypesInput{ Domain: aws.String("DomainName"), // Required RegistrationStatus: aws.String("RegistrationStatus"), // Required MaximumPageSize: aws.Int64(1), Name: aws.String("Name"), NextPageToken: aws.String("PageToken"), ReverseOrder: aws.Bool(true), } resp, err := svc.ListWorkflowTypes(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_PollForActivityTask() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.PollForActivityTaskInput{ Domain: aws.String("DomainName"), // Required TaskList: &swf.TaskList{ // Required Name: aws.String("Name"), // Required }, Identity: aws.String("Identity"), } resp, err := svc.PollForActivityTask(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_PollForDecisionTask() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.PollForDecisionTaskInput{ Domain: aws.String("DomainName"), // Required TaskList: &swf.TaskList{ // Required Name: aws.String("Name"), // Required }, Identity: aws.String("Identity"), MaximumPageSize: aws.Int64(1), NextPageToken: aws.String("PageToken"), ReverseOrder: aws.Bool(true), } resp, err := svc.PollForDecisionTask(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_RecordActivityTaskHeartbeat() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.RecordActivityTaskHeartbeatInput{ TaskToken: aws.String("TaskToken"), // Required Details: aws.String("LimitedData"), } resp, err := svc.RecordActivityTaskHeartbeat(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_RegisterActivityType() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.RegisterActivityTypeInput{ Domain: aws.String("DomainName"), // Required Name: aws.String("Name"), // Required Version: aws.String("Version"), // Required DefaultTaskHeartbeatTimeout: aws.String("DurationInSecondsOptional"), DefaultTaskList: &swf.TaskList{ Name: aws.String("Name"), // Required }, DefaultTaskPriority: aws.String("TaskPriority"), DefaultTaskScheduleToCloseTimeout: aws.String("DurationInSecondsOptional"), DefaultTaskScheduleToStartTimeout: aws.String("DurationInSecondsOptional"), DefaultTaskStartToCloseTimeout: aws.String("DurationInSecondsOptional"), Description: aws.String("Description"), } resp, err := svc.RegisterActivityType(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_RegisterDomain() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.RegisterDomainInput{ Name: aws.String("DomainName"), // Required WorkflowExecutionRetentionPeriodInDays: aws.String("DurationInDays"), // Required Description: aws.String("Description"), } resp, err := svc.RegisterDomain(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_RegisterWorkflowType() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.RegisterWorkflowTypeInput{ Domain: aws.String("DomainName"), // Required Name: aws.String("Name"), // Required Version: aws.String("Version"), // Required DefaultChildPolicy: aws.String("ChildPolicy"), DefaultExecutionStartToCloseTimeout: aws.String("DurationInSecondsOptional"), DefaultLambdaRole: aws.String("Arn"), DefaultTaskList: &swf.TaskList{ Name: aws.String("Name"), // Required }, DefaultTaskPriority: aws.String("TaskPriority"), DefaultTaskStartToCloseTimeout: aws.String("DurationInSecondsOptional"), Description: aws.String("Description"), } resp, err := svc.RegisterWorkflowType(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_RequestCancelWorkflowExecution() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.RequestCancelWorkflowExecutionInput{ Domain: aws.String("DomainName"), // Required WorkflowId: aws.String("WorkflowId"), // Required RunId: aws.String("RunIdOptional"), } resp, err := svc.RequestCancelWorkflowExecution(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_RespondActivityTaskCanceled() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.RespondActivityTaskCanceledInput{ TaskToken: aws.String("TaskToken"), // Required Details: aws.String("Data"), } resp, err := svc.RespondActivityTaskCanceled(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_RespondActivityTaskCompleted() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.RespondActivityTaskCompletedInput{ TaskToken: aws.String("TaskToken"), // Required Result: aws.String("Data"), } resp, err := svc.RespondActivityTaskCompleted(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_RespondActivityTaskFailed() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.RespondActivityTaskFailedInput{ TaskToken: aws.String("TaskToken"), // Required Details: aws.String("Data"), Reason: aws.String("FailureReason"), } resp, err := svc.RespondActivityTaskFailed(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_RespondDecisionTaskCompleted() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.RespondDecisionTaskCompletedInput{ TaskToken: aws.String("TaskToken"), // Required Decisions: []*swf.Decision{ { // Required DecisionType: aws.String("DecisionType"), // Required CancelTimerDecisionAttributes: &swf.CancelTimerDecisionAttributes{ TimerId: aws.String("TimerId"), // Required }, CancelWorkflowExecutionDecisionAttributes: &swf.CancelWorkflowExecutionDecisionAttributes{ Details: aws.String("Data"), }, CompleteWorkflowExecutionDecisionAttributes: &swf.CompleteWorkflowExecutionDecisionAttributes{ Result: aws.String("Data"), }, ContinueAsNewWorkflowExecutionDecisionAttributes: &swf.ContinueAsNewWorkflowExecutionDecisionAttributes{ ChildPolicy: aws.String("ChildPolicy"), ExecutionStartToCloseTimeout: aws.String("DurationInSecondsOptional"), Input: aws.String("Data"), LambdaRole: aws.String("Arn"), TagList: []*string{ aws.String("Tag"), // Required // More values... }, TaskList: &swf.TaskList{ Name: aws.String("Name"), // Required }, TaskPriority: aws.String("TaskPriority"), TaskStartToCloseTimeout: aws.String("DurationInSecondsOptional"), WorkflowTypeVersion: aws.String("Version"), }, FailWorkflowExecutionDecisionAttributes: &swf.FailWorkflowExecutionDecisionAttributes{ Details: aws.String("Data"), Reason: aws.String("FailureReason"), }, RecordMarkerDecisionAttributes: &swf.RecordMarkerDecisionAttributes{ MarkerName: aws.String("MarkerName"), // Required Details: aws.String("Data"), }, RequestCancelActivityTaskDecisionAttributes: &swf.RequestCancelActivityTaskDecisionAttributes{ ActivityId: aws.String("ActivityId"), // Required }, RequestCancelExternalWorkflowExecutionDecisionAttributes: &swf.RequestCancelExternalWorkflowExecutionDecisionAttributes{ WorkflowId: aws.String("WorkflowId"), // Required Control: aws.String("Data"), RunId: aws.String("RunIdOptional"), }, ScheduleActivityTaskDecisionAttributes: &swf.ScheduleActivityTaskDecisionAttributes{ ActivityId: aws.String("ActivityId"), // Required ActivityType: &swf.ActivityType{ // Required Name: aws.String("Name"), // Required Version: aws.String("Version"), // Required }, Control: aws.String("Data"), HeartbeatTimeout: aws.String("DurationInSecondsOptional"), Input: aws.String("Data"), ScheduleToCloseTimeout: aws.String("DurationInSecondsOptional"), ScheduleToStartTimeout: aws.String("DurationInSecondsOptional"), StartToCloseTimeout: aws.String("DurationInSecondsOptional"), TaskList: &swf.TaskList{ Name: aws.String("Name"), // Required }, TaskPriority: aws.String("TaskPriority"), }, ScheduleLambdaFunctionDecisionAttributes: &swf.ScheduleLambdaFunctionDecisionAttributes{ Id: aws.String("FunctionId"), // Required Name: aws.String("FunctionName"), // Required Input: aws.String("FunctionInput"), StartToCloseTimeout: aws.String("DurationInSecondsOptional"), }, SignalExternalWorkflowExecutionDecisionAttributes: &swf.SignalExternalWorkflowExecutionDecisionAttributes{ SignalName: aws.String("SignalName"), // Required WorkflowId: aws.String("WorkflowId"), // Required Control: aws.String("Data"), Input: aws.String("Data"), RunId: aws.String("RunIdOptional"), }, StartChildWorkflowExecutionDecisionAttributes: &swf.StartChildWorkflowExecutionDecisionAttributes{ WorkflowId: aws.String("WorkflowId"), // Required WorkflowType: &swf.WorkflowType{ // Required Name: aws.String("Name"), // Required Version: aws.String("Version"), // Required }, ChildPolicy: aws.String("ChildPolicy"), Control: aws.String("Data"), ExecutionStartToCloseTimeout: aws.String("DurationInSecondsOptional"), Input: aws.String("Data"), LambdaRole: aws.String("Arn"), TagList: []*string{ aws.String("Tag"), // Required // More values... }, TaskList: &swf.TaskList{ Name: aws.String("Name"), // Required }, TaskPriority: aws.String("TaskPriority"), TaskStartToCloseTimeout: aws.String("DurationInSecondsOptional"), }, StartTimerDecisionAttributes: &swf.StartTimerDecisionAttributes{ StartToFireTimeout: aws.String("DurationInSeconds"), // Required TimerId: aws.String("TimerId"), // Required Control: aws.String("Data"), }, }, // More values... }, ExecutionContext: aws.String("Data"), } resp, err := svc.RespondDecisionTaskCompleted(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_SignalWorkflowExecution() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.SignalWorkflowExecutionInput{ Domain: aws.String("DomainName"), // Required SignalName: aws.String("SignalName"), // Required WorkflowId: aws.String("WorkflowId"), // Required Input: aws.String("Data"), RunId: aws.String("RunIdOptional"), } resp, err := svc.SignalWorkflowExecution(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_StartWorkflowExecution() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.StartWorkflowExecutionInput{ Domain: aws.String("DomainName"), // Required WorkflowId: aws.String("WorkflowId"), // Required WorkflowType: &swf.WorkflowType{ // Required Name: aws.String("Name"), // Required Version: aws.String("Version"), // Required }, ChildPolicy: aws.String("ChildPolicy"), ExecutionStartToCloseTimeout: aws.String("DurationInSecondsOptional"), Input: aws.String("Data"), LambdaRole: aws.String("Arn"), TagList: []*string{ aws.String("Tag"), // Required // More values... }, TaskList: &swf.TaskList{ Name: aws.String("Name"), // Required }, TaskPriority: aws.String("TaskPriority"), TaskStartToCloseTimeout: aws.String("DurationInSecondsOptional"), } resp, err := svc.StartWorkflowExecution(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleSWF_TerminateWorkflowExecution() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := swf.New(sess) params := &swf.TerminateWorkflowExecutionInput{ Domain: aws.String("DomainName"), // Required WorkflowId: aws.String("WorkflowId"), // Required ChildPolicy: aws.String("ChildPolicy"), Details: aws.String("Data"), Reason: aws.String("TerminateReason"), RunId: aws.String("RunIdOptional"), } resp, err := svc.TerminateWorkflowExecution(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/swf/service.go000066400000000000000000000067011300374646400200150ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package swf import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // The Amazon Simple Workflow Service (Amazon SWF) makes it easy to build applications // that use Amazon's cloud to coordinate work across distributed components. // In Amazon SWF, a task represents a logical unit of work that is performed // by a component of your workflow. Coordinating tasks in a workflow involves // managing intertask dependencies, scheduling, and concurrency in accordance // with the logical flow of the application. // // Amazon SWF gives you full control over implementing tasks and coordinating // them without worrying about underlying complexities such as tracking their // progress and maintaining their state. // // This documentation serves as reference only. For a broader overview of the // Amazon SWF programming model, see the Amazon SWF Developer Guide (http://docs.aws.amazon.com/amazonswf/latest/developerguide/). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type SWF struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "swf" // New creates a new instance of the SWF client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a SWF client from just a session. // svc := swf.New(mySession) // // // Create a SWF client with additional configuration // svc := swf.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *SWF { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *SWF { svc := &SWF{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2012-01-25", JSONVersion: "1.0", TargetPrefix: "SimpleWorkflowService", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a SWF operation and runs any // custom request initialization. func (c *SWF) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/swf/swfiface/000077500000000000000000000000001300374646400176115ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/swf/swfiface/interface.go000066400000000000000000000230621300374646400221030ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package swfiface provides an interface to enable mocking the Amazon Simple Workflow Service service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package swfiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/swf" ) // SWFAPI provides an interface to enable mocking the // swf.SWF service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon Simple Workflow Service. // func myFunc(svc swfiface.SWFAPI) bool { // // Make svc.CountClosedWorkflowExecutions request // } // // func main() { // sess := session.New() // svc := swf.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockSWFClient struct { // swfiface.SWFAPI // } // func (m *mockSWFClient) CountClosedWorkflowExecutions(input *swf.CountClosedWorkflowExecutionsInput) (*swf.WorkflowExecutionCount, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockSWFClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type SWFAPI interface { CountClosedWorkflowExecutionsRequest(*swf.CountClosedWorkflowExecutionsInput) (*request.Request, *swf.WorkflowExecutionCount) CountClosedWorkflowExecutions(*swf.CountClosedWorkflowExecutionsInput) (*swf.WorkflowExecutionCount, error) CountOpenWorkflowExecutionsRequest(*swf.CountOpenWorkflowExecutionsInput) (*request.Request, *swf.WorkflowExecutionCount) CountOpenWorkflowExecutions(*swf.CountOpenWorkflowExecutionsInput) (*swf.WorkflowExecutionCount, error) CountPendingActivityTasksRequest(*swf.CountPendingActivityTasksInput) (*request.Request, *swf.PendingTaskCount) CountPendingActivityTasks(*swf.CountPendingActivityTasksInput) (*swf.PendingTaskCount, error) CountPendingDecisionTasksRequest(*swf.CountPendingDecisionTasksInput) (*request.Request, *swf.PendingTaskCount) CountPendingDecisionTasks(*swf.CountPendingDecisionTasksInput) (*swf.PendingTaskCount, error) DeprecateActivityTypeRequest(*swf.DeprecateActivityTypeInput) (*request.Request, *swf.DeprecateActivityTypeOutput) DeprecateActivityType(*swf.DeprecateActivityTypeInput) (*swf.DeprecateActivityTypeOutput, error) DeprecateDomainRequest(*swf.DeprecateDomainInput) (*request.Request, *swf.DeprecateDomainOutput) DeprecateDomain(*swf.DeprecateDomainInput) (*swf.DeprecateDomainOutput, error) DeprecateWorkflowTypeRequest(*swf.DeprecateWorkflowTypeInput) (*request.Request, *swf.DeprecateWorkflowTypeOutput) DeprecateWorkflowType(*swf.DeprecateWorkflowTypeInput) (*swf.DeprecateWorkflowTypeOutput, error) DescribeActivityTypeRequest(*swf.DescribeActivityTypeInput) (*request.Request, *swf.DescribeActivityTypeOutput) DescribeActivityType(*swf.DescribeActivityTypeInput) (*swf.DescribeActivityTypeOutput, error) DescribeDomainRequest(*swf.DescribeDomainInput) (*request.Request, *swf.DescribeDomainOutput) DescribeDomain(*swf.DescribeDomainInput) (*swf.DescribeDomainOutput, error) DescribeWorkflowExecutionRequest(*swf.DescribeWorkflowExecutionInput) (*request.Request, *swf.DescribeWorkflowExecutionOutput) DescribeWorkflowExecution(*swf.DescribeWorkflowExecutionInput) (*swf.DescribeWorkflowExecutionOutput, error) DescribeWorkflowTypeRequest(*swf.DescribeWorkflowTypeInput) (*request.Request, *swf.DescribeWorkflowTypeOutput) DescribeWorkflowType(*swf.DescribeWorkflowTypeInput) (*swf.DescribeWorkflowTypeOutput, error) GetWorkflowExecutionHistoryRequest(*swf.GetWorkflowExecutionHistoryInput) (*request.Request, *swf.GetWorkflowExecutionHistoryOutput) GetWorkflowExecutionHistory(*swf.GetWorkflowExecutionHistoryInput) (*swf.GetWorkflowExecutionHistoryOutput, error) GetWorkflowExecutionHistoryPages(*swf.GetWorkflowExecutionHistoryInput, func(*swf.GetWorkflowExecutionHistoryOutput, bool) bool) error ListActivityTypesRequest(*swf.ListActivityTypesInput) (*request.Request, *swf.ListActivityTypesOutput) ListActivityTypes(*swf.ListActivityTypesInput) (*swf.ListActivityTypesOutput, error) ListActivityTypesPages(*swf.ListActivityTypesInput, func(*swf.ListActivityTypesOutput, bool) bool) error ListClosedWorkflowExecutionsRequest(*swf.ListClosedWorkflowExecutionsInput) (*request.Request, *swf.WorkflowExecutionInfos) ListClosedWorkflowExecutions(*swf.ListClosedWorkflowExecutionsInput) (*swf.WorkflowExecutionInfos, error) ListClosedWorkflowExecutionsPages(*swf.ListClosedWorkflowExecutionsInput, func(*swf.WorkflowExecutionInfos, bool) bool) error ListDomainsRequest(*swf.ListDomainsInput) (*request.Request, *swf.ListDomainsOutput) ListDomains(*swf.ListDomainsInput) (*swf.ListDomainsOutput, error) ListDomainsPages(*swf.ListDomainsInput, func(*swf.ListDomainsOutput, bool) bool) error ListOpenWorkflowExecutionsRequest(*swf.ListOpenWorkflowExecutionsInput) (*request.Request, *swf.WorkflowExecutionInfos) ListOpenWorkflowExecutions(*swf.ListOpenWorkflowExecutionsInput) (*swf.WorkflowExecutionInfos, error) ListOpenWorkflowExecutionsPages(*swf.ListOpenWorkflowExecutionsInput, func(*swf.WorkflowExecutionInfos, bool) bool) error ListWorkflowTypesRequest(*swf.ListWorkflowTypesInput) (*request.Request, *swf.ListWorkflowTypesOutput) ListWorkflowTypes(*swf.ListWorkflowTypesInput) (*swf.ListWorkflowTypesOutput, error) ListWorkflowTypesPages(*swf.ListWorkflowTypesInput, func(*swf.ListWorkflowTypesOutput, bool) bool) error PollForActivityTaskRequest(*swf.PollForActivityTaskInput) (*request.Request, *swf.PollForActivityTaskOutput) PollForActivityTask(*swf.PollForActivityTaskInput) (*swf.PollForActivityTaskOutput, error) PollForDecisionTaskRequest(*swf.PollForDecisionTaskInput) (*request.Request, *swf.PollForDecisionTaskOutput) PollForDecisionTask(*swf.PollForDecisionTaskInput) (*swf.PollForDecisionTaskOutput, error) PollForDecisionTaskPages(*swf.PollForDecisionTaskInput, func(*swf.PollForDecisionTaskOutput, bool) bool) error RecordActivityTaskHeartbeatRequest(*swf.RecordActivityTaskHeartbeatInput) (*request.Request, *swf.RecordActivityTaskHeartbeatOutput) RecordActivityTaskHeartbeat(*swf.RecordActivityTaskHeartbeatInput) (*swf.RecordActivityTaskHeartbeatOutput, error) RegisterActivityTypeRequest(*swf.RegisterActivityTypeInput) (*request.Request, *swf.RegisterActivityTypeOutput) RegisterActivityType(*swf.RegisterActivityTypeInput) (*swf.RegisterActivityTypeOutput, error) RegisterDomainRequest(*swf.RegisterDomainInput) (*request.Request, *swf.RegisterDomainOutput) RegisterDomain(*swf.RegisterDomainInput) (*swf.RegisterDomainOutput, error) RegisterWorkflowTypeRequest(*swf.RegisterWorkflowTypeInput) (*request.Request, *swf.RegisterWorkflowTypeOutput) RegisterWorkflowType(*swf.RegisterWorkflowTypeInput) (*swf.RegisterWorkflowTypeOutput, error) RequestCancelWorkflowExecutionRequest(*swf.RequestCancelWorkflowExecutionInput) (*request.Request, *swf.RequestCancelWorkflowExecutionOutput) RequestCancelWorkflowExecution(*swf.RequestCancelWorkflowExecutionInput) (*swf.RequestCancelWorkflowExecutionOutput, error) RespondActivityTaskCanceledRequest(*swf.RespondActivityTaskCanceledInput) (*request.Request, *swf.RespondActivityTaskCanceledOutput) RespondActivityTaskCanceled(*swf.RespondActivityTaskCanceledInput) (*swf.RespondActivityTaskCanceledOutput, error) RespondActivityTaskCompletedRequest(*swf.RespondActivityTaskCompletedInput) (*request.Request, *swf.RespondActivityTaskCompletedOutput) RespondActivityTaskCompleted(*swf.RespondActivityTaskCompletedInput) (*swf.RespondActivityTaskCompletedOutput, error) RespondActivityTaskFailedRequest(*swf.RespondActivityTaskFailedInput) (*request.Request, *swf.RespondActivityTaskFailedOutput) RespondActivityTaskFailed(*swf.RespondActivityTaskFailedInput) (*swf.RespondActivityTaskFailedOutput, error) RespondDecisionTaskCompletedRequest(*swf.RespondDecisionTaskCompletedInput) (*request.Request, *swf.RespondDecisionTaskCompletedOutput) RespondDecisionTaskCompleted(*swf.RespondDecisionTaskCompletedInput) (*swf.RespondDecisionTaskCompletedOutput, error) SignalWorkflowExecutionRequest(*swf.SignalWorkflowExecutionInput) (*request.Request, *swf.SignalWorkflowExecutionOutput) SignalWorkflowExecution(*swf.SignalWorkflowExecutionInput) (*swf.SignalWorkflowExecutionOutput, error) StartWorkflowExecutionRequest(*swf.StartWorkflowExecutionInput) (*request.Request, *swf.StartWorkflowExecutionOutput) StartWorkflowExecution(*swf.StartWorkflowExecutionInput) (*swf.StartWorkflowExecutionOutput, error) TerminateWorkflowExecutionRequest(*swf.TerminateWorkflowExecutionInput) (*request.Request, *swf.TerminateWorkflowExecutionOutput) TerminateWorkflowExecution(*swf.TerminateWorkflowExecutionInput) (*swf.TerminateWorkflowExecutionOutput, error) } var _ SWFAPI = (*swf.SWF)(nil) aws-sdk-go-1.4.22/service/waf/000077500000000000000000000000001300374646400160005ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/waf/api.go000066400000000000000000011502111300374646400171010ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package waf provides a client for AWS WAF. package waf import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opCreateByteMatchSet = "CreateByteMatchSet" // CreateByteMatchSetRequest generates a "aws/request.Request" representing the // client's request for the CreateByteMatchSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateByteMatchSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateByteMatchSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateByteMatchSetRequest method. // req, resp := client.CreateByteMatchSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) CreateByteMatchSetRequest(input *CreateByteMatchSetInput) (req *request.Request, output *CreateByteMatchSetOutput) { op := &request.Operation{ Name: opCreateByteMatchSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateByteMatchSetInput{} } req = c.newRequest(op, input, output) output = &CreateByteMatchSetOutput{} req.Data = output return } // CreateByteMatchSet API operation for AWS WAF. // // Creates a ByteMatchSet. You then use UpdateByteMatchSet to identify the part // of a web request that you want AWS WAF to inspect, such as the values of // the User-Agent header or the query string. For example, you can create a // ByteMatchSet that matches any requests with User-Agent headers that contain // the string BadBot. You can then configure AWS WAF to reject those requests. // // To create and configure a ByteMatchSet, perform the following steps: // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of a CreateByteMatchSet request. // // Submit a CreateByteMatchSet request. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of an UpdateByteMatchSet request. // // Submit an UpdateByteMatchSet request to specify the part of the request that // you want AWS WAF to inspect (for example, the header or the URI) and the // value that you want AWS WAF to watch for. // // For more information about how to use the AWS WAF API to allow or block HTTP // requests, see the AWS WAF Developer Guide (http://docs.aws.amazon.com/waf/latest/developerguide/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation CreateByteMatchSet for usage and error information. // // Returned Error Codes: // * DisallowedNameException // The name specified is invalid. // // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * InvalidParameterException // The operation failed because AWS WAF didn't recognize a parameter in the // request. For example: // // * You specified an invalid parameter name. // // * You specified an invalid value. // // * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) // using an action other than INSERT or DELETE. // // * You tried to create a WebACL with a DefaultActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a WebACL with a WafActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a ByteMatchSet with a FieldToMatchType other than // HEADER, QUERY_STRING, or URI. // // * You tried to update a ByteMatchSet with a Field of HEADER but no value // for Data. // // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * LimitsExceededException // The operation exceeds a resource limit, for example, the maximum number of // WebACL objects that you can create for an AWS account. For more information, // see Limits (http://docs.aws.amazon.com/waf/latest/developerguide/limits.html) // in the AWS WAF Developer Guide. // func (c *WAF) CreateByteMatchSet(input *CreateByteMatchSetInput) (*CreateByteMatchSetOutput, error) { req, out := c.CreateByteMatchSetRequest(input) err := req.Send() return out, err } const opCreateIPSet = "CreateIPSet" // CreateIPSetRequest generates a "aws/request.Request" representing the // client's request for the CreateIPSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateIPSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateIPSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateIPSetRequest method. // req, resp := client.CreateIPSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) CreateIPSetRequest(input *CreateIPSetInput) (req *request.Request, output *CreateIPSetOutput) { op := &request.Operation{ Name: opCreateIPSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateIPSetInput{} } req = c.newRequest(op, input, output) output = &CreateIPSetOutput{} req.Data = output return } // CreateIPSet API operation for AWS WAF. // // Creates an IPSet, which you use to specify which web requests you want to // allow or block based on the IP addresses that the requests originate from. // For example, if you're receiving a lot of requests from one or more individual // IP addresses or one or more ranges of IP addresses and you want to block // the requests, you can create an IPSet that contains those IP addresses and // then configure AWS WAF to block the requests. // // To create and configure an IPSet, perform the following steps: // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of a CreateIPSet request. // // Submit a CreateIPSet request. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of an UpdateIPSet request. // // Submit an UpdateIPSet request to specify the IP addresses that you want AWS // WAF to watch for. // // For more information about how to use the AWS WAF API to allow or block HTTP // requests, see the AWS WAF Developer Guide (http://docs.aws.amazon.com/waf/latest/developerguide/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation CreateIPSet for usage and error information. // // Returned Error Codes: // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * DisallowedNameException // The name specified is invalid. // // * InvalidParameterException // The operation failed because AWS WAF didn't recognize a parameter in the // request. For example: // // * You specified an invalid parameter name. // // * You specified an invalid value. // // * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) // using an action other than INSERT or DELETE. // // * You tried to create a WebACL with a DefaultActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a WebACL with a WafActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a ByteMatchSet with a FieldToMatchType other than // HEADER, QUERY_STRING, or URI. // // * You tried to update a ByteMatchSet with a Field of HEADER but no value // for Data. // // * LimitsExceededException // The operation exceeds a resource limit, for example, the maximum number of // WebACL objects that you can create for an AWS account. For more information, // see Limits (http://docs.aws.amazon.com/waf/latest/developerguide/limits.html) // in the AWS WAF Developer Guide. // func (c *WAF) CreateIPSet(input *CreateIPSetInput) (*CreateIPSetOutput, error) { req, out := c.CreateIPSetRequest(input) err := req.Send() return out, err } const opCreateRule = "CreateRule" // CreateRuleRequest generates a "aws/request.Request" representing the // client's request for the CreateRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateRuleRequest method. // req, resp := client.CreateRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) CreateRuleRequest(input *CreateRuleInput) (req *request.Request, output *CreateRuleOutput) { op := &request.Operation{ Name: opCreateRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateRuleInput{} } req = c.newRequest(op, input, output) output = &CreateRuleOutput{} req.Data = output return } // CreateRule API operation for AWS WAF. // // Creates a Rule, which contains the IPSet objects, ByteMatchSet objects, and // other predicates that identify the requests that you want to block. If you // add more than one predicate to a Rule, a request must match all of the specifications // to be allowed or blocked. For example, suppose you add the following to a // Rule: // // * An IPSet that matches the IP address 192.0.2.44/32 // // * A ByteMatchSet that matches BadBot in the User-Agent header // // You then add the Rule to a WebACL and specify that you want to blocks requests // that satisfy the Rule. For a request to be blocked, it must come from the // IP address 192.0.2.44 and the User-Agent header in the request must contain // the value BadBot. // // To create and configure a Rule, perform the following steps: // // Create and update the predicates that you want to include in the Rule. For // more information, see CreateByteMatchSet, CreateIPSet, and CreateSqlInjectionMatchSet. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of a CreateRule request. // // Submit a CreateRule request. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of an UpdateRule request. // // Submit an UpdateRule request to specify the predicates that you want to include // in the Rule. // // Create and update a WebACL that contains the Rule. For more information, // see CreateWebACL. // // For more information about how to use the AWS WAF API to allow or block HTTP // requests, see the AWS WAF Developer Guide (http://docs.aws.amazon.com/waf/latest/developerguide/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation CreateRule for usage and error information. // // Returned Error Codes: // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * DisallowedNameException // The name specified is invalid. // // * InvalidParameterException // The operation failed because AWS WAF didn't recognize a parameter in the // request. For example: // // * You specified an invalid parameter name. // // * You specified an invalid value. // // * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) // using an action other than INSERT or DELETE. // // * You tried to create a WebACL with a DefaultActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a WebACL with a WafActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a ByteMatchSet with a FieldToMatchType other than // HEADER, QUERY_STRING, or URI. // // * You tried to update a ByteMatchSet with a Field of HEADER but no value // for Data. // // * LimitsExceededException // The operation exceeds a resource limit, for example, the maximum number of // WebACL objects that you can create for an AWS account. For more information, // see Limits (http://docs.aws.amazon.com/waf/latest/developerguide/limits.html) // in the AWS WAF Developer Guide. // func (c *WAF) CreateRule(input *CreateRuleInput) (*CreateRuleOutput, error) { req, out := c.CreateRuleRequest(input) err := req.Send() return out, err } const opCreateSizeConstraintSet = "CreateSizeConstraintSet" // CreateSizeConstraintSetRequest generates a "aws/request.Request" representing the // client's request for the CreateSizeConstraintSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateSizeConstraintSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateSizeConstraintSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateSizeConstraintSetRequest method. // req, resp := client.CreateSizeConstraintSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) CreateSizeConstraintSetRequest(input *CreateSizeConstraintSetInput) (req *request.Request, output *CreateSizeConstraintSetOutput) { op := &request.Operation{ Name: opCreateSizeConstraintSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateSizeConstraintSetInput{} } req = c.newRequest(op, input, output) output = &CreateSizeConstraintSetOutput{} req.Data = output return } // CreateSizeConstraintSet API operation for AWS WAF. // // Creates a SizeConstraintSet. You then use UpdateSizeConstraintSet to identify // the part of a web request that you want AWS WAF to check for length, such // as the length of the User-Agent header or the length of the query string. // For example, you can create a SizeConstraintSet that matches any requests // that have a query string that is longer than 100 bytes. You can then configure // AWS WAF to reject those requests. // // To create and configure a SizeConstraintSet, perform the following steps: // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of a CreateSizeConstraintSet request. // // Submit a CreateSizeConstraintSet request. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of an UpdateSizeConstraintSet request. // // Submit an UpdateSizeConstraintSet request to specify the part of the request // that you want AWS WAF to inspect (for example, the header or the URI) and // the value that you want AWS WAF to watch for. // // For more information about how to use the AWS WAF API to allow or block HTTP // requests, see the AWS WAF Developer Guide (http://docs.aws.amazon.com/waf/latest/developerguide/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation CreateSizeConstraintSet for usage and error information. // // Returned Error Codes: // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * DisallowedNameException // The name specified is invalid. // // * InvalidParameterException // The operation failed because AWS WAF didn't recognize a parameter in the // request. For example: // // * You specified an invalid parameter name. // // * You specified an invalid value. // // * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) // using an action other than INSERT or DELETE. // // * You tried to create a WebACL with a DefaultActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a WebACL with a WafActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a ByteMatchSet with a FieldToMatchType other than // HEADER, QUERY_STRING, or URI. // // * You tried to update a ByteMatchSet with a Field of HEADER but no value // for Data. // // * LimitsExceededException // The operation exceeds a resource limit, for example, the maximum number of // WebACL objects that you can create for an AWS account. For more information, // see Limits (http://docs.aws.amazon.com/waf/latest/developerguide/limits.html) // in the AWS WAF Developer Guide. // func (c *WAF) CreateSizeConstraintSet(input *CreateSizeConstraintSetInput) (*CreateSizeConstraintSetOutput, error) { req, out := c.CreateSizeConstraintSetRequest(input) err := req.Send() return out, err } const opCreateSqlInjectionMatchSet = "CreateSqlInjectionMatchSet" // CreateSqlInjectionMatchSetRequest generates a "aws/request.Request" representing the // client's request for the CreateSqlInjectionMatchSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateSqlInjectionMatchSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateSqlInjectionMatchSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateSqlInjectionMatchSetRequest method. // req, resp := client.CreateSqlInjectionMatchSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) CreateSqlInjectionMatchSetRequest(input *CreateSqlInjectionMatchSetInput) (req *request.Request, output *CreateSqlInjectionMatchSetOutput) { op := &request.Operation{ Name: opCreateSqlInjectionMatchSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateSqlInjectionMatchSetInput{} } req = c.newRequest(op, input, output) output = &CreateSqlInjectionMatchSetOutput{} req.Data = output return } // CreateSqlInjectionMatchSet API operation for AWS WAF. // // Creates a SqlInjectionMatchSet, which you use to allow, block, or count requests // that contain snippets of SQL code in a specified part of web requests. AWS // WAF searches for character sequences that are likely to be malicious strings. // // To create and configure a SqlInjectionMatchSet, perform the following steps: // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of a CreateSqlInjectionMatchSet request. // // Submit a CreateSqlInjectionMatchSet request. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of an UpdateSqlInjectionMatchSet request. // // Submit an UpdateSqlInjectionMatchSet request to specify the parts of web // requests in which you want to allow, block, or count malicious SQL code. // // For more information about how to use the AWS WAF API to allow or block HTTP // requests, see the AWS WAF Developer Guide (http://docs.aws.amazon.com/waf/latest/developerguide/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation CreateSqlInjectionMatchSet for usage and error information. // // Returned Error Codes: // * DisallowedNameException // The name specified is invalid. // // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * InvalidParameterException // The operation failed because AWS WAF didn't recognize a parameter in the // request. For example: // // * You specified an invalid parameter name. // // * You specified an invalid value. // // * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) // using an action other than INSERT or DELETE. // // * You tried to create a WebACL with a DefaultActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a WebACL with a WafActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a ByteMatchSet with a FieldToMatchType other than // HEADER, QUERY_STRING, or URI. // // * You tried to update a ByteMatchSet with a Field of HEADER but no value // for Data. // // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * LimitsExceededException // The operation exceeds a resource limit, for example, the maximum number of // WebACL objects that you can create for an AWS account. For more information, // see Limits (http://docs.aws.amazon.com/waf/latest/developerguide/limits.html) // in the AWS WAF Developer Guide. // func (c *WAF) CreateSqlInjectionMatchSet(input *CreateSqlInjectionMatchSetInput) (*CreateSqlInjectionMatchSetOutput, error) { req, out := c.CreateSqlInjectionMatchSetRequest(input) err := req.Send() return out, err } const opCreateWebACL = "CreateWebACL" // CreateWebACLRequest generates a "aws/request.Request" representing the // client's request for the CreateWebACL operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateWebACL for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateWebACL method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateWebACLRequest method. // req, resp := client.CreateWebACLRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) CreateWebACLRequest(input *CreateWebACLInput) (req *request.Request, output *CreateWebACLOutput) { op := &request.Operation{ Name: opCreateWebACL, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateWebACLInput{} } req = c.newRequest(op, input, output) output = &CreateWebACLOutput{} req.Data = output return } // CreateWebACL API operation for AWS WAF. // // Creates a WebACL, which contains the Rules that identify the CloudFront web // requests that you want to allow, block, or count. AWS WAF evaluates Rules // in order based on the value of Priority for each Rule. // // You also specify a default action, either ALLOW or BLOCK. If a web request // doesn't match any of the Rules in a WebACL, AWS WAF responds to the request // with the default action. // // To create and configure a WebACL, perform the following steps: // // Create and update the ByteMatchSet objects and other predicates that you // want to include in Rules. For more information, see CreateByteMatchSet, UpdateByteMatchSet, // CreateIPSet, UpdateIPSet, CreateSqlInjectionMatchSet, and UpdateSqlInjectionMatchSet. // // Create and update the Rules that you want to include in the WebACL. For more // information, see CreateRule and UpdateRule. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of a CreateWebACL request. // // Submit a CreateWebACL request. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of an UpdateWebACL request. // // Submit an UpdateWebACL request to specify the Rules that you want to include // in the WebACL, to specify the default action, and to associate the WebACL // with a CloudFront distribution. // // For more information about how to use the AWS WAF API, see the AWS WAF Developer // Guide (http://docs.aws.amazon.com/waf/latest/developerguide/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation CreateWebACL for usage and error information. // // Returned Error Codes: // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * DisallowedNameException // The name specified is invalid. // // * InvalidParameterException // The operation failed because AWS WAF didn't recognize a parameter in the // request. For example: // // * You specified an invalid parameter name. // // * You specified an invalid value. // // * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) // using an action other than INSERT or DELETE. // // * You tried to create a WebACL with a DefaultActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a WebACL with a WafActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a ByteMatchSet with a FieldToMatchType other than // HEADER, QUERY_STRING, or URI. // // * You tried to update a ByteMatchSet with a Field of HEADER but no value // for Data. // // * LimitsExceededException // The operation exceeds a resource limit, for example, the maximum number of // WebACL objects that you can create for an AWS account. For more information, // see Limits (http://docs.aws.amazon.com/waf/latest/developerguide/limits.html) // in the AWS WAF Developer Guide. // func (c *WAF) CreateWebACL(input *CreateWebACLInput) (*CreateWebACLOutput, error) { req, out := c.CreateWebACLRequest(input) err := req.Send() return out, err } const opCreateXssMatchSet = "CreateXssMatchSet" // CreateXssMatchSetRequest generates a "aws/request.Request" representing the // client's request for the CreateXssMatchSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateXssMatchSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateXssMatchSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateXssMatchSetRequest method. // req, resp := client.CreateXssMatchSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) CreateXssMatchSetRequest(input *CreateXssMatchSetInput) (req *request.Request, output *CreateXssMatchSetOutput) { op := &request.Operation{ Name: opCreateXssMatchSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateXssMatchSetInput{} } req = c.newRequest(op, input, output) output = &CreateXssMatchSetOutput{} req.Data = output return } // CreateXssMatchSet API operation for AWS WAF. // // Creates an XssMatchSet, which you use to allow, block, or count requests // that contain cross-site scripting attacks in the specified part of web requests. // AWS WAF searches for character sequences that are likely to be malicious // strings. // // To create and configure an XssMatchSet, perform the following steps: // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of a CreateXssMatchSet request. // // Submit a CreateXssMatchSet request. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of an UpdateXssMatchSet request. // // Submit an UpdateXssMatchSet request to specify the parts of web requests // in which you want to allow, block, or count cross-site scripting attacks. // // For more information about how to use the AWS WAF API to allow or block HTTP // requests, see the AWS WAF Developer Guide (http://docs.aws.amazon.com/waf/latest/developerguide/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation CreateXssMatchSet for usage and error information. // // Returned Error Codes: // * DisallowedNameException // The name specified is invalid. // // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * InvalidParameterException // The operation failed because AWS WAF didn't recognize a parameter in the // request. For example: // // * You specified an invalid parameter name. // // * You specified an invalid value. // // * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) // using an action other than INSERT or DELETE. // // * You tried to create a WebACL with a DefaultActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a WebACL with a WafActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a ByteMatchSet with a FieldToMatchType other than // HEADER, QUERY_STRING, or URI. // // * You tried to update a ByteMatchSet with a Field of HEADER but no value // for Data. // // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * LimitsExceededException // The operation exceeds a resource limit, for example, the maximum number of // WebACL objects that you can create for an AWS account. For more information, // see Limits (http://docs.aws.amazon.com/waf/latest/developerguide/limits.html) // in the AWS WAF Developer Guide. // func (c *WAF) CreateXssMatchSet(input *CreateXssMatchSetInput) (*CreateXssMatchSetOutput, error) { req, out := c.CreateXssMatchSetRequest(input) err := req.Send() return out, err } const opDeleteByteMatchSet = "DeleteByteMatchSet" // DeleteByteMatchSetRequest generates a "aws/request.Request" representing the // client's request for the DeleteByteMatchSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteByteMatchSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteByteMatchSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteByteMatchSetRequest method. // req, resp := client.DeleteByteMatchSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) DeleteByteMatchSetRequest(input *DeleteByteMatchSetInput) (req *request.Request, output *DeleteByteMatchSetOutput) { op := &request.Operation{ Name: opDeleteByteMatchSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteByteMatchSetInput{} } req = c.newRequest(op, input, output) output = &DeleteByteMatchSetOutput{} req.Data = output return } // DeleteByteMatchSet API operation for AWS WAF. // // Permanently deletes a ByteMatchSet. You can't delete a ByteMatchSet if it's // still used in any Rules or if it still includes any ByteMatchTuple objects // (any filters). // // If you just want to remove a ByteMatchSet from a Rule, use UpdateRule. // // To permanently delete a ByteMatchSet, perform the following steps: // // Update the ByteMatchSet to remove filters, if any. For more information, // see UpdateByteMatchSet. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of a DeleteByteMatchSet request. // // Submit a DeleteByteMatchSet request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation DeleteByteMatchSet for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // // * ReferencedItemException // The operation failed because you tried to delete an object that is still // in use. For example: // // * You tried to delete a ByteMatchSet that is still referenced by a Rule. // // * You tried to delete a Rule that is still referenced by a WebACL. // // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * NonEmptyEntityException // The operation failed because you tried to delete an object that isn't empty. // For example: // // * You tried to delete a WebACL that still contains one or more Rule objects. // // * You tried to delete a Rule that still contains one or more ByteMatchSet // objects or other predicates. // // * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple // objects. // // * You tried to delete an IPSet that references one or more IP addresses. // func (c *WAF) DeleteByteMatchSet(input *DeleteByteMatchSetInput) (*DeleteByteMatchSetOutput, error) { req, out := c.DeleteByteMatchSetRequest(input) err := req.Send() return out, err } const opDeleteIPSet = "DeleteIPSet" // DeleteIPSetRequest generates a "aws/request.Request" representing the // client's request for the DeleteIPSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteIPSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteIPSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteIPSetRequest method. // req, resp := client.DeleteIPSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) DeleteIPSetRequest(input *DeleteIPSetInput) (req *request.Request, output *DeleteIPSetOutput) { op := &request.Operation{ Name: opDeleteIPSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteIPSetInput{} } req = c.newRequest(op, input, output) output = &DeleteIPSetOutput{} req.Data = output return } // DeleteIPSet API operation for AWS WAF. // // Permanently deletes an IPSet. You can't delete an IPSet if it's still used // in any Rules or if it still includes any IP addresses. // // If you just want to remove an IPSet from a Rule, use UpdateRule. // // To permanently delete an IPSet from AWS WAF, perform the following steps: // // Update the IPSet to remove IP address ranges, if any. For more information, // see UpdateIPSet. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of a DeleteIPSet request. // // Submit a DeleteIPSet request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation DeleteIPSet for usage and error information. // // Returned Error Codes: // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // // * ReferencedItemException // The operation failed because you tried to delete an object that is still // in use. For example: // // * You tried to delete a ByteMatchSet that is still referenced by a Rule. // // * You tried to delete a Rule that is still referenced by a WebACL. // // * NonEmptyEntityException // The operation failed because you tried to delete an object that isn't empty. // For example: // // * You tried to delete a WebACL that still contains one or more Rule objects. // // * You tried to delete a Rule that still contains one or more ByteMatchSet // objects or other predicates. // // * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple // objects. // // * You tried to delete an IPSet that references one or more IP addresses. // func (c *WAF) DeleteIPSet(input *DeleteIPSetInput) (*DeleteIPSetOutput, error) { req, out := c.DeleteIPSetRequest(input) err := req.Send() return out, err } const opDeleteRule = "DeleteRule" // DeleteRuleRequest generates a "aws/request.Request" representing the // client's request for the DeleteRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteRuleRequest method. // req, resp := client.DeleteRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) DeleteRuleRequest(input *DeleteRuleInput) (req *request.Request, output *DeleteRuleOutput) { op := &request.Operation{ Name: opDeleteRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteRuleInput{} } req = c.newRequest(op, input, output) output = &DeleteRuleOutput{} req.Data = output return } // DeleteRule API operation for AWS WAF. // // Permanently deletes a Rule. You can't delete a Rule if it's still used in // any WebACL objects or if it still includes any predicates, such as ByteMatchSet // objects. // // If you just want to remove a Rule from a WebACL, use UpdateWebACL. // // To permanently delete a Rule from AWS WAF, perform the following steps: // // Update the Rule to remove predicates, if any. For more information, see UpdateRule. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of a DeleteRule request. // // Submit a DeleteRule request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation DeleteRule for usage and error information. // // Returned Error Codes: // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // // * ReferencedItemException // The operation failed because you tried to delete an object that is still // in use. For example: // // * You tried to delete a ByteMatchSet that is still referenced by a Rule. // // * You tried to delete a Rule that is still referenced by a WebACL. // // * NonEmptyEntityException // The operation failed because you tried to delete an object that isn't empty. // For example: // // * You tried to delete a WebACL that still contains one or more Rule objects. // // * You tried to delete a Rule that still contains one or more ByteMatchSet // objects or other predicates. // // * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple // objects. // // * You tried to delete an IPSet that references one or more IP addresses. // func (c *WAF) DeleteRule(input *DeleteRuleInput) (*DeleteRuleOutput, error) { req, out := c.DeleteRuleRequest(input) err := req.Send() return out, err } const opDeleteSizeConstraintSet = "DeleteSizeConstraintSet" // DeleteSizeConstraintSetRequest generates a "aws/request.Request" representing the // client's request for the DeleteSizeConstraintSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteSizeConstraintSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteSizeConstraintSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteSizeConstraintSetRequest method. // req, resp := client.DeleteSizeConstraintSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) DeleteSizeConstraintSetRequest(input *DeleteSizeConstraintSetInput) (req *request.Request, output *DeleteSizeConstraintSetOutput) { op := &request.Operation{ Name: opDeleteSizeConstraintSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteSizeConstraintSetInput{} } req = c.newRequest(op, input, output) output = &DeleteSizeConstraintSetOutput{} req.Data = output return } // DeleteSizeConstraintSet API operation for AWS WAF. // // Permanently deletes a SizeConstraintSet. You can't delete a SizeConstraintSet // if it's still used in any Rules or if it still includes any SizeConstraint // objects (any filters). // // If you just want to remove a SizeConstraintSet from a Rule, use UpdateRule. // // To permanently delete a SizeConstraintSet, perform the following steps: // // Update the SizeConstraintSet to remove filters, if any. For more information, // see UpdateSizeConstraintSet. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of a DeleteSizeConstraintSet request. // // Submit a DeleteSizeConstraintSet request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation DeleteSizeConstraintSet for usage and error information. // // Returned Error Codes: // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // // * ReferencedItemException // The operation failed because you tried to delete an object that is still // in use. For example: // // * You tried to delete a ByteMatchSet that is still referenced by a Rule. // // * You tried to delete a Rule that is still referenced by a WebACL. // // * NonEmptyEntityException // The operation failed because you tried to delete an object that isn't empty. // For example: // // * You tried to delete a WebACL that still contains one or more Rule objects. // // * You tried to delete a Rule that still contains one or more ByteMatchSet // objects or other predicates. // // * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple // objects. // // * You tried to delete an IPSet that references one or more IP addresses. // func (c *WAF) DeleteSizeConstraintSet(input *DeleteSizeConstraintSetInput) (*DeleteSizeConstraintSetOutput, error) { req, out := c.DeleteSizeConstraintSetRequest(input) err := req.Send() return out, err } const opDeleteSqlInjectionMatchSet = "DeleteSqlInjectionMatchSet" // DeleteSqlInjectionMatchSetRequest generates a "aws/request.Request" representing the // client's request for the DeleteSqlInjectionMatchSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteSqlInjectionMatchSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteSqlInjectionMatchSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteSqlInjectionMatchSetRequest method. // req, resp := client.DeleteSqlInjectionMatchSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) DeleteSqlInjectionMatchSetRequest(input *DeleteSqlInjectionMatchSetInput) (req *request.Request, output *DeleteSqlInjectionMatchSetOutput) { op := &request.Operation{ Name: opDeleteSqlInjectionMatchSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteSqlInjectionMatchSetInput{} } req = c.newRequest(op, input, output) output = &DeleteSqlInjectionMatchSetOutput{} req.Data = output return } // DeleteSqlInjectionMatchSet API operation for AWS WAF. // // Permanently deletes a SqlInjectionMatchSet. You can't delete a SqlInjectionMatchSet // if it's still used in any Rules or if it still contains any SqlInjectionMatchTuple // objects. // // If you just want to remove a SqlInjectionMatchSet from a Rule, use UpdateRule. // // To permanently delete a SqlInjectionMatchSet from AWS WAF, perform the following // steps: // // Update the SqlInjectionMatchSet to remove filters, if any. For more information, // see UpdateSqlInjectionMatchSet. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of a DeleteSqlInjectionMatchSet request. // // Submit a DeleteSqlInjectionMatchSet request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation DeleteSqlInjectionMatchSet for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // // * ReferencedItemException // The operation failed because you tried to delete an object that is still // in use. For example: // // * You tried to delete a ByteMatchSet that is still referenced by a Rule. // // * You tried to delete a Rule that is still referenced by a WebACL. // // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * NonEmptyEntityException // The operation failed because you tried to delete an object that isn't empty. // For example: // // * You tried to delete a WebACL that still contains one or more Rule objects. // // * You tried to delete a Rule that still contains one or more ByteMatchSet // objects or other predicates. // // * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple // objects. // // * You tried to delete an IPSet that references one or more IP addresses. // func (c *WAF) DeleteSqlInjectionMatchSet(input *DeleteSqlInjectionMatchSetInput) (*DeleteSqlInjectionMatchSetOutput, error) { req, out := c.DeleteSqlInjectionMatchSetRequest(input) err := req.Send() return out, err } const opDeleteWebACL = "DeleteWebACL" // DeleteWebACLRequest generates a "aws/request.Request" representing the // client's request for the DeleteWebACL operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteWebACL for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteWebACL method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteWebACLRequest method. // req, resp := client.DeleteWebACLRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) DeleteWebACLRequest(input *DeleteWebACLInput) (req *request.Request, output *DeleteWebACLOutput) { op := &request.Operation{ Name: opDeleteWebACL, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteWebACLInput{} } req = c.newRequest(op, input, output) output = &DeleteWebACLOutput{} req.Data = output return } // DeleteWebACL API operation for AWS WAF. // // Permanently deletes a WebACL. You can't delete a WebACL if it still contains // any Rules. // // To delete a WebACL, perform the following steps: // // Update the WebACL to remove Rules, if any. For more information, see UpdateWebACL. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of a DeleteWebACL request. // // Submit a DeleteWebACL request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation DeleteWebACL for usage and error information. // // Returned Error Codes: // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // // * ReferencedItemException // The operation failed because you tried to delete an object that is still // in use. For example: // // * You tried to delete a ByteMatchSet that is still referenced by a Rule. // // * You tried to delete a Rule that is still referenced by a WebACL. // // * NonEmptyEntityException // The operation failed because you tried to delete an object that isn't empty. // For example: // // * You tried to delete a WebACL that still contains one or more Rule objects. // // * You tried to delete a Rule that still contains one or more ByteMatchSet // objects or other predicates. // // * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple // objects. // // * You tried to delete an IPSet that references one or more IP addresses. // func (c *WAF) DeleteWebACL(input *DeleteWebACLInput) (*DeleteWebACLOutput, error) { req, out := c.DeleteWebACLRequest(input) err := req.Send() return out, err } const opDeleteXssMatchSet = "DeleteXssMatchSet" // DeleteXssMatchSetRequest generates a "aws/request.Request" representing the // client's request for the DeleteXssMatchSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteXssMatchSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteXssMatchSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteXssMatchSetRequest method. // req, resp := client.DeleteXssMatchSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) DeleteXssMatchSetRequest(input *DeleteXssMatchSetInput) (req *request.Request, output *DeleteXssMatchSetOutput) { op := &request.Operation{ Name: opDeleteXssMatchSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteXssMatchSetInput{} } req = c.newRequest(op, input, output) output = &DeleteXssMatchSetOutput{} req.Data = output return } // DeleteXssMatchSet API operation for AWS WAF. // // Permanently deletes an XssMatchSet. You can't delete an XssMatchSet if it's // still used in any Rules or if it still contains any XssMatchTuple objects. // // If you just want to remove an XssMatchSet from a Rule, use UpdateRule. // // To permanently delete an XssMatchSet from AWS WAF, perform the following // steps: // // Update the XssMatchSet to remove filters, if any. For more information, see // UpdateXssMatchSet. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of a DeleteXssMatchSet request. // // Submit a DeleteXssMatchSet request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation DeleteXssMatchSet for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // // * ReferencedItemException // The operation failed because you tried to delete an object that is still // in use. For example: // // * You tried to delete a ByteMatchSet that is still referenced by a Rule. // // * You tried to delete a Rule that is still referenced by a WebACL. // // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * NonEmptyEntityException // The operation failed because you tried to delete an object that isn't empty. // For example: // // * You tried to delete a WebACL that still contains one or more Rule objects. // // * You tried to delete a Rule that still contains one or more ByteMatchSet // objects or other predicates. // // * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple // objects. // // * You tried to delete an IPSet that references one or more IP addresses. // func (c *WAF) DeleteXssMatchSet(input *DeleteXssMatchSetInput) (*DeleteXssMatchSetOutput, error) { req, out := c.DeleteXssMatchSetRequest(input) err := req.Send() return out, err } const opGetByteMatchSet = "GetByteMatchSet" // GetByteMatchSetRequest generates a "aws/request.Request" representing the // client's request for the GetByteMatchSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetByteMatchSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetByteMatchSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetByteMatchSetRequest method. // req, resp := client.GetByteMatchSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) GetByteMatchSetRequest(input *GetByteMatchSetInput) (req *request.Request, output *GetByteMatchSetOutput) { op := &request.Operation{ Name: opGetByteMatchSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetByteMatchSetInput{} } req = c.newRequest(op, input, output) output = &GetByteMatchSetOutput{} req.Data = output return } // GetByteMatchSet API operation for AWS WAF. // // Returns the ByteMatchSet specified by ByteMatchSetId. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation GetByteMatchSet for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // func (c *WAF) GetByteMatchSet(input *GetByteMatchSetInput) (*GetByteMatchSetOutput, error) { req, out := c.GetByteMatchSetRequest(input) err := req.Send() return out, err } const opGetChangeToken = "GetChangeToken" // GetChangeTokenRequest generates a "aws/request.Request" representing the // client's request for the GetChangeToken operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetChangeToken for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetChangeToken method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetChangeTokenRequest method. // req, resp := client.GetChangeTokenRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) GetChangeTokenRequest(input *GetChangeTokenInput) (req *request.Request, output *GetChangeTokenOutput) { op := &request.Operation{ Name: opGetChangeToken, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetChangeTokenInput{} } req = c.newRequest(op, input, output) output = &GetChangeTokenOutput{} req.Data = output return } // GetChangeToken API operation for AWS WAF. // // When you want to create, update, or delete AWS WAF objects, get a change // token and include the change token in the create, update, or delete request. // Change tokens ensure that your application doesn't submit conflicting requests // to AWS WAF. // // Each create, update, or delete request must use a unique change token. If // your application submits a GetChangeToken request and then submits a second // GetChangeToken request before submitting a create, update, or delete request, // the second GetChangeToken request returns the same value as the first GetChangeToken // request. // // When you use a change token in a create, update, or delete request, the status // of the change token changes to PENDING, which indicates that AWS WAF is propagating // the change to all AWS WAF servers. Use GetChangeTokenStatus to determine // the status of your change token. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation GetChangeToken for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // func (c *WAF) GetChangeToken(input *GetChangeTokenInput) (*GetChangeTokenOutput, error) { req, out := c.GetChangeTokenRequest(input) err := req.Send() return out, err } const opGetChangeTokenStatus = "GetChangeTokenStatus" // GetChangeTokenStatusRequest generates a "aws/request.Request" representing the // client's request for the GetChangeTokenStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetChangeTokenStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetChangeTokenStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetChangeTokenStatusRequest method. // req, resp := client.GetChangeTokenStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) GetChangeTokenStatusRequest(input *GetChangeTokenStatusInput) (req *request.Request, output *GetChangeTokenStatusOutput) { op := &request.Operation{ Name: opGetChangeTokenStatus, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetChangeTokenStatusInput{} } req = c.newRequest(op, input, output) output = &GetChangeTokenStatusOutput{} req.Data = output return } // GetChangeTokenStatus API operation for AWS WAF. // // Returns the status of a ChangeToken that you got by calling GetChangeToken. // ChangeTokenStatus is one of the following values: // // * PROVISIONED: You requested the change token by calling GetChangeToken, // but you haven't used it yet in a call to create, update, or delete an // AWS WAF object. // // * PENDING: AWS WAF is propagating the create, update, or delete request // to all AWS WAF servers. // // * IN_SYNC: Propagation is complete. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation GetChangeTokenStatus for usage and error information. // // Returned Error Codes: // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // func (c *WAF) GetChangeTokenStatus(input *GetChangeTokenStatusInput) (*GetChangeTokenStatusOutput, error) { req, out := c.GetChangeTokenStatusRequest(input) err := req.Send() return out, err } const opGetIPSet = "GetIPSet" // GetIPSetRequest generates a "aws/request.Request" representing the // client's request for the GetIPSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetIPSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetIPSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetIPSetRequest method. // req, resp := client.GetIPSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) GetIPSetRequest(input *GetIPSetInput) (req *request.Request, output *GetIPSetOutput) { op := &request.Operation{ Name: opGetIPSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetIPSetInput{} } req = c.newRequest(op, input, output) output = &GetIPSetOutput{} req.Data = output return } // GetIPSet API operation for AWS WAF. // // Returns the IPSet that is specified by IPSetId. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation GetIPSet for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // func (c *WAF) GetIPSet(input *GetIPSetInput) (*GetIPSetOutput, error) { req, out := c.GetIPSetRequest(input) err := req.Send() return out, err } const opGetRule = "GetRule" // GetRuleRequest generates a "aws/request.Request" representing the // client's request for the GetRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetRuleRequest method. // req, resp := client.GetRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) GetRuleRequest(input *GetRuleInput) (req *request.Request, output *GetRuleOutput) { op := &request.Operation{ Name: opGetRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetRuleInput{} } req = c.newRequest(op, input, output) output = &GetRuleOutput{} req.Data = output return } // GetRule API operation for AWS WAF. // // Returns the Rule that is specified by the RuleId that you included in the // GetRule request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation GetRule for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // func (c *WAF) GetRule(input *GetRuleInput) (*GetRuleOutput, error) { req, out := c.GetRuleRequest(input) err := req.Send() return out, err } const opGetSampledRequests = "GetSampledRequests" // GetSampledRequestsRequest generates a "aws/request.Request" representing the // client's request for the GetSampledRequests operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetSampledRequests for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetSampledRequests method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetSampledRequestsRequest method. // req, resp := client.GetSampledRequestsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) GetSampledRequestsRequest(input *GetSampledRequestsInput) (req *request.Request, output *GetSampledRequestsOutput) { op := &request.Operation{ Name: opGetSampledRequests, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetSampledRequestsInput{} } req = c.newRequest(op, input, output) output = &GetSampledRequestsOutput{} req.Data = output return } // GetSampledRequests API operation for AWS WAF. // // Gets detailed information about a specified number of requests--a sample--that // AWS WAF randomly selects from among the first 5,000 requests that your AWS // resource received during a time range that you choose. You can specify a // sample size of up to 100 requests, and you can specify any time range in // the previous three hours. // // GetSampledRequests returns a time range, which is usually the time range // that you specified. However, if your resource (such as a CloudFront distribution) // received 5,000 requests before the specified time range elapsed, GetSampledRequests // returns an updated time range. This new time range indicates the actual period // during which AWS WAF selected the requests in the sample. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation GetSampledRequests for usage and error information. // // Returned Error Codes: // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // func (c *WAF) GetSampledRequests(input *GetSampledRequestsInput) (*GetSampledRequestsOutput, error) { req, out := c.GetSampledRequestsRequest(input) err := req.Send() return out, err } const opGetSizeConstraintSet = "GetSizeConstraintSet" // GetSizeConstraintSetRequest generates a "aws/request.Request" representing the // client's request for the GetSizeConstraintSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetSizeConstraintSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetSizeConstraintSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetSizeConstraintSetRequest method. // req, resp := client.GetSizeConstraintSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) GetSizeConstraintSetRequest(input *GetSizeConstraintSetInput) (req *request.Request, output *GetSizeConstraintSetOutput) { op := &request.Operation{ Name: opGetSizeConstraintSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetSizeConstraintSetInput{} } req = c.newRequest(op, input, output) output = &GetSizeConstraintSetOutput{} req.Data = output return } // GetSizeConstraintSet API operation for AWS WAF. // // Returns the SizeConstraintSet specified by SizeConstraintSetId. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation GetSizeConstraintSet for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // func (c *WAF) GetSizeConstraintSet(input *GetSizeConstraintSetInput) (*GetSizeConstraintSetOutput, error) { req, out := c.GetSizeConstraintSetRequest(input) err := req.Send() return out, err } const opGetSqlInjectionMatchSet = "GetSqlInjectionMatchSet" // GetSqlInjectionMatchSetRequest generates a "aws/request.Request" representing the // client's request for the GetSqlInjectionMatchSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetSqlInjectionMatchSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetSqlInjectionMatchSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetSqlInjectionMatchSetRequest method. // req, resp := client.GetSqlInjectionMatchSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) GetSqlInjectionMatchSetRequest(input *GetSqlInjectionMatchSetInput) (req *request.Request, output *GetSqlInjectionMatchSetOutput) { op := &request.Operation{ Name: opGetSqlInjectionMatchSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetSqlInjectionMatchSetInput{} } req = c.newRequest(op, input, output) output = &GetSqlInjectionMatchSetOutput{} req.Data = output return } // GetSqlInjectionMatchSet API operation for AWS WAF. // // Returns the SqlInjectionMatchSet that is specified by SqlInjectionMatchSetId. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation GetSqlInjectionMatchSet for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // func (c *WAF) GetSqlInjectionMatchSet(input *GetSqlInjectionMatchSetInput) (*GetSqlInjectionMatchSetOutput, error) { req, out := c.GetSqlInjectionMatchSetRequest(input) err := req.Send() return out, err } const opGetWebACL = "GetWebACL" // GetWebACLRequest generates a "aws/request.Request" representing the // client's request for the GetWebACL operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetWebACL for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetWebACL method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetWebACLRequest method. // req, resp := client.GetWebACLRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) GetWebACLRequest(input *GetWebACLInput) (req *request.Request, output *GetWebACLOutput) { op := &request.Operation{ Name: opGetWebACL, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetWebACLInput{} } req = c.newRequest(op, input, output) output = &GetWebACLOutput{} req.Data = output return } // GetWebACL API operation for AWS WAF. // // Returns the WebACL that is specified by WebACLId. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation GetWebACL for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // func (c *WAF) GetWebACL(input *GetWebACLInput) (*GetWebACLOutput, error) { req, out := c.GetWebACLRequest(input) err := req.Send() return out, err } const opGetXssMatchSet = "GetXssMatchSet" // GetXssMatchSetRequest generates a "aws/request.Request" representing the // client's request for the GetXssMatchSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See GetXssMatchSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the GetXssMatchSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the GetXssMatchSetRequest method. // req, resp := client.GetXssMatchSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) GetXssMatchSetRequest(input *GetXssMatchSetInput) (req *request.Request, output *GetXssMatchSetOutput) { op := &request.Operation{ Name: opGetXssMatchSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetXssMatchSetInput{} } req = c.newRequest(op, input, output) output = &GetXssMatchSetOutput{} req.Data = output return } // GetXssMatchSet API operation for AWS WAF. // // Returns the XssMatchSet that is specified by XssMatchSetId. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation GetXssMatchSet for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // func (c *WAF) GetXssMatchSet(input *GetXssMatchSetInput) (*GetXssMatchSetOutput, error) { req, out := c.GetXssMatchSetRequest(input) err := req.Send() return out, err } const opListByteMatchSets = "ListByteMatchSets" // ListByteMatchSetsRequest generates a "aws/request.Request" representing the // client's request for the ListByteMatchSets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListByteMatchSets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListByteMatchSets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListByteMatchSetsRequest method. // req, resp := client.ListByteMatchSetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) ListByteMatchSetsRequest(input *ListByteMatchSetsInput) (req *request.Request, output *ListByteMatchSetsOutput) { op := &request.Operation{ Name: opListByteMatchSets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListByteMatchSetsInput{} } req = c.newRequest(op, input, output) output = &ListByteMatchSetsOutput{} req.Data = output return } // ListByteMatchSets API operation for AWS WAF. // // Returns an array of ByteMatchSetSummary objects. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation ListByteMatchSets for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // func (c *WAF) ListByteMatchSets(input *ListByteMatchSetsInput) (*ListByteMatchSetsOutput, error) { req, out := c.ListByteMatchSetsRequest(input) err := req.Send() return out, err } const opListIPSets = "ListIPSets" // ListIPSetsRequest generates a "aws/request.Request" representing the // client's request for the ListIPSets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListIPSets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListIPSets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListIPSetsRequest method. // req, resp := client.ListIPSetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) ListIPSetsRequest(input *ListIPSetsInput) (req *request.Request, output *ListIPSetsOutput) { op := &request.Operation{ Name: opListIPSets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListIPSetsInput{} } req = c.newRequest(op, input, output) output = &ListIPSetsOutput{} req.Data = output return } // ListIPSets API operation for AWS WAF. // // Returns an array of IPSetSummary objects in the response. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation ListIPSets for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // func (c *WAF) ListIPSets(input *ListIPSetsInput) (*ListIPSetsOutput, error) { req, out := c.ListIPSetsRequest(input) err := req.Send() return out, err } const opListRules = "ListRules" // ListRulesRequest generates a "aws/request.Request" representing the // client's request for the ListRules operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListRules for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListRules method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListRulesRequest method. // req, resp := client.ListRulesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) ListRulesRequest(input *ListRulesInput) (req *request.Request, output *ListRulesOutput) { op := &request.Operation{ Name: opListRules, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListRulesInput{} } req = c.newRequest(op, input, output) output = &ListRulesOutput{} req.Data = output return } // ListRules API operation for AWS WAF. // // Returns an array of RuleSummary objects. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation ListRules for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // func (c *WAF) ListRules(input *ListRulesInput) (*ListRulesOutput, error) { req, out := c.ListRulesRequest(input) err := req.Send() return out, err } const opListSizeConstraintSets = "ListSizeConstraintSets" // ListSizeConstraintSetsRequest generates a "aws/request.Request" representing the // client's request for the ListSizeConstraintSets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListSizeConstraintSets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListSizeConstraintSets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListSizeConstraintSetsRequest method. // req, resp := client.ListSizeConstraintSetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) ListSizeConstraintSetsRequest(input *ListSizeConstraintSetsInput) (req *request.Request, output *ListSizeConstraintSetsOutput) { op := &request.Operation{ Name: opListSizeConstraintSets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListSizeConstraintSetsInput{} } req = c.newRequest(op, input, output) output = &ListSizeConstraintSetsOutput{} req.Data = output return } // ListSizeConstraintSets API operation for AWS WAF. // // Returns an array of SizeConstraintSetSummary objects. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation ListSizeConstraintSets for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // func (c *WAF) ListSizeConstraintSets(input *ListSizeConstraintSetsInput) (*ListSizeConstraintSetsOutput, error) { req, out := c.ListSizeConstraintSetsRequest(input) err := req.Send() return out, err } const opListSqlInjectionMatchSets = "ListSqlInjectionMatchSets" // ListSqlInjectionMatchSetsRequest generates a "aws/request.Request" representing the // client's request for the ListSqlInjectionMatchSets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListSqlInjectionMatchSets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListSqlInjectionMatchSets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListSqlInjectionMatchSetsRequest method. // req, resp := client.ListSqlInjectionMatchSetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) ListSqlInjectionMatchSetsRequest(input *ListSqlInjectionMatchSetsInput) (req *request.Request, output *ListSqlInjectionMatchSetsOutput) { op := &request.Operation{ Name: opListSqlInjectionMatchSets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListSqlInjectionMatchSetsInput{} } req = c.newRequest(op, input, output) output = &ListSqlInjectionMatchSetsOutput{} req.Data = output return } // ListSqlInjectionMatchSets API operation for AWS WAF. // // Returns an array of SqlInjectionMatchSet objects. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation ListSqlInjectionMatchSets for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // func (c *WAF) ListSqlInjectionMatchSets(input *ListSqlInjectionMatchSetsInput) (*ListSqlInjectionMatchSetsOutput, error) { req, out := c.ListSqlInjectionMatchSetsRequest(input) err := req.Send() return out, err } const opListWebACLs = "ListWebACLs" // ListWebACLsRequest generates a "aws/request.Request" representing the // client's request for the ListWebACLs operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListWebACLs for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListWebACLs method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListWebACLsRequest method. // req, resp := client.ListWebACLsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) ListWebACLsRequest(input *ListWebACLsInput) (req *request.Request, output *ListWebACLsOutput) { op := &request.Operation{ Name: opListWebACLs, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListWebACLsInput{} } req = c.newRequest(op, input, output) output = &ListWebACLsOutput{} req.Data = output return } // ListWebACLs API operation for AWS WAF. // // Returns an array of WebACLSummary objects in the response. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation ListWebACLs for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // func (c *WAF) ListWebACLs(input *ListWebACLsInput) (*ListWebACLsOutput, error) { req, out := c.ListWebACLsRequest(input) err := req.Send() return out, err } const opListXssMatchSets = "ListXssMatchSets" // ListXssMatchSetsRequest generates a "aws/request.Request" representing the // client's request for the ListXssMatchSets operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ListXssMatchSets for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ListXssMatchSets method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ListXssMatchSetsRequest method. // req, resp := client.ListXssMatchSetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) ListXssMatchSetsRequest(input *ListXssMatchSetsInput) (req *request.Request, output *ListXssMatchSetsOutput) { op := &request.Operation{ Name: opListXssMatchSets, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListXssMatchSetsInput{} } req = c.newRequest(op, input, output) output = &ListXssMatchSetsOutput{} req.Data = output return } // ListXssMatchSets API operation for AWS WAF. // // Returns an array of XssMatchSet objects. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation ListXssMatchSets for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // func (c *WAF) ListXssMatchSets(input *ListXssMatchSetsInput) (*ListXssMatchSetsOutput, error) { req, out := c.ListXssMatchSetsRequest(input) err := req.Send() return out, err } const opUpdateByteMatchSet = "UpdateByteMatchSet" // UpdateByteMatchSetRequest generates a "aws/request.Request" representing the // client's request for the UpdateByteMatchSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateByteMatchSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateByteMatchSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateByteMatchSetRequest method. // req, resp := client.UpdateByteMatchSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) UpdateByteMatchSetRequest(input *UpdateByteMatchSetInput) (req *request.Request, output *UpdateByteMatchSetOutput) { op := &request.Operation{ Name: opUpdateByteMatchSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateByteMatchSetInput{} } req = c.newRequest(op, input, output) output = &UpdateByteMatchSetOutput{} req.Data = output return } // UpdateByteMatchSet API operation for AWS WAF. // // Inserts or deletes ByteMatchTuple objects (filters) in a ByteMatchSet. For // each ByteMatchTuple object, you specify the following values: // // * Whether to insert or delete the object from the array. If you want to // change a ByteMatchSetUpdate object, you delete the existing object and // add a new one. // // * The part of a web request that you want AWS WAF to inspect, such as // a query string or the value of the User-Agent header. // // * The bytes (typically a string that corresponds with ASCII characters) // that you want AWS WAF to look for. For more information, including how // you specify the values for the AWS WAF API and the AWS CLI or SDKs, see // TargetString in the ByteMatchTuple data type. // // * Where to look, such as at the beginning or the end of a query string. // // * Whether to perform any conversions on the request, such as converting // it to lowercase, before inspecting it for the specified string. // // For example, you can add a ByteMatchSetUpdate object that matches web requests // in which User-Agent headers contain the string BadBot. You can then configure // AWS WAF to block those requests. // // To create and configure a ByteMatchSet, perform the following steps: // // Create a ByteMatchSet. For more information, see CreateByteMatchSet. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of an UpdateByteMatchSet request. // // Submit an UpdateByteMatchSet request to specify the part of the request that // you want AWS WAF to inspect (for example, the header or the URI) and the // value that you want AWS WAF to watch for. // // For more information about how to use the AWS WAF API to allow or block HTTP // requests, see the AWS WAF Developer Guide (http://docs.aws.amazon.com/waf/latest/developerguide/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation UpdateByteMatchSet for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * InvalidOperationException // The operation failed because there was nothing to do. For example: // // * You tried to remove a Rule from a WebACL, but the Rule isn't in the // specified WebACL. // // * You tried to remove an IP address from an IPSet, but the IP address // isn't in the specified IPSet. // // * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple // isn't in the specified WebACL. // // * You tried to add a Rule to a WebACL, but the Rule already exists in // the specified WebACL. // // * You tried to add an IP address to an IPSet, but the IP address already // exists in the specified IPSet. // // * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple // already exists in the specified WebACL. // // * InvalidParameterException // The operation failed because AWS WAF didn't recognize a parameter in the // request. For example: // // * You specified an invalid parameter name. // // * You specified an invalid value. // // * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) // using an action other than INSERT or DELETE. // // * You tried to create a WebACL with a DefaultActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a WebACL with a WafActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a ByteMatchSet with a FieldToMatchType other than // HEADER, QUERY_STRING, or URI. // // * You tried to update a ByteMatchSet with a Field of HEADER but no value // for Data. // // * NonexistentContainerException // The operation failed because you tried to add an object to or delete an object // from another object that doesn't exist. For example: // // * You tried to add a Rule to or delete a Rule from a WebACL that doesn't // exist. // // * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule // that doesn't exist. // // * You tried to add an IP address to or delete an IP address from an IPSet // that doesn't exist. // // * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from // a ByteMatchSet that doesn't exist. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * LimitsExceededException // The operation exceeds a resource limit, for example, the maximum number of // WebACL objects that you can create for an AWS account. For more information, // see Limits (http://docs.aws.amazon.com/waf/latest/developerguide/limits.html) // in the AWS WAF Developer Guide. // func (c *WAF) UpdateByteMatchSet(input *UpdateByteMatchSetInput) (*UpdateByteMatchSetOutput, error) { req, out := c.UpdateByteMatchSetRequest(input) err := req.Send() return out, err } const opUpdateIPSet = "UpdateIPSet" // UpdateIPSetRequest generates a "aws/request.Request" representing the // client's request for the UpdateIPSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateIPSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateIPSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateIPSetRequest method. // req, resp := client.UpdateIPSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) UpdateIPSetRequest(input *UpdateIPSetInput) (req *request.Request, output *UpdateIPSetOutput) { op := &request.Operation{ Name: opUpdateIPSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateIPSetInput{} } req = c.newRequest(op, input, output) output = &UpdateIPSetOutput{} req.Data = output return } // UpdateIPSet API operation for AWS WAF. // // Inserts or deletes IPSetDescriptor objects in an IPSet. For each IPSetDescriptor // object, you specify the following values: // // * Whether to insert or delete the object from the array. If you want to // change an IPSetDescriptor object, you delete the existing object and add // a new one. // // * The IP address version, IPv4. // // * The IP address in CIDR notation, for example, 192.0.2.0/24 (for the // range of IP addresses from 192.0.2.0 to 192.0.2.255) or 192.0.2.44/32 // (for the individual IP address 192.0.2.44). // // AWS WAF supports /8, /16, /24, and /32 IP address ranges. For more information // about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing // (https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). // // You use an IPSet to specify which web requests you want to allow or block // based on the IP addresses that the requests originated from. For example, // if you're receiving a lot of requests from one or a small number of IP addresses // and you want to block the requests, you can create an IPSet that specifies // those IP addresses, and then configure AWS WAF to block the requests. // // To create and configure an IPSet, perform the following steps: // // Submit a CreateIPSet request. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of an UpdateIPSet request. // // Submit an UpdateIPSet request to specify the IP addresses that you want AWS // WAF to watch for. // // When you update an IPSet, you specify the IP addresses that you want to add // and/or the IP addresses that you want to delete. If you want to change an // IP address, you delete the existing IP address and add the new one. // // For more information about how to use the AWS WAF API to allow or block HTTP // requests, see the AWS WAF Developer Guide (http://docs.aws.amazon.com/waf/latest/developerguide/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation UpdateIPSet for usage and error information. // // Returned Error Codes: // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * InvalidOperationException // The operation failed because there was nothing to do. For example: // // * You tried to remove a Rule from a WebACL, but the Rule isn't in the // specified WebACL. // // * You tried to remove an IP address from an IPSet, but the IP address // isn't in the specified IPSet. // // * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple // isn't in the specified WebACL. // // * You tried to add a Rule to a WebACL, but the Rule already exists in // the specified WebACL. // // * You tried to add an IP address to an IPSet, but the IP address already // exists in the specified IPSet. // // * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple // already exists in the specified WebACL. // // * InvalidParameterException // The operation failed because AWS WAF didn't recognize a parameter in the // request. For example: // // * You specified an invalid parameter name. // // * You specified an invalid value. // // * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) // using an action other than INSERT or DELETE. // // * You tried to create a WebACL with a DefaultActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a WebACL with a WafActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a ByteMatchSet with a FieldToMatchType other than // HEADER, QUERY_STRING, or URI. // // * You tried to update a ByteMatchSet with a Field of HEADER but no value // for Data. // // * NonexistentContainerException // The operation failed because you tried to add an object to or delete an object // from another object that doesn't exist. For example: // // * You tried to add a Rule to or delete a Rule from a WebACL that doesn't // exist. // // * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule // that doesn't exist. // // * You tried to add an IP address to or delete an IP address from an IPSet // that doesn't exist. // // * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from // a ByteMatchSet that doesn't exist. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // // * ReferencedItemException // The operation failed because you tried to delete an object that is still // in use. For example: // // * You tried to delete a ByteMatchSet that is still referenced by a Rule. // // * You tried to delete a Rule that is still referenced by a WebACL. // // * LimitsExceededException // The operation exceeds a resource limit, for example, the maximum number of // WebACL objects that you can create for an AWS account. For more information, // see Limits (http://docs.aws.amazon.com/waf/latest/developerguide/limits.html) // in the AWS WAF Developer Guide. // func (c *WAF) UpdateIPSet(input *UpdateIPSetInput) (*UpdateIPSetOutput, error) { req, out := c.UpdateIPSetRequest(input) err := req.Send() return out, err } const opUpdateRule = "UpdateRule" // UpdateRuleRequest generates a "aws/request.Request" representing the // client's request for the UpdateRule operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateRule for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateRule method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateRuleRequest method. // req, resp := client.UpdateRuleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) UpdateRuleRequest(input *UpdateRuleInput) (req *request.Request, output *UpdateRuleOutput) { op := &request.Operation{ Name: opUpdateRule, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateRuleInput{} } req = c.newRequest(op, input, output) output = &UpdateRuleOutput{} req.Data = output return } // UpdateRule API operation for AWS WAF. // // Inserts or deletes Predicate objects in a Rule. Each Predicate object identifies // a predicate, such as a ByteMatchSet or an IPSet, that specifies the web requests // that you want to allow, block, or count. If you add more than one predicate // to a Rule, a request must match all of the specifications to be allowed, // blocked, or counted. For example, suppose you add the following to a Rule: // // * A ByteMatchSet that matches the value BadBot in the User-Agent header // // * An IPSet that matches the IP address 192.0.2.44 // // You then add the Rule to a WebACL and specify that you want to block requests // that satisfy the Rule. For a request to be blocked, the User-Agent header // in the request must contain the value BadBotand the request must originate // from the IP address 192.0.2.44. // // To create and configure a Rule, perform the following steps: // // Create and update the predicates that you want to include in the Rule. // // Create the Rule. See CreateRule. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of an UpdateRule request. // // Submit an UpdateRule request to add predicates to the Rule. // // Create and update a WebACL that contains the Rule. See CreateWebACL. // // If you want to replace one ByteMatchSet or IPSet with another, you delete // the existing one and add the new one. // // For more information about how to use the AWS WAF API to allow or block HTTP // requests, see the AWS WAF Developer Guide (http://docs.aws.amazon.com/waf/latest/developerguide/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation UpdateRule for usage and error information. // // Returned Error Codes: // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * InvalidOperationException // The operation failed because there was nothing to do. For example: // // * You tried to remove a Rule from a WebACL, but the Rule isn't in the // specified WebACL. // // * You tried to remove an IP address from an IPSet, but the IP address // isn't in the specified IPSet. // // * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple // isn't in the specified WebACL. // // * You tried to add a Rule to a WebACL, but the Rule already exists in // the specified WebACL. // // * You tried to add an IP address to an IPSet, but the IP address already // exists in the specified IPSet. // // * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple // already exists in the specified WebACL. // // * InvalidParameterException // The operation failed because AWS WAF didn't recognize a parameter in the // request. For example: // // * You specified an invalid parameter name. // // * You specified an invalid value. // // * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) // using an action other than INSERT or DELETE. // // * You tried to create a WebACL with a DefaultActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a WebACL with a WafActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a ByteMatchSet with a FieldToMatchType other than // HEADER, QUERY_STRING, or URI. // // * You tried to update a ByteMatchSet with a Field of HEADER but no value // for Data. // // * NonexistentContainerException // The operation failed because you tried to add an object to or delete an object // from another object that doesn't exist. For example: // // * You tried to add a Rule to or delete a Rule from a WebACL that doesn't // exist. // // * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule // that doesn't exist. // // * You tried to add an IP address to or delete an IP address from an IPSet // that doesn't exist. // // * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from // a ByteMatchSet that doesn't exist. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // // * ReferencedItemException // The operation failed because you tried to delete an object that is still // in use. For example: // // * You tried to delete a ByteMatchSet that is still referenced by a Rule. // // * You tried to delete a Rule that is still referenced by a WebACL. // // * LimitsExceededException // The operation exceeds a resource limit, for example, the maximum number of // WebACL objects that you can create for an AWS account. For more information, // see Limits (http://docs.aws.amazon.com/waf/latest/developerguide/limits.html) // in the AWS WAF Developer Guide. // func (c *WAF) UpdateRule(input *UpdateRuleInput) (*UpdateRuleOutput, error) { req, out := c.UpdateRuleRequest(input) err := req.Send() return out, err } const opUpdateSizeConstraintSet = "UpdateSizeConstraintSet" // UpdateSizeConstraintSetRequest generates a "aws/request.Request" representing the // client's request for the UpdateSizeConstraintSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateSizeConstraintSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateSizeConstraintSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateSizeConstraintSetRequest method. // req, resp := client.UpdateSizeConstraintSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) UpdateSizeConstraintSetRequest(input *UpdateSizeConstraintSetInput) (req *request.Request, output *UpdateSizeConstraintSetOutput) { op := &request.Operation{ Name: opUpdateSizeConstraintSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateSizeConstraintSetInput{} } req = c.newRequest(op, input, output) output = &UpdateSizeConstraintSetOutput{} req.Data = output return } // UpdateSizeConstraintSet API operation for AWS WAF. // // Inserts or deletes SizeConstraint objects (filters) in a SizeConstraintSet. // For each SizeConstraint object, you specify the following values: // // * Whether to insert or delete the object from the array. If you want to // change a SizeConstraintSetUpdate object, you delete the existing object // and add a new one. // // * The part of a web request that you want AWS WAF to evaluate, such as // the length of a query string or the length of the User-Agent header. // // * Whether to perform any transformations on the request, such as converting // it to lowercase, before checking its length. Note that transformations // of the request body are not supported because the AWS resource forwards // only the first 8192 bytes of your request to AWS WAF. // // * A ComparisonOperator used for evaluating the selected part of the request // against the specified Size, such as equals, greater than, less than, and // so on. // // * The length, in bytes, that you want AWS WAF to watch for in selected // part of the request. The length is computed after applying the transformation. // // For example, you can add a SizeConstraintSetUpdate object that matches web // requests in which the length of the User-Agent header is greater than 100 // bytes. You can then configure AWS WAF to block those requests. // // To create and configure a SizeConstraintSet, perform the following steps: // // Create a SizeConstraintSet. For more information, see CreateSizeConstraintSet. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of an UpdateSizeConstraintSet request. // // Submit an UpdateSizeConstraintSet request to specify the part of the request // that you want AWS WAF to inspect (for example, the header or the URI) and // the value that you want AWS WAF to watch for. // // For more information about how to use the AWS WAF API to allow or block HTTP // requests, see the AWS WAF Developer Guide (http://docs.aws.amazon.com/waf/latest/developerguide/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation UpdateSizeConstraintSet for usage and error information. // // Returned Error Codes: // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * InvalidOperationException // The operation failed because there was nothing to do. For example: // // * You tried to remove a Rule from a WebACL, but the Rule isn't in the // specified WebACL. // // * You tried to remove an IP address from an IPSet, but the IP address // isn't in the specified IPSet. // // * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple // isn't in the specified WebACL. // // * You tried to add a Rule to a WebACL, but the Rule already exists in // the specified WebACL. // // * You tried to add an IP address to an IPSet, but the IP address already // exists in the specified IPSet. // // * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple // already exists in the specified WebACL. // // * InvalidParameterException // The operation failed because AWS WAF didn't recognize a parameter in the // request. For example: // // * You specified an invalid parameter name. // // * You specified an invalid value. // // * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) // using an action other than INSERT or DELETE. // // * You tried to create a WebACL with a DefaultActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a WebACL with a WafActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a ByteMatchSet with a FieldToMatchType other than // HEADER, QUERY_STRING, or URI. // // * You tried to update a ByteMatchSet with a Field of HEADER but no value // for Data. // // * NonexistentContainerException // The operation failed because you tried to add an object to or delete an object // from another object that doesn't exist. For example: // // * You tried to add a Rule to or delete a Rule from a WebACL that doesn't // exist. // // * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule // that doesn't exist. // // * You tried to add an IP address to or delete an IP address from an IPSet // that doesn't exist. // // * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from // a ByteMatchSet that doesn't exist. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // // * ReferencedItemException // The operation failed because you tried to delete an object that is still // in use. For example: // // * You tried to delete a ByteMatchSet that is still referenced by a Rule. // // * You tried to delete a Rule that is still referenced by a WebACL. // // * LimitsExceededException // The operation exceeds a resource limit, for example, the maximum number of // WebACL objects that you can create for an AWS account. For more information, // see Limits (http://docs.aws.amazon.com/waf/latest/developerguide/limits.html) // in the AWS WAF Developer Guide. // func (c *WAF) UpdateSizeConstraintSet(input *UpdateSizeConstraintSetInput) (*UpdateSizeConstraintSetOutput, error) { req, out := c.UpdateSizeConstraintSetRequest(input) err := req.Send() return out, err } const opUpdateSqlInjectionMatchSet = "UpdateSqlInjectionMatchSet" // UpdateSqlInjectionMatchSetRequest generates a "aws/request.Request" representing the // client's request for the UpdateSqlInjectionMatchSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateSqlInjectionMatchSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateSqlInjectionMatchSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateSqlInjectionMatchSetRequest method. // req, resp := client.UpdateSqlInjectionMatchSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) UpdateSqlInjectionMatchSetRequest(input *UpdateSqlInjectionMatchSetInput) (req *request.Request, output *UpdateSqlInjectionMatchSetOutput) { op := &request.Operation{ Name: opUpdateSqlInjectionMatchSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateSqlInjectionMatchSetInput{} } req = c.newRequest(op, input, output) output = &UpdateSqlInjectionMatchSetOutput{} req.Data = output return } // UpdateSqlInjectionMatchSet API operation for AWS WAF. // // Inserts or deletes SqlInjectionMatchTuple objects (filters) in a SqlInjectionMatchSet. // For each SqlInjectionMatchTuple object, you specify the following values: // // * Action: Whether to insert the object into or delete the object from // the array. To change a SqlInjectionMatchTuple, you delete the existing // object and add a new one. // // * FieldToMatch: The part of web requests that you want AWS WAF to inspect // and, if you want AWS WAF to inspect a header, the name of the header. // // * TextTransformation: Which text transformation, if any, to perform on // the web request before inspecting the request for snippets of malicious // SQL code. // // You use SqlInjectionMatchSet objects to specify which CloudFront requests // you want to allow, block, or count. For example, if you're receiving requests // that contain snippets of SQL code in the query string and you want to block // the requests, you can create a SqlInjectionMatchSet with the applicable settings, // and then configure AWS WAF to block the requests. // // To create and configure a SqlInjectionMatchSet, perform the following steps: // // Submit a CreateSqlInjectionMatchSet request. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of an UpdateIPSet request. // // Submit an UpdateSqlInjectionMatchSet request to specify the parts of web // requests that you want AWS WAF to inspect for snippets of SQL code. // // For more information about how to use the AWS WAF API to allow or block HTTP // requests, see the AWS WAF Developer Guide (http://docs.aws.amazon.com/waf/latest/developerguide/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation UpdateSqlInjectionMatchSet for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * InvalidOperationException // The operation failed because there was nothing to do. For example: // // * You tried to remove a Rule from a WebACL, but the Rule isn't in the // specified WebACL. // // * You tried to remove an IP address from an IPSet, but the IP address // isn't in the specified IPSet. // // * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple // isn't in the specified WebACL. // // * You tried to add a Rule to a WebACL, but the Rule already exists in // the specified WebACL. // // * You tried to add an IP address to an IPSet, but the IP address already // exists in the specified IPSet. // // * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple // already exists in the specified WebACL. // // * InvalidParameterException // The operation failed because AWS WAF didn't recognize a parameter in the // request. For example: // // * You specified an invalid parameter name. // // * You specified an invalid value. // // * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) // using an action other than INSERT or DELETE. // // * You tried to create a WebACL with a DefaultActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a WebACL with a WafActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a ByteMatchSet with a FieldToMatchType other than // HEADER, QUERY_STRING, or URI. // // * You tried to update a ByteMatchSet with a Field of HEADER but no value // for Data. // // * NonexistentContainerException // The operation failed because you tried to add an object to or delete an object // from another object that doesn't exist. For example: // // * You tried to add a Rule to or delete a Rule from a WebACL that doesn't // exist. // // * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule // that doesn't exist. // // * You tried to add an IP address to or delete an IP address from an IPSet // that doesn't exist. // // * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from // a ByteMatchSet that doesn't exist. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * LimitsExceededException // The operation exceeds a resource limit, for example, the maximum number of // WebACL objects that you can create for an AWS account. For more information, // see Limits (http://docs.aws.amazon.com/waf/latest/developerguide/limits.html) // in the AWS WAF Developer Guide. // func (c *WAF) UpdateSqlInjectionMatchSet(input *UpdateSqlInjectionMatchSetInput) (*UpdateSqlInjectionMatchSetOutput, error) { req, out := c.UpdateSqlInjectionMatchSetRequest(input) err := req.Send() return out, err } const opUpdateWebACL = "UpdateWebACL" // UpdateWebACLRequest generates a "aws/request.Request" representing the // client's request for the UpdateWebACL operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateWebACL for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateWebACL method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateWebACLRequest method. // req, resp := client.UpdateWebACLRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) UpdateWebACLRequest(input *UpdateWebACLInput) (req *request.Request, output *UpdateWebACLOutput) { op := &request.Operation{ Name: opUpdateWebACL, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateWebACLInput{} } req = c.newRequest(op, input, output) output = &UpdateWebACLOutput{} req.Data = output return } // UpdateWebACL API operation for AWS WAF. // // Inserts or deletes ActivatedRule objects in a WebACL. Each Rule identifies // web requests that you want to allow, block, or count. When you update a WebACL, // you specify the following values: // // * A default action for the WebACL, either ALLOW or BLOCK. AWS WAF performs // the default action if a request doesn't match the criteria in any of the // Rules in a WebACL. // // * The Rules that you want to add and/or delete. If you want to replace // one Rule with another, you delete the existing Rule and add the new one. // // * For each Rule, whether you want AWS WAF to allow requests, block requests, // or count requests that match the conditions in the Rule. // // * The order in which you want AWS WAF to evaluate the Rules in a WebACL. // If you add more than one Rule to a WebACL, AWS WAF evaluates each request // against the Rules in order based on the value of Priority. (The Rule that // has the lowest value for Priority is evaluated first.) When a web request // matches all of the predicates (such as ByteMatchSets and IPSets) in a // Rule, AWS WAF immediately takes the corresponding action, allow or block, // and doesn't evaluate the request against the remaining Rules in the WebACL, // if any. // // * The CloudFront distribution that you want to associate with the WebACL. // // To create and configure a WebACL, perform the following steps: // // Create and update the predicates that you want to include in Rules. For more // information, see CreateByteMatchSet, UpdateByteMatchSet, CreateIPSet, UpdateIPSet, // CreateSqlInjectionMatchSet, and UpdateSqlInjectionMatchSet. // // Create and update the Rules that you want to include in the WebACL. For more // information, see CreateRule and UpdateRule. // // Create a WebACL. See CreateWebACL. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of an UpdateWebACL request. // // Submit an UpdateWebACL request to specify the Rules that you want to include // in the WebACL, to specify the default action, and to associate the WebACL // with a CloudFront distribution. // // For more information about how to use the AWS WAF API to allow or block HTTP // requests, see the AWS WAF Developer Guide (http://docs.aws.amazon.com/waf/latest/developerguide/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation UpdateWebACL for usage and error information. // // Returned Error Codes: // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * InvalidOperationException // The operation failed because there was nothing to do. For example: // // * You tried to remove a Rule from a WebACL, but the Rule isn't in the // specified WebACL. // // * You tried to remove an IP address from an IPSet, but the IP address // isn't in the specified IPSet. // // * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple // isn't in the specified WebACL. // // * You tried to add a Rule to a WebACL, but the Rule already exists in // the specified WebACL. // // * You tried to add an IP address to an IPSet, but the IP address already // exists in the specified IPSet. // // * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple // already exists in the specified WebACL. // // * InvalidParameterException // The operation failed because AWS WAF didn't recognize a parameter in the // request. For example: // // * You specified an invalid parameter name. // // * You specified an invalid value. // // * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) // using an action other than INSERT or DELETE. // // * You tried to create a WebACL with a DefaultActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a WebACL with a WafActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a ByteMatchSet with a FieldToMatchType other than // HEADER, QUERY_STRING, or URI. // // * You tried to update a ByteMatchSet with a Field of HEADER but no value // for Data. // // * NonexistentContainerException // The operation failed because you tried to add an object to or delete an object // from another object that doesn't exist. For example: // // * You tried to add a Rule to or delete a Rule from a WebACL that doesn't // exist. // // * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule // that doesn't exist. // // * You tried to add an IP address to or delete an IP address from an IPSet // that doesn't exist. // // * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from // a ByteMatchSet that doesn't exist. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // // * ReferencedItemException // The operation failed because you tried to delete an object that is still // in use. For example: // // * You tried to delete a ByteMatchSet that is still referenced by a Rule. // // * You tried to delete a Rule that is still referenced by a WebACL. // // * LimitsExceededException // The operation exceeds a resource limit, for example, the maximum number of // WebACL objects that you can create for an AWS account. For more information, // see Limits (http://docs.aws.amazon.com/waf/latest/developerguide/limits.html) // in the AWS WAF Developer Guide. // func (c *WAF) UpdateWebACL(input *UpdateWebACLInput) (*UpdateWebACLOutput, error) { req, out := c.UpdateWebACLRequest(input) err := req.Send() return out, err } const opUpdateXssMatchSet = "UpdateXssMatchSet" // UpdateXssMatchSetRequest generates a "aws/request.Request" representing the // client's request for the UpdateXssMatchSet operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See UpdateXssMatchSet for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the UpdateXssMatchSet method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the UpdateXssMatchSetRequest method. // req, resp := client.UpdateXssMatchSetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WAF) UpdateXssMatchSetRequest(input *UpdateXssMatchSetInput) (req *request.Request, output *UpdateXssMatchSetOutput) { op := &request.Operation{ Name: opUpdateXssMatchSet, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateXssMatchSetInput{} } req = c.newRequest(op, input, output) output = &UpdateXssMatchSetOutput{} req.Data = output return } // UpdateXssMatchSet API operation for AWS WAF. // // Inserts or deletes XssMatchTuple objects (filters) in an XssMatchSet. For // each XssMatchTuple object, you specify the following values: // // * Action: Whether to insert the object into or delete the object from // the array. To change a XssMatchTuple, you delete the existing object and // add a new one. // // * FieldToMatch: The part of web requests that you want AWS WAF to inspect // and, if you want AWS WAF to inspect a header, the name of the header. // // * TextTransformation: Which text transformation, if any, to perform on // the web request before inspecting the request for cross-site scripting // attacks. // // You use XssMatchSet objects to specify which CloudFront requests you want // to allow, block, or count. For example, if you're receiving requests that // contain cross-site scripting attacks in the request body and you want to // block the requests, you can create an XssMatchSet with the applicable settings, // and then configure AWS WAF to block the requests. // // To create and configure an XssMatchSet, perform the following steps: // // Submit a CreateXssMatchSet request. // // Use GetChangeToken to get the change token that you provide in the ChangeToken // parameter of an UpdateIPSet request. // // Submit an UpdateXssMatchSet request to specify the parts of web requests // that you want AWS WAF to inspect for cross-site scripting attacks. // // For more information about how to use the AWS WAF API to allow or block HTTP // requests, see the AWS WAF Developer Guide (http://docs.aws.amazon.com/waf/latest/developerguide/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS WAF's // API operation UpdateXssMatchSet for usage and error information. // // Returned Error Codes: // * InternalErrorException // The operation failed because of a system problem, even though the request // was valid. Retry your request. // // * InvalidAccountException // The operation failed because you tried to create, update, or delete an object // by using an invalid account identifier. // // * InvalidOperationException // The operation failed because there was nothing to do. For example: // // * You tried to remove a Rule from a WebACL, but the Rule isn't in the // specified WebACL. // // * You tried to remove an IP address from an IPSet, but the IP address // isn't in the specified IPSet. // // * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple // isn't in the specified WebACL. // // * You tried to add a Rule to a WebACL, but the Rule already exists in // the specified WebACL. // // * You tried to add an IP address to an IPSet, but the IP address already // exists in the specified IPSet. // // * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple // already exists in the specified WebACL. // // * InvalidParameterException // The operation failed because AWS WAF didn't recognize a parameter in the // request. For example: // // * You specified an invalid parameter name. // // * You specified an invalid value. // // * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) // using an action other than INSERT or DELETE. // // * You tried to create a WebACL with a DefaultActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a WebACL with a WafActionType other than ALLOW, // BLOCK, or COUNT. // // * You tried to update a ByteMatchSet with a FieldToMatchType other than // HEADER, QUERY_STRING, or URI. // // * You tried to update a ByteMatchSet with a Field of HEADER but no value // for Data. // // * NonexistentContainerException // The operation failed because you tried to add an object to or delete an object // from another object that doesn't exist. For example: // // * You tried to add a Rule to or delete a Rule from a WebACL that doesn't // exist. // // * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule // that doesn't exist. // // * You tried to add an IP address to or delete an IP address from an IPSet // that doesn't exist. // // * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from // a ByteMatchSet that doesn't exist. // // * NonexistentItemException // The operation failed because the referenced object doesn't exist. // // * StaleDataException // The operation failed because you tried to create, update, or delete an object // by using a change token that has already been used. // // * LimitsExceededException // The operation exceeds a resource limit, for example, the maximum number of // WebACL objects that you can create for an AWS account. For more information, // see Limits (http://docs.aws.amazon.com/waf/latest/developerguide/limits.html) // in the AWS WAF Developer Guide. // func (c *WAF) UpdateXssMatchSet(input *UpdateXssMatchSetInput) (*UpdateXssMatchSetOutput, error) { req, out := c.UpdateXssMatchSetRequest(input) err := req.Send() return out, err } // The ActivatedRule object in an UpdateWebACL request specifies a Rule that // you want to insert or delete, the priority of the Rule in the WebACL, and // the action that you want AWS WAF to take when a web request matches the Rule // (ALLOW, BLOCK, or COUNT). // // To specify whether to insert or delete a Rule, use the Action parameter in // the WebACLUpdate data type. type ActivatedRule struct { _ struct{} `type:"structure"` // Specifies the action that CloudFront or AWS WAF takes when a web request // matches the conditions in the Rule. Valid values for Action include the following: // // * ALLOW: CloudFront responds with the requested object. // // * BLOCK: CloudFront responds with an HTTP 403 (Forbidden) status code. // // * COUNT: AWS WAF increments a counter of requests that match the conditions // in the rule and then continues to inspect the web request based on the // remaining rules in the web ACL. // // Action is a required field Action *WafAction `type:"structure" required:"true"` // Specifies the order in which the Rules in a WebACL are evaluated. Rules with // a lower value for Priority are evaluated before Rules with a higher value. // The value must be a unique integer. If you add multiple Rules to a WebACL, // the values don't need to be consecutive. // // Priority is a required field Priority *int64 `type:"integer" required:"true"` // The RuleId for a Rule. You use RuleId to get more information about a Rule // (see GetRule), update a Rule (see UpdateRule), insert a Rule into a WebACL // or delete a one from a WebACL (see UpdateWebACL), or delete a Rule from AWS // WAF (see DeleteRule). // // RuleId is returned by CreateRule and by ListRules. // // RuleId is a required field RuleId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ActivatedRule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ActivatedRule) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ActivatedRule) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ActivatedRule"} if s.Action == nil { invalidParams.Add(request.NewErrParamRequired("Action")) } if s.Priority == nil { invalidParams.Add(request.NewErrParamRequired("Priority")) } if s.RuleId == nil { invalidParams.Add(request.NewErrParamRequired("RuleId")) } if s.RuleId != nil && len(*s.RuleId) < 1 { invalidParams.Add(request.NewErrParamMinLen("RuleId", 1)) } if s.Action != nil { if err := s.Action.Validate(); err != nil { invalidParams.AddNested("Action", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // In a GetByteMatchSet request, ByteMatchSet is a complex type that contains // the ByteMatchSetId and Name of a ByteMatchSet, and the values that you specified // when you updated the ByteMatchSet. // // A complex type that contains ByteMatchTuple objects, which specify the parts // of web requests that you want AWS WAF to inspect and the values that you // want AWS WAF to search for. If a ByteMatchSet contains more than one ByteMatchTuple // object, a request needs to match the settings in only one ByteMatchTuple // to be considered a match. type ByteMatchSet struct { _ struct{} `type:"structure"` // The ByteMatchSetId for a ByteMatchSet. You use ByteMatchSetId to get information // about a ByteMatchSet (see GetByteMatchSet), update a ByteMatchSet (see UpdateByteMatchSet), // insert a ByteMatchSet into a Rule or delete one from a Rule (see UpdateRule), // and delete a ByteMatchSet from AWS WAF (see DeleteByteMatchSet). // // ByteMatchSetId is returned by CreateByteMatchSet and by ListByteMatchSets. // // ByteMatchSetId is a required field ByteMatchSetId *string `min:"1" type:"string" required:"true"` // Specifies the bytes (typically a string that corresponds with ASCII characters) // that you want AWS WAF to search for in web requests, the location in requests // that you want AWS WAF to search, and other settings. // // ByteMatchTuples is a required field ByteMatchTuples []*ByteMatchTuple `type:"list" required:"true"` // A friendly name or description of the ByteMatchSet. You can't change Name // after you create a ByteMatchSet. Name *string `min:"1" type:"string"` } // String returns the string representation func (s ByteMatchSet) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ByteMatchSet) GoString() string { return s.String() } // Returned by ListByteMatchSets. Each ByteMatchSetSummary object includes the // Name and ByteMatchSetId for one ByteMatchSet. type ByteMatchSetSummary struct { _ struct{} `type:"structure"` // The ByteMatchSetId for a ByteMatchSet. You use ByteMatchSetId to get information // about a ByteMatchSet, update a ByteMatchSet, remove a ByteMatchSet from a // Rule, and delete a ByteMatchSet from AWS WAF. // // ByteMatchSetId is returned by CreateByteMatchSet and by ListByteMatchSets. // // ByteMatchSetId is a required field ByteMatchSetId *string `min:"1" type:"string" required:"true"` // A friendly name or description of the ByteMatchSet. You can't change Name // after you create a ByteMatchSet. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s ByteMatchSetSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ByteMatchSetSummary) GoString() string { return s.String() } // In an UpdateByteMatchSet request, ByteMatchSetUpdate specifies whether to // insert or delete a ByteMatchTuple and includes the settings for the ByteMatchTuple. type ByteMatchSetUpdate struct { _ struct{} `type:"structure"` // Specifies whether to insert or delete a ByteMatchTuple. // // Action is a required field Action *string `type:"string" required:"true" enum:"ChangeAction"` // Information about the part of a web request that you want AWS WAF to inspect // and the value that you want AWS WAF to search for. If you specify DELETE // for the value of Action, the ByteMatchTuple values must exactly match the // values in the ByteMatchTuple that you want to delete from the ByteMatchSet. // // ByteMatchTuple is a required field ByteMatchTuple *ByteMatchTuple `type:"structure" required:"true"` } // String returns the string representation func (s ByteMatchSetUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ByteMatchSetUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ByteMatchSetUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ByteMatchSetUpdate"} if s.Action == nil { invalidParams.Add(request.NewErrParamRequired("Action")) } if s.ByteMatchTuple == nil { invalidParams.Add(request.NewErrParamRequired("ByteMatchTuple")) } if s.ByteMatchTuple != nil { if err := s.ByteMatchTuple.Validate(); err != nil { invalidParams.AddNested("ByteMatchTuple", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The bytes (typically a string that corresponds with ASCII characters) that // you want AWS WAF to search for in web requests, the location in requests // that you want AWS WAF to search, and other settings. type ByteMatchTuple struct { _ struct{} `type:"structure"` // The part of a web request that you want AWS WAF to search, such as a specified // header or a query string. For more information, see FieldToMatch. // // FieldToMatch is a required field FieldToMatch *FieldToMatch `type:"structure" required:"true"` // Within the portion of a web request that you want to search (for example, // in the query string, if any), specify where you want AWS WAF to search. Valid // values include the following: // // CONTAINS // // The specified part of the web request must include the value of TargetString, // but the location doesn't matter. // // CONTAINS_WORD // // The specified part of the web request must include the value of TargetString, // and TargetString must contain only alphanumeric characters or underscore // (A-Z, a-z, 0-9, or _). In addition, TargetString must be a word, which means // one of the following: // // * TargetString exactly matches the value of the specified part of the // web request, such as the value of a header. // // * TargetString is at the beginning of the specified part of the web request // and is followed by a character other than an alphanumeric character or // underscore (_), for example, BadBot;. // // * TargetString is at the end of the specified part of the web request // and is preceded by a character other than an alphanumeric character or // underscore (_), for example, ;BadBot. // // * TargetString is in the middle of the specified part of the web request // and is preceded and followed by characters other than alphanumeric characters // or underscore (_), for example, -BadBot;. // // EXACTLY // // The value of the specified part of the web request must exactly match the // value of TargetString. // // STARTS_WITH // // The value of TargetString must appear at the beginning of the specified part // of the web request. // // ENDS_WITH // // The value of TargetString must appear at the end of the specified part of // the web request. // // PositionalConstraint is a required field PositionalConstraint *string `type:"string" required:"true" enum:"PositionalConstraint"` // The value that you want AWS WAF to search for. AWS WAF searches for the specified // string in the part of web requests that you specified in FieldToMatch. The // maximum length of the value is 50 bytes. // // Valid values depend on the values that you specified for FieldToMatch: // // * HEADER: The value that you want AWS WAF to search for in the request // header that you specified in FieldToMatch, for example, the value of the // User-Agent or Referer header. // // * METHOD: The HTTP method, which indicates the type of operation specified // in the request. CloudFront supports the following methods: DELETE, GET, // HEAD, OPTIONS, PATCH, POST, and PUT. // // * QUERY_STRING: The value that you want AWS WAF to search for in the query // string, which is the part of a URL that appears after a ? character. // // * URI: The value that you want AWS WAF to search for in the part of a // URL that identifies a resource, for example, /images/daily-ad.jpg. // // * BODY: The part of a request that contains any additional data that you // want to send to your web server as the HTTP request body, such as data // from a form. The request body immediately follows the request headers. // Note that only the first 8192 bytes of the request body are forwarded // to AWS WAF for inspection. To allow or block requests based on the length // of the body, you can create a size constraint set. For more information, // see CreateSizeConstraintSet. // // If TargetString includes alphabetic characters A-Z and a-z, note that the // value is case sensitive. // // If you're using the AWS WAF API // // Specify a base64-encoded version of the value. The maximum length of the // value before you base64-encode it is 50 bytes. // // For example, suppose the value of Type is HEADER and the value of Data is // User-Agent. If you want to search the User-Agent header for the value BadBot, // you base64-encode BadBot using MIME base64 encoding and include the resulting // value, QmFkQm90, in the value of TargetString. // // If you're using the AWS CLI or one of the AWS SDKs // // The value that you want AWS WAF to search for. The SDK automatically base64 // encodes the value. // // TargetString is automatically base64 encoded/decoded by the SDK. // // TargetString is a required field TargetString []byte `type:"blob" required:"true"` // Text transformations eliminate some of the unusual formatting that attackers // use in web requests in an effort to bypass AWS WAF. If you specify a transformation, // AWS WAF performs the transformation on TargetString before inspecting a request // for a match. // // CMD_LINE // // When you're concerned that attackers are injecting an operating system commandline // command and using unusual formatting to disguise some or all of the command, // use this option to perform the following transformations: // // * Delete the following characters: \ " ' ^ // // * Delete spaces before the following characters: / ( // // * Replace the following characters with a space: , ; // // * Replace multiple spaces with one space // // * Convert uppercase letters (A-Z) to lowercase (a-z) // // COMPRESS_WHITE_SPACE // // Use this option to replace the following characters with a space character // (decimal 32): // // * \f, formfeed, decimal 12 // // * \t, tab, decimal 9 // // * \n, newline, decimal 10 // // * \r, carriage return, decimal 13 // // * \v, vertical tab, decimal 11 // // * non-breaking space, decimal 160 // // COMPRESS_WHITE_SPACE also replaces multiple spaces with one space. // // HTML_ENTITY_DECODE // // Use this option to replace HTML-encoded characters with unencoded characters. // HTML_ENTITY_DECODE performs the following operations: // // * Replaces (ampersand)quot; with " // // * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160 // // * Replaces (ampersand)lt; with a "less than" symbol // // * Replaces (ampersand)gt; with > // // * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh;, // with the corresponding characters // // * Replaces characters that are represented in decimal format, (ampersand)#nnnn;, // with the corresponding characters // // LOWERCASE // // Use this option to convert uppercase letters (A-Z) to lowercase (a-z). // // URL_DECODE // // Use this option to decode a URL-encoded value. // // NONE // // Specify NONE if you don't want to perform any text transformations. // // TextTransformation is a required field TextTransformation *string `type:"string" required:"true" enum:"TextTransformation"` } // String returns the string representation func (s ByteMatchTuple) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ByteMatchTuple) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ByteMatchTuple) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ByteMatchTuple"} if s.FieldToMatch == nil { invalidParams.Add(request.NewErrParamRequired("FieldToMatch")) } if s.PositionalConstraint == nil { invalidParams.Add(request.NewErrParamRequired("PositionalConstraint")) } if s.TargetString == nil { invalidParams.Add(request.NewErrParamRequired("TargetString")) } if s.TextTransformation == nil { invalidParams.Add(request.NewErrParamRequired("TextTransformation")) } if s.FieldToMatch != nil { if err := s.FieldToMatch.Validate(); err != nil { invalidParams.AddNested("FieldToMatch", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateByteMatchSetInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // A friendly name or description of the ByteMatchSet. You can't change Name // after you create a ByteMatchSet. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateByteMatchSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateByteMatchSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateByteMatchSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateByteMatchSetInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateByteMatchSetOutput struct { _ struct{} `type:"structure"` // A ByteMatchSet that contains no ByteMatchTuple objects. ByteMatchSet *ByteMatchSet `type:"structure"` // The ChangeToken that you used to submit the CreateByteMatchSet request. You // can also use this value to query the status of the request. For more information, // see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` } // String returns the string representation func (s CreateByteMatchSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateByteMatchSetOutput) GoString() string { return s.String() } type CreateIPSetInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // A friendly name or description of the IPSet. You can't change Name after // you create the IPSet. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateIPSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateIPSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateIPSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateIPSetInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateIPSetOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the CreateIPSet request. You can // also use this value to query the status of the request. For more information, // see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` // The IPSet returned in the CreateIPSet response. IPSet *IPSet `type:"structure"` } // String returns the string representation func (s CreateIPSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateIPSetOutput) GoString() string { return s.String() } type CreateRuleInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // A friendly name or description for the metrics for this Rule. The name can // contain only alphanumeric characters (A-Z, a-z, 0-9); the name can't contain // whitespace. You can't change the name of the metric after you create the // Rule. // // MetricName is a required field MetricName *string `type:"string" required:"true"` // A friendly name or description of the Rule. You can't change the name of // a Rule after you create it. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateRuleInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.MetricName == nil { invalidParams.Add(request.NewErrParamRequired("MetricName")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateRuleOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the CreateRule request. You can also // use this value to query the status of the request. For more information, // see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` // The Rule returned in the CreateRule response. Rule *Rule `type:"structure"` } // String returns the string representation func (s CreateRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateRuleOutput) GoString() string { return s.String() } type CreateSizeConstraintSetInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // A friendly name or description of the SizeConstraintSet. You can't change // Name after you create a SizeConstraintSet. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateSizeConstraintSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSizeConstraintSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateSizeConstraintSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateSizeConstraintSetInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateSizeConstraintSetOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the CreateSizeConstraintSet request. // You can also use this value to query the status of the request. For more // information, see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` // A SizeConstraintSet that contains no SizeConstraint objects. SizeConstraintSet *SizeConstraintSet `type:"structure"` } // String returns the string representation func (s CreateSizeConstraintSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSizeConstraintSetOutput) GoString() string { return s.String() } // A request to create a SqlInjectionMatchSet. type CreateSqlInjectionMatchSetInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // A friendly name or description for the SqlInjectionMatchSet that you're creating. // You can't change Name after you create the SqlInjectionMatchSet. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateSqlInjectionMatchSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSqlInjectionMatchSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateSqlInjectionMatchSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateSqlInjectionMatchSetInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response to a CreateSqlInjectionMatchSet request. type CreateSqlInjectionMatchSetOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the CreateSqlInjectionMatchSet request. // You can also use this value to query the status of the request. For more // information, see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` // A SqlInjectionMatchSet. SqlInjectionMatchSet *SqlInjectionMatchSet `type:"structure"` } // String returns the string representation func (s CreateSqlInjectionMatchSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateSqlInjectionMatchSetOutput) GoString() string { return s.String() } type CreateWebACLInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // The action that you want AWS WAF to take when a request doesn't match the // criteria specified in any of the Rule objects that are associated with the // WebACL. // // DefaultAction is a required field DefaultAction *WafAction `type:"structure" required:"true"` // A friendly name or description for the metrics for this WebACL. The name // can contain only alphanumeric characters (A-Z, a-z, 0-9); the name can't // contain whitespace. You can't change MetricName after you create the WebACL. // // MetricName is a required field MetricName *string `type:"string" required:"true"` // A friendly name or description of the WebACL. You can't change Name after // you create the WebACL. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateWebACLInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateWebACLInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateWebACLInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateWebACLInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.DefaultAction == nil { invalidParams.Add(request.NewErrParamRequired("DefaultAction")) } if s.MetricName == nil { invalidParams.Add(request.NewErrParamRequired("MetricName")) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.DefaultAction != nil { if err := s.DefaultAction.Validate(); err != nil { invalidParams.AddNested("DefaultAction", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type CreateWebACLOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the CreateWebACL request. You can // also use this value to query the status of the request. For more information, // see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` // The WebACL returned in the CreateWebACL response. WebACL *WebACL `type:"structure"` } // String returns the string representation func (s CreateWebACLOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateWebACLOutput) GoString() string { return s.String() } // A request to create an XssMatchSet. type CreateXssMatchSetInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // A friendly name or description for the XssMatchSet that you're creating. // You can't change Name after you create the XssMatchSet. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateXssMatchSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateXssMatchSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateXssMatchSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateXssMatchSetInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response to a CreateXssMatchSet request. type CreateXssMatchSetOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the CreateXssMatchSet request. You // can also use this value to query the status of the request. For more information, // see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` // An XssMatchSet. XssMatchSet *XssMatchSet `type:"structure"` } // String returns the string representation func (s CreateXssMatchSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateXssMatchSetOutput) GoString() string { return s.String() } type DeleteByteMatchSetInput struct { _ struct{} `type:"structure"` // The ByteMatchSetId of the ByteMatchSet that you want to delete. ByteMatchSetId // is returned by CreateByteMatchSet and by ListByteMatchSets. // // ByteMatchSetId is a required field ByteMatchSetId *string `min:"1" type:"string" required:"true"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteByteMatchSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteByteMatchSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteByteMatchSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteByteMatchSetInput"} if s.ByteMatchSetId == nil { invalidParams.Add(request.NewErrParamRequired("ByteMatchSetId")) } if s.ByteMatchSetId != nil && len(*s.ByteMatchSetId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ByteMatchSetId", 1)) } if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteByteMatchSetOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the DeleteByteMatchSet request. You // can also use this value to query the status of the request. For more information, // see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` } // String returns the string representation func (s DeleteByteMatchSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteByteMatchSetOutput) GoString() string { return s.String() } type DeleteIPSetInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // The IPSetId of the IPSet that you want to delete. IPSetId is returned by // CreateIPSet and by ListIPSets. // // IPSetId is a required field IPSetId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteIPSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteIPSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteIPSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteIPSetInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.IPSetId == nil { invalidParams.Add(request.NewErrParamRequired("IPSetId")) } if s.IPSetId != nil && len(*s.IPSetId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IPSetId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteIPSetOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the DeleteIPSet request. You can // also use this value to query the status of the request. For more information, // see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` } // String returns the string representation func (s DeleteIPSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteIPSetOutput) GoString() string { return s.String() } type DeleteRuleInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // The RuleId of the Rule that you want to delete. RuleId is returned by CreateRule // and by ListRules. // // RuleId is a required field RuleId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteRuleInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.RuleId == nil { invalidParams.Add(request.NewErrParamRequired("RuleId")) } if s.RuleId != nil && len(*s.RuleId) < 1 { invalidParams.Add(request.NewErrParamMinLen("RuleId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteRuleOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the DeleteRule request. You can also // use this value to query the status of the request. For more information, // see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` } // String returns the string representation func (s DeleteRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteRuleOutput) GoString() string { return s.String() } type DeleteSizeConstraintSetInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // The SizeConstraintSetId of the SizeConstraintSet that you want to delete. // SizeConstraintSetId is returned by CreateSizeConstraintSet and by ListSizeConstraintSets. // // SizeConstraintSetId is a required field SizeConstraintSetId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteSizeConstraintSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSizeConstraintSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteSizeConstraintSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteSizeConstraintSetInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.SizeConstraintSetId == nil { invalidParams.Add(request.NewErrParamRequired("SizeConstraintSetId")) } if s.SizeConstraintSetId != nil && len(*s.SizeConstraintSetId) < 1 { invalidParams.Add(request.NewErrParamMinLen("SizeConstraintSetId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteSizeConstraintSetOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the DeleteSizeConstraintSet request. // You can also use this value to query the status of the request. For more // information, see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` } // String returns the string representation func (s DeleteSizeConstraintSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSizeConstraintSetOutput) GoString() string { return s.String() } // A request to delete a SqlInjectionMatchSet from AWS WAF. type DeleteSqlInjectionMatchSetInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // The SqlInjectionMatchSetId of the SqlInjectionMatchSet that you want to delete. // SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets. // // SqlInjectionMatchSetId is a required field SqlInjectionMatchSetId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteSqlInjectionMatchSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSqlInjectionMatchSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteSqlInjectionMatchSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteSqlInjectionMatchSetInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.SqlInjectionMatchSetId == nil { invalidParams.Add(request.NewErrParamRequired("SqlInjectionMatchSetId")) } if s.SqlInjectionMatchSetId != nil && len(*s.SqlInjectionMatchSetId) < 1 { invalidParams.Add(request.NewErrParamMinLen("SqlInjectionMatchSetId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response to a request to delete a SqlInjectionMatchSet from AWS WAF. type DeleteSqlInjectionMatchSetOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the DeleteSqlInjectionMatchSet request. // You can also use this value to query the status of the request. For more // information, see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` } // String returns the string representation func (s DeleteSqlInjectionMatchSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteSqlInjectionMatchSetOutput) GoString() string { return s.String() } type DeleteWebACLInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // The WebACLId of the WebACL that you want to delete. WebACLId is returned // by CreateWebACL and by ListWebACLs. // // WebACLId is a required field WebACLId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteWebACLInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteWebACLInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteWebACLInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteWebACLInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.WebACLId == nil { invalidParams.Add(request.NewErrParamRequired("WebACLId")) } if s.WebACLId != nil && len(*s.WebACLId) < 1 { invalidParams.Add(request.NewErrParamMinLen("WebACLId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DeleteWebACLOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the DeleteWebACL request. You can // also use this value to query the status of the request. For more information, // see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` } // String returns the string representation func (s DeleteWebACLOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteWebACLOutput) GoString() string { return s.String() } // A request to delete an XssMatchSet from AWS WAF. type DeleteXssMatchSetInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // The XssMatchSetId of the XssMatchSet that you want to delete. XssMatchSetId // is returned by CreateXssMatchSet and by ListXssMatchSets. // // XssMatchSetId is a required field XssMatchSetId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DeleteXssMatchSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteXssMatchSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteXssMatchSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteXssMatchSetInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.XssMatchSetId == nil { invalidParams.Add(request.NewErrParamRequired("XssMatchSetId")) } if s.XssMatchSetId != nil && len(*s.XssMatchSetId) < 1 { invalidParams.Add(request.NewErrParamMinLen("XssMatchSetId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response to a request to delete an XssMatchSet from AWS WAF. type DeleteXssMatchSetOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the DeleteXssMatchSet request. You // can also use this value to query the status of the request. For more information, // see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` } // String returns the string representation func (s DeleteXssMatchSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteXssMatchSetOutput) GoString() string { return s.String() } // Specifies where in a web request to look for TargetString. type FieldToMatch struct { _ struct{} `type:"structure"` // When the value of Type is HEADER, enter the name of the header that you want // AWS WAF to search, for example, User-Agent or Referer. If the value of Type // is any other value, omit Data. // // The name of the header is not case sensitive. Data *string `type:"string"` // The part of the web request that you want AWS WAF to search for a specified // string. Parts of a request that you can search include the following: // // * HEADER: A specified request header, for example, the value of the User-Agent // or Referer header. If you choose HEADER for the type, specify the name // of the header in Data. // // * METHOD: The HTTP method, which indicated the type of operation that // the request is asking the origin to perform. Amazon CloudFront supports // the following methods: DELETE, GET, HEAD, OPTIONS, PATCH, POST, and PUT. // // * QUERY_STRING: A query string, which is the part of a URL that appears // after a ? character, if any. // // * URI: The part of a web request that identifies a resource, for example, // /images/daily-ad.jpg. // // * BODY: The part of a request that contains any additional data that you // want to send to your web server as the HTTP request body, such as data // from a form. The request body immediately follows the request headers. // Note that only the first 8192 bytes of the request body are forwarded // to AWS WAF for inspection. To allow or block requests based on the length // of the body, you can create a size constraint set. For more information, // see CreateSizeConstraintSet. // // Type is a required field Type *string `type:"string" required:"true" enum:"MatchFieldType"` } // String returns the string representation func (s FieldToMatch) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FieldToMatch) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *FieldToMatch) Validate() error { invalidParams := request.ErrInvalidParams{Context: "FieldToMatch"} if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetByteMatchSetInput struct { _ struct{} `type:"structure"` // The ByteMatchSetId of the ByteMatchSet that you want to get. ByteMatchSetId // is returned by CreateByteMatchSet and by ListByteMatchSets. // // ByteMatchSetId is a required field ByteMatchSetId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetByteMatchSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetByteMatchSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetByteMatchSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetByteMatchSetInput"} if s.ByteMatchSetId == nil { invalidParams.Add(request.NewErrParamRequired("ByteMatchSetId")) } if s.ByteMatchSetId != nil && len(*s.ByteMatchSetId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ByteMatchSetId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetByteMatchSetOutput struct { _ struct{} `type:"structure"` // Information about the ByteMatchSet that you specified in the GetByteMatchSet // request. For more information, see the following topics: // // * ByteMatchSet: Contains ByteMatchSetId, ByteMatchTuples, and Name // // * ByteMatchTuples: Contains an array of ByteMatchTuple objects. Each ByteMatchTuple // object contains FieldToMatch, PositionalConstraint, TargetString, and // TextTransformation // // * FieldToMatch: Contains Data and Type ByteMatchSet *ByteMatchSet `type:"structure"` } // String returns the string representation func (s GetByteMatchSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetByteMatchSetOutput) GoString() string { return s.String() } type GetChangeTokenInput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s GetChangeTokenInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetChangeTokenInput) GoString() string { return s.String() } type GetChangeTokenOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used in the request. Use this value in a GetChangeTokenStatus // request to get the current status of the request. ChangeToken *string `min:"1" type:"string"` } // String returns the string representation func (s GetChangeTokenOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetChangeTokenOutput) GoString() string { return s.String() } type GetChangeTokenStatusInput struct { _ struct{} `type:"structure"` // The change token for which you want to get the status. This change token // was previously returned in the GetChangeToken response. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetChangeTokenStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetChangeTokenStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetChangeTokenStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetChangeTokenStatusInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetChangeTokenStatusOutput struct { _ struct{} `type:"structure"` // The status of the change token. ChangeTokenStatus *string `type:"string" enum:"ChangeTokenStatus"` } // String returns the string representation func (s GetChangeTokenStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetChangeTokenStatusOutput) GoString() string { return s.String() } type GetIPSetInput struct { _ struct{} `type:"structure"` // The IPSetId of the IPSet that you want to get. IPSetId is returned by CreateIPSet // and by ListIPSets. // // IPSetId is a required field IPSetId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetIPSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIPSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetIPSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetIPSetInput"} if s.IPSetId == nil { invalidParams.Add(request.NewErrParamRequired("IPSetId")) } if s.IPSetId != nil && len(*s.IPSetId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IPSetId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetIPSetOutput struct { _ struct{} `type:"structure"` // Information about the IPSet that you specified in the GetIPSet request. For // more information, see the following topics: // // * IPSet: Contains IPSetDescriptors, IPSetId, and Name // // * IPSetDescriptors: Contains an array of IPSetDescriptor objects. Each // IPSetDescriptor object contains Type and Value IPSet *IPSet `type:"structure"` } // String returns the string representation func (s GetIPSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetIPSetOutput) GoString() string { return s.String() } type GetRuleInput struct { _ struct{} `type:"structure"` // The RuleId of the Rule that you want to get. RuleId is returned by CreateRule // and by ListRules. // // RuleId is a required field RuleId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetRuleInput"} if s.RuleId == nil { invalidParams.Add(request.NewErrParamRequired("RuleId")) } if s.RuleId != nil && len(*s.RuleId) < 1 { invalidParams.Add(request.NewErrParamMinLen("RuleId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetRuleOutput struct { _ struct{} `type:"structure"` // Information about the Rule that you specified in the GetRule request. For // more information, see the following topics: // // * Rule: Contains MetricName, Name, an array of Predicate objects, and // RuleId // // * Predicate: Each Predicate object contains DataId, Negated, and Type Rule *Rule `type:"structure"` } // String returns the string representation func (s GetRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetRuleOutput) GoString() string { return s.String() } type GetSampledRequestsInput struct { _ struct{} `type:"structure"` // The number of requests that you want AWS WAF to return from among the first // 5,000 requests that your AWS resource received during the time range. If // your resource received fewer requests than the value of MaxItems, GetSampledRequests // returns information about all of them. // // MaxItems is a required field MaxItems *int64 `min:"1" type:"long" required:"true"` // RuleId is one of two values: // // * The RuleId of the Rule for which you want GetSampledRequests to return // a sample of requests. // // * Default_Action, which causes GetSampledRequests to return a sample of // the requests that didn't match any of the rules in the specified WebACL. // // RuleId is a required field RuleId *string `min:"1" type:"string" required:"true"` // The start date and time and the end date and time of the range for which // you want GetSampledRequests to return a sample of requests. Specify the date // and time in Unix time format (in seconds). You can specify any time range // in the previous three hours. // // TimeWindow is a required field TimeWindow *TimeWindow `type:"structure" required:"true"` // The WebACLId of the WebACL for which you want GetSampledRequests to return // a sample of requests. // // WebAclId is a required field WebAclId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetSampledRequestsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSampledRequestsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetSampledRequestsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetSampledRequestsInput"} if s.MaxItems == nil { invalidParams.Add(request.NewErrParamRequired("MaxItems")) } if s.MaxItems != nil && *s.MaxItems < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) } if s.RuleId == nil { invalidParams.Add(request.NewErrParamRequired("RuleId")) } if s.RuleId != nil && len(*s.RuleId) < 1 { invalidParams.Add(request.NewErrParamMinLen("RuleId", 1)) } if s.TimeWindow == nil { invalidParams.Add(request.NewErrParamRequired("TimeWindow")) } if s.WebAclId == nil { invalidParams.Add(request.NewErrParamRequired("WebAclId")) } if s.WebAclId != nil && len(*s.WebAclId) < 1 { invalidParams.Add(request.NewErrParamMinLen("WebAclId", 1)) } if s.TimeWindow != nil { if err := s.TimeWindow.Validate(); err != nil { invalidParams.AddNested("TimeWindow", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetSampledRequestsOutput struct { _ struct{} `type:"structure"` // The total number of requests from which GetSampledRequests got a sample of // MaxItems requests. If PopulationSize is less than MaxItems, the sample includes // every request that your AWS resource received during the specified time range. PopulationSize *int64 `type:"long"` // A complex type that contains detailed information about each of the requests // in the sample. SampledRequests []*SampledHTTPRequest `type:"list"` // Usually, TimeWindow is the time range that you specified in the GetSampledRequests // request. However, if your AWS resource received more than 5,000 requests // during the time range that you specified in the request, GetSampledRequests // returns the time range for the first 5,000 requests. TimeWindow *TimeWindow `type:"structure"` } // String returns the string representation func (s GetSampledRequestsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSampledRequestsOutput) GoString() string { return s.String() } type GetSizeConstraintSetInput struct { _ struct{} `type:"structure"` // The SizeConstraintSetId of the SizeConstraintSet that you want to get. SizeConstraintSetId // is returned by CreateSizeConstraintSet and by ListSizeConstraintSets. // // SizeConstraintSetId is a required field SizeConstraintSetId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetSizeConstraintSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSizeConstraintSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetSizeConstraintSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetSizeConstraintSetInput"} if s.SizeConstraintSetId == nil { invalidParams.Add(request.NewErrParamRequired("SizeConstraintSetId")) } if s.SizeConstraintSetId != nil && len(*s.SizeConstraintSetId) < 1 { invalidParams.Add(request.NewErrParamMinLen("SizeConstraintSetId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetSizeConstraintSetOutput struct { _ struct{} `type:"structure"` // Information about the SizeConstraintSet that you specified in the GetSizeConstraintSet // request. For more information, see the following topics: // // * SizeConstraintSet: Contains SizeConstraintSetId, SizeConstraints, and // Name // // * SizeConstraints: Contains an array of SizeConstraint objects. Each SizeConstraint // object contains FieldToMatch, TextTransformation, ComparisonOperator, // and Size // // * FieldToMatch: Contains Data and Type SizeConstraintSet *SizeConstraintSet `type:"structure"` } // String returns the string representation func (s GetSizeConstraintSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSizeConstraintSetOutput) GoString() string { return s.String() } // A request to get a SqlInjectionMatchSet. type GetSqlInjectionMatchSetInput struct { _ struct{} `type:"structure"` // The SqlInjectionMatchSetId of the SqlInjectionMatchSet that you want to get. // SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets. // // SqlInjectionMatchSetId is a required field SqlInjectionMatchSetId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetSqlInjectionMatchSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSqlInjectionMatchSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetSqlInjectionMatchSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetSqlInjectionMatchSetInput"} if s.SqlInjectionMatchSetId == nil { invalidParams.Add(request.NewErrParamRequired("SqlInjectionMatchSetId")) } if s.SqlInjectionMatchSetId != nil && len(*s.SqlInjectionMatchSetId) < 1 { invalidParams.Add(request.NewErrParamMinLen("SqlInjectionMatchSetId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response to a GetSqlInjectionMatchSet request. type GetSqlInjectionMatchSetOutput struct { _ struct{} `type:"structure"` // Information about the SqlInjectionMatchSet that you specified in the GetSqlInjectionMatchSet // request. For more information, see the following topics: // // * SqlInjectionMatchSet: Contains Name, SqlInjectionMatchSetId, and an // array of SqlInjectionMatchTuple objects // // * SqlInjectionMatchTuple: Each SqlInjectionMatchTuple object contains // FieldToMatch and TextTransformation // // * FieldToMatch: Contains Data and Type SqlInjectionMatchSet *SqlInjectionMatchSet `type:"structure"` } // String returns the string representation func (s GetSqlInjectionMatchSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetSqlInjectionMatchSetOutput) GoString() string { return s.String() } type GetWebACLInput struct { _ struct{} `type:"structure"` // The WebACLId of the WebACL that you want to get. WebACLId is returned by // CreateWebACL and by ListWebACLs. // // WebACLId is a required field WebACLId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetWebACLInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetWebACLInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetWebACLInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetWebACLInput"} if s.WebACLId == nil { invalidParams.Add(request.NewErrParamRequired("WebACLId")) } if s.WebACLId != nil && len(*s.WebACLId) < 1 { invalidParams.Add(request.NewErrParamMinLen("WebACLId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type GetWebACLOutput struct { _ struct{} `type:"structure"` // Information about the WebACL that you specified in the GetWebACL request. // For more information, see the following topics: // // * WebACL: Contains DefaultAction, MetricName, Name, an array of Rule objects, // and WebACLId // // * DefaultAction (Data type is WafAction): Contains Type // // * Rules: Contains an array of ActivatedRule objects, which contain Action, // Priority, and RuleId // // * Action: Contains Type WebACL *WebACL `type:"structure"` } // String returns the string representation func (s GetWebACLOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetWebACLOutput) GoString() string { return s.String() } // A request to get an XssMatchSet. type GetXssMatchSetInput struct { _ struct{} `type:"structure"` // The XssMatchSetId of the XssMatchSet that you want to get. XssMatchSetId // is returned by CreateXssMatchSet and by ListXssMatchSets. // // XssMatchSetId is a required field XssMatchSetId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GetXssMatchSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetXssMatchSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetXssMatchSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetXssMatchSetInput"} if s.XssMatchSetId == nil { invalidParams.Add(request.NewErrParamRequired("XssMatchSetId")) } if s.XssMatchSetId != nil && len(*s.XssMatchSetId) < 1 { invalidParams.Add(request.NewErrParamMinLen("XssMatchSetId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response to a GetXssMatchSet request. type GetXssMatchSetOutput struct { _ struct{} `type:"structure"` // Information about the XssMatchSet that you specified in the GetXssMatchSet // request. For more information, see the following topics: // // * XssMatchSet: Contains Name, XssMatchSetId, and an array of XssMatchTuple // objects // // * XssMatchTuple: Each XssMatchTuple object contains FieldToMatch and TextTransformation // // * FieldToMatch: Contains Data and Type XssMatchSet *XssMatchSet `type:"structure"` } // String returns the string representation func (s GetXssMatchSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetXssMatchSetOutput) GoString() string { return s.String() } // The response from a GetSampledRequests request includes an HTTPHeader complex // type that appears as Headers in the response syntax. HTTPHeader contains // the names and values of all of the headers that appear in one of the web // requests that were returned by GetSampledRequests. type HTTPHeader struct { _ struct{} `type:"structure"` // The name of one of the headers in the sampled web request. Name *string `type:"string"` // The value of one of the headers in the sampled web request. Value *string `type:"string"` } // String returns the string representation func (s HTTPHeader) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HTTPHeader) GoString() string { return s.String() } // The response from a GetSampledRequests request includes an HTTPRequest complex // type that appears as Request in the response syntax. HTTPRequest contains // information about one of the web requests that were returned by GetSampledRequests. type HTTPRequest struct { _ struct{} `type:"structure"` // The IP address that the request originated from. If the WebACL is associated // with a CloudFront distribution, this is the value of one of the following // fields in CloudFront access logs: // // * c-ip, if the viewer did not use an HTTP proxy or a load balancer to // send the request // // * x-forwarded-for, if the viewer did use an HTTP proxy or a load balancer // to send the request ClientIP *string `type:"string"` // The two-letter country code for the country that the request originated from. // For a current list of country codes, see the Wikipedia entry ISO 3166-1 alpha-2 // (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Country *string `type:"string"` // The HTTP version specified in the sampled web request, for example, HTTP/1.1. HTTPVersion *string `type:"string"` // A complex type that contains two values for each header in the sampled web // request: the name of the header and the value of the header. Headers []*HTTPHeader `type:"list"` // The HTTP method specified in the sampled web request. CloudFront supports // the following methods: DELETE, GET, HEAD, OPTIONS, PATCH, POST, and PUT. Method *string `type:"string"` // The part of a web request that identifies the resource, for example, /images/daily-ad.jpg. URI *string `type:"string"` } // String returns the string representation func (s HTTPRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HTTPRequest) GoString() string { return s.String() } // Contains one or more IP addresses or blocks of IP addresses specified in // Classless Inter-Domain Routing (CIDR) notation. To specify an individual // IP address, you specify the four-part IP address followed by a /32, for example, // 192.0.2.0/31. To block a range of IP addresses, you can specify a /24, a // /16, or a /8 CIDR. For more information about CIDR notation, perform an Internet // search on cidr notation. type IPSet struct { _ struct{} `type:"structure"` // The IP address type (IPV4) and the IP address range (in CIDR notation) that // web requests originate from. If the WebACL is associated with a CloudFront // distribution, this is the value of one of the following fields in CloudFront // access logs: // // * c-ip, if the viewer did not use an HTTP proxy or a load balancer to // send the request // // * x-forwarded-for, if the viewer did use an HTTP proxy or a load balancer // to send the request // // IPSetDescriptors is a required field IPSetDescriptors []*IPSetDescriptor `type:"list" required:"true"` // The IPSetId for an IPSet. You use IPSetId to get information about an IPSet // (see GetIPSet), update an IPSet (see UpdateIPSet), insert an IPSet into a // Rule or delete one from a Rule (see UpdateRule), and delete an IPSet from // AWS WAF (see DeleteIPSet). // // IPSetId is returned by CreateIPSet and by ListIPSets. // // IPSetId is a required field IPSetId *string `min:"1" type:"string" required:"true"` // A friendly name or description of the IPSet. You can't change the name of // an IPSet after you create it. Name *string `min:"1" type:"string"` } // String returns the string representation func (s IPSet) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IPSet) GoString() string { return s.String() } // Specifies the IP address type (IPV4) and the IP address range (in CIDR format) // that web requests originate from. type IPSetDescriptor struct { _ struct{} `type:"structure"` // Specify IPV4. // // Type is a required field Type *string `type:"string" required:"true" enum:"IPSetDescriptorType"` // Specify an IPv4 address by using CIDR notation. For example: // // * To configure AWS WAF to allow, block, or count requests that originated // from the IP address 192.0.2.44, specify 192.0.2.44/32. // // * To configure AWS WAF to allow, block, or count requests that originated // from IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24. // // AWS WAF supports only /8, /16, /24, and /32 IP addresses. // // For more information about CIDR notation, see the Wikipedia entry Classless // Inter-Domain Routing (https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). // // Value is a required field Value *string `type:"string" required:"true"` } // String returns the string representation func (s IPSetDescriptor) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IPSetDescriptor) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *IPSetDescriptor) Validate() error { invalidParams := request.ErrInvalidParams{Context: "IPSetDescriptor"} if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if s.Value == nil { invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the identifier and the name of the IPSet. type IPSetSummary struct { _ struct{} `type:"structure"` // The IPSetId for an IPSet. You can use IPSetId in a GetIPSet request to get // detailed information about an IPSet. // // IPSetId is a required field IPSetId *string `min:"1" type:"string" required:"true"` // A friendly name or description of the IPSet. You can't change the name of // an IPSet after you create it. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s IPSetSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IPSetSummary) GoString() string { return s.String() } // Specifies the type of update to perform to an IPSet with UpdateIPSet. type IPSetUpdate struct { _ struct{} `type:"structure"` // Specifies whether to insert or delete an IP address with UpdateIPSet. // // Action is a required field Action *string `type:"string" required:"true" enum:"ChangeAction"` // The IP address type (IPV4) and the IP address range (in CIDR notation) that // web requests originate from. // // IPSetDescriptor is a required field IPSetDescriptor *IPSetDescriptor `type:"structure" required:"true"` } // String returns the string representation func (s IPSetUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IPSetUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *IPSetUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "IPSetUpdate"} if s.Action == nil { invalidParams.Add(request.NewErrParamRequired("Action")) } if s.IPSetDescriptor == nil { invalidParams.Add(request.NewErrParamRequired("IPSetDescriptor")) } if s.IPSetDescriptor != nil { if err := s.IPSetDescriptor.Validate(); err != nil { invalidParams.AddNested("IPSetDescriptor", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListByteMatchSetsInput struct { _ struct{} `type:"structure"` // Specifies the number of ByteMatchSet objects that you want AWS WAF to return // for this request. If you have more ByteMatchSets objects than the number // you specify for Limit, the response includes a NextMarker value that you // can use to get another batch of ByteMatchSet objects. Limit *int64 `type:"integer"` // If you specify a value for Limit and you have more ByteMatchSets than the // value of Limit, AWS WAF returns a NextMarker value in the response that allows // you to list another group of ByteMatchSets. For the second and subsequent // ListByteMatchSets requests, specify the value of NextMarker from the previous // response to get information about another batch of ByteMatchSets. NextMarker *string `min:"1" type:"string"` } // String returns the string representation func (s ListByteMatchSetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListByteMatchSetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListByteMatchSetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListByteMatchSetsInput"} if s.NextMarker != nil && len(*s.NextMarker) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextMarker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListByteMatchSetsOutput struct { _ struct{} `type:"structure"` // An array of ByteMatchSetSummary objects. ByteMatchSets []*ByteMatchSetSummary `type:"list"` // If you have more ByteMatchSet objects than the number that you specified // for Limit in the request, the response includes a NextMarker value. To list // more ByteMatchSet objects, submit another ListByteMatchSets request, and // specify the NextMarker value from the response in the NextMarker value in // the next request. NextMarker *string `min:"1" type:"string"` } // String returns the string representation func (s ListByteMatchSetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListByteMatchSetsOutput) GoString() string { return s.String() } type ListIPSetsInput struct { _ struct{} `type:"structure"` // Specifies the number of IPSet objects that you want AWS WAF to return for // this request. If you have more IPSet objects than the number you specify // for Limit, the response includes a NextMarker value that you can use to get // another batch of IPSet objects. Limit *int64 `type:"integer"` // If you specify a value for Limit and you have more IPSets than the value // of Limit, AWS WAF returns a NextMarker value in the response that allows // you to list another group of IPSets. For the second and subsequent ListIPSets // requests, specify the value of NextMarker from the previous response to get // information about another batch of ByteMatchSets. NextMarker *string `min:"1" type:"string"` } // String returns the string representation func (s ListIPSetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListIPSetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListIPSetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListIPSetsInput"} if s.NextMarker != nil && len(*s.NextMarker) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextMarker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListIPSetsOutput struct { _ struct{} `type:"structure"` // An array of IPSetSummary objects. IPSets []*IPSetSummary `type:"list"` // If you have more IPSet objects than the number that you specified for Limit // in the request, the response includes a NextMarker value. To list more IPSet // objects, submit another ListIPSets request, and specify the NextMarker value // from the response in the NextMarker value in the next request. NextMarker *string `min:"1" type:"string"` } // String returns the string representation func (s ListIPSetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListIPSetsOutput) GoString() string { return s.String() } type ListRulesInput struct { _ struct{} `type:"structure"` // Specifies the number of Rules that you want AWS WAF to return for this request. // If you have more Rules than the number that you specify for Limit, the response // includes a NextMarker value that you can use to get another batch of Rules. Limit *int64 `type:"integer"` // If you specify a value for Limit and you have more Rules than the value of // Limit, AWS WAF returns a NextMarker value in the response that allows you // to list another group of Rules. For the second and subsequent ListRules requests, // specify the value of NextMarker from the previous response to get information // about another batch of Rules. NextMarker *string `min:"1" type:"string"` } // String returns the string representation func (s ListRulesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRulesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListRulesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListRulesInput"} if s.NextMarker != nil && len(*s.NextMarker) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextMarker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListRulesOutput struct { _ struct{} `type:"structure"` // If you have more Rules than the number that you specified for Limit in the // request, the response includes a NextMarker value. To list more Rules, submit // another ListRules request, and specify the NextMarker value from the response // in the NextMarker value in the next request. NextMarker *string `min:"1" type:"string"` // An array of RuleSummary objects. Rules []*RuleSummary `type:"list"` } // String returns the string representation func (s ListRulesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListRulesOutput) GoString() string { return s.String() } type ListSizeConstraintSetsInput struct { _ struct{} `type:"structure"` // Specifies the number of SizeConstraintSet objects that you want AWS WAF to // return for this request. If you have more SizeConstraintSets objects than // the number you specify for Limit, the response includes a NextMarker value // that you can use to get another batch of SizeConstraintSet objects. Limit *int64 `type:"integer"` // If you specify a value for Limit and you have more SizeConstraintSets than // the value of Limit, AWS WAF returns a NextMarker value in the response that // allows you to list another group of SizeConstraintSets. For the second and // subsequent ListSizeConstraintSets requests, specify the value of NextMarker // from the previous response to get information about another batch of SizeConstraintSets. NextMarker *string `min:"1" type:"string"` } // String returns the string representation func (s ListSizeConstraintSetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSizeConstraintSetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListSizeConstraintSetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListSizeConstraintSetsInput"} if s.NextMarker != nil && len(*s.NextMarker) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextMarker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListSizeConstraintSetsOutput struct { _ struct{} `type:"structure"` // If you have more SizeConstraintSet objects than the number that you specified // for Limit in the request, the response includes a NextMarker value. To list // more SizeConstraintSet objects, submit another ListSizeConstraintSets request, // and specify the NextMarker value from the response in the NextMarker value // in the next request. NextMarker *string `min:"1" type:"string"` // An array of SizeConstraintSetSummary objects. SizeConstraintSets []*SizeConstraintSetSummary `type:"list"` } // String returns the string representation func (s ListSizeConstraintSetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSizeConstraintSetsOutput) GoString() string { return s.String() } // A request to list the SqlInjectionMatchSet objects created by the current // AWS account. type ListSqlInjectionMatchSetsInput struct { _ struct{} `type:"structure"` // Specifies the number of SqlInjectionMatchSet objects that you want AWS WAF // to return for this request. If you have more SqlInjectionMatchSet objects // than the number you specify for Limit, the response includes a NextMarker // value that you can use to get another batch of Rules. Limit *int64 `type:"integer"` // If you specify a value for Limit and you have more SqlInjectionMatchSet objects // than the value of Limit, AWS WAF returns a NextMarker value in the response // that allows you to list another group of SqlInjectionMatchSets. For the second // and subsequent ListSqlInjectionMatchSets requests, specify the value of NextMarker // from the previous response to get information about another batch of SqlInjectionMatchSets. NextMarker *string `min:"1" type:"string"` } // String returns the string representation func (s ListSqlInjectionMatchSetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSqlInjectionMatchSetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListSqlInjectionMatchSetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListSqlInjectionMatchSetsInput"} if s.NextMarker != nil && len(*s.NextMarker) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextMarker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response to a ListSqlInjectionMatchSets request. type ListSqlInjectionMatchSetsOutput struct { _ struct{} `type:"structure"` // If you have more SqlInjectionMatchSet objects than the number that you specified // for Limit in the request, the response includes a NextMarker value. To list // more SqlInjectionMatchSet objects, submit another ListSqlInjectionMatchSets // request, and specify the NextMarker value from the response in the NextMarker // value in the next request. NextMarker *string `min:"1" type:"string"` // An array of SqlInjectionMatchSetSummary objects. SqlInjectionMatchSets []*SqlInjectionMatchSetSummary `type:"list"` } // String returns the string representation func (s ListSqlInjectionMatchSetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListSqlInjectionMatchSetsOutput) GoString() string { return s.String() } type ListWebACLsInput struct { _ struct{} `type:"structure"` // Specifies the number of WebACL objects that you want AWS WAF to return for // this request. If you have more WebACL objects than the number that you specify // for Limit, the response includes a NextMarker value that you can use to get // another batch of WebACL objects. Limit *int64 `type:"integer"` // If you specify a value for Limit and you have more WebACL objects than the // number that you specify for Limit, AWS WAF returns a NextMarker value in // the response that allows you to list another group of WebACL objects. For // the second and subsequent ListWebACLs requests, specify the value of NextMarker // from the previous response to get information about another batch of WebACL // objects. NextMarker *string `min:"1" type:"string"` } // String returns the string representation func (s ListWebACLsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListWebACLsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListWebACLsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListWebACLsInput"} if s.NextMarker != nil && len(*s.NextMarker) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextMarker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ListWebACLsOutput struct { _ struct{} `type:"structure"` // If you have more WebACL objects than the number that you specified for Limit // in the request, the response includes a NextMarker value. To list more WebACL // objects, submit another ListWebACLs request, and specify the NextMarker value // from the response in the NextMarker value in the next request. NextMarker *string `min:"1" type:"string"` // An array of WebACLSummary objects. WebACLs []*WebACLSummary `type:"list"` } // String returns the string representation func (s ListWebACLsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListWebACLsOutput) GoString() string { return s.String() } // A request to list the XssMatchSet objects created by the current AWS account. type ListXssMatchSetsInput struct { _ struct{} `type:"structure"` // Specifies the number of XssMatchSet objects that you want AWS WAF to return // for this request. If you have more XssMatchSet objects than the number you // specify for Limit, the response includes a NextMarker value that you can // use to get another batch of Rules. Limit *int64 `type:"integer"` // If you specify a value for Limit and you have more XssMatchSet objects than // the value of Limit, AWS WAF returns a NextMarker value in the response that // allows you to list another group of XssMatchSets. For the second and subsequent // ListXssMatchSets requests, specify the value of NextMarker from the previous // response to get information about another batch of XssMatchSets. NextMarker *string `min:"1" type:"string"` } // String returns the string representation func (s ListXssMatchSetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListXssMatchSetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListXssMatchSetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListXssMatchSetsInput"} if s.NextMarker != nil && len(*s.NextMarker) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextMarker", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response to a ListXssMatchSets request. type ListXssMatchSetsOutput struct { _ struct{} `type:"structure"` // If you have more XssMatchSet objects than the number that you specified for // Limit in the request, the response includes a NextMarker value. To list more // XssMatchSet objects, submit another ListXssMatchSets request, and specify // the NextMarker value from the response in the NextMarker value in the next // request. NextMarker *string `min:"1" type:"string"` // An array of XssMatchSetSummary objects. XssMatchSets []*XssMatchSetSummary `type:"list"` } // String returns the string representation func (s ListXssMatchSetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListXssMatchSetsOutput) GoString() string { return s.String() } // Specifies the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, and // SizeConstraintSet objects that you want to add to a Rule and, for each object, // indicates whether you want to negate the settings, for example, requests // that do NOT originate from the IP address 192.0.2.44. type Predicate struct { _ struct{} `type:"structure"` // A unique identifier for a predicate in a Rule, such as ByteMatchSetId or // IPSetId. The ID is returned by the corresponding Create or List command. // // DataId is a required field DataId *string `min:"1" type:"string" required:"true"` // Set Negated to False if you want AWS WAF to allow, block, or count requests // based on the settings in the specified ByteMatchSet, IPSet, SqlInjectionMatchSet, // XssMatchSet, or SizeConstraintSet. For example, if an IPSet includes the // IP address 192.0.2.44, AWS WAF will allow or block requests based on that // IP address. // // Set Negated to True if you want AWS WAF to allow or block a request based // on the negation of the settings in the ByteMatchSet, IPSet, SqlInjectionMatchSet, // XssMatchSet, or SizeConstraintSet. For example, if an IPSet includes the // IP address 192.0.2.44, AWS WAF will allow, block, or count requests based // on all IP addresses except192.0.2.44. // // Negated is a required field Negated *bool `type:"boolean" required:"true"` // The type of predicate in a Rule, such as ByteMatchSet or IPSet. // // Type is a required field Type *string `type:"string" required:"true" enum:"PredicateType"` } // String returns the string representation func (s Predicate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Predicate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Predicate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Predicate"} if s.DataId == nil { invalidParams.Add(request.NewErrParamRequired("DataId")) } if s.DataId != nil && len(*s.DataId) < 1 { invalidParams.Add(request.NewErrParamMinLen("DataId", 1)) } if s.Negated == nil { invalidParams.Add(request.NewErrParamRequired("Negated")) } if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A combination of ByteMatchSet, IPSet, and/or SqlInjectionMatchSet objects // that identify the web requests that you want to allow, block, or count. For // example, you might create a Rule that includes the following predicates: // // * An IPSet that causes AWS WAF to search for web requests that originate // from the IP address 192.0.2.44 // // * A ByteMatchSet that causes AWS WAF to search for web requests for which // the value of the User-Agent header is BadBot. // // To match the settings in this Rule, a request must originate from 192.0.2.44 // AND include a User-Agent header for which the value is BadBot. type Rule struct { _ struct{} `type:"structure"` MetricName *string `type:"string"` // The friendly name or description for the Rule. You can't change the name // of a Rule after you create it. Name *string `min:"1" type:"string"` // The Predicates object contains one Predicate element for each ByteMatchSet, // IPSet, or SqlInjectionMatchSet object that you want to include in a Rule. // // Predicates is a required field Predicates []*Predicate `type:"list" required:"true"` // A unique identifier for a Rule. You use RuleId to get more information about // a Rule (see GetRule), update a Rule (see UpdateRule), insert a Rule into // a WebACL or delete a one from a WebACL (see UpdateWebACL), or delete a Rule // from AWS WAF (see DeleteRule). // // RuleId is returned by CreateRule and by ListRules. // // RuleId is a required field RuleId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s Rule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Rule) GoString() string { return s.String() } // Contains the identifier and the friendly name or description of the Rule. type RuleSummary struct { _ struct{} `type:"structure"` // A friendly name or description of the Rule. You can't change the name of // a Rule after you create it. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // A unique identifier for a Rule. You use RuleId to get more information about // a Rule (see GetRule), update a Rule (see UpdateRule), insert a Rule into // a WebACL or delete one from a WebACL (see UpdateWebACL), or delete a Rule // from AWS WAF (see DeleteRule). // // RuleId is returned by CreateRule and by ListRules. // // RuleId is a required field RuleId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s RuleSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RuleSummary) GoString() string { return s.String() } // Specifies a Predicate (such as an IPSet) and indicates whether you want to // add it to a Rule or delete it from a Rule. type RuleUpdate struct { _ struct{} `type:"structure"` // Specify INSERT to add a Predicate to a Rule. Use DELETE to remove a Predicate // from a Rule. // // Action is a required field Action *string `type:"string" required:"true" enum:"ChangeAction"` // The ID of the Predicate (such as an IPSet) that you want to add to a Rule. // // Predicate is a required field Predicate *Predicate `type:"structure" required:"true"` } // String returns the string representation func (s RuleUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RuleUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RuleUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RuleUpdate"} if s.Action == nil { invalidParams.Add(request.NewErrParamRequired("Action")) } if s.Predicate == nil { invalidParams.Add(request.NewErrParamRequired("Predicate")) } if s.Predicate != nil { if err := s.Predicate.Validate(); err != nil { invalidParams.AddNested("Predicate", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response from a GetSampledRequests request includes a SampledHTTPRequests // complex type that appears as SampledRequests in the response syntax. SampledHTTPRequests // contains one SampledHTTPRequest object for each web request that is returned // by GetSampledRequests. type SampledHTTPRequest struct { _ struct{} `type:"structure"` // The action for the Rule that the request matched: ALLOW, BLOCK, or COUNT. Action *string `type:"string"` // A complex type that contains detailed information about the request. // // Request is a required field Request *HTTPRequest `type:"structure" required:"true"` // The time at which AWS WAF received the request from your AWS resource, in // Unix time format (in seconds). Timestamp *time.Time `type:"timestamp" timestampFormat:"unix"` // A value that indicates how one result in the response relates proportionally // to other results in the response. A result that has a weight of 2 represents // roughly twice as many CloudFront web requests as a result that has a weight // of 1. // // Weight is a required field Weight *int64 `type:"long" required:"true"` } // String returns the string representation func (s SampledHTTPRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SampledHTTPRequest) GoString() string { return s.String() } // Specifies a constraint on the size of a part of the web request. AWS WAF // uses the Size, ComparisonOperator, and FieldToMatch to build an expression // in the form of "SizeComparisonOperator size in bytes of FieldToMatch". If // that expression is true, the SizeConstraint is considered to match. type SizeConstraint struct { _ struct{} `type:"structure"` // The type of comparison you want AWS WAF to perform. AWS WAF uses this in // combination with the provided Size and FieldToMatch to build an expression // in the form of "SizeComparisonOperator size in bytes of FieldToMatch". If // that expression is true, the SizeConstraint is considered to match. // // EQ: Used to test if the Size is equal to the size of the FieldToMatch // // NE: Used to test if the Size is not equal to the size of the FieldToMatch // // LE: Used to test if the Size is less than or equal to the size of the FieldToMatch // // LT: Used to test if the Size is strictly less than the size of the FieldToMatch // // GE: Used to test if the Size is greater than or equal to the size of the // FieldToMatch // // GT: Used to test if the Size is strictly greater than the size of the FieldToMatch // // ComparisonOperator is a required field ComparisonOperator *string `type:"string" required:"true" enum:"ComparisonOperator"` // Specifies where in a web request to look for TargetString. // // FieldToMatch is a required field FieldToMatch *FieldToMatch `type:"structure" required:"true"` // The size in bytes that you want AWS WAF to compare against the size of the // specified FieldToMatch. AWS WAF uses this in combination with ComparisonOperator // and FieldToMatch to build an expression in the form of "SizeComparisonOperator // size in bytes of FieldToMatch". If that expression is true, the SizeConstraint // is considered to match. // // Valid values for size are 0 - 21474836480 bytes (0 - 20 GB). // // If you specify URI for the value of Type, the / in the URI counts as one // character. For example, the URI /logo.jpg is nine characters long. // // Size is a required field Size *int64 `type:"long" required:"true"` // Text transformations eliminate some of the unusual formatting that attackers // use in web requests in an effort to bypass AWS WAF. If you specify a transformation, // AWS WAF performs the transformation on FieldToMatch before inspecting a request // for a match. // // Note that if you choose BODY for the value of Type, you must choose NONE // for TextTransformation because CloudFront forwards only the first 8192 bytes // for inspection. // // NONE // // Specify NONE if you don't want to perform any text transformations. // // CMD_LINE // // When you're concerned that attackers are injecting an operating system command // line command and using unusual formatting to disguise some or all of the // command, use this option to perform the following transformations: // // * Delete the following characters: \ " ' ^ // // * Delete spaces before the following characters: / ( // // * Replace the following characters with a space: , ; // // * Replace multiple spaces with one space // // * Convert uppercase letters (A-Z) to lowercase (a-z) // // COMPRESS_WHITE_SPACE // // Use this option to replace the following characters with a space character // (decimal 32): // // * \f, formfeed, decimal 12 // // * \t, tab, decimal 9 // // * \n, newline, decimal 10 // // * \r, carriage return, decimal 13 // // * \v, vertical tab, decimal 11 // // * non-breaking space, decimal 160 // // COMPRESS_WHITE_SPACE also replaces multiple spaces with one space. // // HTML_ENTITY_DECODE // // Use this option to replace HTML-encoded characters with unencoded characters. // HTML_ENTITY_DECODE performs the following operations: // // * Replaces (ampersand)quot; with " // // * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160 // // * Replaces (ampersand)lt; with a "less than" symbol // // * Replaces (ampersand)gt; with > // // * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh;, // with the corresponding characters // // * Replaces characters that are represented in decimal format, (ampersand)#nnnn;, // with the corresponding characters // // LOWERCASE // // Use this option to convert uppercase letters (A-Z) to lowercase (a-z). // // URL_DECODE // // Use this option to decode a URL-encoded value. // // TextTransformation is a required field TextTransformation *string `type:"string" required:"true" enum:"TextTransformation"` } // String returns the string representation func (s SizeConstraint) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SizeConstraint) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SizeConstraint) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SizeConstraint"} if s.ComparisonOperator == nil { invalidParams.Add(request.NewErrParamRequired("ComparisonOperator")) } if s.FieldToMatch == nil { invalidParams.Add(request.NewErrParamRequired("FieldToMatch")) } if s.Size == nil { invalidParams.Add(request.NewErrParamRequired("Size")) } if s.TextTransformation == nil { invalidParams.Add(request.NewErrParamRequired("TextTransformation")) } if s.FieldToMatch != nil { if err := s.FieldToMatch.Validate(); err != nil { invalidParams.AddNested("FieldToMatch", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains SizeConstraint objects, which specify the parts // of web requests that you want AWS WAF to inspect the size of. If a SizeConstraintSet // contains more than one SizeConstraint object, a request only needs to match // one constraint to be considered a match. type SizeConstraintSet struct { _ struct{} `type:"structure"` // The name, if any, of the SizeConstraintSet. Name *string `min:"1" type:"string"` // A unique identifier for a SizeConstraintSet. You use SizeConstraintSetId // to get information about a SizeConstraintSet (see GetSizeConstraintSet), // update a SizeConstraintSet (see UpdateSizeConstraintSet), insert a SizeConstraintSet // into a Rule or delete one from a Rule (see UpdateRule), and delete a SizeConstraintSet // from AWS WAF (see DeleteSizeConstraintSet). // // SizeConstraintSetId is returned by CreateSizeConstraintSet and by ListSizeConstraintSets. // // SizeConstraintSetId is a required field SizeConstraintSetId *string `min:"1" type:"string" required:"true"` // Specifies the parts of web requests that you want to inspect the size of. // // SizeConstraints is a required field SizeConstraints []*SizeConstraint `type:"list" required:"true"` } // String returns the string representation func (s SizeConstraintSet) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SizeConstraintSet) GoString() string { return s.String() } // The Id and Name of a SizeConstraintSet. type SizeConstraintSetSummary struct { _ struct{} `type:"structure"` // The name of the SizeConstraintSet, if any. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // A unique identifier for a SizeConstraintSet. You use SizeConstraintSetId // to get information about a SizeConstraintSet (see GetSizeConstraintSet), // update a SizeConstraintSet (see UpdateSizeConstraintSet), insert a SizeConstraintSet // into a Rule or delete one from a Rule (see UpdateRule), and delete a SizeConstraintSet // from AWS WAF (see DeleteSizeConstraintSet). // // SizeConstraintSetId is returned by CreateSizeConstraintSet and by ListSizeConstraintSets. // // SizeConstraintSetId is a required field SizeConstraintSetId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s SizeConstraintSetSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SizeConstraintSetSummary) GoString() string { return s.String() } // Specifies the part of a web request that you want to inspect the size of // and indicates whether you want to add the specification to a SizeConstraintSet // or delete it from a SizeConstraintSet. type SizeConstraintSetUpdate struct { _ struct{} `type:"structure"` // Specify INSERT to add a SizeConstraintSetUpdate to a SizeConstraintSet. Use // DELETE to remove a SizeConstraintSetUpdate from a SizeConstraintSet. // // Action is a required field Action *string `type:"string" required:"true" enum:"ChangeAction"` // Specifies a constraint on the size of a part of the web request. AWS WAF // uses the Size, ComparisonOperator, and FieldToMatch to build an expression // in the form of "SizeComparisonOperator size in bytes of FieldToMatch". If // that expression is true, the SizeConstraint is considered to match. // // SizeConstraint is a required field SizeConstraint *SizeConstraint `type:"structure" required:"true"` } // String returns the string representation func (s SizeConstraintSetUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SizeConstraintSetUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SizeConstraintSetUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SizeConstraintSetUpdate"} if s.Action == nil { invalidParams.Add(request.NewErrParamRequired("Action")) } if s.SizeConstraint == nil { invalidParams.Add(request.NewErrParamRequired("SizeConstraint")) } if s.SizeConstraint != nil { if err := s.SizeConstraint.Validate(); err != nil { invalidParams.AddNested("SizeConstraint", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains SqlInjectionMatchTuple objects, which specify // the parts of web requests that you want AWS WAF to inspect for snippets of // malicious SQL code and, if you want AWS WAF to inspect a header, the name // of the header. If a SqlInjectionMatchSet contains more than one SqlInjectionMatchTuple // object, a request needs to include snippets of SQL code in only one of the // specified parts of the request to be considered a match. type SqlInjectionMatchSet struct { _ struct{} `type:"structure"` // The name, if any, of the SqlInjectionMatchSet. Name *string `min:"1" type:"string"` // A unique identifier for a SqlInjectionMatchSet. You use SqlInjectionMatchSetId // to get information about a SqlInjectionMatchSet (see GetSqlInjectionMatchSet), // update a SqlInjectionMatchSet (see UpdateSqlInjectionMatchSet), insert a // SqlInjectionMatchSet into a Rule or delete one from a Rule (see UpdateRule), // and delete a SqlInjectionMatchSet from AWS WAF (see DeleteSqlInjectionMatchSet). // // SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets. // // SqlInjectionMatchSetId is a required field SqlInjectionMatchSetId *string `min:"1" type:"string" required:"true"` // Specifies the parts of web requests that you want to inspect for snippets // of malicious SQL code. // // SqlInjectionMatchTuples is a required field SqlInjectionMatchTuples []*SqlInjectionMatchTuple `type:"list" required:"true"` } // String returns the string representation func (s SqlInjectionMatchSet) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SqlInjectionMatchSet) GoString() string { return s.String() } // The Id and Name of a SqlInjectionMatchSet. type SqlInjectionMatchSetSummary struct { _ struct{} `type:"structure"` // The name of the SqlInjectionMatchSet, if any, specified by Id. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // A unique identifier for a SqlInjectionMatchSet. You use SqlInjectionMatchSetId // to get information about a SqlInjectionMatchSet (see GetSqlInjectionMatchSet), // update a SqlInjectionMatchSet (see UpdateSqlInjectionMatchSet), insert a // SqlInjectionMatchSet into a Rule or delete one from a Rule (see UpdateRule), // and delete a SqlInjectionMatchSet from AWS WAF (see DeleteSqlInjectionMatchSet). // // SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets. // // SqlInjectionMatchSetId is a required field SqlInjectionMatchSetId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s SqlInjectionMatchSetSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SqlInjectionMatchSetSummary) GoString() string { return s.String() } // Specifies the part of a web request that you want to inspect for snippets // of malicious SQL code and indicates whether you want to add the specification // to a SqlInjectionMatchSet or delete it from a SqlInjectionMatchSet. type SqlInjectionMatchSetUpdate struct { _ struct{} `type:"structure"` // Specify INSERT to add a SqlInjectionMatchSetUpdate to a SqlInjectionMatchSet. // Use DELETE to remove a SqlInjectionMatchSetUpdate from a SqlInjectionMatchSet. // // Action is a required field Action *string `type:"string" required:"true" enum:"ChangeAction"` // Specifies the part of a web request that you want AWS WAF to inspect for // snippets of malicious SQL code and, if you want AWS WAF to inspect a header, // the name of the header. // // SqlInjectionMatchTuple is a required field SqlInjectionMatchTuple *SqlInjectionMatchTuple `type:"structure" required:"true"` } // String returns the string representation func (s SqlInjectionMatchSetUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SqlInjectionMatchSetUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SqlInjectionMatchSetUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SqlInjectionMatchSetUpdate"} if s.Action == nil { invalidParams.Add(request.NewErrParamRequired("Action")) } if s.SqlInjectionMatchTuple == nil { invalidParams.Add(request.NewErrParamRequired("SqlInjectionMatchTuple")) } if s.SqlInjectionMatchTuple != nil { if err := s.SqlInjectionMatchTuple.Validate(); err != nil { invalidParams.AddNested("SqlInjectionMatchTuple", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies the part of a web request that you want AWS WAF to inspect for // snippets of malicious SQL code and, if you want AWS WAF to inspect a header, // the name of the header. type SqlInjectionMatchTuple struct { _ struct{} `type:"structure"` // Specifies where in a web request to look for TargetString. // // FieldToMatch is a required field FieldToMatch *FieldToMatch `type:"structure" required:"true"` // Text transformations eliminate some of the unusual formatting that attackers // use in web requests in an effort to bypass AWS WAF. If you specify a transformation, // AWS WAF performs the transformation on FieldToMatch before inspecting a request // for a match. // // CMD_LINE // // When you're concerned that attackers are injecting an operating system commandline // command and using unusual formatting to disguise some or all of the command, // use this option to perform the following transformations: // // * Delete the following characters: \ " ' ^ // // * Delete spaces before the following characters: / ( // // * Replace the following characters with a space: , ; // // * Replace multiple spaces with one space // // * Convert uppercase letters (A-Z) to lowercase (a-z) // // COMPRESS_WHITE_SPACE // // Use this option to replace the following characters with a space character // (decimal 32): // // * \f, formfeed, decimal 12 // // * \t, tab, decimal 9 // // * \n, newline, decimal 10 // // * \r, carriage return, decimal 13 // // * \v, vertical tab, decimal 11 // // * non-breaking space, decimal 160 // // COMPRESS_WHITE_SPACE also replaces multiple spaces with one space. // // HTML_ENTITY_DECODE // // Use this option to replace HTML-encoded characters with unencoded characters. // HTML_ENTITY_DECODE performs the following operations: // // * Replaces (ampersand)quot; with " // // * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160 // // * Replaces (ampersand)lt; with a "less than" symbol // // * Replaces (ampersand)gt; with > // // * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh;, // with the corresponding characters // // * Replaces characters that are represented in decimal format, (ampersand)#nnnn;, // with the corresponding characters // // LOWERCASE // // Use this option to convert uppercase letters (A-Z) to lowercase (a-z). // // URL_DECODE // // Use this option to decode a URL-encoded value. // // NONE // // Specify NONE if you don't want to perform any text transformations. // // TextTransformation is a required field TextTransformation *string `type:"string" required:"true" enum:"TextTransformation"` } // String returns the string representation func (s SqlInjectionMatchTuple) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SqlInjectionMatchTuple) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *SqlInjectionMatchTuple) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SqlInjectionMatchTuple"} if s.FieldToMatch == nil { invalidParams.Add(request.NewErrParamRequired("FieldToMatch")) } if s.TextTransformation == nil { invalidParams.Add(request.NewErrParamRequired("TextTransformation")) } if s.FieldToMatch != nil { if err := s.FieldToMatch.Validate(); err != nil { invalidParams.AddNested("FieldToMatch", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // In a GetSampledRequests request, the StartTime and EndTime objects specify // the time range for which you want AWS WAF to return a sample of web requests. // // In a GetSampledRequests response, the StartTime and EndTime objects specify // the time range for which AWS WAF actually returned a sample of web requests. // AWS WAF gets the specified number of requests from among the first 5,000 // requests that your AWS resource receives during the specified time period. // If your resource receives more than 5,000 requests during that period, AWS // WAF stops sampling after the 5,000th request. In that case, EndTime is the // time that AWS WAF received the 5,000th request. type TimeWindow struct { _ struct{} `type:"structure"` // The end of the time range from which you want GetSampledRequests to return // a sample of the requests that your AWS resource received. You can specify // any time range in the previous three hours. // // EndTime is a required field EndTime *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` // The beginning of the time range from which you want GetSampledRequests to // return a sample of the requests that your AWS resource received. You can // specify any time range in the previous three hours. // // StartTime is a required field StartTime *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"` } // String returns the string representation func (s TimeWindow) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TimeWindow) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TimeWindow) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TimeWindow"} if s.EndTime == nil { invalidParams.Add(request.NewErrParamRequired("EndTime")) } if s.StartTime == nil { invalidParams.Add(request.NewErrParamRequired("StartTime")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateByteMatchSetInput struct { _ struct{} `type:"structure"` // The ByteMatchSetId of the ByteMatchSet that you want to update. ByteMatchSetId // is returned by CreateByteMatchSet and by ListByteMatchSets. // // ByteMatchSetId is a required field ByteMatchSetId *string `min:"1" type:"string" required:"true"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // An array of ByteMatchSetUpdate objects that you want to insert into or delete // from a ByteMatchSet. For more information, see the applicable data types: // // * ByteMatchSetUpdate: Contains Action and ByteMatchTuple // // * ByteMatchTuple: Contains FieldToMatch, PositionalConstraint, TargetString, // and TextTransformation // // * FieldToMatch: Contains Data and Type // // Updates is a required field Updates []*ByteMatchSetUpdate `type:"list" required:"true"` } // String returns the string representation func (s UpdateByteMatchSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateByteMatchSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateByteMatchSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateByteMatchSetInput"} if s.ByteMatchSetId == nil { invalidParams.Add(request.NewErrParamRequired("ByteMatchSetId")) } if s.ByteMatchSetId != nil && len(*s.ByteMatchSetId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ByteMatchSetId", 1)) } if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.Updates == nil { invalidParams.Add(request.NewErrParamRequired("Updates")) } if s.Updates != nil { for i, v := range s.Updates { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Updates", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateByteMatchSetOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the UpdateByteMatchSet request. You // can also use this value to query the status of the request. For more information, // see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` } // String returns the string representation func (s UpdateByteMatchSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateByteMatchSetOutput) GoString() string { return s.String() } type UpdateIPSetInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // The IPSetId of the IPSet that you want to update. IPSetId is returned by // CreateIPSet and by ListIPSets. // // IPSetId is a required field IPSetId *string `min:"1" type:"string" required:"true"` // An array of IPSetUpdate objects that you want to insert into or delete from // an IPSet. For more information, see the applicable data types: // // * IPSetUpdate: Contains Action and IPSetDescriptor // // * IPSetDescriptor: Contains Type and Value // // Updates is a required field Updates []*IPSetUpdate `type:"list" required:"true"` } // String returns the string representation func (s UpdateIPSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateIPSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateIPSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateIPSetInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.IPSetId == nil { invalidParams.Add(request.NewErrParamRequired("IPSetId")) } if s.IPSetId != nil && len(*s.IPSetId) < 1 { invalidParams.Add(request.NewErrParamMinLen("IPSetId", 1)) } if s.Updates == nil { invalidParams.Add(request.NewErrParamRequired("Updates")) } if s.Updates != nil { for i, v := range s.Updates { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Updates", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateIPSetOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the UpdateIPSet request. You can // also use this value to query the status of the request. For more information, // see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` } // String returns the string representation func (s UpdateIPSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateIPSetOutput) GoString() string { return s.String() } type UpdateRuleInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // The RuleId of the Rule that you want to update. RuleId is returned by CreateRule // and by ListRules. // // RuleId is a required field RuleId *string `min:"1" type:"string" required:"true"` // An array of RuleUpdate objects that you want to insert into or delete from // a Rule. For more information, see the applicable data types: // // * RuleUpdate: Contains Action and Predicate // // * Predicate: Contains DataId, Negated, and Type // // * FieldToMatch: Contains Data and Type // // Updates is a required field Updates []*RuleUpdate `type:"list" required:"true"` } // String returns the string representation func (s UpdateRuleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateRuleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateRuleInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.RuleId == nil { invalidParams.Add(request.NewErrParamRequired("RuleId")) } if s.RuleId != nil && len(*s.RuleId) < 1 { invalidParams.Add(request.NewErrParamMinLen("RuleId", 1)) } if s.Updates == nil { invalidParams.Add(request.NewErrParamRequired("Updates")) } if s.Updates != nil { for i, v := range s.Updates { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Updates", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateRuleOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the UpdateRule request. You can also // use this value to query the status of the request. For more information, // see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` } // String returns the string representation func (s UpdateRuleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateRuleOutput) GoString() string { return s.String() } type UpdateSizeConstraintSetInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // The SizeConstraintSetId of the SizeConstraintSet that you want to update. // SizeConstraintSetId is returned by CreateSizeConstraintSet and by ListSizeConstraintSets. // // SizeConstraintSetId is a required field SizeConstraintSetId *string `min:"1" type:"string" required:"true"` // An array of SizeConstraintSetUpdate objects that you want to insert into // or delete from a SizeConstraintSet. For more information, see the applicable // data types: // // * SizeConstraintSetUpdate: Contains Action and SizeConstraint // // * SizeConstraint: Contains FieldToMatch, TextTransformation, ComparisonOperator, // and Size // // * FieldToMatch: Contains Data and Type // // Updates is a required field Updates []*SizeConstraintSetUpdate `type:"list" required:"true"` } // String returns the string representation func (s UpdateSizeConstraintSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateSizeConstraintSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateSizeConstraintSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateSizeConstraintSetInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.SizeConstraintSetId == nil { invalidParams.Add(request.NewErrParamRequired("SizeConstraintSetId")) } if s.SizeConstraintSetId != nil && len(*s.SizeConstraintSetId) < 1 { invalidParams.Add(request.NewErrParamMinLen("SizeConstraintSetId", 1)) } if s.Updates == nil { invalidParams.Add(request.NewErrParamRequired("Updates")) } if s.Updates != nil { for i, v := range s.Updates { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Updates", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateSizeConstraintSetOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the UpdateSizeConstraintSet request. // You can also use this value to query the status of the request. For more // information, see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` } // String returns the string representation func (s UpdateSizeConstraintSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateSizeConstraintSetOutput) GoString() string { return s.String() } // A request to update a SqlInjectionMatchSet. type UpdateSqlInjectionMatchSetInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // The SqlInjectionMatchSetId of the SqlInjectionMatchSet that you want to update. // SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets. // // SqlInjectionMatchSetId is a required field SqlInjectionMatchSetId *string `min:"1" type:"string" required:"true"` // An array of SqlInjectionMatchSetUpdate objects that you want to insert into // or delete from a SqlInjectionMatchSet. For more information, see the applicable // data types: // // * SqlInjectionMatchSetUpdate: Contains Action and SqlInjectionMatchTuple // // * SqlInjectionMatchTuple: Contains FieldToMatch and TextTransformation // // * FieldToMatch: Contains Data and Type // // Updates is a required field Updates []*SqlInjectionMatchSetUpdate `type:"list" required:"true"` } // String returns the string representation func (s UpdateSqlInjectionMatchSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateSqlInjectionMatchSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateSqlInjectionMatchSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateSqlInjectionMatchSetInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.SqlInjectionMatchSetId == nil { invalidParams.Add(request.NewErrParamRequired("SqlInjectionMatchSetId")) } if s.SqlInjectionMatchSetId != nil && len(*s.SqlInjectionMatchSetId) < 1 { invalidParams.Add(request.NewErrParamMinLen("SqlInjectionMatchSetId", 1)) } if s.Updates == nil { invalidParams.Add(request.NewErrParamRequired("Updates")) } if s.Updates != nil { for i, v := range s.Updates { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Updates", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response to an UpdateSqlInjectionMatchSets request. type UpdateSqlInjectionMatchSetOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the UpdateSqlInjectionMatchSet request. // You can also use this value to query the status of the request. For more // information, see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` } // String returns the string representation func (s UpdateSqlInjectionMatchSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateSqlInjectionMatchSetOutput) GoString() string { return s.String() } type UpdateWebACLInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // For the action that is associated with a rule in a WebACL, specifies the // action that you want AWS WAF to perform when a web request matches all of // the conditions in a rule. For the default action in a WebACL, specifies the // action that you want AWS WAF to take when a web request doesn't match all // of the conditions in any of the rules in a WebACL. DefaultAction *WafAction `type:"structure"` // An array of updates to make to the WebACL. // // An array of WebACLUpdate objects that you want to insert into or delete from // a WebACL. For more information, see the applicable data types: // // * WebACLUpdate: Contains Action and ActivatedRule // // * ActivatedRule: Contains Action, Priority, and RuleId // // * WafAction: Contains Type Updates []*WebACLUpdate `type:"list"` // The WebACLId of the WebACL that you want to update. WebACLId is returned // by CreateWebACL and by ListWebACLs. // // WebACLId is a required field WebACLId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateWebACLInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateWebACLInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateWebACLInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateWebACLInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.WebACLId == nil { invalidParams.Add(request.NewErrParamRequired("WebACLId")) } if s.WebACLId != nil && len(*s.WebACLId) < 1 { invalidParams.Add(request.NewErrParamMinLen("WebACLId", 1)) } if s.DefaultAction != nil { if err := s.DefaultAction.Validate(); err != nil { invalidParams.AddNested("DefaultAction", err.(request.ErrInvalidParams)) } } if s.Updates != nil { for i, v := range s.Updates { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Updates", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } type UpdateWebACLOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the UpdateWebACL request. You can // also use this value to query the status of the request. For more information, // see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` } // String returns the string representation func (s UpdateWebACLOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateWebACLOutput) GoString() string { return s.String() } // A request to update an XssMatchSet. type UpdateXssMatchSetInput struct { _ struct{} `type:"structure"` // The value returned by the most recent call to GetChangeToken. // // ChangeToken is a required field ChangeToken *string `min:"1" type:"string" required:"true"` // An array of XssMatchSetUpdate objects that you want to insert into or delete // from a XssMatchSet. For more information, see the applicable data types: // // * XssMatchSetUpdate: Contains Action and XssMatchTuple // // * XssMatchTuple: Contains FieldToMatch and TextTransformation // // * FieldToMatch: Contains Data and Type // // Updates is a required field Updates []*XssMatchSetUpdate `type:"list" required:"true"` // The XssMatchSetId of the XssMatchSet that you want to update. XssMatchSetId // is returned by CreateXssMatchSet and by ListXssMatchSets. // // XssMatchSetId is a required field XssMatchSetId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateXssMatchSetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateXssMatchSetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateXssMatchSetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateXssMatchSetInput"} if s.ChangeToken == nil { invalidParams.Add(request.NewErrParamRequired("ChangeToken")) } if s.ChangeToken != nil && len(*s.ChangeToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ChangeToken", 1)) } if s.Updates == nil { invalidParams.Add(request.NewErrParamRequired("Updates")) } if s.XssMatchSetId == nil { invalidParams.Add(request.NewErrParamRequired("XssMatchSetId")) } if s.XssMatchSetId != nil && len(*s.XssMatchSetId) < 1 { invalidParams.Add(request.NewErrParamMinLen("XssMatchSetId", 1)) } if s.Updates != nil { for i, v := range s.Updates { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Updates", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The response to an UpdateXssMatchSets request. type UpdateXssMatchSetOutput struct { _ struct{} `type:"structure"` // The ChangeToken that you used to submit the UpdateXssMatchSet request. You // can also use this value to query the status of the request. For more information, // see GetChangeTokenStatus. ChangeToken *string `min:"1" type:"string"` } // String returns the string representation func (s UpdateXssMatchSetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateXssMatchSetOutput) GoString() string { return s.String() } // For the action that is associated with a rule in a WebACL, specifies the // action that you want AWS WAF to perform when a web request matches all of // the conditions in a rule. For the default action in a WebACL, specifies the // action that you want AWS WAF to take when a web request doesn't match all // of the conditions in any of the rules in a WebACL. type WafAction struct { _ struct{} `type:"structure"` // Specifies how you want AWS WAF to respond to requests that match the settings // in a Rule. Valid settings include the following: // // * ALLOW: AWS WAF allows requests // // * BLOCK: AWS WAF blocks requests // // * COUNT: AWS WAF increments a counter of the requests that match all of // the conditions in the rule. AWS WAF then continues to inspect the web // request based on the remaining rules in the web ACL. You can't specify // COUNT for the default action for a WebACL. // // Type is a required field Type *string `type:"string" required:"true" enum:"WafActionType"` } // String returns the string representation func (s WafAction) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WafAction) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *WafAction) Validate() error { invalidParams := request.ErrInvalidParams{Context: "WafAction"} if s.Type == nil { invalidParams.Add(request.NewErrParamRequired("Type")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the Rules that identify the requests that you want to allow, block, // or count. In a WebACL, you also specify a default action (ALLOW or BLOCK), // and the action for each Rule that you add to a WebACL, for example, block // requests from specified IP addresses or block requests from specified referrers. // You also associate the WebACL with a CloudFront distribution to identify // the requests that you want AWS WAF to filter. If you add more than one Rule // to a WebACL, a request needs to match only one of the specifications to be // allowed, blocked, or counted. For more information, see UpdateWebACL. type WebACL struct { _ struct{} `type:"structure"` // The action to perform if none of the Rules contained in the WebACL match. // The action is specified by the WafAction object. // // DefaultAction is a required field DefaultAction *WafAction `type:"structure" required:"true"` MetricName *string `type:"string"` // A friendly name or description of the WebACL. You can't change the name of // a WebACL after you create it. Name *string `min:"1" type:"string"` // An array that contains the action for each Rule in a WebACL, the priority // of the Rule, and the ID of the Rule. // // Rules is a required field Rules []*ActivatedRule `type:"list" required:"true"` // A unique identifier for a WebACL. You use WebACLId to get information about // a WebACL (see GetWebACL), update a WebACL (see UpdateWebACL), and delete // a WebACL from AWS WAF (see DeleteWebACL). // // WebACLId is returned by CreateWebACL and by ListWebACLs. // // WebACLId is a required field WebACLId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s WebACL) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WebACL) GoString() string { return s.String() } // Contains the identifier and the name or description of the WebACL. type WebACLSummary struct { _ struct{} `type:"structure"` // A friendly name or description of the WebACL. You can't change the name of // a WebACL after you create it. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // A unique identifier for a WebACL. You use WebACLId to get information about // a WebACL (see GetWebACL), update a WebACL (see UpdateWebACL), and delete // a WebACL from AWS WAF (see DeleteWebACL). // // WebACLId is returned by CreateWebACL and by ListWebACLs. // // WebACLId is a required field WebACLId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s WebACLSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WebACLSummary) GoString() string { return s.String() } // Specifies whether to insert a Rule into or delete a Rule from a WebACL. type WebACLUpdate struct { _ struct{} `type:"structure"` // Specifies whether to insert a Rule into or delete a Rule from a WebACL. // // Action is a required field Action *string `type:"string" required:"true" enum:"ChangeAction"` // The ActivatedRule object in an UpdateWebACL request specifies a Rule that // you want to insert or delete, the priority of the Rule in the WebACL, and // the action that you want AWS WAF to take when a web request matches the Rule // (ALLOW, BLOCK, or COUNT). // // To specify whether to insert or delete a Rule, use the Action parameter in // the WebACLUpdate data type. // // ActivatedRule is a required field ActivatedRule *ActivatedRule `type:"structure" required:"true"` } // String returns the string representation func (s WebACLUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WebACLUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *WebACLUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "WebACLUpdate"} if s.Action == nil { invalidParams.Add(request.NewErrParamRequired("Action")) } if s.ActivatedRule == nil { invalidParams.Add(request.NewErrParamRequired("ActivatedRule")) } if s.ActivatedRule != nil { if err := s.ActivatedRule.Validate(); err != nil { invalidParams.AddNested("ActivatedRule", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A complex type that contains XssMatchTuple objects, which specify the parts // of web requests that you want AWS WAF to inspect for cross-site scripting // attacks and, if you want AWS WAF to inspect a header, the name of the header. // If a XssMatchSet contains more than one XssMatchTuple object, a request needs // to include cross-site scripting attacks in only one of the specified parts // of the request to be considered a match. type XssMatchSet struct { _ struct{} `type:"structure"` // The name, if any, of the XssMatchSet. Name *string `min:"1" type:"string"` // A unique identifier for an XssMatchSet. You use XssMatchSetId to get information // about an XssMatchSet (see GetXssMatchSet), update an XssMatchSet (see UpdateXssMatchSet), // insert an XssMatchSet into a Rule or delete one from a Rule (see UpdateRule), // and delete an XssMatchSet from AWS WAF (see DeleteXssMatchSet). // // XssMatchSetId is returned by CreateXssMatchSet and by ListXssMatchSets. // // XssMatchSetId is a required field XssMatchSetId *string `min:"1" type:"string" required:"true"` // Specifies the parts of web requests that you want to inspect for cross-site // scripting attacks. // // XssMatchTuples is a required field XssMatchTuples []*XssMatchTuple `type:"list" required:"true"` } // String returns the string representation func (s XssMatchSet) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s XssMatchSet) GoString() string { return s.String() } // The Id and Name of an XssMatchSet. type XssMatchSetSummary struct { _ struct{} `type:"structure"` // The name of the XssMatchSet, if any, specified by Id. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // A unique identifier for an XssMatchSet. You use XssMatchSetId to get information // about a XssMatchSet (see GetXssMatchSet), update an XssMatchSet (see UpdateXssMatchSet), // insert an XssMatchSet into a Rule or delete one from a Rule (see UpdateRule), // and delete an XssMatchSet from AWS WAF (see DeleteXssMatchSet). // // XssMatchSetId is returned by CreateXssMatchSet and by ListXssMatchSets. // // XssMatchSetId is a required field XssMatchSetId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s XssMatchSetSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s XssMatchSetSummary) GoString() string { return s.String() } // Specifies the part of a web request that you want to inspect for cross-site // scripting attacks and indicates whether you want to add the specification // to an XssMatchSet or delete it from an XssMatchSet. type XssMatchSetUpdate struct { _ struct{} `type:"structure"` // Specify INSERT to add a XssMatchSetUpdate to an XssMatchSet. Use DELETE to // remove a XssMatchSetUpdate from an XssMatchSet. // // Action is a required field Action *string `type:"string" required:"true" enum:"ChangeAction"` // Specifies the part of a web request that you want AWS WAF to inspect for // cross-site scripting attacks and, if you want AWS WAF to inspect a header, // the name of the header. // // XssMatchTuple is a required field XssMatchTuple *XssMatchTuple `type:"structure" required:"true"` } // String returns the string representation func (s XssMatchSetUpdate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s XssMatchSetUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *XssMatchSetUpdate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "XssMatchSetUpdate"} if s.Action == nil { invalidParams.Add(request.NewErrParamRequired("Action")) } if s.XssMatchTuple == nil { invalidParams.Add(request.NewErrParamRequired("XssMatchTuple")) } if s.XssMatchTuple != nil { if err := s.XssMatchTuple.Validate(); err != nil { invalidParams.AddNested("XssMatchTuple", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies the part of a web request that you want AWS WAF to inspect for // cross-site scripting attacks and, if you want AWS WAF to inspect a header, // the name of the header. type XssMatchTuple struct { _ struct{} `type:"structure"` // Specifies where in a web request to look for TargetString. // // FieldToMatch is a required field FieldToMatch *FieldToMatch `type:"structure" required:"true"` // Text transformations eliminate some of the unusual formatting that attackers // use in web requests in an effort to bypass AWS WAF. If you specify a transformation, // AWS WAF performs the transformation on FieldToMatch before inspecting a request // for a match. // // CMD_LINE // // When you're concerned that attackers are injecting an operating system commandline // command and using unusual formatting to disguise some or all of the command, // use this option to perform the following transformations: // // * Delete the following characters: \ " ' ^ // // * Delete spaces before the following characters: / ( // // * Replace the following characters with a space: , ; // // * Replace multiple spaces with one space // // * Convert uppercase letters (A-Z) to lowercase (a-z) // // COMPRESS_WHITE_SPACE // // Use this option to replace the following characters with a space character // (decimal 32): // // * \f, formfeed, decimal 12 // // * \t, tab, decimal 9 // // * \n, newline, decimal 10 // // * \r, carriage return, decimal 13 // // * \v, vertical tab, decimal 11 // // * non-breaking space, decimal 160 // // COMPRESS_WHITE_SPACE also replaces multiple spaces with one space. // // HTML_ENTITY_DECODE // // Use this option to replace HTML-encoded characters with unencoded characters. // HTML_ENTITY_DECODE performs the following operations: // // * Replaces (ampersand)quot; with " // // * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160 // // * Replaces (ampersand)lt; with a "less than" symbol // // * Replaces (ampersand)gt; with > // // * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh;, // with the corresponding characters // // * Replaces characters that are represented in decimal format, (ampersand)#nnnn;, // with the corresponding characters // // LOWERCASE // // Use this option to convert uppercase letters (A-Z) to lowercase (a-z). // // URL_DECODE // // Use this option to decode a URL-encoded value. // // NONE // // Specify NONE if you don't want to perform any text transformations. // // TextTransformation is a required field TextTransformation *string `type:"string" required:"true" enum:"TextTransformation"` } // String returns the string representation func (s XssMatchTuple) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s XssMatchTuple) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *XssMatchTuple) Validate() error { invalidParams := request.ErrInvalidParams{Context: "XssMatchTuple"} if s.FieldToMatch == nil { invalidParams.Add(request.NewErrParamRequired("FieldToMatch")) } if s.TextTransformation == nil { invalidParams.Add(request.NewErrParamRequired("TextTransformation")) } if s.FieldToMatch != nil { if err := s.FieldToMatch.Validate(); err != nil { invalidParams.AddNested("FieldToMatch", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } const ( // ChangeActionInsert is a ChangeAction enum value ChangeActionInsert = "INSERT" // ChangeActionDelete is a ChangeAction enum value ChangeActionDelete = "DELETE" ) const ( // ChangeTokenStatusProvisioned is a ChangeTokenStatus enum value ChangeTokenStatusProvisioned = "PROVISIONED" // ChangeTokenStatusPending is a ChangeTokenStatus enum value ChangeTokenStatusPending = "PENDING" // ChangeTokenStatusInsync is a ChangeTokenStatus enum value ChangeTokenStatusInsync = "INSYNC" ) const ( // ComparisonOperatorEq is a ComparisonOperator enum value ComparisonOperatorEq = "EQ" // ComparisonOperatorNe is a ComparisonOperator enum value ComparisonOperatorNe = "NE" // ComparisonOperatorLe is a ComparisonOperator enum value ComparisonOperatorLe = "LE" // ComparisonOperatorLt is a ComparisonOperator enum value ComparisonOperatorLt = "LT" // ComparisonOperatorGe is a ComparisonOperator enum value ComparisonOperatorGe = "GE" // ComparisonOperatorGt is a ComparisonOperator enum value ComparisonOperatorGt = "GT" ) const ( // IPSetDescriptorTypeIpv4 is a IPSetDescriptorType enum value IPSetDescriptorTypeIpv4 = "IPV4" // IPSetDescriptorTypeIpv6 is a IPSetDescriptorType enum value IPSetDescriptorTypeIpv6 = "IPV6" ) const ( // MatchFieldTypeUri is a MatchFieldType enum value MatchFieldTypeUri = "URI" // MatchFieldTypeQueryString is a MatchFieldType enum value MatchFieldTypeQueryString = "QUERY_STRING" // MatchFieldTypeHeader is a MatchFieldType enum value MatchFieldTypeHeader = "HEADER" // MatchFieldTypeMethod is a MatchFieldType enum value MatchFieldTypeMethod = "METHOD" // MatchFieldTypeBody is a MatchFieldType enum value MatchFieldTypeBody = "BODY" ) const ( // ParameterExceptionFieldChangeAction is a ParameterExceptionField enum value ParameterExceptionFieldChangeAction = "CHANGE_ACTION" // ParameterExceptionFieldWafAction is a ParameterExceptionField enum value ParameterExceptionFieldWafAction = "WAF_ACTION" // ParameterExceptionFieldPredicateType is a ParameterExceptionField enum value ParameterExceptionFieldPredicateType = "PREDICATE_TYPE" // ParameterExceptionFieldIpsetType is a ParameterExceptionField enum value ParameterExceptionFieldIpsetType = "IPSET_TYPE" // ParameterExceptionFieldByteMatchFieldType is a ParameterExceptionField enum value ParameterExceptionFieldByteMatchFieldType = "BYTE_MATCH_FIELD_TYPE" // ParameterExceptionFieldSqlInjectionMatchFieldType is a ParameterExceptionField enum value ParameterExceptionFieldSqlInjectionMatchFieldType = "SQL_INJECTION_MATCH_FIELD_TYPE" // ParameterExceptionFieldByteMatchTextTransformation is a ParameterExceptionField enum value ParameterExceptionFieldByteMatchTextTransformation = "BYTE_MATCH_TEXT_TRANSFORMATION" // ParameterExceptionFieldByteMatchPositionalConstraint is a ParameterExceptionField enum value ParameterExceptionFieldByteMatchPositionalConstraint = "BYTE_MATCH_POSITIONAL_CONSTRAINT" // ParameterExceptionFieldSizeConstraintComparisonOperator is a ParameterExceptionField enum value ParameterExceptionFieldSizeConstraintComparisonOperator = "SIZE_CONSTRAINT_COMPARISON_OPERATOR" ) const ( // ParameterExceptionReasonInvalidOption is a ParameterExceptionReason enum value ParameterExceptionReasonInvalidOption = "INVALID_OPTION" // ParameterExceptionReasonIllegalCombination is a ParameterExceptionReason enum value ParameterExceptionReasonIllegalCombination = "ILLEGAL_COMBINATION" ) const ( // PositionalConstraintExactly is a PositionalConstraint enum value PositionalConstraintExactly = "EXACTLY" // PositionalConstraintStartsWith is a PositionalConstraint enum value PositionalConstraintStartsWith = "STARTS_WITH" // PositionalConstraintEndsWith is a PositionalConstraint enum value PositionalConstraintEndsWith = "ENDS_WITH" // PositionalConstraintContains is a PositionalConstraint enum value PositionalConstraintContains = "CONTAINS" // PositionalConstraintContainsWord is a PositionalConstraint enum value PositionalConstraintContainsWord = "CONTAINS_WORD" ) const ( // PredicateTypeIpmatch is a PredicateType enum value PredicateTypeIpmatch = "IPMatch" // PredicateTypeByteMatch is a PredicateType enum value PredicateTypeByteMatch = "ByteMatch" // PredicateTypeSqlInjectionMatch is a PredicateType enum value PredicateTypeSqlInjectionMatch = "SqlInjectionMatch" // PredicateTypeSizeConstraint is a PredicateType enum value PredicateTypeSizeConstraint = "SizeConstraint" // PredicateTypeXssMatch is a PredicateType enum value PredicateTypeXssMatch = "XssMatch" ) const ( // TextTransformationNone is a TextTransformation enum value TextTransformationNone = "NONE" // TextTransformationCompressWhiteSpace is a TextTransformation enum value TextTransformationCompressWhiteSpace = "COMPRESS_WHITE_SPACE" // TextTransformationHtmlEntityDecode is a TextTransformation enum value TextTransformationHtmlEntityDecode = "HTML_ENTITY_DECODE" // TextTransformationLowercase is a TextTransformation enum value TextTransformationLowercase = "LOWERCASE" // TextTransformationCmdLine is a TextTransformation enum value TextTransformationCmdLine = "CMD_LINE" // TextTransformationUrlDecode is a TextTransformation enum value TextTransformationUrlDecode = "URL_DECODE" ) const ( // WafActionTypeBlock is a WafActionType enum value WafActionTypeBlock = "BLOCK" // WafActionTypeAllow is a WafActionType enum value WafActionTypeAllow = "ALLOW" // WafActionTypeCount is a WafActionType enum value WafActionTypeCount = "COUNT" ) aws-sdk-go-1.4.22/service/waf/examples_test.go000066400000000000000000000610301300374646400212040ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package waf_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/waf" ) var _ time.Duration var _ bytes.Buffer func ExampleWAF_CreateByteMatchSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.CreateByteMatchSetInput{ ChangeToken: aws.String("ChangeToken"), // Required Name: aws.String("ResourceName"), // Required } resp, err := svc.CreateByteMatchSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_CreateIPSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.CreateIPSetInput{ ChangeToken: aws.String("ChangeToken"), // Required Name: aws.String("ResourceName"), // Required } resp, err := svc.CreateIPSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_CreateRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.CreateRuleInput{ ChangeToken: aws.String("ChangeToken"), // Required MetricName: aws.String("MetricName"), // Required Name: aws.String("ResourceName"), // Required } resp, err := svc.CreateRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_CreateSizeConstraintSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.CreateSizeConstraintSetInput{ ChangeToken: aws.String("ChangeToken"), // Required Name: aws.String("ResourceName"), // Required } resp, err := svc.CreateSizeConstraintSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_CreateSqlInjectionMatchSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.CreateSqlInjectionMatchSetInput{ ChangeToken: aws.String("ChangeToken"), // Required Name: aws.String("ResourceName"), // Required } resp, err := svc.CreateSqlInjectionMatchSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_CreateWebACL() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.CreateWebACLInput{ ChangeToken: aws.String("ChangeToken"), // Required DefaultAction: &waf.WafAction{ // Required Type: aws.String("WafActionType"), // Required }, MetricName: aws.String("MetricName"), // Required Name: aws.String("ResourceName"), // Required } resp, err := svc.CreateWebACL(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_CreateXssMatchSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.CreateXssMatchSetInput{ ChangeToken: aws.String("ChangeToken"), // Required Name: aws.String("ResourceName"), // Required } resp, err := svc.CreateXssMatchSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_DeleteByteMatchSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.DeleteByteMatchSetInput{ ByteMatchSetId: aws.String("ResourceId"), // Required ChangeToken: aws.String("ChangeToken"), // Required } resp, err := svc.DeleteByteMatchSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_DeleteIPSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.DeleteIPSetInput{ ChangeToken: aws.String("ChangeToken"), // Required IPSetId: aws.String("ResourceId"), // Required } resp, err := svc.DeleteIPSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_DeleteRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.DeleteRuleInput{ ChangeToken: aws.String("ChangeToken"), // Required RuleId: aws.String("ResourceId"), // Required } resp, err := svc.DeleteRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_DeleteSizeConstraintSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.DeleteSizeConstraintSetInput{ ChangeToken: aws.String("ChangeToken"), // Required SizeConstraintSetId: aws.String("ResourceId"), // Required } resp, err := svc.DeleteSizeConstraintSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_DeleteSqlInjectionMatchSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.DeleteSqlInjectionMatchSetInput{ ChangeToken: aws.String("ChangeToken"), // Required SqlInjectionMatchSetId: aws.String("ResourceId"), // Required } resp, err := svc.DeleteSqlInjectionMatchSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_DeleteWebACL() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.DeleteWebACLInput{ ChangeToken: aws.String("ChangeToken"), // Required WebACLId: aws.String("ResourceId"), // Required } resp, err := svc.DeleteWebACL(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_DeleteXssMatchSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.DeleteXssMatchSetInput{ ChangeToken: aws.String("ChangeToken"), // Required XssMatchSetId: aws.String("ResourceId"), // Required } resp, err := svc.DeleteXssMatchSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_GetByteMatchSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.GetByteMatchSetInput{ ByteMatchSetId: aws.String("ResourceId"), // Required } resp, err := svc.GetByteMatchSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_GetChangeToken() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) var params *waf.GetChangeTokenInput resp, err := svc.GetChangeToken(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_GetChangeTokenStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.GetChangeTokenStatusInput{ ChangeToken: aws.String("ChangeToken"), // Required } resp, err := svc.GetChangeTokenStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_GetIPSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.GetIPSetInput{ IPSetId: aws.String("ResourceId"), // Required } resp, err := svc.GetIPSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_GetRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.GetRuleInput{ RuleId: aws.String("ResourceId"), // Required } resp, err := svc.GetRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_GetSampledRequests() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.GetSampledRequestsInput{ MaxItems: aws.Int64(1), // Required RuleId: aws.String("ResourceId"), // Required TimeWindow: &waf.TimeWindow{ // Required EndTime: aws.Time(time.Now()), // Required StartTime: aws.Time(time.Now()), // Required }, WebAclId: aws.String("ResourceId"), // Required } resp, err := svc.GetSampledRequests(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_GetSizeConstraintSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.GetSizeConstraintSetInput{ SizeConstraintSetId: aws.String("ResourceId"), // Required } resp, err := svc.GetSizeConstraintSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_GetSqlInjectionMatchSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.GetSqlInjectionMatchSetInput{ SqlInjectionMatchSetId: aws.String("ResourceId"), // Required } resp, err := svc.GetSqlInjectionMatchSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_GetWebACL() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.GetWebACLInput{ WebACLId: aws.String("ResourceId"), // Required } resp, err := svc.GetWebACL(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_GetXssMatchSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.GetXssMatchSetInput{ XssMatchSetId: aws.String("ResourceId"), // Required } resp, err := svc.GetXssMatchSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_ListByteMatchSets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.ListByteMatchSetsInput{ Limit: aws.Int64(1), NextMarker: aws.String("NextMarker"), } resp, err := svc.ListByteMatchSets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_ListIPSets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.ListIPSetsInput{ Limit: aws.Int64(1), NextMarker: aws.String("NextMarker"), } resp, err := svc.ListIPSets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_ListRules() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.ListRulesInput{ Limit: aws.Int64(1), NextMarker: aws.String("NextMarker"), } resp, err := svc.ListRules(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_ListSizeConstraintSets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.ListSizeConstraintSetsInput{ Limit: aws.Int64(1), NextMarker: aws.String("NextMarker"), } resp, err := svc.ListSizeConstraintSets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_ListSqlInjectionMatchSets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.ListSqlInjectionMatchSetsInput{ Limit: aws.Int64(1), NextMarker: aws.String("NextMarker"), } resp, err := svc.ListSqlInjectionMatchSets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_ListWebACLs() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.ListWebACLsInput{ Limit: aws.Int64(1), NextMarker: aws.String("NextMarker"), } resp, err := svc.ListWebACLs(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_ListXssMatchSets() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.ListXssMatchSetsInput{ Limit: aws.Int64(1), NextMarker: aws.String("NextMarker"), } resp, err := svc.ListXssMatchSets(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_UpdateByteMatchSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.UpdateByteMatchSetInput{ ByteMatchSetId: aws.String("ResourceId"), // Required ChangeToken: aws.String("ChangeToken"), // Required Updates: []*waf.ByteMatchSetUpdate{ // Required { // Required Action: aws.String("ChangeAction"), // Required ByteMatchTuple: &waf.ByteMatchTuple{ // Required FieldToMatch: &waf.FieldToMatch{ // Required Type: aws.String("MatchFieldType"), // Required Data: aws.String("MatchFieldData"), }, PositionalConstraint: aws.String("PositionalConstraint"), // Required TargetString: []byte("PAYLOAD"), // Required TextTransformation: aws.String("TextTransformation"), // Required }, }, // More values... }, } resp, err := svc.UpdateByteMatchSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_UpdateIPSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.UpdateIPSetInput{ ChangeToken: aws.String("ChangeToken"), // Required IPSetId: aws.String("ResourceId"), // Required Updates: []*waf.IPSetUpdate{ // Required { // Required Action: aws.String("ChangeAction"), // Required IPSetDescriptor: &waf.IPSetDescriptor{ // Required Type: aws.String("IPSetDescriptorType"), // Required Value: aws.String("IPSetDescriptorValue"), // Required }, }, // More values... }, } resp, err := svc.UpdateIPSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_UpdateRule() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.UpdateRuleInput{ ChangeToken: aws.String("ChangeToken"), // Required RuleId: aws.String("ResourceId"), // Required Updates: []*waf.RuleUpdate{ // Required { // Required Action: aws.String("ChangeAction"), // Required Predicate: &waf.Predicate{ // Required DataId: aws.String("ResourceId"), // Required Negated: aws.Bool(true), // Required Type: aws.String("PredicateType"), // Required }, }, // More values... }, } resp, err := svc.UpdateRule(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_UpdateSizeConstraintSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.UpdateSizeConstraintSetInput{ ChangeToken: aws.String("ChangeToken"), // Required SizeConstraintSetId: aws.String("ResourceId"), // Required Updates: []*waf.SizeConstraintSetUpdate{ // Required { // Required Action: aws.String("ChangeAction"), // Required SizeConstraint: &waf.SizeConstraint{ // Required ComparisonOperator: aws.String("ComparisonOperator"), // Required FieldToMatch: &waf.FieldToMatch{ // Required Type: aws.String("MatchFieldType"), // Required Data: aws.String("MatchFieldData"), }, Size: aws.Int64(1), // Required TextTransformation: aws.String("TextTransformation"), // Required }, }, // More values... }, } resp, err := svc.UpdateSizeConstraintSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_UpdateSqlInjectionMatchSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.UpdateSqlInjectionMatchSetInput{ ChangeToken: aws.String("ChangeToken"), // Required SqlInjectionMatchSetId: aws.String("ResourceId"), // Required Updates: []*waf.SqlInjectionMatchSetUpdate{ // Required { // Required Action: aws.String("ChangeAction"), // Required SqlInjectionMatchTuple: &waf.SqlInjectionMatchTuple{ // Required FieldToMatch: &waf.FieldToMatch{ // Required Type: aws.String("MatchFieldType"), // Required Data: aws.String("MatchFieldData"), }, TextTransformation: aws.String("TextTransformation"), // Required }, }, // More values... }, } resp, err := svc.UpdateSqlInjectionMatchSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_UpdateWebACL() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.UpdateWebACLInput{ ChangeToken: aws.String("ChangeToken"), // Required WebACLId: aws.String("ResourceId"), // Required DefaultAction: &waf.WafAction{ Type: aws.String("WafActionType"), // Required }, Updates: []*waf.WebACLUpdate{ { // Required Action: aws.String("ChangeAction"), // Required ActivatedRule: &waf.ActivatedRule{ // Required Action: &waf.WafAction{ // Required Type: aws.String("WafActionType"), // Required }, Priority: aws.Int64(1), // Required RuleId: aws.String("ResourceId"), // Required }, }, // More values... }, } resp, err := svc.UpdateWebACL(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWAF_UpdateXssMatchSet() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := waf.New(sess) params := &waf.UpdateXssMatchSetInput{ ChangeToken: aws.String("ChangeToken"), // Required Updates: []*waf.XssMatchSetUpdate{ // Required { // Required Action: aws.String("ChangeAction"), // Required XssMatchTuple: &waf.XssMatchTuple{ // Required FieldToMatch: &waf.FieldToMatch{ // Required Type: aws.String("MatchFieldType"), // Required Data: aws.String("MatchFieldData"), }, TextTransformation: aws.String("TextTransformation"), // Required }, }, // More values... }, XssMatchSetId: aws.String("ResourceId"), // Required } resp, err := svc.UpdateXssMatchSet(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/waf/service.go000066400000000000000000000056761300374646400200050ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package waf import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // This is the AWS WAF API Reference. This guide is for developers who need // detailed information about the AWS WAF API actions, data types, and errors. // For detailed information about AWS WAF features and an overview of how to // use the AWS WAF API, see the AWS WAF Developer Guide (http://docs.aws.amazon.com/waf/latest/developerguide/). //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type WAF struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "waf" // New creates a new instance of the WAF client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a WAF client from just a session. // svc := waf.New(mySession) // // // Create a WAF client with additional configuration // svc := waf.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *WAF { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *WAF { svc := &WAF{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-08-24", JSONVersion: "1.1", TargetPrefix: "AWSWAF_20150824", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a WAF operation and runs any // custom request initialization. func (c *WAF) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/waf/wafiface/000077500000000000000000000000001300374646400175455ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/waf/wafiface/interface.go000066400000000000000000000217041300374646400220400ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package wafiface provides an interface to enable mocking the AWS WAF service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package wafiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/waf" ) // WAFAPI provides an interface to enable mocking the // waf.WAF service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // AWS WAF. // func myFunc(svc wafiface.WAFAPI) bool { // // Make svc.CreateByteMatchSet request // } // // func main() { // sess := session.New() // svc := waf.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockWAFClient struct { // wafiface.WAFAPI // } // func (m *mockWAFClient) CreateByteMatchSet(input *waf.CreateByteMatchSetInput) (*waf.CreateByteMatchSetOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockWAFClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type WAFAPI interface { CreateByteMatchSetRequest(*waf.CreateByteMatchSetInput) (*request.Request, *waf.CreateByteMatchSetOutput) CreateByteMatchSet(*waf.CreateByteMatchSetInput) (*waf.CreateByteMatchSetOutput, error) CreateIPSetRequest(*waf.CreateIPSetInput) (*request.Request, *waf.CreateIPSetOutput) CreateIPSet(*waf.CreateIPSetInput) (*waf.CreateIPSetOutput, error) CreateRuleRequest(*waf.CreateRuleInput) (*request.Request, *waf.CreateRuleOutput) CreateRule(*waf.CreateRuleInput) (*waf.CreateRuleOutput, error) CreateSizeConstraintSetRequest(*waf.CreateSizeConstraintSetInput) (*request.Request, *waf.CreateSizeConstraintSetOutput) CreateSizeConstraintSet(*waf.CreateSizeConstraintSetInput) (*waf.CreateSizeConstraintSetOutput, error) CreateSqlInjectionMatchSetRequest(*waf.CreateSqlInjectionMatchSetInput) (*request.Request, *waf.CreateSqlInjectionMatchSetOutput) CreateSqlInjectionMatchSet(*waf.CreateSqlInjectionMatchSetInput) (*waf.CreateSqlInjectionMatchSetOutput, error) CreateWebACLRequest(*waf.CreateWebACLInput) (*request.Request, *waf.CreateWebACLOutput) CreateWebACL(*waf.CreateWebACLInput) (*waf.CreateWebACLOutput, error) CreateXssMatchSetRequest(*waf.CreateXssMatchSetInput) (*request.Request, *waf.CreateXssMatchSetOutput) CreateXssMatchSet(*waf.CreateXssMatchSetInput) (*waf.CreateXssMatchSetOutput, error) DeleteByteMatchSetRequest(*waf.DeleteByteMatchSetInput) (*request.Request, *waf.DeleteByteMatchSetOutput) DeleteByteMatchSet(*waf.DeleteByteMatchSetInput) (*waf.DeleteByteMatchSetOutput, error) DeleteIPSetRequest(*waf.DeleteIPSetInput) (*request.Request, *waf.DeleteIPSetOutput) DeleteIPSet(*waf.DeleteIPSetInput) (*waf.DeleteIPSetOutput, error) DeleteRuleRequest(*waf.DeleteRuleInput) (*request.Request, *waf.DeleteRuleOutput) DeleteRule(*waf.DeleteRuleInput) (*waf.DeleteRuleOutput, error) DeleteSizeConstraintSetRequest(*waf.DeleteSizeConstraintSetInput) (*request.Request, *waf.DeleteSizeConstraintSetOutput) DeleteSizeConstraintSet(*waf.DeleteSizeConstraintSetInput) (*waf.DeleteSizeConstraintSetOutput, error) DeleteSqlInjectionMatchSetRequest(*waf.DeleteSqlInjectionMatchSetInput) (*request.Request, *waf.DeleteSqlInjectionMatchSetOutput) DeleteSqlInjectionMatchSet(*waf.DeleteSqlInjectionMatchSetInput) (*waf.DeleteSqlInjectionMatchSetOutput, error) DeleteWebACLRequest(*waf.DeleteWebACLInput) (*request.Request, *waf.DeleteWebACLOutput) DeleteWebACL(*waf.DeleteWebACLInput) (*waf.DeleteWebACLOutput, error) DeleteXssMatchSetRequest(*waf.DeleteXssMatchSetInput) (*request.Request, *waf.DeleteXssMatchSetOutput) DeleteXssMatchSet(*waf.DeleteXssMatchSetInput) (*waf.DeleteXssMatchSetOutput, error) GetByteMatchSetRequest(*waf.GetByteMatchSetInput) (*request.Request, *waf.GetByteMatchSetOutput) GetByteMatchSet(*waf.GetByteMatchSetInput) (*waf.GetByteMatchSetOutput, error) GetChangeTokenRequest(*waf.GetChangeTokenInput) (*request.Request, *waf.GetChangeTokenOutput) GetChangeToken(*waf.GetChangeTokenInput) (*waf.GetChangeTokenOutput, error) GetChangeTokenStatusRequest(*waf.GetChangeTokenStatusInput) (*request.Request, *waf.GetChangeTokenStatusOutput) GetChangeTokenStatus(*waf.GetChangeTokenStatusInput) (*waf.GetChangeTokenStatusOutput, error) GetIPSetRequest(*waf.GetIPSetInput) (*request.Request, *waf.GetIPSetOutput) GetIPSet(*waf.GetIPSetInput) (*waf.GetIPSetOutput, error) GetRuleRequest(*waf.GetRuleInput) (*request.Request, *waf.GetRuleOutput) GetRule(*waf.GetRuleInput) (*waf.GetRuleOutput, error) GetSampledRequestsRequest(*waf.GetSampledRequestsInput) (*request.Request, *waf.GetSampledRequestsOutput) GetSampledRequests(*waf.GetSampledRequestsInput) (*waf.GetSampledRequestsOutput, error) GetSizeConstraintSetRequest(*waf.GetSizeConstraintSetInput) (*request.Request, *waf.GetSizeConstraintSetOutput) GetSizeConstraintSet(*waf.GetSizeConstraintSetInput) (*waf.GetSizeConstraintSetOutput, error) GetSqlInjectionMatchSetRequest(*waf.GetSqlInjectionMatchSetInput) (*request.Request, *waf.GetSqlInjectionMatchSetOutput) GetSqlInjectionMatchSet(*waf.GetSqlInjectionMatchSetInput) (*waf.GetSqlInjectionMatchSetOutput, error) GetWebACLRequest(*waf.GetWebACLInput) (*request.Request, *waf.GetWebACLOutput) GetWebACL(*waf.GetWebACLInput) (*waf.GetWebACLOutput, error) GetXssMatchSetRequest(*waf.GetXssMatchSetInput) (*request.Request, *waf.GetXssMatchSetOutput) GetXssMatchSet(*waf.GetXssMatchSetInput) (*waf.GetXssMatchSetOutput, error) ListByteMatchSetsRequest(*waf.ListByteMatchSetsInput) (*request.Request, *waf.ListByteMatchSetsOutput) ListByteMatchSets(*waf.ListByteMatchSetsInput) (*waf.ListByteMatchSetsOutput, error) ListIPSetsRequest(*waf.ListIPSetsInput) (*request.Request, *waf.ListIPSetsOutput) ListIPSets(*waf.ListIPSetsInput) (*waf.ListIPSetsOutput, error) ListRulesRequest(*waf.ListRulesInput) (*request.Request, *waf.ListRulesOutput) ListRules(*waf.ListRulesInput) (*waf.ListRulesOutput, error) ListSizeConstraintSetsRequest(*waf.ListSizeConstraintSetsInput) (*request.Request, *waf.ListSizeConstraintSetsOutput) ListSizeConstraintSets(*waf.ListSizeConstraintSetsInput) (*waf.ListSizeConstraintSetsOutput, error) ListSqlInjectionMatchSetsRequest(*waf.ListSqlInjectionMatchSetsInput) (*request.Request, *waf.ListSqlInjectionMatchSetsOutput) ListSqlInjectionMatchSets(*waf.ListSqlInjectionMatchSetsInput) (*waf.ListSqlInjectionMatchSetsOutput, error) ListWebACLsRequest(*waf.ListWebACLsInput) (*request.Request, *waf.ListWebACLsOutput) ListWebACLs(*waf.ListWebACLsInput) (*waf.ListWebACLsOutput, error) ListXssMatchSetsRequest(*waf.ListXssMatchSetsInput) (*request.Request, *waf.ListXssMatchSetsOutput) ListXssMatchSets(*waf.ListXssMatchSetsInput) (*waf.ListXssMatchSetsOutput, error) UpdateByteMatchSetRequest(*waf.UpdateByteMatchSetInput) (*request.Request, *waf.UpdateByteMatchSetOutput) UpdateByteMatchSet(*waf.UpdateByteMatchSetInput) (*waf.UpdateByteMatchSetOutput, error) UpdateIPSetRequest(*waf.UpdateIPSetInput) (*request.Request, *waf.UpdateIPSetOutput) UpdateIPSet(*waf.UpdateIPSetInput) (*waf.UpdateIPSetOutput, error) UpdateRuleRequest(*waf.UpdateRuleInput) (*request.Request, *waf.UpdateRuleOutput) UpdateRule(*waf.UpdateRuleInput) (*waf.UpdateRuleOutput, error) UpdateSizeConstraintSetRequest(*waf.UpdateSizeConstraintSetInput) (*request.Request, *waf.UpdateSizeConstraintSetOutput) UpdateSizeConstraintSet(*waf.UpdateSizeConstraintSetInput) (*waf.UpdateSizeConstraintSetOutput, error) UpdateSqlInjectionMatchSetRequest(*waf.UpdateSqlInjectionMatchSetInput) (*request.Request, *waf.UpdateSqlInjectionMatchSetOutput) UpdateSqlInjectionMatchSet(*waf.UpdateSqlInjectionMatchSetInput) (*waf.UpdateSqlInjectionMatchSetOutput, error) UpdateWebACLRequest(*waf.UpdateWebACLInput) (*request.Request, *waf.UpdateWebACLOutput) UpdateWebACL(*waf.UpdateWebACLInput) (*waf.UpdateWebACLOutput, error) UpdateXssMatchSetRequest(*waf.UpdateXssMatchSetInput) (*request.Request, *waf.UpdateXssMatchSetOutput) UpdateXssMatchSet(*waf.UpdateXssMatchSetInput) (*waf.UpdateXssMatchSetOutput, error) } var _ WAFAPI = (*waf.WAF)(nil) aws-sdk-go-1.4.22/service/workspaces/000077500000000000000000000000001300374646400174045ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/workspaces/api.go000066400000000000000000002470071300374646400205160ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package workspaces provides a client for Amazon WorkSpaces. package workspaces import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opCreateTags = "CreateTags" // CreateTagsRequest generates a "aws/request.Request" representing the // client's request for the CreateTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateTagsRequest method. // req, resp := client.CreateTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WorkSpaces) CreateTagsRequest(input *CreateTagsInput) (req *request.Request, output *CreateTagsOutput) { op := &request.Operation{ Name: opCreateTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateTagsInput{} } req = c.newRequest(op, input, output) output = &CreateTagsOutput{} req.Data = output return } // CreateTags API operation for Amazon WorkSpaces. // // Creates tags for a WorkSpace. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation CreateTags for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The resource could not be found. // // * InvalidParameterValuesException // One or more parameter values are not valid. // // * ResourceLimitExceededException // Your resource limits have been exceeded. // func (c *WorkSpaces) CreateTags(input *CreateTagsInput) (*CreateTagsOutput, error) { req, out := c.CreateTagsRequest(input) err := req.Send() return out, err } const opCreateWorkspaces = "CreateWorkspaces" // CreateWorkspacesRequest generates a "aws/request.Request" representing the // client's request for the CreateWorkspaces operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See CreateWorkspaces for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the CreateWorkspaces method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the CreateWorkspacesRequest method. // req, resp := client.CreateWorkspacesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WorkSpaces) CreateWorkspacesRequest(input *CreateWorkspacesInput) (req *request.Request, output *CreateWorkspacesOutput) { op := &request.Operation{ Name: opCreateWorkspaces, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateWorkspacesInput{} } req = c.newRequest(op, input, output) output = &CreateWorkspacesOutput{} req.Data = output return } // CreateWorkspaces API operation for Amazon WorkSpaces. // // Creates one or more WorkSpaces. // // This operation is asynchronous and returns before the WorkSpaces are created. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation CreateWorkspaces for usage and error information. // // Returned Error Codes: // * ResourceLimitExceededException // Your resource limits have been exceeded. // // * InvalidParameterValuesException // One or more parameter values are not valid. // func (c *WorkSpaces) CreateWorkspaces(input *CreateWorkspacesInput) (*CreateWorkspacesOutput, error) { req, out := c.CreateWorkspacesRequest(input) err := req.Send() return out, err } const opDeleteTags = "DeleteTags" // DeleteTagsRequest generates a "aws/request.Request" representing the // client's request for the DeleteTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DeleteTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DeleteTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DeleteTagsRequest method. // req, resp := client.DeleteTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WorkSpaces) DeleteTagsRequest(input *DeleteTagsInput) (req *request.Request, output *DeleteTagsOutput) { op := &request.Operation{ Name: opDeleteTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteTagsInput{} } req = c.newRequest(op, input, output) output = &DeleteTagsOutput{} req.Data = output return } // DeleteTags API operation for Amazon WorkSpaces. // // Deletes tags from a WorkSpace. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation DeleteTags for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The resource could not be found. // // * InvalidParameterValuesException // One or more parameter values are not valid. // func (c *WorkSpaces) DeleteTags(input *DeleteTagsInput) (*DeleteTagsOutput, error) { req, out := c.DeleteTagsRequest(input) err := req.Send() return out, err } const opDescribeTags = "DescribeTags" // DescribeTagsRequest generates a "aws/request.Request" representing the // client's request for the DescribeTags operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeTags for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeTags method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeTagsRequest method. // req, resp := client.DescribeTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WorkSpaces) DescribeTagsRequest(input *DescribeTagsInput) (req *request.Request, output *DescribeTagsOutput) { op := &request.Operation{ Name: opDescribeTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTagsInput{} } req = c.newRequest(op, input, output) output = &DescribeTagsOutput{} req.Data = output return } // DescribeTags API operation for Amazon WorkSpaces. // // Describes tags for a WorkSpace. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation DescribeTags for usage and error information. // // Returned Error Codes: // * ResourceNotFoundException // The resource could not be found. // func (c *WorkSpaces) DescribeTags(input *DescribeTagsInput) (*DescribeTagsOutput, error) { req, out := c.DescribeTagsRequest(input) err := req.Send() return out, err } const opDescribeWorkspaceBundles = "DescribeWorkspaceBundles" // DescribeWorkspaceBundlesRequest generates a "aws/request.Request" representing the // client's request for the DescribeWorkspaceBundles operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeWorkspaceBundles for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeWorkspaceBundles method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeWorkspaceBundlesRequest method. // req, resp := client.DescribeWorkspaceBundlesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WorkSpaces) DescribeWorkspaceBundlesRequest(input *DescribeWorkspaceBundlesInput) (req *request.Request, output *DescribeWorkspaceBundlesOutput) { op := &request.Operation{ Name: opDescribeWorkspaceBundles, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &DescribeWorkspaceBundlesInput{} } req = c.newRequest(op, input, output) output = &DescribeWorkspaceBundlesOutput{} req.Data = output return } // DescribeWorkspaceBundles API operation for Amazon WorkSpaces. // // Obtains information about the WorkSpace bundles that are available to your // account in the specified region. // // You can filter the results with either the BundleIds parameter, or the Owner // parameter, but not both. // // This operation supports pagination with the use of the NextToken request // and response parameters. If more results are available, the NextToken response // member contains a token that you pass in the next call to this operation // to retrieve the next set of items. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation DescribeWorkspaceBundles for usage and error information. // // Returned Error Codes: // * InvalidParameterValuesException // One or more parameter values are not valid. // func (c *WorkSpaces) DescribeWorkspaceBundles(input *DescribeWorkspaceBundlesInput) (*DescribeWorkspaceBundlesOutput, error) { req, out := c.DescribeWorkspaceBundlesRequest(input) err := req.Send() return out, err } // DescribeWorkspaceBundlesPages iterates over the pages of a DescribeWorkspaceBundles operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeWorkspaceBundles method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeWorkspaceBundles operation. // pageNum := 0 // err := client.DescribeWorkspaceBundlesPages(params, // func(page *DescribeWorkspaceBundlesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *WorkSpaces) DescribeWorkspaceBundlesPages(input *DescribeWorkspaceBundlesInput, fn func(p *DescribeWorkspaceBundlesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeWorkspaceBundlesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeWorkspaceBundlesOutput), lastPage) }) } const opDescribeWorkspaceDirectories = "DescribeWorkspaceDirectories" // DescribeWorkspaceDirectoriesRequest generates a "aws/request.Request" representing the // client's request for the DescribeWorkspaceDirectories operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeWorkspaceDirectories for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeWorkspaceDirectories method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeWorkspaceDirectoriesRequest method. // req, resp := client.DescribeWorkspaceDirectoriesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WorkSpaces) DescribeWorkspaceDirectoriesRequest(input *DescribeWorkspaceDirectoriesInput) (req *request.Request, output *DescribeWorkspaceDirectoriesOutput) { op := &request.Operation{ Name: opDescribeWorkspaceDirectories, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &DescribeWorkspaceDirectoriesInput{} } req = c.newRequest(op, input, output) output = &DescribeWorkspaceDirectoriesOutput{} req.Data = output return } // DescribeWorkspaceDirectories API operation for Amazon WorkSpaces. // // Retrieves information about the AWS Directory Service directories in the // region that are registered with Amazon WorkSpaces and are available to your // account. // // This operation supports pagination with the use of the NextToken request // and response parameters. If more results are available, the NextToken response // member contains a token that you pass in the next call to this operation // to retrieve the next set of items. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation DescribeWorkspaceDirectories for usage and error information. // // Returned Error Codes: // * InvalidParameterValuesException // One or more parameter values are not valid. // func (c *WorkSpaces) DescribeWorkspaceDirectories(input *DescribeWorkspaceDirectoriesInput) (*DescribeWorkspaceDirectoriesOutput, error) { req, out := c.DescribeWorkspaceDirectoriesRequest(input) err := req.Send() return out, err } // DescribeWorkspaceDirectoriesPages iterates over the pages of a DescribeWorkspaceDirectories operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeWorkspaceDirectories method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeWorkspaceDirectories operation. // pageNum := 0 // err := client.DescribeWorkspaceDirectoriesPages(params, // func(page *DescribeWorkspaceDirectoriesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *WorkSpaces) DescribeWorkspaceDirectoriesPages(input *DescribeWorkspaceDirectoriesInput, fn func(p *DescribeWorkspaceDirectoriesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeWorkspaceDirectoriesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeWorkspaceDirectoriesOutput), lastPage) }) } const opDescribeWorkspaces = "DescribeWorkspaces" // DescribeWorkspacesRequest generates a "aws/request.Request" representing the // client's request for the DescribeWorkspaces operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeWorkspaces for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeWorkspaces method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeWorkspacesRequest method. // req, resp := client.DescribeWorkspacesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WorkSpaces) DescribeWorkspacesRequest(input *DescribeWorkspacesInput) (req *request.Request, output *DescribeWorkspacesOutput) { op := &request.Operation{ Name: opDescribeWorkspaces, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "Limit", TruncationToken: "", }, } if input == nil { input = &DescribeWorkspacesInput{} } req = c.newRequest(op, input, output) output = &DescribeWorkspacesOutput{} req.Data = output return } // DescribeWorkspaces API operation for Amazon WorkSpaces. // // Obtains information about the specified WorkSpaces. // // Only one of the filter parameters, such as BundleId, DirectoryId, or WorkspaceIds, // can be specified at a time. // // This operation supports pagination with the use of the NextToken request // and response parameters. If more results are available, the NextToken response // member contains a token that you pass in the next call to this operation // to retrieve the next set of items. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation DescribeWorkspaces for usage and error information. // // Returned Error Codes: // * InvalidParameterValuesException // One or more parameter values are not valid. // // * ResourceUnavailableException // The specified resource is not available. // func (c *WorkSpaces) DescribeWorkspaces(input *DescribeWorkspacesInput) (*DescribeWorkspacesOutput, error) { req, out := c.DescribeWorkspacesRequest(input) err := req.Send() return out, err } // DescribeWorkspacesPages iterates over the pages of a DescribeWorkspaces operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeWorkspaces method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeWorkspaces operation. // pageNum := 0 // err := client.DescribeWorkspacesPages(params, // func(page *DescribeWorkspacesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *WorkSpaces) DescribeWorkspacesPages(input *DescribeWorkspacesInput, fn func(p *DescribeWorkspacesOutput, lastPage bool) (shouldContinue bool)) error { page, _ := c.DescribeWorkspacesRequest(input) page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) return page.EachPage(func(p interface{}, lastPage bool) bool { return fn(p.(*DescribeWorkspacesOutput), lastPage) }) } const opDescribeWorkspacesConnectionStatus = "DescribeWorkspacesConnectionStatus" // DescribeWorkspacesConnectionStatusRequest generates a "aws/request.Request" representing the // client's request for the DescribeWorkspacesConnectionStatus operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See DescribeWorkspacesConnectionStatus for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the DescribeWorkspacesConnectionStatus method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the DescribeWorkspacesConnectionStatusRequest method. // req, resp := client.DescribeWorkspacesConnectionStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WorkSpaces) DescribeWorkspacesConnectionStatusRequest(input *DescribeWorkspacesConnectionStatusInput) (req *request.Request, output *DescribeWorkspacesConnectionStatusOutput) { op := &request.Operation{ Name: opDescribeWorkspacesConnectionStatus, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeWorkspacesConnectionStatusInput{} } req = c.newRequest(op, input, output) output = &DescribeWorkspacesConnectionStatusOutput{} req.Data = output return } // DescribeWorkspacesConnectionStatus API operation for Amazon WorkSpaces. // // Describes the connection status of a specified WorkSpace. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation DescribeWorkspacesConnectionStatus for usage and error information. // // Returned Error Codes: // * InvalidParameterValuesException // One or more parameter values are not valid. // func (c *WorkSpaces) DescribeWorkspacesConnectionStatus(input *DescribeWorkspacesConnectionStatusInput) (*DescribeWorkspacesConnectionStatusOutput, error) { req, out := c.DescribeWorkspacesConnectionStatusRequest(input) err := req.Send() return out, err } const opModifyWorkspaceProperties = "ModifyWorkspaceProperties" // ModifyWorkspacePropertiesRequest generates a "aws/request.Request" representing the // client's request for the ModifyWorkspaceProperties operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See ModifyWorkspaceProperties for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the ModifyWorkspaceProperties method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the ModifyWorkspacePropertiesRequest method. // req, resp := client.ModifyWorkspacePropertiesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WorkSpaces) ModifyWorkspacePropertiesRequest(input *ModifyWorkspacePropertiesInput) (req *request.Request, output *ModifyWorkspacePropertiesOutput) { op := &request.Operation{ Name: opModifyWorkspaceProperties, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyWorkspacePropertiesInput{} } req = c.newRequest(op, input, output) output = &ModifyWorkspacePropertiesOutput{} req.Data = output return } // ModifyWorkspaceProperties API operation for Amazon WorkSpaces. // // Modifies the WorkSpace properties, including the RunningMode and AutoStop // time. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation ModifyWorkspaceProperties for usage and error information. // // Returned Error Codes: // * InvalidParameterValuesException // One or more parameter values are not valid. // // * InvalidResourceStateException // The specified WorkSpace has an invalid state for this operation. // // * OperationInProgressException // The properties of this WorkSpace are currently being modified. Try again // in a moment. // // * UnsupportedWorkspaceConfigurationException // The WorkSpace does not have the supported configuration for this operation. // For more information, see the Amazon WorkSpaces Administration Guide (http://docs.aws.amazon.com/workspaces/latest/adminguide). // // * ResourceNotFoundException // The resource could not be found. // // * AccessDeniedException // // * ResourceUnavailableException // The specified resource is not available. // func (c *WorkSpaces) ModifyWorkspaceProperties(input *ModifyWorkspacePropertiesInput) (*ModifyWorkspacePropertiesOutput, error) { req, out := c.ModifyWorkspacePropertiesRequest(input) err := req.Send() return out, err } const opRebootWorkspaces = "RebootWorkspaces" // RebootWorkspacesRequest generates a "aws/request.Request" representing the // client's request for the RebootWorkspaces operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RebootWorkspaces for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RebootWorkspaces method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RebootWorkspacesRequest method. // req, resp := client.RebootWorkspacesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WorkSpaces) RebootWorkspacesRequest(input *RebootWorkspacesInput) (req *request.Request, output *RebootWorkspacesOutput) { op := &request.Operation{ Name: opRebootWorkspaces, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RebootWorkspacesInput{} } req = c.newRequest(op, input, output) output = &RebootWorkspacesOutput{} req.Data = output return } // RebootWorkspaces API operation for Amazon WorkSpaces. // // Reboots the specified WorkSpaces. // // To be able to reboot a WorkSpace, the WorkSpace must have a State of AVAILABLE, // IMPAIRED, or INOPERABLE. // // This operation is asynchronous and returns before the WorkSpaces have rebooted. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation RebootWorkspaces for usage and error information. func (c *WorkSpaces) RebootWorkspaces(input *RebootWorkspacesInput) (*RebootWorkspacesOutput, error) { req, out := c.RebootWorkspacesRequest(input) err := req.Send() return out, err } const opRebuildWorkspaces = "RebuildWorkspaces" // RebuildWorkspacesRequest generates a "aws/request.Request" representing the // client's request for the RebuildWorkspaces operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See RebuildWorkspaces for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the RebuildWorkspaces method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the RebuildWorkspacesRequest method. // req, resp := client.RebuildWorkspacesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WorkSpaces) RebuildWorkspacesRequest(input *RebuildWorkspacesInput) (req *request.Request, output *RebuildWorkspacesOutput) { op := &request.Operation{ Name: opRebuildWorkspaces, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RebuildWorkspacesInput{} } req = c.newRequest(op, input, output) output = &RebuildWorkspacesOutput{} req.Data = output return } // RebuildWorkspaces API operation for Amazon WorkSpaces. // // Rebuilds the specified WorkSpaces. // // Rebuilding a WorkSpace is a potentially destructive action that can result // in the loss of data. Rebuilding a WorkSpace causes the following to occur: // // * The system is restored to the image of the bundle that the WorkSpace // is created from. Any applications that have been installed, or system // settings that have been made since the WorkSpace was created will be lost. // // * The data drive (D drive) is re-created from the last automatic snapshot // taken of the data drive. The current contents of the data drive are overwritten. // Automatic snapshots of the data drive are taken every 12 hours, so the // snapshot can be as much as 12 hours old. // // To be able to rebuild a WorkSpace, the WorkSpace must have a State of AVAILABLE // or ERROR. // // This operation is asynchronous and returns before the WorkSpaces have been // completely rebuilt. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation RebuildWorkspaces for usage and error information. func (c *WorkSpaces) RebuildWorkspaces(input *RebuildWorkspacesInput) (*RebuildWorkspacesOutput, error) { req, out := c.RebuildWorkspacesRequest(input) err := req.Send() return out, err } const opStartWorkspaces = "StartWorkspaces" // StartWorkspacesRequest generates a "aws/request.Request" representing the // client's request for the StartWorkspaces operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StartWorkspaces for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StartWorkspaces method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StartWorkspacesRequest method. // req, resp := client.StartWorkspacesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WorkSpaces) StartWorkspacesRequest(input *StartWorkspacesInput) (req *request.Request, output *StartWorkspacesOutput) { op := &request.Operation{ Name: opStartWorkspaces, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartWorkspacesInput{} } req = c.newRequest(op, input, output) output = &StartWorkspacesOutput{} req.Data = output return } // StartWorkspaces API operation for Amazon WorkSpaces. // // Starts the specified WorkSpaces. The API only works with WorkSpaces that // have RunningMode configured as AutoStop and the State set to “STOPPED.” // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation StartWorkspaces for usage and error information. func (c *WorkSpaces) StartWorkspaces(input *StartWorkspacesInput) (*StartWorkspacesOutput, error) { req, out := c.StartWorkspacesRequest(input) err := req.Send() return out, err } const opStopWorkspaces = "StopWorkspaces" // StopWorkspacesRequest generates a "aws/request.Request" representing the // client's request for the StopWorkspaces operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See StopWorkspaces for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the StopWorkspaces method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the StopWorkspacesRequest method. // req, resp := client.StopWorkspacesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WorkSpaces) StopWorkspacesRequest(input *StopWorkspacesInput) (req *request.Request, output *StopWorkspacesOutput) { op := &request.Operation{ Name: opStopWorkspaces, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StopWorkspacesInput{} } req = c.newRequest(op, input, output) output = &StopWorkspacesOutput{} req.Data = output return } // StopWorkspaces API operation for Amazon WorkSpaces. // // Stops the specified WorkSpaces. The API only works with WorkSpaces that have // RunningMode configured as AutoStop and the State set to AVAILABLE, IMPAIRED, // UNHEALTHY, or ERROR. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation StopWorkspaces for usage and error information. func (c *WorkSpaces) StopWorkspaces(input *StopWorkspacesInput) (*StopWorkspacesOutput, error) { req, out := c.StopWorkspacesRequest(input) err := req.Send() return out, err } const opTerminateWorkspaces = "TerminateWorkspaces" // TerminateWorkspacesRequest generates a "aws/request.Request" representing the // client's request for the TerminateWorkspaces operation. The "output" return // value can be used to capture response data after the request's "Send" method // is called. // // See TerminateWorkspaces for usage and error information. // // Creating a request object using this method should be used when you want to inject // custom logic into the request's lifecycle using a custom handler, or if you want to // access properties on the request object before or after sending the request. If // you just want the service response, call the TerminateWorkspaces method directly // instead. // // Note: You must call the "Send" method on the returned request object in order // to execute the request. // // // Example sending a request using the TerminateWorkspacesRequest method. // req, resp := client.TerminateWorkspacesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // func (c *WorkSpaces) TerminateWorkspacesRequest(input *TerminateWorkspacesInput) (req *request.Request, output *TerminateWorkspacesOutput) { op := &request.Operation{ Name: opTerminateWorkspaces, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &TerminateWorkspacesInput{} } req = c.newRequest(op, input, output) output = &TerminateWorkspacesOutput{} req.Data = output return } // TerminateWorkspaces API operation for Amazon WorkSpaces. // // Terminates the specified WorkSpaces. // // Terminating a WorkSpace is a permanent action and cannot be undone. The user's // data is not maintained and will be destroyed. If you need to archive any // user data, contact Amazon Web Services before terminating the WorkSpace. // // You can terminate a WorkSpace that is in any state except SUSPENDED. // // This operation is asynchronous and returns before the WorkSpaces have been // completely terminated. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation TerminateWorkspaces for usage and error information. func (c *WorkSpaces) TerminateWorkspaces(input *TerminateWorkspacesInput) (*TerminateWorkspacesOutput, error) { req, out := c.TerminateWorkspacesRequest(input) err := req.Send() return out, err } // Contains information about the compute type of a WorkSpace bundle. type ComputeType struct { _ struct{} `type:"structure"` // The name of the compute type for the bundle. Name *string `type:"string" enum:"Compute"` } // String returns the string representation func (s ComputeType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ComputeType) GoString() string { return s.String() } // The request of the CreateTags operation. type CreateTagsInput struct { _ struct{} `type:"structure"` // The resource ID of the request. // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` // The tags of the request. // // Tags is a required field Tags []*Tag `type:"list" required:"true"` } // String returns the string representation func (s CreateTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateTagsInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceId != nil && len(*s.ResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of the CreateTags operation. type CreateTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTagsOutput) GoString() string { return s.String() } // Contains the inputs for the CreateWorkspaces operation. type CreateWorkspacesInput struct { _ struct{} `type:"structure"` // An array of structures that specify the WorkSpaces to create. // // Workspaces is a required field Workspaces []*WorkspaceRequest `min:"1" type:"list" required:"true"` } // String returns the string representation func (s CreateWorkspacesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateWorkspacesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateWorkspacesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateWorkspacesInput"} if s.Workspaces == nil { invalidParams.Add(request.NewErrParamRequired("Workspaces")) } if s.Workspaces != nil && len(s.Workspaces) < 1 { invalidParams.Add(request.NewErrParamMinLen("Workspaces", 1)) } if s.Workspaces != nil { for i, v := range s.Workspaces { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Workspaces", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the result of the CreateWorkspaces operation. type CreateWorkspacesOutput struct { _ struct{} `type:"structure"` // An array of structures that represent the WorkSpaces that could not be created. FailedRequests []*FailedCreateWorkspaceRequest `type:"list"` // An array of structures that represent the WorkSpaces that were created. // // Because this operation is asynchronous, the identifier in WorkspaceId is // not immediately available. If you immediately call DescribeWorkspaces with // this identifier, no information will be returned. PendingRequests []*Workspace `type:"list"` } // String returns the string representation func (s CreateWorkspacesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateWorkspacesOutput) GoString() string { return s.String() } // Contains default WorkSpace creation information. type DefaultWorkspaceCreationProperties struct { _ struct{} `type:"structure"` // The identifier of any custom security groups that are applied to the WorkSpaces // when they are created. CustomSecurityGroupId *string `type:"string"` // The organizational unit (OU) in the directory that the WorkSpace machine // accounts are placed in. DefaultOu *string `type:"string"` // A public IP address will be attached to all WorkSpaces that are created or // rebuilt. EnableInternetAccess *bool `type:"boolean"` // Specifies if the directory is enabled for Amazon WorkDocs. EnableWorkDocs *bool `type:"boolean"` // The WorkSpace user is an administrator on the WorkSpace. UserEnabledAsLocalAdministrator *bool `type:"boolean"` } // String returns the string representation func (s DefaultWorkspaceCreationProperties) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DefaultWorkspaceCreationProperties) GoString() string { return s.String() } // The request of the DeleteTags operation. type DeleteTagsInput struct { _ struct{} `type:"structure"` // The resource ID of the request. // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` // The tag keys of the request. // // TagKeys is a required field TagKeys []*string `type:"list" required:"true"` } // String returns the string representation func (s DeleteTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTagsInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceId != nil && len(*s.ResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of the DeleteTags operation. type DeleteTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTagsOutput) GoString() string { return s.String() } // The request of the DescribeTags operation. type DescribeTagsInput struct { _ struct{} `type:"structure"` // The resource ID of the request. // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTagsInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceId != nil && len(*s.ResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The result of the DescribeTags operation. type DescribeTagsOutput struct { _ struct{} `type:"structure"` // The list of tags. TagList []*Tag `type:"list"` } // String returns the string representation func (s DescribeTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsOutput) GoString() string { return s.String() } // Contains the inputs for the DescribeWorkspaceBundles operation. type DescribeWorkspaceBundlesInput struct { _ struct{} `type:"structure"` // An array of strings that contains the identifiers of the bundles to retrieve. // This parameter cannot be combined with any other filter parameter. BundleIds []*string `min:"1" type:"list"` // The NextToken value from a previous call to this operation. Pass null if // this is the first call. NextToken *string `min:"1" type:"string"` // The owner of the bundles to retrieve. This parameter cannot be combined with // any other filter parameter. // // This contains one of the following values: // // * null- Retrieves the bundles that belong to the account making the call. // // * AMAZON- Retrieves the bundles that are provided by AWS. Owner *string `type:"string"` } // String returns the string representation func (s DescribeWorkspaceBundlesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkspaceBundlesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeWorkspaceBundlesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeWorkspaceBundlesInput"} if s.BundleIds != nil && len(s.BundleIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("BundleIds", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results of the DescribeWorkspaceBundles operation. type DescribeWorkspaceBundlesOutput struct { _ struct{} `type:"structure"` // An array of structures that contain information about the bundles. Bundles []*WorkspaceBundle `type:"list"` // If not null, more results are available. Pass this value for the NextToken // parameter in a subsequent call to this operation to retrieve the next set // of items. This token is valid for one day and must be used within that time // frame. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeWorkspaceBundlesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkspaceBundlesOutput) GoString() string { return s.String() } // Contains the inputs for the DescribeWorkspaceDirectories operation. type DescribeWorkspaceDirectoriesInput struct { _ struct{} `type:"structure"` // An array of strings that contains the directory identifiers to retrieve information // for. If this member is null, all directories are retrieved. DirectoryIds []*string `min:"1" type:"list"` // The NextToken value from a previous call to this operation. Pass null if // this is the first call. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeWorkspaceDirectoriesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkspaceDirectoriesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeWorkspaceDirectoriesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeWorkspaceDirectoriesInput"} if s.DirectoryIds != nil && len(s.DirectoryIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("DirectoryIds", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results of the DescribeWorkspaceDirectories operation. type DescribeWorkspaceDirectoriesOutput struct { _ struct{} `type:"structure"` // An array of structures that contain information about the directories. Directories []*WorkspaceDirectory `type:"list"` // If not null, more results are available. Pass this value for the NextToken // parameter in a subsequent call to this operation to retrieve the next set // of items. This token is valid for one day and must be used within that time // frame. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeWorkspaceDirectoriesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkspaceDirectoriesOutput) GoString() string { return s.String() } type DescribeWorkspacesConnectionStatusInput struct { _ struct{} `type:"structure"` // The next token of the request. NextToken *string `min:"1" type:"string"` // An array of strings that contain the identifiers of the WorkSpaces. WorkspaceIds []*string `min:"1" type:"list"` } // String returns the string representation func (s DescribeWorkspacesConnectionStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkspacesConnectionStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeWorkspacesConnectionStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeWorkspacesConnectionStatusInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.WorkspaceIds != nil && len(s.WorkspaceIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("WorkspaceIds", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type DescribeWorkspacesConnectionStatusOutput struct { _ struct{} `type:"structure"` // The next token of the result. NextToken *string `min:"1" type:"string"` // The connection status of the WorkSpace. WorkspacesConnectionStatus []*WorkspaceConnectionStatus `type:"list"` } // String returns the string representation func (s DescribeWorkspacesConnectionStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkspacesConnectionStatusOutput) GoString() string { return s.String() } // Contains the inputs for the DescribeWorkspaces operation. type DescribeWorkspacesInput struct { _ struct{} `type:"structure"` // The identifier of a bundle to obtain the WorkSpaces for. All WorkSpaces that // are created from this bundle will be retrieved. This parameter cannot be // combined with any other filter parameter. BundleId *string `type:"string"` // Specifies the directory identifier to which to limit the WorkSpaces. Optionally, // you can specify a specific directory user with the UserName parameter. This // parameter cannot be combined with any other filter parameter. DirectoryId *string `type:"string"` // The maximum number of items to return. Limit *int64 `min:"1" type:"integer"` // The NextToken value from a previous call to this operation. Pass null if // this is the first call. NextToken *string `min:"1" type:"string"` // Used with the DirectoryId parameter to specify the directory user for whom // to obtain the WorkSpace. UserName *string `min:"1" type:"string"` // An array of strings that contain the identifiers of the WorkSpaces for which // to retrieve information. This parameter cannot be combined with any other // filter parameter. // // Because the CreateWorkspaces operation is asynchronous, the identifier it // returns is not immediately available. If you immediately call DescribeWorkspaces // with this identifier, no information is returned. WorkspaceIds []*string `min:"1" type:"list"` } // String returns the string representation func (s DescribeWorkspacesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkspacesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeWorkspacesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeWorkspacesInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if s.WorkspaceIds != nil && len(s.WorkspaceIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("WorkspaceIds", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results for the DescribeWorkspaces operation. type DescribeWorkspacesOutput struct { _ struct{} `type:"structure"` // If not null, more results are available. Pass this value for the NextToken // parameter in a subsequent call to this operation to retrieve the next set // of items. This token is valid for one day and must be used within that time // frame. NextToken *string `min:"1" type:"string"` // An array of structures that contain the information about the WorkSpaces. // // Because the CreateWorkspaces operation is asynchronous, some of this information // may be incomplete for a newly-created WorkSpace. Workspaces []*Workspace `type:"list"` } // String returns the string representation func (s DescribeWorkspacesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkspacesOutput) GoString() string { return s.String() } // Contains information about a WorkSpace that could not be created. type FailedCreateWorkspaceRequest struct { _ struct{} `type:"structure"` // The error code. ErrorCode *string `type:"string"` // The textual error message. ErrorMessage *string `type:"string"` // A FailedCreateWorkspaceRequest$WorkspaceRequest object that contains the // information about the WorkSpace that could not be created. WorkspaceRequest *WorkspaceRequest `type:"structure"` } // String returns the string representation func (s FailedCreateWorkspaceRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FailedCreateWorkspaceRequest) GoString() string { return s.String() } // Contains information about a WorkSpace that could not be rebooted (RebootWorkspaces), // rebuilt (RebuildWorkspaces), terminated (TerminateWorkspaces), started (StartWorkspaces), // or stopped (StopWorkspaces). type FailedWorkspaceChangeRequest struct { _ struct{} `type:"structure"` // The error code. ErrorCode *string `type:"string"` // The textual error message. ErrorMessage *string `type:"string"` // The identifier of the WorkSpace. WorkspaceId *string `type:"string"` } // String returns the string representation func (s FailedWorkspaceChangeRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FailedWorkspaceChangeRequest) GoString() string { return s.String() } type ModifyWorkspacePropertiesInput struct { _ struct{} `type:"structure"` // The ID of the WorkSpace. // // WorkspaceId is a required field WorkspaceId *string `type:"string" required:"true"` // The WorkSpace properties of the request. // // WorkspaceProperties is a required field WorkspaceProperties *WorkspaceProperties `type:"structure" required:"true"` } // String returns the string representation func (s ModifyWorkspacePropertiesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyWorkspacePropertiesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyWorkspacePropertiesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyWorkspacePropertiesInput"} if s.WorkspaceId == nil { invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) } if s.WorkspaceProperties == nil { invalidParams.Add(request.NewErrParamRequired("WorkspaceProperties")) } if invalidParams.Len() > 0 { return invalidParams } return nil } type ModifyWorkspacePropertiesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ModifyWorkspacePropertiesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyWorkspacePropertiesOutput) GoString() string { return s.String() } // Contains information used with the RebootWorkspaces operation to reboot a // WorkSpace. type RebootRequest struct { _ struct{} `type:"structure"` // The identifier of the WorkSpace to reboot. // // WorkspaceId is a required field WorkspaceId *string `type:"string" required:"true"` } // String returns the string representation func (s RebootRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebootRequest) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RebootRequest) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RebootRequest"} if s.WorkspaceId == nil { invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the inputs for the RebootWorkspaces operation. type RebootWorkspacesInput struct { _ struct{} `type:"structure"` // An array of structures that specify the WorkSpaces to reboot. // // RebootWorkspaceRequests is a required field RebootWorkspaceRequests []*RebootRequest `min:"1" type:"list" required:"true"` } // String returns the string representation func (s RebootWorkspacesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebootWorkspacesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RebootWorkspacesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RebootWorkspacesInput"} if s.RebootWorkspaceRequests == nil { invalidParams.Add(request.NewErrParamRequired("RebootWorkspaceRequests")) } if s.RebootWorkspaceRequests != nil && len(s.RebootWorkspaceRequests) < 1 { invalidParams.Add(request.NewErrParamMinLen("RebootWorkspaceRequests", 1)) } if s.RebootWorkspaceRequests != nil { for i, v := range s.RebootWorkspaceRequests { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RebootWorkspaceRequests", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results of the RebootWorkspaces operation. type RebootWorkspacesOutput struct { _ struct{} `type:"structure"` // An array of structures representing any WorkSpaces that could not be rebooted. FailedRequests []*FailedWorkspaceChangeRequest `type:"list"` } // String returns the string representation func (s RebootWorkspacesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebootWorkspacesOutput) GoString() string { return s.String() } // Contains information used with the RebuildWorkspaces operation to rebuild // a WorkSpace. type RebuildRequest struct { _ struct{} `type:"structure"` // The identifier of the WorkSpace to rebuild. // // WorkspaceId is a required field WorkspaceId *string `type:"string" required:"true"` } // String returns the string representation func (s RebuildRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebuildRequest) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RebuildRequest) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RebuildRequest"} if s.WorkspaceId == nil { invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the inputs for the RebuildWorkspaces operation. type RebuildWorkspacesInput struct { _ struct{} `type:"structure"` // An array of structures that specify the WorkSpaces to rebuild. // // RebuildWorkspaceRequests is a required field RebuildWorkspaceRequests []*RebuildRequest `min:"1" type:"list" required:"true"` } // String returns the string representation func (s RebuildWorkspacesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebuildWorkspacesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RebuildWorkspacesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RebuildWorkspacesInput"} if s.RebuildWorkspaceRequests == nil { invalidParams.Add(request.NewErrParamRequired("RebuildWorkspaceRequests")) } if s.RebuildWorkspaceRequests != nil && len(s.RebuildWorkspaceRequests) < 1 { invalidParams.Add(request.NewErrParamMinLen("RebuildWorkspaceRequests", 1)) } if s.RebuildWorkspaceRequests != nil { for i, v := range s.RebuildWorkspaceRequests { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RebuildWorkspaceRequests", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results of the RebuildWorkspaces operation. type RebuildWorkspacesOutput struct { _ struct{} `type:"structure"` // An array of structures representing any WorkSpaces that could not be rebuilt. FailedRequests []*FailedWorkspaceChangeRequest `type:"list"` } // String returns the string representation func (s RebuildWorkspacesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebuildWorkspacesOutput) GoString() string { return s.String() } // Describes the start request. type StartRequest struct { _ struct{} `type:"structure"` // The ID of the WorkSpace. WorkspaceId *string `type:"string"` } // String returns the string representation func (s StartRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartRequest) GoString() string { return s.String() } type StartWorkspacesInput struct { _ struct{} `type:"structure"` // The requests. // // StartWorkspaceRequests is a required field StartWorkspaceRequests []*StartRequest `min:"1" type:"list" required:"true"` } // String returns the string representation func (s StartWorkspacesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartWorkspacesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartWorkspacesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartWorkspacesInput"} if s.StartWorkspaceRequests == nil { invalidParams.Add(request.NewErrParamRequired("StartWorkspaceRequests")) } if s.StartWorkspaceRequests != nil && len(s.StartWorkspaceRequests) < 1 { invalidParams.Add(request.NewErrParamMinLen("StartWorkspaceRequests", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type StartWorkspacesOutput struct { _ struct{} `type:"structure"` // The failed requests. FailedRequests []*FailedWorkspaceChangeRequest `type:"list"` } // String returns the string representation func (s StartWorkspacesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartWorkspacesOutput) GoString() string { return s.String() } // Describes the stop request. type StopRequest struct { _ struct{} `type:"structure"` // The ID of the WorkSpace. WorkspaceId *string `type:"string"` } // String returns the string representation func (s StopRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopRequest) GoString() string { return s.String() } type StopWorkspacesInput struct { _ struct{} `type:"structure"` // The requests. // // StopWorkspaceRequests is a required field StopWorkspaceRequests []*StopRequest `min:"1" type:"list" required:"true"` } // String returns the string representation func (s StopWorkspacesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopWorkspacesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StopWorkspacesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StopWorkspacesInput"} if s.StopWorkspaceRequests == nil { invalidParams.Add(request.NewErrParamRequired("StopWorkspaceRequests")) } if s.StopWorkspaceRequests != nil && len(s.StopWorkspaceRequests) < 1 { invalidParams.Add(request.NewErrParamMinLen("StopWorkspaceRequests", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } type StopWorkspacesOutput struct { _ struct{} `type:"structure"` // The failed requests. FailedRequests []*FailedWorkspaceChangeRequest `type:"list"` } // String returns the string representation func (s StopWorkspacesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopWorkspacesOutput) GoString() string { return s.String() } // Describes the tag of the WorkSpace. type Tag struct { _ struct{} `type:"structure"` // The key of the tag. // // Key is a required field Key *string `min:"1" type:"string" required:"true"` // The value of the tag. Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains information used with the TerminateWorkspaces operation to terminate // a WorkSpace. type TerminateRequest struct { _ struct{} `type:"structure"` // The identifier of the WorkSpace to terminate. // // WorkspaceId is a required field WorkspaceId *string `type:"string" required:"true"` } // String returns the string representation func (s TerminateRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TerminateRequest) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TerminateRequest) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TerminateRequest"} if s.WorkspaceId == nil { invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the inputs for the TerminateWorkspaces operation. type TerminateWorkspacesInput struct { _ struct{} `type:"structure"` // An array of structures that specify the WorkSpaces to terminate. // // TerminateWorkspaceRequests is a required field TerminateWorkspaceRequests []*TerminateRequest `min:"1" type:"list" required:"true"` } // String returns the string representation func (s TerminateWorkspacesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TerminateWorkspacesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TerminateWorkspacesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TerminateWorkspacesInput"} if s.TerminateWorkspaceRequests == nil { invalidParams.Add(request.NewErrParamRequired("TerminateWorkspaceRequests")) } if s.TerminateWorkspaceRequests != nil && len(s.TerminateWorkspaceRequests) < 1 { invalidParams.Add(request.NewErrParamMinLen("TerminateWorkspaceRequests", 1)) } if s.TerminateWorkspaceRequests != nil { for i, v := range s.TerminateWorkspaceRequests { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TerminateWorkspaceRequests", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains the results of the TerminateWorkspaces operation. type TerminateWorkspacesOutput struct { _ struct{} `type:"structure"` // An array of structures representing any WorkSpaces that could not be terminated. FailedRequests []*FailedWorkspaceChangeRequest `type:"list"` } // String returns the string representation func (s TerminateWorkspacesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TerminateWorkspacesOutput) GoString() string { return s.String() } // Contains information about the user storage for a WorkSpace bundle. type UserStorage struct { _ struct{} `type:"structure"` // The amount of user storage for the bundle. Capacity *string `min:"1" type:"string"` } // String returns the string representation func (s UserStorage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UserStorage) GoString() string { return s.String() } // Contains information about a WorkSpace. type Workspace struct { _ struct{} `type:"structure"` // The identifier of the bundle that the WorkSpace was created from. BundleId *string `type:"string"` // The name of the WorkSpace as seen by the operating system. ComputerName *string `type:"string"` // The identifier of the AWS Directory Service directory that the WorkSpace // belongs to. DirectoryId *string `type:"string"` // If the WorkSpace could not be created, this contains the error code. ErrorCode *string `type:"string"` // If the WorkSpace could not be created, this contains a textual error message // that describes the failure. ErrorMessage *string `type:"string"` // The IP address of the WorkSpace. IpAddress *string `type:"string"` // Specifies whether the data stored on the root volume, or C: drive, is encrypted. RootVolumeEncryptionEnabled *bool `type:"boolean"` // The operational state of the WorkSpace. State *string `type:"string" enum:"WorkspaceState"` // The identifier of the subnet that the WorkSpace is in. SubnetId *string `type:"string"` // The user that the WorkSpace is assigned to. UserName *string `min:"1" type:"string"` // Specifies whether the data stored on the user volume, or D: drive, is encrypted. UserVolumeEncryptionEnabled *bool `type:"boolean"` // The KMS key used to encrypt data stored on your WorkSpace. VolumeEncryptionKey *string `type:"string"` // The identifier of the WorkSpace. WorkspaceId *string `type:"string"` // Describes the properties of a WorkSpace. WorkspaceProperties *WorkspaceProperties `type:"structure"` } // String returns the string representation func (s Workspace) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Workspace) GoString() string { return s.String() } // Contains information about a WorkSpace bundle. type WorkspaceBundle struct { _ struct{} `type:"structure"` // The bundle identifier. BundleId *string `type:"string"` // A ComputeType object that specifies the compute type for the bundle. ComputeType *ComputeType `type:"structure"` // The bundle description. Description *string `type:"string"` // The name of the bundle. Name *string `min:"1" type:"string"` // The owner of the bundle. This contains the owner's account identifier, or // AMAZON if the bundle is provided by AWS. Owner *string `type:"string"` // A UserStorage object that specifies the amount of user storage that the bundle // contains. UserStorage *UserStorage `type:"structure"` } // String returns the string representation func (s WorkspaceBundle) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkspaceBundle) GoString() string { return s.String() } // Describes the connection status of a WorkSpace. type WorkspaceConnectionStatus struct { _ struct{} `type:"structure"` // The connection state of the WorkSpace. Returns UNKOWN if the WorkSpace is // in a Stopped state. ConnectionState *string `type:"string" enum:"ConnectionState"` // The timestamp of the connection state check. ConnectionStateCheckTimestamp *time.Time `type:"timestamp" timestampFormat:"unix"` // The timestamp of the last known user connection. LastKnownUserConnectionTimestamp *time.Time `type:"timestamp" timestampFormat:"unix"` // The ID of the WorkSpace. WorkspaceId *string `type:"string"` } // String returns the string representation func (s WorkspaceConnectionStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkspaceConnectionStatus) GoString() string { return s.String() } // Contains information about an AWS Directory Service directory for use with // Amazon WorkSpaces. type WorkspaceDirectory struct { _ struct{} `type:"structure"` // The directory alias. Alias *string `type:"string"` // The user name for the service account. CustomerUserName *string `min:"1" type:"string"` // The directory identifier. DirectoryId *string `type:"string"` // The name of the directory. DirectoryName *string `type:"string"` // The directory type. DirectoryType *string `type:"string" enum:"WorkspaceDirectoryType"` // An array of strings that contains the IP addresses of the DNS servers for // the directory. DnsIpAddresses []*string `type:"list"` // The identifier of the IAM role. This is the role that allows Amazon WorkSpaces // to make calls to other services, such as Amazon EC2, on your behalf. IamRoleId *string `type:"string"` // The registration code for the directory. This is the code that users enter // in their Amazon WorkSpaces client application to connect to the directory. RegistrationCode *string `min:"1" type:"string"` // The state of the directory's registration with Amazon WorkSpaces State *string `type:"string" enum:"WorkspaceDirectoryState"` // An array of strings that contains the identifiers of the subnets used with // the directory. SubnetIds []*string `type:"list"` // A structure that specifies the default creation properties for all WorkSpaces // in the directory. WorkspaceCreationProperties *DefaultWorkspaceCreationProperties `type:"structure"` // The identifier of the security group that is assigned to new WorkSpaces. WorkspaceSecurityGroupId *string `type:"string"` } // String returns the string representation func (s WorkspaceDirectory) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkspaceDirectory) GoString() string { return s.String() } // Describes the properties of a WorkSpace. type WorkspaceProperties struct { _ struct{} `type:"structure"` // The running mode of the WorkSpace. AlwaysOn WorkSpaces are billed monthly. // AutoStop WorkSpaces are billed by the hour and stopped when no longer being // used in order to save on costs. RunningMode *string `type:"string" enum:"RunningMode"` // The time after a user logs off when WorkSpaces are automatically stopped. // Configured in 60 minute intervals. RunningModeAutoStopTimeoutInMinutes *int64 `type:"integer"` } // String returns the string representation func (s WorkspaceProperties) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkspaceProperties) GoString() string { return s.String() } // Contains information about a WorkSpace creation request. type WorkspaceRequest struct { _ struct{} `type:"structure"` // The identifier of the bundle to create the WorkSpace from. You can use the // DescribeWorkspaceBundles operation to obtain a list of the bundles that are // available. // // BundleId is a required field BundleId *string `type:"string" required:"true"` // The identifier of the AWS Directory Service directory to create the WorkSpace // in. You can use the DescribeWorkspaceDirectories operation to obtain a list // of the directories that are available. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // Specifies whether the data stored on the root volume, or C: drive, is encrypted. RootVolumeEncryptionEnabled *bool `type:"boolean"` // The tags of the WorkSpace request. Tags []*Tag `type:"list"` // The username that the WorkSpace is assigned to. This username must exist // in the AWS Directory Service directory specified by the DirectoryId member. // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` // Specifies whether the data stored on the user volume, or D: drive, is encrypted. UserVolumeEncryptionEnabled *bool `type:"boolean"` // The KMS key used to encrypt data stored on your WorkSpace. VolumeEncryptionKey *string `type:"string"` // Describes the properties of a WorkSpace. WorkspaceProperties *WorkspaceProperties `type:"structure"` } // String returns the string representation func (s WorkspaceRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkspaceRequest) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *WorkspaceRequest) Validate() error { invalidParams := request.ErrInvalidParams{Context: "WorkspaceRequest"} if s.BundleId == nil { invalidParams.Add(request.NewErrParamRequired("BundleId")) } if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } const ( // ComputeValue is a Compute enum value ComputeValue = "VALUE" // ComputeStandard is a Compute enum value ComputeStandard = "STANDARD" // ComputePerformance is a Compute enum value ComputePerformance = "PERFORMANCE" ) const ( // ConnectionStateConnected is a ConnectionState enum value ConnectionStateConnected = "CONNECTED" // ConnectionStateDisconnected is a ConnectionState enum value ConnectionStateDisconnected = "DISCONNECTED" // ConnectionStateUnknown is a ConnectionState enum value ConnectionStateUnknown = "UNKNOWN" ) const ( // RunningModeAutoStop is a RunningMode enum value RunningModeAutoStop = "AUTO_STOP" // RunningModeAlwaysOn is a RunningMode enum value RunningModeAlwaysOn = "ALWAYS_ON" ) const ( // WorkspaceDirectoryStateRegistering is a WorkspaceDirectoryState enum value WorkspaceDirectoryStateRegistering = "REGISTERING" // WorkspaceDirectoryStateRegistered is a WorkspaceDirectoryState enum value WorkspaceDirectoryStateRegistered = "REGISTERED" // WorkspaceDirectoryStateDeregistering is a WorkspaceDirectoryState enum value WorkspaceDirectoryStateDeregistering = "DEREGISTERING" // WorkspaceDirectoryStateDeregistered is a WorkspaceDirectoryState enum value WorkspaceDirectoryStateDeregistered = "DEREGISTERED" // WorkspaceDirectoryStateError is a WorkspaceDirectoryState enum value WorkspaceDirectoryStateError = "ERROR" ) const ( // WorkspaceDirectoryTypeSimpleAd is a WorkspaceDirectoryType enum value WorkspaceDirectoryTypeSimpleAd = "SIMPLE_AD" // WorkspaceDirectoryTypeAdConnector is a WorkspaceDirectoryType enum value WorkspaceDirectoryTypeAdConnector = "AD_CONNECTOR" ) const ( // WorkspaceStatePending is a WorkspaceState enum value WorkspaceStatePending = "PENDING" // WorkspaceStateAvailable is a WorkspaceState enum value WorkspaceStateAvailable = "AVAILABLE" // WorkspaceStateImpaired is a WorkspaceState enum value WorkspaceStateImpaired = "IMPAIRED" // WorkspaceStateUnhealthy is a WorkspaceState enum value WorkspaceStateUnhealthy = "UNHEALTHY" // WorkspaceStateRebooting is a WorkspaceState enum value WorkspaceStateRebooting = "REBOOTING" // WorkspaceStateStarting is a WorkspaceState enum value WorkspaceStateStarting = "STARTING" // WorkspaceStateRebuilding is a WorkspaceState enum value WorkspaceStateRebuilding = "REBUILDING" // WorkspaceStateMaintenance is a WorkspaceState enum value WorkspaceStateMaintenance = "MAINTENANCE" // WorkspaceStateTerminating is a WorkspaceState enum value WorkspaceStateTerminating = "TERMINATING" // WorkspaceStateTerminated is a WorkspaceState enum value WorkspaceStateTerminated = "TERMINATED" // WorkspaceStateSuspended is a WorkspaceState enum value WorkspaceStateSuspended = "SUSPENDED" // WorkspaceStateStopping is a WorkspaceState enum value WorkspaceStateStopping = "STOPPING" // WorkspaceStateStopped is a WorkspaceState enum value WorkspaceStateStopped = "STOPPED" // WorkspaceStateError is a WorkspaceState enum value WorkspaceStateError = "ERROR" ) aws-sdk-go-1.4.22/service/workspaces/examples_test.go000066400000000000000000000241721300374646400226160ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package workspaces_test import ( "bytes" "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/workspaces" ) var _ time.Duration var _ bytes.Buffer func ExampleWorkSpaces_CreateTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := workspaces.New(sess) params := &workspaces.CreateTagsInput{ ResourceId: aws.String("NonEmptyString"), // Required Tags: []*workspaces.Tag{ // Required { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), }, // More values... }, } resp, err := svc.CreateTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWorkSpaces_CreateWorkspaces() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := workspaces.New(sess) params := &workspaces.CreateWorkspacesInput{ Workspaces: []*workspaces.WorkspaceRequest{ // Required { // Required BundleId: aws.String("BundleId"), // Required DirectoryId: aws.String("DirectoryId"), // Required UserName: aws.String("UserName"), // Required RootVolumeEncryptionEnabled: aws.Bool(true), Tags: []*workspaces.Tag{ { // Required Key: aws.String("TagKey"), // Required Value: aws.String("TagValue"), }, // More values... }, UserVolumeEncryptionEnabled: aws.Bool(true), VolumeEncryptionKey: aws.String("VolumeEncryptionKey"), WorkspaceProperties: &workspaces.WorkspaceProperties{ RunningMode: aws.String("RunningMode"), RunningModeAutoStopTimeoutInMinutes: aws.Int64(1), }, }, // More values... }, } resp, err := svc.CreateWorkspaces(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWorkSpaces_DeleteTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := workspaces.New(sess) params := &workspaces.DeleteTagsInput{ ResourceId: aws.String("NonEmptyString"), // Required TagKeys: []*string{ // Required aws.String("NonEmptyString"), // Required // More values... }, } resp, err := svc.DeleteTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWorkSpaces_DescribeTags() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := workspaces.New(sess) params := &workspaces.DescribeTagsInput{ ResourceId: aws.String("NonEmptyString"), // Required } resp, err := svc.DescribeTags(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWorkSpaces_DescribeWorkspaceBundles() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := workspaces.New(sess) params := &workspaces.DescribeWorkspaceBundlesInput{ BundleIds: []*string{ aws.String("BundleId"), // Required // More values... }, NextToken: aws.String("PaginationToken"), Owner: aws.String("BundleOwner"), } resp, err := svc.DescribeWorkspaceBundles(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWorkSpaces_DescribeWorkspaceDirectories() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := workspaces.New(sess) params := &workspaces.DescribeWorkspaceDirectoriesInput{ DirectoryIds: []*string{ aws.String("DirectoryId"), // Required // More values... }, NextToken: aws.String("PaginationToken"), } resp, err := svc.DescribeWorkspaceDirectories(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWorkSpaces_DescribeWorkspaces() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := workspaces.New(sess) params := &workspaces.DescribeWorkspacesInput{ BundleId: aws.String("BundleId"), DirectoryId: aws.String("DirectoryId"), Limit: aws.Int64(1), NextToken: aws.String("PaginationToken"), UserName: aws.String("UserName"), WorkspaceIds: []*string{ aws.String("WorkspaceId"), // Required // More values... }, } resp, err := svc.DescribeWorkspaces(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWorkSpaces_DescribeWorkspacesConnectionStatus() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := workspaces.New(sess) params := &workspaces.DescribeWorkspacesConnectionStatusInput{ NextToken: aws.String("PaginationToken"), WorkspaceIds: []*string{ aws.String("WorkspaceId"), // Required // More values... }, } resp, err := svc.DescribeWorkspacesConnectionStatus(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWorkSpaces_ModifyWorkspaceProperties() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := workspaces.New(sess) params := &workspaces.ModifyWorkspacePropertiesInput{ WorkspaceId: aws.String("WorkspaceId"), // Required WorkspaceProperties: &workspaces.WorkspaceProperties{ // Required RunningMode: aws.String("RunningMode"), RunningModeAutoStopTimeoutInMinutes: aws.Int64(1), }, } resp, err := svc.ModifyWorkspaceProperties(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWorkSpaces_RebootWorkspaces() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := workspaces.New(sess) params := &workspaces.RebootWorkspacesInput{ RebootWorkspaceRequests: []*workspaces.RebootRequest{ // Required { // Required WorkspaceId: aws.String("WorkspaceId"), // Required }, // More values... }, } resp, err := svc.RebootWorkspaces(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWorkSpaces_RebuildWorkspaces() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := workspaces.New(sess) params := &workspaces.RebuildWorkspacesInput{ RebuildWorkspaceRequests: []*workspaces.RebuildRequest{ // Required { // Required WorkspaceId: aws.String("WorkspaceId"), // Required }, // More values... }, } resp, err := svc.RebuildWorkspaces(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWorkSpaces_StartWorkspaces() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := workspaces.New(sess) params := &workspaces.StartWorkspacesInput{ StartWorkspaceRequests: []*workspaces.StartRequest{ // Required { // Required WorkspaceId: aws.String("WorkspaceId"), }, // More values... }, } resp, err := svc.StartWorkspaces(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWorkSpaces_StopWorkspaces() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := workspaces.New(sess) params := &workspaces.StopWorkspacesInput{ StopWorkspaceRequests: []*workspaces.StopRequest{ // Required { // Required WorkspaceId: aws.String("WorkspaceId"), }, // More values... }, } resp, err := svc.StopWorkspaces(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } func ExampleWorkSpaces_TerminateWorkspaces() { sess, err := session.NewSession() if err != nil { fmt.Println("failed to create session,", err) return } svc := workspaces.New(sess) params := &workspaces.TerminateWorkspacesInput{ TerminateWorkspaceRequests: []*workspaces.TerminateRequest{ // Required { // Required WorkspaceId: aws.String("WorkspaceId"), // Required }, // More values... }, } resp, err := svc.TerminateWorkspaces(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) } aws-sdk-go-1.4.22/service/workspaces/service.go000066400000000000000000000054351300374646400214020ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. package workspaces import ( "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/client" "github.com/aws/aws-sdk-go/aws/client/metadata" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/aws/signer/v4" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) // This reference provides detailed information about the Amazon WorkSpaces // operations. //The service client's operations are safe to be used concurrently. // It is not safe to mutate any of the client's properties though. type WorkSpaces struct { *client.Client } // Used for custom client initialization logic var initClient func(*client.Client) // Used for custom request initialization logic var initRequest func(*request.Request) // A ServiceName is the name of the service the client will make API calls to. const ServiceName = "workspaces" // New creates a new instance of the WorkSpaces client with a session. // If additional configuration is needed for the client instance use the optional // aws.Config parameter to add your extra config. // // Example: // // Create a WorkSpaces client from just a session. // svc := workspaces.New(mySession) // // // Create a WorkSpaces client with additional configuration // svc := workspaces.New(mySession, aws.NewConfig().WithRegion("us-west-2")) func New(p client.ConfigProvider, cfgs ...*aws.Config) *WorkSpaces { c := p.ClientConfig(ServiceName, cfgs...) return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion) } // newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *WorkSpaces { svc := &WorkSpaces{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2015-04-08", JSONVersion: "1.1", TargetPrefix: "WorkspacesService", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc } // newRequest creates a new request for a WorkSpaces operation and runs any // custom request initialization. func (c *WorkSpaces) newRequest(op *request.Operation, params, data interface{}) *request.Request { req := c.NewRequest(op, params, data) // Run custom request initialization if present if initRequest != nil { initRequest(req) } return req } aws-sdk-go-1.4.22/service/workspaces/workspacesiface/000077500000000000000000000000001300374646400225555ustar00rootroot00000000000000aws-sdk-go-1.4.22/service/workspaces/workspacesiface/interface.go000066400000000000000000000133061300374646400250470ustar00rootroot00000000000000// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. // Package workspacesiface provides an interface to enable mocking the Amazon WorkSpaces service client // for testing your code. // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. package workspacesiface import ( "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/service/workspaces" ) // WorkSpacesAPI provides an interface to enable mocking the // workspaces.WorkSpaces service client's API operation, // paginators, and waiters. This make unit testing your code that calls out // to the SDK's service client's calls easier. // // The best way to use this interface is so the SDK's service client's calls // can be stubbed out for unit testing your code with the SDK without needing // to inject custom request handlers into the the SDK's request pipeline. // // // myFunc uses an SDK service client to make a request to // // Amazon WorkSpaces. // func myFunc(svc workspacesiface.WorkSpacesAPI) bool { // // Make svc.CreateTags request // } // // func main() { // sess := session.New() // svc := workspaces.New(sess) // // myFunc(svc) // } // // In your _test.go file: // // // Define a mock struct to be used in your unit tests of myFunc. // type mockWorkSpacesClient struct { // workspacesiface.WorkSpacesAPI // } // func (m *mockWorkSpacesClient) CreateTags(input *workspaces.CreateTagsInput) (*workspaces.CreateTagsOutput, error) { // // mock response/functionality // } // // TestMyFunc(t *testing.T) { // // Setup Test // mockSvc := &mockWorkSpacesClient{} // // myfunc(mockSvc) // // // Verify myFunc's functionality // } // // It is important to note that this interface will have breaking changes // when the service model is updated and adds new API operations, paginators, // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type WorkSpacesAPI interface { CreateTagsRequest(*workspaces.CreateTagsInput) (*request.Request, *workspaces.CreateTagsOutput) CreateTags(*workspaces.CreateTagsInput) (*workspaces.CreateTagsOutput, error) CreateWorkspacesRequest(*workspaces.CreateWorkspacesInput) (*request.Request, *workspaces.CreateWorkspacesOutput) CreateWorkspaces(*workspaces.CreateWorkspacesInput) (*workspaces.CreateWorkspacesOutput, error) DeleteTagsRequest(*workspaces.DeleteTagsInput) (*request.Request, *workspaces.DeleteTagsOutput) DeleteTags(*workspaces.DeleteTagsInput) (*workspaces.DeleteTagsOutput, error) DescribeTagsRequest(*workspaces.DescribeTagsInput) (*request.Request, *workspaces.DescribeTagsOutput) DescribeTags(*workspaces.DescribeTagsInput) (*workspaces.DescribeTagsOutput, error) DescribeWorkspaceBundlesRequest(*workspaces.DescribeWorkspaceBundlesInput) (*request.Request, *workspaces.DescribeWorkspaceBundlesOutput) DescribeWorkspaceBundles(*workspaces.DescribeWorkspaceBundlesInput) (*workspaces.DescribeWorkspaceBundlesOutput, error) DescribeWorkspaceBundlesPages(*workspaces.DescribeWorkspaceBundlesInput, func(*workspaces.DescribeWorkspaceBundlesOutput, bool) bool) error DescribeWorkspaceDirectoriesRequest(*workspaces.DescribeWorkspaceDirectoriesInput) (*request.Request, *workspaces.DescribeWorkspaceDirectoriesOutput) DescribeWorkspaceDirectories(*workspaces.DescribeWorkspaceDirectoriesInput) (*workspaces.DescribeWorkspaceDirectoriesOutput, error) DescribeWorkspaceDirectoriesPages(*workspaces.DescribeWorkspaceDirectoriesInput, func(*workspaces.DescribeWorkspaceDirectoriesOutput, bool) bool) error DescribeWorkspacesRequest(*workspaces.DescribeWorkspacesInput) (*request.Request, *workspaces.DescribeWorkspacesOutput) DescribeWorkspaces(*workspaces.DescribeWorkspacesInput) (*workspaces.DescribeWorkspacesOutput, error) DescribeWorkspacesPages(*workspaces.DescribeWorkspacesInput, func(*workspaces.DescribeWorkspacesOutput, bool) bool) error DescribeWorkspacesConnectionStatusRequest(*workspaces.DescribeWorkspacesConnectionStatusInput) (*request.Request, *workspaces.DescribeWorkspacesConnectionStatusOutput) DescribeWorkspacesConnectionStatus(*workspaces.DescribeWorkspacesConnectionStatusInput) (*workspaces.DescribeWorkspacesConnectionStatusOutput, error) ModifyWorkspacePropertiesRequest(*workspaces.ModifyWorkspacePropertiesInput) (*request.Request, *workspaces.ModifyWorkspacePropertiesOutput) ModifyWorkspaceProperties(*workspaces.ModifyWorkspacePropertiesInput) (*workspaces.ModifyWorkspacePropertiesOutput, error) RebootWorkspacesRequest(*workspaces.RebootWorkspacesInput) (*request.Request, *workspaces.RebootWorkspacesOutput) RebootWorkspaces(*workspaces.RebootWorkspacesInput) (*workspaces.RebootWorkspacesOutput, error) RebuildWorkspacesRequest(*workspaces.RebuildWorkspacesInput) (*request.Request, *workspaces.RebuildWorkspacesOutput) RebuildWorkspaces(*workspaces.RebuildWorkspacesInput) (*workspaces.RebuildWorkspacesOutput, error) StartWorkspacesRequest(*workspaces.StartWorkspacesInput) (*request.Request, *workspaces.StartWorkspacesOutput) StartWorkspaces(*workspaces.StartWorkspacesInput) (*workspaces.StartWorkspacesOutput, error) StopWorkspacesRequest(*workspaces.StopWorkspacesInput) (*request.Request, *workspaces.StopWorkspacesOutput) StopWorkspaces(*workspaces.StopWorkspacesInput) (*workspaces.StopWorkspacesOutput, error) TerminateWorkspacesRequest(*workspaces.TerminateWorkspacesInput) (*request.Request, *workspaces.TerminateWorkspacesOutput) TerminateWorkspaces(*workspaces.TerminateWorkspacesInput) (*workspaces.TerminateWorkspacesOutput, error) } var _ WorkSpacesAPI = (*workspaces.WorkSpaces)(nil) aws-sdk-go-1.4.22/vendor/000077500000000000000000000000001300374646400150605ustar00rootroot00000000000000aws-sdk-go-1.4.22/vendor/github.com/000077500000000000000000000000001300374646400171175ustar00rootroot00000000000000aws-sdk-go-1.4.22/vendor/github.com/go-ini/000077500000000000000000000000001300374646400203015ustar00rootroot00000000000000aws-sdk-go-1.4.22/vendor/github.com/jmespath/000077500000000000000000000000001300374646400207325ustar00rootroot00000000000000